pax_global_header00006660000000000000000000000064151325204020014504gustar00rootroot0000000000000052 comment=b9385e30071d4cd2062b172a4e263410f6e8f4b3 bplaum-gavl-b9385e3/000077500000000000000000000000001513252040200142575ustar00rootroot00000000000000bplaum-gavl-b9385e3/AUTHORS000066400000000000000000000004561513252040200153340ustar00rootroot00000000000000The gavl core was written by me (Burkhard Plaum). Many conversion routines are, however taken from other (L)GPLed projects (most notably avifile, MPlayer and xine). Audio dithering is done by the included libgdither by Steve Harris. Original source can be found at http://plugin.org.uk/libgdither/ bplaum-gavl-b9385e3/COPYING000066400000000000000000000431071513252040200153170ustar00rootroot00000000000000 GNU GENERAL PUBLIC LICENSE Version 2, June 1991 Copyright (C) 1989, 1991 Free Software Foundation, Inc. 59 Temple Place, Suite 330, Boston, MA 02111-1307 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 Library 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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 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 Library General Public License instead of this License.bplaum-gavl-b9385e3/ChangeLog000066400000000000000000000000001513252040200160170ustar00rootroot00000000000000bplaum-gavl-b9385e3/INSTALL000066400000000000000000000366141513252040200153220ustar00rootroot00000000000000Installation Instructions ************************* Copyright (C) 1994-1996, 1999-2002, 2004-2016 Free Software Foundation, Inc. Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. This file is offered as-is, without warranty of any kind. Basic Installation ================== Briefly, the shell command './configure && make && make install' should configure, build, and install this package. The following more-detailed instructions are generic; see the 'README' file for instructions specific to this package. Some packages provide this 'INSTALL' file but do not implement all of the features documented below. The lack of an optional feature in a given package is not necessarily a bug. More recommendations for GNU packages can be found in *note Makefile Conventions: (standards)Makefile Conventions. The 'configure' shell script attempts to guess correct values for various system-dependent variables used during compilation. It uses those values to create a 'Makefile' in each directory of the package. It may also create one or more '.h' files containing system-dependent definitions. Finally, it creates a shell script 'config.status' that you can run in the future to recreate the current configuration, and a file 'config.log' containing compiler output (useful mainly for debugging 'configure'). It can also use an optional file (typically called 'config.cache' and enabled with '--cache-file=config.cache' or simply '-C') that saves the results of its tests to speed up reconfiguring. Caching is disabled by default to prevent problems with accidental use of stale cache files. If you need to do unusual things to compile the package, please try to figure out how 'configure' could check whether to do them, and mail diffs or instructions to the address given in the 'README' so they can be considered for the next release. If you are using the cache, and at some point 'config.cache' contains results you don't want to keep, you may remove or edit it. The file 'configure.ac' (or 'configure.in') is used to create 'configure' by a program called 'autoconf'. You need 'configure.ac' if you want to change it or regenerate 'configure' using a newer version of 'autoconf'. The simplest way to compile this package is: 1. 'cd' to the directory containing the package's source code and type './configure' to configure the package for your system. Running 'configure' might take a while. While running, it prints some messages telling which features it is checking for. 2. Type 'make' to compile the package. 3. Optionally, type 'make check' to run any self-tests that come with the package, generally using the just-built uninstalled binaries. 4. Type 'make install' to install the programs and any data files and documentation. When installing into a prefix owned by root, it is recommended that the package be configured and built as a regular user, and only the 'make install' phase executed with root privileges. 5. Optionally, type 'make installcheck' to repeat any self-tests, but this time using the binaries in their final installed location. This target does not install anything. Running this target as a regular user, particularly if the prior 'make install' required root privileges, verifies that the installation completed correctly. 6. You can remove the program binaries and object files from the source code directory by typing 'make clean'. To also remove the files that 'configure' created (so you can compile the package for a different kind of computer), type 'make distclean'. There is also a 'make maintainer-clean' target, but that is intended mainly for the package's developers. If you use it, you may have to get all sorts of other programs in order to regenerate files that came with the distribution. 7. Often, you can also type 'make uninstall' to remove the installed files again. In practice, not all packages have tested that uninstallation works correctly, even though it is required by the GNU Coding Standards. 8. Some packages, particularly those that use Automake, provide 'make distcheck', which can by used by developers to test that all other targets like 'make install' and 'make uninstall' work correctly. This target is generally not run by end users. Compilers and Options ===================== Some systems require unusual options for compilation or linking that the 'configure' script does not know about. Run './configure --help' for details on some of the pertinent environment variables. You can give 'configure' initial values for configuration parameters by setting variables in the command line or in the environment. Here is an example: ./configure CC=c99 CFLAGS=-g LIBS=-lposix *Note Defining Variables::, for more details. Compiling For Multiple Architectures ==================================== You can compile the package for more than one kind of computer at the same time, by placing the object files for each architecture in their own directory. To do this, you can use GNU 'make'. 'cd' to the directory where you want the object files and executables to go and run the 'configure' script. 'configure' automatically checks for the source code in the directory that 'configure' is in and in '..'. This is known as a "VPATH" build. With a non-GNU 'make', it is safer to compile the package for one architecture at a time in the source code directory. After you have installed the package for one architecture, use 'make distclean' before reconfiguring for another architecture. On MacOS X 10.5 and later systems, you can create libraries and executables that work on multiple system types--known as "fat" or "universal" binaries--by specifying multiple '-arch' options to the compiler but only a single '-arch' option to the preprocessor. Like this: ./configure CC="gcc -arch i386 -arch x86_64 -arch ppc -arch ppc64" \ CXX="g++ -arch i386 -arch x86_64 -arch ppc -arch ppc64" \ CPP="gcc -E" CXXCPP="g++ -E" This is not guaranteed to produce working output in all cases, you may have to build one architecture at a time and combine the results using the 'lipo' tool if you have problems. Installation Names ================== By default, 'make install' installs the package's commands under '/usr/local/bin', include files under '/usr/local/include', etc. You can specify an installation prefix other than '/usr/local' by giving 'configure' the option '--prefix=PREFIX', where PREFIX must be an absolute file name. You can specify separate installation prefixes for architecture-specific files and architecture-independent files. If you pass the option '--exec-prefix=PREFIX' to 'configure', the package uses PREFIX as the prefix for installing programs and libraries. Documentation and other data files still use the regular prefix. In addition, if you use an unusual directory layout you can give options like '--bindir=DIR' to specify different values for particular kinds of files. Run 'configure --help' for a list of the directories you can set and what kinds of files go in them. In general, the default for these options is expressed in terms of '${prefix}', so that specifying just '--prefix' will affect all of the other directory specifications that were not explicitly provided. The most portable way to affect installation locations is to pass the correct locations to 'configure'; however, many packages provide one or both of the following shortcuts of passing variable assignments to the 'make install' command line to change installation locations without having to reconfigure or recompile. The first method involves providing an override variable for each affected directory. For example, 'make install prefix=/alternate/directory' will choose an alternate location for all directory configuration variables that were expressed in terms of '${prefix}'. Any directories that were specified during 'configure', but not in terms of '${prefix}', must each be overridden at install time for the entire installation to be relocated. The approach of makefile variable overrides for each directory variable is required by the GNU Coding Standards, and ideally causes no recompilation. However, some platforms have known limitations with the semantics of shared libraries that end up requiring recompilation when using this method, particularly noticeable in packages that use GNU Libtool. The second method involves providing the 'DESTDIR' variable. For example, 'make install DESTDIR=/alternate/directory' will prepend '/alternate/directory' before all installation names. The approach of 'DESTDIR' overrides is not required by the GNU Coding Standards, and does not work on platforms that have drive letters. On the other hand, it does better at avoiding recompilation issues, and works well even when some directory options were not specified in terms of '${prefix}' at 'configure' time. Optional Features ================= If the package supports it, you can cause programs to be installed with an extra prefix or suffix on their names by giving 'configure' the option '--program-prefix=PREFIX' or '--program-suffix=SUFFIX'. Some packages pay attention to '--enable-FEATURE' options to 'configure', where FEATURE indicates an optional part of the package. They may also pay attention to '--with-PACKAGE' options, where PACKAGE is something like 'gnu-as' or 'x' (for the X Window System). The 'README' should mention any '--enable-' and '--with-' options that the package recognizes. For packages that use the X Window System, 'configure' can usually find the X include and library files automatically, but if it doesn't, you can use the 'configure' options '--x-includes=DIR' and '--x-libraries=DIR' to specify their locations. Some packages offer the ability to configure how verbose the execution of 'make' will be. For these packages, running './configure --enable-silent-rules' sets the default to minimal output, which can be overridden with 'make V=1'; while running './configure --disable-silent-rules' sets the default to verbose, which can be overridden with 'make V=0'. Particular systems ================== On HP-UX, the default C compiler is not ANSI C compatible. If GNU CC is not installed, it is recommended to use the following options in order to use an ANSI C compiler: ./configure CC="cc -Ae -D_XOPEN_SOURCE=500" and if that doesn't work, install pre-built binaries of GCC for HP-UX. HP-UX 'make' updates targets which have the same time stamps as their prerequisites, which makes it generally unusable when shipped generated files such as 'configure' are involved. Use GNU 'make' instead. On OSF/1 a.k.a. Tru64, some versions of the default C compiler cannot parse its '' header file. The option '-nodtk' can be used as a workaround. If GNU CC is not installed, it is therefore recommended to try ./configure CC="cc" and if that doesn't work, try ./configure CC="cc -nodtk" On Solaris, don't put '/usr/ucb' early in your 'PATH'. This directory contains several dysfunctional programs; working variants of these programs are available in '/usr/bin'. So, if you need '/usr/ucb' in your 'PATH', put it _after_ '/usr/bin'. On Haiku, software installed for all users goes in '/boot/common', not '/usr/local'. It is recommended to use the following options: ./configure --prefix=/boot/common Specifying the System Type ========================== There may be some features 'configure' cannot figure out automatically, but needs to determine by the type of machine the package will run on. Usually, assuming the package is built to be run on the _same_ architectures, 'configure' can figure that out, but if it prints a message saying it cannot guess the machine type, give it the '--build=TYPE' option. TYPE can either be a short name for the system type, such as 'sun4', or a canonical name which has the form: CPU-COMPANY-SYSTEM where SYSTEM can have one of these forms: OS KERNEL-OS See the file 'config.sub' for the possible values of each field. If 'config.sub' isn't included in this package, then this package doesn't need to know the machine type. If you are _building_ compiler tools for cross-compiling, you should use the option '--target=TYPE' to select the type of system they will produce code for. If you want to _use_ a cross compiler, that generates code for a platform different from the build platform, you should specify the "host" platform (i.e., that on which the generated programs will eventually be run) with '--host=TYPE'. Sharing Defaults ================ If you want to set default values for 'configure' scripts to share, you can create a site shell script called 'config.site' that gives default values for variables like 'CC', 'cache_file', and 'prefix'. 'configure' looks for 'PREFIX/share/config.site' if it exists, then 'PREFIX/etc/config.site' if it exists. Or, you can set the 'CONFIG_SITE' environment variable to the location of the site script. A warning: not all 'configure' scripts look for a site script. Defining Variables ================== Variables not defined in a site shell script can be set in the environment passed to 'configure'. However, some packages may run configure again during the build, and the customized values of these variables may be lost. In order to avoid this problem, you should set them in the 'configure' command line, using 'VAR=value'. For example: ./configure CC=/usr/local2/bin/gcc causes the specified 'gcc' to be used as the C compiler (unless it is overridden in the site shell script). Unfortunately, this technique does not work for 'CONFIG_SHELL' due to an Autoconf limitation. Until the limitation is lifted, you can use this workaround: CONFIG_SHELL=/bin/bash ./configure CONFIG_SHELL=/bin/bash 'configure' Invocation ====================== 'configure' recognizes the following options to control how it operates. '--help' '-h' Print a summary of all of the options to 'configure', and exit. '--help=short' '--help=recursive' Print a summary of the options unique to this package's 'configure', and exit. The 'short' variant lists options used only in the top level, while the 'recursive' variant lists options also present in any nested packages. '--version' '-V' Print the version of Autoconf used to generate the 'configure' script, and exit. '--cache-file=FILE' Enable the cache: use and save the results of the tests in FILE, traditionally 'config.cache'. FILE defaults to '/dev/null' to disable caching. '--config-cache' '-C' Alias for '--cache-file=config.cache'. '--quiet' '--silent' '-q' Do not print messages saying which checks are being made. To suppress all normal output, redirect it to '/dev/null' (any error messages will still be shown). '--srcdir=DIR' Look for the package's source code in directory DIR. Usually 'configure' can determine that directory automatically. '--prefix=DIR' Use DIR as the installation prefix. *note Installation Names:: for more details, including other options available for fine-tuning the installation locations. '--no-create' '-n' Run the configure checks, but stop before creating any output files. 'configure' also accepts some other, not widely useful, options. Run 'configure --help' for more details. bplaum-gavl-b9385e3/Makefile.am000066400000000000000000000004111513252040200163070ustar00rootroot00000000000000if HAVE_DOXYGEN DOC_SUBDIRS = doc else DOC_SUBDIRS = endif SUBDIRS = gavl src include m4 utils $(DOC_SUBDIRS) # aclocal Path ACLOCAL_AMFLAGS = -I m4 pkgconfigdir = $(libdir)/pkgconfig pkgconfig_DATA = gavl.pc EXTRA_DIST=autogen.sh \ gavl.spec.in \ gavl.pc.in bplaum-gavl-b9385e3/NEWS000066400000000000000000000000001513252040200147440ustar00rootroot00000000000000bplaum-gavl-b9385e3/README000066400000000000000000000043461513252040200151460ustar00rootroot00000000000000This is gavl, a common support library for other packages of the gmerlin project. It is developed in Linux (PC and Raspberry Pi 4). Porting it to non-Linux platforms might cause major headaches. Since it's a one-man project, I gave up on not using the great Linux/glibc/gcc features only because other OSes (which I never use) don't have them. Read the file INSTALL for detailed installation instructions. The original purpose was to provide data structures and routines for handling uncompressed audio- and video data. Over the years it became a central repository for code, which is shared by the gmerlin package and the gmerlin-avdecoder library. It's main purpose is to make the gmerlin-avdecoder library independent from the (huge) gmerlin package. In the future, more stuff might get moved from libgmerlin to libgavl. Below is (probably incomplete) list of contained modules: - Handling of uncompressed audio and video data (gavl.h) - Handling of compressed audio and video data (compression.h) - Handling of A/V data stored in special ways for hardware acceleration (hw*.h) - Connectors (source and sink) for compressed and uncompressed A/V data. They usually work in zero-copy mode but can also do implicit A/V conversions when necessary (connectors.h) - Polymorphic data containers with high-level types like arrays and dictionaries. These are used throughout the whole gmerlin project for non A/V data like metadata or configuration data (value.h). Libgmerlin contains serializations for XML and JSON so complex data structures can be saved to or loaded from files in one function call. - Generic socket support code (gavlsocket.h) - An http-client with support for: * Non-blocking I/O for background downloading without a separate thread * Redirection * https (via gnutls) * Seeking (httpclient.h) - An experimental A/V container format for internal usage, currently unused and probably not functional (gavf/gavf.h) - A message structure used throughout the whole gmerlin project for communication, both inside the applications and between them. libgmerlin contains a serialization for JSON and a message queue for robust inter-thread communication. - Logging support (log.h) - Lots of utility functions (util.h) bplaum-gavl-b9385e3/acinclude.m4000066400000000000000000000061351513252040200164550ustar00rootroot00000000000000 dnl AC_C_ATTRIBUTE_ALIGNED dnl define ATTRIBUTE_ALIGNED_MAX to the maximum alignment if this is supported AC_DEFUN([AC_C_ATTRIBUTE_ALIGNED], [AC_CACHE_CHECK([__attribute__ ((aligned ())) support], [ac_cv_c_attribute_aligned], [ac_cv_c_attribute_aligned=0 for ac_cv_c_attr_align_try in 2 4 8 16 32 64; do AC_COMPILE_IFELSE([AC_LANG_SOURCE([[static char c __attribute__ ((aligned($ac_cv_c_attr_align_try))) = 0; ]])], [ac_cv_c_attribute_aligned=$ac_cv_c_attr_align_try]) done]) if test x"$ac_cv_c_attribute_aligned" != x"0"; then AC_DEFINE_UNQUOTED([ATTRIBUTE_ALIGNED_MAX], [$ac_cv_c_attribute_aligned],[maximum supported data alignment]) fi]) dnl @synopsis AC_C99_FUNC_LRINT dnl dnl Check whether C99's lrint function is available. dnl @version 1.3 Feb 12 2002 dnl @author Erik de Castro Lopo dnl dnl Permission to use, copy, modify, distribute, and sell this file for any dnl purpose is hereby granted without fee, provided that the above copyright dnl and this permission notice appear in all copies. No representations are dnl made about the suitability of this software for any purpose. It is dnl provided "as is" without express or implied warranty. dnl AC_DEFUN([AC_C99_FUNC_LRINT], [AC_CACHE_CHECK(for lrint, ac_cv_c99_lrint, [ lrint_save_CFLAGS=$CFLAGS lrint_save_LIBS=$LIBS CFLAGS="-O2" LIBS="-lm" AC_LINK_IFELSE([AC_LANG_SOURCE([[ #define _ISOC9X_SOURCE 1 #define _ISOC99_SOURCE 1 #define __USE_ISOC99 1 #define __USE_ISOC9X 1 #include int main() { if (!lrint(3.14159)) lrint(2.7183); return 0; }]])], ac_cv_c99_lrint=yes, ac_cv_c99_lrint=no) CFLAGS=$lrint_save_CFLAGS LIBS=$lrint_save_LIBS ]) if test "$ac_cv_c99_lrint" = yes; then AC_DEFINE(HAVE_LRINT, 1, [Define if you have C99's lrint function.]) fi ])# AC_C99_FUNC_LRINT dnl @synopsis AC_C99_FUNC_LRINTF dnl dnl Check whether C99's lrintf function is available. dnl @version 1.3 Feb 12 2002 dnl @author Erik de Castro Lopo dnl dnl Permission to use, copy, modify, distribute, and sell this file for any dnl purpose is hereby granted without fee, provided that the above copyright dnl and this permission notice appear in all copies. No representations are dnl made about the suitability of this software for any purpose. It is dnl provided "as is" without express or implied warranty. dnl AC_DEFUN([AC_C99_FUNC_LRINTF], [AC_CACHE_CHECK(for lrintf, ac_cv_c99_lrintf, [ lrintf_save_CFLAGS=$CFLAGS lrintf_save_LIBS=$LIBS CFLAGS="-O2" LIBS="-lm" AC_LINK_IFELSE([AC_LANG_SOURCE([[ #define _ISOC9X_SOURCE 1 #define _ISOC99_SOURCE 1 #define __USE_ISOC99 1 #define __USE_ISOC9X 1 #include int main() { if (!lrintf(3.14159)) lrintf(2.7183); return 0; } ]])], ac_cv_c99_lrintf=yes, ac_cv_c99_lrintf=no) CFLAGS=$lrintf_save_CFLAGS LIBS=$lrint_save_LIBS ]) if test "$ac_cv_c99_lrintf" = yes; then AC_DEFINE(HAVE_LRINTF, 1, [Define if you have C99's lrintf function.]) fi ])# AC_C99_FUNC_LRINTF bplaum-gavl-b9385e3/autogen.sh000077500000000000000000000021311513252040200162550ustar00rootroot00000000000000#!/bin/sh if test -d /usr/local/share/aclocal; then ACLOCAL_FLAGS="-I /usr/local/share/aclocal" else ACLOCAL_FLAGS="" fi LIBTOOLIZE=`which glibtoolize` if test "x$LIBTOOLIZE" = "x"; then LIBTOOLIZE=`which libtoolize` fi if test "x$LIBTOOLIZE" = "x"; then echo "No libtoolize command found" exit 1 fi echo -n "doing aclocal..." aclocal $ACLOCAL_FLAGS -I m4 if test $? != "0"; then echo "failed" exit 1 fi echo "done" echo -n "doing libtoolize..." $LIBTOOLIZE --automake --copy --force if test $? != "0"; then echo "failed" exit 1 fi echo "done" echo -n "doing autoheader..." autoheader if test $? != "0"; then echo "failed" exit 1 fi echo "done" echo -n "doing autoconf..." autoconf if test $? != "0"; then echo "failed" exit 1 fi echo "done" echo -n "doing automake..." automake -a if test $? != "0"; then echo -n "automake failed in first try (broken version). Trying once more..." $LIBTOOLIZE --automake --copy --force automake -a if test $? != "0"; then echo "failed" exit 1 else echo "Success :)" fi fi echo "done" echo "You can now run ./configure" bplaum-gavl-b9385e3/configure.ac000066400000000000000000000157071513252040200165570ustar00rootroot00000000000000dnl Process this file with autoconf to produce a configure script. AC_INIT([gavl], [2.0.1]) AC_CONFIG_SRCDIR([include/gavl/gavl.h]) AM_INIT_AUTOMAKE AC_CONFIG_HEADERS(include/config.h) GAVL_VERSION=$VERSION GAVL_VERSION_MAJOR=`echo $VERSION | cut -d . -f 1` GAVL_VERSION_MINOR=`echo $VERSION | cut -d . -f 2` GAVL_VERSION_MICRO=`echo $VERSION | cut -d . -f 3 | cut -d p -f 1` LTVERSION_CURRENT="3" LTVERSION_REVISION="0" LTVERSION_AGE="0" SAVE_CFLAGS=$CFLAGS AC_SUBST(GAVL_VERSION) AC_SUBST(GAVL_VERSION_MAJOR) AC_SUBST(GAVL_VERSION_MINOR) AC_SUBST(GAVL_VERSION_MICRO) AC_SUBST(LTVERSION_CURRENT) AC_SUBST(LTVERSION_REVISION) AC_SUBST(LTVERSION_AGE) AC_CANONICAL_HOST AC_DISABLE_STATIC LT_INIT AC_PROG_MAKE_SET CFLAGS=$SAVE_CFLAGS dnl dnl Doxygen dnl test_doxygen="true" have_doxygen="false" AC_ARG_WITH(doxygen, AS_HELP_STRING([--without-doxygen], [disable documentation generation]), test_doxygen="false") if test "x$test_doxygen" = "xtrue"; then AC_CHECK_PROG(DOXYGEN, doxygen, "doxygen") if test "x$DOXYGEN" != "x"; then have_doxygen="true" fi fi AM_CONDITIONAL(HAVE_DOXYGEN, test "x$have_doxygen" = "xtrue") dnl dnl Check for compiler flags dnl AC_C_ATTRIBUTE_ALIGNED AC_C_BIGENDIAN(,,AC_MSG_ERROR("Cannot detect endianness")) LIBGAVL_CFLAGS="" case "$host_os" in darwin*) LIBGAVl_LIBS="" ;; *) LIBGAVL_LIBS="-lrt" ;; esac LIBGAVL_LDFLAGS="" APPS_LDFLAGS="" dnl dnl Check for mingw dnl case "$host" in *-*-mingw*|*cygwin*) os_win32=yes AC_MSG_WARN([host is $host]) ;; *) os_win32=no ;; esac AM_CONDITIONAL(OS_WIN32, [test "$os_win32" = "yes"]) if test "$os_win32" = "yes"; then LIBGAVL_LIBS="-lws2_32 $LIBGAVL_LIBS" dnl it appears that -no-undefined is necessary in mingw in order to build dll dnl maybe we should check here if the user only wants static libs LIBGAVL_LDFLAGS="-no-undefined $LIBGAVL_LDFLAGS" fi dnl dnl nettle dnl PKG_CHECK_MODULES(NETTLE, nettle >= "3.5.0",, AC_MSG_ERROR(["nettle crypto library not found"])) LIBGAVL_CFLAGS="$LIBGAVL_CFLAGS $NETTLE_CFLAGS" LIBGAVL_LIBS="$LIBGAVL_LIBS $NETTLE_LIBS" dnl dnl gnutls dnl PKG_CHECK_MODULES(GNUTLS, gnutls >= "3.5.18",, AC_MSG_ERROR(["gnutls not found"])) LIBGAVL_CFLAGS="$LIBGAVL_CFLAGS $GNUTLS_CFLAGS" LIBGAVL_LIBS="$LIBGAVL_LIBS $GNUTLS_LIBS" dnl dnl Check for Linker flags dnl GMERLIN_CHECK_LDFLAGS dnl dnl Check for library functions dnl AC_CHECK_HEADERS([sys/select.h sys/sendfile.h ifaddrs.h]) AC_CHECK_DECLS([MSG_NOSIGNAL, SO_NOSIGPIPE],,, [#include #include ]) AC_CHECK_FUNCS([memalign posix_memalign strdup vasprintf isatty sched_setaffinity]) dnl dnl getaddrinfo_a dnl ANL_LIBS="" OLD_LIBS=$LIBS LIBS="$LIBS -lanl" AC_CHECK_FUNC(getaddrinfo_a, LIBGAVL_LIBS="${LIBGAVL_LIBS} -lanl", AC_MSG_ERROR("getaddrinfo_a not found in libanl")) LIBS=$OLD_LIBS AC_SYS_LARGEFILE AC_FUNC_FSEEKO AH_TEMPLATE([HAVE_DRM], [Is libdrm available?]) have_drm="false" PKG_CHECK_MODULES(DRM, libdrm, have_drm="true") dnl AC_CHECK_HEADERS([drm/drm_fourcc.h libdrm/drm_fourcc.h], have_drm="true") if test "x$have_drm" = "xtrue"; then AC_DEFINE([HAVE_DRM]) fi AC_CHECK_HEADERS([linux/dma-heap.h]) AC_CHECK_HEADERS([linux/dma-buf.h]) AC_CHECK_HEADERS([linux/memfd.h]) AC_CHECK_HEADERS([linux/udmabuf.h]) dnl dnl clock_gettime dnl AH_TEMPLATE([HAVE_CLOCK_GETTIME], [clock_gettime available?]) AH_TEMPLATE([HAVE_CLOCK_MONOTONIC], [CLOCK_MONOTONIC available?]) HAVE_CLOCK_GETTIME="true" HAVE_CLOCK_MONOTONIC="false" OLD_LIBS=$LIBS AC_SEARCH_LIBS([clock_gettime], [rt], , HAVE_CLOCK_GETTIME="false") RT_LIBS=$LIBS AC_SUBST(RT_LIBS) LIBS=$OLD_LIBS if test "x$HAVE_CLOCK_GETTIME" = "xtrue"; then AC_DEFINE([HAVE_CLOCK_GETTIME]) OLD_LIBS=$LIBS LIBS=$RT_LIBS AC_MSG_CHECKING(for CLOCK_MONOTONIC) AC_COMPILE_IFELSE([AC_LANG_SOURCE([[ #include #include int main() { long t = 10000000; struct timespec tm; struct timespec rem; tm.tv_sec = t / 1000000; tm.tv_nsec = (t % 1000000)*1000; clock_nanosleep(CLOCK_MONOTONIC, 0, &tm, &rem); return 0; } ]])], [ # program could be run AC_MSG_RESULT(yes) HAVE_CLOCK_MONOTONIC="true" ], # program could not be run AC_MSG_RESULT(no) ) if test "x$HAVE_CLOCK_MONOTONIC" = "xtrue"; then AC_DEFINE([HAVE_CLOCK_MONOTONIC]) fi fi dnl dnl lrint, lrintf dnl AC_C99_FUNC_LRINT AC_C99_FUNC_LRINTF AC_CHECK_HEADERS(sys/times.h byteswap.h) dnl dnl Check for libpng (only needed for some tests) dnl GMERLIN_CHECK_LIBPNG dnl dnl Build optimization flags dnl LQT_OPT_CFLAGS(["-O3 -fomit-frame-pointer"]) dnl dnl Check for SIMD dnl GAVL_CHECK_SIMD($host_cpu, "$OPT_CFLAGS") dnl dnl Check for libva dnl GMERLIN_CHECK_LIBVA if test "x$have_libva" = "xtrue"; then LIBGAVL_CFLAGS="$LIBGAVL_CFLAGS $LIBVA_CFLAGS" LIBGAVL_LIBS="$LIBGAVL_LIBS $LIBVA_LIBS" fi dnl dnl OpenGL dnl GMERLIN_CHECK_OPENGL dnl dnl Video4linux2 dnl GMERLIN_CHECK_V4L2 dnl dnl Now, build the final CFLAGS. dnl CFLAGS="$CFLAGS $OPT_CFLAGS" LQT_TRY_CFLAGS([-Wall], CFLAGS="$CFLAGS -Wall") LQT_TRY_CFLAGS([-Wmissing-declarations], CFLAGS="$CFLAGS -Wmissing-declarations" ) LQT_TRY_CFLAGS([-Wdeclaration-after-statement], CFLAGS="$CFLAGS -Wdeclaration-after-statement") dnl LQT_TRY_CFLAGS([-mfpmath=387], CFLAGS="$CFLAGS -mfpmath=387") LQT_TRY_CFLAGS([-fvisibility=hidden], CFLAGS="$CFLAGS -fvisibility=hidden") dnl dnl Stuff from libsamplerate dnl AC_ARG_ENABLE(cpu-clip, AS_HELP_STRING([--disable-cpu-clip], [disable tricky cpu specific clipper]), ac_arg_cpu_clip="N", ac_arg_cpu_clip="Y") if test x$ac_arg_cpu_clip = "xY" ; then AC_C_CLIP_MODE else echo "checking processor clipping capabilities... disabled" ac_cv_c_clip_positive=0 ac_cv_c_clip_negative=0 fi AC_DEFINE_UNQUOTED(CPU_CLIPS_POSITIVE, ${ac_cv_c_clip_positive}, [Target processor clips on positive float to int conversion.]) AC_DEFINE_UNQUOTED(CPU_CLIPS_NEGATIVE, ${ac_cv_c_clip_negative}, [Target processor clips on negative float to int conversion.]) AC_CHECK_SIZEOF(int,0) AC_CHECK_SIZEOF(long,0) AC_CHECK_SIZEOF(float,4) AC_CHECK_SIZEOF(double,8) dnl UD_CHECK_IEEE dnl Absolute src path for doxygen TOP_SRCDIR=`cd ${srcdir} && pwd` AC_SUBST(TOP_SRCDIR) dnl dnl Output variables dnl AM_CPPFLAGS='-I$(top_srcdir)/include -I$(top_srcdir)/include/gavl -I$(top_builddir)/include' AC_SUBST(AM_CPPFLAGS) LIBGAVL_CFLAGS="$LIBGAVL_CFLAGS -D__GAVL__ -D_FILE_OFFSET_BITS=64" AC_SUBST(LIBGAVL_CFLAGS) AC_SUBST(LIBGAVL_LIBS) AC_SUBST(LIBGAVL_LDFLAGS) AC_SUBST(APPS_LDFLAGS) AC_CONFIG_FILES([Makefile \ gavl.spec \ gavl.pc \ doc/Makefile \ doc/Doxyfile \ src/Makefile \ m4/Makefile \ utils/Makefile \ include/Makefile \ include/gavl/Makefile \ include/gavl/gavl_version.h \ gavl/Makefile \ gavl/libgdither/Makefile \ gavl/libsamplerate/Makefile \ gavl/c/Makefile \ gavl/hq/Makefile \ gavl/mmx/Makefile \ gavl/mmxext/Makefile \ gavl/sse/Makefile \ gavl/sse2/Makefile \ gavl/sse3/Makefile]) AC_OUTPUT bplaum-gavl-b9385e3/doc/000077500000000000000000000000001513252040200150245ustar00rootroot00000000000000bplaum-gavl-b9385e3/doc/Doxyfile.in000066400000000000000000001356401513252040200171500ustar00rootroot00000000000000# Doxyfile 1.3.9.1 # This file describes the settings to be used by the documentation system # doxygen (www.doxygen.org) for a project # # All text after a hash (#) is considered a comment and will be ignored # The format is: # TAG = value [value, ...] # For lists items can also be appended using: # TAG += value [value, ...] # Values that contain spaces should be placed between quotes (" ") #--------------------------------------------------------------------------- # Project related configuration options #--------------------------------------------------------------------------- # The PROJECT_NAME tag is a single word (or a sequence of words surrounded # by quotes) that should identify the project. PROJECT_NAME = gavl # The PROJECT_NUMBER tag can be used to enter a project or revision number. # This could be handy for archiving the generated documentation or # if some version control system is used. PROJECT_NUMBER = # The OUTPUT_DIRECTORY tag is used to specify the (relative or absolute) # base path where the generated documentation will be put. # If a relative path is entered, it will be relative to the location # where doxygen was started. If left blank the current directory will be used. OUTPUT_DIRECTORY = # If the CREATE_SUBDIRS tag is set to YES, then doxygen will create # 4096 sub-directories (in 2 levels) under the output directory of each output # format and will distribute the generated files over these directories. # Enabling this option can be useful when feeding doxygen a huge amount of source # files, where putting all generated files in the same directory would otherwise # cause performance problems for the file system. CREATE_SUBDIRS = NO # The OUTPUT_LANGUAGE tag is used to specify the language in which all # documentation generated by doxygen is written. Doxygen will use this # information to generate all constant output in the proper language. # The default language is English, other supported languages are: # Brazilian, Catalan, Chinese, Chinese-Traditional, Croatian, Czech, Danish, # Dutch, Finnish, French, German, Greek, Hungarian, Italian, Japanese, # Japanese-en (Japanese with English messages), Korean, Korean-en, Norwegian, # Polish, Portuguese, Romanian, Russian, Serbian, Slovak, Slovene, Spanish, # Swedish, and Ukrainian. OUTPUT_LANGUAGE = English # This tag can be used to specify the encoding used in the generated output. # The encoding is not always determined by the language that is chosen, # but also whether or not the output is meant for Windows or non-Windows users. # In case there is a difference, setting the USE_WINDOWS_ENCODING tag to YES # forces the Windows encoding (this is the default for the Windows binary), # whereas setting the tag to NO uses a Unix-style encoding (the default for # all platforms other than Windows). # Obsolete # USE_WINDOWS_ENCODING = NO # If the BRIEF_MEMBER_DESC tag is set to YES (the default) Doxygen will # include brief member descriptions after the members that are listed in # the file and class documentation (similar to JavaDoc). # Set to NO to disable this. BRIEF_MEMBER_DESC = YES # If the REPEAT_BRIEF tag is set to YES (the default) Doxygen will prepend # the brief description of a member or function before the detailed description. # Note: if both HIDE_UNDOC_MEMBERS and BRIEF_MEMBER_DESC are set to NO, the # brief descriptions will be completely suppressed. REPEAT_BRIEF = YES # This tag implements a quasi-intelligent brief description abbreviator # that is used to form the text in various listings. Each string # in this list, if found as the leading text of the brief description, will be # stripped from the text and the result after processing the whole list, is used # as the annotated text. Otherwise, the brief description is used as-is. If left # blank, the following values are used ("$name" is automatically replaced with the # name of the entity): "The $name class" "The $name widget" "The $name file" # "is" "provides" "specifies" "contains" "represents" "a" "an" "the" ABBREVIATE_BRIEF = # If the ALWAYS_DETAILED_SEC and REPEAT_BRIEF tags are both set to YES then # Doxygen will generate a detailed section even if there is only a brief # description. ALWAYS_DETAILED_SEC = YES # If the INLINE_INHERITED_MEMB tag is set to YES, doxygen will show all inherited # members of a class in the documentation of that class as if those members were # ordinary class members. Constructors, destructors and assignment operators of # the base classes will not be shown. INLINE_INHERITED_MEMB = NO # If the FULL_PATH_NAMES tag is set to YES then Doxygen will prepend the full # path before files name in the file list and in the header files. If set # to NO the shortest path that makes the file name unique will be used. FULL_PATH_NAMES = NO # If the FULL_PATH_NAMES tag is set to YES then the STRIP_FROM_PATH tag # can be used to strip a user-defined part of the path. Stripping is # only done if one of the specified strings matches the left-hand part of # the path. The tag can be used to show relative paths in the file list. # If left blank the directory from which doxygen is run is used as the # path to strip. STRIP_FROM_PATH = # The STRIP_FROM_INC_PATH tag can be used to strip a user-defined part of # the path mentioned in the documentation of a class, which tells # the reader which header file to include in order to use a class. # If left blank only the name of the header file containing the class # definition is used. Otherwise one should specify the include paths that # are normally passed to the compiler using the -I flag. STRIP_FROM_INC_PATH = # If the SHORT_NAMES tag is set to YES, doxygen will generate much shorter # (but less readable) file names. This can be useful is your file systems # doesn't support long names like on DOS, Mac, or CD-ROM. SHORT_NAMES = NO # If the JAVADOC_AUTOBRIEF tag is set to YES then Doxygen # will interpret the first line (until the first dot) of a JavaDoc-style # comment as the brief description. If set to NO, the JavaDoc # comments will behave just like the Qt-style comments (thus requiring an # explicit @brief command for a brief description. JAVADOC_AUTOBRIEF = NO # The MULTILINE_CPP_IS_BRIEF tag can be set to YES to make Doxygen # treat a multi-line C++ special comment block (i.e. a block of //! or /// # comments) as a brief description. This used to be the default behaviour. # The new default is to treat a multi-line C++ comment block as a detailed # description. Set this tag to YES if you prefer the old behaviour instead. MULTILINE_CPP_IS_BRIEF = NO # If the DETAILS_AT_TOP tag is set to YES then Doxygen # will output the detailed description near the top, like JavaDoc. # If set to NO, the detailed description appears after the member # documentation. DETAILS_AT_TOP = NO # If the INHERIT_DOCS tag is set to YES (the default) then an undocumented # member inherits the documentation from any documented member that it # re-implements. INHERIT_DOCS = YES # If member grouping is used in the documentation and the DISTRIBUTE_GROUP_DOC # tag is set to YES, then doxygen will reuse the documentation of the first # member in the group (if any) for the other members of the group. By default # all members of a group must be documented explicitly. DISTRIBUTE_GROUP_DOC = NO # The TAB_SIZE tag can be used to set the number of spaces in a tab. # Doxygen uses this value to replace tabs by spaces in code fragments. TAB_SIZE = 8 # This tag can be used to specify a number of aliases that acts # as commands in the documentation. An alias has the form "name=value". # For example adding "sideeffect=\par Side Effects:\n" will allow you to # put the command \sideeffect (or @sideeffect) in the documentation, which # will result in a user-defined paragraph with heading "Side Effects:". # You can put \n's in the value part of an alias to insert newlines. ALIASES = # Set the OPTIMIZE_OUTPUT_FOR_C tag to YES if your project consists of C sources # only. Doxygen will then generate output that is more tailored for C. # For instance, some of the names that are used will be different. The list # of all members will be omitted, etc. OPTIMIZE_OUTPUT_FOR_C = YES # Set the OPTIMIZE_OUTPUT_JAVA tag to YES if your project consists of Java sources # only. Doxygen will then generate output that is more tailored for Java. # For instance, namespaces will be presented as packages, qualified scopes # will look different, etc. OPTIMIZE_OUTPUT_JAVA = NO # Set the SUBGROUPING tag to YES (the default) to allow class member groups of # the same type (for instance a group of public functions) to be put as a # subgroup of that type (e.g. under the Public Functions section). Set it to # NO to prevent subgrouping. Alternatively, this can be done per class using # the \nosubgrouping command. SUBGROUPING = YES #--------------------------------------------------------------------------- # Build related configuration options #--------------------------------------------------------------------------- # If the EXTRACT_ALL tag is set to YES doxygen will assume all entities in # documentation are documented, even if no documentation was available. # Private class members and static file members will be hidden unless # the EXTRACT_PRIVATE and EXTRACT_STATIC tags are set to YES EXTRACT_ALL = NO # If the EXTRACT_PRIVATE tag is set to YES all private members of a class # will be included in the documentation. EXTRACT_PRIVATE = NO # If the EXTRACT_STATIC tag is set to YES all static members of a file # will be included in the documentation. EXTRACT_STATIC = NO # If the EXTRACT_LOCAL_CLASSES tag is set to YES classes (and structs) # defined locally in source files will be included in the documentation. # If set to NO only classes defined in header files are included. EXTRACT_LOCAL_CLASSES = NO # This flag is only useful for Objective-C code. When set to YES local # methods, which are defined in the implementation section but not in # the interface are included in the documentation. # If set to NO (the default) only methods in the interface are included. EXTRACT_LOCAL_METHODS = NO # If the HIDE_UNDOC_MEMBERS tag is set to YES, Doxygen will hide all # undocumented members of documented classes, files or namespaces. # If set to NO (the default) these members will be included in the # various overviews, but no documentation section is generated. # This option has no effect if EXTRACT_ALL is enabled. HIDE_UNDOC_MEMBERS = NO # If the HIDE_UNDOC_CLASSES tag is set to YES, Doxygen will hide all # undocumented classes that are normally visible in the class hierarchy. # If set to NO (the default) these classes will be included in the various # overviews. This option has no effect if EXTRACT_ALL is enabled. HIDE_UNDOC_CLASSES = NO # If the HIDE_FRIEND_COMPOUNDS tag is set to YES, Doxygen will hide all # friend (class|struct|union) declarations. # If set to NO (the default) these declarations will be included in the # documentation. HIDE_FRIEND_COMPOUNDS = NO # If the HIDE_IN_BODY_DOCS tag is set to YES, Doxygen will hide any # documentation blocks found inside the body of a function. # If set to NO (the default) these blocks will be appended to the # function's detailed documentation block. HIDE_IN_BODY_DOCS = NO # The INTERNAL_DOCS tag determines if documentation # that is typed after a \internal command is included. If the tag is set # to NO (the default) then the documentation will be excluded. # Set it to YES to include the internal documentation. INTERNAL_DOCS = NO # If the CASE_SENSE_NAMES tag is set to NO then Doxygen will only generate # file names in lower-case letters. If set to YES upper-case letters are also # allowed. This is useful if you have classes or files whose names only differ # in case and if your file system supports case sensitive file names. Windows # and Mac users are advised to set this option to NO. CASE_SENSE_NAMES = YES # If the HIDE_SCOPE_NAMES tag is set to NO (the default) then Doxygen # will show members with their full class and namespace scopes in the # documentation. If set to YES the scope will be hidden. HIDE_SCOPE_NAMES = NO # If the SHOW_INCLUDE_FILES tag is set to YES (the default) then Doxygen # will put a list of the files that are included by a file in the documentation # of that file. SHOW_INCLUDE_FILES = YES # If the INLINE_INFO tag is set to YES (the default) then a tag [inline] # is inserted in the documentation for inline members. INLINE_INFO = YES # If the SORT_MEMBER_DOCS tag is set to YES (the default) then doxygen # will sort the (detailed) documentation of file and class members # alphabetically by member name. If set to NO the members will appear in # declaration order. SORT_MEMBER_DOCS = NO # If the SORT_BRIEF_DOCS tag is set to YES then doxygen will sort the # brief documentation of file, namespace and class members alphabetically # by member name. If set to NO (the default) the members will appear in # declaration order. SORT_BRIEF_DOCS = NO # If the SORT_BY_SCOPE_NAME tag is set to YES, the class list will be # sorted by fully-qualified names, including namespaces. If set to # NO (the default), the class list will be sorted only by class name, # not including the namespace part. # Note: This option is not very useful if HIDE_SCOPE_NAMES is set to YES. # Note: This option applies only to the class list, not to the # alphabetical list. SORT_BY_SCOPE_NAME = NO # The GENERATE_TODOLIST tag can be used to enable (YES) or # disable (NO) the todo list. This list is created by putting \todo # commands in the documentation. GENERATE_TODOLIST = YES # The GENERATE_TESTLIST tag can be used to enable (YES) or # disable (NO) the test list. This list is created by putting \test # commands in the documentation. GENERATE_TESTLIST = YES # The GENERATE_BUGLIST tag can be used to enable (YES) or # disable (NO) the bug list. This list is created by putting \bug # commands in the documentation. GENERATE_BUGLIST = YES # The GENERATE_DEPRECATEDLIST tag can be used to enable (YES) or # disable (NO) the deprecated list. This list is created by putting # \deprecated commands in the documentation. GENERATE_DEPRECATEDLIST= YES # The ENABLED_SECTIONS tag can be used to enable conditional # documentation sections, marked by \if sectionname ... \endif. ENABLED_SECTIONS = # The MAX_INITIALIZER_LINES tag determines the maximum number of lines # the initial value of a variable or define consists of for it to appear in # the documentation. If the initializer consists of more lines than specified # here it will be hidden. Use a value of 0 to hide initializers completely. # The appearance of the initializer of individual variables and defines in the # documentation can be controlled using \showinitializer or \hideinitializer # command in the documentation regardless of this setting. MAX_INITIALIZER_LINES = 30 # Set the SHOW_USED_FILES tag to NO to disable the list of files generated # at the bottom of the documentation of classes and structs. If set to YES the # list will mention the files that were used to generate the documentation. SHOW_USED_FILES = YES # If the sources in your project are distributed over multiple directories # then setting the SHOW_DIRECTORIES tag to YES will show the directory hierarchy # in the documentation. SHOW_DIRECTORIES = YES #--------------------------------------------------------------------------- # configuration options related to warning and progress messages #--------------------------------------------------------------------------- # The QUIET tag can be used to turn on/off the messages that are generated # by doxygen. Possible values are YES and NO. If left blank NO is used. QUIET = NO # The WARNINGS tag can be used to turn on/off the warning messages that are # generated by doxygen. Possible values are YES and NO. If left blank # NO is used. WARNINGS = YES # If WARN_IF_UNDOCUMENTED is set to YES, then doxygen will generate warnings # for undocumented members. If EXTRACT_ALL is set to YES then this flag will # automatically be disabled. WARN_IF_UNDOCUMENTED = YES # If WARN_IF_DOC_ERROR is set to YES, doxygen will generate warnings for # potential errors in the documentation, such as not documenting some # parameters in a documented function, or documenting parameters that # don't exist or using markup commands wrongly. WARN_IF_DOC_ERROR = YES # The WARN_FORMAT tag determines the format of the warning messages that # doxygen can produce. The string should contain the $file, $line, and $text # tags, which will be replaced by the file and line number from which the # warning originated and the warning text. WARN_FORMAT = "$file:$line: $text" # The WARN_LOGFILE tag can be used to specify a file to which warning # and error messages should be written. If left blank the output is written # to stderr. WARN_LOGFILE = #--------------------------------------------------------------------------- # configuration options related to the input files #--------------------------------------------------------------------------- # The INPUT tag can be used to specify the files and/or directories that contain # documented source files. You may enter file names like "myfile.cpp" or # directories like "/usr/src/myproject". Separate the files or directories # with spaces. INPUT = @TOP_SRCDIR@/doc/mainpage.incl @TOP_SRCDIR@/include/gavl/timecode.h @TOP_SRCDIR@/include/gavl/gavl.h @TOP_SRCDIR@/include/gavl/gavltime.h @TOP_SRCDIR@/include/gavl/connectors.h @TOP_SRCDIR@/include/gavl/gavldsp.h @TOP_SRCDIR@/include/gavl/peakdetector.h @TOP_SRCDIR@/include/gavl/compression.h @TOP_SRCDIR@/include/gavl/metadata.h @TOP_SRCDIR@/include/gavl/metatags.h @TOP_SRCDIR@/include/gavl/chapterlist.h # If the value of the INPUT tag contains directories, you can use the # FILE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp # and *.h) to filter out the source-files in the directories. If left # blank the following patterns are tested: # *.c *.cc *.cxx *.cpp *.c++ *.java *.ii *.ixx *.ipp *.i++ *.inl *.h *.hh *.hxx *.hpp # *.h++ *.idl *.odl *.cs *.php *.php3 *.inc *.m *.mm FILE_PATTERNS = # The RECURSIVE tag can be used to turn specify whether or not subdirectories # should be searched for input files as well. Possible values are YES and NO. # If left blank NO is used. RECURSIVE = NO # The EXCLUDE tag can be used to specify files and/or directories that should # excluded from the INPUT source files. This way you can easily exclude a # subdirectory from a directory tree whose root is specified with the INPUT tag. EXCLUDE = # The EXCLUDE_SYMLINKS tag can be used select whether or not files or directories # that are symbolic links (a Unix filesystem feature) are excluded from the input. EXCLUDE_SYMLINKS = NO # If the value of the INPUT tag contains directories, you can use the # EXCLUDE_PATTERNS tag to specify one or more wildcard patterns to exclude # certain files from those directories. EXCLUDE_PATTERNS = # The EXAMPLE_PATH tag can be used to specify one or more files or # directories that contain example code fragments that are included (see # the \include command). EXAMPLE_PATH = # If the value of the EXAMPLE_PATH tag contains directories, you can use the # EXAMPLE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp # and *.h) to filter out the source-files in the directories. If left # blank all files are included. EXAMPLE_PATTERNS = # If the EXAMPLE_RECURSIVE tag is set to YES then subdirectories will be # searched for input files to be used with the \include or \dontinclude # commands irrespective of the value of the RECURSIVE tag. # Possible values are YES and NO. If left blank NO is used. EXAMPLE_RECURSIVE = NO # The IMAGE_PATH tag can be used to specify one or more files or # directories that contain image that are included in the documentation (see # the \image command). IMAGE_PATH = # The INPUT_FILTER tag can be used to specify a program that doxygen should # invoke to filter for each input file. Doxygen will invoke the filter program # by executing (via popen()) the command , where # is the value of the INPUT_FILTER tag, and is the name of an # input file. Doxygen will then use the output that the filter program writes # to standard output. If FILTER_PATTERNS is specified, this tag will be # ignored. INPUT_FILTER = # The FILTER_PATTERNS tag can be used to specify filters on a per file pattern # basis. Doxygen will compare the file name with each pattern and apply the # filter if there is a match. The filters are a list of the form: # pattern=filter (like *.cpp=my_cpp_filter). See INPUT_FILTER for further # info on how filters are used. If FILTER_PATTERNS is empty, INPUT_FILTER # is applied to all files. FILTER_PATTERNS = # If the FILTER_SOURCE_FILES tag is set to YES, the input filter (if set using # INPUT_FILTER) will be used to filter the input files when producing source # files to browse (i.e. when SOURCE_BROWSER is set to YES). FILTER_SOURCE_FILES = NO #--------------------------------------------------------------------------- # configuration options related to source browsing #--------------------------------------------------------------------------- # If the SOURCE_BROWSER tag is set to YES then a list of source files will # be generated. Documented entities will be cross-referenced with these sources. # Note: To get rid of all source code in the generated output, make sure also # VERBATIM_HEADERS is set to NO. SOURCE_BROWSER = NO # Setting the INLINE_SOURCES tag to YES will include the body # of functions and classes directly in the documentation. INLINE_SOURCES = NO # Setting the STRIP_CODE_COMMENTS tag to YES (the default) will instruct # doxygen to hide any special comment blocks from generated source code # fragments. Normal C and C++ comments will always remain visible. STRIP_CODE_COMMENTS = YES # If the REFERENCED_BY_RELATION tag is set to YES (the default) # then for each documented function all documented # functions referencing it will be listed. REFERENCED_BY_RELATION = YES # If the REFERENCES_RELATION tag is set to YES (the default) # then for each documented function all documented entities # called/used by that function will be listed. REFERENCES_RELATION = YES # If the VERBATIM_HEADERS tag is set to YES (the default) then Doxygen # will generate a verbatim copy of the header file for each class for # which an include is specified. Set to NO to disable this. VERBATIM_HEADERS = YES #--------------------------------------------------------------------------- # configuration options related to the alphabetical class index #--------------------------------------------------------------------------- # If the ALPHABETICAL_INDEX tag is set to YES, an alphabetical index # of all compounds will be generated. Enable this if the project # contains a lot of classes, structs, unions or interfaces. ALPHABETICAL_INDEX = NO # If the alphabetical index is enabled (see ALPHABETICAL_INDEX) then # the COLS_IN_ALPHA_INDEX tag can be used to specify the number of columns # in which this list will be split (can be a number in the range [1..20]) COLS_IN_ALPHA_INDEX = 5 # In case all classes in a project start with a common prefix, all # classes will be put under the same header in the alphabetical index. # The IGNORE_PREFIX tag can be used to specify one or more prefixes that # should be ignored while generating the index headers. IGNORE_PREFIX = #--------------------------------------------------------------------------- # configuration options related to the HTML output #--------------------------------------------------------------------------- # If the GENERATE_HTML tag is set to YES (the default) Doxygen will # generate HTML output. GENERATE_HTML = YES # The HTML_OUTPUT tag is used to specify where the HTML docs will be put. # If a relative path is entered the value of OUTPUT_DIRECTORY will be # put in front of it. If left blank `html' will be used as the default path. HTML_OUTPUT = apiref # The HTML_FILE_EXTENSION tag can be used to specify the file extension for # each generated HTML page (for example: .htm,.php,.asp). If it is left blank # doxygen will generate files with .html extension. HTML_FILE_EXTENSION = .html # The HTML_HEADER tag can be used to specify a personal HTML header for # each generated HTML page. If it is left blank doxygen will generate a # standard header. HTML_HEADER = # The HTML_FOOTER tag can be used to specify a personal HTML footer for # each generated HTML page. If it is left blank doxygen will generate a # standard footer. HTML_FOOTER = # The HTML_STYLESHEET tag can be used to specify a user-defined cascading # style sheet that is used by each HTML page. It can be used to # fine-tune the look of the HTML output. If the tag is left blank doxygen # will generate a default style sheet. Note that doxygen will try to copy # the style sheet file to the HTML output directory, so don't put your own # stylesheet in the HTML output directory as well, or it will be erased! HTML_STYLESHEET = # If the HTML_ALIGN_MEMBERS tag is set to YES, the members of classes, # files or namespaces will be aligned in HTML using tables. If set to # NO a bullet list will be used. HTML_ALIGN_MEMBERS = YES # If the GENERATE_HTMLHELP tag is set to YES, additional index files # will be generated that can be used as input for tools like the # Microsoft HTML help workshop to generate a compressed HTML help file (.chm) # of the generated HTML documentation. GENERATE_HTMLHELP = NO # If the GENERATE_HTMLHELP tag is set to YES, the CHM_FILE tag can # be used to specify the file name of the resulting .chm file. You # can add a path in front of the file if the result should not be # written to the html output directory. CHM_FILE = # If the GENERATE_HTMLHELP tag is set to YES, the HHC_LOCATION tag can # be used to specify the location (absolute path including file name) of # the HTML help compiler (hhc.exe). If non-empty doxygen will try to run # the HTML help compiler on the generated index.hhp. HHC_LOCATION = # If the GENERATE_HTMLHELP tag is set to YES, the GENERATE_CHI flag # controls if a separate .chi index file is generated (YES) or that # it should be included in the master .chm file (NO). GENERATE_CHI = NO # If the GENERATE_HTMLHELP tag is set to YES, the BINARY_TOC flag # controls whether a binary table of contents is generated (YES) or a # normal table of contents (NO) in the .chm file. BINARY_TOC = NO # The TOC_EXPAND flag can be set to YES to add extra items for group members # to the contents of the HTML help documentation and to the tree view. TOC_EXPAND = NO # The DISABLE_INDEX tag can be used to turn on/off the condensed index at # top of each HTML page. The value NO (the default) enables the index and # the value YES disables it. DISABLE_INDEX = NO # This tag can be used to set the number of enum values (range [1..20]) # that doxygen will group on one line in the generated HTML documentation. ENUM_VALUES_PER_LINE = 1 # If the GENERATE_TREEVIEW tag is set to YES, a side panel will be # generated containing a tree-like index structure (just like the one that # is generated for HTML Help). For this to work a browser that supports # JavaScript, DHTML, CSS and frames is required (for instance Mozilla 1.0+, # Netscape 6.0+, Internet explorer 5.0+, or Konqueror). Windows users are # probably better off using the HTML help feature. GENERATE_TREEVIEW = NO # If the treeview is enabled (see GENERATE_TREEVIEW) then this tag can be # used to set the initial width (in pixels) of the frame in which the tree # is shown. TREEVIEW_WIDTH = 250 #--------------------------------------------------------------------------- # configuration options related to the LaTeX output #--------------------------------------------------------------------------- # If the GENERATE_LATEX tag is set to YES (the default) Doxygen will # generate Latex output. GENERATE_LATEX = NO # The LATEX_OUTPUT tag is used to specify where the LaTeX docs will be put. # If a relative path is entered the value of OUTPUT_DIRECTORY will be # put in front of it. If left blank `latex' will be used as the default path. LATEX_OUTPUT = latex # The LATEX_CMD_NAME tag can be used to specify the LaTeX command name to be # invoked. If left blank `latex' will be used as the default command name. LATEX_CMD_NAME = latex # The MAKEINDEX_CMD_NAME tag can be used to specify the command name to # generate index for LaTeX. If left blank `makeindex' will be used as the # default command name. MAKEINDEX_CMD_NAME = makeindex # If the COMPACT_LATEX tag is set to YES Doxygen generates more compact # LaTeX documents. This may be useful for small projects and may help to # save some trees in general. COMPACT_LATEX = NO # The PAPER_TYPE tag can be used to set the paper type that is used # by the printer. Possible values are: a4, a4wide, letter, legal and # executive. If left blank a4wide will be used. PAPER_TYPE = a4wide # The EXTRA_PACKAGES tag can be to specify one or more names of LaTeX # packages that should be included in the LaTeX output. EXTRA_PACKAGES = # The LATEX_HEADER tag can be used to specify a personal LaTeX header for # the generated latex document. The header should contain everything until # the first chapter. If it is left blank doxygen will generate a # standard header. Notice: only use this tag if you know what you are doing! LATEX_HEADER = # If the PDF_HYPERLINKS tag is set to YES, the LaTeX that is generated # is prepared for conversion to pdf (using ps2pdf). The pdf file will # contain links (just like the HTML output) instead of page references # This makes the output suitable for online browsing using a pdf viewer. PDF_HYPERLINKS = NO # If the USE_PDFLATEX tag is set to YES, pdflatex will be used instead of # plain latex in the generated Makefile. Set this option to YES to get a # higher quality PDF documentation. USE_PDFLATEX = NO # If the LATEX_BATCHMODE tag is set to YES, doxygen will add the \\batchmode. # command to the generated LaTeX files. This will instruct LaTeX to keep # running if errors occur, instead of asking the user for help. # This option is also used when generating formulas in HTML. LATEX_BATCHMODE = NO # If LATEX_HIDE_INDICES is set to YES then doxygen will not # include the index chapters (such as File Index, Compound Index, etc.) # in the output. LATEX_HIDE_INDICES = NO #--------------------------------------------------------------------------- # configuration options related to the RTF output #--------------------------------------------------------------------------- # If the GENERATE_RTF tag is set to YES Doxygen will generate RTF output # The RTF output is optimized for Word 97 and may not look very pretty with # other RTF readers or editors. GENERATE_RTF = NO # The RTF_OUTPUT tag is used to specify where the RTF docs will be put. # If a relative path is entered the value of OUTPUT_DIRECTORY will be # put in front of it. If left blank `rtf' will be used as the default path. RTF_OUTPUT = rtf # If the COMPACT_RTF tag is set to YES Doxygen generates more compact # RTF documents. This may be useful for small projects and may help to # save some trees in general. COMPACT_RTF = NO # If the RTF_HYPERLINKS tag is set to YES, the RTF that is generated # will contain hyperlink fields. The RTF file will # contain links (just like the HTML output) instead of page references. # This makes the output suitable for online browsing using WORD or other # programs which support those fields. # Note: wordpad (write) and others do not support links. RTF_HYPERLINKS = NO # Load stylesheet definitions from file. Syntax is similar to doxygen's # config file, i.e. a series of assignments. You only have to provide # replacements, missing definitions are set to their default value. RTF_STYLESHEET_FILE = # Set optional variables used in the generation of an rtf document. # Syntax is similar to doxygen's config file. RTF_EXTENSIONS_FILE = #--------------------------------------------------------------------------- # configuration options related to the man page output #--------------------------------------------------------------------------- # If the GENERATE_MAN tag is set to YES (the default) Doxygen will # generate man pages GENERATE_MAN = NO # The MAN_OUTPUT tag is used to specify where the man pages will be put. # If a relative path is entered the value of OUTPUT_DIRECTORY will be # put in front of it. If left blank `man' will be used as the default path. MAN_OUTPUT = man # The MAN_EXTENSION tag determines the extension that is added to # the generated man pages (default is the subroutine's section .3) MAN_EXTENSION = .3 # If the MAN_LINKS tag is set to YES and Doxygen generates man output, # then it will generate one additional man file for each entity # documented in the real man page(s). These additional files # only source the real man page, but without them the man command # would be unable to find the correct page. The default is NO. MAN_LINKS = NO #--------------------------------------------------------------------------- # configuration options related to the XML output #--------------------------------------------------------------------------- # If the GENERATE_XML tag is set to YES Doxygen will # generate an XML file that captures the structure of # the code including all documentation. GENERATE_XML = NO # The XML_OUTPUT tag is used to specify where the XML pages will be put. # If a relative path is entered the value of OUTPUT_DIRECTORY will be # put in front of it. If left blank `xml' will be used as the default path. XML_OUTPUT = xml # The XML_SCHEMA tag can be used to specify an XML schema, # which can be used by a validating XML parser to check the # syntax of the XML files. XML_SCHEMA = # The XML_DTD tag can be used to specify an XML DTD, # which can be used by a validating XML parser to check the # syntax of the XML files. XML_DTD = # If the XML_PROGRAMLISTING tag is set to YES Doxygen will # dump the program listings (including syntax highlighting # and cross-referencing information) to the XML output. Note that # enabling this will significantly increase the size of the XML output. XML_PROGRAMLISTING = YES #--------------------------------------------------------------------------- # configuration options for the AutoGen Definitions output #--------------------------------------------------------------------------- # If the GENERATE_AUTOGEN_DEF tag is set to YES Doxygen will # generate an AutoGen Definitions (see autogen.sf.net) file # that captures the structure of the code including all # documentation. Note that this feature is still experimental # and incomplete at the moment. GENERATE_AUTOGEN_DEF = NO #--------------------------------------------------------------------------- # configuration options related to the Perl module output #--------------------------------------------------------------------------- # If the GENERATE_PERLMOD tag is set to YES Doxygen will # generate a Perl module file that captures the structure of # the code including all documentation. Note that this # feature is still experimental and incomplete at the # moment. GENERATE_PERLMOD = NO # If the PERLMOD_LATEX tag is set to YES Doxygen will generate # the necessary Makefile rules, Perl scripts and LaTeX code to be able # to generate PDF and DVI output from the Perl module output. PERLMOD_LATEX = NO # If the PERLMOD_PRETTY tag is set to YES the Perl module output will be # nicely formatted so it can be parsed by a human reader. This is useful # if you want to understand what is going on. On the other hand, if this # tag is set to NO the size of the Perl module output will be much smaller # and Perl will parse it just the same. PERLMOD_PRETTY = YES # The names of the make variables in the generated doxyrules.make file # are prefixed with the string contained in PERLMOD_MAKEVAR_PREFIX. # This is useful so different doxyrules.make files included by the same # Makefile don't overwrite each other's variables. PERLMOD_MAKEVAR_PREFIX = #--------------------------------------------------------------------------- # Configuration options related to the preprocessor #--------------------------------------------------------------------------- # If the ENABLE_PREPROCESSING tag is set to YES (the default) Doxygen will # evaluate all C-preprocessor directives found in the sources and include # files. ENABLE_PREPROCESSING = YES # If the MACRO_EXPANSION tag is set to YES Doxygen will expand all macro # names in the source code. If set to NO (the default) only conditional # compilation will be performed. Macro expansion can be done in a controlled # way by setting EXPAND_ONLY_PREDEF to YES. MACRO_EXPANSION = NO # If the EXPAND_ONLY_PREDEF and MACRO_EXPANSION tags are both set to YES # then the macro expansion is limited to the macros specified with the # PREDEFINED and EXPAND_AS_PREDEFINED tags. EXPAND_ONLY_PREDEF = NO # If the SEARCH_INCLUDES tag is set to YES (the default) the includes files # in the INCLUDE_PATH (see below) will be search if a #include is found. SEARCH_INCLUDES = YES # The INCLUDE_PATH tag can be used to specify one or more directories that # contain include files that are not input files but should be processed by # the preprocessor. INCLUDE_PATH = # You can use the INCLUDE_FILE_PATTERNS tag to specify one or more wildcard # patterns (like *.h and *.hpp) to filter out the header-files in the # directories. If left blank, the patterns specified with FILE_PATTERNS will # be used. INCLUDE_FILE_PATTERNS = # The PREDEFINED tag can be used to specify one or more macro names that # are defined before the preprocessor is started (similar to the -D option of # gcc). The argument of the tag is a list of macros of the form: name # or name=definition (no spaces). If the definition and the = are # omitted =1 is assumed. To prevent a macro definition from being # undefined via #undef or recursively expanded use the := operator # instead of the = operator. PREDEFINED = # If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then # this tag can be used to specify a list of macro names that should be expanded. # The macro definition that is found in the sources will be used. # Use the PREDEFINED tag if you want to use a different macro definition. EXPAND_AS_DEFINED = # If the SKIP_FUNCTION_MACROS tag is set to YES (the default) then # doxygen's preprocessor will remove all function-like macros that are alone # on a line, have an all uppercase name, and do not end with a semicolon. Such # function macros are typically used for boiler-plate code, and will confuse the # parser if not removed. SKIP_FUNCTION_MACROS = YES #--------------------------------------------------------------------------- # Configuration::additions related to external references #--------------------------------------------------------------------------- # The TAGFILES option can be used to specify one or more tagfiles. # Optionally an initial location of the external documentation # can be added for each tagfile. The format of a tag file without # this location is as follows: # TAGFILES = file1 file2 ... # Adding location for the tag files is done as follows: # TAGFILES = file1=loc1 "file2 = loc2" ... # where "loc1" and "loc2" can be relative or absolute paths or # URLs. If a location is present for each tag, the installdox tool # does not have to be run to correct the links. # Note that each tag file must have a unique name # (where the name does NOT include the path) # If a tag file is not located in the directory in which doxygen # is run, you must also specify the path to the tagfile here. TAGFILES = # When a file name is specified after GENERATE_TAGFILE, doxygen will create # a tag file that is based on the input files it reads. GENERATE_TAGFILE = gavl.tags # If the ALLEXTERNALS tag is set to YES all external classes will be listed # in the class index. If set to NO only the inherited external classes # will be listed. ALLEXTERNALS = NO # If the EXTERNAL_GROUPS tag is set to YES all external groups will be listed # in the modules index. If set to NO, only the current project's groups will # be listed. EXTERNAL_GROUPS = YES # The PERL_PATH should be the absolute path and name of the perl script # interpreter (i.e. the result of `which perl'). PERL_PATH = /usr/bin/perl #--------------------------------------------------------------------------- # Configuration options related to the dot tool #--------------------------------------------------------------------------- # If the CLASS_DIAGRAMS tag is set to YES (the default) Doxygen will # generate a inheritance diagram (in HTML, RTF and LaTeX) for classes with base or # super classes. Setting the tag to NO turns the diagrams off. Note that this # option is superseded by the HAVE_DOT option below. This is only a fallback. It is # recommended to install and use dot, since it yields more powerful graphs. CLASS_DIAGRAMS = YES # If set to YES, the inheritance and collaboration graphs will hide # inheritance and usage relations if the target is undocumented # or is not a class. HIDE_UNDOC_RELATIONS = YES # If you set the HAVE_DOT tag to YES then doxygen will assume the dot tool is # available from the path. This tool is part of Graphviz, a graph visualization # toolkit from AT&T and Lucent Bell Labs. The other options in this section # have no effect if this option is set to NO (the default) HAVE_DOT = NO # If the CLASS_GRAPH and HAVE_DOT tags are set to YES then doxygen # will generate a graph for each documented class showing the direct and # indirect inheritance relations. Setting this tag to YES will force the # the CLASS_DIAGRAMS tag to NO. CLASS_GRAPH = YES # If the COLLABORATION_GRAPH and HAVE_DOT tags are set to YES then doxygen # will generate a graph for each documented class showing the direct and # indirect implementation dependencies (inheritance, containment, and # class references variables) of the class with other documented classes. COLLABORATION_GRAPH = YES # If the UML_LOOK tag is set to YES doxygen will generate inheritance and # collaboration diagrams in a style similar to the OMG's Unified Modeling # Language. UML_LOOK = NO # If set to YES, the inheritance and collaboration graphs will show the # relations between templates and their instances. TEMPLATE_RELATIONS = NO # If the ENABLE_PREPROCESSING, SEARCH_INCLUDES, INCLUDE_GRAPH, and HAVE_DOT # tags are set to YES then doxygen will generate a graph for each documented # file showing the direct and indirect include dependencies of the file with # other documented files. INCLUDE_GRAPH = YES # If the ENABLE_PREPROCESSING, SEARCH_INCLUDES, INCLUDED_BY_GRAPH, and # HAVE_DOT tags are set to YES then doxygen will generate a graph for each # documented header file showing the documented files that directly or # indirectly include this file. INCLUDED_BY_GRAPH = YES # If the CALL_GRAPH and HAVE_DOT tags are set to YES then doxygen will # generate a call dependency graph for every global function or class method. # Note that enabling this option will significantly increase the time of a run. # So in most cases it will be better to enable call graphs for selected # functions only using the \callgraph command. CALL_GRAPH = NO # If the GRAPHICAL_HIERARCHY and HAVE_DOT tags are set to YES then doxygen # will graphical hierarchy of all classes instead of a textual one. GRAPHICAL_HIERARCHY = YES # The DOT_IMAGE_FORMAT tag can be used to set the image format of the images # generated by dot. Possible values are png, jpg, or gif # If left blank png will be used. DOT_IMAGE_FORMAT = png # The tag DOT_PATH can be used to specify the path where the dot tool can be # found. If left blank, it is assumed the dot tool can be found on the path. DOT_PATH = # The DOTFILE_DIRS tag can be used to specify one or more directories that # contain dot files that are included in the documentation (see the # \dotfile command). DOTFILE_DIRS = # The MAX_DOT_GRAPH_WIDTH tag can be used to set the maximum allowed width # (in pixels) of the graphs generated by dot. If a graph becomes larger than # this value, doxygen will try to truncate the graph, so that it fits within # the specified constraint. Beware that most browsers cannot cope with very # large images. # MAX_DOT_GRAPH_WIDTH = 1024 # The MAX_DOT_GRAPH_HEIGHT tag can be used to set the maximum allows height # (in pixels) of the graphs generated by dot. If a graph becomes larger than # this value, doxygen will try to truncate the graph, so that it fits within # the specified constraint. Beware that most browsers cannot cope with very # large images. # MAX_DOT_GRAPH_HEIGHT = 1024 # The MAX_DOT_GRAPH_DEPTH tag can be used to set the maximum depth of the # graphs generated by dot. A depth value of 3 means that only nodes reachable # from the root by following a path via at most 3 edges will be shown. Nodes that # lay further from the root node will be omitted. Note that setting this option to # 1 or 2 may greatly reduce the computation time needed for large code bases. Also # note that a graph may be further truncated if the graph's image dimensions are # not sufficient to fit the graph (see MAX_DOT_GRAPH_WIDTH and MAX_DOT_GRAPH_HEIGHT). # If 0 is used for the depth value (the default), the graph is not depth-constrained. MAX_DOT_GRAPH_DEPTH = 0 # If the GENERATE_LEGEND tag is set to YES (the default) Doxygen will # generate a legend page explaining the meaning of the various boxes and # arrows in the dot generated graphs. GENERATE_LEGEND = YES # If the DOT_CLEANUP tag is set to YES (the default) Doxygen will # remove the intermediate dot files that are used to generate # the various graphs. DOT_CLEANUP = YES #--------------------------------------------------------------------------- # Configuration::additions related to the search engine #--------------------------------------------------------------------------- # The SEARCHENGINE tag specifies whether or not a search engine should be # used. If set to NO the values of all tags below this one will be ignored. SEARCHENGINE = NO bplaum-gavl-b9385e3/doc/Makefile.am000066400000000000000000000005431513252040200170620ustar00rootroot00000000000000EXTRA_DIST=Doxyfile.in mainpage.incl apiref: doxygen Doxyfile html: apiref all: html install-data-local: test -z "$(DESTDIR)$(docdir)/apiref" || $(mkdir_p) "$(DESTDIR)$(docdir)/apiref" $(INSTALL_DATA) apiref/* $(DESTDIR)$(docdir)/apiref CLEANFILES = gavl.tags clean-local: -rm -rf apiref uninstall-local: -rm -rf "$(DESTDIR)$(docdir)/apiref" bplaum-gavl-b9385e3/doc/mainpage.incl000066400000000000000000000115101513252040200174520ustar00rootroot00000000000000 /*! \mainpage \section intro Introduction This is the API documentation for the Gmerlin audio video library, a library for handling and conversion of uncompressed audio- and video data. Click Modules (on top of the page) to get to the main API index. Here, you find just some general blabla :) \section why Why gavl? \subsection problem The problem If you start to write some software, which has any kind of audio-, video- or image-support, you'll soon be confronted with the fact, that the method for storing audio and image data in memory is by no means standardized. In the audio area, we have different ways to store multichannel sound (interleaved or all channels separate) and different sample sizes. Furthermore, it can happen, that a cheap soundcard isn't happy with the 5.1 channel sound and the 48 kHz samplerate, so you'll need to convert it to 44.1 kHz/Stereo. In the video and image area, the situation is not better. Images can be planar or packed, have different colorspaces, color orderings and chroma subsampling modes. So you can learn how to read images in 24 bit RGB and display them with GTK or SDL. Handling interleaved 16 bit audio samples is also no major problem. But if your program becomes popular, people want to have 24 bit audio, RGB images with 16 bit per color channel (or even floating point), and they are not longer satisfied with your bilinear video scaler. If you want to support a large number of formats, you'll want to convert each format into each other without any intermediate conversion (to save time and preserve accuracy). Now you can do some simple mathematics to find out, that for N formats, the number of conversions from every format to every other is N*(N-1). Assuming, you want to support 26 pixelformats (like gavl does at the time, this file was written), you end up with a theoretical number of 650 conversion routines. After removing redundant conversions, you still have to write more than 600 functions. Since these are for pixelformats only, and you also want to do audio mixing for all sample formats and lots of other conversions, the total number of routines will soon exceed 1000. These numbers are probably the reason, why up to now, no universal solution for the problems described above, was written. \subsection solution The solution Programming universal audio/video converters is a painful process. 1000s of conversion routines must be written, debugged, tested and optimized. For this reason, a decision was made to do this madness once and make it available for other programmers who can afford to write GPL software. Gavl handles mainly the following tasks: - Definition of audio/video formats. This is done by having several enums and structures, which contain all information necessary for unambiguous definition of an Audio/Video format. A gavl enabled application will automatically have support for the same range of formats as gavl. - Containers for audio- and video-frames. These can carry A/V data in all supported formats. Basic routines are available to allocate/free/copy frames and some utilities. - Conversion among all formats. There are generic audio and video converters available, which have a configurable quality level. Higher quality always means lower speed. This means, that you can use gavl, if you must handle 100 audio streams simultaneously at telephone quality as well as for High Definition video production. A development goal of gavl is to have a complete set of conversions. You'll never get black images or silent audio frames because of missing conversion routines or speed losses because intermediate conversions are invoked. After this goal is reached, sometimes alternate routines are implemented, which focus either on more speed or higher accuracy. These can be selected by choosing a quality other than 3. \subsection advantages Advantages Using gavl in your application brings lots of advantages: - The most ugly tasks of multimedia programming are already done for you, so you can concentrate on your application - If you nevertheless find ways to improve the quality and/or speed of gavl, then do so. Making and sending a patch will still be less work, than writing such a library from scratch. - Without any additional labor, you handle all formats, which are supported by gavl. Impress your audience with 32 bit audio or floating point RGB processing. - Gavl fits smoothly to all existing Audio/Video and image APIs. You'll find lots of examples in the sourcetrees of gmerlin and gmerlin_avdecoder. - APIs (for codecs, hardware access, effects etc.), which are based on gavl, can nicely interact with each other. You can, for example, easily write an import module for gmerlin_avdecoder, which will decode most important Audio/Video formats. */ bplaum-gavl-b9385e3/gavl.pc.in000066400000000000000000000003171513252040200161420ustar00rootroot00000000000000prefix=@prefix@ exec_prefix=@exec_prefix@ libdir=@libdir@ includedir=@includedir@ Name: Gavl Description: Gmerlin Audio Video Library Version: @VERSION@ Libs: -L${libdir} -lgavl Cflags: -I${includedir} bplaum-gavl-b9385e3/gavl.spec.in000066400000000000000000000045651513252040200165030ustar00rootroot00000000000000Name: gavl Version: @VERSION@ Release: 1 Summary: A library for handling uncompressed audio and video data License: GPL Group: Libraries Group(de): Libraries Group(es): Bibliotecas Group(fr): Librairies Group(pl): Biblioteki Group(pt_BR): Bibliotecas Group(ru): Group(uk): ̦ Source0: %{name}-%{version}.tar.gz URL: http://gmerlin.sourceforge.net/ BuildRequires: autoconf BuildRequires: automake BuildRequires: libtool BuildRequires: libpng-devel >= 1.0.8 BuildRequires: libsamplerate-devel >= @SAMPLERATE_REQUIRED@ BuildRoot: /tmp/gavl Requires: libsamplerate >= @SAMPLERATE_REQUIRED@ %description Gavl is a library for handling and converting uncompressed audio and video data. It provides datatypes for audio/video formats and standardized structures to store the data. It supports converting between all formats. Some conversion functions are available in multiple versions (MMX...), which are selected by compile time configuration, CPU autodetection and user options. %package devel Summary: Header files and static library for gavl Summary(de): Header Dateien und statische Bibliothek fr gavl Group: Development/Libraries Group(de): Entwicklung/Libraries Group(es): Desarrollo/Bibliotecas Group(fr): Development/Librairies Group(pl): Programowanie/Biblioteki Group(pt_BR): Desenvolvimento/Bibliotecas Group(ru): / Group(uk): /̦ Requires: %{name} = %{version} %description devel Header files and static library for gavl %prep %setup -q %build ./cvs_clean.sh ./autogen.sh %configure %{__make} %install rm -rf $RPM_BUILD_ROOT %{__make} install DESTDIR=$RPM_BUILD_ROOT gzip -9nf README %clean rm -rf $RPM_BUILD_ROOT %post -p /sbin/ldconfig %postun -p /sbin/ldconfig %files %defattr(644,root,root,755) %doc README.gz %attr(755,root,root) %{_libdir}/lib*.so.* %files devel %defattr(644,root,root) # %doc docs/*.html %{_libdir}/lib*.la %{_libdir}/lib*.a %defattr(-,root,root) %{_includedir}/gavl %{_libdir}/gavl/include/gavlconfig.h %{_libdir}/pkgconfig/gavl.pc %defattr(755,root,root) %{_libdir}/lib*.so %define date %(echo `LC_ALL="C" date +"%a %b %d %Y"`) %changelog * Sat Apr 01 2006 Burkhard Plaum - Fixes reported by various people * Sat May 29 2004 Burkhard Plaum - Update * Sat Mar 05 2003 Burkhard Plaum - First working release. bplaum-gavl-b9385e3/gavl/000077500000000000000000000000001513252040200152105ustar00rootroot00000000000000bplaum-gavl-b9385e3/gavl/Makefile.am000066400000000000000000000062611513252040200172510ustar00rootroot00000000000000 if HAVE_MMX mmx_libs = mmx/libgavl_mmx.la mmxext/libgavl_mmxext.la mmx_subdirs = mmx mmxext else mmx_libs = mmx_subdirs = endif if HAVE_SSE sse_libs = sse/libgavl_sse.la sse_subdirs = sse else sse_libs = sse_subdirs = endif if HAVE_SSE2 sse2_libs = sse2/libgavl_sse2.la sse2_subdirs = sse2 else sse2_libs = sse2_subdirs = endif if HAVE_SSE3 sse3_libs = sse3/libgavl_sse3.la sse3_subdirs = sse3 else sse3_libs = sse3_subdirs = endif if HAVE_LIBVA hw_libva_sources = hw_vaapi.c hw_libva_cflags = @LIBVA_CFLAGS@ hw_libva_libs = @LIBVA_LIBS@ else hw_libva_sources = hw_libva_cflags = hw_libva_libs = endif if HAVE_GL hw_gl_sources = hw_gl.c hw_gl_cflags = @GL_CFLAGS@ hw_gl_libs = @GL_LIBS@ else hw_gl_sources = hw_gl_cflags = hw_gl_libs = endif if HAVE_EGL hw_egl_sources = hw_egl.c hw_egl_cflags = @EGL_CFLAGS@ hw_egl_libs = @EGL_LIBS@ else hw_egl_sources = hw_egl_cflags = hw_egl_libs = endif if HAVE_V4L2 hw_v4l2_sources = hw_v4l2.c else hw_v4l2_sources = endif AM_CFLAGS = \ @LIBGAVL_CFLAGS@ \ @DRM_CFLAGS@ \ $(hw_libva_cflags) \ $(hw_gl_cflags) \ $(hw_egl_cflags) \ -I/usr/include SUBDIRS = \ hq \ c \ libgdither \ libsamplerate \ $(mmx_subdirs) \ $(sse_subdirs) \ $(sse2_subdirs) \ $(sse3_subdirs) lib_LTLIBRARIES= libgavl.la #noinst_LTLIBRARIES = libgavl.la libgavl_la_SOURCES = \ $(hw_libva_sources) \ $(hw_egl_sources) \ $(hw_gl_sources) \ $(hw_v4l2_sources) \ absdiff.c \ arith128.c \ array.c \ audioconverter.c \ audioformat.c \ audioframe.c \ audiooptions.c \ audiosink.c \ audiosource.c \ base64.c \ bayer.c \ blend.c \ buffer.c \ chapterlist.c \ charset.c \ colorchannel.c \ colorspace.c \ compression.c \ countrycodes.c \ cputest.c \ deinterlace.c \ deinterlace_blend.c \ deinterlace_copy.c \ deinterlace_scale.c \ dictionary.c \ dsp.c \ dsputils.c \ edl.c \ frametable.c \ hw.c \ hw_dmabuf.c \ hw_shm.c \ http.c \ httpclient.c \ interleave.c \ io_buffer.c \ io.c \ io_cipher.c \ io_fd.c \ io_mem.c \ io_socket.c \ io_stdio.c \ io_tls.c \ language.c \ log.c \ md5.c \ memalign.c \ memcpy.c \ metadata.c \ mix.c \ msg.c \ numptr.c \ orientation.c \ packet.c \ packetbuffer.c \ packetindex.c \ packetsink.c \ packetsource.c \ palette.c \ parameter.c \ peakdetector.c \ psnr.c \ ptscache.c \ rectangle.c \ sampleformat.c \ samplerate.c \ scale.c \ scale_context.c \ scale_kernels.c \ scale_table.c \ shm.c \ socket.c \ socketaddress.c \ ssim.c \ state.c \ stats.c \ time.c \ timecode.c \ timer.c \ threadpool.c \ trackinfo.c \ transform.c \ transform_context.c \ transform_table.c \ urlvars.c \ utils.c \ videoconverter.c \ videoformat.c \ videoframe.c \ videosink.c \ videosource.c \ videooptions.c \ value.c \ volume.c noinst_HEADERS = \ csp_packed_packed.h \ csp_packed_planar.h \ csp_planar_packed.h \ csp_planar_planar.h \ ssim_tab.h AM_LDFLAGS = -export-symbols-regex 'gav(l|f)' -version-info \ @LTVERSION_CURRENT@:@LTVERSION_REVISION@:@LTVERSION_AGE@ \ @LIBGAVL_LDFLAGS@ @GMERLIN_LIB_LDFLAGS@ libgavl_la_LIBADD = \ $(mmx_libs) \ $(sse_libs) \ $(sse2_libs) \ $(sse3_libs) \ c/libgavl_c.la \ hq/libgavl_hq.la \ libgdither/libgdither.la \ libsamplerate/libsamplerate.la \ @LIBGAVL_LIBS@ \ @DRM_LIBS@ \ $(hw_libva_libs) \ $(hw_gl_libs) \ $(hw_egl_libs) \ -lpthread \ -lm EXTRA_DIST=Makefile.am.in bplaum-gavl-b9385e3/gavl/Makefile.am.in000066400000000000000000000011251513252040200176500ustar00rootroot00000000000000 if ARCH_X86 mmx_libs = mmx/libgavl_mmx.la mmxext/libgavl_mmxext.la mmx_subdirs = mmx mmxext else mmx_libs = endif SUBDIRS = c $(mmx_subdirs) @STANDALONE_TRUE@lib_LTLIBRARIES= libgavl.la @STANDALONE_FALSE@noinst_LTLIBRARIES = libgavl.la libgavl_la_SOURCES = \ audio.c \ audiobuffer.c \ audioframe.c \ bufelement.c \ colorspace.c \ cputest.c \ interleave.c \ mix.c \ sampleformat.c \ video.c \ videobuffer.c \ videoframe.c noinst_HEADERS=colorspace_macros.h libgavl_la_LIBADD = $(mmx_libs) c/libgavl_c.la EXTRA_libgavl_la_SOURCES = _video_copy.c _planar_420_422.c EXTRA_DIST=Makefile.am.in bplaum-gavl-b9385e3/gavl/absdiff.c000066400000000000000000000242751513252040200167640ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include #include "c/colorspace_tables.h" #include "c/colorspace_macros.h" static void absdiff_rgb_16(uint8_t * dst, int dst_stride, const uint8_t * src1, int src1_stride, const uint8_t * src2, int src2_stride, int w, int h) { int i, j; uint16_t * d; const uint16_t *s1; const uint16_t *s2; int r, g, b; for(i = 0; i < h; i++) { d = (uint16_t *)(dst + i * dst_stride); s1 = (const uint16_t *)(src1 + i * src1_stride); s2 = (const uint16_t *)(src2 + i * src2_stride); for(j = 0; j < w; j++) { r = abs(RGB16_TO_R_8(*s1) - RGB16_TO_R_8(*s2)); g = abs(RGB16_TO_G_8(*s1) - RGB16_TO_G_8(*s2)); b = abs(RGB16_TO_B_8(*s1) - RGB16_TO_B_8(*s2)); PACK_8_TO_RGB16(r,g,b,*d); d++; s1++; s2++; } } } static void absdiff_rgb_15(uint8_t * dst, int dst_stride, const uint8_t * src1, int src1_stride, const uint8_t * src2, int src2_stride, int w, int h) { int i, j; uint16_t * d; const uint16_t *s1; const uint16_t *s2; int r, g, b; for(i = 0; i < h; i++) { d = (uint16_t *)(dst + i * dst_stride); s1 = (const uint16_t *)(src1 + i * src1_stride); s2 = (const uint16_t *)(src2 + i * src2_stride); for(j = 0; j < w; j++) { r = abs(RGB15_TO_R_8(*s1) - RGB15_TO_R_8(*s2)); g = abs(RGB15_TO_G_8(*s1) - RGB15_TO_G_8(*s2)); b = abs(RGB15_TO_B_8(*s1) - RGB15_TO_B_8(*s2)); PACK_8_TO_RGB15(r,g,b,*d); d++; s1++; s2++; } } } static void absdiff_8(uint8_t * dst, int dst_stride, const uint8_t * src1, int src1_stride, const uint8_t * src2, int src2_stride, int w, int h) { int i, j; uint8_t * d; const uint8_t *s1; const uint8_t *s2; for(i = 0; i < h; i++) { d = (dst + i * dst_stride); s1 = (src1 + i * src1_stride); s2 = (src2 + i * src2_stride); for(j = 0; j < w; j++) { *d = abs(*s1 - *s2); d++; s1++; s2++; } } } static void absdiff_16(uint8_t * dst, int dst_stride, const uint8_t * src1, int src1_stride, const uint8_t * src2, int src2_stride, int w, int h) { int i, j; uint16_t * d; const uint16_t *s1; const uint16_t *s2; for(i = 0; i < h; i++) { d = (uint16_t *)(dst + i * dst_stride); s1 = (const uint16_t *)(src1 + i * src1_stride); s2 = (const uint16_t *)(src2 + i * src2_stride); for(j = 0; j < w; j++) { *d = abs(*s1 - *s2); d++; s1++; s2++; } } } static void absdiff_float(uint8_t * dst, int dst_stride, const uint8_t * src1, int src1_stride, const uint8_t * src2, int src2_stride, int w, int h) { int i, j; float * d; const float *s1; const float *s2; for(i = 0; i < h; i++) { d = (float *)(dst + i * dst_stride); s1 = (const float *)(src1 + i * src1_stride); s2 = (const float *)(src2 + i * src2_stride); for(j = 0; j < w; j++) { *d = fabs(*s1 - *s2); d++; s1++; s2++; } } } void gavl_video_frame_absdiff(gavl_video_frame_t * dst, const gavl_video_frame_t * src1, const gavl_video_frame_t * src2, const gavl_video_format_t * format) { int sub_h, sub_v; switch(format->pixelformat) { case GAVL_GRAY_8: absdiff_8(dst->planes[0], dst->strides[0], src1->planes[0], src1->strides[0], src2->planes[0], src2->strides[0], format->image_width, format->image_height); break; case GAVL_GRAY_16: absdiff_16(dst->planes[0], dst->strides[0], src1->planes[0], src1->strides[0], src2->planes[0], src2->strides[0], format->image_width, format->image_height); break; case GAVL_GRAY_FLOAT: absdiff_float(dst->planes[0], dst->strides[0], src1->planes[0], src1->strides[0], src2->planes[0], src2->strides[0], format->image_width, format->image_height); break; case GAVL_GRAYA_16: case GAVL_YUY2: case GAVL_UYVY: absdiff_8(dst->planes[0], dst->strides[0], src1->planes[0], src1->strides[0], src2->planes[0], src2->strides[0], format->image_width*2, format->image_height); break; case GAVL_GRAYA_32: absdiff_16(dst->planes[0], dst->strides[0], src1->planes[0], src1->strides[0], src2->planes[0], src2->strides[0], 2 * format->image_width, format->image_height); break; case GAVL_GRAYA_FLOAT: absdiff_float(dst->planes[0], dst->strides[0], src1->planes[0], src1->strides[0], src2->planes[0], src2->strides[0], 2 * format->image_width, format->image_height); break; case GAVL_RGB_15: case GAVL_BGR_15: absdiff_rgb_15(dst->planes[0], dst->strides[0], src1->planes[0], src1->strides[0], src2->planes[0], src2->strides[0], format->image_width, format->image_height); break; case GAVL_RGB_16: case GAVL_BGR_16: absdiff_rgb_16(dst->planes[0], dst->strides[0], src1->planes[0], src1->strides[0], src2->planes[0], src2->strides[0], format->image_width, format->image_height); break; case GAVL_RGB_24: case GAVL_BGR_24: absdiff_8(dst->planes[0], dst->strides[0], src1->planes[0], src1->strides[0], src2->planes[0], src2->strides[0], format->image_width*3, format->image_height); break; case GAVL_RGB_32: case GAVL_BGR_32: case GAVL_RGBA_32: case GAVL_YUVA_32: absdiff_8(dst->planes[0], dst->strides[0], src1->planes[0], src1->strides[0], src2->planes[0], src2->strides[0], format->image_width*4, format->image_height); break; case GAVL_RGB_48: absdiff_16(dst->planes[0], dst->strides[0], src1->planes[0], src1->strides[0], src2->planes[0], src2->strides[0], 3 * format->image_width, format->image_height); break; case GAVL_RGBA_64: case GAVL_YUVA_64: absdiff_16(dst->planes[0], dst->strides[0], src1->planes[0], src1->strides[0], src2->planes[0], src2->strides[0], 4 * format->image_width, format->image_height); break; case GAVL_RGB_FLOAT: case GAVL_YUV_FLOAT: absdiff_float(dst->planes[0], dst->strides[0], src1->planes[0], src1->strides[0], src2->planes[0], src2->strides[0], 3 * format->image_width, format->image_height); break; case GAVL_RGBA_FLOAT: case GAVL_YUVA_FLOAT: absdiff_float(dst->planes[0], dst->strides[0], src1->planes[0], src1->strides[0], src2->planes[0], src2->strides[0], 4 * format->image_width, format->image_height); break; case GAVL_YUV_420_P: case GAVL_YUV_410_P: case GAVL_YUV_411_P: case GAVL_YUV_422_P: case GAVL_YUV_444_P: case GAVL_YUVJ_420_P: case GAVL_YUVJ_422_P: case GAVL_YUVJ_444_P: gavl_pixelformat_chroma_sub(format->pixelformat, &sub_h, &sub_v); absdiff_8(dst->planes[0], dst->strides[0], src1->planes[0], src1->strides[0], src2->planes[0], src2->strides[0], format->image_width, format->image_height); absdiff_8(dst->planes[1], dst->strides[1], src1->planes[1], src1->strides[1], src2->planes[1], src2->strides[1], format->image_width/sub_h, format->image_height/sub_v); absdiff_8(dst->planes[2], dst->strides[2], src1->planes[2], src1->strides[2], src2->planes[2], src2->strides[2], format->image_width/sub_h, format->image_height/sub_v); break; case GAVL_YUV_444_P_16: case GAVL_YUV_422_P_16: gavl_pixelformat_chroma_sub(format->pixelformat, &sub_h, &sub_v); absdiff_16(dst->planes[0], dst->strides[0], src1->planes[0], src1->strides[0], src2->planes[0], src2->strides[0], format->image_width, format->image_height); absdiff_16(dst->planes[1], dst->strides[1], src1->planes[1], src1->strides[1], src2->planes[1], src2->strides[1], format->image_width/sub_h, format->image_height/sub_v); absdiff_16(dst->planes[2], dst->strides[2], src1->planes[2], src1->strides[2], src2->planes[2], src2->strides[2], format->image_width/sub_h, format->image_height/sub_v); break; case GAVL_PIXELFORMAT_NONE: break; } } bplaum-gavl-b9385e3/gavl/arith128.c000066400000000000000000000066511513252040200167260ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ /* 128 bit arithmetic routines needed for overflow save * 64 bit rescaling functions. * * Mostly copied and pasted from the qofmath128.[ch] files by * Copyright (C) 2004 Linas Vepstas , * which are part of gnucash (http://gnucash.org). * * Seems the gnucash people are prepared for hyperinflation with * their 128 bit arithmetic :) */ #include #include #include #define HIBIT (0x8000000000000000ULL) /** Multiply a pair of signed 64-bit numbers, * returning a signed 128-bit number. */ void gavl_int128_mult(int64_t a, int64_t b, gavl_int128_t * ret) { uint64_t a0, a1; uint64_t b0, b1; uint64_t d, d0, d1; uint64_t e, e0, e1; uint64_t f, f0, f1; uint64_t g, g0, g1; uint64_t sum, carry, roll, pmax; ret->isneg = 0; if (0>a) { ret->isneg = !ret->isneg; a = -a; } if (0>b) { ret->isneg = !ret->isneg; b = -b; } a1 = a >> 32; a0 = a - (a1<<32); b1 = b >> 32; b0 = b - (b1<<32); d = a0*b0; d1 = d >> 32; d0 = d - (d1<<32); e = a0*b1; e1 = e >> 32; e0 = e - (e1<<32); f = a1*b0; f1 = f >> 32; f0 = f - (f1<<32); g = a1*b1; g1 = g >> 32; g0 = g - (g1<<32); sum = d1+e0+f0; carry = 0; /* Can't say 1<<32 cause cpp will goof it up; 1ULL<<32 might work */ roll = 1<<30; roll <<= 2; pmax = roll-1; while (pmax < sum) { sum -= roll; carry ++; } ret->lo = d0 + (sum<<32); ret->hi = carry + e1 + f1 + g0 + (g1<<32); ret->isbig = ret->hi || (ret->lo >> 63); } static void shiftleft128(gavl_int128_t * x) { uint64_t sbit; sbit = x->lo & HIBIT; x->hi <<= 1; x->lo <<= 1; x->isbig = 0; if (sbit) { x->hi |= 1; x->isbig = 1; return; } if (x->hi) { x->isbig = 1; } } /** Divide a signed 128-bit number by a signed 64-bit, * returning a signed 128-bit number. */ void gavl_int128_div(gavl_int128_t * n, int64_t d, gavl_int128_t * ret) { int i; uint64_t remainder = 0; gavl_int128_copy(ret, n); if (0 > d) { d = -d; ret->isneg = !ret->isneg; } /* Use grade-school long division algorithm */ for (i=0; i<128; i++) { uint64_t sbit = HIBIT & ret->hi; remainder <<= 1; if (sbit) remainder |= 1; shiftleft128(ret); if (remainder >= d) { remainder -= d; ret->lo |= 1; } } /* compute the carry situation */ ret->isbig = (ret->hi || (ret->lo >> 63)); } void gavl_int128_copy(gavl_int128_t *dst, gavl_int128_t * src) { memcpy(dst, src, sizeof(*dst)); } bplaum-gavl-b9385e3/gavl/array.c000066400000000000000000000251561513252040200165030ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #define _GNU_SOURCE // qsort_r #include #include #include #include #include #include #include /* Array */ void gavl_array_init(gavl_array_t * d) { memset(d, 0, sizeof(*d)); } void gavl_array_dump(const gavl_array_t * a, int indent) { int i; gavl_diprintf(indent, "[\n"); for(i = 0; i < a->num_entries; i++) { gavl_value_dump(&a->entries[i], indent + 2); if(i < a->num_entries - 1) gavl_diprintf(0, ",\n"); else gavl_diprintf(0, "\n"); } gavl_diprintf(indent, "]\n"); } const gavl_value_t * gavl_array_get(const gavl_array_t * d, int idx) { if((idx < 0) || (idx >= d->num_entries)) return NULL; return d->entries + idx; } gavl_value_t * gavl_array_get_nc(gavl_array_t * d, int idx) { if((idx < 0) || (idx >= d->num_entries)) return NULL; return d->entries + idx; } void gavl_array_free(gavl_array_t * d) { int i; if(d->entries) { for(i = 0; i < d->num_entries; i++) gavl_value_free(d->entries + i); free(d->entries); } } void gavl_array_reset(gavl_array_t * d) { gavl_array_free(d); gavl_array_init(d); } void gavl_array_copy_sub(gavl_array_t * dst, const gavl_array_t * src, int start, int num) { int i; if(start + num > src->num_entries) num = src->num_entries - start; gavl_array_reset(dst); if(num < 0) return; dst->entries_alloc = num; dst->num_entries = num; if(dst->num_entries) { dst->entries = calloc(dst->entries_alloc, sizeof(*dst->entries)); for(i = 0; i < num; i++) gavl_value_copy(dst->entries + i, src->entries + start + i); } } void gavl_array_copy(gavl_array_t * dst, const gavl_array_t * src) { gavl_array_copy_sub(dst, src, 0, src->num_entries); } void gavl_array_move(gavl_array_t * dst, gavl_array_t * src) { memcpy(dst, src, sizeof(*dst)); gavl_array_init(src); } void gavl_array_foreach(const gavl_array_t * a, gavl_array_foreach_func func, void * priv) { int i; for(i = 0; i < a->num_entries; i++) func(priv, i, &a->entries[i]); } int gavl_array_compare(const gavl_array_t * m1, const gavl_array_t * m2) { int i; int result = 1; if(m1->num_entries != m2->num_entries) return 1; for(i = 0; i < m1->num_entries; i++) { if((result = gavl_value_compare(&m1->entries[i], &m2->entries[i]))) return result; } return 0; } static gavl_value_t * do_splice(gavl_array_t * arr, int idx, int del, int num) { int i; int after; if((idx < 0) || (idx > arr->num_entries)) // Append idx = arr->num_entries; if(del) { if(del < 0) del = arr->num_entries - idx; if(idx + del > arr->num_entries) del = arr->num_entries - idx; after = arr->num_entries - (idx + del); for(i = 0; i < del; i++) gavl_value_free(&arr->entries[idx + i]); arr->num_entries -= del; if(after) { memmove(arr->entries + idx, arr->entries + idx + del, sizeof(*arr->entries) * after); } } if(num) { if(arr->num_entries + num > arr->entries_alloc) { arr->entries_alloc = arr->num_entries + num + 128; arr->entries = realloc(arr->entries, arr->entries_alloc * sizeof(*arr->entries)); } if(idx < arr->num_entries) { memmove(arr->entries + idx + num, arr->entries + idx, (sizeof(*arr->entries) * (arr->num_entries - idx))); } arr->num_entries += num; memset(arr->entries + idx, 0, sizeof(*arr->entries) * num); return arr->entries + idx; } else return NULL; } void gavl_array_splice_val(gavl_array_t * arr, int idx, int del, const gavl_value_t * add) { gavl_value_t * val; int num = 0; if(add && (add->type == GAVL_TYPE_UNDEFINED)) add = NULL; if(add) num = 1; val = do_splice(arr, idx, del, num); if(add) gavl_value_copy(val, add); } void gavl_array_splice_array(gavl_array_t * arr, int idx, int del, const gavl_array_t * add) { int i; gavl_value_t * val; int num = 0; if(add) num = add->num_entries; val = do_splice(arr, idx, del, num); if(add) { for(i = 0; i < num; i++) gavl_value_copy(val + i , add->entries + i); } } void gavl_array_splice_val_nocopy(gavl_array_t * arr, int idx, int del, gavl_value_t * add) { gavl_value_t * val; int num = 0; if(add) num = 1; val = do_splice(arr, idx, del, num); if(add) { memcpy(val, add, sizeof(*add)); gavl_value_init(add); } } void gavl_array_splice_array_nocopy(gavl_array_t * arr, int idx, int del, gavl_array_t * add) { gavl_value_t * val; int num = 0; if(add) num = add->num_entries; val = do_splice(arr, idx, del, num); if(num) { memcpy(val, add->entries, sizeof(*add->entries) * num); memset(add->entries, 0, sizeof(*add->entries) * num); add->num_entries = 0; } } void gavl_array_push(gavl_array_t * d, const gavl_value_t * val) { gavl_array_splice_val(d, -1, 0, val); } void gavl_array_push_nocopy(gavl_array_t * d, gavl_value_t * val) { gavl_array_splice_val_nocopy(d, -1, 0, val); } void gavl_array_unshift(gavl_array_t * d, const gavl_value_t * val) { gavl_array_splice_val(d, 0, 0, val); } void gavl_array_unshift_nocopy(gavl_array_t * d, gavl_value_t * val) { gavl_array_splice_val_nocopy(d, 0, 0, val); } int gavl_array_pop(gavl_array_t * d, gavl_value_t * val) { if(d->num_entries < 1) return 0; gavl_value_move(val, &d->entries[d->num_entries-1]); gavl_array_splice_val(d, d->num_entries-1, 1, NULL); return 1; } int gavl_array_shift(gavl_array_t * d, gavl_value_t * val) { if(d->num_entries < 1) return 0; gavl_value_move(val, &d->entries[0]); gavl_array_splice_val(d, 0, 1, NULL); return 1; } int gavl_array_move_entry(gavl_array_t * m1, int src_pos, int dst_pos) { gavl_value_t save; if((src_pos < 0) || (src_pos >= m1->num_entries) || (dst_pos < 0) || (dst_pos >= m1->num_entries)) return 0; gavl_value_move(&save, m1->entries + src_pos); gavl_array_splice_val(m1, src_pos, 1, NULL); gavl_array_splice_val_nocopy(m1, dst_pos, 0, &save); return 1; } gavl_array_t * gavl_array_create() { gavl_array_t * ret = malloc(sizeof(*ret)); gavl_array_init(ret); return ret; } void gavl_array_destroy(gavl_array_t * arr) { gavl_array_free(arr); free(arr); } void gavl_array_sort(gavl_array_t * arr, int (*compare)(const void *, const void *, void * data), void * data) { qsort_r(arr->entries, arr->num_entries, sizeof(*arr->entries), compare, data); } /* String array */ void gavl_string_array_add(gavl_array_t * arr, const char * str) { gavl_value_t val; if(gavl_string_array_indexof(arr, str) >= 0) return; gavl_value_init(&val); gavl_value_set_string(&val, str); gavl_array_splice_val_nocopy(arr, -1, 0, &val); } void gavl_string_array_insert_at(gavl_array_t * arr, int idx, const char * str) { gavl_value_t val; gavl_value_init(&val); gavl_value_set_string(&val, str); gavl_array_splice_val_nocopy(arr, idx, 0, &val); } void gavl_string_array_add_nocopy(gavl_array_t * arr, char * str) { gavl_value_t val; if(gavl_string_array_indexof(arr, str) >= 0) return; gavl_value_init(&val); gavl_value_set_string_nocopy(&val, str); gavl_array_splice_val_nocopy(arr, -1, 0, &val); } const char * gavl_string_array_get(const gavl_array_t * arr, int idx) { const gavl_value_t * val; if((val = gavl_array_get(arr, idx))) return gavl_value_get_string(val); return NULL; } void gavl_string_array_delete(gavl_array_t * arr, const char * str) { int idx; if((idx = gavl_string_array_indexof(arr, str)) < 0) return; gavl_array_splice_val(arr, idx, 1, NULL); } int gavl_string_array_indexof(const gavl_array_t * arr, const char * str) { int i; const char * str1; for(i = 0; i < arr->num_entries; i++) { if((str1 = gavl_value_get_string(&arr->entries[i])) && !strcmp(str1, str)) return i; } return -1; } int gavl_string_array_indexof_i(const gavl_array_t * arr, const char * str) { int i; const char * str1; for(i = 0; i < arr->num_entries; i++) { if((str1 = gavl_value_get_string(&arr->entries[i])) && !strcasecmp(str1, str)) return i; } return -1; } char * gavl_string_array_join(const gavl_array_t * arr, const char * glue) { char * ret; int ret_len; int glue_len; int i; int idx; glue_len = strlen(glue); ret_len = 1; // "\0" idx = 0; for(i = 0; i < arr->num_entries; i++) { if((arr->entries[i].type != GAVL_TYPE_STRING) || !arr->entries[i].v.str) continue; if(idx) ret_len += glue_len; ret_len += strlen(arr->entries[i].v.str); idx++; } ret = malloc(ret_len); *ret = '\0'; if(!idx) return ret; idx = 0; for(i = 0; i < arr->num_entries; i++) { if((arr->entries[i].type != GAVL_TYPE_STRING) || !arr->entries[i].v.str) continue; if(idx) strncat(ret, glue, ret_len - strlen(ret)); strncat(ret, arr->entries[i].v.str, ret_len - strlen(ret)); idx++; } return ret; } gavl_dictionary_t * gavl_array_append_dictionary(gavl_array_t * arr) { gavl_value_t val; gavl_value_init(&val); gavl_value_set_dictionary(&val); gavl_array_splice_val_nocopy(arr, -1, 0, &val); return gavl_value_get_dictionary_nc(&arr->entries[arr->num_entries-1]); } bplaum-gavl-b9385e3/gavl/audioconnector.c000066400000000000000000000205361513252040200203760ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include #include #include #include // #define PRINT_FAILURES typedef struct { gavl_audio_frame_t * sink_frame; gavl_audio_frame_t * in_frame; gavl_audio_sink_t * sink; gavl_audio_source_t * src; const gavl_audio_format_t * fmt; int * penalties; gavl_audio_connector_t * c; } sink_t; struct gavl_audio_connector_s { gavl_audio_source_t * src; const gavl_audio_format_t * fmt; gavl_audio_frame_t * in_frame; sink_t * sinks; int num_sinks; int sinks_alloc; gavl_audio_connector_process_func process_func; void * process_priv; gavl_audio_options_t opt; int have_in_frame; gavl_source_status_t src_st; }; gavl_audio_connector_t * gavl_audio_connector_create(gavl_audio_source_t * src) { gavl_audio_connector_t * ret = calloc(1, sizeof(*ret)); ret->src = src; ret->fmt = gavl_audio_source_get_src_format(ret->src); gavl_audio_options_set_defaults(&ret->opt); return ret; } gavl_audio_options_t * gavl_audio_connector_get_options(gavl_audio_connector_t * c) { return &c->opt; } void gavl_audio_connector_destroy(gavl_audio_connector_t * c) { int i; for(i = 0; i < c->num_sinks; i++) { if(c->sinks[i].src) gavl_audio_source_destroy(c->sinks[i].src); } if(c->sinks) free(c->sinks); free(c); } void gavl_audio_connector_connect(gavl_audio_connector_t * c, gavl_audio_sink_t * sink) { sink_t * s; if(c->num_sinks + 1 > c->sinks_alloc) { c->sinks_alloc += 8; c->sinks = realloc(c->sinks, c->sinks_alloc * sizeof(*c->sinks)); memset(c->sinks + c->num_sinks, 0, (c->sinks_alloc - c->num_sinks) * sizeof(*c->sinks)); } s = c->sinks + c->num_sinks; s->sink = sink; s->c = c; s->fmt = gavl_audio_sink_get_format(s->sink); c->num_sinks++; } void gavl_audio_connector_set_process_func(gavl_audio_connector_t * c, gavl_audio_connector_process_func func, void * priv) { c->process_func = func; c->process_priv = priv; } static gavl_source_status_t read_func(void * priv, gavl_audio_frame_t ** frame) { sink_t * s = priv; if(s->c->src_st == GAVL_SOURCE_EOF) return GAVL_SOURCE_EOF; if(s->in_frame) { *frame = s->in_frame; s->in_frame = NULL; return GAVL_SOURCE_OK; } else return GAVL_SOURCE_AGAIN; } static int flush_src(sink_t * s) { gavl_source_status_t src_st; gavl_sink_status_t sink_st; while(1) { if(!s->sink_frame) s->sink_frame = gavl_audio_sink_get_frame(s->sink); src_st = gavl_audio_source_read_frame(s->src, &s->sink_frame); switch(src_st) { case GAVL_SOURCE_EOF: s->sink_frame = NULL; return 1; case GAVL_SOURCE_AGAIN: return 1; case GAVL_SOURCE_OK: break; } sink_st = gavl_audio_sink_put_frame(s->sink, s->sink_frame); s->sink_frame = NULL; if(sink_st != GAVL_SINK_OK) { #ifdef PRINT_FAILURES gavl_dprintf("Sink error\n"); #endif return 0; } } return 1; } void gavl_audio_connector_reset(gavl_audio_connector_t * c) { int i; c->in_frame = NULL; c->have_in_frame = 0; c->src_st = GAVL_SOURCE_OK; for(i = 0; i < c->num_sinks; i++) { if(c->sinks[i].src) gavl_audio_source_reset(c->sinks[i].src); } } int gavl_audio_connector_process(gavl_audio_connector_t * c) { int i; sink_t * s; gavl_sink_status_t sink_st; if(!c->have_in_frame) { c->in_frame = NULL; /* Obtain buffer for input frame */ for(i = 0; i < c->num_sinks; i++) { s = c->sinks + i; if(!s->src) { /* Passthrough */ s->sink_frame = gavl_audio_sink_get_frame(s->sink); if(!c->in_frame) c->in_frame = s->sink_frame; } } c->have_in_frame = 1; } /* Get input frame */ c->src_st = gavl_audio_source_read_frame(c->src, &c->in_frame); switch(c->src_st) { case GAVL_SOURCE_OK: break; case GAVL_SOURCE_AGAIN: return 1; break; case GAVL_SOURCE_EOF: for(i = 0; i < c->num_sinks; i++) { s = c->sinks + i; if(s->src && !flush_src(s)) { #ifdef PRINT_FAILURES gavl_dprintf("Flush source error\n"); #endif return 0; } } #ifdef PRINT_FAILURES gavl_dprintf("Source EOF\n"); #endif return 0; } if(c->process_func) c->process_func(c->process_priv, c->in_frame); /* Flush sinks */ for(i = 0; i < c->num_sinks; i++) { s = c->sinks + i; /* No src, pass frame directly */ if(!s->src) { /* Passthrough */ if(!s->sink_frame) sink_st = gavl_audio_sink_put_frame(s->sink, c->in_frame); else { if(s->sink_frame != c->in_frame) { s->sink_frame->valid_samples = gavl_audio_frame_copy(s->fmt, s->sink_frame, // dst c->in_frame, // src 0, // dst_pos 0, // src_pos s->fmt->samples_per_frame, // dst_size c->in_frame->valid_samples); // src_size /* This breaks when more metadata come */ s->sink_frame->timestamp = c->in_frame->timestamp; } sink_st = gavl_audio_sink_put_frame(s->sink, s->sink_frame); } if(sink_st != GAVL_SINK_OK) { #ifdef PRINT_FAILURES gavl_dprintf("Sink error\n"); #endif return 0; } } else { /* Pass frame through the sink->src */ s->in_frame = c->in_frame; if(!flush_src(s)) { #ifdef PRINT_FAILURES gavl_dprintf("Flush source failed\n"); #endif return 0; } } } c->have_in_frame = 0; return 1; } gavl_source_status_t gavl_audio_connector_get_source_status(gavl_audio_connector_t * c) { return c->src_st; } #if 0 static int get_penalty(gavl_audio_converter_t * cnv, const gavl_audio_format_t * src_fmt, const gavl_audio_format_t * dst_fmt) { return 0; } #endif void gavl_audio_connector_start(gavl_audio_connector_t * c) { int i; gavl_audio_converter_t * cnv; sink_t * s; /* Handle trivial case early */ if(!c->num_sinks) return; else if(c->num_sinks == 1) { gavl_audio_source_set_dst(c->src, 0, c->sinks->fmt); return; } else gavl_audio_source_set_dst(c->src, 0, NULL); cnv = gavl_audio_converter_create(); gavl_audio_options_copy(gavl_audio_converter_get_options(cnv), &c->opt); for(i = 0; i < c->num_sinks; i++) { s = c->sinks + i; if((c->fmt->samples_per_frame != s->fmt->samples_per_frame) || gavl_audio_converter_init(cnv, c->fmt, s->fmt)) { s->src = gavl_audio_source_create(read_func, s, GAVL_SOURCE_SRC_ALLOC, c->fmt); gavl_audio_options_copy(gavl_audio_source_get_options(s->src), &c->opt); gavl_audio_source_set_dst(s->src, 0, s->fmt); } } gavl_audio_converter_destroy(cnv); } const gavl_audio_format_t * gavl_audio_connector_get_process_format(gavl_audio_connector_t * c) { return gavl_audio_source_get_dst_format(c->src); } bplaum-gavl-b9385e3/gavl/audioconverter.c000066400000000000000000000427041513252040200204140ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include #include #include #include #include struct gavl_audio_converter_s { gavl_audio_format_t input_format; gavl_audio_format_t output_format; gavl_audio_options_t opt; int num_conversions; gavl_audio_convert_context_t * contexts; gavl_audio_convert_context_t * last_context; gavl_audio_format_t * current_format; }; static void destroy_context(gavl_audio_convert_context_t * ctx) { if(ctx->mix_matrix) gavl_destroy_mix_matrix(ctx->mix_matrix); if(ctx->samplerate_converter) gavl_samplerate_converter_destroy(ctx->samplerate_converter); if(ctx->dither_context) gavl_audio_dither_context_destroy(ctx->dither_context); free(ctx); } static void audio_converter_cleanup(gavl_audio_converter_t* cnv) { gavl_audio_convert_context_t * ctx; ctx = cnv->contexts; while(ctx) { ctx = cnv->contexts->next; if(ctx && cnv->contexts->output_frame) gavl_audio_frame_destroy(cnv->contexts->output_frame); destroy_context(cnv->contexts); cnv->contexts = ctx; } cnv->num_conversions = 0; cnv->contexts = NULL; cnv->last_context = NULL; } void gavl_audio_converter_destroy(gavl_audio_converter_t* cnv) { audio_converter_cleanup(cnv); free(cnv); } gavl_audio_convert_context_t * gavl_audio_convert_context_create(gavl_audio_format_t * input_format, gavl_audio_format_t * output_format) { gavl_audio_convert_context_t * ret; ret = calloc(1, sizeof(*ret)); gavl_audio_format_copy(&ret->input_format, input_format); gavl_audio_format_copy(&ret->output_format, output_format); return ret; } static void adjust_format(gavl_audio_format_t * f) { if(f->num_channels == 1) f->interleave_mode = GAVL_INTERLEAVE_NONE; if((f->num_channels == 2) && (f->interleave_mode == GAVL_INTERLEAVE_2)) f->interleave_mode = GAVL_INTERLEAVE_ALL; } static void add_context(gavl_audio_converter_t* cnv, gavl_audio_convert_context_t * ctx) { if(cnv->last_context) { cnv->last_context->next = ctx; cnv->last_context = cnv->last_context->next; } else { cnv->last_context = ctx; cnv->contexts = ctx; } ctx->output_format.samples_per_frame = 0; cnv->current_format = &ctx->output_format; cnv->num_conversions++; } #if 0 static void dump_context(gavl_audio_convert_context_t * ctx) { fprintf(stderr, "==== Conversion context ====\n"); fprintf(stderr, "Input format:\n"); gavl_audio_format_dump(&ctx->input_format); fprintf(stderr, "Output format:\n"); gavl_audio_format_dump(&ctx->output_format); fprintf(stderr, "Func: %p\n", ctx->func); } #endif static void put_samplerate_context(gavl_audio_converter_t* cnv, gavl_audio_format_t * tmp_format, int out_samplerate) { gavl_audio_convert_context_t * ctx; /* Sampleformat conversion with GAVL_INTERLEAVE_2 is not supported */ if(cnv->current_format->interleave_mode == GAVL_INTERLEAVE_2) { tmp_format->interleave_mode = GAVL_INTERLEAVE_NONE; ctx = gavl_interleave_context_create(&cnv->opt, cnv->current_format, tmp_format); add_context(cnv, ctx); } if(cnv->current_format->sample_format < GAVL_SAMPLE_FLOAT) { tmp_format->sample_format = GAVL_SAMPLE_FLOAT; ctx = gavl_sampleformat_context_create(&cnv->opt, cnv->current_format, tmp_format); add_context(cnv, ctx); } tmp_format->samplerate = out_samplerate; ctx = gavl_samplerate_context_create(&cnv->opt, cnv->current_format, tmp_format); add_context(cnv, ctx); } int gavl_audio_converter_reinit(gavl_audio_converter_t* cnv) { int do_mix, do_resample; int i; gavl_audio_convert_context_t * ctx; gavl_audio_format_t * input_format, * output_format; gavl_audio_format_t tmp_format; input_format = &cnv->input_format; output_format = &cnv->output_format; #if 0 fprintf(stderr, "Initializing audio converter, quality: %d, Flags: 0x%08x\n", cnv->opt.quality, cnv->opt.accel_flags); #endif /* Delete previous conversions */ audio_converter_cleanup(cnv); /* Copy formats and options */ memset(&tmp_format, 0, sizeof(tmp_format)); gavl_audio_format_copy(&tmp_format, &cnv->input_format); cnv->current_format = &cnv->input_format; /* Check if we must mix */ do_mix = 0; if((input_format->num_channels != output_format->num_channels) || (gavl_front_channels(input_format) != gavl_front_channels(output_format)) || (gavl_rear_channels(input_format) != gavl_rear_channels(output_format)) || (gavl_side_channels(input_format) != gavl_side_channels(output_format))) { do_mix = 1; } if(!do_mix) { i = (input_format->num_channels < output_format->num_channels) ? input_format->num_channels : output_format->num_channels; while(i--) { if(input_format->channel_locations[i] != output_format->channel_locations[i]) { do_mix = 1; break; } } } /* Check if we must resample */ do_resample = (input_format->samplerate != output_format->samplerate) ? 1 : 0; /* Check for resampling. We take care, that we do resampling for the least possible channels */ if(do_resample && (!do_mix || (do_mix && (input_format->num_channels <= output_format->num_channels)))) put_samplerate_context(cnv, &tmp_format, output_format->samplerate); /* Check for mixing */ if(do_mix) { if(cnv->current_format->interleave_mode != GAVL_INTERLEAVE_NONE) { tmp_format.interleave_mode = GAVL_INTERLEAVE_NONE; ctx = gavl_interleave_context_create(&cnv->opt, cnv->current_format, &tmp_format); add_context(cnv, ctx); } if((cnv->current_format->sample_format < GAVL_SAMPLE_FLOAT) && ((cnv->opt.quality > 3) || (cnv->output_format.sample_format == GAVL_SAMPLE_FLOAT))) { tmp_format.sample_format = GAVL_SAMPLE_FLOAT; ctx = gavl_sampleformat_context_create(&cnv->opt, cnv->current_format, &tmp_format); add_context(cnv, ctx); } else if((cnv->current_format->sample_format < GAVL_SAMPLE_DOUBLE) && ((cnv->opt.quality > 4) || (cnv->output_format.sample_format == GAVL_SAMPLE_DOUBLE))) { tmp_format.sample_format = GAVL_SAMPLE_DOUBLE; ctx = gavl_sampleformat_context_create(&cnv->opt, cnv->current_format, &tmp_format); add_context(cnv, ctx); } else if(gavl_bytes_per_sample(cnv->current_format->sample_format) < gavl_bytes_per_sample(cnv->output_format.sample_format)) { tmp_format.sample_format = cnv->output_format.sample_format; ctx = gavl_sampleformat_context_create(&cnv->opt, cnv->current_format, &tmp_format); add_context(cnv, ctx); } tmp_format.num_channels = cnv->output_format.num_channels; memcpy(tmp_format.channel_locations, cnv->output_format.channel_locations, GAVL_MAX_CHANNELS * sizeof(tmp_format.channel_locations[0])); ctx = gavl_mix_context_create(&cnv->opt, cnv->current_format, &tmp_format); add_context(cnv, ctx); } if(do_resample && do_mix && (input_format->num_channels > output_format->num_channels)) { put_samplerate_context(cnv, &tmp_format, output_format->samplerate); } /* Check, if we must change the sample format */ if(cnv->current_format->sample_format != cnv->output_format.sample_format) { if(cnv->current_format->interleave_mode == GAVL_INTERLEAVE_2) { tmp_format.interleave_mode = GAVL_INTERLEAVE_NONE; ctx = gavl_interleave_context_create(&cnv->opt, cnv->current_format, &tmp_format); add_context(cnv, ctx); } tmp_format.sample_format = cnv->output_format.sample_format; ctx = gavl_sampleformat_context_create(&cnv->opt, cnv->current_format, &tmp_format); add_context(cnv, ctx); } /* Final interleaving */ if(cnv->current_format->interleave_mode != cnv->output_format.interleave_mode) { tmp_format.interleave_mode = cnv->output_format.interleave_mode; ctx = gavl_interleave_context_create(&cnv->opt, cnv->current_format, &tmp_format); add_context(cnv, ctx); } #if 0 fprintf(stderr, "Audio converter initialized, %d conversions\n", cnv->num_conversions); gavl_audio_format_dump(&cnv->input_format); gavl_audio_format_dump(&cnv->output_format); #endif // gavl_audio_format_dump(cnv->current_format); /* Set samples_per_frame of the first context to zero to enable automatic allocation later on */ cnv->input_format.samples_per_frame = 0; return cnv->num_conversions; } static void alloc_frames(gavl_audio_converter_t* cnv, int in_samples, double new_ratio) { gavl_audio_convert_context_t * ctx; int out_samples_needed; if((cnv->input_format.samples_per_frame >= in_samples) && (new_ratio < 0.0)) return; cnv->input_format.samples_per_frame = in_samples; /* Set the samples_per_frame member of all intermediate formats */ ctx = cnv->contexts; out_samples_needed = in_samples; while(ctx->next) { ctx->input_format.samples_per_frame = out_samples_needed; if(ctx->samplerate_converter) { /* Varispeed */ if(new_ratio > 0.0) { out_samples_needed = (int)(0.5 * (ctx->samplerate_converter->ratio + new_ratio) * out_samples_needed) + 10; } /* Constant ratio */ else { out_samples_needed = (out_samples_needed * ctx->output_format.samplerate) / ctx->input_format.samplerate + 10; } } if(ctx->output_format.samples_per_frame < out_samples_needed) { ctx->output_format.samples_per_frame = out_samples_needed + 1024; if(ctx->output_frame) gavl_audio_frame_destroy(ctx->output_frame); ctx->output_frame = gavl_audio_frame_create(&ctx->output_format); gavl_audio_frame_mute(ctx->output_frame, &ctx->output_format); ctx->next->input_frame = ctx->output_frame; } ctx = ctx->next; } } int gavl_audio_converter_init(gavl_audio_converter_t* cnv, const gavl_audio_format_t * input_format, const gavl_audio_format_t * output_format) { gavl_audio_format_copy(&cnv->input_format, input_format); gavl_audio_format_copy(&cnv->output_format, output_format); adjust_format(&cnv->input_format); adjust_format(&cnv->output_format); return gavl_audio_converter_reinit(cnv); } /* Convert audio */ void gavl_audio_convert(gavl_audio_converter_t * cnv, const gavl_audio_frame_t * input_frame, gavl_audio_frame_t * output_frame) { int i; gavl_audio_convert_context_t * ctx; /* return early */ if(!input_frame->valid_samples) { output_frame->valid_samples = 0; return; } cnv->contexts->input_frame = input_frame; cnv->last_context->output_frame = output_frame; alloc_frames(cnv, input_frame->valid_samples, -1.0); ctx = cnv->contexts; for(i = 0; i < cnv->num_conversions; i++) { ctx->output_frame->valid_samples = 0; if(ctx->func) { ctx->func(ctx); if(!ctx->output_frame->valid_samples) ctx->output_frame->valid_samples = ctx->input_frame->valid_samples; if(ctx->output_format.samplerate != ctx->input_format.samplerate) ctx->output_frame->timestamp = gavl_time_rescale(ctx->input_format.samplerate, ctx->output_format.samplerate, ctx->input_frame->timestamp); else ctx->output_frame->timestamp = ctx->input_frame->timestamp; } ctx = ctx->next; } } gavl_audio_converter_t * gavl_audio_converter_create() { gavl_audio_converter_t * ret = calloc(1, sizeof(*ret)); gavl_audio_options_set_defaults(&ret->opt); return ret; } gavl_audio_options_t * gavl_audio_converter_get_options(gavl_audio_converter_t * cnv) { return &cnv->opt; } int gavl_audio_converter_init_resample(gavl_audio_converter_t * cnv, const gavl_audio_format_t * format) { gavl_audio_format_t tmp_format; gavl_audio_convert_context_t * ctx; gavl_audio_format_copy(&cnv->input_format, format); gavl_audio_format_copy(&cnv->output_format, format); gavl_audio_format_copy(&tmp_format, format); adjust_format(&cnv->input_format); adjust_format(&cnv->output_format); // Delete previous conversions audio_converter_cleanup(cnv); cnv->current_format = &cnv->input_format; put_samplerate_context(cnv, &tmp_format, cnv->output_format.samplerate); /* put_samplerate will automatically convert sample format and interleave format * we need to check to see if it did or not and add contexts to convert back */ if(cnv->current_format->sample_format != cnv->output_format.sample_format) { if(cnv->current_format->interleave_mode == GAVL_INTERLEAVE_2) { tmp_format.interleave_mode = GAVL_INTERLEAVE_NONE; ctx = gavl_interleave_context_create(&cnv->opt, cnv->current_format, &tmp_format); add_context(cnv, ctx); } tmp_format.sample_format = cnv->output_format.sample_format; ctx = gavl_sampleformat_context_create(&cnv->opt, cnv->current_format, &tmp_format); add_context(cnv, ctx); } /* Final interleaving */ if(cnv->current_format->interleave_mode != cnv->output_format.interleave_mode) { tmp_format.interleave_mode = cnv->output_format.interleave_mode; ctx = gavl_interleave_context_create(&cnv->opt, cnv->current_format, &tmp_format); add_context(cnv, ctx); } cnv->input_format.samples_per_frame = 0; return cnv->num_conversions; } int gavl_audio_converter_set_resample_ratio(gavl_audio_converter_t * cnv, double ratio ) { int j; gavl_audio_convert_context_t * ctx; ctx = cnv->contexts; if (ratio > SRC_MAX_RATIO || ratio < 1/SRC_MAX_RATIO) return 0; while(ctx) { if (ctx->samplerate_converter != NULL) { for (j=0; j < ctx->samplerate_converter->num_resamplers; j++) gavl_src_set_ratio( ctx->samplerate_converter->resamplers[j], ratio); } ctx->samplerate_converter->ratio = ratio; ctx = ctx->next; } return 1; } void gavl_audio_converter_resample(gavl_audio_converter_t * cnv, gavl_audio_frame_t * input_frame, gavl_audio_frame_t * output_frame, double ratio) { gavl_audio_convert_context_t * ctx; cnv->contexts->input_frame = input_frame; cnv->last_context->output_frame = output_frame; alloc_frames(cnv, input_frame->valid_samples, ratio); ctx = cnv->contexts; while(ctx) { ctx->output_frame->valid_samples = 0; if (ctx->samplerate_converter != NULL) { if (ctx->samplerate_converter->ratio != ratio ) { //ctx->output_format.samplerate = ctx->input_format.samplerate * ratio; ctx->samplerate_converter->ratio = ratio; ctx->samplerate_converter->data.src_ratio = ratio; //for (j=0; j < ctx->samplerate_converter->num_resamplers; j++) // gavl_src_set_ratio( ctx->samplerate_converter->resamplers[j], ratio); } } if(ctx->func) { ctx->func(ctx); // DO WE NEED THIS HERE??? if(!ctx->output_frame->valid_samples) ctx->output_frame->valid_samples = ctx->input_frame->valid_samples; ctx->output_frame->timestamp = ctx->input_frame->timestamp; } ctx = ctx->next; } } bplaum-gavl-b9385e3/gavl/audioformat.c000066400000000000000000000426161513252040200176770ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include #include #include #include static const struct { gavl_sample_format_t format; char * name; char * short_name; } sample_format_names[] = { { GAVL_SAMPLE_NONE, "Not specified", "unknown" }, // Must be first { GAVL_SAMPLE_U8, "Unsigned 8 bit", "u8" }, { GAVL_SAMPLE_S8, "Signed 8 bit", "s8" }, { GAVL_SAMPLE_U16, "Unsigned 16 bit", "u16" }, { GAVL_SAMPLE_S16, "Signed 16 bit", "s16" }, { GAVL_SAMPLE_S32, "Signed 32 bit", "s32" }, { GAVL_SAMPLE_FLOAT, "Floating point", "float"}, { GAVL_SAMPLE_DOUBLE, "Double precision", "double"}, }; const char * gavl_sample_format_to_string(gavl_sample_format_t format) { int i; for(i = 0; i < sizeof(sample_format_names)/sizeof(sample_format_names[0]); i++) { if(format == sample_format_names[i].format) return sample_format_names[i].name; } return NULL; } const char * gavl_sample_format_to_short_string(gavl_sample_format_t format) { int i; for(i = 0; i < sizeof(sample_format_names)/sizeof(sample_format_names[0]); i++) { if(format == sample_format_names[i].format) return sample_format_names[i].short_name; } return sample_format_names[0].short_name; } gavl_sample_format_t gavl_string_to_sample_format(const char * str) { int i; for(i = 0; i < sizeof(sample_format_names)/sizeof(sample_format_names[0]); i++) { if(!strcmp(str, sample_format_names[i].name)) return sample_format_names[i].format; } return GAVL_SAMPLE_NONE; } gavl_sample_format_t gavl_short_string_to_sample_format(const char * str) { int i; for(i = 0; i < sizeof(sample_format_names)/sizeof(sample_format_names[0]); i++) { if(!strcmp(str, sample_format_names[i].short_name)) return sample_format_names[i].format; } return GAVL_SAMPLE_NONE; } int gavl_num_sample_formats() { return sizeof(sample_format_names)/sizeof(sample_format_names[0])-1; } gavl_sample_format_t gavl_get_sample_format(int index) { if((index >= 0) && (index < sizeof(sample_format_names)/sizeof(sample_format_names[0]))) return sample_format_names[index].format; return GAVL_SAMPLE_NONE; } static const struct { gavl_interleave_mode_t mode; char * name; char * short_name; } interleave_mode_names[] = { { GAVL_INTERLEAVE_NONE, "Not interleaved", "none" }, { GAVL_INTERLEAVE_2, "Interleaved channel pairs", "pairs" }, { GAVL_INTERLEAVE_ALL, "All channels interleaved", "all" }, }; const char * gavl_interleave_mode_to_string(gavl_interleave_mode_t mode) { int i; for(i = 0; i < sizeof(interleave_mode_names)/sizeof(interleave_mode_names[0]); i++) { if(mode == interleave_mode_names[i].mode) return interleave_mode_names[i].name; } return NULL; } const char * gavl_interleave_mode_to_short_string(gavl_interleave_mode_t mode) { int i; for(i = 0; i < sizeof(interleave_mode_names)/sizeof(interleave_mode_names[0]); i++) { if(mode == interleave_mode_names[i].mode) return interleave_mode_names[i].short_name; } return interleave_mode_names[0].short_name; } gavl_interleave_mode_t gavl_short_string_to_interleave_mode(const char * mode) { int i; for(i = 0; i < sizeof(interleave_mode_names)/sizeof(interleave_mode_names[0]); i++) { if(!strcmp(mode, interleave_mode_names[i].short_name)) return interleave_mode_names[i].mode; } return interleave_mode_names[0].mode; } static const struct { gavl_channel_id_t id; char * name; char * short_name; } channel_id_names[] = { { GAVL_CHID_NONE, "Unknown channel", "unknown" }, { GAVL_CHID_FRONT_CENTER, "Front C", "fc" }, { GAVL_CHID_FRONT_LEFT, "Front L", "fl" }, { GAVL_CHID_FRONT_RIGHT, "Front R", "fr" }, { GAVL_CHID_FRONT_CENTER_LEFT, "Front CL", "fcl" }, { GAVL_CHID_FRONT_CENTER_RIGHT, "Front CR", "fcr" }, { GAVL_CHID_REAR_CENTER, "Rear C", "rc" }, { GAVL_CHID_REAR_LEFT, "Rear L", "rl" }, { GAVL_CHID_REAR_RIGHT, "Rear R", "rr" }, { GAVL_CHID_SIDE_LEFT, "Side L", "sl" }, { GAVL_CHID_SIDE_RIGHT, "Side R", "sr" }, { GAVL_CHID_LFE, "LFE", "lfe" }, { GAVL_CHID_AUX, "AUX", "aux" }, }; const char * gavl_channel_id_to_string(gavl_channel_id_t id) { int i; for(i = 0; i < sizeof(channel_id_names)/sizeof(channel_id_names[0]); i++) { // fprintf(stderr, "ID: %d\n", id); if(id == channel_id_names[i].id) return channel_id_names[i].name; } return NULL; } const char * gavl_channel_id_to_short_string(gavl_channel_id_t id) { int i; for(i = 0; i < sizeof(channel_id_names)/sizeof(channel_id_names[0]); i++) { // fprintf(stderr, "ID: %d\n", id); if(id == channel_id_names[i].id) return channel_id_names[i].short_name; } return channel_id_names[0].short_name; } gavl_channel_id_t gavl_short_string_to_channel_id(const char * id) { int i; for(i = 0; i < sizeof(channel_id_names)/sizeof(channel_id_names[0]); i++) { // fprintf(stderr, "ID: %d\n", id); if(!strcmp(id, channel_id_names[i].short_name)) return channel_id_names[i].id; } return channel_id_names[0].id; } static void do_indent(int num) { int i; for(i = 0; i < num; i++) fprintf(stderr, " "); } void gavl_audio_format_dump(const gavl_audio_format_t * format) { gavl_audio_format_dumpi(format, 2); } void gavl_audio_format_dumpi(const gavl_audio_format_t * f, int indent) { int i; do_indent(indent); fprintf(stderr, "Channels: %d\n", f->num_channels); do_indent(indent); fprintf(stderr, "Channel order: "); for(i = 0; i < f->num_channels; i++) { fprintf(stderr, "%s", gavl_channel_id_to_string(f->channel_locations[i])); if(i < f->num_channels - 1) fprintf(stderr, ", "); } fprintf(stderr, "\n"); do_indent(indent); fprintf(stderr, "Samplerate: %d\n", f->samplerate); do_indent(indent); fprintf(stderr, "Samples per frame: %d\n", f->samples_per_frame); do_indent(indent); fprintf(stderr, "Interleave Mode: %s\n", gavl_interleave_mode_to_string(f->interleave_mode)); do_indent(indent); fprintf(stderr, "Sample format: %s\n", gavl_sample_format_to_string(f->sample_format)); if(gavl_front_channels(f) == 3) { do_indent(indent); if(f->center_level > 0.0) fprintf(stderr, "Center level: %0.1f dB\n", 20 * log10(f->center_level)); else fprintf(stderr, "Center level: Zero\n"); } if(gavl_rear_channels(f)) { do_indent(indent); if(f->rear_level > 0.0) fprintf(stderr, "Rear level: %0.1f dB\n", 20 * log10(f->rear_level)); else fprintf(stderr, "Rear level: Zero\n"); } } void gavl_set_channel_setup(gavl_audio_format_t * dst) { int i; if(dst->channel_locations[0] == GAVL_CHID_NONE) { switch(dst->num_channels) { case 1: dst->channel_locations[0] = GAVL_CHID_FRONT_CENTER; break; case 2: /* 2 Front channels (Stereo or Dual channels) */ dst->channel_locations[0] = GAVL_CHID_FRONT_LEFT; dst->channel_locations[1] = GAVL_CHID_FRONT_RIGHT; break; case 3: dst->channel_locations[0] = GAVL_CHID_FRONT_LEFT; dst->channel_locations[1] = GAVL_CHID_FRONT_RIGHT; dst->channel_locations[2] = GAVL_CHID_FRONT_CENTER; break; case 4: dst->channel_locations[0] = GAVL_CHID_FRONT_LEFT; dst->channel_locations[1] = GAVL_CHID_FRONT_RIGHT; dst->channel_locations[2] = GAVL_CHID_REAR_LEFT; dst->channel_locations[3] = GAVL_CHID_REAR_RIGHT; break; case 5: dst->channel_locations[0] = GAVL_CHID_FRONT_LEFT; dst->channel_locations[1] = GAVL_CHID_FRONT_RIGHT; dst->channel_locations[2] = GAVL_CHID_REAR_LEFT; dst->channel_locations[3] = GAVL_CHID_REAR_RIGHT; dst->channel_locations[4] = GAVL_CHID_FRONT_CENTER; break; case 6: dst->channel_locations[0] = GAVL_CHID_FRONT_LEFT; dst->channel_locations[1] = GAVL_CHID_FRONT_RIGHT; dst->channel_locations[2] = GAVL_CHID_REAR_LEFT; dst->channel_locations[3] = GAVL_CHID_REAR_RIGHT; dst->channel_locations[4] = GAVL_CHID_FRONT_CENTER; dst->channel_locations[5] = GAVL_CHID_LFE; break; default: for(i = 0; i < dst->num_channels; i++) dst->channel_locations[i] = GAVL_CHID_AUX; break; } } } void gavl_audio_format_copy(gavl_audio_format_t * dst, const gavl_audio_format_t * src) { memcpy(dst, src, sizeof(*dst)); } int gavl_channel_index(const gavl_audio_format_t * f, gavl_channel_id_t id) { int i; for(i = 0; i < f->num_channels; i++) { if(f->channel_locations[i] == id) return i; } // fprintf(stderr, "Channel %s not present!!! Format was\n", // gavl_channel_id_to_string(id)); // gavl_audio_format_dump(f); return -1; } int gavl_front_channels(const gavl_audio_format_t * f) { int i; int result = 0; for(i = 0; i < f->num_channels; i++) { switch(f->channel_locations[i]) { case GAVL_CHID_FRONT_CENTER: case GAVL_CHID_FRONT_LEFT: case GAVL_CHID_FRONT_RIGHT: case GAVL_CHID_FRONT_CENTER_LEFT: case GAVL_CHID_FRONT_CENTER_RIGHT: result++; break; case GAVL_CHID_NONE: case GAVL_CHID_REAR_LEFT: case GAVL_CHID_REAR_RIGHT: case GAVL_CHID_REAR_CENTER: case GAVL_CHID_SIDE_LEFT: case GAVL_CHID_SIDE_RIGHT: case GAVL_CHID_LFE: case GAVL_CHID_AUX: break; } } return result; } int gavl_rear_channels(const gavl_audio_format_t * f) { int i; int result = 0; for(i = 0; i < f->num_channels; i++) { switch(f->channel_locations[i]) { case GAVL_CHID_REAR_LEFT: case GAVL_CHID_REAR_RIGHT: case GAVL_CHID_REAR_CENTER: result++; break; case GAVL_CHID_FRONT_CENTER: case GAVL_CHID_FRONT_LEFT: case GAVL_CHID_FRONT_RIGHT: case GAVL_CHID_FRONT_CENTER_LEFT: case GAVL_CHID_FRONT_CENTER_RIGHT: case GAVL_CHID_NONE: case GAVL_CHID_SIDE_LEFT: case GAVL_CHID_SIDE_RIGHT: case GAVL_CHID_LFE: case GAVL_CHID_AUX: break; } } return result; } int gavl_side_channels(const gavl_audio_format_t * f) { int i; int result = 0; for(i = 0; i < f->num_channels; i++) { switch(f->channel_locations[i]) { case GAVL_CHID_SIDE_LEFT: case GAVL_CHID_SIDE_RIGHT: result++; break; case GAVL_CHID_REAR_LEFT: case GAVL_CHID_REAR_RIGHT: case GAVL_CHID_REAR_CENTER: case GAVL_CHID_FRONT_CENTER: case GAVL_CHID_FRONT_LEFT: case GAVL_CHID_FRONT_RIGHT: case GAVL_CHID_FRONT_CENTER_LEFT: case GAVL_CHID_FRONT_CENTER_RIGHT: case GAVL_CHID_NONE: case GAVL_CHID_LFE: case GAVL_CHID_AUX: break; } } return result; } int gavl_lfe_channels(const gavl_audio_format_t * f) { int i; int result = 0; for(i = 0; i < f->num_channels; i++) { switch(f->channel_locations[i]) { case GAVL_CHID_LFE: result++; break; case GAVL_CHID_SIDE_LEFT: case GAVL_CHID_SIDE_RIGHT: case GAVL_CHID_REAR_LEFT: case GAVL_CHID_REAR_RIGHT: case GAVL_CHID_REAR_CENTER: case GAVL_CHID_FRONT_CENTER: case GAVL_CHID_FRONT_LEFT: case GAVL_CHID_FRONT_RIGHT: case GAVL_CHID_FRONT_CENTER_LEFT: case GAVL_CHID_FRONT_CENTER_RIGHT: case GAVL_CHID_NONE: case GAVL_CHID_AUX: break; } } return result; } int gavl_aux_channels(const gavl_audio_format_t * f) { int i; int result = 0; for(i = 0; i < f->num_channels; i++) { switch(f->channel_locations[i]) { case GAVL_CHID_AUX: result++; break; case GAVL_CHID_SIDE_LEFT: case GAVL_CHID_SIDE_RIGHT: case GAVL_CHID_REAR_LEFT: case GAVL_CHID_REAR_RIGHT: case GAVL_CHID_REAR_CENTER: case GAVL_CHID_FRONT_CENTER: case GAVL_CHID_FRONT_LEFT: case GAVL_CHID_FRONT_RIGHT: case GAVL_CHID_FRONT_CENTER_LEFT: case GAVL_CHID_FRONT_CENTER_RIGHT: case GAVL_CHID_NONE: case GAVL_CHID_LFE: break; } } return result; } int gavl_bytes_per_sample(gavl_sample_format_t format) { switch(format) { case GAVL_SAMPLE_U8: case GAVL_SAMPLE_S8: return 1; break; case GAVL_SAMPLE_U16: case GAVL_SAMPLE_S16: return 2; break; case GAVL_SAMPLE_S32: return 4; break; case GAVL_SAMPLE_FLOAT: return sizeof(float); break; case GAVL_SAMPLE_DOUBLE: return sizeof(double); break; case GAVL_SAMPLE_NONE: return 0; } return 0; } int gavl_audio_format_buffer_size(const gavl_audio_format_t * format) { return gavl_bytes_per_sample(format->sample_format) * format->num_channels * format->samples_per_frame; } int gavl_audio_formats_equal(const gavl_audio_format_t * format_1, const gavl_audio_format_t * format_2) { return !memcmp(format_1, format_2, sizeof(*format_1)); } int gavl_nearest_samplerate(int in_rate, const int * supported) { int index = 0, min_index = 0, min_diff = 0, diff; while(supported[index] > 0) { if(in_rate == supported[index]) return supported[index]; diff = abs(in_rate - supported[index]); if(!index || diff < min_diff) { min_index = index; min_diff = diff; } index++; } return supported[min_index]; } /* Conversion from <-> to Dictionary. This is for file formats * (json or xml). */ #define PUT_INT(member) \ gavl_value_set_int(&val, fmt->member); \ gavl_dictionary_set_nocopy(dict, #member, &val) #define PUT_FLOAT(member) \ gavl_value_set_float(&val, fmt->member); \ gavl_dictionary_set_nocopy(dict, #member, &val) #define PUT_STRING(member, str) \ gavl_value_set_string(&val, str); \ gavl_dictionary_set_nocopy(dict, #member, &val) void gavl_audio_format_to_dictionary(const gavl_audio_format_t * fmt, gavl_dictionary_t * dict) { int i; gavl_array_t * arr; gavl_value_t val; gavl_value_t child; gavl_value_init(&val); \ PUT_INT(samples_per_frame); PUT_INT(samplerate); PUT_INT(num_channels); PUT_STRING(sample_format, gavl_sample_format_to_short_string(fmt->sample_format)); PUT_STRING(interleave_mode, gavl_interleave_mode_to_short_string(fmt->interleave_mode)); PUT_FLOAT(center_level); PUT_FLOAT(rear_level); arr = gavl_value_set_array(&val); for(i = 0; i < fmt->num_channels; i++) { gavl_value_init(&child); gavl_value_set_string(&child, gavl_channel_id_to_short_string(fmt->channel_locations[i])); gavl_array_push_nocopy(arr, &child); } gavl_dictionary_set_nocopy(dict, "channel_locations", &val); } #define GET_INT(member) \ if(!(val = gavl_dictionary_get(dict, #member)) || \ !gavl_value_get_int(val, &val_i)) \ goto fail; \ fmt->member = val_i; #define GET_FLOAT(member) \ if(!(val = gavl_dictionary_get(dict, #member)) || \ !gavl_value_get_float(val, &val_f)) \ goto fail; \ fmt->member = val_i; int gavl_audio_format_from_dictionary(gavl_audio_format_t * fmt, const gavl_dictionary_t * dict) { int i; const char * str; const gavl_value_t * val; int val_i; double val_f; const gavl_array_t * arr; int ret = 0; GET_INT(samples_per_frame); GET_INT(samplerate); GET_INT(num_channels); GET_FLOAT(center_level); GET_FLOAT(rear_level); if(!(str = gavl_dictionary_get_string(dict, "sample_format"))) goto fail; fmt->sample_format = gavl_short_string_to_sample_format(str); if(!(str = gavl_dictionary_get_string(dict, "interleave_mode"))) goto fail; fmt->interleave_mode = gavl_short_string_to_interleave_mode(str); if(!(val = gavl_dictionary_get(dict, "channel_locations")) || !(arr = gavl_value_get_array(val))) goto fail; if(arr->num_entries != fmt->num_channels) goto fail; for(i = 0; i < fmt->num_channels; i++) { if(!(str = gavl_value_get_string(&arr->entries[i]))) goto fail; fmt->channel_locations[i] = gavl_short_string_to_channel_id(str); } ret = 1; fail: return ret; } bplaum-gavl-b9385e3/gavl/audioframe.c000066400000000000000000000474201513252040200174770ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include #include #include #include #include #include #include #define ALIGNMENT_BYTES 16 gavl_audio_frame_t * gavl_audio_frame_create(const gavl_audio_format_t * format) { gavl_audio_frame_t * ret; int num_samples; int i; ret = calloc(1, sizeof(*ret)); if(!format) return ret; num_samples = ALIGNMENT_BYTES * ((format->samples_per_frame + ALIGNMENT_BYTES - 1) / ALIGNMENT_BYTES); switch(format->sample_format) { case GAVL_SAMPLE_U8: ret->channel_stride = num_samples; ret->samples.u_8 = gavl_memalign(ALIGNMENT_BYTES, num_samples * format->num_channels); for(i = 0; i < format->num_channels; i++) ret->channels.u_8[i] = &ret->samples.u_8[i*num_samples]; break; case GAVL_SAMPLE_S8: ret->channel_stride = num_samples; ret->samples.s_8 = gavl_memalign(ALIGNMENT_BYTES, num_samples * format->num_channels); for(i = 0; i < format->num_channels; i++) ret->channels.s_8[i] = &ret->samples.s_8[i*num_samples]; break; case GAVL_SAMPLE_U16: ret->channel_stride = num_samples * 2; ret->samples.u_16 = gavl_memalign(ALIGNMENT_BYTES, 2 * num_samples * format->num_channels); for(i = 0; i < format->num_channels; i++) ret->channels.u_16[i] = &ret->samples.u_16[i*num_samples]; break; case GAVL_SAMPLE_S16: ret->channel_stride = num_samples * 2; ret->samples.s_16 = gavl_memalign(ALIGNMENT_BYTES, 2 * num_samples * format->num_channels); for(i = 0; i < format->num_channels; i++) ret->channels.s_16[i] = &ret->samples.s_16[i*num_samples]; break; case GAVL_SAMPLE_S32: ret->channel_stride = num_samples * 4; ret->samples.s_32 = gavl_memalign(ALIGNMENT_BYTES, 4 * num_samples * format->num_channels); for(i = 0; i < format->num_channels; i++) ret->channels.s_32[i] = &ret->samples.s_32[i*num_samples]; break; case GAVL_SAMPLE_FLOAT: ret->channel_stride = num_samples * sizeof(float); ret->samples.f = gavl_memalign(ALIGNMENT_BYTES, sizeof(float) * num_samples * format->num_channels); for(i = 0; i < format->num_channels; i++) ret->channels.f[i] = &ret->samples.f[i*num_samples]; break; case GAVL_SAMPLE_DOUBLE: ret->channel_stride = num_samples * sizeof(double); ret->samples.d = gavl_memalign(ALIGNMENT_BYTES, sizeof(double) * num_samples * format->num_channels); for(i = 0; i < format->num_channels; i++) ret->channels.d[i] = &ret->samples.d[i*num_samples]; break; case GAVL_SAMPLE_NONE: { fprintf(stderr, "Sample format not specified for audio frame\n"); return ret; } } return ret; } void gavl_audio_frame_copy_ptrs(const gavl_audio_format_t * format, gavl_audio_frame_t * dst, const gavl_audio_frame_t * src) { int i; dst->samples.s_8 = src->samples.s_8; for(i = 0; i < format->num_channels; i++) dst->channels.s_8[i] = src->channels.s_8[i]; dst->timestamp = src->timestamp; dst->valid_samples = src->valid_samples; } void gavl_audio_frame_destroy(gavl_audio_frame_t * frame) { if(frame->samples.s_8) free(frame->samples.s_8); free(frame); } static void mute_samples(const gavl_audio_format_t * format, void * buf, int imax) { int i; switch(format->sample_format) { case GAVL_SAMPLE_NONE: break; case GAVL_SAMPLE_U8: { uint8_t * ptr = buf; for(i = 0; i < imax; i++) ptr[i] = 0x80; } break; case GAVL_SAMPLE_S8: { int8_t * ptr = buf; for(i = 0; i < imax; i++) ptr[i] = 0x00; } break; case GAVL_SAMPLE_U16: { uint16_t * ptr = buf; for(i = 0; i < imax; i++) ptr[i] = 0x8000; } break; case GAVL_SAMPLE_S16: { int16_t * ptr = buf; for(i = 0; i < imax; i++) ptr[i] = 0x0000; } break; case GAVL_SAMPLE_S32: { int32_t * ptr = buf; for(i = 0; i < imax; i++) ptr[i] = 0x00000000; } break; case GAVL_SAMPLE_FLOAT: { float * ptr = buf; for(i = 0; i < imax; i++) ptr[i] = 0.0; } break; case GAVL_SAMPLE_DOUBLE: { double * ptr = buf; for(i = 0; i < imax; i++) ptr[i] = 0.0; } break; } } void gavl_audio_frame_mute_samples(gavl_audio_frame_t * frame, const gavl_audio_format_t * format, int num_samples) { int i; switch(format->interleave_mode) { case GAVL_INTERLEAVE_NONE: for(i = 0; i < format->num_channels; i++) mute_samples(format, frame->channels.u_8[i], num_samples); break; case GAVL_INTERLEAVE_ALL: mute_samples(format, frame->samples.u_8, num_samples * format->num_channels); break; case GAVL_INTERLEAVE_2: for(i = 0; i < format->num_channels / 2; i++) mute_samples(format, frame->channels.u_8[i*2], num_samples * 2); if(format->num_channels % 2) mute_samples(format, frame->channels.u_8[format->num_channels-1], num_samples); break; } frame->valid_samples = num_samples; } void gavl_audio_frame_mute(gavl_audio_frame_t * frame, const gavl_audio_format_t * format) { gavl_audio_frame_mute_samples(frame, format, format->samples_per_frame); } void gavl_audio_frame_mute_channel(gavl_audio_frame_t * frame, const gavl_audio_format_t * format, int channel) { int i; int imax; int offset = 0; int advance = 0; switch(format->interleave_mode) { case GAVL_INTERLEAVE_ALL: offset = channel; advance = format->num_channels; break; case GAVL_INTERLEAVE_NONE: offset = channel * format->samples_per_frame; advance = 1; break; case GAVL_INTERLEAVE_2: if(channel & 1) offset = (channel-1) * format->samples_per_frame + 1; else offset = channel * format->samples_per_frame; if((channel == format->num_channels - 1) && (format->num_channels & 1)) advance = 1; else advance = 2; break; } imax = format->samples_per_frame; switch(format->sample_format) { case GAVL_SAMPLE_NONE: break; case GAVL_SAMPLE_U8: for(i = 0; i < imax; i++) frame->samples.u_8[offset + advance * i] = 0x80; break; case GAVL_SAMPLE_S8: for(i = 0; i < imax; i++) frame->samples.u_8[offset + advance * i] = 0x00; break; case GAVL_SAMPLE_U16: for(i = 0; i < imax; i++) frame->samples.u_16[offset + advance * i] = 0x8000; break; case GAVL_SAMPLE_S16: for(i = 0; i < imax; i++) frame->samples.s_16[offset + advance * i] = 0x0000; break; case GAVL_SAMPLE_S32: for(i = 0; i < imax; i++) frame->samples.s_32[offset + advance * i] = 0x00000000; break; case GAVL_SAMPLE_FLOAT: for(i = 0; i < imax; i++) frame->samples.f[offset + advance * i] = 0.0; break; case GAVL_SAMPLE_DOUBLE: for(i = 0; i < imax; i++) frame->samples.d[offset + advance * i] = 0.0; break; } } int gavl_audio_frame_copy(const gavl_audio_format_t * format, gavl_audio_frame_t * dst, const gavl_audio_frame_t * src, int out_pos, int in_pos, int out_size, int in_size) { int i; int bytes_per_sample; int samples_to_copy; gavl_init_memcpy(); samples_to_copy = (in_size < out_size) ? in_size : out_size; if(!dst) return samples_to_copy; bytes_per_sample = gavl_bytes_per_sample(format->sample_format); switch(format->interleave_mode) { case GAVL_INTERLEAVE_NONE: for(i = 0; i < format->num_channels; i++) { gavl_memcpy(&dst->channels.s_8[i][out_pos * bytes_per_sample], &src->channels.s_8[i][in_pos * bytes_per_sample], samples_to_copy * bytes_per_sample); } break; case GAVL_INTERLEAVE_2: for(i = 0; i < format->num_channels/2; i++) { gavl_memcpy(&dst->channels.s_8[i*2][2 * out_pos * bytes_per_sample], &src->channels.s_8[i*2][2 * in_pos * bytes_per_sample], 2*samples_to_copy * bytes_per_sample); } /* Last channel is not interleaved */ if(format->num_channels & 1) { gavl_memcpy(&dst->channels.s_8[format->num_channels-1][2 * out_pos * bytes_per_sample], &src->channels.s_8[format->num_channels-1][2 * in_pos * bytes_per_sample], 2*samples_to_copy * bytes_per_sample); } break; case GAVL_INTERLEAVE_ALL: gavl_memcpy(&dst->samples.s_8[format->num_channels * out_pos * bytes_per_sample], &src->samples.s_8[format->num_channels * in_pos * bytes_per_sample], format->num_channels * samples_to_copy * bytes_per_sample); break; } return samples_to_copy; } void gavl_audio_frame_null(gavl_audio_frame_t * f) { memset(f, 0, sizeof(*f)); } GAVL_PUBLIC void gavl_audio_frame_get_subframe(const gavl_audio_format_t * format, gavl_audio_frame_t * src, gavl_audio_frame_t * dst, int start, int len) { int i; int bytes_per_sample = gavl_bytes_per_sample(format->sample_format); switch(format->interleave_mode) { case GAVL_INTERLEAVE_ALL: dst->samples.s_8 = src->samples.s_8 + bytes_per_sample * start * format->num_channels; break; case GAVL_INTERLEAVE_NONE: for(i = 0; i < format->num_channels; i++) dst->channels.s_8[i] = src->channels.s_8[i] + bytes_per_sample * start; break; case GAVL_INTERLEAVE_2: for(i = 0; i < format->num_channels/2; i++) dst->channels.s_8[i*2] = src->channels.s_8[i*2] + bytes_per_sample * start * 2; if(format->num_channels & 1) { dst->channels.s_8[format->num_channels-1] = src->channels.s_8[format->num_channels-1] + bytes_per_sample * start; } break; } dst->valid_samples = len; } GAVL_PUBLIC int gavl_audio_frame_skip(const gavl_audio_format_t * format, gavl_audio_frame_t * f, int num_samples) { int i; int samples_left; int bytes_per_sample = gavl_bytes_per_sample(format->sample_format); if(num_samples > f->valid_samples) num_samples = f->valid_samples; samples_left = f->valid_samples - num_samples; if(!samples_left) { f->valid_samples = 0; return num_samples; } switch(format->interleave_mode) { case GAVL_INTERLEAVE_ALL: memmove(f->samples.s_8, f->samples.s_8 + bytes_per_sample * num_samples * format->num_channels, bytes_per_sample * samples_left * format->num_channels); break; case GAVL_INTERLEAVE_NONE: for(i = 0; i < format->num_channels; i++) memmove(f->channels.s_8[i], f->channels.s_8[i] + bytes_per_sample * num_samples, bytes_per_sample * samples_left); break; case GAVL_INTERLEAVE_2: for(i = 0; i < format->num_channels/2; i++) memmove(f->channels.s_8[2*i], f->channels.s_8[2*i] + bytes_per_sample * num_samples * 2, bytes_per_sample * samples_left * 2); if(format->num_channels & 1) { memmove(f->channels.s_8[format->num_channels-1], f->channels.s_8[format->num_channels-1] + bytes_per_sample * num_samples, bytes_per_sample * samples_left); } break; } f->valid_samples = samples_left; f->timestamp += num_samples; return num_samples; } int gavl_audio_frames_equal(const gavl_audio_format_t * format, const gavl_audio_frame_t * f1, const gavl_audio_frame_t * f2) { int i; int bytes; if(f1->valid_samples != f2->valid_samples) return 0; switch(format->interleave_mode) { case GAVL_INTERLEAVE_ALL: bytes = f1->valid_samples * format->num_channels * gavl_bytes_per_sample(format->sample_format); if(memcmp(f1->samples.s_8, f2->samples.s_8, bytes)) return 0; break; case GAVL_INTERLEAVE_2: bytes = f1->valid_samples * 2 * gavl_bytes_per_sample(format->sample_format); for(i = 0; i < format->num_channels/2; i++) { if(memcmp(f1->channels.s_8[i*2], f2->channels.s_8[i*2], bytes)) return 0; } if(format->num_channels % 2) { if(memcmp(f1->channels.s_8[format->num_channels-1], f2->channels.s_8[format->num_channels-1], bytes/2)) return 0; } break; case GAVL_INTERLEAVE_NONE: bytes = f1->valid_samples * gavl_bytes_per_sample(format->sample_format); for(i = 0; i < format->num_channels/2; i++) { if(memcmp(f1->channels.s_8[i], f2->channels.s_8[i], bytes)) return 0; } break; } return 1; } static void do_plot(const gavl_audio_format_t * format, const gavl_audio_frame_t * frame, FILE * out) { int i, j; for(j = 0; j < frame->valid_samples; j++) { fprintf(out, "%d", j); switch(format->sample_format) { case GAVL_SAMPLE_U8: for(i = 0; i < format->num_channels; i++) fprintf(out, " %d", frame->channels.u_8[i][j]); break; case GAVL_SAMPLE_S8: for(i = 0; i < format->num_channels; i++) fprintf(out, " %d", frame->channels.s_8[i][j]); break; case GAVL_SAMPLE_U16: for(i = 0; i < format->num_channels; i++) fprintf(out, " %d", frame->channels.u_16[i][j]); break; case GAVL_SAMPLE_S16: for(i = 0; i < format->num_channels; i++) fprintf(out, " %d", frame->channels.s_16[i][j]); break; case GAVL_SAMPLE_S32: for(i = 0; i < format->num_channels; i++) fprintf(out, " %d", frame->channels.s_32[i][j]); break; case GAVL_SAMPLE_FLOAT: for(i = 0; i < format->num_channels; i++) fprintf(out, " %f", frame->channels.f[i][j]); break; case GAVL_SAMPLE_DOUBLE: for(i = 0; i < format->num_channels; i++) fprintf(out, " %f", frame->channels.d[i][j]); break; case GAVL_SAMPLE_NONE: break; } fprintf(out, "\n"); } } int gavl_audio_frame_plot(const gavl_audio_format_t * format, const gavl_audio_frame_t * frame, const char * name_base) { int i; gavl_audio_converter_t * cnv; gavl_audio_format_t plot_format; int do_convert; FILE * out; char * filename = malloc(strlen(name_base) + 5); /* Write data file */ strcpy(filename, name_base); strcat(filename, ".dat"); out = fopen(filename, "w"); if(!out) return 0; cnv = gavl_audio_converter_create(); gavl_audio_format_copy(&plot_format, format); plot_format.interleave_mode = GAVL_INTERLEAVE_NONE; plot_format.samples_per_frame = frame->valid_samples; do_convert = gavl_audio_converter_init(cnv, format, &plot_format); if(do_convert) { gavl_audio_frame_t * plot_frame = gavl_audio_frame_create(&plot_format); gavl_audio_convert(cnv, frame, plot_frame); do_plot(&plot_format, plot_frame, out); gavl_audio_frame_destroy(plot_frame); } else do_plot(format, frame, out); fclose(out); /* Write gnuplot file */ strcpy(filename, name_base); strcat(filename, ".gnu"); out = fopen(filename, "w"); if(!out) return 0; fprintf(out, "plot "); for(i = 0; i < format->num_channels; i++) { if(i) fprintf(out, ", "); fprintf(out, "\"%s.dat\" using 1:%d title \"%s\"", name_base, i+2, gavl_channel_id_to_string(format->channel_locations[i])); } fprintf(out, "\n"); fclose(out); return 1; } int gavl_audio_frame_continuous(const gavl_audio_format_t * format, const gavl_audio_frame_t * frame) { int sample_size; int i; switch(format->interleave_mode) { case GAVL_INTERLEAVE_ALL: return 1; break; case GAVL_INTERLEAVE_NONE: sample_size = gavl_bytes_per_sample(format->sample_format); for(i = 1; i < format->num_channels; i++) { if(frame->channels.s_8[i] - frame->channels.s_8[i-1] != sample_size * frame->valid_samples) return 0; } return 1; break; case GAVL_INTERLEAVE_2: sample_size = gavl_bytes_per_sample(format->sample_format); for(i = 2; i < format->num_channels; i+=2) { if(frame->channels.s_8[i] - frame->channels.s_8[i-2] != 2 * sample_size * frame->valid_samples) return 0; } return 1; break; } return 0; } void gavl_audio_frame_set_channels(gavl_audio_frame_t * f, const gavl_audio_format_t * format, uint8_t * data) { int i; int sample_size = gavl_bytes_per_sample(format->sample_format); f->samples.u_8 = data; for(i = 0; i < format->num_channels; i++) f->channels.u_8[i] = data + i * sample_size * f->valid_samples; } void gavl_audio_frame_from_data(gavl_audio_frame_t * f, const gavl_audio_format_t * format, uint8_t * data, int len) { int i; int stride = len / format->num_channels; f->samples.u_8 = data; for(i = 0; i < format->num_channels; i++) f->channels.u_8[i] = data + i * stride; } void gavl_audio_frame_to_packet_metadata(const gavl_audio_frame_t * frame, gavl_packet_t * pkt) { pkt->pts = frame->timestamp; pkt->duration = frame->valid_samples; } void gavl_packet_to_audio_frame_metadata(const gavl_packet_t * p, gavl_audio_frame_t * frame) { frame->timestamp = p->pts; frame->valid_samples = p->duration; } void gavl_audio_frame_set_from_packet(gavl_audio_frame_t * frame, const gavl_audio_format_t * format, gavl_packet_t * p) { gavl_packet_to_audio_frame_metadata(p, frame); gavl_packet_alloc(p, gavl_audio_format_buffer_size(format)); gavl_audio_frame_from_data(frame, format, p->buf.buf, p->buf.len); } bplaum-gavl-b9385e3/gavl/audiooptions.c000066400000000000000000000067061513252040200201020ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include /* calloc, free */ #include #ifdef DEBUG #include #endif #include "gavl.h" #include "config.h" #include "audio.h" #include #define SET_INT(p) opt->p = p void gavl_audio_options_set_quality(gavl_audio_options_t * opt, int quality) { SET_INT(quality); } void gavl_audio_options_set_dither_mode(gavl_audio_options_t * opt, gavl_audio_dither_mode_t dither_mode) { SET_INT(dither_mode); } void gavl_audio_options_set_resample_mode(gavl_audio_options_t * opt, gavl_resample_mode_t resample_mode) { SET_INT(resample_mode); } void gavl_audio_options_set_accel_flags(gavl_audio_options_t * opt, int accel_flags) { SET_INT(accel_flags); } void gavl_audio_options_set_conversion_flags(gavl_audio_options_t * opt, int conversion_flags) { SET_INT(conversion_flags); } #undef SET_INT int gavl_audio_options_get_accel_flags(gavl_audio_options_t * opt) { return opt->accel_flags; } int gavl_audio_options_get_conversion_flags(const gavl_audio_options_t * opt) { return opt->conversion_flags; } int gavl_audio_options_get_quality(const gavl_audio_options_t * opt) { return opt->quality; } gavl_audio_dither_mode_t gavl_audio_options_get_dither_mode(const gavl_audio_options_t * opt) { return opt->dither_mode; } gavl_resample_mode_t gavl_audio_options_get_resample_mode(const gavl_audio_options_t * opt) { return opt->resample_mode; } void gavl_audio_options_set_defaults(gavl_audio_options_t * opt) { memset(opt, 0, sizeof(*opt)); opt->conversion_flags = GAVL_AUDIO_FRONT_TO_REAR_COPY | GAVL_AUDIO_STEREO_TO_MONO_MIX | GAVL_AUDIO_NORMALIZE_MIX_MATRIX; opt->accel_flags = gavl_accel_supported(); opt->quality = GAVL_QUALITY_DEFAULT; gavl_init_memcpy(); } gavl_audio_options_t * gavl_audio_options_create() { gavl_audio_options_t * ret = calloc(1, sizeof(*ret)); gavl_audio_options_set_defaults(ret); return ret; } void gavl_audio_options_copy(gavl_audio_options_t * dst, const gavl_audio_options_t * src) { memcpy(dst, src, sizeof(*dst)); } void gavl_audio_options_destroy(gavl_audio_options_t * opt) { free(opt); } void gavl_audio_options_set_mix_matrix(gavl_audio_options_t * opt, const double ** matrix) { opt->mix_matrix = matrix; } const double ** gavl_audio_options_get_mix_matrix(const gavl_audio_options_t * opt) { return opt->mix_matrix; } bplaum-gavl-b9385e3/gavl/audiosink.c000066400000000000000000000070461513252040200173510ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #define FLAG_GET_CALLED (1<<0) struct gavl_audio_sink_s { gavl_audio_sink_get_func get_func; gavl_audio_sink_put_func put_func; void * priv; gavl_audio_format_t format; int flags; gavl_connector_lock_func_t lock_func; gavl_connector_lock_func_t unlock_func; void * lock_priv; gavl_connector_free_func_t free_func; }; gavl_audio_sink_t * gavl_audio_sink_create(gavl_audio_sink_get_func get_func, gavl_audio_sink_put_func put_func, void * priv, const gavl_audio_format_t * format) { gavl_audio_sink_t * ret; ret = calloc(1, sizeof(*ret)); ret->get_func = get_func; ret->put_func = put_func; ret->priv = priv; gavl_audio_format_copy(&ret->format, format); return ret; } void gavl_audio_sink_set_lock_funcs(gavl_audio_sink_t * sink, gavl_connector_lock_func_t lock_func, gavl_connector_lock_func_t unlock_func, void * priv) { sink->lock_func = lock_func; sink->unlock_func = unlock_func; sink->lock_priv = priv; } const gavl_audio_format_t * gavl_audio_sink_get_format(gavl_audio_sink_t * s) { return &s->format; } gavl_audio_frame_t * gavl_audio_sink_get_frame(gavl_audio_sink_t * s) { gavl_audio_frame_t * ret; s->flags |= FLAG_GET_CALLED; if(s->get_func) { if(s->lock_func) s->lock_func(s->lock_priv); ret = s->get_func(s->priv); if(s->unlock_func) s->unlock_func(s->lock_priv); return ret; } else return NULL; } gavl_sink_status_t gavl_audio_sink_put_frame(gavl_audio_sink_t * s, gavl_audio_frame_t * f) { gavl_audio_frame_t * df; gavl_sink_status_t st; if(s->lock_func) s->lock_func(s->lock_priv); if(!(s->flags & FLAG_GET_CALLED) && s->get_func && (df = s->get_func(s->priv))) { df->valid_samples = gavl_audio_frame_copy(&s->format, df, f, 0, 0, s->format.samples_per_frame, f->valid_samples); df->timestamp = f->timestamp; st = s->put_func(s->priv, df); } else { st = s->put_func(s->priv, f); } if(s->unlock_func) s->unlock_func(s->lock_priv); return st; } void gavl_audio_sink_set_free_func(gavl_audio_sink_t * sink, gavl_connector_free_func_t free_func) { sink->free_func = free_func; } void gavl_audio_sink_destroy(gavl_audio_sink_t * s) { if(s->priv && s->free_func) s->free_func(s->priv); free(s); } bplaum-gavl-b9385e3/gavl/audiosource.c000066400000000000000000000347311513252040200177060ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include #include #define FLAG_PASSTHROUGH (1<<0) #define FLAG_PASSTHROUGH_INIT (1<<1) #define FLAG_DO_CONVERT (1<<2) #define FLAG_DST_SET (1<<3) struct gavl_audio_source_s { gavl_audio_format_t src_format; gavl_audio_format_t dst_format; int src_flags; int dst_flags; int64_t next_pts; /* Samples in the frame from which we buffer */ int frame_samples; /* * Samples in the output frame from the last incomplete call */ int incomplete_samples; /* For conversion */ gavl_audio_frame_t * in_frame; gavl_audio_frame_t * out_frame; gavl_audio_frame_t * dst_frame; /* For buffering */ gavl_audio_frame_t * buffer_frame; gavl_audio_frame_t * frame; /* Callback set by the client */ gavl_audio_source_func_t func; void * priv; gavl_audio_converter_t * cnv; int flags; int skip_samples; int64_t skip_time; gavl_connector_lock_func_t lock_func; gavl_connector_lock_func_t unlock_func; void * lock_priv; gavl_audio_source_t * prev; gavl_connector_free_func_t free_func; int64_t pts_offset; }; gavl_audio_source_t * gavl_audio_source_create(gavl_audio_source_func_t func, void * priv, int src_flags, const gavl_audio_format_t * src_format) { gavl_audio_source_t * ret = calloc(1, sizeof(*ret)); ret->func = func; ret->priv = priv; ret->src_flags = src_flags; gavl_audio_format_copy(&ret->src_format, src_format); ret->cnv = gavl_audio_converter_create(); ret->skip_time = GAVL_TIME_UNDEFINED; return ret; } void gavl_audio_source_set_pts_offset(gavl_audio_source_t * src, int64_t offset) { src->pts_offset = offset; } gavl_audio_source_t * gavl_audio_source_create_source(gavl_audio_source_func_t func, void * priv, int src_flags, gavl_audio_source_t * src) { gavl_audio_source_t * ret = gavl_audio_source_create(func, priv, src_flags, gavl_audio_source_get_dst_format(src)); ret->prev = src; return ret; } void gavl_audio_source_set_lock_funcs(gavl_audio_source_t * src, gavl_connector_lock_func_t lock_func, gavl_connector_lock_func_t unlock_func, void * priv) { src->lock_func = lock_func; src->unlock_func = unlock_func; src->lock_priv = priv; } const gavl_audio_format_t * gavl_audio_source_get_src_format(gavl_audio_source_t * s) { return &s->src_format; } const gavl_audio_format_t * gavl_audio_source_get_dst_format(gavl_audio_source_t * s) { return (s->flags & FLAG_DST_SET) ? &s->dst_format : &s->src_format; } int gavl_audio_source_get_dst_flags(gavl_audio_source_t * s) { return s->dst_flags; } gavl_audio_options_t * gavl_audio_source_get_options(gavl_audio_source_t * s) { return gavl_audio_converter_get_options(s->cnv); } void gavl_audio_source_reset(gavl_audio_source_t * s) { s->next_pts = GAVL_TIME_UNDEFINED; if(s->frame) s->frame = NULL; s->skip_samples = 0; if(s->flags & FLAG_PASSTHROUGH_INIT) s->flags |= FLAG_PASSTHROUGH; s->incomplete_samples = 0; #if 0 if(s->src_fp) gavl_audio_frame_pool_reset(s->src_fp); if(s->dst_fp) gavl_audio_frame_pool_reset(s->dst_fp); #endif } void gavl_audio_source_set_free_func(gavl_audio_source_t * src, gavl_connector_free_func_t free_func) { src->free_func = free_func; } void gavl_audio_source_destroy(gavl_audio_source_t * s) { if(s->out_frame) gavl_audio_frame_destroy(s->out_frame); if(s->in_frame) gavl_audio_frame_destroy(s->in_frame); if(s->dst_frame) gavl_audio_frame_destroy(s->dst_frame); if(s->buffer_frame) gavl_audio_frame_destroy(s->buffer_frame); gavl_audio_converter_destroy(s->cnv); if(s->priv && s->free_func) s->free_func(s->priv); free(s); } void gavl_audio_source_set_dst(gavl_audio_source_t * s, int dst_flags, const gavl_audio_format_t * dst_format) { s->next_pts = GAVL_TIME_UNDEFINED; s->dst_flags = dst_flags; if(dst_format) gavl_audio_format_copy(&s->dst_format, dst_format); else gavl_audio_format_copy(&s->dst_format, &s->src_format); if(gavl_audio_converter_init(s->cnv, &s->src_format, &s->dst_format)) s->flags |= FLAG_DO_CONVERT; else s->flags &= ~FLAG_DO_CONVERT; if(!(s->flags & FLAG_DO_CONVERT) && (s->src_format.samples_per_frame == s->dst_format.samples_per_frame) && !(s->src_flags & GAVL_SOURCE_SRC_FRAMESIZE_MAX)) s->flags |= (FLAG_PASSTHROUGH | FLAG_PASSTHROUGH_INIT); else s->flags &= ~(FLAG_PASSTHROUGH | FLAG_PASSTHROUGH_INIT); if(s->out_frame) { gavl_audio_frame_destroy(s->out_frame); s->out_frame = NULL; } if(s->dst_frame) { gavl_audio_frame_destroy(s->dst_frame); s->dst_frame = NULL; } if(s->buffer_frame) { gavl_audio_frame_destroy(s->buffer_frame); s->buffer_frame = NULL; } s->frame = NULL; s->flags |= FLAG_DST_SET; } static void check_out_frame(gavl_audio_source_t * s) { if(!s->out_frame) { gavl_audio_format_t frame_format; gavl_audio_format_copy(&frame_format, &s->dst_format); frame_format.samples_per_frame = gavl_time_rescale(s->src_format.samplerate, s->dst_format.samplerate, s->src_format.samples_per_frame) + 10; s->out_frame = gavl_audio_frame_create(&frame_format); } } static int process_input(gavl_audio_source_t * s, gavl_audio_frame_t * f) { if(s->next_pts == GAVL_TIME_UNDEFINED) s->next_pts = gavl_time_rescale(s->src_format.samplerate, s->dst_format.samplerate, f->timestamp); if(s->skip_time != GAVL_TIME_UNDEFINED) { s->skip_samples = s->skip_time - f->timestamp; if(s->skip_samples < 0) { fprintf(stderr, "audio_source: Cannot skip backwards\n"); s->skip_samples = 0; } s->skip_time = GAVL_TIME_UNDEFINED; } if(s->skip_samples) { int skipped = gavl_audio_frame_skip(&s->src_format, f, s->skip_samples);; s->skip_samples -= skipped; s->next_pts += skipped; if(!f->valid_samples) return 0; else s->next_pts = gavl_time_rescale(s->src_format.samplerate, s->dst_format.samplerate, f->timestamp); } // fprintf(stderr, "Process input %ld\n", f->valid_samples); return 1; } static void process_output(gavl_audio_source_t * s, gavl_audio_frame_t * f) { // fprintf(stderr, "Process output %ld %ld\n", s->next_pts, f->valid_samples); f->timestamp = s->next_pts + s->pts_offset; s->next_pts += f->valid_samples; } static gavl_source_status_t do_read(gavl_audio_source_t * s, gavl_audio_frame_t ** frame) { gavl_source_status_t ret; if(s->lock_func) s->lock_func(s->lock_priv); ret = s->func(s->priv, frame); if(s->unlock_func) s->unlock_func(s->lock_priv); // if(frame && *frame) // fprintf(stderr, "Read frame %p [%d samples]\n", *frame, (*frame)->valid_samples); return ret; } static gavl_source_status_t read_frame_internal(void * sp, gavl_audio_frame_t ** frame, int num_samples) { gavl_audio_source_t * s = sp; int samples_read = s->incomplete_samples; int samples_copied; gavl_source_status_t ret = GAVL_SOURCE_OK; int eat_all = 0; s->incomplete_samples = 0; while(samples_read < num_samples) { /* Read new frame if necessary */ if(!s->frame || !s->frame->valid_samples) { eat_all = 0; /* Check for passthrough */ if(s->flags & FLAG_PASSTHROUGH) { if((*frame && !(s->src_flags & GAVL_SOURCE_SRC_ALLOC)) || (!(*frame) && (s->src_flags & GAVL_SOURCE_SRC_ALLOC))) { ret = do_read(s, frame); if(ret == GAVL_SOURCE_OK) { process_input(s, *frame); process_output(s, *frame); } return ret; } } if(s->flags & FLAG_DO_CONVERT) { gavl_audio_frame_t * in_frame; if(s->src_flags & GAVL_SOURCE_SRC_ALLOC) in_frame = NULL; else { if(!s->in_frame) s->in_frame = gavl_audio_frame_create(&s->src_format); in_frame = s->in_frame; } ret = do_read(s, &in_frame); if(ret != GAVL_SOURCE_OK) break; if(!process_input(s, in_frame)) continue; /* Get out frame */ check_out_frame(s); gavl_audio_convert(s->cnv, in_frame, s->out_frame); s->frame = s->out_frame; #if 0 if(s->src_format.samplerate != s->dst_format.samplerate) fprintf(stderr, "Converted frame (resample) %d %d\n", in_frame->valid_samples, s->out_frame->valid_samples); #endif } else { if(s->src_flags & GAVL_SOURCE_SRC_ALLOC) { s->frame = NULL; ret = do_read(s, &s->frame); if(ret != GAVL_SOURCE_OK) break; if(!process_input(s, s->frame)) continue; eat_all = 1; } else { check_out_frame(s); ret = do_read(s, &s->out_frame); if(ret != GAVL_SOURCE_OK) break; s->frame = s->out_frame; if(!process_input(s, s->frame)) continue; } } s->frame_samples = s->frame->valid_samples; } /* Make sure we have a frame to write to */ if(!(*frame)) { if(!s->dst_frame) s->dst_frame = gavl_audio_frame_create(&s->dst_format); *frame = s->dst_frame; } /* Copy samples */ samples_copied = gavl_audio_frame_copy(&s->dst_format, *frame, // dst s->frame, // src samples_read, // dst_pos s->frame_samples - s->frame->valid_samples, // src_pos num_samples - samples_read, // dst_size s->frame->valid_samples); // src_size s->frame->valid_samples -= samples_copied; samples_read += samples_copied; } if(ret == GAVL_SOURCE_AGAIN) { s->incomplete_samples = samples_read; return GAVL_SOURCE_AGAIN; } if(samples_read) { ret = GAVL_SOURCE_OK; (*frame)->valid_samples = samples_read; process_output(s, *frame); /* Buffer samples for next time (we need to eat up all samples in this call) */ if(eat_all && s->frame->valid_samples) { if(!s->buffer_frame) s->buffer_frame = gavl_audio_frame_create(&s->src_format); s->buffer_frame->valid_samples = gavl_audio_frame_copy(&s->src_format, s->buffer_frame, // dst s->frame, // src 0, // dst_pos s->frame_samples - s->frame->valid_samples, // src_pos s->src_format.samples_per_frame, // dst_size s->frame->valid_samples); // src_size s->frame = s->buffer_frame; s->frame_samples = s->frame->valid_samples; } } else if(*frame) (*frame)->valid_samples = 0; return ret; } gavl_source_status_t gavl_audio_source_read_frame(void * sp, gavl_audio_frame_t ** frame) { gavl_audio_source_t * s = sp; if(!(s->flags & FLAG_DST_SET)) gavl_audio_source_set_dst(s, 0, NULL); return read_frame_internal(s, frame, s->dst_format.samples_per_frame); } void gavl_audio_source_drain(gavl_audio_source_t * s) { gavl_source_status_t st; gavl_audio_frame_t * fr = NULL; while((st = gavl_audio_source_read_frame(s, &fr)) == GAVL_SOURCE_OK) fr = NULL; } /* For cases where it's not immediately known, how many samples will be processed */ int gavl_audio_source_read_samples(void * sp, gavl_audio_frame_t * frame, int num_samples) { gavl_audio_source_t * s = sp; if(!(s->flags & FLAG_DST_SET)) gavl_audio_source_set_dst(s, 0, NULL); s->flags &= ~FLAG_PASSTHROUGH; if(read_frame_internal(s, &frame, num_samples) != GAVL_SOURCE_OK) return 0; return frame->valid_samples; } void gavl_audio_source_skip(gavl_audio_source_t * s, int num_samples) { s->skip_samples += num_samples; s->flags &= ~FLAG_PASSTHROUGH; } void gavl_audio_source_skip_to(gavl_audio_source_t * s, int64_t t, int scale) { s->skip_time = gavl_time_rescale(scale, s->dst_format.samplerate, t); s->flags &= ~FLAG_PASSTHROUGH; } #if 0 void gavl_audio_source_set_eof(gavl_audio_source_t * src, int eof) { pthread_mutex_lock(&src->eof_mutex); src->eof = eof; pthread_mutex_unlock(&src->eof_mutex); } int gavl_audio_source_get_eof(gavl_audio_source_t * src) { int ret; pthread_mutex_lock(&src->eof_mutex); ret = src->eof; pthread_mutex_unlock(&src->eof_mutex); return ret; } #endif bplaum-gavl-b9385e3/gavl/base64.c000066400000000000000000000051431513252040200164430ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include #include #include static char * base64_encode_data_internal(const void * data, int length, int urlsafe) { char * ret; struct base64_encode_ctx ctx; int len_enc; if(urlsafe) base64url_encode_init(&ctx); else base64_encode_init(&ctx); if(length < 0) length = strlen(data); ret = malloc(BASE64_ENCODE_LENGTH(length) + BASE64_ENCODE_FINAL_LENGTH + 1); len_enc = base64_encode_update(&ctx, ret, length, data); len_enc += base64_encode_final(&ctx, ret + len_enc); ret[len_enc] = '\0'; return ret; } static int base64_decode_data_internal(const char * str, gavl_buffer_t * ret, int urlsafe) { struct base64_decode_ctx ctx; size_t dst_length; int len = strlen(str); if(urlsafe) base64url_decode_init(&ctx); else base64_decode_init(&ctx); gavl_buffer_alloc(ret, BASE64_DECODE_LENGTH(len)); base64_decode_update(&ctx, &dst_length, ret->buf, len, str); ret->len = dst_length; ret->pos = 0; base64_decode_final(&ctx); return 1; } char * gavl_base64_encode_data(const void * data, int length) { return base64_encode_data_internal(data, length, 0); } int gavl_base64_decode_data(const char * str, gavl_buffer_t * ret) { return base64_decode_data_internal(str, ret, 0); } char * gavl_base64_encode_data_urlsafe(const void * data, int length) { return base64_encode_data_internal(data, length, 1); } int gavl_base64_decode_data_urlsafe(const char * str, gavl_buffer_t * ret) { return base64_decode_data_internal(str, ret, 1); } bplaum-gavl-b9385e3/gavl/bayer.c000066400000000000000000000267071513252040200164720ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include /* Taken from lib4lconvert, original copyright below */ /* * lib4lconvert, video4linux2 format conversion lib * (C) 2008 Hans de Goede * * 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; either * version 2.1 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * 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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA * * Note: original bayer_to_bgr24 code from : * 1394-Based Digital Camera Control Library * * Bayer pattern decoding functions * * Written by Damien Douxchamps and Frederic Devernay * * Note that the original bayer.c in libdc1394 supports many different * bayer decode algorithms, for lib4lconvert the one in this file has been * chosen (and optimized a bit) and the other algorithm's have been removed, * see bayer.c from libdc1394 for all supported algorithms */ /* Adapted for gavl */ /************************************************************** * Color conversion functions for cameras that can * * output raw-Bayer pattern images, such as some Basler and * * Point Grey camera. Most of the algos presented here come * * from http://www-ise.stanford.edu/~tingchen/ and have been * * converted from Matlab to C and extended to all elementary * * patterns. * **************************************************************/ /* insprired by OpenCV's Bayer decoding */ static void v4lconvert_border_bayer_line_to_bgr24( const unsigned char* bayer, const unsigned char* adjacent_bayer, unsigned char *bgr, int width, int start_with_green, int blue_line) { int t0, t1; if (start_with_green) { /* First pixel */ if (blue_line) { *bgr++ = bayer[1]; *bgr++ = bayer[0]; *bgr++ = adjacent_bayer[0]; } else { *bgr++ = adjacent_bayer[0]; *bgr++ = bayer[0]; *bgr++ = bayer[1]; } /* Second pixel */ t0 = (bayer[0] + bayer[2] + adjacent_bayer[1] + 1) / 3; t1 = (adjacent_bayer[0] + adjacent_bayer[2] + 1) >> 1; if (blue_line) { *bgr++ = bayer[1]; *bgr++ = t0; *bgr++ = t1; } else { *bgr++ = t1; *bgr++ = t0; *bgr++ = bayer[1]; } bayer++; adjacent_bayer++; width -= 2; } else { /* First pixel */ t0 = (bayer[1] + adjacent_bayer[0] + 1) >> 1; if (blue_line) { *bgr++ = bayer[0]; *bgr++ = t0; *bgr++ = adjacent_bayer[1]; } else { *bgr++ = adjacent_bayer[1]; *bgr++ = t0; *bgr++ = bayer[0]; } width--; } if (blue_line) { for ( ; width > 2; width -= 2) { t0 = (bayer[0] + bayer[2] + 1) >> 1; *bgr++ = t0; *bgr++ = bayer[1]; *bgr++ = adjacent_bayer[1]; bayer++; adjacent_bayer++; t0 = (bayer[0] + bayer[2] + adjacent_bayer[1] + 1) / 3; t1 = (adjacent_bayer[0] + adjacent_bayer[2] + 1) >> 1; *bgr++ = bayer[1]; *bgr++ = t0; *bgr++ = t1; bayer++; adjacent_bayer++; } } else { for ( ; width > 2; width -= 2) { t0 = (bayer[0] + bayer[2] + 1) >> 1; *bgr++ = adjacent_bayer[1]; *bgr++ = bayer[1]; *bgr++ = t0; bayer++; adjacent_bayer++; t0 = (bayer[0] + bayer[2] + adjacent_bayer[1] + 1) / 3; t1 = (adjacent_bayer[0] + adjacent_bayer[2] + 1) >> 1; *bgr++ = t1; *bgr++ = t0; *bgr++ = bayer[1]; bayer++; adjacent_bayer++; } } if (width == 2) { /* Second to last pixel */ t0 = (bayer[0] + bayer[2] + 1) >> 1; if (blue_line) { *bgr++ = t0; *bgr++ = bayer[1]; *bgr++ = adjacent_bayer[1]; } else { *bgr++ = adjacent_bayer[1]; *bgr++ = bayer[1]; *bgr++ = t0; } /* Last pixel */ t0 = (bayer[1] + adjacent_bayer[2] + 1) >> 1; if (blue_line) { *bgr++ = bayer[2]; *bgr++ = t0; *bgr++ = adjacent_bayer[1]; } else { *bgr++ = adjacent_bayer[1]; *bgr++ = t0; *bgr++ = bayer[2]; } } else { /* Last pixel */ if (blue_line) { *bgr++ = bayer[0]; *bgr++ = bayer[1]; *bgr++ = adjacent_bayer[1]; } else { *bgr++ = adjacent_bayer[1]; *bgr++ = bayer[1]; *bgr++ = bayer[0]; } } } /* From libdc1394, which on turn was based on OpenCV's Bayer decoding */ static void bayer_to_rgbbgr24(gavl_video_frame_t * src, gavl_video_frame_t * dst, int image_width, int height, int row, int start_with_green, int blue_line) { const unsigned char *bayer; unsigned char *bgr; int t0, t1; /* (width - 2) because of the border */ const unsigned char *bayerEnd; int bstride = src->strides[0]; bgr = dst->planes[0] + dst->strides[0] * row; if(!row) /* render the first line */ { bayer = src->planes[0]; v4lconvert_border_bayer_line_to_bgr24(bayer, bayer + bstride, bgr, image_width, start_with_green, blue_line); return; } else if(row == height - 1) { bayer = src->planes[0] + row * bstride; v4lconvert_border_bayer_line_to_bgr24(bayer, bayer - bstride, bgr, image_width, !start_with_green, !blue_line); return; } bayer = src->planes[0] + (row-1) * bstride; // /* reduce height by 2 because of the special case top/bottom line */ // for (height -= 2; height; height--) { /* (width - 2) because of the border */ bayerEnd = bayer + (image_width - 2); if (start_with_green) { /* OpenCV has a bug in the next line, which was t0 = (bayer[0] + bayer[width * 2] + 1) >> 1; */ t0 = (bayer[1] + bayer[bstride * 2 + 1] + 1) >> 1; /* Write first pixel */ t1 = (bayer[0] + bayer[bstride * 2] + bayer[bstride + 1] + 1) / 3; if (blue_line) { *bgr++ = t0; *bgr++ = t1; *bgr++ = bayer[bstride]; } else { *bgr++ = bayer[bstride]; *bgr++ = t1; *bgr++ = t0; } /* Write second pixel */ t1 = (bayer[bstride] + bayer[bstride + 2] + 1) >> 1; if (blue_line) { *bgr++ = t0; *bgr++ = bayer[bstride + 1]; *bgr++ = t1; } else { *bgr++ = t1; *bgr++ = bayer[bstride + 1]; *bgr++ = t0; } bayer++; } else { /* Write first pixel */ t0 = (bayer[0] + bayer[bstride * 2] + 1) >> 1; if (blue_line) { *bgr++ = t0; *bgr++ = bayer[bstride]; *bgr++ = bayer[bstride + 1]; } else { *bgr++ = bayer[bstride + 1]; *bgr++ = bayer[bstride]; *bgr++ = t0; } } if (blue_line) { for (; bayer <= bayerEnd - 2; bayer += 2) { t0 = (bayer[0] + bayer[2] + bayer[bstride * 2] + bayer[bstride * 2 + 2] + 2) >> 2; t1 = (bayer[1] + bayer[bstride] + bayer[bstride + 2] + bayer[bstride * 2 + 1] + 2) >> 2; *bgr++ = t0; *bgr++ = t1; *bgr++ = bayer[bstride + 1]; t0 = (bayer[2] + bayer[bstride * 2 + 2] + 1) >> 1; t1 = (bayer[bstride + 1] + bayer[bstride + 3] + 1) >> 1; *bgr++ = t0; *bgr++ = bayer[bstride + 2]; *bgr++ = t1; } } else { for (; bayer <= bayerEnd - 2; bayer += 2) { t0 = (bayer[0] + bayer[2] + bayer[bstride * 2] + bayer[bstride * 2 + 2] + 2) >> 2; t1 = (bayer[1] + bayer[bstride] + bayer[bstride + 2] + bayer[bstride * 2 + 1] + 2) >> 2; *bgr++ = bayer[bstride + 1]; *bgr++ = t1; *bgr++ = t0; t0 = (bayer[2] + bayer[bstride * 2 + 2] + 1) >> 1; t1 = (bayer[bstride + 1] + bayer[bstride + 3] + 1) >> 1; *bgr++ = t1; *bgr++ = bayer[bstride + 2]; *bgr++ = t0; } } if (bayer < bayerEnd) { /* write second to last pixel */ t0 = (bayer[0] + bayer[2] + bayer[bstride * 2] + bayer[bstride * 2 + 2] + 2) >> 2; t1 = (bayer[1] + bayer[bstride] + bayer[bstride + 2] + bayer[bstride * 2 + 1] + 2) >> 2; if (blue_line) { *bgr++ = t0; *bgr++ = t1; *bgr++ = bayer[bstride + 1]; } else { *bgr++ = bayer[bstride + 1]; *bgr++ = t1; *bgr++ = t0; } /* write last pixel */ t0 = (bayer[2] + bayer[bstride * 2 + 2] + 1) >> 1; if (blue_line) { *bgr++ = t0; *bgr++ = bayer[bstride + 2]; *bgr++ = bayer[bstride + 1]; } else { *bgr++ = bayer[bstride + 1]; *bgr++ = bayer[bstride + 2]; *bgr++ = t0; } bayer++; } else { /* write last pixel */ t0 = (bayer[0] + bayer[bstride * 2] + 1) >> 1; t1 = (bayer[1] + bayer[bstride * 2 + 1] + bayer[bstride] + 1) / 3; if (blue_line) { *bgr++ = t0; *bgr++ = t1; *bgr++ = bayer[bstride + 1]; } else { *bgr++ = bayer[bstride + 1]; *bgr++ = t1; *bgr++ = t0; } } } static void debayer_slice(gavl_video_frame_t * src, gavl_video_frame_t * dst, int bayer_format, gavl_video_format_t * dst_format, int start_row, int num_rows) { int i; int swap_rgb = 1; int blue_line = bayer_format & GAVL_BAYER_BLUE_LINE; int green_first = bayer_format & GAVL_BAYER_GREEN_FIRST; if(start_row & 1) { blue_line = !blue_line; green_first = !green_first; } if(swap_rgb) blue_line = !blue_line; for(i = start_row; i < start_row + num_rows; i++) { bayer_to_rgbbgr24(src, dst, dst_format->image_width, dst_format->image_height, i, green_first, blue_line); blue_line = !blue_line; green_first = !green_first; } } void gavl_video_frame_debayer(gavl_video_options_t * opt, gavl_video_frame_t * src, gavl_video_frame_t * dst, int bayer_format, gavl_video_format_t * dst_format) { debayer_slice(src, dst, bayer_format, dst_format, 0, dst_format->image_height); } bplaum-gavl-b9385e3/gavl/blend.c000066400000000000000000000136441513252040200164500ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include #include #include #include gavl_overlay_blend_context_t * gavl_overlay_blend_context_create() { gavl_overlay_blend_context_t * ret; ret = calloc(1, sizeof(*ret)); ret->ovl_win = gavl_video_frame_create(NULL); ret->dst_win = gavl_video_frame_create(NULL); gavl_video_options_set_defaults(&ret->opt); return ret; } void gavl_overlay_blend_context_destroy(gavl_overlay_blend_context_t * ctx) { gavl_video_frame_null(ctx->dst_win); gavl_video_frame_destroy(ctx->dst_win); gavl_video_frame_null(ctx->ovl_win); gavl_video_frame_destroy(ctx->ovl_win); if(ctx->sink) gavl_video_sink_destroy(ctx->sink); free(ctx); } gavl_video_options_t * gavl_overlay_blend_context_get_options(gavl_overlay_blend_context_t * ctx) { return &ctx->opt; } static gavl_sink_status_t put_frame(void * priv, gavl_overlay_t * ovl) { int diff; gavl_overlay_blend_context_t * ctx = priv; /* Save overlay */ if(!ovl || !ovl->src_rect.w || !ovl->src_rect.h) { ctx->ovl = NULL; return GAVL_SINK_OK; } ctx->ovl = ovl; /* Crop rectangle to destination format */ if(ctx->ovl->dst_x < 0) { ctx->ovl->src_rect.w += ctx->ovl->dst_x; ctx->ovl->src_rect.x -= ctx->ovl->dst_x; ctx->ovl->dst_x = 0; } if(ctx->ovl->dst_y < 0) { ctx->ovl->src_rect.h += ctx->ovl->dst_y; ctx->ovl->src_rect.y -= ctx->ovl->dst_y; ctx->ovl->dst_y = 0; } diff = ctx->ovl->dst_x + ctx->ovl->src_rect.w - ctx->dst_format.image_width; if(diff > 0) ctx->ovl->src_rect.w -= diff; diff = ctx->ovl->dst_y + ctx->ovl->src_rect.h - ctx->dst_format.image_height; if(diff > 0) ctx->ovl->src_rect.h -= diff; /* Crop rectangle to source format */ if(ctx->ovl->src_rect.x < 0) { ctx->ovl->src_rect.w += ctx->ovl->src_rect.x; ctx->ovl->dst_x -= ctx->ovl->src_rect.x; ctx->ovl->src_rect.x = 0; } if(ctx->ovl->src_rect.y < 0) { ctx->ovl->src_rect.h += ctx->ovl->src_rect.y; ctx->ovl->dst_y -= ctx->ovl->src_rect.y; ctx->ovl->src_rect.y = 0; } diff = ctx->ovl->src_rect.x + ctx->ovl->src_rect.w - ctx->ovl_format.image_width; if(diff > 0) ctx->ovl->src_rect.w -= diff; diff = ctx->ovl->src_rect.y + ctx->ovl->src_rect.h - ctx->ovl_format.image_height; if(diff > 0) ctx->ovl->src_rect.h -= diff; /* Align rectangle */ ctx->ovl->src_rect.w -= ctx->ovl->src_rect.w % ctx->dst_sub_h; ctx->ovl->src_rect.h -= ctx->ovl->src_rect.h % ctx->dst_sub_v; ctx->ovl->dst_x -= ctx->ovl->dst_x % ctx->dst_sub_h; ctx->ovl->dst_y -= ctx->ovl->dst_y % ctx->dst_sub_v; /* Set destination rectangle for getting the subframe later on */ ctx->dst_rect.x = ctx->ovl->dst_x; ctx->dst_rect.y = ctx->ovl->dst_y; ctx->dst_rect.w = ctx->ovl->src_rect.w; ctx->dst_rect.h = ctx->ovl->src_rect.h; gavl_video_frame_get_subframe(ctx->ovl_format.pixelformat, ovl, ctx->ovl_win, &ctx->ovl->src_rect); return GAVL_SINK_OK; } void gavl_overlay_blend_context_set_overlay(gavl_overlay_blend_context_t * ctx, gavl_overlay_t * ovl) { gavl_video_sink_put_frame(ctx->sink, ovl); } int gavl_overlay_blend_context_init(gavl_overlay_blend_context_t * ctx, const gavl_video_format_t * dst_format, gavl_video_format_t * ovl_format) { /* Clean up from previous initializations */ if(ctx->ovl_win) ctx->ovl = NULL; if(ctx->sink) gavl_video_sink_destroy(ctx->sink); /* Check for non alpha capable overlay format */ // if(!gavl_pixelformat_has_alpha(ovl_format->pixelformat)) // return 0; /* Copy formats */ gavl_video_format_copy(&ctx->dst_format, dst_format); gavl_video_format_copy(&ctx->ovl_format, ovl_format); /* Get chroma subsampling of the destination */ gavl_pixelformat_chroma_sub(dst_format->pixelformat, &ctx->dst_sub_h, &ctx->dst_sub_v); /* Get blend function */ ctx->func = gavl_find_blend_func_c(ctx, dst_format->pixelformat, &ctx->ovl_format.pixelformat); gavl_video_format_copy(ovl_format, &ctx->ovl_format); ctx->sink = gavl_video_sink_create(NULL, put_frame, ctx, &ctx->ovl_format); return 1; } gavl_video_sink_t * gavl_overlay_blend_context_get_sink(gavl_overlay_blend_context_t * ctx) { return ctx->sink; } void gavl_overlay_blend(gavl_overlay_blend_context_t * ctx, gavl_video_frame_t * dst_frame) { if(!ctx->ovl) return; /* Get subframe from destination */ gavl_video_frame_get_subframe(ctx->dst_format.pixelformat, dst_frame, ctx->dst_win, &ctx->dst_rect); /* Fire up blender */ ctx->func(ctx, ctx->dst_win, ctx->ovl_win); } bplaum-gavl-b9385e3/gavl/buffer.c000066400000000000000000000065561513252040200166410ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include #include #include #define PAD_SIZE(s, m) \ s = ((s + m - 1) / m) * m void gavl_buffer_init(gavl_buffer_t * buf) { memset(buf, 0, sizeof(*buf)); } void gavl_buffer_init_static(gavl_buffer_t * buf, uint8_t * data, int size) { gavl_buffer_init(buf); buf->alloc = size; buf->alloc_static = size; buf->buf = data; } void gavl_buffer_reset(gavl_buffer_t * buf) { buf->len = 0; buf->pos = 0; } int gavl_buffer_alloc(gavl_buffer_t * buf, int size) { size++; // Zero terminate if(buf->alloc < size) { if(buf->alloc_static) return 0; buf->alloc = size; PAD_SIZE(buf->alloc, 1024); buf->buf = realloc(buf->buf, buf->alloc); if(!buf->buf) return 0; } // Zero terminate buf->buf[size - 1] = '\0'; return 1; } void gavl_buffer_free(gavl_buffer_t * buf) { if(buf->buf && !buf->alloc_static) free(buf->buf); } void gavl_buffer_copy(gavl_buffer_t * dst, const gavl_buffer_t * src) { gavl_buffer_alloc(dst, src->alloc); memcpy(dst->buf, src->buf, src->alloc); dst->len = src->len; dst->pos = 0; } void gavl_buffer_append_data_pad(gavl_buffer_t * dst, const uint8_t * data, int len, int padding) { gavl_buffer_alloc(dst, dst->len + len + padding); memcpy(dst->buf + dst->len, data, len); dst->len += len; if(padding) memset(dst->buf + dst->len, 0, padding); } void gavl_buffer_append(gavl_buffer_t * dst, const gavl_buffer_t * src) { gavl_buffer_append_data_pad(dst, src->buf, src->len, 0); } void gavl_buffer_append_pad(gavl_buffer_t * dst, const gavl_buffer_t * src, int padding) { gavl_buffer_append_data_pad(dst, src->buf, src->len, padding); } void gavl_buffer_append_data(gavl_buffer_t * dst, const uint8_t * data, int len) { gavl_buffer_append_data_pad(dst, data, len, 0); } void gavl_buffer_prepend_data(gavl_buffer_t * dst, const uint8_t * data, int len) { if(!len) return; gavl_buffer_alloc(dst, dst->len + len); if(dst->len) memmove(dst->buf + len, dst->buf, dst->len); memcpy(dst->buf, data, len); dst->len += len; } void gavl_buffer_flush(gavl_buffer_t * buf, int len) { if(len < 0) return; if(len > buf->len) len = buf->len; if(buf->len > len) memmove(buf->buf, buf->buf + len, buf->len - len); buf->len -= len; buf->pos -= len; if(buf->pos < 0) buf->pos = 0; } bplaum-gavl-b9385e3/gavl/c/000077500000000000000000000000001513252040200154325ustar00rootroot00000000000000bplaum-gavl-b9385e3/gavl/c/Makefile.am000066400000000000000000000017271513252040200174750ustar00rootroot00000000000000AM_CFLAGS = @LIBGAVL_CFLAGS@ noinst_LTLIBRARIES = libgavl_c.la libgavl_c_la_SOURCES = \ blend_c.c \ colorspace_tables.c \ deinterlace_blend_c.c \ dsp_c.c \ interleave_c.c \ mix_c.c \ sampleformat_c.c \ scale_bicubic_c.c \ scale_bicubic_noclip_c.c \ scale_bilinear_c.c \ scale_bilinear_fast_c.c \ scale_bilinear_noclip_c.c \ scale_generic_c.c \ scale_generic_noclip_c.c \ scale_nearest_c.c \ scale_quadratic_c.c \ scale_quadratic_noclip_c.c \ transform_bilinear_c.c \ transform_bicubic_c.c \ transform_nearest_c.c \ transform_quadratic_c.c \ volume_c.c \ rgb_rgb_c.c \ rgb_yuv_c.c \ yuv_rgb_c.c \ yuv_yuv_c.c \ gray_rgb_c.c \ rgb_gray_c.c \ gray_yuv_c.c \ yuv_gray_c.c \ gray_gray_c.c EXTRA_libgavl_c_la_SOURCES = \ _interleave_c.c \ _mix_c.c \ _sampleformat_c.c \ _transform_c.c noinst_HEADERS= \ colorspace_tables.h \ colorspace_macros.h \ scale_bilinear_x.h \ scale_bilinear_y.h \ scale_x.h \ scale_y.h \ scale_generic_x.h \ scale_generic_y.h \ scale_macros.h \ transform_c.h bplaum-gavl-b9385e3/gavl/c/_interleave_c.c000066400000000000000000000106371513252040200204040ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ static void RENAME(interleave_none_to_all)(gavl_audio_convert_context_t * ctx) { int i, j; SAMPLE_TYPE * dst = (SAMPLE_TYPE*)(ctx->output_frame->samples.s_8); for(i = 0; i < ctx->input_frame->valid_samples; i++) { for(j = 0; j < ctx->input_format.num_channels; j++) { *(dst++) = SRC(j,i); } } } static void RENAME(interleave_none_to_all_stereo)(gavl_audio_convert_context_t * ctx) { int i; SAMPLE_TYPE * src1; SAMPLE_TYPE * src2; SAMPLE_TYPE * dst; src1 = &(SRC(0,0)); src2 = &(SRC(1,0)); dst = &(DST(0,0)); for(i = 0; i < ctx->input_frame->valid_samples; i++) { *(dst++) = *(src1++); *(dst++) = *(src2++); } } static void RENAME(interleave_all_to_none)(gavl_audio_convert_context_t * ctx) { int i, j; SAMPLE_TYPE * src = (SAMPLE_TYPE*)(ctx->input_frame->samples.s_8); for(i = 0; i < ctx->input_frame->valid_samples; i++) for(j = 0; j < ctx->input_format.num_channels; j++) DST(j, i) = *(src++); } static void RENAME(interleave_all_to_none_stereo)(gavl_audio_convert_context_t * ctx) { int i; SAMPLE_TYPE * src = (SAMPLE_TYPE*)(ctx->input_frame->samples.s_8); SAMPLE_TYPE * dst1 = (SAMPLE_TYPE*)(ctx->output_frame->channels.s_8[0]); SAMPLE_TYPE * dst2 = (SAMPLE_TYPE*)(ctx->output_frame->channels.s_8[1]); for(i = 0; i < ctx->input_frame->valid_samples; i++) { *(dst1++) = *(src++); *(dst2++) = *(src++); } } static void RENAME(interleave_2_to_all)(gavl_audio_convert_context_t * ctx) { int i, j; int jmax; SAMPLE_TYPE * dst; dst = &(DST(0,0)); jmax = ctx->input_format.num_channels/2; for(i = 0; i < ctx->input_frame->valid_samples; i++) { for(j = 0; j < jmax; j++) { *(dst++) = SRC(j*2, i*2); *(dst++) = SRC(j*2, i*2+1); } if(ctx->input_format.num_channels % 2) *(dst++) = SRC(ctx->input_format.num_channels-1, i); } } static void RENAME(interleave_2_to_none)(gavl_audio_convert_context_t * ctx) { int i, j; int jmax; jmax = ctx->input_format.num_channels/2; for(i = 0; i < ctx->input_frame->valid_samples; i++) { for(j = 0; j < jmax; j++) { DST(2*j,i) = SRC(j*2, i*2); DST(2*j+1,i) = SRC(j*2, i*2+1); } } if(ctx->input_format.num_channels % 2) memcpy(&(DST(ctx->input_format.num_channels-1, 0)), &(SRC(ctx->input_format.num_channels-1, 0)), ctx->input_frame->valid_samples * sizeof(SAMPLE_TYPE)); } static void RENAME(interleave_all_to_2)(gavl_audio_convert_context_t * ctx) { int i, j; int jmax; jmax = ctx->input_format.num_channels/2; for(i = 0; i < ctx->input_frame->valid_samples; i++) { for(j = 0; j < jmax; j++) { DST(j*2, i*2) = SRC(2*j,i); DST(j*2, i*2+1) = SRC(2*j+1,i); } } if(ctx->input_format.num_channels % 2) memcpy(&(DST(ctx->input_format.num_channels-1, 0)), &(SRC(ctx->input_format.num_channels-1, 0)), ctx->input_frame->valid_samples * sizeof(SAMPLE_TYPE)); } static void RENAME(interleave_none_to_2)(gavl_audio_convert_context_t * ctx) { int i, j; int jmax; jmax = ctx->input_format.num_channels/2; for(i = 0; i < ctx->input_frame->valid_samples; i++) { for(j = 0; j < jmax; j++) { DST(j*2, i*2) = SRC(2*j ,i); DST(j*2, i*2+1) = SRC(2*j+1,i); } if(ctx->input_format.num_channels % 2) { DST(ctx->input_format.num_channels-1, i) = SRC(ctx->input_format.num_channels-1, i); } } } bplaum-gavl-b9385e3/gavl/c/_mix_c.c000066400000000000000000000122371513252040200170410ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ static void RENAME(mix_1_to_1)(gavl_mix_output_channel_t * channel, const gavl_audio_frame_t * input_frame, gavl_audio_frame_t * output_frame) { int i; TMP_TYPE tmp; SAMPLE_TYPE factor1 = FACTOR(0); i = input_frame->valid_samples; while(i--) { tmp = (TMP_TYPE)SRC(0,i) * (TMP_TYPE)factor1; ADJUST_TMP(tmp); SETDST(i, tmp); } } static void RENAME(mix_2_to_1)(gavl_mix_output_channel_t * channel, const gavl_audio_frame_t * input_frame, gavl_audio_frame_t * output_frame) { int i; TMP_TYPE tmp; SAMPLE_TYPE factor1 = FACTOR(0); SAMPLE_TYPE factor2 = FACTOR(1); i = input_frame->valid_samples; while(i--) { tmp = (TMP_TYPE)SRC(0,i) * (TMP_TYPE)factor1 + (TMP_TYPE)SRC(1,i) * (TMP_TYPE)factor2; ADJUST_TMP(tmp); SETDST(i, tmp); } } static void RENAME(mix_3_to_1)(gavl_mix_output_channel_t * channel, const gavl_audio_frame_t * input_frame, gavl_audio_frame_t * output_frame) { int i; TMP_TYPE tmp; SAMPLE_TYPE factor1 = FACTOR(0); SAMPLE_TYPE factor2 = FACTOR(1); SAMPLE_TYPE factor3 = FACTOR(2); i = input_frame->valid_samples; while(i--) { tmp = (TMP_TYPE)SRC(0,i) * (TMP_TYPE)factor1 + (TMP_TYPE)SRC(1,i) * (TMP_TYPE)factor2 + (TMP_TYPE)SRC(2,i) * (TMP_TYPE)factor3; ADJUST_TMP(tmp); SETDST(i, tmp); } } static void RENAME(mix_4_to_1)(gavl_mix_output_channel_t * channel, const gavl_audio_frame_t * input_frame, gavl_audio_frame_t * output_frame) { int i; TMP_TYPE tmp; SAMPLE_TYPE factor1 = FACTOR(0); SAMPLE_TYPE factor2 = FACTOR(1); SAMPLE_TYPE factor3 = FACTOR(2); SAMPLE_TYPE factor4 = FACTOR(3); i = input_frame->valid_samples; while(i--) { tmp = (TMP_TYPE)SRC(0,i) * (TMP_TYPE)factor1 + (TMP_TYPE)SRC(1,i) * (TMP_TYPE)factor2 + (TMP_TYPE)SRC(2,i) * (TMP_TYPE)factor3 + (TMP_TYPE)SRC(3,i) * (TMP_TYPE)factor4; ADJUST_TMP(tmp); SETDST(i, tmp); } } static void RENAME(mix_5_to_1)(gavl_mix_output_channel_t * channel, const gavl_audio_frame_t * input_frame, gavl_audio_frame_t * output_frame) { int i; TMP_TYPE tmp; SAMPLE_TYPE factor1 = FACTOR(0); SAMPLE_TYPE factor2 = FACTOR(1); SAMPLE_TYPE factor3 = FACTOR(2); SAMPLE_TYPE factor4 = FACTOR(3); SAMPLE_TYPE factor5 = FACTOR(4); i = input_frame->valid_samples; while(i--) { tmp = (TMP_TYPE)SRC(0,i) * (TMP_TYPE)factor1 + (TMP_TYPE)SRC(1,i) * (TMP_TYPE)factor2 + (TMP_TYPE)SRC(1,i) * (TMP_TYPE)factor3 + (TMP_TYPE)SRC(3,i) * (TMP_TYPE)factor4 + (TMP_TYPE)SRC(4,i) * (TMP_TYPE)factor5; ADJUST_TMP(tmp); SETDST(i, tmp); } } static void RENAME(mix_6_to_1)(gavl_mix_output_channel_t * channel, const gavl_audio_frame_t * input_frame, gavl_audio_frame_t * output_frame) { int i; TMP_TYPE tmp; SAMPLE_TYPE factor1 = FACTOR(0); SAMPLE_TYPE factor2 = FACTOR(1); SAMPLE_TYPE factor3 = FACTOR(2); SAMPLE_TYPE factor4 = FACTOR(3); SAMPLE_TYPE factor5 = FACTOR(4); SAMPLE_TYPE factor6 = FACTOR(5); i = input_frame->valid_samples; while(i--) { tmp = (TMP_TYPE)SRC(0,i) * (TMP_TYPE)factor1 + (TMP_TYPE)SRC(1,i) * (TMP_TYPE)factor2 + (TMP_TYPE)SRC(2,i) * (TMP_TYPE)factor3 + (TMP_TYPE)SRC(3,i) * (TMP_TYPE)factor4 + (TMP_TYPE)SRC(4,i) * (TMP_TYPE)factor5 + (TMP_TYPE)SRC(5,i) * (TMP_TYPE)factor6; ADJUST_TMP(tmp); SETDST(i, tmp); } } static void RENAME(mix_all_to_1)(gavl_mix_output_channel_t * channel, const gavl_audio_frame_t * input_frame, gavl_audio_frame_t * output_frame) { int i, j; TMP_TYPE tmp; i = input_frame->valid_samples; while(i--) { tmp = 0; j = channel->num_inputs; while(j--) tmp += (TMP_TYPE)SRC(j,i) * (TMP_TYPE)FACTOR(j); ADJUST_TMP(tmp); SETDST(i, tmp); } } bplaum-gavl-b9385e3/gavl/c/_sampleformat.c000066400000000000000000000017111513252040200204270ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #define S_8_TO_U_8(dst,src) bplaum-gavl-b9385e3/gavl/c/_sampleformat_c.c000066400000000000000000000272541513252040200207430ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ static void RENAME(swap_sign_8)(gavl_audio_convert_context_t * ctx) { CONVERSION_FUNC_START ctx->output_frame->U_8 = ctx->input_frame->U_8 ^ 0x80; CONVERSION_FUNC_END } static void RENAME(swap_sign_16)(gavl_audio_convert_context_t * ctx) { CONVERSION_FUNC_START ctx->output_frame->U_16 = ctx->input_frame->U_16 ^ 0x8000; CONVERSION_FUNC_END } static void RENAME(s_8_to_s_16)(gavl_audio_convert_context_t * ctx) { CONVERSION_FUNC_START ctx->output_frame->S_16 = ctx->input_frame->S_8 * 0x0101; CONVERSION_FUNC_END } static void RENAME(u_8_to_s_16)(gavl_audio_convert_context_t * ctx) { CONVERSION_FUNC_START ctx->output_frame->S_16 = (ctx->input_frame->S_8 ^ 0x80) * 0x0101; CONVERSION_FUNC_END } static void RENAME(s_8_to_u_16)(gavl_audio_convert_context_t * ctx) { CONVERSION_FUNC_START ctx->output_frame->S_16 = ((ctx->input_frame->S_8) * 0x0101) ^ 0x8000; CONVERSION_FUNC_END } static void RENAME(u_8_to_u_16)(gavl_audio_convert_context_t * ctx) { CONVERSION_FUNC_START ctx->output_frame->U_16 = ctx->input_frame->U_8 | ((uint16_t)(ctx->input_frame->U_8) << 8); CONVERSION_FUNC_END } /* 8 -> 32 bits */ static void RENAME(s_8_to_s_32)(gavl_audio_convert_context_t * ctx) { CONVERSION_FUNC_START ctx->output_frame->S_32 = ctx->input_frame->S_8 * 0x01010101; CONVERSION_FUNC_END } static void RENAME(u_8_to_s_32)(gavl_audio_convert_context_t * ctx) { CONVERSION_FUNC_START ctx->output_frame->S_32 = (ctx->input_frame->S_8 ^ 0x80) * 0x01010101; CONVERSION_FUNC_END } /* 16 -> 8 bits */ static void RENAME(convert_16_to_8_swap)(gavl_audio_convert_context_t * ctx) { CONVERSION_FUNC_START ctx->output_frame->U_8 = (ctx->input_frame->U_16 ^ 0x8000) >> 8; CONVERSION_FUNC_END } static void RENAME(convert_16_to_8)(gavl_audio_convert_context_t * ctx) { CONVERSION_FUNC_START ctx->output_frame->U_8 = ctx->input_frame->U_16 >> 8; CONVERSION_FUNC_END } /* 16 -> 32 bits */ static void RENAME(s_16_to_s_32)(gavl_audio_convert_context_t * ctx) { CONVERSION_FUNC_START ctx->output_frame->S_32 = ctx->input_frame->S_16 * 0x00010001; CONVERSION_FUNC_END } static void RENAME(u_16_to_s_32)(gavl_audio_convert_context_t * ctx) { CONVERSION_FUNC_START ctx->output_frame->S_32 = (ctx->input_frame->S_16 ^ 0x8000 ) * 0x00010001; CONVERSION_FUNC_END } /* 32 -> 8 bits */ static void RENAME(convert_32_to_8_swap)(gavl_audio_convert_context_t * ctx) { CONVERSION_FUNC_START ctx->output_frame->S_8 = (ctx->input_frame->S_32 >> 24) ^ 0x80; CONVERSION_FUNC_END } static void RENAME(convert_32_to_8)(gavl_audio_convert_context_t * ctx) { CONVERSION_FUNC_START ctx->output_frame->S_8 = ctx->input_frame->S_32 >> 24; CONVERSION_FUNC_END } /* 32 -> 16 bits */ static void RENAME(convert_32_to_16_swap)(gavl_audio_convert_context_t * ctx) { CONVERSION_FUNC_START ctx->output_frame->S_16 = (ctx->input_frame->S_32 >> 16) ^ 0x8000; CONVERSION_FUNC_END } static void RENAME(convert_32_to_16)(gavl_audio_convert_context_t * ctx) { CONVERSION_FUNC_START ctx->output_frame->S_16 = ctx->input_frame->S_32 >> 16; CONVERSION_FUNC_END } /* Int to float */ static void RENAME(convert_s8_to_float)(gavl_audio_convert_context_t * ctx) { CONVERSION_FUNC_START ctx->output_frame->FLOAT = (float)(ctx->input_frame->S_8)/128.0; CONVERSION_FUNC_END } static void RENAME(convert_u8_to_float)(gavl_audio_convert_context_t * ctx) { CONVERSION_FUNC_START ctx->output_frame->FLOAT = (float)(ctx->input_frame->U_8)/128.0-1.0; CONVERSION_FUNC_END } static void RENAME(convert_s16_to_float)(gavl_audio_convert_context_t * ctx) { CONVERSION_FUNC_START ctx->output_frame->FLOAT = (float)(ctx->input_frame->S_16)/32768.0; CONVERSION_FUNC_END } static void RENAME(convert_u16_to_float)(gavl_audio_convert_context_t * ctx) { CONVERSION_FUNC_START ctx->output_frame->FLOAT = (float)(ctx->input_frame->U_16)/32768.0-1.0; CONVERSION_FUNC_END } static void RENAME(convert_s32_to_float)(gavl_audio_convert_context_t * ctx) { CONVERSION_FUNC_START ctx->output_frame->FLOAT = (float)(ctx->input_frame->S_32)/2147483648.0; CONVERSION_FUNC_END } /* Int to double */ static void RENAME(convert_s8_to_double)(gavl_audio_convert_context_t * ctx) { CONVERSION_FUNC_START ctx->output_frame->DOUBLE = (double)(ctx->input_frame->S_8)/128.0; CONVERSION_FUNC_END } static void RENAME(convert_u8_to_double)(gavl_audio_convert_context_t * ctx) { CONVERSION_FUNC_START ctx->output_frame->DOUBLE = (double)(ctx->input_frame->U_8)/128.0-1.0; CONVERSION_FUNC_END } static void RENAME(convert_s16_to_double)(gavl_audio_convert_context_t * ctx) { CONVERSION_FUNC_START ctx->output_frame->DOUBLE = (double)(ctx->input_frame->S_16)/32768.0; CONVERSION_FUNC_END } static void RENAME(convert_u16_to_double)(gavl_audio_convert_context_t * ctx) { CONVERSION_FUNC_START ctx->output_frame->DOUBLE = (double)(ctx->input_frame->U_16)/32768.0-1.0; CONVERSION_FUNC_END } static void RENAME(convert_s32_to_double)(gavl_audio_convert_context_t * ctx) { CONVERSION_FUNC_START ctx->output_frame->DOUBLE = (double)(ctx->input_frame->S_32)/2147483648.0; CONVERSION_FUNC_END } /* Float to int */ static void RENAME(convert_float_to_s8)(gavl_audio_convert_context_t * ctx) { long tmp; CONVERSION_FUNC_START tmp = lrintf(ctx->input_frame->FLOAT * 128.0); CLAMP(tmp, -128, 127); ctx->output_frame->S_8 = tmp; CONVERSION_FUNC_END } static void RENAME(convert_float_to_u8)(gavl_audio_convert_context_t * ctx) { long tmp; CONVERSION_FUNC_START tmp = lrintf((ctx->input_frame->FLOAT+1.0) * 128.0); CLAMP(tmp, 0, 255); ctx->output_frame->U_8 = tmp; CONVERSION_FUNC_END } static void RENAME(convert_float_to_s16)(gavl_audio_convert_context_t * ctx) { long tmp; CONVERSION_FUNC_START tmp = lrintf((ctx->input_frame->FLOAT) * 32768.0); CLAMP(tmp, -32768, 32767); ctx->output_frame->S_16 = tmp; CONVERSION_FUNC_END } static void RENAME(convert_float_to_u16)(gavl_audio_convert_context_t * ctx) { long tmp; CONVERSION_FUNC_START tmp = lrintf((ctx->input_frame->FLOAT+1.0) * 32768.0); CLAMP(tmp, 0, 65535); ctx->output_frame->U_16 = tmp; CONVERSION_FUNC_END } static void RENAME(convert_float_to_s32)(gavl_audio_convert_context_t * ctx) { int64_t tmp; // fprintf(stderr, "Convert float to S32 %d\n", ctx->input_frame->valid_samples); CONVERSION_FUNC_START tmp = llrintf((ctx->input_frame->FLOAT) * 2147483648.0); CLAMP(tmp, -2147483648LL, 2147483647LL); ctx->output_frame->S_32 = tmp; CONVERSION_FUNC_END // fprintf(stderr, "Convert float to S32 done\n"); } /* Double to int */ static void RENAME(convert_double_to_s8)(gavl_audio_convert_context_t * ctx) { long tmp; CONVERSION_FUNC_START tmp = lrint(ctx->input_frame->DOUBLE * 128.0); CLAMP(tmp, -128, 127); ctx->output_frame->S_8 = tmp; CONVERSION_FUNC_END } static void RENAME(convert_double_to_u8)(gavl_audio_convert_context_t * ctx) { long tmp; CONVERSION_FUNC_START tmp = lrint((ctx->input_frame->DOUBLE+1.0) * 128.0); CLAMP(tmp, 0, 255); ctx->output_frame->U_8 = tmp; CONVERSION_FUNC_END } static void RENAME(convert_double_to_s16)(gavl_audio_convert_context_t * ctx) { long tmp; CONVERSION_FUNC_START tmp = lrint((ctx->input_frame->DOUBLE) * 32768.0); CLAMP(tmp, -32768, 32767); ctx->output_frame->S_16 = tmp; CONVERSION_FUNC_END } static void RENAME(convert_double_to_u16)(gavl_audio_convert_context_t * ctx) { long tmp; CONVERSION_FUNC_START tmp = lrint((ctx->input_frame->DOUBLE+1.0) * 32768.0); CLAMP(tmp, 0, 65535); ctx->output_frame->U_16 = tmp; CONVERSION_FUNC_END } static void RENAME(convert_double_to_s32)(gavl_audio_convert_context_t * ctx) { int64_t tmp; CONVERSION_FUNC_START tmp = llrint((ctx->input_frame->DOUBLE) * 2147483648.0); CLAMP(tmp, -2147483648LL, 2147483647LL); ctx->output_frame->S_32 = tmp; CONVERSION_FUNC_END } /* float <-> double */ static void RENAME(convert_double_to_float)(gavl_audio_convert_context_t * ctx) { CONVERSION_FUNC_START ctx->output_frame->FLOAT = ctx->input_frame->DOUBLE; CONVERSION_FUNC_END } static void RENAME(convert_float_to_double)(gavl_audio_convert_context_t * ctx) { CONVERSION_FUNC_START ctx->output_frame->DOUBLE = ctx->input_frame->FLOAT; CONVERSION_FUNC_END } static void RENAME(gavl_init_sampleformat_funcs_c)(gavl_sampleformat_table_t * t) { t->swap_sign_8 = RENAME(swap_sign_8); t->swap_sign_16 = RENAME(swap_sign_16); /* 8 -> 16 bits */ t->s_8_to_s_16 = RENAME(s_8_to_s_16); t->u_8_to_s_16 = RENAME(u_8_to_s_16); t->s_8_to_u_16 = RENAME(s_8_to_u_16); t->u_8_to_u_16 = RENAME(u_8_to_u_16); /* 8 -> 32 bits */ t->s_8_to_s_32 = RENAME(s_8_to_s_32); t->u_8_to_s_32 = RENAME(u_8_to_s_32); /* 16 -> 8 bits */ t->convert_16_to_8_swap = RENAME(convert_16_to_8_swap); t->convert_16_to_8 = RENAME(convert_16_to_8); /* 16 -> 32 bits */ t->s_16_to_s_32 = RENAME(s_16_to_s_32); t->u_16_to_s_32 = RENAME(u_16_to_s_32); /* 32 -> 8 bits */ t->convert_32_to_8_swap = RENAME(convert_32_to_8_swap); t->convert_32_to_8 = RENAME(convert_32_to_8); /* 32 -> 16 bits */ t->convert_32_to_16_swap = RENAME(convert_32_to_16_swap); t->convert_32_to_16 = RENAME(convert_32_to_16); /* Int to Float */ t->convert_s8_to_float = RENAME(convert_s8_to_float); t->convert_u8_to_float = RENAME(convert_u8_to_float); t->convert_s16_to_float = RENAME(convert_s16_to_float); t->convert_u16_to_float = RENAME(convert_u16_to_float); t->convert_s32_to_float = RENAME(convert_s32_to_float); /* Float to int */ t->convert_float_to_s8 = RENAME(convert_float_to_s8); t->convert_float_to_u8 = RENAME(convert_float_to_u8); t->convert_float_to_s16 = RENAME(convert_float_to_s16); t->convert_float_to_u16 = RENAME(convert_float_to_u16); t->convert_float_to_s32 = RENAME(convert_float_to_s32); /* Int to Double */ t->convert_s8_to_double = RENAME(convert_s8_to_double); t->convert_u8_to_double = RENAME(convert_u8_to_double); t->convert_s16_to_double = RENAME(convert_s16_to_double); t->convert_u16_to_double = RENAME(convert_u16_to_double); t->convert_s32_to_double = RENAME(convert_s32_to_double); /* Double to int */ t->convert_double_to_s8 = RENAME(convert_double_to_s8); t->convert_double_to_u8 = RENAME(convert_double_to_u8); t->convert_double_to_s16 = RENAME(convert_double_to_s16); t->convert_double_to_u16 = RENAME(convert_double_to_u16); t->convert_double_to_s32 = RENAME(convert_double_to_s32); t->convert_float_to_double = RENAME(convert_float_to_double); t->convert_double_to_float = RENAME(convert_double_to_float); } bplaum-gavl-b9385e3/gavl/c/_transform_c.c000066400000000000000000002336731513252040200202700ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ // #include #include #include #include #include "scale_macros.h" #define TMP_TYPE_8 int #define TMP_TYPE_16 uint32_t /* transform_rgb_15_c */ #define FUNC_NAME transform_rgb_15_c #define TYPE color_15 #define INIT TMP_TYPE_8 tmp; #if NUM_TAPS == 2 #define TRANSFORM \ tmp = (TMP_TYPE_8)pixel->factors_i[0][0] * src_0[0].r + \ (TMP_TYPE_8)pixel->factors_i[0][1] * src_0[1].r + \ (TMP_TYPE_8)pixel->factors_i[1][0] * src_1[0].r + \ (TMP_TYPE_8)pixel->factors_i[1][1] * src_1[1].r; \ tmp=DOWNSHIFT(tmp,16);\ dst->r = tmp; \ tmp = (TMP_TYPE_8)pixel->factors_i[0][0] * src_0[0].g + \ (TMP_TYPE_8)pixel->factors_i[0][1] * src_0[1].g + \ (TMP_TYPE_8)pixel->factors_i[1][0] * src_1[0].g + \ (TMP_TYPE_8)pixel->factors_i[1][1] * src_1[1].g; \ tmp=DOWNSHIFT(tmp,16);\ dst->g = tmp; \ tmp = (TMP_TYPE_8)pixel->factors_i[0][0] * src_0[0].b + \ (TMP_TYPE_8)pixel->factors_i[0][1] * src_0[1].b + \ (TMP_TYPE_8)pixel->factors_i[1][0] * src_1[0].b + \ (TMP_TYPE_8)pixel->factors_i[1][1] * src_1[1].b; \ tmp=DOWNSHIFT(tmp,16);\ dst->b = tmp; #elif NUM_TAPS == 3 #define TRANSFORM \ tmp = (TMP_TYPE_8)pixel->factors_i[0][0] * src_0[0].r + \ (TMP_TYPE_8)pixel->factors_i[0][1] * src_0[1].r + \ (TMP_TYPE_8)pixel->factors_i[0][2] * src_0[2].r + \ (TMP_TYPE_8)pixel->factors_i[1][0] * src_1[0].r + \ (TMP_TYPE_8)pixel->factors_i[1][1] * src_1[1].r + \ (TMP_TYPE_8)pixel->factors_i[1][2] * src_1[2].r + \ (TMP_TYPE_8)pixel->factors_i[2][0] * src_2[0].r + \ (TMP_TYPE_8)pixel->factors_i[2][1] * src_2[1].r + \ (TMP_TYPE_8)pixel->factors_i[2][2] * src_2[2].r; \ tmp=DOWNSHIFT(tmp,16);\ dst->r = tmp; \ tmp = (TMP_TYPE_8)pixel->factors_i[0][0] * src_0[0].g + \ (TMP_TYPE_8)pixel->factors_i[0][1] * src_0[1].g + \ (TMP_TYPE_8)pixel->factors_i[0][2] * src_0[2].g + \ (TMP_TYPE_8)pixel->factors_i[1][0] * src_1[0].g + \ (TMP_TYPE_8)pixel->factors_i[1][1] * src_1[1].g + \ (TMP_TYPE_8)pixel->factors_i[1][2] * src_1[2].g + \ (TMP_TYPE_8)pixel->factors_i[2][0] * src_2[0].g + \ (TMP_TYPE_8)pixel->factors_i[2][1] * src_2[1].g + \ (TMP_TYPE_8)pixel->factors_i[2][2] * src_2[2].g; \ tmp=DOWNSHIFT(tmp,16);\ dst->g = tmp; \ tmp = (TMP_TYPE_8)pixel->factors_i[0][0] * src_0[0].b + \ (TMP_TYPE_8)pixel->factors_i[0][1] * src_0[1].b + \ (TMP_TYPE_8)pixel->factors_i[0][2] * src_0[2].b + \ (TMP_TYPE_8)pixel->factors_i[1][0] * src_1[0].b + \ (TMP_TYPE_8)pixel->factors_i[1][1] * src_1[1].b + \ (TMP_TYPE_8)pixel->factors_i[1][2] * src_1[2].b + \ (TMP_TYPE_8)pixel->factors_i[2][0] * src_2[0].b + \ (TMP_TYPE_8)pixel->factors_i[2][1] * src_2[1].b + \ (TMP_TYPE_8)pixel->factors_i[2][2] * src_2[2].b; \ tmp=DOWNSHIFT(tmp,16);\ dst->b = tmp; #elif NUM_TAPS == 4 #define TRANSFORM \ tmp = (TMP_TYPE_8)pixel->factors_i[0][0] * src_0[0].r + \ (TMP_TYPE_8)pixel->factors_i[0][1] * src_0[1].r + \ (TMP_TYPE_8)pixel->factors_i[0][2] * src_0[2].r + \ (TMP_TYPE_8)pixel->factors_i[0][3] * src_0[3].r + \ (TMP_TYPE_8)pixel->factors_i[1][0] * src_1[0].r + \ (TMP_TYPE_8)pixel->factors_i[1][1] * src_1[1].r + \ (TMP_TYPE_8)pixel->factors_i[1][2] * src_1[2].r + \ (TMP_TYPE_8)pixel->factors_i[1][3] * src_1[3].r + \ (TMP_TYPE_8)pixel->factors_i[2][0] * src_2[0].r + \ (TMP_TYPE_8)pixel->factors_i[2][1] * src_2[1].r + \ (TMP_TYPE_8)pixel->factors_i[2][2] * src_2[2].r + \ (TMP_TYPE_8)pixel->factors_i[2][3] * src_2[3].r + \ (TMP_TYPE_8)pixel->factors_i[3][0] * src_3[0].r + \ (TMP_TYPE_8)pixel->factors_i[3][1] * src_3[1].r + \ (TMP_TYPE_8)pixel->factors_i[3][2] * src_3[2].r + \ (TMP_TYPE_8)pixel->factors_i[3][3] * src_3[3].r; \ tmp=DOWNSHIFT(tmp,16);\ dst->r = tmp; \ tmp = (TMP_TYPE_8)pixel->factors_i[0][0] * src_0[0].g + \ (TMP_TYPE_8)pixel->factors_i[0][1] * src_0[1].g + \ (TMP_TYPE_8)pixel->factors_i[0][2] * src_0[2].g + \ (TMP_TYPE_8)pixel->factors_i[0][3] * src_0[3].g + \ (TMP_TYPE_8)pixel->factors_i[1][0] * src_1[0].g + \ (TMP_TYPE_8)pixel->factors_i[1][1] * src_1[1].g + \ (TMP_TYPE_8)pixel->factors_i[1][2] * src_1[2].g + \ (TMP_TYPE_8)pixel->factors_i[1][3] * src_1[3].g + \ (TMP_TYPE_8)pixel->factors_i[2][0] * src_2[0].g + \ (TMP_TYPE_8)pixel->factors_i[2][1] * src_2[1].g + \ (TMP_TYPE_8)pixel->factors_i[2][2] * src_2[2].g + \ (TMP_TYPE_8)pixel->factors_i[2][3] * src_2[3].g + \ (TMP_TYPE_8)pixel->factors_i[3][0] * src_3[0].g + \ (TMP_TYPE_8)pixel->factors_i[3][1] * src_3[1].g + \ (TMP_TYPE_8)pixel->factors_i[3][2] * src_3[2].g + \ (TMP_TYPE_8)pixel->factors_i[3][3] * src_3[3].g; \ tmp=DOWNSHIFT(tmp,16);\ dst->g = tmp; \ tmp = (TMP_TYPE_8)pixel->factors_i[0][0] * src_0[0].b + \ (TMP_TYPE_8)pixel->factors_i[0][1] * src_0[1].b + \ (TMP_TYPE_8)pixel->factors_i[0][2] * src_0[2].b + \ (TMP_TYPE_8)pixel->factors_i[0][3] * src_0[3].b + \ (TMP_TYPE_8)pixel->factors_i[1][0] * src_1[0].b + \ (TMP_TYPE_8)pixel->factors_i[1][1] * src_1[1].b + \ (TMP_TYPE_8)pixel->factors_i[1][2] * src_1[2].b + \ (TMP_TYPE_8)pixel->factors_i[1][3] * src_1[3].b + \ (TMP_TYPE_8)pixel->factors_i[2][0] * src_2[0].b + \ (TMP_TYPE_8)pixel->factors_i[2][1] * src_2[1].b + \ (TMP_TYPE_8)pixel->factors_i[2][2] * src_2[2].b + \ (TMP_TYPE_8)pixel->factors_i[2][3] * src_2[3].b + \ (TMP_TYPE_8)pixel->factors_i[3][0] * src_3[0].b + \ (TMP_TYPE_8)pixel->factors_i[3][1] * src_3[1].b + \ (TMP_TYPE_8)pixel->factors_i[3][2] * src_3[2].b + \ (TMP_TYPE_8)pixel->factors_i[3][3] * src_3[3].b; \ tmp=DOWNSHIFT(tmp,16);\ dst->b = tmp; #endif #include "transform_c.h" /* transform_rgb_16_c */ #define FUNC_NAME transform_rgb_16_c #define TYPE color_16 #define INIT TMP_TYPE_8 tmp; #if NUM_TAPS == 2 #define TRANSFORM \ tmp = (TMP_TYPE_8)pixel->factors_i[0][0] * src_0[0].r + \ (TMP_TYPE_8)pixel->factors_i[0][1] * src_0[1].r + \ (TMP_TYPE_8)pixel->factors_i[1][0] * src_1[0].r + \ (TMP_TYPE_8)pixel->factors_i[1][1] * src_1[1].r; \ tmp=DOWNSHIFT(tmp,16);\ dst->r = tmp; \ tmp = (TMP_TYPE_8)pixel->factors_i[0][0] * src_0[0].g + \ (TMP_TYPE_8)pixel->factors_i[0][1] * src_0[1].g + \ (TMP_TYPE_8)pixel->factors_i[1][0] * src_1[0].g + \ (TMP_TYPE_8)pixel->factors_i[1][1] * src_1[1].g; \ tmp=DOWNSHIFT(tmp,16);\ dst->g = tmp; \ tmp = (TMP_TYPE_8)pixel->factors_i[0][0] * src_0[0].b + \ (TMP_TYPE_8)pixel->factors_i[0][1] * src_0[1].b + \ (TMP_TYPE_8)pixel->factors_i[1][0] * src_1[0].b + \ (TMP_TYPE_8)pixel->factors_i[1][1] * src_1[1].b; \ tmp=DOWNSHIFT(tmp,16);\ dst->b = tmp; #elif NUM_TAPS == 3 #define TRANSFORM \ tmp = (TMP_TYPE_8)pixel->factors_i[0][0] * src_0[0].r + \ (TMP_TYPE_8)pixel->factors_i[0][1] * src_0[1].r + \ (TMP_TYPE_8)pixel->factors_i[0][2] * src_0[2].r + \ (TMP_TYPE_8)pixel->factors_i[1][0] * src_1[0].r + \ (TMP_TYPE_8)pixel->factors_i[1][1] * src_1[1].r + \ (TMP_TYPE_8)pixel->factors_i[1][2] * src_1[2].r + \ (TMP_TYPE_8)pixel->factors_i[2][0] * src_2[0].r + \ (TMP_TYPE_8)pixel->factors_i[2][1] * src_2[1].r + \ (TMP_TYPE_8)pixel->factors_i[2][2] * src_2[2].r; \ tmp=DOWNSHIFT(tmp,16);\ dst->r = tmp; \ tmp = (TMP_TYPE_8)pixel->factors_i[0][0] * src_0[0].g + \ (TMP_TYPE_8)pixel->factors_i[0][1] * src_0[1].g + \ (TMP_TYPE_8)pixel->factors_i[0][2] * src_0[2].g + \ (TMP_TYPE_8)pixel->factors_i[1][0] * src_1[0].g + \ (TMP_TYPE_8)pixel->factors_i[1][1] * src_1[1].g + \ (TMP_TYPE_8)pixel->factors_i[1][2] * src_1[2].g + \ (TMP_TYPE_8)pixel->factors_i[2][0] * src_2[0].g + \ (TMP_TYPE_8)pixel->factors_i[2][1] * src_2[1].g + \ (TMP_TYPE_8)pixel->factors_i[2][2] * src_2[2].g; \ tmp=DOWNSHIFT(tmp,16);\ dst->g = tmp; \ tmp = (TMP_TYPE_8)pixel->factors_i[0][0] * src_0[0].b + \ (TMP_TYPE_8)pixel->factors_i[0][1] * src_0[1].b + \ (TMP_TYPE_8)pixel->factors_i[0][2] * src_0[2].b + \ (TMP_TYPE_8)pixel->factors_i[1][0] * src_1[0].b + \ (TMP_TYPE_8)pixel->factors_i[1][1] * src_1[1].b + \ (TMP_TYPE_8)pixel->factors_i[1][2] * src_1[2].b + \ (TMP_TYPE_8)pixel->factors_i[2][0] * src_2[0].b + \ (TMP_TYPE_8)pixel->factors_i[2][1] * src_2[1].b + \ (TMP_TYPE_8)pixel->factors_i[2][2] * src_2[2].b; \ tmp=DOWNSHIFT(tmp,16);\ dst->b = tmp; #elif NUM_TAPS == 4 #define TRANSFORM \ tmp = (TMP_TYPE_8)pixel->factors_i[0][0] * src_0[0].r + \ (TMP_TYPE_8)pixel->factors_i[0][1] * src_0[1].r + \ (TMP_TYPE_8)pixel->factors_i[0][2] * src_0[2].r + \ (TMP_TYPE_8)pixel->factors_i[0][3] * src_0[3].r + \ (TMP_TYPE_8)pixel->factors_i[1][0] * src_1[0].r + \ (TMP_TYPE_8)pixel->factors_i[1][1] * src_1[1].r + \ (TMP_TYPE_8)pixel->factors_i[1][2] * src_1[2].r + \ (TMP_TYPE_8)pixel->factors_i[1][3] * src_1[3].r + \ (TMP_TYPE_8)pixel->factors_i[2][0] * src_2[0].r + \ (TMP_TYPE_8)pixel->factors_i[2][1] * src_2[1].r + \ (TMP_TYPE_8)pixel->factors_i[2][2] * src_2[2].r + \ (TMP_TYPE_8)pixel->factors_i[2][3] * src_2[3].r + \ (TMP_TYPE_8)pixel->factors_i[3][0] * src_3[0].r + \ (TMP_TYPE_8)pixel->factors_i[3][1] * src_3[1].r + \ (TMP_TYPE_8)pixel->factors_i[3][2] * src_3[2].r + \ (TMP_TYPE_8)pixel->factors_i[3][3] * src_3[3].r; \ tmp=DOWNSHIFT(tmp,16);\ dst->r = tmp; \ tmp = (TMP_TYPE_8)pixel->factors_i[0][0] * src_0[0].g + \ (TMP_TYPE_8)pixel->factors_i[0][1] * src_0[1].g + \ (TMP_TYPE_8)pixel->factors_i[0][2] * src_0[2].g + \ (TMP_TYPE_8)pixel->factors_i[0][3] * src_0[3].g + \ (TMP_TYPE_8)pixel->factors_i[1][0] * src_1[0].g + \ (TMP_TYPE_8)pixel->factors_i[1][1] * src_1[1].g + \ (TMP_TYPE_8)pixel->factors_i[1][2] * src_1[2].g + \ (TMP_TYPE_8)pixel->factors_i[1][3] * src_1[3].g + \ (TMP_TYPE_8)pixel->factors_i[2][0] * src_2[0].g + \ (TMP_TYPE_8)pixel->factors_i[2][1] * src_2[1].g + \ (TMP_TYPE_8)pixel->factors_i[2][2] * src_2[2].g + \ (TMP_TYPE_8)pixel->factors_i[2][3] * src_2[3].g + \ (TMP_TYPE_8)pixel->factors_i[3][0] * src_3[0].g + \ (TMP_TYPE_8)pixel->factors_i[3][1] * src_3[1].g + \ (TMP_TYPE_8)pixel->factors_i[3][2] * src_3[2].g + \ (TMP_TYPE_8)pixel->factors_i[3][3] * src_3[3].g; \ tmp=DOWNSHIFT(tmp,16);\ dst->g = tmp; \ tmp = (TMP_TYPE_8)pixel->factors_i[0][0] * src_0[0].b + \ (TMP_TYPE_8)pixel->factors_i[0][1] * src_0[1].b + \ (TMP_TYPE_8)pixel->factors_i[0][2] * src_0[2].b + \ (TMP_TYPE_8)pixel->factors_i[0][3] * src_0[3].b + \ (TMP_TYPE_8)pixel->factors_i[1][0] * src_1[0].b + \ (TMP_TYPE_8)pixel->factors_i[1][1] * src_1[1].b + \ (TMP_TYPE_8)pixel->factors_i[1][2] * src_1[2].b + \ (TMP_TYPE_8)pixel->factors_i[1][3] * src_1[3].b + \ (TMP_TYPE_8)pixel->factors_i[2][0] * src_2[0].b + \ (TMP_TYPE_8)pixel->factors_i[2][1] * src_2[1].b + \ (TMP_TYPE_8)pixel->factors_i[2][2] * src_2[2].b + \ (TMP_TYPE_8)pixel->factors_i[2][3] * src_2[3].b + \ (TMP_TYPE_8)pixel->factors_i[3][0] * src_3[0].b + \ (TMP_TYPE_8)pixel->factors_i[3][1] * src_3[1].b + \ (TMP_TYPE_8)pixel->factors_i[3][2] * src_3[2].b + \ (TMP_TYPE_8)pixel->factors_i[3][3] * src_3[3].b; \ tmp=DOWNSHIFT(tmp,16);\ dst->b = tmp; #endif #include "transform_c.h" /* transform_uint8_x_1_c */ #define FUNC_NAME transform_uint8_x_1_c #define TYPE uint8_t #define INIT TMP_TYPE_8 tmp; #if NUM_TAPS == 2 #define TRANSFORM \ tmp = (TMP_TYPE_8)pixel->factors_i[0][0] * src_0[0] + \ (TMP_TYPE_8)pixel->factors_i[0][1] * src_0[1] + \ (TMP_TYPE_8)pixel->factors_i[1][0] * src_1[0] + \ (TMP_TYPE_8)pixel->factors_i[1][1] * src_1[1]; \ tmp=DOWNSHIFT(tmp,16);\ dst[0] = tmp; #elif NUM_TAPS == 3 #define TRANSFORM \ tmp = (TMP_TYPE_8)pixel->factors_i[0][0] * src_0[0] + \ (TMP_TYPE_8)pixel->factors_i[0][1] * src_0[1] + \ (TMP_TYPE_8)pixel->factors_i[0][2] * src_0[2] + \ (TMP_TYPE_8)pixel->factors_i[1][0] * src_1[0] + \ (TMP_TYPE_8)pixel->factors_i[1][1] * src_1[1] + \ (TMP_TYPE_8)pixel->factors_i[1][2] * src_1[2] + \ (TMP_TYPE_8)pixel->factors_i[2][0] * src_2[0] + \ (TMP_TYPE_8)pixel->factors_i[2][1] * src_2[1] + \ (TMP_TYPE_8)pixel->factors_i[2][2] * src_2[2]; \ tmp=DOWNSHIFT(tmp,16);\ dst[0] = tmp; #elif NUM_TAPS == 4 #define TRANSFORM \ tmp = (TMP_TYPE_8)pixel->factors_i[0][0] * src_0[0] + \ (TMP_TYPE_8)pixel->factors_i[0][1] * src_0[1] + \ (TMP_TYPE_8)pixel->factors_i[0][2] * src_0[2] + \ (TMP_TYPE_8)pixel->factors_i[0][3] * src_0[3] + \ (TMP_TYPE_8)pixel->factors_i[1][0] * src_1[0] + \ (TMP_TYPE_8)pixel->factors_i[1][1] * src_1[1] + \ (TMP_TYPE_8)pixel->factors_i[1][2] * src_1[2] + \ (TMP_TYPE_8)pixel->factors_i[1][3] * src_1[3] + \ (TMP_TYPE_8)pixel->factors_i[2][0] * src_2[0] + \ (TMP_TYPE_8)pixel->factors_i[2][1] * src_2[1] + \ (TMP_TYPE_8)pixel->factors_i[2][2] * src_2[2] + \ (TMP_TYPE_8)pixel->factors_i[2][3] * src_2[3] + \ (TMP_TYPE_8)pixel->factors_i[3][0] * src_3[0] + \ (TMP_TYPE_8)pixel->factors_i[3][1] * src_3[1] + \ (TMP_TYPE_8)pixel->factors_i[3][2] * src_3[2] + \ (TMP_TYPE_8)pixel->factors_i[3][3] * src_3[3]; \ tmp=DOWNSHIFT(tmp,16);\ dst[0] = tmp; #endif #include "transform_c.h" /* transform_uint8_x_1_advance_c */ #define FUNC_NAME transform_uint8_x_1_advance_c #define TYPE uint8_t #define INIT TMP_TYPE_8 tmp; #if NUM_TAPS == 2 #define TRANSFORM \ tmp = (TMP_TYPE_8)pixel->factors_i[0][0] * src_0[0] + \ (TMP_TYPE_8)pixel->factors_i[0][1] * src_0[ctx->advance] + \ (TMP_TYPE_8)pixel->factors_i[1][0] * src_1[0] + \ (TMP_TYPE_8)pixel->factors_i[1][1] * src_1[ctx->advance]; \ tmp=DOWNSHIFT(tmp,16);\ dst[0] = tmp; #elif NUM_TAPS == 3 #define TRANSFORM \ tmp = (TMP_TYPE_8)pixel->factors_i[0][0] * src_0[0] + \ (TMP_TYPE_8)pixel->factors_i[0][1] * src_0[ctx->advance] + \ (TMP_TYPE_8)pixel->factors_i[0][2] * src_0[2*ctx->advance] + \ (TMP_TYPE_8)pixel->factors_i[1][0] * src_1[0] + \ (TMP_TYPE_8)pixel->factors_i[1][1] * src_1[ctx->advance] + \ (TMP_TYPE_8)pixel->factors_i[1][2] * src_1[2*ctx->advance] + \ (TMP_TYPE_8)pixel->factors_i[2][0] * src_2[0] + \ (TMP_TYPE_8)pixel->factors_i[2][1] * src_2[ctx->advance] + \ (TMP_TYPE_8)pixel->factors_i[2][2] * src_2[2*ctx->advance]; \ tmp=DOWNSHIFT(tmp,16);\ dst[0] = tmp; #elif NUM_TAPS == 4 #define TRANSFORM \ tmp = (TMP_TYPE_8)pixel->factors_i[0][0] * src_0[0] + \ (TMP_TYPE_8)pixel->factors_i[0][1] * src_0[ctx->advance] + \ (TMP_TYPE_8)pixel->factors_i[0][2] * src_0[2*ctx->advance] + \ (TMP_TYPE_8)pixel->factors_i[0][3] * src_0[3*ctx->advance] + \ (TMP_TYPE_8)pixel->factors_i[1][0] * src_1[0] + \ (TMP_TYPE_8)pixel->factors_i[1][1] * src_1[ctx->advance] + \ (TMP_TYPE_8)pixel->factors_i[1][2] * src_1[2*ctx->advance] + \ (TMP_TYPE_8)pixel->factors_i[1][3] * src_1[3*ctx->advance] + \ (TMP_TYPE_8)pixel->factors_i[2][0] * src_2[0] + \ (TMP_TYPE_8)pixel->factors_i[2][1] * src_2[ctx->advance] + \ (TMP_TYPE_8)pixel->factors_i[2][2] * src_2[2*ctx->advance] + \ (TMP_TYPE_8)pixel->factors_i[2][3] * src_2[3*ctx->advance] + \ (TMP_TYPE_8)pixel->factors_i[3][0] * src_3[0] + \ (TMP_TYPE_8)pixel->factors_i[3][1] * src_3[ctx->advance] + \ (TMP_TYPE_8)pixel->factors_i[3][2] * src_3[2*ctx->advance] + \ (TMP_TYPE_8)pixel->factors_i[3][3] * src_3[3*ctx->advance]; \ tmp=DOWNSHIFT(tmp,16);\ dst[0] = tmp; #endif #include "transform_c.h" /* transform_uint8_x_2_c */ #define FUNC_NAME transform_uint8_x_2_c #define TYPE uint8_t #define INIT TMP_TYPE_8 tmp; #if NUM_TAPS == 2 #define TRANSFORM \ tmp = (TMP_TYPE_8)pixel->factors_i[0][0] * src_0[0] + \ (TMP_TYPE_8)pixel->factors_i[0][1] * src_0[2] + \ (TMP_TYPE_8)pixel->factors_i[1][0] * src_1[0] + \ (TMP_TYPE_8)pixel->factors_i[1][1] * src_1[2]; \ tmp=DOWNSHIFT(tmp,16);\ dst[0] = tmp; \ tmp = (TMP_TYPE_8)pixel->factors_i[0][0] * src_0[1] + \ (TMP_TYPE_8)pixel->factors_i[0][1] * src_0[3] + \ (TMP_TYPE_8)pixel->factors_i[1][0] * src_1[1] + \ (TMP_TYPE_8)pixel->factors_i[1][1] * src_1[3]; \ tmp=DOWNSHIFT(tmp,16);\ dst[1] = tmp; #elif NUM_TAPS == 3 #define TRANSFORM \ tmp = (TMP_TYPE_8)pixel->factors_i[0][0] * src_0[0] + \ (TMP_TYPE_8)pixel->factors_i[0][1] * src_0[2] + \ (TMP_TYPE_8)pixel->factors_i[0][2] * src_0[4] + \ (TMP_TYPE_8)pixel->factors_i[1][0] * src_1[0] + \ (TMP_TYPE_8)pixel->factors_i[1][1] * src_1[2] + \ (TMP_TYPE_8)pixel->factors_i[1][2] * src_1[4] + \ (TMP_TYPE_8)pixel->factors_i[2][0] * src_2[0] + \ (TMP_TYPE_8)pixel->factors_i[2][1] * src_2[2] + \ (TMP_TYPE_8)pixel->factors_i[2][2] * src_2[4]; \ tmp=DOWNSHIFT(tmp,16);\ dst[0] = tmp; \ tmp = (TMP_TYPE_8)pixel->factors_i[0][0] * src_0[1] + \ (TMP_TYPE_8)pixel->factors_i[0][1] * src_0[3] + \ (TMP_TYPE_8)pixel->factors_i[0][2] * src_0[5] + \ (TMP_TYPE_8)pixel->factors_i[1][0] * src_1[1] + \ (TMP_TYPE_8)pixel->factors_i[1][1] * src_1[3] + \ (TMP_TYPE_8)pixel->factors_i[1][2] * src_1[5] + \ (TMP_TYPE_8)pixel->factors_i[2][0] * src_2[1] + \ (TMP_TYPE_8)pixel->factors_i[2][1] * src_2[3] + \ (TMP_TYPE_8)pixel->factors_i[2][2] * src_2[5]; \ tmp=DOWNSHIFT(tmp,16);\ dst[1] = tmp; #elif NUM_TAPS == 4 #define TRANSFORM \ tmp = (TMP_TYPE_8)pixel->factors_i[0][0] * src_0[0] + \ (TMP_TYPE_8)pixel->factors_i[0][1] * src_0[2] + \ (TMP_TYPE_8)pixel->factors_i[0][2] * src_0[4] + \ (TMP_TYPE_8)pixel->factors_i[0][3] * src_0[6] + \ (TMP_TYPE_8)pixel->factors_i[1][0] * src_1[0] + \ (TMP_TYPE_8)pixel->factors_i[1][1] * src_1[2] + \ (TMP_TYPE_8)pixel->factors_i[1][2] * src_1[4] + \ (TMP_TYPE_8)pixel->factors_i[1][3] * src_1[6] + \ (TMP_TYPE_8)pixel->factors_i[2][0] * src_2[0] + \ (TMP_TYPE_8)pixel->factors_i[2][1] * src_2[2] + \ (TMP_TYPE_8)pixel->factors_i[2][2] * src_2[4] + \ (TMP_TYPE_8)pixel->factors_i[2][3] * src_2[6] + \ (TMP_TYPE_8)pixel->factors_i[3][0] * src_3[0] + \ (TMP_TYPE_8)pixel->factors_i[3][1] * src_3[2] + \ (TMP_TYPE_8)pixel->factors_i[3][2] * src_3[4] + \ (TMP_TYPE_8)pixel->factors_i[3][3] * src_3[6]; \ tmp=DOWNSHIFT(tmp,16);\ dst[0] = tmp; \ tmp = (TMP_TYPE_8)pixel->factors_i[0][0] * src_0[1] + \ (TMP_TYPE_8)pixel->factors_i[0][1] * src_0[3] + \ (TMP_TYPE_8)pixel->factors_i[0][2] * src_0[5] + \ (TMP_TYPE_8)pixel->factors_i[0][3] * src_0[7] + \ (TMP_TYPE_8)pixel->factors_i[1][0] * src_1[1] + \ (TMP_TYPE_8)pixel->factors_i[1][1] * src_1[3] + \ (TMP_TYPE_8)pixel->factors_i[1][2] * src_1[5] + \ (TMP_TYPE_8)pixel->factors_i[1][3] * src_1[7] + \ (TMP_TYPE_8)pixel->factors_i[2][0] * src_2[1] + \ (TMP_TYPE_8)pixel->factors_i[2][1] * src_2[3] + \ (TMP_TYPE_8)pixel->factors_i[2][2] * src_2[5] + \ (TMP_TYPE_8)pixel->factors_i[2][3] * src_2[7] + \ (TMP_TYPE_8)pixel->factors_i[3][0] * src_3[1] + \ (TMP_TYPE_8)pixel->factors_i[3][1] * src_3[3] + \ (TMP_TYPE_8)pixel->factors_i[3][2] * src_3[5] + \ (TMP_TYPE_8)pixel->factors_i[3][3] * src_3[7]; \ tmp=DOWNSHIFT(tmp,16);\ dst[1] = tmp; #endif #include "transform_c.h" /* transform_uint8_x_3_c */ #define FUNC_NAME transform_uint8_x_3_3_c #define TYPE uint8_t #define INIT TMP_TYPE_8 tmp; #if NUM_TAPS == 2 #define TRANSFORM \ tmp = (TMP_TYPE_8)pixel->factors_i[0][0] * src_0[0] + \ (TMP_TYPE_8)pixel->factors_i[0][1] * src_0[3] + \ (TMP_TYPE_8)pixel->factors_i[1][0] * src_1[0] + \ (TMP_TYPE_8)pixel->factors_i[1][1] * src_1[3]; \ tmp=DOWNSHIFT(tmp,16);\ dst[0] = tmp; \ tmp = (TMP_TYPE_8)pixel->factors_i[0][0] * src_0[1] + \ (TMP_TYPE_8)pixel->factors_i[0][1] * src_0[4] + \ (TMP_TYPE_8)pixel->factors_i[1][0] * src_1[1] + \ (TMP_TYPE_8)pixel->factors_i[1][1] * src_1[4]; \ tmp=DOWNSHIFT(tmp,16);\ dst[1] = tmp; \ tmp = (TMP_TYPE_8)pixel->factors_i[0][0] * src_0[2] + \ (TMP_TYPE_8)pixel->factors_i[0][1] * src_0[5] + \ (TMP_TYPE_8)pixel->factors_i[1][0] * src_1[2] + \ (TMP_TYPE_8)pixel->factors_i[1][1] * src_1[5]; \ tmp=DOWNSHIFT(tmp,16);\ dst[2] = tmp; #elif NUM_TAPS == 3 #define TRANSFORM \ tmp = (TMP_TYPE_8)pixel->factors_i[0][0] * src_0[0] + \ (TMP_TYPE_8)pixel->factors_i[0][1] * src_0[3] + \ (TMP_TYPE_8)pixel->factors_i[0][2] * src_0[6] + \ (TMP_TYPE_8)pixel->factors_i[1][0] * src_1[0] + \ (TMP_TYPE_8)pixel->factors_i[1][1] * src_1[3] + \ (TMP_TYPE_8)pixel->factors_i[1][2] * src_1[6] + \ (TMP_TYPE_8)pixel->factors_i[2][0] * src_2[0] + \ (TMP_TYPE_8)pixel->factors_i[2][1] * src_2[3] + \ (TMP_TYPE_8)pixel->factors_i[2][2] * src_2[6]; \ tmp=DOWNSHIFT(tmp,16);\ dst[0] = tmp; \ tmp = (TMP_TYPE_8)pixel->factors_i[0][0] * src_0[1] + \ (TMP_TYPE_8)pixel->factors_i[0][1] * src_0[4] + \ (TMP_TYPE_8)pixel->factors_i[0][2] * src_0[7] + \ (TMP_TYPE_8)pixel->factors_i[1][0] * src_1[1] + \ (TMP_TYPE_8)pixel->factors_i[1][1] * src_1[4] + \ (TMP_TYPE_8)pixel->factors_i[1][2] * src_1[7] + \ (TMP_TYPE_8)pixel->factors_i[2][0] * src_2[1] + \ (TMP_TYPE_8)pixel->factors_i[2][1] * src_2[4] + \ (TMP_TYPE_8)pixel->factors_i[2][2] * src_2[7]; \ tmp=DOWNSHIFT(tmp,16);\ dst[1] = tmp; \ tmp = (TMP_TYPE_8)pixel->factors_i[0][0] * src_0[2] + \ (TMP_TYPE_8)pixel->factors_i[0][1] * src_0[5] + \ (TMP_TYPE_8)pixel->factors_i[0][2] * src_0[8] + \ (TMP_TYPE_8)pixel->factors_i[1][0] * src_1[2] + \ (TMP_TYPE_8)pixel->factors_i[1][1] * src_1[5] + \ (TMP_TYPE_8)pixel->factors_i[1][2] * src_1[8] + \ (TMP_TYPE_8)pixel->factors_i[2][0] * src_2[2] + \ (TMP_TYPE_8)pixel->factors_i[2][1] * src_2[5] + \ (TMP_TYPE_8)pixel->factors_i[2][2] * src_2[8]; \ tmp=DOWNSHIFT(tmp,16);\ dst[2] = tmp; #elif NUM_TAPS == 4 #define TRANSFORM \ tmp = (TMP_TYPE_8)pixel->factors_i[0][0] * src_0[0] + \ (TMP_TYPE_8)pixel->factors_i[0][1] * src_0[3] + \ (TMP_TYPE_8)pixel->factors_i[0][2] * src_0[6] + \ (TMP_TYPE_8)pixel->factors_i[0][3] * src_0[9] + \ (TMP_TYPE_8)pixel->factors_i[1][0] * src_1[0] + \ (TMP_TYPE_8)pixel->factors_i[1][1] * src_1[3] + \ (TMP_TYPE_8)pixel->factors_i[1][2] * src_1[6] + \ (TMP_TYPE_8)pixel->factors_i[1][3] * src_1[9] + \ (TMP_TYPE_8)pixel->factors_i[2][0] * src_2[0] + \ (TMP_TYPE_8)pixel->factors_i[2][1] * src_2[3] + \ (TMP_TYPE_8)pixel->factors_i[2][2] * src_2[6] + \ (TMP_TYPE_8)pixel->factors_i[2][3] * src_2[9] + \ (TMP_TYPE_8)pixel->factors_i[3][0] * src_3[0] + \ (TMP_TYPE_8)pixel->factors_i[3][1] * src_3[3] + \ (TMP_TYPE_8)pixel->factors_i[3][2] * src_3[6] + \ (TMP_TYPE_8)pixel->factors_i[3][3] * src_3[9]; \ tmp=DOWNSHIFT(tmp,16);\ dst[0] = tmp; \ tmp = (TMP_TYPE_8)pixel->factors_i[0][0] * src_0[1] + \ (TMP_TYPE_8)pixel->factors_i[0][1] * src_0[4] + \ (TMP_TYPE_8)pixel->factors_i[0][2] * src_0[7] + \ (TMP_TYPE_8)pixel->factors_i[0][3] * src_0[10] + \ (TMP_TYPE_8)pixel->factors_i[1][0] * src_1[1] + \ (TMP_TYPE_8)pixel->factors_i[1][1] * src_1[4] + \ (TMP_TYPE_8)pixel->factors_i[1][2] * src_1[7] + \ (TMP_TYPE_8)pixel->factors_i[1][3] * src_1[10] + \ (TMP_TYPE_8)pixel->factors_i[2][0] * src_2[1] + \ (TMP_TYPE_8)pixel->factors_i[2][1] * src_2[4] + \ (TMP_TYPE_8)pixel->factors_i[2][2] * src_2[7] + \ (TMP_TYPE_8)pixel->factors_i[2][3] * src_2[10] + \ (TMP_TYPE_8)pixel->factors_i[3][0] * src_3[1] + \ (TMP_TYPE_8)pixel->factors_i[3][1] * src_3[4] + \ (TMP_TYPE_8)pixel->factors_i[3][2] * src_3[7] + \ (TMP_TYPE_8)pixel->factors_i[3][3] * src_3[10]; \ tmp=DOWNSHIFT(tmp,16);\ dst[1] = tmp; \ tmp = (TMP_TYPE_8)pixel->factors_i[0][0] * src_0[2] + \ (TMP_TYPE_8)pixel->factors_i[0][1] * src_0[5] + \ (TMP_TYPE_8)pixel->factors_i[0][2] * src_0[8] + \ (TMP_TYPE_8)pixel->factors_i[0][3] * src_0[11] + \ (TMP_TYPE_8)pixel->factors_i[1][0] * src_1[2] + \ (TMP_TYPE_8)pixel->factors_i[1][1] * src_1[5] + \ (TMP_TYPE_8)pixel->factors_i[1][2] * src_1[8] + \ (TMP_TYPE_8)pixel->factors_i[1][3] * src_1[11] + \ (TMP_TYPE_8)pixel->factors_i[2][0] * src_2[2] + \ (TMP_TYPE_8)pixel->factors_i[2][1] * src_2[5] + \ (TMP_TYPE_8)pixel->factors_i[2][2] * src_2[8] + \ (TMP_TYPE_8)pixel->factors_i[2][3] * src_2[11] + \ (TMP_TYPE_8)pixel->factors_i[3][0] * src_3[2] + \ (TMP_TYPE_8)pixel->factors_i[3][1] * src_3[5] + \ (TMP_TYPE_8)pixel->factors_i[3][2] * src_3[8] + \ (TMP_TYPE_8)pixel->factors_i[3][3] * src_3[11]; \ tmp=DOWNSHIFT(tmp,16);\ dst[2] = tmp; #endif #include "transform_c.h" /* transform_uint8_x_3_4_c */ #define FUNC_NAME transform_uint8_x_3_4_c #define TYPE uint8_t #define INIT TMP_TYPE_8 tmp; #if NUM_TAPS == 2 #define TRANSFORM \ tmp = (TMP_TYPE_8)pixel->factors_i[0][0] * src_0[0] + \ (TMP_TYPE_8)pixel->factors_i[0][1] * src_0[4] + \ (TMP_TYPE_8)pixel->factors_i[1][0] * src_1[0] + \ (TMP_TYPE_8)pixel->factors_i[1][1] * src_1[4]; \ tmp=DOWNSHIFT(tmp,16);\ dst[0] = tmp; \ tmp = (TMP_TYPE_8)pixel->factors_i[0][0] * src_0[1] + \ (TMP_TYPE_8)pixel->factors_i[0][1] * src_0[5] + \ (TMP_TYPE_8)pixel->factors_i[1][0] * src_1[1] + \ (TMP_TYPE_8)pixel->factors_i[1][1] * src_1[5]; \ tmp=DOWNSHIFT(tmp,16);\ dst[1] = tmp; \ tmp = (TMP_TYPE_8)pixel->factors_i[0][0] * src_0[2] + \ (TMP_TYPE_8)pixel->factors_i[0][1] * src_0[6] + \ (TMP_TYPE_8)pixel->factors_i[1][0] * src_1[2] + \ (TMP_TYPE_8)pixel->factors_i[1][1] * src_1[6]; \ tmp=DOWNSHIFT(tmp,16);\ dst[2] = tmp; #elif NUM_TAPS == 3 #define TRANSFORM \ tmp = (TMP_TYPE_8)pixel->factors_i[0][0] * src_0[0] + \ (TMP_TYPE_8)pixel->factors_i[0][1] * src_0[4] + \ (TMP_TYPE_8)pixel->factors_i[0][2] * src_0[8] + \ (TMP_TYPE_8)pixel->factors_i[1][0] * src_1[0] + \ (TMP_TYPE_8)pixel->factors_i[1][1] * src_1[4] + \ (TMP_TYPE_8)pixel->factors_i[1][2] * src_1[8] + \ (TMP_TYPE_8)pixel->factors_i[2][0] * src_2[0] + \ (TMP_TYPE_8)pixel->factors_i[2][1] * src_2[4] + \ (TMP_TYPE_8)pixel->factors_i[2][2] * src_2[8]; \ tmp=DOWNSHIFT(tmp,16);\ dst[0] = tmp; \ tmp = (TMP_TYPE_8)pixel->factors_i[0][0] * src_0[1] + \ (TMP_TYPE_8)pixel->factors_i[0][1] * src_0[5] + \ (TMP_TYPE_8)pixel->factors_i[0][2] * src_0[9] + \ (TMP_TYPE_8)pixel->factors_i[1][0] * src_1[1] + \ (TMP_TYPE_8)pixel->factors_i[1][1] * src_1[5] + \ (TMP_TYPE_8)pixel->factors_i[1][2] * src_1[9] + \ (TMP_TYPE_8)pixel->factors_i[2][0] * src_2[1] + \ (TMP_TYPE_8)pixel->factors_i[2][1] * src_2[5] + \ (TMP_TYPE_8)pixel->factors_i[2][2] * src_2[9]; \ tmp=DOWNSHIFT(tmp,16);\ dst[1] = tmp; \ tmp = (TMP_TYPE_8)pixel->factors_i[0][0] * src_0[2] + \ (TMP_TYPE_8)pixel->factors_i[0][1] * src_0[6] + \ (TMP_TYPE_8)pixel->factors_i[0][2] * src_0[10] + \ (TMP_TYPE_8)pixel->factors_i[1][0] * src_1[2] + \ (TMP_TYPE_8)pixel->factors_i[1][1] * src_1[6] + \ (TMP_TYPE_8)pixel->factors_i[1][2] * src_1[10] + \ (TMP_TYPE_8)pixel->factors_i[2][0] * src_2[2] + \ (TMP_TYPE_8)pixel->factors_i[2][1] * src_2[6] + \ (TMP_TYPE_8)pixel->factors_i[2][2] * src_2[10]; \ tmp=DOWNSHIFT(tmp,16);\ dst[2] = tmp; #elif NUM_TAPS == 4 #define TRANSFORM \ tmp = (TMP_TYPE_8)pixel->factors_i[0][0] * src_0[0] + \ (TMP_TYPE_8)pixel->factors_i[0][1] * src_0[4] + \ (TMP_TYPE_8)pixel->factors_i[0][2] * src_0[8] + \ (TMP_TYPE_8)pixel->factors_i[0][3] * src_0[12] + \ (TMP_TYPE_8)pixel->factors_i[1][0] * src_1[0] + \ (TMP_TYPE_8)pixel->factors_i[1][1] * src_1[4] + \ (TMP_TYPE_8)pixel->factors_i[1][2] * src_1[8] + \ (TMP_TYPE_8)pixel->factors_i[1][3] * src_1[12] + \ (TMP_TYPE_8)pixel->factors_i[2][0] * src_2[0] + \ (TMP_TYPE_8)pixel->factors_i[2][1] * src_2[4] + \ (TMP_TYPE_8)pixel->factors_i[2][2] * src_2[8] + \ (TMP_TYPE_8)pixel->factors_i[2][3] * src_2[12] + \ (TMP_TYPE_8)pixel->factors_i[3][0] * src_3[0] + \ (TMP_TYPE_8)pixel->factors_i[3][1] * src_3[4] + \ (TMP_TYPE_8)pixel->factors_i[3][2] * src_3[8] + \ (TMP_TYPE_8)pixel->factors_i[3][3] * src_3[12]; \ tmp=DOWNSHIFT(tmp,16);\ dst[0] = tmp; \ tmp = (TMP_TYPE_8)pixel->factors_i[0][0] * src_0[1] + \ (TMP_TYPE_8)pixel->factors_i[0][1] * src_0[5] + \ (TMP_TYPE_8)pixel->factors_i[0][2] * src_0[9] + \ (TMP_TYPE_8)pixel->factors_i[0][3] * src_0[13] + \ (TMP_TYPE_8)pixel->factors_i[1][0] * src_1[1] + \ (TMP_TYPE_8)pixel->factors_i[1][1] * src_1[5] + \ (TMP_TYPE_8)pixel->factors_i[1][2] * src_1[9] + \ (TMP_TYPE_8)pixel->factors_i[1][3] * src_1[13] + \ (TMP_TYPE_8)pixel->factors_i[2][0] * src_2[1] + \ (TMP_TYPE_8)pixel->factors_i[2][1] * src_2[5] + \ (TMP_TYPE_8)pixel->factors_i[2][2] * src_2[9] + \ (TMP_TYPE_8)pixel->factors_i[2][3] * src_2[13] + \ (TMP_TYPE_8)pixel->factors_i[3][0] * src_3[1] + \ (TMP_TYPE_8)pixel->factors_i[3][1] * src_3[5] + \ (TMP_TYPE_8)pixel->factors_i[3][2] * src_3[9] + \ (TMP_TYPE_8)pixel->factors_i[3][3] * src_3[13]; \ tmp=DOWNSHIFT(tmp,16);\ dst[1] = tmp; \ tmp = (TMP_TYPE_8)pixel->factors_i[0][0] * src_0[2] + \ (TMP_TYPE_8)pixel->factors_i[0][1] * src_0[6] + \ (TMP_TYPE_8)pixel->factors_i[0][2] * src_0[10] + \ (TMP_TYPE_8)pixel->factors_i[0][3] * src_0[14] + \ (TMP_TYPE_8)pixel->factors_i[1][0] * src_1[2] + \ (TMP_TYPE_8)pixel->factors_i[1][1] * src_1[6] + \ (TMP_TYPE_8)pixel->factors_i[1][2] * src_1[10] + \ (TMP_TYPE_8)pixel->factors_i[1][3] * src_1[14] + \ (TMP_TYPE_8)pixel->factors_i[2][0] * src_2[2] + \ (TMP_TYPE_8)pixel->factors_i[2][1] * src_2[6] + \ (TMP_TYPE_8)pixel->factors_i[2][2] * src_2[10] + \ (TMP_TYPE_8)pixel->factors_i[2][3] * src_2[14] + \ (TMP_TYPE_8)pixel->factors_i[3][0] * src_3[2] + \ (TMP_TYPE_8)pixel->factors_i[3][1] * src_3[6] + \ (TMP_TYPE_8)pixel->factors_i[3][2] * src_3[10] + \ (TMP_TYPE_8)pixel->factors_i[3][3] * src_3[14]; \ tmp=DOWNSHIFT(tmp,16);\ dst[2] = tmp; #endif #include "transform_c.h" /* transform_uint8_x_4_c */ #define FUNC_NAME transform_uint8_x_4_c #define TYPE uint8_t #define INIT TMP_TYPE_8 tmp; #if NUM_TAPS == 2 #define TRANSFORM \ tmp = (TMP_TYPE_8)pixel->factors_i[0][0] * src_0[0] + \ (TMP_TYPE_8)pixel->factors_i[0][1] * src_0[4] + \ (TMP_TYPE_8)pixel->factors_i[1][0] * src_1[0] + \ (TMP_TYPE_8)pixel->factors_i[1][1] * src_1[4]; \ tmp=DOWNSHIFT(tmp,16);\ dst[0] = tmp; \ tmp = (TMP_TYPE_8)pixel->factors_i[0][0] * src_0[1] + \ (TMP_TYPE_8)pixel->factors_i[0][1] * src_0[5] + \ (TMP_TYPE_8)pixel->factors_i[1][0] * src_1[1] + \ (TMP_TYPE_8)pixel->factors_i[1][1] * src_1[5]; \ tmp=DOWNSHIFT(tmp,16);\ dst[1] = tmp; \ tmp = (TMP_TYPE_8)pixel->factors_i[0][0] * src_0[2] + \ (TMP_TYPE_8)pixel->factors_i[0][1] * src_0[6] + \ (TMP_TYPE_8)pixel->factors_i[1][0] * src_1[2] + \ (TMP_TYPE_8)pixel->factors_i[1][1] * src_1[6]; \ tmp=DOWNSHIFT(tmp,16);\ dst[2] = tmp; \ tmp = (TMP_TYPE_8)pixel->factors_i[0][0] * src_0[3] + \ (TMP_TYPE_8)pixel->factors_i[0][1] * src_0[7] + \ (TMP_TYPE_8)pixel->factors_i[1][0] * src_1[2] + \ (TMP_TYPE_8)pixel->factors_i[1][1] * src_1[7]; \ tmp=DOWNSHIFT(tmp,16);\ dst[3] = tmp; #elif NUM_TAPS == 3 #define TRANSFORM \ tmp = (TMP_TYPE_8)pixel->factors_i[0][0] * src_0[0] + \ (TMP_TYPE_8)pixel->factors_i[0][1] * src_0[4] + \ (TMP_TYPE_8)pixel->factors_i[0][2] * src_0[8] + \ (TMP_TYPE_8)pixel->factors_i[1][0] * src_1[0] + \ (TMP_TYPE_8)pixel->factors_i[1][1] * src_1[4] + \ (TMP_TYPE_8)pixel->factors_i[1][2] * src_1[8] + \ (TMP_TYPE_8)pixel->factors_i[2][0] * src_2[0] + \ (TMP_TYPE_8)pixel->factors_i[2][1] * src_2[4] + \ (TMP_TYPE_8)pixel->factors_i[2][2] * src_2[8]; \ tmp=DOWNSHIFT(tmp,16);\ dst[0] = tmp; \ tmp = (TMP_TYPE_8)pixel->factors_i[0][0] * src_0[1] + \ (TMP_TYPE_8)pixel->factors_i[0][1] * src_0[5] + \ (TMP_TYPE_8)pixel->factors_i[0][2] * src_0[9] + \ (TMP_TYPE_8)pixel->factors_i[1][0] * src_1[1] + \ (TMP_TYPE_8)pixel->factors_i[1][1] * src_1[5] + \ (TMP_TYPE_8)pixel->factors_i[1][2] * src_1[9] + \ (TMP_TYPE_8)pixel->factors_i[2][0] * src_2[1] + \ (TMP_TYPE_8)pixel->factors_i[2][1] * src_2[5] + \ (TMP_TYPE_8)pixel->factors_i[2][2] * src_2[9]; \ tmp=DOWNSHIFT(tmp,16);\ dst[1] = tmp; \ tmp = (TMP_TYPE_8)pixel->factors_i[0][0] * src_0[2] + \ (TMP_TYPE_8)pixel->factors_i[0][1] * src_0[6] + \ (TMP_TYPE_8)pixel->factors_i[0][2] * src_0[10] + \ (TMP_TYPE_8)pixel->factors_i[1][0] * src_1[2] + \ (TMP_TYPE_8)pixel->factors_i[1][1] * src_1[6] + \ (TMP_TYPE_8)pixel->factors_i[1][2] * src_1[10] + \ (TMP_TYPE_8)pixel->factors_i[2][0] * src_2[2] + \ (TMP_TYPE_8)pixel->factors_i[2][1] * src_2[6] + \ (TMP_TYPE_8)pixel->factors_i[2][2] * src_2[10]; \ tmp=DOWNSHIFT(tmp,16);\ dst[2] = tmp; \ tmp = (TMP_TYPE_8)pixel->factors_i[0][0] * src_0[3] + \ (TMP_TYPE_8)pixel->factors_i[0][1] * src_0[7] + \ (TMP_TYPE_8)pixel->factors_i[0][2] * src_0[11] + \ (TMP_TYPE_8)pixel->factors_i[1][0] * src_1[3] + \ (TMP_TYPE_8)pixel->factors_i[1][1] * src_1[7] + \ (TMP_TYPE_8)pixel->factors_i[1][2] * src_1[11] + \ (TMP_TYPE_8)pixel->factors_i[2][0] * src_2[3] + \ (TMP_TYPE_8)pixel->factors_i[2][1] * src_2[7] + \ (TMP_TYPE_8)pixel->factors_i[2][2] * src_2[11]; \ tmp=DOWNSHIFT(tmp,16);\ dst[3] = tmp; #elif NUM_TAPS == 4 #define TRANSFORM \ tmp = (TMP_TYPE_8)pixel->factors_i[0][0] * src_0[0] + \ (TMP_TYPE_8)pixel->factors_i[0][1] * src_0[4] + \ (TMP_TYPE_8)pixel->factors_i[0][2] * src_0[8] + \ (TMP_TYPE_8)pixel->factors_i[0][3] * src_0[12] + \ (TMP_TYPE_8)pixel->factors_i[1][0] * src_1[0] + \ (TMP_TYPE_8)pixel->factors_i[1][1] * src_1[4] + \ (TMP_TYPE_8)pixel->factors_i[1][2] * src_1[8] + \ (TMP_TYPE_8)pixel->factors_i[1][3] * src_1[12] + \ (TMP_TYPE_8)pixel->factors_i[2][0] * src_2[0] + \ (TMP_TYPE_8)pixel->factors_i[2][1] * src_2[4] + \ (TMP_TYPE_8)pixel->factors_i[2][2] * src_2[8] + \ (TMP_TYPE_8)pixel->factors_i[2][3] * src_2[12] + \ (TMP_TYPE_8)pixel->factors_i[3][0] * src_3[0] + \ (TMP_TYPE_8)pixel->factors_i[3][1] * src_3[4] + \ (TMP_TYPE_8)pixel->factors_i[3][2] * src_3[8] + \ (TMP_TYPE_8)pixel->factors_i[3][3] * src_3[12]; \ tmp=DOWNSHIFT(tmp,16);\ dst[0] = tmp; \ tmp = (TMP_TYPE_8)pixel->factors_i[0][0] * src_0[1] + \ (TMP_TYPE_8)pixel->factors_i[0][1] * src_0[5] + \ (TMP_TYPE_8)pixel->factors_i[0][2] * src_0[9] + \ (TMP_TYPE_8)pixel->factors_i[0][3] * src_0[13] + \ (TMP_TYPE_8)pixel->factors_i[1][0] * src_1[1] + \ (TMP_TYPE_8)pixel->factors_i[1][1] * src_1[5] + \ (TMP_TYPE_8)pixel->factors_i[1][2] * src_1[9] + \ (TMP_TYPE_8)pixel->factors_i[1][3] * src_1[13] + \ (TMP_TYPE_8)pixel->factors_i[2][0] * src_2[1] + \ (TMP_TYPE_8)pixel->factors_i[2][1] * src_2[5] + \ (TMP_TYPE_8)pixel->factors_i[2][2] * src_2[9] + \ (TMP_TYPE_8)pixel->factors_i[2][3] * src_2[13] + \ (TMP_TYPE_8)pixel->factors_i[3][0] * src_3[1] + \ (TMP_TYPE_8)pixel->factors_i[3][1] * src_3[5] + \ (TMP_TYPE_8)pixel->factors_i[3][2] * src_3[9] + \ (TMP_TYPE_8)pixel->factors_i[3][3] * src_3[13]; \ tmp=DOWNSHIFT(tmp,16);\ dst[1] = tmp; \ tmp = (TMP_TYPE_8)pixel->factors_i[0][0] * src_0[2] + \ (TMP_TYPE_8)pixel->factors_i[0][1] * src_0[6] + \ (TMP_TYPE_8)pixel->factors_i[0][2] * src_0[10] + \ (TMP_TYPE_8)pixel->factors_i[0][3] * src_0[14] + \ (TMP_TYPE_8)pixel->factors_i[1][0] * src_1[2] + \ (TMP_TYPE_8)pixel->factors_i[1][1] * src_1[6] + \ (TMP_TYPE_8)pixel->factors_i[1][2] * src_1[10] + \ (TMP_TYPE_8)pixel->factors_i[1][3] * src_1[14] + \ (TMP_TYPE_8)pixel->factors_i[2][0] * src_2[2] + \ (TMP_TYPE_8)pixel->factors_i[2][1] * src_2[6] + \ (TMP_TYPE_8)pixel->factors_i[2][2] * src_2[10] + \ (TMP_TYPE_8)pixel->factors_i[2][3] * src_2[14] + \ (TMP_TYPE_8)pixel->factors_i[3][0] * src_3[2] + \ (TMP_TYPE_8)pixel->factors_i[3][1] * src_3[6] + \ (TMP_TYPE_8)pixel->factors_i[3][2] * src_3[10] + \ (TMP_TYPE_8)pixel->factors_i[3][3] * src_3[14]; \ tmp=DOWNSHIFT(tmp,16);\ dst[2] = tmp;\ tmp = (TMP_TYPE_8)pixel->factors_i[0][0] * src_0[3] + \ (TMP_TYPE_8)pixel->factors_i[0][1] * src_0[7] + \ (TMP_TYPE_8)pixel->factors_i[0][2] * src_0[11] + \ (TMP_TYPE_8)pixel->factors_i[0][3] * src_0[15] + \ (TMP_TYPE_8)pixel->factors_i[1][0] * src_1[3] + \ (TMP_TYPE_8)pixel->factors_i[1][1] * src_1[7] + \ (TMP_TYPE_8)pixel->factors_i[1][2] * src_1[11] + \ (TMP_TYPE_8)pixel->factors_i[1][3] * src_1[15] + \ (TMP_TYPE_8)pixel->factors_i[2][0] * src_2[3] + \ (TMP_TYPE_8)pixel->factors_i[2][1] * src_2[7] + \ (TMP_TYPE_8)pixel->factors_i[2][2] * src_2[11] + \ (TMP_TYPE_8)pixel->factors_i[2][3] * src_2[15] + \ (TMP_TYPE_8)pixel->factors_i[3][0] * src_3[3] + \ (TMP_TYPE_8)pixel->factors_i[3][1] * src_3[7] + \ (TMP_TYPE_8)pixel->factors_i[3][2] * src_3[11] + \ (TMP_TYPE_8)pixel->factors_i[3][3] * src_3[15]; \ tmp=DOWNSHIFT(tmp,16);\ dst[3] = tmp; #endif #include "transform_c.h" /* transform_uint16_x_1_c */ #define FUNC_NAME transform_uint16_x_1_c #define TYPE uint16_t #define INIT TMP_TYPE_16 tmp; #if NUM_TAPS == 2 #define TRANSFORM \ tmp = (TMP_TYPE_16)pixel->factors_i[0][0] * src_0[0] + \ (TMP_TYPE_16)pixel->factors_i[0][1] * src_0[1] + \ (TMP_TYPE_16)pixel->factors_i[1][0] * src_1[0] + \ (TMP_TYPE_16)pixel->factors_i[1][1] * src_1[1]; \ tmp=DOWNSHIFT(tmp,16);\ dst[0] = tmp; #elif NUM_TAPS == 3 #define TRANSFORM \ tmp = (TMP_TYPE_16)pixel->factors_i[0][0] * src_0[0] + \ (TMP_TYPE_16)pixel->factors_i[0][1] * src_0[1] + \ (TMP_TYPE_16)pixel->factors_i[0][2] * src_0[2] + \ (TMP_TYPE_16)pixel->factors_i[1][0] * src_1[0] + \ (TMP_TYPE_16)pixel->factors_i[1][1] * src_1[1] + \ (TMP_TYPE_16)pixel->factors_i[1][2] * src_1[2] + \ (TMP_TYPE_16)pixel->factors_i[2][0] * src_2[0] + \ (TMP_TYPE_16)pixel->factors_i[2][1] * src_2[1] + \ (TMP_TYPE_16)pixel->factors_i[2][2] * src_2[2]; \ tmp=DOWNSHIFT(tmp,16);\ dst[0] = tmp; #elif NUM_TAPS == 4 #define TRANSFORM \ tmp = (TMP_TYPE_16)pixel->factors_i[0][0] * src_0[0] + \ (TMP_TYPE_16)pixel->factors_i[0][1] * src_0[1] + \ (TMP_TYPE_16)pixel->factors_i[0][2] * src_0[2] + \ (TMP_TYPE_16)pixel->factors_i[0][3] * src_0[3] + \ (TMP_TYPE_16)pixel->factors_i[1][0] * src_1[0] + \ (TMP_TYPE_16)pixel->factors_i[1][1] * src_1[1] + \ (TMP_TYPE_16)pixel->factors_i[1][2] * src_1[2] + \ (TMP_TYPE_16)pixel->factors_i[1][3] * src_1[3] + \ (TMP_TYPE_16)pixel->factors_i[2][0] * src_2[0] + \ (TMP_TYPE_16)pixel->factors_i[2][1] * src_2[1] + \ (TMP_TYPE_16)pixel->factors_i[2][2] * src_2[2] + \ (TMP_TYPE_16)pixel->factors_i[2][3] * src_2[3] + \ (TMP_TYPE_16)pixel->factors_i[3][0] * src_3[0] + \ (TMP_TYPE_16)pixel->factors_i[3][1] * src_3[1] + \ (TMP_TYPE_16)pixel->factors_i[3][2] * src_3[2] + \ (TMP_TYPE_16)pixel->factors_i[3][3] * src_3[3]; \ tmp=DOWNSHIFT(tmp,16);\ dst[0] = tmp; #endif #include "transform_c.h" /* transform_uint16_x_2_c */ #define FUNC_NAME transform_uint16_x_2_c #define TYPE uint16_t #define INIT TMP_TYPE_16 tmp; #if NUM_TAPS == 2 #define TRANSFORM \ tmp = (TMP_TYPE_16)pixel->factors_i[0][0] * src_0[0] + \ (TMP_TYPE_16)pixel->factors_i[0][1] * src_0[2] + \ (TMP_TYPE_16)pixel->factors_i[1][0] * src_1[0] + \ (TMP_TYPE_16)pixel->factors_i[1][1] * src_1[2]; \ tmp=DOWNSHIFT(tmp,16);\ dst[0] = tmp; \ tmp = (TMP_TYPE_16)pixel->factors_i[0][0] * src_0[1] + \ (TMP_TYPE_16)pixel->factors_i[0][1] * src_0[3] + \ (TMP_TYPE_16)pixel->factors_i[1][0] * src_1[1] + \ (TMP_TYPE_16)pixel->factors_i[1][1] * src_1[3]; \ tmp=DOWNSHIFT(tmp,16);\ dst[1] = tmp; #elif NUM_TAPS == 3 #define TRANSFORM \ tmp = (TMP_TYPE_16)pixel->factors_i[0][0] * src_0[0] + \ (TMP_TYPE_16)pixel->factors_i[0][1] * src_0[2] + \ (TMP_TYPE_16)pixel->factors_i[0][2] * src_0[4] + \ (TMP_TYPE_16)pixel->factors_i[1][0] * src_1[0] + \ (TMP_TYPE_16)pixel->factors_i[1][1] * src_1[2] + \ (TMP_TYPE_16)pixel->factors_i[1][2] * src_1[4] + \ (TMP_TYPE_16)pixel->factors_i[2][0] * src_2[0] + \ (TMP_TYPE_16)pixel->factors_i[2][1] * src_2[2] + \ (TMP_TYPE_16)pixel->factors_i[2][2] * src_2[4]; \ tmp=DOWNSHIFT(tmp,16);\ dst[0] = tmp; \ tmp = (TMP_TYPE_16)pixel->factors_i[0][0] * src_0[1] + \ (TMP_TYPE_16)pixel->factors_i[0][1] * src_0[3] + \ (TMP_TYPE_16)pixel->factors_i[0][2] * src_0[5] + \ (TMP_TYPE_16)pixel->factors_i[1][0] * src_1[1] + \ (TMP_TYPE_16)pixel->factors_i[1][1] * src_1[3] + \ (TMP_TYPE_16)pixel->factors_i[1][2] * src_1[5] + \ (TMP_TYPE_16)pixel->factors_i[2][0] * src_2[1] + \ (TMP_TYPE_16)pixel->factors_i[2][1] * src_2[3] + \ (TMP_TYPE_16)pixel->factors_i[2][2] * src_2[5]; \ tmp=DOWNSHIFT(tmp,16);\ dst[1] = tmp; #elif NUM_TAPS == 4 #define TRANSFORM \ tmp = (TMP_TYPE_16)pixel->factors_i[0][0] * src_0[0] + \ (TMP_TYPE_16)pixel->factors_i[0][1] * src_0[2] + \ (TMP_TYPE_16)pixel->factors_i[0][2] * src_0[4] + \ (TMP_TYPE_16)pixel->factors_i[0][3] * src_0[6] + \ (TMP_TYPE_16)pixel->factors_i[1][0] * src_1[0] + \ (TMP_TYPE_16)pixel->factors_i[1][1] * src_1[2] + \ (TMP_TYPE_16)pixel->factors_i[1][2] * src_1[4] + \ (TMP_TYPE_16)pixel->factors_i[1][3] * src_1[6] + \ (TMP_TYPE_16)pixel->factors_i[2][0] * src_2[0] + \ (TMP_TYPE_16)pixel->factors_i[2][1] * src_2[2] + \ (TMP_TYPE_16)pixel->factors_i[2][2] * src_2[4] + \ (TMP_TYPE_16)pixel->factors_i[2][3] * src_2[6] + \ (TMP_TYPE_16)pixel->factors_i[3][0] * src_3[0] + \ (TMP_TYPE_16)pixel->factors_i[3][1] * src_3[2] + \ (TMP_TYPE_16)pixel->factors_i[3][2] * src_3[4] + \ (TMP_TYPE_16)pixel->factors_i[3][3] * src_3[6]; \ tmp=DOWNSHIFT(tmp,16);\ dst[0] = tmp; \ tmp = (TMP_TYPE_16)pixel->factors_i[0][0] * src_0[1] + \ (TMP_TYPE_16)pixel->factors_i[0][1] * src_0[3] + \ (TMP_TYPE_16)pixel->factors_i[0][2] * src_0[5] + \ (TMP_TYPE_16)pixel->factors_i[0][3] * src_0[7] + \ (TMP_TYPE_16)pixel->factors_i[1][0] * src_1[1] + \ (TMP_TYPE_16)pixel->factors_i[1][1] * src_1[3] + \ (TMP_TYPE_16)pixel->factors_i[1][2] * src_1[5] + \ (TMP_TYPE_16)pixel->factors_i[1][3] * src_1[7] + \ (TMP_TYPE_16)pixel->factors_i[2][0] * src_2[1] + \ (TMP_TYPE_16)pixel->factors_i[2][1] * src_2[3] + \ (TMP_TYPE_16)pixel->factors_i[2][2] * src_2[5] + \ (TMP_TYPE_16)pixel->factors_i[2][3] * src_2[7] + \ (TMP_TYPE_16)pixel->factors_i[3][0] * src_3[1] + \ (TMP_TYPE_16)pixel->factors_i[3][1] * src_3[3] + \ (TMP_TYPE_16)pixel->factors_i[3][2] * src_3[5] + \ (TMP_TYPE_16)pixel->factors_i[3][3] * src_3[7]; \ tmp=DOWNSHIFT(tmp,16);\ dst[1] = tmp; #endif #include "transform_c.h" /* transform_uint16_x_3_c */ #define FUNC_NAME transform_uint16_x_3_c #define TYPE uint16_t #define INIT TMP_TYPE_16 tmp; #if NUM_TAPS == 2 #define TRANSFORM \ tmp = (TMP_TYPE_16)pixel->factors_i[0][0] * src_0[0] + \ (TMP_TYPE_16)pixel->factors_i[0][1] * src_0[3] + \ (TMP_TYPE_16)pixel->factors_i[1][0] * src_1[0] + \ (TMP_TYPE_16)pixel->factors_i[1][1] * src_1[3]; \ tmp=DOWNSHIFT(tmp,16);\ dst[0] = tmp; \ tmp = (TMP_TYPE_16)pixel->factors_i[0][0] * src_0[1] + \ (TMP_TYPE_16)pixel->factors_i[0][1] * src_0[4] + \ (TMP_TYPE_16)pixel->factors_i[1][0] * src_1[1] + \ (TMP_TYPE_16)pixel->factors_i[1][1] * src_1[4]; \ tmp=DOWNSHIFT(tmp,16);\ dst[1] = tmp; \ tmp = (TMP_TYPE_16)pixel->factors_i[0][0] * src_0[2] + \ (TMP_TYPE_16)pixel->factors_i[0][1] * src_0[5] + \ (TMP_TYPE_16)pixel->factors_i[1][0] * src_1[2] + \ (TMP_TYPE_16)pixel->factors_i[1][1] * src_1[5]; \ tmp=DOWNSHIFT(tmp,16);\ dst[2] = tmp; #elif NUM_TAPS == 3 #define TRANSFORM \ tmp = (TMP_TYPE_16)pixel->factors_i[0][0] * src_0[0] + \ (TMP_TYPE_16)pixel->factors_i[0][1] * src_0[3] + \ (TMP_TYPE_16)pixel->factors_i[0][2] * src_0[6] + \ (TMP_TYPE_16)pixel->factors_i[1][0] * src_1[0] + \ (TMP_TYPE_16)pixel->factors_i[1][1] * src_1[3] + \ (TMP_TYPE_16)pixel->factors_i[1][2] * src_1[6] + \ (TMP_TYPE_16)pixel->factors_i[2][0] * src_2[0] + \ (TMP_TYPE_16)pixel->factors_i[2][1] * src_2[3] + \ (TMP_TYPE_16)pixel->factors_i[2][2] * src_2[6]; \ tmp=DOWNSHIFT(tmp,16);\ dst[0] = tmp; \ tmp = (TMP_TYPE_16)pixel->factors_i[0][0] * src_0[1] + \ (TMP_TYPE_16)pixel->factors_i[0][1] * src_0[4] + \ (TMP_TYPE_16)pixel->factors_i[0][2] * src_0[7] + \ (TMP_TYPE_16)pixel->factors_i[1][0] * src_1[1] + \ (TMP_TYPE_16)pixel->factors_i[1][1] * src_1[4] + \ (TMP_TYPE_16)pixel->factors_i[1][2] * src_1[7] + \ (TMP_TYPE_16)pixel->factors_i[2][0] * src_2[1] + \ (TMP_TYPE_16)pixel->factors_i[2][1] * src_2[4] + \ (TMP_TYPE_16)pixel->factors_i[2][2] * src_2[7]; \ tmp=DOWNSHIFT(tmp,16);\ dst[1] = tmp; \ tmp = (TMP_TYPE_16)pixel->factors_i[0][0] * src_0[2] + \ (TMP_TYPE_16)pixel->factors_i[0][1] * src_0[5] + \ (TMP_TYPE_16)pixel->factors_i[0][2] * src_0[8] + \ (TMP_TYPE_16)pixel->factors_i[1][0] * src_1[2] + \ (TMP_TYPE_16)pixel->factors_i[1][1] * src_1[5] + \ (TMP_TYPE_16)pixel->factors_i[1][2] * src_1[8] + \ (TMP_TYPE_16)pixel->factors_i[2][0] * src_2[2] + \ (TMP_TYPE_16)pixel->factors_i[2][1] * src_2[5] + \ (TMP_TYPE_16)pixel->factors_i[2][2] * src_2[8]; \ tmp=DOWNSHIFT(tmp,16);\ dst[2] = tmp; #elif NUM_TAPS == 4 #define TRANSFORM \ tmp = (TMP_TYPE_16)pixel->factors_i[0][0] * src_0[0] + \ (TMP_TYPE_16)pixel->factors_i[0][1] * src_0[3] + \ (TMP_TYPE_16)pixel->factors_i[0][2] * src_0[6] + \ (TMP_TYPE_16)pixel->factors_i[0][3] * src_0[9] + \ (TMP_TYPE_16)pixel->factors_i[1][0] * src_1[0] + \ (TMP_TYPE_16)pixel->factors_i[1][1] * src_1[3] + \ (TMP_TYPE_16)pixel->factors_i[1][2] * src_1[6] + \ (TMP_TYPE_16)pixel->factors_i[1][3] * src_1[9] + \ (TMP_TYPE_16)pixel->factors_i[2][0] * src_2[0] + \ (TMP_TYPE_16)pixel->factors_i[2][1] * src_2[3] + \ (TMP_TYPE_16)pixel->factors_i[2][2] * src_2[6] + \ (TMP_TYPE_16)pixel->factors_i[2][3] * src_2[9] + \ (TMP_TYPE_16)pixel->factors_i[3][0] * src_3[0] + \ (TMP_TYPE_16)pixel->factors_i[3][1] * src_3[3] + \ (TMP_TYPE_16)pixel->factors_i[3][2] * src_3[6] + \ (TMP_TYPE_16)pixel->factors_i[3][3] * src_3[9]; \ tmp=DOWNSHIFT(tmp,16);\ dst[0] = tmp; \ tmp = (TMP_TYPE_16)pixel->factors_i[0][0] * src_0[1] + \ (TMP_TYPE_16)pixel->factors_i[0][1] * src_0[4] + \ (TMP_TYPE_16)pixel->factors_i[0][2] * src_0[7] + \ (TMP_TYPE_16)pixel->factors_i[0][3] * src_0[10] + \ (TMP_TYPE_16)pixel->factors_i[1][0] * src_1[1] + \ (TMP_TYPE_16)pixel->factors_i[1][1] * src_1[4] + \ (TMP_TYPE_16)pixel->factors_i[1][2] * src_1[7] + \ (TMP_TYPE_16)pixel->factors_i[1][3] * src_1[10] + \ (TMP_TYPE_16)pixel->factors_i[2][0] * src_2[1] + \ (TMP_TYPE_16)pixel->factors_i[2][1] * src_2[4] + \ (TMP_TYPE_16)pixel->factors_i[2][2] * src_2[7] + \ (TMP_TYPE_16)pixel->factors_i[2][3] * src_2[10] + \ (TMP_TYPE_16)pixel->factors_i[3][0] * src_3[1] + \ (TMP_TYPE_16)pixel->factors_i[3][1] * src_3[4] + \ (TMP_TYPE_16)pixel->factors_i[3][2] * src_3[7] + \ (TMP_TYPE_16)pixel->factors_i[3][3] * src_3[10]; \ tmp=DOWNSHIFT(tmp,16);\ dst[1] = tmp; \ tmp = (TMP_TYPE_16)pixel->factors_i[0][0] * src_0[2] + \ (TMP_TYPE_16)pixel->factors_i[0][1] * src_0[5] + \ (TMP_TYPE_16)pixel->factors_i[0][2] * src_0[8] + \ (TMP_TYPE_16)pixel->factors_i[0][3] * src_0[11] + \ (TMP_TYPE_16)pixel->factors_i[1][0] * src_1[2] + \ (TMP_TYPE_16)pixel->factors_i[1][1] * src_1[5] + \ (TMP_TYPE_16)pixel->factors_i[1][2] * src_1[8] + \ (TMP_TYPE_16)pixel->factors_i[1][3] * src_1[11] + \ (TMP_TYPE_16)pixel->factors_i[2][0] * src_2[2] + \ (TMP_TYPE_16)pixel->factors_i[2][1] * src_2[5] + \ (TMP_TYPE_16)pixel->factors_i[2][2] * src_2[8] + \ (TMP_TYPE_16)pixel->factors_i[2][3] * src_2[11] + \ (TMP_TYPE_16)pixel->factors_i[3][0] * src_3[2] + \ (TMP_TYPE_16)pixel->factors_i[3][1] * src_3[5] + \ (TMP_TYPE_16)pixel->factors_i[3][2] * src_3[8] + \ (TMP_TYPE_16)pixel->factors_i[3][3] * src_3[11]; \ tmp=DOWNSHIFT(tmp,16);\ dst[2] = tmp; #endif #include "transform_c.h" /* transform_uint16_x_4_c */ #define FUNC_NAME transform_uint16_x_4_c #define TYPE uint16_t #define INIT TMP_TYPE_16 tmp; #if NUM_TAPS == 2 #define TRANSFORM \ tmp = (TMP_TYPE_16)pixel->factors_i[0][0] * src_0[0] + \ (TMP_TYPE_16)pixel->factors_i[0][1] * src_0[4] + \ (TMP_TYPE_16)pixel->factors_i[1][0] * src_1[0] + \ (TMP_TYPE_16)pixel->factors_i[1][1] * src_1[4]; \ tmp=DOWNSHIFT(tmp,16);\ dst[0] = tmp; \ tmp = (TMP_TYPE_16)pixel->factors_i[0][0] * src_0[1] + \ (TMP_TYPE_16)pixel->factors_i[0][1] * src_0[5] + \ (TMP_TYPE_16)pixel->factors_i[1][0] * src_1[1] + \ (TMP_TYPE_16)pixel->factors_i[1][1] * src_1[5]; \ tmp=DOWNSHIFT(tmp,16);\ dst[1] = tmp; \ tmp = (TMP_TYPE_16)pixel->factors_i[0][0] * src_0[2] + \ (TMP_TYPE_16)pixel->factors_i[0][1] * src_0[6] + \ (TMP_TYPE_16)pixel->factors_i[1][0] * src_1[2] + \ (TMP_TYPE_16)pixel->factors_i[1][1] * src_1[6]; \ tmp=DOWNSHIFT(tmp,16);\ dst[2] = tmp; \ tmp = (TMP_TYPE_16)pixel->factors_i[0][0] * src_0[3] + \ (TMP_TYPE_16)pixel->factors_i[0][1] * src_0[7] + \ (TMP_TYPE_16)pixel->factors_i[1][0] * src_1[2] + \ (TMP_TYPE_16)pixel->factors_i[1][1] * src_1[7]; \ tmp=DOWNSHIFT(tmp,16);\ dst[3] = tmp; #elif NUM_TAPS == 3 #define TRANSFORM \ tmp = (TMP_TYPE_16)pixel->factors_i[0][0] * src_0[0] + \ (TMP_TYPE_16)pixel->factors_i[0][1] * src_0[4] + \ (TMP_TYPE_16)pixel->factors_i[0][2] * src_0[8] + \ (TMP_TYPE_16)pixel->factors_i[1][0] * src_1[0] + \ (TMP_TYPE_16)pixel->factors_i[1][1] * src_1[4] + \ (TMP_TYPE_16)pixel->factors_i[1][2] * src_1[8] + \ (TMP_TYPE_16)pixel->factors_i[2][0] * src_2[0] + \ (TMP_TYPE_16)pixel->factors_i[2][1] * src_2[4] + \ (TMP_TYPE_16)pixel->factors_i[2][2] * src_2[8]; \ tmp=DOWNSHIFT(tmp,16);\ dst[0] = tmp; \ tmp = (TMP_TYPE_16)pixel->factors_i[0][0] * src_0[1] + \ (TMP_TYPE_16)pixel->factors_i[0][1] * src_0[5] + \ (TMP_TYPE_16)pixel->factors_i[0][2] * src_0[9] + \ (TMP_TYPE_16)pixel->factors_i[1][0] * src_1[1] + \ (TMP_TYPE_16)pixel->factors_i[1][1] * src_1[5] + \ (TMP_TYPE_16)pixel->factors_i[1][2] * src_1[9] + \ (TMP_TYPE_16)pixel->factors_i[2][0] * src_2[1] + \ (TMP_TYPE_16)pixel->factors_i[2][1] * src_2[5] + \ (TMP_TYPE_16)pixel->factors_i[2][2] * src_2[9]; \ tmp=DOWNSHIFT(tmp,16);\ dst[1] = tmp; \ tmp = (TMP_TYPE_16)pixel->factors_i[0][0] * src_0[2] + \ (TMP_TYPE_16)pixel->factors_i[0][1] * src_0[6] + \ (TMP_TYPE_16)pixel->factors_i[0][2] * src_0[10] + \ (TMP_TYPE_16)pixel->factors_i[1][0] * src_1[2] + \ (TMP_TYPE_16)pixel->factors_i[1][1] * src_1[6] + \ (TMP_TYPE_16)pixel->factors_i[1][2] * src_1[10] + \ (TMP_TYPE_16)pixel->factors_i[2][0] * src_2[2] + \ (TMP_TYPE_16)pixel->factors_i[2][1] * src_2[6] + \ (TMP_TYPE_16)pixel->factors_i[2][2] * src_2[10]; \ tmp=DOWNSHIFT(tmp,16);\ dst[2] = tmp; \ tmp = (TMP_TYPE_16)pixel->factors_i[0][0] * src_0[3] + \ (TMP_TYPE_16)pixel->factors_i[0][1] * src_0[7] + \ (TMP_TYPE_16)pixel->factors_i[0][2] * src_0[11] + \ (TMP_TYPE_16)pixel->factors_i[1][0] * src_1[3] + \ (TMP_TYPE_16)pixel->factors_i[1][1] * src_1[7] + \ (TMP_TYPE_16)pixel->factors_i[1][2] * src_1[11] + \ (TMP_TYPE_16)pixel->factors_i[2][0] * src_2[3] + \ (TMP_TYPE_16)pixel->factors_i[2][1] * src_2[7] + \ (TMP_TYPE_16)pixel->factors_i[2][2] * src_2[11]; \ tmp=DOWNSHIFT(tmp,16);\ dst[2] = tmp; #elif NUM_TAPS == 4 #define TRANSFORM \ tmp = (TMP_TYPE_16)pixel->factors_i[0][0] * src_0[0] + \ (TMP_TYPE_16)pixel->factors_i[0][1] * src_0[4] + \ (TMP_TYPE_16)pixel->factors_i[0][2] * src_0[8] + \ (TMP_TYPE_16)pixel->factors_i[0][3] * src_0[12] + \ (TMP_TYPE_16)pixel->factors_i[1][0] * src_1[0] + \ (TMP_TYPE_16)pixel->factors_i[1][1] * src_1[4] + \ (TMP_TYPE_16)pixel->factors_i[1][2] * src_1[8] + \ (TMP_TYPE_16)pixel->factors_i[1][3] * src_1[12] + \ (TMP_TYPE_16)pixel->factors_i[2][0] * src_2[0] + \ (TMP_TYPE_16)pixel->factors_i[2][1] * src_2[4] + \ (TMP_TYPE_16)pixel->factors_i[2][2] * src_2[8] + \ (TMP_TYPE_16)pixel->factors_i[2][3] * src_2[12] + \ (TMP_TYPE_16)pixel->factors_i[3][0] * src_3[0] + \ (TMP_TYPE_16)pixel->factors_i[3][1] * src_3[4] + \ (TMP_TYPE_16)pixel->factors_i[3][2] * src_3[8] + \ (TMP_TYPE_16)pixel->factors_i[3][3] * src_3[12]; \ tmp=DOWNSHIFT(tmp,16);\ dst[0] = tmp; \ tmp = (TMP_TYPE_16)pixel->factors_i[0][0] * src_0[1] + \ (TMP_TYPE_16)pixel->factors_i[0][1] * src_0[5] + \ (TMP_TYPE_16)pixel->factors_i[0][2] * src_0[9] + \ (TMP_TYPE_16)pixel->factors_i[0][3] * src_0[13] + \ (TMP_TYPE_16)pixel->factors_i[1][0] * src_1[1] + \ (TMP_TYPE_16)pixel->factors_i[1][1] * src_1[5] + \ (TMP_TYPE_16)pixel->factors_i[1][2] * src_1[9] + \ (TMP_TYPE_16)pixel->factors_i[1][3] * src_1[13] + \ (TMP_TYPE_16)pixel->factors_i[2][0] * src_2[1] + \ (TMP_TYPE_16)pixel->factors_i[2][1] * src_2[5] + \ (TMP_TYPE_16)pixel->factors_i[2][2] * src_2[9] + \ (TMP_TYPE_16)pixel->factors_i[2][3] * src_2[13] + \ (TMP_TYPE_16)pixel->factors_i[3][0] * src_3[1] + \ (TMP_TYPE_16)pixel->factors_i[3][1] * src_3[5] + \ (TMP_TYPE_16)pixel->factors_i[3][2] * src_3[9] + \ (TMP_TYPE_16)pixel->factors_i[3][3] * src_3[13]; \ tmp=DOWNSHIFT(tmp,16);\ dst[1] = tmp; \ tmp = (TMP_TYPE_16)pixel->factors_i[0][0] * src_0[2] + \ (TMP_TYPE_16)pixel->factors_i[0][1] * src_0[6] + \ (TMP_TYPE_16)pixel->factors_i[0][2] * src_0[10] + \ (TMP_TYPE_16)pixel->factors_i[0][3] * src_0[14] + \ (TMP_TYPE_16)pixel->factors_i[1][0] * src_1[2] + \ (TMP_TYPE_16)pixel->factors_i[1][1] * src_1[6] + \ (TMP_TYPE_16)pixel->factors_i[1][2] * src_1[10] + \ (TMP_TYPE_16)pixel->factors_i[1][3] * src_1[14] + \ (TMP_TYPE_16)pixel->factors_i[2][0] * src_2[2] + \ (TMP_TYPE_16)pixel->factors_i[2][1] * src_2[6] + \ (TMP_TYPE_16)pixel->factors_i[2][2] * src_2[10] + \ (TMP_TYPE_16)pixel->factors_i[2][3] * src_2[14] + \ (TMP_TYPE_16)pixel->factors_i[3][0] * src_3[2] + \ (TMP_TYPE_16)pixel->factors_i[3][1] * src_3[6] + \ (TMP_TYPE_16)pixel->factors_i[3][2] * src_3[10] + \ (TMP_TYPE_16)pixel->factors_i[3][3] * src_3[14]; \ tmp=DOWNSHIFT(tmp,16);\ dst[2] = tmp;\ tmp = (TMP_TYPE_16)pixel->factors_i[0][0] * src_0[3] + \ (TMP_TYPE_16)pixel->factors_i[0][1] * src_0[7] + \ (TMP_TYPE_16)pixel->factors_i[0][2] * src_0[11] + \ (TMP_TYPE_16)pixel->factors_i[0][3] * src_0[15] + \ (TMP_TYPE_16)pixel->factors_i[1][0] * src_1[3] + \ (TMP_TYPE_16)pixel->factors_i[1][1] * src_1[7] + \ (TMP_TYPE_16)pixel->factors_i[1][2] * src_1[11] + \ (TMP_TYPE_16)pixel->factors_i[1][3] * src_1[15] + \ (TMP_TYPE_16)pixel->factors_i[2][0] * src_2[3] + \ (TMP_TYPE_16)pixel->factors_i[2][1] * src_2[7] + \ (TMP_TYPE_16)pixel->factors_i[2][2] * src_2[11] + \ (TMP_TYPE_16)pixel->factors_i[2][3] * src_2[15] + \ (TMP_TYPE_16)pixel->factors_i[3][0] * src_3[3] + \ (TMP_TYPE_16)pixel->factors_i[3][1] * src_3[7] + \ (TMP_TYPE_16)pixel->factors_i[3][2] * src_3[11] + \ (TMP_TYPE_16)pixel->factors_i[3][3] * src_3[15]; \ tmp=DOWNSHIFT(tmp,16);\ dst[3] = tmp; #endif #include "transform_c.h" #define FUNC_NAME transform_float_x_1_c #define TYPE float #if NUM_TAPS == 2 #define TRANSFORM \ dst[0] = pixel->factors[0][0] * src_0[0] + \ pixel->factors[0][1] * src_0[1] + \ pixel->factors[1][0] * src_1[0] + \ pixel->factors[1][1] * src_1[1]; #elif NUM_TAPS == 3 #define TRANSFORM \ dst[0] = pixel->factors[0][0] * src_0[0] + \ pixel->factors[0][1] * src_0[1] + \ pixel->factors[0][2] * src_0[2] + \ pixel->factors[1][0] * src_1[0] + \ pixel->factors[1][1] * src_1[1] + \ pixel->factors[1][2] * src_1[2] + \ pixel->factors[2][0] * src_2[0] + \ pixel->factors[2][1] * src_2[1] + \ pixel->factors[2][2] * src_2[2]; #elif NUM_TAPS == 4 #define TRANSFORM \ dst[0] = pixel->factors[0][0] * src_0[0] + \ pixel->factors[0][1] * src_0[1] + \ pixel->factors[0][2] * src_0[2] + \ pixel->factors[0][3] * src_0[3] + \ pixel->factors[1][0] * src_1[0] + \ pixel->factors[1][1] * src_1[1] + \ pixel->factors[1][2] * src_1[2] + \ pixel->factors[1][3] * src_1[3] + \ pixel->factors[2][0] * src_2[0] + \ pixel->factors[2][1] * src_2[1] + \ pixel->factors[2][2] * src_2[2] + \ pixel->factors[2][3] * src_2[3] + \ pixel->factors[3][0] * src_3[0] + \ pixel->factors[3][1] * src_3[1] + \ pixel->factors[3][2] * src_3[2] + \ pixel->factors[3][3] * src_3[3]; #endif #include "transform_c.h" #define FUNC_NAME transform_float_x_2_c #define TYPE float #if NUM_TAPS == 2 #define TRANSFORM \ dst[0] = pixel->factors[0][0] * src_0[0] + \ pixel->factors[0][1] * src_0[2] + \ pixel->factors[1][0] * src_1[0] + \ pixel->factors[1][1] * src_1[2]; \ dst[1] = pixel->factors[0][0] * src_0[1] + \ pixel->factors[0][1] * src_0[3] + \ pixel->factors[1][0] * src_1[1] + \ pixel->factors[1][1] * src_1[3]; #elif NUM_TAPS == 3 #define TRANSFORM \ dst[0] = pixel->factors[0][0] * src_0[0] + \ pixel->factors[0][1] * src_0[2] + \ pixel->factors[0][2] * src_0[4] + \ pixel->factors[1][0] * src_1[0] + \ pixel->factors[1][1] * src_1[2] + \ pixel->factors[1][2] * src_1[4] + \ pixel->factors[2][0] * src_2[0] + \ pixel->factors[2][1] * src_2[2] + \ pixel->factors[2][2] * src_2[4];\ dst[1] = pixel->factors[0][0] * src_0[1] + \ pixel->factors[0][1] * src_0[3] + \ pixel->factors[0][2] * src_0[5] + \ pixel->factors[1][0] * src_1[1] + \ pixel->factors[1][1] * src_1[3] + \ pixel->factors[1][2] * src_1[5] + \ pixel->factors[2][0] * src_2[1] + \ pixel->factors[2][1] * src_2[3] + \ pixel->factors[2][2] * src_2[5]; #elif NUM_TAPS == 4 #define TRANSFORM \ dst[0] = pixel->factors[0][0] * src_0[0] + \ pixel->factors[0][1] * src_0[2] + \ pixel->factors[0][2] * src_0[4] + \ pixel->factors[0][3] * src_0[6] + \ pixel->factors[1][0] * src_1[0] + \ pixel->factors[1][1] * src_1[2] + \ pixel->factors[1][2] * src_1[4] + \ pixel->factors[1][3] * src_1[6] + \ pixel->factors[2][0] * src_2[0] + \ pixel->factors[2][1] * src_2[2] + \ pixel->factors[2][2] * src_2[4] + \ pixel->factors[2][3] * src_2[6] + \ pixel->factors[3][0] * src_3[0] + \ pixel->factors[3][1] * src_3[2] + \ pixel->factors[3][2] * src_3[4] + \ pixel->factors[3][3] * src_3[6];\ dst[1] = pixel->factors[0][0] * src_0[1] + \ pixel->factors[0][1] * src_0[3] + \ pixel->factors[0][2] * src_0[5] + \ pixel->factors[0][3] * src_0[7] + \ pixel->factors[1][0] * src_1[1] + \ pixel->factors[1][1] * src_1[3] + \ pixel->factors[1][2] * src_1[5] + \ pixel->factors[1][3] * src_1[7] + \ pixel->factors[2][0] * src_2[1] + \ pixel->factors[2][1] * src_2[3] + \ pixel->factors[2][2] * src_2[5] + \ pixel->factors[2][3] * src_2[7] + \ pixel->factors[3][0] * src_3[1] + \ pixel->factors[3][1] * src_3[3] + \ pixel->factors[3][2] * src_3[5] + \ pixel->factors[3][3] * src_3[7]; #endif #include "transform_c.h" #define FUNC_NAME transform_float_x_3_c #define TYPE float #if NUM_TAPS == 2 #define TRANSFORM \ dst[0] = pixel->factors[0][0] * src_0[0] + \ pixel->factors[0][1] * src_0[3] + \ pixel->factors[1][0] * src_1[0] + \ pixel->factors[1][1] * src_1[3]; \ dst[1] = pixel->factors[0][0] * src_0[1] + \ pixel->factors[0][1] * src_0[4] + \ pixel->factors[1][0] * src_1[1] + \ pixel->factors[1][1] * src_1[4];\ dst[2] = pixel->factors[0][0] * src_0[2] + \ pixel->factors[0][1] * src_0[5] + \ pixel->factors[1][0] * src_1[2] + \ pixel->factors[1][1] * src_1[5]; #elif NUM_TAPS == 3 #define TRANSFORM \ dst[0] = pixel->factors[0][0] * src_0[0] + \ pixel->factors[0][1] * src_0[3] + \ pixel->factors[0][2] * src_0[6] + \ pixel->factors[1][0] * src_1[0] + \ pixel->factors[1][1] * src_1[3] + \ pixel->factors[1][2] * src_1[6] + \ pixel->factors[2][0] * src_2[0] + \ pixel->factors[2][1] * src_2[3] + \ pixel->factors[2][2] * src_2[6];\ dst[1] = pixel->factors[0][0] * src_0[1] + \ pixel->factors[0][1] * src_0[4] + \ pixel->factors[0][2] * src_0[7] + \ pixel->factors[1][0] * src_1[1] + \ pixel->factors[1][1] * src_1[4] + \ pixel->factors[1][2] * src_1[7] + \ pixel->factors[2][0] * src_2[1] + \ pixel->factors[2][1] * src_2[4] + \ pixel->factors[2][2] * src_2[7];\ dst[2] = pixel->factors[0][0] * src_0[2] + \ pixel->factors[0][1] * src_0[5] + \ pixel->factors[0][2] * src_0[8] + \ pixel->factors[1][0] * src_1[2] + \ pixel->factors[1][1] * src_1[5] + \ pixel->factors[1][2] * src_1[8] + \ pixel->factors[2][0] * src_2[2] + \ pixel->factors[2][1] * src_2[5] + \ pixel->factors[2][2] * src_2[8]; #elif NUM_TAPS == 4 #define TRANSFORM \ dst[0] = pixel->factors[0][0] * src_0[0] + \ pixel->factors[0][1] * src_0[3] + \ pixel->factors[0][2] * src_0[6] + \ pixel->factors[0][3] * src_0[9] + \ pixel->factors[1][0] * src_1[0] + \ pixel->factors[1][1] * src_1[3] + \ pixel->factors[1][2] * src_1[6] + \ pixel->factors[1][3] * src_1[9] + \ pixel->factors[2][0] * src_2[0] + \ pixel->factors[2][1] * src_2[3] + \ pixel->factors[2][2] * src_2[6] + \ pixel->factors[2][3] * src_2[9] + \ pixel->factors[3][0] * src_3[0] + \ pixel->factors[3][1] * src_3[3] + \ pixel->factors[3][2] * src_3[6] + \ pixel->factors[3][3] * src_3[9];\ dst[1] = pixel->factors[0][0] * src_0[1] + \ pixel->factors[0][1] * src_0[4] + \ pixel->factors[0][2] * src_0[7] + \ pixel->factors[0][3] * src_0[10] + \ pixel->factors[1][0] * src_1[1] + \ pixel->factors[1][1] * src_1[4] + \ pixel->factors[1][2] * src_1[7] + \ pixel->factors[1][3] * src_1[10] + \ pixel->factors[2][0] * src_2[1] + \ pixel->factors[2][1] * src_2[4] + \ pixel->factors[2][2] * src_2[7] + \ pixel->factors[2][3] * src_2[10] + \ pixel->factors[3][0] * src_3[1] + \ pixel->factors[3][1] * src_3[4] + \ pixel->factors[3][2] * src_3[7] + \ pixel->factors[3][3] * src_3[10];\ dst[2] = pixel->factors[0][0] * src_0[2] + \ pixel->factors[0][1] * src_0[5] + \ pixel->factors[0][2] * src_0[8] + \ pixel->factors[0][3] * src_0[11] + \ pixel->factors[1][0] * src_1[2] + \ pixel->factors[1][1] * src_1[5] + \ pixel->factors[1][2] * src_1[8] + \ pixel->factors[1][3] * src_1[11] + \ pixel->factors[2][0] * src_2[2] + \ pixel->factors[2][1] * src_2[5] + \ pixel->factors[2][2] * src_2[8] + \ pixel->factors[2][3] * src_2[11] + \ pixel->factors[3][0] * src_3[2] + \ pixel->factors[3][1] * src_3[5] + \ pixel->factors[3][2] * src_3[8] + \ pixel->factors[3][3] * src_3[11]; #endif #include "transform_c.h" #define FUNC_NAME transform_float_x_4_c #define TYPE float #if NUM_TAPS == 2 #define TRANSFORM \ dst[0] = pixel->factors[0][0] * src_0[0] + \ pixel->factors[0][1] * src_0[4] + \ pixel->factors[1][0] * src_1[0] + \ pixel->factors[1][1] * src_1[4]; \ dst[1] = pixel->factors[0][0] * src_0[1] + \ pixel->factors[0][1] * src_0[5] + \ pixel->factors[1][0] * src_1[1] + \ pixel->factors[1][1] * src_1[5];\ dst[2] = pixel->factors[0][0] * src_0[2] + \ pixel->factors[0][1] * src_0[6] + \ pixel->factors[1][0] * src_1[2] + \ pixel->factors[1][1] * src_1[6];\ dst[3] = pixel->factors[0][0] * src_0[3] + \ pixel->factors[0][1] * src_0[7] + \ pixel->factors[1][0] * src_1[3] + \ pixel->factors[1][1] * src_1[7]; #elif NUM_TAPS == 3 #define TRANSFORM \ dst[0] = pixel->factors[0][0] * src_0[0] + \ pixel->factors[0][1] * src_0[4] + \ pixel->factors[0][2] * src_0[8] + \ pixel->factors[1][0] * src_1[0] + \ pixel->factors[1][1] * src_1[4] + \ pixel->factors[1][2] * src_1[8] + \ pixel->factors[2][0] * src_2[0] + \ pixel->factors[2][1] * src_2[4] + \ pixel->factors[2][2] * src_2[8];\ dst[1] = pixel->factors[0][0] * src_0[1] + \ pixel->factors[0][1] * src_0[5] + \ pixel->factors[0][2] * src_0[9] + \ pixel->factors[1][0] * src_1[1] + \ pixel->factors[1][1] * src_1[5] + \ pixel->factors[1][2] * src_1[9] + \ pixel->factors[2][0] * src_2[1] + \ pixel->factors[2][1] * src_2[5] + \ pixel->factors[2][2] * src_2[9];\ dst[2] = pixel->factors[0][0] * src_0[2] + \ pixel->factors[0][1] * src_0[6] + \ pixel->factors[0][2] * src_0[10] + \ pixel->factors[1][0] * src_1[2] + \ pixel->factors[1][1] * src_1[6] + \ pixel->factors[1][2] * src_1[10] + \ pixel->factors[2][0] * src_2[2] + \ pixel->factors[2][1] * src_2[6] + \ pixel->factors[2][2] * src_2[10]; #elif NUM_TAPS == 4 #define TRANSFORM \ dst[0] = pixel->factors[0][0] * src_0[0] + \ pixel->factors[0][1] * src_0[4] + \ pixel->factors[0][2] * src_0[8] + \ pixel->factors[0][3] * src_0[10] + \ pixel->factors[1][0] * src_1[0] + \ pixel->factors[1][1] * src_1[4] + \ pixel->factors[1][2] * src_1[8] + \ pixel->factors[1][3] * src_1[10] + \ pixel->factors[2][0] * src_2[0] + \ pixel->factors[2][1] * src_2[4] + \ pixel->factors[2][2] * src_2[8] + \ pixel->factors[2][3] * src_2[12] + \ pixel->factors[3][0] * src_3[0] + \ pixel->factors[3][1] * src_3[4] + \ pixel->factors[3][2] * src_3[8] + \ pixel->factors[3][3] * src_3[12];\ dst[1] = pixel->factors[0][0] * src_0[1] + \ pixel->factors[0][1] * src_0[5] + \ pixel->factors[0][2] * src_0[9] + \ pixel->factors[0][3] * src_0[13] + \ pixel->factors[1][0] * src_1[1] + \ pixel->factors[1][1] * src_1[5] + \ pixel->factors[1][2] * src_1[9] + \ pixel->factors[1][3] * src_1[13] + \ pixel->factors[2][0] * src_2[1] + \ pixel->factors[2][1] * src_2[5] + \ pixel->factors[2][2] * src_2[9] + \ pixel->factors[2][3] * src_2[13] + \ pixel->factors[3][0] * src_3[1] + \ pixel->factors[3][1] * src_3[5] + \ pixel->factors[3][2] * src_3[9] + \ pixel->factors[3][3] * src_3[13];\ dst[2] = pixel->factors[0][0] * src_0[2] + \ pixel->factors[0][1] * src_0[6] + \ pixel->factors[0][2] * src_0[10] + \ pixel->factors[0][3] * src_0[14] + \ pixel->factors[1][0] * src_1[2] + \ pixel->factors[1][1] * src_1[6] + \ pixel->factors[1][2] * src_1[10] + \ pixel->factors[1][3] * src_1[14] + \ pixel->factors[2][0] * src_2[2] + \ pixel->factors[2][1] * src_2[6] + \ pixel->factors[2][2] * src_2[10] + \ pixel->factors[2][3] * src_2[14] + \ pixel->factors[3][0] * src_3[2] + \ pixel->factors[3][1] * src_3[6] + \ pixel->factors[3][2] * src_3[10] + \ pixel->factors[3][3] * src_3[14];\ dst[3] = pixel->factors[0][0] * src_0[3] + \ pixel->factors[0][1] * src_0[7] + \ pixel->factors[0][2] * src_0[11] + \ pixel->factors[0][3] * src_0[15] + \ pixel->factors[1][0] * src_1[3] + \ pixel->factors[1][1] * src_1[7] + \ pixel->factors[1][2] * src_1[11] + \ pixel->factors[1][3] * src_1[15] + \ pixel->factors[2][0] * src_2[3] + \ pixel->factors[2][1] * src_2[7] + \ pixel->factors[2][2] * src_2[11] + \ pixel->factors[2][3] * src_2[15] + \ pixel->factors[3][0] * src_3[3] + \ pixel->factors[3][1] * src_3[7] + \ pixel->factors[3][2] * src_3[11] + \ pixel->factors[3][3] * src_3[15]; #endif #include "transform_c.h" #if NUM_TAPS == 2 void gavl_init_transform_funcs_bilinear_c(gavl_transform_funcs_t * tab, int advance) #elif NUM_TAPS == 3 void gavl_init_transform_funcs_quadratic_c(gavl_transform_funcs_t * tab, int advance) #elif NUM_TAPS == 4 void gavl_init_transform_funcs_bicubic_c(gavl_transform_funcs_t * tab, int advance) #endif { tab->transform_rgb_15 = transform_rgb_15_c; tab->transform_rgb_16 = transform_rgb_16_c; tab->transform_uint8_x_1_advance = transform_uint8_x_1_advance_c; tab->transform_uint8_x_1_noadvance = transform_uint8_x_1_c; tab->transform_uint8_x_2 = transform_uint8_x_2_c; if(advance == 4) tab->transform_uint8_x_3 = transform_uint8_x_3_4_c; else tab->transform_uint8_x_3 = transform_uint8_x_3_3_c; tab->transform_uint8_x_4 = transform_uint8_x_4_c; tab->transform_uint16_x_1 = transform_uint16_x_1_c; tab->transform_uint16_x_2 = transform_uint16_x_2_c; tab->transform_uint16_x_3 = transform_uint16_x_3_c; tab->transform_uint16_x_4 = transform_uint16_x_4_c; tab->transform_float_x_1 = transform_float_x_1_c; tab->transform_float_x_2 = transform_float_x_2_c; tab->transform_float_x_3 = transform_float_x_3_c; tab->transform_float_x_4 = transform_float_x_4_c; tab->bits_rgb_15 = 16; tab->bits_rgb_16 = 16; tab->bits_uint8_advance = 16; tab->bits_uint8_noadvance = 16; tab->bits_uint16_x_1 = 16; tab->bits_uint16_x_2 = 16; tab->bits_uint16_x_3 = 16; tab->bits_uint16_x_4 = 16; } bplaum-gavl-b9385e3/gavl/c/blend_c.c000066400000000000000000001437621513252040200172010ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include #include #include /* Switch on individual items in the colorspace tables / macros */ #define HAVE_YUVJ_TO_YUV_8 #define HAVE_YUVJ_TO_YUV_16 #define HAVE_YUV_8_TO_YUVJ #define HAVE_RGB_16_TO_RGB_24 #include "colorspace_macros.h" #include "colorspace_tables.h" /* The naive blend equation * * d = a * s + (1-a) * d * * can be simplified to * * d = (s - d) * a + d * * but intermediate results can be negative! */ #define BLEND_8(s, d, a) \ d = (((s - d) * a)>>8) + d; #define BLEND_16(s, d, a) \ d = (((s - d) * a)>>16) + d; #define BLEND_FLOAT(s, d, a) \ d = (s - d) * a + d; /* ovl: GAVL_GRAYA_16 */ static void blend_gray_8(gavl_overlay_blend_context_t * ctx, gavl_video_frame_t * frame, gavl_video_frame_t * overlay) { int i, j; uint8_t * ovl_ptr; uint8_t * dst_ptr; uint8_t * ovl_ptr_start; uint8_t * dst_ptr_start; int tmp; ovl_ptr_start = overlay->planes[0]; dst_ptr_start = frame->planes[0]; for(i = 0; i < ctx->ovl->src_rect.h; i++) { ovl_ptr = ovl_ptr_start; dst_ptr = dst_ptr_start; for(j = 0; j < ctx->ovl->src_rect.w; j++) { tmp = *dst_ptr; BLEND_8(ovl_ptr[0], tmp, ovl_ptr[1]); *(dst_ptr++) = tmp; ovl_ptr+=2; } ovl_ptr_start += overlay->strides[0]; dst_ptr_start += frame->strides[0]; } } /* ovl: GAVL_GRAYA_32 */ static void blend_gray_16(gavl_overlay_blend_context_t * ctx, gavl_video_frame_t * frame, gavl_video_frame_t * overlay) { int i, j; uint16_t * ovl_ptr; uint16_t * dst_ptr; uint8_t * ovl_ptr_start; uint8_t * dst_ptr_start; int tmp; ovl_ptr_start = overlay->planes[0]; dst_ptr_start = frame->planes[0]; for(i = 0; i < ctx->ovl->src_rect.h; i++) { ovl_ptr = (uint16_t*)ovl_ptr_start; dst_ptr = (uint16_t*)dst_ptr_start; for(j = 0; j < ctx->ovl->src_rect.w; j++) { tmp = *dst_ptr; BLEND_16(ovl_ptr[0], tmp, ovl_ptr[1]); *(dst_ptr++) = tmp; ovl_ptr+=2; } ovl_ptr_start += overlay->strides[0]; dst_ptr_start += frame->strides[0]; } } /* ovl: GAVL_GRAYA_FLOAT */ static void blend_gray_float(gavl_overlay_blend_context_t * ctx, gavl_video_frame_t * frame, gavl_video_frame_t * overlay) { int i, j; float * ovl_ptr; float * dst_ptr; uint8_t * ovl_ptr_start; uint8_t * dst_ptr_start; ovl_ptr_start = overlay->planes[0]; dst_ptr_start = frame->planes[0]; for(i = 0; i < ctx->ovl->src_rect.h; i++) { ovl_ptr = (float*)ovl_ptr_start; dst_ptr = (float*)dst_ptr_start; for(j = 0; j < ctx->ovl->src_rect.w; j++) { BLEND_FLOAT(ovl_ptr[0], *dst_ptr, ovl_ptr[1]); dst_ptr++; ovl_ptr+=2; } ovl_ptr_start += overlay->strides[0]; dst_ptr_start += frame->strides[0]; } } /* ovl: GAVL_GRAYA_16 */ static void blend_graya_16(gavl_overlay_blend_context_t * ctx, gavl_video_frame_t * frame, gavl_video_frame_t * overlay) { int i, j; uint8_t * ovl_ptr; uint8_t * dst_ptr; uint8_t * ovl_ptr_start; uint8_t * dst_ptr_start; float c_a, c_b, c_dst, a_a, o_a, a_b, a_dst; ovl_ptr_start = overlay->planes[0]; dst_ptr_start = frame->planes[0]; for(i = 0; i < ctx->ovl->src_rect.h; i++) { ovl_ptr = ovl_ptr_start; dst_ptr = dst_ptr_start; for(j = 0; j < ctx->ovl->src_rect.w; j++) { /* Transparent frame -> Copy overlay */ if(!dst_ptr[1]) { dst_ptr[0] = ovl_ptr[0]; dst_ptr[1] = ovl_ptr[1]; } else if(ovl_ptr[1]) { /* rgba -> rgba blending */ /* Due to the complicated arithmetic, this is done in floating point. High speed integer versions are welcome */ a_a = RGB_8_TO_FLOAT(ovl_ptr[1]); a_b = RGB_8_TO_FLOAT(dst_ptr[1]); o_a = 1.0 - a_a; a_dst = a_a + a_b - a_a * a_b; c_a = RGB_8_TO_FLOAT(ovl_ptr[0]); c_b = RGB_8_TO_FLOAT(dst_ptr[0]); c_dst = (c_a * a_a + c_b * a_b * o_a) / a_dst; RGB_FLOAT_TO_8(c_dst, dst_ptr[0]); RGB_FLOAT_TO_8(a_dst, dst_ptr[1]); } ovl_ptr+=2; dst_ptr+=2; } ovl_ptr_start += overlay->strides[0]; dst_ptr_start += frame->strides[0]; } } /* ovl: GAVL_GRAYA_32 */ static void blend_graya_32(gavl_overlay_blend_context_t * ctx, gavl_video_frame_t * frame, gavl_video_frame_t * overlay) { int i, j; uint16_t * ovl_ptr; uint16_t * dst_ptr; uint8_t * ovl_ptr_start; uint8_t * dst_ptr_start; float c_a, c_b, c_dst, a_a, o_a, a_b, a_dst; ovl_ptr_start = overlay->planes[0]; dst_ptr_start = frame->planes[0]; for(i = 0; i < ctx->ovl->src_rect.h; i++) { ovl_ptr = (uint16_t*)ovl_ptr_start; dst_ptr = (uint16_t*)dst_ptr_start; for(j = 0; j < ctx->ovl->src_rect.w; j++) { /* Transparent frame -> Copy overlay */ if(!dst_ptr[1]) { dst_ptr[0] = ovl_ptr[0]; dst_ptr[1] = ovl_ptr[1]; } else if(ovl_ptr[1]) { /* rgba -> rgba blending */ /* Due to the complicated arithmetic, this is done in floating point. High speed integer versions are welcome */ a_a = RGB_16_TO_FLOAT(ovl_ptr[1]); a_b = RGB_16_TO_FLOAT(dst_ptr[1]); o_a = 1.0 - a_a; a_dst = a_a + a_b - a_a * a_b; c_a = RGB_16_TO_FLOAT(ovl_ptr[0]); c_b = RGB_16_TO_FLOAT(dst_ptr[0]); c_dst = (c_a * a_a + c_b * a_b * o_a) / a_dst; RGB_FLOAT_TO_16(c_dst, dst_ptr[0]); RGB_FLOAT_TO_16(a_dst, dst_ptr[1]); } ovl_ptr+=2; dst_ptr+=2; } ovl_ptr_start += overlay->strides[0]; dst_ptr_start += frame->strides[0]; } } /* ovl: GAVL_GRAYA_FLOAT */ static void blend_graya_float(gavl_overlay_blend_context_t * ctx, gavl_video_frame_t * frame, gavl_video_frame_t * overlay) { int i, j; float * ovl_ptr; float * dst_ptr; uint8_t * ovl_ptr_start; uint8_t * dst_ptr_start; float a_a, o_a, a_b, a_dst; ovl_ptr_start = overlay->planes[0]; dst_ptr_start = frame->planes[0]; for(i = 0; i < ctx->ovl->src_rect.h; i++) { ovl_ptr = (float*)ovl_ptr_start; dst_ptr = (float*)dst_ptr_start; for(j = 0; j < ctx->ovl->src_rect.w; j++) { /* Transparent frame -> Copy overlay */ if(dst_ptr[3] == 0.0) { dst_ptr[0] = ovl_ptr[0]; dst_ptr[1] = ovl_ptr[1]; } else if(ovl_ptr[1] != 0.0) { /* rgba -> rgba blending */ /* Due to the complicated arithmetic, this is done in floating point. High speed integer versions are welcome */ a_a = ovl_ptr[1]; a_b = dst_ptr[1]; o_a = 1.0 - a_a; a_dst = a_a + a_b - a_a * a_b; dst_ptr[0] = (ovl_ptr[0] * a_a + dst_ptr[0] * a_b * o_a) / a_dst; dst_ptr[1] = a_dst; } ovl_ptr+=2; dst_ptr+=2; } ovl_ptr_start += overlay->strides[0]; dst_ptr_start += frame->strides[0]; } } /* ovl: GAVL_RGBA_32 */ static void blend_rgb_15(gavl_overlay_blend_context_t * ctx, gavl_video_frame_t * frame, gavl_video_frame_t * overlay) { int i, j; uint8_t * ovl_ptr; uint16_t * dst_ptr; uint8_t * ovl_ptr_start; uint8_t * dst_ptr_start; int r_tmp, g_tmp, b_tmp; ovl_ptr_start = overlay->planes[0]; dst_ptr_start = frame->planes[0]; for(i = 0; i < ctx->ovl->src_rect.h; i++) { ovl_ptr = ovl_ptr_start; dst_ptr = (uint16_t*)dst_ptr_start; for(j = 0; j < ctx->ovl->src_rect.w; j++) { r_tmp = RGB15_TO_R_8(*dst_ptr); g_tmp = RGB15_TO_G_8(*dst_ptr); b_tmp = RGB15_TO_B_8(*dst_ptr); BLEND_8(ovl_ptr[0], r_tmp, ovl_ptr[3]); BLEND_8(ovl_ptr[1], g_tmp, ovl_ptr[3]); BLEND_8(ovl_ptr[2], b_tmp, ovl_ptr[3]); PACK_8_TO_RGB15(r_tmp,g_tmp,b_tmp,*dst_ptr); ovl_ptr+=4; dst_ptr++; } ovl_ptr_start += overlay->strides[0]; dst_ptr_start += frame->strides[0]; } } /* ovl: GAVL_RGBA_32 */ static void blend_bgr_15(gavl_overlay_blend_context_t * ctx, gavl_video_frame_t * frame, gavl_video_frame_t * overlay) { int i, j; uint8_t * ovl_ptr; uint16_t * dst_ptr; uint8_t * ovl_ptr_start; uint8_t * dst_ptr_start; int r_tmp, g_tmp, b_tmp; ovl_ptr_start = overlay->planes[0]; dst_ptr_start = frame->planes[0]; for(i = 0; i < ctx->ovl->src_rect.h; i++) { ovl_ptr = ovl_ptr_start; dst_ptr = (uint16_t*)dst_ptr_start; for(j = 0; j < ctx->ovl->src_rect.w; j++) { r_tmp = BGR15_TO_R_8(*dst_ptr); g_tmp = BGR15_TO_G_8(*dst_ptr); b_tmp = BGR15_TO_B_8(*dst_ptr); BLEND_8(ovl_ptr[0], r_tmp, ovl_ptr[3]); BLEND_8(ovl_ptr[1], g_tmp, ovl_ptr[3]); BLEND_8(ovl_ptr[2], b_tmp, ovl_ptr[3]); PACK_8_TO_BGR15(r_tmp,g_tmp,b_tmp,*dst_ptr); ovl_ptr+=4; dst_ptr++; } ovl_ptr_start += overlay->strides[0]; dst_ptr_start += frame->strides[0]; } } /* ovl: GAVL_RGBA_32 */ static void blend_rgb_16(gavl_overlay_blend_context_t * ctx, gavl_video_frame_t * frame, gavl_video_frame_t * overlay) { int i, j; uint8_t * ovl_ptr; uint16_t * dst_ptr; uint8_t * ovl_ptr_start; uint8_t * dst_ptr_start; int r_tmp, g_tmp, b_tmp; ovl_ptr_start = overlay->planes[0]; dst_ptr_start = frame->planes[0]; for(i = 0; i < ctx->ovl->src_rect.h; i++) { ovl_ptr = ovl_ptr_start; dst_ptr = (uint16_t*)dst_ptr_start; for(j = 0; j < ctx->ovl->src_rect.w; j++) { r_tmp = RGB16_TO_R_8(*dst_ptr); g_tmp = RGB16_TO_G_8(*dst_ptr); b_tmp = RGB16_TO_B_8(*dst_ptr); BLEND_8(ovl_ptr[0], r_tmp, ovl_ptr[3]); BLEND_8(ovl_ptr[1], g_tmp, ovl_ptr[3]); BLEND_8(ovl_ptr[2], b_tmp, ovl_ptr[3]); PACK_8_TO_RGB16(r_tmp,g_tmp,b_tmp,*dst_ptr); ovl_ptr+=4; dst_ptr++; } ovl_ptr_start += overlay->strides[0]; dst_ptr_start += frame->strides[0]; } } /* ovl: GAVL_RGBA_32 */ static void blend_bgr_16(gavl_overlay_blend_context_t * ctx, gavl_video_frame_t * frame, gavl_video_frame_t * overlay) { int i, j; uint8_t * ovl_ptr; uint16_t * dst_ptr; uint8_t * ovl_ptr_start; uint8_t * dst_ptr_start; int r_tmp, g_tmp, b_tmp; ovl_ptr_start = overlay->planes[0]; dst_ptr_start = frame->planes[0]; for(i = 0; i < ctx->ovl->src_rect.h; i++) { ovl_ptr = ovl_ptr_start; dst_ptr = (uint16_t*)dst_ptr_start; for(j = 0; j < ctx->ovl->src_rect.w; j++) { r_tmp = BGR16_TO_R_8(*dst_ptr); g_tmp = BGR16_TO_G_8(*dst_ptr); b_tmp = BGR16_TO_B_8(*dst_ptr); BLEND_8(ovl_ptr[0], r_tmp, ovl_ptr[3]); BLEND_8(ovl_ptr[1], g_tmp, ovl_ptr[3]); BLEND_8(ovl_ptr[2], b_tmp, ovl_ptr[3]); PACK_8_TO_BGR16(r_tmp,g_tmp,b_tmp,*dst_ptr); ovl_ptr+=4; dst_ptr++; } ovl_ptr_start += overlay->strides[0]; dst_ptr_start += frame->strides[0]; } } /* ovl: GAVL_RGBA_32 */ static void blend_rgb_24(gavl_overlay_blend_context_t * ctx, gavl_video_frame_t * frame, gavl_video_frame_t * overlay) { int i, j; uint8_t * ovl_ptr; uint8_t * dst_ptr; uint8_t * ovl_ptr_start; uint8_t * dst_ptr_start; int r_tmp, g_tmp, b_tmp; ovl_ptr_start = overlay->planes[0]; dst_ptr_start = frame->planes[0]; for(i = 0; i < ctx->ovl->src_rect.h; i++) { ovl_ptr = ovl_ptr_start; dst_ptr = dst_ptr_start; for(j = 0; j < ctx->ovl->src_rect.w; j++) { r_tmp = dst_ptr[0]; g_tmp = dst_ptr[1]; b_tmp = dst_ptr[2]; BLEND_8(ovl_ptr[0], r_tmp, ovl_ptr[3]); BLEND_8(ovl_ptr[1], g_tmp, ovl_ptr[3]); BLEND_8(ovl_ptr[2], b_tmp, ovl_ptr[3]); dst_ptr[0] = r_tmp; dst_ptr[1] = g_tmp; dst_ptr[2] = b_tmp; ovl_ptr+=4; dst_ptr+=3; } ovl_ptr_start += overlay->strides[0]; dst_ptr_start += frame->strides[0]; } } /* ovl: GAVL_RGBA_32 */ static void blend_bgr_24(gavl_overlay_blend_context_t * ctx, gavl_video_frame_t * frame, gavl_video_frame_t * overlay) { int i, j; uint8_t * ovl_ptr; uint8_t * dst_ptr; uint8_t * ovl_ptr_start; uint8_t * dst_ptr_start; int r_tmp, g_tmp, b_tmp; ovl_ptr_start = overlay->planes[0]; dst_ptr_start = frame->planes[0]; for(i = 0; i < ctx->ovl->src_rect.h; i++) { ovl_ptr = ovl_ptr_start; dst_ptr = dst_ptr_start; for(j = 0; j < ctx->ovl->src_rect.w; j++) { r_tmp = dst_ptr[2]; g_tmp = dst_ptr[1]; b_tmp = dst_ptr[0]; BLEND_8(ovl_ptr[0], r_tmp, ovl_ptr[3]); BLEND_8(ovl_ptr[1], g_tmp, ovl_ptr[3]); BLEND_8(ovl_ptr[2], b_tmp, ovl_ptr[3]); dst_ptr[2] = r_tmp; dst_ptr[1] = g_tmp; dst_ptr[0] = b_tmp; ovl_ptr+=4; dst_ptr+=3; } ovl_ptr_start += overlay->strides[0]; dst_ptr_start += frame->strides[0]; } } /* ovl: GAVL_RGBA_32 */ static void blend_rgb_32(gavl_overlay_blend_context_t * ctx, gavl_video_frame_t * frame, gavl_video_frame_t * overlay) { int i, j; uint8_t * ovl_ptr; uint8_t * dst_ptr; uint8_t * ovl_ptr_start; uint8_t * dst_ptr_start; int r_tmp, g_tmp, b_tmp; ovl_ptr_start = overlay->planes[0]; dst_ptr_start = frame->planes[0]; for(i = 0; i < ctx->ovl->src_rect.h; i++) { ovl_ptr = ovl_ptr_start; dst_ptr = dst_ptr_start; for(j = 0; j < ctx->ovl->src_rect.w; j++) { r_tmp = dst_ptr[0]; g_tmp = dst_ptr[1]; b_tmp = dst_ptr[2]; BLEND_8(ovl_ptr[0], r_tmp, ovl_ptr[3]); BLEND_8(ovl_ptr[1], g_tmp, ovl_ptr[3]); BLEND_8(ovl_ptr[2], b_tmp, ovl_ptr[3]); dst_ptr[0] = r_tmp; dst_ptr[1] = g_tmp; dst_ptr[2] = b_tmp; ovl_ptr+=4; dst_ptr+=4; } ovl_ptr_start += overlay->strides[0]; dst_ptr_start += frame->strides[0]; } } /* ovl: GAVL_RGBA_32 */ static void blend_bgr_32(gavl_overlay_blend_context_t * ctx, gavl_video_frame_t * frame, gavl_video_frame_t * overlay) { int i, j; uint8_t * ovl_ptr; uint8_t * dst_ptr; uint8_t * ovl_ptr_start; uint8_t * dst_ptr_start; int r_tmp, g_tmp, b_tmp; ovl_ptr_start = overlay->planes[0]; dst_ptr_start = frame->planes[0]; for(i = 0; i < ctx->ovl->src_rect.h; i++) { ovl_ptr = ovl_ptr_start; dst_ptr = dst_ptr_start; for(j = 0; j < ctx->ovl->src_rect.w; j++) { r_tmp = dst_ptr[2]; g_tmp = dst_ptr[1]; b_tmp = dst_ptr[0]; BLEND_8(ovl_ptr[0], r_tmp, ovl_ptr[3]); BLEND_8(ovl_ptr[1], g_tmp, ovl_ptr[3]); BLEND_8(ovl_ptr[2], b_tmp, ovl_ptr[3]); dst_ptr[2] = r_tmp; dst_ptr[1] = g_tmp; dst_ptr[0] = b_tmp; ovl_ptr+=4; dst_ptr+=4; } ovl_ptr_start += overlay->strides[0]; dst_ptr_start += frame->strides[0]; } } /* ovl: GAVL_RGBA_32 */ static void blend_rgba_32(gavl_overlay_blend_context_t * ctx, gavl_video_frame_t * frame, gavl_video_frame_t * overlay) { int i, j; uint8_t * ovl_ptr; uint8_t * dst_ptr; uint8_t * ovl_ptr_start; uint8_t * dst_ptr_start; float c_a, c_b, c_dst, a_a, o_a, a_b, a_dst; ovl_ptr_start = overlay->planes[0]; dst_ptr_start = frame->planes[0]; for(i = 0; i < ctx->ovl->src_rect.h; i++) { ovl_ptr = ovl_ptr_start; dst_ptr = dst_ptr_start; for(j = 0; j < ctx->ovl->src_rect.w; j++) { /* Transparent frame -> Copy overlay */ if(!dst_ptr[3]) { dst_ptr[0] = ovl_ptr[0]; dst_ptr[1] = ovl_ptr[1]; dst_ptr[2] = ovl_ptr[2]; dst_ptr[3] = ovl_ptr[3]; } else if(ovl_ptr[3]) { /* rgba -> rgba blending */ /* Due to the complicated arithmetic, this is done in floating point. High speed integer versions are welcome */ a_a = RGB_8_TO_FLOAT(ovl_ptr[3]); a_b = RGB_8_TO_FLOAT(dst_ptr[3]); o_a = 1.0 - a_a; a_dst = a_a + a_b - a_a * a_b; c_a = RGB_8_TO_FLOAT(ovl_ptr[0]); c_b = RGB_8_TO_FLOAT(dst_ptr[0]); c_dst = (c_a * a_a + c_b * a_b * o_a) / a_dst; RGB_FLOAT_TO_8(c_dst, dst_ptr[0]); c_a = RGB_8_TO_FLOAT(ovl_ptr[1]); c_b = RGB_8_TO_FLOAT(dst_ptr[1]); c_dst = (c_a * a_a + c_b * a_b * o_a) / a_dst; RGB_FLOAT_TO_8(c_dst, dst_ptr[1]); c_a = RGB_8_TO_FLOAT(ovl_ptr[2]); c_b = RGB_8_TO_FLOAT(dst_ptr[2]); c_dst = (c_a * a_a + c_b * a_b * o_a) / a_dst; RGB_FLOAT_TO_8(c_dst, dst_ptr[2]); RGB_FLOAT_TO_8(a_dst, dst_ptr[3]); } ovl_ptr+=4; dst_ptr+=4; } ovl_ptr_start += overlay->strides[0]; dst_ptr_start += frame->strides[0]; } } /* ovl: GAVL_RGBA_64 */ static void blend_rgb_48(gavl_overlay_blend_context_t * ctx, gavl_video_frame_t * frame, gavl_video_frame_t * overlay) { int i, j; uint16_t * ovl_ptr; uint16_t * dst_ptr; uint8_t * ovl_ptr_start; uint8_t * dst_ptr_start; int64_t r_tmp, g_tmp, b_tmp; ovl_ptr_start = overlay->planes[0]; dst_ptr_start = frame->planes[0]; for(i = 0; i < ctx->ovl->src_rect.h; i++) { ovl_ptr = (uint16_t*)ovl_ptr_start; dst_ptr = (uint16_t*)dst_ptr_start; for(j = 0; j < ctx->ovl->src_rect.w; j++) { r_tmp = dst_ptr[0]; g_tmp = dst_ptr[1]; b_tmp = dst_ptr[2]; BLEND_16(ovl_ptr[0], r_tmp, ovl_ptr[3]); BLEND_16(ovl_ptr[1], g_tmp, ovl_ptr[3]); BLEND_16(ovl_ptr[2], b_tmp, ovl_ptr[3]); dst_ptr[0] = r_tmp; dst_ptr[1] = g_tmp; dst_ptr[2] = b_tmp; ovl_ptr+=4; dst_ptr+=3; } ovl_ptr_start += overlay->strides[0]; dst_ptr_start += frame->strides[0]; } } /* ovl: GAVL_RGBA_64 */ static void blend_rgba_64(gavl_overlay_blend_context_t * ctx, gavl_video_frame_t * frame, gavl_video_frame_t * overlay) { int i, j; uint16_t * ovl_ptr; uint16_t * dst_ptr; uint8_t * ovl_ptr_start; uint8_t * dst_ptr_start; float c_a, c_b, c_dst, a_a, o_a, a_b, a_dst; ovl_ptr_start = overlay->planes[0]; dst_ptr_start = frame->planes[0]; for(i = 0; i < ctx->ovl->src_rect.h; i++) { ovl_ptr = (uint16_t*)ovl_ptr_start; dst_ptr = (uint16_t*)dst_ptr_start; for(j = 0; j < ctx->ovl->src_rect.w; j++) { /* Transparent frame -> Copy overlay */ if(!dst_ptr[3]) { dst_ptr[0] = ovl_ptr[0]; dst_ptr[1] = ovl_ptr[1]; dst_ptr[2] = ovl_ptr[2]; dst_ptr[3] = ovl_ptr[3]; } else if(ovl_ptr[3]) { /* rgba -> rgba blending */ /* Due to the complicated arithmetic, this is done in floating point. High speed integer versions are welcome */ a_a = RGB_16_TO_FLOAT(ovl_ptr[3]); a_b = RGB_16_TO_FLOAT(dst_ptr[3]); o_a = 1.0 - a_a; a_dst = a_a + a_b - a_a * a_b; c_a = RGB_16_TO_FLOAT(ovl_ptr[0]); c_b = RGB_16_TO_FLOAT(dst_ptr[0]); c_dst = (c_a * a_a + c_b * a_b * o_a) / a_dst; RGB_FLOAT_TO_16(c_dst, dst_ptr[0]); c_a = RGB_16_TO_FLOAT(ovl_ptr[1]); c_b = RGB_16_TO_FLOAT(dst_ptr[1]); c_dst = (c_a * a_a + c_b * a_b * o_a) / a_dst; RGB_FLOAT_TO_16(c_dst, dst_ptr[1]); c_a = RGB_16_TO_FLOAT(ovl_ptr[2]); c_b = RGB_16_TO_FLOAT(dst_ptr[2]); c_dst = (c_a * a_a + c_b * a_b * o_a) / a_dst; RGB_FLOAT_TO_16(c_dst, dst_ptr[2]); RGB_FLOAT_TO_16(a_dst, dst_ptr[3]); } ovl_ptr+=4; dst_ptr+=4; } ovl_ptr_start += overlay->strides[0]; dst_ptr_start += frame->strides[0]; } } /* ovl: GAVL_RGBA_FLOAT */ static void blend_rgb_float(gavl_overlay_blend_context_t * ctx, gavl_video_frame_t * frame, gavl_video_frame_t * overlay) { int i, j; float * ovl_ptr; float * dst_ptr; uint8_t * ovl_ptr_start; uint8_t * dst_ptr_start; ovl_ptr_start = overlay->planes[0]; dst_ptr_start = frame->planes[0]; for(i = 0; i < ctx->ovl->src_rect.h; i++) { ovl_ptr = (float*)ovl_ptr_start; dst_ptr = (float*)dst_ptr_start; for(j = 0; j < ctx->ovl->src_rect.w; j++) { BLEND_FLOAT(ovl_ptr[0], dst_ptr[0], ovl_ptr[3]); BLEND_FLOAT(ovl_ptr[1], dst_ptr[1], ovl_ptr[3]); BLEND_FLOAT(ovl_ptr[2], dst_ptr[2], ovl_ptr[3]); ovl_ptr+=4; dst_ptr+=3; } ovl_ptr_start += overlay->strides[0]; dst_ptr_start += frame->strides[0]; } } /* ovl: GAVL_RGBA_FLOAT */ static void blend_rgba_float(gavl_overlay_blend_context_t * ctx, gavl_video_frame_t * frame, gavl_video_frame_t * overlay) { int i, j; float * ovl_ptr; float * dst_ptr; uint8_t * ovl_ptr_start; uint8_t * dst_ptr_start; float o_a, a_dst; ovl_ptr_start = overlay->planes[0]; dst_ptr_start = frame->planes[0]; for(i = 0; i < ctx->ovl->src_rect.h; i++) { ovl_ptr = (float*)ovl_ptr_start; dst_ptr = (float*)dst_ptr_start; for(j = 0; j < ctx->ovl->src_rect.w; j++) { a_dst = dst_ptr[3] + ovl_ptr[3] - dst_ptr[3]*ovl_ptr[3]; if(fabs(a_dst) < 1.0e-6) { ovl_ptr+=4; dst_ptr+=4; continue; } o_a = 1.0 - ovl_ptr[3]; dst_ptr[0] = (ovl_ptr[0]*ovl_ptr[3] + dst_ptr[0]*dst_ptr[3]*o_a)/a_dst; dst_ptr[1] = (ovl_ptr[1]*ovl_ptr[3] + dst_ptr[1]*dst_ptr[3]*o_a)/a_dst; dst_ptr[2] = (ovl_ptr[2]*ovl_ptr[3] + dst_ptr[2]*dst_ptr[3]*o_a)/a_dst; dst_ptr[3] = a_dst; ovl_ptr+=4; dst_ptr+=4; } ovl_ptr_start += overlay->strides[0]; dst_ptr_start += frame->strides[0]; } } /* ovl: GAVL_YUVA_32 */ static void blend_yuy2(gavl_overlay_blend_context_t * ctx, gavl_video_frame_t * frame, gavl_video_frame_t * overlay) { int i, j, jmax; uint8_t * ovl_ptr; uint8_t * dst_ptr; uint8_t * ovl_ptr_start; uint8_t * dst_ptr_start; int tmp; ovl_ptr_start = overlay->planes[0]; dst_ptr_start = frame->planes[0]; jmax = ctx->ovl->src_rect.w / 2; for(i = 0; i < ctx->ovl->src_rect.h; i++) { ovl_ptr = ovl_ptr_start; dst_ptr = dst_ptr_start; for(j = 0; j < jmax; j++) { /* Y0 */ tmp = dst_ptr[0]; BLEND_8(ovl_ptr[0], tmp, ovl_ptr[3]); dst_ptr[0] = tmp; /* U0 */ tmp = dst_ptr[1]; BLEND_8(ovl_ptr[1], tmp, ovl_ptr[3]); dst_ptr[1] = tmp; /* V0 */ tmp = dst_ptr[3]; BLEND_8(ovl_ptr[2], tmp, ovl_ptr[3]); dst_ptr[3] = tmp; /* Y1 */ tmp = dst_ptr[2]; BLEND_8(ovl_ptr[4], tmp, ovl_ptr[7]); dst_ptr[2] = tmp; ovl_ptr+=8; dst_ptr+=4; } ovl_ptr_start += overlay->strides[0]; dst_ptr_start += frame->strides[0]; } } /* ovl: GAVL_YUVA_32 */ static void blend_uyvy(gavl_overlay_blend_context_t * ctx, gavl_video_frame_t * frame, gavl_video_frame_t * overlay) { int i, j, jmax; uint8_t * ovl_ptr; uint8_t * dst_ptr; uint8_t * ovl_ptr_start; uint8_t * dst_ptr_start; int tmp; ovl_ptr_start = overlay->planes[0]; dst_ptr_start = frame->planes[0]; jmax = ctx->ovl->src_rect.w / 2; for(i = 0; i < ctx->ovl->src_rect.h; i++) { ovl_ptr = ovl_ptr_start; dst_ptr = dst_ptr_start; for(j = 0; j < jmax; j++) { /* Y0 */ tmp = dst_ptr[1]; BLEND_8(ovl_ptr[0], tmp, ovl_ptr[3]); dst_ptr[1] = tmp; /* U0 */ tmp = dst_ptr[0]; BLEND_8(ovl_ptr[1], tmp, ovl_ptr[3]); dst_ptr[0] = tmp; /* V0 */ tmp = dst_ptr[2]; BLEND_8(ovl_ptr[2], tmp, ovl_ptr[3]); dst_ptr[2] = tmp; /* Y1 */ tmp = dst_ptr[3]; BLEND_8(ovl_ptr[4], tmp, ovl_ptr[7]); dst_ptr[3] = tmp; ovl_ptr+=8; dst_ptr+=4; } ovl_ptr_start += overlay->strides[0]; dst_ptr_start += frame->strides[0]; } } /* ovl: GAVL_YUVA_32 */ static void blend_yuva_32(gavl_overlay_blend_context_t * ctx, gavl_video_frame_t * frame, gavl_video_frame_t * overlay) { int i, j; uint8_t * ovl_ptr; uint8_t * dst_ptr; uint8_t * ovl_ptr_start; uint8_t * dst_ptr_start; float c_a, c_b, c_dst, a_a, o_a, a_b, a_dst; ovl_ptr_start = overlay->planes[0]; dst_ptr_start = frame->planes[0]; for(i = 0; i < ctx->ovl->src_rect.h; i++) { ovl_ptr = ovl_ptr_start; dst_ptr = dst_ptr_start; for(j = 0; j < ctx->ovl->src_rect.w; j++) { /* Transparent frame -> Copy overlay */ if(!dst_ptr[3]) { dst_ptr[0] = ovl_ptr[0]; dst_ptr[1] = ovl_ptr[1]; dst_ptr[2] = ovl_ptr[2]; dst_ptr[3] = ovl_ptr[3]; } else if(ovl_ptr[3]) { /* rgba -> rgba blending */ /* Due to the complicated arithmetic, this is done in floating point. High speed integer versions are welcome */ a_a = RGB_8_TO_FLOAT(ovl_ptr[3]); a_b = RGB_8_TO_FLOAT(dst_ptr[3]); o_a = 1.0 - a_a; a_dst = a_a + a_b - a_a * a_b; c_a = RGB_8_TO_FLOAT(ovl_ptr[0]); c_b = RGB_8_TO_FLOAT(dst_ptr[0]); c_dst = (c_a * a_a + c_b * a_b * o_a) / a_dst; RGB_FLOAT_TO_8(c_dst, dst_ptr[0]); c_a = RGB_8_TO_FLOAT(ovl_ptr[1]); c_b = RGB_8_TO_FLOAT(dst_ptr[1]); c_dst = (c_a * a_a + c_b * a_b * o_a) / a_dst; RGB_FLOAT_TO_8(c_dst, dst_ptr[1]); c_a = RGB_8_TO_FLOAT(ovl_ptr[2]); c_b = RGB_8_TO_FLOAT(dst_ptr[2]); c_dst = (c_a * a_a + c_b * a_b * o_a) / a_dst; RGB_FLOAT_TO_8(c_dst, dst_ptr[2]); RGB_FLOAT_TO_8(a_dst, dst_ptr[3]); } ovl_ptr+=4; dst_ptr+=4; } ovl_ptr_start += overlay->strides[0]; dst_ptr_start += frame->strides[0]; } } /* ovl: GAVL_YUVA_32 */ static void blend_yuv_420_p(gavl_overlay_blend_context_t * ctx, gavl_video_frame_t * frame, gavl_video_frame_t * overlay) { int i, j, imax, jmax; uint8_t * ovl_ptr; uint8_t * dst_ptr_y; uint8_t * dst_ptr_u; uint8_t * dst_ptr_v; uint8_t * ovl_ptr_start; uint8_t * dst_ptr_y_start; uint8_t * dst_ptr_u_start; uint8_t * dst_ptr_v_start; int tmp; ovl_ptr_start = overlay->planes[0]; dst_ptr_y_start = frame->planes[0]; dst_ptr_u_start = frame->planes[1]; dst_ptr_v_start = frame->planes[2]; imax = ctx->ovl->src_rect.h / 2; jmax = ctx->ovl->src_rect.w / 2; for(i = 0; i < imax; i++) { ovl_ptr = ovl_ptr_start; dst_ptr_y = dst_ptr_y_start; dst_ptr_u = dst_ptr_u_start; dst_ptr_v = dst_ptr_v_start; for(j = 0; j < jmax; j++) { /* Y0 */ tmp = *dst_ptr_y; BLEND_8(ovl_ptr[0], tmp, ovl_ptr[3]); *(dst_ptr_y++) = tmp; /* U0 */ tmp = *dst_ptr_u; BLEND_8(ovl_ptr[1], tmp, ovl_ptr[3]); *(dst_ptr_u++) = tmp; /* V0 */ tmp = *dst_ptr_v; BLEND_8(ovl_ptr[2], tmp, ovl_ptr[3]); *(dst_ptr_v++) = tmp; /* Y1 */ tmp = *dst_ptr_y; BLEND_8(ovl_ptr[4], tmp, ovl_ptr[7]); *(dst_ptr_y++) = tmp; ovl_ptr+=8; } ovl_ptr_start += overlay->strides[0]; dst_ptr_y_start += frame->strides[0]; dst_ptr_u_start += frame->strides[1]; dst_ptr_v_start += frame->strides[2]; ovl_ptr = ovl_ptr_start; dst_ptr_y = dst_ptr_y_start; dst_ptr_u = dst_ptr_u_start; dst_ptr_v = dst_ptr_v_start; for(j = 0; j < jmax; j++) { /* Y0 */ tmp = *dst_ptr_y; BLEND_8(ovl_ptr[0], tmp, ovl_ptr[3]); *(dst_ptr_y++) = tmp; /* Y1 */ tmp = *dst_ptr_y; BLEND_8(ovl_ptr[4], tmp, ovl_ptr[7]); *(dst_ptr_y++) = tmp; ovl_ptr+=8; } ovl_ptr_start += overlay->strides[0]; dst_ptr_y_start += frame->strides[0]; } } /* ovl: GAVL_YUVA_32 */ static void blend_yuv_422_p(gavl_overlay_blend_context_t * ctx, gavl_video_frame_t * frame, gavl_video_frame_t * overlay) { int i, j, jmax; uint8_t * ovl_ptr; uint8_t * dst_ptr_y; uint8_t * dst_ptr_u; uint8_t * dst_ptr_v; uint8_t * ovl_ptr_start; uint8_t * dst_ptr_y_start; uint8_t * dst_ptr_u_start; uint8_t * dst_ptr_v_start; int tmp; ovl_ptr_start = overlay->planes[0]; dst_ptr_y_start = frame->planes[0]; dst_ptr_u_start = frame->planes[1]; dst_ptr_v_start = frame->planes[2]; jmax = ctx->ovl->src_rect.w / 2; for(i = 0; i < ctx->ovl->src_rect.h; i++) { ovl_ptr = ovl_ptr_start; dst_ptr_y = dst_ptr_y_start; dst_ptr_u = dst_ptr_u_start; dst_ptr_v = dst_ptr_v_start; for(j = 0; j < jmax; j++) { /* Y0 */ tmp = *dst_ptr_y; BLEND_8(ovl_ptr[0], tmp, ovl_ptr[3]); *(dst_ptr_y++) = tmp; /* U0 */ tmp = *dst_ptr_u; BLEND_8(ovl_ptr[1], tmp, ovl_ptr[3]); *(dst_ptr_u++) = tmp; /* V0 */ tmp = *dst_ptr_v; BLEND_8(ovl_ptr[2], tmp, ovl_ptr[3]); *(dst_ptr_v++) = tmp; /* Y1 */ tmp = *dst_ptr_y; BLEND_8(ovl_ptr[4], tmp, ovl_ptr[7]); *(dst_ptr_y++) = tmp; ovl_ptr+=8; } ovl_ptr_start += overlay->strides[0]; dst_ptr_y_start += frame->strides[0]; dst_ptr_u_start += frame->strides[1]; dst_ptr_v_start += frame->strides[2]; } } /* ovl: GAVL_YUVA_32 */ static void blend_yuv_444_p(gavl_overlay_blend_context_t * ctx, gavl_video_frame_t * frame, gavl_video_frame_t * overlay) { int i, j; uint8_t * ovl_ptr; uint8_t * dst_ptr_y; uint8_t * dst_ptr_u; uint8_t * dst_ptr_v; uint8_t * ovl_ptr_start; uint8_t * dst_ptr_y_start; uint8_t * dst_ptr_u_start; uint8_t * dst_ptr_v_start; int tmp; ovl_ptr_start = overlay->planes[0]; dst_ptr_y_start = frame->planes[0]; dst_ptr_u_start = frame->planes[1]; dst_ptr_v_start = frame->planes[2]; for(i = 0; i < ctx->ovl->src_rect.h; i++) { ovl_ptr = ovl_ptr_start; dst_ptr_y = dst_ptr_y_start; dst_ptr_u = dst_ptr_u_start; dst_ptr_v = dst_ptr_v_start; for(j = 0; j < ctx->ovl->src_rect.w; j++) { /* Y0 */ tmp = *dst_ptr_y; BLEND_8(ovl_ptr[0], tmp, ovl_ptr[3]); *(dst_ptr_y++) = tmp; /* U0 */ tmp = *dst_ptr_u; BLEND_8(ovl_ptr[1], tmp, ovl_ptr[3]); *(dst_ptr_u++) = tmp; /* V0 */ tmp = *dst_ptr_v; BLEND_8(ovl_ptr[2], tmp, ovl_ptr[3]); *(dst_ptr_v++) = tmp; ovl_ptr+=4; } ovl_ptr_start += overlay->strides[0]; dst_ptr_y_start += frame->strides[0]; dst_ptr_u_start += frame->strides[1]; dst_ptr_v_start += frame->strides[2]; } } /* ovl: GAVL_YUVA_32 */ static void blend_yuv_411_p(gavl_overlay_blend_context_t * ctx, gavl_video_frame_t * frame, gavl_video_frame_t * overlay) { int i, j, jmax; uint8_t * ovl_ptr; uint8_t * dst_ptr_y; uint8_t * dst_ptr_u; uint8_t * dst_ptr_v; uint8_t * ovl_ptr_start; uint8_t * dst_ptr_y_start; uint8_t * dst_ptr_u_start; uint8_t * dst_ptr_v_start; int tmp; ovl_ptr_start = overlay->planes[0]; dst_ptr_y_start = frame->planes[0]; dst_ptr_u_start = frame->planes[1]; dst_ptr_v_start = frame->planes[2]; jmax = ctx->ovl->src_rect.w / 4; for(i = 0; i < ctx->ovl->src_rect.h; i++) { ovl_ptr = ovl_ptr_start; dst_ptr_y = dst_ptr_y_start; dst_ptr_u = dst_ptr_u_start; dst_ptr_v = dst_ptr_v_start; for(j = 0; j < jmax; j++) { /* Y0 */ tmp = *dst_ptr_y; BLEND_8(ovl_ptr[0], tmp, ovl_ptr[3]); *(dst_ptr_y++) = tmp; /* U0 */ tmp = *dst_ptr_u; BLEND_8(ovl_ptr[1], tmp, ovl_ptr[3]); *(dst_ptr_u++) = tmp; /* V0 */ tmp = *dst_ptr_v; BLEND_8(ovl_ptr[2], tmp, ovl_ptr[3]); *(dst_ptr_v++) = tmp; /* Y1 */ tmp = *dst_ptr_y; BLEND_8(ovl_ptr[4], tmp, ovl_ptr[7]); *(dst_ptr_y++) = tmp; /* Y2 */ tmp = *dst_ptr_y; BLEND_8(ovl_ptr[8], tmp, ovl_ptr[11]); *(dst_ptr_y++) = tmp; /* Y3 */ tmp = *dst_ptr_y; BLEND_8(ovl_ptr[12], tmp, ovl_ptr[15]); *(dst_ptr_y++) = tmp; ovl_ptr+=16; } ovl_ptr_start += overlay->strides[0]; dst_ptr_y_start += frame->strides[0]; dst_ptr_u_start += frame->strides[1]; dst_ptr_v_start += frame->strides[2]; } } /* ovl: GAVL_YUVA_32 */ static void blend_yuv_410_p(gavl_overlay_blend_context_t * ctx, gavl_video_frame_t * frame, gavl_video_frame_t * overlay) { int i, j, imax, jmax; uint8_t * ovl_ptr; uint8_t * dst_ptr_y; uint8_t * dst_ptr_u; uint8_t * dst_ptr_v; uint8_t * ovl_ptr_start; uint8_t * dst_ptr_y_start; uint8_t * dst_ptr_u_start; uint8_t * dst_ptr_v_start; int tmp; ovl_ptr_start = overlay->planes[0]; dst_ptr_y_start = frame->planes[0]; dst_ptr_u_start = frame->planes[1]; dst_ptr_v_start = frame->planes[2]; imax = ctx->ovl->src_rect.h / 4; jmax = ctx->ovl->src_rect.w / 4; for(i = 0; i < imax; i++) { /* Line 0 */ ovl_ptr = ovl_ptr_start; dst_ptr_y = dst_ptr_y_start; dst_ptr_u = dst_ptr_u_start; dst_ptr_v = dst_ptr_v_start; for(j = 0; j < jmax; j++) { /* Y0 */ tmp = *dst_ptr_y; BLEND_8(ovl_ptr[0], tmp, ovl_ptr[3]); *(dst_ptr_y++) = tmp; /* U0 */ tmp = *dst_ptr_u; BLEND_8(ovl_ptr[1], tmp, ovl_ptr[3]); *(dst_ptr_u++) = tmp; /* V0 */ tmp = *dst_ptr_v; BLEND_8(ovl_ptr[2], tmp, ovl_ptr[3]); *(dst_ptr_v++) = tmp; /* Y1 */ tmp = *dst_ptr_y; BLEND_8(ovl_ptr[4], tmp, ovl_ptr[7]); *(dst_ptr_y++) = tmp; /* Y2 */ tmp = *dst_ptr_y; BLEND_8(ovl_ptr[8], tmp, ovl_ptr[11]); *(dst_ptr_y++) = tmp; /* Y3 */ tmp = *dst_ptr_y; BLEND_8(ovl_ptr[12], tmp, ovl_ptr[15]); *(dst_ptr_y++) = tmp; ovl_ptr+=16; } ovl_ptr_start += overlay->strides[0]; dst_ptr_y_start += frame->strides[0]; dst_ptr_u_start += frame->strides[1]; dst_ptr_v_start += frame->strides[2]; /* Line 1 */ ovl_ptr = ovl_ptr_start; dst_ptr_y = dst_ptr_y_start; for(j = 0; j < jmax; j++) { /* Y0 */ tmp = *dst_ptr_y; BLEND_8(ovl_ptr[0], tmp, ovl_ptr[3]); *(dst_ptr_y++) = tmp; /* Y1 */ tmp = *dst_ptr_y; BLEND_8(ovl_ptr[4], tmp, ovl_ptr[7]); *(dst_ptr_y++) = tmp; /* Y2 */ tmp = *dst_ptr_y; BLEND_8(ovl_ptr[8], tmp, ovl_ptr[11]); *(dst_ptr_y++) = tmp; /* Y3 */ tmp = *dst_ptr_y; BLEND_8(ovl_ptr[12], tmp, ovl_ptr[15]); *(dst_ptr_y++) = tmp; ovl_ptr+=16; } ovl_ptr_start += overlay->strides[0]; dst_ptr_y_start += frame->strides[0]; /* Line 2 */ ovl_ptr = ovl_ptr_start; dst_ptr_y = dst_ptr_y_start; for(j = 0; j < jmax; j++) { /* Y0 */ tmp = *dst_ptr_y; BLEND_8(ovl_ptr[0], tmp, ovl_ptr[3]); *(dst_ptr_y++) = tmp; /* Y1 */ tmp = *dst_ptr_y; BLEND_8(ovl_ptr[4], tmp, ovl_ptr[7]); *(dst_ptr_y++) = tmp; /* Y2 */ tmp = *dst_ptr_y; BLEND_8(ovl_ptr[8], tmp, ovl_ptr[11]); *(dst_ptr_y++) = tmp; /* Y3 */ tmp = *dst_ptr_y; BLEND_8(ovl_ptr[12], tmp, ovl_ptr[15]); *(dst_ptr_y++) = tmp; ovl_ptr+=16; } ovl_ptr_start += overlay->strides[0]; dst_ptr_y_start += frame->strides[0]; /* Line 3 */ ovl_ptr = ovl_ptr_start; dst_ptr_y = dst_ptr_y_start; for(j = 0; j < jmax; j++) { /* Y0 */ tmp = *dst_ptr_y; BLEND_8(ovl_ptr[0], tmp, ovl_ptr[3]); *(dst_ptr_y++) = tmp; /* Y1 */ tmp = *dst_ptr_y; BLEND_8(ovl_ptr[4], tmp, ovl_ptr[7]); *(dst_ptr_y++) = tmp; /* Y2 */ tmp = *dst_ptr_y; BLEND_8(ovl_ptr[8], tmp, ovl_ptr[11]); *(dst_ptr_y++) = tmp; /* Y3 */ tmp = *dst_ptr_y; BLEND_8(ovl_ptr[12], tmp, ovl_ptr[15]); *(dst_ptr_y++) = tmp; ovl_ptr+=16; } ovl_ptr_start += overlay->strides[0]; dst_ptr_y_start += frame->strides[0]; } } /* ovl: GAVL_YUVA_32 */ static void blend_yuvj_420_p(gavl_overlay_blend_context_t * ctx, gavl_video_frame_t * frame, gavl_video_frame_t * overlay) { int i, j, imax, jmax; uint8_t * ovl_ptr; uint8_t * dst_ptr_y; uint8_t * dst_ptr_u; uint8_t * dst_ptr_v; uint8_t * ovl_ptr_start; uint8_t * dst_ptr_y_start; uint8_t * dst_ptr_u_start; uint8_t * dst_ptr_v_start; int tmp; imax = ctx->ovl->src_rect.h/2; jmax = ctx->ovl->src_rect.w/2; ovl_ptr_start = overlay->planes[0]; dst_ptr_y_start = frame->planes[0]; dst_ptr_u_start = frame->planes[1]; dst_ptr_v_start = frame->planes[2]; for(i = 0; i < imax; i++) { ovl_ptr = ovl_ptr_start; dst_ptr_y = dst_ptr_y_start; dst_ptr_u = dst_ptr_u_start; dst_ptr_v = dst_ptr_v_start; for(j = 0; j < jmax; j++) { /* Y0 */ tmp = *dst_ptr_y; BLEND_8(Y_8_TO_YJ_8(ovl_ptr[0]), tmp, ovl_ptr[3]); *(dst_ptr_y++) = tmp; /* U0 */ tmp = *dst_ptr_u; BLEND_8(UV_8_TO_UVJ_8(ovl_ptr[1]), tmp, ovl_ptr[3]); *(dst_ptr_u++) = tmp; /* V0 */ tmp = *dst_ptr_v; BLEND_8(UV_8_TO_UVJ_8(ovl_ptr[2]), tmp, ovl_ptr[3]); *(dst_ptr_v++) = tmp; /* Y1 */ tmp = *dst_ptr_y; BLEND_8(Y_8_TO_YJ_8(ovl_ptr[4]), tmp, ovl_ptr[7]); *(dst_ptr_y++) = tmp; ovl_ptr+=8; } ovl_ptr_start += overlay->strides[0]; dst_ptr_y_start += frame->strides[0]; dst_ptr_u_start += frame->strides[1]; dst_ptr_v_start += frame->strides[2]; ovl_ptr = ovl_ptr_start; dst_ptr_y = dst_ptr_y_start; for(j = 0; j < jmax; j++) { /* Y0 */ tmp = *dst_ptr_y; BLEND_8(Y_8_TO_YJ_8(ovl_ptr[0]), tmp, ovl_ptr[3]); *(dst_ptr_y++) = tmp; /* Y1 */ tmp = *dst_ptr_y; BLEND_8(Y_8_TO_YJ_8(ovl_ptr[4]), tmp, ovl_ptr[7]); *(dst_ptr_y++) = tmp; ovl_ptr+=8; } ovl_ptr_start += overlay->strides[0]; dst_ptr_y_start += frame->strides[0]; } } /* ovl: GAVL_YUVA_32 */ static void blend_yuvj_422_p(gavl_overlay_blend_context_t * ctx, gavl_video_frame_t * frame, gavl_video_frame_t * overlay) { int i, j, jmax; uint8_t * ovl_ptr; uint8_t * dst_ptr_y; uint8_t * dst_ptr_u; uint8_t * dst_ptr_v; uint8_t * ovl_ptr_start; uint8_t * dst_ptr_y_start; uint8_t * dst_ptr_u_start; uint8_t * dst_ptr_v_start; int tmp; jmax = ctx->ovl->src_rect.w/2; ovl_ptr_start = overlay->planes[0]; dst_ptr_y_start = frame->planes[0]; dst_ptr_u_start = frame->planes[1]; dst_ptr_v_start = frame->planes[2]; for(i = 0; i < ctx->ovl->src_rect.h; i++) { ovl_ptr = ovl_ptr_start; dst_ptr_y = dst_ptr_y_start; dst_ptr_u = dst_ptr_u_start; dst_ptr_v = dst_ptr_v_start; for(j = 0; j < jmax; j++) { /* Y0 */ tmp = *dst_ptr_y; BLEND_8(Y_8_TO_YJ_8(ovl_ptr[0]), tmp, ovl_ptr[3]); *(dst_ptr_y++) = tmp; /* U0 */ tmp = *dst_ptr_u; BLEND_8(UV_8_TO_UVJ_8(ovl_ptr[1]), tmp, ovl_ptr[3]); *(dst_ptr_u++) = tmp; /* V0 */ tmp = *dst_ptr_v; BLEND_8(UV_8_TO_UVJ_8(ovl_ptr[2]), tmp, ovl_ptr[3]); *(dst_ptr_v++) = tmp; /* Y1 */ tmp = *dst_ptr_y; BLEND_8(Y_8_TO_YJ_8(ovl_ptr[4]), tmp, ovl_ptr[7]); *(dst_ptr_y++) = tmp; ovl_ptr+=8; } ovl_ptr_start += overlay->strides[0]; dst_ptr_y_start += frame->strides[0]; dst_ptr_u_start += frame->strides[1]; dst_ptr_v_start += frame->strides[2]; } } /* ovl: GAVL_YUVA_32 */ static void blend_yuvj_444_p(gavl_overlay_blend_context_t * ctx, gavl_video_frame_t * frame, gavl_video_frame_t * overlay) { int i, j; uint8_t * ovl_ptr; uint8_t * dst_ptr_y; uint8_t * dst_ptr_u; uint8_t * dst_ptr_v; uint8_t * ovl_ptr_start; uint8_t * dst_ptr_y_start; uint8_t * dst_ptr_u_start; uint8_t * dst_ptr_v_start; int tmp; ovl_ptr_start = overlay->planes[0]; dst_ptr_y_start = frame->planes[0]; dst_ptr_u_start = frame->planes[1]; dst_ptr_v_start = frame->planes[2]; for(i = 0; i < ctx->ovl->src_rect.h; i++) { ovl_ptr = ovl_ptr_start; dst_ptr_y = dst_ptr_y_start; dst_ptr_u = dst_ptr_u_start; dst_ptr_v = dst_ptr_v_start; for(j = 0; j < ctx->ovl->src_rect.w; j++) { /* Y0 */ tmp = *dst_ptr_y; BLEND_8(Y_8_TO_YJ_8(ovl_ptr[0]), tmp, ovl_ptr[3]); *(dst_ptr_y++) = tmp; /* U0 */ tmp = *dst_ptr_u; BLEND_8(UV_8_TO_UVJ_8(ovl_ptr[1]), tmp, ovl_ptr[3]); *(dst_ptr_u++) = tmp; /* V0 */ tmp = *dst_ptr_v; BLEND_8(UV_8_TO_UVJ_8(ovl_ptr[2]), tmp, ovl_ptr[3]); *(dst_ptr_v++) = tmp; ovl_ptr+=4; } ovl_ptr_start += overlay->strides[0]; dst_ptr_y_start += frame->strides[0]; dst_ptr_u_start += frame->strides[1]; dst_ptr_v_start += frame->strides[2]; } } /* ovl: GAVL_YUVA_64 */ static void blend_yuv_422_p_16(gavl_overlay_blend_context_t * ctx, gavl_video_frame_t * frame, gavl_video_frame_t * overlay) { int i, j, jmax; uint16_t * ovl_ptr; uint16_t * dst_ptr_y; uint16_t * dst_ptr_u; uint16_t * dst_ptr_v; uint8_t * ovl_ptr_start; uint8_t * dst_ptr_y_start; uint8_t * dst_ptr_u_start; uint8_t * dst_ptr_v_start; int64_t tmp, alpha; ovl_ptr_start = overlay->planes[0]; dst_ptr_y_start = frame->planes[0]; dst_ptr_u_start = frame->planes[1]; dst_ptr_v_start = frame->planes[2]; jmax = ctx->ovl->src_rect.w / 2; for(i = 0; i < ctx->ovl->src_rect.h; i++) { ovl_ptr = (uint16_t*)ovl_ptr_start; dst_ptr_y = (uint16_t*)dst_ptr_y_start; dst_ptr_u = (uint16_t*)dst_ptr_u_start; dst_ptr_v = (uint16_t*)dst_ptr_v_start; for(j = 0; j < jmax; j++) { alpha = ovl_ptr[3]; /* Y0 */ tmp = *dst_ptr_y; BLEND_16(ovl_ptr[0], tmp, alpha); *(dst_ptr_y++) = tmp; /* U0 */ tmp = *dst_ptr_u; BLEND_16(ovl_ptr[1], tmp, alpha); *(dst_ptr_u++) = tmp; /* V0 */ tmp = *dst_ptr_v; BLEND_16(ovl_ptr[2], tmp, alpha); *(dst_ptr_v++) = tmp; alpha = ovl_ptr[7]; /* Y1 */ tmp = *dst_ptr_y; BLEND_16(ovl_ptr[0], tmp, alpha); *(dst_ptr_y++) = tmp; ovl_ptr+=8; } ovl_ptr_start += overlay->strides[0]; dst_ptr_y_start += frame->strides[0]; dst_ptr_u_start += frame->strides[1]; dst_ptr_v_start += frame->strides[2]; } } /* ovl: GAVL_YUVA_64 */ static void blend_yuv_444_p_16(gavl_overlay_blend_context_t * ctx, gavl_video_frame_t * frame, gavl_video_frame_t * overlay) { int i, j; uint16_t * ovl_ptr; uint16_t * dst_ptr_y; uint16_t * dst_ptr_u; uint16_t * dst_ptr_v; uint8_t * ovl_ptr_start; uint8_t * dst_ptr_y_start; uint8_t * dst_ptr_u_start; uint8_t * dst_ptr_v_start; int64_t tmp, alpha; ovl_ptr_start = overlay->planes[0]; dst_ptr_y_start = frame->planes[0]; dst_ptr_u_start = frame->planes[1]; dst_ptr_v_start = frame->planes[2]; for(i = 0; i < ctx->ovl->src_rect.h; i++) { ovl_ptr = (uint16_t*)ovl_ptr_start; dst_ptr_y = (uint16_t*)dst_ptr_y_start; dst_ptr_u = (uint16_t*)dst_ptr_u_start; dst_ptr_v = (uint16_t*)dst_ptr_v_start; for(j = 0; j < ctx->ovl->src_rect.w; j++) { alpha = ovl_ptr[3]; /* Y0 */ tmp = *dst_ptr_y; BLEND_16(ovl_ptr[0], tmp, alpha); *(dst_ptr_y++) = tmp; /* U0 */ tmp = *dst_ptr_u; BLEND_16(ovl_ptr[1], tmp, alpha); *(dst_ptr_u++) = tmp; /* V0 */ tmp = *dst_ptr_v; BLEND_16(ovl_ptr[2], tmp, alpha); *(dst_ptr_v++) = tmp; ovl_ptr+=4; } ovl_ptr_start += overlay->strides[0]; dst_ptr_y_start += frame->strides[0]; dst_ptr_u_start += frame->strides[1]; dst_ptr_v_start += frame->strides[2]; } } gavl_blend_func_t gavl_find_blend_func_c(gavl_overlay_blend_context_t * ctx, gavl_pixelformat_t frame_format, gavl_pixelformat_t * overlay_format) { switch(frame_format) { case GAVL_GRAY_8: *overlay_format = GAVL_GRAYA_16; return blend_gray_8; break; case GAVL_GRAY_16: *overlay_format = GAVL_GRAYA_32; return blend_gray_16; break; case GAVL_GRAY_FLOAT: *overlay_format = GAVL_GRAYA_FLOAT; return blend_gray_float; break; case GAVL_GRAYA_16: *overlay_format = GAVL_GRAYA_16; return blend_graya_16; break; case GAVL_GRAYA_32: *overlay_format = GAVL_GRAYA_32; return blend_graya_32; break; case GAVL_GRAYA_FLOAT: *overlay_format = GAVL_GRAYA_FLOAT; return blend_graya_float; break; case GAVL_RGB_15: *overlay_format = GAVL_RGBA_32; return blend_rgb_15; break; case GAVL_BGR_15: *overlay_format = GAVL_RGBA_32; return blend_bgr_15; break; case GAVL_RGB_16: *overlay_format = GAVL_RGBA_32; return blend_rgb_16; break; case GAVL_BGR_16: *overlay_format = GAVL_RGBA_32; return blend_bgr_16; break; case GAVL_RGB_24: *overlay_format = GAVL_RGBA_32; return blend_rgb_24; break; case GAVL_BGR_24: *overlay_format = GAVL_RGBA_32; return blend_bgr_24; break; case GAVL_RGB_32: *overlay_format = GAVL_RGBA_32; return blend_rgb_32; break; case GAVL_BGR_32: *overlay_format = GAVL_RGBA_32; return blend_bgr_32; break; case GAVL_RGBA_32: *overlay_format = GAVL_RGBA_32; return blend_rgba_32; break; case GAVL_YUY2: *overlay_format = GAVL_YUVA_32; return blend_yuy2; break; case GAVL_UYVY: *overlay_format = GAVL_YUVA_32; return blend_uyvy; break; case GAVL_YUVA_32: *overlay_format = GAVL_YUVA_32; return blend_yuva_32; break; case GAVL_YUV_420_P: *overlay_format = GAVL_YUVA_32; return blend_yuv_420_p; break; case GAVL_YUV_422_P: *overlay_format = GAVL_YUVA_32; return blend_yuv_422_p; break; case GAVL_YUV_444_P: *overlay_format = GAVL_YUVA_32; return blend_yuv_444_p; break; case GAVL_YUV_411_P: *overlay_format = GAVL_YUVA_32; return blend_yuv_411_p; break; case GAVL_YUV_410_P: *overlay_format = GAVL_YUVA_32; return blend_yuv_410_p; break; case GAVL_YUVJ_420_P: *overlay_format = GAVL_YUVA_32; return blend_yuvj_420_p; break; case GAVL_YUVJ_422_P: *overlay_format = GAVL_YUVA_32; return blend_yuvj_422_p; break; case GAVL_YUVJ_444_P: *overlay_format = GAVL_YUVA_32; return blend_yuvj_444_p; break; case GAVL_YUV_444_P_16: *overlay_format = GAVL_YUVA_64; return blend_yuv_444_p_16; break; case GAVL_YUV_422_P_16: *overlay_format = GAVL_YUVA_64; return blend_yuv_422_p_16; break; case GAVL_RGB_48: *overlay_format = GAVL_RGBA_64; return blend_rgb_48; break; case GAVL_RGBA_64: *overlay_format = GAVL_RGBA_64; return blend_rgba_64; break; case GAVL_YUVA_64: *overlay_format = GAVL_YUVA_64; return blend_rgba_64; break; case GAVL_RGB_FLOAT: *overlay_format = GAVL_RGBA_FLOAT; return blend_rgb_float; break; case GAVL_YUV_FLOAT: *overlay_format = GAVL_YUVA_FLOAT; return blend_rgb_float; break; case GAVL_YUVA_FLOAT: *overlay_format = GAVL_YUVA_FLOAT; return blend_rgba_float; break; case GAVL_RGBA_FLOAT: *overlay_format = GAVL_RGBA_FLOAT; return blend_rgba_float; break; case GAVL_PIXELFORMAT_NONE: return NULL; } return NULL; } bplaum-gavl-b9385e3/gavl/c/colorspace_c.c000066400000000000000000000022151513252040200202320ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include #include "colorspace_tables.h" #include "colorspace_macros.h" #include "_rgb_rgb_c.c" #include "_rgb_yuv_c.c" #include "_yuv_rgb_c.c" #include "_yuv_yuv_c.c" bplaum-gavl-b9385e3/gavl/c/colorspace_macros.h000066400000000000000000001344561513252040200213160ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #define RECLIP_32_TO_8(color) (uint8_t)((color & ~0xFF)?((-color) >> 31) : color) // #define RECLIP_32_TO_8(color) color>255?255:((color<0)?0:color) #define RECLIP_32_TO_16(color) (uint16_t)((color & ~0xFFFF)?((-color) >> 31) : color) #define RECLIP_64_TO_8(color) (uint8_t)((color & ~0xFF)?((-color) >> 63) : color) #define RECLIP_64_TO_16(color) (uint16_t)((color & ~0xFFFF)?((-color) >> 63) : color) // #define RECLIP_16(color) (uint16_t)((color & ~0xFFFF)?0xFFFF:((color<0)?0:color)) #define RECLIP_FLOAT(color) ((color>1.0)?1.0:((color<0.0)?0.0:color)) #define RECLIP(color, min, max) ((color>max)?max:((color>11] #define RGB16_TO_G_8(pixel) gavl_rgb_6_to_8[(pixel & RGB16_MIDDLE_MASK)>>5] #define RGB16_TO_B_8(pixel) gavl_rgb_5_to_8[(pixel & RGB16_LOWER_MASK)] #define BGR16_TO_B_8(pixel) RGB16_TO_R_8(pixel) #define BGR16_TO_G_8(pixel) RGB16_TO_G_8(pixel) #define BGR16_TO_R_8(pixel) RGB16_TO_B_8(pixel) /* Extract 16 bit RGB values from 16 bit pixels */ #define RGB16_TO_R_16(pixel) gavl_rgb_5_to_16[(pixel & RGB16_UPPER_MASK)>>11] #define RGB16_TO_G_16(pixel) gavl_rgb_6_to_16[(pixel & RGB16_MIDDLE_MASK)>>5] #define RGB16_TO_B_16(pixel) gavl_rgb_5_to_16[(pixel & RGB16_LOWER_MASK)] #define BGR16_TO_B_16(pixel) RGB16_TO_R_16(pixel) #define BGR16_TO_G_16(pixel) RGB16_TO_G_16(pixel) #define BGR16_TO_R_16(pixel) RGB16_TO_B_16(pixel) /* Extract float RGB values from 16 bit pixels */ #define RGB16_TO_R_FLOAT(pixel) gavl_rgb_5_to_float[(pixel & RGB16_UPPER_MASK)>>11] #define RGB16_TO_G_FLOAT(pixel) gavl_rgb_6_to_float[(pixel & RGB16_MIDDLE_MASK)>>5] #define RGB16_TO_B_FLOAT(pixel) gavl_rgb_5_to_float[(pixel & RGB16_LOWER_MASK)] #define BGR16_TO_B_FLOAT(pixel) RGB16_TO_R_FLOAT(pixel) #define BGR16_TO_G_FLOAT(pixel) RGB16_TO_G_FLOAT(pixel) #define BGR16_TO_R_FLOAT(pixel) RGB16_TO_B_FLOAT(pixel) /* Masks for BGR16 and RGB16 formats */ #define RGB15_LOWER_MASK 0x001f #define RGB15_MIDDLE_MASK 0x03e0 #define RGB15_UPPER_MASK 0x7C00 /* Extract 8 bit RGB values from 16 bit pixels */ #define RGB15_TO_R_8(pixel) gavl_rgb_5_to_8[(pixel & RGB15_UPPER_MASK)>>10] #define RGB15_TO_G_8(pixel) gavl_rgb_5_to_8[(pixel & RGB15_MIDDLE_MASK)>>5] #define RGB15_TO_B_8(pixel) gavl_rgb_5_to_8[(pixel & RGB15_LOWER_MASK)] #define BGR15_TO_B_8(pixel) RGB15_TO_R_8(pixel) #define BGR15_TO_G_8(pixel) RGB15_TO_G_8(pixel) #define BGR15_TO_R_8(pixel) RGB15_TO_B_8(pixel) #define RGB15_TO_R_16(pixel) gavl_rgb_5_to_16[(pixel & RGB15_UPPER_MASK)>>10] #define RGB15_TO_G_16(pixel) gavl_rgb_5_to_16[(pixel & RGB15_MIDDLE_MASK)>>5] #define RGB15_TO_B_16(pixel) gavl_rgb_5_to_16[(pixel & RGB15_LOWER_MASK)] #define BGR15_TO_B_16(pixel) RGB15_TO_R_16(pixel) #define BGR15_TO_G_16(pixel) RGB15_TO_G_16(pixel) #define BGR15_TO_R_16(pixel) RGB15_TO_B_16(pixel) #define RGB15_TO_R_FLOAT(pixel) gavl_rgb_5_to_float[(pixel & RGB15_UPPER_MASK)>>10] #define RGB15_TO_G_FLOAT(pixel) gavl_rgb_5_to_float[(pixel & RGB15_MIDDLE_MASK)>>5] #define RGB15_TO_B_FLOAT(pixel) gavl_rgb_5_to_float[(pixel & RGB15_LOWER_MASK)] #define BGR15_TO_B_FLOAT(pixel) RGB15_TO_R_FLOAT(pixel) #define BGR15_TO_G_FLOAT(pixel) RGB15_TO_G_FLOAT(pixel) #define BGR15_TO_R_FLOAT(pixel) RGB15_TO_B_FLOAT(pixel) /* Conversion from 8 bit */ #define RGB_8_TO_16(val) (((uint32_t)(val))<<8)|(val) #define RGB_8_TO_FLOAT(val) ((float)(val)/255.0) /* Conversion from float */ #ifdef DO_ROUND #define RGB_FLOAT_TO_8(val, dst) dst=(uint8_t)((val)*255.0+0.5) #define RGB_FLOAT_TO_16(val, dst) dst=(uint16_t)((val)*65535.0+0.5) #else #define RGB_FLOAT_TO_8(val, dst) dst=(uint8_t)((val)*255.0) #define RGB_FLOAT_TO_16(val, dst) dst=(uint16_t)((val)*65535.0) #endif /* Conversion from 16 bit */ #ifdef DO_ROUND #define RGB_16_TO_8(val,dst) \ round_tmp=(((int32_t)val+0x80)>>8);\ dst=RECLIP_32_TO_8(round_tmp); #else #define RGB_16_TO_8(val,dst) dst=((val)>>8) #endif #define RGB_16_TO_FLOAT(val) ((float)(val)/65535.0) /* Conversion from YUV float */ #ifdef DO_ROUND #define Y_FLOAT_TO_8(val,dst) dst=(int)(val * 219.0+0.5) + 16; #define UV_FLOAT_TO_8(val,dst) dst=(int)(val * 224.0+0.5) + 128; #else #define Y_FLOAT_TO_8(val,dst) dst=(int)(val * 219.0) + 16; #define UV_FLOAT_TO_8(val,dst) dst=(int)(val * 224.0) + 128; #endif #ifdef DO_ROUND #define Y_FLOAT_TO_16(val,dst) dst=(int)(val * 219.0 * (float)0x100+0.5) + 0x1000; #define UV_FLOAT_TO_16(val,dst) dst=(int)(val * 224.0 * (float)0x100+0.5) + 0x8000; #else #define Y_FLOAT_TO_16(val,dst) dst=(int)(val * 219.0 * (float)0x100) + 0x1000; #define UV_FLOAT_TO_16(val,dst) dst=(int)(val * 224.0 * (float)0x100) + 0x8000; #endif #ifdef DO_ROUND #define YJ_FLOAT_TO_8(val,dst) dst=(int)(val * 255.0+0.5); #define UVJ_FLOAT_TO_8(val,dst) dst=(int)(val * 255.0+0.5) + 128; #else #define YJ_FLOAT_TO_8(val,dst) dst=(int)(val * 255.0); #define UVJ_FLOAT_TO_8(val,dst) dst=(int)(val * 255.0) + 128; #endif /* Conversion from YUV 16 */ #ifdef DO_ROUND #define Y_16_TO_Y_8(val,dst) dst=((val+0x80)>>8) #define UV_16_TO_UV_8(val,dst) dst=((val+0x80)>>8) #define YJ_16_TO_Y_8(val,dst) dst=(((int)val * 219+0x8000)>>16) + 16; #define YJ_16_TO_Y_16(val,dst) dst=(((int)val * 219+0x80)>>8) + 0x1000; #define UVJ_16_TO_UV_16(val,dst) dst=(((int)val * 224+0x80)>>8) + 0x1000; #else #define Y_16_TO_Y_8(val,dst) dst=((val)>>8) #define UV_16_TO_UV_8(val,dst) dst=((val)>>8) #define YJ_16_TO_Y_8(val,dst) dst=(((int)val * 219)>>16) + 16; #define YJ_16_TO_Y_16(val,dst) dst=(((int)val * 219)>>8) + 0x1000; #define UVJ_16_TO_UV_16(val,dst) dst=(((int)val * 224)>>8) + 0x1000; #endif #ifdef DO_ROUND #define Y_16_TO_YJ_8(val,dst) dst=((((RECLIP(val, 0x1000, 0xEB00)-0x1000)*255)/219+0x80)>>8) #define UV_16_TO_UVJ_8(val,dst) dst=((((RECLIP(val, 0x1000, 0xF000)-0x1000)*255)/224+0x80)>>8) #define Y_16_TO_YJ_16(val,dst) dst=(((uint32_t)((RECLIP((uint32_t)val, 0x1000, 0xEB00)-0x1000)*65535)/219+0x80)>>8) #define UV_16_TO_UVJ_16(val,dst) dst=(((uint32_t)((RECLIP((uint32_t)val, 0x1000, 0xF000)-0x1000)*65535)/224+0x80)>>8) #else #define Y_16_TO_YJ_8(val,dst) dst=((((RECLIP(val, 0x1000, 0xEB00)-0x1000)*255)/219)>>8) #define UV_16_TO_UVJ_8(val,dst) dst=((((RECLIP(val, 0x1000, 0xF000)-0x1000)*255)/224)>>8) #define Y_16_TO_YJ_16(val,dst) dst=((((uint32_t)(RECLIP(val, 0x1000, 0xEB00)-0x1000)*65535)/219)>>8) #define UV_16_TO_UVJ_16(val,dst) dst=((((uint32_t)(RECLIP(val, 0x1000, 0xF000)-0x1000)*65535)/224)>>8) #endif #define Y_16_TO_Y_FLOAT(val) (float)(RECLIP(val, 0x1000, 0xEB00)-0x1000) / (219.0*256.0) #define UV_16_TO_UV_FLOAT(val) (float)(RECLIP(val, 0x1000, 0xF000)-0x1000) / (256.0 * 224.0) - 0.5 /* Conversion from YUV 8 */ #define Y_8_TO_16(val) ((val)<<8) #define Y_8_TO_FLOAT(val) gavl_y_8_to_y_float[val] #define UV_8_TO_16(val) ((val)<<8) #define UV_8_TO_FLOAT(val) gavl_uv_8_to_uv_float[val] #define Y_8_TO_YJ_8(val) gavl_y_8_to_yj_8[val] #define UV_8_TO_UVJ_8(val) gavl_uv_8_to_uvj_8[val] #define YJ_8_TO_Y_8(val) gavl_yj_8_to_y_8[val] #define UVJ_8_TO_UV_8(val) gavl_uvj_8_to_uv_8[val] #define YJ_8_TO_Y_16(val) gavl_yj_8_to_y_16[val] #define UVJ_8_TO_UV_16(val) gavl_uvj_8_to_uv_16[val] #define YJ_8_TO_Y_FLOAT(val) RGB_8_TO_FLOAT(val) #define UVJ_8_TO_UV_FLOAT(val) RGB_8_TO_FLOAT(val) - 0.5; #define Y_8_TO_YJ_16(val) gavl_y_8_to_yj_16[val] /* RGB -> YUV conversion */ /* 24 -> 8 */ #define RGB_24_TO_Y_8(r,g,b,y) y=(gavl_r_to_y[r]+gavl_g_to_y[g]+gavl_b_to_y[b])>>16; #define RGB_24_TO_YUV_8(r,g,b,y,u,v) \ RGB_24_TO_Y_8(r,g,b,y); \ u=(gavl_r_to_u[r]+gavl_g_to_u[g]+gavl_b_to_u[b])>>16; \ v=(gavl_r_to_v[r]+gavl_g_to_v[g]+gavl_b_to_v[b])>>16; #define RGB_24_TO_YJ_8(r,g,b,y) y=(gavl_r_to_yj[r]+gavl_g_to_yj[g]+gavl_b_to_yj[b])>>16; #define RGB_24_TO_YUVJ_8(r,g,b,y,u,v) \ RGB_24_TO_YJ_8(r,g,b,y); \ u=(gavl_r_to_uj[r]+gavl_g_to_uj[g]+gavl_b_to_uj[b])>>16; \ v=(gavl_r_to_vj[r]+gavl_g_to_vj[g]+gavl_b_to_vj[b])>>16; /* 24 -> float */ #define RGB_24_TO_Y_FLOAT(r,g,b,y) y=(gavl_r_to_y_float[r]+gavl_g_to_y_float[g]+gavl_b_to_y_float[b]); #define RGB_24_TO_YUV_FLOAT(r,g,b,y,u,v) \ RGB_24_TO_Y_FLOAT(r,g,b,y); \ u=(gavl_r_to_u_float[r]+gavl_g_to_u_float[g]+gavl_b_to_u_float[b]); \ v=(gavl_r_to_v_float[r]+gavl_g_to_v_float[g]+gavl_b_to_v_float[b]); /* 24 -> 16 */ #define RGB_24_TO_Y_16(r,g,b,y) y=(gavl_r_to_y[r]+gavl_g_to_y[g]+gavl_b_to_y[b])>>8; #define RGB_24_TO_YJ_16(r,g,b,y) y=(gavl_r_to_yj[r]+gavl_g_to_yj[g]+gavl_b_to_yj[b])>>8; #define RGB_24_TO_YUV_16(r,g,b,y,u,v) \ RGB_24_TO_Y_16(r,g,b,y); \ u=(gavl_r_to_u[r]+gavl_g_to_u[g]+gavl_b_to_u[b])>>8; \ v=(gavl_r_to_v[r]+gavl_g_to_v[g]+gavl_b_to_v[b])>>8; /* 48 -> 8 */ #define r_16_to_y ((int64_t)((0.29900*219.0/255.0)*0x10000)) #define g_16_to_y ((int64_t)((0.58700*219.0/255.0)*0x10000)) #define b_16_to_y ((int64_t)((0.11400*219.0/255.0)*0x10000)) #define r_16_to_u ((int64_t)(-(0.16874*224.0/255.0)*0x10000)) #define g_16_to_u ((int64_t)(-(0.33126*224.0/255.0)*0x10000)) #define b_16_to_u ((int64_t)( (0.50000*224.0/255.0)*0x10000)) #define r_16_to_v ((int64_t)( (0.50000*224.0/255.0)*0x10000)) #define g_16_to_v ((int64_t)(-(0.41869*224.0/255.0)*0x10000)) #define b_16_to_v ((int64_t)(-(0.08131*224.0/255.0)*0x10000)) #define r_16_to_yj ((int64_t)((0.29900)*0x10000)) #define g_16_to_yj ((int64_t)((0.58700)*0x10000)) #define b_16_to_yj ((int64_t)((0.11400)*0x10000)) #define r_16_to_uj ((int64_t)(-(0.16874)*0x10000)) #define g_16_to_uj ((int64_t)(-(0.33126)*0x10000)) #define b_16_to_uj ((int64_t)( (0.50000)*0x10000)) #define r_16_to_vj ((int64_t)( (0.50000)*0x10000)) #define g_16_to_vj ((int64_t)(-(0.41869)*0x10000)) #define b_16_to_vj ((int64_t)(-(0.08131)*0x10000)) #define r_16_to_yf (0.29900/65535.0) #define g_16_to_yf (0.58700/65535.0) #define b_16_to_yf (0.11400/65535.0) #define r_16_to_uf (-0.16874/65535.0) #define g_16_to_uf (-0.33126/65535.0) #define b_16_to_uf (0.50000/65535.0) #define r_16_to_vf (0.50000/65535.0)) #define g_16_to_vf (-0.41869/65535.0) #define b_16_to_vf (-0.08131/65535.0) #ifdef DO_ROUND #define RGB_48_TO_Y_8(r,g,b,y) \ y=(r_16_to_y * r + g_16_to_y * g + b_16_to_y * b + 0x10800000LL)>>24; #define RGB_48_TO_YUV_8(r,g,b,y,u,v) \ RGB_48_TO_Y_8(r,g,b,y); \ u=(r_16_to_u * r + g_16_to_u * g + b_16_to_u * b + 0x80800000LL)>>24; \ v=(r_16_to_v * r + g_16_to_v * g + b_16_to_v * b + 0x80800000LL)>>24; #define RGB_48_TO_YJ_8(r,g,b,y) \ round_tmp=(r_16_to_yj * r + g_16_to_yj * g + b_16_to_yj * b)>>24;\ y=RECLIP_32_TO_8(round_tmp); #define RGB_48_TO_YJ_16(r,g,b,y) \ round_tmp=(r_16_to_yj * r + g_16_to_yj * g + b_16_to_yj * b)>>16;\ y=RECLIP_32_TO_16(round_tmp); #define RGB_48_TO_YUVJ_8(r,g,b,y,u,v) \ RGB_48_TO_YJ_8(r,g,b,y); \ round_tmp=(r_16_to_uj * r + g_16_to_uj * g + b_16_to_uj * b + 0x80800000LL)>>24; \ u=RECLIP_32_TO_8(round_tmp); \ round_tmp=(r_16_to_vj * r + g_16_to_vj * g + b_16_to_vj * b + 0x80800000LL)>>24; \ v=RECLIP_32_TO_8(round_tmp); #else // !DO_ROUND #define RGB_48_TO_Y_8(r,g,b,y) \ y=(r_16_to_y * r + g_16_to_y * g + b_16_to_y * b + 0x10000000LL)>>24; #define RGB_48_TO_YUV_8(r,g,b,y,u,v) \ RGB_48_TO_Y_8(r,g,b,y); \ u=(r_16_to_u * r + g_16_to_u * g + b_16_to_u * b + 0x80000000LL)>>24; \ v=(r_16_to_v * r + g_16_to_v * g + b_16_to_v * b + 0x80000000LL)>>24; #define RGB_48_TO_YJ_8(r,g,b,y) \ y=(r_16_to_yj * r + g_16_to_yj * g + b_16_to_yj * b)>>24; #define RGB_48_TO_YJ_16(r,g,b,y) \ y=(r_16_to_yj * r + g_16_to_yj * g + b_16_to_yj * b)>>16; #define RGB_48_TO_YUVJ_8(r,g,b,y,u,v) \ RGB_48_TO_YJ_8(r,g,b,y); \ u=(r_16_to_uj * r + g_16_to_uj * g + b_16_to_uj * b + 0x80000000LL)>>24; \ v=(r_16_to_vj * r + g_16_to_vj * g + b_16_to_vj * b + 0x80000000LL)>>24; #endif // !DO_ROUND /* 48 -> 16 */ #define RGB_48_TO_Y_16(r,g,b,y) \ y=(r_16_to_y * r + g_16_to_y * g + b_16_to_y * b + 16 * 0x1000000LL)>>16; #define RGB_48_TO_YUV_16(r,g,b,y,u,v) \ RGB_48_TO_Y_16(r,g,b,y); \ u=(r_16_to_u * r + g_16_to_u * g + b_16_to_u * b + 0x80000000LL)>>16; \ v=(r_16_to_v * r + g_16_to_v * g + b_16_to_v * b + 0x80000000LL)>>16; /* 48 -> float */ #define RGB_48_TO_Y_FLOAT(r,g,b,y) \ y=r_16_to_yf * (float)(r) + g_16_to_yf * (float)(g) + b_16_to_yf * (float)(b); #define RGB_48_TO_YUV_FLOAT(r,g,b,y,u,v) \ RGB_48_TO_Y_FLOAT(r,g,b,y); \ u=r_16_to_uf * (float)(r) + g_16_to_uf * (float)(g) + b_16_to_uf * (float)(b); \ v=(r_16_to_vf * (float)(r) + g_16_to_vf * (float)(g) + b_16_to_vf * (float)(b); /* RGB Float -> YUV */ #define r_float_to_y 0.29900 #define g_float_to_y 0.58700 #define b_float_to_y 0.11400 #define r_float_to_u (-0.16874) #define g_float_to_u (-0.33126) #define b_float_to_u 0.50000 #define r_float_to_v 0.50000 #define g_float_to_v (-0.41869) #define b_float_to_v (-0.08131) #define INIT_RGB_FLOAT_TO_YUV \ float y_tmp, u_tmp, v_tmp; #define INIT_RGB_FLOAT_TO_Y \ float y_tmp; /* Float -> 8 */ #define RGB_FLOAT_TO_Y_8(r, g, b, y) \ y_tmp = r_float_to_y * r + g_float_to_y * g + b_float_to_y * b; \ Y_FLOAT_TO_8(y_tmp, y); #define RGB_FLOAT_TO_YUV_8(r, g, b, y, u, v) \ RGB_FLOAT_TO_Y_8(r, g, b, y) \ u_tmp = r_float_to_u * r + g_float_to_u * g + b_float_to_u * b; \ v_tmp = r_float_to_v * r + g_float_to_v * g + b_float_to_v * b; \ UV_FLOAT_TO_8(u_tmp, u); \ UV_FLOAT_TO_8(v_tmp, v); #define RGB_FLOAT_TO_YJ_8(r, g, b, y) \ y_tmp = r_float_to_y * r + g_float_to_y * g + b_float_to_y * b; \ YJ_FLOAT_TO_8(y_tmp, y); #define RGB_FLOAT_TO_YUVJ_8(r, g, b, y, u, v) \ RGB_FLOAT_TO_YJ_8(r, g, b, y) \ u_tmp = r_float_to_u * r + g_float_to_u * g + b_float_to_u * b; \ v_tmp = r_float_to_v * r + g_float_to_v * g + b_float_to_v * b; \ UVJ_FLOAT_TO_8(u_tmp, u); \ UVJ_FLOAT_TO_8(v_tmp, v); /* Float -> 16 */ #define RGB_FLOAT_TO_Y_16(r, g, b, y) \ y_tmp = r_float_to_y * r + g_float_to_y * g + b_float_to_y * b; \ Y_FLOAT_TO_16(y_tmp, y); #define RGB_FLOAT_TO_YUV_16(r, g, b, y, u, v) \ RGB_FLOAT_TO_Y_16(r, g, b, y) \ u_tmp = r_float_to_u * r + g_float_to_u * g + b_float_to_u * b; \ v_tmp = r_float_to_v * r + g_float_to_v * g + b_float_to_v * b; \ UV_FLOAT_TO_16(u_tmp, u); \ UV_FLOAT_TO_16(v_tmp, v); #define RGB_FLOAT_TO_YJ_16(r, g, b, y) \ y_tmp = r_float_to_y * r + g_float_to_y * g + b_float_to_y * b; \ Y_FLOAT_TO_16(y_tmp, y); /* Float -> float */ #define RGB_FLOAT_TO_Y_FLOAT(r, g, b, y) \ y = r_float_to_y * r + g_float_to_y * g + b_float_to_y * b; \ #define RGB_FLOAT_TO_YUV_FLOAT(r, g, b, y, u, v) \ RGB_FLOAT_TO_Y_FLOAT(r, g, b, y) \ u = r_float_to_u * r + g_float_to_u * g + b_float_to_u * b; \ v = r_float_to_v * r + g_float_to_v * g + b_float_to_v * b; /* YUV (8bit) -> */ #define YUV_8_TO_RGB_24(y,u,v,r,g,b) i_tmp=(gavl_y_to_rgb[y]+gavl_v_to_r[v])>>16;\ r=RECLIP_32_TO_8(i_tmp);\ i_tmp=(gavl_y_to_rgb[y]+gavl_u_to_g[u]+gavl_v_to_g[v])>>16;\ g=RECLIP_32_TO_8(i_tmp);\ i_tmp=(gavl_y_to_rgb[y]+gavl_u_to_b[u])>>16;\ b=RECLIP_32_TO_8(i_tmp); #define YUVJ_8_TO_RGB_24(y,u,v,r,g,b) i_tmp=(gavl_yj_to_rgb[y]+gavl_vj_to_r[v])>>16;\ r=RECLIP_32_TO_8(i_tmp);\ i_tmp=(gavl_yj_to_rgb[y]+gavl_uj_to_g[u]+gavl_vj_to_g[v])>>16;\ g=RECLIP_32_TO_8(i_tmp);\ i_tmp=(gavl_yj_to_rgb[y]+gavl_uj_to_b[u])>>16;\ b=RECLIP_32_TO_8(i_tmp); #define YUV_8_TO_RGB_48(y,u,v,r,g,b) i_tmp=(gavl_y_to_rgb[y]+gavl_v_to_r[v])>>8;\ r=RECLIP_32_TO_16(i_tmp);\ i_tmp=(gavl_y_to_rgb[y]+gavl_u_to_g[u]+gavl_v_to_g[v])>>8;\ g=RECLIP_32_TO_16(i_tmp);\ i_tmp=(gavl_y_to_rgb[y]+gavl_u_to_b[u])>>8;\ b=RECLIP_32_TO_16(i_tmp); #define YUVJ_8_TO_RGB_48(y,u,v,r,g,b) i_tmp=(gavl_yj_to_rgb[y]+gavl_vj_to_r[v])>>8;\ r=RECLIP_32_TO_16(i_tmp);\ i_tmp=(gavl_yj_to_rgb[y]+gavl_uj_to_g[u]+gavl_vj_to_g[v])>>8;\ g=RECLIP_32_TO_16(i_tmp);\ i_tmp=(gavl_yj_to_rgb[y]+gavl_uj_to_b[u])>>8;\ b=RECLIP_32_TO_16(i_tmp); #define YUV_8_TO_RGB_FLOAT(y,u,v,r,g,b) \ i_tmp=(gavl_y_to_rgb_float[y]+gavl_v_to_r_float[v]); \ r=RECLIP_FLOAT(i_tmp); \ i_tmp=(gavl_y_to_rgb_float[y]+gavl_u_to_g_float[u]+gavl_v_to_g_float[v]); \ g=RECLIP_FLOAT(i_tmp); \ i_tmp=(gavl_y_to_rgb_float[y]+gavl_u_to_b_float[u]); \ b=RECLIP_FLOAT(i_tmp); #define YUVJ_8_TO_RGB_FLOAT(y,u,v,r,g,b) \ i_tmp=(gavl_yj_to_rgb_float[y]+gavl_vj_to_r_float[v]); \ r=RECLIP_FLOAT(i_tmp); \ i_tmp=(gavl_yj_to_rgb_float[y]+gavl_uj_to_g_float[u]+gavl_vj_to_g_float[v]); \ g=RECLIP_FLOAT(i_tmp); \ i_tmp=(gavl_yj_to_rgb_float[y]+gavl_uj_to_b_float[u]); \ b=RECLIP_FLOAT(i_tmp); /* YUV (16 bit) -> 8 */ #define y_16_to_rgb ((int64_t)(255.0/219.0 * 0x10000)) #define v_16_to_r ((int64_t)( 1.40200*255.0/224.0 * 0x10000)) #define u_16_to_g ((int64_t)(-0.34414*255.0/224.0 * 0x10000)) #define v_16_to_g ((int64_t)(-0.71414*255.0/224.0 * 0x10000)) #define u_16_to_b ((int64_t)( 1.77200*255.0/224.0 * 0x10000)) #ifdef DO_ROUND #define YUV_16_TO_RGB_24(y,u,v,r,g,b) \ i_tmp=(y_16_to_rgb * (y-0x1000) + v_16_to_r * (v-0x8000)+0x8000)>>24; \ r = RECLIP_64_TO_8(i_tmp);\ i_tmp=(y_16_to_rgb * (y-0x1000) + u_16_to_g * (u-0x8000)+ v_16_to_g * (v-0x8000)+0x8000)>>24; \ g = RECLIP_64_TO_8(i_tmp);\ i_tmp=(y_16_to_rgb * (y-0x1000) + u_16_to_b * (u-0x8000)+0x8000)>>24; \ b = RECLIP_64_TO_8(i_tmp); #else #define YUV_16_TO_RGB_24(y,u,v,r,g,b) \ i_tmp=(y_16_to_rgb * (y-0x1000) + v_16_to_r * (v-0x8000))>>24; \ r = RECLIP_64_TO_8(i_tmp);\ i_tmp=(y_16_to_rgb * (y-0x1000) + u_16_to_g * (u-0x8000)+ v_16_to_g * (v-0x8000))>>24; \ g = RECLIP_64_TO_8(i_tmp);\ i_tmp=(y_16_to_rgb * (y-0x1000) + u_16_to_b * (u-0x8000))>>24; \ b = RECLIP_64_TO_8(i_tmp); #endif /* YUV (16 bit) -> 16 */ #define YUV_16_TO_RGB_48(y,u,v,r,g,b) \ i_tmp=(y_16_to_rgb * (y-0x1000) + v_16_to_r * (v-0x8000))>>16; \ r = RECLIP_64_TO_16(i_tmp);\ i_tmp=(y_16_to_rgb * (y-0x1000) + u_16_to_g * (u-0x8000)+ v_16_to_g * (v-0x8000))>>16; \ g = RECLIP_64_TO_16(i_tmp);\ i_tmp=(y_16_to_rgb * (y-0x1000) + u_16_to_b * (u-0x8000))>>16; \ b = RECLIP_64_TO_16(i_tmp); /* YUV (16 bit) -> float */ #define y_16_to_rgb_float (255.0/219.0/65535.0) #define v_16_to_r_float (1.40200*255.0/224.0/65535.0) #define u_16_to_g_float (-0.34414*255.0/224.0/65535.0) #define v_16_to_g_float (-0.71414*255.0/224.0/65535.0) #define u_16_to_b_float (1.77200*255.0/224.0/65535.0) #define YUV_16_TO_RGB_FLOAT(y,u,v,r,g,b) \ i_tmp=(y_16_to_rgb_float * (y-0x1000) + v_16_to_r_float * (v-0x8000)); \ r = RECLIP_FLOAT(i_tmp);\ i_tmp=(y_16_to_rgb_float * (y-0x1000) + u_16_to_g_float * (u-0x8000)+ v_16_to_g_float * (v-0x8000)); \ g = RECLIP_FLOAT(i_tmp);\ i_tmp=(y_16_to_rgb_float * (y-0x1000) + u_16_to_b_float * (u-0x8000)); \ b = RECLIP_FLOAT(i_tmp); /* YUV (float) -> 8 */ #define v_float_to_r_float (1.40200) #define u_float_to_g_float (-0.34414) #define v_float_to_g_float (-0.71414) #define u_float_to_b_float (1.77200) #define YUV_FLOAT_TO_RGB_24(y,u,v,r,g,b) \ i_tmp=(y + v_float_to_r_float * v); \ i_tmp = RECLIP_FLOAT(i_tmp);\ RGB_FLOAT_TO_8(i_tmp, r);\ i_tmp=(y + u_float_to_g_float * u + v_float_to_g_float * v); \ i_tmp = RECLIP_FLOAT(i_tmp);\ RGB_FLOAT_TO_8(i_tmp, g);\ i_tmp=(y + u_float_to_b_float * u); \ i_tmp = RECLIP_FLOAT(i_tmp);\ RGB_FLOAT_TO_8(i_tmp, b); #define YUV_FLOAT_TO_RGB_48(y,u,v,r,g,b) \ i_tmp=(y + v_float_to_r_float * v); \ i_tmp = RECLIP_FLOAT(i_tmp);\ RGB_FLOAT_TO_16(i_tmp, r);\ i_tmp=(y + u_float_to_g_float * u + v_float_to_g_float * v); \ i_tmp = RECLIP_FLOAT(i_tmp);\ RGB_FLOAT_TO_16(i_tmp, g);\ i_tmp=(y + u_float_to_b_float * u); \ i_tmp = RECLIP_FLOAT(i_tmp);\ RGB_FLOAT_TO_16(i_tmp, b); #define YUV_FLOAT_TO_RGB_FLOAT(y,u,v,r,g,b) \ i_tmp=(y + v_float_to_r_float * v); \ r = RECLIP_FLOAT(i_tmp);\ i_tmp=(y + u_float_to_g_float * u + v_float_to_g_float * v); \ g = RECLIP_FLOAT(i_tmp);\ i_tmp=(y + u_float_to_b_float * u); \ b = RECLIP_FLOAT(i_tmp); /* Combine r, g and b values to a 16 bit rgb pixel (taken from avifile) */ #define PACK_8_TO_RGB16(r,g,b,pixel) pixel=((((((r<<5)&0xff00)|g)<<6)&0xfff00)|b)>>3; #define PACK_8_TO_BGR16(r,g,b,pixel) pixel=((((((b<<5)&0xff00)|g)<<6)&0xfff00)|r)>>3; #define PACK_8_TO_RGB15(r,g,b,pixel) pixel=((((((r<<5)&0xff00)|g)<<5)&0xfff00)|b)>>3; #define PACK_8_TO_BGR15(r,g,b,pixel) pixel=((((((b<<5)&0xff00)|g)<<5)&0xfff00)|r)>>3; #define PACK_16_TO_RGB16(r,g,b,pixel) pixel=((((((r>>3)&0xff00)|(g>>8))<<6)&0xfff00)|(b>>8))>>3; #define PACK_16_TO_BGR16(r,g,b,pixel) pixel=((((((b>>3)&0xff00)|(g>>8))<<6)&0xfff00)|(r>>8))>>3; #define PACK_16_TO_RGB15(r,g,b,pixel) pixel=((((((r>>3)&0xff00)|(g>>8))<<5)&0xfff00)|(b>>8))>>3; #define PACK_16_TO_BGR15(r,g,b,pixel) pixel=((((((b>>3)&0xff00)|(g>>8))<<5)&0xfff00)|(r>>8))>>3; /* RGBA -> RGB */ #define INIT_RGBA_32 uint32_t anti_alpha;\ uint32_t background_r=ctx->options->background_16[0] >> 8; \ uint32_t background_g=ctx->options->background_16[1] >> 8; \ uint32_t background_b=ctx->options->background_16[2] >> 8; #define INIT_RGBA_64 uint32_t anti_alpha;\ uint32_t background_r=ctx->options->background_16[0]; \ uint32_t background_g=ctx->options->background_16[1]; \ uint32_t background_b=ctx->options->background_16[2]; #define INIT_RGBA_FLOAT float anti_alpha; \ float background_r=ctx->options->background_float[0]; \ float background_g=ctx->options->background_float[1]; \ float background_b=ctx->options->background_float[2]; #define INIT_RGBA_32_GRAY \ int background; \ int src_gray; \ RGB_24_TO_YJ_8(ctx->options->background_16[0] >> 8,\ ctx->options->background_16[1] >> 8,\ ctx->options->background_16[2] >> 8,\ background); #define INIT_RGBA_64_GRAY \ uint32_t background; \ uint32_t src_gray; \ RGB_48_TO_YJ_16(ctx->options->background_16[0],\ ctx->options->background_16[1],\ ctx->options->background_16[2],\ background); #define INIT_RGBA_FLOAT_GRAY \ float background; \ float src_gray; \ RGB_FLOAT_TO_Y_FLOAT(ctx->options->background_float[0],\ ctx->options->background_float[1],\ ctx->options->background_float[2],\ background); #define INIT_GRAYA_16 \ int background; \ RGB_24_TO_YJ_8(ctx->options->background_16[0] >> 8,\ ctx->options->background_16[1] >> 8,\ ctx->options->background_16[2] >> 8,\ background); #define INIT_GRAYA_32 \ uint32_t background; \ RGB_48_TO_YJ_16(ctx->options->background_16[0],\ ctx->options->background_16[1],\ ctx->options->background_16[2],\ background); #define INIT_GRAYA_FLOAT \ float background; \ RGB_FLOAT_TO_Y_FLOAT(ctx->options->background_float[0],\ ctx->options->background_float[1],\ ctx->options->background_float[2],\ background); #define RGBA_32_TO_RGB_24(src_r, src_g, src_b, src_a, dst_r, dst_g, dst_b) \ anti_alpha = 0xFF - src_a;\ dst_r=((src_a*src_r)+(anti_alpha*background_r))>>8;\ dst_g=((src_a*src_g)+(anti_alpha*background_g))>>8;\ dst_b=((src_a*src_b)+(anti_alpha*background_b))>>8; #define RGBA_32_TO_RGB_48(src_r, src_g, src_b, src_a, dst_r, dst_g, dst_b) \ anti_alpha = 0xFF - src_a;\ dst_r=((src_a*src_r)+(anti_alpha*background_r));\ dst_g=((src_a*src_g)+(anti_alpha*background_g));\ dst_b=((src_a*src_b)+(anti_alpha*background_b)); #define RGBA_32_TO_GRAY_8(src_r, src_g, src_b, src_a, dst) \ RGB_24_TO_YJ_8(src_r, src_g, src_b, src_gray) \ dst=((src_a*src_gray)+((0xFF-src_a) *background))>>8; #define RGBA_64_TO_GRAY_16(src_r, src_g, src_b, src_a, dst) \ RGB_48_TO_YJ_16(src_r, src_g, src_b, src_gray) \ dst=((src_a*src_gray)+((0xFFFF-src_a) *background))>>16; #define RGBA_FLOAT_TO_GRAY_FLOAT(src_r, src_g, src_b, src_a, dst) \ RGB_FLOAT_TO_Y_FLOAT(src_r, src_g, src_b, src_gray) \ dst=((src_a*src_gray)+((1.0-src_a)*background)); #ifdef DO_ROUND #define RGBA_64_TO_RGB_24(src_r, src_g, src_b, src_a, dst_r, dst_g, dst_b) \ anti_alpha = 0xFFFF - src_a; \ round_tmp=((src_a*src_r)+(anti_alpha*background_r))>>8; \ round_tmp=(round_tmp+0x8000)>>16;\ dst_r=RECLIP_32_TO_8(round_tmp);\ round_tmp=((src_a*src_g)+(anti_alpha*background_g))>>8; \ round_tmp=(round_tmp+0x8000)>>16;\ dst_g=RECLIP_32_TO_8(round_tmp);\ round_tmp=((src_a*src_b)+(anti_alpha*background_b))>>8;\ round_tmp=(round_tmp+0x8000)>>16;\ dst_b=RECLIP_32_TO_8(round_tmp);\ #else #define RGBA_64_TO_RGB_24(src_r, src_g, src_b, src_a, dst_r, dst_g, dst_b) \ anti_alpha = 0xFFFF - src_a; \ dst_r=((src_a*src_r)+(anti_alpha*background_r))>>24; \ dst_g=((src_a*src_g)+(anti_alpha*background_g))>>24; \ dst_b=((src_a*src_b)+(anti_alpha*background_b))>>24; #endif // DO_ROUND #define RGBA_64_TO_RGB_48(src_r, src_g, src_b, src_a, dst_r, dst_g, dst_b) \ anti_alpha = 0xFFFF - src_a; \ dst_r=((src_a*src_r)+(anti_alpha*background_r))>>16; \ dst_g=((src_a*src_g)+(anti_alpha*background_g))>>16; \ dst_b=((src_a*src_b)+(anti_alpha*background_b))>>16; #define GRAYA_16_TO_GRAY_8(src, src_a, dst) \ dst = (src * src_a + (0xff - src_a) * background)>>8; #define GRAYA_32_TO_GRAY_16(src, src_a, dst) \ dst = ((uint32_t)src * src_a + (uint32_t)(0xffff - src_a) * background) >> 16; #define GRAYA_FLOAT_TO_GRAY_FLOAT(src, src_a, dst) \ dst = (src * src_a + (1.0 - src_a) * background); #define RGBA_64_TO_RGB_FLOAT(src_r, src_g, src_b, src_a, dst_r, dst_g, dst_b) \ anti_alpha = 0xFFFF - src_a; \ dst_r=RGB_16_TO_FLOAT(((src_a*src_r)+(anti_alpha*background_r))>>16); \ dst_g=RGB_16_TO_FLOAT(((src_a*src_g)+(anti_alpha*background_g))>>16); \ dst_b=RGB_16_TO_FLOAT(((src_a*src_b)+(anti_alpha*background_b))>>16); #define RGBA_FLOAT_TO_RGB_24(src_r, src_g, src_b, src_a, dst_r, dst_g, dst_b) \ anti_alpha = 1.0 - src_a; \ RGB_FLOAT_TO_8(src_a*src_r+anti_alpha*background_r, dst_r); \ RGB_FLOAT_TO_8(src_a*src_g+anti_alpha*background_g, dst_g); \ RGB_FLOAT_TO_8(src_a*src_b+anti_alpha*background_b, dst_b); #define RGBA_FLOAT_TO_RGB_48(src_r, src_g, src_b, src_a, dst_r, dst_g, dst_b) \ anti_alpha = 1.0 - src_a; \ RGB_FLOAT_TO_16(src_a*src_r+anti_alpha*background_r, dst_r); \ RGB_FLOAT_TO_16(src_a*src_g+anti_alpha*background_g, dst_g); \ RGB_FLOAT_TO_16(src_a*src_b+anti_alpha*background_b, dst_b); #define RGBA_FLOAT_TO_RGB_FLOAT(src_r, src_g, src_b, src_a, dst_r, dst_g, dst_b) \ anti_alpha = 1.0 - src_a; \ dst_r=src_a*src_r+anti_alpha*background_r; \ dst_g=src_a*src_g+anti_alpha*background_g; \ dst_b=src_a*src_b+anti_alpha*background_b; /* YUVA 32 -> YUV */ #define INIT_YUVA_32 int anti_alpha;\ int background_y; \ int background_u; \ int background_v; \ RGB_48_TO_YUV_8(ctx->options->background_16[0], \ ctx->options->background_16[1], \ ctx->options->background_16[2],\ background_y, background_u, background_v); #define INIT_YUVA_64 uint32_t anti_alpha;\ uint32_t background_y; \ uint32_t background_u; \ uint32_t background_v; \ RGB_48_TO_YUV_16(ctx->options->background_16[0], \ ctx->options->background_16[1], \ ctx->options->background_16[2],\ background_y, background_u, background_v); #define INIT_YUVA_FLOAT_FLOAT float anti_alpha;\ float background_y, background_u, background_v; \ RGB_FLOAT_TO_YUV_FLOAT(ctx->options->background_float[0], \ ctx->options->background_float[1], \ ctx->options->background_float[2],\ background_y, background_u, background_v); #define INIT_YUVA_FLOAT float tmp; \ INIT_YUVA_FLOAT_FLOAT #define YUVA_32_TO_YUV_8(src_y, src_u, src_v, src_a, dst_y, dst_u, dst_v) \ anti_alpha = 0xFF - src_a; \ dst_y=((src_a*src_y)+(anti_alpha*background_y))>>8; \ dst_u=((src_a*src_u)+(anti_alpha*background_u))>>8; \ dst_v=((src_a*src_v)+(anti_alpha*background_v))>>8; #define YUVA_32_TO_YUV_FLOAT(src_y, src_u, src_v, src_a, dst_y, dst_u, dst_v) \ anti_alpha = 0xFF - src_a; \ dst_y=Y_16_TO_Y_FLOAT(((src_a*src_y)+(anti_alpha*background_y))); \ dst_u=UV_16_TO_UV_FLOAT(((src_a*src_u)+(anti_alpha*background_u))); \ dst_v=UV_16_TO_UV_FLOAT(((src_a*src_v)+(anti_alpha*background_v))); #define YUVA_64_TO_YUV_8(src_y, src_u, src_v, src_a, dst_y, dst_u, dst_v) \ anti_alpha = 0xFFFF - src_a; \ dst_y=((src_a*src_y)+(anti_alpha*background_y))>>24; \ dst_u=((src_a*src_u)+(anti_alpha*background_u))>>24; \ dst_v=((src_a*src_v)+(anti_alpha*background_v))>>24; #define YUVA_64_TO_YUV_FLOAT(src_y, src_u, src_v, src_a, dst_y, dst_u, dst_v) \ anti_alpha = 0xFFFF - src_a; \ dst_y=Y_16_TO_Y_FLOAT(((src_a*src_y)+(anti_alpha*background_y))>>16); \ dst_u=UV_16_TO_UV_FLOAT(((src_a*src_u)+(anti_alpha*background_u))>>16); \ dst_v=UV_16_TO_UV_FLOAT(((src_a*src_v)+(anti_alpha*background_v))>>16); #define YUVA_FLOAT_TO_YUV_8(src_y, src_u, src_v, src_a, dst_y, dst_u, dst_v) \ anti_alpha = 1.0 - src_a; \ tmp=((src_a*src_y)+(anti_alpha*background_y)); \ Y_FLOAT_TO_8(tmp, dst_y);\ tmp=((src_a*src_u)+(anti_alpha*background_u)); \ UV_FLOAT_TO_8(tmp, dst_u);\ tmp=((src_a*src_v)+(anti_alpha*background_v));\ UV_FLOAT_TO_8(tmp, dst_v); #define YUVA_FLOAT_TO_YUV_FLOAT(src_y, src_u, src_v, src_a, dst_y, dst_u, dst_v) \ anti_alpha = 1.0 - src_a; \ dst_y=((src_a*src_y)+(anti_alpha*background_y));\ dst_u=((src_a*src_u)+(anti_alpha*background_u));\ dst_v=((src_a*src_v)+(anti_alpha*background_v)); #define YUVA_FLOAT_TO_YUVJ_8(src_y, src_u, src_v, src_a, dst_y, dst_u, dst_v) \ anti_alpha = 1.0 - src_a; \ tmp=((src_a*src_y)+(anti_alpha*background_y)); \ YJ_FLOAT_TO_8(tmp, dst_y);\ tmp=((src_a*src_u)+(anti_alpha*background_u)); \ UVJ_FLOAT_TO_8(tmp, dst_u);\ tmp=((src_a*src_v)+(anti_alpha*background_v));\ UVJ_FLOAT_TO_8(tmp, dst_v); #define YUVA_FLOAT_TO_YUV_16(src_y, src_u, src_v, src_a, dst_y, dst_u, dst_v) \ anti_alpha = 1.0 - src_a; \ tmp=((src_a*src_y)+(anti_alpha*background_y)); \ Y_FLOAT_TO_16(tmp, dst_y);\ tmp=((src_a*src_u)+(anti_alpha*background_u)); \ UV_FLOAT_TO_16(tmp, dst_u);\ tmp=((src_a*src_v)+(anti_alpha*background_v));\ UV_FLOAT_TO_16(tmp, dst_v); #define YUVA_32_TO_Y_8(src_y, src_a, dst_y) \ anti_alpha = 0xFF - src_a; \ dst_y=((src_a*src_y)+(anti_alpha*background_y))>>8; #define YUVA_32_TO_Y_FLOAT(src_y, src_a, dst_y) \ anti_alpha = 0xFF - src_a; \ dst_y=Y_8_TO_FLOAT(((src_a*src_y)+(anti_alpha*background_y))>>8); #define YUVA_FLOAT_TO_Y_16(src_y, src_a, dst_y) \ anti_alpha = 1.0 - src_a; \ tmp=((src_a*src_y)+(anti_alpha*background_y)); \ Y_FLOAT_TO_16(tmp, dst_y); #define YUVA_FLOAT_TO_Y_8(src_y, src_a, dst_y) \ anti_alpha = 1.0 - src_a; \ tmp=((src_a*src_y)+(anti_alpha*background_y)); \ Y_FLOAT_TO_8(tmp, dst_y); #define YUVA_64_TO_Y_8(src_y, src_a, dst_y) \ anti_alpha = 0xFFFF - src_a; \ dst_y=((src_a*src_y)+(anti_alpha*background_y))>>24; #define YUVA_64_TO_Y_FLOAT(src_y, src_a, dst_y) \ anti_alpha = 0xFFFF - src_a; \ dst_y=Y_16_TO_Y_FLOAT(((src_a*src_y)+(anti_alpha*background_y))>>24); #define YUVA_32_TO_YUVJ_8(src_y, src_u, src_v, src_a, dst_y, dst_u, dst_v) \ anti_alpha = 0xFF - src_a; \ Y_16_TO_YJ_8(((src_a*src_y)+(anti_alpha*background_y)), dst_y); \ UV_16_TO_UVJ_8(((src_a*src_u)+(anti_alpha*background_u)), dst_u); \ UV_16_TO_UVJ_8(((src_a*src_v)+(anti_alpha*background_v)), dst_v); #define YUVA_64_TO_YUVJ_8(src_y, src_u, src_v, src_a, dst_y, dst_u, dst_v) \ anti_alpha = 0xFFFF - src_a; \ Y_16_TO_YJ_8(((src_a*src_y)+(anti_alpha*background_y))>>16, dst_y); \ UV_16_TO_UVJ_8(((src_a*src_u)+(anti_alpha*background_u))>>16, dst_u); \ UV_16_TO_UVJ_8(((src_a*src_v)+(anti_alpha*background_v))>>16, dst_v); #define YUVA_FLOAT_TO_YUVJ_8(src_y, src_u, src_v, src_a, dst_y, dst_u, dst_v) \ anti_alpha = 1.0 - src_a; \ tmp=((src_a*src_y)+(anti_alpha*background_y)); \ YJ_FLOAT_TO_8(tmp, dst_y);\ tmp=((src_a*src_u)+(anti_alpha*background_u)); \ UVJ_FLOAT_TO_8(tmp, dst_u);\ tmp=((src_a*src_v)+(anti_alpha*background_v));\ UVJ_FLOAT_TO_8(tmp, dst_v); #define YUVA_32_TO_YJ_8(src_y, src_a, dst_y) \ anti_alpha = 0xFF - src_a; \ Y_16_TO_YJ_8(((src_a*src_y)+(anti_alpha*background_y)), dst_y); #define YUVA_64_TO_YJ_8(src_y, src_a, dst_y) \ anti_alpha = 0xFFFF - src_a; \ Y_16_TO_YJ_8(((src_a*src_y)+(anti_alpha*background_y))>>16, dst_y); #define YUVA_FLOAT_TO_YJ_8(src_y, src_a, dst_y) \ anti_alpha = 1.0 - src_a; \ tmp=((src_a*src_y)+(anti_alpha*background_y)); \ YJ_FLOAT_TO_8(tmp, dst_y); #define YUVA_32_TO_YUV_16(src_y, src_u, src_v, src_a, dst_y, dst_u, dst_v) \ anti_alpha = 0xFF - src_a; \ dst_y=((src_a*src_y)+(anti_alpha*background_y)); \ dst_u=((src_a*src_u)+(anti_alpha*background_u)); \ dst_v=((src_a*src_v)+(anti_alpha*background_v)); #define YUVA_64_TO_YUV_16(src_y, src_u, src_v, src_a, dst_y, dst_u, dst_v) \ anti_alpha = 0xFFFF - src_a; \ dst_y=((src_a*src_y)+(anti_alpha*background_y))>>16; \ dst_u=((src_a*src_u)+(anti_alpha*background_u))>>16; \ dst_v=((src_a*src_v)+(anti_alpha*background_v))>>16; #define YUVA_32_TO_Y_16(src_y, src_a, dst_y) \ anti_alpha = 0xFF - src_a; \ dst_y=((src_a*src_y)+(anti_alpha*background_y)); #define YUVA_64_TO_Y_16(src_y, src_a, dst_y) \ anti_alpha = 0xFFFF - src_a; \ dst_y=((src_a*src_y)+(anti_alpha*background_y))>>16; /******************************************************************** * RGBA -> YUV ********************************************************************/ /* 8 Bit */ #define RGBA_32_TO_YUV_8(src_r, src_g, src_b, src_a, dst_y, dst_u, dst_v) \ anti_alpha = 0xFF - src_a; \ r_tmp=((src_a*src_r)+(anti_alpha*background_r)); \ g_tmp=((src_a*src_g)+(anti_alpha*background_g)); \ b_tmp=((src_a*src_b)+(anti_alpha*background_b)); \ RGB_48_TO_YUV_8(r_tmp, g_tmp, b_tmp, dst_y, dst_u, dst_v); #define RGBA_32_TO_Y_8(src_r, src_g, src_b, src_a, dst_y) \ anti_alpha = 0xFF - src_a; \ r_tmp=((src_a*src_r)+(anti_alpha*background_r)); \ g_tmp=((src_a*src_g)+(anti_alpha*background_g)); \ b_tmp=((src_a*src_b)+(anti_alpha*background_b)); \ RGB_48_TO_Y_8(r_tmp, g_tmp, b_tmp, dst_y); #define RGBA_32_TO_YUVJ_8(src_r, src_g, src_b, src_a, dst_y, dst_u, dst_v) \ anti_alpha = 0xFF - src_a; \ r_tmp=((src_a*src_r)+(anti_alpha*background_r)); \ g_tmp=((src_a*src_g)+(anti_alpha*background_g)); \ b_tmp=((src_a*src_b)+(anti_alpha*background_b)); \ RGB_48_TO_YUVJ_8(r_tmp, g_tmp, b_tmp, dst_y, dst_u, dst_v); #define RGBA_32_TO_YJ_8(src_r, src_g, src_b, src_a, dst_y) \ anti_alpha = 0xFF - src_a; \ r_tmp=((src_a*src_r)+(anti_alpha*background_r)); \ g_tmp=((src_a*src_g)+(anti_alpha*background_g)); \ b_tmp=((src_a*src_b)+(anti_alpha*background_b)); \ RGB_48_TO_YJ_8(r_tmp, g_tmp, b_tmp, dst_y); /* RGBA 32 to YUV 16 */ #define RGBA_32_TO_YUV_16(src_r, src_g, src_b, src_a, dst_y, dst_u, dst_v) \ anti_alpha = 0xFF - src_a; \ r_tmp=((src_a*src_r)+(anti_alpha*background_r)); \ g_tmp=((src_a*src_g)+(anti_alpha*background_g)); \ b_tmp=((src_a*src_b)+(anti_alpha*background_b)); \ RGB_48_TO_YUV_16(r_tmp, g_tmp, b_tmp, dst_y, dst_u, dst_v); #define RGBA_32_TO_Y_16(src_r, src_g, src_b, src_a, dst_y) \ anti_alpha = 0xFF - src_a; \ r_tmp=((src_a*src_r)+(anti_alpha*background_r)); \ g_tmp=((src_a*src_g)+(anti_alpha*background_g)); \ b_tmp=((src_a*src_b)+(anti_alpha*background_b)); \ RGB_48_TO_Y_16(r_tmp, g_tmp, b_tmp, dst_y); #define RGBA_32_TO_YUV_FLOAT(src_r, src_g, src_b, src_a, dst_y, dst_u, dst_v) \ anti_alpha = 0xFF - src_a; \ r_tmp=((src_a*src_r)+(anti_alpha*background_r)); \ g_tmp=((src_a*src_g)+(anti_alpha*background_g)); \ b_tmp=((src_a*src_b)+(anti_alpha*background_b)); \ RGB_48_TO_YUV_FLOAT(r_tmp, g_tmp, b_tmp, dst_y, dst_u, dst_v); /* 16 Bit */ #define RGBA_64_TO_YUV_8(src_r, src_g, src_b, src_a, dst_y, dst_u, dst_v) \ anti_alpha = 0xFFFF - src_a; \ r_tmp=((src_a*src_r)+(anti_alpha*background_r))>>16; \ g_tmp=((src_a*src_g)+(anti_alpha*background_g))>>16; \ b_tmp=((src_a*src_b)+(anti_alpha*background_b))>>16; \ RGB_48_TO_YUV_8(r_tmp, g_tmp, b_tmp, dst_y, dst_u, dst_v); #define RGBA_64_TO_Y_8(src_r, src_g, src_b, src_a, dst_y) \ anti_alpha = 0xFFFF - src_a; \ r_tmp=((src_a*src_r)+(anti_alpha*background_r))>>16; \ g_tmp=((src_a*src_g)+(anti_alpha*background_g))>>16; \ b_tmp=((src_a*src_b)+(anti_alpha*background_b))>>16; \ RGB_48_TO_Y_8(r_tmp, g_tmp, b_tmp, dst_y); #define RGBA_64_TO_YUVJ_8(src_r, src_g, src_b, src_a, dst_y, dst_u, dst_v) \ anti_alpha = 0xFFFF - src_a; \ r_tmp=((src_a*src_r)+(anti_alpha*background_r))>>16; \ g_tmp=((src_a*src_g)+(anti_alpha*background_g))>>16; \ b_tmp=((src_a*src_b)+(anti_alpha*background_b))>>16; \ RGB_48_TO_YUVJ_8(r_tmp, g_tmp, b_tmp, dst_y, dst_u, dst_v); #define RGBA_64_TO_YJ_8(src_r, src_g, src_b, src_a, dst_y) \ anti_alpha = 0xFFFF - src_a; \ r_tmp=((src_a*src_r)+(anti_alpha*background_r))>>16; \ g_tmp=((src_a*src_g)+(anti_alpha*background_g))>>16; \ b_tmp=((src_a*src_b)+(anti_alpha*background_b))>>16; \ RGB_48_TO_YJ_8(r_tmp, g_tmp, b_tmp, dst_y); #define RGBA_64_TO_YUV_16(src_r, src_g, src_b, src_a, dst_y, dst_u, dst_v) \ anti_alpha = 0xFFFF - src_a; \ r_tmp=((src_a*src_r)+(anti_alpha*background_r))>>16; \ g_tmp=((src_a*src_g)+(anti_alpha*background_g))>>16; \ b_tmp=((src_a*src_b)+(anti_alpha*background_b))>>16; \ RGB_48_TO_YUV_16(r_tmp, g_tmp, b_tmp, dst_y, dst_u, dst_v); #define RGBA_64_TO_Y_16(src_r, src_g, src_b, src_a, dst_y) \ anti_alpha = 0xFFFF - src_a; \ r_tmp=((src_a*src_r)+(anti_alpha*background_r))>>16; \ g_tmp=((src_a*src_g)+(anti_alpha*background_g))>>16; \ b_tmp=((src_a*src_b)+(anti_alpha*background_b))>>16; \ RGB_48_TO_Y_16(r_tmp, g_tmp, b_tmp, dst_y); #define RGBA_64_TO_YUV_FLOAT(src_r, src_g, src_b, src_a, dst_y, dst_u, dst_v) \ anti_alpha = 0xFFFF - src_a; \ r_tmp=((src_a*src_r)+(anti_alpha*background_r))>>16; \ g_tmp=((src_a*src_g)+(anti_alpha*background_g))>>16; \ b_tmp=((src_a*src_b)+(anti_alpha*background_b))>>16; \ RGB_48_TO_YUV_FLOAT(r_tmp, g_tmp, b_tmp, dst_y, dst_u, dst_v); /* Float */ #define RGBA_FLOAT_TO_YUV_8(src_r, src_g, src_b, src_a, dst_y, dst_u, dst_v) \ anti_alpha = 1.0 - src_a; \ r_tmp=((src_a*src_r)+(anti_alpha*background_r)); \ g_tmp=((src_a*src_g)+(anti_alpha*background_g)); \ b_tmp=((src_a*src_b)+(anti_alpha*background_b)); \ RGB_FLOAT_TO_YUV_8(r_tmp, g_tmp, b_tmp, dst_y, dst_u, dst_v); #define RGBA_FLOAT_TO_Y_8(src_r, src_g, src_b, src_a, dst_y) \ anti_alpha = 1.0 - src_a; \ r_tmp=((src_a*src_r)+(anti_alpha*background_r)); \ g_tmp=((src_a*src_g)+(anti_alpha*background_g)); \ b_tmp=((src_a*src_b)+(anti_alpha*background_b)); \ RGB_FLOAT_TO_Y_8(r_tmp, g_tmp, b_tmp, dst_y); #define RGBA_FLOAT_TO_YUVJ_8(src_r, src_g, src_b, src_a, dst_y, dst_u, dst_v) \ anti_alpha = 1.0 - src_a; \ r_tmp=((src_a*src_r)+(anti_alpha*background_r)); \ g_tmp=((src_a*src_g)+(anti_alpha*background_g)); \ b_tmp=((src_a*src_b)+(anti_alpha*background_b)); \ RGB_FLOAT_TO_YUVJ_8(r_tmp, g_tmp, b_tmp, dst_y, dst_u, dst_v); #define RGBA_FLOAT_TO_YJ_8(src_r, src_g, src_b, src_a, dst_y) \ anti_alpha = 1.0 - src_a; \ r_tmp=((src_a*src_r)+(anti_alpha*background_r)); \ g_tmp=((src_a*src_g)+(anti_alpha*background_g)); \ b_tmp=((src_a*src_b)+(anti_alpha*background_b)); \ RGB_FLOAT_TO_YJ_8(r_tmp, g_tmp, b_tmp, dst_y); #define RGBA_FLOAT_TO_YUV_16(src_r, src_g, src_b, src_a, dst_y, dst_u, dst_v) \ anti_alpha = 1.0 - src_a; \ r_tmp=((src_a*src_r)+(anti_alpha*background_r)); \ g_tmp=((src_a*src_g)+(anti_alpha*background_g)); \ b_tmp=((src_a*src_b)+(anti_alpha*background_b)); \ RGB_FLOAT_TO_YUV_16(r_tmp, g_tmp, b_tmp, dst_y, dst_u, dst_v); #define RGBA_FLOAT_TO_Y_16(src_r, src_g, src_b, src_a, dst_y) \ anti_alpha = 1.0 - src_a; \ r_tmp=((src_a*src_r)+(anti_alpha*background_r)); \ g_tmp=((src_a*src_g)+(anti_alpha*background_g)); \ b_tmp=((src_a*src_b)+(anti_alpha*background_b)); \ RGB_FLOAT_TO_Y_16(r_tmp, g_tmp, b_tmp, dst_y); #define RGBA_FLOAT_TO_YUV_FLOAT(src_r, src_g, src_b, src_a, dst_y, dst_u, dst_v) \ anti_alpha = 1.0 - src_a; \ r_tmp=((src_a*src_r)+(anti_alpha*background_r)); \ g_tmp=((src_a*src_g)+(anti_alpha*background_g)); \ b_tmp=((src_a*src_b)+(anti_alpha*background_b)); \ RGB_FLOAT_TO_YUV_FLOAT(r_tmp, g_tmp, b_tmp, dst_y, dst_u, dst_v); bplaum-gavl-b9385e3/gavl/c/colorspace_tables.c000066400000000000000000004617511513252040200213000ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include "colorspace_tables.h" const uint8_t gavl_yj_8_to_y_8[256] = { 0x10, 0x11, 0x12, 0x13, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3e, 0x3f, 0x40, 0x41, 0x42, 0x43, 0x44, 0x44, 0x45, 0x46, 0x47, 0x48, 0x49, 0x4a, 0x4a, 0x4b, 0x4c, 0x4d, 0x4e, 0x4f, 0x50, 0x50, 0x51, 0x52, 0x53, 0x54, 0x55, 0x56, 0x56, 0x57, 0x58, 0x59, 0x5a, 0x5b, 0x5c, 0x5c, 0x5d, 0x5e, 0x5f, 0x60, 0x61, 0x62, 0x62, 0x63, 0x64, 0x65, 0x66, 0x67, 0x68, 0x68, 0x69, 0x6a, 0x6b, 0x6c, 0x6d, 0x6e, 0x6e, 0x6f, 0x70, 0x71, 0x72, 0x73, 0x74, 0x74, 0x75, 0x76, 0x77, 0x78, 0x79, 0x7a, 0x7a, 0x7b, 0x7c, 0x7d, 0x7e, 0x7f, 0x80, 0x81, 0x81, 0x82, 0x83, 0x84, 0x85, 0x86, 0x87, 0x87, 0x88, 0x89, 0x8a, 0x8b, 0x8c, 0x8d, 0x8d, 0x8e, 0x8f, 0x90, 0x91, 0x92, 0x93, 0x93, 0x94, 0x95, 0x96, 0x97, 0x98, 0x99, 0x99, 0x9a, 0x9b, 0x9c, 0x9d, 0x9e, 0x9f, 0x9f, 0xa0, 0xa1, 0xa2, 0xa3, 0xa4, 0xa5, 0xa5, 0xa6, 0xa7, 0xa8, 0xa9, 0xaa, 0xab, 0xab, 0xac, 0xad, 0xae, 0xaf, 0xb0, 0xb1, 0xb1, 0xb2, 0xb3, 0xb4, 0xb5, 0xb6, 0xb7, 0xb7, 0xb8, 0xb9, 0xba, 0xbb, 0xbc, 0xbd, 0xbd, 0xbe, 0xbf, 0xc0, 0xc1, 0xc2, 0xc3, 0xc3, 0xc4, 0xc5, 0xc6, 0xc7, 0xc8, 0xc9, 0xca, 0xca, 0xcb, 0xcc, 0xcd, 0xce, 0xcf, 0xd0, 0xd0, 0xd1, 0xd2, 0xd3, 0xd4, 0xd5, 0xd6, 0xd6, 0xd7, 0xd8, 0xd9, 0xda, 0xdb, 0xdc, 0xdc, 0xdd, 0xde, 0xdf, 0xe0, 0xe1, 0xe2, 0xe2, 0xe3, 0xe4, 0xe5, 0xe6, 0xe7, 0xe8, 0xe8, 0xe9, 0xea, 0xeb, }; const uint8_t gavl_uvj_8_to_uv_8[256] = { 0x10, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, 0x40, 0x41, 0x42, 0x43, 0x43, 0x44, 0x45, 0x46, 0x47, 0x48, 0x49, 0x4a, 0x4a, 0x4b, 0x4c, 0x4d, 0x4e, 0x4f, 0x50, 0x51, 0x51, 0x52, 0x53, 0x54, 0x55, 0x56, 0x57, 0x58, 0x58, 0x59, 0x5a, 0x5b, 0x5c, 0x5d, 0x5e, 0x5f, 0x5f, 0x60, 0x61, 0x62, 0x63, 0x64, 0x65, 0x66, 0x67, 0x67, 0x68, 0x69, 0x6a, 0x6b, 0x6c, 0x6d, 0x6e, 0x6e, 0x6f, 0x70, 0x71, 0x72, 0x73, 0x74, 0x75, 0x75, 0x76, 0x77, 0x78, 0x79, 0x7a, 0x7b, 0x7c, 0x7c, 0x7d, 0x7e, 0x7f, 0x80, 0x81, 0x82, 0x83, 0x84, 0x84, 0x85, 0x86, 0x87, 0x88, 0x89, 0x8a, 0x8b, 0x8b, 0x8c, 0x8d, 0x8e, 0x8f, 0x90, 0x91, 0x92, 0x92, 0x93, 0x94, 0x95, 0x96, 0x97, 0x98, 0x99, 0x99, 0x9a, 0x9b, 0x9c, 0x9d, 0x9e, 0x9f, 0xa0, 0xa1, 0xa1, 0xa2, 0xa3, 0xa4, 0xa5, 0xa6, 0xa7, 0xa8, 0xa8, 0xa9, 0xaa, 0xab, 0xac, 0xad, 0xae, 0xaf, 0xaf, 0xb0, 0xb1, 0xb2, 0xb3, 0xb4, 0xb5, 0xb6, 0xb6, 0xb7, 0xb8, 0xb9, 0xba, 0xbb, 0xbc, 0xbd, 0xbd, 0xbe, 0xbf, 0xc0, 0xc1, 0xc2, 0xc3, 0xc4, 0xc5, 0xc5, 0xc6, 0xc7, 0xc8, 0xc9, 0xca, 0xcb, 0xcc, 0xcc, 0xcd, 0xce, 0xcf, 0xd0, 0xd1, 0xd2, 0xd3, 0xd3, 0xd4, 0xd5, 0xd6, 0xd7, 0xd8, 0xd9, 0xda, 0xda, 0xdb, 0xdc, 0xdd, 0xde, 0xdf, 0xe0, 0xe1, 0xe2, 0xe2, 0xe3, 0xe4, 0xe5, 0xe6, 0xe7, 0xe8, 0xe9, 0xe9, 0xea, 0xeb, 0xec, 0xed, 0xee, 0xef, 0xf0, }; const uint16_t gavl_yj_8_to_y_16[256] = { 0x1000, 0x10dc, 0x11b8, 0x1294, 0x136f, 0x144b, 0x1527, 0x1603, 0x16df, 0x17bb, 0x1897, 0x1972, 0x1a4e, 0x1b2a, 0x1c06, 0x1ce2, 0x1dbe, 0x1e9a, 0x1f75, 0x2051, 0x212d, 0x2209, 0x22e5, 0x23c1, 0x249d, 0x2578, 0x2654, 0x2730, 0x280c, 0x28e8, 0x29c4, 0x2aa0, 0x2b7b, 0x2c57, 0x2d33, 0x2e0f, 0x2eeb, 0x2fc7, 0x30a3, 0x317e, 0x325a, 0x3336, 0x3412, 0x34ee, 0x35ca, 0x36a6, 0x3782, 0x385d, 0x3939, 0x3a15, 0x3af1, 0x3bcd, 0x3ca9, 0x3d85, 0x3e60, 0x3f3c, 0x4018, 0x40f4, 0x41d0, 0x42ac, 0x4388, 0x4463, 0x453f, 0x461b, 0x46f7, 0x47d3, 0x48af, 0x498b, 0x4a66, 0x4b42, 0x4c1e, 0x4cfa, 0x4dd6, 0x4eb2, 0x4f8e, 0x5069, 0x5145, 0x5221, 0x52fd, 0x53d9, 0x54b5, 0x5591, 0x566c, 0x5748, 0x5824, 0x5900, 0x59dc, 0x5ab8, 0x5b94, 0x5c6f, 0x5d4b, 0x5e27, 0x5f03, 0x5fdf, 0x60bb, 0x6197, 0x6272, 0x634e, 0x642a, 0x6506, 0x65e2, 0x66be, 0x679a, 0x6875, 0x6951, 0x6a2d, 0x6b09, 0x6be5, 0x6cc1, 0x6d9d, 0x6e78, 0x6f54, 0x7030, 0x710c, 0x71e8, 0x72c4, 0x73a0, 0x747b, 0x7557, 0x7633, 0x770f, 0x77eb, 0x78c7, 0x79a3, 0x7a7e, 0x7b5a, 0x7c36, 0x7d12, 0x7dee, 0x7eca, 0x7fa6, 0x8082, 0x815d, 0x8239, 0x8315, 0x83f1, 0x84cd, 0x85a9, 0x8685, 0x8760, 0x883c, 0x8918, 0x89f4, 0x8ad0, 0x8bac, 0x8c88, 0x8d63, 0x8e3f, 0x8f1b, 0x8ff7, 0x90d3, 0x91af, 0x928b, 0x9366, 0x9442, 0x951e, 0x95fa, 0x96d6, 0x97b2, 0x988e, 0x9969, 0x9a45, 0x9b21, 0x9bfd, 0x9cd9, 0x9db5, 0x9e91, 0x9f6c, 0xa048, 0xa124, 0xa200, 0xa2dc, 0xa3b8, 0xa494, 0xa56f, 0xa64b, 0xa727, 0xa803, 0xa8df, 0xa9bb, 0xaa97, 0xab72, 0xac4e, 0xad2a, 0xae06, 0xaee2, 0xafbe, 0xb09a, 0xb175, 0xb251, 0xb32d, 0xb409, 0xb4e5, 0xb5c1, 0xb69d, 0xb778, 0xb854, 0xb930, 0xba0c, 0xbae8, 0xbbc4, 0xbca0, 0xbd7b, 0xbe57, 0xbf33, 0xc00f, 0xc0eb, 0xc1c7, 0xc2a3, 0xc37e, 0xc45a, 0xc536, 0xc612, 0xc6ee, 0xc7ca, 0xc8a6, 0xc982, 0xca5d, 0xcb39, 0xcc15, 0xccf1, 0xcdcd, 0xcea9, 0xcf85, 0xd060, 0xd13c, 0xd218, 0xd2f4, 0xd3d0, 0xd4ac, 0xd588, 0xd663, 0xd73f, 0xd81b, 0xd8f7, 0xd9d3, 0xdaaf, 0xdb8b, 0xdc66, 0xdd42, 0xde1e, 0xdefa, 0xdfd6, 0xe0b2, 0xe18e, 0xe269, 0xe345, 0xe421, 0xe4fd, 0xe5d9, 0xe6b5, 0xe791, 0xe86c, 0xe948, 0xea24, 0xeb00, }; const uint16_t gavl_uvj_8_to_uv_16[256] = { 0x0f90, 0x1070, 0x1151, 0x1232, 0x1313, 0x13f4, 0x14d5, 0x15b6, 0x1697, 0x1777, 0x1858, 0x1939, 0x1a1a, 0x1afb, 0x1bdc, 0x1cbd, 0x1d9e, 0x1e7e, 0x1f5f, 0x2040, 0x2121, 0x2202, 0x22e3, 0x23c4, 0x24a5, 0x2586, 0x2666, 0x2747, 0x2828, 0x2909, 0x29ea, 0x2acb, 0x2bac, 0x2c8d, 0x2d6d, 0x2e4e, 0x2f2f, 0x3010, 0x30f1, 0x31d2, 0x32b3, 0x3394, 0x3474, 0x3555, 0x3636, 0x3717, 0x37f8, 0x38d9, 0x39ba, 0x3a9b, 0x3b7b, 0x3c5c, 0x3d3d, 0x3e1e, 0x3eff, 0x3fe0, 0x40c1, 0x41a2, 0x4283, 0x4363, 0x4444, 0x4525, 0x4606, 0x46e7, 0x47c8, 0x48a9, 0x498a, 0x4a6a, 0x4b4b, 0x4c2c, 0x4d0d, 0x4dee, 0x4ecf, 0x4fb0, 0x5091, 0x5171, 0x5252, 0x5333, 0x5414, 0x54f5, 0x55d6, 0x56b7, 0x5798, 0x5878, 0x5959, 0x5a3a, 0x5b1b, 0x5bfc, 0x5cdd, 0x5dbe, 0x5e9f, 0x5f7f, 0x6060, 0x6141, 0x6222, 0x6303, 0x63e4, 0x64c5, 0x65a6, 0x6687, 0x6767, 0x6848, 0x6929, 0x6a0a, 0x6aeb, 0x6bcc, 0x6cad, 0x6d8e, 0x6e6e, 0x6f4f, 0x7030, 0x7111, 0x71f2, 0x72d3, 0x73b4, 0x7495, 0x7575, 0x7656, 0x7737, 0x7818, 0x78f9, 0x79da, 0x7abb, 0x7b9c, 0x7c7c, 0x7d5d, 0x7e3e, 0x7f1f, 0x8000, 0x80e1, 0x81c2, 0x82a3, 0x8384, 0x8464, 0x8545, 0x8626, 0x8707, 0x87e8, 0x88c9, 0x89aa, 0x8a8b, 0x8b6b, 0x8c4c, 0x8d2d, 0x8e0e, 0x8eef, 0x8fd0, 0x90b1, 0x9192, 0x9272, 0x9353, 0x9434, 0x9515, 0x95f6, 0x96d7, 0x97b8, 0x9899, 0x9979, 0x9a5a, 0x9b3b, 0x9c1c, 0x9cfd, 0x9dde, 0x9ebf, 0x9fa0, 0xa081, 0xa161, 0xa242, 0xa323, 0xa404, 0xa4e5, 0xa5c6, 0xa6a7, 0xa788, 0xa868, 0xa949, 0xaa2a, 0xab0b, 0xabec, 0xaccd, 0xadae, 0xae8f, 0xaf6f, 0xb050, 0xb131, 0xb212, 0xb2f3, 0xb3d4, 0xb4b5, 0xb596, 0xb676, 0xb757, 0xb838, 0xb919, 0xb9fa, 0xbadb, 0xbbbc, 0xbc9d, 0xbd7d, 0xbe5e, 0xbf3f, 0xc020, 0xc101, 0xc1e2, 0xc2c3, 0xc3a4, 0xc485, 0xc565, 0xc646, 0xc727, 0xc808, 0xc8e9, 0xc9ca, 0xcaab, 0xcb8c, 0xcc6c, 0xcd4d, 0xce2e, 0xcf0f, 0xcff0, 0xd0d1, 0xd1b2, 0xd293, 0xd373, 0xd454, 0xd535, 0xd616, 0xd6f7, 0xd7d8, 0xd8b9, 0xd99a, 0xda7a, 0xdb5b, 0xdc3c, 0xdd1d, 0xddfe, 0xdedf, 0xdfc0, 0xe0a1, 0xe182, 0xe262, 0xe343, 0xe424, 0xe505, 0xe5e6, 0xe6c7, 0xe7a8, 0xe889, 0xe969, 0xea4a, 0xeb2b, 0xec0c, 0xeced, 0xedce, 0xeeaf, 0xef90, }; const uint8_t gavl_y_8_to_yj_8[256] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x02, 0x03, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3d, 0x3e, 0x3f, 0x40, 0x41, 0x42, 0x44, 0x45, 0x46, 0x47, 0x48, 0x49, 0x4b, 0x4c, 0x4d, 0x4e, 0x4f, 0x50, 0x52, 0x53, 0x54, 0x55, 0x56, 0x57, 0x58, 0x5a, 0x5b, 0x5c, 0x5d, 0x5e, 0x5f, 0x61, 0x62, 0x63, 0x64, 0x65, 0x66, 0x68, 0x69, 0x6a, 0x6b, 0x6c, 0x6d, 0x6f, 0x70, 0x71, 0x72, 0x73, 0x74, 0x76, 0x77, 0x78, 0x79, 0x7a, 0x7b, 0x7d, 0x7e, 0x7f, 0x80, 0x81, 0x82, 0x84, 0x85, 0x86, 0x87, 0x88, 0x89, 0x8b, 0x8c, 0x8d, 0x8e, 0x8f, 0x90, 0x92, 0x93, 0x94, 0x95, 0x96, 0x97, 0x99, 0x9a, 0x9b, 0x9c, 0x9d, 0x9e, 0xa0, 0xa1, 0xa2, 0xa3, 0xa4, 0xa5, 0xa7, 0xa8, 0xa9, 0xaa, 0xab, 0xac, 0xad, 0xaf, 0xb0, 0xb1, 0xb2, 0xb3, 0xb4, 0xb6, 0xb7, 0xb8, 0xb9, 0xba, 0xbb, 0xbd, 0xbe, 0xbf, 0xc0, 0xc1, 0xc2, 0xc4, 0xc5, 0xc6, 0xc7, 0xc8, 0xc9, 0xcb, 0xcc, 0xcd, 0xce, 0xcf, 0xd0, 0xd2, 0xd3, 0xd4, 0xd5, 0xd6, 0xd7, 0xd9, 0xda, 0xdb, 0xdc, 0xdd, 0xde, 0xe0, 0xe1, 0xe2, 0xe3, 0xe4, 0xe5, 0xe7, 0xe8, 0xe9, 0xea, 0xeb, 0xec, 0xee, 0xef, 0xf0, 0xf1, 0xf2, 0xf3, 0xf5, 0xf6, 0xf7, 0xf8, 0xf9, 0xfa, 0xfc, 0xfd, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; const uint8_t gavl_uv_8_to_uvj_8[256] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, 0x40, 0x41, 0x43, 0x44, 0x45, 0x46, 0x47, 0x48, 0x49, 0x4a, 0x4c, 0x4d, 0x4e, 0x4f, 0x50, 0x51, 0x52, 0x54, 0x55, 0x56, 0x57, 0x58, 0x59, 0x5a, 0x5c, 0x5d, 0x5e, 0x5f, 0x60, 0x61, 0x62, 0x64, 0x65, 0x66, 0x67, 0x68, 0x69, 0x6a, 0x6c, 0x6d, 0x6e, 0x6f, 0x70, 0x71, 0x72, 0x73, 0x75, 0x76, 0x77, 0x78, 0x79, 0x7a, 0x7b, 0x7d, 0x7e, 0x7f, 0x80, 0x81, 0x82, 0x83, 0x85, 0x86, 0x87, 0x88, 0x89, 0x8a, 0x8b, 0x8d, 0x8e, 0x8f, 0x90, 0x91, 0x92, 0x93, 0x94, 0x96, 0x97, 0x98, 0x99, 0x9a, 0x9b, 0x9c, 0x9e, 0x9f, 0xa0, 0xa1, 0xa2, 0xa3, 0xa4, 0xa6, 0xa7, 0xa8, 0xa9, 0xaa, 0xab, 0xac, 0xae, 0xaf, 0xb0, 0xb1, 0xb2, 0xb3, 0xb4, 0xb6, 0xb7, 0xb8, 0xb9, 0xba, 0xbb, 0xbc, 0xbd, 0xbf, 0xc0, 0xc1, 0xc2, 0xc3, 0xc4, 0xc5, 0xc7, 0xc8, 0xc9, 0xca, 0xcb, 0xcc, 0xcd, 0xcf, 0xd0, 0xd1, 0xd2, 0xd3, 0xd4, 0xd5, 0xd7, 0xd8, 0xd9, 0xda, 0xdb, 0xdc, 0xdd, 0xde, 0xe0, 0xe1, 0xe2, 0xe3, 0xe4, 0xe5, 0xe6, 0xe8, 0xe9, 0xea, 0xeb, 0xec, 0xed, 0xee, 0xf0, 0xf1, 0xf2, 0xf3, 0xf4, 0xf5, 0xf6, 0xf8, 0xf9, 0xfa, 0xfb, 0xfc, 0xfd, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; const uint16_t gavl_y_8_to_yj_16[256] = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x012b, 0x0256, 0x0382, 0x04ad, 0x05d8, 0x0703, 0x082f, 0x095a, 0x0a85, 0x0bb0, 0x0cdc, 0x0e07, 0x0f32, 0x105d, 0x1189, 0x12b4, 0x13df, 0x150a, 0x1636, 0x1761, 0x188c, 0x19b7, 0x1ae3, 0x1c0e, 0x1d39, 0x1e64, 0x1f90, 0x20bb, 0x21e6, 0x2311, 0x243d, 0x2568, 0x2693, 0x27be, 0x28ea, 0x2a15, 0x2b40, 0x2c6b, 0x2d97, 0x2ec2, 0x2fed, 0x3118, 0x3244, 0x336f, 0x349a, 0x35c5, 0x36f1, 0x381c, 0x3947, 0x3a72, 0x3b9e, 0x3cc9, 0x3df4, 0x3f1f, 0x404b, 0x4176, 0x42a1, 0x43cc, 0x44f8, 0x4623, 0x474e, 0x4879, 0x49a5, 0x4ad0, 0x4bfb, 0x4d26, 0x4e52, 0x4f7d, 0x50a8, 0x51d3, 0x52ff, 0x542a, 0x5555, 0x5680, 0x57ab, 0x58d7, 0x5a02, 0x5b2d, 0x5c58, 0x5d84, 0x5eaf, 0x5fda, 0x6105, 0x6231, 0x635c, 0x6487, 0x65b2, 0x66de, 0x6809, 0x6934, 0x6a5f, 0x6b8b, 0x6cb6, 0x6de1, 0x6f0c, 0x7038, 0x7163, 0x728e, 0x73b9, 0x74e5, 0x7610, 0x773b, 0x7866, 0x7992, 0x7abd, 0x7be8, 0x7d13, 0x7e3f, 0x7f6a, 0x8095, 0x81c0, 0x82ec, 0x8417, 0x8542, 0x866d, 0x8799, 0x88c4, 0x89ef, 0x8b1a, 0x8c46, 0x8d71, 0x8e9c, 0x8fc7, 0x90f3, 0x921e, 0x9349, 0x9474, 0x95a0, 0x96cb, 0x97f6, 0x9921, 0x9a4d, 0x9b78, 0x9ca3, 0x9dce, 0x9efa, 0xa025, 0xa150, 0xa27b, 0xa3a7, 0xa4d2, 0xa5fd, 0xa728, 0xa854, 0xa97f, 0xaaaa, 0xabd5, 0xad00, 0xae2c, 0xaf57, 0xb082, 0xb1ad, 0xb2d9, 0xb404, 0xb52f, 0xb65a, 0xb786, 0xb8b1, 0xb9dc, 0xbb07, 0xbc33, 0xbd5e, 0xbe89, 0xbfb4, 0xc0e0, 0xc20b, 0xc336, 0xc461, 0xc58d, 0xc6b8, 0xc7e3, 0xc90e, 0xca3a, 0xcb65, 0xcc90, 0xcdbb, 0xcee7, 0xd012, 0xd13d, 0xd268, 0xd394, 0xd4bf, 0xd5ea, 0xd715, 0xd841, 0xd96c, 0xda97, 0xdbc2, 0xdcee, 0xde19, 0xdf44, 0xe06f, 0xe19b, 0xe2c6, 0xe3f1, 0xe51c, 0xe648, 0xe773, 0xe89e, 0xe9c9, 0xeaf5, 0xec20, 0xed4b, 0xee76, 0xefa2, 0xf0cd, 0xf1f8, 0xf323, 0xf44f, 0xf57a, 0xf6a5, 0xf7d0, 0xf8fc, 0xfa27, 0xfb52, 0xfc7d, 0xfda9, 0xfed4, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, }; const float gavl_y_8_to_y_float[256] = { 0.0000000000, 0.0000000000, 0.0000000000, 0.0000000000, 0.0000000000, 0.0000000000, 0.0000000000, 0.0000000000, 0.0000000000, 0.0000000000, 0.0000000000, 0.0000000000, 0.0000000000, 0.0000000000, 0.0000000000, 0.0000000000, 0.0000000000, 0.0045662099, 0.0091324197, 0.0136986300, 0.0182648394, 0.0228310507, 0.0273972601, 0.0319634713, 0.0365296789, 0.0410958901, 0.0456621014, 0.0502283089, 0.0547945201, 0.0593607314, 0.0639269426, 0.0684931502, 0.0730593577, 0.0776255727, 0.0821917802, 0.0867579877, 0.0913242027, 0.0958904102, 0.1004566178, 0.1050228328, 0.1095890403, 0.1141552478, 0.1187214628, 0.1232876703, 0.1278538853, 0.1324200928, 0.1369863003, 0.1415525079, 0.1461187154, 0.1506849378, 0.1552511454, 0.1598173529, 0.1643835604, 0.1689497679, 0.1735159755, 0.1780821979, 0.1826484054, 0.1872146130, 0.1917808205, 0.1963470280, 0.2009132355, 0.2054794580, 0.2100456655, 0.2146118730, 0.2191780806, 0.2237442881, 0.2283104956, 0.2328767180, 0.2374429256, 0.2420091331, 0.2465753406, 0.2511415482, 0.2557077706, 0.2602739632, 0.2648401856, 0.2694063783, 0.2739726007, 0.2785388231, 0.2831050158, 0.2876712382, 0.2922374308, 0.2968036532, 0.3013698757, 0.3059360683, 0.3105022907, 0.3150684834, 0.3196347058, 0.3242008984, 0.3287671208, 0.3333333433, 0.3378995359, 0.3424657583, 0.3470319510, 0.3515981734, 0.3561643958, 0.3607305884, 0.3652968109, 0.3698630035, 0.3744292259, 0.3789954484, 0.3835616410, 0.3881278634, 0.3926940560, 0.3972602785, 0.4018264711, 0.4063926935, 0.4109589159, 0.4155251086, 0.4200913310, 0.4246575236, 0.4292237461, 0.4337899685, 0.4383561611, 0.4429223835, 0.4474885762, 0.4520547986, 0.4566209912, 0.4611872137, 0.4657534361, 0.4703196287, 0.4748858511, 0.4794520438, 0.4840182662, 0.4885844886, 0.4931506813, 0.4977169037, 0.5022830963, 0.5068492889, 0.5114155412, 0.5159817338, 0.5205479264, 0.5251141787, 0.5296803713, 0.5342465639, 0.5388127565, 0.5433790088, 0.5479452014, 0.5525113940, 0.5570776463, 0.5616438389, 0.5662100315, 0.5707762837, 0.5753424764, 0.5799086690, 0.5844748616, 0.5890411139, 0.5936073065, 0.5981734991, 0.6027397513, 0.6073059440, 0.6118721366, 0.6164383292, 0.6210045815, 0.6255707741, 0.6301369667, 0.6347032189, 0.6392694116, 0.6438356042, 0.6484017968, 0.6529680490, 0.6575342417, 0.6621004343, 0.6666666865, 0.6712328792, 0.6757990718, 0.6803653240, 0.6849315166, 0.6894977093, 0.6940639019, 0.6986301541, 0.7031963468, 0.7077625394, 0.7123287916, 0.7168949842, 0.7214611769, 0.7260273695, 0.7305936217, 0.7351598144, 0.7397260070, 0.7442922592, 0.7488584518, 0.7534246445, 0.7579908967, 0.7625570893, 0.7671232820, 0.7716894746, 0.7762557268, 0.7808219194, 0.7853881121, 0.7899543643, 0.7945205569, 0.7990867496, 0.8036529422, 0.8082191944, 0.8127853870, 0.8173515797, 0.8219178319, 0.8264840245, 0.8310502172, 0.8356164098, 0.8401826620, 0.8447488546, 0.8493150473, 0.8538812995, 0.8584474921, 0.8630136847, 0.8675799370, 0.8721461296, 0.8767123222, 0.8812785149, 0.8858447671, 0.8904109597, 0.8949771523, 0.8995434046, 0.9041095972, 0.9086757898, 0.9132419825, 0.9178082347, 0.9223744273, 0.9269406199, 0.9315068722, 0.9360730648, 0.9406392574, 0.9452054501, 0.9497717023, 0.9543378949, 0.9589040875, 0.9634703398, 0.9680365324, 0.9726027250, 0.9771689773, 0.9817351699, 0.9863013625, 0.9908675551, 0.9954338074, 1.0000000000, 1.0000000000, 1.0000000000, 1.0000000000, 1.0000000000, 1.0000000000, 1.0000000000, 1.0000000000, 1.0000000000, 1.0000000000, 1.0000000000, 1.0000000000, 1.0000000000, 1.0000000000, 1.0000000000, 1.0000000000, 1.0000000000, 1.0000000000, 1.0000000000, 1.0000000000, 1.0000000000, }; const float gavl_uv_8_to_uv_float[256] = { -0.5000000000, -0.5000000000, -0.5000000000, -0.5000000000, -0.5000000000, -0.5000000000, -0.5000000000, -0.5000000000, -0.5000000000, -0.5000000000, -0.5000000000, -0.5000000000, -0.5000000000, -0.5000000000, -0.5000000000, -0.5000000000, -0.5000000000, -0.4955357015, -0.4910714328, -0.4866071343, -0.4821428657, -0.4776785672, -0.4732142985, -0.4687500000, -0.4642857015, -0.4598214328, -0.4553571343, -0.4508928657, -0.4464285672, -0.4419642985, -0.4375000000, -0.4330357015, -0.4285714328, -0.4241071343, -0.4196428657, -0.4151785672, -0.4107142985, -0.4062500000, -0.4017857015, -0.3973214328, -0.3928571343, -0.3883928657, -0.3839285672, -0.3794642985, -0.3750000000, -0.3705357015, -0.3660714328, -0.3616071343, -0.3571428657, -0.3526785672, -0.3482142985, -0.3437500000, -0.3392857015, -0.3348214328, -0.3303571343, -0.3258928657, -0.3214285672, -0.3169642985, -0.3125000000, -0.3080357015, -0.3035714328, -0.2991071343, -0.2946428657, -0.2901785672, -0.2857142985, -0.2812500000, -0.2767857015, -0.2723214328, -0.2678571343, -0.2633928657, -0.2589285672, -0.2544642985, -0.2500000000, -0.2455357164, -0.2410714328, -0.2366071492, -0.2321428508, -0.2276785672, -0.2232142836, -0.2187500000, -0.2142857164, -0.2098214328, -0.2053571492, -0.2008928508, -0.1964285672, -0.1919642836, -0.1875000000, -0.1830357164, -0.1785714328, -0.1741071492, -0.1696428508, -0.1651785672, -0.1607142836, -0.1562500000, -0.1517857164, -0.1473214328, -0.1428571492, -0.1383928508, -0.1339285672, -0.1294642836, -0.1250000000, -0.1205357164, -0.1160714254, -0.1116071418, -0.1071428582, -0.1026785746, -0.0982142836, -0.0937500000, -0.0892857164, -0.0848214254, -0.0803571418, -0.0758928582, -0.0714285746, -0.0669642836, -0.0625000000, -0.0580357127, -0.0535714291, -0.0491071418, -0.0446428582, -0.0401785709, -0.0357142873, -0.0312500000, -0.0267857146, -0.0223214291, -0.0178571437, -0.0133928573, -0.0089285718, -0.0044642859, 0.0000000000, 0.0044642859, 0.0089285718, 0.0133928573, 0.0178571437, 0.0223214291, 0.0267857146, 0.0312500000, 0.0357142873, 0.0401785709, 0.0446428582, 0.0491071418, 0.0535714291, 0.0580357127, 0.0625000000, 0.0669642836, 0.0714285746, 0.0758928582, 0.0803571418, 0.0848214254, 0.0892857164, 0.0937500000, 0.0982142836, 0.1026785746, 0.1071428582, 0.1116071418, 0.1160714254, 0.1205357164, 0.1250000000, 0.1294642836, 0.1339285672, 0.1383928508, 0.1428571492, 0.1473214328, 0.1517857164, 0.1562500000, 0.1607142836, 0.1651785672, 0.1696428508, 0.1741071492, 0.1785714328, 0.1830357164, 0.1875000000, 0.1919642836, 0.1964285672, 0.2008928508, 0.2053571492, 0.2098214328, 0.2142857164, 0.2187500000, 0.2232142836, 0.2276785672, 0.2321428508, 0.2366071492, 0.2410714328, 0.2455357164, 0.2500000000, 0.2544642985, 0.2589285672, 0.2633928657, 0.2678571343, 0.2723214328, 0.2767857015, 0.2812500000, 0.2857142985, 0.2901785672, 0.2946428657, 0.2991071343, 0.3035714328, 0.3080357015, 0.3125000000, 0.3169642985, 0.3214285672, 0.3258928657, 0.3303571343, 0.3348214328, 0.3392857015, 0.3437500000, 0.3482142985, 0.3526785672, 0.3571428657, 0.3616071343, 0.3660714328, 0.3705357015, 0.3750000000, 0.3794642985, 0.3839285672, 0.3883928657, 0.3928571343, 0.3973214328, 0.4017857015, 0.4062500000, 0.4107142985, 0.4151785672, 0.4196428657, 0.4241071343, 0.4285714328, 0.4330357015, 0.4375000000, 0.4419642985, 0.4464285672, 0.4508928657, 0.4553571343, 0.4598214328, 0.4642857015, 0.4687500000, 0.4732142985, 0.4776785672, 0.4821428657, 0.4866071343, 0.4910714328, 0.4955357015, 0.5000000000, 0.5000000000, 0.5000000000, 0.5000000000, 0.5000000000, 0.5000000000, 0.5000000000, 0.5000000000, 0.5000000000, 0.5000000000, 0.5000000000, 0.5000000000, 0.5000000000, 0.5000000000, 0.5000000000, 0.5000000000, }; const float gavl_yj_8_to_y_float[256] = { 0.0000000000, 0.0039215689, 0.0078431377, 0.0117647061, 0.0156862754, 0.0196078438, 0.0235294122, 0.0274509806, 0.0313725509, 0.0352941193, 0.0392156877, 0.0431372561, 0.0470588244, 0.0509803928, 0.0549019612, 0.0588235296, 0.0627451017, 0.0666666701, 0.0705882385, 0.0745098069, 0.0784313753, 0.0823529437, 0.0862745121, 0.0901960805, 0.0941176489, 0.0980392173, 0.1019607857, 0.1058823541, 0.1098039225, 0.1137254909, 0.1176470593, 0.1215686277, 0.1254902035, 0.1294117719, 0.1333333403, 0.1372549087, 0.1411764771, 0.1450980455, 0.1490196139, 0.1529411823, 0.1568627506, 0.1607843190, 0.1647058874, 0.1686274558, 0.1725490242, 0.1764705926, 0.1803921610, 0.1843137294, 0.1882352978, 0.1921568662, 0.1960784346, 0.2000000030, 0.2039215714, 0.2078431398, 0.2117647082, 0.2156862766, 0.2196078449, 0.2235294133, 0.2274509817, 0.2313725501, 0.2352941185, 0.2392156869, 0.2431372553, 0.2470588237, 0.2509804070, 0.2549019754, 0.2588235438, 0.2627451122, 0.2666666806, 0.2705882490, 0.2745098174, 0.2784313858, 0.2823529541, 0.2862745225, 0.2901960909, 0.2941176593, 0.2980392277, 0.3019607961, 0.3058823645, 0.3098039329, 0.3137255013, 0.3176470697, 0.3215686381, 0.3254902065, 0.3294117749, 0.3333333433, 0.3372549117, 0.3411764801, 0.3450980484, 0.3490196168, 0.3529411852, 0.3568627536, 0.3607843220, 0.3647058904, 0.3686274588, 0.3725490272, 0.3764705956, 0.3803921640, 0.3843137324, 0.3882353008, 0.3921568692, 0.3960784376, 0.4000000060, 0.4039215744, 0.4078431427, 0.4117647111, 0.4156862795, 0.4196078479, 0.4235294163, 0.4274509847, 0.4313725531, 0.4352941215, 0.4392156899, 0.4431372583, 0.4470588267, 0.4509803951, 0.4549019635, 0.4588235319, 0.4627451003, 0.4666666687, 0.4705882370, 0.4745098054, 0.4784313738, 0.4823529422, 0.4862745106, 0.4901960790, 0.4941176474, 0.4980392158, 0.5019608140, 0.5058823824, 0.5098039508, 0.5137255192, 0.5176470876, 0.5215686560, 0.5254902244, 0.5294117928, 0.5333333611, 0.5372549295, 0.5411764979, 0.5450980663, 0.5490196347, 0.5529412031, 0.5568627715, 0.5607843399, 0.5647059083, 0.5686274767, 0.5725490451, 0.5764706135, 0.5803921819, 0.5843137503, 0.5882353187, 0.5921568871, 0.5960784554, 0.6000000238, 0.6039215922, 0.6078431606, 0.6117647290, 0.6156862974, 0.6196078658, 0.6235294342, 0.6274510026, 0.6313725710, 0.6352941394, 0.6392157078, 0.6431372762, 0.6470588446, 0.6509804130, 0.6549019814, 0.6588235497, 0.6627451181, 0.6666666865, 0.6705882549, 0.6745098233, 0.6784313917, 0.6823529601, 0.6862745285, 0.6901960969, 0.6941176653, 0.6980392337, 0.7019608021, 0.7058823705, 0.7098039389, 0.7137255073, 0.7176470757, 0.7215686440, 0.7254902124, 0.7294117808, 0.7333333492, 0.7372549176, 0.7411764860, 0.7450980544, 0.7490196228, 0.7529411912, 0.7568627596, 0.7607843280, 0.7647058964, 0.7686274648, 0.7725490332, 0.7764706016, 0.7803921700, 0.7843137383, 0.7882353067, 0.7921568751, 0.7960784435, 0.8000000119, 0.8039215803, 0.8078431487, 0.8117647171, 0.8156862855, 0.8196078539, 0.8235294223, 0.8274509907, 0.8313725591, 0.8352941275, 0.8392156959, 0.8431372643, 0.8470588326, 0.8509804010, 0.8549019694, 0.8588235378, 0.8627451062, 0.8666666746, 0.8705882430, 0.8745098114, 0.8784313798, 0.8823529482, 0.8862745166, 0.8901960850, 0.8941176534, 0.8980392218, 0.9019607902, 0.9058823586, 0.9098039269, 0.9137254953, 0.9176470637, 0.9215686321, 0.9254902005, 0.9294117689, 0.9333333373, 0.9372549057, 0.9411764741, 0.9450980425, 0.9490196109, 0.9529411793, 0.9568627477, 0.9607843161, 0.9647058845, 0.9686274529, 0.9725490212, 0.9764705896, 0.9803921580, 0.9843137264, 0.9882352948, 0.9921568632, 0.9960784316, 1.0000000000, }; const uint8_t gavl_rgb_5_to_8[32] = { 0x00, 0x08, 0x10, 0x19, 0x21, 0x29, 0x31, 0x3a, 0x42, 0x4a, 0x52, 0x5a, 0x63, 0x6b, 0x73, 0x7b, 0x84, 0x8c, 0x94, 0x9c, 0xa5, 0xad, 0xb5, 0xbd, 0xc5, 0xce, 0xd6, 0xde, 0xe6, 0xef, 0xf7, 0xff, }; const uint8_t gavl_rgb_6_to_8[64] = { 0x00, 0x04, 0x08, 0x0c, 0x10, 0x14, 0x18, 0x1c, 0x20, 0x24, 0x28, 0x2d, 0x31, 0x35, 0x39, 0x3d, 0x41, 0x45, 0x49, 0x4d, 0x51, 0x55, 0x59, 0x5d, 0x61, 0x65, 0x69, 0x6d, 0x71, 0x75, 0x79, 0x7d, 0x82, 0x86, 0x8a, 0x8e, 0x92, 0x96, 0x9a, 0x9e, 0xa2, 0xa6, 0xaa, 0xae, 0xb2, 0xb6, 0xba, 0xbe, 0xc2, 0xc6, 0xca, 0xce, 0xd2, 0xd7, 0xdb, 0xdf, 0xe3, 0xe7, 0xeb, 0xef, 0xf3, 0xf7, 0xfb, 0xff, }; const uint16_t gavl_rgb_5_to_16[32] = { 0x0000, 0x0842, 0x1084, 0x18c6, 0x2108, 0x294a, 0x318c, 0x39ce, 0x4210, 0x4a52, 0x5294, 0x5ad6, 0x6318, 0x6b5a, 0x739c, 0x7bde, 0x8421, 0x8c63, 0x94a5, 0x9ce7, 0xa529, 0xad6b, 0xb5ad, 0xbdef, 0xc631, 0xce73, 0xd6b5, 0xdef7, 0xe739, 0xef7b, 0xf7bd, 0xffff, }; const uint16_t gavl_rgb_6_to_16[64] = { 0x0000, 0x0410, 0x0820, 0x0c31, 0x1041, 0x1451, 0x1861, 0x1c72, 0x2082, 0x2492, 0x28a2, 0x2cb3, 0x30c3, 0x34d3, 0x38e3, 0x3cf4, 0x4104, 0x4514, 0x4924, 0x4d35, 0x5145, 0x5555, 0x5965, 0x5d75, 0x6186, 0x6596, 0x69a6, 0x6db6, 0x71c7, 0x75d7, 0x79e7, 0x7df7, 0x8208, 0x8618, 0x8a28, 0x8e38, 0x9249, 0x9659, 0x9a69, 0x9e79, 0xa28a, 0xa69a, 0xaaaa, 0xaeba, 0xb2ca, 0xb6db, 0xbaeb, 0xbefb, 0xc30b, 0xc71c, 0xcb2c, 0xcf3c, 0xd34c, 0xd75d, 0xdb6d, 0xdf7d, 0xe38d, 0xe79e, 0xebae, 0xefbe, 0xf3ce, 0xf7df, 0xfbef, 0xffff, }; const float gavl_rgb_5_to_float[32] = { 0.000000, 0.032258, 0.064516, 0.096774, 0.129032, 0.161290, 0.193548, 0.225806, 0.258065, 0.290323, 0.322581, 0.354839, 0.387097, 0.419355, 0.451613, 0.483871, 0.516129, 0.548387, 0.580645, 0.612903, 0.645161, 0.677419, 0.709677, 0.741935, 0.774194, 0.806452, 0.838710, 0.870968, 0.903226, 0.935484, 0.967742, 1.000000, }; const float gavl_rgb_6_to_float[64] = { 0.000000, 0.015873, 0.031746, 0.047619, 0.063492, 0.079365, 0.095238, 0.111111, 0.126984, 0.142857, 0.158730, 0.174603, 0.190476, 0.206349, 0.222222, 0.238095, 0.253968, 0.269841, 0.285714, 0.301587, 0.317460, 0.333333, 0.349206, 0.365079, 0.380952, 0.396825, 0.412698, 0.428571, 0.444444, 0.460317, 0.476190, 0.492063, 0.507937, 0.523810, 0.539683, 0.555556, 0.571429, 0.587302, 0.603175, 0.619048, 0.634921, 0.650794, 0.666667, 0.682540, 0.698413, 0.714286, 0.730159, 0.746032, 0.761905, 0.777778, 0.793651, 0.809524, 0.825397, 0.841270, 0.857143, 0.873016, 0.888889, 0.904762, 0.920635, 0.936508, 0.952381, 0.968254, 0.984127, 1.000000, }; /* RGB -> YUV conversions */ const int gavl_r_to_y[256] = { 1048576, 1065405, 1082234, 1099063, 1115891, 1132720, 1149549, 1166378, 1183207, 1200036, 1216865, 1233694, 1250522, 1267351, 1284180, 1301009, 1317838, 1334667, 1351496, 1368325, 1385153, 1401982, 1418811, 1435640, 1452469, 1469298, 1486127, 1502956, 1519784, 1536613, 1553442, 1570271, 1587100, 1603929, 1620758, 1637587, 1654415, 1671244, 1688073, 1704902, 1721731, 1738560, 1755389, 1772218, 1789046, 1805875, 1822704, 1839533, 1856362, 1873191, 1890020, 1906849, 1923677, 1940506, 1957335, 1974164, 1990993, 2007822, 2024651, 2041480, 2058308, 2075137, 2091966, 2108795, 2125624, 2142453, 2159282, 2176111, 2192939, 2209768, 2226597, 2243426, 2260255, 2277084, 2293913, 2310742, 2327570, 2344399, 2361228, 2378057, 2394886, 2411715, 2428544, 2445373, 2462201, 2479030, 2495859, 2512688, 2529517, 2546346, 2563175, 2580004, 2596832, 2613661, 2630490, 2647319, 2664148, 2680977, 2697806, 2714635, 2731463, 2748292, 2765121, 2781950, 2798779, 2815608, 2832437, 2849265, 2866094, 2882923, 2899752, 2916581, 2933410, 2950239, 2967068, 2983896, 3000725, 3017554, 3034383, 3051212, 3068041, 3084870, 3101699, 3118527, 3135356, 3152185, 3169014, 3185843, 3202672, 3219501, 3236330, 3253158, 3269987, 3286816, 3303645, 3320474, 3337303, 3354132, 3370961, 3387789, 3404618, 3421447, 3438276, 3455105, 3471934, 3488763, 3505592, 3522420, 3539249, 3556078, 3572907, 3589736, 3606565, 3623394, 3640223, 3657051, 3673880, 3690709, 3707538, 3724367, 3741196, 3758025, 3774854, 3791682, 3808511, 3825340, 3842169, 3858998, 3875827, 3892656, 3909485, 3926313, 3943142, 3959971, 3976800, 3993629, 4010458, 4027287, 4044116, 4060944, 4077773, 4094602, 4111431, 4128260, 4145089, 4161918, 4178747, 4195575, 4212404, 4229233, 4246062, 4262891, 4279720, 4296549, 4313378, 4330206, 4347035, 4363864, 4380693, 4397522, 4414351, 4431180, 4448009, 4464837, 4481666, 4498495, 4515324, 4532153, 4548982, 4565811, 4582639, 4599468, 4616297, 4633126, 4649955, 4666784, 4683613, 4700442, 4717270, 4734099, 4750928, 4767757, 4784586, 4801415, 4818244, 4835073, 4851901, 4868730, 4885559, 4902388, 4919217, 4936046, 4952875, 4969704, 4986532, 5003361, 5020190, 5037019, 5053848, 5070677, 5087506, 5104335, 5121163, 5137992, 5154821, 5171650, 5188479, 5205308, 5222137, 5238966, 5255794, 5272623, 5289452, 5306281, 5323110, 5339939, }; const int gavl_g_to_y[256] = { 0, 33039, 66077, 99116, 132155, 165193, 198232, 231270, 264309, 297348, 330386, 363425, 396464, 429502, 462541, 495579, 528618, 561657, 594695, 627734, 660773, 693811, 726850, 759888, 792927, 825966, 859004, 892043, 925082, 958120, 991159, 1024197, 1057236, 1090275, 1123313, 1156352, 1189391, 1222429, 1255468, 1288506, 1321545, 1354584, 1387622, 1420661, 1453700, 1486738, 1519777, 1552815, 1585854, 1618893, 1651931, 1684970, 1718009, 1751047, 1784086, 1817124, 1850163, 1883202, 1916240, 1949279, 1982318, 2015356, 2048395, 2081433, 2114472, 2147511, 2180549, 2213588, 2246627, 2279665, 2312704, 2345742, 2378781, 2411820, 2444858, 2477897, 2510936, 2543974, 2577013, 2610051, 2643090, 2676129, 2709167, 2742206, 2775245, 2808283, 2841322, 2874360, 2907399, 2940438, 2973476, 3006515, 3039554, 3072592, 3105631, 3138669, 3171708, 3204747, 3237785, 3270824, 3303863, 3336901, 3369940, 3402978, 3436017, 3469056, 3502094, 3535133, 3568172, 3601210, 3634249, 3667287, 3700326, 3733365, 3766403, 3799442, 3832481, 3865519, 3898558, 3931596, 3964635, 3997674, 4030712, 4063751, 4096790, 4129828, 4162867, 4195905, 4228944, 4261983, 4295021, 4328060, 4361099, 4394137, 4427176, 4460214, 4493253, 4526292, 4559330, 4592369, 4625408, 4658446, 4691485, 4724523, 4757562, 4790601, 4823639, 4856678, 4889717, 4922755, 4955794, 4988832, 5021871, 5054910, 5087948, 5120987, 5154026, 5187064, 5220103, 5253141, 5286180, 5319219, 5352257, 5385296, 5418335, 5451373, 5484412, 5517450, 5550489, 5583528, 5616566, 5649605, 5682644, 5715682, 5748721, 5781759, 5814798, 5847837, 5880875, 5913914, 5946953, 5979991, 6013030, 6046068, 6079107, 6112146, 6145184, 6178223, 6211262, 6244300, 6277339, 6310377, 6343416, 6376455, 6409493, 6442532, 6475571, 6508609, 6541648, 6574686, 6607725, 6640764, 6673802, 6706841, 6739880, 6772918, 6805957, 6838995, 6872034, 6905073, 6938111, 6971150, 7004189, 7037227, 7070266, 7103304, 7136343, 7169382, 7202420, 7235459, 7268498, 7301536, 7334575, 7367613, 7400652, 7433691, 7466729, 7499768, 7532807, 7565845, 7598884, 7631922, 7664961, 7698000, 7731038, 7764077, 7797116, 7830154, 7863193, 7896231, 7929270, 7962309, 7995347, 8028386, 8061425, 8094463, 8127502, 8160540, 8193579, 8226618, 8259656, 8292695, 8325734, 8358772, 8391811, 8424849, }; const int gavl_b_to_y[256] = { 0, 6416, 12833, 19249, 25665, 32082, 38498, 44915, 51331, 57747, 64164, 70580, 76996, 83413, 89829, 96245, 102662, 109078, 115494, 121911, 128327, 134744, 141160, 147576, 153993, 160409, 166825, 173242, 179658, 186074, 192491, 198907, 205324, 211740, 218156, 224573, 230989, 237405, 243822, 250238, 256654, 263071, 269487, 275903, 282320, 288736, 295153, 301569, 307985, 314402, 320818, 327234, 333651, 340067, 346483, 352900, 359316, 365733, 372149, 378565, 384982, 391398, 397814, 404231, 410647, 417063, 423480, 429896, 436312, 442729, 449145, 455562, 461978, 468394, 474811, 481227, 487643, 494060, 500476, 506892, 513309, 519725, 526142, 532558, 538974, 545391, 551807, 558223, 564640, 571056, 577472, 583889, 590305, 596721, 603138, 609554, 615971, 622387, 628803, 635220, 641636, 648052, 654469, 660885, 667301, 673718, 680134, 686551, 692967, 699383, 705800, 712216, 718632, 725049, 731465, 737881, 744298, 750714, 757130, 763547, 769963, 776380, 782796, 789212, 795629, 802045, 808461, 814878, 821294, 827710, 834127, 840543, 846960, 853376, 859792, 866209, 872625, 879041, 885458, 891874, 898290, 904707, 911123, 917539, 923956, 930372, 936789, 943205, 949621, 956038, 962454, 968870, 975287, 981703, 988119, 994536, 1000952, 1007369, 1013785, 1020201, 1026618, 1033034, 1039450, 1045867, 1052283, 1058699, 1065116, 1071532, 1077948, 1084365, 1090781, 1097198, 1103614, 1110030, 1116447, 1122863, 1129279, 1135696, 1142112, 1148528, 1154945, 1161361, 1167778, 1174194, 1180610, 1187027, 1193443, 1199859, 1206276, 1212692, 1219108, 1225525, 1231941, 1238357, 1244774, 1251190, 1257607, 1264023, 1270439, 1276856, 1283272, 1289688, 1296105, 1302521, 1308937, 1315354, 1321770, 1328187, 1334603, 1341019, 1347436, 1353852, 1360268, 1366685, 1373101, 1379517, 1385934, 1392350, 1398766, 1405183, 1411599, 1418016, 1424432, 1430848, 1437265, 1443681, 1450097, 1456514, 1462930, 1469346, 1475763, 1482179, 1488595, 1495012, 1501428, 1507845, 1514261, 1520677, 1527094, 1533510, 1539926, 1546343, 1552759, 1559175, 1565592, 1572008, 1578425, 1584841, 1591257, 1597674, 1604090, 1610506, 1616923, 1623339, 1629755, 1636172, }; const int gavl_r_to_u[256] = { 0, -9713, -19427, -29142, -38856, -48570, -58284, -67998, -77712, -87427, -97141, -106855, -116569, -126283, -135997, -145712, -155426, -165140, -174854, -184568, -194282, -203997, -213711, -223425, -233139, -242853, -252567, -262282, -271996, -281710, -291424, -301138, -310853, -320567, -330281, -339995, -349709, -359423, -369138, -378852, -388566, -398280, -407994, -417708, -427423, -437137, -446851, -456565, -466279, -475993, -485708, -495422, -505136, -514850, -524564, -534278, -543993, -553707, -563421, -573135, -582849, -592564, -602278, -611992, -621706, -631420, -641134, -650849, -660563, -670277, -679991, -689705, -699419, -709134, -718848, -728562, -738276, -747990, -757704, -767419, -777133, -786847, -796561, -806275, -815989, -825704, -835418, -845132, -854846, -864560, -874275, -883989, -893703, -903417, -913131, -922845, -932560, -942274, -951988, -961702, -971416, -981130, -990845, -1000559, -1010273, -1019987, -1029701, -1039415, -1049130, -1058844, -1068558, -1078272, -1087986, -1097700, -1107415, -1117129, -1126843, -1136557, -1146271, -1155986, -1165700, -1175414, -1185128, -1194842, -1204556, -1214271, -1223985, -1233699, -1243413, -1253127, -1262841, -1272556, -1282270, -1291984, -1301698, -1311412, -1321126, -1330841, -1340555, -1350269, -1359983, -1369697, -1379412, -1389126, -1398840, -1408554, -1418268, -1427982, -1437697, -1447411, -1457125, -1466839, -1476553, -1486267, -1495982, -1505696, -1515410, -1525124, -1534838, -1544552, -1554267, -1563981, -1573695, -1583409, -1593123, -1602837, -1612552, -1622266, -1631980, -1641694, -1651408, -1661123, -1670837, -1680551, -1690265, -1699979, -1709693, -1719408, -1729122, -1738836, -1748550, -1758264, -1767978, -1777693, -1787407, -1797121, -1806835, -1816549, -1826263, -1835978, -1845692, -1855406, -1865120, -1874834, -1884548, -1894263, -1903977, -1913691, -1923405, -1933119, -1942834, -1952548, -1962262, -1971976, -1981690, -1991404, -2001119, -2010833, -2020547, -2030261, -2039975, -2049689, -2059404, -2069118, -2078832, -2088546, -2098260, -2107974, -2117689, -2127403, -2137117, -2146831, -2156545, -2166259, -2175974, -2185688, -2195402, -2205116, -2214830, -2224545, -2234259, -2243973, -2253687, -2263401, -2273115, -2282830, -2292544, -2302258, -2311972, -2321686, -2331400, -2341115, -2350829, -2360543, -2370257, -2379971, -2389685, -2399400, -2409114, -2418828, -2428542, -2438256, -2447970, -2457685, -2467399, -2477113, }; const int gavl_g_to_u[256] = { 0, -19069, -38140, -57210, -76280, -95350, -114421, -133491, -152561, -171631, -190702, -209772, -228842, -247912, -266983, -286053, -305123, -324194, -343264, -362334, -381404, -400475, -419545, -438615, -457685, -476756, -495826, -514896, -533966, -553037, -572107, -591177, -610248, -629318, -648388, -667458, -686529, -705599, -724669, -743739, -762810, -781880, -800950, -820020, -839091, -858161, -877231, -896302, -915372, -934442, -953512, -972583, -991653, -1010723, -1029793, -1048864, -1067934, -1087004, -1106074, -1125145, -1144215, -1163285, -1182356, -1201426, -1220496, -1239566, -1258637, -1277707, -1296777, -1315847, -1334918, -1353988, -1373058, -1392128, -1411199, -1430269, -1449339, -1468410, -1487480, -1506550, -1525620, -1544691, -1563761, -1582831, -1601901, -1620972, -1640042, -1659112, -1678182, -1697253, -1716323, -1735393, -1754464, -1773534, -1792604, -1811674, -1830745, -1849815, -1868885, -1887955, -1907026, -1926096, -1945166, -1964236, -1983307, -2002377, -2021447, -2040518, -2059588, -2078658, -2097728, -2116799, -2135869, -2154939, -2174009, -2193080, -2212150, -2231220, -2250290, -2269361, -2288431, -2307501, -2326572, -2345642, -2364712, -2383782, -2402853, -2421923, -2440993, -2460063, -2479134, -2498204, -2517274, -2536344, -2555415, -2574485, -2593555, -2612626, -2631696, -2650766, -2669836, -2688907, -2707977, -2727047, -2746117, -2765188, -2784258, -2803328, -2822398, -2841469, -2860539, -2879609, -2898680, -2917750, -2936820, -2955890, -2974961, -2994031, -3013101, -3032171, -3051242, -3070312, -3089382, -3108452, -3127523, -3146593, -3165663, -3184734, -3203804, -3222874, -3241944, -3261015, -3280085, -3299155, -3318225, -3337296, -3356366, -3375436, -3394506, -3413577, -3432647, -3451717, -3470788, -3489858, -3508928, -3527998, -3547069, -3566139, -3585209, -3604279, -3623350, -3642420, -3661490, -3680560, -3699631, -3718701, -3737771, -3756842, -3775912, -3794982, -3814052, -3833123, -3852193, -3871263, -3890333, -3909404, -3928474, -3947544, -3966614, -3985685, -4004755, -4023825, -4042896, -4061966, -4081036, -4100106, -4119177, -4138247, -4157317, -4176387, -4195458, -4214528, -4233598, -4252668, -4271739, -4290809, -4309879, -4328950, -4348020, -4367090, -4386160, -4405231, -4424301, -4443371, -4462441, -4481512, -4500582, -4519652, -4538722, -4557793, -4576863, -4595933, -4615004, -4634074, -4653144, -4672214, -4691285, -4710355, -4729425, -4748495, -4767566, -4786636, -4805706, -4824776, -4843847, -4862917, }; const int gavl_b_to_u[256] = { 8388608, 8417392, 8446177, 8474961, 8503746, 8532530, 8561315, 8590099, 8618884, 8647668, 8676452, 8705237, 8734021, 8762806, 8791590, 8820375, 8849159, 8877943, 8906728, 8935512, 8964297, 8993081, 9021866, 9050650, 9079435, 9108219, 9137003, 9165788, 9194572, 9223357, 9252141, 9280926, 9309710, 9338494, 9367279, 9396063, 9424848, 9453632, 9482417, 9511201, 9539986, 9568770, 9597554, 9626339, 9655123, 9683908, 9712692, 9741477, 9770261, 9799046, 9827830, 9856614, 9885399, 9914183, 9942968, 9971752, 10000537, 10029321, 10058105, 10086890, 10115674, 10144459, 10173243, 10202028, 10230812, 10259597, 10288381, 10317165, 10345950, 10374734, 10403519, 10432303, 10461088, 10489872, 10518657, 10547441, 10576225, 10605010, 10633794, 10662579, 10691363, 10720148, 10748932, 10777716, 10806501, 10835285, 10864070, 10892854, 10921639, 10950423, 10979208, 11007992, 11036776, 11065561, 11094345, 11123130, 11151914, 11180699, 11209483, 11238267, 11267052, 11295836, 11324621, 11353405, 11382190, 11410974, 11439759, 11468543, 11497327, 11526112, 11554896, 11583681, 11612465, 11641250, 11670034, 11698819, 11727603, 11756387, 11785172, 11813956, 11842741, 11871525, 11900310, 11929094, 11957878, 11986663, 12015447, 12044232, 12073016, 12101801, 12130585, 12159370, 12188154, 12216938, 12245723, 12274507, 12303292, 12332076, 12360861, 12389645, 12418429, 12447214, 12475998, 12504783, 12533567, 12562352, 12591136, 12619921, 12648705, 12677489, 12706274, 12735058, 12763843, 12792627, 12821412, 12850196, 12878981, 12907765, 12936549, 12965334, 12994118, 13022903, 13051687, 13080472, 13109256, 13138040, 13166825, 13195609, 13224394, 13253178, 13281963, 13310747, 13339532, 13368316, 13397100, 13425885, 13454669, 13483454, 13512238, 13541023, 13569807, 13598591, 13627376, 13656160, 13684945, 13713729, 13742514, 13771298, 13800083, 13828867, 13857651, 13886436, 13915220, 13944005, 13972789, 14001574, 14030358, 14059143, 14087927, 14116711, 14145496, 14174280, 14203065, 14231849, 14260634, 14289418, 14318202, 14346987, 14375771, 14404556, 14433340, 14462125, 14490909, 14519694, 14548478, 14577262, 14606047, 14634831, 14663616, 14692400, 14721185, 14749969, 14778754, 14807538, 14836322, 14865107, 14893891, 14922676, 14951460, 14980245, 15009029, 15037813, 15066598, 15095382, 15124167, 15152951, 15181736, 15210520, 15239305, 15268089, 15296873, 15325658, 15354442, 15383227, 15412011, 15440796, 15469580, 15498364, 15527149, 15555933, 15584718, 15613502, 15642287, 15671071, 15699856, 15728640, }; const int gavl_r_to_v[256] = { 0, 28784, 57569, 86353, 115138, 143922, 172707, 201491, 230276, 259060, 287844, 316629, 345413, 374198, 402982, 431767, 460551, 489335, 518120, 546904, 575689, 604473, 633258, 662042, 690827, 719611, 748395, 777180, 805964, 834749, 863533, 892318, 921102, 949886, 978671, 1007455, 1036240, 1065024, 1093809, 1122593, 1151378, 1180162, 1208946, 1237731, 1266515, 1295300, 1324084, 1352869, 1381653, 1410438, 1439222, 1468006, 1496791, 1525575, 1554360, 1583144, 1611929, 1640713, 1669497, 1698282, 1727066, 1755851, 1784635, 1813420, 1842204, 1870989, 1899773, 1928557, 1957342, 1986126, 2014911, 2043695, 2072480, 2101264, 2130049, 2158833, 2187617, 2216402, 2245186, 2273971, 2302755, 2331540, 2360324, 2389108, 2417893, 2446677, 2475462, 2504246, 2533031, 2561815, 2590600, 2619384, 2648168, 2676953, 2705737, 2734522, 2763306, 2792091, 2820875, 2849659, 2878444, 2907228, 2936013, 2964797, 2993582, 3022366, 3051151, 3079935, 3108719, 3137504, 3166288, 3195073, 3223857, 3252642, 3281426, 3310211, 3338995, 3367779, 3396564, 3425348, 3454133, 3482917, 3511702, 3540486, 3569270, 3598055, 3626839, 3655624, 3684408, 3713193, 3741977, 3770762, 3799546, 3828330, 3857115, 3885899, 3914684, 3943468, 3972253, 4001037, 4029821, 4058606, 4087390, 4116175, 4144959, 4173744, 4202528, 4231313, 4260097, 4288881, 4317666, 4346450, 4375235, 4404019, 4432804, 4461588, 4490373, 4519157, 4547941, 4576726, 4605510, 4634295, 4663079, 4691864, 4720648, 4749432, 4778217, 4807001, 4835786, 4864570, 4893355, 4922139, 4950924, 4979708, 5008492, 5037277, 5066061, 5094846, 5123630, 5152415, 5181199, 5209983, 5238768, 5267552, 5296337, 5325121, 5353906, 5382690, 5411475, 5440259, 5469043, 5497828, 5526612, 5555397, 5584181, 5612966, 5641750, 5670535, 5699319, 5728103, 5756888, 5785672, 5814457, 5843241, 5872026, 5900810, 5929594, 5958379, 5987163, 6015948, 6044732, 6073517, 6102301, 6131086, 6159870, 6188654, 6217439, 6246223, 6275008, 6303792, 6332577, 6361361, 6390146, 6418930, 6447714, 6476499, 6505283, 6534068, 6562852, 6591637, 6620421, 6649205, 6677990, 6706774, 6735559, 6764343, 6793128, 6821912, 6850697, 6879481, 6908265, 6937050, 6965834, 6994619, 7023403, 7052188, 7080972, 7109756, 7138541, 7167325, 7196110, 7224894, 7253679, 7282463, 7311248, 7340032, }; const int gavl_g_to_v[256] = { 0, -24103, -48206, -72310, -96413, -120517, -144620, -168724, -192827, -216931, -241034, -265138, -289241, -313345, -337448, -361552, -385655, -409759, -433862, -457966, -482069, -506173, -530276, -554380, -578483, -602587, -626690, -650794, -674897, -699001, -723104, -747208, -771311, -795415, -819518, -843622, -867725, -891829, -915933, -940036, -964140, -988243, -1012347, -1036450, -1060554, -1084657, -1108761, -1132864, -1156968, -1181071, -1205175, -1229278, -1253382, -1277485, -1301589, -1325692, -1349796, -1373899, -1398003, -1422106, -1446210, -1470313, -1494417, -1518520, -1542624, -1566727, -1590831, -1614934, -1639038, -1663141, -1687245, -1711348, -1735452, -1759556, -1783659, -1807763, -1831866, -1855970, -1880073, -1904177, -1928280, -1952384, -1976487, -2000591, -2024694, -2048798, -2072901, -2097005, -2121108, -2145212, -2169315, -2193419, -2217522, -2241626, -2265729, -2289833, -2313936, -2338040, -2362143, -2386247, -2410350, -2434454, -2458557, -2482661, -2506764, -2530868, -2554971, -2579075, -2603178, -2627282, -2651386, -2675489, -2699593, -2723696, -2747800, -2771903, -2796007, -2820110, -2844214, -2868317, -2892421, -2916524, -2940628, -2964731, -2988835, -3012938, -3037042, -3061145, -3085249, -3109352, -3133456, -3157559, -3181663, -3205766, -3229870, -3253973, -3278077, -3302180, -3326284, -3350387, -3374491, -3398594, -3422698, -3446801, -3470905, -3495008, -3519112, -3543216, -3567319, -3591423, -3615526, -3639630, -3663733, -3687837, -3711940, -3736044, -3760147, -3784251, -3808354, -3832458, -3856561, -3880665, -3904768, -3928872, -3952975, -3977079, -4001182, -4025286, -4049389, -4073493, -4097596, -4121700, -4145803, -4169907, -4194010, -4218114, -4242217, -4266321, -4290424, -4314528, -4338631, -4362735, -4386838, -4410942, -4435046, -4459149, -4483253, -4507356, -4531460, -4555563, -4579667, -4603770, -4627874, -4651977, -4676081, -4700184, -4724288, -4748391, -4772495, -4796598, -4820702, -4844805, -4868909, -4893012, -4917116, -4941219, -4965323, -4989426, -5013530, -5037633, -5061737, -5085840, -5109944, -5134047, -5158151, -5182254, -5206358, -5230461, -5254565, -5278669, -5302772, -5326876, -5350979, -5375083, -5399186, -5423290, -5447393, -5471497, -5495600, -5519704, -5543807, -5567911, -5592014, -5616118, -5640221, -5664325, -5688428, -5712532, -5736635, -5760739, -5784842, -5808946, -5833049, -5857153, -5881256, -5905360, -5929463, -5953567, -5977670, -6001774, -6025877, -6049981, -6074084, -6098188, -6122291, -6146395, }; const int gavl_b_to_v[256] = { 8388608, 8383927, 8379246, 8374565, 8369884, 8365203, 8360522, 8355842, 8351161, 8346480, 8341799, 8337118, 8332437, 8327756, 8323075, 8318394, 8313713, 8309032, 8304351, 8299670, 8294989, 8290309, 8285628, 8280947, 8276266, 8271585, 8266904, 8262223, 8257542, 8252861, 8248180, 8243499, 8238818, 8234137, 8229457, 8224776, 8220095, 8215414, 8210733, 8206052, 8201371, 8196690, 8192009, 8187328, 8182647, 8177966, 8173285, 8168605, 8163924, 8159243, 8154562, 8149881, 8145200, 8140519, 8135838, 8131157, 8126476, 8121795, 8117114, 8112433, 8107752, 8103072, 8098391, 8093710, 8089029, 8084348, 8079667, 8074986, 8070305, 8065624, 8060943, 8056262, 8051581, 8046900, 8042220, 8037539, 8032858, 8028177, 8023496, 8018815, 8014134, 8009453, 8004772, 8000091, 7995410, 7990729, 7986048, 7981367, 7976687, 7972006, 7967325, 7962644, 7957963, 7953282, 7948601, 7943920, 7939239, 7934558, 7929877, 7925196, 7920515, 7915835, 7911154, 7906473, 7901792, 7897111, 7892430, 7887749, 7883068, 7878387, 7873706, 7869025, 7864344, 7859663, 7854982, 7850302, 7845621, 7840940, 7836259, 7831578, 7826897, 7822216, 7817535, 7812854, 7808173, 7803492, 7798811, 7794130, 7789450, 7784769, 7780088, 7775407, 7770726, 7766045, 7761364, 7756683, 7752002, 7747321, 7742640, 7737959, 7733278, 7728598, 7723917, 7719236, 7714555, 7709874, 7705193, 7700512, 7695831, 7691150, 7686469, 7681788, 7677107, 7672426, 7667745, 7663065, 7658384, 7653703, 7649022, 7644341, 7639660, 7634979, 7630298, 7625617, 7620936, 7616255, 7611574, 7606893, 7602213, 7597532, 7592851, 7588170, 7583489, 7578808, 7574127, 7569446, 7564765, 7560084, 7555403, 7550722, 7546041, 7541360, 7536680, 7531999, 7527318, 7522637, 7517956, 7513275, 7508594, 7503913, 7499232, 7494551, 7489870, 7485189, 7480508, 7475828, 7471147, 7466466, 7461785, 7457104, 7452423, 7447742, 7443061, 7438380, 7433699, 7429018, 7424337, 7419656, 7414975, 7410295, 7405614, 7400933, 7396252, 7391571, 7386890, 7382209, 7377528, 7372847, 7368166, 7363485, 7358804, 7354123, 7349443, 7344762, 7340081, 7335400, 7330719, 7326038, 7321357, 7316676, 7311995, 7307314, 7302633, 7297952, 7293271, 7288591, 7283910, 7279229, 7274548, 7269867, 7265186, 7260505, 7255824, 7251143, 7246462, 7241781, 7237100, 7232419, 7227738, 7223058, 7218377, 7213696, 7209015, 7204334, 7199653, 7194972, }; /* RGB -> YUVJ conversions */ const int gavl_r_to_yj[256] = { 0, 19595, 39191, 58786, 78381, 97976, 117572, 137167, 156762, 176357, 195953, 215548, 235143, 254738, 274334, 293929, 313524, 333119, 352715, 372310, 391905, 411501, 431096, 450691, 470286, 489882, 509477, 529072, 548667, 568263, 587858, 607453, 627048, 646644, 666239, 685834, 705430, 725025, 744620, 764215, 783811, 803406, 823001, 842596, 862192, 881787, 901382, 920977, 940573, 960168, 979763, 999358, 1018954, 1038549, 1058144, 1077740, 1097335, 1116930, 1136525, 1156121, 1175716, 1195311, 1214906, 1234502, 1254097, 1273692, 1293287, 1312883, 1332478, 1352073, 1371668, 1391264, 1410859, 1430454, 1450050, 1469645, 1489240, 1508835, 1528431, 1548026, 1567621, 1587216, 1606812, 1626407, 1646002, 1665597, 1685193, 1704788, 1724383, 1743978, 1763574, 1783169, 1802764, 1822360, 1841955, 1861550, 1881145, 1900741, 1920336, 1939931, 1959526, 1979122, 1998717, 2018312, 2037907, 2057503, 2077098, 2096693, 2116289, 2135884, 2155479, 2175074, 2194670, 2214265, 2233860, 2253455, 2273051, 2292646, 2312241, 2331836, 2351432, 2371027, 2390622, 2410217, 2429813, 2449408, 2469003, 2488599, 2508194, 2527789, 2547384, 2566980, 2586575, 2606170, 2625765, 2645361, 2664956, 2684551, 2704146, 2723742, 2743337, 2762932, 2782527, 2802123, 2821718, 2841313, 2860909, 2880504, 2900099, 2919694, 2939290, 2958885, 2978480, 2998075, 3017671, 3037266, 3056861, 3076456, 3096052, 3115647, 3135242, 3154838, 3174433, 3194028, 3213623, 3233219, 3252814, 3272409, 3292004, 3311600, 3331195, 3350790, 3370385, 3389981, 3409576, 3429171, 3448766, 3468362, 3487957, 3507552, 3527148, 3546743, 3566338, 3585933, 3605529, 3625124, 3644719, 3664314, 3683910, 3703505, 3723100, 3742695, 3762291, 3781886, 3801481, 3821076, 3840672, 3860267, 3879862, 3899458, 3919053, 3938648, 3958243, 3977839, 3997434, 4017029, 4036624, 4056220, 4075815, 4095410, 4115005, 4134601, 4154196, 4173791, 4193386, 4212982, 4232577, 4252172, 4271768, 4291363, 4310958, 4330553, 4350149, 4369744, 4389339, 4408934, 4428530, 4448125, 4467720, 4487315, 4506911, 4526506, 4546101, 4565697, 4585292, 4604887, 4624482, 4644078, 4663673, 4683268, 4702863, 4722459, 4742054, 4761649, 4781244, 4800840, 4820435, 4840030, 4859625, 4879221, 4898816, 4918411, 4938007, 4957602, 4977197, 4996792, }; const int gavl_g_to_yj[256] = { 0, 38470, 76939, 115409, 153879, 192348, 230818, 269287, 307757, 346227, 384696, 423166, 461636, 500105, 538575, 577044, 615514, 653984, 692453, 730923, 769393, 807862, 846332, 884802, 923271, 961741, 1000210, 1038680, 1077150, 1115619, 1154089, 1192559, 1231028, 1269498, 1307967, 1346437, 1384907, 1423376, 1461846, 1500316, 1538785, 1577255, 1615725, 1654194, 1692664, 1731133, 1769603, 1808073, 1846542, 1885012, 1923482, 1961951, 2000421, 2038890, 2077360, 2115830, 2154299, 2192769, 2231239, 2269708, 2308178, 2346648, 2385117, 2423587, 2462056, 2500526, 2538996, 2577465, 2615935, 2654405, 2692874, 2731344, 2769814, 2808283, 2846753, 2885222, 2923692, 2962162, 3000631, 3039101, 3077571, 3116040, 3154510, 3192979, 3231449, 3269919, 3308388, 3346858, 3385328, 3423797, 3462267, 3500737, 3539206, 3577676, 3616145, 3654615, 3693085, 3731554, 3770024, 3808494, 3846963, 3885433, 3923902, 3962372, 4000842, 4039311, 4077781, 4116251, 4154720, 4193190, 4231660, 4270129, 4308599, 4347068, 4385538, 4424008, 4462477, 4500947, 4539417, 4577886, 4616356, 4654825, 4693295, 4731765, 4770234, 4808704, 4847174, 4885643, 4924113, 4962583, 5001052, 5039522, 5077991, 5116461, 5154931, 5193400, 5231870, 5270340, 5308809, 5347279, 5385748, 5424218, 5462688, 5501157, 5539627, 5578097, 5616566, 5655036, 5693506, 5731975, 5770445, 5808914, 5847384, 5885854, 5924323, 5962793, 6001263, 6039732, 6078202, 6116671, 6155141, 6193611, 6232080, 6270550, 6309020, 6347489, 6385959, 6424429, 6462898, 6501368, 6539837, 6578307, 6616777, 6655246, 6693716, 6732186, 6770655, 6809125, 6847594, 6886064, 6924534, 6963003, 7001473, 7039943, 7078412, 7116882, 7155352, 7193821, 7232291, 7270760, 7309230, 7347700, 7386169, 7424639, 7463109, 7501578, 7540048, 7578518, 7616987, 7655457, 7693926, 7732396, 7770866, 7809335, 7847805, 7886275, 7924744, 7963214, 8001683, 8040153, 8078623, 8117092, 8155562, 8194032, 8232501, 8270971, 8309441, 8347910, 8386380, 8424849, 8463319, 8501789, 8540258, 8578728, 8617198, 8655667, 8694137, 8732606, 8771076, 8809546, 8848015, 8886485, 8924955, 8963424, 9001894, 9040364, 9078833, 9117303, 9155772, 9194242, 9232712, 9271181, 9309651, 9348121, 9386590, 9425060, 9463529, 9501999, 9540469, 9578938, 9617408, 9655878, 9694347, 9732817, 9771287, 9809756, }; const int gavl_b_to_yj[256] = { 0, 7471, 14942, 22413, 29884, 37356, 44827, 52298, 59769, 67240, 74711, 82182, 89653, 97124, 104595, 112067, 119538, 127009, 134480, 141951, 149422, 156893, 164364, 171835, 179306, 186778, 194249, 201720, 209191, 216662, 224133, 231604, 239075, 246546, 254018, 261489, 268960, 276431, 283902, 291373, 298844, 306315, 313786, 321257, 328729, 336200, 343671, 351142, 358613, 366084, 373555, 381026, 388497, 395969, 403440, 410911, 418382, 425853, 433324, 440795, 448266, 455737, 463208, 470680, 478151, 485622, 493093, 500564, 508035, 515506, 522977, 530448, 537919, 545391, 552862, 560333, 567804, 575275, 582746, 590217, 597688, 605159, 612631, 620102, 627573, 635044, 642515, 649986, 657457, 664928, 672399, 679870, 687342, 694813, 702284, 709755, 717226, 724697, 732168, 739639, 747110, 754582, 762053, 769524, 776995, 784466, 791937, 799408, 806879, 814350, 821821, 829293, 836764, 844235, 851706, 859177, 866648, 874119, 881590, 889061, 896532, 904004, 911475, 918946, 926417, 933888, 941359, 948830, 956301, 963772, 971244, 978715, 986186, 993657, 1001128, 1008599, 1016070, 1023541, 1031012, 1038483, 1045955, 1053426, 1060897, 1068368, 1075839, 1083310, 1090781, 1098252, 1105723, 1113194, 1120666, 1128137, 1135608, 1143079, 1150550, 1158021, 1165492, 1172963, 1180434, 1187906, 1195377, 1202848, 1210319, 1217790, 1225261, 1232732, 1240203, 1247674, 1255145, 1262617, 1270088, 1277559, 1285030, 1292501, 1299972, 1307443, 1314914, 1322385, 1329857, 1337328, 1344799, 1352270, 1359741, 1367212, 1374683, 1382154, 1389625, 1397096, 1404568, 1412039, 1419510, 1426981, 1434452, 1441923, 1449394, 1456865, 1464336, 1471807, 1479279, 1486750, 1494221, 1501692, 1509163, 1516634, 1524105, 1531576, 1539047, 1546519, 1553990, 1561461, 1568932, 1576403, 1583874, 1591345, 1598816, 1606287, 1613758, 1621230, 1628701, 1636172, 1643643, 1651114, 1658585, 1666056, 1673527, 1680998, 1688470, 1695941, 1703412, 1710883, 1718354, 1725825, 1733296, 1740767, 1748238, 1755709, 1763181, 1770652, 1778123, 1785594, 1793065, 1800536, 1808007, 1815478, 1822949, 1830420, 1837892, 1845363, 1852834, 1860305, 1867776, 1875247, 1882718, 1890189, 1897660, 1905132, }; const int gavl_r_to_uj[256] = { 0, -11058, -22116, -33175, -44233, -55292, -66350, -77409, -88467, -99526, -110584, -121643, -132702, -143760, -154819, -165877, -176936, -187994, -199053, -210111, -221170, -232228, -243287, -254346, -265404, -276463, -287521, -298580, -309638, -320697, -331755, -342814, -353872, -364931, -375990, -387048, -398107, -409165, -420224, -431282, -442341, -453399, -464458, -475516, -486575, -497634, -508692, -519751, -530809, -541868, -552926, -563985, -575043, -586102, -597160, -608219, -619277, -630336, -641395, -652453, -663512, -674570, -685629, -696687, -707746, -718804, -729863, -740921, -751980, -763039, -774097, -785156, -796214, -807273, -818331, -829390, -840448, -851507, -862565, -873624, -884683, -895741, -906800, -917858, -928917, -939975, -951034, -962092, -973151, -984209, -995268, -1006327, -1017385, -1028444, -1039502, -1050561, -1061619, -1072678, -1083736, -1094795, -1105853, -1116912, -1127971, -1139029, -1150088, -1161146, -1172205, -1183263, -1194322, -1205380, -1216439, -1227497, -1238556, -1249615, -1260673, -1271732, -1282790, -1293849, -1304907, -1315966, -1327024, -1338083, -1349141, -1360200, -1371259, -1382317, -1393376, -1404434, -1415493, -1426551, -1437610, -1448668, -1459727, -1470785, -1481844, -1492903, -1503961, -1515020, -1526078, -1537137, -1548195, -1559254, -1570312, -1581371, -1592429, -1603488, -1614547, -1625605, -1636664, -1647722, -1658781, -1669839, -1680898, -1691956, -1703015, -1714073, -1725132, -1736191, -1747249, -1758308, -1769366, -1780425, -1791483, -1802542, -1813600, -1824659, -1835717, -1846776, -1857834, -1868893, -1879952, -1891010, -1902069, -1913127, -1924186, -1935244, -1946303, -1957361, -1968420, -1979478, -1990537, -2001596, -2012654, -2023713, -2034771, -2045830, -2056888, -2067947, -2079005, -2090064, -2101122, -2112181, -2123240, -2134298, -2145357, -2156415, -2167474, -2178532, -2189591, -2200649, -2211708, -2222766, -2233825, -2244884, -2255942, -2267001, -2278059, -2289118, -2300176, -2311235, -2322293, -2333352, -2344410, -2355469, -2366528, -2377586, -2388645, -2399703, -2410762, -2421820, -2432879, -2443937, -2454996, -2466054, -2477113, -2488172, -2499230, -2510289, -2521347, -2532406, -2543464, -2554523, -2565581, -2576640, -2587698, -2598757, -2609816, -2620874, -2631933, -2642991, -2654050, -2665108, -2676167, -2687225, -2698284, -2709342, -2720401, -2731460, -2742518, -2753577, -2764635, -2775694, -2786752, -2797811, -2808869, -2819928, }; const int gavl_g_to_uj[256] = { 0, -21708, -43418, -65127, -86837, -108546, -130256, -151965, -173675, -195384, -217094, -238803, -260512, -282222, -303931, -325641, -347350, -369060, -390769, -412479, -434188, -455898, -477607, -499316, -521026, -542735, -564445, -586154, -607864, -629573, -651283, -672992, -694702, -716411, -738120, -759830, -781539, -803249, -824958, -846668, -868377, -890087, -911796, -933506, -955215, -976924, -998634, -1020343, -1042053, -1063762, -1085472, -1107181, -1128891, -1150600, -1172310, -1194019, -1215729, -1237438, -1259147, -1280857, -1302566, -1324276, -1345985, -1367695, -1389404, -1411114, -1432823, -1454533, -1476242, -1497951, -1519661, -1541370, -1563080, -1584789, -1606499, -1628208, -1649918, -1671627, -1693337, -1715046, -1736755, -1758465, -1780174, -1801884, -1823593, -1845303, -1867012, -1888722, -1910431, -1932141, -1953850, -1975559, -1997269, -2018978, -2040688, -2062397, -2084107, -2105816, -2127526, -2149235, -2170945, -2192654, -2214363, -2236073, -2257782, -2279492, -2301201, -2322911, -2344620, -2366330, -2388039, -2409749, -2431458, -2453167, -2474877, -2496586, -2518296, -2540005, -2561715, -2583424, -2605134, -2626843, -2648553, -2670262, -2691971, -2713681, -2735390, -2757100, -2778809, -2800519, -2822228, -2843938, -2865647, -2887357, -2909066, -2930775, -2952485, -2974194, -2995904, -3017613, -3039323, -3061032, -3082742, -3104451, -3126161, -3147870, -3169579, -3191289, -3212998, -3234708, -3256417, -3278127, -3299836, -3321546, -3343255, -3364965, -3386674, -3408383, -3430093, -3451802, -3473512, -3495221, -3516931, -3538640, -3560350, -3582059, -3603769, -3625478, -3647188, -3668897, -3690606, -3712316, -3734025, -3755735, -3777444, -3799154, -3820863, -3842573, -3864282, -3885992, -3907701, -3929410, -3951120, -3972829, -3994539, -4016248, -4037958, -4059667, -4081377, -4103086, -4124796, -4146505, -4168214, -4189924, -4211633, -4233343, -4255052, -4276762, -4298471, -4320181, -4341890, -4363600, -4385309, -4407018, -4428728, -4450437, -4472147, -4493856, -4515566, -4537275, -4558985, -4580694, -4602404, -4624113, -4645822, -4667532, -4689241, -4710951, -4732660, -4754370, -4776079, -4797789, -4819498, -4841208, -4862917, -4884626, -4906336, -4928045, -4949755, -4971464, -4993174, -5014883, -5036593, -5058302, -5080012, -5101721, -5123430, -5145140, -5166849, -5188559, -5210268, -5231978, -5253687, -5275397, -5297106, -5318816, -5340525, -5362234, -5383944, -5405653, -5427363, -5449072, -5470782, -5492491, -5514201, -5535910, }; const int gavl_b_to_uj[256] = { 8388608, 8421376, 8454144, 8486912, 8519680, 8552448, 8585216, 8617984, 8650752, 8683520, 8716288, 8749056, 8781824, 8814592, 8847360, 8880128, 8912896, 8945664, 8978432, 9011200, 9043968, 9076736, 9109504, 9142272, 9175040, 9207808, 9240576, 9273344, 9306112, 9338880, 9371648, 9404416, 9437184, 9469952, 9502720, 9535488, 9568256, 9601024, 9633792, 9666560, 9699328, 9732096, 9764864, 9797632, 9830400, 9863168, 9895936, 9928704, 9961472, 9994240, 10027008, 10059776, 10092544, 10125312, 10158080, 10190848, 10223616, 10256384, 10289152, 10321920, 10354688, 10387456, 10420224, 10452992, 10485760, 10518528, 10551296, 10584064, 10616832, 10649600, 10682368, 10715136, 10747904, 10780672, 10813440, 10846208, 10878976, 10911744, 10944512, 10977280, 11010048, 11042816, 11075584, 11108352, 11141120, 11173888, 11206656, 11239424, 11272192, 11304960, 11337728, 11370496, 11403264, 11436032, 11468800, 11501568, 11534336, 11567104, 11599872, 11632640, 11665408, 11698176, 11730944, 11763712, 11796480, 11829248, 11862016, 11894784, 11927552, 11960320, 11993088, 12025856, 12058624, 12091392, 12124160, 12156928, 12189696, 12222464, 12255232, 12288000, 12320768, 12353536, 12386304, 12419072, 12451840, 12484608, 12517376, 12550144, 12582912, 12615680, 12648448, 12681216, 12713984, 12746752, 12779520, 12812288, 12845056, 12877824, 12910592, 12943360, 12976128, 13008896, 13041664, 13074432, 13107200, 13139968, 13172736, 13205504, 13238272, 13271040, 13303808, 13336576, 13369344, 13402112, 13434880, 13467648, 13500416, 13533184, 13565952, 13598720, 13631488, 13664256, 13697024, 13729792, 13762560, 13795328, 13828096, 13860864, 13893632, 13926400, 13959168, 13991936, 14024704, 14057472, 14090240, 14123008, 14155776, 14188544, 14221312, 14254080, 14286848, 14319616, 14352384, 14385152, 14417920, 14450688, 14483456, 14516224, 14548992, 14581760, 14614528, 14647296, 14680064, 14712832, 14745600, 14778368, 14811136, 14843904, 14876672, 14909440, 14942208, 14974976, 15007744, 15040512, 15073280, 15106048, 15138816, 15171584, 15204352, 15237120, 15269888, 15302656, 15335424, 15368192, 15400960, 15433728, 15466496, 15499264, 15532032, 15564800, 15597568, 15630336, 15663104, 15695872, 15728640, 15761408, 15794176, 15826944, 15859712, 15892480, 15925248, 15958016, 15990784, 16023552, 16056320, 16089088, 16121856, 16154624, 16187392, 16220160, 16252928, 16285696, 16318464, 16351232, 16384000, 16416768, 16449536, 16482304, 16515072, 16547840, 16580608, 16613376, 16646144, 16678912, 16711680, 16744448, }; const int gavl_r_to_vj[256] = { 0, 32768, 65536, 98304, 131072, 163840, 196608, 229376, 262144, 294912, 327680, 360448, 393216, 425984, 458752, 491520, 524288, 557056, 589824, 622592, 655360, 688128, 720896, 753664, 786432, 819200, 851968, 884736, 917504, 950272, 983040, 1015808, 1048576, 1081344, 1114112, 1146880, 1179648, 1212416, 1245184, 1277952, 1310720, 1343488, 1376256, 1409024, 1441792, 1474560, 1507328, 1540096, 1572864, 1605632, 1638400, 1671168, 1703936, 1736704, 1769472, 1802240, 1835008, 1867776, 1900544, 1933312, 1966080, 1998848, 2031616, 2064384, 2097152, 2129920, 2162688, 2195456, 2228224, 2260992, 2293760, 2326528, 2359296, 2392064, 2424832, 2457600, 2490368, 2523136, 2555904, 2588672, 2621440, 2654208, 2686976, 2719744, 2752512, 2785280, 2818048, 2850816, 2883584, 2916352, 2949120, 2981888, 3014656, 3047424, 3080192, 3112960, 3145728, 3178496, 3211264, 3244032, 3276800, 3309568, 3342336, 3375104, 3407872, 3440640, 3473408, 3506176, 3538944, 3571712, 3604480, 3637248, 3670016, 3702784, 3735552, 3768320, 3801088, 3833856, 3866624, 3899392, 3932160, 3964928, 3997696, 4030464, 4063232, 4096000, 4128768, 4161536, 4194304, 4227072, 4259840, 4292608, 4325376, 4358144, 4390912, 4423680, 4456448, 4489216, 4521984, 4554752, 4587520, 4620288, 4653056, 4685824, 4718592, 4751360, 4784128, 4816896, 4849664, 4882432, 4915200, 4947968, 4980736, 5013504, 5046272, 5079040, 5111808, 5144576, 5177344, 5210112, 5242880, 5275648, 5308416, 5341184, 5373952, 5406720, 5439488, 5472256, 5505024, 5537792, 5570560, 5603328, 5636096, 5668864, 5701632, 5734400, 5767168, 5799936, 5832704, 5865472, 5898240, 5931008, 5963776, 5996544, 6029312, 6062080, 6094848, 6127616, 6160384, 6193152, 6225920, 6258688, 6291456, 6324224, 6356992, 6389760, 6422528, 6455296, 6488064, 6520832, 6553600, 6586368, 6619136, 6651904, 6684672, 6717440, 6750208, 6782976, 6815744, 6848512, 6881280, 6914048, 6946816, 6979584, 7012352, 7045120, 7077888, 7110656, 7143424, 7176192, 7208960, 7241728, 7274496, 7307264, 7340032, 7372800, 7405568, 7438336, 7471104, 7503872, 7536640, 7569408, 7602176, 7634944, 7667712, 7700480, 7733248, 7766016, 7798784, 7831552, 7864320, 7897088, 7929856, 7962624, 7995392, 8028160, 8060928, 8093696, 8126464, 8159232, 8192000, 8224768, 8257536, 8290304, 8323072, 8355840, }; const int gavl_g_to_vj[256] = { 0, -27438, -54878, -82317, -109756, -137195, -164635, -192074, -219513, -246952, -274392, -301831, -329270, -356709, -384149, -411588, -439027, -466467, -493906, -521345, -548784, -576224, -603663, -631102, -658541, -685981, -713420, -740859, -768298, -795738, -823177, -850616, -878056, -905495, -932934, -960373, -987813, -1015252, -1042691, -1070130, -1097570, -1125009, -1152448, -1179888, -1207327, -1234766, -1262205, -1289645, -1317084, -1344523, -1371962, -1399402, -1426841, -1454280, -1481719, -1509159, -1536598, -1564037, -1591477, -1618916, -1646355, -1673794, -1701234, -1728673, -1756112, -1783551, -1810991, -1838430, -1865869, -1893308, -1920748, -1948187, -1975626, -2003066, -2030505, -2057944, -2085383, -2112823, -2140262, -2167701, -2195140, -2222580, -2250019, -2277458, -2304897, -2332337, -2359776, -2387215, -2414655, -2442094, -2469533, -2496972, -2524412, -2551851, -2579290, -2606729, -2634169, -2661608, -2689047, -2716487, -2743926, -2771365, -2798804, -2826244, -2853683, -2881122, -2908561, -2936001, -2963440, -2990879, -3018318, -3045758, -3073197, -3100636, -3128076, -3155515, -3182954, -3210393, -3237833, -3265272, -3292711, -3320150, -3347590, -3375029, -3402468, -3429907, -3457347, -3484786, -3512225, -3539665, -3567104, -3594543, -3621982, -3649422, -3676861, -3704300, -3731739, -3759179, -3786618, -3814057, -3841496, -3868936, -3896375, -3923814, -3951254, -3978693, -4006132, -4033571, -4061011, -4088450, -4115889, -4143328, -4170768, -4198207, -4225646, -4253086, -4280525, -4307964, -4335403, -4362843, -4390282, -4417721, -4445160, -4472600, -4500039, -4527478, -4554917, -4582357, -4609796, -4637235, -4664675, -4692114, -4719553, -4746992, -4774432, -4801871, -4829310, -4856749, -4884189, -4911628, -4939067, -4966506, -4993946, -5021385, -5048824, -5076264, -5103703, -5131142, -5158581, -5186021, -5213460, -5240899, -5268338, -5295778, -5323217, -5350656, -5378095, -5405535, -5432974, -5460413, -5487853, -5515292, -5542731, -5570170, -5597610, -5625049, -5652488, -5679927, -5707367, -5734806, -5762245, -5789685, -5817124, -5844563, -5872002, -5899442, -5926881, -5954320, -5981759, -6009199, -6036638, -6064077, -6091516, -6118956, -6146395, -6173834, -6201274, -6228713, -6256152, -6283591, -6311031, -6338470, -6365909, -6393348, -6420788, -6448227, -6475666, -6503105, -6530545, -6557984, -6585423, -6612863, -6640302, -6667741, -6695180, -6722620, -6750059, -6777498, -6804937, -6832377, -6859816, -6887255, -6914694, -6942134, -6969573, -6997012, }; const int gavl_b_to_vj[256] = { 8388608, 8383279, 8377951, 8372622, 8367293, 8361964, 8356636, 8351307, 8345978, 8340649, 8335321, 8329992, 8324663, 8319334, 8314006, 8308677, 8303348, 8298020, 8292691, 8287362, 8282033, 8276705, 8271376, 8266047, 8260718, 8255390, 8250061, 8244732, 8239403, 8234075, 8228746, 8223417, 8218089, 8212760, 8207431, 8202102, 8196774, 8191445, 8186116, 8180787, 8175459, 8170130, 8164801, 8159473, 8154144, 8148815, 8143486, 8138158, 8132829, 8127500, 8122171, 8116843, 8111514, 8106185, 8100856, 8095528, 8090199, 8084870, 8079542, 8074213, 8068884, 8063555, 8058227, 8052898, 8047569, 8042240, 8036912, 8031583, 8026254, 8020925, 8015597, 8010268, 8004939, 7999611, 7994282, 7988953, 7983624, 7978296, 7972967, 7967638, 7962309, 7956981, 7951652, 7946323, 7940994, 7935666, 7930337, 7925008, 7919680, 7914351, 7909022, 7903693, 7898365, 7893036, 7887707, 7882378, 7877050, 7871721, 7866392, 7861064, 7855735, 7850406, 7845077, 7839749, 7834420, 7829091, 7823762, 7818434, 7813105, 7807776, 7802447, 7797119, 7791790, 7786461, 7781133, 7775804, 7770475, 7765146, 7759818, 7754489, 7749160, 7743831, 7738503, 7733174, 7727845, 7722516, 7717188, 7711859, 7706530, 7701202, 7695873, 7690544, 7685215, 7679887, 7674558, 7669229, 7663900, 7658572, 7653243, 7647914, 7642585, 7637257, 7631928, 7626599, 7621271, 7615942, 7610613, 7605284, 7599956, 7594627, 7589298, 7583969, 7578641, 7573312, 7567983, 7562655, 7557326, 7551997, 7546668, 7541340, 7536011, 7530682, 7525353, 7520025, 7514696, 7509367, 7504038, 7498710, 7493381, 7488052, 7482724, 7477395, 7472066, 7466737, 7461409, 7456080, 7450751, 7445422, 7440094, 7434765, 7429436, 7424107, 7418779, 7413450, 7408121, 7402793, 7397464, 7392135, 7386806, 7381478, 7376149, 7370820, 7365491, 7360163, 7354834, 7349505, 7344176, 7338848, 7333519, 7328190, 7322862, 7317533, 7312204, 7306875, 7301547, 7296218, 7290889, 7285560, 7280232, 7274903, 7269574, 7264246, 7258917, 7253588, 7248259, 7242931, 7237602, 7232273, 7226944, 7221616, 7216287, 7210958, 7205629, 7200301, 7194972, 7189643, 7184315, 7178986, 7173657, 7168328, 7163000, 7157671, 7152342, 7147013, 7141685, 7136356, 7131027, 7125698, 7120370, 7115041, 7109712, 7104384, 7099055, 7093726, 7088397, 7083069, 7077740, 7072411, 7067082, 7061754, 7056425, 7051096, 7045767, 7040439, 7035110, 7029781, }; /* RGB -> YUV float conversions */ const float gavl_r_to_y_float[256] = { 0.00000000, 0.00117255, 0.00234510, 0.00351765, 0.00469020, 0.00586275, 0.00703529, 0.00820784, 0.00938039, 0.01055294, 0.01172549, 0.01289804, 0.01407059, 0.01524314, 0.01641569, 0.01758824, 0.01876078, 0.01993333, 0.02110588, 0.02227843, 0.02345098, 0.02462353, 0.02579608, 0.02696863, 0.02814118, 0.02931373, 0.03048627, 0.03165882, 0.03283137, 0.03400392, 0.03517647, 0.03634902, 0.03752157, 0.03869412, 0.03986667, 0.04103922, 0.04221176, 0.04338431, 0.04455686, 0.04572941, 0.04690196, 0.04807451, 0.04924706, 0.05041961, 0.05159216, 0.05276471, 0.05393725, 0.05510980, 0.05628235, 0.05745490, 0.05862745, 0.05980000, 0.06097255, 0.06214510, 0.06331765, 0.06449020, 0.06566275, 0.06683529, 0.06800784, 0.06918039, 0.07035294, 0.07152549, 0.07269804, 0.07387059, 0.07504314, 0.07621569, 0.07738824, 0.07856078, 0.07973333, 0.08090588, 0.08207843, 0.08325098, 0.08442353, 0.08559608, 0.08676863, 0.08794118, 0.08911373, 0.09028627, 0.09145882, 0.09263137, 0.09380392, 0.09497647, 0.09614902, 0.09732157, 0.09849412, 0.09966667, 0.10083922, 0.10201176, 0.10318431, 0.10435686, 0.10552941, 0.10670196, 0.10787451, 0.10904706, 0.11021961, 0.11139216, 0.11256471, 0.11373725, 0.11490980, 0.11608235, 0.11725490, 0.11842745, 0.11960000, 0.12077255, 0.12194510, 0.12311765, 0.12429020, 0.12546275, 0.12663529, 0.12780784, 0.12898039, 0.13015294, 0.13132549, 0.13249804, 0.13367059, 0.13484314, 0.13601569, 0.13718824, 0.13836078, 0.13953333, 0.14070588, 0.14187843, 0.14305098, 0.14422353, 0.14539608, 0.14656863, 0.14774118, 0.14891373, 0.15008627, 0.15125882, 0.15243137, 0.15360392, 0.15477647, 0.15594902, 0.15712157, 0.15829412, 0.15946667, 0.16063922, 0.16181176, 0.16298431, 0.16415686, 0.16532941, 0.16650196, 0.16767451, 0.16884706, 0.17001961, 0.17119216, 0.17236471, 0.17353725, 0.17470980, 0.17588235, 0.17705490, 0.17822745, 0.17940000, 0.18057255, 0.18174510, 0.18291765, 0.18409020, 0.18526275, 0.18643529, 0.18760784, 0.18878039, 0.18995294, 0.19112549, 0.19229804, 0.19347059, 0.19464314, 0.19581569, 0.19698824, 0.19816078, 0.19933333, 0.20050588, 0.20167843, 0.20285098, 0.20402353, 0.20519608, 0.20636863, 0.20754118, 0.20871373, 0.20988627, 0.21105882, 0.21223137, 0.21340392, 0.21457647, 0.21574902, 0.21692157, 0.21809412, 0.21926667, 0.22043922, 0.22161176, 0.22278431, 0.22395686, 0.22512941, 0.22630196, 0.22747451, 0.22864706, 0.22981961, 0.23099216, 0.23216471, 0.23333725, 0.23450980, 0.23568235, 0.23685490, 0.23802745, 0.23920000, 0.24037255, 0.24154510, 0.24271765, 0.24389020, 0.24506275, 0.24623529, 0.24740784, 0.24858039, 0.24975294, 0.25092549, 0.25209804, 0.25327059, 0.25444314, 0.25561569, 0.25678824, 0.25796078, 0.25913333, 0.26030588, 0.26147843, 0.26265098, 0.26382353, 0.26499608, 0.26616863, 0.26734118, 0.26851373, 0.26968627, 0.27085882, 0.27203137, 0.27320392, 0.27437647, 0.27554902, 0.27672157, 0.27789412, 0.27906667, 0.28023922, 0.28141176, 0.28258431, 0.28375686, 0.28492941, 0.28610196, 0.28727451, 0.28844706, 0.28961961, 0.29079216, 0.29196471, 0.29313725, 0.29430980, 0.29548235, 0.29665490, 0.29782745, 0.29900000, }; const float gavl_g_to_y_float[256] = { 0.00000000, 0.00230196, 0.00460392, 0.00690588, 0.00920784, 0.01150980, 0.01381176, 0.01611373, 0.01841569, 0.02071765, 0.02301961, 0.02532157, 0.02762353, 0.02992549, 0.03222745, 0.03452941, 0.03683137, 0.03913333, 0.04143529, 0.04373725, 0.04603922, 0.04834118, 0.05064314, 0.05294510, 0.05524706, 0.05754902, 0.05985098, 0.06215294, 0.06445490, 0.06675686, 0.06905882, 0.07136078, 0.07366275, 0.07596471, 0.07826667, 0.08056863, 0.08287059, 0.08517255, 0.08747451, 0.08977647, 0.09207843, 0.09438039, 0.09668235, 0.09898431, 0.10128627, 0.10358824, 0.10589020, 0.10819216, 0.11049412, 0.11279608, 0.11509804, 0.11740000, 0.11970196, 0.12200392, 0.12430588, 0.12660784, 0.12890980, 0.13121176, 0.13351373, 0.13581569, 0.13811765, 0.14041961, 0.14272157, 0.14502353, 0.14732549, 0.14962745, 0.15192941, 0.15423137, 0.15653333, 0.15883529, 0.16113725, 0.16343922, 0.16574118, 0.16804314, 0.17034510, 0.17264706, 0.17494902, 0.17725098, 0.17955294, 0.18185490, 0.18415686, 0.18645882, 0.18876078, 0.19106275, 0.19336471, 0.19566667, 0.19796863, 0.20027059, 0.20257255, 0.20487451, 0.20717647, 0.20947843, 0.21178039, 0.21408235, 0.21638431, 0.21868627, 0.22098824, 0.22329020, 0.22559216, 0.22789412, 0.23019608, 0.23249804, 0.23480000, 0.23710196, 0.23940392, 0.24170588, 0.24400784, 0.24630980, 0.24861176, 0.25091373, 0.25321569, 0.25551765, 0.25781961, 0.26012157, 0.26242353, 0.26472549, 0.26702745, 0.26932941, 0.27163137, 0.27393333, 0.27623529, 0.27853725, 0.28083922, 0.28314118, 0.28544314, 0.28774510, 0.29004706, 0.29234902, 0.29465098, 0.29695294, 0.29925490, 0.30155686, 0.30385882, 0.30616078, 0.30846275, 0.31076471, 0.31306667, 0.31536863, 0.31767059, 0.31997255, 0.32227451, 0.32457647, 0.32687843, 0.32918039, 0.33148235, 0.33378431, 0.33608627, 0.33838824, 0.34069020, 0.34299216, 0.34529412, 0.34759608, 0.34989804, 0.35220000, 0.35450196, 0.35680392, 0.35910588, 0.36140784, 0.36370980, 0.36601176, 0.36831373, 0.37061569, 0.37291765, 0.37521961, 0.37752157, 0.37982353, 0.38212549, 0.38442745, 0.38672941, 0.38903137, 0.39133333, 0.39363529, 0.39593725, 0.39823922, 0.40054118, 0.40284314, 0.40514510, 0.40744706, 0.40974902, 0.41205098, 0.41435294, 0.41665490, 0.41895686, 0.42125882, 0.42356078, 0.42586275, 0.42816471, 0.43046667, 0.43276863, 0.43507059, 0.43737255, 0.43967451, 0.44197647, 0.44427843, 0.44658039, 0.44888235, 0.45118431, 0.45348627, 0.45578824, 0.45809020, 0.46039216, 0.46269412, 0.46499608, 0.46729804, 0.46960000, 0.47190196, 0.47420392, 0.47650588, 0.47880784, 0.48110980, 0.48341176, 0.48571373, 0.48801569, 0.49031765, 0.49261961, 0.49492157, 0.49722353, 0.49952549, 0.50182745, 0.50412941, 0.50643137, 0.50873333, 0.51103529, 0.51333725, 0.51563922, 0.51794118, 0.52024314, 0.52254510, 0.52484706, 0.52714902, 0.52945098, 0.53175294, 0.53405490, 0.53635686, 0.53865882, 0.54096078, 0.54326275, 0.54556471, 0.54786667, 0.55016863, 0.55247059, 0.55477255, 0.55707451, 0.55937647, 0.56167843, 0.56398039, 0.56628235, 0.56858431, 0.57088627, 0.57318824, 0.57549020, 0.57779216, 0.58009412, 0.58239608, 0.58469804, 0.58700000, }; const float gavl_b_to_y_float[256] = { 0.00000000, 0.00044706, 0.00089412, 0.00134118, 0.00178824, 0.00223529, 0.00268235, 0.00312941, 0.00357647, 0.00402353, 0.00447059, 0.00491765, 0.00536471, 0.00581176, 0.00625882, 0.00670588, 0.00715294, 0.00760000, 0.00804706, 0.00849412, 0.00894118, 0.00938824, 0.00983529, 0.01028235, 0.01072941, 0.01117647, 0.01162353, 0.01207059, 0.01251765, 0.01296471, 0.01341176, 0.01385882, 0.01430588, 0.01475294, 0.01520000, 0.01564706, 0.01609412, 0.01654118, 0.01698824, 0.01743529, 0.01788235, 0.01832941, 0.01877647, 0.01922353, 0.01967059, 0.02011765, 0.02056471, 0.02101176, 0.02145882, 0.02190588, 0.02235294, 0.02280000, 0.02324706, 0.02369412, 0.02414118, 0.02458824, 0.02503529, 0.02548235, 0.02592941, 0.02637647, 0.02682353, 0.02727059, 0.02771765, 0.02816471, 0.02861176, 0.02905882, 0.02950588, 0.02995294, 0.03040000, 0.03084706, 0.03129412, 0.03174118, 0.03218824, 0.03263529, 0.03308235, 0.03352941, 0.03397647, 0.03442353, 0.03487059, 0.03531765, 0.03576471, 0.03621176, 0.03665882, 0.03710588, 0.03755294, 0.03800000, 0.03844706, 0.03889412, 0.03934118, 0.03978824, 0.04023529, 0.04068235, 0.04112941, 0.04157647, 0.04202353, 0.04247059, 0.04291765, 0.04336471, 0.04381176, 0.04425882, 0.04470588, 0.04515294, 0.04560000, 0.04604706, 0.04649412, 0.04694118, 0.04738824, 0.04783529, 0.04828235, 0.04872941, 0.04917647, 0.04962353, 0.05007059, 0.05051765, 0.05096471, 0.05141176, 0.05185882, 0.05230588, 0.05275294, 0.05320000, 0.05364706, 0.05409412, 0.05454118, 0.05498824, 0.05543529, 0.05588235, 0.05632941, 0.05677647, 0.05722353, 0.05767059, 0.05811765, 0.05856471, 0.05901176, 0.05945882, 0.05990588, 0.06035294, 0.06080000, 0.06124706, 0.06169412, 0.06214118, 0.06258824, 0.06303529, 0.06348235, 0.06392941, 0.06437647, 0.06482353, 0.06527059, 0.06571765, 0.06616471, 0.06661176, 0.06705882, 0.06750588, 0.06795294, 0.06840000, 0.06884706, 0.06929412, 0.06974118, 0.07018824, 0.07063529, 0.07108235, 0.07152941, 0.07197647, 0.07242353, 0.07287059, 0.07331765, 0.07376471, 0.07421176, 0.07465882, 0.07510588, 0.07555294, 0.07600000, 0.07644706, 0.07689412, 0.07734118, 0.07778824, 0.07823529, 0.07868235, 0.07912941, 0.07957647, 0.08002353, 0.08047059, 0.08091765, 0.08136471, 0.08181176, 0.08225882, 0.08270588, 0.08315294, 0.08360000, 0.08404706, 0.08449412, 0.08494118, 0.08538824, 0.08583529, 0.08628235, 0.08672941, 0.08717647, 0.08762353, 0.08807059, 0.08851765, 0.08896471, 0.08941176, 0.08985882, 0.09030588, 0.09075294, 0.09120000, 0.09164706, 0.09209412, 0.09254118, 0.09298824, 0.09343529, 0.09388235, 0.09432941, 0.09477647, 0.09522353, 0.09567059, 0.09611765, 0.09656471, 0.09701176, 0.09745882, 0.09790588, 0.09835294, 0.09880000, 0.09924706, 0.09969412, 0.10014118, 0.10058824, 0.10103529, 0.10148235, 0.10192941, 0.10237647, 0.10282353, 0.10327059, 0.10371765, 0.10416471, 0.10461176, 0.10505882, 0.10550588, 0.10595294, 0.10640000, 0.10684706, 0.10729412, 0.10774118, 0.10818824, 0.10863529, 0.10908235, 0.10952941, 0.10997647, 0.11042353, 0.11087059, 0.11131765, 0.11176471, 0.11221176, 0.11265882, 0.11310588, 0.11355294, 0.11400000, }; const float gavl_r_to_u_float[256] = { -0.00000000, -0.00066173, -0.00132345, -0.00198518, -0.00264690, -0.00330863, -0.00397035, -0.00463208, -0.00529380, -0.00595553, -0.00661725, -0.00727898, -0.00794071, -0.00860243, -0.00926416, -0.00992588, -0.01058761, -0.01124933, -0.01191106, -0.01257278, -0.01323451, -0.01389624, -0.01455796, -0.01521969, -0.01588141, -0.01654314, -0.01720486, -0.01786659, -0.01852831, -0.01919004, -0.01985176, -0.02051349, -0.02117522, -0.02183694, -0.02249867, -0.02316039, -0.02382212, -0.02448384, -0.02514557, -0.02580729, -0.02646902, -0.02713075, -0.02779247, -0.02845420, -0.02911592, -0.02977765, -0.03043937, -0.03110110, -0.03176282, -0.03242455, -0.03308627, -0.03374800, -0.03440973, -0.03507145, -0.03573318, -0.03639490, -0.03705663, -0.03771835, -0.03838008, -0.03904180, -0.03970353, -0.04036525, -0.04102698, -0.04168871, -0.04235043, -0.04301216, -0.04367388, -0.04433561, -0.04499733, -0.04565906, -0.04632078, -0.04698251, -0.04764424, -0.04830596, -0.04896769, -0.04962941, -0.05029114, -0.05095286, -0.05161459, -0.05227631, -0.05293804, -0.05359976, -0.05426149, -0.05492322, -0.05558494, -0.05624667, -0.05690839, -0.05757012, -0.05823184, -0.05889357, -0.05955529, -0.06021702, -0.06087875, -0.06154047, -0.06220220, -0.06286392, -0.06352565, -0.06418737, -0.06484910, -0.06551082, -0.06617255, -0.06683427, -0.06749600, -0.06815773, -0.06881945, -0.06948118, -0.07014290, -0.07080463, -0.07146635, -0.07212808, -0.07278980, -0.07345153, -0.07411325, -0.07477498, -0.07543671, -0.07609843, -0.07676016, -0.07742188, -0.07808361, -0.07874533, -0.07940706, -0.08006878, -0.08073051, -0.08139224, -0.08205396, -0.08271569, -0.08337741, -0.08403914, -0.08470086, -0.08536259, -0.08602431, -0.08668604, -0.08734776, -0.08800949, -0.08867122, -0.08933294, -0.08999467, -0.09065639, -0.09131812, -0.09197984, -0.09264157, -0.09330329, -0.09396502, -0.09462675, -0.09528847, -0.09595020, -0.09661192, -0.09727365, -0.09793537, -0.09859710, -0.09925882, -0.09992055, -0.10058227, -0.10124400, -0.10190573, -0.10256745, -0.10322918, -0.10389090, -0.10455263, -0.10521435, -0.10587608, -0.10653780, -0.10719953, -0.10786125, -0.10852298, -0.10918471, -0.10984643, -0.11050816, -0.11116988, -0.11183161, -0.11249333, -0.11315506, -0.11381678, -0.11447851, -0.11514024, -0.11580196, -0.11646369, -0.11712541, -0.11778714, -0.11844886, -0.11911059, -0.11977231, -0.12043404, -0.12109576, -0.12175749, -0.12241922, -0.12308094, -0.12374267, -0.12440439, -0.12506612, -0.12572784, -0.12638957, -0.12705129, -0.12771302, -0.12837475, -0.12903647, -0.12969820, -0.13035992, -0.13102165, -0.13168337, -0.13234510, -0.13300682, -0.13366855, -0.13433027, -0.13499200, -0.13565373, -0.13631545, -0.13697718, -0.13763890, -0.13830063, -0.13896235, -0.13962408, -0.14028580, -0.14094753, -0.14160925, -0.14227098, -0.14293271, -0.14359443, -0.14425616, -0.14491788, -0.14557961, -0.14624133, -0.14690306, -0.14756478, -0.14822651, -0.14888824, -0.14954996, -0.15021169, -0.15087341, -0.15153514, -0.15219686, -0.15285859, -0.15352031, -0.15418204, -0.15484376, -0.15550549, -0.15616722, -0.15682894, -0.15749067, -0.15815239, -0.15881412, -0.15947584, -0.16013757, -0.16079929, -0.16146102, -0.16212275, -0.16278447, -0.16344620, -0.16410792, -0.16476965, -0.16543137, -0.16609310, -0.16675482, -0.16741655, -0.16807827, -0.16874000, }; const float gavl_g_to_u_float[256] = { -0.00000000, -0.00129906, -0.00259812, -0.00389718, -0.00519624, -0.00649529, -0.00779435, -0.00909341, -0.01039247, -0.01169153, -0.01299059, -0.01428965, -0.01558871, -0.01688776, -0.01818682, -0.01948588, -0.02078494, -0.02208400, -0.02338306, -0.02468212, -0.02598118, -0.02728024, -0.02857929, -0.02987835, -0.03117741, -0.03247647, -0.03377553, -0.03507459, -0.03637365, -0.03767271, -0.03897176, -0.04027082, -0.04156988, -0.04286894, -0.04416800, -0.04546706, -0.04676612, -0.04806518, -0.04936424, -0.05066329, -0.05196235, -0.05326141, -0.05456047, -0.05585953, -0.05715859, -0.05845765, -0.05975671, -0.06105576, -0.06235482, -0.06365388, -0.06495294, -0.06625200, -0.06755106, -0.06885012, -0.07014918, -0.07144824, -0.07274729, -0.07404635, -0.07534541, -0.07664447, -0.07794353, -0.07924259, -0.08054165, -0.08184071, -0.08313976, -0.08443882, -0.08573788, -0.08703694, -0.08833600, -0.08963506, -0.09093412, -0.09223318, -0.09353224, -0.09483129, -0.09613035, -0.09742941, -0.09872847, -0.10002753, -0.10132659, -0.10262565, -0.10392471, -0.10522376, -0.10652282, -0.10782188, -0.10912094, -0.11042000, -0.11171906, -0.11301812, -0.11431718, -0.11561624, -0.11691529, -0.11821435, -0.11951341, -0.12081247, -0.12211153, -0.12341059, -0.12470965, -0.12600871, -0.12730776, -0.12860682, -0.12990588, -0.13120494, -0.13250400, -0.13380306, -0.13510212, -0.13640118, -0.13770024, -0.13899929, -0.14029835, -0.14159741, -0.14289647, -0.14419553, -0.14549459, -0.14679365, -0.14809271, -0.14939176, -0.15069082, -0.15198988, -0.15328894, -0.15458800, -0.15588706, -0.15718612, -0.15848518, -0.15978424, -0.16108329, -0.16238235, -0.16368141, -0.16498047, -0.16627953, -0.16757859, -0.16887765, -0.17017671, -0.17147576, -0.17277482, -0.17407388, -0.17537294, -0.17667200, -0.17797106, -0.17927012, -0.18056918, -0.18186824, -0.18316729, -0.18446635, -0.18576541, -0.18706447, -0.18836353, -0.18966259, -0.19096165, -0.19226071, -0.19355976, -0.19485882, -0.19615788, -0.19745694, -0.19875600, -0.20005506, -0.20135412, -0.20265318, -0.20395224, -0.20525129, -0.20655035, -0.20784941, -0.20914847, -0.21044753, -0.21174659, -0.21304565, -0.21434471, -0.21564376, -0.21694282, -0.21824188, -0.21954094, -0.22084000, -0.22213906, -0.22343812, -0.22473718, -0.22603624, -0.22733529, -0.22863435, -0.22993341, -0.23123247, -0.23253153, -0.23383059, -0.23512965, -0.23642871, -0.23772776, -0.23902682, -0.24032588, -0.24162494, -0.24292400, -0.24422306, -0.24552212, -0.24682118, -0.24812024, -0.24941929, -0.25071835, -0.25201741, -0.25331647, -0.25461553, -0.25591459, -0.25721365, -0.25851271, -0.25981176, -0.26111082, -0.26240988, -0.26370894, -0.26500800, -0.26630706, -0.26760612, -0.26890518, -0.27020424, -0.27150329, -0.27280235, -0.27410141, -0.27540047, -0.27669953, -0.27799859, -0.27929765, -0.28059671, -0.28189576, -0.28319482, -0.28449388, -0.28579294, -0.28709200, -0.28839106, -0.28969012, -0.29098918, -0.29228824, -0.29358729, -0.29488635, -0.29618541, -0.29748447, -0.29878353, -0.30008259, -0.30138165, -0.30268071, -0.30397976, -0.30527882, -0.30657788, -0.30787694, -0.30917600, -0.31047506, -0.31177412, -0.31307318, -0.31437224, -0.31567129, -0.31697035, -0.31826941, -0.31956847, -0.32086753, -0.32216659, -0.32346565, -0.32476471, -0.32606376, -0.32736282, -0.32866188, -0.32996094, -0.33126000, }; const float gavl_b_to_u_float[256] = { 0.00000000, 0.00196078, 0.00392157, 0.00588235, 0.00784314, 0.00980392, 0.01176471, 0.01372549, 0.01568627, 0.01764706, 0.01960784, 0.02156863, 0.02352941, 0.02549020, 0.02745098, 0.02941176, 0.03137255, 0.03333333, 0.03529412, 0.03725490, 0.03921569, 0.04117647, 0.04313725, 0.04509804, 0.04705882, 0.04901961, 0.05098039, 0.05294118, 0.05490196, 0.05686275, 0.05882353, 0.06078431, 0.06274510, 0.06470588, 0.06666667, 0.06862745, 0.07058824, 0.07254902, 0.07450980, 0.07647059, 0.07843137, 0.08039216, 0.08235294, 0.08431373, 0.08627451, 0.08823529, 0.09019608, 0.09215686, 0.09411765, 0.09607843, 0.09803922, 0.10000000, 0.10196078, 0.10392157, 0.10588235, 0.10784314, 0.10980392, 0.11176471, 0.11372549, 0.11568627, 0.11764706, 0.11960784, 0.12156863, 0.12352941, 0.12549020, 0.12745098, 0.12941176, 0.13137255, 0.13333333, 0.13529412, 0.13725490, 0.13921569, 0.14117647, 0.14313725, 0.14509804, 0.14705882, 0.14901961, 0.15098039, 0.15294118, 0.15490196, 0.15686275, 0.15882353, 0.16078431, 0.16274510, 0.16470588, 0.16666667, 0.16862745, 0.17058824, 0.17254902, 0.17450980, 0.17647059, 0.17843137, 0.18039216, 0.18235294, 0.18431373, 0.18627451, 0.18823529, 0.19019608, 0.19215686, 0.19411765, 0.19607843, 0.19803922, 0.20000000, 0.20196078, 0.20392157, 0.20588235, 0.20784314, 0.20980392, 0.21176471, 0.21372549, 0.21568627, 0.21764706, 0.21960784, 0.22156863, 0.22352941, 0.22549020, 0.22745098, 0.22941176, 0.23137255, 0.23333333, 0.23529412, 0.23725490, 0.23921569, 0.24117647, 0.24313725, 0.24509804, 0.24705882, 0.24901961, 0.25098039, 0.25294118, 0.25490196, 0.25686275, 0.25882353, 0.26078431, 0.26274510, 0.26470588, 0.26666667, 0.26862745, 0.27058824, 0.27254902, 0.27450980, 0.27647059, 0.27843137, 0.28039216, 0.28235294, 0.28431373, 0.28627451, 0.28823529, 0.29019608, 0.29215686, 0.29411765, 0.29607843, 0.29803922, 0.30000000, 0.30196078, 0.30392157, 0.30588235, 0.30784314, 0.30980392, 0.31176471, 0.31372549, 0.31568627, 0.31764706, 0.31960784, 0.32156863, 0.32352941, 0.32549020, 0.32745098, 0.32941176, 0.33137255, 0.33333333, 0.33529412, 0.33725490, 0.33921569, 0.34117647, 0.34313725, 0.34509804, 0.34705882, 0.34901961, 0.35098039, 0.35294118, 0.35490196, 0.35686275, 0.35882353, 0.36078431, 0.36274510, 0.36470588, 0.36666667, 0.36862745, 0.37058824, 0.37254902, 0.37450980, 0.37647059, 0.37843137, 0.38039216, 0.38235294, 0.38431373, 0.38627451, 0.38823529, 0.39019608, 0.39215686, 0.39411765, 0.39607843, 0.39803922, 0.40000000, 0.40196078, 0.40392157, 0.40588235, 0.40784314, 0.40980392, 0.41176471, 0.41372549, 0.41568627, 0.41764706, 0.41960784, 0.42156863, 0.42352941, 0.42549020, 0.42745098, 0.42941176, 0.43137255, 0.43333333, 0.43529412, 0.43725490, 0.43921569, 0.44117647, 0.44313725, 0.44509804, 0.44705882, 0.44901961, 0.45098039, 0.45294118, 0.45490196, 0.45686275, 0.45882353, 0.46078431, 0.46274510, 0.46470588, 0.46666667, 0.46862745, 0.47058824, 0.47254902, 0.47450980, 0.47647059, 0.47843137, 0.48039216, 0.48235294, 0.48431373, 0.48627451, 0.48823529, 0.49019608, 0.49215686, 0.49411765, 0.49607843, 0.49803922, 0.50000000, }; const float gavl_r_to_v_float[256] = { 0.00000000, 0.00196078, 0.00392157, 0.00588235, 0.00784314, 0.00980392, 0.01176471, 0.01372549, 0.01568627, 0.01764706, 0.01960784, 0.02156863, 0.02352941, 0.02549020, 0.02745098, 0.02941176, 0.03137255, 0.03333333, 0.03529412, 0.03725490, 0.03921569, 0.04117647, 0.04313725, 0.04509804, 0.04705882, 0.04901961, 0.05098039, 0.05294118, 0.05490196, 0.05686275, 0.05882353, 0.06078431, 0.06274510, 0.06470588, 0.06666667, 0.06862745, 0.07058824, 0.07254902, 0.07450980, 0.07647059, 0.07843137, 0.08039216, 0.08235294, 0.08431373, 0.08627451, 0.08823529, 0.09019608, 0.09215686, 0.09411765, 0.09607843, 0.09803922, 0.10000000, 0.10196078, 0.10392157, 0.10588235, 0.10784314, 0.10980392, 0.11176471, 0.11372549, 0.11568627, 0.11764706, 0.11960784, 0.12156863, 0.12352941, 0.12549020, 0.12745098, 0.12941176, 0.13137255, 0.13333333, 0.13529412, 0.13725490, 0.13921569, 0.14117647, 0.14313725, 0.14509804, 0.14705882, 0.14901961, 0.15098039, 0.15294118, 0.15490196, 0.15686275, 0.15882353, 0.16078431, 0.16274510, 0.16470588, 0.16666667, 0.16862745, 0.17058824, 0.17254902, 0.17450980, 0.17647059, 0.17843137, 0.18039216, 0.18235294, 0.18431373, 0.18627451, 0.18823529, 0.19019608, 0.19215686, 0.19411765, 0.19607843, 0.19803922, 0.20000000, 0.20196078, 0.20392157, 0.20588235, 0.20784314, 0.20980392, 0.21176471, 0.21372549, 0.21568627, 0.21764706, 0.21960784, 0.22156863, 0.22352941, 0.22549020, 0.22745098, 0.22941176, 0.23137255, 0.23333333, 0.23529412, 0.23725490, 0.23921569, 0.24117647, 0.24313725, 0.24509804, 0.24705882, 0.24901961, 0.25098039, 0.25294118, 0.25490196, 0.25686275, 0.25882353, 0.26078431, 0.26274510, 0.26470588, 0.26666667, 0.26862745, 0.27058824, 0.27254902, 0.27450980, 0.27647059, 0.27843137, 0.28039216, 0.28235294, 0.28431373, 0.28627451, 0.28823529, 0.29019608, 0.29215686, 0.29411765, 0.29607843, 0.29803922, 0.30000000, 0.30196078, 0.30392157, 0.30588235, 0.30784314, 0.30980392, 0.31176471, 0.31372549, 0.31568627, 0.31764706, 0.31960784, 0.32156863, 0.32352941, 0.32549020, 0.32745098, 0.32941176, 0.33137255, 0.33333333, 0.33529412, 0.33725490, 0.33921569, 0.34117647, 0.34313725, 0.34509804, 0.34705882, 0.34901961, 0.35098039, 0.35294118, 0.35490196, 0.35686275, 0.35882353, 0.36078431, 0.36274510, 0.36470588, 0.36666667, 0.36862745, 0.37058824, 0.37254902, 0.37450980, 0.37647059, 0.37843137, 0.38039216, 0.38235294, 0.38431373, 0.38627451, 0.38823529, 0.39019608, 0.39215686, 0.39411765, 0.39607843, 0.39803922, 0.40000000, 0.40196078, 0.40392157, 0.40588235, 0.40784314, 0.40980392, 0.41176471, 0.41372549, 0.41568627, 0.41764706, 0.41960784, 0.42156863, 0.42352941, 0.42549020, 0.42745098, 0.42941176, 0.43137255, 0.43333333, 0.43529412, 0.43725490, 0.43921569, 0.44117647, 0.44313725, 0.44509804, 0.44705882, 0.44901961, 0.45098039, 0.45294118, 0.45490196, 0.45686275, 0.45882353, 0.46078431, 0.46274510, 0.46470588, 0.46666667, 0.46862745, 0.47058824, 0.47254902, 0.47450980, 0.47647059, 0.47843137, 0.48039216, 0.48235294, 0.48431373, 0.48627451, 0.48823529, 0.49019608, 0.49215686, 0.49411765, 0.49607843, 0.49803922, 0.50000000, }; const float gavl_g_to_v_float[256] = { -0.00000000, -0.00164192, -0.00328384, -0.00492576, -0.00656769, -0.00820961, -0.00985153, -0.01149345, -0.01313537, -0.01477729, -0.01641922, -0.01806114, -0.01970306, -0.02134498, -0.02298690, -0.02462882, -0.02627075, -0.02791267, -0.02955459, -0.03119651, -0.03283843, -0.03448035, -0.03612227, -0.03776420, -0.03940612, -0.04104804, -0.04268996, -0.04433188, -0.04597380, -0.04761573, -0.04925765, -0.05089957, -0.05254149, -0.05418341, -0.05582533, -0.05746725, -0.05910918, -0.06075110, -0.06239302, -0.06403494, -0.06567686, -0.06731878, -0.06896071, -0.07060263, -0.07224455, -0.07388647, -0.07552839, -0.07717031, -0.07881224, -0.08045416, -0.08209608, -0.08373800, -0.08537992, -0.08702184, -0.08866376, -0.09030569, -0.09194761, -0.09358953, -0.09523145, -0.09687337, -0.09851529, -0.10015722, -0.10179914, -0.10344106, -0.10508298, -0.10672490, -0.10836682, -0.11000875, -0.11165067, -0.11329259, -0.11493451, -0.11657643, -0.11821835, -0.11986027, -0.12150220, -0.12314412, -0.12478604, -0.12642796, -0.12806988, -0.12971180, -0.13135373, -0.13299565, -0.13463757, -0.13627949, -0.13792141, -0.13956333, -0.14120525, -0.14284718, -0.14448910, -0.14613102, -0.14777294, -0.14941486, -0.15105678, -0.15269871, -0.15434063, -0.15598255, -0.15762447, -0.15926639, -0.16090831, -0.16255024, -0.16419216, -0.16583408, -0.16747600, -0.16911792, -0.17075984, -0.17240176, -0.17404369, -0.17568561, -0.17732753, -0.17896945, -0.18061137, -0.18225329, -0.18389522, -0.18553714, -0.18717906, -0.18882098, -0.19046290, -0.19210482, -0.19374675, -0.19538867, -0.19703059, -0.19867251, -0.20031443, -0.20195635, -0.20359827, -0.20524020, -0.20688212, -0.20852404, -0.21016596, -0.21180788, -0.21344980, -0.21509173, -0.21673365, -0.21837557, -0.22001749, -0.22165941, -0.22330133, -0.22494325, -0.22658518, -0.22822710, -0.22986902, -0.23151094, -0.23315286, -0.23479478, -0.23643671, -0.23807863, -0.23972055, -0.24136247, -0.24300439, -0.24464631, -0.24628824, -0.24793016, -0.24957208, -0.25121400, -0.25285592, -0.25449784, -0.25613976, -0.25778169, -0.25942361, -0.26106553, -0.26270745, -0.26434937, -0.26599129, -0.26763322, -0.26927514, -0.27091706, -0.27255898, -0.27420090, -0.27584282, -0.27748475, -0.27912667, -0.28076859, -0.28241051, -0.28405243, -0.28569435, -0.28733627, -0.28897820, -0.29062012, -0.29226204, -0.29390396, -0.29554588, -0.29718780, -0.29882973, -0.30047165, -0.30211357, -0.30375549, -0.30539741, -0.30703933, -0.30868125, -0.31032318, -0.31196510, -0.31360702, -0.31524894, -0.31689086, -0.31853278, -0.32017471, -0.32181663, -0.32345855, -0.32510047, -0.32674239, -0.32838431, -0.33002624, -0.33166816, -0.33331008, -0.33495200, -0.33659392, -0.33823584, -0.33987776, -0.34151969, -0.34316161, -0.34480353, -0.34644545, -0.34808737, -0.34972929, -0.35137122, -0.35301314, -0.35465506, -0.35629698, -0.35793890, -0.35958082, -0.36122275, -0.36286467, -0.36450659, -0.36614851, -0.36779043, -0.36943235, -0.37107427, -0.37271620, -0.37435812, -0.37600004, -0.37764196, -0.37928388, -0.38092580, -0.38256773, -0.38420965, -0.38585157, -0.38749349, -0.38913541, -0.39077733, -0.39241925, -0.39406118, -0.39570310, -0.39734502, -0.39898694, -0.40062886, -0.40227078, -0.40391271, -0.40555463, -0.40719655, -0.40883847, -0.41048039, -0.41212231, -0.41376424, -0.41540616, -0.41704808, -0.41869000, }; const float gavl_b_to_v_float[256] = { -0.00000000, -0.00031886, -0.00063773, -0.00095659, -0.00127545, -0.00159431, -0.00191318, -0.00223204, -0.00255090, -0.00286976, -0.00318863, -0.00350749, -0.00382635, -0.00414522, -0.00446408, -0.00478294, -0.00510180, -0.00542067, -0.00573953, -0.00605839, -0.00637725, -0.00669612, -0.00701498, -0.00733384, -0.00765271, -0.00797157, -0.00829043, -0.00860929, -0.00892816, -0.00924702, -0.00956588, -0.00988475, -0.01020361, -0.01052247, -0.01084133, -0.01116020, -0.01147906, -0.01179792, -0.01211678, -0.01243565, -0.01275451, -0.01307337, -0.01339224, -0.01371110, -0.01402996, -0.01434882, -0.01466769, -0.01498655, -0.01530541, -0.01562427, -0.01594314, -0.01626200, -0.01658086, -0.01689973, -0.01721859, -0.01753745, -0.01785631, -0.01817518, -0.01849404, -0.01881290, -0.01913176, -0.01945063, -0.01976949, -0.02008835, -0.02040722, -0.02072608, -0.02104494, -0.02136380, -0.02168267, -0.02200153, -0.02232039, -0.02263925, -0.02295812, -0.02327698, -0.02359584, -0.02391471, -0.02423357, -0.02455243, -0.02487129, -0.02519016, -0.02550902, -0.02582788, -0.02614675, -0.02646561, -0.02678447, -0.02710333, -0.02742220, -0.02774106, -0.02805992, -0.02837878, -0.02869765, -0.02901651, -0.02933537, -0.02965424, -0.02997310, -0.03029196, -0.03061082, -0.03092969, -0.03124855, -0.03156741, -0.03188627, -0.03220514, -0.03252400, -0.03284286, -0.03316173, -0.03348059, -0.03379945, -0.03411831, -0.03443718, -0.03475604, -0.03507490, -0.03539376, -0.03571263, -0.03603149, -0.03635035, -0.03666922, -0.03698808, -0.03730694, -0.03762580, -0.03794467, -0.03826353, -0.03858239, -0.03890125, -0.03922012, -0.03953898, -0.03985784, -0.04017671, -0.04049557, -0.04081443, -0.04113329, -0.04145216, -0.04177102, -0.04208988, -0.04240875, -0.04272761, -0.04304647, -0.04336533, -0.04368420, -0.04400306, -0.04432192, -0.04464078, -0.04495965, -0.04527851, -0.04559737, -0.04591624, -0.04623510, -0.04655396, -0.04687282, -0.04719169, -0.04751055, -0.04782941, -0.04814827, -0.04846714, -0.04878600, -0.04910486, -0.04942373, -0.04974259, -0.05006145, -0.05038031, -0.05069918, -0.05101804, -0.05133690, -0.05165576, -0.05197463, -0.05229349, -0.05261235, -0.05293122, -0.05325008, -0.05356894, -0.05388780, -0.05420667, -0.05452553, -0.05484439, -0.05516325, -0.05548212, -0.05580098, -0.05611984, -0.05643871, -0.05675757, -0.05707643, -0.05739529, -0.05771416, -0.05803302, -0.05835188, -0.05867075, -0.05898961, -0.05930847, -0.05962733, -0.05994620, -0.06026506, -0.06058392, -0.06090278, -0.06122165, -0.06154051, -0.06185937, -0.06217824, -0.06249710, -0.06281596, -0.06313482, -0.06345369, -0.06377255, -0.06409141, -0.06441027, -0.06472914, -0.06504800, -0.06536686, -0.06568573, -0.06600459, -0.06632345, -0.06664231, -0.06696118, -0.06728004, -0.06759890, -0.06791776, -0.06823663, -0.06855549, -0.06887435, -0.06919322, -0.06951208, -0.06983094, -0.07014980, -0.07046867, -0.07078753, -0.07110639, -0.07142525, -0.07174412, -0.07206298, -0.07238184, -0.07270071, -0.07301957, -0.07333843, -0.07365729, -0.07397616, -0.07429502, -0.07461388, -0.07493275, -0.07525161, -0.07557047, -0.07588933, -0.07620820, -0.07652706, -0.07684592, -0.07716478, -0.07748365, -0.07780251, -0.07812137, -0.07844024, -0.07875910, -0.07907796, -0.07939682, -0.07971569, -0.08003455, -0.08035341, -0.08067227, -0.08099114, -0.08131000, }; /* YUV -> RGB conversions */ const int gavl_y_to_rgb[256] = { -1220944, -1144635, -1068326, -992017, -915707, -839398, -763089, -686780, -610471, -534162, -457853, -381544, -305235, -228926, -152617, -76308, 0, 76309, 152618, 228927, 305236, 381545, 457854, 534163, 610472, 686781, 763090, 839399, 915708, 992018, 1068327, 1144636, 1220945, 1297254, 1373563, 1449872, 1526181, 1602490, 1678799, 1755108, 1831417, 1907726, 1984035, 2060344, 2136653, 2212962, 2289271, 2365580, 2441889, 2518198, 2594507, 2670816, 2747125, 2823435, 2899744, 2976053, 3052362, 3128671, 3204980, 3281289, 3357598, 3433907, 3510216, 3586525, 3662834, 3739143, 3815452, 3891761, 3968070, 4044379, 4120688, 4196997, 4273306, 4349615, 4425924, 4502233, 4578542, 4654852, 4731161, 4807470, 4883779, 4960088, 5036397, 5112706, 5189015, 5265324, 5341633, 5417942, 5494251, 5570560, 5646869, 5723178, 5799487, 5875796, 5952105, 6028414, 6104723, 6181032, 6257341, 6333650, 6409959, 6486268, 6562578, 6638887, 6715196, 6791505, 6867814, 6944123, 7020432, 7096741, 7173050, 7249359, 7325668, 7401977, 7478286, 7554595, 7630904, 7707213, 7783522, 7859831, 7936140, 8012449, 8088758, 8165067, 8241376, 8317685, 8393995, 8470304, 8546613, 8622922, 8699231, 8775540, 8851849, 8928158, 9004467, 9080776, 9157085, 9233394, 9309703, 9386012, 9462321, 9538630, 9614939, 9691248, 9767557, 9843866, 9920175, 9996484, 10072793, 10149102, 10225412, 10301721, 10378030, 10454339, 10530648, 10606957, 10683266, 10759575, 10835884, 10912193, 10988502, 11064811, 11141120, 11217429, 11293738, 11370047, 11446356, 11522665, 11598974, 11675283, 11751592, 11827901, 11904210, 11980519, 12056828, 12133138, 12209447, 12285756, 12362065, 12438374, 12514683, 12590992, 12667301, 12743610, 12819919, 12896228, 12972537, 13048846, 13125155, 13201464, 13277773, 13354082, 13430391, 13506700, 13583009, 13659318, 13735627, 13811936, 13888245, 13964555, 14040864, 14117173, 14193482, 14269791, 14346100, 14422409, 14498718, 14575027, 14651336, 14727645, 14803954, 14880263, 14956572, 15032881, 15109190, 15185499, 15261808, 15338117, 15414426, 15490735, 15567044, 15643353, 15719662, 15795972, 15872281, 15948590, 16024899, 16101208, 16177517, 16253826, 16330135, 16406444, 16482753, 16559062, 16635371, 16711680, 16787989, 16864298, 16940607, 17016916, 17093225, 17169534, 17245843, 17322152, 17398461, 17474770, 17551079, 17627388, 17703698, 17780007, 17856316, 17932625, 18008934, 18085243, 18161552, 18237861, }; const int gavl_v_to_r[256] = { -13388442, -13283845, -13179248, -13074650, -12970053, -12865456, -12760859, -12656262, -12551664, -12447067, -12342470, -12237873, -12133276, -12028678, -11924081, -11819484, -11714887, -11610289, -11505692, -11401095, -11296498, -11191901, -11087303, -10982706, -10878109, -10773512, -10668915, -10564317, -10459720, -10355123, -10250526, -10145929, -10041331, -9936734, -9832137, -9727540, -9622942, -9518345, -9413748, -9309151, -9204554, -9099956, -8995359, -8890762, -8786165, -8681568, -8576970, -8472373, -8367776, -8263179, -8158581, -8053984, -7949387, -7844790, -7740193, -7635595, -7530998, -7426401, -7321804, -7217207, -7112609, -7008012, -6903415, -6798818, -6694221, -6589623, -6485026, -6380429, -6275832, -6171234, -6066637, -5962040, -5857443, -5752846, -5648248, -5543651, -5439054, -5334457, -5229860, -5125262, -5020665, -4916068, -4811471, -4706874, -4602276, -4497679, -4393082, -4288485, -4183887, -4079290, -3974693, -3870096, -3765499, -3660901, -3556304, -3451707, -3347110, -3242513, -3137915, -3033318, -2928721, -2824124, -2719526, -2614929, -2510332, -2405735, -2301138, -2196540, -2091943, -1987346, -1882749, -1778152, -1673554, -1568957, -1464360, -1359763, -1255166, -1150568, -1045971, -941374, -836777, -732179, -627582, -522985, -418388, -313791, -209193, -104596, 0, 104597, 209194, 313792, 418389, 522986, 627583, 732180, 836778, 941375, 1045972, 1150569, 1255167, 1359764, 1464361, 1568958, 1673555, 1778153, 1882750, 1987347, 2091944, 2196541, 2301139, 2405736, 2510333, 2614930, 2719527, 2824125, 2928722, 3033319, 3137916, 3242514, 3347111, 3451708, 3556305, 3660902, 3765500, 3870097, 3974694, 4079291, 4183888, 4288486, 4393083, 4497680, 4602277, 4706875, 4811472, 4916069, 5020666, 5125263, 5229861, 5334458, 5439055, 5543652, 5648249, 5752847, 5857444, 5962041, 6066638, 6171235, 6275833, 6380430, 6485027, 6589624, 6694222, 6798819, 6903416, 7008013, 7112610, 7217208, 7321805, 7426402, 7530999, 7635596, 7740194, 7844791, 7949388, 8053985, 8158582, 8263180, 8367777, 8472374, 8576971, 8681569, 8786166, 8890763, 8995360, 9099957, 9204555, 9309152, 9413749, 9518346, 9622943, 9727541, 9832138, 9936735, 10041332, 10145930, 10250527, 10355124, 10459721, 10564318, 10668916, 10773513, 10878110, 10982707, 11087304, 11191902, 11296499, 11401096, 11505693, 11610290, 11714888, 11819485, 11924082, 12028679, 12133277, 12237874, 12342471, 12447068, 12551665, 12656263, 12760860, 12865457, 12970054, 13074651, 13179249, 13283846, }; const int gavl_u_to_g[256] = { 3286376, 3260701, 3235026, 3209351, 3183677, 3158002, 3132327, 3106652, 3080977, 3055302, 3029628, 3003953, 2978278, 2952603, 2926928, 2901254, 2875579, 2849904, 2824229, 2798554, 2772880, 2747205, 2721530, 2695855, 2670180, 2644505, 2618831, 2593156, 2567481, 2541806, 2516131, 2490457, 2464782, 2439107, 2413432, 2387757, 2362083, 2336408, 2310733, 2285058, 2259383, 2233709, 2208034, 2182359, 2156684, 2131009, 2105334, 2079660, 2053985, 2028310, 2002635, 1976960, 1951286, 1925611, 1899936, 1874261, 1848586, 1822912, 1797237, 1771562, 1745887, 1720212, 1694537, 1668863, 1643188, 1617513, 1591838, 1566163, 1540489, 1514814, 1489139, 1463464, 1437789, 1412115, 1386440, 1360765, 1335090, 1309415, 1283741, 1258066, 1232391, 1206716, 1181041, 1155366, 1129692, 1104017, 1078342, 1052667, 1026992, 1001318, 975643, 949968, 924293, 898618, 872944, 847269, 821594, 795919, 770244, 744570, 718895, 693220, 667545, 641870, 616195, 590521, 564846, 539171, 513496, 487821, 462147, 436472, 410797, 385122, 359447, 333773, 308098, 282423, 256748, 231073, 205398, 179724, 154049, 128374, 102699, 77024, 51350, 25675, 0, -25674, -51349, -77023, -102698, -128373, -154048, -179723, -205397, -231072, -256747, -282422, -308097, -333772, -359446, -385121, -410796, -436471, -462146, -487820, -513495, -539170, -564845, -590520, -616194, -641869, -667544, -693219, -718894, -744569, -770243, -795918, -821593, -847268, -872943, -898617, -924292, -949967, -975642, -1001317, -1026991, -1052666, -1078341, -1104016, -1129691, -1155365, -1181040, -1206715, -1232390, -1258065, -1283740, -1309414, -1335089, -1360764, -1386439, -1412114, -1437788, -1463463, -1489138, -1514813, -1540488, -1566162, -1591837, -1617512, -1643187, -1668862, -1694536, -1720211, -1745886, -1771561, -1797236, -1822911, -1848585, -1874260, -1899935, -1925610, -1951285, -1976959, -2002634, -2028309, -2053984, -2079659, -2105333, -2131008, -2156683, -2182358, -2208033, -2233708, -2259382, -2285057, -2310732, -2336407, -2362082, -2387756, -2413431, -2439106, -2464781, -2490456, -2516130, -2541805, -2567480, -2593155, -2618830, -2644504, -2670179, -2695854, -2721529, -2747204, -2772879, -2798553, -2824228, -2849903, -2875578, -2901253, -2926927, -2952602, -2978277, -3003952, -3029627, -3055301, -3080976, -3106651, -3132326, -3158001, -3183676, -3209350, -3235025, -3260700, }; const int gavl_v_to_g[256] = { 6819702, 6766423, 6713145, 6659866, 6606587, 6553308, 6500029, 6446750, 6393471, 6340192, 6286913, 6233634, 6180355, 6127076, 6073797, 6020519, 5967240, 5913961, 5860682, 5807403, 5754124, 5700845, 5647566, 5594287, 5541008, 5487729, 5434450, 5381171, 5327892, 5274614, 5221335, 5168056, 5114777, 5061498, 5008219, 4954940, 4901661, 4848382, 4795103, 4741824, 4688545, 4635266, 4581988, 4528709, 4475430, 4422151, 4368872, 4315593, 4262314, 4209035, 4155756, 4102477, 4049198, 3995919, 3942640, 3889362, 3836083, 3782804, 3729525, 3676246, 3622967, 3569688, 3516409, 3463130, 3409851, 3356572, 3303293, 3250014, 3196735, 3143457, 3090178, 3036899, 2983620, 2930341, 2877062, 2823783, 2770504, 2717225, 2663946, 2610667, 2557388, 2504109, 2450831, 2397552, 2344273, 2290994, 2237715, 2184436, 2131157, 2077878, 2024599, 1971320, 1918041, 1864762, 1811483, 1758205, 1704926, 1651647, 1598368, 1545089, 1491810, 1438531, 1385252, 1331973, 1278694, 1225415, 1172136, 1118857, 1065578, 1012300, 959021, 905742, 852463, 799184, 745905, 692626, 639347, 586068, 532789, 479510, 426231, 372952, 319674, 266395, 213116, 159837, 106558, 53279, 0, -53278, -106557, -159836, -213115, -266394, -319673, -372951, -426230, -479509, -532788, -586067, -639346, -692625, -745904, -799183, -852462, -905741, -959020, -1012299, -1065577, -1118856, -1172135, -1225414, -1278693, -1331972, -1385251, -1438530, -1491809, -1545088, -1598367, -1651646, -1704925, -1758204, -1811482, -1864761, -1918040, -1971319, -2024598, -2077877, -2131156, -2184435, -2237714, -2290993, -2344272, -2397551, -2450830, -2504108, -2557387, -2610666, -2663945, -2717224, -2770503, -2823782, -2877061, -2930340, -2983619, -3036898, -3090177, -3143456, -3196734, -3250013, -3303292, -3356571, -3409850, -3463129, -3516408, -3569687, -3622966, -3676245, -3729524, -3782803, -3836082, -3889361, -3942639, -3995918, -4049197, -4102476, -4155755, -4209034, -4262313, -4315592, -4368871, -4422150, -4475429, -4528708, -4581987, -4635265, -4688544, -4741823, -4795102, -4848381, -4901660, -4954939, -5008218, -5061497, -5114776, -5168055, -5221334, -5274613, -5327891, -5381170, -5434449, -5487728, -5541007, -5594286, -5647565, -5700844, -5754123, -5807402, -5860681, -5913960, -5967239, -6020518, -6073796, -6127075, -6180354, -6233633, -6286912, -6340191, -6393470, -6446749, -6500028, -6553307, -6606586, -6659865, -6713144, -6766422, }; const int gavl_u_to_b[256] = { -16921769, -16789567, -16657366, -16525165, -16392963, -16260762, -16128561, -15996359, -15864158, -15731957, -15599755, -15467554, -15335353, -15203151, -15070950, -14938749, -14806547, -14674346, -14542145, -14409944, -14277742, -14145541, -14013340, -13881138, -13748937, -13616736, -13484534, -13352333, -13220132, -13087930, -12955729, -12823528, -12691326, -12559125, -12426924, -12294722, -12162521, -12030320, -11898118, -11765917, -11633716, -11501514, -11369313, -11237112, -11104910, -10972709, -10840508, -10708306, -10576105, -10443904, -10311702, -10179501, -10047300, -9915098, -9782897, -9650696, -9518494, -9386293, -9254092, -9121890, -8989689, -8857488, -8725286, -8593085, -8460884, -8328683, -8196481, -8064280, -7932079, -7799877, -7667676, -7535475, -7403273, -7271072, -7138871, -7006669, -6874468, -6742267, -6610065, -6477864, -6345663, -6213461, -6081260, -5949059, -5816857, -5684656, -5552455, -5420253, -5288052, -5155851, -5023649, -4891448, -4759247, -4627045, -4494844, -4362643, -4230441, -4098240, -3966039, -3833837, -3701636, -3569435, -3437233, -3305032, -3172831, -3040629, -2908428, -2776227, -2644026, -2511824, -2379623, -2247422, -2115220, -1983019, -1850818, -1718616, -1586415, -1454214, -1322012, -1189811, -1057610, -925408, -793207, -661006, -528804, -396603, -264402, -132200, 0, 132201, 264403, 396604, 528805, 661007, 793208, 925409, 1057611, 1189812, 1322013, 1454215, 1586416, 1718617, 1850819, 1983020, 2115221, 2247423, 2379624, 2511825, 2644027, 2776228, 2908429, 3040630, 3172832, 3305033, 3437234, 3569436, 3701637, 3833838, 3966040, 4098241, 4230442, 4362644, 4494845, 4627046, 4759248, 4891449, 5023650, 5155852, 5288053, 5420254, 5552456, 5684657, 5816858, 5949060, 6081261, 6213462, 6345664, 6477865, 6610066, 6742268, 6874469, 7006670, 7138872, 7271073, 7403274, 7535476, 7667677, 7799878, 7932080, 8064281, 8196482, 8328684, 8460885, 8593086, 8725287, 8857489, 8989690, 9121891, 9254093, 9386294, 9518495, 9650697, 9782898, 9915099, 10047301, 10179502, 10311703, 10443905, 10576106, 10708307, 10840509, 10972710, 11104911, 11237113, 11369314, 11501515, 11633717, 11765918, 11898119, 12030321, 12162522, 12294723, 12426925, 12559126, 12691327, 12823529, 12955730, 13087931, 13220133, 13352334, 13484535, 13616737, 13748938, 13881139, 14013341, 14145542, 14277743, 14409945, 14542146, 14674347, 14806548, 14938750, 15070951, 15203152, 15335354, 15467555, 15599756, 15731958, 15864159, 15996360, 16128562, 16260763, 16392964, 16525166, 16657367, 16789568, }; const int gavl_yj_to_rgb[256] = { 0, 65536, 131072, 196608, 262144, 327680, 393216, 458752, 524288, 589824, 655360, 720896, 786432, 851968, 917504, 983040, 1048576, 1114112, 1179648, 1245184, 1310720, 1376256, 1441792, 1507328, 1572864, 1638400, 1703936, 1769472, 1835008, 1900544, 1966080, 2031616, 2097152, 2162688, 2228224, 2293760, 2359296, 2424832, 2490368, 2555904, 2621440, 2686976, 2752512, 2818048, 2883584, 2949120, 3014656, 3080192, 3145728, 3211264, 3276800, 3342336, 3407872, 3473408, 3538944, 3604480, 3670016, 3735552, 3801088, 3866624, 3932160, 3997696, 4063232, 4128768, 4194304, 4259840, 4325376, 4390912, 4456448, 4521984, 4587520, 4653056, 4718592, 4784128, 4849664, 4915200, 4980736, 5046272, 5111808, 5177344, 5242880, 5308416, 5373952, 5439488, 5505024, 5570560, 5636096, 5701632, 5767168, 5832704, 5898240, 5963776, 6029312, 6094848, 6160384, 6225920, 6291456, 6356992, 6422528, 6488064, 6553600, 6619136, 6684672, 6750208, 6815744, 6881280, 6946816, 7012352, 7077888, 7143424, 7208960, 7274496, 7340032, 7405568, 7471104, 7536640, 7602176, 7667712, 7733248, 7798784, 7864320, 7929856, 7995392, 8060928, 8126464, 8192000, 8257536, 8323072, 8388608, 8454144, 8519680, 8585216, 8650752, 8716288, 8781824, 8847360, 8912896, 8978432, 9043968, 9109504, 9175040, 9240576, 9306112, 9371648, 9437184, 9502720, 9568256, 9633792, 9699328, 9764864, 9830400, 9895936, 9961472, 10027008, 10092544, 10158080, 10223616, 10289152, 10354688, 10420224, 10485760, 10551296, 10616832, 10682368, 10747904, 10813440, 10878976, 10944512, 11010048, 11075584, 11141120, 11206656, 11272192, 11337728, 11403264, 11468800, 11534336, 11599872, 11665408, 11730944, 11796480, 11862016, 11927552, 11993088, 12058624, 12124160, 12189696, 12255232, 12320768, 12386304, 12451840, 12517376, 12582912, 12648448, 12713984, 12779520, 12845056, 12910592, 12976128, 13041664, 13107200, 13172736, 13238272, 13303808, 13369344, 13434880, 13500416, 13565952, 13631488, 13697024, 13762560, 13828096, 13893632, 13959168, 14024704, 14090240, 14155776, 14221312, 14286848, 14352384, 14417920, 14483456, 14548992, 14614528, 14680064, 14745600, 14811136, 14876672, 14942208, 15007744, 15073280, 15138816, 15204352, 15269888, 15335424, 15400960, 15466496, 15532032, 15597568, 15663104, 15728640, 15794176, 15859712, 15925248, 15990784, 16056320, 16121856, 16187392, 16252928, 16318464, 16384000, 16449536, 16515072, 16580608, 16646144, 16711680, }; const int gavl_vj_to_r[256] = { -11760827, -11668946, -11577064, -11485183, -11393302, -11301420, -11209539, -11117657, -11025776, -10933894, -10842013, -10750131, -10658250, -10566368, -10474487, -10382605, -10290724, -10198842, -10106961, -10015079, -9923198, -9831317, -9739435, -9647554, -9555672, -9463791, -9371909, -9280028, -9188146, -9096265, -9004383, -8912502, -8820620, -8728739, -8636857, -8544976, -8453094, -8361213, -8269331, -8177450, -8085569, -7993687, -7901806, -7809924, -7718043, -7626161, -7534280, -7442398, -7350517, -7258635, -7166754, -7074872, -6982991, -6891109, -6799228, -6707346, -6615465, -6523584, -6431702, -6339821, -6247939, -6156058, -6064176, -5972295, -5880413, -5788532, -5696650, -5604769, -5512887, -5421006, -5329124, -5237243, -5145361, -5053480, -4961598, -4869717, -4777836, -4685954, -4594073, -4502191, -4410310, -4318428, -4226547, -4134665, -4042784, -3950902, -3859021, -3767139, -3675258, -3583376, -3491495, -3399613, -3307732, -3215851, -3123969, -3032088, -2940206, -2848325, -2756443, -2664562, -2572680, -2480799, -2388917, -2297036, -2205154, -2113273, -2021391, -1929510, -1837628, -1745747, -1653865, -1561984, -1470103, -1378221, -1286340, -1194458, -1102577, -1010695, -918814, -826932, -735051, -643169, -551288, -459406, -367525, -275643, -183762, -91880, 0, 91881, 183763, 275644, 367526, 459407, 551289, 643170, 735052, 826933, 918815, 1010696, 1102578, 1194459, 1286341, 1378222, 1470104, 1561985, 1653866, 1745748, 1837629, 1929511, 2021392, 2113274, 2205155, 2297037, 2388918, 2480800, 2572681, 2664563, 2756444, 2848326, 2940207, 3032089, 3123970, 3215852, 3307733, 3399614, 3491496, 3583377, 3675259, 3767140, 3859022, 3950903, 4042785, 4134666, 4226548, 4318429, 4410311, 4502192, 4594074, 4685955, 4777837, 4869718, 4961599, 5053481, 5145362, 5237244, 5329125, 5421007, 5512888, 5604770, 5696651, 5788533, 5880414, 5972296, 6064177, 6156059, 6247940, 6339822, 6431703, 6523585, 6615466, 6707347, 6799229, 6891110, 6982992, 7074873, 7166755, 7258636, 7350518, 7442399, 7534281, 7626162, 7718044, 7809925, 7901807, 7993688, 8085570, 8177451, 8269332, 8361214, 8453095, 8544977, 8636858, 8728740, 8820621, 8912503, 9004384, 9096266, 9188147, 9280029, 9371910, 9463792, 9555673, 9647555, 9739436, 9831318, 9923199, 10015080, 10106962, 10198843, 10290725, 10382606, 10474488, 10566369, 10658251, 10750132, 10842014, 10933895, 11025777, 11117658, 11209540, 11301421, 11393303, 11485184, 11577065, 11668947, }; const int gavl_uj_to_g[256] = { 2886856, 2864302, 2841748, 2819195, 2796641, 2774088, 2751534, 2728981, 2706427, 2683874, 2661320, 2638766, 2616213, 2593659, 2571106, 2548552, 2525999, 2503445, 2480891, 2458338, 2435784, 2413231, 2390677, 2368124, 2345570, 2323017, 2300463, 2277909, 2255356, 2232802, 2210249, 2187695, 2165142, 2142588, 2120035, 2097481, 2074927, 2052374, 2029820, 2007267, 1984713, 1962160, 1939606, 1917053, 1894499, 1871945, 1849392, 1826838, 1804285, 1781731, 1759178, 1736624, 1714070, 1691517, 1668963, 1646410, 1623856, 1601303, 1578749, 1556196, 1533642, 1511088, 1488535, 1465981, 1443428, 1420874, 1398321, 1375767, 1353214, 1330660, 1308106, 1285553, 1262999, 1240446, 1217892, 1195339, 1172785, 1150232, 1127678, 1105124, 1082571, 1060017, 1037464, 1014910, 992357, 969803, 947249, 924696, 902142, 879589, 857035, 834482, 811928, 789375, 766821, 744267, 721714, 699160, 676607, 654053, 631500, 608946, 586393, 563839, 541285, 518732, 496178, 473625, 451071, 428518, 405964, 383411, 360857, 338303, 315750, 293196, 270643, 248089, 225536, 202982, 180428, 157875, 135321, 112768, 90214, 67661, 45107, 22554, 0, -22553, -45106, -67660, -90213, -112767, -135320, -157874, -180427, -202981, -225535, -248088, -270642, -293195, -315749, -338302, -360856, -383410, -405963, -428517, -451070, -473624, -496177, -518731, -541284, -563838, -586392, -608945, -631499, -654052, -676606, -699159, -721713, -744266, -766820, -789374, -811927, -834481, -857034, -879588, -902141, -924695, -947248, -969802, -992356, -1014909, -1037463, -1060016, -1082570, -1105123, -1127677, -1150231, -1172784, -1195338, -1217891, -1240445, -1262998, -1285552, -1308105, -1330659, -1353213, -1375766, -1398320, -1420873, -1443427, -1465980, -1488534, -1511087, -1533641, -1556195, -1578748, -1601302, -1623855, -1646409, -1668962, -1691516, -1714069, -1736623, -1759177, -1781730, -1804284, -1826837, -1849391, -1871944, -1894498, -1917052, -1939605, -1962159, -1984712, -2007266, -2029819, -2052373, -2074926, -2097480, -2120034, -2142587, -2165141, -2187694, -2210248, -2232801, -2255355, -2277908, -2300462, -2323016, -2345569, -2368123, -2390676, -2413230, -2435783, -2458337, -2480890, -2503444, -2525998, -2548551, -2571105, -2593658, -2616212, -2638765, -2661319, -2683873, -2706426, -2728980, -2751533, -2774087, -2796640, -2819194, -2841747, -2864301, }; const int gavl_vj_to_g[256] = { 5990641, 5943839, 5897037, 5850235, 5803433, 5756631, 5709829, 5663027, 5616225, 5569424, 5522622, 5475820, 5429018, 5382216, 5335414, 5288612, 5241810, 5195009, 5148207, 5101405, 5054603, 5007801, 4960999, 4914197, 4867395, 4820594, 4773792, 4726990, 4680188, 4633386, 4586584, 4539782, 4492980, 4446179, 4399377, 4352575, 4305773, 4258971, 4212169, 4165367, 4118565, 4071763, 4024962, 3978160, 3931358, 3884556, 3837754, 3790952, 3744150, 3697348, 3650547, 3603745, 3556943, 3510141, 3463339, 3416537, 3369735, 3322933, 3276132, 3229330, 3182528, 3135726, 3088924, 3042122, 2995320, 2948518, 2901717, 2854915, 2808113, 2761311, 2714509, 2667707, 2620905, 2574103, 2527301, 2480500, 2433698, 2386896, 2340094, 2293292, 2246490, 2199688, 2152886, 2106085, 2059283, 2012481, 1965679, 1918877, 1872075, 1825273, 1778471, 1731670, 1684868, 1638066, 1591264, 1544462, 1497660, 1450858, 1404056, 1357254, 1310453, 1263651, 1216849, 1170047, 1123245, 1076443, 1029641, 982839, 936038, 889236, 842434, 795632, 748830, 702028, 655226, 608424, 561623, 514821, 468019, 421217, 374415, 327613, 280811, 234009, 187208, 140406, 93604, 46802, 0, -46801, -93603, -140405, -187207, -234008, -280810, -327612, -374414, -421216, -468018, -514820, -561622, -608423, -655225, -702027, -748829, -795631, -842433, -889235, -936037, -982838, -1029640, -1076442, -1123244, -1170046, -1216848, -1263650, -1310452, -1357253, -1404055, -1450857, -1497659, -1544461, -1591263, -1638065, -1684867, -1731669, -1778470, -1825272, -1872074, -1918876, -1965678, -2012480, -2059282, -2106084, -2152885, -2199687, -2246489, -2293291, -2340093, -2386895, -2433697, -2480499, -2527300, -2574102, -2620904, -2667706, -2714508, -2761310, -2808112, -2854914, -2901716, -2948517, -2995319, -3042121, -3088923, -3135725, -3182527, -3229329, -3276131, -3322932, -3369734, -3416536, -3463338, -3510140, -3556942, -3603744, -3650546, -3697347, -3744149, -3790951, -3837753, -3884555, -3931357, -3978159, -4024961, -4071762, -4118564, -4165366, -4212168, -4258970, -4305772, -4352574, -4399376, -4446178, -4492979, -4539781, -4586583, -4633385, -4680187, -4726989, -4773791, -4820593, -4867394, -4914196, -4960998, -5007800, -5054602, -5101404, -5148206, -5195008, -5241809, -5288611, -5335413, -5382215, -5429017, -5475819, -5522621, -5569423, -5616224, -5663026, -5709828, -5756630, -5803432, -5850234, -5897036, -5943838, }; const int gavl_uj_to_b[256] = { -14864612, -14748483, -14632353, -14516223, -14400093, -14283963, -14167834, -14051704, -13935574, -13819444, -13703314, -13587185, -13471055, -13354925, -13238795, -13122665, -13006536, -12890406, -12774276, -12658146, -12542017, -12425887, -12309757, -12193627, -12077497, -11961368, -11845238, -11729108, -11612978, -11496848, -11380719, -11264589, -11148459, -11032329, -10916199, -10800070, -10683940, -10567810, -10451680, -10335550, -10219421, -10103291, -9987161, -9871031, -9754902, -9638772, -9522642, -9406512, -9290382, -9174253, -9058123, -8941993, -8825863, -8709733, -8593604, -8477474, -8361344, -8245214, -8129084, -8012955, -7896825, -7780695, -7664565, -7548435, -7432306, -7316176, -7200046, -7083916, -6967787, -6851657, -6735527, -6619397, -6503267, -6387138, -6271008, -6154878, -6038748, -5922618, -5806489, -5690359, -5574229, -5458099, -5341969, -5225840, -5109710, -4993580, -4877450, -4761320, -4645191, -4529061, -4412931, -4296801, -4180672, -4064542, -3948412, -3832282, -3716152, -3600023, -3483893, -3367763, -3251633, -3135503, -3019374, -2903244, -2787114, -2670984, -2554854, -2438725, -2322595, -2206465, -2090335, -1974205, -1858076, -1741946, -1625816, -1509686, -1393557, -1277427, -1161297, -1045167, -929037, -812908, -696778, -580648, -464518, -348388, -232259, -116129, 0, 116130, 232260, 348389, 464519, 580649, 696779, 812909, 929038, 1045168, 1161298, 1277428, 1393558, 1509687, 1625817, 1741947, 1858077, 1974206, 2090336, 2206466, 2322596, 2438726, 2554855, 2670985, 2787115, 2903245, 3019375, 3135504, 3251634, 3367764, 3483894, 3600024, 3716153, 3832283, 3948413, 4064543, 4180673, 4296802, 4412932, 4529062, 4645192, 4761321, 4877451, 4993581, 5109711, 5225841, 5341970, 5458100, 5574230, 5690360, 5806490, 5922619, 6038749, 6154879, 6271009, 6387139, 6503268, 6619398, 6735528, 6851658, 6967788, 7083917, 7200047, 7316177, 7432307, 7548436, 7664566, 7780696, 7896826, 8012956, 8129085, 8245215, 8361345, 8477475, 8593605, 8709734, 8825864, 8941994, 9058124, 9174254, 9290383, 9406513, 9522643, 9638773, 9754903, 9871032, 9987162, 10103292, 10219422, 10335551, 10451681, 10567811, 10683941, 10800071, 10916200, 11032330, 11148460, 11264590, 11380720, 11496849, 11612979, 11729109, 11845239, 11961369, 12077498, 12193628, 12309758, 12425888, 12542018, 12658147, 12774277, 12890407, 13006537, 13122666, 13238796, 13354926, 13471056, 13587186, 13703315, 13819445, 13935575, 14051705, 14167835, 14283964, 14400094, 14516224, 14632354, 14748484, }; const float gavl_y_to_rgb_float[256] = { -0.073059, -0.068493, -0.063927, -0.059361, -0.054795, -0.050228, -0.045662, -0.041096, -0.036530, -0.031963, -0.027397, -0.022831, -0.018265, -0.013699, -0.009132, -0.004566, 0.000000, 0.004566, 0.009132, 0.013699, 0.018265, 0.022831, 0.027397, 0.031963, 0.036530, 0.041096, 0.045662, 0.050228, 0.054795, 0.059361, 0.063927, 0.068493, 0.073059, 0.077626, 0.082192, 0.086758, 0.091324, 0.095890, 0.100457, 0.105023, 0.109589, 0.114155, 0.118721, 0.123288, 0.127854, 0.132420, 0.136986, 0.141553, 0.146119, 0.150685, 0.155251, 0.159817, 0.164384, 0.168950, 0.173516, 0.178082, 0.182648, 0.187215, 0.191781, 0.196347, 0.200913, 0.205479, 0.210046, 0.214612, 0.219178, 0.223744, 0.228311, 0.232877, 0.237443, 0.242009, 0.246575, 0.251142, 0.255708, 0.260274, 0.264840, 0.269406, 0.273973, 0.278539, 0.283105, 0.287671, 0.292237, 0.296804, 0.301370, 0.305936, 0.310502, 0.315068, 0.319635, 0.324201, 0.328767, 0.333333, 0.337900, 0.342466, 0.347032, 0.351598, 0.356164, 0.360731, 0.365297, 0.369863, 0.374429, 0.378995, 0.383562, 0.388128, 0.392694, 0.397260, 0.401826, 0.406393, 0.410959, 0.415525, 0.420091, 0.424658, 0.429224, 0.433790, 0.438356, 0.442922, 0.447489, 0.452055, 0.456621, 0.461187, 0.465753, 0.470320, 0.474886, 0.479452, 0.484018, 0.488584, 0.493151, 0.497717, 0.502283, 0.506849, 0.511416, 0.515982, 0.520548, 0.525114, 0.529680, 0.534247, 0.538813, 0.543379, 0.547945, 0.552511, 0.557078, 0.561644, 0.566210, 0.570776, 0.575342, 0.579909, 0.584475, 0.589041, 0.593607, 0.598174, 0.602740, 0.607306, 0.611872, 0.616438, 0.621005, 0.625571, 0.630137, 0.634703, 0.639269, 0.643836, 0.648402, 0.652968, 0.657534, 0.662100, 0.666667, 0.671233, 0.675799, 0.680365, 0.684932, 0.689498, 0.694064, 0.698630, 0.703196, 0.707763, 0.712329, 0.716895, 0.721461, 0.726027, 0.730594, 0.735160, 0.739726, 0.744292, 0.748858, 0.753425, 0.757991, 0.762557, 0.767123, 0.771689, 0.776256, 0.780822, 0.785388, 0.789954, 0.794521, 0.799087, 0.803653, 0.808219, 0.812785, 0.817352, 0.821918, 0.826484, 0.831050, 0.835616, 0.840183, 0.844749, 0.849315, 0.853881, 0.858447, 0.863014, 0.867580, 0.872146, 0.876712, 0.881279, 0.885845, 0.890411, 0.894977, 0.899543, 0.904110, 0.908676, 0.913242, 0.917808, 0.922374, 0.926941, 0.931507, 0.936073, 0.940639, 0.945205, 0.949772, 0.954338, 0.958904, 0.963470, 0.968037, 0.972603, 0.977169, 0.981735, 0.986301, 0.990868, 0.995434, 1.000000, 1.004566, 1.009132, 1.013699, 1.018265, 1.022831, 1.027397, 1.031963, 1.036530, 1.041096, 1.045662, 1.050228, 1.054795, 1.059361, 1.063927, 1.068493, 1.073059, 1.077626, 1.082192, 1.086758, 1.091324, }; const float gavl_v_to_r_float[256] = { -0.801143, -0.794884, -0.788625, -0.782366, -0.776107, -0.769848, -0.763589, -0.757330, -0.751071, -0.744812, -0.738554, -0.732295, -0.726036, -0.719777, -0.713518, -0.707259, -0.701000, -0.694741, -0.688482, -0.682223, -0.675964, -0.669705, -0.663446, -0.657187, -0.650929, -0.644670, -0.638411, -0.632152, -0.625893, -0.619634, -0.613375, -0.607116, -0.600857, -0.594598, -0.588339, -0.582080, -0.575821, -0.569562, -0.563304, -0.557045, -0.550786, -0.544527, -0.538268, -0.532009, -0.525750, -0.519491, -0.513232, -0.506973, -0.500714, -0.494455, -0.488196, -0.481937, -0.475679, -0.469420, -0.463161, -0.456902, -0.450643, -0.444384, -0.438125, -0.431866, -0.425607, -0.419348, -0.413089, -0.406830, -0.400571, -0.394312, -0.388054, -0.381795, -0.375536, -0.369277, -0.363018, -0.356759, -0.350500, -0.344241, -0.337982, -0.331723, -0.325464, -0.319205, -0.312946, -0.306687, -0.300429, -0.294170, -0.287911, -0.281652, -0.275393, -0.269134, -0.262875, -0.256616, -0.250357, -0.244098, -0.237839, -0.231580, -0.225321, -0.219062, -0.212804, -0.206545, -0.200286, -0.194027, -0.187768, -0.181509, -0.175250, -0.168991, -0.162732, -0.156473, -0.150214, -0.143955, -0.137696, -0.131437, -0.125179, -0.118920, -0.112661, -0.106402, -0.100143, -0.093884, -0.087625, -0.081366, -0.075107, -0.068848, -0.062589, -0.056330, -0.050071, -0.043812, -0.037554, -0.031295, -0.025036, -0.018777, -0.012518, -0.006259, 0.000000, 0.006259, 0.012518, 0.018777, 0.025036, 0.031295, 0.037554, 0.043812, 0.050071, 0.056330, 0.062589, 0.068848, 0.075107, 0.081366, 0.087625, 0.093884, 0.100143, 0.106402, 0.112661, 0.118920, 0.125179, 0.131437, 0.137696, 0.143955, 0.150214, 0.156473, 0.162732, 0.168991, 0.175250, 0.181509, 0.187768, 0.194027, 0.200286, 0.206545, 0.212804, 0.219062, 0.225321, 0.231580, 0.237839, 0.244098, 0.250357, 0.256616, 0.262875, 0.269134, 0.275393, 0.281652, 0.287911, 0.294170, 0.300429, 0.306687, 0.312946, 0.319205, 0.325464, 0.331723, 0.337982, 0.344241, 0.350500, 0.356759, 0.363018, 0.369277, 0.375536, 0.381795, 0.388054, 0.394312, 0.400571, 0.406830, 0.413089, 0.419348, 0.425607, 0.431866, 0.438125, 0.444384, 0.450643, 0.456902, 0.463161, 0.469420, 0.475679, 0.481937, 0.488196, 0.494455, 0.500714, 0.506973, 0.513232, 0.519491, 0.525750, 0.532009, 0.538268, 0.544527, 0.550786, 0.557045, 0.563304, 0.569562, 0.575821, 0.582080, 0.588339, 0.594598, 0.600857, 0.607116, 0.613375, 0.619634, 0.625893, 0.632152, 0.638411, 0.644670, 0.650929, 0.657187, 0.663446, 0.669705, 0.675964, 0.682223, 0.688482, 0.694741, 0.701000, 0.707259, 0.713518, 0.719777, 0.726036, 0.732295, 0.738554, 0.744812, 0.751071, 0.757330, 0.763589, 0.769848, 0.776107, 0.782366, 0.788625, 0.794884, }; const float gavl_u_to_g_float[256] = { 0.196651, 0.195115, 0.193579, 0.192042, 0.190506, 0.188970, 0.187433, 0.185897, 0.184361, 0.182824, 0.181288, 0.179752, 0.178215, 0.176679, 0.175143, 0.173606, 0.172070, 0.170534, 0.168997, 0.167461, 0.165925, 0.164388, 0.162852, 0.161316, 0.159779, 0.158243, 0.156707, 0.155170, 0.153634, 0.152098, 0.150561, 0.149025, 0.147489, 0.145952, 0.144416, 0.142880, 0.141343, 0.139807, 0.138271, 0.136734, 0.135198, 0.133662, 0.132125, 0.130589, 0.129052, 0.127516, 0.125980, 0.124443, 0.122907, 0.121371, 0.119834, 0.118298, 0.116762, 0.115225, 0.113689, 0.112153, 0.110616, 0.109080, 0.107544, 0.106007, 0.104471, 0.102935, 0.101398, 0.099862, 0.098326, 0.096789, 0.095253, 0.093717, 0.092180, 0.090644, 0.089108, 0.087571, 0.086035, 0.084499, 0.082962, 0.081426, 0.079890, 0.078353, 0.076817, 0.075281, 0.073744, 0.072208, 0.070672, 0.069135, 0.067599, 0.066063, 0.064526, 0.062990, 0.061454, 0.059917, 0.058381, 0.056845, 0.055308, 0.053772, 0.052236, 0.050699, 0.049163, 0.047627, 0.046090, 0.044554, 0.043018, 0.041481, 0.039945, 0.038408, 0.036872, 0.035336, 0.033799, 0.032263, 0.030727, 0.029190, 0.027654, 0.026118, 0.024581, 0.023045, 0.021509, 0.019972, 0.018436, 0.016900, 0.015363, 0.013827, 0.012291, 0.010754, 0.009218, 0.007682, 0.006145, 0.004609, 0.003073, 0.001536, -0.000000, -0.001536, -0.003073, -0.004609, -0.006145, -0.007682, -0.009218, -0.010754, -0.012291, -0.013827, -0.015363, -0.016900, -0.018436, -0.019972, -0.021509, -0.023045, -0.024581, -0.026118, -0.027654, -0.029190, -0.030727, -0.032263, -0.033799, -0.035336, -0.036872, -0.038408, -0.039945, -0.041481, -0.043018, -0.044554, -0.046090, -0.047627, -0.049163, -0.050699, -0.052236, -0.053772, -0.055308, -0.056845, -0.058381, -0.059917, -0.061454, -0.062990, -0.064526, -0.066063, -0.067599, -0.069135, -0.070672, -0.072208, -0.073744, -0.075281, -0.076817, -0.078353, -0.079890, -0.081426, -0.082962, -0.084499, -0.086035, -0.087571, -0.089108, -0.090644, -0.092180, -0.093717, -0.095253, -0.096789, -0.098326, -0.099862, -0.101398, -0.102935, -0.104471, -0.106007, -0.107544, -0.109080, -0.110616, -0.112153, -0.113689, -0.115225, -0.116762, -0.118298, -0.119834, -0.121371, -0.122907, -0.124443, -0.125980, -0.127516, -0.129052, -0.130589, -0.132125, -0.133662, -0.135198, -0.136734, -0.138271, -0.139807, -0.141343, -0.142880, -0.144416, -0.145952, -0.147489, -0.149025, -0.150561, -0.152098, -0.153634, -0.155170, -0.156707, -0.158243, -0.159779, -0.161316, -0.162852, -0.164388, -0.165925, -0.167461, -0.168997, -0.170534, -0.172070, -0.173606, -0.175143, -0.176679, -0.178215, -0.179752, -0.181288, -0.182824, -0.184361, -0.185897, -0.187433, -0.188970, -0.190506, -0.192042, -0.193579, -0.195115, }; const float gavl_v_to_g_float[256] = { 0.408080, 0.404892, 0.401704, 0.398516, 0.395327, 0.392139, 0.388951, 0.385763, 0.382575, 0.379387, 0.376199, 0.373011, 0.369822, 0.366634, 0.363446, 0.360258, 0.357070, 0.353882, 0.350694, 0.347506, 0.344317, 0.341129, 0.337941, 0.334753, 0.331565, 0.328377, 0.325189, 0.322001, 0.318812, 0.315624, 0.312436, 0.309248, 0.306060, 0.302872, 0.299684, 0.296496, 0.293307, 0.290119, 0.286931, 0.283743, 0.280555, 0.277367, 0.274179, 0.270991, 0.267802, 0.264614, 0.261426, 0.258238, 0.255050, 0.251862, 0.248674, 0.245486, 0.242297, 0.239109, 0.235921, 0.232733, 0.229545, 0.226357, 0.223169, 0.219981, 0.216792, 0.213604, 0.210416, 0.207228, 0.204040, 0.200852, 0.197664, 0.194476, 0.191287, 0.188099, 0.184911, 0.181723, 0.178535, 0.175347, 0.172159, 0.168971, 0.165782, 0.162594, 0.159406, 0.156218, 0.153030, 0.149842, 0.146654, 0.143466, 0.140277, 0.137089, 0.133901, 0.130713, 0.127525, 0.124337, 0.121149, 0.117961, 0.114772, 0.111584, 0.108396, 0.105208, 0.102020, 0.098832, 0.095644, 0.092456, 0.089267, 0.086079, 0.082891, 0.079703, 0.076515, 0.073327, 0.070139, 0.066951, 0.063762, 0.060574, 0.057386, 0.054198, 0.051010, 0.047822, 0.044634, 0.041446, 0.038257, 0.035069, 0.031881, 0.028693, 0.025505, 0.022317, 0.019129, 0.015941, 0.012752, 0.009564, 0.006376, 0.003188, -0.000000, -0.003188, -0.006376, -0.009564, -0.012752, -0.015941, -0.019129, -0.022317, -0.025505, -0.028693, -0.031881, -0.035069, -0.038257, -0.041446, -0.044634, -0.047822, -0.051010, -0.054198, -0.057386, -0.060574, -0.063762, -0.066951, -0.070139, -0.073327, -0.076515, -0.079703, -0.082891, -0.086079, -0.089267, -0.092456, -0.095644, -0.098832, -0.102020, -0.105208, -0.108396, -0.111584, -0.114772, -0.117961, -0.121149, -0.124337, -0.127525, -0.130713, -0.133901, -0.137089, -0.140277, -0.143466, -0.146654, -0.149842, -0.153030, -0.156218, -0.159406, -0.162594, -0.165782, -0.168971, -0.172159, -0.175347, -0.178535, -0.181723, -0.184911, -0.188099, -0.191287, -0.194476, -0.197664, -0.200852, -0.204040, -0.207228, -0.210416, -0.213604, -0.216792, -0.219981, -0.223169, -0.226357, -0.229545, -0.232733, -0.235921, -0.239109, -0.242297, -0.245486, -0.248674, -0.251862, -0.255050, -0.258238, -0.261426, -0.264614, -0.267802, -0.270991, -0.274179, -0.277367, -0.280555, -0.283743, -0.286931, -0.290119, -0.293307, -0.296496, -0.299684, -0.302872, -0.306060, -0.309248, -0.312436, -0.315624, -0.318812, -0.322001, -0.325189, -0.328377, -0.331565, -0.334753, -0.337941, -0.341129, -0.344317, -0.347506, -0.350694, -0.353882, -0.357070, -0.360258, -0.363446, -0.366634, -0.369822, -0.373011, -0.376199, -0.379387, -0.382575, -0.385763, -0.388951, -0.392139, -0.395327, -0.398516, -0.401704, -0.404892, }; const float gavl_u_to_b_float[256] = { -1.012571, -1.004661, -0.996750, -0.988839, -0.980929, -0.973018, -0.965107, -0.957196, -0.949286, -0.941375, -0.933464, -0.925554, -0.917643, -0.909732, -0.901821, -0.893911, -0.886000, -0.878089, -0.870179, -0.862268, -0.854357, -0.846446, -0.838536, -0.830625, -0.822714, -0.814804, -0.806893, -0.798982, -0.791071, -0.783161, -0.775250, -0.767339, -0.759429, -0.751518, -0.743607, -0.735696, -0.727786, -0.719875, -0.711964, -0.704054, -0.696143, -0.688232, -0.680321, -0.672411, -0.664500, -0.656589, -0.648679, -0.640768, -0.632857, -0.624946, -0.617036, -0.609125, -0.601214, -0.593304, -0.585393, -0.577482, -0.569571, -0.561661, -0.553750, -0.545839, -0.537929, -0.530018, -0.522107, -0.514196, -0.506286, -0.498375, -0.490464, -0.482554, -0.474643, -0.466732, -0.458821, -0.450911, -0.443000, -0.435089, -0.427179, -0.419268, -0.411357, -0.403446, -0.395536, -0.387625, -0.379714, -0.371804, -0.363893, -0.355982, -0.348071, -0.340161, -0.332250, -0.324339, -0.316429, -0.308518, -0.300607, -0.292696, -0.284786, -0.276875, -0.268964, -0.261054, -0.253143, -0.245232, -0.237321, -0.229411, -0.221500, -0.213589, -0.205679, -0.197768, -0.189857, -0.181946, -0.174036, -0.166125, -0.158214, -0.150304, -0.142393, -0.134482, -0.126571, -0.118661, -0.110750, -0.102839, -0.094929, -0.087018, -0.079107, -0.071196, -0.063286, -0.055375, -0.047464, -0.039554, -0.031643, -0.023732, -0.015821, -0.007911, 0.000000, 0.007911, 0.015821, 0.023732, 0.031643, 0.039554, 0.047464, 0.055375, 0.063286, 0.071196, 0.079107, 0.087018, 0.094929, 0.102839, 0.110750, 0.118661, 0.126571, 0.134482, 0.142393, 0.150304, 0.158214, 0.166125, 0.174036, 0.181946, 0.189857, 0.197768, 0.205679, 0.213589, 0.221500, 0.229411, 0.237321, 0.245232, 0.253143, 0.261054, 0.268964, 0.276875, 0.284786, 0.292696, 0.300607, 0.308518, 0.316429, 0.324339, 0.332250, 0.340161, 0.348071, 0.355982, 0.363893, 0.371804, 0.379714, 0.387625, 0.395536, 0.403446, 0.411357, 0.419268, 0.427179, 0.435089, 0.443000, 0.450911, 0.458821, 0.466732, 0.474643, 0.482554, 0.490464, 0.498375, 0.506286, 0.514196, 0.522107, 0.530018, 0.537929, 0.545839, 0.553750, 0.561661, 0.569571, 0.577482, 0.585393, 0.593304, 0.601214, 0.609125, 0.617036, 0.624946, 0.632857, 0.640768, 0.648679, 0.656589, 0.664500, 0.672411, 0.680321, 0.688232, 0.696143, 0.704054, 0.711964, 0.719875, 0.727786, 0.735696, 0.743607, 0.751518, 0.759429, 0.767339, 0.775250, 0.783161, 0.791071, 0.798982, 0.806893, 0.814804, 0.822714, 0.830625, 0.838536, 0.846446, 0.854357, 0.862268, 0.870179, 0.878089, 0.886000, 0.893911, 0.901821, 0.909732, 0.917643, 0.925554, 0.933464, 0.941375, 0.949286, 0.957196, 0.965107, 0.973018, 0.980929, 0.988839, 0.996750, 1.004661, }; const float gavl_yj_to_rgb_float[256] = { 0.000000, 0.003922, 0.007843, 0.011765, 0.015686, 0.019608, 0.023529, 0.027451, 0.031373, 0.035294, 0.039216, 0.043137, 0.047059, 0.050980, 0.054902, 0.058824, 0.062745, 0.066667, 0.070588, 0.074510, 0.078431, 0.082353, 0.086275, 0.090196, 0.094118, 0.098039, 0.101961, 0.105882, 0.109804, 0.113725, 0.117647, 0.121569, 0.125490, 0.129412, 0.133333, 0.137255, 0.141176, 0.145098, 0.149020, 0.152941, 0.156863, 0.160784, 0.164706, 0.168627, 0.172549, 0.176471, 0.180392, 0.184314, 0.188235, 0.192157, 0.196078, 0.200000, 0.203922, 0.207843, 0.211765, 0.215686, 0.219608, 0.223529, 0.227451, 0.231373, 0.235294, 0.239216, 0.243137, 0.247059, 0.250980, 0.254902, 0.258824, 0.262745, 0.266667, 0.270588, 0.274510, 0.278431, 0.282353, 0.286275, 0.290196, 0.294118, 0.298039, 0.301961, 0.305882, 0.309804, 0.313725, 0.317647, 0.321569, 0.325490, 0.329412, 0.333333, 0.337255, 0.341176, 0.345098, 0.349020, 0.352941, 0.356863, 0.360784, 0.364706, 0.368627, 0.372549, 0.376471, 0.380392, 0.384314, 0.388235, 0.392157, 0.396078, 0.400000, 0.403922, 0.407843, 0.411765, 0.415686, 0.419608, 0.423529, 0.427451, 0.431373, 0.435294, 0.439216, 0.443137, 0.447059, 0.450980, 0.454902, 0.458824, 0.462745, 0.466667, 0.470588, 0.474510, 0.478431, 0.482353, 0.486275, 0.490196, 0.494118, 0.498039, 0.501961, 0.505882, 0.509804, 0.513725, 0.517647, 0.521569, 0.525490, 0.529412, 0.533333, 0.537255, 0.541176, 0.545098, 0.549020, 0.552941, 0.556863, 0.560784, 0.564706, 0.568627, 0.572549, 0.576471, 0.580392, 0.584314, 0.588235, 0.592157, 0.596078, 0.600000, 0.603922, 0.607843, 0.611765, 0.615686, 0.619608, 0.623529, 0.627451, 0.631373, 0.635294, 0.639216, 0.643137, 0.647059, 0.650980, 0.654902, 0.658824, 0.662745, 0.666667, 0.670588, 0.674510, 0.678431, 0.682353, 0.686275, 0.690196, 0.694118, 0.698039, 0.701961, 0.705882, 0.709804, 0.713725, 0.717647, 0.721569, 0.725490, 0.729412, 0.733333, 0.737255, 0.741176, 0.745098, 0.749020, 0.752941, 0.756863, 0.760784, 0.764706, 0.768627, 0.772549, 0.776471, 0.780392, 0.784314, 0.788235, 0.792157, 0.796078, 0.800000, 0.803922, 0.807843, 0.811765, 0.815686, 0.819608, 0.823529, 0.827451, 0.831373, 0.835294, 0.839216, 0.843137, 0.847059, 0.850980, 0.854902, 0.858824, 0.862745, 0.866667, 0.870588, 0.874510, 0.878431, 0.882353, 0.886275, 0.890196, 0.894118, 0.898039, 0.901961, 0.905882, 0.909804, 0.913725, 0.917647, 0.921569, 0.925490, 0.929412, 0.933333, 0.937255, 0.941176, 0.945098, 0.949020, 0.952941, 0.956863, 0.960784, 0.964706, 0.968627, 0.972549, 0.976471, 0.980392, 0.984314, 0.988235, 0.992157, 0.996078, 1.000000, }; const float gavl_vj_to_r_float[256] = { -0.703749, -0.698251, -0.692753, -0.687255, -0.681757, -0.676259, -0.670761, -0.665263, -0.659765, -0.654267, -0.648769, -0.643271, -0.637773, -0.632275, -0.626776, -0.621278, -0.615780, -0.610282, -0.604784, -0.599286, -0.593788, -0.588290, -0.582792, -0.577294, -0.571796, -0.566298, -0.560800, -0.555302, -0.549804, -0.544306, -0.538808, -0.533310, -0.527812, -0.522314, -0.516816, -0.511318, -0.505820, -0.500322, -0.494824, -0.489325, -0.483827, -0.478329, -0.472831, -0.467333, -0.461835, -0.456337, -0.450839, -0.445341, -0.439843, -0.434345, -0.428847, -0.423349, -0.417851, -0.412353, -0.406855, -0.401357, -0.395859, -0.390361, -0.384863, -0.379365, -0.373867, -0.368369, -0.362871, -0.357373, -0.351875, -0.346376, -0.340878, -0.335380, -0.329882, -0.324384, -0.318886, -0.313388, -0.307890, -0.302392, -0.296894, -0.291396, -0.285898, -0.280400, -0.274902, -0.269404, -0.263906, -0.258408, -0.252910, -0.247412, -0.241914, -0.236416, -0.230918, -0.225420, -0.219922, -0.214424, -0.208925, -0.203427, -0.197929, -0.192431, -0.186933, -0.181435, -0.175937, -0.170439, -0.164941, -0.159443, -0.153945, -0.148447, -0.142949, -0.137451, -0.131953, -0.126455, -0.120957, -0.115459, -0.109961, -0.104463, -0.098965, -0.093467, -0.087969, -0.082471, -0.076973, -0.071475, -0.065976, -0.060478, -0.054980, -0.049482, -0.043984, -0.038486, -0.032988, -0.027490, -0.021992, -0.016494, -0.010996, -0.005498, 0.000000, 0.005498, 0.010996, 0.016494, 0.021992, 0.027490, 0.032988, 0.038486, 0.043984, 0.049482, 0.054980, 0.060478, 0.065976, 0.071475, 0.076973, 0.082471, 0.087969, 0.093467, 0.098965, 0.104463, 0.109961, 0.115459, 0.120957, 0.126455, 0.131953, 0.137451, 0.142949, 0.148447, 0.153945, 0.159443, 0.164941, 0.170439, 0.175937, 0.181435, 0.186933, 0.192431, 0.197929, 0.203427, 0.208925, 0.214424, 0.219922, 0.225420, 0.230918, 0.236416, 0.241914, 0.247412, 0.252910, 0.258408, 0.263906, 0.269404, 0.274902, 0.280400, 0.285898, 0.291396, 0.296894, 0.302392, 0.307890, 0.313388, 0.318886, 0.324384, 0.329882, 0.335380, 0.340878, 0.346376, 0.351875, 0.357373, 0.362871, 0.368369, 0.373867, 0.379365, 0.384863, 0.390361, 0.395859, 0.401357, 0.406855, 0.412353, 0.417851, 0.423349, 0.428847, 0.434345, 0.439843, 0.445341, 0.450839, 0.456337, 0.461835, 0.467333, 0.472831, 0.478329, 0.483827, 0.489325, 0.494824, 0.500322, 0.505820, 0.511318, 0.516816, 0.522314, 0.527812, 0.533310, 0.538808, 0.544306, 0.549804, 0.555302, 0.560800, 0.566298, 0.571796, 0.577294, 0.582792, 0.588290, 0.593788, 0.599286, 0.604784, 0.610282, 0.615780, 0.621278, 0.626776, 0.632275, 0.637773, 0.643271, 0.648769, 0.654267, 0.659765, 0.665263, 0.670761, 0.676259, 0.681757, 0.687255, 0.692753, 0.698251, }; const float gavl_uj_to_g_float[256] = { 0.172745, 0.171395, 0.170046, 0.168696, 0.167347, 0.165997, 0.164647, 0.163298, 0.161948, 0.160599, 0.159249, 0.157900, 0.156550, 0.155200, 0.153851, 0.152501, 0.151152, 0.149802, 0.148453, 0.147103, 0.145753, 0.144404, 0.143054, 0.141705, 0.140355, 0.139006, 0.137656, 0.136306, 0.134957, 0.133607, 0.132258, 0.130908, 0.129559, 0.128209, 0.126859, 0.125510, 0.124160, 0.122811, 0.121461, 0.120112, 0.118762, 0.117412, 0.116063, 0.114713, 0.113364, 0.112014, 0.110665, 0.109315, 0.107965, 0.106616, 0.105266, 0.103917, 0.102567, 0.101218, 0.099868, 0.098519, 0.097169, 0.095819, 0.094470, 0.093120, 0.091771, 0.090421, 0.089072, 0.087722, 0.086372, 0.085023, 0.083673, 0.082324, 0.080974, 0.079625, 0.078275, 0.076925, 0.075576, 0.074226, 0.072877, 0.071527, 0.070178, 0.068828, 0.067478, 0.066129, 0.064779, 0.063430, 0.062080, 0.060731, 0.059381, 0.058031, 0.056682, 0.055332, 0.053983, 0.052633, 0.051284, 0.049934, 0.048584, 0.047235, 0.045885, 0.044536, 0.043186, 0.041837, 0.040487, 0.039137, 0.037788, 0.036438, 0.035089, 0.033739, 0.032390, 0.031040, 0.029691, 0.028341, 0.026991, 0.025642, 0.024292, 0.022943, 0.021593, 0.020244, 0.018894, 0.017544, 0.016195, 0.014845, 0.013496, 0.012146, 0.010797, 0.009447, 0.008097, 0.006748, 0.005398, 0.004049, 0.002699, 0.001350, -0.000000, -0.001350, -0.002699, -0.004049, -0.005398, -0.006748, -0.008097, -0.009447, -0.010797, -0.012146, -0.013496, -0.014845, -0.016195, -0.017544, -0.018894, -0.020244, -0.021593, -0.022943, -0.024292, -0.025642, -0.026991, -0.028341, -0.029691, -0.031040, -0.032390, -0.033739, -0.035089, -0.036438, -0.037788, -0.039137, -0.040487, -0.041837, -0.043186, -0.044536, -0.045885, -0.047235, -0.048584, -0.049934, -0.051284, -0.052633, -0.053983, -0.055332, -0.056682, -0.058031, -0.059381, -0.060731, -0.062080, -0.063430, -0.064779, -0.066129, -0.067478, -0.068828, -0.070178, -0.071527, -0.072877, -0.074226, -0.075576, -0.076925, -0.078275, -0.079625, -0.080974, -0.082324, -0.083673, -0.085023, -0.086372, -0.087722, -0.089072, -0.090421, -0.091771, -0.093120, -0.094470, -0.095819, -0.097169, -0.098519, -0.099868, -0.101218, -0.102567, -0.103917, -0.105266, -0.106616, -0.107965, -0.109315, -0.110665, -0.112014, -0.113364, -0.114713, -0.116063, -0.117412, -0.118762, -0.120112, -0.121461, -0.122811, -0.124160, -0.125510, -0.126859, -0.128209, -0.129559, -0.130908, -0.132258, -0.133607, -0.134957, -0.136306, -0.137656, -0.139006, -0.140355, -0.141705, -0.143054, -0.144404, -0.145753, -0.147103, -0.148453, -0.149802, -0.151152, -0.152501, -0.153851, -0.155200, -0.156550, -0.157900, -0.159249, -0.160599, -0.161948, -0.163298, -0.164647, -0.165997, -0.167347, -0.168696, -0.170046, -0.171395, }; const float gavl_vj_to_g_float[256] = { 0.358470, 0.355670, 0.352869, 0.350069, 0.347268, 0.344468, 0.341667, 0.338866, 0.336066, 0.333265, 0.330465, 0.327664, 0.324864, 0.322063, 0.319263, 0.316462, 0.313661, 0.310861, 0.308060, 0.305260, 0.302459, 0.299659, 0.296858, 0.294058, 0.291257, 0.288457, 0.285656, 0.282855, 0.280055, 0.277254, 0.274454, 0.271653, 0.268853, 0.266052, 0.263252, 0.260451, 0.257651, 0.254850, 0.252049, 0.249249, 0.246448, 0.243648, 0.240847, 0.238047, 0.235246, 0.232446, 0.229645, 0.226844, 0.224044, 0.221243, 0.218443, 0.215642, 0.212842, 0.210041, 0.207241, 0.204440, 0.201640, 0.198839, 0.196038, 0.193238, 0.190437, 0.187637, 0.184836, 0.182036, 0.179235, 0.176435, 0.173634, 0.170833, 0.168033, 0.165232, 0.162432, 0.159631, 0.156831, 0.154030, 0.151230, 0.148429, 0.145629, 0.142828, 0.140027, 0.137227, 0.134426, 0.131626, 0.128825, 0.126025, 0.123224, 0.120424, 0.117623, 0.114823, 0.112022, 0.109221, 0.106421, 0.103620, 0.100820, 0.098019, 0.095219, 0.092418, 0.089618, 0.086817, 0.084016, 0.081216, 0.078415, 0.075615, 0.072814, 0.070014, 0.067213, 0.064413, 0.061612, 0.058812, 0.056011, 0.053210, 0.050410, 0.047609, 0.044809, 0.042008, 0.039208, 0.036407, 0.033607, 0.030806, 0.028005, 0.025205, 0.022404, 0.019604, 0.016803, 0.014003, 0.011202, 0.008402, 0.005601, 0.002801, -0.000000, -0.002801, -0.005601, -0.008402, -0.011202, -0.014003, -0.016803, -0.019604, -0.022404, -0.025205, -0.028005, -0.030806, -0.033607, -0.036407, -0.039208, -0.042008, -0.044809, -0.047609, -0.050410, -0.053210, -0.056011, -0.058812, -0.061612, -0.064413, -0.067213, -0.070014, -0.072814, -0.075615, -0.078415, -0.081216, -0.084016, -0.086817, -0.089618, -0.092418, -0.095219, -0.098019, -0.100820, -0.103620, -0.106421, -0.109221, -0.112022, -0.114823, -0.117623, -0.120424, -0.123224, -0.126025, -0.128825, -0.131626, -0.134426, -0.137227, -0.140027, -0.142828, -0.145629, -0.148429, -0.151230, -0.154030, -0.156831, -0.159631, -0.162432, -0.165232, -0.168033, -0.170833, -0.173634, -0.176435, -0.179235, -0.182036, -0.184836, -0.187637, -0.190437, -0.193238, -0.196038, -0.198839, -0.201640, -0.204440, -0.207241, -0.210041, -0.212842, -0.215642, -0.218443, -0.221243, -0.224044, -0.226844, -0.229645, -0.232446, -0.235246, -0.238047, -0.240847, -0.243648, -0.246448, -0.249249, -0.252049, -0.254850, -0.257651, -0.260451, -0.263252, -0.266052, -0.268853, -0.271653, -0.274454, -0.277254, -0.280055, -0.282855, -0.285656, -0.288457, -0.291257, -0.294058, -0.296858, -0.299659, -0.302459, -0.305260, -0.308060, -0.310861, -0.313661, -0.316462, -0.319263, -0.322063, -0.324864, -0.327664, -0.330465, -0.333265, -0.336066, -0.338866, -0.341667, -0.344468, -0.347268, -0.350069, -0.352869, -0.355670, }; const float gavl_uj_to_b_float[256] = { -0.889475, -0.882525, -0.875576, -0.868627, -0.861678, -0.854729, -0.847780, -0.840831, -0.833882, -0.826933, -0.819984, -0.813035, -0.806086, -0.799137, -0.792188, -0.785239, -0.778290, -0.771341, -0.764392, -0.757443, -0.750494, -0.743545, -0.736596, -0.729647, -0.722698, -0.715749, -0.708800, -0.701851, -0.694902, -0.687953, -0.681004, -0.674055, -0.667106, -0.660157, -0.653208, -0.646259, -0.639310, -0.632361, -0.625412, -0.618463, -0.611514, -0.604565, -0.597616, -0.590667, -0.583718, -0.576769, -0.569820, -0.562871, -0.555922, -0.548973, -0.542024, -0.535075, -0.528125, -0.521176, -0.514227, -0.507278, -0.500329, -0.493380, -0.486431, -0.479482, -0.472533, -0.465584, -0.458635, -0.451686, -0.444737, -0.437788, -0.430839, -0.423890, -0.416941, -0.409992, -0.403043, -0.396094, -0.389145, -0.382196, -0.375247, -0.368298, -0.361349, -0.354400, -0.347451, -0.340502, -0.333553, -0.326604, -0.319655, -0.312706, -0.305757, -0.298808, -0.291859, -0.284910, -0.277961, -0.271012, -0.264063, -0.257114, -0.250165, -0.243216, -0.236267, -0.229318, -0.222369, -0.215420, -0.208471, -0.201522, -0.194573, -0.187624, -0.180675, -0.173725, -0.166776, -0.159827, -0.152878, -0.145929, -0.138980, -0.132031, -0.125082, -0.118133, -0.111184, -0.104235, -0.097286, -0.090337, -0.083388, -0.076439, -0.069490, -0.062541, -0.055592, -0.048643, -0.041694, -0.034745, -0.027796, -0.020847, -0.013898, -0.006949, 0.000000, 0.006949, 0.013898, 0.020847, 0.027796, 0.034745, 0.041694, 0.048643, 0.055592, 0.062541, 0.069490, 0.076439, 0.083388, 0.090337, 0.097286, 0.104235, 0.111184, 0.118133, 0.125082, 0.132031, 0.138980, 0.145929, 0.152878, 0.159827, 0.166776, 0.173725, 0.180675, 0.187624, 0.194573, 0.201522, 0.208471, 0.215420, 0.222369, 0.229318, 0.236267, 0.243216, 0.250165, 0.257114, 0.264063, 0.271012, 0.277961, 0.284910, 0.291859, 0.298808, 0.305757, 0.312706, 0.319655, 0.326604, 0.333553, 0.340502, 0.347451, 0.354400, 0.361349, 0.368298, 0.375247, 0.382196, 0.389145, 0.396094, 0.403043, 0.409992, 0.416941, 0.423890, 0.430839, 0.437788, 0.444737, 0.451686, 0.458635, 0.465584, 0.472533, 0.479482, 0.486431, 0.493380, 0.500329, 0.507278, 0.514227, 0.521176, 0.528125, 0.535075, 0.542024, 0.548973, 0.555922, 0.562871, 0.569820, 0.576769, 0.583718, 0.590667, 0.597616, 0.604565, 0.611514, 0.618463, 0.625412, 0.632361, 0.639310, 0.646259, 0.653208, 0.660157, 0.667106, 0.674055, 0.681004, 0.687953, 0.694902, 0.701851, 0.708800, 0.715749, 0.722698, 0.729647, 0.736596, 0.743545, 0.750494, 0.757443, 0.764392, 0.771341, 0.778290, 0.785239, 0.792188, 0.799137, 0.806086, 0.813035, 0.819984, 0.826933, 0.833882, 0.840831, 0.847780, 0.854729, 0.861678, 0.868627, 0.875576, 0.882525, }; bplaum-gavl-b9385e3/gavl/c/colorspace_tables.h000066400000000000000000000066311513252040200212750ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ extern const uint8_t gavl_yj_8_to_y_8[256]; extern const uint8_t gavl_uvj_8_to_uv_8[256]; extern const uint16_t gavl_yj_8_to_y_16[256]; extern const uint16_t gavl_uvj_8_to_uv_16[256]; extern const uint8_t gavl_y_8_to_yj_8[256]; extern const uint8_t gavl_uv_8_to_uvj_8[256]; extern const uint16_t gavl_y_8_to_yj_16[256]; extern const float gavl_y_8_to_y_float[256]; extern const float gavl_uv_8_to_uv_float[256]; extern const float gavl_yj_8_to_y_float[256]; extern const uint8_t gavl_rgb_5_to_8[32]; extern const uint8_t gavl_rgb_6_to_8[64]; extern const uint16_t gavl_rgb_5_to_16[32]; extern const uint16_t gavl_rgb_6_to_16[64]; extern const float gavl_rgb_5_to_float[32]; extern const float gavl_rgb_6_to_float[64]; extern const int gavl_r_to_y[256]; extern const int gavl_g_to_y[256]; extern const int gavl_b_to_y[256]; extern const int gavl_r_to_u[256]; extern const int gavl_g_to_u[256]; extern const int gavl_b_to_u[256]; extern const int gavl_r_to_v[256]; extern const int gavl_g_to_v[256]; extern const int gavl_b_to_v[256]; extern const int gavl_r_to_yj[256]; extern const int gavl_g_to_yj[256]; extern const int gavl_b_to_yj[256]; extern const int gavl_r_to_uj[256]; extern const int gavl_g_to_uj[256]; extern const int gavl_b_to_uj[256]; extern const int gavl_r_to_vj[256]; extern const int gavl_g_to_vj[256]; extern const int gavl_b_to_vj[256]; extern const float gavl_r_to_y_float[256]; extern const float gavl_g_to_y_float[256]; extern const float gavl_b_to_y_float[256]; extern const float gavl_r_to_u_float[256]; extern const float gavl_g_to_u_float[256]; extern const float gavl_b_to_u_float[256]; extern const float gavl_r_to_v_float[256]; extern const float gavl_g_to_v_float[256]; extern const float gavl_b_to_v_float[256]; extern const int gavl_y_to_rgb[256]; extern const int gavl_v_to_r[256]; extern const int gavl_u_to_g[256]; extern const int gavl_v_to_g[256]; extern const int gavl_u_to_b[256]; extern const int gavl_yj_to_rgb[256]; extern const int gavl_vj_to_r[256]; extern const int gavl_uj_to_g[256]; extern const int gavl_vj_to_g[256]; extern const int gavl_uj_to_b[256]; extern const float gavl_y_to_rgb_float[256]; extern const float gavl_v_to_r_float[256]; extern const float gavl_u_to_g_float[256]; extern const float gavl_v_to_g_float[256]; extern const float gavl_u_to_b_float[256]; extern const float gavl_yj_to_rgb_float[256]; extern const float gavl_vj_to_r_float[256]; extern const float gavl_uj_to_g_float[256]; extern const float gavl_vj_to_g_float[256]; extern const float gavl_uj_to_b_float[256]; bplaum-gavl-b9385e3/gavl/c/deinterlace_blend_c.c000066400000000000000000000113661513252040200215320ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include #include #include #include static void blend_func_packed_15_c(const uint8_t * t1, const uint8_t * m1, const uint8_t * b1, uint8_t * dst1, int num) { int i; const uint16_t * t = (const uint16_t*)t1; const uint16_t * m = (const uint16_t*)m1; const uint16_t * b = (const uint16_t*)b1; uint16_t * dst = (uint16_t*)dst1; for(i = 0; i < num; i++) { *dst = 0; *dst |= (((*t & RGB15_LOWER_MASK) + (*b & RGB15_LOWER_MASK) + ((*m & RGB15_LOWER_MASK) << 1)) >> 2); *dst |= (((*t & RGB15_MIDDLE_MASK) + (*b & RGB15_MIDDLE_MASK) + ((*m & RGB15_MIDDLE_MASK) << 1)) >> 2) & RGB15_MIDDLE_MASK; *dst |= (((*t & RGB15_UPPER_MASK) + (*b & RGB15_UPPER_MASK) + ((*m & RGB15_UPPER_MASK) << 1)) >> 2) & RGB15_UPPER_MASK; dst++; t++; m++; b++; } } static void blend_func_packed_16_c(const uint8_t * t1, const uint8_t * m1, const uint8_t * b1, uint8_t * dst1, int num) { int i; const uint16_t * t = (const uint16_t*)t1; const uint16_t * m = (const uint16_t*)m1; const uint16_t * b = (const uint16_t*)b1; uint16_t * dst = (uint16_t*)dst1; for(i = 0; i < num; i++) { *dst = 0; *dst |= (((*t & RGB16_LOWER_MASK) + (*b & RGB16_LOWER_MASK) + ((*m & RGB16_LOWER_MASK) << 1)) >> 2); *dst |= (((*t & RGB16_MIDDLE_MASK) + (*b & RGB16_MIDDLE_MASK) + ((*m & RGB16_MIDDLE_MASK) << 1)) >> 2) & RGB16_MIDDLE_MASK; *dst |= (((*t & RGB16_UPPER_MASK) + (*b & RGB16_UPPER_MASK) + ((*m & RGB16_UPPER_MASK) << 1)) >> 2) & RGB16_UPPER_MASK; dst++; t++; m++; b++; } } static void blend_func_8_c(const uint8_t * t, const uint8_t * m, const uint8_t * b, uint8_t * dst, int num) { int i; for(i = 0; i < num; i++) { *(dst++) = (*(t++) + (*(m++) << 1) + *(b++)) >> 2; } } static void blend_func_16_c(const uint8_t * t1, const uint8_t * m1, const uint8_t * b1, uint8_t * dst1, int num) { int i; const uint16_t * t = (const uint16_t*)t1; const uint16_t * m = (const uint16_t*)m1; const uint16_t * b = (const uint16_t*)b1; uint16_t * dst = (uint16_t*)dst1; for(i = 0; i < num; i++) { *(dst++) = (*(t++) + (*(m++) << 1) + *(b++)) >> 2; } } static void blend_func_float_c(const uint8_t * t1, const uint8_t * m1, const uint8_t * b1, uint8_t * dst1, int num) { int i; const float * t = (float*)t1; const float * m = (float*)m1; const float * b = (float*)b1; float * dst = (float*)dst1; for(i = 0; i < num; i++) *(dst++) = (*(t++) + *(b++) + 2.0 * (*(m++))) * 0.25; } void gavl_find_deinterlacer_blend_funcs_c(gavl_video_deinterlace_blend_func_table_t * tab, const gavl_video_options_t * opt, const gavl_video_format_t * format) { tab->func_packed_15 = blend_func_packed_15_c; tab->func_packed_16 = blend_func_packed_16_c; tab->func_8 = blend_func_8_c; tab->func_16 = blend_func_16_c; tab->func_float = blend_func_float_c; } bplaum-gavl-b9385e3/gavl/c/dsp_c.c000066400000000000000000000450051513252040200166720ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include #include #include #include #include "colorspace_tables.h" #include "colorspace_macros.h" /* Sum of absolute differences */ static int sad_rgb15_c(const uint8_t * src_1, const uint8_t * src_2, int stride_1, int stride_2, int w, int h) { int ret = 0, i, j; uint16_t * s1, *s2; for(i = 0; i < h; i++) { s1 = (uint16_t *)src_1; s2 = (uint16_t *)src_2; for(j = 0; j < w; j++) { ret += abs(RGB15_TO_R_8(*s1)-RGB15_TO_R_8(*s2)) + abs(RGB15_TO_G_8(*s1)-RGB15_TO_G_8(*s2)) + abs(RGB15_TO_B_8(*s1)-RGB15_TO_B_8(*s2)); s1++; s2++; } src_1 += stride_1; src_2 += stride_2; } return ret; } static int sad_rgb16_c(const uint8_t * src_1, const uint8_t * src_2, int stride_1, int stride_2, int w, int h) { int ret = 0, i, j; uint16_t * s1, *s2; for(i = 0; i < h; i++) { s1 = (uint16_t *)src_1; s2 = (uint16_t *)src_2; for(j = 0; j < w; j++) { ret += abs(RGB16_TO_R_8(*s1)-RGB16_TO_R_8(*s2)) + abs(RGB16_TO_G_8(*s1)-RGB16_TO_G_8(*s2)) + abs(RGB16_TO_B_8(*s1)-RGB16_TO_B_8(*s2)); s1++; s2++; } src_1 += stride_1; src_2 += stride_2; } return ret; } static int sad_8_c(const uint8_t * src_1, const uint8_t * src_2, int stride_1, int stride_2, int w, int h) { int ret = 0, i, j; const uint8_t * s1, *s2; for(i = 0; i < h; i++) { s1 = src_1; s2 = src_2; for(j = 0; j < w; j++) { ret += abs((*s1)-(*s2)); s1++; s2++; } src_1 += stride_1; src_2 += stride_2; } return ret; } static int sad_16_c(const uint8_t * src_1, const uint8_t * src_2, int stride_1, int stride_2, int w, int h) { int ret = 0, i, j; const uint16_t * s1, *s2; for(i = 0; i < h; i++) { s1 = (const uint16_t*)src_1; s2 = (const uint16_t*)src_2; for(j = 0; j < w; j++) { ret += abs((*s1)-(*s2)); s1++; s2++; } src_1 += stride_1; src_2 += stride_2; } return ret; } static float sad_f_c(const uint8_t * src_1, const uint8_t * src_2, int stride_1, int stride_2, int w, int h) { float ret = 0.0; int i, j; const float * s1, *s2; for(i = 0; i < h; i++) { s1 = (const float*)src_1; s2 = (const float*)src_2; for(j = 0; j < w; j++) { ret += fabs((*s1)-(*s2)); s1++; s2++; } src_1 += stride_1; src_2 += stride_2; } return ret; } /* Averaging */ static void average_rgb15_c(const uint8_t * src_1, const uint8_t * src_2, uint8_t * dst, int num) { int i; const uint16_t * s1, *s2; uint16_t *d; s1 = (const uint16_t*)src_1; s2 = (const uint16_t*)src_2; d = (uint16_t*)dst; for(i = 0; i < num; i++) { *d = (((*s1 & RGB15_LOWER_MASK) + (*s2 & RGB15_LOWER_MASK)) >> 1) & RGB15_LOWER_MASK; *d |= (((*s1 & RGB15_MIDDLE_MASK) + (*s2 & RGB15_MIDDLE_MASK)) >> 1) & RGB15_MIDDLE_MASK; *d |= (((*s1 & RGB15_UPPER_MASK) + (*s2 & RGB15_UPPER_MASK)) >> 1) & RGB15_UPPER_MASK; s1++; s2++; d++; } } static void average_rgb16_c(const uint8_t * src_1, const uint8_t * src_2, uint8_t * dst, int num) { int i; const uint16_t * s1, *s2; uint16_t *d; s1 = (const uint16_t*)src_1; s2 = (const uint16_t*)src_2; d = (uint16_t*)dst; for(i = 0; i < num; i++) { *d = (((*s1 & RGB16_LOWER_MASK) + (*s2 & RGB16_LOWER_MASK)) >> 1) & RGB16_LOWER_MASK; *d |= (((*s1 & RGB16_MIDDLE_MASK) + (*s2 & RGB16_MIDDLE_MASK)) >> 1) & RGB16_MIDDLE_MASK; *d |= (((*s1 & RGB16_UPPER_MASK) + (*s2 & RGB16_UPPER_MASK)) >> 1) & RGB16_UPPER_MASK; s1++; s2++; d++; } } static void average_8_c(const uint8_t * src_1, const uint8_t * src_2, uint8_t * dst, int num) { int i; for(i = 0; i < num; i++) { *dst = (*src_1 + *src_2 + 1) >> 1; src_1++; src_2++; dst++; } } static void average_16_c(const uint8_t * src_1, const uint8_t * src_2, uint8_t * dst, int num) { int i; const uint16_t * s1, *s2; uint16_t *d; s1 = (const uint16_t*)src_1; s2 = (const uint16_t*)src_2; d = (uint16_t*)dst; for(i = 0; i < num; i++) { *d = (*s1 + *s2 + 1) >> 1; s1++; s2++; d++; } } static void average_f_c(const uint8_t * src_1, const uint8_t * src_2, uint8_t * dst, int num) { int i; const float * s1, *s2; float *d; s1 = (const float*)src_1; s2 = (const float*)src_2; d = (float*)dst; for(i = 0; i < num; i++) { *d = (*s1 + *s2) * 0.5; s1++; s2++; d++; } } /* */ /* Interpolating */ static void interpolate_rgb15_c(const uint8_t * src_1, const uint8_t * src_2, uint8_t * dst, int num, float fac) { int i; const uint16_t * s1, *s2; uint16_t *d; int fac_i = (int)(fac * 0x10000 + 0.5); int anti_fac = 0x10000 - fac_i; s1 = (const uint16_t*)src_1; s2 = (const uint16_t*)src_2; d = (uint16_t*)dst; for(i = 0; i < num; i++) { *d = (((*s1 & RGB15_LOWER_MASK)*fac_i + (*s2 & RGB15_LOWER_MASK)*anti_fac) >> 16) & RGB15_LOWER_MASK; *d |= (((*s1 & RGB15_MIDDLE_MASK)*fac_i + (*s2 & RGB15_MIDDLE_MASK)*anti_fac) >> 16) & RGB15_MIDDLE_MASK; *d |= (((*s1 & RGB15_UPPER_MASK)*fac_i + (*s2 & RGB15_UPPER_MASK)*anti_fac) >> 16) & RGB15_UPPER_MASK; s1++; s2++; d++; } } static void interpolate_rgb16_c(const uint8_t * src_1, const uint8_t * src_2, uint8_t * dst, int num, float fac) { int i; const uint16_t * s1, *s2; uint16_t *d; int fac_i = (int)(fac * 0x10000 + 0.5); int anti_fac = 0x10000 - fac_i; s1 = (const uint16_t*)src_1; s2 = (const uint16_t*)src_2; d = (uint16_t*)dst; for(i = 0; i < num; i++) { *d = (((*s1 & RGB16_LOWER_MASK)*fac_i + (*s2 & RGB16_LOWER_MASK)*anti_fac) >> 16) & RGB16_LOWER_MASK; *d |= (((*s1 & RGB16_MIDDLE_MASK)*fac_i + (*s2 & RGB16_MIDDLE_MASK)*anti_fac) >> 16) & RGB16_MIDDLE_MASK; *d |= (((*s1 & RGB16_UPPER_MASK)*fac_i + (*s2 & RGB16_UPPER_MASK)*anti_fac) >> 16) & RGB16_UPPER_MASK; s1++; s2++; d++; } } static void interpolate_8_c(const uint8_t * src_1, const uint8_t * src_2, uint8_t * dst, int num, float fac) { int i; int fac_i = (int)(fac * 0x10000 + 0.5); int anti_fac = 0x10000 - fac_i; for(i = 0; i < num; i++) { *dst = (*src_1 * fac_i + *src_2 * anti_fac) >> 16; src_1++; src_2++; dst++; } } static void interpolate_16_c(const uint8_t * src_1, const uint8_t * src_2, uint8_t * dst, int num, float fac) { int i; const uint16_t * s1, *s2; uint16_t *d; int fac_i = (int)(fac * 0x8000 + 0.5); int anti_fac = 0x8000 - fac_i; s1 = (const uint16_t*)src_1; s2 = (const uint16_t*)src_2; d = (uint16_t*)dst; for(i = 0; i < num; i++) { *d = (*s1 * fac_i + *s2 * anti_fac) >> 15; s1++; s2++; d++; } } static void interpolate_f_c(const uint8_t * src_1, const uint8_t * src_2, uint8_t * dst, int num, float fac) { int i; const float * s1, *s2; float *d; float anti_fac = 1.0 - fac; s1 = (const float*)src_1; s2 = (const float*)src_2; d = (float*)dst; for(i = 0; i < num; i++) { *d = *s1 * fac + *s2 * anti_fac; s1++; s2++; d++; } } static void bswap_16_c(void * data, int len) { int i; uint16_t * ptr = (uint16_t*)data; for(i = 0; i < len; i++) { *ptr = bswap_16(*ptr); ptr++; } } static void bswap_32_c(void * data, int len) { int i; uint32_t * ptr = (uint32_t*)data; for(i = 0; i < len; i++) { *ptr = bswap_32(*ptr); ptr++; } } static void bswap_64_c(void * data, int len) { int i; uint64_t * ptr = (uint64_t*)data; for(i = 0; i < len; i++) { *ptr = bswap_64(*ptr); ptr++; } } #define GENERIC_CLIP(val, min, max) (val>max?max:(val>= bits; ptr++; } } static void shift_up_copy_16_c(void * _dst, const void * _src, int num, int bits) { int i = num+1; const uint16_t * src = _src; uint16_t * dst = _dst; while(--i) { *dst = *src << bits; src++; dst++; } } static void shift_down_copy_16_c(void * _dst, const void * _src, int num, int bits) { int i = num+1; const uint16_t * src = _src; uint16_t * dst = _dst; while(--i) { *dst = *src >> bits; src++; dst++; } } static void shuffle_8_4_c(void * dst1, const void * src1, int num, int * indices) { const uint8_t * src = src1; uint8_t * dst = dst1; num++; while(--num) { #if 1 dst[0] = src[indices[0]]; dst[1] = src[indices[1]]; dst[2] = src[indices[2]]; dst[3] = src[indices[3]]; #else dst[0] = 0x80; /* V */ dst[1] = 0x80; /* U */ dst[2] = 0xff; /* Y */ dst[3] = 0xff; /* A */ #endif src += 4; dst += 4; } } static void shuffle_16_4_c(void * dst1, const void * src1, int num, int * indices) { const uint16_t * src = src1; uint16_t * dst = dst1; num++; while(--num) { dst[0] = src[indices[0]]; dst[1] = src[indices[1]]; dst[2] = src[indices[2]]; dst[3] = src[indices[3]]; src += 4; dst += 4; } } void gavl_dsp_init_c(gavl_dsp_funcs_t * funcs, int quality) { funcs->sad_rgb15 = sad_rgb15_c; funcs->sad_rgb16 = sad_rgb16_c; funcs->sad_8 = sad_8_c; funcs->sad_16 = sad_16_c; funcs->sad_f = sad_f_c; funcs->average_rgb15 = average_rgb15_c; funcs->average_rgb16 = average_rgb16_c; funcs->average_8 = average_8_c; funcs->average_16 = average_16_c; funcs->average_f = average_f_c; funcs->interpolate_rgb15 = interpolate_rgb15_c; funcs->interpolate_rgb16 = interpolate_rgb16_c; funcs->interpolate_8 = interpolate_8_c; funcs->interpolate_16 = interpolate_16_c; funcs->interpolate_f = interpolate_f_c; funcs->bswap_16 = bswap_16_c; funcs->bswap_32 = bswap_32_c; funcs->bswap_64 = bswap_64_c; funcs->add_u8 = add_u8_c; funcs->add_s8 = add_s8_c; funcs->add_u8_s = add_u8_s_c; funcs->add_u16 = add_u16_c; funcs->add_s16 = add_s16_c; funcs->add_u16_s = add_u16_s_c; funcs->add_s32 = add_s32_c; funcs->add_float = add_float_c; funcs->add_double = add_double_c; funcs->sub_u8 = sub_u8_c; funcs->sub_s8 = sub_s8_c; funcs->sub_u8_s = sub_u8_s_c; funcs->sub_u16 = sub_u16_c; funcs->sub_s16 = sub_s16_c; funcs->sub_u16_s = sub_u16_s_c; funcs->sub_s32 = sub_s32_c; funcs->sub_float = sub_float_c; funcs->sub_double = sub_double_c; funcs->shift_up_16 = shift_up_16_c; funcs->shift_down_16 = shift_down_16_c; funcs->shift_up_copy_16 = shift_up_copy_16_c; funcs->shift_down_copy_16 = shift_down_copy_16_c; funcs->shuffle_8_4 = shuffle_8_4_c; funcs->shuffle_16_4 = shuffle_16_4_c; } bplaum-gavl-b9385e3/gavl/c/gray_gray_c.c000066400000000000000000000351731513252040200200750ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ // #include #include #include #include #include "colorspace_tables.h" #include "colorspace_macros.h" /* gray_8_to_16_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE 1 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME gray_8_to_16_c #define CONVERT dst[0] = RGB_8_TO_16(src[0]); #include "../csp_packed_packed.h" /* gray_8_to_float_c */ #define IN_TYPE uint8_t #define OUT_TYPE float #define IN_ADVANCE 1 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME gray_8_to_float_c #define CONVERT dst[0] = RGB_8_TO_FLOAT(src[0]); #include "../csp_packed_packed.h" /* gray_16_to_8_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 1 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME gray_16_to_8_c #define CONVERT RGB_16_TO_8(src[0], dst[0]); #include "../csp_packed_packed.h" /* gray_16_to_float_c */ #define IN_TYPE uint16_t #define OUT_TYPE float #define IN_ADVANCE 1 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME gray_16_to_float_c #define CONVERT dst[0] = RGB_16_TO_FLOAT(src[0]); #include "../csp_packed_packed.h" /* gray_float_to_8_c */ #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 1 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME gray_float_to_8_c #define CONVERT RGB_FLOAT_TO_8(src[0], dst[0]); #include "../csp_packed_packed.h" /* gray_float_to_16_c */ #define IN_TYPE float #define OUT_TYPE uint16_t #define IN_ADVANCE 1 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME gray_float_to_16_c #define CONVERT RGB_FLOAT_TO_16(src[0], dst[0]); #include "../csp_packed_packed.h" /* */ /* graya_16_to_gray_16_ia_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE 2 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME graya_16_to_gray_16_ia_c #define CONVERT dst[0] = RGB_8_TO_16(src[0]); #include "../csp_packed_packed.h" /* graya_16_to_gray_float_ia_c */ #define IN_TYPE uint8_t #define OUT_TYPE float #define IN_ADVANCE 2 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME graya_16_to_gray_float_ia_c #define CONVERT dst[0] = RGB_8_TO_FLOAT(src[0]); #include "../csp_packed_packed.h" /* graya_32_to_gray_8_ia_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 2 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME graya_32_to_gray_8_ia_c #define CONVERT RGB_16_TO_8(src[0], dst[0]); #include "../csp_packed_packed.h" /* graya_32_to_gray_float_ia_c */ #define IN_TYPE uint16_t #define OUT_TYPE float #define IN_ADVANCE 2 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME graya_32_to_gray_float_ia_c #define CONVERT dst[0] = RGB_16_TO_FLOAT(src[0]); #include "../csp_packed_packed.h" /* graya_float_to_gray_8_ia_c */ #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 2 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME graya_float_to_gray_8_ia_c #define CONVERT RGB_FLOAT_TO_8(src[0], dst[0]); #include "../csp_packed_packed.h" /* graya_float_to_gray_16_ia_c */ #define IN_TYPE float #define OUT_TYPE uint16_t #define IN_ADVANCE 2 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME graya_float_to_gray_16_ia_c #define CONVERT RGB_FLOAT_TO_16(src[0], dst[0]); #include "../csp_packed_packed.h" /* graya_16_to_gray_8_ia_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 2 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME graya_16_to_gray_8_ia_c #define CONVERT dst[0] = src[0]; #include "../csp_packed_packed.h" /* graya_32_to_gray_16_ia_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint16_t #define IN_ADVANCE 2 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME graya_32_to_gray_16_ia_c #define CONVERT dst[0] = src[0]; #include "../csp_packed_packed.h" /* graya_float_to_gray_float_ia_c */ #define IN_TYPE float #define OUT_TYPE float #define IN_ADVANCE 2 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME graya_float_to_gray_float_ia_c #define CONVERT dst[0] = src[0]; #include "../csp_packed_packed.h" /* */ /* graya_16_to_32_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE 2 #define OUT_ADVANCE 2 #define NUM_PIXELS 1 #define FUNC_NAME graya_16_to_32_c #define CONVERT dst[0] = RGB_8_TO_16(src[0]); \ dst[1] = RGB_8_TO_16(src[1]); #include "../csp_packed_packed.h" /* graya_16_to_float_c */ #define IN_TYPE uint8_t #define OUT_TYPE float #define IN_ADVANCE 2 #define OUT_ADVANCE 2 #define NUM_PIXELS 1 #define FUNC_NAME graya_16_to_float_c #define CONVERT dst[0] = RGB_8_TO_FLOAT(src[0]); \ dst[1] = RGB_8_TO_FLOAT(src[1]); #include "../csp_packed_packed.h" /* graya_32_to_16_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 2 #define OUT_ADVANCE 2 #define NUM_PIXELS 1 #define FUNC_NAME graya_32_to_16_c #define CONVERT RGB_16_TO_8(src[0], dst[0]); \ RGB_16_TO_8(src[1], dst[1]); \ #include "../csp_packed_packed.h" /* graya_32_to_float_c */ #define IN_TYPE uint16_t #define OUT_TYPE float #define IN_ADVANCE 2 #define OUT_ADVANCE 2 #define NUM_PIXELS 1 #define FUNC_NAME graya_32_to_float_c #define CONVERT dst[0] = RGB_16_TO_FLOAT(src[0]); \ dst[1] = RGB_16_TO_FLOAT(src[1]); #include "../csp_packed_packed.h" /* graya_float_to_16_c */ #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 2 #define OUT_ADVANCE 2 #define NUM_PIXELS 1 #define FUNC_NAME graya_float_to_16_c #define CONVERT RGB_FLOAT_TO_8(src[0], dst[0]); \ RGB_FLOAT_TO_8(src[1], dst[1]); #include "../csp_packed_packed.h" /* graya_float_to_32_c */ #define IN_TYPE float #define OUT_TYPE uint16_t #define IN_ADVANCE 2 #define OUT_ADVANCE 2 #define NUM_PIXELS 1 #define FUNC_NAME graya_float_to_32_c #define CONVERT RGB_FLOAT_TO_16(src[0], dst[0]); \ RGB_FLOAT_TO_16(src[1], dst[1]); #include "../csp_packed_packed.h" /* */ /* gray_8_to_graya_32_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE 1 #define OUT_ADVANCE 2 #define NUM_PIXELS 1 #define FUNC_NAME gray_8_to_graya_32_c #define CONVERT dst[0] = RGB_8_TO_16(src[0]); \ dst[1] = 0xFFFF; #include "../csp_packed_packed.h" /* gray_8_to_graya_float_c */ #define IN_TYPE uint8_t #define OUT_TYPE float #define IN_ADVANCE 1 #define OUT_ADVANCE 2 #define NUM_PIXELS 1 #define FUNC_NAME gray_8_to_graya_float_c #define CONVERT dst[0] = RGB_8_TO_FLOAT(src[0]); \ dst[1] = 1.0; #include "../csp_packed_packed.h" /* gray_16_to_graya_16_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 1 #define OUT_ADVANCE 2 #define NUM_PIXELS 1 #define FUNC_NAME gray_16_to_graya_16_c #define CONVERT RGB_16_TO_8(src[0], dst[0]); \ dst[1] = 0xFF; #include "../csp_packed_packed.h" /* gray_16_to_graya_float_c */ #define IN_TYPE uint16_t #define OUT_TYPE float #define IN_ADVANCE 1 #define OUT_ADVANCE 2 #define NUM_PIXELS 1 #define FUNC_NAME gray_16_to_graya_float_c #define CONVERT dst[0] = RGB_16_TO_FLOAT(src[0]); \ dst[1] = 1.0; #include "../csp_packed_packed.h" /* gray_float_to_graya_16_c */ #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 1 #define OUT_ADVANCE 2 #define NUM_PIXELS 1 #define FUNC_NAME gray_float_to_graya_16_c #define CONVERT RGB_FLOAT_TO_8(src[0], dst[0]); \ dst[1] = 0xFF; #include "../csp_packed_packed.h" /* gray_float_to_graya_32_c */ #define IN_TYPE float #define OUT_TYPE uint16_t #define IN_ADVANCE 1 #define OUT_ADVANCE 2 #define NUM_PIXELS 1 #define FUNC_NAME gray_float_to_graya_32_c #define CONVERT RGB_FLOAT_TO_16(src[0], dst[0]); \ dst[1] = 0xFFFF; #include "../csp_packed_packed.h" /* gray_8_to_graya_16_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 1 #define OUT_ADVANCE 2 #define NUM_PIXELS 1 #define FUNC_NAME gray_8_to_graya_16_c #define CONVERT dst[0] = src[0]; \ dst[1] = 0xFF; #include "../csp_packed_packed.h" /* gray_16_to_graya_32_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint16_t #define IN_ADVANCE 1 #define OUT_ADVANCE 2 #define NUM_PIXELS 1 #define FUNC_NAME gray_16_to_graya_32_c #define CONVERT dst[0] = src[0]; \ dst[1] = 0xFFFF; #include "../csp_packed_packed.h" /* gray_float_to_graya_float_c */ #define IN_TYPE float #define OUT_TYPE float #define IN_ADVANCE 1 #define OUT_ADVANCE 2 #define NUM_PIXELS 1 #define FUNC_NAME gray_float_to_graya_float_c #define CONVERT dst[0] = src[0]; \ dst[1] = 1.0; #include "../csp_packed_packed.h" /* graya_16_to_gray_8_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 2 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME graya_16_to_gray_8_c #define INIT INIT_GRAYA_16 #define CONVERT \ GRAYA_16_TO_GRAY_8(src[0], src[1], dst[0]); #include "../csp_packed_packed.h" /* graya_32_to_gray_16_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint16_t #define IN_ADVANCE 2 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME graya_32_to_gray_16_c #define INIT INIT_GRAYA_32 #define CONVERT \ GRAYA_32_TO_GRAY_16(src[0], src[1], dst[0]); #include "../csp_packed_packed.h" /* graya_float_to_gray_float_c */ #define IN_TYPE float #define OUT_TYPE float #define IN_ADVANCE 2 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME graya_float_to_gray_float_c #define INIT INIT_GRAYA_FLOAT #define CONVERT \ GRAYA_FLOAT_TO_GRAY_FLOAT(src[0], src[1], dst[0]); #include "../csp_packed_packed.h" /* graya_16_to_gray_16_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE 2 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME graya_16_to_gray_16_c #define INIT int tmp; \ INIT_GRAYA_16 #define CONVERT \ GRAYA_16_TO_GRAY_8(src[0], src[1], tmp); \ dst[0] = RGB_8_TO_16(tmp); #include "../csp_packed_packed.h" /* graya_16_to_gray_float_c */ #define IN_TYPE uint8_t #define OUT_TYPE float #define IN_ADVANCE 2 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME graya_16_to_gray_float_c #define INIT int tmp; \ INIT_GRAYA_16 #define CONVERT \ GRAYA_16_TO_GRAY_8(src[0], src[1], tmp); \ dst[0] = RGB_8_TO_FLOAT(tmp); #include "../csp_packed_packed.h" /* graya_32_to_gray_8_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 2 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME graya_32_to_gray_8_c #define INIT int tmp; \ INIT_GRAYA_32 #define CONVERT \ GRAYA_32_TO_GRAY_16(src[0], src[1], tmp); \ RGB_16_TO_8(tmp, dst[0]); #include "../csp_packed_packed.h" /* graya_32_to_gray_float_c */ #define IN_TYPE uint16_t #define OUT_TYPE float #define IN_ADVANCE 2 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME graya_32_to_gray_float_c #define INIT int tmp; \ INIT_GRAYA_32 #define CONVERT \ GRAYA_32_TO_GRAY_16(src[0], src[1], tmp); \ dst[0] = RGB_16_TO_FLOAT(tmp); #include "../csp_packed_packed.h" /* graya_float_to_gray_8_c */ #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 2 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME graya_float_to_gray_8_c #define INIT float tmp; \ INIT_GRAYA_FLOAT #define CONVERT \ GRAYA_FLOAT_TO_GRAY_FLOAT(src[0], src[1], tmp); \ RGB_FLOAT_TO_8(tmp, dst[0]); #include "../csp_packed_packed.h" /* graya_float_to_gray_16_c */ #define IN_TYPE float #define OUT_TYPE uint16_t #define IN_ADVANCE 2 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME graya_float_to_gray_16_c #define INIT float tmp; \ INIT_GRAYA_FLOAT #define CONVERT \ GRAYA_FLOAT_TO_GRAY_FLOAT(src[0], src[1], tmp); \ RGB_FLOAT_TO_16(tmp, dst[0]); #include "../csp_packed_packed.h" void gavl_init_gray_gray_funcs_c(gavl_pixelformat_function_table_t * tab, const gavl_video_options_t * opt) { if(opt->alpha_mode == GAVL_ALPHA_BLEND_COLOR) { tab->graya_16_to_gray_8 = graya_16_to_gray_8_c; tab->graya_16_to_gray_16 = graya_16_to_gray_16_c; tab->graya_16_to_gray_float = graya_16_to_gray_float_c; tab->graya_32_to_gray_8 = graya_32_to_gray_8_c; tab->graya_32_to_gray_16 = graya_32_to_gray_16_c; tab->graya_32_to_gray_float = graya_32_to_gray_float_c; tab->graya_float_to_gray_8 = graya_float_to_gray_8_c; tab->graya_float_to_gray_16 = graya_float_to_gray_16_c; tab->graya_float_to_gray_float = graya_float_to_gray_float_c; } else { tab->graya_16_to_gray_8 = graya_16_to_gray_8_ia_c; tab->graya_16_to_gray_16 = graya_16_to_gray_16_ia_c; tab->graya_16_to_gray_float = graya_16_to_gray_float_ia_c; tab->graya_32_to_gray_8 = graya_32_to_gray_8_ia_c; tab->graya_32_to_gray_16 = graya_32_to_gray_16_ia_c; tab->graya_32_to_gray_float = graya_32_to_gray_float_ia_c; tab->graya_float_to_gray_8 = graya_float_to_gray_8_ia_c; tab->graya_float_to_gray_16 = graya_float_to_gray_16_ia_c; tab->graya_float_to_gray_float = graya_float_to_gray_float_ia_c; } tab->gray_8_to_16 = gray_8_to_16_c; tab->gray_16_to_8 = gray_16_to_8_c; tab->gray_float_to_16 = gray_float_to_16_c; tab->gray_16_to_float = gray_16_to_float_c; tab->gray_float_to_8 = gray_float_to_8_c; tab->gray_8_to_float = gray_8_to_float_c; tab->graya_16_to_32 = graya_16_to_32_c; tab->graya_32_to_16 = graya_32_to_16_c; tab->graya_float_to_16 = graya_float_to_16_c; tab->graya_32_to_float = graya_32_to_float_c; tab->graya_float_to_32 = graya_float_to_32_c; tab->graya_16_to_float = graya_16_to_float_c; tab->gray_8_to_graya_16 = gray_8_to_graya_16_c; tab->gray_8_to_graya_32 = gray_8_to_graya_32_c; tab->gray_8_to_graya_float = gray_8_to_graya_float_c; tab->gray_16_to_graya_16 = gray_16_to_graya_16_c; tab->gray_16_to_graya_32 = gray_16_to_graya_32_c; tab->gray_16_to_graya_float = gray_16_to_graya_float_c; tab->gray_float_to_graya_16 = gray_float_to_graya_16_c; tab->gray_float_to_graya_32 = gray_float_to_graya_32_c; tab->gray_float_to_graya_float = gray_float_to_graya_float_c; } bplaum-gavl-b9385e3/gavl/c/gray_rgb_c.c000066400000000000000000000763741513252040200177150ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ // #include #include #include #include #include "colorspace_tables.h" #include "colorspace_macros.h" /* gray_8_to_rgb_15_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE 1 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME gray_8_to_rgb_15_c #define CONVERT PACK_8_TO_RGB15(src[0],src[0],src[0],dst[0]) #include "../csp_packed_packed.h" /* gray_8_to_rgb_16_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE 1 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME gray_8_to_rgb_16_c #define CONVERT PACK_8_TO_RGB16(src[0],src[0],src[0],dst[0]) #include "../csp_packed_packed.h" /* gray_16_to_rgb_15_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint16_t #define IN_ADVANCE 1 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME gray_16_to_rgb_15_c #define CONVERT PACK_16_TO_RGB15(src[0],src[0],src[0],dst[0]) #include "../csp_packed_packed.h" /* gray_16_to_rgb_16_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint16_t #define IN_ADVANCE 1 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME gray_16_to_rgb_16_c #define CONVERT PACK_16_TO_RGB16(src[0],src[0],src[0],dst[0]) #include "../csp_packed_packed.h" /* gray_float_to_rgb_15_c */ #define IN_TYPE float #define OUT_TYPE uint16_t #define IN_ADVANCE 1 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME gray_float_to_rgb_15_c #define INIT int tmp; #define CONVERT RGB_FLOAT_TO_8(src[0], tmp); \ PACK_8_TO_RGB15(tmp,tmp,tmp,dst[0]); #include "../csp_packed_packed.h" /* gray_float_to_rgb_16_c */ #define IN_TYPE float #define OUT_TYPE uint16_t #define IN_ADVANCE 1 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME gray_float_to_rgb_16_c #define INIT int tmp; #define CONVERT RGB_FLOAT_TO_8(src[0], tmp); \ PACK_8_TO_RGB16(tmp,tmp,tmp,dst[0]); #include "../csp_packed_packed.h" /* gray_8_to_rgb_24_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 1 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define FUNC_NAME gray_8_to_rgb_24_c #define CONVERT dst[0] = src[0]; \ dst[1] = src[0]; \ dst[2] = src[0]; #include "../csp_packed_packed.h" /* gray_8_to_rgb_32_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 1 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME gray_8_to_rgb_32_c #define CONVERT dst[0] = src[0]; \ dst[1] = src[0]; \ dst[2] = src[0]; #include "../csp_packed_packed.h" /* gray_8_to_rgba_32_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 1 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME gray_8_to_rgba_32_c #define CONVERT dst[0] = src[0]; \ dst[1] = src[0]; \ dst[2] = src[0]; \ dst[3] = 0xFF; #include "../csp_packed_packed.h" /* gray_16_to_rgb_24_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 1 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define FUNC_NAME gray_16_to_rgb_24_c #define CONVERT RGB_16_TO_8(src[0], dst[0]); \ RGB_16_TO_8(src[0], dst[1]); \ RGB_16_TO_8(src[0], dst[2]); #include "../csp_packed_packed.h" /* gray_16_to_rgb_32_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 1 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME gray_16_to_rgb_32_c #define CONVERT RGB_16_TO_8(src[0], dst[0]); \ RGB_16_TO_8(src[0], dst[1]); \ RGB_16_TO_8(src[0], dst[2]); #include "../csp_packed_packed.h" /* gray_16_to_rgba_32_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 1 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME gray_16_to_rgba_32_c #define CONVERT RGB_16_TO_8(src[0], dst[0]); \ RGB_16_TO_8(src[0], dst[1]); \ RGB_16_TO_8(src[0], dst[2]); \ dst[3] = 0xFF; #include "../csp_packed_packed.h" /* gray_float_to_rgb_24_c */ #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 1 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define FUNC_NAME gray_float_to_rgb_24_c #define CONVERT RGB_FLOAT_TO_8(src[0], dst[0]); \ RGB_FLOAT_TO_8(src[0], dst[1]); \ RGB_FLOAT_TO_8(src[0], dst[2]); #include "../csp_packed_packed.h" /* gray_float_to_rgb_32_c */ #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 1 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME gray_float_to_rgb_32_c #define CONVERT RGB_FLOAT_TO_8(src[0], dst[0]); \ RGB_FLOAT_TO_8(src[0], dst[1]); \ RGB_FLOAT_TO_8(src[0], dst[2]); #include "../csp_packed_packed.h" /* gray_float_to_rgba_32_c */ #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 1 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME gray_float_to_rgba_32_c #define CONVERT RGB_FLOAT_TO_8(src[0], dst[0]); \ RGB_FLOAT_TO_8(src[0], dst[1]); \ RGB_FLOAT_TO_8(src[0], dst[2]); \ dst[3] = 0xff; #include "../csp_packed_packed.h" /* gray_8_to_rgb_48_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE 1 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define FUNC_NAME gray_8_to_rgb_48_c #define CONVERT dst[0] = RGB_8_TO_16(src[0]); \ dst[1] = RGB_8_TO_16(src[0]); \ dst[2] = RGB_8_TO_16(src[0]); #include "../csp_packed_packed.h" /* gray_8_to_rgba_64_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE 1 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME gray_8_to_rgba_64_c #define CONVERT dst[0] = RGB_8_TO_16(src[0]); \ dst[1] = RGB_8_TO_16(src[0]); \ dst[2] = RGB_8_TO_16(src[0]); \ dst[3] = 0xffff; #include "../csp_packed_packed.h" /* gray_16_to_rgb_48_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint16_t #define IN_ADVANCE 1 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define FUNC_NAME gray_16_to_rgb_48_c #define CONVERT dst[0] = src[0]; \ dst[1] = src[0]; \ dst[2] = src[0]; #include "../csp_packed_packed.h" /* gray_16_to_rgb_64_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint16_t #define IN_ADVANCE 1 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME gray_16_to_rgba_64_c #define CONVERT dst[0] = src[0]; \ dst[1] = src[0]; \ dst[2] = src[0]; \ dst[3] = 0xffff; #include "../csp_packed_packed.h" /* gray_float_to_rgb_48_c */ #define IN_TYPE float #define OUT_TYPE uint16_t #define IN_ADVANCE 1 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define FUNC_NAME gray_float_to_rgb_48_c #define CONVERT RGB_FLOAT_TO_16(src[0], dst[0]); \ RGB_FLOAT_TO_16(src[0], dst[1]); \ RGB_FLOAT_TO_16(src[0], dst[2]); #include "../csp_packed_packed.h" /* gray_float_to_rgba_64_c */ #define IN_TYPE float #define OUT_TYPE uint16_t #define IN_ADVANCE 1 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME gray_float_to_rgba_64_c #define CONVERT RGB_FLOAT_TO_16(src[0], dst[0]); \ RGB_FLOAT_TO_16(src[0], dst[1]); \ RGB_FLOAT_TO_16(src[0], dst[2]); \ dst[3] = 0xffff; #include "../csp_packed_packed.h" /* */ /* gray_8_to_rgb_float_c */ #define IN_TYPE uint8_t #define OUT_TYPE float #define IN_ADVANCE 1 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define FUNC_NAME gray_8_to_rgb_float_c #define CONVERT dst[0] = RGB_8_TO_FLOAT(src[0]); \ dst[1] = RGB_8_TO_FLOAT(src[0]); \ dst[2] = RGB_8_TO_FLOAT(src[0]); #include "../csp_packed_packed.h" /* gray_8_to_rgba_float_c */ #define IN_TYPE uint8_t #define OUT_TYPE float #define IN_ADVANCE 1 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME gray_8_to_rgba_float_c #define CONVERT dst[0] = RGB_8_TO_FLOAT(src[0]); \ dst[1] = RGB_8_TO_FLOAT(src[0]); \ dst[2] = RGB_8_TO_FLOAT(src[0]); \ dst[3] = 0xffff; #include "../csp_packed_packed.h" /* gray_16_to_rgb_float_c */ #define IN_TYPE uint16_t #define OUT_TYPE float #define IN_ADVANCE 1 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define FUNC_NAME gray_16_to_rgb_float_c #define CONVERT dst[0] = RGB_16_TO_FLOAT(src[0]); \ dst[1] = RGB_16_TO_FLOAT(src[0]); \ dst[2] = RGB_16_TO_FLOAT(src[0]); #include "../csp_packed_packed.h" /* gray_16_to_rgba_float_c */ #define IN_TYPE uint16_t #define OUT_TYPE float #define IN_ADVANCE 1 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME gray_16_to_rgba_float_c #define CONVERT dst[0] = RGB_16_TO_FLOAT(src[0]); \ dst[1] = RGB_16_TO_FLOAT(src[0]); \ dst[2] = RGB_16_TO_FLOAT(src[0]); \ dst[3] = 0xffff; #include "../csp_packed_packed.h" /* gray_float_to_rgb_float_c */ #define IN_TYPE float #define OUT_TYPE float #define IN_ADVANCE 1 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define FUNC_NAME gray_float_to_rgb_float_c #define CONVERT dst[0] = src[0]; \ dst[1] = src[0]; \ dst[2] = src[0]; #include "../csp_packed_packed.h" /* gray_float_to_rgba_float_c */ #define IN_TYPE float #define OUT_TYPE float #define IN_ADVANCE 1 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME gray_float_to_rgba_float_c #define CONVERT dst[0] = src[0]; \ dst[1] = src[0]; \ dst[2] = src[0]; \ dst[3] = 1.0; #include "../csp_packed_packed.h" /* Graya -> RGBA */ /* graya_16_to_rgba_32_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 2 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME graya_16_to_rgba_32_c #define CONVERT dst[0] = src[0]; \ dst[1] = src[0]; \ dst[2] = src[0]; \ dst[3] = src[1]; #include "../csp_packed_packed.h" /* graya_16_to_rgba_64_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE 2 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME graya_16_to_rgba_64_c #define CONVERT dst[0] = RGB_8_TO_16(src[0]); \ dst[1] = RGB_8_TO_16(src[0]); \ dst[2] = RGB_8_TO_16(src[0]); \ dst[3] = RGB_8_TO_16(src[1]); #include "../csp_packed_packed.h" /* graya_16_to_rgba_float_c */ #define IN_TYPE uint8_t #define OUT_TYPE float #define IN_ADVANCE 2 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME graya_16_to_rgba_float_c #define CONVERT dst[0] = RGB_8_TO_FLOAT(src[0]); \ dst[1] = RGB_8_TO_FLOAT(src[0]); \ dst[2] = RGB_8_TO_FLOAT(src[0]); \ dst[3] = RGB_8_TO_FLOAT(src[1]); #include "../csp_packed_packed.h" /* graya_32_to_rgba_32_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 2 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME graya_32_to_rgba_32_c #define CONVERT RGB_16_TO_8(src[0], dst[0]); \ RGB_16_TO_8(src[0], dst[1]); \ RGB_16_TO_8(src[0], dst[2]); \ RGB_16_TO_8(src[1], dst[3]); #include "../csp_packed_packed.h" /* graya_32_to_rgba_64_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint16_t #define IN_ADVANCE 2 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME graya_32_to_rgba_64_c #define CONVERT dst[0] = src[0]; \ dst[1] = src[0]; \ dst[2] = src[0]; \ dst[3] = src[1]; #include "../csp_packed_packed.h" /* graya_32_to_rgba_float_c */ #define IN_TYPE uint16_t #define OUT_TYPE float #define IN_ADVANCE 2 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME graya_32_to_rgba_float_c #define CONVERT dst[0] = RGB_16_TO_FLOAT(src[0]); \ dst[1] = RGB_16_TO_FLOAT(src[0]); \ dst[2] = RGB_16_TO_FLOAT(src[0]); \ dst[3] = RGB_16_TO_FLOAT(src[1]); #include "../csp_packed_packed.h" /* graya_float_to_rgba_32_c */ #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 2 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME graya_float_to_rgba_32_c #define CONVERT RGB_FLOAT_TO_8(src[0], dst[0]); \ RGB_FLOAT_TO_8(src[0], dst[1]); \ RGB_FLOAT_TO_8(src[0], dst[2]); \ RGB_FLOAT_TO_8(src[1], dst[3]); #include "../csp_packed_packed.h" /* graya_float_to_rgba_64_c */ #define IN_TYPE float #define OUT_TYPE uint16_t #define IN_ADVANCE 2 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME graya_float_to_rgba_64_c #define CONVERT RGB_FLOAT_TO_16(src[0], dst[0]); \ RGB_FLOAT_TO_16(src[0], dst[1]); \ RGB_FLOAT_TO_16(src[0], dst[2]); \ RGB_FLOAT_TO_16(src[1], dst[3]); #include "../csp_packed_packed.h" /* graya_float_to_rgba_float_c */ #define IN_TYPE float #define OUT_TYPE float #define IN_ADVANCE 2 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME graya_float_to_rgba_float_c #define CONVERT dst[0] = src[0]; \ dst[1] = src[0]; \ dst[2] = src[0]; \ dst[3] = src[1]; #include "../csp_packed_packed.h" /* graya -> RGB ignoring alpha */ /* graya_16_to_rgb_15_ia_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE 2 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME graya_16_to_rgb_15_ia_c #define CONVERT PACK_8_TO_RGB15(src[0],src[0],src[0],dst[0]) #include "../csp_packed_packed.h" /* graya_16_to_rgb_16_ia_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE 2 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME graya_16_to_rgb_16_ia_c #define CONVERT PACK_8_TO_RGB16(src[0],src[0],src[0],dst[0]) #include "../csp_packed_packed.h" /* graya_32_to_rgb_15_ia_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint16_t #define IN_ADVANCE 2 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME graya_32_to_rgb_15_ia_c #define CONVERT PACK_16_TO_RGB15(src[0],src[0],src[0],dst[0]) #include "../csp_packed_packed.h" /* graya_32_to_rgb_16_ia_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint16_t #define IN_ADVANCE 2 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME graya_32_to_rgb_16_ia_c #define CONVERT PACK_16_TO_RGB16(src[0],src[0],src[0],dst[0]) #include "../csp_packed_packed.h" /* graya_float_to_rgb_15_ia_c */ #define IN_TYPE float #define OUT_TYPE uint16_t #define IN_ADVANCE 2 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME graya_float_to_rgb_15_ia_c #define INIT int tmp; #define CONVERT RGB_FLOAT_TO_8(src[0], tmp); \ PACK_8_TO_RGB15(tmp,tmp,tmp,dst[0]); #include "../csp_packed_packed.h" /* graya_float_to_rgb_16_ia_c */ #define IN_TYPE float #define OUT_TYPE uint16_t #define IN_ADVANCE 2 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME graya_float_to_rgb_16_ia_c #define INIT int tmp; #define CONVERT RGB_FLOAT_TO_8(src[0], tmp); \ PACK_8_TO_RGB16(tmp,tmp,tmp,dst[0]); #include "../csp_packed_packed.h" /* graya_16_to_rgb_24_ia_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 2 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define FUNC_NAME graya_16_to_rgb_24_ia_c #define CONVERT dst[0] = src[0]; \ dst[1] = src[0]; \ dst[2] = src[0]; #include "../csp_packed_packed.h" /* graya_16_to_rgb_32_ia_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 2 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME graya_16_to_rgb_32_ia_c #define CONVERT dst[0] = src[0]; \ dst[1] = src[0]; \ dst[2] = src[0]; #include "../csp_packed_packed.h" /* graya_32_to_rgb_24_ia_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 2 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define FUNC_NAME graya_32_to_rgb_24_ia_c #define CONVERT RGB_16_TO_8(src[0], dst[0]); \ RGB_16_TO_8(src[0], dst[1]); \ RGB_16_TO_8(src[0], dst[2]); #include "../csp_packed_packed.h" /* graya_32_to_rgb_32_ia_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 2 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME graya_32_to_rgb_32_ia_c #define CONVERT RGB_16_TO_8(src[0], dst[0]); \ RGB_16_TO_8(src[0], dst[1]); \ RGB_16_TO_8(src[0], dst[2]); #include "../csp_packed_packed.h" /* graya_float_to_rgb_24_ia_c */ #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 2 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define FUNC_NAME graya_float_to_rgb_24_ia_c #define CONVERT RGB_FLOAT_TO_8(src[0], dst[0]); \ RGB_FLOAT_TO_8(src[0], dst[1]); \ RGB_FLOAT_TO_8(src[0], dst[2]); #include "../csp_packed_packed.h" /* graya_float_to_rgb_32_ia_c */ #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 2 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME graya_float_to_rgb_32_ia_c #define CONVERT RGB_FLOAT_TO_8(src[0], dst[0]); \ RGB_FLOAT_TO_8(src[0], dst[1]); \ RGB_FLOAT_TO_8(src[0], dst[2]); #include "../csp_packed_packed.h" /* graya_16_to_rgb_48_ia_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE 2 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define FUNC_NAME graya_16_to_rgb_48_ia_c #define CONVERT dst[0] = RGB_8_TO_16(src[0]); \ dst[1] = RGB_8_TO_16(src[0]); \ dst[2] = RGB_8_TO_16(src[0]); #include "../csp_packed_packed.h" /* graya_32_to_rgb_48_ia_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint16_t #define IN_ADVANCE 2 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define FUNC_NAME graya_32_to_rgb_48_ia_c #define CONVERT dst[0] = src[0]; \ dst[1] = src[0]; \ dst[2] = src[0]; #include "../csp_packed_packed.h" /* graya_float_to_rgb_48_ia_c */ #define IN_TYPE float #define OUT_TYPE uint16_t #define IN_ADVANCE 2 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define FUNC_NAME graya_float_to_rgb_48_ia_c #define CONVERT RGB_FLOAT_TO_16(src[0], dst[0]); \ RGB_FLOAT_TO_16(src[0], dst[1]); \ RGB_FLOAT_TO_16(src[0], dst[2]); #include "../csp_packed_packed.h" /* */ /* graya_16_to_rgb_float_ia_c */ #define IN_TYPE uint8_t #define OUT_TYPE float #define IN_ADVANCE 2 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define FUNC_NAME graya_16_to_rgb_float_ia_c #define CONVERT dst[0] = RGB_8_TO_FLOAT(src[0]); \ dst[1] = RGB_8_TO_FLOAT(src[0]); \ dst[2] = RGB_8_TO_FLOAT(src[0]); #include "../csp_packed_packed.h" /* graya_32_to_rgb_float_ia_c */ #define IN_TYPE uint16_t #define OUT_TYPE float #define IN_ADVANCE 2 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define FUNC_NAME graya_32_to_rgb_float_ia_c #define CONVERT dst[0] = RGB_16_TO_FLOAT(src[0]); \ dst[1] = RGB_16_TO_FLOAT(src[0]); \ dst[2] = RGB_16_TO_FLOAT(src[0]); #include "../csp_packed_packed.h" /* graya_float_to_rgb_float_ia_c */ #define IN_TYPE float #define OUT_TYPE float #define IN_ADVANCE 2 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define FUNC_NAME graya_float_to_rgb_float_ia_c #define CONVERT dst[0] = src[0]; \ dst[1] = src[0]; \ dst[2] = src[0]; #include "../csp_packed_packed.h" /* GRAYA -> RGB */ /* graya_16_to_rgb_15_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE 2 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME graya_16_to_rgb_15_c #define INIT int tmp; \ INIT_GRAYA_16 #define CONVERT \ GRAYA_16_TO_GRAY_8(src[0], src[1], tmp); \ PACK_8_TO_RGB15(tmp,tmp,tmp,dst[0]) #include "../csp_packed_packed.h" /* graya_16_to_rgb_16_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE 2 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME graya_16_to_rgb_16_c #define INIT int tmp; \ INIT_GRAYA_16 #define CONVERT \ GRAYA_16_TO_GRAY_8(src[0], src[1], tmp); \ PACK_8_TO_RGB16(tmp,tmp,tmp,dst[0]) #include "../csp_packed_packed.h" /* graya_16_to_rgb_24_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 2 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define FUNC_NAME graya_16_to_rgb_24_c #define INIT int tmp; \ INIT_GRAYA_16 #define CONVERT \ GRAYA_16_TO_GRAY_8(src[0], src[1], tmp); \ dst[0] = tmp; \ dst[1] = tmp; \ dst[2] = tmp; #include "../csp_packed_packed.h" /* graya_16_to_rgb_32_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 2 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME graya_16_to_rgb_32_c #define INIT int tmp; \ INIT_GRAYA_16 #define CONVERT \ GRAYA_16_TO_GRAY_8(src[0], src[1], tmp); \ dst[0] = tmp; \ dst[1] = tmp; \ dst[2] = tmp; #include "../csp_packed_packed.h" /* graya_16_to_rgb_48_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE 2 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define FUNC_NAME graya_16_to_rgb_48_c #define INIT int tmp; \ INIT_GRAYA_16 #define CONVERT \ GRAYA_16_TO_GRAY_8(src[0], src[1], tmp); \ tmp = RGB_8_TO_16(tmp); \ dst[0] = tmp; \ dst[1] = tmp; \ dst[2] = tmp; #include "../csp_packed_packed.h" /* graya_16_to_rgb_float_c */ #define IN_TYPE uint8_t #define OUT_TYPE float #define IN_ADVANCE 2 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define FUNC_NAME graya_16_to_rgb_float_c #define INIT int tmp; float tmp_f; \ INIT_GRAYA_16 #define CONVERT \ GRAYA_16_TO_GRAY_8(src[0], src[1], tmp); \ tmp_f = RGB_8_TO_FLOAT(tmp); \ dst[0] = tmp_f; \ dst[1] = tmp_f; \ dst[2] = tmp_f; #include "../csp_packed_packed.h" /* */ /* graya_32_to_rgb_15_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint16_t #define IN_ADVANCE 2 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME graya_32_to_rgb_15_c #define INIT int tmp; \ INIT_GRAYA_32 #define CONVERT \ GRAYA_32_TO_GRAY_16(src[0], src[1], tmp); \ PACK_16_TO_RGB15(tmp,tmp,tmp,dst[0]) #include "../csp_packed_packed.h" /* graya_32_to_rgb_16_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint16_t #define IN_ADVANCE 2 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME graya_32_to_rgb_16_c #define INIT int tmp; \ INIT_GRAYA_32 #define CONVERT \ GRAYA_32_TO_GRAY_16(src[0], src[1], tmp); \ PACK_16_TO_RGB16(tmp,tmp,tmp,dst[0]) #include "../csp_packed_packed.h" /* graya_32_to_rgb_24_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 2 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define FUNC_NAME graya_32_to_rgb_24_c #define INIT int tmp; \ INIT_GRAYA_32 #define CONVERT \ GRAYA_32_TO_GRAY_16(src[0], src[1], tmp); \ RGB_16_TO_8(tmp, dst[0]); \ RGB_16_TO_8(tmp, dst[1]); \ RGB_16_TO_8(tmp, dst[2]); #include "../csp_packed_packed.h" /* graya_32_to_rgb_32_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 2 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME graya_32_to_rgb_32_c #define INIT int tmp; \ INIT_GRAYA_32 #define CONVERT \ GRAYA_32_TO_GRAY_16(src[0], src[1], tmp); \ RGB_16_TO_8(tmp, dst[0]); \ RGB_16_TO_8(tmp, dst[1]); \ RGB_16_TO_8(tmp, dst[2]); #include "../csp_packed_packed.h" /* graya_32_to_rgb_48_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint16_t #define IN_ADVANCE 2 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define FUNC_NAME graya_32_to_rgb_48_c #define INIT int tmp; \ INIT_GRAYA_32 #define CONVERT \ GRAYA_32_TO_GRAY_16(src[0], src[1], tmp); \ dst[0] = tmp; \ dst[1] = tmp; \ dst[2] = tmp; #include "../csp_packed_packed.h" /* graya_32_to_rgb_float_c */ #define IN_TYPE uint16_t #define OUT_TYPE float #define IN_ADVANCE 2 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define FUNC_NAME graya_32_to_rgb_float_c #define INIT int tmp_i; float tmp_f;\ INIT_GRAYA_32 #define CONVERT \ GRAYA_32_TO_GRAY_16(src[0], src[1], tmp_i); \ tmp_f = RGB_16_TO_FLOAT(tmp_i); \ dst[0] = tmp_f; \ dst[1] = tmp_f; \ dst[2] = tmp_f; #include "../csp_packed_packed.h" /* */ /* graya_float_to_rgb_15_c */ #define IN_TYPE float #define OUT_TYPE uint16_t #define IN_ADVANCE 2 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME graya_float_to_rgb_15_c #define INIT int tmp_i; float tmp_f;\ INIT_GRAYA_FLOAT #define CONVERT \ GRAYA_FLOAT_TO_GRAY_FLOAT(src[0], src[1], tmp_f); \ RGB_FLOAT_TO_16(tmp_f, tmp_i); \ PACK_16_TO_RGB15(tmp_i,tmp_i,tmp_i,dst[0]) #include "../csp_packed_packed.h" /* graya_float_to_rgb_16_c */ #define IN_TYPE float #define OUT_TYPE uint16_t #define IN_ADVANCE 2 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME graya_float_to_rgb_16_c #define INIT int tmp_i; float tmp_f; \ INIT_GRAYA_FLOAT #define CONVERT \ GRAYA_FLOAT_TO_GRAY_FLOAT(src[0], src[1], tmp_f); \ RGB_FLOAT_TO_16(tmp_f, tmp_i); \ PACK_16_TO_RGB16(tmp_i,tmp_i,tmp_i,dst[0]) #include "../csp_packed_packed.h" /* graya_float_to_rgb_24_c */ #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 2 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define FUNC_NAME graya_float_to_rgb_24_c #define INIT int tmp_i; float tmp_f; \ INIT_GRAYA_FLOAT #define CONVERT \ GRAYA_FLOAT_TO_GRAY_FLOAT(src[0], src[1], tmp_f); \ RGB_FLOAT_TO_8(tmp_f, tmp_i); \ dst[0] = tmp_i; \ dst[1] = tmp_i; \ dst[2] = tmp_i; #include "../csp_packed_packed.h" /* graya_float_to_rgb_32_c */ #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 2 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME graya_float_to_rgb_32_c #define INIT int tmp_i; float tmp_f; \ INIT_GRAYA_FLOAT #define CONVERT \ GRAYA_FLOAT_TO_GRAY_FLOAT(src[0], src[1], tmp_f); \ RGB_FLOAT_TO_8(tmp_f, tmp_i); \ dst[0] = tmp_i; \ dst[1] = tmp_i; \ dst[2] = tmp_i; #include "../csp_packed_packed.h" /* graya_float_to_rgb_48_c */ #define IN_TYPE float #define OUT_TYPE uint16_t #define IN_ADVANCE 2 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define FUNC_NAME graya_float_to_rgb_48_c #define INIT int tmp_i; float tmp_f; \ INIT_GRAYA_FLOAT #define CONVERT \ GRAYA_FLOAT_TO_GRAY_FLOAT(src[0], src[1], tmp_f); \ RGB_FLOAT_TO_16(tmp_f, tmp_i); \ dst[0] = tmp_i; \ dst[1] = tmp_i; \ dst[2] = tmp_i; #include "../csp_packed_packed.h" /* graya_float_to_rgb_float_c */ #define IN_TYPE float #define OUT_TYPE float #define IN_ADVANCE 2 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define FUNC_NAME graya_float_to_rgb_float_c #define INIT float tmp_f;\ INIT_GRAYA_FLOAT #define CONVERT \ GRAYA_FLOAT_TO_GRAY_FLOAT(src[0], src[1], tmp_f); \ dst[0] = tmp_f; \ dst[1] = tmp_f; \ dst[2] = tmp_f; #include "../csp_packed_packed.h" void gavl_init_gray_rgb_funcs_c(gavl_pixelformat_function_table_t * tab, const gavl_video_options_t * opt) { tab->gray_8_to_rgb_15= gray_8_to_rgb_15_c; tab->gray_8_to_rgb_16= gray_8_to_rgb_16_c; tab->gray_8_to_rgb_24= gray_8_to_rgb_24_c; tab->gray_8_to_rgb_32= gray_8_to_rgb_32_c; tab->gray_8_to_rgba_32= gray_8_to_rgba_32_c; tab->gray_8_to_rgb_48= gray_8_to_rgb_48_c; tab->gray_8_to_rgba_64= gray_8_to_rgba_64_c; tab->gray_8_to_rgb_float= gray_8_to_rgb_float_c; tab->gray_8_to_rgba_float= gray_8_to_rgba_float_c; tab->gray_16_to_rgb_15= gray_16_to_rgb_15_c; tab->gray_16_to_rgb_16= gray_16_to_rgb_16_c; tab->gray_16_to_rgb_24= gray_16_to_rgb_24_c; tab->gray_16_to_rgb_32= gray_16_to_rgb_32_c; tab->gray_16_to_rgba_32= gray_16_to_rgba_32_c; tab->gray_16_to_rgb_48= gray_16_to_rgb_48_c; tab->gray_16_to_rgba_64= gray_16_to_rgba_64_c; tab->gray_16_to_rgb_float= gray_16_to_rgb_float_c; tab->gray_16_to_rgba_float= gray_16_to_rgba_float_c; tab->gray_float_to_rgb_15= gray_float_to_rgb_15_c; tab->gray_float_to_rgb_16= gray_float_to_rgb_16_c; tab->gray_float_to_rgb_24= gray_float_to_rgb_24_c; tab->gray_float_to_rgb_32= gray_float_to_rgb_32_c; tab->gray_float_to_rgba_32= gray_float_to_rgba_32_c; tab->gray_float_to_rgb_48= gray_float_to_rgb_48_c; tab->gray_float_to_rgba_64= gray_float_to_rgba_64_c; tab->gray_float_to_rgb_float= gray_float_to_rgb_float_c; tab->gray_float_to_rgba_float= gray_float_to_rgba_float_c; tab->graya_16_to_rgba_32= graya_16_to_rgba_32_c; tab->graya_16_to_rgba_64= graya_16_to_rgba_64_c; tab->graya_16_to_rgba_float= graya_16_to_rgba_float_c; tab->graya_32_to_rgba_32= graya_32_to_rgba_32_c; tab->graya_32_to_rgba_64= graya_32_to_rgba_64_c; tab->graya_32_to_rgba_float= graya_32_to_rgba_float_c; tab->graya_float_to_rgba_32= graya_float_to_rgba_32_c; tab->graya_float_to_rgba_64= graya_float_to_rgba_64_c; tab->graya_float_to_rgba_float= graya_float_to_rgba_float_c; if(opt->alpha_mode == GAVL_ALPHA_BLEND_COLOR) { tab->graya_16_to_rgb_15= graya_16_to_rgb_15_c; tab->graya_16_to_rgb_16= graya_16_to_rgb_16_c; tab->graya_16_to_rgb_24= graya_16_to_rgb_24_c; tab->graya_16_to_rgb_32= graya_16_to_rgb_32_c; tab->graya_16_to_rgb_48= graya_16_to_rgb_48_c; tab->graya_16_to_rgb_float= graya_16_to_rgb_float_c; tab->graya_32_to_rgb_15= graya_32_to_rgb_15_c; tab->graya_32_to_rgb_16= graya_32_to_rgb_16_c; tab->graya_32_to_rgb_24= graya_32_to_rgb_24_c; tab->graya_32_to_rgb_32= graya_32_to_rgb_32_c; tab->graya_32_to_rgb_48= graya_32_to_rgb_48_c; tab->graya_32_to_rgb_float= graya_32_to_rgb_float_c; tab->graya_float_to_rgb_15= graya_float_to_rgb_15_c; tab->graya_float_to_rgb_16= graya_float_to_rgb_16_c; tab->graya_float_to_rgb_24= graya_float_to_rgb_24_c; tab->graya_float_to_rgb_32= graya_float_to_rgb_32_c; tab->graya_float_to_rgb_48= graya_float_to_rgb_48_c; tab->graya_float_to_rgb_float= graya_float_to_rgb_float_c; } else { tab->graya_16_to_rgb_15= graya_16_to_rgb_15_ia_c; tab->graya_16_to_rgb_16= graya_16_to_rgb_16_ia_c; tab->graya_16_to_rgb_24= graya_16_to_rgb_24_ia_c; tab->graya_16_to_rgb_32= graya_16_to_rgb_32_ia_c; tab->graya_16_to_rgb_48= graya_16_to_rgb_48_ia_c; tab->graya_16_to_rgb_float= graya_16_to_rgb_float_ia_c; tab->graya_32_to_rgb_15= graya_32_to_rgb_15_ia_c; tab->graya_32_to_rgb_16= graya_32_to_rgb_16_ia_c; tab->graya_32_to_rgb_24= graya_32_to_rgb_24_ia_c; tab->graya_32_to_rgb_32= graya_32_to_rgb_32_ia_c; tab->graya_32_to_rgb_48= graya_32_to_rgb_48_ia_c; tab->graya_32_to_rgb_float= graya_32_to_rgb_float_ia_c; tab->graya_float_to_rgb_15= graya_float_to_rgb_15_ia_c; tab->graya_float_to_rgb_16= graya_float_to_rgb_16_ia_c; tab->graya_float_to_rgb_24= graya_float_to_rgb_24_ia_c; tab->graya_float_to_rgb_32= graya_float_to_rgb_32_ia_c; tab->graya_float_to_rgb_48= graya_float_to_rgb_48_ia_c; tab->graya_float_to_rgb_float= graya_float_to_rgb_float_ia_c; } } bplaum-gavl-b9385e3/gavl/c/gray_yuv_c.c000066400000000000000000000764751513252040200177700ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ // #include #include #include #include #include "colorspace_tables.h" #include "colorspace_macros.h" /* Gray -> YUV */ /* gray_8_to_yuy2_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 1 #define OUT_ADVANCE 2 #define NUM_PIXELS 1 #define FUNC_NAME gray_8_to_yuy2_c #define CONVERT dst[0] = YJ_8_TO_Y_8(src[0]);\ dst[1] = 0x80; #include "../csp_packed_packed.h" /* gray_8_to_uyvy_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 1 #define OUT_ADVANCE 2 #define NUM_PIXELS 1 #define FUNC_NAME gray_8_to_uyvy_c #define CONVERT dst[1] = YJ_8_TO_Y_8(src[0]);\ dst[0] = 0x80; #include "../csp_packed_packed.h" /* gray_8_to_yuva_32_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 1 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME gray_8_to_yuva_32_c #define CONVERT dst[0] = YJ_8_TO_Y_8(src[0]);\ dst[1] = 0x80; \ dst[2] = 0x80; \ dst[3] = 0xFF; #include "../csp_packed_packed.h" /* gray_8_to_yuva_64_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE 1 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME gray_8_to_yuva_64_c #define CONVERT dst[0] = YJ_8_TO_Y_16(src[0]);\ dst[1] = 0x8000; \ dst[2] = 0x8000; \ dst[3] = 0xFFFF; #include "../csp_packed_packed.h" /* gray_8_to_yuva_float_c */ #define IN_TYPE uint8_t #define OUT_TYPE float #define IN_ADVANCE 1 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME gray_8_to_yuva_float_c #define CONVERT dst[0] = RGB_8_TO_FLOAT(src[0]);\ dst[1] = 0.0; \ dst[2] = 0.0; \ dst[3] = 1.0; #include "../csp_packed_packed.h" /* gray_8_to_yuv_float_c */ #define IN_TYPE uint8_t #define OUT_TYPE float #define IN_ADVANCE 1 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define FUNC_NAME gray_8_to_yuv_float_c #define CONVERT dst[0] = RGB_8_TO_FLOAT(src[0]);\ dst[1] = 0.0; \ dst[2] = 0.0; #include "../csp_packed_packed.h" /* gray_8_to_y_8_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 1 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME gray_8_to_y_8_c #define CONVERT dst[0] = YJ_8_TO_Y_8(src[0]); #define CLEANUP gavl_video_frame_clear_mask(ctx->output_frame, &ctx->output_format, CLEAR_MASK_PLANE_1 | CLEAR_MASK_PLANE_2); #include "../csp_packed_packed.h" /* gray_8_to_yj_8_c */ static void gray_8_to_yj_8_c(gavl_video_convert_context_t * ctx) { gavl_video_frame_copy(&ctx->input_format, ctx->output_frame, ctx->input_frame); gavl_video_frame_clear_mask(ctx->output_frame, &ctx->output_format, CLEAR_MASK_PLANE_1 | CLEAR_MASK_PLANE_2); } /* gray_8_to_y_16_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE 1 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME gray_8_to_y_16_c #define CONVERT dst[0] = YJ_8_TO_Y_16(src[0]); #define CLEANUP gavl_video_frame_clear_mask(ctx->output_frame, &ctx->output_format, CLEAR_MASK_PLANE_1 | CLEAR_MASK_PLANE_2); #include "../csp_packed_packed.h" /* */ /* gray_16_to_yuy2_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 1 #define OUT_ADVANCE 2 #define NUM_PIXELS 1 #define FUNC_NAME gray_16_to_yuy2_c #define CONVERT YJ_16_TO_Y_8(src[0], dst[0]);\ dst[1] = 0x80; #include "../csp_packed_packed.h" /* gray_16_to_uyvy_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 1 #define OUT_ADVANCE 2 #define NUM_PIXELS 1 #define FUNC_NAME gray_16_to_uyvy_c #define CONVERT YJ_16_TO_Y_8(src[0], dst[1]);\ dst[0] = 0x80; #include "../csp_packed_packed.h" /* gray_16_to_yuva_32_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 1 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME gray_16_to_yuva_32_c #define CONVERT YJ_16_TO_Y_8(src[0], dst[0]);\ dst[1] = 0x80; \ dst[2] = 0x80; \ dst[3] = 0xFF; #include "../csp_packed_packed.h" /* gray_16_to_yuva_64_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint16_t #define IN_ADVANCE 1 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME gray_16_to_yuva_64_c #define CONVERT YJ_16_TO_Y_16(src[0], dst[0]);\ dst[1] = 0x8000; \ dst[2] = 0x8000; \ dst[3] = 0xFFFF; #include "../csp_packed_packed.h" /* gray_16_to_yuva_float_c */ #define IN_TYPE uint16_t #define OUT_TYPE float #define IN_ADVANCE 1 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME gray_16_to_yuva_float_c #define CONVERT dst[0] = RGB_16_TO_FLOAT(src[0]);\ dst[1] = 0.0; \ dst[2] = 0.0; \ dst[3] = 1.0; #include "../csp_packed_packed.h" /* gray_16_to_yuv_float_c */ #define IN_TYPE uint16_t #define OUT_TYPE float #define IN_ADVANCE 1 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define FUNC_NAME gray_16_to_yuv_float_c #define CONVERT dst[0] = RGB_16_TO_FLOAT(src[0]);\ dst[1] = 0.0; \ dst[2] = 0.0; #include "../csp_packed_packed.h" /* gray_16_to_y_8_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 1 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME gray_16_to_y_8_c #define CONVERT YJ_16_TO_Y_8(src[0], dst[0]); #define CLEANUP gavl_video_frame_clear_mask(ctx->output_frame, &ctx->output_format, CLEAR_MASK_PLANE_1 | CLEAR_MASK_PLANE_2); #include "../csp_packed_packed.h" /* gray_16_to_yj_8_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 1 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME gray_16_to_yj_8_c #define CONVERT RGB_16_TO_8(src[0], dst[0]); #define CLEANUP gavl_video_frame_clear_mask(ctx->output_frame, &ctx->output_format, CLEAR_MASK_PLANE_1 | CLEAR_MASK_PLANE_2); #include "../csp_packed_packed.h" /* gray_16_to_y_16_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint16_t #define IN_ADVANCE 1 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME gray_16_to_y_16_c #define CONVERT YJ_16_TO_Y_16(src[0], dst[0]); #define CLEANUP gavl_video_frame_clear_mask(ctx->output_frame, &ctx->output_format, CLEAR_MASK_PLANE_1 | CLEAR_MASK_PLANE_2); #include "../csp_packed_packed.h" /* */ /* gray_float_to_yuy2_c */ #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 1 #define OUT_ADVANCE 2 #define NUM_PIXELS 1 #define FUNC_NAME gray_float_to_yuy2_c #define CONVERT Y_FLOAT_TO_8(src[0], dst[0]);\ dst[1] = 0x80; #include "../csp_packed_packed.h" /* gray_float_to_uyvy_c */ #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 1 #define OUT_ADVANCE 2 #define NUM_PIXELS 1 #define FUNC_NAME gray_float_to_uyvy_c #define CONVERT Y_FLOAT_TO_8(src[0], dst[1]);\ dst[0] = 0x80; #include "../csp_packed_packed.h" /* gray_float_to_yuva_32_c */ #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 1 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME gray_float_to_yuva_32_c #define CONVERT Y_FLOAT_TO_8(src[0], dst[0]);\ dst[1] = 0x80; \ dst[2] = 0x80; \ dst[3] = 0xFF; #include "../csp_packed_packed.h" /* gray_float_to_yuva_64_c */ #define IN_TYPE float #define OUT_TYPE uint16_t #define IN_ADVANCE 1 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME gray_float_to_yuva_64_c #define CONVERT Y_FLOAT_TO_16(src[0], dst[0]);\ dst[1] = 0x8000; \ dst[2] = 0x8000; \ dst[3] = 0xFFFF; #include "../csp_packed_packed.h" /* gray_float_to_yuva_float_c */ #define IN_TYPE float #define OUT_TYPE float #define IN_ADVANCE 1 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME gray_float_to_yuva_float_c #define CONVERT dst[0]= src[0];\ dst[1] = 0.0; \ dst[2] = 0.0; \ dst[3] = 1.0; #include "../csp_packed_packed.h" /* gray_float_to_yuv_float_c */ #define IN_TYPE float #define OUT_TYPE float #define IN_ADVANCE 1 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define FUNC_NAME gray_float_to_yuv_float_c #define CONVERT dst[0]= src[0];\ dst[1] = 0.0; \ dst[2] = 0.0; #include "../csp_packed_packed.h" /* gray_float_to_y_8_c */ #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 1 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME gray_float_to_y_8_c #define CONVERT Y_FLOAT_TO_8(src[0], dst[0]); #define CLEANUP gavl_video_frame_clear_mask(ctx->output_frame, &ctx->output_format, CLEAR_MASK_PLANE_1 | CLEAR_MASK_PLANE_2); #include "../csp_packed_packed.h" /* gray_float_to_yj_8_c */ #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 1 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME gray_float_to_yj_8_c #define CONVERT RGB_FLOAT_TO_8(src[0], dst[0]); #define CLEANUP gavl_video_frame_clear_mask(ctx->output_frame, &ctx->output_format, CLEAR_MASK_PLANE_1 | CLEAR_MASK_PLANE_2); #include "../csp_packed_packed.h" /* gray_float_to_y_16_c */ #define IN_TYPE float #define OUT_TYPE uint16_t #define IN_ADVANCE 1 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME gray_float_to_y_16_c #define CONVERT Y_FLOAT_TO_16(src[0], dst[0]); #define CLEANUP gavl_video_frame_clear_mask(ctx->output_frame, &ctx->output_format, CLEAR_MASK_PLANE_1 | CLEAR_MASK_PLANE_2); #include "../csp_packed_packed.h" /* GRAYA -> YUV Ignoring alpha */ /* graya_16_to_yuy2_ia_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 2 #define OUT_ADVANCE 2 #define NUM_PIXELS 1 #define FUNC_NAME graya_16_to_yuy2_ia_c #define CONVERT dst[0] = YJ_8_TO_Y_8(src[0]);\ dst[1] = 0x80; #include "../csp_packed_packed.h" /* graya_16_to_yuv_float_ia_c */ #define IN_TYPE uint8_t #define OUT_TYPE float #define IN_ADVANCE 2 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define FUNC_NAME graya_16_to_yuv_float_ia_c #define CONVERT dst[0] = RGB_8_TO_FLOAT(src[0]);\ dst[1] = 0.0; \ dst[2] = 0.0; #include "../csp_packed_packed.h" /* graya_16_to_uyvy_ia_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 2 #define OUT_ADVANCE 2 #define NUM_PIXELS 1 #define FUNC_NAME graya_16_to_uyvy_ia_c #define CONVERT dst[1] = YJ_8_TO_Y_8(src[0]);\ dst[0] = 0x80; #include "../csp_packed_packed.h" /* graya_16_to_yuva_32_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 2 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME graya_16_to_yuva_32_c #define CONVERT dst[0] = YJ_8_TO_Y_8(src[0]);\ dst[1] = 0x80; \ dst[2] = 0x80; \ dst[3] = src[1]; #include "../csp_packed_packed.h" /* graya_16_to_yuva_64_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE 2 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME graya_16_to_yuva_64_c #define CONVERT dst[0] = YJ_8_TO_Y_16(src[0]);\ dst[1] = 0x8000; \ dst[2] = 0x8000; \ dst[3] = RGB_8_TO_16(src[1]); #include "../csp_packed_packed.h" /* graya_16_to_yuva_float_c */ #define IN_TYPE uint8_t #define OUT_TYPE float #define IN_ADVANCE 2 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME graya_16_to_yuva_float_c #define CONVERT dst[0] = RGB_8_TO_FLOAT(src[0]);\ dst[1] = 0.0; \ dst[2] = 0.0; \ dst[3] = RGB_8_TO_FLOAT(src[1]); #include "../csp_packed_packed.h" /* graya_16_to_y_8_ia_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 2 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME graya_16_to_y_8_ia_c #define CONVERT dst[0] = YJ_8_TO_Y_8(src[0]); #define CLEANUP gavl_video_frame_clear_mask(ctx->output_frame, &ctx->output_format, CLEAR_MASK_PLANE_1 | CLEAR_MASK_PLANE_2); #include "../csp_packed_packed.h" /* graya_16_to_yj_8_ia_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 2 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME graya_16_to_yj_8_ia_c #define CONVERT dst[0] = src[0]; #define CLEANUP gavl_video_frame_clear_mask(ctx->output_frame, &ctx->output_format, CLEAR_MASK_PLANE_1 | CLEAR_MASK_PLANE_2); #include "../csp_packed_packed.h" /* graya_16_to_y_16_ia_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE 2 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME graya_16_to_y_16_ia_c #define CONVERT dst[0] = YJ_8_TO_Y_16(src[0]); #define CLEANUP gavl_video_frame_clear_mask(ctx->output_frame, &ctx->output_format, CLEAR_MASK_PLANE_1 | CLEAR_MASK_PLANE_2); #include "../csp_packed_packed.h" /* */ /* graya_32_to_yuy2_ia_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 2 #define OUT_ADVANCE 2 #define NUM_PIXELS 1 #define FUNC_NAME graya_32_to_yuy2_ia_c #define CONVERT YJ_16_TO_Y_8(src[0], dst[0]);\ dst[1] = 0x80; #include "../csp_packed_packed.h" /* graya_32_to_yuv_float_ia_c */ #define IN_TYPE uint16_t #define OUT_TYPE float #define IN_ADVANCE 2 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define FUNC_NAME graya_32_to_yuv_float_ia_c #define CONVERT dst[0] = RGB_16_TO_FLOAT(src[0]);\ dst[1] = 0.0;\ dst[2] = 0.0; #include "../csp_packed_packed.h" /* graya_32_to_uyvy_ia_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 2 #define OUT_ADVANCE 2 #define NUM_PIXELS 1 #define FUNC_NAME graya_32_to_uyvy_ia_c #define CONVERT YJ_16_TO_Y_8(src[0], dst[1]);\ dst[0] = 0x80; #include "../csp_packed_packed.h" /* graya_32_to_yuva_32_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 2 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME graya_32_to_yuva_32_c #define CONVERT YJ_16_TO_Y_8(src[0], dst[0]);\ dst[1] = 0x80; \ dst[2] = 0x80; \ RGB_16_TO_8(src[1], dst[3]); #include "../csp_packed_packed.h" /* graya_32_to_yuva_64_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint16_t #define IN_ADVANCE 2 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME graya_32_to_yuva_64_c #define CONVERT YJ_16_TO_Y_16(src[0], dst[0]);\ dst[1] = 0x8000; \ dst[2] = 0x8000; \ dst[3] = src[1]; #include "../csp_packed_packed.h" /* graya_32_to_yuva_float_c */ #define IN_TYPE uint16_t #define OUT_TYPE float #define IN_ADVANCE 2 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME graya_32_to_yuva_float_c #define CONVERT dst[0] = RGB_16_TO_FLOAT(src[0]);\ dst[1] = 0.0; \ dst[2] = 0.0; \ dst[3] = RGB_16_TO_FLOAT(src[1]); #include "../csp_packed_packed.h" /* graya_32_to_y_8_ia_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 2 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME graya_32_to_y_8_ia_c #define CONVERT YJ_16_TO_Y_8(src[0], dst[0]); #define CLEANUP gavl_video_frame_clear_mask(ctx->output_frame, &ctx->output_format, CLEAR_MASK_PLANE_1 | CLEAR_MASK_PLANE_2); #include "../csp_packed_packed.h" /* graya_32_to_yj_8_ia_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 2 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME graya_32_to_yj_8_ia_c #define CONVERT RGB_16_TO_8(src[0], dst[0]); #define CLEANUP gavl_video_frame_clear_mask(ctx->output_frame, &ctx->output_format, CLEAR_MASK_PLANE_1 | CLEAR_MASK_PLANE_2); #include "../csp_packed_packed.h" /* graya_32_to_y_16_ia_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint16_t #define IN_ADVANCE 2 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME graya_32_to_y_16_ia_c #define CONVERT YJ_16_TO_Y_16(src[0], dst[0]); #define CLEANUP gavl_video_frame_clear_mask(ctx->output_frame, &ctx->output_format, CLEAR_MASK_PLANE_1 | CLEAR_MASK_PLANE_2); #include "../csp_packed_packed.h" /* */ /* graya_float_to_yuy2_ia_c */ #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 2 #define OUT_ADVANCE 2 #define NUM_PIXELS 1 #define FUNC_NAME graya_float_to_yuy2_ia_c #define CONVERT Y_FLOAT_TO_8(src[0], dst[0]);\ dst[1] = 0x80; #include "../csp_packed_packed.h" /* graya_float_to_yuv_float_ia_c */ #define IN_TYPE float #define OUT_TYPE float #define IN_ADVANCE 2 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define FUNC_NAME graya_float_to_yuv_float_ia_c #define CONVERT dst[0] = src[0];\ dst[1] = 0.0;\ dst[2] = 0.0; #include "../csp_packed_packed.h" /* graya_float_to_uyvy_ia_c */ #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 2 #define OUT_ADVANCE 2 #define NUM_PIXELS 1 #define FUNC_NAME graya_float_to_uyvy_ia_c #define CONVERT Y_FLOAT_TO_8(src[0], dst[1]);\ dst[0] = 0x80; #include "../csp_packed_packed.h" /* graya_float_to_yuva_32_c */ #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 2 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME graya_float_to_yuva_32_c #define CONVERT Y_FLOAT_TO_8(src[0], dst[0]);\ dst[1] = 0x80; \ dst[2] = 0x80; \ RGB_FLOAT_TO_8(src[1], dst[3]); #include "../csp_packed_packed.h" /* graya_float_to_yuva_64_c */ #define IN_TYPE float #define OUT_TYPE uint16_t #define IN_ADVANCE 2 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME graya_float_to_yuva_64_c #define CONVERT Y_FLOAT_TO_16(src[0], dst[0]);\ dst[1] = 0x8000; \ dst[2] = 0x8000; \ RGB_FLOAT_TO_16(src[1], dst[3]); #include "../csp_packed_packed.h" /* graya_float_to_yuva_float_c */ #define IN_TYPE float #define OUT_TYPE float #define IN_ADVANCE 2 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME graya_float_to_yuva_float_c #define CONVERT dst[0] = src[0];\ dst[1] = 0.0; \ dst[2] = 0.0; \ dst[3] = src[1]; #include "../csp_packed_packed.h" /* graya_float_to_y_8_ia_c */ #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 2 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME graya_float_to_y_8_ia_c #define CONVERT Y_FLOAT_TO_8(src[0], dst[0]); #define CLEANUP gavl_video_frame_clear_mask(ctx->output_frame, &ctx->output_format, CLEAR_MASK_PLANE_1 | CLEAR_MASK_PLANE_2); #include "../csp_packed_packed.h" /* graya_float_to_yj_8_ia_c */ #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 2 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME graya_float_to_yj_8_ia_c #define CONVERT RGB_FLOAT_TO_8(src[0], dst[0]); #define CLEANUP gavl_video_frame_clear_mask(ctx->output_frame, &ctx->output_format, CLEAR_MASK_PLANE_1 | CLEAR_MASK_PLANE_2); #include "../csp_packed_packed.h" /* graya_float_to_y_16_ia_c */ #define IN_TYPE float #define OUT_TYPE uint16_t #define IN_ADVANCE 2 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME graya_float_to_y_16_ia_c #define CONVERT Y_FLOAT_TO_16(src[0], dst[0]); #define CLEANUP gavl_video_frame_clear_mask(ctx->output_frame, &ctx->output_format, CLEAR_MASK_PLANE_1 | CLEAR_MASK_PLANE_2); #include "../csp_packed_packed.h" /* GRAYA -> YUV */ /* graya_16_to_yuy2_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 2 #define OUT_ADVANCE 2 #define NUM_PIXELS 1 #define FUNC_NAME graya_16_to_yuy2_c #define INIT int tmp; \ INIT_GRAYA_16 #define CONVERT \ GRAYA_16_TO_GRAY_8(src[0], src[1], tmp); \ dst[0] = YJ_8_TO_Y_8(tmp); \ dst[1] = 0x80; #include "../csp_packed_packed.h" /* graya_16_to_yuv_float_c */ #define IN_TYPE uint8_t #define OUT_TYPE float #define IN_ADVANCE 2 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define FUNC_NAME graya_16_to_yuv_float_c #define INIT int tmp; \ INIT_GRAYA_16 #define CONVERT \ GRAYA_16_TO_GRAY_8(src[0], src[1], tmp); \ dst[0] = RGB_8_TO_FLOAT(tmp); \ dst[1] = 0.0; \ dst[2] = 0.0; #include "../csp_packed_packed.h" /* graya_16_to_uyvy_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 2 #define OUT_ADVANCE 2 #define NUM_PIXELS 1 #define FUNC_NAME graya_16_to_uyvy_c #define INIT int tmp; \ INIT_GRAYA_16 #define CONVERT \ GRAYA_16_TO_GRAY_8(src[0], src[1], tmp); \ dst[1] = YJ_8_TO_Y_8(tmp); \ dst[0] = 0x80; #include "../csp_packed_packed.h" /* graya_16_to_y_8_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 2 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME graya_16_to_y_8_c #define INIT int tmp; \ INIT_GRAYA_16 #define CONVERT \ GRAYA_16_TO_GRAY_8(src[0], src[1], tmp); \ dst[0] = YJ_8_TO_Y_8(tmp); #define CLEANUP gavl_video_frame_clear_mask(ctx->output_frame, &ctx->output_format, CLEAR_MASK_PLANE_1 | CLEAR_MASK_PLANE_2); #include "../csp_packed_packed.h" /* graya_16_to_yj_8_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 2 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME graya_16_to_yj_8_c #define INIT \ INIT_GRAYA_16 #define CONVERT \ GRAYA_16_TO_GRAY_8(src[0], src[1], dst[0]); #define CLEANUP gavl_video_frame_clear_mask(ctx->output_frame, &ctx->output_format, CLEAR_MASK_PLANE_1 | CLEAR_MASK_PLANE_2); #include "../csp_packed_packed.h" /* graya_16_to_y_16_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE 2 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME graya_16_to_y_16_c #define INIT int tmp; \ INIT_GRAYA_16 #define CONVERT \ GRAYA_16_TO_GRAY_8(src[0], src[1], tmp); \ dst[0] = YJ_8_TO_Y_16(tmp); #define CLEANUP gavl_video_frame_clear_mask(ctx->output_frame, &ctx->output_format, CLEAR_MASK_PLANE_1 | CLEAR_MASK_PLANE_2); #include "../csp_packed_packed.h" /* */ /* graya_32_to_yuy2_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 2 #define OUT_ADVANCE 2 #define NUM_PIXELS 1 #define FUNC_NAME graya_32_to_yuy2_c #define INIT int tmp; \ INIT_GRAYA_32 #define CONVERT \ GRAYA_32_TO_GRAY_16(src[0], src[1], tmp); \ YJ_16_TO_Y_8(tmp, dst[0]); \ dst[1] = 0x80; #include "../csp_packed_packed.h" /* graya_32_to_yuv_float_c */ #define IN_TYPE uint16_t #define OUT_TYPE float #define IN_ADVANCE 2 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define FUNC_NAME graya_32_to_yuv_float_c #define INIT int tmp; \ INIT_GRAYA_32 #define CONVERT \ GRAYA_32_TO_GRAY_16(src[0], src[1], tmp); \ dst[0] = RGB_16_TO_FLOAT(tmp); \ dst[1] = 0.0;\ dst[2] = 0.0; #include "../csp_packed_packed.h" /* graya_32_to_uyvy_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 2 #define OUT_ADVANCE 2 #define NUM_PIXELS 1 #define FUNC_NAME graya_32_to_uyvy_c #define INIT int tmp; \ INIT_GRAYA_32 #define CONVERT \ GRAYA_32_TO_GRAY_16(src[0], src[1], tmp); \ YJ_16_TO_Y_8(tmp, dst[1]); \ dst[0] = 0x80; #include "../csp_packed_packed.h" /* graya_32_to_y_8_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 2 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME graya_32_to_y_8_c #define INIT int tmp; \ INIT_GRAYA_32 #define CONVERT \ GRAYA_32_TO_GRAY_16(src[0], src[1], tmp); \ YJ_16_TO_Y_8(tmp, dst[0]); #define CLEANUP gavl_video_frame_clear_mask(ctx->output_frame, &ctx->output_format, CLEAR_MASK_PLANE_1 | CLEAR_MASK_PLANE_2); #include "../csp_packed_packed.h" /* graya_32_to_yj_8_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 2 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME graya_32_to_yj_8_c #define INIT int tmp; \ INIT_GRAYA_32 #define CONVERT \ GRAYA_32_TO_GRAY_16(src[0], src[1], tmp); \ RGB_16_TO_8(tmp, dst[0]); #define CLEANUP gavl_video_frame_clear_mask(ctx->output_frame, &ctx->output_format, CLEAR_MASK_PLANE_1 | CLEAR_MASK_PLANE_2); #include "../csp_packed_packed.h" /* graya_32_to_y_16_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint16_t #define IN_ADVANCE 2 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME graya_32_to_y_16_c #define INIT int tmp; \ INIT_GRAYA_32 #define CONVERT \ GRAYA_32_TO_GRAY_16(src[0], src[1], tmp); \ YJ_16_TO_Y_16(tmp, dst[0]); #define CLEANUP gavl_video_frame_clear_mask(ctx->output_frame, &ctx->output_format, CLEAR_MASK_PLANE_1 | CLEAR_MASK_PLANE_2); #include "../csp_packed_packed.h" /* */ /* graya_float_to_yuy2_c */ #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 2 #define OUT_ADVANCE 2 #define NUM_PIXELS 1 #define FUNC_NAME graya_float_to_yuy2_c #define INIT float tmp; \ INIT_GRAYA_FLOAT #define CONVERT \ GRAYA_FLOAT_TO_GRAY_FLOAT(src[0], src[1], tmp); \ Y_FLOAT_TO_8(tmp, dst[0]); \ dst[1] = 0x80; #include "../csp_packed_packed.h" /* graya_float_to_yuv_float_c */ #define IN_TYPE float #define OUT_TYPE float #define IN_ADVANCE 2 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define FUNC_NAME graya_float_to_yuv_float_c #define INIT \ INIT_GRAYA_FLOAT #define CONVERT \ GRAYA_FLOAT_TO_GRAY_FLOAT(src[0], src[1], dst[0]); \ dst[1] = 0.0;\ dst[2] = 0.0; #include "../csp_packed_packed.h" /* graya_float_to_uyvy_c */ #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 2 #define OUT_ADVANCE 2 #define NUM_PIXELS 1 #define FUNC_NAME graya_float_to_uyvy_c #define INIT float tmp; \ INIT_GRAYA_FLOAT #define CONVERT \ GRAYA_FLOAT_TO_GRAY_FLOAT(src[0], src[1], tmp); \ Y_FLOAT_TO_8(tmp, dst[1]); \ dst[0] = 0x80; #include "../csp_packed_packed.h" /* graya_float_to_y_8_c */ #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 2 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME graya_float_to_y_8_c #define INIT float tmp; \ INIT_GRAYA_FLOAT #define CONVERT \ GRAYA_FLOAT_TO_GRAY_FLOAT(src[0], src[1], tmp); \ Y_FLOAT_TO_8(tmp, dst[0]); #define CLEANUP gavl_video_frame_clear_mask(ctx->output_frame, &ctx->output_format, CLEAR_MASK_PLANE_1 | CLEAR_MASK_PLANE_2); #include "../csp_packed_packed.h" /* graya_float_to_yj_8_c */ #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 2 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME graya_float_to_yj_8_c #define INIT float tmp; \ INIT_GRAYA_FLOAT #define CONVERT \ GRAYA_FLOAT_TO_GRAY_FLOAT(src[0], src[1], tmp);\ YJ_FLOAT_TO_8(tmp, dst[0]); #define CLEANUP gavl_video_frame_clear_mask(ctx->output_frame, &ctx->output_format, CLEAR_MASK_PLANE_1 | CLEAR_MASK_PLANE_2); #include "../csp_packed_packed.h" /* graya_float_to_y_16_c */ #define IN_TYPE float #define OUT_TYPE uint16_t #define IN_ADVANCE 2 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME graya_float_to_y_16_c #define INIT float tmp; \ INIT_GRAYA_FLOAT #define CONVERT \ GRAYA_FLOAT_TO_GRAY_FLOAT(src[0], src[1], tmp); \ Y_FLOAT_TO_16(tmp, dst[0]); #define CLEANUP gavl_video_frame_clear_mask(ctx->output_frame, &ctx->output_format, CLEAR_MASK_PLANE_1 | CLEAR_MASK_PLANE_2); #include "../csp_packed_packed.h" void gavl_init_gray_yuv_funcs_c(gavl_pixelformat_function_table_t * tab, const gavl_video_options_t * opt) { if(opt->alpha_mode == GAVL_ALPHA_BLEND_COLOR) { tab->graya_16_to_yuy2 = graya_16_to_yuy2_c; tab->graya_16_to_uyvy = graya_16_to_uyvy_c; tab->graya_16_to_y_8 = graya_16_to_y_8_c; tab->graya_16_to_yj_8 = graya_16_to_yj_8_c; tab->graya_16_to_y_16 = graya_16_to_y_16_c; tab->graya_32_to_yuy2 = graya_32_to_yuy2_c; tab->graya_32_to_uyvy = graya_32_to_uyvy_c; tab->graya_32_to_y_8 = graya_32_to_y_8_c; tab->graya_32_to_yj_8 = graya_32_to_yj_8_c; tab->graya_32_to_y_16 = graya_32_to_y_16_c; tab->graya_float_to_yuy2 = graya_float_to_yuy2_c; tab->graya_float_to_uyvy = graya_float_to_uyvy_c; tab->graya_float_to_y_8 = graya_float_to_y_8_c; tab->graya_float_to_yj_8 = graya_float_to_yj_8_c; tab->graya_float_to_y_16 = graya_float_to_y_16_c; tab->graya_16_to_yuv_float = graya_16_to_yuv_float_c; tab->graya_32_to_yuv_float = graya_32_to_yuv_float_c; tab->graya_float_to_yuv_float = graya_float_to_yuv_float_c; } else { tab->graya_16_to_yuy2 = graya_16_to_yuy2_ia_c; tab->graya_16_to_uyvy = graya_16_to_uyvy_ia_c; tab->graya_16_to_y_8 = graya_16_to_y_8_ia_c; tab->graya_16_to_yj_8 = graya_16_to_yj_8_ia_c; tab->graya_16_to_y_16 = graya_16_to_y_16_ia_c; tab->graya_32_to_yuy2 = graya_32_to_yuy2_ia_c; tab->graya_32_to_uyvy = graya_32_to_uyvy_ia_c; tab->graya_32_to_y_8 = graya_32_to_y_8_ia_c; tab->graya_32_to_yj_8 = graya_32_to_yj_8_ia_c; tab->graya_32_to_y_16 = graya_32_to_y_16_ia_c; tab->graya_float_to_yuy2 = graya_float_to_yuy2_ia_c; tab->graya_float_to_uyvy = graya_float_to_uyvy_ia_c; tab->graya_float_to_y_8 = graya_float_to_y_8_ia_c; tab->graya_float_to_yj_8 = graya_float_to_yj_8_ia_c; tab->graya_float_to_y_16 = graya_float_to_y_16_ia_c; tab->graya_16_to_yuv_float = graya_16_to_yuv_float_ia_c; tab->graya_32_to_yuv_float = graya_32_to_yuv_float_ia_c; tab->graya_float_to_yuv_float = graya_float_to_yuv_float_ia_c; } tab->gray_8_to_yuy2 = gray_8_to_yuy2_c; tab->gray_8_to_yuva_32 = gray_8_to_yuva_32_c; tab->gray_8_to_uyvy = gray_8_to_uyvy_c; tab->gray_8_to_y_8 = gray_8_to_y_8_c; tab->gray_8_to_yj_8 = gray_8_to_yj_8_c; tab->gray_8_to_y_16 = gray_8_to_y_16_c; tab->gray_8_to_yuva_64 = gray_8_to_yuva_64_c; tab->gray_8_to_yuva_float = gray_8_to_yuva_float_c; tab->gray_8_to_yuv_float = gray_8_to_yuv_float_c; tab->gray_16_to_yuy2 = gray_16_to_yuy2_c; tab->gray_16_to_yuva_32 = gray_16_to_yuva_32_c; tab->gray_16_to_uyvy = gray_16_to_uyvy_c; tab->gray_16_to_y_8 = gray_16_to_y_8_c; tab->gray_16_to_yj_8 = gray_16_to_yj_8_c; tab->gray_16_to_y_16 = gray_16_to_y_16_c; tab->gray_16_to_yuva_64 = gray_16_to_yuva_64_c; tab->gray_16_to_yuva_float = gray_16_to_yuva_float_c; tab->gray_16_to_yuv_float = gray_16_to_yuv_float_c; tab->gray_float_to_yuy2 = gray_float_to_yuy2_c; tab->gray_float_to_yuva_32 = gray_float_to_yuva_32_c; tab->gray_float_to_uyvy = gray_float_to_uyvy_c; tab->gray_float_to_y_8 = gray_float_to_y_8_c; tab->gray_float_to_yj_8 = gray_float_to_yj_8_c; tab->gray_float_to_y_16 = gray_float_to_y_16_c; tab->gray_float_to_yuva_64 = gray_float_to_yuva_64_c; tab->gray_float_to_yuva_float = gray_float_to_yuva_float_c; tab->gray_float_to_yuv_float = gray_float_to_yuv_float_c; tab->graya_16_to_yuva_32 = graya_16_to_yuva_32_c; tab->graya_16_to_yuva_64 = graya_16_to_yuva_64_c; tab->graya_16_to_yuva_float = graya_16_to_yuva_float_c; tab->graya_32_to_yuva_32 = graya_32_to_yuva_32_c; tab->graya_32_to_yuva_64 = graya_32_to_yuva_64_c; tab->graya_32_to_yuva_float = graya_32_to_yuva_float_c; tab->graya_float_to_yuva_32 = graya_float_to_yuva_32_c; tab->graya_float_to_yuva_64 = graya_float_to_yuva_64_c; tab->graya_float_to_yuva_float = graya_float_to_yuva_float_c; } bplaum-gavl-b9385e3/gavl/c/interleave_c.c000066400000000000000000000104511513252040200202370ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include #include #include #define SAMPLE_TYPE uint8_t #define RENAME(a) a ## _8 #define SRC(c,s) (ctx->input_frame->channels.u_8[c][s]) #define DST(c,s) (ctx->output_frame->channels.u_8[c][s]) #include "_interleave_c.c" #undef SAMPLE_TYPE #undef RENAME #undef SRC #undef DST #define SAMPLE_TYPE uint16_t #define RENAME(a) a ## _16 #define SRC(c,s) (ctx->input_frame->channels.u_16[c][s]) #define DST(c,s) (ctx->output_frame->channels.u_16[c][s]) #include "_interleave_c.c" #undef SAMPLE_TYPE #undef RENAME #undef SRC #undef DST #define SAMPLE_TYPE uint32_t #define RENAME(a) a ## _32 #define SRC(c,s) (ctx->input_frame->channels.u_32[c][s]) #define DST(c,s) (ctx->output_frame->channels.u_32[c][s]) #include "_interleave_c.c" #undef SAMPLE_TYPE #undef RENAME #undef SRC #undef DST #define SAMPLE_TYPE double #define RENAME(a) a ## _64 #define SRC(c,s) (ctx->input_frame->channels.d[c][s]) #define DST(c,s) (ctx->output_frame->channels.d[c][s]) #include "_interleave_c.c" #undef SAMPLE_TYPE #undef RENAME #undef SRC #undef DST void gavl_init_interleave_funcs_c(gavl_interleave_table_t * t) { /* 8 bit versions */ t->interleave_none_to_all_8 = interleave_none_to_all_8; t->interleave_none_to_all_stereo_8 = interleave_none_to_all_stereo_8; t->interleave_all_to_none_8 = interleave_all_to_none_8; t->interleave_all_to_none_stereo_8 = interleave_all_to_none_stereo_8; t->interleave_2_to_all_8 = interleave_2_to_all_8; t->interleave_2_to_none_8 = interleave_2_to_none_8; t->interleave_all_to_2_8 = interleave_all_to_2_8; t->interleave_none_to_2_8 = interleave_none_to_2_8; /* 16 bit versions */ t->interleave_none_to_all_16 = interleave_none_to_all_16; t->interleave_none_to_all_stereo_16 = interleave_none_to_all_stereo_16; t->interleave_all_to_none_16 = interleave_all_to_none_16; t->interleave_all_to_none_stereo_16 = interleave_all_to_none_stereo_16; t->interleave_2_to_all_16 = interleave_2_to_all_16; t->interleave_2_to_none_16 = interleave_2_to_none_16; t->interleave_all_to_2_16 = interleave_all_to_2_16; t->interleave_none_to_2_16 = interleave_none_to_2_16; /* 32 bit versions */ t->interleave_none_to_all_32 = interleave_none_to_all_32; t->interleave_none_to_all_stereo_32 = interleave_none_to_all_stereo_32; t->interleave_all_to_none_32 = interleave_all_to_none_32; t->interleave_all_to_none_stereo_32 = interleave_all_to_none_stereo_32; t->interleave_2_to_all_32 = interleave_2_to_all_32; t->interleave_2_to_none_32 = interleave_2_to_none_32; t->interleave_all_to_2_32 = interleave_all_to_2_32; t->interleave_none_to_2_32 = interleave_none_to_2_32; /* 64 bit versions */ t->interleave_none_to_all_64 = interleave_none_to_all_64; t->interleave_none_to_all_stereo_64 = interleave_none_to_all_stereo_64; t->interleave_all_to_none_64 = interleave_all_to_none_64; t->interleave_all_to_none_stereo_64 = interleave_all_to_none_stereo_64; t->interleave_2_to_all_64 = interleave_2_to_all_64; t->interleave_2_to_none_64 = interleave_2_to_none_64; t->interleave_all_to_2_64 = interleave_all_to_2_64; t->interleave_none_to_2_64 = interleave_none_to_2_64; } bplaum-gavl-b9385e3/gavl/c/mix.c000066400000000000000000000036031513252040200163750ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ /***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2012 Members of the Gmerlin project * gmerlin-general@lists.sourceforge.net * http://gmerlin.sourceforge.net * * 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, see . * *****************************************************************/ bplaum-gavl-b9385e3/gavl/c/mix_c.c000066400000000000000000000200061513252040200166730ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include #define SWAP_SIGN_16(i) (i^0x8000) #define SWAP_SIGN_8(i) (i^0x80) #define CLAMP(num, min, max) if(num>max)num=max;if(numinputs[i].index /* Signed 8 */ #define RENAME(a) a ## _s8 #define SRC(i,j) input_frame->channels.s_8[SRC_INDEX(i)][j] #define SETDST(i,val) output_frame->channels.s_8[channel->index][i]=val #define FACTOR(i) channel->inputs[i].factor.f_int #define SAMPLE_TYPE int8_t #define TMP_TYPE int #define ADJUST_TMP(i) i/=0x100;CLAMP(i, INT8_MIN, INT8_MAX) #include "_mix_c.c" #undef RENAME #undef SRC #undef SETDST /* Unsigned 8 */ #define RENAME(a) a ## _u8 #define SRC(i,j) SWAP_SIGN_8(input_frame->channels.s_8[SRC_INDEX(i)][j]) #define SETDST(i,val) output_frame->channels.s_8[channel->index][i]= SWAP_SIGN_8(val) #include "_mix_c.c" #undef RENAME #undef SRC #undef SETDST #undef FACTOR #undef SAMPLE_TYPE #undef TMP_TYPE #undef ADJUST_TMP /* Signed 16 */ #define RENAME(a) a ## _s16 #define SRC(i,j) input_frame->channels.s_16[SRC_INDEX(i)][j] #define SETDST(i,val) output_frame->channels.s_16[channel->index][i]=val #define FACTOR(i) channel->inputs[i].factor.f_int #define SAMPLE_TYPE int16_t #define TMP_TYPE int #define ADJUST_TMP(i) i/=0x10000;CLAMP(i, INT16_MIN, INT16_MAX) #include "_mix_c.c" #undef RENAME #undef SRC #undef SETDST /* Unsigned 16 */ #define RENAME(a) a ## _u16 #define SRC(i,j) SWAP_SIGN_16(input_frame->channels.s_16[SRC_INDEX(i)][j]) #define SETDST(i,val) output_frame->channels.s_16[channel->index][i]= SWAP_SIGN_16(val) #include "_mix_c.c" #undef RENAME #undef SRC #undef SETDST #undef FACTOR #undef SAMPLE_TYPE #undef TMP_TYPE #undef ADJUST_TMP /* Signed 32 */ #define RENAME(a) a ## _s32 #define SRC(i,j) input_frame->channels.s_32[SRC_INDEX(i)][j] #define SETDST(i,val) output_frame->channels.s_32[channel->index][i]=val #define FACTOR(i) channel->inputs[i].factor.f_int #define SAMPLE_TYPE int32_t #define TMP_TYPE int64_t #define ADJUST_TMP(i) i/=0x80000000LL;CLAMP(i, INT32_MIN, INT32_MAX) #include "_mix_c.c" #undef RENAME #undef SRC #undef SETDST #undef FACTOR #undef SAMPLE_TYPE #undef TMP_TYPE #undef ADJUST_TMP /* Float */ #define RENAME(a) a ## _float #define SRC(i,j) input_frame->channels.f[SRC_INDEX(i)][j] #define SETDST(i,val) output_frame->channels.f[channel->index][i]=val #define FACTOR(i) channel->inputs[i].factor.f_float #define SAMPLE_TYPE float #define TMP_TYPE float #define ADJUST_TMP(i) CLAMP(i, -1.0f, 1.0f) #include "_mix_c.c" #undef RENAME #undef SRC #undef SETDST #undef FACTOR #undef SAMPLE_TYPE #undef TMP_TYPE #undef ADJUST_TMP /* Double */ #define RENAME(a) a ## _double #define SRC(i,j) input_frame->channels.d[SRC_INDEX(i)][j] #define SETDST(i,val) output_frame->channels.d[channel->index][i]=val #define FACTOR(i) channel->inputs[i].factor.f_float #define SAMPLE_TYPE double #define TMP_TYPE double #define ADJUST_TMP(i) CLAMP(i, -1.0, 1.0) #include "_mix_c.c" #undef RENAME #undef SRC #undef SETDST #undef FACTOR #undef SAMPLE_TYPE #undef TMP_TYPE #undef ADJUST_TMP /* Copy routines */ static void copy_8(gavl_mix_output_channel_t * channel, const gavl_audio_frame_t * input_frame, gavl_audio_frame_t * output_frame) { gavl_memcpy(output_frame->channels.s_8[channel->index], input_frame->channels.s_8[SRC_INDEX(0)], input_frame->valid_samples); } static void copy_16(gavl_mix_output_channel_t * channel, const gavl_audio_frame_t * input_frame, gavl_audio_frame_t * output_frame) { gavl_memcpy(output_frame->channels.s_16[channel->index], input_frame->channels.s_16[SRC_INDEX(0)], input_frame->valid_samples*2); } static void copy_32(gavl_mix_output_channel_t * channel, const gavl_audio_frame_t * input_frame, gavl_audio_frame_t * output_frame) { gavl_memcpy(output_frame->channels.s_32[channel->index], input_frame->channels.s_32[SRC_INDEX(0)], input_frame->valid_samples*4); } static void copy_64(gavl_mix_output_channel_t * channel, const gavl_audio_frame_t * input_frame, gavl_audio_frame_t * output_frame) { gavl_memcpy(output_frame->channels.d[channel->index], input_frame->channels.d[SRC_INDEX(0)], input_frame->valid_samples*8); } void gavl_setup_mix_funcs_c(gavl_mixer_table_t * t, gavl_audio_format_t * f) { int bytes_per_sample; bytes_per_sample = gavl_bytes_per_sample(f->sample_format); switch(bytes_per_sample) { case 1: t->copy_func = copy_8; break; case 2: t->copy_func = copy_16; break; case 4: t->copy_func = copy_32; break; case 8: t->copy_func = copy_64; break; } switch(f->sample_format) { case GAVL_SAMPLE_U8: t->mix_1_to_1 = mix_1_to_1_u8; t->mix_2_to_1 = mix_2_to_1_u8; t->mix_3_to_1 = mix_3_to_1_u8; t->mix_4_to_1 = mix_4_to_1_u8; t->mix_5_to_1 = mix_5_to_1_u8; t->mix_6_to_1 = mix_6_to_1_u8; t->mix_all_to_1 = mix_all_to_1_u8; break; case GAVL_SAMPLE_S8: t->mix_1_to_1 = mix_1_to_1_s8; t->mix_2_to_1 = mix_2_to_1_s8; t->mix_3_to_1 = mix_3_to_1_s8; t->mix_4_to_1 = mix_4_to_1_s8; t->mix_5_to_1 = mix_5_to_1_s8; t->mix_6_to_1 = mix_6_to_1_s8; t->mix_all_to_1 = mix_all_to_1_s8; break; case GAVL_SAMPLE_U16: t->mix_1_to_1 = mix_1_to_1_u16; t->mix_2_to_1 = mix_2_to_1_u16; t->mix_3_to_1 = mix_3_to_1_u16; t->mix_4_to_1 = mix_4_to_1_u16; t->mix_5_to_1 = mix_5_to_1_u16; t->mix_6_to_1 = mix_6_to_1_u16; t->mix_all_to_1 = mix_all_to_1_u16; case GAVL_SAMPLE_S16: t->mix_1_to_1 = mix_1_to_1_s16; t->mix_2_to_1 = mix_2_to_1_s16; t->mix_3_to_1 = mix_3_to_1_s16; t->mix_4_to_1 = mix_4_to_1_s16; t->mix_5_to_1 = mix_5_to_1_s16; t->mix_6_to_1 = mix_6_to_1_s16; t->mix_all_to_1 = mix_all_to_1_s16; break; case GAVL_SAMPLE_S32: t->mix_1_to_1 = mix_1_to_1_s32; t->mix_2_to_1 = mix_2_to_1_s32; t->mix_3_to_1 = mix_3_to_1_s32; t->mix_4_to_1 = mix_4_to_1_s32; t->mix_5_to_1 = mix_5_to_1_s32; t->mix_6_to_1 = mix_6_to_1_s32; t->mix_all_to_1 = mix_all_to_1_s32; break; case GAVL_SAMPLE_FLOAT: t->mix_1_to_1 = mix_1_to_1_float; t->mix_2_to_1 = mix_2_to_1_float; t->mix_3_to_1 = mix_3_to_1_float; t->mix_4_to_1 = mix_4_to_1_float; t->mix_5_to_1 = mix_5_to_1_float; t->mix_6_to_1 = mix_6_to_1_float; t->mix_all_to_1 = mix_all_to_1_float; break; case GAVL_SAMPLE_DOUBLE: t->mix_1_to_1 = mix_1_to_1_double; t->mix_2_to_1 = mix_2_to_1_double; t->mix_3_to_1 = mix_3_to_1_double; t->mix_4_to_1 = mix_4_to_1_double; t->mix_5_to_1 = mix_5_to_1_double; t->mix_6_to_1 = mix_6_to_1_double; t->mix_all_to_1 = mix_all_to_1_double; break; case GAVL_SAMPLE_NONE: break; } } bplaum-gavl-b9385e3/gavl/c/rgb_gray_c.c000066400000000000000000001063131513252040200177000ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ // #include #include #include #include #include "colorspace_tables.h" #include "colorspace_macros.h" /* rgb_15_to_gray_8_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 1 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME rgb_15_to_gray_8_c #define CONVERT RGB_24_TO_YJ_8(RGB15_TO_R_8(src[0]), \ RGB15_TO_G_8(src[0]), \ RGB15_TO_B_8(src[0]), \ dst[0]) #include "../csp_packed_packed.h" /* bgr_15_to_gray_8_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 1 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME bgr_15_to_gray_8_c #define CONVERT RGB_24_TO_YJ_8(BGR15_TO_R_8(src[0]), \ BGR15_TO_G_8(src[0]), \ BGR15_TO_B_8(src[0]), \ dst[0]) #include "../csp_packed_packed.h" /* rgb_16_to_gray_8_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 1 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME rgb_16_to_gray_8_c #define CONVERT RGB_24_TO_YJ_8(RGB16_TO_R_8(src[0]), \ RGB16_TO_G_8(src[0]), \ RGB16_TO_B_8(src[0]), \ dst[0]) #include "../csp_packed_packed.h" /* bgr_16_to_gray_8_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 1 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME bgr_16_to_gray_8_c #define CONVERT RGB_24_TO_YJ_8(BGR16_TO_R_8(src[0]), \ BGR16_TO_G_8(src[0]), \ BGR16_TO_B_8(src[0]), \ dst[0]) #include "../csp_packed_packed.h" /* */ /* rgb_15_to_gray_16_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint16_t #define IN_ADVANCE 1 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME rgb_15_to_gray_16_c #define CONVERT RGB_24_TO_YJ_16(RGB15_TO_R_8(src[0]), \ RGB15_TO_G_8(src[0]), \ RGB15_TO_B_8(src[0]), \ dst[0]) #include "../csp_packed_packed.h" /* bgr_15_to_gray_16_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint16_t #define IN_ADVANCE 1 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME bgr_15_to_gray_16_c #define CONVERT RGB_24_TO_YJ_16(BGR15_TO_R_8(src[0]), \ BGR15_TO_G_8(src[0]), \ BGR15_TO_B_8(src[0]), \ dst[0]) #include "../csp_packed_packed.h" /* rgb_16_to_gray_16_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint16_t #define IN_ADVANCE 1 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME rgb_16_to_gray_16_c #define CONVERT RGB_24_TO_YJ_16(RGB16_TO_R_8(src[0]), \ RGB16_TO_G_8(src[0]), \ RGB16_TO_B_8(src[0]), \ dst[0]) #include "../csp_packed_packed.h" /* bgr_16_to_gray_16_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint16_t #define IN_ADVANCE 1 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME bgr_16_to_gray_16_c #define CONVERT RGB_24_TO_YJ_16(BGR16_TO_R_8(src[0]), \ BGR16_TO_G_8(src[0]), \ BGR16_TO_B_8(src[0]), \ dst[0]) #include "../csp_packed_packed.h" /* */ /* rgb_15_to_gray_float_c */ #define IN_TYPE uint16_t #define OUT_TYPE float #define IN_ADVANCE 1 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME rgb_15_to_gray_float_c #define CONVERT RGB_24_TO_Y_FLOAT(RGB15_TO_R_8(src[0]), \ RGB15_TO_G_8(src[0]), \ RGB15_TO_B_8(src[0]), \ dst[0]) #include "../csp_packed_packed.h" /* bgr_15_to_gray_float_c */ #define IN_TYPE uint16_t #define OUT_TYPE float #define IN_ADVANCE 1 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME bgr_15_to_gray_float_c #define CONVERT RGB_24_TO_Y_FLOAT(BGR15_TO_R_8(src[0]), \ BGR15_TO_G_8(src[0]), \ BGR15_TO_B_8(src[0]), \ dst[0]) #include "../csp_packed_packed.h" /* rgb_16_to_gray_float_c */ #define IN_TYPE uint16_t #define OUT_TYPE float #define IN_ADVANCE 1 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME rgb_16_to_gray_float_c #define CONVERT RGB_24_TO_Y_FLOAT(RGB16_TO_R_8(src[0]), \ RGB16_TO_G_8(src[0]), \ RGB16_TO_B_8(src[0]), \ dst[0]) #include "../csp_packed_packed.h" /* bgr_16_to_gray_float_c */ #define IN_TYPE uint16_t #define OUT_TYPE float #define IN_ADVANCE 1 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME bgr_16_to_gray_float_c #define CONVERT RGB_24_TO_Y_FLOAT(BGR16_TO_R_8(src[0]), \ BGR16_TO_G_8(src[0]), \ BGR16_TO_B_8(src[0]), \ dst[0]) #include "../csp_packed_packed.h" /* RGB 15/16 to graya */ /* rgb_15_to_graya_16_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 1 #define OUT_ADVANCE 2 #define NUM_PIXELS 1 #define FUNC_NAME rgb_15_to_graya_16_c #define CONVERT RGB_24_TO_YJ_8(RGB15_TO_R_8(src[0]), \ RGB15_TO_G_8(src[0]), \ RGB15_TO_B_8(src[0]), \ dst[0]) \ dst[1] = 0Xff; #include "../csp_packed_packed.h" /* bgr_15_to_graya_16_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 1 #define OUT_ADVANCE 2 #define NUM_PIXELS 1 #define FUNC_NAME bgr_15_to_graya_16_c #define CONVERT RGB_24_TO_YJ_8(BGR15_TO_R_8(src[0]), \ BGR15_TO_G_8(src[0]), \ BGR15_TO_B_8(src[0]), \ dst[0]) \ dst[1] = 0Xff; #include "../csp_packed_packed.h" /* rgb_16_to_graya_16_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 1 #define OUT_ADVANCE 2 #define NUM_PIXELS 1 #define FUNC_NAME rgb_16_to_graya_16_c #define CONVERT RGB_24_TO_YJ_8(RGB16_TO_R_8(src[0]), \ RGB16_TO_G_8(src[0]), \ RGB16_TO_B_8(src[0]), \ dst[0]) \ dst[1] = 0Xff; #include "../csp_packed_packed.h" /* bgr_16_to_graya_16_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 1 #define OUT_ADVANCE 2 #define NUM_PIXELS 1 #define FUNC_NAME bgr_16_to_graya_16_c #define CONVERT RGB_24_TO_YJ_8(BGR16_TO_R_8(src[0]), \ BGR16_TO_G_8(src[0]), \ BGR16_TO_B_8(src[0]), \ dst[0]) \ dst[1] = 0Xff; #include "../csp_packed_packed.h" /* */ /* rgb_15_to_graya_32_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint16_t #define IN_ADVANCE 1 #define OUT_ADVANCE 2 #define NUM_PIXELS 1 #define FUNC_NAME rgb_15_to_graya_32_c #define CONVERT RGB_24_TO_YJ_16(RGB15_TO_R_8(src[0]), \ RGB15_TO_G_8(src[0]), \ RGB15_TO_B_8(src[0]), \ dst[0]) \ dst[1] = 0Xffff; #include "../csp_packed_packed.h" /* bgr_15_to_graya_32_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint16_t #define IN_ADVANCE 1 #define OUT_ADVANCE 2 #define NUM_PIXELS 1 #define FUNC_NAME bgr_15_to_graya_32_c #define CONVERT RGB_24_TO_YJ_16(BGR15_TO_R_8(src[0]), \ BGR15_TO_G_8(src[0]), \ BGR15_TO_B_8(src[0]), \ dst[0]) \ dst[1] = 0Xffff; #include "../csp_packed_packed.h" /* rgb_16_to_graya_32_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint16_t #define IN_ADVANCE 1 #define OUT_ADVANCE 2 #define NUM_PIXELS 1 #define FUNC_NAME rgb_16_to_graya_32_c #define CONVERT RGB_24_TO_YJ_16(RGB16_TO_R_8(src[0]), \ RGB16_TO_G_8(src[0]), \ RGB16_TO_B_8(src[0]), \ dst[0]) \ dst[1] = 0Xffff; #include "../csp_packed_packed.h" /* bgr_16_to_graya_32_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint16_t #define IN_ADVANCE 1 #define OUT_ADVANCE 2 #define NUM_PIXELS 1 #define FUNC_NAME bgr_16_to_graya_32_c #define CONVERT RGB_24_TO_YJ_16(BGR16_TO_R_8(src[0]), \ BGR16_TO_G_8(src[0]), \ BGR16_TO_B_8(src[0]), \ dst[0]) \ dst[1] = 0Xffff; #include "../csp_packed_packed.h" /* */ /* rgb_15_to_graya_float_c */ #define IN_TYPE uint16_t #define OUT_TYPE float #define IN_ADVANCE 1 #define OUT_ADVANCE 2 #define NUM_PIXELS 1 #define FUNC_NAME rgb_15_to_graya_float_c #define CONVERT RGB_24_TO_Y_FLOAT(RGB15_TO_R_8(src[0]), \ RGB15_TO_G_8(src[0]), \ RGB15_TO_B_8(src[0]), \ dst[0]) \ dst[1] = 1.0; #include "../csp_packed_packed.h" /* bgr_15_to_graya_float_c */ #define IN_TYPE uint16_t #define OUT_TYPE float #define IN_ADVANCE 1 #define OUT_ADVANCE 2 #define NUM_PIXELS 1 #define FUNC_NAME bgr_15_to_graya_float_c #define CONVERT RGB_24_TO_Y_FLOAT(BGR15_TO_R_8(src[0]), \ BGR15_TO_G_8(src[0]), \ BGR15_TO_B_8(src[0]), \ dst[0]) \ dst[1] = 1.0; #include "../csp_packed_packed.h" /* rgb_16_to_graya_float_c */ #define IN_TYPE uint16_t #define OUT_TYPE float #define IN_ADVANCE 1 #define OUT_ADVANCE 2 #define NUM_PIXELS 1 #define FUNC_NAME rgb_16_to_graya_float_c #define CONVERT RGB_24_TO_Y_FLOAT(RGB16_TO_R_8(src[0]), \ RGB16_TO_G_8(src[0]), \ RGB16_TO_B_8(src[0]), \ dst[0]) \ dst[1] = 1.0; #include "../csp_packed_packed.h" /* bgr_16_to_graya_float_c */ #define IN_TYPE uint16_t #define OUT_TYPE float #define IN_ADVANCE 1 #define OUT_ADVANCE 2 #define NUM_PIXELS 1 #define FUNC_NAME bgr_16_to_graya_float_c #define CONVERT RGB_24_TO_Y_FLOAT(BGR16_TO_R_8(src[0]), \ BGR16_TO_G_8(src[0]), \ BGR16_TO_B_8(src[0]), \ dst[0]) \ dst[1] = 1.0; #include "../csp_packed_packed.h" /* RGB 24/32 -> Gray */ /* rgb_24_to_gray_8_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 3 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME rgb_24_to_gray_8_c #define CONVERT \ RGB_24_TO_YJ_8(src[0], src[1], src[2], \ dst[0]) #include "../csp_packed_packed.h" /* bgr_24_to_gray_8_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 3 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME bgr_24_to_gray_8_c #define CONVERT \ RGB_24_TO_YJ_8(src[2], src[1], src[0], \ dst[0]) #include "../csp_packed_packed.h" /* rgb_32_to_gray_8_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME rgb_32_to_gray_8_c #define CONVERT \ RGB_24_TO_YJ_8(src[0], src[1], src[2], \ dst[0]) #include "../csp_packed_packed.h" /* bgr_32_to_gray_8_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME bgr_32_to_gray_8_c #define CONVERT \ RGB_24_TO_YJ_8(src[2], src[1], src[0], \ dst[0]) #include "../csp_packed_packed.h" /* */ /* rgb_24_to_gray_16_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE 3 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME rgb_24_to_gray_16_c #define CONVERT \ RGB_24_TO_YJ_16(src[0], src[1], src[2], \ dst[0]) #include "../csp_packed_packed.h" /* bgr_24_to_gray_16_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE 3 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME bgr_24_to_gray_16_c #define CONVERT \ RGB_24_TO_YJ_16(src[2], src[1], src[0], \ dst[0]) #include "../csp_packed_packed.h" /* rgb_32_to_gray_16_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME rgb_32_to_gray_16_c #define CONVERT \ RGB_24_TO_YJ_16(src[0], src[1], src[2], \ dst[0]) #include "../csp_packed_packed.h" /* bgr_32_to_gray_16_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME bgr_32_to_gray_16_c #define CONVERT \ RGB_24_TO_YJ_16(src[2], src[1], src[0], \ dst[0]) #include "../csp_packed_packed.h" /* */ /* rgb_24_to_gray_float_c */ #define IN_TYPE uint8_t #define OUT_TYPE float #define IN_ADVANCE 3 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME rgb_24_to_gray_float_c #define CONVERT \ RGB_24_TO_Y_FLOAT(src[0], src[1], src[2], \ dst[0]) #include "../csp_packed_packed.h" /* bgr_24_to_gray_float_c */ #define IN_TYPE uint8_t #define OUT_TYPE float #define IN_ADVANCE 3 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME bgr_24_to_gray_float_c #define CONVERT \ RGB_24_TO_Y_FLOAT(src[2], src[1], src[0], \ dst[0]) #include "../csp_packed_packed.h" /* rgb_32_to_gray_float_c */ #define IN_TYPE uint8_t #define OUT_TYPE float #define IN_ADVANCE 4 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME rgb_32_to_gray_float_c #define CONVERT \ RGB_24_TO_Y_FLOAT(src[0], src[1], src[2], \ dst[0]) #include "../csp_packed_packed.h" /* bgr_32_to_gray_float_c */ #define IN_TYPE uint8_t #define OUT_TYPE float #define IN_ADVANCE 4 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME bgr_32_to_gray_float_c #define CONVERT \ RGB_24_TO_Y_FLOAT(src[2], src[1], src[0], \ dst[0]) #include "../csp_packed_packed.h" /* RGB 24/32 -> Graya */ /* rgb_24_to_graya_16_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 3 #define OUT_ADVANCE 2 #define NUM_PIXELS 1 #define FUNC_NAME rgb_24_to_graya_16_c #define CONVERT \ RGB_24_TO_YJ_8(src[0], src[1], src[2], \ dst[0]) \ dst[1] = 0xff; #include "../csp_packed_packed.h" /* bgr_24_to_graya_16_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 3 #define OUT_ADVANCE 2 #define NUM_PIXELS 1 #define FUNC_NAME bgr_24_to_graya_16_c #define CONVERT \ RGB_24_TO_YJ_8(src[2], src[1], src[0], \ dst[0]) \ dst[1] = 0xff; #include "../csp_packed_packed.h" /* rgb_32_to_graya_16_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE 2 #define NUM_PIXELS 1 #define FUNC_NAME rgb_32_to_graya_16_c #define CONVERT \ RGB_24_TO_YJ_8(src[0], src[1], src[2], \ dst[0]) \ dst[1] = 0xff; #include "../csp_packed_packed.h" /* bgr_32_to_graya_16_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE 2 #define NUM_PIXELS 1 #define FUNC_NAME bgr_32_to_graya_16_c #define CONVERT \ RGB_24_TO_YJ_8(src[2], src[1], src[0], \ dst[0]) \ dst[1] = 0xff; #include "../csp_packed_packed.h" /* */ /* rgb_24_to_graya_32_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE 3 #define OUT_ADVANCE 2 #define NUM_PIXELS 1 #define FUNC_NAME rgb_24_to_graya_32_c #define CONVERT \ RGB_24_TO_YJ_16(src[0], src[1], src[2], \ dst[0]) \ dst[1] = 0xffff; #include "../csp_packed_packed.h" /* bgr_24_to_graya_32_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE 3 #define OUT_ADVANCE 2 #define NUM_PIXELS 1 #define FUNC_NAME bgr_24_to_graya_32_c #define CONVERT \ RGB_24_TO_YJ_16(src[2], src[1], src[0], \ dst[0]) \ dst[1] = 0xffff; #include "../csp_packed_packed.h" /* rgb_32_to_graya_32_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE 2 #define NUM_PIXELS 1 #define FUNC_NAME rgb_32_to_graya_32_c #define CONVERT \ RGB_24_TO_YJ_16(src[0], src[1], src[2], \ dst[0]) \ dst[1] = 0xffff; #include "../csp_packed_packed.h" /* bgr_32_to_graya_32_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE 2 #define NUM_PIXELS 1 #define FUNC_NAME bgr_32_to_graya_32_c #define CONVERT \ RGB_24_TO_YJ_16(src[2], src[1], src[0], \ dst[0]) \ dst[1] = 0xffff; #include "../csp_packed_packed.h" /* */ /* rgb_24_to_graya_float_c */ #define IN_TYPE uint8_t #define OUT_TYPE float #define IN_ADVANCE 3 #define OUT_ADVANCE 2 #define NUM_PIXELS 1 #define FUNC_NAME rgb_24_to_graya_float_c #define CONVERT \ RGB_24_TO_Y_FLOAT(src[0], src[1], src[2], \ dst[0]) \ dst[1] = 1.0; #include "../csp_packed_packed.h" /* bgr_24_to_graya_float_c */ #define IN_TYPE uint8_t #define OUT_TYPE float #define IN_ADVANCE 3 #define OUT_ADVANCE 2 #define NUM_PIXELS 1 #define FUNC_NAME bgr_24_to_graya_float_c #define CONVERT \ RGB_24_TO_Y_FLOAT(src[2], src[1], src[0], \ dst[0]) \ dst[1] = 1.0; #include "../csp_packed_packed.h" /* rgb_32_to_graya_float_c */ #define IN_TYPE uint8_t #define OUT_TYPE float #define IN_ADVANCE 4 #define OUT_ADVANCE 2 #define NUM_PIXELS 1 #define FUNC_NAME rgb_32_to_graya_float_c #define CONVERT \ RGB_24_TO_Y_FLOAT(src[0], src[1], src[2], \ dst[0]) \ dst[1] = 1.0; #include "../csp_packed_packed.h" /* bgr_32_to_graya_float_c */ #define IN_TYPE uint8_t #define OUT_TYPE float #define IN_ADVANCE 4 #define OUT_ADVANCE 2 #define NUM_PIXELS 1 #define FUNC_NAME bgr_32_to_graya_float_c #define CONVERT \ RGB_24_TO_Y_FLOAT(src[2], src[1], src[0], \ dst[0]) \ dst[1] = 1.0; #include "../csp_packed_packed.h" /* RGB 48 -> Gray */ /* rgb_48_to_gray_8_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 3 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME rgb_48_to_gray_8_c #define CONVERT \ RGB_48_TO_YJ_8(src[0], src[1], src[2], dst[0]) #include "../csp_packed_packed.h" /* rgb_48_to_graya_16_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 3 #define OUT_ADVANCE 2 #define NUM_PIXELS 1 #define FUNC_NAME rgb_48_to_graya_16_c #define CONVERT \ RGB_48_TO_YJ_8(src[0], src[1], src[2], dst[0]) \ dst[1] = 0xff; #include "../csp_packed_packed.h" /* rgb_48_to_gray_16_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint16_t #define IN_ADVANCE 3 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME rgb_48_to_gray_16_c #define CONVERT \ RGB_48_TO_YJ_16(src[0], src[1], src[2], dst[0]) #include "../csp_packed_packed.h" /* rgb_48_to_graya_32_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint16_t #define IN_ADVANCE 3 #define OUT_ADVANCE 2 #define NUM_PIXELS 1 #define FUNC_NAME rgb_48_to_graya_32_c #define CONVERT \ RGB_48_TO_YJ_16(src[0], src[1], src[2], dst[0]) \ dst[1] = 0xffff; #include "../csp_packed_packed.h" /* rgb_48_to_gray_float_c */ #define IN_TYPE uint16_t #define OUT_TYPE float #define IN_ADVANCE 3 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME rgb_48_to_gray_float_c #define CONVERT \ RGB_48_TO_Y_FLOAT(src[0], src[1], src[2], dst[0]) #include "../csp_packed_packed.h" /* rgb_48_to_graya_float_c */ #define IN_TYPE uint16_t #define OUT_TYPE float #define IN_ADVANCE 3 #define OUT_ADVANCE 2 #define NUM_PIXELS 1 #define FUNC_NAME rgb_48_to_graya_float_c #define CONVERT \ RGB_48_TO_Y_FLOAT(src[0], src[1], src[2], dst[0]) \ dst[1] = 1.0; #include "../csp_packed_packed.h" /* RGB float -> Gray */ /* rgb_float_to_gray_8_c */ #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 3 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME rgb_float_to_gray_8_c #define INIT INIT_RGB_FLOAT_TO_Y #define CONVERT \ RGB_FLOAT_TO_YJ_8(src[0], src[1], src[2], dst[0]) #include "../csp_packed_packed.h" /* rgb_float_to_graya_16_c */ #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 3 #define OUT_ADVANCE 2 #define NUM_PIXELS 1 #define FUNC_NAME rgb_float_to_graya_16_c #define INIT INIT_RGB_FLOAT_TO_Y #define CONVERT \ RGB_FLOAT_TO_YJ_8(src[0], src[1], src[2], dst[0]) \ dst[1] = 0xff; #include "../csp_packed_packed.h" /* rgb_float_to_gray_16_c */ #define IN_TYPE float #define OUT_TYPE uint16_t #define IN_ADVANCE 3 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME rgb_float_to_gray_16_c #define INIT INIT_RGB_FLOAT_TO_Y #define CONVERT \ RGB_FLOAT_TO_YJ_16(src[0], src[1], src[2], dst[0]) #include "../csp_packed_packed.h" /* rgb_float_to_graya_32_c */ #define IN_TYPE float #define OUT_TYPE uint16_t #define IN_ADVANCE 3 #define OUT_ADVANCE 2 #define NUM_PIXELS 1 #define FUNC_NAME rgb_float_to_graya_32_c #define INIT INIT_RGB_FLOAT_TO_Y #define CONVERT \ RGB_FLOAT_TO_YJ_16(src[0], src[1], src[2], dst[0]) \ dst[1] = 0xffff; #include "../csp_packed_packed.h" /* rgb_float_to_gray_float_c */ #define IN_TYPE float #define OUT_TYPE float #define IN_ADVANCE 3 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME rgb_float_to_gray_float_c #define CONVERT \ RGB_FLOAT_TO_Y_FLOAT(src[0], src[1], src[2], dst[0]) #include "../csp_packed_packed.h" /* rgb_float_to_graya_float_c */ #define IN_TYPE float #define OUT_TYPE float #define IN_ADVANCE 3 #define OUT_ADVANCE 2 #define NUM_PIXELS 1 #define FUNC_NAME rgb_float_to_graya_float_c #define CONVERT \ RGB_FLOAT_TO_Y_FLOAT(src[0], src[1], src[2], dst[0]) \ dst[1] = 1.0; #include "../csp_packed_packed.h" /* RGBA -> Graya */ /* rgba_32_to_graya_16_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE 2 #define NUM_PIXELS 1 #define FUNC_NAME rgba_32_to_graya_16_c #define CONVERT \ RGB_24_TO_YJ_8(src[0], src[1], src[2], \ dst[0]) \ dst[1] = src[3]; #include "../csp_packed_packed.h" /* rgba_32_to_graya_32_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE 2 #define NUM_PIXELS 1 #define FUNC_NAME rgba_32_to_graya_32_c #define CONVERT \ RGB_24_TO_YJ_16(src[0], src[1], src[2], \ dst[0]) \ dst[1] = RGB_8_TO_16(src[3]); #include "../csp_packed_packed.h" /* rgba_32_to_graya_float_c */ #define IN_TYPE uint8_t #define OUT_TYPE float #define IN_ADVANCE 4 #define OUT_ADVANCE 2 #define NUM_PIXELS 1 #define FUNC_NAME rgba_32_to_graya_float_c #define CONVERT \ RGB_24_TO_Y_FLOAT(src[0], src[1], src[2], \ dst[0]) \ dst[1] = RGB_8_TO_FLOAT(src[3]); #include "../csp_packed_packed.h" /* rgba_64_to_graya_16_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE 2 #define NUM_PIXELS 1 #define FUNC_NAME rgba_64_to_graya_16_c #define CONVERT \ RGB_48_TO_YJ_8(src[0], src[1], src[2], \ dst[0]) \ RGB_16_TO_8(src[3], dst[1]); #include "../csp_packed_packed.h" /* rgba_64_to_graya_32_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE 2 #define NUM_PIXELS 1 #define FUNC_NAME rgba_64_to_graya_32_c #define CONVERT \ RGB_48_TO_YJ_16(src[0], src[1], src[2], \ dst[0]) \ dst[1] = src[3]; #include "../csp_packed_packed.h" /* rgba_64_to_graya_float_c */ #define IN_TYPE uint16_t #define OUT_TYPE float #define IN_ADVANCE 4 #define OUT_ADVANCE 2 #define NUM_PIXELS 1 #define FUNC_NAME rgba_64_to_graya_float_c #define CONVERT \ RGB_48_TO_Y_FLOAT(src[0], src[1], src[2], \ dst[0]) \ dst[1] = RGB_16_TO_FLOAT(src[3]); #include "../csp_packed_packed.h" /* rgba_float_to_graya_16_c */ #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE 2 #define NUM_PIXELS 1 #define FUNC_NAME rgba_float_to_graya_16_c #define INIT INIT_RGB_FLOAT_TO_Y #define CONVERT \ RGB_FLOAT_TO_YJ_8(src[0], src[1], src[2], \ dst[0]) \ RGB_FLOAT_TO_8(src[3], dst[1]); #include "../csp_packed_packed.h" /* rgba_float_to_graya_32_c */ #define IN_TYPE float #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE 2 #define NUM_PIXELS 1 #define FUNC_NAME rgba_float_to_graya_32_c #define INIT INIT_RGB_FLOAT_TO_Y #define CONVERT \ RGB_FLOAT_TO_YJ_16(src[0], src[1], src[2], \ dst[0]) \ RGB_FLOAT_TO_16(src[3], dst[1]); #include "../csp_packed_packed.h" /* rgba_float_to_graya_float_c */ #define IN_TYPE float #define OUT_TYPE float #define IN_ADVANCE 4 #define OUT_ADVANCE 2 #define NUM_PIXELS 1 #define FUNC_NAME rgba_float_to_graya_float_c #define CONVERT \ RGB_FLOAT_TO_Y_FLOAT(src[0], src[1], src[2], \ dst[0]) \ dst[1] = src[3]; #include "../csp_packed_packed.h" /* RGBA -> GRAY */ /* rgba_32_to_gray_8_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME rgba_32_to_gray_8_c #define INIT INIT_RGBA_32_GRAY #define CONVERT \ RGBA_32_TO_GRAY_8(src[0], src[1], src[2], src[3], dst[0]) #include "../csp_packed_packed.h" /* rgba_32_to_gray_16_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME rgba_32_to_gray_16_c #define INIT int dst_gray; INIT_RGBA_32_GRAY #define CONVERT \ RGBA_32_TO_GRAY_8(src[0], src[1], src[2], src[3], dst_gray) \ dst[0] = RGB_8_TO_16(dst_gray); #include "../csp_packed_packed.h" /* rgba_32_to_gray_float_c */ #define IN_TYPE uint8_t #define OUT_TYPE float #define IN_ADVANCE 4 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME rgba_32_to_gray_float_c #define INIT int dst_gray; INIT_RGBA_32_GRAY #define CONVERT \ RGBA_32_TO_GRAY_8(src[0], src[1], src[2], src[3], dst_gray) \ dst[0] = RGB_8_TO_FLOAT(dst_gray); #include "../csp_packed_packed.h" /* rgba_64_to_gray_8_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME rgba_64_to_gray_8_c #define INIT int dst_gray; INIT_RGBA_64_GRAY #define CONVERT \ RGBA_64_TO_GRAY_16(src[0], src[1], src[2], src[3], dst_gray) \ RGB_16_TO_8(dst_gray, dst[0]); #include "../csp_packed_packed.h" /* rgba_64_to_gray_16_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME rgba_64_to_gray_16_c #define INIT INIT_RGBA_64_GRAY #define CONVERT \ RGBA_64_TO_GRAY_16(src[0], src[1], src[2], src[3], dst[0]) #include "../csp_packed_packed.h" /* rgba_64_to_gray_float_c */ #define IN_TYPE uint16_t #define OUT_TYPE float #define IN_ADVANCE 4 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME rgba_64_to_gray_float_c #define INIT int dst_gray; INIT_RGBA_64_GRAY #define CONVERT \ RGBA_64_TO_GRAY_16(src[0], src[1], src[2], src[3], dst_gray) \ dst[0] = RGB_16_TO_FLOAT(dst_gray); #include "../csp_packed_packed.h" /* rgba_float_to_gray_8_c */ #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME rgba_float_to_gray_8_c #define INIT float dst_gray; INIT_RGBA_FLOAT_GRAY #define CONVERT \ RGBA_FLOAT_TO_GRAY_FLOAT(src[0], src[1], src[2], src[3], dst_gray) \ RGB_FLOAT_TO_8(dst_gray, dst[0]); #include "../csp_packed_packed.h" /* rgba_float_to_gray_16_c */ #define IN_TYPE float #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME rgba_float_to_gray_16_c #define INIT float dst_gray; INIT_RGBA_FLOAT_GRAY #define CONVERT \ RGBA_FLOAT_TO_GRAY_FLOAT(src[0], src[1], src[2], src[3], dst_gray) \ RGB_FLOAT_TO_16(dst_gray, dst[0]); #include "../csp_packed_packed.h" /* rgba_float_to_gray_float_c */ #define IN_TYPE float #define OUT_TYPE float #define IN_ADVANCE 4 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME rgba_float_to_gray_float_c #define INIT INIT_RGBA_FLOAT_GRAY #define CONVERT \ RGBA_FLOAT_TO_GRAY_FLOAT(src[0], src[1], src[2], src[3], dst[0]) #include "../csp_packed_packed.h" /* RGBA -> Gray (ignoring alpha) */ /* rgba_32_to_gray_8_ia_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME rgba_32_to_gray_8_ia_c #define CONVERT \ RGB_24_TO_YJ_8(src[0], src[1], src[2], dst[0]) #include "../csp_packed_packed.h" /* rgba_32_to_gray_16_ia_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME rgba_32_to_gray_16_ia_c #define CONVERT \ RGB_24_TO_YJ_16(src[0], src[1], src[2], dst[0]) #include "../csp_packed_packed.h" /* rgba_32_to_gray_float_ia_c */ #define IN_TYPE uint8_t #define OUT_TYPE float #define IN_ADVANCE 4 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME rgba_32_to_gray_float_ia_c #define CONVERT \ RGB_24_TO_Y_FLOAT(src[0], src[1], src[2], dst[0]) #include "../csp_packed_packed.h" /* rgba_64_to_gray_8_ia_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME rgba_64_to_gray_8_ia_c #define CONVERT \ RGB_48_TO_YJ_8(src[0], src[1], src[2], dst[0]) #include "../csp_packed_packed.h" /* rgba_64_to_gray_16_ia_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME rgba_64_to_gray_16_ia_c #define CONVERT \ RGB_48_TO_YJ_16(src[0], src[1], src[2], dst[0]) #include "../csp_packed_packed.h" /* rgba_64_to_gray_float_ia_c */ #define IN_TYPE uint16_t #define OUT_TYPE float #define IN_ADVANCE 4 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME rgba_64_to_gray_float_ia_c #define CONVERT \ RGB_48_TO_Y_FLOAT(src[0], src[1], src[2], dst[0]) #include "../csp_packed_packed.h" /* rgba_float_to_gray_8_ia_c */ #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME rgba_float_to_gray_8_ia_c #define INIT INIT_RGB_FLOAT_TO_Y #define CONVERT \ RGB_FLOAT_TO_YJ_8(src[0], src[1], src[2], dst[0]) #include "../csp_packed_packed.h" /* rgba_float_to_gray_16_ia_c */ #define IN_TYPE float #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME rgba_float_to_gray_16_ia_c #define INIT INIT_RGB_FLOAT_TO_Y #define CONVERT \ RGB_FLOAT_TO_YJ_16(src[0], src[1], src[2], dst[0]) #include "../csp_packed_packed.h" /* rgba_float_to_gray_float_ia_c */ #define IN_TYPE float #define OUT_TYPE float #define IN_ADVANCE 4 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME rgba_float_to_gray_float_ia_c #define CONVERT \ RGB_FLOAT_TO_Y_FLOAT(src[0], src[1], src[2], dst[0]) #include "../csp_packed_packed.h" void gavl_init_rgb_gray_funcs_c(gavl_pixelformat_function_table_t * tab, const gavl_video_options_t * opt) { if(opt->alpha_mode == GAVL_ALPHA_BLEND_COLOR) { tab->rgba_32_to_gray_8 = rgba_32_to_gray_8_c; tab->rgba_64_to_gray_8 = rgba_64_to_gray_8_c; tab->rgba_float_to_gray_8 = rgba_float_to_gray_8_c; tab->rgba_32_to_gray_16 = rgba_32_to_gray_16_c; tab->rgba_64_to_gray_16 = rgba_64_to_gray_16_c; tab->rgba_float_to_gray_16 = rgba_float_to_gray_16_c; tab->rgba_32_to_gray_float = rgba_32_to_gray_float_c; tab->rgba_64_to_gray_float = rgba_64_to_gray_float_c; tab->rgba_float_to_gray_float = rgba_float_to_gray_float_c; } else { tab->rgba_32_to_gray_8 = rgba_32_to_gray_8_ia_c; tab->rgba_64_to_gray_8 = rgba_64_to_gray_8_ia_c; tab->rgba_float_to_gray_8 = rgba_float_to_gray_8_ia_c; tab->rgba_32_to_gray_16 = rgba_32_to_gray_16_ia_c; tab->rgba_64_to_gray_16 = rgba_64_to_gray_16_ia_c; tab->rgba_float_to_gray_16 = rgba_float_to_gray_16_ia_c; tab->rgba_32_to_gray_float = rgba_32_to_gray_float_ia_c; tab->rgba_64_to_gray_float = rgba_64_to_gray_float_ia_c; tab->rgba_float_to_gray_float = rgba_float_to_gray_float_ia_c; } tab->rgb_15_to_gray_8 = rgb_15_to_gray_8_c; tab->bgr_15_to_gray_8 = bgr_15_to_gray_8_c; tab->rgb_16_to_gray_8 = rgb_16_to_gray_8_c; tab->bgr_16_to_gray_8 = bgr_16_to_gray_8_c; tab->rgb_24_to_gray_8 = rgb_24_to_gray_8_c; tab->bgr_24_to_gray_8 = bgr_24_to_gray_8_c; tab->rgb_32_to_gray_8 = rgb_32_to_gray_8_c; tab->bgr_32_to_gray_8 = bgr_32_to_gray_8_c; tab->rgb_48_to_gray_8 = rgb_48_to_gray_8_c; tab->rgb_float_to_gray_8 = rgb_float_to_gray_8_c; tab->rgb_15_to_gray_16 = rgb_15_to_gray_16_c; tab->bgr_15_to_gray_16 = bgr_15_to_gray_16_c; tab->rgb_16_to_gray_16 = rgb_16_to_gray_16_c; tab->bgr_16_to_gray_16 = bgr_16_to_gray_16_c; tab->rgb_24_to_gray_16 = rgb_24_to_gray_16_c; tab->bgr_24_to_gray_16 = bgr_24_to_gray_16_c; tab->rgb_32_to_gray_16 = rgb_32_to_gray_16_c; tab->bgr_32_to_gray_16 = bgr_32_to_gray_16_c; tab->rgb_48_to_gray_16 = rgb_48_to_gray_16_c; tab->rgb_float_to_gray_16 = rgb_float_to_gray_16_c; tab->rgb_15_to_gray_float = rgb_15_to_gray_float_c; tab->bgr_15_to_gray_float = bgr_15_to_gray_float_c; tab->rgb_16_to_gray_float = rgb_16_to_gray_float_c; tab->bgr_16_to_gray_float = bgr_16_to_gray_float_c; tab->rgb_24_to_gray_float = rgb_24_to_gray_float_c; tab->bgr_24_to_gray_float = bgr_24_to_gray_float_c; tab->rgb_32_to_gray_float = rgb_32_to_gray_float_c; tab->bgr_32_to_gray_float = bgr_32_to_gray_float_c; tab->rgb_48_to_gray_float = rgb_48_to_gray_float_c; tab->rgb_float_to_gray_float = rgb_float_to_gray_float_c; tab->rgb_15_to_graya_16 = rgb_15_to_graya_16_c; tab->bgr_15_to_graya_16 = bgr_15_to_graya_16_c; tab->rgb_16_to_graya_16 = rgb_16_to_graya_16_c; tab->bgr_16_to_graya_16 = bgr_16_to_graya_16_c; tab->rgb_24_to_graya_16 = rgb_24_to_graya_16_c; tab->bgr_24_to_graya_16 = bgr_24_to_graya_16_c; tab->rgb_32_to_graya_16 = rgb_32_to_graya_16_c; tab->bgr_32_to_graya_16 = bgr_32_to_graya_16_c; tab->rgba_32_to_graya_16 = rgba_32_to_graya_16_c; tab->rgb_48_to_graya_16 = rgb_48_to_graya_16_c; tab->rgba_64_to_graya_16 = rgba_64_to_graya_16_c; tab->rgb_float_to_graya_16 = rgb_float_to_graya_16_c; tab->rgba_float_to_graya_16 = rgba_float_to_graya_16_c; tab->rgb_15_to_graya_32 = rgb_15_to_graya_32_c; tab->bgr_15_to_graya_32 = bgr_15_to_graya_32_c; tab->rgb_16_to_graya_32 = rgb_16_to_graya_32_c; tab->bgr_16_to_graya_32 = bgr_16_to_graya_32_c; tab->rgb_24_to_graya_32 = rgb_24_to_graya_32_c; tab->bgr_24_to_graya_32 = bgr_24_to_graya_32_c; tab->rgb_32_to_graya_32 = rgb_32_to_graya_32_c; tab->bgr_32_to_graya_32 = bgr_32_to_graya_32_c; tab->rgba_32_to_graya_32 = rgba_32_to_graya_32_c; tab->rgb_48_to_graya_32 = rgb_48_to_graya_32_c; tab->rgba_64_to_graya_32 = rgba_64_to_graya_32_c; tab->rgb_float_to_graya_32 = rgb_float_to_graya_32_c; tab->rgba_float_to_graya_32 = rgba_float_to_graya_32_c; tab->rgb_15_to_graya_float = rgb_15_to_graya_float_c; tab->bgr_15_to_graya_float = bgr_15_to_graya_float_c; tab->rgb_16_to_graya_float = rgb_16_to_graya_float_c; tab->bgr_16_to_graya_float = bgr_16_to_graya_float_c; tab->rgb_24_to_graya_float = rgb_24_to_graya_float_c; tab->bgr_24_to_graya_float = bgr_24_to_graya_float_c; tab->rgb_32_to_graya_float = rgb_32_to_graya_float_c; tab->bgr_32_to_graya_float = bgr_32_to_graya_float_c; tab->rgba_32_to_graya_float = rgba_32_to_graya_float_c; tab->rgb_48_to_graya_float = rgb_48_to_graya_float_c; tab->rgba_64_to_graya_float = rgba_64_to_graya_float_c; tab->rgb_float_to_graya_float = rgb_float_to_graya_float_c; tab->rgba_float_to_graya_float = rgba_float_to_graya_float_c; } bplaum-gavl-b9385e3/gavl/c/rgb_rgb_c.c000066400000000000000000001737211513252040200175170ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ // #include #include #include #include #include "colorspace_tables.h" #include "colorspace_macros.h" /* * Macros for pixel conversion */ #define COPY_24 dst[0]=src[0];dst[1]=src[1];dst[2]=src[2]; #define COPY_24_TO_48 \ dst[0]=RGB_8_TO_16(src[0]);\ dst[1]=RGB_8_TO_16(src[1]);\ dst[2]=RGB_8_TO_16(src[2]); #define COPY_24_TO_FLOAT \ dst[0]=RGB_8_TO_FLOAT(src[0]);\ dst[1]=RGB_8_TO_FLOAT(src[1]);\ dst[2]=RGB_8_TO_FLOAT(src[2]); #define COPY_48_TO_24 \ RGB_16_TO_8(src[0], dst[0]);\ RGB_16_TO_8(src[1], dst[1]);\ RGB_16_TO_8(src[2], dst[2]); #define COPY_48_TO_48 \ dst[0]=src[0];\ dst[1]=src[1];\ dst[2]=src[2]; #define COPY_48_TO_FLOAT \ dst[0]=RGB_16_TO_FLOAT(src[0]);\ dst[1]=RGB_16_TO_FLOAT(src[1]);\ dst[2]=RGB_16_TO_FLOAT(src[2]); #define COPY_FLOAT_TO_24 \ RGB_FLOAT_TO_8(src[0], dst[0]);\ RGB_FLOAT_TO_8(src[1], dst[1]);\ RGB_FLOAT_TO_8(src[2], dst[2]); #define COPY_FLOAT_TO_48 \ RGB_FLOAT_TO_16(src[0], dst[0]);\ RGB_FLOAT_TO_16(src[1], dst[1]);\ RGB_FLOAT_TO_16(src[2], dst[2]); #define COPY_FLOAT_TO_FLOAT \ dst[0]=src[0]; \ dst[1]=src[1]; \ dst[2]=src[2]; #define SWAP_24 dst[2]=src[0];dst[1]=src[1];dst[0]=src[2]; #define SWAP_24_TO_48 \ dst[2]=RGB_8_TO_16(src[0]);\ dst[1]=RGB_8_TO_16(src[1]);\ dst[0]=RGB_8_TO_16(src[2]); #define SWAP_24_TO_FLOAT \ dst[2]=RGB_8_TO_FLOAT(src[0]);\ dst[1]=RGB_8_TO_FLOAT(src[1]);\ dst[0]=RGB_8_TO_FLOAT(src[2]); #define SWAP_48_TO_24 \ RGB_16_TO_8(src[0], dst[2]);\ RGB_16_TO_8(src[1], dst[1]);\ RGB_16_TO_8(src[2], dst[0]); #define SWAP_48_TO_FLOAT \ RGB_16_TO_FLOAT(src[0], dst[2]);\ RGB_16_TO_FLOAT(src[1], dst[1]);\ RGB_16_TO_FLOAT(src[2], dst[0]); #define SWAP_FLOAT_TO_24 \ RGB_FLOAT_TO_8(src[0], dst[2]);\ RGB_FLOAT_TO_8(src[1], dst[1]);\ RGB_FLOAT_TO_8(src[2], dst[0]); /* * Needs the following macros: * IN_TYPE: Type of the input pointer * OUT_TYPE: Type of the output pointer * IN_ADVANCE: Input advance * OUT_ADVANCE: Output advance * FUNC_NAME: Name of the function * NUM_PIXELS: The number of pixels the conversion processes at once * CONVERT: This macro takes no arguments and makes the appropriate conversion * from to * INIT: Variable declarations and initialization (can be empty) */ #ifndef HQ /* swap_rgb_24_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 3 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define FUNC_NAME swap_rgb_24_c #define CONVERT SWAP_24 #include "../csp_packed_packed.h" /* swap_rgb_32_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME swap_rgb_32_c #define CONVERT SWAP_24 #include "../csp_packed_packed.h" /* swap_rgb_16_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint16_t #define IN_ADVANCE 1 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME swap_rgb_16_c #define CONVERT \ *dst = (((*src & RGB16_UPPER_MASK) >> 11)|\ (*src & RGB16_MIDDLE_MASK)|\ ((*src & RGB16_LOWER_MASK) << 11)); #include "../csp_packed_packed.h" /* swap_rgb_15_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint16_t #define IN_ADVANCE 1 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME swap_rgb_15_c #define CONVERT \ *dst = (((*src & RGB15_UPPER_MASK) >> 10)|\ (*src & RGB15_MIDDLE_MASK)|\ ((*src & RGB15_LOWER_MASK) << 10)); #include "../csp_packed_packed.h" /* rgb_15_to_16_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint16_t #define IN_ADVANCE 1 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME rgb_15_to_16_c #define CONVERT \ *dst = *src + (*src & 0xFFE0); #include "../csp_packed_packed.h" /* rgb_15_to_24_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 1 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define FUNC_NAME rgb_15_to_24_c #define CONVERT \ dst[0] = RGB15_TO_R_8(*src);\ dst[1] = RGB15_TO_G_8(*src);\ dst[2] = RGB15_TO_B_8(*src); #include "../csp_packed_packed.h" /* rgb_15_to_32_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 1 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME rgb_15_to_32_c #define CONVERT \ dst[0] = RGB15_TO_R_8(*src);\ dst[1] = RGB15_TO_G_8(*src);\ dst[2] = RGB15_TO_B_8(*src); #include "../csp_packed_packed.h" /* rgb_15_to_48_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint16_t #define IN_ADVANCE 1 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define FUNC_NAME rgb_15_to_48_c #define CONVERT \ dst[0] = RGB15_TO_R_16(*src);\ dst[1] = RGB15_TO_G_16(*src);\ dst[2] = RGB15_TO_B_16(*src); #include "../csp_packed_packed.h" /* rgb_15_to_float_c */ #define IN_TYPE uint16_t #define OUT_TYPE float #define IN_ADVANCE 1 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define FUNC_NAME rgb_15_to_float_c #define CONVERT \ dst[0] = RGB15_TO_R_FLOAT(*src);\ dst[1] = RGB15_TO_G_FLOAT(*src);\ dst[2] = RGB15_TO_B_FLOAT(*src); #include "../csp_packed_packed.h" /* rgb_16_to_15_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint16_t #define IN_ADVANCE 1 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME rgb_16_to_15_c #define CONVERT \ *dst = (*src & RGB16_LOWER_MASK) | \ (((*src & (RGB16_MIDDLE_MASK|RGB16_UPPER_MASK)) >> 1) & \ (RGB15_UPPER_MASK | RGB15_MIDDLE_MASK)); #include "../csp_packed_packed.h" /* rgb_16_to_24_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 1 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define FUNC_NAME rgb_16_to_24_c #define CONVERT \ dst[0] = RGB16_TO_R_8(*src); \ dst[1] = RGB16_TO_G_8(*src); \ dst[2] = RGB16_TO_B_8(*src); #include "../csp_packed_packed.h" /* rgb_16_to_32_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 1 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME rgb_16_to_32_c #define CONVERT \ dst[0] = RGB16_TO_R_8(*src); \ dst[1] = RGB16_TO_G_8(*src); \ dst[2] = RGB16_TO_B_8(*src); #include "../csp_packed_packed.h" /* rgb_16_to_48_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint16_t #define IN_ADVANCE 1 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define FUNC_NAME rgb_16_to_48_c #define CONVERT \ dst[0] = RGB16_TO_R_16(*src); \ dst[1] = RGB16_TO_G_16(*src); \ dst[2] = RGB16_TO_B_16(*src); #include "../csp_packed_packed.h" /* rgb_16_to_float_c */ #define IN_TYPE uint16_t #define OUT_TYPE float #define IN_ADVANCE 1 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define FUNC_NAME rgb_16_to_float_c #define CONVERT \ dst[0] = RGB16_TO_R_FLOAT(*src); \ dst[1] = RGB16_TO_G_FLOAT(*src); \ dst[2] = RGB16_TO_B_FLOAT(*src); #include "../csp_packed_packed.h" /* rgb_24_to_15_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE 3 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME rgb_24_to_15_c #define CONVERT \ PACK_8_TO_RGB15(src[0],src[1],src[2],*dst) #include "../csp_packed_packed.h" /* rgb_24_to_16_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE 3 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME rgb_24_to_16_c #define CONVERT \ PACK_8_TO_RGB16(src[0],src[1],src[2],*dst) #include "../csp_packed_packed.h" /* rgb_24_to_32_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 3 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME rgb_24_to_32_c #define CONVERT \ COPY_24 #include "../csp_packed_packed.h" /* rgb_24_to_48_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE 3 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define FUNC_NAME rgb_24_to_48_c #define CONVERT \ COPY_24_TO_48 #include "../csp_packed_packed.h" /* rgb_24_to_float_c */ #define IN_TYPE uint8_t #define OUT_TYPE float #define IN_ADVANCE 3 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define FUNC_NAME rgb_24_to_float_c #define CONVERT \ COPY_24_TO_FLOAT #include "../csp_packed_packed.h" /* rgb_32_to_15_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME rgb_32_to_15_c #define CONVERT \ PACK_8_TO_RGB15(src[0],src[1],src[2],*dst) #include "../csp_packed_packed.h" /* rgb_32_to_16_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME rgb_32_to_16_c #define CONVERT \ PACK_8_TO_RGB16(src[0],src[1],src[2],*dst) #include "../csp_packed_packed.h" /* rgb_32_to_24_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define FUNC_NAME rgb_32_to_24_c #define CONVERT \ COPY_24 #include "../csp_packed_packed.h" /* rgb_32_to_48_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define FUNC_NAME rgb_32_to_48_c #define CONVERT \ COPY_24_TO_48 #include "../csp_packed_packed.h" /* rgb_32_to_float_c */ #define IN_TYPE uint8_t #define OUT_TYPE float #define IN_ADVANCE 4 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define FUNC_NAME rgb_32_to_float_c #define CONVERT \ COPY_24_TO_FLOAT #include "../csp_packed_packed.h" /* rgb_48_to_15_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint16_t #define IN_ADVANCE 3 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME rgb_48_to_15_c #define CONVERT \ PACK_16_TO_RGB15(src[0],src[1],src[2],*dst) #include "../csp_packed_packed.h" /* rgb_48_to_16_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint16_t #define IN_ADVANCE 3 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME rgb_48_to_16_c #define CONVERT \ PACK_16_TO_RGB16(src[0],src[1],src[2],*dst) #include "../csp_packed_packed.h" #endif // !HQ /* rgb_48_to_24_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 3 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define FUNC_NAME rgb_48_to_24_c #define CONVERT \ COPY_48_TO_24 #ifdef HQ #define INIT int32_t round_tmp; #endif #include "../csp_packed_packed.h" /* rgb_48_to_32_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 3 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME rgb_48_to_32_c #define CONVERT \ COPY_48_TO_24 #ifdef HQ #define INIT int32_t round_tmp; #endif #include "../csp_packed_packed.h" #ifndef HQ /* rgb_48_to_float_c */ #define IN_TYPE uint16_t #define OUT_TYPE float #define IN_ADVANCE 3 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define FUNC_NAME rgb_48_to_float_c #define CONVERT \ COPY_48_TO_FLOAT #include "../csp_packed_packed.h" #endif // !HQ /* rgb_float_to_15_c */ #define IN_TYPE float #define OUT_TYPE uint16_t #define IN_ADVANCE 3 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME rgb_float_to_15_c #define INIT uint8_t r_tmp, g_tmp, b_tmp; #define CONVERT \ RGB_FLOAT_TO_8(src[0], r_tmp); \ RGB_FLOAT_TO_8(src[1], g_tmp); \ RGB_FLOAT_TO_8(src[2], b_tmp); \ PACK_8_TO_RGB15(r_tmp, g_tmp, b_tmp, *dst) #include "../csp_packed_packed.h" /* rgb_float_to_16_c */ #define IN_TYPE float #define OUT_TYPE uint16_t #define IN_ADVANCE 3 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME rgb_float_to_16_c #define INIT uint8_t r_tmp, g_tmp, b_tmp; #define CONVERT \ RGB_FLOAT_TO_8(src[0], r_tmp); \ RGB_FLOAT_TO_8(src[1], g_tmp); \ RGB_FLOAT_TO_8(src[2], b_tmp); \ PACK_8_TO_RGB16(r_tmp, g_tmp, b_tmp, *dst) #include "../csp_packed_packed.h" /* rgb_float_to_24_c */ #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 3 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define FUNC_NAME rgb_float_to_24_c #define CONVERT \ COPY_FLOAT_TO_24 #include "../csp_packed_packed.h" /* rgb_float_to_32_c */ #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 3 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME rgb_float_to_32_c #define CONVERT \ COPY_FLOAT_TO_24 #include "../csp_packed_packed.h" /* rgb_float_to_48_c */ #define IN_TYPE float #define OUT_TYPE uint16_t #define IN_ADVANCE 3 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define FUNC_NAME rgb_float_to_48_c #define CONVERT \ COPY_FLOAT_TO_48 #include "../csp_packed_packed.h" #ifndef HQ // !HQ /* rgb_15_to_16_swap_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint16_t #define IN_ADVANCE 1 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME rgb_15_to_16_swap_c #define CONVERT \ *dst = ((*src & RGB15_UPPER_MASK) >> 10) | \ ((*src & RGB15_MIDDLE_MASK) << 1) | \ ((*src & RGB15_LOWER_MASK) << 11); #include "../csp_packed_packed.h" /* rgb_15_to_24_swap_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 1 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define FUNC_NAME rgb_15_to_24_swap_c #define CONVERT \ dst[2] = RGB15_TO_R_8(*src); \ dst[1] = RGB15_TO_G_8(*src); \ dst[0] = RGB15_TO_B_8(*src); #include "../csp_packed_packed.h" /* rgb_15_to_32_swap_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 1 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME rgb_15_to_32_swap_c #define CONVERT \ dst[2] = RGB15_TO_R_8(*src); \ dst[1] = RGB15_TO_G_8(*src); \ dst[0] = RGB15_TO_B_8(*src); #include "../csp_packed_packed.h" /* rgb_15_to_48_swap_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint16_t #define IN_ADVANCE 1 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define FUNC_NAME rgb_15_to_48_swap_c #define CONVERT \ dst[2] = RGB15_TO_R_16(*src);\ dst[1] = RGB15_TO_G_16(*src);\ dst[0] = RGB15_TO_B_16(*src); #include "../csp_packed_packed.h" /* rgb_15_to_float_swap_c */ #define IN_TYPE uint16_t #define OUT_TYPE float #define IN_ADVANCE 1 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define FUNC_NAME rgb_15_to_float_swap_c #define CONVERT \ dst[2] = RGB15_TO_R_FLOAT(*src);\ dst[1] = RGB15_TO_G_FLOAT(*src);\ dst[0] = RGB15_TO_B_FLOAT(*src); #include "../csp_packed_packed.h" /* rgb_16_to_15_swap_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint16_t #define IN_ADVANCE 1 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME rgb_16_to_15_swap_c #define CONVERT \ *dst = ((*src & RGB16_UPPER_MASK) >> 11) | \ (((*src & RGB16_MIDDLE_MASK) >> 1) & RGB15_MIDDLE_MASK) |\ ((*src & RGB16_LOWER_MASK) << 10); #include "../csp_packed_packed.h" /* rgb_16_to_24_swap_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 1 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define FUNC_NAME rgb_16_to_24_swap_c #define CONVERT \ dst[2]=RGB16_TO_R_8(*src);\ dst[1]=RGB16_TO_G_8(*src);\ dst[0]=RGB16_TO_B_8(*src); #include "../csp_packed_packed.h" /* rgb_16_to_32_swap_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 1 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME rgb_16_to_32_swap_c #define CONVERT \ dst[2]=RGB16_TO_R_8(*src);\ dst[1]=RGB16_TO_G_8(*src);\ dst[0]=RGB16_TO_B_8(*src); #include "../csp_packed_packed.h" /* rgb_16_to_48_swap_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint16_t #define IN_ADVANCE 1 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define FUNC_NAME rgb_16_to_48_swap_c #define CONVERT \ dst[2]=RGB16_TO_R_16(*src); \ dst[1]=RGB16_TO_G_16(*src); \ dst[0]=RGB16_TO_B_16(*src); #include "../csp_packed_packed.h" /* rgb_16_to_float_swap_c */ #define IN_TYPE uint16_t #define OUT_TYPE float #define IN_ADVANCE 1 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define FUNC_NAME rgb_16_to_float_swap_c #define CONVERT \ dst[2]=RGB16_TO_R_FLOAT(*src); \ dst[1]=RGB16_TO_G_FLOAT(*src); \ dst[0]=RGB16_TO_B_FLOAT(*src); #include "../csp_packed_packed.h" /* rgb_24_to_15_swap_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE 3 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME rgb_24_to_15_swap_c #define CONVERT \ PACK_8_TO_BGR15(src[0],src[1],src[2],*dst) #include "../csp_packed_packed.h" /* rgb_24_to_16_swap_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE 3 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME rgb_24_to_16_swap_c #define CONVERT \ PACK_8_TO_BGR16(src[0],src[1],src[2],*dst) #include "../csp_packed_packed.h" /* rgb_24_to_32_swap_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 3 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME rgb_24_to_32_swap_c #define CONVERT \ SWAP_24 #include "../csp_packed_packed.h" /* rgb_24_to_48_swap_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE 3 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define FUNC_NAME rgb_24_to_48_swap_c #define CONVERT \ SWAP_24_TO_48 #include "../csp_packed_packed.h" /* rgb_24_to_float_swap_c */ #define IN_TYPE uint8_t #define OUT_TYPE float #define IN_ADVANCE 3 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define FUNC_NAME rgb_24_to_float_swap_c #define CONVERT \ SWAP_24_TO_FLOAT #include "../csp_packed_packed.h" /* rgb_32_to_15_swap_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME rgb_32_to_15_swap_c #define CONVERT \ PACK_8_TO_BGR15(src[0],src[1],src[2],*dst) #include "../csp_packed_packed.h" /* rgb_32_to_16_swap_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME rgb_32_to_16_swap_c #define CONVERT \ PACK_8_TO_BGR16(src[0],src[1],src[2],*dst) #include "../csp_packed_packed.h" /* rgb_32_to_24_swap_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define FUNC_NAME rgb_32_to_24_swap_c #define CONVERT \ SWAP_24 #include "../csp_packed_packed.h" /* rgb_32_to_48_swap_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define FUNC_NAME rgb_32_to_48_swap_c #define CONVERT \ SWAP_24_TO_48 #include "../csp_packed_packed.h" /* rgb_32_to_float_swap_c */ #define IN_TYPE uint8_t #define OUT_TYPE float #define IN_ADVANCE 4 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define FUNC_NAME rgb_32_to_float_swap_c #define CONVERT \ SWAP_24_TO_FLOAT #include "../csp_packed_packed.h" /* rgb_48_to_15_swap_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint16_t #define IN_ADVANCE 3 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME rgb_48_to_15_swap_c #define CONVERT \ PACK_16_TO_BGR15(src[0],src[1],src[2],*dst) #include "../csp_packed_packed.h" /* rgb_48_to_16_swap_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint16_t #define IN_ADVANCE 3 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME rgb_48_to_16_swap_c #define CONVERT \ PACK_16_TO_BGR16(src[0],src[1],src[2],*dst) #include "../csp_packed_packed.h" #endif // !HQ /* rgb_48_to_24_swap_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 3 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define FUNC_NAME rgb_48_to_24_swap_c #define CONVERT \ SWAP_48_TO_24 #ifdef HQ #define INIT int32_t round_tmp; #endif #include "../csp_packed_packed.h" /* rgb_48_to_32_swap_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 3 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME rgb_48_to_32_swap_c #define CONVERT \ SWAP_48_TO_24 #ifdef HQ #define INIT int32_t round_tmp; #endif #include "../csp_packed_packed.h" /* rgb_float_to_15_swap_c */ #define IN_TYPE float #define OUT_TYPE uint16_t #define IN_ADVANCE 3 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME rgb_float_to_15_swap_c #define INIT uint8_t r_tmp, g_tmp, b_tmp; #define CONVERT \ RGB_FLOAT_TO_8(src[0], r_tmp); \ RGB_FLOAT_TO_8(src[1], g_tmp); \ RGB_FLOAT_TO_8(src[2], b_tmp); \ PACK_8_TO_BGR15(r_tmp, g_tmp, b_tmp, *dst) #include "../csp_packed_packed.h" /* rgb_float_to_16_swap_c */ #define IN_TYPE float #define OUT_TYPE uint16_t #define IN_ADVANCE 3 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME rgb_float_to_16_swap_c #define INIT uint8_t r_tmp, g_tmp, b_tmp; #define CONVERT \ RGB_FLOAT_TO_8(src[0], r_tmp); \ RGB_FLOAT_TO_8(src[1], g_tmp); \ RGB_FLOAT_TO_8(src[2], b_tmp); \ PACK_8_TO_BGR16(r_tmp, g_tmp, b_tmp, *dst) #include "../csp_packed_packed.h" /* rgb_float_to_24_swap_c */ #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 3 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define FUNC_NAME rgb_float_to_24_swap_c #define CONVERT \ SWAP_FLOAT_TO_24 #include "../csp_packed_packed.h" /* rgb_float_to_32_swap_c */ #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 3 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME rgb_float_to_32_swap_c #define CONVERT \ SWAP_FLOAT_TO_24 #include "../csp_packed_packed.h" #ifndef HQ /* Conversion from RGBA 32 to RGB */ /* rgba_32_to_rgb_15_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME rgba_32_to_rgb_15_c #define CONVERT \ RGBA_32_TO_RGB_24(src[0], src[1], src[2], src[3], r_tmp, g_tmp, b_tmp)\ PACK_8_TO_RGB15(r_tmp, g_tmp, b_tmp, *dst) #define INIT \ uint8_t r_tmp;\ uint8_t g_tmp;\ uint8_t b_tmp;\ INIT_RGBA_32 #include "../csp_packed_packed.h" /* rgba_32_to_bgr_15_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME rgba_32_to_bgr_15_c #define CONVERT \ RGBA_32_TO_RGB_24(src[0], src[1], src[2], src[3], r_tmp, g_tmp, b_tmp) \ PACK_8_TO_BGR15(r_tmp, g_tmp, b_tmp, *dst) #define INIT \ uint8_t r_tmp;\ uint8_t g_tmp;\ uint8_t b_tmp;\ INIT_RGBA_32 #include "../csp_packed_packed.h" /* rgba_32_to_rgb_16_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME rgba_32_to_rgb_16_c #define CONVERT \ RGBA_32_TO_RGB_24(src[0], src[1], src[2], src[3], r_tmp, g_tmp, b_tmp) \ PACK_8_TO_RGB16(r_tmp, g_tmp, b_tmp, *dst) #define INIT \ uint8_t r_tmp;\ uint8_t g_tmp;\ uint8_t b_tmp;\ INIT_RGBA_32 #include "../csp_packed_packed.h" /* rgba_32_to_bgr_16_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME rgba_32_to_bgr_16_c #define CONVERT \ RGBA_32_TO_RGB_24(src[0], src[1], src[2], src[3], r_tmp, g_tmp, b_tmp) \ PACK_8_TO_BGR16(r_tmp, g_tmp, b_tmp, *dst) #define INIT \ uint8_t r_tmp;\ uint8_t g_tmp;\ uint8_t b_tmp;\ INIT_RGBA_32 #include "../csp_packed_packed.h" /* rgba_32_to_rgb_24_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define FUNC_NAME rgba_32_to_rgb_24_c #define CONVERT \ RGBA_32_TO_RGB_24(src[0], src[1], src[2], src[3], dst[0], dst[1], dst[2]) #define INIT \ INIT_RGBA_32 #include "../csp_packed_packed.h" /* rgba_32_to_bgr_24_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define FUNC_NAME rgba_32_to_bgr_24_c #define CONVERT \ RGBA_32_TO_RGB_24(src[0], src[1], src[2], src[3], dst[2], dst[1], dst[0]) #define INIT \ INIT_RGBA_32 #include "../csp_packed_packed.h" /* rgba_32_to_rgb_32_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME rgba_32_to_rgb_32_c #define CONVERT \ RGBA_32_TO_RGB_24(src[0], src[1], src[2], src[3], dst[0], dst[1], dst[2]) #define INIT \ INIT_RGBA_32 #include "../csp_packed_packed.h" /* rgba_32_to_bgr_32_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME rgba_32_to_bgr_32_c #define CONVERT \ RGBA_32_TO_RGB_24(src[0], src[1], src[2], src[3], dst[2], dst[1], dst[0]) #define INIT \ INIT_RGBA_32 #include "../csp_packed_packed.h" /* rgba_32_to_rgb_48_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define FUNC_NAME rgba_32_to_rgb_48_c #define CONVERT \ RGBA_32_TO_RGB_48(src[0], src[1], src[2], src[3], dst[0], dst[1], dst[2]) #define INIT \ INIT_RGBA_32 #include "../csp_packed_packed.h" /* rgba_32_to_rgb_float_c */ #define IN_TYPE uint8_t #define OUT_TYPE float #define IN_ADVANCE 4 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define FUNC_NAME rgba_32_to_rgb_float_c #define CONVERT \ r_tmp = RGB_8_TO_FLOAT(src[0]); \ g_tmp = RGB_8_TO_FLOAT(src[1]); \ b_tmp = RGB_8_TO_FLOAT(src[2]); \ a_tmp = RGB_8_TO_FLOAT(src[3]); \ RGBA_FLOAT_TO_RGB_FLOAT(r_tmp, g_tmp, b_tmp, a_tmp, dst[0], dst[1], dst[2]) #define INIT \ float r_tmp, g_tmp, b_tmp, a_tmp; \ INIT_RGBA_FLOAT #include "../csp_packed_packed.h" /* rgba_32_to_rgba_64_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME rgba_32_to_rgba_64_c #define CONVERT \ dst[0] = RGB_8_TO_16(src[0]); \ dst[1] = RGB_8_TO_16(src[1]); \ dst[2] = RGB_8_TO_16(src[2]); \ dst[3] = RGB_8_TO_16(src[3]); \ #include "../csp_packed_packed.h" /* rgba_32_to_rgba_float_c */ #define IN_TYPE uint8_t #define OUT_TYPE float #define IN_ADVANCE 4 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME rgba_32_to_rgba_float_c #define CONVERT \ dst[0] = RGB_8_TO_FLOAT(src[0]); \ dst[1] = RGB_8_TO_FLOAT(src[1]); \ dst[2] = RGB_8_TO_FLOAT(src[2]); \ dst[3] = RGB_8_TO_FLOAT(src[3]); #include "../csp_packed_packed.h" /* Conversion from RGBA 64 to RGB */ /* rgba_64_to_rgb_15_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME rgba_64_to_rgb_15_c #define CONVERT \ RGBA_64_TO_RGB_24(src[0], src[1], src[2], src[3], r_tmp, g_tmp, b_tmp)\ PACK_8_TO_RGB15(r_tmp, g_tmp, b_tmp, *dst) #ifdef HQ #define INIT \ int32_t round_tmp;\ uint8_t r_tmp;\ uint8_t g_tmp;\ uint8_t b_tmp;\ INIT_RGBA_64 #else #define INIT \ uint8_t r_tmp;\ uint8_t g_tmp;\ uint8_t b_tmp;\ INIT_RGBA_64 #endif #include "../csp_packed_packed.h" /* rgba_64_to_bgr_15_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME rgba_64_to_bgr_15_c #define CONVERT \ RGBA_64_TO_RGB_24(src[0], src[1], src[2], src[3], r_tmp, g_tmp, b_tmp) \ PACK_8_TO_BGR15(r_tmp, g_tmp, b_tmp, *dst) #ifdef HQ #define INIT \ int32_t round_tmp;\ uint8_t r_tmp;\ uint8_t g_tmp;\ uint8_t b_tmp;\ INIT_RGBA_64 #else #define INIT \ uint8_t r_tmp;\ uint8_t g_tmp;\ uint8_t b_tmp;\ INIT_RGBA_64 #endif #include "../csp_packed_packed.h" /* rgba_64_to_rgb_16_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME rgba_64_to_rgb_16_c #define CONVERT \ RGBA_64_TO_RGB_24(src[0], src[1], src[2], src[3], r_tmp, g_tmp, b_tmp) \ PACK_8_TO_RGB16(r_tmp, g_tmp, b_tmp, *dst) #ifdef HQ #define INIT \ int32_t round_tmp;\ uint8_t r_tmp;\ uint8_t g_tmp;\ uint8_t b_tmp;\ INIT_RGBA_64 #else #define INIT \ uint8_t r_tmp;\ uint8_t g_tmp;\ uint8_t b_tmp;\ INIT_RGBA_64 #endif #include "../csp_packed_packed.h" /* rgba_64_to_bgr_16_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME rgba_64_to_bgr_16_c #define CONVERT \ RGBA_64_TO_RGB_24(src[0], src[1], src[2], src[3], r_tmp, g_tmp, b_tmp) \ PACK_8_TO_BGR16(r_tmp, g_tmp, b_tmp, *dst) #ifdef HQ #define INIT \ int32_t round_tmp;\ uint8_t r_tmp;\ uint8_t g_tmp;\ uint8_t b_tmp;\ INIT_RGBA_64 #else #define INIT \ uint8_t r_tmp;\ uint8_t g_tmp;\ uint8_t b_tmp;\ INIT_RGBA_64 #endif #include "../csp_packed_packed.h" #endif // !HQ /* rgba_64_to_rgb_24_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define FUNC_NAME rgba_64_to_rgb_24_c #define CONVERT \ RGBA_64_TO_RGB_24(src[0], src[1], src[2], src[3], dst[0], dst[1], dst[2]) #ifdef HQ #define INIT \ int32_t round_tmp;\ INIT_RGBA_64 #else #define INIT \ INIT_RGBA_64 #endif #include "../csp_packed_packed.h" /* rgba_64_to_bgr_24_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define FUNC_NAME rgba_64_to_bgr_24_c #define CONVERT \ RGBA_64_TO_RGB_24(src[0], src[1], src[2], src[3], dst[2], dst[1], dst[0]) #ifdef HQ #define INIT \ int32_t round_tmp;\ INIT_RGBA_64 #else #define INIT \ INIT_RGBA_64 #endif #include "../csp_packed_packed.h" /* rgba_64_to_rgb_32_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME rgba_64_to_rgb_32_c #define CONVERT \ RGBA_64_TO_RGB_24(src[0], src[1], src[2], src[3], dst[0], dst[1], dst[2]) #ifdef HQ #define INIT \ int32_t round_tmp;\ INIT_RGBA_64 #else #define INIT \ INIT_RGBA_64 #endif #include "../csp_packed_packed.h" /* rgba_64_to_bgr_32_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME rgba_64_to_bgr_32_c #define CONVERT \ RGBA_64_TO_RGB_24(src[0], src[1], src[2], src[3], dst[2], dst[1], dst[0]) #ifdef HQ #define INIT \ int32_t round_tmp;\ INIT_RGBA_64 #else #define INIT \ INIT_RGBA_64 #endif #include "../csp_packed_packed.h" #ifndef HQ /* rgba_64_to_rgb_48_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define FUNC_NAME rgba_64_to_rgb_48_c #define CONVERT \ RGBA_64_TO_RGB_48(src[0], src[1], src[2], src[3], dst[0], dst[1], dst[2]) #define INIT \ INIT_RGBA_64 #include "../csp_packed_packed.h" /* rgba_64_to_rgb_float_c */ #define IN_TYPE uint16_t #define OUT_TYPE float #define IN_ADVANCE 4 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define FUNC_NAME rgba_64_to_rgb_float_c #define CONVERT \ RGBA_64_TO_RGB_FLOAT(src[0], src[1], src[2], src[3], dst[0], dst[1], dst[2]); #define INIT \ INIT_RGBA_64 #include "../csp_packed_packed.h" #endif // !HQ /* rgba_64_to_rgba_32_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME rgba_64_to_rgba_32_c #define CONVERT \ RGB_16_TO_8(src[0], dst[0]); \ RGB_16_TO_8(src[1], dst[1]); \ RGB_16_TO_8(src[2], dst[2]); \ RGB_16_TO_8(src[3], dst[3]); \ #ifdef HQ #define INIT \ int32_t round_tmp; #endif #include "../csp_packed_packed.h" #ifndef HQ /* rgba_64_to_rgba_float_c */ #define IN_TYPE uint16_t #define OUT_TYPE float #define IN_ADVANCE 4 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME rgba_64_to_rgba_float_c #define CONVERT \ dst[0] = RGB_16_TO_FLOAT(src[0]); \ dst[1] = RGB_16_TO_FLOAT(src[1]); \ dst[2] = RGB_16_TO_FLOAT(src[2]); \ dst[3] = RGB_16_TO_FLOAT(src[3]); #include "../csp_packed_packed.h" /* Conversion from RGBA 64 to RGB (ignoring alpha) */ /* rgba_64_to_rgb_15_ia_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME rgba_64_to_rgb_15_ia_c #define CONVERT \ PACK_16_TO_RGB15(src[0], src[1], src[2], *dst) #ifdef HQ #define INIT int32_t round_tmp; #endif #include "../csp_packed_packed.h" /* rgba_64_to_bgr_15_ia_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME rgba_64_to_bgr_15_ia_c #define CONVERT \ PACK_16_TO_BGR15(src[0], src[1], src[2], *dst) #ifdef HQ #define INIT int32_t round_tmp; #endif #include "../csp_packed_packed.h" /* rgba_64_to_rgb_16_ia_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME rgba_64_to_rgb_16_ia_c #define CONVERT \ PACK_16_TO_RGB16(src[0], src[1], src[2], *dst) #ifdef HQ #define INIT int32_t round_tmp; #endif #include "../csp_packed_packed.h" /* rgba_64_to_bgr_16_ia_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME rgba_64_to_bgr_16_ia_c #define CONVERT \ PACK_16_TO_BGR16(src[0], src[1], src[2], *dst) #ifdef HQ #define INIT int32_t round_tmp; #endif #include "../csp_packed_packed.h" /* rgba_64_to_rgb_24_ia_c */ #endif // !HQ #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define FUNC_NAME rgba_64_to_rgb_24_ia_c #define CONVERT \ COPY_48_TO_24 #ifdef HQ #define INIT int32_t round_tmp; #endif #include "../csp_packed_packed.h" /* rgba_64_to_bgr_24_ia_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define FUNC_NAME rgba_64_to_bgr_24_ia_c #define CONVERT \ SWAP_48_TO_24 #ifdef HQ #define INIT int32_t round_tmp; #endif #include "../csp_packed_packed.h" /* rgba_64_to_rgb_32_ia_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME rgba_64_to_rgb_32_ia_c #define CONVERT \ COPY_48_TO_24 #ifdef HQ #define INIT int32_t round_tmp; #endif #include "../csp_packed_packed.h" /* rgba_64_to_bgr_32_ia_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME rgba_64_to_bgr_32_ia_c #define CONVERT \ SWAP_48_TO_24 #ifdef HQ #define INIT int32_t round_tmp; #endif #include "../csp_packed_packed.h" #ifndef HQ /* rgba_64_to_rgb_48_ia_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define FUNC_NAME rgba_64_to_rgb_48_ia_c #define CONVERT \ COPY_48_TO_48 #include "../csp_packed_packed.h" /* rgba_64_to_rgb_float_ia_c */ #define IN_TYPE uint16_t #define OUT_TYPE float #define IN_ADVANCE 4 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define FUNC_NAME rgba_64_to_rgb_float_ia_c #define CONVERT \ COPY_48_TO_FLOAT #include "../csp_packed_packed.h" /* Conversion from RGBA float to RGB */ #endif // !HQ /* rgba_float_to_rgb_15_c */ #define IN_TYPE float #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME rgba_float_to_rgb_15_c #define CONVERT \ RGBA_FLOAT_TO_RGB_24(src[0], src[1], src[2], src[3], r_tmp, g_tmp, b_tmp)\ PACK_8_TO_RGB15(r_tmp, g_tmp, b_tmp, *dst) #define INIT \ uint8_t r_tmp;\ uint8_t g_tmp;\ uint8_t b_tmp;\ INIT_RGBA_FLOAT #include "../csp_packed_packed.h" /* rgba_float_to_bgr_15_c */ #define IN_TYPE float #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME rgba_float_to_bgr_15_c #define CONVERT \ RGBA_FLOAT_TO_RGB_24(src[0], src[1], src[2], src[3], r_tmp, g_tmp, b_tmp) \ PACK_8_TO_BGR15(r_tmp, g_tmp, b_tmp, *dst) #define INIT \ uint8_t r_tmp;\ uint8_t g_tmp;\ uint8_t b_tmp;\ INIT_RGBA_FLOAT #include "../csp_packed_packed.h" /* rgba_float_to_rgb_16_c */ #define IN_TYPE float #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME rgba_float_to_rgb_16_c #define CONVERT \ RGBA_FLOAT_TO_RGB_24(src[0], src[1], src[2], src[3], r_tmp, g_tmp, b_tmp) \ PACK_8_TO_RGB16(r_tmp, g_tmp, b_tmp, *dst) #define INIT \ uint8_t r_tmp;\ uint8_t g_tmp;\ uint8_t b_tmp;\ INIT_RGBA_FLOAT #include "../csp_packed_packed.h" /* rgba_float_to_bgr_16_c */ #define IN_TYPE float #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME rgba_float_to_bgr_16_c #define CONVERT \ RGBA_FLOAT_TO_RGB_24(src[0], src[1], src[2], src[3], r_tmp, g_tmp, b_tmp) \ PACK_8_TO_BGR16(r_tmp, g_tmp, b_tmp, *dst) #define INIT \ uint8_t r_tmp;\ uint8_t g_tmp;\ uint8_t b_tmp;\ INIT_RGBA_FLOAT #include "../csp_packed_packed.h" /* rgba_float_to_rgb_24_c */ #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define FUNC_NAME rgba_float_to_rgb_24_c #define CONVERT \ RGBA_FLOAT_TO_RGB_24(src[0], src[1], src[2], src[3], dst[0], dst[1], dst[2]) #define INIT \ INIT_RGBA_FLOAT #include "../csp_packed_packed.h" /* rgba_float_to_bgr_24_c */ #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define FUNC_NAME rgba_float_to_bgr_24_c #define CONVERT \ RGBA_FLOAT_TO_RGB_24(src[0], src[1], src[2], src[3], dst[2], dst[1], dst[0]) #define INIT \ INIT_RGBA_FLOAT #include "../csp_packed_packed.h" /* rgba_float_to_rgb_32_c */ #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME rgba_float_to_rgb_32_c #define CONVERT \ RGBA_FLOAT_TO_RGB_24(src[0], src[1], src[2], src[3], dst[0], dst[1], dst[2]) #define INIT \ INIT_RGBA_FLOAT #include "../csp_packed_packed.h" /* rgba_float_to_bgr_32_c */ #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME rgba_float_to_bgr_32_c #define CONVERT \ RGBA_FLOAT_TO_RGB_24(src[0], src[1], src[2], src[3], dst[2], dst[1], dst[0]) #define INIT \ INIT_RGBA_FLOAT #include "../csp_packed_packed.h" /* rgba_float_to_rgb_48_c */ #define IN_TYPE float #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define FUNC_NAME rgba_float_to_rgb_48_c #define CONVERT \ RGBA_FLOAT_TO_RGB_48(src[0], src[1], src[2], src[3], dst[0], dst[1], dst[2]) #define INIT \ INIT_RGBA_FLOAT #include "../csp_packed_packed.h" #ifndef HQ /* rgba_float_to_rgb_float_c */ #define IN_TYPE float #define OUT_TYPE float #define IN_ADVANCE 4 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define FUNC_NAME rgba_float_to_rgb_float_c #define CONVERT \ RGBA_FLOAT_TO_RGB_FLOAT(src[0], src[1], src[2], src[3], dst[0], dst[1], dst[2]) #define INIT \ INIT_RGBA_FLOAT #include "../csp_packed_packed.h" /* rgba_float_to_rgba_32_c */ #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME rgba_float_to_rgba_32_c #define CONVERT \ RGB_FLOAT_TO_8(src[0], dst[0]); \ RGB_FLOAT_TO_8(src[1], dst[1]); \ RGB_FLOAT_TO_8(src[2], dst[2]); \ RGB_FLOAT_TO_8(src[3], dst[3]); #include "../csp_packed_packed.h" /* rgba_float_to_rgba_64_c */ #define IN_TYPE float #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME rgba_float_to_rgba_64_c #define CONVERT \ RGB_FLOAT_TO_16(src[0], dst[0]); \ RGB_FLOAT_TO_16(src[1], dst[1]); \ RGB_FLOAT_TO_16(src[2], dst[2]); \ RGB_FLOAT_TO_16(src[3], dst[3]); #include "../csp_packed_packed.h" /* Conversion from RGBA float to RGB (ignoring alpha) */ /* rgba_float_to_rgb_15_ia_c */ #define IN_TYPE float #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME rgba_float_to_rgb_15_ia_c #define INIT uint8_t r_tmp, g_tmp, b_tmp; #define CONVERT \ RGB_FLOAT_TO_8(src[0], r_tmp); \ RGB_FLOAT_TO_8(src[1], g_tmp); \ RGB_FLOAT_TO_8(src[2], b_tmp); \ PACK_8_TO_RGB15(r_tmp, g_tmp, b_tmp, *dst) #include "../csp_packed_packed.h" /* rgba_float_to_bgr_15_ia_c */ #define IN_TYPE float #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME rgba_float_to_bgr_15_ia_c #define INIT uint8_t r_tmp, g_tmp, b_tmp; #define CONVERT \ RGB_FLOAT_TO_8(src[0], r_tmp); \ RGB_FLOAT_TO_8(src[1], g_tmp); \ RGB_FLOAT_TO_8(src[2], b_tmp); \ PACK_8_TO_BGR15(r_tmp, g_tmp, b_tmp, *dst) #include "../csp_packed_packed.h" /* rgba_float_to_rgb_16_ia_c */ #define IN_TYPE float #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME rgba_float_to_rgb_16_ia_c #define INIT uint8_t r_tmp, g_tmp, b_tmp; #define CONVERT \ RGB_FLOAT_TO_8(src[0], r_tmp); \ RGB_FLOAT_TO_8(src[1], g_tmp); \ RGB_FLOAT_TO_8(src[2], b_tmp); \ PACK_8_TO_RGB16(r_tmp, g_tmp, b_tmp, *dst) #include "../csp_packed_packed.h" /* rgba_float_to_bgr_16_ia_c */ #define IN_TYPE float #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME rgba_float_to_bgr_16_ia_c #define INIT uint8_t r_tmp, g_tmp, b_tmp; #define CONVERT \ RGB_FLOAT_TO_8(src[0], r_tmp); \ RGB_FLOAT_TO_8(src[1], g_tmp); \ RGB_FLOAT_TO_8(src[2], b_tmp); \ PACK_8_TO_BGR16(r_tmp, g_tmp, b_tmp, *dst) #include "../csp_packed_packed.h" #endif // !HQ /* rgba_float_to_rgb_24_ia_c */ #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define FUNC_NAME rgba_float_to_rgb_24_ia_c #define CONVERT \ COPY_FLOAT_TO_24 #include "../csp_packed_packed.h" /* rgba_float_to_bgr_24_ia_c */ #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define FUNC_NAME rgba_float_to_bgr_24_ia_c #define CONVERT \ SWAP_FLOAT_TO_24 #include "../csp_packed_packed.h" /* rgba_float_to_rgb_32_ia_c */ #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME rgba_float_to_rgb_32_ia_c #define CONVERT \ COPY_FLOAT_TO_24 #include "../csp_packed_packed.h" /* rgba_float_to_bgr_32_ia_c */ #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME rgba_float_to_bgr_32_ia_c #define CONVERT \ SWAP_FLOAT_TO_24 #include "../csp_packed_packed.h" /* rgba_float_to_rgb_48_ia_c */ #define IN_TYPE float #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define FUNC_NAME rgba_float_to_rgb_48_ia_c #define CONVERT \ COPY_FLOAT_TO_48 #include "../csp_packed_packed.h" #ifndef HQ /* rgba_float_to_rgb_float_ia_c */ #define IN_TYPE float #define OUT_TYPE float #define IN_ADVANCE 4 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define FUNC_NAME rgba_float_to_rgb_float_ia_c #define CONVERT \ COPY_FLOAT_TO_FLOAT #include "../csp_packed_packed.h" /* Conversion from RGB formats to RGBA 32 */ /* rgb_15_to_rgba_32_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 1 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME rgb_15_to_rgba_32_c #define CONVERT \ dst[0] = RGB15_TO_R_8(*src);\ dst[1] = RGB15_TO_G_8(*src);\ dst[2] = RGB15_TO_B_8(*src);\ dst[3] = 0xff; #include "../csp_packed_packed.h" /* bgr_15_to_rgba_32_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 1 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME bgr_15_to_rgba_32_c #define CONVERT \ dst[0] = BGR15_TO_R_8(*src);\ dst[1] = BGR15_TO_G_8(*src);\ dst[2] = BGR15_TO_B_8(*src);\ dst[3] = 0xff; #include "../csp_packed_packed.h" /* rgb_16_to_rgba_32_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 1 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME rgb_16_to_rgba_32_c #define CONVERT \ dst[0] = RGB16_TO_R_8(*src);\ dst[1] = RGB16_TO_G_8(*src);\ dst[2] = RGB16_TO_B_8(*src);\ dst[3] = 0xff; #include "../csp_packed_packed.h" /* bgr_16_to_rgba_32_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 1 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME bgr_16_to_rgba_32_c #define CONVERT \ dst[0] = BGR16_TO_R_8(*src);\ dst[1] = BGR16_TO_G_8(*src);\ dst[2] = BGR16_TO_B_8(*src);\ dst[3] = 0xff; #include "../csp_packed_packed.h" /* rgb_24_to_rgba_32_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 3 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME rgb_24_to_rgba_32_c #define CONVERT \ COPY_24 \ dst[3] = 0xff; #include "../csp_packed_packed.h" /* bgr_24_to_rgba_32_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 3 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME bgr_24_to_rgba_32_c #define CONVERT \ SWAP_24 \ dst[3] = 0xff; #include "../csp_packed_packed.h" /* rgb_32_to_rgba_32_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME rgb_32_to_rgba_32_c #define CONVERT \ COPY_24 \ dst[3] = 0xff; #include "../csp_packed_packed.h" /* bgr_32_to_rgba_32_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME bgr_32_to_rgba_32_c #define CONVERT \ SWAP_24 \ dst[3] = 0xff; #include "../csp_packed_packed.h" #endif // !HQ /* rgb_48_to_rgba_32_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 3 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME rgb_48_to_rgba_32_c #define CONVERT \ COPY_48_TO_24 \ dst[3] = 0xff; #ifdef HQ #define INIT int32_t round_tmp; #endif #include "../csp_packed_packed.h" /* rgb_float_to_rgba_32_c */ #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 3 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME rgb_float_to_rgba_32_c #define CONVERT \ COPY_FLOAT_TO_24 \ dst[3] = 0xff; #include "../csp_packed_packed.h" #ifndef HQ /* Conversion from RGB formats to RGBA 64 */ /* rgb_15_to_rgba_64_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint16_t #define IN_ADVANCE 1 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME rgb_15_to_rgba_64_c #define CONVERT \ dst[0] = RGB15_TO_R_16(*src);\ dst[1] = RGB15_TO_G_16(*src);\ dst[2] = RGB15_TO_B_16(*src);\ dst[3] = 0xffff; #include "../csp_packed_packed.h" /* bgr_15_to_rgba_64_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint16_t #define IN_ADVANCE 1 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME bgr_15_to_rgba_64_c #define CONVERT \ dst[0] = BGR15_TO_R_16(*src);\ dst[1] = BGR15_TO_G_16(*src);\ dst[2] = BGR15_TO_B_16(*src);\ dst[3] = 0xffff; #include "../csp_packed_packed.h" /* rgb_16_to_rgba_64_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint16_t #define IN_ADVANCE 1 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME rgb_16_to_rgba_64_c #define CONVERT \ dst[0] = RGB16_TO_R_16(*src);\ dst[1] = RGB16_TO_G_16(*src);\ dst[2] = RGB16_TO_B_16(*src);\ dst[3] = 0xffff; #include "../csp_packed_packed.h" /* bgr_16_to_rgba_64_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint16_t #define IN_ADVANCE 1 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME bgr_16_to_rgba_64_c #define CONVERT \ dst[0] = BGR16_TO_R_16(*src);\ dst[1] = BGR16_TO_G_16(*src);\ dst[2] = BGR16_TO_B_16(*src);\ dst[3] = 0xffff; #include "../csp_packed_packed.h" /* rgb_24_to_rgba_64_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE 3 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME rgb_24_to_rgba_64_c #define CONVERT \ COPY_24_TO_48 \ dst[3] = 0xffff; #include "../csp_packed_packed.h" /* bgr_24_to_rgba_64_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE 3 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME bgr_24_to_rgba_64_c #define CONVERT \ SWAP_24_TO_48 \ dst[3] = 0xffff; #include "../csp_packed_packed.h" /* rgb_32_to_rgba_64_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME rgb_32_to_rgba_64_c #define CONVERT \ COPY_24_TO_48 \ dst[3] = 0xffff; #include "../csp_packed_packed.h" /* bgr_32_to_rgba_64_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME bgr_32_to_rgba_64_c #define CONVERT \ SWAP_24_TO_48 \ dst[3] = 0xffff; #include "../csp_packed_packed.h" /* rgb_48_to_rgba_64_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint16_t #define IN_ADVANCE 3 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME rgb_48_to_rgba_64_c #define CONVERT \ COPY_48_TO_48 \ dst[3] = 0xffff; #include "../csp_packed_packed.h" #endif // !HQ /* rgb_float_to_rgba_64_c */ #define IN_TYPE float #define OUT_TYPE uint16_t #define IN_ADVANCE 3 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME rgb_float_to_rgba_64_c #define CONVERT \ COPY_FLOAT_TO_48 \ dst[3] = 0xffff; #include "../csp_packed_packed.h" #ifndef HQ /* Conversion from RGB formats to RGBA Float */ /* rgb_15_to_rgba_float_c */ #define IN_TYPE uint16_t #define OUT_TYPE float #define IN_ADVANCE 1 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME rgb_15_to_rgba_float_c #define CONVERT \ dst[0] = RGB15_TO_R_FLOAT(*src);\ dst[1] = RGB15_TO_G_FLOAT(*src);\ dst[2] = RGB15_TO_B_FLOAT(*src);\ dst[3] = 1.0; #include "../csp_packed_packed.h" /* bgr_15_to_rgba_float_c */ #define IN_TYPE uint16_t #define OUT_TYPE float #define IN_ADVANCE 1 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME bgr_15_to_rgba_float_c #define CONVERT \ dst[0] = BGR15_TO_R_FLOAT(*src);\ dst[1] = BGR15_TO_G_FLOAT(*src);\ dst[2] = BGR15_TO_B_FLOAT(*src);\ dst[3] = 1.0; #include "../csp_packed_packed.h" /* rgb_16_to_rgba_float_c */ #define IN_TYPE uint16_t #define OUT_TYPE float #define IN_ADVANCE 1 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME rgb_16_to_rgba_float_c #define CONVERT \ dst[0] = RGB16_TO_R_FLOAT(*src);\ dst[1] = RGB16_TO_G_FLOAT(*src);\ dst[2] = RGB16_TO_B_FLOAT(*src);\ dst[3] = 1.0; #include "../csp_packed_packed.h" /* bgr_16_to_rgba_float_c */ #define IN_TYPE uint16_t #define OUT_TYPE float #define IN_ADVANCE 1 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME bgr_16_to_rgba_float_c #define CONVERT \ dst[0] = BGR16_TO_R_FLOAT(*src);\ dst[1] = BGR16_TO_G_FLOAT(*src);\ dst[2] = BGR16_TO_B_FLOAT(*src);\ dst[3] = 1.0; #include "../csp_packed_packed.h" /* rgb_24_to_rgba_float_c */ #define IN_TYPE uint8_t #define OUT_TYPE float #define IN_ADVANCE 3 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME rgb_24_to_rgba_float_c #define CONVERT \ COPY_24_TO_FLOAT \ dst[3] = 1.0; #include "../csp_packed_packed.h" /* bgr_24_to_rgba_float_c */ #define IN_TYPE uint8_t #define OUT_TYPE float #define IN_ADVANCE 3 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME bgr_24_to_rgba_float_c #define CONVERT \ SWAP_24_TO_FLOAT \ dst[3] = 1.0; #include "../csp_packed_packed.h" /* rgb_32_to_rgba_float_c */ #define IN_TYPE uint8_t #define OUT_TYPE float #define IN_ADVANCE 4 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME rgb_32_to_rgba_float_c #define CONVERT \ COPY_24_TO_FLOAT \ dst[3] = 1.0; #include "../csp_packed_packed.h" /* bgr_32_to_rgba_float_c */ #define IN_TYPE uint8_t #define OUT_TYPE float #define IN_ADVANCE 4 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME bgr_32_to_rgba_float_c #define CONVERT \ SWAP_24_TO_FLOAT \ dst[3] = 1.0; #include "../csp_packed_packed.h" /* rgb_48_to_rgba_float_c */ #define IN_TYPE uint16_t #define OUT_TYPE float #define IN_ADVANCE 3 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME rgb_48_to_rgba_float_c #define CONVERT \ COPY_48_TO_FLOAT \ dst[3] = 1.0; #include "../csp_packed_packed.h" /* rgb_float_to_rgba_float_c */ #define IN_TYPE float #define OUT_TYPE float #define IN_ADVANCE 3 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME rgb_float_to_rgba_float_c #define CONVERT \ COPY_FLOAT_TO_FLOAT \ dst[3] = 1.0; #include "../csp_packed_packed.h" #endif // !HQ #ifdef HQ void gavl_init_rgb_rgb_funcs_hq(gavl_pixelformat_function_table_t * tab, const gavl_video_options_t * opt) #else void gavl_init_rgb_rgb_funcs_c(gavl_pixelformat_function_table_t * tab, const gavl_video_options_t * opt) #endif { #ifndef HQ tab->swap_rgb_24 = swap_rgb_24_c; tab->swap_rgb_32 = swap_rgb_32_c; tab->swap_rgb_16 = swap_rgb_16_c; tab->swap_rgb_15 = swap_rgb_15_c; tab->rgb_15_to_16 = rgb_15_to_16_c; tab->rgb_15_to_24 = rgb_15_to_24_c; tab->rgb_15_to_32 = rgb_15_to_32_c; tab->rgb_15_to_48 = rgb_15_to_48_c; tab->rgb_15_to_float = rgb_15_to_float_c; tab->rgb_16_to_15 = rgb_16_to_15_c; tab->rgb_16_to_24 = rgb_16_to_24_c; tab->rgb_16_to_32 = rgb_16_to_32_c; tab->rgb_16_to_48 = rgb_16_to_48_c; tab->rgb_16_to_float = rgb_16_to_float_c; tab->rgb_24_to_15 = rgb_24_to_15_c; tab->rgb_24_to_16 = rgb_24_to_16_c; tab->rgb_24_to_32 = rgb_24_to_32_c; tab->rgb_24_to_48 = rgb_24_to_48_c; tab->rgb_24_to_float = rgb_24_to_float_c; tab->rgb_32_to_15 = rgb_32_to_15_c; tab->rgb_32_to_16 = rgb_32_to_16_c; tab->rgb_32_to_24 = rgb_32_to_24_c; tab->rgb_32_to_48 = rgb_32_to_48_c; tab->rgb_32_to_float = rgb_32_to_float_c; tab->rgb_48_to_15 = rgb_48_to_15_c; tab->rgb_48_to_16 = rgb_48_to_16_c; #endif // !HQ tab->rgb_48_to_24 = rgb_48_to_24_c; tab->rgb_48_to_32 = rgb_48_to_32_c; #ifndef HQ tab->rgb_48_to_float = rgb_48_to_float_c; #endif // !HQ tab->rgb_float_to_15 = rgb_float_to_15_c; tab->rgb_float_to_16 = rgb_float_to_16_c; tab->rgb_float_to_24 = rgb_float_to_24_c; tab->rgb_float_to_32 = rgb_float_to_32_c; tab->rgb_float_to_48 = rgb_float_to_48_c; #ifndef HQ tab->rgb_15_to_16_swap = rgb_15_to_16_swap_c; tab->rgb_15_to_24_swap = rgb_15_to_24_swap_c; tab->rgb_15_to_32_swap = rgb_15_to_32_swap_c; tab->rgb_15_to_48_swap = rgb_15_to_48_swap_c; tab->rgb_15_to_float_swap = rgb_15_to_float_swap_c; tab->rgb_16_to_15_swap = rgb_16_to_15_swap_c; tab->rgb_16_to_24_swap = rgb_16_to_24_swap_c; tab->rgb_16_to_32_swap = rgb_16_to_32_swap_c; tab->rgb_16_to_48_swap = rgb_16_to_48_swap_c; tab->rgb_16_to_float_swap = rgb_16_to_float_swap_c; tab->rgb_24_to_15_swap = rgb_24_to_15_swap_c; tab->rgb_24_to_16_swap = rgb_24_to_16_swap_c; tab->rgb_24_to_32_swap = rgb_24_to_32_swap_c; tab->rgb_24_to_48_swap = rgb_24_to_48_swap_c; tab->rgb_24_to_float_swap = rgb_24_to_float_swap_c; tab->rgb_32_to_15_swap = rgb_32_to_15_swap_c; tab->rgb_32_to_16_swap = rgb_32_to_16_swap_c; tab->rgb_32_to_24_swap = rgb_32_to_24_swap_c; tab->rgb_32_to_48_swap = rgb_32_to_48_swap_c; tab->rgb_32_to_float_swap = rgb_32_to_float_swap_c; tab->rgb_48_to_15_swap = rgb_48_to_15_swap_c; tab->rgb_48_to_16_swap = rgb_48_to_16_swap_c; #endif // !HQ tab->rgb_48_to_24_swap = rgb_48_to_24_swap_c; tab->rgb_48_to_32_swap = rgb_48_to_32_swap_c; tab->rgb_float_to_15_swap = rgb_float_to_15_swap_c; tab->rgb_float_to_16_swap = rgb_float_to_16_swap_c; tab->rgb_float_to_24_swap = rgb_float_to_24_swap_c; tab->rgb_float_to_32_swap = rgb_float_to_32_swap_c; /* Conversion from RGBA to RGB formats */ if(opt->alpha_mode == GAVL_ALPHA_BLEND_COLOR) { #ifndef HQ tab->rgba_32_to_rgb_15 = rgba_32_to_rgb_15_c; tab->rgba_32_to_bgr_15 = rgba_32_to_bgr_15_c; tab->rgba_32_to_rgb_16 = rgba_32_to_rgb_16_c; tab->rgba_32_to_bgr_16 = rgba_32_to_bgr_16_c; tab->rgba_32_to_rgb_24 = rgba_32_to_rgb_24_c; tab->rgba_32_to_bgr_24 = rgba_32_to_bgr_24_c; tab->rgba_32_to_rgb_32 = rgba_32_to_rgb_32_c; tab->rgba_32_to_bgr_32 = rgba_32_to_bgr_32_c; tab->rgba_32_to_rgb_48 = rgba_32_to_rgb_48_c; tab->rgba_32_to_rgb_float = rgba_32_to_rgb_float_c; tab->rgba_64_to_rgb_15 = rgba_64_to_rgb_15_c; tab->rgba_64_to_bgr_15 = rgba_64_to_bgr_15_c; tab->rgba_64_to_rgb_16 = rgba_64_to_rgb_16_c; tab->rgba_64_to_bgr_16 = rgba_64_to_bgr_16_c; #endif // !HQ tab->rgba_64_to_rgb_24 = rgba_64_to_rgb_24_c; tab->rgba_64_to_bgr_24 = rgba_64_to_bgr_24_c; tab->rgba_64_to_rgb_32 = rgba_64_to_rgb_32_c; tab->rgba_64_to_bgr_32 = rgba_64_to_bgr_32_c; #ifndef HQ tab->rgba_64_to_rgb_48 = rgba_64_to_rgb_48_c; tab->rgba_64_to_rgb_float = rgba_64_to_rgb_float_c; #endif // !HQ tab->rgba_float_to_rgb_15 = rgba_float_to_rgb_15_c; tab->rgba_float_to_bgr_15 = rgba_float_to_bgr_15_c; tab->rgba_float_to_rgb_16 = rgba_float_to_rgb_16_c; tab->rgba_float_to_bgr_16 = rgba_float_to_bgr_16_c; tab->rgba_float_to_rgb_24 = rgba_float_to_rgb_24_c; tab->rgba_float_to_bgr_24 = rgba_float_to_bgr_24_c; tab->rgba_float_to_rgb_32 = rgba_float_to_rgb_32_c; tab->rgba_float_to_bgr_32 = rgba_float_to_bgr_32_c; tab->rgba_float_to_rgb_48 = rgba_float_to_rgb_48_c; #ifndef HQ tab->rgba_float_to_rgb_float = rgba_float_to_rgb_float_c; #endif // !HQ } else if(opt->alpha_mode == GAVL_ALPHA_IGNORE) { #ifndef HQ tab->rgba_32_to_rgb_15 = rgb_32_to_15_c; tab->rgba_32_to_bgr_15 = rgb_32_to_15_swap_c; tab->rgba_32_to_rgb_16 = rgb_32_to_16_c; tab->rgba_32_to_bgr_16 = rgb_32_to_16_swap_c; tab->rgba_32_to_rgb_24 = rgb_32_to_24_c; tab->rgba_32_to_bgr_24 = rgb_32_to_24_swap_c; tab->rgba_32_to_bgr_32 = swap_rgb_32_c; tab->rgba_32_to_rgb_48 = rgb_32_to_48_c; tab->rgba_32_to_rgb_float = rgb_32_to_float_c; tab->rgba_64_to_rgb_15 = rgba_64_to_rgb_15_ia_c; tab->rgba_64_to_bgr_15 = rgba_64_to_bgr_15_ia_c; tab->rgba_64_to_rgb_16 = rgba_64_to_rgb_16_ia_c; tab->rgba_64_to_bgr_16 = rgba_64_to_bgr_16_ia_c; #endif // !HQ tab->rgba_64_to_rgb_24 = rgba_64_to_rgb_24_ia_c; tab->rgba_64_to_bgr_24 = rgba_64_to_bgr_24_ia_c; tab->rgba_64_to_rgb_32 = rgba_64_to_rgb_32_ia_c; tab->rgba_64_to_bgr_32 = rgba_64_to_bgr_32_ia_c; #ifndef HQ tab->rgba_64_to_rgb_48 = rgba_64_to_rgb_48_ia_c; tab->rgba_64_to_rgb_float = rgba_64_to_rgb_float_ia_c; tab->rgba_float_to_rgb_15 = rgba_float_to_rgb_15_ia_c; tab->rgba_float_to_bgr_15 = rgba_float_to_bgr_15_ia_c; tab->rgba_float_to_rgb_16 = rgba_float_to_rgb_16_ia_c; tab->rgba_float_to_bgr_16 = rgba_float_to_bgr_16_ia_c; #endif // !HQ tab->rgba_float_to_rgb_24 = rgba_float_to_rgb_24_ia_c; tab->rgba_float_to_bgr_24 = rgba_float_to_bgr_24_ia_c; tab->rgba_float_to_rgb_32 = rgba_float_to_rgb_32_ia_c; tab->rgba_float_to_bgr_32 = rgba_float_to_bgr_32_ia_c; tab->rgba_float_to_rgb_48 = rgba_float_to_rgb_48_ia_c; #ifndef HQ tab->rgba_float_to_rgb_float = rgba_float_to_rgb_float_ia_c; #endif // !HQ } #ifndef HQ tab->rgba_32_to_rgba_64 = rgba_32_to_rgba_64_c; tab->rgba_32_to_rgba_float = rgba_32_to_rgba_float_c; #endif // !HQ tab->rgba_64_to_rgba_32 = rgba_64_to_rgba_32_c; #ifndef HQ tab->rgba_64_to_rgba_float = rgba_64_to_rgba_float_c; #endif // !HQ #ifndef HQ tab->rgba_float_to_rgba_32 = rgba_float_to_rgba_32_c; tab->rgba_float_to_rgba_64 = rgba_float_to_rgba_64_c; /* Conversion from RGB formats to RGBA 32 */ tab->rgb_15_to_rgba_32 = rgb_15_to_rgba_32_c; tab->bgr_15_to_rgba_32 = bgr_15_to_rgba_32_c; tab->rgb_16_to_rgba_32 = rgb_16_to_rgba_32_c; tab->bgr_16_to_rgba_32 = bgr_16_to_rgba_32_c; tab->rgb_24_to_rgba_32 = rgb_24_to_rgba_32_c; tab->bgr_24_to_rgba_32 = bgr_24_to_rgba_32_c; tab->rgb_32_to_rgba_32 = rgb_32_to_rgba_32_c; tab->bgr_32_to_rgba_32 = bgr_32_to_rgba_32_c; #endif // !HQ tab->rgb_48_to_rgba_32 = rgb_48_to_rgba_32_c; tab->rgb_float_to_rgba_32 = rgb_float_to_rgba_32_c; #ifndef HQ tab->rgb_15_to_rgba_64 = rgb_15_to_rgba_64_c; tab->bgr_15_to_rgba_64 = bgr_15_to_rgba_64_c; tab->rgb_16_to_rgba_64 = rgb_16_to_rgba_64_c; tab->bgr_16_to_rgba_64 = bgr_16_to_rgba_64_c; tab->rgb_24_to_rgba_64 = rgb_24_to_rgba_64_c; tab->bgr_24_to_rgba_64 = bgr_24_to_rgba_64_c; tab->rgb_32_to_rgba_64 = rgb_32_to_rgba_64_c; tab->bgr_32_to_rgba_64 = bgr_32_to_rgba_64_c; tab->rgb_48_to_rgba_64 = rgb_48_to_rgba_64_c; #endif // !HQ tab->rgb_float_to_rgba_64 = rgb_float_to_rgba_64_c; #ifndef HQ tab->rgb_15_to_rgba_float = rgb_15_to_rgba_float_c; tab->bgr_15_to_rgba_float = bgr_15_to_rgba_float_c; tab->rgb_16_to_rgba_float = rgb_16_to_rgba_float_c; tab->bgr_16_to_rgba_float = bgr_16_to_rgba_float_c; tab->rgb_24_to_rgba_float = rgb_24_to_rgba_float_c; tab->bgr_24_to_rgba_float = bgr_24_to_rgba_float_c; tab->rgb_32_to_rgba_float = rgb_32_to_rgba_float_c; tab->bgr_32_to_rgba_float = bgr_32_to_rgba_float_c; tab->rgb_48_to_rgba_float = rgb_48_to_rgba_float_c; tab->rgb_float_to_rgba_float = rgb_float_to_rgba_float_c; #endif // !HQ } #undef COPY_24 #undef SWAP_24 bplaum-gavl-b9385e3/gavl/c/rgb_yuv_c.c000066400000000000000000004427261513252040200175740ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include #include #include "colorspace_tables.h" #include "colorspace_macros.h" #define INIT_RGBA_FLOAT float anti_alpha; \ float background_r=ctx->options->background_float[0]; \ float background_g=ctx->options->background_float[1]; \ float background_b=ctx->options->background_float[2]; /**************************************************** * Conversions to YUY2 ****************************************************/ #ifndef HQ /* rgb_15_to_yuy2_c */ #define FUNC_NAME rgb_15_to_yuy2_c #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 2 #define OUT_ADVANCE 4 #define NUM_PIXELS 2 #define CONVERT \ RGB_24_TO_YUV_8(RGB15_TO_R_8(src[0]),\ RGB15_TO_G_8(src[0]),\ RGB15_TO_B_8(src[0]),dst[0],dst[1],dst[3])\ RGB_24_TO_Y_8(RGB15_TO_R_8(src[1]),RGB15_TO_G_8(src[1]),RGB15_TO_B_8(src[1]),dst[2])\ #include "../csp_packed_packed.h" /* bgr_15_to_yuy2_c */ #define FUNC_NAME bgr_15_to_yuy2_c #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 2 #define OUT_ADVANCE 4 #define NUM_PIXELS 2 #define CONVERT \ RGB_24_TO_YUV_8(BGR15_TO_R_8(src[0]),\ BGR15_TO_G_8(src[0]),\ BGR15_TO_B_8(src[0]),dst[0],dst[1],dst[3])\ RGB_24_TO_Y_8(BGR15_TO_R_8(src[1]),BGR15_TO_G_8(src[1]),BGR15_TO_B_8(src[1]),dst[2])\ #include "../csp_packed_packed.h" /* rgb_16_to_yuy2_c */ #define FUNC_NAME rgb_16_to_yuy2_c #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 2 #define OUT_ADVANCE 4 #define NUM_PIXELS 2 #define CONVERT \ RGB_24_TO_YUV_8(RGB16_TO_R_8(src[0]),\ RGB16_TO_G_8(src[0]),\ RGB16_TO_B_8(src[0]),dst[0],dst[1],dst[3])\ RGB_24_TO_Y_8(RGB16_TO_R_8(src[1]),RGB16_TO_G_8(src[1]),RGB16_TO_B_8(src[1]),dst[2])\ #include "../csp_packed_packed.h" /* bgr_16_to_yuy2_c */ #define FUNC_NAME bgr_16_to_yuy2_c #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 2 #define OUT_ADVANCE 4 #define NUM_PIXELS 2 #define CONVERT \ RGB_24_TO_YUV_8(BGR16_TO_R_8(src[0]),\ BGR16_TO_G_8(src[0]),\ BGR16_TO_B_8(src[0]),dst[0],dst[1],dst[3])\ RGB_24_TO_Y_8(BGR16_TO_R_8(src[1]),BGR16_TO_G_8(src[1]),BGR16_TO_B_8(src[1]),dst[2])\ #include "../csp_packed_packed.h" /* rgb_24_to_yuy2_c */ #define FUNC_NAME rgb_24_to_yuy2_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 6 #define OUT_ADVANCE 4 #define NUM_PIXELS 2 #define CONVERT \ RGB_24_TO_YUV_8(src[0],src[1],src[2],dst[0],dst[1],dst[3]) \ RGB_24_TO_Y_8(src[3],src[4],src[5],dst[2]) #include "../csp_packed_packed.h" #endif // !HQ /* rgb_48_to_yuy2_c */ #define FUNC_NAME rgb_48_to_yuy2_c #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 6 #define OUT_ADVANCE 4 #define NUM_PIXELS 2 #define CONVERT \ RGB_48_TO_YUV_8(src[0],src[1],src[2],dst[0],dst[1],dst[3]) \ RGB_48_TO_Y_8(src[3],src[4],src[5],dst[2]) #include "../csp_packed_packed.h" /* rgb_float_to_yuy2_c */ #define FUNC_NAME rgb_float_to_yuy2_c #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 6 #define OUT_ADVANCE 4 #define NUM_PIXELS 2 #define INIT INIT_RGB_FLOAT_TO_YUV #define CONVERT \ RGB_FLOAT_TO_YUV_8(src[0],src[1],src[2],dst[0],dst[1],dst[3]) \ RGB_FLOAT_TO_Y_8(src[3],src[4],src[5],dst[2]) #include "../csp_packed_packed.h" #ifndef HQ /* bgr_24_to_yuy2_c */ #define FUNC_NAME bgr_24_to_yuy2_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 6 #define OUT_ADVANCE 4 #define NUM_PIXELS 2 #define CONVERT \ RGB_24_TO_YUV_8(src[2],src[1],src[0],dst[0],dst[1],dst[3]) \ RGB_24_TO_Y_8(src[5],src[4],src[3],dst[2]) #include "../csp_packed_packed.h" /* rgb_32_to_yuy2_c */ #define FUNC_NAME rgb_32_to_yuy2_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE 4 #define NUM_PIXELS 2 #define CONVERT \ RGB_24_TO_YUV_8(src[0],src[1],src[2],dst[0],dst[1],dst[3]) \ RGB_24_TO_Y_8(src[4],src[5],src[6],dst[2]) #include "../csp_packed_packed.h" /* bgr_32_to_yuy2_c */ #define FUNC_NAME bgr_32_to_yuy2_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE 4 #define NUM_PIXELS 2 #define CONVERT \ RGB_24_TO_YUV_8(src[2],src[1],src[0],dst[0],dst[1],dst[3]) \ RGB_24_TO_Y_8(src[6],src[5],src[4],dst[2]) #include "../csp_packed_packed.h" /**************************************************** * Conversions to YUVA 32 ****************************************************/ /* rgb_15_to_yuva_32_c */ #define FUNC_NAME rgb_15_to_yuva_32_c #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 1 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define CONVERT \ RGB_24_TO_YUV_8(RGB15_TO_R_8(src[0]),\ RGB15_TO_G_8(src[0]), \ RGB15_TO_B_8(src[0]),dst[0],dst[1],dst[2]) \ dst[3] = 0xff; #include "../csp_packed_packed.h" /* rgb_15_to_yuva_64_c */ #define FUNC_NAME rgb_15_to_yuva_64_c #define IN_TYPE uint16_t #define OUT_TYPE uint16_t #define IN_ADVANCE 1 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define CONVERT \ RGB_24_TO_YUV_16(RGB15_TO_R_8(src[0]),\ RGB15_TO_G_8(src[0]), \ RGB15_TO_B_8(src[0]),dst[0],dst[1],dst[2]) \ dst[3] = 0xffff; #include "../csp_packed_packed.h" /* rgb_15_to_yuva_float_c */ #define FUNC_NAME rgb_15_to_yuva_float_c #define IN_TYPE uint16_t #define OUT_TYPE float #define IN_ADVANCE 1 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define CONVERT \ RGB_24_TO_YUV_FLOAT(RGB15_TO_R_8(src[0]),\ RGB15_TO_G_8(src[0]), \ RGB15_TO_B_8(src[0]),dst[0],dst[1],dst[2]) \ dst[3] = 1.0; #include "../csp_packed_packed.h" /* rgb_15_to_yuv_float_c */ #define FUNC_NAME rgb_15_to_yuv_float_c #define IN_TYPE uint16_t #define OUT_TYPE float #define IN_ADVANCE 1 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define CONVERT \ RGB_24_TO_YUV_FLOAT(RGB15_TO_R_8(src[0]),\ RGB15_TO_G_8(src[0]), \ RGB15_TO_B_8(src[0]),dst[0],dst[1],dst[2]) #include "../csp_packed_packed.h" /* bgr_15_to_yuva_32_c */ #define FUNC_NAME bgr_15_to_yuva_32_c #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 1 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define CONVERT \ RGB_24_TO_YUV_8(BGR15_TO_R_8(src[0]),\ BGR15_TO_G_8(src[0]),\ BGR15_TO_B_8(src[0]),dst[0],dst[1],dst[2]) \ dst[3] = 0xff; #include "../csp_packed_packed.h" /* bgr_15_to_yuva_64_c */ #define FUNC_NAME bgr_15_to_yuva_64_c #define IN_TYPE uint16_t #define OUT_TYPE uint16_t #define IN_ADVANCE 1 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define CONVERT \ RGB_24_TO_YUV_16(BGR15_TO_R_8(src[0]),\ BGR15_TO_G_8(src[0]), \ BGR15_TO_B_8(src[0]),dst[0],dst[1],dst[2]) \ dst[3] = 0xffff; #include "../csp_packed_packed.h" /* bgr_15_to_yuva_float_c */ #define FUNC_NAME bgr_15_to_yuva_float_c #define IN_TYPE uint16_t #define OUT_TYPE float #define IN_ADVANCE 1 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define CONVERT \ RGB_24_TO_YUV_FLOAT(BGR15_TO_R_8(src[0]),\ BGR15_TO_G_8(src[0]), \ BGR15_TO_B_8(src[0]),dst[0],dst[1],dst[2]) \ dst[3] = 1.0; #include "../csp_packed_packed.h" /* bgr_15_to_yuv_float_c */ #define FUNC_NAME bgr_15_to_yuv_float_c #define IN_TYPE uint16_t #define OUT_TYPE float #define IN_ADVANCE 1 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define CONVERT \ RGB_24_TO_YUV_FLOAT(BGR15_TO_R_8(src[0]),\ BGR15_TO_G_8(src[0]), \ BGR15_TO_B_8(src[0]),dst[0],dst[1],dst[2]) #include "../csp_packed_packed.h" /* rgb_16_to_yuva_32_c */ #define FUNC_NAME rgb_16_to_yuva_32_c #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 1 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define CONVERT \ RGB_24_TO_YUV_8(RGB16_TO_R_8(src[0]),\ RGB16_TO_G_8(src[0]),\ RGB16_TO_B_8(src[0]),dst[0],dst[1],dst[2]) \ dst[3] = 0xff; #include "../csp_packed_packed.h" /* rgb_16_to_yuva_64_c */ #define FUNC_NAME rgb_16_to_yuva_64_c #define IN_TYPE uint16_t #define OUT_TYPE uint16_t #define IN_ADVANCE 1 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define CONVERT \ RGB_24_TO_YUV_16(RGB16_TO_R_8(src[0]),\ RGB16_TO_G_8(src[0]), \ RGB16_TO_B_8(src[0]),dst[0],dst[1],dst[2]) \ dst[3] = 0xffff; #include "../csp_packed_packed.h" /* rgb_16_to_yuva_float_c */ #define FUNC_NAME rgb_16_to_yuva_float_c #define IN_TYPE uint16_t #define OUT_TYPE float #define IN_ADVANCE 1 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define CONVERT \ RGB_24_TO_YUV_FLOAT(RGB16_TO_R_8(src[0]),\ RGB16_TO_G_8(src[0]), \ RGB16_TO_B_8(src[0]),dst[0],dst[1],dst[2]) \ dst[3] = 1.0; #include "../csp_packed_packed.h" /* rgb_16_to_yuv_float_c */ #define FUNC_NAME rgb_16_to_yuv_float_c #define IN_TYPE uint16_t #define OUT_TYPE float #define IN_ADVANCE 1 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define CONVERT \ RGB_24_TO_YUV_FLOAT(RGB16_TO_R_8(src[0]),\ RGB16_TO_G_8(src[0]), \ RGB16_TO_B_8(src[0]),dst[0],dst[1],dst[2]) #include "../csp_packed_packed.h" /* bgr_16_to_yuva_32_c */ #define FUNC_NAME bgr_16_to_yuva_32_c #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 1 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define CONVERT \ RGB_24_TO_YUV_8(BGR16_TO_R_8(src[0]),\ BGR16_TO_G_8(src[0]),\ BGR16_TO_B_8(src[0]),dst[0],dst[1],dst[2]) \ dst[3] = 0xff; #include "../csp_packed_packed.h" /* bgr_16_to_yuva_64_c */ #define FUNC_NAME bgr_16_to_yuva_64_c #define IN_TYPE uint16_t #define OUT_TYPE uint16_t #define IN_ADVANCE 1 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define CONVERT \ RGB_24_TO_YUV_16(BGR16_TO_R_8(src[0]),\ BGR16_TO_G_8(src[0]), \ BGR16_TO_B_8(src[0]),dst[0],dst[1],dst[2]) \ dst[3] = 0xffff; #include "../csp_packed_packed.h" /* bgr_16_to_yuva_float_c */ #define FUNC_NAME bgr_16_to_yuva_float_c #define IN_TYPE uint16_t #define OUT_TYPE float #define IN_ADVANCE 1 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define CONVERT \ RGB_24_TO_YUV_FLOAT(BGR16_TO_R_8(src[0]),\ BGR16_TO_G_8(src[0]), \ BGR16_TO_B_8(src[0]),dst[0],dst[1],dst[2]) \ dst[3] = 1.0; #include "../csp_packed_packed.h" /* bgr_16_to_yuv_float_c */ #define FUNC_NAME bgr_16_to_yuv_float_c #define IN_TYPE uint16_t #define OUT_TYPE float #define IN_ADVANCE 1 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define CONVERT \ RGB_24_TO_YUV_FLOAT(BGR16_TO_R_8(src[0]),\ BGR16_TO_G_8(src[0]), \ BGR16_TO_B_8(src[0]),dst[0],dst[1],dst[2]) #include "../csp_packed_packed.h" /* rgb_24_to_yuva_32_c */ #define FUNC_NAME rgb_24_to_yuva_32_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 3 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define CONVERT \ RGB_24_TO_YUV_8(src[0],src[1],src[2],dst[0],dst[1],dst[2]) \ dst[3] = 0xff; #include "../csp_packed_packed.h" /* rgb_24_to_yuva_64_c */ #define FUNC_NAME rgb_24_to_yuva_64_c #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE 3 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define CONVERT \ RGB_24_TO_YUV_16(src[0],src[1],src[2],dst[0],dst[1],dst[2]) \ dst[3] = 0xffff; #include "../csp_packed_packed.h" /* rgb_24_to_yuva_float_c */ #define FUNC_NAME rgb_24_to_yuva_float_c #define IN_TYPE uint8_t #define OUT_TYPE float #define IN_ADVANCE 3 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define CONVERT \ RGB_24_TO_YUV_FLOAT(src[0],src[1],src[2],dst[0],dst[1],dst[2]) \ dst[3] = 1.0; #include "../csp_packed_packed.h" /* rgb_24_to_yuv_float_c */ #define FUNC_NAME rgb_24_to_yuv_float_c #define IN_TYPE uint8_t #define OUT_TYPE float #define IN_ADVANCE 3 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define CONVERT \ RGB_24_TO_YUV_FLOAT(src[0],src[1],src[2],dst[0],dst[1],dst[2]) #include "../csp_packed_packed.h" #endif // !HQ /* rgb_48_to_yuva_32_c */ #define FUNC_NAME rgb_48_to_yuva_32_c #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 3 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define CONVERT \ RGB_48_TO_YUV_8(src[0],src[1],src[2],dst[0],dst[1],dst[2]) \ dst[3] = 0xff; #include "../csp_packed_packed.h" #ifndef HQ /* rgb_48_to_yuva_64_c */ #define FUNC_NAME rgb_48_to_yuva_64_c #define IN_TYPE uint16_t #define OUT_TYPE uint16_t #define IN_ADVANCE 3 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define CONVERT \ RGB_48_TO_YUV_16(src[0],src[1],src[2],dst[0],dst[1],dst[2]) \ dst[3] = 0xffff; #include "../csp_packed_packed.h" /* rgb_48_to_yuva_float_c */ #define FUNC_NAME rgb_48_to_yuva_float_c #define IN_TYPE uint16_t #define OUT_TYPE float #define IN_ADVANCE 3 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define CONVERT \ RGB_48_TO_YUV_FLOAT(src[0],src[1],src[2],dst[0],dst[1],dst[2]) \ dst[3] = 1.0; #include "../csp_packed_packed.h" /* rgb_48_to_yuv_float_c */ #define FUNC_NAME rgb_48_to_yuv_float_c #define IN_TYPE uint16_t #define OUT_TYPE float #define IN_ADVANCE 3 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define CONVERT \ RGB_48_TO_YUV_FLOAT(src[0],src[1],src[2],dst[0],dst[1],dst[2]) #include "../csp_packed_packed.h" #endif // !HQ /* rgb_float_to_yuva_32_c */ #define FUNC_NAME rgb_float_to_yuva_32_c #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 3 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define INIT INIT_RGB_FLOAT_TO_YUV #define CONVERT \ RGB_FLOAT_TO_YUV_8(src[0],src[1],src[2],dst[0],dst[1],dst[2]) \ dst[3] = 0xff; #include "../csp_packed_packed.h" /* rgb_float_to_yuva_64_c */ #define FUNC_NAME rgb_float_to_yuva_64_c #define IN_TYPE float #define OUT_TYPE uint16_t #define IN_ADVANCE 3 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define INIT INIT_RGB_FLOAT_TO_YUV #define CONVERT \ RGB_FLOAT_TO_YUV_16(src[0],src[1],src[2],dst[0],dst[1],dst[2]) \ dst[3] = 0xffff; #include "../csp_packed_packed.h" #ifndef HQ /* rgb_float_to_yuva_float_c */ #define FUNC_NAME rgb_float_to_yuva_float_c #define IN_TYPE float #define OUT_TYPE float #define IN_ADVANCE 3 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define CONVERT \ RGB_FLOAT_TO_YUV_FLOAT(src[0],src[1],src[2],dst[0],dst[1],dst[2]) \ dst[3] = 1.0; #include "../csp_packed_packed.h" /* rgb_float_to_yuv_float_c */ #define FUNC_NAME rgb_float_to_yuv_float_c #define IN_TYPE float #define OUT_TYPE float #define IN_ADVANCE 3 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define CONVERT \ RGB_FLOAT_TO_YUV_FLOAT(src[0],src[1],src[2],dst[0],dst[1],dst[2]) #include "../csp_packed_packed.h" /* bgr_24_to_yuva_32_c */ #define FUNC_NAME bgr_24_to_yuva_32_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 3 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define CONVERT \ RGB_24_TO_YUV_8(src[2],src[1],src[0],dst[0],dst[1],dst[2]) \ dst[3] = 0xff; #include "../csp_packed_packed.h" /* bgr_24_to_yuva_64_c */ #define FUNC_NAME bgr_24_to_yuva_64_c #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE 3 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define CONVERT \ RGB_24_TO_YUV_16(src[2],src[1],src[0],dst[0],dst[1],dst[2]) \ dst[3] = 0xffff; #include "../csp_packed_packed.h" /* bgr_24_to_yuva_float_c */ #define FUNC_NAME bgr_24_to_yuva_float_c #define IN_TYPE uint8_t #define OUT_TYPE float #define IN_ADVANCE 3 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define CONVERT \ RGB_24_TO_YUV_FLOAT(src[2],src[1],src[0],dst[0],dst[1],dst[2]) \ dst[3] = 1.0; #include "../csp_packed_packed.h" /* bgr_24_to_yuv_float_c */ #define FUNC_NAME bgr_24_to_yuv_float_c #define IN_TYPE uint8_t #define OUT_TYPE float #define IN_ADVANCE 3 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define CONVERT \ RGB_24_TO_YUV_FLOAT(src[2],src[1],src[0],dst[0],dst[1],dst[2]) #include "../csp_packed_packed.h" /* rgb_32_to_yuva_32_c */ #define FUNC_NAME rgb_32_to_yuva_32_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define CONVERT \ RGB_24_TO_YUV_8(src[0],src[1],src[2],dst[0],dst[1],dst[2]) \ dst[3] = 0xff; #include "../csp_packed_packed.h" /* rgb_32_to_yuva_64_c */ #define FUNC_NAME rgb_32_to_yuva_64_c #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define CONVERT \ RGB_24_TO_YUV_16(src[0],src[1],src[2],dst[0],dst[1],dst[2]) \ dst[3] = 0xffff; #include "../csp_packed_packed.h" /* rgb_32_to_yuva_float_c */ #define FUNC_NAME rgb_32_to_yuva_float_c #define IN_TYPE uint8_t #define OUT_TYPE float #define IN_ADVANCE 4 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define CONVERT \ RGB_24_TO_YUV_FLOAT(src[0],src[1],src[2],dst[0],dst[1],dst[2]) \ dst[3] = 1.0; #include "../csp_packed_packed.h" /* rgb_32_to_yuv_float_c */ #define FUNC_NAME rgb_32_to_yuv_float_c #define IN_TYPE uint8_t #define OUT_TYPE float #define IN_ADVANCE 4 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define CONVERT \ RGB_24_TO_YUV_FLOAT(src[0],src[1],src[2],dst[0],dst[1],dst[2]) #include "../csp_packed_packed.h" /* bgr_32_to_yuva_32_c */ #define FUNC_NAME bgr_32_to_yuva_32_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define CONVERT \ RGB_24_TO_YUV_8(src[2],src[1],src[0],dst[0],dst[1],dst[2]) \ dst[3] = 0xff; #include "../csp_packed_packed.h" /* bgr_32_to_yuva_64_c */ #define FUNC_NAME bgr_32_to_yuva_64_c #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define CONVERT \ RGB_24_TO_YUV_16(src[2],src[1],src[0],dst[0],dst[1],dst[2]) \ dst[3] = 0xffff; #include "../csp_packed_packed.h" /* bgr_32_to_yuva_float_c */ #define FUNC_NAME bgr_32_to_yuva_float_c #define IN_TYPE uint8_t #define OUT_TYPE float #define IN_ADVANCE 4 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define CONVERT \ RGB_24_TO_YUV_FLOAT(src[2],src[1],src[0],dst[0],dst[1],dst[2]) \ dst[3] = 1.0; #include "../csp_packed_packed.h" /* bgr_32_to_yuv_float_c */ #define FUNC_NAME bgr_32_to_yuv_float_c #define IN_TYPE uint8_t #define OUT_TYPE float #define IN_ADVANCE 4 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define CONVERT \ RGB_24_TO_YUV_FLOAT(src[2],src[1],src[0],dst[0],dst[1],dst[2]) #include "../csp_packed_packed.h" /**************************************************** * Conversions to UYVY ****************************************************/ /* rgb_15_to_uyvy_c */ #define FUNC_NAME rgb_15_to_uyvy_c #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 2 #define OUT_ADVANCE 4 #define NUM_PIXELS 2 #define CONVERT \ RGB_24_TO_YUV_8(RGB15_TO_R_8(src[0]),\ RGB15_TO_G_8(src[0]),\ RGB15_TO_B_8(src[0]),dst[1],dst[0],dst[2])\ RGB_24_TO_Y_8(RGB15_TO_R_8(src[1]),RGB15_TO_G_8(src[1]),RGB15_TO_B_8(src[1]),dst[3])\ #include "../csp_packed_packed.h" /* bgr_15_to_uyvy_c */ #define FUNC_NAME bgr_15_to_uyvy_c #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 2 #define OUT_ADVANCE 4 #define NUM_PIXELS 2 #define CONVERT \ RGB_24_TO_YUV_8(BGR15_TO_R_8(src[0]),\ BGR15_TO_G_8(src[0]),\ BGR15_TO_B_8(src[0]),dst[1],dst[0],dst[2])\ RGB_24_TO_Y_8(BGR15_TO_R_8(src[1]),BGR15_TO_G_8(src[1]),BGR15_TO_B_8(src[1]),dst[3])\ #include "../csp_packed_packed.h" /* rgb_16_to_uyvy_c */ #define FUNC_NAME rgb_16_to_uyvy_c #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 2 #define OUT_ADVANCE 4 #define NUM_PIXELS 2 #define CONVERT \ RGB_24_TO_YUV_8(RGB16_TO_R_8(src[0]),\ RGB16_TO_G_8(src[0]),\ RGB16_TO_B_8(src[0]),dst[1],dst[0],dst[2])\ RGB_24_TO_Y_8(RGB16_TO_R_8(src[1]),RGB16_TO_G_8(src[1]),RGB16_TO_B_8(src[1]),dst[3])\ #include "../csp_packed_packed.h" /* bgr_16_to_uyvy_c */ #define FUNC_NAME bgr_16_to_uyvy_c #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 2 #define OUT_ADVANCE 4 #define NUM_PIXELS 2 #define CONVERT \ RGB_24_TO_YUV_8(BGR16_TO_R_8(src[0]),\ BGR16_TO_G_8(src[0]),\ BGR16_TO_B_8(src[0]),dst[1],dst[0],dst[2])\ RGB_24_TO_Y_8(BGR16_TO_R_8(src[1]),BGR16_TO_G_8(src[1]),BGR16_TO_B_8(src[1]),dst[3])\ #include "../csp_packed_packed.h" /* rgb_24_to_uyvy_c */ #define FUNC_NAME rgb_24_to_uyvy_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 6 #define OUT_ADVANCE 4 #define NUM_PIXELS 2 #define CONVERT \ RGB_24_TO_YUV_8(src[0],src[1],src[2],dst[1],dst[0],dst[2]) \ RGB_24_TO_Y_8(src[3],src[4],src[5],dst[3]) #include "../csp_packed_packed.h" #endif // !HQ /* rgb_48_to_uyvy_c */ #define FUNC_NAME rgb_48_to_uyvy_c #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 6 #define OUT_ADVANCE 4 #define NUM_PIXELS 2 #define CONVERT \ RGB_48_TO_YUV_8(src[0],src[1],src[2],dst[1],dst[0],dst[2]) \ RGB_48_TO_Y_8(src[3],src[4],src[5],dst[3]) #include "../csp_packed_packed.h" /* rgb_float_to_uyvy_c */ #define FUNC_NAME rgb_float_to_uyvy_c #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 6 #define OUT_ADVANCE 4 #define NUM_PIXELS 2 #define INIT INIT_RGB_FLOAT_TO_YUV #define CONVERT \ RGB_FLOAT_TO_YUV_8(src[0],src[1],src[2],dst[1],dst[0],dst[2]) \ RGB_FLOAT_TO_Y_8(src[3],src[4],src[5],dst[3]) #include "../csp_packed_packed.h" #ifndef HQ /* bgr_24_to_uyvy_c */ #define FUNC_NAME bgr_24_to_uyvy_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 6 #define OUT_ADVANCE 4 #define NUM_PIXELS 2 #define CONVERT \ RGB_24_TO_YUV_8(src[2],src[1],src[0],dst[1],dst[0],dst[2]) \ RGB_24_TO_Y_8(src[5],src[4],src[3],dst[3]) #include "../csp_packed_packed.h" /* rgb_32_to_uyvy_c */ #define FUNC_NAME rgb_32_to_uyvy_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE 4 #define NUM_PIXELS 2 #define CONVERT \ RGB_24_TO_YUV_8(src[0],src[1],src[2],dst[1],dst[0],dst[2]) \ RGB_24_TO_Y_8(src[4],src[5],src[6],dst[3]) #include "../csp_packed_packed.h" /* bgr_32_to_uyvy_c */ #define FUNC_NAME bgr_32_to_uyvy_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE 4 #define NUM_PIXELS 2 #define CONVERT \ RGB_24_TO_YUV_8(src[2],src[1],src[0],dst[1],dst[0],dst[2]) \ RGB_24_TO_Y_8(src[6],src[5],src[4],dst[3]) #include "../csp_packed_packed.h" /**************************************************** * Conversions to YUV 422 P ****************************************************/ /* rgb_15_to_yuv_422_p_c */ #define FUNC_NAME rgb_15_to_yuv_422_p_c #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 2 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CONVERT_YUV \ RGB_24_TO_YUV_8(RGB15_TO_R_8(src[0]), \ RGB15_TO_G_8(src[0]), \ RGB15_TO_B_8(src[0]), \ dst_y[0],*dst_u,*dst_v) \ RGB_24_TO_Y_8(RGB15_TO_R_8(src[1]), \ RGB15_TO_G_8(src[1]), \ RGB15_TO_B_8(src[1]), \ dst_y[1]) #define CHROMA_SUB 1 #include "../csp_packed_planar.h" /* bgr_15_to_yuv_422_p_c */ #define FUNC_NAME bgr_15_to_yuv_422_p_c #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 2 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CONVERT_YUV \ RGB_24_TO_YUV_8(BGR15_TO_R_8(src[0]), \ BGR15_TO_G_8(src[0]), \ BGR15_TO_B_8(src[0]), \ dst_y[0],*dst_u,*dst_v) \ RGB_24_TO_Y_8(BGR15_TO_R_8(src[1]), \ BGR15_TO_G_8(src[1]), \ BGR15_TO_B_8(src[1]), \ dst_y[1]) #define CHROMA_SUB 1 #include "../csp_packed_planar.h" /* rgb_16_to_yuv_422_p_c */ #define FUNC_NAME rgb_16_to_yuv_422_p_c #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 2 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CONVERT_YUV \ RGB_24_TO_YUV_8(RGB16_TO_R_8(src[0]), \ RGB16_TO_G_8(src[0]), \ RGB16_TO_B_8(src[0]), \ dst_y[0],*dst_u,*dst_v) \ RGB_24_TO_Y_8(RGB16_TO_R_8(src[1]), \ RGB16_TO_G_8(src[1]), \ RGB16_TO_B_8(src[1]), \ dst_y[1]) #define CHROMA_SUB 1 #include "../csp_packed_planar.h" /* bgr_16_to_yuv_422_p_c */ #define FUNC_NAME bgr_16_to_yuv_422_p_c #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 2 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CONVERT_YUV \ RGB_24_TO_YUV_8(BGR16_TO_R_8(src[0]), \ BGR16_TO_G_8(src[0]), \ BGR16_TO_B_8(src[0]), \ dst_y[0],*dst_u,*dst_v) \ RGB_24_TO_Y_8(BGR16_TO_R_8(src[1]), \ BGR16_TO_G_8(src[1]), \ BGR16_TO_B_8(src[1]), \ dst_y[1]) #define CHROMA_SUB 1 #include "../csp_packed_planar.h" /* rgb_24_to_yuv_422_p_c */ #define FUNC_NAME rgb_24_to_yuv_422_p_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 6 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CONVERT_YUV \ RGB_24_TO_YUV_8(src[0],src[1],src[2], \ dst_y[0],*dst_u,*dst_v) \ RGB_24_TO_Y_8(src[3],src[4],src[5],dst_y[1]) #define CHROMA_SUB 1 #include "../csp_packed_planar.h" #endif // !HQ /* rgb_48_to_yuv_422_p_c */ #define FUNC_NAME rgb_48_to_yuv_422_p_c #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 6 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CONVERT_YUV \ RGB_48_TO_YUV_8(src[0],src[1],src[2], \ dst_y[0],*dst_u,*dst_v) \ RGB_48_TO_Y_8(src[3],src[4],src[5],dst_y[1]) #define CHROMA_SUB 1 #include "../csp_packed_planar.h" /* rgb_float_to_yuv_422_p_c */ #define FUNC_NAME rgb_float_to_yuv_422_p_c #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 6 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define INIT INIT_RGB_FLOAT_TO_YUV #define CONVERT_YUV \ RGB_FLOAT_TO_YUV_8(src[0],src[1],src[2], \ dst_y[0],*dst_u,*dst_v) \ RGB_FLOAT_TO_Y_8(src[3],src[4],src[5],dst_y[1]) #define CHROMA_SUB 1 #include "../csp_packed_planar.h" #ifndef HQ /* bgr_24_to_yuv_422_p_c */ #define FUNC_NAME bgr_24_to_yuv_422_p_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 6 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CONVERT_YUV \ RGB_24_TO_YUV_8(src[2],src[1],src[0], \ dst_y[0],*dst_u,*dst_v) \ RGB_24_TO_Y_8(src[5],src[4],src[3],dst_y[1]) #define CHROMA_SUB 1 #include "../csp_packed_planar.h" /* rgb_32_to_yuv_422_p_c */ #define FUNC_NAME rgb_32_to_yuv_422_p_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CONVERT_YUV \ RGB_24_TO_YUV_8(src[0],src[1],src[2], \ dst_y[0],*dst_u,*dst_v) \ RGB_24_TO_Y_8(src[4],src[5],src[6],dst_y[1]) #define CHROMA_SUB 1 #include "../csp_packed_planar.h" /* bgr_32_to_yuv_422_p_c */ #define FUNC_NAME bgr_32_to_yuv_422_p_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CONVERT_YUV \ RGB_24_TO_YUV_8(src[2],src[1],src[0], \ dst_y[0],*dst_u,*dst_v) \ RGB_24_TO_Y_8(src[6],src[5],src[4],dst_y[1]) #define CHROMA_SUB 1 #include "../csp_packed_planar.h" /**************************************************** * Conversions to YUV 422 P 16 bit ****************************************************/ /* rgb_15_to_yuv_422_p_16_c */ #define FUNC_NAME rgb_15_to_yuv_422_p_16_c #define IN_TYPE uint16_t #define OUT_TYPE uint16_t #define IN_ADVANCE 2 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CONVERT_YUV \ RGB_24_TO_YUV_16(RGB15_TO_R_8(src[0]), \ RGB15_TO_G_8(src[0]), \ RGB15_TO_B_8(src[0]), \ dst_y[0],*dst_u,*dst_v) \ RGB_24_TO_Y_16(RGB15_TO_R_8(src[1]), \ RGB15_TO_G_8(src[1]), \ RGB15_TO_B_8(src[1]), \ dst_y[1]) #define CHROMA_SUB 1 #include "../csp_packed_planar.h" /* bgr_15_to_yuv_422_p_16_c */ #define FUNC_NAME bgr_15_to_yuv_422_p_16_c #define IN_TYPE uint16_t #define OUT_TYPE uint16_t #define IN_ADVANCE 2 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CONVERT_YUV \ RGB_24_TO_YUV_16(BGR15_TO_R_8(src[0]), \ BGR15_TO_G_8(src[0]), \ BGR15_TO_B_8(src[0]), \ dst_y[0],*dst_u,*dst_v) \ RGB_24_TO_Y_16(BGR15_TO_R_8(src[1]), \ BGR15_TO_G_8(src[1]), \ BGR15_TO_B_8(src[1]), \ dst_y[1]) #define CHROMA_SUB 1 #include "../csp_packed_planar.h" /* rgb_16_to_yuv_422_p_16_c */ #define FUNC_NAME rgb_16_to_yuv_422_p_16_c #define IN_TYPE uint16_t #define OUT_TYPE uint16_t #define IN_ADVANCE 2 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CONVERT_YUV \ RGB_24_TO_YUV_16(RGB16_TO_R_8(src[0]), \ RGB16_TO_G_8(src[0]), \ RGB16_TO_B_8(src[0]), \ dst_y[0],*dst_u,*dst_v) \ RGB_24_TO_Y_16(RGB16_TO_R_8(src[1]), \ RGB16_TO_G_8(src[1]), \ RGB16_TO_B_8(src[1]), \ dst_y[1]) #define CHROMA_SUB 1 #include "../csp_packed_planar.h" /* bgr_16_to_yuv_422_p_16_c */ #define FUNC_NAME bgr_16_to_yuv_422_p_16_c #define IN_TYPE uint16_t #define OUT_TYPE uint16_t #define IN_ADVANCE 2 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CONVERT_YUV \ RGB_24_TO_YUV_16(BGR16_TO_R_8(src[0]), \ BGR16_TO_G_8(src[0]), \ BGR16_TO_B_8(src[0]), \ dst_y[0],*dst_u,*dst_v) \ RGB_24_TO_Y_16(BGR16_TO_R_8(src[1]), \ BGR16_TO_G_8(src[1]), \ BGR16_TO_B_8(src[1]), \ dst_y[1]) #define CHROMA_SUB 1 #include "../csp_packed_planar.h" /* rgb_24_to_yuv_422_p_16_c */ #define FUNC_NAME rgb_24_to_yuv_422_p_16_c #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE 6 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CONVERT_YUV \ RGB_24_TO_YUV_16(src[0],src[1],src[2], \ dst_y[0],*dst_u,*dst_v) \ RGB_24_TO_Y_16(src[3],src[4],src[5],dst_y[1]) #define CHROMA_SUB 1 #include "../csp_packed_planar.h" /* rgb_48_to_yuv_422_p_16_c */ #define FUNC_NAME rgb_48_to_yuv_422_p_16_c #define IN_TYPE uint16_t #define OUT_TYPE uint16_t #define IN_ADVANCE 6 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CONVERT_YUV \ RGB_48_TO_YUV_16(src[0],src[1],src[2], \ dst_y[0],*dst_u,*dst_v) \ RGB_48_TO_Y_16(src[3],src[4],src[5],dst_y[1]) #define CHROMA_SUB 1 #include "../csp_packed_planar.h" #endif // !HQ /* rgb_float_to_yuv_422_p_16_c */ #define FUNC_NAME rgb_float_to_yuv_422_p_16_c #define IN_TYPE float #define OUT_TYPE uint16_t #define IN_ADVANCE 6 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define INIT INIT_RGB_FLOAT_TO_YUV #define CONVERT_YUV \ RGB_FLOAT_TO_YUV_16(src[0],src[1],src[2], \ dst_y[0],*dst_u,*dst_v) \ RGB_FLOAT_TO_Y_16(src[3],src[4],src[5],dst_y[1]) #define CHROMA_SUB 1 #include "../csp_packed_planar.h" #ifndef HQ /* bgr_24_to_yuv_422_p_16_c */ #define FUNC_NAME bgr_24_to_yuv_422_p_16_c #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE 6 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CONVERT_YUV \ RGB_24_TO_YUV_16(src[2],src[1],src[0], \ dst_y[0],*dst_u,*dst_v) \ RGB_24_TO_Y_16(src[5],src[4],src[3],dst_y[1]) #define CHROMA_SUB 1 #include "../csp_packed_planar.h" /* rgb_32_to_yuv_422_p_16_c */ #define FUNC_NAME rgb_32_to_yuv_422_p_16_c #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE 8 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CONVERT_YUV \ RGB_24_TO_YUV_16(src[0],src[1],src[2], \ dst_y[0],*dst_u,*dst_v) \ RGB_24_TO_Y_16(src[4],src[5],src[6],dst_y[1]) #define CHROMA_SUB 1 #include "../csp_packed_planar.h" /* bgr_32_to_yuv_422_p_16_c */ #define FUNC_NAME bgr_32_to_yuv_422_p_16_c #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE 8 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CONVERT_YUV \ RGB_24_TO_YUV_16(src[2],src[1],src[0], \ dst_y[0],*dst_u,*dst_v) \ RGB_24_TO_Y_16(src[6],src[5],src[4],dst_y[1]) #define CHROMA_SUB 1 #include "../csp_packed_planar.h" /**************************************************** * Conversions to YUV 411 P ****************************************************/ /* rgb_15_to_yuv_411_p_c */ #define FUNC_NAME rgb_15_to_yuv_411_p_c #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 4 #define CONVERT_YUV \ RGB_24_TO_YUV_8(RGB15_TO_R_8(src[0]), \ RGB15_TO_G_8(src[0]), \ RGB15_TO_B_8(src[0]), \ dst_y[0],*dst_u,*dst_v) \ RGB_24_TO_Y_8(RGB15_TO_R_8(src[1]), \ RGB15_TO_G_8(src[1]), \ RGB15_TO_B_8(src[1]), \ dst_y[1]) \ RGB_24_TO_Y_8(RGB15_TO_R_8(src[2]), \ RGB15_TO_G_8(src[2]), \ RGB15_TO_B_8(src[2]), \ dst_y[2]) \ RGB_24_TO_Y_8(RGB15_TO_R_8(src[3]), \ RGB15_TO_G_8(src[3]), \ RGB15_TO_B_8(src[3]), \ dst_y[3]) #define CHROMA_SUB 1 #include "../csp_packed_planar.h" /* bgr_15_to_yuv_411_p_c */ #define FUNC_NAME bgr_15_to_yuv_411_p_c #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 4 #define CONVERT_YUV \ RGB_24_TO_YUV_8(BGR15_TO_R_8(src[0]), \ BGR15_TO_G_8(src[0]), \ BGR15_TO_B_8(src[0]), \ dst_y[0],*dst_u,*dst_v) \ RGB_24_TO_Y_8(BGR15_TO_R_8(src[1]), \ BGR15_TO_G_8(src[1]), \ BGR15_TO_B_8(src[1]), \ dst_y[1]) \ RGB_24_TO_Y_8(BGR15_TO_R_8(src[2]), \ BGR15_TO_G_8(src[2]), \ BGR15_TO_B_8(src[2]), \ dst_y[2]) \ RGB_24_TO_Y_8(BGR15_TO_R_8(src[3]), \ BGR15_TO_G_8(src[3]), \ BGR15_TO_B_8(src[3]), \ dst_y[3]) #define CHROMA_SUB 1 #include "../csp_packed_planar.h" /* rgb_16_to_yuv_411_p_c */ #define FUNC_NAME rgb_16_to_yuv_411_p_c #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 4 #define CONVERT_YUV \ RGB_24_TO_YUV_8(RGB16_TO_R_8(src[0]), \ RGB16_TO_G_8(src[0]), \ RGB16_TO_B_8(src[0]), \ dst_y[0],*dst_u,*dst_v) \ RGB_24_TO_Y_8(RGB16_TO_R_8(src[1]), \ RGB16_TO_G_8(src[1]), \ RGB16_TO_B_8(src[1]), \ dst_y[1]) \ RGB_24_TO_Y_8(RGB16_TO_R_8(src[2]), \ RGB16_TO_G_8(src[2]), \ RGB16_TO_B_8(src[2]), \ dst_y[2]) \ RGB_24_TO_Y_8(RGB16_TO_R_8(src[3]), \ RGB16_TO_G_8(src[3]), \ RGB16_TO_B_8(src[3]), \ dst_y[3]) #define CHROMA_SUB 1 #include "../csp_packed_planar.h" /* bgr_16_to_yuv_411_p_c */ #define FUNC_NAME bgr_16_to_yuv_411_p_c #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 4 #define CONVERT_YUV \ RGB_24_TO_YUV_8(BGR16_TO_R_8(src[0]), \ BGR16_TO_G_8(src[0]), \ BGR16_TO_B_8(src[0]), \ dst_y[0],*dst_u,*dst_v) \ RGB_24_TO_Y_8(BGR16_TO_R_8(src[1]), \ BGR16_TO_G_8(src[1]), \ BGR16_TO_B_8(src[1]), \ dst_y[1]) \ RGB_24_TO_Y_8(BGR16_TO_R_8(src[2]), \ BGR16_TO_G_8(src[2]), \ BGR16_TO_B_8(src[2]), \ dst_y[2]) \ RGB_24_TO_Y_8(BGR16_TO_R_8(src[3]), \ BGR16_TO_G_8(src[3]), \ BGR16_TO_B_8(src[3]), \ dst_y[3]) \ #define CHROMA_SUB 1 #include "../csp_packed_planar.h" /* rgb_24_to_yuv_411_p_c */ #define FUNC_NAME rgb_24_to_yuv_411_p_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 12 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 4 #define CONVERT_YUV \ RGB_24_TO_YUV_8(src[0],src[1],src[2], \ dst_y[0],*dst_u,*dst_v) \ RGB_24_TO_Y_8(src[3],src[4],src[5],dst_y[1]) \ RGB_24_TO_Y_8(src[6],src[7],src[8],dst_y[2]) \ RGB_24_TO_Y_8(src[9],src[10],src[11],dst_y[3]) #define CHROMA_SUB 1 #include "../csp_packed_planar.h" #endif // !HQ /* rgb_48_to_yuv_411_p_c */ #define FUNC_NAME rgb_48_to_yuv_411_p_c #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 12 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 4 #define CONVERT_YUV \ RGB_48_TO_YUV_8(src[0],src[1],src[2], \ dst_y[0],*dst_u,*dst_v) \ RGB_48_TO_Y_8(src[3],src[4],src[5],dst_y[1]) \ RGB_48_TO_Y_8(src[6],src[7],src[8],dst_y[2]) \ RGB_48_TO_Y_8(src[9],src[10],src[11],dst_y[3]) #define CHROMA_SUB 1 #include "../csp_packed_planar.h" /* rgb_float_to_yuv_411_p_c */ #define FUNC_NAME rgb_float_to_yuv_411_p_c #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 12 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 4 #define INIT INIT_RGB_FLOAT_TO_YUV #define CONVERT_YUV \ RGB_FLOAT_TO_YUV_8(src[0],src[1],src[2], \ dst_y[0],*dst_u,*dst_v) \ RGB_FLOAT_TO_Y_8(src[3],src[4],src[5],dst_y[1]) \ RGB_FLOAT_TO_Y_8(src[6],src[7],src[8],dst_y[2]) \ RGB_FLOAT_TO_Y_8(src[9],src[10],src[11],dst_y[3]) #define CHROMA_SUB 1 #include "../csp_packed_planar.h" #ifndef HQ /* bgr_24_to_yuv_411_p_c */ #define FUNC_NAME bgr_24_to_yuv_411_p_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 12 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 4 #define CONVERT_YUV \ RGB_24_TO_YUV_8(src[2],src[1],src[0], \ dst_y[0],*dst_u,*dst_v) \ RGB_24_TO_Y_8(src[5],src[4],src[3],dst_y[1]) \ RGB_24_TO_Y_8(src[8],src[7],src[6],dst_y[2]) \ RGB_24_TO_Y_8(src[11],src[10],src[9],dst_y[3]) #define CHROMA_SUB 1 #include "../csp_packed_planar.h" /* rgb_32_to_yuv_411_p_c */ #define FUNC_NAME rgb_32_to_yuv_411_p_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 4 #define CONVERT_YUV \ RGB_24_TO_YUV_8(src[0],src[1],src[2], \ dst_y[0],*dst_u,*dst_v) \ RGB_24_TO_Y_8(src[4],src[5],src[6],dst_y[1]) \ RGB_24_TO_Y_8(src[8],src[9],src[10],dst_y[2]) \ RGB_24_TO_Y_8(src[12],src[13],src[14],dst_y[3]) #define CHROMA_SUB 1 #include "../csp_packed_planar.h" /* bgr_32_to_yuv_411_p_c */ #define FUNC_NAME bgr_32_to_yuv_411_p_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 4 #define CONVERT_YUV \ RGB_24_TO_YUV_8(src[2],src[1],src[0], \ dst_y[0],*dst_u,*dst_v) \ RGB_24_TO_Y_8(src[6],src[5],src[4],dst_y[1]) \ RGB_24_TO_Y_8(src[10],src[9],src[8],dst_y[2]) \ RGB_24_TO_Y_8(src[14],src[13],src[12],dst_y[3]) #define CHROMA_SUB 1 #include "../csp_packed_planar.h" /**************************************************** * Conversions to YUV 444 P ****************************************************/ /* rgb_15_to_yuv_444_p_c */ #define FUNC_NAME rgb_15_to_yuv_444_p_c #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 1 #define OUT_ADVANCE_Y 1 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 1 #define CONVERT_YUV \ RGB_24_TO_YUV_8(RGB15_TO_R_8(src[0]), \ RGB15_TO_G_8(src[0]), \ RGB15_TO_B_8(src[0]), \ dst_y[0],*dst_u,*dst_v) #define CHROMA_SUB 1 #include "../csp_packed_planar.h" /* bgr_15_to_yuv_444_p_c */ #define FUNC_NAME bgr_15_to_yuv_444_p_c #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 1 #define OUT_ADVANCE_Y 1 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 1 #define CONVERT_YUV \ RGB_24_TO_YUV_8(BGR15_TO_R_8(src[0]), \ BGR15_TO_G_8(src[0]), \ BGR15_TO_B_8(src[0]), \ dst_y[0],*dst_u,*dst_v) #define CHROMA_SUB 1 #include "../csp_packed_planar.h" /* rgb_16_to_yuv_444_p_c */ #define FUNC_NAME rgb_16_to_yuv_444_p_c #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 1 #define OUT_ADVANCE_Y 1 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 1 #define CONVERT_YUV \ RGB_24_TO_YUV_8(RGB16_TO_R_8(src[0]), \ RGB16_TO_G_8(src[0]), \ RGB16_TO_B_8(src[0]), \ dst_y[0],*dst_u,*dst_v) #define CHROMA_SUB 1 #include "../csp_packed_planar.h" /* bgr_16_to_yuv_444_p_c */ #define FUNC_NAME bgr_16_to_yuv_444_p_c #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 1 #define OUT_ADVANCE_Y 1 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 1 #define CONVERT_YUV \ RGB_24_TO_YUV_8(BGR16_TO_R_8(src[0]), \ BGR16_TO_G_8(src[0]), \ BGR16_TO_B_8(src[0]), \ dst_y[0],*dst_u,*dst_v) #define CHROMA_SUB 1 #include "../csp_packed_planar.h" /* rgb_24_to_yuv_444_p_c */ #define FUNC_NAME rgb_24_to_yuv_444_p_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 3 #define OUT_ADVANCE_Y 1 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 1 #define CONVERT_YUV \ RGB_24_TO_YUV_8(src[0],src[1],src[2], \ dst_y[0],*dst_u,*dst_v) #define CHROMA_SUB 1 #include "../csp_packed_planar.h" #endif // !HQ /* rgb_48_to_yuv_444_p_c */ #define FUNC_NAME rgb_48_to_yuv_444_p_c #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 3 #define OUT_ADVANCE_Y 1 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 1 #define CONVERT_YUV \ RGB_48_TO_YUV_8(src[0],src[1],src[2], \ dst_y[0],*dst_u,*dst_v) #define CHROMA_SUB 1 #include "../csp_packed_planar.h" /* rgb_float_to_yuv_444_p_c */ #define FUNC_NAME rgb_float_to_yuv_444_p_c #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 3 #define OUT_ADVANCE_Y 1 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 1 #define INIT INIT_RGB_FLOAT_TO_YUV #define CONVERT_YUV \ RGB_FLOAT_TO_YUV_8(src[0],src[1],src[2], \ dst_y[0],*dst_u,*dst_v) #define CHROMA_SUB 1 #include "../csp_packed_planar.h" #ifndef HQ /* bgr_24_to_yuv_444_p_c */ #define FUNC_NAME bgr_24_to_yuv_444_p_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 3 #define OUT_ADVANCE_Y 1 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 1 #define CONVERT_YUV \ RGB_24_TO_YUV_8(src[2],src[1],src[0], \ dst_y[0],*dst_u,*dst_v) #define CHROMA_SUB 1 #include "../csp_packed_planar.h" /* rgb_32_to_yuv_444_p_c */ #define FUNC_NAME rgb_32_to_yuv_444_p_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE_Y 1 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 1 #define CONVERT_YUV \ RGB_24_TO_YUV_8(src[0],src[1],src[2], \ dst_y[0],*dst_u,*dst_v) #define CHROMA_SUB 1 #include "../csp_packed_planar.h" /* bgr_32_to_yuv_444_p_c */ #define FUNC_NAME bgr_32_to_yuv_444_p_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE_Y 1 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 1 #define CONVERT_YUV \ RGB_24_TO_YUV_8(src[2],src[1],src[0], \ dst_y[0],*dst_u,*dst_v) #define CHROMA_SUB 1 #include "../csp_packed_planar.h" /**************************************************** * Conversions to YUV 444 P 16 bit ****************************************************/ /* rgb_15_to_yuv_444_p_16_c */ #define FUNC_NAME rgb_15_to_yuv_444_p_16_c #define IN_TYPE uint16_t #define OUT_TYPE uint16_t #define IN_ADVANCE 1 #define OUT_ADVANCE_Y 1 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 1 #define CONVERT_YUV \ RGB_24_TO_YUV_16(RGB15_TO_R_8(src[0]), \ RGB15_TO_G_8(src[0]), \ RGB15_TO_B_8(src[0]), \ dst_y[0],*dst_u,*dst_v) #define CHROMA_SUB 1 #include "../csp_packed_planar.h" /* bgr_15_to_yuv_444_p_16_c */ #define FUNC_NAME bgr_15_to_yuv_444_p_16_c #define IN_TYPE uint16_t #define OUT_TYPE uint16_t #define IN_ADVANCE 1 #define OUT_ADVANCE_Y 1 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 1 #define CONVERT_YUV \ RGB_24_TO_YUV_16(BGR15_TO_R_8(src[0]), \ BGR15_TO_G_8(src[0]), \ BGR15_TO_B_8(src[0]), \ dst_y[0],*dst_u,*dst_v) #define CHROMA_SUB 1 #include "../csp_packed_planar.h" /* rgb_16_to_yuv_444_p_16_c */ #define FUNC_NAME rgb_16_to_yuv_444_p_16_c #define IN_TYPE uint16_t #define OUT_TYPE uint16_t #define IN_ADVANCE 1 #define OUT_ADVANCE_Y 1 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 1 #define CONVERT_YUV \ RGB_24_TO_YUV_16(RGB16_TO_R_8(src[0]), \ RGB16_TO_G_8(src[0]), \ RGB16_TO_B_8(src[0]), \ dst_y[0],*dst_u,*dst_v) #define CHROMA_SUB 1 #include "../csp_packed_planar.h" /* bgr_16_to_yuv_444_p_16_c */ #define FUNC_NAME bgr_16_to_yuv_444_p_16_c #define IN_TYPE uint16_t #define OUT_TYPE uint16_t #define IN_ADVANCE 1 #define OUT_ADVANCE_Y 1 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 1 #define CONVERT_YUV \ RGB_24_TO_YUV_16(BGR16_TO_R_8(src[0]), \ BGR16_TO_G_8(src[0]), \ BGR16_TO_B_8(src[0]), \ dst_y[0],*dst_u,*dst_v) #define CHROMA_SUB 1 #include "../csp_packed_planar.h" /* rgb_24_to_yuv_444_p_16_c */ #define FUNC_NAME rgb_24_to_yuv_444_p_16_c #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE 3 #define OUT_ADVANCE_Y 1 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 1 #define CONVERT_YUV \ RGB_24_TO_YUV_16(src[0],src[1],src[2], \ dst_y[0],*dst_u,*dst_v) #define CHROMA_SUB 1 #include "../csp_packed_planar.h" /* rgb_48_to_yuv_444_p_16_c */ #define FUNC_NAME rgb_48_to_yuv_444_p_16_c #define IN_TYPE uint16_t #define OUT_TYPE uint16_t #define IN_ADVANCE 3 #define OUT_ADVANCE_Y 1 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 1 #define CONVERT_YUV \ RGB_48_TO_YUV_16(src[0],src[1],src[2], \ dst_y[0],*dst_u,*dst_v) #define CHROMA_SUB 1 #include "../csp_packed_planar.h" #endif // !HQ /* rgb_float_to_yuv_444_p_16_c */ #define FUNC_NAME rgb_float_to_yuv_444_p_16_c #define IN_TYPE float #define OUT_TYPE uint16_t #define IN_ADVANCE 3 #define OUT_ADVANCE_Y 1 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 1 #define INIT INIT_RGB_FLOAT_TO_YUV #define CONVERT_YUV \ RGB_FLOAT_TO_YUV_16(src[0],src[1],src[2], \ dst_y[0],*dst_u,*dst_v) #define CHROMA_SUB 1 #include "../csp_packed_planar.h" #ifndef HQ /* bgr_24_to_yuv_444_p_16_c */ #define FUNC_NAME bgr_24_to_yuv_444_p_16_c #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE 3 #define OUT_ADVANCE_Y 1 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 1 #define CONVERT_YUV \ RGB_24_TO_YUV_16(src[2],src[1],src[0], \ dst_y[0],*dst_u,*dst_v) #define CHROMA_SUB 1 #include "../csp_packed_planar.h" /* rgb_32_to_yuv_444_p_16_c */ #define FUNC_NAME rgb_32_to_yuv_444_p_16_c #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE_Y 1 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 1 #define CONVERT_YUV \ RGB_24_TO_YUV_16(src[0],src[1],src[2], \ dst_y[0],*dst_u,*dst_v) #define CHROMA_SUB 1 #include "../csp_packed_planar.h" /* bgr_32_to_yuv_444_p_16_c */ #define FUNC_NAME bgr_32_to_yuv_444_p_16_c #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE_Y 1 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 1 #define CONVERT_YUV \ RGB_24_TO_YUV_16(src[2],src[1],src[0], \ dst_y[0],*dst_u,*dst_v) #define CHROMA_SUB 1 #include "../csp_packed_planar.h" /**************************************************** * Conversions to YUV 420 P ****************************************************/ /* rgb_15_to_yuv_420_p_c */ #define FUNC_NAME rgb_15_to_yuv_420_p_c #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 2 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CONVERT_YUV \ RGB_24_TO_YUV_8(RGB15_TO_R_8(src[0]), \ RGB15_TO_G_8(src[0]), \ RGB15_TO_B_8(src[0]), \ dst_y[0],*dst_u,*dst_v) \ RGB_24_TO_Y_8(RGB15_TO_R_8(src[1]), \ RGB15_TO_G_8(src[1]), \ RGB15_TO_B_8(src[1]), \ dst_y[1]) #define CONVERT_Y \ RGB_24_TO_Y_8(RGB15_TO_R_8(src[0]), \ RGB15_TO_G_8(src[0]), \ RGB15_TO_B_8(src[0]), \ dst_y[0]) \ RGB_24_TO_Y_8(RGB15_TO_R_8(src[1]), \ RGB15_TO_G_8(src[1]), \ RGB15_TO_B_8(src[1]), \ dst_y[1]) #define CHROMA_SUB 2 #include "../csp_packed_planar.h" /* bgr_15_to_yuv_420_p_c */ #define FUNC_NAME bgr_15_to_yuv_420_p_c #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 2 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CONVERT_YUV \ RGB_24_TO_YUV_8(BGR15_TO_R_8(src[0]), \ BGR15_TO_G_8(src[0]), \ BGR15_TO_B_8(src[0]), \ dst_y[0],*dst_u,*dst_v) \ RGB_24_TO_Y_8(BGR15_TO_R_8(src[1]), \ BGR15_TO_G_8(src[1]), \ BGR15_TO_B_8(src[1]), \ dst_y[1]) #define CONVERT_Y \ RGB_24_TO_Y_8(BGR15_TO_R_8(src[0]), \ BGR15_TO_G_8(src[0]), \ BGR15_TO_B_8(src[0]), \ dst_y[0]) \ RGB_24_TO_Y_8(BGR15_TO_R_8(src[1]), \ BGR15_TO_G_8(src[1]), \ BGR15_TO_B_8(src[1]), \ dst_y[1]) #define CHROMA_SUB 2 #include "../csp_packed_planar.h" /* rgb_16_to_yuv_420_p_c */ #define FUNC_NAME rgb_16_to_yuv_420_p_c #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 2 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CONVERT_YUV \ RGB_24_TO_YUV_8(RGB16_TO_R_8(src[0]), \ RGB16_TO_G_8(src[0]), \ RGB16_TO_B_8(src[0]), \ dst_y[0],*dst_u,*dst_v) \ RGB_24_TO_Y_8(RGB16_TO_R_8(src[1]), \ RGB16_TO_G_8(src[1]), \ RGB16_TO_B_8(src[1]), \ dst_y[1]) #define CONVERT_Y \ RGB_24_TO_Y_8(RGB16_TO_R_8(src[0]), \ RGB16_TO_G_8(src[0]), \ RGB16_TO_B_8(src[0]), \ dst_y[0]) \ RGB_24_TO_Y_8(RGB16_TO_R_8(src[1]), \ RGB16_TO_G_8(src[1]), \ RGB16_TO_B_8(src[1]), \ dst_y[1]) #define CHROMA_SUB 2 #include "../csp_packed_planar.h" /* bgr_16_to_yuv_420_p_c */ #define FUNC_NAME bgr_16_to_yuv_420_p_c #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 2 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CONVERT_YUV \ RGB_24_TO_YUV_8(BGR16_TO_R_8(src[0]), \ BGR16_TO_G_8(src[0]), \ BGR16_TO_B_8(src[0]), \ dst_y[0],*dst_u,*dst_v) \ RGB_24_TO_Y_8(BGR16_TO_R_8(src[1]), \ BGR16_TO_G_8(src[1]), \ BGR16_TO_B_8(src[1]), \ dst_y[1]) #define CONVERT_Y \ RGB_24_TO_Y_8(BGR16_TO_R_8(src[0]), \ BGR16_TO_G_8(src[0]), \ BGR16_TO_B_8(src[0]), \ dst_y[0]) \ RGB_24_TO_Y_8(BGR16_TO_R_8(src[1]), \ BGR16_TO_G_8(src[1]), \ BGR16_TO_B_8(src[1]), \ dst_y[1]) #define CHROMA_SUB 2 #include "../csp_packed_planar.h" /* rgb_24_to_yuv_420_p_c */ #define FUNC_NAME rgb_24_to_yuv_420_p_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 6 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CONVERT_YUV \ RGB_24_TO_YUV_8(src[0],src[1],src[2], \ dst_y[0],*dst_u,*dst_v) \ RGB_24_TO_Y_8(src[3],src[4],src[5],dst_y[1]) #define CONVERT_Y \ RGB_24_TO_Y_8(src[0],src[1],src[2],dst_y[0]) \ RGB_24_TO_Y_8(src[3],src[4],src[5],dst_y[1]) #define CHROMA_SUB 2 #include "../csp_packed_planar.h" #endif // !HQ /* rgb_48_to_yuv_420_p_c */ #define FUNC_NAME rgb_48_to_yuv_420_p_c #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 6 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CONVERT_YUV \ RGB_48_TO_YUV_8(src[0],src[1],src[2], \ dst_y[0],*dst_u,*dst_v) \ RGB_48_TO_Y_8(src[3],src[4],src[5],dst_y[1]) #define CONVERT_Y \ RGB_48_TO_Y_8(src[0],src[1],src[2],dst_y[0]) \ RGB_48_TO_Y_8(src[3],src[4],src[5],dst_y[1]) #define CHROMA_SUB 2 #include "../csp_packed_planar.h" /* rgb_float_to_yuv_420_p_c */ #define FUNC_NAME rgb_float_to_yuv_420_p_c #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 6 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define INIT INIT_RGB_FLOAT_TO_YUV #define CONVERT_YUV \ RGB_FLOAT_TO_YUV_8(src[0],src[1],src[2], \ dst_y[0],*dst_u,*dst_v) \ RGB_FLOAT_TO_Y_8(src[3],src[4],src[5],dst_y[1]) #define CONVERT_Y \ RGB_FLOAT_TO_Y_8(src[0],src[1],src[2],dst_y[0]) \ RGB_FLOAT_TO_Y_8(src[3],src[4],src[5],dst_y[1]) #define CHROMA_SUB 2 #include "../csp_packed_planar.h" #ifndef HQ /* bgr_24_to_yuv_420_p_c */ #define FUNC_NAME bgr_24_to_yuv_420_p_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 6 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CONVERT_YUV \ RGB_24_TO_YUV_8(src[2],src[1],src[0], \ dst_y[0],*dst_u,*dst_v) \ RGB_24_TO_Y_8(src[5],src[4],src[3],dst_y[1]) #define CONVERT_Y \ RGB_24_TO_Y_8(src[2],src[1],src[0],dst_y[0]) \ RGB_24_TO_Y_8(src[5],src[4],src[3],dst_y[1]) #define CHROMA_SUB 2 #include "../csp_packed_planar.h" /* rgb_32_to_yuv_420_p_c */ #define FUNC_NAME rgb_32_to_yuv_420_p_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CONVERT_YUV \ RGB_24_TO_YUV_8(src[0],src[1],src[2], \ dst_y[0],*dst_u,*dst_v) \ RGB_24_TO_Y_8(src[4],src[5],src[6],dst_y[1]) #define CONVERT_Y \ RGB_24_TO_Y_8(src[0],src[1],src[2], \ dst_y[0]) \ RGB_24_TO_Y_8(src[4],src[5],src[6],dst_y[1]) #define CHROMA_SUB 2 #include "../csp_packed_planar.h" /* bgr_32_to_yuv_420_p_c */ #define FUNC_NAME bgr_32_to_yuv_420_p_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CONVERT_YUV \ RGB_24_TO_YUV_8(src[2],src[1],src[0], \ dst_y[0],*dst_u,*dst_v) \ RGB_24_TO_Y_8(src[6],src[5],src[4],dst_y[1]) #define CONVERT_Y \ RGB_24_TO_Y_8(src[2],src[1],src[0], \ dst_y[0]) \ RGB_24_TO_Y_8(src[6],src[5],src[4],dst_y[1]) #define CHROMA_SUB 2 #include "../csp_packed_planar.h" /**************************************************** * Conversions to YUV 410 P ****************************************************/ /* rgb_15_to_yuv_410_p_c */ #define FUNC_NAME rgb_15_to_yuv_410_p_c #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 4 #define CONVERT_YUV \ RGB_24_TO_YUV_8(RGB15_TO_R_8(src[0]), \ RGB15_TO_G_8(src[0]), \ RGB15_TO_B_8(src[0]), \ dst_y[0],*dst_u,*dst_v) \ RGB_24_TO_Y_8(RGB15_TO_R_8(src[1]), \ RGB15_TO_G_8(src[1]), \ RGB15_TO_B_8(src[1]), \ dst_y[1]) \ RGB_24_TO_Y_8(RGB15_TO_R_8(src[2]), \ RGB15_TO_G_8(src[2]), \ RGB15_TO_B_8(src[2]), \ dst_y[2]) \ RGB_24_TO_Y_8(RGB15_TO_R_8(src[3]), \ RGB15_TO_G_8(src[3]), \ RGB15_TO_B_8(src[3]), \ dst_y[3]) #define CONVERT_Y \ RGB_24_TO_Y_8(RGB15_TO_R_8(src[0]), \ RGB15_TO_G_8(src[0]), \ RGB15_TO_B_8(src[0]), \ dst_y[0]) \ RGB_24_TO_Y_8(RGB15_TO_R_8(src[1]), \ RGB15_TO_G_8(src[1]), \ RGB15_TO_B_8(src[1]), \ dst_y[1]) \ RGB_24_TO_Y_8(RGB15_TO_R_8(src[2]), \ RGB15_TO_G_8(src[2]), \ RGB15_TO_B_8(src[2]), \ dst_y[2]) \ RGB_24_TO_Y_8(RGB15_TO_R_8(src[3]), \ RGB15_TO_G_8(src[3]), \ RGB15_TO_B_8(src[3]), \ dst_y[3]) #define CHROMA_SUB 4 #include "../csp_packed_planar.h" /* bgr_15_to_yuv_410_p_c */ #define FUNC_NAME bgr_15_to_yuv_410_p_c #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 4 #define CONVERT_YUV \ RGB_24_TO_YUV_8(BGR15_TO_R_8(src[0]), \ BGR15_TO_G_8(src[0]), \ BGR15_TO_B_8(src[0]), \ dst_y[0],*dst_u,*dst_v) \ RGB_24_TO_Y_8(BGR15_TO_R_8(src[1]), \ BGR15_TO_G_8(src[1]), \ BGR15_TO_B_8(src[1]), \ dst_y[1]) \ RGB_24_TO_Y_8(BGR15_TO_R_8(src[2]), \ BGR15_TO_G_8(src[2]), \ BGR15_TO_B_8(src[2]), \ dst_y[2]) \ RGB_24_TO_Y_8(BGR15_TO_R_8(src[3]), \ BGR15_TO_G_8(src[3]), \ BGR15_TO_B_8(src[3]), \ dst_y[3]) #define CONVERT_Y \ RGB_24_TO_Y_8(BGR15_TO_R_8(src[0]), \ BGR15_TO_G_8(src[0]), \ BGR15_TO_B_8(src[0]), \ dst_y[0]) \ RGB_24_TO_Y_8(BGR15_TO_R_8(src[1]), \ BGR15_TO_G_8(src[1]), \ BGR15_TO_B_8(src[1]), \ dst_y[1]) \ RGB_24_TO_Y_8(BGR15_TO_R_8(src[2]), \ BGR15_TO_G_8(src[2]), \ BGR15_TO_B_8(src[2]), \ dst_y[2]) \ RGB_24_TO_Y_8(BGR15_TO_R_8(src[3]), \ BGR15_TO_G_8(src[3]), \ BGR15_TO_B_8(src[3]), \ dst_y[3]) #define CHROMA_SUB 4 #include "../csp_packed_planar.h" /* rgb_16_to_yuv_410_p_c */ #define FUNC_NAME rgb_16_to_yuv_410_p_c #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 4 #define CONVERT_YUV \ RGB_24_TO_YUV_8(RGB16_TO_R_8(src[0]), \ RGB16_TO_G_8(src[0]), \ RGB16_TO_B_8(src[0]), \ dst_y[0],*dst_u,*dst_v) \ RGB_24_TO_Y_8(RGB16_TO_R_8(src[1]), \ RGB16_TO_G_8(src[1]), \ RGB16_TO_B_8(src[1]), \ dst_y[1]) \ RGB_24_TO_Y_8(RGB16_TO_R_8(src[2]), \ RGB16_TO_G_8(src[2]), \ RGB16_TO_B_8(src[2]), \ dst_y[2]) \ RGB_24_TO_Y_8(RGB16_TO_R_8(src[3]), \ RGB16_TO_G_8(src[3]), \ RGB16_TO_B_8(src[3]), \ dst_y[3]) #define CONVERT_Y \ RGB_24_TO_Y_8(RGB16_TO_R_8(src[0]), \ RGB16_TO_G_8(src[0]), \ RGB16_TO_B_8(src[0]), \ dst_y[0]) \ RGB_24_TO_Y_8(RGB16_TO_R_8(src[1]), \ RGB16_TO_G_8(src[1]), \ RGB16_TO_B_8(src[1]), \ dst_y[1]) \ RGB_24_TO_Y_8(RGB16_TO_R_8(src[2]), \ RGB16_TO_G_8(src[2]), \ RGB16_TO_B_8(src[2]), \ dst_y[2]) \ RGB_24_TO_Y_8(RGB16_TO_R_8(src[3]), \ RGB16_TO_G_8(src[3]), \ RGB16_TO_B_8(src[3]), \ dst_y[3]) #define CHROMA_SUB 4 #include "../csp_packed_planar.h" /* bgr_16_to_yuv_410_p_c */ #define FUNC_NAME bgr_16_to_yuv_410_p_c #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 4 #define CONVERT_YUV \ RGB_24_TO_YUV_8(BGR16_TO_R_8(src[0]), \ BGR16_TO_G_8(src[0]), \ BGR16_TO_B_8(src[0]), \ dst_y[0],*dst_u,*dst_v) \ RGB_24_TO_Y_8(BGR16_TO_R_8(src[1]), \ BGR16_TO_G_8(src[1]), \ BGR16_TO_B_8(src[1]), \ dst_y[1]) \ RGB_24_TO_Y_8(BGR16_TO_R_8(src[2]), \ BGR16_TO_G_8(src[2]), \ BGR16_TO_B_8(src[2]), \ dst_y[2]) \ RGB_24_TO_Y_8(BGR16_TO_R_8(src[3]), \ BGR16_TO_G_8(src[3]), \ BGR16_TO_B_8(src[3]), \ dst_y[3]) #define CONVERT_Y \ RGB_24_TO_Y_8(BGR16_TO_R_8(src[0]), \ BGR16_TO_G_8(src[0]), \ BGR16_TO_B_8(src[0]), \ dst_y[0]) \ RGB_24_TO_Y_8(BGR16_TO_R_8(src[1]), \ BGR16_TO_G_8(src[1]), \ BGR16_TO_B_8(src[1]), \ dst_y[1]) \ RGB_24_TO_Y_8(BGR16_TO_R_8(src[2]), \ BGR16_TO_G_8(src[2]), \ BGR16_TO_B_8(src[2]), \ dst_y[2]) \ RGB_24_TO_Y_8(BGR16_TO_R_8(src[3]), \ BGR16_TO_G_8(src[3]), \ BGR16_TO_B_8(src[3]), \ dst_y[3]) #define CHROMA_SUB 4 #include "../csp_packed_planar.h" /* rgb_24_to_yuv_410_p_c */ #define FUNC_NAME rgb_24_to_yuv_410_p_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 12 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 4 #define CONVERT_YUV \ RGB_24_TO_YUV_8(src[0],src[1],src[2], \ dst_y[0],*dst_u,*dst_v) \ RGB_24_TO_Y_8(src[3],src[4],src[5],dst_y[1]) \ RGB_24_TO_Y_8(src[6],src[7],src[8],dst_y[2]) \ RGB_24_TO_Y_8(src[9],src[10],src[11],dst_y[3]) #define CONVERT_Y \ RGB_24_TO_Y_8(src[0],src[1],src[2],dst_y[0]) \ RGB_24_TO_Y_8(src[3],src[4],src[5],dst_y[1]) \ RGB_24_TO_Y_8(src[6],src[7],src[8],dst_y[2]) \ RGB_24_TO_Y_8(src[9],src[10],src[11],dst_y[3]) #define CHROMA_SUB 4 #include "../csp_packed_planar.h" #endif // !HQ /* rgb_48_to_yuv_410_p_c */ #define FUNC_NAME rgb_48_to_yuv_410_p_c #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 12 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 4 #define CONVERT_YUV \ RGB_48_TO_YUV_8(src[0],src[1],src[2], \ dst_y[0],*dst_u,*dst_v) \ RGB_48_TO_Y_8(src[3],src[4],src[5],dst_y[1]) \ RGB_48_TO_Y_8(src[6],src[7],src[8],dst_y[2]) \ RGB_48_TO_Y_8(src[9],src[10],src[11],dst_y[3]) #define CONVERT_Y \ RGB_48_TO_Y_8(src[0],src[1],src[2],dst_y[0]) \ RGB_48_TO_Y_8(src[3],src[4],src[5],dst_y[1]) \ RGB_48_TO_Y_8(src[6],src[7],src[8],dst_y[2]) \ RGB_48_TO_Y_8(src[9],src[10],src[11],dst_y[3]) #define CHROMA_SUB 4 #include "../csp_packed_planar.h" /* rgb_float_to_yuv_410_p_c */ #define FUNC_NAME rgb_float_to_yuv_410_p_c #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 12 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 4 #define INIT INIT_RGB_FLOAT_TO_YUV #define CONVERT_YUV \ RGB_FLOAT_TO_YUV_8(src[0],src[1],src[2], \ dst_y[0],*dst_u,*dst_v) \ RGB_FLOAT_TO_Y_8(src[3],src[4],src[5],dst_y[1]) \ RGB_FLOAT_TO_Y_8(src[6],src[7],src[8],dst_y[2]) \ RGB_FLOAT_TO_Y_8(src[9],src[10],src[11],dst_y[3]) #define CONVERT_Y \ RGB_FLOAT_TO_Y_8(src[0],src[1],src[2],dst_y[0]) \ RGB_FLOAT_TO_Y_8(src[3],src[4],src[5],dst_y[1]) \ RGB_FLOAT_TO_Y_8(src[6],src[7],src[8],dst_y[2]) \ RGB_FLOAT_TO_Y_8(src[9],src[10],src[11],dst_y[3]) #define CHROMA_SUB 4 #include "../csp_packed_planar.h" #ifndef HQ /* bgr_24_to_yuv_410_p_c */ #define FUNC_NAME bgr_24_to_yuv_410_p_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 12 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 4 #define CONVERT_YUV \ RGB_24_TO_YUV_8(src[2],src[1],src[0], \ dst_y[0],*dst_u,*dst_v) \ RGB_24_TO_Y_8(src[5],src[4],src[3],dst_y[1]) \ RGB_24_TO_Y_8(src[8],src[7],src[6],dst_y[2]) \ RGB_24_TO_Y_8(src[11],src[10],src[9],dst_y[3]) #define CONVERT_Y \ RGB_24_TO_Y_8(src[2],src[1],src[0],dst_y[0]) \ RGB_24_TO_Y_8(src[5],src[4],src[3],dst_y[1]) \ RGB_24_TO_Y_8(src[8],src[7],src[6],dst_y[2]) \ RGB_24_TO_Y_8(src[11],src[10],src[9],dst_y[3]) #define CHROMA_SUB 4 #include "../csp_packed_planar.h" /* rgb_32_to_yuv_410_p_c */ #define FUNC_NAME rgb_32_to_yuv_410_p_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 4 #define CONVERT_YUV \ RGB_24_TO_YUV_8(src[0],src[1],src[2], \ dst_y[0],*dst_u,*dst_v) \ RGB_24_TO_Y_8(src[4],src[5],src[6],dst_y[1]) \ RGB_24_TO_Y_8(src[8],src[9],src[10],dst_y[2]) \ RGB_24_TO_Y_8(src[12],src[13],src[14],dst_y[3]) #define CONVERT_Y \ RGB_24_TO_Y_8(src[0],src[1],src[2],dst_y[0]) \ RGB_24_TO_Y_8(src[4],src[5],src[6],dst_y[1]) \ RGB_24_TO_Y_8(src[8],src[9],src[10],dst_y[2]) \ RGB_24_TO_Y_8(src[12],src[13],src[14],dst_y[3]) #define CHROMA_SUB 4 #include "../csp_packed_planar.h" /* bgr_32_to_yuv_410_p_c */ #define FUNC_NAME bgr_32_to_yuv_410_p_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 4 #define CONVERT_YUV \ RGB_24_TO_YUV_8(src[2],src[1],src[0], \ dst_y[0],*dst_u,*dst_v) \ RGB_24_TO_Y_8(src[6],src[5],src[4],dst_y[1]) \ RGB_24_TO_Y_8(src[10],src[9],src[8],dst_y[2]) \ RGB_24_TO_Y_8(src[14],src[13],src[12],dst_y[3]) #define CONVERT_Y \ RGB_24_TO_Y_8(src[2],src[1],src[0], \ dst_y[0]) \ RGB_24_TO_Y_8(src[6],src[5],src[4],dst_y[1]) \ RGB_24_TO_Y_8(src[10],src[9],src[8],dst_y[2]) \ RGB_24_TO_Y_8(src[14],src[13],src[12],dst_y[3]) #define CHROMA_SUB 4 #include "../csp_packed_planar.h" /* RGBA -> ... */ /* rgba_32_to_yuva_32_c */ #define FUNC_NAME rgba_32_to_yuva_32_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define CONVERT \ RGB_24_TO_YUV_8(src[0],src[1],src[2],dst[0],dst[1],dst[2]) \ dst[3] = src[3]; #include "../csp_packed_packed.h" /* rgba_32_to_yuva_64_c */ #define FUNC_NAME rgba_32_to_yuva_64_c #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define CONVERT \ RGB_24_TO_YUV_16(src[0],src[1],src[2],dst[0],dst[1],dst[2]) \ dst[3] = RGB_8_TO_16(src[3]); #include "../csp_packed_packed.h" /* rgba_32_to_yuva_float_c */ #define FUNC_NAME rgba_32_to_yuva_float_c #define IN_TYPE uint8_t #define OUT_TYPE float #define IN_ADVANCE 4 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define CONVERT \ RGB_24_TO_YUV_FLOAT(src[0],src[1],src[2],dst[0],dst[1],dst[2]) \ dst[3] = RGB_8_TO_FLOAT(src[3]); #include "../csp_packed_packed.h" /* rgba_32_to_yuy2_c */ #define FUNC_NAME rgba_32_to_yuy2_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE 4 #define NUM_PIXELS 2 #define CONVERT \ RGBA_32_TO_YUV_8(src[0],src[1],src[2],src[3],dst[0],dst[1],dst[3]) \ RGBA_32_TO_Y_8(src[4],src[5],src[6],src[7],dst[2]) #define INIT INIT_RGBA_32 \ uint16_t r_tmp; \ uint16_t g_tmp; \ uint16_t b_tmp; #include "../csp_packed_packed.h" /* rgba_32_to_uyvy_c */ #define FUNC_NAME rgba_32_to_uyvy_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE 4 #define NUM_PIXELS 2 #define CONVERT \ RGBA_32_TO_YUV_8(src[0],src[1],src[2],src[3],dst[1],dst[0],dst[2]) \ RGBA_32_TO_Y_8(src[4],src[5],src[6],src[7],dst[3]) #define INIT INIT_RGBA_32 \ uint16_t r_tmp; \ uint16_t g_tmp; \ uint16_t b_tmp; #include "../csp_packed_packed.h" /* rgba_32_to_yuv_422_p_c */ #define FUNC_NAME rgba_32_to_yuv_422_p_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CONVERT_YUV \ RGBA_32_TO_YUV_8(src[0],src[1],src[2],src[3], \ dst_y[0],*dst_u,*dst_v) \ RGBA_32_TO_Y_8(src[4],src[5],src[6],src[7],dst_y[1]) #define INIT INIT_RGBA_32 \ uint16_t r_tmp; \ uint16_t g_tmp; \ uint16_t b_tmp; #define CHROMA_SUB 1 #include "../csp_packed_planar.h" /* rgba_32_to_yuv_422_p_16_c */ #define FUNC_NAME rgba_32_to_yuv_422_p_16_c #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE 8 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CONVERT_YUV \ RGBA_32_TO_YUV_16(src[0],src[1],src[2],src[3], \ dst_y[0],*dst_u,*dst_v) \ RGBA_32_TO_Y_16(src[4],src[5],src[6],src[7],dst_y[1]) #define INIT INIT_RGBA_32 \ uint16_t r_tmp; \ uint16_t g_tmp; \ uint16_t b_tmp; #define CHROMA_SUB 1 #include "../csp_packed_planar.h" /* rgba_32_to_yuv_411_p_c */ #define FUNC_NAME rgba_32_to_yuv_411_p_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 4 #define CONVERT_YUV \ RGBA_32_TO_YUV_8(src[0],src[1],src[2],src[3], \ dst_y[0],*dst_u,*dst_v) \ RGBA_32_TO_Y_8(src[4],src[5],src[6],src[7],dst_y[1]) \ RGBA_32_TO_Y_8(src[8],src[9],src[10],src[11],dst_y[2]) \ RGBA_32_TO_Y_8(src[12],src[13],src[14],src[15],dst_y[3]) #define INIT INIT_RGBA_32 \ uint16_t r_tmp; \ uint16_t g_tmp; \ uint16_t b_tmp; #define CHROMA_SUB 1 #include "../csp_packed_planar.h" /* rgba_32_to_yuv_420_p_c */ #define FUNC_NAME rgba_32_to_yuv_420_p_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CONVERT_YUV \ RGBA_32_TO_YUV_8(src[0],src[1],src[2],src[3], \ dst_y[0],*dst_u,*dst_v) \ RGBA_32_TO_Y_8(src[4],src[5],src[6],src[7],dst_y[1]) #define INIT INIT_RGBA_32 \ uint16_t r_tmp; \ uint16_t g_tmp; \ uint16_t b_tmp; #define CONVERT_Y \ RGBA_32_TO_Y_8(src[0],src[1],src[2],src[3], \ dst_y[0]) \ RGBA_32_TO_Y_8(src[4],src[5],src[6],src[7],dst_y[1]) #define CHROMA_SUB 2 #include "../csp_packed_planar.h" /* rgba_32_to_yuv_410_p_c */ #define FUNC_NAME rgba_32_to_yuv_410_p_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 4 #define CONVERT_YUV \ RGBA_32_TO_YUV_8(src[0],src[1],src[2],src[3], \ dst_y[0],*dst_u,*dst_v) \ RGBA_32_TO_Y_8(src[4],src[5],src[6],src[7],dst_y[1]) \ RGBA_32_TO_Y_8(src[8],src[9],src[10],src[11],dst_y[2]) \ RGBA_32_TO_Y_8(src[12],src[13],src[14],src[15],dst_y[3]) #define INIT INIT_RGBA_32 \ uint16_t r_tmp; \ uint16_t g_tmp; \ uint16_t b_tmp; #define CONVERT_Y \ RGBA_32_TO_Y_8(src[0],src[1],src[2],src[3],dst_y[0]) \ RGBA_32_TO_Y_8(src[4],src[5],src[6],src[7],dst_y[1]) \ RGBA_32_TO_Y_8(src[8],src[9],src[10],src[11],dst_y[2]) \ RGBA_32_TO_Y_8(src[12],src[13],src[14],src[15],dst_y[3]) #define CHROMA_SUB 4 #include "../csp_packed_planar.h" /* rgba_32_to_yuv_444_p_c */ #define FUNC_NAME rgba_32_to_yuv_444_p_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE_Y 1 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 1 #define CONVERT_YUV \ RGBA_32_TO_YUV_8(src[0],src[1],src[2],src[3], \ dst_y[0],*dst_u,*dst_v) #define INIT INIT_RGBA_32 \ uint16_t r_tmp; \ uint16_t g_tmp; \ uint16_t b_tmp; #define CHROMA_SUB 1 #include "../csp_packed_planar.h" /* rgba_32_to_yuv_444_p_16_c */ #define FUNC_NAME rgba_32_to_yuv_444_p_16_c #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE_Y 1 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 1 #define CONVERT_YUV \ RGBA_32_TO_YUV_16(src[0],src[1],src[2],src[3], \ dst_y[0],*dst_u,*dst_v) #define INIT INIT_RGBA_32 \ uint16_t r_tmp; \ uint16_t g_tmp; \ uint16_t b_tmp; #define CHROMA_SUB 1 #include "../csp_packed_planar.h" /* rgba_32_to_yuv_float_c */ #define FUNC_NAME rgba_32_to_yuv_float_c #define IN_TYPE uint8_t #define OUT_TYPE float #define IN_ADVANCE 4 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define CONVERT \ RGBA_32_TO_YUV_FLOAT(src[0],src[1],src[2],src[3],dst[0],dst[1],dst[2]) #define INIT INIT_RGBA_32 \ uint16_t r_tmp; \ uint16_t g_tmp; \ uint16_t b_tmp; #include "../csp_packed_packed.h" #endif // !HQ /* RGBA 64 -> */ /* rgba_64_to_yuva_32_c */ #define FUNC_NAME rgba_64_to_yuva_32_c #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define CONVERT \ RGB_48_TO_YUV_8(src[0],src[1],src[2],dst[0],dst[1],dst[2]) \ RGB_16_TO_8(src[3], dst[3]); #ifdef HQ #define INIT uint32_t round_tmp; #endif #include "../csp_packed_packed.h" #ifndef HQ /* rgba_64_to_yuva_64_c */ #define FUNC_NAME rgba_64_to_yuva_64_c #define IN_TYPE uint16_t #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define CONVERT \ RGB_48_TO_YUV_16(src[0],src[1],src[2],dst[0],dst[1],dst[2]) \ dst[3] = src[3]; #include "../csp_packed_packed.h" /* rgba_64_to_yuva_float_c */ #define FUNC_NAME rgba_64_to_yuva_float_c #define IN_TYPE uint16_t #define OUT_TYPE float #define IN_ADVANCE 4 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define CONVERT \ RGB_48_TO_YUV_FLOAT(src[0],src[1],src[2],dst[0],dst[1],dst[2]) \ dst[3] = RGB_16_TO_FLOAT(src[3]); #include "../csp_packed_packed.h" #endif // !HQ /* rgba_64_to_yuy2_c */ #define FUNC_NAME rgba_64_to_yuy2_c #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE 4 #define NUM_PIXELS 2 #define CONVERT \ RGBA_64_TO_YUV_8(src[0],src[1],src[2],src[3],dst[0],dst[1],dst[3]) \ RGBA_64_TO_Y_8(src[4],src[5],src[6],src[7],dst[2]) #define INIT INIT_RGBA_64 \ uint16_t r_tmp; \ uint16_t g_tmp; \ uint16_t b_tmp; #include "../csp_packed_packed.h" /* rgba_64_to_uyvy_c */ #define FUNC_NAME rgba_64_to_uyvy_c #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE 4 #define NUM_PIXELS 2 #define CONVERT \ RGBA_64_TO_YUV_8(src[0],src[1],src[2],src[3],dst[1],dst[0],dst[2]) \ RGBA_64_TO_Y_8(src[4],src[5],src[6],src[7],dst[3]) #define INIT INIT_RGBA_64 \ uint16_t r_tmp; \ uint16_t g_tmp; \ uint16_t b_tmp; #include "../csp_packed_packed.h" /* rgba_64_to_yuv_422_p_c */ #define FUNC_NAME rgba_64_to_yuv_422_p_c #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CONVERT_YUV \ RGBA_64_TO_YUV_8(src[0],src[1],src[2],src[3], \ dst_y[0],*dst_u,*dst_v) \ RGBA_64_TO_Y_8(src[4],src[5],src[6],src[7],dst_y[1]) #define INIT INIT_RGBA_64 \ uint16_t r_tmp; \ uint16_t g_tmp; \ uint16_t b_tmp; #define CHROMA_SUB 1 #include "../csp_packed_planar.h" #ifndef HQ /* rgba_64_to_yuv_422_p_16_c */ #define FUNC_NAME rgba_64_to_yuv_422_p_16_c #define IN_TYPE uint16_t #define OUT_TYPE uint16_t #define IN_ADVANCE 8 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CONVERT_YUV \ RGBA_64_TO_YUV_16(src[0],src[1],src[2],src[3], \ dst_y[0],*dst_u,*dst_v) \ RGBA_64_TO_Y_16(src[4],src[5],src[6],src[7],dst_y[1]) #define INIT INIT_RGBA_64 \ uint16_t r_tmp; \ uint16_t g_tmp; \ uint16_t b_tmp; #define CHROMA_SUB 1 #include "../csp_packed_planar.h" #endif // !HQ /* rgba_64_to_yuv_411_p_c */ #define FUNC_NAME rgba_64_to_yuv_411_p_c #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 4 #define CONVERT_YUV \ RGBA_64_TO_YUV_8(src[0],src[1],src[2],src[3], \ dst_y[0],*dst_u,*dst_v) \ RGBA_64_TO_Y_8(src[4],src[5],src[6],src[7],dst_y[1]) \ RGBA_64_TO_Y_8(src[8],src[9],src[10],src[11],dst_y[2]) \ RGBA_64_TO_Y_8(src[12],src[13],src[14],src[15],dst_y[3]) #define INIT INIT_RGBA_64 \ uint16_t r_tmp; \ uint16_t g_tmp; \ uint16_t b_tmp; #define CHROMA_SUB 1 #include "../csp_packed_planar.h" /* rgba_64_to_yuv_420_p_c */ #define FUNC_NAME rgba_64_to_yuv_420_p_c #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CONVERT_YUV \ RGBA_64_TO_YUV_8(src[0],src[1],src[2],src[3], \ dst_y[0],*dst_u,*dst_v) \ RGBA_64_TO_Y_8(src[4],src[5],src[6],src[7],dst_y[1]) #define INIT INIT_RGBA_64 \ uint16_t r_tmp; \ uint16_t g_tmp; \ uint16_t b_tmp; #define CONVERT_Y \ RGBA_64_TO_Y_8(src[0],src[1],src[2],src[3], \ dst_y[0]) \ RGBA_64_TO_Y_8(src[4],src[5],src[6],src[7],dst_y[1]) #define CHROMA_SUB 2 #include "../csp_packed_planar.h" /* rgba_64_to_yuv_410_p_c */ #define FUNC_NAME rgba_64_to_yuv_410_p_c #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 4 #define CONVERT_YUV \ RGBA_64_TO_YUV_8(src[0],src[1],src[2],src[3], \ dst_y[0],*dst_u,*dst_v) \ RGBA_64_TO_Y_8(src[4],src[5],src[6],src[7],dst_y[1]) \ RGBA_64_TO_Y_8(src[8],src[9],src[10],src[11],dst_y[2]) \ RGBA_64_TO_Y_8(src[12],src[13],src[14],src[15],dst_y[3]) #define INIT INIT_RGBA_64 \ uint16_t r_tmp; \ uint16_t g_tmp; \ uint16_t b_tmp; #define CONVERT_Y \ RGBA_64_TO_Y_8(src[0],src[1],src[2],src[3],dst_y[0]) \ RGBA_64_TO_Y_8(src[4],src[5],src[6],src[7],dst_y[1]) \ RGBA_64_TO_Y_8(src[8],src[9],src[10],src[11],dst_y[2]) \ RGBA_64_TO_Y_8(src[12],src[13],src[14],src[15],dst_y[3]) #define CHROMA_SUB 4 #include "../csp_packed_planar.h" /* rgba_64_to_yuv_444_p_c */ #define FUNC_NAME rgba_64_to_yuv_444_p_c #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE_Y 1 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 1 #define CONVERT_YUV \ RGBA_64_TO_YUV_8(src[0],src[1],src[2],src[3], \ dst_y[0],*dst_u,*dst_v) #define INIT INIT_RGBA_64 \ uint16_t r_tmp; \ uint16_t g_tmp; \ uint16_t b_tmp; #define CHROMA_SUB 1 #include "../csp_packed_planar.h" #ifndef HQ /* rgba_64_to_yuv_444_16_p_c */ #define FUNC_NAME rgba_64_to_yuv_444_p_16_c #define IN_TYPE uint16_t #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE_Y 1 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 1 #define CONVERT_YUV \ RGBA_64_TO_YUV_16(src[0],src[1],src[2],src[3], \ dst_y[0],*dst_u,*dst_v) #define INIT INIT_RGBA_64 \ uint16_t r_tmp; \ uint16_t g_tmp; \ uint16_t b_tmp; #define CHROMA_SUB 1 #include "../csp_packed_planar.h" /* rgba_64_to_yuv_float_c */ #define FUNC_NAME rgba_64_to_yuv_float_c #define IN_TYPE uint16_t #define OUT_TYPE float #define IN_ADVANCE 4 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define CONVERT \ RGBA_64_TO_YUV_FLOAT(src[0],src[1],src[2],src[3],dst[0],dst[1],dst[2]) #define INIT INIT_RGBA_64 \ uint16_t r_tmp; \ uint16_t g_tmp; \ uint16_t b_tmp; #include "../csp_packed_packed.h" /* rgba_64_to_yuv_float_ia_c */ #define FUNC_NAME rgba_64_to_yuv_float_ia_c #define IN_TYPE uint16_t #define OUT_TYPE float #define IN_ADVANCE 4 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define CONVERT \ RGB_48_TO_YUV_FLOAT(src[0],src[1],src[2],dst[0],dst[1],dst[3]) #include "../csp_packed_packed.h" #endif // !HQ /* RGBA 64 -> (No Alpha) */ /* rgba_64_to_yuy2_ia_c */ #define FUNC_NAME rgba_64_to_yuy2_ia_c #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE 4 #define NUM_PIXELS 2 #define CONVERT \ RGB_48_TO_YUV_8(src[0],src[1],src[2],dst[0],dst[1],dst[3]) \ RGB_48_TO_Y_8(src[4],src[5],src[6],dst[2]) #include "../csp_packed_packed.h" /* rgba_64_to_uyvy_ia_c */ #define FUNC_NAME rgba_64_to_uyvy_ia_c #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE 4 #define NUM_PIXELS 2 #define CONVERT \ RGB_48_TO_YUV_8(src[0],src[1],src[2],dst[1],dst[0],dst[2]) \ RGB_48_TO_Y_8(src[4],src[5],src[6],dst[3]) #include "../csp_packed_packed.h" /* rgba_64_to_yuv_422_p_ia_c */ #define FUNC_NAME rgba_64_to_yuv_422_p_ia_c #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CONVERT_YUV \ RGB_48_TO_YUV_8(src[0],src[1],src[2], \ dst_y[0],*dst_u,*dst_v) \ RGB_48_TO_Y_8(src[4],src[5],src[6],dst_y[1]) #define CHROMA_SUB 1 #include "../csp_packed_planar.h" #ifndef HQ /* rgba_64_to_yuv_422_p_16_ia_c */ #define FUNC_NAME rgba_64_to_yuv_422_p_16_ia_c #define IN_TYPE uint16_t #define OUT_TYPE uint16_t #define IN_ADVANCE 8 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CONVERT_YUV \ RGB_48_TO_YUV_16(src[0],src[1],src[2], \ dst_y[0],*dst_u,*dst_v) \ RGB_48_TO_Y_16(src[4],src[5],src[6],dst_y[1]) #define CHROMA_SUB 1 #include "../csp_packed_planar.h" #endif // !HQ /* rgba_64_to_yuv_411_p_ia_c */ #define FUNC_NAME rgba_64_to_yuv_411_p_ia_c #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 4 #define CONVERT_YUV \ RGB_48_TO_YUV_8(src[0],src[1],src[2], \ dst_y[0],*dst_u,*dst_v) \ RGB_48_TO_Y_8(src[4],src[5],src[6],dst_y[1]) \ RGB_48_TO_Y_8(src[8],src[9],src[10],dst_y[2]) \ RGB_48_TO_Y_8(src[12],src[13],src[14],dst_y[3]) #define CHROMA_SUB 1 #include "../csp_packed_planar.h" /* rgba_64_to_yuv_420_p_ia_c */ #define FUNC_NAME rgba_64_to_yuv_420_p_ia_c #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CONVERT_YUV \ RGB_48_TO_YUV_8(src[0],src[1],src[2], \ dst_y[0],*dst_u,*dst_v) \ RGB_48_TO_Y_8(src[4],src[5],src[6],dst_y[1]) #define CONVERT_Y \ RGB_48_TO_Y_8(src[0],src[1],src[2], \ dst_y[0]) \ RGB_48_TO_Y_8(src[4],src[5],src[6],dst_y[1]) #define CHROMA_SUB 2 #include "../csp_packed_planar.h" /* rgba_64_to_yuv_410_p_ia_c */ #define FUNC_NAME rgba_64_to_yuv_410_p_ia_c #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 4 #define CONVERT_YUV \ RGB_48_TO_YUV_8(src[0],src[1],src[2], \ dst_y[0],*dst_u,*dst_v) \ RGB_48_TO_Y_8(src[4],src[5],src[6],dst_y[1]) \ RGB_48_TO_Y_8(src[8],src[9],src[10],dst_y[2]) \ RGB_48_TO_Y_8(src[12],src[13],src[14],dst_y[3]) #define CONVERT_Y \ RGB_48_TO_Y_8(src[0],src[1],src[2],dst_y[0]) \ RGB_48_TO_Y_8(src[4],src[5],src[6],dst_y[1]) \ RGB_48_TO_Y_8(src[8],src[9],src[10],dst_y[2]) \ RGB_48_TO_Y_8(src[12],src[13],src[14],dst_y[3]) #define CHROMA_SUB 4 #include "../csp_packed_planar.h" /* rgba_64_to_yuv_444_p_ia_c */ #define FUNC_NAME rgba_64_to_yuv_444_p_ia_c #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE_Y 1 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 1 #define CONVERT_YUV \ RGB_48_TO_YUV_8(src[0],src[1],src[2], \ dst_y[0],*dst_u,*dst_v) #define CHROMA_SUB 1 #include "../csp_packed_planar.h" #ifndef HQ /* rgba_64_to_yuv_444_16_p_ia_c */ #define FUNC_NAME rgba_64_to_yuv_444_p_16_ia_c #define IN_TYPE uint16_t #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE_Y 1 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 1 #define CONVERT_YUV \ RGB_48_TO_YUV_16(src[0],src[1],src[2], \ dst_y[0],*dst_u,*dst_v) #define CHROMA_SUB 1 #include "../csp_packed_planar.h" #endif // !HQ /* RGB Float -> */ /* rgba_float_to_yuva_32_c */ #define FUNC_NAME rgba_float_to_yuva_32_c #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define INIT INIT_RGB_FLOAT_TO_YUV #define CONVERT \ RGB_FLOAT_TO_YUV_8(src[0],src[1],src[2],dst[0],dst[1],dst[2]) \ RGB_FLOAT_TO_8(src[3], dst[3]); #include "../csp_packed_packed.h" /* rgba_float_to_yuva_64_c */ #define FUNC_NAME rgba_float_to_yuva_64_c #define IN_TYPE float #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define INIT INIT_RGB_FLOAT_TO_YUV #define CONVERT \ RGB_FLOAT_TO_YUV_16(src[0],src[1],src[2],dst[0],dst[1],dst[2]) \ RGB_FLOAT_TO_16(src[3], dst[3]); #include "../csp_packed_packed.h" #ifndef HQ /* rgba_float_to_yuva_float_c */ #define FUNC_NAME rgba_float_to_yuva_float_c #define IN_TYPE float #define OUT_TYPE float #define IN_ADVANCE 4 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 // #define INIT INIT_RGB_FLOAT_TO_YUV #define CONVERT \ RGB_FLOAT_TO_YUV_FLOAT(src[0],src[1],src[2],dst[0],dst[1],dst[2]) \ dst[3] = src[3]; #include "../csp_packed_packed.h" #endif // !HQ /* rgba_float_to_yuy2_c */ #define FUNC_NAME rgba_float_to_yuy2_c #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE 4 #define NUM_PIXELS 2 #define CONVERT \ RGBA_FLOAT_TO_YUV_8(src[0],src[1],src[2],src[3],dst[0],dst[1],dst[3]) \ RGBA_FLOAT_TO_Y_8(src[4],src[5],src[6],src[7],dst[2]) #define INIT INIT_RGBA_FLOAT \ float r_tmp; \ float g_tmp; \ float b_tmp; \ INIT_RGB_FLOAT_TO_YUV #include "../csp_packed_packed.h" /* rgba_float_to_uyvy_c */ #define FUNC_NAME rgba_float_to_uyvy_c #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE 4 #define NUM_PIXELS 2 #define CONVERT \ RGBA_FLOAT_TO_YUV_8(src[0],src[1],src[2],src[3],dst[1],dst[0],dst[2]) \ RGBA_FLOAT_TO_Y_8(src[4],src[5],src[6],src[7],dst[3]) #define INIT INIT_RGBA_FLOAT \ float r_tmp; \ float g_tmp; \ float b_tmp; \ INIT_RGB_FLOAT_TO_YUV #include "../csp_packed_packed.h" /* rgba_float_to_yuv_422_p_c */ #define FUNC_NAME rgba_float_to_yuv_422_p_c #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CONVERT_YUV \ RGBA_FLOAT_TO_YUV_8(src[0],src[1],src[2],src[3], \ dst_y[0],*dst_u,*dst_v) \ RGBA_FLOAT_TO_Y_8(src[4],src[5],src[6],src[7],dst_y[1]) #define INIT INIT_RGBA_FLOAT \ float r_tmp; \ float g_tmp; \ float b_tmp; \ INIT_RGB_FLOAT_TO_YUV #define CHROMA_SUB 1 #include "../csp_packed_planar.h" /* rgba_float_to_yuv_422_p_16_c */ #define FUNC_NAME rgba_float_to_yuv_422_p_16_c #define IN_TYPE float #define OUT_TYPE uint16_t #define IN_ADVANCE 8 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CONVERT_YUV \ RGBA_FLOAT_TO_YUV_16(src[0],src[1],src[2],src[3], \ dst_y[0],*dst_u,*dst_v) \ RGBA_FLOAT_TO_Y_16(src[4],src[5],src[6],src[7],dst_y[1]) #define INIT INIT_RGBA_FLOAT \ float r_tmp; \ float g_tmp; \ float b_tmp; \ INIT_RGB_FLOAT_TO_YUV #define CHROMA_SUB 1 #include "../csp_packed_planar.h" /* rgba_float_to_yuv_411_p_c */ #define FUNC_NAME rgba_float_to_yuv_411_p_c #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 4 #define CONVERT_YUV \ RGBA_FLOAT_TO_YUV_8(src[0],src[1],src[2],src[3], \ dst_y[0],*dst_u,*dst_v) \ RGBA_FLOAT_TO_Y_8(src[4],src[5],src[6],src[7],dst_y[1]) \ RGBA_FLOAT_TO_Y_8(src[8],src[9],src[10],src[11],dst_y[2]) \ RGBA_FLOAT_TO_Y_8(src[12],src[13],src[14],src[15],dst_y[3]) #define INIT INIT_RGBA_FLOAT \ float r_tmp; \ float g_tmp; \ float b_tmp; \ INIT_RGB_FLOAT_TO_YUV #define CHROMA_SUB 1 #include "../csp_packed_planar.h" /* rgba_float_to_yuv_420_p_c */ #define FUNC_NAME rgba_float_to_yuv_420_p_c #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CONVERT_YUV \ RGBA_FLOAT_TO_YUV_8(src[0],src[1],src[2],src[3], \ dst_y[0],*dst_u,*dst_v) \ RGBA_FLOAT_TO_Y_8(src[4],src[5],src[6],src[7],dst_y[1]) #define INIT INIT_RGBA_FLOAT \ float r_tmp; \ float g_tmp; \ float b_tmp; \ INIT_RGB_FLOAT_TO_YUV #define CONVERT_Y \ RGBA_FLOAT_TO_Y_8(src[0],src[1],src[2],src[3], \ dst_y[0]) \ RGBA_FLOAT_TO_Y_8(src[4],src[5],src[6],src[7],dst_y[1]) #define CHROMA_SUB 2 #include "../csp_packed_planar.h" /* rgba_float_to_yuv_410_p_c */ #define FUNC_NAME rgba_float_to_yuv_410_p_c #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 4 #define CONVERT_YUV \ RGBA_FLOAT_TO_YUV_8(src[0],src[1],src[2],src[3], \ dst_y[0],*dst_u,*dst_v) \ RGBA_FLOAT_TO_Y_8(src[4],src[5],src[6],src[7],dst_y[1]) \ RGBA_FLOAT_TO_Y_8(src[8],src[9],src[10],src[11],dst_y[2]) \ RGBA_FLOAT_TO_Y_8(src[12],src[13],src[14],src[15],dst_y[3]) #define INIT INIT_RGBA_FLOAT \ float r_tmp; \ float g_tmp; \ float b_tmp; \ INIT_RGB_FLOAT_TO_YUV #define CONVERT_Y \ RGBA_FLOAT_TO_Y_8(src[0],src[1],src[2],src[3],dst_y[0]) \ RGBA_FLOAT_TO_Y_8(src[4],src[5],src[6],src[7],dst_y[1]) \ RGBA_FLOAT_TO_Y_8(src[8],src[9],src[10],src[11],dst_y[2]) \ RGBA_FLOAT_TO_Y_8(src[12],src[13],src[14],src[15],dst_y[3]) #define CHROMA_SUB 4 #include "../csp_packed_planar.h" /* rgba_float_to_yuv_444_p_c */ #define FUNC_NAME rgba_float_to_yuv_444_p_c #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE_Y 1 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 1 #define CONVERT_YUV \ RGBA_FLOAT_TO_YUV_8(src[0],src[1],src[2],src[3], \ dst_y[0],*dst_u,*dst_v) #define INIT INIT_RGBA_FLOAT \ float r_tmp; \ float g_tmp; \ float b_tmp; \ INIT_RGB_FLOAT_TO_YUV #define CHROMA_SUB 1 #include "../csp_packed_planar.h" /* rgba_float_to_yuv_444_p_16_c */ #define FUNC_NAME rgba_float_to_yuv_444_p_16_c #define IN_TYPE float #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE_Y 1 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 1 #define CONVERT_YUV \ RGBA_FLOAT_TO_YUV_16(src[0],src[1],src[2],src[3], \ dst_y[0],*dst_u,*dst_v) #define INIT INIT_RGBA_FLOAT \ float r_tmp; \ float g_tmp; \ float b_tmp; \ INIT_RGB_FLOAT_TO_YUV #define CHROMA_SUB 1 #include "../csp_packed_planar.h" /* rgba_float_to_yuv_float_c */ #define FUNC_NAME rgba_float_to_yuv_float_c #define IN_TYPE float #define OUT_TYPE float #define IN_ADVANCE 4 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define CONVERT \ RGBA_FLOAT_TO_YUV_FLOAT(src[0],src[1],src[2],src[3],dst[0],dst[1],dst[2]) #define INIT INIT_RGBA_FLOAT \ float r_tmp; \ float g_tmp; \ float b_tmp; #include "../csp_packed_packed.h" /* rgba_float_to_yuv_float_ia_c */ #define FUNC_NAME rgba_float_to_yuv_float_ia_c #define IN_TYPE float #define OUT_TYPE float #define IN_ADVANCE 4 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define CONVERT \ RGB_FLOAT_TO_YUV_FLOAT(src[0],src[1],src[2],dst[0],dst[1],dst[2]) #include "../csp_packed_packed.h" /* RGB Float -> (No alpha) */ /* rgba_float_to_yuy2_ia_c */ #define FUNC_NAME rgba_float_to_yuy2_ia_c #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE 4 #define NUM_PIXELS 2 #define CONVERT \ RGB_FLOAT_TO_YUV_8(src[0],src[1],src[2],dst[0],dst[1],dst[3]) \ RGB_FLOAT_TO_Y_8(src[4],src[5],src[6],dst[2]) #define INIT \ INIT_RGB_FLOAT_TO_YUV #include "../csp_packed_packed.h" /* rgba_float_to_uyvy_ia_c */ #define FUNC_NAME rgba_float_to_uyvy_ia_c #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE 4 #define NUM_PIXELS 2 #define CONVERT \ RGB_FLOAT_TO_YUV_8(src[0],src[1],src[2],dst[1],dst[0],dst[2]) \ RGB_FLOAT_TO_Y_8(src[4],src[5],src[6],dst[3]) #define INIT INIT_RGB_FLOAT_TO_YUV #include "../csp_packed_packed.h" /* rgba_float_to_yuv_422_p_ia_c */ #define FUNC_NAME rgba_float_to_yuv_422_p_ia_c #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CONVERT_YUV \ RGB_FLOAT_TO_YUV_8(src[0],src[1],src[2], \ dst_y[0],*dst_u,*dst_v) \ RGB_FLOAT_TO_Y_8(src[4],src[5],src[6],dst_y[1]) #define INIT INIT_RGB_FLOAT_TO_YUV #define CHROMA_SUB 1 #include "../csp_packed_planar.h" /* rgba_float_to_yuv_422_p_16_ia_c */ #define FUNC_NAME rgba_float_to_yuv_422_p_16_ia_c #define IN_TYPE float #define OUT_TYPE uint16_t #define IN_ADVANCE 8 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CONVERT_YUV \ RGB_FLOAT_TO_YUV_16(src[0],src[1],src[2], \ dst_y[0],*dst_u,*dst_v) \ RGB_FLOAT_TO_Y_16(src[4],src[5],src[6],dst_y[1]) #define INIT INIT_RGB_FLOAT_TO_YUV #define CHROMA_SUB 1 #include "../csp_packed_planar.h" /* rgba_float_to_yuv_411_p_ia_c */ #define FUNC_NAME rgba_float_to_yuv_411_p_ia_c #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 4 #define CONVERT_YUV \ RGB_FLOAT_TO_YUV_8(src[0],src[1],src[2], \ dst_y[0],*dst_u,*dst_v) \ RGB_FLOAT_TO_Y_8(src[4],src[5],src[6],dst_y[1]) \ RGB_FLOAT_TO_Y_8(src[8],src[9],src[10],dst_y[2]) \ RGB_FLOAT_TO_Y_8(src[12],src[13],src[14],dst_y[3]) #define INIT INIT_RGB_FLOAT_TO_YUV #define CHROMA_SUB 1 #include "../csp_packed_planar.h" /* rgba_float_to_yuv_420_p_ia_c */ #define FUNC_NAME rgba_float_to_yuv_420_p_ia_c #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CONVERT_YUV \ RGB_FLOAT_TO_YUV_8(src[0],src[1],src[2], \ dst_y[0],*dst_u,*dst_v) \ RGB_FLOAT_TO_Y_8(src[4],src[5],src[6],dst_y[1]) #define INIT INIT_RGB_FLOAT_TO_YUV #define CONVERT_Y \ RGB_FLOAT_TO_Y_8(src[0],src[1],src[2], \ dst_y[0]) \ RGB_FLOAT_TO_Y_8(src[4],src[5],src[6],dst_y[1]) #define CHROMA_SUB 2 #include "../csp_packed_planar.h" /* rgba_float_to_yuv_410_p_ia_c */ #define FUNC_NAME rgba_float_to_yuv_410_p_ia_c #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 4 #define CONVERT_YUV \ RGB_FLOAT_TO_YUV_8(src[0],src[1],src[2], \ dst_y[0],*dst_u,*dst_v) \ RGB_FLOAT_TO_Y_8(src[4],src[5],src[6],dst_y[1]) \ RGB_FLOAT_TO_Y_8(src[8],src[9],src[10],dst_y[2]) \ RGB_FLOAT_TO_Y_8(src[12],src[13],src[14],dst_y[3]) #define INIT INIT_RGB_FLOAT_TO_YUV #define CONVERT_Y \ RGB_FLOAT_TO_Y_8(src[0],src[1],src[2],dst_y[0]) \ RGB_FLOAT_TO_Y_8(src[4],src[5],src[6],dst_y[1]) \ RGB_FLOAT_TO_Y_8(src[8],src[9],src[10],dst_y[2]) \ RGB_FLOAT_TO_Y_8(src[12],src[13],src[14],dst_y[3]) #define CHROMA_SUB 4 #include "../csp_packed_planar.h" /* rgba_float_to_yuv_444_p_ia_c */ #define FUNC_NAME rgba_float_to_yuv_444_p_ia_c #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE_Y 1 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 1 #define CONVERT_YUV \ RGB_FLOAT_TO_YUV_8(src[0],src[1],src[2], \ dst_y[0],*dst_u,*dst_v) #define INIT INIT_RGB_FLOAT_TO_YUV #define CHROMA_SUB 1 #include "../csp_packed_planar.h" /* rgba_float_to_yuv_444_p_16_ia_c */ #define FUNC_NAME rgba_float_to_yuv_444_p_16_ia_c #define IN_TYPE float #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE_Y 1 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 1 #define CONVERT_YUV \ RGB_FLOAT_TO_YUV_16(src[0],src[1],src[2], \ dst_y[0],*dst_u,*dst_v) #define INIT INIT_RGB_FLOAT_TO_YUV #define CHROMA_SUB 1 #include "../csp_packed_planar.h" #ifndef HQ /* JPEG */ /**************************************************** * Conversions to YUVJ 422 P ****************************************************/ /* rgb_15_to_yuvj_422_p_c */ #define FUNC_NAME rgb_15_to_yuvj_422_p_c #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 2 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CONVERT_YUV \ RGB_24_TO_YUVJ_8(RGB15_TO_R_8(src[0]), \ RGB15_TO_G_8(src[0]), \ RGB15_TO_B_8(src[0]), \ dst_y[0],*dst_u,*dst_v) \ RGB_24_TO_YJ_8(RGB15_TO_R_8(src[1]), \ RGB15_TO_G_8(src[1]), \ RGB15_TO_B_8(src[1]), \ dst_y[1]) #define CHROMA_SUB 1 #include "../csp_packed_planar.h" /* bgr_15_to_yuvj_422_p_c */ #define FUNC_NAME bgr_15_to_yuvj_422_p_c #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 2 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CONVERT_YUV \ RGB_24_TO_YUVJ_8(BGR15_TO_R_8(src[0]), \ BGR15_TO_G_8(src[0]), \ BGR15_TO_B_8(src[0]), \ dst_y[0],*dst_u,*dst_v) \ RGB_24_TO_YJ_8(BGR15_TO_R_8(src[1]), \ BGR15_TO_G_8(src[1]), \ BGR15_TO_B_8(src[1]), \ dst_y[1]) #define CHROMA_SUB 1 #include "../csp_packed_planar.h" /* rgb_16_to_yuvj_422_p_c */ #define FUNC_NAME rgb_16_to_yuvj_422_p_c #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 2 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CONVERT_YUV \ RGB_24_TO_YUVJ_8(RGB16_TO_R_8(src[0]), \ RGB16_TO_G_8(src[0]), \ RGB16_TO_B_8(src[0]), \ dst_y[0],*dst_u,*dst_v) \ RGB_24_TO_YJ_8(RGB16_TO_R_8(src[1]), \ RGB16_TO_G_8(src[1]), \ RGB16_TO_B_8(src[1]), \ dst_y[1]) #define CHROMA_SUB 1 #include "../csp_packed_planar.h" /* bgr_16_to_yuvj_422_p_c */ #define FUNC_NAME bgr_16_to_yuvj_422_p_c #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 2 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CONVERT_YUV \ RGB_24_TO_YUVJ_8(BGR16_TO_R_8(src[0]), \ BGR16_TO_G_8(src[0]), \ BGR16_TO_B_8(src[0]), \ dst_y[0],*dst_u,*dst_v) \ RGB_24_TO_YJ_8(BGR16_TO_R_8(src[1]), \ BGR16_TO_G_8(src[1]), \ BGR16_TO_B_8(src[1]), \ dst_y[1]) #define CHROMA_SUB 1 #include "../csp_packed_planar.h" /* rgb_24_to_yuvj_422_p_c */ #define FUNC_NAME rgb_24_to_yuvj_422_p_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 6 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CONVERT_YUV \ RGB_24_TO_YUVJ_8(src[0],src[1],src[2], \ dst_y[0],*dst_u,*dst_v) \ RGB_24_TO_YJ_8(src[3],src[4],src[5],dst_y[1]) #define CHROMA_SUB 1 #include "../csp_packed_planar.h" #endif // !HQ /* rgb_48_to_yuvj_422_p_c */ #define FUNC_NAME rgb_48_to_yuvj_422_p_c #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 6 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CONVERT_YUV \ RGB_48_TO_YUVJ_8(src[0],src[1],src[2], \ dst_y[0],*dst_u,*dst_v) \ RGB_48_TO_YJ_8(src[3],src[4],src[5],dst_y[1]) #ifdef HQ #define INIT uint32_t round_tmp; #endif #define CHROMA_SUB 1 #include "../csp_packed_planar.h" /* rgb_float_to_yuvj_422_p_c */ #define FUNC_NAME rgb_float_to_yuvj_422_p_c #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 6 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define INIT INIT_RGB_FLOAT_TO_YUV #define CONVERT_YUV \ RGB_FLOAT_TO_YUVJ_8(src[0],src[1],src[2], \ dst_y[0],*dst_u,*dst_v) \ RGB_FLOAT_TO_YJ_8(src[3],src[4],src[5],dst_y[1]) #define CHROMA_SUB 1 #include "../csp_packed_planar.h" #ifndef HQ /* bgr_24_to_yuvj_422_p_c */ #define FUNC_NAME bgr_24_to_yuvj_422_p_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 6 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CONVERT_YUV \ RGB_24_TO_YUVJ_8(src[2],src[1],src[0], \ dst_y[0],*dst_u,*dst_v) \ RGB_24_TO_YJ_8(src[5],src[4],src[3],dst_y[1]) #define CHROMA_SUB 1 #include "../csp_packed_planar.h" /* rgb_32_to_yuvj_422_p_c */ #define FUNC_NAME rgb_32_to_yuvj_422_p_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CONVERT_YUV \ RGB_24_TO_YUVJ_8(src[0],src[1],src[2], \ dst_y[0],*dst_u,*dst_v) \ RGB_24_TO_YJ_8(src[4],src[5],src[6],dst_y[1]) #define CHROMA_SUB 1 #include "../csp_packed_planar.h" /* bgr_32_to_yuvj_422_p_c */ #define FUNC_NAME bgr_32_to_yuvj_422_p_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CONVERT_YUV \ RGB_24_TO_YUVJ_8(src[2],src[1],src[0], \ dst_y[0],*dst_u,*dst_v) \ RGB_24_TO_YJ_8(src[6],src[5],src[4],dst_y[1]) #define CHROMA_SUB 1 #include "../csp_packed_planar.h" /**************************************************** * Conversions to YUV 444 P ****************************************************/ /* rgb_15_to_yuvj_444_p_c */ #define FUNC_NAME rgb_15_to_yuvj_444_p_c #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 1 #define OUT_ADVANCE_Y 1 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 1 #define CONVERT_YUV \ RGB_24_TO_YUVJ_8(RGB15_TO_R_8(src[0]), \ RGB15_TO_G_8(src[0]), \ RGB15_TO_B_8(src[0]), \ dst_y[0],*dst_u,*dst_v) #define CHROMA_SUB 1 #include "../csp_packed_planar.h" /* bgr_15_to_yuvj_444_p_c */ #define FUNC_NAME bgr_15_to_yuvj_444_p_c #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 1 #define OUT_ADVANCE_Y 1 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 1 #define CONVERT_YUV \ RGB_24_TO_YUVJ_8(BGR15_TO_R_8(src[0]), \ BGR15_TO_G_8(src[0]), \ BGR15_TO_B_8(src[0]), \ dst_y[0],*dst_u,*dst_v) #define CHROMA_SUB 1 #include "../csp_packed_planar.h" /* rgb_16_to_yuvj_444_p_c */ #define FUNC_NAME rgb_16_to_yuvj_444_p_c #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 1 #define OUT_ADVANCE_Y 1 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 1 #define CONVERT_YUV \ RGB_24_TO_YUVJ_8(RGB16_TO_R_8(src[0]), \ RGB16_TO_G_8(src[0]), \ RGB16_TO_B_8(src[0]), \ dst_y[0],*dst_u,*dst_v) #define CHROMA_SUB 1 #include "../csp_packed_planar.h" /* bgr_16_to_yuvj_444_p_c */ #define FUNC_NAME bgr_16_to_yuvj_444_p_c #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 1 #define OUT_ADVANCE_Y 1 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 1 #define CONVERT_YUV \ RGB_24_TO_YUVJ_8(BGR16_TO_R_8(src[0]), \ BGR16_TO_G_8(src[0]), \ BGR16_TO_B_8(src[0]), \ dst_y[0],*dst_u,*dst_v) #define CHROMA_SUB 1 #include "../csp_packed_planar.h" /* rgb_24_to_yuvj_444_p_c */ #define FUNC_NAME rgb_24_to_yuvj_444_p_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 3 #define OUT_ADVANCE_Y 1 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 1 #define CONVERT_YUV \ RGB_24_TO_YUVJ_8(src[0],src[1],src[2], \ dst_y[0],*dst_u,*dst_v) #define CHROMA_SUB 1 #include "../csp_packed_planar.h" #endif // !HQ /* rgb_48_to_yuvj_444_p_c */ #define FUNC_NAME rgb_48_to_yuvj_444_p_c #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 3 #define OUT_ADVANCE_Y 1 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 1 #define CONVERT_YUV \ RGB_48_TO_YUVJ_8(src[0],src[1],src[2], \ dst_y[0],*dst_u,*dst_v) #ifdef HQ #define INIT uint32_t round_tmp; #endif #define CHROMA_SUB 1 #include "../csp_packed_planar.h" /* rgb_float_to_yuvj_444_p_c */ #define FUNC_NAME rgb_float_to_yuvj_444_p_c #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 3 #define OUT_ADVANCE_Y 1 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 1 #define INIT INIT_RGB_FLOAT_TO_YUV #define CONVERT_YUV \ RGB_FLOAT_TO_YUVJ_8(src[0],src[1],src[2], \ dst_y[0],*dst_u,*dst_v) #define CHROMA_SUB 1 #include "../csp_packed_planar.h" #ifndef HQ /* bgr_24_to_yuvj_444_p_c */ #define FUNC_NAME bgr_24_to_yuvj_444_p_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 3 #define OUT_ADVANCE_Y 1 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 1 #define CONVERT_YUV \ RGB_24_TO_YUVJ_8(src[2],src[1],src[0], \ dst_y[0],*dst_u,*dst_v) #define CHROMA_SUB 1 #include "../csp_packed_planar.h" /* rgb_32_to_yuvj_444_p_c */ #define FUNC_NAME rgb_32_to_yuvj_444_p_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE_Y 1 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 1 #define CONVERT_YUV \ RGB_24_TO_YUVJ_8(src[0],src[1],src[2], \ dst_y[0],*dst_u,*dst_v) #define CHROMA_SUB 1 #include "../csp_packed_planar.h" /* bgr_32_to_yuvj_444_p_c */ #define FUNC_NAME bgr_32_to_yuvj_444_p_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE_Y 1 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 1 #define CONVERT_YUV \ RGB_24_TO_YUVJ_8(src[2],src[1],src[0], \ dst_y[0],*dst_u,*dst_v) #define CHROMA_SUB 1 #include "../csp_packed_planar.h" /**************************************************** * Conversions to YUV 420 P ****************************************************/ /* rgb_15_to_yuvj_420_p_c */ #define FUNC_NAME rgb_15_to_yuvj_420_p_c #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 2 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CONVERT_YUV \ RGB_24_TO_YUVJ_8(RGB15_TO_R_8(src[0]), \ RGB15_TO_G_8(src[0]), \ RGB15_TO_B_8(src[0]), \ dst_y[0],*dst_u,*dst_v) \ RGB_24_TO_YJ_8(RGB15_TO_R_8(src[1]), \ RGB15_TO_G_8(src[1]), \ RGB15_TO_B_8(src[1]), \ dst_y[1]) #define CONVERT_Y \ RGB_24_TO_YJ_8(RGB15_TO_R_8(src[0]), \ RGB15_TO_G_8(src[0]), \ RGB15_TO_B_8(src[0]), \ dst_y[0]) \ RGB_24_TO_YJ_8(RGB15_TO_R_8(src[1]), \ RGB15_TO_G_8(src[1]), \ RGB15_TO_B_8(src[1]), \ dst_y[1]) #define CHROMA_SUB 2 #include "../csp_packed_planar.h" /* bgr_15_to_yuvj_420_p_c */ #define FUNC_NAME bgr_15_to_yuvj_420_p_c #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 2 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CONVERT_YUV \ RGB_24_TO_YUVJ_8(BGR15_TO_R_8(src[0]), \ BGR15_TO_G_8(src[0]), \ BGR15_TO_B_8(src[0]), \ dst_y[0],*dst_u,*dst_v) \ RGB_24_TO_YJ_8(BGR15_TO_R_8(src[1]), \ BGR15_TO_G_8(src[1]), \ BGR15_TO_B_8(src[1]), \ dst_y[1]) #define CONVERT_Y \ RGB_24_TO_YJ_8(BGR15_TO_R_8(src[0]), \ BGR15_TO_G_8(src[0]), \ BGR15_TO_B_8(src[0]), \ dst_y[0]) \ RGB_24_TO_YJ_8(BGR15_TO_R_8(src[1]), \ BGR15_TO_G_8(src[1]), \ BGR15_TO_B_8(src[1]), \ dst_y[1]) #define CHROMA_SUB 2 #include "../csp_packed_planar.h" /* rgb_16_to_yuvj_420_p_c */ #define FUNC_NAME rgb_16_to_yuvj_420_p_c #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 2 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CONVERT_YUV \ RGB_24_TO_YUVJ_8(RGB16_TO_R_8(src[0]), \ RGB16_TO_G_8(src[0]), \ RGB16_TO_B_8(src[0]), \ dst_y[0],*dst_u,*dst_v) \ RGB_24_TO_YJ_8(RGB16_TO_R_8(src[1]), \ RGB16_TO_G_8(src[1]), \ RGB16_TO_B_8(src[1]), \ dst_y[1]) #define CONVERT_Y \ RGB_24_TO_YJ_8(RGB16_TO_R_8(src[0]), \ RGB16_TO_G_8(src[0]), \ RGB16_TO_B_8(src[0]), \ dst_y[0]) \ RGB_24_TO_YJ_8(RGB16_TO_R_8(src[1]), \ RGB16_TO_G_8(src[1]), \ RGB16_TO_B_8(src[1]), \ dst_y[1]) #define CHROMA_SUB 2 #include "../csp_packed_planar.h" /* bgr_16_to_yuvj_420_p_c */ #define FUNC_NAME bgr_16_to_yuvj_420_p_c #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 2 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CONVERT_YUV \ RGB_24_TO_YUVJ_8(BGR16_TO_R_8(src[0]), \ BGR16_TO_G_8(src[0]), \ BGR16_TO_B_8(src[0]), \ dst_y[0],*dst_u,*dst_v) \ RGB_24_TO_YJ_8(BGR16_TO_R_8(src[1]), \ BGR16_TO_G_8(src[1]), \ BGR16_TO_B_8(src[1]), \ dst_y[1]) #define CONVERT_Y \ RGB_24_TO_YJ_8(BGR16_TO_R_8(src[0]), \ BGR16_TO_G_8(src[0]), \ BGR16_TO_B_8(src[0]), \ dst_y[0]) \ RGB_24_TO_YJ_8(BGR16_TO_R_8(src[1]), \ BGR16_TO_G_8(src[1]), \ BGR16_TO_B_8(src[1]), \ dst_y[1]) #define CHROMA_SUB 2 #include "../csp_packed_planar.h" /* rgb_24_to_yuvj_420_p_c */ #define FUNC_NAME rgb_24_to_yuvj_420_p_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 6 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CONVERT_YUV \ RGB_24_TO_YUVJ_8(src[0],src[1],src[2], \ dst_y[0],*dst_u,*dst_v) \ RGB_24_TO_YJ_8(src[3],src[4],src[5],dst_y[1]) #define CONVERT_Y \ RGB_24_TO_YJ_8(src[0],src[1],src[2],dst_y[0]) \ RGB_24_TO_YJ_8(src[3],src[4],src[5],dst_y[1]) #define CHROMA_SUB 2 #include "../csp_packed_planar.h" #endif // !HQ /* rgb_48_to_yuvj_420_p_c */ #define FUNC_NAME rgb_48_to_yuvj_420_p_c #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 6 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CONVERT_YUV \ RGB_48_TO_YUVJ_8(src[0],src[1],src[2], \ dst_y[0],*dst_u,*dst_v) \ RGB_48_TO_YJ_8(src[3],src[4],src[5],dst_y[1]) #define CONVERT_Y \ RGB_48_TO_YJ_8(src[0],src[1],src[2],dst_y[0]) \ RGB_48_TO_YJ_8(src[3],src[4],src[5],dst_y[1]) #define CHROMA_SUB 2 #ifdef HQ #define INIT uint32_t round_tmp; #endif #include "../csp_packed_planar.h" /* rgb_float_to_yuvj_420_p_c */ #define FUNC_NAME rgb_float_to_yuvj_420_p_c #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 6 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define INIT INIT_RGB_FLOAT_TO_YUV #define CONVERT_YUV \ RGB_FLOAT_TO_YUVJ_8(src[0],src[1],src[2], \ dst_y[0],*dst_u,*dst_v) \ RGB_FLOAT_TO_YJ_8(src[3],src[4],src[5],dst_y[1]) #define CONVERT_Y \ RGB_FLOAT_TO_YJ_8(src[0],src[1],src[2],dst_y[0]) \ RGB_FLOAT_TO_YJ_8(src[3],src[4],src[5],dst_y[1]) #define CHROMA_SUB 2 #include "../csp_packed_planar.h" #ifndef HQ /* bgr_24_to_yuvj_420_p_c */ #define FUNC_NAME bgr_24_to_yuvj_420_p_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 6 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CONVERT_YUV \ RGB_24_TO_YUVJ_8(src[2],src[1],src[0], \ dst_y[0],*dst_u,*dst_v) \ RGB_24_TO_YJ_8(src[5],src[4],src[3],dst_y[1]) #define CONVERT_Y \ RGB_24_TO_YJ_8(src[2],src[1],src[0],dst_y[0]) \ RGB_24_TO_YJ_8(src[5],src[4],src[3],dst_y[1]) #define CHROMA_SUB 2 #include "../csp_packed_planar.h" /* rgb_32_to_yuvj_420_p_c */ #define FUNC_NAME rgb_32_to_yuvj_420_p_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CONVERT_YUV \ RGB_24_TO_YUVJ_8(src[0],src[1],src[2], \ dst_y[0],*dst_u,*dst_v) \ RGB_24_TO_YJ_8(src[4],src[5],src[6],dst_y[1]) #define CONVERT_Y \ RGB_24_TO_YJ_8(src[0],src[1],src[2], \ dst_y[0]) \ RGB_24_TO_YJ_8(src[4],src[5],src[6],dst_y[1]) #define CHROMA_SUB 2 #include "../csp_packed_planar.h" /* bgr_32_to_yuvj_420_p_c */ #define FUNC_NAME bgr_32_to_yuvj_420_p_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CONVERT_YUV \ RGB_24_TO_YUVJ_8(src[2],src[1],src[0], \ dst_y[0],*dst_u,*dst_v) \ RGB_24_TO_YJ_8(src[6],src[5],src[4],dst_y[1]) #define CONVERT_Y \ RGB_24_TO_YJ_8(src[2],src[1],src[0], \ dst_y[0]) \ RGB_24_TO_YJ_8(src[6],src[5],src[4],dst_y[1]) #define CHROMA_SUB 2 #include "../csp_packed_planar.h" /* RGBA -> ... */ /* rgba_32_to_yuvj_422_p_c */ #define FUNC_NAME rgba_32_to_yuvj_422_p_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CONVERT_YUV \ RGBA_32_TO_YUVJ_8(src[0],src[1],src[2],src[3], \ dst_y[0],*dst_u,*dst_v) \ RGBA_32_TO_YJ_8(src[4],src[5],src[6],src[7],dst_y[1]) #define INIT INIT_RGBA_32 \ uint16_t r_tmp; \ uint16_t g_tmp; \ uint16_t b_tmp; #define CHROMA_SUB 1 #include "../csp_packed_planar.h" /* rgba_32_to_yuvj_420_p_c */ #define FUNC_NAME rgba_32_to_yuvj_420_p_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CONVERT_YUV \ RGBA_32_TO_YUVJ_8(src[0],src[1],src[2],src[3], \ dst_y[0],*dst_u,*dst_v) \ RGBA_32_TO_YJ_8(src[4],src[5],src[6],src[7],dst_y[1]) #define INIT INIT_RGBA_32 \ uint16_t r_tmp; \ uint16_t g_tmp; \ uint16_t b_tmp; #define CONVERT_Y \ RGBA_32_TO_YJ_8(src[0],src[1],src[2],src[3], \ dst_y[0]) \ RGBA_32_TO_YJ_8(src[4],src[5],src[6],src[7],dst_y[1]) #define CHROMA_SUB 2 #include "../csp_packed_planar.h" /* rgba_32_to_yuvj_444_p_c */ #define FUNC_NAME rgba_32_to_yuvj_444_p_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE_Y 1 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 1 #define CONVERT_YUV \ RGBA_32_TO_YUVJ_8(src[0],src[1],src[2],src[3], \ dst_y[0],*dst_u,*dst_v) #define INIT INIT_RGBA_32 \ uint16_t r_tmp; \ uint16_t g_tmp; \ uint16_t b_tmp; #define CHROMA_SUB 1 #include "../csp_packed_planar.h" #endif // !HQ /* rgba_64_to_yuvj_422_p_c */ #define FUNC_NAME rgba_64_to_yuvj_422_p_c #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CONVERT_YUV \ RGBA_64_TO_YUVJ_8(src[0],src[1],src[2],src[3], \ dst_y[0],*dst_u,*dst_v) \ RGBA_64_TO_YJ_8(src[4],src[5],src[6],src[7],dst_y[1]) #ifdef HQ #define INIT uint32_t round_tmp;\ INIT_RGBA_64 \ uint16_t r_tmp; \ uint16_t g_tmp; \ uint16_t b_tmp; #else // !HQ #define INIT INIT_RGBA_64 \ uint16_t r_tmp; \ uint16_t g_tmp; \ uint16_t b_tmp; #endif #define CHROMA_SUB 1 #include "../csp_packed_planar.h" /* rgba_64_to_yuvj_420_p_c */ #define FUNC_NAME rgba_64_to_yuvj_420_p_c #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CONVERT_YUV \ RGBA_64_TO_YUVJ_8(src[0],src[1],src[2],src[3], \ dst_y[0],*dst_u,*dst_v) \ RGBA_64_TO_YJ_8(src[4],src[5],src[6],src[7],dst_y[1]) #ifdef HQ #define INIT \ uint32_t round_tmp; \ INIT_RGBA_64 \ uint16_t r_tmp; \ uint16_t g_tmp; \ uint16_t b_tmp; #else #define INIT INIT_RGBA_64 \ uint16_t r_tmp; \ uint16_t g_tmp; \ uint16_t b_tmp; #endif #define CONVERT_Y \ RGBA_64_TO_YJ_8(src[0],src[1],src[2],src[3], \ dst_y[0]) \ RGBA_64_TO_YJ_8(src[4],src[5],src[6],src[7],dst_y[1]) #define CHROMA_SUB 2 #include "../csp_packed_planar.h" /* rgba_64_to_yuvj_444_p_c */ #define FUNC_NAME rgba_64_to_yuvj_444_p_c #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE_Y 1 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 1 #define CONVERT_YUV \ RGBA_64_TO_YUVJ_8(src[0],src[1],src[2],src[3], \ dst_y[0],*dst_u,*dst_v) #ifdef HQ #define INIT INIT_RGBA_64 \ uint32_t round_tmp; \ uint16_t r_tmp; \ uint16_t g_tmp; \ uint16_t b_tmp; #else #define INIT \ INIT_RGBA_64 \ uint16_t r_tmp; \ uint16_t g_tmp; \ uint16_t b_tmp; #endif #define CHROMA_SUB 1 #include "../csp_packed_planar.h" /* No Alpha */ /* rgba_64_to_yuvj_422_p_ia_c */ #define FUNC_NAME rgba_64_to_yuvj_422_p_ia_c #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CONVERT_YUV \ RGB_48_TO_YUVJ_8(src[0],src[1],src[2], \ dst_y[0],*dst_u,*dst_v) \ RGB_48_TO_YJ_8(src[4],src[5],src[6],dst_y[1]) #define CHROMA_SUB 1 #ifdef HQ #define INIT uint32_t round_tmp; #endif #include "../csp_packed_planar.h" /* rgba_64_to_yuvj_420_p_ia_c */ #define FUNC_NAME rgba_64_to_yuvj_420_p_ia_c #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CONVERT_YUV \ RGB_48_TO_YUVJ_8(src[0],src[1],src[2], \ dst_y[0],*dst_u,*dst_v) \ RGB_48_TO_YJ_8(src[4],src[5],src[6],dst_y[1]) #define CONVERT_Y \ RGB_48_TO_YJ_8(src[0],src[1],src[2], \ dst_y[0]) \ RGB_48_TO_YJ_8(src[4],src[5],src[6],dst_y[1]) #define CHROMA_SUB 2 #ifdef HQ #define INIT uint32_t round_tmp; #endif #include "../csp_packed_planar.h" /* rgba_64_to_yuvj_444_p_ia_c */ #define FUNC_NAME rgba_64_to_yuvj_444_p_ia_c #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE_Y 1 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 1 #define CONVERT_YUV \ RGB_48_TO_YUVJ_8(src[0],src[1],src[2], \ dst_y[0],*dst_u,*dst_v) #define CHROMA_SUB 1 #ifdef HQ #define INIT uint32_t round_tmp; #endif #include "../csp_packed_planar.h" /* RGBA float -> */ /* rgba_float_to_yuvj_422_p_c */ #define FUNC_NAME rgba_float_to_yuvj_422_p_c #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CONVERT_YUV \ RGBA_FLOAT_TO_YUVJ_8(src[0],src[1],src[2],src[3], \ dst_y[0],*dst_u,*dst_v) \ RGBA_FLOAT_TO_YJ_8(src[4],src[5],src[6],src[7],dst_y[1]) #define INIT INIT_RGBA_FLOAT \ float r_tmp; \ float g_tmp; \ float b_tmp; \ INIT_RGB_FLOAT_TO_YUV #define CHROMA_SUB 1 #include "../csp_packed_planar.h" /* rgba_float_to_yuvj_420_p_c */ #define FUNC_NAME rgba_float_to_yuvj_420_p_c #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CONVERT_YUV \ RGBA_FLOAT_TO_YUVJ_8(src[0],src[1],src[2],src[3], \ dst_y[0],*dst_u,*dst_v) \ RGBA_FLOAT_TO_YJ_8(src[4],src[5],src[6],src[7],dst_y[1]) #define INIT INIT_RGBA_FLOAT \ float r_tmp; \ float g_tmp; \ float b_tmp; \ INIT_RGB_FLOAT_TO_YUV #define CONVERT_Y \ RGBA_FLOAT_TO_YJ_8(src[0],src[1],src[2],src[3], \ dst_y[0]) \ RGBA_FLOAT_TO_YJ_8(src[4],src[5],src[6],src[7],dst_y[1]) #define CHROMA_SUB 2 #include "../csp_packed_planar.h" /* rgba_float_to_yuv_444_p_c */ #define FUNC_NAME rgba_float_to_yuvj_444_p_c #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE_Y 1 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 1 #define CONVERT_YUV \ RGBA_FLOAT_TO_YUVJ_8(src[0],src[1],src[2],src[3], \ dst_y[0],*dst_u,*dst_v) #define INIT INIT_RGBA_FLOAT \ float r_tmp; \ float g_tmp; \ float b_tmp; \ INIT_RGB_FLOAT_TO_YUV #define CHROMA_SUB 1 #include "../csp_packed_planar.h" /* RGBA float -> (No alpha) */ /* rgba_float_to_yuvj_422_p_ia_c */ #define FUNC_NAME rgba_float_to_yuvj_422_p_ia_c #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CONVERT_YUV \ RGB_FLOAT_TO_YUVJ_8(src[0],src[1],src[2], \ dst_y[0],*dst_u,*dst_v) \ RGB_FLOAT_TO_YJ_8(src[4],src[5],src[6],dst_y[1]) #define INIT INIT_RGB_FLOAT_TO_YUV #define CHROMA_SUB 1 #include "../csp_packed_planar.h" /* rgba_float_to_yuvj_420_p_ia_c */ #define FUNC_NAME rgba_float_to_yuvj_420_p_ia_c #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CONVERT_YUV \ RGB_FLOAT_TO_YUVJ_8(src[0],src[1],src[2], \ dst_y[0],*dst_u,*dst_v) \ RGB_FLOAT_TO_YJ_8(src[4],src[5],src[6],dst_y[1]) #define INIT INIT_RGB_FLOAT_TO_YUV #define CONVERT_Y \ RGB_FLOAT_TO_YJ_8(src[0],src[1],src[2], \ dst_y[0]) \ RGB_FLOAT_TO_YJ_8(src[4],src[5],src[6],dst_y[1]) #define CHROMA_SUB 2 #include "../csp_packed_planar.h" /* rgba_float_to_yuv_444_p_ia_c */ #define FUNC_NAME rgba_float_to_yuvj_444_p_ia_c #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE_Y 1 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 1 #define CONVERT_YUV \ RGB_FLOAT_TO_YUVJ_8(src[0],src[1],src[2], \ dst_y[0],*dst_u,*dst_v) #define INIT INIT_RGB_FLOAT_TO_YUV #define CHROMA_SUB 1 #include "../csp_packed_planar.h" #ifdef HQ void gavl_init_rgb_yuv_funcs_hq(gavl_pixelformat_function_table_t * tab, const gavl_video_options_t * opt) #else void gavl_init_rgb_yuv_funcs_c(gavl_pixelformat_function_table_t * tab, const gavl_video_options_t * opt) #endif // HQ { // _init_rgb_to_yuv_c(); #ifndef HQ tab->rgb_15_to_yuy2 = rgb_15_to_yuy2_c; tab->rgb_15_to_uyvy = rgb_15_to_uyvy_c; tab->rgb_15_to_yuva_32 = rgb_15_to_yuva_32_c; tab->rgb_15_to_yuv_420_p = rgb_15_to_yuv_420_p_c; tab->rgb_15_to_yuv_410_p = rgb_15_to_yuv_410_p_c; tab->rgb_15_to_yuv_422_p = rgb_15_to_yuv_422_p_c; tab->rgb_15_to_yuv_422_p_16 = rgb_15_to_yuv_422_p_16_c; tab->rgb_15_to_yuv_411_p = rgb_15_to_yuv_411_p_c; tab->rgb_15_to_yuv_444_p = rgb_15_to_yuv_444_p_c; tab->rgb_15_to_yuv_444_p_16 = rgb_15_to_yuv_444_p_16_c; tab->rgb_15_to_yuvj_420_p = rgb_15_to_yuvj_420_p_c; tab->rgb_15_to_yuvj_422_p = rgb_15_to_yuvj_422_p_c; tab->rgb_15_to_yuvj_444_p = rgb_15_to_yuvj_444_p_c; tab->rgb_15_to_yuva_64 = rgb_15_to_yuva_64_c; tab->rgb_15_to_yuva_float = rgb_15_to_yuva_float_c; tab->rgb_15_to_yuv_float = rgb_15_to_yuv_float_c; tab->bgr_15_to_yuy2 = bgr_15_to_yuy2_c; tab->bgr_15_to_uyvy = bgr_15_to_uyvy_c; tab->bgr_15_to_yuva_32 = bgr_15_to_yuva_32_c; tab->bgr_15_to_yuv_420_p = bgr_15_to_yuv_420_p_c; tab->bgr_15_to_yuv_410_p = bgr_15_to_yuv_410_p_c; tab->bgr_15_to_yuv_422_p = bgr_15_to_yuv_422_p_c; tab->bgr_15_to_yuv_422_p_16 = bgr_15_to_yuv_422_p_16_c; tab->bgr_15_to_yuv_411_p = bgr_15_to_yuv_411_p_c; tab->bgr_15_to_yuv_444_p = bgr_15_to_yuv_444_p_c; tab->bgr_15_to_yuv_444_p_16 = bgr_15_to_yuv_444_p_16_c; tab->bgr_15_to_yuvj_420_p = bgr_15_to_yuvj_420_p_c; tab->bgr_15_to_yuvj_422_p = bgr_15_to_yuvj_422_p_c; tab->bgr_15_to_yuvj_444_p = bgr_15_to_yuvj_444_p_c; tab->bgr_15_to_yuva_64 = bgr_15_to_yuva_64_c; tab->bgr_15_to_yuva_float = bgr_15_to_yuva_float_c; tab->bgr_15_to_yuv_float = bgr_15_to_yuv_float_c; tab->rgb_16_to_yuy2 = rgb_16_to_yuy2_c; tab->rgb_16_to_uyvy = rgb_16_to_uyvy_c; tab->rgb_16_to_yuva_32 = rgb_16_to_yuva_32_c; tab->rgb_16_to_yuv_420_p = rgb_16_to_yuv_420_p_c; tab->rgb_16_to_yuv_410_p = rgb_16_to_yuv_410_p_c; tab->rgb_16_to_yuv_422_p = rgb_16_to_yuv_422_p_c; tab->rgb_16_to_yuv_422_p_16 = rgb_16_to_yuv_422_p_16_c; tab->rgb_16_to_yuv_411_p = rgb_16_to_yuv_411_p_c; tab->rgb_16_to_yuv_444_p = rgb_16_to_yuv_444_p_c; tab->rgb_16_to_yuv_444_p_16 = rgb_16_to_yuv_444_p_16_c; tab->rgb_16_to_yuvj_420_p = rgb_16_to_yuvj_420_p_c; tab->rgb_16_to_yuvj_422_p = rgb_16_to_yuvj_422_p_c; tab->rgb_16_to_yuvj_444_p = rgb_16_to_yuvj_444_p_c; tab->rgb_16_to_yuva_64 = rgb_16_to_yuva_64_c; tab->rgb_16_to_yuva_float = rgb_16_to_yuva_float_c; tab->rgb_16_to_yuv_float = rgb_16_to_yuv_float_c; tab->bgr_16_to_yuy2 = bgr_16_to_yuy2_c; tab->bgr_16_to_uyvy = bgr_16_to_uyvy_c; tab->bgr_16_to_yuva_32 = bgr_16_to_yuva_32_c; tab->bgr_16_to_yuv_420_p = bgr_16_to_yuv_420_p_c; tab->bgr_16_to_yuv_410_p = bgr_16_to_yuv_410_p_c; tab->bgr_16_to_yuv_422_p = bgr_16_to_yuv_422_p_c; tab->bgr_16_to_yuv_422_p_16 = bgr_16_to_yuv_422_p_16_c; tab->bgr_16_to_yuv_411_p = bgr_16_to_yuv_411_p_c; tab->bgr_16_to_yuv_444_p = bgr_16_to_yuv_444_p_c; tab->bgr_16_to_yuv_444_p_16 = bgr_16_to_yuv_444_p_16_c; tab->bgr_16_to_yuvj_420_p = bgr_16_to_yuvj_420_p_c; tab->bgr_16_to_yuvj_422_p = bgr_16_to_yuvj_422_p_c; tab->bgr_16_to_yuvj_444_p = bgr_16_to_yuvj_444_p_c; tab->bgr_16_to_yuva_64 = bgr_16_to_yuva_64_c; tab->bgr_16_to_yuva_float = bgr_16_to_yuva_float_c; tab->bgr_16_to_yuv_float = bgr_16_to_yuv_float_c; tab->rgb_24_to_yuy2 = rgb_24_to_yuy2_c; tab->rgb_24_to_uyvy = rgb_24_to_uyvy_c; tab->rgb_24_to_yuva_32 = rgb_24_to_yuva_32_c; tab->rgb_24_to_yuv_420_p = rgb_24_to_yuv_420_p_c; tab->rgb_24_to_yuv_410_p = rgb_24_to_yuv_410_p_c; tab->rgb_24_to_yuv_422_p = rgb_24_to_yuv_422_p_c; tab->rgb_24_to_yuv_422_p_16 = rgb_24_to_yuv_422_p_16_c; tab->rgb_24_to_yuv_411_p = rgb_24_to_yuv_411_p_c; tab->rgb_24_to_yuv_444_p = rgb_24_to_yuv_444_p_c; tab->rgb_24_to_yuv_444_p_16 = rgb_24_to_yuv_444_p_16_c; tab->rgb_24_to_yuvj_420_p = rgb_24_to_yuvj_420_p_c; tab->rgb_24_to_yuvj_422_p = rgb_24_to_yuvj_422_p_c; tab->rgb_24_to_yuvj_444_p = rgb_24_to_yuvj_444_p_c; tab->rgb_24_to_yuva_64 = rgb_24_to_yuva_64_c; tab->rgb_24_to_yuva_float = rgb_24_to_yuva_float_c; tab->rgb_24_to_yuv_float = rgb_24_to_yuv_float_c; tab->bgr_24_to_yuy2 = bgr_24_to_yuy2_c; tab->bgr_24_to_uyvy = bgr_24_to_uyvy_c; tab->bgr_24_to_yuva_32 = bgr_24_to_yuva_32_c; tab->bgr_24_to_yuv_420_p = bgr_24_to_yuv_420_p_c; tab->bgr_24_to_yuv_410_p = bgr_24_to_yuv_410_p_c; tab->bgr_24_to_yuv_422_p = bgr_24_to_yuv_422_p_c; tab->bgr_24_to_yuv_422_p_16 = bgr_24_to_yuv_422_p_16_c; tab->bgr_24_to_yuv_411_p = bgr_24_to_yuv_411_p_c; tab->bgr_24_to_yuv_444_p = bgr_24_to_yuv_444_p_c; tab->bgr_24_to_yuv_444_p_16 = bgr_24_to_yuv_444_p_16_c; tab->bgr_24_to_yuvj_420_p = bgr_24_to_yuvj_420_p_c; tab->bgr_24_to_yuvj_422_p = bgr_24_to_yuvj_422_p_c; tab->bgr_24_to_yuvj_444_p = bgr_24_to_yuvj_444_p_c; tab->bgr_24_to_yuva_64 = bgr_24_to_yuva_64_c; tab->bgr_24_to_yuva_float = bgr_24_to_yuva_float_c; tab->bgr_24_to_yuv_float = bgr_24_to_yuv_float_c; #endif // HQ tab->rgb_48_to_yuy2 = rgb_48_to_yuy2_c; tab->rgb_48_to_uyvy = rgb_48_to_uyvy_c; tab->rgb_48_to_yuva_32 = rgb_48_to_yuva_32_c; tab->rgb_48_to_yuv_420_p = rgb_48_to_yuv_420_p_c; tab->rgb_48_to_yuv_410_p = rgb_48_to_yuv_410_p_c; tab->rgb_48_to_yuv_422_p = rgb_48_to_yuv_422_p_c; tab->rgb_48_to_yuv_411_p = rgb_48_to_yuv_411_p_c; tab->rgb_48_to_yuv_444_p = rgb_48_to_yuv_444_p_c; tab->rgb_48_to_yuvj_420_p = rgb_48_to_yuvj_420_p_c; tab->rgb_48_to_yuvj_422_p = rgb_48_to_yuvj_422_p_c; tab->rgb_48_to_yuvj_444_p = rgb_48_to_yuvj_444_p_c; #ifndef HQ tab->rgb_48_to_yuv_422_p_16 = rgb_48_to_yuv_422_p_16_c; tab->rgb_48_to_yuv_444_p_16 = rgb_48_to_yuv_444_p_16_c; tab->rgb_48_to_yuva_64 = rgb_48_to_yuva_64_c; tab->rgb_48_to_yuva_float = rgb_48_to_yuva_float_c; tab->rgb_48_to_yuv_float = rgb_48_to_yuv_float_c; #endif // !HQ tab->rgb_float_to_yuy2 = rgb_float_to_yuy2_c; tab->rgb_float_to_uyvy = rgb_float_to_uyvy_c; tab->rgb_float_to_yuva_32 = rgb_float_to_yuva_32_c; tab->rgb_float_to_yuv_420_p = rgb_float_to_yuv_420_p_c; tab->rgb_float_to_yuv_410_p = rgb_float_to_yuv_410_p_c; tab->rgb_float_to_yuv_422_p = rgb_float_to_yuv_422_p_c; tab->rgb_float_to_yuv_422_p_16 = rgb_float_to_yuv_422_p_16_c; tab->rgb_float_to_yuv_411_p = rgb_float_to_yuv_411_p_c; tab->rgb_float_to_yuv_444_p = rgb_float_to_yuv_444_p_c; tab->rgb_float_to_yuv_444_p_16 = rgb_float_to_yuv_444_p_16_c; tab->rgb_float_to_yuvj_420_p = rgb_float_to_yuvj_420_p_c; tab->rgb_float_to_yuvj_422_p = rgb_float_to_yuvj_422_p_c; tab->rgb_float_to_yuvj_444_p = rgb_float_to_yuvj_444_p_c; tab->rgb_float_to_yuva_64 = rgb_float_to_yuva_64_c; #ifndef HQ tab->rgb_float_to_yuva_float = rgb_float_to_yuva_float_c; tab->rgb_float_to_yuv_float = rgb_float_to_yuv_float_c; tab->rgb_32_to_yuy2 = rgb_32_to_yuy2_c; tab->rgb_32_to_uyvy = rgb_32_to_uyvy_c; tab->rgb_32_to_yuva_32 = rgb_32_to_yuva_32_c; tab->rgb_32_to_yuv_420_p = rgb_32_to_yuv_420_p_c; tab->rgb_32_to_yuv_410_p = rgb_32_to_yuv_410_p_c; tab->rgb_32_to_yuv_422_p = rgb_32_to_yuv_422_p_c; tab->rgb_32_to_yuv_422_p_16 = rgb_32_to_yuv_422_p_16_c; tab->rgb_32_to_yuv_411_p = rgb_32_to_yuv_411_p_c; tab->rgb_32_to_yuv_444_p = rgb_32_to_yuv_444_p_c; tab->rgb_32_to_yuv_444_p_16 = rgb_32_to_yuv_444_p_16_c; tab->rgb_32_to_yuvj_420_p = rgb_32_to_yuvj_420_p_c; tab->rgb_32_to_yuvj_422_p = rgb_32_to_yuvj_422_p_c; tab->rgb_32_to_yuvj_444_p = rgb_32_to_yuvj_444_p_c; tab->rgb_32_to_yuva_64 = rgb_32_to_yuva_64_c; tab->rgb_32_to_yuva_float = rgb_32_to_yuva_float_c; tab->rgb_32_to_yuv_float = rgb_32_to_yuv_float_c; tab->bgr_32_to_yuy2 = bgr_32_to_yuy2_c; tab->bgr_32_to_uyvy = bgr_32_to_uyvy_c; tab->bgr_32_to_yuva_32 = bgr_32_to_yuva_32_c; tab->bgr_32_to_yuv_420_p = bgr_32_to_yuv_420_p_c; tab->bgr_32_to_yuv_410_p = bgr_32_to_yuv_410_p_c; tab->bgr_32_to_yuv_422_p = bgr_32_to_yuv_422_p_c; tab->bgr_32_to_yuv_422_p_16 = bgr_32_to_yuv_422_p_16_c; tab->bgr_32_to_yuv_411_p = bgr_32_to_yuv_411_p_c; tab->bgr_32_to_yuv_444_p = bgr_32_to_yuv_444_p_c; tab->bgr_32_to_yuv_444_p_16 = bgr_32_to_yuv_444_p_16_c; tab->bgr_32_to_yuvj_420_p = bgr_32_to_yuvj_420_p_c; tab->bgr_32_to_yuvj_422_p = bgr_32_to_yuvj_422_p_c; tab->bgr_32_to_yuvj_444_p = bgr_32_to_yuvj_444_p_c; tab->bgr_32_to_yuva_64 = bgr_32_to_yuva_64_c; tab->bgr_32_to_yuva_float = bgr_32_to_yuva_float_c; tab->bgr_32_to_yuv_float = bgr_32_to_yuv_float_c; tab->rgba_32_to_yuva_32 = rgba_32_to_yuva_32_c; tab->rgba_32_to_yuva_float = rgba_32_to_yuva_float_c; tab->rgba_64_to_yuva_64 = rgba_64_to_yuva_64_c; tab->rgba_64_to_yuva_float = rgba_64_to_yuva_float_c; tab->rgba_float_to_yuva_float = rgba_float_to_yuva_float_c; tab->rgba_32_to_yuva_64 = rgba_32_to_yuva_64_c; #endif // !HQ tab->rgba_64_to_yuva_32 = rgba_64_to_yuva_32_c; tab->rgba_float_to_yuva_32 = rgba_float_to_yuva_32_c; tab->rgba_float_to_yuva_64 = rgba_float_to_yuva_64_c; if(opt->alpha_mode == GAVL_ALPHA_BLEND_COLOR) { #ifndef HQ tab->rgba_32_to_yuy2 = rgba_32_to_yuy2_c; tab->rgba_32_to_uyvy = rgba_32_to_uyvy_c; tab->rgba_32_to_yuv_420_p = rgba_32_to_yuv_420_p_c; tab->rgba_32_to_yuv_410_p = rgba_32_to_yuv_410_p_c; tab->rgba_32_to_yuv_422_p = rgba_32_to_yuv_422_p_c; tab->rgba_32_to_yuv_422_p_16 = rgba_32_to_yuv_422_p_16_c; tab->rgba_32_to_yuv_411_p = rgba_32_to_yuv_411_p_c; tab->rgba_32_to_yuv_444_p = rgba_32_to_yuv_444_p_c; tab->rgba_32_to_yuv_444_p_16 = rgba_32_to_yuv_444_p_16_c; tab->rgba_32_to_yuvj_420_p = rgba_32_to_yuvj_420_p_c; tab->rgba_32_to_yuvj_422_p = rgba_32_to_yuvj_422_p_c; tab->rgba_32_to_yuvj_444_p = rgba_32_to_yuvj_444_p_c; tab->rgba_32_to_yuv_float = rgba_32_to_yuv_float_c; #endif // HQ tab->rgba_64_to_yuy2 = rgba_64_to_yuy2_c; tab->rgba_64_to_uyvy = rgba_64_to_uyvy_c; tab->rgba_64_to_yuv_420_p = rgba_64_to_yuv_420_p_c; tab->rgba_64_to_yuv_410_p = rgba_64_to_yuv_410_p_c; tab->rgba_64_to_yuv_422_p = rgba_64_to_yuv_422_p_c; tab->rgba_64_to_yuv_411_p = rgba_64_to_yuv_411_p_c; tab->rgba_64_to_yuv_444_p = rgba_64_to_yuv_444_p_c; tab->rgba_64_to_yuvj_420_p = rgba_64_to_yuvj_420_p_c; tab->rgba_64_to_yuvj_422_p = rgba_64_to_yuvj_422_p_c; tab->rgba_64_to_yuvj_444_p = rgba_64_to_yuvj_444_p_c; #ifndef HQ tab->rgba_64_to_yuv_422_p_16 = rgba_64_to_yuv_422_p_16_c; tab->rgba_64_to_yuv_444_p_16 = rgba_64_to_yuv_444_p_16_c; tab->rgba_64_to_yuv_float = rgba_64_to_yuv_float_c; #endif // HQ tab->rgba_float_to_yuy2 = rgba_float_to_yuy2_c; tab->rgba_float_to_uyvy = rgba_float_to_uyvy_c; tab->rgba_float_to_yuv_420_p = rgba_float_to_yuv_420_p_c; tab->rgba_float_to_yuv_410_p = rgba_float_to_yuv_410_p_c; tab->rgba_float_to_yuv_422_p = rgba_float_to_yuv_422_p_c; tab->rgba_float_to_yuv_422_p_16 = rgba_float_to_yuv_422_p_16_c; tab->rgba_float_to_yuv_411_p = rgba_float_to_yuv_411_p_c; tab->rgba_float_to_yuv_444_p = rgba_float_to_yuv_444_p_c; tab->rgba_float_to_yuv_444_p_16 = rgba_float_to_yuv_444_p_16_c; tab->rgba_float_to_yuvj_420_p = rgba_float_to_yuvj_420_p_c; tab->rgba_float_to_yuvj_422_p = rgba_float_to_yuvj_422_p_c; tab->rgba_float_to_yuvj_444_p = rgba_float_to_yuvj_444_p_c; tab->rgba_float_to_yuv_float = rgba_float_to_yuv_float_c; } if(opt->alpha_mode == GAVL_ALPHA_IGNORE) { #ifndef HQ tab->rgba_32_to_yuy2 = rgb_32_to_yuy2_c; tab->rgba_32_to_uyvy = rgb_32_to_uyvy_c; tab->rgba_32_to_yuv_420_p = rgb_32_to_yuv_420_p_c; tab->rgba_32_to_yuv_410_p = rgb_32_to_yuv_410_p_c; tab->rgba_32_to_yuv_422_p = rgb_32_to_yuv_422_p_c; tab->rgba_32_to_yuv_422_p_16 = rgb_32_to_yuv_422_p_16_c; tab->rgba_32_to_yuv_411_p = rgb_32_to_yuv_411_p_c; tab->rgba_32_to_yuv_444_p = rgb_32_to_yuv_444_p_c; tab->rgba_32_to_yuv_444_p_16 = rgb_32_to_yuv_444_p_16_c; tab->rgba_32_to_yuvj_420_p = rgb_32_to_yuvj_420_p_c; tab->rgba_32_to_yuvj_422_p = rgb_32_to_yuvj_422_p_c; tab->rgba_32_to_yuvj_444_p = rgb_32_to_yuvj_444_p_c; tab->rgba_32_to_yuv_float = rgb_32_to_yuv_float_c; #endif // HQ tab->rgba_64_to_yuy2 = rgba_64_to_yuy2_ia_c; tab->rgba_64_to_uyvy = rgba_64_to_uyvy_ia_c; tab->rgba_64_to_yuv_420_p = rgba_64_to_yuv_420_p_ia_c; tab->rgba_64_to_yuv_410_p = rgba_64_to_yuv_410_p_ia_c; tab->rgba_64_to_yuv_422_p = rgba_64_to_yuv_422_p_ia_c; tab->rgba_64_to_yuv_411_p = rgba_64_to_yuv_411_p_ia_c; tab->rgba_64_to_yuv_444_p = rgba_64_to_yuv_444_p_ia_c; tab->rgba_64_to_yuvj_420_p = rgba_64_to_yuvj_420_p_ia_c; tab->rgba_64_to_yuvj_422_p = rgba_64_to_yuvj_422_p_ia_c; tab->rgba_64_to_yuvj_444_p = rgba_64_to_yuvj_444_p_ia_c; #ifndef HQ tab->rgba_64_to_yuv_float = rgba_64_to_yuv_float_ia_c; tab->rgba_64_to_yuv_422_p_16 = rgba_64_to_yuv_422_p_16_ia_c; tab->rgba_64_to_yuv_444_p_16 = rgba_64_to_yuv_444_p_16_ia_c; #endif // HQ tab->rgba_float_to_yuv_float = rgba_float_to_yuv_float_ia_c; tab->rgba_float_to_yuy2 = rgba_float_to_yuy2_ia_c; tab->rgba_float_to_uyvy = rgba_float_to_uyvy_ia_c; tab->rgba_float_to_yuv_420_p = rgba_float_to_yuv_420_p_ia_c; tab->rgba_float_to_yuv_410_p = rgba_float_to_yuv_410_p_ia_c; tab->rgba_float_to_yuv_422_p = rgba_float_to_yuv_422_p_ia_c; tab->rgba_float_to_yuv_422_p_16 = rgba_float_to_yuv_422_p_16_ia_c; tab->rgba_float_to_yuv_411_p = rgba_float_to_yuv_411_p_ia_c; tab->rgba_float_to_yuv_444_p = rgba_float_to_yuv_444_p_ia_c; tab->rgba_float_to_yuv_444_p_16 = rgba_float_to_yuv_444_p_16_ia_c; tab->rgba_float_to_yuvj_420_p = rgba_float_to_yuvj_420_p_ia_c; tab->rgba_float_to_yuvj_422_p = rgba_float_to_yuvj_422_p_ia_c; tab->rgba_float_to_yuvj_444_p = rgba_float_to_yuvj_444_p_ia_c; } } bplaum-gavl-b9385e3/gavl/c/sampleformat_c.c000066400000000000000000000051401513252040200205720ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include #include #define SWAP_ENDIAN(n) ((n >> 8)|(n << 8)) #define CLAMP(i, min, max) if(imax)i=max; #define CONVERSION_FUNC_START \ int i, j;\ for(i = 0; i < ctx->input_format.num_channels; i++)\ { \ for(j = 0; j < ctx->input_frame->valid_samples; j++) \ { #define CONVERSION_FUNC_END \ } \ } #define U_8 channels.u_8[i][j] #define S_8 channels.s_8[i][j] #define U_16 channels.u_16[i][j] #define S_16 channels.s_16[i][j] #define S_32 channels.s_32[i][j] #define FLOAT channels.f[i][j] #define DOUBLE channels.d[i][j] #define RENAME(a) a ## _ni #include "_sampleformat_c.c" #undef CONVERSION_FUNC_START #undef CONVERSION_FUNC_END #undef U_8 #undef S_8 #undef U_16 #undef S_16 #undef S_32 #undef FLOAT #undef DOUBLE #undef RENAME /* */ #define CONVERSION_FUNC_START \ int i, imax;\ imax = ctx->input_format.num_channels * ctx->input_frame->valid_samples; \ for(i = 0; i < imax; i++)\ { #define CONVERSION_FUNC_END \ } #define U_8 samples.u_8[i] #define S_8 samples.s_8[i] #define U_16 samples.u_16[i] #define S_16 samples.s_16[i] #define S_32 samples.s_32[i] #define FLOAT samples.f[i] #define DOUBLE samples.d[i] #define RENAME(a) a ## _i #include "_sampleformat_c.c" void gavl_init_sampleformat_funcs_c(gavl_sampleformat_table_t * t, gavl_interleave_mode_t interleave_mode) { if(interleave_mode == GAVL_INTERLEAVE_NONE) return gavl_init_sampleformat_funcs_c_ni(t); else if(interleave_mode == GAVL_INTERLEAVE_ALL) return gavl_init_sampleformat_funcs_c_i(t); else { fprintf(stderr, "BUUUG: Unsupported interleave mode for sampleformat conversion\n"); } } bplaum-gavl-b9385e3/gavl/c/scale_bicubic_c.c000066400000000000000000001072301513252040200206520ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include #include #include "scale_macros.h" /* x-Direction */ #define FUNC_NAME scale_rgb_15_x_bicubic_c #define TYPE color_15 #define INIT int64_t tmp; #define SCALE \ tmp = ((int64_t)ctx->table_h.pixels[i].factor_i[0] * src_1->r + \ (int64_t)ctx->table_h.pixels[i].factor_i[1] * src_2->r + \ (int64_t)ctx->table_h.pixels[i].factor_i[2] * src_3->r + \ (int64_t)ctx->table_h.pixels[i].factor_i[3] * src_4->r); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_H(tmp,0); \ dst->r = tmp; \ tmp = ((int64_t)ctx->table_h.pixels[i].factor_i[0] * src_1->g + \ (int64_t)ctx->table_h.pixels[i].factor_i[1] * src_2->g + \ (int64_t)ctx->table_h.pixels[i].factor_i[2] * src_3->g + \ (int64_t)ctx->table_h.pixels[i].factor_i[3] * src_4->g); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_H(tmp,1); \ dst->g = tmp; \ tmp = ((int64_t)ctx->table_h.pixels[i].factor_i[0] * src_1->b + \ (int64_t)ctx->table_h.pixels[i].factor_i[1] * src_2->b + \ (int64_t)ctx->table_h.pixels[i].factor_i[2] * src_3->b + \ (int64_t)ctx->table_h.pixels[i].factor_i[3] * src_4->b); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_H(tmp,2); \ dst->b = tmp; \ #define NUM_TAPS 4 #include "scale_x.h" #define FUNC_NAME scale_rgb_16_x_bicubic_c #define TYPE color_16 #define INIT int64_t tmp; #define SCALE \ tmp = ((int64_t)ctx->table_h.pixels[i].factor_i[0] * src_1->r + \ (int64_t)ctx->table_h.pixels[i].factor_i[1] * src_2->r + \ (int64_t)ctx->table_h.pixels[i].factor_i[2] * src_3->r + \ (int64_t)ctx->table_h.pixels[i].factor_i[3] * src_4->r); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_H(tmp,0); \ dst->r = tmp; \ tmp = ((int64_t)ctx->table_h.pixels[i].factor_i[0] * src_1->g + \ (int64_t)ctx->table_h.pixels[i].factor_i[1] * src_2->g + \ (int64_t)ctx->table_h.pixels[i].factor_i[2] * src_3->g + \ (int64_t)ctx->table_h.pixels[i].factor_i[3] * src_4->g); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_H(tmp,1); \ dst->g = tmp; \ tmp = ((int64_t)ctx->table_h.pixels[i].factor_i[0] * src_1->b + \ (int64_t)ctx->table_h.pixels[i].factor_i[1] * src_2->b + \ (int64_t)ctx->table_h.pixels[i].factor_i[2] * src_3->b + \ (int64_t)ctx->table_h.pixels[i].factor_i[3] * src_4->b);\ tmp=DOWNSHIFT(tmp,16);\ RECLIP_H(tmp,2); \ dst->b = tmp; \ #define NUM_TAPS 4 #include "scale_x.h" #define FUNC_NAME scale_uint8_x_1_x_bicubic_c #define TYPE uint8_t #define INIT int64_t tmp; #define SCALE \ tmp = ((int64_t)ctx->table_h.pixels[i].factor_i[0] * src_1[0] + \ (int64_t)ctx->table_h.pixels[i].factor_i[1] * src_2[0] + \ (int64_t)ctx->table_h.pixels[i].factor_i[2] * src_3[0] + \ (int64_t)ctx->table_h.pixels[i].factor_i[3] * src_4[0]); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_H(tmp,ctx->plane); \ dst[0] = tmp; #define NUM_TAPS 4 #include "scale_x.h" #define FUNC_NAME scale_uint8_x_2_x_bicubic_c #define TYPE uint8_t #define INIT int64_t tmp; #define SCALE \ tmp = ((int64_t)ctx->table_h.pixels[i].factor_i[0] * src_1[0] + \ (int64_t)ctx->table_h.pixels[i].factor_i[1] * src_2[0] + \ (int64_t)ctx->table_h.pixels[i].factor_i[2] * src_3[0] + \ (int64_t)ctx->table_h.pixels[i].factor_i[3] * src_4[0]); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_H(tmp,0); \ dst[0] = tmp; \ tmp = ((int64_t)ctx->table_h.pixels[i].factor_i[0] * src_1[1] + \ (int64_t)ctx->table_h.pixels[i].factor_i[1] * src_2[1] + \ (int64_t)ctx->table_h.pixels[i].factor_i[2] * src_3[1] + \ (int64_t)ctx->table_h.pixels[i].factor_i[3] * src_4[1]); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_H(tmp,1); \ dst[1] = tmp; #define NUM_TAPS 4 #include "scale_x.h" #define FUNC_NAME scale_uint8_x_3_x_bicubic_c #define TYPE uint8_t #define INIT int64_t tmp; #define SCALE \ tmp = ((int64_t)ctx->table_h.pixels[i].factor_i[0] * src_1[0] + \ (int64_t)ctx->table_h.pixels[i].factor_i[1] * src_2[0] + \ (int64_t)ctx->table_h.pixels[i].factor_i[2] * src_3[0] + \ (int64_t)ctx->table_h.pixels[i].factor_i[3] * src_4[0]); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_H(tmp,0); \ dst[0] = tmp; \ tmp = ((int64_t)ctx->table_h.pixels[i].factor_i[0] * src_1[1] + \ (int64_t)ctx->table_h.pixels[i].factor_i[1] * src_2[1] + \ (int64_t)ctx->table_h.pixels[i].factor_i[2] * src_3[1] + \ (int64_t)ctx->table_h.pixels[i].factor_i[3] * src_4[1]); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_H(tmp,1); \ dst[1] = tmp; \ tmp = ((int64_t)ctx->table_h.pixels[i].factor_i[0] * src_1[2] + \ (int64_t)ctx->table_h.pixels[i].factor_i[1] * src_2[2] + \ (int64_t)ctx->table_h.pixels[i].factor_i[2] * src_3[2] + \ (int64_t)ctx->table_h.pixels[i].factor_i[3] * src_4[2]); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_H(tmp,2); \ dst[2] = tmp; #define NUM_TAPS 4 #include "scale_x.h" #define FUNC_NAME scale_uint8_x_4_x_bicubic_c #define TYPE uint8_t #define INIT int64_t tmp; #define SCALE \ tmp = ((int64_t)ctx->table_h.pixels[i].factor_i[0] * src_1[0] + \ (int64_t)ctx->table_h.pixels[i].factor_i[1] * src_2[0] + \ (int64_t)ctx->table_h.pixels[i].factor_i[2] * src_3[0] + \ (int64_t)ctx->table_h.pixels[i].factor_i[3] * src_4[0]); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_H(tmp,0); \ dst[0] = tmp; \ tmp = ((int64_t)ctx->table_h.pixels[i].factor_i[0] * src_1[1] + \ (int64_t)ctx->table_h.pixels[i].factor_i[1] * src_2[1] + \ (int64_t)ctx->table_h.pixels[i].factor_i[2] * src_3[1] + \ (int64_t)ctx->table_h.pixels[i].factor_i[3] * src_4[1]); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_H(tmp,1); \ dst[1] = tmp; \ tmp = ((int64_t)ctx->table_h.pixels[i].factor_i[0] * src_1[2] + \ (int64_t)ctx->table_h.pixels[i].factor_i[1] * src_2[2] + \ (int64_t)ctx->table_h.pixels[i].factor_i[2] * src_3[2] + \ (int64_t)ctx->table_h.pixels[i].factor_i[3] * src_4[2]); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_H(tmp,2); \ dst[2] = tmp; \ tmp = ((int64_t)ctx->table_h.pixels[i].factor_i[0] * src_1[3] + \ (int64_t)ctx->table_h.pixels[i].factor_i[1] * src_2[3] + \ (int64_t)ctx->table_h.pixels[i].factor_i[2] * src_3[3] + \ (int64_t)ctx->table_h.pixels[i].factor_i[3] * src_4[3]); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_H(tmp,3); \ dst[3] = tmp; #define NUM_TAPS 4 #include "scale_x.h" #define FUNC_NAME scale_uint16_x_1_x_bicubic_c #define TYPE uint16_t #define INIT int64_t tmp; #define SCALE \ tmp = ((int64_t)ctx->table_h.pixels[i].factor_i[0] * src_1[0] + \ (int64_t)ctx->table_h.pixels[i].factor_i[1] * src_2[0] + \ (int64_t)ctx->table_h.pixels[i].factor_i[2] * src_3[0] + \ (int64_t)ctx->table_h.pixels[i].factor_i[3] * src_4[0]); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_H(tmp,ctx->plane); \ dst[0] = tmp; #define NUM_TAPS 4 #include "scale_x.h" #define FUNC_NAME scale_uint16_x_2_x_bicubic_c #define TYPE uint16_t #define INIT int64_t tmp; #define SCALE \ tmp = ((int64_t)ctx->table_h.pixels[i].factor_i[0] * src_1[0] + \ (int64_t)ctx->table_h.pixels[i].factor_i[1] * src_2[0] + \ (int64_t)ctx->table_h.pixels[i].factor_i[2] * src_3[0] + \ (int64_t)ctx->table_h.pixels[i].factor_i[3] * src_4[0]); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_H(tmp,0); \ dst[0] = tmp; \ tmp = ((int64_t)ctx->table_h.pixels[i].factor_i[0] * src_1[1] + \ (int64_t)ctx->table_h.pixels[i].factor_i[1] * src_2[1] + \ (int64_t)ctx->table_h.pixels[i].factor_i[2] * src_3[1] + \ (int64_t)ctx->table_h.pixels[i].factor_i[3] * src_4[1]); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_H(tmp,1); \ dst[1] = tmp; #define NUM_TAPS 4 #include "scale_x.h" #define FUNC_NAME scale_uint16_x_3_x_bicubic_c #define TYPE uint16_t #define INIT int64_t tmp; #define SCALE \ tmp = ((int64_t)ctx->table_h.pixels[i].factor_i[0] * src_1[0] + \ (int64_t)ctx->table_h.pixels[i].factor_i[1] * src_2[0] + \ (int64_t)ctx->table_h.pixels[i].factor_i[2] * src_3[0] + \ (int64_t)ctx->table_h.pixels[i].factor_i[3] * src_4[0]); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_H(tmp,0); \ dst[0] = tmp; \ tmp = ((int64_t)ctx->table_h.pixels[i].factor_i[0] * src_1[1] + \ (int64_t)ctx->table_h.pixels[i].factor_i[1] * src_2[1] + \ (int64_t)ctx->table_h.pixels[i].factor_i[2] * src_3[1] + \ (int64_t)ctx->table_h.pixels[i].factor_i[3] * src_4[1]); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_H(tmp,1); \ dst[1] = tmp; \ tmp = ((int64_t)ctx->table_h.pixels[i].factor_i[0] * src_1[2] + \ (int64_t)ctx->table_h.pixels[i].factor_i[1] * src_2[2] + \ (int64_t)ctx->table_h.pixels[i].factor_i[2] * src_3[2] + \ (int64_t)ctx->table_h.pixels[i].factor_i[3] * src_4[2]); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_H(tmp,2); \ dst[2] = tmp; #define NUM_TAPS 4 #include "scale_x.h" #define FUNC_NAME scale_uint16_x_4_x_bicubic_c #define TYPE uint16_t #define INIT int64_t tmp; #define SCALE \ tmp = ((int64_t)ctx->table_h.pixels[i].factor_i[0] * src_1[0] + \ (int64_t)ctx->table_h.pixels[i].factor_i[1] * src_2[0] + \ (int64_t)ctx->table_h.pixels[i].factor_i[2] * src_3[0] + \ (int64_t)ctx->table_h.pixels[i].factor_i[3] * src_4[0]); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_H(tmp,0); \ dst[0] = tmp; \ tmp = ((int64_t)ctx->table_h.pixels[i].factor_i[0] * src_1[1] + \ (int64_t)ctx->table_h.pixels[i].factor_i[1] * src_2[1] + \ (int64_t)ctx->table_h.pixels[i].factor_i[2] * src_3[1] + \ (int64_t)ctx->table_h.pixels[i].factor_i[3] * src_4[1]); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_H(tmp,1); \ dst[1] = tmp; \ tmp = ((int64_t)ctx->table_h.pixels[i].factor_i[0] * src_1[2] + \ (int64_t)ctx->table_h.pixels[i].factor_i[1] * src_2[2] + \ (int64_t)ctx->table_h.pixels[i].factor_i[2] * src_3[2] + \ (int64_t)ctx->table_h.pixels[i].factor_i[3] * src_4[2]); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_H(tmp,2); \ dst[2] = tmp; \ tmp = ((int64_t)ctx->table_h.pixels[i].factor_i[0] * src_1[3] + \ (int64_t)ctx->table_h.pixels[i].factor_i[1] * src_2[3] + \ (int64_t)ctx->table_h.pixels[i].factor_i[2] * src_3[3] + \ (int64_t)ctx->table_h.pixels[i].factor_i[3] * src_4[3]); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_H(tmp,3); \ dst[3] = tmp; #define NUM_TAPS 4 #include "scale_x.h" #define FUNC_NAME scale_float_x_1_x_bicubic_c #define TYPE float #define SCALE \ dst[0] = (ctx->table_h.pixels[i].factor_f[0] * src_1[0] + \ ctx->table_h.pixels[i].factor_f[1] * src_2[0] + \ ctx->table_h.pixels[i].factor_f[2] * src_3[0] + \ ctx->table_h.pixels[i].factor_f[3] * src_4[0]); \ RECLIP_FLOAT(dst[0], 0); #define NUM_TAPS 4 #include "scale_x.h" #define FUNC_NAME scale_float_x_2_x_bicubic_c #define TYPE float #define SCALE \ dst[0] = (ctx->table_h.pixels[i].factor_f[0] * src_1[0] + \ ctx->table_h.pixels[i].factor_f[1] * src_2[0] + \ ctx->table_h.pixels[i].factor_f[2] * src_3[0] + \ ctx->table_h.pixels[i].factor_f[3] * src_4[0]); \ RECLIP_FLOAT(dst[0], 0); \ dst[1] = (ctx->table_h.pixels[i].factor_f[0] * src_1[1] + \ ctx->table_h.pixels[i].factor_f[1] * src_2[1] + \ ctx->table_h.pixels[i].factor_f[2] * src_3[1] + \ ctx->table_h.pixels[i].factor_f[3] * src_4[1]); \ RECLIP_FLOAT(dst[1], 1); #define NUM_TAPS 4 #include "scale_x.h" #define FUNC_NAME scale_float_x_3_x_bicubic_c #define TYPE float #define SCALE \ dst[0] = (ctx->table_h.pixels[i].factor_f[0] * src_1[0] + \ ctx->table_h.pixels[i].factor_f[1] * src_2[0] + \ ctx->table_h.pixels[i].factor_f[2] * src_3[0] + \ ctx->table_h.pixels[i].factor_f[3] * src_4[0]); \ RECLIP_FLOAT(dst[0], 0); \ dst[1] = (ctx->table_h.pixels[i].factor_f[0] * src_1[1] + \ ctx->table_h.pixels[i].factor_f[1] * src_2[1] + \ ctx->table_h.pixels[i].factor_f[2] * src_3[1] + \ ctx->table_h.pixels[i].factor_f[3] * src_4[1]); \ RECLIP_FLOAT(dst[1], 1); \ dst[2] = (ctx->table_h.pixels[i].factor_f[0] * src_1[2] + \ ctx->table_h.pixels[i].factor_f[1] * src_2[2] + \ ctx->table_h.pixels[i].factor_f[2] * src_3[2] + \ ctx->table_h.pixels[i].factor_f[3] * src_4[2]);\ RECLIP_FLOAT(dst[2], 2); \ #define NUM_TAPS 4 #include "scale_x.h" #define FUNC_NAME scale_float_x_4_x_bicubic_c #define TYPE float #define SCALE \ dst[0] = (ctx->table_h.pixels[i].factor_f[0] * src_1[0] + \ ctx->table_h.pixels[i].factor_f[1] * src_2[0] + \ ctx->table_h.pixels[i].factor_f[2] * src_3[0] + \ ctx->table_h.pixels[i].factor_f[3] * src_4[0]); \ RECLIP_FLOAT(dst[0], 0); \ dst[1] = (ctx->table_h.pixels[i].factor_f[0] * src_1[1] + \ ctx->table_h.pixels[i].factor_f[1] * src_2[1] + \ ctx->table_h.pixels[i].factor_f[2] * src_3[1] + \ ctx->table_h.pixels[i].factor_f[3] * src_4[1]); \ RECLIP_FLOAT(dst[1], 1); \ dst[2] = (ctx->table_h.pixels[i].factor_f[0] * src_1[2] + \ ctx->table_h.pixels[i].factor_f[1] * src_2[2] + \ ctx->table_h.pixels[i].factor_f[2] * src_3[2] + \ ctx->table_h.pixels[i].factor_f[3] * src_4[2]); \ RECLIP_FLOAT(dst[2], 2); \ dst[3] = (ctx->table_h.pixels[i].factor_f[0] * src_1[3] + \ ctx->table_h.pixels[i].factor_f[1] * src_2[3] + \ ctx->table_h.pixels[i].factor_f[2] * src_3[3] + \ ctx->table_h.pixels[i].factor_f[3] * src_4[3]);\ RECLIP_FLOAT(dst[3], 3); \ #define NUM_TAPS 4 #include "scale_x.h" /* y-Direction */ #define FUNC_NAME scale_rgb_15_y_bicubic_c #define TYPE color_15 #define INIT int64_t fac_1, fac_2, fac_3, fac_4; \ int64_t tmp; \ fac_1 = ctx->table_v.pixels[scanline].factor_i[0];\ fac_2 = ctx->table_v.pixels[scanline].factor_i[1];\ fac_3 = ctx->table_v.pixels[scanline].factor_i[2];\ fac_4 = ctx->table_v.pixels[scanline].factor_i[3]; #define NO_UINT8 #define SCALE \ tmp = (fac_1 * src_1->r + \ fac_2 * src_2->r + \ fac_3 * src_3->r + \ fac_4 * src_4->r); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_V(tmp, 0); \ dst->r = tmp; \ tmp = (fac_1 * src_1->g + \ fac_2 * src_2->g + \ fac_3 * src_3->g + \ fac_4 * src_4->g); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_V(tmp, 1); \ dst->g = tmp; \ tmp = (fac_1 * src_1->b + \ fac_2 * src_2->b + \ fac_3 * src_3->b + \ fac_4 * src_4->b); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_V(tmp, 2); \ dst->b = tmp; #define NUM_TAPS 4 #include "scale_y.h" #define FUNC_NAME scale_rgb_16_y_bicubic_c #define TYPE color_16 #define INIT int64_t fac_1, fac_2, fac_3, fac_4;\ int64_t tmp; \ fac_1 = ctx->table_v.pixels[scanline].factor_i[0];\ fac_2 = ctx->table_v.pixels[scanline].factor_i[1];\ fac_3 = ctx->table_v.pixels[scanline].factor_i[2];\ fac_4 = ctx->table_v.pixels[scanline].factor_i[3]; #define NO_UINT8 #define SCALE \ tmp = (fac_1 * src_1->r + \ fac_2 * src_2->r + \ fac_3 * src_3->r + \ fac_4 * src_4->r); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_V(tmp, 0); \ dst->r = tmp; \ tmp = (fac_1 * src_1->g + \ fac_2 * src_2->g + \ fac_3 * src_3->g + \ fac_4 * src_4->g); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_V(tmp, 1); \ dst->g = tmp; \ tmp = (fac_1 * src_1->b + \ fac_2 * src_2->b + \ fac_3 * src_3->b + \ fac_4 * src_4->b); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_V(tmp, 2); \ dst->b = tmp; \ #define NUM_TAPS 4 #include "scale_y.h" #define FUNC_NAME scale_uint8_x_1_y_bicubic_c #define TYPE uint8_t #define INIT int64_t fac_1, fac_2, fac_3, fac_4, tmp; \ fac_1 = ctx->table_v.pixels[scanline].factor_i[0];\ fac_2 = ctx->table_v.pixels[scanline].factor_i[1];\ fac_3 = ctx->table_v.pixels[scanline].factor_i[2];\ fac_4 = ctx->table_v.pixels[scanline].factor_i[3]; #define SCALE \ tmp = (fac_1 * src_1[0] + \ fac_2 * src_2[0] + \ fac_3 * src_3[0] + \ fac_4 * src_4[0]); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_V(tmp, ctx->plane); \ dst[0] = tmp; #define NUM_TAPS 4 #include "scale_y.h" #define FUNC_NAME scale_uint8_x_2_y_bicubic_c #define TYPE uint8_t #define INIT int64_t fac_1, fac_2, fac_3, fac_4, tmp; \ fac_1 = ctx->table_v.pixels[scanline].factor_i[0];\ fac_2 = ctx->table_v.pixels[scanline].factor_i[1];\ fac_3 = ctx->table_v.pixels[scanline].factor_i[2];\ fac_4 = ctx->table_v.pixels[scanline].factor_i[3]; #define SCALE \ tmp = (fac_1 * src_1[0] + \ fac_2 * src_2[0] + \ fac_3 * src_3[0] + \ fac_4 * src_4[0]); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_V(tmp, ctx->plane); \ dst[0] = tmp;\ tmp = (fac_1 * src_1[1] + \ fac_2 * src_2[1] + \ fac_3 * src_3[1] + \ fac_4 * src_4[1]); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_V(tmp, ctx->plane); \ dst[1] = tmp; #define NUM_TAPS 4 #include "scale_y.h" #define FUNC_NAME scale_uint8_x_3_y_bicubic_c #define TYPE uint8_t #define INIT int64_t fac_1, fac_2, fac_3, fac_4, tmp; \ fac_1 = ctx->table_v.pixels[scanline].factor_i[0];\ fac_2 = ctx->table_v.pixels[scanline].factor_i[1];\ fac_3 = ctx->table_v.pixels[scanline].factor_i[2];\ fac_4 = ctx->table_v.pixels[scanline].factor_i[3]; #define SCALE \ tmp = (fac_1 * src_1[0] + \ fac_2 * src_2[0] + \ fac_3 * src_3[0] + \ fac_4 * src_4[0]); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_V(tmp, 0); \ dst[0] = tmp; \ tmp = (fac_1 * src_1[1] + \ fac_2 * src_2[1] + \ fac_3 * src_3[1] + \ fac_4 * src_4[1]); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_V(tmp, ctx->plane); \ dst[1] = tmp; \ tmp = (fac_1 * src_1[2] + \ fac_2 * src_2[2] + \ fac_3 * src_3[2] + \ fac_4 * src_4[2]); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_V(tmp, ctx->plane); \ dst[2] = tmp; #define NUM_TAPS 4 #include "scale_y.h" #define FUNC_NAME scale_uint8_x_4_y_bicubic_c #define TYPE uint8_t #define INIT int64_t fac_1, fac_2, fac_3, fac_4, tmp; \ fac_1 = ctx->table_v.pixels[scanline].factor_i[0];\ fac_2 = ctx->table_v.pixels[scanline].factor_i[1];\ fac_3 = ctx->table_v.pixels[scanline].factor_i[2];\ fac_4 = ctx->table_v.pixels[scanline].factor_i[3]; #define SCALE \ tmp = (fac_1 * src_1[0] + \ fac_2 * src_2[0] + \ fac_3 * src_3[0] + \ fac_4 * src_4[0]); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_V(tmp, 0); \ dst[0] = tmp; \ tmp = (fac_1 * src_1[1] + \ fac_2 * src_2[1] + \ fac_3 * src_3[1] + \ fac_4 * src_4[1]); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_V(tmp, 1); \ dst[1] = tmp; \ tmp = (fac_1 * src_1[2] + \ fac_2 * src_2[2] + \ fac_3 * src_3[2] + \ fac_4 * src_4[2]); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_V(tmp, 2); \ dst[2] = tmp; \ tmp = (fac_1 * src_1[3] + \ fac_2 * src_2[3] + \ fac_3 * src_3[3] + \ fac_4 * src_4[3]); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_V(tmp, 3); \ dst[3] = tmp; #define NUM_TAPS 4 #include "scale_y.h" #define FUNC_NAME scale_uint16_x_1_y_bicubic_c #define TYPE uint16_t #define INIT int64_t tmp; \ int64_t fac_1, fac_2, fac_3, fac_4; \ fac_1 = ctx->table_v.pixels[scanline].factor_i[0]; \ fac_2 = ctx->table_v.pixels[scanline].factor_i[1]; \ fac_3 = ctx->table_v.pixels[scanline].factor_i[2]; \ fac_4 = ctx->table_v.pixels[scanline].factor_i[3]; #define NO_UINT8 #define SCALE \ tmp = (fac_1 * src_1[0] + \ fac_2 * src_2[0] + \ fac_3 * src_3[0] + \ fac_4 * src_4[0]); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_V(tmp, ctx->plane); \ dst[0] = tmp; #define NUM_TAPS 4 #include "scale_y.h" #define FUNC_NAME scale_uint16_x_2_y_bicubic_c #define TYPE uint16_t #define INIT int64_t tmp; \ int64_t fac_1, fac_2, fac_3, fac_4; \ fac_1 = ctx->table_v.pixels[scanline].factor_i[0]; \ fac_2 = ctx->table_v.pixels[scanline].factor_i[1]; \ fac_3 = ctx->table_v.pixels[scanline].factor_i[2]; \ fac_4 = ctx->table_v.pixels[scanline].factor_i[3]; #define NO_UINT8 #define SCALE \ tmp = (fac_1 * src_1[0] + \ fac_2 * src_2[0] + \ fac_3 * src_3[0] + \ fac_4 * src_4[0]); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_V(tmp, ctx->plane); \ dst[0] = tmp;\ tmp = (fac_1 * src_1[1] + \ fac_2 * src_2[1] + \ fac_3 * src_3[1] + \ fac_4 * src_4[1]); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_V(tmp, ctx->plane); \ dst[1] = tmp; #define NUM_TAPS 4 #include "scale_y.h" #define FUNC_NAME scale_uint16_x_3_y_bicubic_c #define TYPE uint16_t #define INIT int64_t tmp; \ int64_t fac_1, fac_2, fac_3, fac_4; \ fac_1 = ctx->table_v.pixels[scanline].factor_i[0];\ fac_2 = ctx->table_v.pixels[scanline].factor_i[1];\ fac_3 = ctx->table_v.pixels[scanline].factor_i[2];\ fac_4 = ctx->table_v.pixels[scanline].factor_i[3]; #define NO_UINT8 #define SCALE \ tmp = (fac_1 * src_1[0] + \ fac_2 * src_2[0] + \ fac_3 * src_3[0] + \ fac_4 * src_4[0]); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_V(tmp, 0); \ dst[0] = tmp; \ tmp = (fac_1 * src_1[1] + \ fac_2 * src_2[1] + \ fac_3 * src_3[1] + \ fac_4 * src_4[1]); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_V(tmp, 1); \ dst[1] = tmp; \ tmp = (fac_1 * src_1[2] + \ fac_2 * src_2[2] + \ fac_3 * src_3[2] + \ fac_4 * src_4[2]); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_V(tmp, 2); \ dst[2] = tmp; #define NUM_TAPS 4 #include "scale_y.h" #define FUNC_NAME scale_uint16_x_4_y_bicubic_c #define TYPE uint16_t #define INIT int64_t tmp;\ int64_t fac_1, fac_2, fac_3, fac_4;\ fac_1 = ctx->table_v.pixels[scanline].factor_i[0];\ fac_2 = ctx->table_v.pixels[scanline].factor_i[1];\ fac_3 = ctx->table_v.pixels[scanline].factor_i[2];\ fac_4 = ctx->table_v.pixels[scanline].factor_i[3]; #define NO_UINT8 #define SCALE \ tmp = (fac_1 * src_1[0] + \ fac_2 * src_2[0] + \ fac_3 * src_3[0] + \ fac_4 * src_4[0]); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_V(tmp, 0); \ dst[0] = tmp; \ tmp = (fac_1 * src_1[1] + \ fac_2 * src_2[1] + \ fac_3 * src_3[1] + \ fac_4 * src_4[1]); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_V(tmp, 1); \ dst[1] = tmp; \ tmp = (fac_1 * src_1[2] + \ fac_2 * src_2[2] + \ fac_3 * src_2[2] + \ fac_4 * src_4[2]); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_V(tmp, 2); \ dst[2] = tmp; \ tmp = (fac_1 * src_1[3] + \ fac_2 * src_2[3] + \ fac_3 * src_3[3] + \ fac_4 * src_4[3]); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_V(tmp, 3); \ dst[3] = tmp; #define NUM_TAPS 4 #include "scale_y.h" #define FUNC_NAME scale_float_x_1_y_bicubic_c #define TYPE float #define INIT float fac_1, fac_2, fac_3, fac_4;\ fac_1 = ctx->table_v.pixels[scanline].factor_f[0];\ fac_2 = ctx->table_v.pixels[scanline].factor_f[1];\ fac_3 = ctx->table_v.pixels[scanline].factor_f[2];\ fac_4 = ctx->table_v.pixels[scanline].factor_f[3]; #define NO_UINT8 #define SCALE \ dst[0] = (fac_1 * src_1[0] + \ fac_2 * src_2[0] + \ fac_3 * src_3[0] + \ fac_4 * src_4[0]); \ RECLIP_FLOAT(dst[0], 0); #define NUM_TAPS 4 #include "scale_y.h" #define FUNC_NAME scale_float_x_2_y_bicubic_c #define TYPE float #define INIT float fac_1, fac_2, fac_3, fac_4;\ fac_1 = ctx->table_v.pixels[scanline].factor_f[0];\ fac_2 = ctx->table_v.pixels[scanline].factor_f[1];\ fac_3 = ctx->table_v.pixels[scanline].factor_f[2];\ fac_4 = ctx->table_v.pixels[scanline].factor_f[3]; #define NO_UINT8 #define SCALE \ dst[0] = (fac_1 * src_1[0] + \ fac_2 * src_2[0] + \ fac_3 * src_3[0] + \ fac_4 * src_4[0]); \ RECLIP_FLOAT(dst[0], 0); \ dst[1] = (fac_1 * src_1[1] + \ fac_2 * src_2[1] + \ fac_3 * src_3[1] + \ fac_4 * src_4[1]); \ RECLIP_FLOAT(dst[1], 1); #define NUM_TAPS 4 #include "scale_y.h" #define FUNC_NAME scale_float_x_3_y_bicubic_c #define TYPE float #define INIT float fac_1, fac_2, fac_3, fac_4;\ fac_1 = ctx->table_v.pixels[scanline].factor_f[0];\ fac_2 = ctx->table_v.pixels[scanline].factor_f[1];\ fac_3 = ctx->table_v.pixels[scanline].factor_f[2];\ fac_4 = ctx->table_v.pixels[scanline].factor_f[3]; #define NO_UINT8 #define SCALE \ dst[0] = (fac_1 * src_1[0] + \ fac_2 * src_2[0] + \ fac_3 * src_3[0] + \ fac_4 * src_4[0]); \ RECLIP_FLOAT(dst[0], 0); \ dst[1] = (fac_1 * src_1[1] + \ fac_2 * src_2[1] + \ fac_3 * src_3[1] + \ fac_4 * src_4[1]); \ RECLIP_FLOAT(dst[1], 1); \ dst[2] = (fac_1 * src_1[2] + \ fac_2 * src_2[2] + \ fac_3 * src_3[2] + \ fac_4 * src_4[2]);\ RECLIP_FLOAT(dst[2], 2); #define NUM_TAPS 4 #include "scale_y.h" #define FUNC_NAME scale_float_x_4_y_bicubic_c #define TYPE float #define INIT float fac_1, fac_2, fac_3, fac_4; \ fac_1 = ctx->table_v.pixels[scanline].factor_f[0]; \ fac_2 = ctx->table_v.pixels[scanline].factor_f[1]; \ fac_3 = ctx->table_v.pixels[scanline].factor_f[2]; \ fac_4 = ctx->table_v.pixels[scanline].factor_f[3]; #define NO_UINT8 #define SCALE \ dst[0] = (fac_1 * src_1[0] + \ fac_2 * src_2[0] + \ fac_3 * src_3[0] + \ fac_4 * src_4[0]); \ RECLIP_FLOAT(dst[0], 0); \ dst[1] = (fac_1 * src_1[1] + \ fac_2 * src_2[1] + \ fac_3 * src_3[1] + \ fac_4 * src_4[1]); \ RECLIP_FLOAT(dst[1], 1); \ dst[2] = (fac_1 * src_1[2] + \ fac_2 * src_2[2] + \ fac_3 * src_3[2] + \ fac_4 * src_4[2]); \ RECLIP_FLOAT(dst[2], 2); \ dst[3] = (fac_1 * src_1[3] + \ fac_2 * src_2[3] + \ fac_3 * src_3[3] + \ fac_4 * src_4[3]); \ RECLIP_FLOAT(dst[3], 3); #define NUM_TAPS 4 #include "scale_y.h" #ifdef NOCLIP void gavl_init_scale_funcs_bicubic_noclip_c(gavl_scale_funcs_t * tab) #else void gavl_init_scale_funcs_bicubic_c(gavl_scale_funcs_t * tab) #endif { // fprintf(stderr, "gavl_init_scale_funcs_bicubic_c\n"); tab->funcs_x.scale_rgb_15 = scale_rgb_15_x_bicubic_c; tab->funcs_x.scale_rgb_16 = scale_rgb_16_x_bicubic_c; tab->funcs_x.scale_uint8_x_1_advance = scale_uint8_x_1_x_bicubic_c; tab->funcs_x.scale_uint8_x_1_noadvance = scale_uint8_x_1_x_bicubic_c; tab->funcs_x.scale_uint8_x_2 = scale_uint8_x_2_x_bicubic_c; tab->funcs_x.scale_uint8_x_3 = scale_uint8_x_3_x_bicubic_c; tab->funcs_x.scale_uint8_x_4 = scale_uint8_x_4_x_bicubic_c; tab->funcs_x.scale_uint16_x_1 = scale_uint16_x_1_x_bicubic_c; tab->funcs_x.scale_uint16_x_2 = scale_uint16_x_2_x_bicubic_c; tab->funcs_x.scale_uint16_x_3 = scale_uint16_x_3_x_bicubic_c; tab->funcs_x.scale_uint16_x_4 = scale_uint16_x_4_x_bicubic_c; tab->funcs_x.scale_float_x_1 = scale_float_x_1_x_bicubic_c; tab->funcs_x.scale_float_x_2 = scale_float_x_2_x_bicubic_c; tab->funcs_x.scale_float_x_3 = scale_float_x_3_x_bicubic_c; tab->funcs_x.scale_float_x_4 = scale_float_x_4_x_bicubic_c; tab->funcs_x.bits_rgb_15 = 16; tab->funcs_x.bits_rgb_16 = 16; tab->funcs_x.bits_uint8_advance = 16; tab->funcs_x.bits_uint8_noadvance = 16; tab->funcs_x.bits_uint16 = 16; tab->funcs_y.scale_rgb_15 = scale_rgb_15_y_bicubic_c; tab->funcs_y.scale_rgb_16 = scale_rgb_16_y_bicubic_c; tab->funcs_y.scale_uint8_x_1_advance = scale_uint8_x_1_y_bicubic_c; tab->funcs_y.scale_uint8_x_1_noadvance = scale_uint8_x_1_y_bicubic_c; tab->funcs_y.scale_uint8_x_2 = scale_uint8_x_2_y_bicubic_c; tab->funcs_y.scale_uint8_x_3 = scale_uint8_x_3_y_bicubic_c; tab->funcs_y.scale_uint8_x_4 = scale_uint8_x_4_y_bicubic_c; tab->funcs_y.scale_uint16_x_1 = scale_uint16_x_1_y_bicubic_c; tab->funcs_y.scale_uint16_x_2 = scale_uint16_x_2_y_bicubic_c; tab->funcs_y.scale_uint16_x_3 = scale_uint16_x_3_y_bicubic_c; tab->funcs_y.scale_uint16_x_4 = scale_uint16_x_4_y_bicubic_c; tab->funcs_y.scale_float_x_1 = scale_float_x_1_y_bicubic_c; tab->funcs_y.scale_float_x_2 = scale_float_x_2_y_bicubic_c; tab->funcs_y.scale_float_x_3 = scale_float_x_3_y_bicubic_c; tab->funcs_y.scale_float_x_4 = scale_float_x_4_y_bicubic_c; tab->funcs_y.bits_rgb_15 = 16; tab->funcs_y.bits_rgb_16 = 16; tab->funcs_y.bits_uint8_advance = 16; tab->funcs_y.bits_uint8_noadvance = 16; tab->funcs_y.bits_uint16 = 16; } bplaum-gavl-b9385e3/gavl/c/scale_bicubic_noclip_c.c000066400000000000000000000017301513252040200222140ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #define NOCLIP #include "scale_bicubic_c.c" bplaum-gavl-b9385e3/gavl/c/scale_bilinear_c.c000066400000000000000000000642371513252040200210500ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include #include #include "scale_macros.h" #define TMP_TYPE_8 int64_t #define TMP_TYPE_16 int64_t /* x-Direction */ #define FUNC_NAME scale_rgb_15_x_bilinear_c #define TYPE color_15 #define INIT TMP_TYPE_8 tmp; #define SCALE \ tmp = ((TMP_TYPE_8)ctx->table_h.pixels[i].factor_i[0] * src_1->r + \ (TMP_TYPE_8)ctx->table_h.pixels[i].factor_i[1] * src_2->r); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_H(tmp,0); \ dst->r = tmp; \ tmp = ((TMP_TYPE_8)ctx->table_h.pixels[i].factor_i[0] * src_1->g + \ (TMP_TYPE_8)ctx->table_h.pixels[i].factor_i[1] * src_2->g); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_H(tmp,1); \ dst->g = tmp; \ tmp = ((TMP_TYPE_8)ctx->table_h.pixels[i].factor_i[0] * src_1->b + \ (TMP_TYPE_8)ctx->table_h.pixels[i].factor_i[1] * src_2->b); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_H(tmp,2); \ dst->b = tmp; \ #define NUM_TAPS 2 #include "scale_x.h" #define FUNC_NAME scale_rgb_16_x_bilinear_c #define TYPE color_16 #define INIT TMP_TYPE_8 tmp; #define SCALE \ tmp = ((TMP_TYPE_8)ctx->table_h.pixels[i].factor_i[0] * src_1->r + \ (TMP_TYPE_8)ctx->table_h.pixels[i].factor_i[1] * src_2->r); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_H(tmp,0); \ dst->r = tmp; \ tmp = ((TMP_TYPE_8)ctx->table_h.pixels[i].factor_i[0] * src_1->g + \ (TMP_TYPE_8)ctx->table_h.pixels[i].factor_i[1] * src_2->g); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_H(tmp,1); \ dst->g = tmp; \ tmp = ((TMP_TYPE_8)ctx->table_h.pixels[i].factor_i[0] * src_1->b + \ (TMP_TYPE_8)ctx->table_h.pixels[i].factor_i[1] * src_2->b);\ tmp=DOWNSHIFT(tmp,16);\ RECLIP_H(tmp,2); \ dst->b = tmp; \ #define NUM_TAPS 2 #include "scale_x.h" #define FUNC_NAME scale_uint8_x_1_x_bilinear_c #define TYPE uint8_t #define INIT TMP_TYPE_8 tmp; #define SCALE \ tmp = ((TMP_TYPE_8)ctx->table_h.pixels[i].factor_i[0] * src_1[0] + \ (TMP_TYPE_8)ctx->table_h.pixels[i].factor_i[1] * src_2[0]); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_H(tmp,ctx->plane); \ dst[0] = tmp; #define NUM_TAPS 2 #include "scale_x.h" #define FUNC_NAME scale_uint8_x_2_x_bilinear_c #define TYPE uint8_t #define INIT TMP_TYPE_8 tmp; #define SCALE \ tmp = ((TMP_TYPE_8)ctx->table_h.pixels[i].factor_i[0] * src_1[0] + \ (TMP_TYPE_8)ctx->table_h.pixels[i].factor_i[1] * src_2[0]); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_H(tmp,0); \ dst[0] = tmp; \ tmp = ((TMP_TYPE_8)ctx->table_h.pixels[i].factor_i[0] * src_1[1] + \ (TMP_TYPE_8)ctx->table_h.pixels[i].factor_i[1] * src_2[1]); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_H(tmp,1); \ dst[1] = tmp; #define NUM_TAPS 2 #include "scale_x.h" #define FUNC_NAME scale_uint8_x_3_x_bilinear_c #define TYPE uint8_t #define INIT TMP_TYPE_8 tmp; #define SCALE \ tmp = ((TMP_TYPE_8)ctx->table_h.pixels[i].factor_i[0] * src_1[0] + \ (TMP_TYPE_8)ctx->table_h.pixels[i].factor_i[1] * src_2[0]); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_H(tmp,0); \ dst[0] = tmp; \ tmp = ((TMP_TYPE_8)ctx->table_h.pixels[i].factor_i[0] * src_1[1] + \ (TMP_TYPE_8)ctx->table_h.pixels[i].factor_i[1] * src_2[1]); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_H(tmp,1); \ dst[1] = tmp; \ tmp = ((TMP_TYPE_8)ctx->table_h.pixels[i].factor_i[0] * src_1[2] + \ (TMP_TYPE_8)ctx->table_h.pixels[i].factor_i[1] * src_2[2]); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_H(tmp,2); \ dst[2] = tmp; #define NUM_TAPS 2 #include "scale_x.h" #define FUNC_NAME scale_uint8_x_4_x_bilinear_c #define TYPE uint8_t #define INIT TMP_TYPE_8 tmp; #define SCALE \ tmp = ((TMP_TYPE_8)ctx->table_h.pixels[i].factor_i[0] * src_1[0] + \ (TMP_TYPE_8)ctx->table_h.pixels[i].factor_i[1] * src_2[0]); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_H(tmp,0); \ dst[0] = tmp; \ tmp = ((TMP_TYPE_8)ctx->table_h.pixels[i].factor_i[0] * src_1[1] + \ (TMP_TYPE_8)ctx->table_h.pixels[i].factor_i[1] * src_2[1]); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_H(tmp,1); \ dst[1] = tmp; \ tmp = ((TMP_TYPE_8)ctx->table_h.pixels[i].factor_i[0] * src_1[2] + \ (TMP_TYPE_8)ctx->table_h.pixels[i].factor_i[1] * src_2[2]); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_H(tmp,2); \ dst[2] = tmp; \ tmp = ((TMP_TYPE_8)ctx->table_h.pixels[i].factor_i[0] * src_1[3] + \ (TMP_TYPE_8)ctx->table_h.pixels[i].factor_i[1] * src_2[3]); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_H(tmp,3); \ dst[3] = tmp; #define NUM_TAPS 2 #include "scale_x.h" #define FUNC_NAME scale_uint16_x_1_x_bilinear_c #define TYPE uint16_t #define INIT TMP_TYPE_16 tmp; #define SCALE \ tmp = ((TMP_TYPE_16)ctx->table_h.pixels[i].factor_i[0] * src_1[0] + \ (TMP_TYPE_16)ctx->table_h.pixels[i].factor_i[1] * src_2[0]); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_H(tmp,ctx->plane); \ dst[0] = tmp; #define NUM_TAPS 2 #include "scale_x.h" #define FUNC_NAME scale_uint16_x_2_x_bilinear_c #define TYPE uint16_t #define INIT TMP_TYPE_16 tmp; #define SCALE \ tmp = ((TMP_TYPE_16)ctx->table_h.pixels[i].factor_i[0] * src_1[0] + \ (TMP_TYPE_16)ctx->table_h.pixels[i].factor_i[1] * src_2[0]); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_H(tmp,0); \ dst[0] = tmp; \ tmp = ((TMP_TYPE_16)ctx->table_h.pixels[i].factor_i[0] * src_1[1] + \ (TMP_TYPE_16)ctx->table_h.pixels[i].factor_i[1] * src_2[1]); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_H(tmp,1); \ dst[1] = tmp; #define NUM_TAPS 2 #include "scale_x.h" #define FUNC_NAME scale_uint16_x_3_x_bilinear_c #define TYPE uint16_t #define INIT TMP_TYPE_16 tmp; #define SCALE \ tmp = ((TMP_TYPE_16)ctx->table_h.pixels[i].factor_i[0] * src_1[0] + \ (TMP_TYPE_16)ctx->table_h.pixels[i].factor_i[1] * src_2[0]); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_H(tmp,0); \ dst[0] = tmp; \ tmp = ((TMP_TYPE_16)ctx->table_h.pixels[i].factor_i[0] * src_1[1] + \ (TMP_TYPE_16)ctx->table_h.pixels[i].factor_i[1] * src_2[1]); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_H(tmp,1); \ dst[1] = tmp; \ tmp = ((TMP_TYPE_16)ctx->table_h.pixels[i].factor_i[0] * src_1[2] + \ (TMP_TYPE_16)ctx->table_h.pixels[i].factor_i[1] * src_2[2]); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_H(tmp,2); \ dst[2] = tmp; #define NUM_TAPS 2 #include "scale_x.h" #define FUNC_NAME scale_uint16_x_4_x_bilinear_c #define TYPE uint16_t #define INIT TMP_TYPE_16 tmp; #define SCALE \ tmp = ((TMP_TYPE_16)ctx->table_h.pixels[i].factor_i[0] * src_1[0] + \ (TMP_TYPE_16)ctx->table_h.pixels[i].factor_i[1] * src_2[0]); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_H(tmp,0); \ dst[0] = tmp; \ tmp = ((TMP_TYPE_16)ctx->table_h.pixels[i].factor_i[0] * src_1[1] + \ (TMP_TYPE_16)ctx->table_h.pixels[i].factor_i[1] * src_2[1]); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_H(tmp,1); \ dst[1] = tmp; \ tmp = ((TMP_TYPE_16)ctx->table_h.pixels[i].factor_i[0] * src_1[2] + \ (TMP_TYPE_16)ctx->table_h.pixels[i].factor_i[1] * src_2[2]); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_H(tmp,2); \ dst[2] = tmp; \ tmp = ((TMP_TYPE_16)ctx->table_h.pixels[i].factor_i[0] * src_1[3] + \ (TMP_TYPE_16)ctx->table_h.pixels[i].factor_i[1] * src_2[3]); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_H(tmp,3); \ dst[3] = tmp; #define NUM_TAPS 2 #include "scale_x.h" #define FUNC_NAME scale_float_x_1_x_bilinear_c #define TYPE float #define SCALE \ dst[0] = (ctx->table_h.pixels[i].factor_f[0] * src_1[0] + \ ctx->table_h.pixels[i].factor_f[1] * src_2[0]); \ RECLIP_FLOAT(dst[0], 0); #define NUM_TAPS 2 #include "scale_x.h" #define FUNC_NAME scale_float_x_2_x_bilinear_c #define TYPE float #define SCALE \ dst[0] = (ctx->table_h.pixels[i].factor_f[0] * src_1[0] + \ ctx->table_h.pixels[i].factor_f[1] * src_2[0]); \ RECLIP_FLOAT(dst[0], 0); \ dst[1] = (ctx->table_h.pixels[i].factor_f[0] * src_1[1] + \ ctx->table_h.pixels[i].factor_f[1] * src_2[1]); \ RECLIP_FLOAT(dst[1], 1); #define NUM_TAPS 2 #include "scale_x.h" #define FUNC_NAME scale_float_x_3_x_bilinear_c #define TYPE float #define SCALE \ dst[0] = (ctx->table_h.pixels[i].factor_f[0] * src_1[0] + \ ctx->table_h.pixels[i].factor_f[1] * src_2[0]); \ RECLIP_FLOAT(dst[0], 0); \ dst[1] = (ctx->table_h.pixels[i].factor_f[0] * src_1[1] + \ ctx->table_h.pixels[i].factor_f[1] * src_2[1]); \ RECLIP_FLOAT(dst[1], 1); \ dst[2] = (ctx->table_h.pixels[i].factor_f[0] * src_1[2] + \ ctx->table_h.pixels[i].factor_f[1] * src_2[2]);\ RECLIP_FLOAT(dst[2], 2); \ #define NUM_TAPS 2 #include "scale_x.h" #define FUNC_NAME scale_float_x_4_x_bilinear_c #define TYPE float #define SCALE \ dst[0] = (ctx->table_h.pixels[i].factor_f[0] * src_1[0] + \ ctx->table_h.pixels[i].factor_f[1] * src_2[0]); \ RECLIP_FLOAT(dst[0], 0); \ dst[1] = (ctx->table_h.pixels[i].factor_f[0] * src_1[1] + \ ctx->table_h.pixels[i].factor_f[1] * src_2[1]); \ RECLIP_FLOAT(dst[1], 1); \ dst[2] = (ctx->table_h.pixels[i].factor_f[0] * src_1[2] + \ ctx->table_h.pixels[i].factor_f[1] * src_2[2]); \ RECLIP_FLOAT(dst[2], 2); \ dst[3] = (ctx->table_h.pixels[i].factor_f[0] * src_1[3] + \ ctx->table_h.pixels[i].factor_f[1] * src_2[3]);\ RECLIP_FLOAT(dst[3], 3); \ #define NUM_TAPS 2 #include "scale_x.h" /* y-Direction */ #define FUNC_NAME scale_rgb_15_y_bilinear_c #define TYPE color_15 #define INIT int64_t fac_1, fac_2; \ int64_t tmp; \ fac_1 = ctx->table_v.pixels[scanline].factor_i[0];\ fac_2 = ctx->table_v.pixels[scanline].factor_i[1]; #define NO_UINT8 #define SCALE \ tmp = (fac_1 * src_1->r + \ fac_2 * src_2->r); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_V(tmp, 0); \ dst->r = tmp; \ tmp = (fac_1 * src_1->g + \ fac_2 * src_2->g); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_V(tmp, 1); \ dst->g = tmp; \ tmp = (fac_1 * src_1->b + \ fac_2 * src_2->b); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_V(tmp, 2); \ dst->b = tmp; #define NUM_TAPS 2 #include "scale_y.h" #define FUNC_NAME scale_rgb_16_y_bilinear_c #define TYPE color_16 #define INIT int64_t fac_1, fac_2;\ int64_t tmp; \ fac_1 = ctx->table_v.pixels[scanline].factor_i[0];\ fac_2 = ctx->table_v.pixels[scanline].factor_i[1]; #define NO_UINT8 #define SCALE \ tmp = (fac_1 * src_1->r + \ fac_2 * src_2->r); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_V(tmp, 0); \ dst->r = tmp; \ tmp = (fac_1 * src_1->g + \ fac_2 * src_2->g); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_V(tmp, 1); \ dst->g = tmp; \ tmp = (fac_1 * src_1->b + \ fac_2 * src_2->b); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_V(tmp, 2); \ dst->b = tmp; \ #define NUM_TAPS 2 #include "scale_y.h" #define FUNC_NAME scale_uint8_x_1_y_bilinear_c #define TYPE uint8_t #define INIT int64_t fac_1, fac_2, tmp; \ fac_1 = ctx->table_v.pixels[scanline].factor_i[0];\ fac_2 = ctx->table_v.pixels[scanline].factor_i[1]; #define SCALE \ tmp = (fac_1 * src_1[0] + \ fac_2 * src_2[0]); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_V(tmp, ctx->plane); \ dst[0] = tmp; #define NUM_TAPS 2 #include "scale_y.h" #define FUNC_NAME scale_uint8_x_2_y_bilinear_c #define TYPE uint8_t #define INIT int64_t fac_1, fac_2, tmp; \ fac_1 = ctx->table_v.pixels[scanline].factor_i[0];\ fac_2 = ctx->table_v.pixels[scanline].factor_i[1]; #define SCALE \ tmp = (fac_1 * src_1[0] + \ fac_2 * src_2[0]); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_V(tmp, ctx->plane); \ dst[0] = tmp;\ tmp = (fac_1 * src_1[1] + \ fac_2 * src_2[1]); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_V(tmp, ctx->plane); \ dst[1] = tmp; #define NUM_TAPS 2 #include "scale_y.h" #define FUNC_NAME scale_uint8_x_3_y_bilinear_c #define TYPE uint8_t #define INIT int64_t fac_1, fac_2, tmp; \ fac_1 = ctx->table_v.pixels[scanline].factor_i[0];\ fac_2 = ctx->table_v.pixels[scanline].factor_i[1]; #define SCALE \ tmp = (fac_1 * src_1[0] + \ fac_2 * src_2[0]); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_V(tmp, 0); \ dst[0] = tmp; \ tmp = (fac_1 * src_1[1] + \ fac_2 * src_2[1]); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_V(tmp, ctx->plane); \ dst[1] = tmp; \ tmp = (fac_1 * src_1[2] + \ fac_2 * src_2[2]); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_V(tmp, ctx->plane); \ dst[2] = tmp; #define NUM_TAPS 2 #include "scale_y.h" #define FUNC_NAME scale_uint8_x_4_y_bilinear_c #define TYPE uint8_t #define INIT int64_t fac_1, fac_2, tmp; \ fac_1 = ctx->table_v.pixels[scanline].factor_i[0];\ fac_2 = ctx->table_v.pixels[scanline].factor_i[1]; #define SCALE \ tmp = (fac_1 * src_1[0] + \ fac_2 * src_2[0]); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_V(tmp, 0); \ dst[0] = tmp; \ tmp = (fac_1 * src_1[1] + \ fac_2 * src_2[1]); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_V(tmp, 1); \ dst[1] = tmp; \ tmp = (fac_1 * src_1[2] + \ fac_2 * src_2[2]); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_V(tmp, 2); \ dst[2] = tmp; \ tmp = (fac_1 * src_1[3] + \ fac_2 * src_2[3]); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_V(tmp, 3); \ dst[3] = tmp; #define NUM_TAPS 2 #include "scale_y.h" #define FUNC_NAME scale_uint16_x_1_y_bilinear_c #define TYPE uint16_t #define INIT int64_t tmp; \ int64_t fac_1, fac_2; \ fac_1 = ctx->table_v.pixels[scanline].factor_i[0]; \ fac_2 = ctx->table_v.pixels[scanline].factor_i[1]; #define NO_UINT8 #define SCALE \ tmp = (fac_1 * src_1[0] + \ fac_2 * src_2[0]); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_V(tmp, ctx->plane); \ dst[0] = tmp; #define NUM_TAPS 2 #include "scale_y.h" #define FUNC_NAME scale_uint16_x_2_y_bilinear_c #define TYPE uint16_t #define INIT int64_t tmp; \ int64_t fac_1, fac_2; \ fac_1 = ctx->table_v.pixels[scanline].factor_i[0]; \ fac_2 = ctx->table_v.pixels[scanline].factor_i[1]; #define NO_UINT8 #define SCALE \ tmp = (fac_1 * src_1[0] + \ fac_2 * src_2[0]); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_V(tmp, ctx->plane); \ dst[0] = tmp;\ tmp = (fac_1 * src_1[1] + \ fac_2 * src_2[1]); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_V(tmp, ctx->plane); \ dst[1] = tmp; #define NUM_TAPS 2 #include "scale_y.h" #define FUNC_NAME scale_uint16_x_3_y_bilinear_c #define TYPE uint16_t #define INIT int64_t tmp; \ int64_t fac_1, fac_2; \ fac_1 = ctx->table_v.pixels[scanline].factor_i[0];\ fac_2 = ctx->table_v.pixels[scanline].factor_i[1]; #define NO_UINT8 #define SCALE \ tmp = (fac_1 * src_1[0] + \ fac_2 * src_2[0]); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_V(tmp, 0); \ dst[0] = tmp; \ tmp = (fac_1 * src_1[1] + \ fac_2 * src_2[1]); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_V(tmp, 1); \ dst[1] = tmp; \ tmp = (fac_1 * src_1[2] + \ fac_2 * src_2[2]); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_V(tmp, 2); \ dst[2] = tmp; #define NUM_TAPS 2 #include "scale_y.h" #define FUNC_NAME scale_uint16_x_4_y_bilinear_c #define TYPE uint16_t #define INIT int64_t tmp;\ int64_t fac_1, fac_2;\ fac_1 = ctx->table_v.pixels[scanline].factor_i[0];\ fac_2 = ctx->table_v.pixels[scanline].factor_i[1]; #define NO_UINT8 #define SCALE \ tmp = (fac_1 * src_1[0] + \ fac_2 * src_2[0]); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_V(tmp, 0); \ dst[0] = tmp; \ tmp = (fac_1 * src_1[1] + \ fac_2 * src_2[1]); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_V(tmp, 1); \ dst[1] = tmp; \ tmp = (fac_1 * src_1[2] + \ fac_2 * src_2[2]); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_V(tmp, 2); \ dst[2] = tmp; \ tmp = (fac_1 * src_1[3] + \ fac_2 * src_2[3]); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_V(tmp, 3); \ dst[3] = tmp; #define NUM_TAPS 2 #include "scale_y.h" #define FUNC_NAME scale_float_x_1_y_bilinear_c #define TYPE float #define INIT float fac_1, fac_2;\ fac_1 = ctx->table_v.pixels[scanline].factor_f[0];\ fac_2 = ctx->table_v.pixels[scanline].factor_f[1]; #define NO_UINT8 #define SCALE \ dst[0] = (fac_1 * src_1[0] + \ fac_2 * src_2[0]); \ RECLIP_FLOAT(dst[0], 0); #define NUM_TAPS 2 #include "scale_y.h" #define FUNC_NAME scale_float_x_2_y_bilinear_c #define TYPE float #define INIT float fac_1, fac_2;\ fac_1 = ctx->table_v.pixels[scanline].factor_f[0];\ fac_2 = ctx->table_v.pixels[scanline].factor_f[1]; #define NO_UINT8 #define SCALE \ dst[0] = (fac_1 * src_1[0] + \ fac_2 * src_2[0]); \ RECLIP_FLOAT(dst[0], 0); \ dst[1] = (fac_1 * src_1[1] + \ fac_2 * src_2[1]); \ RECLIP_FLOAT(dst[1], 1); #define NUM_TAPS 2 #include "scale_y.h" #define FUNC_NAME scale_float_x_3_y_bilinear_c #define TYPE float #define INIT float fac_1, fac_2;\ fac_1 = ctx->table_v.pixels[scanline].factor_f[0];\ fac_2 = ctx->table_v.pixels[scanline].factor_f[1]; #define NO_UINT8 #define SCALE \ dst[0] = (fac_1 * src_1[0] + \ fac_2 * src_2[0]); \ RECLIP_FLOAT(dst[0], 0); \ dst[1] = (fac_1 * src_1[1] + \ fac_2 * src_2[1]); \ RECLIP_FLOAT(dst[1], 1); \ dst[2] = (fac_1 * src_1[2] + \ fac_2 * src_2[2]);\ RECLIP_FLOAT(dst[2], 2); #define NUM_TAPS 2 #include "scale_y.h" #define FUNC_NAME scale_float_x_4_y_bilinear_c #define TYPE float #define INIT float fac_1, fac_2; \ fac_1 = ctx->table_v.pixels[scanline].factor_f[0]; \ fac_2 = ctx->table_v.pixels[scanline].factor_f[1]; #define NO_UINT8 #define SCALE \ dst[0] = (fac_1 * src_1[0] + \ fac_2 * src_2[0]); \ RECLIP_FLOAT(dst[0], 0); \ dst[1] = (fac_1 * src_1[1] + \ fac_2 * src_2[1]); \ RECLIP_FLOAT(dst[1], 1); \ dst[2] = (fac_1 * src_1[2] + \ fac_2 * src_2[2]); \ RECLIP_FLOAT(dst[2], 2); \ dst[3] = (fac_1 * src_1[3] + \ fac_2 * src_2[3]); \ RECLIP_FLOAT(dst[3], 3); #define NUM_TAPS 2 #include "scale_y.h" #ifdef NOCLIP void gavl_init_scale_funcs_bilinear_noclip_c(gavl_scale_funcs_t * tab) #else void gavl_init_scale_funcs_bilinear_c(gavl_scale_funcs_t * tab) #endif { // fprintf(stderr, "gavl_init_scale_funcs_bilinear_c\n"); tab->funcs_x.scale_rgb_15 = scale_rgb_15_x_bilinear_c; tab->funcs_x.scale_rgb_16 = scale_rgb_16_x_bilinear_c; tab->funcs_x.scale_uint8_x_1_advance = scale_uint8_x_1_x_bilinear_c; tab->funcs_x.scale_uint8_x_1_noadvance = scale_uint8_x_1_x_bilinear_c; tab->funcs_x.scale_uint8_x_2 = scale_uint8_x_2_x_bilinear_c; tab->funcs_x.scale_uint8_x_3 = scale_uint8_x_3_x_bilinear_c; tab->funcs_x.scale_uint8_x_4 = scale_uint8_x_4_x_bilinear_c; tab->funcs_x.scale_uint16_x_1 = scale_uint16_x_1_x_bilinear_c; tab->funcs_x.scale_uint16_x_2 = scale_uint16_x_2_x_bilinear_c; tab->funcs_x.scale_uint16_x_3 = scale_uint16_x_3_x_bilinear_c; tab->funcs_x.scale_uint16_x_4 = scale_uint16_x_4_x_bilinear_c; tab->funcs_x.scale_float_x_1 = scale_float_x_1_x_bilinear_c; tab->funcs_x.scale_float_x_2 = scale_float_x_2_x_bilinear_c; tab->funcs_x.scale_float_x_3 = scale_float_x_3_x_bilinear_c; tab->funcs_x.scale_float_x_4 = scale_float_x_4_x_bilinear_c; tab->funcs_x.bits_rgb_15 = 16; tab->funcs_x.bits_rgb_16 = 16; tab->funcs_x.bits_uint8_advance = 16; tab->funcs_x.bits_uint8_noadvance = 16; tab->funcs_x.bits_uint16 = 16; tab->funcs_y.scale_rgb_15 = scale_rgb_15_y_bilinear_c; tab->funcs_y.scale_rgb_16 = scale_rgb_16_y_bilinear_c; tab->funcs_y.scale_uint8_x_1_advance = scale_uint8_x_1_y_bilinear_c; tab->funcs_y.scale_uint8_x_1_noadvance = scale_uint8_x_1_y_bilinear_c; tab->funcs_y.scale_uint8_x_2 = scale_uint8_x_2_y_bilinear_c; tab->funcs_y.scale_uint8_x_3 = scale_uint8_x_3_y_bilinear_c; tab->funcs_y.scale_uint8_x_4 = scale_uint8_x_4_y_bilinear_c; tab->funcs_y.scale_uint16_x_1 = scale_uint16_x_1_y_bilinear_c; tab->funcs_y.scale_uint16_x_2 = scale_uint16_x_2_y_bilinear_c; tab->funcs_y.scale_uint16_x_3 = scale_uint16_x_3_y_bilinear_c; tab->funcs_y.scale_uint16_x_4 = scale_uint16_x_4_y_bilinear_c; tab->funcs_y.scale_float_x_1 = scale_float_x_1_y_bilinear_c; tab->funcs_y.scale_float_x_2 = scale_float_x_2_y_bilinear_c; tab->funcs_y.scale_float_x_3 = scale_float_x_3_y_bilinear_c; tab->funcs_y.scale_float_x_4 = scale_float_x_4_y_bilinear_c; tab->funcs_y.bits_rgb_15 = 16; tab->funcs_y.bits_rgb_16 = 16; tab->funcs_y.bits_uint8_advance = 16; tab->funcs_y.bits_uint8_noadvance = 16; tab->funcs_y.bits_uint16 = 16; } bplaum-gavl-b9385e3/gavl/c/scale_bilinear_fast_c.c000066400000000000000000000366101513252040200220570ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include #include #include /* x-Direction */ #if 0 #define FUNC_NAME scale_rgb_15_x_bilinear_c #define TYPE color_15 #define SCALE \ dst->r = ((ctx->table_h.pixels[i].factor_i[0] * (src_1->r-src_2->r)) >> 16)+src_2->r;\ dst->g = ((ctx->table_h.pixels[i].factor_i[0] * (src_1->g-src_2->g)) >> 16)+src_2->g;\ dst->b = ((ctx->table_h.pixels[i].factor_i[0] * (src_1->b-src_2->b)) >> 16)+src_2->b; #include "scale_bilinear_x.h" #define FUNC_NAME scale_rgb_16_x_bilinear_c #define TYPE color_16 #define SCALE \ dst->r = ((ctx->table_h.pixels[i].factor_i[0] * (src_1->r-src_2->r)) >> 16)+src_2->r;\ dst->g = ((ctx->table_h.pixels[i].factor_i[0] * (src_1->g-src_2->g)) >> 16)+src_2->g;\ dst->b = ((ctx->table_h.pixels[i].factor_i[0] * (src_1->b-src_2->b)) >> 16)+src_2->b; #include "scale_bilinear_x.h" #endif #define FUNC_NAME scale_uint8_x_1_x_bilinear_c #define TYPE uint8_t #define SCALE \ dst[0] = DOWNSHIFT(ctx->table_h.pixels[i].factor_i[0] * (src_1[0]-src_2[0]), 16)+src_2[0]; #include "scale_bilinear_x.h" #define FUNC_NAME scale_uint8_x_2_x_bilinear_c #define TYPE uint8_t #define SCALE \ dst[0] = DOWNSHIFT(ctx->table_h.pixels[i].factor_i[0] * (src_1[0]-src_2[0]), 16)+src_2[0];\ dst[1] = DOWNSHIFT(ctx->table_h.pixels[i].factor_i[0] * (src_1[1]-src_2[1]), 16)+src_2[1]; #include "scale_bilinear_x.h" #define FUNC_NAME scale_uint8_x_3_x_bilinear_c #define TYPE uint8_t #define SCALE \ dst[0] = DOWNSHIFT(ctx->table_h.pixels[i].factor_i[0] * (src_1[0]-src_2[0]), 16)+src_2[0];\ dst[1] = DOWNSHIFT(ctx->table_h.pixels[i].factor_i[0] * (src_1[1]-src_2[1]), 16)+src_2[1];\ dst[2] = DOWNSHIFT(ctx->table_h.pixels[i].factor_i[0] * (src_1[2]-src_2[2]), 16)+src_2[2]; #include "scale_bilinear_x.h" #define FUNC_NAME scale_uint8_x_4_x_bilinear_c #define TYPE uint8_t #define SCALE \ dst[0] = DOWNSHIFT(ctx->table_h.pixels[i].factor_i[0] * (src_1[0]-src_2[0]), 16)+src_2[0];\ dst[1] = DOWNSHIFT(ctx->table_h.pixels[i].factor_i[0] * (src_1[1]-src_2[1]), 16)+src_2[1];\ dst[2] = DOWNSHIFT(ctx->table_h.pixels[i].factor_i[0] * (src_1[2]-src_2[2]), 16)+src_2[2];\ dst[3] = DOWNSHIFT(ctx->table_h.pixels[i].factor_i[0] * (src_1[3]-src_2[3]), 16)+src_2[3]; #include "scale_bilinear_x.h" #if 0 #define FUNC_NAME scale_uint16_x_1_x_bilinear_c #define TYPE uint16_t #ifdef HQ #define INIT int64_t tmp; #else #define INIT uint32_t tmp; #endif #define SCALE \ tmp = ctx->table_h.pixels[i].factor_i[0] * (src_1[0]-src_2[0]); \ dst[0] = DOWNSHIFT(tmp, 16)+src_2[0]; #include "scale_bilinear_x.h" #define FUNC_NAME scale_uint16_x_2_x_bilinear_c #define TYPE uint16_t #ifdef HQ #define INIT int64_t tmp; #else #define INIT uint32_t tmp; #endif #define SCALE \ tmp = ctx->table_h.pixels[i].factor_i[0] * (src_1[0]-src_2[0]); \ dst[0] = DOWNSHIFT(tmp, 16)+src_2[0]; \ tmp = ctx->table_h.pixels[i].factor_i[0] * (src_1[1]-src_2[1]); \ dst[1] = DOWNSHIFT(tmp, 16)+src_2[1]; #include "scale_bilinear_x.h" #define FUNC_NAME scale_uint16_x_3_x_bilinear_c #define TYPE uint16_t #ifdef HQ #define INIT int64_t tmp; #else #define INIT uint32_t tmp; #endif #define SCALE \ tmp = ctx->table_h.pixels[i].factor_i[0] * (src_1[0]-src_2[0]); \ dst[0] = DOWNSHIFT(tmp, 16)+src_2[0]; \ tmp = ctx->table_h.pixels[i].factor_i[0] * (src_1[1]-src_2[1]); \ dst[1] = DOWNSHIFT(tmp, 16)+src_2[1]; \ tmp = ctx->table_h.pixels[i].factor_i[0] * (src_1[2]-src_2[2]); \ dst[2] = DOWNSHIFT(tmp, 16)+src_2[2]; #include "scale_bilinear_x.h" #define FUNC_NAME scale_uint16_x_4_x_bilinear_c #define TYPE uint16_t #ifdef HQ #define INIT int64_t tmp; #else #define INIT uint32_t tmp; #endif #define SCALE \ tmp = ctx->table_h.pixels[i].factor_i[0] * (src_1[0]-src_2[0]); \ dst[0] = DOWNSHIFT(tmp, 16)+src_2[0]; \ tmp = ctx->table_h.pixels[i].factor_i[0] * (src_1[1]-src_2[1]); \ dst[1] = DOWNSHIFT(tmp, 16)+src_2[1]; \ tmp = ctx->table_h.pixels[i].factor_i[0] * (src_1[2]-src_2[2]); \ dst[2] = DOWNSHIFT(tmp, 16)+src_2[2]; \ tmp = ctx->table_h.pixels[i].factor_i[0] * (src_1[3]-src_2[3]); \ dst[3] = DOWNSHIFT(tmp, 16)+src_2[3]; #include "scale_bilinear_x.h" #endif #define FUNC_NAME scale_float_x_1_x_bilinear_c #define TYPE float #define SCALE \ dst[0] = ctx->table_h.pixels[i].factor_f[0] * (src_1[0] - src_2[0]) + src_2[0]; #include "scale_bilinear_x.h" #define FUNC_NAME scale_float_x_2_x_bilinear_c #define TYPE float #define SCALE \ dst[0] = ctx->table_h.pixels[i].factor_f[0] * (src_1[0] - src_2[0]) + src_2[0]; \ dst[1] = ctx->table_h.pixels[i].factor_f[0] * (src_1[1] - src_2[1]) + src_2[1]; #include "scale_bilinear_x.h" #define FUNC_NAME scale_float_x_3_x_bilinear_c #define TYPE float #define SCALE \ dst[0] = ctx->table_h.pixels[i].factor_f[0] * (src_1[0] - src_2[0]) + src_2[0]; \ dst[1] = ctx->table_h.pixels[i].factor_f[0] * (src_1[1] - src_2[1]) + src_2[1]; \ dst[2] = ctx->table_h.pixels[i].factor_f[0] * (src_1[2] - src_2[2]) + src_2[2]; #include "scale_bilinear_x.h" #define FUNC_NAME scale_float_x_4_x_bilinear_c #define TYPE float #define SCALE \ dst[0] = ctx->table_h.pixels[i].factor_f[0] * (src_1[0] - src_2[0]) + src_2[0]; \ dst[1] = ctx->table_h.pixels[i].factor_f[0] * (src_1[1] - src_2[1]) + src_2[1]; \ dst[2] = ctx->table_h.pixels[i].factor_f[0] * (src_1[2] - src_2[2]) + src_2[2]; \ dst[3] = ctx->table_h.pixels[i].factor_f[0] * (src_1[3] - src_2[3]) + src_2[3]; #include "scale_bilinear_x.h" /* y-Direction */ #if 0 #define FUNC_NAME scale_rgb_15_y_bilinear_c #define TYPE color_15 #define INIT int fac_1;\ fac_1 = ctx->table_v.pixels[scanline].factor_i[0];\ #define NO_UINT8 #define SCALE \ dst->r = ((fac_1 * (src_1->r - src_2->r)) >> 16)+src_2->r;\ dst->g = ((fac_1 * (src_1->g - src_2->g)) >> 16)+src_2->g;\ dst->b = ((fac_1 * (src_1->b - src_2->b)) >> 16)+src_2->b; #include "scale_bilinear_y.h" #define FUNC_NAME scale_rgb_16_y_bilinear_c #define TYPE color_16 #define INIT int fac_1;\ fac_1 = ctx->table_v.pixels[scanline].factor_i[0]; #define NO_UINT8 #define SCALE \ dst->r = ((fac_1 * (src_1->r - src_2->r)) >> 16)+src_2->r;\ dst->g = ((fac_1 * (src_1->g - src_2->g)) >> 16)+src_2->g;\ dst->b = ((fac_1 * (src_1->b - src_2->b)) >> 16)+src_2->b; #include "scale_bilinear_y.h" #endif #define FUNC_NAME scale_uint8_x_1_y_bilinear_c #define TYPE uint8_t #define INIT int fac_1;\ fac_1 = ctx->table_v.pixels[scanline].factor_i[0]; #define SCALE \ dst[0] = DOWNSHIFT(fac_1 * (src_1[0] - src_2[0]), 16)+src_2[0]; #include "scale_bilinear_y.h" #if 0 #define FUNC_NAME scale_uint8_x_2_y_bilinear_c #define TYPE uint8_t #define INIT int fac_1;\ fac_1 = ctx->table_v.pixels[scanline].factor_i[0]; #define SCALE \ dst[0] = DOWNSHIFT(fac_1 * (src_1[0] - src_2[0]), 16)+src_2[0];\ dst[1] = DOWNSHIFT(fac_1 * (src_1[1] - src_2[1]), 16)+src_2[1]; #include "scale_bilinear_y.h" #define FUNC_NAME scale_uint8_x_3_y_bilinear_c #define TYPE uint8_t #define INIT int fac_1;\ fac_1 = ctx->table_v.pixels[scanline].factor_i[0]; #define SCALE \ dst[0] = DOWNSHIFT(fac_1 * (src_1[0] - src_2[0]), 16)+src_2[0];\ dst[1] = DOWNSHIFT(fac_1 * (src_1[1] - src_2[1]), 16)+src_2[1];\ dst[2] = DOWNSHIFT(fac_1 * (src_1[2] - src_2[2]), 16)+src_2[2]; #include "scale_bilinear_y.h" #endif #define FUNC_NAME scale_uint8_x_4_y_bilinear_c #define TYPE uint8_t #define INIT int fac_1;\ fac_1 = ctx->table_v.pixels[scanline].factor_i[0]; #define SCALE \ dst[0] = DOWNSHIFT(fac_1 * (src_1[0] - src_2[0]), 16)+src_2[0];\ dst[1] = DOWNSHIFT(fac_1 * (src_1[1] - src_2[1]), 16)+src_2[1];\ dst[2] = DOWNSHIFT(fac_1 * (src_1[2] - src_2[2]), 16)+src_2[2];\ dst[3] = DOWNSHIFT(fac_1 * (src_1[3] - src_2[3]), 16)+src_2[3];\ #include "scale_bilinear_y.h" #if 0 #define FUNC_NAME scale_uint16_x_1_y_bilinear_c #define TYPE uint16_t #ifdef HQ #define INIT int64_t tmp; \ int fac_1;\ fac_1 = ctx->table_v.pixels[scanline].factor_i[0]; #else #define INIT uint32_t tmp; \ int fac_1;\ fac_1 = ctx->table_v.pixels[scanline].factor_i[0]; #endif #define NO_UINT8 #define SCALE \ tmp = fac_1 * (src_1[0] - src_2[0]); \ dst[0] = DOWNSHIFT(tmp, 16)+src_2[0]; #include "scale_bilinear_y.h" #define FUNC_NAME scale_uint16_x_2_y_bilinear_c #define TYPE uint16_t #ifdef HQ #define INIT int64_t tmp; \ int fac_1;\ fac_1 = ctx->table_v.pixels[scanline].factor_i[0]; #else #define INIT uint32_t tmp; \ int fac_1;\ fac_1 = ctx->table_v.pixels[scanline].factor_i[0]; #endif #define NO_UINT8 #define SCALE \ tmp = fac_1 * (src_1[0] - src_2[0]); \ dst[0] = DOWNSHIFT(tmp, 16)+src_2[0]; \ tmp = fac_1 * (src_1[1] - src_2[1]); \ dst[1] = DOWNSHIFT(tmp, 16)+src_2[1]; #include "scale_bilinear_y.h" #define FUNC_NAME scale_uint16_x_3_y_bilinear_c #define TYPE uint16_t #ifdef HQ #define INIT int64_t tmp; \ int fac_1;\ fac_1 = ctx->table_v.pixels[scanline].factor_i[0]; #else #define INIT uint32_t tmp; \ int fac_1;\ fac_1 = ctx->table_v.pixels[scanline].factor_i[0]; #endif #define NO_UINT8 #define SCALE \ tmp = fac_1 * (src_1[0] - src_2[0]); \ dst[0] = DOWNSHIFT(tmp, 16)+src_2[0]; \ tmp = fac_1 * (src_1[1] - src_2[1]); \ dst[1] = DOWNSHIFT(tmp, 16)+src_2[1]; \ tmp = fac_1 * (src_1[2] - src_2[2]); \ dst[2] = DOWNSHIFT(tmp, 16)+src_2[2]; #include "scale_bilinear_y.h" #define FUNC_NAME scale_uint16_x_4_y_bilinear_c #define TYPE uint16_t #ifdef HQ #define INIT int64_t tmp; \ int fac_1;\ fac_1 = ctx->table_v.pixels[scanline].factor_i[0]; #else #define INIT uint32_t tmp; \ int fac_1;\ fac_1 = ctx->table_v.pixels[scanline].factor_i[0]; #endif #define NO_UINT8 #define SCALE \ tmp = fac_1 * (src_1[0] - src_2[0]); \ dst[0] = DOWNSHIFT(tmp, 16)+src_2[0]; \ tmp = fac_1 * (src_1[1] - src_2[1]); \ dst[1] = DOWNSHIFT(tmp, 16)+src_2[1]; \ tmp = fac_1 * (src_1[2] - src_2[2]); \ dst[2] = DOWNSHIFT(tmp, 16)+src_2[2]; \ tmp = fac_1 * (src_1[3] - src_2[3]); \ dst[3] = DOWNSHIFT(tmp, 16)+src_2[3]; #include "scale_bilinear_y.h" #define FUNC_NAME scale_float_x_1_y_bilinear_c #define TYPE float #define INIT float fac_1;\ fac_1 = ctx->table_v.pixels[scanline].factor_f[0]; #define NO_UINT8 #define SCALE \ dst[0] = fac_1 * (src_1[0] - src_2[0])+src_2[0]; #include "scale_bilinear_y.h" #define FUNC_NAME scale_float_x_2_y_bilinear_c #define TYPE float #define INIT float fac_1;\ fac_1 = ctx->table_v.pixels[scanline].factor_f[0]; #define NO_UINT8 #define SCALE \ dst[0] = fac_1 * (src_1[0] - src_2[0])+src_2[0]; \ dst[1] = fac_1 * (src_1[1] - src_2[1])+src_2[1]; #include "scale_bilinear_y.h" #define FUNC_NAME scale_float_x_3_y_bilinear_c #define TYPE float #define INIT float fac_1;\ fac_1 = ctx->table_v.pixels[scanline].factor_f[0]; #define NO_UINT8 #define SCALE \ dst[0] = fac_1 * (src_1[0] - src_2[0])+src_2[0]; \ dst[1] = fac_1 * (src_1[1] - src_2[1])+src_2[1]; \ dst[2] = fac_1 * (src_1[2] - src_2[2])+src_2[2]; #include "scale_bilinear_y.h" #define FUNC_NAME scale_float_x_4_y_bilinear_c #define TYPE float #define INIT float fac_1;\ fac_1 = ctx->table_v.pixels[scanline].factor_f[0]; #define NO_UINT8 #define SCALE \ dst[0] = fac_1 * (src_1[0] - src_2[0])+src_2[0]; \ dst[1] = fac_1 * (src_1[1] - src_2[1])+src_2[1]; \ dst[2] = fac_1 * (src_1[2] - src_2[2])+src_2[2]; \ dst[3] = fac_1 * (src_1[3] - src_2[3])+src_2[3]; \ #include "scale_bilinear_y.h" #endif void gavl_init_scale_funcs_bilinear_fast_c(gavl_scale_funcs_t * tab) { // fprintf(stderr, "gavl_init_scale_funcs_bilinear_c\n"); // tab->funcs_x.scale_rgb_15 = scale_rgb_15_x_bilinear_c; // tab->funcs_x.scale_rgb_16 = scale_rgb_16_x_bilinear_c; tab->funcs_x.scale_uint8_x_1_advance = scale_uint8_x_1_x_bilinear_c; tab->funcs_x.scale_uint8_x_1_noadvance = scale_uint8_x_1_x_bilinear_c; tab->funcs_x.scale_uint8_x_2 = scale_uint8_x_2_x_bilinear_c; tab->funcs_x.scale_uint8_x_3 = scale_uint8_x_3_x_bilinear_c; tab->funcs_x.scale_uint8_x_4 = scale_uint8_x_4_x_bilinear_c; #if 0 tab->funcs_x.scale_uint16_x_1 = scale_uint16_x_1_x_bilinear_c; tab->funcs_x.scale_uint16_x_2 = scale_uint16_x_2_x_bilinear_c; tab->funcs_x.scale_uint16_x_3 = scale_uint16_x_3_x_bilinear_c; tab->funcs_x.scale_uint16_x_4 = scale_uint16_x_4_x_bilinear_c; #endif tab->funcs_x.scale_float_x_1 = scale_float_x_1_x_bilinear_c; tab->funcs_x.scale_float_x_2 = scale_float_x_2_x_bilinear_c; tab->funcs_x.scale_float_x_3 = scale_float_x_3_x_bilinear_c; tab->funcs_x.scale_float_x_4 = scale_float_x_4_x_bilinear_c; tab->funcs_x.bits_rgb_15 = 16; tab->funcs_x.bits_rgb_16 = 16; tab->funcs_x.bits_uint8_advance = 16; tab->funcs_x.bits_uint8_noadvance = 16; tab->funcs_x.bits_uint16 = 16; // tab->funcs_y.scale_rgb_15 = scale_rgb_15_y_bilinear_c; // tab->funcs_y.scale_rgb_16 = scale_rgb_16_y_bilinear_c; tab->funcs_y.scale_uint8_x_1_noadvance = scale_uint8_x_1_y_bilinear_c; tab->funcs_y.scale_uint8_x_1_advance = scale_uint8_x_1_y_bilinear_c; // tab->funcs_y.scale_uint8_x_2 = scale_uint8_x_2_y_bilinear_c; // tab->funcs_y.scale_uint8_x_3 = scale_uint8_x_3_y_bilinear_c; tab->funcs_y.scale_uint8_x_4 = scale_uint8_x_4_y_bilinear_c; #if 0 tab->funcs_y.scale_uint16_x_1 = scale_uint16_x_1_y_bilinear_c; tab->funcs_y.scale_uint16_x_2 = scale_uint16_x_2_y_bilinear_c; tab->funcs_y.scale_uint16_x_3 = scale_uint16_x_3_y_bilinear_c; tab->funcs_y.scale_uint16_x_4 = scale_uint16_x_4_y_bilinear_c; tab->funcs_y.scale_float_x_1 = scale_float_x_1_y_bilinear_c; tab->funcs_y.scale_float_x_2 = scale_float_x_2_y_bilinear_c; tab->funcs_y.scale_float_x_3 = scale_float_x_3_y_bilinear_c; tab->funcs_y.scale_float_x_4 = scale_float_x_4_y_bilinear_c; tab->funcs_y.bits_rgb_15 = 16; tab->funcs_y.bits_rgb_16 = 16; tab->funcs_y.bits_uint8_advance = 16; tab->funcs_y.bits_uint8_noadvance = 16; tab->funcs_y.bits_uint16 = 16; #endif } bplaum-gavl-b9385e3/gavl/c/scale_bilinear_noclip_c.c000066400000000000000000000423541513252040200224100ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include #include #include /* x-Direction */ #define FUNC_NAME scale_rgb_15_x_bilinear_c #define TYPE color_15 #define SCALE \ dst->r = (ctx->table_h.pixels[i].factor_i[0] * src_1->r + ctx->table_h.pixels[i].factor_i[1] * src_2->r) >> 16;\ dst->g = (ctx->table_h.pixels[i].factor_i[0] * src_1->g + ctx->table_h.pixels[i].factor_i[1] * src_2->g) >> 16;\ dst->b = (ctx->table_h.pixels[i].factor_i[0] * src_1->b + ctx->table_h.pixels[i].factor_i[1] * src_2->b) >> 16; #include "scale_bilinear_x.h" #define FUNC_NAME scale_rgb_16_x_bilinear_c #define TYPE color_16 #define SCALE \ dst->r = (ctx->table_h.pixels[i].factor_i[0] * src_1->r + ctx->table_h.pixels[i].factor_i[1] * src_2->r) >> 16;\ dst->g = (ctx->table_h.pixels[i].factor_i[0] * src_1->g + ctx->table_h.pixels[i].factor_i[1] * src_2->g) >> 16;\ dst->b = (ctx->table_h.pixels[i].factor_i[0] * src_1->b + ctx->table_h.pixels[i].factor_i[1] * src_2->b) >> 16; #include "scale_bilinear_x.h" #define FUNC_NAME scale_uint8_x_1_x_bilinear_c #define TYPE uint8_t #define SCALE \ dst[0] = DOWNSHIFT(ctx->table_h.pixels[i].factor_i[0] * src_1[0] + ctx->table_h.pixels[i].factor_i[1] * src_2[0], 16); #include "scale_bilinear_x.h" #define FUNC_NAME scale_uint8_x_2_x_bilinear_c #define TYPE uint8_t #define SCALE \ dst[0] = DOWNSHIFT(ctx->table_h.pixels[i].factor_i[0] * src_1[0] + ctx->table_h.pixels[i].factor_i[1] * src_2[0], 16);\ dst[1] = DOWNSHIFT(ctx->table_h.pixels[i].factor_i[0] * src_1[1] + ctx->table_h.pixels[i].factor_i[1] * src_2[1], 16); #include "scale_bilinear_x.h" #define FUNC_NAME scale_uint8_x_3_x_bilinear_c #define TYPE uint8_t #define SCALE \ dst[0] = DOWNSHIFT(ctx->table_h.pixels[i].factor_i[0] * src_1[0] + ctx->table_h.pixels[i].factor_i[1] * src_2[0], 16);\ dst[1] = DOWNSHIFT(ctx->table_h.pixels[i].factor_i[0] * src_1[1] + ctx->table_h.pixels[i].factor_i[1] * src_2[1], 16);\ dst[2] = DOWNSHIFT(ctx->table_h.pixels[i].factor_i[0] * src_1[2] + ctx->table_h.pixels[i].factor_i[1] * src_2[2], 16); #include "scale_bilinear_x.h" #define FUNC_NAME scale_uint8_x_4_x_bilinear_c #define TYPE uint8_t #define SCALE \ dst[0] = DOWNSHIFT(ctx->table_h.pixels[i].factor_i[0] * src_1[0] + ctx->table_h.pixels[i].factor_i[1] * src_2[0], 16);\ dst[1] = DOWNSHIFT(ctx->table_h.pixels[i].factor_i[0] * src_1[1] + ctx->table_h.pixels[i].factor_i[1] * src_2[1], 16);\ dst[2] = DOWNSHIFT(ctx->table_h.pixels[i].factor_i[0] * src_1[2] + ctx->table_h.pixels[i].factor_i[1] * src_2[2], 16);\ dst[3] = DOWNSHIFT(ctx->table_h.pixels[i].factor_i[0] * src_1[3] + ctx->table_h.pixels[i].factor_i[1] * src_2[3], 16); #include "scale_bilinear_x.h" #define FUNC_NAME scale_uint16_x_1_x_bilinear_c #define TYPE uint16_t #ifdef HQ #define INIT int64_t tmp; #else #define INIT uint32_t tmp; #endif #define SCALE \ tmp = (ctx->table_h.pixels[i].factor_i[0] * src_1[0] + ctx->table_h.pixels[i].factor_i[1] * src_2[0]); \ dst[0] = DOWNSHIFT(tmp, 16); #include "scale_bilinear_x.h" #define FUNC_NAME scale_uint16_x_2_x_bilinear_c #define TYPE uint16_t #ifdef HQ #define INIT int64_t tmp; #else #define INIT uint32_t tmp; #endif #define SCALE \ tmp = (ctx->table_h.pixels[i].factor_i[0] * src_1[0] + ctx->table_h.pixels[i].factor_i[1] * src_2[0]); \ dst[0] = DOWNSHIFT(tmp, 16); \ tmp = (ctx->table_h.pixels[i].factor_i[0] * src_1[1] + ctx->table_h.pixels[i].factor_i[1] * src_2[1]); \ dst[1] = DOWNSHIFT(tmp, 16); #include "scale_bilinear_x.h" #define FUNC_NAME scale_uint16_x_3_x_bilinear_c #define TYPE uint16_t #ifdef HQ #define INIT int64_t tmp; #else #define INIT uint32_t tmp; #endif #define SCALE \ tmp = (ctx->table_h.pixels[i].factor_i[0] * src_1[0] + ctx->table_h.pixels[i].factor_i[1] * src_2[0]); \ dst[0] = DOWNSHIFT(tmp, 16); \ tmp = (ctx->table_h.pixels[i].factor_i[0] * src_1[1] + ctx->table_h.pixels[i].factor_i[1] * src_2[1]); \ dst[1] = DOWNSHIFT(tmp, 16); \ tmp = (ctx->table_h.pixels[i].factor_i[0] * src_1[2] + ctx->table_h.pixels[i].factor_i[1] * src_2[2]); \ dst[2] = DOWNSHIFT(tmp, 16); #include "scale_bilinear_x.h" #define FUNC_NAME scale_uint16_x_4_x_bilinear_c #define TYPE uint16_t #ifdef HQ #define INIT int64_t tmp; #else #define INIT uint32_t tmp; #endif #define SCALE \ tmp = (ctx->table_h.pixels[i].factor_i[0] * src_1[0] + ctx->table_h.pixels[i].factor_i[1] * src_2[0]); \ dst[0] = DOWNSHIFT(tmp, 16); \ tmp = (ctx->table_h.pixels[i].factor_i[0] * src_1[1] + ctx->table_h.pixels[i].factor_i[1] * src_2[1]); \ dst[1] = DOWNSHIFT(tmp, 16); \ tmp = (ctx->table_h.pixels[i].factor_i[0] * src_1[2] + ctx->table_h.pixels[i].factor_i[1] * src_2[2]); \ dst[2] = DOWNSHIFT(tmp, 16); \ tmp = (ctx->table_h.pixels[i].factor_i[0] * src_1[3] + ctx->table_h.pixels[i].factor_i[1] * src_2[3]); \ dst[3] = DOWNSHIFT(tmp, 16); #include "scale_bilinear_x.h" #define FUNC_NAME scale_float_x_1_x_bilinear_c #define TYPE float #define SCALE \ dst[0] = (ctx->table_h.pixels[i].factor_f[0] * src_1[0] + ctx->table_h.pixels[i].factor_f[1] * src_2[0]); #include "scale_bilinear_x.h" #define FUNC_NAME scale_float_x_2_x_bilinear_c #define TYPE float #define SCALE \ dst[0] = (ctx->table_h.pixels[i].factor_f[0] * src_1[0] + ctx->table_h.pixels[i].factor_f[1] * src_2[0]); \ dst[1] = (ctx->table_h.pixels[i].factor_f[0] * src_1[1] + ctx->table_h.pixels[i].factor_f[1] * src_2[1]); #include "scale_bilinear_x.h" #define FUNC_NAME scale_float_x_3_x_bilinear_c #define TYPE float #define SCALE \ dst[0] = (ctx->table_h.pixels[i].factor_f[0] * src_1[0] + ctx->table_h.pixels[i].factor_f[1] * src_2[0]); \ dst[1] = (ctx->table_h.pixels[i].factor_f[0] * src_1[1] + ctx->table_h.pixels[i].factor_f[1] * src_2[1]); \ dst[2] = (ctx->table_h.pixels[i].factor_f[0] * src_1[2] + ctx->table_h.pixels[i].factor_f[1] * src_2[2]); #include "scale_bilinear_x.h" #define FUNC_NAME scale_float_x_4_x_bilinear_c #define TYPE float #define SCALE \ dst[0] = (ctx->table_h.pixels[i].factor_f[0] * src_1[0] + ctx->table_h.pixels[i].factor_f[1] * src_2[0]); \ dst[1] = (ctx->table_h.pixels[i].factor_f[0] * src_1[1] + ctx->table_h.pixels[i].factor_f[1] * src_2[1]); \ dst[2] = (ctx->table_h.pixels[i].factor_f[0] * src_1[2] + ctx->table_h.pixels[i].factor_f[1] * src_2[2]); \ dst[3] = (ctx->table_h.pixels[i].factor_f[0] * src_1[3] + ctx->table_h.pixels[i].factor_f[1] * src_2[3]); \ #include "scale_bilinear_x.h" /* y-Direction */ #define FUNC_NAME scale_rgb_15_y_bilinear_c #define TYPE color_15 #define INIT int fac_1, fac_2;\ fac_1 = ctx->table_v.pixels[scanline].factor_i[0];\ fac_2 = ctx->table_v.pixels[scanline].factor_i[1]; #define NO_UINT8 #define SCALE \ dst->r = (fac_1 * src_1->r + fac_2 * src_2->r) >> 16;\ dst->g = (fac_1 * src_1->g + fac_2 * src_2->g) >> 16;\ dst->b = (fac_1 * src_1->b + fac_2 * src_2->b) >> 16; #include "scale_bilinear_y.h" #define FUNC_NAME scale_rgb_16_y_bilinear_c #define TYPE color_16 #define INIT int fac_1, fac_2;\ fac_1 = ctx->table_v.pixels[scanline].factor_i[0];\ fac_2 = ctx->table_v.pixels[scanline].factor_i[1]; #define NO_UINT8 #define SCALE \ dst->r = (fac_1 * src_1->r + fac_2 * src_2->r) >> 16;\ dst->g = (fac_1 * src_1->g + fac_2 * src_2->g) >> 16;\ dst->b = (fac_1 * src_1->b + fac_2 * src_2->b) >> 16; #include "scale_bilinear_y.h" #define FUNC_NAME scale_uint8_x_1_y_bilinear_c #define TYPE uint8_t #define INIT int fac_1, fac_2;\ fac_1 = ctx->table_v.pixels[scanline].factor_i[0];\ fac_2 = ctx->table_v.pixels[scanline].factor_i[1]; #define SCALE \ dst[0] = DOWNSHIFT(fac_1 * src_1[0] + fac_2 * src_2[0], 16); #include "scale_bilinear_y.h" #define FUNC_NAME scale_uint8_x_2_y_bilinear_c #define TYPE uint8_t #define INIT int fac_1, fac_2;\ fac_1 = ctx->table_v.pixels[scanline].factor_i[0];\ fac_2 = ctx->table_v.pixels[scanline].factor_i[1]; #define SCALE \ dst[0] = DOWNSHIFT(fac_1 * src_1[0] + fac_2 * src_2[0], 16);\ dst[1] = DOWNSHIFT(fac_1 * src_1[1] + fac_2 * src_2[1], 16); #include "scale_bilinear_y.h" #define FUNC_NAME scale_uint8_x_3_y_bilinear_c #define TYPE uint8_t #define INIT int fac_1, fac_2;\ fac_1 = ctx->table_v.pixels[scanline].factor_i[0];\ fac_2 = ctx->table_v.pixels[scanline].factor_i[1]; #define SCALE \ dst[0] = DOWNSHIFT(fac_1 * src_1[0] + fac_2 * src_2[0], 16);\ dst[1] = DOWNSHIFT(fac_1 * src_1[1] + fac_2 * src_2[1], 16);\ dst[2] = DOWNSHIFT(fac_1 * src_1[2] + fac_2 * src_2[2], 16); #include "scale_bilinear_y.h" #define FUNC_NAME scale_uint8_x_4_y_bilinear_c #define TYPE uint8_t #define INIT int fac_1, fac_2;\ fac_1 = ctx->table_v.pixels[scanline].factor_i[0];\ fac_2 = ctx->table_v.pixels[scanline].factor_i[1]; #define SCALE \ dst[0] = DOWNSHIFT(fac_1 * src_1[0] + fac_2 * src_2[0], 16);\ dst[1] = DOWNSHIFT(fac_1 * src_1[1] + fac_2 * src_2[1], 16);\ dst[2] = DOWNSHIFT(fac_1 * src_1[2] + fac_2 * src_2[2], 16);\ dst[3] = DOWNSHIFT(fac_1 * src_1[3] + fac_2 * src_2[3], 16);\ #include "scale_bilinear_y.h" #define FUNC_NAME scale_uint16_x_1_y_bilinear_c #define TYPE uint16_t #ifdef HQ #define INIT int64_t tmp; \ int fac_1, fac_2;\ fac_1 = ctx->table_v.pixels[scanline].factor_i[0];\ fac_2 = ctx->table_v.pixels[scanline].factor_i[1]; #else #define INIT uint32_t tmp; \ int fac_1, fac_2;\ fac_1 = ctx->table_v.pixels[scanline].factor_i[0];\ fac_2 = ctx->table_v.pixels[scanline].factor_i[1]; #endif #define NO_UINT8 #define SCALE \ tmp = (fac_1 * src_1[0] + fac_2 * src_2[0]); \ dst[0] = DOWNSHIFT(tmp, 16); #include "scale_bilinear_y.h" #define FUNC_NAME scale_uint16_x_2_y_bilinear_c #define TYPE uint16_t #ifdef HQ #define INIT int64_t tmp; \ int fac_1, fac_2;\ fac_1 = ctx->table_v.pixels[scanline].factor_i[0];\ fac_2 = ctx->table_v.pixels[scanline].factor_i[1]; #else #define INIT uint32_t tmp; \ int fac_1, fac_2;\ fac_1 = ctx->table_v.pixels[scanline].factor_i[0];\ fac_2 = ctx->table_v.pixels[scanline].factor_i[1]; #endif #define NO_UINT8 #define SCALE \ tmp = (fac_1 * src_1[0] + fac_2 * src_2[0]); \ dst[0] = DOWNSHIFT(tmp, 16); \ tmp = (fac_1 * src_1[1] + fac_2 * src_2[1]); \ dst[1] = DOWNSHIFT(tmp, 16); #include "scale_bilinear_y.h" #define FUNC_NAME scale_uint16_x_3_y_bilinear_c #define TYPE uint16_t #ifdef HQ #define INIT int64_t tmp; \ int fac_1, fac_2;\ fac_1 = ctx->table_v.pixels[scanline].factor_i[0];\ fac_2 = ctx->table_v.pixels[scanline].factor_i[1]; #else #define INIT uint32_t tmp; \ int fac_1, fac_2;\ fac_1 = ctx->table_v.pixels[scanline].factor_i[0];\ fac_2 = ctx->table_v.pixels[scanline].factor_i[1]; #endif #define NO_UINT8 #define SCALE \ tmp = (fac_1 * src_1[0] + fac_2 * src_2[0]); \ dst[0] = DOWNSHIFT(tmp, 16); \ tmp = (fac_1 * src_1[1] + fac_2 * src_2[1]); \ dst[1] = DOWNSHIFT(tmp, 16); \ tmp = (fac_1 * src_1[2] + fac_2 * src_2[2]); \ dst[2] = DOWNSHIFT(tmp, 16); #include "scale_bilinear_y.h" #define FUNC_NAME scale_uint16_x_4_y_bilinear_c #define TYPE uint16_t #ifdef HQ #define INIT int64_t tmp; \ int fac_1, fac_2;\ fac_1 = ctx->table_v.pixels[scanline].factor_i[0];\ fac_2 = ctx->table_v.pixels[scanline].factor_i[1]; #else #define INIT uint32_t tmp; \ int fac_1, fac_2;\ fac_1 = ctx->table_v.pixels[scanline].factor_i[0];\ fac_2 = ctx->table_v.pixels[scanline].factor_i[1]; #endif #define NO_UINT8 #define SCALE \ tmp = (fac_1 * src_1[0] + fac_2 * src_2[0]); \ dst[0] = DOWNSHIFT(tmp, 16); \ tmp = (fac_1 * src_1[1] + fac_2 * src_2[1]); \ dst[1] = DOWNSHIFT(tmp, 16); \ tmp = (fac_1 * src_1[2] + fac_2 * src_2[2]); \ dst[2] = DOWNSHIFT(tmp, 16); \ tmp = (fac_1 * src_1[3] + fac_2 * src_2[3]); \ dst[3] = DOWNSHIFT(tmp, 16); #include "scale_bilinear_y.h" #define FUNC_NAME scale_float_x_1_y_bilinear_c #define TYPE float #define INIT float fac_1, fac_2;\ fac_1 = ctx->table_v.pixels[scanline].factor_f[0];\ fac_2 = ctx->table_v.pixels[scanline].factor_f[1]; #define NO_UINT8 #define SCALE \ dst[0] = (fac_1 * src_1[0] + fac_2 * src_2[0]); #include "scale_bilinear_y.h" #define FUNC_NAME scale_float_x_2_y_bilinear_c #define TYPE float #define INIT float fac_1, fac_2;\ fac_1 = ctx->table_v.pixels[scanline].factor_f[0];\ fac_2 = ctx->table_v.pixels[scanline].factor_f[1]; #define NO_UINT8 #define SCALE \ dst[0] = (fac_1 * src_1[0] + fac_2 * src_2[0]); \ dst[1] = (fac_1 * src_1[1] + fac_2 * src_2[1]); #include "scale_bilinear_y.h" #define FUNC_NAME scale_float_x_3_y_bilinear_c #define TYPE float #define INIT float fac_1, fac_2;\ fac_1 = ctx->table_v.pixels[scanline].factor_f[0];\ fac_2 = ctx->table_v.pixels[scanline].factor_f[1]; #define NO_UINT8 #define SCALE \ dst[0] = (fac_1 * src_1[0] + fac_2 * src_2[0]); \ dst[1] = (fac_1 * src_1[1] + fac_2 * src_2[1]); \ dst[2] = (fac_1 * src_1[2] + fac_2 * src_2[2]); #include "scale_bilinear_y.h" #define FUNC_NAME scale_float_x_4_y_bilinear_c #define TYPE float #define INIT float fac_1, fac_2;\ fac_1 = ctx->table_v.pixels[scanline].factor_f[0];\ fac_2 = ctx->table_v.pixels[scanline].factor_f[1]; #define NO_UINT8 #define SCALE \ dst[0] = (fac_1 * src_1[0] + fac_2 * src_2[0]); \ dst[1] = (fac_1 * src_1[1] + fac_2 * src_2[1]); \ dst[2] = (fac_1 * src_1[2] + fac_2 * src_2[2]); \ dst[3] = (fac_1 * src_1[3] + fac_2 * src_2[3]); \ #include "scale_bilinear_y.h" void gavl_init_scale_funcs_bilinear_noclip_c(gavl_scale_funcs_t * tab) { // fprintf(stderr, "gavl_init_scale_funcs_bilinear_c\n"); tab->funcs_x.scale_rgb_15 = scale_rgb_15_x_bilinear_c; tab->funcs_x.scale_rgb_16 = scale_rgb_16_x_bilinear_c; tab->funcs_x.scale_uint8_x_1_advance = scale_uint8_x_1_x_bilinear_c; tab->funcs_x.scale_uint8_x_1_noadvance = scale_uint8_x_1_x_bilinear_c; tab->funcs_x.scale_uint8_x_2 = scale_uint8_x_2_x_bilinear_c; tab->funcs_x.scale_uint8_x_3 = scale_uint8_x_3_x_bilinear_c; tab->funcs_x.scale_uint8_x_4 = scale_uint8_x_4_x_bilinear_c; tab->funcs_x.scale_uint16_x_1 = scale_uint16_x_1_x_bilinear_c; tab->funcs_x.scale_uint16_x_2 = scale_uint16_x_2_x_bilinear_c; tab->funcs_x.scale_uint16_x_3 = scale_uint16_x_3_x_bilinear_c; tab->funcs_x.scale_uint16_x_4 = scale_uint16_x_4_x_bilinear_c; tab->funcs_x.scale_float_x_1 = scale_float_x_1_x_bilinear_c; tab->funcs_x.scale_float_x_2 = scale_float_x_2_x_bilinear_c; tab->funcs_x.scale_float_x_3 = scale_float_x_3_x_bilinear_c; tab->funcs_x.scale_float_x_4 = scale_float_x_4_x_bilinear_c; tab->funcs_x.bits_rgb_15 = 16; tab->funcs_x.bits_rgb_16 = 16; tab->funcs_x.bits_uint8_advance = 16; tab->funcs_x.bits_uint8_noadvance = 16; tab->funcs_x.bits_uint16 = 16; tab->funcs_y.scale_rgb_15 = scale_rgb_15_y_bilinear_c; tab->funcs_y.scale_rgb_16 = scale_rgb_16_y_bilinear_c; tab->funcs_y.scale_uint8_x_1_noadvance = scale_uint8_x_1_y_bilinear_c; tab->funcs_y.scale_uint8_x_1_advance = scale_uint8_x_1_y_bilinear_c; tab->funcs_y.scale_uint8_x_2 = scale_uint8_x_2_y_bilinear_c; tab->funcs_y.scale_uint8_x_3 = scale_uint8_x_3_y_bilinear_c; tab->funcs_y.scale_uint8_x_4 = scale_uint8_x_4_y_bilinear_c; tab->funcs_y.scale_uint16_x_1 = scale_uint16_x_1_y_bilinear_c; tab->funcs_y.scale_uint16_x_2 = scale_uint16_x_2_y_bilinear_c; tab->funcs_y.scale_uint16_x_3 = scale_uint16_x_3_y_bilinear_c; tab->funcs_y.scale_uint16_x_4 = scale_uint16_x_4_y_bilinear_c; tab->funcs_y.scale_float_x_1 = scale_float_x_1_y_bilinear_c; tab->funcs_y.scale_float_x_2 = scale_float_x_2_y_bilinear_c; tab->funcs_y.scale_float_x_3 = scale_float_x_3_y_bilinear_c; tab->funcs_y.scale_float_x_4 = scale_float_x_4_y_bilinear_c; tab->funcs_y.bits_rgb_15 = 16; tab->funcs_y.bits_rgb_16 = 16; tab->funcs_y.bits_uint8_advance = 16; tab->funcs_y.bits_uint8_noadvance = 16; tab->funcs_y.bits_uint16 = 16; } bplaum-gavl-b9385e3/gavl/c/scale_bilinear_x.h000066400000000000000000000030151513252040200210650ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ static void (FUNC_NAME)(gavl_video_scale_context_t * ctx, int scanline, uint8_t * dest_start) { int i; uint8_t * src; TYPE * src_1, *src_2, *dst; #ifdef INIT INIT #endif src = ctx->src + scanline * ctx->src_stride; for(i = 0; i < ctx->dst_size; i++) { dst = (TYPE*)(dest_start); src_1 = (TYPE*)(src + ctx->offset->src_advance * ctx->table_h.pixels[i].index); src_2 = (TYPE*)((uint8_t*)(src_1) + ctx->offset->src_advance); SCALE dest_start += ctx->offset->dst_advance; } } #ifdef INIT #undef INIT #endif #undef FUNC_NAME #undef TYPE #undef SCALE bplaum-gavl-b9385e3/gavl/c/scale_bilinear_y.h000066400000000000000000000034341513252040200210730ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ static void (FUNC_NAME)(gavl_video_scale_context_t * ctx, int scanline, uint8_t * dest_start) { int i; #ifdef NO_UINT8 uint8_t * _src_1, * _src_2; #else #define _src_1 src_1 #define _src_2 src_2 #endif TYPE * src_1, *src_2, *dst; #ifdef INIT INIT #endif _src_1 = ctx->src + ctx->table_v.pixels[scanline].index * ctx->src_stride; _src_2 = _src_1 + ctx->src_stride; for(i = 0; i < ctx->dst_size; i++) { dst = (TYPE*)(dest_start); #ifdef NO_UINT8 src_1 = (TYPE*)(_src_1); src_2 = (TYPE*)(_src_2); #endif SCALE dest_start += ctx->offset->dst_advance; _src_1 += ctx->offset->src_advance; _src_2 += ctx->offset->src_advance; } } #ifdef INIT #undef INIT #endif #undef FUNC_NAME #undef TYPE #undef SCALE #ifdef _src_1 #undef _src_1 #endif #ifdef _src_2 #undef _src_2 #endif #ifdef NO_UINT8 #undef NO_UINT8 #endif bplaum-gavl-b9385e3/gavl/c/scale_generic_c.c000066400000000000000000000550251513252040200206720ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include #include #include "scale_macros.h" /* x-Direction */ #define FUNC_NAME scale_rgb_15_x_generic_c #define TYPE color_15 #define INIT int64_t tmp[3]; #define SCALE_INIT tmp[0] = 0; tmp[1] = 0; tmp[2] = 0; #define SCALE_ACCUM \ tmp[0] += (int64_t)ctx->table_h.pixels[i].factor_i[j] * src->r; \ tmp[1] += (int64_t)ctx->table_h.pixels[i].factor_i[j] * src->g; \ tmp[2] += (int64_t)ctx->table_h.pixels[i].factor_i[j] * src->b; #define SCALE_FINISH \ tmp[0] = DOWNSHIFT(tmp[0], 16); \ tmp[1] = DOWNSHIFT(tmp[1], 16); \ tmp[2] = DOWNSHIFT(tmp[2], 16); \ RECLIP_H(tmp[0],0); \ RECLIP_H(tmp[1],1); \ RECLIP_H(tmp[2],2); \ dst->r = tmp[0]; \ dst->g = tmp[1]; \ dst->b = tmp[2]; #include "scale_generic_x.h" #define FUNC_NAME scale_rgb_16_x_generic_c #define TYPE color_16 #define INIT int64_t tmp[3]; #define SCALE_INIT tmp[0] = 0; tmp[1] = 0; tmp[2] = 0; #define SCALE_ACCUM \ tmp[0] += (int64_t)ctx->table_h.pixels[i].factor_i[j] * src->r; \ tmp[1] += (int64_t)ctx->table_h.pixels[i].factor_i[j] * src->g; \ tmp[2] += (int64_t)ctx->table_h.pixels[i].factor_i[j] * src->b; #define SCALE_FINISH \ tmp[0] = DOWNSHIFT(tmp[0], 16); \ tmp[1] = DOWNSHIFT(tmp[1], 16); \ tmp[2] = DOWNSHIFT(tmp[2], 16); \ RECLIP_H(tmp[0],0); \ RECLIP_H(tmp[1],1); \ RECLIP_H(tmp[2],2); \ dst->r = tmp[0]; \ dst->g = tmp[1]; \ dst->b = tmp[2]; #include "scale_generic_x.h" #define FUNC_NAME scale_uint8_x_1_x_generic_c #define TYPE uint8_t #define INIT int64_t tmp; #define SCALE_INIT tmp = 0; #define SCALE_ACCUM tmp += (int64_t)ctx->table_h.pixels[i].factor_i[j] * src[0]; #define SCALE_FINISH \ tmp = DOWNSHIFT(tmp, 16); \ RECLIP_H(tmp,ctx->plane); \ dst[0] = tmp; #include "scale_generic_x.h" #define FUNC_NAME scale_uint8_x_2_x_generic_c #define TYPE uint8_t #define INIT int64_t tmp[2]; #define SCALE_INIT tmp[0] = 0; tmp[1] = 0; #define SCALE_ACCUM tmp[0] += (int64_t)ctx->table_h.pixels[i].factor_i[j] * src[0];\ tmp[1] += (int64_t)ctx->table_h.pixels[i].factor_i[j] * src[1]; #define SCALE_FINISH \ tmp[0] = DOWNSHIFT(tmp[0], 16); \ RECLIP_H(tmp[0],ctx->plane); \ dst[0] = tmp[0];\ tmp[1] = DOWNSHIFT(tmp[1], 16); \ RECLIP_H(tmp[1],ctx->plane); \ dst[1] = tmp[1]; #include "scale_generic_x.h" #define FUNC_NAME scale_uint8_x_3_x_generic_c #define TYPE uint8_t #define INIT int64_t tmp[3]; #define SCALE_INIT tmp[0] = 0;tmp[1] = 0;tmp[2] = 0; #define SCALE_ACCUM \ tmp[0] += (int64_t)ctx->table_h.pixels[i].factor_i[j] * src[0];\ tmp[1] += (int64_t)ctx->table_h.pixels[i].factor_i[j] * src[1];\ tmp[2] += (int64_t)ctx->table_h.pixels[i].factor_i[j] * src[2]; #define SCALE_FINISH \ tmp[0] = DOWNSHIFT(tmp[0], 16); \ tmp[1] = DOWNSHIFT(tmp[1], 16); \ tmp[2] = DOWNSHIFT(tmp[2], 16); \ RECLIP_H(tmp[0],0); \ RECLIP_H(tmp[1],1); \ RECLIP_H(tmp[2],2); \ dst[0] = tmp[0]; \ dst[1] = tmp[1]; \ dst[2] = tmp[2]; #include "scale_generic_x.h" #define FUNC_NAME scale_uint8_x_4_x_generic_c #define TYPE uint8_t #define INIT int64_t tmp[4]; #define SCALE_INIT tmp[0] = 0;tmp[1] = 0;tmp[2] = 0;tmp[3] = 0; #define SCALE_ACCUM \ tmp[0] += (int64_t)ctx->table_h.pixels[i].factor_i[j] * src[0];\ tmp[1] += (int64_t)ctx->table_h.pixels[i].factor_i[j] * src[1];\ tmp[2] += (int64_t)ctx->table_h.pixels[i].factor_i[j] * src[2];\ tmp[3] += (int64_t)ctx->table_h.pixels[i].factor_i[j] * src[3]; #define SCALE_FINISH \ tmp[0] = DOWNSHIFT(tmp[0], 16); \ tmp[1] = DOWNSHIFT(tmp[1], 16); \ tmp[2] = DOWNSHIFT(tmp[2], 16); \ tmp[3] = DOWNSHIFT(tmp[3], 16); \ RECLIP_H(tmp[0],0); \ RECLIP_H(tmp[1],1); \ RECLIP_H(tmp[2],2); \ RECLIP_H(tmp[3],3); \ dst[0] = tmp[0]; \ dst[1] = tmp[1]; \ dst[2] = tmp[2]; \ dst[3] = tmp[3]; #include "scale_generic_x.h" #define FUNC_NAME scale_uint16_x_1_x_generic_c #define TYPE uint16_t #define INIT int64_t tmp; #define SCALE_INIT tmp = 0; #define SCALE_ACCUM \ tmp += (int64_t)ctx->table_h.pixels[i].factor_i[j] * src[0]; #define SCALE_FINISH \ tmp = DOWNSHIFT(tmp, 16); \ RECLIP_H(tmp,ctx->plane); \ dst[0] = tmp; #include "scale_generic_x.h" #define FUNC_NAME scale_uint16_x_2_x_generic_c #define TYPE uint16_t #define INIT int64_t tmp[2]; #define SCALE_INIT tmp[0] = 0;tmp[1] = 0; #define SCALE_ACCUM \ tmp[0] += (int64_t)ctx->table_h.pixels[i].factor_i[j] * src[0]; \ tmp[1] += (int64_t)ctx->table_h.pixels[i].factor_i[j] * src[1]; #define SCALE_FINISH \ tmp[0] = DOWNSHIFT(tmp[0], 16); \ tmp[1] = DOWNSHIFT(tmp[1], 16); \ RECLIP_H(tmp[0],0); \ RECLIP_H(tmp[1],1); \ dst[0] = tmp[0]; \ dst[1] = tmp[1]; #include "scale_generic_x.h" #define FUNC_NAME scale_uint16_x_3_x_generic_c #define TYPE uint16_t #define INIT int64_t tmp[3]; #define SCALE_INIT tmp[0] = 0;tmp[1] = 0;tmp[2] = 0; #define SCALE_ACCUM \ tmp[0] += (int64_t)ctx->table_h.pixels[i].factor_i[j] * src[0]; \ tmp[1] += (int64_t)ctx->table_h.pixels[i].factor_i[j] * src[1]; \ tmp[2] += (int64_t)ctx->table_h.pixels[i].factor_i[j] * src[2]; #define SCALE_FINISH \ tmp[0] = DOWNSHIFT(tmp[0], 16); \ tmp[1] = DOWNSHIFT(tmp[1], 16); \ tmp[2] = DOWNSHIFT(tmp[2], 16); \ RECLIP_H(tmp[0],0); \ RECLIP_H(tmp[1],1); \ RECLIP_H(tmp[2],2); \ dst[0] = tmp[0]; \ dst[1] = tmp[1]; \ dst[2] = tmp[2]; #include "scale_generic_x.h" #define FUNC_NAME scale_uint16_x_4_x_generic_c #define TYPE uint16_t #define INIT int64_t tmp[4]; #define SCALE_INIT \ tmp[0] = 0;\ tmp[1] = 0;\ tmp[2] = 0;\ tmp[3] = 0; #define SCALE_ACCUM \ tmp[0] += (int64_t)ctx->table_h.pixels[i].factor_i[j] * src[0]; \ tmp[1] += (int64_t)ctx->table_h.pixels[i].factor_i[j] * src[1]; \ tmp[2] += (int64_t)ctx->table_h.pixels[i].factor_i[j] * src[2]; \ tmp[3] += (int64_t)ctx->table_h.pixels[i].factor_i[j] * src[3]; #define SCALE_FINISH \ tmp[0] = DOWNSHIFT(tmp[0], 16); \ tmp[1] = DOWNSHIFT(tmp[1], 16); \ tmp[2] = DOWNSHIFT(tmp[2], 16); \ tmp[3] = DOWNSHIFT(tmp[3], 16); \ RECLIP_H(tmp[0],0); \ RECLIP_H(tmp[1],1); \ RECLIP_H(tmp[2],2); \ RECLIP_H(tmp[3],3); \ dst[0] = tmp[0]; \ dst[1] = tmp[1]; \ dst[2] = tmp[2]; \ dst[3] = tmp[3]; #include "scale_generic_x.h" #define FUNC_NAME scale_float_x_1_x_generic_c #define TYPE float #define SCALE_INIT dst[0] = 0.0; #define SCALE_ACCUM \ dst[0] += ctx->table_h.pixels[i].factor_f[j] * src[0]; #define SCALE_FINISH \ RECLIP_FLOAT(dst[0], 0); #include "scale_generic_x.h" #define FUNC_NAME scale_float_x_2_x_generic_c #define TYPE float #define SCALE_INIT dst[0] = 0.0; dst[1] = 0.0; #define SCALE_ACCUM \ dst[0] += ctx->table_h.pixels[i].factor_f[j] * src[0];\ dst[1] += ctx->table_h.pixels[i].factor_f[j] * src[1]; #define SCALE_FINISH \ RECLIP_FLOAT(dst[0], 0); \ RECLIP_FLOAT(dst[1], 1); #include "scale_generic_x.h" #define FUNC_NAME scale_float_x_3_x_generic_c #define TYPE float #define SCALE_INIT dst[0] = 0.0; dst[1] = 0.0; dst[2] = 0.0; #define SCALE_ACCUM \ dst[0] += ctx->table_h.pixels[i].factor_f[j] * src[0];\ dst[1] += ctx->table_h.pixels[i].factor_f[j] * src[1];\ dst[2] += ctx->table_h.pixels[i].factor_f[j] * src[2]; #define SCALE_FINISH \ RECLIP_FLOAT(dst[0], 0); \ RECLIP_FLOAT(dst[1], 1); \ RECLIP_FLOAT(dst[2], 2); \ #include "scale_generic_x.h" #define FUNC_NAME scale_float_x_4_x_generic_c #define TYPE float #define SCALE_INIT dst[0] = 0.0; dst[1] = 0.0; dst[2] = 0.0; dst[3] = 0.0; #define SCALE_ACCUM \ dst[0] += ctx->table_h.pixels[i].factor_f[j] * src[0]; \ dst[1] += ctx->table_h.pixels[i].factor_f[j] * src[1]; \ dst[2] += ctx->table_h.pixels[i].factor_f[j] * src[2]; \ dst[3] += ctx->table_h.pixels[i].factor_f[j] * src[3]; #define SCALE_FINISH \ RECLIP_FLOAT(dst[0], 0); \ RECLIP_FLOAT(dst[1], 1); \ RECLIP_FLOAT(dst[2], 2); \ RECLIP_FLOAT(dst[3], 3); #include "scale_generic_x.h" /* y-Direction */ #define FUNC_NAME scale_rgb_15_y_generic_c #define TYPE color_15 #define INIT int64_t tmp[3]; #define SCALE_INIT tmp[0] = 0;tmp[1] = 0;tmp[2] = 0; #define SCALE_ACCUM \ tmp[0] += ctx->table_v.pixels[scanline].factor_i[j] * src->r;\ tmp[1] += ctx->table_v.pixels[scanline].factor_i[j] * src->g;\ tmp[2] += ctx->table_v.pixels[scanline].factor_i[j] * src->b; #define SCALE_FINISH \ tmp[0] = DOWNSHIFT(tmp[0], 16); \ tmp[1] = DOWNSHIFT(tmp[1], 16); \ tmp[2] = DOWNSHIFT(tmp[2], 16); \ RECLIP_V(tmp[0], 0); \ RECLIP_V(tmp[1], 1); \ RECLIP_V(tmp[2], 2); \ dst->r = tmp[0]; \ dst->g = tmp[1]; \ dst->b = tmp[2]; #include "scale_generic_y.h" #define FUNC_NAME scale_rgb_16_y_generic_c #define TYPE color_16 #define INIT int64_t tmp[3]; #define SCALE_INIT tmp[0] = 0;tmp[1] = 0;tmp[2] = 0; #define SCALE_ACCUM \ tmp[0] += ctx->table_v.pixels[scanline].factor_i[j] * src->r;\ tmp[1] += ctx->table_v.pixels[scanline].factor_i[j] * src->g;\ tmp[2] += ctx->table_v.pixels[scanline].factor_i[j] * src->b; #define SCALE_FINISH \ tmp[0] = DOWNSHIFT(tmp[0], 16); \ tmp[1] = DOWNSHIFT(tmp[1], 16); \ tmp[2] = DOWNSHIFT(tmp[2], 16); \ RECLIP_V(tmp[0], 0); \ RECLIP_V(tmp[1], 1); \ RECLIP_V(tmp[2], 2); \ dst->r = tmp[0]; \ dst->g = tmp[1]; \ dst->b = tmp[2]; #include "scale_generic_y.h" #define FUNC_NAME scale_uint8_x_1_y_generic_c #define TYPE uint8_t #define INIT int64_t tmp; #define SCALE_INIT tmp = 0; #define SCALE_ACCUM \ tmp += ctx->table_v.pixels[scanline].factor_i[j] * src[0]; #define SCALE_FINISH \ tmp = DOWNSHIFT(tmp, 16); \ RECLIP_V(tmp, ctx->plane); \ dst[0] = tmp; #include "scale_generic_y.h" #define FUNC_NAME scale_uint8_x_2_y_generic_c #define TYPE uint8_t #define INIT int64_t tmp[2]; #define SCALE_INIT tmp[0] = 0;tmp[1] = 0; #define SCALE_ACCUM \ tmp[0] += ctx->table_v.pixels[scanline].factor_i[j] * src[0];\ tmp[1] += ctx->table_v.pixels[scanline].factor_i[j] * src[1]; #define SCALE_FINISH \ tmp[0] = DOWNSHIFT(tmp[0], 16); \ tmp[1] = DOWNSHIFT(tmp[1], 16); \ RECLIP_V(tmp[0], 0); \ RECLIP_V(tmp[1], 1); \ dst[0] = tmp[0]; \ dst[1] = tmp[1]; #include "scale_generic_y.h" #define FUNC_NAME scale_uint8_x_3_y_generic_c #define TYPE uint8_t #define INIT int64_t tmp[3]; #define SCALE_INIT tmp[0] = 0;tmp[1] = 0;tmp[2] = 0; #define SCALE_ACCUM \ tmp[0] += ctx->table_v.pixels[scanline].factor_i[j] * src[0];\ tmp[1] += ctx->table_v.pixels[scanline].factor_i[j] * src[1];\ tmp[2] += ctx->table_v.pixels[scanline].factor_i[j] * src[2]; #define SCALE_FINISH \ tmp[0] = DOWNSHIFT(tmp[0], 16); \ tmp[1] = DOWNSHIFT(tmp[1], 16); \ tmp[2] = DOWNSHIFT(tmp[2], 16); \ RECLIP_V(tmp[0], 0); \ RECLIP_V(tmp[1], 1); \ RECLIP_V(tmp[2], 2); \ dst[0] = tmp[0]; \ dst[1] = tmp[1]; \ dst[2] = tmp[2]; #include "scale_generic_y.h" #define FUNC_NAME scale_uint8_x_4_y_generic_c #define TYPE uint8_t #define INIT int64_t tmp[4]; #define SCALE_INIT tmp[0] = 0;tmp[1] = 0;tmp[2] = 0;tmp[3] = 0; #define SCALE_ACCUM \ tmp[0] += ctx->table_v.pixels[scanline].factor_i[j] * src[0];\ tmp[1] += ctx->table_v.pixels[scanline].factor_i[j] * src[1];\ tmp[2] += ctx->table_v.pixels[scanline].factor_i[j] * src[2];\ tmp[3] += ctx->table_v.pixels[scanline].factor_i[j] * src[3]; #define SCALE_FINISH \ tmp[0] = DOWNSHIFT(tmp[0], 16); \ tmp[1] = DOWNSHIFT(tmp[1], 16); \ tmp[2] = DOWNSHIFT(tmp[2], 16); \ tmp[3] = DOWNSHIFT(tmp[3], 16); \ RECLIP_V(tmp[0], 0); \ RECLIP_V(tmp[1], 1); \ RECLIP_V(tmp[2], 2); \ RECLIP_V(tmp[3], 3); \ dst[0] = tmp[0]; \ dst[1] = tmp[1]; \ dst[2] = tmp[2]; \ dst[3] = tmp[3]; #include "scale_generic_y.h" #define FUNC_NAME scale_uint16_x_1_y_generic_c #define TYPE uint16_t #define INIT int64_t tmp; #define SCALE_INIT tmp = 0; #define SCALE_ACCUM \ tmp += (int64_t)ctx->table_v.pixels[scanline].factor_i[j] * src[0]; #define SCALE_FINISH \ tmp = DOWNSHIFT(tmp, 16); \ RECLIP_V(tmp, ctx->plane); \ dst[0] = tmp; #include "scale_generic_y.h" #define FUNC_NAME scale_uint16_x_2_y_generic_c #define TYPE uint16_t #define INIT int64_t tmp[2]; #define SCALE_INIT tmp[0] = 0;tmp[1] = 0; #define SCALE_ACCUM \ tmp[0] += (int64_t)ctx->table_v.pixels[scanline].factor_i[j] * src[0];\ tmp[1] += (int64_t)ctx->table_v.pixels[scanline].factor_i[j] * src[1]; #define SCALE_FINISH \ tmp[0] = DOWNSHIFT(tmp[0], 16); \ tmp[1] = DOWNSHIFT(tmp[1], 16); \ RECLIP_V(tmp[0], 0); \ RECLIP_V(tmp[1], 1); \ dst[0] = tmp[0]; \ dst[1] = tmp[1]; #include "scale_generic_y.h" #define FUNC_NAME scale_uint16_x_3_y_generic_c #define TYPE uint16_t #define INIT int64_t tmp[3]; #define SCALE_INIT tmp[0] = 0;tmp[1] = 0;tmp[2] = 0; #define SCALE_ACCUM \ tmp[0] += (int64_t)ctx->table_v.pixels[scanline].factor_i[j] * src[0];\ tmp[1] += (int64_t)ctx->table_v.pixels[scanline].factor_i[j] * src[1];\ tmp[2] += (int64_t)ctx->table_v.pixels[scanline].factor_i[j] * src[2]; #define SCALE_FINISH \ tmp[0] = DOWNSHIFT(tmp[0], 16); \ tmp[1] = DOWNSHIFT(tmp[1], 16); \ tmp[2] = DOWNSHIFT(tmp[2], 16); \ RECLIP_V(tmp[0], 0); \ RECLIP_V(tmp[1], 1); \ RECLIP_V(tmp[2], 2); \ dst[0] = tmp[0]; \ dst[1] = tmp[1]; \ dst[2] = tmp[2]; #include "scale_generic_y.h" #define FUNC_NAME scale_uint16_x_4_y_generic_c #define TYPE uint16_t #define INIT int64_t tmp[4]; #define SCALE_INIT tmp[0] = 0;tmp[1] = 0;tmp[2] = 0;tmp[3] = 0; #define SCALE_ACCUM \ tmp[0] += (int64_t)ctx->table_v.pixels[scanline].factor_i[j] * src[0];\ tmp[1] += (int64_t)ctx->table_v.pixels[scanline].factor_i[j] * src[1];\ tmp[2] += (int64_t)ctx->table_v.pixels[scanline].factor_i[j] * src[2];\ tmp[3] += (int64_t)ctx->table_v.pixels[scanline].factor_i[j] * src[3]; #define SCALE_FINISH \ tmp[0] = DOWNSHIFT(tmp[0], 16); \ tmp[1] = DOWNSHIFT(tmp[1], 16); \ tmp[2] = DOWNSHIFT(tmp[2], 16); \ tmp[3] = DOWNSHIFT(tmp[3], 16); \ RECLIP_V(tmp[0], 0); \ RECLIP_V(tmp[1], 1); \ RECLIP_V(tmp[2], 2); \ RECLIP_V(tmp[3], 3); \ dst[0] = tmp[0]; \ dst[1] = tmp[1]; \ dst[2] = tmp[2]; \ dst[3] = tmp[3]; #include "scale_generic_y.h" #define FUNC_NAME scale_float_x_1_y_generic_c #define TYPE float #define SCALE_INIT dst[0] = 0.0; #define SCALE_ACCUM \ dst[0] += ctx->table_v.pixels[scanline].factor_f[j] * src[0]; #define SCALE_FINISH \ RECLIP_FLOAT(dst[0], 0); #include "scale_generic_y.h" #define FUNC_NAME scale_float_x_2_y_generic_c #define TYPE float #define SCALE_INIT dst[0] = 0.0; dst[1] = 0.0; #define SCALE_ACCUM \ dst[0] += ctx->table_v.pixels[scanline].factor_f[j] * src[0];\ dst[1] += ctx->table_v.pixels[scanline].factor_f[j] * src[1]; #define SCALE_FINISH \ RECLIP_FLOAT(dst[0], 0); \ RECLIP_FLOAT(dst[1], 1); #include "scale_generic_y.h" #define FUNC_NAME scale_float_x_3_y_generic_c #define TYPE float #define SCALE_INIT dst[0] = 0.0; dst[1] = 0.0; dst[2] = 0.0; #define SCALE_ACCUM \ dst[0] += ctx->table_v.pixels[scanline].factor_f[j] * src[0];\ dst[1] += ctx->table_v.pixels[scanline].factor_f[j] * src[1];\ dst[2] += ctx->table_v.pixels[scanline].factor_f[j] * src[2];\ #define SCALE_FINISH \ RECLIP_FLOAT(dst[0], 0); \ RECLIP_FLOAT(dst[1], 1); \ RECLIP_FLOAT(dst[2], 2); #include "scale_generic_y.h" #define FUNC_NAME scale_float_x_4_y_generic_c #define TYPE float #define SCALE_INIT dst[0] = 0.0; dst[1] = 0.0; dst[2] = 0.0;dst[3] = 0.0; #define SCALE_ACCUM \ dst[0] += ctx->table_v.pixels[scanline].factor_f[j] * src[0];\ dst[1] += ctx->table_v.pixels[scanline].factor_f[j] * src[1];\ dst[2] += ctx->table_v.pixels[scanline].factor_f[j] * src[2];\ dst[3] += ctx->table_v.pixels[scanline].factor_f[j] * src[3]; #define SCALE_FINISH \ RECLIP_FLOAT(dst[0], 0); \ RECLIP_FLOAT(dst[1], 1); \ RECLIP_FLOAT(dst[2], 2); \ RECLIP_FLOAT(dst[3], 3); #include "scale_generic_y.h" #ifdef NOCLIP void gavl_init_scale_funcs_generic_noclip_c(gavl_scale_funcs_t * tab) #else void gavl_init_scale_funcs_generic_c(gavl_scale_funcs_t * tab) #endif { // fprintf(stderr, "gavl_init_scale_funcs_generic_c\n"); tab->funcs_x.scale_rgb_15 = scale_rgb_15_x_generic_c; tab->funcs_x.scale_rgb_16 = scale_rgb_16_x_generic_c; tab->funcs_x.scale_uint8_x_1_advance = scale_uint8_x_1_x_generic_c; tab->funcs_x.scale_uint8_x_1_noadvance = scale_uint8_x_1_x_generic_c; tab->funcs_x.scale_uint8_x_2 = scale_uint8_x_2_x_generic_c; tab->funcs_x.scale_uint8_x_3 = scale_uint8_x_3_x_generic_c; tab->funcs_x.scale_uint8_x_4 = scale_uint8_x_4_x_generic_c; tab->funcs_x.scale_uint16_x_1 = scale_uint16_x_1_x_generic_c; tab->funcs_x.scale_uint16_x_2 = scale_uint16_x_2_x_generic_c; tab->funcs_x.scale_uint16_x_3 = scale_uint16_x_3_x_generic_c; tab->funcs_x.scale_uint16_x_4 = scale_uint16_x_4_x_generic_c; tab->funcs_x.scale_float_x_1 = scale_float_x_1_x_generic_c; tab->funcs_x.scale_float_x_2 = scale_float_x_2_x_generic_c; tab->funcs_x.scale_float_x_3 = scale_float_x_3_x_generic_c; tab->funcs_x.scale_float_x_4 = scale_float_x_4_x_generic_c; tab->funcs_x.bits_rgb_15 = 16; tab->funcs_x.bits_rgb_16 = 16; tab->funcs_x.bits_uint8_advance = 16; tab->funcs_x.bits_uint8_noadvance = 16; tab->funcs_x.bits_uint16 = 16; tab->funcs_y.scale_rgb_15 = scale_rgb_15_y_generic_c; tab->funcs_y.scale_rgb_16 = scale_rgb_16_y_generic_c; tab->funcs_y.scale_uint8_x_1_advance = scale_uint8_x_1_y_generic_c; tab->funcs_y.scale_uint8_x_1_noadvance = scale_uint8_x_1_y_generic_c; tab->funcs_y.scale_uint8_x_2 = scale_uint8_x_2_y_generic_c; tab->funcs_y.scale_uint8_x_3 = scale_uint8_x_3_y_generic_c; tab->funcs_y.scale_uint8_x_4 = scale_uint8_x_4_y_generic_c; tab->funcs_y.scale_uint16_x_1 = scale_uint16_x_1_y_generic_c; tab->funcs_y.scale_uint16_x_2 = scale_uint16_x_2_y_generic_c; tab->funcs_y.scale_uint16_x_3 = scale_uint16_x_3_y_generic_c; tab->funcs_y.scale_uint16_x_4 = scale_uint16_x_4_y_generic_c; tab->funcs_y.scale_float_x_1 = scale_float_x_1_y_generic_c; tab->funcs_y.scale_float_x_2 = scale_float_x_2_y_generic_c; tab->funcs_y.scale_float_x_3 = scale_float_x_3_y_generic_c; tab->funcs_y.scale_float_x_4 = scale_float_x_4_y_generic_c; tab->funcs_y.bits_rgb_15 = 16; tab->funcs_y.bits_rgb_16 = 16; tab->funcs_y.bits_uint8_advance = 16; tab->funcs_y.bits_uint8_noadvance = 16; tab->funcs_y.bits_uint16 = 16; } bplaum-gavl-b9385e3/gavl/c/scale_generic_noclip_c.c000066400000000000000000000017271513252040200222360ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #define NOCLIP #include "scale_generic_c.c" bplaum-gavl-b9385e3/gavl/c/scale_generic_x.h000066400000000000000000000033001513252040200207110ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ static void (FUNC_NAME)(gavl_video_scale_context_t * ctx, int scanline, uint8_t * dest_start) { int i, j; uint8_t * _src, * src_start; TYPE *dst, *src; #ifdef INIT INIT #endif src_start = ctx->src + scanline * ctx->src_stride; for(i = 0; i < ctx->dst_size; i++) { dst = (TYPE*)(dest_start); SCALE_INIT _src = src_start + ctx->offset->src_advance * ctx->table_h.pixels[i].index; for(j = 0; j < ctx->table_h.factors_per_pixel; j++) { src = (TYPE*)_src; SCALE_ACCUM _src += ctx->offset->src_advance; } SCALE_FINISH dest_start += ctx->offset->dst_advance; } } #ifdef INIT #undef INIT #endif #undef FUNC_NAME #undef TYPE #undef SCALE_INIT #undef SCALE_ACCUM #undef SCALE_FINISH bplaum-gavl-b9385e3/gavl/c/scale_generic_y.h000066400000000000000000000032131513252040200207150ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ static void (FUNC_NAME)(gavl_video_scale_context_t * ctx, int scanline, uint8_t * dest_start) { int i, j; uint8_t * _src; TYPE *dst, *src; #ifdef INIT INIT #endif for(i = 0; i < ctx->dst_size; i++) { dst = (TYPE*)(dest_start); SCALE_INIT _src = ctx->src + ctx->src_stride * ctx->table_v.pixels[scanline].index + i * ctx->offset->src_advance; for(j = 0; j < ctx->table_v.factors_per_pixel; j++) { src = (TYPE*)_src; SCALE_ACCUM _src += ctx->src_stride; } SCALE_FINISH dest_start += ctx->offset->dst_advance; } } #ifdef INIT #undef INIT #endif #undef FUNC_NAME #undef TYPE #undef SCALE_INIT #undef SCALE_ACCUM #undef SCALE_FINISH bplaum-gavl-b9385e3/gavl/c/scale_macros.h000066400000000000000000000036651513252040200202500ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #ifdef NOCLIP #define RECLIP_H(a,idx) #define RECLIP_V(a,idx) #define RECLIP_FLOAT(a, idx) #else #define RECLIP_H(a,idx) \ if(GAVL_UNLIKELY(a < ctx->min_values_h[idx])) a = ctx->min_values_h[idx]; \ if(GAVL_UNLIKELY(a > ctx->max_values_h[idx])) a = ctx->max_values_h[idx] #define RECLIP_V(a,idx) \ if(GAVL_UNLIKELY(a < ctx->min_values_v[idx])) a = ctx->min_values_v[idx]; \ if(GAVL_UNLIKELY(a > ctx->max_values_v[idx])) a = ctx->max_values_v[idx] #define RECLIP_FLOAT(a, idx) \ if(GAVL_UNLIKELY(a < ctx->min_values_f[idx])) \ a = ctx->min_values_f[idx]; \ if(GAVL_UNLIKELY(a > ctx->max_values_f[idx])) \ a = ctx->max_values_f[idx] #endif /* Downshifting routines, with and without rounding */ #ifdef HQ #define DOWNSHIFT(a, bits) (((a) + (1<<(bits-1)))>>bits) #else #define DOWNSHIFT(a, bits) ((a) >> bits) #endif /* Packed formats for 15/16 colors (idea from libvisual) */ typedef struct { uint16_t b:5, g:6, r:5; } color_16; typedef struct { uint16_t b:5, g:5, r:5; } color_15; bplaum-gavl-b9385e3/gavl/c/scale_nearest_c.c000066400000000000000000000410611513252040200207120ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include /* memcpy */ #include #include #include #include #include /* gavl_memcpy */ #define SCALE_FUNC_HEAD \ for(i = 0; i < ctx->dst_rect.w; i++) \ { #define SCALE_FUNC_TAIL \ } /* Nearest neighbor x-y direction */ static void scale_rgb_16_xy_nearest_c(gavl_video_scale_context_t * ctx, int scanline, uint8_t * dest_start) { int i; uint16_t * src, *dst; src = (uint16_t*)(ctx->src + ctx->table_v.pixels[scanline].index * ctx->src_stride); dst = (uint16_t*)(dest_start); SCALE_FUNC_HEAD *dst = src[ctx->table_h.pixels[i].index]; dst++; SCALE_FUNC_TAIL } static void scale_uint8_x_1_xy_nearest_c(gavl_video_scale_context_t * ctx, int scanline, uint8_t * dest_start) { int i; uint8_t * src; src = ctx->src + ctx->table_v.pixels[scanline].index * ctx->src_stride; SCALE_FUNC_HEAD *(dest_start) = *(src + ctx->table_h.pixels[i].index * ctx->offset->src_advance); dest_start += ctx->offset->dst_advance; SCALE_FUNC_TAIL } static void scale_uint8_x_3_xy_nearest_c(gavl_video_scale_context_t * ctx, int scanline, uint8_t * dest_start) { int i; uint8_t * src, *src1; src = ctx->src + (ctx->table_v.pixels[scanline].index * ctx->src_stride); SCALE_FUNC_HEAD src1 = src + ctx->table_h.pixels[i].index*ctx->offset->src_advance; dest_start[0] = src1[0]; dest_start[1] = src1[1]; dest_start[2] = src1[2]; dest_start += ctx->offset->dst_advance; SCALE_FUNC_TAIL } static void scale_uint8_x_4_xy_nearest_c(gavl_video_scale_context_t * ctx, int scanline, uint8_t * dest_start) { int i; uint32_t * src, *dst; src = (uint32_t*)(ctx->src + ctx->table_v.pixels[scanline].index * ctx->src_stride); dst = (uint32_t*)(dest_start); SCALE_FUNC_HEAD *dst = src[ctx->table_h.pixels[i].index]; dst++; SCALE_FUNC_TAIL } static void scale_uint16_x_1_xy_nearest_c(gavl_video_scale_context_t * ctx, int scanline, uint8_t * dest_start) { int i; uint16_t * src, *src1, *dst; src = (uint16_t *)(ctx->src + (ctx->table_v.pixels[scanline].index * ctx->src_stride)); dst = (uint16_t *)(dest_start); SCALE_FUNC_HEAD src1 = src + ctx->table_h.pixels[i].index; *dst = *src1; dst++; SCALE_FUNC_TAIL } static void scale_uint16_x_3_xy_nearest_c(gavl_video_scale_context_t * ctx, int scanline, uint8_t * dest_start) { int i; uint16_t * src, *src1; src = (uint16_t *)(ctx->src + (ctx->table_v.pixels[scanline].index * ctx->src_stride)); SCALE_FUNC_HEAD src1 = src + ctx->table_h.pixels[i].index*3; memcpy(dest_start, src1, 6); dest_start += ctx->offset->dst_advance; SCALE_FUNC_TAIL } static void scale_uint16_x_4_xy_nearest_c(gavl_video_scale_context_t * ctx, int scanline, uint8_t * dest_start) { int i; uint16_t * src, *src1; src = (uint16_t*)(ctx->src + ctx->table_v.pixels[scanline].index * ctx->src_stride); SCALE_FUNC_HEAD src1 = src + ctx->table_h.pixels[i].index*4; memcpy(dest_start, src1, 8); dest_start += ctx->offset->dst_advance; SCALE_FUNC_TAIL } static void scale_float_x_1_xy_nearest_c(gavl_video_scale_context_t * ctx, int scanline, uint8_t * dest_start) { int i; float * src, *src1; src = (float*)(ctx->src + (ctx->table_v.pixels[scanline].index * ctx->src_stride)); SCALE_FUNC_HEAD src1 = src + ctx->table_h.pixels[i].index; memcpy(dest_start, src1, sizeof(float)); dest_start += ctx->offset->dst_advance; SCALE_FUNC_TAIL } static void scale_float_x_2_xy_nearest_c(gavl_video_scale_context_t * ctx, int scanline, uint8_t * dest_start) { int i; float * src, *src1; src = (float*)(ctx->src + (ctx->table_v.pixels[scanline].index * ctx->src_stride)); SCALE_FUNC_HEAD src1 = src + ctx->table_h.pixels[i].index*2; memcpy(dest_start, src1, 2 * sizeof(float)); dest_start += ctx->offset->dst_advance; SCALE_FUNC_TAIL } static void scale_float_x_3_xy_nearest_c(gavl_video_scale_context_t * ctx, int scanline, uint8_t * dest_start) { int i; float * src, *src1; src = (float*)(ctx->src + (ctx->table_v.pixels[scanline].index * ctx->src_stride)); SCALE_FUNC_HEAD src1 = src + ctx->table_h.pixels[i].index*3; memcpy(dest_start, src1, 3 * sizeof(float)); dest_start += ctx->offset->dst_advance; SCALE_FUNC_TAIL } static void scale_float_x_4_xy_nearest_c(gavl_video_scale_context_t * ctx, int scanline, uint8_t * dest_start) { int i; float * src, *src1; src = (float*)(ctx->src + ctx->table_v.pixels[scanline].index * ctx->src_stride); SCALE_FUNC_HEAD src1 = src + ctx->table_h.pixels[i].index*4; memcpy(dest_start, src1, 4 * sizeof(float)); dest_start += ctx->offset->dst_advance; SCALE_FUNC_TAIL } /* Nearest neighbor x direction */ static void scale_rgb_16_x_nearest_c(gavl_video_scale_context_t * ctx, int scanline, uint8_t * dest_start) { int i; uint16_t * src, *dst; src = (uint16_t*)(ctx->src + scanline * ctx->src_stride); dst = (uint16_t*)(dest_start); SCALE_FUNC_HEAD *dst = src[ctx->table_h.pixels[i].index]; dst++; SCALE_FUNC_TAIL } static void scale_uint8_x_1_x_nearest_c(gavl_video_scale_context_t * ctx, int scanline, uint8_t * dest_start) { int i; uint8_t * src; src = (uint8_t*)(ctx->src + scanline * ctx->src_stride); SCALE_FUNC_HEAD *(dest_start) = *(src + ctx->table_h.pixels[i].index * ctx->offset->src_advance); dest_start += ctx->offset->dst_advance; SCALE_FUNC_TAIL } static void scale_uint8_x_3_x_nearest_c(gavl_video_scale_context_t * ctx, int scanline, uint8_t * dest_start) { int i; uint8_t * src, *src1; src = ctx->src + (scanline * ctx->src_stride); SCALE_FUNC_HEAD src1 = src + ctx->table_h.pixels[i].index*ctx->offset->src_advance; dest_start[0] = src1[0]; dest_start[1] = src1[1]; dest_start[2] = src1[2]; dest_start += ctx->offset->dst_advance; SCALE_FUNC_TAIL } static void scale_uint8_x_4_x_nearest_c(gavl_video_scale_context_t * ctx, int scanline, uint8_t * dest_start) { int i; uint8_t * src, *src1; src = (uint8_t*)(ctx->src + scanline * ctx->src_stride); SCALE_FUNC_HEAD src1 = src + ctx->table_h.pixels[i].index*4; dest_start[0] = src1[0]; dest_start[1] = src1[1]; dest_start[2] = src1[2]; dest_start[3] = src1[3]; dest_start += 4; SCALE_FUNC_TAIL } static void scale_uint16_x_1_x_nearest_c(gavl_video_scale_context_t * ctx, int scanline, uint8_t * dest_start) { int i; uint16_t * src, *src1, *dst; src = (uint16_t *)(ctx->src + (scanline * ctx->src_stride)); dst = (uint16_t *)(dest_start); SCALE_FUNC_HEAD src1 = src + ctx->table_h.pixels[i].index; *dst = *src1; dst++; SCALE_FUNC_TAIL } static void scale_uint16_x_3_x_nearest_c(gavl_video_scale_context_t * ctx, int scanline, uint8_t * dest_start) { int i; uint16_t * src, *src1; src = (uint16_t *)(ctx->src + (scanline * ctx->src_stride)); SCALE_FUNC_HEAD src1 = src + ctx->table_h.pixels[i].index*3; memcpy(dest_start, src1, 6); dest_start += ctx->offset->dst_advance; SCALE_FUNC_TAIL } static void scale_uint16_x_4_x_nearest_c(gavl_video_scale_context_t * ctx, int scanline, uint8_t * dest_start) { int i; uint16_t * src, *src1; src = (uint16_t*)(ctx->src + scanline * ctx->src_stride); SCALE_FUNC_HEAD src1 = src + ctx->table_h.pixels[i].index*4; memcpy(dest_start, src1, 8); dest_start += ctx->offset->dst_advance; SCALE_FUNC_TAIL } static void scale_float_x_1_x_nearest_c(gavl_video_scale_context_t * ctx, int scanline, uint8_t * dest_start) { int i; float * src, *src1; src = (float*)(ctx->src + (scanline * ctx->src_stride)); SCALE_FUNC_HEAD src1 = src + ctx->table_h.pixels[i].index; memcpy(dest_start, src1, sizeof(float)); dest_start += ctx->offset->dst_advance; SCALE_FUNC_TAIL } static void scale_float_x_2_x_nearest_c(gavl_video_scale_context_t * ctx, int scanline, uint8_t * dest_start) { int i; float * src, *src1; src = (float*)(ctx->src + (scanline * ctx->src_stride)); SCALE_FUNC_HEAD src1 = src + ctx->table_h.pixels[i].index*2; memcpy(dest_start, src1, 2*sizeof(float)); dest_start += ctx->offset->dst_advance; SCALE_FUNC_TAIL } static void scale_float_x_3_x_nearest_c(gavl_video_scale_context_t * ctx, int scanline, uint8_t * dest_start) { int i; float * src, *src1; src = (float*)(ctx->src + (scanline * ctx->src_stride)); SCALE_FUNC_HEAD src1 = src + ctx->table_h.pixels[i].index*3; memcpy(dest_start, src1, 3*sizeof(float)); dest_start += ctx->offset->dst_advance; SCALE_FUNC_TAIL } static void scale_float_x_4_x_nearest_c(gavl_video_scale_context_t * ctx, int scanline, uint8_t * dest_start) { int i; float * src, *src1; src = (float*)(ctx->src + scanline * ctx->src_stride); SCALE_FUNC_HEAD src1 = src + ctx->table_h.pixels[i].index*4; memcpy(dest_start, src1, 4*sizeof(float)); dest_start += ctx->offset->dst_advance; SCALE_FUNC_TAIL } /* Nearest neighbor y direction */ static void scale_rgb_16_y_nearest_c(gavl_video_scale_context_t * ctx, int scanline, uint8_t * dest_start) { memcpy(dest_start, ctx->src + ctx->table_v.pixels[scanline].index * ctx->src_stride, 2 * ctx->dst_rect.w); } static void scale_uint8_x_1_y_nearest_c(gavl_video_scale_context_t * ctx, int scanline, uint8_t * dest_start) { int i; uint8_t * src; src = (uint8_t*)(ctx->src + ctx->table_v.pixels[scanline].index * ctx->src_stride); SCALE_FUNC_HEAD *(dest_start) = *src; dest_start += ctx->offset->dst_advance; src += ctx->offset->src_advance; SCALE_FUNC_TAIL } static void scale_uint8_x_3_y_nearest_c(gavl_video_scale_context_t * ctx, int scanline, uint8_t * dest_start) { gavl_memcpy(dest_start, ctx->src + ctx->table_v.pixels[scanline].index * ctx->src_stride, ctx->offset->src_advance * ctx->dst_rect.w); } static void scale_uint8_x_4_y_nearest_c(gavl_video_scale_context_t * ctx, int scanline, uint8_t * dest_start) { gavl_memcpy(dest_start, ctx->src + ctx->table_v.pixels[scanline].index * ctx->src_stride, ctx->offset->src_advance * ctx->dst_rect.w); } static void scale_uint16_x_1_y_nearest_c(gavl_video_scale_context_t * ctx, int scanline, uint8_t * dest_start) { gavl_memcpy(dest_start, ctx->src + ctx->table_v.pixels[scanline].index * ctx->src_stride, 2 * ctx->dst_rect.w); } static void scale_uint16_x_3_y_nearest_c(gavl_video_scale_context_t * ctx, int scanline, uint8_t * dest_start) { gavl_memcpy(dest_start, ctx->src + ctx->table_v.pixels[scanline].index * ctx->src_stride, ctx->offset->src_advance * ctx->dst_rect.w); } static void scale_uint16_x_4_y_nearest_c(gavl_video_scale_context_t * ctx, int scanline, uint8_t * dest_start) { gavl_memcpy(dest_start, ctx->src + ctx->table_v.pixels[scanline].index * ctx->src_stride, ctx->offset->src_advance * ctx->dst_rect.w); } static void scale_float_x_1_y_nearest_c(gavl_video_scale_context_t * ctx, int scanline, uint8_t * dest_start) { gavl_memcpy(dest_start, ctx->src + ctx->table_v.pixels[scanline].index * ctx->src_stride, ctx->offset->src_advance * ctx->dst_rect.w); } static void scale_float_x_2_y_nearest_c(gavl_video_scale_context_t * ctx, int scanline, uint8_t * dest_start) { gavl_memcpy(dest_start, ctx->src + ctx->table_v.pixels[scanline].index * ctx->src_stride, ctx->offset->src_advance * ctx->dst_rect.w); } static void scale_float_x_3_y_nearest_c(gavl_video_scale_context_t * ctx, int scanline, uint8_t * dest_start) { gavl_memcpy(dest_start, ctx->src + ctx->table_v.pixels[scanline].index * ctx->src_stride, ctx->offset->src_advance * ctx->dst_rect.w); } static void scale_float_x_4_y_nearest_c(gavl_video_scale_context_t * ctx, int scanline, uint8_t * dest_start) { gavl_memcpy(dest_start, ctx->src + ctx->table_v.pixels[scanline].index * ctx->src_stride, ctx->offset->src_advance * ctx->dst_rect.w); } void gavl_init_scale_funcs_nearest_c(gavl_scale_funcs_t * tab, int src_advance, int dst_advance) { // fprintf(stderr, "gavl_init_scale_funcs_nearest_c\n"); tab->funcs_xy.scale_rgb_15 = scale_rgb_16_xy_nearest_c; tab->funcs_xy.scale_rgb_16 = scale_rgb_16_xy_nearest_c; tab->funcs_xy.scale_uint8_x_1_advance = scale_uint8_x_1_xy_nearest_c; tab->funcs_xy.scale_uint8_x_1_noadvance = scale_uint8_x_1_xy_nearest_c; tab->funcs_xy.scale_uint8_x_2 = scale_rgb_16_xy_nearest_c; if((src_advance == 4) && (dst_advance == 4)) tab->funcs_xy.scale_uint8_x_3 = scale_uint8_x_4_xy_nearest_c; else tab->funcs_xy.scale_uint8_x_3 = scale_uint8_x_3_xy_nearest_c; tab->funcs_xy.scale_uint8_x_4 = scale_uint8_x_4_xy_nearest_c; tab->funcs_xy.scale_uint16_x_1 = scale_uint16_x_1_xy_nearest_c; tab->funcs_xy.scale_uint16_x_2 = scale_uint8_x_4_xy_nearest_c; tab->funcs_xy.scale_uint16_x_3 = scale_uint16_x_3_xy_nearest_c; tab->funcs_xy.scale_uint16_x_4 = scale_uint16_x_4_xy_nearest_c; tab->funcs_xy.scale_float_x_1 = scale_float_x_1_xy_nearest_c; tab->funcs_xy.scale_float_x_2 = scale_float_x_2_xy_nearest_c; tab->funcs_xy.scale_float_x_3 = scale_float_x_3_xy_nearest_c; tab->funcs_xy.scale_float_x_4 = scale_float_x_4_xy_nearest_c; tab->funcs_xy.bits_rgb_15 = 0; tab->funcs_xy.bits_rgb_16 = 0; tab->funcs_xy.bits_uint8_advance = 0; tab->funcs_xy.bits_uint8_noadvance = 0; tab->funcs_xy.bits_uint16 = 0; tab->funcs_x.scale_rgb_15 = scale_rgb_16_x_nearest_c; tab->funcs_x.scale_rgb_16 = scale_rgb_16_x_nearest_c; tab->funcs_x.scale_uint8_x_1_noadvance = scale_uint8_x_1_x_nearest_c; tab->funcs_x.scale_uint8_x_1_advance = scale_uint8_x_1_x_nearest_c; tab->funcs_x.scale_uint8_x_2 = scale_rgb_16_x_nearest_c; if((src_advance == 4) && (dst_advance == 4)) tab->funcs_x.scale_uint8_x_3 = scale_uint8_x_4_x_nearest_c; else tab->funcs_x.scale_uint8_x_3 = scale_uint8_x_3_x_nearest_c; tab->funcs_x.scale_uint8_x_4 = scale_uint8_x_4_x_nearest_c; tab->funcs_x.scale_uint16_x_1 = scale_uint16_x_1_x_nearest_c; tab->funcs_x.scale_uint16_x_2 = scale_uint8_x_4_x_nearest_c; tab->funcs_x.scale_uint16_x_3 = scale_uint16_x_3_x_nearest_c; tab->funcs_x.scale_uint16_x_4 = scale_uint16_x_4_x_nearest_c; tab->funcs_x.scale_float_x_1 = scale_float_x_1_x_nearest_c; tab->funcs_x.scale_float_x_2 = scale_float_x_2_x_nearest_c; tab->funcs_x.scale_float_x_3 = scale_float_x_3_x_nearest_c; tab->funcs_x.scale_float_x_4 = scale_float_x_4_x_nearest_c; tab->funcs_x.bits_rgb_15 = 0; tab->funcs_x.bits_rgb_16 = 0; tab->funcs_x.bits_uint8_advance = 0; tab->funcs_x.bits_uint8_noadvance = 0; tab->funcs_x.bits_uint16 = 0; tab->funcs_y.scale_rgb_15 = scale_rgb_16_y_nearest_c; tab->funcs_y.scale_rgb_16 = scale_rgb_16_y_nearest_c; tab->funcs_y.scale_uint8_x_1_advance = scale_uint8_x_1_y_nearest_c; tab->funcs_y.scale_uint8_x_1_noadvance = scale_uint8_x_1_y_nearest_c; tab->funcs_y.scale_uint8_x_2 = scale_rgb_16_y_nearest_c; if((src_advance == 4) && (dst_advance == 4)) tab->funcs_y.scale_uint8_x_3 = scale_uint8_x_4_y_nearest_c; else tab->funcs_y.scale_uint8_x_3 = scale_uint8_x_3_y_nearest_c; tab->funcs_y.scale_uint8_x_4 = scale_uint8_x_4_y_nearest_c; tab->funcs_y.scale_uint16_x_1 = scale_uint16_x_1_y_nearest_c; tab->funcs_y.scale_uint16_x_2 = scale_uint8_x_4_y_nearest_c; tab->funcs_y.scale_uint16_x_3 = scale_uint16_x_3_y_nearest_c; tab->funcs_y.scale_uint16_x_4 = scale_uint16_x_4_y_nearest_c; tab->funcs_y.scale_float_x_1 = scale_float_x_1_y_nearest_c; tab->funcs_y.scale_float_x_2 = scale_float_x_2_y_nearest_c; tab->funcs_y.scale_float_x_3 = scale_float_x_3_y_nearest_c; tab->funcs_y.scale_float_x_4 = scale_float_x_4_y_nearest_c; tab->funcs_y.bits_rgb_15 = 0; tab->funcs_y.bits_rgb_16 = 0; tab->funcs_y.bits_uint8_advance = 0; tab->funcs_y.bits_uint8_noadvance = 0; tab->funcs_y.bits_uint16 = 0; } bplaum-gavl-b9385e3/gavl/c/scale_quadratic_c.c000066400000000000000000000755131513252040200212370ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include #include #include "scale_macros.h" /* x-Direction */ #define FUNC_NAME scale_rgb_15_x_quadratic_c #define TYPE color_15 #define INIT int64_t tmp; #define SCALE \ tmp = ((int64_t)ctx->table_h.pixels[i].factor_i[0] * src_1->r + \ (int64_t)ctx->table_h.pixels[i].factor_i[1] * src_2->r + \ (int64_t)ctx->table_h.pixels[i].factor_i[2] * src_3->r); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_H(tmp,0); \ dst->r = tmp; \ tmp = ((int64_t)ctx->table_h.pixels[i].factor_i[0] * src_1->g + \ (int64_t)ctx->table_h.pixels[i].factor_i[1] * src_2->g + \ (int64_t)ctx->table_h.pixels[i].factor_i[2] * src_3->g); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_H(tmp,1); \ dst->g = tmp; \ tmp = ((int64_t)ctx->table_h.pixels[i].factor_i[0] * src_1->b + \ (int64_t)ctx->table_h.pixels[i].factor_i[1] * src_2->b + \ (int64_t)ctx->table_h.pixels[i].factor_i[2] * src_3->b); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_H(tmp,2); \ dst->b = tmp; \ #define NUM_TAPS 3 #include "scale_x.h" #define FUNC_NAME scale_rgb_16_x_quadratic_c #define TYPE color_16 #define INIT int64_t tmp; #define SCALE \ tmp = ((int64_t)ctx->table_h.pixels[i].factor_i[0] * src_1->r + \ (int64_t)ctx->table_h.pixels[i].factor_i[1] * src_2->r + \ (int64_t)ctx->table_h.pixels[i].factor_i[2] * src_3->r); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_H(tmp,0); \ dst->r = tmp; \ tmp = ((int64_t)ctx->table_h.pixels[i].factor_i[0] * src_1->g + \ (int64_t)ctx->table_h.pixels[i].factor_i[1] * src_2->g + \ (int64_t)ctx->table_h.pixels[i].factor_i[2] * src_3->g); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_H(tmp,1); \ dst->g = tmp; \ tmp = ((int64_t)ctx->table_h.pixels[i].factor_i[0] * src_1->b + \ (int64_t)ctx->table_h.pixels[i].factor_i[1] * src_2->b + \ (int64_t)ctx->table_h.pixels[i].factor_i[2] * src_3->b);\ tmp=DOWNSHIFT(tmp,16);\ RECLIP_H(tmp,2); \ dst->b = tmp; \ #define NUM_TAPS 3 #include "scale_x.h" #define FUNC_NAME scale_uint8_x_1_x_quadratic_c #define TYPE uint8_t #define INIT int64_t tmp; #define SCALE \ tmp = ((int64_t)ctx->table_h.pixels[i].factor_i[0] * src_1[0] + \ (int64_t)ctx->table_h.pixels[i].factor_i[1] * src_2[0] + \ (int64_t)ctx->table_h.pixels[i].factor_i[2] * src_3[0]); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_H(tmp,ctx->plane); \ dst[0] = tmp; #define NUM_TAPS 3 #include "scale_x.h" #define FUNC_NAME scale_uint8_x_2_x_quadratic_c #define TYPE uint8_t #define INIT int64_t tmp; #define SCALE \ tmp = ((int64_t)ctx->table_h.pixels[i].factor_i[0] * src_1[0] + \ (int64_t)ctx->table_h.pixels[i].factor_i[1] * src_2[0] + \ (int64_t)ctx->table_h.pixels[i].factor_i[2] * src_3[0]); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_H(tmp,0); \ dst[0] = tmp; \ tmp = ((int64_t)ctx->table_h.pixels[i].factor_i[0] * src_1[1] + \ (int64_t)ctx->table_h.pixels[i].factor_i[1] * src_2[1] + \ (int64_t)ctx->table_h.pixels[i].factor_i[2] * src_3[1]); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_H(tmp,1); \ dst[1] = tmp; #define NUM_TAPS 3 #include "scale_x.h" #define FUNC_NAME scale_uint8_x_3_x_quadratic_c #define TYPE uint8_t #define INIT int64_t tmp; #define SCALE \ tmp = ((int64_t)ctx->table_h.pixels[i].factor_i[0] * src_1[0] + \ (int64_t)ctx->table_h.pixels[i].factor_i[1] * src_2[0] + \ (int64_t)ctx->table_h.pixels[i].factor_i[2] * src_3[0]); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_H(tmp,0); \ dst[0] = tmp; \ tmp = ((int64_t)ctx->table_h.pixels[i].factor_i[0] * src_1[1] + \ (int64_t)ctx->table_h.pixels[i].factor_i[1] * src_2[1] + \ (int64_t)ctx->table_h.pixels[i].factor_i[2] * src_3[1]); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_H(tmp,1); \ dst[1] = tmp; \ tmp = ((int64_t)ctx->table_h.pixels[i].factor_i[0] * src_1[2] + \ (int64_t)ctx->table_h.pixels[i].factor_i[1] * src_2[2] + \ (int64_t)ctx->table_h.pixels[i].factor_i[2] * src_3[2]); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_H(tmp,2); \ dst[2] = tmp; #define NUM_TAPS 3 #include "scale_x.h" #define FUNC_NAME scale_uint8_x_4_x_quadratic_c #define TYPE uint8_t #define INIT int64_t tmp; #define SCALE \ tmp = ((int64_t)ctx->table_h.pixels[i].factor_i[0] * src_1[0] + \ (int64_t)ctx->table_h.pixels[i].factor_i[1] * src_2[0] + \ (int64_t)ctx->table_h.pixels[i].factor_i[2] * src_3[0]); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_H(tmp,0); \ dst[0] = tmp; \ tmp = ((int64_t)ctx->table_h.pixels[i].factor_i[0] * src_1[1] + \ (int64_t)ctx->table_h.pixels[i].factor_i[1] * src_2[1] + \ (int64_t)ctx->table_h.pixels[i].factor_i[2] * src_3[1]); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_H(tmp,1); \ dst[1] = tmp; \ tmp = ((int64_t)ctx->table_h.pixels[i].factor_i[0] * src_1[2] + \ (int64_t)ctx->table_h.pixels[i].factor_i[1] * src_2[2] + \ (int64_t)ctx->table_h.pixels[i].factor_i[2] * src_3[2]); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_H(tmp,2); \ dst[2] = tmp; \ tmp = ((int64_t)ctx->table_h.pixels[i].factor_i[0] * src_1[3] + \ (int64_t)ctx->table_h.pixels[i].factor_i[1] * src_2[3] + \ (int64_t)ctx->table_h.pixels[i].factor_i[2] * src_3[3]); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_H(tmp,3); \ dst[3] = tmp; #define NUM_TAPS 3 #include "scale_x.h" #define FUNC_NAME scale_uint16_x_1_x_quadratic_c #define TYPE uint16_t #define INIT int64_t tmp; #define SCALE \ tmp = ((int64_t)ctx->table_h.pixels[i].factor_i[0] * src_1[0] + \ (int64_t)ctx->table_h.pixels[i].factor_i[1] * src_2[0] + \ (int64_t)ctx->table_h.pixels[i].factor_i[2] * src_3[0]); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_H(tmp,ctx->plane); \ dst[0] = tmp; #define NUM_TAPS 3 #include "scale_x.h" #define FUNC_NAME scale_uint16_x_2_x_quadratic_c #define TYPE uint16_t #define INIT int64_t tmp; #define SCALE \ tmp = ((int64_t)ctx->table_h.pixels[i].factor_i[0] * src_1[0] + \ (int64_t)ctx->table_h.pixels[i].factor_i[1] * src_2[0] + \ (int64_t)ctx->table_h.pixels[i].factor_i[2] * src_3[0]); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_H(tmp,0); \ dst[0] = tmp; \ tmp = ((int64_t)ctx->table_h.pixels[i].factor_i[0] * src_1[1] + \ (int64_t)ctx->table_h.pixels[i].factor_i[1] * src_2[1] + \ (int64_t)ctx->table_h.pixels[i].factor_i[2] * src_3[1]); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_H(tmp,1); \ dst[1] = tmp; #define NUM_TAPS 3 #include "scale_x.h" #define FUNC_NAME scale_uint16_x_3_x_quadratic_c #define TYPE uint16_t #define INIT int64_t tmp; #define SCALE \ tmp = ((int64_t)ctx->table_h.pixels[i].factor_i[0] * src_1[0] + \ (int64_t)ctx->table_h.pixels[i].factor_i[1] * src_2[0] + \ (int64_t)ctx->table_h.pixels[i].factor_i[2] * src_3[0]); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_H(tmp,0); \ dst[0] = tmp; \ tmp = ((int64_t)ctx->table_h.pixels[i].factor_i[0] * src_1[1] + \ (int64_t)ctx->table_h.pixels[i].factor_i[1] * src_2[1] + \ (int64_t)ctx->table_h.pixels[i].factor_i[2] * src_3[1]); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_H(tmp,1); \ dst[1] = tmp; \ tmp = ((int64_t)ctx->table_h.pixels[i].factor_i[0] * src_1[2] + \ (int64_t)ctx->table_h.pixels[i].factor_i[1] * src_2[2] + \ (int64_t)ctx->table_h.pixels[i].factor_i[2] * src_3[2]); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_H(tmp,2); \ dst[2] = tmp; #define NUM_TAPS 3 #include "scale_x.h" #define FUNC_NAME scale_uint16_x_4_x_quadratic_c #define TYPE uint16_t #define INIT int64_t tmp; #define SCALE \ tmp = ((int64_t)ctx->table_h.pixels[i].factor_i[0] * src_1[0] + \ (int64_t)ctx->table_h.pixels[i].factor_i[1] * src_2[0] + \ (int64_t)ctx->table_h.pixels[i].factor_i[2] * src_3[0]); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_H(tmp,0); \ dst[0] = tmp; \ tmp = ((int64_t)ctx->table_h.pixels[i].factor_i[0] * src_1[1] + \ (int64_t)ctx->table_h.pixels[i].factor_i[1] * src_2[1] + \ (int64_t)ctx->table_h.pixels[i].factor_i[2] * src_3[1]); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_H(tmp,1); \ dst[1] = tmp; \ tmp = ((int64_t)ctx->table_h.pixels[i].factor_i[0] * src_1[2] + \ (int64_t)ctx->table_h.pixels[i].factor_i[1] * src_2[2] + \ (int64_t)ctx->table_h.pixels[i].factor_i[2] * src_3[2]); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_H(tmp,2); \ dst[2] = tmp; \ tmp = ((int64_t)ctx->table_h.pixels[i].factor_i[0] * src_1[3] + \ (int64_t)ctx->table_h.pixels[i].factor_i[1] * src_2[3] + \ (int64_t)ctx->table_h.pixels[i].factor_i[2] * src_3[3]); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_H(tmp,3); \ dst[3] = tmp; #define NUM_TAPS 3 #include "scale_x.h" #define FUNC_NAME scale_float_x_1_x_quadratic_c #define TYPE float #define SCALE \ dst[0] = (ctx->table_h.pixels[i].factor_f[0] * src_1[0] + \ ctx->table_h.pixels[i].factor_f[1] * src_2[0] + \ ctx->table_h.pixels[i].factor_f[2] * src_3[0]); \ RECLIP_FLOAT(dst[0], 0); #define NUM_TAPS 3 #include "scale_x.h" #define FUNC_NAME scale_float_x_2_x_quadratic_c #define TYPE float #define SCALE \ dst[0] = (ctx->table_h.pixels[i].factor_f[0] * src_1[0] + \ ctx->table_h.pixels[i].factor_f[1] * src_2[0] + \ ctx->table_h.pixels[i].factor_f[2] * src_3[0]); \ RECLIP_FLOAT(dst[0], 0); \ dst[1] = (ctx->table_h.pixels[i].factor_f[0] * src_1[1] + \ ctx->table_h.pixels[i].factor_f[1] * src_2[1] + \ ctx->table_h.pixels[i].factor_f[2] * src_3[1]); \ RECLIP_FLOAT(dst[1], 1); #define NUM_TAPS 3 #include "scale_x.h" #define FUNC_NAME scale_float_x_3_x_quadratic_c #define TYPE float #define SCALE \ dst[0] = (ctx->table_h.pixels[i].factor_f[0] * src_1[0] + \ ctx->table_h.pixels[i].factor_f[1] * src_2[0] + \ ctx->table_h.pixels[i].factor_f[2] * src_3[0]); \ RECLIP_FLOAT(dst[0], 0); \ dst[1] = (ctx->table_h.pixels[i].factor_f[0] * src_1[1] + \ ctx->table_h.pixels[i].factor_f[1] * src_2[1] + \ ctx->table_h.pixels[i].factor_f[2] * src_3[1]); \ RECLIP_FLOAT(dst[1], 1); \ dst[2] = (ctx->table_h.pixels[i].factor_f[0] * src_1[2] + \ ctx->table_h.pixels[i].factor_f[1] * src_2[2] + \ ctx->table_h.pixels[i].factor_f[2] * src_3[2]);\ RECLIP_FLOAT(dst[2], 2); \ #define NUM_TAPS 3 #include "scale_x.h" #define FUNC_NAME scale_float_x_4_x_quadratic_c #define TYPE float #define SCALE \ dst[0] = (ctx->table_h.pixels[i].factor_f[0] * src_1[0] + \ ctx->table_h.pixels[i].factor_f[1] * src_2[0] + \ ctx->table_h.pixels[i].factor_f[2] * src_3[0]); \ RECLIP_FLOAT(dst[0], 0); \ dst[1] = (ctx->table_h.pixels[i].factor_f[0] * src_1[1] + \ ctx->table_h.pixels[i].factor_f[1] * src_2[1] + \ ctx->table_h.pixels[i].factor_f[2] * src_3[1]); \ RECLIP_FLOAT(dst[1], 1); \ dst[2] = (ctx->table_h.pixels[i].factor_f[0] * src_1[2] + \ ctx->table_h.pixels[i].factor_f[1] * src_2[2] + \ ctx->table_h.pixels[i].factor_f[2] * src_3[2]); \ RECLIP_FLOAT(dst[2], 2); \ dst[3] = (ctx->table_h.pixels[i].factor_f[0] * src_1[3] + \ ctx->table_h.pixels[i].factor_f[1] * src_2[3] + \ ctx->table_h.pixels[i].factor_f[2] * src_3[3]);\ RECLIP_FLOAT(dst[3], 3); \ #define NUM_TAPS 3 #include "scale_x.h" /* y-Direction */ #define FUNC_NAME scale_rgb_15_y_quadratic_c #define TYPE color_15 #define INIT int64_t fac_1, fac_2, fac_3; \ int64_t tmp; \ fac_1 = ctx->table_v.pixels[scanline].factor_i[0];\ fac_2 = ctx->table_v.pixels[scanline].factor_i[1];\ fac_3 = ctx->table_v.pixels[scanline].factor_i[2]; #define NO_UINT8 #define SCALE \ tmp = (fac_1 * src_1->r + \ fac_2 * src_2->r + \ fac_3 * src_3->r); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_V(tmp, 0); \ dst->r = tmp; \ tmp = (fac_1 * src_1->g + \ fac_2 * src_2->g + \ fac_3 * src_3->g); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_V(tmp, 1); \ dst->g = tmp; \ tmp = (fac_1 * src_1->b + \ fac_2 * src_2->b + \ fac_3 * src_3->b); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_V(tmp, 2); \ dst->b = tmp; #define NUM_TAPS 3 #include "scale_y.h" #define FUNC_NAME scale_rgb_16_y_quadratic_c #define TYPE color_16 #define INIT int64_t fac_1, fac_2, fac_3;\ int64_t tmp; \ fac_1 = ctx->table_v.pixels[scanline].factor_i[0];\ fac_2 = ctx->table_v.pixels[scanline].factor_i[1];\ fac_3 = ctx->table_v.pixels[scanline].factor_i[2]; #define NO_UINT8 #define SCALE \ tmp = (fac_1 * src_1->r + \ fac_2 * src_2->r + \ fac_3 * src_3->r); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_V(tmp, 0); \ dst->r = tmp; \ tmp = (fac_1 * src_1->g + \ fac_2 * src_2->g + \ fac_3 * src_3->g); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_V(tmp, 1); \ dst->g = tmp; \ tmp = (fac_1 * src_1->b + \ fac_2 * src_2->b + \ fac_3 * src_3->b); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_V(tmp, 2); \ dst->b = tmp; \ #define NUM_TAPS 3 #include "scale_y.h" #define FUNC_NAME scale_uint8_x_1_y_quadratic_c #define TYPE uint8_t #define INIT int64_t fac_1, fac_2, fac_3, tmp; \ fac_1 = ctx->table_v.pixels[scanline].factor_i[0];\ fac_2 = ctx->table_v.pixels[scanline].factor_i[1];\ fac_3 = ctx->table_v.pixels[scanline].factor_i[2]; #define SCALE \ tmp = (fac_1 * src_1[0] + \ fac_2 * src_2[0] + \ fac_3 * src_3[0]); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_V(tmp, ctx->plane); \ dst[0] = tmp; #define NUM_TAPS 3 #include "scale_y.h" #define FUNC_NAME scale_uint8_x_2_y_quadratic_c #define TYPE uint8_t #define INIT int64_t fac_1, fac_2, fac_3, tmp; \ fac_1 = ctx->table_v.pixels[scanline].factor_i[0];\ fac_2 = ctx->table_v.pixels[scanline].factor_i[1];\ fac_3 = ctx->table_v.pixels[scanline].factor_i[2]; #define SCALE \ tmp = (fac_1 * src_1[0] + \ fac_2 * src_2[0] + \ fac_3 * src_3[0]); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_V(tmp, ctx->plane); \ dst[0] = tmp;\ tmp = (fac_1 * src_1[1] + \ fac_2 * src_2[1] + \ fac_3 * src_3[1]); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_V(tmp, ctx->plane); \ dst[1] = tmp; #define NUM_TAPS 3 #include "scale_y.h" #define FUNC_NAME scale_uint8_x_3_y_quadratic_c #define TYPE uint8_t #define INIT int64_t fac_1, fac_2, fac_3, tmp; \ fac_1 = ctx->table_v.pixels[scanline].factor_i[0];\ fac_2 = ctx->table_v.pixels[scanline].factor_i[1];\ fac_3 = ctx->table_v.pixels[scanline].factor_i[2]; #define SCALE \ tmp = (fac_1 * src_1[0] + \ fac_2 * src_2[0] + \ fac_3 * src_3[0]); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_V(tmp, 0); \ dst[0] = tmp; \ tmp = (fac_1 * src_1[1] + \ fac_2 * src_2[1] + \ fac_3 * src_3[1]); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_V(tmp, ctx->plane); \ dst[1] = tmp; \ tmp = (fac_1 * src_1[2] + \ fac_2 * src_2[2] + \ fac_3 * src_3[2]); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_V(tmp, ctx->plane); \ dst[2] = tmp; #define NUM_TAPS 3 #include "scale_y.h" #define FUNC_NAME scale_uint8_x_4_y_quadratic_c #define TYPE uint8_t #define INIT int64_t fac_1, fac_2, fac_3, tmp; \ fac_1 = ctx->table_v.pixels[scanline].factor_i[0];\ fac_2 = ctx->table_v.pixels[scanline].factor_i[1];\ fac_3 = ctx->table_v.pixels[scanline].factor_i[2]; #define SCALE \ tmp = (fac_1 * src_1[0] + \ fac_2 * src_2[0] + \ fac_3 * src_3[0]); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_V(tmp, 0); \ dst[0] = tmp; \ tmp = (fac_1 * src_1[1] + \ fac_2 * src_2[1] + \ fac_3 * src_3[1]); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_V(tmp, 1); \ dst[1] = tmp; \ tmp = (fac_1 * src_1[2] + \ fac_2 * src_2[2] + \ fac_3 * src_3[2]); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_V(tmp, 2); \ dst[2] = tmp; \ tmp = (fac_1 * src_1[3] + \ fac_2 * src_2[3] + \ fac_3 * src_3[3]); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_V(tmp, 3); \ dst[3] = tmp; #define NUM_TAPS 3 #include "scale_y.h" #define FUNC_NAME scale_uint16_x_1_y_quadratic_c #define TYPE uint16_t #define INIT int64_t tmp; \ int64_t fac_1, fac_2, fac_3; \ fac_1 = ctx->table_v.pixels[scanline].factor_i[0]; \ fac_2 = ctx->table_v.pixels[scanline].factor_i[1]; \ fac_3 = ctx->table_v.pixels[scanline].factor_i[2]; #define NO_UINT8 #define SCALE \ tmp = (fac_1 * src_1[0] + \ fac_2 * src_2[0] + \ fac_3 * src_3[0]); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_V(tmp, ctx->plane); \ dst[0] = tmp; #define NUM_TAPS 3 #include "scale_y.h" #define FUNC_NAME scale_uint16_x_2_y_quadratic_c #define TYPE uint16_t #define INIT int64_t tmp; \ int64_t fac_1, fac_2, fac_3; \ fac_1 = ctx->table_v.pixels[scanline].factor_i[0]; \ fac_2 = ctx->table_v.pixels[scanline].factor_i[1]; \ fac_3 = ctx->table_v.pixels[scanline].factor_i[2]; #define NO_UINT8 #define SCALE \ tmp = (fac_1 * src_1[0] + \ fac_2 * src_2[0] + \ fac_3 * src_3[0]); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_V(tmp, ctx->plane); \ dst[0] = tmp;\ tmp = (fac_1 * src_1[1] + \ fac_2 * src_2[1] + \ fac_3 * src_3[1]); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_V(tmp, ctx->plane); \ dst[1] = tmp; #define NUM_TAPS 3 #include "scale_y.h" #define FUNC_NAME scale_uint16_x_3_y_quadratic_c #define TYPE uint16_t #define INIT int64_t tmp; \ int64_t fac_1, fac_2, fac_3; \ fac_1 = ctx->table_v.pixels[scanline].factor_i[0];\ fac_2 = ctx->table_v.pixels[scanline].factor_i[1];\ fac_3 = ctx->table_v.pixels[scanline].factor_i[2]; #define NO_UINT8 #define SCALE \ tmp = (fac_1 * src_1[0] + \ fac_2 * src_2[0] + \ fac_3 * src_3[0]); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_V(tmp, 0); \ dst[0] = tmp; \ tmp = (fac_1 * src_1[1] + \ fac_2 * src_2[1] + \ fac_3 * src_3[1]); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_V(tmp, 1); \ dst[1] = tmp; \ tmp = (fac_1 * src_1[2] + \ fac_2 * src_2[2] + \ fac_3 * src_3[2]); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_V(tmp, 2); \ dst[2] = tmp; #define NUM_TAPS 3 #include "scale_y.h" #define FUNC_NAME scale_uint16_x_4_y_quadratic_c #define TYPE uint16_t #define INIT int64_t tmp;\ int64_t fac_1, fac_2, fac_3;\ fac_1 = ctx->table_v.pixels[scanline].factor_i[0];\ fac_2 = ctx->table_v.pixels[scanline].factor_i[1];\ fac_3 = ctx->table_v.pixels[scanline].factor_i[2]; #define NO_UINT8 #define SCALE \ tmp = (fac_1 * src_1[0] + \ fac_2 * src_2[0] + \ fac_3 * src_3[0]); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_V(tmp, 0); \ dst[0] = tmp; \ tmp = (fac_1 * src_1[1] + \ fac_2 * src_2[1] + \ fac_3 * src_3[1]); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_V(tmp, 1); \ dst[1] = tmp; \ tmp = (fac_1 * src_1[2] + \ fac_2 * src_2[2] + \ fac_3 * src_2[2]); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_V(tmp, 2); \ dst[2] = tmp; \ tmp = (fac_1 * src_1[3] + \ fac_2 * src_2[3] + \ fac_3 * src_3[3]); \ tmp=DOWNSHIFT(tmp,16);\ RECLIP_V(tmp, 3); \ dst[3] = tmp; #define NUM_TAPS 3 #include "scale_y.h" #define FUNC_NAME scale_float_x_1_y_quadratic_c #define TYPE float #define INIT float fac_1, fac_2, fac_3;\ fac_1 = ctx->table_v.pixels[scanline].factor_f[0];\ fac_2 = ctx->table_v.pixels[scanline].factor_f[1];\ fac_3 = ctx->table_v.pixels[scanline].factor_f[2]; #define NO_UINT8 #define SCALE \ dst[0] = (fac_1 * src_1[0] + \ fac_2 * src_2[0] + \ fac_3 * src_3[0]); \ RECLIP_FLOAT(dst[0], 0); #define NUM_TAPS 3 #include "scale_y.h" #define FUNC_NAME scale_float_x_2_y_quadratic_c #define TYPE float #define INIT float fac_1, fac_2, fac_3;\ fac_1 = ctx->table_v.pixels[scanline].factor_f[0];\ fac_2 = ctx->table_v.pixels[scanline].factor_f[1];\ fac_3 = ctx->table_v.pixels[scanline].factor_f[2]; #define NO_UINT8 #define SCALE \ dst[0] = (fac_1 * src_1[0] + \ fac_2 * src_2[0] + \ fac_3 * src_3[0]); \ RECLIP_FLOAT(dst[0], 0); \ dst[1] = (fac_1 * src_1[1] + \ fac_2 * src_2[1] + \ fac_3 * src_3[1]); \ RECLIP_FLOAT(dst[1], 1); #define NUM_TAPS 3 #include "scale_y.h" #define FUNC_NAME scale_float_x_3_y_quadratic_c #define TYPE float #define INIT float fac_1, fac_2, fac_3;\ fac_1 = ctx->table_v.pixels[scanline].factor_f[0];\ fac_2 = ctx->table_v.pixels[scanline].factor_f[1];\ fac_3 = ctx->table_v.pixels[scanline].factor_f[2]; #define NO_UINT8 #define SCALE \ dst[0] = (fac_1 * src_1[0] + \ fac_2 * src_2[0] + \ fac_3 * src_3[0]); \ RECLIP_FLOAT(dst[0], 0); \ dst[1] = (fac_1 * src_1[1] + \ fac_2 * src_2[1] + \ fac_3 * src_3[1]); \ RECLIP_FLOAT(dst[1], 1); \ dst[2] = (fac_1 * src_1[2] + \ fac_2 * src_2[2] + \ fac_3 * src_3[2]);\ RECLIP_FLOAT(dst[2], 2); #define NUM_TAPS 3 #include "scale_y.h" #define FUNC_NAME scale_float_x_4_y_quadratic_c #define TYPE float #define INIT float fac_1, fac_2, fac_3; \ fac_1 = ctx->table_v.pixels[scanline].factor_f[0]; \ fac_2 = ctx->table_v.pixels[scanline].factor_f[1]; \ fac_3 = ctx->table_v.pixels[scanline].factor_f[2]; #define NO_UINT8 #define SCALE \ dst[0] = (fac_1 * src_1[0] + \ fac_2 * src_2[0] + \ fac_3 * src_3[0]); \ RECLIP_FLOAT(dst[0], 0); \ dst[1] = (fac_1 * src_1[1] + \ fac_2 * src_2[1] + \ fac_3 * src_3[1]); \ RECLIP_FLOAT(dst[1], 1); \ dst[2] = (fac_1 * src_1[2] + \ fac_2 * src_2[2] + \ fac_3 * src_3[2]); \ RECLIP_FLOAT(dst[2], 2); \ dst[3] = (fac_1 * src_1[3] + \ fac_2 * src_2[3] + \ fac_3 * src_3[3]); \ RECLIP_FLOAT(dst[3], 3); #define NUM_TAPS 3 #include "scale_y.h" #ifdef NOCLIP void gavl_init_scale_funcs_quadratic_noclip_c(gavl_scale_funcs_t * tab) #else void gavl_init_scale_funcs_quadratic_c(gavl_scale_funcs_t * tab) #endif { // fprintf(stderr, "gavl_init_scale_funcs_quadratic_c\n"); tab->funcs_x.scale_rgb_15 = scale_rgb_15_x_quadratic_c; tab->funcs_x.scale_rgb_16 = scale_rgb_16_x_quadratic_c; tab->funcs_x.scale_uint8_x_1_advance = scale_uint8_x_1_x_quadratic_c; tab->funcs_x.scale_uint8_x_1_noadvance = scale_uint8_x_1_x_quadratic_c; tab->funcs_x.scale_uint8_x_2 = scale_uint8_x_2_x_quadratic_c; tab->funcs_x.scale_uint8_x_3 = scale_uint8_x_3_x_quadratic_c; tab->funcs_x.scale_uint8_x_4 = scale_uint8_x_4_x_quadratic_c; tab->funcs_x.scale_uint16_x_1 = scale_uint16_x_1_x_quadratic_c; tab->funcs_x.scale_uint16_x_2 = scale_uint16_x_2_x_quadratic_c; tab->funcs_x.scale_uint16_x_3 = scale_uint16_x_3_x_quadratic_c; tab->funcs_x.scale_uint16_x_4 = scale_uint16_x_4_x_quadratic_c; tab->funcs_x.scale_float_x_1 = scale_float_x_1_x_quadratic_c; tab->funcs_x.scale_float_x_2 = scale_float_x_2_x_quadratic_c; tab->funcs_x.scale_float_x_3 = scale_float_x_3_x_quadratic_c; tab->funcs_x.scale_float_x_4 = scale_float_x_4_x_quadratic_c; tab->funcs_x.bits_rgb_15 = 16; tab->funcs_x.bits_rgb_16 = 16; tab->funcs_x.bits_uint8_advance = 16; tab->funcs_x.bits_uint8_noadvance = 16; tab->funcs_x.bits_uint16 = 16; tab->funcs_y.scale_rgb_15 = scale_rgb_15_y_quadratic_c; tab->funcs_y.scale_rgb_16 = scale_rgb_16_y_quadratic_c; tab->funcs_y.scale_uint8_x_1_advance = scale_uint8_x_1_y_quadratic_c; tab->funcs_y.scale_uint8_x_1_noadvance = scale_uint8_x_1_y_quadratic_c; tab->funcs_y.scale_uint8_x_2 = scale_uint8_x_2_y_quadratic_c; tab->funcs_y.scale_uint8_x_3 = scale_uint8_x_3_y_quadratic_c; tab->funcs_y.scale_uint8_x_4 = scale_uint8_x_4_y_quadratic_c; tab->funcs_y.scale_uint16_x_1 = scale_uint16_x_1_y_quadratic_c; tab->funcs_y.scale_uint16_x_2 = scale_uint16_x_2_y_quadratic_c; tab->funcs_y.scale_uint16_x_3 = scale_uint16_x_3_y_quadratic_c; tab->funcs_y.scale_uint16_x_4 = scale_uint16_x_4_y_quadratic_c; tab->funcs_y.scale_float_x_1 = scale_float_x_1_y_quadratic_c; tab->funcs_y.scale_float_x_2 = scale_float_x_2_y_quadratic_c; tab->funcs_y.scale_float_x_3 = scale_float_x_3_y_quadratic_c; tab->funcs_y.scale_float_x_4 = scale_float_x_4_y_quadratic_c; tab->funcs_y.bits_rgb_15 = 16; tab->funcs_y.bits_rgb_16 = 16; tab->funcs_y.bits_uint8_advance = 16; tab->funcs_y.bits_uint8_noadvance = 16; tab->funcs_y.bits_uint16 = 16; } bplaum-gavl-b9385e3/gavl/c/scale_quadratic_noclip_c.c000066400000000000000000000550271513252040200226010ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include #include #include "scale_macros.h" /* x-Direction */ #define FUNC_NAME scale_rgb_15_x_quadratic_c #define TYPE color_15 #define SCALE \ dst->r = DOWNSHIFT(ctx->table_h.pixels[i].factor_i[0] * src_1->r + \ ctx->table_h.pixels[i].factor_i[1] * src_2->r + \ ctx->table_h.pixels[i].factor_i[2] * src_3->r, 16); \ dst->g = DOWNSHIFT(ctx->table_h.pixels[i].factor_i[0] * src_1->g + \ ctx->table_h.pixels[i].factor_i[1] * src_2->g + \ ctx->table_h.pixels[i].factor_i[2] * src_3->g, 16); \ dst->b = DOWNSHIFT(ctx->table_h.pixels[i].factor_i[0] * src_1->b + \ ctx->table_h.pixels[i].factor_i[1] * src_2->b + \ ctx->table_h.pixels[i].factor_i[2] * src_3->b, 16); #define NUM_TAPS 3 #include "scale_x.h" #define FUNC_NAME scale_rgb_16_x_quadratic_c #define TYPE color_16 #define SCALE \ dst->r = DOWNSHIFT(ctx->table_h.pixels[i].factor_i[0] * src_1->r + \ ctx->table_h.pixels[i].factor_i[1] * src_2->r + \ ctx->table_h.pixels[i].factor_i[2] * src_3->r, 16); \ dst->g = DOWNSHIFT(ctx->table_h.pixels[i].factor_i[0] * src_1->g + \ ctx->table_h.pixels[i].factor_i[1] * src_2->g + \ ctx->table_h.pixels[i].factor_i[2] * src_3->g, 16); \ dst->b = DOWNSHIFT(ctx->table_h.pixels[i].factor_i[0] * src_1->b + \ ctx->table_h.pixels[i].factor_i[1] * src_2->b + \ ctx->table_h.pixels[i].factor_i[2] * src_3->b, 16); #define NUM_TAPS 3 #include "scale_x.h" #define FUNC_NAME scale_uint8_x_1_x_quadratic_c #define TYPE uint8_t #define SCALE \ dst[0] = DOWNSHIFT(ctx->table_h.pixels[i].factor_i[0] * src_1[0] + \ ctx->table_h.pixels[i].factor_i[1] * src_2[0] + \ ctx->table_h.pixels[i].factor_i[2] * src_3[0], 16); #define NUM_TAPS 3 #include "scale_x.h" #define FUNC_NAME scale_uint8_x_2_x_quadratic_c #define TYPE uint8_t #define SCALE \ dst[0] = DOWNSHIFT(ctx->table_h.pixels[i].factor_i[0] * src_1[0] + \ ctx->table_h.pixels[i].factor_i[1] * src_2[0] + \ ctx->table_h.pixels[i].factor_i[2] * src_3[0], 16);\ dst[1] = DOWNSHIFT(ctx->table_h.pixels[i].factor_i[0] * src_1[1] + \ ctx->table_h.pixels[i].factor_i[1] * src_2[1] + \ ctx->table_h.pixels[i].factor_i[2] * src_3[1], 16); #define NUM_TAPS 3 #include "scale_x.h" #define FUNC_NAME scale_uint8_x_3_x_quadratic_c #define TYPE uint8_t #define SCALE \ dst[0] = DOWNSHIFT(ctx->table_h.pixels[i].factor_i[0] * src_1[0] + \ ctx->table_h.pixels[i].factor_i[1] * src_2[0] + \ ctx->table_h.pixels[i].factor_i[2] * src_3[0], 16); \ dst[1] = DOWNSHIFT(ctx->table_h.pixels[i].factor_i[0] * src_1[1] + \ ctx->table_h.pixels[i].factor_i[1] * src_2[1] + \ ctx->table_h.pixels[i].factor_i[2] * src_3[1], 16); \ dst[2] = DOWNSHIFT(ctx->table_h.pixels[i].factor_i[0] * src_1[2] + \ ctx->table_h.pixels[i].factor_i[1] * src_2[2] + \ ctx->table_h.pixels[i].factor_i[2] * src_3[2], 16); #define NUM_TAPS 3 #include "scale_x.h" #define FUNC_NAME scale_uint8_x_4_x_quadratic_c #define TYPE uint8_t #define SCALE \ dst[0] = DOWNSHIFT(ctx->table_h.pixels[i].factor_i[0] * src_1[0] + \ ctx->table_h.pixels[i].factor_i[1] * src_2[0] + \ ctx->table_h.pixels[i].factor_i[2] * src_3[0], 16); \ dst[1] = DOWNSHIFT(ctx->table_h.pixels[i].factor_i[0] * src_1[1] + \ ctx->table_h.pixels[i].factor_i[1] * src_2[1] + \ ctx->table_h.pixels[i].factor_i[2] * src_3[1], 16); \ dst[2] = DOWNSHIFT(ctx->table_h.pixels[i].factor_i[0] * src_1[2] + \ ctx->table_h.pixels[i].factor_i[1] * src_2[2] + \ ctx->table_h.pixels[i].factor_i[2] * src_3[2], 16); \ dst[3] = DOWNSHIFT(ctx->table_h.pixels[i].factor_i[0] * src_1[3] + \ ctx->table_h.pixels[i].factor_i[1] * src_2[3] + \ ctx->table_h.pixels[i].factor_i[2] * src_3[3], 16); #define NUM_TAPS 3 #include "scale_x.h" #define FUNC_NAME scale_uint16_x_1_x_quadratic_c #define TYPE uint16_t #define INIT uint32_t tmp; #define SCALE \ tmp = (ctx->table_h.pixels[i].factor_i[0] * src_1[0] + \ ctx->table_h.pixels[i].factor_i[1] * src_2[0] + \ ctx->table_h.pixels[i].factor_i[2] * src_3[0]); \ dst[0] = DOWNSHIFT(tmp, 16); #define NUM_TAPS 3 #include "scale_x.h" #define FUNC_NAME scale_uint16_x_2_x_quadratic_c #define TYPE uint16_t #define INIT uint32_t tmp; #define SCALE \ tmp = (ctx->table_h.pixels[i].factor_i[0] * src_1[0] + \ ctx->table_h.pixels[i].factor_i[1] * src_2[0] + \ ctx->table_h.pixels[i].factor_i[2] * src_3[0]); \ dst[0] = DOWNSHIFT(tmp, 16); \ tmp = (ctx->table_h.pixels[i].factor_i[0] * src_1[1] + \ ctx->table_h.pixels[i].factor_i[1] * src_2[1] + \ ctx->table_h.pixels[i].factor_i[2] * src_3[1]); \ dst[1] = DOWNSHIFT(tmp, 16); #define NUM_TAPS 3 #include "scale_x.h" #define FUNC_NAME scale_uint16_x_3_x_quadratic_c #define TYPE uint16_t #define INIT uint32_t tmp; #define SCALE \ tmp = (ctx->table_h.pixels[i].factor_i[0] * src_1[0] + \ ctx->table_h.pixels[i].factor_i[1] * src_2[0] + \ ctx->table_h.pixels[i].factor_i[2] * src_3[0]); \ dst[0] = DOWNSHIFT(tmp, 16); \ tmp = (ctx->table_h.pixels[i].factor_i[0] * src_1[1] + \ ctx->table_h.pixels[i].factor_i[1] * src_2[1] + \ ctx->table_h.pixels[i].factor_i[2] * src_3[1]); \ dst[1] = DOWNSHIFT(tmp, 16); \ tmp = (ctx->table_h.pixels[i].factor_i[0] * src_1[2] + \ ctx->table_h.pixels[i].factor_i[1] * src_2[2] + \ ctx->table_h.pixels[i].factor_i[2] * src_3[2]); \ dst[2] = DOWNSHIFT(tmp, 16); #define NUM_TAPS 3 #include "scale_x.h" #define FUNC_NAME scale_uint16_x_4_x_quadratic_c #define TYPE uint16_t #define INIT uint32_t tmp; #define SCALE \ tmp = (ctx->table_h.pixels[i].factor_i[0] * src_1[0] + \ ctx->table_h.pixels[i].factor_i[1] * src_2[0] + \ ctx->table_h.pixels[i].factor_i[2] * src_3[0]); \ dst[0] = DOWNSHIFT(tmp, 16); \ tmp = (ctx->table_h.pixels[i].factor_i[0] * src_1[1] + \ ctx->table_h.pixels[i].factor_i[1] * src_2[1] + \ ctx->table_h.pixels[i].factor_i[2] * src_3[1]); \ dst[1] = DOWNSHIFT(tmp, 16); \ tmp = (ctx->table_h.pixels[i].factor_i[0] * src_1[2] + \ ctx->table_h.pixels[i].factor_i[1] * src_2[2] + \ ctx->table_h.pixels[i].factor_i[2] * src_3[2]); \ dst[2] = DOWNSHIFT(tmp, 16); \ tmp = (ctx->table_h.pixels[i].factor_i[0] * src_1[3] + \ ctx->table_h.pixels[i].factor_i[1] * src_2[3] + \ ctx->table_h.pixels[i].factor_i[2] * src_3[3]); \ dst[3] = DOWNSHIFT(tmp, 16); #define NUM_TAPS 3 #include "scale_x.h" #define FUNC_NAME scale_float_x_1_x_quadratic_c #define TYPE float #define SCALE \ dst[0] = (ctx->table_h.pixels[i].factor_f[0] * src_1[0] + \ ctx->table_h.pixels[i].factor_f[1] * src_2[0] + \ ctx->table_h.pixels[i].factor_f[2] * src_3[0]); #define NUM_TAPS 3 #include "scale_x.h" #define FUNC_NAME scale_float_x_2_x_quadratic_c #define TYPE float #define SCALE \ dst[0] = (ctx->table_h.pixels[i].factor_f[0] * src_1[0] + \ ctx->table_h.pixels[i].factor_f[1] * src_2[0] + \ ctx->table_h.pixels[i].factor_f[2] * src_3[0]); \ dst[1] = (ctx->table_h.pixels[i].factor_f[0] * src_1[1] + \ ctx->table_h.pixels[i].factor_f[1] * src_2[1] + \ ctx->table_h.pixels[i].factor_f[2] * src_3[1]); #define NUM_TAPS 3 #include "scale_x.h" #define FUNC_NAME scale_float_x_3_x_quadratic_c #define TYPE float #define SCALE \ dst[0] = (ctx->table_h.pixels[i].factor_f[0] * src_1[0] + \ ctx->table_h.pixels[i].factor_f[1] * src_2[0] + \ ctx->table_h.pixels[i].factor_f[2] * src_3[0]); \ dst[1] = (ctx->table_h.pixels[i].factor_f[0] * src_1[1] + \ ctx->table_h.pixels[i].factor_f[1] * src_2[1] + \ ctx->table_h.pixels[i].factor_f[2] * src_3[1]); \ dst[2] = (ctx->table_h.pixels[i].factor_f[0] * src_1[2] + \ ctx->table_h.pixels[i].factor_f[1] * src_2[2] + \ ctx->table_h.pixels[i].factor_f[2] * src_3[2]); #define NUM_TAPS 3 #include "scale_x.h" #define FUNC_NAME scale_float_x_4_x_quadratic_c #define TYPE float #define SCALE \ dst[0] = (ctx->table_h.pixels[i].factor_f[0] * src_1[0] + \ ctx->table_h.pixels[i].factor_f[1] * src_2[0] + \ ctx->table_h.pixels[i].factor_f[2] * src_3[0]); \ dst[1] = (ctx->table_h.pixels[i].factor_f[0] * src_1[1] + \ ctx->table_h.pixels[i].factor_f[1] * src_2[1] + \ ctx->table_h.pixels[i].factor_f[2] * src_3[1]); \ dst[2] = (ctx->table_h.pixels[i].factor_f[0] * src_1[2] + \ ctx->table_h.pixels[i].factor_f[1] * src_2[2] + \ ctx->table_h.pixels[i].factor_f[2] * src_3[2]); \ dst[3] = (ctx->table_h.pixels[i].factor_f[0] * src_1[3] + \ ctx->table_h.pixels[i].factor_f[1] * src_2[3] + \ ctx->table_h.pixels[i].factor_f[2] * src_3[3]); #define NUM_TAPS 3 #include "scale_x.h" /* y-Direction */ #define FUNC_NAME scale_rgb_15_y_quadratic_c #define TYPE color_15 #define INIT int fac_1, fac_2, fac_3; \ fac_1 = ctx->table_v.pixels[scanline].factor_i[0];\ fac_2 = ctx->table_v.pixels[scanline].factor_i[1];\ fac_3 = ctx->table_v.pixels[scanline].factor_i[2]; #define NO_UINT8 #define SCALE \ dst->r = DOWNSHIFT(fac_1 * src_1->r + \ fac_2 * src_2->r + \ fac_3 * src_3->r, 16); \ dst->g = DOWNSHIFT(fac_1 * src_1->g + \ fac_2 * src_2->g + \ fac_3 * src_3->g, 16); \ dst->b = DOWNSHIFT(fac_1 * src_1->b + \ fac_2 * src_2->b + \ fac_3 * src_3->b, 16); #define NUM_TAPS 3 #include "scale_y.h" #define FUNC_NAME scale_rgb_16_y_quadratic_c #define TYPE color_16 #define INIT int fac_1, fac_2, fac_3;\ fac_1 = ctx->table_v.pixels[scanline].factor_i[0];\ fac_2 = ctx->table_v.pixels[scanline].factor_i[1];\ fac_3 = ctx->table_v.pixels[scanline].factor_i[2]; #define NO_UINT8 #define SCALE \ dst->r = DOWNSHIFT(fac_1 * src_1->r + \ fac_2 * src_2->r + \ fac_3 * src_3->r, 16); \ dst->g = DOWNSHIFT(fac_1 * src_1->g + \ fac_2 * src_2->g + \ fac_3 * src_3->g, 16); \ dst->b = DOWNSHIFT(fac_1 * src_1->b + \ fac_2 * src_2->b + \ fac_3 * src_3->b, 16); #define NUM_TAPS 3 #include "scale_y.h" #define FUNC_NAME scale_uint8_x_1_y_quadratic_c #define TYPE uint8_t #define INIT int fac_1, fac_2, fac_3;\ fac_1 = ctx->table_v.pixels[scanline].factor_i[0];\ fac_2 = ctx->table_v.pixels[scanline].factor_i[1];\ fac_3 = ctx->table_v.pixels[scanline].factor_i[2]; #define SCALE \ dst[0] = DOWNSHIFT(fac_1 * src_1[0] + \ fac_2 * src_2[0] + \ fac_3 * src_3[0], 16); #define NUM_TAPS 3 #include "scale_y.h" #define FUNC_NAME scale_uint8_x_2_y_quadratic_c #define TYPE uint8_t #define INIT int fac_1, fac_2, fac_3;\ fac_1 = ctx->table_v.pixels[scanline].factor_i[0];\ fac_2 = ctx->table_v.pixels[scanline].factor_i[1];\ fac_3 = ctx->table_v.pixels[scanline].factor_i[2]; #define SCALE \ dst[0] = DOWNSHIFT(fac_1 * src_1[0] + \ fac_2 * src_2[0] + \ fac_3 * src_3[0], 16);\ dst[1] = DOWNSHIFT(fac_1 * src_1[1] + \ fac_2 * src_2[1] + \ fac_3 * src_3[1], 16); #define NUM_TAPS 3 #include "scale_y.h" #define FUNC_NAME scale_uint8_x_3_y_quadratic_c #define TYPE uint8_t #define INIT int fac_1, fac_2, fac_3;\ fac_1 = ctx->table_v.pixels[scanline].factor_i[0];\ fac_2 = ctx->table_v.pixels[scanline].factor_i[1];\ fac_3 = ctx->table_v.pixels[scanline].factor_i[2]; #define SCALE \ dst[0] = DOWNSHIFT(fac_1 * src_1[0] + \ fac_2 * src_2[0] + \ fac_3 * src_3[0], 16); \ dst[1] = DOWNSHIFT(fac_1 * src_1[1] + \ fac_2 * src_2[1] + \ fac_3 * src_3[1], 16); \ dst[2] = DOWNSHIFT(fac_1 * src_1[2] + \ fac_2 * src_2[2] + \ fac_3 * src_3[2], 16); #define NUM_TAPS 3 #include "scale_y.h" #define FUNC_NAME scale_uint8_x_4_y_quadratic_c #define TYPE uint8_t #define INIT int fac_1, fac_2, fac_3;\ fac_1 = ctx->table_v.pixels[scanline].factor_i[0];\ fac_2 = ctx->table_v.pixels[scanline].factor_i[1];\ fac_3 = ctx->table_v.pixels[scanline].factor_i[2]; #define SCALE \ dst[0] = DOWNSHIFT(fac_1 * src_1[0] + \ fac_2 * src_2[0] + \ fac_3 * src_3[0], 16); \ dst[1] = DOWNSHIFT(fac_1 * src_1[1] + \ fac_2 * src_2[1] + \ fac_3 * src_3[1], 16); \ dst[2] = DOWNSHIFT(fac_1 * src_1[2] + \ fac_2 * src_2[2] + \ fac_3 * src_3[2], 16); \ dst[3] = DOWNSHIFT(fac_1 * src_1[3] + \ fac_2 * src_2[3] + \ fac_3 * src_3[3], 16); #define NUM_TAPS 3 #include "scale_y.h" #define FUNC_NAME scale_uint16_x_1_y_quadratic_c #define TYPE uint16_t #define INIT uint32_t tmp; \ int fac_1, fac_2, fac_3; \ fac_1 = ctx->table_v.pixels[scanline].factor_i[0];\ fac_2 = ctx->table_v.pixels[scanline].factor_i[1];\ fac_3 = ctx->table_v.pixels[scanline].factor_i[2]; #define NO_UINT8 #define SCALE \ tmp = (fac_1 * src_1[0] + \ fac_2 * src_2[0] + \ fac_3 * src_3[0]); \ dst[0] = DOWNSHIFT(tmp, 16); #define NUM_TAPS 3 #include "scale_y.h" #define FUNC_NAME scale_uint16_x_2_y_quadratic_c #define TYPE uint16_t #define INIT uint32_t tmp; \ int fac_1, fac_2, fac_3; \ fac_1 = ctx->table_v.pixels[scanline].factor_i[0];\ fac_2 = ctx->table_v.pixels[scanline].factor_i[1];\ fac_3 = ctx->table_v.pixels[scanline].factor_i[2]; #define NO_UINT8 #define SCALE \ tmp = (fac_1 * src_1[0] + \ fac_2 * src_2[0] + \ fac_3 * src_3[0]); \ dst[0] = DOWNSHIFT(tmp, 16);\ tmp = (fac_1 * src_1[1] + \ fac_2 * src_2[1] + \ fac_3 * src_3[1]); \ dst[1] = DOWNSHIFT(tmp, 16); #define NUM_TAPS 3 #include "scale_y.h" #define FUNC_NAME scale_uint16_x_3_y_quadratic_c #define TYPE uint16_t #define INIT uint32_t tmp; \ int fac_1, fac_2, fac_3; \ fac_1 = ctx->table_v.pixels[scanline].factor_i[0];\ fac_2 = ctx->table_v.pixels[scanline].factor_i[1];\ fac_3 = ctx->table_v.pixels[scanline].factor_i[2]; #define NO_UINT8 #define SCALE \ tmp = (fac_1 * src_1[0] + \ fac_2 * src_2[0] + \ fac_3 * src_3[0]); \ dst[0] = DOWNSHIFT(tmp, 16); \ tmp = (fac_1 * src_1[1] + \ fac_2 * src_2[1] + \ fac_3 * src_3[1]); \ dst[1] = DOWNSHIFT(tmp, 16); \ tmp = (fac_1 * src_1[2] + \ fac_2 * src_2[2] + \ fac_3 * src_3[2]); \ dst[2] = DOWNSHIFT(tmp, 16); #define NUM_TAPS 3 #include "scale_y.h" #define FUNC_NAME scale_uint16_x_4_y_quadratic_c #define TYPE uint16_t #define INIT uint32_t tmp;\ int fac_1, fac_2, fac_3;\ fac_1 = ctx->table_v.pixels[scanline].factor_i[0];\ fac_2 = ctx->table_v.pixels[scanline].factor_i[1];\ fac_3 = ctx->table_v.pixels[scanline].factor_i[2]; #define NO_UINT8 #define SCALE \ tmp = fac_1 * src_1[0] + \ fac_2 * src_2[0] + \ fac_3 * src_3[0]; \ dst[0] = DOWNSHIFT(tmp, 16);\ tmp = fac_1 * src_1[1] + \ fac_2 * src_2[1] + \ fac_3 * src_3[1]; \ dst[1] = DOWNSHIFT(tmp, 16); \ tmp = fac_1 * src_1[2] + \ fac_2 * src_2[2] + \ fac_3 * src_2[2]; \ dst[2] = DOWNSHIFT(tmp, 16); \ tmp = fac_1 * src_1[3] + \ fac_2 * src_2[3] + \ fac_3 * src_3[3]; \ dst[3] = DOWNSHIFT(tmp, 16); #define NUM_TAPS 3 #include "scale_y.h" #define FUNC_NAME scale_float_x_1_y_quadratic_c #define TYPE float #define INIT float fac_1, fac_2, fac_3;\ fac_1 = ctx->table_v.pixels[scanline].factor_f[0];\ fac_2 = ctx->table_v.pixels[scanline].factor_f[1];\ fac_3 = ctx->table_v.pixels[scanline].factor_f[2]; #define NO_UINT8 #define SCALE \ dst[0] = (fac_1 * src_1[0] + \ fac_2 * src_2[0] + \ fac_3 * src_3[0]); #define NUM_TAPS 3 #include "scale_y.h" #define FUNC_NAME scale_float_x_2_y_quadratic_c #define TYPE float #define INIT float fac_1, fac_2, fac_3;\ fac_1 = ctx->table_v.pixels[scanline].factor_f[0];\ fac_2 = ctx->table_v.pixels[scanline].factor_f[1];\ fac_3 = ctx->table_v.pixels[scanline].factor_f[2]; #define NO_UINT8 #define SCALE \ dst[0] = (fac_1 * src_1[0] + \ fac_2 * src_2[0] + \ fac_3 * src_3[0]); \ dst[1] = (fac_1 * src_1[1] + \ fac_2 * src_2[1] + \ fac_3 * src_3[1]); #define NUM_TAPS 3 #include "scale_y.h" #define FUNC_NAME scale_float_x_3_y_quadratic_c #define TYPE float #define INIT float fac_1, fac_2, fac_3;\ fac_1 = ctx->table_v.pixels[scanline].factor_f[0];\ fac_2 = ctx->table_v.pixels[scanline].factor_f[1];\ fac_3 = ctx->table_v.pixels[scanline].factor_f[2]; #define NO_UINT8 #define SCALE \ dst[0] = (fac_1 * src_1[0] + \ fac_2 * src_2[0] + \ fac_3 * src_3[0]); \ dst[1] = (fac_1 * src_1[1] + \ fac_2 * src_2[1] + \ fac_3 * src_3[1]); \ dst[2] = (fac_1 * src_1[2] + \ fac_2 * src_2[2] + \ fac_3 * src_3[2]); #define NUM_TAPS 3 #include "scale_y.h" #define FUNC_NAME scale_float_x_4_y_quadratic_c #define TYPE float #define INIT float fac_1, fac_2, fac_3; \ fac_1 = ctx->table_v.pixels[scanline].factor_f[0]; \ fac_2 = ctx->table_v.pixels[scanline].factor_f[1]; \ fac_3 = ctx->table_v.pixels[scanline].factor_f[2]; #define NO_UINT8 #define SCALE \ dst[0] = (fac_1 * src_1[0] + \ fac_2 * src_2[0] + \ fac_3 * src_3[0]); \ dst[1] = (fac_1 * src_1[1] + \ fac_2 * src_2[1] + \ fac_3 * src_3[1]); \ dst[2] = (fac_1 * src_1[2] + \ fac_2 * src_2[2] + \ fac_3 * src_3[2]); \ dst[3] = (fac_1 * src_1[3] + \ fac_2 * src_2[3] + \ fac_3 * src_3[3]); \ #define NUM_TAPS 3 #include "scale_y.h" void gavl_init_scale_funcs_quadratic_noclip_c(gavl_scale_funcs_t * tab) { // fprintf(stderr, "gavl_init_scale_funcs_quadratic_c\n"); tab->funcs_x.scale_rgb_15 = scale_rgb_15_x_quadratic_c; tab->funcs_x.scale_rgb_16 = scale_rgb_16_x_quadratic_c; tab->funcs_x.scale_uint8_x_1_advance = scale_uint8_x_1_x_quadratic_c; tab->funcs_x.scale_uint8_x_1_noadvance = scale_uint8_x_1_x_quadratic_c; tab->funcs_x.scale_uint8_x_2 = scale_uint8_x_2_x_quadratic_c; tab->funcs_x.scale_uint8_x_3 = scale_uint8_x_3_x_quadratic_c; tab->funcs_x.scale_uint8_x_4 = scale_uint8_x_4_x_quadratic_c; tab->funcs_x.scale_uint16_x_1 = scale_uint16_x_1_x_quadratic_c; tab->funcs_x.scale_uint16_x_2 = scale_uint16_x_2_x_quadratic_c; tab->funcs_x.scale_uint16_x_3 = scale_uint16_x_3_x_quadratic_c; tab->funcs_x.scale_uint16_x_4 = scale_uint16_x_4_x_quadratic_c; tab->funcs_x.scale_float_x_1 = scale_float_x_1_x_quadratic_c; tab->funcs_x.scale_float_x_2 = scale_float_x_2_x_quadratic_c; tab->funcs_x.scale_float_x_3 = scale_float_x_3_x_quadratic_c; tab->funcs_x.scale_float_x_4 = scale_float_x_4_x_quadratic_c; tab->funcs_x.bits_rgb_15 = 16; tab->funcs_x.bits_rgb_16 = 16; tab->funcs_x.bits_uint8_advance = 16; tab->funcs_x.bits_uint8_noadvance = 16; tab->funcs_x.bits_uint16 = 16; tab->funcs_y.scale_rgb_15 = scale_rgb_15_y_quadratic_c; tab->funcs_y.scale_rgb_16 = scale_rgb_16_y_quadratic_c; tab->funcs_y.scale_uint8_x_1_advance = scale_uint8_x_1_y_quadratic_c; tab->funcs_y.scale_uint8_x_1_noadvance = scale_uint8_x_1_y_quadratic_c; tab->funcs_y.scale_uint8_x_2 = scale_uint8_x_2_y_quadratic_c; tab->funcs_y.scale_uint8_x_3 = scale_uint8_x_3_y_quadratic_c; tab->funcs_y.scale_uint8_x_4 = scale_uint8_x_4_y_quadratic_c; tab->funcs_y.scale_uint16_x_1 = scale_uint16_x_1_y_quadratic_c; tab->funcs_y.scale_uint16_x_2 = scale_uint16_x_2_y_quadratic_c; tab->funcs_y.scale_uint16_x_3 = scale_uint16_x_3_y_quadratic_c; tab->funcs_y.scale_uint16_x_4 = scale_uint16_x_4_y_quadratic_c; tab->funcs_y.scale_float_x_1 = scale_float_x_1_y_quadratic_c; tab->funcs_y.scale_float_x_2 = scale_float_x_2_y_quadratic_c; tab->funcs_y.scale_float_x_3 = scale_float_x_3_y_quadratic_c; tab->funcs_y.scale_float_x_4 = scale_float_x_4_y_quadratic_c; tab->funcs_y.bits_rgb_15 = 16; tab->funcs_y.bits_rgb_16 = 16; tab->funcs_y.bits_uint8_advance = 16; tab->funcs_y.bits_uint8_noadvance = 16; tab->funcs_y.bits_uint16 = 16; } bplaum-gavl-b9385e3/gavl/c/scale_x.h000066400000000000000000000035141513252040200172240ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ static void (FUNC_NAME)(gavl_video_scale_context_t * ctx, int scanline, uint8_t * dst_start) { int i; uint8_t * src; TYPE * src_1, #if NUM_TAPS > 1 * src_2, #endif #if NUM_TAPS > 2 * src_3, #endif #if NUM_TAPS > 3 * src_4, #endif *dst; #ifdef INIT INIT #endif src = ctx->src + scanline * ctx->src_stride; for(i = 0; i < ctx->dst_size; i++) { dst = (TYPE*)(dst_start); src_1 = (TYPE*)(src + ctx->offset->src_advance * ctx->table_h.pixels[i].index); #if NUM_TAPS > 1 src_2 = (TYPE*)((uint8_t*)(src_1) + ctx->offset->src_advance); #endif #if NUM_TAPS > 2 src_3 = (TYPE*)((uint8_t*)(src_2) + ctx->offset->src_advance); #endif #if NUM_TAPS > 3 src_4 = (TYPE*)((uint8_t*)(src_3) + ctx->offset->src_advance); #endif SCALE dst_start += ctx->offset->dst_advance; } } #ifdef INIT #undef INIT #endif #undef FUNC_NAME #undef TYPE #undef SCALE #undef NUM_TAPS bplaum-gavl-b9385e3/gavl/c/scale_y.h000066400000000000000000000050271513252040200172260ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ static void (FUNC_NAME)(gavl_video_scale_context_t * ctx, int scanline, uint8_t * dest_start) { int i; #ifdef NO_UINT8 uint8_t * _src_1 #if NUM_TAPS > 1 , * _src_2 #endif #if NUM_TAPS > 2 , * _src_3 #endif #if NUM_TAPS > 3 , * _src_4 #endif ; #else #define _src_1 src_1 #define _src_2 src_2 #define _src_3 src_3 #define _src_4 src_4 #endif TYPE * src_1, #if NUM_TAPS > 1 * src_2, #endif #if NUM_TAPS > 2 * src_3, #endif #if NUM_TAPS > 3 * src_4, #endif *dst; #ifdef INIT INIT #endif _src_1 = ctx->src + ctx->table_v.pixels[scanline].index * ctx->src_stride; #if NUM_TAPS > 1 _src_2 = _src_1 + ctx->src_stride; #endif #if NUM_TAPS > 2 _src_3 = _src_2 + ctx->src_stride; #endif #if NUM_TAPS > 3 _src_4 = _src_3 + ctx->src_stride; #endif for(i = 0; i < ctx->dst_size; i++) { dst = (TYPE*)(dest_start); #ifdef NO_UINT8 src_1 = (TYPE*)(_src_1); #if NUM_TAPS > 1 src_2 = (TYPE*)(_src_2); #endif #if NUM_TAPS > 2 src_3 = (TYPE*)(_src_3); #endif #if NUM_TAPS > 3 src_4 = (TYPE*)(_src_4); #endif #endif SCALE dest_start += ctx->offset->dst_advance; _src_1 += ctx->offset->src_advance; #if NUM_TAPS > 1 _src_2 += ctx->offset->src_advance; #endif #if NUM_TAPS > 2 _src_3 += ctx->offset->src_advance; #endif #if NUM_TAPS > 3 _src_4 += ctx->offset->src_advance; #endif } } #ifdef INIT #undef INIT #endif #undef FUNC_NAME #undef TYPE #undef SCALE #ifdef _src_1 #undef _src_1 #endif #ifdef _src_2 #undef _src_2 #endif #ifdef _src_3 #undef _src_3 #endif #ifdef _src_4 #undef _src_4 #endif #ifdef NO_UINT8 #undef NO_UINT8 #endif bplaum-gavl-b9385e3/gavl/c/transform_bicubic_c.c000066400000000000000000000017301513252040200215740ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #define NUM_TAPS 4 #include "_transform_c.c" bplaum-gavl-b9385e3/gavl/c/transform_bilinear_c.c000066400000000000000000000017301513252040200217610ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #define NUM_TAPS 2 #include "_transform_c.c" bplaum-gavl-b9385e3/gavl/c/transform_c.h000066400000000000000000000037321513252040200201250ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ static void (FUNC_NAME)(gavl_transform_context_t * ctx, gavl_transform_pixel_t * pixels, uint8_t * dest_start) { int i; TYPE * src_0, #if NUM_TAPS > 1 * src_1, #endif #if NUM_TAPS > 2 * src_2, #endif #if NUM_TAPS > 3 * src_3, #endif *dst; gavl_transform_pixel_t * pixel; #ifdef INIT INIT #endif pixel = pixels; i = ctx->dst_width+1; while(--i) { if(!pixel->outside) { dst = (TYPE*)(dest_start); src_0 = (TYPE*)(ctx->src + ctx->advance * pixel->index_x + ctx->src_stride * pixel->index_y); #if NUM_TAPS > 1 src_1 = (TYPE*)((uint8_t*)(src_0) + ctx->src_stride); #endif #if NUM_TAPS > 2 src_2 = (TYPE*)((uint8_t*)(src_1) + ctx->src_stride); #endif #if NUM_TAPS > 3 src_3 = (TYPE*)((uint8_t*)(src_2) + ctx->src_stride); #endif TRANSFORM } dest_start += ctx->advance; pixel++; } #ifdef FINISH FINISH #endif } #ifdef INIT #undef INIT #endif #ifdef FINISH #undef FINISH #endif #undef FUNC_NAME #undef TYPE #undef TRANSFORM // #undef NUM_TAPS bplaum-gavl-b9385e3/gavl/c/transform_nearest_c.c000066400000000000000000000173151513252040200216430ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include #include #define TRANSFORM_FUNC_HEAD \ for(i = 0; i < ctx->dst_width; i++) \ { #define TRANSFORM_FUNC_TAIL \ pixel++; \ } static void transform_rgb_16_nearest_c(gavl_transform_context_t * ctx, gavl_transform_pixel_t * pixels, uint8_t * dest_start) { int i; uint16_t * src, *dst; gavl_transform_pixel_t * pixel = pixels; dst = (uint16_t*)(dest_start); TRANSFORM_FUNC_HEAD if(!pixel->outside) { src = (uint16_t*)(ctx->src + pixel->index_y * ctx->src_stride) + pixel->index_x; *dst = *src; } dst++; TRANSFORM_FUNC_TAIL } static void transform_uint8_x_1_nearest_c(gavl_transform_context_t * ctx, gavl_transform_pixel_t * pixels, uint8_t * dest_start) { int i; uint8_t * src, *dst; gavl_transform_pixel_t * pixel = pixels; dst = (uint8_t*)(dest_start); TRANSFORM_FUNC_HEAD if(!pixel->outside) { src = (uint8_t*)(ctx->src + pixel->index_y * ctx->src_stride) + pixel->index_x * ctx->advance; *dst = *src; } dst+=ctx->advance; TRANSFORM_FUNC_TAIL } static void transform_uint8_x_3_nearest_c(gavl_transform_context_t * ctx, gavl_transform_pixel_t * pixels, uint8_t * dest_start) { int i; uint8_t * src, *dst; gavl_transform_pixel_t * pixel = pixels; dst = (uint8_t*)(dest_start); TRANSFORM_FUNC_HEAD if(!pixel->outside) { src = (uint8_t*)(ctx->src + pixel->index_y * ctx->src_stride) + pixel->index_x * ctx->advance; dst[0] = src[0]; dst[1] = src[1]; dst[2] = src[2]; } dst+=ctx->advance; TRANSFORM_FUNC_TAIL } static void transform_uint8_x_4_nearest_c(gavl_transform_context_t * ctx, gavl_transform_pixel_t * pixels, uint8_t * dest_start) { int i; uint32_t * src, *dst; gavl_transform_pixel_t * pixel = pixels; dst = (uint32_t*)(dest_start); TRANSFORM_FUNC_HEAD if(!pixel->outside) { src = (uint32_t*)(ctx->src + pixel->index_y * ctx->src_stride) + pixel->index_x; *dst = *src; } dst++; TRANSFORM_FUNC_TAIL } static void transform_uint16_x_3_nearest_c(gavl_transform_context_t * ctx, gavl_transform_pixel_t * pixels, uint8_t * dest_start) { int i; uint16_t * src, *dst; gavl_transform_pixel_t * pixel = pixels; dst = (uint16_t*)(dest_start); TRANSFORM_FUNC_HEAD if(!pixel->outside) { src = (uint16_t*)(ctx->src + pixel->index_y * ctx->src_stride) + pixel->index_x * 3; dst[0] = src[0]; dst[1] = src[1]; dst[2] = src[2]; } dst+=3; TRANSFORM_FUNC_TAIL } static void transform_uint16_x_4_nearest_c(gavl_transform_context_t * ctx, gavl_transform_pixel_t * pixels, uint8_t * dest_start) { int i; uint64_t * src, *dst; gavl_transform_pixel_t * pixel = pixels; dst = (uint64_t*)(dest_start); TRANSFORM_FUNC_HEAD if(!pixel->outside) { src = (uint64_t*)(ctx->src + pixel->index_y * ctx->src_stride) + pixel->index_x; *dst = *src; } dst++; TRANSFORM_FUNC_TAIL } static void transform_float_x_1_nearest_c(gavl_transform_context_t * ctx, gavl_transform_pixel_t * pixels, uint8_t * dest_start) { int i; float * src, *dst; gavl_transform_pixel_t * pixel = pixels; dst = (float*)(dest_start); TRANSFORM_FUNC_HEAD if(!pixel->outside) { src = (float*)(ctx->src + pixel->index_y * ctx->src_stride) + pixel->index_x; *dst = *src; } dst++; TRANSFORM_FUNC_TAIL } static void transform_float_x_2_nearest_c(gavl_transform_context_t * ctx, gavl_transform_pixel_t * pixels, uint8_t * dest_start) { int i; float * src, *dst; gavl_transform_pixel_t * pixel = pixels; dst = (float*)(dest_start); TRANSFORM_FUNC_HEAD if(!pixel->outside) { src = (float*)(ctx->src + pixel->index_y * ctx->src_stride) + pixel->index_x * 2; dst[0] = src[0]; dst[1] = src[1]; } dst+=2; TRANSFORM_FUNC_TAIL } static void transform_float_x_3_nearest_c(gavl_transform_context_t * ctx, gavl_transform_pixel_t * pixels, uint8_t * dest_start) { int i; float * src, *dst; gavl_transform_pixel_t * pixel = pixels; dst = (float*)(dest_start); TRANSFORM_FUNC_HEAD if(!pixel->outside) { src = (float*)(ctx->src + pixel->index_y * ctx->src_stride) + pixel->index_x * 3; dst[0] = src[0]; dst[1] = src[1]; dst[2] = src[2]; } dst+=3; TRANSFORM_FUNC_TAIL } static void transform_float_x_4_nearest_c(gavl_transform_context_t * ctx, gavl_transform_pixel_t * pixels, uint8_t * dest_start) { int i; float * src, *dst; gavl_transform_pixel_t * pixel = pixels; dst = (float*)(dest_start); TRANSFORM_FUNC_HEAD if(!pixel->outside) { src = (float*)(ctx->src + pixel->index_y * ctx->src_stride) + pixel->index_x * 4; dst[0] = src[0]; dst[1] = src[1]; dst[2] = src[2]; dst[3] = src[3]; } dst+=4; TRANSFORM_FUNC_TAIL } void gavl_init_transform_funcs_nearest_c(gavl_transform_funcs_t * tab, int advance) { tab->transform_rgb_15 = transform_rgb_16_nearest_c; tab->transform_rgb_16 = transform_rgb_16_nearest_c; tab->transform_uint8_x_1_advance = transform_uint8_x_1_nearest_c; tab->transform_uint8_x_1_noadvance = transform_uint8_x_1_nearest_c; tab->transform_uint8_x_2 = transform_rgb_16_nearest_c; if(advance == 4) tab->transform_uint8_x_3 = transform_uint8_x_4_nearest_c; else tab->transform_uint8_x_3 = transform_uint8_x_3_nearest_c; tab->transform_uint8_x_4 = transform_uint8_x_4_nearest_c; tab->transform_uint16_x_1 = transform_rgb_16_nearest_c; tab->transform_uint16_x_2 = transform_uint8_x_4_nearest_c; tab->transform_uint16_x_3 = transform_uint16_x_3_nearest_c; tab->transform_uint16_x_4 = transform_uint16_x_4_nearest_c; tab->transform_float_x_1 = transform_float_x_1_nearest_c; tab->transform_float_x_2 = transform_float_x_2_nearest_c; tab->transform_float_x_3 = transform_float_x_3_nearest_c; tab->transform_float_x_4 = transform_float_x_4_nearest_c; tab->bits_rgb_15 = 0; tab->bits_rgb_16 = 0; tab->bits_uint8_advance = 0; tab->bits_uint8_noadvance = 0; tab->bits_uint16_x_1 = 0; tab->bits_uint16_x_2 = 0; tab->bits_uint16_x_3 = 0; tab->bits_uint16_x_4 = 0; } bplaum-gavl-b9385e3/gavl/c/transform_quadratic_c.c000066400000000000000000000017301513252040200221510ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #define NUM_TAPS 3 #include "_transform_c.c" bplaum-gavl-b9385e3/gavl/c/volume_c.c000066400000000000000000000071571513252040200174210ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include #define CLAMP(val, min, max) if(val < min)val=min;if(val>max)val=max static void set_volume_s8_c(gavl_volume_control_t * v, void * samples, int num_samples) { int i; int32_t sample; int8_t * s = (int8_t*)samples; for(i = 0; i < num_samples; i++) { sample = (s[i] * v->factor_i) >> 8; CLAMP(sample, -128, 127); s[i] = sample; } } static void set_volume_u8_c(gavl_volume_control_t * v, void * samples, int num_samples) { int i; int32_t sample; uint8_t * s = (uint8_t*)samples; for(i = 0; i < num_samples; i++) { sample = ((((int)s[i] - 0x80) * v->factor_i) >> 8) + 0x80; CLAMP(sample, 0, 255); s[i] = sample; } } static void set_volume_s16_c(gavl_volume_control_t * v, void * samples, int num_samples) { int i; int64_t sample; int16_t * s = (int16_t*)samples; for(i = 0; i < num_samples; i++) { sample = ((int64_t)s[i] * v->factor_i) >> 16; CLAMP(sample, -32768, 32767); s[i] = sample; } } static void set_volume_u16_c(gavl_volume_control_t * v, void * samples, int num_samples) { int i; int64_t sample; uint16_t * s = (uint16_t*)samples; for(i = 0; i < num_samples; i++) { sample = ((((int64_t)s[i] - 0x8000) * v->factor_i) >> 16) + 0x8000; CLAMP(sample, 0, 65535); s[i] = sample; } } static void set_volume_s32_c(gavl_volume_control_t * v, void * samples, int num_samples) { int i; int64_t sample; int32_t * s = (int32_t*)samples; for(i = 0; i < num_samples; i++) { sample = ((((int64_t)s[i]) * v->factor_i) >> 31); CLAMP(sample, -2147483648LL, 2147483647LL); s[i] = sample; } } static void set_volume_float_c(gavl_volume_control_t * v, void * samples, int num_samples) { int i; float * s = (float*)samples; for(i = 0; i < num_samples; i++) s[i] *= v->factor_f; } static void set_volume_double_c(gavl_volume_control_t * v, void * samples, int num_samples) { int i; double * s = (double*)samples; for(i = 0; i < num_samples; i++) s[i] *= v->factor_f; } void gavl_init_volume_funcs_c(gavl_volume_funcs_t * v) { v->set_volume_s8 = set_volume_s8_c; v->set_volume_u8 = set_volume_u8_c; v->set_volume_s16 = set_volume_s16_c; v->set_volume_u16 = set_volume_u16_c; v->set_volume_s32 = set_volume_s32_c; v->set_volume_float = set_volume_float_c; v->set_volume_double = set_volume_double_c; } bplaum-gavl-b9385e3/gavl/c/yuv_gray_c.c000066400000000000000000000545121513252040200177540ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ // #include #include #include #include #include "colorspace_tables.h" #include "colorspace_macros.h" /* yuy2_to_gray_8_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 2 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME yuy2_to_gray_8_c #define CONVERT dst[0] = Y_8_TO_YJ_8(src[0]); #include "../csp_packed_packed.h" /* uyvy_to_gray_8_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 2 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME uyvy_to_gray_8_c #define CONVERT dst[0] = Y_8_TO_YJ_8(src[1]); #include "../csp_packed_packed.h" /* yuy2_to_gray_16_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE 2 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME yuy2_to_gray_16_c #define CONVERT dst[0] = Y_8_TO_YJ_16(src[0]); #include "../csp_packed_packed.h" /* uyvy_to_gray_16_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE 2 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME uyvy_to_gray_16_c #define CONVERT dst[0] = Y_8_TO_YJ_16(src[1]);; #include "../csp_packed_packed.h" /* yuy2_to_gray_float_c */ #define IN_TYPE uint8_t #define OUT_TYPE float #define IN_ADVANCE 2 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME yuy2_to_gray_float_c #define CONVERT dst[0] = Y_8_TO_FLOAT(src[0]); #include "../csp_packed_packed.h" /* uyvy_to_gray_float_c */ #define IN_TYPE uint8_t #define OUT_TYPE float #define IN_ADVANCE 2 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME uyvy_to_gray_float_c #define CONVERT dst[0] = Y_8_TO_FLOAT(src[1]); #include "../csp_packed_packed.h" /* */ /* yuy2_to_graya_16_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 2 #define OUT_ADVANCE 2 #define NUM_PIXELS 1 #define FUNC_NAME yuy2_to_graya_16_c #define CONVERT dst[0] = Y_8_TO_YJ_8(src[0]); \ dst[1] = 0xff; #include "../csp_packed_packed.h" /* uyvy_to_graya_16_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 2 #define OUT_ADVANCE 2 #define NUM_PIXELS 1 #define FUNC_NAME uyvy_to_graya_16_c #define CONVERT dst[0] = Y_8_TO_YJ_8(src[1]); \ dst[1] = 0xff; #include "../csp_packed_packed.h" /* yuy2_to_graya_32_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE 2 #define OUT_ADVANCE 2 #define NUM_PIXELS 1 #define FUNC_NAME yuy2_to_graya_32_c #define CONVERT dst[0] = Y_8_TO_YJ_16(src[0]); \ dst[1] = 0xffff; #include "../csp_packed_packed.h" /* uyvy_to_graya_32_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE 2 #define OUT_ADVANCE 2 #define NUM_PIXELS 1 #define FUNC_NAME uyvy_to_graya_32_c #define CONVERT dst[0] = Y_8_TO_YJ_16(src[1]); \ dst[1] = 0xffff; #include "../csp_packed_packed.h" /* yuy2_to_graya_float_c */ #define IN_TYPE uint8_t #define OUT_TYPE float #define IN_ADVANCE 2 #define OUT_ADVANCE 2 #define NUM_PIXELS 1 #define FUNC_NAME yuy2_to_graya_float_c #define CONVERT dst[0] = Y_8_TO_FLOAT(src[0]); \ dst[1] = 1.0; #include "../csp_packed_packed.h" /* uyvy_to_graya_float_c */ #define IN_TYPE uint8_t #define OUT_TYPE float #define IN_ADVANCE 2 #define OUT_ADVANCE 2 #define NUM_PIXELS 1 #define FUNC_NAME uyvy_to_graya_float_c #define CONVERT dst[0] = Y_8_TO_FLOAT(src[1]); \ dst[1] = 1.0; #include "../csp_packed_packed.h" /* */ /* y_8_to_gray_8_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 1 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME y_8_to_gray_8_c #define CONVERT dst[0] = Y_8_TO_YJ_8(src[0]); #include "../csp_packed_packed.h" /* y_8_to_gray_16_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE 1 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME y_8_to_gray_16_c #define CONVERT dst[0] = Y_8_TO_YJ_16(src[0]); #include "../csp_packed_packed.h" /* y_8_to_gray_float_c */ #define IN_TYPE uint8_t #define OUT_TYPE float #define IN_ADVANCE 1 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME y_8_to_gray_float_c #define CONVERT dst[0] = Y_8_TO_FLOAT(src[0]); #include "../csp_packed_packed.h" /* yj_8_to_gray_8_c */ static void yj_8_to_gray_8_c(gavl_video_convert_context_t * ctx) { gavl_video_frame_copy(&ctx->output_format, ctx->output_frame, ctx->input_frame); } /* yj_8_to_gray_16_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE 1 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME yj_8_to_gray_16_c #define CONVERT dst[0] = RGB_8_TO_16(src[0]); #include "../csp_packed_packed.h" /* yj_8_to_gray_float_c */ #define IN_TYPE uint8_t #define OUT_TYPE float #define IN_ADVANCE 1 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME yj_8_to_gray_float_c #define CONVERT dst[0] = RGB_8_TO_FLOAT(src[0]); #include "../csp_packed_packed.h" /* */ /* y_8_to_graya_16_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 1 #define OUT_ADVANCE 2 #define NUM_PIXELS 1 #define FUNC_NAME y_8_to_graya_16_c #define CONVERT dst[0] = Y_8_TO_YJ_8(src[0]); \ dst[1] = 0xff; #include "../csp_packed_packed.h" /* y_8_to_graya_32_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE 1 #define OUT_ADVANCE 2 #define NUM_PIXELS 1 #define FUNC_NAME y_8_to_graya_32_c #define CONVERT dst[0] = Y_8_TO_YJ_16(src[0]); \ dst[1] = 0xffff; #include "../csp_packed_packed.h" /* y_8_to_graya_float_c */ #define IN_TYPE uint8_t #define OUT_TYPE float #define IN_ADVANCE 1 #define OUT_ADVANCE 2 #define NUM_PIXELS 1 #define FUNC_NAME y_8_to_graya_float_c #define CONVERT dst[0] = Y_8_TO_FLOAT(src[0]); \ dst[1] = 1.0; #include "../csp_packed_packed.h" /* yj_8_to_graya_16_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 1 #define OUT_ADVANCE 2 #define NUM_PIXELS 1 #define FUNC_NAME yj_8_to_graya_16_c #define CONVERT dst[0] = src[0]; \ dst[1] = 0xff; #include "../csp_packed_packed.h" /* yj_8_to_graya_32_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE 1 #define OUT_ADVANCE 2 #define NUM_PIXELS 1 #define FUNC_NAME yj_8_to_graya_32_c #define CONVERT dst[0] = RGB_8_TO_16(src[0]); \ dst[1] = 0xffff; #include "../csp_packed_packed.h" /* yj_8_to_graya_float_c */ #define IN_TYPE uint8_t #define OUT_TYPE float #define IN_ADVANCE 1 #define OUT_ADVANCE 2 #define NUM_PIXELS 1 #define FUNC_NAME yj_8_to_graya_float_c #define CONVERT dst[0] = RGB_8_TO_FLOAT(src[0]); \ dst[1] = 1.0; #include "../csp_packed_packed.h" /* */ /* y_16_to_gray_8_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 1 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME y_16_to_gray_8_c #define CONVERT Y_16_TO_YJ_8(src[0], dst[0]); #include "../csp_packed_packed.h" /* y_16_to_gray_16_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint16_t #define IN_ADVANCE 1 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME y_16_to_gray_16_c #define CONVERT Y_16_TO_YJ_16(src[0], dst[0]); #include "../csp_packed_packed.h" /* y_16_to_gray_float_c */ #define IN_TYPE uint16_t #define OUT_TYPE float #define IN_ADVANCE 1 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME y_16_to_gray_float_c #define CONVERT dst[0] = Y_16_TO_Y_FLOAT(src[0]); #include "../csp_packed_packed.h" /* y_16_to_graya_16_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 1 #define OUT_ADVANCE 2 #define NUM_PIXELS 1 #define FUNC_NAME y_16_to_graya_16_c #define CONVERT Y_16_TO_YJ_8(src[0], dst[0]);\ dst[1] = 0xff; #include "../csp_packed_packed.h" /* y_16_to_graya_32_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint16_t #define IN_ADVANCE 1 #define OUT_ADVANCE 2 #define NUM_PIXELS 1 #define FUNC_NAME y_16_to_graya_32_c #define CONVERT Y_16_TO_YJ_16(src[0], dst[0]);\ dst[1] = 0xffff; #include "../csp_packed_packed.h" /* y_16_to_graya_float_c */ #define IN_TYPE uint16_t #define OUT_TYPE float #define IN_ADVANCE 1 #define OUT_ADVANCE 2 #define NUM_PIXELS 1 #define FUNC_NAME y_16_to_graya_float_c #define CONVERT dst[0] = Y_16_TO_Y_FLOAT(src[0]);\ dst[1] = 1.0; #include "../csp_packed_packed.h" /* yuva_32_to_graya_16 */ #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE 2 #define NUM_PIXELS 1 #define FUNC_NAME yuva_32_to_graya_16_c #define CONVERT dst[0] = Y_8_TO_YJ_8(src[0]); \ dst[1] = src[3]; #include "../csp_packed_packed.h" /* yuva_32_to_graya_32 */ #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE 2 #define NUM_PIXELS 1 #define FUNC_NAME yuva_32_to_graya_32_c #define CONVERT dst[0] = Y_8_TO_YJ_16(src[0]); \ dst[1] = RGB_8_TO_16(src[3]); #include "../csp_packed_packed.h" /* yuva_32_to_graya_float */ #define IN_TYPE uint8_t #define OUT_TYPE float #define IN_ADVANCE 4 #define OUT_ADVANCE 2 #define NUM_PIXELS 1 #define FUNC_NAME yuva_32_to_graya_float_c #define CONVERT dst[0] = Y_8_TO_FLOAT(src[0]); \ dst[1] = RGB_8_TO_FLOAT(src[3]); #include "../csp_packed_packed.h" /* yuva_32_to_gray_8_ia */ #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME yuva_32_to_gray_8_ia_c #define CONVERT dst[0] = Y_8_TO_YJ_8(src[0]); #include "../csp_packed_packed.h" /* yuva_32_to_gray_16_ia */ #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME yuva_32_to_gray_16_ia_c #define CONVERT dst[0] = Y_8_TO_YJ_16(src[0]); #include "../csp_packed_packed.h" /* yuva_32_to_gray_float_ia */ #define IN_TYPE uint8_t #define OUT_TYPE float #define IN_ADVANCE 4 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME yuva_32_to_gray_float_ia_c #define CONVERT dst[0] = Y_8_TO_FLOAT(src[0]); #include "../csp_packed_packed.h" /* YUVA -> GRAY */ #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME yuva_32_to_gray_8_c #define INIT INIT_GRAYA_16 #define CONVERT GRAYA_16_TO_GRAY_8(Y_8_TO_YJ_8(src[0]), src[3], dst[0]) #include "../csp_packed_packed.h" #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME yuva_32_to_gray_16_c #define INIT int tmp; INIT_GRAYA_16 #define CONVERT GRAYA_16_TO_GRAY_8(Y_8_TO_YJ_8(src[0]), src[3], tmp) \ dst[0] = RGB_8_TO_16(tmp); #include "../csp_packed_packed.h" #define IN_TYPE uint8_t #define OUT_TYPE float #define IN_ADVANCE 4 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME yuva_32_to_gray_float_c #define INIT int tmp; INIT_GRAYA_16 #define CONVERT GRAYA_16_TO_GRAY_8(Y_8_TO_YJ_8(src[0]), src[3], tmp) \ dst[0] = RGB_8_TO_FLOAT(tmp); #include "../csp_packed_packed.h" /* */ /* yuva_64_to_graya_16 */ #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE 2 #define NUM_PIXELS 1 #define FUNC_NAME yuva_64_to_graya_16_c #define CONVERT Y_16_TO_YJ_8(src[0], dst[0]); \ RGB_16_TO_8(src[3], dst[1]); #include "../csp_packed_packed.h" /* yuva_64_to_graya_32 */ #define IN_TYPE uint16_t #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE 2 #define NUM_PIXELS 1 #define FUNC_NAME yuva_64_to_graya_32_c #define CONVERT Y_16_TO_YJ_16(src[0], dst[0]); \ dst[1] = src[3]; #include "../csp_packed_packed.h" /* yuva_64_to_graya_float */ #define IN_TYPE uint16_t #define OUT_TYPE float #define IN_ADVANCE 4 #define OUT_ADVANCE 2 #define NUM_PIXELS 1 #define FUNC_NAME yuva_64_to_graya_float_c #define CONVERT dst[0] = Y_16_TO_Y_FLOAT(src[0]); \ dst[1] = RGB_16_TO_FLOAT(src[3]); #include "../csp_packed_packed.h" /* yuva_64_to_gray_8_ia */ #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME yuva_64_to_gray_8_ia_c #define CONVERT Y_16_TO_YJ_8(src[0], dst[0]); #include "../csp_packed_packed.h" /* yuva_64_to_gray_16_ia */ #define IN_TYPE uint16_t #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME yuva_64_to_gray_16_ia_c #define CONVERT Y_16_TO_YJ_16(src[0], dst[0]); #include "../csp_packed_packed.h" /* yuva_64_to_gray_float_ia */ #define IN_TYPE uint16_t #define OUT_TYPE float #define IN_ADVANCE 4 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME yuva_64_to_gray_float_ia_c #define CONVERT dst[0] = Y_16_TO_Y_FLOAT(src[0]); #include "../csp_packed_packed.h" /* YUVA -> GRAY */ #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME yuva_64_to_gray_8_c #define INIT uint32_t tmp, tmp1; INIT_GRAYA_32 #define CONVERT Y_16_TO_YJ_16(src[0], tmp1); \ GRAYA_32_TO_GRAY_16(tmp1, src[3], tmp)\ RGB_16_TO_8(tmp, dst[0]); #include "../csp_packed_packed.h" #define IN_TYPE uint16_t #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME yuva_64_to_gray_16_c #define INIT int tmp; INIT_GRAYA_32 #define CONVERT \ Y_16_TO_YJ_16(src[0], tmp); \ GRAYA_32_TO_GRAY_16(tmp, src[3], dst[0]) #include "../csp_packed_packed.h" #define IN_TYPE uint16_t #define OUT_TYPE float #define IN_ADVANCE 4 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME yuva_64_to_gray_float_c #define INIT int tmp, tmp_gray; INIT_GRAYA_32 #define CONVERT Y_16_TO_YJ_16(src[0], tmp_gray);\ GRAYA_32_TO_GRAY_16(tmp_gray, src[3], tmp) \ dst[0] = RGB_16_TO_FLOAT(tmp); #include "../csp_packed_packed.h" /* */ /* yuva_float_to_graya_16 */ #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE 2 #define NUM_PIXELS 1 #define FUNC_NAME yuva_float_to_graya_16_c #define CONVERT YJ_FLOAT_TO_8(src[0], dst[0]); \ RGB_FLOAT_TO_8(src[3], dst[1]); #include "../csp_packed_packed.h" /* yuva_float_to_graya_32 */ #define IN_TYPE float #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE 2 #define NUM_PIXELS 1 #define FUNC_NAME yuva_float_to_graya_32_c #define CONVERT RGB_FLOAT_TO_16(src[0], dst[0]); \ RGB_FLOAT_TO_16(src[3], dst[1]); #include "../csp_packed_packed.h" /* yuva_float_to_graya_float */ #define IN_TYPE float #define OUT_TYPE float #define IN_ADVANCE 4 #define OUT_ADVANCE 2 #define NUM_PIXELS 1 #define FUNC_NAME yuva_float_to_graya_float_c #define CONVERT dst[0] = src[0]; \ dst[1] = src[3]; #include "../csp_packed_packed.h" /* yuva_float_to_gray_8_ia */ #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME yuva_float_to_gray_8_ia_c #define CONVERT YJ_FLOAT_TO_8(src[0], dst[0]); #include "../csp_packed_packed.h" /* yuva_float_to_gray_16_ia */ #define IN_TYPE float #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME yuva_float_to_gray_16_ia_c #define CONVERT RGB_FLOAT_TO_16(src[0], dst[0]); #include "../csp_packed_packed.h" /* yuva_float_to_gray_float_ia */ #define IN_TYPE float #define OUT_TYPE float #define IN_ADVANCE 4 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME yuva_float_to_gray_float_ia_c #define CONVERT dst[0] = src[0]; #include "../csp_packed_packed.h" /* YUVA -> GRAY */ #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME yuva_float_to_gray_8_c #define INIT float tmp; INIT_GRAYA_FLOAT #define CONVERT GRAYA_FLOAT_TO_GRAY_FLOAT(src[0], src[3], tmp)\ RGB_FLOAT_TO_8(tmp, dst[0]); #include "../csp_packed_packed.h" #define IN_TYPE float #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME yuva_float_to_gray_16_c #define INIT float tmp; INIT_GRAYA_FLOAT #define CONVERT \ GRAYA_FLOAT_TO_GRAY_FLOAT(src[0], src[3], tmp) \ RGB_FLOAT_TO_16(tmp, dst[0]); \ #include "../csp_packed_packed.h" #define IN_TYPE float #define OUT_TYPE float #define IN_ADVANCE 4 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME yuva_float_to_gray_float_c #define INIT INIT_GRAYA_FLOAT #define CONVERT GRAYA_FLOAT_TO_GRAY_FLOAT(src[0], src[3], dst[0]) #include "../csp_packed_packed.h" /* YUV float -> */ /* yuv_float_to_graya_16 */ #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 3 #define OUT_ADVANCE 2 #define NUM_PIXELS 1 #define FUNC_NAME yuv_float_to_graya_16_c #define CONVERT YJ_FLOAT_TO_8(src[0], dst[0]); \ dst[1] = 0xff; #include "../csp_packed_packed.h" /* yuv_float_to_graya_32 */ #define IN_TYPE float #define OUT_TYPE uint16_t #define IN_ADVANCE 3 #define OUT_ADVANCE 2 #define NUM_PIXELS 1 #define FUNC_NAME yuv_float_to_graya_32_c #define CONVERT RGB_FLOAT_TO_16(src[0], dst[0]); \ dst[1] = 0xffff; #include "../csp_packed_packed.h" /* yuv_float_to_graya_float */ #define IN_TYPE float #define OUT_TYPE float #define IN_ADVANCE 3 #define OUT_ADVANCE 2 #define NUM_PIXELS 1 #define FUNC_NAME yuv_float_to_graya_float_c #define CONVERT dst[0] = src[0]; \ dst[1] = 1.0; #include "../csp_packed_packed.h" /* yuv_float_to_gray_8 */ #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 3 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME yuv_float_to_gray_8_c #define CONVERT YJ_FLOAT_TO_8(src[0], dst[0]); #include "../csp_packed_packed.h" /* yuv_float_to_gray_16 */ #define IN_TYPE float #define OUT_TYPE uint16_t #define IN_ADVANCE 3 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME yuv_float_to_gray_16_c #define CONVERT RGB_FLOAT_TO_16(src[0], dst[0]); #include "../csp_packed_packed.h" /* yuv_float_to_gray_float */ #define IN_TYPE float #define OUT_TYPE float #define IN_ADVANCE 3 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME yuv_float_to_gray_float_c #define CONVERT dst[0] = src[0]; #include "../csp_packed_packed.h" void gavl_init_yuv_gray_funcs_c(gavl_pixelformat_function_table_t * tab, const gavl_video_options_t * opt) { if(opt->alpha_mode == GAVL_ALPHA_BLEND_COLOR) { tab->yuva_32_to_gray_8 = yuva_32_to_gray_8_c; tab->yuva_32_to_gray_16 = yuva_32_to_gray_16_c; tab->yuva_32_to_gray_float = yuva_32_to_gray_float_c; tab->yuva_64_to_gray_8 = yuva_64_to_gray_8_c; tab->yuva_float_to_gray_8 = yuva_float_to_gray_8_c; tab->yuva_64_to_gray_16 = yuva_64_to_gray_16_c; tab->yuva_float_to_gray_16 = yuva_float_to_gray_16_c; tab->yuva_64_to_gray_float = yuva_64_to_gray_float_c; tab->yuva_float_to_gray_float = yuva_float_to_gray_float_c; } else { tab->yuva_32_to_gray_8 = yuva_32_to_gray_8_ia_c; tab->yuva_32_to_gray_16 = yuva_32_to_gray_16_ia_c; tab->yuva_32_to_gray_float = yuva_32_to_gray_float_ia_c; tab->yuva_64_to_gray_8 = yuva_64_to_gray_8_ia_c; tab->yuva_float_to_gray_8 = yuva_float_to_gray_8_ia_c; tab->yuva_64_to_gray_16 = yuva_64_to_gray_16_ia_c; tab->yuva_float_to_gray_16 = yuva_float_to_gray_16_ia_c; tab->yuva_64_to_gray_float = yuva_64_to_gray_float_ia_c; tab->yuva_float_to_gray_float = yuva_float_to_gray_float_ia_c; } tab->yuv_float_to_gray_8 = yuv_float_to_gray_8_c; tab->yuv_float_to_gray_16 = yuv_float_to_gray_16_c; tab->yuv_float_to_gray_float = yuv_float_to_gray_float_c; tab->yuv_float_to_graya_16 = yuv_float_to_graya_16_c; tab->yuv_float_to_graya_32 = yuv_float_to_graya_32_c; tab->yuv_float_to_graya_float = yuv_float_to_graya_float_c; tab->yuva_64_to_graya_16 = yuva_64_to_graya_16_c; tab->yuva_float_to_graya_16 = yuva_float_to_graya_16_c; tab->yuva_64_to_graya_32 = yuva_64_to_graya_32_c; tab->yuva_float_to_graya_32 = yuva_float_to_graya_32_c; tab->yuva_64_to_graya_float = yuva_64_to_graya_float_c; tab->yuva_float_to_graya_float = yuva_float_to_graya_float_c; tab->yuy2_to_gray_8 = yuy2_to_gray_8_c; tab->uyvy_to_gray_8 = uyvy_to_gray_8_c; tab->y_8_to_gray_8 = y_8_to_gray_8_c; tab->yj_8_to_gray_8 = yj_8_to_gray_8_c; tab->y_16_to_gray_8 = y_16_to_gray_8_c; tab->yuy2_to_gray_16 = yuy2_to_gray_16_c; tab->uyvy_to_gray_16 = uyvy_to_gray_16_c; tab->y_8_to_gray_16 = y_8_to_gray_16_c; tab->yj_8_to_gray_16 = yj_8_to_gray_16_c; tab->y_16_to_gray_16 = y_16_to_gray_16_c; tab->yuy2_to_gray_float = yuy2_to_gray_float_c; tab->uyvy_to_gray_float = uyvy_to_gray_float_c; tab->y_8_to_gray_float = y_8_to_gray_float_c; tab->yj_8_to_gray_float = yj_8_to_gray_float_c; tab->y_16_to_gray_float = y_16_to_gray_float_c; tab->yuy2_to_graya_16 = yuy2_to_graya_16_c; tab->uyvy_to_graya_16 = uyvy_to_graya_16_c; tab->y_8_to_graya_16 = y_8_to_graya_16_c; tab->yj_8_to_graya_16 = yj_8_to_graya_16_c; tab->y_16_to_graya_16 = y_16_to_graya_16_c; tab->yuy2_to_graya_32 = yuy2_to_graya_32_c; tab->uyvy_to_graya_32 = uyvy_to_graya_32_c; tab->y_8_to_graya_32 = y_8_to_graya_32_c; tab->yj_8_to_graya_32 = yj_8_to_graya_32_c; tab->y_16_to_graya_32 = y_16_to_graya_32_c; tab->yuy2_to_graya_float = yuy2_to_graya_float_c; tab->uyvy_to_graya_float = uyvy_to_graya_float_c; tab->y_8_to_graya_float = y_8_to_graya_float_c; tab->yj_8_to_graya_float = yj_8_to_graya_float_c; tab->y_16_to_graya_float = y_16_to_graya_float_c; tab->yuva_32_to_graya_16 = yuva_32_to_graya_16_c; tab->yuva_32_to_graya_float = yuva_32_to_graya_float_c; tab->yuva_32_to_graya_32 = yuva_32_to_graya_32_c; } bplaum-gavl-b9385e3/gavl/c/yuv_rgb_c.c000066400000000000000000004061031513252040200175610ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include #include #include "colorspace_tables.h" #include "colorspace_macros.h" /************************************************* YUY2 -> *************************************************/ #ifndef HQ /* yuy2_to_rgb_15_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE 2 #define NUM_PIXELS 2 #define FUNC_NAME yuy2_to_rgb_15_c #define CONVERT \ YUV_8_TO_RGB_24(src[0], src[1], src[3], r, g, b) \ PACK_8_TO_RGB15(r, g, b, dst[0]); \ YUV_8_TO_RGB_24(src[2], src[1], src[3], r, g, b) \ PACK_8_TO_RGB15(r, g, b, dst[1]); #define INIT \ uint8_t r; \ uint8_t g; \ uint8_t b; \ int32_t i_tmp; #include "../csp_packed_packed.h" /* yuy2_to_bgr_15_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE 2 #define NUM_PIXELS 2 #define FUNC_NAME yuy2_to_bgr_15_c #define CONVERT \ YUV_8_TO_RGB_24(src[0], src[1], src[3], r, g, b) \ PACK_8_TO_BGR15(r, g, b, dst[0]); \ YUV_8_TO_RGB_24(src[2], src[1], src[3], r, g, b) \ PACK_8_TO_BGR15(r, g, b, dst[1]); #define INIT \ uint8_t r; \ uint8_t g; \ uint8_t b; \ int32_t i_tmp; #include "../csp_packed_packed.h" /* yuy2_to_rgb_16_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE 2 #define NUM_PIXELS 2 #define FUNC_NAME yuy2_to_rgb_16_c #define CONVERT \ YUV_8_TO_RGB_24(src[0], src[1], src[3], r, g, b) \ PACK_8_TO_RGB16(r, g, b, dst[0]); \ YUV_8_TO_RGB_24(src[2], src[1], src[3], r, g, b) \ PACK_8_TO_RGB16(r, g, b, dst[1]); #define INIT \ uint8_t r; \ uint8_t g; \ uint8_t b; \ int32_t i_tmp; #include "../csp_packed_packed.h" /* yuy2_to_bgr_16_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE 2 #define NUM_PIXELS 2 #define FUNC_NAME yuy2_to_bgr_16_c #define CONVERT \ YUV_8_TO_RGB_24(src[0], src[1], src[3], r, g, b) \ PACK_8_TO_BGR16(r, g, b, dst[0]); \ YUV_8_TO_RGB_24(src[2], src[1], src[3], r, g, b) \ PACK_8_TO_BGR16(r, g, b, dst[1]); #define INIT \ uint8_t r; \ uint8_t g; \ uint8_t b; \ int32_t i_tmp; #include "../csp_packed_packed.h" /* yuy2_to_rgb_24_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE 6 #define NUM_PIXELS 2 #define FUNC_NAME yuy2_to_rgb_24_c #define CONVERT \ YUV_8_TO_RGB_24(src[0], src[1], src[3], dst[0], dst[1], dst[2]) \ YUV_8_TO_RGB_24(src[2], src[1], src[3], dst[3], dst[4], dst[5]) #define INIT \ int32_t i_tmp; #include "../csp_packed_packed.h" /* yuy2_to_rgb_48_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE 6 #define NUM_PIXELS 2 #define FUNC_NAME yuy2_to_rgb_48_c #define CONVERT \ YUV_8_TO_RGB_48(src[0], src[1], src[3], dst[0], dst[1], dst[2]) \ YUV_8_TO_RGB_48(src[2], src[1], src[3], dst[3], dst[4], dst[5]) #define INIT \ int32_t i_tmp; #include "../csp_packed_packed.h" /* yuy2_to_rgb_float_c */ #define IN_TYPE uint8_t #define OUT_TYPE float #define IN_ADVANCE 4 #define OUT_ADVANCE 6 #define NUM_PIXELS 2 #define FUNC_NAME yuy2_to_rgb_float_c #define CONVERT \ YUV_8_TO_RGB_FLOAT(src[0], src[1], src[3], dst[0], dst[1], dst[2]) \ YUV_8_TO_RGB_FLOAT(src[2], src[1], src[3], dst[3], dst[4], dst[5]) #define INIT \ float i_tmp; #include "../csp_packed_packed.h" /* yuy2_to_bgr_24_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE 6 #define NUM_PIXELS 2 #define FUNC_NAME yuy2_to_bgr_24_c #define CONVERT \ YUV_8_TO_RGB_24(src[0], src[1], src[3], dst[2], dst[1], dst[0]) \ YUV_8_TO_RGB_24(src[2], src[1], src[3], dst[5], dst[4], dst[3]) #define INIT \ int32_t i_tmp; #include "../csp_packed_packed.h" /* yuy2_to_rgb_32_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE 8 #define NUM_PIXELS 2 #define FUNC_NAME yuy2_to_rgb_32_c #define CONVERT \ YUV_8_TO_RGB_24(src[0], src[1], src[3], dst[0], dst[1], dst[2]) \ YUV_8_TO_RGB_24(src[2], src[1], src[3], dst[4], dst[5], dst[6]) #define INIT \ int32_t i_tmp; #include "../csp_packed_packed.h" /* yuy2_to_bgr_32_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE 8 #define NUM_PIXELS 2 #define FUNC_NAME yuy2_to_bgr_32_c #define CONVERT \ YUV_8_TO_RGB_24(src[0], src[1], src[3], dst[2], dst[1], dst[0]) \ YUV_8_TO_RGB_24(src[2], src[1], src[3], dst[6], dst[5], dst[4]) #define INIT \ int32_t i_tmp; #include "../csp_packed_packed.h" /* yuy2_to_rgba_32_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE 8 #define NUM_PIXELS 2 #define FUNC_NAME yuy2_to_rgba_32_c #define CONVERT \ YUV_8_TO_RGB_24(src[0], src[1], src[3], dst[0], dst[1], dst[2]) \ dst[3] = 0xFF;\ YUV_8_TO_RGB_24(src[2], src[1], src[3], dst[4], dst[5], dst[6]) \ dst[7] = 0xFF; #define INIT \ int32_t i_tmp; #include "../csp_packed_packed.h" /* yuy2_to_rgba_64_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE 8 #define NUM_PIXELS 2 #define FUNC_NAME yuy2_to_rgba_64_c #define CONVERT \ YUV_8_TO_RGB_48(src[0], src[1], src[3], dst[0], dst[1], dst[2]) \ dst[3] = 0xFFFF;\ YUV_8_TO_RGB_48(src[2], src[1], src[3], dst[4], dst[5], dst[6]) \ dst[7] = 0xFFFF; #define INIT \ int32_t i_tmp; #include "../csp_packed_packed.h" /* yuy2_to_rgba_float_c */ #define IN_TYPE uint8_t #define OUT_TYPE float #define IN_ADVANCE 4 #define OUT_ADVANCE 8 #define NUM_PIXELS 2 #define FUNC_NAME yuy2_to_rgba_float_c #define CONVERT \ YUV_8_TO_RGB_FLOAT(src[0], src[1], src[3], dst[0], dst[1], dst[2]) \ dst[3] = 1.0;\ YUV_8_TO_RGB_FLOAT(src[2], src[1], src[3], dst[4], dst[5], dst[6]) \ dst[7] = 1.0; #define INIT \ float i_tmp; #include "../csp_packed_packed.h" /************************************************* UYVY -> *************************************************/ /* uyvy_to_rgb_15_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE 2 #define NUM_PIXELS 2 #define FUNC_NAME uyvy_to_rgb_15_c #define CONVERT \ YUV_8_TO_RGB_24(src[1], src[0], src[2], r, g, b) \ PACK_8_TO_RGB15(r, g, b, dst[0]); \ YUV_8_TO_RGB_24(src[3], src[0], src[2], r, g, b) \ PACK_8_TO_RGB15(r, g, b, dst[1]); #define INIT \ uint8_t r; \ uint8_t g; \ uint8_t b; \ int32_t i_tmp; #include "../csp_packed_packed.h" /* uyvy_to_bgr_15_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE 2 #define NUM_PIXELS 2 #define FUNC_NAME uyvy_to_bgr_15_c #define CONVERT \ YUV_8_TO_RGB_24(src[1], src[0], src[2], r, g, b) \ PACK_8_TO_BGR15(r, g, b, dst[0]); \ YUV_8_TO_RGB_24(src[3], src[0], src[2], r, g, b) \ PACK_8_TO_BGR15(r, g, b, dst[1]); #define INIT \ uint8_t r; \ uint8_t g; \ uint8_t b; \ int32_t i_tmp; #include "../csp_packed_packed.h" /* uyvy_to_rgb_16_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE 2 #define NUM_PIXELS 2 #define FUNC_NAME uyvy_to_rgb_16_c #define CONVERT \ YUV_8_TO_RGB_24(src[1], src[0], src[2], r, g, b) \ PACK_8_TO_RGB16(r, g, b, dst[0]); \ YUV_8_TO_RGB_24(src[3], src[0], src[2], r, g, b) \ PACK_8_TO_RGB16(r, g, b, dst[1]); #define INIT \ uint8_t r; \ uint8_t g; \ uint8_t b; \ int32_t i_tmp; #include "../csp_packed_packed.h" /* uyvy_to_bgr_16_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE 2 #define NUM_PIXELS 2 #define FUNC_NAME uyvy_to_bgr_16_c #define CONVERT \ YUV_8_TO_RGB_24(src[1], src[0], src[2], r, g, b) \ PACK_8_TO_BGR16(r, g, b, dst[0]); \ YUV_8_TO_RGB_24(src[3], src[0], src[2], r, g, b) \ PACK_8_TO_BGR16(r, g, b, dst[1]); #define INIT \ uint8_t r; \ uint8_t g; \ uint8_t b; \ int32_t i_tmp; #include "../csp_packed_packed.h" /* uyvy_to_rgb_24_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE 6 #define NUM_PIXELS 2 #define FUNC_NAME uyvy_to_rgb_24_c #define CONVERT \ YUV_8_TO_RGB_24(src[1], src[0], src[2], dst[0], dst[1], dst[2]) \ YUV_8_TO_RGB_24(src[3], src[0], src[2], dst[3], dst[4], dst[5]) #define INIT \ int32_t i_tmp; #include "../csp_packed_packed.h" /* uyvy_to_rgb_48_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE 6 #define NUM_PIXELS 2 #define FUNC_NAME uyvy_to_rgb_48_c #define CONVERT \ YUV_8_TO_RGB_48(src[1], src[0], src[2], dst[0], dst[1], dst[2]) \ YUV_8_TO_RGB_48(src[3], src[0], src[2], dst[3], dst[4], dst[5]) #define INIT \ int32_t i_tmp; #include "../csp_packed_packed.h" /* uyvy_to_rgb_float_c */ #define IN_TYPE uint8_t #define OUT_TYPE float #define IN_ADVANCE 4 #define OUT_ADVANCE 6 #define NUM_PIXELS 2 #define FUNC_NAME uyvy_to_rgb_float_c #define CONVERT \ YUV_8_TO_RGB_FLOAT(src[1], src[0], src[2], dst[0], dst[1], dst[2]) \ YUV_8_TO_RGB_FLOAT(src[3], src[0], src[2], dst[3], dst[4], dst[5]) #define INIT \ float i_tmp; #include "../csp_packed_packed.h" /* uyvy_to_rgb_24_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE 6 #define NUM_PIXELS 2 #define FUNC_NAME uyvy_to_bgr_24_c #define CONVERT \ YUV_8_TO_RGB_24(src[1], src[0], src[2], dst[2], dst[1], dst[0]) \ YUV_8_TO_RGB_24(src[3], src[0], src[2], dst[5], dst[4], dst[3]) #define INIT \ int32_t i_tmp; #include "../csp_packed_packed.h" /* uyvy_to_rgb_32_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE 8 #define NUM_PIXELS 2 #define FUNC_NAME uyvy_to_rgb_32_c #define CONVERT \ YUV_8_TO_RGB_24(src[1], src[0], src[2], dst[0], dst[1], dst[2]) \ YUV_8_TO_RGB_24(src[3], src[0], src[2], dst[4], dst[5], dst[6]) #define INIT \ int32_t i_tmp; #include "../csp_packed_packed.h" /* uyvy_to_bgr_32_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE 8 #define NUM_PIXELS 2 #define FUNC_NAME uyvy_to_bgr_32_c #define CONVERT \ YUV_8_TO_RGB_24(src[1], src[0], src[2], dst[2], dst[1], dst[0]) \ YUV_8_TO_RGB_24(src[3], src[0], src[2], dst[6], dst[5], dst[4]) #define INIT \ int32_t i_tmp; #include "../csp_packed_packed.h" /* uyvy_to_rgba_32_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE 8 #define NUM_PIXELS 2 #define FUNC_NAME uyvy_to_rgba_32_c #define CONVERT \ YUV_8_TO_RGB_24(src[1], src[0], src[2], dst[0], dst[1], dst[2]) \ dst[3] = 0xFF;\ YUV_8_TO_RGB_24(src[3], src[0], src[2], dst[4], dst[5], dst[6]) \ dst[7] = 0xFF; #define INIT \ int32_t i_tmp; #include "../csp_packed_packed.h" /* uyvy_to_rgba_64_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE 8 #define NUM_PIXELS 2 #define FUNC_NAME uyvy_to_rgba_64_c #define CONVERT \ YUV_8_TO_RGB_48(src[1], src[0], src[2], dst[0], dst[1], dst[2]) \ dst[3] = 0xFFFF;\ YUV_8_TO_RGB_48(src[3], src[0], src[2], dst[4], dst[5], dst[6]) \ dst[7] = 0xFFFF; #define INIT \ int32_t i_tmp; #include "../csp_packed_packed.h" /* uyvy_to_rgba_float_c */ #define IN_TYPE uint8_t #define OUT_TYPE float #define IN_ADVANCE 4 #define OUT_ADVANCE 8 #define NUM_PIXELS 2 #define FUNC_NAME uyvy_to_rgba_float_c #define CONVERT \ YUV_8_TO_RGB_FLOAT(src[1], src[0], src[2], dst[0], dst[1], dst[2]) \ dst[3] = 1.0;\ YUV_8_TO_RGB_FLOAT(src[3], src[0], src[2], dst[4], dst[5], dst[6]) \ dst[7] = 1.0; #define INIT \ float i_tmp; #include "../csp_packed_packed.h" /************************************************* YUV420P -> *************************************************/ /* yuv_420_p_to_rgb_15_c */ #define FUNC_NAME yuv_420_p_to_rgb_15_c #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 2 #define NUM_PIXELS 2 #define CHROMA_SUB 2 #define CONVERT \ YUV_8_TO_RGB_24(src_y[0], src_u[0], src_v[0], r, g, b) \ PACK_8_TO_RGB15(r, g, b, dst[0]); \ YUV_8_TO_RGB_24(src_y[1], src_u[0], src_v[0], r, g, b) \ PACK_8_TO_RGB15(r, g, b, dst[1]); #define INIT int32_t i_tmp; \ uint8_t r; \ uint8_t g; \ uint8_t b; #include "../csp_planar_packed.h" /* yuv_420_p_to_bgr_15_c */ #define FUNC_NAME yuv_420_p_to_bgr_15_c #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 2 #define NUM_PIXELS 2 #define CHROMA_SUB 2 #define CONVERT \ YUV_8_TO_RGB_24(src_y[0], src_u[0], src_v[0], r, g, b) \ PACK_8_TO_BGR15(r, g, b, dst[0]); \ YUV_8_TO_RGB_24(src_y[1], src_u[0], src_v[0], r, g, b) \ PACK_8_TO_BGR15(r, g, b, dst[1]); #define INIT int32_t i_tmp; \ uint8_t r; \ uint8_t g; \ uint8_t b; #include "../csp_planar_packed.h" /* yuv_420_p_to_rgb_16_c */ #define FUNC_NAME yuv_420_p_to_rgb_16_c #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 2 #define NUM_PIXELS 2 #define CHROMA_SUB 2 #define CONVERT \ YUV_8_TO_RGB_24(src_y[0], src_u[0], src_v[0], r, g, b) \ PACK_8_TO_RGB16(r, g, b, dst[0]); \ YUV_8_TO_RGB_24(src_y[1], src_u[0], src_v[0], r, g, b) \ PACK_8_TO_RGB16(r, g, b, dst[1]); #define INIT int32_t i_tmp; \ uint8_t r; \ uint8_t g; \ uint8_t b; #include "../csp_planar_packed.h" /* yuv_420_p_to_bgr_16_c */ #define FUNC_NAME yuv_420_p_to_bgr_16_c #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 2 #define NUM_PIXELS 2 #define CHROMA_SUB 2 #define CONVERT \ YUV_8_TO_RGB_24(src_y[0], src_u[0], src_v[0], r, g, b) \ PACK_8_TO_BGR16(r, g, b, dst[0]); \ YUV_8_TO_RGB_24(src_y[1], src_u[0], src_v[0], r, g, b) \ PACK_8_TO_BGR16(r, g, b, dst[1]); #define INIT int32_t i_tmp; \ uint8_t r; \ uint8_t g; \ uint8_t b; #include "../csp_planar_packed.h" /* yuv_420_p_to_rgb_24_c */ #define FUNC_NAME yuv_420_p_to_rgb_24_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 6 #define NUM_PIXELS 2 #define CHROMA_SUB 2 #define CONVERT \ YUV_8_TO_RGB_24(src_y[0], src_u[0], src_v[0], dst[0], dst[1], dst[2])\ YUV_8_TO_RGB_24(src_y[1], src_u[0], src_v[0], dst[3], dst[4], dst[5]) #define INIT int32_t i_tmp; #include "../csp_planar_packed.h" /* yuv_420_p_to_rgb_48_c */ #define FUNC_NAME yuv_420_p_to_rgb_48_c #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 6 #define NUM_PIXELS 2 #define CHROMA_SUB 2 #define CONVERT \ YUV_8_TO_RGB_48(src_y[0], src_u[0], src_v[0], dst[0], dst[1], dst[2])\ YUV_8_TO_RGB_48(src_y[1], src_u[0], src_v[0], dst[3], dst[4], dst[5]) #define INIT int32_t i_tmp; #include "../csp_planar_packed.h" /* yuv_420_p_to_rgb_float_c */ #define FUNC_NAME yuv_420_p_to_rgb_float_c #define IN_TYPE uint8_t #define OUT_TYPE float #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 6 #define NUM_PIXELS 2 #define CHROMA_SUB 2 #define CONVERT \ YUV_8_TO_RGB_FLOAT(src_y[0], src_u[0], src_v[0], dst[0], dst[1], dst[2])\ YUV_8_TO_RGB_FLOAT(src_y[1], src_u[0], src_v[0], dst[3], dst[4], dst[5]) #define INIT float i_tmp; #include "../csp_planar_packed.h" /* yuv_420_p_to_bgr_24_c */ #define FUNC_NAME yuv_420_p_to_bgr_24_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 6 #define NUM_PIXELS 2 #define CHROMA_SUB 2 #define CONVERT \ YUV_8_TO_RGB_24(src_y[0], src_u[0], src_v[0], dst[2], dst[1], dst[0]) \ YUV_8_TO_RGB_24(src_y[1], src_u[0], src_v[0], dst[5], dst[4], dst[3]) #define INIT int32_t i_tmp; #include "../csp_planar_packed.h" /* yuv_420_p_to_rgb_32_c */ #define FUNC_NAME yuv_420_p_to_rgb_32_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 8 #define NUM_PIXELS 2 #define CHROMA_SUB 2 #define CONVERT \ YUV_8_TO_RGB_24(src_y[0], src_u[0], src_v[0], dst[0], dst[1], dst[2]) \ YUV_8_TO_RGB_24(src_y[1], src_u[0], src_v[0], dst[4], dst[5], dst[6]) #define INIT int32_t i_tmp; #include "../csp_planar_packed.h" /* yuv_420_p_to_bgr_32_c */ #define FUNC_NAME yuv_420_p_to_bgr_32_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 8 #define NUM_PIXELS 2 #define CHROMA_SUB 2 #define CONVERT \ YUV_8_TO_RGB_24(src_y[0], src_u[0], src_v[0], dst[2], dst[1], dst[0]) \ YUV_8_TO_RGB_24(src_y[1], src_u[0], src_v[0], dst[6], dst[5], dst[4]) #define INIT int32_t i_tmp; #include "../csp_planar_packed.h" /* yuv_420_p_to_rgba_32_c */ #define FUNC_NAME yuv_420_p_to_rgba_32_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 8 #define NUM_PIXELS 2 #define CHROMA_SUB 2 #define CONVERT \ YUV_8_TO_RGB_24(src_y[0], src_u[0], src_v[0], dst[0], dst[1], dst[2]) \ dst[3] = 0xff;\ YUV_8_TO_RGB_24(src_y[1], src_u[0], src_v[0], dst[4], dst[5], dst[6]) \ dst[7] = 0xff; #define INIT int32_t i_tmp; #include "../csp_planar_packed.h" /* yuv_420_p_to_rgba_64_c */ #define FUNC_NAME yuv_420_p_to_rgba_64_c #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 8 #define NUM_PIXELS 2 #define CHROMA_SUB 2 #define CONVERT \ YUV_8_TO_RGB_48(src_y[0], src_u[0], src_v[0], dst[0], dst[1], dst[2]) \ dst[3] = 0xffff;\ YUV_8_TO_RGB_48(src_y[1], src_u[0], src_v[0], dst[4], dst[5], dst[6]) \ dst[7] = 0xffff; #define INIT int32_t i_tmp; #include "../csp_planar_packed.h" /* yuv_420_p_to_rgba_float_c */ #define FUNC_NAME yuv_420_p_to_rgba_float_c #define IN_TYPE uint8_t #define OUT_TYPE float #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 8 #define NUM_PIXELS 2 #define CHROMA_SUB 2 #define CONVERT \ YUV_8_TO_RGB_FLOAT(src_y[0], src_u[0], src_v[0], dst[0], dst[1], dst[2]) \ dst[3] = 1.0;\ YUV_8_TO_RGB_FLOAT(src_y[1], src_u[0], src_v[0], dst[4], dst[5], dst[6]) \ dst[7] = 1.0; #define INIT float i_tmp; #include "../csp_planar_packed.h" /************************************************* YUV410P -> *************************************************/ /* yuv_410_p_to_rgb_15_c */ #define FUNC_NAME yuv_410_p_to_rgb_15_c #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE_Y 4 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 4 #define NUM_PIXELS 4 #define CHROMA_SUB 4 #define CONVERT \ YUV_8_TO_RGB_24(src_y[0], src_u[0], src_v[0], r, g, b) \ PACK_8_TO_RGB15(r, g, b, dst[0]); \ YUV_8_TO_RGB_24(src_y[1], src_u[0], src_v[0], r, g, b) \ PACK_8_TO_RGB15(r, g, b, dst[1]);\ YUV_8_TO_RGB_24(src_y[2], src_u[0], src_v[0], r, g, b) \ PACK_8_TO_RGB15(r, g, b, dst[2]);\ YUV_8_TO_RGB_24(src_y[3], src_u[0], src_v[0], r, g, b) \ PACK_8_TO_RGB15(r, g, b, dst[3]); #define INIT int32_t i_tmp; \ uint8_t r; \ uint8_t g; \ uint8_t b; #include "../csp_planar_packed.h" /* yuv_410_p_to_bgr_15_c */ #define FUNC_NAME yuv_410_p_to_bgr_15_c #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE_Y 4 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 4 #define NUM_PIXELS 4 #define CHROMA_SUB 4 #define CONVERT \ YUV_8_TO_RGB_24(src_y[0], src_u[0], src_v[0], r, g, b) \ PACK_8_TO_BGR15(r, g, b, dst[0]); \ YUV_8_TO_RGB_24(src_y[1], src_u[0], src_v[0], r, g, b) \ PACK_8_TO_BGR15(r, g, b, dst[1]);\ YUV_8_TO_RGB_24(src_y[2], src_u[0], src_v[0], r, g, b) \ PACK_8_TO_BGR15(r, g, b, dst[2]);\ YUV_8_TO_RGB_24(src_y[3], src_u[0], src_v[0], r, g, b) \ PACK_8_TO_BGR15(r, g, b, dst[3]); #define INIT int32_t i_tmp; \ uint8_t r; \ uint8_t g; \ uint8_t b; #include "../csp_planar_packed.h" /* yuv_410_p_to_rgb_16_c */ #define FUNC_NAME yuv_410_p_to_rgb_16_c #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE_Y 4 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 4 #define NUM_PIXELS 4 #define CHROMA_SUB 4 #define CONVERT \ YUV_8_TO_RGB_24(src_y[0], src_u[0], src_v[0], r, g, b) \ PACK_8_TO_RGB16(r, g, b, dst[0]); \ YUV_8_TO_RGB_24(src_y[1], src_u[0], src_v[0], r, g, b) \ PACK_8_TO_RGB16(r, g, b, dst[1]);\ YUV_8_TO_RGB_24(src_y[2], src_u[0], src_v[0], r, g, b) \ PACK_8_TO_RGB16(r, g, b, dst[2]);\ YUV_8_TO_RGB_24(src_y[3], src_u[0], src_v[0], r, g, b) \ PACK_8_TO_RGB16(r, g, b, dst[3]); #define INIT int32_t i_tmp; \ uint8_t r; \ uint8_t g; \ uint8_t b; #include "../csp_planar_packed.h" /* yuv_410_p_to_bgr_16_c */ #define FUNC_NAME yuv_410_p_to_bgr_16_c #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE_Y 4 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 4 #define NUM_PIXELS 4 #define CHROMA_SUB 4 #define CONVERT \ YUV_8_TO_RGB_24(src_y[0], src_u[0], src_v[0], r, g, b) \ PACK_8_TO_BGR16(r, g, b, dst[0]); \ YUV_8_TO_RGB_24(src_y[1], src_u[0], src_v[0], r, g, b) \ PACK_8_TO_BGR16(r, g, b, dst[1]); \ YUV_8_TO_RGB_24(src_y[2], src_u[0], src_v[0], r, g, b) \ PACK_8_TO_BGR16(r, g, b, dst[2]); \ YUV_8_TO_RGB_24(src_y[3], src_u[0], src_v[0], r, g, b) \ PACK_8_TO_BGR16(r, g, b, dst[3]); #define INIT int32_t i_tmp; \ uint8_t r; \ uint8_t g; \ uint8_t b; #include "../csp_planar_packed.h" /* yuv_410_p_to_rgb_24_c */ #define FUNC_NAME yuv_410_p_to_rgb_24_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 4 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 12 #define NUM_PIXELS 4 #define CHROMA_SUB 4 #define CONVERT \ YUV_8_TO_RGB_24(src_y[0], src_u[0], src_v[0], dst[0], dst[1], dst[2])\ YUV_8_TO_RGB_24(src_y[1], src_u[0], src_v[0], dst[3], dst[4], dst[5])\ YUV_8_TO_RGB_24(src_y[2], src_u[0], src_v[0], dst[6], dst[7], dst[8])\ YUV_8_TO_RGB_24(src_y[3], src_u[0], src_v[0], dst[9], dst[10], dst[11]) #define INIT int32_t i_tmp; #include "../csp_planar_packed.h" /* yuv_410_p_to_rgb_48_c */ #define FUNC_NAME yuv_410_p_to_rgb_48_c #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE_Y 4 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 12 #define NUM_PIXELS 4 #define CHROMA_SUB 4 #define CONVERT \ YUV_8_TO_RGB_48(src_y[0], src_u[0], src_v[0], dst[0], dst[1], dst[2])\ YUV_8_TO_RGB_48(src_y[1], src_u[0], src_v[0], dst[3], dst[4], dst[5])\ YUV_8_TO_RGB_48(src_y[2], src_u[0], src_v[0], dst[6], dst[7], dst[8])\ YUV_8_TO_RGB_48(src_y[3], src_u[0], src_v[0], dst[9], dst[10], dst[11]) #define INIT int32_t i_tmp; #include "../csp_planar_packed.h" /* yuv_410_p_to_rgb_float_c */ #define FUNC_NAME yuv_410_p_to_rgb_float_c #define IN_TYPE uint8_t #define OUT_TYPE float #define IN_ADVANCE_Y 4 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 12 #define NUM_PIXELS 4 #define CHROMA_SUB 4 #define CONVERT \ YUV_8_TO_RGB_FLOAT(src_y[0], src_u[0], src_v[0], dst[0], dst[1], dst[2])\ YUV_8_TO_RGB_FLOAT(src_y[1], src_u[0], src_v[0], dst[3], dst[4], dst[5])\ YUV_8_TO_RGB_FLOAT(src_y[2], src_u[0], src_v[0], dst[6], dst[7], dst[8])\ YUV_8_TO_RGB_FLOAT(src_y[3], src_u[0], src_v[0], dst[9], dst[10], dst[11]) #define INIT float i_tmp; #include "../csp_planar_packed.h" /* yuv_410_p_to_bgr_24_c */ #define FUNC_NAME yuv_410_p_to_bgr_24_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 4 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 12 #define NUM_PIXELS 4 #define CHROMA_SUB 4 #define CONVERT \ YUV_8_TO_RGB_24(src_y[0], src_u[0], src_v[0], dst[2], dst[1], dst[0]) \ YUV_8_TO_RGB_24(src_y[1], src_u[0], src_v[0], dst[5], dst[4], dst[3]) \ YUV_8_TO_RGB_24(src_y[2], src_u[0], src_v[0], dst[8], dst[7], dst[6]) \ YUV_8_TO_RGB_24(src_y[3], src_u[0], src_v[0], dst[11], dst[10], dst[9]) #define INIT int32_t i_tmp; #include "../csp_planar_packed.h" /* yuv_410_p_to_rgb_32_c */ #define FUNC_NAME yuv_410_p_to_rgb_32_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 4 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 16 #define NUM_PIXELS 4 #define CHROMA_SUB 4 #define CONVERT \ YUV_8_TO_RGB_24(src_y[0], src_u[0], src_v[0], dst[0], dst[1], dst[2]) \ YUV_8_TO_RGB_24(src_y[1], src_u[0], src_v[0], dst[4], dst[5], dst[6]) \ YUV_8_TO_RGB_24(src_y[2], src_u[0], src_v[0], dst[8], dst[9], dst[10]) \ YUV_8_TO_RGB_24(src_y[3], src_u[0], src_v[0], dst[12], dst[13], dst[14]) #define INIT int32_t i_tmp; #include "../csp_planar_packed.h" /* yuv_410_p_to_bgr_32_c */ #define FUNC_NAME yuv_410_p_to_bgr_32_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 4 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 16 #define NUM_PIXELS 4 #define CHROMA_SUB 4 #define CONVERT \ YUV_8_TO_RGB_24(src_y[0], src_u[0], src_v[0], dst[2], dst[1], dst[0]) \ YUV_8_TO_RGB_24(src_y[1], src_u[0], src_v[0], dst[6], dst[5], dst[4]) \ YUV_8_TO_RGB_24(src_y[2], src_u[0], src_v[0], dst[10], dst[9], dst[8]) \ YUV_8_TO_RGB_24(src_y[3], src_u[0], src_v[0], dst[14], dst[13], dst[12]) #define INIT int32_t i_tmp; #include "../csp_planar_packed.h" /* yuv_410_p_to_rgba_32_c */ #define FUNC_NAME yuv_410_p_to_rgba_32_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 4 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 16 #define NUM_PIXELS 4 #define CHROMA_SUB 4 #define CONVERT \ YUV_8_TO_RGB_24(src_y[0], src_u[0], src_v[0], dst[0], dst[1], dst[2]) \ dst[3] = 0xff;\ YUV_8_TO_RGB_24(src_y[1], src_u[0], src_v[0], dst[4], dst[5], dst[6]) \ dst[7] = 0xff; \ YUV_8_TO_RGB_24(src_y[2], src_u[0], src_v[0], dst[8], dst[9], dst[10]) \ dst[11] = 0xff; \ YUV_8_TO_RGB_24(src_y[3], src_u[0], src_v[0], dst[12], dst[13], dst[14]) \ dst[15] = 0xff; #define INIT int32_t i_tmp; #include "../csp_planar_packed.h" /* yuv_410_p_to_rgba_64_c */ #define FUNC_NAME yuv_410_p_to_rgba_64_c #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE_Y 4 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 16 #define NUM_PIXELS 4 #define CHROMA_SUB 4 #define CONVERT \ YUV_8_TO_RGB_48(src_y[0], src_u[0], src_v[0], dst[0], dst[1], dst[2]) \ dst[3] = 0xffff;\ YUV_8_TO_RGB_48(src_y[1], src_u[0], src_v[0], dst[4], dst[5], dst[6]) \ dst[7] = 0xffff; \ YUV_8_TO_RGB_48(src_y[2], src_u[0], src_v[0], dst[8], dst[9], dst[10]) \ dst[11] = 0xffff; \ YUV_8_TO_RGB_48(src_y[3], src_u[0], src_v[0], dst[12], dst[13], dst[14]) \ dst[15] = 0xffff; #define INIT int32_t i_tmp; #include "../csp_planar_packed.h" /* yuv_410_p_to_rgba_float_c */ #define FUNC_NAME yuv_410_p_to_rgba_float_c #define IN_TYPE uint8_t #define OUT_TYPE float #define IN_ADVANCE_Y 4 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 16 #define NUM_PIXELS 4 #define CHROMA_SUB 4 #define CONVERT \ YUV_8_TO_RGB_FLOAT(src_y[0], src_u[0], src_v[0], dst[0], dst[1], dst[2]) \ dst[3] = 1.0;\ YUV_8_TO_RGB_FLOAT(src_y[1], src_u[0], src_v[0], dst[4], dst[5], dst[6]) \ dst[7] = 1.0; \ YUV_8_TO_RGB_FLOAT(src_y[2], src_u[0], src_v[0], dst[8], dst[9], dst[10]) \ dst[11] = 1.0; \ YUV_8_TO_RGB_FLOAT(src_y[3], src_u[0], src_v[0], dst[12], dst[13], dst[14]) \ dst[15] = 1.0; #define INIT float i_tmp; #include "../csp_planar_packed.h" /************************************************* YUV422P -> *************************************************/ /* yuv_422_p_to_rgb_15_c */ #define FUNC_NAME yuv_422_p_to_rgb_15_c #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 2 #define NUM_PIXELS 2 #define CHROMA_SUB 1 #define CONVERT \ YUV_8_TO_RGB_24(src_y[0], src_u[0], src_v[0], r, g, b) \ PACK_8_TO_RGB15(r, g, b, dst[0]); \ YUV_8_TO_RGB_24(src_y[1], src_u[0], src_v[0], r, g, b) \ PACK_8_TO_RGB15(r, g, b, dst[1]); #define INIT int32_t i_tmp; \ uint8_t r; \ uint8_t g; \ uint8_t b; #include "../csp_planar_packed.h" /* yuv_422_p_to_bgr_15_c */ #define FUNC_NAME yuv_422_p_to_bgr_15_c #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 2 #define NUM_PIXELS 2 #define CHROMA_SUB 1 #define CONVERT \ YUV_8_TO_RGB_24(src_y[0], src_u[0], src_v[0], r, g, b) \ PACK_8_TO_BGR15(r, g, b, dst[0]); \ YUV_8_TO_RGB_24(src_y[1], src_u[0], src_v[0], r, g, b) \ PACK_8_TO_BGR15(r, g, b, dst[1]); #define INIT int32_t i_tmp; \ uint8_t r; \ uint8_t g; \ uint8_t b; #include "../csp_planar_packed.h" /* yuv_422_p_to_rgb_16_c */ #define FUNC_NAME yuv_422_p_to_rgb_16_c #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 2 #define NUM_PIXELS 2 #define CHROMA_SUB 1 #define CONVERT \ YUV_8_TO_RGB_24(src_y[0], src_u[0], src_v[0], r, g, b) \ PACK_8_TO_RGB16(r, g, b, dst[0]); \ YUV_8_TO_RGB_24(src_y[1], src_u[0], src_v[0], r, g, b) \ PACK_8_TO_RGB16(r, g, b, dst[1]); #define INIT int32_t i_tmp; \ uint8_t r; \ uint8_t g; \ uint8_t b; #include "../csp_planar_packed.h" /* yuv_422_p_to_bgr_16_c */ #define FUNC_NAME yuv_422_p_to_bgr_16_c #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 2 #define NUM_PIXELS 2 #define CHROMA_SUB 1 #define CONVERT \ YUV_8_TO_RGB_24(src_y[0], src_u[0], src_v[0], r, g, b) \ PACK_8_TO_BGR16(r, g, b, dst[0]); \ YUV_8_TO_RGB_24(src_y[1], src_u[0], src_v[0], r, g, b) \ PACK_8_TO_BGR16(r, g, b, dst[1]); #define INIT int32_t i_tmp; \ uint8_t r; \ uint8_t g; \ uint8_t b; #include "../csp_planar_packed.h" /* yuv_422_p_to_rgb_24_c */ #define FUNC_NAME yuv_422_p_to_rgb_24_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 6 #define NUM_PIXELS 2 #define CHROMA_SUB 1 #define CONVERT \ YUV_8_TO_RGB_24(src_y[0], src_u[0], src_v[0], dst[0], dst[1], dst[2])\ YUV_8_TO_RGB_24(src_y[1], src_u[0], src_v[0], dst[3], dst[4], dst[5]) #define INIT int32_t i_tmp; #include "../csp_planar_packed.h" /* yuv_422_p_to_rgb_48_c */ #define FUNC_NAME yuv_422_p_to_rgb_48_c #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 6 #define NUM_PIXELS 2 #define CHROMA_SUB 1 #define CONVERT \ YUV_8_TO_RGB_48(src_y[0], src_u[0], src_v[0], dst[0], dst[1], dst[2])\ YUV_8_TO_RGB_48(src_y[1], src_u[0], src_v[0], dst[3], dst[4], dst[5]) #define INIT int32_t i_tmp; #include "../csp_planar_packed.h" /* yuv_422_p_to_rgb_float_c */ #define FUNC_NAME yuv_422_p_to_rgb_float_c #define IN_TYPE uint8_t #define OUT_TYPE float #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 6 #define NUM_PIXELS 2 #define CHROMA_SUB 1 #define CONVERT \ YUV_8_TO_RGB_FLOAT(src_y[0], src_u[0], src_v[0], dst[0], dst[1], dst[2])\ YUV_8_TO_RGB_FLOAT(src_y[1], src_u[0], src_v[0], dst[3], dst[4], dst[5]) #define INIT float i_tmp; #include "../csp_planar_packed.h" /* yuv_422_p_to_bgr_24_c */ #define FUNC_NAME yuv_422_p_to_bgr_24_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 6 #define NUM_PIXELS 2 #define CHROMA_SUB 1 #define CONVERT \ YUV_8_TO_RGB_24(src_y[0], src_u[0], src_v[0], dst[2], dst[1], dst[0]) \ YUV_8_TO_RGB_24(src_y[1], src_u[0], src_v[0], dst[5], dst[4], dst[3]) #define INIT int32_t i_tmp; #include "../csp_planar_packed.h" /* yuv_422_p_to_rgb_32_c */ #define FUNC_NAME yuv_422_p_to_rgb_32_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 8 #define NUM_PIXELS 2 #define CHROMA_SUB 1 #define CONVERT \ YUV_8_TO_RGB_24(src_y[0], src_u[0], src_v[0], dst[0], dst[1], dst[2]) \ YUV_8_TO_RGB_24(src_y[1], src_u[0], src_v[0], dst[4], dst[5], dst[6]) #define INIT int32_t i_tmp; #include "../csp_planar_packed.h" /* yuv_422_p_to_bgr_32_c */ #define FUNC_NAME yuv_422_p_to_bgr_32_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 8 #define NUM_PIXELS 2 #define CHROMA_SUB 1 #define CONVERT \ YUV_8_TO_RGB_24(src_y[0], src_u[0], src_v[0], dst[2], dst[1], dst[0]) \ YUV_8_TO_RGB_24(src_y[1], src_u[0], src_v[0], dst[6], dst[5], dst[4]) #define INIT int32_t i_tmp; #include "../csp_planar_packed.h" /* yuv_422_p_to_rgba_32_c */ #define FUNC_NAME yuv_422_p_to_rgba_32_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 8 #define NUM_PIXELS 2 #define CHROMA_SUB 1 #define CONVERT \ YUV_8_TO_RGB_24(src_y[0], src_u[0], src_v[0], dst[0], dst[1], dst[2]) \ dst[3] = 0xff;\ YUV_8_TO_RGB_24(src_y[1], src_u[0], src_v[0], dst[4], dst[5], dst[6]) \ dst[7] = 0xff; #define INIT int32_t i_tmp; #include "../csp_planar_packed.h" /* yuv_422_p_to_rgba_64_c */ #define FUNC_NAME yuv_422_p_to_rgba_64_c #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 8 #define NUM_PIXELS 2 #define CHROMA_SUB 1 #define CONVERT \ YUV_8_TO_RGB_48(src_y[0], src_u[0], src_v[0], dst[0], dst[1], dst[2]) \ dst[3] = 0xffff;\ YUV_8_TO_RGB_48(src_y[1], src_u[0], src_v[0], dst[4], dst[5], dst[6]) \ dst[7] = 0xffff; #define INIT int32_t i_tmp; #include "../csp_planar_packed.h" /* yuv_422_p_to_rgba_float_c */ #define FUNC_NAME yuv_422_p_to_rgba_float_c #define IN_TYPE uint8_t #define OUT_TYPE float #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 8 #define NUM_PIXELS 2 #define CHROMA_SUB 1 #define CONVERT \ YUV_8_TO_RGB_FLOAT(src_y[0], src_u[0], src_v[0], dst[0], dst[1], dst[2]) \ dst[3] = 1.0; \ YUV_8_TO_RGB_FLOAT(src_y[1], src_u[0], src_v[0], dst[4], dst[5], dst[6]) \ dst[7] = 1.0; #define INIT float i_tmp; #include "../csp_planar_packed.h" #endif // HQ /************************************************* YUV422P (16 bit) -> *************************************************/ /* yuv_422_p_16_to_rgb_15_c */ #define FUNC_NAME yuv_422_p_16_to_rgb_15_c #define IN_TYPE uint16_t #define OUT_TYPE uint16_t #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 2 #define NUM_PIXELS 2 #define CHROMA_SUB 1 #define CONVERT \ YUV_16_TO_RGB_24(src_y[0], src_u[0], src_v[0], r, g, b) \ PACK_8_TO_RGB15(r, g, b, dst[0]); \ YUV_16_TO_RGB_24(src_y[1], src_u[0], src_v[0], r, g, b) \ PACK_8_TO_RGB15(r, g, b, dst[1]); #define INIT int64_t i_tmp; \ uint8_t r; \ uint8_t g; \ uint8_t b; #include "../csp_planar_packed.h" /* yuv_422_p_16_to_bgr_15_c */ #define FUNC_NAME yuv_422_p_16_to_bgr_15_c #define IN_TYPE uint16_t #define OUT_TYPE uint16_t #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 2 #define NUM_PIXELS 2 #define CHROMA_SUB 1 #define CONVERT \ YUV_16_TO_RGB_24(src_y[0], src_u[0], src_v[0], r, g, b) \ PACK_8_TO_BGR15(r, g, b, dst[0]); \ YUV_16_TO_RGB_24(src_y[1], src_u[0], src_v[0], r, g, b) \ PACK_8_TO_BGR15(r, g, b, dst[1]); #define INIT int64_t i_tmp; \ uint8_t r; \ uint8_t g; \ uint8_t b; #include "../csp_planar_packed.h" /* yuv_422_p_16_to_rgb_16_c */ #define FUNC_NAME yuv_422_p_16_to_rgb_16_c #define IN_TYPE uint16_t #define OUT_TYPE uint16_t #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 2 #define NUM_PIXELS 2 #define CHROMA_SUB 1 #define CONVERT \ YUV_16_TO_RGB_24(src_y[0], src_u[0], src_v[0], r, g, b) \ PACK_8_TO_RGB16(r, g, b, dst[0]); \ YUV_16_TO_RGB_24(src_y[1], src_u[0], src_v[0], r, g, b) \ PACK_8_TO_RGB16(r, g, b, dst[1]); #define INIT int64_t i_tmp; \ uint8_t r; \ uint8_t g; \ uint8_t b; #include "../csp_planar_packed.h" /* yuv_422_p_16_to_bgr_16_c */ #define FUNC_NAME yuv_422_p_16_to_bgr_16_c #define IN_TYPE uint16_t #define OUT_TYPE uint16_t #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 2 #define NUM_PIXELS 2 #define CHROMA_SUB 1 #define CONVERT \ YUV_16_TO_RGB_24(src_y[0], src_u[0], src_v[0], r, g, b) \ PACK_8_TO_BGR16(r, g, b, dst[0]); \ YUV_16_TO_RGB_24(src_y[1], src_u[0], src_v[0], r, g, b) \ PACK_8_TO_BGR16(r, g, b, dst[1]); #define INIT int64_t i_tmp; \ uint8_t r; \ uint8_t g; \ uint8_t b; #include "../csp_planar_packed.h" /* yuv_422_p_16_to_rgb_24_c */ #define FUNC_NAME yuv_422_p_16_to_rgb_24_c #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 6 #define NUM_PIXELS 2 #define CHROMA_SUB 1 #define CONVERT \ YUV_16_TO_RGB_24(src_y[0], src_u[0], src_v[0], dst[0], dst[1], dst[2])\ YUV_16_TO_RGB_24(src_y[1], src_u[0], src_v[0], dst[3], dst[4], dst[5]) #define INIT int64_t i_tmp; #include "../csp_planar_packed.h" #ifndef HQ /* yuv_422_p_16_to_rgb_48_c */ #define FUNC_NAME yuv_422_p_16_to_rgb_48_c #define IN_TYPE uint16_t #define OUT_TYPE uint16_t #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 6 #define NUM_PIXELS 2 #define CHROMA_SUB 1 #define CONVERT \ YUV_16_TO_RGB_48(src_y[0], src_u[0], src_v[0], dst[0], dst[1], dst[2])\ YUV_16_TO_RGB_48(src_y[1], src_u[0], src_v[0], dst[3], dst[4], dst[5]) #define INIT int64_t i_tmp; #include "../csp_planar_packed.h" /* yuv_422_p_16_to_rgb_float_c */ #define FUNC_NAME yuv_422_p_16_to_rgb_float_c #define IN_TYPE uint16_t #define OUT_TYPE float #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 6 #define NUM_PIXELS 2 #define CHROMA_SUB 1 #define CONVERT \ YUV_16_TO_RGB_FLOAT(src_y[0], src_u[0], src_v[0], dst[0], dst[1], dst[2])\ YUV_16_TO_RGB_FLOAT(src_y[1], src_u[0], src_v[0], dst[3], dst[4], dst[5]) #define INIT float i_tmp; #include "../csp_planar_packed.h" #endif // !HQ /* yuv_422_p_16_to_bgr_24_c */ #define FUNC_NAME yuv_422_p_16_to_bgr_24_c #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 6 #define NUM_PIXELS 2 #define CHROMA_SUB 1 #define CONVERT \ YUV_16_TO_RGB_24(src_y[0], src_u[0], src_v[0], dst[2], dst[1], dst[0]) \ YUV_16_TO_RGB_24(src_y[1], src_u[0], src_v[0], dst[5], dst[4], dst[3]) #define INIT int64_t i_tmp; #include "../csp_planar_packed.h" /* yuv_422_p_16_to_rgb_32_c */ #define FUNC_NAME yuv_422_p_16_to_rgb_32_c #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 8 #define NUM_PIXELS 2 #define CHROMA_SUB 1 #define CONVERT \ YUV_16_TO_RGB_24(src_y[0], src_u[0], src_v[0], dst[0], dst[1], dst[2]) \ YUV_16_TO_RGB_24(src_y[1], src_u[0], src_v[0], dst[4], dst[5], dst[6]) #define INIT int64_t i_tmp; #include "../csp_planar_packed.h" /* yuv_422_p_16_to_bgr_32_c */ #define FUNC_NAME yuv_422_p_16_to_bgr_32_c #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 8 #define NUM_PIXELS 2 #define CHROMA_SUB 1 #define CONVERT \ YUV_16_TO_RGB_24(src_y[0], src_u[0], src_v[0], dst[2], dst[1], dst[0]) \ YUV_16_TO_RGB_24(src_y[1], src_u[0], src_v[0], dst[6], dst[5], dst[4]) #define INIT int64_t i_tmp; #include "../csp_planar_packed.h" /* yuv_422_p_16_to_rgba_32_c */ #define FUNC_NAME yuv_422_p_16_to_rgba_32_c #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 8 #define NUM_PIXELS 2 #define CHROMA_SUB 1 #define CONVERT \ YUV_16_TO_RGB_24(src_y[0], src_u[0], src_v[0], dst[0], dst[1], dst[2]) \ dst[3] = 0xff;\ YUV_16_TO_RGB_24(src_y[1], src_u[0], src_v[0], dst[4], dst[5], dst[6]) \ dst[7] = 0xff; #define INIT int64_t i_tmp; #include "../csp_planar_packed.h" #ifndef HQ /* yuv_422_p_16_to_rgba_64_c */ #define FUNC_NAME yuv_422_p_16_to_rgba_64_c #define IN_TYPE uint16_t #define OUT_TYPE uint16_t #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 8 #define NUM_PIXELS 2 #define CHROMA_SUB 1 #define CONVERT \ YUV_16_TO_RGB_48(src_y[0], src_u[0], src_v[0], dst[0], dst[1], dst[2]) \ dst[3] = 0xffff;\ YUV_16_TO_RGB_48(src_y[1], src_u[0], src_v[0], dst[4], dst[5], dst[6]) \ dst[7] = 0xffff; #define INIT int64_t i_tmp; #include "../csp_planar_packed.h" /* yuv_422_p_16_to_rgba_float_c */ #define FUNC_NAME yuv_422_p_16_to_rgba_float_c #define IN_TYPE uint16_t #define OUT_TYPE float #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 8 #define NUM_PIXELS 2 #define CHROMA_SUB 1 #define CONVERT \ YUV_16_TO_RGB_FLOAT(src_y[0], src_u[0], src_v[0], dst[0], dst[1], dst[2]) \ dst[3] = 1.0; \ YUV_16_TO_RGB_FLOAT(src_y[1], src_u[0], src_v[0], dst[4], dst[5], dst[6]) \ dst[7] = 1.0; #define INIT float i_tmp; #include "../csp_planar_packed.h" /************************************************* YUV411P -> *************************************************/ /* yuv_411_p_to_rgb_15_c */ #define FUNC_NAME yuv_411_p_to_rgb_15_c #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE_Y 4 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 4 #define NUM_PIXELS 4 #define CHROMA_SUB 1 #define CONVERT \ YUV_8_TO_RGB_24(src_y[0], src_u[0], src_v[0], r, g, b) \ PACK_8_TO_RGB15(r, g, b, dst[0]); \ YUV_8_TO_RGB_24(src_y[1], src_u[0], src_v[0], r, g, b) \ PACK_8_TO_RGB15(r, g, b, dst[1]);\ YUV_8_TO_RGB_24(src_y[2], src_u[0], src_v[0], r, g, b) \ PACK_8_TO_RGB15(r, g, b, dst[2]); \ YUV_8_TO_RGB_24(src_y[3], src_u[0], src_v[0], r, g, b) \ PACK_8_TO_RGB15(r, g, b, dst[3]); #define INIT int32_t i_tmp; \ uint8_t r; \ uint8_t g; \ uint8_t b; #include "../csp_planar_packed.h" /* yuv_411_p_to_bgr_15_c */ #define FUNC_NAME yuv_411_p_to_bgr_15_c #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE_Y 4 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 4 #define NUM_PIXELS 4 #define CHROMA_SUB 1 #define CONVERT \ YUV_8_TO_RGB_24(src_y[0], src_u[0], src_v[0], r, g, b) \ PACK_8_TO_BGR15(r, g, b, dst[0]); \ YUV_8_TO_RGB_24(src_y[1], src_u[0], src_v[0], r, g, b) \ PACK_8_TO_BGR15(r, g, b, dst[1]);\ YUV_8_TO_RGB_24(src_y[2], src_u[0], src_v[0], r, g, b) \ PACK_8_TO_BGR15(r, g, b, dst[2]); \ YUV_8_TO_RGB_24(src_y[3], src_u[0], src_v[0], r, g, b) \ PACK_8_TO_BGR15(r, g, b, dst[3]); #define INIT int32_t i_tmp; \ uint8_t r; \ uint8_t g; \ uint8_t b; #include "../csp_planar_packed.h" /* yuv_411_p_to_rgb_16_c */ #define FUNC_NAME yuv_411_p_to_rgb_16_c #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE_Y 4 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 4 #define NUM_PIXELS 4 #define CHROMA_SUB 1 #define CONVERT \ YUV_8_TO_RGB_24(src_y[0], src_u[0], src_v[0], r, g, b) \ PACK_8_TO_RGB16(r, g, b, dst[0]); \ YUV_8_TO_RGB_24(src_y[1], src_u[0], src_v[0], r, g, b) \ PACK_8_TO_RGB16(r, g, b, dst[1]);\ YUV_8_TO_RGB_24(src_y[2], src_u[0], src_v[0], r, g, b) \ PACK_8_TO_RGB16(r, g, b, dst[2]); \ YUV_8_TO_RGB_24(src_y[3], src_u[0], src_v[0], r, g, b) \ PACK_8_TO_RGB16(r, g, b, dst[3]); #define INIT int32_t i_tmp; \ uint8_t r; \ uint8_t g; \ uint8_t b; #include "../csp_planar_packed.h" /* yuv_411_p_to_bgr_16_c */ #define FUNC_NAME yuv_411_p_to_bgr_16_c #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE_Y 4 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 4 #define NUM_PIXELS 4 #define CHROMA_SUB 1 #define CONVERT \ YUV_8_TO_RGB_24(src_y[0], src_u[0], src_v[0], r, g, b) \ PACK_8_TO_BGR16(r, g, b, dst[0]); \ YUV_8_TO_RGB_24(src_y[1], src_u[0], src_v[0], r, g, b) \ PACK_8_TO_BGR16(r, g, b, dst[1]);\ YUV_8_TO_RGB_24(src_y[2], src_u[0], src_v[0], r, g, b) \ PACK_8_TO_BGR16(r, g, b, dst[2]); \ YUV_8_TO_RGB_24(src_y[3], src_u[0], src_v[0], r, g, b) \ PACK_8_TO_BGR16(r, g, b, dst[3]); #define INIT int32_t i_tmp; \ uint8_t r; \ uint8_t g; \ uint8_t b; #include "../csp_planar_packed.h" /* yuv_411_p_to_rgb_24_c */ #define FUNC_NAME yuv_411_p_to_rgb_24_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 4 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 12 #define NUM_PIXELS 4 #define CHROMA_SUB 1 #define CONVERT \ YUV_8_TO_RGB_24(src_y[0], src_u[0], src_v[0], dst[0], dst[1], dst[2])\ YUV_8_TO_RGB_24(src_y[1], src_u[0], src_v[0], dst[3], dst[4], dst[5])\ YUV_8_TO_RGB_24(src_y[2], src_u[0], src_v[0], dst[6], dst[7], dst[8])\ YUV_8_TO_RGB_24(src_y[3], src_u[0], src_v[0], dst[9], dst[10], dst[11]) #define INIT int32_t i_tmp; #include "../csp_planar_packed.h" /* yuv_411_p_to_rgb_48_c */ #define FUNC_NAME yuv_411_p_to_rgb_48_c #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE_Y 4 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 12 #define NUM_PIXELS 4 #define CHROMA_SUB 1 #define CONVERT \ YUV_8_TO_RGB_48(src_y[0], src_u[0], src_v[0], dst[0], dst[1], dst[2])\ YUV_8_TO_RGB_48(src_y[1], src_u[0], src_v[0], dst[3], dst[4], dst[5])\ YUV_8_TO_RGB_48(src_y[2], src_u[0], src_v[0], dst[6], dst[7], dst[8])\ YUV_8_TO_RGB_48(src_y[3], src_u[0], src_v[0], dst[9], dst[10], dst[11]) #define INIT int32_t i_tmp; #include "../csp_planar_packed.h" /* yuv_411_p_to_rgb_float_c */ #define FUNC_NAME yuv_411_p_to_rgb_float_c #define IN_TYPE uint8_t #define OUT_TYPE float #define IN_ADVANCE_Y 4 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 12 #define NUM_PIXELS 4 #define CHROMA_SUB 1 #define CONVERT \ YUV_8_TO_RGB_FLOAT(src_y[0], src_u[0], src_v[0], dst[0], dst[1], dst[2])\ YUV_8_TO_RGB_FLOAT(src_y[1], src_u[0], src_v[0], dst[3], dst[4], dst[5])\ YUV_8_TO_RGB_FLOAT(src_y[2], src_u[0], src_v[0], dst[6], dst[7], dst[8])\ YUV_8_TO_RGB_FLOAT(src_y[3], src_u[0], src_v[0], dst[9], dst[10], dst[11]) #define INIT float i_tmp; #include "../csp_planar_packed.h" /* yuv_411_p_to_bgr_24_c */ #define FUNC_NAME yuv_411_p_to_bgr_24_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 4 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 12 #define NUM_PIXELS 4 #define CHROMA_SUB 1 #define CONVERT \ YUV_8_TO_RGB_24(src_y[0], src_u[0], src_v[0], dst[2], dst[1], dst[0]) \ YUV_8_TO_RGB_24(src_y[1], src_u[0], src_v[0], dst[5], dst[4], dst[3]) \ YUV_8_TO_RGB_24(src_y[2], src_u[0], src_v[0], dst[8], dst[7], dst[6]) \ YUV_8_TO_RGB_24(src_y[3], src_u[0], src_v[0], dst[11], dst[10], dst[9]) #define INIT int32_t i_tmp; #include "../csp_planar_packed.h" /* yuv_411_p_to_rgb_32_c */ #define FUNC_NAME yuv_411_p_to_rgb_32_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 4 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 16 #define NUM_PIXELS 4 #define CHROMA_SUB 1 #define CONVERT \ YUV_8_TO_RGB_24(src_y[0], src_u[0], src_v[0], dst[0], dst[1], dst[2]) \ YUV_8_TO_RGB_24(src_y[1], src_u[0], src_v[0], dst[4], dst[5], dst[6]) \ YUV_8_TO_RGB_24(src_y[2], src_u[0], src_v[0], dst[8], dst[9], dst[10]) \ YUV_8_TO_RGB_24(src_y[3], src_u[0], src_v[0], dst[12], dst[13], dst[14]) #define INIT int32_t i_tmp; #include "../csp_planar_packed.h" /* yuv_411_p_to_bgr_32_c */ #define FUNC_NAME yuv_411_p_to_bgr_32_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 4 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 16 #define NUM_PIXELS 4 #define CHROMA_SUB 1 #define CONVERT \ YUV_8_TO_RGB_24(src_y[0], src_u[0], src_v[0], dst[2], dst[1], dst[0]) \ YUV_8_TO_RGB_24(src_y[1], src_u[0], src_v[0], dst[6], dst[5], dst[4]) \ YUV_8_TO_RGB_24(src_y[2], src_u[0], src_v[0], dst[10], dst[9], dst[8]) \ YUV_8_TO_RGB_24(src_y[3], src_u[0], src_v[0], dst[14], dst[13], dst[12]) #define INIT int32_t i_tmp; #include "../csp_planar_packed.h" /* yuv_411_p_to_rgba_32_c */ #define FUNC_NAME yuv_411_p_to_rgba_32_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 4 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 16 #define NUM_PIXELS 4 #define CHROMA_SUB 1 #define CONVERT \ YUV_8_TO_RGB_24(src_y[0], src_u[0], src_v[0], dst[0], dst[1], dst[2]) \ dst[3] = 0xff;\ YUV_8_TO_RGB_24(src_y[1], src_u[0], src_v[0], dst[4], dst[5], dst[6]) \ dst[7] = 0xff;\ YUV_8_TO_RGB_24(src_y[2], src_u[0], src_v[0], dst[8], dst[9], dst[10]) \ dst[11] = 0xff;\ YUV_8_TO_RGB_24(src_y[3], src_u[0], src_v[0], dst[12], dst[13], dst[14]) \ dst[15] = 0xff; #define INIT int32_t i_tmp; #include "../csp_planar_packed.h" /* yuv_411_p_to_rgba_64_c */ #define FUNC_NAME yuv_411_p_to_rgba_64_c #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE_Y 4 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 16 #define NUM_PIXELS 4 #define CHROMA_SUB 1 #define CONVERT \ YUV_8_TO_RGB_48(src_y[0], src_u[0], src_v[0], dst[0], dst[1], dst[2]) \ dst[3] = 0xffff;\ YUV_8_TO_RGB_48(src_y[1], src_u[0], src_v[0], dst[4], dst[5], dst[6]) \ dst[7] = 0xffff;\ YUV_8_TO_RGB_48(src_y[2], src_u[0], src_v[0], dst[8], dst[9], dst[10]) \ dst[11] = 0xffff;\ YUV_8_TO_RGB_48(src_y[3], src_u[0], src_v[0], dst[12], dst[13], dst[14]) \ dst[15] = 0xffff; #define INIT int32_t i_tmp; #include "../csp_planar_packed.h" /* yuv_411_p_to_rgba_float_c */ #define FUNC_NAME yuv_411_p_to_rgba_float_c #define IN_TYPE uint8_t #define OUT_TYPE float #define IN_ADVANCE_Y 4 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 16 #define NUM_PIXELS 4 #define CHROMA_SUB 1 #define CONVERT \ YUV_8_TO_RGB_FLOAT(src_y[0], src_u[0], src_v[0], dst[0], dst[1], dst[2]) \ dst[3] = 1.0; \ YUV_8_TO_RGB_FLOAT(src_y[1], src_u[0], src_v[0], dst[4], dst[5], dst[6]) \ dst[7] = 1.0;\ YUV_8_TO_RGB_FLOAT(src_y[2], src_u[0], src_v[0], dst[8], dst[9], dst[10]) \ dst[11] = 1.0;\ YUV_8_TO_RGB_FLOAT(src_y[3], src_u[0], src_v[0], dst[12], dst[13], dst[14]) \ dst[15] = 1.0; #define INIT float i_tmp; #include "../csp_planar_packed.h" /************************************************* YUV444P -> *************************************************/ /* yuv_444_p_to_rgb_15_c */ #define FUNC_NAME yuv_444_p_to_rgb_15_c #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE_Y 1 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define CHROMA_SUB 1 #define CONVERT \ YUV_8_TO_RGB_24(src_y[0], src_u[0], src_v[0], r, g, b) \ PACK_8_TO_RGB15(r, g, b, dst[0]); #define INIT int32_t i_tmp; \ uint8_t r; \ uint8_t g; \ uint8_t b; #include "../csp_planar_packed.h" /* yuv_444_p_to_bgr_15_c */ #define FUNC_NAME yuv_444_p_to_bgr_15_c #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE_Y 1 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define CHROMA_SUB 1 #define CONVERT \ YUV_8_TO_RGB_24(src_y[0], src_u[0], src_v[0], r, g, b) \ PACK_8_TO_BGR15(r, g, b, dst[0]); #define INIT int32_t i_tmp; \ uint8_t r; \ uint8_t g; \ uint8_t b; #include "../csp_planar_packed.h" /* yuv_444_p_to_rgb_16_c */ #define FUNC_NAME yuv_444_p_to_rgb_16_c #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE_Y 1 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define CHROMA_SUB 1 #define CONVERT \ YUV_8_TO_RGB_24(src_y[0], src_u[0], src_v[0], r, g, b) \ PACK_8_TO_RGB16(r, g, b, dst[0]); #define INIT int32_t i_tmp; \ uint8_t r; \ uint8_t g; \ uint8_t b; #include "../csp_planar_packed.h" /* yuv_444_p_to_bgr_16_c */ #define FUNC_NAME yuv_444_p_to_bgr_16_c #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE_Y 1 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define CHROMA_SUB 1 #define CONVERT \ YUV_8_TO_RGB_24(src_y[0], src_u[0], src_v[0], r, g, b) \ PACK_8_TO_BGR16(r, g, b, dst[0]); #define INIT int32_t i_tmp; \ uint8_t r; \ uint8_t g; \ uint8_t b; #include "../csp_planar_packed.h" /* yuv_444_p_to_rgb_24_c */ #define FUNC_NAME yuv_444_p_to_rgb_24_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 1 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define CHROMA_SUB 1 #define CONVERT \ YUV_8_TO_RGB_24(src_y[0], src_u[0], src_v[0], dst[0], dst[1], dst[2]) #define INIT int32_t i_tmp; #include "../csp_planar_packed.h" /* yuv_444_p_to_rgb_48_c */ #define FUNC_NAME yuv_444_p_to_rgb_48_c #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE_Y 1 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define CHROMA_SUB 1 #define CONVERT \ YUV_8_TO_RGB_48(src_y[0], src_u[0], src_v[0], dst[0], dst[1], dst[2]) #define INIT int32_t i_tmp; #include "../csp_planar_packed.h" /* yuv_444_p_to_rgb_float_c */ #define FUNC_NAME yuv_444_p_to_rgb_float_c #define IN_TYPE uint8_t #define OUT_TYPE float #define IN_ADVANCE_Y 1 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define CHROMA_SUB 1 #define CONVERT \ YUV_8_TO_RGB_FLOAT(src_y[0], src_u[0], src_v[0], dst[0], dst[1], dst[2]) #define INIT float i_tmp; #include "../csp_planar_packed.h" /* yuv_444_p_to_bgr_24_c */ #define FUNC_NAME yuv_444_p_to_bgr_24_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 1 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define CHROMA_SUB 1 #define CONVERT \ YUV_8_TO_RGB_24(src_y[0], src_u[0], src_v[0], dst[2], dst[1], dst[0]) #define INIT int32_t i_tmp; #include "../csp_planar_packed.h" /* yuv_444_p_to_rgb_32_c */ #define FUNC_NAME yuv_444_p_to_rgb_32_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 1 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define CHROMA_SUB 1 #define CONVERT \ YUV_8_TO_RGB_24(src_y[0], src_u[0], src_v[0], dst[0], dst[1], dst[2]) #define INIT int32_t i_tmp; #include "../csp_planar_packed.h" /* yuv_444_p_to_bgr_32_c */ #define FUNC_NAME yuv_444_p_to_bgr_32_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 1 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define CHROMA_SUB 1 #define CONVERT \ YUV_8_TO_RGB_24(src_y[0], src_u[0], src_v[0], dst[2], dst[1], dst[0]) #define INIT int32_t i_tmp; #include "../csp_planar_packed.h" /* yuv_444_p_to_rgba_32_c */ #define FUNC_NAME yuv_444_p_to_rgba_32_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 1 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define CHROMA_SUB 1 #define CONVERT \ YUV_8_TO_RGB_24(src_y[0], src_u[0], src_v[0], dst[0], dst[1], dst[2]) \ dst[3] = 0xff; #define INIT int32_t i_tmp; #include "../csp_planar_packed.h" /* yuv_444_p_to_rgba_64_c */ #define FUNC_NAME yuv_444_p_to_rgba_64_c #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE_Y 1 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define CHROMA_SUB 1 #define CONVERT \ YUV_8_TO_RGB_48(src_y[0], src_u[0], src_v[0], dst[0], dst[1], dst[2]) \ dst[3] = 0xffff; #define INIT int32_t i_tmp; #include "../csp_planar_packed.h" /* yuv_444_p_to_rgba_float_c */ #define FUNC_NAME yuv_444_p_to_rgba_float_c #define IN_TYPE uint8_t #define OUT_TYPE float #define IN_ADVANCE_Y 1 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define CHROMA_SUB 1 #define CONVERT \ YUV_8_TO_RGB_FLOAT(src_y[0], src_u[0], src_v[0], dst[0], dst[1], dst[2]) \ dst[3] = 1.0; #define INIT float i_tmp; #include "../csp_planar_packed.h" #endif // !HQ /************************************************* YUV444P (16 bit) -> *************************************************/ /* yuv_444_p_16_to_rgb_15_c */ #define FUNC_NAME yuv_444_p_16_to_rgb_15_c #define IN_TYPE uint16_t #define OUT_TYPE uint16_t #define IN_ADVANCE_Y 1 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define CHROMA_SUB 1 #define CONVERT \ YUV_16_TO_RGB_24(src_y[0], src_u[0], src_v[0], r, g, b) \ PACK_8_TO_RGB15(r, g, b, dst[0]); #define INIT int64_t i_tmp; \ uint8_t r; \ uint8_t g; \ uint8_t b; #include "../csp_planar_packed.h" /* yuv_444_p_16_to_bgr_15_c */ #define FUNC_NAME yuv_444_p_16_to_bgr_15_c #define IN_TYPE uint16_t #define OUT_TYPE uint16_t #define IN_ADVANCE_Y 1 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define CHROMA_SUB 1 #define CONVERT \ YUV_16_TO_RGB_24(src_y[0], src_u[0], src_v[0], r, g, b) \ PACK_8_TO_BGR15(r, g, b, dst[0]); #define INIT int64_t i_tmp; \ uint8_t r; \ uint8_t g; \ uint8_t b; #include "../csp_planar_packed.h" /* yuv_444_p_16_to_rgb_16_c */ #define FUNC_NAME yuv_444_p_16_to_rgb_16_c #define IN_TYPE uint16_t #define OUT_TYPE uint16_t #define IN_ADVANCE_Y 1 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define CHROMA_SUB 1 #define CONVERT \ YUV_16_TO_RGB_24(src_y[0], src_u[0], src_v[0], r, g, b) \ PACK_8_TO_RGB16(r, g, b, dst[0]); #define INIT int64_t i_tmp; \ uint8_t r; \ uint8_t g; \ uint8_t b; #include "../csp_planar_packed.h" /* yuv_444_p_16_to_bgr_16_c */ #define FUNC_NAME yuv_444_p_16_to_bgr_16_c #define IN_TYPE uint16_t #define OUT_TYPE uint16_t #define IN_ADVANCE_Y 1 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define CHROMA_SUB 1 #define CONVERT \ YUV_16_TO_RGB_24(src_y[0], src_u[0], src_v[0], r, g, b) \ PACK_8_TO_BGR16(r, g, b, dst[0]); #define INIT int64_t i_tmp; \ uint8_t r; \ uint8_t g; \ uint8_t b; #include "../csp_planar_packed.h" /* yuv_444_p_16_to_rgb_24_c */ #define FUNC_NAME yuv_444_p_16_to_rgb_24_c #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 1 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define CHROMA_SUB 1 #define CONVERT \ YUV_16_TO_RGB_24(src_y[0], src_u[0], src_v[0], dst[0], dst[1], dst[2]) #define INIT int64_t i_tmp; #include "../csp_planar_packed.h" #ifndef HQ /* yuv_444_p_16_to_rgb_48_c */ #define FUNC_NAME yuv_444_p_16_to_rgb_48_c #define IN_TYPE uint16_t #define OUT_TYPE uint16_t #define IN_ADVANCE_Y 1 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define CHROMA_SUB 1 #define CONVERT \ YUV_16_TO_RGB_48(src_y[0], src_u[0], src_v[0], dst[0], dst[1], dst[2]) #define INIT int64_t i_tmp; #include "../csp_planar_packed.h" /* yuv_444_p_16_to_rgb_float_c */ #define FUNC_NAME yuv_444_p_16_to_rgb_float_c #define IN_TYPE uint16_t #define OUT_TYPE float #define IN_ADVANCE_Y 1 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define CHROMA_SUB 1 #define CONVERT \ YUV_16_TO_RGB_FLOAT(src_y[0], src_u[0], src_v[0], dst[0], dst[1], dst[2]) #define INIT float i_tmp; #include "../csp_planar_packed.h" #endif // HQ /* yuv_444_p_16_to_bgr_24_c */ #define FUNC_NAME yuv_444_p_16_to_bgr_24_c #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 1 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define CHROMA_SUB 1 #define CONVERT \ YUV_16_TO_RGB_24(src_y[0], src_u[0], src_v[0], dst[2], dst[1], dst[0]) #define INIT int64_t i_tmp; #include "../csp_planar_packed.h" /* yuv_444_p_16_to_rgb_32_c */ #define FUNC_NAME yuv_444_p_16_to_rgb_32_c #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 1 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define CHROMA_SUB 1 #define CONVERT \ YUV_16_TO_RGB_24(src_y[0], src_u[0], src_v[0], dst[0], dst[1], dst[2]) #define INIT int64_t i_tmp; #include "../csp_planar_packed.h" /* yuv_444_p_16_to_bgr_32_c */ #define FUNC_NAME yuv_444_p_16_to_bgr_32_c #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 1 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define CHROMA_SUB 1 #define CONVERT \ YUV_16_TO_RGB_24(src_y[0], src_u[0], src_v[0], dst[2], dst[1], dst[0]) #define INIT int64_t i_tmp; #include "../csp_planar_packed.h" /* yuv_444_p_16_to_rgba_32_c */ #define FUNC_NAME yuv_444_p_16_to_rgba_32_c #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 1 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define CHROMA_SUB 1 #define CONVERT \ YUV_16_TO_RGB_24(src_y[0], src_u[0], src_v[0], dst[0], dst[1], dst[2]) \ dst[3] = 0xff; #define INIT int64_t i_tmp; #include "../csp_planar_packed.h" #ifndef HQ /* yuv_444_p_16_to_rgba_64_c */ #define FUNC_NAME yuv_444_p_16_to_rgba_64_c #define IN_TYPE uint16_t #define OUT_TYPE uint16_t #define IN_ADVANCE_Y 1 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define CHROMA_SUB 1 #define CONVERT \ YUV_16_TO_RGB_48(src_y[0], src_u[0], src_v[0], dst[0], dst[1], dst[2]) \ dst[3] = 0xffff; #define INIT int64_t i_tmp; #include "../csp_planar_packed.h" /* yuv_444_p_16_to_rgba_float_c */ #define FUNC_NAME yuv_444_p_16_to_rgba_float_c #define IN_TYPE uint16_t #define OUT_TYPE float #define IN_ADVANCE_Y 1 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define CHROMA_SUB 1 #define CONVERT \ YUV_16_TO_RGB_FLOAT(src_y[0], src_u[0], src_v[0], dst[0], dst[1], dst[2]) \ dst[3] = 1.0; #define INIT float i_tmp; #include "../csp_planar_packed.h" /* JPEG */ /************************************************* YUVJ 420 P -> *************************************************/ /* yuvj_420_p_to_rgb_15_c */ #define FUNC_NAME yuvj_420_p_to_rgb_15_c #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 2 #define NUM_PIXELS 2 #define CHROMA_SUB 2 #define CONVERT \ YUVJ_8_TO_RGB_24(src_y[0], src_u[0], src_v[0], r, g, b) \ PACK_8_TO_RGB15(r, g, b, dst[0]); \ YUVJ_8_TO_RGB_24(src_y[1], src_u[0], src_v[0], r, g, b) \ PACK_8_TO_RGB15(r, g, b, dst[1]); #define INIT int32_t i_tmp; \ uint8_t r; \ uint8_t g; \ uint8_t b; #include "../csp_planar_packed.h" /* yuvj_420_p_to_bgr_15_c */ #define FUNC_NAME yuvj_420_p_to_bgr_15_c #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 2 #define NUM_PIXELS 2 #define CHROMA_SUB 2 #define CONVERT \ YUVJ_8_TO_RGB_24(src_y[0], src_u[0], src_v[0], r, g, b) \ PACK_8_TO_BGR15(r, g, b, dst[0]); \ YUVJ_8_TO_RGB_24(src_y[1], src_u[0], src_v[0], r, g, b) \ PACK_8_TO_BGR15(r, g, b, dst[1]); #define INIT int32_t i_tmp; \ uint8_t r; \ uint8_t g; \ uint8_t b; #include "../csp_planar_packed.h" /* yuvj_420_p_to_rgb_16_c */ #define FUNC_NAME yuvj_420_p_to_rgb_16_c #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 2 #define NUM_PIXELS 2 #define CHROMA_SUB 2 #define CONVERT \ YUVJ_8_TO_RGB_24(src_y[0], src_u[0], src_v[0], r, g, b) \ PACK_8_TO_RGB16(r, g, b, dst[0]); \ YUVJ_8_TO_RGB_24(src_y[1], src_u[0], src_v[0], r, g, b) \ PACK_8_TO_RGB16(r, g, b, dst[1]); #define INIT int32_t i_tmp; \ uint8_t r; \ uint8_t g; \ uint8_t b; #include "../csp_planar_packed.h" /* yuvj_420_p_to_bgr_16_c */ #define FUNC_NAME yuvj_420_p_to_bgr_16_c #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 2 #define NUM_PIXELS 2 #define CHROMA_SUB 2 #define CONVERT \ YUVJ_8_TO_RGB_24(src_y[0], src_u[0], src_v[0], r, g, b) \ PACK_8_TO_BGR16(r, g, b, dst[0]); \ YUVJ_8_TO_RGB_24(src_y[1], src_u[0], src_v[0], r, g, b) \ PACK_8_TO_BGR16(r, g, b, dst[1]); #define INIT int32_t i_tmp; \ uint8_t r; \ uint8_t g; \ uint8_t b; #include "../csp_planar_packed.h" /* yuvj_420_p_to_rgb_24_c */ #define FUNC_NAME yuvj_420_p_to_rgb_24_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 6 #define NUM_PIXELS 2 #define CHROMA_SUB 2 #define CONVERT \ YUVJ_8_TO_RGB_24(src_y[0], src_u[0], src_v[0], dst[0], dst[1], dst[2])\ YUVJ_8_TO_RGB_24(src_y[1], src_u[0], src_v[0], dst[3], dst[4], dst[5]) #define INIT int32_t i_tmp; #include "../csp_planar_packed.h" /* yuvj_420_p_to_rgb_48_c */ #define FUNC_NAME yuvj_420_p_to_rgb_48_c #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 6 #define NUM_PIXELS 2 #define CHROMA_SUB 2 #define CONVERT \ YUVJ_8_TO_RGB_48(src_y[0], src_u[0], src_v[0], dst[0], dst[1], dst[2])\ YUVJ_8_TO_RGB_48(src_y[1], src_u[0], src_v[0], dst[3], dst[4], dst[5]) #define INIT int32_t i_tmp; #include "../csp_planar_packed.h" /* yuvj_420_p_to_rgb_float_c */ #define FUNC_NAME yuvj_420_p_to_rgb_float_c #define IN_TYPE uint8_t #define OUT_TYPE float #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 6 #define NUM_PIXELS 2 #define CHROMA_SUB 2 #define CONVERT \ YUVJ_8_TO_RGB_FLOAT(src_y[0], src_u[0], src_v[0], dst[0], dst[1], dst[2])\ YUVJ_8_TO_RGB_FLOAT(src_y[1], src_u[0], src_v[0], dst[3], dst[4], dst[5]) #define INIT float i_tmp; #include "../csp_planar_packed.h" /* yuvj_420_p_to_bgr_24_c */ #define FUNC_NAME yuvj_420_p_to_bgr_24_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 6 #define NUM_PIXELS 2 #define CHROMA_SUB 2 #define CONVERT \ YUVJ_8_TO_RGB_24(src_y[0], src_u[0], src_v[0], dst[2], dst[1], dst[0]) \ YUVJ_8_TO_RGB_24(src_y[1], src_u[0], src_v[0], dst[5], dst[4], dst[3]) #define INIT int32_t i_tmp; #include "../csp_planar_packed.h" /* yuvj_420_p_to_rgb_32_c */ #define FUNC_NAME yuvj_420_p_to_rgb_32_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 8 #define NUM_PIXELS 2 #define CHROMA_SUB 2 #define CONVERT \ YUVJ_8_TO_RGB_24(src_y[0], src_u[0], src_v[0], dst[0], dst[1], dst[2]) \ YUVJ_8_TO_RGB_24(src_y[1], src_u[0], src_v[0], dst[4], dst[5], dst[6]) #define INIT int32_t i_tmp; #include "../csp_planar_packed.h" /* yuvj_420_p_to_bgr_32_c */ #define FUNC_NAME yuvj_420_p_to_bgr_32_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 8 #define NUM_PIXELS 2 #define CHROMA_SUB 2 #define CONVERT \ YUVJ_8_TO_RGB_24(src_y[0], src_u[0], src_v[0], dst[2], dst[1], dst[0]) \ YUVJ_8_TO_RGB_24(src_y[1], src_u[0], src_v[0], dst[6], dst[5], dst[4]) #define INIT int32_t i_tmp; #include "../csp_planar_packed.h" /* yuvj_420_p_to_rgba_32_c */ #define FUNC_NAME yuvj_420_p_to_rgba_32_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 8 #define NUM_PIXELS 2 #define CHROMA_SUB 2 #define CONVERT \ YUVJ_8_TO_RGB_24(src_y[0], src_u[0], src_v[0], dst[0], dst[1], dst[2]) \ dst[3] = 0xff;\ YUVJ_8_TO_RGB_24(src_y[1], src_u[0], src_v[0], dst[4], dst[5], dst[6]) \ dst[7] = 0xff; #define INIT int32_t i_tmp; #include "../csp_planar_packed.h" /* yuvj_420_p_to_rgba_64_c */ #define FUNC_NAME yuvj_420_p_to_rgba_64_c #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 8 #define NUM_PIXELS 2 #define CHROMA_SUB 2 #define CONVERT \ YUVJ_8_TO_RGB_48(src_y[0], src_u[0], src_v[0], dst[0], dst[1], dst[2]) \ dst[3] = 0xffff;\ YUVJ_8_TO_RGB_48(src_y[1], src_u[0], src_v[0], dst[4], dst[5], dst[6]) \ dst[7] = 0xffff; #define INIT int32_t i_tmp; #include "../csp_planar_packed.h" /* yuvj_420_p_to_rgba_float_c */ #define FUNC_NAME yuvj_420_p_to_rgba_float_c #define IN_TYPE uint8_t #define OUT_TYPE float #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 8 #define NUM_PIXELS 2 #define CHROMA_SUB 2 #define CONVERT \ YUVJ_8_TO_RGB_FLOAT(src_y[0], src_u[0], src_v[0], dst[0], dst[1], dst[2]) \ dst[3] = 1.0;\ YUVJ_8_TO_RGB_FLOAT(src_y[1], src_u[0], src_v[0], dst[4], dst[5], dst[6]) \ dst[7] = 1.0; #define INIT float i_tmp; #include "../csp_planar_packed.h" /************************************************* YUVJ 422 P -> *************************************************/ /* yuvj_422_p_to_rgb_15_c */ #define FUNC_NAME yuvj_422_p_to_rgb_15_c #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 2 #define NUM_PIXELS 2 #define CHROMA_SUB 1 #define CONVERT \ YUVJ_8_TO_RGB_24(src_y[0], src_u[0], src_v[0], r, g, b) \ PACK_8_TO_RGB15(r, g, b, dst[0]); \ YUVJ_8_TO_RGB_24(src_y[1], src_u[0], src_v[0], r, g, b) \ PACK_8_TO_RGB15(r, g, b, dst[1]); #define INIT int32_t i_tmp; \ uint8_t r; \ uint8_t g; \ uint8_t b; #include "../csp_planar_packed.h" /* yuvj_422_p_to_bgr_15_c */ #define FUNC_NAME yuvj_422_p_to_bgr_15_c #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 2 #define NUM_PIXELS 2 #define CHROMA_SUB 1 #define CONVERT \ YUVJ_8_TO_RGB_24(src_y[0], src_u[0], src_v[0], r, g, b) \ PACK_8_TO_BGR15(r, g, b, dst[0]); \ YUVJ_8_TO_RGB_24(src_y[1], src_u[0], src_v[0], r, g, b) \ PACK_8_TO_BGR15(r, g, b, dst[1]); #define INIT int32_t i_tmp; \ uint8_t r; \ uint8_t g; \ uint8_t b; #include "../csp_planar_packed.h" /* yuvj_422_p_to_rgb_16_c */ #define FUNC_NAME yuvj_422_p_to_rgb_16_c #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 2 #define NUM_PIXELS 2 #define CHROMA_SUB 1 #define CONVERT \ YUVJ_8_TO_RGB_24(src_y[0], src_u[0], src_v[0], r, g, b) \ PACK_8_TO_RGB16(r, g, b, dst[0]); \ YUVJ_8_TO_RGB_24(src_y[1], src_u[0], src_v[0], r, g, b) \ PACK_8_TO_RGB16(r, g, b, dst[1]); #define INIT int32_t i_tmp; \ uint8_t r; \ uint8_t g; \ uint8_t b; #include "../csp_planar_packed.h" /* yuvj_422_p_to_bgr_16_c */ #define FUNC_NAME yuvj_422_p_to_bgr_16_c #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 2 #define NUM_PIXELS 2 #define CHROMA_SUB 1 #define CONVERT \ YUVJ_8_TO_RGB_24(src_y[0], src_u[0], src_v[0], r, g, b) \ PACK_8_TO_BGR16(r, g, b, dst[0]); \ YUVJ_8_TO_RGB_24(src_y[1], src_u[0], src_v[0], r, g, b) \ PACK_8_TO_BGR16(r, g, b, dst[1]); #define INIT int32_t i_tmp; \ uint8_t r; \ uint8_t g; \ uint8_t b; #include "../csp_planar_packed.h" /* yuvj_422_p_to_rgb_24_c */ #define FUNC_NAME yuvj_422_p_to_rgb_24_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 6 #define NUM_PIXELS 2 #define CHROMA_SUB 1 #define CONVERT \ YUVJ_8_TO_RGB_24(src_y[0], src_u[0], src_v[0], dst[0], dst[1], dst[2])\ YUVJ_8_TO_RGB_24(src_y[1], src_u[0], src_v[0], dst[3], dst[4], dst[5]) #define INIT int32_t i_tmp; #include "../csp_planar_packed.h" /* yuvj_422_p_to_rgb_48_c */ #define FUNC_NAME yuvj_422_p_to_rgb_48_c #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 6 #define NUM_PIXELS 2 #define CHROMA_SUB 1 #define CONVERT \ YUVJ_8_TO_RGB_48(src_y[0], src_u[0], src_v[0], dst[0], dst[1], dst[2])\ YUVJ_8_TO_RGB_48(src_y[1], src_u[0], src_v[0], dst[3], dst[4], dst[5]) #define INIT int32_t i_tmp; #include "../csp_planar_packed.h" /* yuvj_422_p_to_rgb_float_c */ #define FUNC_NAME yuvj_422_p_to_rgb_float_c #define IN_TYPE uint8_t #define OUT_TYPE float #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 6 #define NUM_PIXELS 2 #define CHROMA_SUB 1 #define CONVERT \ YUVJ_8_TO_RGB_FLOAT(src_y[0], src_u[0], src_v[0], dst[0], dst[1], dst[2])\ YUVJ_8_TO_RGB_FLOAT(src_y[1], src_u[0], src_v[0], dst[3], dst[4], dst[5]) #define INIT float i_tmp; #include "../csp_planar_packed.h" /* yuvj_422_p_to_bgr_24_c */ #define FUNC_NAME yuvj_422_p_to_bgr_24_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 6 #define NUM_PIXELS 2 #define CHROMA_SUB 1 #define CONVERT \ YUVJ_8_TO_RGB_24(src_y[0], src_u[0], src_v[0], dst[2], dst[1], dst[0]) \ YUVJ_8_TO_RGB_24(src_y[1], src_u[0], src_v[0], dst[5], dst[4], dst[3]) #define INIT int32_t i_tmp; #include "../csp_planar_packed.h" /* yuvj_422_p_to_rgb_32_c */ #define FUNC_NAME yuvj_422_p_to_rgb_32_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 8 #define NUM_PIXELS 2 #define CHROMA_SUB 1 #define CONVERT \ YUVJ_8_TO_RGB_24(src_y[0], src_u[0], src_v[0], dst[0], dst[1], dst[2]) \ YUVJ_8_TO_RGB_24(src_y[1], src_u[0], src_v[0], dst[4], dst[5], dst[6]) #define INIT int32_t i_tmp; #include "../csp_planar_packed.h" /* yuvj_422_p_to_bgr_32_c */ #define FUNC_NAME yuvj_422_p_to_bgr_32_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 8 #define NUM_PIXELS 2 #define CHROMA_SUB 1 #define CONVERT \ YUVJ_8_TO_RGB_24(src_y[0], src_u[0], src_v[0], dst[2], dst[1], dst[0]) \ YUVJ_8_TO_RGB_24(src_y[1], src_u[0], src_v[0], dst[6], dst[5], dst[4]) #define INIT int32_t i_tmp; #include "../csp_planar_packed.h" /* yuvj_422_p_to_rgba_32_c */ #define FUNC_NAME yuvj_422_p_to_rgba_32_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 8 #define NUM_PIXELS 2 #define CHROMA_SUB 1 #define CONVERT \ YUVJ_8_TO_RGB_24(src_y[0], src_u[0], src_v[0], dst[0], dst[1], dst[2]) \ dst[3] = 0xff;\ YUVJ_8_TO_RGB_24(src_y[1], src_u[0], src_v[0], dst[4], dst[5], dst[6]) \ dst[7] = 0xff; #define INIT int32_t i_tmp; #include "../csp_planar_packed.h" /* yuvj_422_p_to_rgba_64_c */ #define FUNC_NAME yuvj_422_p_to_rgba_64_c #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 8 #define NUM_PIXELS 2 #define CHROMA_SUB 1 #define CONVERT \ YUVJ_8_TO_RGB_48(src_y[0], src_u[0], src_v[0], dst[0], dst[1], dst[2]) \ dst[3] = 0xffff;\ YUVJ_8_TO_RGB_48(src_y[1], src_u[0], src_v[0], dst[4], dst[5], dst[6]) \ dst[7] = 0xffff; #define INIT int32_t i_tmp; #include "../csp_planar_packed.h" /* yuvj_422_p_to_rgba_float_c */ #define FUNC_NAME yuvj_422_p_to_rgba_float_c #define IN_TYPE uint8_t #define OUT_TYPE float #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 8 #define NUM_PIXELS 2 #define CHROMA_SUB 1 #define CONVERT \ YUVJ_8_TO_RGB_FLOAT(src_y[0], src_u[0], src_v[0], dst[0], dst[1], dst[2]) \ dst[3] = 1.0;\ YUVJ_8_TO_RGB_FLOAT(src_y[1], src_u[0], src_v[0], dst[4], dst[5], dst[6]) \ dst[7] = 1.0; #define INIT float i_tmp; #include "../csp_planar_packed.h" /************************************************* YUVJ 444 P -> *************************************************/ /* yuvj_444_p_to_rgb_15_c */ #define FUNC_NAME yuvj_444_p_to_rgb_15_c #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE_Y 1 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define CHROMA_SUB 1 #define CONVERT \ YUVJ_8_TO_RGB_24(src_y[0], src_u[0], src_v[0], r, g, b) \ PACK_8_TO_RGB15(r, g, b, dst[0]); #define INIT int32_t i_tmp; \ uint8_t r; \ uint8_t g; \ uint8_t b; #include "../csp_planar_packed.h" /* yuvj_444_p_to_bgr_15_c */ #define FUNC_NAME yuvj_444_p_to_bgr_15_c #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE_Y 1 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define CHROMA_SUB 1 #define CONVERT \ YUVJ_8_TO_RGB_24(src_y[0], src_u[0], src_v[0], r, g, b) \ PACK_8_TO_BGR15(r, g, b, dst[0]); #define INIT int32_t i_tmp; \ uint8_t r; \ uint8_t g; \ uint8_t b; #include "../csp_planar_packed.h" /* yuvj_444_p_to_rgb_16_c */ #define FUNC_NAME yuvj_444_p_to_rgb_16_c #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE_Y 1 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define CHROMA_SUB 1 #define CONVERT \ YUVJ_8_TO_RGB_24(src_y[0], src_u[0], src_v[0], r, g, b) \ PACK_8_TO_RGB16(r, g, b, dst[0]); #define INIT int32_t i_tmp; \ uint8_t r; \ uint8_t g; \ uint8_t b; #include "../csp_planar_packed.h" /* yuvj_444_p_to_bgr_16_c */ #define FUNC_NAME yuvj_444_p_to_bgr_16_c #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE_Y 1 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define CHROMA_SUB 1 #define CONVERT \ YUVJ_8_TO_RGB_24(src_y[0], src_u[0], src_v[0], r, g, b) \ PACK_8_TO_BGR16(r, g, b, dst[0]); #define INIT int32_t i_tmp; \ uint8_t r; \ uint8_t g; \ uint8_t b; #include "../csp_planar_packed.h" /* yuvj_444_p_to_rgb_24_c */ #define FUNC_NAME yuvj_444_p_to_rgb_24_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 1 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define CHROMA_SUB 1 #define CONVERT \ YUVJ_8_TO_RGB_24(src_y[0], src_u[0], src_v[0], dst[0], dst[1], dst[2]) #define INIT int32_t i_tmp; #include "../csp_planar_packed.h" /* yuvj_444_p_to_rgb_48_c */ #define FUNC_NAME yuvj_444_p_to_rgb_48_c #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE_Y 1 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define CHROMA_SUB 1 #define CONVERT \ YUVJ_8_TO_RGB_48(src_y[0], src_u[0], src_v[0], dst[0], dst[1], dst[2]) #define INIT int32_t i_tmp; #include "../csp_planar_packed.h" /* yuvj_444_p_to_rgb_float_c */ #define FUNC_NAME yuvj_444_p_to_rgb_float_c #define IN_TYPE uint8_t #define OUT_TYPE float #define IN_ADVANCE_Y 1 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define CHROMA_SUB 1 #define CONVERT \ YUVJ_8_TO_RGB_FLOAT(src_y[0], src_u[0], src_v[0], dst[0], dst[1], dst[2]) #define INIT float i_tmp; #include "../csp_planar_packed.h" /* yuvj_444_p_to_bgr_24_c */ #define FUNC_NAME yuvj_444_p_to_bgr_24_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 1 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define CHROMA_SUB 1 #define CONVERT \ YUVJ_8_TO_RGB_24(src_y[0], src_u[0], src_v[0], dst[2], dst[1], dst[0]) #define INIT int32_t i_tmp; #include "../csp_planar_packed.h" /* yuvj_444_p_to_rgb_32_c */ #define FUNC_NAME yuvj_444_p_to_rgb_32_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 1 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define CHROMA_SUB 1 #define CONVERT \ YUVJ_8_TO_RGB_24(src_y[0], src_u[0], src_v[0], dst[0], dst[1], dst[2]) #define INIT int32_t i_tmp; #include "../csp_planar_packed.h" /* yuvj_444_p_to_bgr_32_c */ #define FUNC_NAME yuvj_444_p_to_bgr_32_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 1 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define CHROMA_SUB 1 #define CONVERT \ YUVJ_8_TO_RGB_24(src_y[0], src_u[0], src_v[0], dst[2], dst[1], dst[0]) #define INIT int32_t i_tmp; #include "../csp_planar_packed.h" /* yuvj_444_p_to_rgba_32_c */ #define FUNC_NAME yuvj_444_p_to_rgba_32_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 1 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define CHROMA_SUB 1 #define CONVERT \ YUVJ_8_TO_RGB_24(src_y[0], src_u[0], src_v[0], dst[0], dst[1], dst[2]) \ dst[3] = 0xff; #define INIT int32_t i_tmp; #include "../csp_planar_packed.h" /* yuvj_444_p_to_rgba_64_c */ #define FUNC_NAME yuvj_444_p_to_rgba_64_c #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE_Y 1 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define CHROMA_SUB 1 #define CONVERT \ YUVJ_8_TO_RGB_48(src_y[0], src_u[0], src_v[0], dst[0], dst[1], dst[2]) \ dst[3] = 0xffff; #define INIT int32_t i_tmp; #include "../csp_planar_packed.h" /* yuvj_444_p_to_rgba_float_c */ #define FUNC_NAME yuvj_444_p_to_rgba_float_c #define IN_TYPE uint8_t #define OUT_TYPE float #define IN_ADVANCE_Y 1 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define CHROMA_SUB 1 #define CONVERT \ YUVJ_8_TO_RGB_FLOAT(src_y[0], src_u[0], src_v[0], dst[0], dst[1], dst[2]) \ dst[3] = 1.0; #define INIT float i_tmp; #include "../csp_planar_packed.h" /************************************************* YUVA -> RGBA *************************************************/ /* yuva_32_to_rgba_32_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME yuva_32_to_rgba_32_c #define CONVERT \ YUV_8_TO_RGB_24(src[0], src[1], src[2], dst[0], dst[1], dst[2]) \ dst[3] = src[3]; #define INIT int32_t i_tmp; #include "../csp_packed_packed.h" #endif // !HQ /* yuva_64_to_rgba_32_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME yuva_64_to_rgba_32_c #define CONVERT \ YUV_16_TO_RGB_24(src[0], src[1], src[2], dst[0], dst[1], dst[2]) \ RGB_16_TO_8(src[3], dst[3]); #ifdef HQ #define INIT int32_t round_tmp; int64_t i_tmp; #else #define INIT int64_t i_tmp; #endif #include "../csp_packed_packed.h" /* yuva_float_to_rgba_32_c */ #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME yuva_float_to_rgba_32_c #define CONVERT \ YUV_FLOAT_TO_RGB_24(src[0], src[1], src[2], dst[0], dst[1], dst[2]) \ RGB_FLOAT_TO_8(src[3], dst[3]); #define INIT float i_tmp; #include "../csp_packed_packed.h" /* yuv_float_to_rgba_32_c */ #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 3 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME yuv_float_to_rgba_32_c #define CONVERT \ YUV_FLOAT_TO_RGB_24(src[0], src[1], src[2], dst[0], dst[1], dst[2]) \ dst[3] = 0xff; #define INIT float i_tmp; #include "../csp_packed_packed.h" #ifndef HQ /* yuva_32_to_rgba_64_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME yuva_32_to_rgba_64_c #define CONVERT \ YUV_8_TO_RGB_48(src[0], src[1], src[2], dst[0], dst[1], dst[2]) \ dst[3] = RGB_8_TO_16(src[3]); #define INIT int32_t i_tmp; #include "../csp_packed_packed.h" /* yuva_64_to_rgba_64_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME yuva_64_to_rgba_64_c #define CONVERT \ YUV_16_TO_RGB_48(src[0], src[1], src[2], dst[0], dst[1], dst[2]) \ dst[3] = src[3]; #define INIT int64_t i_tmp; #include "../csp_packed_packed.h" #endif // !HQ /* yuva_float_to_rgba_64_c */ #define IN_TYPE float #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME yuva_float_to_rgba_64_c #define CONVERT \ YUV_FLOAT_TO_RGB_48(src[0], src[1], src[2], dst[0], dst[1], dst[2]) \ RGB_FLOAT_TO_16(src[3], dst[3]); #define INIT float i_tmp; #include "../csp_packed_packed.h" /* yuv_float_to_rgba_64_c */ #define IN_TYPE float #define OUT_TYPE uint16_t #define IN_ADVANCE 3 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME yuv_float_to_rgba_64_c #define CONVERT \ YUV_FLOAT_TO_RGB_48(src[0], src[1], src[2], dst[0], dst[1], dst[2]) \ dst[3] = 0xFFFF; #define INIT float i_tmp; #include "../csp_packed_packed.h" #ifndef HQ /* yuva_32_to_rgba_float_c */ #define IN_TYPE uint8_t #define OUT_TYPE float #define IN_ADVANCE 4 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME yuva_32_to_rgba_float_c #define CONVERT \ YUV_8_TO_RGB_FLOAT(src[0], src[1], src[2], dst[0], dst[1], dst[2]) \ dst[3] = RGB_8_TO_FLOAT(src[3]); #define INIT float i_tmp; #include "../csp_packed_packed.h" /* yuva_64_to_rgba_float_c */ #define IN_TYPE uint16_t #define OUT_TYPE float #define IN_ADVANCE 4 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME yuva_64_to_rgba_float_c #define CONVERT \ YUV_16_TO_RGB_FLOAT(src[0], src[1], src[2], dst[0], dst[1], dst[2]) \ dst[3] = RGB_16_TO_FLOAT(src[3]); #define INIT float i_tmp; #include "../csp_packed_packed.h" /* yuva_float_to_rgba_float_c */ #define IN_TYPE float #define OUT_TYPE float #define IN_ADVANCE 4 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME yuva_float_to_rgba_float_c #define CONVERT \ YUV_FLOAT_TO_RGB_FLOAT(src[0], src[1], src[2], dst[0], dst[1], dst[2]) \ dst[3] = src[3]; #define INIT float i_tmp; #include "../csp_packed_packed.h" /* yuv_float_to_rgba_float_c */ #define IN_TYPE float #define OUT_TYPE float #define IN_ADVANCE 3 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME yuv_float_to_rgba_float_c #define CONVERT \ YUV_FLOAT_TO_RGB_FLOAT(src[0], src[1], src[2], dst[0], dst[1], dst[2]) \ dst[3] = 1.0; #define INIT float i_tmp; #include "../csp_packed_packed.h" /************************************************* YUVA -> RGB *************************************************/ /* yuva_32_to_rgb_15_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME yuva_32_to_rgb_15_c #define CONVERT \ YUV_8_TO_RGB_24(src[0], src[1], src[2], r_tmp1, g_tmp1, b_tmp1) \ RGBA_32_TO_RGB_24(r_tmp1, g_tmp1, b_tmp1, src[3], r_tmp2, g_tmp2, b_tmp2)\ PACK_8_TO_RGB15(r_tmp2, g_tmp2, b_tmp2, *dst); #define INIT \ int32_t i_tmp; \ int r_tmp1; \ int g_tmp1; \ int b_tmp1; \ int r_tmp2; \ int g_tmp2; \ int b_tmp2; \ INIT_RGBA_32 #include "../csp_packed_packed.h" #endif // !HQ /* Yuva_64_to_rgb_15_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME yuva_64_to_rgb_15_c #define CONVERT \ RGB_16_TO_8(src[3], a_tmp); \ YUV_16_TO_RGB_24(src[0], src[1], src[2], r_tmp1, g_tmp1, b_tmp1) \ RGBA_32_TO_RGB_24(r_tmp1, g_tmp1, b_tmp1, a_tmp, r_tmp2, g_tmp2, b_tmp2)\ PACK_8_TO_RGB15(r_tmp2, g_tmp2, b_tmp2, *dst); #ifdef HQ #define INIT \ int64_t i_tmp; \ uint32_t a_tmp; \ int round_tmp;\ int r_tmp1; \ int g_tmp1; \ int b_tmp1; \ int r_tmp2; \ int g_tmp2; \ int b_tmp2; \ INIT_RGBA_32 #else #define INIT \ int64_t i_tmp; \ uint32_t a_tmp; \ int r_tmp1; \ int g_tmp1; \ int b_tmp1; \ int r_tmp2; \ int g_tmp2; \ int b_tmp2; \ INIT_RGBA_32 #endif #include "../csp_packed_packed.h" /* yuva_float_to_rgb_15_c */ #define IN_TYPE float #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME yuva_float_to_rgb_15_c #define CONVERT \ RGB_FLOAT_TO_8(src[3], a_tmp);\ YUV_FLOAT_TO_RGB_24(src[0], src[1], src[2], r_tmp1, g_tmp1, b_tmp1) \ RGBA_32_TO_RGB_24(r_tmp1, g_tmp1, b_tmp1, a_tmp, r_tmp2, g_tmp2, b_tmp2)\ PACK_8_TO_RGB15(r_tmp2, g_tmp2, b_tmp2, *dst); #define INIT \ uint32_t a_tmp;\ float i_tmp; \ int r_tmp1; \ int g_tmp1; \ int b_tmp1; \ int r_tmp2; \ int g_tmp2; \ int b_tmp2; \ INIT_RGBA_32 #include "../csp_packed_packed.h" #ifndef HQ /* yuva_32_to_bgr_15_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME yuva_32_to_bgr_15_c #define CONVERT \ YUV_8_TO_RGB_24(src[0], src[1], src[2], r_tmp1, g_tmp1, b_tmp1) \ RGBA_32_TO_RGB_24(r_tmp1, g_tmp1, b_tmp1, src[3], r_tmp2, g_tmp2, b_tmp2)\ PACK_8_TO_BGR15(r_tmp2, g_tmp2, b_tmp2, *dst); #define INIT \ int32_t i_tmp; \ int r_tmp1; \ int g_tmp1; \ int b_tmp1; \ int r_tmp2; \ int g_tmp2; \ int b_tmp2; \ INIT_RGBA_32 #include "../csp_packed_packed.h" #endif // !HQ /* yuva_64_to_bgr_15_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME yuva_64_to_bgr_15_c #define CONVERT \ RGB_16_TO_8(src[3], a_tmp); \ YUV_16_TO_RGB_24(src[0], src[1], src[2], r_tmp1, g_tmp1, b_tmp1) \ RGBA_32_TO_RGB_24(r_tmp1, g_tmp1, b_tmp1, a_tmp, r_tmp2, g_tmp2, b_tmp2)\ PACK_8_TO_BGR15(r_tmp2, g_tmp2, b_tmp2, *dst); #ifdef HQ #define INIT \ int64_t i_tmp; \ uint8_t a_tmp; \ int round_tmp;\ int r_tmp1; \ int g_tmp1; \ int b_tmp1; \ int r_tmp2; \ int g_tmp2; \ int b_tmp2; \ INIT_RGBA_32 #else #define INIT \ int64_t i_tmp; \ uint32_t a_tmp; \ int r_tmp1; \ int g_tmp1; \ int b_tmp1; \ int r_tmp2; \ int g_tmp2; \ int b_tmp2; \ INIT_RGBA_32 #endif #include "../csp_packed_packed.h" /* yuva_float_to_bgr_15_c */ #define IN_TYPE float #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME yuva_float_to_bgr_15_c #define CONVERT \ RGB_FLOAT_TO_8(src[3], a_tmp);\ YUV_FLOAT_TO_RGB_24(src[0], src[1], src[2], r_tmp1, g_tmp1, b_tmp1) \ RGBA_32_TO_RGB_24(r_tmp1, g_tmp1, b_tmp1, a_tmp, r_tmp2, g_tmp2, b_tmp2)\ PACK_8_TO_BGR15(r_tmp2, g_tmp2, b_tmp2, *dst); #define INIT \ int a_tmp;\ float i_tmp; \ int r_tmp1; \ int g_tmp1; \ int b_tmp1; \ int r_tmp2; \ int g_tmp2; \ int b_tmp2; \ INIT_RGBA_32 #include "../csp_packed_packed.h" #ifndef HQ /* yuva_32_to_rgb_16_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME yuva_32_to_rgb_16_c #define CONVERT \ YUV_8_TO_RGB_24(src[0], src[1], src[2], r_tmp1, g_tmp1, b_tmp1) \ RGBA_32_TO_RGB_24(r_tmp1, g_tmp1, b_tmp1, src[3], r_tmp2, g_tmp2, b_tmp2)\ PACK_8_TO_RGB16(r_tmp2, g_tmp2, b_tmp2, *dst); #define INIT \ int32_t i_tmp; \ int r_tmp1; \ int g_tmp1; \ int b_tmp1; \ int r_tmp2; \ int g_tmp2; \ int b_tmp2; \ INIT_RGBA_32 #include "../csp_packed_packed.h" #endif // !HQ /* yuva_64_to_rgb_16_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME yuva_64_to_rgb_16_c #define CONVERT \ RGB_16_TO_8(src[3], a_tmp); \ YUV_16_TO_RGB_24(src[0], src[1], src[2], r_tmp1, g_tmp1, b_tmp1) \ RGBA_32_TO_RGB_24(r_tmp1, g_tmp1, b_tmp1, a_tmp, r_tmp2, g_tmp2, b_tmp2)\ PACK_8_TO_RGB16(r_tmp2, g_tmp2, b_tmp2, *dst); #ifdef HQ #define INIT \ int64_t i_tmp; \ uint8_t a_tmp; \ int round_tmp;\ int r_tmp1; \ int g_tmp1; \ int b_tmp1; \ int r_tmp2; \ int g_tmp2; \ int b_tmp2; \ INIT_RGBA_32 #else #define INIT \ int64_t i_tmp; \ uint32_t a_tmp; \ int r_tmp1; \ int g_tmp1; \ int b_tmp1; \ int r_tmp2; \ int g_tmp2; \ int b_tmp2; \ INIT_RGBA_32 #endif #include "../csp_packed_packed.h" /* yuva_float_to_rgb_16_c */ #define IN_TYPE float #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME yuva_float_to_rgb_16_c #define CONVERT \ RGB_FLOAT_TO_8(src[3], a_tmp);\ YUV_FLOAT_TO_RGB_24(src[0], src[1], src[2], r_tmp1, g_tmp1, b_tmp1) \ RGBA_32_TO_RGB_24(r_tmp1, g_tmp1, b_tmp1, a_tmp, r_tmp2, g_tmp2, b_tmp2)\ PACK_8_TO_RGB16(r_tmp2, g_tmp2, b_tmp2, *dst); #define INIT \ int a_tmp;\ float i_tmp; \ int r_tmp1; \ int g_tmp1; \ int b_tmp1; \ int r_tmp2; \ int g_tmp2; \ int b_tmp2; \ INIT_RGBA_32 #include "../csp_packed_packed.h" #ifndef HQ /* yuva_32_to_bgr_16_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME yuva_32_to_bgr_16_c #define CONVERT \ YUV_8_TO_RGB_24(src[0], src[1], src[2], r_tmp1, g_tmp1, b_tmp1) \ RGBA_32_TO_RGB_24(r_tmp1, g_tmp1, b_tmp1, src[3], r_tmp2, g_tmp2, b_tmp2)\ PACK_8_TO_BGR16(r_tmp2, g_tmp2, b_tmp2, *dst); #define INIT \ int32_t i_tmp; \ int r_tmp1; \ int g_tmp1; \ int b_tmp1; \ int r_tmp2; \ int g_tmp2; \ int b_tmp2; \ INIT_RGBA_32 #include "../csp_packed_packed.h" #endif // !HQ /* yuva_64_to_bgr_16_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME yuva_64_to_bgr_16_c #define CONVERT \ RGB_16_TO_8(src[3], a_tmp); \ YUV_16_TO_RGB_24(src[0], src[1], src[2], r_tmp1, g_tmp1, b_tmp1) \ RGBA_32_TO_RGB_24(r_tmp1, g_tmp1, b_tmp1, a_tmp, r_tmp2, g_tmp2, b_tmp2)\ PACK_8_TO_BGR16(r_tmp2, g_tmp2, b_tmp2, *dst); #ifdef HQ #define INIT \ int64_t i_tmp; \ uint8_t a_tmp; \ int round_tmp;\ int r_tmp1; \ int g_tmp1; \ int b_tmp1; \ int r_tmp2; \ int g_tmp2; \ int b_tmp2; \ INIT_RGBA_32 #else #define INIT \ int64_t i_tmp; \ uint32_t a_tmp; \ int r_tmp1; \ int g_tmp1; \ int b_tmp1; \ int r_tmp2; \ int g_tmp2; \ int b_tmp2; \ INIT_RGBA_32 #endif #include "../csp_packed_packed.h" /* yuva_float_to_bgr_16_c */ #define IN_TYPE float #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME yuva_float_to_bgr_16_c #define CONVERT \ RGB_FLOAT_TO_8(src[3], a_tmp);\ YUV_FLOAT_TO_RGB_24(src[0], src[1], src[2], r_tmp1, g_tmp1, b_tmp1) \ RGBA_32_TO_RGB_24(r_tmp1, g_tmp1, b_tmp1, a_tmp, r_tmp2, g_tmp2, b_tmp2)\ PACK_8_TO_BGR16(r_tmp2, g_tmp2, b_tmp2, *dst); #define INIT \ int a_tmp;\ float i_tmp; \ int r_tmp1; \ int g_tmp1; \ int b_tmp1; \ int r_tmp2; \ int g_tmp2; \ int b_tmp2; \ INIT_RGBA_32 #include "../csp_packed_packed.h" #ifndef HQ /* yuva_32_to_rgb_24_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define FUNC_NAME yuva_32_to_rgb_24_c #define CONVERT \ YUV_8_TO_RGB_24(src[0], src[1], src[2], r_tmp, g_tmp, b_tmp) \ RGBA_32_TO_RGB_24(r_tmp, g_tmp, b_tmp, src[3], dst[0], dst[1], dst[2]) \ #define INIT \ int32_t i_tmp; \ int r_tmp; \ int g_tmp; \ int b_tmp; \ INIT_RGBA_32 #include "../csp_packed_packed.h" #endif // !HQ /* yuva_64_to_rgb_24_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define FUNC_NAME yuva_64_to_rgb_24_c #define CONVERT \ YUV_16_TO_RGB_24(src[0], src[1], src[2], r_tmp, g_tmp, b_tmp) \ RGB_16_TO_8(src[3], a_tmp); \ RGBA_32_TO_RGB_24(r_tmp, g_tmp, b_tmp, a_tmp, dst[0], dst[1], dst[2]) \ #ifndef HQ #define INIT \ int64_t i_tmp; \ int r_tmp; \ int g_tmp; \ int b_tmp; \ int a_tmp; \ INIT_RGBA_32 #else #define INIT \ int64_t i_tmp; \ int round_tmp; \ int r_tmp; \ int g_tmp; \ int b_tmp; \ int a_tmp; \ INIT_RGBA_32 #endif #include "../csp_packed_packed.h" /* yuva_float_to_rgb_24_c */ #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define FUNC_NAME yuva_float_to_rgb_24_c #define CONVERT \ YUV_FLOAT_TO_RGB_24(src[0], src[1], src[2], r_tmp, g_tmp, b_tmp) \ RGB_FLOAT_TO_8(src[3], a_tmp); \ RGBA_32_TO_RGB_24(r_tmp, g_tmp, b_tmp, a_tmp, dst[0], dst[1], dst[2]) \ #define INIT \ float i_tmp; \ int r_tmp; \ int g_tmp; \ int b_tmp; \ int a_tmp; \ INIT_RGBA_32 #include "../csp_packed_packed.h" #ifndef HQ /* yuva_32_to_bgr_24_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define FUNC_NAME yuva_32_to_bgr_24_c #define CONVERT \ YUV_8_TO_RGB_24(src[0], src[1], src[2], r_tmp, g_tmp, b_tmp) \ RGBA_32_TO_RGB_24(r_tmp, g_tmp, b_tmp, src[3], dst[2], dst[1], dst[0]) \ #define INIT \ int32_t i_tmp; \ int r_tmp; \ int g_tmp; \ int b_tmp; \ INIT_RGBA_32 #include "../csp_packed_packed.h" #endif // !HQ /* yuva_64_to_bgr_24_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define FUNC_NAME yuva_64_to_bgr_24_c #define CONVERT \ YUV_16_TO_RGB_24(src[0], src[1], src[2], r_tmp, g_tmp, b_tmp) \ RGB_16_TO_8(src[3], a_tmp); \ RGBA_32_TO_RGB_24(r_tmp, g_tmp, b_tmp, a_tmp, dst[2], dst[1], dst[0]) \ #ifndef HQ #define INIT \ int64_t i_tmp; \ int r_tmp; \ int g_tmp; \ int b_tmp; \ int a_tmp; \ INIT_RGBA_32 #else #define INIT \ int64_t i_tmp; \ int round_tmp; \ int r_tmp; \ int g_tmp; \ int b_tmp; \ int a_tmp; \ INIT_RGBA_32 #endif #include "../csp_packed_packed.h" /* yuva_float_to_bgr_24_c */ #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define FUNC_NAME yuva_float_to_bgr_24_c #define CONVERT \ YUV_FLOAT_TO_RGB_24(src[0], src[1], src[2], r_tmp, g_tmp, b_tmp) \ RGB_FLOAT_TO_8(src[3], a_tmp); \ RGBA_32_TO_RGB_24(r_tmp, g_tmp, b_tmp, a_tmp, dst[2], dst[1], dst[0]) \ #define INIT \ float i_tmp; \ int r_tmp; \ int g_tmp; \ int b_tmp; \ int a_tmp; \ INIT_RGBA_32 #include "../csp_packed_packed.h" #ifndef HQ /* yuva_32_to_rgb_32_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME yuva_32_to_rgb_32_c #define CONVERT \ YUV_8_TO_RGB_24(src[0], src[1], src[2], r_tmp, g_tmp, b_tmp) \ RGBA_32_TO_RGB_24(r_tmp, g_tmp, b_tmp, src[3], dst[0], dst[1], dst[2]) \ #define INIT \ int32_t i_tmp; \ int r_tmp; \ int g_tmp; \ int b_tmp; \ INIT_RGBA_32 #include "../csp_packed_packed.h" #endif // !HQ /* yuva_64_to_rgb_32_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME yuva_64_to_rgb_32_c #define CONVERT \ YUV_16_TO_RGB_24(src[0], src[1], src[2], r_tmp, g_tmp, b_tmp) \ RGB_16_TO_8(src[3], a_tmp); \ RGBA_32_TO_RGB_24(r_tmp, g_tmp, b_tmp, a_tmp, dst[0], dst[1], dst[2]) \ #ifndef HQ #define INIT \ int64_t i_tmp; \ int r_tmp; \ int g_tmp; \ int b_tmp; \ int a_tmp; \ INIT_RGBA_32 #else #define INIT \ int64_t i_tmp; \ int round_tmp; \ int r_tmp; \ int g_tmp; \ int b_tmp; \ int a_tmp; \ INIT_RGBA_32 #endif #include "../csp_packed_packed.h" /* yuva_float_to_rgb_32_c */ #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME yuva_float_to_rgb_32_c #define CONVERT \ YUV_FLOAT_TO_RGB_24(src[0], src[1], src[2], r_tmp, g_tmp, b_tmp) \ RGB_FLOAT_TO_8(src[3], a_tmp); \ RGBA_32_TO_RGB_24(r_tmp, g_tmp, b_tmp, a_tmp, dst[0], dst[1], dst[2]) \ #define INIT \ float i_tmp; \ int r_tmp; \ int g_tmp; \ int b_tmp; \ int a_tmp; \ INIT_RGBA_32 #include "../csp_packed_packed.h" #ifndef HQ /* yuva_32_to_bgr_32_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME yuva_32_to_bgr_32_c #define CONVERT \ YUV_8_TO_RGB_24(src[0], src[1], src[2], r_tmp, g_tmp, b_tmp) \ RGBA_32_TO_RGB_24(r_tmp, g_tmp, b_tmp, src[3], dst[2], dst[1], dst[0]) \ #define INIT \ int32_t i_tmp; \ int r_tmp; \ int g_tmp; \ int b_tmp; \ INIT_RGBA_32 #include "../csp_packed_packed.h" #endif // !HQ /* yuva_64_to_bgr_32_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME yuva_64_to_bgr_32_c #define CONVERT \ YUV_16_TO_RGB_24(src[0], src[1], src[2], r_tmp, g_tmp, b_tmp) \ RGB_16_TO_8(src[3], a_tmp); \ RGBA_32_TO_RGB_24(r_tmp, g_tmp, b_tmp, a_tmp, dst[2], dst[1], dst[0]) \ #ifndef HQ #define INIT \ int64_t i_tmp; \ int r_tmp; \ int g_tmp; \ int b_tmp; \ int a_tmp; \ INIT_RGBA_32 #else #define INIT \ int64_t i_tmp; \ int round_tmp; \ int r_tmp; \ int g_tmp; \ int b_tmp; \ int a_tmp; \ INIT_RGBA_32 #endif #include "../csp_packed_packed.h" /* yuva_float_to_bgr_32_c */ #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME yuva_float_to_bgr_32_c #define CONVERT \ YUV_FLOAT_TO_RGB_24(src[0], src[1], src[2], r_tmp, g_tmp, b_tmp) \ RGB_FLOAT_TO_8(src[3], a_tmp); \ RGBA_32_TO_RGB_24(r_tmp, g_tmp, b_tmp, a_tmp, dst[2], dst[1], dst[0]) \ #define INIT \ float i_tmp; \ int r_tmp; \ int g_tmp; \ int b_tmp; \ int a_tmp; \ INIT_RGBA_32 #include "../csp_packed_packed.h" #ifndef HQ /* yuva_32_to_rgb_48_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define FUNC_NAME yuva_32_to_rgb_48_c #define CONVERT \ a_tmp = RGB_8_TO_16(src[3]);\ YUV_8_TO_RGB_48(src[0], src[1], src[2], r_tmp, g_tmp, b_tmp) \ RGBA_64_TO_RGB_48(r_tmp, g_tmp, b_tmp, a_tmp, dst[0], dst[1], dst[2]) \ #define INIT \ int32_t i_tmp; \ int r_tmp; \ int g_tmp; \ int b_tmp; \ int a_tmp; \ INIT_RGBA_64 #include "../csp_packed_packed.h" /* yuva_64_to_rgb_48_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define FUNC_NAME yuva_64_to_rgb_48_c #define CONVERT \ YUV_16_TO_RGB_48(src[0], src[1], src[2], r_tmp, g_tmp, b_tmp) \ RGBA_64_TO_RGB_48(r_tmp, g_tmp, b_tmp, src[3], dst[0], dst[1], dst[2]) \ #define INIT \ int64_t i_tmp; \ int r_tmp; \ int g_tmp; \ int b_tmp; \ INIT_RGBA_64 #include "../csp_packed_packed.h" #endif // !HQ /* yuva_float_to_rgb_48_c */ #define IN_TYPE float #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define FUNC_NAME yuva_float_to_rgb_48_c #define CONVERT \ RGB_FLOAT_TO_16(src[3], a_tmp); \ YUV_FLOAT_TO_RGB_48(src[0], src[1], src[2], r_tmp, g_tmp, b_tmp) \ RGBA_64_TO_RGB_48(r_tmp, g_tmp, b_tmp, a_tmp, dst[0], dst[1], dst[2]) #define INIT \ float i_tmp; \ int a_tmp; \ int r_tmp; \ int g_tmp; \ int b_tmp; \ INIT_RGBA_64 #include "../csp_packed_packed.h" #ifndef HQ /* yuva_32_to_rgb_float_c */ #define IN_TYPE uint8_t #define OUT_TYPE float #define IN_ADVANCE 4 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define FUNC_NAME yuva_32_to_rgb_float_c #define CONVERT \ a_tmp = RGB_8_TO_FLOAT(src[3]);\ YUV_8_TO_RGB_FLOAT(src[0], src[1], src[2], r_tmp, g_tmp, b_tmp) \ RGBA_FLOAT_TO_RGB_FLOAT(r_tmp, g_tmp, b_tmp, a_tmp, dst[0], dst[1], dst[2]) \ #define INIT \ float i_tmp; \ float r_tmp; \ float g_tmp; \ float b_tmp; \ float a_tmp; \ INIT_RGBA_FLOAT #include "../csp_packed_packed.h" /* yuva_64_to_rgb_float_c */ #define IN_TYPE uint16_t #define OUT_TYPE float #define IN_ADVANCE 4 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define FUNC_NAME yuva_64_to_rgb_float_c #define CONVERT \ a_tmp = RGB_16_TO_FLOAT(src[3]);\ YUV_16_TO_RGB_FLOAT(src[0], src[1], src[2], r_tmp, g_tmp, b_tmp) \ RGBA_FLOAT_TO_RGB_FLOAT(r_tmp, g_tmp, b_tmp, a_tmp, dst[0], dst[1], dst[2]) \ #define INIT \ float i_tmp; \ float r_tmp; \ float g_tmp; \ float b_tmp; \ float a_tmp; \ INIT_RGBA_FLOAT #include "../csp_packed_packed.h" /* yuva_float_to_rgb_float_c */ #define IN_TYPE float #define OUT_TYPE float #define IN_ADVANCE 4 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define FUNC_NAME yuva_float_to_rgb_float_c #define CONVERT \ YUV_FLOAT_TO_RGB_FLOAT(src[0], src[1], src[2], r_tmp, g_tmp, b_tmp) \ RGBA_FLOAT_TO_RGB_FLOAT(r_tmp, g_tmp, b_tmp, src[3], dst[0], dst[1], dst[2]) \ #define INIT \ float i_tmp; \ float r_tmp; \ float g_tmp; \ float b_tmp; \ INIT_RGBA_FLOAT #include "../csp_packed_packed.h" /************************************************* YUVA -> RGB (No alpha) *************************************************/ /* yuva_32_to_rgb_15_ia_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME yuva_32_to_rgb_15_ia_c #define CONVERT \ YUV_8_TO_RGB_24(src[0], src[1], src[2], r_tmp1, g_tmp1, b_tmp1) \ PACK_8_TO_RGB15(r_tmp1, g_tmp1, b_tmp1, *dst); #define INIT \ int32_t i_tmp; \ int r_tmp1; \ int g_tmp1; \ int b_tmp1; \ #include "../csp_packed_packed.h" #endif // !HQ /* yuva_64_to_rgb_15_ia_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME yuva_64_to_rgb_15_ia_c #define CONVERT \ YUV_16_TO_RGB_24(src[0], src[1], src[2], r_tmp1, g_tmp1, b_tmp1) \ PACK_8_TO_RGB15(r_tmp1, g_tmp1, b_tmp1, *dst); #define INIT \ int64_t i_tmp; \ int r_tmp1; \ int g_tmp1; \ int b_tmp1; \ #include "../csp_packed_packed.h" /* yuva_float_to_rgb_15_ia_c */ #define IN_TYPE float #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME yuva_float_to_rgb_15_ia_c #define CONVERT \ YUV_FLOAT_TO_RGB_24(src[0], src[1], src[2], r_tmp1, g_tmp1, b_tmp1) \ PACK_8_TO_RGB15(r_tmp1, g_tmp1, b_tmp1, *dst); #define INIT \ float i_tmp; \ int r_tmp1; \ int g_tmp1; \ int b_tmp1; \ #include "../csp_packed_packed.h" /* yuv_float_to_rgb_15_c */ #define IN_TYPE float #define OUT_TYPE uint16_t #define IN_ADVANCE 3 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME yuv_float_to_rgb_15_c #define CONVERT \ YUV_FLOAT_TO_RGB_24(src[0], src[1], src[2], r_tmp1, g_tmp1, b_tmp1) \ PACK_8_TO_RGB15(r_tmp1, g_tmp1, b_tmp1, *dst); #define INIT \ float i_tmp; \ int r_tmp1; \ int g_tmp1; \ int b_tmp1; \ #include "../csp_packed_packed.h" #ifndef HQ /* yuva_32_to_bgr_15_ia_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME yuva_32_to_bgr_15_ia_c #define CONVERT \ YUV_8_TO_RGB_24(src[0], src[1], src[2], r_tmp1, g_tmp1, b_tmp1) \ PACK_8_TO_BGR15(r_tmp1, g_tmp1, b_tmp1, *dst); #define INIT \ int32_t i_tmp; \ int r_tmp1; \ int g_tmp1; \ int b_tmp1; \ #include "../csp_packed_packed.h" #endif // !HQ /* yuva_64_to_bgr_15_ia_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME yuva_64_to_bgr_15_ia_c #define CONVERT \ YUV_16_TO_RGB_24(src[0], src[1], src[2], r_tmp1, g_tmp1, b_tmp1) \ PACK_8_TO_BGR15(r_tmp1, g_tmp1, b_tmp1, *dst); #define INIT \ int64_t i_tmp; \ int r_tmp1; \ int g_tmp1; \ int b_tmp1; \ #include "../csp_packed_packed.h" /* yuva_float_to_bgr_15_ia_c */ #define IN_TYPE float #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME yuva_float_to_bgr_15_ia_c #define CONVERT \ YUV_FLOAT_TO_RGB_24(src[0], src[1], src[2], r_tmp1, g_tmp1, b_tmp1) \ PACK_8_TO_BGR15(r_tmp1, g_tmp1, b_tmp1, *dst); #define INIT \ float i_tmp; \ int r_tmp1; \ int g_tmp1; \ int b_tmp1; \ #include "../csp_packed_packed.h" /* yuv_float_to_bgr_15_c */ #define IN_TYPE float #define OUT_TYPE uint16_t #define IN_ADVANCE 3 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME yuv_float_to_bgr_15_c #define CONVERT \ YUV_FLOAT_TO_RGB_24(src[0], src[1], src[2], r_tmp1, g_tmp1, b_tmp1) \ PACK_8_TO_BGR15(r_tmp1, g_tmp1, b_tmp1, *dst); #define INIT \ float i_tmp; \ int r_tmp1; \ int g_tmp1; \ int b_tmp1; \ #include "../csp_packed_packed.h" #ifndef HQ /* yuva_32_to_rgb_16_ia_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME yuva_32_to_rgb_16_ia_c #define CONVERT \ YUV_8_TO_RGB_24(src[0], src[1], src[2], r_tmp1, g_tmp1, b_tmp1) \ PACK_8_TO_RGB16(r_tmp1, g_tmp1, b_tmp1, *dst); #define INIT \ int32_t i_tmp; \ int r_tmp1; \ int g_tmp1; \ int b_tmp1; \ #include "../csp_packed_packed.h" #endif // !HQ /* yuva_64_to_rgb_16_ia_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME yuva_64_to_rgb_16_ia_c #define CONVERT \ YUV_16_TO_RGB_24(src[0], src[1], src[2], r_tmp1, g_tmp1, b_tmp1) \ PACK_8_TO_RGB16(r_tmp1, g_tmp1, b_tmp1, *dst); #define INIT \ int64_t i_tmp; \ int r_tmp1; \ int g_tmp1; \ int b_tmp1; \ #include "../csp_packed_packed.h" /* yuva_float_to_rgb_16_ia_c */ #define IN_TYPE float #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME yuva_float_to_rgb_16_ia_c #define CONVERT \ YUV_FLOAT_TO_RGB_24(src[0], src[1], src[2], r_tmp1, g_tmp1, b_tmp1) \ PACK_8_TO_RGB16(r_tmp1, g_tmp1, b_tmp1, *dst); #define INIT \ float i_tmp; \ int r_tmp1; \ int g_tmp1; \ int b_tmp1; \ #include "../csp_packed_packed.h" /* yuv_float_to_rgb_16_c */ #define IN_TYPE float #define OUT_TYPE uint16_t #define IN_ADVANCE 3 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME yuv_float_to_rgb_16_c #define CONVERT \ YUV_FLOAT_TO_RGB_24(src[0], src[1], src[2], r_tmp1, g_tmp1, b_tmp1) \ PACK_8_TO_RGB16(r_tmp1, g_tmp1, b_tmp1, *dst); #define INIT \ float i_tmp; \ int r_tmp1; \ int g_tmp1; \ int b_tmp1; \ #include "../csp_packed_packed.h" #ifndef HQ /* yuva_32_to_bgr_16_ia_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME yuva_32_to_bgr_16_ia_c #define CONVERT \ YUV_8_TO_RGB_24(src[0], src[1], src[2], r_tmp1, g_tmp1, b_tmp1) \ PACK_8_TO_BGR16(r_tmp1, g_tmp1, b_tmp1, *dst); #define INIT \ int32_t i_tmp; \ int r_tmp1; \ int g_tmp1; \ int b_tmp1; \ #include "../csp_packed_packed.h" #endif // !HQ /* yuva_64_to_bgr_16_ia_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME yuva_64_to_bgr_16_ia_c #define CONVERT \ YUV_16_TO_RGB_24(src[0], src[1], src[2], r_tmp1, g_tmp1, b_tmp1) \ PACK_8_TO_BGR16(r_tmp1, g_tmp1, b_tmp1, *dst); #define INIT \ int64_t i_tmp; \ int r_tmp1; \ int g_tmp1; \ int b_tmp1; \ #include "../csp_packed_packed.h" /* yuva_float_to_bgr_16_ia_c */ #define IN_TYPE float #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME yuva_float_to_bgr_16_ia_c #define CONVERT \ YUV_FLOAT_TO_RGB_24(src[0], src[1], src[2], r_tmp1, g_tmp1, b_tmp1) \ PACK_8_TO_BGR16(r_tmp1, g_tmp1, b_tmp1, *dst); #define INIT \ float i_tmp; \ int r_tmp1; \ int g_tmp1; \ int b_tmp1; \ #include "../csp_packed_packed.h" /* yuv_float_to_bgr_16_c */ #define IN_TYPE float #define OUT_TYPE uint16_t #define IN_ADVANCE 3 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME yuv_float_to_bgr_16_c #define CONVERT \ YUV_FLOAT_TO_RGB_24(src[0], src[1], src[2], r_tmp1, g_tmp1, b_tmp1) \ PACK_8_TO_BGR16(r_tmp1, g_tmp1, b_tmp1, *dst); #define INIT \ float i_tmp; \ int r_tmp1; \ int g_tmp1; \ int b_tmp1; \ #include "../csp_packed_packed.h" #ifndef HQ /* yuva_32_to_rgb_24_ia_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define FUNC_NAME yuva_32_to_rgb_24_ia_c #define CONVERT \ YUV_8_TO_RGB_24(src[0], src[1], src[2], dst[0], dst[1], dst[2]) #define INIT \ int32_t i_tmp; #include "../csp_packed_packed.h" #endif // !HQ /* yuva_64_to_rgb_24_ia_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define FUNC_NAME yuva_64_to_rgb_24_ia_c #define CONVERT \ YUV_16_TO_RGB_24(src[0], src[1], src[2], dst[0], dst[1], dst[2]) #define INIT \ int64_t i_tmp; #include "../csp_packed_packed.h" /* yuva_float_to_rgb_24_ia_c */ #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define FUNC_NAME yuva_float_to_rgb_24_ia_c #define CONVERT \ YUV_FLOAT_TO_RGB_24(src[0], src[1], src[2], dst[0], dst[1], dst[2]) #define INIT \ float i_tmp; #include "../csp_packed_packed.h" /* yuv_float_to_rgb_24_c */ #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 3 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define FUNC_NAME yuv_float_to_rgb_24_c #define CONVERT \ YUV_FLOAT_TO_RGB_24(src[0], src[1], src[2], dst[0], dst[1], dst[2]) #define INIT \ float i_tmp; #include "../csp_packed_packed.h" #ifndef HQ /* yuva_32_to_bgr_24_ia_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define FUNC_NAME yuva_32_to_bgr_24_ia_c #define CONVERT \ YUV_8_TO_RGB_24(src[0], src[1], src[2], dst[2], dst[1], dst[0]) #define INIT \ int32_t i_tmp; #include "../csp_packed_packed.h" #endif // !HQ /* yuva_64_to_bgr_24_ia_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define FUNC_NAME yuva_64_to_bgr_24_ia_c #define CONVERT \ YUV_16_TO_RGB_24(src[0], src[1], src[2], dst[2], dst[1], dst[0]) #define INIT \ int64_t i_tmp; #include "../csp_packed_packed.h" /* yuva_float_to_bgr_24_ia_c */ #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define FUNC_NAME yuva_float_to_bgr_24_ia_c #define CONVERT \ YUV_FLOAT_TO_RGB_24(src[0], src[1], src[2], dst[2], dst[1], dst[0]) #define INIT \ float i_tmp; #include "../csp_packed_packed.h" /* yuv_float_to_bgr_24_c */ #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 3 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define FUNC_NAME yuv_float_to_bgr_24_c #define CONVERT \ YUV_FLOAT_TO_RGB_24(src[0], src[1], src[2], dst[2], dst[1], dst[0]) #define INIT \ float i_tmp; #include "../csp_packed_packed.h" #ifndef HQ /* yuva_32_to_rgb_32_ia_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME yuva_32_to_rgb_32_ia_c #define CONVERT \ YUV_8_TO_RGB_24(src[0], src[1], src[2], dst[0], dst[1], dst[2]) #define INIT \ int32_t i_tmp; #include "../csp_packed_packed.h" #endif // !HQ /* yuva_64_to_rgb_32_ia_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME yuva_64_to_rgb_32_ia_c #define CONVERT \ YUV_16_TO_RGB_24(src[0], src[1], src[2], dst[0], dst[1], dst[2]) #define INIT \ int64_t i_tmp; #include "../csp_packed_packed.h" /* yuva_float_to_rgb_32_ia_c */ #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME yuva_float_to_rgb_32_ia_c #define CONVERT \ YUV_FLOAT_TO_RGB_24(src[0], src[1], src[2], dst[0], dst[1], dst[2]) #define INIT \ float i_tmp; #include "../csp_packed_packed.h" /* yuv_float_to_rgb_32_c */ #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 3 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME yuv_float_to_rgb_32_c #define CONVERT \ YUV_FLOAT_TO_RGB_24(src[0], src[1], src[2], dst[0], dst[1], dst[2]) #define INIT \ float i_tmp; #include "../csp_packed_packed.h" #ifndef HQ /* yuva_32_to_bgr_32_ia_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME yuva_32_to_bgr_32_ia_c #define CONVERT \ YUV_8_TO_RGB_24(src[0], src[1], src[2], dst[2], dst[1], dst[0]) #define INIT \ int32_t i_tmp; #include "../csp_packed_packed.h" #endif // !HQ /* yuva_64_to_bgr_32_ia_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME yuva_64_to_bgr_32_ia_c #define CONVERT \ YUV_16_TO_RGB_24(src[0], src[1], src[2], dst[2], dst[1], dst[0]) #define INIT \ int64_t i_tmp; #include "../csp_packed_packed.h" /* yuva_float_to_bgr_32_ia_c */ #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME yuva_float_to_bgr_32_ia_c #define CONVERT \ YUV_FLOAT_TO_RGB_24(src[0], src[1], src[2], dst[2], dst[1], dst[0]) #define INIT \ float i_tmp; #include "../csp_packed_packed.h" /* yuv_float_to_bgr_32_c */ #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 3 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME yuv_float_to_bgr_32_c #define CONVERT \ YUV_FLOAT_TO_RGB_24(src[0], src[1], src[2], dst[2], dst[1], dst[0]) #define INIT \ float i_tmp; #include "../csp_packed_packed.h" #ifndef HQ /* yuva_32_to_rgb_48_ia_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define FUNC_NAME yuva_32_to_rgb_48_ia_c #define CONVERT \ YUV_8_TO_RGB_48(src[0], src[1], src[2], dst[0], dst[1], dst[2]) \ #define INIT \ int32_t i_tmp; \ #include "../csp_packed_packed.h" /* yuva_64_to_rgb_48_ia_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define FUNC_NAME yuva_64_to_rgb_48_ia_c #define CONVERT \ YUV_16_TO_RGB_48(src[0], src[1], src[2], dst[0], dst[1], dst[2]) \ #define INIT \ int64_t i_tmp; \ #include "../csp_packed_packed.h" #endif // !HQ /* yuva_float_to_rgb_48_ia_c */ #define IN_TYPE float #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define FUNC_NAME yuva_float_to_rgb_48_ia_c #define CONVERT \ YUV_FLOAT_TO_RGB_48(src[0], src[1], src[2], dst[0], dst[1], dst[2]) \ #define INIT \ float i_tmp; \ #include "../csp_packed_packed.h" /* yuv_float_to_rgb_48_c */ #define IN_TYPE float #define OUT_TYPE uint16_t #define IN_ADVANCE 3 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define FUNC_NAME yuv_float_to_rgb_48_c #define CONVERT \ YUV_FLOAT_TO_RGB_48(src[0], src[1], src[2], dst[0], dst[1], dst[2]) \ #define INIT \ float i_tmp; \ #include "../csp_packed_packed.h" #ifndef HQ /* yuva_32_to_rgb_float_ia_c */ #define IN_TYPE uint8_t #define OUT_TYPE float #define IN_ADVANCE 4 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define FUNC_NAME yuva_32_to_rgb_float_ia_c #define CONVERT \ YUV_8_TO_RGB_FLOAT(src[0], src[1], src[2], dst[0], dst[1], dst[2]) \ #define INIT \ float i_tmp; \ #include "../csp_packed_packed.h" /* yuva_64_to_rgb_float_ia_c */ #define IN_TYPE uint16_t #define OUT_TYPE float #define IN_ADVANCE 4 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define FUNC_NAME yuva_64_to_rgb_float_ia_c #define CONVERT \ YUV_16_TO_RGB_FLOAT(src[0], src[1], src[2], dst[0], dst[1], dst[2]) \ #define INIT \ float i_tmp; \ #include "../csp_packed_packed.h" /* yuva_float_to_rgb_float_ia_c */ #define IN_TYPE float #define OUT_TYPE float #define IN_ADVANCE 4 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define FUNC_NAME yuva_float_to_rgb_float_ia_c #define CONVERT \ YUV_FLOAT_TO_RGB_FLOAT(src[0], src[1], src[2], dst[0], dst[1], dst[2]) \ #define INIT \ float i_tmp; \ #include "../csp_packed_packed.h" /* yuv_float_to_rgb_float_c */ #define IN_TYPE float #define OUT_TYPE float #define IN_ADVANCE 3 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define FUNC_NAME yuv_float_to_rgb_float_c #define CONVERT \ YUV_FLOAT_TO_RGB_FLOAT(src[0], src[1], src[2], dst[0], dst[1], dst[2]) \ #define INIT \ float i_tmp; \ #include "../csp_packed_packed.h" #endif // !HQ #ifdef HQ void gavl_init_yuv_rgb_funcs_hq(gavl_pixelformat_function_table_t * tab, const gavl_video_options_t * opt) #else void gavl_init_yuv_rgb_funcs_c(gavl_pixelformat_function_table_t * tab, const gavl_video_options_t * opt) #endif { if(opt->alpha_mode == GAVL_ALPHA_BLEND_COLOR) { #ifndef HQ tab->yuva_32_to_rgb_15 = yuva_32_to_rgb_15_c; tab->yuva_32_to_bgr_15 = yuva_32_to_bgr_15_c; tab->yuva_32_to_rgb_16 = yuva_32_to_rgb_16_c; tab->yuva_32_to_bgr_16 = yuva_32_to_bgr_16_c; tab->yuva_32_to_rgb_24 = yuva_32_to_rgb_24_c; tab->yuva_32_to_bgr_24 = yuva_32_to_bgr_24_c; tab->yuva_32_to_rgb_32 = yuva_32_to_rgb_32_c; tab->yuva_32_to_bgr_32 = yuva_32_to_bgr_32_c; tab->yuva_32_to_rgb_48 = yuva_32_to_rgb_48_c; tab->yuva_32_to_rgb_float = yuva_32_to_rgb_float_c; tab->yuva_64_to_rgb_float = yuva_64_to_rgb_float_c; tab->yuva_64_to_rgb_48 = yuva_64_to_rgb_48_c; tab->yuva_float_to_rgb_float = yuva_float_to_rgb_float_c; #endif tab->yuva_64_to_rgb_15 = yuva_64_to_rgb_15_c; tab->yuva_64_to_bgr_15 = yuva_64_to_bgr_15_c; tab->yuva_64_to_rgb_16 = yuva_64_to_rgb_16_c; tab->yuva_64_to_bgr_16 = yuva_64_to_bgr_16_c; tab->yuva_64_to_rgb_24 = yuva_64_to_rgb_24_c; tab->yuva_64_to_bgr_24 = yuva_64_to_bgr_24_c; tab->yuva_64_to_rgb_32 = yuva_64_to_rgb_32_c; tab->yuva_64_to_bgr_32 = yuva_64_to_bgr_32_c; tab->yuva_float_to_rgb_15 = yuva_float_to_rgb_15_c; tab->yuva_float_to_bgr_15 = yuva_float_to_bgr_15_c; tab->yuva_float_to_rgb_16 = yuva_float_to_rgb_16_c; tab->yuva_float_to_bgr_16 = yuva_float_to_bgr_16_c; tab->yuva_float_to_rgb_24 = yuva_float_to_rgb_24_c; tab->yuva_float_to_bgr_24 = yuva_float_to_bgr_24_c; tab->yuva_float_to_rgb_32 = yuva_float_to_rgb_32_c; tab->yuva_float_to_bgr_32 = yuva_float_to_bgr_32_c; tab->yuva_float_to_rgb_48 = yuva_float_to_rgb_48_c; } else if(opt->alpha_mode == GAVL_ALPHA_IGNORE) { #ifndef HQ tab->yuva_32_to_rgb_15 = yuva_32_to_rgb_15_ia_c; tab->yuva_32_to_bgr_15 = yuva_32_to_bgr_15_ia_c; tab->yuva_32_to_rgb_16 = yuva_32_to_rgb_16_ia_c; tab->yuva_32_to_bgr_16 = yuva_32_to_bgr_16_ia_c; tab->yuva_32_to_rgb_24 = yuva_32_to_rgb_24_ia_c; tab->yuva_32_to_bgr_24 = yuva_32_to_bgr_24_ia_c; tab->yuva_32_to_rgb_32 = yuva_32_to_rgb_32_ia_c; tab->yuva_32_to_bgr_32 = yuva_32_to_bgr_32_ia_c; tab->yuva_32_to_rgb_48 = yuva_32_to_rgb_48_ia_c; tab->yuva_32_to_rgb_float = yuva_32_to_rgb_float_ia_c; tab->yuva_float_to_rgb_float = yuva_float_to_rgb_float_ia_c; tab->yuva_64_to_rgb_48 = yuva_64_to_rgb_48_ia_c; tab->yuva_64_to_rgb_float = yuva_64_to_rgb_float_ia_c; #endif tab->yuva_64_to_rgb_15 = yuva_64_to_rgb_15_ia_c; tab->yuva_64_to_bgr_15 = yuva_64_to_bgr_15_ia_c; tab->yuva_64_to_rgb_16 = yuva_64_to_rgb_16_ia_c; tab->yuva_64_to_bgr_16 = yuva_64_to_bgr_16_ia_c; tab->yuva_64_to_rgb_24 = yuva_64_to_rgb_24_ia_c; tab->yuva_64_to_bgr_24 = yuva_64_to_bgr_24_ia_c; tab->yuva_64_to_rgb_32 = yuva_64_to_rgb_32_ia_c; tab->yuva_64_to_bgr_32 = yuva_64_to_bgr_32_ia_c; tab->yuva_float_to_rgb_15 = yuva_float_to_rgb_15_ia_c; tab->yuva_float_to_bgr_15 = yuva_float_to_bgr_15_ia_c; tab->yuva_float_to_rgb_16 = yuva_float_to_rgb_16_ia_c; tab->yuva_float_to_bgr_16 = yuva_float_to_bgr_16_ia_c; tab->yuva_float_to_rgb_24 = yuva_float_to_rgb_24_ia_c; tab->yuva_float_to_bgr_24 = yuva_float_to_bgr_24_ia_c; tab->yuva_float_to_rgb_32 = yuva_float_to_rgb_32_ia_c; tab->yuva_float_to_bgr_32 = yuva_float_to_bgr_32_ia_c; tab->yuva_float_to_rgb_48 = yuva_float_to_rgb_48_ia_c; } tab->yuva_64_to_rgba_32 = yuva_64_to_rgba_32_c; tab->yuva_float_to_rgba_32 = yuva_float_to_rgba_32_c; tab->yuva_float_to_rgba_64 = yuva_float_to_rgba_64_c; #ifndef HQ tab->yuva_64_to_rgba_float = yuva_64_to_rgba_float_c; tab->yuva_float_to_rgba_float = yuva_float_to_rgba_float_c; tab->yuva_64_to_rgba_64 = yuva_64_to_rgba_64_c; tab->yuva_32_to_rgba_32 = yuva_32_to_rgba_32_c; tab->yuva_32_to_rgba_64 = yuva_32_to_rgba_64_c; tab->yuva_32_to_rgba_float = yuva_32_to_rgba_float_c; tab->yuy2_to_rgb_15 = yuy2_to_rgb_15_c; tab->yuy2_to_bgr_15 = yuy2_to_bgr_15_c; tab->yuy2_to_rgb_16 = yuy2_to_rgb_16_c; tab->yuy2_to_bgr_16 = yuy2_to_bgr_16_c; tab->yuy2_to_rgb_24 = yuy2_to_rgb_24_c; tab->yuy2_to_bgr_24 = yuy2_to_bgr_24_c; tab->yuy2_to_rgb_32 = yuy2_to_rgb_32_c; tab->yuy2_to_bgr_32 = yuy2_to_bgr_32_c; tab->yuy2_to_rgb_48 = yuy2_to_rgb_48_c; tab->yuy2_to_rgb_float = yuy2_to_rgb_float_c; tab->yuy2_to_rgba_32 = yuy2_to_rgba_32_c; tab->yuy2_to_rgba_64 = yuy2_to_rgba_64_c; tab->yuy2_to_rgba_float = yuy2_to_rgba_float_c; tab->uyvy_to_rgb_15 = uyvy_to_rgb_15_c; tab->uyvy_to_bgr_15 = uyvy_to_bgr_15_c; tab->uyvy_to_rgb_16 = uyvy_to_rgb_16_c; tab->uyvy_to_bgr_16 = uyvy_to_bgr_16_c; tab->uyvy_to_rgb_24 = uyvy_to_rgb_24_c; tab->uyvy_to_bgr_24 = uyvy_to_bgr_24_c; tab->uyvy_to_rgb_32 = uyvy_to_rgb_32_c; tab->uyvy_to_bgr_32 = uyvy_to_bgr_32_c; tab->uyvy_to_rgb_48 = uyvy_to_rgb_48_c; tab->uyvy_to_rgb_float = uyvy_to_rgb_float_c; tab->uyvy_to_rgba_32 = uyvy_to_rgba_32_c; tab->uyvy_to_rgba_64 = uyvy_to_rgba_64_c; tab->uyvy_to_rgba_float = uyvy_to_rgba_float_c; tab->yuv_420_p_to_rgb_15 = yuv_420_p_to_rgb_15_c; tab->yuv_420_p_to_bgr_15 = yuv_420_p_to_bgr_15_c; tab->yuv_420_p_to_rgb_16 = yuv_420_p_to_rgb_16_c; tab->yuv_420_p_to_bgr_16 = yuv_420_p_to_bgr_16_c; tab->yuv_420_p_to_rgb_24 = yuv_420_p_to_rgb_24_c; tab->yuv_420_p_to_bgr_24 = yuv_420_p_to_bgr_24_c; tab->yuv_420_p_to_rgb_32 = yuv_420_p_to_rgb_32_c; tab->yuv_420_p_to_bgr_32 = yuv_420_p_to_bgr_32_c; tab->yuv_420_p_to_rgb_48 = yuv_420_p_to_rgb_48_c; tab->yuv_420_p_to_rgb_float = yuv_420_p_to_rgb_float_c; tab->yuv_420_p_to_rgba_32 = yuv_420_p_to_rgba_32_c; tab->yuv_420_p_to_rgba_64 = yuv_420_p_to_rgba_64_c; tab->yuv_420_p_to_rgba_float = yuv_420_p_to_rgba_float_c; tab->yuv_410_p_to_rgb_15 = yuv_410_p_to_rgb_15_c; tab->yuv_410_p_to_bgr_15 = yuv_410_p_to_bgr_15_c; tab->yuv_410_p_to_rgb_16 = yuv_410_p_to_rgb_16_c; tab->yuv_410_p_to_bgr_16 = yuv_410_p_to_bgr_16_c; tab->yuv_410_p_to_rgb_24 = yuv_410_p_to_rgb_24_c; tab->yuv_410_p_to_bgr_24 = yuv_410_p_to_bgr_24_c; tab->yuv_410_p_to_rgb_32 = yuv_410_p_to_rgb_32_c; tab->yuv_410_p_to_bgr_32 = yuv_410_p_to_bgr_32_c; tab->yuv_410_p_to_rgb_48 = yuv_410_p_to_rgb_48_c; tab->yuv_410_p_to_rgb_float = yuv_410_p_to_rgb_float_c; tab->yuv_410_p_to_rgba_32 = yuv_410_p_to_rgba_32_c; tab->yuv_410_p_to_rgba_64 = yuv_410_p_to_rgba_64_c; tab->yuv_410_p_to_rgba_float = yuv_410_p_to_rgba_float_c; tab->yuv_422_p_to_rgb_15 = yuv_422_p_to_rgb_15_c; tab->yuv_422_p_to_bgr_15 = yuv_422_p_to_bgr_15_c; tab->yuv_422_p_to_rgb_16 = yuv_422_p_to_rgb_16_c; tab->yuv_422_p_to_bgr_16 = yuv_422_p_to_bgr_16_c; tab->yuv_422_p_to_rgb_24 = yuv_422_p_to_rgb_24_c; tab->yuv_422_p_to_bgr_24 = yuv_422_p_to_bgr_24_c; tab->yuv_422_p_to_rgb_32 = yuv_422_p_to_rgb_32_c; tab->yuv_422_p_to_bgr_32 = yuv_422_p_to_bgr_32_c; tab->yuv_422_p_to_rgb_48 = yuv_422_p_to_rgb_48_c; tab->yuv_422_p_to_rgb_float = yuv_422_p_to_rgb_float_c; tab->yuv_422_p_to_rgba_32 = yuv_422_p_to_rgba_32_c; tab->yuv_422_p_to_rgba_64 = yuv_422_p_to_rgba_64_c; tab->yuv_422_p_to_rgba_float = yuv_422_p_to_rgba_float_c; #endif tab->yuv_422_p_16_to_rgb_15 = yuv_422_p_16_to_rgb_15_c; tab->yuv_422_p_16_to_bgr_15 = yuv_422_p_16_to_bgr_15_c; tab->yuv_422_p_16_to_rgb_16 = yuv_422_p_16_to_rgb_16_c; tab->yuv_422_p_16_to_bgr_16 = yuv_422_p_16_to_bgr_16_c; tab->yuv_422_p_16_to_rgb_24 = yuv_422_p_16_to_rgb_24_c; tab->yuv_422_p_16_to_bgr_24 = yuv_422_p_16_to_bgr_24_c; tab->yuv_422_p_16_to_rgb_32 = yuv_422_p_16_to_rgb_32_c; tab->yuv_422_p_16_to_bgr_32 = yuv_422_p_16_to_bgr_32_c; tab->yuv_422_p_16_to_rgba_32 = yuv_422_p_16_to_rgba_32_c; #ifndef HQ tab->yuv_422_p_16_to_rgb_48 = yuv_422_p_16_to_rgb_48_c; tab->yuv_422_p_16_to_rgb_float = yuv_422_p_16_to_rgb_float_c; tab->yuv_422_p_16_to_rgba_64 = yuv_422_p_16_to_rgba_64_c; tab->yuv_422_p_16_to_rgba_float = yuv_422_p_16_to_rgba_float_c; tab->yuv_411_p_to_rgb_15 = yuv_411_p_to_rgb_15_c; tab->yuv_411_p_to_bgr_15 = yuv_411_p_to_bgr_15_c; tab->yuv_411_p_to_rgb_16 = yuv_411_p_to_rgb_16_c; tab->yuv_411_p_to_bgr_16 = yuv_411_p_to_bgr_16_c; tab->yuv_411_p_to_rgb_24 = yuv_411_p_to_rgb_24_c; tab->yuv_411_p_to_bgr_24 = yuv_411_p_to_bgr_24_c; tab->yuv_411_p_to_rgb_32 = yuv_411_p_to_rgb_32_c; tab->yuv_411_p_to_bgr_32 = yuv_411_p_to_bgr_32_c; tab->yuv_411_p_to_rgb_48 = yuv_411_p_to_rgb_48_c; tab->yuv_411_p_to_rgb_float = yuv_411_p_to_rgb_float_c; tab->yuv_411_p_to_rgba_32 = yuv_411_p_to_rgba_32_c; tab->yuv_411_p_to_rgba_64 = yuv_411_p_to_rgba_64_c; tab->yuv_411_p_to_rgba_float = yuv_411_p_to_rgba_float_c; tab->yuv_444_p_to_rgb_15 = yuv_444_p_to_rgb_15_c; tab->yuv_444_p_to_bgr_15 = yuv_444_p_to_bgr_15_c; tab->yuv_444_p_to_rgb_16 = yuv_444_p_to_rgb_16_c; tab->yuv_444_p_to_bgr_16 = yuv_444_p_to_bgr_16_c; tab->yuv_444_p_to_rgb_24 = yuv_444_p_to_rgb_24_c; tab->yuv_444_p_to_bgr_24 = yuv_444_p_to_bgr_24_c; tab->yuv_444_p_to_rgb_32 = yuv_444_p_to_rgb_32_c; tab->yuv_444_p_to_bgr_32 = yuv_444_p_to_bgr_32_c; tab->yuv_444_p_to_rgb_48 = yuv_444_p_to_rgb_48_c; tab->yuv_444_p_to_rgb_float = yuv_444_p_to_rgb_float_c; tab->yuv_444_p_to_rgba_32 = yuv_444_p_to_rgba_32_c; tab->yuv_444_p_to_rgba_64 = yuv_444_p_to_rgba_64_c; tab->yuv_444_p_to_rgba_float = yuv_444_p_to_rgba_float_c; #endif tab->yuv_444_p_16_to_rgb_15 = yuv_444_p_16_to_rgb_15_c; tab->yuv_444_p_16_to_bgr_15 = yuv_444_p_16_to_bgr_15_c; tab->yuv_444_p_16_to_rgb_16 = yuv_444_p_16_to_rgb_16_c; tab->yuv_444_p_16_to_bgr_16 = yuv_444_p_16_to_bgr_16_c; tab->yuv_444_p_16_to_rgb_24 = yuv_444_p_16_to_rgb_24_c; tab->yuv_444_p_16_to_bgr_24 = yuv_444_p_16_to_bgr_24_c; tab->yuv_444_p_16_to_rgb_32 = yuv_444_p_16_to_rgb_32_c; tab->yuv_444_p_16_to_bgr_32 = yuv_444_p_16_to_bgr_32_c; tab->yuv_444_p_16_to_rgba_32 = yuv_444_p_16_to_rgba_32_c; #ifndef HQ tab->yuv_444_p_16_to_rgb_48 = yuv_444_p_16_to_rgb_48_c; tab->yuv_444_p_16_to_rgb_float = yuv_444_p_16_to_rgb_float_c; tab->yuv_444_p_16_to_rgba_64 = yuv_444_p_16_to_rgba_64_c; tab->yuv_444_p_16_to_rgba_float = yuv_444_p_16_to_rgba_float_c; tab->yuvj_420_p_to_rgb_15 = yuvj_420_p_to_rgb_15_c; tab->yuvj_420_p_to_bgr_15 = yuvj_420_p_to_bgr_15_c; tab->yuvj_420_p_to_rgb_16 = yuvj_420_p_to_rgb_16_c; tab->yuvj_420_p_to_bgr_16 = yuvj_420_p_to_bgr_16_c; tab->yuvj_420_p_to_rgb_24 = yuvj_420_p_to_rgb_24_c; tab->yuvj_420_p_to_bgr_24 = yuvj_420_p_to_bgr_24_c; tab->yuvj_420_p_to_rgb_32 = yuvj_420_p_to_rgb_32_c; tab->yuvj_420_p_to_bgr_32 = yuvj_420_p_to_bgr_32_c; tab->yuvj_420_p_to_rgb_48 = yuvj_420_p_to_rgb_48_c; tab->yuvj_420_p_to_rgb_float = yuvj_420_p_to_rgb_float_c; tab->yuvj_420_p_to_rgba_32 = yuvj_420_p_to_rgba_32_c; tab->yuvj_420_p_to_rgba_64 = yuvj_420_p_to_rgba_64_c; tab->yuvj_420_p_to_rgba_float = yuvj_420_p_to_rgba_float_c; tab->yuvj_422_p_to_rgb_15 = yuvj_422_p_to_rgb_15_c; tab->yuvj_422_p_to_bgr_15 = yuvj_422_p_to_bgr_15_c; tab->yuvj_422_p_to_rgb_16 = yuvj_422_p_to_rgb_16_c; tab->yuvj_422_p_to_bgr_16 = yuvj_422_p_to_bgr_16_c; tab->yuvj_422_p_to_rgb_24 = yuvj_422_p_to_rgb_24_c; tab->yuvj_422_p_to_bgr_24 = yuvj_422_p_to_bgr_24_c; tab->yuvj_422_p_to_rgb_32 = yuvj_422_p_to_rgb_32_c; tab->yuvj_422_p_to_bgr_32 = yuvj_422_p_to_bgr_32_c; tab->yuvj_422_p_to_rgb_48 = yuvj_422_p_to_rgb_48_c; tab->yuvj_422_p_to_rgb_float = yuvj_422_p_to_rgb_float_c; tab->yuvj_422_p_to_rgba_32 = yuvj_422_p_to_rgba_32_c; tab->yuvj_422_p_to_rgba_64 = yuvj_422_p_to_rgba_64_c; tab->yuvj_422_p_to_rgba_float = yuvj_422_p_to_rgba_float_c; tab->yuvj_444_p_to_rgb_15 = yuvj_444_p_to_rgb_15_c; tab->yuvj_444_p_to_bgr_15 = yuvj_444_p_to_bgr_15_c; tab->yuvj_444_p_to_rgb_16 = yuvj_444_p_to_rgb_16_c; tab->yuvj_444_p_to_bgr_16 = yuvj_444_p_to_bgr_16_c; tab->yuvj_444_p_to_rgb_24 = yuvj_444_p_to_rgb_24_c; tab->yuvj_444_p_to_bgr_24 = yuvj_444_p_to_bgr_24_c; tab->yuvj_444_p_to_rgb_32 = yuvj_444_p_to_rgb_32_c; tab->yuvj_444_p_to_bgr_32 = yuvj_444_p_to_bgr_32_c; tab->yuvj_444_p_to_rgb_48 = yuvj_444_p_to_rgb_48_c; tab->yuvj_444_p_to_rgb_float = yuvj_444_p_to_rgb_float_c; tab->yuvj_444_p_to_rgba_32 = yuvj_444_p_to_rgba_32_c; tab->yuvj_444_p_to_rgba_64 = yuvj_444_p_to_rgba_64_c; tab->yuvj_444_p_to_rgba_float = yuvj_444_p_to_rgba_float_c; #endif tab->yuv_float_to_rgb_15 = yuv_float_to_rgb_15_c; tab->yuv_float_to_bgr_15 = yuv_float_to_bgr_15_c; tab->yuv_float_to_rgb_16 = yuv_float_to_rgb_16_c; tab->yuv_float_to_bgr_16 = yuv_float_to_bgr_16_c; tab->yuv_float_to_rgb_24 = yuv_float_to_rgb_24_c; tab->yuv_float_to_bgr_24 = yuv_float_to_bgr_24_c; tab->yuv_float_to_rgb_32 = yuv_float_to_rgb_32_c; tab->yuv_float_to_bgr_32 = yuv_float_to_bgr_32_c; tab->yuv_float_to_rgba_32 = yuv_float_to_rgba_32_c; tab->yuv_float_to_rgb_48 = yuv_float_to_rgb_48_c; tab->yuv_float_to_rgba_64 = yuv_float_to_rgba_64_c; #ifndef HQ tab->yuv_float_to_rgb_float = yuv_float_to_rgb_float_c; tab->yuv_float_to_rgba_float = yuv_float_to_rgba_float_c; #endif } bplaum-gavl-b9385e3/gavl/c/yuv_yuv_c.c000066400000000000000000005154531513252040200176430ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include #include "colorspace_tables.h" #include "colorspace_macros.h" #include #ifndef HQ /* * The conversion routines YUV 422 Planar <-> YUV 420 Planar * and YUV 411 Planar <-> YUV 410 Planar * differ only by their memcpy implementations. * We use gavl_memcpy directly, because we know, that the * memcpy function is initialized by gavl_video_options_set_defaults */ static void yuv_420_p_to_yuv_422_p_generic(gavl_video_convert_context_t * ctx) { int i; int y_size = ctx->input_frame->strides[0] < ctx->output_frame->strides[0] ? ctx->input_frame->strides[0] : ctx->output_frame->strides[0]; int uv_size = ctx->input_frame->strides[1] < ctx->output_frame->strides[1] ? ctx->input_frame->strides[1] : ctx->output_frame->strides[1]; int imax = ctx->input_format.image_height/2; uint8_t * src_y = ctx->input_frame->planes[0]; uint8_t * src_u = ctx->input_frame->planes[1]; uint8_t * src_v = ctx->input_frame->planes[2]; uint8_t * dst_y = ctx->output_frame->planes[0]; uint8_t * dst_u = ctx->output_frame->planes[1]; uint8_t * dst_v = ctx->output_frame->planes[2]; for(i = 0; i < imax; i++) { gavl_memcpy(dst_y, src_y, y_size); gavl_memcpy(dst_u, src_u, uv_size); gavl_memcpy(dst_v, src_v, uv_size); dst_y += ctx->output_frame->strides[0]; dst_u += ctx->output_frame->strides[1]; dst_v += ctx->output_frame->strides[2]; src_y += ctx->input_frame->strides[0]; gavl_memcpy(dst_y, src_y, y_size); gavl_memcpy(dst_u, src_u, uv_size); gavl_memcpy(dst_v, src_v, uv_size); dst_y += ctx->output_frame->strides[0]; dst_u += ctx->output_frame->strides[1]; dst_v += ctx->output_frame->strides[2]; src_y += ctx->input_frame->strides[0]; src_u += ctx->input_frame->strides[1]; src_v += ctx->input_frame->strides[2]; } } static void yuv_422_p_to_yuv_420_p_generic(gavl_video_convert_context_t * ctx) { int i; int y_size = ctx->input_frame->strides[0] < ctx->output_frame->strides[0] ? ctx->input_frame->strides[0] : ctx->output_frame->strides[0]; int uv_size = ctx->input_frame->strides[1] < ctx->output_frame->strides[1] ? ctx->input_frame->strides[1] : ctx->output_frame->strides[1]; int imax = ctx->input_format.image_height/2; uint8_t * src_y = ctx->input_frame->planes[0]; uint8_t * src_u = ctx->input_frame->planes[1]; uint8_t * src_v = ctx->input_frame->planes[2]; uint8_t * dst_y = ctx->output_frame->planes[0]; uint8_t * dst_u = ctx->output_frame->planes[1]; uint8_t * dst_v = ctx->output_frame->planes[2]; for(i = 0; i < imax; i++) { gavl_memcpy(dst_y, src_y, y_size); gavl_memcpy(dst_u, src_u, uv_size); gavl_memcpy(dst_v, src_v, uv_size); dst_y += ctx->output_frame->strides[0]; src_y += ctx->input_frame->strides[0]; src_u += ctx->input_frame->strides[1]; src_v += ctx->input_frame->strides[2]; gavl_memcpy(dst_y, src_y, y_size); dst_y += ctx->output_frame->strides[0]; dst_u += ctx->output_frame->strides[1]; dst_v += ctx->output_frame->strides[2]; src_y += ctx->input_frame->strides[0]; src_u += ctx->input_frame->strides[1]; src_v += ctx->input_frame->strides[2]; } } static void yuv_410_p_to_yuv_411_p_generic(gavl_video_convert_context_t * ctx) { int i; int y_size = ctx->input_frame->strides[0] < ctx->output_frame->strides[0] ? ctx->input_frame->strides[0] : ctx->output_frame->strides[0]; int uv_size = ctx->input_frame->strides[1] < ctx->output_frame->strides[1] ? ctx->input_frame->strides[1] : ctx->output_frame->strides[1]; int imax = ctx->input_format.image_height/4; uint8_t * src_y = ctx->input_frame->planes[0]; uint8_t * src_u = ctx->input_frame->planes[1]; uint8_t * src_v = ctx->input_frame->planes[2]; uint8_t * dst_y = ctx->output_frame->planes[0]; uint8_t * dst_u = ctx->output_frame->planes[1]; uint8_t * dst_v = ctx->output_frame->planes[2]; for(i = 0; i < imax; i++) { /* 1 */ gavl_memcpy(dst_y, src_y, y_size); gavl_memcpy(dst_u, src_u, uv_size); gavl_memcpy(dst_v, src_v, uv_size); dst_y += ctx->output_frame->strides[0]; dst_u += ctx->output_frame->strides[1]; dst_v += ctx->output_frame->strides[2]; src_y += ctx->input_frame->strides[0]; /* 2 */ gavl_memcpy(dst_y, src_y, y_size); gavl_memcpy(dst_u, src_u, uv_size); gavl_memcpy(dst_v, src_v, uv_size); dst_y += ctx->output_frame->strides[0]; dst_u += ctx->output_frame->strides[1]; dst_v += ctx->output_frame->strides[2]; src_y += ctx->input_frame->strides[0]; /* 3 */ gavl_memcpy(dst_y, src_y, y_size); gavl_memcpy(dst_u, src_u, uv_size); gavl_memcpy(dst_v, src_v, uv_size); dst_y += ctx->output_frame->strides[0]; dst_u += ctx->output_frame->strides[1]; dst_v += ctx->output_frame->strides[2]; src_y += ctx->input_frame->strides[0]; /* 4 */ gavl_memcpy(dst_y, src_y, y_size); gavl_memcpy(dst_u, src_u, uv_size); gavl_memcpy(dst_v, src_v, uv_size); dst_y += ctx->output_frame->strides[0]; dst_u += ctx->output_frame->strides[1]; dst_v += ctx->output_frame->strides[2]; src_y += ctx->input_frame->strides[0]; src_u += ctx->input_frame->strides[1]; src_v += ctx->input_frame->strides[2]; } } static void yuv_411_p_to_yuv_410_p_generic(gavl_video_convert_context_t * ctx) { int i; int y_size = ctx->input_frame->strides[0] < ctx->output_frame->strides[0] ? ctx->input_frame->strides[0] : ctx->output_frame->strides[0]; int uv_size = ctx->input_frame->strides[1] < ctx->output_frame->strides[1] ? ctx->input_frame->strides[1] : ctx->output_frame->strides[1]; int imax = ctx->input_format.image_height/4; uint8_t * src_y = ctx->input_frame->planes[0]; uint8_t * src_u = ctx->input_frame->planes[1]; uint8_t * src_v = ctx->input_frame->planes[2]; uint8_t * dst_y = ctx->output_frame->planes[0]; uint8_t * dst_u = ctx->output_frame->planes[1]; uint8_t * dst_v = ctx->output_frame->planes[2]; for(i = 0; i < imax; i++) { /* 1 */ gavl_memcpy(dst_y, src_y, y_size); gavl_memcpy(dst_u, src_u, uv_size); gavl_memcpy(dst_v, src_v, uv_size); dst_y += ctx->output_frame->strides[0]; src_y += ctx->input_frame->strides[0]; src_u += ctx->input_frame->strides[1]; src_v += ctx->input_frame->strides[2]; /* 2 */ gavl_memcpy(dst_y, src_y, y_size); dst_y += ctx->output_frame->strides[0]; src_y += ctx->input_frame->strides[0]; src_u += ctx->input_frame->strides[1]; src_v += ctx->input_frame->strides[2]; /* 3 */ gavl_memcpy(dst_y, src_y, y_size); dst_y += ctx->output_frame->strides[0]; src_y += ctx->input_frame->strides[0]; src_u += ctx->input_frame->strides[1]; src_v += ctx->input_frame->strides[2]; /* 4 */ gavl_memcpy(dst_y, src_y, y_size); dst_y += ctx->output_frame->strides[0]; src_y += ctx->input_frame->strides[0]; src_u += ctx->input_frame->strides[1]; src_v += ctx->input_frame->strides[2]; /* Increment dst chroma */ dst_u += ctx->output_frame->strides[1]; dst_v += ctx->output_frame->strides[2]; } } /***************************************************** * * C YUV <-> YUV Conversions * ******************************************************/ /* YUY2 <-> UYVY */ #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE 4 #define NUM_PIXELS 2 #define FUNC_NAME uyvy_to_yuy2_c #define CONVERT dst[0] = src[1];\ dst[1] = src[0];\ dst[2] = src[3];\ dst[3] = src[2];\ #include "../csp_packed_packed.h" /* YUY2 -> */ /* yuy2_to_yuv_420_p_c */ #define FUNC_NAME yuy2_to_yuv_420_p_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CHROMA_SUB 2 #define CONVERT_YUV \ dst_y[0] = src[0];\ *dst_u = src[1];\ dst_y[1] = src[2];\ *dst_v = src[3]; #define CONVERT_Y \ dst_y[0] = src[0];\ dst_y[1] = src[2]; #include "../csp_packed_planar.h" /* yuy2_to_yuv_410_p_c */ #define FUNC_NAME yuy2_to_yuv_410_p_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 4 #define CHROMA_SUB 4 #define CONVERT_YUV \ dst_y[0] = src[0];\ *dst_u = src[1];\ dst_y[1] = src[2];\ *dst_v = src[3];\ dst_y[2] = src[4];\ dst_y[3] = src[6]; #define CONVERT_Y \ dst_y[0] = src[0];\ dst_y[1] = src[2];\ dst_y[2] = src[4];\ dst_y[3] = src[6]; #include "../csp_packed_planar.h" /* yuy2_to_yuv_422_p_c */ #define FUNC_NAME yuy2_to_yuv_422_p_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CHROMA_SUB 1 #define CONVERT_YUV \ dst_y[0] = src[0];\ *dst_u = src[1];\ dst_y[1] = src[2];\ *dst_v = src[3]; #include "../csp_packed_planar.h" /* yuy2_to_yuv_422_p_16_c */ #define FUNC_NAME yuy2_to_yuv_422_p_16_c #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CHROMA_SUB 1 #define CONVERT_YUV \ dst_y[0] = Y_8_TO_16(src[0]); \ *dst_u = UV_8_TO_16(src[1]); \ dst_y[1] = Y_8_TO_16(src[2]); \ *dst_v = UV_8_TO_16(src[3]); #include "../csp_packed_planar.h" /* yuy2_to_yuv_411_p_c */ #define FUNC_NAME yuy2_to_yuv_411_p_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 4 #define CHROMA_SUB 1 #define CONVERT_YUV \ dst_y[0] = src[0];\ *dst_u = src[1];\ dst_y[1] = src[2];\ *dst_v = src[3];\ dst_y[2] = src[4];\ dst_y[3] = src[6]; #include "../csp_packed_planar.h" /* yuy2_to_yuv_444_p_c */ #define FUNC_NAME yuy2_to_yuv_444_p_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 2 #define NUM_PIXELS 2 #define CHROMA_SUB 1 #define CONVERT_YUV \ dst_y[0] = src[0]; \ dst_u[0] = src[1]; \ dst_v[0] = src[3]; \ dst_y[1] = src[2]; \ dst_u[1] = src[1]; \ dst_v[1] = src[3]; #include "../csp_packed_planar.h" /* yuy2_to_yuv_444_p_16_c */ #define FUNC_NAME yuy2_to_yuv_444_p_16_c #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 2 #define NUM_PIXELS 2 #define CHROMA_SUB 1 #define CONVERT_YUV \ dst_y[0] = Y_8_TO_16(src[0]); \ dst_u[0] = UV_8_TO_16(src[1]); \ dst_v[0] = UV_8_TO_16(src[3]); \ dst_y[1] = Y_8_TO_16(src[2]); \ dst_u[1] = UV_8_TO_16(src[1]); \ dst_v[1] = UV_8_TO_16(src[3]); #include "../csp_packed_planar.h" /* yuy2_to_yuvj_420_p_c */ #define FUNC_NAME yuy2_to_yuvj_420_p_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CHROMA_SUB 2 #define CONVERT_YUV \ dst_y[0] = Y_8_TO_YJ_8(src[0]);\ *dst_u = UV_8_TO_UVJ_8(src[1]);\ dst_y[1] = Y_8_TO_YJ_8(src[2]);\ *dst_v = UV_8_TO_UVJ_8(src[3]); #define CONVERT_Y \ dst_y[0] = Y_8_TO_YJ_8(src[0]);\ dst_y[1] = Y_8_TO_YJ_8(src[2]); #include "../csp_packed_planar.h" /* yuy2_to_yuvj_422_p_c */ #define FUNC_NAME yuy2_to_yuvj_422_p_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CHROMA_SUB 1 #define CONVERT_YUV \ dst_y[0] = Y_8_TO_YJ_8(src[0]);\ *dst_u = UV_8_TO_UVJ_8(src[1]);\ dst_y[1] = Y_8_TO_YJ_8(src[2]);\ *dst_v = UV_8_TO_UVJ_8(src[3]); #include "../csp_packed_planar.h" /* yuy2_to_yuvj_444_p_c */ #define FUNC_NAME yuy2_to_yuvj_444_p_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 2 #define NUM_PIXELS 2 #define CHROMA_SUB 1 #define CONVERT_YUV \ dst_y[0] = Y_8_TO_YJ_8(src[0]); \ dst_u[0] = UV_8_TO_UVJ_8(src[1]); \ dst_v[0] = UV_8_TO_UVJ_8(src[3]); \ dst_y[1] = Y_8_TO_YJ_8(src[2]); \ dst_u[1] = UV_8_TO_UVJ_8(src[1]); \ dst_v[1] = UV_8_TO_UVJ_8(src[3]); #include "../csp_packed_planar.h" /* UYVY -> */ /* uyvy_to_yuv_420_p_c */ #define FUNC_NAME uyvy_to_yuv_420_p_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CHROMA_SUB 2 #define CONVERT_YUV \ dst_y[0] = src[1];\ *dst_u = src[0];\ dst_y[1] = src[3];\ *dst_v = src[2]; #define CONVERT_Y \ dst_y[0] = src[1];\ dst_y[1] = src[3]; #include "../csp_packed_planar.h" /* uyvy_to_yuv_410_p_c */ #define FUNC_NAME uyvy_to_yuv_410_p_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 4 #define CHROMA_SUB 4 #define CONVERT_YUV \ dst_y[0] = src[1];\ *dst_u = src[0];\ dst_y[1] = src[3];\ *dst_v = src[2];\ dst_y[2] = src[5];\ dst_y[3] = src[7];\ #define CONVERT_Y \ dst_y[0] = src[1];\ dst_y[1] = src[3];\ dst_y[2] = src[5];\ dst_y[3] = src[7]; #include "../csp_packed_planar.h" /* uyvy_to_yuv_422_p_c */ #define FUNC_NAME uyvy_to_yuv_422_p_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CHROMA_SUB 1 #define CONVERT_YUV \ dst_y[0] = src[1];\ *dst_u = src[0];\ dst_y[1] = src[3];\ *dst_v = src[2]; #include "../csp_packed_planar.h" /* uyvy_to_yuv_422_p_16_c */ #define FUNC_NAME uyvy_to_yuv_422_p_16_c #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CHROMA_SUB 1 #define CONVERT_YUV \ dst_y[0] = Y_8_TO_16(src[1]); \ *dst_u = UV_8_TO_16(src[0]); \ dst_y[1] = Y_8_TO_16(src[3]); \ *dst_v = UV_8_TO_16(src[2]); #include "../csp_packed_planar.h" /* uyvy_to_yuv_411_p_c */ #define FUNC_NAME uyvy_to_yuv_411_p_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 4 #define CHROMA_SUB 1 #define CONVERT_YUV \ dst_y[0] = src[1];\ *dst_u = src[0];\ dst_y[1] = src[3];\ *dst_v = src[2];\ dst_y[2] = src[5];\ dst_y[3] = src[7]; #include "../csp_packed_planar.h" /* uyvy_to_yuv_444_p_c */ #define FUNC_NAME uyvy_to_yuv_444_p_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 2 #define NUM_PIXELS 2 #define CHROMA_SUB 1 #define CONVERT_YUV \ dst_y[0] = src[1]; \ dst_u[0] = src[0]; \ dst_v[0] = src[2]; \ dst_y[1] = src[3]; \ dst_u[1] = src[0]; \ dst_v[1] = src[2]; #include "../csp_packed_planar.h" /* uyvy_to_yuv_444_p_16_c */ #define FUNC_NAME uyvy_to_yuv_444_p_16_c #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 2 #define NUM_PIXELS 2 #define CHROMA_SUB 1 #define CONVERT_YUV \ dst_y[0] = Y_8_TO_16(src[1]); \ dst_u[0] = UV_8_TO_16(src[0]); \ dst_v[0] = UV_8_TO_16(src[2]); \ dst_y[1] = Y_8_TO_16(src[3]); \ dst_u[1] = UV_8_TO_16(src[0]); \ dst_v[1] = UV_8_TO_16(src[2]); #include "../csp_packed_planar.h" /* uyvy_to_yuvj_420_p_c */ #define FUNC_NAME uyvy_to_yuvj_420_p_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CHROMA_SUB 2 #define CONVERT_YUV \ dst_y[0] = Y_8_TO_YJ_8(src[1]);\ *dst_u = UV_8_TO_UVJ_8(src[0]);\ dst_y[1] = Y_8_TO_YJ_8(src[3]);\ *dst_v = UV_8_TO_UVJ_8(src[2]); #define CONVERT_Y \ dst_y[0] = Y_8_TO_YJ_8(src[1]);\ dst_y[1] = Y_8_TO_YJ_8(src[3]); #include "../csp_packed_planar.h" /* uyvy_to_yuvj_422_p_c */ #define FUNC_NAME uyvy_to_yuvj_422_p_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CHROMA_SUB 1 #define CONVERT_YUV \ dst_y[0] = Y_8_TO_YJ_8(src[1]);\ *dst_u = UV_8_TO_UVJ_8(src[0]);\ dst_y[1] = Y_8_TO_YJ_8(src[3]);\ *dst_v = UV_8_TO_UVJ_8(src[2]); #include "../csp_packed_planar.h" /* uyvy_to_yuvj_444_p_c */ #define FUNC_NAME uyvy_to_yuvj_444_p_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 2 #define NUM_PIXELS 2 #define CHROMA_SUB 1 #define CONVERT_YUV \ dst_y[0] = Y_8_TO_YJ_8(src[1]); \ dst_u[0] = UV_8_TO_UVJ_8(src[0]); \ dst_v[0] = UV_8_TO_UVJ_8(src[2]); \ dst_y[1] = Y_8_TO_YJ_8(src[3]); \ dst_u[1] = UV_8_TO_UVJ_8(src[0]); \ dst_v[1] = UV_8_TO_UVJ_8(src[2]); #include "../csp_packed_planar.h" /* -> YUY2 */ /* yuv_420_p_to_yuy2_c */ #define FUNC_NAME yuv_420_p_to_yuy2_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 4 #define NUM_PIXELS 2 #define CHROMA_SUB 2 #define CONVERT \ dst[0] = src_y[0];\ dst[1] = *src_u;\ dst[2] = src_y[1];\ dst[3] = *src_v; #include "../csp_planar_packed.h" /* yuv_410_p_to_yuy2_c */ #define FUNC_NAME yuv_410_p_to_yuy2_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 4 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 8 #define NUM_PIXELS 4 #define CHROMA_SUB 4 #define CONVERT \ dst[0] = src_y[0];\ dst[1] = *src_u;\ dst[2] = src_y[1];\ dst[3] = *src_v;\ dst[4] = src_y[2];\ dst[5] = *src_u;\ dst[6] = src_y[3];\ dst[7] = *src_v; #include "../csp_planar_packed.h" /* yuv_422_p_to_yuy2_c */ #define FUNC_NAME yuv_422_p_to_yuy2_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 4 #define NUM_PIXELS 2 #define CHROMA_SUB 1 #define CONVERT \ dst[0] = src_y[0];\ dst[1] = *src_u;\ dst[2] = src_y[1];\ dst[3] = *src_v; #include "../csp_planar_packed.h" #endif // !HQ /* yuv_422_p_16_to_yuy2_c */ #define FUNC_NAME yuv_422_p_16_to_yuy2_c #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 4 #define NUM_PIXELS 2 #define CHROMA_SUB 1 #define CONVERT \ Y_16_TO_Y_8(src_y[0], dst[0]); \ UV_16_TO_UV_8(*src_u, dst[1]); \ Y_16_TO_Y_8(src_y[1], dst[2]); \ UV_16_TO_UV_8(*src_v, dst[3]); #include "../csp_planar_packed.h" #ifndef HQ /* yuv_411_p_to_yuy2_c */ #define FUNC_NAME yuv_411_p_to_yuy2_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 4 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 8 #define NUM_PIXELS 4 #define CHROMA_SUB 1 #define CONVERT \ dst[0] = src_y[0];\ dst[1] = *src_u;\ dst[2] = src_y[1];\ dst[3] = *src_v;\ dst[4] = src_y[2];\ dst[5] = *src_u;\ dst[6] = src_y[3];\ dst[7] = *src_v; #include "../csp_planar_packed.h" /* yuv_444_p_to_yuy2_c */ #define FUNC_NAME yuv_444_p_to_yuy2_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 2 #define OUT_ADVANCE 4 #define NUM_PIXELS 2 #define CHROMA_SUB 1 #define CONVERT \ dst[0] = src_y[0];\ dst[1] = *src_u;\ dst[2] = src_y[1];\ dst[3] = *src_v; #include "../csp_planar_packed.h" #endif // !HQ /* yuv_444_p_16_to_yuy2_c */ #define FUNC_NAME yuv_444_p_16_to_yuy2_c #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 2 #define OUT_ADVANCE 4 #define NUM_PIXELS 2 #define CHROMA_SUB 1 #define CONVERT \ Y_16_TO_Y_8(src_y[0], dst[0]); \ UV_16_TO_UV_8(*src_u, dst[1]); \ Y_16_TO_Y_8(src_y[1], dst[2]); \ UV_16_TO_UV_8(*src_v, dst[3]); #include "../csp_planar_packed.h" #ifndef HQ /* yuvj_420_p_to_yuy2_c */ #define FUNC_NAME yuvj_420_p_to_yuy2_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 4 #define NUM_PIXELS 2 #define CHROMA_SUB 2 #define CONVERT \ dst[0] = YJ_8_TO_Y_8(src_y[0]); \ dst[1] = UVJ_8_TO_UV_8(*src_u); \ dst[2] = YJ_8_TO_Y_8(src_y[1]); \ dst[3] = UVJ_8_TO_UV_8(*src_v); #include "../csp_planar_packed.h" /* yuvj_422_p_to_yuy2_c */ #define FUNC_NAME yuvj_422_p_to_yuy2_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 4 #define NUM_PIXELS 2 #define CHROMA_SUB 1 #define CONVERT \ dst[0] = YJ_8_TO_Y_8(src_y[0]);\ dst[1] = UVJ_8_TO_UV_8(*src_u); \ dst[2] = YJ_8_TO_Y_8(src_y[1]);\ dst[3] = UVJ_8_TO_UV_8(*src_v); #include "../csp_planar_packed.h" /* yuvj_444_p_to_yuy2_c */ #define FUNC_NAME yuvj_444_p_to_yuy2_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 2 #define OUT_ADVANCE 4 #define NUM_PIXELS 2 #define CHROMA_SUB 1 #define CONVERT \ dst[0] = YJ_8_TO_Y_8(src_y[0]);\ dst[1] = UVJ_8_TO_UV_8(*src_u); \ dst[2] = YJ_8_TO_Y_8(src_y[1]);\ dst[3] = UVJ_8_TO_UV_8(*src_v); #include "../csp_planar_packed.h" /* -> UYVY */ /* yuv_420_p_to_uyvy_c */ #define FUNC_NAME yuv_420_p_to_uyvy_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 4 #define NUM_PIXELS 2 #define CHROMA_SUB 2 #define CONVERT \ dst[1] = src_y[0];\ dst[0] = *src_u;\ dst[3] = src_y[1];\ dst[2] = *src_v; #include "../csp_planar_packed.h" /* yuv_410_p_to_uyvy_c */ #define FUNC_NAME yuv_410_p_to_uyvy_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 4 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 8 #define NUM_PIXELS 4 #define CHROMA_SUB 4 #define CONVERT \ dst[1] = src_y[0];\ dst[0] = *src_u;\ dst[3] = src_y[1];\ dst[2] = *src_v;\ dst[5] = src_y[2];\ dst[4] = *src_u;\ dst[7] = src_y[3];\ dst[6] = *src_v; #include "../csp_planar_packed.h" /* yuv_422_p_to_uyvy_c */ #define FUNC_NAME yuv_422_p_to_uyvy_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 4 #define NUM_PIXELS 2 #define CHROMA_SUB 1 #define CONVERT \ dst[1] = src_y[0];\ dst[0] = *src_u;\ dst[3] = src_y[1];\ dst[2] = *src_v; #include "../csp_planar_packed.h" #endif // !HQ /* yuv_422_p_16_to_uyvy_c */ #define FUNC_NAME yuv_422_p_16_to_uyvy_c #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 4 #define NUM_PIXELS 2 #define CHROMA_SUB 1 #define CONVERT \ Y_16_TO_Y_8(src_y[0], dst[1]); \ UV_16_TO_UV_8(*src_u, dst[0]); \ Y_16_TO_Y_8(src_y[1], dst[3]); \ UV_16_TO_UV_8(*src_v, dst[2]); #include "../csp_planar_packed.h" #ifndef HQ /* yuv_411_p_to_uyvy_c */ #define FUNC_NAME yuv_411_p_to_uyvy_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 4 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 8 #define NUM_PIXELS 4 #define CHROMA_SUB 1 #define CONVERT \ dst[1] = src_y[0];\ dst[0] = *src_u;\ dst[3] = src_y[1];\ dst[2] = *src_v;\ dst[5] = src_y[2];\ dst[4] = *src_u;\ dst[7] = src_y[3];\ dst[6] = *src_v; #include "../csp_planar_packed.h" /* yuv_444_p_to_uyvy_c */ #define FUNC_NAME yuv_444_p_to_uyvy_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 2 #define OUT_ADVANCE 4 #define NUM_PIXELS 2 #define CHROMA_SUB 1 #define CONVERT \ dst[1] = src_y[0];\ dst[0] = *src_u;\ dst[3] = src_y[1];\ dst[2] = *src_v; #include "../csp_planar_packed.h" #endif // !HQ /* yuv_444_p_16_to_uyvy_c */ #define FUNC_NAME yuv_444_p_16_to_uyvy_c #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 2 #define OUT_ADVANCE 4 #define NUM_PIXELS 2 #define CHROMA_SUB 1 #define CONVERT \ Y_16_TO_Y_8(src_y[0], dst[1]); \ UV_16_TO_UV_8(*src_u, dst[0]); \ Y_16_TO_Y_8(src_y[1], dst[3]); \ UV_16_TO_UV_8(*src_v, dst[2]); #include "../csp_planar_packed.h" #ifndef HQ /* yuvj_420_p_to_uyvy_c */ #define FUNC_NAME yuvj_420_p_to_uyvy_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 4 #define NUM_PIXELS 2 #define CHROMA_SUB 2 #define CONVERT \ dst[1] = YJ_8_TO_Y_8(src_y[0]);\ dst[0] = UVJ_8_TO_UV_8(*src_u); \ dst[3] = YJ_8_TO_Y_8(src_y[1]);\ dst[2] = UVJ_8_TO_UV_8(*src_v); #include "../csp_planar_packed.h" /* yuvj_422_p_to_uyvy_c */ #define FUNC_NAME yuvj_422_p_to_uyvy_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 4 #define NUM_PIXELS 2 #define CHROMA_SUB 1 #define CONVERT \ dst[1] = YJ_8_TO_Y_8(src_y[0]);\ dst[0] = UVJ_8_TO_UV_8(*src_u); \ dst[3] = YJ_8_TO_Y_8(src_y[1]);\ dst[2] = UVJ_8_TO_UV_8(*src_v); #include "../csp_planar_packed.h" /* yuvj_444_p_to_uyvy_c */ #define FUNC_NAME yuvj_444_p_to_uyvy_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 2 #define OUT_ADVANCE 4 #define NUM_PIXELS 2 #define CHROMA_SUB 1 #define CONVERT \ dst[1] = YJ_8_TO_Y_8(src_y[0]);\ dst[0] = UVJ_8_TO_UV_8(*src_u); \ dst[3] = YJ_8_TO_Y_8(src_y[1]);\ dst[2] = UVJ_8_TO_UV_8(*src_v); #include "../csp_planar_packed.h" /********************************* Planar -> planar *********************************/ /********************************* * 420 -> 444 *********************************/ #define FUNC_NAME yuv_420_p_to_yuv_444_p_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 2 #define NUM_PIXELS 2 #define CHROMA_SUB_IN 2 #define CHROMA_SUB_OUT 1 #define CONVERT_YUV \ dst_y[0]=src_y[0];\ dst_u[0]=src_u[0];\ dst_v[0]=src_v[0];\ dst_y[1]=src_y[1];\ dst_u[1]=src_u[0];\ dst_v[1]=src_v[0]; #include "../csp_planar_planar.h" #define FUNC_NAME yuv_420_p_to_yuv_444_p_16_c #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 2 #define NUM_PIXELS 2 #define CHROMA_SUB_IN 2 #define CHROMA_SUB_OUT 1 #define CONVERT_YUV \ dst_y[0]=Y_8_TO_16(src_y[0]); \ dst_u[0]=UV_8_TO_16(src_u[0]); \ dst_v[0]=UV_8_TO_16(src_v[0]); \ dst_y[1]=Y_8_TO_16(src_y[1]); \ dst_u[1]=UV_8_TO_16(src_u[0]); \ dst_v[1]=UV_8_TO_16(src_v[0]); #include "../csp_planar_planar.h" #define FUNC_NAME yuv_420_p_to_yuvj_444_p_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 2 #define NUM_PIXELS 2 #define CHROMA_SUB_IN 2 #define CHROMA_SUB_OUT 1 #define CONVERT_YUV \ dst_y[0]=Y_8_TO_YJ_8(src_y[0]);\ dst_u[0]=UV_8_TO_UVJ_8(src_u[0]);\ dst_v[0]=UV_8_TO_UVJ_8(src_v[0]);\ dst_y[1]=Y_8_TO_YJ_8(src_y[1]);\ dst_u[1]=UV_8_TO_UVJ_8(src_u[0]);\ dst_v[1]=UV_8_TO_UVJ_8(src_v[0]); #include "../csp_planar_planar.h" #define FUNC_NAME yuvj_420_p_to_yuv_444_p_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 2 #define NUM_PIXELS 2 #define CHROMA_SUB_IN 2 #define CHROMA_SUB_OUT 1 #define CONVERT_YUV \ dst_y[0]=YJ_8_TO_Y_8(src_y[0]);\ dst_u[0]=UVJ_8_TO_UV_8(src_u[0]);\ dst_v[0]=UVJ_8_TO_UV_8(src_v[0]);\ dst_y[1]=YJ_8_TO_Y_8(src_y[1]);\ dst_u[1]=UVJ_8_TO_UV_8(src_u[0]);\ dst_v[1]=UVJ_8_TO_UV_8(src_v[0]); #include "../csp_planar_planar.h" #define FUNC_NAME yuvj_420_p_to_yuv_444_p_16_c #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 2 #define NUM_PIXELS 2 #define CHROMA_SUB_IN 2 #define CHROMA_SUB_OUT 1 #define CONVERT_YUV \ dst_y[0]=YJ_8_TO_Y_16(src_y[0]);\ dst_u[0]=UVJ_8_TO_UV_16(src_u[0]);\ dst_v[0]=UVJ_8_TO_UV_16(src_v[0]);\ dst_y[1]=YJ_8_TO_Y_16(src_y[1]);\ dst_u[1]=UVJ_8_TO_UV_16(src_u[0]);\ dst_v[1]=UVJ_8_TO_UV_16(src_v[0]); #include "../csp_planar_planar.h" /********************************* * 410 -> 444 *********************************/ #define FUNC_NAME yuv_410_p_to_yuv_444_p_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 4 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 4 #define NUM_PIXELS 4 #define CHROMA_SUB_IN 4 #define CHROMA_SUB_OUT 1 #define CONVERT_YUV \ dst_y[0]=src_y[0];\ dst_u[0]=src_u[0];\ dst_v[0]=src_v[0];\ dst_y[1]=src_y[1];\ dst_u[1]=src_u[0];\ dst_v[1]=src_v[0];\ dst_y[2]=src_y[2];\ dst_u[2]=src_u[0];\ dst_v[2]=src_v[0];\ dst_y[3]=src_y[3];\ dst_u[3]=src_u[0];\ dst_v[3]=src_v[0]; #include "../csp_planar_planar.h" #define FUNC_NAME yuv_410_p_to_yuv_444_p_16_c #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE_Y 4 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 4 #define NUM_PIXELS 4 #define CHROMA_SUB_IN 4 #define CHROMA_SUB_OUT 1 #define CONVERT_YUV \ dst_y[0]=Y_8_TO_16(src_y[0]); \ dst_u[0]=UV_8_TO_16(src_u[0]); \ dst_v[0]=UV_8_TO_16(src_v[0]); \ dst_y[1]=Y_8_TO_16(src_y[1]); \ dst_u[1]=UV_8_TO_16(src_u[0]); \ dst_v[1]=UV_8_TO_16(src_v[0]); \ dst_y[2]=Y_8_TO_16(src_y[2]); \ dst_u[2]=UV_8_TO_16(src_u[0]); \ dst_v[2]=UV_8_TO_16(src_v[0]); \ dst_y[3]=Y_8_TO_16(src_y[3]); \ dst_u[3]=UV_8_TO_16(src_u[0]); \ dst_v[3]=UV_8_TO_16(src_v[0]); #include "../csp_planar_planar.h" #define FUNC_NAME yuv_410_p_to_yuvj_444_p_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 4 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 4 #define NUM_PIXELS 4 #define CHROMA_SUB_IN 4 #define CHROMA_SUB_OUT 1 #define CONVERT_YUV \ dst_y[0]= Y_8_TO_YJ_8(src_y[0]);\ dst_u[0]=UV_8_TO_UVJ_8(src_u[0]);\ dst_v[0]=UV_8_TO_UVJ_8(src_v[0]);\ dst_y[1]= Y_8_TO_YJ_8(src_y[1]);\ dst_u[1]=UV_8_TO_UVJ_8(src_u[0]);\ dst_v[1]=UV_8_TO_UVJ_8(src_v[0]);\ dst_y[2]= Y_8_TO_YJ_8(src_y[2]);\ dst_u[2]=UV_8_TO_UVJ_8(src_u[0]);\ dst_v[2]=UV_8_TO_UVJ_8(src_v[0]);\ dst_y[3]= Y_8_TO_YJ_8(src_y[3]);\ dst_u[3]=UV_8_TO_UVJ_8(src_u[0]);\ dst_v[3]=UV_8_TO_UVJ_8(src_v[0]); #include "../csp_planar_planar.h" /********************************* * 420 -> 422 *********************************/ #define FUNC_NAME yuv_420_p_to_yuvj_422_p_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CHROMA_SUB_IN 2 #define CHROMA_SUB_OUT 1 #define CONVERT_YUV \ dst_y[0]=Y_8_TO_YJ_8(src_y[0]);\ dst_u[0]=UV_8_TO_UVJ_8(src_u[0]);\ dst_v[0]=UV_8_TO_UVJ_8(src_v[0]);\ dst_y[1]=Y_8_TO_YJ_8(src_y[1]); #include "../csp_planar_planar.h" #define FUNC_NAME yuvj_420_p_to_yuv_422_p_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CHROMA_SUB_IN 2 #define CHROMA_SUB_OUT 1 #define CONVERT_YUV \ dst_y[0]=YJ_8_TO_Y_8(src_y[0]);\ dst_u[0]=UVJ_8_TO_UV_8(src_u[0]);\ dst_v[0]=UVJ_8_TO_UV_8(src_v[0]);\ dst_y[1]=YJ_8_TO_Y_8(src_y[1]); #include "../csp_planar_planar.h" #define FUNC_NAME yuvj_420_p_to_yuv_422_p_16_c #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CHROMA_SUB_IN 2 #define CHROMA_SUB_OUT 1 #define CONVERT_YUV \ dst_y[0]=YJ_8_TO_Y_16(src_y[0]);\ dst_u[0]=UVJ_8_TO_UV_16(src_u[0]);\ dst_v[0]=UVJ_8_TO_UV_16(src_v[0]);\ dst_y[1]=YJ_8_TO_Y_16(src_y[1]); #include "../csp_planar_planar.h" /********************************* * 410 -> 422 *********************************/ #define FUNC_NAME yuv_410_p_to_yuvj_422_p_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 4 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 2 #define NUM_PIXELS 4 #define CHROMA_SUB_IN 4 #define CHROMA_SUB_OUT 1 #define CONVERT_YUV \ dst_y[0]= Y_8_TO_YJ_8(src_y[0]);\ dst_u[0]=UV_8_TO_UVJ_8(src_u[0]);\ dst_v[0]=UV_8_TO_UVJ_8(src_v[0]);\ dst_y[1]= Y_8_TO_YJ_8(src_y[1]);\ dst_y[2]= Y_8_TO_YJ_8(src_y[2]);\ dst_u[1]=UV_8_TO_UVJ_8(src_u[0]);\ dst_v[1]=UV_8_TO_UVJ_8(src_v[0]);\ dst_y[3]= Y_8_TO_YJ_8(src_y[3]); #include "../csp_planar_planar.h" #define FUNC_NAME yuv_410_p_to_yuv_422_p_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 4 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 2 #define NUM_PIXELS 4 #define CHROMA_SUB_IN 4 #define CHROMA_SUB_OUT 1 #define CONVERT_YUV \ dst_y[0]=src_y[0];\ dst_u[0]=src_u[0];\ dst_v[0]=src_v[0];\ dst_y[1]=src_y[1];\ dst_y[2]=src_y[2];\ dst_u[1]=src_u[0];\ dst_v[1]=src_v[0];\ dst_y[3]=src_y[3]; #include "../csp_planar_planar.h" #define FUNC_NAME yuv_410_p_to_yuv_422_p_16_c #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE_Y 4 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 2 #define NUM_PIXELS 4 #define CHROMA_SUB_IN 4 #define CHROMA_SUB_OUT 1 #define CONVERT_YUV \ dst_y[0]=Y_8_TO_16(src_y[0]); \ dst_u[0]=UV_8_TO_16(src_u[0]); \ dst_v[0]=UV_8_TO_16(src_v[0]); \ dst_y[1]=Y_8_TO_16(src_y[1]); \ dst_y[2]=Y_8_TO_16(src_y[2]); \ dst_u[1]=UV_8_TO_16(src_u[0]); \ dst_v[1]=UV_8_TO_16(src_v[0]); \ dst_y[3]=Y_8_TO_16(src_y[3]); #include "../csp_planar_planar.h" /********************************* * 420 -> 411 *********************************/ #define FUNC_NAME yuv_420_p_to_yuv_411_p_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 4 #define IN_ADVANCE_UV 2 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 4 #define CHROMA_SUB_IN 2 #define CHROMA_SUB_OUT 1 #define CONVERT_YUV \ dst_y[0]=src_y[0];\ dst_u[0]=src_u[0];\ dst_v[0]=src_v[0];\ dst_y[1]=src_y[1];\ dst_y[2]=src_y[2];\ dst_y[3]=src_y[3]; #include "../csp_planar_planar.h" #define FUNC_NAME yuvj_420_p_to_yuv_411_p_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 4 #define IN_ADVANCE_UV 2 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 4 #define CHROMA_SUB_IN 2 #define CHROMA_SUB_OUT 1 #define CONVERT_YUV \ dst_y[0]= YJ_8_TO_Y_8(src_y[0]);\ dst_u[0]=UVJ_8_TO_UV_8(src_u[0]);\ dst_v[0]=UVJ_8_TO_UV_8(src_v[0]);\ dst_y[1]= YJ_8_TO_Y_8(src_y[1]);\ dst_y[2]= YJ_8_TO_Y_8(src_y[2]);\ dst_y[3]= YJ_8_TO_Y_8(src_y[3]); #include "../csp_planar_planar.h" /********************************* * 422 -> 420 *********************************/ #define FUNC_NAME yuv_422_p_to_yuvj_420_p_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CHROMA_SUB_IN 1 #define CHROMA_SUB_OUT 2 #define CONVERT_YUV \ dst_y[0]=Y_8_TO_YJ_8(src_y[0]);\ dst_u[0]=UV_8_TO_UVJ_8(src_u[0]);\ dst_v[0]=UV_8_TO_UVJ_8(src_v[0]);\ dst_y[1]=Y_8_TO_YJ_8(src_y[1]); #define CONVERT_Y \ dst_y[0]=Y_8_TO_YJ_8(src_y[0]);\ dst_y[1]=Y_8_TO_YJ_8(src_y[1]); #include "../csp_planar_planar.h" #endif // !HQ #define FUNC_NAME yuv_422_p_16_to_yuvj_420_p_c #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CHROMA_SUB_IN 1 #define CHROMA_SUB_OUT 2 #define CONVERT_YUV \ Y_16_TO_YJ_8(src_y[0], dst_y[0]);\ UV_16_TO_UVJ_8(src_u[0], dst_u[0]);\ UV_16_TO_UVJ_8(src_v[0], dst_v[0]);\ Y_16_TO_YJ_8(src_y[1], dst_y[1]); #define CONVERT_Y \ Y_16_TO_YJ_8(src_y[0], dst_y[0]);\ Y_16_TO_YJ_8(src_y[1], dst_y[1]); #include "../csp_planar_planar.h" #ifndef HQ #define FUNC_NAME yuvj_422_p_to_yuv_420_p_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CHROMA_SUB_IN 1 #define CHROMA_SUB_OUT 2 #define CONVERT_YUV \ dst_y[0]=YJ_8_TO_Y_8(src_y[0]);\ dst_u[0]=UVJ_8_TO_UV_8(src_u[0]);\ dst_v[0]=UVJ_8_TO_UV_8(src_v[0]);\ dst_y[1]=YJ_8_TO_Y_8(src_y[1]); #define CONVERT_Y \ dst_y[0]=YJ_8_TO_Y_8(src_y[0]);\ dst_y[1]=YJ_8_TO_Y_8(src_y[1]); #include "../csp_planar_planar.h" #endif // !HQ #define FUNC_NAME yuv_422_p_16_to_yuv_420_p_c #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CHROMA_SUB_IN 1 #define CHROMA_SUB_OUT 2 #define CONVERT_YUV \ Y_16_TO_Y_8(src_y[0], dst_y[0]); \ UV_16_TO_UV_8(src_u[0], dst_u[0]); \ UV_16_TO_UV_8(src_v[0], dst_v[0]); \ Y_16_TO_Y_8(src_y[1], dst_y[1]); #define CONVERT_Y \ Y_16_TO_Y_8(src_y[0], dst_y[0]); \ Y_16_TO_Y_8(src_y[1], dst_y[1]); #include "../csp_planar_planar.h" /********************************* * 422 -> 410 *********************************/ #ifndef HQ #define FUNC_NAME yuvj_422_p_to_yuv_410_p_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 4 #define IN_ADVANCE_UV 2 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 4 #define CHROMA_SUB_IN 1 #define CHROMA_SUB_OUT 4 #define CONVERT_YUV \ dst_u[0]=UVJ_8_TO_UV_8(src_u[0]);\ dst_v[0]=UVJ_8_TO_UV_8(src_v[0]);\ dst_y[0]=YJ_8_TO_Y_8(src_y[0]);\ dst_y[1]=YJ_8_TO_Y_8(src_y[1]);\ dst_y[2]=YJ_8_TO_Y_8(src_y[2]);\ dst_y[3]=YJ_8_TO_Y_8(src_y[3]); #define CONVERT_Y \ dst_y[0]=YJ_8_TO_Y_8(src_y[0]);\ dst_y[1]=YJ_8_TO_Y_8(src_y[1]);\ dst_y[2]=YJ_8_TO_Y_8(src_y[2]);\ dst_y[3]=YJ_8_TO_Y_8(src_y[3]); #include "../csp_planar_planar.h" #define FUNC_NAME yuv_422_p_to_yuv_410_p_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 4 #define IN_ADVANCE_UV 2 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 4 #define CHROMA_SUB_IN 1 #define CHROMA_SUB_OUT 4 #define CONVERT_YUV \ dst_u[0]=src_u[0];\ dst_v[0]=src_v[0];\ dst_y[0]=src_y[0];\ dst_y[1]=src_y[1];\ dst_y[2]=src_y[2];\ dst_y[3]=src_y[3]; #define CONVERT_Y \ dst_y[0]=src_y[0];\ dst_y[1]=src_y[1];\ dst_y[2]=src_y[2];\ dst_y[3]=src_y[3]; #include "../csp_planar_planar.h" #endif // !HQ #define FUNC_NAME yuv_422_p_16_to_yuv_410_p_c #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 4 #define IN_ADVANCE_UV 2 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 4 #define CHROMA_SUB_IN 1 #define CHROMA_SUB_OUT 4 #define CONVERT_YUV \ UV_16_TO_UV_8(src_u[0], dst_u[0]); \ UV_16_TO_UV_8(src_v[0], dst_v[0]); \ Y_16_TO_Y_8(src_y[0], dst_y[0]); \ Y_16_TO_Y_8(src_y[1], dst_y[1]); \ Y_16_TO_Y_8(src_y[2], dst_y[2]); \ Y_16_TO_Y_8(src_y[3], dst_y[3]); #define CONVERT_Y \ Y_16_TO_Y_8(src_y[0], dst_y[0]); \ Y_16_TO_Y_8(src_y[1], dst_y[1]); \ Y_16_TO_Y_8(src_y[2], dst_y[2]); \ Y_16_TO_Y_8(src_y[3], dst_y[3]); #include "../csp_planar_planar.h" #ifndef HQ /********************************* * 411 -> 420 *********************************/ #define FUNC_NAME yuv_411_p_to_yuvj_420_p_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 4 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 2 #define NUM_PIXELS 4 #define CHROMA_SUB_IN 1 #define CHROMA_SUB_OUT 2 #define CONVERT_YUV \ dst_y[0]= Y_8_TO_YJ_8(src_y[0]);\ dst_y[1]= Y_8_TO_YJ_8(src_y[1]);\ dst_y[2]= Y_8_TO_YJ_8(src_y[2]);\ dst_y[3]= Y_8_TO_YJ_8(src_y[3]);\ dst_u[0]=UV_8_TO_UVJ_8(src_u[0]);\ dst_v[0]=UV_8_TO_UVJ_8(src_v[0]);\ dst_u[1]=UV_8_TO_UVJ_8(src_u[0]);\ dst_v[1]=UV_8_TO_UVJ_8(src_v[0]); #define CONVERT_Y \ dst_y[0]=Y_8_TO_YJ_8(src_y[0]);\ dst_y[1]=Y_8_TO_YJ_8(src_y[1]);\ dst_y[2]=Y_8_TO_YJ_8(src_y[2]);\ dst_y[3]=Y_8_TO_YJ_8(src_y[3]); #include "../csp_planar_planar.h" #define FUNC_NAME yuv_411_p_to_yuv_420_p_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 4 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 2 #define NUM_PIXELS 4 #define CHROMA_SUB_IN 1 #define CHROMA_SUB_OUT 2 #define CONVERT_YUV \ dst_y[0]=src_y[0];\ dst_y[1]=src_y[1];\ dst_y[2]=src_y[2];\ dst_y[3]=src_y[3];\ dst_u[0]=src_u[0];\ dst_v[0]=src_v[0];\ dst_u[1]=src_u[0];\ dst_v[1]=src_v[0]; #define CONVERT_Y \ dst_y[0]=src_y[0];\ dst_y[1]=src_y[1];\ dst_y[2]=src_y[2];\ dst_y[3]=src_y[3]; #include "../csp_planar_planar.h" /********************************* * 422 -> 444 *********************************/ #define FUNC_NAME yuv_422_p_to_yuv_444_p_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 2 #define NUM_PIXELS 2 #define CHROMA_SUB_IN 1 #define CHROMA_SUB_OUT 1 #define CONVERT_YUV \ dst_y[0]=src_y[0];\ dst_u[0]=src_u[0];\ dst_v[0]=src_v[0];\ dst_y[1]=src_y[1];\ dst_u[1]=src_u[0];\ dst_v[1]=src_v[0]; #include "../csp_planar_planar.h" #endif // !HQ #define FUNC_NAME yuv_422_p_16_to_yuv_444_p_c #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 2 #define NUM_PIXELS 2 #define CHROMA_SUB_IN 1 #define CHROMA_SUB_OUT 1 #define CONVERT_YUV \ Y_16_TO_Y_8(src_y[0], dst_y[0]); \ UV_16_TO_UV_8(src_u[0], dst_u[0]); \ UV_16_TO_UV_8(src_v[0], dst_v[0]); \ Y_16_TO_Y_8(src_y[1], dst_y[1]); \ UV_16_TO_UV_8(src_u[0], dst_u[1]); \ UV_16_TO_UV_8(src_v[0], dst_v[1]); #include "../csp_planar_planar.h" #ifndef HQ #define FUNC_NAME yuv_422_p_to_yuv_444_p_16_c #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 2 #define NUM_PIXELS 2 #define CHROMA_SUB_IN 1 #define CHROMA_SUB_OUT 1 #define CONVERT_YUV \ dst_y[0]=Y_8_TO_16(src_y[0]); \ dst_u[0]=UV_8_TO_16(src_u[0]); \ dst_v[0]=UV_8_TO_16(src_v[0]); \ dst_y[1]=Y_8_TO_16(src_y[1]); \ dst_u[1]=UV_8_TO_16(src_u[0]); \ dst_v[1]=UV_8_TO_16(src_v[0]); #include "../csp_planar_planar.h" #define FUNC_NAME yuv_422_p_16_to_yuv_444_p_16_c #define IN_TYPE uint16_t #define OUT_TYPE uint16_t #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 2 #define NUM_PIXELS 2 #define CHROMA_SUB_IN 1 #define CHROMA_SUB_OUT 1 #define CONVERT_YUV \ dst_y[0]=src_y[0];\ dst_u[0]=src_u[0];\ dst_v[0]=src_v[0];\ dst_y[1]=src_y[1];\ dst_u[1]=src_u[0];\ dst_v[1]=src_v[0]; #include "../csp_planar_planar.h" #define FUNC_NAME yuv_422_p_to_yuvj_444_p_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 2 #define NUM_PIXELS 2 #define CHROMA_SUB_IN 1 #define CHROMA_SUB_OUT 1 #define CONVERT_YUV \ dst_y[0]=Y_8_TO_YJ_8(src_y[0]);\ dst_u[0]=UV_8_TO_UVJ_8(src_u[0]);\ dst_v[0]=UV_8_TO_UVJ_8(src_v[0]);\ dst_y[1]=Y_8_TO_YJ_8(src_y[1]);\ dst_u[1]=UV_8_TO_UVJ_8(src_u[0]);\ dst_v[1]=UV_8_TO_UVJ_8(src_v[0]); #include "../csp_planar_planar.h" #endif // !HQ #define FUNC_NAME yuv_422_p_16_to_yuvj_444_p_c #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 2 #define NUM_PIXELS 2 #define CHROMA_SUB_IN 1 #define CHROMA_SUB_OUT 1 #define CONVERT_YUV \ Y_16_TO_YJ_8(src_y[0], dst_y[0]);\ UV_16_TO_UVJ_8(src_u[0], dst_u[0]);\ UV_16_TO_UVJ_8(src_v[0], dst_v[0]);\ Y_16_TO_YJ_8(src_y[1], dst_y[1]);\ UV_16_TO_UVJ_8(src_u[0], dst_u[1]);\ UV_16_TO_UVJ_8(src_v[0], dst_v[1]); #include "../csp_planar_planar.h" #ifndef HQ #define FUNC_NAME yuvj_422_p_to_yuv_444_p_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 2 #define NUM_PIXELS 2 #define CHROMA_SUB_IN 1 #define CHROMA_SUB_OUT 1 #define CONVERT_YUV \ dst_y[0]=YJ_8_TO_Y_8(src_y[0]);\ dst_u[0]=UVJ_8_TO_UV_8(src_u[0]);\ dst_v[0]=UVJ_8_TO_UV_8(src_v[0]);\ dst_y[1]=YJ_8_TO_Y_8(src_y[1]);\ dst_u[1]=UVJ_8_TO_UV_8(src_u[0]);\ dst_v[1]=UVJ_8_TO_UV_8(src_v[0]); #include "../csp_planar_planar.h" #define FUNC_NAME yuvj_422_p_to_yuv_444_p_16_c #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 2 #define NUM_PIXELS 2 #define CHROMA_SUB_IN 1 #define CHROMA_SUB_OUT 1 #define CONVERT_YUV \ dst_y[0]=YJ_8_TO_Y_16(src_y[0]);\ dst_u[0]=UVJ_8_TO_UV_16(src_u[0]);\ dst_v[0]=UVJ_8_TO_UV_16(src_v[0]);\ dst_y[1]=YJ_8_TO_Y_16(src_y[1]);\ dst_u[1]=UVJ_8_TO_UV_16(src_u[0]);\ dst_v[1]=UVJ_8_TO_UV_16(src_v[0]); #include "../csp_planar_planar.h" /********************************* * 444 -> 420 *********************************/ #define FUNC_NAME yuv_444_p_to_yuv_420_p_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 2 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CHROMA_SUB_IN 1 #define CHROMA_SUB_OUT 2 #define CONVERT_YUV \ dst_y[0]=src_y[0];\ dst_u[0]=src_u[0];\ dst_v[0]=src_v[0];\ dst_y[1]=src_y[1]; #define CONVERT_Y \ dst_y[0]=src_y[0];\ dst_y[1]=src_y[1]; #include "../csp_planar_planar.h" #endif // !HQ #define FUNC_NAME yuv_444_p_16_to_yuv_420_p_c #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 2 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CHROMA_SUB_IN 1 #define CHROMA_SUB_OUT 2 #define CONVERT_YUV \ Y_16_TO_Y_8(src_y[0], dst_y[0]); \ UV_16_TO_UV_8(src_u[0], dst_u[0]); \ UV_16_TO_UV_8(src_v[0], dst_v[0]); \ Y_16_TO_Y_8(src_y[1], dst_y[1]); #define CONVERT_Y \ Y_16_TO_Y_8(src_y[0], dst_y[0]); \ Y_16_TO_Y_8(src_y[1], dst_y[1]); #include "../csp_planar_planar.h" #ifndef HQ #define FUNC_NAME yuv_444_p_to_yuvj_420_p_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 2 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CHROMA_SUB_IN 1 #define CHROMA_SUB_OUT 2 #define CONVERT_YUV \ dst_y[0]=Y_8_TO_YJ_8(src_y[0]);\ dst_u[0]=UV_8_TO_UVJ_8(src_u[0]);\ dst_v[0]=UV_8_TO_UVJ_8(src_v[0]);\ dst_y[1]=Y_8_TO_YJ_8(src_y[1]); #define CONVERT_Y \ dst_y[0]=Y_8_TO_YJ_8(src_y[0]);\ dst_y[1]=Y_8_TO_YJ_8(src_y[1]); #include "../csp_planar_planar.h" #endif // !HQ #define FUNC_NAME yuv_444_p_16_to_yuvj_420_p_c #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 2 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CHROMA_SUB_IN 1 #define CHROMA_SUB_OUT 2 #define CONVERT_YUV \ Y_16_TO_YJ_8(src_y[0], dst_y[0]);\ UV_16_TO_UVJ_8(src_u[0], dst_u[0]);\ UV_16_TO_UVJ_8(src_v[0], dst_v[0]);\ Y_16_TO_YJ_8(src_y[1], dst_y[1]); #define CONVERT_Y \ Y_16_TO_YJ_8(src_y[0], dst_y[0]);\ Y_16_TO_YJ_8(src_y[1], dst_y[1]); #include "../csp_planar_planar.h" #ifndef HQ #define FUNC_NAME yuvj_444_p_to_yuv_420_p_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 2 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CHROMA_SUB_IN 1 #define CHROMA_SUB_OUT 2 #define CONVERT_YUV \ dst_y[0]=YJ_8_TO_Y_8(src_y[0]);\ dst_u[0]=UVJ_8_TO_UV_8(src_u[0]);\ dst_v[0]=UVJ_8_TO_UV_8(src_v[0]);\ dst_y[1]=YJ_8_TO_Y_8(src_y[1]); #define CONVERT_Y \ dst_y[0]=YJ_8_TO_Y_8(src_y[0]);\ dst_y[1]=YJ_8_TO_Y_8(src_y[1]); #include "../csp_planar_planar.h" /********************************* * 444 -> 410 *********************************/ #define FUNC_NAME yuvj_444_p_to_yuv_410_p_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 4 #define IN_ADVANCE_UV 4 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 4 #define CHROMA_SUB_IN 1 #define CHROMA_SUB_OUT 4 #define CONVERT_YUV \ dst_u[0]=UVJ_8_TO_UV_8(src_u[0]);\ dst_v[0]=UVJ_8_TO_UV_8(src_v[0]);\ dst_y[0]=YJ_8_TO_Y_8(src_y[0]);\ dst_y[1]=YJ_8_TO_Y_8(src_y[1]);\ dst_y[2]=YJ_8_TO_Y_8(src_y[2]);\ dst_y[3]=YJ_8_TO_Y_8(src_y[3]); #define CONVERT_Y \ dst_y[0]=YJ_8_TO_Y_8(src_y[0]);\ dst_y[1]=YJ_8_TO_Y_8(src_y[1]);\ dst_y[2]=YJ_8_TO_Y_8(src_y[2]);\ dst_y[3]=YJ_8_TO_Y_8(src_y[3]); #include "../csp_planar_planar.h" #define FUNC_NAME yuv_444_p_to_yuv_410_p_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 4 #define IN_ADVANCE_UV 4 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 4 #define CHROMA_SUB_IN 1 #define CHROMA_SUB_OUT 4 #define CONVERT_YUV \ dst_u[0]=src_u[0];\ dst_v[0]=src_v[0];\ dst_y[0]=src_y[0];\ dst_y[1]=src_y[1];\ dst_y[2]=src_y[2];\ dst_y[3]=src_y[3]; #define CONVERT_Y \ dst_y[0]=src_y[0];\ dst_y[1]=src_y[1];\ dst_y[2]=src_y[2];\ dst_y[3]=src_y[3]; #include "../csp_planar_planar.h" #endif // !HQ #define FUNC_NAME yuv_444_p_16_to_yuv_410_p_c #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 4 #define IN_ADVANCE_UV 4 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 4 #define CHROMA_SUB_IN 1 #define CHROMA_SUB_OUT 4 #define CONVERT_YUV \ UV_16_TO_UV_8(src_u[0], dst_u[0]); \ UV_16_TO_UV_8(src_v[0], dst_v[0]); \ Y_16_TO_Y_8(src_y[0], dst_y[0]); \ Y_16_TO_Y_8(src_y[1], dst_y[1]); \ Y_16_TO_Y_8(src_y[2], dst_y[2]); \ Y_16_TO_Y_8(src_y[3], dst_y[3]); #define CONVERT_Y \ Y_16_TO_Y_8(src_y[0], dst_y[0]); \ Y_16_TO_Y_8(src_y[1], dst_y[1]); \ Y_16_TO_Y_8(src_y[2], dst_y[2]); \ Y_16_TO_Y_8(src_y[3], dst_y[3]); #include "../csp_planar_planar.h" /********************************* * 444 -> 422 *********************************/ #ifndef HQ #define FUNC_NAME yuv_444_p_to_yuv_422_p_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 2 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CHROMA_SUB_IN 1 #define CHROMA_SUB_OUT 1 #define CONVERT_YUV \ dst_y[0]=src_y[0];\ dst_u[0]=src_u[0];\ dst_v[0]=src_v[0];\ dst_y[1]=src_y[1]; #include "../csp_planar_planar.h" #define FUNC_NAME yuv_444_p_16_to_yuv_422_p_16_c #define IN_TYPE uint16_t #define OUT_TYPE uint16_t #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 2 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CHROMA_SUB_IN 1 #define CHROMA_SUB_OUT 1 #define CONVERT_YUV \ dst_y[0]=src_y[0];\ dst_u[0]=src_u[0];\ dst_v[0]=src_v[0];\ dst_y[1]=src_y[1]; #include "../csp_planar_planar.h" #define FUNC_NAME yuv_444_p_to_yuv_422_p_16_c #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 2 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CHROMA_SUB_IN 1 #define CHROMA_SUB_OUT 1 #define CONVERT_YUV \ dst_y[0]=Y_8_TO_16(src_y[0]); \ dst_u[0]=UV_8_TO_16(src_u[0]); \ dst_v[0]=UV_8_TO_16(src_v[0]); \ dst_y[1]=Y_8_TO_16(src_y[1]); #include "../csp_planar_planar.h" #endif // !HQ #define FUNC_NAME yuv_444_p_16_to_yuv_422_p_c #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 2 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CHROMA_SUB_IN 1 #define CHROMA_SUB_OUT 1 #define CONVERT_YUV \ Y_16_TO_Y_8(src_y[0], dst_y[0]); \ UV_16_TO_UV_8(src_u[0], dst_u[0]); \ UV_16_TO_UV_8(src_v[0], dst_v[0]); \ Y_16_TO_Y_8(src_y[1], dst_y[1]); #include "../csp_planar_planar.h" #ifndef HQ #define FUNC_NAME yuv_444_p_to_yuvj_422_p_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 2 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CHROMA_SUB_IN 1 #define CHROMA_SUB_OUT 1 #define CONVERT_YUV \ dst_y[0]=Y_8_TO_YJ_8(src_y[0]);\ dst_u[0]=UV_8_TO_UVJ_8(src_u[0]);\ dst_v[0]=UV_8_TO_UVJ_8(src_v[0]);\ dst_y[1]=Y_8_TO_YJ_8(src_y[1]); #include "../csp_planar_planar.h" #endif // !HQ #define FUNC_NAME yuv_444_p_16_to_yuvj_422_p_c #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 2 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CHROMA_SUB_IN 1 #define CHROMA_SUB_OUT 1 #define CONVERT_YUV \ Y_16_TO_YJ_8(src_y[0], dst_y[0]);\ UV_16_TO_UVJ_8(src_u[0], dst_u[0]);\ UV_16_TO_UVJ_8(src_v[0], dst_v[0]);\ Y_16_TO_YJ_8(src_y[1], dst_y[1]); #include "../csp_planar_planar.h" #ifndef HQ #define FUNC_NAME yuvj_444_p_to_yuv_422_p_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 2 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CHROMA_SUB_IN 1 #define CHROMA_SUB_OUT 1 #define CONVERT_YUV \ dst_y[0]=YJ_8_TO_Y_8(src_y[0]);\ dst_u[0]=UVJ_8_TO_UV_8(src_u[0]);\ dst_v[0]=UVJ_8_TO_UV_8(src_v[0]);\ dst_y[1]=YJ_8_TO_Y_8(src_y[1]); #include "../csp_planar_planar.h" #define FUNC_NAME yuvj_444_p_to_yuv_422_p_16_c #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 2 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CHROMA_SUB_IN 1 #define CHROMA_SUB_OUT 1 #define CONVERT_YUV \ dst_y[0]=YJ_8_TO_Y_16(src_y[0]);\ dst_u[0]=UVJ_8_TO_UV_16(src_u[0]);\ dst_v[0]=UVJ_8_TO_UV_16(src_v[0]);\ dst_y[1]=YJ_8_TO_Y_16(src_y[1]); #include "../csp_planar_planar.h" /********************************* * 444 -> 411 *********************************/ #define FUNC_NAME yuvj_444_p_to_yuv_411_p_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 4 #define IN_ADVANCE_UV 4 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 4 #define CHROMA_SUB_IN 1 #define CHROMA_SUB_OUT 1 #define CONVERT_YUV \ dst_u[0]=UVJ_8_TO_UV_8(src_u[0]);\ dst_v[0]=UVJ_8_TO_UV_8(src_v[0]);\ dst_y[0]=YJ_8_TO_Y_8(src_y[0]);\ dst_y[1]=YJ_8_TO_Y_8(src_y[1]);\ dst_y[2]=YJ_8_TO_Y_8(src_y[2]);\ dst_y[3]=YJ_8_TO_Y_8(src_y[3]); #include "../csp_planar_planar.h" #define FUNC_NAME yuv_444_p_to_yuv_411_p_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 4 #define IN_ADVANCE_UV 4 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 4 #define CHROMA_SUB_IN 1 #define CHROMA_SUB_OUT 1 #define CONVERT_YUV \ dst_u[0]=src_u[0];\ dst_v[0]=src_v[0];\ dst_y[0]=src_y[0];\ dst_y[1]=src_y[1];\ dst_y[2]=src_y[2];\ dst_y[3]=src_y[3]; #include "../csp_planar_planar.h" #endif // !HQ #define FUNC_NAME yuv_444_p_16_to_yuv_411_p_c #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 4 #define IN_ADVANCE_UV 4 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 4 #define CHROMA_SUB_IN 1 #define CHROMA_SUB_OUT 1 #define CONVERT_YUV \ UV_16_TO_UV_8(src_u[0], dst_u[0]); \ UV_16_TO_UV_8(src_v[0], dst_v[0]); \ Y_16_TO_Y_8(src_y[0], dst_y[0]); \ Y_16_TO_Y_8(src_y[1], dst_y[1]); \ Y_16_TO_Y_8(src_y[2], dst_y[2]); \ Y_16_TO_Y_8(src_y[3], dst_y[3]); #include "../csp_planar_planar.h" #ifndef HQ /********************************* * 420 -> 420 *********************************/ #define FUNC_NAME yuv_420_p_to_yuvj_420_p_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CHROMA_SUB_IN 2 #define CHROMA_SUB_OUT 2 #define CONVERT_YUV \ dst_y[0]=Y_8_TO_YJ_8(src_y[0]);\ dst_u[0]=UV_8_TO_UVJ_8(src_u[0]);\ dst_v[0]=UV_8_TO_UVJ_8(src_v[0]);\ dst_y[1]=Y_8_TO_YJ_8(src_y[1]); #define CONVERT_Y \ dst_y[0]=Y_8_TO_YJ_8(src_y[0]);\ dst_y[1]=Y_8_TO_YJ_8(src_y[1]); #include "../csp_planar_planar.h" #define FUNC_NAME yuvj_420_p_to_yuv_420_p_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CHROMA_SUB_IN 2 #define CHROMA_SUB_OUT 2 #define CONVERT_YUV \ dst_y[0]=YJ_8_TO_Y_8(src_y[0]);\ dst_u[0]=UVJ_8_TO_UV_8(src_u[0]);\ dst_v[0]=UVJ_8_TO_UV_8(src_v[0]);\ dst_y[1]=YJ_8_TO_Y_8(src_y[1]); #define CONVERT_Y \ dst_y[0]=YJ_8_TO_Y_8(src_y[0]);\ dst_y[1]=YJ_8_TO_Y_8(src_y[1]); #include "../csp_planar_planar.h" /********************************* * 420 -> 410 *********************************/ #define FUNC_NAME yuvj_420_p_to_yuv_410_p_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 4 #define IN_ADVANCE_UV 2 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 4 #define CHROMA_SUB_IN 2 #define CHROMA_SUB_OUT 4 #define CONVERT_YUV \ dst_u[0]=UVJ_8_TO_UV_8(src_u[0]);\ dst_v[0]=UVJ_8_TO_UV_8(src_v[0]);\ dst_y[0]=YJ_8_TO_Y_8(src_y[0]);\ dst_y[1]=YJ_8_TO_Y_8(src_y[1]);\ dst_y[2]=YJ_8_TO_Y_8(src_y[2]);\ dst_y[3]=YJ_8_TO_Y_8(src_y[3]); #define CONVERT_Y \ dst_y[0]=YJ_8_TO_Y_8(src_y[0]);\ dst_y[1]=YJ_8_TO_Y_8(src_y[1]);\ dst_y[2]=YJ_8_TO_Y_8(src_y[2]);\ dst_y[3]=YJ_8_TO_Y_8(src_y[3]); #include "../csp_planar_planar.h" #define FUNC_NAME yuv_420_p_to_yuv_410_p_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 4 #define IN_ADVANCE_UV 2 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 4 #define CHROMA_SUB_IN 2 #define CHROMA_SUB_OUT 4 #define CONVERT_YUV \ dst_u[0]=src_u[0];\ dst_v[0]=src_v[0];\ dst_y[0]=src_y[0];\ dst_y[1]=src_y[1];\ dst_y[2]=src_y[2];\ dst_y[3]=src_y[3]; #define CONVERT_Y \ dst_y[0]=src_y[0];\ dst_y[1]=src_y[1];\ dst_y[2]=src_y[2];\ dst_y[3]=src_y[3]; #include "../csp_planar_planar.h" /********************************* * 420 -> 422 *********************************/ #define FUNC_NAME yuv_420_p_to_yuv_422_p_16_c #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CHROMA_SUB_IN 2 #define CHROMA_SUB_OUT 1 #define CONVERT_YUV \ dst_u[0]=UV_8_TO_16(src_u[0]); \ dst_v[0]=UV_8_TO_16(src_v[0]); \ dst_y[0]=Y_8_TO_16(src_y[0]); \ dst_y[1]=Y_8_TO_16(src_y[1]); \ dst_y[2]=Y_8_TO_16(src_y[2]); \ dst_y[3]=Y_8_TO_16(src_y[3]); #define CONVERT_Y \ dst_y[0]=src_y[0];\ dst_y[1]=src_y[1];\ dst_y[2]=src_y[2];\ dst_y[3]=src_y[3]; #include "../csp_planar_planar.h" /********************************* * 410 -> 420 *********************************/ #define FUNC_NAME yuv_410_p_to_yuvj_420_p_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 4 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 2 #define NUM_PIXELS 4 #define CHROMA_SUB_IN 4 #define CHROMA_SUB_OUT 2 #define CONVERT_YUV \ dst_y[0]= Y_8_TO_YJ_8(src_y[0]);\ dst_u[0]=UV_8_TO_UVJ_8(src_u[0]);\ dst_v[0]=UV_8_TO_UVJ_8(src_v[0]);\ dst_y[1]= Y_8_TO_YJ_8(src_y[1]);\ dst_y[2]= Y_8_TO_YJ_8(src_y[2]);\ dst_u[1]=UV_8_TO_UVJ_8(src_u[0]);\ dst_v[1]=UV_8_TO_UVJ_8(src_v[0]);\ dst_y[3]= Y_8_TO_YJ_8(src_y[3]); #define CONVERT_Y \ dst_y[0]=Y_8_TO_YJ_8(src_y[0]);\ dst_y[1]=Y_8_TO_YJ_8(src_y[1]);\ dst_y[2]=Y_8_TO_YJ_8(src_y[2]);\ dst_y[3]=Y_8_TO_YJ_8(src_y[3]); #include "../csp_planar_planar.h" #define FUNC_NAME yuv_410_p_to_yuv_420_p_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 4 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 2 #define NUM_PIXELS 4 #define CHROMA_SUB_IN 4 #define CHROMA_SUB_OUT 2 #define CONVERT_YUV \ dst_y[0]=src_y[0];\ dst_u[0]=src_u[0];\ dst_v[0]=src_v[0];\ dst_y[1]=src_y[1];\ dst_y[2]=src_y[2];\ dst_u[1]=src_u[0];\ dst_v[1]=src_v[0];\ dst_y[3]=src_y[3]; #define CONVERT_Y \ dst_y[0]=src_y[0];\ dst_y[1]=src_y[1];\ dst_y[2]=src_y[2];\ dst_y[3]=src_y[3]; #include "../csp_planar_planar.h" /********************************* * 422 -> 422 *********************************/ #define FUNC_NAME yuv_422_p_to_yuvj_422_p_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CHROMA_SUB_IN 1 #define CHROMA_SUB_OUT 1 #define CONVERT_YUV \ dst_y[0]=Y_8_TO_YJ_8(src_y[0]);\ dst_u[0]=UV_8_TO_UVJ_8(src_u[0]);\ dst_v[0]=UV_8_TO_UVJ_8(src_v[0]);\ dst_y[1]=Y_8_TO_YJ_8(src_y[1]); #include "../csp_planar_planar.h" #endif // !HQ #define FUNC_NAME yuv_422_p_16_to_yuvj_422_p_c #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CHROMA_SUB_IN 1 #define CHROMA_SUB_OUT 1 #define CONVERT_YUV \ Y_16_TO_YJ_8(src_y[0], dst_y[0]);\ UV_16_TO_UVJ_8(src_u[0], dst_u[0]);\ UV_16_TO_UVJ_8(src_v[0], dst_v[0]);\ Y_16_TO_YJ_8(src_y[1], dst_y[1]); #include "../csp_planar_planar.h" #define FUNC_NAME yuv_422_p_16_to_yuv_422_p_c #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CHROMA_SUB_IN 1 #define CHROMA_SUB_OUT 1 #define CONVERT_YUV \ Y_16_TO_Y_8(src_y[0], dst_y[0]); \ UV_16_TO_UV_8(src_u[0], dst_u[0]); \ UV_16_TO_UV_8(src_v[0], dst_v[0]); \ Y_16_TO_Y_8(src_y[1], dst_y[1]); #include "../csp_planar_planar.h" #ifndef HQ #define FUNC_NAME yuv_422_p_to_yuv_422_p_16_c #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CHROMA_SUB_IN 1 #define CHROMA_SUB_OUT 1 #define CONVERT_YUV \ dst_y[0]=Y_8_TO_16(src_y[0]); \ dst_u[0]=UV_8_TO_16(src_u[0]); \ dst_v[0]=UV_8_TO_16(src_v[0]); \ dst_y[1]=Y_8_TO_16(src_y[1]); #include "../csp_planar_planar.h" #define FUNC_NAME yuvj_422_p_to_yuv_422_p_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CHROMA_SUB_IN 1 #define CHROMA_SUB_OUT 1 #define CONVERT_YUV \ dst_y[0]=YJ_8_TO_Y_8(src_y[0]);\ dst_u[0]=UVJ_8_TO_UV_8(src_u[0]);\ dst_v[0]=UVJ_8_TO_UV_8(src_v[0]);\ dst_y[1]=YJ_8_TO_Y_8(src_y[1]); #include "../csp_planar_planar.h" #define FUNC_NAME yuvj_422_p_to_yuv_422_p_16_c #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CHROMA_SUB_IN 1 #define CHROMA_SUB_OUT 1 #define CONVERT_YUV \ dst_y[0]=YJ_8_TO_Y_16(src_y[0]);\ dst_u[0]=UVJ_8_TO_UV_16(src_u[0]);\ dst_v[0]=UVJ_8_TO_UV_16(src_v[0]);\ dst_y[1]=YJ_8_TO_Y_16(src_y[1]); #include "../csp_planar_planar.h" /********************************* * 422 -> 411 *********************************/ #define FUNC_NAME yuvj_422_p_to_yuv_411_p_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 4 #define IN_ADVANCE_UV 2 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 4 #define CHROMA_SUB_IN 1 #define CHROMA_SUB_OUT 1 #define CONVERT_YUV \ dst_u[0]=UVJ_8_TO_UV_8(src_u[0]);\ dst_v[0]=UVJ_8_TO_UV_8(src_v[0]);\ dst_y[0]=YJ_8_TO_Y_8(src_y[0]);\ dst_y[1]=YJ_8_TO_Y_8(src_y[1]);\ dst_y[2]=YJ_8_TO_Y_8(src_y[2]);\ dst_y[3]=YJ_8_TO_Y_8(src_y[3]); #include "../csp_planar_planar.h" #define FUNC_NAME yuv_422_p_to_yuv_411_p_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 4 #define IN_ADVANCE_UV 2 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 4 #define CHROMA_SUB_IN 1 #define CHROMA_SUB_OUT 1 #define CONVERT_YUV \ dst_u[0]=src_u[0];\ dst_v[0]=src_v[0];\ dst_y[0]=src_y[0];\ dst_y[1]=src_y[1];\ dst_y[2]=src_y[2];\ dst_y[3]=src_y[3]; #include "../csp_planar_planar.h" #endif // !HQ #define FUNC_NAME yuv_422_p_16_to_yuv_411_p_c #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 4 #define IN_ADVANCE_UV 2 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 4 #define CHROMA_SUB_IN 1 #define CHROMA_SUB_OUT 1 #define CONVERT_YUV \ UV_16_TO_UV_8(src_u[0], dst_u[0]); \ UV_16_TO_UV_8(src_v[0], dst_v[0]); \ Y_16_TO_Y_8(src_y[0], dst_y[0]); \ Y_16_TO_Y_8(src_y[1], dst_y[1]); \ Y_16_TO_Y_8(src_y[2], dst_y[2]); \ Y_16_TO_Y_8(src_y[3], dst_y[3]); #include "../csp_planar_planar.h" /********************************* * 411 -> 422 *********************************/ #ifndef HQ #define FUNC_NAME yuv_411_p_to_yuvj_422_p_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 4 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 2 #define NUM_PIXELS 4 #define CHROMA_SUB_IN 1 #define CHROMA_SUB_OUT 1 #define CONVERT_YUV \ dst_u[0]=UV_8_TO_UVJ_8(src_u[0]);\ dst_v[0]=UV_8_TO_UVJ_8(src_v[0]);\ dst_u[1]=UV_8_TO_UVJ_8(src_u[0]);\ dst_v[1]=UV_8_TO_UVJ_8(src_v[0]);\ dst_y[0]= Y_8_TO_YJ_8(src_y[0]);\ dst_y[1]= Y_8_TO_YJ_8(src_y[1]);\ dst_y[2]= Y_8_TO_YJ_8(src_y[2]);\ dst_y[3]= Y_8_TO_YJ_8(src_y[3]); #include "../csp_planar_planar.h" #define FUNC_NAME yuv_411_p_to_yuv_422_p_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 4 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 2 #define NUM_PIXELS 4 #define CHROMA_SUB_IN 1 #define CHROMA_SUB_OUT 1 #define CONVERT_YUV \ dst_u[0]=src_u[0];\ dst_v[0]=src_v[0];\ dst_u[1]=src_u[0];\ dst_v[1]=src_v[0];\ dst_y[0]=src_y[0];\ dst_y[1]=src_y[1];\ dst_y[2]=src_y[2];\ dst_y[3]=src_y[3]; #include "../csp_planar_planar.h" #define FUNC_NAME yuv_411_p_to_yuv_422_p_16_c #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE_Y 4 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 2 #define NUM_PIXELS 4 #define CHROMA_SUB_IN 1 #define CHROMA_SUB_OUT 1 #define CONVERT_YUV \ dst_u[0]=UV_8_TO_16(src_u[0]); \ dst_v[0]=UV_8_TO_16(src_v[0]); \ dst_u[1]=UV_8_TO_16(src_u[0]); \ dst_v[1]=UV_8_TO_16(src_v[0]); \ dst_y[0]=Y_8_TO_16(src_y[0]); \ dst_y[1]=Y_8_TO_16(src_y[1]); \ dst_y[2]=Y_8_TO_16(src_y[2]); \ dst_y[3]=Y_8_TO_16(src_y[3]); #include "../csp_planar_planar.h" /********************************* * 411 -> 444 *********************************/ #define FUNC_NAME yuv_411_p_to_yuvj_444_p_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 4 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 4 #define NUM_PIXELS 4 #define CHROMA_SUB_IN 1 #define CHROMA_SUB_OUT 1 #define CONVERT_YUV \ dst_u[0]=UV_8_TO_UVJ_8(src_u[0]);\ dst_v[0]=UV_8_TO_UVJ_8(src_v[0]);\ dst_u[1]=UV_8_TO_UVJ_8(src_u[0]);\ dst_v[1]=UV_8_TO_UVJ_8(src_v[0]);\ dst_u[2]=UV_8_TO_UVJ_8(src_u[0]);\ dst_v[2]=UV_8_TO_UVJ_8(src_v[0]);\ dst_u[3]=UV_8_TO_UVJ_8(src_u[0]);\ dst_v[3]=UV_8_TO_UVJ_8(src_v[0]);\ dst_y[0]= Y_8_TO_YJ_8(src_y[0]);\ dst_y[1]= Y_8_TO_YJ_8(src_y[1]);\ dst_y[2]= Y_8_TO_YJ_8(src_y[2]);\ dst_y[3]= Y_8_TO_YJ_8(src_y[3]); #include "../csp_planar_planar.h" #define FUNC_NAME yuv_411_p_to_yuv_444_p_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 4 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 4 #define NUM_PIXELS 4 #define CHROMA_SUB_IN 1 #define CHROMA_SUB_OUT 1 #define CONVERT_YUV \ dst_u[0]=src_u[0];\ dst_v[0]=src_v[0];\ dst_u[1]=src_u[0];\ dst_v[1]=src_v[0];\ dst_u[2]=src_u[0];\ dst_v[2]=src_v[0];\ dst_u[3]=src_u[0];\ dst_v[3]=src_v[0];\ dst_y[0]=src_y[0];\ dst_y[1]=src_y[1];\ dst_y[2]=src_y[2];\ dst_y[3]=src_y[3]; #include "../csp_planar_planar.h" #define FUNC_NAME yuv_411_p_to_yuv_444_p_16_c #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE_Y 4 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 4 #define NUM_PIXELS 4 #define CHROMA_SUB_IN 1 #define CHROMA_SUB_OUT 1 #define CONVERT_YUV \ dst_u[0]=UV_8_TO_16(src_u[0]); \ dst_v[0]=UV_8_TO_16(src_v[0]); \ dst_u[1]=UV_8_TO_16(src_u[0]); \ dst_v[1]=UV_8_TO_16(src_v[0]); \ dst_u[2]=UV_8_TO_16(src_u[0]); \ dst_v[2]=UV_8_TO_16(src_v[0]); \ dst_u[3]=UV_8_TO_16(src_u[0]); \ dst_v[3]=UV_8_TO_16(src_v[0]); \ dst_y[0]=Y_8_TO_16(src_y[0]); \ dst_y[1]=Y_8_TO_16(src_y[1]); \ dst_y[2]=Y_8_TO_16(src_y[2]); \ dst_y[3]=Y_8_TO_16(src_y[3]); #include "../csp_planar_planar.h" /********************************* * 444 -> 444 *********************************/ #define FUNC_NAME yuv_444_p_to_yuvj_444_p_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 1 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE_Y 1 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 1 #define CHROMA_SUB_IN 1 #define CHROMA_SUB_OUT 1 #define CONVERT_YUV \ dst_y[0]=Y_8_TO_YJ_8(src_y[0]);\ dst_u[0]=UV_8_TO_UVJ_8(src_u[0]);\ dst_v[0]=UV_8_TO_UVJ_8(src_v[0]); #include "../csp_planar_planar.h" #endif // !HQ #define FUNC_NAME yuv_444_p_16_to_yuvj_444_p_c #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 1 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE_Y 1 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 1 #define CHROMA_SUB_IN 1 #define CHROMA_SUB_OUT 1 #define CONVERT_YUV \ Y_16_TO_YJ_8(src_y[0], dst_y[0]);\ UV_16_TO_UVJ_8(src_u[0], dst_u[0]);\ UV_16_TO_UVJ_8(src_v[0], dst_v[0]); #include "../csp_planar_planar.h" #ifndef HQ #define FUNC_NAME yuv_444_p_to_yuv_444_p_16_c #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE_Y 1 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE_Y 1 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 1 #define CHROMA_SUB_IN 1 #define CHROMA_SUB_OUT 1 #define CONVERT_YUV \ dst_y[0]=Y_8_TO_16(src_y[0]); \ dst_u[0]=UV_8_TO_16(src_u[0]); \ dst_v[0]=UV_8_TO_16(src_v[0]); #include "../csp_planar_planar.h" #endif // !HQ #define FUNC_NAME yuv_444_p_16_to_yuv_444_p_c #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 1 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE_Y 1 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 1 #define CHROMA_SUB_IN 1 #define CHROMA_SUB_OUT 1 #define CONVERT_YUV \ Y_16_TO_Y_8(src_y[0], dst_y[0]); \ UV_16_TO_UV_8(src_u[0], dst_u[0]); \ UV_16_TO_UV_8(src_v[0], dst_v[0]); #include "../csp_planar_planar.h" #ifndef HQ #define FUNC_NAME yuvj_444_p_to_yuv_444_p_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 1 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE_Y 1 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 1 #define CHROMA_SUB_IN 1 #define CHROMA_SUB_OUT 1 #define CONVERT_YUV \ dst_y[0]=YJ_8_TO_Y_8(src_y[0]);\ dst_u[0]=UVJ_8_TO_UV_8(src_u[0]);\ dst_v[0]=UVJ_8_TO_UV_8(src_v[0]); #include "../csp_planar_planar.h" #define FUNC_NAME yuvj_444_p_to_yuv_444_p_16_c #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE_Y 1 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE_Y 1 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 1 #define CHROMA_SUB_IN 1 #define CHROMA_SUB_OUT 1 #define CONVERT_YUV \ dst_y[0]=YJ_8_TO_Y_16(src_y[0]);\ dst_u[0]=UVJ_8_TO_UV_16(src_u[0]);\ dst_v[0]=UVJ_8_TO_UV_16(src_v[0]); #include "../csp_planar_planar.h" /******************************** * Conversions to yuva 8 ********************************/ /* yuv_444_p_to_yuya_32_c */ #define FUNC_NAME yuv_444_p_to_yuva_32_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 1 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define CHROMA_SUB 1 #define CONVERT \ dst[0] = src_y[0];\ dst[1] = *src_u;\ dst[2] = *src_v;\ dst[3] = 0xff; #include "../csp_planar_packed.h" /* yuv_444_p_to_yuya_64_c */ #define FUNC_NAME yuv_444_p_to_yuva_64_c #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE_Y 1 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define CHROMA_SUB 1 #define CONVERT \ dst[0] = Y_8_TO_16(src_y[0]);\ dst[1] = UV_8_TO_16(*src_u);\ dst[2] = UV_8_TO_16(*src_v);\ dst[3] = 0xffff; #include "../csp_planar_packed.h" /* yuv_444_p_to_yuya_float_c */ #define FUNC_NAME yuv_444_p_to_yuva_float_c #define IN_TYPE uint8_t #define OUT_TYPE float #define IN_ADVANCE_Y 1 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define CHROMA_SUB 1 #define CONVERT \ dst[0] = Y_8_TO_FLOAT(src_y[0]);\ dst[1] = UV_8_TO_FLOAT(*src_u);\ dst[2] = UV_8_TO_FLOAT(*src_v);\ dst[3] = 1.0; #include "../csp_planar_packed.h" /* yuv_444_p_to_yuy_float_c */ #define FUNC_NAME yuv_444_p_to_yuv_float_c #define IN_TYPE uint8_t #define OUT_TYPE float #define IN_ADVANCE_Y 1 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define CHROMA_SUB 1 #define CONVERT \ dst[0] = Y_8_TO_FLOAT(src_y[0]);\ dst[1] = UV_8_TO_FLOAT(*src_u);\ dst[2] = UV_8_TO_FLOAT(*src_v); #include "../csp_planar_packed.h" /* yuv_444_p_16_to_yuya_32_c */ #endif // !HQ #define FUNC_NAME yuv_444_p_16_to_yuva_32_c #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 1 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define CHROMA_SUB 1 #define CONVERT \ Y_16_TO_Y_8(src_y[0], dst[0]); \ UV_16_TO_UV_8(*src_u, dst[1]); \ UV_16_TO_UV_8(*src_v, dst[2]); \ dst[3] = 0xff; #include "../csp_planar_packed.h" #ifndef HQ /* yuv_444_p_16_to_yuya_64_c */ #define FUNC_NAME yuv_444_p_16_to_yuva_64_c #define IN_TYPE uint16_t #define OUT_TYPE uint16_t #define IN_ADVANCE_Y 1 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define CHROMA_SUB 1 #define CONVERT \ dst[0] = src_y[0];\ dst[1] = *src_u;\ dst[2] = *src_v;\ dst[3] = 0xffff; #include "../csp_planar_packed.h" /* yuv_444_p_16_to_yuya_float_c */ #define FUNC_NAME yuv_444_p_16_to_yuva_float_c #define IN_TYPE uint16_t #define OUT_TYPE float #define IN_ADVANCE_Y 1 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define CHROMA_SUB 1 #define CONVERT \ dst[0] = Y_16_TO_Y_FLOAT(src_y[0]);\ dst[1] = UV_16_TO_UV_FLOAT(*src_u);\ dst[2] = UV_16_TO_UV_FLOAT(*src_v);\ dst[3] = 1.0; #include "../csp_planar_packed.h" /* yuv_444_p_16_to_yuy_float_c */ #define FUNC_NAME yuv_444_p_16_to_yuv_float_c #define IN_TYPE uint16_t #define OUT_TYPE float #define IN_ADVANCE_Y 1 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define CHROMA_SUB 1 #define CONVERT \ dst[0] = Y_16_TO_Y_FLOAT(src_y[0]);\ dst[1] = UV_16_TO_UV_FLOAT(*src_u);\ dst[2] = UV_16_TO_UV_FLOAT(*src_v); #include "../csp_planar_packed.h" /* yuvj_444_p_to_yuya_32_c */ #define FUNC_NAME yuvj_444_p_to_yuva_32_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 1 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define CHROMA_SUB 1 #define CONVERT \ dst[0] = YJ_8_TO_Y_8(src_y[0]); \ dst[1] = UVJ_8_TO_UV_8(*src_u); \ dst[2] = UVJ_8_TO_UV_8(*src_v); \ dst[3] = 0xff; #include "../csp_planar_packed.h" /* yuvj_444_p_to_yuya_64_c */ #define FUNC_NAME yuvj_444_p_to_yuva_64_c #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE_Y 1 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define CHROMA_SUB 1 #define CONVERT \ dst[0] = YJ_8_TO_Y_16(src_y[0]);\ dst[1] = UVJ_8_TO_UV_16(*src_u);\ dst[2] = UVJ_8_TO_UV_16(*src_v);\ dst[3] = 0xffff; #include "../csp_planar_packed.h" /* yuvj_444_p_to_yuya_float_c */ #define FUNC_NAME yuvj_444_p_to_yuva_float_c #define IN_TYPE uint8_t #define OUT_TYPE float #define IN_ADVANCE_Y 1 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define CHROMA_SUB 1 #define CONVERT \ dst[0] = YJ_8_TO_Y_FLOAT(src_y[0]);\ dst[1] = UVJ_8_TO_UV_FLOAT(*src_u);\ dst[2] = UVJ_8_TO_UV_FLOAT(*src_v);\ dst[3] = 1.0; #include "../csp_planar_packed.h" /* yuvj_444_p_to_yuy_float_c */ #define FUNC_NAME yuvj_444_p_to_yuv_float_c #define IN_TYPE uint8_t #define OUT_TYPE float #define IN_ADVANCE_Y 1 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define CHROMA_SUB 1 #define CONVERT \ dst[0] = YJ_8_TO_Y_FLOAT(src_y[0]);\ dst[1] = UVJ_8_TO_UV_FLOAT(*src_u);\ dst[2] = UVJ_8_TO_UV_FLOAT(*src_v); #include "../csp_planar_packed.h" /* yuv_422_p_to_yuya_32_c */ #define FUNC_NAME yuv_422_p_to_yuva_32_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 8 #define NUM_PIXELS 2 #define CHROMA_SUB 1 #define CONVERT \ dst[0] = src_y[0];\ dst[1] = *src_u;\ dst[2] = *src_v;\ dst[3] = 0xff;\ dst[4] = src_y[1];\ dst[5] = *src_u;\ dst[6] = *src_v;\ dst[7] = 0xff; #include "../csp_planar_packed.h" /* yuv_422_p_to_yuya_64_c */ #define FUNC_NAME yuv_422_p_to_yuva_64_c #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 8 #define NUM_PIXELS 2 #define CHROMA_SUB 1 #define CONVERT \ dst[0] = Y_8_TO_16(src_y[0]);\ dst[1] = UV_8_TO_16(*src_u);\ dst[2] = UV_8_TO_16(*src_v);\ dst[3] = 0xffff;\ dst[4] = Y_8_TO_16(src_y[1]);\ dst[5] = UV_8_TO_16(*src_u);\ dst[6] = UV_8_TO_16(*src_v);\ dst[7] = 0xffff; #include "../csp_planar_packed.h" /* yuv_422_p_to_yuya_float_c */ #define FUNC_NAME yuv_422_p_to_yuva_float_c #define IN_TYPE uint8_t #define OUT_TYPE float #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 8 #define NUM_PIXELS 2 #define CHROMA_SUB 1 #define CONVERT \ dst[0] = Y_8_TO_FLOAT(src_y[0]);\ dst[1] = UV_8_TO_FLOAT(*src_u);\ dst[2] = UV_8_TO_FLOAT(*src_v);\ dst[3] = 1.0;\ dst[4] = Y_8_TO_FLOAT(src_y[1]);\ dst[5] = UV_8_TO_FLOAT(*src_u);\ dst[6] = UV_8_TO_FLOAT(*src_v);\ dst[7] = 1.0; #include "../csp_planar_packed.h" /* yuv_422_p_to_yuy_float_c */ #define FUNC_NAME yuv_422_p_to_yuv_float_c #define IN_TYPE uint8_t #define OUT_TYPE float #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 6 #define NUM_PIXELS 2 #define CHROMA_SUB 1 #define CONVERT \ dst[0] = Y_8_TO_FLOAT(src_y[0]);\ dst[1] = UV_8_TO_FLOAT(*src_u);\ dst[2] = UV_8_TO_FLOAT(*src_v);\ dst[3] = Y_8_TO_FLOAT(src_y[1]);\ dst[4] = UV_8_TO_FLOAT(*src_u);\ dst[5] = UV_8_TO_FLOAT(*src_v); #include "../csp_planar_packed.h" #endif // !HQ /* yuv_422_p_16_to_yuva_32_c */ #define FUNC_NAME yuv_422_p_16_to_yuva_32_c #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 8 #define NUM_PIXELS 2 #define CHROMA_SUB 1 #define CONVERT \ Y_16_TO_Y_8(src_y[0], dst[0]); \ UV_16_TO_UV_8(*src_u, dst[1]); \ UV_16_TO_UV_8(*src_v, dst[2]); \ dst[3] = 0xff; \ Y_16_TO_Y_8(src_y[2], dst[4]); \ UV_16_TO_UV_8(*src_u, dst[5]); \ UV_16_TO_UV_8(*src_v, dst[6]); \ dst[7] = 0xff; #include "../csp_planar_packed.h" #ifndef HQ /* yuv_422_p_16_to_yuya_64_c */ #define FUNC_NAME yuv_422_p_16_to_yuva_64_c #define IN_TYPE uint16_t #define OUT_TYPE uint16_t #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 8 #define NUM_PIXELS 2 #define CHROMA_SUB 1 #define CONVERT \ dst[0] = src_y[0];\ dst[1] = *src_u;\ dst[2] = *src_v;\ dst[3] = 0xffff;\ dst[4] = src_y[1];\ dst[5] = *src_u;\ dst[6] = *src_v;\ dst[7] = 0xffff;\ #include "../csp_planar_packed.h" /* yuv_422_p_16_to_yuya_float_c */ #define FUNC_NAME yuv_422_p_16_to_yuva_float_c #define IN_TYPE uint16_t #define OUT_TYPE float #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 8 #define NUM_PIXELS 2 #define CHROMA_SUB 1 #define CONVERT \ dst[0] = Y_16_TO_Y_FLOAT(src_y[0]);\ dst[1] = UV_16_TO_UV_FLOAT(*src_u);\ dst[2] = UV_16_TO_UV_FLOAT(*src_v);\ dst[3] = 1.0;\ dst[4] = Y_16_TO_Y_FLOAT(src_y[1]);\ dst[5] = UV_16_TO_UV_FLOAT(*src_u);\ dst[6] = UV_16_TO_UV_FLOAT(*src_v);\ dst[7] = 1.0; #include "../csp_planar_packed.h" /* yuv_422_p_16_to_yuy_float_c */ #define FUNC_NAME yuv_422_p_16_to_yuv_float_c #define IN_TYPE uint16_t #define OUT_TYPE float #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 6 #define NUM_PIXELS 2 #define CHROMA_SUB 1 #define CONVERT \ dst[0] = Y_16_TO_Y_FLOAT(src_y[0]);\ dst[1] = UV_16_TO_UV_FLOAT(*src_u);\ dst[2] = UV_16_TO_UV_FLOAT(*src_v);\ dst[3] = Y_16_TO_Y_FLOAT(src_y[1]);\ dst[4] = UV_16_TO_UV_FLOAT(*src_u);\ dst[5] = UV_16_TO_UV_FLOAT(*src_v); #include "../csp_planar_packed.h" /* yuvj_422_p_to_yuva_32_c */ #define FUNC_NAME yuvj_422_p_to_yuva_32_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 8 #define NUM_PIXELS 2 #define CHROMA_SUB 1 #define CONVERT \ dst[0] = YJ_8_TO_Y_8(src_y[0]); \ dst[1] = UVJ_8_TO_UV_8(*src_u); \ dst[2] = UVJ_8_TO_UV_8(*src_v); \ dst[3] = 0xff; \ dst[4] = YJ_8_TO_Y_8(src_y[2]); \ dst[5] = UVJ_8_TO_UV_8(*src_u); \ dst[6] = UVJ_8_TO_UV_8(*src_v); \ dst[7] = 0xff; #include "../csp_planar_packed.h" /* yuvj_422_p_to_yuva_64_c */ #define FUNC_NAME yuvj_422_p_to_yuva_64_c #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 8 #define NUM_PIXELS 2 #define CHROMA_SUB 1 #define CONVERT \ dst[0] = YJ_8_TO_Y_16(src_y[0]); \ dst[1] = UVJ_8_TO_UV_16(*src_u); \ dst[2] = UVJ_8_TO_UV_16(*src_v); \ dst[3] = 0xffff; \ dst[4] = YJ_8_TO_Y_16(src_y[2]); \ dst[5] = UVJ_8_TO_UV_16(*src_u); \ dst[6] = UVJ_8_TO_UV_16(*src_v); \ dst[7] = 0xffff; #include "../csp_planar_packed.h" /* yuvj_422_p_to_yuva_float_c */ #define FUNC_NAME yuvj_422_p_to_yuva_float_c #define IN_TYPE uint8_t #define OUT_TYPE float #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 8 #define NUM_PIXELS 2 #define CHROMA_SUB 1 #define CONVERT \ dst[0] = YJ_8_TO_Y_FLOAT(src_y[0]); \ dst[1] = UVJ_8_TO_UV_FLOAT(*src_u); \ dst[2] = UVJ_8_TO_UV_FLOAT(*src_v); \ dst[3] = 1.0; \ dst[4] = YJ_8_TO_Y_FLOAT(src_y[2]); \ dst[5] = UVJ_8_TO_UV_FLOAT(*src_u); \ dst[6] = UVJ_8_TO_UV_FLOAT(*src_v); \ dst[7] = 1.0; #include "../csp_planar_packed.h" /* yuvj_422_p_to_yuv_float_c */ #define FUNC_NAME yuvj_422_p_to_yuv_float_c #define IN_TYPE uint8_t #define OUT_TYPE float #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 6 #define NUM_PIXELS 2 #define CHROMA_SUB 1 #define CONVERT \ dst[0] = YJ_8_TO_Y_FLOAT(src_y[0]); \ dst[1] = UVJ_8_TO_UV_FLOAT(*src_u); \ dst[2] = UVJ_8_TO_UV_FLOAT(*src_v); \ dst[3] = YJ_8_TO_Y_FLOAT(src_y[2]); \ dst[4] = UVJ_8_TO_UV_FLOAT(*src_u); \ dst[5] = UVJ_8_TO_UV_FLOAT(*src_v); #include "../csp_planar_packed.h" /* yuv_411_p_to_yuya_32_c */ #define FUNC_NAME yuv_411_p_to_yuva_32_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 4 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 16 #define NUM_PIXELS 4 #define CHROMA_SUB 1 #define CONVERT \ dst[0] = src_y[0];\ dst[1] = *src_u;\ dst[2] = *src_v;\ dst[3] = 0xff;\ dst[4] = src_y[2];\ dst[5] = *src_u;\ dst[6] = *src_v;\ dst[7] = 0xff;\ dst[8] = src_y[3];\ dst[9] = *src_u;\ dst[10] = *src_v;\ dst[11] = 0xff;\ dst[12] = src_y[4];\ dst[13] = *src_u;\ dst[14] = *src_v;\ dst[15] = 0xff; #include "../csp_planar_packed.h" /* yuv_411_p_to_yuya_64_c */ #define FUNC_NAME yuv_411_p_to_yuva_64_c #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE_Y 4 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 16 #define NUM_PIXELS 4 #define CHROMA_SUB 1 #define CONVERT \ dst[0] = Y_8_TO_16(src_y[0]);\ dst[1] = UV_8_TO_16(*src_u);\ dst[2] = UV_8_TO_16(*src_v);\ dst[3] = 0xffff;\ dst[4] = Y_8_TO_16(src_y[1]);\ dst[5] = UV_8_TO_16(*src_u);\ dst[6] = UV_8_TO_16(*src_v);\ dst[7] = 0xffff;\ dst[8] = Y_8_TO_16(src_y[2]);\ dst[9] = UV_8_TO_16(*src_u);\ dst[10] = UV_8_TO_16(*src_v);\ dst[11] = 0xffff;\ dst[12] = Y_8_TO_16(src_y[3]);\ dst[13] = UV_8_TO_16(*src_u);\ dst[14] = UV_8_TO_16(*src_v);\ dst[15] = 0xffff; #include "../csp_planar_packed.h" /* yuv_411_p_to_yuya_float_c */ #define FUNC_NAME yuv_411_p_to_yuva_float_c #define IN_TYPE uint8_t #define OUT_TYPE float #define IN_ADVANCE_Y 4 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 16 #define NUM_PIXELS 4 #define CHROMA_SUB 1 #define CONVERT \ dst[0] = Y_8_TO_FLOAT(src_y[0]);\ dst[1] = UV_8_TO_FLOAT(*src_u);\ dst[2] = UV_8_TO_FLOAT(*src_v);\ dst[3] = 1.0;\ dst[4] = Y_8_TO_FLOAT(src_y[1]);\ dst[5] = UV_8_TO_FLOAT(*src_u);\ dst[6] = UV_8_TO_FLOAT(*src_v);\ dst[7] = 1.0;\ dst[8] = Y_8_TO_FLOAT(src_y[2]);\ dst[9] = UV_8_TO_FLOAT(*src_u);\ dst[10] = UV_8_TO_FLOAT(*src_v);\ dst[11] = 1.0;\ dst[12] = Y_8_TO_FLOAT(src_y[3]);\ dst[13] = UV_8_TO_FLOAT(*src_u);\ dst[14] = UV_8_TO_FLOAT(*src_v);\ dst[15] = 1.0; #include "../csp_planar_packed.h" /* yuv_411_p_to_yuy_float_c */ #define FUNC_NAME yuv_411_p_to_yuv_float_c #define IN_TYPE uint8_t #define OUT_TYPE float #define IN_ADVANCE_Y 4 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 12 #define NUM_PIXELS 4 #define CHROMA_SUB 1 #define CONVERT \ dst[0] = Y_8_TO_FLOAT(src_y[0]);\ dst[1] = UV_8_TO_FLOAT(*src_u);\ dst[2] = UV_8_TO_FLOAT(*src_v);\ dst[3] = Y_8_TO_FLOAT(src_y[1]);\ dst[4] = UV_8_TO_FLOAT(*src_u);\ dst[5] = UV_8_TO_FLOAT(*src_v);\ dst[6] = Y_8_TO_FLOAT(src_y[2]);\ dst[7] = UV_8_TO_FLOAT(*src_u);\ dst[8] = UV_8_TO_FLOAT(*src_v);\ dst[9] = Y_8_TO_FLOAT(src_y[3]);\ dst[10] = UV_8_TO_FLOAT(*src_u);\ dst[11] = UV_8_TO_FLOAT(*src_v); #include "../csp_planar_packed.h" /* yuv_410_p_to_yuya_32_c */ #define FUNC_NAME yuv_410_p_to_yuva_32_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 4 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 16 #define NUM_PIXELS 4 #define CHROMA_SUB 4 #define CONVERT \ dst[0] = src_y[0];\ dst[1] = *src_u;\ dst[2] = *src_v;\ dst[3] = 0xff;\ dst[4] = src_y[1];\ dst[5] = *src_u;\ dst[6] = *src_v;\ dst[7] = 0xff;\ dst[8] = src_y[2];\ dst[9] = *src_u;\ dst[10] = *src_v;\ dst[11] = 0xff;\ dst[12] = src_y[3];\ dst[13] = *src_u;\ dst[14] = *src_v;\ dst[15] = 0xff; #include "../csp_planar_packed.h" /* yuv_410_p_to_yuya_64_c */ #define FUNC_NAME yuv_410_p_to_yuva_64_c #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE_Y 4 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 16 #define NUM_PIXELS 4 #define CHROMA_SUB 4 #define CONVERT \ dst[0] = Y_8_TO_16(src_y[0]);\ dst[1] = UV_8_TO_16(*src_u);\ dst[2] = UV_8_TO_16(*src_v);\ dst[3] = 0xffff;\ dst[4] = Y_8_TO_16(src_y[1]);\ dst[5] = UV_8_TO_16(*src_u);\ dst[6] = UV_8_TO_16(*src_v);\ dst[7] = 0xffff;\ dst[8] = Y_8_TO_16(src_y[2]);\ dst[9] = UV_8_TO_16(*src_u);\ dst[10] = UV_8_TO_16(*src_v);\ dst[11] = 0xffff;\ dst[12] = Y_8_TO_16(src_y[3]);\ dst[13] = UV_8_TO_16(*src_u);\ dst[14] = UV_8_TO_16(*src_v);\ dst[15] = 0xffff; #include "../csp_planar_packed.h" /* yuv_410_p_to_yuya_float_c */ #define FUNC_NAME yuv_410_p_to_yuva_float_c #define IN_TYPE uint8_t #define OUT_TYPE float #define IN_ADVANCE_Y 4 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 16 #define NUM_PIXELS 4 #define CHROMA_SUB 4 #define CONVERT \ dst[0] = Y_8_TO_FLOAT(src_y[0]);\ dst[1] = UV_8_TO_FLOAT(*src_u);\ dst[2] = UV_8_TO_FLOAT(*src_v);\ dst[3] = 1.0;\ dst[4] = Y_8_TO_FLOAT(src_y[1]);\ dst[5] = UV_8_TO_FLOAT(*src_u);\ dst[6] = UV_8_TO_FLOAT(*src_v);\ dst[7] = 1.0;\ dst[8] = Y_8_TO_FLOAT(src_y[2]);\ dst[9] = UV_8_TO_FLOAT(*src_u);\ dst[10] = UV_8_TO_FLOAT(*src_v);\ dst[11] = 1.0;\ dst[12] = Y_8_TO_FLOAT(src_y[3]);\ dst[13] = UV_8_TO_FLOAT(*src_u);\ dst[14] = UV_8_TO_FLOAT(*src_v);\ dst[15] = 1.0; #include "../csp_planar_packed.h" /* yuv_410_p_to_yuy_float_c */ #define FUNC_NAME yuv_410_p_to_yuv_float_c #define IN_TYPE uint8_t #define OUT_TYPE float #define IN_ADVANCE_Y 4 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 12 #define NUM_PIXELS 4 #define CHROMA_SUB 4 #define CONVERT \ dst[0] = Y_8_TO_FLOAT(src_y[0]);\ dst[1] = UV_8_TO_FLOAT(*src_u);\ dst[2] = UV_8_TO_FLOAT(*src_v);\ dst[3] = Y_8_TO_FLOAT(src_y[1]);\ dst[4] = UV_8_TO_FLOAT(*src_u);\ dst[5] = UV_8_TO_FLOAT(*src_v);\ dst[6] = Y_8_TO_FLOAT(src_y[2]);\ dst[7] = UV_8_TO_FLOAT(*src_u);\ dst[8] = UV_8_TO_FLOAT(*src_v);\ dst[9] = Y_8_TO_FLOAT(src_y[3]);\ dst[10] = UV_8_TO_FLOAT(*src_u);\ dst[11] = UV_8_TO_FLOAT(*src_v); #include "../csp_planar_packed.h" /* yuv_420_p_to_yuya_32_c */ #define FUNC_NAME yuv_420_p_to_yuva_32_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 8 #define NUM_PIXELS 2 #define CHROMA_SUB 2 #define CONVERT \ dst[0] = src_y[0];\ dst[1] = *src_u;\ dst[2] = *src_v;\ dst[3] = 0xff;\ dst[4] = src_y[1];\ dst[5] = *src_u;\ dst[6] = *src_v;\ dst[7] = 0xff; #include "../csp_planar_packed.h" /* yuv_420_p_to_yuya_64_c */ #define FUNC_NAME yuv_420_p_to_yuva_64_c #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 8 #define NUM_PIXELS 2 #define CHROMA_SUB 2 #define CONVERT \ dst[0] = Y_8_TO_16(src_y[0]);\ dst[1] = UV_8_TO_16(*src_u);\ dst[2] = UV_8_TO_16(*src_v);\ dst[3] = 0xffff;\ dst[4] = Y_8_TO_16(src_y[1]);\ dst[5] = UV_8_TO_16(*src_u);\ dst[6] = UV_8_TO_16(*src_v);\ dst[7] = 0xffff; #include "../csp_planar_packed.h" /* yuv_420_p_to_yuya_float_c */ #define FUNC_NAME yuv_420_p_to_yuva_float_c #define IN_TYPE uint8_t #define OUT_TYPE float #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 8 #define NUM_PIXELS 2 #define CHROMA_SUB 2 #define CONVERT \ dst[0] = Y_8_TO_FLOAT(src_y[0]);\ dst[1] = UV_8_TO_FLOAT(*src_u);\ dst[2] = UV_8_TO_FLOAT(*src_v);\ dst[3] = 1.0;\ dst[4] = Y_8_TO_FLOAT(src_y[1]);\ dst[5] = UV_8_TO_FLOAT(*src_u);\ dst[6] = UV_8_TO_FLOAT(*src_v);\ dst[7] = 1.0; #include "../csp_planar_packed.h" /* yuv_420_p_to_yuy_float_c */ #define FUNC_NAME yuv_420_p_to_yuv_float_c #define IN_TYPE uint8_t #define OUT_TYPE float #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 6 #define NUM_PIXELS 2 #define CHROMA_SUB 2 #define CONVERT \ dst[0] = Y_8_TO_FLOAT(src_y[0]);\ dst[1] = UV_8_TO_FLOAT(*src_u);\ dst[2] = UV_8_TO_FLOAT(*src_v);\ dst[3] = Y_8_TO_FLOAT(src_y[1]);\ dst[4] = UV_8_TO_FLOAT(*src_u);\ dst[5] = UV_8_TO_FLOAT(*src_v); #include "../csp_planar_packed.h" /* yuvj_420_p_to_yuya_32_c */ #define FUNC_NAME yuvj_420_p_to_yuva_32_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 8 #define NUM_PIXELS 2 #define CHROMA_SUB 2 #define CONVERT \ dst[0] = YJ_8_TO_Y_8(src_y[0]); \ dst[1] = UVJ_8_TO_UV_8(*src_u); \ dst[2] = UVJ_8_TO_UV_8(*src_v); \ dst[3] = 0xff; \ dst[4] = YJ_8_TO_Y_8(src_y[1]); \ dst[5] = UVJ_8_TO_UV_8(*src_u); \ dst[6] = UVJ_8_TO_UV_8(*src_v); \ dst[7] = 0xff; #include "../csp_planar_packed.h" /* yuvj_420_p_to_yuva_64_c */ #define FUNC_NAME yuvj_420_p_to_yuva_64_c #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 8 #define NUM_PIXELS 2 #define CHROMA_SUB 2 #define CONVERT \ dst[0] = YJ_8_TO_Y_16(src_y[0]); \ dst[1] = UVJ_8_TO_UV_16(*src_u); \ dst[2] = UVJ_8_TO_UV_16(*src_v); \ dst[3] = 0xffff; \ dst[4] = YJ_8_TO_Y_16(src_y[2]); \ dst[5] = UVJ_8_TO_UV_16(*src_u); \ dst[6] = UVJ_8_TO_UV_16(*src_v); \ dst[7] = 0xffff; #include "../csp_planar_packed.h" /* yuvj_420_p_to_yuva_float_c */ #define FUNC_NAME yuvj_420_p_to_yuva_float_c #define IN_TYPE uint8_t #define OUT_TYPE float #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 8 #define NUM_PIXELS 2 #define CHROMA_SUB 2 #define CONVERT \ dst[0] = YJ_8_TO_Y_FLOAT(src_y[0]); \ dst[1] = UVJ_8_TO_UV_FLOAT(*src_u); \ dst[2] = UVJ_8_TO_UV_FLOAT(*src_v); \ dst[3] = 1.0; \ dst[4] = YJ_8_TO_Y_FLOAT(src_y[2]); \ dst[5] = UVJ_8_TO_UV_FLOAT(*src_u); \ dst[6] = UVJ_8_TO_UV_FLOAT(*src_v); \ dst[7] = 1.0; #include "../csp_planar_packed.h" /* yuvj_420_p_to_yuv_float_c */ #define FUNC_NAME yuvj_420_p_to_yuv_float_c #define IN_TYPE uint8_t #define OUT_TYPE float #define IN_ADVANCE_Y 2 #define IN_ADVANCE_UV 1 #define OUT_ADVANCE 6 #define NUM_PIXELS 2 #define CHROMA_SUB 2 #define CONVERT \ dst[0] = YJ_8_TO_Y_FLOAT(src_y[0]); \ dst[1] = UVJ_8_TO_UV_FLOAT(*src_u); \ dst[2] = UVJ_8_TO_UV_FLOAT(*src_v); \ dst[3] = YJ_8_TO_Y_FLOAT(src_y[2]); \ dst[4] = UVJ_8_TO_UV_FLOAT(*src_u); \ dst[5] = UVJ_8_TO_UV_FLOAT(*src_v); #include "../csp_planar_packed.h" /* uyvy_to_yuya_32_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE 8 #define NUM_PIXELS 2 #define FUNC_NAME uyvy_to_yuva_32_c #define CONVERT dst[0] = src[1];\ dst[1] = src[0];\ dst[2] = src[2];\ dst[3] = 0xff; \ dst[4] = src[3];\ dst[5] = src[0];\ dst[6] = src[2];\ dst[7] = 0xff; #include "../csp_packed_packed.h" /* uyvy_to_yuya_64_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE 8 #define NUM_PIXELS 2 #define FUNC_NAME uyvy_to_yuva_64_c #define CONVERT dst[0] = Y_8_TO_16(src[1]);\ dst[1] = UV_8_TO_16(src[0]);\ dst[2] = UV_8_TO_16(src[2]);\ dst[3] = 0xffff; \ dst[4] = Y_8_TO_16(src[3]);\ dst[5] = UV_8_TO_16(src[0]);\ dst[6] = UV_8_TO_16(src[2]);\ dst[7] = 0xffff; #include "../csp_packed_packed.h" /* uyvy_to_yuya_float_c */ #define IN_TYPE uint8_t #define OUT_TYPE float #define IN_ADVANCE 4 #define OUT_ADVANCE 8 #define NUM_PIXELS 2 #define FUNC_NAME uyvy_to_yuva_float_c #define CONVERT dst[0] = Y_8_TO_FLOAT(src[1]);\ dst[1] = UV_8_TO_FLOAT(src[0]);\ dst[2] = UV_8_TO_FLOAT(src[2]);\ dst[3] = 1.0; \ dst[4] = Y_8_TO_FLOAT(src[3]);\ dst[5] = UV_8_TO_FLOAT(src[0]);\ dst[6] = UV_8_TO_FLOAT(src[2]);\ dst[7] = 1.0; #include "../csp_packed_packed.h" /* uyvy_to_yuy_float_c */ #define IN_TYPE uint8_t #define OUT_TYPE float #define IN_ADVANCE 4 #define OUT_ADVANCE 6 #define NUM_PIXELS 2 #define FUNC_NAME uyvy_to_yuv_float_c #define CONVERT dst[0] = Y_8_TO_FLOAT(src[1]);\ dst[1] = UV_8_TO_FLOAT(src[0]);\ dst[2] = UV_8_TO_FLOAT(src[2]);\ dst[3] = Y_8_TO_FLOAT(src[3]);\ dst[4] = UV_8_TO_FLOAT(src[0]);\ dst[5] = UV_8_TO_FLOAT(src[2]); #include "../csp_packed_packed.h" /* yuy2_to_yuya_32_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE 8 #define NUM_PIXELS 2 #define FUNC_NAME yuy2_to_yuva_32_c #define CONVERT dst[0] = src[0];\ dst[1] = src[1];\ dst[2] = src[3];\ dst[3] = 0xff; \ dst[4] = src[2];\ dst[5] = src[1];\ dst[6] = src[3];\ dst[7] = 0xff; #include "../csp_packed_packed.h" /* yuy2_to_yuya_64_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE 8 #define NUM_PIXELS 2 #define FUNC_NAME yuy2_to_yuva_64_c #define CONVERT dst[0] = Y_8_TO_16(src[0]);\ dst[1] = UV_8_TO_16(src[1]);\ dst[2] = UV_8_TO_16(src[3]);\ dst[3] = 0xffff; \ dst[4] = Y_8_TO_16(src[2]);\ dst[5] = UV_8_TO_16(src[1]);\ dst[6] = UV_8_TO_16(src[3]);\ dst[7] = 0xffff; #include "../csp_packed_packed.h" /* yuy2_to_yuya_float_c */ #define IN_TYPE uint8_t #define OUT_TYPE float #define IN_ADVANCE 4 #define OUT_ADVANCE 8 #define NUM_PIXELS 2 #define FUNC_NAME yuy2_to_yuva_float_c #define CONVERT dst[0] = Y_8_TO_FLOAT(src[0]);\ dst[1] = UV_8_TO_FLOAT(src[1]);\ dst[2] = UV_8_TO_FLOAT(src[3]);\ dst[3] = 1.0; \ dst[4] = Y_8_TO_FLOAT(src[2]);\ dst[5] = UV_8_TO_FLOAT(src[1]);\ dst[6] = UV_8_TO_FLOAT(src[3]);\ dst[7] = 1.0; #include "../csp_packed_packed.h" /* yuy2_to_yuy_float_c */ #define IN_TYPE uint8_t #define OUT_TYPE float #define IN_ADVANCE 4 #define OUT_ADVANCE 6 #define NUM_PIXELS 2 #define FUNC_NAME yuy2_to_yuv_float_c #define CONVERT dst[0] = Y_8_TO_FLOAT(src[0]);\ dst[1] = UV_8_TO_FLOAT(src[1]);\ dst[2] = UV_8_TO_FLOAT(src[3]);\ dst[3] = Y_8_TO_FLOAT(src[2]);\ dst[4] = UV_8_TO_FLOAT(src[1]);\ dst[5] = UV_8_TO_FLOAT(src[3]); #include "../csp_packed_packed.h" /* YUVA 32 -> */ /* yuva_32_to_yuv_410_p_c */ #define FUNC_NAME yuva_32_to_yuv_410_p_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 4 #define CHROMA_SUB 4 #define CONVERT_YUV \ YUVA_32_TO_YUV_8(src[0], src[1], src[2], src[3], dst_y[0], *dst_u, *dst_v);\ YUVA_32_TO_Y_8(src[4], src[7], dst_y[1]);\ YUVA_32_TO_Y_8(src[8], src[11], dst_y[2]);\ YUVA_32_TO_Y_8(src[12], src[15], dst_y[3]); #define CONVERT_Y \ YUVA_32_TO_Y_8(src[0], src[3], dst_y[0]);\ YUVA_32_TO_Y_8(src[4], src[7], dst_y[1]);\ YUVA_32_TO_Y_8(src[8], src[11], dst_y[2]); \ YUVA_32_TO_Y_8(src[12], src[15], dst_y[3]); #define INIT INIT_YUVA_32 #include "../csp_packed_planar.h" #endif // !HQ /* yuva_64_to_yuv_410_p_c */ #define FUNC_NAME yuva_64_to_yuv_410_p_c #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 4 #define CHROMA_SUB 4 #define CONVERT_YUV \ YUVA_64_TO_YUV_8(src[0], src[1], src[2], src[3], dst_y[0], *dst_u, *dst_v);\ YUVA_64_TO_Y_8(src[4], src[7], dst_y[1]);\ YUVA_64_TO_Y_8(src[8], src[11], dst_y[2]);\ YUVA_64_TO_Y_8(src[12], src[15], dst_y[3]); #define CONVERT_Y \ YUVA_64_TO_Y_8(src[0], src[3], dst_y[0]);\ YUVA_64_TO_Y_8(src[4], src[7], dst_y[1]);\ YUVA_64_TO_Y_8(src[8], src[11], dst_y[2]); \ YUVA_64_TO_Y_8(src[12], src[15], dst_y[3]); #define INIT INIT_YUVA_64 #include "../csp_packed_planar.h" /* yuva_float_to_yuv_410_p_c */ #define FUNC_NAME yuva_float_to_yuv_410_p_c #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 4 #define CHROMA_SUB 4 #define CONVERT_YUV \ YUVA_FLOAT_TO_YUV_8(src[0], src[1], src[2], src[3], dst_y[0], *dst_u, *dst_v);\ YUVA_FLOAT_TO_Y_8(src[4], src[7], dst_y[1]);\ YUVA_FLOAT_TO_Y_8(src[8], src[11], dst_y[2]);\ YUVA_FLOAT_TO_Y_8(src[12], src[15], dst_y[3]); #define CONVERT_Y \ YUVA_FLOAT_TO_Y_8(src[0], src[3], dst_y[0]);\ YUVA_FLOAT_TO_Y_8(src[4], src[7], dst_y[1]);\ YUVA_FLOAT_TO_Y_8(src[8], src[11], dst_y[2]); \ YUVA_FLOAT_TO_Y_8(src[12], src[15], dst_y[3]); #define INIT INIT_YUVA_FLOAT #include "../csp_packed_planar.h" #ifndef HQ /* yuva_32_to_yuv_411_p_c */ #define FUNC_NAME yuva_32_to_yuv_411_p_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 4 #define CHROMA_SUB 1 #define CONVERT_YUV \ YUVA_32_TO_YUV_8(src[0], src[1], src[2], src[3], dst_y[0], *dst_u, *dst_v);\ YUVA_32_TO_Y_8(src[4], src[7], dst_y[1]);\ YUVA_32_TO_Y_8(src[8], src[11], dst_y[2]);\ YUVA_32_TO_Y_8(src[12], src[15], dst_y[3]); #define INIT INIT_YUVA_32 #include "../csp_packed_planar.h" #endif // !HQ /* yuva_64_to_yuv_411_p_c */ #define FUNC_NAME yuva_64_to_yuv_411_p_c #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 4 #define CHROMA_SUB 1 #define CONVERT_YUV \ YUVA_64_TO_YUV_8(src[0], src[1], src[2], src[3], dst_y[0], *dst_u, *dst_v);\ YUVA_64_TO_Y_8(src[4], src[7], dst_y[1]);\ YUVA_64_TO_Y_8(src[8], src[11], dst_y[2]);\ YUVA_64_TO_Y_8(src[12], src[15], dst_y[3]); #define INIT INIT_YUVA_64 #include "../csp_packed_planar.h" /* yuva_float_to_yuv_411_p_c */ #define FUNC_NAME yuva_float_to_yuv_411_p_c #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 4 #define CHROMA_SUB 1 #define CONVERT_YUV \ YUVA_FLOAT_TO_YUV_8(src[0], src[1], src[2], src[3], dst_y[0], *dst_u, *dst_v);\ YUVA_FLOAT_TO_Y_8(src[4], src[7], dst_y[1]);\ YUVA_FLOAT_TO_Y_8(src[8], src[11], dst_y[2]);\ YUVA_FLOAT_TO_Y_8(src[12], src[15], dst_y[3]); #define INIT INIT_YUVA_FLOAT #include "../csp_packed_planar.h" #ifndef HQ /* yuva_32_to_yuv_420_p_c */ #define FUNC_NAME yuva_32_to_yuv_420_p_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CHROMA_SUB 2 #define CONVERT_YUV \ YUVA_32_TO_YUV_8(src[0], src[1], src[2], src[3], dst_y[0], *dst_u, *dst_v);\ YUVA_32_TO_Y_8(src[4], src[7], dst_y[1]);\ #define CONVERT_Y \ YUVA_32_TO_Y_8(src[0], src[3], dst_y[0]);\ YUVA_32_TO_Y_8(src[4], src[7], dst_y[1]);\ #define INIT INIT_YUVA_32 #include "../csp_packed_planar.h" #endif // !HQ /* yuva_64_to_yuv_420_p_c */ #define FUNC_NAME yuva_64_to_yuv_420_p_c #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CHROMA_SUB 2 #define CONVERT_YUV \ YUVA_64_TO_YUV_8(src[0], src[1], src[2], src[3], dst_y[0], *dst_u, *dst_v);\ YUVA_64_TO_Y_8(src[4], src[7], dst_y[1]);\ #define CONVERT_Y \ YUVA_64_TO_Y_8(src[0], src[3], dst_y[0]);\ YUVA_64_TO_Y_8(src[4], src[7], dst_y[1]);\ #define INIT INIT_YUVA_64 #include "../csp_packed_planar.h" /* yuva_float_to_yuv_420_p_c */ #define FUNC_NAME yuva_float_to_yuv_420_p_c #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CHROMA_SUB 2 #define CONVERT_YUV \ YUVA_FLOAT_TO_YUV_8(src[0], src[1], src[2], src[3], dst_y[0], *dst_u, *dst_v);\ YUVA_FLOAT_TO_Y_8(src[4], src[7], dst_y[1]);\ #define CONVERT_Y \ YUVA_FLOAT_TO_Y_8(src[0], src[3], dst_y[0]);\ YUVA_FLOAT_TO_Y_8(src[4], src[7], dst_y[1]);\ #define INIT INIT_YUVA_FLOAT #include "../csp_packed_planar.h" #ifndef HQ /* yuva_32_to_yuvj_420_p_c */ #define FUNC_NAME yuva_32_to_yuvj_420_p_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CHROMA_SUB 2 #define CONVERT_YUV \ YUVA_32_TO_YUVJ_8(src[0], src[1], src[2], src[3], dst_y[0], *dst_u, *dst_v);\ YUVA_32_TO_YJ_8(src[4], src[7], dst_y[1]); #define CONVERT_Y \ YUVA_32_TO_YJ_8(src[0], src[3], dst_y[0]);\ YUVA_32_TO_YJ_8(src[4], src[7], dst_y[1]); #define INIT INIT_YUVA_32 #include "../csp_packed_planar.h" #endif // !HQ /* yuva_64_to_yuvj_420_p_c */ #define FUNC_NAME yuva_64_to_yuvj_420_p_c #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CHROMA_SUB 2 #define CONVERT_YUV \ YUVA_64_TO_YUVJ_8(src[0], src[1], src[2], src[3], dst_y[0], *dst_u, *dst_v);\ YUVA_64_TO_YJ_8(src[4], src[7], dst_y[1]); #define CONVERT_Y \ YUVA_64_TO_YJ_8(src[0], src[3], dst_y[0]);\ YUVA_64_TO_YJ_8(src[4], src[7], dst_y[1]); #define INIT INIT_YUVA_64 #include "../csp_packed_planar.h" /* yuva_float_to_yuvj_420_p_c */ #define FUNC_NAME yuva_float_to_yuvj_420_p_c #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CHROMA_SUB 2 #define CONVERT_YUV \ YUVA_FLOAT_TO_YUVJ_8(src[0], src[1], src[2], src[3], dst_y[0], *dst_u, *dst_v);\ YUVA_FLOAT_TO_YJ_8(src[4], src[7], dst_y[1]); #define CONVERT_Y \ YUVA_FLOAT_TO_YJ_8(src[0], src[3], dst_y[0]);\ YUVA_FLOAT_TO_YJ_8(src[4], src[7], dst_y[1]); #define INIT INIT_YUVA_FLOAT #include "../csp_packed_planar.h" #ifndef HQ /* yuva_32_to_yuv_422_p_c */ #define FUNC_NAME yuva_32_to_yuv_422_p_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CHROMA_SUB 1 #define CONVERT_YUV \ YUVA_32_TO_YUV_8(src[0], src[1], src[2], src[3], dst_y[0], *dst_u, *dst_v);\ YUVA_32_TO_Y_8(src[4], src[7], dst_y[1]); #define INIT INIT_YUVA_32 #include "../csp_packed_planar.h" #endif // !HQ /* yuva_64_to_yuv_422_p_c */ #define FUNC_NAME yuva_64_to_yuv_422_p_c #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CHROMA_SUB 1 #define CONVERT_YUV \ YUVA_64_TO_YUV_8(src[0], src[1], src[2], src[3], dst_y[0], *dst_u, *dst_v);\ YUVA_64_TO_Y_8(src[4], src[7], dst_y[1]); #define INIT INIT_YUVA_64 #include "../csp_packed_planar.h" /* yuva_float_to_yuv_422_p_c */ #define FUNC_NAME yuva_float_to_yuv_422_p_c #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CHROMA_SUB 1 #define CONVERT_YUV \ YUVA_FLOAT_TO_YUV_8(src[0], src[1], src[2], src[3], dst_y[0], *dst_u, *dst_v);\ YUVA_FLOAT_TO_Y_8(src[4], src[7], dst_y[1]); #define INIT INIT_YUVA_FLOAT #include "../csp_packed_planar.h" #ifndef HQ /* yuva_32_to_yuvj_422_p_c */ #define FUNC_NAME yuva_32_to_yuvj_422_p_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CHROMA_SUB 1 #define CONVERT_YUV \ YUVA_32_TO_YUVJ_8(src[0], src[1], src[2], src[3], dst_y[0], *dst_u, *dst_v);\ YUVA_32_TO_YJ_8(src[4], src[7], dst_y[1]); #define INIT INIT_YUVA_32 #include "../csp_packed_planar.h" #endif // !HQ /* yuva_64_to_yuvj_422_p_c */ #define FUNC_NAME yuva_64_to_yuvj_422_p_c #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CHROMA_SUB 1 #define CONVERT_YUV \ YUVA_64_TO_YUVJ_8(src[0], src[1], src[2], src[3], dst_y[0], *dst_u, *dst_v);\ YUVA_64_TO_YJ_8(src[4], src[7], dst_y[1]); #define INIT INIT_YUVA_64 #include "../csp_packed_planar.h" /* yuva_float_to_yuvj_422_p_c */ #define FUNC_NAME yuva_float_to_yuvj_422_p_c #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CHROMA_SUB 1 #define CONVERT_YUV \ YUVA_FLOAT_TO_YUVJ_8(src[0], src[1], src[2], src[3], dst_y[0], *dst_u, *dst_v);\ YUVA_FLOAT_TO_YJ_8(src[4], src[7], dst_y[1]); #define INIT INIT_YUVA_FLOAT #include "../csp_packed_planar.h" #ifndef HQ /* yuva_32_to_yuv_422_p_16_c */ #define FUNC_NAME yuva_32_to_yuv_422_p_16_c #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE 8 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CHROMA_SUB 1 #define CONVERT_YUV \ YUVA_32_TO_YUV_16(src[0], src[1], src[2], src[3], dst_y[0], *dst_u, *dst_v);\ YUVA_32_TO_Y_16(src[4], src[7], dst_y[1]); #define INIT INIT_YUVA_32 #include "../csp_packed_planar.h" /* yuva_64_to_yuv_422_p_16_c */ #define FUNC_NAME yuva_64_to_yuv_422_p_16_c #define IN_TYPE uint16_t #define OUT_TYPE uint16_t #define IN_ADVANCE 8 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CHROMA_SUB 1 #define CONVERT_YUV \ YUVA_64_TO_YUV_16(src[0], src[1], src[2], src[3], dst_y[0], *dst_u, *dst_v);\ YUVA_64_TO_Y_16(src[4], src[7], dst_y[1]); #define INIT INIT_YUVA_64 #include "../csp_packed_planar.h" #endif // !HQ /* yuva_float_to_yuv_422_p_16_c */ #define FUNC_NAME yuva_float_to_yuv_422_p_16_c #define IN_TYPE float #define OUT_TYPE uint16_t #define IN_ADVANCE 8 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CHROMA_SUB 1 #define CONVERT_YUV \ YUVA_FLOAT_TO_YUV_16(src[0], src[1], src[2], src[3], dst_y[0], *dst_u, *dst_v);\ YUVA_FLOAT_TO_Y_16(src[4], src[7], dst_y[1]); #define INIT INIT_YUVA_FLOAT #include "../csp_packed_planar.h" #ifndef HQ /* yuva_32_to_yuv_444_p_c */ #define FUNC_NAME yuva_32_to_yuv_444_p_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE_Y 1 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 1 #define CHROMA_SUB 1 #define CONVERT_YUV \ YUVA_32_TO_YUV_8(src[0], src[1], src[2], src[3], dst_y[0], *dst_u, *dst_v); #define INIT INIT_YUVA_32 #include "../csp_packed_planar.h" #endif // !HQ /* yuva_64_to_yuv_444_p_c */ #define FUNC_NAME yuva_64_to_yuv_444_p_c #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE_Y 1 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 1 #define CHROMA_SUB 1 #define CONVERT_YUV \ YUVA_64_TO_YUV_8(src[0], src[1], src[2], src[3], dst_y[0], *dst_u, *dst_v); #define INIT INIT_YUVA_64 #include "../csp_packed_planar.h" /* yuva_float_to_yuv_444_p_c */ #define FUNC_NAME yuva_float_to_yuv_444_p_c #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE_Y 1 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 1 #define CHROMA_SUB 1 #define CONVERT_YUV \ YUVA_FLOAT_TO_YUV_8(src[0], src[1], src[2], src[3], dst_y[0], *dst_u, *dst_v); #define INIT INIT_YUVA_FLOAT #include "../csp_packed_planar.h" #ifndef HQ /* yuva_32_to_yuvj_444_p_c */ #define FUNC_NAME yuva_32_to_yuvj_444_p_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE_Y 1 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 1 #define CHROMA_SUB 1 #define CONVERT_YUV \ YUVA_32_TO_YUVJ_8(src[0], src[1], src[2], src[3], dst_y[0], *dst_u, *dst_v); #define INIT INIT_YUVA_32 #include "../csp_packed_planar.h" #endif // !HQ /* yuva_64_to_yuvj_444_p_c */ #define FUNC_NAME yuva_64_to_yuvj_444_p_c #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE_Y 1 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 1 #define CHROMA_SUB 1 #define CONVERT_YUV \ YUVA_64_TO_YUVJ_8(src[0], src[1], src[2], src[3], dst_y[0], *dst_u, *dst_v); #define INIT INIT_YUVA_64 #include "../csp_packed_planar.h" /* yuva_float_to_yuvj_444_p_c */ #define FUNC_NAME yuva_float_to_yuvj_444_p_c #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE_Y 1 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 1 #define CHROMA_SUB 1 #define CONVERT_YUV \ YUVA_FLOAT_TO_YUVJ_8(src[0], src[1], src[2], src[3], dst_y[0], *dst_u, *dst_v); #define INIT INIT_YUVA_FLOAT #include "../csp_packed_planar.h" #ifndef HQ /* yuva_32_to_yuv_444_p_16_c */ #define FUNC_NAME yuva_32_to_yuv_444_p_16_c #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE_Y 1 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 1 #define CHROMA_SUB 1 #define CONVERT_YUV \ YUVA_32_TO_YUV_16(src[0], src[1], src[2], src[3], dst_y[0], *dst_u, *dst_v);\ #define INIT INIT_YUVA_32 #include "../csp_packed_planar.h" /* yuva_64_to_yuv_444_p_16_c */ #define FUNC_NAME yuva_64_to_yuv_444_p_16_c #define IN_TYPE uint16_t #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE_Y 1 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 1 #define CHROMA_SUB 1 #define CONVERT_YUV \ YUVA_64_TO_YUV_16(src[0], src[1], src[2], src[3], dst_y[0], *dst_u, *dst_v);\ #define INIT INIT_YUVA_64 #include "../csp_packed_planar.h" #endif // !HQ /* yuva_float_to_yuv_444_p_16_c */ #define FUNC_NAME yuva_float_to_yuv_444_p_16_c #define IN_TYPE float #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE_Y 1 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 1 #define CHROMA_SUB 1 #define CONVERT_YUV \ YUVA_FLOAT_TO_YUV_16(src[0], src[1], src[2], src[3], dst_y[0], *dst_u, *dst_v);\ #define INIT INIT_YUVA_FLOAT #include "../csp_packed_planar.h" #ifndef HQ /* yuva_32_to_yuy2_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE 4 #define NUM_PIXELS 2 #define FUNC_NAME yuva_32_to_yuy2_c #define CONVERT \ YUVA_32_TO_YUV_8(src[0], src[1], src[2], src[3], dst[0], dst[1], dst[3]); \ YUVA_32_TO_Y_8(src[4], src[7], dst[2]); #define INIT INIT_YUVA_32 #include "../csp_packed_packed.h" #endif // !HQ /* yuva_64_to_yuy2_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE 4 #define NUM_PIXELS 2 #define FUNC_NAME yuva_64_to_yuy2_c #define CONVERT \ YUVA_64_TO_YUV_8(src[0], src[1], src[2], src[3], dst[0], dst[1], dst[3]); \ YUVA_64_TO_Y_8(src[4], src[7], dst[2]); #define INIT INIT_YUVA_64 #include "../csp_packed_packed.h" /* yuva_float_to_yuy2_c */ #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE 4 #define NUM_PIXELS 2 #define FUNC_NAME yuva_float_to_yuy2_c #define CONVERT \ YUVA_FLOAT_TO_YUV_8(src[0], src[1], src[2], src[3], dst[0], dst[1], dst[3]); \ YUVA_FLOAT_TO_Y_8(src[4], src[7], dst[2]); #define INIT INIT_YUVA_FLOAT #include "../csp_packed_packed.h" #ifndef HQ /* yuva_32_to_uyvy_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE 4 #define NUM_PIXELS 2 #define FUNC_NAME yuva_32_to_uyvy_c #define CONVERT \ YUVA_32_TO_YUV_8(src[0], src[1], src[2], src[3], dst[1], dst[0], dst[2]); \ YUVA_32_TO_Y_8(src[4], src[7], dst[3]); #define INIT INIT_YUVA_32 #include "../csp_packed_packed.h" #endif // !HQ /* yuva_64_to_uyvy_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE 4 #define NUM_PIXELS 2 #define FUNC_NAME yuva_64_to_uyvy_c #define CONVERT \ YUVA_64_TO_YUV_8(src[0], src[1], src[2], src[3], dst[1], dst[0], dst[2]); \ YUVA_64_TO_Y_8(src[4], src[7], dst[3]); #define INIT INIT_YUVA_64 #include "../csp_packed_packed.h" /* yuva_float_to_uyvy_c */ #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE 4 #define NUM_PIXELS 2 #define FUNC_NAME yuva_float_to_uyvy_c #define CONVERT \ YUVA_FLOAT_TO_YUV_8(src[0], src[1], src[2], src[3], dst[1], dst[0], dst[2]); \ YUVA_FLOAT_TO_Y_8(src[4], src[7], dst[3]); #define INIT INIT_YUVA_FLOAT #include "../csp_packed_packed.h" #ifndef HQ /* yuva_32_to_yuv_float_c */ #define IN_TYPE uint8_t #define OUT_TYPE float #define IN_ADVANCE 4 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define FUNC_NAME yuva_32_to_yuv_float_c #define CONVERT \ YUVA_32_TO_YUV_FLOAT(src[0], src[1], src[2], src[3], dst[0], dst[1], dst[2]); #define INIT INIT_YUVA_32 #include "../csp_packed_packed.h" /* yuva_64_to_yuv_float_c */ #define IN_TYPE uint16_t #define OUT_TYPE float #define IN_ADVANCE 4 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define FUNC_NAME yuva_64_to_yuv_float_c #define CONVERT \ YUVA_64_TO_YUV_FLOAT(src[0], src[1], src[2], src[3], dst[0], dst[1], dst[2]); #define INIT INIT_YUVA_64 #include "../csp_packed_packed.h" /* yuva_float_to_yuv_float_c */ #define IN_TYPE float #define OUT_TYPE float #define IN_ADVANCE 4 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define FUNC_NAME yuva_float_to_yuv_float_c #define CONVERT \ YUVA_FLOAT_TO_YUV_FLOAT(src[0], src[1], src[2], src[3], dst[0], dst[1], dst[2]); #define INIT INIT_YUVA_FLOAT_FLOAT #include "../csp_packed_packed.h" /* YUVA -> YUVA */ /* yuva_32_to_yuva_64 */ #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME yuva_32_to_yuva_64_c #define CONVERT \ dst[0] = Y_8_TO_16(src[0]);\ dst[1] = UV_8_TO_16(src[1]);\ dst[2] = UV_8_TO_16(src[2]);\ dst[3] = RGB_8_TO_16(src[3]); #include "../csp_packed_packed.h" #endif // !HQ /* yuva_64_to_yuva_32 */ #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME yuva_64_to_yuva_32_c #ifdef DO_ROUND #define INIT int round_tmp; #endif #define CONVERT \ Y_16_TO_Y_8(src[0], dst[0]);\ UV_16_TO_UV_8(src[1], dst[1]);\ UV_16_TO_UV_8(src[2], dst[2]);\ RGB_16_TO_8(src[3], dst[3]); #include "../csp_packed_packed.h" #ifndef HQ /* yuva_32_to_yuva_float */ #define IN_TYPE uint8_t #define OUT_TYPE float #define IN_ADVANCE 4 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME yuva_32_to_yuva_float_c #define CONVERT \ dst[0] = Y_8_TO_FLOAT(src[0]);\ dst[1] = UV_8_TO_FLOAT(src[1]);\ dst[2] = UV_8_TO_FLOAT(src[2]);\ dst[3] = RGB_8_TO_FLOAT(src[3]); #include "../csp_packed_packed.h" /* yuva_32_to_yuv_float_ia */ #define IN_TYPE uint8_t #define OUT_TYPE float #define IN_ADVANCE 4 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define FUNC_NAME yuva_32_to_yuv_float_ia_c #define CONVERT \ dst[0] = Y_8_TO_FLOAT(src[0]);\ dst[1] = UV_8_TO_FLOAT(src[1]);\ dst[2] = UV_8_TO_FLOAT(src[2]); #include "../csp_packed_packed.h" /* yuva_64_to_yuva_float */ #define IN_TYPE uint16_t #define OUT_TYPE float #define IN_ADVANCE 4 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME yuva_64_to_yuva_float_c #define CONVERT \ dst[0] = Y_16_TO_Y_FLOAT(src[0]);\ dst[1] = UV_16_TO_UV_FLOAT(src[1]);\ dst[2] = UV_16_TO_UV_FLOAT(src[2]);\ dst[3] = RGB_16_TO_FLOAT(src[3]); #include "../csp_packed_packed.h" /* yuva_64_to_yuv_float_ia */ #define IN_TYPE uint16_t #define OUT_TYPE float #define IN_ADVANCE 4 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define FUNC_NAME yuva_64_to_yuv_float_ia_c #define CONVERT \ dst[0] = Y_16_TO_Y_FLOAT(src[0]);\ dst[1] = UV_16_TO_UV_FLOAT(src[1]);\ dst[2] = UV_16_TO_UV_FLOAT(src[2]); #include "../csp_packed_packed.h" /* yuva_float_to_yuv_float_ia_c */ #define IN_TYPE float #define OUT_TYPE float #define IN_ADVANCE 4 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define FUNC_NAME yuva_float_to_yuv_float_ia_c #define CONVERT \ dst[0] = src[0];\ dst[1] = src[1];\ dst[2] = src[2]; #include "../csp_packed_packed.h" /* yuv_float_to_yuva_float_c */ #define IN_TYPE float #define OUT_TYPE float #define IN_ADVANCE 3 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME yuv_float_to_yuva_float_c #define CONVERT \ dst[0] = src[0];\ dst[1] = src[1];\ dst[2] = src[2];\ dst[3] = 1.0; #include "../csp_packed_packed.h" #endif // !HQ /* yuva_float_to_yuva_64 */ #define IN_TYPE float #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME yuva_float_to_yuva_64_c #define CONVERT \ Y_FLOAT_TO_16(src[0], dst[0]);\ UV_FLOAT_TO_16(src[1], dst[1]);\ UV_FLOAT_TO_16(src[2], dst[2]);\ RGB_FLOAT_TO_16(src[3], dst[3]); #include "../csp_packed_packed.h" /* yuv_float_to_yuva_64 */ #define IN_TYPE float #define OUT_TYPE uint16_t #define IN_ADVANCE 3 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME yuv_float_to_yuva_64_c #define CONVERT \ Y_FLOAT_TO_16(src[0], dst[0]);\ UV_FLOAT_TO_16(src[1], dst[1]);\ UV_FLOAT_TO_16(src[2], dst[2]);\ dst[3] = 0xffff; #include "../csp_packed_packed.h" /* yuva_float_to_yuva_32 */ #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME yuva_float_to_yuva_32_c #define CONVERT \ Y_FLOAT_TO_8(src[0], dst[0]);\ UV_FLOAT_TO_8(src[1], dst[1]);\ UV_FLOAT_TO_8(src[2], dst[2]);\ RGB_FLOAT_TO_8(src[3], dst[3]); #include "../csp_packed_packed.h" /* yuv_float_to_yuva_32 */ #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 3 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME yuv_float_to_yuva_32_c #define CONVERT \ Y_FLOAT_TO_8(src[0], dst[0]);\ UV_FLOAT_TO_8(src[1], dst[1]);\ UV_FLOAT_TO_8(src[2], dst[2]);\ dst[3] = 0xff; #include "../csp_packed_packed.h" #ifndef HQ /* YUVA 32 -> (No Alpha) */ /* yuva_32_to_yuv_410_p_ia_c */ #define FUNC_NAME yuva_32_to_yuv_410_p_ia_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 4 #define CHROMA_SUB 4 #define CONVERT_YUV \ dst_y[0] = src[0]; \ dst_u[0] = src[1]; \ dst_v[0] = src[2]; \ dst_y[1] = src[4]; \ dst_y[2] = src[8]; \ dst_y[3] = src[12]; #define CONVERT_Y \ dst_y[0] = src[0]; \ dst_y[1] = src[4]; \ dst_y[2] = src[8]; \ dst_y[3] = src[12]; #include "../csp_packed_planar.h" #endif // !HQ /* yuva_64_to_yuv_410_p_ia_c */ #define FUNC_NAME yuva_64_to_yuv_410_p_ia_c #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 4 #define CHROMA_SUB 4 #define CONVERT_YUV \ Y_16_TO_Y_8(src[0], dst_y[0]); \ UV_16_TO_UV_8(src[1], dst_u[0]); \ UV_16_TO_UV_8(src[2], dst_v[0]); \ Y_16_TO_Y_8(src[4], dst_y[1]); \ Y_16_TO_Y_8(src[8], dst_y[2]); \ Y_16_TO_Y_8(src[12], dst_y[3]); #define CONVERT_Y \ Y_16_TO_Y_8(src[0], dst_y[0]); \ Y_16_TO_Y_8(src[4], dst_y[1]); \ Y_16_TO_Y_8(src[8], dst_y[2]); \ Y_16_TO_Y_8(src[12], dst_y[3]); #include "../csp_packed_planar.h" /* yuva_float_to_yuv_410_p_ia_c */ #define FUNC_NAME yuva_float_to_yuv_410_p_ia_c #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 4 #define CHROMA_SUB 4 #define CONVERT_YUV \ Y_FLOAT_TO_8(src[0], dst_y[0]); \ UV_FLOAT_TO_8(src[1], dst_u[0]); \ UV_FLOAT_TO_8(src[2], dst_v[0]); \ Y_FLOAT_TO_8(src[4], dst_y[1]); \ Y_FLOAT_TO_8(src[8], dst_y[2]); \ Y_FLOAT_TO_8(src[12], dst_y[3]); #define CONVERT_Y \ Y_FLOAT_TO_8(src[0], dst_y[0]); \ Y_FLOAT_TO_8(src[4], dst_y[1]); \ Y_FLOAT_TO_8(src[8], dst_y[2]); \ Y_FLOAT_TO_8(src[12], dst_y[3]); #include "../csp_packed_planar.h" /* yuv_float_to_yuv_410_p_c */ #define FUNC_NAME yuv_float_to_yuv_410_p_c #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 12 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 4 #define CHROMA_SUB 4 #define CONVERT_YUV \ Y_FLOAT_TO_8(src[0], dst_y[0]); \ UV_FLOAT_TO_8(src[1], dst_u[0]); \ UV_FLOAT_TO_8(src[2], dst_v[0]); \ Y_FLOAT_TO_8(src[3], dst_y[1]); \ Y_FLOAT_TO_8(src[6], dst_y[2]); \ Y_FLOAT_TO_8(src[9], dst_y[3]); #define CONVERT_Y \ Y_FLOAT_TO_8(src[0], dst_y[0]); \ Y_FLOAT_TO_8(src[3], dst_y[1]); \ Y_FLOAT_TO_8(src[6], dst_y[2]); \ Y_FLOAT_TO_8(src[9], dst_y[3]); #include "../csp_packed_planar.h" #ifndef HQ /* yuva_32_to_yuv_411_p_ia_c */ #define FUNC_NAME yuva_32_to_yuv_411_p_ia_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 4 #define CHROMA_SUB 1 #define CONVERT_YUV \ dst_y[0] = src[0]; \ dst_u[0] = src[1]; \ dst_v[0] = src[2]; \ dst_y[1] = src[4]; \ dst_y[2] = src[8]; \ dst_y[3] = src[12]; #include "../csp_packed_planar.h" #endif // !HQ /* yuva_64_to_yuv_411_p_ia_c */ #define FUNC_NAME yuva_64_to_yuv_411_p_ia_c #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 4 #define CHROMA_SUB 1 #define CONVERT_YUV \ Y_16_TO_Y_8(src[0], dst_y[0]); \ UV_16_TO_UV_8(src[1], dst_u[0]); \ UV_16_TO_UV_8(src[2], dst_v[0]); \ Y_16_TO_Y_8(src[4], dst_y[1]); \ Y_16_TO_Y_8(src[8], dst_y[2]); \ Y_16_TO_Y_8(src[12], dst_y[3]); #include "../csp_packed_planar.h" /* yuva_float_to_yuv_411_p_ia_c */ #define FUNC_NAME yuva_float_to_yuv_411_p_ia_c #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 4 #define CHROMA_SUB 1 #define CONVERT_YUV \ Y_FLOAT_TO_8(src[0], dst_y[0]); \ UV_FLOAT_TO_8(src[1], dst_u[0]); \ UV_FLOAT_TO_8(src[2], dst_v[0]); \ Y_FLOAT_TO_8(src[4], dst_y[1]); \ Y_FLOAT_TO_8(src[8], dst_y[2]); \ Y_FLOAT_TO_8(src[12], dst_y[3]); #include "../csp_packed_planar.h" /* yuv_float_to_yuv_411_p_c */ #define FUNC_NAME yuv_float_to_yuv_411_p_c #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 12 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 4 #define CHROMA_SUB 1 #define CONVERT_YUV \ Y_FLOAT_TO_8(src[0], dst_y[0]); \ UV_FLOAT_TO_8(src[1], dst_u[0]); \ UV_FLOAT_TO_8(src[2], dst_v[0]); \ Y_FLOAT_TO_8(src[3], dst_y[1]); \ Y_FLOAT_TO_8(src[6], dst_y[2]); \ Y_FLOAT_TO_8(src[9], dst_y[3]); #include "../csp_packed_planar.h" #ifndef HQ /* yuva_32_to_yuv_420_p_ia_c */ #define FUNC_NAME yuva_32_to_yuv_420_p_ia_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CHROMA_SUB 2 #define CONVERT_YUV \ dst_y[0] = src[0]; \ dst_u[0] = src[1]; \ dst_v[0] = src[2]; \ dst_y[1] = src[4]; #define CONVERT_Y \ dst_y[0] = src[0]; \ dst_y[1] = src[4]; #include "../csp_packed_planar.h" #endif // !HQ /* yuva_64_to_yuv_420_p_ia_c */ #define FUNC_NAME yuva_64_to_yuv_420_p_ia_c #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CHROMA_SUB 2 #define CONVERT_YUV \ Y_16_TO_Y_8(src[0], dst_y[0]); \ Y_16_TO_Y_8(src[4], dst_y[1]); \ UV_16_TO_UV_8(src[1], dst_u[0]); \ UV_16_TO_UV_8(src[2], dst_v[0]); #define CONVERT_Y \ Y_16_TO_Y_8(src[0], dst_y[0]); \ Y_16_TO_Y_8(src[4], dst_y[1]); #include "../csp_packed_planar.h" /* yuva_float_to_yuv_420_p_ia_c */ #define FUNC_NAME yuva_float_to_yuv_420_p_ia_c #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CHROMA_SUB 2 #define CONVERT_YUV \ Y_FLOAT_TO_8(src[0], dst_y[0]); \ UV_FLOAT_TO_8(src[1], dst_u[0]); \ UV_FLOAT_TO_8(src[2], dst_v[0]); \ Y_FLOAT_TO_8(src[4], dst_y[1]); #define CONVERT_Y \ Y_FLOAT_TO_8(src[0], dst_y[0]); \ Y_FLOAT_TO_8(src[4], dst_y[1]); #include "../csp_packed_planar.h" /* yuv_float_to_yuv_420_p_c */ #define FUNC_NAME yuv_float_to_yuv_420_p_c #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 6 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CHROMA_SUB 2 #define CONVERT_YUV \ Y_FLOAT_TO_8(src[0], dst_y[0]); \ UV_FLOAT_TO_8(src[1], dst_u[0]); \ UV_FLOAT_TO_8(src[2], dst_v[0]); \ Y_FLOAT_TO_8(src[3], dst_y[1]); #define CONVERT_Y \ Y_FLOAT_TO_8(src[0], dst_y[0]); \ Y_FLOAT_TO_8(src[3], dst_y[1]); #include "../csp_packed_planar.h" #ifndef HQ /* yuva_32_to_yuvj_420_p_ia_c */ #define FUNC_NAME yuva_32_to_yuvj_420_p_ia_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CHROMA_SUB 2 #define CONVERT_YUV \ dst_y[0] = Y_8_TO_YJ_8(src[0]); \ dst_u[0] = UV_8_TO_UVJ_8(src[1]); \ dst_v[0] = UV_8_TO_UVJ_8(src[2]); \ dst_y[1] = Y_8_TO_YJ_8(src[4]); #define CONVERT_Y \ dst_y[0] = Y_8_TO_YJ_8(src[0]); \ dst_y[1] = Y_8_TO_YJ_8(src[4]); #include "../csp_packed_planar.h" #endif // !HQ /* yuva_64_to_yuvj_420_p_ia_c */ #define FUNC_NAME yuva_64_to_yuvj_420_p_ia_c #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CHROMA_SUB 2 #define CONVERT_YUV \ Y_16_TO_YJ_8(src[0], dst_y[0]); \ UV_16_TO_UVJ_8(src[1], dst_u[0]); \ UV_16_TO_UVJ_8(src[2], dst_v[0]);\ Y_16_TO_YJ_8(src[4], dst_y[1]); \ #define CONVERT_Y \ Y_16_TO_YJ_8(src[0], dst_y[0]); \ Y_16_TO_YJ_8(src[4], dst_y[1]); #include "../csp_packed_planar.h" /* yuva_float_to_yuvj_420_p_ia_c */ #define FUNC_NAME yuva_float_to_yuvj_420_p_ia_c #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CHROMA_SUB 2 #define CONVERT_YUV \ YJ_FLOAT_TO_8(src[0], dst_y[0]); \ UVJ_FLOAT_TO_8(src[1], dst_u[0]); \ UVJ_FLOAT_TO_8(src[2], dst_v[0]); \ YJ_FLOAT_TO_8(src[4], dst_y[1]); #define CONVERT_Y \ YJ_FLOAT_TO_8(src[0], dst_y[0]); \ YJ_FLOAT_TO_8(src[4], dst_y[1]); #include "../csp_packed_planar.h" /* yuv_float_to_yuvj_420_p_c */ #define FUNC_NAME yuv_float_to_yuvj_420_p_c #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 6 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CHROMA_SUB 2 #define CONVERT_YUV \ YJ_FLOAT_TO_8(src[0], dst_y[0]); \ UVJ_FLOAT_TO_8(src[1], dst_u[0]); \ UVJ_FLOAT_TO_8(src[2], dst_v[0]); \ YJ_FLOAT_TO_8(src[3], dst_y[1]); #define CONVERT_Y \ YJ_FLOAT_TO_8(src[0], dst_y[0]); \ YJ_FLOAT_TO_8(src[3], dst_y[1]); #include "../csp_packed_planar.h" #ifndef HQ /* yuva_32_to_yuv_422_p_ia_c */ #define FUNC_NAME yuva_32_to_yuv_422_p_ia_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CHROMA_SUB 1 #define CONVERT_YUV \ dst_y[0] = src[0]; \ dst_u[0] = src[1]; \ dst_v[0] = src[2]; \ dst_y[1] = src[4]; #include "../csp_packed_planar.h" #endif // !HQ /* yuva_64_to_yuv_422_p_ia_c */ #define FUNC_NAME yuva_64_to_yuv_422_p_ia_c #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CHROMA_SUB 1 #define CONVERT_YUV \ Y_16_TO_Y_8(src[0], dst_y[0]); \ UV_16_TO_UV_8(src[1], dst_u[0]); \ UV_16_TO_UV_8(src[2], dst_v[0]); \ Y_16_TO_Y_8(src[4], dst_y[1]); #include "../csp_packed_planar.h" /* yuva_float_to_yuv_422_p_ia_c */ #define FUNC_NAME yuva_float_to_yuv_422_p_ia_c #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CHROMA_SUB 1 #define CONVERT_YUV \ Y_FLOAT_TO_8(src[0], dst_y[0]); \ UV_FLOAT_TO_8(src[1], dst_u[0]); \ UV_FLOAT_TO_8(src[2], dst_v[0]); \ Y_FLOAT_TO_8(src[4], dst_y[1]); #include "../csp_packed_planar.h" /* yuv_float_to_yuv_422_p_c */ #define FUNC_NAME yuv_float_to_yuv_422_p_c #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 6 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CHROMA_SUB 1 #define CONVERT_YUV \ Y_FLOAT_TO_8(src[0], dst_y[0]); \ UV_FLOAT_TO_8(src[1], dst_u[0]); \ UV_FLOAT_TO_8(src[2], dst_v[0]); \ Y_FLOAT_TO_8(src[3], dst_y[1]); #include "../csp_packed_planar.h" #ifndef HQ /* yuva_32_to_yuvj_422_p_ia_c */ #define FUNC_NAME yuva_32_to_yuvj_422_p_ia_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CHROMA_SUB 1 #define CONVERT_YUV \ dst_y[0] = Y_8_TO_YJ_8(src[0]); \ dst_u[0] = UV_8_TO_UVJ_8(src[1]); \ dst_v[0] = UV_8_TO_UVJ_8(src[2]); \ dst_y[1] = Y_8_TO_YJ_8(src[4]); #include "../csp_packed_planar.h" #endif // !HQ /* yuva_64_to_yuvj_422_p_ia_c */ #define FUNC_NAME yuva_64_to_yuvj_422_p_ia_c #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CHROMA_SUB 1 #define CONVERT_YUV \ Y_16_TO_YJ_8(src[0], dst_y[0]); \ UV_16_TO_UVJ_8(src[1], dst_u[0]); \ UV_16_TO_UVJ_8(src[2], dst_v[0]);\ Y_16_TO_YJ_8(src[4], dst_y[1]); #include "../csp_packed_planar.h" /* yuva_float_to_yuvj_422_p_ia_c */ #define FUNC_NAME yuva_float_to_yuvj_422_p_ia_c #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CHROMA_SUB 1 #define CONVERT_YUV \ YJ_FLOAT_TO_8(src[0], dst_y[0]); \ UVJ_FLOAT_TO_8(src[1], dst_u[0]); \ UVJ_FLOAT_TO_8(src[2], dst_v[0]); \ YJ_FLOAT_TO_8(src[4], dst_y[1]); #include "../csp_packed_planar.h" /* yuv_float_to_yuvj_422_p_c */ #define FUNC_NAME yuv_float_to_yuvj_422_p_c #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 6 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CHROMA_SUB 1 #define CONVERT_YUV \ YJ_FLOAT_TO_8(src[0], dst_y[0]); \ UVJ_FLOAT_TO_8(src[1], dst_u[0]); \ UVJ_FLOAT_TO_8(src[2], dst_v[0]); \ YJ_FLOAT_TO_8(src[3], dst_y[1]); #include "../csp_packed_planar.h" #ifndef HQ /* yuva_32_to_yuv_422_p_16_ia_c */ #define FUNC_NAME yuva_32_to_yuv_422_p_16_ia_c #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE 8 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CHROMA_SUB 1 #define CONVERT_YUV \ dst_y[0] = Y_8_TO_16(src[0]); \ dst_u[0] = UV_8_TO_16(src[1]); \ dst_v[0] = UV_8_TO_16(src[2]); \ dst_y[1] = Y_8_TO_16(src[4]); #include "../csp_packed_planar.h" /* yuva_64_to_yuv_422_p_16_ia_c */ #define FUNC_NAME yuva_64_to_yuv_422_p_16_ia_c #define IN_TYPE uint16_t #define OUT_TYPE uint16_t #define IN_ADVANCE 8 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CHROMA_SUB 1 #define CONVERT_YUV \ dst_y[0] = src[0]; \ dst_u[0] = src[1]; \ dst_v[0] = src[2]; \ dst_y[1] = src[4]; #include "../csp_packed_planar.h" #endif // !HQ /* yuva_float_to_yuv_422_p_16_ia_c */ #define FUNC_NAME yuva_float_to_yuv_422_p_16_ia_c #define IN_TYPE float #define OUT_TYPE uint16_t #define IN_ADVANCE 8 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CHROMA_SUB 1 #define CONVERT_YUV \ Y_FLOAT_TO_16(src[0], dst_y[0]); \ UV_FLOAT_TO_16(src[1], dst_u[0]); \ UV_FLOAT_TO_16(src[2], dst_v[0]); \ Y_FLOAT_TO_16(src[4], dst_y[1]); #include "../csp_packed_planar.h" /* yuv_float_to_yuv_422_p_16_c */ #define FUNC_NAME yuv_float_to_yuv_422_p_16_c #define IN_TYPE float #define OUT_TYPE uint16_t #define IN_ADVANCE 6 #define OUT_ADVANCE_Y 2 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 2 #define CHROMA_SUB 1 #define CONVERT_YUV \ Y_FLOAT_TO_16(src[0], dst_y[0]); \ UV_FLOAT_TO_16(src[1], dst_u[0]); \ UV_FLOAT_TO_16(src[2], dst_v[0]); \ Y_FLOAT_TO_16(src[3], dst_y[1]); #include "../csp_packed_planar.h" #ifndef HQ /* yuva_32_to_yuv_444_p_ia_c */ #define FUNC_NAME yuva_32_to_yuv_444_p_ia_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE_Y 1 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 1 #define CHROMA_SUB 1 #define CONVERT_YUV \ dst_y[0] = src[0]; \ dst_u[0] = src[1]; \ dst_v[0] = src[2]; \ #include "../csp_packed_planar.h" #endif // !HQ /* yuva_64_to_yuv_444_p_ia_c */ #define FUNC_NAME yuva_64_to_yuv_444_p_ia_c #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE_Y 1 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 1 #define CHROMA_SUB 1 #define CONVERT_YUV \ Y_16_TO_Y_8(src[0], dst_y[0]); \ UV_16_TO_UV_8(src[1], dst_u[0]); \ UV_16_TO_UV_8(src[2], dst_v[0]); #include "../csp_packed_planar.h" /* yuva_float_to_yuv_444_p_ia_c */ #define FUNC_NAME yuva_float_to_yuv_444_p_ia_c #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE_Y 1 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 1 #define CHROMA_SUB 1 #define CONVERT_YUV \ Y_FLOAT_TO_8(src[0], dst_y[0]); \ UV_FLOAT_TO_8(src[1], dst_u[0]); \ UV_FLOAT_TO_8(src[2], dst_v[0]); #include "../csp_packed_planar.h" /* yuv_float_to_yuv_444_p_c */ #define FUNC_NAME yuv_float_to_yuv_444_p_c #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 3 #define OUT_ADVANCE_Y 1 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 1 #define CHROMA_SUB 1 #define CONVERT_YUV \ Y_FLOAT_TO_8(src[0], dst_y[0]); \ UV_FLOAT_TO_8(src[1], dst_u[0]); \ UV_FLOAT_TO_8(src[2], dst_v[0]); #include "../csp_packed_planar.h" #ifndef HQ /* yuva_32_to_yuvj_444_p_ia_c */ #define FUNC_NAME yuva_32_to_yuvj_444_p_ia_c #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE_Y 1 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 1 #define CHROMA_SUB 1 #define CONVERT_YUV \ dst_y[0] = Y_8_TO_YJ_8(src[0]); \ dst_u[0] = UV_8_TO_UVJ_8(src[1]); \ dst_v[0] = UV_8_TO_UVJ_8(src[2]); \ #include "../csp_packed_planar.h" #endif // !HQ /* yuva_64_to_yuvj_444_p_ia_c */ #define FUNC_NAME yuva_64_to_yuvj_444_p_ia_c #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE_Y 1 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 1 #define CHROMA_SUB 1 #define CONVERT_YUV \ Y_16_TO_YJ_8(src[0], dst_y[0]); \ UV_16_TO_UVJ_8(src[1], dst_u[0]); \ UV_16_TO_UVJ_8(src[2], dst_v[0]); #include "../csp_packed_planar.h" /* yuva_float_to_yuvj_444_p_ia_c */ #define FUNC_NAME yuva_float_to_yuvj_444_p_ia_c #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE_Y 1 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 1 #define CHROMA_SUB 1 #define CONVERT_YUV \ YJ_FLOAT_TO_8(src[0], dst_y[0]); \ UVJ_FLOAT_TO_8(src[1], dst_u[0]); \ UVJ_FLOAT_TO_8(src[2], dst_v[0]); #include "../csp_packed_planar.h" /* yuv_float_to_yuvj_444_p_c */ #define FUNC_NAME yuv_float_to_yuvj_444_p_c #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 3 #define OUT_ADVANCE_Y 1 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 1 #define CHROMA_SUB 1 #define CONVERT_YUV \ YJ_FLOAT_TO_8(src[0], dst_y[0]); \ UVJ_FLOAT_TO_8(src[1], dst_u[0]); \ UVJ_FLOAT_TO_8(src[2], dst_v[0]); #include "../csp_packed_planar.h" #ifndef HQ /* yuva_32_to_yuv_444_p_16_ia_c */ #define FUNC_NAME yuva_32_to_yuv_444_p_16_ia_c #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE_Y 1 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 1 #define CHROMA_SUB 1 #define CONVERT_YUV \ dst_y[0] = Y_8_TO_16(src[0]); \ dst_u[0] = UV_8_TO_16(src[1]); \ dst_v[0] = UV_8_TO_16(src[2]); #include "../csp_packed_planar.h" /* yuva_64_to_yuv_444_p_16_ia_c */ #define FUNC_NAME yuva_64_to_yuv_444_p_16_ia_c #define IN_TYPE uint16_t #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE_Y 1 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 1 #define CHROMA_SUB 1 #define CONVERT_YUV \ dst_y[0] = src[0]; \ dst_u[0] = src[1]; \ dst_v[0] = src[2]; \ #include "../csp_packed_planar.h" #endif // !HQ /* yuva_float_to_yuv_444_p_16_ia_c */ #define FUNC_NAME yuva_float_to_yuv_444_p_16_ia_c #define IN_TYPE float #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE_Y 1 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 1 #define CHROMA_SUB 1 #define CONVERT_YUV \ Y_FLOAT_TO_16(src[0], dst_y[0]); \ UV_FLOAT_TO_16(src[1], dst_u[0]); \ UV_FLOAT_TO_16(src[2], dst_v[0]); #include "../csp_packed_planar.h" /* yuv_float_to_yuv_444_p_16_c */ #define FUNC_NAME yuv_float_to_yuv_444_p_16_c #define IN_TYPE float #define OUT_TYPE uint16_t #define IN_ADVANCE 3 #define OUT_ADVANCE_Y 1 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 1 #define CHROMA_SUB 1 #define CONVERT_YUV \ Y_FLOAT_TO_16(src[0], dst_y[0]); \ UV_FLOAT_TO_16(src[1], dst_u[0]); \ UV_FLOAT_TO_16(src[2], dst_v[0]); #include "../csp_packed_planar.h" #ifndef HQ /* yuva_32_to_yuy2_ia_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE 4 #define NUM_PIXELS 2 #define FUNC_NAME yuva_32_to_yuy2_ia_c #define CONVERT \ dst[0] = src[0]; /* Y */\ dst[1] = src[1]; /* U */\ dst[2] = src[4]; /* Y */\ dst[3] = src[2]; /* V */ #include "../csp_packed_packed.h" #endif // !HQ /* yuva_64_to_yuy2_ia_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE 4 #define NUM_PIXELS 2 #define FUNC_NAME yuva_64_to_yuy2_ia_c #define CONVERT \ Y_16_TO_Y_8(src[0], dst[0]); /* Y */\ UV_16_TO_UV_8(src[1], dst[1]); /* U */\ Y_16_TO_Y_8(src[4], dst[2]); /* Y */\ UV_16_TO_UV_8(src[2], dst[3]); /* V */ #include "../csp_packed_packed.h" /* yuva_float_to_yuy2_ia_c */ #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE 4 #define NUM_PIXELS 2 #define FUNC_NAME yuva_float_to_yuy2_ia_c #define CONVERT \ Y_FLOAT_TO_8(src[0], dst[0]); /* Y */\ UV_FLOAT_TO_8(src[1], dst[1]); /* U */\ Y_FLOAT_TO_8(src[4], dst[2]); /* Y */\ UV_FLOAT_TO_8(src[2], dst[3]); /* V */ #include "../csp_packed_packed.h" /* yuv_float_to_yuy2_c */ #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 6 #define OUT_ADVANCE 4 #define NUM_PIXELS 2 #define FUNC_NAME yuv_float_to_yuy2_c #define CONVERT \ Y_FLOAT_TO_8(src[0], dst[0]); /* Y */\ UV_FLOAT_TO_8(src[1], dst[1]); /* U */\ Y_FLOAT_TO_8(src[3], dst[2]); /* Y */\ UV_FLOAT_TO_8(src[2], dst[3]); /* V */ #include "../csp_packed_packed.h" #ifndef HQ /* yuva_32_to_uyvy_ia_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE 4 #define NUM_PIXELS 2 #define FUNC_NAME yuva_32_to_uyvy_ia_c #define CONVERT \ dst[0] = src[1]; /* U */\ dst[1] = src[0]; /* Y */\ dst[2] = src[2]; /* V */\ dst[3] = src[4]; /* Y */ #include "../csp_packed_packed.h" #endif // !HQ /* yuva_64_to_uyvy_ia_c */ #define IN_TYPE uint16_t #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE 4 #define NUM_PIXELS 2 #define FUNC_NAME yuva_64_to_uyvy_ia_c #define CONVERT \ Y_16_TO_Y_8(src[1], dst[0]); /* Y */\ UV_16_TO_UV_8(src[0], dst[1]); /* U */\ Y_16_TO_Y_8(src[2], dst[2]); /* Y */\ UV_16_TO_UV_8(src[4], dst[3]); /* V */ #include "../csp_packed_packed.h" /* yuva_float_to_uyvy_ia_c */ #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE 4 #define NUM_PIXELS 2 #define FUNC_NAME yuva_float_to_uyvy_ia_c #define CONVERT \ UV_FLOAT_TO_8(src[1], dst[0]); /* U */\ Y_FLOAT_TO_8(src[0], dst[1]); /* Y */\ UV_FLOAT_TO_8(src[2], dst[2]); /* V */\ Y_FLOAT_TO_8(src[4], dst[3]); /* Y */ #include "../csp_packed_packed.h" /* yuv_float_to_uyvy_c */ #define IN_TYPE float #define OUT_TYPE uint8_t #define IN_ADVANCE 6 #define OUT_ADVANCE 4 #define NUM_PIXELS 2 #define FUNC_NAME yuv_float_to_uyvy_c #define CONVERT \ UV_FLOAT_TO_8(src[1], dst[0]); /* U */\ Y_FLOAT_TO_8(src[0], dst[1]); /* Y */\ UV_FLOAT_TO_8(src[2], dst[2]); /* V */\ Y_FLOAT_TO_8(src[3], dst[3]); /* Y */ #include "../csp_packed_packed.h" #ifdef HQ void gavl_init_yuv_yuv_funcs_hq(gavl_pixelformat_function_table_t * tab, const gavl_video_options_t * opt) #else void gavl_init_yuv_yuv_funcs_c(gavl_pixelformat_function_table_t * tab, const gavl_video_options_t * opt) #endif { if(opt->alpha_mode == GAVL_ALPHA_BLEND_COLOR) { #ifndef HQ tab->yuva_32_to_yuv_420_p = yuva_32_to_yuv_420_p_c; tab->yuva_32_to_yuvj_420_p = yuva_32_to_yuvj_420_p_c; tab->yuva_32_to_yuv_422_p = yuva_32_to_yuv_422_p_c; tab->yuva_32_to_yuvj_422_p = yuva_32_to_yuvj_422_p_c; tab->yuva_32_to_yuv_422_p_16 = yuva_32_to_yuv_422_p_16_c; tab->yuva_32_to_yuv_410_p = yuva_32_to_yuv_410_p_c; tab->yuva_32_to_yuv_411_p = yuva_32_to_yuv_411_p_c; tab->yuva_32_to_yuv_444_p = yuva_32_to_yuv_444_p_c; tab->yuva_32_to_yuvj_444_p = yuva_32_to_yuvj_444_p_c; tab->yuva_32_to_yuv_444_p_16 = yuva_32_to_yuv_444_p_16_c; tab->yuva_32_to_yuy2 = yuva_32_to_yuy2_c; tab->yuva_32_to_uyvy = yuva_32_to_uyvy_c; tab->yuva_64_to_yuv_422_p_16 = yuva_64_to_yuv_422_p_16_c; tab->yuva_64_to_yuv_444_p_16 = yuva_64_to_yuv_444_p_16_c; tab->yuva_32_to_yuv_float = yuva_32_to_yuv_float_c; tab->yuva_64_to_yuv_float = yuva_64_to_yuv_float_c; tab->yuva_float_to_yuv_float = yuva_float_to_yuv_float_c; #endif tab->yuva_64_to_yuy2 = yuva_64_to_yuy2_c; tab->yuva_64_to_uyvy = yuva_64_to_uyvy_c; tab->yuva_64_to_yuv_420_p = yuva_64_to_yuv_420_p_c; tab->yuva_64_to_yuv_410_p = yuva_64_to_yuv_410_p_c; tab->yuva_64_to_yuv_422_p = yuva_64_to_yuv_422_p_c; tab->yuva_64_to_yuv_411_p = yuva_64_to_yuv_411_p_c; tab->yuva_64_to_yuv_444_p = yuva_64_to_yuv_444_p_c; tab->yuva_64_to_yuvj_420_p = yuva_64_to_yuvj_420_p_c; tab->yuva_64_to_yuvj_422_p = yuva_64_to_yuvj_422_p_c; tab->yuva_64_to_yuvj_444_p = yuva_64_to_yuvj_444_p_c; tab->yuva_float_to_yuy2 = yuva_float_to_yuy2_c; tab->yuva_float_to_uyvy = yuva_float_to_uyvy_c; tab->yuva_float_to_yuv_420_p = yuva_float_to_yuv_420_p_c; tab->yuva_float_to_yuv_410_p = yuva_float_to_yuv_410_p_c; tab->yuva_float_to_yuv_422_p = yuva_float_to_yuv_422_p_c; tab->yuva_float_to_yuv_411_p = yuva_float_to_yuv_411_p_c; tab->yuva_float_to_yuv_444_p = yuva_float_to_yuv_444_p_c; tab->yuva_float_to_yuvj_420_p = yuva_float_to_yuvj_420_p_c; tab->yuva_float_to_yuvj_422_p = yuva_float_to_yuvj_422_p_c; tab->yuva_float_to_yuvj_444_p = yuva_float_to_yuvj_444_p_c; tab->yuva_float_to_yuv_422_p_16 = yuva_float_to_yuv_422_p_16_c; tab->yuva_float_to_yuv_444_p_16 = yuva_float_to_yuv_444_p_16_c; } else if(opt->alpha_mode == GAVL_ALPHA_IGNORE) { #ifndef HQ tab->yuva_32_to_yuv_420_p = yuva_32_to_yuv_420_p_ia_c; tab->yuva_32_to_yuvj_420_p = yuva_32_to_yuvj_420_p_ia_c; tab->yuva_32_to_yuv_422_p = yuva_32_to_yuv_422_p_ia_c; tab->yuva_32_to_yuvj_422_p = yuva_32_to_yuvj_422_p_ia_c; tab->yuva_32_to_yuv_422_p_16 = yuva_32_to_yuv_422_p_16_ia_c; tab->yuva_32_to_yuv_410_p = yuva_32_to_yuv_410_p_ia_c; tab->yuva_32_to_yuv_411_p = yuva_32_to_yuv_411_p_ia_c; tab->yuva_32_to_yuv_444_p = yuva_32_to_yuv_444_p_ia_c; tab->yuva_32_to_yuvj_444_p = yuva_32_to_yuvj_444_p_ia_c; tab->yuva_32_to_yuv_444_p_16 = yuva_32_to_yuv_444_p_16_ia_c; tab->yuva_32_to_yuy2 = yuva_32_to_yuy2_ia_c; tab->yuva_32_to_uyvy = yuva_32_to_uyvy_ia_c; tab->yuva_64_to_yuv_422_p_16 = yuva_64_to_yuv_422_p_16_ia_c; tab->yuva_64_to_yuv_444_p_16 = yuva_64_to_yuv_444_p_16_ia_c; tab->yuva_32_to_yuv_float = yuva_32_to_yuv_float_ia_c; tab->yuva_64_to_yuv_float = yuva_64_to_yuv_float_ia_c; tab->yuva_float_to_yuv_float = yuva_float_to_yuv_float_ia_c; #endif tab->yuva_64_to_yuva_32 = yuva_64_to_yuva_32_c; tab->yuva_float_to_yuv_422_p_16 = yuva_float_to_yuv_422_p_16_ia_c; tab->yuva_float_to_yuv_444_p_16 = yuva_float_to_yuv_444_p_16_ia_c; tab->yuva_64_to_yuy2 = yuva_64_to_yuy2_ia_c; tab->yuva_64_to_uyvy = yuva_64_to_uyvy_ia_c; tab->yuva_float_to_yuy2 = yuva_float_to_yuy2_ia_c; tab->yuva_float_to_uyvy = yuva_float_to_uyvy_ia_c; tab->yuva_64_to_yuv_420_p = yuva_64_to_yuv_420_p_ia_c; tab->yuva_64_to_yuv_410_p = yuva_64_to_yuv_410_p_ia_c; tab->yuva_64_to_yuv_422_p = yuva_64_to_yuv_422_p_ia_c; tab->yuva_64_to_yuv_411_p = yuva_64_to_yuv_411_p_ia_c; tab->yuva_64_to_yuv_444_p = yuva_64_to_yuv_444_p_ia_c; tab->yuva_64_to_yuvj_420_p = yuva_64_to_yuvj_420_p_ia_c; tab->yuva_64_to_yuvj_422_p = yuva_64_to_yuvj_422_p_ia_c; tab->yuva_64_to_yuvj_444_p = yuva_64_to_yuvj_444_p_ia_c; tab->yuva_float_to_yuv_420_p = yuva_float_to_yuv_420_p_ia_c; tab->yuva_float_to_yuv_410_p = yuva_float_to_yuv_410_p_ia_c; tab->yuva_float_to_yuv_422_p = yuva_float_to_yuv_422_p_ia_c; tab->yuva_float_to_yuv_411_p = yuva_float_to_yuv_411_p_ia_c; tab->yuva_float_to_yuv_444_p = yuva_float_to_yuv_444_p_ia_c; tab->yuva_float_to_yuvj_420_p = yuva_float_to_yuvj_420_p_ia_c; tab->yuva_float_to_yuvj_422_p = yuva_float_to_yuvj_422_p_ia_c; tab->yuva_float_to_yuvj_444_p = yuva_float_to_yuvj_444_p_ia_c; } #ifndef HQ tab->uyvy_to_yuy2 = uyvy_to_yuy2_c; tab->yuy2_to_yuv_420_p = yuy2_to_yuv_420_p_c; tab->yuy2_to_yuv_410_p = yuy2_to_yuv_410_p_c; tab->yuy2_to_yuv_422_p = yuy2_to_yuv_422_p_c; tab->yuy2_to_yuv_422_p_16 = yuy2_to_yuv_422_p_16_c; tab->yuy2_to_yuv_411_p = yuy2_to_yuv_411_p_c; tab->yuy2_to_yuv_444_p = yuy2_to_yuv_444_p_c; tab->yuy2_to_yuv_444_p_16 = yuy2_to_yuv_444_p_16_c; tab->yuy2_to_yuvj_420_p = yuy2_to_yuvj_420_p_c; tab->yuy2_to_yuvj_422_p = yuy2_to_yuvj_422_p_c; tab->yuy2_to_yuvj_444_p = yuy2_to_yuvj_444_p_c; tab->yuv_420_p_to_yuy2 = yuv_420_p_to_yuy2_c; tab->yuv_422_p_to_yuy2 = yuv_422_p_to_yuy2_c; tab->yuv_444_p_to_yuy2 = yuv_444_p_to_yuy2_c; tab->yuvj_420_p_to_yuy2 = yuvj_420_p_to_yuy2_c; tab->yuvj_422_p_to_yuy2 = yuvj_422_p_to_yuy2_c; tab->yuvj_444_p_to_yuy2 = yuvj_444_p_to_yuy2_c; tab->uyvy_to_yuv_420_p = uyvy_to_yuv_420_p_c; tab->uyvy_to_yuv_410_p = uyvy_to_yuv_410_p_c; tab->uyvy_to_yuv_422_p = uyvy_to_yuv_422_p_c; tab->uyvy_to_yuv_422_p_16 = uyvy_to_yuv_422_p_16_c; tab->uyvy_to_yuv_411_p = uyvy_to_yuv_411_p_c; tab->uyvy_to_yuv_444_p = uyvy_to_yuv_444_p_c; tab->uyvy_to_yuv_444_p_16 = uyvy_to_yuv_444_p_16_c; tab->uyvy_to_yuvj_420_p = uyvy_to_yuvj_420_p_c; tab->uyvy_to_yuvj_422_p = uyvy_to_yuvj_422_p_c; tab->uyvy_to_yuvj_444_p = uyvy_to_yuvj_444_p_c; tab->yuv_420_p_to_uyvy = yuv_420_p_to_uyvy_c; tab->yuv_422_p_to_uyvy = yuv_422_p_to_uyvy_c; tab->yuv_444_p_to_uyvy = yuv_444_p_to_uyvy_c; tab->yuvj_420_p_to_uyvy = yuvj_420_p_to_uyvy_c; tab->yuvj_422_p_to_uyvy = yuvj_422_p_to_uyvy_c; tab->yuvj_444_p_to_uyvy = yuvj_444_p_to_uyvy_c; tab->yuv_420_p_to_yuv_444_p = yuv_420_p_to_yuv_444_p_c; tab->yuv_420_p_to_yuv_444_p_16 = yuv_420_p_to_yuv_444_p_16_c; tab->yuv_420_p_to_yuvj_444_p = yuv_420_p_to_yuvj_444_p_c; tab->yuvj_420_p_to_yuv_444_p = yuvj_420_p_to_yuv_444_p_c; tab->yuvj_420_p_to_yuv_444_p_16 = yuvj_420_p_to_yuv_444_p_16_c; tab->yuv_422_p_to_yuv_444_p = yuv_422_p_to_yuv_444_p_c; tab->yuv_422_p_to_yuv_444_p_16 = yuv_422_p_to_yuv_444_p_16_c; tab->yuv_422_p_to_yuvj_444_p = yuv_422_p_to_yuvj_444_p_c; tab->yuvj_422_p_to_yuv_444_p = yuvj_422_p_to_yuv_444_p_c; tab->yuvj_422_p_to_yuv_444_p_16 = yuvj_422_p_to_yuv_444_p_16_c; tab->yuv_444_p_to_yuv_420_p = yuv_444_p_to_yuv_420_p_c; tab->yuv_444_p_to_yuvj_420_p = yuv_444_p_to_yuvj_420_p_c; tab->yuvj_444_p_to_yuv_420_p = yuvj_444_p_to_yuv_420_p_c; tab->yuv_444_p_to_yuv_422_p = yuv_444_p_to_yuv_422_p_c; tab->yuv_444_p_to_yuv_422_p_16 = yuv_444_p_to_yuv_422_p_16_c; tab->yuv_444_p_to_yuvj_422_p = yuv_444_p_to_yuvj_422_p_c; tab->yuvj_444_p_to_yuv_422_p = yuvj_444_p_to_yuv_422_p_c; tab->yuvj_444_p_to_yuv_422_p_16 = yuvj_444_p_to_yuv_422_p_16_c; tab->yuvj_444_p_to_yuv_411_p = yuvj_444_p_to_yuv_411_p_c; tab->yuvj_444_p_to_yuv_410_p = yuvj_444_p_to_yuv_410_p_c; tab->yuv_444_p_to_yuv_411_p = yuv_444_p_to_yuv_411_p_c; tab->yuv_444_p_to_yuv_410_p = yuv_444_p_to_yuv_410_p_c; tab->yuv_420_p_to_yuv_422_p = yuv_420_p_to_yuv_422_p_generic; tab->yuv_420_p_to_yuv_422_p_16 = yuv_420_p_to_yuv_422_p_16_c; tab->yuv_420_p_to_yuv_411_p = yuv_420_p_to_yuv_411_p_c; tab->yuv_420_p_to_yuv_410_p = yuv_420_p_to_yuv_410_p_c; tab->yuv_420_p_to_yuvj_422_p = yuv_420_p_to_yuvj_422_p_c; tab->yuvj_420_p_to_yuv_422_p = yuvj_420_p_to_yuv_422_p_c; tab->yuvj_420_p_to_yuv_422_p_16 = yuvj_420_p_to_yuv_422_p_16_c; tab->yuvj_420_p_to_yuv_411_p = yuvj_420_p_to_yuv_411_p_c; tab->yuvj_420_p_to_yuv_410_p = yuvj_420_p_to_yuv_410_p_c; tab->yuv_410_p_to_yuv_411_p = yuv_410_p_to_yuv_411_p_generic; tab->yuv_410_p_to_yuy2 = yuv_410_p_to_yuy2_c; tab->yuv_410_p_to_uyvy = yuv_410_p_to_uyvy_c; tab->yuv_410_p_to_yuv_444_p = yuv_410_p_to_yuv_444_p_c; tab->yuv_410_p_to_yuv_444_p_16 = yuv_410_p_to_yuv_444_p_16_c; tab->yuv_410_p_to_yuvj_444_p = yuv_410_p_to_yuvj_444_p_c; tab->yuv_410_p_to_yuv_420_p = yuv_410_p_to_yuv_420_p_c; tab->yuv_410_p_to_yuvj_420_p = yuv_410_p_to_yuvj_420_p_c; tab->yuv_410_p_to_yuvj_422_p = yuv_410_p_to_yuvj_422_p_c; tab->yuv_410_p_to_yuv_422_p = yuv_410_p_to_yuv_422_p_c; tab->yuv_410_p_to_yuv_422_p_16 = yuv_410_p_to_yuv_422_p_16_c; tab->yuv_410_p_to_yuv_420_p = yuv_410_p_to_yuv_420_p_c; tab->yuv_422_p_to_yuv_420_p = yuv_422_p_to_yuv_420_p_generic; tab->yuv_422_p_to_yuvj_420_p = yuv_422_p_to_yuvj_420_p_c; tab->yuvj_422_p_to_yuv_420_p = yuvj_422_p_to_yuv_420_p_c; tab->yuv_422_p_to_yuv_411_p = yuv_422_p_to_yuv_411_p_c; tab->yuvj_422_p_to_yuv_411_p = yuvj_422_p_to_yuv_411_p_c; tab->yuv_422_p_to_yuv_410_p = yuv_422_p_to_yuv_410_p_c; tab->yuvj_422_p_to_yuv_410_p = yuvj_422_p_to_yuv_410_p_c; tab->yuv_422_p_to_yuv_422_p_16 = yuv_422_p_to_yuv_422_p_16_c; tab->yuv_411_p_to_yuv_410_p = yuv_411_p_to_yuv_410_p_generic; tab->yuv_411_p_to_yuy2 = yuv_411_p_to_yuy2_c; tab->yuv_411_p_to_uyvy = yuv_411_p_to_uyvy_c; tab->yuv_411_p_to_yuv_420_p = yuv_411_p_to_yuv_420_p_c; tab->yuv_411_p_to_yuvj_420_p = yuv_411_p_to_yuvj_420_p_c; tab->yuv_411_p_to_yuv_444_p = yuv_411_p_to_yuv_444_p_c; tab->yuv_411_p_to_yuv_444_p_16 = yuv_411_p_to_yuv_444_p_16_c; tab->yuv_411_p_to_yuvj_444_p = yuv_411_p_to_yuvj_444_p_c; tab->yuv_411_p_to_yuv_422_p = yuv_411_p_to_yuv_422_p_c; tab->yuv_411_p_to_yuv_422_p_16 = yuv_411_p_to_yuv_422_p_16_c; tab->yuv_411_p_to_yuvj_422_p = yuv_411_p_to_yuvj_422_p_c; tab->yuv_420_p_to_yuvj_420_p = yuv_420_p_to_yuvj_420_p_c; tab->yuvj_420_p_to_yuv_420_p = yuvj_420_p_to_yuv_420_p_c; tab->yuv_422_p_to_yuvj_422_p = yuv_422_p_to_yuvj_422_p_c; tab->yuvj_422_p_to_yuv_422_p = yuvj_422_p_to_yuv_422_p_c; tab->yuvj_422_p_to_yuv_422_p_16 = yuvj_422_p_to_yuv_422_p_16_c; tab->yuv_444_p_to_yuvj_444_p = yuv_444_p_to_yuvj_444_p_c; tab->yuvj_444_p_to_yuv_444_p = yuvj_444_p_to_yuv_444_p_c; tab->yuvj_444_p_to_yuv_444_p_16 = yuvj_444_p_to_yuv_444_p_16_c; tab->yuv_444_p_to_yuv_444_p_16 = yuv_444_p_to_yuv_444_p_16_c; tab->yuv_444_p_to_yuva_32 = yuv_444_p_to_yuva_32_c; tab->yuv_422_p_to_yuva_32 = yuv_422_p_to_yuva_32_c; tab->yuvj_444_p_to_yuva_32 = yuvj_444_p_to_yuva_32_c; tab->yuvj_422_p_to_yuva_32 = yuvj_422_p_to_yuva_32_c; tab->yuv_411_p_to_yuva_32 = yuv_411_p_to_yuva_32_c; tab->yuv_410_p_to_yuva_32 = yuv_410_p_to_yuva_32_c; tab->yuv_420_p_to_yuva_32 = yuv_420_p_to_yuva_32_c; tab->yuvj_420_p_to_yuva_32 = yuvj_420_p_to_yuva_32_c; tab->uyvy_to_yuva_32 = uyvy_to_yuva_32_c; tab->yuy2_to_yuva_32 = yuy2_to_yuva_32_c; tab->yuv_444_p_16_to_yuv_422_p_16 = yuv_444_p_16_to_yuv_422_p_16_c; tab->yuv_422_p_16_to_yuv_444_p_16 = yuv_422_p_16_to_yuv_444_p_16_c; tab->yuy2_to_yuva_64 = yuy2_to_yuva_64_c; tab->yuy2_to_yuva_float = yuy2_to_yuva_float_c; tab->yuy2_to_yuv_float = yuy2_to_yuv_float_c; tab->uyvy_to_yuva_64 = uyvy_to_yuva_64_c; tab->uyvy_to_yuva_float = uyvy_to_yuva_float_c; tab->uyvy_to_yuv_float = uyvy_to_yuv_float_c; tab->yuv_420_p_to_yuva_64 = yuv_420_p_to_yuva_64_c; tab->yuv_420_p_to_yuva_float = yuv_420_p_to_yuva_float_c; tab->yuv_420_p_to_yuv_float = yuv_420_p_to_yuv_float_c; tab->yuv_410_p_to_yuva_64 = yuv_410_p_to_yuva_64_c; tab->yuv_410_p_to_yuva_float = yuv_410_p_to_yuva_float_c; tab->yuv_410_p_to_yuv_float = yuv_410_p_to_yuv_float_c; tab->yuv_422_p_to_yuva_64 = yuv_422_p_to_yuva_64_c; tab->yuv_422_p_to_yuva_float = yuv_422_p_to_yuva_float_c; tab->yuv_422_p_to_yuv_float = yuv_422_p_to_yuv_float_c; tab->yuv_422_p_16_to_yuva_64 = yuv_422_p_16_to_yuva_64_c; tab->yuv_422_p_16_to_yuva_float = yuv_422_p_16_to_yuva_float_c; tab->yuv_422_p_16_to_yuv_float = yuv_422_p_16_to_yuv_float_c; tab->yuv_411_p_to_yuva_64 = yuv_411_p_to_yuva_64_c; tab->yuv_411_p_to_yuva_float = yuv_411_p_to_yuva_float_c; tab->yuv_411_p_to_yuv_float = yuv_411_p_to_yuv_float_c; tab->yuv_444_p_to_yuva_64 = yuv_444_p_to_yuva_64_c; tab->yuv_444_p_to_yuva_float = yuv_444_p_to_yuva_float_c; tab->yuv_444_p_to_yuv_float = yuv_444_p_to_yuv_float_c; tab->yuv_444_p_16_to_yuva_64 = yuv_444_p_16_to_yuva_64_c; tab->yuv_444_p_16_to_yuva_float = yuv_444_p_16_to_yuva_float_c; tab->yuv_444_p_16_to_yuv_float = yuv_444_p_16_to_yuv_float_c; tab->yuvj_420_p_to_yuva_64 = yuvj_420_p_to_yuva_64_c; tab->yuvj_420_p_to_yuva_float = yuvj_420_p_to_yuva_float_c; tab->yuvj_420_p_to_yuv_float = yuvj_420_p_to_yuv_float_c; tab->yuvj_422_p_to_yuva_64 = yuvj_422_p_to_yuva_64_c; tab->yuvj_422_p_to_yuva_float = yuvj_422_p_to_yuva_float_c; tab->yuvj_422_p_to_yuv_float = yuvj_422_p_to_yuv_float_c; tab->yuvj_444_p_to_yuva_64 = yuvj_444_p_to_yuva_64_c; tab->yuvj_444_p_to_yuva_float = yuvj_444_p_to_yuva_float_c; tab->yuvj_444_p_to_yuv_float = yuvj_444_p_to_yuv_float_c; tab->yuva_32_to_yuva_64 = yuva_32_to_yuva_64_c; tab->yuva_32_to_yuva_float = yuva_32_to_yuva_float_c; tab->yuva_64_to_yuva_float = yuva_64_to_yuva_float_c; tab->yuv_float_to_yuva_float = yuv_float_to_yuva_float_c; #endif // !HQ tab->yuv_444_p_16_to_yuva_32 = yuv_444_p_16_to_yuva_32_c; tab->yuv_422_p_16_to_yuva_32 = yuv_422_p_16_to_yuva_32_c; tab->yuv_422_p_16_to_yuy2 = yuv_422_p_16_to_yuy2_c; tab->yuv_444_p_16_to_yuy2 = yuv_444_p_16_to_yuy2_c; tab->yuv_422_p_16_to_uyvy = yuv_422_p_16_to_uyvy_c; tab->yuv_444_p_16_to_uyvy = yuv_444_p_16_to_uyvy_c; tab->yuv_422_p_16_to_yuv_444_p = yuv_422_p_16_to_yuv_444_p_c; tab->yuv_422_p_16_to_yuvj_444_p = yuv_422_p_16_to_yuvj_444_p_c; tab->yuv_444_p_16_to_yuv_422_p = yuv_444_p_16_to_yuv_422_p_c; tab->yuv_444_p_16_to_yuvj_422_p = yuv_444_p_16_to_yuvj_422_p_c; tab->yuv_444_p_16_to_yuv_410_p = yuv_444_p_16_to_yuv_410_p_c; tab->yuv_444_p_16_to_yuv_411_p = yuv_444_p_16_to_yuv_411_p_c; tab->yuv_444_p_16_to_yuv_420_p = yuv_444_p_16_to_yuv_420_p_c; tab->yuv_444_p_16_to_yuvj_420_p = yuv_444_p_16_to_yuvj_420_p_c; tab->yuv_422_p_16_to_yuv_420_p = yuv_422_p_16_to_yuv_420_p_c; tab->yuv_422_p_16_to_yuvj_420_p = yuv_422_p_16_to_yuvj_420_p_c; tab->yuv_422_p_16_to_yuv_410_p = yuv_422_p_16_to_yuv_410_p_c; tab->yuv_422_p_16_to_yuv_411_p = yuv_422_p_16_to_yuv_411_p_c; tab->yuv_422_p_16_to_yuv_422_p = yuv_422_p_16_to_yuv_422_p_c; tab->yuv_422_p_16_to_yuvj_422_p = yuv_422_p_16_to_yuvj_422_p_c; tab->yuv_444_p_16_to_yuv_444_p = yuv_444_p_16_to_yuv_444_p_c; tab->yuv_444_p_16_to_yuvj_444_p = yuv_444_p_16_to_yuvj_444_p_c; tab->yuva_float_to_yuva_64 = yuva_float_to_yuva_64_c; tab->yuv_float_to_yuy2 = yuv_float_to_yuy2_c; tab->yuv_float_to_uyvy = yuv_float_to_uyvy_c; tab->yuv_float_to_yuva_32 = yuv_float_to_yuva_32_c; tab->yuv_float_to_yuva_64 = yuv_float_to_yuva_64_c; tab->yuv_float_to_yuv_420_p = yuv_float_to_yuv_420_p_c; tab->yuv_float_to_yuv_410_p = yuv_float_to_yuv_410_p_c; tab->yuv_float_to_yuv_422_p = yuv_float_to_yuv_422_p_c; tab->yuv_float_to_yuv_422_p_16 = yuv_float_to_yuv_422_p_16_c; tab->yuv_float_to_yuv_411_p = yuv_float_to_yuv_411_p_c; tab->yuv_float_to_yuv_444_p = yuv_float_to_yuv_444_p_c; tab->yuv_float_to_yuv_444_p_16 = yuv_float_to_yuv_444_p_16_c; tab->yuv_float_to_yuvj_420_p = yuv_float_to_yuvj_420_p_c; tab->yuv_float_to_yuvj_422_p = yuv_float_to_yuvj_422_p_c; tab->yuv_float_to_yuvj_444_p = yuv_float_to_yuvj_444_p_c; tab->yuva_float_to_yuva_32 = yuva_float_to_yuva_32_c; } bplaum-gavl-b9385e3/gavl/chapterlist.c000066400000000000000000000136751513252040200177120ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include #include #include #include static gavl_array_t * get_chapters(gavl_chapter_list_t * list) { gavl_value_t * valp; if(!(valp = gavl_dictionary_get_nc(list, GAVL_CHAPTERLIST_CHAPTERS))) { gavl_value_t val; gavl_value_init(&val); gavl_value_set_array(&val); gavl_dictionary_set_nocopy(list, GAVL_CHAPTERLIST_CHAPTERS, &val); valp = gavl_dictionary_get_nc(list, GAVL_CHAPTERLIST_CHAPTERS); } return valp->v.array; } static const gavl_array_t * get_chapters_c(const gavl_chapter_list_t * list) { const gavl_array_t * arr; const gavl_value_t * valp; if(!(valp = gavl_dictionary_get(list, GAVL_CHAPTERLIST_CHAPTERS)) || !(arr = gavl_value_get_array(valp))) return NULL; return arr; } int gavl_chapter_list_is_valid(const gavl_chapter_list_t * list) { const gavl_array_t * arr = get_chapters_c(list); if(!arr || !arr->num_entries) return 0; return 1; } gavl_dictionary_t * gavl_chapter_list_insert(gavl_chapter_list_t * list, int index, int64_t time, const char * name) { gavl_value_t val; gavl_dictionary_t * dict; gavl_array_t * arr = get_chapters(list); gavl_value_init(&val); dict = gavl_value_set_dictionary(&val); gavl_dictionary_set_long(dict, GAVL_CHAPTERLIST_TIME, time); if(name) gavl_dictionary_set_string(dict, GAVL_META_LABEL, name); gavl_array_splice_val_nocopy(arr, index, 0, &val); return arr->entries[index].v.dictionary; } void gavl_chapter_list_delete(gavl_chapter_list_t * list, int index) { gavl_array_t * arr = get_chapters(list); gavl_array_splice_val(arr, index, 1, NULL); } static int64_t get_time(const gavl_chapter_list_t * list, int idx) { int64_t ret = GAVL_TIME_UNDEFINED; const gavl_array_t * arr; const gavl_dictionary_t * dict; if((idx < 0) || !(arr = get_chapters_c(list)) || (idx >= arr->num_entries) || !(dict = gavl_value_get_dictionary(&arr->entries[idx])) || !gavl_dictionary_get_long(dict, GAVL_CHAPTERLIST_TIME, &ret)) { return GAVL_TIME_UNDEFINED; } return ret; } int gavl_chapter_list_get_current(const gavl_chapter_list_t * list, gavl_time_t time) { int i; int timescale; int64_t time_scaled; const gavl_array_t * arr = get_chapters_c(list); if(!(timescale = gavl_chapter_list_get_timescale(list))) return 0; time_scaled = gavl_time_scale(timescale, time); for(i = 1; i < arr->num_entries; i++) { if(get_time(list, i) > time_scaled) return i - 1; } return arr->num_entries-1; } void gavl_chapter_list_set_timescale(gavl_chapter_list_t * list, int timescale) { gavl_dictionary_set_int(list, GAVL_CHAPTERLIST_TIMESCALE, timescale); } int gavl_chapter_list_get_timescale(const gavl_chapter_list_t * list) { int timescale = 0; if(!gavl_dictionary_get_int(list, GAVL_CHAPTERLIST_TIMESCALE, ×cale)) return 0; return timescale; } int gavl_chapter_list_get_num(const gavl_chapter_list_t * list) { const gavl_array_t * arr; if(!(arr = get_chapters_c(list))) return 0; return arr->num_entries; } gavl_dictionary_t * gavl_chapter_list_get_nc(gavl_chapter_list_t * list, int idx) { gavl_array_t * arr = get_chapters(list); if((idx < 0) || (idx >= arr->num_entries) || (arr->entries[idx].type != GAVL_TYPE_DICTIONARY)) return NULL; return arr->entries[idx].v.dictionary; } int64_t gavl_chapter_list_get_time(const gavl_chapter_list_t * list, int idx) { const gavl_dictionary_t * chap; int64_t t = GAVL_TIME_UNDEFINED; if(!(chap = gavl_chapter_list_get(list, idx)) || !gavl_dictionary_get_long(chap, GAVL_CHAPTERLIST_TIME, &t)) return GAVL_TIME_UNDEFINED; return t; } const char * gavl_chapter_list_get_label(const gavl_chapter_list_t * list, int idx) { const gavl_dictionary_t * chap; const char * ret; if(!(chap = gavl_chapter_list_get(list, idx)) || !(ret = gavl_dictionary_get_string(chap, GAVL_META_LABEL))) return NULL; return ret; } const gavl_dictionary_t * gavl_chapter_list_get(const gavl_chapter_list_t * list, int idx) { const gavl_array_t * arr; if(!(arr = get_chapters_c(list))) return NULL; if((idx < 0) || (idx >= arr->num_entries) || (arr->entries[idx].type != GAVL_TYPE_DICTIONARY)) return NULL; return arr->entries[idx].v.dictionary; } gavl_dictionary_t * gavl_dictionary_add_chapter_list(gavl_dictionary_t * m, int timescale) { gavl_dictionary_t * ret; ret = gavl_dictionary_get_dictionary_create(m, GAVL_CHAPTERLIST_CHAPTERLIST); gavl_chapter_list_set_timescale(ret, timescale); return ret; } const gavl_dictionary_t * gavl_dictionary_get_chapter_list(const gavl_dictionary_t * m) { return gavl_dictionary_get_dictionary(m, GAVL_CHAPTERLIST_CHAPTERLIST); } gavl_dictionary_t * gavl_dictionary_get_chapter_list_nc(gavl_dictionary_t * m) { return gavl_dictionary_get_dictionary_nc(m, GAVL_CHAPTERLIST_CHAPTERLIST); } bplaum-gavl-b9385e3/gavl/charset.c000066400000000000000000000115201513252040200170040ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include #include #include #include #include #include #define LOG_DOMAIN "charset" // #define FLAG_HAS_BOM (1<<0) struct gavl_charset_converter_s { iconv_t cd; char * to_charset; int flags; }; GAVL_PUBLIC gavl_charset_converter_t * gavl_charset_converter_create(const char * from, const char * to) { gavl_charset_converter_t * ret = calloc(1, sizeof(*ret)); if(!strcmp(from, GAVL_UTF_BOM)) { ret->cd = (iconv_t)-1; ret->to_charset = gavl_strdup(to); } else { ret->cd = iconv_open(to, from); if(ret->cd == (iconv_t)-1) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "iconv_open failed: %s", strerror(errno)); free(ret); return NULL; } } return ret; } #define BYTES_INCREMENT 32 #define ZEROTERMINATE_SIZE 4 char * gavl_convert_string_to_buffer(gavl_charset_converter_t * cnv, const char * in_string1, int len, gavl_buffer_t * buf) { char *inbuf; char *outbuf; int alloc_size; int output_pos; char *in_string; size_t inbytesleft; size_t outbytesleft; int done = 0; int i; if(len < 0) len = strlen(in_string1); in_string = malloc(len + 4); memcpy(in_string, in_string1, len); memset(in_string + len, 0, 4); if(cnv->cd == (iconv_t)-1) { if((len > 1) && ((uint8_t)in_string[0] == 0xff) && ((uint8_t)in_string[1] == 0xfe)) cnv->cd = iconv_open(cnv->to_charset, "UTF-16LE"); /* Byte order Big Endian */ else if((len > 1) && ((uint8_t)in_string[0] == 0xfe) && ((uint8_t)in_string[1] == 0xff)) cnv->cd = iconv_open(cnv->to_charset, "UTF-16BE"); /* UTF-8 */ else if(!strcmp(cnv->to_charset, "UTF-8")) { buf->len = 0; gavl_buffer_append_data_pad(buf, (const uint8_t *)in_string, len, 1); free(in_string); return (char*)buf->buf; } else cnv->cd = iconv_open(cnv->to_charset, "UTF-8"); } alloc_size = len + BYTES_INCREMENT; inbytesleft = len; outbytesleft = alloc_size; gavl_buffer_alloc(buf, alloc_size); // ret = malloc(alloc_size); inbuf = in_string; outbuf = (char*)buf->buf; while(!done) { if(iconv(cnv->cd, &inbuf, &inbytesleft, &outbuf, &outbytesleft) == (size_t)-1) { switch(errno) { case E2BIG: output_pos = (int)(outbuf - (char*)buf->buf); alloc_size += (len + BYTES_INCREMENT); outbytesleft += (len + BYTES_INCREMENT); gavl_buffer_alloc(buf, alloc_size + ZEROTERMINATE_SIZE); // Make sure we can zero pad after outbuf = (char*)buf->buf + output_pos; break; case EILSEQ: gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Invalid multibyte sequence"); done = 1; break; case EINVAL: gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Incomplete multibyte sequence"); done = 1; break; default: gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Got error: %s", strerror(errno)); done = 1; break; } } if(!inbytesleft) break; } /* Zero terminate */ for(i = 0; i < ZEROTERMINATE_SIZE; i++) outbuf[i] = '\0'; buf->len = outbuf - (char*)buf->buf; free(in_string); return (char*)buf->buf; } char * gavl_convert_string(gavl_charset_converter_t * cnv, const char * str, int len, int * out_len) { char * ret; gavl_buffer_t buf; gavl_buffer_init(&buf); ret = gavl_convert_string_to_buffer(cnv, str, len, &buf); if(out_len) *out_len = buf.len; return ret; } void gavl_charset_converter_destroy(gavl_charset_converter_t * cnv) { if(cnv->cd != (iconv_t)-1) iconv_close(cnv->cd); if(cnv->to_charset) free(cnv->to_charset); free(cnv); } bplaum-gavl-b9385e3/gavl/colorchannel.c000066400000000000000000001124401513252040200200250ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include // NULL #include #include "c/colorspace_tables.h" #include "c/colorspace_macros.h" typedef struct channel_data_s channel_data_t; typedef void (*channel_func)(channel_data_t * data, const gavl_video_frame_t * src, gavl_video_frame_t * dst); struct channel_data_s { int plane; int offset; int advance; int sub_h; int sub_v; int width; int height; channel_func extract_func; channel_func insert_func; }; /* * Extract functions */ static void extract_rgb15_r(channel_data_t * d, const gavl_video_frame_t * src, gavl_video_frame_t * dst) { int i, j; const uint16_t * src_ptr; uint8_t * dst_ptr; const uint8_t * src_ptr_start = src->planes[d->plane]; uint8_t * dst_ptr_start = dst->planes[0]; for(i = 0; i < d->height; i++) { src_ptr = (uint16_t *)src_ptr_start + d->offset; dst_ptr = dst_ptr_start; for(j = 0; j < d->width; j++) { *dst_ptr = RGB15_TO_R_8(*src_ptr); dst_ptr++; src_ptr += d->advance; } src_ptr_start += src->strides[d->plane]; dst_ptr_start += dst->strides[0]; } } static void extract_rgb15_g(channel_data_t * d, const gavl_video_frame_t * src, gavl_video_frame_t * dst) { int i, j; const uint16_t * src_ptr; uint8_t * dst_ptr; const uint8_t * src_ptr_start = src->planes[d->plane]; uint8_t * dst_ptr_start = dst->planes[0]; for(i = 0; i < d->height; i++) { src_ptr = (uint16_t *)src_ptr_start + d->offset; dst_ptr = dst_ptr_start; for(j = 0; j < d->width; j++) { *dst_ptr = RGB15_TO_G_8(*src_ptr); dst_ptr++; src_ptr += d->advance; } src_ptr_start += src->strides[d->plane]; dst_ptr_start += dst->strides[0]; } } static void extract_rgb15_b(channel_data_t * d, const gavl_video_frame_t * src, gavl_video_frame_t * dst) { int i, j; const uint16_t * src_ptr; uint8_t * dst_ptr; const uint8_t * src_ptr_start = src->planes[d->plane]; uint8_t * dst_ptr_start = dst->planes[0]; for(i = 0; i < d->height; i++) { src_ptr = (uint16_t *)src_ptr_start + d->offset; dst_ptr = dst_ptr_start; for(j = 0; j < d->width; j++) { *dst_ptr = RGB15_TO_B_8(*src_ptr); dst_ptr++; src_ptr += d->advance; } src_ptr_start += src->strides[d->plane]; dst_ptr_start += dst->strides[0]; } } static void extract_rgb16_r(channel_data_t * d, const gavl_video_frame_t * src, gavl_video_frame_t * dst) { int i, j; const uint16_t * src_ptr; uint8_t * dst_ptr; const uint8_t * src_ptr_start = src->planes[d->plane]; uint8_t * dst_ptr_start = dst->planes[0]; for(i = 0; i < d->height; i++) { src_ptr = (uint16_t *)src_ptr_start + d->offset; dst_ptr = dst_ptr_start; for(j = 0; j < d->width; j++) { *dst_ptr = RGB16_TO_R_8(*src_ptr); dst_ptr++; src_ptr += d->advance; } src_ptr_start += src->strides[d->plane]; dst_ptr_start += dst->strides[0]; } } static void extract_rgb16_g(channel_data_t * d, const gavl_video_frame_t * src, gavl_video_frame_t * dst) { int i, j; const uint16_t * src_ptr; uint8_t * dst_ptr; const uint8_t * src_ptr_start = src->planes[d->plane]; uint8_t * dst_ptr_start = dst->planes[0]; for(i = 0; i < d->height; i++) { src_ptr = (uint16_t *)src_ptr_start + d->offset; dst_ptr = dst_ptr_start; for(j = 0; j < d->width; j++) { *dst_ptr = RGB16_TO_G_8(*src_ptr); dst_ptr++; src_ptr += d->advance; } src_ptr_start += src->strides[d->plane]; dst_ptr_start += dst->strides[0]; } } static void extract_rgb16_b(channel_data_t * d, const gavl_video_frame_t * src, gavl_video_frame_t * dst) { int i, j; const uint16_t * src_ptr; uint8_t * dst_ptr; const uint8_t * src_ptr_start = src->planes[d->plane]; uint8_t * dst_ptr_start = dst->planes[0]; for(i = 0; i < d->height; i++) { src_ptr = (uint16_t *)src_ptr_start + d->offset; dst_ptr = dst_ptr_start; for(j = 0; j < d->width; j++) { *dst_ptr = RGB16_TO_B_8(*src_ptr); dst_ptr++; src_ptr += d->advance; } src_ptr_start += src->strides[d->plane]; dst_ptr_start += dst->strides[0]; } } static void extract_8(channel_data_t * d, const gavl_video_frame_t * src, gavl_video_frame_t * dst) { int i, j; const uint8_t * src_ptr; uint8_t * dst_ptr; const uint8_t * src_ptr_start = src->planes[d->plane]; uint8_t * dst_ptr_start = dst->planes[0]; for(i = 0; i < d->height; i++) { src_ptr = src_ptr_start + d->offset; dst_ptr = dst_ptr_start; for(j = 0; j < d->width; j++) { *dst_ptr = *src_ptr; dst_ptr++; src_ptr += d->advance; } src_ptr_start += src->strides[d->plane]; dst_ptr_start += dst->strides[0]; } } static void extract_8_y(channel_data_t * d, const gavl_video_frame_t * src, gavl_video_frame_t * dst) { int i, j; const uint8_t * src_ptr; uint8_t * dst_ptr; const uint8_t * src_ptr_start = src->planes[d->plane]; uint8_t * dst_ptr_start = dst->planes[0]; for(i = 0; i < d->height; i++) { src_ptr = src_ptr_start + d->offset; dst_ptr = dst_ptr_start; for(j = 0; j < d->width; j++) { *dst_ptr = Y_8_TO_YJ_8(*src_ptr); dst_ptr++; src_ptr += d->advance; } src_ptr_start += src->strides[d->plane]; dst_ptr_start += dst->strides[0]; } } static void extract_8_uv(channel_data_t * d, const gavl_video_frame_t * src, gavl_video_frame_t * dst) { int i, j; const uint8_t * src_ptr; uint8_t * dst_ptr; const uint8_t * src_ptr_start = src->planes[d->plane]; uint8_t * dst_ptr_start = dst->planes[0]; for(i = 0; i < d->height; i++) { src_ptr = src_ptr_start + d->offset; dst_ptr = dst_ptr_start; for(j = 0; j < d->width; j++) { *dst_ptr = UV_8_TO_UVJ_8(*src_ptr); dst_ptr++; src_ptr += d->advance; } src_ptr_start += src->strides[d->plane]; dst_ptr_start += dst->strides[0]; } } static void extract_16(channel_data_t * d, const gavl_video_frame_t * src, gavl_video_frame_t * dst) { int i, j; const uint16_t * src_ptr; uint16_t * dst_ptr; const uint8_t * src_ptr_start = src->planes[d->plane]; uint8_t * dst_ptr_start = dst->planes[0]; for(i = 0; i < d->height; i++) { src_ptr = (uint16_t *)src_ptr_start + d->offset; dst_ptr = (uint16_t *)dst_ptr_start; for(j = 0; j < d->width; j++) { *dst_ptr = *src_ptr; dst_ptr++; src_ptr += d->advance; } src_ptr_start += src->strides[d->plane]; dst_ptr_start += dst->strides[0]; } } static void extract_16_y(channel_data_t * d, const gavl_video_frame_t * src, gavl_video_frame_t * dst) { int i, j; const uint16_t * src_ptr; uint16_t * dst_ptr; const uint8_t * src_ptr_start = src->planes[d->plane]; uint8_t * dst_ptr_start = dst->planes[0]; for(i = 0; i < d->height; i++) { src_ptr = (uint16_t *)src_ptr_start + d->offset; dst_ptr = (uint16_t *)dst_ptr_start; for(j = 0; j < d->width; j++) { Y_16_TO_YJ_16(*src_ptr, *dst_ptr); dst_ptr++; src_ptr += d->advance; } src_ptr_start += src->strides[d->plane]; dst_ptr_start += dst->strides[0]; } } static void extract_16_uv(channel_data_t * d, const gavl_video_frame_t * src, gavl_video_frame_t * dst) { int i, j; const uint16_t * src_ptr; uint16_t * dst_ptr; const uint8_t * src_ptr_start = src->planes[d->plane]; uint8_t * dst_ptr_start = dst->planes[0]; for(i = 0; i < d->height; i++) { src_ptr = (uint16_t *)src_ptr_start + d->offset; dst_ptr = (uint16_t *)dst_ptr_start; for(j = 0; j < d->width; j++) { UV_16_TO_UVJ_16(*src_ptr, *dst_ptr); dst_ptr++; src_ptr += d->advance; } src_ptr_start += src->strides[d->plane]; dst_ptr_start += dst->strides[0]; } } static void extract_float(channel_data_t * d, const gavl_video_frame_t * src, gavl_video_frame_t * dst) { int i, j; const float * src_ptr; float * dst_ptr; const uint8_t * src_ptr_start = src->planes[d->plane]; uint8_t * dst_ptr_start = dst->planes[0]; for(i = 0; i < d->height; i++) { src_ptr = (float *)src_ptr_start + d->offset; dst_ptr = (float *)dst_ptr_start; for(j = 0; j < d->width; j++) { *dst_ptr = *src_ptr; dst_ptr++; src_ptr += d->advance; } src_ptr_start += src->strides[d->plane]; dst_ptr_start += dst->strides[0]; } } static void extract_float_uv(channel_data_t * d, const gavl_video_frame_t * src, gavl_video_frame_t * dst) { int i, j; const float * src_ptr; float * dst_ptr; const uint8_t * src_ptr_start = src->planes[d->plane]; uint8_t * dst_ptr_start = dst->planes[0]; for(i = 0; i < d->height; i++) { src_ptr = (float *)src_ptr_start + d->offset; dst_ptr = (float *)dst_ptr_start; for(j = 0; j < d->width; j++) { *dst_ptr = *src_ptr + 0.5; // -0.5 .. 0.5 -> 0.0 .. 1.0 dst_ptr++; src_ptr += d->advance; } src_ptr_start += src->strides[d->plane]; dst_ptr_start += dst->strides[0]; } } /* * Insert functions */ // RRRRRGGGGGGBBBBB #define INSERT_RGB16_R(src, dst) \ dst &= ~RGB16_UPPER_MASK; \ dst |= ((int)src<<8)&RGB16_UPPER_MASK #define INSERT_RGB16_G(src, dst) \ dst &= ~RGB16_MIDDLE_MASK; \ dst |= ((int)src<<3)&RGB16_MIDDLE_MASK #define INSERT_RGB16_B(src, dst) \ dst &= ~RGB15_LOWER_MASK; \ dst |= (src>>3) // 0RRRRRGGGGGBBBBB #define INSERT_RGB15_R(src, dst) \ dst &= ~RGB15_UPPER_MASK; \ dst |= ((int)src<<7)&RGB15_UPPER_MASK #define INSERT_RGB15_G(src, dst) \ dst &= ~RGB15_MIDDLE_MASK; \ dst |= ((int)src<<2)&RGB15_MIDDLE_MASK #define INSERT_RGB15_B(src, dst) \ dst &= ~RGB15_LOWER_MASK; \ dst |= (src>>3) static void insert_rgb15_r(channel_data_t * d, const gavl_video_frame_t * src, gavl_video_frame_t * dst) { int i, j; uint16_t * dst_ptr; const uint8_t * src_ptr; uint8_t * dst_ptr_start = dst->planes[d->plane]; const uint8_t * src_ptr_start = src->planes[0]; for(i = 0; i < d->height; i++) { dst_ptr = (uint16_t *)dst_ptr_start + d->offset; src_ptr = src_ptr_start; for(j = 0; j < d->width; j++) { INSERT_RGB15_R(*src_ptr, *dst_ptr); src_ptr++; dst_ptr += d->advance; } dst_ptr_start += dst->strides[d->plane]; src_ptr_start += src->strides[0]; } } static void insert_rgb15_g(channel_data_t * d, const gavl_video_frame_t * src, gavl_video_frame_t * dst) { int i, j; uint16_t * dst_ptr; const uint8_t * src_ptr; uint8_t * dst_ptr_start = dst->planes[d->plane]; const uint8_t * src_ptr_start = src->planes[0]; for(i = 0; i < d->height; i++) { dst_ptr = (uint16_t *)dst_ptr_start + d->offset; src_ptr = src_ptr_start; for(j = 0; j < d->width; j++) { INSERT_RGB15_G(*src_ptr, *dst_ptr); src_ptr++; dst_ptr += d->advance; } dst_ptr_start += dst->strides[d->plane]; src_ptr_start += src->strides[0]; } } static void insert_rgb15_b(channel_data_t * d, const gavl_video_frame_t * src, gavl_video_frame_t * dst) { int i, j; uint16_t * dst_ptr; const uint8_t * src_ptr; uint8_t * dst_ptr_start = dst->planes[d->plane]; const uint8_t * src_ptr_start = src->planes[0]; for(i = 0; i < d->height; i++) { dst_ptr = (uint16_t *)dst_ptr_start + d->offset; src_ptr = src_ptr_start; for(j = 0; j < d->width; j++) { INSERT_RGB15_B(*src_ptr, *dst_ptr); src_ptr++; dst_ptr += d->advance; } dst_ptr_start += dst->strides[d->plane]; src_ptr_start += src->strides[0]; } } static void insert_rgb16_r(channel_data_t * d, const gavl_video_frame_t * src, gavl_video_frame_t * dst) { int i, j; uint16_t * dst_ptr; const uint8_t * src_ptr; uint8_t * dst_ptr_start = dst->planes[d->plane]; const uint8_t * src_ptr_start = src->planes[0]; for(i = 0; i < d->height; i++) { dst_ptr = (uint16_t *)dst_ptr_start + d->offset; src_ptr = src_ptr_start; for(j = 0; j < d->width; j++) { INSERT_RGB16_R(*src_ptr, *dst_ptr); src_ptr++; dst_ptr += d->advance; } dst_ptr_start += dst->strides[d->plane]; src_ptr_start += src->strides[0]; } } static void insert_rgb16_g(channel_data_t * d, const gavl_video_frame_t * src, gavl_video_frame_t * dst) { int i, j; uint16_t * dst_ptr; const uint8_t * src_ptr; uint8_t * dst_ptr_start = dst->planes[d->plane]; const uint8_t * src_ptr_start = src->planes[0]; for(i = 0; i < d->height; i++) { dst_ptr = (uint16_t *)dst_ptr_start + d->offset; src_ptr = src_ptr_start; for(j = 0; j < d->width; j++) { INSERT_RGB16_G(*src_ptr, *dst_ptr); src_ptr++; dst_ptr += d->advance; } dst_ptr_start += dst->strides[d->plane]; src_ptr_start += src->strides[0]; } } static void insert_rgb16_b(channel_data_t * d, const gavl_video_frame_t * src, gavl_video_frame_t * dst) { int i, j; uint16_t * dst_ptr; const uint8_t * src_ptr; uint8_t * dst_ptr_start = dst->planes[d->plane]; const uint8_t * src_ptr_start = src->planes[0]; for(i = 0; i < d->height; i++) { dst_ptr = (uint16_t *)dst_ptr_start + d->offset; src_ptr = src_ptr_start; for(j = 0; j < d->width; j++) { INSERT_RGB16_B(*src_ptr, *dst_ptr); src_ptr++; dst_ptr += d->advance; } dst_ptr_start += dst->strides[d->plane]; src_ptr_start += src->strides[0]; } } static void insert_8(channel_data_t * d, const gavl_video_frame_t * src, gavl_video_frame_t * dst) { int i, j; uint8_t * dst_ptr; const uint8_t * src_ptr; uint8_t * dst_ptr_start = dst->planes[d->plane]; const uint8_t * src_ptr_start = src->planes[0]; for(i = 0; i < d->height; i++) { dst_ptr = dst_ptr_start + d->offset; src_ptr = src_ptr_start; for(j = 0; j < d->width; j++) { *dst_ptr = *src_ptr; src_ptr++; dst_ptr += d->advance; } dst_ptr_start += dst->strides[d->plane]; src_ptr_start += src->strides[0]; } } static void insert_8_y(channel_data_t * d, const gavl_video_frame_t * src, gavl_video_frame_t * dst) { int i, j; uint8_t * dst_ptr; const uint8_t * src_ptr; uint8_t * dst_ptr_start = dst->planes[d->plane]; const uint8_t * src_ptr_start = src->planes[0]; for(i = 0; i < d->height; i++) { dst_ptr = dst_ptr_start + d->offset; src_ptr = src_ptr_start; for(j = 0; j < d->width; j++) { *dst_ptr = YJ_8_TO_Y_8(*src_ptr); src_ptr++; dst_ptr += d->advance; } dst_ptr_start += dst->strides[d->plane]; src_ptr_start += src->strides[0]; } } static void insert_8_uv(channel_data_t * d, const gavl_video_frame_t * src, gavl_video_frame_t * dst) { int i, j; uint8_t * dst_ptr; const uint8_t * src_ptr; uint8_t * dst_ptr_start = dst->planes[d->plane]; const uint8_t * src_ptr_start = src->planes[0]; for(i = 0; i < d->height; i++) { dst_ptr = dst_ptr_start + d->offset; src_ptr = src_ptr_start; for(j = 0; j < d->width; j++) { *dst_ptr = UVJ_8_TO_UV_8(*src_ptr); src_ptr++; dst_ptr += d->advance; } dst_ptr_start += dst->strides[d->plane]; src_ptr_start += src->strides[0]; } } static void insert_16(channel_data_t * d, const gavl_video_frame_t * src, gavl_video_frame_t * dst) { int i, j; uint16_t * dst_ptr; const uint16_t * src_ptr; uint8_t * dst_ptr_start = dst->planes[d->plane]; const uint8_t * src_ptr_start = src->planes[0]; for(i = 0; i < d->height; i++) { dst_ptr = (uint16_t *)dst_ptr_start + d->offset; src_ptr = (uint16_t *)src_ptr_start; for(j = 0; j < d->width; j++) { *dst_ptr = *src_ptr; src_ptr++; dst_ptr += d->advance; } dst_ptr_start += dst->strides[d->plane]; src_ptr_start += src->strides[0]; } } static void insert_16_y(channel_data_t * d, const gavl_video_frame_t * src, gavl_video_frame_t * dst) { int i, j; uint16_t * dst_ptr; const uint16_t * src_ptr; uint8_t * dst_ptr_start = dst->planes[d->plane]; const uint8_t * src_ptr_start = src->planes[0]; for(i = 0; i < d->height; i++) { dst_ptr = (uint16_t *)dst_ptr_start + d->offset; src_ptr = (uint16_t *)src_ptr_start; for(j = 0; j < d->width; j++) { YJ_16_TO_Y_16(*src_ptr, *dst_ptr); src_ptr++; dst_ptr += d->advance; } dst_ptr_start += dst->strides[d->plane]; src_ptr_start += src->strides[0]; } } static void insert_16_uv(channel_data_t * d, const gavl_video_frame_t * src, gavl_video_frame_t * dst) { int i, j; uint16_t * dst_ptr; const uint16_t * src_ptr; uint8_t * dst_ptr_start = dst->planes[d->plane]; const uint8_t * src_ptr_start = src->planes[0]; for(i = 0; i < d->height; i++) { dst_ptr = (uint16_t *)dst_ptr_start + d->offset; src_ptr = (uint16_t *)src_ptr_start; for(j = 0; j < d->width; j++) { UVJ_16_TO_UV_16(*src_ptr, *dst_ptr); src_ptr++; dst_ptr += d->advance; } dst_ptr_start += dst->strides[d->plane]; src_ptr_start += src->strides[0]; } } static void insert_float(channel_data_t * d, const gavl_video_frame_t * src, gavl_video_frame_t * dst) { int i, j; float * dst_ptr; const float * src_ptr; uint8_t * dst_ptr_start = dst->planes[d->plane]; const uint8_t * src_ptr_start = src->planes[0]; for(i = 0; i < d->height; i++) { dst_ptr = (float*)dst_ptr_start + d->offset; src_ptr = (float*)src_ptr_start; for(j = 0; j < d->width; j++) { *dst_ptr = *src_ptr; src_ptr++; dst_ptr += d->advance; } dst_ptr_start += dst->strides[d->plane]; src_ptr_start += src->strides[0]; } } static void insert_float_uv(channel_data_t * d, const gavl_video_frame_t * src, gavl_video_frame_t * dst) { int i, j; float * dst_ptr; const float * src_ptr; uint8_t * dst_ptr_start = dst->planes[d->plane]; const uint8_t * src_ptr_start = src->planes[0]; for(i = 0; i < d->height; i++) { dst_ptr = (float*)dst_ptr_start + d->offset; src_ptr = (float*)src_ptr_start; for(j = 0; j < d->width; j++) { *dst_ptr = *src_ptr - 0.5; src_ptr++; dst_ptr += d->advance; } dst_ptr_start += dst->strides[d->plane]; src_ptr_start += src->strides[0]; } } /* Get channel properties */ static int get_channel_properties(gavl_pixelformat_t src_format, gavl_pixelformat_t * dst_format_ret, gavl_color_channel_t ch, channel_data_t * d) { gavl_pixelformat_t dst_format = GAVL_PIXELFORMAT_NONE; d->plane = 0; d->offset = 0; d->advance = 1; d->sub_h = 1; d->sub_v = 1; switch(src_format) { case GAVL_PIXELFORMAT_NONE: return 0; case GAVL_GRAY_8: dst_format = GAVL_GRAY_8; d->extract_func = extract_8; d->insert_func = insert_8; switch(ch) { case GAVL_CCH_Y: break; default: return 0; } break; case GAVL_GRAY_16: dst_format = GAVL_GRAY_16; d->extract_func = extract_16; d->insert_func = insert_16; switch(ch) { case GAVL_CCH_Y: break; default: return 0; } break; case GAVL_GRAY_FLOAT: dst_format = GAVL_GRAY_FLOAT; d->extract_func = extract_float; d->insert_func = insert_float; switch(ch) { case GAVL_CCH_Y: break; default: return 0; } break; case GAVL_GRAYA_16: dst_format = GAVL_GRAY_8; d->extract_func = extract_8; d->insert_func = insert_8; d->advance = 2; switch(ch) { case GAVL_CCH_Y: break; case GAVL_CCH_ALPHA: d->offset = 1; break; default: return 0; } break; case GAVL_GRAYA_32: dst_format = GAVL_GRAY_16; d->extract_func = extract_16; d->insert_func = insert_16; d->advance = 2; switch(ch) { case GAVL_CCH_Y: break; case GAVL_CCH_ALPHA: d->offset = 1; break; default: return 0; } break; case GAVL_GRAYA_FLOAT: dst_format = GAVL_GRAY_FLOAT; d->extract_func = extract_float; d->insert_func = insert_float; d->advance = 2; switch(ch) { case GAVL_CCH_Y: break; case GAVL_CCH_ALPHA: d->offset = 1; break; default: return 0; } break; case GAVL_RGB_15: dst_format = GAVL_GRAY_8; switch(ch) { case GAVL_CCH_RED: d->extract_func = extract_rgb15_r; d->insert_func = insert_rgb15_r; break; case GAVL_CCH_GREEN: d->extract_func = extract_rgb15_g; d->insert_func = insert_rgb15_g; break; case GAVL_CCH_BLUE: d->extract_func = extract_rgb15_b; d->insert_func = insert_rgb15_b; break; default: return 0; } break; case GAVL_BGR_15: dst_format = GAVL_GRAY_8; switch(ch) { case GAVL_CCH_RED: d->extract_func = extract_rgb15_b; d->insert_func = insert_rgb15_b; break; case GAVL_CCH_GREEN: d->extract_func = extract_rgb15_g; d->insert_func = insert_rgb15_g; break; case GAVL_CCH_BLUE: d->extract_func = extract_rgb15_r; d->insert_func = insert_rgb15_r; break; default: return 0; } break; case GAVL_RGB_16: dst_format = GAVL_GRAY_8; switch(ch) { case GAVL_CCH_RED: d->extract_func = extract_rgb16_r; d->insert_func = insert_rgb16_r; break; case GAVL_CCH_GREEN: d->extract_func = extract_rgb16_g; d->insert_func = insert_rgb16_g; break; case GAVL_CCH_BLUE: d->extract_func = extract_rgb16_b; d->insert_func = insert_rgb16_b; break; default: return 0; } break; case GAVL_BGR_16: dst_format = GAVL_GRAY_8; switch(ch) { case GAVL_CCH_RED: d->extract_func = extract_rgb16_b; d->insert_func = insert_rgb16_b; break; case GAVL_CCH_GREEN: d->extract_func = extract_rgb16_g; d->insert_func = insert_rgb16_g; break; case GAVL_CCH_BLUE: d->extract_func = extract_rgb16_r; d->insert_func = insert_rgb16_r; break; default: return 0; } break; case GAVL_RGB_24: dst_format = GAVL_GRAY_8; d->extract_func = extract_8; d->insert_func = insert_8; d->advance = 3; switch(ch) { case GAVL_CCH_RED: d->offset = 0; break; case GAVL_CCH_GREEN: d->offset = 1; break; case GAVL_CCH_BLUE: d->offset = 2; break; default: return 0; } break; case GAVL_BGR_24: dst_format = GAVL_GRAY_8; d->extract_func = extract_8; d->insert_func = insert_8; d->advance = 3; switch(ch) { case GAVL_CCH_RED: d->offset = 2; break; case GAVL_CCH_GREEN: d->offset = 1; break; case GAVL_CCH_BLUE: d->offset = 0; break; default: return 0; } break; case GAVL_RGB_32: dst_format = GAVL_GRAY_8; d->extract_func = extract_8; d->insert_func = insert_8; d->advance = 4; switch(ch) { case GAVL_CCH_RED: d->offset = 0; break; case GAVL_CCH_GREEN: d->offset = 1; break; case GAVL_CCH_BLUE: d->offset = 2; break; default: return 0; } break; case GAVL_BGR_32: dst_format = GAVL_GRAY_8; d->extract_func = extract_8; d->insert_func = insert_8; d->advance = 4; switch(ch) { case GAVL_CCH_RED: d->offset = 2; break; case GAVL_CCH_GREEN: d->offset = 1; break; case GAVL_CCH_BLUE: d->offset = 0; break; default: return 0; } break; case GAVL_RGBA_32: dst_format = GAVL_GRAY_8; d->extract_func = extract_8; d->insert_func = insert_8; d->advance = 4; switch(ch) { case GAVL_CCH_RED: d->offset = 0; break; case GAVL_CCH_GREEN: d->offset = 1; break; case GAVL_CCH_BLUE: d->offset = 2; break; case GAVL_CCH_ALPHA: d->offset = 3; break; default: return 0; } break; case GAVL_RGB_48: dst_format = GAVL_GRAY_16; d->extract_func = extract_16; d->insert_func = insert_16; d->advance = 3; switch(ch) { case GAVL_CCH_RED: d->offset = 0; break; case GAVL_CCH_GREEN: d->offset = 1; break; case GAVL_CCH_BLUE: d->offset = 2; break; default: return 0; } break; case GAVL_RGBA_64: dst_format = GAVL_GRAY_16; d->extract_func = extract_16; d->insert_func = insert_16; d->advance = 4; switch(ch) { case GAVL_CCH_RED: d->offset = 0; break; case GAVL_CCH_GREEN: d->offset = 1; break; case GAVL_CCH_BLUE: d->offset = 2; break; case GAVL_CCH_ALPHA: d->offset = 3; break; default: return 0; } break; case GAVL_RGB_FLOAT: dst_format = GAVL_GRAY_FLOAT; d->extract_func = extract_float; d->insert_func = insert_float; d->advance = 3; switch(ch) { case GAVL_CCH_RED: d->offset = 0; break; case GAVL_CCH_GREEN: d->offset = 1; break; case GAVL_CCH_BLUE: d->offset = 2; break; default: return 0; } break; case GAVL_RGBA_FLOAT: dst_format = GAVL_GRAY_FLOAT; d->extract_func = extract_float; d->insert_func = insert_float; d->advance = 4; switch(ch) { case GAVL_CCH_RED: d->offset = 0; break; case GAVL_CCH_GREEN: d->offset = 1; break; case GAVL_CCH_BLUE: d->offset = 2; break; case GAVL_CCH_ALPHA: d->offset = 3; break; default: return 0; } break; case GAVL_YUY2: dst_format = GAVL_GRAY_8; switch(ch) { case GAVL_CCH_Y: d->extract_func = extract_8_y; d->insert_func = insert_8_y; d->offset = 0; d->advance = 2; break; case GAVL_CCH_CB: d->extract_func = extract_8_uv; d->insert_func = insert_8_uv; d->offset = 1; d->advance = 4; break; case GAVL_CCH_CR: d->extract_func = extract_8_uv; d->insert_func = insert_8_uv; d->offset = 3; d->advance = 4; break; default: return 0; } break; case GAVL_UYVY: dst_format = GAVL_GRAY_8; switch(ch) { case GAVL_CCH_Y: d->extract_func = extract_8_y; d->insert_func = insert_8_y; d->offset = 1; d->advance = 2; break; case GAVL_CCH_CB: d->extract_func = extract_8_uv; d->insert_func = insert_8_uv; d->offset = 0; d->advance = 4; break; case GAVL_CCH_CR: d->extract_func = extract_8_uv; d->insert_func = insert_8_uv; d->offset = 2; d->advance = 4; break; default: return 0; } break; case GAVL_YUVA_32: dst_format = GAVL_GRAY_8; d->advance = 4; switch(ch) { case GAVL_CCH_Y: d->extract_func = extract_8_y; d->insert_func = insert_8_y; d->offset = 0; break; case GAVL_CCH_CB: d->extract_func = extract_8_uv; d->insert_func = insert_8_uv; d->offset = 1; break; case GAVL_CCH_CR: d->extract_func = extract_8_uv; d->insert_func = insert_8_uv; d->offset = 2; break; case GAVL_CCH_ALPHA: d->offset = 3; d->extract_func = extract_8; d->insert_func = insert_8; break; default: return 0; } break; case GAVL_YUVA_64: dst_format = GAVL_GRAY_16; d->advance = 4; switch(ch) { case GAVL_CCH_Y: d->extract_func = extract_16_y; d->insert_func = insert_16_y; d->offset = 0; break; case GAVL_CCH_CB: d->extract_func = extract_16_uv; d->insert_func = insert_16_uv; d->offset = 1; break; case GAVL_CCH_CR: d->extract_func = extract_16_uv; d->insert_func = insert_16_uv; d->offset = 2; break; case GAVL_CCH_ALPHA: d->extract_func = extract_16; d->insert_func = insert_16; d->offset = 3; break; default: return 0; } break; case GAVL_YUV_FLOAT: dst_format = GAVL_GRAY_FLOAT; d->advance = 3; switch(ch) { case GAVL_CCH_Y: d->extract_func = extract_float; d->insert_func = insert_float; d->offset = 0; break; case GAVL_CCH_CB: d->extract_func = extract_float_uv; d->insert_func = insert_float_uv; d->offset = 1; break; case GAVL_CCH_CR: d->extract_func = extract_float_uv; d->insert_func = insert_float_uv; d->offset = 2; break; default: return 0; } break; case GAVL_YUVA_FLOAT: dst_format = GAVL_GRAY_FLOAT; d->advance = 4; switch(ch) { case GAVL_CCH_Y: d->extract_func = extract_float; d->insert_func = insert_float; d->offset = 0; break; case GAVL_CCH_CB: d->extract_func = extract_float_uv; d->insert_func = insert_float_uv; d->offset = 1; break; case GAVL_CCH_CR: d->extract_func = extract_float_uv; d->insert_func = insert_float_uv; d->offset = 2; break; case GAVL_CCH_ALPHA: d->extract_func = extract_float; d->insert_func = insert_float; d->offset = 3; break; default: return 0; } break; case GAVL_YUV_420_P: case GAVL_YUV_422_P: case GAVL_YUV_444_P: case GAVL_YUV_411_P: case GAVL_YUV_410_P: dst_format = GAVL_GRAY_8; switch(ch) { case GAVL_CCH_Y: d->extract_func = extract_8_y; d->insert_func = insert_8_y; d->plane = 0; break; case GAVL_CCH_CB: d->extract_func = extract_8_uv; d->insert_func = insert_8_uv; d->plane = 1; break; case GAVL_CCH_CR: d->extract_func = extract_8_uv; d->insert_func = insert_8_uv; d->plane = 2; break; default: return 0; } break; case GAVL_YUVJ_420_P: case GAVL_YUVJ_422_P: case GAVL_YUVJ_444_P: dst_format = GAVL_GRAY_8; d->extract_func = extract_8; d->insert_func = insert_8; switch(ch) { case GAVL_CCH_Y: d->plane = 0; break; case GAVL_CCH_CB: d->plane = 1; break; case GAVL_CCH_CR: d->plane = 2; break; default: return 0; } break; case GAVL_YUV_444_P_16: case GAVL_YUV_422_P_16: dst_format = GAVL_GRAY_16; switch(ch) { case GAVL_CCH_Y: d->extract_func = extract_16_y; d->insert_func = insert_16_y; d->plane = 0; break; case GAVL_CCH_CB: d->extract_func = extract_16_uv; d->insert_func = insert_16_uv; d->plane = 1; break; case GAVL_CCH_CR: d->extract_func = extract_16_uv; d->insert_func = insert_16_uv; d->plane = 2; break; default: return 0; } break; } /* Get chroma subsampling */ if(d->plane || (((src_format == GAVL_YUY2) || (src_format == GAVL_UYVY)) && (ch != GAVL_CCH_Y))) gavl_pixelformat_chroma_sub(src_format, &d->sub_h, &d->sub_v); /* Return stuff */ if(dst_format_ret) *dst_format_ret = dst_format; return 1; } int gavl_get_color_channel_format(const gavl_video_format_t * frame_format, gavl_video_format_t * channel_format, gavl_color_channel_t ch) { channel_data_t d; gavl_video_format_copy(channel_format, frame_format); if(!get_channel_properties(frame_format->pixelformat, &channel_format->pixelformat, ch, &d)) return 0; channel_format->image_width /= d.sub_h; channel_format->frame_width /= d.sub_h; channel_format->image_height /= d.sub_v; channel_format->frame_height /= d.sub_v; return 1; } int gavl_video_frame_extract_channel(const gavl_video_format_t * format, gavl_color_channel_t ch, const gavl_video_frame_t * src, gavl_video_frame_t * dst) { channel_data_t d; if(!get_channel_properties(format->pixelformat, NULL, ch, &d)) return 0; d.width = format->image_width / d.sub_h; d.height = format->image_height / d.sub_v; d.extract_func(&d, src, dst); return 1; } int gavl_video_frame_insert_channel(const gavl_video_format_t * format, gavl_color_channel_t ch, const gavl_video_frame_t * src, gavl_video_frame_t * dst) { channel_data_t d; if(!get_channel_properties(format->pixelformat, NULL, ch, &d)) return 0; d.width = format->image_width / d.sub_h; d.height = format->image_height / d.sub_v; d.insert_func(&d, src, dst); return 1; } bplaum-gavl-b9385e3/gavl/colorspace.c000066400000000000000000004357711513252040200175270ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include #include #include #include #include #include #ifdef WORDS_BIGENDIAN static const uint32_t rgb32_masks[4] = { 0xff000000, 0x00ff0000, 0x0000ff00, 0x00000000 }; static const uint32_t rgba32_masks[4] = { 0xff000000, 0x00ff0000, 0x0000ff00, 0x000000ff }; static const uint32_t bgr32_masks[4] = { 0x0000ff00, 0x00ff0000, 0xff000000, 0x00000000 }; #else static const uint32_t rgb32_masks[4] = { 0x000000ff, 0x0000ff00, 0x00ff0000, 0x00000000 }; static const uint32_t rgba32_masks[4] = { 0x000000ff, 0x0000ff00, 0x00ff0000, 0xff000000 }; static const uint32_t bgr32_masks[4] = { 0x00ff0000, 0x0000ff00, 0x000000ff, 0x00000000 }; #endif typedef struct { gavl_pixelformat_t pixelformat; const char * name; const char * short_name; const uint32_t * masks; } pixelformat_tab_t; const pixelformat_tab_t pixelformat_tab[] = { { GAVL_PIXELFORMAT_NONE, "Undefined", "unknown" }, // Must be first { GAVL_GRAY_8, "8 bpp gray", "gray8" }, { GAVL_GRAY_16, "16 bpp gray", "gray16" }, { GAVL_GRAY_FLOAT, "Float gray", "grayf" }, { GAVL_GRAYA_16, "16 bpp gray + alpha", "graya16" }, { GAVL_GRAYA_32, "32 bpp gray + alpha", "graya32" }, { GAVL_GRAYA_FLOAT, "Float gray + alpha", "grayaf" }, { GAVL_RGB_15, "15 bpp RGB", "rgb15" }, { GAVL_BGR_15, "15 bpp BGR", "bgr15" }, { GAVL_RGB_16, "16 bpp RGB", "rgb16" }, { GAVL_BGR_16, "16 bpp BGR", "bgr16" }, { GAVL_RGB_24, "24 bpp RGB", "rgb24" }, { GAVL_BGR_24, "24 bpp BGR", "bgr24" }, { GAVL_RGB_32, "32 bpp RGB", "rgb32", rgb32_masks }, { GAVL_BGR_32, "32 bpp BGR", "bgr32", bgr32_masks }, { GAVL_RGBA_32, "32 bpp RGBA", "rgba32", rgba32_masks }, { GAVL_RGB_48, "48 bpp RGB", "rgb48" }, { GAVL_RGBA_64, "64 bpp RGBA", "rgba64" }, { GAVL_RGB_FLOAT, "Float RGB", "rgbf" }, { GAVL_RGBA_FLOAT, "Float RGBA", "rgbaf" }, { GAVL_YUY2, "YUV 422 (YUY2)", "yuy2" }, { GAVL_UYVY, "YUV 422 (UYVY)", "uyvy" }, { GAVL_YUVA_32, "YUVA 4444 (8 bit)", "yuva32" }, { GAVL_YUVA_64, "YUVA 4444 (16 bit)", "yuva64" }, { GAVL_YUVA_FLOAT, "YUVA 4444 (float)", "yuvaf" }, { GAVL_YUV_FLOAT, "YUV 444 (float)", "yuv444pf" }, { GAVL_YUV_420_P, "YUV 420 Planar", "yuv420p8" }, { GAVL_YUV_410_P, "YUV 410 Planar", "yuv410p8" }, { GAVL_YUV_411_P, "YUV 411 Planar", "yuv411p8" }, { GAVL_YUV_422_P, "YUV 422 Planar", "yuv422p8" }, { GAVL_YUV_422_P_16, "YUV 422 Planar (16 bit)", "yuv422p16" }, { GAVL_YUV_444_P, "YUV 444 Planar", "yuv444p8" }, { GAVL_YUV_444_P_16, "YUV 444 Planar (16 bit)", "yuv444p16" }, { GAVL_YUVJ_420_P, "YUVJ 420 Planar", "yuvj420p8" }, { GAVL_YUVJ_422_P, "YUVJ 422 Planar", "yuvj422p8" }, { GAVL_YUVJ_444_P, "YUVJ 444 Planar", "yuvj444p8" } }; static const int num_pixelformats = sizeof(pixelformat_tab)/sizeof(pixelformat_tab[0]); int gavl_pixelformat_num_planes(gavl_pixelformat_t csp) { switch(csp) { case GAVL_GRAY_8: case GAVL_GRAY_16: case GAVL_GRAY_FLOAT: case GAVL_GRAYA_16: case GAVL_GRAYA_32: case GAVL_GRAYA_FLOAT: case GAVL_RGB_15: case GAVL_BGR_15: case GAVL_RGB_16: case GAVL_BGR_16: case GAVL_RGB_24: case GAVL_BGR_24: case GAVL_RGB_32: case GAVL_BGR_32: case GAVL_RGBA_32: case GAVL_YUY2: case GAVL_UYVY: case GAVL_YUVA_32: case GAVL_YUVA_64: case GAVL_RGB_48: case GAVL_RGBA_64: case GAVL_RGB_FLOAT: case GAVL_RGBA_FLOAT: case GAVL_YUV_FLOAT: case GAVL_YUVA_FLOAT: return 1; break; case GAVL_YUV_420_P: case GAVL_YUV_410_P: case GAVL_YUV_422_P: case GAVL_YUV_411_P: case GAVL_YUV_444_P: case GAVL_YUV_422_P_16: case GAVL_YUV_444_P_16: case GAVL_YUVJ_420_P: case GAVL_YUVJ_422_P: case GAVL_YUVJ_444_P: return 3; break; case GAVL_PIXELFORMAT_NONE: return 0; break; } return 0; } void gavl_pixelformat_chroma_sub(gavl_pixelformat_t csp, int * sub_hp, int * sub_vp) { int sub_h = 0; int sub_v = 0; switch(csp) { case GAVL_RGB_15: case GAVL_BGR_15: case GAVL_RGB_16: case GAVL_BGR_16: case GAVL_RGB_24: case GAVL_BGR_24: case GAVL_RGB_32: case GAVL_BGR_32: case GAVL_RGBA_32: case GAVL_YUV_444_P: case GAVL_YUV_444_P_16: case GAVL_YUVJ_444_P: case GAVL_YUVA_32: case GAVL_YUVA_64: case GAVL_RGB_48: case GAVL_RGBA_64: case GAVL_RGB_FLOAT: case GAVL_RGBA_FLOAT: case GAVL_YUV_FLOAT: case GAVL_YUVA_FLOAT: case GAVL_GRAY_8: case GAVL_GRAY_16: case GAVL_GRAY_FLOAT: case GAVL_GRAYA_16: case GAVL_GRAYA_32: case GAVL_GRAYA_FLOAT: sub_h = 1; sub_v = 1; break; case GAVL_YUV_420_P: case GAVL_YUVJ_420_P: sub_h = 2; sub_v = 2; break; case GAVL_YUV_422_P: case GAVL_YUV_422_P_16: case GAVL_YUVJ_422_P: case GAVL_YUY2: case GAVL_UYVY: sub_h = 2; sub_v = 1; break; case GAVL_YUV_411_P: sub_h = 4; sub_v = 1; break; case GAVL_YUV_410_P: sub_h = 4; sub_v = 4; break; case GAVL_PIXELFORMAT_NONE: break; } if(sub_hp) *sub_hp = sub_h; if(sub_vp) *sub_vp = sub_v; } int gavl_num_pixelformats() { return num_pixelformats - 1; } gavl_pixelformat_t gavl_get_pixelformat(int index) { return pixelformat_tab[index].pixelformat; } const char * gavl_pixelformat_to_string(gavl_pixelformat_t pixelformat) { int i; for(i = 0; i < num_pixelformats; i++) { if(pixelformat_tab[i].pixelformat == pixelformat) return pixelformat_tab[i].name; } return NULL; } const char * gavl_pixelformat_to_short_string(gavl_pixelformat_t pixelformat) { int i; for(i = 0; i < num_pixelformats; i++) { if(pixelformat_tab[i].pixelformat == pixelformat) return pixelformat_tab[i].short_name; } return pixelformat_tab[0].short_name; } gavl_pixelformat_t gavl_string_to_pixelformat(const char * name) { int i; for(i = 0; i < num_pixelformats; i++) { if(!strcmp(pixelformat_tab[i].name, name)) return pixelformat_tab[i].pixelformat; } return GAVL_PIXELFORMAT_NONE; } gavl_pixelformat_t gavl_short_string_to_pixelformat(const char * name) { int i; for(i = 0; i < num_pixelformats; i++) { if(!strcmp(pixelformat_tab[i].short_name, name)) return pixelformat_tab[i].pixelformat; } return GAVL_PIXELFORMAT_NONE; } const uint32_t * gavl_pixelformat_get_masks(gavl_pixelformat_t pixelformat) { int i; for(i = 0; i < num_pixelformats; i++) { if(pixelformat_tab[i].pixelformat == pixelformat) return pixelformat_tab[i].masks; } return NULL; } static gavl_pixelformat_function_table_t * create_pixelformat_function_table(const gavl_video_options_t * opt, int width, int height) { gavl_pixelformat_function_table_t * csp_tab; csp_tab = calloc(1,sizeof(gavl_pixelformat_function_table_t)); // fprintf(stderr, "create_pixelformat_function_table, flags: %08x, q: %d\n", // opt->accel_flags, opt->quality); /* Standard C-routines, always complete */ if(opt->quality || (opt->accel_flags & GAVL_ACCEL_C)) { gavl_init_rgb_rgb_funcs_c(csp_tab, opt); gavl_init_rgb_yuv_funcs_c(csp_tab, opt); gavl_init_yuv_rgb_funcs_c(csp_tab, opt); gavl_init_yuv_yuv_funcs_c(csp_tab, opt); gavl_init_rgb_gray_funcs_c(csp_tab, opt); gavl_init_gray_rgb_funcs_c(csp_tab, opt); gavl_init_yuv_gray_funcs_c(csp_tab, opt); gavl_init_gray_yuv_funcs_c(csp_tab, opt); gavl_init_gray_gray_funcs_c(csp_tab, opt); } #ifdef HAVE_MMX if(opt->accel_flags & GAVL_ACCEL_MMX) { // fprintf(stderr, "Init MMX functions %08x\n", real_accel_flags); gavl_init_rgb_rgb_funcs_mmx(csp_tab, width, opt); gavl_init_rgb_yuv_funcs_mmx(csp_tab, width, opt); gavl_init_yuv_yuv_funcs_mmx(csp_tab, width, opt); gavl_init_yuv_rgb_funcs_mmx(csp_tab, width, opt); } if(opt->accel_flags & GAVL_ACCEL_MMXEXT) { // fprintf(stderr, "Init MMXEXT functions %08x\n", real_accel_flags); gavl_init_rgb_rgb_funcs_mmxext(csp_tab, width, opt); gavl_init_rgb_yuv_funcs_mmxext(csp_tab, width, opt); gavl_init_yuv_yuv_funcs_mmxext(csp_tab, width, opt); gavl_init_yuv_rgb_funcs_mmxext(csp_tab, width, opt); } #endif #ifdef HAVE_SSE if(opt->accel_flags & GAVL_ACCEL_SSE) { // fprintf(stderr, "Init MMXEXT functions %08x\n", real_accel_flags); // gavl_init_rgb_rgb_funcs_sse(csp_tab, opt); // gavl_init_rgb_yuv_funcs_sse(csp_tab, opt); // gavl_init_yuv_yuv_funcs_sse(csp_tab, opt); // gavl_init_yuv_rgb_funcs_sse(csp_tab, opt); } #endif #ifdef HAVE_SSE3 if(opt->accel_flags & GAVL_ACCEL_SSE3) { // fprintf(stderr, "Init MMXEXT functions %08x\n", real_accel_flags); // gavl_init_rgb_rgb_funcs_sse(csp_tab, opt); gavl_init_rgb_yuv_funcs_sse3(csp_tab, opt); // gavl_init_yuv_yuv_funcs_sse(csp_tab, opt); // gavl_init_yuv_rgb_funcs_sse(csp_tab, opt); } #endif /* High quality */ if((opt->quality > 3) || ((!opt->quality) && (opt->accel_flags & GAVL_ACCEL_C_HQ))) { // fprintf(stderr, "Init HQ\n"); gavl_init_rgb_rgb_funcs_hq(csp_tab, opt); gavl_init_rgb_yuv_funcs_hq(csp_tab, opt); gavl_init_yuv_rgb_funcs_hq(csp_tab, opt); gavl_init_yuv_yuv_funcs_hq(csp_tab, opt); } return csp_tab; } gavl_video_func_t gavl_find_pixelformat_converter(const gavl_video_options_t * opt, gavl_pixelformat_t input_pixelformat, gavl_pixelformat_t output_pixelformat, int width, int height) { gavl_video_func_t ret = NULL; gavl_pixelformat_function_table_t * tab = create_pixelformat_function_table(opt, width, height); switch(input_pixelformat) { case GAVL_GRAY_8: switch(output_pixelformat) { case GAVL_GRAY_16: ret = tab->gray_8_to_16; break; case GAVL_GRAY_FLOAT: ret = tab->gray_8_to_float; break; case GAVL_GRAYA_16: ret = tab->gray_8_to_graya_16; break; case GAVL_GRAYA_32: ret = tab->gray_8_to_graya_32; break; case GAVL_GRAYA_FLOAT: ret = tab->gray_8_to_graya_float; break; case GAVL_RGB_15: case GAVL_BGR_15: ret = tab->gray_8_to_rgb_15; break; case GAVL_RGB_16: case GAVL_BGR_16: ret = tab->gray_8_to_rgb_16; break; case GAVL_RGB_24: case GAVL_BGR_24: ret = tab->gray_8_to_rgb_24; break; case GAVL_RGB_32: case GAVL_BGR_32: ret = tab->gray_8_to_rgb_32; break; case GAVL_RGBA_32: ret = tab->gray_8_to_rgba_32; break; case GAVL_RGB_48: ret = tab->gray_8_to_rgb_48; break; case GAVL_RGBA_64: ret = tab->gray_8_to_rgba_64; break; case GAVL_RGB_FLOAT: ret = tab->gray_8_to_rgb_float; break; case GAVL_RGBA_FLOAT: ret = tab->gray_8_to_rgba_float; break; case GAVL_YUY2: ret = tab->gray_8_to_yuy2; break; case GAVL_UYVY: ret = tab->gray_8_to_uyvy; break; case GAVL_YUVA_32: ret = tab->gray_8_to_yuva_32; break; case GAVL_YUVA_64: ret = tab->gray_8_to_yuva_64; break; case GAVL_YUVA_FLOAT: ret = tab->gray_8_to_yuva_float; break; case GAVL_YUV_FLOAT: ret = tab->gray_8_to_yuv_float; break; case GAVL_YUV_420_P: case GAVL_YUV_410_P: case GAVL_YUV_422_P: case GAVL_YUV_411_P: case GAVL_YUV_444_P: ret = tab->gray_8_to_y_8; break; case GAVL_YUV_422_P_16: case GAVL_YUV_444_P_16: ret = tab->gray_8_to_y_16; break; case GAVL_YUVJ_420_P: case GAVL_YUVJ_422_P: case GAVL_YUVJ_444_P: ret = tab->gray_8_to_yj_8; break; /* Keep GCC happy */ case GAVL_PIXELFORMAT_NONE: case GAVL_GRAY_8: break; } break; case GAVL_GRAYA_16: switch(output_pixelformat) { case GAVL_GRAY_8: ret = tab->graya_16_to_gray_8; break; case GAVL_GRAY_16: ret = tab->graya_16_to_gray_16; break; case GAVL_GRAY_FLOAT: ret = tab->graya_16_to_gray_float; break; case GAVL_GRAYA_32: ret = tab->graya_16_to_32; break; case GAVL_GRAYA_FLOAT: ret = tab->graya_16_to_float; break; case GAVL_RGB_15: case GAVL_BGR_15: ret = tab->graya_16_to_rgb_15; break; case GAVL_RGB_16: case GAVL_BGR_16: ret = tab->graya_16_to_rgb_16; break; case GAVL_RGB_24: case GAVL_BGR_24: ret = tab->graya_16_to_rgb_24; break; case GAVL_RGB_32: case GAVL_BGR_32: ret = tab->graya_16_to_rgb_32; break; case GAVL_RGBA_32: ret = tab->graya_16_to_rgba_32; break; case GAVL_RGB_48: ret = tab->graya_16_to_rgb_48; break; case GAVL_RGBA_64: ret = tab->graya_16_to_rgba_64; break; case GAVL_RGB_FLOAT: ret = tab->graya_16_to_rgb_float; break; case GAVL_RGBA_FLOAT: ret = tab->graya_16_to_rgba_float; break; case GAVL_YUY2: ret = tab->graya_16_to_yuy2; break; case GAVL_UYVY: ret = tab->graya_16_to_uyvy; break; case GAVL_YUVA_32: ret = tab->graya_16_to_yuva_32; break; case GAVL_YUVA_64: ret = tab->graya_16_to_yuva_64; break; case GAVL_YUVA_FLOAT: ret = tab->graya_16_to_yuva_float; break; case GAVL_YUV_FLOAT: ret = tab->graya_16_to_yuv_float; break; case GAVL_YUV_420_P: case GAVL_YUV_410_P: case GAVL_YUV_422_P: case GAVL_YUV_411_P: case GAVL_YUV_444_P: ret = tab->graya_16_to_y_8; break; case GAVL_YUV_422_P_16: case GAVL_YUV_444_P_16: ret = tab->graya_16_to_y_16; break; case GAVL_YUVJ_420_P: case GAVL_YUVJ_422_P: case GAVL_YUVJ_444_P: ret = tab->graya_16_to_yj_8; break; /* Keep GCC happy */ case GAVL_PIXELFORMAT_NONE: case GAVL_GRAYA_16: break; } break; case GAVL_GRAY_16: switch(output_pixelformat) { case GAVL_GRAY_8: ret = tab->gray_16_to_8; break; case GAVL_GRAY_FLOAT: ret = tab->gray_16_to_float; break; case GAVL_GRAYA_16: ret = tab->gray_16_to_graya_16; break; case GAVL_GRAYA_32: ret = tab->gray_16_to_graya_32; break; case GAVL_GRAYA_FLOAT: ret = tab->gray_16_to_graya_float; break; case GAVL_RGB_15: case GAVL_BGR_15: ret = tab->gray_16_to_rgb_15; break; case GAVL_RGB_16: case GAVL_BGR_16: ret = tab->gray_16_to_rgb_16; break; case GAVL_RGB_24: case GAVL_BGR_24: ret = tab->gray_16_to_rgb_24; break; case GAVL_RGB_32: case GAVL_BGR_32: ret = tab->gray_16_to_rgb_32; break; case GAVL_RGBA_32: ret = tab->gray_16_to_rgba_32; break; case GAVL_RGB_48: ret = tab->gray_16_to_rgb_48; break; case GAVL_RGBA_64: ret = tab->gray_16_to_rgba_64; break; case GAVL_RGB_FLOAT: ret = tab->gray_16_to_rgb_float; break; case GAVL_RGBA_FLOAT: ret = tab->gray_16_to_rgba_float; break; case GAVL_YUY2: ret = tab->gray_16_to_yuy2; break; case GAVL_UYVY: ret = tab->gray_16_to_uyvy; break; case GAVL_YUVA_32: ret = tab->gray_16_to_yuva_32; break; case GAVL_YUVA_64: ret = tab->gray_16_to_yuva_64; break; case GAVL_YUVA_FLOAT: ret = tab->gray_16_to_yuva_float; break; case GAVL_YUV_FLOAT: ret = tab->gray_16_to_yuv_float; break; case GAVL_YUV_420_P: case GAVL_YUV_410_P: case GAVL_YUV_422_P: case GAVL_YUV_411_P: case GAVL_YUV_444_P: ret = tab->gray_16_to_y_8; break; case GAVL_YUV_422_P_16: case GAVL_YUV_444_P_16: ret = tab->gray_16_to_y_16; break; case GAVL_YUVJ_420_P: case GAVL_YUVJ_422_P: case GAVL_YUVJ_444_P: ret = tab->gray_16_to_yj_8; break; /* Keep GCC happy */ case GAVL_PIXELFORMAT_NONE: case GAVL_GRAY_16: break; } break; case GAVL_GRAYA_32: switch(output_pixelformat) { case GAVL_GRAY_8: ret = tab->graya_32_to_gray_8; break; case GAVL_GRAY_16: ret = tab->graya_32_to_gray_16; break; case GAVL_GRAY_FLOAT: ret = tab->graya_32_to_gray_float; break; case GAVL_GRAYA_16: ret = tab->graya_32_to_16; break; case GAVL_GRAYA_FLOAT: ret = tab->graya_32_to_float; break; case GAVL_RGB_15: case GAVL_BGR_15: ret = tab->graya_32_to_rgb_15; break; case GAVL_RGB_16: case GAVL_BGR_16: ret = tab->graya_32_to_rgb_16; break; case GAVL_RGB_24: case GAVL_BGR_24: ret = tab->graya_32_to_rgb_24; break; case GAVL_RGB_32: case GAVL_BGR_32: ret = tab->graya_32_to_rgb_32; break; case GAVL_RGBA_32: ret = tab->graya_32_to_rgba_32; break; case GAVL_RGB_48: ret = tab->graya_32_to_rgb_48; break; case GAVL_RGBA_64: ret = tab->graya_32_to_rgba_64; break; case GAVL_RGB_FLOAT: ret = tab->graya_32_to_rgb_float; break; case GAVL_RGBA_FLOAT: ret = tab->graya_32_to_rgba_float; break; case GAVL_YUY2: ret = tab->graya_32_to_yuy2; break; case GAVL_UYVY: ret = tab->graya_32_to_uyvy; break; case GAVL_YUVA_32: ret = tab->graya_32_to_yuva_32; break; case GAVL_YUVA_64: ret = tab->graya_32_to_yuva_64; break; case GAVL_YUVA_FLOAT: ret = tab->graya_32_to_yuva_float; break; case GAVL_YUV_FLOAT: ret = tab->graya_32_to_yuv_float; break; case GAVL_YUV_420_P: case GAVL_YUV_410_P: case GAVL_YUV_422_P: case GAVL_YUV_411_P: case GAVL_YUV_444_P: ret = tab->graya_32_to_y_8; break; case GAVL_YUV_422_P_16: case GAVL_YUV_444_P_16: ret = tab->graya_32_to_y_16; break; case GAVL_YUVJ_420_P: case GAVL_YUVJ_422_P: case GAVL_YUVJ_444_P: ret = tab->graya_32_to_yj_8; break; /* Keep GCC happy */ case GAVL_PIXELFORMAT_NONE: case GAVL_GRAYA_32: break; } break; case GAVL_GRAY_FLOAT: switch(output_pixelformat) { case GAVL_GRAY_8: ret = tab->gray_float_to_8; break; case GAVL_GRAY_16: ret = tab->gray_float_to_16; break; case GAVL_GRAYA_16: ret = tab->gray_float_to_graya_16; break; case GAVL_GRAYA_32: ret = tab->gray_float_to_graya_32; break; case GAVL_GRAYA_FLOAT: ret = tab->gray_float_to_graya_float; break; case GAVL_RGB_15: case GAVL_BGR_15: ret = tab->gray_float_to_rgb_15; break; case GAVL_RGB_16: case GAVL_BGR_16: ret = tab->gray_float_to_rgb_16; break; case GAVL_RGB_24: case GAVL_BGR_24: ret = tab->gray_float_to_rgb_24; break; case GAVL_RGB_32: case GAVL_BGR_32: ret = tab->gray_float_to_rgb_32; break; case GAVL_RGBA_32: ret = tab->gray_float_to_rgba_32; break; case GAVL_RGB_48: ret = tab->gray_float_to_rgb_48; break; case GAVL_RGBA_64: ret = tab->gray_float_to_rgba_64; break; case GAVL_RGB_FLOAT: ret = tab->gray_float_to_rgb_float; break; case GAVL_RGBA_FLOAT: ret = tab->gray_float_to_rgba_float; break; case GAVL_YUY2: ret = tab->gray_float_to_yuy2; break; case GAVL_UYVY: ret = tab->gray_float_to_uyvy; break; case GAVL_YUVA_32: ret = tab->gray_float_to_yuva_32; break; case GAVL_YUVA_64: ret = tab->gray_float_to_yuva_64; break; case GAVL_YUVA_FLOAT: ret = tab->gray_float_to_yuva_float; break; case GAVL_YUV_FLOAT: ret = tab->gray_float_to_yuv_float; break; case GAVL_YUV_420_P: case GAVL_YUV_410_P: case GAVL_YUV_422_P: case GAVL_YUV_411_P: case GAVL_YUV_444_P: ret = tab->gray_float_to_y_8; break; case GAVL_YUV_422_P_16: case GAVL_YUV_444_P_16: ret = tab->gray_float_to_y_16; break; case GAVL_YUVJ_420_P: case GAVL_YUVJ_422_P: case GAVL_YUVJ_444_P: ret = tab->gray_float_to_yj_8; break; /* Keep GCC happy */ case GAVL_PIXELFORMAT_NONE: case GAVL_GRAY_FLOAT: break; } break; case GAVL_GRAYA_FLOAT: switch(output_pixelformat) { case GAVL_GRAY_8: ret = tab->graya_float_to_gray_8; break; case GAVL_GRAY_16: ret = tab->graya_float_to_gray_16; break; case GAVL_GRAY_FLOAT: ret = tab->graya_float_to_gray_float; break; case GAVL_GRAYA_16: ret = tab->graya_float_to_16; break; case GAVL_GRAYA_32: ret = tab->graya_float_to_32; break; case GAVL_RGB_15: case GAVL_BGR_15: ret = tab->graya_float_to_rgb_15; break; case GAVL_RGB_16: case GAVL_BGR_16: ret = tab->graya_float_to_rgb_16; break; case GAVL_RGB_24: case GAVL_BGR_24: ret = tab->graya_float_to_rgb_24; break; case GAVL_RGB_32: case GAVL_BGR_32: ret = tab->graya_float_to_rgb_32; break; case GAVL_RGBA_32: ret = tab->graya_float_to_rgba_32; break; case GAVL_RGB_48: ret = tab->graya_float_to_rgb_48; break; case GAVL_RGBA_64: ret = tab->graya_float_to_rgba_64; break; case GAVL_RGB_FLOAT: ret = tab->graya_float_to_rgb_float; break; case GAVL_RGBA_FLOAT: ret = tab->graya_float_to_rgba_float; break; case GAVL_YUY2: ret = tab->graya_float_to_yuy2; break; case GAVL_UYVY: ret = tab->graya_float_to_uyvy; break; case GAVL_YUVA_32: ret = tab->graya_float_to_yuva_32; break; case GAVL_YUVA_64: ret = tab->graya_float_to_yuva_64; break; case GAVL_YUVA_FLOAT: ret = tab->graya_float_to_yuva_float; break; case GAVL_YUV_FLOAT: ret = tab->graya_float_to_yuv_float; break; case GAVL_YUV_420_P: case GAVL_YUV_410_P: case GAVL_YUV_422_P: case GAVL_YUV_411_P: case GAVL_YUV_444_P: ret = tab->graya_float_to_y_8; break; case GAVL_YUV_422_P_16: case GAVL_YUV_444_P_16: ret = tab->graya_float_to_y_16; break; case GAVL_YUVJ_420_P: case GAVL_YUVJ_422_P: case GAVL_YUVJ_444_P: ret = tab->graya_float_to_yj_8; break; /* Keep GCC happy */ case GAVL_PIXELFORMAT_NONE: case GAVL_GRAYA_FLOAT: break; } break; case GAVL_RGB_15: switch(output_pixelformat) { case GAVL_GRAY_8: ret = tab->rgb_15_to_gray_8; break; case GAVL_GRAY_16: ret = tab->rgb_15_to_gray_16; break; case GAVL_GRAY_FLOAT: ret = tab->rgb_15_to_gray_float; break; case GAVL_GRAYA_16: ret = tab->rgb_15_to_graya_16; break; case GAVL_GRAYA_32: ret = tab->rgb_15_to_graya_32; break; case GAVL_GRAYA_FLOAT: ret = tab->rgb_15_to_graya_float; break; case GAVL_BGR_15: ret = tab->swap_rgb_15; break; case GAVL_RGB_16: ret = tab->rgb_15_to_16; break; case GAVL_BGR_16: ret = tab->rgb_15_to_16_swap; break; case GAVL_RGB_24: ret = tab->rgb_15_to_24; break; case GAVL_BGR_24: ret = tab->rgb_15_to_24_swap; break; case GAVL_RGB_32: ret = tab->rgb_15_to_32; break; case GAVL_BGR_32: ret = tab->rgb_15_to_32_swap; break; case GAVL_RGBA_32: ret = tab->rgb_15_to_rgba_32; break; case GAVL_RGB_48: ret = tab->rgb_15_to_48; break; case GAVL_RGBA_64: ret = tab->rgb_15_to_rgba_64; break; case GAVL_RGB_FLOAT: ret = tab->rgb_15_to_float; break; case GAVL_RGBA_FLOAT: ret = tab->rgb_15_to_rgba_float; break; case GAVL_YUY2: ret = tab->rgb_15_to_yuy2; break; case GAVL_UYVY: ret = tab->rgb_15_to_uyvy; break; case GAVL_YUVA_32: ret = tab->rgb_15_to_yuva_32; break; case GAVL_YUVA_64: ret = tab->rgb_15_to_yuva_64; break; case GAVL_YUVA_FLOAT: ret = tab->rgb_15_to_yuva_float; break; case GAVL_YUV_FLOAT: ret = tab->rgb_15_to_yuv_float; break; case GAVL_YUV_420_P: ret = tab->rgb_15_to_yuv_420_p; break; case GAVL_YUV_410_P: ret = tab->rgb_15_to_yuv_410_p; break; case GAVL_YUV_422_P: ret = tab->rgb_15_to_yuv_422_p; break; case GAVL_YUV_422_P_16: ret = tab->rgb_15_to_yuv_422_p_16; break; case GAVL_YUV_411_P: ret = tab->rgb_15_to_yuv_411_p; break; case GAVL_YUV_444_P: ret = tab->rgb_15_to_yuv_444_p; break; case GAVL_YUV_444_P_16: ret = tab->rgb_15_to_yuv_444_p_16; break; case GAVL_YUVJ_420_P: ret = tab->rgb_15_to_yuvj_420_p; break; case GAVL_YUVJ_422_P: ret = tab->rgb_15_to_yuvj_422_p; break; case GAVL_YUVJ_444_P: ret = tab->rgb_15_to_yuvj_444_p; break; /* Keep GCC happy */ case GAVL_PIXELFORMAT_NONE: case GAVL_RGB_15: break; } break; case GAVL_BGR_15: switch(output_pixelformat) { case GAVL_GRAY_8: ret = tab->bgr_15_to_gray_8; break; case GAVL_GRAY_16: ret = tab->bgr_15_to_gray_16; break; case GAVL_GRAY_FLOAT: ret = tab->bgr_15_to_gray_float; break; case GAVL_GRAYA_16: ret = tab->bgr_15_to_graya_16; break; case GAVL_GRAYA_32: ret = tab->bgr_15_to_graya_32; break; case GAVL_GRAYA_FLOAT: ret = tab->bgr_15_to_graya_float; break; case GAVL_RGB_15: ret = tab->swap_rgb_15; break; case GAVL_RGB_16: ret = tab->rgb_15_to_16_swap; break; case GAVL_BGR_16: ret = tab->rgb_15_to_16; break; case GAVL_RGB_24: ret = tab->rgb_15_to_24_swap; break; case GAVL_BGR_24: ret = tab->rgb_15_to_24; break; case GAVL_RGB_32: ret = tab->rgb_15_to_32_swap; break; case GAVL_BGR_32: ret = tab->rgb_15_to_32; break; case GAVL_RGBA_32: ret = tab->bgr_15_to_rgba_32; break; case GAVL_RGB_48: ret = tab->rgb_15_to_48_swap; break; case GAVL_RGBA_64: ret = tab->bgr_15_to_rgba_64; break; case GAVL_RGB_FLOAT: ret = tab->rgb_15_to_float_swap; break; case GAVL_RGBA_FLOAT: ret = tab->bgr_15_to_rgba_float; break; case GAVL_YUY2: ret = tab->bgr_15_to_yuy2; break; case GAVL_UYVY: ret = tab->bgr_15_to_uyvy; break; case GAVL_YUVA_32: ret = tab->bgr_15_to_yuva_32; break; case GAVL_YUVA_64: ret = tab->bgr_15_to_yuva_64; break; case GAVL_YUVA_FLOAT: ret = tab->bgr_15_to_yuva_float; break; case GAVL_YUV_FLOAT: ret = tab->bgr_15_to_yuv_float; break; case GAVL_YUV_420_P: ret = tab->bgr_15_to_yuv_420_p; break; case GAVL_YUV_410_P: ret = tab->bgr_15_to_yuv_410_p; break; case GAVL_YUV_422_P: ret = tab->bgr_15_to_yuv_422_p; break; case GAVL_YUV_422_P_16: ret = tab->bgr_15_to_yuv_422_p_16; break; case GAVL_YUV_411_P: ret = tab->bgr_15_to_yuv_411_p; break; case GAVL_YUV_444_P: ret = tab->bgr_15_to_yuv_444_p; break; case GAVL_YUV_444_P_16: ret = tab->bgr_15_to_yuv_444_p_16; break; case GAVL_YUVJ_420_P: ret = tab->bgr_15_to_yuvj_420_p; break; case GAVL_YUVJ_422_P: ret = tab->bgr_15_to_yuvj_422_p; break; case GAVL_YUVJ_444_P: ret = tab->bgr_15_to_yuvj_444_p; break; /* Keep GCC happy */ case GAVL_PIXELFORMAT_NONE: case GAVL_BGR_15: break; } break; case GAVL_RGB_16: switch(output_pixelformat) { case GAVL_GRAY_8: ret = tab->rgb_16_to_gray_8; break; case GAVL_GRAY_16: ret = tab->rgb_16_to_gray_16; break; case GAVL_GRAY_FLOAT: ret = tab->rgb_16_to_gray_float; break; case GAVL_GRAYA_16: ret = tab->rgb_16_to_graya_16; break; case GAVL_GRAYA_32: ret = tab->rgb_16_to_graya_32; break; case GAVL_GRAYA_FLOAT: ret = tab->rgb_16_to_graya_float; break; case GAVL_RGB_15: ret = tab->rgb_16_to_15; break; case GAVL_BGR_15: ret = tab->rgb_16_to_15_swap; break; case GAVL_BGR_16: ret = tab->swap_rgb_16; break; case GAVL_RGB_24: ret = tab->rgb_16_to_24; break; case GAVL_BGR_24: ret = tab->rgb_16_to_24_swap; break; case GAVL_RGB_32: ret = tab->rgb_16_to_32; break; case GAVL_BGR_32: ret = tab->rgb_16_to_32_swap; break; case GAVL_RGBA_32: ret = tab->rgb_16_to_rgba_32; break; case GAVL_RGB_48: ret = tab->rgb_16_to_48; break; case GAVL_RGBA_64: ret = tab->rgb_16_to_rgba_64; break; case GAVL_RGB_FLOAT: ret = tab->rgb_16_to_float; break; case GAVL_RGBA_FLOAT: ret = tab->rgb_16_to_rgba_float; break; case GAVL_YUY2: ret = tab->rgb_16_to_yuy2; break; case GAVL_UYVY: ret = tab->rgb_16_to_uyvy; break; case GAVL_YUVA_32: ret = tab->rgb_16_to_yuva_32; break; case GAVL_YUVA_64: ret = tab->rgb_16_to_yuva_64; break; case GAVL_YUVA_FLOAT: ret = tab->rgb_16_to_yuva_float; break; case GAVL_YUV_FLOAT: ret = tab->rgb_16_to_yuv_float; break; case GAVL_YUV_420_P: ret = tab->rgb_16_to_yuv_420_p; break; case GAVL_YUV_410_P: ret = tab->rgb_16_to_yuv_410_p; break; case GAVL_YUV_422_P: ret = tab->rgb_16_to_yuv_422_p; break; case GAVL_YUV_422_P_16: ret = tab->rgb_16_to_yuv_422_p_16; break; case GAVL_YUV_411_P: ret = tab->rgb_16_to_yuv_411_p; break; case GAVL_YUV_444_P: ret = tab->rgb_16_to_yuv_444_p; break; case GAVL_YUV_444_P_16: ret = tab->rgb_16_to_yuv_444_p_16; break; case GAVL_YUVJ_420_P: ret = tab->rgb_16_to_yuvj_420_p; break; case GAVL_YUVJ_422_P: ret = tab->rgb_16_to_yuvj_422_p; break; case GAVL_YUVJ_444_P: ret = tab->rgb_16_to_yuvj_444_p; break; /* Keep GCC happy */ case GAVL_PIXELFORMAT_NONE: case GAVL_RGB_16: break; } break; case GAVL_BGR_16: switch(output_pixelformat) { case GAVL_GRAY_8: ret = tab->bgr_16_to_gray_8; break; case GAVL_GRAY_16: ret = tab->bgr_16_to_gray_16; break; case GAVL_GRAY_FLOAT: ret = tab->bgr_16_to_gray_float; break; case GAVL_GRAYA_16: ret = tab->bgr_16_to_graya_16; break; case GAVL_GRAYA_32: ret = tab->bgr_16_to_graya_32; break; case GAVL_GRAYA_FLOAT: ret = tab->bgr_16_to_graya_float; break; case GAVL_RGB_15: ret = tab->rgb_16_to_15_swap; break; case GAVL_BGR_15: ret = tab->rgb_16_to_15; break; case GAVL_RGB_16: ret = tab->swap_rgb_16; break; case GAVL_RGB_24: ret = tab->rgb_16_to_24_swap; break; case GAVL_BGR_24: ret = tab->rgb_16_to_24; break; case GAVL_RGB_32: ret = tab->rgb_16_to_32_swap; break; case GAVL_BGR_32: ret = tab->rgb_16_to_32; break; case GAVL_RGBA_32: ret = tab->bgr_16_to_rgba_32; break; case GAVL_RGB_48: ret = tab->rgb_16_to_48_swap; break; case GAVL_RGBA_64: ret = tab->bgr_16_to_rgba_64; break; case GAVL_RGB_FLOAT: ret = tab->rgb_16_to_float_swap; break; case GAVL_RGBA_FLOAT: ret = tab->bgr_16_to_rgba_float; break; case GAVL_YUY2: ret = tab->bgr_16_to_yuy2; break; case GAVL_UYVY: ret = tab->bgr_16_to_uyvy; break; case GAVL_YUVA_32: ret = tab->bgr_16_to_yuva_32; break; case GAVL_YUVA_64: ret = tab->bgr_16_to_yuva_64; break; case GAVL_YUVA_FLOAT: ret = tab->bgr_16_to_yuva_float; break; case GAVL_YUV_FLOAT: ret = tab->bgr_16_to_yuv_float; break; case GAVL_YUV_420_P: ret = tab->bgr_16_to_yuv_420_p; break; case GAVL_YUV_410_P: ret = tab->bgr_16_to_yuv_410_p; break; case GAVL_YUV_422_P: ret = tab->bgr_16_to_yuv_422_p; break; case GAVL_YUV_422_P_16: ret = tab->bgr_16_to_yuv_422_p_16; break; case GAVL_YUV_411_P: ret = tab->bgr_16_to_yuv_411_p; break; case GAVL_YUV_444_P: ret = tab->bgr_16_to_yuv_444_p; break; case GAVL_YUV_444_P_16: ret = tab->bgr_16_to_yuv_444_p_16; break; case GAVL_YUVJ_420_P: ret = tab->bgr_16_to_yuvj_420_p; break; case GAVL_YUVJ_422_P: ret = tab->bgr_16_to_yuvj_422_p; break; case GAVL_YUVJ_444_P: ret = tab->bgr_16_to_yuvj_444_p; break; /* Keep GCC happy */ case GAVL_PIXELFORMAT_NONE: case GAVL_BGR_16: break; } break; case GAVL_RGB_24: switch(output_pixelformat) { case GAVL_GRAY_8: ret = tab->rgb_24_to_gray_8; break; case GAVL_GRAY_16: ret = tab->rgb_24_to_gray_16; break; case GAVL_GRAY_FLOAT: ret = tab->rgb_24_to_gray_float; break; case GAVL_GRAYA_16: ret = tab->rgb_24_to_graya_16; break; case GAVL_GRAYA_32: ret = tab->rgb_24_to_graya_32; break; case GAVL_GRAYA_FLOAT: ret = tab->rgb_24_to_graya_float; break; case GAVL_RGB_15: ret = tab->rgb_24_to_15; break; case GAVL_BGR_15: ret = tab->rgb_24_to_15_swap; break; case GAVL_RGB_16: ret = tab->rgb_24_to_16; break; case GAVL_BGR_16: ret = tab->rgb_24_to_16_swap; break; case GAVL_BGR_24: ret = tab->swap_rgb_24; break; case GAVL_RGB_32: ret = tab->rgb_24_to_32; break; case GAVL_BGR_32: ret = tab->rgb_24_to_32_swap; break; case GAVL_RGBA_32: ret = tab->rgb_24_to_rgba_32; break; case GAVL_RGB_48: ret = tab->rgb_24_to_48; break; case GAVL_RGBA_64: ret = tab->rgb_24_to_rgba_64; break; case GAVL_RGB_FLOAT: ret = tab->rgb_24_to_float; break; case GAVL_RGBA_FLOAT: ret = tab->rgb_24_to_rgba_float; break; case GAVL_YUY2: ret = tab->rgb_24_to_yuy2; break; case GAVL_UYVY: ret = tab->rgb_24_to_uyvy; break; case GAVL_YUVA_32: ret = tab->rgb_24_to_yuva_32; break; case GAVL_YUVA_64: ret = tab->rgb_24_to_yuva_64; break; case GAVL_YUVA_FLOAT: ret = tab->rgb_24_to_yuva_float; break; case GAVL_YUV_FLOAT: ret = tab->rgb_24_to_yuv_float; break; case GAVL_YUV_420_P: ret = tab->rgb_24_to_yuv_420_p; break; case GAVL_YUV_410_P: ret = tab->rgb_24_to_yuv_410_p; break; case GAVL_YUV_422_P: ret = tab->rgb_24_to_yuv_422_p; break; case GAVL_YUV_422_P_16: ret = tab->rgb_24_to_yuv_422_p_16; break; case GAVL_YUV_411_P: ret = tab->rgb_24_to_yuv_411_p; break; case GAVL_YUV_444_P: ret = tab->rgb_24_to_yuv_444_p; break; case GAVL_YUV_444_P_16: ret = tab->rgb_24_to_yuv_444_p_16; break; case GAVL_YUVJ_420_P: ret = tab->rgb_24_to_yuvj_420_p; break; case GAVL_YUVJ_422_P: ret = tab->rgb_24_to_yuvj_422_p; break; case GAVL_YUVJ_444_P: ret = tab->rgb_24_to_yuvj_444_p; break; /* Keep GCC happy */ case GAVL_PIXELFORMAT_NONE: case GAVL_RGB_24: break; } break; case GAVL_BGR_24: switch(output_pixelformat) { case GAVL_GRAY_8: ret = tab->bgr_24_to_gray_8; break; case GAVL_GRAY_16: ret = tab->bgr_24_to_gray_16; break; case GAVL_GRAY_FLOAT: ret = tab->bgr_24_to_gray_float; break; case GAVL_GRAYA_16: ret = tab->bgr_24_to_graya_16; break; case GAVL_GRAYA_32: ret = tab->bgr_24_to_graya_32; break; case GAVL_GRAYA_FLOAT: ret = tab->bgr_24_to_graya_float; break; case GAVL_RGB_15: ret = tab->rgb_24_to_15_swap; break; case GAVL_BGR_15: ret = tab->rgb_24_to_15; break; case GAVL_RGB_16: ret = tab->rgb_24_to_16_swap; break; case GAVL_BGR_16: ret = tab->rgb_24_to_16; break; case GAVL_RGB_24: ret = tab->swap_rgb_24; break; case GAVL_RGB_32: ret = tab->rgb_24_to_32_swap; break; case GAVL_BGR_32: ret = tab->rgb_24_to_32; break; case GAVL_RGBA_32: ret = tab->bgr_24_to_rgba_32; break; case GAVL_RGB_48: ret = tab->rgb_24_to_48_swap; break; case GAVL_RGBA_64: ret = tab->bgr_24_to_rgba_64; break; case GAVL_RGB_FLOAT: ret = tab->rgb_24_to_float_swap; break; case GAVL_RGBA_FLOAT: ret = tab->bgr_24_to_rgba_float; break; case GAVL_YUY2: ret = tab->bgr_24_to_yuy2; break; case GAVL_UYVY: ret = tab->bgr_24_to_uyvy; break; case GAVL_YUVA_32: ret = tab->bgr_24_to_yuva_32; break; case GAVL_YUVA_64: ret = tab->bgr_24_to_yuva_64; break; case GAVL_YUVA_FLOAT: ret = tab->bgr_24_to_yuva_float; break; case GAVL_YUV_FLOAT: ret = tab->bgr_24_to_yuv_float; break; case GAVL_YUV_420_P: ret = tab->bgr_24_to_yuv_420_p; break; case GAVL_YUV_410_P: ret = tab->bgr_24_to_yuv_410_p; break; case GAVL_YUV_422_P: ret = tab->bgr_24_to_yuv_422_p; break; case GAVL_YUV_422_P_16: ret = tab->bgr_24_to_yuv_422_p_16; break; case GAVL_YUV_411_P: ret = tab->bgr_24_to_yuv_411_p; break; case GAVL_YUV_444_P: ret = tab->bgr_24_to_yuv_444_p; break; case GAVL_YUV_444_P_16: ret = tab->bgr_24_to_yuv_444_p_16; break; case GAVL_YUVJ_420_P: ret = tab->bgr_24_to_yuvj_420_p; break; case GAVL_YUVJ_422_P: ret = tab->bgr_24_to_yuvj_422_p; break; case GAVL_YUVJ_444_P: ret = tab->bgr_24_to_yuvj_444_p; break; /* Keep GCC happy */ case GAVL_PIXELFORMAT_NONE: case GAVL_BGR_24: break; } break; case GAVL_RGB_32: switch(output_pixelformat) { case GAVL_GRAY_8: ret = tab->rgb_32_to_gray_8; break; case GAVL_GRAY_16: ret = tab->rgb_32_to_gray_16; break; case GAVL_GRAY_FLOAT: ret = tab->rgb_32_to_gray_float; break; case GAVL_GRAYA_16: ret = tab->rgb_32_to_graya_16; break; case GAVL_GRAYA_32: ret = tab->rgb_32_to_graya_32; break; case GAVL_GRAYA_FLOAT: ret = tab->rgb_32_to_graya_float; break; case GAVL_RGB_15: ret = tab->rgb_32_to_15; break; case GAVL_BGR_15: ret = tab->rgb_32_to_15_swap; break; case GAVL_RGB_16: ret = tab->rgb_32_to_16; break; case GAVL_BGR_16: ret = tab->rgb_32_to_16_swap; break; case GAVL_RGB_24: ret = tab->rgb_32_to_24; break; case GAVL_BGR_24: ret = tab->rgb_32_to_24_swap; break; case GAVL_BGR_32: ret = tab->swap_rgb_32; break; case GAVL_RGBA_32: ret = tab->rgb_32_to_rgba_32; break; case GAVL_RGB_48: ret = tab->rgb_32_to_48; break; case GAVL_RGBA_64: ret = tab->rgb_32_to_rgba_64; break; case GAVL_RGB_FLOAT: ret = tab->rgb_32_to_float; break; case GAVL_RGBA_FLOAT: ret = tab->rgb_32_to_rgba_float; break; case GAVL_YUY2: ret = tab->rgb_32_to_yuy2; break; case GAVL_UYVY: ret = tab->rgb_32_to_uyvy; break; case GAVL_YUVA_32: ret = tab->rgb_32_to_yuva_32; break; case GAVL_YUVA_64: ret = tab->rgb_32_to_yuva_64; break; case GAVL_YUVA_FLOAT: ret = tab->rgb_32_to_yuva_float; break; case GAVL_YUV_FLOAT: ret = tab->rgb_32_to_yuv_float; break; case GAVL_YUV_420_P: ret = tab->rgb_32_to_yuv_420_p; break; case GAVL_YUV_410_P: ret = tab->rgb_32_to_yuv_410_p; break; case GAVL_YUV_422_P: ret = tab->rgb_32_to_yuv_422_p; break; case GAVL_YUV_422_P_16: ret = tab->rgb_32_to_yuv_422_p_16; break; case GAVL_YUV_411_P: ret = tab->rgb_32_to_yuv_411_p; break; case GAVL_YUV_444_P: ret = tab->rgb_32_to_yuv_444_p; break; case GAVL_YUV_444_P_16: ret = tab->rgb_32_to_yuv_444_p_16; break; case GAVL_YUVJ_420_P: ret = tab->rgb_32_to_yuvj_420_p; break; case GAVL_YUVJ_422_P: ret = tab->rgb_32_to_yuvj_422_p; break; case GAVL_YUVJ_444_P: ret = tab->rgb_32_to_yuvj_444_p; break; /* Keep GCC happy */ case GAVL_PIXELFORMAT_NONE: case GAVL_RGB_32: break; } break; case GAVL_BGR_32: switch(output_pixelformat) { case GAVL_GRAY_8: ret = tab->bgr_32_to_gray_8; break; case GAVL_GRAY_16: ret = tab->bgr_32_to_gray_16; break; case GAVL_GRAY_FLOAT: ret = tab->bgr_32_to_gray_float; break; case GAVL_GRAYA_16: ret = tab->bgr_32_to_graya_16; break; case GAVL_GRAYA_32: ret = tab->bgr_32_to_graya_32; break; case GAVL_GRAYA_FLOAT: ret = tab->bgr_32_to_graya_float; break; case GAVL_RGB_15: ret = tab->rgb_32_to_15_swap; break; case GAVL_BGR_15: ret = tab->rgb_32_to_15; break; case GAVL_RGB_16: ret = tab->rgb_32_to_16_swap; break; case GAVL_BGR_16: ret = tab->rgb_32_to_16; break; case GAVL_RGB_24: ret = tab->rgb_32_to_24_swap; break; case GAVL_BGR_24: ret = tab->rgb_32_to_24; break; case GAVL_RGB_32: ret = tab->swap_rgb_32; break; case GAVL_RGBA_32: ret = tab->bgr_32_to_rgba_32; break; case GAVL_RGB_48: ret = tab->rgb_32_to_48_swap; break; case GAVL_RGBA_64: ret = tab->bgr_32_to_rgba_64; break; case GAVL_RGB_FLOAT: ret = tab->rgb_32_to_float_swap; break; case GAVL_RGBA_FLOAT: ret = tab->bgr_32_to_rgba_float; break; case GAVL_YUY2: ret = tab->bgr_32_to_yuy2; break; case GAVL_UYVY: ret = tab->bgr_32_to_uyvy; break; case GAVL_YUVA_32: ret = tab->bgr_32_to_yuva_32; break; case GAVL_YUVA_64: ret = tab->bgr_32_to_yuva_64; break; case GAVL_YUVA_FLOAT: ret = tab->bgr_32_to_yuva_float; break; case GAVL_YUV_FLOAT: ret = tab->bgr_32_to_yuv_float; break; case GAVL_YUV_420_P: ret = tab->bgr_32_to_yuv_420_p; break; case GAVL_YUV_410_P: ret = tab->bgr_32_to_yuv_410_p; break; case GAVL_YUV_422_P: ret = tab->bgr_32_to_yuv_422_p; break; case GAVL_YUV_422_P_16: ret = tab->bgr_32_to_yuv_422_p_16; break; case GAVL_YUV_411_P: ret = tab->bgr_32_to_yuv_411_p; break; case GAVL_YUV_444_P: ret = tab->bgr_32_to_yuv_444_p; break; case GAVL_YUV_444_P_16: ret = tab->bgr_32_to_yuv_444_p_16; break; case GAVL_YUVJ_420_P: ret = tab->bgr_32_to_yuvj_420_p; break; case GAVL_YUVJ_422_P: ret = tab->bgr_32_to_yuvj_422_p; break; case GAVL_YUVJ_444_P: ret = tab->bgr_32_to_yuvj_444_p; break; /* Keep GCC happy */ case GAVL_PIXELFORMAT_NONE: case GAVL_BGR_32: break; } break; case GAVL_RGBA_32: switch(output_pixelformat) { case GAVL_GRAY_8: ret = tab->rgba_32_to_gray_8; break; case GAVL_GRAY_16: ret = tab->rgba_32_to_gray_16; break; case GAVL_GRAY_FLOAT: ret = tab->rgba_32_to_gray_float; break; case GAVL_GRAYA_16: ret = tab->rgba_32_to_graya_16; break; case GAVL_GRAYA_32: ret = tab->rgba_32_to_graya_32; break; case GAVL_GRAYA_FLOAT: ret = tab->rgba_32_to_graya_float; break; case GAVL_RGB_15: ret = tab->rgba_32_to_rgb_15; break; case GAVL_BGR_15: ret = tab->rgba_32_to_bgr_15; break; case GAVL_RGB_16: ret = tab->rgba_32_to_rgb_16; break; case GAVL_BGR_16: ret = tab->rgba_32_to_bgr_16; break; case GAVL_RGB_24: ret = tab->rgba_32_to_rgb_24; break; case GAVL_BGR_24: ret = tab->rgba_32_to_bgr_24; break; case GAVL_RGB_32: ret = tab->rgba_32_to_rgb_32; break; case GAVL_BGR_32: ret = tab->rgba_32_to_bgr_32; break; case GAVL_RGB_48: ret = tab->rgba_32_to_rgb_48; break; case GAVL_RGBA_64: ret = tab->rgba_32_to_rgba_64; break; case GAVL_RGB_FLOAT: ret = tab->rgba_32_to_rgb_float; break; case GAVL_RGBA_FLOAT: ret = tab->rgba_32_to_rgba_float; break; case GAVL_YUY2: ret = tab->rgba_32_to_yuy2; break; case GAVL_UYVY: ret = tab->rgba_32_to_uyvy; break; case GAVL_YUVA_32: ret = tab->rgba_32_to_yuva_32; break; case GAVL_YUVA_64: ret = tab->rgba_32_to_yuva_64; break; case GAVL_YUVA_FLOAT: ret = tab->rgba_32_to_yuva_float; break; case GAVL_YUV_FLOAT: ret = tab->rgba_32_to_yuv_float; break; case GAVL_YUV_420_P: ret = tab->rgba_32_to_yuv_420_p; break; case GAVL_YUV_410_P: ret = tab->rgba_32_to_yuv_410_p; break; case GAVL_YUV_422_P: ret = tab->rgba_32_to_yuv_422_p; break; case GAVL_YUV_422_P_16: ret = tab->rgba_32_to_yuv_422_p_16; break; case GAVL_YUV_411_P: ret = tab->rgba_32_to_yuv_411_p; break; case GAVL_YUV_444_P: ret = tab->rgba_32_to_yuv_444_p; break; case GAVL_YUV_444_P_16: ret = tab->rgba_32_to_yuv_444_p_16; break; case GAVL_YUVJ_420_P: ret = tab->rgba_32_to_yuvj_420_p; break; case GAVL_YUVJ_422_P: ret = tab->rgba_32_to_yuvj_422_p; break; case GAVL_YUVJ_444_P: ret = tab->rgba_32_to_yuvj_444_p; break; /* Keep GCC happy */ case GAVL_PIXELFORMAT_NONE: case GAVL_RGBA_32: break; } break; case GAVL_RGBA_64: switch(output_pixelformat) { case GAVL_GRAY_8: ret = tab->rgba_64_to_gray_8; break; case GAVL_GRAY_16: ret = tab->rgba_64_to_gray_16; break; case GAVL_GRAY_FLOAT: ret = tab->rgba_64_to_gray_float; break; case GAVL_GRAYA_16: ret = tab->rgba_64_to_graya_16; break; case GAVL_GRAYA_32: ret = tab->rgba_64_to_graya_32; break; case GAVL_GRAYA_FLOAT: ret = tab->rgba_64_to_graya_float; break; case GAVL_RGB_15: ret = tab->rgba_64_to_rgb_15; break; case GAVL_BGR_15: ret = tab->rgba_64_to_bgr_15; break; case GAVL_RGB_16: ret = tab->rgba_64_to_rgb_16; break; case GAVL_BGR_16: ret = tab->rgba_64_to_bgr_16; break; case GAVL_RGB_24: ret = tab->rgba_64_to_rgb_24; break; case GAVL_BGR_24: ret = tab->rgba_64_to_bgr_24; break; case GAVL_RGB_32: ret = tab->rgba_64_to_rgb_32; break; case GAVL_BGR_32: ret = tab->rgba_64_to_bgr_32; break; case GAVL_RGBA_32: ret = tab->rgba_64_to_rgba_32; break; case GAVL_RGB_48: ret = tab->rgba_64_to_rgb_48; break; case GAVL_RGB_FLOAT: ret = tab->rgba_64_to_rgb_float; break; case GAVL_RGBA_FLOAT: ret = tab->rgba_64_to_rgba_float; break; case GAVL_YUY2: ret = tab->rgba_64_to_yuy2; break; case GAVL_UYVY: ret = tab->rgba_64_to_uyvy; break; case GAVL_YUVA_32: ret = tab->rgba_64_to_yuva_32; break; case GAVL_YUVA_64: ret = tab->rgba_64_to_yuva_64; break; case GAVL_YUVA_FLOAT: ret = tab->rgba_64_to_yuva_float; break; case GAVL_YUV_FLOAT: ret = tab->rgba_64_to_yuv_float; break; case GAVL_YUV_420_P: ret = tab->rgba_64_to_yuv_420_p; break; case GAVL_YUV_410_P: ret = tab->rgba_64_to_yuv_410_p; break; case GAVL_YUV_422_P: ret = tab->rgba_64_to_yuv_422_p; break; case GAVL_YUV_422_P_16: ret = tab->rgba_64_to_yuv_422_p_16; break; case GAVL_YUV_411_P: ret = tab->rgba_64_to_yuv_411_p; break; case GAVL_YUV_444_P: ret = tab->rgba_64_to_yuv_444_p; break; case GAVL_YUV_444_P_16: ret = tab->rgba_64_to_yuv_444_p_16; break; case GAVL_YUVJ_420_P: ret = tab->rgba_64_to_yuvj_420_p; break; case GAVL_YUVJ_422_P: ret = tab->rgba_64_to_yuvj_422_p; break; case GAVL_YUVJ_444_P: ret = tab->rgba_64_to_yuvj_444_p; break; /* Keep GCC happy */ case GAVL_PIXELFORMAT_NONE: case GAVL_RGBA_64: break; } break; case GAVL_RGBA_FLOAT: switch(output_pixelformat) { case GAVL_GRAY_8: ret = tab->rgba_float_to_gray_8; break; case GAVL_GRAY_16: ret = tab->rgba_float_to_gray_16; break; case GAVL_GRAY_FLOAT: ret = tab->rgba_float_to_gray_float; break; case GAVL_GRAYA_16: ret = tab->rgba_float_to_graya_16; break; case GAVL_GRAYA_32: ret = tab->rgba_float_to_graya_32; break; case GAVL_GRAYA_FLOAT: ret = tab->rgba_float_to_graya_float; break; case GAVL_RGB_15: ret = tab->rgba_float_to_rgb_15; break; case GAVL_BGR_15: ret = tab->rgba_float_to_bgr_15; break; case GAVL_RGB_16: ret = tab->rgba_float_to_rgb_16; break; case GAVL_BGR_16: ret = tab->rgba_float_to_bgr_16; break; case GAVL_RGB_24: ret = tab->rgba_float_to_rgb_24; break; case GAVL_BGR_24: ret = tab->rgba_float_to_bgr_24; break; case GAVL_RGB_32: ret = tab->rgba_float_to_rgb_32; break; case GAVL_BGR_32: ret = tab->rgba_float_to_bgr_32; break; case GAVL_RGBA_32: ret = tab->rgba_float_to_rgba_32; break; case GAVL_RGB_48: ret = tab->rgba_float_to_rgb_48; break; case GAVL_RGBA_64: ret = tab->rgba_float_to_rgba_64; break; case GAVL_RGB_FLOAT: ret = tab->rgba_float_to_rgb_float; break; case GAVL_YUY2: ret = tab->rgba_float_to_yuy2; break; case GAVL_UYVY: ret = tab->rgba_float_to_uyvy; break; case GAVL_YUVA_32: ret = tab->rgba_float_to_yuva_32; break; case GAVL_YUVA_64: ret = tab->rgba_float_to_yuva_64; break; case GAVL_YUVA_FLOAT: ret = tab->rgba_float_to_yuva_float; break; case GAVL_YUV_FLOAT: ret = tab->rgba_float_to_yuv_float; break; case GAVL_YUV_420_P: ret = tab->rgba_float_to_yuv_420_p; break; case GAVL_YUV_410_P: ret = tab->rgba_float_to_yuv_410_p; break; case GAVL_YUV_422_P: ret = tab->rgba_float_to_yuv_422_p; break; case GAVL_YUV_422_P_16: ret = tab->rgba_float_to_yuv_422_p_16; break; case GAVL_YUV_411_P: ret = tab->rgba_float_to_yuv_411_p; break; case GAVL_YUV_444_P: ret = tab->rgba_float_to_yuv_444_p; break; case GAVL_YUV_444_P_16: ret = tab->rgba_float_to_yuv_444_p_16; break; case GAVL_YUVJ_420_P: ret = tab->rgba_float_to_yuvj_420_p; break; case GAVL_YUVJ_422_P: ret = tab->rgba_float_to_yuvj_422_p; break; case GAVL_YUVJ_444_P: ret = tab->rgba_float_to_yuvj_444_p; break; /* Keep GCC happy */ case GAVL_PIXELFORMAT_NONE: case GAVL_RGBA_FLOAT: break; } break; case GAVL_RGB_48: switch(output_pixelformat) { case GAVL_GRAY_8: ret = tab->rgb_48_to_gray_8; break; case GAVL_GRAY_16: ret = tab->rgb_48_to_gray_16; break; case GAVL_GRAY_FLOAT: ret = tab->rgb_48_to_gray_float; break; case GAVL_GRAYA_16: ret = tab->rgb_48_to_graya_16; break; case GAVL_GRAYA_32: ret = tab->rgb_48_to_graya_32; break; case GAVL_GRAYA_FLOAT: ret = tab->rgb_48_to_graya_float; break; case GAVL_RGB_15: ret = tab->rgb_48_to_15; break; case GAVL_BGR_15: ret = tab->rgb_48_to_15_swap; break; case GAVL_RGB_16: ret = tab->rgb_48_to_16; break; case GAVL_BGR_16: ret = tab->rgb_48_to_16_swap; break; case GAVL_RGB_24: ret = tab->rgb_48_to_24; break; case GAVL_BGR_24: ret = tab->rgb_48_to_24_swap; break; case GAVL_RGB_32: ret = tab->rgb_48_to_32; break; case GAVL_BGR_32: ret = tab->rgb_48_to_32_swap; break; case GAVL_RGBA_32: ret = tab->rgb_48_to_rgba_32; break; case GAVL_RGBA_64: ret = tab->rgb_48_to_rgba_64; break; case GAVL_RGB_FLOAT: ret = tab->rgb_48_to_float; break; case GAVL_RGBA_FLOAT: ret = tab->rgb_48_to_rgba_float; break; case GAVL_YUY2: ret = tab->rgb_48_to_yuy2; break; case GAVL_UYVY: ret = tab->rgb_48_to_uyvy; break; case GAVL_YUVA_32: ret = tab->rgb_48_to_yuva_32; break; case GAVL_YUVA_64: ret = tab->rgb_48_to_yuva_64; break; case GAVL_YUVA_FLOAT: ret = tab->rgb_48_to_yuva_float; break; case GAVL_YUV_FLOAT: ret = tab->rgb_48_to_yuv_float; break; case GAVL_YUV_420_P: ret = tab->rgb_48_to_yuv_420_p; break; case GAVL_YUV_410_P: ret = tab->rgb_48_to_yuv_410_p; break; case GAVL_YUV_422_P: ret = tab->rgb_48_to_yuv_422_p; break; case GAVL_YUV_422_P_16: ret = tab->rgb_48_to_yuv_422_p_16; break; case GAVL_YUV_411_P: ret = tab->rgb_48_to_yuv_411_p; break; case GAVL_YUV_444_P: ret = tab->rgb_48_to_yuv_444_p; break; case GAVL_YUV_444_P_16: ret = tab->rgb_48_to_yuv_444_p_16; break; case GAVL_YUVJ_420_P: ret = tab->rgb_48_to_yuvj_420_p; break; case GAVL_YUVJ_422_P: ret = tab->rgb_48_to_yuvj_422_p; break; case GAVL_YUVJ_444_P: ret = tab->rgb_48_to_yuvj_444_p; break; /* Keep GCC happy */ case GAVL_PIXELFORMAT_NONE: case GAVL_RGB_48: break; } break; case GAVL_RGB_FLOAT: switch(output_pixelformat) { case GAVL_GRAY_8: ret = tab->rgb_float_to_gray_8; break; case GAVL_GRAY_16: ret = tab->rgb_float_to_gray_16; break; case GAVL_GRAY_FLOAT: ret = tab->rgb_float_to_gray_float; break; case GAVL_GRAYA_16: ret = tab->rgb_float_to_graya_16; break; case GAVL_GRAYA_32: ret = tab->rgb_float_to_graya_32; break; case GAVL_GRAYA_FLOAT: ret = tab->rgb_float_to_graya_float; break; case GAVL_RGB_15: ret = tab->rgb_float_to_15; break; case GAVL_BGR_15: ret = tab->rgb_float_to_15_swap; break; case GAVL_RGB_16: ret = tab->rgb_float_to_16; break; case GAVL_BGR_16: ret = tab->rgb_float_to_16_swap; break; case GAVL_RGB_24: ret = tab->rgb_float_to_24; break; case GAVL_BGR_24: ret = tab->rgb_float_to_24_swap; break; case GAVL_RGB_32: ret = tab->rgb_float_to_32; break; case GAVL_BGR_32: ret = tab->rgb_float_to_32_swap; break; case GAVL_RGBA_32: ret = tab->rgb_float_to_rgba_32; break; case GAVL_RGB_48: ret = tab->rgb_float_to_48; break; case GAVL_RGBA_64: ret = tab->rgb_float_to_rgba_64; break; case GAVL_RGBA_FLOAT: ret = tab->rgb_float_to_rgba_float; break; case GAVL_YUY2: ret = tab->rgb_float_to_yuy2; break; case GAVL_UYVY: ret = tab->rgb_float_to_uyvy; break; case GAVL_YUVA_32: ret = tab->rgb_float_to_yuva_32; break; case GAVL_YUVA_64: ret = tab->rgb_float_to_yuva_64; break; case GAVL_YUVA_FLOAT: ret = tab->rgb_float_to_yuva_float; break; case GAVL_YUV_FLOAT: ret = tab->rgb_float_to_yuv_float; break; case GAVL_YUV_420_P: ret = tab->rgb_float_to_yuv_420_p; break; case GAVL_YUV_410_P: ret = tab->rgb_float_to_yuv_410_p; break; case GAVL_YUV_422_P: ret = tab->rgb_float_to_yuv_422_p; break; case GAVL_YUV_422_P_16: ret = tab->rgb_float_to_yuv_422_p_16; break; case GAVL_YUV_411_P: ret = tab->rgb_float_to_yuv_411_p; break; case GAVL_YUV_444_P: ret = tab->rgb_float_to_yuv_444_p; break; case GAVL_YUV_444_P_16: ret = tab->rgb_float_to_yuv_444_p_16; break; case GAVL_YUVJ_420_P: ret = tab->rgb_float_to_yuvj_420_p; break; case GAVL_YUVJ_422_P: ret = tab->rgb_float_to_yuvj_422_p; break; case GAVL_YUVJ_444_P: ret = tab->rgb_float_to_yuvj_444_p; break; /* Keep GCC happy */ case GAVL_PIXELFORMAT_NONE: case GAVL_RGB_FLOAT: break; } break; case GAVL_YUY2: switch(output_pixelformat) { case GAVL_GRAY_8: ret = tab->yuy2_to_gray_8; break; case GAVL_GRAY_16: ret = tab->yuy2_to_gray_16; break; case GAVL_GRAY_FLOAT: ret = tab->yuy2_to_gray_float; break; case GAVL_GRAYA_16: ret = tab->yuy2_to_graya_16; break; case GAVL_GRAYA_32: ret = tab->yuy2_to_graya_32; break; case GAVL_GRAYA_FLOAT: ret = tab->yuy2_to_graya_float; break; case GAVL_RGB_15: ret = tab->yuy2_to_rgb_15; break; case GAVL_BGR_15: ret = tab->yuy2_to_bgr_15; break; case GAVL_RGB_16: ret = tab->yuy2_to_rgb_16; break; case GAVL_BGR_16: ret = tab->yuy2_to_bgr_16; break; case GAVL_RGB_24: ret = tab->yuy2_to_rgb_24; break; case GAVL_BGR_24: ret = tab->yuy2_to_bgr_24; break; case GAVL_RGB_32: ret = tab->yuy2_to_rgb_32; break; case GAVL_BGR_32: ret = tab->yuy2_to_bgr_32; break; case GAVL_RGBA_32: ret = tab->yuy2_to_rgba_32; break; case GAVL_RGB_48: ret = tab->yuy2_to_rgb_48; break; case GAVL_RGBA_64: ret = tab->yuy2_to_rgba_64; break; case GAVL_RGB_FLOAT: ret = tab->yuy2_to_rgb_float; break; case GAVL_RGBA_FLOAT: ret = tab->yuy2_to_rgba_float; break; case GAVL_YUV_420_P: ret = tab->yuy2_to_yuv_420_p; break; case GAVL_YUV_410_P: ret = tab->yuy2_to_yuv_410_p; break; case GAVL_YUV_422_P: ret = tab->yuy2_to_yuv_422_p; break; case GAVL_YUV_422_P_16: ret = tab->yuy2_to_yuv_422_p_16; break; case GAVL_YUV_411_P: ret = tab->yuy2_to_yuv_411_p; break; case GAVL_YUV_444_P: ret = tab->yuy2_to_yuv_444_p; break; case GAVL_YUV_444_P_16: ret = tab->yuy2_to_yuv_444_p_16; break; case GAVL_YUVJ_420_P: ret = tab->yuy2_to_yuvj_420_p; break; case GAVL_YUVJ_422_P: ret = tab->yuy2_to_yuvj_422_p; break; case GAVL_YUVJ_444_P: ret = tab->yuy2_to_yuvj_444_p; break; case GAVL_UYVY: ret = tab->uyvy_to_yuy2; break; case GAVL_YUVA_32: ret = tab->yuy2_to_yuva_32; break; case GAVL_YUVA_64: ret = tab->yuy2_to_yuva_64; break; case GAVL_YUVA_FLOAT: ret = tab->yuy2_to_yuva_float; break; case GAVL_YUV_FLOAT: ret = tab->yuy2_to_yuv_float; break; /* Keep GCC happy */ case GAVL_PIXELFORMAT_NONE: case GAVL_YUY2: break; } break; case GAVL_UYVY: switch(output_pixelformat) { case GAVL_GRAY_8: ret = tab->uyvy_to_gray_8; break; case GAVL_GRAY_16: ret = tab->uyvy_to_gray_16; break; case GAVL_GRAY_FLOAT: ret = tab->uyvy_to_gray_float; break; case GAVL_GRAYA_16: ret = tab->uyvy_to_graya_16; break; case GAVL_GRAYA_32: ret = tab->uyvy_to_graya_32; break; case GAVL_GRAYA_FLOAT: ret = tab->uyvy_to_graya_float; break; case GAVL_RGB_15: ret = tab->uyvy_to_rgb_15; break; case GAVL_BGR_15: ret = tab->uyvy_to_bgr_15; break; case GAVL_RGB_16: ret = tab->uyvy_to_rgb_16; break; case GAVL_BGR_16: ret = tab->uyvy_to_bgr_16; break; case GAVL_RGB_24: ret = tab->uyvy_to_rgb_24; break; case GAVL_BGR_24: ret = tab->uyvy_to_bgr_24; break; case GAVL_RGB_32: ret = tab->uyvy_to_rgb_32; break; case GAVL_BGR_32: ret = tab->uyvy_to_bgr_32; break; case GAVL_RGBA_32: ret = tab->uyvy_to_rgba_32; break; case GAVL_RGB_48: ret = tab->uyvy_to_rgb_48; break; case GAVL_RGBA_64: ret = tab->uyvy_to_rgba_64; break; case GAVL_RGB_FLOAT: ret = tab->uyvy_to_rgb_float; break; case GAVL_RGBA_FLOAT: ret = tab->uyvy_to_rgba_float; break; case GAVL_YUV_420_P: ret = tab->uyvy_to_yuv_420_p; break; case GAVL_YUV_410_P: ret = tab->uyvy_to_yuv_410_p; break; case GAVL_YUV_422_P: ret = tab->uyvy_to_yuv_422_p; break; case GAVL_YUV_422_P_16: ret = tab->uyvy_to_yuv_422_p_16; break; case GAVL_YUV_411_P: ret = tab->uyvy_to_yuv_411_p; break; case GAVL_YUV_444_P: ret = tab->uyvy_to_yuv_444_p; break; case GAVL_YUV_444_P_16: ret = tab->uyvy_to_yuv_444_p_16; break; case GAVL_YUVJ_420_P: ret = tab->uyvy_to_yuvj_420_p; break; case GAVL_YUVJ_422_P: ret = tab->uyvy_to_yuvj_422_p; break; case GAVL_YUVJ_444_P: ret = tab->uyvy_to_yuvj_444_p; break; case GAVL_YUY2: ret = tab->uyvy_to_yuy2; break; case GAVL_YUVA_32: ret = tab->uyvy_to_yuva_32; break; case GAVL_YUVA_64: ret = tab->uyvy_to_yuva_64; break; case GAVL_YUVA_FLOAT: ret = tab->uyvy_to_yuva_float; break; case GAVL_YUV_FLOAT: ret = tab->uyvy_to_yuv_float; break; /* Keep GCC happy */ case GAVL_PIXELFORMAT_NONE: case GAVL_UYVY: break; } break; case GAVL_YUVA_32: switch(output_pixelformat) { case GAVL_GRAY_8: ret = tab->yuva_32_to_gray_8; break; case GAVL_GRAY_16: ret = tab->yuva_32_to_gray_16; break; case GAVL_GRAY_FLOAT: ret = tab->yuva_32_to_gray_float; break; case GAVL_GRAYA_16: ret = tab->yuva_32_to_graya_16; break; case GAVL_GRAYA_32: ret = tab->yuva_32_to_graya_32; break; case GAVL_GRAYA_FLOAT: ret = tab->yuva_32_to_graya_float; break; case GAVL_RGB_15: ret = tab->yuva_32_to_rgb_15; break; case GAVL_BGR_15: ret = tab->yuva_32_to_bgr_15; break; case GAVL_RGB_16: ret = tab->yuva_32_to_rgb_16; break; case GAVL_BGR_16: ret = tab->yuva_32_to_bgr_16; break; case GAVL_RGB_24: ret = tab->yuva_32_to_rgb_24; break; case GAVL_BGR_24: ret = tab->yuva_32_to_bgr_24; break; case GAVL_RGB_32: ret = tab->yuva_32_to_rgb_32; break; case GAVL_BGR_32: ret = tab->yuva_32_to_bgr_32; break; case GAVL_RGBA_32: ret = tab->yuva_32_to_rgba_32; break; case GAVL_RGB_48: ret = tab->yuva_32_to_rgb_48; break; case GAVL_RGBA_64: ret = tab->yuva_32_to_rgba_64; break; case GAVL_RGB_FLOAT: ret = tab->yuva_32_to_rgb_float; break; case GAVL_RGBA_FLOAT: ret = tab->yuva_32_to_rgba_float; break; case GAVL_YUV_420_P: ret = tab->yuva_32_to_yuv_420_p; break; case GAVL_YUV_410_P: ret = tab->yuva_32_to_yuv_410_p; break; case GAVL_YUV_422_P: ret = tab->yuva_32_to_yuv_422_p; break; case GAVL_YUV_422_P_16: ret = tab->yuva_32_to_yuv_422_p_16; break; case GAVL_YUV_411_P: ret = tab->yuva_32_to_yuv_411_p; break; case GAVL_YUV_444_P: ret = tab->yuva_32_to_yuv_444_p; break; case GAVL_YUV_444_P_16: ret = tab->yuva_32_to_yuv_444_p_16; break; case GAVL_YUVJ_420_P: ret = tab->yuva_32_to_yuvj_420_p; break; case GAVL_YUVJ_422_P: ret = tab->yuva_32_to_yuvj_422_p; break; case GAVL_YUVJ_444_P: ret = tab->yuva_32_to_yuvj_444_p; break; case GAVL_YUY2: ret = tab->yuva_32_to_yuy2; break; case GAVL_UYVY: ret = tab->yuva_32_to_uyvy; break; case GAVL_YUVA_64: ret = tab->yuva_32_to_yuva_64; break; case GAVL_YUVA_FLOAT: ret = tab->yuva_32_to_yuva_float; break; case GAVL_YUV_FLOAT: ret = tab->yuva_32_to_yuv_float; break; /* Keep GCC happy */ case GAVL_PIXELFORMAT_NONE: case GAVL_YUVA_32: break; } break; case GAVL_YUVA_64: switch(output_pixelformat) { case GAVL_GRAY_8: ret = tab->yuva_64_to_gray_8; break; case GAVL_GRAY_16: ret = tab->yuva_64_to_gray_16; break; case GAVL_GRAY_FLOAT: ret = tab->yuva_64_to_gray_float; break; case GAVL_GRAYA_16: ret = tab->yuva_64_to_graya_16; break; case GAVL_GRAYA_32: ret = tab->yuva_64_to_graya_32; break; case GAVL_GRAYA_FLOAT: ret = tab->yuva_64_to_graya_float; break; case GAVL_RGB_15: ret = tab->yuva_64_to_rgb_15; break; case GAVL_BGR_15: ret = tab->yuva_64_to_bgr_15; break; case GAVL_RGB_16: ret = tab->yuva_64_to_rgb_16; break; case GAVL_BGR_16: ret = tab->yuva_64_to_bgr_16; break; case GAVL_RGB_24: ret = tab->yuva_64_to_rgb_24; break; case GAVL_BGR_24: ret = tab->yuva_64_to_bgr_24; break; case GAVL_RGB_32: ret = tab->yuva_64_to_rgb_32; break; case GAVL_BGR_32: ret = tab->yuva_64_to_bgr_32; break; case GAVL_RGBA_32: ret = tab->yuva_64_to_rgba_32; break; case GAVL_RGB_48: ret = tab->yuva_64_to_rgb_48; break; case GAVL_RGBA_64: ret = tab->yuva_64_to_rgba_64; break; case GAVL_RGB_FLOAT: ret = tab->yuva_64_to_rgb_float; break; case GAVL_RGBA_FLOAT: ret = tab->yuva_64_to_rgba_float; break; case GAVL_YUV_420_P: ret = tab->yuva_64_to_yuv_420_p; break; case GAVL_YUV_410_P: ret = tab->yuva_64_to_yuv_410_p; break; case GAVL_YUV_422_P: ret = tab->yuva_64_to_yuv_422_p; break; case GAVL_YUV_422_P_16: ret = tab->yuva_64_to_yuv_422_p_16; break; case GAVL_YUV_411_P: ret = tab->yuva_64_to_yuv_411_p; break; case GAVL_YUV_444_P: ret = tab->yuva_64_to_yuv_444_p; break; case GAVL_YUV_444_P_16: ret = tab->yuva_64_to_yuv_444_p_16; break; case GAVL_YUVJ_420_P: ret = tab->yuva_64_to_yuvj_420_p; break; case GAVL_YUVJ_422_P: ret = tab->yuva_64_to_yuvj_422_p; break; case GAVL_YUVJ_444_P: ret = tab->yuva_64_to_yuvj_444_p; break; case GAVL_YUY2: ret = tab->yuva_64_to_yuy2; break; case GAVL_UYVY: ret = tab->yuva_64_to_uyvy; break; case GAVL_YUVA_32: ret = tab->yuva_64_to_yuva_32; break; case GAVL_YUVA_FLOAT: ret = tab->yuva_64_to_yuva_float; break; case GAVL_YUV_FLOAT: ret = tab->yuva_64_to_yuv_float; break; /* Keep GCC happy */ case GAVL_PIXELFORMAT_NONE: case GAVL_YUVA_64: break; } break; case GAVL_YUVA_FLOAT: switch(output_pixelformat) { case GAVL_GRAY_8: ret = tab->yuva_float_to_gray_8; break; case GAVL_GRAY_16: ret = tab->yuva_float_to_gray_16; break; case GAVL_GRAY_FLOAT: ret = tab->yuva_float_to_gray_float; break; case GAVL_GRAYA_16: ret = tab->yuva_float_to_graya_16; break; case GAVL_GRAYA_32: ret = tab->yuva_float_to_graya_32; break; case GAVL_GRAYA_FLOAT: ret = tab->yuva_float_to_graya_float; break; case GAVL_RGB_15: ret = tab->yuva_float_to_rgb_15; break; case GAVL_BGR_15: ret = tab->yuva_float_to_bgr_15; break; case GAVL_RGB_16: ret = tab->yuva_float_to_rgb_16; break; case GAVL_BGR_16: ret = tab->yuva_float_to_bgr_16; break; case GAVL_RGB_24: ret = tab->yuva_float_to_rgb_24; break; case GAVL_BGR_24: ret = tab->yuva_float_to_bgr_24; break; case GAVL_RGB_32: ret = tab->yuva_float_to_rgb_32; break; case GAVL_BGR_32: ret = tab->yuva_float_to_bgr_32; break; case GAVL_RGBA_32: ret = tab->yuva_float_to_rgba_32; break; case GAVL_RGB_48: ret = tab->yuva_float_to_rgb_48; break; case GAVL_RGBA_64: ret = tab->yuva_float_to_rgba_64; break; case GAVL_RGB_FLOAT: ret = tab->yuva_float_to_rgb_float; break; case GAVL_RGBA_FLOAT: ret = tab->yuva_float_to_rgba_float; break; case GAVL_YUV_420_P: ret = tab->yuva_float_to_yuv_420_p; break; case GAVL_YUV_410_P: ret = tab->yuva_float_to_yuv_410_p; break; case GAVL_YUV_422_P: ret = tab->yuva_float_to_yuv_422_p; break; case GAVL_YUV_422_P_16: ret = tab->yuva_float_to_yuv_422_p_16; break; case GAVL_YUV_411_P: ret = tab->yuva_float_to_yuv_411_p; break; case GAVL_YUV_444_P: ret = tab->yuva_float_to_yuv_444_p; break; case GAVL_YUV_444_P_16: ret = tab->yuva_float_to_yuv_444_p_16; break; case GAVL_YUVJ_420_P: ret = tab->yuva_float_to_yuvj_420_p; break; case GAVL_YUVJ_422_P: ret = tab->yuva_float_to_yuvj_422_p; break; case GAVL_YUVJ_444_P: ret = tab->yuva_float_to_yuvj_444_p; break; case GAVL_YUY2: ret = tab->yuva_float_to_yuy2; break; case GAVL_UYVY: ret = tab->yuva_float_to_uyvy; break; case GAVL_YUVA_64: ret = tab->yuva_float_to_yuva_64; break; case GAVL_YUVA_32: ret = tab->yuva_float_to_yuva_32; break; case GAVL_YUV_FLOAT: ret = tab->yuva_float_to_yuv_float; break; /* Keep GCC happy */ case GAVL_PIXELFORMAT_NONE: case GAVL_YUVA_FLOAT: break; } break; case GAVL_YUV_FLOAT: switch(output_pixelformat) { case GAVL_GRAY_8: ret = tab->yuv_float_to_gray_8; break; case GAVL_GRAY_16: ret = tab->yuv_float_to_gray_16; break; case GAVL_GRAY_FLOAT: ret = tab->yuv_float_to_gray_float; break; case GAVL_GRAYA_16: ret = tab->yuv_float_to_graya_16; break; case GAVL_GRAYA_32: ret = tab->yuv_float_to_graya_32; break; case GAVL_GRAYA_FLOAT: ret = tab->yuv_float_to_graya_float; break; case GAVL_RGB_15: ret = tab->yuv_float_to_rgb_15; break; case GAVL_BGR_15: ret = tab->yuv_float_to_bgr_15; break; case GAVL_RGB_16: ret = tab->yuv_float_to_rgb_16; break; case GAVL_BGR_16: ret = tab->yuv_float_to_bgr_16; break; case GAVL_RGB_24: ret = tab->yuv_float_to_rgb_24; break; case GAVL_BGR_24: ret = tab->yuv_float_to_bgr_24; break; case GAVL_RGB_32: ret = tab->yuv_float_to_rgb_32; break; case GAVL_BGR_32: ret = tab->yuv_float_to_bgr_32; break; case GAVL_RGBA_32: ret = tab->yuv_float_to_rgba_32; break; case GAVL_RGB_48: ret = tab->yuv_float_to_rgb_48; break; case GAVL_RGBA_64: ret = tab->yuv_float_to_rgba_64; break; case GAVL_RGB_FLOAT: ret = tab->yuv_float_to_rgb_float; break; case GAVL_RGBA_FLOAT: ret = tab->yuv_float_to_rgba_float; break; case GAVL_YUV_420_P: ret = tab->yuv_float_to_yuv_420_p; break; case GAVL_YUV_410_P: ret = tab->yuv_float_to_yuv_410_p; break; case GAVL_YUV_422_P: ret = tab->yuv_float_to_yuv_422_p; break; case GAVL_YUV_422_P_16: ret = tab->yuv_float_to_yuv_422_p_16; break; case GAVL_YUV_411_P: ret = tab->yuv_float_to_yuv_411_p; break; case GAVL_YUV_444_P: ret = tab->yuv_float_to_yuv_444_p; break; case GAVL_YUV_444_P_16: ret = tab->yuv_float_to_yuv_444_p_16; break; case GAVL_YUVJ_420_P: ret = tab->yuv_float_to_yuvj_420_p; break; case GAVL_YUVJ_422_P: ret = tab->yuv_float_to_yuvj_422_p; break; case GAVL_YUVJ_444_P: ret = tab->yuv_float_to_yuvj_444_p; break; case GAVL_YUY2: ret = tab->yuv_float_to_yuy2; break; case GAVL_UYVY: ret = tab->yuv_float_to_uyvy; break; case GAVL_YUVA_64: ret = tab->yuv_float_to_yuva_64; break; case GAVL_YUVA_32: ret = tab->yuv_float_to_yuva_32; break; case GAVL_YUVA_FLOAT: ret = tab->yuv_float_to_yuva_float; break; /* Keep GCC happy */ case GAVL_PIXELFORMAT_NONE: case GAVL_YUV_FLOAT: break; } break; case GAVL_YUV_420_P: switch(output_pixelformat) { case GAVL_GRAY_8: ret = tab->y_8_to_gray_8; break; case GAVL_GRAY_16: ret = tab->y_8_to_gray_16; break; case GAVL_GRAY_FLOAT: ret = tab->y_8_to_gray_float; break; case GAVL_GRAYA_16: ret = tab->y_8_to_graya_16; break; case GAVL_GRAYA_32: ret = tab->y_8_to_graya_32; break; case GAVL_GRAYA_FLOAT: ret = tab->y_8_to_graya_float; break; case GAVL_RGB_15: ret = tab->yuv_420_p_to_rgb_15; break; case GAVL_BGR_15: ret = tab->yuv_420_p_to_bgr_15; break; case GAVL_RGB_16: ret = tab->yuv_420_p_to_rgb_16; break; case GAVL_BGR_16: ret = tab->yuv_420_p_to_bgr_16; break; case GAVL_RGB_24: ret = tab->yuv_420_p_to_rgb_24; break; case GAVL_BGR_24: ret = tab->yuv_420_p_to_bgr_24; break; case GAVL_RGB_32: ret = tab->yuv_420_p_to_rgb_32; break; case GAVL_BGR_32: ret = tab->yuv_420_p_to_bgr_32; break; case GAVL_RGBA_32: ret = tab->yuv_420_p_to_rgba_32; break; case GAVL_RGB_48: ret = tab->yuv_420_p_to_rgb_48; break; case GAVL_RGBA_64: ret = tab->yuv_420_p_to_rgba_64; break; case GAVL_RGB_FLOAT: ret = tab->yuv_420_p_to_rgb_float; break; case GAVL_RGBA_FLOAT: ret = tab->yuv_420_p_to_rgba_float; break; case GAVL_YUY2: ret = tab->yuv_420_p_to_yuy2; break; case GAVL_UYVY: ret = tab->yuv_420_p_to_uyvy; break; case GAVL_YUVA_32: ret = tab->yuv_420_p_to_yuva_32; break; case GAVL_YUVA_64: ret = tab->yuv_420_p_to_yuva_64; break; case GAVL_YUVA_FLOAT: ret = tab->yuv_420_p_to_yuva_float; break; case GAVL_YUV_FLOAT: ret = tab->yuv_420_p_to_yuv_float; break; case GAVL_YUV_410_P: ret = tab->yuv_420_p_to_yuv_410_p; break; case GAVL_YUV_422_P: ret = tab->yuv_420_p_to_yuv_422_p; break; case GAVL_YUV_422_P_16: ret = tab->yuv_420_p_to_yuv_422_p_16; break; case GAVL_YUV_411_P: ret = tab->yuv_420_p_to_yuv_411_p; break; case GAVL_YUV_444_P: ret = tab->yuv_420_p_to_yuv_444_p; break; case GAVL_YUV_444_P_16: ret = tab->yuv_420_p_to_yuv_444_p_16; break; case GAVL_YUVJ_420_P: ret = tab->yuv_420_p_to_yuvj_420_p; break; case GAVL_YUVJ_422_P: ret = tab->yuv_420_p_to_yuvj_422_p; break; case GAVL_YUVJ_444_P: ret = tab->yuv_420_p_to_yuvj_444_p; break; /* Keep GCC happy */ case GAVL_PIXELFORMAT_NONE: case GAVL_YUV_420_P: break; } break; case GAVL_YUV_410_P: switch(output_pixelformat) { case GAVL_GRAY_8: ret = tab->y_8_to_gray_8; break; case GAVL_GRAY_16: ret = tab->y_8_to_gray_16; break; case GAVL_GRAY_FLOAT: ret = tab->y_8_to_gray_float; break; case GAVL_GRAYA_16: ret = tab->y_8_to_graya_16; break; case GAVL_GRAYA_32: ret = tab->y_8_to_graya_32; break; case GAVL_GRAYA_FLOAT: ret = tab->y_8_to_graya_float; break; case GAVL_RGB_15: ret = tab->yuv_410_p_to_rgb_15; break; case GAVL_BGR_15: ret = tab->yuv_410_p_to_bgr_15; break; case GAVL_RGB_16: ret = tab->yuv_410_p_to_rgb_16; break; case GAVL_BGR_16: ret = tab->yuv_410_p_to_bgr_16; break; case GAVL_RGB_24: ret = tab->yuv_410_p_to_rgb_24; break; case GAVL_BGR_24: ret = tab->yuv_410_p_to_bgr_24; break; case GAVL_RGB_32: ret = tab->yuv_410_p_to_rgb_32; break; case GAVL_BGR_32: ret = tab->yuv_410_p_to_bgr_32; break; case GAVL_RGBA_32: ret = tab->yuv_410_p_to_rgba_32; break; case GAVL_RGB_48: ret = tab->yuv_410_p_to_rgb_48; break; case GAVL_RGBA_64: ret = tab->yuv_410_p_to_rgba_64; break; case GAVL_RGB_FLOAT: ret = tab->yuv_410_p_to_rgb_float; break; case GAVL_RGBA_FLOAT: ret = tab->yuv_410_p_to_rgba_float; break; case GAVL_YUY2: ret = tab->yuv_410_p_to_yuy2; break; case GAVL_UYVY: ret = tab->yuv_410_p_to_uyvy; break; case GAVL_YUVA_32: ret = tab->yuv_410_p_to_yuva_32; break; case GAVL_YUVA_64: ret = tab->yuv_410_p_to_yuva_64; break; case GAVL_YUVA_FLOAT: ret = tab->yuv_410_p_to_yuva_float; break; case GAVL_YUV_FLOAT: ret = tab->yuv_410_p_to_yuv_float; break; case GAVL_YUV_420_P: ret = tab->yuv_410_p_to_yuv_420_p; break; case GAVL_YUV_422_P: ret = tab->yuv_410_p_to_yuv_422_p; break; case GAVL_YUV_422_P_16: ret = tab->yuv_410_p_to_yuv_422_p_16; break; case GAVL_YUV_411_P: ret = tab->yuv_410_p_to_yuv_411_p; break; case GAVL_YUV_444_P: ret = tab->yuv_410_p_to_yuv_444_p; break; case GAVL_YUV_444_P_16: ret = tab->yuv_410_p_to_yuv_444_p_16; break; case GAVL_YUVJ_420_P: ret = tab->yuv_410_p_to_yuvj_420_p; break; case GAVL_YUVJ_422_P: ret = tab->yuv_410_p_to_yuvj_422_p; break; case GAVL_YUVJ_444_P: ret = tab->yuv_410_p_to_yuvj_444_p; break; /* Keep GCC happy */ case GAVL_PIXELFORMAT_NONE: case GAVL_YUV_410_P: break; } break; case GAVL_YUV_422_P: switch(output_pixelformat) { case GAVL_GRAY_8: ret = tab->y_8_to_gray_8; break; case GAVL_GRAY_16: ret = tab->y_8_to_gray_16; break; case GAVL_GRAY_FLOAT: ret = tab->y_8_to_gray_float; break; case GAVL_GRAYA_16: ret = tab->y_8_to_graya_16; break; case GAVL_GRAYA_32: ret = tab->y_8_to_graya_32; break; case GAVL_GRAYA_FLOAT: ret = tab->y_8_to_graya_float; break; case GAVL_RGB_15: ret = tab->yuv_422_p_to_rgb_15; break; case GAVL_BGR_15: ret = tab->yuv_422_p_to_bgr_15; break; case GAVL_RGB_16: ret = tab->yuv_422_p_to_rgb_16; break; case GAVL_BGR_16: ret = tab->yuv_422_p_to_bgr_16; break; case GAVL_RGB_24: ret = tab->yuv_422_p_to_rgb_24; break; case GAVL_BGR_24: ret = tab->yuv_422_p_to_bgr_24; break; case GAVL_RGB_32: ret = tab->yuv_422_p_to_rgb_32; break; case GAVL_BGR_32: ret = tab->yuv_422_p_to_bgr_32; break; case GAVL_RGBA_32: ret = tab->yuv_422_p_to_rgba_32; break; case GAVL_RGB_48: ret = tab->yuv_422_p_to_rgb_48; break; case GAVL_RGBA_64: ret = tab->yuv_422_p_to_rgba_64; break; case GAVL_RGB_FLOAT: ret = tab->yuv_422_p_to_rgb_float; break; case GAVL_RGBA_FLOAT: ret = tab->yuv_422_p_to_rgba_float; break; case GAVL_YUY2: ret = tab->yuv_422_p_to_yuy2; break; case GAVL_UYVY: ret = tab->yuv_422_p_to_uyvy; break; case GAVL_YUVA_32: ret = tab->yuv_422_p_to_yuva_32; break; case GAVL_YUVA_64: ret = tab->yuv_422_p_to_yuva_64; break; case GAVL_YUVA_FLOAT: ret = tab->yuv_422_p_to_yuva_float; break; case GAVL_YUV_FLOAT: ret = tab->yuv_422_p_to_yuv_float; break; case GAVL_YUV_420_P: ret = tab->yuv_422_p_to_yuv_420_p; break; case GAVL_YUV_410_P: ret = tab->yuv_422_p_to_yuv_410_p; break; case GAVL_YUV_411_P: ret = tab->yuv_422_p_to_yuv_411_p; break; case GAVL_YUV_444_P: ret = tab->yuv_422_p_to_yuv_444_p; break; case GAVL_YUV_444_P_16: ret = tab->yuv_422_p_to_yuv_444_p_16; break; case GAVL_YUV_422_P_16: ret = tab->yuv_422_p_to_yuv_422_p_16; break; case GAVL_YUVJ_420_P: ret = tab->yuv_422_p_to_yuvj_420_p; break; case GAVL_YUVJ_422_P: ret = tab->yuv_422_p_to_yuvj_422_p; break; case GAVL_YUVJ_444_P: ret = tab->yuv_422_p_to_yuvj_444_p; break; /* Keep GCC happy */ case GAVL_PIXELFORMAT_NONE: case GAVL_YUV_422_P: break; } break; case GAVL_YUV_422_P_16: switch(output_pixelformat) { case GAVL_GRAY_8: ret = tab->y_16_to_gray_8; break; case GAVL_GRAY_16: ret = tab->y_16_to_gray_16; break; case GAVL_GRAY_FLOAT: ret = tab->y_16_to_gray_float; break; case GAVL_GRAYA_16: ret = tab->y_16_to_graya_16; break; case GAVL_GRAYA_32: ret = tab->y_16_to_graya_32; break; case GAVL_GRAYA_FLOAT: ret = tab->y_16_to_graya_float; break; case GAVL_RGB_15: ret = tab->yuv_422_p_16_to_rgb_15; break; case GAVL_BGR_15: ret = tab->yuv_422_p_16_to_bgr_15; break; case GAVL_RGB_16: ret = tab->yuv_422_p_16_to_rgb_16; break; case GAVL_BGR_16: ret = tab->yuv_422_p_16_to_bgr_16; break; case GAVL_RGB_24: ret = tab->yuv_422_p_16_to_rgb_24; break; case GAVL_BGR_24: ret = tab->yuv_422_p_16_to_bgr_24; break; case GAVL_RGB_32: ret = tab->yuv_422_p_16_to_rgb_32; break; case GAVL_BGR_32: ret = tab->yuv_422_p_16_to_bgr_32; break; case GAVL_RGBA_32: ret = tab->yuv_422_p_16_to_rgba_32; break; case GAVL_RGB_48: ret = tab->yuv_422_p_16_to_rgb_48; break; case GAVL_RGBA_64: ret = tab->yuv_422_p_16_to_rgba_64; break; case GAVL_RGB_FLOAT: ret = tab->yuv_422_p_16_to_rgb_float; break; case GAVL_RGBA_FLOAT: ret = tab->yuv_422_p_16_to_rgba_float; break; case GAVL_YUY2: ret = tab->yuv_422_p_16_to_yuy2; break; case GAVL_UYVY: ret = tab->yuv_422_p_16_to_uyvy; break; case GAVL_YUVA_32: ret = tab->yuv_422_p_16_to_yuva_32; break; case GAVL_YUVA_64: ret = tab->yuv_422_p_16_to_yuva_64; break; case GAVL_YUVA_FLOAT: ret = tab->yuv_422_p_16_to_yuva_float; break; case GAVL_YUV_FLOAT: ret = tab->yuv_422_p_16_to_yuv_float; break; case GAVL_YUV_420_P: ret = tab->yuv_422_p_16_to_yuv_420_p; break; case GAVL_YUV_410_P: ret = tab->yuv_422_p_16_to_yuv_410_p; break; case GAVL_YUV_411_P: ret = tab->yuv_422_p_16_to_yuv_411_p; break; case GAVL_YUV_444_P: ret = tab->yuv_422_p_16_to_yuv_444_p; break; case GAVL_YUV_444_P_16: ret = tab->yuv_422_p_16_to_yuv_444_p_16; break; case GAVL_YUV_422_P: ret = tab->yuv_422_p_16_to_yuv_422_p; break; case GAVL_YUVJ_420_P: ret = tab->yuv_422_p_16_to_yuvj_420_p; break; case GAVL_YUVJ_422_P: ret = tab->yuv_422_p_16_to_yuvj_422_p; break; case GAVL_YUVJ_444_P: ret = tab->yuv_422_p_16_to_yuvj_444_p; break; /* Keep GCC happy */ case GAVL_PIXELFORMAT_NONE: case GAVL_YUV_422_P_16: break; } break; case GAVL_YUV_411_P: switch(output_pixelformat) { case GAVL_GRAY_8: ret = tab->y_8_to_gray_8; break; case GAVL_GRAY_16: ret = tab->y_8_to_gray_16; break; case GAVL_GRAY_FLOAT: ret = tab->y_8_to_gray_float; break; case GAVL_GRAYA_16: ret = tab->y_8_to_graya_16; break; case GAVL_GRAYA_32: ret = tab->y_8_to_graya_32; break; case GAVL_GRAYA_FLOAT: ret = tab->y_8_to_graya_float; break; case GAVL_RGB_15: ret = tab->yuv_411_p_to_rgb_15; break; case GAVL_BGR_15: ret = tab->yuv_411_p_to_bgr_15; break; case GAVL_RGB_16: ret = tab->yuv_411_p_to_rgb_16; break; case GAVL_BGR_16: ret = tab->yuv_411_p_to_bgr_16; break; case GAVL_RGB_24: ret = tab->yuv_411_p_to_rgb_24; break; case GAVL_BGR_24: ret = tab->yuv_411_p_to_bgr_24; break; case GAVL_RGB_32: ret = tab->yuv_411_p_to_rgb_32; break; case GAVL_BGR_32: ret = tab->yuv_411_p_to_bgr_32; break; case GAVL_RGBA_32: ret = tab->yuv_411_p_to_rgba_32; break; case GAVL_RGB_48: ret = tab->yuv_411_p_to_rgb_48; break; case GAVL_RGBA_64: ret = tab->yuv_411_p_to_rgba_64; break; case GAVL_RGB_FLOAT: ret = tab->yuv_411_p_to_rgb_float; break; case GAVL_RGBA_FLOAT: ret = tab->yuv_411_p_to_rgba_float; break; case GAVL_YUY2: ret = tab->yuv_411_p_to_yuy2; break; case GAVL_UYVY: ret = tab->yuv_411_p_to_uyvy; break; case GAVL_YUVA_32: ret = tab->yuv_411_p_to_yuva_32; break; case GAVL_YUVA_64: ret = tab->yuv_411_p_to_yuva_64; break; case GAVL_YUVA_FLOAT: ret = tab->yuv_411_p_to_yuva_float; break; case GAVL_YUV_FLOAT: ret = tab->yuv_411_p_to_yuv_float; break; case GAVL_YUV_420_P: ret = tab->yuv_411_p_to_yuv_420_p; break; case GAVL_YUV_410_P: ret = tab->yuv_411_p_to_yuv_410_p; break; case GAVL_YUV_422_P: ret = tab->yuv_411_p_to_yuv_422_p; break; case GAVL_YUV_422_P_16: ret = tab->yuv_411_p_to_yuv_422_p_16; break; case GAVL_YUV_444_P: ret = tab->yuv_411_p_to_yuv_444_p; break; case GAVL_YUV_444_P_16: ret = tab->yuv_411_p_to_yuv_444_p_16; break; case GAVL_YUVJ_420_P: ret = tab->yuv_411_p_to_yuvj_420_p; break; case GAVL_YUVJ_422_P: ret = tab->yuv_411_p_to_yuvj_422_p; break; case GAVL_YUVJ_444_P: ret = tab->yuv_411_p_to_yuvj_444_p; break; /* Keep GCC happy */ case GAVL_PIXELFORMAT_NONE: case GAVL_YUV_411_P: break; } break; case GAVL_YUV_444_P: switch(output_pixelformat) { case GAVL_GRAY_8: ret = tab->y_8_to_gray_8; break; case GAVL_GRAY_16: ret = tab->y_8_to_gray_16; break; case GAVL_GRAY_FLOAT: ret = tab->y_8_to_gray_float; break; case GAVL_GRAYA_16: ret = tab->y_8_to_graya_16; break; case GAVL_GRAYA_32: ret = tab->y_8_to_graya_32; break; case GAVL_GRAYA_FLOAT: ret = tab->y_8_to_graya_float; break; case GAVL_RGB_15: ret = tab->yuv_444_p_to_rgb_15; break; case GAVL_BGR_15: ret = tab->yuv_444_p_to_bgr_15; break; case GAVL_RGB_16: ret = tab->yuv_444_p_to_rgb_16; break; case GAVL_BGR_16: ret = tab->yuv_444_p_to_bgr_16; break; case GAVL_RGB_24: ret = tab->yuv_444_p_to_rgb_24; break; case GAVL_BGR_24: ret = tab->yuv_444_p_to_bgr_24; break; case GAVL_RGB_32: ret = tab->yuv_444_p_to_rgb_32; break; case GAVL_BGR_32: ret = tab->yuv_444_p_to_bgr_32; break; case GAVL_RGBA_32: ret = tab->yuv_444_p_to_rgba_32; break; case GAVL_RGB_48: ret = tab->yuv_444_p_to_rgb_48; break; case GAVL_RGBA_64: ret = tab->yuv_444_p_to_rgba_64; break; case GAVL_RGB_FLOAT: ret = tab->yuv_444_p_to_rgb_float; break; case GAVL_RGBA_FLOAT: ret = tab->yuv_444_p_to_rgba_float; break; case GAVL_YUY2: ret = tab->yuv_444_p_to_yuy2; break; case GAVL_UYVY: ret = tab->yuv_444_p_to_uyvy; break; case GAVL_YUVA_32: ret = tab->yuv_444_p_to_yuva_32; break; case GAVL_YUVA_64: ret = tab->yuv_444_p_to_yuva_64; break; case GAVL_YUVA_FLOAT: ret = tab->yuv_444_p_to_yuva_float; break; case GAVL_YUV_FLOAT: ret = tab->yuv_444_p_to_yuv_float; break; case GAVL_YUV_410_P: ret = tab->yuv_444_p_to_yuv_410_p; break; case GAVL_YUV_420_P: ret = tab->yuv_444_p_to_yuv_420_p; break; case GAVL_YUV_422_P: ret = tab->yuv_444_p_to_yuv_422_p; break; case GAVL_YUV_422_P_16: ret = tab->yuv_444_p_to_yuv_422_p_16; break; case GAVL_YUV_444_P_16: ret = tab->yuv_444_p_to_yuv_444_p_16; break; case GAVL_YUV_411_P: ret = tab->yuv_444_p_to_yuv_411_p; break; case GAVL_YUVJ_420_P: ret = tab->yuv_444_p_to_yuvj_420_p; break; case GAVL_YUVJ_422_P: ret = tab->yuv_444_p_to_yuvj_422_p; break; case GAVL_YUVJ_444_P: ret = tab->yuv_444_p_to_yuvj_444_p; break; /* Keep GCC happy */ case GAVL_PIXELFORMAT_NONE: case GAVL_YUV_444_P: break; } break; case GAVL_YUV_444_P_16: switch(output_pixelformat) { case GAVL_GRAY_8: ret = tab->y_16_to_gray_8; break; case GAVL_GRAY_16: ret = tab->y_16_to_gray_16; break; case GAVL_GRAY_FLOAT: ret = tab->y_16_to_gray_float; break; case GAVL_GRAYA_16: ret = tab->y_16_to_graya_16; break; case GAVL_GRAYA_32: ret = tab->y_16_to_graya_32; break; case GAVL_GRAYA_FLOAT: ret = tab->y_16_to_graya_float; break; case GAVL_RGB_15: ret = tab->yuv_444_p_16_to_rgb_15; break; case GAVL_BGR_15: ret = tab->yuv_444_p_16_to_bgr_15; break; case GAVL_RGB_16: ret = tab->yuv_444_p_16_to_rgb_16; break; case GAVL_BGR_16: ret = tab->yuv_444_p_16_to_bgr_16; break; case GAVL_RGB_24: ret = tab->yuv_444_p_16_to_rgb_24; break; case GAVL_BGR_24: ret = tab->yuv_444_p_16_to_bgr_24; break; case GAVL_RGB_32: ret = tab->yuv_444_p_16_to_rgb_32; break; case GAVL_BGR_32: ret = tab->yuv_444_p_16_to_bgr_32; break; case GAVL_RGBA_32: ret = tab->yuv_444_p_16_to_rgba_32; break; case GAVL_RGB_48: ret = tab->yuv_444_p_16_to_rgb_48; break; case GAVL_RGBA_64: ret = tab->yuv_444_p_16_to_rgba_64; break; case GAVL_RGB_FLOAT: ret = tab->yuv_444_p_16_to_rgb_float; break; case GAVL_RGBA_FLOAT: ret = tab->yuv_444_p_16_to_rgba_float; break; case GAVL_YUY2: ret = tab->yuv_444_p_16_to_yuy2; break; case GAVL_UYVY: ret = tab->yuv_444_p_16_to_uyvy; break; case GAVL_YUVA_32: ret = tab->yuv_444_p_16_to_yuva_32; break; case GAVL_YUVA_64: ret = tab->yuv_444_p_16_to_yuva_64; break; case GAVL_YUVA_FLOAT: ret = tab->yuv_444_p_16_to_yuva_float; break; case GAVL_YUV_FLOAT: ret = tab->yuv_444_p_16_to_yuv_float; break; case GAVL_YUV_410_P: ret = tab->yuv_444_p_16_to_yuv_410_p; break; case GAVL_YUV_420_P: ret = tab->yuv_444_p_16_to_yuv_420_p; break; case GAVL_YUV_422_P: ret = tab->yuv_444_p_16_to_yuv_422_p; break; case GAVL_YUV_422_P_16: ret = tab->yuv_444_p_16_to_yuv_422_p_16; break; case GAVL_YUV_444_P: ret = tab->yuv_444_p_16_to_yuv_444_p; break; case GAVL_YUV_411_P: ret = tab->yuv_444_p_16_to_yuv_411_p; break; case GAVL_YUVJ_420_P: ret = tab->yuv_444_p_16_to_yuvj_420_p; break; case GAVL_YUVJ_422_P: ret = tab->yuv_444_p_16_to_yuvj_422_p; break; case GAVL_YUVJ_444_P: ret = tab->yuv_444_p_16_to_yuvj_444_p; break; /* Keep GCC happy */ case GAVL_PIXELFORMAT_NONE: case GAVL_YUV_444_P_16: break; } break; case GAVL_YUVJ_420_P: switch(output_pixelformat) { case GAVL_GRAY_8: ret = tab->yj_8_to_gray_8; break; case GAVL_GRAY_16: ret = tab->yj_8_to_gray_16; break; case GAVL_GRAY_FLOAT: ret = tab->yj_8_to_gray_float; break; case GAVL_GRAYA_16: ret = tab->yj_8_to_graya_16; break; case GAVL_GRAYA_32: ret = tab->yj_8_to_graya_32; break; case GAVL_GRAYA_FLOAT: ret = tab->yj_8_to_graya_float; break; case GAVL_RGB_15: ret = tab->yuvj_420_p_to_rgb_15; break; case GAVL_BGR_15: ret = tab->yuvj_420_p_to_bgr_15; break; case GAVL_RGB_16: ret = tab->yuvj_420_p_to_rgb_16; break; case GAVL_BGR_16: ret = tab->yuvj_420_p_to_bgr_16; break; case GAVL_RGB_24: ret = tab->yuvj_420_p_to_rgb_24; break; case GAVL_BGR_24: ret = tab->yuvj_420_p_to_bgr_24; break; case GAVL_RGB_32: ret = tab->yuvj_420_p_to_rgb_32; break; case GAVL_BGR_32: ret = tab->yuvj_420_p_to_bgr_32; break; case GAVL_RGBA_32: ret = tab->yuvj_420_p_to_rgba_32; break; case GAVL_RGB_48: ret = tab->yuvj_420_p_to_rgb_48; break; case GAVL_RGBA_64: ret = tab->yuvj_420_p_to_rgba_64; break; case GAVL_RGB_FLOAT: ret = tab->yuvj_420_p_to_rgb_float; break; case GAVL_RGBA_FLOAT: ret = tab->yuvj_420_p_to_rgba_float; break; case GAVL_YUY2: ret = tab->yuvj_420_p_to_yuy2; break; case GAVL_UYVY: ret = tab->yuvj_420_p_to_uyvy; break; case GAVL_YUVA_32: ret = tab->yuvj_420_p_to_yuva_32; break; case GAVL_YUVA_64: ret = tab->yuvj_420_p_to_yuva_64; break; case GAVL_YUVA_FLOAT: ret = tab->yuvj_420_p_to_yuva_float; break; case GAVL_YUV_FLOAT: ret = tab->yuvj_420_p_to_yuv_float; break; case GAVL_YUV_422_P: ret = tab->yuvj_420_p_to_yuv_422_p; break; case GAVL_YUV_422_P_16: ret = tab->yuvj_420_p_to_yuv_422_p_16; break; case GAVL_YUV_444_P: ret = tab->yuvj_420_p_to_yuv_444_p; break; case GAVL_YUV_444_P_16: ret = tab->yuvj_420_p_to_yuv_444_p_16; break; case GAVL_YUV_420_P: ret = tab->yuvj_420_p_to_yuv_420_p; break; case GAVL_YUV_410_P: ret = tab->yuvj_420_p_to_yuv_410_p; break; case GAVL_YUVJ_422_P: ret = tab->yuv_420_p_to_yuv_422_p; break; case GAVL_YUV_411_P: ret = tab->yuv_420_p_to_yuv_411_p; break; case GAVL_YUVJ_444_P: ret = tab->yuv_420_p_to_yuv_444_p; break; /* Keep GCC happy */ case GAVL_PIXELFORMAT_NONE: case GAVL_YUVJ_420_P: break; } break; case GAVL_YUVJ_422_P: switch(output_pixelformat) { case GAVL_GRAY_8: ret = tab->yj_8_to_gray_8; break; case GAVL_GRAY_16: ret = tab->yj_8_to_gray_16; break; case GAVL_GRAY_FLOAT: ret = tab->yj_8_to_gray_float; break; case GAVL_GRAYA_16: ret = tab->yj_8_to_graya_16; break; case GAVL_GRAYA_32: ret = tab->yj_8_to_graya_32; break; case GAVL_GRAYA_FLOAT: ret = tab->yj_8_to_graya_float; break; case GAVL_RGB_15: ret = tab->yuvj_422_p_to_rgb_15; break; case GAVL_BGR_15: ret = tab->yuvj_422_p_to_bgr_15; break; case GAVL_RGB_16: ret = tab->yuvj_422_p_to_rgb_16; break; case GAVL_BGR_16: ret = tab->yuvj_422_p_to_bgr_16; break; case GAVL_RGB_24: ret = tab->yuvj_422_p_to_rgb_24; break; case GAVL_BGR_24: ret = tab->yuvj_422_p_to_bgr_24; break; case GAVL_RGB_32: ret = tab->yuvj_422_p_to_rgb_32; break; case GAVL_BGR_32: ret = tab->yuvj_422_p_to_bgr_32; break; case GAVL_RGBA_32: ret = tab->yuvj_422_p_to_rgba_32; break; case GAVL_RGB_48: ret = tab->yuvj_422_p_to_rgb_48; break; case GAVL_RGBA_64: ret = tab->yuvj_422_p_to_rgba_64; break; case GAVL_RGB_FLOAT: ret = tab->yuvj_422_p_to_rgb_float; break; case GAVL_RGBA_FLOAT: ret = tab->yuvj_422_p_to_rgba_float; break; case GAVL_YUY2: ret = tab->yuvj_422_p_to_yuy2; break; case GAVL_UYVY: ret = tab->yuvj_422_p_to_uyvy; break; case GAVL_YUVA_32: ret = tab->yuvj_422_p_to_yuva_32; break; case GAVL_YUVA_64: ret = tab->yuvj_422_p_to_yuva_64; break; case GAVL_YUVA_FLOAT: ret = tab->yuvj_422_p_to_yuva_float; break; case GAVL_YUV_FLOAT: ret = tab->yuvj_422_p_to_yuv_float; break; case GAVL_YUV_420_P: ret = tab->yuvj_422_p_to_yuv_420_p; break; case GAVL_YUV_411_P: ret = tab->yuvj_422_p_to_yuv_411_p; break; case GAVL_YUV_410_P: ret = tab->yuvj_422_p_to_yuv_410_p; break; case GAVL_YUV_444_P: ret = tab->yuvj_422_p_to_yuv_444_p; break; case GAVL_YUV_444_P_16: ret = tab->yuvj_422_p_to_yuv_444_p_16; break; case GAVL_YUVJ_420_P: ret = tab->yuv_422_p_to_yuv_420_p; break; case GAVL_YUV_422_P: ret = tab->yuvj_422_p_to_yuv_422_p; break; case GAVL_YUV_422_P_16: ret = tab->yuvj_422_p_to_yuv_422_p_16; break; case GAVL_YUVJ_444_P: ret = tab->yuv_422_p_to_yuv_444_p; break; /* Keep GCC happy */ case GAVL_PIXELFORMAT_NONE: case GAVL_YUVJ_422_P: break; } break; case GAVL_YUVJ_444_P: switch(output_pixelformat) { case GAVL_GRAY_8: ret = tab->yj_8_to_gray_8; break; case GAVL_GRAY_16: ret = tab->yj_8_to_gray_16; break; case GAVL_GRAY_FLOAT: ret = tab->yj_8_to_gray_float; break; case GAVL_GRAYA_16: ret = tab->yj_8_to_graya_16; break; case GAVL_GRAYA_32: ret = tab->yj_8_to_graya_32; break; case GAVL_GRAYA_FLOAT: ret = tab->yj_8_to_graya_float; break; case GAVL_RGB_15: ret = tab->yuvj_444_p_to_rgb_15; break; case GAVL_BGR_15: ret = tab->yuvj_444_p_to_bgr_15; break; case GAVL_RGB_16: ret = tab->yuvj_444_p_to_rgb_16; break; case GAVL_BGR_16: ret = tab->yuvj_444_p_to_bgr_16; break; case GAVL_RGB_24: ret = tab->yuvj_444_p_to_rgb_24; break; case GAVL_BGR_24: ret = tab->yuvj_444_p_to_bgr_24; break; case GAVL_RGB_32: ret = tab->yuvj_444_p_to_rgb_32; break; case GAVL_BGR_32: ret = tab->yuvj_444_p_to_bgr_32; break; case GAVL_RGBA_32: ret = tab->yuvj_444_p_to_rgba_32; break; case GAVL_RGB_48: ret = tab->yuvj_444_p_to_rgb_48; break; case GAVL_RGBA_64: ret = tab->yuvj_444_p_to_rgba_64; break; case GAVL_RGB_FLOAT: ret = tab->yuvj_444_p_to_rgb_float; break; case GAVL_RGBA_FLOAT: ret = tab->yuvj_444_p_to_rgba_float; break; case GAVL_YUY2: ret = tab->yuvj_444_p_to_yuy2; break; case GAVL_UYVY: ret = tab->yuvj_444_p_to_uyvy; break; case GAVL_YUVA_32: ret = tab->yuvj_444_p_to_yuva_32; break; case GAVL_YUVA_64: ret = tab->yuvj_444_p_to_yuva_64; break; case GAVL_YUVA_FLOAT: ret = tab->yuvj_444_p_to_yuva_float; break; case GAVL_YUV_FLOAT: ret = tab->yuvj_444_p_to_yuv_float; break; case GAVL_YUV_420_P: ret = tab->yuvj_444_p_to_yuv_420_p; break; case GAVL_YUV_410_P: ret = tab->yuvj_444_p_to_yuv_410_p; break; case GAVL_YUV_422_P: ret = tab->yuvj_444_p_to_yuv_422_p; break; case GAVL_YUV_422_P_16: ret = tab->yuvj_444_p_to_yuv_422_p_16; break; case GAVL_YUV_411_P: ret = tab->yuvj_444_p_to_yuv_411_p; break; case GAVL_YUVJ_420_P: ret = tab->yuv_444_p_to_yuv_420_p; break; case GAVL_YUVJ_422_P: ret = tab->yuv_444_p_to_yuv_422_p; break; case GAVL_YUV_444_P: ret = tab->yuvj_444_p_to_yuv_444_p; break; case GAVL_YUV_444_P_16: ret = tab->yuvj_444_p_to_yuv_444_p_16; break; /* Keep GCC happy */ case GAVL_PIXELFORMAT_NONE: case GAVL_YUVJ_444_P: break; } break; case GAVL_PIXELFORMAT_NONE: break; } free(tab); return ret; } /* bytes_per_component is only valid for planar formats */ int gavl_pixelformat_bytes_per_component(gavl_pixelformat_t csp) { switch(csp) { case GAVL_PIXELFORMAT_NONE: case GAVL_RGB_15: case GAVL_BGR_15: case GAVL_RGB_16: case GAVL_BGR_16: case GAVL_RGB_24: case GAVL_BGR_24: case GAVL_RGB_32: case GAVL_BGR_32: case GAVL_RGBA_32: case GAVL_RGB_48: case GAVL_RGBA_64: case GAVL_RGB_FLOAT: case GAVL_RGBA_FLOAT: case GAVL_YUY2: case GAVL_UYVY: case GAVL_YUVA_32: case GAVL_YUVA_64: case GAVL_YUVA_FLOAT: case GAVL_YUV_FLOAT: case GAVL_GRAY_8: case GAVL_GRAY_16: case GAVL_GRAY_FLOAT: case GAVL_GRAYA_16: case GAVL_GRAYA_32: case GAVL_GRAYA_FLOAT: return 0; break; case GAVL_YUV_420_P: case GAVL_YUV_422_P: case GAVL_YUV_444_P: case GAVL_YUV_411_P: case GAVL_YUV_410_P: case GAVL_YUVJ_420_P: case GAVL_YUVJ_422_P: case GAVL_YUVJ_444_P: return 1; break; case GAVL_YUV_444_P_16: case GAVL_YUV_422_P_16: return 2; } return 0; } /* bytes_per_pixel is only valid for packed formats */ int gavl_pixelformat_bytes_per_pixel(gavl_pixelformat_t csp) { switch(csp) { case GAVL_PIXELFORMAT_NONE: return 0; break; case GAVL_GRAY_8: return 1; case GAVL_RGB_15: case GAVL_BGR_15: case GAVL_RGB_16: case GAVL_BGR_16: case GAVL_GRAY_16: case GAVL_GRAYA_16: return 2; break; case GAVL_RGB_24: case GAVL_BGR_24: return 3; break; case GAVL_RGB_32: case GAVL_BGR_32: case GAVL_RGBA_32: case GAVL_YUVA_32: case GAVL_GRAYA_32: return 4; break; case GAVL_GRAY_FLOAT: return sizeof(float); break; case GAVL_GRAYA_FLOAT: return 2*sizeof(float); break; case GAVL_RGB_48: return 6; break; case GAVL_RGBA_64: case GAVL_YUVA_64: return 8; break; case GAVL_RGB_FLOAT: case GAVL_YUV_FLOAT: return 3*sizeof(float); break; case GAVL_RGBA_FLOAT: case GAVL_YUVA_FLOAT: return 4*sizeof(float); break; case GAVL_YUY2: case GAVL_UYVY: return 2; case GAVL_YUV_420_P: case GAVL_YUV_422_P: case GAVL_YUV_422_P_16: case GAVL_YUV_444_P: case GAVL_YUV_444_P_16: case GAVL_YUV_411_P: case GAVL_YUV_410_P: case GAVL_YUVJ_420_P: case GAVL_YUVJ_422_P: case GAVL_YUVJ_444_P: return 0; } return 0; } int gavl_pixelformat_bits_per_pixel(gavl_pixelformat_t pixelformat) { switch(pixelformat) { case GAVL_PIXELFORMAT_NONE: return 0; break; case GAVL_GRAY_8: return 8; break; case GAVL_RGB_15: case GAVL_BGR_15: return 15; case GAVL_RGB_16: case GAVL_BGR_16: case GAVL_GRAY_16: case GAVL_GRAYA_16: return 16; break; case GAVL_RGB_24: case GAVL_BGR_24: case GAVL_RGB_32: case GAVL_BGR_32: return 24; break; case GAVL_RGBA_32: case GAVL_YUVA_32: case GAVL_GRAYA_32: return 32; break; case GAVL_RGB_48: return 48; break; case GAVL_RGBA_64: case GAVL_YUVA_64: return 64; break; case GAVL_GRAY_FLOAT: return 8*sizeof(float); break; case GAVL_GRAYA_FLOAT: return 8*2*sizeof(float); break; case GAVL_RGB_FLOAT: case GAVL_YUV_FLOAT: return 8*3*sizeof(float); break; case GAVL_RGBA_FLOAT: case GAVL_YUVA_FLOAT: return 8*4*sizeof(float); break; case GAVL_YUY2: case GAVL_UYVY: case GAVL_YUV_422_P: case GAVL_YUVJ_422_P: return 16; break; case GAVL_YUV_420_P: case GAVL_YUVJ_420_P: case GAVL_YUV_411_P: return 12; break; case GAVL_YUV_444_P: case GAVL_YUVJ_444_P: return 24; break; case GAVL_YUV_422_P_16: return 32; break; case GAVL_YUV_444_P_16: return 48; break; case GAVL_YUV_410_P: return 9; break; } return 0; } static int effective_bits_per_component(gavl_pixelformat_t fmt) { switch(fmt) { case GAVL_PIXELFORMAT_NONE: return 0; break; case GAVL_RGB_15: case GAVL_BGR_15: return 5; break; case GAVL_RGB_16: case GAVL_BGR_16: return 6; // Rounded up break; case GAVL_GRAY_8: case GAVL_GRAYA_16: case GAVL_RGB_24: case GAVL_BGR_24: case GAVL_RGB_32: case GAVL_BGR_32: case GAVL_RGBA_32: case GAVL_YUVA_32: case GAVL_YUY2: case GAVL_UYVY: case GAVL_YUV_422_P: case GAVL_YUVJ_422_P: case GAVL_YUV_420_P: case GAVL_YUVJ_420_P: case GAVL_YUV_411_P: case GAVL_YUV_444_P: case GAVL_YUVJ_444_P: case GAVL_YUV_410_P: return 8; break; case GAVL_GRAY_16: case GAVL_GRAYA_32: case GAVL_RGB_48: case GAVL_RGBA_64: case GAVL_YUVA_64: case GAVL_YUV_422_P_16: case GAVL_YUV_444_P_16: return 16; break; case GAVL_GRAY_FLOAT: case GAVL_GRAYA_FLOAT: case GAVL_RGB_FLOAT: case GAVL_YUV_FLOAT: case GAVL_RGBA_FLOAT: case GAVL_YUVA_FLOAT: return 8*sizeof(float); break; } return 0; } int gavl_pixelformat_conversion_penalty(gavl_pixelformat_t src, gavl_pixelformat_t dst) { int ret; int sub_h_src, sub_h_dst; int sub_v_src, sub_v_dst; int src_bits, dst_bits; if(src == dst) return 0; gavl_pixelformat_chroma_sub(src, &sub_h_src, &sub_v_src); gavl_pixelformat_chroma_sub(dst, &sub_h_dst, &sub_v_dst); ret = 0; /* Losing the color is the worst */ if(!gavl_pixelformat_is_gray(src) && gavl_pixelformat_is_gray(dst)) ret += 1; /* Losing the alpha channel is second worst */ ret <<= 1; if(gavl_pixelformat_has_alpha(src) && !gavl_pixelformat_has_alpha(dst)) ret += 1; /* Converting gray to colored format is bloat */ ret <<= 1; if(gavl_pixelformat_is_gray(src) && !gavl_pixelformat_is_gray(dst)) ret += 1; /* Colorspace conversions aren't good either */ ret <<= 1; if((gavl_pixelformat_is_rgb(src) && gavl_pixelformat_is_yuv(dst)) || (gavl_pixelformat_is_yuv(src) && gavl_pixelformat_is_rgb(dst))) ret += 1; /* Adding an alpha channel bloat */ ret <<= 1; if(!gavl_pixelformat_has_alpha(src) && gavl_pixelformat_has_alpha(dst)) ret += 1; /* Chroma subsampling is next */ ret <<= 1; if((sub_h_src != sub_h_dst) || (sub_v_src != sub_v_dst)) ret += 1; /* Bits per pixel difference is maximum 256 (one extra bit for src_bits > dst_bits) */ ret <<= 9; src_bits = effective_bits_per_component(src); dst_bits = effective_bits_per_component(dst); /* Increasing precision is bad... */ if(src_bits < dst_bits) ret += (dst_bits - src_bits); /* ... but decreasing precision is worse */ else if(src_bits > dst_bits) ret += (src_bits - dst_bits) * 2; /* * Converting between YUV and YUVJ is done via lookup tables, * (efficient but lossy) */ ret <<= 1; if(gavl_pixelformat_is_yuv(src) && gavl_pixelformat_is_yuv(dst) && (gavl_pixelformat_is_jpeg_scaled(src) != gavl_pixelformat_is_jpeg_scaled(dst))) ret += 1; /* Remaining differences should be packing format. Conversions here are lossless and efficient */ ret <<= 1; ret += 1; return ret; } gavl_pixelformat_t gavl_pixelformat_get_best(gavl_pixelformat_t src, const gavl_pixelformat_t * dst_supported, int *penalty) { int min_penalty; int min_index; int i, test; if(!dst_supported || (dst_supported[0] == GAVL_PIXELFORMAT_NONE)) return GAVL_PIXELFORMAT_NONE; min_penalty = gavl_pixelformat_conversion_penalty(src, dst_supported[0]); min_index = 0; i = 1; while(dst_supported[i] != GAVL_PIXELFORMAT_NONE) { test = gavl_pixelformat_conversion_penalty(src, dst_supported[i]); if(test < min_penalty) { min_penalty = test; min_index = i; } i++; } if(penalty) *penalty = min_penalty; return dst_supported[min_index]; } /* Check if a pixelformat can be converted by simple scaling */ int gavl_pixelformat_can_scale(gavl_pixelformat_t in_csp, gavl_pixelformat_t out_csp) { int sub_v_in, sub_h_in; int sub_v_out, sub_h_out; if(gavl_pixelformat_is_rgb(in_csp) || gavl_pixelformat_is_rgb(out_csp)) { return 0; } if(gavl_pixelformat_is_jpeg_scaled(in_csp) != gavl_pixelformat_is_jpeg_scaled(out_csp)) { return 0; } if(gavl_pixelformat_has_alpha(in_csp) != gavl_pixelformat_has_alpha(out_csp)) { return 0; } gavl_pixelformat_chroma_sub(in_csp, &sub_h_in, &sub_v_in); gavl_pixelformat_chroma_sub(out_csp, &sub_h_out, &sub_v_out); if((sub_h_in == sub_h_out) && (sub_v_in == sub_v_out)) { return 0; } if(!gavl_pixelformat_is_planar(in_csp)) { // fprintf(stderr, "BLUPPPP: %d %d\n", gavl_pixelformat_is_planar(out_csp), // gavl_pixelformat_bytes_per_component(out_csp)); if(gavl_pixelformat_is_planar(out_csp) && (gavl_pixelformat_bytes_per_component(out_csp) == 1)) return 1; else return 0; } else { if(!gavl_pixelformat_is_planar(out_csp) && (gavl_pixelformat_bytes_per_component(in_csp) == 1)) return 1; else if(gavl_pixelformat_bytes_per_component(in_csp) == gavl_pixelformat_bytes_per_component(out_csp)) return 1; else return 0; } return 0; } /* * Return a pixelformat (or GAVL_PIXELFORMAT_NONE) as an intermediate pixelformat * for which the conversion quality can be improved. E.g. instead of * RGB -> YUV420P, we can do RGB -> YUV444P -> YUV420P with proper chroma scaling */ gavl_pixelformat_t gavl_pixelformat_get_intermediate(gavl_pixelformat_t in_csp, gavl_pixelformat_t out_csp) { switch(in_csp) { case GAVL_PIXELFORMAT_NONE: return GAVL_PIXELFORMAT_NONE; break; case GAVL_GRAY_8: case GAVL_GRAY_16: case GAVL_GRAY_FLOAT: case GAVL_GRAYA_16: case GAVL_GRAYA_32: case GAVL_GRAYA_FLOAT: case GAVL_RGB_15: case GAVL_BGR_15: case GAVL_RGB_16: case GAVL_BGR_16: case GAVL_RGB_24: case GAVL_BGR_24: case GAVL_RGB_32: case GAVL_BGR_32: case GAVL_RGBA_32: case GAVL_RGB_48: case GAVL_RGBA_64: case GAVL_RGB_FLOAT: case GAVL_RGBA_FLOAT: case GAVL_YUVA_32: case GAVL_YUVA_64: case GAVL_YUVA_FLOAT: case GAVL_YUV_FLOAT: /*4:4:4 -> */ switch(out_csp) { case GAVL_PIXELFORMAT_NONE: case GAVL_RGB_15: case GAVL_BGR_15: case GAVL_RGB_16: case GAVL_BGR_16: case GAVL_RGB_24: case GAVL_BGR_24: case GAVL_RGB_32: case GAVL_BGR_32: case GAVL_RGB_48: case GAVL_RGBA_64: case GAVL_RGB_FLOAT: case GAVL_RGBA_FLOAT: case GAVL_RGBA_32: case GAVL_YUVA_32: case GAVL_YUVA_64: case GAVL_YUVA_FLOAT: case GAVL_YUV_FLOAT: case GAVL_YUV_444_P: case GAVL_YUVJ_444_P: case GAVL_YUV_444_P_16: case GAVL_GRAY_8: case GAVL_GRAY_16: case GAVL_GRAY_FLOAT: case GAVL_GRAYA_16: case GAVL_GRAYA_32: case GAVL_GRAYA_FLOAT: return GAVL_PIXELFORMAT_NONE; break; case GAVL_YUY2: case GAVL_UYVY: case GAVL_YUV_420_P: case GAVL_YUV_422_P: case GAVL_YUV_411_P: case GAVL_YUV_410_P: return GAVL_YUV_444_P; break; case GAVL_YUVJ_420_P: case GAVL_YUVJ_422_P: return GAVL_YUVJ_444_P; break; case GAVL_YUV_422_P_16: return GAVL_YUV_444_P_16; break; } break; case GAVL_YUY2: case GAVL_UYVY: case GAVL_YUV_422_P: switch(out_csp) { case GAVL_PIXELFORMAT_NONE: return GAVL_PIXELFORMAT_NONE; break; /* YUV422 -> RGB */ case GAVL_RGB_15: case GAVL_BGR_15: case GAVL_RGB_16: case GAVL_BGR_16: case GAVL_RGB_24: case GAVL_BGR_24: case GAVL_RGB_32: case GAVL_BGR_32: case GAVL_RGB_48: case GAVL_RGBA_64: case GAVL_RGB_FLOAT: case GAVL_RGBA_FLOAT: case GAVL_RGBA_32: case GAVL_YUVA_32: return GAVL_YUV_444_P; break; case GAVL_YUV_422_P: case GAVL_YUV_422_P_16: case GAVL_YUVJ_422_P: case GAVL_YUY2: case GAVL_UYVY: case GAVL_YUV_420_P: case GAVL_YUV_411_P: case GAVL_YUV_410_P: case GAVL_GRAY_8: case GAVL_GRAY_16: case GAVL_GRAY_FLOAT: case GAVL_GRAYA_16: case GAVL_GRAYA_32: case GAVL_GRAYA_FLOAT: return GAVL_PIXELFORMAT_NONE; break; case GAVL_YUV_444_P_16: case GAVL_YUVA_64: case GAVL_YUVA_FLOAT: case GAVL_YUV_FLOAT: return GAVL_YUV_422_P_16; break; case GAVL_YUV_444_P: return GAVL_YUV_422_P; break; case GAVL_YUVJ_444_P: return GAVL_YUVJ_422_P; break; case GAVL_YUVJ_420_P: return GAVL_YUVJ_422_P; break; } break; case GAVL_YUV_420_P: switch(out_csp) { case GAVL_PIXELFORMAT_NONE: return GAVL_PIXELFORMAT_NONE; break; /* YUV420 -> RGB */ case GAVL_RGB_15: case GAVL_BGR_15: case GAVL_RGB_16: case GAVL_BGR_16: case GAVL_RGB_24: case GAVL_BGR_24: case GAVL_RGB_32: case GAVL_BGR_32: case GAVL_RGB_48: case GAVL_RGBA_64: case GAVL_RGB_FLOAT: case GAVL_RGBA_FLOAT: case GAVL_RGBA_32: case GAVL_YUVA_32: return GAVL_YUV_444_P; break; case GAVL_YUV_422_P: case GAVL_YUY2: case GAVL_UYVY: case GAVL_YUV_420_P: case GAVL_YUV_411_P: case GAVL_YUV_410_P: case GAVL_YUV_444_P: case GAVL_YUVJ_420_P: case GAVL_GRAY_8: case GAVL_GRAY_16: case GAVL_GRAY_FLOAT: case GAVL_GRAYA_16: case GAVL_GRAYA_32: case GAVL_GRAYA_FLOAT: return GAVL_PIXELFORMAT_NONE; break; case GAVL_YUV_422_P_16: return GAVL_YUV_422_P; break; case GAVL_YUVJ_422_P: return GAVL_YUVJ_420_P; break; case GAVL_YUV_444_P_16: case GAVL_YUVA_64: case GAVL_YUVA_FLOAT: case GAVL_YUV_FLOAT: return GAVL_YUV_444_P; break; case GAVL_YUVJ_444_P: return GAVL_YUVJ_420_P; break; } break; case GAVL_YUV_444_P: switch(out_csp) { case GAVL_PIXELFORMAT_NONE: case GAVL_RGB_15: case GAVL_BGR_15: case GAVL_RGB_16: case GAVL_BGR_16: case GAVL_RGB_24: case GAVL_BGR_24: case GAVL_RGB_32: case GAVL_BGR_32: case GAVL_RGB_48: case GAVL_RGBA_64: case GAVL_RGB_FLOAT: case GAVL_RGBA_FLOAT: case GAVL_RGBA_32: case GAVL_YUVA_32: case GAVL_GRAY_8: case GAVL_GRAY_16: case GAVL_GRAY_FLOAT: case GAVL_GRAYA_16: case GAVL_GRAYA_32: case GAVL_GRAYA_FLOAT: return GAVL_PIXELFORMAT_NONE; break; case GAVL_YUV_422_P: case GAVL_YUY2: case GAVL_UYVY: case GAVL_YUV_420_P: case GAVL_YUV_411_P: case GAVL_YUV_410_P: case GAVL_YUV_444_P: case GAVL_YUVJ_444_P: case GAVL_YUV_444_P_16: return GAVL_PIXELFORMAT_NONE; break; case GAVL_YUV_422_P_16: case GAVL_YUVA_64: case GAVL_YUVA_FLOAT: case GAVL_YUV_FLOAT: return GAVL_YUV_422_P; break; case GAVL_YUVJ_422_P: return GAVL_YUVJ_420_P; break; case GAVL_YUVJ_420_P: return GAVL_YUVJ_444_P; break; } break; case GAVL_YUV_411_P: case GAVL_YUV_410_P: switch(out_csp) { case GAVL_PIXELFORMAT_NONE: case GAVL_GRAY_8: case GAVL_GRAY_16: case GAVL_GRAY_FLOAT: case GAVL_GRAYA_16: case GAVL_GRAYA_32: case GAVL_GRAYA_FLOAT: return GAVL_PIXELFORMAT_NONE; break; case GAVL_RGB_15: case GAVL_BGR_15: case GAVL_RGB_16: case GAVL_BGR_16: case GAVL_RGB_24: case GAVL_BGR_24: case GAVL_RGB_32: case GAVL_BGR_32: case GAVL_RGB_48: case GAVL_RGBA_64: case GAVL_RGB_FLOAT: case GAVL_RGBA_FLOAT: case GAVL_RGBA_32: case GAVL_YUVA_32: return GAVL_YUV_444_P; break; case GAVL_YUV_422_P: case GAVL_YUY2: case GAVL_UYVY: case GAVL_YUV_420_P: case GAVL_YUV_411_P: case GAVL_YUV_410_P: case GAVL_YUV_444_P: return GAVL_PIXELFORMAT_NONE; break; case GAVL_YUVJ_444_P: return GAVL_YUV_444_P; break; case GAVL_YUV_422_P_16: return GAVL_YUV_422_P; break; case GAVL_YUVJ_422_P: return GAVL_YUV_422_P; break; case GAVL_YUV_444_P_16: case GAVL_YUVA_64: case GAVL_YUVA_FLOAT: case GAVL_YUV_FLOAT: return GAVL_YUV_444_P; break; case GAVL_YUVJ_420_P: return GAVL_YUV_420_P; break; } break; case GAVL_YUVJ_420_P: switch(out_csp) { case GAVL_PIXELFORMAT_NONE: case GAVL_GRAY_8: case GAVL_GRAY_16: case GAVL_GRAY_FLOAT: case GAVL_GRAYA_16: case GAVL_GRAYA_32: case GAVL_GRAYA_FLOAT: return GAVL_PIXELFORMAT_NONE; break; case GAVL_RGB_15: case GAVL_BGR_15: case GAVL_RGB_16: case GAVL_BGR_16: case GAVL_RGB_24: case GAVL_BGR_24: case GAVL_RGB_32: case GAVL_BGR_32: case GAVL_RGB_48: case GAVL_RGBA_64: case GAVL_RGB_FLOAT: case GAVL_RGBA_FLOAT: case GAVL_RGBA_32: case GAVL_YUVA_32: return GAVL_YUVJ_444_P; break; case GAVL_YUV_422_P: case GAVL_YUY2: case GAVL_UYVY: case GAVL_YUV_411_P: case GAVL_YUV_410_P: case GAVL_YUV_444_P: return GAVL_YUV_420_P; break; case GAVL_YUV_420_P: case GAVL_YUVJ_444_P: case GAVL_YUVJ_422_P: case GAVL_YUVJ_420_P: return GAVL_PIXELFORMAT_NONE; break; case GAVL_YUV_422_P_16: return GAVL_YUVJ_422_P; break; case GAVL_YUV_444_P_16: case GAVL_YUVA_64: case GAVL_YUVA_FLOAT: case GAVL_YUV_FLOAT: return GAVL_YUVJ_444_P; break; } break; case GAVL_YUVJ_422_P: switch(out_csp) { case GAVL_PIXELFORMAT_NONE: case GAVL_GRAY_8: case GAVL_GRAY_16: case GAVL_GRAY_FLOAT: case GAVL_GRAYA_16: case GAVL_GRAYA_32: case GAVL_GRAYA_FLOAT: return GAVL_PIXELFORMAT_NONE; break; case GAVL_RGB_15: case GAVL_BGR_15: case GAVL_RGB_16: case GAVL_BGR_16: case GAVL_RGB_24: case GAVL_BGR_24: case GAVL_RGB_32: case GAVL_BGR_32: case GAVL_RGB_48: case GAVL_RGBA_64: case GAVL_RGB_FLOAT: case GAVL_RGBA_FLOAT: case GAVL_RGBA_32: case GAVL_YUVA_32: return GAVL_YUVJ_444_P; break; case GAVL_YUV_411_P: case GAVL_YUV_410_P: case GAVL_YUV_444_P: case GAVL_YUV_420_P: return GAVL_YUV_422_P; break; case GAVL_YUV_422_P: case GAVL_YUY2: case GAVL_UYVY: case GAVL_YUVJ_444_P: case GAVL_YUVJ_422_P: case GAVL_YUVJ_420_P: case GAVL_YUV_422_P_16: return GAVL_PIXELFORMAT_NONE; break; case GAVL_YUV_444_P_16: case GAVL_YUVA_64: case GAVL_YUVA_FLOAT: case GAVL_YUV_FLOAT: return GAVL_YUV_422_P_16; break; } break; case GAVL_YUVJ_444_P: switch(out_csp) { case GAVL_PIXELFORMAT_NONE: case GAVL_GRAY_8: case GAVL_GRAY_16: case GAVL_GRAY_FLOAT: case GAVL_GRAYA_16: case GAVL_GRAYA_32: case GAVL_GRAYA_FLOAT: case GAVL_RGB_15: case GAVL_BGR_15: case GAVL_RGB_16: case GAVL_BGR_16: case GAVL_RGB_24: case GAVL_BGR_24: case GAVL_RGB_32: case GAVL_BGR_32: case GAVL_RGB_48: case GAVL_RGBA_64: case GAVL_RGB_FLOAT: case GAVL_RGBA_FLOAT: case GAVL_RGBA_32: case GAVL_YUVA_32: case GAVL_YUV_444_P: case GAVL_YUV_444_P_16: case GAVL_YUVA_64: case GAVL_YUVA_FLOAT: case GAVL_YUV_FLOAT: return GAVL_PIXELFORMAT_NONE; break; case GAVL_YUV_411_P: case GAVL_YUV_410_P: case GAVL_YUV_420_P: return GAVL_YUV_444_P; break; case GAVL_YUV_422_P: case GAVL_YUY2: case GAVL_UYVY: case GAVL_YUVJ_444_P: case GAVL_YUVJ_422_P: case GAVL_YUVJ_420_P: return GAVL_PIXELFORMAT_NONE; break; case GAVL_YUV_422_P_16: return GAVL_YUVJ_422_P; break; return GAVL_YUV_422_P_16; break; } break; case GAVL_YUV_444_P_16: switch(out_csp) { case GAVL_PIXELFORMAT_NONE: case GAVL_GRAY_8: case GAVL_GRAY_16: case GAVL_GRAY_FLOAT: case GAVL_GRAYA_16: case GAVL_GRAYA_32: case GAVL_GRAYA_FLOAT: case GAVL_RGB_15: case GAVL_BGR_15: case GAVL_RGB_16: case GAVL_BGR_16: case GAVL_RGB_24: case GAVL_BGR_24: case GAVL_RGB_32: case GAVL_BGR_32: case GAVL_RGB_48: case GAVL_RGBA_64: case GAVL_RGB_FLOAT: case GAVL_RGBA_FLOAT: case GAVL_RGBA_32: case GAVL_YUVA_32: case GAVL_YUV_444_P: case GAVL_YUV_444_P_16: case GAVL_YUVJ_444_P: case GAVL_YUV_422_P_16: case GAVL_YUVA_64: case GAVL_YUVA_FLOAT: case GAVL_YUV_FLOAT: return GAVL_PIXELFORMAT_NONE; break; case GAVL_YUV_422_P: case GAVL_YUY2: case GAVL_UYVY: case GAVL_YUV_411_P: case GAVL_YUV_410_P: case GAVL_YUV_420_P: return GAVL_YUV_444_P; break; case GAVL_YUVJ_422_P: case GAVL_YUVJ_420_P: return GAVL_YUVJ_444_P; break; } break; case GAVL_YUV_422_P_16: switch(out_csp) { case GAVL_PIXELFORMAT_NONE: case GAVL_RGB_15: case GAVL_BGR_15: case GAVL_RGB_16: case GAVL_BGR_16: case GAVL_RGB_24: case GAVL_BGR_24: case GAVL_RGB_32: case GAVL_BGR_32: case GAVL_RGB_48: case GAVL_RGBA_64: case GAVL_RGB_FLOAT: case GAVL_RGBA_FLOAT: case GAVL_RGBA_32: case GAVL_YUVA_32: case GAVL_YUV_444_P: case GAVL_YUVJ_444_P: case GAVL_YUVA_64: case GAVL_YUVA_FLOAT: case GAVL_YUV_FLOAT: return GAVL_YUV_444_P_16; break; case GAVL_YUV_444_P_16: case GAVL_YUV_422_P_16: case GAVL_YUV_422_P: case GAVL_YUY2: case GAVL_UYVY: case GAVL_YUVJ_422_P: case GAVL_GRAY_8: case GAVL_GRAY_16: case GAVL_GRAY_FLOAT: case GAVL_GRAYA_16: case GAVL_GRAYA_32: case GAVL_GRAYA_FLOAT: return GAVL_PIXELFORMAT_NONE; break; case GAVL_YUV_411_P: case GAVL_YUV_410_P: case GAVL_YUV_420_P: return GAVL_YUV_422_P; break; case GAVL_YUVJ_420_P: return GAVL_YUVJ_422_P; break; } break; } return GAVL_PIXELFORMAT_NONE; } void gavl_pixelformat_get_offset(gavl_pixelformat_t pixelformat, int plane, int * advance, int * offset) { switch(pixelformat) { case GAVL_PIXELFORMAT_NONE: break; case GAVL_RGB_15: case GAVL_BGR_15: *advance = 2; *offset = 0; break; case GAVL_GRAY_8: *advance = 1; *offset = 0; break; case GAVL_RGB_16: case GAVL_BGR_16: case GAVL_GRAY_16: case GAVL_GRAYA_16: *advance = 2; *offset = 0; break; case GAVL_RGB_24: case GAVL_BGR_24: *advance = 3; *offset = 0; break; case GAVL_RGB_32: case GAVL_BGR_32: case GAVL_YUVA_32: case GAVL_RGBA_32: case GAVL_GRAYA_32: *advance = 4; *offset = 0; break; case GAVL_YUY2: switch(plane) { /* YUYV */ case 0: *advance = 2; *offset = 0; break; case 1: *advance = 4; *offset = 1; break; case 2: *advance = 4; *offset = 3; break; } break; case GAVL_UYVY: switch(plane) { /* UYVY */ case 0: *advance = 2; *offset = 1; break; case 1: *advance = 4; *offset = 0; break; case 2: *advance = 4; *offset = 2; break; } break; case GAVL_YUV_420_P: case GAVL_YUV_422_P: case GAVL_YUV_444_P: case GAVL_YUV_411_P: case GAVL_YUV_410_P: *advance = 1; *offset = 0; break; case GAVL_YUVJ_420_P: case GAVL_YUVJ_422_P: case GAVL_YUVJ_444_P: *advance = 1; *offset = 0; break; case GAVL_YUV_444_P_16: case GAVL_YUV_422_P_16: *advance = 2; *offset = 0; break; case GAVL_RGB_48: *advance = 6; *offset = 0; break; case GAVL_RGBA_64: case GAVL_YUVA_64: *advance = 8; *offset = 0; break; case GAVL_GRAY_FLOAT: *advance = sizeof(float); *offset = 0; break; case GAVL_GRAYA_FLOAT: *advance = 2 * sizeof(float); *offset = 0; break; case GAVL_RGB_FLOAT: case GAVL_YUV_FLOAT: *advance = 3 * sizeof(float); *offset = 0; break; case GAVL_RGBA_FLOAT: case GAVL_YUVA_FLOAT: *advance = 4 * sizeof(float); *offset = 0; break; } } GAVL_PUBLIC int gavl_pixelformat_num_channels(gavl_pixelformat_t pixelformat) { int ret = gavl_pixelformat_is_gray(pixelformat) ? 1 : 3; if(gavl_pixelformat_has_alpha(pixelformat)) ret++; return ret; } GAVL_PUBLIC gavl_color_channel_t gavl_pixelformat_get_channel(gavl_pixelformat_t pixelformat, int index) { int num = gavl_pixelformat_num_channels(pixelformat); if((index < 0) || (index >= num)) return GAVL_CCH_NONE; if(gavl_pixelformat_has_alpha(pixelformat) && (index == num-1)) return GAVL_CCH_ALPHA; if(gavl_pixelformat_is_gray(pixelformat)) { return GAVL_CCH_Y; } else if(gavl_pixelformat_is_rgb(pixelformat)) { switch(index) { case 0: return GAVL_CCH_RED; break; case 1: return GAVL_CCH_GREEN; break; case 2: return GAVL_CCH_BLUE; break; } } else if(gavl_pixelformat_is_yuv(pixelformat)) { switch(index) { case 0: return GAVL_CCH_Y; break; case 1: return GAVL_CCH_CB; break; case 2: return GAVL_CCH_CR; break; } } return GAVL_CCH_NONE; } bplaum-gavl-b9385e3/gavl/compression.c000066400000000000000000000315461513252040200177260ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include #include #include #include #include #include #include #define LOG_DOMAIN "compression" void gavl_compression_info_free(gavl_compression_info_t * info) { gavl_buffer_free(&info->codec_header); } void gavl_compression_info_init(gavl_compression_info_t * info) { memset(info, 0, sizeof(*info)); } #define FLAG_SEPARATE (1<<0) #define FLAG_NEEDS_PIXELFORMAT (1<<1) #define FLAG_CFS (1<<2) // Constant Frame Samples struct { gavl_codec_id_t id; const char * extension; const char * short_name; // Has no spaces const char * long_name; const char * mimetype; int flags; int sample_size; } compression_ids[] = { /* Audio */ { GAVL_CODEC_ID_ALAW, NULL, "alaw", "alaw", "audio/x-alaw", 0, 1 }, { GAVL_CODEC_ID_ULAW, NULL, "ulaw", "ulaw", "audio/x-mulaw", 0, 1 }, { GAVL_CODEC_ID_MP2, "mp2", "mp2", "MPEG layer 2", "audio/mpeg", FLAG_CFS }, { GAVL_CODEC_ID_MP3, "mp3", "mp3", "MPEG layer 3", "audio/mpeg", FLAG_CFS }, { GAVL_CODEC_ID_AC3, "ac3", "ac3", "AC3", "audio/x-ac3",FLAG_CFS }, { GAVL_CODEC_ID_AAC, NULL, "aac", "AAC", NULL, FLAG_CFS }, { GAVL_CODEC_ID_VORBIS, NULL, "vorbis", "Vorbis", "audio/x-vorbis", }, { GAVL_CODEC_ID_FLAC, NULL, "flac", "Flac", "audio/x-flac", }, { GAVL_CODEC_ID_OPUS, NULL, "opus", "Opus", "audio/opus", }, { GAVL_CODEC_ID_SPEEX, NULL, "speex", "Speex", "audio/x-speex", FLAG_CFS }, { GAVL_CODEC_ID_DTS, NULL, "dts", "DTS", NULL, }, /* Video */ { GAVL_CODEC_ID_JPEG, "jpg", "jpeg", "JPEG image", "image/jpeg", FLAG_SEPARATE | FLAG_NEEDS_PIXELFORMAT }, { GAVL_CODEC_ID_PNG, "png", "png", "PNG image", "image/png", FLAG_SEPARATE | FLAG_NEEDS_PIXELFORMAT }, { GAVL_CODEC_ID_TIFF, "tif", "tiff", "TIFF image", "image/tiff", FLAG_SEPARATE | FLAG_NEEDS_PIXELFORMAT }, { GAVL_CODEC_ID_TGA, "tga", "tga", "TGA image", "image/x-tga", FLAG_SEPARATE | FLAG_NEEDS_PIXELFORMAT }, { GAVL_CODEC_ID_MPEG1, "mpv", "mpeg1", "MPEG-1", "video/mpeg", }, { GAVL_CODEC_ID_MPEG2, "mpv", "mpeg2", "MPEG-2", "video/mpeg", FLAG_NEEDS_PIXELFORMAT }, { GAVL_CODEC_ID_MPEG4_ASP, "m4v", "mpeg4", "MPEG-4", NULL, }, // ISO/IEC 14496-2 { GAVL_CODEC_ID_H264, "h264", "h264", "H.264", NULL, }, { GAVL_CODEC_ID_THEORA, NULL, "theora", "Theora", NULL, }, { GAVL_CODEC_ID_DIRAC, NULL, "dirac", "Dirac", "video/x-dirac", }, { GAVL_CODEC_ID_DV, "dv", "dv", "DV", NULL, FLAG_NEEDS_PIXELFORMAT }, { GAVL_CODEC_ID_VP8, NULL, "vp8", "VP8", "video/x-vp8", }, { GAVL_CODEC_ID_DIV3, NULL, "divx3", "DivX 3", NULL, }, { GAVL_CODEC_ID_DVDSUB, NULL, "dvdsub", "DVD subtitles", NULL, }, { GAVL_CODEC_ID_EXTENDED, NULL, "ext", "Extended (see codec_tag)", NULL, }, }; #define NUM_CODEC_IDS (sizeof(compression_ids)/sizeof(compression_ids[0])) const char * gavl_compression_get_extension(gavl_codec_id_t id, int * separate) { int i; for(i = 0; i < NUM_CODEC_IDS; i++) { if(compression_ids[i].id == id) { if(separate) *separate = !!(compression_ids[i].flags & FLAG_SEPARATE); return compression_ids[i].extension; } } return NULL; } static const char * MIME_AACP = "audio/aacp"; static const char * MIME_AAC = "audio/aac"; const char * gavl_compression_get_mimetype(const gavl_compression_info_t * ci) { int i; for(i = 0; i < NUM_CODEC_IDS; i++) { if(compression_ids[i].id == ci->id) { if(compression_ids[i].mimetype) return compression_ids[i].extension; break; } } /* Special cases */ if(compression_ids[i].id == GAVL_CODEC_ID_AAC) { if(ci->flags & GAVL_COMPRESSION_SBR) return MIME_AACP; else return MIME_AAC; } return NULL; } int gavl_compression_get_sample_size(gavl_codec_id_t id) { int i; for(i = 0; i < NUM_CODEC_IDS; i++) { if(compression_ids[i].id == id) { return compression_ids[i].sample_size; } } return 0; } int gavl_compression_need_pixelformat(gavl_codec_id_t id) { int i; for(i = 0; i < NUM_CODEC_IDS; i++) { if(compression_ids[i].id == id) return !!(compression_ids[i].flags & FLAG_NEEDS_PIXELFORMAT); } return 0; } int gavl_compression_constant_frame_samples(gavl_codec_id_t id) { int i; for(i = 0; i < NUM_CODEC_IDS; i++) { if(compression_ids[i].id == id) return !!(compression_ids[i].flags & FLAG_CFS); } return 0; } const char * gavl_compression_get_long_name(gavl_codec_id_t id) { int i; for(i = 0; i < NUM_CODEC_IDS; i++) { if(compression_ids[i].id == id) return compression_ids[i].long_name; } return NULL; } const char * gavl_compression_get_short_name(gavl_codec_id_t id) { int i; for(i = 0; i < NUM_CODEC_IDS; i++) { if(compression_ids[i].id == id) return compression_ids[i].short_name; } return NULL; } gavl_codec_id_t gavl_compression_from_short_name(const char * name) { int i; for(i = 0; i < NUM_CODEC_IDS; i++) { if(!strcmp(compression_ids[i].short_name, name)) return compression_ids[i].id; } return GAVL_CODEC_ID_NONE; } int gavl_num_compressions() { return NUM_CODEC_IDS; } gavl_codec_id_t gavl_get_compression(int index) { return compression_ids[index].id; } void gavl_compression_info_dump(const gavl_compression_info_t * info) { gavl_compression_info_dumpi(info, 0); } static void do_indent(int num) { int i; for(i = 0; i < num; i++) fprintf(stderr, " "); } void gavl_compression_info_dumpi(const gavl_compression_info_t * info, int indent) { do_indent(indent); fprintf(stderr, "Compression info\n"); do_indent(indent+2); fprintf(stderr, "Codec: %s [%s]\n", gavl_compression_get_long_name(info->id), gavl_compression_get_short_name(info->id)); do_indent(indent+2); if(info->bitrate == GAVL_BITRATE_VBR) fprintf(stderr, "Bitrate: Variable\n"); else if(!info->bitrate) fprintf(stderr, "Bitrate: Unknown\n"); else fprintf(stderr, "Bitrate: %d bps\n", info->bitrate); if(info->id < 0x10000) { do_indent(indent+2); fprintf(stderr, "pre_skip: %d\n", info->pre_skip); } if(info->id >= 0x10000) { do_indent(indent+2); fprintf(stderr, "Palette size: %d\n", info->palette_size); do_indent(indent+2); fprintf(stderr, "VBV size: %d bytes\n", info->video_buffer_size); do_indent(indent+2); fprintf(stderr, "Frame types: I"); if(info->flags & GAVL_COMPRESSION_HAS_P_FRAMES) fprintf(stderr, ",P"); if(info->flags & GAVL_COMPRESSION_HAS_B_FRAMES) fprintf(stderr, ",B"); fprintf(stderr, "\n"); } else { do_indent(indent+2); fprintf(stderr, "SBR: %s\n", (info->flags & GAVL_COMPRESSION_SBR ? "Yes" : "No")); } do_indent(indent+2); fprintf(stderr, "Global header %d bytes", info->codec_header.len); if(info->codec_header.len && (info->codec_header.len < 256)) { fprintf(stderr, " (hexdump follows)\n"); gavl_hexdumpi(info->codec_header.buf, info->codec_header.len, 16, indent+2); } else fprintf(stderr, "\n"); } void gavl_compression_info_copy(gavl_compression_info_t * dst, const gavl_compression_info_t * src) { if(!src) { memset(dst, 0, sizeof(*dst)); return; } memcpy(dst, src, sizeof(*dst)); if(src->codec_header.len) { gavl_buffer_init(&dst->codec_header); gavl_buffer_copy(&dst->codec_header, &src->codec_header); } } void gavl_compression_info_set_global_header(gavl_compression_info_t * dst, const uint8_t * data, int len) { gavl_buffer_reset(&dst->codec_header); gavl_buffer_append_data_pad(&dst->codec_header, data, len, GAVL_PACKET_PADDING); } void gavl_compression_info_append_global_header(gavl_compression_info_t * dst, const uint8_t * data, int len) { gavl_buffer_append_data_pad(&dst->codec_header, data, len, GAVL_PACKET_PADDING); } /* Xiph style lacing */ #if 0 // Format of xiph lacing: // // 255 255 233 // 255 255 123 // Segment 1 // Segment 2 static uint8_t * get_xiph_len(uint8_t * ptr, int * len) { *len = 0; while(*ptr == 255) { *len += 255; ptr++; } *len += *ptr; ptr++; return ptr; } typedef struct { int len; uint8_t * ptr; } xiph_buffer_t; static int xiph_buffer_get(xiph_buffer_t * ret, uint8_t * global_header, int global_header_len) { int i; uint8_t * ptr = global_header; int num_segments = (*ptr) + 1; ptr++; for(i = 0; i < num_segments-1; i++) { ptr = get_xiph_len(ptr, &ret[i].len); if(ptr - global_header > global_header_len) return 0; } for(i = 0; i < num_segments-1; i++) { ret[i].ptr = ptr; ptr += ret[i].len; if(ptr - global_header > global_header_len) return 0; } ret[num_segments-1].ptr = ptr; ret[num_segments-1].len = global_header_len - (ptr - global_header); if(ret[num_segments-1].len <= 0) return 0; return 1; } static uint8_t * xiph_buffer_put(xiph_buffer_t * buf, int num, uint32_t * global_header_len) { int len; uint8_t * ret; uint8_t * ptr; int i; *global_header_len = 1; for(i = 0; i < num-1; i++) { *global_header_len += buf[i].len / 255 + 1; *global_header_len += buf[i].len; } *global_header_len += buf[num-1].len; ret = malloc(*global_header_len + GAVL_PACKET_PADDING); ptr = ret; *ptr = num - 1; ptr++; for(i = 0; i < num-1; i++) { len = buf[i].len; while(len >= 255) { *ptr++ = 255; len -= 255; } *ptr++ = len; } for(i = 0; i < num; i++) { memcpy(ptr, buf[i].ptr, buf[i].len); ptr += buf[i].len; } memset(ptr, 0, GAVL_PACKET_PADDING); return ret; } #endif void gavl_append_xiph_header(gavl_buffer_t * codec_header, uint8_t * header, int header_len) { gavl_buffer_alloc(codec_header, codec_header->len + header_len + 4); GAVL_32BE_2_PTR(header_len, codec_header->buf + codec_header->len); memcpy(codec_header->buf + codec_header->len + 4, header, header_len); codec_header->len += 4 + header_len; } uint8_t * gavl_extract_xiph_header(gavl_buffer_t * codec_header, int idx, int * header_len) { int i; int len; uint8_t * ptr = codec_header->buf; uint8_t * end = codec_header->buf + codec_header->len; if(codec_header->len < 4) { /* Error */ return NULL; } len = GAVL_PTR_2_32BE(ptr); ptr += 4; for(i = 0; i < idx; i++) { ptr += len; if(end - ptr < 4) { /* Error */ gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Cannot extract xiph header: Buffer too small"); return NULL; } len = GAVL_PTR_2_32BE(ptr); ptr += 4; if(end - ptr < len) { /* Error */ gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Cannot extract xiph header: Buffer too small"); return NULL; } } *header_len = len; return ptr; } static const char * coding_type_strings[4] = { "?", "I", "P", "B" }; const char * gavl_coding_type_to_string(int type) { return coding_type_strings[type & GAVL_PACKET_TYPE_MASK]; } bplaum-gavl-b9385e3/gavl/countrycodes.c000066400000000000000000000263311513252040200201020ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include const gavl_country_t gavl_countries[] = { { "Afghanistan", "AF", "AFG", 4 }, { "Albania", "AL", "ALB", 8 }, { "Algeria", "DZ", "DZA", 12 }, { "American Samoa", "AS", "ASM", 16 }, { "Andorra", "AD", "AND", 20 }, { "Angola", "AO", "AGO", 24 }, { "Anguilla", "AI", "AIA", 660 }, { "Antarctica", "AQ", "ATA", 10 }, { "Antigua and Barbuda", "AG", "ATG", 28 }, { "Argentina", "AR", "ARG", 32 }, { "Argentine", "AR", "ARG", 32 }, { "Armenia", "AM", "ARM", 51 }, { "Aruba", "AW", "ABW", 533 }, { "Australia", "AU", "AUS", 36 }, { "Austria", "AT", "AUT", 40 }, { "Azerbaijan", "AZ", "AZE", 31 }, { "Bahamas", "BS", "BHS", 44 }, { "Bahrain", "BH", "BHR", 48 }, { "Bangladesh", "BD", "BGD", 50 }, { "Barbados", "BB", "BRB", 52 }, { "Belarus", "BY", "BLR", 112 }, { "Belgium", "BE", "BEL", 56 }, { "Belize", "BZ", "BLZ", 84 }, { "Benin", "BJ", "BEN", 204 }, { "Bermuda", "BM", "BMU", 60 }, { "Bhutan", "BT", "BTN", 64 }, { "Bolivia", "BO", "BOL", 68 }, { "Bolivia, Plurinational State of", "BO", "BOL", 68 }, { "Bonaire, Sint Eustatius and Saba", "BQ", "BES", 535 }, { "Bosnia and Herzegovina", "BA", "BIH", 70 }, { "Botswana", "BW", "BWA", 72 }, { "Bouvet Island", "BV", "BVT", 74 }, { "Brazil", "BR", "BRA", 76 }, { "British Indian Ocean Territory", "IO", "IOT", 86 }, { "Brunei Darussalam", "BN", "BRN", 96 }, { "Brunei", "BN", "BRN", 96 }, { "Bulgaria", "BG", "BGR", 100 }, { "Burkina Faso", "BF", "BFA", 854 }, { "Burundi", "BI", "BDI", 108 }, { "Cambodia", "KH", "KHM", 116 }, { "Cameroon", "CM", "CMR", 120 }, { "Canada", "CA", "CAN", 124 }, { "Cape Verde", "CV", "CPV", 132 }, { "Cayman Islands", "KY", "CYM", 136 }, { "Central African Republic", "CF", "CAF", 140 }, { "Chad", "TD", "TCD", 148 }, { "Chile", "CL", "CHL", 152 }, { "China", "CN", "CHN", 156 }, { "Christmas Island", "CX", "CXR", 162 }, { "Cocos (Keeling) Islands", "CC", "CCK", 166 }, { "Colombia", "CO", "COL", 170 }, { "Comoros", "KM", "COM", 174 }, { "Congo", "CG", "COG", 178 }, { "Congo, the Democratic Republic of the", "CD", "COD", 180 }, { "Cook Islands", "CK", "COK", 184 }, { "Costa Rica", "CR", "CRI", 188 }, { "Côte d'Ivoire", "CI", "CIV", 384 }, { "Ivory Coast", "CI", "CIV", 384 }, { "Croatia", "HR", "HRV", 191 }, { "Cuba", "CU", "CUB", 192 }, { "Curaçao", "CW", "CUW", 531 }, { "Cyprus", "CY", "CYP", 196 }, { "Czech Republic", "CZ", "CZE", 203 }, { "Denmark", "DK", "DNK", 208 }, { "Djibouti", "DJ", "DJI", 262 }, { "Dominica", "DM", "DMA", 212 }, { "Dominican Republic", "DO", "DOM", 214 }, { "Ecuador", "EC", "ECU", 218 }, { "Egypt", "EG", "EGY", 818 }, { "El Salvador", "SV", "SLV", 222 }, { "Equatorial Guinea", "GQ", "GNQ", 226 }, { "Eritrea", "ER", "ERI", 232 }, { "Estonia", "EE", "EST", 233 }, { "Ethiopia", "ET", "ETH", 231 }, { "Falkland Islands (Malvinas)", "FK", "FLK", 238 }, { "Faroe Islands", "FO", "FRO", 234 }, { "Fiji", "FJ", "FJI", 242 }, { "Finland", "FI", "FIN", 246 }, { "France", "FR", "FRA", 250 }, { "French Guiana", "GF", "GUF", 254 }, { "French Polynesia", "PF", "PYF", 258 }, { "French Southern Territories", "TF", "ATF", 260 }, { "Gabon", "GA", "GAB", 266 }, { "Gambia", "GM", "GMB", 270 }, { "Georgia", "GE", "GEO", 268 }, { "Germany", "DE", "DEU", 276 }, { "Ghana", "GH", "GHA", 288 }, { "Gibraltar", "GI", "GIB", 292 }, { "Greece", "GR", "GRC", 300 }, { "Greenland", "GL", "GRL", 304 }, { "Grenada", "GD", "GRD", 308 }, { "Guadeloupe", "GP", "GLP", 312 }, { "Guam", "GU", "GUM", 316 }, { "Guatemala", "GT", "GTM", 320 }, { "Guernsey", "GG", "GGY", 831 }, { "Guinea", "GN", "GIN", 324 }, { "Guinea-Bissau", "GW", "GNB", 624 }, { "Guyana", "GY", "GUY", 328 }, { "Haiti", "HT", "HTI", 332 }, { "Heard Island and McDonald Islands", "HM", "HMD", 334 }, { "Holy See (Vatican City State)", "VA", "VAT", 336 }, { "Honduras", "HN", "HND", 340 }, { "Hong Kong", "HK", "HKG", 344 }, { "Hungary", "HU", "HUN", 348 }, { "Iceland", "IS", "ISL", 352 }, { "India", "IN", "IND", 356 }, { "Indonesia", "ID", "IDN", 360 }, { "Iran", "IR", "IRN", 364 }, { "Iran, Islamic Republic of", "IR", "IRN", 364 }, { "Iraq", "IQ", "IRQ", 368 }, { "Ireland", "IE", "IRL", 372 }, { "Isle of Man", "IM", "IMN", 833 }, { "Israel", "IL", "ISR", 376 }, { "Italy", "IT", "ITA", 380 }, { "Jamaica", "JM", "JAM", 388 }, { "Japan", "JP", "JPN", 392 }, { "Jersey", "JE", "JEY", 832 }, { "Jordan", "JO", "JOR", 400 }, { "Kazakhstan", "KZ", "KAZ", 398 }, { "Kenya", "KE", "KEN", 404 }, { "Kiribati", "KI", "KIR", 296 }, { "Korea, Democratic People's Republic of", "KP", "PRK", 408 }, { "Korea, Republic of", "KR", "KOR", 410 }, { "Kosovo", "XK", "XKX", 0 }, { "South Korea", "KR", "KOR", 410 }, { "Kuwait", "KW", "KWT", 414 }, { "Kyrgyzstan", "KG", "KGZ", 417 }, { "Lao People's Democratic Republic", "LA", "LAO", 418 }, { "Latvia", "LV", "LVA", 428 }, { "Lebanon", "LB", "LBN", 422 }, { "Lesotho", "LS", "LSO", 426 }, { "Liberia", "LR", "LBR", 430 }, { "Libyan Arab Jamahiriya", "LY", "LBY", 434 }, { "Libya", "LY", "LBY", 434 }, { "Liechtenstein", "LI", "LIE", 438 }, { "Lithuania", "LT", "LTU", 440 }, { "Luxembourg", "LU", "LUX", 442 }, { "Luxemburg", "LU", "LUX", 442 }, { "Macao", "MO", "MAC", 446 }, { "Macedonia, the former Yugoslav Republic of", "MK", "MKD", 807 }, { "Madagascar", "MG", "MDG", 450 }, { "Malawi", "MW", "MWI", 454 }, { "Malaysia", "MY", "MYS", 458 }, { "Maldives", "MV", "MDV", 462 }, { "Mali", "ML", "MLI", 466 }, { "Malta", "MT", "MLT", 470 }, { "Marshall Islands", "MH", "MHL", 584 }, { "Martinique", "MQ", "MTQ", 474 }, { "Mauritania", "MR", "MRT", 478 }, { "Mauritius", "MU", "MUS", 480 }, { "Mayotte", "YT", "MYT", 175 }, { "Mexico", "MX", "MEX", 484 }, { "Micronesia, Federated States of", "FM", "FSM", 583 }, { "Moldova", "MD", "MDA", 498 }, { "Moldova, Republic of", "MD", "MDA", 498 }, { "Monaco", "MC", "MCO", 492 }, { "Mongolia", "MN", "MNG", 496 }, { "Montenegro", "ME", "MNE", 499 }, { "Montserrat", "MS", "MSR", 500 }, { "Morocco", "MA", "MAR", 504 }, { "Mozambique", "MZ", "MOZ", 508 }, { "Myanmar", "MM", "MMR", 104 }, { "Burma", "MM", "MMR", 104 }, { "Namibia", "NA", "NAM", 516 }, { "Nauru", "NR", "NRU", 520 }, { "Nepal", "NP", "NPL", 524 }, { "Netherlands", "NL", "NLD", 528 }, { "Netherlands Antilles", "AN", "ANT", 530 }, { "New Caledonia", "NC", "NCL", 540 }, { "New Zealand", "NZ", "NZL", 554 }, { "Nicaragua", "NI", "NIC", 558 }, { "Niger", "NE", "NER", 562 }, { "Nigeria", "NG", "NGA", 566 }, { "Niue", "NU", "NIU", 570 }, { "Norfolk Island", "NF", "NFK", 574 }, { "Northern Mariana Islands", "MP", "MNP", 580 }, { "Norway", "NO", "NOR", 578 }, { "Oman", "OM", "OMN", 512 }, { "Pakistan", "PK", "PAK", 586 }, { "Palau", "PW", "PLW", 585 }, { "Palestinian Territory, Occupied", "PS", "PSE", 275 }, { "Panama", "PA", "PAN", 591 }, { "Papua New Guinea", "PG", "PNG", 598 }, { "Paraguay", "PY", "PRY", 600 }, { "Peru", "PE", "PER", 604 }, { "Philippines", "PH", "PHL", 608 }, { "Pitcairn", "PN", "PCN", 612 }, { "Poland", "PL", "POL", 616 }, { "Portugal", "PT", "PRT", 620 }, { "Puerto Rico", "PR", "PRI", 630 }, { "Qatar", "QA", "QAT", 634 }, { "Réunion", "RE", "REU", 638 }, { "Romania", "RO", "ROU", 642 }, { "Russia", "RU", "RUS", 643 }, { "Russian Federation", "RU", "RUS", 643 }, { "Rwanda", "RW", "RWA", 646 }, { "Saint Helena, Ascension and Tristan da Cunha", "SH", "SHN", 654 }, { "Saint Kitts and Nevis", "KN", "KNA", 659 }, { "Saint Lucia", "LC", "LCA", 662 }, { "Saint Pierre and Miquelon", "PM", "SPM", 666 }, { "Saint Vincent and the Grenadines", "VC", "VCT", 670 }, { "Saint Vincent & the Grenadines", "VC", "VCT", 670 }, { "St. Vincent and the Grenadines", "VC", "VCT", 670 }, { "Samoa", "WS", "WSM", 882 }, { "San Marino", "SM", "SMR", 674 }, { "Sao Tome and Principe", "ST", "STP", 678 }, { "Saudi Arabia", "SA", "SAU", 682 }, { "Senegal", "SN", "SEN", 686 }, { "Serbia", "RS", "SRB", 688 }, { "Seychelles", "SC", "SYC", 690 }, { "Sierra Leone", "SL", "SLE", 694 }, { "Singapore", "SG", "SGP", 702 }, { "Sint Maarten", "SX", "SXM", 534 }, { "Slovakia", "SK", "SVK", 703 }, { "Slovenia", "SI", "SVN", 705 }, { "Solomon Islands", "SB", "SLB", 90 }, { "Somalia", "SO", "SOM", 706 }, { "South Africa", "ZA", "ZAF", 710 }, { "South Georgia and the South Sandwich Islands", "GS", "SGS", 239 }, { "South Sudan", "SS", "SSD", 728 }, { "Spain", "ES", "ESP", 724 }, { "Sri Lanka", "LK", "LKA", 144 }, { "Sudan", "SD", "SDN", 736 }, { "Suriname", "SR", "SUR", 740 }, { "Svalbard and Jan Mayen", "SJ", "SJM", 744 }, { "Swaziland", "SZ", "SWZ", 748 }, { "Sweden", "SE", "SWE", 752 }, { "Switzerland", "CH", "CHE", 756 }, { "Syrian Arab Republic", "SY", "SYR", 760 }, { "Taiwan", "TW", "TWN", 158 }, { "Taiwan, Province of China", "TW", "TWN", 158 }, { "Tajikistan", "TJ", "TJK", 762 }, { "Tanzania", "TZ", "TZA", 834 }, { "Tanzania, United Republic of", "TZ", "TZA", 834 }, { "Thailand", "TH", "THA", 764 }, { "Timor-Leste", "TL", "TLS", 626 }, { "Togo", "TG", "TGO", 768 }, { "Tokelau", "TK", "TKL", 772 }, { "Tonga", "TO", "TON", 776 }, { "Trinidad and Tobago", "TT", "TTO", 780 }, { "Tunisia", "TN", "TUN", 788 }, { "Turkey", "TR", "TUR", 792 }, { "Turkmenistan", "TM", "TKM", 795 }, { "Turks and Caicos Islands", "TC", "TCA", 796 }, { "Tuvalu", "TV", "TUV", 798 }, { "Uganda", "UG", "UGA", 800 }, { "Ukraine", "UA", "UKR", 804 }, { "United Arab Emirates", "AE", "ARE", 784 }, { "United Kingdom", "GB", "GBR", 826 }, { "UK", "GB", "GBR", 826 }, { "United States", "US", "USA", 840 }, { "USA", "US", "USA", 840 }, { "United States Minor Outlying Islands", "UM", "UMI", 581 }, { "Uruguay", "UY", "URY", 858 }, { "Uzbekistan", "UZ", "UZB", 860 }, { "Vanuatu", "VU", "VUT", 548 }, { "Venezuela", "VE", "VEN", 862 }, { "Venezuela, Bolivarian Republic of", "VE", "VEN", 862 }, { "Viet Nam", "VN", "VNM", 704 }, { "Vietnam", "VN", "VNM", 704 }, { "Virgin Islands, British", "VG", "VGB", 92 }, { "Virgin Islands, U.S.", "VI", "VIR", 850 }, { "Wallis and Futuna", "WF", "WLF", 876 }, { "Western Sahara", "EH", "ESH", 732 }, { "Yemen", "YE", "YEM", 887 }, { "Zambia", "ZM", "ZMB", 894 }, { "Zimbabwe", "ZW", "ZWE", 716 }, { /* End */ } }; bplaum-gavl-b9385e3/gavl/cputest.c000066400000000000000000000076361513252040200170570ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include /* * Test for available CPU extensions * Shamelessly stolen from ffmpeg (ffmpeg.sf.net) */ #define ACCEL_GENERIC 0 /* * Wrappers for foreign flag constants */ #define MM_MMX GAVL_ACCEL_MMX #define MM_MMXEXT GAVL_ACCEL_MMXEXT #define MM_SSE GAVL_ACCEL_SSE #define MM_SSE2 GAVL_ACCEL_SSE2 #define MM_SSE3 GAVL_ACCEL_SSE3 #define MM_SSSE3 GAVL_ACCEL_SSSE3 #define MM_3DNOW GAVL_ACCEL_3DNOW #define MM_3DNOWEXT GAVL_ACCEL_3DNOWEXT #ifdef ARCH_X86_64 # define REG_b "rbx" # define REG_S "rsi" #else # define REG_b "ebx" # define REG_S "esi" #endif /* ebx saving is necessary for PIC. gcc seems unable to see it alone */ #define cpuid(index,eax,ebx,ecx,edx)\ __asm __volatile\ ("mov %%"REG_b", %%"REG_S"\n\t"\ "cpuid\n\t"\ "xchg %%"REG_b", %%"REG_S\ : "=a" (eax), "=S" (ebx),\ "=c" (ecx), "=d" (edx)\ : "0" (index)); /* Function to test if multimedia instructions are supported... */ int gavl_accel_supported() { #ifdef ARCH_X86 int rval = 0; int eax, ebx, ecx, edx; int max_std_level, max_ext_level, std_caps=0, ext_caps=0; #ifndef ARCH_X86_64 long a, c; __asm__ __volatile__ ( /* See if CPUID instruction is supported ... */ /* ... Get copies of EFLAGS into eax and ecx */ "pushf\n\t" "pop %0\n\t" "mov %0, %1\n\t" /* ... Toggle the ID bit in one copy and store */ /* to the EFLAGS reg */ "xor $0x200000, %0\n\t" "push %0\n\t" "popf\n\t" /* ... Get the (hopefully modified) EFLAGS */ "pushf\n\t" "pop %0\n\t" : "=a" (a), "=c" (c) : : "cc" ); if (a == c) return 0; /* CPUID not supported */ #endif // !ARCH_X86_64 cpuid(0, max_std_level, ebx, ecx, edx); if(max_std_level >= 1){ cpuid(1, eax, ebx, ecx, std_caps); if (std_caps & (1<<23)) rval |= MM_MMX; if (std_caps & (1<<25)) rval |= MM_MMXEXT | MM_SSE; if (std_caps & (1<<26)) rval |= MM_SSE2; if (ecx & 1) rval |= MM_SSE3; if (ecx & 0x00000200 ) rval |= MM_SSSE3; } cpuid(0x80000000, max_ext_level, ebx, ecx, edx); if(max_ext_level >= 0x80000001){ cpuid(0x80000001, eax, ebx, ecx, ext_caps); if (ext_caps & (1<<31)) rval |= MM_3DNOW; if (ext_caps & (1<<30)) rval |= MM_3DNOWEXT; if (ext_caps & (1<<23)) rval |= MM_MMX; if (ext_caps & (1<<22)) rval |= MM_MMXEXT; } return rval|ACCEL_GENERIC; #else return ACCEL_GENERIC; #endif } bplaum-gavl-b9385e3/gavl/csp_packed_packed.h000066400000000000000000000045431513252040200207720ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ /* Packed -> Packed conversion */ /* * Needs the following macros: * IN_TYPE: Type of the input pointer * OUT_TYPE: Type of the output pointer * IN_ADVANCE: Input advance * OUT_ADVANCE: Output advance * FUNC_NAME: Name of the function * NUM_PIXELS: The number of pixels the conversion processes at once * CONVERT: This macro takes no arguments and makes the appropriate conversion * from to * INIT: Variable declarations and initialization (Optional) * CLEANUP: Stuff at the end (Optional) */ static void (FUNC_NAME)(gavl_video_convert_context_t * ctx) { int i; int j, jmax; IN_TYPE * src; OUT_TYPE * dst; uint8_t * src_save; uint8_t * dst_save; #ifdef INIT INIT #endif src_save = ctx->input_frame->planes[0]; dst_save = ctx->output_frame->planes[0]; jmax = ctx->input_format.image_width / NUM_PIXELS; for(i = 0; i < ctx->input_format.image_height; i++) { src = (IN_TYPE*)src_save; dst = (OUT_TYPE*)dst_save; j = jmax + 1; while(--j) { CONVERT src += IN_ADVANCE; dst += OUT_ADVANCE; } src_save += ctx->input_frame->strides[0]; dst_save += ctx->output_frame->strides[0]; } #ifdef CLEANUP CLEANUP #endif } #undef IN_TYPE #undef OUT_TYPE #undef IN_ADVANCE #undef OUT_ADVANCE #undef NUM_PIXELS #undef FUNC_NAME #undef CONVERT #ifdef INIT #undef INIT #endif #ifdef CLEANUP #undef CLEANUP #endif bplaum-gavl-b9385e3/gavl/csp_packed_planar.h000066400000000000000000000114641513252040200210200ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ /* Packed -> Planar conversion */ /* * Needs the following macros: * IN_TYPE: Type of the input pointers * OUT_TYPE: Type of the output pointers * IN_ADVANCE: Input advance * OUT_ADVANCE_Y: Output advance * OUT_ADVANCE_UV: Output advance * FUNC_NAME: Name of the function * NUM_PIXELS: The number of pixels the conversion processes at once * CONVERT_YUV: Makes the appropriate conversion * from to for luma and chroma * CONVERT_Y: Makes the appropriate conversion * from to for luma only (only if CHROMA_SUB > 1) * CHROMA_SUB: Vertical chroma subsampling factor * INIT: Variable declarations and initialization (Optional) * CLEANUP: Stuff at the end (Optional) */ static void (FUNC_NAME)(gavl_video_convert_context_t * ctx) { #ifndef SCANLINE int i, imax; uint8_t * src_save; uint8_t * dst_save_y; uint8_t * dst_save_u; uint8_t * dst_save_v; #endif int j, jmax; IN_TYPE * src; OUT_TYPE * dst_y; OUT_TYPE * dst_u; OUT_TYPE * dst_v; #ifdef INIT INIT #endif #ifndef SCANLINE src_save = ctx->input_frame->planes[0]; dst_save_y = ctx->output_frame->planes[0]; dst_save_u = ctx->output_frame->planes[1]; dst_save_v = ctx->output_frame->planes[2]; #else src = (IN_TYPE*)ctx->input_frame->planes[0]; dst_y = (OUT_TYPE*)ctx->output_frame->planes[0]; dst_u = (OUT_TYPE*)ctx->output_frame->planes[1]; dst_v = (OUT_TYPE*)ctx->output_frame->planes[2]; #endif jmax = ctx->input_format.image_width / NUM_PIXELS; #ifndef SCANLINE imax = ctx->input_format.image_height / CHROMA_SUB; for(i = 0; i < imax; i++) { src = (IN_TYPE*)src_save; dst_y = (OUT_TYPE*)dst_save_y; dst_u = (OUT_TYPE*)dst_save_u; dst_v = (OUT_TYPE*)dst_save_v; #endif /* !SCANLINE */ GAVL_LOOP_HEAD(j, jmax) CONVERT_YUV src += IN_ADVANCE; dst_y += OUT_ADVANCE_Y; dst_u += OUT_ADVANCE_UV; dst_v += OUT_ADVANCE_UV; GAVL_LOOP_TAIL #ifndef SCANLINE dst_save_y += ctx->output_frame->strides[0]; dst_save_u += ctx->output_frame->strides[1]; dst_save_v += ctx->output_frame->strides[2]; src_save += ctx->input_frame->strides[0]; #if CHROMA_SUB > 1 src = (IN_TYPE*)src_save; dst_y = (OUT_TYPE*)dst_save_y; GAVL_LOOP_HEAD(j, jmax) CONVERT_Y src += IN_ADVANCE; dst_y += OUT_ADVANCE_Y; GAVL_LOOP_TAIL dst_save_y += ctx->output_frame->strides[0]; src_save += ctx->input_frame->strides[0]; #endif #if CHROMA_SUB > 2 src = (IN_TYPE*)src_save; dst_y = (OUT_TYPE*)dst_save_y; GAVL_LOOP_HEAD(j, jmax) CONVERT_Y src += IN_ADVANCE; dst_y += OUT_ADVANCE_Y; GAVL_LOOP_TAIL dst_save_y += ctx->output_frame->strides[0]; src_save += ctx->input_frame->strides[0]; #endif #if CHROMA_SUB > 3 src = (IN_TYPE*)src_save; dst_y = (OUT_TYPE*)dst_save_y; GAVL_LOOP_HEAD(j, jmax) CONVERT_Y src += IN_ADVANCE; dst_y += OUT_ADVANCE_Y; GAVL_LOOP_TAIL dst_save_y += ctx->output_frame->strides[0]; src_save += ctx->input_frame->strides[0]; #endif } #endif /* !SCANLINE */ #ifdef CLEANUP CLEANUP #endif } #undef FUNC_NAME // Name of the function #undef IN_TYPE // Type of the input pointers #undef OUT_TYPE // Type of the output pointers #undef IN_ADVANCE // Input advance #undef OUT_ADVANCE_Y // Output advance #undef OUT_ADVANCE_UV // Output advance #undef NUM_PIXELS // The number of pixels the conversion processes at once #undef CONVERT_YUV // Makes the appropriate conversion // from to for luma and chroma #ifdef CONVERT_Y #undef CONVERT_Y // Makes the appropriate conversion // from to for luma only #endif #undef CHROMA_SUB // Vertical chroma subsampling factor #ifdef INIT #undef INIT #endif #ifdef CLEANUP #undef CLEANUP #endif bplaum-gavl-b9385e3/gavl/csp_planar_packed.h000066400000000000000000000116071513252040200210170ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ /* Planar -> Packed conversion */ /* * Needs the following macros: * IN_TYPE: Type of the input pointers * OUT_TYPE: Type of the output pointers * IN_ADVANCE_Y: Input advance * IN_ADVANCE_UV: Input advance * OUT_ADVANCE: Output advance * FUNC_NAME: Name of the function * NUM_PIXELS: The number of pixels the conversion processes at once * CONVERT: Makes the appropriate conversion * from to for luma and chroma * CHROMA_SUB: Vertical chroma subsampling factor * INIT: Variable declarations and initialization (Optional) * CLEANUP: Stuff at the end (Optional) */ static void (FUNC_NAME)(gavl_video_convert_context_t * ctx) { #ifndef SCANLINE int i, imax; uint8_t * dst_save; uint8_t * src_save_y; uint8_t * src_save_u; uint8_t * src_save_v; #endif int j, jmax; OUT_TYPE * dst; IN_TYPE * src_y; IN_TYPE * src_u; IN_TYPE * src_v; #ifdef INIT INIT #endif #ifndef SCANLINE dst_save = ctx->output_frame->planes[0]; src_save_y = ctx->input_frame->planes[0]; src_save_u = ctx->input_frame->planes[1]; src_save_v = ctx->input_frame->planes[2]; #else dst = (OUT_TYPE*)ctx->output_frame->planes[0]; src_y = (IN_TYPE*)ctx->input_frame->planes[0]; src_u = (IN_TYPE*)ctx->input_frame->planes[1]; src_v = (IN_TYPE*)ctx->input_frame->planes[2]; #endif jmax = ctx->input_format.image_width / NUM_PIXELS; #ifndef SCANLINE imax = ctx->input_format.image_height / CHROMA_SUB; for(i = 0; i < imax; i++) { dst = (OUT_TYPE*)dst_save; src_y = (IN_TYPE*)src_save_y; src_u = (IN_TYPE*)src_save_u; src_v = (IN_TYPE*)src_save_v; #endif /* !SCANLINE */ GAVL_LOOP_HEAD(j, jmax) CONVERT dst += OUT_ADVANCE; src_y += IN_ADVANCE_Y; src_u += IN_ADVANCE_UV; src_v += IN_ADVANCE_UV; GAVL_LOOP_TAIL #ifndef SCANLINE src_save_y += ctx->input_frame->strides[0]; dst_save += ctx->output_frame->strides[0]; #if CHROMA_SUB > 1 dst = (OUT_TYPE*)dst_save; src_y = (IN_TYPE*)src_save_y; src_u = (IN_TYPE*)src_save_u; src_v = (IN_TYPE*)src_save_v; GAVL_LOOP_HEAD(j, jmax) CONVERT dst += OUT_ADVANCE; src_y += IN_ADVANCE_Y; src_u += IN_ADVANCE_UV; src_v += IN_ADVANCE_UV; GAVL_LOOP_TAIL src_save_y += ctx->input_frame->strides[0]; dst_save += ctx->output_frame->strides[0]; #endif #if CHROMA_SUB > 2 dst = (OUT_TYPE*)dst_save; src_y = (IN_TYPE*)src_save_y; src_u = (IN_TYPE*)src_save_u; src_v = (IN_TYPE*)src_save_v; GAVL_LOOP_HEAD(j, jmax) CONVERT dst += OUT_ADVANCE; src_y += IN_ADVANCE_Y; src_u += IN_ADVANCE_UV; src_v += IN_ADVANCE_UV; GAVL_LOOP_TAIL src_save_y += ctx->input_frame->strides[0]; dst_save += ctx->output_frame->strides[0]; #endif #if CHROMA_SUB > 3 dst = (OUT_TYPE*)dst_save; src_y = (IN_TYPE*)src_save_y; src_u = (IN_TYPE*)src_save_u; src_v = (IN_TYPE*)src_save_v; GAVL_LOOP_HEAD(j, jmax) CONVERT dst += OUT_ADVANCE; src_y += IN_ADVANCE_Y; src_u += IN_ADVANCE_UV; src_v += IN_ADVANCE_UV; GAVL_LOOP_TAIL src_save_y += ctx->input_frame->strides[0]; dst_save += ctx->output_frame->strides[0]; #endif src_save_u += ctx->input_frame->strides[1]; src_save_v += ctx->input_frame->strides[2]; } #endif /* !SCANLINE */ #ifdef CLEANUP CLEANUP #endif } #undef FUNC_NAME // Name of the function #undef IN_TYPE // Type of the input pointers #undef OUT_TYPE // Type of the output pointers #undef IN_ADVANCE_Y // Input advance #undef IN_ADVANCE_UV // Input advance #undef OUT_ADVANCE // Output advance #undef NUM_PIXELS // The number of pixels the conversion processes at once #undef CONVERT // Makes the appropriate conversion // from to for luma and chroma #undef CHROMA_SUB // Vertical chroma subsampling factor #ifdef INIT #undef INIT #endif #ifdef CLEANUP #undef CLEANUP #endif bplaum-gavl-b9385e3/gavl/csp_planar_planar.h000066400000000000000000000157001513252040200210430ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ /* Planar -> Planar conversion */ /* * Needs the following macros: * IN_TYPE: Type of the input pointers * OUT_TYPE: Type of the output pointers * IN_ADVANCE_Y: Input advance * IN_ADVANCE_UV: Input advance * OUT_ADVANCE_Y: Output advance * OUT_ADVANCE_UV: Output advance * FUNC_NAME: Name of the function * NUM_PIXELS: The number of pixels the conversion processes at once * CONVERT_YUV: Makes the appropriate conversion * from to for luma and chroma in output * CONVERT_Y: Makes the appropriate conversion * from to for luma only in output * CHROMA_SUB_IN: Vertical chroma subsampling factor for input format * CHROMA_SUB_OUT: Vertical chroma subsampling factor for output format * INIT: Variable declarations and initialization (Optional) * CLEANUP: Stuff at the end (Optional) */ static void (FUNC_NAME)(gavl_video_convert_context_t * ctx) { int i, imax, in_row_counter = 0; uint8_t * dst_save_y; uint8_t * dst_save_u; uint8_t * dst_save_v; uint8_t * src_save_y; uint8_t * src_save_u; uint8_t * src_save_v; int j, jmax; OUT_TYPE * dst_y; OUT_TYPE * dst_u; OUT_TYPE * dst_v; IN_TYPE * src_y; IN_TYPE * src_u; IN_TYPE * src_v; #ifdef INIT INIT #endif dst_save_y = ctx->output_frame->planes[0]; dst_save_u = ctx->output_frame->planes[1]; dst_save_v = ctx->output_frame->planes[2]; src_save_y = ctx->input_frame->planes[0]; src_save_u = ctx->input_frame->planes[1]; src_save_v = ctx->input_frame->planes[2]; dst_y = (OUT_TYPE*)ctx->output_frame->planes[0]; dst_u = (OUT_TYPE*)ctx->output_frame->planes[1]; dst_v = (OUT_TYPE*)ctx->output_frame->planes[2]; src_y = (IN_TYPE*)ctx->input_frame->planes[0]; src_u = (IN_TYPE*)ctx->input_frame->planes[1]; src_v = (IN_TYPE*)ctx->input_frame->planes[2]; jmax = ctx->input_format.image_width / NUM_PIXELS; imax = ctx->input_format.image_height / CHROMA_SUB_OUT; for(i = 0; i < imax; i++) { dst_y = (OUT_TYPE*)dst_save_y; dst_u = (OUT_TYPE*)dst_save_u; dst_v = (OUT_TYPE*)dst_save_v; src_y = (IN_TYPE*)src_save_y; src_u = (IN_TYPE*)src_save_u; src_v = (IN_TYPE*)src_save_v; GAVL_LOOP_HEAD(j, jmax) CONVERT_YUV dst_y += OUT_ADVANCE_Y; dst_u += OUT_ADVANCE_UV; dst_v += OUT_ADVANCE_UV; src_y += IN_ADVANCE_Y; src_u += IN_ADVANCE_UV; src_v += IN_ADVANCE_UV; GAVL_LOOP_TAIL src_save_y += ctx->input_frame->strides[0]; dst_save_y += ctx->output_frame->strides[0]; in_row_counter++; if(in_row_counter == CHROMA_SUB_IN) { in_row_counter = 0; src_save_u += ctx->input_frame->strides[1]; src_save_v += ctx->input_frame->strides[2]; } #if CHROMA_SUB_OUT > 1 #ifdef CONVERT_Y dst_y = (OUT_TYPE*)dst_save_y; dst_u = (OUT_TYPE*)dst_save_u; dst_v = (OUT_TYPE*)dst_save_v; src_y = (IN_TYPE*)src_save_y; src_u = (IN_TYPE*)src_save_u; src_v = (IN_TYPE*)src_save_v; GAVL_LOOP_HEAD(j, jmax) CONVERT_Y dst_y += OUT_ADVANCE_Y; dst_u += OUT_ADVANCE_UV; dst_v += OUT_ADVANCE_UV; src_y += IN_ADVANCE_Y; src_u += IN_ADVANCE_UV; src_v += IN_ADVANCE_UV; GAVL_LOOP_TAIL #endif src_save_y += ctx->input_frame->strides[0]; dst_save_y += ctx->output_frame->strides[0]; in_row_counter++; if(in_row_counter == CHROMA_SUB_IN) { in_row_counter = 0; src_save_u += ctx->input_frame->strides[1]; src_save_v += ctx->input_frame->strides[2]; } #endif #if CHROMA_SUB_OUT > 2 #ifdef CONVERT_Y dst_y = (OUT_TYPE*)dst_save_y; dst_u = (OUT_TYPE*)dst_save_u; dst_v = (OUT_TYPE*)dst_save_v; src_y = (IN_TYPE*)src_save_y; src_u = (IN_TYPE*)src_save_u; src_v = (IN_TYPE*)src_save_v; GAVL_LOOP_HEAD(j, jmax) CONVERT_Y dst_y += OUT_ADVANCE_Y; dst_u += OUT_ADVANCE_UV; dst_v += OUT_ADVANCE_UV; src_y += IN_ADVANCE_Y; src_u += IN_ADVANCE_UV; src_v += IN_ADVANCE_UV; GAVL_LOOP_TAIL #endif src_save_y += ctx->input_frame->strides[0]; dst_save_y += ctx->output_frame->strides[0]; in_row_counter++; if(in_row_counter == CHROMA_SUB_IN) { in_row_counter = 0; src_save_u += ctx->input_frame->strides[1]; src_save_v += ctx->input_frame->strides[2]; } #endif #if CHROMA_SUB_OUT > 3 #ifdef CONVERT_Y dst_y = (OUT_TYPE*)dst_save_y; dst_u = (OUT_TYPE*)dst_save_u; dst_v = (OUT_TYPE*)dst_save_v; src_y = (IN_TYPE*)src_save_y; src_u = (IN_TYPE*)src_save_u; src_v = (IN_TYPE*)src_save_v; GAVL_LOOP_HEAD(j, jmax) CONVERT_Y dst_y += OUT_ADVANCE_Y; dst_u += OUT_ADVANCE_UV; dst_v += OUT_ADVANCE_UV; src_y += IN_ADVANCE_Y; src_u += IN_ADVANCE_UV; src_v += IN_ADVANCE_UV; GAVL_LOOP_TAIL #endif src_save_y += ctx->input_frame->strides[0]; dst_save_y += ctx->output_frame->strides[0]; in_row_counter++; if(in_row_counter == CHROMA_SUB_IN) { in_row_counter = 0; src_save_u += ctx->input_frame->strides[1]; src_save_v += ctx->input_frame->strides[2]; } #endif dst_save_u += ctx->output_frame->strides[1]; dst_save_v += ctx->output_frame->strides[2]; } #ifdef CLEANUP CLEANUP #endif } #undef FUNC_NAME // Name of the function #undef IN_TYPE // Type of the input pointers #undef OUT_TYPE // Type of the output pointers #undef IN_ADVANCE_Y // Input advance #undef IN_ADVANCE_UV // Input advance #undef OUT_ADVANCE_Y // Output advance #undef OUT_ADVANCE_UV // Output advance #undef NUM_PIXELS // The number of pixels the conversion processes at once #undef CONVERT_YUV // Makes the appropriate conversion // from to for luma and chroma #ifdef CONVERT_Y #undef CONVERT_Y #endif #undef CHROMA_SUB_IN // Vertical chroma subsampling factor #undef CHROMA_SUB_OUT // Vertical chroma subsampling factor #ifdef INIT #undef INIT #endif #ifdef CLEANUP #undef CLEANUP #endif bplaum-gavl-b9385e3/gavl/deinterlace.c000066400000000000000000000065371513252040200176460ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include #include #include #include #include #include gavl_video_deinterlacer_t * gavl_video_deinterlacer_create() { gavl_video_deinterlacer_t * ret; ret = calloc(1, sizeof(*ret)); gavl_video_options_set_defaults(&ret->opt); ret->src_field = gavl_video_frame_create(NULL); ret->dst_field = gavl_video_frame_create(NULL); return ret; } void gavl_video_deinterlacer_destroy(gavl_video_deinterlacer_t * d) { gavl_video_frame_destroy(d->src_field); gavl_video_frame_destroy(d->dst_field); if(d->scaler) gavl_video_scaler_destroy(d->scaler); free(d); } gavl_video_options_t * gavl_video_deinterlacer_get_options(gavl_video_deinterlacer_t * d) { return &d->opt; } int gavl_video_deinterlacer_init(gavl_video_deinterlacer_t * d, const gavl_video_format_t * src_format) { gavl_video_format_copy(&d->format, src_format); gavl_video_format_copy(&d->half_height_format, src_format); if((d->format.interlace_mode == GAVL_INTERLACE_MIXED) || (d->format.interlace_mode == GAVL_INTERLACE_MIXED_TOP) || (d->format.interlace_mode == GAVL_INTERLACE_MIXED_BOTTOM)) d->mixed = 1; else d->mixed = 0; d->half_height_format.image_height /= 2; d->half_height_format.frame_height /= 2; d->num_planes = gavl_pixelformat_num_planes(d->format.pixelformat); gavl_pixelformat_chroma_sub(d->format.pixelformat, &d->sub_h, &d->sub_v); switch(d->opt.deinterlace_mode) { case GAVL_DEINTERLACE_NONE: break; case GAVL_DEINTERLACE_COPY: gavl_deinterlacer_init_copy(d); break; case GAVL_DEINTERLACE_SCALE: gavl_deinterlacer_init_scale(d); break; case GAVL_DEINTERLACE_BLEND: if(!gavl_deinterlacer_init_blend(d)) return 0; break; } return 1; } void gavl_video_deinterlacer_deinterlace(gavl_video_deinterlacer_t * d, const gavl_video_frame_t * input_frame, gavl_video_frame_t * output_frame) { if(d->mixed) { if((input_frame->interlace_mode != GAVL_INTERLACE_NONE) || (d->opt.conversion_flags & GAVL_FORCE_DEINTERLACE)) d->func(d, input_frame, output_frame); else gavl_video_frame_copy(&d->format, output_frame, input_frame); } else d->func(d, input_frame, output_frame); } bplaum-gavl-b9385e3/gavl/deinterlace_blend.c000066400000000000000000000123251513252040200210020ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include #include #include #include #include static void deinterlace_blend(gavl_video_deinterlacer_t * d, const gavl_video_frame_t * input_frame, gavl_video_frame_t * output_frame) { int i, j; int width, height; uint8_t * b, *m, *t, *dst; width = d->line_width; height = d->format.image_height; for(i = 0; i < d->num_planes; i++) { if(i == 1) { width /= d->sub_h; height /= d->sub_v; } /* Top line */ t = input_frame->planes[i]; m = t; b = m + input_frame->strides[i]; dst = output_frame->planes[i]; d->blend_func(t, m, b, dst, width); /* Middle lines */ dst += output_frame->strides[i]; m += input_frame->strides[i]; b += input_frame->strides[i]; for(j = 1; j < height-1; j++) { d->blend_func(t, m, b, dst, width); t += input_frame->strides[i]; m += input_frame->strides[i]; b += input_frame->strides[i]; dst += output_frame->strides[i]; } /* Bottom line */ b -= input_frame->strides[i]; d->blend_func(t, m, b, dst, width); } } int gavl_deinterlacer_init_blend(gavl_video_deinterlacer_t * d) { /* Get functions */ gavl_video_deinterlace_blend_func_table_t tab; memset(&tab, 0, sizeof(tab)); if(d->opt.quality || (d->opt.accel_flags & GAVL_ACCEL_C)) gavl_find_deinterlacer_blend_funcs_c(&tab, &d->opt, &d->format); #if HAVE_MMX if(d->opt.accel_flags & GAVL_ACCEL_MMX) gavl_find_deinterlacer_blend_funcs_mmx(&tab, &d->opt, &d->format); #endif switch(d->format.pixelformat) { case GAVL_GRAY_8: d->line_width = d->format.image_width; d->blend_func = tab.func_8; break; case GAVL_GRAY_16: d->line_width = d->format.image_width; d->blend_func = tab.func_16; break; case GAVL_GRAY_FLOAT: d->line_width = d->format.image_width; d->blend_func = tab.func_float; break; case GAVL_GRAYA_16: d->line_width = 2 * d->format.image_width; d->blend_func = tab.func_8; break; case GAVL_GRAYA_32: d->line_width = 2 * d->format.image_width; d->blend_func = tab.func_16; break; case GAVL_GRAYA_FLOAT: d->line_width = 2 * d->format.image_width; d->blend_func = tab.func_float; break; case GAVL_RGB_15: case GAVL_BGR_15: d->line_width = d->format.image_width; d->blend_func = tab.func_packed_15; break; case GAVL_RGB_16: case GAVL_BGR_16: d->line_width = d->format.image_width; d->blend_func = tab.func_packed_16; break; case GAVL_RGB_24: case GAVL_BGR_24: d->line_width = d->format.image_width * 3; d->blend_func = tab.func_8; break; case GAVL_RGB_32: case GAVL_BGR_32: case GAVL_RGBA_32: case GAVL_YUVA_32: d->line_width = d->format.image_width * 4; d->blend_func = tab.func_8; break; case GAVL_RGB_48: d->line_width = d->format.image_width * 3; d->blend_func = tab.func_16; break; case GAVL_RGB_FLOAT: case GAVL_YUV_FLOAT: d->line_width = d->format.image_width * 3; d->blend_func = tab.func_float; break; case GAVL_RGBA_64: case GAVL_YUVA_64: d->line_width = d->format.image_width * 4; d->blend_func = tab.func_16; break; case GAVL_RGBA_FLOAT: case GAVL_YUVA_FLOAT: d->line_width = d->format.image_width * 4; d->blend_func = tab.func_float; break; case GAVL_YUY2: case GAVL_UYVY: d->line_width = d->format.image_width * 2; d->blend_func = tab.func_8; break; case GAVL_YUV_444_P_16: case GAVL_YUV_422_P_16: d->line_width = d->format.image_width; d->blend_func = tab.func_16; break; case GAVL_YUV_420_P: case GAVL_YUVJ_420_P: case GAVL_YUV_410_P: case GAVL_YUV_422_P: case GAVL_YUV_411_P: case GAVL_YUV_444_P: case GAVL_YUVJ_422_P: case GAVL_YUVJ_444_P: d->line_width = d->format.image_width; d->blend_func = tab.func_8; break; case GAVL_PIXELFORMAT_NONE: break; } if(!d->blend_func) { return 0; } d->func = deinterlace_blend; return 1; } bplaum-gavl-b9385e3/gavl/deinterlace_copy.c000066400000000000000000000044521513252040200206720ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include #include #include static void deinterlace_copy(gavl_video_deinterlacer_t * d, const gavl_video_frame_t * input_frame, gavl_video_frame_t * output_frame) { int i, j, jmax; int bytes; uint8_t * src; uint8_t * dst; int src_field = (d->opt.deinterlace_drop_mode == GAVL_DEINTERLACE_DROP_TOP) ? 1 : 0; jmax = d->format.image_height / 2; bytes = d->line_width; for(i = 0; i < d->num_planes; i++) { src = input_frame->planes[i] + src_field * input_frame->strides[i]; dst = output_frame->planes[i]; if(i == 1) { jmax /= d->sub_v; bytes /= d->sub_h; } for(j = 0; j < jmax; j++) { gavl_memcpy(dst, src, bytes); dst += output_frame->strides[i]; gavl_memcpy(dst, src, bytes); dst += output_frame->strides[i]; src += input_frame->strides[i] * 2; } } } int gavl_deinterlacer_init_copy(gavl_video_deinterlacer_t* d) { d->func = deinterlace_copy; d->line_width = gavl_pixelformat_is_planar(d->format.pixelformat) ? d->format.image_width * gavl_pixelformat_bytes_per_component(d->format.pixelformat) : d->format.image_width * gavl_pixelformat_bytes_per_pixel(d->format.pixelformat); gavl_init_memcpy(); return 1; } bplaum-gavl-b9385e3/gavl/deinterlace_scale.c000066400000000000000000000037431513252040200210110ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include static void deinterlace_scale(gavl_video_deinterlacer_t * d, const gavl_video_frame_t * in, gavl_video_frame_t * out) { gavl_video_scaler_scale(d->scaler, in, out); } int gavl_deinterlacer_init_scale(gavl_video_deinterlacer_t * d) { gavl_video_options_t * scaler_opt; gavl_video_format_t in_format; gavl_video_format_t out_format; if(!d->scaler) d->scaler = gavl_video_scaler_create(); scaler_opt = gavl_video_scaler_get_options(d->scaler); gavl_video_options_copy(scaler_opt, &d->opt); gavl_video_format_copy(&in_format, &d->format); gavl_video_format_copy(&out_format, &d->format); if(in_format.interlace_mode == GAVL_INTERLACE_NONE) in_format.interlace_mode = GAVL_INTERLACE_TOP_FIRST; out_format.interlace_mode = GAVL_INTERLACE_NONE; gavl_video_scaler_init(d->scaler, &in_format, &out_format); d->func = deinterlace_scale; return 1; } bplaum-gavl-b9385e3/gavl/dictionary.c000066400000000000000000000572211513252040200175300ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include #include #include #include #include #include // #define WATCH_MEMBER GAVL_META_NUM_CHILDREN /* Dictionary */ void gavl_dictionary_init(gavl_dictionary_t * d) { memset(d, 0, sizeof(*d)); } void gavl_dictionary_reset(gavl_dictionary_t * d) { gavl_dictionary_free(d); gavl_dictionary_init(d); } int gavl_dictionary_find(const gavl_dictionary_t * m, const char * name, int ign) { int i; if(ign) { for(i = 0; i < m->num_entries; i++) { if(!strcasecmp(m->entries[i].name, name)) return i; } } else { for(i = 0; i < m->num_entries; i++) { if(!strcmp(m->entries[i].name, name)) return i; } } return -1; } static gavl_dict_entry_t * dict_append(gavl_dictionary_t * m, const char * name) { gavl_dict_entry_t * ret; if(m->num_entries == m->entries_alloc) { m->entries_alloc += 128; m->entries = realloc(m->entries, m->entries_alloc * sizeof(*m->entries)); memset(m->entries + m->num_entries, 0, (m->entries_alloc - m->num_entries) * sizeof(*m->entries)); } ret = m->entries + m->num_entries; ret->name = gavl_strdup(name); m->num_entries++; return ret; } static void dict_free_entry(gavl_dict_entry_t * e) { if(e->name) free(e->name); gavl_value_free(&e->v); } static int dict_set(gavl_dictionary_t * d, const char * name, const gavl_value_t * val, int ign, int cpy) { int idx; gavl_dict_entry_t * e; #ifdef WATCH_MEMBER if(!strcmp(name, WATCH_MEMBER)) { if(!val) gavl_dprintf("Dictionary member %s cleared\n", WATCH_MEMBER); else { gavl_dprintf("Member %s of dictionary %s set, new value:\n", WATCH_MEMBER, gavl_dictionary_get_string(d, GAVL_META_LABEL)); gavl_value_dump(val, 2); gavl_dprintf("\n"); } } #endif /* Value is NULL: Delete entry */ if(!val) { if((idx = gavl_dictionary_find(d, name, ign)) >= 0) { dict_free_entry(d->entries + idx); if(idx < d->num_entries - 1) { memmove(d->entries + idx, d->entries + idx + 1, (d->num_entries - 1 - idx) * sizeof(*d->entries)); memset(d->entries + (d->num_entries - 1), 0, sizeof(*d->entries)); } else memset(d->entries + idx, 0, sizeof(*d->entries)); d->num_entries--; } return 1; } if((idx = gavl_dictionary_find(d, name, ign)) >= 0) { e = d->entries + idx; /* Check for equality */ if(!gavl_value_compare(&e->v, val)) return 0; // Noop /* Replace */ gavl_value_reset(&e->v); } else e = dict_append(d, name); if(cpy) gavl_value_copy(&e->v, val); else memcpy(&e->v, val, sizeof(*val)); return 1; } int gavl_dictionary_set_string(gavl_dictionary_t * d, const char * name, const char * val) { if(!val) { return gavl_dictionary_set(d, name, NULL); } else { gavl_value_t v; gavl_value_init(&v); gavl_value_set_string(&v, val); return gavl_dictionary_set_nocopy(d, name, &v); } } int gavl_dictionary_set_int(gavl_dictionary_t * d, const char * name, int val) { gavl_value_t v; gavl_value_init(&v); gavl_value_set_int(&v, val); return gavl_dictionary_set_nocopy(d, name, &v); } int gavl_dictionary_set_long(gavl_dictionary_t * d, const char * name, int64_t val) { gavl_value_t v; gavl_value_init(&v); gavl_value_set_long(&v, val); return gavl_dictionary_set_nocopy(d, name, &v); } int gavl_dictionary_set_float(gavl_dictionary_t * d, const char * name, double val) { gavl_value_t v; gavl_value_init(&v); gavl_value_set_float(&v, val); return gavl_dictionary_set_nocopy(d, name, &v); } int gavl_dictionary_set_string_nocopy(gavl_dictionary_t * d, const char * name, char * val) { gavl_value_t v; gavl_value_init(&v); gavl_value_set_string_nocopy(&v, val); return gavl_dictionary_set_nocopy(d, name, &v); } int gavl_dictionary_set_dictionary_nocopy(gavl_dictionary_t * d, const char * name, gavl_dictionary_t * dict) { gavl_value_t v; gavl_value_init(&v); gavl_value_set_dictionary_nocopy(&v, dict); return gavl_dictionary_set_nocopy(d, name, &v); } int gavl_dictionary_set_dictionary(gavl_dictionary_t * d, const char * name, const gavl_dictionary_t * dict) { gavl_dictionary_t * dst; gavl_value_t v; gavl_value_init(&v); dst = gavl_value_set_dictionary(&v); gavl_dictionary_copy(dst, dict); return gavl_dictionary_set_nocopy(d, name, &v); } int gavl_dictionary_set_array(gavl_dictionary_t * d, const char * name, const gavl_array_t * arr) { gavl_array_t * dst; gavl_value_t v; gavl_value_init(&v); dst = gavl_value_set_array(&v); gavl_array_copy(dst, arr); return gavl_dictionary_set_nocopy(d, name, &v); } void gavl_dictionary_set_binary(const gavl_dictionary_t * d, const char * name, const uint8_t * buf, int len) { gavl_buffer_t * b; gavl_value_t v; gavl_value_init(&v); b = gavl_value_set_binary(&v); gavl_buffer_alloc(b, len); memcpy(b->buf, buf, len); b->len = len; } int gavl_dictionary_set(gavl_dictionary_t * d, const char * name, const gavl_value_t * val) { return dict_set(d, name, val, 0, 1); } int gavl_dictionary_set_i(gavl_dictionary_t * d, const char * name, const gavl_value_t * val) { return dict_set(d, name, val, 1, 1); } int gavl_dictionary_set_nocopy(gavl_dictionary_t * d, const char * name, gavl_value_t * val) { int ret = dict_set(d, name, val, 0, 0); if(!ret) gavl_value_free(val); gavl_value_init(val); return ret; } int gavl_dictionary_set_nocopy_i(gavl_dictionary_t * d, const char * name, gavl_value_t * val) { int ret = dict_set(d, name, val, 1, 0); if(!ret) gavl_value_free(val); gavl_value_init(val); return ret; } const gavl_value_t * gavl_dictionary_get(const gavl_dictionary_t * d, const char * name) { int idx; if((idx = gavl_dictionary_find(d, name, 0)) >= 0) return &d->entries[idx].v; else return NULL; } gavl_value_t * gavl_dictionary_get_nc(gavl_dictionary_t * d, const char * name) { int idx; if((idx = gavl_dictionary_find(d, name, 0)) >= 0) return &d->entries[idx].v; else return NULL; } int gavl_dictionary_get_int(const gavl_dictionary_t * d, const char * name, int * ret) { const gavl_value_t * val; if(!(val = gavl_dictionary_get(d, name))) return 0; return gavl_value_get_int(val, ret); } int gavl_dictionary_get_int_i(const gavl_dictionary_t * d, const char * name, int * ret) { const gavl_value_t * val; if(!(val = gavl_dictionary_get_i(d, name))) return 0; return gavl_value_get_int(val, ret); } int gavl_dictionary_get_long(const gavl_dictionary_t * d, const char * name, int64_t * ret) { const gavl_value_t * val; if(!(val = gavl_dictionary_get(d, name))) return 0; return gavl_value_get_long(val, ret); } int gavl_dictionary_get_long_i(const gavl_dictionary_t * d, const char * name, int64_t * ret) { const gavl_value_t * val; if(!(val = gavl_dictionary_get_i(d, name))) return 0; return gavl_value_get_long(val, ret); } int gavl_dictionary_get_float(const gavl_dictionary_t * d, const char * name, double * ret) { const gavl_value_t * val; if(!(val = gavl_dictionary_get(d, name))) return 0; return gavl_value_get_float(val, ret); } const gavl_array_t * gavl_dictionary_get_array(const gavl_dictionary_t * d, const char * name) { const gavl_value_t * val; if(!(val = gavl_dictionary_get(d, name))) return NULL; return gavl_value_get_array(val); } gavl_array_t * gavl_dictionary_get_array_nc(gavl_dictionary_t * d, const char * name) { gavl_value_t * val; if(!(val = gavl_dictionary_get_nc(d, name))) return NULL; return gavl_value_get_array_nc(val); } const gavl_dictionary_t * gavl_dictionary_get_dictionary(const gavl_dictionary_t * d, const char * name) { const gavl_value_t * val; if(!(val = gavl_dictionary_get(d, name))) return NULL; return gavl_value_get_dictionary(val); } gavl_dictionary_t * gavl_dictionary_get_dictionary_nc(gavl_dictionary_t * d, const char * name) { gavl_value_t * val; if(!(val = gavl_dictionary_get_nc(d, name))) return NULL; return gavl_value_get_dictionary_nc(val); } gavl_buffer_t * gavl_dictionary_get_binary_nc(gavl_dictionary_t * d, const char * name) { gavl_value_t * val; if(!(val = gavl_dictionary_get_nc(d, name))) return NULL; return gavl_value_get_binary_nc(val); } const gavl_buffer_t * gavl_dictionary_get_binary(const gavl_dictionary_t * d, const char * name) { const gavl_value_t * val; if(!(val = gavl_dictionary_get(d, name))) return NULL; return gavl_value_get_binary(val); } const gavl_value_t * gavl_dictionary_get_i(const gavl_dictionary_t * d, const char * name) { int idx; if((idx = gavl_dictionary_find(d, name, 1)) >= 0) return &d->entries[idx].v; else return NULL; } const gavl_value_t * gavl_dictionary_get_item(const gavl_dictionary_t * d, const char * name, int item) { int idx; if((idx = gavl_dictionary_find(d, name, 0)) < 0) return NULL; return gavl_value_get_item(&d->entries[idx].v, item); } int gavl_dictionary_get_num_items(const gavl_dictionary_t * d, const char * name) { int idx; if((idx = gavl_dictionary_find(d, name, 0)) < 0) return 0; return gavl_value_get_num_items(&d->entries[idx].v); } void gavl_dictionary_delete_item(gavl_dictionary_t * d, const char * name, int item) { int idx; if((idx = gavl_dictionary_find(d, name, 0)) < 0) return; return gavl_value_delete_item(&d->entries[idx].v, item); } gavl_value_t * gavl_dictionary_get_item_nc(gavl_dictionary_t * d, const char * name, int item) { int idx; if((idx = gavl_dictionary_find(d, name, 0)) < 0) return NULL; return gavl_value_get_item_nc(&d->entries[idx].v, item); } const gavl_value_t * gavl_dictionary_get_item_i(const gavl_dictionary_t * d, const char * name, int item) { int idx; if((idx = gavl_dictionary_find(d, name, 1)) < 0) return NULL; return gavl_value_get_item(&d->entries[idx].v, item); } const char * gavl_dictionary_get_string(const gavl_dictionary_t * d, const char * name) { const gavl_value_t * v; if(!(v = gavl_dictionary_get(d, name)) || (v->type != GAVL_TYPE_STRING)) return NULL; return v->v.str; } char * gavl_dictionary_get_string_nc(gavl_dictionary_t * d, const char * name) { gavl_value_t * v; if(!(v = gavl_dictionary_get_nc(d, name)) || (v->type != GAVL_TYPE_STRING)) return NULL; return v->v.str; } const char * gavl_dictionary_get_string_i(const gavl_dictionary_t * d, const char * name) { const gavl_value_t * v; if(!(v = gavl_dictionary_get_i(d, name)) || (v->type != GAVL_TYPE_STRING)) return NULL; return v->v.str; } void gavl_dictionary_append_string_array_nocopy(gavl_dictionary_t * d, const char * key, char * str) { gavl_value_t * val; val = gavl_dictionary_get_nc(d, key); if(!val) gavl_dictionary_set_string_nocopy(d, key, str); else { gavl_value_t str_val; gavl_value_init(&str_val); gavl_value_set_string_nocopy(&str_val, str); gavl_value_append_nocopy(val, &str_val); } } void gavl_dictionary_append_string_array(gavl_dictionary_t * d, const char * key, const char * val) { gavl_dictionary_append_string_array_nocopy(d, key, gavl_strdup(val)); } const char * gavl_dictionary_get_string_array(const gavl_dictionary_t * d, const char * key, int idx) { const gavl_value_t * val; const gavl_value_t * el; if((val = gavl_dictionary_get(d, key)) && (el = gavl_value_get_item(val, idx))) return gavl_value_get_string(el); else return NULL; } int gavl_dictionary_has_string_array(const gavl_dictionary_t * d, const char * key, const char * val) { const char * str; int idx; idx = 0; while((str = gavl_dictionary_get_string_array(d, key, idx))) { if(!strcmp(str, val)) return 1; idx++; } return 0; } void gavl_dictionary_free(gavl_dictionary_t * d) { int i; if(d->entries) { for(i = 0; i < d->num_entries; i++) dict_free_entry(d->entries + i); free(d->entries); } } void gavl_dictionary_foreach(const gavl_dictionary_t * d, gavl_dictionary_foreach_func func, void * priv) { gavl_dict_entry_t * e; int i = 0; while(i < d->num_entries) { e = d->entries + i; func(priv, e->name, &e->v); i++; } } static void dict_copy_func(void * priv, const char * name, const gavl_value_t * val) { gavl_dictionary_t * dst = priv; gavl_dictionary_set(dst, name, val); } void gavl_dictionary_copy(gavl_dictionary_t * dst, const gavl_dictionary_t * src) { gavl_dictionary_foreach(src, dict_copy_func, dst); } gavl_dictionary_t * gavl_dictionary_clone(const gavl_dictionary_t * src) { gavl_dictionary_t * ret; if(!src) return NULL; ret = gavl_dictionary_create(); gavl_dictionary_copy(ret, src); return ret; } void gavl_dictionary_move(gavl_dictionary_t * dst, gavl_dictionary_t * src) { memcpy(dst, src, sizeof(*dst)); gavl_dictionary_init(src); } void gavl_dictionary_dump(const gavl_dictionary_t * m, int indent) { int len, i, j; int max_key_len = 0; gavl_diprintf(indent, "{\n"); for(i = 0; i < m->num_entries; i++) { len = strlen(m->entries[i].name); if(len > max_key_len) max_key_len = len; } for(i = 0; i < m->num_entries; i++) { len = strlen(m->entries[i].name); for(j = 0; j < indent; j++) fprintf(stderr, " "); fprintf(stderr, "%s: ", m->entries[i].name); for(j = 0; j < max_key_len - len; j++) fprintf(stderr, " "); gavl_value_dump(&m->entries[i].v, indent + 2); fprintf(stderr, "\n"); } gavl_diprintf(indent, "}"); } static void merge_func_r(void * priv, const char * name, const gavl_value_t * val) { gavl_dictionary_t * dst = priv; gavl_dictionary_set(dst, name, val); } /* Not replacing */ static void merge_func_nr(void * priv, const char * name, const gavl_value_t * val) { gavl_dictionary_t * dst = priv; if(!gavl_dictionary_get(dst, name)) gavl_dictionary_set(dst, name, val); } static void update_func_nocreate(void * priv, const char * name, const gavl_value_t * val) { gavl_dictionary_t * dst = priv; gavl_value_t * val_dst; if((val_dst = gavl_dictionary_get_nc(dst, name))) gavl_value_copy(val_dst, val); } void gavl_dictionary_merge(gavl_dictionary_t * dst, const gavl_dictionary_t * src1, const gavl_dictionary_t * src2) { /* src1 has priority */ gavl_dictionary_foreach(src1, merge_func_r, dst); /* From src2 we take only the tags, which aren't available */ gavl_dictionary_foreach(src2, merge_func_nr, dst); } void gavl_dictionary_merge2(gavl_dictionary_t * dst, const gavl_dictionary_t * src) { gavl_dictionary_foreach(src, merge_func_nr, dst); } void gavl_dictionary_update_fields(gavl_dictionary_t * dst, const gavl_dictionary_t * src) { gavl_dictionary_foreach(src, update_func_nocreate, dst); } void gavl_dictionary_update_fields_nocreate(gavl_dictionary_t * dst, const gavl_dictionary_t * src) { gavl_dictionary_foreach(src, merge_func_r, dst); } int gavl_dictionary_compare(const gavl_dictionary_t * m1, const gavl_dictionary_t * m2) { int i; const gavl_value_t * v1; const gavl_value_t * v2; #if 0 gavl_dprintf("gavl_dictionary_compare\n"); gavl_dictionary_dump(m1, 2); gavl_dictionary_dump(m2, 2); #endif /* Check if tags from m1 are present in m2 */ for(i = 0; i < m1->num_entries; i++) { v1 = &m1->entries[i].v; v2 = gavl_dictionary_get(m2, m1->entries[i].name); if(!v2 || gavl_value_compare(v1, v2)) return 1; } /* Check if tags from m2 are present in m1 */ for(i = 0; i < m2->num_entries; i++) { if(!gavl_dictionary_get(m1, m2->entries[i].name)) return 1; } #if 0 gavl_dprintf("equal\n"); #endif return 0; } void gavl_dictionary_delete_fields(gavl_dictionary_t * m, const char * fields[]) { int found; int i, j; i = 0; while(i < m->num_entries) { j = 0; found = 0; while(fields[j]) { if(!strcmp(fields[j], m->entries[i].name)) { gavl_dictionary_set(m, fields[j], NULL); found = 1; break; } j++; } if(!found) i++; } } static void dict_append_internal(gavl_dictionary_t * d, const char * name, gavl_value_t * val, const gavl_value_t * val_c, int ign) { int idx; gavl_dict_entry_t * e; if((idx = gavl_dictionary_find(d, name, ign)) >= 0) e = &d->entries[idx]; else e = dict_append(d, name); if(val) gavl_value_append_nocopy(&e->v, val); else gavl_value_append(&e->v, val_c); } void gavl_dictionary_append(gavl_dictionary_t * d, const char * name, const gavl_value_t * val) { dict_append_internal(d, name, NULL, val, 0); } void gavl_dictionary_append_i(gavl_dictionary_t * d, const char * name, const gavl_value_t * val) { dict_append_internal(d, name, NULL, val, 1); } void gavl_dictionary_append_nocopy(gavl_dictionary_t * d, const char * name, gavl_value_t * val) { dict_append_internal(d, name, val, NULL, 0); } void gavl_dictionary_append_nocopy_i(gavl_dictionary_t * d, const char * name, gavl_value_t * val) { dict_append_internal(d, name, val, NULL, 1); } gavl_dictionary_t * gavl_dictionary_get_dictionary_create(gavl_dictionary_t * d, const char * name) { gavl_value_t val; int idx; if((idx = gavl_dictionary_find(d, name, 0)) >= 0) { if(d->entries[idx].v.type == GAVL_TYPE_DICTIONARY) return d->entries[idx].v.v.dictionary; else return NULL; // Should never happen if the naming schemes are sane } gavl_value_init(&val); gavl_value_set_dictionary(&val); dict_set(d, name, &val, 0 /* ign */, 0 /* cpy */ ); idx = gavl_dictionary_find(d, name, 0); return d->entries[idx].v.v.dictionary; } gavl_array_t * gavl_dictionary_get_array_create(gavl_dictionary_t * d, const char * name) { gavl_value_t val; int idx; if((idx = gavl_dictionary_find(d, name, 0)) >= 0) { if(d->entries[idx].v.type == GAVL_TYPE_ARRAY) return d->entries[idx].v.v.array; else return NULL; // Should never happen if the naming schemes are sane } gavl_value_init(&val); gavl_value_set_array(&val); dict_set(d, name, &val, 0 /* ign */, 0 /* cpy */ ); idx = gavl_dictionary_find(d, name, 0); return d->entries[idx].v.v.array; } int gavl_dictionary_is_last(const gavl_dictionary_t * d, const char * name) { if(!strcmp(d->entries[d->num_entries-1].name, name)) return 1; else return 0; } gavl_dictionary_t * gavl_dictionary_create() { gavl_dictionary_t * ret = malloc(sizeof(*ret)); gavl_dictionary_init(ret); return ret; } void gavl_dictionary_destroy(gavl_dictionary_t * d) { gavl_dictionary_free(d); free(d); } void gavl_dictionary_set_audio_format(gavl_dictionary_t * d, const char * name, const gavl_audio_format_t * f) { gavl_audio_format_t * fmt; gavl_value_t val; gavl_value_init(&val); fmt = gavl_value_set_audio_format(&val); gavl_audio_format_copy(fmt, f); gavl_dictionary_set_nocopy(d, name, &val); } void gavl_dictionary_set_video_format(gavl_dictionary_t * d, const char * name, const gavl_video_format_t * f) { gavl_video_format_t * fmt; gavl_value_t val; gavl_value_init(&val); fmt = gavl_value_set_video_format(&val); gavl_video_format_copy(fmt, f); gavl_dictionary_set_nocopy(d, name, &val); } const gavl_audio_format_t * gavl_dictionary_get_audio_format(const gavl_dictionary_t * d, const char * name) { const gavl_value_t * v; if(!(v = gavl_dictionary_get(d, name))) return NULL; return gavl_value_get_audio_format(v); } const gavl_video_format_t * gavl_dictionary_get_video_format(const gavl_dictionary_t * d, const char * name) { const gavl_value_t * v; if(!(v = gavl_dictionary_get(d, name))) return NULL; return gavl_value_get_video_format(v); } gavl_audio_format_t * gavl_dictionary_get_audio_format_nc(gavl_dictionary_t * d, const char * name) { gavl_value_t * v; if(!(v = gavl_dictionary_get_nc(d, name))) return NULL; return gavl_value_get_audio_format_nc(v); } gavl_video_format_t * gavl_dictionary_get_video_format_nc(gavl_dictionary_t * d, const char * name) { gavl_value_t * v; if(!(v = gavl_dictionary_get_nc(d, name))) return NULL; return gavl_value_get_video_format_nc(v); } void gavl_dictionary_copy_value(gavl_dictionary_t * dst, const gavl_dictionary_t * src, const char * key) { gavl_dictionary_set(dst, key, gavl_dictionary_get(src, key)); } const gavl_dictionary_t * gavl_dictionary_get_recursive(const gavl_dictionary_t * dict, const char * path) { int i; char ** dirs; if(!strchr(path, '/')) // Shortcut return gavl_dictionary_get_dictionary(dict, path); dirs = gavl_strbreak(path, '/'); i = 0; while(dirs[i]) { if(!(dict = gavl_dictionary_get_dictionary(dict, dirs[i]))) break; i++; } gavl_strbreak_free(dirs); return dict; } gavl_dictionary_t * gavl_dictionary_get_recursive_create(gavl_dictionary_t * dict, const char * path) { int i = 0; char ** dirs = NULL; if(!strchr(path, '/')) // Shortcut return gavl_dictionary_get_dictionary_create(dict, path); else if(!strcmp(path, "/")) return dict; dirs = gavl_strbreak(path, '/'); while(dirs[i]) { if(!(dict = gavl_dictionary_get_dictionary_create(dict, dirs[i]))) break; i++; } gavl_strbreak_free(dirs); return dict; } #if 0 void gavl_dictionary_foreach_recursive() { } #endif bplaum-gavl-b9385e3/gavl/dsp.c000066400000000000000000000044761513252040200161550ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include #include #include #include #include static void init_table(gavl_dsp_context_t* ctx) { memset(&ctx->funcs, 0, sizeof(ctx->funcs)); if(ctx->quality || (ctx->accel_flags & GAVL_ACCEL_C)) gavl_dsp_init_c(&ctx->funcs, ctx->quality); #ifdef HAVE_MMX if(ctx->accel_flags & GAVL_ACCEL_MMX) gavl_dsp_init_mmx(&ctx->funcs, ctx->quality); if(ctx->accel_flags & GAVL_ACCEL_MMXEXT) gavl_dsp_init_mmxext(&ctx->funcs, ctx->quality); #endif #ifdef HAVE_SSE if(ctx->accel_flags & GAVL_ACCEL_SSE) gavl_dsp_init_sse(&ctx->funcs, ctx->quality); #endif } gavl_dsp_context_t * gavl_dsp_context_create() { gavl_dsp_context_t * ret; ret = calloc(1, sizeof(*ret)); ret->accel_flags = gavl_accel_supported(); ret->quality = GAVL_QUALITY_DEFAULT; init_table(ret); return ret; } void gavl_dsp_context_set_quality(gavl_dsp_context_t * ctx, int q) { ctx->quality = q; init_table(ctx); } void gavl_dsp_context_set_accel_flags(gavl_dsp_context_t * ctx, int flags) { ctx->accel_flags = flags; init_table(ctx); } gavl_dsp_funcs_t * gavl_dsp_context_get_funcs(gavl_dsp_context_t * ctx) { return &ctx->funcs; } void gavl_dsp_context_destroy(gavl_dsp_context_t * ctx) { free(ctx); } bplaum-gavl-b9385e3/gavl/dsputils.c000066400000000000000000000316201513252040200172250ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include #include #include #include int gavl_dsp_interpolate_video_frame(gavl_dsp_context_t * ctx, gavl_video_format_t * format, gavl_video_frame_t * src_1, gavl_video_frame_t * src_2, gavl_video_frame_t * dst, float factor) { int num_planes; int sub_v, sub_h; int width, height; uint8_t * s1, *s2, *d; int i, j; void (*interpolate)(const uint8_t * src_1, const uint8_t * src_2, uint8_t * dst, int num, float fac) = NULL; num_planes = gavl_pixelformat_num_planes(format->pixelformat); gavl_pixelformat_chroma_sub(format->pixelformat, &sub_h, &sub_v); width = format->image_width; height = format->image_height; switch(format->pixelformat) { case GAVL_RGB_15: case GAVL_BGR_15: interpolate = ctx->funcs.interpolate_rgb15; break; case GAVL_RGB_16: case GAVL_BGR_16: interpolate = ctx->funcs.interpolate_rgb16; break; case GAVL_GRAY_8: interpolate = ctx->funcs.interpolate_8; break; case GAVL_GRAYA_16: interpolate = ctx->funcs.interpolate_8; width *= 3; break; case GAVL_GRAY_16: interpolate = ctx->funcs.interpolate_16; break; case GAVL_GRAYA_32: interpolate = ctx->funcs.interpolate_16; width *= 2; break; case GAVL_RGB_24: case GAVL_BGR_24: interpolate = ctx->funcs.interpolate_8; width *= 3; break; case GAVL_RGB_32: case GAVL_BGR_32: case GAVL_RGBA_32: case GAVL_YUVA_32: interpolate = ctx->funcs.interpolate_8; width *= 4; break; case GAVL_RGB_48: interpolate = ctx->funcs.interpolate_16; width *= 3; break; case GAVL_RGBA_64: case GAVL_YUVA_64: interpolate = ctx->funcs.interpolate_16; width *= 4; break; case GAVL_GRAY_FLOAT: interpolate = ctx->funcs.interpolate_f; break; case GAVL_GRAYA_FLOAT: interpolate = ctx->funcs.interpolate_f; width *= 2; break; case GAVL_RGB_FLOAT: case GAVL_YUV_FLOAT: width *= 3; interpolate = ctx->funcs.interpolate_f; break; case GAVL_YUVA_FLOAT: case GAVL_RGBA_FLOAT: width *= 4; interpolate = ctx->funcs.interpolate_f; break; case GAVL_YUY2: case GAVL_UYVY: interpolate = ctx->funcs.interpolate_8; width *= 2; break; case GAVL_YUV_420_P: case GAVL_YUV_410_P: case GAVL_YUV_411_P: case GAVL_YUV_444_P: case GAVL_YUVJ_420_P: case GAVL_YUVJ_422_P: case GAVL_YUVJ_444_P: case GAVL_YUV_422_P: interpolate = ctx->funcs.interpolate_8; break; case GAVL_YUV_422_P_16: case GAVL_YUV_444_P_16: interpolate = ctx->funcs.interpolate_16; break; case GAVL_PIXELFORMAT_NONE: break; } if(!interpolate) return 0; for(i = 0; i < num_planes; i++) { s1 = src_1->planes[i]; s2 = src_2->planes[i]; d = dst->planes[i]; for(j = 0; j < height; j++) { interpolate(s1, s2, d, width, factor); s1 += src_1->strides[i]; s2 += src_2->strides[i]; d += dst->strides[i]; } if(!i) { width /= sub_h; height /= sub_v; } } return 1; } /* Audio frame utilities */ int gavl_dsp_audio_frame_swap_endian(gavl_dsp_context_t * ctx, gavl_audio_frame_t * frame, const gavl_audio_format_t * format) { int bytes_per_sample, len, i; void (*do_swap)(void * data, int len) = NULL; bytes_per_sample = gavl_bytes_per_sample(format->sample_format); switch(bytes_per_sample) { case 1: return 1; break; case 2: do_swap = ctx->funcs.bswap_16; break; case 4: do_swap = ctx->funcs.bswap_32; break; case 8: do_swap = ctx->funcs.bswap_64; break; default: return 0; } if(!do_swap) return 0; switch(format->interleave_mode) { case GAVL_INTERLEAVE_NONE: len = frame->valid_samples; for(i = 0; i < format->num_channels; i++) do_swap(frame->channels.u_8[i], len); break; case GAVL_INTERLEAVE_2: len = frame->valid_samples * 2; for(i = 0; i < format->num_channels/2; i++) do_swap(frame->channels.u_8[2*i], len); if(format->num_channels % 2) { len = frame->valid_samples; do_swap(frame->channels.u_8[format->num_channels-1], len); } break; case GAVL_INTERLEAVE_ALL: len = frame->valid_samples * format->num_channels; do_swap(frame->samples.u_8, len); break; } return 1; } int gavl_dsp_video_frame_swap_endian(gavl_dsp_context_t * ctx, gavl_video_frame_t * frame, const gavl_video_format_t * format) { void (*do_swap)(void * data, int len) = NULL; int i, j, num_planes; uint8_t * src; int sub_h = 1, sub_v = 1; int height = format->image_height; int len = format->image_width; num_planes = 1; gavl_pixelformat_chroma_sub(format->pixelformat, &sub_h, &sub_v); switch(format->pixelformat) { case GAVL_RGB_15: case GAVL_BGR_15: case GAVL_RGB_16: case GAVL_BGR_16: case GAVL_GRAY_16: do_swap = ctx->funcs.bswap_16; break; case GAVL_GRAY_FLOAT: #if SIZEOF_FLOAT == 4 do_swap = ctx->funcs.bswap_32; #elif SIZEOF_FLOAT == 8 do_swap = ctx->funcs.bswap_64; #endif break; case GAVL_GRAYA_FLOAT: len *= 2; #if SIZEOF_FLOAT == 4 do_swap = ctx->funcs.bswap_32; #elif SIZEOF_FLOAT == 8 do_swap = ctx->funcs.bswap_64; #endif break; case GAVL_GRAYA_32: len *= 2; do_swap = ctx->funcs.bswap_16; break; case GAVL_RGB_48: len *= 3; do_swap = ctx->funcs.bswap_16; break; case GAVL_RGBA_64: case GAVL_YUVA_64: len *= 4; do_swap = ctx->funcs.bswap_32; break; case GAVL_RGB_FLOAT: case GAVL_YUV_FLOAT: len *= 3; #if SIZEOF_FLOAT == 4 do_swap = ctx->funcs.bswap_32; #elif SIZEOF_FLOAT == 8 do_swap = ctx->funcs.bswap_64; #endif break; case GAVL_RGBA_FLOAT: case GAVL_YUVA_FLOAT: len *= 4; #if SIZEOF_FLOAT == 4 do_swap = ctx->funcs.bswap_32; #elif SIZEOF_FLOAT == 8 do_swap = ctx->funcs.bswap_64; #endif break; case GAVL_YUV_422_P_16: do_swap = ctx->funcs.bswap_16; num_planes = 3; break; case GAVL_YUV_444_P_16: do_swap = ctx->funcs.bswap_16; num_planes = 3; break; case GAVL_YUY2: case GAVL_UYVY: case GAVL_RGB_24: case GAVL_BGR_24: case GAVL_YUV_420_P: case GAVL_YUV_410_P: case GAVL_YUV_422_P: case GAVL_YUV_411_P: case GAVL_YUV_444_P: case GAVL_YUVJ_420_P: case GAVL_YUVJ_422_P: case GAVL_YUVJ_444_P: case GAVL_PIXELFORMAT_NONE: case GAVL_GRAY_8: case GAVL_GRAYA_16: case GAVL_RGB_32: case GAVL_BGR_32: case GAVL_RGBA_32: case GAVL_YUVA_32: return 1; break; } if(!do_swap) return 0; for(i = 0; i < num_planes; i++) { if(i == 1) { height /= sub_v; len /= sub_h; } src = frame->planes[i]; for(j = 0; j < height; j++) { do_swap(src, len); src += frame->strides[i]; } } return 1; } void gavl_dsp_video_frame_shift_bits(gavl_dsp_context_t * ctx, gavl_video_frame_t * frame, const gavl_video_format_t * format, int bits) { int i, j; int sub_h = 1, sub_v = 1; int len; int height; int channels; uint8_t * src; void (*shift_func)(void *, int, int); int planes; if(!bits) return; planes = gavl_pixelformat_num_planes(format->pixelformat); if(planes > 1) { if(gavl_pixelformat_bytes_per_component(format->pixelformat) != 2) return; channels = 1; } else { channels = gavl_pixelformat_num_channels(format->pixelformat); if(gavl_pixelformat_bytes_per_pixel(format->pixelformat) != 2*channels) return; gavl_pixelformat_chroma_sub(format->pixelformat, &sub_h, &sub_v); } if(bits < 0) { shift_func = ctx->funcs.shift_down_16; bits = -bits; } else shift_func = ctx->funcs.shift_up_16; len = format->image_width * channels; height = format->image_height; for(i = 0; i < planes; i++) { if(i == 1) { height /= sub_v; len /= sub_h; } src = frame->planes[i]; for(j = 0; j < height; j++) { shift_func(src, len, bits); src += frame->strides[i]; } } } void gavl_dsp_video_frame_shift_bits_copy(gavl_dsp_context_t * ctx, gavl_video_frame_t * dst, const gavl_video_frame_t * src, const gavl_video_format_t * format, int bits) { int i, j; int sub_h = 1, sub_v = 1; int len; int height; int channels; const uint8_t * src_ptr; uint8_t * dst_ptr; void (*shift_func)(void *, const void *, int, int); int planes; if(!bits) return; planes = gavl_pixelformat_num_planes(format->pixelformat); if(planes > 1) { if(gavl_pixelformat_bytes_per_component(format->pixelformat) != 2) return; channels = 1; } else { channels = gavl_pixelformat_num_channels(format->pixelformat); if(gavl_pixelformat_bytes_per_pixel(format->pixelformat) != 2*channels) return; gavl_pixelformat_chroma_sub(format->pixelformat, &sub_h, &sub_v); } if(bits < 0) { shift_func = ctx->funcs.shift_down_copy_16; bits = -bits; } else shift_func = ctx->funcs.shift_up_copy_16; len = format->image_width * channels; height = format->image_height; for(i = 0; i < planes; i++) { if(i == 1) { height /= sub_v; len /= sub_h; } src_ptr = src->planes[i]; dst_ptr = dst->planes[i]; for(j = 0; j < height; j++) { shift_func(dst_ptr, src_ptr, len, bits); src_ptr += src->strides[i]; dst_ptr += dst->strides[i]; } } } void gavl_dsp_video_frame_shuffle_4(gavl_dsp_context_t * ctx, gavl_video_frame_t * frame, const gavl_video_format_t * format, int * src_indices) { // gavl_dsp_video_frame_shuffle_4_copy(ctx, frame, frame, format, src_indices); fprintf(stderr, "gavl_dsp_video_frame_shuffle_4 Not implemented\n"); } void gavl_dsp_video_frame_shuffle_4_copy(gavl_dsp_context_t * ctx, gavl_video_frame_t * dst, const gavl_video_frame_t * src, const gavl_video_format_t * format, int * src_indices) { const uint8_t * src_ptr; uint8_t * dst_ptr; int i; int bytes_per_pixel; int istart, iend; istart = 0; iend = format->image_height; if(src->src_rect.h > 0) { istart = src->src_rect.y; iend = src->src_rect.y + src->src_rect.h; } if(!gavl_pixelformat_is_rgb(format->pixelformat) && !gavl_pixelformat_is_yuv(format->pixelformat)) return; dst_ptr = dst->planes[0] + dst->strides[0] * istart; src_ptr = src->planes[0] + src->strides[0] * istart; bytes_per_pixel = gavl_pixelformat_bytes_per_pixel(format->pixelformat); switch(bytes_per_pixel) { case 4: for(i = istart; i < iend; i++) { ctx->funcs.shuffle_8_4(dst_ptr, src_ptr, format->image_width, src_indices); dst_ptr += dst->strides[0]; src_ptr += src->strides[0]; } break; case 8: for(i = istart; i < iend; i++) { ctx->funcs.shuffle_16_4(dst_ptr, src_ptr, format->image_width, src_indices); dst_ptr += dst->strides[0]; src_ptr += src->strides[0]; } break; } } bplaum-gavl-b9385e3/gavl/edl.c000066400000000000000000000377041513252040200161330ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include #include #include #include #include #include #include #include gavl_dictionary_t * gavl_edl_create(gavl_dictionary_t * parent) { return gavl_dictionary_get_dictionary_create(parent, GAVL_META_EDL); } gavl_dictionary_t * gavl_edl_add_segment(gavl_dictionary_t * stream) { gavl_array_t * segs; gavl_value_t val; gavl_dictionary_t * ret; gavl_value_init(&val); if(!(segs = gavl_dictionary_get_array_nc(stream, GAVL_EDL_SEGMENTS))) { segs = gavl_value_set_array(&val); gavl_dictionary_set_nocopy(stream, GAVL_EDL_SEGMENTS, &val); } ret = gavl_value_set_dictionary(&val); gavl_array_splice_val_nocopy(segs, segs->num_entries, 0, &val); return ret; } void gavl_edl_segment_set_url(gavl_edl_segment_t * seg, const char * url) { gavl_dictionary_set_string(seg, GAVL_META_URI, url); } void gavl_edl_segment_set_speed(gavl_edl_segment_t * seg, int num, int den) { if((num != 1) || (den != 1)) { gavl_dictionary_set_int(seg, GAVL_EDL_SPEED_NUM, num); gavl_dictionary_set_int(seg, GAVL_EDL_SPEED_DEN, den); } } void gavl_edl_segment_set(gavl_edl_segment_t * seg, int track, int stream, int timescale, int64_t src_time, int64_t dst_time, int64_t dst_duration) { gavl_dictionary_set_int(seg, GAVL_EDL_TRACK_IDX, track); gavl_dictionary_set_int(seg, GAVL_EDL_STREAM_IDX, stream); gavl_dictionary_set_int(seg, GAVL_META_STREAM_SAMPLE_TIMESCALE, timescale); gavl_dictionary_set_long(seg, GAVL_EDL_SRC_TIME, src_time); gavl_dictionary_set_long(seg, GAVL_EDL_DST_TIME, dst_time); gavl_dictionary_set_long(seg, GAVL_EDL_DST_DUR, dst_duration); } const char * gavl_edl_segment_get_url(const gavl_edl_segment_t * seg) { return gavl_dictionary_get_string(seg, GAVL_META_URI); } void gavl_edl_segment_get_speed(const gavl_edl_segment_t * seg, int * num, int * den) { if(!gavl_dictionary_get_int(seg, GAVL_EDL_SPEED_NUM, num)) *num = 1; if(!gavl_dictionary_get_int(seg, GAVL_EDL_SPEED_DEN, den)) *den = 1; } int gavl_edl_segment_get(const gavl_edl_segment_t * seg, int * track_p, int * stream_p, int * timescale_p, int64_t * src_time_p, int64_t * dst_time_p, int64_t * dst_duration_p) { int track = -1; int stream = -1; int timescale = -1; int64_t src_time = GAVL_TIME_UNDEFINED; int64_t dst_time = GAVL_TIME_UNDEFINED; int64_t dst_duration = -1; if(!(gavl_dictionary_get_int(seg, GAVL_EDL_TRACK_IDX, &track)) || !(gavl_dictionary_get_int(seg, GAVL_EDL_STREAM_IDX, &stream)) || !(gavl_dictionary_get_int(seg, GAVL_META_STREAM_SAMPLE_TIMESCALE, ×cale)) || !(gavl_dictionary_get_long(seg, GAVL_EDL_SRC_TIME, &src_time)) || !(gavl_dictionary_get_long(seg, GAVL_EDL_DST_TIME, &dst_time)) || !(gavl_dictionary_get_long(seg, GAVL_EDL_DST_DUR, &dst_duration))) return 0; /* Santiy checks */ if((track < 0) || (stream < 0) || (timescale <= 0) || (src_time == GAVL_TIME_UNDEFINED) || (dst_time == GAVL_TIME_UNDEFINED) || (dst_duration <= 0)) return 0; if(track_p) *track_p = track; if(stream_p) *stream_p = stream; if(timescale_p) *timescale_p = timescale; if(src_time_p) *src_time_p = src_time; if(dst_time_p) *dst_time_p = dst_time; if(dst_duration_p) *dst_duration_p = dst_duration; return 1; } typedef struct { const char * uri; gavl_array_t * streams; gavl_array_t * tracks; gavl_array_t * segments; gavl_dictionary_t * track; gavl_dictionary_t * stream; int error; } finalize_t; static void finalize_segment(void * priv, int idx, const gavl_value_t * v_c) { gavl_value_t * v; gavl_dictionary_t * seg; finalize_t * f = priv; v = gavl_array_get_nc(f->segments, idx); seg = gavl_value_get_dictionary_nc(v); if(!gavl_edl_segment_get(seg, NULL, NULL, NULL, NULL, NULL, NULL)) { f->error = 1; return; } if(!gavl_dictionary_get_string(seg, GAVL_META_URI) && f->uri) { gavl_dictionary_set_string(seg, GAVL_META_URI, f->uri); } } static void finalize_stream(void * priv, int idx, const gavl_value_t * v_c) { int track; int stream; int timescale; int64_t src_time; int64_t dst_time; int64_t dst_duration; gavl_value_t * v; // gavl_array_t * arr; gavl_dictionary_t * seg; gavl_stream_stats_t stats; finalize_t * finalize = priv; v = gavl_array_get_nc(finalize->streams, idx); if(!(finalize->stream = gavl_value_get_dictionary_nc(v)) || !(finalize->segments = gavl_dictionary_get_array_nc(finalize->stream, GAVL_EDL_SEGMENTS))) { finalize->error = 1; return; } gavl_array_foreach(finalize->segments, finalize_segment, finalize); if(finalize->error) return; gavl_stream_stats_init(&stats); if(!(v = gavl_array_get_nc(finalize->segments, 0)) || !(seg = gavl_value_get_dictionary_nc(v)) || !gavl_edl_segment_get(seg, &track, &stream, ×cale, &src_time, &dst_time, &dst_duration)) { finalize->error = 1; return; } stats.pts_start = dst_time; if(!(v = gavl_array_get_nc(finalize->segments, finalize->segments->num_entries-1)) || !(seg = gavl_value_get_dictionary_nc(v)) || !gavl_edl_segment_get(seg, &track, &stream, ×cale, &src_time, &dst_time, &dst_duration)) { finalize->error = 1; return; } stats.pts_end = dst_time + dst_duration; gavl_stream_stats_apply_generic(&stats, NULL, gavl_stream_get_metadata_nc(finalize->stream)); } static void finalize_track_internal(gavl_dictionary_t * t, finalize_t * f) { gavl_dictionary_t * m; if((f->streams = gavl_dictionary_get_array_nc(t, GAVL_META_STREAMS))) gavl_array_foreach(f->streams, finalize_stream, f); if(f->error) return; if((m = gavl_track_get_metadata_nc(t))) gavl_dictionary_set_long(m, GAVL_META_APPROX_DURATION, 0); gavl_track_finalize(t); // gavl_track_compute_duration(t); } static void finalize_track(void * priv, int idx, const gavl_value_t * v_c) { gavl_value_t * v; gavl_array_t * arr; gavl_dictionary_t * t; finalize_t * finalize = priv; arr = finalize->tracks; v = gavl_array_get_nc(arr, idx); if(!(t = gavl_value_get_dictionary_nc(v))) { finalize->error = 1; return; } finalize_track_internal(t, finalize); } int gavl_edl_finalize(gavl_dictionary_t * edl) { finalize_t finalize; memset(&finalize, 0, sizeof(finalize)); finalize.uri = gavl_dictionary_get_string(edl, GAVL_META_URI); finalize.tracks = gavl_dictionary_get_array_nc(edl, GAVL_META_CHILDREN); if(finalize.tracks) gavl_array_foreach(finalize.tracks, finalize_track, &finalize); else finalize.error = 1; /* We don't need the global URI anymore */ gavl_dictionary_set(edl, GAVL_META_URI, NULL); gavl_track_update_children(edl); if(finalize.error) return 0; else return 1; } static void add_stream_to_timeline(gavl_dictionary_t * edl_stream, const gavl_dictionary_t * stream, int idx, gavl_time_t edl_duration, gavl_time_t track_duration, const char * uri) { int timescale_track = 0; int timescale_edl = 0; int64_t pts_start = 0; int64_t pts_end; const gavl_dictionary_t * m_track; const gavl_dictionary_t * m_edl; gavl_dictionary_t * seg = gavl_edl_add_segment(edl_stream); m_track = gavl_stream_get_metadata(stream); m_edl = gavl_stream_get_metadata(edl_stream); gavl_dictionary_get_int(m_track, GAVL_META_STREAM_SAMPLE_TIMESCALE, ×cale_track); gavl_dictionary_get_int(m_edl, GAVL_META_STREAM_SAMPLE_TIMESCALE, ×cale_edl); if(!gavl_stream_get_pts_range(stream, &pts_start, &pts_end)) { pts_start = 0; pts_end = gavl_time_scale(timescale_track, track_duration); } /* void gavl_edl_segment_set(gavl_edl_segment_t * seg, int track, int stream, int timescale, int64_t src_time, int64_t dst_time, int64_t dst_duration) */ gavl_edl_segment_set(seg, 0 /* track */, idx /* stream */, timescale_track, pts_start, /* src_time */ gavl_time_scale(timescale_edl, edl_duration) + gavl_time_rescale(timescale_track, timescale_edl, pts_start), // dst_time gavl_time_rescale(timescale_track, timescale_edl, pts_end - pts_start) // dst_duration ); gavl_edl_segment_set_url(seg, uri); } static int add_streams_to_timeline(gavl_dictionary_t * edl_track, const gavl_dictionary_t * track, gavl_stream_type_t type, int64_t edl_duration) { int ret = 0; int i, num; gavl_dictionary_t * s_edl; // Stream (edl, dst) const gavl_dictionary_t * s_track; // Stream (track, src) const char * location = NULL; const gavl_dictionary_t * m; gavl_time_t track_duration; m = gavl_track_get_metadata(track); if(!gavl_metadata_get_src(m, GAVL_META_SRC, 0, NULL, &location)) return 0; if(!gavl_dictionary_get_long(m, GAVL_META_APPROX_DURATION, &track_duration)) return 0; num = gavl_track_get_num_streams(edl_track, type); for(i = 0; i < num; i++) { s_edl = gavl_track_get_stream_nc(edl_track, type, i); if(!(s_track = gavl_track_get_stream(track, type, i))) break; add_stream_to_timeline(s_edl, s_track, i, edl_duration, track_duration, location); ret++; } return ret; } static void add_external_streams_to_timeline(gavl_dictionary_t * edl_track, const gavl_dictionary_t * track, int64_t edl_duration, int start_idx) { int i, num; gavl_dictionary_t * s_edl; // Stream (edl, dst) const gavl_dictionary_t * s_track; // Stream (track, src) const char * location = NULL; const gavl_dictionary_t * m; const gavl_dictionary_t * sm; gavl_time_t track_duration; m = gavl_track_get_metadata(track); if(!gavl_dictionary_get_long(m, GAVL_META_APPROX_DURATION, &track_duration)) return; num = gavl_track_get_num_external_streams(track); for(i = 0; i < num; i++) { s_edl = gavl_track_get_stream_all_nc(edl_track, i + start_idx); if(!(s_track = gavl_track_get_external_stream(track, i)) || !(sm = gavl_stream_get_metadata(s_track)) || !gavl_metadata_get_src(sm, GAVL_META_SRC, 0, NULL, &location)) return; add_stream_to_timeline(s_edl, s_track, 0, edl_duration, track_duration, location); } } static const char * clear_metadata_fields[] = { GAVL_META_SRC, GAVL_META_LABEL, GAVL_META_SOFTWARE, NULL }; static const char * clear_stream_metadata_fields[] = { GAVL_META_LABEL, GAVL_META_STREAM_PACKET_TIMESCALE, GAVL_META_FORMAT, GAVL_META_BITRATE, GAVL_META_AVG_BITRATE, GAVL_META_SOFTWARE, GAVL_META_SRC, NULL }; static void stream_clear_foreach_func(void * priv, int idx, const gavl_value_t * val) { gavl_dictionary_t * s; gavl_dictionary_t * sm; gavl_array_t * arr = priv; if((s = gavl_value_get_dictionary_nc(&arr->entries[idx])) && (sm = gavl_stream_get_metadata_nc(s))) { gavl_dictionary_delete_fields(sm, clear_stream_metadata_fields); } } static void add_stream_func(void * priv, int idx, const gavl_value_t * val) { const gavl_dictionary_t * src; gavl_stream_type_t type; gavl_dictionary_t * track = priv; if((src = gavl_value_get_dictionary(val))) { gavl_dictionary_t * dst; type = gavl_stream_get_type(src); switch(type) { case GAVL_STREAM_AUDIO: case GAVL_STREAM_VIDEO: case GAVL_STREAM_TEXT: case GAVL_STREAM_OVERLAY: dst = gavl_track_append_stream(track, gavl_stream_get_type(src)); gavl_dictionary_reset(dst); gavl_dictionary_copy(dst, src); break; case GAVL_STREAM_MSG: case GAVL_STREAM_NONE: break; } } } void gavl_edl_append_track_to_timeline(gavl_dictionary_t * edl_track, const gavl_dictionary_t * track, int init) { gavl_time_t edl_duration; const gavl_dictionary_t * m; gavl_dictionary_t * edl_m; const char * klass; finalize_t f; int idx; memset(&f, 0, sizeof(f)); if(!(m = gavl_track_get_metadata(track))) return; if(init) { const gavl_array_t * track_streams; gavl_array_t * edl_streams; edl_duration = 0; gavl_dictionary_reset(edl_track); // gavl_dictionary_copy(edl_track, track); /* Clear metadata (remove src, clear durations etc) */ edl_m = gavl_dictionary_get_dictionary_create(edl_track, GAVL_META_METADATA); gavl_dictionary_copy(edl_m, m); if((klass = gavl_dictionary_get_string(edl_m, GAVL_META_CLASS))) { if(!strcmp(klass, GAVL_META_CLASS_MOVIE_PART)) gavl_dictionary_set_string(edl_m, GAVL_META_CLASS, GAVL_META_CLASS_MOVIE); } gavl_dictionary_delete_fields(edl_m, clear_metadata_fields); gavl_dictionary_set_long(edl_m, GAVL_META_APPROX_DURATION, 0); /* Copy internal streams */ if((track_streams = gavl_dictionary_get_array(track, GAVL_META_STREAMS))) { gavl_array_foreach(track_streams, add_stream_func, edl_track); } /* Copy external streams */ if((track_streams = gavl_dictionary_get_array(track, GAVL_META_STREAMS_EXT))) { // gavl_dictionary_set_array(edl_track, GAVL_META_STREAMS, arr); gavl_array_foreach(track_streams, add_stream_func, edl_track); } edl_streams = gavl_dictionary_get_array_nc(edl_track, GAVL_META_STREAMS); gavl_array_foreach(edl_streams, stream_clear_foreach_func, edl_streams); } else { edl_m = gavl_dictionary_get_dictionary_nc(edl_track, GAVL_META_METADATA); gavl_dictionary_get_long(edl_m, GAVL_META_APPROX_DURATION, &edl_duration); } idx = add_streams_to_timeline(edl_track, track, GAVL_STREAM_AUDIO, edl_duration); idx += add_streams_to_timeline(edl_track, track, GAVL_STREAM_VIDEO, edl_duration); idx += add_streams_to_timeline(edl_track, track, GAVL_STREAM_TEXT, edl_duration); idx += add_streams_to_timeline(edl_track, track, GAVL_STREAM_OVERLAY, edl_duration); add_external_streams_to_timeline(edl_track, track, edl_duration, idx); finalize_track_internal(edl_track, &f); } bplaum-gavl-b9385e3/gavl/framerate.c000066400000000000000000000100731513252040200173230ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include struct gavl_framerate_converter_s { gavl_time_t input_time_1; gavl_time_t input_time_2; gavl_time_t next_output_time; gavl_video_frame_t * input_frame_1; gavl_video_frame_t * input_frame_2; double output_framerate; int64_t output_frame_count; int do_resync; }; gavl_framerate_converter_t * gavl_framerate_converter_create() { gavl_framerate_converter_t * ret; ret = calloc(1, sizeof(*ret)); return ret; } void gavl_framerate_converter_init(gavl_framerate_converter_t * cnv, double output_framerate) { cnv->output_framerate = output_framerate; cnv->output_frame_count = 0; cnv->do_resync = 1; } void gavl_framerate_converter_reset(gavl_framerate_converter_t * cnv) { cnv->input_frame_1 = NULL; cnv->input_frame_2 = NULL; cnv->do_resync = 1; } /* * Convert framerate: * input are 2 subsequent frames with valid timestamps * output is one of the input frames with corrected timestamps * * The timestamps of the input frames should be considered * undefined afterwards */ /* #define GAVL_FRAMERATE_INPUT_1_DONE (1<<0) #define GAVL_FRAMERATE_INPUT_2_DONE (1<<1) #define GAVL_FRAMERATE_OUTPUT_DONE (1<<2) */ int gavl_framerate_convert(gavl_framerate_converter_t * cnv, gavl_video_frame_t * input_frame_1, gavl_video_frame_t * input_frame_2, gavl_video_frame_t ** output_frame) { int ret = 0; /* Correct times */ if(cnv->input_frame_1 != input_frame_1) { cnv->input_frame_1 = input_frame_1; cnv->input_time_1 = cnv->input_frame_1->time; } if(cnv->input_frame_2 != input_frame_2) { cnv->input_frame_2 = input_frame_2; cnv->input_time_2 = cnv->input_frame_2->time; } if(cnv->do_resync) { cnv->output_frame_count = gavl_time_to_frames(cnv->output_framerate, cnv->input_time_1); cnv->next_output_time = gavl_frames_to_time(cnv->output_framerate, cnv->output_frame_count); cnv->do_resync = 0; } if(cnv->next_output_time > cnv->input_time_2) { ret |= GAVL_FRAMERATE_INPUT_DONE; } /* Ill conditioned case: Repeat first frame, until our time reaches timestamp of first first frame */ else if(cnv->next_output_time < cnv->input_time_1) { *output_frame = input_frame_1; (*output_frame)->time = cnv->next_output_time; ret |= GAVL_FRAMERATE_OUTPUT_DONE; } /* Our time is between the input time, take the nearest frame */ else { if(cnv->next_output_time - cnv->input_time_1 < cnv->input_time_2 - cnv->next_output_time) *output_frame = input_frame_1; else *output_frame = input_frame_1; (*output_frame)->time = cnv->next_output_time; ret |= GAVL_FRAMERATE_OUTPUT_DONE; } cnv->output_frame_count++; cnv->next_output_time = gavl_frames_to_time(cnv->output_framerate, cnv->output_frame_count); return ret; } void gavl_framerate_converter_destroy(gavl_framerate_converter_t * cnv) { free(cnv); } bplaum-gavl-b9385e3/gavl/frametable.c000066400000000000000000000405061513252040200174630ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include #include gavl_frame_table_t * gavl_frame_table_create() { gavl_frame_table_t * ret; ret = calloc(1, sizeof(*ret)); return ret; } void gavl_frame_table_destroy(gavl_frame_table_t * tab) { if(tab->entries) free(tab->entries); if(tab->timecodes) free(tab->timecodes); free(tab); } void gavl_frame_table_append_entry(gavl_frame_table_t * t, int64_t duration) { if(t->num_entries && (t->entries[t->num_entries-1].duration == duration)) { t->entries[t->num_entries-1].num_frames++; return; } if(t->entries_alloc <= t->num_entries) { t->entries_alloc = t->num_entries + 128; t->entries = realloc(t->entries, t->entries_alloc * sizeof(*t->entries)); memset(t->entries + t->num_entries, 0, (t->entries_alloc-t->num_entries) * sizeof(*t->entries)); } t->entries[t->num_entries].duration = duration; t->entries[t->num_entries].num_frames = 1; t->num_entries++; } void gavl_frame_table_append_timecode(gavl_frame_table_t * t, int64_t pts, gavl_timecode_t tc) { if(t->num_timecodes + 1 > t->timecodes_alloc) { t->timecodes_alloc += 128; t->timecodes = realloc(t->timecodes, t->timecodes_alloc * sizeof(*t->timecodes)); } t->timecodes[t->num_timecodes].pts = pts; t->timecodes[t->num_timecodes].tc = tc; t->num_timecodes++; } int64_t gavl_frame_table_frame_to_time(const gavl_frame_table_t * t, int64_t frame, int * duration) { int i = 0; int64_t ret = t->offset; int counter = 0; while(1) { if(i >= t->num_entries) { if(duration) *duration = 0; return GAVL_TIME_UNDEFINED; } else if(frame - counter < t->entries[i].num_frames) { if(duration) *duration = t->entries[i].duration; ret += (frame-counter)*t->entries[i].duration; break; } counter += t->entries[i].num_frames; ret += t->entries[i].num_frames * t->entries[i].duration; i++; } return ret; } int64_t gavl_frame_table_time_to_frame(const gavl_frame_table_t * t, int64_t time, int64_t * start_time) { int i = 0; int64_t ret = 0; int64_t counter = t->offset; int64_t off; if(time < counter) return -1; while(1) { if(i >= t->num_entries) { if(start_time) *start_time = GAVL_TIME_UNDEFINED; return -1; } else if(time - counter < t->entries[i].num_frames*t->entries[i].duration) { off = (time - counter) / t->entries[i].duration; ret += off; if(start_time) *start_time = counter + off * t->entries[i].duration; break; } ret += t->entries[i].num_frames; counter += t->entries[i].num_frames * t->entries[i].duration; i++; } return ret; } /* time <-> timecode */ static gavl_timecode_t get_timecode(const gavl_frame_table_t * t, int64_t frame, int64_t frame_time, int64_t * start_time, const gavl_timecode_format_t * fmt) { gavl_timecode_t ret; if(frame < 0) frame = gavl_frame_table_time_to_frame(t, frame_time, start_time); else { frame_time = gavl_frame_table_frame_to_time(t, frame, NULL); if(start_time) *start_time = frame_time; } if(!t->num_timecodes) { /* We assume the first timecode to be 00:00:00:00 */ ret = gavl_timecode_from_framecount(fmt, frame); } else { int pos; int64_t tc_frame; int64_t cnt; /* Get the last table entry */ pos = t->num_timecodes - 1; while(1) { if(t->timecodes[pos].pts <= frame_time) break; pos--; if(pos < 0) break; } if(pos < 0) { /* Count backwards */ tc_frame = gavl_frame_table_time_to_frame(t, t->timecodes[0].pts, NULL); cnt = gavl_timecode_to_framecount(fmt, t->timecodes[0].tc); cnt -= (tc_frame - frame); ret = gavl_timecode_from_framecount(fmt, cnt); } else { /* Count forward */ tc_frame = gavl_frame_table_time_to_frame(t, t->timecodes[pos].pts, NULL); cnt = gavl_timecode_to_framecount(fmt, t->timecodes[0].tc); cnt += (frame - tc_frame); ret = gavl_timecode_from_framecount(fmt, cnt); } } return ret; } /** \brief Convert a timestamp to a timecode * \param t A frame table * \param time Time in stream timescale * \param start_time If non NULL, returns the start time of that frame * \param fmt Timecode format * \returns The interpolated timecode of that frame or GAVL_TIMECODE_UNDEFINED if such frame doesn't exist. * * Since 1.1.2. */ gavl_timecode_t gavl_frame_table_time_to_timecode(const gavl_frame_table_t * t, int64_t time, int64_t * start_time, const gavl_timecode_format_t * fmt) { return get_timecode(t, -1, time, start_time, fmt); } gavl_timecode_t gavl_frame_table_frame_to_timecode(const gavl_frame_table_t * t, int64_t frame, int64_t * start_time, const gavl_timecode_format_t * fmt) { return get_timecode(t, frame, GAVL_TIME_UNDEFINED, start_time, fmt); } /** \brief Convert a timecode to a timestamp * \param t A frame table * \param tc Timecode * \param fmt Timecode format * \returns The pts corresponding to that timecode or GAVL_TIME_UNDEFINED if such frame doesn't exist. * * Since 1.1.2. */ int64_t gavl_frame_table_timecode_to_time(const gavl_frame_table_t * t, gavl_timecode_t tc, const gavl_timecode_format_t * fmt) { int64_t ret; int64_t cnt; int64_t cnt1; int64_t frame; int pos = t->num_timecodes-1; cnt = gavl_timecode_to_framecount(fmt, tc); if(!t->num_timecodes) { return gavl_frame_table_frame_to_time(t, cnt, NULL); } while(1) { cnt1 = gavl_timecode_to_framecount(fmt, t->timecodes[pos].tc); if(cnt1 <= cnt) break; pos--; if(pos < 0) break; } if(pos < 0) { /* Count backwards */ frame = gavl_frame_table_time_to_frame(t, t->timecodes[0].pts, NULL); frame -= cnt1 - cnt; if(frame < 0) ret = GAVL_TIME_UNDEFINED; else ret = gavl_frame_table_frame_to_time(t, frame, NULL); } else { /* Count forward */ frame = gavl_frame_table_time_to_frame(t, t->timecodes[pos].pts, NULL); frame += cnt - cnt1; ret = gavl_frame_table_frame_to_time(t, frame, NULL); } return ret; } int64_t gavl_frame_table_num_frames(const gavl_frame_table_t * t) { int i; int64_t ret = 0; for(i = 0; i < t->num_entries; i++) { ret += t->entries[i].num_frames; } return ret; } int64_t gavl_frame_table_duration(const gavl_frame_table_t * t) { int i; int64_t ret = 0; for(i = 0; i < t->num_entries; i++) { ret += t->entries[i].num_frames * t->entries[i].duration; } return ret; } int64_t gavl_frame_table_end_time(const gavl_frame_table_t * t) { return gavl_frame_table_duration(t) + t->offset; } void gavl_frame_table_dump(const gavl_frame_table_t * t) { int i; char str[GAVL_TIMECODE_STRING_LEN]; fprintf(stderr, "Entries: %"PRId64", total frames: %"PRId64", offset: %"PRId64"\n", t->num_entries, gavl_frame_table_num_frames(t), t->offset); for(i = 0; i < t->num_entries; i++) { fprintf(stderr, " Frames: %"PRId64", duration: %"PRId64"\n", t->entries[i].num_frames, t->entries[i].duration); } fprintf(stderr, "Timecodes: %d\n", t->num_timecodes); for(i = 0; i < t->num_timecodes; i++) { gavl_timecode_prettyprint(NULL, t->timecodes[i].tc, str); fprintf(stderr, " PTS: %"PRId64" TC: %s\n", t->timecodes[i].pts, str); } } /* Load / save */ #define FRAMETABLE_VERSION 1 static const char sig[] = "GAVL_FRAMETABLE"; #define SIG_LEN 15 static int load_32(FILE * f, int32_t * ret) { uint8_t buf[4]; if(fread(buf, 1, 4, f) < 4) return 0; *ret = buf[0]; *ret <<= 8; *ret |= buf[1]; *ret <<= 8; *ret |= buf[2]; *ret <<= 8; *ret |= buf[3]; return 1; } static int save_32(FILE * f, int32_t val) { uint8_t buf[4]; buf[0] = (val >> 24) & 0xff; buf[1] = (val >> 16) & 0xff; buf[2] = (val >> 8) & 0xff; buf[3] = val & 0xff; if(fwrite(buf, 1, 4, f) < 4) return 0; return 1; } static int load_64(FILE * f, int64_t * ret) { uint8_t buf[8]; if(fread(buf, 1, 8, f) < 8) return 0; *ret = buf[0]; *ret <<= 8; *ret |= buf[1]; *ret <<= 8; *ret |= buf[2]; *ret <<= 8; *ret |= buf[3]; *ret <<= 8; *ret |= buf[4]; *ret <<= 8; *ret |= buf[5]; *ret <<= 8; *ret |= buf[6]; *ret <<= 8; *ret |= buf[7]; return 1; } static int save_64(FILE * f, int64_t val) { uint8_t buf[8]; buf[0] = (val >> 56) & 0xff; buf[1] = (val >> 48) & 0xff; buf[2] = (val >> 40) & 0xff; buf[3] = (val >> 32) & 0xff; buf[4] = (val >> 24) & 0xff; buf[5] = (val >> 16) & 0xff; buf[6] = (val >> 8) & 0xff; buf[7] = val & 0xff; if(fwrite(buf, 1, 8, f) < 8) return 0; return 1; } gavl_frame_table_t * gavl_frame_table_load(const char * filename) { FILE * f = NULL; gavl_frame_table_t * ret = NULL; char sig_buf[SIG_LEN]; int32_t version; int i; /* Open file */ f = fopen(filename, "rb"); if(!f) return 0; /* Check for signature */ if(fread(sig_buf, 1, SIG_LEN, f) < SIG_LEN) goto fail; if(memcmp(sig, sig_buf, SIG_LEN)) goto fail; /* Check version */ if(!load_32(f, &version)) goto fail; if(version != FRAMETABLE_VERSION) goto fail; ret = calloc(1, sizeof(*ret)); /* Offset */ if(!load_64(f, &ret->offset)) goto fail; /* Entries */ if(!load_64(f, &ret->num_entries)) goto fail; ret->entries_alloc = ret->num_entries; ret->entries = calloc(ret->entries_alloc, sizeof(*ret->entries)); for(i = 0; i < ret->num_entries; i++) { if(!load_64(f, &ret->entries[i].num_frames) || !load_64(f, &ret->entries[i].duration)) goto fail; } /* Timecodes */ if(!load_32(f, &ret->num_timecodes)) goto fail; if(ret->num_timecodes) { ret->timecodes_alloc = ret->num_timecodes; ret->timecodes = calloc(ret->timecodes_alloc, sizeof(*ret->timecodes)); for(i = 0; i < ret->num_timecodes; i++) { if(!load_64(f, &ret->timecodes[i].pts) || !load_64(f, (int64_t*)&ret->timecodes[i].tc)) goto fail; } } fclose(f); return ret; fail: if(f) fclose(f); if(ret) gavl_frame_table_destroy(ret); return NULL; } int gavl_frame_table_save(const gavl_frame_table_t * tab, const char * filename) { FILE * f = NULL; int i; /* Open file */ f = fopen(filename, "wb"); if(!f) return 0; /* Write signature */ if(fwrite(sig, 1, SIG_LEN, f) < SIG_LEN) goto fail; /* Write version */ if(!save_32(f, FRAMETABLE_VERSION)) goto fail; /* Offset */ if(!save_64(f, tab->offset)) goto fail; /* Entries */ if(!save_64(f, tab->num_entries)) goto fail; for(i = 0; i < tab->num_entries; i++) { if(!save_64(f, tab->entries[i].num_frames) || !save_64(f, tab->entries[i].duration)) goto fail; } /* Timecodes */ if(!save_32(f, tab->num_timecodes)) goto fail; for(i = 0; i < tab->num_timecodes; i++) { if(!save_64(f, tab->timecodes[i].pts) || !save_64(f, tab->timecodes[i].tc)) goto fail; } fclose(f); return 1; fail: if(f) fclose(f); return 0; } /** \brief Create a frame table for an audio stream * \param tab A frame table * \param samplerate Samplerate for this stream * \param offset PTS offset of this stream in samples * \param duration Sample count * \param fmt_ret If non-null, returns the timecode format * \returns A newly allocated frame table * * Since 1.1.2. */ GAVL_PUBLIC gavl_frame_table_t * gavl_frame_table_create_audio(int samplerate, int64_t offset, int64_t duration, gavl_timecode_format_t * fmt_ret) { int64_t num; int samples_per_frame; gavl_frame_table_t * ret = gavl_frame_table_create(); ret->offset = offset; if(fmt_ret) { memset(fmt_ret, 0, sizeof(*fmt_ret)); fmt_ret->int_framerate = 100; } if(!(samplerate % 100)) { /* We make frames 10 ms long */ samples_per_frame = samplerate / 100; ret->entries_alloc = 2; ret->entries = calloc(2, sizeof(*ret->entries)); num = duration / samples_per_frame; if(num) { ret->entries[ret->num_entries].num_frames = num; ret->entries[ret->num_entries].duration = samples_per_frame; ret->num_entries++; } num = duration % samples_per_frame; if(num) { ret->entries[ret->num_entries].num_frames = 1; ret->entries[ret->num_entries].duration = num; ret->num_entries++; } } else { /* Yea that's extremely disgusting. But odd framerates are too! */ gavl_time_t time_cnt = 0; int64_t count, last_count = 0; while(1) { time_cnt += GAVL_TIME_SCALE / 100; count = gavl_time_scale(samplerate, time_cnt); if(count > duration) count = duration; gavl_frame_table_append_entry(ret, count - last_count); if(count >= duration) break; last_count = count; } } return ret; } /** \brief Set a frame table for constant framerate video * \param tab A frame table * \param offset Timestamp of the first frame * \param duration Duration of each frame * \param num_frames Number of frames * \param fmt Timecode format (or NULL) * \param start_timecode Timecode of the first frame (or GAVL_TIMECODE_UNDEFINED) * * Since 1.1.2. */ GAVL_PUBLIC gavl_frame_table_t * gavl_frame_table_create_cfr(int64_t offset, int64_t frame_duration, int64_t num_frames, gavl_timecode_t start_timecode) { gavl_frame_table_t * ret = gavl_frame_table_create(); ret->offset = offset; /* Make frames */ ret->entries_alloc = 1; ret->entries = calloc(ret->entries_alloc, sizeof(*ret->entries)); ret->entries[0].duration = frame_duration; ret->entries[0].num_frames = num_frames; ret->num_entries = 1; /* Make timecodes */ if(start_timecode == GAVL_TIMECODE_UNDEFINED) { ret->timecodes_alloc = 1; ret->timecodes = calloc(ret->timecodes_alloc, sizeof(*ret->timecodes)); ret->timecodes[0].pts = 0; ret->timecodes[0].tc = start_timecode; ret->num_timecodes = 1; } return ret; } /** \brief Copy a frame table to another * \param tab A frame table * \returns A newly allocated copy * * Since 1.1.2. */ GAVL_PUBLIC gavl_frame_table_t * gavl_frame_table_copy(const gavl_frame_table_t * tab) { gavl_frame_table_t * ret = malloc(sizeof(*ret)); memcpy(ret, tab, sizeof(*ret)); if(tab->num_entries) { ret->entries = malloc(tab->num_entries * sizeof(*ret->entries)); memcpy(ret->entries, tab->entries, tab->num_entries * sizeof(*ret->entries)); } if(tab->num_timecodes) { ret->timecodes = malloc(tab->num_timecodes * sizeof(*ret->timecodes)); memcpy(ret->timecodes, tab->timecodes, tab->num_timecodes * sizeof(*ret->timecodes)); } return ret; } bplaum-gavl-b9385e3/gavl/hq/000077500000000000000000000000001513252040200156205ustar00rootroot00000000000000bplaum-gavl-b9385e3/gavl/hq/Makefile.am000066400000000000000000000002271513252040200176550ustar00rootroot00000000000000AM_CFLAGS = @LIBGAVL_CFLAGS@ noinst_LTLIBRARIES = libgavl_hq.la libgavl_hq_la_SOURCES = \ rgb_rgb_hq.c \ rgb_yuv_hq.c \ yuv_rgb_hq.c \ yuv_yuv_hq.c bplaum-gavl-b9385e3/gavl/hq/colorspace_hq.c000066400000000000000000000020701513252040200206050ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #define DO_ROUND #define HQ #include "../c/rgb_rgb_c.c" #include "../c/rgb_yuv_c.c" #include "../c/yuv_rgb_c.c" #include "../c/yuv_yuv_c.c" bplaum-gavl-b9385e3/gavl/hq/rgb_rgb_hq.c000066400000000000000000000017441513252040200200660ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #define DO_ROUND #define HQ #include "../c/rgb_rgb_c.c" bplaum-gavl-b9385e3/gavl/hq/rgb_yuv_hq.c000066400000000000000000000017441513252040200201370ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #define DO_ROUND #define HQ #include "../c/rgb_yuv_c.c" bplaum-gavl-b9385e3/gavl/hq/yuv_rgb_hq.c000066400000000000000000000017441513252040200201370ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #define DO_ROUND #define HQ #include "../c/yuv_rgb_c.c" bplaum-gavl-b9385e3/gavl/hq/yuv_yuv_hq.c000066400000000000000000000017441513252040200202100ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #define DO_ROUND #define HQ #include "../c/yuv_yuv_c.c" bplaum-gavl-b9385e3/gavl/http.c000066400000000000000000000451601513252040200163410ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #define _GNU_SOURCE // timegm und strcasecmp (modern) #include #include #include #include #include #include #include #include #include #include #include #define LOG_DOMAIN "gavl.http" // #define DUMP_REQUESTS_READ /* Utils */ int gavl_http_parse_vars_line(gavl_dictionary_t * m, char * line) { char * pos; if(*line == '\0') // Final line return 1; pos = strchr(line, ':'); if(!pos) return 0; *pos = '\0'; pos++; while(isspace(*pos) && (*pos != '\0')) pos++; if(*pos == '\0') gavl_dictionary_set_string(m, line, GAVL_HTTP_META_EMPTY); else gavl_dictionary_set_string(m, line, pos); return 1; } static int read_vars(gavl_io_t * io, char ** line, int * line_alloc, gavl_dictionary_t * m) { while(1) { if(!gavl_io_read_line(io, line, line_alloc, 1024)) return 0; // fprintf(stderr, "Got line: %s\n", *line); if(**line == '\0') return 1; if(!gavl_http_parse_vars_line(m, *line)) return 0; } return 1; } static void put_string(gavl_io_t * io, const char * str) { gavl_io_write_data(io, (const uint8_t *)str, strlen(str)); } static void write_vars_func(void * priv, const char * name, const gavl_value_t * val) { char * buf = NULL; gavl_io_t * io; io = priv; if(*name == '$') return; switch(val->type) { case GAVL_TYPE_INT: buf = gavl_sprintf("%d", val->v.i); break; case GAVL_TYPE_LONG: buf = gavl_sprintf("%"PRId64, val->v.l); break; case GAVL_TYPE_FLOAT: buf = gavl_sprintf("%f", val->v.d); break; case GAVL_TYPE_STRING: if(!strcmp(val->v.str, GAVL_HTTP_META_EMPTY)) { put_string(io, name); put_string(io, ": \r\n"); } else { put_string(io, name); put_string(io, ": "); put_string(io, val->v.str); put_string(io, "\r\n"); } break; default: fprintf(stderr, "Type %s not supported in http headers\n", gavl_type_to_string(val->type)); } if(buf) { put_string(io, name); put_string(io, ": "); put_string(io, buf); put_string(io, "\r\n"); free(buf); } } static void write_vars(gavl_io_t * io, const gavl_dictionary_t * m) { gavl_dictionary_foreach(m, write_vars_func, io); } /* Request */ void gavl_http_request_init(gavl_dictionary_t * req, const char * method, const char * path, const char * protocol) { gavl_dictionary_init(req); gavl_dictionary_set_string(req, GAVL_HTTP_META_METHOD, method); gavl_dictionary_set_string(req, GAVL_HTTP_META_PATH, path); gavl_dictionary_set_string(req, GAVL_HTTP_META_PROTOCOL, protocol); } void gavl_http_request_set_path(gavl_dictionary_t * req, const char * path) { gavl_dictionary_set_string(req, GAVL_HTTP_META_PATH, path); } /* Read a http request (server) */ static int parse_request_line(gavl_dictionary_t * req, char * line) { char * pos1, *pos2; pos1 = strchr(line, ' '); pos2 = strrchr(line, ' '); if(!pos1 || !pos2 || (pos1 == pos2)) return 0; gavl_dictionary_set_string_nocopy(req, GAVL_HTTP_META_METHOD, gavl_strndup( line, pos1)); gavl_dictionary_set_string_nocopy(req, GAVL_HTTP_META_PATH, gavl_strndup( pos1+1, pos2)); gavl_dictionary_set_string_nocopy(req, GAVL_HTTP_META_PROTOCOL, gavl_strdup(pos2+1)); return 1; } int gavl_http_request_read(gavl_io_t * io, gavl_dictionary_t * req) { int result = 0; char * line = NULL; int line_alloc = 0; if(!gavl_io_read_line(io, &line, &line_alloc, 1024)) goto fail; // fprintf(stderr, "Got line: %s\n", line); // gavl_hexdump((uint8_t*)line, strlen(line)+1, 16); if(!parse_request_line(req, line)) goto fail; result = read_vars(io, &line, &line_alloc, req); #ifdef DUMP_REQUESTS_READ gavl_dprintf("Got HTTP request\n"); gavl_dictionary_dump(req, 2); #endif // log_request(req); fail: if(line) free(line); return result; } static int http_request_write(gavl_io_t * io, const gavl_dictionary_t * req) { const char * method; const char * path; const char * protocol; if(!(method = gavl_dictionary_get_string(req, GAVL_HTTP_META_METHOD)) || !(path = gavl_dictionary_get_string(req, GAVL_HTTP_META_PATH)) || !(protocol = gavl_dictionary_get_string(req, GAVL_HTTP_META_PROTOCOL))) return 0; put_string(io, method); put_string(io, " "); put_string(io, path); put_string(io, " "); put_string(io, protocol); put_string(io, "\r\n"); write_vars(io, req); put_string(io, "\r\n"); gavl_io_flush(io); return 1; } char * gavl_http_request_to_string(const gavl_dictionary_t * req, int * lenp) { gavl_io_t * io; uint8_t * buf; char * ret; int len; io = gavl_io_create_mem_write(); if(!http_request_write(io, req)) { gavl_io_destroy(io); return NULL; } buf = gavl_io_mem_get_buf(io, &len); ret = malloc(len + 1); memcpy(ret, buf, len); ret[len] = '\0'; if(lenp) *lenp = len; free(buf); gavl_io_destroy(io); return ret; } int gavl_http_request_to_buffer(const gavl_dictionary_t * req, gavl_buffer_t * ret) { gavl_io_t * io; uint8_t * buf; int len; io = gavl_io_create_mem_write(); if(!http_request_write(io, req)) { gavl_io_destroy(io); return 0; } buf = gavl_io_mem_get_buf(io, &len); gavl_buffer_alloc(ret, len+1); memcpy(ret->buf, buf, len); ret->buf[len] = '\0'; ret->len = len; free(buf); gavl_io_destroy(io); return 1; } int gavl_http_request_write(gavl_io_t * io, const gavl_dictionary_t * req) { char * buf; int len; int ret; if(!(buf = gavl_http_request_to_string(req, &len))) return 0; ret = gavl_io_write_data(io, (uint8_t*)buf, len); free(buf); if(ret == len) return 1; else return 0; } const char * gavl_http_request_get_protocol(const gavl_dictionary_t * req) { return gavl_dictionary_get_string(req, GAVL_HTTP_META_PROTOCOL); } const char * gavl_http_request_get_method(const gavl_dictionary_t * req) { return gavl_dictionary_get_string(req, GAVL_HTTP_META_METHOD); } const char * gavl_http_request_get_path(const gavl_dictionary_t * req) { return gavl_dictionary_get_string(req, GAVL_HTTP_META_PATH); } /* Response */ static int parse_response_line(gavl_dictionary_t * res, char * line) { char * pos1; char * pos2; pos1 = strchr(line, ' '); if(!pos1) return 0; pos2 = strchr(pos1+1, ' '); if(!pos2) return 0; gavl_dictionary_set_string_nocopy(res, GAVL_HTTP_META_PROTOCOL, gavl_strndup( line, pos1)); gavl_dictionary_set_string_nocopy(res, GAVL_HTTP_META_STATUS_INT, gavl_strndup( pos1+1, pos2)); pos2++; gavl_dictionary_set_string(res, GAVL_HTTP_META_STATUS_STR, pos2); return 1; } void gavl_http_response_init(gavl_dictionary_t * res, const char * protocol, int status_int, const char * status_str) { gavl_dictionary_init(res); gavl_dictionary_set_string(res, GAVL_HTTP_META_PROTOCOL, protocol); gavl_dictionary_set_int(res, GAVL_HTTP_META_STATUS_INT, status_int); gavl_dictionary_set_string(res, GAVL_HTTP_META_STATUS_STR, status_str); } #define BYTES_TO_READ 1024 int gavl_http_response_read_async(gavl_io_t * io, gavl_buffer_t * buf, gavl_dictionary_t * res, int timeout) { int idx; char ** lines = NULL; char * pos; char * pos2; int result; int ret = -1; if(!gavl_io_can_read(io, timeout)) { if(timeout > 0) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Timeout while reading response"); return -1; } else return 0; } gavl_buffer_alloc(buf, buf->len + BYTES_TO_READ + 1); result = gavl_io_read_data_nonblock(io, buf->buf + buf->len, BYTES_TO_READ); #if 1 if(!result && (timeout > 0)) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Connection reset while reading response"); return -1; } else #endif if(result < 0) return -1; if(result > 0) buf->len += result; buf->buf[buf->len] = '\0'; // fprintf(stderr, "Got header 1 \"%s\"\n", (char*)buf->buf); // gavl_hexdump(buf->buf, buf->len, 16); pos = strstr((char*)buf->buf, "\n\n"); pos2 = strstr((char*)buf->buf, "\r\n\r\n"); if(!pos && !pos2) return 0; if(pos && pos2) { if(pos < pos2) { *pos = '\0'; pos += 2; } else { *pos2= '\0'; pos2 += 4; pos = pos2; } } else if(pos) { *pos = '\0'; pos += 2; } else // pos2 { *pos2= '\0'; pos2 += 4; pos = pos2; } // fprintf(stderr, "Got header 2 \"%s\"\n", (char*)buf->buf); lines = gavl_strbreak((char*)buf->buf, '\n'); idx = 0; while(lines[idx]) { gavl_strip_space_inplace(lines[idx]); idx++; } if(!parse_response_line(res, lines[0])) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Parsing http status line \"%s\" failed", lines[0] ); goto fail; } idx = 1; while(lines[idx]) { if(*(lines[idx]) == '\0') break; if(!gavl_http_parse_vars_line(res, lines[idx])) goto fail; idx++; } if(buf->len > (pos - (char*)buf->buf)) { // fprintf(stderr, "gavl_io_unread_data\n"); // gavl_hexdump((uint8_t*)pos, buf->len - (pos - (char*)buf->buf), 16); gavl_io_unread_data(io, (uint8_t*)pos, buf->len - (pos - (char*)buf->buf)); } ret = 1; fail: if(lines) gavl_strbreak_free(lines); return ret; } int gavl_http_response_read(gavl_io_t * io, gavl_dictionary_t * res) { int result = 0; char * line = NULL; int line_alloc = 0; if(!gavl_io_read_line(io, &line, &line_alloc, 1024)) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Reading http status line failed"); goto fail; } if(!parse_response_line(res, line)) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Parsing http status line \"%s\" failed", line); goto fail; } if(!read_vars(io, &line, &line_alloc, res)) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Reading http response variables failed"); goto fail; } result = 1; fail: if(line) free(line); return result; } int gavl_http_response_write(gavl_io_t * io, const gavl_dictionary_t * res) { int status_int; const char * status_str; const char * protocol; char tmp_string[128]; if(!gavl_dictionary_get_int(res, GAVL_HTTP_META_STATUS_INT, &status_int) || !(status_str = gavl_dictionary_get_string(res, GAVL_HTTP_META_STATUS_STR)) || !(protocol = gavl_dictionary_get_string(res, GAVL_HTTP_META_PROTOCOL))) return 0; put_string(io, protocol); put_string(io, " "); snprintf(tmp_string, 128, "%d", status_int); put_string(io, tmp_string); put_string(io, " "); put_string(io, status_str); put_string(io, "\r\n"); write_vars(io, res); put_string(io, "\r\n"); return 1; } char * gavl_http_response_to_string(const gavl_dictionary_t * res, int * lenp) { gavl_io_t * io; uint8_t * buf; char * ret; int len; io = gavl_io_create_mem_write(); gavl_http_response_write(io, res); buf = gavl_io_mem_get_buf(io, &len); ret = malloc(len + 1); memcpy(ret, buf, len); ret[len] = '\0'; if(lenp) *lenp = len; free(buf); gavl_io_destroy(io); return ret; } int gavl_http_response_from_string(gavl_dictionary_t * res, const char * buf) { int i; char * pos; int result = 0; char ** str = gavl_strbreak(buf, '\n'); i = 0; while(str[i]) { if((pos = strchr(str[i], '\r'))) *pos = '\0'; i++; } if(!parse_response_line(res, str[0])) goto fail; i = 1; while(str[i]) { if(!gavl_http_parse_vars_line(res, str[i])) goto fail; i++; } result = 1; fail: gavl_strbreak_free(str); return result; } const char * gavl_http_response_get_protocol(const gavl_dictionary_t * res) { return gavl_dictionary_get_string(res, GAVL_HTTP_META_PROTOCOL); } int gavl_http_response_get_status_int(const gavl_dictionary_t * res) { int ret = 0; gavl_dictionary_get_int(res, GAVL_HTTP_META_STATUS_INT, &ret); return ret; } const char * gavl_http_response_get_status_str(const gavl_dictionary_t * res) { return gavl_dictionary_get_string(res, GAVL_HTTP_META_STATUS_STR); } void gavl_http_header_set_empty_var(gavl_dictionary_t * h, const char * name) { gavl_dictionary_set_string(h, name, GAVL_HTTP_META_EMPTY); } int gavl_http_response_is_chunked(const gavl_dictionary_t * res) { const char * var; if((var = gavl_dictionary_get_string(res, "Transfer-Encoding")) && !strcasecmp(var, "chunked")) return 1; else return 0; } int gavl_http_response_has_body(const gavl_dictionary_t * res) { int64_t total_bytes = 0; if(gavl_http_response_is_chunked(res)) return 1; else if(gavl_dictionary_get_long_i(res, "Content-Length", &total_bytes) && (total_bytes > 0)) return 1; else if(gavl_dictionary_get_i(res, "Content-Type")) // Streaming case return 1; else return 0; } void gavl_http_header_set_time(gavl_dictionary_t * h, const char * name, int64_t t) { char date[80]; struct tm tm; strftime(date, sizeof(date),"%a, %d %b %Y %H:%M:%S GMT", gmtime_r(&t, &tm)); gavl_dictionary_set_string(h, name, date); } int64_t gavl_http_header_get_time(const gavl_dictionary_t * h, const char * name) { const char * var; struct tm tm; if(!(var = gavl_dictionary_get_string_i(h, name))) return 0; if(!strptime(var, "%a, %d %b %Y %H:%M:%S GMT", &tm)) return 0; return timegm(&tm); } void gavl_http_header_set_date(gavl_dictionary_t * h, const char * name) { gavl_http_header_set_time(h, name, time(NULL)); } int gavl_http_request_from_string(gavl_dictionary_t * req, const char * buf) { int i; char * pos; int result = 0; char ** str = gavl_strbreak(buf, '\n'); i = 0; while(str[i]) { if((pos = strchr(str[i], '\r'))) *pos = '\0'; i++; } if(!parse_request_line(req, str[0])) goto fail; i = 1; while(str[i]) { if(!gavl_http_parse_vars_line(req, str[i])) goto fail; i++; } result = 1; fail: gavl_strbreak_free(str); return result; } int gavl_http_read_body(gavl_io_t * io, const gavl_dictionary_t * res, gavl_buffer_t * buf) { char * length_str = NULL; int length_alloc = 0; int success = 0; const char * var; int chunked = 0; int result; // gavl_dictionary_dump(res, 0); var = gavl_dictionary_get_string_i(res, "Transfer-Encoding"); if(var && !strcasecmp(var, "chunked")) chunked = 1; else { if(!gavl_dictionary_get_int_i(res, "Content-Length", &buf->len)) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "No length given in http response"); goto fail; } } if(chunked) { int chunk_len; uint8_t crlf[2]; while(1) { /* Read length */ if(!gavl_io_read_line(io, &length_str, &length_alloc, 10000) || (sscanf(length_str, "%x", &chunk_len) < 1)) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Reading chunk length failed"); goto fail; } // fprintf(stderr, "Chunk length: %d", chunk_len); if(chunk_len > 0) { if((buf->len) + chunk_len > 64 * 1024 * 1024) // Never download more then 64 MB { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Length %d outside allowed range", (buf->len) + chunk_len); goto fail; } gavl_buffer_alloc(buf, buf->len + chunk_len + 1); result = gavl_io_read_data(io, buf->buf + buf->len, chunk_len); if(result < chunk_len) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Reading %d bytes failed (got %d)", chunk_len, result); goto fail; } buf->len += chunk_len; } /* Read trailing \r\n */ if((gavl_io_read_data(io, crlf, 2) < 2) || (crlf[0] != '\r') || (crlf[1] != '\n')) goto fail; if(chunk_len <= 0) { // fprintf(stderr, "Downloaded chunked http %d bytes\n", *len); // gavl_hexdump(ret, *len, 16); break; } } } else { if((buf->len <= 0) || (buf->len > 64 * 1024 * 1024)) // Never download more then 64 MB { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Length %d outside allowed range", buf->len); goto fail; } gavl_buffer_alloc(buf, buf->len+1); result = gavl_io_read_data(io, buf->buf, buf->len); if(result < buf->len) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Reading %d bytes failed (got %d)", buf->len, result); goto fail; } } buf->buf[buf->len] = '\0'; // Become string friendly // Success :) success = 1; fail: if(length_str) free(length_str); if(!success) { gavl_buffer_free(buf); /* Prevent double free later on */ gavl_buffer_init(buf); } return success; } char * gavl_make_basic_auth(const char * username, const char * password) { char * ret; char * str = gavl_sprintf("%s:%s", username, password); char * str_enc = gavl_base64_encode_data(str, -1); ret = gavl_sprintf("Basic %s", str_enc); free(str); free(str_enc); return ret; } bplaum-gavl-b9385e3/gavl/httpclient.c000066400000000000000000001542421513252040200175420ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #define _GNU_SOURCE #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include // #define DUMP_HEADERS #define LOG_DOMAIN "httpclient" #define FLAG_USE_PROXY (1<<0) #define FLAG_KEEPALIVE (1<<1) #define FLAG_CHUNKED (1<<2) #define FLAG_USE_PROXY_TUNNEL (1<<3) #define FLAG_USE_TLS (1<<4) #define FLAG_GOT_REDIRECTION (1<<5) #define FLAG_HAS_RESPONSE_BODY (1<<6) #define FLAG_USE_KEEPALIVE (1<<7) #define FLAG_WAIT (1<<8) #define FLAG_RESPONSE_BODY_DONE (1<<9) #define FLAG_ERROR (1<<10) #define FLAG_HAS_CACHE (1<<11) #define FLAG_HAS_CACHE_FILE (1<<12) #define STATE_START 0 #define STATE_RESOLVE 1 #define STATE_CONNECT 2 #define STATE_SEND_CONNECT_REQUEST 3 #define STATE_READ_CONNECT_RESPONSE 4 #define STATE_TLS_HANDSHAKE 5 #define STATE_SEND_REQUEST 6 #define STATE_SEND_BODY 7 #define STATE_READ_RESPONSE 8 #define STATE_READ_BODY_NORMAL 9 // Use Content-Length #define STATE_READ_CHUNK_HEADER 10 // Chunked #define STATE_READ_CHUNK 11 // Chunked #define STATE_READ_CHUNK_TAIL 12 // Chunked #define STATE_COMPLETE 13 #define STATE_PAUSED 14 /* Read chunk header in these byte increments */ #define CHUNK_HEADER_BYTES 4 #define MAX_RECONNECTS 5 typedef struct { gavl_io_t * io_int; gavl_io_t * io_proxy; // Plain http connection for sending the CONNECT request to a proxy gavl_io_t * io; // External handle char * host; char * protocol; int port; char * proxy_host; int proxy_port; gavl_dictionary_t resp; gavl_dictionary_t req; gavl_socket_address_t * addr; int chunk_length; int64_t position; int64_t total_bytes; int64_t pos; int started; gavl_dictionary_t cache_info; /* Set by gavl_http_client_open() */ gavl_dictionary_t vars; gavl_dictionary_t vars_from_uri; char * uri; char * method; int flags; char * proxy_auth; int64_t range_start; int64_t range_end; gavl_buffer_t * req_body; gavl_buffer_t * res_body; /* Async stuff */ gavl_buffer_t header_buffer; gavl_buffer_t chunk_header_buffer; int state; int num_redirections; int fd; char * redirect_uri; const char * real_uri; gavl_timer_t * timer; int num_reconnects; } gavl_http_client_t; pthread_mutex_t proxy_mutex = PTHREAD_MUTEX_INITIALIZER; static int proxies_initialized = 0; static char * http_proxy = NULL; static char * https_proxy = NULL; static gavl_array_t no_proxy; static int no_tunnel = 0; static int reopen(gavl_io_t * io); static int store_cache(gavl_http_client_t * c) { const char * etag; const char * pos; const char * cache_control; const char * cache_file; const char * mimetype; time_t maxage = 0; time_t mtime; time_t cur; if(!(c->flags & FLAG_HAS_CACHE)) return 0; if(c->flags & FLAG_ERROR) return 0; if(!(cache_control = gavl_dictionary_get_string_i(&c->resp, "Cache-Control")) || strcasestr(cache_control, "no-store")) return 0; mtime = gavl_http_header_get_time(&c->resp, "Last-Modified"); etag = gavl_dictionary_get_string_i(&c->resp, GAVL_HTTP_ETAG); mimetype = gavl_dictionary_get_string_i(&c->resp, "Content-Type"); if(!mtime && !etag) return 0; cur = time(NULL); if((pos = strcasestr(cache_control, "max-age="))) { pos += strlen("max-age="); maxage = strtoll(pos, NULL, 10); } else if(!strcasestr(cache_control, "no-cache") && mtime) { /* Guess max age */ maxage = (cur - mtime) / 10; } if(mtime) gavl_dictionary_set_long(&c->cache_info, GAVL_META_MTIME, mtime); gavl_dictionary_set_string(&c->cache_info, GAVL_HTTP_ETAG, etag); gavl_dictionary_set_string(&c->cache_info, GAVL_META_MIMETYPE, mimetype); gavl_dictionary_set_long(&c->cache_info, GAVL_HTTP_CACHE_TIME, cur); gavl_dictionary_set_long(&c->cache_info, GAVL_HTTP_CACHE_MAXAGE, maxage); gavl_dictionary_set_int(&c->cache_info, GAVL_HTTP_CACHE_UPDATED, 1); cache_file = gavl_dictionary_get_string(&c->cache_info, GAVL_HTTP_CACHE_FILE); gavl_log(GAVL_LOG_INFO, LOG_DOMAIN, "Saving cache file %s", cache_file); // gavl_dictionary_dump(&c->cache_info, 2); return gavl_write_file(cache_file, c->res_body->buf, c->res_body->len); } gavl_dictionary_t * gavl_http_client_get_cache_info(gavl_io_t * io) { gavl_http_client_t * c = io->priv; return &c->cache_info; } /* Check for cached file without validation */ static int check_cache_nonvalidate(gavl_http_client_t * c) { int64_t cache_time; int64_t maxage; const char * cache_file; if(!(c->flags & FLAG_HAS_CACHE_FILE) || !gavl_dictionary_get_long(&c->cache_info, GAVL_HTTP_CACHE_TIME, &cache_time) || !gavl_dictionary_get_long(&c->cache_info, GAVL_HTTP_CACHE_MAXAGE, &maxage) || (cache_time + maxage < time(NULL))) return 0; cache_file = gavl_dictionary_get_string(&c->cache_info, GAVL_HTTP_CACHE_FILE); if(!gavl_read_file(cache_file, c->res_body)) return 0; else { gavl_dictionary_set_string(&c->resp, "Content-Type", gavl_dictionary_get_string(&c->cache_info, GAVL_META_MIMETYPE)); gavl_log(GAVL_LOG_INFO, LOG_DOMAIN, "Loading cache file %s (unvalidated)", cache_file); return 1; } } static void do_reset_connection(gavl_http_client_t * c) { gavl_dictionary_reset(&c->req); gavl_dictionary_reset(&c->resp); if(c->io_proxy) { gavl_io_destroy(c->io_proxy); c->io_proxy = NULL; } gavl_buffer_reset(&c->header_buffer); gavl_buffer_reset(&c->chunk_header_buffer); c->real_uri = NULL; c->total_bytes = 0; c->chunk_length = 0; c->pos = 0; if(c->state != STATE_PAUSED) c->state = STATE_START; c->num_redirections = 0; gavl_io_clear_eof(c->io); gavl_io_clear_error(c->io); c->flags &= ~(FLAG_KEEPALIVE| FLAG_CHUNKED| FLAG_HAS_RESPONSE_BODY|FLAG_ERROR); c->num_reconnects = 0; } static void reset_connection(gavl_http_client_t * c) { // gavl_log(GAVL_LOG_INFO, LOG_DOMAIN, "Resetting keepalive connection to %s://%s:%d", c->protocol, c->host, c->port); do_reset_connection(c); } /* */ static int handle_remote_close(gavl_http_client_t * c) { if(c->num_reconnects > MAX_RECONNECTS) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Too many re-connects"); return -1; } switch(c->state) { case STATE_READ_CHUNK_HEADER: case STATE_READ_CHUNK: case STATE_READ_CHUNK_TAIL: /* Chunked reading */ if(!c->res_body) goto error; /* Close and repeat request */ gavl_buffer_reset(c->res_body); c->pos = 0; c->chunk_length = 0; break; case STATE_READ_BODY_NORMAL: // fprintf(stderr, "Connection closed while reading body\n"); // gavl_dictionary_dump(&c->resp, 2); // fprintf(stderr, "\nBytes read: %d\n", c->res_body->len); if(c->total_bytes <= 0) goto error; if(gavl_io_can_seek(c->io)) gavl_http_client_set_range(c->io, c->pos, -1); else { gavl_buffer_reset(c->res_body); c->pos = 0; } break; default: goto error; } gavl_log(GAVL_LOG_INFO, LOG_DOMAIN, "Connection closed unexpectedly (state: %d), reopening", c->state); /* Re-connect */ c->num_redirections = 0; c->num_reconnects++; if(c->req_body) c->req_body->pos = 0; if(c->io_int) { gavl_io_destroy(c->io_int); c->io_int = NULL; } if(c->io_proxy) { gavl_io_destroy(c->io_proxy); c->io_proxy = NULL; } c->state = STATE_CONNECT; c->fd = gavl_socket_connect_inet(c->addr, 0); if(c->fd < 0) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Reopening failed: %d", c->state); return -1; } return 0; error: gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Connection closed unexpectedly (state: %d)", c->state); return -1; } static void close_connection(gavl_http_client_t * c) { gavl_log(GAVL_LOG_DEBUG, LOG_DOMAIN, "Closing connection: %s", c->uri); do_reset_connection(c); if(c->io_proxy) { gavl_io_destroy(c->io_proxy); c->io_proxy = NULL; } if(c->io_int) { gavl_io_destroy(c->io_int); c->io_int = NULL; } if(c->fd >= 0) { gavl_socket_close(c->fd); c->fd = -1; } c->host = gavl_strrep(c->host, NULL); c->protocol = gavl_strrep(c->protocol, NULL); c->proxy_host = gavl_strrep(c->proxy_host, NULL); c->proxy_auth = gavl_strrep(c->proxy_auth, NULL); /* Clear all flags except redirection and caching stuff */ c->flags &= (FLAG_GOT_REDIRECTION|FLAG_HAS_CACHE|FLAG_HAS_CACHE_FILE); c->port = -1; c->proxy_port = -1; c->num_reconnects = 0; } int gavl_http_client_get_state(gavl_io_t * io) { gavl_http_client_t * c = gavl_io_get_priv(io); return c->state; } static void check_keepalive(gavl_http_client_t * c) { const char * protocol; const char * var; c->flags &= ~FLAG_KEEPALIVE; protocol = gavl_http_response_get_protocol(&c->resp); /* Under HTTP/1.1, connections are keep-alive by default */ if(!strcmp(protocol, "HTTP/1.1")) { if(!(var = gavl_dictionary_get_string(&c->resp, "Connection")) || !strcasecmp(var, "keep-alive")) c->flags |= FLAG_KEEPALIVE; } else { if((var = gavl_dictionary_get_string(&c->resp, "Connection")) && !strcasecmp(var, "keep-alive")) c->flags |= FLAG_KEEPALIVE; } } static void init_proxies() { char * var; if(proxies_initialized) return; proxies_initialized = 1; gavl_array_init(&no_proxy); if((var = getenv("http_proxy")) || (var = getenv("HTTP_PROXY"))) { if(!strstr(var, "://")) http_proxy = gavl_sprintf("http://%s", var); else http_proxy = gavl_strdup(var); } if((var = getenv("https_proxy")) || (var = getenv("HTTPS_PROXY"))) { if(!strstr(var, "://")) https_proxy = gavl_sprintf("https://%s", var); else https_proxy = gavl_strdup(var); } if((var = getenv("NO_PROXY"))) { int idx = 0; char ** hosts = gavl_strbreak(var, ','); while(hosts[idx]) { gavl_string_array_add(&no_proxy, hosts[idx]); idx++; } } } static int read_chunk_header_async(gavl_http_client_t * c, int timeout) { const char * pos; int result, rest; c->pos = 0; while(1) { if(!gavl_io_can_read(c->io_int, timeout)) { if(!timeout) return 0; else { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Got read timeout"); return -1; } } gavl_buffer_alloc(&c->chunk_header_buffer, c->chunk_header_buffer.len + CHUNK_HEADER_BYTES + 1); result = gavl_io_read_data_nonblock(c->io_int, c->chunk_header_buffer.buf + c->chunk_header_buffer.len, CHUNK_HEADER_BYTES); if(result <= 0) return result; c->chunk_header_buffer.len += result; c->chunk_header_buffer.buf[c->chunk_header_buffer.len] = '\0'; if((pos = strchr((char*)c->chunk_header_buffer.buf, '\n'))) break; } /* Parse chunk length */ if(sscanf((char*)c->chunk_header_buffer.buf, "%x", &c->chunk_length) < 1) { gavl_log(GAVL_LOG_INFO, LOG_DOMAIN, "Parsing chunk length failed: %s", (char*)c->chunk_header_buffer.buf); return -1; } // if(!c->chunk_length) // fprintf(stderr, "Got chunk length: %d\n%s\n", c->chunk_length, (char*)c->chunk_header_buffer.buf); pos++; rest = c->chunk_header_buffer.len - (int)(pos - (char*)c->chunk_header_buffer.buf); // gavl_hexdump((uint8_t*)c->chunk_header_buffer.buf, c->chunk_header_buffer.len, 16); // fprintf(stderr, "Rest: %d\n", rest); if(rest > 0) { // fprintf(stderr, "Unreading data\n"); // gavl_hexdump((uint8_t*)pos, rest, 16); gavl_io_unread_data(c->io_int, (uint8_t*)pos, rest); } gavl_buffer_reset(&c->chunk_header_buffer); return 1; } static int read_chunk_tail_async(gavl_http_client_t * c, int timeout) { int result; if(!gavl_io_can_read(c->io_int, timeout)) { if(!timeout) return 0; else { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Got read timeout"); return -1; } } result = gavl_io_read_data_nonblock(c->io_int, c->chunk_header_buffer.buf + c->chunk_header_buffer.len, 2 - c->chunk_header_buffer.len); // fprintf(stderr, "read_chunk_tail_async %d\n", result); if(result <= 0) return result; c->chunk_header_buffer.len += result; if(c->chunk_header_buffer.len < 2) return 0; if((c->chunk_header_buffer.buf[0] != '\r') || (c->chunk_header_buffer.buf[1] != '\n')) { // fprintf(stderr, "read_chunk_tail_async failed %d %d\n", result, c->chunk_header_buffer.len); // gavl_hexdump(c->chunk_header_buffer.buf, 2, 2); return -1; } return 1; } static int read_chunk_length(gavl_http_client_t * c) { int ret = 0; char * length_str = NULL; int length_alloc = 0; /* Read length */ if(!gavl_io_read_line(c->io_int, &length_str, &length_alloc, 10000) || (sscanf(length_str, "%x", &c->chunk_length) < 1)) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Reading chunk length failed %s", length_str); goto fail; } ret = 1; fail: if(length_str) free(length_str); return ret; } static int read_chunk_tail(gavl_http_client_t * c) { uint8_t crlf[2]; if((gavl_io_read_data(c->io_int, crlf, 2) < 2) || (crlf[0] != '\r') || (crlf[1] != '\n')) return 0; return 1; } static int read_chunked(void * priv, uint8_t * data, int len, int block) { int bytes_read = 0; int bytes_to_read = 0; int result; gavl_http_client_t * c = priv; int timeout; if(block) timeout = 3000; else timeout = 0; while(bytes_read < len) { switch(c->state) { case STATE_READ_CHUNK_HEADER: result = read_chunk_header_async(c, timeout); if(result <= 0) return result; if(!c->chunk_length) { c->state = STATE_READ_CHUNK_TAIL; continue; } else { c->state = STATE_READ_CHUNK; c->pos = 0; } break; case STATE_READ_CHUNK_TAIL: result = read_chunk_tail_async(c, timeout); if(result <= 0) return result; if(!c->chunk_length) { /* End of body */ c->state = STATE_COMPLETE; c->flags |= FLAG_RESPONSE_BODY_DONE; store_cache(c); check_keepalive(c); return bytes_read; } else { gavl_buffer_reset(&c->chunk_header_buffer); c->state = STATE_READ_CHUNK_HEADER; } break; case STATE_READ_CHUNK: bytes_to_read = len - bytes_read; if(bytes_to_read > c->chunk_length - c->pos) bytes_to_read = c->chunk_length - c->pos; if(!block) { result = gavl_io_read_data_nonblock(c->io_int, data + bytes_read, bytes_to_read); if(result < 0) return -1; } else { result = gavl_io_read_data(c->io_int, data + bytes_read, bytes_to_read); if(result < bytes_to_read) return -1; } c->pos += result; bytes_read += result; if(c->pos == c->chunk_length) c->state = STATE_READ_CHUNK_TAIL; break; } } return bytes_read; } static int read_normal(void * priv, uint8_t * data, int len, int block) { int result = 0; gavl_http_client_t * c = priv; if(c->total_bytes) { if(c->pos + len > c->total_bytes) len = c->total_bytes - c->pos; } if(len) { if(!block && !gavl_io_can_read(c->io_int, 0)) return 0; if(block) result = gavl_io_read_data(c->io_int, data, len); else result = gavl_io_read_data_nonblock(c->io_int, data, len); if(result < 0) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Read function returned %d, block: %d", result, block); goto fail; } if(block && (result < len)) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Requested %d bytes, got %d", len, result); goto fail; } c->pos += result; c->position += result; } if(c->pos == c->total_bytes) { c->flags |= FLAG_RESPONSE_BODY_DONE; // fprintf(stderr, "httpclient: Detected EOF %"PRId64" %d %"PRId64"\n", // c->pos, len, c->total_bytes); check_keepalive(c); } return result; fail: return -1; } static int read_func(void * priv, uint8_t * data, int len) { int result; gavl_http_client_t * c = priv; if(!c->io_int) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Input not ready: %d", c->state); return -1; } if(c->flags & FLAG_CHUNKED) result = read_chunked(priv, data, len, 1); else result = read_normal(priv, data, len, 1); if((result < len) && (gavl_io_got_error(c->io_int))) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Got read error"); gavl_io_set_error(c->io); } return result; } static int read_nonblock_func(void * priv, uint8_t * data, int len) { gavl_http_client_t * c = priv; if(c->flags & FLAG_CHUNKED) return read_chunked(priv, data, len, 0); else return read_normal(priv, data, len, 0); } static int write_func(void * priv, const uint8_t * data, int len) { // gavl_http_client_t * c = priv; return 0; } static int poll_func(void * priv, int timeout, int wr) { gavl_http_client_t * c = priv; if(wr) return c->io_int ? gavl_io_can_write(c->io_int, timeout) : 0; else return c->io_int ? gavl_io_can_read(c->io_int, timeout) : 0; } static void close_func(void * priv) { gavl_http_client_t * c = priv; close_connection(c); if(c->addr) gavl_socket_address_destroy(c->addr); gavl_strrep(c->method, NULL); gavl_strrep(c->uri, NULL); gavl_dictionary_free(&c->vars); gavl_dictionary_free(&c->vars_from_uri); gavl_buffer_free(&c->header_buffer); gavl_buffer_free(&c->chunk_header_buffer); if(c->timer) gavl_timer_destroy(c->timer); free(c); } static int64_t seek_http(void * priv, int64_t pos1, int whence) { int64_t pos = -1; gavl_http_client_t * c = priv; // fprintf(stderr, "seek_http %p\n", c->io_int); switch(whence) { case SEEK_SET: pos = pos1; break; case SEEK_END: pos = c->total_bytes + pos1; break; case SEEK_CUR: pos = c->position + pos1; break; } // fprintf(stderr, "seek_http 1 %"PRId64" %"PRId64" %p\n", c->position, pos, c->io_int); if(c->position == pos) return c->position; if(pos < 0) return c->position; else if(pos >= c->total_bytes) return c->position; else { /* TODO */ c->range_start = pos; c->range_end = -1; if(c->io_int) { close_connection(c); // gavl_io_destroy(c->io_int); // c->io_int = NULL; // fprintf(stderr, "reopen 1 %p\n", c->io_int); reopen(c->io); // fprintf(stderr, "reopen 2 %p\n", c->io_int); } } // fprintf(stderr, "seek_http done %p\n", c->io_int); // fprintf(stderr, "seek_http 2 %"PRId64"\n", c->position); return pos; } gavl_io_t * gavl_http_client_create() { gavl_http_client_t * c; gavl_io_t * ret; c = calloc(1, sizeof(*c)); c->addr = gavl_socket_address_create(); ret = gavl_io_create(read_func, write_func, seek_http, close_func, /* gavf_flush_func f */ NULL, GAVL_IO_CAN_READ | GAVL_IO_CAN_WRITE, c); c->io = ret; gavl_io_set_poll_func(ret, poll_func); gavl_io_set_nonblock_read(ret, read_nonblock_func); c->port = -1; c->proxy_port = -1; c->fd = -1; return ret; } static int prepare_connection(gavl_io_t * io, const char * host, int port, const char * protocol) { int ret = 0; int do_close = 0; const char * proxy = NULL; int i; // char * proxy_host = NULL; // int proxy_port = -1; char * proxy_user = NULL; char * proxy_password = NULL; gavl_http_client_t * c = gavl_io_get_priv(io); /* Check if we close the old connection */ if(gavl_io_got_error(io)) { do_close = 1; gavl_io_clear_error(io); } else if(c->io_int && !(c->flags & FLAG_KEEPALIVE)) { gavl_log(GAVL_LOG_DEBUG, LOG_DOMAIN, "Closing connection (keepalive wasn't specified)"); do_close = 1; } else if((c->flags & (FLAG_HAS_RESPONSE_BODY|FLAG_RESPONSE_BODY_DONE)) == FLAG_HAS_RESPONSE_BODY) { gavl_log(GAVL_LOG_INFO , LOG_DOMAIN, "Closing connection (response body wasn't read)"); do_close = 1; } if(!do_close && c->io_int && c->host && c->protocol && !(c->flags & FLAG_USE_PROXY)) { if(strcmp(host, c->host)) { do_close = 1; gavl_log(GAVL_LOG_INFO, LOG_DOMAIN, "Closing keepalive connection (host changed from %s to %s)", c->host, host); } else if(strcmp(protocol, c->protocol)) { do_close = 1; gavl_log(GAVL_LOG_INFO, LOG_DOMAIN, "Closing keepalive connection (protocol changed from %s to %s)", c->protocol, protocol); } else { if(port == -1) { if(c->flags & FLAG_USE_TLS) port = 443; else port = 80; } if(c->port != port) { do_close = 1; gavl_log(GAVL_LOG_INFO, LOG_DOMAIN, "Closing keepalive connection (port changed from %d to %d)", c->port, port); } } } if(c->io_int && do_close) { close_connection(c); } else if(c->io_int) { /* Keep alive */ reset_connection(c); } /* Handle redirect */ if((c->flags & FLAG_GOT_REDIRECTION) && c->redirect_uri) c->real_uri = c->redirect_uri; else c->real_uri = c->uri; if(c->io_int) { ret = 1; gavl_log(GAVL_LOG_DEBUG, LOG_DOMAIN, "Reusing keepalive connection"); c->flags |= FLAG_USE_KEEPALIVE; goto end; } /* Check for proxy */ pthread_mutex_lock(&proxy_mutex); init_proxies(); if(!strcmp(protocol, "http") || !strcmp(protocol, "hls")) { proxy = http_proxy; } else if(!strcmp(protocol, "https") || !strcmp(protocol, "hlss")) { proxy = https_proxy; c->flags |= FLAG_USE_TLS; } else { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Unknown protocol %s", protocol); goto end; } for(i = 0; i < no_proxy.num_entries; i++) { const char * str = gavl_string_array_get(&no_proxy, i); if(!strcmp(str, "*")) { proxy = NULL; break; } else if(gavl_string_ends_with(host, str)) { proxy = NULL; break; } } if(proxy) { if(c->flags & FLAG_USE_TLS) { if(!no_tunnel) { c->flags |= FLAG_USE_PROXY_TUNNEL; gavl_log(GAVL_LOG_INFO, LOG_DOMAIN, "Using https proxy %s (tunneling mode)", proxy); } else { c->flags = FLAG_USE_PROXY; gavl_log(GAVL_LOG_INFO, LOG_DOMAIN, "Using https proxy %s (http mode)", proxy); c->flags &= ~FLAG_USE_TLS; } } else { c->flags = FLAG_USE_PROXY; gavl_log(GAVL_LOG_INFO, LOG_DOMAIN, "Using http proxy %s", proxy); } if(!gavl_url_split(proxy, NULL, &proxy_user, &proxy_password, &c->proxy_host, &c->proxy_port, NULL)) goto end; if(proxy_user && proxy_password) c->proxy_auth = gavl_make_basic_auth(proxy_user, proxy_password); } pthread_mutex_unlock(&proxy_mutex); /* */ c->host = gavl_strrep(c->host, host); c->protocol = gavl_strrep(c->protocol, protocol); c->port = port; if(port <= 0) { if(c->flags & FLAG_USE_TLS) port = 443; else port = 80; c->port = port; } ret = 1; end: if(!proxy_user) free(proxy_user); if(!proxy_password) free(proxy_password); return ret; } static void setup_connect_header(gavl_io_t * io, gavl_dictionary_t * ret) { char * dst_host; gavl_http_client_t * c = gavl_io_get_priv(io); dst_host = gavl_sprintf("%s:%d", c->host, c->port); gavl_http_request_init(ret, "CONNECT", dst_host, "HTTP/1.1"); if(c->proxy_auth) gavl_dictionary_set_string(ret, "Proxy-Authorization", c->proxy_auth); free(dst_host); } static void append_header_var(gavl_dictionary_t * header, const char * name, const char * val) { if(!gavl_dictionary_get_string_i(header, name)) gavl_dictionary_set_string(header, name, val); } static void prepare_header(gavl_http_client_t * c, gavl_dictionary_t * request, const char * host, int port, const char * path) { const char * etag; time_t mtime; if(c->flags & FLAG_USE_PROXY) { char * real_uri = NULL; /* Rename gmerlin specific protocols */ if(gavl_string_starts_with(c->uri, "hls://")) { real_uri = gavl_sprintf("http%s", strstr(c->real_uri, "://")); } else if(gavl_string_starts_with(c->uri, "hlss://")) { real_uri = gavl_sprintf("https%s", strstr(c->real_uri, "://")); } if(real_uri) { gavl_http_request_init(request, c->method, real_uri, "HTTP/1.1"); free(real_uri); } else gavl_http_request_init(request, c->method, c->real_uri, "HTTP/1.1"); if(c->proxy_auth) gavl_dictionary_set_string(request, "Proxy-Authorization", c->proxy_auth); } else gavl_http_request_init(request, c->method, path, "HTTP/1.1"); /* Append http variables from URI */ gavl_dictionary_merge2(request, &c->vars_from_uri); gavl_dictionary_merge2(request, &c->vars); if(!gavl_dictionary_get_string_i(request, "Host")) { if(port > 0) gavl_dictionary_set_string_nocopy(request, "Host", gavl_sprintf("%s:%d", host, port)); else gavl_dictionary_set_string(request, "Host", host); } /* Send standard headers */ append_header_var(request, "Accept", "*/*"); append_header_var(request, "User-Agent", "gavl/"VERSION); if(c->req_body && c->req_body->len) gavl_dictionary_set_int(request, "Content-Length", c->req_body->len); if((c->range_start > 0) || (c->range_end > 0)) { if(c->range_end <= 0) gavl_dictionary_set_string_nocopy(request, "Range", gavl_sprintf("bytes=%"PRId64"-", c->range_start)); else gavl_dictionary_set_string_nocopy(request, "Range", gavl_sprintf("bytes=%"PRId64"-%"PRId64, c->range_start, c->range_end - 1)); // fprintf(stderr, "Set range: %s\n", gavl_dictionary_get_string(request, "Range")); } if(c->flags & FLAG_HAS_CACHE_FILE) { if((etag = gavl_dictionary_get_string(&c->cache_info, GAVL_HTTP_ETAG))) gavl_dictionary_set_string(&c->req, "If-None-Match", etag); else if(gavl_dictionary_get_long(&c->cache_info, GAVL_META_MTIME, &mtime)) gavl_http_header_set_time(&c->req, "If-Modified-Since", mtime); } #if 0 if(c->range_start > 0) gavl_dictionary_dump(request, 2); #endif } static int handle_response(gavl_io_t * io) { int ret = 0; int status; gavl_http_client_t * c = gavl_io_get_priv(io); c->flags &= ~(FLAG_GOT_REDIRECTION|FLAG_RESPONSE_BODY_DONE); status = gavl_http_response_get_status_int(&c->resp); if(gavl_http_response_is_chunked(&c->resp)) c->flags |= FLAG_CHUNKED; else c->flags &= ~FLAG_CHUNKED; if(gavl_http_response_has_body(&c->resp)) c->flags |= FLAG_HAS_RESPONSE_BODY; else c->flags &= ~FLAG_HAS_RESPONSE_BODY; if(!c->total_bytes) gavl_dictionary_get_long_i(&c->resp, "Content-Length", &c->total_bytes); if(status < 200) { /* Not yet supported */ gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "HTTP status %d not yet supported", status); goto fail; } else if(status < 300) { if((status == 200) || (status == 206)) { /* Get variables */ const char * var; int flags; int64_t resp_range_start = 0; int64_t resp_range_end = 0; int64_t resp_range_total = 0; c->position = 0; if(status == 206) { var = gavl_dictionary_get_string_i(&c->resp, "Content-Range"); if(!var) goto fail; if(!gavl_string_starts_with(var, "bytes ")) goto fail; var += 6; while(isspace(*var) && (*var != '\0')) var++; if(sscanf(var, "%"PRId64"-%"PRId64"/%"PRId64, &resp_range_start, &resp_range_end, &resp_range_total) < 3) { goto fail; } if(c->range_end <= 0) c->total_bytes = resp_range_total; if(c->range_end <= 0) c->position = resp_range_start; } if(!strcmp(c->method, "GET")) { #if 0 if(!(c->flags & FLAG_CHUNKED) && (!c->total_bytes)) { if((status == 200) || (c->range_end > 0)) gavl_dictionary_get_long_i(&c->resp, "Content-Length", &c->total_bytes); else if(status == 206) c->total_bytes = resp_range_total; } #endif if(c->flags & FLAG_HAS_RESPONSE_BODY) flags = GAVL_IO_CAN_READ; if((var = gavl_dictionary_get_string_i(&c->resp, "Accept-Ranges")) && !strcasecmp(var, "bytes") && (c->total_bytes > 0)) flags |= GAVL_IO_CAN_SEEK; } else if(!strcmp(c->method, "PUT")) // Not supported yet flags = GAVL_IO_CAN_WRITE; if(!(c->flags & FLAG_HAS_RESPONSE_BODY)) check_keepalive(c); if(!strcmp(c->method, "GET") || !strcmp(c->method, "PUT")) { gavl_io_set_info(io, c->total_bytes, c->uri, gavl_dictionary_get_string_i(&c->resp, "Content-Type"), flags); } } else goto fail; } else if(status == 304) // Not modified -> take from cache { const char * cache_file = gavl_dictionary_get_string(&c->cache_info, GAVL_HTTP_CACHE_FILE); check_keepalive(c); if(!gavl_read_file(cache_file, c->res_body)) { c->flags |= FLAG_ERROR; return -1; } gavl_dictionary_set_int(&c->cache_info, GAVL_HTTP_CACHE_UPDATED, 1); gavl_dictionary_set_long(&c->cache_info, GAVL_HTTP_CACHE_TIME, time(NULL)); /* Mimetype might not be in the response header */ gavl_dictionary_set_string(&c->resp, "Content-Type", gavl_dictionary_get_string(&c->cache_info, GAVL_META_MIMETYPE)); gavl_log(GAVL_LOG_INFO, LOG_DOMAIN, "Loading cache file %s after validation", cache_file); c->state = STATE_COMPLETE; return 1; } else if(status < 400) { char * new_uri = NULL; /* Redirection */ const char * location; if(c->num_redirections > 5) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Too many redirections: %d %s", status, gavl_http_response_get_status_str(&c->resp)); goto fail; } c->num_redirections++; location = gavl_dictionary_get_string_i(&c->resp, "Location"); if(location) { if(!c->real_uri) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Bug: Need to create an absolute uri but real_uri is not set"); goto fail; } new_uri = gavl_get_absolute_uri(location, c->real_uri); } else { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Location header missing, status %d %s", status, gavl_http_response_get_status_str(&c->resp)); goto fail; } if(c->redirect_uri) free(c->redirect_uri); gavl_log(GAVL_LOG_INFO, LOG_DOMAIN, "Got http redirection (%d) to %s", c->num_redirections, new_uri); c->redirect_uri = new_uri; c->real_uri = c->redirect_uri; c->flags |= FLAG_GOT_REDIRECTION; gavl_dictionary_set_string(gavl_io_info(c->io), GAVL_META_REAL_URI, c->real_uri); if(!(c->flags & FLAG_HAS_RESPONSE_BODY)) check_keepalive(c); } else { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Got HTTP error: %d %s", status, gavl_http_response_get_status_str(&c->resp)); gavl_dictionary_dump(&c->resp, 2); fprintf(stderr, "Request was:\n"); gavl_dictionary_dump(&c->req, 2); if(!(c->flags & FLAG_HAS_RESPONSE_BODY)) check_keepalive(c); // if(status == 416) // fprintf(stderr, "Blupp\n"); c->flags |= FLAG_ERROR; } ret = 1; fail: return ret; } void gavl_http_client_set_req_vars(gavl_io_t * io, const gavl_dictionary_t * vars) { gavl_http_client_t * c = gavl_io_get_priv(io); gavl_dictionary_reset(&c->vars); gavl_dictionary_copy(&c->vars, vars); } void gavl_http_client_set_request_body(gavl_io_t * io, gavl_buffer_t * buf) { gavl_http_client_t * c = gavl_io_get_priv(io); c->req_body = buf; } void gavl_http_client_set_response_body(gavl_io_t * io, gavl_buffer_t * buf) { gavl_http_client_t * c = gavl_io_get_priv(io); c->res_body = buf; } const gavl_dictionary_t * gavl_http_client_get_response(gavl_io_t * io) { gavl_http_client_t * c = gavl_io_get_priv(io); return &c->resp; } static int reopen(gavl_io_t * io) { int result; gavl_http_client_t * c = gavl_io_get_priv(io); c->real_uri = c->uri; while(1) { result = gavl_http_client_run_async_done(io, 3000); if(result < 0) return 0; else if(result > 0) return 1; } return 0; } int gavl_http_client_open(gavl_io_t * io, const char * method, const char * uri1) { int timeout = 10*1000; // 10 seconds int result; gavl_http_client_t * c = gavl_io_get_priv(io); c->flags &= ~FLAG_GOT_REDIRECTION; c->num_redirections = 0; gavl_io_clear_eof(io); gavl_io_clear_error(io); if(!gavl_http_client_run_async(io, method, uri1)) return 0; if(c->res_body) timeout = 10*60*1000; result = gavl_http_client_run_async_done(io, timeout); if(result > 0) return 1; else return 0; return 1; } int gavl_http_client_read_body(gavl_io_t * io, gavl_buffer_t * buf) { int ret = 0; int bytes_read; gavl_http_client_t * c = gavl_io_get_priv(io); if(c->flags & FLAG_CHUNKED) { while(1) { if(!read_chunk_length(c)) goto fail; if(c->chunk_length) { gavl_buffer_alloc(buf, buf->len + c->chunk_length + 1); bytes_read = gavl_io_read_data(c->io_int, buf->buf + buf->len, c->chunk_length); if(bytes_read < c->chunk_length) { /* Error */ goto fail; } buf->len += bytes_read; } if(!read_chunk_tail(c)) goto fail; if(!c->chunk_length) break; } } else if(c->total_bytes > 0) { gavl_buffer_alloc(buf, buf->len + c->total_bytes + 1); bytes_read = gavl_io_read_data(c->io_int, buf->buf + buf->len, c->total_bytes); if(bytes_read < c->total_bytes) { /* Error */ gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Got %d bytes, wanted %"PRId64, bytes_read, c->total_bytes); goto fail; } buf->len += bytes_read; } else { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Body has zero length"); goto fail; } ret = 1; fail: if(buf->buf) buf->buf[buf->len] = '\0'; if(!ret) { gavl_io_set_error(io); } return ret; } void gavl_http_client_set_range(gavl_io_t * io, int64_t start, int64_t end) { gavl_http_client_t * c = gavl_io_get_priv(io); // fprintf(stderr, "gavl_http_client_set_range %"PRId64" %"PRId64"\n", start, end); c->range_start = start; c->range_end = end; } int gavl_http_client_can_pause(gavl_io_t * io) { return gavl_io_can_seek(io); } void gavl_http_client_pause(gavl_io_t * io) { gavl_http_client_t * c = gavl_io_get_priv(io); // fprintf(stderr, "gavl_http_client_pause %"PRId64"\n", c->position); c->state = STATE_PAUSED; close_connection(c); // gavl_io_destroy(c->io_int); // c->io_int = NULL; } void gavl_http_client_resume(gavl_io_t * io) { gavl_http_client_t * c = gavl_io_get_priv(io); // fprintf(stderr, "gavl_http_client_resume %"PRId64"\n", c->position); /* Resume after seek */ if(c->state != STATE_PAUSED) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Cannot resume: client was not paused"); return; } gavl_http_client_set_range(io, c->position, -1); c->state = STATE_START; if(!reopen(io)) gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Re-opening failed"); // else // fprintf(stderr, "Re-opened %"PRId64"\n", c->position); } /* Asynchronous states */ static int send_buffer_async(gavl_io_t * io, gavl_buffer_t * buf, int timeout) { int result; // fprintf(stderr, "send_buffer_async 1 %d\n", timeout); if(buf->pos == buf->len) return 1; if((timeout > 0) && !gavl_io_can_write(io, timeout)) return 0; // fprintf(stderr, "send_buffer_async 2 %d\n", buf->len - buf->pos); result = gavl_io_write_data_nonblock(io, buf->buf + buf->pos, buf->len - buf->pos); if(result <= 0) { fprintf(stderr, "send_buffer_async result: %d, timeout was: %d, bytes: %d\n", result, timeout, buf->len - buf->pos); } if(result <= 0) return result; else { buf->pos += result; if(buf->pos == buf->len) return 1; } return 0; } int gavl_http_client_run_async(gavl_io_t * io, const char * method, const char * uri) { const char * cache_file; gavl_http_client_t * c = gavl_io_get_priv(io); /* Clear earlier redirections */ c->redirect_uri = gavl_strrep(c->redirect_uri, NULL); c->flags &= ~FLAG_GOT_REDIRECTION; if((c->range_start <= 0) && (c->range_end <= 0) && c->res_body && (cache_file = gavl_dictionary_get_string(&c->cache_info, GAVL_HTTP_CACHE_FILE))) { c->flags |= FLAG_HAS_CACHE; if(!access(cache_file, R_OK)) c->flags |= FLAG_HAS_CACHE_FILE; else c->flags &= ~FLAG_HAS_CACHE_FILE; } else c->flags &= ~(FLAG_HAS_CACHE|FLAG_HAS_CACHE_FILE); c->state = STATE_START; gavl_log(GAVL_LOG_DEBUG, LOG_DOMAIN, "Opening %s method: %s", uri, method); gavl_dictionary_reset(&c->vars_from_uri); gavl_dictionary_reset(&c->req); gavl_dictionary_reset(&c->resp); c->method = gavl_strrep(c->method, method); c->uri = gavl_strrep(c->uri, uri); c->uri = gavl_url_extract_http_vars(c->uri, &c->vars_from_uri); /* Needs to be set again after close_connection or reset_connection */ c->real_uri = c->uri; // fprintf(stderr, "gavl_http_client_run_async %s %s\n", c->uri, c->real_uri); return 1; } static int async_iteration(gavl_io_t * io, int timeout) { int result; gavl_http_client_t * c = gavl_io_get_priv(io); c->flags &= ~FLAG_WAIT; // fprintf(stderr, "gavl_http_client_run_async_done %d %d\n", c->state, c->chunk_header_buffer.len); /* Initialize */ if(c->state == STATE_START) { char * protocol = NULL; char * host = NULL; char * path = NULL; int port = -1; /* CACHE */ if(check_cache_nonvalidate(c) > 0) { c->state = STATE_COMPLETE; return (c->flags & FLAG_ERROR) ? -1 : 1; } if(!gavl_url_split(c->real_uri, &protocol, NULL, NULL, &host, &port, &path)) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Invalid URI: %s", c->real_uri); return -1; } if(!path) path = gavl_strdup("/"); if(!prepare_connection(io, host, port, protocol)) { if(protocol) free(protocol); if(host) free(host); if(path) free(path); return -1; } prepare_header(c, &c->req, host, port, path); if(protocol) free(protocol); if(host) free(host); if(path) free(path); if(!c->io_int) { /* Resolve */ if(c->flags & (FLAG_USE_PROXY | FLAG_USE_PROXY_TUNNEL)) gavl_socket_address_set_async(c->addr, c->proxy_host, c->proxy_port, SOCK_STREAM); else gavl_socket_address_set_async(c->addr, c->host, c->port, SOCK_STREAM); c->flags |= FLAG_WAIT; c->state = STATE_RESOLVE; return 0; } else { c->state = STATE_SEND_REQUEST; gavl_buffer_reset(&c->header_buffer); } } if(c->state == STATE_RESOLVE) { result = gavl_socket_address_set_async_done(c->addr, timeout); if(!result) c->flags |= FLAG_WAIT; if(result <= 0) return result; else { c->state = STATE_CONNECT; c->fd = gavl_socket_connect_inet(c->addr, 0); if(c->fd < 0) return -1; } c->flags |= FLAG_WAIT; return 0; } if(c->state == STATE_CONNECT) { result = gavl_socket_connect_inet_complete(c->fd, timeout); if(!result) { // fprintf(stderr, "Waiting for connection %d\n", timeout); c->flags |= FLAG_WAIT; return 0; } else if(result < 0) return result; if(c->flags & FLAG_USE_PROXY_TUNNEL) { gavl_dictionary_t req; gavl_dictionary_init(&req); c->io_proxy = gavl_io_create_socket(c->fd, 5000, 0); setup_connect_header(io, &req); #ifdef DUMP_HEADERS fprintf(stderr, "Sending connect command\n"); gavl_dictionary_dump(&req, 2); #endif // DUMP_HEADERS gavl_buffer_reset(&c->header_buffer); gavl_http_request_to_buffer(&req, &c->header_buffer); c->state = STATE_SEND_CONNECT_REQUEST; gavl_dictionary_free(&req); } else { gavl_buffer_reset(&c->header_buffer); if(c->flags & FLAG_USE_TLS) { c->io_int = gavl_io_create_tls_client_async(c->fd, c->host, GAVL_IO_SOCKET_DO_CLOSE); c->state = STATE_TLS_HANDSHAKE; } else { c->io_int = gavl_io_create_socket(c->fd, 5000, GAVL_IO_SOCKET_DO_CLOSE); c->state = STATE_SEND_REQUEST; } c->fd = -1; if(!c->io_int) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Could not create internal I/O handle"); return -1; } } } if(c->state == STATE_SEND_CONNECT_REQUEST) { result = send_buffer_async(c->io_proxy, &c->header_buffer, timeout); if(!result) c->flags |= FLAG_WAIT; if(result <= 0) return result; c->state = STATE_READ_CONNECT_RESPONSE; gavl_buffer_reset(&c->header_buffer); } if(c->state == STATE_READ_CONNECT_RESPONSE) { result = gavl_http_response_read_async(c->io_proxy, &c->header_buffer, &c->resp, timeout); if(!result) c->flags |= FLAG_WAIT; if(result <= 0) return result; gavl_io_destroy(c->io_proxy); c->io_proxy = NULL; #ifdef DUMP_HEADERS fprintf(stderr, "Got connect response\n"); gavl_dictionary_dump(&c->resp, 2); #endif // DUMP_HEADERS /* Check response status */ if(gavl_http_response_get_status_int(&c->resp) != 200) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Establishing proxy tunnel failed: %d %s", gavl_http_response_get_status_int(&c->resp), gavl_http_response_get_status_str(&c->resp)); gavl_dictionary_reset(&c->resp); return -1; } c->io_int = gavl_io_create_tls_client_async(c->fd, c->host, GAVL_IO_SOCKET_DO_CLOSE); c->state = STATE_TLS_HANDSHAKE; c->fd = -1; gavl_buffer_reset(&c->header_buffer); gavl_dictionary_reset(&c->resp); } if(c->state == STATE_TLS_HANDSHAKE) { result = gavl_io_create_tls_client_async_done(c->io_int, timeout); if(!result) c->flags |= FLAG_WAIT; if(result <= 0) return result; c->state = STATE_SEND_REQUEST; } if(c->state == STATE_SEND_REQUEST) { if(!c->header_buffer.len) { // Create request header gavl_http_request_to_buffer(&c->req, &c->header_buffer); #ifdef DUMP_HEADERS gavl_dprintf("Sending request %d\n", c->header_buffer.len); gavl_dictionary_dump(&c->req, 2); #endif } result = send_buffer_async(c->io_int, &c->header_buffer, timeout); // fprintf(stderr, "Got result: %d %d\n", result, c->header_buffer.len); if(!result) c->flags |= FLAG_WAIT; if(result <= 0) { if(result < 0) { if(c->flags & FLAG_USE_KEEPALIVE) { gavl_log(GAVL_LOG_WARNING, LOG_DOMAIN, "Keep-alive connection closed, reopening"); close_connection(c); c->state = STATE_START; return 0; } else gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Sending request failed"); } return result; } #ifdef DUMP_HEADERS gavl_dprintf("Sent request\n"); #endif gavl_buffer_reset(&c->header_buffer); if(c->req_body && c->req_body->len) c->state = STATE_SEND_BODY; else c->state = STATE_READ_RESPONSE; } if(c->state == STATE_SEND_BODY) { result = send_buffer_async(c->io_int, c->req_body, timeout); // fprintf(stderr, "Got result: %d %d\n", result, c->header_buffer.len); if(!result) c->flags |= FLAG_WAIT; if(result <= 0) { if(result < 0) gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Sending request body failed"); return result; } c->state = STATE_READ_RESPONSE; } if(c->state == STATE_READ_RESPONSE) { result = gavl_http_response_read_async(c->io_int, &c->header_buffer, &c->resp, timeout); if(!result) c->flags |= FLAG_WAIT; if(result <= 0) return result; #ifdef DUMP_HEADERS fprintf(stderr, "Got response\n"); gavl_dictionary_dump(&c->resp, 2); #endif if(!handle_response(io)) { return -1; } /* This is the case, e.g. if handle_response loaded the cache file already */ if(c->state == STATE_COMPLETE) { return 1; } /* Handle redirection */ if(c->flags & FLAG_GOT_REDIRECTION) { c->state = STATE_START; return 0; } if(!(c->flags & FLAG_HAS_RESPONSE_BODY)) { c->state = STATE_COMPLETE; check_keepalive(c); return (c->flags & FLAG_ERROR) ? -1 : 1; } if(c->res_body) gavl_buffer_reset(c->res_body); if(c->flags & FLAG_CHUNKED) { gavl_buffer_reset(&c->chunk_header_buffer); c->state = STATE_READ_CHUNK_HEADER; } else { c->state = STATE_READ_BODY_NORMAL; if(c->res_body) { if(c->total_bytes <= 0) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Cannot read body: No Content-Length given and no chunked encoding."); gavl_dictionary_dump(&c->resp, 2); return -1; } gavl_buffer_alloc(c->res_body, c->total_bytes); } } /* Body will be read with gavl_io_read_data() or gavl_io_read_data_nonblock() */ if(!c->res_body) return (c->flags & FLAG_ERROR) ? -1 : 1; // return 0; } if(c->state == STATE_READ_BODY_NORMAL) { /* Should never happen */ if(!c->res_body) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "BUG: Asynchronous reading requested but no buffer of the body given"); return -1; } if(timeout >= 0) { if(!gavl_io_can_read(c->io_int, timeout)) { if(!timeout) { c->flags |= FLAG_WAIT; return 0; } else { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Got read timeout"); return -1; } } } result = gavl_io_read_data_nonblock(c->io_int, c->res_body->buf + c->res_body->len, c->total_bytes - c->res_body->len); // fprintf(stderr, "Got result: %d %"PRId64" %d (timeout: %d)\n", result, c->total_bytes, c->res_body->len, timeout); if(!result && (timeout >= 0)) { return handle_remote_close(c); } else if(result < 0) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Reading data failed"); return -1; } c->res_body->len += result; if(c->res_body->len == c->total_bytes) { c->state = STATE_COMPLETE; c->flags |= FLAG_RESPONSE_BODY_DONE; check_keepalive(c); store_cache(c); return (c->flags & FLAG_ERROR) ? -1 : 1; } /* Not yet enough */ c->flags |= FLAG_WAIT; return 0; } if(c->state == STATE_READ_CHUNK_HEADER) { result = read_chunk_header_async(c, timeout); if(!result) c->flags |= FLAG_WAIT; if(result <= 0) return result; if(!c->chunk_length) { c->state = STATE_READ_CHUNK_TAIL; gavl_buffer_reset(&c->chunk_header_buffer); gavl_buffer_alloc(&c->chunk_header_buffer, 2); } else { c->state = STATE_READ_CHUNK; c->pos = 0; gavl_buffer_alloc(c->res_body, c->res_body->len + c->chunk_length); } } if(c->state == STATE_READ_CHUNK) { int tries = 0; if(!gavl_io_can_read(c->io_int, timeout)) { if(!timeout) { c->flags |= FLAG_WAIT; return 0; } else { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Read timeout"); return -1; } } while(1) { result = gavl_io_read_data_nonblock(c->io_int, c->res_body->buf + c->res_body->len, c->chunk_length - c->pos); // fprintf(stderr, "Read chunk %d %"PRId64" %"PRId64" %d\n", // c->chunk_length, c->pos, c->chunk_length - c->pos, result); if(!result) { if(!tries && (timeout >= 0)) return handle_remote_close(c); else c->flags |= FLAG_WAIT; } if(result <= 0) return result; c->res_body->len += result; c->pos += result; if(c->pos == c->chunk_length) { c->state = STATE_READ_CHUNK_TAIL; gavl_buffer_reset(&c->chunk_header_buffer); gavl_buffer_alloc(&c->chunk_header_buffer, 2); } tries++; } } if(c->state == STATE_READ_CHUNK_TAIL) { result = read_chunk_tail_async(c, timeout); if(!result) c->flags |= FLAG_WAIT; if(result <= 0) return result; if(!c->chunk_length) /* Tail after a zero length chunk: body finished */ { c->state = STATE_COMPLETE; c->flags |= FLAG_RESPONSE_BODY_DONE; check_keepalive(c); return (c->flags & FLAG_ERROR) ? -1 : 1; } else { gavl_buffer_reset(&c->chunk_header_buffer); c->state = STATE_READ_CHUNK_HEADER; return 0; } } if(c->state == STATE_COMPLETE) { // fprintf(stderr, "async_iteration done %d\n", !!(c->flags & FLAG_ERROR)); return (c->flags & FLAG_ERROR) ? -1 : 1; } gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Unknown state %d", c->state); /* Unknown state */ return -1; } int gavl_http_client_run_async_done(gavl_io_t * io, int timeout) { int result; gavl_time_t timeout_remaining = 0; gavl_time_t time_cur; gavl_http_client_t * c = gavl_io_get_priv(io); // fprintf(stderr, "gavl_http_client_run_async_done %d\n", c->state); if(timeout > 0) { if(!c->timer) c->timer = gavl_timer_create(); timeout_remaining = (int64_t)timeout * 1000; gavl_timer_start(c->timer); } while(1) { result = async_iteration(io, timeout_remaining / 1000); if(!result) { /* Waiting for socket */ if(!timeout && (c->flags & FLAG_WAIT)) return 0; if(timeout > 0) { time_cur = gavl_timer_get(c->timer); timeout_remaining = (int64_t)timeout * 1000 - time_cur; if(timeout_remaining <= 0) return 0; } } else return result; } return 0; } #if defined(__GNUC__) && defined(__ELF__) static void cleanup_proxies() __attribute__ ((destructor)); static void cleanup_proxies() { if(http_proxy) free(http_proxy); if(https_proxy) free(https_proxy); gavl_array_free(&no_proxy); } #endif bplaum-gavl-b9385e3/gavl/hw.c000066400000000000000000000412711513252040200157770ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include #include #include #include #define LOG_DOMAIN "hw_context" #include #include static void ensure_formats(gavl_hw_context_t * ret) { if(ret->image_formats_map || ret->image_formats_transfer) return; if(ret->funcs->get_image_formats) { ret->image_formats_map = ret->funcs->get_image_formats(ret, GAVL_HW_FRAME_MODE_MAP); ret->image_formats_transfer = ret->funcs->get_image_formats(ret, GAVL_HW_FRAME_MODE_TRANSFER); } } gavl_hw_context_t * gavl_hw_context_create_internal(void * native, const gavl_hw_funcs_t * funcs, gavl_hw_type_t type, int support_flags) { gavl_hw_context_t * ret = calloc(1, sizeof(*ret)); ret->type = type; ret->native = native; ret->funcs = funcs; ret->support_flags = support_flags; return ret; } int gavl_hw_ctx_get_support_flags(gavl_hw_context_t * ctx) { return ctx->support_flags; } void gavl_hw_ctx_resync(gavl_hw_context_t * ctx) { gavl_hw_frame_pool_reset(ctx, &ctx->imported, 0); } void gavl_hw_ctx_reset(gavl_hw_context_t * ctx) { gavl_hw_frame_pool_reset(ctx, &ctx->imported, 0); gavl_hw_frame_pool_reset(ctx, &ctx->created, 1); if(ctx->image_formats_map) { free(ctx->image_formats_map); ctx->image_formats_map = NULL; } if(ctx->image_formats_transfer) { free(ctx->image_formats_transfer); ctx->image_formats_transfer = NULL; } // get_formats(ctx); } void gavl_hw_ctx_destroy(gavl_hw_context_t * ctx) { gavl_hw_ctx_reset(ctx); if(ctx->funcs->destroy_native) ctx->funcs->destroy_native(ctx->native); if(ctx->image_formats_map) free(ctx->image_formats_map); if(ctx->image_formats_transfer) free(ctx->image_formats_transfer); free(ctx); } #if 0 static gavl_pixelformat_t * copy_pfmt_arr(const gavl_pixelformat_t * pfmts) { int num = 0; gavl_pixelformat_t * ret; while(pfmts[num] != GAVL_PIXELFORMAT_NONE) num++; ret = malloc((num+1)*sizeof(*ret)); num = 0; while(pfmts[num] != GAVL_PIXELFORMAT_NONE) { ret[num] = pfmts[num]; num++; } ret[num] = GAVL_PIXELFORMAT_NONE; return ret; } #endif const gavl_pixelformat_t * gavl_hw_ctx_get_image_formats(gavl_hw_context_t * ctx, gavl_hw_frame_mode_t mode) { ensure_formats(ctx); switch(mode) { case GAVL_HW_FRAME_MODE_MAP: return ctx->image_formats_map; break; case GAVL_HW_FRAME_MODE_TRANSFER: return ctx->image_formats_transfer; break; default: break; } return NULL; } void gavl_hw_video_format_adjust(gavl_hw_context_t * ctx, gavl_video_format_t * fmt, gavl_hw_frame_mode_t mode) { if(ctx->funcs->get_image_formats) fmt->pixelformat = gavl_pixelformat_get_best(fmt->pixelformat, gavl_hw_ctx_get_image_formats(ctx, mode), NULL); if(ctx->funcs->video_format_adjust) ctx->funcs->video_format_adjust(ctx, fmt, mode); } /* Create a video frame. The frame will be a reference for a hardware surface */ gavl_video_frame_t * gavl_hw_video_frame_create(gavl_hw_context_t * ctx, int alloc_resource) { gavl_video_frame_t * ret; if(ctx->funcs->video_frame_create) ret = ctx->funcs->video_frame_create(ctx, alloc_resource); else ret = gavl_video_frame_create(alloc_resource ? &ctx->vfmt : NULL); ret->hwctx = ctx; return ret; } /* Load a video frame from RAM into the hardware */ int gavl_video_frame_ram_to_hw(gavl_video_frame_t * dst, gavl_video_frame_t * src) { gavl_hw_context_t * ctx = dst->hwctx; gavl_video_frame_copy_metadata(dst, src); if(ctx->funcs->video_frame_to_hw) return ctx->funcs->video_frame_to_hw(dst, src); else if(ctx->funcs->video_frame_map) { ctx->funcs->video_frame_map(dst, 1); gavl_video_frame_copy(&ctx->vfmt, dst, src); if(ctx->funcs->video_frame_unmap) ctx->funcs->video_frame_unmap(dst); return 1; } else return 0; } /* Load a video frame from the hardware into RAM */ int gavl_video_frame_hw_to_ram(gavl_video_frame_t * dst, gavl_video_frame_t * src) { gavl_hw_context_t * ctx = src->hwctx; gavl_video_frame_copy_metadata(dst, src); if(ctx->funcs->video_frame_map) { ctx->funcs->video_frame_map(src, 0); gavl_video_frame_copy(&ctx->vfmt, dst, src); if(ctx->funcs->video_frame_unmap) ctx->funcs->video_frame_unmap(src); return 1; } else if(ctx->funcs->video_frame_to_ram) { ctx->funcs->video_frame_to_ram(dst, src); return 1; } else if(src->planes[0]) { gavl_video_frame_copy(&ctx->vfmt, dst, src); return 1; } else return 0; } void gavl_hw_destroy_video_frame(gavl_hw_context_t * ctx, gavl_video_frame_t * frame, int destroy_resource) { if(frame->client_data) { /* Free refcounter */ } if(ctx->funcs->video_frame_destroy) ctx->funcs->video_frame_destroy(frame, destroy_resource); else { frame->hwctx = NULL; gavl_video_frame_destroy(frame); } } gavl_hw_type_t gavl_hw_ctx_get_type(const gavl_hw_context_t * ctx) { return ctx->type; } static const struct { gavl_hw_type_t type; const char * name; const char * id; } types[] = { { GAVL_HW_VAAPI, "vaapi", "vaapi" }, // EGL Texture (associated with X11 connection) { GAVL_HW_EGL_GL, "Opengl Texture (EGL)", "gl" }, // EGL Texture (associated with X11 connection) { GAVL_HW_EGL_GLES, "Opengl ES Texture (EGL)", "gles" }, // V4L2 buffers (mmap()ed, optionally also with DMA handles) { GAVL_HW_V4L2_BUFFER, "V4L2 Buffer", "v4l2" }, // DMA handles, can be exported by V4L and im- and exported by OpenGL and also mmapped to userspace { GAVL_HW_DMABUFFER, "DMA Buffer", "dmabuf" }, // Shared memory, which can be sent to other processes { GAVL_HW_SHM, "Shared Memory", "shm" }, // libdrm Can be allocated on the graphics card and connverted to an OpenGL texture via dmabuf { GAVL_HW_NONE, "RAM", "ram" }, { /* End */ }, }; const char * gavl_hw_type_to_string(gavl_hw_type_t type) { int i = 0; while(types[i].name) { if(types[i].type == type) return types[i].name; i++; } return NULL; } const char * gavl_hw_type_to_id(gavl_hw_type_t type) { int i = 0; while(types[i].name) { if(types[i].type == type) return types[i].id; i++; } return NULL; } gavl_hw_type_t gavl_hw_type_from_id(const char * id) { int i = 0; while(types[i].name) { if(!strcmp(types[i].id, id)) return types[i].type; i++; } return 0; } int gavl_hw_ctx_can_export(gavl_hw_context_t * ctx, const gavl_hw_context_t * to) { if(ctx->funcs->can_export && ctx->funcs->can_export(ctx, to)) return 1; else return 0; } int gavl_hw_ctx_can_import(gavl_hw_context_t * ctx, const gavl_hw_context_t * from) { if(ctx->funcs->can_import && ctx->funcs->can_import(ctx, from)) return 1; else return 0; } gavl_video_frame_t * gavl_hw_ctx_get_imported_vframe(gavl_hw_context_t * ctx, int buf_idx) { if(ctx->imported.num_frames > buf_idx) return ctx->imported.frames[buf_idx]; else return NULL; } gavl_video_frame_t * gavl_hw_ctx_create_import_vframe(gavl_hw_context_t * ctx, int buf_idx) { gavl_video_frame_t * f = gavl_hw_video_frame_create(ctx, 0); if(!gavl_hw_frame_pool_add(&ctx->imported, f, buf_idx)) { gavl_hw_destroy_video_frame(ctx, f, 0); return NULL; } f->buf_idx = buf_idx; return f; } /* ctx1 exports frame to ctx2 */ static int export_frame(gavl_hw_context_t * ctx1, gavl_hw_context_t * ctx2, gavl_video_frame_t * src, gavl_video_frame_t ** dst, const gavl_video_format_t * fmt) { *dst = gavl_hw_ctx_create_import_vframe(ctx2, src->buf_idx); return ctx1->funcs->export_video_frame(fmt, src, *dst); } /* ctx2 imports frame from ctx1 */ static int import_frame(gavl_hw_context_t * ctx1, gavl_hw_context_t * ctx2, gavl_video_frame_t * src, gavl_video_frame_t ** dst, const gavl_video_format_t * fmt) { if(!*dst) *dst = gavl_hw_ctx_create_import_vframe(ctx2, src->buf_idx); return ctx2->funcs->import_video_frame(fmt, src, *dst); } int gavl_hw_ctx_transfer_video_frame(gavl_video_frame_t * frame1, gavl_hw_context_t * ctx2, gavl_video_frame_t ** frame2, const gavl_video_format_t * fmt) { int ret; gavl_hw_context_t * ctx1 = frame1->hwctx; // gavl_hw_type_t t = gavl_hw_ctx_get_type(ctx1); // fprintf(stderr, "Transfer video frame: %p %p %p\n", frame1, frame1->hwctx, *frame2); if((frame1->buf_idx < 0) && !(*frame2)) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Cannot transfer video frame (need buf_idx)"); return 0; } if(!(*frame2)) { if((*frame2 = gavl_hw_ctx_get_imported_vframe(ctx2, frame1->buf_idx))) { gavl_video_frame_copy_metadata(*frame2, frame1); return 1; } } if(gavl_hw_ctx_can_import(ctx2, ctx1)) { ret = import_frame(ctx1, ctx2, frame1, frame2, fmt); if(frame1 && *frame2) { gavl_video_frame_copy_metadata(*frame2, frame1); (*frame2)->buf_idx = frame1->buf_idx; } return ret; } // t = gavl_hw_ctx_get_type(ctx2); if(gavl_hw_ctx_can_export(ctx1, ctx2)) { ret = export_frame(ctx1, ctx2, frame1, frame2, fmt); if(frame1 && *frame2) { gavl_video_frame_copy_metadata(*frame2, frame1); (*frame2)->buf_idx = frame1->buf_idx; } return ret; } gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Cannot transfer video frame"); return 0; } void gavl_hw_ctx_set_video(gavl_hw_context_t * ctx, gavl_video_format_t * fmt, gavl_hw_frame_mode_t mode) { ctx->mode = mode; if(mode != GAVL_HW_FRAME_MODE_IMPORT) gavl_hw_video_format_adjust(ctx, fmt, mode); gavl_video_format_copy(&ctx->vfmt, fmt); fmt->hwctx = ctx; } int gavl_hw_supported(gavl_hw_type_t type) { switch(type) { case GAVL_HW_NONE: // Frames in RAM return 1; break; case GAVL_HW_EGL_GL: // EGL Texture case GAVL_HW_EGL_GLES: // EGL Texture #ifdef HAVE_EGL return 1; #endif case GAVL_HW_VAAPI: #ifdef HAVE_LIBVA return 1; #endif break; case GAVL_HW_V4L2_BUFFER: // V4L2 buffers (mmapped) #ifdef HAVE_V4L2 return 1; #endif break; case GAVL_HW_DMABUFFER: // DMA handles, can be exported by V4L and im- and exported by OpenGL #ifdef HAVE_DRM return 1; #endif break; case GAVL_HW_SHM: // Shared memory, which can be sent to other processes return 1; break; break; } return 0; } /* Frame pool */ int gavl_hw_video_frame_refcount(gavl_video_frame_t * f) { int * rc; if(!f->client_data) return -1; rc = f->client_data; return *rc; } void gavl_hw_video_frame_ref(gavl_video_frame_t * f) { int * rc; if(!f->hwctx) return; if(!f->client_data) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "gavl_hw_video_frame_ref called with no client data set"); return; } rc = f->client_data; (*rc)++; } void gavl_hw_video_frame_unref(gavl_video_frame_t * f) { int * rc; if(!f->hwctx) return; if(!f->client_data) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "gavl_hw_video_frame_unref called with no client data set"); return; } rc = f->client_data; (*rc)--; } gavl_video_frame_t * gavl_hw_video_frame_get(gavl_hw_context_t * ctx) { int i; gavl_video_frame_t * f; // fprintf(stderr, "gavl_hw_video_frame_get: %d\n", ctx->created.num_frames); for(i = 0; i < ctx->created.num_frames; i++) { f = ctx->created.frames[i]; if(!gavl_hw_video_frame_refcount(f)) { // fprintf(stderr, "gavl_hw_video_frame_get: reusing frame\n"); gavl_hw_video_frame_ref(f); return f; } } f = gavl_hw_video_frame_create(ctx, 1); /* Refcounter */ f->client_data = calloc(1, sizeof(int)); gavl_hw_frame_pool_add(&ctx->created, f, -1); f->buf_idx = ctx->created.num_frames-1; /* Add a reference which, is passed to the caller */ gavl_hw_video_frame_ref(f); gavl_hw_video_frame_map(f, 1); // fprintf(stderr, "gavl_hw_video_frame_get: creating frame\n"); return f; } int gavl_hw_frame_pool_add(frame_pool_t * pool, void * frame, int idx) { if(idx < 0) { if(pool->num_frames == pool->frames_alloc) { pool->frames_alloc += 16; pool->frames = realloc(pool->frames, sizeof(*pool->frames) * pool->frames_alloc); memset(pool->frames + pool->num_frames, 0, (pool->frames_alloc - pool->num_frames)*sizeof(*pool->frames)); } pool->frames[pool->num_frames] = frame; pool->num_frames++; } else { if(idx - pool->frames_alloc > 16) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Not importing video frame (buffer index %d too large)", idx); return 0; } if(idx >= pool->frames_alloc) { pool->frames_alloc = idx + 16; pool->frames = realloc(pool->frames, pool->frames_alloc * sizeof(*pool->frames)); memset(pool->frames + pool->num_frames, 0, (pool->frames_alloc - pool->num_frames)*sizeof(*pool->frames)); pool->num_frames = pool->frames_alloc; } pool->frames[idx] = frame; } return 1; } void gavl_hw_frame_pool_reset(gavl_hw_context_t * ctx, frame_pool_t * pool, int free_resources) { int i; gavl_video_frame_t * vf; for(i = 0; i < pool->num_frames; i++) { vf = pool->frames[i]; if(vf) { if(vf->client_data) { free(vf->client_data); vf->client_data = NULL; } gavl_hw_destroy_video_frame(ctx, vf, free_resources); } } if(pool->frames) free(pool->frames); memset(pool, 0, sizeof(*pool)); } /* Store / Load */ void gavl_hw_ctx_store(gavl_hw_context_t * ctx, gavl_dictionary_t * dict) { } gavl_hw_context_t * gavl_hw_ctx_load(const gavl_dictionary_t * dict) { return NULL; } int gavl_hw_video_frame_map(gavl_video_frame_t * frame, int wr) { if(!frame->hwctx) return 1; if(!(frame->hwctx->support_flags & GAVL_HW_SUPPORTS_VIDEO_MAP)) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Cannot map frame: Not supported by context"); return 0; } if(!frame->hwctx->funcs->video_frame_map) return 0; return frame->hwctx->funcs->video_frame_map(frame, wr); } int gavl_hw_video_frame_unmap(gavl_video_frame_t * frame) { if(!frame->hwctx) return 1; if(!(frame->hwctx->support_flags & GAVL_HW_SUPPORTS_VIDEO_MAP)) return 0; if(!frame->hwctx->funcs->video_frame_unmap) return 0; return frame->hwctx->funcs->video_frame_unmap(frame); } gavl_hw_context_t * gavl_hw_ctx_create(gavl_hw_type_t type) { gavl_hw_context_t * ret = NULL; switch(type) { case GAVL_HW_DMABUFFER: ret = gavl_hw_ctx_create_dma(); break; case GAVL_HW_SHM: ret = gavl_hw_ctx_create_shm(); break; default: break; } if(!ret) gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "gavl_hw_ctx_create is not supported for %s", gavl_hw_type_to_string(type)); return ret; } bplaum-gavl-b9385e3/gavl/hw_dmabuf.c000066400000000000000000000674401513252040200173230ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #define _GNU_SOURCE #include #include #include // close() #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #define LOG_DOMAIN "dmabuf" #ifdef HAVE_DRM #include #include // #define DUMP_DEVICE_INFO #ifdef HAVE_LINUX_DMA_BUF_H #include #endif #ifdef HAVE_LINUX_DMA_HEAP_H #include #endif #ifdef DUMP_DEVICE_INFO static void print_drm_info(int fd); #endif static uint32_t fourcc_from_gavl(gavl_hw_context_t * ctx, gavl_pixelformat_t pfmt, int * flags); #define BPP_8 (1<<0) #define BPP_16 (1<<1) #define BPP_24 (1<<2) #define BPP_32 (1<<3) #define BPP_64 (1<<4) #define BPP_ALL 0xffffffff typedef struct { char * heap_device; char * drm_device; uint32_t * supported_formats; gavl_dsp_context_t * dsp; int drm_fd; uint32_t bpp_supported; } dma_native_t; static const struct { uint32_t drm_fourcc; gavl_pixelformat_t pfmt; int flags; int drm_indices[4]; } drm_formats[] = { { DRM_FORMAT_RGB888, GAVL_RGB_24 }, { DRM_FORMAT_BGR888, GAVL_BGR_24 }, { DRM_FORMAT_RGBA8888, GAVL_RGBA_32 }, { DRM_FORMAT_RGB565, GAVL_RGB_16 }, { DRM_FORMAT_YUYV, GAVL_YUY2 }, { DRM_FORMAT_UYVY, GAVL_UYVY }, { DRM_FORMAT_YUV411, GAVL_YUV_411_P }, { DRM_FORMAT_YVU411, GAVL_YUV_411_P, GAVL_DMABUF_FLAG_SWAP_CHROMA }, { DRM_FORMAT_YUV420, GAVL_YUV_420_P }, { DRM_FORMAT_YVU420, GAVL_YUV_420_P, GAVL_DMABUF_FLAG_SWAP_CHROMA }, { DRM_FORMAT_YUV410, GAVL_YUV_410_P }, { DRM_FORMAT_YVU410, GAVL_YUV_410_P, GAVL_DMABUF_FLAG_SWAP_CHROMA }, { DRM_FORMAT_YUV422, GAVL_YUV_422_P }, { DRM_FORMAT_YVU422, GAVL_YUV_422_P, GAVL_DMABUF_FLAG_SWAP_CHROMA }, { DRM_FORMAT_YUV444, GAVL_YUV_444_P }, { DRM_FORMAT_YVU444, GAVL_YUV_444_P, GAVL_DMABUF_FLAG_SWAP_CHROMA }, { DRM_FORMAT_YUV420, GAVL_YUVJ_420_P }, { DRM_FORMAT_YVU420, GAVL_YUVJ_420_P, GAVL_DMABUF_FLAG_SWAP_CHROMA }, { DRM_FORMAT_YUV422, GAVL_YUVJ_422_P }, { DRM_FORMAT_YVU422, GAVL_YUVJ_422_P, GAVL_DMABUF_FLAG_SWAP_CHROMA }, { DRM_FORMAT_YUV444, GAVL_YUVJ_444_P }, { DRM_FORMAT_YVU444, GAVL_YUVJ_444_P, GAVL_DMABUF_FLAG_SWAP_CHROMA }, /* * Creating Image failed 00003009 * [glvideo] Transferring dmabuf to EGL failed */ { DRM_FORMAT_ARGB16161616, GAVL_RGBA_64, GAVL_DMABUF_FLAG_SHUFFLE, { 2, 1, 0, 3 } }, // { DRM_FORMAT_ABGR16161616, GAVL_RGBA_64, GAVL_DMABUF_FLAG_SHUFFLE, { 3, 2, 1, 0 } }, { DRM_FORMAT_ABGR16161616, GAVL_RGBA_64 }, { DRM_FORMAT_ARGB8888, GAVL_RGBA_32, GAVL_DMABUF_FLAG_SHUFFLE, { 2, 1, 0, 3 } }, { DRM_FORMAT_ABGR8888, GAVL_RGBA_32 }, { DRM_FORMAT_XRGB8888, GAVL_BGR_32 }, { DRM_FORMAT_XBGR8888, GAVL_RGB_32 }, { DRM_FORMAT_XRGB8888, GAVL_RGB_32, GAVL_DMABUF_FLAG_SHUFFLE, { 2, 1, 0, 3 } }, { DRM_FORMAT_XBGR8888, GAVL_BGR_32, GAVL_DMABUF_FLAG_SHUFFLE, { 2, 1, 0, 3 } }, /* Byte order on the wire: VUYA */ { DRM_FORMAT_AYUV, GAVL_YUVA_32, GAVL_DMABUF_FLAG_SHUFFLE, { 2, 1, 0, 3 } }, { DRM_FORMAT_AVUY8888, GAVL_YUVA_32, GAVL_DMABUF_FLAG_SHUFFLE, { 3, 2, 1, 0 } }, // TODO: Check byte order /* [63:0] A:Cr:Y:Cb 16:16:16:16 little endian */ { DRM_FORMAT_Y416, GAVL_YUVA_64, GAVL_DMABUF_FLAG_SHUFFLE, { 1, 0, 2, 3 } }, // TODO: Check word order /* Red formats need shader support */ { DRM_FORMAT_R8, GAVL_GRAY_8, }, { DRM_FORMAT_R16, GAVL_GRAY_16, }, { DRM_FORMAT_GR88, GAVL_GRAYA_16, }, { DRM_FORMAT_GR1616, GAVL_GRAYA_32, }, { DRM_FORMAT_RG88, GAVL_GRAYA_16, }, { DRM_FORMAT_RG1616, GAVL_GRAYA_32, }, { /* */ } }; #if 1 static uint32_t fourcc_from_gavl(gavl_hw_context_t * ctx, gavl_pixelformat_t pfmt, int * flags) { int i = 0; dma_native_t * native = ctx->native; while(drm_formats[i].drm_fourcc) { if(drm_formats[i].pfmt != pfmt) { i++; continue; } /* Check if it is actually supported */ if(native->supported_formats) { int j = 0; while(native->supported_formats[j]) { if(native->supported_formats[j] == drm_formats[i].drm_fourcc) break; j++; } if(!native->supported_formats[j]) { i++; continue; } } if(gavl_hw_ctx_dma_get_frame_mode(drm_formats[i].drm_fourcc) == ctx->mode) { if(flags) *flags = drm_formats[i].flags; return drm_formats[i].drm_fourcc; } #if 0 if(ctx->mode == GAVL_HW_FRAME_MODE_MAP) return drm_formats[i].drm_fourcc; if(ctx->mode == GAVL_HW_FRAME_MODE_TRANSFER) { if(drm_formats[i].flags & GAVL_DMABUF_FLAG_SHUFFLE) return drm_formats[i].drm_fourcc; } else if(ctx->mode == GAVL_HW_FRAME_MODE_MAP) { if(!(drm_formats[i].flags & GAVL_DMABUF_FLAG_SHUFFLE)) return drm_formats[i].drm_fourcc; } #endif i++; } return 0; } #endif gavl_pixelformat_t gavl_drm_pixelformat_from_fourcc(uint32_t fourcc, int * flags, int * drm_indices) { int i = 0; while(drm_formats[i].drm_fourcc) { if(drm_formats[i].drm_fourcc == fourcc) { if(flags) *flags = drm_formats[i].flags; if(drm_indices) memcpy(drm_indices, drm_formats[i].drm_indices, sizeof(drm_formats[i].drm_indices)); return drm_formats[i].pfmt; } i++; } return GAVL_PIXELFORMAT_NONE; } static int video_frame_map_dmabuf(gavl_video_frame_t * f, int wr) { int i; #ifdef HAVE_LINUX_DMA_BUF_H struct dma_buf_sync sync; #endif dma_native_t * native = f->hwctx->native; gavl_dmabuf_video_frame_t *dmabuf = f->storage; dmabuf->wr = wr; /* Map the buffers. We'll keep this even if unmap is called */ if(!f->planes[0]) { int prot = PROT_READ; int fd; if(wr) prot |= PROT_WRITE; for(i = 0; i < dmabuf->num_buffers; i++) { if(dmabuf->buffers[i].drm_handle >= 0) fd = native->drm_fd; else fd = dmabuf->buffers[i].fd; dmabuf->buffers[i].map_ptr = mmap(NULL, dmabuf->buffers[i].map_len, prot, MAP_SHARED, fd, dmabuf->buffers[i].map_offset); if(dmabuf->buffers[i].map_ptr == MAP_FAILED) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Memory mmapping failed: %s", strerror(errno)); return 0; } } for(i = 0; i < dmabuf->num_planes; i++) { /* Set plane pointer */ f->strides[i] = dmabuf->planes[i].stride; f->planes[i] = dmabuf->buffers[dmabuf->planes[i].buf_idx].map_ptr + dmabuf->planes[i].offset; } } #ifdef HAVE_LINUX_DMA_BUF_H sync.flags = DMA_BUF_SYNC_START|DMA_BUF_SYNC_READ; if(wr) sync.flags |= DMA_BUF_SYNC_WRITE; for(i = 0; i < dmabuf->num_buffers; i++) ioctl(dmabuf->buffers[i].fd, DMA_BUF_IOCTL_SYNC, &sync); #endif return 1; } static int video_frame_unmap_dmabuf(gavl_video_frame_t * f) { int i; gavl_dmabuf_video_frame_t *dmabuf = f->storage; #ifdef HAVE_LINUX_DMA_BUF_H struct dma_buf_sync sync; sync.flags = DMA_BUF_SYNC_END|DMA_BUF_SYNC_READ; if(dmabuf->wr) sync.flags |= DMA_BUF_SYNC_WRITE; #endif for(i = 0; i < dmabuf->num_buffers; i++) { #ifdef __aarch64__ /* Flush cache synchronously */ if(dmabuf->buffers[i].map_ptr) __builtin___clear_cache(dmabuf->buffers[i].map_ptr, dmabuf->buffers[i].map_ptr + dmabuf->buffers[i].map_len); #endif #ifdef HAVE_LINUX_DMA_BUF_H for(i = 0; i < dmabuf->num_buffers; i++) ioctl(dmabuf->buffers[i].fd, DMA_BUF_IOCTL_SYNC, &sync); #endif } dmabuf->wr = 0; return 1; } static void swap_chroma(gavl_video_frame_t * frame) { uint8_t * swp = frame->planes[1]; frame->planes[1] = frame->planes[2]; frame->planes[2] = swp; } #ifdef HAVE_LINUX_DMA_HEAP_H static int alloc_cma(gavl_hw_context_t * ctx, gavl_video_frame_t * ret) { int i; int heap_fd; dma_native_t * native = ctx->native; struct dma_heap_allocation_data heap_data; int offsets[GAVL_MAX_PLANES]; int size; int flags = 0; gavl_dmabuf_video_frame_t *f = ret->storage; f->fourcc = fourcc_from_gavl(ctx, ctx->vfmt.pixelformat, &flags); gavl_video_format_get_frame_layout(&ctx->vfmt, offsets, ret->strides, &size, 0); memset(&heap_data, 0, sizeof(heap_data)); heap_data.len = size; heap_data.fd_flags = O_RDWR | O_CLOEXEC; if((heap_fd = open(native->heap_device, O_RDONLY | O_CLOEXEC)) < 0) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Opening %s failed: %s", native->heap_device, strerror(errno)); goto fail; } if(ioctl(heap_fd, DMA_HEAP_IOCTL_ALLOC, &heap_data) < 0) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Allocating %d bytes from %s failed: %s", size, native->heap_device, strerror(errno)); goto fail; } close(heap_fd); f->buffers[0].fd = heap_data.fd; f->buffers[0].map_len = size; f->num_buffers = 1; f->num_planes = gavl_pixelformat_num_planes(ctx->vfmt.pixelformat); for(i = 0; i < f->num_planes; i++) { f->planes[i].buf_idx = 0; f->planes[i].offset = offsets[i]; f->planes[i].stride = ret->strides[i]; } if(!(flags & GAVL_DMABUF_FLAG_SWAP_CHROMA)) swap_chroma(ret); return 1; fail: return 0; } #endif static int get_bpp(gavl_pixelformat_t pfmt) { if(gavl_pixelformat_num_planes(pfmt) > 1) return gavl_pixelformat_bytes_per_component(pfmt) * 8; else return gavl_pixelformat_bytes_per_pixel(pfmt) * 8; } static int alloc_drm(gavl_hw_context_t * ctx, gavl_video_frame_t * ret) { int i; gavl_dmabuf_video_frame_t *f = ret->storage; dma_native_t * native = ctx->native; struct drm_mode_create_dumb create_struct; struct drm_mode_map_dumb map_struct; struct drm_prime_handle prime; int flags = 0; #define INIT(s) memset(&s, 0, sizeof(s)) INIT(create_struct); INIT(map_struct); INIT(prime); create_struct.width = ctx->vfmt.frame_width; create_struct.height = ctx->vfmt.frame_height; f->fourcc = fourcc_from_gavl(ctx, ctx->vfmt.pixelformat, &flags); f->num_planes = gavl_pixelformat_num_planes(ctx->vfmt.pixelformat); f->num_buffers = f->num_planes; if(native->drm_fd < 0) { native->drm_fd = open(native->drm_device, O_RDWR); } create_struct.bpp = get_bpp(ctx->vfmt.pixelformat); for(i = 0; i < f->num_planes; i++) { if(i == 1) { int sub_h, sub_v; gavl_pixelformat_chroma_sub(ctx->vfmt.pixelformat, &sub_h, &sub_v); create_struct.width /= sub_h; create_struct.height /= sub_v; } if(drmIoctl(native->drm_fd, DRM_IOCTL_MODE_CREATE_DUMB, &create_struct) < 0) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "DRM_IOCTL_MODE_CREATE_DUMB failed: %s", strerror(errno)); } map_struct.handle = create_struct.handle; if(drmIoctl(native->drm_fd, DRM_IOCTL_MODE_MAP_DUMB, &map_struct) < 0) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "DRM_IOCTL_MODE_MAP_DUMB failed: %s", strerror(errno)); } f->buffers[i].drm_handle = create_struct.handle; f->planes[i].stride = create_struct.pitch; f->buffers[i].map_len = create_struct.size; f->buffers[i].map_offset = map_struct.offset; prime.handle = create_struct.handle; prime.flags = DRM_CLOEXEC | DRM_RDWR; if(drmIoctl(native->drm_fd, DRM_IOCTL_PRIME_HANDLE_TO_FD, &prime) < 0) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "DRM_IOCTL_PRIME_HANDLE_TO_FD failed: %s", strerror(errno)); } f->planes[i].buf_idx = i; f->buffers[i].fd = prime.fd; } if(flags & GAVL_DMABUF_FLAG_SWAP_CHROMA) swap_chroma(ret); return 1; } static gavl_video_frame_t * video_frame_create_hw_dmabuf(gavl_hw_context_t * ctx, int alloc_resources) { gavl_video_frame_t * ret; gavl_dmabuf_video_frame_t *f = calloc(1, sizeof(*f)); int i; dma_native_t * native = ctx->native; for(i = 0; i < GAVL_MAX_PLANES; i++) { f->buffers[i].fd = -1; f->buffers[i].drm_handle = -1; } ret = gavl_video_frame_create(NULL); ret->storage = f; if(alloc_resources) { #ifdef HAVE_LINUX_DMA_HEAP_H if(native->heap_device) { /* Error */ if(!alloc_cma(ctx, ret)) goto fail; } else #endif if(native->drm_device) { /* Error */ if(!alloc_drm(ctx, ret)) goto fail; } else { /* Error */ gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Neither cma nor drm buffers can be allocated"); goto fail; } } return ret; fail: gavl_video_frame_destroy(ret); return NULL; } static void video_frame_destroy_hw_dmabuf(gavl_video_frame_t * f, int destroy_resources) { dma_native_t * native = f->hwctx->native; if(f->storage) { int i; gavl_dmabuf_video_frame_t * info; video_frame_unmap_dmabuf(f); info = f->storage; for(i = 0; i < GAVL_MAX_PLANES; i++) { if(info->buffers[i].map_ptr) munmap(info->buffers[i].map_ptr, info->buffers[i].map_len); /* Even imported dma-bufs must be closed */ if(info->buffers[i].fd >= 0) close(info->buffers[i].fd); if(destroy_resources) { struct drm_mode_destroy_dumb destroy; if(info->buffers[i].drm_handle > 0) { destroy.handle = info->buffers[i].drm_handle; drmIoctl(native->drm_fd, DRM_IOCTL_MODE_DESTROY_DUMB, &destroy); } } } free(info); } f->hwctx = NULL; gavl_video_frame_null(f); gavl_video_frame_destroy(f); } static void destroy_native_dmabuf(void * n) { dma_native_t * native = n; if(native->heap_device) free(native->heap_device); if(native->drm_device) free(native->drm_device); if(native->supported_formats) free(native->supported_formats); if(native->drm_fd >= 0) close(native->drm_fd); if(native->dsp) gavl_dsp_context_destroy(native->dsp); free(native); } static int frame_to_ram_dmabuf(gavl_video_frame_t * dst, gavl_video_frame_t * src) { return 1; } static int frame_to_hw_dmabuf(gavl_video_frame_t * dst, gavl_video_frame_t * src) { int i; int flags = 0; int drm_indices[GAVL_MAX_PLANES]; dma_native_t * native = dst->hwctx->native; gavl_dmabuf_video_frame_t * fp = dst->storage; gavl_drm_pixelformat_from_fourcc(fp->fourcc, &flags, drm_indices); gavl_hw_video_frame_map(dst, 1); if(flags & GAVL_DMABUF_FLAG_SHUFFLE) { int reverse[GAVL_MAX_PLANES]; if(!native->dsp) native->dsp = gavl_dsp_context_create(); for(i = 0; i < GAVL_MAX_PLANES; i++) reverse[ drm_indices[i] % 0x80 ] = i; gavl_dsp_video_frame_shuffle_4_copy(native->dsp, dst, src, &dst->hwctx->vfmt, // drm_indices reverse ); } else { gavl_video_frame_copy(&dst->hwctx->vfmt, dst, src); } gavl_hw_video_frame_unmap(dst); return 1; } #define CHECK_FORMAT(fourcc) \ (gavl_drm_pixelformat_from_fourcc(fourcc, NULL, NULL) != GAVL_PIXELFORMAT_NONE) && \ (gavl_hw_ctx_dma_get_frame_mode(fourcc) == mode) static int check_format(gavl_hw_context_t * ctx, uint32_t fourcc, gavl_hw_frame_mode_t mode) { int bpp; gavl_pixelformat_t pfmt; dma_native_t * native = ctx->native; if((pfmt = gavl_drm_pixelformat_from_fourcc(fourcc, NULL, NULL)) == GAVL_PIXELFORMAT_NONE) return 0; if(gavl_hw_ctx_dma_get_frame_mode(fourcc) != mode) return 0; if(native->bpp_supported == BPP_ALL) return 1; bpp = get_bpp(pfmt); switch(bpp) { case 8: return !!(native->bpp_supported & BPP_8); break; case 16: return !!(native->bpp_supported & BPP_16); break; case 24: return !!(native->bpp_supported & BPP_24); break; case 32: return !!(native->bpp_supported & BPP_32); break; case 64: return !!(native->bpp_supported & BPP_64); break; } return 0; } static gavl_pixelformat_t * get_image_formats_dmabuf(gavl_hw_context_t * ctx, gavl_hw_frame_mode_t mode) { gavl_pixelformat_t * ret = NULL; dma_native_t * native = ctx->native; int num = 0; int i, j, k; if(native->supported_formats) { i = 0; /* Count formats */ while(native->supported_formats[i]) { if(check_format(ctx, native->supported_formats[i], mode)) { num++; } i++; } ret = calloc(num + 1, sizeof(*ret)); j = 0; i = 0; while(native->supported_formats[i]) { if(check_format(ctx, native->supported_formats[i], mode)) { k = 0; while(drm_formats[k].drm_fourcc) { if(drm_formats[k].drm_fourcc == native->supported_formats[i]) break; k++; } ret[j] = drm_formats[k].pfmt; j++; } i++; } ret[j] = GAVL_PIXELFORMAT_NONE; } else { /* Assume that everything is supported */ /* Count formats */ i = 0; while(drm_formats[i].drm_fourcc) { if(check_format(ctx, drm_formats[i].drm_fourcc, mode)) num++; i++; } ret = calloc(num + 1, sizeof(*ret)); i = 0; j = 0; while(drm_formats[i].drm_fourcc) { if(check_format(ctx, drm_formats[i].drm_fourcc, mode)) { ret[j] = drm_formats[i].pfmt; j++; } i++; } } return ret; } static const gavl_hw_funcs_t funcs = { .destroy_native = destroy_native_dmabuf, .get_image_formats = get_image_formats_dmabuf, .video_frame_create = video_frame_create_hw_dmabuf, .video_frame_destroy = video_frame_destroy_hw_dmabuf, .video_frame_map = video_frame_map_dmabuf, .video_frame_unmap = video_frame_unmap_dmabuf, .video_frame_to_ram = frame_to_ram_dmabuf, .video_frame_to_hw = frame_to_hw_dmabuf, // .video_format_adjust = gavl_gl_adjust_video_format, // .overlay_format_adjust = gavl_gl_adjust_video_format, // .can_export = exports_type_v4l2, // .export_video_frame = export_video_frame_v4l2, }; static int test_heap_dev(dma_native_t * native, const char * dev) { if(!access(dev, R_OK | W_OK)) { native->heap_device = gavl_strdup(dev); return 1; } else return 0; } gavl_hw_frame_mode_t gavl_hw_ctx_dma_get_frame_mode(uint32_t format) { int i = 0; while(drm_formats[i].drm_fourcc) { if(drm_formats[i].drm_fourcc != format) { i++; continue; } if(gavl_pixelformat_is_yuv(drm_formats[i].pfmt) && (drm_formats[i].flags & GAVL_DMABUF_FLAG_SHUFFLE)) return GAVL_HW_FRAME_MODE_TRANSFER; else return GAVL_HW_FRAME_MODE_MAP; } return GAVL_HW_FRAME_MODE_MAP; } static int bpp_supported(int drm_fd, int bpp) { struct drm_mode_create_dumb create_req = {0}; struct drm_mode_destroy_dumb destroy_req = {0}; int ret; // Prepare request create_req.width = 64; create_req.height = 64; create_req.bpp = bpp; create_req.flags = 0; // Try to create buffer ret = ioctl(drm_fd, DRM_IOCTL_MODE_CREATE_DUMB, &create_req); if(ret == 0) { // Success, release again destroy_req.handle = create_req.handle; ioctl(drm_fd, DRM_IOCTL_MODE_DESTROY_DUMB, &destroy_req); gavl_log(GAVL_LOG_INFO, LOG_DOMAIN, "%d bpp supported", bpp); return 1; } gavl_log(GAVL_LOG_WARNING, LOG_DOMAIN, "%d bpp not supported", bpp); return 0; } static int get_supported_bpp_values(int drm_fd) { int ret = 0; if(bpp_supported(drm_fd, 8)) ret |= BPP_8; if(bpp_supported(drm_fd, 16)) ret |= BPP_16; if(bpp_supported(drm_fd, 24)) ret |= BPP_24; if(bpp_supported(drm_fd, 32)) ret |= BPP_32; if(bpp_supported(drm_fd, 64)) ret |= BPP_64; return ret; } gavl_hw_context_t * gavl_hw_ctx_create_dma() { dma_native_t * native; int support_flags = GAVL_HW_SUPPORTS_VIDEO; native = calloc(1, sizeof(*native)); native->drm_fd = -1; // #undef HAVE_LINUX_DMA_HEAP_H #ifdef HAVE_LINUX_DMA_HEAP_H if(test_heap_dev(native, "/dev/dma_heap/linux,cma")) { support_flags |= GAVL_HW_SUPPORTS_VIDEO_POOL | GAVL_HW_SUPPORTS_VIDEO_MAP; gavl_log(GAVL_LOG_INFO, LOG_DOMAIN, "Using CMA for allocating DMA buffers"); native->bpp_supported = BPP_ALL; } else #endif { /* Get Graphics card */ int i; int fd; uint64_t cap; for(i = 0; i < 8; i++) { native->drm_device = gavl_sprintf("/dev/dri/card%d", i); fd = open(native->drm_device, O_RDWR); if(fd >= 0) { drmVersionPtr version = NULL; // Check for working DRM-driver if((version = drmGetVersion(fd)) && !drmGetCap(fd, DRM_CAP_DUMB_BUFFER, &cap) && cap && !drmGetCap(fd, DRM_CAP_PRIME, &cap) && (cap & DRM_PRIME_CAP_EXPORT)) { #ifdef DUMP_DEVICE_INFO print_drm_info(fd); #endif native->bpp_supported = get_supported_bpp_values(fd); close(fd); gavl_log(GAVL_LOG_INFO, LOG_DOMAIN, "Using drm device: %s", native->drm_device); support_flags |= GAVL_HW_SUPPORTS_VIDEO_POOL | GAVL_HW_SUPPORTS_VIDEO_MAP; drmFreeVersion(version); break; } if(version) drmFreeVersion(version); close(fd); } free(native->drm_device); native->drm_device = NULL; } } return gavl_hw_context_create_internal(native, &funcs, GAVL_HW_DMABUFFER, support_flags); } void gavl_hw_ctx_dma_set_supported_formats(gavl_hw_context_t * ctx, uint32_t * formats) { int num; int i, j; dma_native_t * native = ctx->native; if(native->supported_formats) free(native->supported_formats); num = 0; i = 0; while(drm_formats[i].drm_fourcc) { j = 0; while(formats[j]) { if(formats[j] == drm_formats[i].drm_fourcc) { num++; break; } j++; } i++; } native->supported_formats = calloc(num+1, sizeof(*native->supported_formats)); num = 0; i = 0; while(drm_formats[i].drm_fourcc) { j = 0; while(formats[j]) { if(formats[j] == drm_formats[i].drm_fourcc) { native->supported_formats[num] = drm_formats[i].drm_fourcc; num++; break; } j++; } i++; } /* Set pixelformats for mapping */ // if(ctx-> } #ifdef DUMP_DEVICE_INFO /* Print DRM info */ static void print_capabilities(int fd) { uint64_t cap; printf("\n=== DRM Capabilities ===\n"); if(drmGetCap(fd, DRM_CAP_DUMB_BUFFER, &cap) == 0) { printf("Dumb Buffer Support: %s\n", cap ? "Yes" : "No"); } if (drmGetCap(fd, DRM_CAP_VBLANK_HIGH_CRTC, &cap) == 0) { printf("High CRTC VBlank: %s\n", cap ? "Yes" : "No"); } if (drmGetCap(fd, DRM_CAP_PRIME, &cap) == 0) { printf("PRIME Support: "); if (cap & DRM_PRIME_CAP_IMPORT) printf("Import "); if (cap & DRM_PRIME_CAP_EXPORT) printf("Export "); if (!cap) printf("None"); printf("\n"); } if (drmGetCap(fd, DRM_CAP_ASYNC_PAGE_FLIP, &cap) == 0) { printf("Async Page Flip: %s\n", cap ? "Yes" : "No"); } if (drmGetCap(fd, DRM_CAP_CURSOR_WIDTH, &cap) == 0) { printf("Max Cursor Width: %lu\n", cap); } if (drmGetCap(fd, DRM_CAP_CURSOR_HEIGHT, &cap) == 0) { printf("Max Cursor Height: %lu\n", cap); } } static void print_version_info(int fd) { drmVersionPtr version = drmGetVersion(fd); if (!version) { printf("Failed to get version info\n"); return; } printf("\n=== Driver Information ===\n"); printf("Driver Name: %s\n", version->name); printf("Driver Description: %s\n", version->desc); printf("Driver Date: %s\n", version->date); printf("Version: %d.%d.%d\n", version->version_major, version->version_minor, version->version_patchlevel); drmFreeVersion(version); } static void print_resources_info(int fd) { int i; drmModeResPtr res = drmModeGetResources(fd); if(!res) { printf("Failed to get mode resources\n"); return; } printf("\n=== Display Resources ===\n"); printf("CRTCs: %d\n", res->count_crtcs); printf("Encoders: %d\n", res->count_encoders); printf("Connectors: %d\n", res->count_connectors); printf("Frame Buffers: %d\n", res->count_fbs); printf("Min Resolution: %dx%d\n", res->min_width, res->min_height); printf("Max Resolution: %dx%d\n", res->max_width, res->max_height); // Zeige verfügbare Connectors printf("\n=== Connected Displays ===\n"); for(i = 0; i < res->count_connectors; i++) { drmModeConnectorPtr connector = drmModeGetConnector(fd, res->connectors[i]); if (connector) { printf("Connector %d: %s, Status: %s\n", i + 1, drmModeGetConnectorTypeName(connector->connector_type), connector->connection == DRM_MODE_CONNECTED ? "Connected" : connector->connection == DRM_MODE_DISCONNECTED ? "Disconnected" : "Unknown"); if (connector->connection == DRM_MODE_CONNECTED && connector->count_modes > 0) { printf(" Primary Mode: %dx%d@%dHz\n", connector->modes[0].hdisplay, connector->modes[0].vdisplay, connector->modes[0].vrefresh); } drmModeFreeConnector(connector); } } drmModeFreeResources(res); } static void print_drm_info(int fd) { // Ausgabe der Informationen print_version_info(fd); print_capabilities(fd); print_resources_info(fd); printf("\n=== Additional Info ===\n"); printf("DRM File Descriptor: %d\n", fd); printf("Device supports KMS: %s\n", drmIsKMS(fd) ? "Yes" : "No"); } #endif // DUMP_DEVICE_INFO #else // No DRM gavl_hw_context_t * gavl_hw_ctx_create_dma() { return NULL; } #endif bplaum-gavl-b9385e3/gavl/hw_egl.c000066400000000000000000000635031513252040200166300ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include #include #include #include #define EGL_EGLEXT_PROTOTYPES #include #include #include #include #include #include #define LOG_DOMAIN "egl" #include #ifndef EGL_PLATFORM_X11_EXT #define EGL_PLATFORM_X11_EXT 0x31D5 #endif #ifdef HAVE_DRM #include #include #endif #ifndef GL_TEXTURE_EXTERNAL_OES #define GL_TEXTURE_EXTERNAL_OES 0x8D65 #endif static const char* egl_strerror(EGLint error); #ifdef HAVE_DRM static int egl_import_dmabuf(gavl_hw_context_t * ctx, const gavl_video_format_t * fmt, gavl_video_frame_t * src, gavl_video_frame_t * dst); #endif typedef struct { EGLDisplay display; EGLConfig config; EGLContext context; GLint max_texture_size; /* If off-screen rendering is used */ EGLSurface surf; /* Current rendering target */ EGLSurface current_surf; EGLenum platform; /* Function pointers */ /* Originally the last argument the next 2 functions const EGLAttrib*. * We change it to void* to enable compilation against older GLE headers * (e.g. on Raspbian). * We don't use them anyway. */ EGLDisplay (*eglGetPlatformDisplay)(EGLenum, void *, const void*); EGLSurface (*eglCreatePlatformWindowSurface)(EGLDisplay, EGLConfig, void *, const void*); void * (*eglCreateImage)(EGLDisplay dpy, EGLContext ctx, EGLenum target, EGLClientBuffer buffer, const EGLint *attrib_list); EGLBoolean (*eglDestroyImage)(EGLDisplay dpy, void * image); void (*glEGLImageTargetTexture2DOES)(GLenum target, void * image); EGLBoolean (*eglQueryDmaBufFormatsEXT)(EGLDisplay dpy, EGLint max_formats, EGLint *formats, EGLint *num_formats); EGLBoolean (*eglExportDMABUFImageQueryMESA)(EGLDisplay dpy, EGLImageKHR image, int *fourcc, int *num_planes, EGLuint64KHR *modifiers); EGLBoolean (*eglExportDMABUFImageMESA)(EGLDisplay dpy, EGLImageKHR image, int *fds, EGLint *strides, EGLint *offsets); EGLSync (*eglCreateSyncKHR)(EGLDisplay display, EGLenum type, EGLAttrib const * attrib_list); EGLint (*eglClientWaitSyncKHR)(EGLDisplay dpy, EGLSyncKHR sync, EGLint flags, EGLTimeKHR timeout); EGLBoolean (*eglDestroySyncKHR)(EGLDisplay dpy, EGLSyncKHR sync); } egl_t; static void destroy_native_egl(void * native) { egl_t * priv = native; if(priv->surf != EGL_NO_SURFACE) eglDestroySurface(priv->display, priv->surf); eglDestroyContext(priv->display, priv->context); eglTerminate(priv->display); free(priv); } static gavl_video_frame_t * video_frame_create_hw_egl(gavl_hw_context_t * ctx, int alloc_resource) { gavl_video_frame_t * ret; // fprintf(stderr, "video_frame_create_hw_egl\n"); // gavl_video_format_dump(fmt); gavl_hw_egl_set_current(ctx, EGL_NO_SURFACE); if(alloc_resource) ret = gavl_gl_create_frame(&ctx->vfmt); else ret = gavl_gl_create_frame(NULL); gavl_hw_egl_unset_current(ctx); return ret; } static void video_frame_destroy_egl(gavl_video_frame_t * f, int destroy_resource) { gavl_hw_context_t * hw = f->hwctx; gavl_hw_egl_set_current(hw, EGL_NO_SURFACE); gavl_gl_destroy_frame(f, destroy_resource); gavl_hw_egl_unset_current(hw); return; } static int video_frame_to_ram_egl(gavl_video_frame_t * dst, gavl_video_frame_t * src) { gavl_hw_egl_set_current(src->hwctx, EGL_NO_SURFACE); gavl_gl_frame_to_ram(&src->hwctx->vfmt, dst, src); gavl_hw_egl_unset_current(src->hwctx); return 1; } static int video_frame_to_hw_egl(gavl_video_frame_t * dst, gavl_video_frame_t * src) { gavl_hw_egl_set_current(dst->hwctx, EGL_NO_SURFACE); gavl_gl_frame_to_hw(&dst->hwctx->vfmt, dst, src); gavl_hw_egl_unset_current(dst->hwctx); return 1; } static int exports_type_egl(gavl_hw_context_t * ctx, const gavl_hw_context_t * to) { const char * extensions; egl_t * priv = ctx->native; gavl_hw_type_t hw = gavl_hw_ctx_get_type(to); extensions = eglQueryString(priv->display, EGL_EXTENSIONS); switch(hw) { case GAVL_HW_DMABUFFER: if(strstr(extensions, "EGL_MESA_image_dma_buf_export")) return 1; break; default: break; } return 0; } static int imports_type_egl(gavl_hw_context_t * ctx, const gavl_hw_context_t * from) { const char * extensions; egl_t * priv = ctx->native; gavl_hw_type_t hw = gavl_hw_ctx_get_type(from); extensions = eglQueryString(priv->display, EGL_EXTENSIONS); switch(hw) { #ifdef HAVE_DRM case GAVL_HW_DMABUFFER: if(strstr(extensions, "EGL_EXT_image_dma_buf_import") && strstr(extensions, "EGL_EXT_image_dma_buf_import_modifiers")) return 1; break; #endif default: break; } return 0; } static int import_video_frame_egl(const gavl_video_format_t * vfmt, gavl_video_frame_t * src, gavl_video_frame_t * dst) { gavl_hw_type_t src_hw_type = gavl_hw_ctx_get_type(src->hwctx); switch(src_hw_type) { #ifdef HAVE_DRM case GAVL_HW_DMABUFFER: return egl_import_dmabuf(dst->hwctx, vfmt, src, dst); break; #endif default: break; } return 0; } static int export_video_frame_egl(const gavl_video_format_t * fmt, gavl_video_frame_t * src, gavl_video_frame_t * dst) { egl_t * priv = src->hwctx->native; gavl_gl_frame_info_t * gl = src->storage; // gavl_hw_vaapi_t * dev = src->hwctx->native; gavl_hw_type_t dst_hw_type = gavl_hw_ctx_get_type(dst->hwctx); switch(dst_hw_type) { #ifdef HAVE_DRM case GAVL_HW_DMABUFFER: { int i; EGLImage image; uint64_t modifier; uint32_t format; int fds[4], strides[4], offsets[4]; int num_planes; gavl_dmabuf_video_frame_t * dma_frame = dst->storage; /* typedef struct { int num_textures; GLuint textures[GAVL_MAX_PLANES]; GLenum texture_target; } ; */ // gavl_log(GAVL_LOG_INFO, LOG_DOMAIN, "Exported GL rexture as DMA buffer"); // EGL-Image von Textur erstellen EGLint image_attrs[] = { EGL_IMAGE_PRESERVED_KHR, EGL_TRUE, EGL_NONE }; gavl_hw_egl_set_current(priv->context, EGL_NO_SURFACE); for(i = 0; i < gl->num_textures; i++) { image = priv->eglCreateImage(priv->display, priv->context, EGL_GL_TEXTURE_2D_KHR, (EGLClientBuffer)(intptr_t)gl->textures[i], image_attrs); if(image == EGL_NO_IMAGE_KHR) { printf("Fehler beim Erstellen des EGL-Images\n"); return 0; } if(!priv->eglExportDMABUFImageQueryMESA(priv->display, image, (int*)&format, &num_planes, &modifier)) { printf("Fehler beim Abfragen der DMA-Buffer-Informationen\n"); return 0; } // fprintf(stderr, "Modifier: %lx\n", modifier); if(!priv->eglExportDMABUFImageMESA(priv->display, image, fds, strides, offsets)) { printf("Fehler beim Exportieren des DMA-Buffers\n"); return 0; } dma_frame->buffers[i].fd = fds[0]; dma_frame->buffers[i].map_len = 0; // Frames are not meant for mapping dma_frame->planes[i].buf_idx = i; dma_frame->planes[i].offset = offsets[i]; dma_frame->planes[i].stride = strides[i]; dma_frame->planes[i].modifiers = modifier; dst->strides[i] = strides[i]; priv->eglDestroyImage(priv->display, image); } gavl_hw_egl_unset_current(priv->context); dma_frame->num_buffers = gl->num_textures; dma_frame->num_planes = gl->num_textures; dma_frame->fourcc = format; } #endif default: break; } return 0; } static int get_num_dma_import_formats(gavl_hw_context_t * ctx) { #ifdef HAVE_DRM egl_t * priv = ctx->native; EGLint num_formats; const char * extensions; if(ctx->type != GAVL_HW_EGL_GLES) return 0; extensions = eglQueryString(priv->display, EGL_EXTENSIONS); if(strstr(extensions, "EGL_EXT_image_dma_buf_import_modifiers")) { if(priv->eglQueryDmaBufFormatsEXT(priv->display, 0, NULL, &num_formats)) return num_formats; } #endif return 0; } uint32_t * gavl_hw_ctx_egl_get_dma_import_formats(gavl_hw_context_t * ctx) { EGLint *formats = NULL; #ifdef HAVE_DRM int i = 0; EGLint max_formats; egl_t * priv = ctx->native; int num_formats = get_num_dma_import_formats(ctx); if(!num_formats) return NULL; // fprintf(stderr, "Getting supported DMA formats\n"); formats = calloc(num_formats+1, sizeof(*formats)); max_formats = num_formats; priv->eglQueryDmaBufFormatsEXT(priv->display, max_formats, formats, &num_formats); while(i < num_formats) { if(gavl_drm_pixelformat_from_fourcc(formats[i], NULL, NULL) == GAVL_PIXELFORMAT_NONE) { #if 0 fprintf(stderr, "Got unhandled format: %c%c%c%c\n", (formats[i] >> 0) & 0xff, (formats[i] >> 8) & 0xff, (formats[i] >> 16) & 0xff, (formats[i] >> 24) & 0xff); #endif /* We move the trailing zero */ memmove(formats + i, formats + i + 1, (num_formats - i)*sizeof(*formats)); num_formats--; } else { #if 0 fprintf(stderr, "Supported format: %c%c%c%c -> %s\n", (formats[i] >> 0) & 0xff, (formats[i] >> 8) & 0xff, (formats[i] >> 16) & 0xff, (formats[i] >> 24) & 0xff, gavl_pixelformat_to_string(gavl_drm_pixelformat_from_fourcc(formats[i], NULL, NULL))); #endif i++; } } #endif return (uint32_t*)formats; } static gavl_pixelformat_t * get_image_formats_egl(gavl_hw_context_t * ctx, gavl_hw_frame_mode_t mode) { int num; if(mode == GAVL_HW_FRAME_MODE_TRANSFER) return gavl_gl_get_image_formats(ctx, &num); else return NULL; } static const gavl_hw_funcs_t funcs = { .destroy_native = destroy_native_egl, // .video_format_adjust = adjust_video_format_egl, // .get_image_formats = gavl_gl_get_image_formats, .get_image_formats = get_image_formats_egl, .video_frame_create = video_frame_create_hw_egl, .video_frame_destroy = video_frame_destroy_egl, .video_frame_to_ram = video_frame_to_ram_egl, .video_frame_to_hw = video_frame_to_hw_egl, .can_export = exports_type_egl, .can_import = imports_type_egl, .import_video_frame = import_video_frame_egl, .export_video_frame = export_video_frame_egl }; static const EGLint gles_attributes[] = { #ifdef EGL_CONTEXT_MAJOR_VERSION EGL_CONTEXT_MAJOR_VERSION, 3, #else EGL_CONTEXT_CLIENT_VERSION, 3, #endif EGL_NONE }; gavl_hw_context_t * gavl_hw_ctx_create_egl(EGLenum platform, EGLint const * attrs, gavl_hw_type_t type, void * native_display) { int support_flags; egl_t * priv; EGLint num_configs = 0; const EGLint * attributes = NULL; gavl_hw_context_t * ctx = NULL; const char * extensions; support_flags = GAVL_HW_SUPPORTS_VIDEO; switch(type) { case GAVL_HW_NONE: // Autodetect break; case GAVL_HW_EGL_GLES: eglBindAPI(EGL_OPENGL_ES_API); attributes = gles_attributes; break; case GAVL_HW_EGL_GL: eglBindAPI(EGL_OPENGL_API); break; default: return NULL; } priv = calloc(1, sizeof(*priv)); if(!platform) // Off-Screen renderer to DMA buffers { const char *client_extensions = eglQueryString(EGL_NO_DISPLAY, EGL_EXTENSIONS); if(strstr(client_extensions, "EGL_MESA_platform_surfaceless")) platform = EGL_PLATFORM_SURFACELESS_MESA; if(!platform) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "No off-screen render platform found"); goto fail; } } priv->platform = platform; priv->eglGetPlatformDisplay = (void*)eglGetProcAddress("eglGetPlatformDisplayEXT"); /* EGL_DEFAULT_DISPLAY is NULL (hopefully forever) */ // if(!native_display) // native_display = EGL_DEFAULT_DISPLAY; if((priv->display = priv->eglGetPlatformDisplay(platform, native_display, NULL)) == EGL_NO_DISPLAY) goto fail; if(eglInitialize(priv->display, NULL, NULL) == EGL_FALSE) goto fail; if(eglChooseConfig(priv->display, attrs, &priv->config, 1, &num_configs) == EGL_FALSE) goto fail; // fprintf(stderr, "EGL Extensions: %s\n", // ); if((priv->context = eglCreateContext(priv->display, priv->config, EGL_NO_CONTEXT, attributes)) == EGL_NO_CONTEXT) goto fail; priv->surf = EGL_NO_SURFACE; priv->eglCreatePlatformWindowSurface = (void*)eglGetProcAddress("eglCreatePlatformWindowSurfaceEXT"); priv->glEGLImageTargetTexture2DOES = (void*)eglGetProcAddress("glEGLImageTargetTexture2DOES"); priv->eglQueryDmaBufFormatsEXT = (void*)eglGetProcAddress("eglQueryDmaBufFormatsEXT"); /* EGLBoolean (*eglExportDMABUFImageQueryMESA)(EGLDisplay dpy, EGLImageKHR image, int *fourcc, int *num_planes, EGLuint64KHR *modifiers); EGLBoolean (*eglExportDMABUFImageMESA)(EGLDisplay dpy, EGLImageKHR image, int *fds, EGLint *strides, EGLint *offsets); */ priv->eglExportDMABUFImageQueryMESA = (void*)eglGetProcAddress("eglExportDMABUFImageQueryMESA"); priv->eglExportDMABUFImageMESA = (void*)eglGetProcAddress("eglExportDMABUFImageMESA"); priv->eglCreateImage = (void*)eglGetProcAddress("eglCreateImageKHR"); priv->eglDestroyImage = (void*)eglGetProcAddress("eglDestroyImageKHR"); extensions = eglQueryString(priv->display, EGL_EXTENSIONS); /* Synchronization */ if(strstr(extensions, "EGL_KHR_fence_sync")) { priv->eglCreateSyncKHR = (void*)eglGetProcAddress("eglCreateSyncKHR"); priv->eglClientWaitSyncKHR = (void*)eglGetProcAddress("eglClientWaitSyncKHR"); priv->eglDestroySyncKHR = (void*)eglGetProcAddress("eglDestroySyncKHR"); } ctx = gavl_hw_context_create_internal(priv, &funcs, type, support_flags); gavl_hw_egl_set_current(ctx, NULL); glGetIntegerv(GL_MAX_TEXTURE_SIZE, &priv->max_texture_size); gavl_log(GAVL_LOG_INFO, LOG_DOMAIN, "Created GL context"); gavl_log(GAVL_LOG_INFO, LOG_DOMAIN, "Type: %s", gavl_hw_type_to_string(type)); gavl_log(GAVL_LOG_INFO, LOG_DOMAIN, "GL Version: %s", glGetString(GL_VERSION) ); gavl_log(GAVL_LOG_INFO, LOG_DOMAIN, "GLSL Version: %s", glGetString(GL_SHADING_LANGUAGE_VERSION) ); gavl_log(GAVL_LOG_INFO, LOG_DOMAIN, "Renderer: %s", glGetString(GL_RENDERER) ); gavl_log(GAVL_LOG_INFO, LOG_DOMAIN, "Vendor: %s", glGetString(GL_VENDOR) ); gavl_hw_egl_unset_current(ctx); return ctx; fail: if(priv) destroy_native_egl(priv); return NULL; } int gavl_hw_egl_get_max_texture_size(gavl_hw_context_t * ctx) { egl_t * p = ctx->native; return p->max_texture_size; } EGLSurface gavl_hw_ctx_egl_create_window_surface(gavl_hw_context_t * ctx, void * native_window) { egl_t * p = ctx->native; return p->eglCreatePlatformWindowSurface(p->display, p->config, native_window, NULL); } void gavl_hw_ctx_egl_destroy_surface(gavl_hw_context_t * ctx, EGLSurface surf) { egl_t * p = ctx->native; eglDestroySurface(p->display, surf); } EGLDisplay gavl_hw_ctx_egl_get_egl_display(gavl_hw_context_t * ctx) { egl_t * p = ctx->native; return p->display; } EGLint const surface_attribs[] = { EGL_WIDTH, 10, EGL_HEIGHT, 10, EGL_NONE }; void gavl_hw_egl_set_current(gavl_hw_context_t * ctx, EGLSurface surf) { egl_t * p = ctx->native; // fprintf(stderr, "gavl_hw_glx_set_current %p %ld\n", ctx, drawable); if(surf == EGL_NO_SURFACE) { if(p->surf == EGL_NO_SURFACE) { p->surf = eglCreatePbufferSurface(p->display, p->config, surface_attribs); } p->current_surf = p->surf; } else p->current_surf = surf; if(!eglMakeCurrent(p->display, p->current_surf, p->current_surf, p->context)) { fprintf(stderr, "eglMakeCurrent failed: %s\n", egl_strerror(eglGetError())); } } void gavl_hw_egl_unset_current(gavl_hw_context_t * ctx) { egl_t * p = ctx->native; // fprintf(stderr, "gavl_hw_glx_unset %p\n", ctx); eglMakeCurrent(p->display, EGL_NO_SURFACE, EGL_NO_SURFACE, EGL_NO_CONTEXT); p->current_surf = EGL_NO_SURFACE; } void gavl_hw_egl_swap_buffers(gavl_hw_context_t * ctx) { egl_t * p = ctx->native; eglSwapBuffers(p->display, p->current_surf); } void gavl_hw_egl_wait(gavl_hw_context_t * ctx) { egl_t * p = ctx->native; glFlush(); /* Use fence synchronization */ if(p->eglCreateSyncKHR) { EGLSyncKHR sync = p->eglCreateSyncKHR(p->display, EGL_SYNC_FENCE_KHR, NULL); p->eglClientWaitSyncKHR(p->display, sync, EGL_SYNC_FLUSH_COMMANDS_BIT_KHR, EGL_FOREVER); p->eglDestroySyncKHR(p->display, sync); } else { glFinish(); } } #ifdef HAVE_DRM static int egl_import_dmabuf(gavl_hw_context_t * ctx, const gavl_video_format_t * fmt, gavl_video_frame_t * src, gavl_video_frame_t * dst) { int sub_h = 1, sub_v = 1; egl_t * egl; EGLImageKHR image = EGL_NO_IMAGE_KHR; EGLint attrs[128]; int aidx = 0; gavl_dmabuf_video_frame_t * dmabuf = src->storage; gavl_gl_frame_info_t * info = dst->storage; egl = ctx->native; attrs[aidx++] = EGL_WIDTH; attrs[aidx++] = fmt->image_width; attrs[aidx++] = EGL_HEIGHT; attrs[aidx++] = fmt->image_height; attrs[aidx++] = EGL_LINUX_DRM_FOURCC_EXT; attrs[aidx++] = dmabuf->fourcc; #if 0 fprintf(stderr, "Importing frame: %c%c%c%c %dx%d strides: %d, %d %d\n", (dmabuf->fourcc) & 0xff, (dmabuf->fourcc >> 8) & 0xff, (dmabuf->fourcc >> 16) & 0xff, (dmabuf->fourcc >> 24) & 0xff, fmt->image_width, fmt->image_height, src->strides[0], (int)(src->planes[2] - src->planes[1]), (int)(src->planes[1] - src->planes[0])); #endif if(gavl_pixelformat_is_yuv(fmt->pixelformat)) { attrs[aidx++] = EGL_SAMPLE_RANGE_HINT_EXT; if(gavl_pixelformat_is_jpeg_scaled(fmt->pixelformat)) attrs[aidx++] = EGL_YUV_FULL_RANGE_EXT; else attrs[aidx++] = EGL_YUV_NARROW_RANGE_EXT; } /* Chroma placement */ gavl_pixelformat_chroma_sub(fmt->pixelformat, &sub_h, &sub_v); if((sub_h == 2) && (sub_v == 2)) { if(fmt->chroma_placement == GAVL_CHROMA_PLACEMENT_DEFAULT) { attrs[aidx++] = EGL_YUV_CHROMA_HORIZONTAL_SITING_HINT_EXT; attrs[aidx++] = EGL_YUV_CHROMA_SITING_0_5_EXT; attrs[aidx++] = EGL_YUV_CHROMA_VERTICAL_SITING_HINT_EXT; attrs[aidx++] = EGL_YUV_CHROMA_SITING_0_5_EXT; } else { attrs[aidx++] = EGL_YUV_CHROMA_HORIZONTAL_SITING_HINT_EXT; attrs[aidx++] = EGL_YUV_CHROMA_SITING_0_EXT; attrs[aidx++] = EGL_YUV_CHROMA_VERTICAL_SITING_HINT_EXT; attrs[aidx++] = EGL_YUV_CHROMA_SITING_0_EXT; } } // // EGL_YUV_CHROMA_SITING_0_EXT // /* Plane 0 */ attrs[aidx++] = EGL_DMA_BUF_PLANE0_FD_EXT; attrs[aidx++] = dmabuf->buffers[dmabuf->planes[0].buf_idx].fd; attrs[aidx++] = EGL_DMA_BUF_PLANE0_OFFSET_EXT; attrs[aidx++] = dmabuf->planes[0].offset; attrs[aidx++] = EGL_DMA_BUF_PLANE0_PITCH_EXT; attrs[aidx++] = src->strides[0]; if(dmabuf->planes[0].modifiers) { attrs[aidx++] = EGL_DMA_BUF_PLANE0_MODIFIER_HI_EXT; attrs[aidx++] = (dmabuf->planes[0].modifiers >> 32); attrs[aidx++] = EGL_DMA_BUF_PLANE0_MODIFIER_LO_EXT; attrs[aidx++] = (dmabuf->planes[0].modifiers & (uint64_t)0xffffffff); } if(dmabuf->num_planes > 1) { /* Plane 1 */ attrs[aidx++] = EGL_DMA_BUF_PLANE1_FD_EXT; attrs[aidx++] = dmabuf->buffers[dmabuf->planes[1].buf_idx].fd; attrs[aidx++] = EGL_DMA_BUF_PLANE1_OFFSET_EXT; attrs[aidx++] = dmabuf->planes[1].offset; attrs[aidx++] = EGL_DMA_BUF_PLANE1_PITCH_EXT; attrs[aidx++] = src->strides[1]; if(dmabuf->planes[1].modifiers) { attrs[aidx++] = EGL_DMA_BUF_PLANE1_MODIFIER_HI_EXT; attrs[aidx++] = (dmabuf->planes[1].modifiers >> 32); attrs[aidx++] = EGL_DMA_BUF_PLANE1_MODIFIER_LO_EXT; attrs[aidx++] = (dmabuf->planes[1].modifiers & (uint64_t)0xffffffff); } } if(dmabuf->num_planes > 2) { /* Plane 2 */ attrs[aidx++] = EGL_DMA_BUF_PLANE2_FD_EXT; attrs[aidx++] = dmabuf->buffers[dmabuf->planes[2].buf_idx].fd; attrs[aidx++] = EGL_DMA_BUF_PLANE2_OFFSET_EXT; attrs[aidx++] = dmabuf->planes[2].offset; attrs[aidx++] = EGL_DMA_BUF_PLANE2_PITCH_EXT; attrs[aidx++] = src->strides[2]; if(dmabuf->planes[2].modifiers) { attrs[aidx++] = EGL_DMA_BUF_PLANE2_MODIFIER_HI_EXT; attrs[aidx++] = (dmabuf->planes[2].modifiers >> 32); attrs[aidx++] = EGL_DMA_BUF_PLANE2_MODIFIER_LO_EXT; attrs[aidx++] = (dmabuf->planes[2].modifiers & (uint64_t)0xffffffff); } } /* Terminate attributes */ attrs[aidx++] = EGL_NONE; eglGetError(); image = egl->eglCreateImage(egl->display, EGL_NO_CONTEXT, EGL_LINUX_DMA_BUF_EXT, NULL, attrs); if(!image) { fprintf(stderr, "Creating Image failed %s\n", egl_strerror(eglGetError())); return 0; } gavl_hw_egl_set_current(ctx, EGL_NO_SURFACE); /* Associate the texture with the dma buffer */ info->num_textures = 1; info->texture_target = GL_TEXTURE_EXTERNAL_OES; glGenTextures(1, &info->textures[0]); glBindTexture(GL_TEXTURE_EXTERNAL_OES, info->textures[0]); glTexParameteri(GL_TEXTURE_EXTERNAL_OES, GL_TEXTURE_MAG_FILTER, GL_LINEAR); glTexParameteri(GL_TEXTURE_EXTERNAL_OES, GL_TEXTURE_MIN_FILTER, GL_LINEAR); glTexParameteri(GL_TEXTURE_EXTERNAL_OES, GL_TEXTURE_WRAP_S, GL_CLAMP_TO_EDGE); glTexParameteri(GL_TEXTURE_EXTERNAL_OES, GL_TEXTURE_WRAP_T, GL_CLAMP_TO_EDGE); egl->glEGLImageTargetTexture2DOES(GL_TEXTURE_EXTERNAL_OES, image); /* Destroy image */ egl->eglDestroyImage(egl->display, image); gavl_hw_egl_unset_current(ctx); return 1; } #endif static const char* egl_strerror(EGLint error) { switch (error) { case EGL_SUCCESS: return "EGL_SUCCESS"; case EGL_NOT_INITIALIZED: return "EGL_NOT_INITIALIZED"; case EGL_BAD_ACCESS: return "EGL_BAD_ACCESS"; case EGL_BAD_ALLOC: return "EGL_BAD_ALLOC"; case EGL_BAD_ATTRIBUTE: return "EGL_BAD_ATTRIBUTE"; case EGL_BAD_CONTEXT: return "EGL_BAD_CONTEXT"; case EGL_BAD_CONFIG: return "EGL_BAD_CONFIG"; case EGL_BAD_CURRENT_SURFACE: return "EGL_BAD_CURRENT_SURFACE"; case EGL_BAD_DISPLAY: return "EGL_BAD_DISPLAY"; case EGL_BAD_SURFACE: return "EGL_BAD_SURFACE"; case EGL_BAD_MATCH: return "EGL_BAD_MATCH"; case EGL_BAD_PARAMETER: return "EGL_BAD_PARAMETER"; case EGL_BAD_NATIVE_PIXMAP: return "EGL_BAD_NATIVE_PIXMAP"; case EGL_BAD_NATIVE_WINDOW: return "EGL_BAD_NATIVE_WINDOW"; case EGL_CONTEXT_LOST: return "EGL_CONTEXT_LOST"; default: return "Unknown EGL error"; } } bplaum-gavl-b9385e3/gavl/hw_gl.c000066400000000000000000000237311513252040200164620ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include #include #include #include #include #define LOG_DOMAIN "gl" #include static const struct { const gavl_pixelformat_t fmt; const GLenum format; const GLenum internalformat; const GLenum type; } pixelformats[] = { { GAVL_RGB_24, GL_RGB, GL_RGB, GL_UNSIGNED_BYTE }, { GAVL_RGBA_32, GL_RGBA, GL_RGBA, GL_UNSIGNED_BYTE }, { GAVL_RGB_48, GL_RGB, GL_RGB, GL_UNSIGNED_SHORT }, { GAVL_RGBA_64, GL_RGBA, GL_RGBA, GL_UNSIGNED_SHORT }, { GAVL_RGB_FLOAT, GL_RGB, GL_RGB, GL_FLOAT }, { GAVL_RGBA_FLOAT, GL_RGBA, GL_RGBA, GL_FLOAT }, { GAVL_YUV_420_P, GL_RED, GL_RED, GL_UNSIGNED_BYTE }, { GAVL_YUV_410_P, GL_RED, GL_RED, GL_UNSIGNED_BYTE }, { GAVL_YUV_411_P, GL_RED, GL_RED, GL_UNSIGNED_BYTE }, { GAVL_YUV_422_P, GL_RED, GL_RED, GL_UNSIGNED_BYTE }, { GAVL_YUV_422_P_16, GL_RED, GL_RED, GL_UNSIGNED_SHORT }, { GAVL_YUV_444_P, GL_RED, GL_RED, GL_UNSIGNED_BYTE }, { GAVL_YUV_444_P_16, GL_RED, GL_RED, GL_UNSIGNED_SHORT }, { GAVL_YUVJ_420_P, GL_RED, GL_RED, GL_UNSIGNED_BYTE }, { GAVL_YUVJ_422_P, GL_RED, GL_RED, GL_UNSIGNED_BYTE }, { GAVL_YUVJ_444_P, GL_RED, GL_RED, GL_UNSIGNED_BYTE }, { GAVL_PIXELFORMAT_NONE /* End */ }, }; #define NUM_PIXELFORMATS (sizeof(pixelformats)/sizeof(pixelformats[0])) int gavl_get_gl_format(gavl_pixelformat_t fmt, GLenum * format, GLenum * internalformat, GLenum * type) { int i = 0; while(pixelformats[i].fmt != GAVL_PIXELFORMAT_NONE) { if(pixelformats[i].fmt == fmt) { if(format) *format = pixelformats[i].format; if(type) *type = pixelformats[i].type; if(internalformat) *internalformat = pixelformats[i].internalformat; return 1; } i++; } return 0; } gavl_pixelformat_t * gavl_gl_get_image_formats(gavl_hw_context_t * ctx, int * num) { int src_idx = 0; int dst_idx = 0; gavl_pixelformat_t * ret; // glx_t * priv = ctx->native; ret = calloc(NUM_PIXELFORMATS, sizeof(*ret)); while(pixelformats[src_idx].fmt) { /* Seems that GL ES supports no 16 bit colors */ if((ctx->type == GAVL_HW_EGL_GLES) && (pixelformats[src_idx].type != GL_UNSIGNED_BYTE)) { src_idx++; continue; } ret[dst_idx] = pixelformats[src_idx].fmt; src_idx++; dst_idx++; } ret[dst_idx] = GAVL_PIXELFORMAT_NONE; if(num) *num = dst_idx; return ret; } void gavl_gl_adjust_video_format(gavl_hw_context_t * ctx, gavl_video_format_t * fmt) { gavl_video_format_set_frame_size(fmt, 8, 1); } static int get_frame_planes(const gavl_video_frame_t * f) { const gavl_gl_frame_info_t * info = f->storage; return info->num_textures; } /* The following functions require a current GL context */ gavl_video_frame_t * gavl_gl_create_frame(const gavl_video_format_t * fmt) { int i; GLenum type = 0, format = 0; GLenum internalformat; GLsizei width; GLsizei height; gavl_video_frame_t * ret; gavl_gl_frame_info_t * info = calloc(1, sizeof(*info)); ret = gavl_video_frame_create(NULL); ret->storage = info; if(!fmt) return ret; width = fmt->image_width; height = fmt->image_height; if(!gavl_get_gl_format(fmt->pixelformat, &format, &internalformat, &type)) return 0; info->num_textures = gavl_pixelformat_num_planes(fmt->pixelformat); info->texture_target = GL_TEXTURE_2D; glGenTextures(info->num_textures, info->textures); for(i = 0; i < info->num_textures; i++) { glActiveTexture(GL_TEXTURE0 + i); glBindTexture(GL_TEXTURE_2D, info->textures[i]); glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR); glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR); glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_CLAMP_TO_EDGE); glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_CLAMP_TO_EDGE); gavl_gl_flush_errors(); if(i == 1) { int sub_h, sub_v; gavl_pixelformat_chroma_sub(fmt->pixelformat, &sub_h, &sub_v); width /= sub_h; height /= sub_v; } glTexImage2D(GL_TEXTURE_2D, 0, internalformat, width, height, 0, format, type, NULL); if(gavl_gl_log_error("glTexImage2D")) { GLint val; fprintf(stderr, "glTexImage2D failed\n"); gavl_video_format_dump(fmt); glGetIntegerv(GL_MAX_TEXTURE_SIZE, &val); fprintf(stderr, "Maximum texture size: %d\n", val); fprintf(stderr, "internalformat: 0x%08x\n", internalformat); fprintf(stderr, "width: %d\n", width); fprintf(stderr, "height: %d\n", height); fprintf(stderr, "format: 0x%08x\n", format); fprintf(stderr, "type: 0x%08x\n", type); } } return ret; } void gavl_gl_destroy_frame(gavl_video_frame_t * f, int destroy_resource) { gavl_gl_frame_info_t * info; if(f->storage) { info = f->storage; /* Imported textures are always deleted because their primary resource is owned by someone else */ if(destroy_resource || (info->texture_target != GL_TEXTURE_2D)) glDeleteTextures(info->num_textures, info->textures); free(info); } f->hwctx = NULL; gavl_video_frame_destroy(f); return; } void gavl_gl_frame_to_ram(const gavl_video_format_t * fmt, gavl_video_frame_t * dst, const gavl_video_frame_t * src) { int i; GLenum type = 0, format = 0; gavl_gl_frame_info_t * info; info = src->storage; gavl_get_gl_format(fmt->pixelformat, &format, NULL, &type); for(i = 0; i < info->num_textures; i++) { glActiveTexture(GL_TEXTURE0 + i); glBindTexture(GL_TEXTURE_2D, info->textures[i]); if(info->num_textures == 1) { /* Implies i = 0 */ glPixelStorei(GL_PACK_ROW_LENGTH, dst->strides[i] / gavl_pixelformat_bytes_per_pixel(fmt->pixelformat)); } else { glPixelStorei(GL_PACK_ROW_LENGTH, dst->strides[i] / gavl_pixelformat_bytes_per_component(fmt->pixelformat)); } glGetTexImage(GL_TEXTURE_2D, 0, format, type, dst->planes[i]); } } void gavl_gl_frame_to_hw(const gavl_video_format_t * fmt, gavl_video_frame_t * dst, const gavl_video_frame_t * src) { int i; GLenum type = 0, format = 0; int num_planes = get_frame_planes(dst); int width, height; gavl_gl_frame_info_t * info = dst->storage; gavl_get_gl_format(fmt->pixelformat, &format, NULL, &type); width = fmt->image_width; height = fmt->image_height; for(i = 0; i < num_planes; i++) { glActiveTexture(GL_TEXTURE0 + i); glBindTexture(GL_TEXTURE_2D, info->textures[i]); if(num_planes == 1) { /* Implies i = 0 */ glPixelStorei(GL_UNPACK_ROW_LENGTH, src->strides[i] / gavl_pixelformat_bytes_per_pixel(fmt->pixelformat)); } else { glPixelStorei(GL_UNPACK_ROW_LENGTH, src->strides[i] / gavl_pixelformat_bytes_per_component(fmt->pixelformat)); } if(i == 1) { int sub_h, sub_v; gavl_pixelformat_chroma_sub(fmt->pixelformat, &sub_h, &sub_v); width /= sub_h; height /= sub_v; } // fprintf(stderr, "glTexSubImage2D %d\n", i); glTexSubImage2D(GL_TEXTURE_2D, 0, 0, 0, width, height, format, type, src->planes[i]); if(gavl_gl_log_error("glTexSubImage2D")) { fprintf(stderr, "glTexSubImage2D failed\n"); gavl_video_format_dump(fmt); } } gavl_video_frame_copy_metadata(dst, src); } static const struct { GLenum err; const char * msg; } error_codes[] = { { GL_INVALID_ENUM, "Invalid enum" }, { GL_INVALID_VALUE, "Invalid value" }, { GL_INVALID_OPERATION, "Invalid operation" }, { GL_STACK_OVERFLOW, "Stack overflow" }, { GL_STACK_UNDERFLOW, "Stack underflow" }, { GL_OUT_OF_MEMORY, "Out of memory" }, { GL_INVALID_FRAMEBUFFER_OPERATION, "Invalid framebuffer operation" }, { 0, NULL }, }; const char * gavl_gl_get_error_string(GLenum err) { int idx = 0; if(!err) return "No error"; while(error_codes[idx].msg) { if(error_codes[idx].err == err) return error_codes[idx].msg; idx++; } return "Unknown error"; } int gavl_gl_log_error(const char * funcname) { int ret = 0; GLenum err; // glFlush(); while((err = glGetError())) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "%s failed: %s", funcname, gavl_gl_get_error_string(err)); ret = 1; } return ret; } void gavl_gl_flush_errors() { while((glGetError())) ; } bplaum-gavl-b9385e3/gavl/hw_shm.c000066400000000000000000000102431513252040200166410ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include #include #include #include typedef struct { int ctx; int idx; } shm_t; /* Functions */ static void destroy_native_shm(void * native) { shm_t * s = native; free(s); } static gavl_pixelformat_t * get_image_formats_shm(gavl_hw_context_t * ctx, gavl_hw_frame_mode_t mode) { int i; gavl_pixelformat_t * pixelformats = NULL; int num_image_formats; if(mode == GAVL_HW_FRAME_MODE_MAP) { num_image_formats = gavl_num_pixelformats(); pixelformats = calloc(num_image_formats+1, sizeof(*pixelformats)); for(i = 0; i < num_image_formats; i++) pixelformats[i] = gavl_get_pixelformat(i); pixelformats[num_image_formats] = GAVL_PIXELFORMAT_NONE; } return pixelformats; } static gavl_video_frame_t * video_frame_create_hw_shm(gavl_hw_context_t * ctx, int alloc_resource) { shm_t * s = ctx->native; gavl_shm_video_frame_t * priv = calloc(1, sizeof(*priv)); gavl_video_frame_t * ret = gavl_video_frame_create(NULL); ret->storage = priv; priv->shm = gavl_shm_create(gavl_video_format_get_image_size(&ctx->vfmt), &s->ctx, &s->idx); /* Set pointers */ gavl_video_frame_set_planes(ret, &ctx->vfmt, gavl_shm_get_buffer(priv->shm, NULL)); return ret; } static void video_frame_destroy_shm(gavl_video_frame_t * f, int destroy_resource) { // shm_t * p; if(f->storage) { gavl_shm_video_frame_t * priv = f->storage; if(priv->shm) gavl_shm_destroy(priv->shm); free(priv); f->storage = NULL; } gavl_video_frame_null(f); gavl_video_frame_destroy(f); } static int video_frame_map_shm(gavl_video_frame_t * f, int wr) { // gavl_shm_video_frame_t * priv = f->storage; // gavl_shm_map(const char * name, int size, int wr); if(wr) { } else { } return 1; } static int video_frame_unmap_shm(gavl_video_frame_t * frame) { return 0; } static const gavl_hw_funcs_t funcs = { .destroy_native = destroy_native_shm, .get_image_formats = get_image_formats_shm, .video_frame_create = video_frame_create_hw_shm, .video_frame_destroy = video_frame_destroy_shm, .video_frame_map = video_frame_map_shm, .video_frame_unmap = video_frame_unmap_shm, // .video_format_adjust = video_format_adjust_shm, // .overlay_format_adjust = overlay_format_adjust_shm, }; gavl_hw_context_t * gavl_hw_ctx_create_shm() { shm_t * native = calloc(1, sizeof(*native)); return gavl_hw_context_create_internal(native, &funcs, GAVL_HW_SHM, GAVL_HW_SUPPORTS_VIDEO | GAVL_HW_SUPPORTS_VIDEO_MAP); } /* struct gavl_hw_context_s { void * native; gavl_hw_type_t type; const gavl_hw_funcs_t * funcs; gavl_pixelformat_t * image_formats; gavl_pixelformat_t * overlay_formats; }; gavl_hw_context_t * gavl_hw_context_create_internal(void * native, const gavl_hw_funcs_t * funcs, gavl_hw_type_t type); void gavl_hw_destroy_video_frame(gavl_hw_context_t * ctx, gavl_video_frame_t * frame); */ bplaum-gavl-b9385e3/gavl/hw_v4l2.c000066400000000000000000003034121513252040200166440ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include // #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #define LOG_DOMAIN "v4l2" #include #include #include #ifdef HAVE_DRM #include #else #define DRM_FORMAT_BGR888 0 #define DRM_FORMAT_RGB888 0 #define DRM_FORMAT_BGRX8888 0 #define DRM_FORMAT_RGBX8888 0 #define DRM_FORMAT_R8 0 #define DRM_FORMAT_YUV410 0 #define DRM_FORMAT_YUV420 0 #define DRM_FORMAT_YUV422 0 #define DRM_FORMAT_YUYV 0 #define DRM_FORMAT_UYVY 0 #endif // #define DUMP_CONTROLS // #define DUMP_QUEUE // #define MAX_BUFFERS 16 // From libavcodec // Low-Bitrate streams from ZDF need 32 packets to get the format! #define DECODER_NUM_PACKETS 24 #define DECODER_NUM_FRAMES 16 #define MAX_BUFFERS DECODER_NUM_PACKETS // #define MAX_FORMAT_FRAMES 32 // #define DUMP_PACKETS // #define DUMP_EXTRADATA #define POLL_TIMEOUT 2000 #define DECODER_HAVE_FORMAT (1<<0) #define DECODER_SENT_EOS (1<<1) #define DECODER_GOT_EOS (1<<2) #define DECODER_HAVE_FRAME (1<<3) #define OUTPUT_STREAM_ON (1<<4) #define CAPTURE_STREAM_ON (1<<5) #define DMABUF_CHECKED (1<<6) #define DMABUF_SUPPORTED (1<<7) #define GAVL_V4L2_BUFFER_FLAG_QUEUED (1<<0) #define GAVL_V4L2_BUFFER_FLAG_VALID (1<<1) static gavl_pixelformat_t * query_pixelformats(int fd, int buf_type); static gavl_v4l2_device_t * gavl_v4l2_device_open(const gavl_dictionary_t * dev); static void format_gavl_to_v4l2(const gavl_video_format_t * gavl, struct v4l2_format * v4l, int type); static void format_v4l2_to_gavl(const struct v4l2_format * v4l, const struct v4l2_streamparm * parm, gavl_video_format_t * gavl, int type); static void query_controls(gavl_v4l2_device_t * dev); static void free_controls(gavl_v4l2_device_t * dev); #ifdef DUMP_CONTROLS static void dump_controls(gavl_v4l2_device_t * dev); #endif typedef struct { const char * gavl; int v4l2; } str_int_map_t; typedef struct { int num_bufs; gavl_v4l2_buffer_t bufs[MAX_BUFFERS]; // Output gavl_v4l2_buffer_t * current_buf; gavl_video_frame_t * vframe; gavl_packet_t packet; int buf_type; struct v4l2_format fmt; struct v4l2_streamparm parm; gavl_video_format_t format; gavl_compression_info_t ci; uint32_t frame_counter; } port_t; // Output or capture struct gavl_v4l2_device_s { port_t output; port_t capture; gavl_dictionary_t dev; int fd; int64_t pts; gavl_timer_t * timer; int decoder_delay; // packets sent - frames read gavl_packet_t packet; int timescale; gavl_packet_source_t * psrc_src; gavl_packet_source_t * psrc_priv; gavl_video_source_t * vsrc_priv; gavl_video_sink_t * vsink_priv; // gavl_packet_source_t * psrc_priv; gavl_packet_pts_cache_t * cache; int flags; /* hwctx we belong to */ gavl_hw_context_t * hwctx; gavl_dictionary_t * s; // Stream (not owned by us) #ifdef HAVE_DRM /* For importig DMA buffers */ gavl_hw_context_t * hwctx_dmabuf; #endif // HAVE_DRM gavl_v4l2_control_t * controls; int num_controls; gavl_pixelformat_t * sink_pixelformats; }; static const gavl_v4l2_control_t * control_by_id(const gavl_v4l2_device_t * dev, int id) { int i; for(i = 0; i < dev->num_controls; i++) { if(dev->controls[i].ctrl.id == id) return &dev->controls[i]; } return NULL; } static const struct v4l2_querymenu * item_by_id(const gavl_v4l2_control_t * ctrl, int id) { int i; for(i = 0; i < ctrl->num_menu_items; i++) { if(ctrl->menu_items[i].index + ctrl->ctrl.minimum == id) return &ctrl->menu_items[i]; } return NULL; } static int my_ioctl(int fd, int request, void * arg) { int r; do{ r = ioctl (fd, request, arg); } while (-1 == r && EINTR == errno); return r; } static struct { int cap_flag; const char * name; } capabilities[] = { { V4L2_CAP_VIDEO_CAPTURE, "Capture" }, // Is a video capture device { V4L2_CAP_VIDEO_OUTPUT, "Output" }, // Is a video output device { V4L2_CAP_VIDEO_OVERLAY, "Overlay" }, // Can do video overlay { V4L2_CAP_VBI_CAPTURE, "VBI Capture" }, // Is a raw VBI capture device { V4L2_CAP_VBI_OUTPUT, "VBO Output" }, // Is a raw VBI output device { V4L2_CAP_SLICED_VBI_CAPTURE, "Sliced VBI Capture" }, // Is a sliced VBI capture device { V4L2_CAP_SLICED_VBI_OUTPUT, "Sliced VBI Output" }, // Is a sliced VBI output device { V4L2_CAP_RDS_CAPTURE, "RDS Capture" }, // RDS data capture { V4L2_CAP_VIDEO_OUTPUT_OVERLAY, "Output Overlay" }, // Can do video output overlay { V4L2_CAP_HW_FREQ_SEEK, "Freq Seek" }, // Can do hardware frequency seek { V4L2_CAP_RDS_OUTPUT, "RDS Output" }, // Is an RDS encoder /* Is a video capture device that supports multiplanar formats */ { V4L2_CAP_VIDEO_CAPTURE_MPLANE, "Capture multiplane" }, /* Is a video output device that supports multiplanar formats */ { V4L2_CAP_VIDEO_OUTPUT_MPLANE, "Output multiplane" }, /* Is a video mem-to-mem device that supports multiplanar formats */ { V4L2_CAP_VIDEO_M2M_MPLANE, "M2M multiplane" }, /* Is a video mem-to-mem device */ { V4L2_CAP_VIDEO_M2M, "M2M" }, { V4L2_CAP_TUNER, "Tuner" }, // has a tuner { V4L2_CAP_AUDIO, "Audio" }, // has audio support { V4L2_CAP_RADIO, "Radio" }, // is a radio device { V4L2_CAP_MODULATOR, "Modulator" }, // has a modulator { V4L2_CAP_SDR_CAPTURE, "SDR Capture" }, // Is a SDR capture device { V4L2_CAP_EXT_PIX_FORMAT, "Extended Pixelformat" }, // Supports the extended pixel format { V4L2_CAP_SDR_OUTPUT, "SDR Output" }, // Is a SDR output device { V4L2_CAP_META_CAPTURE, "Metadata Capture" }, // Is a metadata capture device { V4L2_CAP_READWRITE, "read/write" }, // read/write systemcalls { V4L2_CAP_ASYNCIO, "Async I/O" }, // async I/O { V4L2_CAP_STREAMING, "Streaming" }, // streaming I/O ioctls #ifdef V4L2_CAP_META_OUTPUT { V4L2_CAP_META_OUTPUT, "metadata output" }, // Is a metadata output device #endif { V4L2_CAP_TOUCH, "Touch" }, // Is a touch device { V4L2_CAP_DEVICE_CAPS, "Device caps" }, // sets device capabilities field { /* End */ }, }; static char * buf_type_to_string(int buf_type) { switch(buf_type) { case V4L2_BUF_TYPE_VIDEO_OUTPUT: return "output"; break; case V4L2_BUF_TYPE_VIDEO_CAPTURE: return "capture"; break; case V4L2_BUF_TYPE_VIDEO_OUTPUT_MPLANE: return "output (planar)"; break; case V4L2_BUF_TYPE_VIDEO_CAPTURE_MPLANE: return "capture (planar)"; break; } return NULL; } static void enum_formats(int fd, int type) { int idx = 0; struct v4l2_fmtdesc fmt; while(1) { fmt.index = idx++; fmt.type = type; if(my_ioctl(fd, VIDIOC_ENUM_FMT, &fmt) == -1) { return; } gavl_dprintf(" Format %d: %c%c%c%c %s\n", idx, fmt.pixelformat & 0xff, (fmt.pixelformat>>8) & 0xff, (fmt.pixelformat>>16) & 0xff, (fmt.pixelformat>>24) & 0xff, fmt.description); } } void gavl_v4l2_device_info(const char * dev) { char * flag_str = NULL; int idx; gavl_v4l2_device_t device; struct v4l2_capability cap; memset(&device, 0, sizeof(device)); if((device.fd = open(dev, O_RDWR /* required */ | O_NONBLOCK, 0)) < 0) { return; } if(my_ioctl(device.fd, VIDIOC_QUERYCAP, &cap) == -1) { } query_controls(&device); #ifdef DUMP_CONTROLS dump_controls(&device); #endif gavl_dprintf("Device: %s\n", dev); gavl_dprintf("Driver: %s\n", cap.driver); gavl_dprintf("Card: %s\n", cap.card); gavl_dprintf("Bus info: %s\n", cap.bus_info); gavl_dprintf("Version: %d\n", cap.version); idx = 0; while(capabilities[idx].cap_flag) { if(capabilities[idx].cap_flag & cap.capabilities) { if(flag_str) flag_str = gavl_strcat(flag_str, ", "); flag_str = gavl_strcat(flag_str, capabilities[idx].name); } idx++; } gavl_dprintf("Capabilities: %s\n", flag_str); if(flag_str) free(flag_str); if(cap.capabilities & (V4L2_CAP_VIDEO_OUTPUT | V4L2_CAP_VIDEO_M2M)) { gavl_dprintf("Output formats\n"); enum_formats(device.fd, V4L2_BUF_TYPE_VIDEO_OUTPUT); } if(cap.capabilities & (V4L2_CAP_VIDEO_OUTPUT_MPLANE | V4L2_CAP_VIDEO_M2M_MPLANE)) { gavl_dprintf("Output formats (planar)\n"); enum_formats(device.fd, V4L2_BUF_TYPE_VIDEO_OUTPUT_MPLANE); } if(cap.capabilities & (V4L2_CAP_VIDEO_CAPTURE | V4L2_CAP_VIDEO_M2M)) { gavl_dprintf("Capture formats\n"); enum_formats(device.fd, V4L2_BUF_TYPE_VIDEO_CAPTURE); } if(cap.capabilities & (V4L2_CAP_VIDEO_CAPTURE_MPLANE | V4L2_CAP_VIDEO_M2M_MPLANE)) { gavl_dprintf("Capture formats (planar)\n"); enum_formats(device.fd, V4L2_BUF_TYPE_VIDEO_CAPTURE_MPLANE); } gavl_dprintf("\n"); // dump_controls(&device); free_controls(&device); close(device.fd); } void gavl_v4l2_device_infos() { int i; char * dev; for(i = 0; i < 128; i++) { dev = gavl_sprintf("/dev/video%d", i); gavl_v4l2_device_info(dev); free(dev); } } /* Query formats, for which gavl_pixelformats exist */ static gavl_pixelformat_t * query_pixelformats(int fd, int buf_type) { int idx = 0; gavl_pixelformat_t pfmt; gavl_pixelformat_t * ret = NULL; int num_ret = 0; int ret_alloc = 0; struct v4l2_fmtdesc fmt; while(1) { memset(&fmt, 0, sizeof(fmt)); fmt.index = idx++; fmt.type = buf_type; if(my_ioctl(fd, VIDIOC_ENUM_FMT, &fmt) == -1) break; if((pfmt = gavl_v4l2_pix_fmt_to_pixelformat(fmt.pixelformat, V4L2_QUANTIZATION_DEFAULT)) != GAVL_PIXELFORMAT_NONE) { if(!ret || (num_ret == ret_alloc-1)) { ret_alloc += 32; ret = realloc(ret, ret_alloc * sizeof(*ret)); memset(ret + num_ret, 0, (ret_alloc-num_ret) * sizeof(*ret)); } ret[num_ret] = pfmt; num_ret++; } } ret[num_ret] = GAVL_PIXELFORMAT_NONE; return ret; } static void query_formats(int fd, int buf_type, gavl_array_t * ret) { int idx = 0; struct v4l2_fmtdesc fmt; gavl_value_t val; gavl_dictionary_t * dict; while(1) { memset(&fmt, 0, sizeof(fmt)); fmt.index = idx++; fmt.type = buf_type; if(my_ioctl(fd, VIDIOC_ENUM_FMT, &fmt) == -1) break; gavl_value_init(&val); dict = gavl_value_set_dictionary(&val); gavl_dictionary_set_int(dict, GAVL_V4L2_FORMAT_V4L_PIX_FMT, fmt.pixelformat); gavl_dictionary_set_int(dict, GAVL_V4L2_FORMAT_V4L_FLAGS, fmt.flags); gavl_dictionary_set_string(dict, GAVL_META_LABEL, (char*)fmt.description); if(fmt.flags & V4L2_FMT_FLAG_COMPRESSED) gavl_dictionary_set_int(dict, GAVL_V4L2_FORMAT_GAVL_CODEC_ID, gavl_v4l2_pix_fmt_to_codec_id(fmt.pixelformat)); else gavl_dictionary_set_int(dict, GAVL_V4L2_FORMAT_GAVL_PIXELFORMAT, gavl_v4l2_pix_fmt_to_pixelformat(fmt.pixelformat, V4L2_QUANTIZATION_DEFAULT)); gavl_array_splice_val_nocopy(ret, -1, 0, &val); } } #ifdef DUMP_CONTROLS static struct { enum v4l2_ctrl_type type; const char * name; } control_types[] = { { V4L2_CTRL_TYPE_INTEGER, "INTEGER" }, { V4L2_CTRL_TYPE_BOOLEAN, "BOOLEAN" }, { V4L2_CTRL_TYPE_MENU, "MENU" }, { V4L2_CTRL_TYPE_BUTTON, "BUTTON" }, { V4L2_CTRL_TYPE_INTEGER64, "INTEGER64" }, { V4L2_CTRL_TYPE_CTRL_CLASS, "CTRL_CLASS" }, { V4L2_CTRL_TYPE_STRING, "STRING" }, { V4L2_CTRL_TYPE_BITMASK, "BITMASK" }, { V4L2_CTRL_TYPE_INTEGER_MENU, "INTEGER_MENU" }, { V4L2_CTRL_TYPE_U8, "U8" }, { V4L2_CTRL_TYPE_U16, "U16" }, { V4L2_CTRL_TYPE_U32, "U32" }, { V4L2_CTRL_TYPE_AREA, "AREA" }, { }, }; static const char * control_type_name(enum v4l2_ctrl_type type) { int idx = 0; while(control_types[idx].type) { if(control_types[idx].type == type) return control_types[idx].name; idx++; } return "Unknown"; } static struct { int flag; const char * name; } control_flag_names[] = { { V4L2_CTRL_FLAG_DISABLED, "Disabled" }, { V4L2_CTRL_FLAG_GRABBED, "Grabbed" }, { V4L2_CTRL_FLAG_READ_ONLY, "ReadOnly" }, { V4L2_CTRL_FLAG_UPDATE, "Update" }, { V4L2_CTRL_FLAG_INACTIVE, "Inactive" }, { V4L2_CTRL_FLAG_SLIDER, "Slider" }, { V4L2_CTRL_FLAG_WRITE_ONLY, "WriteOnly" }, { V4L2_CTRL_FLAG_VOLATILE, "Volatile" }, { V4L2_CTRL_FLAG_HAS_PAYLOAD, "HasPayload" }, { V4L2_CTRL_FLAG_EXECUTE_ON_WRITE, "ExecuteOnWrite" }, { V4L2_CTRL_FLAG_MODIFY_LAYOUT, "ModifyLayout" }, { V4L2_CTRL_FLAG_DYNAMIC_ARRAY, "DynamicArray" }, { }, }; static void print_flag_names(int flags) { int printed = 0; int idx = 0; while(control_flag_names[idx].flag) { if(control_flag_names[idx].flag & flags) { if(printed) gavl_dprintf(", "); gavl_dprintf("%s", control_flag_names[idx].name); printed = 1; } idx++; } } static void dump_control(gavl_v4l2_control_t * ctrl) { int i; gavl_dprintf("Control %s Type: %s [%04x]\n", ctrl->ctrl.name, control_type_name(ctrl->ctrl.type), ctrl->ctrl.type); if((ctrl->ctrl.type != V4L2_CTRL_TYPE_BOOLEAN) && (ctrl->ctrl.minimum != ctrl->ctrl.maximum)) gavl_dprintf(" Range: %l"PRId64" - %l"PRId64"\n", ctrl->ctrl.minimum, ctrl->ctrl.maximum); if(ctrl->ctrl.flags) { gavl_dprintf(" Flags: "); print_flag_names(ctrl->ctrl.flags); gavl_dprintf("\n"); } if(ctrl->menu_items) { gavl_dprintf(" Menu items:\n"); for(i = 0; i < ctrl->num_menu_items; i++) gavl_dprintf(" %s\n", ctrl->menu_items[i].name); } } static void dump_controls(gavl_v4l2_device_t * dev) { int i; for(i = 0; i < dev->num_controls; i++) dump_control(&dev->controls[i]); } #endif static void query_menu(int fd, gavl_v4l2_control_t * ctrl) { int i; int num = ctrl->ctrl.maximum - ctrl->ctrl.minimum + 1; ctrl->menu_items = calloc(num, sizeof(*ctrl->menu_items)); for(i = 0; i < num; i++) { ctrl->menu_items[ctrl->num_menu_items].id = ctrl->ctrl.id; ctrl->menu_items[ctrl->num_menu_items].index = ctrl->ctrl.minimum + i; if(my_ioctl(fd, VIDIOC_QUERYMENU, &ctrl->menu_items[ctrl->num_menu_items]) == 0) ctrl->num_menu_items++; } } static void query_controls(gavl_v4l2_device_t * dev) { int idx = 0; struct v4l2_query_ext_ctrl query_ext_ctrl; memset(&query_ext_ctrl, 0, sizeof(query_ext_ctrl)); query_ext_ctrl.id = V4L2_CTRL_FLAG_NEXT_CTRL | V4L2_CTRL_FLAG_NEXT_COMPOUND; while(my_ioctl(dev->fd, VIDIOC_QUERY_EXT_CTRL, &query_ext_ctrl) == 0) { if(!(query_ext_ctrl.flags & V4L2_CTRL_FLAG_DISABLED)) dev->num_controls++; query_ext_ctrl.id |= V4L2_CTRL_FLAG_NEXT_CTRL | V4L2_CTRL_FLAG_NEXT_COMPOUND; } if(!dev->num_controls) return; if(errno != EINVAL) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "VIDIOC_QUERY_EXT_CTRL failed"); return; } memset(&query_ext_ctrl, 0, sizeof(query_ext_ctrl)); dev->controls = calloc(dev->num_controls, sizeof(*dev->controls)); dev->controls[0].ctrl.id = V4L2_CTRL_FLAG_NEXT_CTRL | V4L2_CTRL_FLAG_NEXT_COMPOUND; while(0 == ioctl(dev->fd, VIDIOC_QUERY_EXT_CTRL, &dev->controls[idx].ctrl)) { if(query_ext_ctrl.flags & V4L2_CTRL_FLAG_DISABLED) { dev->controls[idx].ctrl.id |= V4L2_CTRL_FLAG_NEXT_CTRL | V4L2_CTRL_FLAG_NEXT_COMPOUND; continue; } if(dev->controls[idx].ctrl.type == V4L2_CTRL_TYPE_MENU) query_menu(dev->fd, &dev->controls[idx]); idx++; if(idx < dev->num_controls) { dev->controls[idx].ctrl.id = dev->controls[idx-1].ctrl.id; dev->controls[idx].ctrl.id |= (V4L2_CTRL_FLAG_NEXT_CTRL | V4L2_CTRL_FLAG_NEXT_COMPOUND); } else break; } // dump_controls(dev); } static void free_controls(gavl_v4l2_device_t * dev) { int i; if(!dev->controls) return; for(i = 0; i < dev->num_controls; i++) { if(dev->controls[i].menu_items) free(dev->controls[i].menu_items); } free(dev->controls); } #if 0 static void query_framesizes(int fd, int buf_type, gavl_array_t * ret) { } #endif static const struct { gavl_v4l2_device_type_t type; const char * name; } device_types[] = { { GAVL_V4L2_DEVICE_SOURCE, "Source" }, { GAVL_V4L2_DEVICE_SINK, "Sink" }, { GAVL_V4L2_DEVICE_ENCODER, "Encoder" }, { GAVL_V4L2_DEVICE_DECODER, "Decoder" }, { GAVL_V4L2_DEVICE_CONVERTER, "Converter" }, { GAVL_V4L2_DEVICE_UNKNOWN, "Unknown" }, { GAVL_V4L2_DEVICE_LOOPBACK, "Loopback" }, { }, }; static const char * get_type_label(gavl_v4l2_device_type_t type) { int idx = 0; while(device_types[idx].name) { if(type == device_types[idx].type) return device_types[idx].name; idx++; } return NULL; } static int formats_compressed(const gavl_array_t * arr) { const gavl_dictionary_t * fmt; int flags; /* Just checking the first format should be sufficient */ if(arr->num_entries < 1) return 0; if((fmt = gavl_value_get_dictionary(&arr->entries[0])) && gavl_dictionary_get_int(fmt, GAVL_V4L2_FORMAT_V4L_FLAGS, &flags) && (flags & V4L2_FMT_FLAG_COMPRESSED)) return 1; else return 0; } #define IS_PLANAR(buf_type) \ ((buf_type == V4L2_BUF_TYPE_VIDEO_OUTPUT_MPLANE) || (buf_type == V4L2_BUF_TYPE_VIDEO_CAPTURE_MPLANE)) #define IS_CAPTURE(buf_type) \ ((buf_type == V4L2_BUF_TYPE_VIDEO_CAPTURE_MPLANE) || (buf_type == V4L2_BUF_TYPE_VIDEO_CAPTURE)) #define IS_OUTPUT(buf_type) \ ((buf_type == V4L2_BUF_TYPE_VIDEO_OUTPUT_MPLANE) || (buf_type == V4L2_BUF_TYPE_VIDEO_OUTPUT)) static int dequeue_buffer(gavl_v4l2_device_t * dev, int type, int memory, int * flags, gavl_time_t * timestamp) { int i; struct v4l2_buffer buf; struct v4l2_plane planes[GAVL_MAX_PLANES]; if(type == dev->output.buf_type) { for(i = 0; i < dev->output.num_bufs; i++) { if(!(dev->output.bufs[i].flags & GAVL_V4L2_BUFFER_FLAG_QUEUED)) return i; } } /* Dequeue buffer */ memset(&buf, 0, sizeof(buf)); if(IS_PLANAR(type)) { memset(planes, 0, GAVL_MAX_PLANES*sizeof(planes[0])); buf.m.planes = planes; buf.length = GAVL_MAX_PLANES; } buf.type = type; buf.memory = memory; if(my_ioctl(dev->fd, VIDIOC_DQBUF, &buf) == -1) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "VIDIOC_DQBUF failed: %s", strerror(errno)); return -1; } #ifdef DUMP_QUEUE gavl_dprintf("Dequeued buf %d\n", buf.index); #endif if(type == dev->capture.buf_type) { dev->capture.bufs[buf.index].bytesused = buf.bytesused; dev->capture.current_buf = &dev->capture.bufs[buf.index]; } if(flags) *flags = buf.flags; if(timestamp) { *timestamp = buf.timestamp.tv_sec; *timestamp *= GAVL_TIME_SCALE; *timestamp += buf.timestamp.tv_usec; } return buf.index; } static gavl_v4l2_buffer_t * get_buffer_output(gavl_v4l2_device_t * dev) { int idx; idx = dequeue_buffer(dev, dev->output.buf_type, V4L2_MEMORY_MMAP, NULL, NULL); dev->output.current_buf = &dev->output.bufs[idx]; dev->output.current_buf->flags &= ~GAVL_V4L2_BUFFER_FLAG_QUEUED; return dev->output.current_buf; } static int done_buffer_capture(gavl_v4l2_device_t * dev) { // struct v4l2_buffer buf; // struct v4l2_plane planes[GAVL_MAX_PLANES]; if(dev->capture.current_buf) { if(my_ioctl(dev->fd, VIDIOC_QBUF, &dev->capture.current_buf->buf) == -1) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "VIDIOC_QBUF failed for capture (index: %d): %s", dev->capture.current_buf->buf.index, strerror(errno)); return 0; } #ifdef DUMP_QUEUE gavl_dprintf("Queued buf %d\n", dev->capture.current_buf->buf.index); #endif dev->capture.current_buf->flags |= GAVL_V4L2_BUFFER_FLAG_QUEUED; dev->capture.current_buf = NULL; // fprintf(stderr, "Queueing buffer %d\n", buf.index); } return 1; } static gavl_packet_t * gavl_v4l2_device_get_packet_write(gavl_v4l2_device_t * dev) { if(!get_buffer_output(dev)) return NULL; dev->packet.buf.buf = dev->output.current_buf->ptrs[0]; if(IS_PLANAR(dev->output.buf_type)) dev->packet.buf.alloc = dev->output.current_buf->planes[0].length; else dev->packet.buf.alloc = dev->output.current_buf->buf.length; dev->packet.buf.len = 0; return &dev->packet; } static void set_buf_pts(struct v4l2_buffer * buf, gavl_time_t pts) { if(pts < 0) { buf->timestamp.tv_sec = pts / 1000000 - 1; } else { buf->timestamp.tv_sec = pts / 1000000; } buf->timestamp.tv_usec = pts - buf->timestamp.tv_sec * 1000000; buf->flags |= V4L2_BUF_FLAG_TIMESTAMP_MONOTONIC | V4L2_BUF_FLAG_TIMESTAMP_COPY | V4L2_BUF_FLAG_TSTAMP_SRC_SOE; } static gavl_sink_status_t gavl_v4l2_device_put_packet_write(gavl_v4l2_device_t * dev) { /* Queue compressed frame */ #ifdef DUMP_PACKETS fprintf(stderr, "Sending packet\n"); gavl_packet_dump(&dev->packet); #endif dev->output.current_buf->buf.flags = 0; // fprintf(stderr, "Packet pts: %"PRId64"\n", dev->packet.pts); if(IS_PLANAR(dev->output.buf_type)) dev->output.current_buf->buf.m.planes[0].bytesused = dev->packet.buf.len; else dev->output.current_buf->buf.bytesused = dev->packet.buf.len; if(dev->packet.flags & GAVL_PACKET_KEYFRAME) dev->output.current_buf->buf.flags |= V4L2_BUF_FLAG_KEYFRAME; set_buf_pts(&dev->output.current_buf->buf, dev->packet.pts); dev->output.current_buf->buf.field = V4L2_FIELD_NONE; if(my_ioctl(dev->fd, VIDIOC_QBUF, &dev->output.current_buf->buf) == -1) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "VIDIOC_QBUF failed for output: %s", strerror(errno)); return GAVL_SINK_ERROR; } #ifdef DUMP_QUEUE gavl_dprintf("Queued buf %d\n", dev->output.current_buf->buf.index); #endif dev->output.current_buf->flags |= GAVL_V4L2_BUFFER_FLAG_QUEUED; dev->output.current_buf = NULL; return GAVL_SINK_OK; } static int send_decoder_packet(gavl_v4l2_device_t * dev) { gavl_source_status_t st; gavl_packet_t * p = gavl_v4l2_device_get_packet_write(dev); /* Send EOF */ if(((st = gavl_packet_source_read_packet(dev->psrc_src, &p)) != GAVL_SOURCE_OK)) { // EOF is no error // gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "send_decoder_packet failed, got no packet (source status %d)", st); if(!(dev->flags & DECODER_SENT_EOS)) { /* Send EOS */ struct v4l2_decoder_cmd cmd; memset(&cmd, 0, sizeof(cmd)); cmd.cmd = V4L2_DEC_CMD_STOP; if(my_ioctl(dev->fd, VIDIOC_DECODER_CMD, &cmd) == -1) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "V4L2_DEC_CMD_STOP failed %s", strerror(errno)); } dev->flags |= DECODER_SENT_EOS; // fprintf(stderr, "Sent EOS\n"); return 1; } else { return 0; } } if(gavl_v4l2_device_put_packet_write(dev) != GAVL_SINK_OK) return 0; dev->decoder_delay++; gavl_packet_pts_cache_push_packet(dev->cache, p); return 1; } static int request_buffers_mmap(gavl_v4l2_device_t * dev, int type, int count) { int i, j; // struct v4l2_buffer buf; struct v4l2_requestbuffers req; // struct v4l2_plane planes[GAVL_MAX_PLANES]; port_t * port = (IS_OUTPUT(type) ? &dev->output : &dev->capture); memset(&req, 0, sizeof(req)); req.count = count; req.type = type; req.memory = V4L2_MEMORY_MMAP; if(my_ioctl(dev->fd, VIDIOC_REQBUFS, &req) == -1) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Requesting buffers failed: %s", strerror(errno)); return 0; } gavl_log(GAVL_LOG_INFO, LOG_DOMAIN, "Requested %d buffers for %s, got %d", count, buf_type_to_string(type), req.count); for(i = 0; i < req.count; i++) { port->bufs[i].buf.index = i; port->bufs[i].buf.type = type; if(IS_PLANAR(type)) { port->bufs[i].buf.m.planes = port->bufs[i].planes; port->bufs[i].buf.length = GAVL_MAX_PLANES; } if(my_ioctl(dev->fd, VIDIOC_QUERYBUF, &port->bufs[i].buf) == -1) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "VIDIOC_QUERYBUF failed: %s", strerror(errno)); return 0; } #if 0 if(buf.flags & V4L2_BUF_FLAG_TIMESTAMP_COPY) { fprintf(stderr, "Copy timestamps\n"); } #endif port->bufs[i].total = req.count; if(IS_PLANAR(type)) { if(port->bufs[i].buf.length > GAVL_MAX_PLANES) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "%d planes not supported", port->bufs[i].buf.length); return 0; } for(j = 0; j < port->bufs[i].buf.length; j++) { port->bufs[i].ptrs[j] = mmap(NULL, port->bufs[i].buf.m.planes[j].length, PROT_READ | PROT_WRITE, MAP_SHARED, dev->fd, port->bufs[i].buf.m.planes[j].m.mem_offset); } } else { port->bufs[i].ptrs[0] = mmap(NULL, port->bufs[i].buf.length, PROT_READ | PROT_WRITE, MAP_SHARED, dev->fd, port->bufs[i].buf.m.offset); } } return req.count; } static void release_buffers_mmap(gavl_v4l2_device_t * dev, int type, int count) { int i, j; struct v4l2_requestbuffers req; port_t * port = (IS_OUTPUT(type) ? &dev->output : &dev->capture); memset(&req, 0, sizeof(req)); for(i = 0; i < port->bufs[0].total; i++) { if(IS_PLANAR(type)) { for(j = 0; j < port->bufs[i].buf.length; j++) munmap(port->bufs[i].ptrs[j], port->bufs[i].buf.m.planes[j].length); } else munmap(port->bufs[i].ptrs[0], port->bufs[i].buf.length); } req.count = 0; req.type = type; req.memory = V4L2_MEMORY_MMAP; if(my_ioctl(dev->fd, VIDIOC_REQBUFS, &req) == -1) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "VIDIOC_REQBUFS for releasing failed: %s", strerror(errno)); } memset(port->bufs, 0, count * sizeof(port->bufs[0])); } #ifdef HAVE_DRM static int request_buffers_dmabuf(gavl_v4l2_device_t * dev, int type, int count, gavl_v4l2_buffer_t * bufs) { int i; struct v4l2_requestbuffers req; memset(&req, 0, sizeof(req)); req.count = count; req.type = type; req.memory = V4L2_MEMORY_DMABUF; if(my_ioctl(dev->fd, VIDIOC_REQBUFS, &req) == -1) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Requesting buffers failed: %s", strerror(errno)); return 0; } gavl_log(GAVL_LOG_INFO, LOG_DOMAIN, "Requested %d buffers, got %d", count, req.count); for(i = 0; i < req.count; i++) { } return 1; } static void release_buffers_dmabuf(gavl_v4l2_device_t * dev, int type, int count, gavl_v4l2_buffer_t * bufs) { struct v4l2_requestbuffers req; memset(&req, 0, sizeof(req)); req.count = 0; req.type = type; req.memory = V4L2_MEMORY_DMABUF; if(my_ioctl(dev->fd, VIDIOC_REQBUFS, &req) == -1) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "VIDIOC_REQBUFS for releasing failed: %s", strerror(errno)); } memset(bufs, 0, count * sizeof(*bufs)); } #endif gavl_v4l2_device_t * gavl_v4l2_device_open(const gavl_dictionary_t * dev) { gavl_v4l2_device_t * ret = calloc(1, sizeof(*ret)); const char * path; gavl_dictionary_copy(&ret->dev, dev); if(!(path = gavl_dictionary_get_string(dev, GAVL_META_URI))) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "BUG: Path member missing"); goto fail; } gavl_log(GAVL_LOG_INFO, LOG_DOMAIN, "Opening %s", path); if((ret->fd = open(path, O_RDWR /* required */ | O_NONBLOCK, 0)) < 0) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Couldn't open %s: %s", path, strerror(errno)); goto fail; } query_controls(ret); #ifdef DUMP_CONTROLS dump_controls(ret); #endif return ret; fail: if(ret) gavl_v4l2_device_close(ret); return NULL; } #if 0 static void dump_fmt(gavl_v4l2_device_t * dev, const struct v4l2_format * fmt) { int i; fprintf(stderr, "Format\n"); if(dev->planar) { fprintf(stderr, " Size: %dx%d\n", fmt->fmt.pix_mp.width, fmt->fmt.pix_mp.height); fprintf(stderr, " Pixelformat: %c%c%c%c\n", (fmt->fmt.pix_mp.pixelformat) & 0xff, (fmt->fmt.pix_mp.pixelformat >> 8) & 0xff, (fmt->fmt.pix_mp.pixelformat >> 16) & 0xff, (fmt->fmt.pix_mp.pixelformat >> 24) & 0xff); fprintf(stderr, " Planes: %d\n", fmt->fmt.pix_mp.num_planes); for(i = 0; i < fmt->fmt.pix_mp.num_planes; i++) { fprintf(stderr, " Plane %d:\n", i); fprintf(stderr, " Sizeimage: %d\n", fmt->fmt.pix_mp.plane_fmt[i].sizeimage); fprintf(stderr, " Bytesperline: %d\n", fmt->fmt.pix_mp.plane_fmt[i].bytesperline); } } } #endif static int stream_on(gavl_v4l2_device_t * dev, int type) { if(my_ioctl(dev->fd, VIDIOC_STREAMON, &type) == -1) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "VIDIOC_STREAMON failed for %s: %s", buf_type_to_string(type), strerror(errno)); return 0; } if(IS_CAPTURE(type)) dev->flags |= CAPTURE_STREAM_ON; else if(IS_OUTPUT(type)) dev->flags |= OUTPUT_STREAM_ON; return 1; } static int stream_off(gavl_v4l2_device_t * dev, int type) { if(my_ioctl(dev->fd, VIDIOC_STREAMOFF, &type) == -1) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "VIDIOC_STREAMOFF failed: %s", strerror(errno)); return 0; } if(IS_CAPTURE(type)) dev->flags &= ~CAPTURE_STREAM_ON; else if(IS_OUTPUT(type)) dev->flags &= ~OUTPUT_STREAM_ON; return 1; } static int queue_frame_capture(gavl_v4l2_device_t * dev, int idx) { struct v4l2_buffer buf; struct v4l2_plane planes[GAVL_MAX_PLANES]; memset(&buf, 0, sizeof(buf)); if(IS_PLANAR(dev->capture.buf_type)) { memset(planes, 0, GAVL_MAX_PLANES*sizeof(planes[0])); buf.m.planes = planes; buf.length = GAVL_MAX_PLANES; } buf.type = dev->capture.buf_type; buf.index = idx; buf.memory = V4L2_MEMORY_MMAP; if(my_ioctl(dev->fd, VIDIOC_QBUF, &buf) == -1) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "VIDIOC_QBUF failed: %s", strerror(errno)); return 0; } #ifdef DUMP_QUEUE gavl_dprintf("Queued buf %d\n", buf.index); #endif dev->capture.bufs[idx].flags |= GAVL_V4L2_BUFFER_FLAG_QUEUED; return 1; } static void handle_decoder_event(gavl_v4l2_device_t * dev) { struct v4l2_event ev; while(!my_ioctl(dev->fd, VIDIOC_DQEVENT, &ev)) { // fprintf(stderr, "Got event %d\n", ev.type); switch(ev.type) { case V4L2_EVENT_SOURCE_CHANGE: // fprintf(stderr, "Source changed\n"); if(ev.u.src_change.changes & V4L2_EVENT_SRC_CH_RESOLUTION) { int i; memset(&dev->capture.fmt, 0, sizeof(dev->capture.fmt)); // fprintf(stderr, "Resolution changed\n"); dev->capture.fmt.type = dev->capture.buf_type; if(my_ioctl(dev->fd, VIDIOC_G_FMT, &dev->capture.fmt) == -1) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "VIDIOC_G_FMT failed: %s", strerror(errno)); } // dump_fmt(dev, &dev->capture.fmt); dev->capture.num_bufs = request_buffers_mmap(dev, dev->capture.buf_type, DECODER_NUM_FRAMES); for(i = 0; i < dev->capture.num_bufs; i++) queue_frame_capture(dev, i); stream_on(dev, dev->capture.buf_type); // fprintf(stderr, "Re-created buffers\n"); dev->flags |= DECODER_HAVE_FORMAT; } break; case V4L2_EVENT_EOS: dev->flags |= DECODER_GOT_EOS; // fprintf(stderr, "Got EOS\n"); break; } } } static int do_poll(gavl_v4l2_device_t * dev, int events, int * revents) { int result; struct pollfd fds; // fprintf(stderr, "do_poll\n"); fds.fd = dev->fd; fds.events = events; if(fds.events & POLLIN) fds.events |= POLLRDNORM; if(fds.events & POLLOUT) fds.events |= POLLWRNORM; fds.revents = 0; result = poll(&fds, 1, POLL_TIMEOUT); if(result == -1) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "poll() failed: %s", strerror(errno)); return 0; } *revents = 0; if(fds.revents & (POLLIN|POLLRDNORM)) *revents |= POLLIN; if(fds.revents & (POLLOUT|POLLWRNORM)) *revents |= POLLOUT; if(fds.revents & POLLPRI) *revents |= POLLPRI; return 1; } static void buffer_to_video_frame_mmap(gavl_v4l2_device_t * dev, port_t * port) { gavl_video_frame_t * f = port->vframe; gavl_v4l2_buffer_t * buf = port->current_buf; const struct v4l2_format * fmt = &port->fmt; int gavl_planes = gavl_pixelformat_num_planes(port->format.pixelformat); switch(gavl_planes) { case 1: if(IS_PLANAR(port->buf_type)) f->strides[0] = fmt->fmt.pix_mp.plane_fmt[0].bytesperline; else f->strides[0] = fmt->fmt.pix.bytesperline;; f->planes[0] = buf->ptrs[0]; break; case 3: if(IS_PLANAR(port->buf_type) && (fmt->fmt.pix_mp.num_planes == 3)) { f->strides[0] = fmt->fmt.pix_mp.plane_fmt[0].bytesperline; f->planes[0] = buf->ptrs[0]; /* Swap U and V */ if(fmt->fmt.pix_mp.pixelformat == V4L2_PIX_FMT_YVU420) { f->strides[1] = fmt->fmt.pix_mp.plane_fmt[2].bytesperline; f->planes[1] = buf->ptrs[2]; f->strides[2] = fmt->fmt.pix_mp.plane_fmt[1].bytesperline; f->planes[2] = buf->ptrs[1]; } else { f->strides[1] = fmt->fmt.pix_mp.plane_fmt[1].bytesperline; f->planes[1] = buf->ptrs[1]; f->strides[2] = fmt->fmt.pix_mp.plane_fmt[2].bytesperline; f->planes[2] = buf->ptrs[2]; } } else { int sizeimage; int sub_h = 0; int sub_v = 0; gavl_pixelformat_chroma_sub(port->format.pixelformat, &sub_h, &sub_v); if(IS_PLANAR(port->buf_type)) { f->strides[0] = fmt->fmt.pix_mp.plane_fmt[0].bytesperline; sizeimage = fmt->fmt.pix_mp.plane_fmt[0].sizeimage; } else { f->strides[0] = fmt->fmt.pix.bytesperline; sizeimage = fmt->fmt.pix.sizeimage; } sizeimage *= (sub_h * sub_v); sizeimage /= (2 + sub_h * sub_v); f->planes[0] = buf->ptrs[0]; f->strides[1] = f->strides[0] / sub_h; f->strides[2] = f->strides[1]; /* Swap U and V */ if(fmt->fmt.pix_mp.pixelformat == V4L2_PIX_FMT_YVU420) { f->planes[2] = f->planes[0] + sizeimage; f->planes[1] = f->planes[2] + sizeimage / (sub_h * sub_v); } else { f->planes[1] = f->planes[0] + sizeimage; f->planes[2] = f->planes[1] + sizeimage / (sub_h * sub_v); } } break; } f->hwctx = dev->hwctx; f->storage = buf; f->buf_idx = buf->buf.index; } static gavl_source_status_t get_frame_decoder(void * priv, gavl_video_frame_t ** frame) { int pollev = 0; gavl_v4l2_device_t * dev = priv; int events_requested; /* Send frame back to the queue */ done_buffer_capture(dev); if(dev->flags & DECODER_GOT_EOS) return GAVL_SOURCE_EOF; while(1) { if(dev->flags & DECODER_GOT_EOS) return GAVL_SOURCE_EOF; events_requested = POLLIN | POLLPRI; if(!(dev->flags & DECODER_SENT_EOS) && (dev->decoder_delay < DECODER_NUM_PACKETS)) events_requested |= POLLOUT; do_poll(dev, events_requested, &pollev); #if 0 fprintf(stderr, "Do poll decode: %d %d %d %d\n", !!(pollev & POLLIN), !!(pollev & POLLOUT), !!(pollev & POLLPRI), dev->decoder_delay); #endif if(pollev & POLLPRI) { handle_decoder_event(dev); } if(pollev & POLLOUT) { if(!send_decoder_packet(dev)) return GAVL_SOURCE_EOF; } if(pollev & POLLIN) { int idx; idx = dequeue_buffer(dev, dev->capture.buf_type, V4L2_MEMORY_MMAP, NULL, NULL); if(idx < 0) return GAVL_SOURCE_EOF; /* Set output buffer to frame */ buffer_to_video_frame_mmap(dev, &dev->capture); gavl_packet_pts_cache_get_first(dev->cache, dev->capture.vframe); // fprintf(stderr, "Frame pts: %"PRId64"\n", dev->vframe_cap->timestamp); if(frame) *frame = dev->capture.vframe; dev->decoder_delay--; return GAVL_SOURCE_OK; } } return GAVL_SOURCE_EOF; } #if 1 void gavl_v4l2_device_resync_decoder(gavl_v4l2_device_t * dev) { int i; int pollev = 0; // fprintf(stderr, "Resync...\n"); stream_off(dev, dev->capture.buf_type); stream_off(dev, dev->output.buf_type); gavl_packet_pts_cache_clear(dev->cache); dev->capture.current_buf = NULL; dev->output.current_buf = NULL; /* Queue frames */ for(i = 0; i < dev->capture.num_bufs; i++) { queue_frame_capture(dev, i); } for(i = 0; i < dev->output.num_bufs; i++) { dev->output.bufs[i].flags &= ~GAVL_V4L2_BUFFER_FLAG_QUEUED; } stream_on(dev, dev->output.buf_type); stream_on(dev, dev->capture.buf_type); dev->decoder_delay = 0; for(i = 0; i < dev->output.num_bufs; i++) send_decoder_packet(dev); do_poll(dev, POLLIN, &pollev); #if 0 fprintf(stderr, "Do poll resync: %d %d %d\n", !!(pollev & POLLIN), !!(pollev & POLLOUT), !!(pollev & POLLPRI)); fprintf(stderr, "Resync done\n"); #endif } #endif static int64_t get_capture_pts(gavl_v4l2_device_t * dev, int flags, gavl_time_t v4l_pts) { #if 0 fprintf(stderr, "get_capture_pts: %"PRId64" %08x\n", v4l_pts, flags & V4L2_BUF_FLAG_TIMESTAMP_MASK); switch(flags & V4L2_BUF_FLAG_TIMESTAMP_MASK) { case V4L2_BUF_FLAG_TIMESTAMP_MONOTONIC: case V4L2_BUF_FLAG_TIMESTAMP_COPY: return v4l_pts; break; default: if(!dev->timer) { dev->timer = gavl_timer_create(); gavl_timer_start(dev->timer); } return gavl_timer_get(dev->timer); break; } #else return v4l_pts; #endif } static gavl_source_status_t read_packet_capture(void * priv, gavl_packet_t ** p) { int idx; gavl_v4l2_device_t * dev = priv; int events; int revents; int flags; gavl_time_t pts = 0; if(dev->capture.current_buf && (dev->capture.current_buf->flags & GAVL_V4L2_BUFFER_FLAG_VALID)) { if(p) { *p = &dev->capture.packet; dev->capture.current_buf->flags &= ~GAVL_V4L2_BUFFER_FLAG_VALID; } return GAVL_SOURCE_OK; } done_buffer_capture(dev); events = POLLIN; // fprintf(stderr, "Poll..."); if(!do_poll(dev, events, &revents) || !(revents & POLLIN)) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Got no packet"); return GAVL_SOURCE_EOF; } // fprintf(stderr, "Poll done\n"); if((idx = dequeue_buffer(dev, dev->capture.buf_type, V4L2_MEMORY_MMAP, &flags, &pts)) < 0) return GAVL_SOURCE_EOF; gavl_packet_init(&dev->capture.packet); dev->capture.packet.buf.buf = dev->capture.current_buf->ptrs[0]; dev->capture.packet.buf.len = dev->capture.current_buf->buf.bytesused; if(flags & V4L2_BUF_FLAG_KEYFRAME) dev->capture.packet.flags |= GAVL_PACKET_KEYFRAME; dev->capture.packet.pts = get_capture_pts(dev, flags, pts); // fprintf(stderr, "Dequeued buffer %d (%d bytes)\n", idx, dev->capture.current_buf->bytesused); // gavl_packet_dump(&dev->capture.packet); if(p) *p = &dev->capture.packet; else dev->capture.current_buf->flags |= GAVL_V4L2_BUFFER_FLAG_VALID; return GAVL_SOURCE_OK; } static gavl_source_status_t read_frame_capture(void * priv, gavl_video_frame_t ** frame) { int idx; gavl_v4l2_device_t * dev = priv; int flags; gavl_time_t pts = 0; int events, revents = 0; if(dev->capture.current_buf && (dev->capture.current_buf->flags & GAVL_V4L2_BUFFER_FLAG_VALID)) { if(frame) { *frame = dev->capture.vframe; dev->capture.current_buf->flags &= ~GAVL_V4L2_BUFFER_FLAG_VALID; } return GAVL_SOURCE_OK; } done_buffer_capture(dev); events = POLLIN; // fprintf(stderr, "Poll..."); if(!do_poll(dev, events, &revents) || !(revents & POLLIN)) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Got no frame"); return GAVL_SOURCE_EOF; } if((idx = dequeue_buffer(dev, dev->capture.buf_type, V4L2_MEMORY_MMAP, &flags, &pts) < 0)) return GAVL_SOURCE_EOF; buffer_to_video_frame_mmap(dev, &dev->capture); dev->capture.vframe->timestamp = get_capture_pts(dev, flags, pts); // fprintf(stderr, "Got PTS: %"PRId64"\n", dev->capture.vframe->timestamp); if(frame) *frame = dev->capture.vframe; else dev->capture.current_buf->flags |= GAVL_V4L2_BUFFER_FLAG_VALID; return GAVL_SOURCE_OK; } int gavl_v4l_device_init_capture(gavl_v4l2_device_t * dev, gavl_dictionary_t * stream) { int caps = 0; uint32_t pixelformat; int ret = 0; int i; dev->s = stream; if(gavl_dictionary_get_int(&dev->dev, GAVL_V4L2_CAPABILITIES, &caps) && (caps & V4L2_CAP_VIDEO_CAPTURE_MPLANE)) dev->capture.buf_type = V4L2_BUF_TYPE_VIDEO_CAPTURE_MPLANE; else dev->capture.buf_type = V4L2_BUF_TYPE_VIDEO_CAPTURE; // fprintf(stderr, "Blupp 5\n"); dev->capture.fmt.type = dev->capture.buf_type; dev->capture.parm.type = dev->capture.buf_type; if(my_ioctl(dev->fd, VIDIOC_G_FMT, &dev->capture.fmt) == -1) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "VIDIOC_G_FMT failed: %s", strerror(errno)); goto fail; } /* TODO: Configure format */ if(my_ioctl(dev->fd, VIDIOC_S_FMT, &dev->capture.fmt) == -1) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "VIDIOC_S_FMT failed: %s", strerror(errno)); goto fail; } if(my_ioctl(dev->fd, VIDIOC_G_PARM, &dev->capture.parm) == -1) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "VIDIOC_G_PARM failed: %s", strerror(errno)); goto fail; } if(IS_PLANAR(dev->capture.buf_type)) pixelformat = dev->capture.fmt.fmt.pix_mp.pixelformat; else pixelformat = dev->capture.fmt.fmt.pix.pixelformat; dev->capture.ci.id = gavl_v4l2_pix_fmt_to_codec_id(pixelformat); #if 0 fprintf(stderr, "Video pixelformat %c%c%c%c\n", (pixelformat) & 0xff, (pixelformat >> 8) & 0xff, (pixelformat >> 16) & 0xff, (pixelformat >> 24) & 0xff); #endif if(dev->capture.ci.id != GAVL_CODEC_ID_NONE) { format_v4l2_to_gavl(&dev->capture.fmt, &dev->capture.parm, &dev->capture.format, dev->capture.buf_type); if(dev->capture.ci.id == GAVL_CODEC_ID_EXTENDED) { /* Fourccs in v4l2 are swapped */ dev->capture.ci.codec_tag = ((pixelformat & 0x000000ff) << 24) | ((pixelformat & 0x0000ff00) << 8) | ((pixelformat & 0x00ff0000) >> 8) | ((pixelformat & 0xff000000) >> 24); } gavl_stream_set_compression_info(stream, &dev->capture.ci); } else { format_v4l2_to_gavl(&dev->capture.fmt, &dev->capture.parm, &dev->capture.format, dev->capture.buf_type); // gavl_video_format_dump(&dev->capture.format); dev->capture.format.hwctx = dev->hwctx; } gavl_video_format_copy(gavl_stream_get_video_format_nc(stream), &dev->capture.format); /* Request buffers */ if(!(dev->capture.num_bufs = request_buffers_mmap(dev, dev->capture.buf_type, 2))) goto fail; /* Queue frames */ for(i = 0; i < dev->capture.num_bufs; i++) queue_frame_capture(dev, i); if(dev->capture.ci.id != GAVL_CODEC_ID_NONE) { /* Compressed capture */ dev->psrc_priv = gavl_packet_source_create(read_packet_capture, dev, GAVL_SOURCE_SRC_ALLOC, stream); } else { /* Uncompressed capture */ dev->vsrc_priv = gavl_video_source_create(read_frame_capture, dev, GAVL_SOURCE_SRC_ALLOC, &dev->capture.format); } dev->capture.vframe = gavl_video_frame_create(NULL); ret = 1; fail: return ret; } int gavl_v4l_device_start_capture(gavl_v4l2_device_t * dev) { gavl_stream_stats_t stats; gavl_stream_stats_init(&stats); if(!stream_on(dev, dev->capture.buf_type)) return 0; /* Peek frames and set initial timestamps */ if(dev->psrc_priv) { read_packet_capture(dev, NULL); stats.pts_start = dev->capture.packet.pts; } else if(dev->vsrc_priv) { if(!read_frame_capture(dev, NULL)) return 0; stats.pts_start = dev->capture.vframe->timestamp; } gavl_stream_set_stats(dev->s, &stats); return 1; } static const str_int_map_t h264_profiles[] = { { GAVL_META_H264_PROFILE_BASELINE, V4L2_MPEG_VIDEO_H264_PROFILE_BASELINE }, { GAVL_META_H264_PROFILE_CONSTRAINED_BASELINE, V4L2_MPEG_VIDEO_H264_PROFILE_CONSTRAINED_BASELINE }, { GAVL_META_H264_PROFILE_MAIN, V4L2_MPEG_VIDEO_H264_PROFILE_MAIN }, { GAVL_META_H264_PROFILE_EXTENDED, V4L2_MPEG_VIDEO_H264_PROFILE_EXTENDED }, { GAVL_META_H264_PROFILE_HIGH, V4L2_MPEG_VIDEO_H264_PROFILE_HIGH }, { GAVL_META_H264_PROFILE_HIGH_10, V4L2_MPEG_VIDEO_H264_PROFILE_HIGH_10 }, { GAVL_META_H264_PROFILE_HIGH_422, V4L2_MPEG_VIDEO_H264_PROFILE_HIGH_422 }, { GAVL_META_H264_PROFILE_HIGH_444_PREDICTIVE, V4L2_MPEG_VIDEO_H264_PROFILE_HIGH_444_PREDICTIVE }, { GAVL_META_H264_PROFILE_HIGH_10_INTRA, V4L2_MPEG_VIDEO_H264_PROFILE_HIGH_10_INTRA }, { GAVL_META_H264_PROFILE_HIGH_422_INTRA, V4L2_MPEG_VIDEO_H264_PROFILE_HIGH_422_INTRA }, { GAVL_META_H264_PROFILE_HIGH_444_INTRA, V4L2_MPEG_VIDEO_H264_PROFILE_HIGH_444_INTRA }, { GAVL_META_H264_PROFILE_CAVLC_444_INTRA, V4L2_MPEG_VIDEO_H264_PROFILE_CAVLC_444_INTRA }, { GAVL_META_H264_PROFILE_SCALABLE_BASELINE, V4L2_MPEG_VIDEO_H264_PROFILE_SCALABLE_BASELINE }, { GAVL_META_H264_PROFILE_SCALABLE_HIGH, V4L2_MPEG_VIDEO_H264_PROFILE_SCALABLE_HIGH }, { GAVL_META_H264_PROFILE_SCALABLE_HIGH_INTRA, V4L2_MPEG_VIDEO_H264_PROFILE_SCALABLE_HIGH_INTRA }, { GAVL_META_H264_PROFILE_STEREO_HIGH, V4L2_MPEG_VIDEO_H264_PROFILE_STEREO_HIGH }, { GAVL_META_H264_PROFILE_MULTIVIEW_HIGH, V4L2_MPEG_VIDEO_H264_PROFILE_MULTIVIEW_HIGH }, { GAVL_META_H264_PROFILE_CONSTRAINED_HIGH, V4L2_MPEG_VIDEO_H264_PROFILE_CONSTRAINED_HIGH }, { /* */ } }; static const str_int_map_t h264_levels[] = { { "1", V4L2_MPEG_VIDEO_H264_LEVEL_1_0 }, { "1b", V4L2_MPEG_VIDEO_H264_LEVEL_1B }, { "1.1", V4L2_MPEG_VIDEO_H264_LEVEL_1_1 }, { "1.2", V4L2_MPEG_VIDEO_H264_LEVEL_1_2 }, { "1.3", V4L2_MPEG_VIDEO_H264_LEVEL_1_3 }, { "2", V4L2_MPEG_VIDEO_H264_LEVEL_2_0 }, { "2.1", V4L2_MPEG_VIDEO_H264_LEVEL_2_1 }, { "2.2", V4L2_MPEG_VIDEO_H264_LEVEL_2_2 }, { "3", V4L2_MPEG_VIDEO_H264_LEVEL_3_0 }, { "3.1", V4L2_MPEG_VIDEO_H264_LEVEL_3_1 }, { "3.2", V4L2_MPEG_VIDEO_H264_LEVEL_3_2 }, { "4", V4L2_MPEG_VIDEO_H264_LEVEL_4_0 }, { "4.1", V4L2_MPEG_VIDEO_H264_LEVEL_4_1 }, { "4.2", V4L2_MPEG_VIDEO_H264_LEVEL_4_2 }, { "5", V4L2_MPEG_VIDEO_H264_LEVEL_5_0 }, { "5.1", V4L2_MPEG_VIDEO_H264_LEVEL_5_1 }, { "5.2", V4L2_MPEG_VIDEO_H264_LEVEL_5_2 }, { "6", V4L2_MPEG_VIDEO_H264_LEVEL_6_0 }, { "6.1", V4L2_MPEG_VIDEO_H264_LEVEL_6_1 }, { "6.2", V4L2_MPEG_VIDEO_H264_LEVEL_6_2 }, { /* End */ } }; static const str_int_map_t mpeg2_profiles[] = { // { GAVL_META_MPEG2_PROFILE_422, { GAVL_META_MPEG2_PROFILE_HIGH, V4L2_MPEG_VIDEO_MPEG2_PROFILE_HIGH }, { GAVL_META_MPEG2_PROFILE_SPATIALLY_SCALABLE, V4L2_MPEG_VIDEO_MPEG2_PROFILE_SPATIALLY_SCALABLE }, { GAVL_META_MPEG2_PROFILE_SNR_SCALABLE, V4L2_MPEG_VIDEO_MPEG2_PROFILE_SNR_SCALABLE }, { GAVL_META_MPEG2_PROFILE_MAIN, V4L2_MPEG_VIDEO_MPEG2_PROFILE_MAIN }, { GAVL_META_MPEG2_PROFILE_SIMPLE, V4L2_MPEG_VIDEO_MPEG2_PROFILE_SIMPLE }, { } }; static const str_int_map_t mpeg2_levels[] = { { GAVL_META_MPEG2_LEVEL_HIGH, V4L2_MPEG_VIDEO_MPEG2_LEVEL_HIGH }, { GAVL_META_MPEG2_LEVEL_HIGH1440, V4L2_MPEG_VIDEO_MPEG2_LEVEL_HIGH_1440 }, { GAVL_META_MPEG2_LEVEL_MAIN, V4L2_MPEG_VIDEO_MPEG2_LEVEL_MAIN }, { GAVL_META_MPEG2_LEVEL_LOW, V4L2_MPEG_VIDEO_MPEG2_LEVEL_LOW }, { } }; static const str_int_map_t mpeg4_profiles[] = { { GAVL_META_MPEG4_PROFILE_SIMPLE, V4L2_MPEG_VIDEO_MPEG4_PROFILE_SIMPLE }, { GAVL_META_MPEG4_PROFILE_ADVANCED_SIMPLE, V4L2_MPEG_VIDEO_MPEG4_PROFILE_ADVANCED_SIMPLE }, { GAVL_META_MPEG4_PROFILE_CORE, V4L2_MPEG_VIDEO_MPEG4_PROFILE_CORE }, { GAVL_META_MPEG4_PROFILE_SIMPLE_SCALABLE, V4L2_MPEG_VIDEO_MPEG4_PROFILE_SIMPLE_SCALABLE }, { GAVL_META_MPEG4_PROFILE_ADVANCED_CODING, V4L2_MPEG_VIDEO_MPEG4_PROFILE_ADVANCED_CODING_EFFICIENCY }, { } }; static const str_int_map_t mpeg4_levels[] = { { "0", V4L2_MPEG_VIDEO_MPEG4_LEVEL_0 }, //{ "", V4L2_MPEG_VIDEO_MPEG4_LEVEL_0B }, { "1", V4L2_MPEG_VIDEO_MPEG4_LEVEL_1 }, { "2", V4L2_MPEG_VIDEO_MPEG4_LEVEL_2 }, { "3", V4L2_MPEG_VIDEO_MPEG4_LEVEL_3 }, // { "", V4L2_MPEG_VIDEO_MPEG4_LEVEL_3B }, { "4", V4L2_MPEG_VIDEO_MPEG4_LEVEL_4 }, { "5", V4L2_MPEG_VIDEO_MPEG4_LEVEL_5 }, { } }; static int str_to_int(const str_int_map_t * map, const char * str, int * ret) { int idx = 0; while(map[idx].gavl) { if(!strcmp(map[idx].gavl, str)) { *ret = map[idx].v4l2; return 1; } idx++; } return 0; } static int check_str(const gavl_v4l2_device_t * dev, const char * str, const str_int_map_t * map, int control_id, int profile) { int id = 0; const gavl_v4l2_control_t * ctrl; char * var = profile ? "profile" : "level"; if(!str_to_int(map, str, &id)) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Unknown %s: %s", var, str); return 0; } if(!(ctrl = control_by_id(dev, control_id))) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Control for %s missing", var); return 0; } if(!item_by_id(ctrl, id)) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "%s %s not supported", var, str); return 0; } return 1; } static int check_compat(const gavl_dictionary_t * device, const gavl_dictionary_t * dict, gavl_codec_id_t codec_id) { const char * profile; const char * level; int ret = 0; gavl_v4l2_device_t * dev = NULL; if(dict) { gavl_compression_info_t ci; gavl_compression_info_init(&ci); if(!gavl_stream_get_compression_info(dict, &ci)) goto fail; codec_id = ci.id; } if(!(dict = gavl_stream_get_metadata(dict))) goto fail; if(!(profile = gavl_dictionary_get_string(dict, GAVL_META_PROFILE))) goto fail; if(!(level = gavl_dictionary_get_string(dict, GAVL_META_LEVEL))) goto fail; dev = gavl_v4l2_device_open(device); switch(codec_id) { case GAVL_CODEC_ID_JPEG: /* Always supoported? */ break; case GAVL_CODEC_ID_MPEG2: if(!check_str(dev, profile, mpeg2_profiles, V4L2_CID_MPEG_VIDEO_MPEG2_PROFILE, 1) || !check_str(dev, level, mpeg2_levels, V4L2_CID_MPEG_VIDEO_MPEG2_LEVEL, 0)) goto fail; break; case GAVL_CODEC_ID_MPEG4_ASP: if(!check_str(dev, profile, mpeg4_profiles, V4L2_CID_MPEG_VIDEO_MPEG4_PROFILE, 1) || !check_str(dev, level, mpeg4_levels, V4L2_CID_MPEG_VIDEO_MPEG4_LEVEL, 0)) goto fail; break; case GAVL_CODEC_ID_H264: if(!check_str(dev, profile, h264_profiles, V4L2_CID_MPEG_VIDEO_H264_PROFILE, 1) || !check_str(dev, level, h264_levels, V4L2_CID_MPEG_VIDEO_H264_LEVEL, 0)) goto fail; break; default: goto fail; break; } ret = 1; fail: if(dev) gavl_v4l2_device_close(dev); return ret; } int gavl_v4l2_device_init_decoder(gavl_v4l2_device_t * dev, gavl_dictionary_t * stream, gavl_packet_source_t * psrc) { int format_packets = 0; int caps = 0; int ret = 0; gavl_video_format_t * gavl_format; gavl_compression_info_t ci; gavl_stream_stats_t stats; int pollev = 0; int max_packet_size; struct v4l2_event_subscription sub; int packets_to_send; int num; struct v4l2_cropcap cropcap; // fprintf(stderr, "gavl_v4l2_device_init_decoder\n"); // gavl_dictionary_dump(stream, 2); gavl_format = gavl_stream_get_video_format_nc(stream); gavl_format->hwctx = dev->hwctx; dev->timescale = gavl_format->timescale; dev->psrc_src = psrc; dev->cache = gavl_packet_pts_cache_create(2*MAX_BUFFERS); /* Subscribe to events */ memset(&sub, 0, sizeof(sub)); memset(&ci, 0, sizeof(ci)); if(!gavl_stream_get_compression_info(stream, &ci)) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Got no compression info"); goto fail; } // if(ci.flags & GAVL_COMPRESSION_HAS_P_FRAMES) // { sub.type = V4L2_EVENT_EOS; if(my_ioctl(dev->fd, VIDIOC_SUBSCRIBE_EVENT, &sub) == -1) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "VIDIOC_SUBSCRIBE_EVENT V4L2_EVENT_EOS failed: %s", strerror(errno)); goto fail; } sub.type = V4L2_EVENT_SOURCE_CHANGE; if(my_ioctl(dev->fd, VIDIOC_SUBSCRIBE_EVENT, &sub) == -1) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "VIDIOC_SUBSCRIBE_EVENT V4L2_EVENT_SOURCE_CHANGE failed: %s", strerror(errno)); goto fail; } // } gavl_stream_stats_init(&stats); gavl_stream_get_stats(stream, &stats); gavl_video_format_set_frame_size(gavl_format, 16, 16); if(stats.size_max > 0) max_packet_size = stats.size_max + 128; else max_packet_size = (gavl_format->frame_width * gavl_format->frame_width * 3) / 4 + 128; memset(&dev->output.fmt, 0, sizeof(dev->output.fmt)); /* */ if(gavl_dictionary_get_int(&dev->dev, GAVL_V4L2_CAPABILITIES, &caps) && (caps & V4L2_CAP_VIDEO_M2M_MPLANE)) { dev->output.buf_type = V4L2_BUF_TYPE_VIDEO_OUTPUT_MPLANE; dev->capture.buf_type = V4L2_BUF_TYPE_VIDEO_CAPTURE_MPLANE; // fprintf(stderr, "Using planar API\n"); dev->output.fmt.type = dev->output.buf_type; // fmt.fmt.pix_mp.width = gavl_format->image_width; // fmt.fmt.pix_mp.height = gavl_format->image_height; dev->output.fmt.fmt.pix_mp.pixelformat = gavl_v4l2_codec_id_to_pix_fmt(ci.id); dev->output.fmt.fmt.pix_mp.colorspace = V4L2_COLORSPACE_DEFAULT; dev->output.fmt.fmt.pix_mp.field = V4L2_FIELD_NONE; dev->output.fmt.fmt.pix_mp.num_planes = 1; dev->output.fmt.fmt.pix_mp.plane_fmt[0].sizeimage = max_packet_size; //fmt.fmt.pix_mp.plane_fmt[0].bytesperline = 0; } else { dev->output.buf_type = V4L2_BUF_TYPE_VIDEO_OUTPUT; dev->capture.buf_type = V4L2_BUF_TYPE_VIDEO_CAPTURE; /* Untested */ dev->output.fmt.type = dev->output.buf_type; // fmt.fmt.pix.width = gavl_format->image_width; // fmt.fmt.pix.height = gavl_format->image_height; dev->output.fmt.fmt.pix.pixelformat = gavl_v4l2_codec_id_to_pix_fmt(ci.id); dev->output.fmt.fmt.pix.colorspace = V4L2_COLORSPACE_DEFAULT; dev->output.fmt.fmt.pix.sizeimage = max_packet_size; dev->output.fmt.fmt.pix.field = V4L2_FIELD_NONE; } if(my_ioctl(dev->fd, VIDIOC_S_FMT, &dev->output.fmt) == -1) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "VIDIOC_S_FMT failed: %s", strerror(errno)); goto fail; } if(ci.flags & GAVL_COMPRESSION_HAS_P_FRAMES) num = DECODER_NUM_PACKETS; else num = 1; if(!(dev->output.num_bufs = request_buffers_mmap(dev, dev->output.buf_type, num))) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Requesting buffers failed"); goto fail; } packets_to_send = dev->output.num_bufs; /* */ /* Queue header */ if(!stream_on(dev, dev->output.buf_type)) goto fail; if(ci.codec_header.len) { gavl_packet_t * p; #ifdef DUMP_EXTRADATA fprintf(stderr, "Sending global header %d bytes\n", ci.codec_header.len); gavl_hexdump(ci.codec_header.buf, ci.codec_header.len, 16); #endif p = gavl_v4l2_device_get_packet_write(dev); gavl_buffer_reset(&p->buf); gavl_buffer_append(&p->buf, &ci.codec_header); if(gavl_v4l2_device_put_packet_write(dev) != GAVL_SINK_OK) goto fail; // gavl_time_delay(&t); packets_to_send--; } else { if(!send_decoder_packet(dev)) fprintf(stderr, "sending decoder packet failed\n"); } #if 0 for(i = 0; i < packets_to_send; i++) { if(!send_decoder_packet(dev)) fprintf(stderr, "sending decoder packet failed\n"); } #endif memset(&cropcap, 0, sizeof(cropcap)); cropcap.type = dev->output.buf_type; if(my_ioctl(dev->fd, VIDIOC_CROPCAP, &cropcap) == 0) { struct v4l2_crop crop; fprintf(stderr, "Setting crop\n"); crop.type = V4L2_BUF_TYPE_VIDEO_CAPTURE; crop.c = cropcap.defrect; /* reset to default */ if(my_ioctl(dev->fd, VIDIOC_S_CROP, &crop) == -1) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "VIDIOC_S_CROP failed: %s", strerror(errno)); goto fail; } } /* Get format */ memset(&dev->capture.fmt, 0, sizeof(dev->capture.fmt)); dev->capture.fmt.type = dev->capture.buf_type; if(my_ioctl(dev->fd, VIDIOC_G_FMT, &dev->capture.fmt) == -1) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "VIDIOC_G_FMT failed: %s", strerror(errno)); goto fail; } // dump_fmt(dev, &fmt); if(IS_PLANAR(dev->capture.buf_type)) { gavl_format->pixelformat = gavl_v4l2_pix_fmt_to_pixelformat(dev->capture.fmt.fmt.pix_mp.pixelformat, dev->capture.fmt.fmt.pix_mp.quantization); } else { gavl_format->pixelformat = gavl_v4l2_pix_fmt_to_pixelformat(dev->capture.fmt.fmt.pix.pixelformat, dev->capture.fmt.fmt.pix.quantization); } if(gavl_format->pixelformat == GAVL_PIXELFORMAT_NONE) { /* TODO: Negotiate format */ gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Got no decodable pixelformat"); goto fail; } /* Wait for source_change event */ while(!(dev->flags & DECODER_HAVE_FORMAT) && (format_packets < DECODER_NUM_PACKETS)) { do_poll(dev, POLLOUT | POLLPRI, &pollev); // fprintf(stderr, "Polled: %d %d %d\n", !!(pollev & POLLPRI), !!(pollev & POLLOUT), !!(pollev & POLLIN)); if(pollev & POLLPRI) handle_decoder_event(dev); else if(pollev & POLLOUT) { if(!send_decoder_packet(dev) || (dev->flags & DECODER_SENT_EOS)) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "EOF during decoder initialization (sent %d packets)", format_packets); goto fail; } // gavl_time_delay(&t); format_packets++; } } if(!(dev->flags & DECODER_HAVE_FORMAT)) { /* Poll specifically for events */ do_poll(dev, POLLPRI, &pollev); if(pollev & POLLPRI) handle_decoder_event(dev); if(!(dev->flags & DECODER_HAVE_FORMAT)) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Couldn't get decoder format after sending %d packets", format_packets); goto fail; } } gavl_log(GAVL_LOG_INFO, LOG_DOMAIN, "Got decoder format after sending %d packets", format_packets); // fprintf(stderr, "Do poll init: %d %d %d\n", // !!(pollev & POLLIN), !!(pollev & POLLOUT), !!(pollev & POLLPRI)); // handle_decoder_event(dev); dev->vsrc_priv = gavl_video_source_create(get_frame_decoder, dev, GAVL_SOURCE_SRC_ALLOC, gavl_format); dev->capture.vframe = gavl_video_frame_create(NULL); gavl_video_format_copy(&dev->capture.format, gavl_format); ret = 1; fail: return ret; } /* Generic video sink functions. Can hopefully be used by converters, encoders and outputs. */ static gavl_video_frame_t * sink_get_func_mmap(void * priv) { gavl_v4l2_device_t * dev = priv; if(!dev->output.vframe) dev->output.vframe = gavl_video_frame_create(NULL); if(!get_buffer_output(dev)) return NULL; buffer_to_video_frame_mmap(dev, &dev->output); // fprintf(stderr, "Get frame mmap %d\n", dev->output.vframe->buf_idx); return dev->output.vframe; } #ifdef HAVE_DRM static gavl_sink_status_t sink_put_func_dmabuf(void * priv, gavl_video_frame_t * frame) { struct v4l2_buffer buf; gavl_video_frame_t * dma_frame; gavl_v4l2_device_t * dev = priv; gavl_dmabuf_video_frame_t * dmabuf; if(!gavl_hw_ctx_transfer_video_frame(frame, dev->hwctx_dmabuf, &dma_frame, &dev->output.format)) return GAVL_SINK_ERROR; dmabuf = dma_frame->storage; memset(&buf, 0, sizeof buf); buf.type = dev->output.buf_type; buf.memory = V4L2_MEMORY_DMABUF; buf.index = dev->output.current_buf->buf.index; buf.m.fd = dmabuf->buffers[0].fd; dev->output.current_buf->flags |= GAVL_V4L2_BUFFER_FLAG_QUEUED; if(!(dev->flags & OUTPUT_STREAM_ON)) { if(!stream_on(dev, dev->output.buf_type)) return GAVL_SINK_ERROR; } return GAVL_SINK_OK; } static gavl_sink_status_t sink_put_func_dmabuf_planar(void * priv, gavl_video_frame_t * frame) { struct v4l2_buffer buf; int num_planes; gavl_video_frame_t * dma_frame; gavl_v4l2_device_t * dev = priv; gavl_dmabuf_video_frame_t * dmabuf; int i; struct v4l2_plane planes[VIDEO_MAX_PLANES]; num_planes = gavl_pixelformat_num_planes(dev->output.format.pixelformat); if(!gavl_hw_ctx_transfer_video_frame(frame, dev->hwctx_dmabuf, &dma_frame, &dev->output.format)) return GAVL_SINK_ERROR; dmabuf = dma_frame->storage; memset(&buf, 0, sizeof buf); buf.type = dev->output.buf_type; buf.memory = V4L2_MEMORY_DMABUF; buf.index = dev->output.current_buf->buf.index; buf.m.planes = planes; buf.length = num_planes; for(i = 0; i < num_planes; i++) { buf.m.planes[i].m.fd = dmabuf->buffers[i].fd; } if(!(dev->flags & OUTPUT_STREAM_ON)) { if(!stream_on(dev, dev->output.buf_type)) return GAVL_SINK_ERROR; } dev->output.current_buf->flags |= GAVL_V4L2_BUFFER_FLAG_QUEUED; return GAVL_SINK_OK; } #endif static gavl_sink_status_t sink_put_func_mmap_planar(void * priv, gavl_video_frame_t * frame) { int i; gavl_v4l2_device_t * dev = priv; set_buf_pts(&dev->output.current_buf->buf, frame->timestamp); for(i = 0; i < dev->output.fmt.fmt.pix_mp.num_planes; i++) dev->output.current_buf->buf.m.planes[i].bytesused = dev->output.fmt.fmt.pix_mp.plane_fmt[i].sizeimage; dev->output.current_buf->buf.flags = 0; // buf.length = num_planes; // buf.type = dev->output.buf_type; // buf.memory = V4L2_MEMORY_MMAP; // buf.index = dev->output.current_buf->buf.index; // buf.m.planes = planes; dev->output.current_buf->buf.sequence = dev->output.frame_counter++; // buf.length = 1; if(my_ioctl(dev->fd, VIDIOC_QBUF, &dev->output.current_buf->buf) == -1) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "VIDIOC_QBUF failed for output: %s", strerror(errno)); return GAVL_SINK_ERROR; } #ifdef DUMP_QUEUE gavl_dprintf("Queued buf %d\n", dev->output.current_buf->buf.index); #endif if(!(dev->flags & OUTPUT_STREAM_ON)) { if(!stream_on(dev, dev->output.buf_type)) return GAVL_SINK_ERROR; } dev->output.current_buf->flags |= GAVL_V4L2_BUFFER_FLAG_QUEUED; dev->output.current_buf = NULL; return GAVL_SINK_OK; } static gavl_sink_status_t sink_put_func_mmap(void * priv, gavl_video_frame_t * frame) { gavl_v4l2_device_t * dev = priv; /* Queue buffer */ dev->output.current_buf->buf.flags = 0; dev->output.current_buf->buf.field = V4L2_FIELD_NONE; dev->output.current_buf->buf.sequence = dev->output.frame_counter++; dev->output.current_buf->buf.bytesused = dev->output.fmt.fmt.pix.sizeimage; set_buf_pts(&dev->output.current_buf->buf, frame->timestamp); if(my_ioctl(dev->fd, VIDIOC_QBUF, &dev->output.current_buf->buf) == -1) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "VIDIOC_QBUF failed for output: %s", strerror(errno)); return GAVL_SINK_ERROR; } #ifdef DUMP_QUEUE gavl_dprintf("Queued buf %d\n", dev->output.current_buf->buf.index); #endif if(!(dev->flags & OUTPUT_STREAM_ON)) { if(!stream_on(dev, dev->output.buf_type)) return GAVL_SINK_ERROR; } dev->output.current_buf->flags |= GAVL_V4L2_BUFFER_FLAG_QUEUED; dev->output.current_buf = NULL; return GAVL_SINK_OK; } #if 1 static int init_video_output(gavl_v4l2_device_t * dev, gavl_video_format_t * fmt, int num_bufs) { #ifdef HAVE_DRM int pixfmt_conversion; #endif gavl_video_sink_get_func get_func = NULL; gavl_video_sink_put_func put_func = NULL; gavl_pixelformat_t pfmt; if(!dev->sink_pixelformats) dev->sink_pixelformats = query_pixelformats(dev->fd, dev->output.buf_type); pfmt = gavl_pixelformat_get_best(fmt->pixelformat, dev->sink_pixelformats, NULL); #ifdef HAVE_DRM if(fmt->pixelformat != pfmt) pixfmt_conversion = 1; #endif fmt->pixelformat = pfmt; fmt->timescale = GAVL_TIME_SCALE; format_gavl_to_v4l2(fmt, &dev->output.fmt, dev->output.buf_type); gavl_video_format_copy(&dev->output.format, fmt); dev->output.fmt.type = dev->output.buf_type; if(my_ioctl(dev->fd, VIDIOC_S_FMT, &dev->output.fmt) == -1) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "VIDIOC_S_FMT failed: %s", strerror(errno)); goto fail; } format_v4l2_to_gavl(&dev->output.fmt, NULL, fmt, dev->output.buf_type); #if 1 // Not needed? dev->output.fmt.type = dev->output.buf_type; if(my_ioctl(dev->fd, VIDIOC_G_FMT, &dev->output.fmt) == -1) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "VIDIOC_G_FMT failed: %s", strerror(errno)); goto fail; } #endif #ifdef HAVE_DRM /* Initialize output (src) */ if(!pixfmt_conversion && fmt->hwctx) { /* Try to allocate dmabuf buffer */ dev->hwctx_dmabuf = gavl_hw_ctx_create_dma(); if(gavl_hw_ctx_can_export(fmt->hwctx, dev->hwctx_dmabuf) && request_buffers_dmabuf(dev, dev->output.buf_type, num_bufs, dev->output.bufs)) { gavl_log(GAVL_LOG_INFO, LOG_DOMAIN, "Importing DMA buffer"); if(IS_PLANAR(dev->output.buf_type)) put_func = sink_put_func_dmabuf_planar; else put_func = sink_put_func_dmabuf; } else { gavl_hw_ctx_destroy(dev->hwctx_dmabuf); dev->hwctx_dmabuf = NULL; } } #endif /* Initialize sink for mmap */ if(!put_func) { get_func = sink_get_func_mmap; if(dev->output.buf_type == V4L2_BUF_TYPE_VIDEO_OUTPUT_MPLANE) put_func = sink_put_func_mmap_planar; else put_func = sink_put_func_mmap; if(!(dev->output.num_bufs = request_buffers_mmap(dev, dev->output.buf_type, num_bufs))) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Requesting buffers failed"); goto fail; } } gavl_video_format_copy(&dev->output.format, fmt); dev->vsink_priv = gavl_video_sink_create(get_func, put_func, dev, fmt); return 1; fail: return 0; } #endif static gavl_source_status_t get_frame_capture(void * priv, gavl_video_frame_t ** frame) { return GAVL_SOURCE_OK; } static int init_video_capture(gavl_v4l2_device_t * dev, gavl_video_format_t * fmt, int num_bufs) { if(!(dev->capture.num_bufs = request_buffers_mmap(dev, dev->capture.buf_type, num_bufs))) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Requesting capture buffers failed"); goto fail; } stream_on(dev, dev->capture.buf_type); dev->vsrc_priv = gavl_video_source_create(get_frame_capture, dev, GAVL_SOURCE_SRC_ALLOC, fmt); fmt->hwctx = dev->hwctx; return 1; fail: return 0; } #if 1 int gavl_v4l2_device_init_output(gavl_v4l2_device_t * dev, gavl_video_format_t * fmt) { int caps = 0; if(gavl_dictionary_get_int(&dev->dev, GAVL_V4L2_CAPABILITIES, &caps) && (caps & V4L2_CAP_VIDEO_OUTPUT_MPLANE)) dev->output.buf_type = V4L2_BUF_TYPE_VIDEO_OUTPUT_MPLANE; else dev->output.buf_type = V4L2_BUF_TYPE_VIDEO_OUTPUT; if(!init_video_output(dev, fmt, 2)) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Cannot open V4L video output: Input format not supported"); return 0; } return 1; } #endif int gavl_v4l2_device_init_converter(gavl_v4l2_device_t * dev, gavl_video_format_t * src_fmt, gavl_video_format_t * dst_fmt) { int caps = 0; if(gavl_dictionary_get_int(&dev->dev, GAVL_V4L2_CAPABILITIES, &caps) && (caps & V4L2_CAP_VIDEO_M2M_MPLANE)) { dev->output.buf_type = V4L2_BUF_TYPE_VIDEO_OUTPUT_MPLANE; dev->capture.buf_type = V4L2_BUF_TYPE_VIDEO_CAPTURE_MPLANE; } else { dev->output.buf_type = V4L2_BUF_TYPE_VIDEO_OUTPUT; dev->capture.buf_type = V4L2_BUF_TYPE_VIDEO_CAPTURE; } if(!init_video_output(dev, src_fmt, 1)) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Cannot open V4L video converter: Input format not supported"); return 0; } if(!stream_on(dev, dev->output.buf_type)) return 0; format_gavl_to_v4l2(src_fmt, &dev->capture.fmt, dev->capture.buf_type); if(my_ioctl(dev->fd, VIDIOC_S_FMT, &dev->capture.fmt) == -1) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "VIDIOC_S_FMT failed: %s", strerror(errno)); return 0; } if(!init_video_capture(dev, dst_fmt, 1)) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Cannot open V4L video converter: Output format not supported"); return 0; } // pix_fmt_src = gavl_v4l2_pixelformat_to_pix_fmt(src_fmt->pixelformat); // pix_fmt_dst = gavl_v4l2_pixelformat_to_pix_fmt(dst_fmt->pixelformat); #if 0 if(!pix_fmt_dst) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Cannot open V4L video converter: Output format not supported"); return 0; } #endif /* Initialize capture (src) */ return 0; } int gavl_v4l2_device_get_fd(gavl_v4l2_device_t * dev) { return dev->fd; } void gavl_v4l2_device_close(gavl_v4l2_device_t * dev) { if(dev->flags & CAPTURE_STREAM_ON) stream_off(dev, dev->capture.buf_type); if(dev->flags & OUTPUT_STREAM_ON) stream_off(dev, dev->output.buf_type); #ifdef HAVE_DRM if(dev->hwctx_dmabuf) release_buffers_dmabuf(dev, dev->output.buf_type, dev->output.num_bufs, dev->output.bufs); else #endif { if(dev->output.num_bufs) release_buffers_mmap(dev, dev->output.buf_type, dev->output.num_bufs); } if(dev->capture.num_bufs) release_buffers_mmap(dev, dev->capture.buf_type, dev->capture.num_bufs); gavl_dictionary_free(&dev->dev); if(dev->capture.vframe) { gavl_video_frame_null(dev->capture.vframe); gavl_video_frame_destroy(dev->capture.vframe); } if(dev->output.vframe) { gavl_video_frame_null(dev->output.vframe); gavl_video_frame_destroy(dev->output.vframe); } #ifdef HAVE_DRM if(dev->hwctx_dmabuf) gavl_hw_ctx_destroy(dev->hwctx_dmabuf); #endif if(dev->fd >= 0) close(dev->fd); if(dev->timer) gavl_timer_destroy(dev->timer); if(dev->sink_pixelformats) free(dev->sink_pixelformats); free_controls(dev); free(dev); } gavl_video_source_t * gavl_v4l2_device_get_video_source(gavl_v4l2_device_t * dev) { return dev->vsrc_priv; } gavl_video_sink_t * gavl_v4l2_device_get_video_sink(gavl_v4l2_device_t * dev) { return dev->vsink_priv; } gavl_packet_source_t * gavl_v4l2_device_get_packet_source(gavl_v4l2_device_t * dev) { return dev->psrc_priv; } #if 0 gavl_packet_sink_t * gavl_v4l2_device_get_packet_sink(gavl_v4l2_device_t * dev) { } int gavl_v4l2_device_init_capture(gavl_v4l2_device_t * dev, gavl_video_format_t * fmt) { } int gavl_v4l2_device_init_output(gavl_v4l2_device_t * dev, gavl_video_format_t * fmt) { } /* Unused for now */ int v4l_device_init_encoder(gavl_v4l2_device_t * dev, gavl_video_format_t * fmt, gavl_compression_info_t * cmp); #endif int gavl_v4l2_get_device_info(const char * path, gavl_dictionary_t * dev) { gavl_v4l2_device_type_t type = GAVL_V4L2_DEVICE_UNKNOWN; struct v4l2_capability cap; gavl_array_t * src_formats; gavl_array_t * sink_formats; int fd; memset(&cap, 0, sizeof(cap)); src_formats = NULL; sink_formats = NULL; if((fd = open(path, O_RDWR /* required */ | O_NONBLOCK, 0)) < 0) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Opening %s failed: %s", path, strerror(errno)); return 0; } // query_controls(fd); if(my_ioctl(fd, VIDIOC_QUERYCAP, &cap) == -1) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Getting capabilities for %s failed: %s", path, strerror(errno)); close(fd); return 0; } // fprintf(stderr, "Card:\n"); // gavl_hexdump(cap->card, 32, 16); // fprintf(stderr, "Blupp 1 %s\n", (const char*)cap->card); gavl_dictionary_set_string(dev, GAVL_META_LABEL, (const char*)cap.card); gavl_dictionary_set_string(dev, GAVL_V4L2_DRIVER, (const char*)cap.driver); // fprintf(stderr, "Blupp 2 %s\n", g.gl_pathv[i]); // fprintf(stderr, "Blupp 3 %s\n", tmp_string); gavl_dictionary_set_string(dev, GAVL_META_URI, path); // fprintf(stderr, "Blupp 4\n"); gavl_dictionary_set_int(dev, GAVL_V4L2_CAPABILITIES, cap.capabilities); // fprintf(stderr, "Blupp 5\n"); /* Get source formats */ if(cap.capabilities & (V4L2_CAP_VIDEO_CAPTURE_MPLANE | V4L2_CAP_VIDEO_M2M_MPLANE)) { src_formats = gavl_dictionary_get_array_create(dev, GAVL_V4L2_SRC_FORMATS); query_formats(fd, V4L2_BUF_TYPE_VIDEO_CAPTURE_MPLANE, src_formats); } else if(cap.capabilities & (V4L2_CAP_VIDEO_CAPTURE | V4L2_CAP_VIDEO_M2M)) { src_formats = gavl_dictionary_get_array_create(dev, GAVL_V4L2_SRC_FORMATS); query_formats(fd, V4L2_BUF_TYPE_VIDEO_CAPTURE, src_formats); } if(!strcmp((char*)cap.driver, "v4l2 loopback")) type = GAVL_V4L2_DEVICE_LOOPBACK; /* Get output formats */ if(cap.capabilities & (V4L2_CAP_VIDEO_OUTPUT_MPLANE | V4L2_CAP_VIDEO_M2M_MPLANE)) { sink_formats = gavl_dictionary_get_array_create(dev, GAVL_V4L2_SINK_FORMATS); query_formats(fd, V4L2_BUF_TYPE_VIDEO_OUTPUT_MPLANE, sink_formats); } else if(cap.capabilities & (V4L2_CAP_VIDEO_OUTPUT | V4L2_CAP_VIDEO_M2M)) { sink_formats = gavl_dictionary_get_array_create(dev, GAVL_V4L2_SINK_FORMATS); query_formats(fd, V4L2_BUF_TYPE_VIDEO_OUTPUT, sink_formats); } if(src_formats && !src_formats->num_entries) { gavl_dictionary_set(dev, GAVL_V4L2_SRC_FORMATS, NULL); src_formats = NULL; } if(sink_formats && !sink_formats->num_entries) { gavl_dictionary_set(dev, GAVL_V4L2_SINK_FORMATS, NULL); sink_formats = NULL; } if(type == GAVL_V4L2_DEVICE_UNKNOWN) { if(src_formats && !sink_formats) { type = GAVL_V4L2_DEVICE_SOURCE; } else if(!src_formats && sink_formats) { type = GAVL_V4L2_DEVICE_SINK; } else if(src_formats && sink_formats) { int src_compressed; int sink_compressed; src_compressed = formats_compressed(src_formats); sink_compressed = formats_compressed(sink_formats); if(!src_compressed && sink_compressed) type = GAVL_V4L2_DEVICE_DECODER; else if(src_compressed && !sink_compressed) type = GAVL_V4L2_DEVICE_ENCODER; else if(!src_compressed && !sink_compressed) type = GAVL_V4L2_DEVICE_CONVERTER; else type = GAVL_V4L2_DEVICE_UNKNOWN; } else type = GAVL_V4L2_DEVICE_UNKNOWN; } // fprintf(stderr, "Got type: %d (%08x)\n", type, type); gavl_dictionary_set_int(dev, GAVL_V4L2_TYPE, type); gavl_dictionary_set_string(dev, GAVL_V4L2_TYPE_STRING, get_type_label(type)); /* Query controls */ // query_controls(fd, NULL); close(fd); return 1; } void gavl_v4l2_devices_scan_by_type(int type_mask, gavl_array_t * ret) { int i; glob_t g; int type; memset(&g, 0, sizeof(g)); glob("/dev/video*", 0, NULL, &g); for(i = 0; i < g.gl_pathc; i++) { gavl_value_t dev_val; gavl_dictionary_t * dev; gavl_value_init(&dev_val); dev = gavl_value_set_dictionary(&dev_val); gavl_v4l2_get_device_info(g.gl_pathv[i], dev); gavl_dictionary_get_int(dev, GAVL_V4L2_TYPE, &type); if(type_mask && !(type & type_mask)) gavl_value_free(&dev_val); else gavl_array_splice_val_nocopy(ret, -1, 0, &dev_val); } globfree(&g); } const gavl_dictionary_t * gavl_v4l2_get_decoder(const gavl_array_t * arr, gavl_codec_id_t id, const gavl_dictionary_t * stream) { int i, j; const gavl_array_t * formats; const gavl_dictionary_t * dev; const gavl_dictionary_t * fmt; int type = GAVL_V4L2_DEVICE_UNKNOWN; int codec_id; if(stream) { gavl_compression_info_t ci; gavl_compression_info_init(&ci); gavl_stream_get_compression_info(stream, &ci); id = ci.id; gavl_compression_info_free(&ci); } for(i = 0; i < arr->num_entries; i++) { if((dev = gavl_value_get_dictionary(&arr->entries[i])) && gavl_dictionary_get_int(dev, GAVL_V4L2_TYPE, &type) && (type == GAVL_V4L2_DEVICE_DECODER) && (formats = gavl_dictionary_get_array(dev, GAVL_V4L2_SINK_FORMATS))) { for(j = 0; j < formats->num_entries; j++) { if((fmt = gavl_value_get_dictionary(&formats->entries[j])) && gavl_dictionary_get_int(fmt, GAVL_V4L2_FORMAT_GAVL_CODEC_ID, &codec_id) && (codec_id == id)) { if(!stream || check_compat(dev, stream, GAVL_CODEC_ID_NONE)) return dev; } } } } return NULL; } void gavl_v4l2_devices_scan(gavl_array_t * ret) { return gavl_v4l2_devices_scan_by_type(0, ret); } /* v4l formats vs gavl_pixelformat_t and gavl_compression_id_t */ static const struct { uint32_t v4l2; gavl_pixelformat_t pixelformat; gavl_codec_id_t codec_id; uint32_t drm; } pixelformats[] = { /* Pixel format FOURCC depth Description */ // #define V4L2_PIX_FMT_RGB332 v4l2_fourcc('R','G','B','1') /* 8 RGB-3-3-2 */ // #define V4L2_PIX_FMT_RGB444 v4l2_fourcc('R','4','4','4') /* 16 xxxxrrrr ggggbbbb */ // #define V4L2_PIX_FMT_RGB555 v4l2_fourcc('R','G','B','O') /* 16 RGB-5-5-5 */ // #define V4L2_PIX_FMT_RGB565 v4l2_fourcc('R','G','B','P') /* 16 RGB-5-6-5 */ // #define V4L2_PIX_FMT_RGB555X v4l2_fourcc('R','G','B','Q') /* 16 RGB-5-5-5 BE */ // #define V4L2_PIX_FMT_RGB565X v4l2_fourcc('R','G','B','R') /* 16 RGB-5-6-5 BE */ // #define V4L2_PIX_FMT_BGR24 v4l2_fourcc('B','G','R','3') /* 24 BGR-8-8-8 */ { V4L2_PIX_FMT_BGR24, GAVL_BGR_24, GAVL_CODEC_ID_NONE, DRM_FORMAT_BGR888 }, // #define V4L2_PIX_FMT_RGB24 v4l2_fourcc('R','G','B','3') /* 24 RGB-8-8-8 */ { V4L2_PIX_FMT_RGB24, GAVL_RGB_24, GAVL_CODEC_ID_NONE, DRM_FORMAT_RGB888 }, // #define V4L2_PIX_FMT_BGR32 v4l2_fourcc('B','G','R','4') /* 32 BGR-8-8-8-8 */ { V4L2_PIX_FMT_BGR32, GAVL_BGR_32, GAVL_CODEC_ID_NONE, DRM_FORMAT_BGRX8888 }, // #define V4L2_PIX_FMT_RGB32 v4l2_fourcc('R','G','B','4') /* 32 RGB-8-8-8-8 */ { V4L2_PIX_FMT_RGB32, GAVL_RGB_32, GAVL_CODEC_ID_NONE, DRM_FORMAT_RGBX8888 }, // #define V4L2_PIX_FMT_GREY v4l2_fourcc('G','R','E','Y') /* 8 Greyscale */ { V4L2_PIX_FMT_GREY, GAVL_GRAY_8, GAVL_CODEC_ID_NONE, DRM_FORMAT_R8 }, // #define V4L2_PIX_FMT_PAL8 v4l2_fourcc('P','A','L','8') /* 8 8-bit palette */ // #define V4L2_PIX_FMT_YVU410 v4l2_fourcc('Y','V','U','9') /* 9 YVU 4:1:0 */ #ifdef DRM_FORMAT_YVU410 { V4L2_PIX_FMT_YVU410, GAVL_YUV_410_P, GAVL_CODEC_ID_NONE, DRM_FORMAT_YVU410 }, #endif // #define V4L2_PIX_FMT_YVU420 v4l2_fourcc('Y','V','1','2') /* 12 YVU 4:2:0 */ #ifdef DRM_FORMAT_YVU420 { V4L2_PIX_FMT_YVU420, GAVL_YUV_420_P, GAVL_CODEC_ID_NONE, DRM_FORMAT_YVU420 }, { V4L2_PIX_FMT_YVU420M, GAVL_YUV_420_P, GAVL_CODEC_ID_NONE, DRM_FORMAT_YVU420 }, #endif // #define V4L2_PIX_FMT_YUYV v4l2_fourcc('Y','U','Y','V') /* 16 YUV 4:2:2 */ { V4L2_PIX_FMT_YUYV, GAVL_YUY2, GAVL_CODEC_ID_NONE, DRM_FORMAT_YUYV }, // #define V4L2_PIX_FMT_UYVY v4l2_fourcc('U','Y','V','Y') /* 16 YUV 4:2:2 */ { V4L2_PIX_FMT_UYVY, GAVL_UYVY, GAVL_CODEC_ID_NONE, DRM_FORMAT_UYVY }, // #define V4L2_PIX_FMT_YUV422P v4l2_fourcc('4','2','2','P') /* 16 YVU422 planar */ { V4L2_PIX_FMT_YUV422P, GAVL_YUV_422_P, GAVL_CODEC_ID_NONE, DRM_FORMAT_YUV422 }, { V4L2_PIX_FMT_YUV422P, GAVL_YUVJ_422_P, GAVL_CODEC_ID_NONE, DRM_FORMAT_YUV422}, // #define V4L2_PIX_FMT_YUV411P v4l2_fourcc('4','1','1','P') /* 16 YVU411 planar */ #ifdef DRM_FORMAT_YUV411 { V4L2_PIX_FMT_YUV411P, GAVL_YUV_411_P, GAVL_CODEC_ID_NONE, DRM_FORMAT_YUV411 }, #endif // #define V4L2_PIX_FMT_Y41P v4l2_fourcc('Y','4','1','P') /* 12 YUV 4:1:1 (packed) */ // #define V4L2_PIX_FMT_YUV444 v4l2_fourcc('Y','4','4','4') /* 16 xxxxyyyy uuuuvvvv */ // #define V4L2_PIX_FMT_YUV555 v4l2_fourcc('Y','U','V','O') /* 16 YUV-5-5-5 */ // #define V4L2_PIX_FMT_YUV565 v4l2_fourcc('Y','U','V','P') /* 16 YUV-5-6-5 */ // #define V4L2_PIX_FMT_YUV32 v4l2_fourcc('Y','U','V','4') /* 32 YUV-8-8-8-8 */ /* two planes -- one Y, one Cr + Cb interleaved */ // #define V4L2_PIX_FMT_NV12 v4l2_fourcc('N','V','1','2') /* 12 Y/CbCr 4:2:0 */ // #define V4L2_PIX_FMT_NV21 v4l2_fourcc('N','V','2','1') /* 12 Y/CrCb 4:2:0 */ /* The following formats are not defined in the V4L2 specification */ // #define V4L2_PIX_FMT_YUV410 v4l2_fourcc('Y','U','V','9') /* 9 YUV 4:1:0 */ // #define V4L2_PIX_FMT_YUV420 v4l2_fourcc('Y','U','1','2') /* 12 YUV 4:2:0 */ { V4L2_PIX_FMT_YUV420, GAVL_YUV_420_P, GAVL_CODEC_ID_NONE, DRM_FORMAT_YUV420 }, { V4L2_PIX_FMT_YUV420, GAVL_YUVJ_420_P, GAVL_CODEC_ID_NONE, DRM_FORMAT_YUV420 }, { V4L2_PIX_FMT_YUV420M, GAVL_YUV_420_P, GAVL_CODEC_ID_NONE, DRM_FORMAT_YUV420 }, { V4L2_PIX_FMT_YUV420M, GAVL_YUVJ_420_P, GAVL_CODEC_ID_NONE, DRM_FORMAT_YUV420 }, // #define V4L2_PIX_FMT_YYUV v4l2_fourcc('Y','Y','U','V') /* 16 YUV 4:2:2 */ // #define V4L2_PIX_FMT_HI240 v4l2_fourcc('H','I','2','4') /* 8 8-bit color */ // #define V4L2_PIX_FMT_HM12 v4l2_fourcc('H','M','1','2') /* 8 YUV 4:2:0 16x16 macroblocks */ /* see http://www.siliconimaging.com/RGB%20Bayer.htm */ // #define V4L2_PIX_FMT_SBGGR8 v4l2_fourcc('B','A','8','1') /* 8 BGBG.. GRGR.. */ /* compressed formats */ /* compressed formats */ // #define V4L2_PIX_FMT_MJPEG v4l2_fourcc('M', 'J', 'P', 'G') /* Motion-JPEG */ // #define V4L2_PIX_FMT_JPEG v4l2_fourcc('J', 'P', 'E', 'G') /* JFIF JPEG */ { V4L2_PIX_FMT_JPEG, GAVL_PIXELFORMAT_NONE, GAVL_CODEC_ID_JPEG }, { V4L2_PIX_FMT_MJPEG, GAVL_PIXELFORMAT_NONE, GAVL_CODEC_ID_JPEG }, // #define V4L2_PIX_FMT_DV v4l2_fourcc('d', 'v', 's', 'd') /* 1394 */ // #define V4L2_PIX_FMT_MPEG v4l2_fourcc('M', 'P', 'E', 'G') /* MPEG-1/2/4 Multiplexed */ // #define V4L2_PIX_FMT_H264 v4l2_fourcc('H', '2', '6', '4') /* H264 with start codes */ { V4L2_PIX_FMT_H264, GAVL_PIXELFORMAT_NONE, GAVL_CODEC_ID_H264 }, // #define V4L2_PIX_FMT_H264_NO_SC v4l2_fourcc('A', 'V', 'C', '1') /* H264 without start codes */ // #define V4L2_PIX_FMT_H264_MVC v4l2_fourcc('M', '2', '6', '4') /* H264 MVC */ // #define V4L2_PIX_FMT_H263 v4l2_fourcc('H', '2', '6', '3') /* H263 */ // #define V4L2_PIX_FMT_MPEG1 v4l2_fourcc('M', 'P', 'G', '1') /* MPEG-1 ES */ { V4L2_PIX_FMT_MPEG1, GAVL_PIXELFORMAT_NONE, GAVL_CODEC_ID_MPEG1 }, // #define V4L2_PIX_FMT_MPEG2 v4l2_fourcc('M', 'P', 'G', '2') /* MPEG-2 ES */ { V4L2_PIX_FMT_MPEG2, GAVL_PIXELFORMAT_NONE, GAVL_CODEC_ID_MPEG2 }, // #define V4L2_PIX_FMT_MPEG2_SLICE v4l2_fourcc('M', 'G', '2', 'S') /* MPEG-2 parsed slice data */ // #define V4L2_PIX_FMT_MPEG4 v4l2_fourcc('M', 'P', 'G', '4') /* MPEG-4 part 2 ES */ { V4L2_PIX_FMT_MPEG4, GAVL_PIXELFORMAT_NONE, GAVL_CODEC_ID_MPEG4_ASP }, // #define V4L2_PIX_FMT_XVID v4l2_fourcc('X', 'V', 'I', 'D') /* Xvid */ // #define V4L2_PIX_FMT_VC1_ANNEX_G v4l2_fourcc('V', 'C', '1', 'G') /* SMPTE 421M Annex G compliant stream */ // #define V4L2_PIX_FMT_VC1_ANNEX_L v4l2_fourcc('V', 'C', '1', 'L') /* SMPTE 421M Annex L compliant stream */ // #define V4L2_PIX_FMT_VP8 v4l2_fourcc('V', 'P', '8', '0') /* VP8 */ { V4L2_PIX_FMT_VP8, GAVL_PIXELFORMAT_NONE, GAVL_CODEC_ID_VP8 }, // #define V4L2_PIX_FMT_VP9 v4l2_fourcc('V', 'P', '9', '0') /* VP9 */ // #define V4L2_PIX_FMT_HEVC v4l2_fourcc('H', 'E', 'V', 'C') /* HEVC aka H.265 */ // #define V4L2_PIX_FMT_FWHT v4l2_fourcc('F', 'W', 'H', 'T') /* Fast Walsh Hadamard Transform (vicodec) */ // #define V4L2_PIX_FMT_FWHT_STATELESS v4l2_fourcc('S', 'F', 'W', 'H') /* Stateless FWHT (vicodec) */ /* Vendor-specific formats */ // #define V4L2_PIX_FMT_WNVA v4l2_fourcc('W','N','V','A') /* Winnov hw compress */ // #define V4L2_PIX_FMT_SN9C10X v4l2_fourcc('S','9','1','0') /* SN9C10x compression */ // #define V4L2_PIX_FMT_PWC1 v4l2_fourcc('P','W','C','1') /* pwc older webcam */ // #define V4L2_PIX_FMT_PWC2 v4l2_fourcc('P','W','C','2') /* pwc newer webcam */ // #define V4L2_PIX_FMT_ET61X251 v4l2_fourcc('E','6','2','5') /* ET61X251 compression */ { }, }; gavl_codec_id_t gavl_v4l2_pix_fmt_to_codec_id(uint32_t fmt) { int idx = 0; while(pixelformats[idx].v4l2) { if(pixelformats[idx].v4l2 == fmt) return pixelformats[idx].codec_id; idx++; } if(gavl_v4l2_pix_fmt_to_pixelformat(fmt, V4L2_QUANTIZATION_DEFAULT) == GAVL_PIXELFORMAT_NONE) return GAVL_CODEC_ID_EXTENDED; return GAVL_CODEC_ID_NONE; } uint32_t gavl_v4l2_codec_id_to_pix_fmt(gavl_codec_id_t id) { int idx = 0; while(pixelformats[idx].v4l2) { if(pixelformats[idx].codec_id == id) return pixelformats[idx].v4l2; idx++; } return 0; } uint32_t gavl_v4l2_pix_fmt_to_drm_fourcc(uint32_t fmt) { int idx = 0; while(pixelformats[idx].v4l2) { if(pixelformats[idx].v4l2 == fmt) return pixelformats[idx].drm; idx++; } return 0; } gavl_pixelformat_t gavl_v4l2_pix_fmt_to_pixelformat(uint32_t fmt, int quantization) { int idx = 0; while(pixelformats[idx].v4l2) { if(pixelformats[idx].v4l2 == fmt) { if(quantization == V4L2_QUANTIZATION_FULL_RANGE) { if(pixelformats[idx].v4l2 == V4L2_PIX_FMT_YVU420) return GAVL_YUVJ_420_P; if(pixelformats[idx].v4l2 == V4L2_PIX_FMT_YUV422P) return GAVL_YUVJ_422_P; if(pixelformats[idx].v4l2 == V4L2_PIX_FMT_YUV444M) return GAVL_YUVJ_444_P; } return pixelformats[idx].pixelformat; } idx++; } return GAVL_PIXELFORMAT_NONE; } uint32_t gavl_v4l2_pixelformat_to_pix_fmt(gavl_pixelformat_t fmt, int * quantization) { int idx = 0; while(pixelformats[idx].v4l2) { if(pixelformats[idx].pixelformat == fmt) { if(gavl_pixelformat_is_yuv(fmt) && gavl_pixelformat_is_jpeg_scaled(fmt)) *quantization = V4L2_QUANTIZATION_FULL_RANGE; else *quantization = V4L2_QUANTIZATION_DEFAULT; return pixelformats[idx].v4l2; } idx++; } return 0; } static void format_v4l2_to_gavl(const struct v4l2_format * v4l, const struct v4l2_streamparm * parm, gavl_video_format_t * gavl, int type) { if(IS_PLANAR(type)) { gavl->image_width = v4l->fmt.pix_mp.width; gavl->image_height = v4l->fmt.pix_mp.height; gavl->pixelformat = gavl_v4l2_pix_fmt_to_pixelformat(v4l->fmt.pix_mp.pixelformat, v4l->fmt.pix_mp.quantization); } else { gavl->image_width = v4l->fmt.pix.width; gavl->image_height = v4l->fmt.pix.height; gavl->pixelformat = gavl_v4l2_pix_fmt_to_pixelformat(v4l->fmt.pix.pixelformat, v4l->fmt.pix.quantization); } gavl->pixel_width = 1; gavl->pixel_height = 1; gavl->frame_width = gavl->image_width; gavl->frame_height = gavl->image_height; gavl->framerate_mode = GAVL_FRAMERATE_VARIABLE; gavl->timescale = GAVL_TIME_SCALE; #if 0 if(IS_CAPTURE(type) && parm) { #if 0 if(parm->parm.capture.capability & V4L2_CAP_TIMEPERFRAME) { gavl->framerate_mode = GAVL_FRAMERATE_CONSTANT; gavl->timescale = parm->parm.capture.timeperframe.denominator; gavl->frame_duration = parm->parm.capture.timeperframe.numerator; } else { #endif gavl->framerate_mode = GAVL_FRAMERATE_VARIABLE; gavl->timescale = GAVL_TIME_SCALE; #if 0 } #endif } #endif } static void format_gavl_to_v4l2(const gavl_video_format_t * gavl, struct v4l2_format * v4l, int type) { int quantization = 0; memset(v4l, 0, sizeof(*v4l)); v4l->type = type; if(IS_PLANAR(type)) { v4l->fmt.pix_mp.width = gavl->image_width; v4l->fmt.pix_mp.height = gavl->image_height; v4l->fmt.pix_mp.field = V4L2_FIELD_ANY; v4l->fmt.pix_mp.pixelformat = gavl_v4l2_pixelformat_to_pix_fmt(gavl->pixelformat, &quantization); v4l->fmt.pix_mp.quantization = quantization; } else { v4l->fmt.pix.width = gavl->image_width; v4l->fmt.pix.height = gavl->image_height; v4l->fmt.pix_mp.field = V4L2_FIELD_ANY; v4l->fmt.pix.pixelformat = gavl_v4l2_pixelformat_to_pix_fmt(gavl->pixelformat, &quantization); v4l->fmt.pix.quantization = quantization; } } static void destroy_native_v4l2(void * native) { gavl_v4l2_device_close(native); } static int export_video_frame_v4l2(const gavl_video_format_t * vfmt, gavl_video_frame_t * src, gavl_video_frame_t * dst) { gavl_hw_type_t dst_hw_type = gavl_hw_ctx_get_type(dst->hwctx); switch(dst_hw_type) { #ifdef HAVE_DRM case GAVL_HW_DMABUFFER: { int i; port_t * port; uint32_t fmt = 0; gavl_dmabuf_video_frame_t * dma_frame = dst->storage; gavl_v4l2_buffer_t * v4l2_storage = src->storage; gavl_v4l2_device_t * dev = src->hwctx->native; if(IS_CAPTURE(v4l2_storage->buf.type)) port = &dev->capture; else port = &dev->output; if(IS_PLANAR(v4l2_storage->buf.type)) { dma_frame->num_buffers = v4l2_storage->buf.length; for(i = 0; i < dma_frame->num_buffers; i++) { dma_frame->buffers[i].map_len = v4l2_storage->buf.m.planes[i].length; } #if 0 if(IS_PLANAR(dev->capture.buf_type)) pixelformat = dev->capture.fmt.fmt.pix_mp.pixelformat; else pixelformat = dev->capture.fmt.fmt.pix.pixelformat; #endif fmt = port->fmt.fmt.pix_mp.pixelformat; } else { dma_frame->num_buffers = 1; dma_frame->buffers[0].map_len = v4l2_storage->buf.length; fmt = port->fmt.fmt.pix.pixelformat; } dma_frame->num_planes = gavl_pixelformat_num_planes(vfmt->pixelformat); dma_frame->fourcc = gavl_v4l2_pix_fmt_to_drm_fourcc(fmt); /* Export buffers */ for(i = 0; i < dma_frame->num_buffers; i++) { struct v4l2_exportbuffer expbuf; memset(&expbuf, 0, sizeof(expbuf)); expbuf.type = v4l2_storage->buf.type; expbuf.index = v4l2_storage->buf.index; expbuf.plane = i; if(my_ioctl(dev->fd, VIDIOC_EXPBUF, &expbuf) == -1) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Exporting buffer failed: %s", strerror(errno)); return 0; } dma_frame->buffers[i].fd = expbuf.fd; } /* Setup planes */ for(i = 0; i < dma_frame->num_planes; i++) { dst->strides[i] = src->strides[i]; dma_frame->planes[i].stride = src->strides[i]; if(!i) { dma_frame->planes[i].buf_idx = 0; dma_frame->planes[i].offset = 0; } else if(dma_frame->num_buffers == 1) { dma_frame->planes[i].buf_idx = 0; dma_frame->planes[i].offset = src->planes[i] - src->planes[0]; } else { dma_frame->planes[i].buf_idx = i; dma_frame->planes[i].offset = 0; } } } return 1; #endif default: break; } return 0; } static int can_export_v4l2(gavl_hw_context_t * ctx, const gavl_hw_context_t * to) { switch(to->type) { #ifdef HAVE_DRM case GAVL_HW_DMABUFFER: { /* Test if buffer exporting actually works */ int ret = 0; gavl_hw_context_t * dma_ctx = NULL; gavl_video_frame_t * dma_frame = NULL; gavl_v4l2_device_t * dev = ctx->native; port_t * port = &dev->capture; gavl_video_frame_t * vframe_save = NULL; int current_buf_null = port->current_buf ? 0 : 1; if(dev->flags & DMABUF_CHECKED) return !!(dev->flags & DMABUF_SUPPORTED); if(!port->num_bufs) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Cannot check DMABUF export support: No buffers allocated yet"); return 0; } if(current_buf_null) port->current_buf = &port->bufs[0]; dev->flags |= DMABUF_CHECKED; if(port->current_buf->buf.memory != V4L2_MEMORY_MMAP) { gavl_log(GAVL_LOG_INFO, LOG_DOMAIN, "DMABUF export not supported (no mmapped buffers)"); return 0; } vframe_save = port->vframe; port->vframe = gavl_video_frame_create(NULL); dma_ctx = gavl_hw_ctx_create_dma(); gavl_hw_ctx_set_video(dma_ctx, &port->format, GAVL_HW_FRAME_MODE_IMPORT); dma_frame = gavl_hw_video_frame_create(dma_ctx, 0); buffer_to_video_frame_mmap(dev, port); if(export_video_frame_v4l2(&port->format, port->vframe, dma_frame)) { ret = 1; gavl_log(GAVL_LOG_INFO, LOG_DOMAIN, "DMABUF export supported"); } else { gavl_log(GAVL_LOG_INFO, LOG_DOMAIN, "DMABUF export not supported by driver"); } if(dma_frame) gavl_video_frame_destroy(dma_frame); if(dma_ctx) gavl_hw_ctx_destroy(dma_ctx); if(current_buf_null) port->current_buf = NULL; gavl_video_frame_null(port->vframe); gavl_video_frame_destroy(port->vframe); port->vframe = vframe_save; if(ret) dev->flags |= DMABUF_SUPPORTED; return ret; } break; #endif default: break; } return 0; } static const gavl_hw_funcs_t funcs = { .destroy_native = destroy_native_v4l2, // .get_image_formats = gavl_gl_get_image_formats, // .get_overlay_formats = gavl_gl_get_overlay_formats, // .video_frame_create_hw = video_frame_create_hw_egl, // .video_frame_destroy = video_frame_destroy_egl, // .video_frame_to_ram = video_frame_to_ram_egl, // .video_frame_to_hw = video_frame_to_hw_egl, // .video_format_adjust = gavl_gl_adjust_video_format, // .overlay_format_adjust = gavl_gl_adjust_video_format, .can_export = can_export_v4l2, .export_video_frame = export_video_frame_v4l2, }; /* hw context associated with a device */ gavl_hw_context_t * gavl_hw_ctx_create_v4l2(const gavl_dictionary_t * dev_info) { gavl_hw_context_t * ret; gavl_v4l2_device_t * dev = gavl_v4l2_device_open(dev_info); ret = gavl_hw_context_create_internal(dev, &funcs, GAVL_HW_V4L2_BUFFER, GAVL_HW_SUPPORTS_VIDEO); dev->hwctx = ret; return ret; } gavl_v4l2_device_t * gavl_hw_ctx_v4l2_get_device(gavl_hw_context_t * ctx) { return ctx->native; } bplaum-gavl-b9385e3/gavl/hw_v4l2.h000066400000000000000000000041621513252040200166510ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ typedef struct gavl_v4l_device_s gavl_v4l_device_t; gavl_v4l_device_t * gavl_v4l_device_open(const char * dev); int gavl_v4l_device_reads_video(gavl_v4l_device_t *); int gavl_v4l_device_writes_video(gavl_v4l_device_t *); int gavl_v4l_device_reads_packets(gavl_v4l_device_t *); int gavl_v4l_device_writes_packets(gavl_v4l_device_t *); gavl_packet_sink_t * gavl_v4l_device_get_packet_sink(gavl_v4l_device_t * dev); gavl_packet_source_t * gavl_v4l_device_get_packet_source(gavl_v4l_device_t * dev); gavl_video_sink_t * gavl_v4l_device_get_video_sink(gavl_v4l_device_t * dev); gavl_video_source_t * gavl_v4l_device_get_video_source(gavl_v4l_device_t * dev); int v4l_device_init_capture(gavl_v4l_device_t * dev, gavl_video_format_t * fmt); int v4l_device_init_output(gavl_v4l_device_t * dev, gavl_video_format_t * fmt); int v4l_device_init_encoder(gavl_v4l_device_t * dev, gavl_video_format_t * fmt, gavl_compression_info_t * cmp); int v4l_device_init_decoder(gavl_v4l_device_t * dev, gavl_video_format_t * fmt, const gavl_compression_info_t * cmp); bplaum-gavl-b9385e3/gavl/hw_vaapi.c000066400000000000000000000455301513252040200171610ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include #include #include #include // #include #include #include #include #include #include #include #include #define LOG_DOMAIN "hw_vaapi" #include #ifdef HAVE_DRM #include #include #endif typedef struct { VADisplay dpy; // Must be first int num_image_formats; VAImageFormat * image_formats; int no_derive; int num_imported_frames; int drm_fd; } gavl_hw_vaapi_t; static struct { gavl_pixelformat_t pfmt; uint32_t fourcc; unsigned int rt_format; } formats[] = { #if 0 { GAVL_RGB_32, VA_FOURCC('R','G','B','X'), VA_RT_FORMAT_RGB32 }, { GAVL_BGR_32, VA_FOURCC('B','G','R','X'), VA_RT_FORMAT_RGB32 }, #endif { GAVL_RGBA_32, VA_FOURCC('R','G','B','A'), VA_RT_FORMAT_RGB32 }, { GAVL_RGBA_32, VA_FOURCC('B','G','R','A'), VA_RT_FORMAT_RGB32 }, { GAVL_YUV_420_P, VA_FOURCC('I','4','2','0'), VA_RT_FORMAT_YUV420 }, { GAVL_YUV_420_P, VA_FOURCC('Y','V','1','2'), VA_RT_FORMAT_YUV420 }, { GAVL_PIXELFORMAT_NONE, 0, 0 }, // End }; static gavl_pixelformat_t fourcc_to_pixelformat(uint32_t fourcc) { int i = 0; while(formats[i].pfmt != GAVL_PIXELFORMAT_NONE) { if(formats[i].fourcc == fourcc) return formats[i].pfmt; i++; } return GAVL_PIXELFORMAT_NONE; } static unsigned int pixelformat_to_rt_format(gavl_pixelformat_t pfmt) { int i = 0; while(formats[i].pfmt != GAVL_PIXELFORMAT_NONE) { if(formats[i].pfmt == pfmt) return formats[i].rt_format; i++; } return 0; } static VAImageFormat * pixelformat_to_image_format(gavl_hw_vaapi_t * priv, gavl_pixelformat_t pfmt, VAImageFormat * fmts, int num_fmts) { int i; /* Try to find identical masks */ const uint32_t * masks = gavl_pixelformat_get_masks(pfmt); if(masks) { if(gavl_pixelformat_has_alpha(pfmt)) { for(i = 0; i < num_fmts; i++) { if(fourcc_to_pixelformat(fmts[i].fourcc) != pfmt) continue; if((masks[0] == fmts[i].red_mask) && (masks[1] == fmts[i].green_mask) && (masks[2] == fmts[i].blue_mask) && (masks[3] == fmts[i].alpha_mask)) return &fmts[i]; } } else { for(i = 0; i < num_fmts; i++) { if(fourcc_to_pixelformat(fmts[i].fourcc) != pfmt) continue; if((masks[0] == fmts[i].red_mask) && (masks[1] == fmts[i].green_mask) && (masks[2] == fmts[i].blue_mask)) return &fmts[i]; } } } for(i = 0; i < num_fmts; i++) { if(fourcc_to_pixelformat(fmts[i].fourcc) == pfmt) return &fmts[i]; } return NULL; } static gavl_video_frame_t * create_common(gavl_hw_context_t * ctx) { gavl_video_frame_t * ret; ret = gavl_video_frame_create(NULL); ret->hwctx = ctx; return ret; } static gavl_video_frame_t * gavl_vaapi_video_frame_create(gavl_hw_context_t * ctx, int alloc_resource) { VAStatus result; gavl_video_frame_t * ret = NULL; unsigned int rt_format; // VASurfaceID * surf = NULL; /* Create surface */ gavl_vaapi_video_frame_t * fp = NULL; gavl_hw_vaapi_t * priv = ctx->native; if(alloc_resource && !(rt_format = pixelformat_to_rt_format(ctx->vfmt.pixelformat))) goto fail; fp = calloc(1, sizeof(*fp)); fp->surface = VA_INVALID_ID; fp->image.image_id = VA_INVALID_ID; if(alloc_resource) { if((result = vaCreateSurfaces(priv->dpy, rt_format, ctx->vfmt.image_width, ctx->vfmt.image_height, &fp->surface, 1, NULL, 0)) != VA_STATUS_SUCCESS) goto fail; } ret = create_common(ctx); ret->storage = fp; return ret; fail: if(ret) { ret->hwctx = NULL; gavl_video_frame_destroy(ret); } if(fp) { free(fp); } return NULL; } int gavl_vaapi_map_frame(gavl_video_frame_t * f, int wr) { void * buf; uint8_t * buf_i; gavl_vaapi_video_frame_t * fp = f->storage; gavl_hw_vaapi_t * priv = f->hwctx->native; VAStatus result; fp->wr = wr; /* Need to generate image */ if(fp->image.image_id == VA_INVALID_ID) { if(!priv->no_derive) { if((result = vaDeriveImage(priv->dpy, fp->surface, &fp->image)) != VA_STATUS_SUCCESS) { // fprintf(stderr, "vaDeriveImage Failed: %s\n", vaErrorStr(result)); priv->no_derive = 1; } } if(priv->no_derive) { VAImageFormat * format; if(!(format = pixelformat_to_image_format(priv, f->hwctx->vfmt.pixelformat, priv->image_formats, priv->num_image_formats))) return 0; if((result = vaCreateImage(priv->dpy, format, f->hwctx->vfmt.image_width, f->hwctx->vfmt.image_height, &fp->image)) != VA_STATUS_SUCCESS) return 0; } } /* Copy surface to image */ if(priv->no_derive) { if((result = vaGetImage(priv->dpy, fp->surface, 0, 0, f->hwctx->vfmt.image_width, f->hwctx->vfmt.image_height, fp->image.image_id)) != VA_STATUS_SUCCESS) { // fprintf(stderr, " failed: %s\n", vaErrorStr(result)); return 0; } } /* Map image */ if((result = vaMapBuffer(priv->dpy, fp->image.buf, &buf)) != VA_STATUS_SUCCESS) { return 0; } buf_i = buf; f->planes[0] = buf_i + fp->image.offsets[0]; f->strides[0] = fp->image.pitches[0]; if(fp->image.format.fourcc == VA_FOURCC('Y','V','1','2')) { f->planes[2] = buf_i + fp->image.offsets[1]; f->strides[2] = fp->image.pitches[1]; f->planes[1] = buf_i + fp->image.offsets[2]; f->strides[1] = fp->image.pitches[2]; } else if(fp->image.format.fourcc == VA_FOURCC('N','V','1','2')) { f->planes[1] = buf_i + fp->image.offsets[1]; f->strides[1] = fp->image.pitches[1]; f->planes[2] = buf_i + fp->image.offsets[1] + fp->image.pitches[1] / 2; f->strides[2] = fp->image.pitches[1]; } else if((fp->image.num_planes > 1) && (fp->image.offsets[1] + fp->image.pitches[1])) { f->planes[1] = buf_i + fp->image.offsets[1]; f->strides[1] = fp->image.pitches[1]; f->planes[2] = buf_i + fp->image.offsets[2]; f->strides[2] = fp->image.pitches[2]; } return 1; } /* Unmap */ int gavl_vaapi_unmap_frame(gavl_video_frame_t * f) { gavl_hw_vaapi_t * priv = f->hwctx->native; gavl_vaapi_video_frame_t * fp = f->storage; VAStatus result; vaUnmapBuffer(priv->dpy, fp->image.buf); /* TODO: Copy back to surface */ if(fp->wr) { if((result = vaPutImage(priv->dpy, fp->surface, fp->image.image_id, 0, // int src_x, 0, // int src_y, f->hwctx->vfmt.image_width, // unsigned int src_width, f->hwctx->vfmt.image_height, // unsigned int src_height, 0, // int dest_x, 0, // int dest_y, f->hwctx->vfmt.image_width, // unsigned int dest_width, f->hwctx->vfmt.image_height)) != VA_STATUS_SUCCESS) //unsigned int dest_height { // fprintf(stderr, " failed: %s\n", vaErrorStr(result)); return 0; } } vaDestroyImage(priv->dpy, fp->image.image_id); fp->image.image_id = VA_INVALID_ID; gavl_video_frame_null(f); return 1; } static void gavl_vaapi_video_frame_destroy(gavl_video_frame_t * f, int destroy_resource) { gavl_hw_vaapi_t * priv = f->hwctx->native; gavl_vaapi_video_frame_t * image; image = f->storage; if(image->image.image_id != VA_INVALID_ID) vaDestroyImage(priv->dpy, image->image.image_id); if(destroy_resource) { if(image->surface != VA_INVALID_ID) vaDestroySurfaces(priv->dpy, &image->surface, 1); } free(image); gavl_video_frame_null(f); f->hwctx = NULL; gavl_video_frame_destroy(f); } #ifdef DUMP_FORMATS static void dump_image_format(const VAImageFormat * f) { fprintf(stderr, " fourcc: %c%c%c%c\n", (f->fourcc) & 0xff, (f->fourcc >> 8) & 0xff, (f->fourcc >> 16) & 0xff, (f->fourcc >> 24) & 0xff); fprintf(stderr, " byte_order: %d\n", f->byte_order); fprintf(stderr, " bits_per_pixel: %d\n", f->bits_per_pixel); fprintf(stderr, " depth: %d\n", f->depth); fprintf(stderr, " red_mask: %08x\n", f->red_mask); fprintf(stderr, " green_mask: %08x\n", f->green_mask); fprintf(stderr, " blue_mask: %08x\n", f->blue_mask); fprintf(stderr, " alpha_mask: %08x\n", f->alpha_mask); } #endif static gavl_pixelformat_t * gavl_vaapi_get_image_formats(gavl_hw_context_t * ctx, gavl_hw_frame_mode_t mode) { int num, i; gavl_pixelformat_t * ret; gavl_hw_vaapi_t * p = ctx->native; int num_ret = 0; gavl_pixelformat_t fmt; int j; int take_it; num = vaMaxNumImageFormats(p->dpy); p->image_formats = malloc(num * sizeof(*p->image_formats)); vaQueryImageFormats(p->dpy, p->image_formats, &p->num_image_formats); ret = calloc(p->num_image_formats + 1, sizeof(*ret)); for(i = 0; i < p->num_image_formats; i++) { #ifdef DUMP_FORMATS fprintf(stderr, "Image Format %d\n", i); dump_image_format(&p->image_formats[i]); #endif if((fmt = fourcc_to_pixelformat(p->image_formats[i].fourcc)) == GAVL_PIXELFORMAT_NONE) continue; j = 0; take_it = 1; while(j < num_ret) { if(ret[j] == fmt) { take_it = 0; break; } j++; } if(take_it) { ret[num_ret] = fmt; num_ret++; } } ret[num_ret] = GAVL_PIXELFORMAT_NONE; return ret; } static void gavl_vaapi_cleanup(void * priv) { gavl_hw_vaapi_t * p = priv; if(p->image_formats) free(p->image_formats); if(p->dpy) vaTerminate(p->dpy); if(p->drm_fd >= 0) close(p->drm_fd); free(p); } VASurfaceID gavl_vaapi_get_surface_id(const gavl_video_frame_t * f) { VASurfaceID * surf = f->storage; return *surf; } /* Use only in specific create routines */ void gavl_vaapi_set_surface_id(gavl_video_frame_t * f, VASurfaceID id) { VASurfaceID * surf; if(!f->storage) { surf = malloc(sizeof(*surf)); f->storage = surf; } else surf = f->storage; *surf = id; } #if 0 VASubpictureID gavl_vaapi_get_subpicture_id(const gavl_video_frame_t * f) { vaapi_frame_t * frame = f->storage; return frame->ovl; } #endif VAImageID gavl_vaapi_get_image_id(const gavl_video_frame_t * f) { gavl_vaapi_video_frame_t * frame = f->storage; return frame->image.image_id; } static void gavl_vaapi_video_format_adjust(gavl_hw_context_t * ctx, gavl_video_format_t * fmt, gavl_hw_frame_mode_t mode) { gavl_video_format_set_frame_size(fmt, 16, 16); } typedef struct { VAProfile va; const char * gavl; } profile_map_t; static const profile_map_t h264_profiles[] = { // { VAProfileH264Baseline, GAVL_META_H264_PROFILE_BASELINE }, // { VAProfileH264Baseline, GAVL_META_H264_PROFILE_CONSTRAINED_BASELINE }, { VAProfileH264Main, GAVL_META_H264_PROFILE_MAIN }, { VAProfileH264High, GAVL_META_H264_PROFILE_HIGH }, { VAProfileH264High, GAVL_META_H264_PROFILE_CONSTRAINED_HIGH }, { }, }; static const profile_map_t mpeg2_profiles[] = { { VAProfileMPEG2Simple, GAVL_META_MPEG2_LEVEL_LOW }, { VAProfileMPEG2Main, GAVL_META_MPEG2_LEVEL_MAIN }, { }, }; static const profile_map_t mpeg4_profiles[] = { { VAProfileMPEG4Simple, GAVL_META_MPEG4_PROFILE_SIMPLE }, { VAProfileMPEG4AdvancedSimple, GAVL_META_MPEG4_PROFILE_ADVANCED_SIMPLE }, { VAProfileMPEG4Main, GAVL_META_MPEG4_PROFILE_MAIN }, { } }; VAProfile gavl_vaapi_get_profile(const gavl_dictionary_t * dict) { int i; const char * profile; const profile_map_t * map = NULL; gavl_codec_id_t id; gavl_compression_info_t ci; gavl_compression_info_init(&ci); if(!gavl_stream_get_compression_info(dict, &ci)) return VAProfileNone; id = ci.id; gavl_compression_info_free(&ci); switch(id) { case GAVL_CODEC_ID_MPEG2: map = mpeg2_profiles; break; case GAVL_CODEC_ID_MPEG4_ASP: map = mpeg4_profiles; break; case GAVL_CODEC_ID_H264: map = h264_profiles; break; default: break; } if(!map) return VAProfileNone; if(!(dict = gavl_stream_get_metadata(dict))) return VAProfileNone; if(!(profile = gavl_dictionary_get_string(dict, GAVL_META_PROFILE))) return VAProfileNone; i = 0; while(map[i].gavl) { if(!strcmp(profile, map[i].gavl)) return map[i].va; i++; } return VAProfileNone; } int gavl_vaapi_can_decode(VADisplay dpy, const gavl_dictionary_t * dict) { int i; int ret = 0; VAProfile profile; int num_entrypoints = 0; VAEntrypoint *entrypoints = NULL; if((profile = gavl_vaapi_get_profile(dict)) == VAProfileNone) return 0; entrypoints = calloc(vaMaxNumEntrypoints(dpy), sizeof(*entrypoints)); vaQueryConfigEntrypoints(dpy, profile, entrypoints, /* out */ &num_entrypoints); /* out */ for(i = 0; i < num_entrypoints; i++) { if(entrypoints[i] == VAEntrypointVLD) { ret = 1; break; } } if(entrypoints) free(entrypoints); return ret; } static int gavl_vaapi_export_video_frame(const gavl_video_format_t * fmt, gavl_video_frame_t * src, gavl_video_frame_t * dst) { gavl_hw_vaapi_t * dev = src->hwctx->native; gavl_hw_type_t dst_hw_type = gavl_hw_ctx_get_type(dst->hwctx); switch(dst_hw_type) { #ifdef HAVE_DRM case GAVL_HW_DMABUFFER: { int i; VADRMPRIMESurfaceDescriptor prime_desc; gavl_dmabuf_video_frame_t * dma_frame = dst->storage; gavl_vaapi_video_frame_t * vaapi_storage = src->storage; if(vaExportSurfaceHandle(dev->dpy, vaapi_storage->surface, VA_SURFACE_ATTRIB_MEM_TYPE_DRM_PRIME_2, VA_EXPORT_SURFACE_READ_WRITE|VA_EXPORT_SURFACE_COMPOSED_LAYERS, &prime_desc) != VA_STATUS_SUCCESS) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "vaExportSurfaceHandle failed"); return 0; } gavl_log(GAVL_LOG_INFO, LOG_DOMAIN, "Exported VASurface as DMA buffer"); dma_frame->num_buffers = prime_desc.num_objects; for(i = 0; i < dma_frame->num_buffers; i++) { dma_frame->buffers[i].fd = prime_desc.objects[i].fd; dma_frame->buffers[i].map_len = prime_desc.objects[i].size; } dma_frame->num_planes = prime_desc.layers[0].num_planes; dma_frame->fourcc = prime_desc.layers[0].drm_format; for(i = 0; i < dma_frame->num_planes; i++) { dma_frame->planes[i].buf_idx = prime_desc.layers[0].object_index[i]; dma_frame->planes[i].offset = prime_desc.layers[0].offset[i]; dma_frame->planes[i].stride = prime_desc.layers[0].pitch[i]; dst->strides[i] = prime_desc.layers[0].pitch[i]; } dst->buf_idx = src->buf_idx; } #endif default: break; } return 0; } static int gavl_vaapi_exports_type(gavl_hw_context_t * ctx, const gavl_hw_context_t * other) { switch(other->type) { #ifdef HAVE_DRM case GAVL_HW_DMABUFFER: { return 1; } break; #endif default: break; } return 0; } static const gavl_hw_funcs_t funcs = { .destroy_native = gavl_vaapi_cleanup, .get_image_formats = gavl_vaapi_get_image_formats, .video_frame_create = gavl_vaapi_video_frame_create, .video_frame_destroy = gavl_vaapi_video_frame_destroy, .video_frame_map = gavl_vaapi_map_frame, .video_frame_unmap = gavl_vaapi_unmap_frame, .video_format_adjust = gavl_vaapi_video_format_adjust, .can_export = gavl_vaapi_exports_type, .export_video_frame = gavl_vaapi_export_video_frame, }; static const char * drm_devices[] = { "/dev/dri/renderD128", "/dev/dri/renderD129", "/dev/dri/card0", "/dev/dri/card1", NULL, }; gavl_hw_context_t * gavl_hw_ctx_create_vaapi() { int major, minor; gavl_hw_vaapi_t * priv; VAStatus result; int support_flags = GAVL_HW_SUPPORTS_VIDEO; int i = 0; priv = calloc(1, sizeof(*priv)); priv->drm_fd = -1; /* TODO */ while(drm_devices[i]) { if((priv->drm_fd = open(drm_devices[i], O_RDWR)) >= 0) break; i++; } if(!drm_devices[i]) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "No DRM device available"); return NULL; } gavl_log(GAVL_LOG_INFO, LOG_DOMAIN, "Opened %s for VAAPI", drm_devices[i]); priv->dpy = vaGetDisplayDRM(priv->drm_fd); /* Deriving images doesn't work for weird formats like NV12 */ priv->no_derive = 1; if(!priv->dpy) return NULL; if((result = vaInitialize(priv->dpy, &major, &minor)) != VA_STATUS_SUCCESS) { return NULL; } return gavl_hw_context_create_internal(priv, &funcs, GAVL_HW_VAAPI, support_flags); } VADisplay gavl_hw_ctx_vaapi_get_va_display(gavl_hw_context_t * ctx) { gavl_hw_vaapi_t * p = ctx->native; return p->dpy; } bplaum-gavl-b9385e3/gavl/interleave.c000066400000000000000000000157551513252040200175270ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include #include #include gavl_audio_func_t gavl_find_interleave_converter(gavl_interleave_table_t * t, gavl_audio_format_t * in, gavl_audio_format_t * out) { int bytes_per_sample = gavl_bytes_per_sample(in->sample_format); #if 0 fprintf(stderr, "gavl_find_interleave_converter %s -> %s\n", gavl_interleave_mode_to_string(in->interleave_mode), gavl_interleave_mode_to_string(out->interleave_mode)); #endif switch(in->interleave_mode) { case GAVL_INTERLEAVE_ALL: switch(out->interleave_mode) { case GAVL_INTERLEAVE_ALL: break; case GAVL_INTERLEAVE_2: switch(bytes_per_sample) { case 1: return t->interleave_all_to_2_8; break; case 2: return t->interleave_all_to_2_16; break; case 4: return t->interleave_all_to_2_32; break; case 8: return t->interleave_all_to_2_64; break; } break; case GAVL_INTERLEAVE_NONE: if(in->num_channels == 2) { switch(bytes_per_sample) { case 1: return t->interleave_all_to_none_stereo_8; break; case 2: return t->interleave_all_to_none_stereo_16; break; case 4: return t->interleave_all_to_none_stereo_32; break; case 8: return t->interleave_all_to_none_stereo_64; break; } } else { switch(bytes_per_sample) { case 1: return t->interleave_all_to_none_8; break; case 2: return t->interleave_all_to_none_16; break; case 4: return t->interleave_all_to_none_32; break; case 8: return t->interleave_all_to_none_64; break; } } break; } case GAVL_INTERLEAVE_2: switch(out->interleave_mode) { case GAVL_INTERLEAVE_ALL: switch(bytes_per_sample) { case 1: return t->interleave_2_to_all_8; break; case 2: return t->interleave_2_to_all_16; break; case 4: return t->interleave_2_to_all_32; break; case 8: return t->interleave_2_to_all_64; break; } break; case GAVL_INTERLEAVE_2: break; case GAVL_INTERLEAVE_NONE: switch(bytes_per_sample) { case 1: return t->interleave_2_to_none_8; break; case 2: return t->interleave_2_to_none_16; break; case 4: return t->interleave_2_to_none_32; break; case 8: return t->interleave_2_to_none_64; break; } break; } break; case GAVL_INTERLEAVE_NONE: switch(out->interleave_mode) { case GAVL_INTERLEAVE_ALL: if(in->num_channels == 2) { switch(bytes_per_sample) { case 1: return t->interleave_none_to_all_stereo_8; break; case 2: return t->interleave_none_to_all_stereo_16; break; case 4: return t->interleave_none_to_all_stereo_32; break; case 8: return t->interleave_none_to_all_stereo_64; break; } break; } else { switch(bytes_per_sample) { case 1: return t->interleave_none_to_all_8; break; case 2: return t->interleave_none_to_all_16; break; case 4: return t->interleave_none_to_all_32; break; case 8: return t->interleave_none_to_all_64; break; } } break; case GAVL_INTERLEAVE_2: switch(bytes_per_sample) { case 1: return t->interleave_none_to_2_8; break; case 2: return t->interleave_none_to_2_16; break; case 4: return t->interleave_none_to_2_32; break; case 8: return t->interleave_none_to_2_64; break; } break; case GAVL_INTERLEAVE_NONE: break; } break; } return NULL; } gavl_interleave_table_t * gavl_create_interleave_table(gavl_audio_options_t * opt) { gavl_interleave_table_t * ret = calloc(1, sizeof(*ret)); if(opt->quality || (opt->accel_flags & GAVL_ACCEL_C)) gavl_init_interleave_funcs_c(ret); return ret; } void gavl_destroy_interleave_table(gavl_interleave_table_t * t) { free(t); } gavl_audio_convert_context_t * gavl_interleave_context_create(gavl_audio_options_t * opt, gavl_audio_format_t * input_format, gavl_audio_format_t * output_format) { gavl_interleave_table_t * table; gavl_audio_convert_context_t * ret; ret = gavl_audio_convert_context_create(input_format, output_format); ret->output_format.interleave_mode = output_format->interleave_mode; table = gavl_create_interleave_table(opt); ret->func = gavl_find_interleave_converter(table, &ret->input_format, &ret->output_format); gavl_destroy_interleave_table(table); return ret; } bplaum-gavl-b9385e3/gavl/io.c000066400000000000000000001102431513252040200157640ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include #include #include #include #include #include #include #include #define LOG_DOMAIN "io" #include #include // #define DUMP_MSG_WRITE // #define DUMP_MSG_READ void gavl_io_init(gavl_io_t * ret, gavl_read_func r, gavl_write_func w, gavl_seek_func s, gavl_close_func c, gavl_flush_func f, int flags, void * priv) { memset(ret, 0, sizeof(*ret)); ret->read_func = r; ret->write_func = w; ret->seek_func = s; ret->close_func = c; ret->flush_func = f; ret->priv = priv; ret->flags = flags; } void gavl_io_set_nonblock_read(gavl_io_t * io, gavl_read_func read_nonblock) { io->read_func_nonblock = read_nonblock; } void gavl_io_set_nonblock_write(gavl_io_t * io, gavl_write_func write_nonblock) { io->write_func_nonblock = write_nonblock; } void * gavl_io_get_priv(gavl_io_t * io) { return io->priv; } int gavl_io_can_seek(gavl_io_t * io) { return (io->seek_func && (io->flags & GAVL_IO_CAN_SEEK)) ? 1 : 0; } int gavl_io_can_read(gavl_io_t * io, int timeout) { if(io->get_buf.len > 0) return 1; if(gavl_io_got_eof(io)) return 1; if(io->poll_func) return io->poll_func(io->priv, timeout, 0); else return 1; } int gavl_io_can_write(gavl_io_t * io, int timeout) { if(io->poll_func) return io->poll_func(io->priv, timeout, 1); else return 1; } gavl_io_t * gavl_io_create(gavl_read_func r, gavl_write_func w, gavl_seek_func s, gavl_close_func c, gavl_flush_func f, int flags, void * priv) { gavl_io_t * ret; ret = malloc(sizeof(*ret)); if(!ret) return NULL; gavl_io_init(ret, r, w, s, c, f, flags, priv); return ret; } void gavl_io_cleanup(gavl_io_t * io) { if(io->flush_func) io->flush_func(io->priv); if(io->close_func) io->close_func(io->priv); gavl_dictionary_free(&io->info); gavl_buffer_free(&io->get_buf); } void gavl_io_destroy(gavl_io_t * io) { gavl_io_cleanup(io); free(io); } void gavl_io_set_info(gavl_io_t * io, int64_t total_bytes, const char * filename, const char * mimetype, int flags) { if(total_bytes > 0) io->total_bytes = total_bytes; gavl_dictionary_set_string(&io->info, GAVL_META_URI, filename); gavl_dictionary_set_string(&io->info, GAVL_META_MIMETYPE, mimetype); io->position = 0; io->flags &= ~(GAVL_IO_ERROR|GAVL_IO_EOF| GAVL_IO_CAN_SEEK| GAVL_IO_CAN_READ| GAVL_IO_CAN_WRITE); io->flags |= (flags & (GAVL_IO_CAN_SEEK| GAVL_IO_CAN_READ| GAVL_IO_CAN_WRITE)); // fprintf(stderr, "gavl_io_set_info %s\n", filename); } void gavl_io_set_poll_func(gavl_io_t * io, gavl_poll_func f) { io->poll_func = f; } int64_t gavl_io_total_bytes(gavl_io_t * io) { return io->total_bytes; } const char * gavl_io_filename(gavl_io_t * io) { return gavl_dictionary_get_string(&io->info, GAVL_META_URI); } const char * gavl_io_mimetype(gavl_io_t * io) { return gavl_dictionary_get_string(&io->info, GAVL_META_MIMETYPE); } gavl_dictionary_t * gavl_io_info(gavl_io_t * io) { return &io->info; } int gavl_io_flush(gavl_io_t * io) { int ret = 1; if(gavl_io_got_error(io)) return 0; if(io->flush_func) ret = io->flush_func(io->priv); if(!ret) gavl_io_set_error(io); return ret; } int gavl_io_got_error(gavl_io_t * io) { return io->flags & GAVL_IO_ERROR; } int gavl_io_got_eof(gavl_io_t * io) { return io->flags & GAVL_IO_EOF; } void gavl_io_set_error(gavl_io_t * io) { io->flags |= GAVL_IO_ERROR; } void gavl_io_clear_error(gavl_io_t * io) { io->flags &= ~GAVL_IO_ERROR; } void gavl_io_set_eof(gavl_io_t * io) { io->flags |= GAVL_IO_EOF; } void gavl_io_clear_eof(gavl_io_t * io) { io->flags &= ~GAVL_IO_EOF; } int64_t gavl_io_position(gavl_io_t * io) { return io->position; } void gavl_io_reset_position(gavl_io_t * io) { io->position = 0; } static int io_read_data(gavl_io_t * io, uint8_t * buf, int len, int block) { int ret = 0; int result; int num_get = 0; if(!io->read_func) return 0; if(gavl_io_got_eof(io)) return 0; if(io->get_buf.len > 0) { num_get = io->get_buf.len > len ? len : io->get_buf.len; memcpy(buf, io->get_buf.buf, num_get); if(io->get_buf.len > num_get) memmove(io->get_buf.buf, io->get_buf.buf + num_get, io->get_buf.len - num_get); io->get_buf.len -= num_get; buf += num_get; len -= num_get; io->position += num_get; ret = num_get; } if(len > 0) { if(!block && io->read_func_nonblock) result = io->read_func_nonblock(io->priv, buf, len); else { result = io->read_func(io->priv, buf, len); if(result < len) gavl_log(GAVL_LOG_DEBUG, LOG_DOMAIN, "Requested %d bytes, got %d", len, result); } if(result < 0) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Read returned %d (block: %d)", result, block); gavl_io_set_error(io); } if(result > 0) { io->position += result; ret += result; } if(((io->total_bytes > 0) && (io->position == io->total_bytes)) || (!result && block)) gavl_io_set_eof(io); } return ret; } int gavl_io_read_data(gavl_io_t * io, uint8_t * buf, int len) { if(io->flags & (GAVL_IO_ERROR|GAVL_IO_EOF)) return 0; return io_read_data(io, buf, len, 1); } int gavl_io_read_data_nonblock(gavl_io_t * io, uint8_t * buf, int len) { if(io->flags & (GAVL_IO_ERROR|GAVL_IO_EOF)) return 0; return io_read_data(io, buf, len, 0); } void gavl_io_unread_data(gavl_io_t * io, const uint8_t * buf, int len) { gavl_buffer_prepend_data(&io->get_buf, buf, len); io->position -= len; } int gavl_io_get_data(gavl_io_t * io, uint8_t * buf, int len) { int ret; if(!io->read_func) return 0; if(io->get_buf.len < len) { gavl_buffer_alloc(&io->get_buf, len); ret = io->read_func(io->priv, io->get_buf.buf + io->get_buf.len, len - io->get_buf.len); if(ret > 0) io->get_buf.len += ret; else return ret; } /* Unlikely */ if(len > io->get_buf.len) len = io->get_buf.len; memcpy(buf, io->get_buf.buf, len); return len; } int gavl_io_write_data(gavl_io_t * io, const uint8_t * buf, int len) { int ret; if(gavl_io_got_error(io)) return -1; if(!io->write_func) return 0; ret = io->write_func(io->priv, buf, len); if(ret > 0) io->position += ret; if(ret < len) gavl_io_set_error(io); return ret; } int gavl_io_write_data_nonblock(gavl_io_t * io, const uint8_t * buf, int len) { int ret; if(gavl_io_got_error(io)) return -1; if(io->write_func_nonblock) ret = io->write_func_nonblock(io->priv, buf, len); else if(io->write_func) ret = io->write_func(io->priv, buf, len); else ret = 0; #if 0 if(!ret) { fprintf(stderr, "gavl_io_write_data_nonblock: write returned null %p %p\n", io->write_func_nonblock, io->write_func); } #endif if(ret > 0) io->position += ret; return ret; } void gavl_io_skip(gavl_io_t * io, int bytes) { if(io->get_buf.len > 0) { int num_skip = io->get_buf.len > bytes ? bytes : io->get_buf.len; if(io->get_buf.len > num_skip) memmove(io->get_buf.buf, io->get_buf.buf + num_skip, io->get_buf.len - num_skip); io->get_buf.len -= num_skip; bytes -= num_skip; io->position += num_skip; if(!bytes) return; } if(io->seek_func) io->position = io->seek_func(io->priv, bytes, SEEK_CUR); else { int i; uint8_t c; for(i = 0; i < bytes; i++) { if(gavl_io_read_data(io, &c, 1) < 1) break; io->position++; } } } int64_t gavl_io_seek(gavl_io_t * io, int64_t pos, int whence) { if(!io->seek_func) return -1; io->position = io->seek_func(io->priv, pos, whence); io->flags &= ~GAVL_IO_EOF; return io->position; } /* Fixed size integers (BE) */ int gavl_io_write_uint64f(gavl_io_t * io, uint64_t num) { uint8_t buf[8]; GAVL_64BE_2_PTR(num, buf); return (gavl_io_write_data(io, buf, 8) < 8) ? 0 : 1; } int gavl_io_read_uint64f(gavl_io_t * io, uint64_t * num) { uint8_t buf[8]; if(gavl_io_read_data(io, buf, 8) < 8) return 0; *num = GAVL_PTR_2_64BE(buf); return 1; } int gavl_io_write_int64f(gavl_io_t * io, int64_t num) { uint8_t buf[8]; GAVL_64BE_2_PTR(num, buf); return (gavl_io_write_data(io, buf, 8) < 8) ? 0 : 1; } int gavl_io_read_int64f(gavl_io_t * io, int64_t * num) { uint8_t buf[8]; if(gavl_io_read_data(io, buf, 8) < 8) return 0; *num = GAVL_PTR_2_64BE(buf); return 1; } static int write_uint32f(gavl_io_t * io, uint32_t num) { uint8_t buf[4]; GAVL_32BE_2_PTR(num, buf); // fprintf(stderr, "write_uint32f\n"); // gavl_hexdump(buf, 4, 4); return (gavl_io_write_data(io, buf, 4) < 4) ? 0 : 1; } static int read_uint32f(gavl_io_t * io, uint32_t * num) { uint8_t buf[4]; if(gavl_io_read_data(io, buf, 4) < 4) return 0; // fprintf(stderr, "read_uint32f\n"); // gavl_hexdump(buf, 4, 4); *num = GAVL_PTR_2_32BE(buf); return 1; } /* * Integer formats: * * 7 bit (0..127, -64..63) * 1xxx xxxx * * 14 bit (0..16383, -8192..8193) * 01xx xxxx xxxx xxxx * * 21 bit (0..2097151, -1048576..1048575) * 001x xxxx xxxx xxxx xxxx xxxx * * 28 bit (0..268435455, -134217728..134217727) * 0001 xxxx xxxx xxxx xxxx xxxx xxxx xxxx * * 35 bit * 0000 1xxx xxxx xxxx xxxx xxxx xxxx xxxx xxxx xxxx * * 42 bit * 0000 01xx xxxx xxxx xxxx xxxx xxxx xxxx xxxx xxxx xxxx xxxx * * 49 bit * 0000 001x xxxx xxxx xxxx xxxx xxxx xxxx xxxx xxxx xxxx xxxx xxxx xxxx * * 56 bit * 0000 0001 xxxx xxxx xxxx xxxx xxxx xxxx xxxx xxxx xxxx xxxx xxxx xxxx xxxx xxxx * * 64 bit * 0000 0000 xxxx xxxx xxxx xxxx xxxx xxxx xxxx xxxx xxxx xxxx xxxx xxxx xxxx xxxx xxxx xxxx */ static const int64_t int_offsets[] = { ((uint64_t)1)<<6, ((uint64_t)1)<<13, ((uint64_t)1)<<20, ((uint64_t)1)<<27, ((uint64_t)1)<<34, ((uint64_t)1)<<41, ((uint64_t)1)<<48, ((uint64_t)1)<<55, }; static const uint64_t uint_limits[] = { ((uint64_t)1)<<7, // 128 ((uint64_t)1)<<14, // 16384 ((uint64_t)1)<<21, // 2097152 ((uint64_t)1)<<28, // 268435456 ((uint64_t)1)<<35, // 34359738368 ((uint64_t)1)<<42, // 4398046511104 ((uint64_t)1)<<49, // 562949953421312 ((uint64_t)1)<<56, // 72057594037927936 }; static int get_len_uint(uint64_t num) { int i; for(i = 0; i < 8; i++) { if(num < uint_limits[i]) return i+1; } return 9; } static int get_len_int(int64_t num) { int i; for(i = 0; i < 8; i++) { if((num < int_offsets[i]) && (num >= -int_offsets[i])) return i+1; } return 9; } static int get_len_read(uint8_t num) { int i; for(i = 0; i < 8; i++) { if(num & (0x80 >> i)) return i+1; } return 9; } static int write_uint64v(gavl_io_t * io, uint64_t num, int len) { int idx; uint8_t buf[9]; /* Length byte */ buf[0] = 0x80 >> (len-1); idx = len - 1; while(idx) { buf[idx] = num & 0xff; num >>= 8; idx--; } if(len < 8) buf[0] |= (num & (0xff >> len)); return (gavl_io_write_data(io, buf, len) < len) ? 0 : 1; } int gavl_io_write_uint64v(gavl_io_t * io, uint64_t num) { return write_uint64v(io, num, get_len_uint(num)); } int gavl_io_write_int64v(gavl_io_t * io, int64_t num) { uint64_t num_u; int len = get_len_int(num); if(len == 9) num_u = num ^ 0x8000000000000000LL; else num_u = num + int_offsets[len-1]; return write_uint64v(io, num_u, len); } static int read_uint64v(gavl_io_t * io, uint64_t * num, int * len) { int i; int len1; uint8_t buf[9]; if(!gavl_io_read_data(io, buf, 1)) return 0; len1 = get_len_read(buf[0]); if(len1 > 1) { if(gavl_io_read_data(io, &buf[1], len1 - 1) < len1 - 1) return 0; } *num = buf[0] & (0xff >> len1); for(i = 1; i < len1; i++) { *num <<= 8; *num |= buf[i]; } if(len) *len = len1; return 1; } int gavl_io_read_int64v(gavl_io_t * io, int64_t * num) { int len; if(!read_uint64v(io, (uint64_t*)num, &len)) return 0; if(len == 9) *num ^= 0x8000000000000000LL; else *num -= int_offsets[len-1]; return 1; } int gavl_io_read_uint64v(gavl_io_t * io, uint64_t * num) { return read_uint64v(io, num, NULL); } int gavl_io_write_uint32v(gavl_io_t * io, uint32_t num) { return gavl_io_write_uint64v(io, num); } int gavl_io_read_uint32v(gavl_io_t * io, uint32_t * num) { uint64_t ret; if(!gavl_io_read_uint64v(io, &ret)) return 0; *num = ret; return 1; } int gavl_io_write_int32v(gavl_io_t * io, int32_t num) { return gavl_io_write_int64v(io, num); } int gavl_io_read_int32v(gavl_io_t * io, int32_t * num) { int64_t ret = 0; if(!gavl_io_read_int64v(io, &ret)) return 0; *num = ret; return 1; } /* Fixed size LE/BE I/O */ int gavl_io_read_8(gavl_io_t * ctx, uint8_t * ret) { if(gavl_io_read_data(ctx, ret, 1) < 1) return 0; return 1; } int gavl_io_read_16_le(gavl_io_t * ctx,uint16_t * ret) { uint8_t data[2]; if(gavl_io_read_data(ctx, data, 2) < 2) return 0; *ret = GAVL_PTR_2_16LE(data); return 1; } int gavl_io_read_32_le(gavl_io_t * ctx,uint32_t * ret) { uint8_t data[4]; if(gavl_io_read_data(ctx, data, 4) < 4) return 0; *ret = GAVL_PTR_2_32LE(data); return 1; } int gavl_io_read_24_le(gavl_io_t * ctx,uint32_t * ret) { uint8_t data[3]; if(gavl_io_read_data(ctx, data, 3) < 3) return 0; *ret = GAVL_PTR_2_24LE(data); return 1; } int gavl_io_read_64_le(gavl_io_t * ctx,uint64_t * ret) { uint8_t data[8]; if(gavl_io_read_data(ctx, data, 8) < 8) return 0; *ret = GAVL_PTR_2_64LE(data); return 1; } int gavl_io_read_16_be(gavl_io_t * ctx,uint16_t * ret) { uint8_t data[2]; if(gavl_io_read_data(ctx, data, 2) < 2) return 0; *ret = GAVL_PTR_2_16BE(data); return 1; } int gavl_io_read_24_be(gavl_io_t * ctx,uint32_t * ret) { uint8_t data[3]; if(gavl_io_read_data(ctx, data, 3) < 3) return 0; *ret = GAVL_PTR_2_24BE(data); return 1; } int gavl_io_read_32_be(gavl_io_t * ctx,uint32_t * ret) { uint8_t data[4]; if(gavl_io_read_data(ctx, data, 4) < 4) return 0; *ret = GAVL_PTR_2_32BE(data); return 1; } int gavl_io_read_64_be(gavl_io_t * ctx, uint64_t * ret) { uint8_t data[8]; if(gavl_io_read_data(ctx, data, 8) < 8) return 0; *ret = GAVL_PTR_2_64BE(data); return 1; } /* Write */ int gavl_io_write_8(gavl_io_t * ctx, uint8_t val) { if(gavl_io_write_data(ctx, &val, 1) < 1) return 0; return 1; } int gavl_io_write_16_le(gavl_io_t * ctx, uint16_t val) { uint8_t data[2]; GAVL_16LE_2_PTR(val, data); if(gavl_io_write_data(ctx, data, 2) < 2) return 0; return 1; } int gavl_io_write_32_le(gavl_io_t * ctx,uint32_t val) { uint8_t data[4]; GAVL_32LE_2_PTR(val, data); if(gavl_io_write_data(ctx, data, 4) < 4) return 0; return 1; } int gavl_io_write_24_le(gavl_io_t * ctx,uint32_t val) { uint8_t data[3]; GAVL_24LE_2_PTR(val, data); if(gavl_io_write_data(ctx, data, 3) < 3) return 0; return 1; } int gavl_io_write_64_le(gavl_io_t * ctx,uint64_t val) { uint8_t data[8]; GAVL_64LE_2_PTR(val, data); if(gavl_io_write_data(ctx, data, 8) < 8) return 0; return 1; } int gavl_io_write_16_be(gavl_io_t * ctx,uint16_t val) { uint8_t data[2]; GAVL_16BE_2_PTR(val, data); if(gavl_io_write_data(ctx, data, 2) < 2) return 0; return 1; } int gavl_io_write_24_be(gavl_io_t * ctx,uint32_t val) { uint8_t data[3]; GAVL_24BE_2_PTR(val, data); if(gavl_io_write_data(ctx, data, 3) < 3) return 0; return 1; } int gavl_io_write_32_be(gavl_io_t * ctx,uint32_t val) { uint8_t data[4]; GAVL_32BE_2_PTR(val, data); if(gavl_io_write_data(ctx, data, 4) < 4) return 0; return 1; } int gavl_io_write_64_be(gavl_io_t * ctx, uint64_t val) { uint8_t data[8]; GAVL_64BE_2_PTR(val, data); if(gavl_io_write_data(ctx, data, 8) < 8) return 0; return 1; } /* int <-> float conversion routines taken from ffmpeg */ typedef union { uint32_t i; float f; } intfloat32_t; typedef union { uint64_t i; double f; } intfloat64_t; static float int2flt(uint32_t i) { intfloat32_t v; v.i = i; return v.f; } static uint32_t flt2int(float f) { intfloat32_t v; v.f = f; return v.i; } static double int2dbl(uint64_t i) { intfloat64_t v; v.i = i; return v.f; } static uint64_t dbl2int(double f) { intfloat64_t v; v.f = f; return v.i; } int gavl_io_read_float(gavl_io_t * io, float * num) { uint32_t val; if(!read_uint32f(io, &val)) return 0; *num = int2flt(val); return 1; } int gavl_io_write_float(gavl_io_t * io, float num) { uint32_t val = flt2int(num); return write_uint32f(io, val); } int gavl_io_read_double(gavl_io_t * io, double * num) { uint64_t val; if(!gavl_io_read_uint64f(io, &val)) return 0; *num = int2dbl(val); return 1; } int gavl_io_write_double(gavl_io_t * io, double num) { uint64_t val = dbl2int(num); return gavl_io_write_uint64f(io, val); } int gavl_io_read_string(gavl_io_t * io, char ** ret) { uint32_t len = 0; if(!gavl_io_read_uint32v(io, &len)) return 0; if(!len) { *ret = NULL; return 1; } if(!ret) return 0; *ret = malloc(len + 1); if(gavl_io_read_data(io, (uint8_t*)(*ret), len) < len) return 0; /* Zero terminate */ (*ret)[len] = '\0'; return 1; } int gavl_io_write_string(gavl_io_t * io, const char * str) { uint32_t len; if(!str) return gavl_io_write_uint32v(io, 0); len = strlen(str); if(!gavl_io_write_uint32v(io, len) || gavl_io_write_data(io, (const uint8_t*)str, len) < len) return 0; return 1; } int gavl_io_read_buffer(gavl_io_t * io, gavl_buffer_t * ret) { uint32_t len; if(!gavl_io_read_uint32v(io, &len)) return 0; if(!len) { gavl_buffer_free(ret); gavl_buffer_init(ret); } else if(!gavl_buffer_alloc(ret, len) || (gavl_io_read_data(io, ret->buf, len) < len)) return 0; ret->len = len; return 1; } int gavl_io_write_buffer(gavl_io_t * io, const gavl_buffer_t * buf) { if(!gavl_io_write_uint32v(io, buf->len) || (gavl_io_write_data(io, buf->buf, buf->len) < buf->len)) return 0; return 1; } /* */ int gavl_msg_read(gavl_msg_t * ret, gavl_io_t * io) { int i; int32_t val_i; memset(ret, 0, sizeof(*ret)); /* Message Namespace */ gavl_dictionary_read(io, &ret->header); // fprintf(stderr, "Got ID: %d\n", ret->id); /* Number of arguments */ if(!gavl_io_read_int32v(io, &val_i)) return 0; ret->num_args = val_i; for(i = 0; i < ret->num_args; i++) gavl_value_read(io, &ret->args[i]); gavl_msg_apply_header(ret); #ifdef DUMP_MSG_READ fprintf(stderr, "read message:\n"); gavl_msg_dump(ret, 1); #endif return 1; } int gavl_msg_write(const gavl_msg_t * msg, gavl_io_t * io) { int i; #ifdef DUMP_MSG_WRITE fprintf(stderr, "writing message:\n"); gavl_msg_dump(msg, 1); #endif gavl_dictionary_write(io, &msg->header); /* Number of arguments */ if(!gavl_io_write_int32v(io, msg->num_args)) return 0; /* Arguments */ for(i = 0; i < msg->num_args; i++) gavl_value_write(io, &msg->args[i]); return 1; } /* */ int gavl_value_read(gavl_io_t * io, gavl_value_t * v) { gavl_type_t gavl_type; if(!gavl_io_read_int32v(io, (int32_t*)&gavl_type)) return 0; gavl_value_set_type(v, gavl_type); switch(v->type) { case GAVL_TYPE_UNDEFINED: break; case GAVL_TYPE_INT: if(!gavl_io_read_int32v(io, &v->v.i)) return 0; break; case GAVL_TYPE_LONG: if(!gavl_io_read_int64v(io, &v->v.l)) return 0; break; case GAVL_TYPE_FLOAT: if(!gavl_io_read_double(io, &v->v.d)) return 0; break; case GAVL_TYPE_STRING: if(!gavl_io_read_string(io, &v->v.str)) return 0; break; case GAVL_TYPE_BINARY: { if(!gavl_io_read_buffer(io, v->v.buffer)) return 0; } break; case GAVL_TYPE_AUDIOFORMAT: { int result; gavl_audio_format_t * afmt; gavl_dictionary_t dict; gavl_dictionary_init(&dict); afmt = gavl_value_get_audio_format_nc(v); if((result = gavl_dictionary_read(io, &dict))) result = gavl_audio_format_from_dictionary(afmt, &dict); gavl_dictionary_free(&dict); return result; } break; case GAVL_TYPE_VIDEOFORMAT: { int result; gavl_video_format_t * vfmt; gavl_dictionary_t dict; gavl_dictionary_init(&dict); vfmt = gavl_value_get_video_format_nc(v); if((result = gavl_dictionary_read(io, &dict))) result = gavl_video_format_from_dictionary(vfmt, &dict); gavl_dictionary_free(&dict); return result; } break; case GAVL_TYPE_COLOR_RGB: if(!gavl_io_read_double(io, &v->v.color[0]) || !gavl_io_read_double(io, &v->v.color[1]) || !gavl_io_read_double(io, &v->v.color[2])) return 0; break; case GAVL_TYPE_COLOR_RGBA: if(!gavl_io_read_double(io, &v->v.color[0]) || !gavl_io_read_double(io, &v->v.color[1]) || !gavl_io_read_double(io, &v->v.color[2]) || !gavl_io_read_double(io, &v->v.color[3])) return 0; break; case GAVL_TYPE_POSITION: if(!gavl_io_read_double(io, &v->v.position[0]) || !gavl_io_read_double(io, &v->v.position[1])) return 0; break; case GAVL_TYPE_DICTIONARY: { if(!gavl_dictionary_read(io, v->v.dictionary)) return 0; } break; case GAVL_TYPE_ARRAY: { int i; if(!gavl_io_read_int32v(io, &v->v.array->num_entries)) return 0; v->v.array->entries_alloc = v->v.array->num_entries; v->v.array->entries = calloc(v->v.array->entries_alloc, sizeof(*v->v.array->entries)); for(i = 0; i < v->v.array->num_entries; i++) { if(!gavl_value_read(io, &v->v.array->entries[i])) return 0; } break; } break; } return 1; } int gavl_dictionary_write(gavl_io_t * io, const gavl_dictionary_t * dict) { int i; if(!gavl_io_write_int32v(io, dict->num_entries)) return 0; for(i = 0; i < dict->num_entries; i++) { if(!gavl_io_write_string(io, dict->entries[i].name) || !gavl_value_write(io, &dict->entries[i].v)) return 0; } return 1; } int gavl_dictionary_read(gavl_io_t * io, gavl_dictionary_t * dict) { int i; if(!gavl_io_read_int32v(io, &dict->num_entries)) return 0; dict->entries_alloc = dict->num_entries; dict->entries = calloc(dict->entries_alloc, sizeof(*dict->entries)); for(i = 0; i < dict->num_entries; i++) { if(!gavl_io_read_string(io, &dict->entries[i].name) || !gavl_value_read(io, &dict->entries[i].v)) return 0; } return 1; } int gavl_value_write(gavl_io_t * io, const gavl_value_t * v) { if(!gavl_io_write_int32v(io, v->type)) return 0; switch(v->type) { case GAVL_TYPE_UNDEFINED: break; case GAVL_TYPE_INT: if(!gavl_io_write_int32v(io, v->v.i)) return 0; break; case GAVL_TYPE_LONG: if(!gavl_io_write_int64v(io, v->v.l)) return 0; break; case GAVL_TYPE_FLOAT: if(!gavl_io_write_double(io, v->v.d)) return 0; break; case GAVL_TYPE_STRING: if(!gavl_io_write_string(io, v->v.str)) return 0; break; case GAVL_TYPE_BINARY: if(!gavl_io_write_buffer(io, v->v.buffer)) return 0; break; case GAVL_TYPE_AUDIOFORMAT: { int result; gavl_dictionary_t dict; gavl_dictionary_init(&dict); gavl_audio_format_to_dictionary(v->v.audioformat, &dict); result = gavl_dictionary_write(io, &dict); gavl_dictionary_free(&dict); if(!result) return 0; } break; case GAVL_TYPE_VIDEOFORMAT: { int result; gavl_dictionary_t dict; gavl_dictionary_init(&dict); gavl_video_format_to_dictionary(v->v.videoformat, &dict); result = gavl_dictionary_write(io, &dict); gavl_dictionary_free(&dict); if(!result) return 0; } break; case GAVL_TYPE_COLOR_RGB: if(!gavl_io_write_double(io, v->v.color[0]) || !gavl_io_write_double(io, v->v.color[1]) || !gavl_io_write_double(io, v->v.color[2])) return 0; break; case GAVL_TYPE_COLOR_RGBA: if(!gavl_io_write_double(io, v->v.color[0]) || !gavl_io_write_double(io, v->v.color[1]) || !gavl_io_write_double(io, v->v.color[2]) || !gavl_io_write_double(io, v->v.color[3])) return 0; break; case GAVL_TYPE_POSITION: if(!gavl_io_write_double(io, v->v.position[0]) || !gavl_io_write_double(io, v->v.position[1])) return 0; break; case GAVL_TYPE_DICTIONARY: if(!gavl_dictionary_write(io, v->v.dictionary)) return 0; break; case GAVL_TYPE_ARRAY: { int i; if(!gavl_io_write_int32v(io, v->v.array->num_entries)) return 0; for(i = 0; i < v->v.array->num_entries; i++) { if(!gavl_value_write(io, &v->v.array->entries[i])) return 0; } } break; } return 1; } uint8_t * gavl_msg_to_buffer(int * len, const gavl_msg_t * msg) { uint8_t * ret; gavl_io_t * io = gavl_io_create_mem_write(); gavl_msg_write(msg, io); ret = gavl_io_mem_get_buf(io, len); gavl_io_destroy(io); return ret; } int gavl_msg_from_buffer(const uint8_t * buf, int len, gavl_msg_t * msg) { int result; gavl_io_t * io = gavl_io_create_mem_read(buf, len); result = gavl_msg_read(msg, io); // fprintf(stderr, "bg_msg_from_buffer: %"PRId64"/%d\n", gavl_io_position(io), len); gavl_io_destroy(io); return result; } int gavl_msg_to_packet(const gavl_msg_t * msg, gavl_packet_t * dst) { dst->pts = GAVL_TIME_UNDEFINED; gavl_dictionary_get_long(&msg->header, GAVL_MSG_HEADER_TIMESTAMP, &dst->pts); gavl_packet_free(dst); dst->buf.buf = gavl_msg_to_buffer(&dst->buf.len, msg); return 1; } int gavl_packet_to_msg(const gavl_packet_t * src, gavl_msg_t * msg) { gavl_dictionary_set_long(&msg->header, GAVL_MSG_HEADER_TIMESTAMP, src->pts); return gavl_msg_from_buffer(src->buf.buf, src->buf.len, msg); } /* Sub I/O */ typedef struct { gavl_io_t * io; int64_t offset; int64_t size; int64_t pos; } sub_io_t; static int read_sub(void * priv, uint8_t * data, int len) { int ret; sub_io_t * s = priv; if((s->size > 0) && (len > s->size - s->pos)) len = s->size - s->pos; if(len < 0) return 0; ret = gavl_io_read_data(s->io, data, len); s->pos += ret; return ret; } static int64_t seek_sub(void * priv, int64_t pos, int whence) { sub_io_t * s = priv; switch(whence) { case SEEK_SET: s->pos = pos; break; case SEEK_END: s->pos = s->size - pos; break; case SEEK_CUR: s->pos += pos; break; } if(s->pos < 0) s->pos = 0; if(s->pos > s->size) s->pos = s->size; s->pos = gavl_io_seek(s->io, s->offset + s->pos, SEEK_SET) - s->offset; return s->pos; } static void close_sub(void * priv) { free(priv); } gavl_io_t * gavl_io_create_sub_read(gavl_io_t * io, int64_t offset, int64_t len) { int64_t (*seek_func)(void * priv, int64_t pos, int whence); gavl_io_t * ret; sub_io_t * s = calloc(1, sizeof(*s)); s->offset = offset; s->size = len; s->io = io; if(gavl_io_can_seek(io)) { gavl_io_seek(s->io, s->offset, SEEK_SET); seek_func = seek_sub; } else seek_func = NULL; ret = gavl_io_create(read_sub, NULL, seek_func, close_sub, NULL, io->flags, s); return ret; } static int write_sub(void * priv, const uint8_t * data, int len) { int ret; sub_io_t * s = priv; ret = gavl_io_write_data(s->io, data, len); s->pos += ret; return ret; } static int flush_sub(void * priv) { sub_io_t * s = priv; return gavl_io_flush(s->io); } gavl_io_t * gavl_io_create_sub_write(gavl_io_t * io) { int64_t (*seek_func)(void * priv, int64_t pos, int whence); gavl_io_t * ret; sub_io_t * s = calloc(1, sizeof(*s)); s->offset = io->position; s->size = 0; s->io = io; if(gavl_io_can_seek(io)) seek_func = seek_sub; else seek_func = NULL; ret = gavl_io_create(NULL, write_sub, seek_func, close_sub, flush_sub, io->flags, s); return ret; } int gavl_io_align_write(gavl_io_t * io) { int rest; int64_t position; uint8_t buf[8] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }; position = gavl_io_position(io); rest = position % 8; if(rest) { rest = 8 - rest; if(gavl_io_write_data(io, (const uint8_t*)buf, rest) < rest) return 0; } gavl_io_flush(io); return 1; } int gavl_io_align_read(gavl_io_t * io) { int rest; int64_t position; uint8_t buf[8]; position = gavl_io_position(io); rest = position % 8; if(rest) { rest = 8 - rest; if(gavl_io_read_data(io, buf, rest) < rest) return 0; } return 1; } #define BYTES_TO_ALLOC 1024 int gavl_io_read_line(gavl_io_t * io, char ** ret, int * ret_alloc, int max_len) { char * pos; char c; int bytes_read; bytes_read = 0; /* Allocate Memory for the case we have none */ if(!(*ret_alloc)) { *ret_alloc = BYTES_TO_ALLOC; *ret = realloc(*ret, *ret_alloc); } pos = *ret; while(1) { c = 0; if(!gavl_io_read_data(io, (uint8_t*)(&c), 1)) { // bg_log(BG_LOG_ERROR, LOG_DOMAIN, "Reading line failed: %s", strerror(errno)); if(!bytes_read) { return 0; } break; } // fprintf(stderr, "%c", c); if((c > 0x00) && (c < 0x20) && (c != '\r') && (c != '\n')) { // bg_log(BG_LOG_ERROR, LOG_DOMAIN, "Got non ASCII character (%d) while reading line", c); return 0; } /* * Line break sequence * is starting, remove the rest from the stream */ if(c == '\n') { break; } /* Reallocate buffer */ else if((c != '\r') && (c != '\0')) { if(bytes_read+2 >= *ret_alloc) { *ret_alloc += BYTES_TO_ALLOC; *ret = realloc(*ret, *ret_alloc); pos = &((*ret)[bytes_read]); } /* Put the byte and advance pointer */ *pos = c; pos++; bytes_read++; } } *pos = '\0'; return 1; } int gavl_io_get_flags(gavl_io_t * io) { return io->flags; } /* Chunk I/O */ int gavl_chunk_is(const gavl_chunk_t * head, const char * eightcc) { if(!strncmp(head->eightcc, eightcc, 8)) return 1; else return 0; } int gavl_chunk_read_header(gavl_io_t * io, gavl_chunk_t * head) { /* Byte align (if not already aligned) */ if(!gavl_io_align_read(io)) return 0; if((gavl_io_read_data(io, (uint8_t*)head->eightcc, 8) < 8) || !gavl_io_read_int64f(io, &head->len)) return 0; /* Be strcmp friendly */ head->eightcc[8] = 0x00; return 1; } int gavl_chunk_start(gavl_io_t * io, gavl_chunk_t * head, const char * eightcc) { gavl_io_align_write(io); head->start = gavl_io_position(io); memcpy(head->eightcc, eightcc, 8); if((gavl_io_write_data(io, (const uint8_t*)eightcc, 8) < 8) || !gavl_io_write_int64f(io, 0)) return 0; return 1; } int gavl_chunk_finish(gavl_io_t * io, gavl_chunk_t * head, int write_size) { int64_t position; int64_t size; position = gavl_io_position(io); if(write_size && gavl_io_can_seek(io)) { size = (position - head->start) - 16; position = gavl_io_position(io); gavl_io_seek(io, head->start+8, SEEK_SET); gavl_io_write_int64f(io, size); gavl_io_seek(io, position, SEEK_SET); } /* Pad to multiple of 8 */ gavl_io_align_write(io); return 1; } gavl_io_t * gavl_chunk_start_io(gavl_io_t * io, gavl_chunk_t * head, const char * eightcc) { gavl_io_t * sub_io = gavl_io_create_mem_write(); gavl_chunk_start(sub_io, head, eightcc); return sub_io; } int gavl_chunk_finish_io(gavl_io_t * io, gavl_chunk_t * head, gavl_io_t * sub_io) { int len = 0; uint8_t * ret; gavl_chunk_finish(sub_io, head, 1); ret = gavl_io_mem_get_buf(sub_io, &len); gavl_io_destroy(sub_io); gavl_io_write_data(io, ret, len); gavl_io_flush(io); free(ret); return 1; } /* From / To Buffer */ int gavl_dictionary_from_buffer(const uint8_t * buf, int len, gavl_dictionary_t * fmt) { int result; gavl_io_t * io = gavl_io_create_mem_read(buf, len); result = gavl_dictionary_read(io, fmt); gavl_io_destroy(io); return result; } uint8_t * gavl_dictionary_to_buffer(int * len, const gavl_dictionary_t * fmt) { uint8_t * ret; gavl_io_t * io = gavl_io_create_mem_write(); gavl_dictionary_write(io, fmt); ret = gavl_io_mem_get_buf(io, len); gavl_io_destroy(io); return ret; } /* Read/write A/V frames */ int gavl_io_read_video_frame_header(gavl_io_t * io, gavl_video_frame_t * ret) { char c; if(gavl_io_get_data(io, (uint8_t*)&c, 1) <= 0) return 0; if(c != 'V') return -1; gavl_io_read_data(io, (uint8_t*)&c, 1); if(!gavl_io_read_int64v(io, &ret->timestamp) || !gavl_io_read_int64v(io, &ret->duration) || !gavl_io_read_uint64v(io, &ret->timecode) || !gavl_io_read_int32v(io, &ret->src_rect.x) || !gavl_io_read_int32v(io, &ret->src_rect.y) || !gavl_io_read_int32v(io, &ret->src_rect.w) || !gavl_io_read_int32v(io, &ret->src_rect.h) || !gavl_io_read_int32v(io, &ret->dst_x) || !gavl_io_read_int32v(io, &ret->dst_y) || !gavl_io_read_int32v(io, &ret->interlace_mode) || !gavl_io_read_int32v(io, &ret->buf_idx)) return 0; return 1; } int gavl_io_write_video_frame_header(gavl_io_t * io, const gavl_video_frame_t * ret) { char c = 'V'; if(gavl_io_write_data(io, (uint8_t*)&c, 1) <= 0) return 0; if(!gavl_io_write_int64v(io, ret->timestamp) || !gavl_io_write_int64v(io, ret->duration) || !gavl_io_write_uint64v(io, ret->timecode) || !gavl_io_write_int32v(io, ret->src_rect.x) || !gavl_io_write_int32v(io, ret->src_rect.y) || !gavl_io_write_int32v(io, ret->src_rect.w) || !gavl_io_write_int32v(io, ret->src_rect.h) || !gavl_io_write_int32v(io, ret->dst_x) || !gavl_io_write_int32v(io, ret->dst_y) || !gavl_io_write_int32v(io, ret->interlace_mode) || !gavl_io_write_int32v(io, ret->buf_idx)) return 0; return 1; } bplaum-gavl-b9385e3/gavl/io_buffer.c000066400000000000000000000047461513252040200173270ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include #define LOG_DOMAIN "io_buffer" #include #include typedef struct { gavl_buffer_t * buf; const gavl_buffer_t * buf_c; int64_t pos; } buf_t; static int read_buffer(void * priv, uint8_t * data, int len) { buf_t * b = priv; if(b->pos + len > b->buf_c->len) len = b->buf_c->len - b->pos; if(len > 0) { memcpy(data, b->buf_c->buf + b->pos, len); b->pos += len; return len; } else return 0; } static int write_buffer(void * priv, const uint8_t * data, int len) { buf_t * b = priv; gavl_buffer_append_data(b->buf, data, len); return len; } static int64_t seek_buffer(void * priv, int64_t pos, int whence) { int64_t real_pos = 0; buf_t * b = priv; switch(whence) { case SEEK_SET: real_pos = pos; break; case SEEK_CUR: real_pos = b->pos + pos; break; case SEEK_END: real_pos = b->buf_c->len + pos; break; } b->pos = real_pos; return b->pos; } static void close_buffer(void * priv) { free(priv); } gavl_io_t * gavl_io_create_buffer_write(gavl_buffer_t * buf) { buf_t * b = calloc(1, sizeof(*b)); b->buf = buf; return gavl_io_create(NULL, write_buffer, NULL, close_buffer, NULL, GAVL_IO_CAN_READ, b); } gavl_io_t * gavl_io_create_buffer_read(const gavl_buffer_t * buf) { buf_t * b = calloc(1, sizeof(*b)); b->buf_c = buf; return gavl_io_create(read_buffer, NULL, seek_buffer, close_buffer, NULL, GAVL_IO_CAN_READ | GAVL_IO_CAN_SEEK, b); } bplaum-gavl-b9385e3/gavl/io_cipher.c000066400000000000000000000155451513252040200173270ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include #include #include #include #include #include #include #include #define LOG_DOMAIN "cipher" typedef struct cipher_s cipher_t; typedef void (*decrypt_block_func)(cipher_t*); struct cipher_s { gavl_io_t * src; void * ctx; uint8_t * next_buf_in; uint8_t * buf_in; uint8_t * buf_out; uint8_t * iv; int buf_pos; int block_size; // might be smaller for the last block int in_bufs; int last_block; const struct nettle_cipher * cipher; decrypt_block_func decrypt_block; gavl_cipher_padding_t padding; }; static void decrypt_block_cbc(cipher_t * c) { cbc_decrypt(c->ctx, c->cipher->decrypt, c->cipher->block_size, c->iv, c->cipher->block_size, c->buf_out, c->buf_in); } static int next_block(cipher_t * c) { // int start = 0; if(c->last_block) return 0; if(!c->in_bufs) { if(gavl_io_read_data(c->src, c->buf_in, c->cipher->block_size) < c->cipher->block_size) { if(gavl_io_got_eof(c->src)) return 0; else if(gavl_io_got_error(c->src)) return -1; } c->in_bufs++; // start = 1; } if(c->in_bufs == 1) { if(gavl_io_read_data(c->src, c->next_buf_in, c->cipher->block_size) < c->cipher->block_size) { if(gavl_io_got_eof(c->src)) c->last_block = 1; else if(gavl_io_got_error(c->src)) return -1; } else c->in_bufs++; } #if 0 if(start) { fprintf(stderr, "Next block\n"); fprintf(stderr, "Buf in:\n"); gavl_hexdump(c->buf_in, c->cipher->block_size, c->cipher->block_size); } #endif c->decrypt_block(c); #if 0 if(start) { fprintf(stderr, "Buf out:\n"); gavl_hexdump(c->buf_out, c->cipher->block_size, c->cipher->block_size); } #endif if(c->last_block) { // fprintf(stderr, "Got last block:\n"); // gavl_hexdump(c->buf_out, c->cipher->block_size, c->cipher->block_size); switch(c->padding) { case GAVL_CIPHER_PADDING_PKCS7: { int i; int num = c->buf_out[c->cipher->block_size-1]; if(!num || (num > c->cipher->block_size)) { /* Error */ gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Padding error"); return -1; } for(i = 1; i <= num; i++) { if(c->buf_out[c->cipher->block_size-i] != num) { /* Error */ gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Padding error"); return -1; } } c->block_size = c->cipher->block_size - num; } break; case GAVL_CIPHER_PADDING_NONE: break; } } else { uint8_t * swp; swp = c->buf_in; c->buf_in = c->next_buf_in; c->next_buf_in = swp; c->in_bufs--; c->block_size = c->cipher->block_size; } c->buf_pos = 0; return 1; } static int read_cipher(void * priv, uint8_t * data, int len) { int result; int bytes_read = 0; int bytes_to_read; cipher_t * c = priv; // fprintf(stderr, "Read cipher %d\n", len); while(bytes_read < len) { if(c->buf_pos == c->block_size) { result = next_block(c); if(!result) return bytes_read; else if(result < 0) return -1; } bytes_to_read = len - bytes_read; if(bytes_to_read > c->block_size - c->buf_pos) bytes_to_read = c->block_size - c->buf_pos; if(bytes_to_read > 0) { memcpy(data + bytes_read, c->buf_out + c->buf_pos, bytes_to_read); c->buf_pos += bytes_to_read; bytes_read += bytes_to_read; } } // return fread(data, 1, len, (FILE*)priv); return bytes_read; } #if 0 static int write_cipher_cbc(void * priv, uint8_t * data, int len) { cipher_t * c = priv; // return fread(data, 1, len, (FILE*)priv); return 0; } #endif static void close_cipher(void * priv) { cipher_t * c = priv; if(c->ctx) free(c->ctx); if(c->iv) free(c->iv); if(c->buf_in) free(c->buf_in); if(c->buf_out) free(c->buf_out); if(c->next_buf_in) free(c->next_buf_in); free(c); } gavl_io_t * gavl_io_create_cipher(gavl_cipher_algo_t algo, gavl_cipher_mode_t mode, gavl_cipher_padding_t padding, int wr) { gavl_io_t * ret; cipher_t * priv = calloc(1, sizeof(*priv)); switch(algo) { case GAVL_CIPHER_AES128: priv->cipher = &nettle_aes128; break; case GAVL_CIPHER_NONE: return 0; break; } priv->ctx = calloc(1, priv->cipher->context_size); priv->iv = malloc(priv->cipher->block_size); priv->buf_in = malloc(priv->cipher->block_size); priv->buf_out = malloc(priv->cipher->block_size); priv->next_buf_in = malloc(priv->cipher->block_size); priv->padding = padding; switch(mode) { case GAVL_CIPHER_MODE_CBC: priv->decrypt_block = decrypt_block_cbc; break; case GAVL_CIPHER_MODE_NONE: return 0; break; } ret = gavl_io_create(read_cipher, NULL, NULL, close_cipher, NULL, GAVL_IO_CAN_READ, priv); return ret; } void gavl_io_cipher_init(gavl_io_t * io, gavl_io_t * src, const uint8_t * key, const uint8_t * iv) { cipher_t * c = io->priv; memcpy(c->iv, iv, c->cipher->block_size); c->cipher->set_decrypt_key(c->ctx, key); c->buf_pos = 0; c->block_size = 0; c->in_bufs = 0; c->last_block = 0; c->src = src; gavl_io_clear_error(io); gavl_io_clear_eof(io); } void gavl_io_cipher_set_src(gavl_io_t * io, gavl_io_t * src) { cipher_t * c = io->priv; c->src = src; } bplaum-gavl-b9385e3/gavl/io_fd.c000066400000000000000000000067071513252040200164460ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include #include #include #include #include #include #include #include #include #include #include #define LOG_DOMAIN "io_fd" typedef struct { int fd; int do_close; int block; // fd block flag } fd_t; static int read_fd(void * priv, uint8_t * data, int len, int block) { int ret; fd_t * f = priv; if(f->block != block) { gavl_fd_set_block(f->fd, block); f->block = block; } ret = read(f->fd, data, len); if(ret < 0) { if((errno == EAGAIN) || (errno == EWOULDBLOCK) || (errno == EINTR)) return 0; // Try again gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "read() returned %d: %s", ret, strerror(errno)); } return ret; } static int read_block_fd(void * priv, uint8_t * data, int len) { return read_fd(priv, data, len, 1); } static int read_nonblock_fd(void * priv, uint8_t * data, int len) { return read_fd(priv, data, len, 0); } static int write_fd(void * priv, const uint8_t * data, int len) { fd_t * f = priv; return write(f->fd, data, len); } static void close_fd(void * priv) { fd_t * f = priv; if(f->do_close) close(f->fd); free(f); } static int poll_fd(void * priv, int timeout, int wr) { fd_t * s = priv; if(wr) return gavl_fd_can_write(s->fd, timeout); else return gavl_fd_can_read(s->fd, timeout); } GAVL_PUBLIC gavl_io_t * gavl_io_create_fd(int fd, int wr, int close) { gavl_read_func rf; gavl_write_func wf; int flags = 0; struct stat st; gavl_io_t * ret; fd_t * f = calloc(1, sizeof(*f)); f->fd = fd; if(isatty(fd)) flags |= GAVL_IO_IS_TTY; if(wr) flags |= GAVL_IO_CAN_WRITE; else { flags |= GAVL_IO_CAN_READ; f->block = gavl_fd_get_block(fd); } if(fstat(fd, &st)) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Cannot stat file"); return NULL; } if(S_ISFIFO(st.st_mode)) /* Pipe: Use local connection */ { flags |= (GAVL_IO_IS_LOCAL|GAVL_IO_IS_PIPE); } else if(S_ISREG(st.st_mode)) { flags |= GAVL_IO_IS_REGULAR; } if(wr) { wf = write_fd; rf = NULL; } else { wf = NULL; rf = read_block_fd; } ret = gavl_io_create(rf, wf, NULL, close_fd, NULL, flags, f); gavl_io_set_poll_func(ret, poll_fd); gavl_io_set_nonblock_read(ret, read_nonblock_fd); gavl_io_set_info(ret, st.st_size, NULL, NULL, flags); return ret; } bplaum-gavl-b9385e3/gavl/io_mem.c000066400000000000000000000061221513252040200166220ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include #include #include typedef struct { uint8_t * buf; const uint8_t * buf_const; int pos; int len; int len_alloc; } mem_t; static int read_mem(void * priv, uint8_t * data, int len) { mem_t * m = priv; int bytes = len; if(m->pos + bytes > m->len) bytes = m->len - m->pos; if(!bytes) return 0; memcpy(data, m->buf_const + m->pos, bytes); m->pos += bytes; return bytes; } #define PAD_ALLOC(i) (((i)/512)+1)*512 static int write_mem(void * priv, const uint8_t * data, int len) { mem_t * m = priv; if(m->pos + len > m->len_alloc) { m->len_alloc = PAD_ALLOC(m->len + len); m->buf = realloc(m->buf, m->len_alloc); } memcpy(m->buf + m->pos, data, len); m->pos += len; if(m->len < m->pos) m->len = m->pos; // if(ret < len) // fprintf(stderr, "write failed: %d < %d\n", ret, len); return len; } static int64_t seek_mem(void * priv, int64_t pos, int whence) { mem_t * m = priv; int64_t real_pos = 0; switch(whence) { case SEEK_SET: real_pos = pos; break; case SEEK_CUR: real_pos = m->pos + pos; break; case SEEK_END: real_pos = m->len + pos; break; } if(real_pos < 0) real_pos = 0; if(real_pos > m->len) real_pos = m->len; m->pos = real_pos; return m->pos; } static void close_mem(void * priv) { mem_t * m = priv; if(m->buf) free(m->buf); free(m); } GAVL_PUBLIC uint8_t * gavl_io_mem_get_buf(gavl_io_t * io, int * len) { uint8_t * ret; mem_t * m = io->priv; *len = m->len; ret = m->buf; /* Cleanup */ memset(m, 0, sizeof(*m)); return ret; } GAVL_PUBLIC gavl_io_t * gavl_io_create_mem_read(const uint8_t * ptr, int len) { mem_t * m = calloc(1, sizeof(*m)); m->buf_const = ptr; m->len = len; return gavl_io_create(read_mem, NULL, seek_mem, close_mem, NULL, GAVL_IO_CAN_READ | GAVL_IO_CAN_SEEK, m); } GAVL_PUBLIC gavl_io_t * gavl_io_create_mem_write() { mem_t * m = calloc(1, sizeof(*m)); return gavl_io_create(NULL, write_mem, seek_mem, close_mem, NULL, GAVL_IO_CAN_WRITE | GAVL_IO_CAN_SEEK, m); } bplaum-gavl-b9385e3/gavl/io_socket.c000066400000000000000000000124541513252040200173410ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include #include #include #include #include #include #define LOG_DOMAIN "io_socket" #include #include /* 10 kB */ #define BUFFER_SIZE 10240 typedef struct { int fd; int timeout; int flags; gavl_buffer_t buf; gavl_io_t * io; // Parent } socket_t; static void do_buffer(socket_t * s) { int len; if(!(s->flags & GAVL_IO_SOCKET_BUFFER_READ)) return; if(s->buf.len < BUFFER_SIZE) { len = gavl_socket_read_data_noblock(s->fd, s->buf.buf + s->buf.len, BUFFER_SIZE - s->buf.len); if(len > 0) { fprintf(stderr, "Buffering fd: %d len: %d\n", s->fd, len); s->buf.len += len; } } } static int do_read_socket(void * priv, uint8_t * data, int len, int block) { int err; int result; int bytes_to_read; int bytes_read = 0; socket_t * s = priv; // if(len > 1) // fprintf(stderr, "Read socket: %d %d %d\n", s->fd, len, s->buf.len); /* Take from buffer */ if(s->buf.len > 0) { /* Bytes to read */ bytes_to_read = len; if(bytes_to_read > s->buf.len) bytes_to_read = s->buf.len; /* memcpy */ memcpy(data + bytes_read, s->buf.buf, bytes_to_read); gavl_buffer_flush(&s->buf, bytes_to_read); len -= bytes_to_read; bytes_read += bytes_to_read; } if(!len) { do_buffer(s); // fprintf(stderr, "Read socket 1: %d\n", bytes_read); return bytes_read; } if(block) result = gavl_socket_read_data(s->fd, data + bytes_read, len, s->timeout); else result = gavl_socket_read_data_noblock(s->fd, data + bytes_read, len); if((result < 0) && ((err = errno) || (err = gavl_socket_get_errno(s->fd)))) { /* Non fatal errors are handled gracefully */ if((err == EINPROGRESS) || (err == EAGAIN) || (err == EWOULDBLOCK)) { if(result < 0) result = 0; } else { gavl_io_set_error(s->io); gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Got socket error while reading (block: %d, len: %d, result: %d): %s\n", block, len, result, strerror(err)); } } if(result <= 0) { // fprintf(stderr, "Read socket 2: %d\n", bytes_read); return bytes_read; } else bytes_read += result; do_buffer(s); return bytes_read; } static int read_socket(void * priv, uint8_t * data, int len) { return do_read_socket(priv, data, len, 1); } static int read_socket_nonblock(void * priv, uint8_t * data, int len) { return do_read_socket(priv, data, len, 0); } static int write_socket(void * priv, const uint8_t * data, int len) { socket_t * s = priv; return gavl_socket_write_data(s->fd, data, len); } static int write_socket_nonblock(void * priv, const uint8_t * data, int len) { socket_t * s = priv; return gavl_socket_write_data_nonblock(s->fd, data, len); } static void close_socket(void * priv) { socket_t * s = priv; gavl_buffer_free(&s->buf); if(s->flags & GAVL_IO_SOCKET_DO_CLOSE) gavl_socket_close(s->fd); free(s); } static int poll_socket(void * priv, int timeout, int wr) { socket_t * s = priv; if(wr) return gavl_fd_can_write(s->fd, timeout); if(s->buf.len > 0) return 1; else return gavl_fd_can_read(s->fd, timeout); } gavl_io_t * gavl_io_create_socket(int fd, int read_timeout, int socket_flags) { gavl_io_t * ret = NULL; int flags; socket_t * s = calloc(1, sizeof(*s)); s->flags = socket_flags; s->timeout = read_timeout; s->fd = fd; flags = GAVL_IO_CAN_READ | GAVL_IO_CAN_WRITE | GAVL_IO_IS_DUPLEX | GAVL_IO_IS_SOCKET; if(gavl_socket_is_local(fd)) flags |= GAVL_IO_IS_LOCAL; if(gavl_socket_is_unix(fd)) flags |= GAVL_IO_IS_UNIX_SOCKET; gavl_buffer_alloc(&s->buf, BUFFER_SIZE); ret = gavl_io_create(read_socket, write_socket, NULL, // seek close_socket, NULL, // flush flags, s); gavl_io_set_poll_func(ret, poll_socket); gavl_io_set_nonblock_read(ret, read_socket_nonblock); gavl_io_set_nonblock_write(ret, write_socket_nonblock); s->io = ret; return ret; } int gavl_io_get_socket(gavl_io_t * io) { socket_t * s = gavl_io_get_priv(io); return s->fd; } bplaum-gavl-b9385e3/gavl/io_stdio.c000066400000000000000000000077041513252040200171750ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include #include #include #include #include #include #include #include #include #define LOG_DOMAIN "io_stdio" #ifdef _WIN32 #define GAVL_FSEEK(a,b,c) fseeko64(a,b,c) #define GAVL_FTELL(a) ftello64(a) #else #ifdef HAVE_FSEEKO #define GAVL_FSEEK fseeko #else #define GAVL_FSEEK fseek #endif #ifdef HAVE_FTELLO #define GAVL_FTELL ftello #else #define GAVL_FTELL ftell #endif #endif static int read_file(void * priv, uint8_t * data, int len) { return fread(data, 1, len, (FILE*)priv); } static int write_file(void * priv, const uint8_t * data, int len) { return fwrite(data, 1, len, (FILE*)priv); } static int64_t seek_file(void * priv, int64_t pos, int whence) { if(feof(priv)) clearerr(priv); GAVL_FSEEK(priv, pos, whence); return GAVL_FTELL(priv); } static int flush_file(void * priv) { if(!fflush((FILE*)priv)) return 1; // fprintf(stderr, "flush failed\n"); return 0; } static int poll_file(void * priv, int timeout, int wr) { int fd; FILE * f = priv; fd = fileno(f); if(wr) return gavl_fd_can_write(fd, timeout); else return gavl_fd_can_read(fd, timeout); } static void close_file(void * priv) { fclose((FILE*)priv); } GAVL_PUBLIC gavl_io_t * gavl_io_create_file(FILE * f, int wr, int can_seek, int close) { gavl_read_func rf; gavl_write_func wf; gavl_seek_func sf; gavl_flush_func ff; int flags = 0; struct stat st; int fd = fileno(f); gavl_io_t * ret; if(isatty(fd)) flags |= GAVL_IO_IS_TTY; if(wr) flags |= GAVL_IO_CAN_WRITE; else flags |= GAVL_IO_CAN_READ; if(fstat(fd, &st)) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Cannot stat file"); return NULL; } if(S_ISFIFO(st.st_mode)) /* Pipe: Use local connection */ { flags |= (GAVL_IO_IS_LOCAL|GAVL_IO_IS_PIPE); } else if(S_ISREG(st.st_mode) && can_seek) { flags |= GAVL_IO_IS_REGULAR; } if(!(flags & GAVL_IO_IS_REGULAR)) can_seek = 0; if(wr) { wf = write_file; rf = NULL; ff = flush_file; } else { wf = NULL; rf = read_file; ff = NULL; } if(can_seek) { sf = seek_file; flags |= GAVL_IO_CAN_SEEK; } else sf = NULL; ret = gavl_io_create(rf, wf, sf, close ? close_file : NULL, ff, flags, f); gavl_io_set_poll_func(ret, poll_file); gavl_io_set_info(ret, st.st_size, NULL, NULL, flags); return ret; } gavl_io_t * gavl_io_from_filename(const char * filename, int wr) { FILE * f; if(wr) { if(!(f = fopen(filename, "w"))) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Cannot open %s for writing: %s", filename, strerror(errno)); return NULL; } } else { if(!(f = fopen(filename, "r"))) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Cannot open %s for reading: %s", filename, strerror(errno)); return NULL; } } return gavl_io_create_file(f, wr, 1, 1); } bplaum-gavl-b9385e3/gavl/io_tls.c000066400000000000000000000336321513252040200166540ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include #include #include #include #include #include #include #include #include #include #include /* Global initialization */ static int tls_initialized = 0; static pthread_mutex_t initialized_mutex = PTHREAD_MUTEX_INITIALIZER; static gnutls_certificate_credentials_t xcred; #define LOG_DOMAIN "tls" // #define BUFFER_SIZE 10240 static void tls_global_init() { pthread_mutex_lock(&initialized_mutex); if(tls_initialized) { pthread_mutex_unlock(&initialized_mutex); return; } if(gnutls_global_init() < 0) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "gnutls_global_init failed"); return; } if(gnutls_certificate_allocate_credentials(&xcred) < 0) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "gnutls_certificate_allocate_credentials failed"); return; } if(gnutls_certificate_set_x509_system_trust(xcred) < 0) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "gnutls_certificate_set_x509_system_trust failed"); return; } tls_initialized = 1; pthread_mutex_unlock(&initialized_mutex); } #if defined(__GNUC__) static void cleanup_tls() __attribute__ ((destructor)); static void cleanup_tls() { pthread_mutex_lock(&initialized_mutex); if(!tls_initialized) { pthread_mutex_unlock(&initialized_mutex); return; } gnutls_certificate_free_credentials(xcred); gnutls_global_deinit(); pthread_mutex_unlock(&initialized_mutex); } #endif #define WAIT_STATE_NONE 0 #define WAIT_STATE_READ 1 #define WAIT_STATE_WRITE 2 typedef struct { int fd; gnutls_session_t session; gavl_buffer_t read_buffer; gavl_buffer_t write_buffer; char * server_name; int flags; int wait_state; int buffer_size; gavl_timer_t * timer; } tls_t; static int do_wait(tls_t * p, int timeout) { if(timeout > 0) { switch(p->wait_state) { case WAIT_STATE_NONE: break; case WAIT_STATE_READ: if(!gavl_fd_can_read(p->fd, timeout)) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Read timeout (%d ms) exceeded", timeout); return 0; } break; case WAIT_STATE_WRITE: if(!gavl_fd_can_write(p->fd, timeout)) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Write timeout (%d ms) exceeded", timeout); return 0; } break; } } return 1; } static int do_flush(void * priv, int block) { tls_t * p = priv; // fprintf(stderr, "flush_tls\n"); // gavl_hexdump(p->write_buffer.buf, p->write_buffer.len, 16); // if(!p->write_buffer.len) // return 1; while(p->write_buffer.pos < p->write_buffer.len) { ssize_t result; do { result = gnutls_record_send(p->session, p->write_buffer.buf + p->write_buffer.pos, p->write_buffer.len - p->write_buffer.pos); if((result == GNUTLS_E_AGAIN)) { p->wait_state = 1 + gnutls_record_get_direction(p->session); if(!block || !do_wait(p, 3000)) break; } } while((result == GNUTLS_E_AGAIN) || (result == GNUTLS_E_INTERRUPTED)); if(result < 0) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "gnutls_record_send failed: %s", gnutls_strerror(result)); } if(!result) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "gnutls_record_send returned zero"); } if(result <= 0) return 0; if(result > 0) { p->write_buffer.pos += result; p->wait_state = WAIT_STATE_NONE; } } if(p->write_buffer.pos == p->write_buffer.len) gavl_buffer_reset(&p->write_buffer); return 1; } static int flush_tls(void * priv) { return do_flush(priv, 1); } static int read_record(tls_t * p, int timeout_init) { ssize_t result; int timeout; int bytes_to_read; timeout = timeout_init; if(!do_flush(p, !!timeout)) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Cannot read TLS record: Flushing failed"); return 0; } bytes_to_read = p->buffer_size; gavl_timer_set(p->timer, 0); gavl_timer_start(p->timer); do { result = gnutls_record_recv(p->session, p->read_buffer.buf, bytes_to_read); if(!result) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "gnutls_record_recv returned zero (EOF)"); } if((result == GNUTLS_E_AGAIN)) { p->wait_state = 1 + gnutls_record_get_direction(p->session); if(!timeout || !do_wait(p, timeout)) { if(timeout_init > 0) gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "gnutls_record_recv: Timeout (%d ms) expired", timeout_init); break; } } timeout = timeout_init - gavl_timer_get(p->timer) / 1000; if(timeout < 0) timeout = 0; } while((result == GNUTLS_E_AGAIN) || (result == GNUTLS_E_INTERRUPTED)); gavl_timer_stop(p->timer); if((result < 0) && gnutls_error_is_fatal(result) && (result != GNUTLS_E_PREMATURE_TERMINATION)) gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Reading TLS record failed: %s (timeout was %d ms)", gnutls_strerror(result), timeout); if(result > 0) { p->read_buffer.len = result; p->read_buffer.pos = 0; p->wait_state = WAIT_STATE_NONE; return 1; } return 0; } static int do_read_tls(void * priv, uint8_t * data, int len, int block) { tls_t * p = priv; int bytes_read = 0; int bytes_to_read; while(bytes_read < len) { if(p->read_buffer.pos >= p->read_buffer.len) { if(!read_record(p, block ? 3000 : 0)) { if(block) gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Reading TLS record failed"); break; } } bytes_to_read = len - bytes_read; if(bytes_to_read > p->read_buffer.len - p->read_buffer.pos) { bytes_to_read = p->read_buffer.len - p->read_buffer.pos; } memcpy(data + bytes_read, p->read_buffer.buf + p->read_buffer.pos, bytes_to_read); bytes_read += bytes_to_read; p->read_buffer.pos += bytes_to_read; } #if 0 if((bytes_read < len) && block) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "do_read_tls requested: %d got %d", len, bytes_read); } #endif return bytes_read; } static int read_tls(void * priv, uint8_t * data, int len) { return do_read_tls(priv, data, len, 1); } static int read_nonblock_tls(void * priv, uint8_t * data, int len) { return do_read_tls(priv, data, len, 0); } static int do_write(void * priv, const uint8_t * data, int len, int block) { int bytes_to_copy; int bytes_sent = 0; tls_t * p = priv; while(bytes_sent < len) { if(p->write_buffer.len == p->buffer_size) { if(!do_flush(priv, block)) { fprintf(stderr, "Flushing data failed\n"); return -1; } if(p->write_buffer.len == p->buffer_size) { if(!bytes_sent && !block) fprintf(stderr, "write_nonblock returned 0 [1] buffer_size: %d wait_state: %d\n", p->buffer_size, p->wait_state); return bytes_sent; } } bytes_to_copy = len - bytes_sent; if(bytes_to_copy > p->buffer_size - p->write_buffer.len) { bytes_to_copy = p->buffer_size - p->write_buffer.len; } memcpy(p->write_buffer.buf + p->write_buffer.len, data + bytes_sent, bytes_to_copy); p->write_buffer.len += bytes_to_copy; bytes_sent += bytes_to_copy; } if(!bytes_sent && !block) fprintf(stderr, "write_nonblock returned 0 [2]\n"); return bytes_sent; } static int write_tls(void * priv, const uint8_t * data, int len) { return do_write(priv, data, len, 1); } static int write_nonblock_tls(void * priv, const uint8_t * data, int len) { return do_write(priv, data, len, 0); } // static int64_t (*gavf_seek_func)(void * priv, int64_t pos, int whence); static void close_tls(void * priv) { tls_t * p = priv; gnutls_bye(p->session, GNUTLS_SHUT_WR); gnutls_deinit(p->session); gavl_buffer_free(&p->read_buffer); gavl_buffer_free(&p->write_buffer); if(p->server_name) free(p->server_name); if(p->flags & GAVL_IO_SOCKET_DO_CLOSE) gavl_socket_close(p->fd); if(p->timer) gavl_timer_destroy(p->timer); free(p); } static int poll_tls(void * priv, int timeout, int wr) { tls_t * p = priv; if(wr) { do_flush(p, 0); if(p->write_buffer.len < p->buffer_size) return 1; if((timeout > 0) && gavl_fd_can_write(p->fd, timeout)) { do_flush(p, 0); if(p->write_buffer.len < p->buffer_size) return 1; } return 0; } else { do_flush(p, 0); /* Check if we have buffered data */ if(p->read_buffer.len > p->read_buffer.pos) return 1; /* Check if TLS has buffered data */ if(gnutls_record_check_pending(p->session) > 0) return 1; if(read_record(p, timeout) > 0) return 1; return gavl_fd_can_read(p->fd, timeout); } } gavl_io_t * gavl_io_create_tls_client_async(int fd, const char * server_name, int socket_flags) { tls_t * p; // int result; gavl_io_t * io; int flags = GAVL_IO_CAN_READ | GAVL_IO_CAN_WRITE | GAVL_IO_IS_DUPLEX | GAVL_IO_IS_SOCKET; tls_global_init(); p = calloc(1, sizeof(*p)); p->flags = socket_flags; p->fd = fd; p->timer = gavl_timer_create(); gavl_fd_set_block(p->fd, 0); gavl_log(GAVL_LOG_DEBUG, LOG_DOMAIN, "Establishing TLS connection with %s", server_name); p->server_name = gavl_strdup(server_name); gnutls_init(&p->session, GNUTLS_CLIENT | GNUTLS_NONBLOCK); gnutls_server_name_set(p->session, GNUTLS_NAME_DNS, server_name, strlen(server_name)); gnutls_set_default_priority(p->session); gnutls_credentials_set(p->session, GNUTLS_CRD_CERTIFICATE, xcred); // gnutls_session_set_verify_cert(p->session, server_name, 0); gnutls_transport_set_int(p->session, fd); // gnutls_handshake_set_timeout(p->session, // GNUTLS_DEFAULT_HANDSHAKE_TIMEOUT); io = gavl_io_create(read_tls, write_tls, NULL, close_tls, flush_tls, flags, p); gavl_io_set_nonblock_read(io, read_nonblock_tls); gavl_io_set_nonblock_write(io, write_nonblock_tls); gavl_io_set_poll_func(io, poll_tls); return io; } int gavl_io_create_tls_client_async_done(gavl_io_t * io, int timeout) { int result; tls_t * p = io->priv; while(1) { if(!do_wait(p, timeout)) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "gavl_io_create_tls_client_async: Got timeout"); return 0; } result = gnutls_handshake(p->session); // while(result < 0 && gnutls_error_is_fatal(result) == 0); if(result < 0) { if(gnutls_error_is_fatal(result)) { if(result == GNUTLS_E_CERTIFICATE_VERIFICATION_ERROR) { gnutls_datum_t out; unsigned status; /* check certificate verification status */ int type = gnutls_certificate_type_get(p->session); status = gnutls_session_get_verify_cert_status(p->session); gnutls_certificate_verification_status_print(status, type, &out, 0); gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Server certificate verification failed: %s", out.data); gnutls_free(out.data); } gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "TLS Handshake failed: %s", gnutls_strerror(result)); return -1; } else { /* Non-fatal: Try again */ if(result == GNUTLS_E_AGAIN) { p->wait_state = 1 + gnutls_record_get_direction(p->session); if(timeout <= 0) return 0; } /* Try again with waiting */ } } else { char * desc = gnutls_session_get_desc(p->session); gavl_log(GAVL_LOG_DEBUG, LOG_DOMAIN, "Established TLS connection: %s", desc); gnutls_free(desc); p->buffer_size = gnutls_record_get_max_size(p->session); gavl_buffer_alloc(&p->read_buffer, p->buffer_size); gavl_buffer_alloc(&p->write_buffer, p->buffer_size); p->wait_state = WAIT_STATE_NONE; return 1; } } } gavl_io_t * gavl_io_create_tls_client(int fd, const char * server_name, int socket_flags) { gavl_io_t * io; int ret = 0; int result; io = gavl_io_create_tls_client_async(fd, server_name, socket_flags); while(1) { result = gavl_io_create_tls_client_async_done(io, 3000); if(result == 1) break; else if(result < 0) goto fail; else { fprintf(stderr, "gavl_io_create_tls_client_async_done failed %d\n", result); goto fail; } } ret = 1; fail: if(!ret) { gavl_io_destroy(io); return NULL; } else return io; } bplaum-gavl-b9385e3/gavl/language.c000066400000000000000000000052611513252040200171430ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include #include #include #include static const char * find_by_code(const char * code, const char ** label) { char code_str[4]; int i; if((code[0] == '\0') || (code[1] == '\0')) return NULL; code_str[0] = tolower(code[0]); code_str[1] = tolower(code[1]); if(code[2] == '\0') { /* 2 digit code */ code_str[2] = '\0'; for(i = 0; i < sizeof(languages)/sizeof(languages[0]); i++) { if(languages[i].ISO_639_1 && !strcmp(code_str, languages[i].ISO_639_1)) { if(label) *label = languages[i].label; return languages[i].ISO_639_2_B; } } return NULL; } if(code[3] == '\0') { /* 3 digit code */ code_str[2] = tolower(code[2]); code_str[3] = '\0'; for(i = 0; i < sizeof(languages)/sizeof(languages[0]); i++) { if(!strcmp(code_str, languages[i].ISO_639_2_B) || (languages[i].ISO_639_2_T && !strcmp(code_str, languages[i].ISO_639_2_T))) { if(label) *label = languages[i].label; return languages[i].ISO_639_2_B; } } return NULL; } else return NULL; } const char * gavl_language_get_iso639_2_b_from_code(const char * code) { return find_by_code(code, NULL); } const char * gavl_language_get_iso639_2_b_from_label(const char * label) { int i; for(i = 0; i < sizeof(languages)/sizeof(languages[0]); i++) { if(!strcasecmp(label, languages[i].label)) return languages[i].ISO_639_2_B; } return NULL; } const char * gavl_language_get_label_from_code(const char * code) { const char * label = NULL; find_by_code(code, &label); return label; } bplaum-gavl-b9385e3/gavl/libgdither/000077500000000000000000000000001513252040200173255ustar00rootroot00000000000000bplaum-gavl-b9385e3/gavl/libgdither/Makefile.am000066400000000000000000000002721513252040200213620ustar00rootroot00000000000000AM_CFLAGS = @LIBGAVL_CFLAGS@ noinst_LTLIBRARIES = libgdither.la libgdither_la_SOURCES = gdither.c noinst_HEADERS = \ gdither.h \ gdither_types.h \ gdither_types_internal.h \ noise.h bplaum-gavl-b9385e3/gavl/libgdither/gdither.c000066400000000000000000000324001513252040200211160ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ /* This file was taken from libgdither, original copyright below */ /* * Copyright (C) 2002 Steve Harris * * 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., 675 Mass Ave, Cambridge, MA 02139, USA. * * $Id: gdither.c,v 1.5 2009-05-03 21:39:35 gmerlin Exp $ */ #include "gdither_types_internal.h" #include "gdither.h" #include "noise.h" /* this monstrosity is necessary to get access to lrintf() and random(). whoever is writing the glibc headers and should be hauled off to a programmer re-education camp. for the rest of their natural lives. or longer. */ #define _ISOC9X_SOURCE 1 #define _ISOC99_SOURCE 1 #ifdef __cplusplus #include #else #include #endif #undef __USE_SVID #define __USE_SVID 1 #ifdef __cplusplus #include #else #include #endif /* and even then sometimes it doesn't work... */ long lrintf(float); #include /* Lipshitz's minimally audible FIR, only really works for 46kHz-ish signals */ static const float shaped_bs[] = { 2.033f, -2.165f, 1.959f, -1.590f, 0.6149f }; // 2nd order: static const float shaped_bs[] = { 1.652f, -1.049, 0.1382 }; /* Some useful constants */ #define MAX_U8 255 #define MIN_U8 0 #define SCALE_U8 128.0f #define MAX_S16 32767 #define MIN_S16 -32768 #define SCALE_S16 32768.0f #define MAX_S24 8388607 #define MIN_S24 -8388608 #define SCALE_S24 8388608.0f GDither gdither_new(GDitherType type, unsigned int channels, GDitherSize bit_depth, int dither_depth) { GDither s; s = (GDither)calloc(1, sizeof(struct GDither_s)); s->type = type; s->channels = channels; s->bit_depth = (int)bit_depth; if (dither_depth <= 0 || dither_depth > (int)bit_depth) { dither_depth = (int)bit_depth; } s->dither_depth = dither_depth; s->scale = (float)(1LL << (dither_depth - 1)); if (bit_depth == GDitherFloat || bit_depth == GDitherDouble) { s->post_scale_fp = 1.0f / s->scale; s->post_scale = 0; } else { s->post_scale_fp = 0.0f; s->post_scale = 1 << ((int)bit_depth - dither_depth); } switch (bit_depth) { case GDither8bit: /* Unsigned 8 bit */ s->bias = 1.0f; s->clamp_u = 255; s->clamp_l = 0; break; case GDither16bit: /* Signed 16 bit */ s->bias = 0.0f; s->clamp_u = 32767; s->clamp_l = -32768; break; case GDither32bit: /* Signed 24 bit, in upper 24 bits of 32 bit word */ s->bias = 0.0f; s->clamp_u = 8388607; s->clamp_l = -8388608; break; case GDitherFloat: /* normalised float */ s->bias = 0.0f; s->clamp_u = lrintf(s->scale); s->clamp_l = lrintf(-s->scale); break; case GDitherDouble: /* normalised float */ s->bias = 0.0f; s->clamp_u = lrintf(s->scale); s->clamp_l = lrintf(-s->scale); break; #if 0 case 23: /* special performance test case */ s->scale = SCALE_S24; s->post_scale = 256; s->bias = 0.0f; s->clamp_u = 8388607; s->clamp_l = -8388608; break; #endif default: /* Not a bit depth we can handle */ free(s); return NULL; break; } switch (type) { case GDitherNone: case GDitherRect: /* No state */ break; case GDitherTri: /* The last whitenoise sample */ s->tri_state = (float *) calloc(channels, sizeof(float)); break; case GDitherShaped: /* The error from the last few samples encoded */ s->shaped_state = (GDitherShapedState*) calloc(channels, sizeof(GDitherShapedState)); break; } return s; } void gdither_free(GDither s) { if (s) { free(s->tri_state); free(s->shaped_state); free(s); } } inline static void gdither_innner_loop(const GDitherType dt, const unsigned int stride, const float bias, const float scale, const unsigned int post_scale, const int bit_depth, const unsigned int channel, const unsigned int length, float *ts, GDitherShapedState *ss, float *x, void *y, const int clamp_u, const int clamp_l) { unsigned int pos, i; uint8_t *o8 = (uint8_t*) y; int16_t *o16 = (int16_t*) y; int32_t *o32 = (int32_t*) y; float tmp, r, ideal; int64_t clamped; i = channel; for (pos = 0; pos < length; pos++, i += stride) { tmp = x[pos] * scale + bias; switch (dt) { case GDitherNone: break; case GDitherRect: tmp -= GDITHER_NOISE; break; case GDitherTri: r = GDITHER_NOISE - 0.5f; tmp -= r - ts[channel]; ts[channel] = r; break; case GDitherShaped: /* Save raw value for error calculations */ ideal = tmp; /* Run FIR and add white noise */ ss->buffer[ss->phase] = GDITHER_NOISE * 0.5f; tmp += ss->buffer[ss->phase] * shaped_bs[0] + ss->buffer[(ss->phase - 1) & GDITHER_SH_BUF_MASK] * shaped_bs[1] + ss->buffer[(ss->phase - 2) & GDITHER_SH_BUF_MASK] * shaped_bs[2] + ss->buffer[(ss->phase - 3) & GDITHER_SH_BUF_MASK] * shaped_bs[3] + ss->buffer[(ss->phase - 4) & GDITHER_SH_BUF_MASK] * shaped_bs[4]; /* Roll buffer and store last error */ ss->phase = (ss->phase + 1) & GDITHER_SH_BUF_MASK; ss->buffer[ss->phase] = (float)lrintf(tmp) - ideal; break; } clamped = lrintf(tmp); if (clamped > clamp_u) { clamped = clamp_u; } else if (clamped < clamp_l) { clamped = clamp_l; } switch (bit_depth) { case GDither8bit: o8[i] = (uint8_t) (clamped * post_scale); break; case GDither16bit: o16[i] = (int16_t) (clamped * post_scale); break; case GDither32bit: o32[i] = (int32_t) (clamped * post_scale); break; } } } /* floating pint version of the inner loop function */ inline static void gdither_innner_loop_fp(const GDitherType dt, const unsigned int stride, const float bias, const float scale, const float post_scale, const int bit_depth, const unsigned int channel, const unsigned int length, float *ts, GDitherShapedState *ss, float *x, void *y, const int clamp_u, const int clamp_l) { unsigned int pos, i; float *oflt = (float*) y; double *odbl = (double*) y; float tmp, r, ideal; double clamped; i = channel; for (pos = 0; pos < length; pos++, i += stride) { tmp = x[i] * scale + bias; switch (dt) { case GDitherNone: break; case GDitherRect: tmp -= GDITHER_NOISE; break; case GDitherTri: r = GDITHER_NOISE - 0.5f; tmp -= r - ts[channel]; ts[channel] = r; break; case GDitherShaped: /* Save raw value for error calculations */ ideal = tmp; /* Run FIR and add white noise */ ss->buffer[ss->phase] = GDITHER_NOISE * 0.5f; tmp += ss->buffer[ss->phase] * shaped_bs[0] + ss->buffer[(ss->phase - 1) & GDITHER_SH_BUF_MASK] * shaped_bs[1] + ss->buffer[(ss->phase - 2) & GDITHER_SH_BUF_MASK] * shaped_bs[2] + ss->buffer[(ss->phase - 3) & GDITHER_SH_BUF_MASK] * shaped_bs[3] + ss->buffer[(ss->phase - 4) & GDITHER_SH_BUF_MASK] * shaped_bs[4]; /* Roll buffer and store last error */ ss->phase = (ss->phase + 1) & GDITHER_SH_BUF_MASK; ss->buffer[ss->phase] = (float)lrintf(tmp) - ideal; break; } clamped = rintf(tmp); if (clamped > clamp_u) { clamped = clamp_u; } else if (clamped < clamp_l) { clamped = clamp_l; } switch (bit_depth) { case GDitherFloat: oflt[i] = (float) (clamped * post_scale); break; case GDitherDouble: odbl[i] = (double) (clamped * post_scale); break; } } } #define GDITHER_CONV_BLOCK 512 void gdither_run(GDither s, unsigned int channel, unsigned int length, double *x, void *y) { float conv[GDITHER_CONV_BLOCK]; unsigned int i, pos; char *ycast = (char *)y; int step; switch (s->bit_depth) { case GDither8bit: step = 1; break; case GDither16bit: step = 2; break; case GDither32bit: case GDitherFloat: step = 4; break; case GDitherDouble: step = 8; break; default: step = 0; break; } pos = 0; while (pos < length) { for (i=0; (i + pos) < length && i < GDITHER_CONV_BLOCK; i++) { conv[i] = x[pos + i]; } gdither_runf(s, channel, i, conv, ycast + pos * step); pos += i; } } void gdither_runf(GDither s, unsigned int channel, unsigned int length, float *x, void *y) { unsigned int pos, i; float tmp; int64_t clamped; GDitherShapedState *ss = NULL; if (!s || channel >= s->channels) { return; } if (s->shaped_state) { ss = s->shaped_state + channel; } if (s->type == GDitherNone && s->bit_depth == 23) { int32_t *o32 = (int32_t*) y; for (pos = 0; pos < length; pos++) { i = channel + (pos * s->channels); tmp = x[i] * 8388608.0f; clamped = lrintf(tmp); if (clamped > 8388607) { clamped = 8388607; } else if (clamped < -8388608) { clamped = -8388608; } o32[i] = (int32_t) (clamped * 256); } return; } /* some common case handling code - looks a bit weird, but it allows * the compiler to optiomise out the branches in the inner loop */ if (s->bit_depth == 8 && s->dither_depth == 8) { switch (s->type) { case GDitherNone: gdither_innner_loop(GDitherNone, s->channels, 128.0f, SCALE_U8, 1, 8, channel, length, NULL, NULL, x, y, MAX_U8, MIN_U8); break; case GDitherRect: gdither_innner_loop(GDitherRect, s->channels, 128.0f, SCALE_U8, 1, 8, channel, length, NULL, NULL, x, y, MAX_U8, MIN_U8); break; case GDitherTri: gdither_innner_loop(GDitherTri, s->channels, 128.0f, SCALE_U8, 1, 8, channel, length, s->tri_state, NULL, x, y, MAX_U8, MIN_U8); break; case GDitherShaped: gdither_innner_loop(GDitherShaped, s->channels, 128.0f, SCALE_U8, 1, 8, channel, length, NULL, ss, x, y, MAX_U8, MIN_U8); break; } } else if (s->bit_depth == 16 && s->dither_depth == 16) { switch (s->type) { case GDitherNone: gdither_innner_loop(GDitherNone, s->channels, 0.0f, SCALE_S16, 1, 16, channel, length, NULL, NULL, x, y, MAX_S16, MIN_S16); break; case GDitherRect: gdither_innner_loop(GDitherRect, s->channels, 0.0f, SCALE_S16, 1, 16, channel, length, NULL, NULL, x, y, MAX_S16, MIN_S16); break; case GDitherTri: gdither_innner_loop(GDitherTri, s->channels, 0.0f, SCALE_S16, 1, 16, channel, length, s->tri_state, NULL, x, y, MAX_S16, MIN_S16); break; case GDitherShaped: gdither_innner_loop(GDitherShaped, s->channels, 0.0f, SCALE_S16, 1, 16, channel, length, NULL, ss, x, y, MAX_S16, MIN_S16); break; } } else if (s->bit_depth == 32 && s->dither_depth == 24) { switch (s->type) { case GDitherNone: gdither_innner_loop(GDitherNone, s->channels, 0.0f, SCALE_S24, 256, 32, channel, length, NULL, NULL, x, y, MAX_S24, MIN_S24); break; case GDitherRect: gdither_innner_loop(GDitherRect, s->channels, 0.0f, SCALE_S24, 256, 32, channel, length, NULL, NULL, x, y, MAX_S24, MIN_S24); break; case GDitherTri: gdither_innner_loop(GDitherTri, s->channels, 0.0f, SCALE_S24, 256, 32, channel, length, s->tri_state, NULL, x, y, MAX_S24, MIN_S24); break; case GDitherShaped: gdither_innner_loop(GDitherShaped, s->channels, 0.0f, SCALE_S24, 256, 32, channel, length, NULL, ss, x, y, MAX_S24, MIN_S24); break; } } else if (s->bit_depth == GDitherFloat || s->bit_depth == GDitherDouble) { gdither_innner_loop_fp(s->type, s->channels, s->bias, s->scale, s->post_scale_fp, s->bit_depth, channel, length, s->tri_state, ss, x, y, s->clamp_u, s->clamp_l); } else { /* no special case handling, just process it from the struct */ gdither_innner_loop(s->type, s->channels, s->bias, s->scale, s->post_scale, s->bit_depth, channel, length, s->tri_state, ss, x, y, s->clamp_u, s->clamp_l); } } /* vi:set ts=8 sts=4 sw=4: */ bplaum-gavl-b9385e3/gavl/libgdither/gdither.h000066400000000000000000000105601513252040200211260ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ /* This file was taken from libgdither, original copyright below */ /* * Copyright (C) 2002 Steve Harris * * 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., 675 Mass Ave, Cambridge, MA 02139, USA. * * $Id: gdither.h,v 1.2 2007-11-15 21:20:42 gmerlin Exp $ */ #ifndef GDITHER_H #define GDITHER_H #ifdef __cplusplus extern "C" { #endif #include "gdither_types.h" /* Create and initialise a state structure, takes a dither type, a number of * channels and a bit depth as input * * The Dither type is one of * * GDitherNone - straight nearest neighbour rounding. There's no pressing * reason to do this at 8 or 16 bit, but you might want to at 24, for some * reason. At the lest it will save you writing int->float conversion code, * which is arder than it sounds. * * GDitherRect - mathematically most accurate, lowest noise floor, but not * that good for audio. It is the fastest though. * * GDitherTri - a happy medium between Rectangular and Shaped, reasonable * noise floor, not too obvious, quite fast. * * GDitherShaped - should have the least audible impact, but has the highest * noise floor, fairly CPU intensive. Not advisible if your going to apply * any frequency manipulation afterwards. * * channels, sets the number of channels in the output data, output data will * be written interleaved into the area given to gdither_run(). Set to 1 * if you are not working with interleaved buffers. * * bit depth, sets the bit width of the output sample data, it can be one of: * * GDither8bit - 8 bit unsigned * GDither16bit - 16 bit signed * GDither32bit - 24+bits in upper bits of a 32 bit word * GDitherFloat - IEEE floating point (32bits) * GDitherDouble - Double precision IEEE floating point (64bits) * * dither_depth, set the number of bits before the signal will be truncated to, * eg. 16 will produce an output stream with 16bits-worth of signal. Setting to * zero or greater than the width of the output format will dither to the * maximum precision allowed by the output format. */ GDither gdither_new(GDitherType type, unsigned int channels, GDitherSize bit_depth, int dither_depth); /* Frees memory used by gdither_new. */ void gdither_free(GDither s); /* Applies dithering to the supplied signal. * * channel is the channel number you are processing (0 - channles-1), length is * the length of the input, in samples, x is the input samples (float), y is * where the output samples will be written, it should have the approaprate * type for the chosen bit depth */ void gdither_runf(GDither s, unsigned int channel, unsigned int length, float *x, void *y); /* see gdither_runf, vut input argument is double format */ void gdither_run(GDither s, unsigned int channel, unsigned int length, double *x, void *y); #ifdef __cplusplus } #endif #endif bplaum-gavl-b9385e3/gavl/libgdither/gdither_types.h000066400000000000000000000043101513252040200223460ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ /* This file was taken from libgdither, original copyright below */ /* * Copyright (C) 2002 Steve Harris * * 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., 675 Mass Ave, Cambridge, MA 02139, USA. * * $Id: gdither_types.h,v 1.2 2007-11-15 21:20:42 gmerlin Exp $ */ #ifndef GDITHER_TYPES_H #define GDITHER_TYPES_H #ifdef __cplusplus extern "C" { #endif typedef enum { GDitherNone = 0, GDitherRect, GDitherTri, GDitherShaped } GDitherType; typedef enum { GDither8bit = 8, GDither16bit = 16, GDither32bit = 32, GDitherFloat = 25, GDitherDouble = 54 } GDitherSize; typedef void *GDither; #ifdef __cplusplus } #endif #endif bplaum-gavl-b9385e3/gavl/libgdither/gdither_types_internal.h000066400000000000000000000053401513252040200242460ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ /* This file was taken from libgdither, original copyright below */ /* * Copyright (C) 2002 Steve Harris * * 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., 675 Mass Ave, Cambridge, MA 02139, USA. * * $Id: gdither_types_internal.h,v 1.2 2007-11-15 21:20:42 gmerlin Exp $ */ #ifndef GDITHER_TYPES_H #define GDITHER_TYPES_H #ifdef __cplusplus extern "C" { #endif #define GDITHER_SH_BUF_SIZE 8 #define GDITHER_SH_BUF_MASK 7 /* this must agree with what's in gdither_types.h */ typedef enum { GDitherNone = 0, GDitherRect, GDitherTri, GDitherShaped } GDitherType; typedef enum { GDither8bit = 8, GDither16bit = 16, GDither32bit = 32, GDitherFloat = 25, GDitherDouble = 54 } GDitherSize; typedef struct { unsigned int phase; float buffer[GDITHER_SH_BUF_SIZE]; } GDitherShapedState; typedef struct GDither_s { GDitherType type; unsigned int channels; unsigned int bit_depth; unsigned int dither_depth; float scale; unsigned int post_scale; float post_scale_fp; float bias; int clamp_u; int clamp_l; float *tri_state; GDitherShapedState *shaped_state; } *GDither; #ifdef __cplusplus } #endif #endif bplaum-gavl-b9385e3/gavl/libgdither/noise.h000066400000000000000000000026761513252040200206260ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ /* This file was taken from libgdither, original copyright below */ #ifndef NOISE_H #define NOISE_H /* Can be overridden with any code that produces whitenoise between 0.0f and * 1.0f, eg (random() / (float)RAND_MAX) should be a good source of noise, but * its expensive */ #ifndef GDITHER_NOISE #define GDITHER_NOISE gdither_noise() #endif #include inline static float gdither_noise() { static uint32_t rnd = 23232323; rnd = (rnd * 196314165) + 907633515; return rnd * 2.3283064365387e-10f; } #endif bplaum-gavl-b9385e3/gavl/libsamplerate/000077500000000000000000000000001513252040200200345ustar00rootroot00000000000000bplaum-gavl-b9385e3/gavl/libsamplerate/Makefile.am000066400000000000000000000020021513252040200220620ustar00rootroot00000000000000# This file was automatically generated from the Makefile.am # DO NOT EDIT! AM_CFLAGS = @LIBGAVL_CFLAGS@ noinst_LTLIBRARIES = libsamplerate.la EXTRA_DIST = CLEANFILES = src_sinc.s COEFF_HDRS = high_qual_coeffs.h mid_qual_coeffs.h fastest_coeffs.h noinst_HEADERS = common.h float_cast.h $(COEFF_HDRS) SRC_SOURCES = samplerate.c src_sinc.c $(COEFF_HDRS) src_zoh.c src_linear.c libsamplerate_la_SOURCES = $(SRC_SOURCES) $(noinst_HEADERS) libsamplerate_la_LDFLAGS = libsamplerate_la_LIBADD = -lm #------------------------------------------------------------------------------- # An extra check for bad asm. check-asm : check_asm.sh src_sinc.s @echo @echo $(srcdir)/check_asm.sh src_sinc.s @echo @echo src_sinc.s : $(srcdir)/src_sinc.c $(CC) -S $(CFLAGS) $(DEFAULT_INCLUDES) $(srcdir)/src_sinc.c -o src_sinc.s ## Do not edit or modify anything in this comment block. ## The arch-tag line is a file identity tag for the GNU Arch ## revision control system. ## ## arch-tag: 62db1d8d-493b-4874-afb0-e421d3dbb868 bplaum-gavl-b9385e3/gavl/libsamplerate/Version_script.in000066400000000000000000000013661513252040200234030ustar00rootroot00000000000000# # Export file for libsamplerate # # Only the symbols listed in the global section will be callable from # applications linking to libsamplerate. # @PACKAGE@.so.0.0 { global: src_new ; src_delete ; src_get_name ; src_get_description ; src_get_version ; src_process ; src_reset ; src_error ; src_strerror ; src_simple ; src_is_valid_ratio ; src_set_ratio ; local: *; }; @PACKAGE@.so.0.1 { global: src_new ; src_delete ; src_get_name ; src_get_description ; src_get_version ; src_process ; src_reset ; src_error ; src_strerror ; src_simple ; src_is_valid_ratio ; src_set_ratio ; src_callback_new ; src_callback_read ; src_short_to_float_array ; src_float_to_short_array ; local: *; }; bplaum-gavl-b9385e3/gavl/libsamplerate/check_asm.sh000077500000000000000000000032001513252040200223030ustar00rootroot00000000000000#!/bin/sh # Copyright (C) 2004 Erik de Castro Lopo # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA. #======================================================================= # This short test script compiles the file src_sinc.c into assembler # output and the greps the assembler output for the fldcw (FPU Load # Control Word) instruction which is very detrimental to the performance # of floating point code. echo -n " Checking assembler output for bad code : " if [ $# -ne 1 ]; then echo "Error : Need the name of the input file." exit 1 fi filename=$1 if [ ! -f $filename ];then echo "Error : Can't find file $filename." exit 1 fi count=`grep fldcw $filename | wc -l` if [ $count -gt 0 ]; then echo -e "\n\nError : found $count bad instructions.\n\n" exit 1 fi echo "ok" # Do not edit or modify anything in this comment block. # The arch-tag line is a file identity tag for the GNU Arch # revision control system. # # arch-tag: 538c7cfe-6119-475c-b08e-ba3fef84e9e2 bplaum-gavl-b9385e3/gavl/libsamplerate/common.h000066400000000000000000000113411513252040200214750ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ /* Taken from libsamplerate, original copyright below */ /* ** Copyright (C) 2002-2008 Erik de Castro Lopo ** ** This program is free software; you can redistribute it and/or modify ** it under the terms of the GNU General Public License as published by ** the Free Software Foundation; either version 2 of the License, or ** (at your option) any later version. ** ** This program is distributed in the hope that it will be useful, ** but WITHOUT ANY WARRANTY; without even the implied warranty of ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ** GNU General Public License for more details. ** ** You should have received a copy of the GNU General Public License ** along with this program; if not, write to the Free Software ** Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA. */ /* ** This code is part of Secret Rabibt Code aka libsamplerate. A commercial ** use license for this code is available, please see: ** http://www.mega-nerd.com/SRC/procedure.html */ #ifndef COMMON_H_INCLUDED #define COMMON_H_INCLUDED #ifdef HAVE_STDINT_H #include #elif (SIZEOF_INT == 4) typedef int int32_t ; #elif (SIZEOF_LONG == 4) typedef long int32_t ; #endif #include "float_cast.h" #define SRC_MAX_RATIO 256 #define SRC_MIN_RATIO_DIFF (1e-20) #define MAX(a,b) (((a) > (b)) ? (a) : (b)) #define MIN(a,b) (((a) < (b)) ? (a) : (b)) #define ARRAY_LEN(x) ((int) (sizeof (x) / sizeof ((x) [0]))) #define OFFSETOF(type,member) ((int) (&((type*) 0)->member)) #define MAKE_MAGIC(a,b,c,d,e,f) ((a) + ((b) << 4) + ((c) << 8) + ((d) << 12) + ((e) << 16) + ((f) << 20)) #include "samplerate.h" enum { SRC_FALSE = 0, SRC_TRUE = 1, SRC_MODE_PROCESS = 555, SRC_MODE_CALLBACK = 556 } ; enum { SRC_ERR_NO_ERROR = 0, SRC_ERR_MALLOC_FAILED, SRC_ERR_BAD_STATE, SRC_ERR_BAD_DATA, SRC_ERR_BAD_DATA_PTR, SRC_ERR_NO_PRIVATE, SRC_ERR_BAD_SRC_RATIO, SRC_ERR_BAD_PROC_PTR, SRC_ERR_SHIFT_BITS, SRC_ERR_FILTER_LEN, SRC_ERR_BAD_CONVERTER, SRC_ERR_BAD_CHANNEL_COUNT, SRC_ERR_SINC_BAD_BUFFER_LEN, SRC_ERR_SIZE_INCOMPATIBILITY, SRC_ERR_BAD_PRIV_PTR, SRC_ERR_BAD_SINC_STATE, SRC_ERR_DATA_OVERLAP, SRC_ERR_BAD_CALLBACK, SRC_ERR_BAD_MODE, SRC_ERR_NULL_CALLBACK, SRC_ERR_NO_VARIABLE_RATIO, /* This must be the last error number. */ SRC_ERR_MAX_ERROR } ; typedef struct SRC_PRIVATE_tag { double last_ratio, last_position ; int error ; int channels ; /* SRC_MODE_PROCESS or SRC_MODE_CALLBACK */ int mode ; /* Pointer to data to converter specific data. */ void *private_data ; /* Varispeed process function. */ int (*vari_process) (struct SRC_PRIVATE_tag *psrc, SRC_DATA *data) ; /* Constant speed process function. */ int (*const_process) (struct SRC_PRIVATE_tag *psrc, SRC_DATA *data) ; /* State reset. */ void (*reset) (struct SRC_PRIVATE_tag *psrc) ; /* Data specific to SRC_MODE_CALLBACK. */ src_callback_t callback_func ; void *user_callback_data ; long saved_frames ; float *saved_data_f ; double *saved_data_d ; } SRC_PRIVATE ; /* In src_sinc.c */ const char* sinc_get_name (int src_enum) ; const char* sinc_get_description (int src_enum) ; int gavl_sinc_set_converter (SRC_PRIVATE *psrc, int src_enum, int d) ; /* In src_linear.c */ const char* linear_get_name (int src_enum) ; const char* linear_get_description (int src_enum) ; int gavl_linear_set_converter (SRC_PRIVATE *psrc, int src_enum, int d) ; /* In src_zoh.c */ const char* zoh_get_name (int src_enum) ; const char* zoh_get_description (int src_enum) ; int gavl_zoh_set_converter (SRC_PRIVATE *psrc, int src_enum, int d) ; /*---------------------------------------------------------- ** Common static inline functions. */ static inline double fmod_one (double x) { double res ; res = x - lrint (x) ; if (res < 0.0) return res + 1.0 ; return res ; } /* fmod_one */ #endif /* COMMON_H_INCLUDED */ bplaum-gavl-b9385e3/gavl/libsamplerate/fastest_coeffs.h000066400000000000000000002201011513252040200231770ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ /* Taken from libsamplerate, original copyright below */ /* ** Copyright (C) 2002-2008 Erik de Castro Lopo ** ** This program is free software; you can redistribute it and/or modify ** it under the terms of the GNU General Public License as published by ** the Free Software Foundation; either version 2 of the License, or ** (at your option) any later version. ** ** This program is distributed in the hope that it will be useful, ** but WITHOUT ANY WARRANTY; without even the implied warranty of ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ** GNU General Public License for more details. ** ** You should have received a copy of the GNU General Public License ** along with this program; if not, write to the Free Software ** Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA. */ /* ** This code is part of Secret Rabibt Code aka libsamplerate. A commercial ** use license for this code is available, please see: ** http://www.mega-nerd.com/SRC/procedure.html */ /* ** f = make_filter (8, 128, 100.3) ; ** Pass band width : 0.0039062 (should be 0.0039062) ** Stop band atten. : 100.71 dB ** -3dB band width : 0.484 ** half length : 2463 ** increment : 128 */ static const struct fastest_coeffs_s { int increment ; coeff_t coeffs [2464] ; } fastest_coeffs = { 128, { 8.31472372954840555082e-01, 8.31414005540308198583e-01, 8.31238918266223869580e-01, 8.30947156036480505392e-01, 8.30538793675450581766e-01, 8.30013935904800659316e-01, 8.29372717311066987023e-01, 8.28615302303967515840e-01, 8.27741885065490623496e-01, 8.26752689489751890761e-01, 8.25647969113678215081e-01, 8.24428007038499943704e-01, 8.23093115842108757896e-01, 8.21643637482293187624e-01, 8.20079943190897053817e-01, 8.18402433358933589780e-01, 8.16611537412689103554e-01, 8.14707713680854150873e-01, 8.12691449252757824873e-01, 8.10563259827706050764e-01, 8.08323689555523805517e-01, 8.05973310868314363198e-01, 8.03512724303517833491e-01, 8.00942558318331943035e-01, 7.98263469095534694553e-01, 7.95476140340800830231e-01, 7.92581283071560838138e-01, 7.89579635397499868255e-01, 7.86471962292734527722e-01, 7.83259055359786127148e-01, 7.79941732585400893107e-01, 7.76520838088307852054e-01, 7.72997241859018080490e-01, 7.69371839491718167992e-01, 7.65645551908390675777e-01, 7.61819325075220210586e-01, 7.57894129711408459649e-01, 7.53870960990470018181e-01, 7.49750838234153449413e-01, 7.45534804599028211314e-01, 7.41223926755909090502e-01, 7.36819294562192195208e-01, 7.32322020727209643809e-01, 7.27733240470738174110e-01, 7.23054111174766811487e-01, 7.18285812028632841830e-01, 7.13429543667664534112e-01, 7.08486527805442301009e-01, 7.03458006859804640953e-01, 6.98345243572719653891e-01, 6.93149520624175785599e-01, 6.87872140240182283755e-01, 6.82514423795047564525e-01, 6.77077711408058502407e-01, 6.71563361534684655219e-01, 6.65972750552474845875e-01, 6.60307272341742135247e-01, 6.54568337861228477514e-01, 6.48757374718860524432e-01, 6.42875826737744904271e-01, 6.36925153517562181449e-01, 6.30906829991492501541e-01, 6.24822345978837789815e-01, 6.18673205733470954470e-01, 6.12460927488293727095e-01, 6.06187042995817604307e-01, 5.99853097065060292259e-01, 5.93460647094893878339e-01, 5.87011262603992944875e-01, 5.80506524757569142281e-01, 5.73948025891025337408e-01, 5.67337369030688098981e-01, 5.60676167411809700525e-01, 5.53966043993961543279e-01, 5.47208630974010734604e-01, 5.40405569296826038261e-01, 5.33558508163880174102e-01, 5.26669104539922661168e-01, 5.19739022657876970079e-01, 5.12769933522119303326e-01, 5.05763514410336290084e-01, 4.98721448374081555155e-01, 4.91645423738241937883e-01, 4.84537133599546865348e-01, 4.77398275324308896117e-01, 4.70230550045545592219e-01, 4.63035662159660077464e-01, 4.55815318822846149427e-01, 4.48571229447379538069e-01, 4.41305105197960123586e-01, 4.34018658488283970431e-01, 4.26713602477997000495e-01, 4.19391650570203500248e-01, 4.12054515909689722530e-01, 4.04703910882034223473e-01, 3.97341546613763640927e-01, 3.89969132473721613596e-01, 3.82588375575806771689e-01, 3.75200980283257823356e-01, 3.67808647714624070701e-01, 3.60413075251609871241e-01, 3.53015956048925771960e-01, 3.45618978546330835044e-01, 3.38223825983006376461e-01, 3.30832175914426429575e-01, 3.23445699731881031180e-01, 3.16066062184803764357e-01, 3.08694920906066150312e-01, 3.01333925940378832831e-01, 2.93984719275965256102e-01, 2.86648934379644393378e-01, 2.79328195735489559492e-01, 2.72024118387182545220e-01, 2.64738307484245039003e-01, 2.57472357832259801658e-01, 2.50227853447243409057e-01, 2.43006367114305704691e-01, 2.35809459950733935063e-01, 2.28638680973647728800e-01, 2.21495566672345989279e-01, 2.14381640585498134399e-01, 2.07298412883298144305e-01, 2.00247379954717363848e-01, 1.93230023999986955108e-01, 1.86247812628430653437e-01, 1.79302198461779749294e-01, 1.72394618743085786816e-01, 1.65526494951356295537e-01, 1.58699232422028796430e-01, 1.51914219973401071195e-01, 1.45172829539132269838e-01, 1.38476415806921215879e-01, 1.31826315863480453272e-01, 1.25223848845901208904e-01, 1.18670315599523901184e-01, 1.12166998342411894374e-01, 1.05715160336527447260e-01, 9.93160455657086521652e-02, 9.29708784205405536216e-02, 8.66808633902153846673e-02, 8.04471847614677826321e-02, 7.42710063246745516574e-02, 6.81534710872001986415e-02, 6.20957009940759641076e-02, 5.60987966560835549235e-02, 5.01638370853247708703e-02, 4.42918794383505357026e-02, 3.84839587669171534490e-02, 3.27410877764400740086e-02, 2.70642565922108620236e-02, 2.14544325334371267788e-02, 1.59125598951669576520e-02, 1.04395597381551803740e-02, 5.03632968672305773861e-03, -2.96256265336385191805e-04, -5.55734794075828358179e-03, -1.07461191566687631893e-02, -1.58617678942645466689e-02, -2.09035164602743607498e-02, -2.58706116401622790435e-02, -3.07623248430414844568e-02, -3.55779522382659724178e-02, -4.03168148836769782428e-02, -4.49782588454727128013e-02, -4.95616553096875425699e-02, -5.40664006852556791594e-02, -5.84919166986474642345e-02, -6.28376504800633867154e-02, -6.71030746411782619276e-02, -7.12876873444269476554e-02, -7.53910123638282386738e-02, -7.94125991373483691715e-02, -8.33520228108008270906e-02, -8.72088842732959695914e-02, -9.09828101842390379872e-02, -9.46734529918955292072e-02, -9.82804909435327500589e-02, -1.01803628087157427284e-01, -1.05242594264867719844e-01, -1.08597145097841310535e-01, -1.11867061962988789681e-01, -1.15052151961296145188e-01, -1.18152247877890054228e-01, -1.21167208133862752684e-01, -1.24096916729885473063e-01, -1.26941283181660202750e-01, -1.29700242447243679900e-01, -1.32373754846295377252e-01, -1.34961805971292009287e-01, -1.37464406590764143257e-01, -1.39881592544604443917e-01, -1.42213424631507739937e-01, -1.44459988488595730827e-01, -1.46621394463294696386e-01, -1.48697777477524800682e-01, -1.50689296884269657850e-01, -1.52596136316595465399e-01, -1.54418503529190731527e-01, -1.56156630232500315270e-01, -1.57810771919529219121e-01, -1.59381207685401427021e-01, -1.60868240039743037872e-01, -1.62272194711985145998e-01, -1.63593420449666626659e-01, -1.64832288809824062392e-01, -1.65989193943563151379e-01, -1.67064552373901109572e-01, -1.68058802766975601273e-01, -1.68972405696717037360e-01, -1.69805843403086798027e-01, -1.70559619543971530131e-01, -1.71234258940853617537e-01, -1.71830307318344255307e-01, -1.72348331037702334756e-01, -1.72788916824434257702e-01, -1.73152671490098081231e-01, -1.73440221648409775845e-01, -1.73652213425782242506e-01, -1.73789312166397952319e-01, -1.73852202131942051855e-01, -1.73841586196111674845e-01, -1.73758185534021086793e-01, -1.73602739306629005878e-01, -1.73376004340306061335e-01, -1.73078754801670009478e-01, -1.72711781867818603420e-01, -1.72275893392080048372e-01, -1.71771913565416961545e-01, -1.71200682573611373538e-01, -1.70563056250360139954e-01, -1.69859905726417126370e-01, -1.69092117074913228514e-01, -1.68260590952989147473e-01, -1.67366242239875284703e-01, -1.66409999671557895518e-01, -1.65392805472166642966e-01, -1.64315614982222552021e-01, -1.63179396283883837437e-01, -1.61985129823331186483e-01, -1.60733808030429803360e-01, -1.59426434935813571281e-01, -1.58064025785527417778e-01, -1.56647606653372045704e-01, -1.55178214051094831571e-01, -1.53656894536566474008e-01, -1.52084704320088470730e-01, -1.50462708868975059140e-01, -1.48791982510548842500e-01, -1.47073608033699704256e-01, -1.45308676289147314931e-01, -1.43498285788550977715e-01, -1.41643542302611558092e-01, -1.39745558458309881988e-01, -1.37805453335422323224e-01, -1.35824352062461073398e-01, -1.33803385412180564362e-01, -1.31743689396791985313e-01, -1.29646404863030306753e-01, -1.27512677087215337002e-01, -1.25343655370452389253e-01, -1.23140492634104758984e-01, -1.20904345015691472298e-01, -1.18636371465341922127e-01, -1.16337733342949820048e-01, -1.14009594016166518338e-01, -1.11653118459372716065e-01, -1.09269472853762789066e-01, -1.06859824188683741331e-01, -1.04425339864360325337e-01, -1.01967187296145456177e-01, -9.94865335204263567803e-02, -9.69845448023236023083e-02, -9.44623862453117940641e-02, -9.19212214028948121358e-02, -8.93622118924671249296e-02, -8.67865170114848205607e-02, -8.41952933560805999447e-02, -8.15896944422443981537e-02, -7.89708703296961439522e-02, -7.63399672485739477779e-02, -7.36981272290610500697e-02, -7.10464877340710454501e-02, -6.83861812951113146042e-02, -6.57183351514422919859e-02, -6.30440708926501142129e-02, -6.03645041047437408421e-02, -5.76807440198948140342e-02, -5.49938931699267691267e-02, -5.23050470436661057994e-02, -4.96152937482609926456e-02, -4.69257136745778041798e-02, -4.42373791667729082677e-02, -4.15513541961495605492e-02, -3.88686940393953503370e-02, -3.61904449613011935938e-02, -3.35176439020573244121e-02, -3.08513181692228674602e-02, -2.81924851344595717162e-02, -2.55421519351213023585e-02, -2.29013151807887539724e-02, -2.02709606648342685609e-02, -1.76520630811025022733e-02, -1.50455857457888787787e-02, -1.24524803245954687053e-02, -9.87368656524285036313e-03, -7.31013203541311037958e-03, -4.76273186619807602227e-03, -2.23238850112297869746e-03, 2.80008549183706099625e-04, 2.77358294660976899965e-03, 5.24747175940274562800e-03, 7.70082569017439908660e-03, 1.01328092980087648006e-02, 1.25426012146140665460e-02, 1.49293943544662570388e-02, 1.72923961188884665885e-02, 1.96308285940195309527e-02, 2.19439287426209730936e-02, 2.42309485896793734561e-02, 2.64911554017603391442e-02, 2.87238318600733545660e-02, 3.09282762272103349532e-02, 3.31038025075217068327e-02, 3.52497406010981520486e-02, 3.73654364513253609004e-02, 3.94502521859858221176e-02, 4.15035662518817155542e-02, 4.35247735429537541130e-02, 4.55132855218787699125e-02, 4.74685303351244439196e-02, 4.93899529214478216765e-02, 5.12770151138242716304e-02, 5.31291957347935772660e-02, 5.49459906852194576721e-02, 5.67269130264521220797e-02, 5.84714930558940249039e-02, 6.01792783759655322551e-02, 6.18498339564735599705e-02, 6.34827421903864652641e-02, 6.50776029430226859995e-02, 6.66340335946605799577e-02, 6.81516690765814614483e-02, 6.96301619005592065115e-02, 7.10691821818139612965e-02, 7.24684176554465098175e-02, 7.38275736863740761340e-02, 7.51463732727930683319e-02, 7.64245570431912463194e-02, 7.76618832469397474272e-02, 7.88581277384926976337e-02, 8.00130839552289779837e-02, 8.11265628889681067459e-02, 8.21983930512013155623e-02, 8.32284204320703352442e-02, 8.42165084531432683868e-02, 8.51625379140240473808e-02, 8.60664069328434949702e-02, 8.69280308806818224898e-02, 8.77473423099686122839e-02, 8.85242908769151987114e-02, 8.92588432580306151420e-02, 8.99509830607803234637e-02, 9.06007107284422380511e-02, 9.12080434392217309636e-02, 9.17730149996878741270e-02, 9.22956757325926607782e-02, 9.27760923591415126443e-02, 9.32143478757788968014e-02, 9.36105414255621187669e-02, 9.39647881641913207407e-02, 9.42772191207702781046e-02, 9.45479810533706027664e-02, 9.47772362994778183598e-02, 9.49651626213951355338e-02, 9.51119530466846413441e-02, 9.52178157037280176178e-02, 9.52829736524876819148e-02, 9.53076647105531166160e-02, 9.52921412745576373871e-02, 9.52366701370536278271e-02, 9.51415322989309503177e-02, 9.50070227774735681647e-02, 9.48334504101390751707e-02, 9.46211376541590265532e-02, 9.43704203820504156086e-02, 9.40816476731309581094e-02, 9.37551816011396865758e-02, 9.33913970180541563870e-02, 9.29906813342047527948e-02, 9.25534342947849225647e-02, 9.20800677528557931506e-02, 9.15710054389489019888e-02, 9.10266827273659706599e-02, 9.04475463992783224043e-02, 8.98340544027328158361e-02, 8.91866756096650198371e-02, 8.85058895700238101867e-02, 8.77921862631190763615e-02, 8.70460658462897246546e-02, 8.62680384010083983748e-02, 8.54586236765221690659e-02, 8.46183508311429133375e-02, 8.37477581712920277068e-02, 8.28473928884114751980e-02, 8.19178107938471483651e-02, 8.09595760518180135312e-02, 7.99732609105757996648e-02, 7.89594454318716387764e-02, 7.79187172188340326784e-02, 7.68516711423724852015e-02, 7.57589090662164482692e-02, 7.46410395707000073884e-02, 7.34986776754032733461e-02, 7.23324445607601979047e-02, 7.11429672887474440213e-02, 6.99308785227581580779e-02, 6.86968162467783832748e-02, 6.74414234839716131287e-02, 6.61653480147834510694e-02, 6.48692420946761771905e-02, 6.35537621716019962559e-02, 6.22195686033254202751e-02, 6.08673253747022482973e-02, 5.94976998150253330588e-02, 5.81113623155428762890e-02, 5.67089860472591994478e-02, 5.52912466791220663653e-02, 5.38588220967053943333e-02, 5.24123921214928872869e-02, 5.09526382308646275110e-02, 4.94802432788957607945e-02, 4.79958912180662375380e-02, 4.65002668219884549017e-02, 4.49940554092515265783e-02, 4.34779425684853407241e-02, 4.19526138847447563340e-02, 4.04187546673120054463e-02, 3.88770496790168534895e-02, 3.73281828671714888124e-02, 3.57728370962169389680e-02, 3.42116938821758476141e-02, 3.26454331290065291604e-02, 3.10747328669506231447e-02, 2.95002689929673225788e-02, 2.79227150133440210622e-02, 2.63427417885741359249e-02, 2.47610172805882329528e-02, 2.31782063024293799591e-02, 2.15949702704538760989e-02, 2.00119669591453143431e-02, 1.84298502586232419709e-02, 1.68492699349288496680e-02, 1.52708713931675090641e-02, 1.36952954435869880129e-02, 1.21231780706691841254e-02, 1.05551502053105091677e-02, 8.99183750016553651196e-03, 7.43386010822696258193e-03, 5.88183246471273707412e-03, 4.33636307232945251988e-03, 2.79805428998205086427e-03, 1.26750212499337003291e-03, -2.54703971099550386531e-04, -1.76798130311027175757e-03, -3.27175412906725469539e-03, -4.76545385331804925710e-03, -6.24851921581533794464e-03, -7.72039647752874400727e-03, -9.18053960192777122884e-03, -1.06284104324833178490e-02, -1.20634788661366718077e-02, -1.34852230226875247771e-02, -1.48931294100519973078e-02, -1.62866930853476296615e-02, -1.76654178117594401476e-02, -1.90288162111466874205e-02, -2.03764099123495759369e-02, -2.17077296951579609696e-02, -2.30223156299061669505e-02, -2.43197172126588360974e-02, -2.55994934959561624976e-02, -2.68612132150869431513e-02, -2.81044549098614510063e-02, -2.93288070418574950415e-02, -3.05338681071131295974e-02, -3.17192467442452205595e-02, -3.28845618379712614776e-02, -3.40294426180154721551e-02, -3.51535287533818185945e-02, -3.62564704419792716017e-02, -3.73379284955845242022e-02, -3.83975744201309962533e-02, -3.94350904913155775322e-02, -4.04501698255130062720e-02, -4.14425164459938585870e-02, -4.24118453444415760556e-02, -4.33578825377650758921e-02, -4.42803651202084772032e-02, -4.51790413107587551789e-02, -4.60536704958539877541e-02, -4.69040232673985507672e-02, -4.77298814560914094751e-02, -4.85310381600771723054e-02, -4.93072977689298017068e-02, -5.00584759829825892696e-02, -5.07843998280173986037e-02, -5.14849076653303427964e-02, -5.21598491971914657306e-02, -5.28090854677170859488e-02, -5.34324888591782357072e-02, -5.40299430837655400572e-02, -5.46013431708381041796e-02, -5.51465954496810906171e-02, -5.56656175277993395256e-02, -5.61583382647804357779e-02, -5.66246977417538960298e-02, -5.70646472264832865795e-02, -5.74781491341238848225e-02, -5.78651769836829588112e-02, -5.82257153502198851469e-02, -5.85597598128258789441e-02, -5.88673168984241990120e-02, -5.91484040214318093631e-02, -5.94030494193287308957e-02, -5.96312920841784027681e-02, -5.98331816901454746627e-02, -6.00087785170606569096e-02, -6.01581533700810480725e-02, -6.02813874954959694197e-02, -6.03785724927326447609e-02, -6.04498102226119424230e-02, -6.04952127119116611631e-02, -6.05149020542914278797e-02, -6.05090103076376881197e-02, -6.04776793878847099273e-02, -6.04210609593744951695e-02, -6.03393163218124903291e-02, -6.02326162938837256222e-02, -6.01011410935896536745e-02, -5.99450802153716350018e-02, -5.97646323040843391317e-02, -5.95600050258849322837e-02, -5.93314149361059764431e-02, -5.90790873441773764507e-02, -5.88032561756684640786e-02, -5.85041638315173181950e-02, -5.81820610445198463379e-02, -5.78372067331465664064e-02, -5.74698678527617162759e-02, -5.70803192443151696800e-02, -5.66688434805820984153e-02, -5.62357307100216502471e-02, -5.57812784983319834287e-02, -5.53057916677746758127e-02, -5.48095821343453915020e-02, -5.42929687428649263015e-02, -5.37562771000702349644e-02, -5.31998394057807341695e-02, -5.26239942822169029513e-02, -5.20290866015511582754e-02, -5.14154673117670768523e-02, -5.07834932609073572141e-02, -5.01335270197884388943e-02, -4.94659367032617980353e-02, -4.87810957901005926018e-02, -4.80793829415919610204e-02, -4.73611818189140221236e-02, -4.66268808993793651418e-02, -4.58768732916221277929e-02, -4.51115565498113532672e-02, -4.43313324869706107401e-02, -4.35366069874822472774e-02, -4.27277898188581847783e-02, -4.19052944428566706558e-02, -4.10695378260253277092e-02, -4.02209402497498702544e-02, -3.93599251198885058400e-02, -3.84869187760717781921e-02, -3.76023503007467674308e-02, -3.67066513280452297319e-02, -3.58002558525536487832e-02, -3.48836000380640318119e-02, -3.39571220263849699039e-02, -3.30212617462878818553e-02, -3.20764607226682249563e-02, -3.11231618859974003277e-02, -3.01618093821427596390e-02, -2.91928483826300218251e-02, -2.82167248954252464221e-02, -2.72338855763107207109e-02, -2.62447775409285488646e-02, -2.52498481775659533444e-02, -2.42495449607560524530e-02, -2.32443152657647901516e-02, -2.22346061840382018537e-02, -2.12208643396787077773e-02, -2.02035357070221716080e-02, -1.91830654293842946256e-02, -1.81598976390459701524e-02, -1.71344752785447841659e-02, -1.61072399233397958729e-02, -1.50786316059164128556e-02, -1.40490886413957953571e-02, -1.30190474547137412242e-02, -1.19889424094323342185e-02, -1.09592056382471266657e-02, -9.93026687525074697183e-03, -8.90255329001433948211e-03, -7.87648932354562125724e-03, -6.85249652618241146540e-03, -5.83099339747908569642e-03, -4.81239522814202146106e-03, -3.79711394406930576734e-03, -2.78555795254968683455e-03, -1.77813199067227692071e-03, -7.75236976000132386663e-04, 2.22730140442126654798e-04, 1.21537651881706244492e-03, 2.20231357271108733539e-03, 3.18315710891246220898e-03, 4.15752746468348553799e-03, 5.12504964248380791986e-03, 6.08535344210042478813e-03, 7.03807359014245199208e-03, 7.98284986685961206465e-03, 8.91932723024580452476e-03, 9.84715593738785290034e-03, 1.07659916630240357766e-02, 1.16754956152756248638e-02, 1.25753346485176220604e-02, 1.34651813733560731662e-02, 1.43447142636787781933e-02, 1.52136177607511777904e-02, 1.60715823743268690360e-02, 1.69183047807457617728e-02, 1.77534879179936204430e-02, 1.85768410776981605925e-02, 1.93880799940382604618e-02, 2.01869269295435888045e-02, 2.09731107577651766649e-02, 2.17463670427963037812e-02, 2.25064381156266125894e-02, 2.32530731473125917841e-02, 2.39860282189490944815e-02, 2.47050663884288181082e-02, 2.54099577539762186418e-02, 2.61004795144461655687e-02, 2.67764160263764816605e-02, 2.74375588577874841845e-02, 2.80837068387202806741e-02, 2.87146661085097808230e-02, 2.93302501597869115513e-02, 2.99302798792087168533e-02, 3.05145835849139068774e-02, 3.10829970607048658437e-02, 3.16353635869560598226e-02, 3.21715339682534032240e-02, 3.26913665577675052742e-02, 3.31947272783659833029e-02, 3.36814896404726560331e-02, 3.41515347566807569990e-02, 3.46047513531298478462e-02, 3.50410357776568884280e-02, 3.54602920047340924858e-02, 3.58624316372060172875e-02, 3.62473739048404727803e-02, 3.66150456597097023748e-02, 3.69653813684179058385e-02, 3.72983231011940682964e-02, 3.76138205178691634178e-02, 3.79118308507581658340e-02, 3.81923188844700278732e-02, 3.84552569326661666804e-02, 3.87006248117945095277e-02, 3.89284098118221136287e-02, 3.91386066639944005252e-02, 3.93312175056476295842e-02, 3.95062518421033306848e-02, 3.96637265056755394799e-02, 3.98036656118202977761e-02, 3.99261005124597820326e-02, 4.00310697465144360585e-02, 4.01186189876763035778e-02, 4.01888009894591641258e-02, 4.02416755275608953313e-02, 4.02773093395744422041e-02, 4.02957760620868618573e-02, 4.02971561652026855072e-02, 4.02815368845340013304e-02, 4.02490121506946865737e-02, 4.01996825163432602857e-02, 4.01336550808131173329e-02, 4.00510434123766412284e-02, 3.99519674681838021790e-02, 3.98365535119223901361e-02, 3.97049340292425986809e-02, 3.95572476409943238340e-02, 3.93936390143226622396e-02, 3.92142587716682866628e-02, 3.90192633977227906761e-02, 3.88088151443859719070e-02, 3.85830819337740632546e-02, 3.83422372593309676581e-02, 3.80864600850902706997e-02, 3.78159347431409609275e-02, 3.75308508293468318096e-02, 3.72314030973733209318e-02, 3.69177913510723085255e-02, 3.65902203352790472701e-02, 3.62488996250740352911e-02, 3.58940435135636018438e-02, 3.55258708982338911042e-02, 3.51446051659309519066e-02, 3.47504740765239503175e-02, 3.43437096453047957523e-02, 3.39245480241803926136e-02, 3.34932293817127510471e-02, 3.30499977820627663383e-02, 3.25951010628938789293e-02, 3.21287907122915217251e-02, 3.16513217447548164674e-02, 3.11629525763171093267e-02, 3.06639448988514501382e-02, 3.01545635536184866710e-02, 2.96350764041116987446e-02, 2.91057542082603579181e-02, 2.85668704900414009706e-02, 2.80187014105628129368e-02, 2.74615256386703497637e-02, 2.68956242211381771345e-02, 2.63212804524964143205e-02, 2.57387797445546746833e-02, 2.51484094956766456030e-02, 2.45504589598617914414e-02, 2.39452191156906725455e-02, 2.33329825351894608321e-02, 2.27140432526683408443e-02, 2.20886966335908999093e-02, 2.14572392435271874778e-02, 2.08199687172471933905e-02, 2.01771836280079629178e-02, 1.95291833570884962312e-02, 1.88762679636269269101e-02, 1.82187380548123403767e-02, 1.75568946564845403124e-02, 1.68910390841945853846e-02, 1.62214728147774996103e-02, 1.55484973584896369464e-02, 1.48724141317607399387e-02, 1.41935243306124080076e-02, 1.35121288047925294795e-02, 1.28285279326754275003e-02, 1.21430214969758445281e-02, 1.14559085613274869858e-02, 1.07674873477713456404e-02, 1.00780551152029641815e-02, 9.38790803882408146641e-03, 8.69734109064560119429e-03, 8.00664792108640895052e-03, 7.31612074171312902482e-03, 6.62605020916498532735e-03, 5.93672531030635993593e-03, 5.24843324865020312286e-03, 4.56145933209378684481e-03, 3.87608686200798923521e-03, 3.19259702372048361982e-03, 2.51126877843176705626e-03, 1.83237875660391988202e-03, 1.15620115285868549186e-03, 4.83007622422852007059e-04, -1.86932820843070034112e-04, -8.53353904797455329115e-04, -1.51599219771675255281e-03, -2.17458720530792556924e-03, -2.82888146600037857989e-03, -3.47862064448672828401e-03, -4.12355362347965707925e-03, -4.76343259365718217635e-03, -5.39801314176371720144e-03, -6.02705433684159932323e-03, -6.65031881456398799024e-03, -7.26757285964317947813e-03, -7.87858648628854928153e-03, -8.48313351669007821576e-03, -9.08099165750268083608e-03, -9.67194257431004678072e-03, -1.02557719640449674509e-02, -1.08322696253466653482e-02, -1.14012295268339416271e-02, -1.19624498732761111452e-02, -1.25157331696445651287e-02, -1.30608862830260651078e-02, -1.35977205023845738180e-02, -1.41260515961539080687e-02, -1.46456998676501564532e-02, -1.51564902082884610246e-02, -1.56582521485937077588e-02, -1.61508199069943896020e-02, -1.66340324363880263936e-02, -1.71077334684716746149e-02, -1.75717715558275228149e-02, -1.80260001117568194329e-02, -1.84702774478586080609e-02, -1.89044668093441003975e-02, -1.93284364080869922042e-02, -1.97420594534034529732e-02, -2.01452141805614354242e-02, -2.05377838770183090977e-02, -2.09196569063852221004e-02, -2.12907267301215390176e-02, -2.16508919269584217127e-02, -2.20000562100566773860e-02, -2.23381284419012192399e-02, -2.26650226469371808558e-02, -2.29806580219539050014e-02, -2.32849589442222955349e-02, -2.35778549773940013234e-02, -2.38592808751701725145e-02, -2.41291765827496146324e-02, -2.43874872360661625048e-02, -2.46341631588262027774e-02, -2.48691598573592027865e-02, -2.50924380132932847709e-02, -2.53039634740697960691e-02, -2.55037072413113186098e-02, -2.56916454570593408291e-02, -2.58677593878966008423e-02, -2.60320354069717534162e-02, -2.61844649739453247395e-02, -2.63250446128731642459e-02, -2.64537758880496950975e-02, -2.65706653778289558776e-02, -2.66757246464459155111e-02, -2.67689702138592805492e-02, -2.68504235236379437679e-02, -2.69201109089152179621e-02, -2.69780635564342181898e-02, -2.70243174687087896191e-02, -2.70589134243261995871e-02, -2.70818969364167577707e-02, -2.70933182093176481986e-02, -2.70932320934577017257e-02, -2.70816980384915410862e-02, -2.70587800447114543156e-02, -2.70245466127663376554e-02, -2.69790706917171427270e-02, -2.69224296254590607369e-02, -2.68547050975419879237e-02, -2.67759830744198866481e-02, -2.66863537471611969587e-02, -2.65859114716531889921e-02, -2.64747547073322930800e-02, -2.63529859544745573285e-02, -2.62207116900796607939e-02, -2.60780423023825730366e-02, -2.59250920240284947471e-02, -2.57619788639449828760e-02, -2.55888245379471308827e-02, -2.54057543981124761556e-02, -2.52128973609604678519e-02, -2.50103858344739478359e-02, -2.47983556439997539222e-02, -2.45769459570643403201e-02, -2.43462992071435090080e-02, -2.41065610164222128564e-02, -2.38578801175844575078e-02, -2.36004082746693114037e-02, -2.33343002030331689300e-02, -2.30597134884559483436e-02, -2.27768085054302904524e-02, -2.24857483346725776918e-02, -2.21866986798954189675e-02, -2.18798277838799307138e-02, -2.15653063438876642366e-02, -2.12433074264517691987e-02, -2.09140063815867055519e-02, -2.05775807564556566243e-02, -2.02342102085360346642e-02, -1.98840764183222142025e-02, -1.95273630016047500257e-02, -1.91642554213670816832e-02, -1.87949408993371563925e-02, -1.84196083272362247374e-02, -1.80384481777610752862e-02, -1.76516524153425696797e-02, -1.72594144067167720724e-02, -1.68619288313498413845e-02, -1.64593915917550098760e-02, -1.60519997237402040069e-02, -1.56399513066264282679e-02, -1.52234453734734331148e-02, -1.48026818213531103502e-02, -1.43778613217079923037e-02, -1.39491852308316760523e-02, -1.35168555005115483686e-02, -1.30810745888681710658e-02, -1.26420453714316226301e-02, -1.21999710524887047813e-02, -1.17550550767402828961e-02, -1.13075010413035727252e-02, -1.08575126080952908542e-02, -1.04052934166326063736e-02, -9.95104699728536351566e-03, -9.49497668501652312967e-03, -9.03728553364356763933e-03, -8.57817623065582068875e-03, -8.11785101262214349449e-03, -7.65651158122056946231e-03, -7.19435901992488725798e-03, -6.73159371137851351291e-03, -6.26841525548942068990e-03, -5.80502238827697216589e-03, -5.34161290150089295564e-03, -4.87838356310490647849e-03, -4.41553003850264462471e-03, -3.95324681273798422126e-03, -3.49172711354636287548e-03, -3.03116283534747218975e-03, -2.57174446419663202748e-03, -2.11366100372138449731e-03, -1.65709990207213789248e-03, -1.20224697991074881177e-03, -7.49286359465203312402e-04, -2.98400394673150758020e-04, 1.50230397559290287587e-04, 5.96427404960260163468e-04, 1.04001398633389997676e-03, 1.48081553681653948010e-03, 1.91865955192711671630e-03, 2.35337569038958404136e-03, 2.78479583570576333731e-03, 3.21275415646031688166e-03, 3.63708716533605539573e-03, 4.05763377682291995208e-03, 4.47423536360066955581e-03, 4.88673581157838838457e-03, 5.29498157357465894235e-03, 5.69882172162047926506e-03, 6.09810799787139853900e-03, 6.49269486411187517899e-03, 6.88243954983998491859e-03, 7.26720209891677272618e-03, 7.64684541476874993227e-03, 8.02123530413159993580e-03, 8.39024051932213063565e-03, 8.75373279902990839019e-03, 9.11158690761618844656e-03, 9.46368067291306243327e-03, 9.80989502251233651264e-03, 1.01501140185368699670e-02, 1.04842248908878447194e-02, 1.08121180689596009528e-02, 1.11336872118183785596e-02, 1.14488292368375710328e-02, 1.17574443467867335855e-02, 1.20594360553697797084e-02, 1.23547112112087492664e-02, 1.26431800202723137322e-02, 1.29247560667452802280e-02, 1.31993563323394361153e-02, 1.34669012140451026943e-02, 1.37273145403230718842e-02, 1.39805235857388930609e-02, 1.42264590840399576116e-02, 1.44650552396788801418e-02, 1.46962497377853603536e-02, 1.49199837525900817770e-02, 1.51362019543059365262e-02, 1.53448525144697818512e-02, 1.55458871097522988158e-02, 1.57392609242401407266e-02, 1.59249326501989980909e-02, 1.61028644873237487822e-02, 1.62730221404839558996e-02, 1.64353748159745995105e-02, 1.65898952162792344411e-02, 1.67365595333573702330e-02, 1.68753474404654685292e-02, 1.70062420825228405308e-02, 1.71292300650343690127e-02, 1.72443014415816948948e-02, 1.73514496998961910423e-02, 1.74506717465267233158e-02, 1.75419678901157470585e-02, 1.76253418232991503067e-02, 1.77008006032431768062e-02, 1.77683546308354950449e-02, 1.78280176285450023266e-02, 1.78798066169677284665e-02, 1.79237418900749095885e-02, 1.79598469891815541721e-02, 1.79881486756524357207e-02, 1.80086769023645003329e-02, 1.80214647839439801036e-02, 1.80265485657978320744e-02, 1.80239675919585257136e-02, 1.80137642717629609113e-02, 1.79959840453853894826e-02, 1.79706753482452019632e-02, 1.79378895743111561878e-02, 1.78976810383233188306e-02, 1.78501069369546815080e-02, 1.77952273089348571300e-02, 1.77331049941585293384e-02, 1.76638055918014250101e-02, 1.75873974174670689996e-02, 1.75039514593883366311e-02, 1.74135413337067820883e-02, 1.73162432388551425222e-02, 1.72121359090659648006e-02, 1.71013005670323306462e-02, 1.69838208757447130248e-02, 1.68597828895295613616e-02, 1.67292750043147309125e-02, 1.65923879071472879509e-02, 1.64492145249898746862e-02, 1.62998499728209574056e-02, 1.61443915010654574782e-02, 1.59829384423819872985e-02, 1.58155921578329479449e-02, 1.56424559824643004402e-02, 1.54636351703211580993e-02, 1.52792368389266484952e-02, 1.50893699132506348831e-02, 1.48941450691946284529e-02, 1.46936746766213478105e-02, 1.44880727419542387757e-02, 1.42774548503756936596e-02, 1.40619381076500047506e-02, 1.38416410815988405458e-02, 1.36166837432563775367e-02, 1.33871874077307433104e-02, 1.31532746747999255282e-02, 1.29150693692685249875e-02, 1.26726964811125480254e-02, 1.24262821054400597609e-02, 1.21759533822933443264e-02, 1.19218384363212748234e-02, 1.16640663163469111840e-02, 1.14027669348586990772e-02, 1.11380710074510391738e-02, 1.08701099922405512027e-02, 1.05990160292857588803e-02, 1.03249218800347264402e-02, 1.00479608668283364181e-02, 9.76826681248407595326e-03, 9.48597397998680001707e-03, 9.20121701231205180171e-03, 8.91413087240663405686e-03, 8.62485078335300560382e-03, 8.33351216874106057175e-03, 8.04025059327335284154e-03, 7.74520170362733365033e-03, 7.44850116959968472363e-03, 7.15028462555652392224e-03, 6.85068761221313375642e-03, 6.54984551876693164157e-03, 6.24789352540736173808e-03, 5.94496654622468298501e-03, 5.64119917254172174859e-03, 5.33672561668945780872e-03, 5.03167965625017643561e-03, 4.72619457878821046942e-03, 4.42040312709122713147e-03, 4.11443744494245557813e-03, 3.80842902344421868274e-03, 3.50250864791438413365e-03, 3.19680634537424174582e-03, 2.89145133264915015631e-03, 2.58657196509964968506e-03, 2.28229568600325869593e-03, 1.97874897660506266980e-03, 1.67605730685465247574e-03, 1.37434508684857771554e-03, 1.07373561899400072825e-03, 7.74351050912206037222e-04, 4.76312329096932108620e-04, 1.79739153344913828647e-04, -1.15250068026150436743e-04, -4.08538262157430215240e-04, -7.00009734810518881830e-04, -9.89550212697529359140e-04, -1.27704688496522110984e-03, -1.56238844381914230262e-03, -1.84546512427596291067e-03, -2.12616874302977649017e-03, -2.40439273642179809562e-03, -2.68003219750039467159e-03, -2.95298391216083011210e-03, -3.22314639435426720723e-03, -3.49041992035452591087e-03, -3.75470656207426648626e-03, -4.01591021941965966441e-03, -4.27393665167596914500e-03, -4.52869350791463860101e-03, -4.78009035641408387002e-03, -5.02803871308742881402e-03, -5.27245206890878791856e-03, -5.51324591633307794364e-03, -5.75033777470175880286e-03, -5.98364721463032038506e-03, -6.21309588137129026331e-03, -6.43860751714846711591e-03, -6.66010798245885143193e-03, -6.87752527633716734257e-03, -7.09078955558135361203e-03, -7.29983315293484570641e-03, -7.50459059422442856246e-03, -7.70499861445137022159e-03, -7.90099617283428028169e-03, -8.09252446680348673513e-03, -8.27952694494581836748e-03, -8.46194931890021165288e-03, -8.63973957420479179992e-03, -8.81284798009584514900e-03, -8.98122709826090423468e-03, -9.14483179054685624276e-03, -9.30361922562642808254e-03, -9.45754888462495800494e-03, -9.60658256571109842037e-03, -9.75068438765514661215e-03, -9.88982079235872779677e-03, -1.00239605463608785763e-02, -1.01530747413246837108e-02, -1.02771367935108499936e-02, -1.03961224422430293518e-02, -1.05100097473716045521e-02, -1.06187790857425311958e-02, -1.07224131466778661165e-02, -1.08208969264758890494e-02, -1.09142177219381259629e-02, -1.10023651229317290939e-02, -1.10853310039956218930e-02, -1.11631095149994884197e-02, -1.12356970708646971419e-02, -1.13030923403568215463e-02, -1.13652962339602110059e-02, -1.14223118908440956359e-02, -1.14741446649318026840e-02, -1.15208021100836454503e-02, -1.15622939644049946284e-02, -1.15986321336910645080e-02, -1.16298306740207010868e-02, -1.16559057735113307669e-02, -1.16768757332475214827e-02, -1.16927609473963332182e-02, -1.17035838825226608945e-02, -1.17093690561177760784e-02, -1.17101430143551586693e-02, -1.17059343090872795129e-02, -1.16967734740980097013e-02, -1.16826930006248379257e-02, -1.16637273121658596037e-02, -1.16399127385864407935e-02, -1.16112874895409699111e-02, -1.15778916272246922003e-02, -1.15397670384720374415e-02, -1.14969574062164479888e-02, -1.14495081803284975280e-02, -1.13974665478479546959e-02, -1.13408814026266253211e-02, -1.12798033143984600957e-02, -1.12142844972935168402e-02, -1.11443787778127377519e-02, -1.10701415622809114236e-02, -1.09916298037944538957e-02, -1.09089019686816925125e-02, -1.08220180024931385970e-02, -1.07310392955389764802e-02, -1.06360286479915983754e-02, -1.05370502345710423397e-02, -1.04341695688310136247e-02, -1.03274534670632443106e-02, -1.02169700118386209270e-02, -1.01027885152025192345e-02, -9.98497948154308812008e-03, -9.86361457015006402871e-03, -9.73876655748246930488e-03, -9.61050929916365190286e-03, -9.47891769172138146105e-03, -9.34406763409175583623e-03, -9.20603598890469380922e-03, -9.06490054356958417647e-03, -8.92073997117914622990e-03, -8.77363379124968326139e-03, -8.62366233031589164704e-03, -8.47090668239862398803e-03, -8.31544866936306283078e-03, -8.15737080118616487978e-03, -7.99675623615058242533e-03, -7.83368874098351944402e-03, -7.66825265095798756787e-03, -7.50053282997436773782e-03, -7.33061463064018075525e-03, -7.15858385436481461928e-03, -6.98452671148786126409e-03, -6.80852978145714965441e-03, -6.63067997307481386826e-03, -6.45106448482760802543e-03, -6.26977076531890029770e-03, -6.08688647381931853542e-03, -5.90249944095203298716e-03, -5.71669762953000513278e-03, -5.52956909556100162373e-03, -5.34120194943696596085e-03, -5.15168431732329797079e-03, -4.96110430276443595266e-03, -4.76954994852103134756e-03, -4.57710919865432410564e-03, -4.38386986087277181340e-03, -4.18991956915663876782e-03, -3.99534574667439676410e-03, -3.80023556900675307108e-03, -3.60467592769156538676e-03, -3.40875339410503987864e-03, -3.21255418369197943973e-03, -3.01616412055992575564e-03, -2.81966860245005685598e-03, -2.62315256609809257030e-03, -2.42670045299875130826e-03, -2.23039617558575898118e-03, -2.03432308384080993632e-03, -1.83856393234277533909e-03, -1.64320084776991355742e-03, -1.44831529686655904529e-03, -1.25398805488530435195e-03, -1.06029917451672204415e-03, -8.67327955316482155854e-04, -6.75152913641518712638e-04, -4.83851753104545291573e-04, -2.93501335557769932588e-04, -1.04177652615230481180e-04, 8.40442022771478958144e-05, 2.71090061213828637746e-04, 4.56886708636217294885e-04, 6.41361907564611910364e-04, 8.24444425246958221068e-04, 1.00606405821750295726e-03, 1.18615165675600578790e-03, 1.36463914874257485378e-03, 1.54145956289825905236e-03, 1.71654705140769636706e-03, 1.88983691191461173828e-03, 2.06126560888645086675e-03, 2.23077079434063144103e-03, 2.39829132792830895110e-03, 2.56376729636941056573e-03, 2.72714003223500402184e-03, 2.88835213207216685155e-03, 3.04734747386685260462e-03, 3.20407123384176817371e-03, 3.35846990258462183704e-03, 3.51049130050470068257e-03, 3.66008459261367522647e-03, 3.80720030262936314294e-03, 3.95179032639856198800e-03, 4.09380794463911311387e-03, 4.23320783499702736619e-03, 4.36994608342004212803e-03, 4.50398019484403704799e-03, 4.63526910319382156461e-03, 4.76377318069614620610e-03, 4.88945424650618146178e-03, 5.01227557464674778470e-03, 5.13220190126144337750e-03, 5.24919943118207308480e-03, 5.36323584381190321402e-03, 5.47428029832571112767e-03, 5.58230343818897148389e-03, 5.68727739499729628703e-03, 5.78917579163970574818e-03, 5.88797374478673089110e-03, 5.98364786670789981782e-03, 6.07617626642060343345e-03, 6.16553855017385084303e-03, 6.25171582127166582804e-03, 6.33469067923863194541e-03, 6.41444721833308011821e-03, 6.49097102541174898749e-03, 6.56424917715103632687e-03, 6.63427023662958338657e-03, 6.70102424927795491810e-03, 6.76450273820044644529e-03, 6.82469869887525251023e-03, 6.88160659323871527759e-03, 6.93522234316026366108e-03, 6.98554332331408935064e-03, 7.03256835345506155222e-03, 7.07629769010476809138e-03, 7.11673301765615093362e-03, 7.15387743890304877992e-03, 7.18773546500291789924e-03, 7.21831300488032408247e-03, 7.24561735407938580650e-03, 7.26965718307318129604e-03, 7.29044252503875406940e-03, 7.30798476310635155423e-03, 7.32229661709144288850e-03, 7.33339212971884264747e-03, 7.34128665234775375920e-03, 7.34599683020745793799e-03, 7.34754058715258225737e-03, 7.34593710994830336597e-03, 7.34120683209452638829e-03, 7.33337141719967496728e-03, 7.32245374191355016119e-03, 7.30847787843014878861e-03, 7.29146907657012011139e-03, 7.27145374545387114529e-03, 7.24845943477565521351e-03, 7.22251481568945107037e-03, 7.19364966131744686118e-03, 7.16189482689201083881e-03, 7.12728222954231872138e-03, 7.08984482773655864257e-03, 7.04961660039112210374e-03, 7.00663252565801673161e-03, 6.96092855940177307472e-03, 6.91254161337735619636e-03, 6.86150953312070904788e-03, 6.80787107556324582597e-03, 6.75166588638215301593e-03, 6.69293447709806265528e-03, 6.63171820193170571955e-03, 6.56805923443159328512e-03, 6.50200054388410785683e-03, 6.43358587151825807998e-03, 6.36285970651646794888e-03, 6.28986726184373092646e-03, 6.21465444990643503531e-03, 6.13726785805332464285e-03, 6.05775472392990760317e-03, 5.97616291069856791357e-03, 5.89254088213594148099e-03, 5.80693767761965816410e-03, 5.71940288701587758180e-03, 5.62998662548002196115e-03, 5.53873950818146131014e-03, 5.44571262496510149348e-03, 5.35095751496040238082e-03, 5.25452614115022934027e-03, 5.15647086491062122543e-03, 5.05684442053339500839e-03, 4.95569988974256699088e-03, 4.85309067621648645985e-03, 4.74907048012647350216e-03, 4.64369327270371719946e-03, 4.53701327084515566163e-03, 4.42908491176951992635e-03, 4.31996282773485212186e-03, 4.20970182082771107734e-03, 4.09835683783572966160e-03, 3.98598294521311340144e-03, 3.87263530415101094040e-03, 3.75836914576165720403e-03, 3.64323974638825019007e-03, 3.52730240304928790995e-03, 3.41061240902878646739e-03, 3.29322502962129748730e-03, 3.17519547804233142826e-03, 3.05657889151338601694e-03, 2.93743030753160130203e-03, 2.81780464033296821486e-03, 2.69775665755896121301e-03, 2.57734095713514719389e-03, 2.45661194437134461702e-03, 2.33562380929147129019e-03, 2.21443050420279223534e-03, 2.09308572151161147862e-03, 1.97164287179554201940e-03, 1.85015506213867531038e-03, 1.72867507473943343883e-03, 1.60725534579748128607e-03, 1.48594794468843234732e-03, 1.36480455343317803527e-03, 1.24387644646943291808e-03, 1.12321447073277739387e-03, 1.00286902605367005473e-03, 8.82890045877847201225e-04, 7.63326978315998568199e-04, 6.44228767529792380013e-04, 5.25643835459782418976e-04, 4.07620063901896608968e-04, 2.90204776937506045247e-04, 1.73444723723805766706e-04, 5.73860616484244659592e-05, -5.79256601447129809831e-05, -1.72445516855139978872e-04, -2.86129223744603178401e-04, -3.98933151471683798521e-04, -5.10814341036775051638e-04, -6.21730518333987194034e-04, -7.31640108305292775383e-04, -8.40502248693749103720e-04, -9.48276803391555388537e-04, -1.05492437538016840815e-03, -1.16040631925863960139e-03, -1.26468475335793167046e-03, -1.36772257143744795961e-03, -1.46948345396231690001e-03, -1.56993187895820992227e-03, -1.66903313244173671925e-03, -1.76675331842487395514e-03, -1.86305936849075486246e-03, -1.95791905094055886799e-03, -2.05130097950870097026e-03, -2.14317462164644121497e-03, -2.23351030637205421117e-03, -2.32227923168745655630e-03, -2.40945347156019864382e-03, -2.49500598247101752769e-03, -2.57891060952624437755e-03, -2.66114209213571661222e-03, -2.74167606925580006200e-03, -2.82048908419860059130e-03, -2.89755858900738426376e-03, -2.97286294839969704451e-03, -3.04638144327833843006e-03, -3.11809427381250833106e-03, -3.18798256208930414976e-03, -3.25602835433819615824e-03, -3.32221462272949338845e-03, -3.38652526674922864716e-03, -3.44894511415224942069e-03, -3.50945992149601917673e-03, -3.56805637425754813494e-03, -3.62472208653601482564e-03, -3.67944560034401835918e-03, -3.73221638449032109761e-03, -3.78302483305743104600e-03, -3.83186226347697993233e-03, -3.87872091420681094562e-03, -3.92359394201303914723e-03, -3.96647541886111301701e-03, -4.00736032841956212047e-03, -4.04624456218095809173e-03, -4.08312491520368761599e-03, -4.11799908147960237043e-03, -4.15086564893147550587e-03, -4.18172409404541419592e-03, -4.21057477614258761356e-03, -4.23741893129556731340e-03, -4.26225866589410255086e-03, -4.28509694986558761776e-03, -4.30593760955555893838e-03, -4.32478532027361865092e-03, -4.34164559851025946141e-03, -4.35652479383043678834e-03, -4.36943008044940375129e-03, -4.38036944849687272935e-03, -4.38935169497548655082e-03, -4.39638641441941844384e-03, -4.40148398925969356471e-03, -4.40465557990201740657e-03, -4.40591311452397972614e-03, -4.40526927859759102890e-03, -4.40273750414399336200e-03, -4.39833195872687317957e-03, -4.39206753419116562726e-03, -4.38395983515392842489e-03, -4.37402516725410826781e-03, -4.36228052516814471251e-03, -4.34874358039834783829e-03, -4.33343266884099378305e-03, -4.31636677814128347924e-03, -4.29756553484226828249e-03, -4.27704919133478460302e-03, -4.25483861261575103258e-03, -4.23095526286197242544e-03, -4.20542119182673330285e-03, -4.17825902106652539991e-03, -4.14949193000528453179e-03, -4.11914364184333848390e-03, -4.08723840931864319803e-03, -4.05380100032764340012e-03, -4.01885668341308427420e-03, -3.98243121312639048598e-03, -3.94455081527187324114e-03, -3.90524217204034265055e-03, -3.86453240703949710971e-03, -3.82244907022857112119e-03, -3.77902012276458334344e-03, -3.73427392176791782957e-03, -3.68823920501411533363e-03, -3.64094507555994461798e-03, -3.59242098631046497328e-03, -3.54269672453505143905e-03, -3.49180239633924225512e-03, -3.43976841109999795926e-03, -3.38662546587152699790e-03, -3.33240452976901182711e-03, -3.27713682833726460339e-03, -3.22085382791172753977e-03, -3.16358721997866921757e-03, -3.10536890554190866259e-03, -3.04623097950279270868e-03, -2.98620571506079835605e-03, -2.92532554814109750294e-03, -2.86362306185669341502e-03, -2.80113097101106212072e-03, -2.73788210664884781517e-03, -2.67390940066071719841e-03, -2.60924587044905360173e-03, -2.54392460366138209102e-03, -2.47797874299740972931e-03, -2.41144147109654920225e-03, -2.34434599551184728525e-03, -2.27672553377682423265e-03, -2.20861329857108918892e-03, -2.14004248299099744321e-03, -2.07104624593109319652e-03, -2.00165769758243626206e-03, -1.93190988505322330110e-03, -1.86183577811795423693e-03, -1.79146825509988766485e-03, -1.72084008889326943795e-03, -1.64998393312966343087e-03, -1.57893230849462818527e-03, -1.50771758919912264932e-03, -1.43637198961127387532e-03, -1.36492755105304883201e-03, -1.29341612876705033125e-03, -1.22186937905778840625e-03, -1.15031874661246304344e-03, -1.07879545200534983015e-03, -1.00733047939059738862e-03, -9.35954564387392199190e-04, -8.64698182161781326270e-04, -7.93591535709335898878e-04, -7.22664544342259342231e-04, -6.51946832385152269008e-04, -5.81467718082645003419e-04, -5.11256202723101406751e-04, -4.41340959980976682391e-04, -3.71750325482115011495e-04, -3.02512286594312090893e-04, -2.33654472446860898751e-04, -1.65204144181543805632e-04, -9.71881854382950145007e-05, -2.96330930778333087529e-05, 3.74350318557888840534e-05, 1.03990492930665522531e-04, 1.70008006877860913661e-04, 2.35462711895771908792e-04, 3.00330175705594570618e-04, 3.64586403356421419591e-04, 4.28207844777551787079e-04, 4.91171402077186748311e-04, 5.53454436585029511952e-04, 6.15034775638214118408e-04, 6.75890719108685204992e-04, 7.36001045671158494674e-04, 7.95345018810736208159e-04, 8.53902392568785988461e-04, 9.11653417026953884206e-04, 9.68578843528107927274e-04, 1.02465992963409239201e-03, 1.07987844381954517861e-03, 1.13421666990184857697e-03, 1.18765741120669863183e-03, 1.24018399446962118877e-03, 1.29178027347317181048e-03, 1.34243063242041153760e-03, 1.39211998904448393775e-03, 1.44083379745542361494e-03, 1.48855805072399061464e-03, 1.53527928320389963832e-03, 1.58098457259274222282e-03, 1.62566154173287799080e-03, 1.66929836015300469068e-03, 1.71188374535185877309e-03, 1.75340696382495094506e-03, 1.79385783183615881223e-03, 1.83322671593499951850e-03, 1.87150453322187351919e-03, 1.90868275136241117781e-03, 1.94475338835288632730e-03, 1.97970901203875114180e-03, 2.01354273938795765367e-03, 2.04624823552140497340e-03, 2.07781971250251560127e-03, 2.10825192788842950831e-03, 2.13754018304492627786e-03, 2.16568032122775241954e-03, 2.19266872543273649843e-03, 2.21850231601753312277e-03, 2.24317854809751244041e-03, 2.26669540871874157159e-03, 2.28905141381085521987e-03, 2.31024560492300908704e-03, 2.33027754574556848419e-03, 2.34914731842113299123e-03, 2.36685551964774167771e-03, 2.38340325657774047483e-03, 2.39879214251553785076e-03, 2.41302429241780800814e-03, 2.42610231819949092105e-03, 2.43802932384921434983e-03, 2.44880890035772524199e-03, 2.45844512046309356806e-03, 2.46694253321619750424e-03, 2.47430615837057783779e-03, 2.48054148060029584083e-03, 2.48565444354972896537e-03, 2.48965144371932805070e-03, 2.49253932419119233338e-03, 2.49432536819870756192e-03, 2.49501729254406187306e-03, 2.49462324086802481049e-03, 2.49315177677595679884e-03, 2.49061187682437026880e-03, 2.48701292337218105022e-03, 2.48236469730101589823e-03, 2.47667737060877201499e-03, 2.46996149888082565729e-03, 2.46222801364318543901e-03, 2.45348821460201170497e-03, 2.44375376177385136151e-03, 2.43303666751100867299e-03, 2.42134928842652587602e-03, 2.40870431722312039469e-03, 2.39511477443066006163e-03, 2.38059400005651662299e-03, 2.36515564515335941637e-03, 2.34881366330883401689e-03, 2.33158230206161314751e-03, 2.31347609424828503169e-03, 2.29450984928561332182e-03, 2.27469864439260342423e-03, 2.25405781575686164908e-03, 2.23260294964972971082e-03, 2.21034987349466626252e-03, 2.18731464689328946802e-03, 2.16351355261355186160e-03, 2.13896308754443764677e-03, 2.11367995362164717843e-03, 2.08768104872860673846e-03, 2.06098345757712827012e-03, 2.03360444257223585765e-03, 2.00556143466523338278e-03, 1.97687202419953838434e-03, 1.94755395175337346625e-03, 1.91762509898370150235e-03, 1.88710347947544372464e-03, 1.85600722960030926380e-03, 1.82435459938927956557e-03, 1.79216394342290039413e-03, 1.75945371174334418141e-03, 1.72624244079242210488e-03, 1.69254874437936271916e-03, 1.65839130468247841071e-03, 1.62378886328829906069e-03, 1.58876021227249563002e-03, 1.55332418532590395277e-03, 1.51749964892962602506e-03, 1.48130549358308134279e-03, 1.44476062508820820261e-03, 1.40788395589385340219e-03, 1.37069439650360901800e-03, 1.33321084695073701146e-03, 1.29545218834344489506e-03, 1.25743727448406820806e-03, 1.21918492356532437090e-03, 1.18071390994699786103e-03, 1.14204295601606406994e-03, 1.10319072413361980722e-03, 1.06417580867146756643e-03, 1.02501672814153568618e-03, 9.85731917420752321024e-04, 9.46339720074761028661e-04, 9.06858380782653099826e-04, 8.67306037865940180828e-04, 8.27700715924154601863e-04, 7.88060318579825755218e-04, 7.48402621335140681366e-04, 7.08745264542995573667e-04, 6.69105746494616255432e-04, 6.29501416626196083105e-04, 5.89949468846577432593e-04, 5.50466934988384673337e-04, 5.11070678384569518186e-04, 4.71777387572266644969e-04, 4.32603570126133903009e-04, 3.93565546622840108093e-04, 3.54679444738640930936e-04, 3.15961193481461178213e-04, 2.77426517559644606348e-04, 2.39090931888283949464e-04, 2.00969736235134577339e-04, 1.63078010007227617185e-04, 1.25430607179671989044e-04, 8.80421513676910678318e-05, 5.09270310433270975443e-05, 1.40993948977051206995e-05, -2.24268526499689963992e-05, -5.86380557959355767418e-05, -9.45208115468090933828e-05, -1.30061973765318488264e-04, -1.65248657065980185041e-04, -2.00068240560348736649e-04, -2.34508371450769772170e-04, -2.68556968472767403858e-04, -3.02202225185153135114e-04, -3.35432613107714699702e-04, -3.68236884706315019053e-04, -4.00604076224976460123e-04, -4.32523510365022737217e-04, -4.63984798811095579957e-04, -4.94977844604242624843e-04, -5.25492844361963827582e-04, -5.55520290345540247376e-04, -5.85050972374773735341e-04, -6.14075979590610184985e-04, -6.42586702065795259929e-04, -6.70574832264203037069e-04, -6.98032366349193725621e-04, -7.24951605341828033552e-04, -7.51325156129156322866e-04, -7.77145932323820387393e-04, -8.02407154975299293648e-04, -8.27102353133903219450e-04, -8.51225364268258727699e-04, -8.74770334537431802288e-04, -8.97731718918501797773e-04, -9.20104281190827605862e-04, -9.41883093778050233848e-04, -9.63063537449165905750e-04, -9.83641300879760935652e-04, -1.00361238007481306557e-03, -1.02297307765449128208e-03, -1.04172000200423238610e-03, -1.05985006629069969386e-03, -1.07736048734502422482e-03, -1.09424878441514257174e-03, -1.11051277778848088776e-03, -1.12615058728708443934e-03, -1.14116063063659394818e-03, -1.15554162171100749217e-03, -1.16929256865495575027e-03, -1.18241277188544584124e-03, -1.19490182197486941203e-03, -1.20675959741726535404e-03, -1.21798626227982297217e-03, -1.22858226374166065384e-03, -1.23854832952187280184e-03, -1.24788546519901061629e-03, -1.25659495142406364872e-03, -1.26467834102919943727e-03, -1.27213745603428412742e-03, -1.27897438455362244883e-03, -1.28519147760499177768e-03, -1.29079134582336268501e-03, -1.29577685608154116216e-03, -1.30015112802015094483e-03, -1.30391753048923449490e-03, -1.30707967790388737521e-03, -1.30964142651636395419e-03, -1.31160687060702277167e-03, -1.31298033859659005196e-03, -1.31376638908218385492e-03, -1.31396980679961724973e-03, -1.31359559851441281067e-03, -1.31264898884408520024e-03, -1.31113541601419526274e-03, -1.30906052755070225271e-03, -1.30643017591116055581e-03, -1.30325041405731484843e-03, -1.29952749097163636725e-03, -1.29526784712039586857e-03, -1.29047810986578645812e-03, -1.28516508882973415524e-03, -1.27933577121191956356e-03, -1.27299731706460124078e-03, -1.26615705452684046764e-03, -1.25882247502064623448e-03, -1.25100122841167137044e-03, -1.24270111813698665680e-03, -1.23393009630251375940e-03, -1.22469625875265661526e-03, -1.21500784011470538623e-03, -1.20487320882053006339e-03, -1.19430086210808427544e-03, -1.18329942100529298017e-03, -1.17187762529875026674e-03, -1.16004432848981092231e-03, -1.14780849274044756403e-03, -1.13517918381147498753e-03, -1.12216556599544479457e-03, -1.10877689704675665670e-03, -1.09502252311132830878e-03, -1.08091187365826806380e-03, -1.06645445641585442931e-03, -1.05165985231426076241e-03, -1.03653771043727446592e-03, -1.02109774298538512859e-03, -1.00534972025243104707e-03, -9.89303465618205854493e-04, -9.72968850559070386023e-04, -9.56355789678956110487e-04, -9.39474235762757228438e-04, -9.22334174854466432199e-04, -9.04945621361946477522e-04, -8.87318613190598128385e-04, -8.69463206907894578697e-04, -8.51389472940857513876e-04, -8.33107490808391681729e-04, -8.14627344390523211622e-04, -7.95959117236444131487e-04, -7.77112887913182157074e-04, -7.58098725396869001399e-04, -7.38926684508335205812e-04, -7.19606801394884719458e-04, -7.00149089059903611230e-04, -6.80563532942129469604e-04, -6.60860086546161931871e-04, -6.41048667125920334890e-04, -6.21139151422514545521e-04, -6.01141371458319205383e-04, -5.81065110388481308873e-04, -5.60920098411564179222e-04, -5.40716008740645473485e-04, -5.20462453636329636791e-04, -5.00168980502928035153e-04, -4.79845068049252442000e-04, -4.59500122515179752151e-04, -4.39143473965308969373e-04, -4.18784372650737749064e-04, -3.98431985440370181519e-04, -3.78095392322528038760e-04, -3.57783582978218623466e-04, -3.37505453426840712917e-04, -3.17269802745462131330e-04, -2.97085329862539673351e-04, -2.76960630426857884294e-04, -2.56904193752789059696e-04, -2.36924399842341755311e-04, -2.17029516485020210204e-04, -1.97227696436049984184e-04, -1.77526974673721080374e-04, -1.57935265736364822877e-04, -1.38460361139671443579e-04, -1.19109926874780676581e-04, -9.98915009877096604120e-05, -8.08124912404658787314e-05, -6.18801728543761411219e-05, -4.31016863358901726119e-05, -2.44840353852607290751e-05, -6.03408488822807525549e-06, 1.22414410087942923482e-05, 3.03359607401630166279e-05, 4.82430370786643698930e-05, 6.59563788094303331657e-05, 8.34698423199615796228e-05, 1.00777433106333784039e-04, 1.17873307195481496850e-04, 1.34751772483674884346e-04, 1.51407289991337552218e-04, 1.67834475034225882872e-04, 1.84028098311239825778e-04, 1.99983086909011169297e-04, 2.15694525223608961004e-04, 2.31157655799539194473e-04, 2.46367880086458945071e-04, 2.61320759113890506518e-04, 2.76012014084471178285e-04, 2.90437526885940853344e-04, 3.04593340522622661477e-04, 3.18475659466672001308e-04, 3.32080849929764377465e-04, 3.45405440055728798956e-04, 3.58446120034815369788e-04, 3.71199742140139986053e-04, 3.83663320687053425832e-04, 3.95834031916090828447e-04, 4.07709213800306149479e-04, 4.19286365777668133727e-04, 4.30563148409382728376e-04, 4.41537382964913725693e-04, 4.52207050934656925797e-04, 4.62570293470961546242e-04, 4.72625410758635230730e-04, 4.82370861315684551149e-04, 4.91805261225328150740e-04, 5.00927383300294468485e-04, 5.09736156180340470138e-04, 5.18230663364083014855e-04, 5.26410142176160977465e-04, 5.34273982670858136115e-04, 5.41821726473215733132e-04, 5.49053065558819199977e-04, 5.55967840973343140065e-04, 5.62566041493084596781e-04, 5.68847802227587348751e-04, 5.74813403165606124842e-04, 5.80463267665585255090e-04, 5.85797960891953992807e-04, 5.90818188198352634011e-04, 5.95524793459205619046e-04, 5.99918757350793364382e-04, 6.04001195583171897330e-04, 6.07773357084216074402e-04, 6.11236622137123529822e-04, 6.14392500472671181100e-04, 6.17242629317575641247e-04, 6.19788771400296852575e-04, 6.22032812915646266330e-04, 6.23976761449542352556e-04, 6.25622743865282679096e-04, 6.26973004152734866845e-04, 6.28029901241785953013e-04, 6.28795906781460817864e-04, 6.29273602886090081127e-04, 6.29465679849935955126e-04, 6.29374933831637162034e-04, 6.29004264509917614644e-04, 6.28356672711923979618e-04, 6.27435258015602670238e-04, 6.26243216327530610385e-04, 6.24783837437580067548e-04, 6.23060502551831571320e-04, 6.21076681805128117189e-04, 6.18835931754663313292e-04, 6.16341892855999597296e-04, 6.13598286922899423257e-04, 6.10608914572360016171e-04, 6.07377652656219848941e-04, 6.03908451680720608987e-04, 6.00205333215381750360e-04, 5.96272387292547546150e-04, 5.92113769798962869678e-04, 5.87733699860716260477e-04, 5.83136457222883410056e-04, 5.78326379625196070923e-04, 5.73307860175058681823e-04, 5.68085344719199331932e-04, 5.62663329215264671791e-04, 5.57046357104629347515e-04, 5.51239016687691835844e-04, 5.45245938502918582949e-04, 5.39071792710859535452e-04, 5.32721286484389919269e-04, 5.26199161406370888652e-04, 5.19510190875949965511e-04, 5.12659177524647379116e-04, 5.05650950643461694588e-04, 4.98490363622070692395e-04, 4.91182291401325650700e-04, 4.83731627940122419548e-04, 4.76143283697776802978e-04, 4.68422183132952726740e-04, 4.60573262220249240485e-04, 4.52601465985464203410e-04, 4.44511746060588389465e-04, 4.36309058259498746754e-04, 4.27998360175392566791e-04, 4.19584608800889610671e-04, 4.11072758171783069880e-04, 4.02467757035333936928e-04, 3.93774546544049656484e-04, 3.84998057975832470683e-04, 3.76143210481313700240e-04, 3.67214908859312392543e-04, 3.58218041361136620669e-04, 3.49157477524604336044e-04, 3.40038066038525694287e-04, 3.30864632638427479810e-04, 3.21641978034209344382e-04, 3.12374875870502510550e-04, 3.03068070720368721877e-04, 2.93726276113044930307e-04, 2.84354172596324122988e-04, 2.74956405834251703824e-04, 2.65537584740686090270e-04, 2.56102279649332684359e-04, 2.46655020520732712157e-04, 2.37200295186851598233e-04, 2.27742547633623577692e-04, 2.18286176322046336163e-04, 2.08835532548216017655e-04, 1.99394918842769620351e-04, 1.89968587410093434423e-04, 1.80560738607737464008e-04, 1.71175519466368710516e-04, 1.61817022250571095152e-04, 1.52489283060860649410e-04, 1.43196280477158617963e-04, 1.33941934244020521144e-04, 1.24730103997818122337e-04, 1.15564588036148766046e-04, 1.06449122129624024050e-04, 9.73873783762444747338e-05, 8.83829640984437603628e-05, 7.94394207830501368397e-05, 7.05602230641164422306e-05, 6.17487777488439845697e-05, 5.30084228865277819307e-05, 4.43424268807018922721e-05, 3.57539876443504868529e-05, 2.72462317982963840894e-05, 1.88222139126731892130e-05, 1.04849157914673770899e-05, 2.23724580001398245952e-06, -5.91796176458841909860e-06, -1.39779472603022615363e-05, -2.19400262443108254274e-05, -2.98015899747312779436e-05, -3.75601058699388188874e-05, -4.52131179258346812058e-05, -5.27582470911579511194e-05, -6.01931916011169823111e-05, -6.75157272696155086192e-05, -7.47237077402686759994e-05, -8.18150646965978259242e-05, -8.87878080315813176041e-05, -9.56400259770174112402e-05, -1.02369885192932295447e-04, -1.08975630817447491838e-04, -1.15455586477445233109e-04, -1.21808154260462635915e-04, -1.28031814648165977134e-04, -1.34125126411867404445e-04, -1.40086726470483718130e-04, -1.45915329711446663599e-04, -1.51609728774925367391e-04, -1.57168793801964925671e-04, -1.62591472146915872604e-04, -1.67876788054762332352e-04, -1.73023842303760092562e-04, -1.78031811814023872061e-04, -1.82899949222519527144e-04, -1.87627582425063416539e-04, -1.92214114085866635134e-04, -1.96659021115234305434e-04, -2.00961854115964548605e-04, -2.05122236799067813760e-04, -2.09139865369424642018e-04, -2.13014507881963919287e-04, -2.16746003569016719827e-04, -2.20334262139455170628e-04, -2.23779263050288623272e-04, -2.27081054751326671731e-04, -2.30239753903598189230e-04, -2.33255544572162539776e-04, -2.36128677394024743099e-04, -2.38859468721759089912e-04, -2.41448299743606627134e-04, -2.43895615580664562507e-04, -2.46201924361897988517e-04, -2.48367796277648787261e-04, -2.50393862612362249915e-04, -2.52280814757210175570e-04, -2.54029403203337271477e-04, -2.55640436516424906718e-04, -2.57114780293308988878e-04, -2.58453356101321892260e-04, -2.59657140401130335366e-04, -2.60727163453730896234e-04, -2.61664508212373382850e-04, -2.62470309200077975623e-04, -2.63145751373508769710e-04, -2.63692068973905575490e-04, -2.64110544365773612825e-04, -2.64402506864084673854e-04, -2.64569331550674807438e-04, -2.64612438080565591254e-04, -2.64533289478916812908e-04, -2.64333390929326621406e-04, -2.64014288554176887285e-04, -2.63577568187730454374e-04, -2.63024854142685936189e-04, -2.62357807970878796362e-04, -2.61578127218826830911e-04, -2.60687544178804346540e-04, -2.59687824636131118095e-04, -2.58580766613355161020e-04, -2.57368199111998000473e-04, -2.56051980852535184582e-04, -2.54633999013272917245e-04, -2.53116167968770410229e-04, -2.51500428028467203686e-04, -2.49788744176148520739e-04, -2.47983104810888498049e-04, -2.46085520490098991209e-04, -2.44098022675305284133e-04, -2.42022662481256641692e-04, -2.39861509428983846149e-04, -2.37616650203396260988e-04, -2.35290187416002671578e-04, -2.32884238373345356290e-04, -2.30400933851706944807e-04, -2.27842416878660760553e-04, -2.25210841522004905167e-04, -2.22508371686640725982e-04, -2.19737179919906623887e-04, -2.16899446225907947382e-04, -2.13997356889345798732e-04, -2.11033103309352538255e-04, -2.08008880843819519632e-04, -2.04926887664708660573e-04, -2.01789323624807442155e-04, -1.98598389136399967663e-04, -1.95356284062287273917e-04, -1.92065206619610498147e-04, -1.88727352296894345393e-04, -1.85344912784731391314e-04, -1.81920074920499755819e-04, -1.78455019647530454055e-04, -1.74951920989073971512e-04, -1.71412945037461607323e-04, -1.67840248958807175192e-04, -1.64235980013589989322e-04, -1.60602274593463965847e-04, -1.56941257274607583660e-04, -1.53255039887926981963e-04, -1.49545720606400077326e-04, -1.45815383049865629223e-04, -1.42066095407511174204e-04, -1.38299909578337953649e-04, -1.34518860329830815736e-04, -1.30724964475093245915e-04, -1.26920220068654472992e-04, -1.23106605621173758290e-04, -1.19286079333219134950e-04, -1.15460578348350841244e-04, -1.11632018025632952099e-04, -1.07802291231779830637e-04, -1.03973267653065606659e-04, -1.00146793127148565233e-04, -9.63246889949230804435e-05, -9.25087514725346873358e-05, -8.87007510436452450671e-05, -8.49024318720545515026e-05, -8.11155112347393549661e-05, -7.73416789754019609908e-05, -7.35825969785674924512e-05, -6.98398986642887023612e-05, -6.61151885034750767074e-05, -6.24100415538899748772e-05, -5.87260030168200428450e-05, -5.50645878143974986741e-05, -5.14272801876128782695e-05, -4.78155333149380714058e-05, -4.42307689515766361233e-05, -4.06743770892715146635e-05, -3.71477156366324749162e-05, -3.36521101199027279356e-05, -3.01888534041130525139e-05, -2.67592054345224943665e-05, -2.33643929982665948157e-05, -2.00056095060906951114e-05, -1.66840147940797201324e-05, -1.34007349452439661363e-05, -1.01568621308437851693e-05, -6.95345447128813701427e-06, -3.79153591650250810366e-06, -6.72096145553293655593e-07, 2.40390951459279597616e-06, 5.43556015137456058426e-06, 8.42196931017640123499e-06, 1.13622850193110927676e-05, 1.42556897966238257746e-05, 1.71014006379341248229e-05, 1.98986689875390831126e-05, 2.26467806909793172563e-05, 2.53450559303131682314e-05, 2.79928491421220740245e-05, 3.05895489185053302676e-05, 3.31345778912925430443e-05, 3.56273925997451632237e-05, 3.80674833419947510364e-05, 4.04543740105068599521e-05, 4.27876219118044463113e-05, 4.50668175707753267513e-05, 4.72915845198089502860e-05, 4.94615790730713200283e-05, 5.15764900862005805371e-05, 5.36360387017334339240e-05, 5.56399780805481871900e-05, 5.75880931196438774090e-05, 5.94802001565561985590e-05, 6.13161466607366493955e-05, 6.30958109121965409621e-05, 6.48191016677504891876e-05, 6.64859578151715343739e-05, 6.80963480156043240521e-05, 6.96502703345347587470e-05, 7.11477518616810702089e-05, 7.25888483201263885920e-05, 7.39736436650163245096e-05, 7.53022496721903708853e-05, 7.65748055170595645635e-05, 7.77914773440878826866e-05, 7.89524578272120806021e-05, 8.00579657215541123884e-05, 8.11082454067584148567e-05, 8.21035664223097817662e-05, 8.30442229951717527346e-05, 8.39305335600990616227e-05, 8.47628402729624154692e-05, 8.55415085174379832356e-05, 8.62669264054029689666e-05, 8.69395042713942022743e-05, 8.75596741614536786501e-05, 8.81278893167311284636e-05, 8.86446236521661512422e-05, 8.91103712306026604075e-05, 8.95256457326717546962e-05, 8.98909799227875892661e-05, 9.02069251115862640782e-05, 9.04740506151490363976e-05, 9.06929432113401867103e-05, 9.08642065935940279782e-05, 9.09884608224771455898e-05, 9.10663417753510066833e-05, 9.10985005944656069544e-05, 9.10856031337957275460e-05, 9.10283294049456589850e-05, 9.09273730224310103125e-05, 9.07834406486567112131e-05, 9.05972514388884682737e-05, 9.03695364865346147717e-05, 9.01010382690298824038e-05, 8.97925100946232214449e-05, 8.94447155503604388049e-05, 8.90584279515538464710e-05, 8.86344297930203114553e-05, 8.81735122023717546660e-05, 8.76764743956322256668e-05, 8.71441231354561004216e-05, 8.65772721922116491981e-05, 8.59767418081955635050e-05, 8.53433581652348287718e-05, 8.46779528559294970011e-05, 8.39813623587842351167e-05, 8.32544275174723505482e-05, 8.24979930244696123580e-05, 8.17129069092911340059e-05, 8.09000200315580515319e-05, 8.00601855791177764851e-05, 7.91942585714318722121e-05, 7.83030953684469709260e-05, 7.73875531851490379041e-05, 7.64484896120066966278e-05, 7.54867621414943666810e-05, 7.45032277008856680736e-05, 7.34987421914997258445e-05, 7.24741600345781298914e-05, 7.14303337239639759421e-05, 7.03681133857495075701e-05, 6.92883463450485250238e-05, 6.81918767000556897513e-05, 6.70795449035298084342e-05, 6.59521873518545653477e-05, 6.48106359818019012913e-05, 6.36557178751403541801e-05, 6.24882548712000070136e-05, 6.13090631875229413088e-05, 6.01189530487050480105e-05, 5.89187283235398522627e-05, 5.77091861705600261078e-05, 5.64911166920768371556e-05, 5.52653025968012133018e-05, 5.40325188711331935503e-05, 5.27935324591918643858e-05, 5.15491019516612150597e-05, 5.02999772835162253098e-05, 4.90468994406823114189e-05, 4.77906001756943685883e-05, 4.65318017323872241855e-05, 4.52712165796745444508e-05, 4.40095471544385224527e-05, 4.27474856135762158195e-05, 4.14857135952114382585e-05, 4.02249019891050019768e-05, 3.89657107162695045101e-05, 3.77087885178019617646e-05, 3.64547727529321324196e-05, 3.52042892062907349744e-05, 3.39579519043854685862e-05, 3.27163629412759540162e-05, 3.14801123134230239524e-05, 3.02497777637023744978e-05, 2.90259246345387218443e-05, 2.78091057301432964695e-05, 2.65998611878025348972e-05, 2.53987183581919854364e-05, 2.42061916946511448772e-05, 2.30227826513813061706e-05, 2.18489795905047869758e-05, 2.06852576979222047276e-05, 1.95320789079097866306e-05, 1.83898918363816234168e-05, 1.72591317227478167385e-05, 1.61402203802856600485e-05, 1.50335661549492530784e-05, 1.39395638925266073790e-05, 1.28585949140593193966e-05, 1.17910269994264146578e-05, 1.07372143790027249535e-05, 9.69749773328629209753e-06, 8.67220420039572420566e-06, 7.66164739132314657512e-06, 6.66612741284622437347e-06, 5.68593089796976951548e-06, 4.72133104379410701050e-06, 3.77258765668374723169e-06, 2.83994720461857994069e-06, 1.92364287659795633360e-06, 1.02389464897677183691e-06, 1.40909358598783243636e-07, -7.25119217400925882488e-07, -1.57401027526573751796e-06, -2.40559589188401177682e-06, -3.21972092580435969379e-06, -4.01624291213239929447e-06, -4.79503195145223449727e-06, -5.55597059291959898474e-06, -6.29895371166915398527e-06, -7.02388838068995278969e-06, -7.73069373730662337714e-06, -8.41930084443043260571e-06, -9.08965254672049638874e-06, -9.74170332181420186798e-06, -1.03754191267770145960e-05, -1.09907772399306088372e-05, -1.15877660982095854786e-05, -1.21663851302071818753e-05, -1.27266445850638015879e-05, -1.32685653573596831328e-05, -1.37921788081646564831e-05, -1.42975265824070264185e-05, -1.47846604227169150120e-05, -1.52536419799077777845e-05, -1.57045426202454864190e-05, -1.61374432296745794440e-05, -1.65524340151509907705e-05, -1.69496143032443776877e-05, -1.73290923361651281922e-05, -1.76909850653765942752e-05, -1.80354179429455134585e-05, -1.83625247107888849940e-05, -1.86724471879742999741e-05, -1.89653350562250020523e-05, -1.92413456437866339777e-05, -1.95006437078064384194e-05, -1.97434012153796016272e-05, -1.99697971234102591856e-05, -2.01800171574394671614e-05, -2.03742535895865872536e-05, -2.05527050157544749519e-05, -2.07155761322383869926e-05, -2.08630775118898238230e-05, -2.09954253799722451970e-05, -2.11128413898529763743e-05, -2.12155523986690494219e-05, -2.13037902431062623279e-05, -2.13777915154254429865e-05, -2.14377973398712400380e-05, -2.14840531495946086989e-05, -2.15168084642204138245e-05, -2.15363166681862903517e-05, -2.15428347899803886579e-05, -2.15366232824005027408e-05, -2.15179458039577262574e-05, -2.14870690015422825217e-05, -2.14442622944694083432e-05, -2.13897976600211963056e-05, -2.13239494205938423077e-05, -2.12469940325636042692e-05, -2.11592098769767039874e-05, -2.10608770521689021838e-05, -2.09522771684173563140e-05, -2.08336931447246940868e-05, -2.07054090078323760555e-05, -2.05677096935581607638e-05, -2.04208808505498906150e-05, -2.02652086465450858026e-05, -2.01009795772225878085e-05, -1.99284802777307897448e-05, -1.97479973369733553508e-05, -1.95598171147313057406e-05, -1.93642255616965921713e-05, -1.91615080424908975211e-05, -1.89519491617392180451e-05, -1.87358325932659067312e-05, -1.85134409124775290410e-05, -1.82850554319945745078e-05, -1.80509560405904254164e-05, -1.78114210454942761765e-05, -1.75667270181107023892e-05, -1.73171486432067083623e-05, -1.70629585716134836285e-05, -1.68044272764881711800e-05, -1.65418229131769521309e-05, -1.62754111827191523261e-05, -1.60054551990284544996e-05, -1.57322153597849753270e-05, -1.54559492210684566130e-05, -1.51769113757617390406e-05, -1.48953533357483810943e-05, -1.46115234179280960335e-05, -1.43256666340692667526e-05, -1.40380245845161517285e-05, -1.37488353557644599467e-05, -1.34583334219182035850e-05, -1.31667495500361276861e-05, -1.28743107093750131593e-05, -1.25812399845332226092e-05, -1.22877564924967183814e-05, -1.19940753035859587103e-05, -1.17004073663007361519e-05, -1.14069594360560160192e-05, -1.11139340078022052344e-05, -1.08215292525168970740e-05, -1.05299389575568482923e-05, -1.02393524708539662493e-05, -9.94995464893742348120e-06, -9.66192580876271611343e-06, -9.37544168332491989210e-06, -9.09067338103246418157e-06, -8.80778734881422739372e-06, -8.52694533893248795902e-06, -8.24830437947059051977e-06, -7.97201674846333152320e-06, -7.69822995163491404110e-06, -7.42708670370925303302e-06, -7.15872491325360909230e-06, -6.89327767101633304933e-06, -6.63087324171573705124e-06, -6.37163505923899323223e-06, -6.11568172520321447157e-06, -5.86312701083429459631e-06, -5.61407986211404469277e-06, -5.36864440814655013182e-06, -5.12691997269171846217e-06, -4.88900108881444233564e-06, -4.65497751659457443244e-06, -4.42493426384305196255e-06, -4.19895160976678087265e-06, -3.97710513152554464493e-06, -3.75946573362158312445e-06, -3.54609968006129461300e-06, -3.33706862922910230812e-06, -3.13242967141053148128e-06, -2.93223536890220278037e-06, -2.73653379864365903313e-06, -2.54536859730841838172e-06, -2.35877900878616331091e-06, -2.17679993399191934131e-06, -1.99946198293410626841e-06, -1.82679152897453787459e-06, -1.65881076521146377169e-06, -1.49553776291791911430e-06, -1.33698653196547020166e-06, -1.18316708316432299485e-06, -1.03408549244911473199e-06, -8.89743966841013678409e-07, -7.50140912114827378233e-07, -6.15271002100918799020e-07, -4.85125249549975873449e-07, -3.59691078491283933177e-07, -2.38952398011216803052e-07, -1.22889677382464548894e-07, 0.0 /* Need a final zero coefficient */ } } ; /* fastest_coeffs */ bplaum-gavl-b9385e3/gavl/libsamplerate/float_cast.h000066400000000000000000000146011513252040200223260ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ /* Taken from libsamplerate, original copyright below */ /* ** Copyright (C) 2001-2008 Erik de Castro Lopo ** ** This program 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; either version 2.1 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 Lesser General Public License for more details. ** ** You should have received a copy of the GNU Lesser General Public License ** along with this program; if not, write to the Free Software ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ /* Version 1.4 */ #ifndef FLOAT_CAST_HEADER #define FLOAT_CAST_HEADER /*============================================================================ ** On Intel Pentium processors (especially PIII and probably P4), converting ** from float to int is very slow. To meet the C specs, the code produced by ** most C compilers targeting Pentium needs to change the FPU rounding mode ** before the float to int conversion is performed. ** ** Changing the FPU rounding mode causes the FPU pipeline to be flushed. It ** is this flushing of the pipeline which is so slow. ** ** Fortunately the ISO C99 specifications define the functions lrint, lrintf, ** llrint and llrintf which fix this problem as a side effect. ** ** On Unix-like systems, the configure process should have detected the ** presence of these functions. If they weren't found we have to replace them ** here with a standard C cast. */ /* ** The C99 prototypes for lrint and lrintf are as follows: ** ** long int lrintf (float x) ; ** long int lrint (double x) ; */ #include "config.h" /* ** The presence of the required functions are detected during the configure ** process and the values HAVE_LRINT and HAVE_LRINTF are set accordingly in ** the config.h file. */ #define HAVE_LRINT_REPLACEMENT 0 #if (HAVE_LRINT && HAVE_LRINTF) /* ** These defines enable functionality introduced with the 1999 ISO C ** standard. They must be defined before the inclusion of math.h to ** engage them. If optimisation is enabled, these functions will be ** inlined. With optimisation switched off, you have to link in the ** maths library using -lm. */ #define _ISOC9X_SOURCE 1 #define _ISOC99_SOURCE 1 #define __USE_ISOC9X 1 #define __USE_ISOC99 1 #include #elif (defined (__CYGWIN__)) #include #undef HAVE_LRINT_REPLACEMENT #define HAVE_LRINT_REPLACEMENT 1 #undef lrint #undef lrintf #define lrint double2int #define lrintf float2int /* ** The native CYGWIN lrint and lrintf functions are buggy: ** http://sourceware.org/ml/cygwin/2005-06/msg00153.html ** http://sourceware.org/ml/cygwin/2005-09/msg00047.html ** and slow. ** These functions (pulled from the Public Domain MinGW math.h header) ** replace the native versions. */ static inline long double2int (double in) { long retval ; __asm__ __volatile__ ( "fistpl %0" : "=m" (retval) : "t" (in) : "st" ) ; return retval ; } /* double2int */ static inline long float2int (float in) { long retval ; __asm__ __volatile__ ( "fistpl %0" : "=m" (retval) : "t" (in) : "st" ) ; return retval ; } /* float2int */ #elif (defined (WIN32) || defined (_WIN32)) #undef HAVE_LRINT_REPLACEMENT #define HAVE_LRINT_REPLACEMENT 1 #include /* ** Win32 doesn't seem to have these functions. ** Therefore implement inline versions of these functions here. */ __inline long int lrint (double flt) { int intgr ; _asm { fld flt fistp intgr } ; return intgr ; } __inline long int lrintf (float flt) { int intgr ; _asm { fld flt fistp intgr } ; return intgr ; } #elif (defined (__MWERKS__) && defined (macintosh)) /* This MacOS 9 solution was provided by Stephane Letz */ #undef HAVE_LRINT_REPLACEMENT #define HAVE_LRINT_REPLACEMENT 1 #include #undef lrint #undef lrintf #define lrint double2int #define lrintf float2int inline int float2int (register float in) { long res [2] ; asm { fctiw in, in stfd in, res } return res [1] ; } /* float2int */ inline int double2int (register double in) { long res [2] ; asm { fctiw in, in stfd in, res } return res [1] ; } /* double2int */ #elif (defined (__MACH__) && defined (__APPLE__)) /* For Apple MacOSX. */ #undef HAVE_LRINT_REPLACEMENT #define HAVE_LRINT_REPLACEMENT 1 #include #undef lrint #undef lrintf #define lrint double2int #define lrintf float2int inline static long float2int (register float in) { int res [2] ; __asm__ __volatile__ ( "fctiw %1, %1\n\t" "stfd %1, %0" : "=m" (res) /* Output */ : "f" (in) /* Input */ : "memory" ) ; return res [1] ; } /* lrintf */ inline static long double2int (register double in) { int res [2] ; __asm__ __volatile__ ( "fctiw %1, %1\n\t" "stfd %1, %0" : "=m" (res) /* Output */ : "f" (in) /* Input */ : "memory" ) ; return res [1] ; } /* lrint */ #else #ifndef __sgi #warning "Don't have the functions lrint() and lrintf()." #warning "Replacing these functions with a standard C cast." #endif #include #define lrint(dbl) ((long) (dbl)) #define lrintf(flt) ((long) (flt)) #endif #endif /* FLOAT_CAST_HEADER */ bplaum-gavl-b9385e3/gavl/libsamplerate/high_qual_coeffs.h000066400000000000000000430326771513252040200235210ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ /* Taken from libsamplerate, original copyright below */ /* ** Copyright (C) 2007-2008 Erik de Castro Lopo ** ** This program is free software; you can redistribute it and/or modify ** it under the terms of the GNU General Public License as published by ** the Free Software Foundation; either version 2 of the License, or ** (at your option) any later version. ** ** This program is distributed in the hope that it will be useful, ** but WITHOUT ANY WARRANTY; without even the implied warranty of ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ** GNU General Public License for more details. ** ** You should have received a copy of the GNU General Public License ** along with this program; if not, write to the Free Software ** Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA. */ /* ** This code is part of Secret Rabibt Code aka libsamplerate. A commercial ** use license for this code is available, please see: ** http://www.mega-nerd.com/SRC/procedure.html */ /* ** f = make_src_filter (cycles = 69, incr = 2381, atten = 160.000000) ** ** Stop band atten. : 154.67 dB ** -3dB band width : 1.922 ** half length : 340238 ** increment : 2381 */ static const struct slow_high_qual_coeffs_s { int increment ; coeff_t coeffs [340239] ; } slow_high_qual_coeffs = { 2381, { 9.657284235393746030e-01, 9.657281621412726613e-01, 9.657273779472256292e-01, 9.657260709579943425e-01, 9.657242411748556687e-01, 9.657218885995935143e-01, 9.657190132344973810e-01, 9.657156150823710261e-01, 9.657116941465326843e-01, 9.657072504307945282e-01, 9.657022839394945324e-01, 9.656967946774737133e-01, 9.656907826500827907e-01, 9.656842478631756377e-01, 9.656771903231314846e-01, 9.656696100368233893e-01, 9.656615070116398858e-01, 9.656528812554828756e-01, 9.656437327767599665e-01, 9.656340615843858055e-01, 9.656238676877905158e-01, 9.656131510969064857e-01, 9.656019118221832453e-01, 9.655901498745762535e-01, 9.655778652655470085e-01, 9.655650580070698208e-01, 9.655517281116315909e-01, 9.655378755922249256e-01, 9.655235004623492490e-01, 9.655086027360166856e-01, 9.654931824277518393e-01, 9.654772395525847983e-01, 9.654607741260518017e-01, 9.654437861642095609e-01, 9.654262756836061721e-01, 9.654082427013159773e-01, 9.653896872349128078e-01, 9.653706093024861934e-01, 9.653510089226313706e-01, 9.653308861144500597e-01, 9.653102408975589022e-01, 9.652890732920780259e-01, 9.652673833186427022e-01, 9.652451709983904671e-01, 9.652224363529754436e-01, 9.651991794045572393e-01, 9.651754001757993917e-01, 9.651510986898800271e-01, 9.651262749704926369e-01, 9.651009290418218756e-01, 9.650750609285785320e-01, 9.650486706559762151e-01, 9.650217582497327973e-01, 9.649943237360825155e-01, 9.649663671417652022e-01, 9.649378884940221779e-01, 9.649088878206207864e-01, 9.648793651498198676e-01, 9.648493205103967352e-01, 9.648187539316318562e-01, 9.647876654433195087e-01, 9.647560550757575681e-01, 9.647239228597564997e-01, 9.646912688266315872e-01, 9.646580930082109262e-01, 9.646243954368293183e-01, 9.645901761453221646e-01, 9.645554351670501125e-01, 9.645201725358665268e-01, 9.644843882861413586e-01, 9.644480824527474905e-01, 9.644112550710675080e-01, 9.643739061770016940e-01, 9.643360358069392735e-01, 9.642976439977980485e-01, 9.642587307869880942e-01, 9.642192962124369604e-01, 9.641793403125725748e-01, 9.641388631263365649e-01, 9.640978646931779306e-01, 9.640563450530537093e-01, 9.640143042464200951e-01, 9.639717423142621922e-01, 9.639286592980441659e-01, 9.638850552397599802e-01, 9.638409301818994246e-01, 9.637962841674682091e-01, 9.637511172399710890e-01, 9.637054294434274082e-01, 9.636592208223616618e-01, 9.636124914218008319e-01, 9.635652412872870443e-01, 9.635174704648616917e-01, 9.634691790010806445e-01, 9.634203669430008166e-01, 9.633710343381919339e-01, 9.633211812347238778e-01, 9.632708076811813402e-01, 9.632199137266507227e-01, 9.631684994207244666e-01, 9.631165648135027180e-01, 9.630641099555957707e-01, 9.630111348981192920e-01, 9.629576396926903259e-01, 9.629036243914399495e-01, 9.628490890469985075e-01, 9.627940337125093784e-01, 9.627384584416203150e-01, 9.626823632884765614e-01, 9.626257483077473864e-01, 9.625686135545918898e-01, 9.625109590846846475e-01, 9.624527849542000579e-01, 9.623940912198210018e-01, 9.623348779387403962e-01, 9.622751451686527568e-01, 9.622148929677565299e-01, 9.621541213947606419e-01, 9.620928305088780608e-01, 9.620310203698192453e-01, 9.619686910378176803e-01, 9.619058425735953488e-01, 9.618424750383863797e-01, 9.617785884939332730e-01, 9.617141830024799054e-01, 9.616492586267730847e-01, 9.615838154300708762e-01, 9.615178534761319451e-01, 9.614513728292150008e-01, 9.613843735540962276e-01, 9.613168557160521877e-01, 9.612488193808526038e-01, 9.611802646147833418e-01, 9.611111914846396376e-01, 9.610416000577068907e-01, 9.609714904017852000e-01, 9.609008625851720442e-01, 9.608297166766762709e-01, 9.607580527456042185e-01, 9.606858708617690423e-01, 9.606131710954939340e-01, 9.605399535175953574e-01, 9.604662181993973702e-01, 9.603919652127322903e-01, 9.603171946299289274e-01, 9.602419065238272378e-01, 9.601661009677665559e-01, 9.600897780355864830e-01, 9.600129378016331039e-01, 9.599355803407596532e-01, 9.598577057283178560e-01, 9.597793140401642553e-01, 9.597004053526501099e-01, 9.596209797426437094e-01, 9.595410372875099458e-01, 9.594605780651147553e-01, 9.593796021538247842e-01, 9.592981096325121637e-01, 9.592161005805541762e-01, 9.591335750778278157e-01, 9.590505332047059017e-01, 9.589669750420790617e-01, 9.588829006713240899e-01, 9.587983101743289271e-01, 9.587132036334775620e-01, 9.586275811316626871e-01, 9.585414427522702674e-01, 9.584547885791959709e-01, 9.583676186968306254e-01, 9.582799331900714312e-01, 9.581917321443151891e-01, 9.581030156454554136e-01, 9.580137837798901046e-01, 9.579240366345228574e-01, 9.578337742967500956e-01, 9.577429968544788341e-01, 9.576517043961021436e-01, 9.575598970105301255e-01, 9.574675747871574938e-01, 9.573747378158925514e-01, 9.572813861871392049e-01, 9.571875199917972976e-01, 9.570931393212775973e-01, 9.569982442674722645e-01, 9.569028349227920449e-01, 9.568069113801369596e-01, 9.567104737329119590e-01, 9.566135220750197066e-01, 9.565160565008583582e-01, 9.564180771053286678e-01, 9.563195839838368739e-01, 9.562205772322724950e-01, 9.561210569470401932e-01, 9.560210232250334617e-01, 9.559204761636538317e-01, 9.558194158607901114e-01, 9.557178424148340401e-01, 9.556157559246800659e-01, 9.555131564897146879e-01, 9.554100442098283352e-01, 9.553064191854077070e-01, 9.552022815173281112e-01, 9.550976313069821089e-01, 9.549924686562412113e-01, 9.548867936674824142e-01, 9.547806064435864215e-01, 9.546739070879148858e-01, 9.545666957043427159e-01, 9.544589723972358719e-01, 9.543507372714538084e-01, 9.542419904323594659e-01, 9.541327319858051714e-01, 9.540229620381482922e-01, 9.539126806962340277e-01, 9.538018880674121736e-01, 9.536905842595208016e-01, 9.535787693809015808e-01, 9.534664435403855665e-01, 9.533536068473057457e-01, 9.532402594114883776e-01, 9.531264013432507731e-01, 9.530120327534097324e-01, 9.528971537532816560e-01, 9.527817644546733300e-01, 9.526658649698831471e-01, 9.525494554117108770e-01, 9.524325358934497832e-01, 9.523151065288876227e-01, 9.521971674323029822e-01, 9.520787187184749367e-01, 9.519597605026706155e-01, 9.518402929006573032e-01, 9.517203160286913377e-01, 9.515998300035271029e-01, 9.514788349424085911e-01, 9.513573309630783958e-01, 9.512353181837659433e-01, 9.511127967232019254e-01, 9.509897667006035338e-01, 9.508662282356856732e-01, 9.507421814486547440e-01, 9.506176264602070880e-01, 9.504925633915326522e-01, 9.503669923643195405e-01, 9.502409135007438001e-01, 9.501143269234706423e-01, 9.499872327556601048e-01, 9.498596311209690501e-01, 9.497315221435412846e-01, 9.496029059480096679e-01, 9.494737826595053276e-01, 9.493441524036435597e-01, 9.492140153065377062e-01, 9.490833714947857214e-01, 9.489522210954840498e-01, 9.488205642362114167e-01, 9.486884010450450377e-01, 9.485557316505456305e-01, 9.484225561817705152e-01, 9.482888747682625130e-01, 9.481546875400582719e-01, 9.480199946276800516e-01, 9.478847961621443829e-01, 9.477490922749530755e-01, 9.476128830981019879e-01, 9.474761687640710361e-01, 9.473389494058349625e-01, 9.472012251568542318e-01, 9.470629961510762529e-01, 9.469242625229385979e-01, 9.467850244073708899e-01, 9.466452819397860319e-01, 9.465050352560934188e-01, 9.463642844926742903e-01, 9.462230297864152595e-01, 9.460812712746790032e-01, 9.459390090953243568e-01, 9.457962433866925478e-01, 9.456529742876100819e-01, 9.455092019373962930e-01, 9.453649264758512416e-01, 9.452201480432647074e-01, 9.450748667804192982e-01, 9.449290828285694666e-01, 9.447827963294702647e-01, 9.446360074253569161e-01, 9.444887162589485907e-01, 9.443409229734541777e-01, 9.441926277125608502e-01, 9.440438306204562702e-01, 9.438945318418000552e-01, 9.437447315217356580e-01, 9.435944298059016910e-01, 9.434436268404174930e-01, 9.432923227718813530e-01, 9.431405177473851653e-01, 9.429882119144973318e-01, 9.428354054212751967e-01, 9.426820984162567196e-01, 9.425282910484674703e-01, 9.423739834674114135e-01, 9.422191758230826775e-01, 9.420638682659502328e-01, 9.419080609469753229e-01, 9.417517540175931456e-01, 9.415949476297296172e-01, 9.414376419357861625e-01, 9.412798370886529264e-01, 9.411215332416955626e-01, 9.409627305487694438e-01, 9.408034291642040081e-01, 9.406436292428169699e-01, 9.404833309399003305e-01, 9.403225344112365880e-01, 9.401612398130799741e-01, 9.399994473021728858e-01, 9.398371570357327842e-01, 9.396743691714632973e-01, 9.395110838675428955e-01, 9.393473012826352164e-01, 9.391830215758785183e-01, 9.390182449068976700e-01, 9.388529714357893852e-01, 9.386872013231379874e-01, 9.385209347299989791e-01, 9.383541718179143620e-01, 9.381869127488983162e-01, 9.380191576854500779e-01, 9.378509067905411722e-01, 9.376821602276276257e-01, 9.375129181606374207e-01, 9.373431807539793770e-01, 9.371729481725471489e-01, 9.370022205816952443e-01, 9.368309981472741077e-01, 9.366592810355977017e-01, 9.364870694134611595e-01, 9.363143634481371214e-01, 9.361411633073783989e-01, 9.359674691594098705e-01, 9.357932811729314793e-01, 9.356185995171232284e-01, 9.354434243616362998e-01, 9.352677558766031574e-01, 9.350915942326247787e-01, 9.349149396007848667e-01, 9.347377921526353051e-01, 9.345601520602059287e-01, 9.343820194960039682e-01, 9.342033946330091654e-01, 9.340242776446711082e-01, 9.338446687049196671e-01, 9.336645679881537818e-01, 9.334839756692465684e-01, 9.333028919235504262e-01, 9.331213169268864904e-01, 9.329392508555458541e-01, 9.327566938862953405e-01, 9.325736461963779478e-01, 9.323901079635061873e-01, 9.322060793658610844e-01, 9.320215605820983962e-01, 9.318365517913500540e-01, 9.316510531732123956e-01, 9.314650649077598210e-01, 9.312785871755304701e-01, 9.310916201575419882e-01, 9.309041640352744285e-01, 9.307162189906851291e-01, 9.305277852061962784e-01, 9.303388628647056846e-01, 9.301494521495776713e-01, 9.299595532446444102e-01, 9.297691663342060320e-01, 9.295782916030458365e-01, 9.293869292364017598e-01, 9.291950794199792529e-01, 9.290027423399646045e-01, 9.288099181830054007e-01, 9.286166071362148555e-01, 9.284228093871772503e-01, 9.282285251239477120e-01, 9.280337545350427764e-01, 9.278384978094554869e-01, 9.276427551366295265e-01, 9.274465267064935237e-01, 9.272498127094340736e-01, 9.270526133362979593e-01, 9.268549287784162427e-01, 9.266567592275679610e-01, 9.264581048760049953e-01, 9.262589659164447431e-01, 9.260593425420762248e-01, 9.258592349465415428e-01, 9.256586433239528677e-01, 9.254575678688906626e-01, 9.252560087763935792e-01, 9.250539662419682285e-01, 9.248514404615867379e-01, 9.246484316316836427e-01, 9.244449399491529995e-01, 9.242409656113582672e-01, 9.240365088161166529e-01, 9.238315697617236477e-01, 9.236261486469230508e-01, 9.234202456709258433e-01, 9.232138610334088558e-01, 9.230069949345034441e-01, 9.227996475748112548e-01, 9.225918191553871273e-01, 9.223835098777541930e-01, 9.221747199438902198e-01, 9.219654495562363827e-01, 9.217556989177015936e-01, 9.215454682316379653e-01, 9.213347577018751178e-01, 9.211235675326947536e-01, 9.209118979288358764e-01, 9.206997490954993424e-01, 9.204871212383488599e-01, 9.202740145634997759e-01, 9.200604292775332871e-01, 9.198463655874830058e-01, 9.196318237008452856e-01, 9.194168038255701170e-01, 9.192013061700690102e-01, 9.189853309432080009e-01, 9.187688783543098703e-01, 9.185519486131602518e-01, 9.183345419299963064e-01, 9.181166585155100535e-01, 9.178982985808520345e-01, 9.176794623376320903e-01, 9.174601499979091468e-01, 9.172403617742048709e-01, 9.170200978794887936e-01, 9.167993585271924095e-01, 9.165781439311949663e-01, 9.163564543058342338e-01, 9.161342898659046163e-01, 9.159116508266519352e-01, 9.156885374037720959e-01, 9.154649498134176389e-01, 9.152408882721990713e-01, 9.150163529971705456e-01, 9.147913442058479561e-01, 9.145658621161919521e-01, 9.143399069466223716e-01, 9.141134789160049179e-01, 9.138865782436590424e-01, 9.136592051493600541e-01, 9.134313598533305711e-01, 9.132030425762386328e-01, 9.129742535392181280e-01, 9.127449929638370429e-01, 9.125152610721219970e-01, 9.122850580865475845e-01, 9.120543842300408155e-01, 9.118232397259778965e-01, 9.115916247981777909e-01, 9.113595396709129881e-01, 9.111269845689080604e-01, 9.108939597173292269e-01, 9.106604653417968986e-01, 9.104265016683774636e-01, 9.101920689235767359e-01, 9.099571673343617162e-01, 9.097217971281399418e-01, 9.094859585327591533e-01, 9.092496517765301656e-01, 9.090128770881930054e-01, 9.087756346969423360e-01, 9.085379248324191304e-01, 9.082997477247046758e-01, 9.080611036043290119e-01, 9.078219927022737057e-01, 9.075824152499472053e-01, 9.073423714792206995e-01, 9.071018616223990305e-01, 9.068608859122373467e-01, 9.066194445819268921e-01, 9.063775378651106607e-01, 9.061351659958672977e-01, 9.058923292087209811e-01, 9.056490277386430865e-01, 9.054052618210394199e-01, 9.051610316917652055e-01, 9.049163375871129844e-01, 9.046711797438118374e-01, 9.044255583990439273e-01, 9.041794737904262913e-01, 9.039329261560131723e-01, 9.036859157343016813e-01, 9.034384427642340176e-01, 9.031905074851839244e-01, 9.029421101369723424e-01, 9.026932509598525334e-01, 9.024439301945198499e-01, 9.021941480821120685e-01, 9.019439048642012846e-01, 9.016932007827919149e-01, 9.014420360803397925e-01, 9.011904109997301848e-01, 9.009383257842841219e-01, 9.006857806777610609e-01, 9.004327759243624385e-01, 9.001793117687216794e-01, 8.999253884559021976e-01, 8.996710062314197121e-01, 8.994161653412048318e-01, 8.991608660316424695e-01, 8.989051085495424198e-01, 8.986488931421465765e-01, 8.983922200571440309e-01, 8.981350895426412073e-01, 8.978775018471930602e-01, 8.976194572197828681e-01, 8.973609559098225663e-01, 8.971019981671612964e-01, 8.968425842420845173e-01, 8.965827143853020154e-01, 8.963223888479613377e-01, 8.960616078816437957e-01, 8.958003717383580256e-01, 8.955386806705427638e-01, 8.952765349310700671e-01, 8.950139347732458672e-01, 8.947508804507969815e-01, 8.944873722178955378e-01, 8.942234103291289982e-01, 8.939589950395203655e-01, 8.936941266045239640e-01, 8.934288052800176683e-01, 8.931630313223110074e-01, 8.928968049881452762e-01, 8.926301265346824332e-01, 8.923629962195200882e-01, 8.920954143006757375e-01, 8.918273810366013077e-01, 8.915588966861675013e-01, 8.912899615086777860e-01, 8.910205757638590685e-01, 8.907507397118716863e-01, 8.904804536132854276e-01, 8.902097177291126151e-01, 8.899385323207823495e-01, 8.896668976501437287e-01, 8.893948139794813912e-01, 8.891222815714994177e-01, 8.888493006893219972e-01, 8.885758715964997556e-01, 8.883019945570098663e-01, 8.880276698352457254e-01, 8.877528976960272766e-01, 8.874776784046002343e-01, 8.872020122266245368e-01, 8.869258994281892239e-01, 8.866493402757986697e-01, 8.863723350363836850e-01, 8.860948839772899710e-01, 8.858169873662875560e-01, 8.855386454715687972e-01, 8.852598585617404980e-01, 8.849806269058309027e-01, 8.847009507732929157e-01, 8.844208304339890026e-01, 8.841402661582089539e-01, 8.838592582166507894e-01, 8.835778068804451824e-01, 8.832959124211269275e-01, 8.830135751106529263e-01, 8.827307952213970799e-01, 8.824475730261533979e-01, 8.821639087981261174e-01, 8.818798028109459120e-01, 8.815952553386395829e-01, 8.813102666556734688e-01, 8.810248370369120341e-01, 8.807389667576401848e-01, 8.804526560935568291e-01, 8.801659053207787631e-01, 8.798787147158337874e-01, 8.795910845556564883e-01, 8.793030151176082221e-01, 8.790145066794545770e-01, 8.787255595193735891e-01, 8.784361739159571858e-01, 8.781463501482125178e-01, 8.778560884955517452e-01, 8.775653892378053600e-01, 8.772742526552061992e-01, 8.769826790284079854e-01, 8.766906686384705605e-01, 8.763982217668595531e-01, 8.761053386954542610e-01, 8.758120197065423218e-01, 8.755182650828247093e-01, 8.752240751074076286e-01, 8.749294500637992966e-01, 8.746343902359308142e-01, 8.743388959081236367e-01, 8.740429673651215481e-01, 8.737466048920664585e-01, 8.734498087745100614e-01, 8.731525792984167200e-01, 8.728549167501397088e-01, 8.725568214164574066e-01, 8.722582935845369922e-01, 8.719593335419696389e-01, 8.716599415767301018e-01, 8.713601179772180183e-01, 8.710598630322177183e-01, 8.707591770309334178e-01, 8.704580602629656827e-01, 8.701565130183119834e-01, 8.698545355873861240e-01, 8.695521282609943725e-01, 8.692492913303510038e-01, 8.689460250870661984e-01, 8.686423298231549239e-01, 8.683382058310360474e-01, 8.680336534035225649e-01, 8.677286728338321486e-01, 8.674232644155843719e-01, 8.671174284427934920e-01, 8.668111652098784425e-01, 8.665044750116488448e-01, 8.661973581433277669e-01, 8.658898149005185285e-01, 8.655818455792373411e-01, 8.652734504758898826e-01, 8.649646298872843975e-01, 8.646553841106181526e-01, 8.643457134434988642e-01, 8.640356181839160543e-01, 8.637250986302622557e-01, 8.634141550813234645e-01, 8.631027878362863559e-01, 8.627909971947252954e-01, 8.624787834566125522e-01, 8.621661469223169671e-01, 8.618530878925968475e-01, 8.615396066686054066e-01, 8.612257035518935400e-01, 8.609113788443981674e-01, 8.605966328484544459e-01, 8.602814658667822245e-01, 8.599658782025032533e-01, 8.596498701591263059e-01, 8.593334420405440710e-01, 8.590165941510568004e-01, 8.586993267953352271e-01, 8.583816402784558708e-01, 8.580635349058768346e-01, 8.577450109834475755e-01, 8.574260688174091261e-01, 8.571067087143875440e-01, 8.567869309814007961e-01, 8.564667359258499868e-01, 8.561461238555265751e-01, 8.558250950786087108e-01, 8.555036499036660080e-01, 8.551817886396468893e-01, 8.548595115958893542e-01, 8.545368190821223120e-01, 8.542137114084509264e-01, 8.538901888853738242e-01, 8.535662518237645546e-01, 8.532419005348930163e-01, 8.529171353304072500e-01, 8.525919565223335495e-01, 8.522663644230926705e-01, 8.519403593454824009e-01, 8.516139416026788922e-01, 8.512871115082524254e-01, 8.509598693761402100e-01, 8.506322155206740288e-01, 8.503041502565562570e-01, 8.499756738988831772e-01, 8.496467867631161131e-01, 8.493174891651115166e-01, 8.489877814210874396e-01, 8.486576638476630574e-01, 8.483271367618200332e-01, 8.479962004809237230e-01, 8.476648553227186245e-01, 8.473331016053288200e-01, 8.470009396472513163e-01, 8.466683697673652587e-01, 8.463353922849213840e-01, 8.460020075195461287e-01, 8.456682157912548403e-01, 8.453340174204225788e-01, 8.449994127278037670e-01, 8.446644020345386306e-01, 8.443289856621251088e-01, 8.439931639324498303e-01, 8.436569371677669071e-01, 8.433203056906991568e-01, 8.429832698242523126e-01, 8.426458298917984813e-01, 8.423079862170832488e-01, 8.419697391242283446e-01, 8.416310889377198734e-01, 8.412920359824190841e-01, 8.409525805835608159e-01, 8.406127230667449490e-01, 8.402724637579435107e-01, 8.399318029834993427e-01, 8.395907410701265450e-01, 8.392492783449025939e-01, 8.389074151352804432e-01, 8.385651517690709822e-01, 8.382224885744690157e-01, 8.378794258800188466e-01, 8.375359640146422535e-01, 8.371921033076298313e-01, 8.368478440886314429e-01, 8.365031866876659894e-01, 8.361581314351211880e-01, 8.358126786617436910e-01, 8.354668286986512982e-01, 8.351205818773175249e-01, 8.347739385295911418e-01, 8.344268989876764131e-01, 8.340794635841457527e-01, 8.337316326519270682e-01, 8.333834065243221900e-01, 8.330347855349881092e-01, 8.326857700179388644e-01, 8.323363603075620842e-01, 8.319865567385956728e-01, 8.316363596461461283e-01, 8.312857693656723335e-01, 8.309347862329983236e-01, 8.305834105843052928e-01, 8.302316427561358125e-01, 8.298794830853905014e-01, 8.295269319093273586e-01, 8.291739895655607651e-01, 8.288206563920677006e-01, 8.284669327271769745e-01, 8.281128189095748882e-01, 8.277583152783064557e-01, 8.274034221727772920e-01, 8.270481399327308525e-01, 8.266924688982874025e-01, 8.263364094099113766e-01, 8.259799618084208150e-01, 8.256231264349892518e-01, 8.252659036311442708e-01, 8.249082937387697267e-01, 8.245502971000965298e-01, 8.241919140577108616e-01, 8.238331449545502894e-01, 8.234739901339087620e-01, 8.231144499394230651e-01, 8.227545247150859220e-01, 8.223942148052403311e-01, 8.220335205545806767e-01, 8.216724423081471773e-01, 8.213109804113306600e-01, 8.209491352098753358e-01, 8.205869070498634787e-01, 8.202242962777384072e-01, 8.198613032402845002e-01, 8.194979282846284185e-01, 8.191341717582547588e-01, 8.187700340089861806e-01, 8.184055153849936204e-01, 8.180406162347976240e-01, 8.176753369072549127e-01, 8.173096777515793665e-01, 8.169436391173192646e-01, 8.165772213543734948e-01, 8.162104248129797845e-01, 8.158432498437200309e-01, 8.154756967975215209e-01, 8.151077660256542678e-01, 8.147394578797241271e-01, 8.143707727116885620e-01, 8.140017108738386575e-01, 8.136322727188112225e-01, 8.132624585995779087e-01, 8.128922688694548704e-01, 8.125217038820957693e-01, 8.121507639914943288e-01, 8.117794495519873310e-01, 8.114077609182387407e-01, 8.110356984452670170e-01, 8.106632624884106963e-01, 8.102904534033591455e-01, 8.099172715461303573e-01, 8.095437172730816089e-01, 8.091697909409064637e-01, 8.087954929066337728e-01, 8.084208235276294507e-01, 8.080457831615909248e-01, 8.076703721665503544e-01, 8.072945909008776288e-01, 8.069184397232682660e-01, 8.065419189927612864e-01, 8.061650290687204512e-01, 8.057877703108475842e-01, 8.054101430791672511e-01, 8.050321477340474097e-01, 8.046537846361788704e-01, 8.042750541465848446e-01, 8.038959566266224988e-01, 8.035164924379726292e-01, 8.031366619426458797e-01, 8.027564655029929552e-01, 8.023759034816764224e-01, 8.019949762416977990e-01, 8.016136841463871177e-01, 8.012320275593950436e-01, 8.008500068447029774e-01, 8.004676223666181700e-01, 8.000848744897772757e-01, 7.997017635791360268e-01, 7.993182899999791147e-01, 7.989344541179164150e-01, 7.985502562988837649e-01, 7.981656969091357468e-01, 7.977807763152516829e-01, 7.973954948841431856e-01, 7.970098529830269563e-01, 7.966238509794624223e-01, 7.962374892413135452e-01, 7.958507681367810171e-01, 7.954636880343699534e-01, 7.950762493029170930e-01, 7.946884523115805843e-01, 7.943002974298282171e-01, 7.939117850274597377e-01, 7.935229154745846447e-01, 7.931336891416338464e-01, 7.927441063993589943e-01, 7.923541676188250449e-01, 7.919638731714147006e-01, 7.915732234288291869e-01, 7.911822187630850323e-01, 7.907908595465190649e-01, 7.903991461517734241e-01, 7.900070789518172099e-01, 7.896146583199268321e-01, 7.892218846296936707e-01, 7.888287582550269628e-01, 7.884352795701414784e-01, 7.880414489495753960e-01, 7.876472667681703177e-01, 7.872527334010841482e-01, 7.868578492237854327e-01, 7.864626146120571315e-01, 7.860670299419870721e-01, 7.856710955899771642e-01, 7.852748119327382925e-01, 7.848781793472909829e-01, 7.844811982109681781e-01, 7.840838689014026919e-01, 7.836861917965459723e-01, 7.832881672746510038e-01, 7.828897957142783026e-01, 7.824910774942971381e-01, 7.820920129938853105e-01, 7.816926025925187149e-01, 7.812928466699895491e-01, 7.808927456063863293e-01, 7.804922997821064357e-01, 7.800915095778512276e-01, 7.796903753746272647e-01, 7.792888975537409779e-01, 7.788870764968034432e-01, 7.784849125857283836e-01, 7.780824062027317245e-01, 7.776795577303313722e-01, 7.772763675513484349e-01, 7.768728360488974527e-01, 7.764689636064041611e-01, 7.760647506075856183e-01, 7.756601974364616403e-01, 7.752553044773501378e-01, 7.748500721148714465e-01, 7.744445007339378906e-01, 7.740385907197626647e-01, 7.736323424578533947e-01, 7.732257563340231288e-01, 7.728188327343717967e-01, 7.724115720453023082e-01, 7.720039746535038994e-01, 7.715960409459730052e-01, 7.711877713099910547e-01, 7.707791661331372390e-01, 7.703702258032839589e-01, 7.699609507086000448e-01, 7.695513412375400986e-01, 7.691413977788568168e-01, 7.687311207215965503e-01, 7.683205104550920872e-01, 7.679095673689687596e-01, 7.674982918531434439e-01, 7.670866842978226741e-01, 7.666747450935030850e-01, 7.662624746309760759e-01, 7.658498733013054949e-01, 7.654369414958626106e-01, 7.650236796062952482e-01, 7.646100880245425557e-01, 7.641961671428302294e-01, 7.637819173536724016e-01, 7.633673390498633138e-01, 7.629524326244916388e-01, 7.625371984709220508e-01, 7.621216369828134329e-01, 7.617057485541021133e-01, 7.612895335790108575e-01, 7.608729924520449828e-01, 7.604561255679964660e-01, 7.600389333219322863e-01, 7.596214161092103012e-01, 7.592035743254642588e-01, 7.587854083666101257e-01, 7.583669186288453101e-01, 7.579481055086479957e-01, 7.575289694027775855e-01, 7.571095107082660425e-01, 7.566897298224322110e-01, 7.562696271428728245e-01, 7.558492030674571760e-01, 7.554284579943361111e-01, 7.550073923219337013e-01, 7.545860064489589014e-01, 7.541643007743888960e-01, 7.537422756974833105e-01, 7.533199316177662253e-01, 7.528972689350501568e-01, 7.524742880494099673e-01, 7.520509893612046248e-01, 7.516273732710596622e-01, 7.512034401798760586e-01, 7.507791904888270196e-01, 7.503546245993580888e-01, 7.499297429131859261e-01, 7.495045458322995291e-01, 7.490790337589600112e-01, 7.486532070956947171e-01, 7.482270662452995547e-01, 7.478006116108487644e-01, 7.473738435956769344e-01, 7.469467626033897689e-01, 7.465193690378613134e-01, 7.460916633032325107e-01, 7.456636458039124227e-01, 7.452353169445781189e-01, 7.448066771301655731e-01, 7.443777267658839847e-01, 7.439484662572082296e-01, 7.435188960098728650e-01, 7.430890164298754597e-01, 7.426588279234860313e-01, 7.422283308972306148e-01, 7.417975257579005888e-01, 7.413664129125487889e-01, 7.409349927684907300e-01, 7.405032657333058266e-01, 7.400712322148274014e-01, 7.396388926211565629e-01, 7.392062473606543227e-01, 7.387732968419337132e-01, 7.383400414738774398e-01, 7.379064816656191184e-01, 7.374726178265530452e-01, 7.370384503663292008e-01, 7.366039796948615770e-01, 7.361692062223144095e-01, 7.357341303591102832e-01, 7.352987525159280224e-01, 7.348630731037032460e-01, 7.344270925336208178e-01, 7.339908112171259491e-01, 7.335542295659195355e-01, 7.331173479919474989e-01, 7.326801669074179957e-01, 7.322426867247865401e-01, 7.318049078567584464e-01, 7.313668307163003757e-01, 7.309284557166209062e-01, 7.304897832711800820e-01, 7.300508137936961850e-01, 7.296115476981284154e-01, 7.291719853986894373e-01, 7.287321273098399388e-01, 7.282919738462891868e-01, 7.278515254229934728e-01, 7.274107824551605539e-01, 7.269697453582366631e-01, 7.265284145479246058e-01, 7.260867904401628881e-01, 7.256448734511442566e-01, 7.252026639973031541e-01, 7.247601624953210475e-01, 7.243173693621187681e-01, 7.238742850148627284e-01, 7.234309098709608143e-01, 7.229872443480709343e-01, 7.225432888640829221e-01, 7.220990438371381881e-01, 7.216545096856130659e-01, 7.212096868281256956e-01, 7.207645756835345807e-01, 7.203191766709373667e-01, 7.198734902096787236e-01, 7.194275167193265874e-01, 7.189812566197059107e-01, 7.185347103308632466e-01, 7.180878782730912846e-01, 7.176407608669185256e-01, 7.171933585331089489e-01, 7.167456716926631222e-01, 7.162977007668172025e-01, 7.158494461770438244e-01, 7.154009083450445505e-01, 7.149520876927608626e-01, 7.145029846423662789e-01, 7.140535996162669097e-01, 7.136039330371045653e-01, 7.131539853277455432e-01, 7.127037569112947279e-01, 7.122532482110888186e-01, 7.118024596506882240e-01, 7.113513916538927173e-01, 7.109000446447217847e-01, 7.104484190474348315e-01, 7.099965152865098661e-01, 7.095443337866602640e-01, 7.090918749728278847e-01, 7.086391392701744119e-01, 7.081861271040974515e-01, 7.077328389002121023e-01, 7.072792750843687193e-01, 7.068254360826339289e-01, 7.063713223213073933e-01, 7.059169342269079328e-01, 7.054622722261776335e-01, 7.050073367460858442e-01, 7.045521282138265118e-01, 7.040966470568076341e-01, 7.036408937026693566e-01, 7.031848685792639886e-01, 7.027285721146737663e-01, 7.022720047371955321e-01, 7.018151668753448424e-01, 7.013580589578620739e-01, 7.009006814137073160e-01, 7.004430346720513789e-01, 6.999851191622925572e-01, 6.995269353140387558e-01, 6.990684835571197020e-01, 6.986097643215841702e-01, 6.981507780376889905e-01, 6.976915251359133707e-01, 6.972320060469523462e-01, 6.967722212017078975e-01, 6.963121710313046053e-01, 6.958518559670791026e-01, 6.953912764405754121e-01, 6.949304328835567146e-01, 6.944693257279996867e-01, 6.940079554060830658e-01, 6.935463223502045249e-01, 6.930844269929780088e-01, 6.926222697672134165e-01, 6.921598511059408043e-01, 6.916971714423971740e-01, 6.912342312100271391e-01, 6.907710308424845902e-01, 6.903075707736313626e-01, 6.898438514375360153e-01, 6.893798732684743857e-01, 6.889156367009288129e-01, 6.884511421695846956e-01, 6.879863901093404843e-01, 6.875213809552916944e-01, 6.870561151427378999e-01, 6.865905931071916157e-01, 6.861248152843598680e-01, 6.856587821101524094e-01, 6.851924940206900461e-01, 6.847259514522844315e-01, 6.842591548414570513e-01, 6.837921046249268997e-01, 6.833248012396169191e-01, 6.828572451226416762e-01, 6.823894367113225723e-01, 6.819213764431778513e-01, 6.814530647559268184e-01, 6.809845020874794042e-01, 6.805156888759494871e-01, 6.800466255596439025e-01, 6.795773125770752099e-01, 6.791077503669354920e-01, 6.786379393681286620e-01, 6.781678800197414869e-01, 6.776975727610652367e-01, 6.772270180315751453e-01, 6.767562162709500617e-01, 6.762851679190542420e-01, 6.758138734159443439e-01, 6.753423332018738678e-01, 6.748705477172854961e-01, 6.743985174028153118e-01, 6.739262426992825850e-01, 6.734537240477015407e-01, 6.729809618892799161e-01, 6.725079566654084129e-01, 6.720347088176676920e-01, 6.715612187878251538e-01, 6.710874870178407114e-01, 6.706135139498565767e-01, 6.701393000261995914e-01, 6.696648456893884438e-01, 6.691901513821237879e-01, 6.687152175472953486e-01, 6.682400446279683770e-01, 6.677646330674005259e-01, 6.672889833090299705e-01, 6.668130957964778505e-01, 6.663369709735474933e-01, 6.658606092842228596e-01, 6.653840111726732065e-01, 6.649071770832485351e-01, 6.644301074604733737e-01, 6.639528027490601003e-01, 6.634752633938924005e-01, 6.629974898400395888e-01, 6.625194825327446191e-01, 6.620412419174355190e-01, 6.615627684397097363e-01, 6.610840625453457964e-01, 6.606051246802973065e-01, 6.601259552906922901e-01, 6.596465548228381826e-01, 6.591669237232151701e-01, 6.586870624384775219e-01, 6.582069714154574758e-01, 6.577266511011511385e-01, 6.572461019427333628e-01, 6.567653243875570812e-01, 6.562843188831356533e-01, 6.558030858771650706e-01, 6.553216258175011966e-01, 6.548399391521787516e-01, 6.543580263293989896e-01, 6.538758877975332506e-01, 6.533935240051201854e-01, 6.529109354008693078e-01, 6.524281224336532237e-01, 6.519450855525202870e-01, 6.514618252066755044e-01, 6.509783418455000747e-01, 6.504946359185291849e-01, 6.500107078754771006e-01, 6.495265581662136301e-01, 6.490421872407757808e-01, 6.485575955493602107e-01, 6.480727835423367722e-01, 6.475877516702256420e-01, 6.471025003837178602e-01, 6.466170301336638948e-01, 6.461313413710745301e-01, 6.456454345471229761e-01, 6.451593101131407604e-01, 6.446729685206175064e-01, 6.441864102212069287e-01, 6.436996356667185060e-01, 6.432126453091228102e-01, 6.427254396005387393e-01, 6.422380189932558325e-01, 6.417503839397081800e-01, 6.412625348924964053e-01, 6.407744723043671264e-01, 6.402861966282288320e-01, 6.397977083171421109e-01, 6.393090078243222063e-01, 6.388200956031365729e-01, 6.383309721071052101e-01, 6.378416377899042145e-01, 6.373520931053594518e-01, 6.368623385074484444e-01, 6.363723744502997048e-01, 6.358822013881922919e-01, 6.353918197755527020e-01, 6.349012300669618636e-01, 6.344104327171491420e-01, 6.339194281809861220e-01, 6.334282169134964890e-01, 6.329367993698555850e-01, 6.324451760053793059e-01, 6.319533472755303194e-01, 6.314613136359205070e-01, 6.309690755423056352e-01, 6.304766334505859104e-01, 6.299839878168047580e-01, 6.294911390971544840e-01, 6.289980877479625088e-01, 6.285048342257062437e-01, 6.280113789870024332e-01, 6.275177224886073768e-01, 6.270238651874258107e-01, 6.265298075404936995e-01, 6.260355500049940014e-01, 6.255410930382475643e-01, 6.250464370977140138e-01, 6.245515826409897553e-01, 6.240565301258153008e-01, 6.235612800100607256e-01, 6.230658327517396566e-01, 6.225701888089995029e-01, 6.220743486401225653e-01, 6.215783127035306999e-01, 6.210820814577799887e-01, 6.205856553615536342e-01, 6.200890348736813884e-01, 6.195922204531171262e-01, 6.190952125589485044e-01, 6.185980116504006254e-01, 6.181006181868261562e-01, 6.176030326277115456e-01, 6.171052554326705852e-01, 6.166072870614549561e-01, 6.161091279739357995e-01, 6.156107786301230345e-01, 6.151122394901481494e-01, 6.146135110142789681e-01, 6.141145936628998880e-01, 6.136154878965383030e-01, 6.131161941758300760e-01, 6.126167129615534002e-01, 6.121170447146012661e-01, 6.116171898959974484e-01, 6.111171489668896228e-01, 6.106169223885483666e-01, 6.101165106223666035e-01, 6.096159141298641559e-01, 6.091151333726821937e-01, 6.086141688125827898e-01, 6.081130209114491425e-01, 6.076116901312873519e-01, 6.071101769342260868e-01, 6.066084817825050379e-01, 6.061066051384956799e-01, 6.056045474646782889e-01, 6.051023092236578194e-01, 6.045998908781552439e-01, 6.040972928910062212e-01, 6.035945157251709769e-01, 6.030915598437158742e-01, 6.025884257098310659e-01, 6.020851137868167280e-01, 6.015816245380946059e-01, 6.010779584271910281e-01, 6.005741159177589994e-01, 6.000700974735495574e-01, 5.995659035584385288e-01, 5.990615346364118743e-01, 5.985569911715586944e-01, 5.980522736280925455e-01, 5.975473824703255721e-01, 5.970423181626884901e-01, 5.965370811697175979e-01, 5.960316719560574406e-01, 5.955260909864649177e-01, 5.950203387258027332e-01, 5.945144156390415047e-01, 5.940083221912578759e-01, 5.935020588476346282e-01, 5.929956260734627893e-01, 5.924890243341357499e-01, 5.919822540951560352e-01, 5.914753158221299767e-01, 5.909682099807598288e-01, 5.904609370368615329e-01, 5.899534974563518386e-01, 5.894458917052427527e-01, 5.889381202496539736e-01, 5.884301835558088944e-01, 5.879220820900240563e-01, 5.874138163187205830e-01, 5.869053867084228493e-01, 5.863967937257487106e-01, 5.858880378374121678e-01, 5.853791195102359124e-01, 5.848700392111300106e-01, 5.843607974071072242e-01, 5.838513945652759052e-01, 5.833418311528369982e-01, 5.828321076370938103e-01, 5.823222244854364682e-01, 5.818121821653537973e-01, 5.813019811444302132e-01, 5.807916218903418359e-01, 5.802811048708567121e-01, 5.797704305538345926e-01, 5.792595994072304855e-01, 5.787486118990884387e-01, 5.782374684975413182e-01, 5.777261696708184679e-01, 5.772147158872293904e-01, 5.767031076151840630e-01, 5.761913453231710669e-01, 5.756794294797739076e-01, 5.751673605536589129e-01, 5.746551390135864468e-01, 5.741427653283942556e-01, 5.736302399670113461e-01, 5.731175633984529894e-01, 5.726047360918185003e-01, 5.720917585162919039e-01, 5.715786311411381604e-01, 5.710653544357096045e-01, 5.705519288694386182e-01, 5.700383549118455129e-01, 5.695246330325236528e-01, 5.690107637011523334e-01, 5.684967473874966704e-01, 5.679825845613897251e-01, 5.674682756927582616e-01, 5.669538212515978781e-01, 5.664392217079883274e-01, 5.659244775320859677e-01, 5.654095891941223195e-01, 5.648945571644111707e-01, 5.643793819133394729e-01, 5.638640639113691178e-01, 5.633486036290410448e-01, 5.628330015369680250e-01, 5.623172581058403230e-01, 5.618013738064209228e-01, 5.612853491095437519e-01, 5.607691844861215635e-01, 5.602528804071325030e-01, 5.597364373436293228e-01, 5.592198557667390491e-01, 5.587031361476547664e-01, 5.581862789576458317e-01, 5.576692846680445514e-01, 5.571521537502549526e-01, 5.566348866757530045e-01, 5.561174839160796246e-01, 5.555999459428446752e-01, 5.550822732277216343e-01, 5.545644662424559224e-01, 5.540465254588547994e-01, 5.535284513487942482e-01, 5.530102443842138671e-01, 5.524919050371158713e-01, 5.519734337795687562e-01, 5.514548310837065204e-01, 5.509360974217205609e-01, 5.504172332658694433e-01, 5.498982390884692428e-01, 5.493791153619020928e-01, 5.488598625586088575e-01, 5.483404811510881327e-01, 5.478209716119027961e-01, 5.473013344136703484e-01, 5.467815700290721281e-01, 5.462616789308437637e-01, 5.457416615917765057e-01, 5.452215184847272189e-01, 5.447012500826017289e-01, 5.441808568583633710e-01, 5.436603392850321015e-01, 5.431396978356815008e-01, 5.426189329834423258e-01, 5.420980452014958484e-01, 5.415770349630799618e-01, 5.410559027414825195e-01, 5.405346490100465529e-01, 5.400132742421676069e-01, 5.394917789112851914e-01, 5.389701634908977690e-01, 5.384484284545498767e-01, 5.379265742758390090e-01, 5.374046014284091788e-01, 5.368825103859525827e-01, 5.363603016222118214e-01, 5.358379756109747927e-01, 5.353155328260807977e-01, 5.347929737414076623e-01, 5.342702988308872802e-01, 5.337475085684937337e-01, 5.332246034282451808e-01, 5.327015838842059647e-01, 5.321784504104847269e-01, 5.316552034812298544e-01, 5.311318435706351426e-01, 5.306083711529392399e-01, 5.300847867024194304e-01, 5.295610906933927442e-01, 5.290372836002218415e-01, 5.285133658973041326e-01, 5.279893380590835461e-01, 5.274652005600338756e-01, 5.269409538746757660e-01, 5.264165984775635021e-01, 5.258921348432940013e-01, 5.253675634464938238e-01, 5.248428847618294979e-01, 5.243180992640065208e-01, 5.237932074277605876e-01, 5.232682097278673616e-01, 5.227431066391323711e-01, 5.222178986363988917e-01, 5.216925861945405085e-01, 5.211671697884678878e-01, 5.206416498931161208e-01, 5.201160269834601557e-01, 5.195903015345032516e-01, 5.190644740212776442e-01, 5.185385449188483209e-01, 5.180125147023079135e-01, 5.174863838467800292e-01, 5.169601528274148095e-01, 5.164338221193932599e-01, 5.159073921979221433e-01, 5.153808635382338688e-01, 5.148542366155887118e-01, 5.143275119052749256e-01, 5.138006898826020796e-01, 5.132737710229097194e-01, 5.127467558015578186e-01, 5.122196446939302206e-01, 5.116924381754347495e-01, 5.111651367215066522e-01, 5.106377408075933877e-01, 5.101102509091741677e-01, 5.095826675017426366e-01, 5.090549910608180850e-01, 5.085272220619375672e-01, 5.079993609806577881e-01, 5.074714082925514402e-01, 5.069433644732158628e-01, 5.064152299982620509e-01, 5.058870053433222047e-01, 5.053586909840427355e-01, 5.048302873960849313e-01, 5.043017950551309525e-01, 5.037732144368733955e-01, 5.032445460170216212e-01, 5.027157902713018656e-01, 5.021869476754519113e-01, 5.016580187052207540e-01, 5.011290038363730437e-01, 5.005999035446859757e-01, 5.000707183059458494e-01, 4.995414485959539519e-01, 4.990120948905191756e-01, 4.984826576654605157e-01, 4.979531373966072372e-01, 4.974235345597988744e-01, 4.968938496308819563e-01, 4.963640830857122266e-01, 4.958342354001539221e-01, 4.953043070500712242e-01, 4.947742985113449121e-01, 4.942442102598565978e-01, 4.937140427714919455e-01, 4.931837965221432807e-01, 4.926534719877085911e-01, 4.921230696440889729e-01, 4.915925899671852450e-01, 4.910620334329049430e-01, 4.905314005171579339e-01, 4.900006916958530301e-01, 4.894699074449028187e-01, 4.889390482402186655e-01, 4.884081145577142680e-01, 4.878771068732999372e-01, 4.873460256628882603e-01, 4.868148714023848855e-01, 4.862836445677034547e-01, 4.857523456347450086e-01, 4.852209750794116427e-01, 4.846895333776035097e-01, 4.841580210052134903e-01, 4.836264384381329662e-01, 4.830947861522446596e-01, 4.825630646234275734e-01, 4.820312743275562695e-01, 4.814994157404955955e-01, 4.809674893381051808e-01, 4.804354955962349960e-01, 4.799034349907290720e-01, 4.793713079974200597e-01, 4.788391150921342820e-01, 4.783068567506829627e-01, 4.777745334488754381e-01, 4.772421456625014491e-01, 4.767096938673439643e-01, 4.761771785391719081e-01, 4.756446001537455448e-01, 4.751119591868066538e-01, 4.745792561140885768e-01, 4.740464914113063921e-01, 4.735136655541636319e-01, 4.729807790183464533e-01, 4.724478322795259699e-01, 4.719148258133591955e-01, 4.713817600954833820e-01, 4.708486356015215701e-01, 4.703154528070754847e-01, 4.697822121877311963e-01, 4.692489142190564566e-01, 4.687155593765969797e-01, 4.681821481358821591e-01, 4.676486809724174631e-01, 4.671151583616889313e-01, 4.665815807791628966e-01, 4.660479487002811561e-01, 4.655142626004636908e-01, 4.649805229551096653e-01, 4.644467302395929309e-01, 4.639128849292601942e-01, 4.633789874994402314e-01, 4.628450384254330086e-01, 4.623110381825115689e-01, 4.617769872459244196e-01, 4.612428860908939776e-01, 4.607087351926157925e-01, 4.601745350262576029e-01, 4.596402860669541734e-01, 4.591059887898192859e-01, 4.585716436699321941e-01, 4.580372511823451731e-01, 4.575028118020775802e-01, 4.569683260041187967e-01, 4.564337942634295597e-01, 4.558992170549344691e-01, 4.553645948535292032e-01, 4.548299281340735245e-01, 4.542952173713954989e-01, 4.537604630402888861e-01, 4.532256656155146390e-01, 4.526908255717954632e-01, 4.521559433838217568e-01, 4.516210195262446159e-01, 4.510860544736805533e-01, 4.505510487007098885e-01, 4.500160026818726400e-01, 4.494809168916722997e-01, 4.489457918045746676e-01, 4.484106278950037439e-01, 4.478754256373457809e-01, 4.473401855059472854e-01, 4.468049079751105213e-01, 4.462695935191028918e-01, 4.457342426121419510e-01, 4.451988557284100589e-01, 4.446634333420424467e-01, 4.441279759271334893e-01, 4.435924839577312651e-01, 4.430569579078406650e-01, 4.425213982514216715e-01, 4.419858054623921340e-01, 4.414501800146158339e-01, 4.409145223819163628e-01, 4.403788330380706828e-01, 4.398431124568051298e-01, 4.393073611117987443e-01, 4.387715794766846589e-01, 4.382357680250427157e-01, 4.376999272304058497e-01, 4.371640575662580352e-01, 4.366281595060286236e-01, 4.360922335230988933e-01, 4.355562800907985532e-01, 4.350202996824016899e-01, 4.344842927711350944e-01, 4.339482598301678262e-01, 4.334122013326184852e-01, 4.328761177515485503e-01, 4.323400095599669313e-01, 4.318038772308233630e-01, 4.312677212370180091e-01, 4.307315420513894155e-01, 4.301953401467215055e-01, 4.296591159957419137e-01, 4.291228700711172128e-01, 4.285866028454578536e-01, 4.280503147913146123e-01, 4.275140063811805335e-01, 4.269776780874856570e-01, 4.264413303826014578e-01, 4.259049637388392928e-01, 4.253685786284464032e-01, 4.248321755236080244e-01, 4.242957548964525483e-01, 4.237593172190380342e-01, 4.232228629633605355e-01, 4.226863926013566530e-01, 4.221499066048945425e-01, 4.216134054457751912e-01, 4.210768895957396896e-01, 4.205403595264580741e-01, 4.200038157095373204e-01, 4.194672586165123507e-01, 4.189306887188560813e-01, 4.183941064879693750e-01, 4.178575123951872583e-01, 4.173209069117704839e-01, 4.167842905089165217e-01, 4.162476636577477906e-01, 4.157110268293194855e-01, 4.151743804946100291e-01, 4.146377251245329520e-01, 4.141010611899240135e-01, 4.135643891615488066e-01, 4.130277095100990392e-01, 4.124910227061930335e-01, 4.119543292203733942e-01, 4.114176295231083413e-01, 4.108809240847906552e-01, 4.103442133757393417e-01, 4.098074978661933043e-01, 4.092707780263164508e-01, 4.087340543261945847e-01, 4.081973272358365712e-01, 4.076605972251730048e-01, 4.071238647640538222e-01, 4.065871303222495237e-01, 4.060503943694522277e-01, 4.055136573752731732e-01, 4.049769198092395550e-01, 4.044401821408020736e-01, 4.039034448393269972e-01, 4.033667083740931081e-01, 4.028299732143066914e-01, 4.022932398290813283e-01, 4.017565086874497204e-01, 4.012197802583601924e-01, 4.006830550106744160e-01, 4.001463334131707961e-01, 3.996096159345408627e-01, 3.990729030433877722e-01, 3.985361952082288051e-01, 3.979994928974931456e-01, 3.974627965795236029e-01, 3.969261067225682837e-01, 3.963894237947964694e-01, 3.958527482642781870e-01, 3.953160805989973658e-01, 3.947794212668478409e-01, 3.942427707356283006e-01, 3.937061294730506145e-01, 3.931694979467296180e-01, 3.926328766241925505e-01, 3.920962659728692290e-01, 3.915596664600967669e-01, 3.910230785531200737e-01, 3.904865027190844717e-01, 3.899499394250454110e-01, 3.894133891379588652e-01, 3.888768523246857178e-01, 3.883403294519896520e-01, 3.878038209865375952e-01, 3.872673273948993855e-01, 3.867308491435427764e-01, 3.861943866988418184e-01, 3.856579405270673111e-01, 3.851215110943916886e-01, 3.845850988668865766e-01, 3.840487043105229592e-01, 3.835123278911720113e-01, 3.829759700745983819e-01, 3.824396313264697977e-01, 3.819033121123478480e-01, 3.813670128976908713e-01, 3.808307341478538999e-01, 3.802944763280877716e-01, 3.797582399035392964e-01, 3.792220253392458162e-01, 3.786858331001428102e-01, 3.781496636510597309e-01, 3.776135174567155639e-01, 3.770773949817246562e-01, 3.765412966905910541e-01, 3.760052230477127777e-01, 3.754691745173772133e-01, 3.749331515637645551e-01, 3.743971546509403114e-01, 3.738611842428659071e-01, 3.733252408033846947e-01, 3.727893247962358880e-01, 3.722534366850416832e-01, 3.717175769333139757e-01, 3.711817460044489203e-01, 3.706459443617323157e-01, 3.701101724683348304e-01, 3.695744307873126688e-01, 3.690387197816083487e-01, 3.685030399140452606e-01, 3.679673916473356066e-01, 3.674317754440712402e-01, 3.668961917667274975e-01, 3.663606410776655831e-01, 3.658251238391246329e-01, 3.652896405132290414e-01, 3.647541915619789687e-01, 3.642187774472597783e-01, 3.636833986308353750e-01, 3.631480555743502592e-01, 3.626127487393244753e-01, 3.620774785871601065e-01, 3.615422455791376111e-01, 3.610070501764117146e-01, 3.604718928400153510e-01, 3.599367740308603292e-01, 3.594016942097316702e-01, 3.588666538372912718e-01, 3.583316533740742993e-01, 3.577966932804954592e-01, 3.572617740168368416e-01, 3.567268960432575242e-01, 3.561920598197902410e-01, 3.556572658063389958e-01, 3.551225144626808938e-01, 3.545878062484613125e-01, 3.540531416232031714e-01, 3.535185210462928884e-01, 3.529839449769929804e-01, 3.524494138744295180e-01, 3.519149281976037824e-01, 3.513804884053802757e-01, 3.508460949564961573e-01, 3.503117483095520290e-01, 3.497774489230203177e-01, 3.492431972552341723e-01, 3.487089937643993998e-01, 3.481748389085810302e-01, 3.476407331457149752e-01, 3.471066769335984237e-01, 3.465726707298916742e-01, 3.460387149921229644e-01, 3.455048101776804215e-01, 3.449709567438140612e-01, 3.444371551476409499e-01, 3.439034058461326038e-01, 3.433697092961285335e-01, 3.428360659543250311e-01, 3.423024762772802765e-01, 3.417689407214110076e-01, 3.412354597429925751e-01, 3.407020337981628844e-01, 3.401686633429142903e-01, 3.396353488330981496e-01, 3.391020907244230442e-01, 3.385688894724530051e-01, 3.380357455326123972e-01, 3.375026593601762048e-01, 3.369696314102795243e-01, 3.364366621379092370e-01, 3.359037519979057307e-01, 3.353709014449674508e-01, 3.348381109336424077e-01, 3.343053809183317848e-01, 3.337727118532918258e-01, 3.332401041926285612e-01, 3.327075583902980860e-01, 3.321750749001118330e-01, 3.316426541757267477e-01, 3.311102966706526152e-01, 3.305780028382500624e-01, 3.300457731317238408e-01, 3.295136080041327076e-01, 3.289815079083783789e-01, 3.284494732972138564e-01, 3.279175046232376545e-01, 3.273856023388952430e-01, 3.268537668964784371e-01, 3.263219987481243978e-01, 3.257902983458128565e-01, 3.252586661413742752e-01, 3.247271025864765237e-01, 3.241956081326342609e-01, 3.236641832312071032e-01, 3.231328283333945728e-01, 3.226015438902380961e-01, 3.220703303526242789e-01, 3.215391881712775790e-01, 3.210081177967635813e-01, 3.204771196794891641e-01, 3.199461942697028882e-01, 3.194153420174876135e-01, 3.188845633727693807e-01, 3.183538587853112500e-01, 3.178232287047138560e-01, 3.172926735804155185e-01, 3.167621938616914656e-01, 3.162317899976532787e-01, 3.157014624372475597e-01, 3.151712116292592070e-01, 3.146410380223042536e-01, 3.141109420648376949e-01, 3.135809242051437185e-01, 3.130509848913435866e-01, 3.125211245713909736e-01, 3.119913436930710771e-01, 3.114616427040025615e-01, 3.109320220516348376e-01, 3.104024821832487291e-01, 3.098730235459548621e-01, 3.093436465866972740e-01, 3.088143517522449755e-01, 3.082851394891999441e-01, 3.077560102439931833e-01, 3.072269644628803920e-01, 3.066980025919481267e-01, 3.061691250771086392e-01, 3.056403323641044278e-01, 3.051116248985002444e-01, 3.045830031256883119e-01, 3.040544674908866596e-01, 3.035260184391398997e-01, 3.029976564153132879e-01, 3.024693818640988296e-01, 3.019411952300113389e-01, 3.014130969573904917e-01, 3.008850874903952755e-01, 3.003571672730094844e-01, 2.998293367490389993e-01, 2.993015963621076803e-01, 2.987739465556633056e-01, 2.982463877729722435e-01, 2.977189204571205616e-01, 2.971915450510158596e-01, 2.966642619973831607e-01, 2.961370717387643570e-01, 2.956099747175214287e-01, 2.950829713758331696e-01, 2.945560621556953529e-01, 2.940292474989190108e-01, 2.935025278471347643e-01, 2.929759036417839968e-01, 2.924493753241269589e-01, 2.919229433352371617e-01, 2.913966081160025978e-01, 2.908703701071232439e-01, 2.903442297491157231e-01, 2.898181874823065329e-01, 2.892922437468372077e-01, 2.887663989826561028e-01, 2.882406536295294974e-01, 2.877150081270289927e-01, 2.871894629145411160e-01, 2.866640184312587714e-01, 2.861386751161859032e-01, 2.856134334081353865e-01, 2.850882937457301924e-01, 2.845632565673981151e-01, 2.840383223113774891e-01, 2.835134914157129704e-01, 2.829887643182557033e-01, 2.824641414566620434e-01, 2.819396232683974990e-01, 2.814152101907286263e-01, 2.808909026607305237e-01, 2.803667011152801147e-01, 2.798426059910592012e-01, 2.793186177245538526e-01, 2.787947367520524633e-01, 2.782709635096463074e-01, 2.777472984332284289e-01, 2.772237419584926976e-01, 2.767002945209358633e-01, 2.761769565558550021e-01, 2.756537284983467950e-01, 2.751306107833075831e-01, 2.746076038454338120e-01, 2.740847081192213652e-01, 2.735619240389630669e-01, 2.730392520387505129e-01, 2.725166925524725170e-01, 2.719942460138152218e-01, 2.714719128562617656e-01, 2.709496935130899509e-01, 2.704275884173765743e-01, 2.699055980019888779e-01, 2.693837226995922651e-01, 2.688619629426468038e-01, 2.683403191634037288e-01, 2.678187917939104379e-01, 2.672973812660057180e-01, 2.667760880113205779e-01, 2.662549124612804685e-01, 2.657338550470990102e-01, 2.652129161997826001e-01, 2.646920963501305235e-01, 2.641713959287278479e-01, 2.636508153659532505e-01, 2.631303550919731893e-01, 2.626100155367418476e-01, 2.620897971300046869e-01, 2.615697003012930066e-01, 2.610497254799264422e-01, 2.605298730950105779e-01, 2.600101435754393897e-01, 2.594905373498911927e-01, 2.589710548468329154e-01, 2.584516964945130502e-01, 2.579324627209677590e-01, 2.574133539540155446e-01, 2.568943706212604705e-01, 2.563755131500901063e-01, 2.558567819676739741e-01, 2.553381775009638255e-01, 2.548197001766962511e-01, 2.543013504213848530e-01, 2.537831286613301263e-01, 2.532650353226076345e-01, 2.527470708310791125e-01, 2.522292356123820301e-01, 2.517115300919340326e-01, 2.511939546949329416e-01, 2.506765098463538122e-01, 2.501591959709523194e-01, 2.496420134932572643e-01, 2.491249628375801495e-01, 2.486080444280047985e-01, 2.480912586883942950e-01, 2.475746060423862360e-01, 2.470580869133934265e-01, 2.465417017246044895e-01, 2.460254508989822841e-01, 2.455093348592644054e-01, 2.449933540279614630e-01, 2.444775088273575536e-01, 2.439617996795089838e-01, 2.434462270062457134e-01, 2.429307912291679139e-01, 2.424154927696492989e-01, 2.419003320488334607e-01, 2.413853094876349525e-01, 2.408704255067360411e-01, 2.403556805265944230e-01, 2.398410749674320386e-01, 2.393266092492397079e-01, 2.388122837917814323e-01, 2.382980990145836808e-01, 2.377840553369440224e-01, 2.372701531779257134e-01, 2.367563929563585023e-01, 2.362427750908389634e-01, 2.357292999997293304e-01, 2.352159681011573300e-01, 2.347027798130147669e-01, 2.341897355529608538e-01, 2.336768357384144679e-01, 2.331640807865604792e-01, 2.326514711143476966e-01, 2.321390071384867304e-01, 2.316266892754497708e-01, 2.311145179414728634e-01, 2.306024935525509689e-01, 2.300906165244434864e-01, 2.295788872726662322e-01, 2.290673062124990444e-01, 2.285558737589792055e-01, 2.280445903269033570e-01, 2.275334563308283320e-01, 2.270224721850689353e-01, 2.265116383036968606e-01, 2.260009551005430772e-01, 2.254904229891949996e-01, 2.249800423829948492e-01, 2.244698136950455669e-01, 2.239597373382018752e-01, 2.234498137250757743e-01, 2.229400432680336275e-01, 2.224304263791973824e-01, 2.219209634704416012e-01, 2.214116549533969858e-01, 2.209025012394440768e-01, 2.203935027397191937e-01, 2.198846598651105211e-01, 2.193759730262575536e-01, 2.188674426335515677e-01, 2.183590690971355108e-01, 2.178508528269037237e-01, 2.173427942324978046e-01, 2.168348937233131324e-01, 2.163271517084926765e-01, 2.158195685969281075e-01, 2.153121447972600466e-01, 2.148048807178795372e-01, 2.142977767669209666e-01, 2.137908333522705318e-01, 2.132840508815594949e-01, 2.127774297621642663e-01, 2.122709704012097631e-01, 2.117646732055650238e-01, 2.112585385818456785e-01, 2.107525669364108400e-01, 2.102467586753660467e-01, 2.097411142045576271e-01, 2.092356339295786127e-01, 2.087303182557636028e-01, 2.082251675881917896e-01, 2.077201823316808527e-01, 2.072153628907955347e-01, 2.067107096698370394e-01, 2.062062230728514134e-01, 2.057019035036246057e-01, 2.051977513656811636e-01, 2.046937670622873962e-01, 2.041899509964470172e-01, 2.036863035709064185e-01, 2.031828251881461767e-01, 2.026795162503886027e-01, 2.021763771595912473e-01, 2.016734083174498704e-01, 2.011706101253996071e-01, 2.006679829846080565e-01, 2.001655272959803888e-01, 1.996632434601600392e-01, 1.991611318775224626e-01, 1.986591929481792140e-01, 1.981574270719774489e-01, 1.976558346484960649e-01, 1.971544160770502818e-01, 1.966531717566870063e-01, 1.961521020861854703e-01, 1.956512074640586463e-01, 1.951504882885513326e-01, 1.946499449576390983e-01, 1.941495778690302265e-01, 1.936493874201621057e-01, 1.931493740082034505e-01, 1.926495380300536908e-01, 1.921498798823406684e-01, 1.916503999614216636e-01, 1.911510986633828957e-01, 1.906519763840392734e-01, 1.901530335189333121e-01, 1.896542704633354115e-01, 1.891556876122424957e-01, 1.886572853603788458e-01, 1.881590641021954335e-01, 1.876610242318688393e-01, 1.871631661433004745e-01, 1.866654902301175534e-01, 1.861679968856727596e-01, 1.856706865030418874e-01, 1.851735594750256453e-01, 1.846766161941475193e-01, 1.841798570526543555e-01, 1.836832824425166932e-01, 1.831868927554259063e-01, 1.826906883827970063e-01, 1.821946697157648676e-01, 1.816988371451864204e-01, 1.812031910616399843e-01, 1.807077318554232148e-01, 1.802124599165532415e-01, 1.797173756347686946e-01, 1.792224793995263188e-01, 1.787277716000003069e-01, 1.782332526250865190e-01, 1.777389228633949603e-01, 1.772447827032564149e-01, 1.767508325327170060e-01, 1.762570727395408599e-01, 1.757635037112074416e-01, 1.752701258349128322e-01, 1.747769394975687840e-01, 1.742839450858015282e-01, 1.737911429859537726e-01, 1.732985335840807883e-01, 1.728061172659530187e-01, 1.723138944170548581e-01, 1.718218654225830699e-01, 1.713300306674480911e-01, 1.708383905362721167e-01, 1.703469454133899330e-01, 1.698556956828475573e-01, 1.693646417284040973e-01, 1.688737839335270607e-01, 1.683831226813964355e-01, 1.678926583549016083e-01, 1.674023913366412541e-01, 1.669123220089250015e-01, 1.664224507537698516e-01, 1.659327779529022884e-01, 1.654433039877569456e-01, 1.649540292394765795e-01, 1.644649540889102923e-01, 1.639760789166158916e-01, 1.634874041028570035e-01, 1.629989300276036834e-01, 1.625106570705309172e-01, 1.620225856110216189e-01, 1.615347160281617733e-01, 1.610470487007434892e-01, 1.605595840072624458e-01, 1.600723223259181427e-01, 1.595852640346149820e-01, 1.590984095109590768e-01, 1.586117591322614429e-01, 1.581253132755331969e-01, 1.576390723174895259e-01, 1.571530366345463281e-01, 1.566672066028216015e-01, 1.561815825981330286e-01, 1.556961649960009186e-01, 1.552109541716446550e-01, 1.547259504999826396e-01, 1.542411543556346243e-01, 1.537565661129184080e-01, 1.532721861458500867e-01, 1.527880148281459682e-01, 1.523040525332181594e-01, 1.518202996341775357e-01, 1.513367565038319928e-01, 1.508534235146870017e-01, 1.503703010389435824e-01, 1.498873894484984703e-01, 1.494046891149455047e-01, 1.489222004095731855e-01, 1.484399237033654784e-01, 1.479578593670004272e-01, 1.474760077708503481e-01, 1.469943692849811079e-01, 1.465129442791537062e-01, 1.460317331228213888e-01, 1.455507361851288983e-01, 1.450699538349157214e-01, 1.445893864407121754e-01, 1.441090343707396304e-01, 1.436288979929118692e-01, 1.431489776748336162e-01, 1.426692737837992053e-01, 1.421897866867940785e-01, 1.417105167504938701e-01, 1.412314643412624360e-01, 1.407526298251536856e-01, 1.402740135679098887e-01, 1.397956159349619809e-01, 1.393174372914293413e-01, 1.388394780021182939e-01, 1.383617384315220245e-01, 1.378842189438222732e-01, 1.374069199028862820e-01, 1.369298416722667944e-01, 1.364529846152052195e-01, 1.359763490946247211e-01, 1.354999354731360739e-01, 1.350237441130346938e-01, 1.345477753762997497e-01, 1.340720296245940246e-01, 1.335965072192654979e-01, 1.331212085213442087e-01, 1.326461338915438937e-01, 1.321712836902605992e-01, 1.316966582775729866e-01, 1.312222580132411109e-01, 1.307480832567074203e-01, 1.302741343670941743e-01, 1.298004117032061366e-01, 1.293269156235277439e-01, 1.288536464862228836e-01, 1.283806046491368646e-01, 1.279077904697929757e-01, 1.274352043053946504e-01, 1.269628465128233019e-01, 1.264907174486397945e-01, 1.260188174690811125e-01, 1.255471469300635246e-01, 1.250757061871801967e-01, 1.246044955957016642e-01, 1.241335155105739996e-01, 1.236627662864206723e-01, 1.231922482775405780e-01, 1.227219618379084831e-01, 1.222519073211735668e-01, 1.217820850806616562e-01, 1.213124954693706598e-01, 1.208431388399749395e-01, 1.203740155448210225e-01, 1.199051259359306260e-01, 1.194364703649967996e-01, 1.189680491833867704e-01, 1.184998627421402079e-01, 1.180319113919670732e-01, 1.175641954832519903e-01, 1.170967153660482790e-01, 1.166294713900823815e-01, 1.161624639047505320e-01, 1.156956932591189369e-01, 1.152291598019257318e-01, 1.147628638815763463e-01, 1.142968058461471120e-01, 1.138309860433834586e-01, 1.133654048206985399e-01, 1.129000625251746631e-01, 1.124349595035619154e-01, 1.119700961022783159e-01, 1.115054726674087754e-01, 1.110410895447055402e-01, 1.105769470795874843e-01, 1.101130456171396654e-01, 1.096493855021133251e-01, 1.091859670789256387e-01, 1.087227906916581610e-01, 1.082598566840588805e-01, 1.077971653995383472e-01, 1.073347171811741552e-01, 1.068725123717056691e-01, 1.064105513135363973e-01, 1.059488343487342138e-01, 1.054873618190288742e-01, 1.050261340658132092e-01, 1.045651514301419727e-01, 1.041044142527334654e-01, 1.036439228739649415e-01, 1.031836776338775630e-01, 1.027236788721719446e-01, 1.022639269282100694e-01, 1.018044221410140671e-01, 1.013451648492665058e-01, 1.008861553913085601e-01, 1.004273941051421620e-01, 9.996888132842693397e-02, 9.951061739848247878e-02, 9.905260265228574279e-02, 9.859483742647233429e-02, 9.813732205733544101e-02, 9.768005688082581628e-02, 9.722304223255044675e-02, 9.676627844777495324e-02, 9.630976586141902496e-02, 9.585350480806059670e-02, 9.539749562193200472e-02, 9.494173863692130511e-02, 9.448623418657249584e-02, 9.403098260408364328e-02, 9.357598422230702095e-02, 9.312123937374985894e-02, 9.266674839057344182e-02, 9.221251160459144336e-02, 9.175852934727170285e-02, 9.130480194973489283e-02, 9.085132974275406115e-02, 9.039811305675417297e-02, 8.994515222181316549e-02, 8.949244756765972753e-02, 8.903999942367391007e-02, 8.858780811888759821e-02, 8.813587398198215184e-02, 8.768419734129083432e-02, 8.723277852479512096e-02, 8.678161786012766887e-02, 8.633071567457042961e-02, 8.588007229505362217e-02, 8.542968804815739836e-02, 8.497956326010948358e-02, 8.452969825678587068e-02, 8.408009336371127795e-02, 8.363074890605774747e-02, 8.318166520864318791e-02, 8.273284259593445544e-02, 8.228428139204366221e-02, 8.183598192072991107e-02, 8.138794450539806047e-02, 8.094016946909882160e-02, 8.049265713452824489e-02, 8.004540782402745636e-02, 7.959842185958218574e-02, 7.915169956282340491e-02, 7.870524125502531554e-02, 7.825904725710657039e-02, 7.781311788962919085e-02, 7.736745347279845586e-02, 7.692205432646274932e-02, 7.647692077011336576e-02, 7.603205312288303930e-02, 7.558745170354741472e-02, 7.514311683052375679e-02, 7.469904882187029804e-02, 7.425524799528727959e-02, 7.381171466811527193e-02, 7.336844915733464756e-02, 7.292545177956775981e-02, 7.248272285107569546e-02, 7.204026268775914899e-02, 7.159807160515868629e-02, 7.115614991845385651e-02, 7.071449794246276177e-02, 7.027311599164189071e-02, 6.983200438008665967e-02, 6.939116342152910899e-02, 6.895059342933984592e-02, 6.851029471652633762e-02, 6.807026759573306385e-02, 6.763051237924175285e-02, 6.719102937896961891e-02, 6.675181890647055583e-02, 6.631288127293424872e-02, 6.587421678918548018e-02, 6.543582576568492126e-02, 6.499770851252795190e-02, 6.455986533944410577e-02, 6.412229655579829157e-02, 6.368500247058850317e-02, 6.324798339244656897e-02, 6.281123962963916507e-02, 6.237477149006421390e-02, 6.193857928125392348e-02, 6.150266331037274048e-02, 6.106702388421741262e-02, 6.063166130921656544e-02, 6.019657589143137533e-02, 5.976176793655313402e-02, 5.932723774990575349e-02, 5.889298563644351781e-02, 5.845901190075079856e-02, 5.802531684704344273e-02, 5.759190077916610806e-02, 5.715876400059419216e-02, 5.672590681443231281e-02, 5.629332952341442597e-02, 5.586103242990267392e-02, 5.542901583588928649e-02, 5.499728004299368062e-02, 5.456582535246352894e-02, 5.413465206517500267e-02, 5.370376048163129357e-02, 5.327315090196273195e-02, 5.284282362592723770e-02, 5.241277895290873817e-02, 5.198301718191788295e-02, 5.155353861159192586e-02, 5.112434354019328858e-02, 5.069543226561047666e-02, 5.026680508535735781e-02, 4.983846229657223903e-02, 4.941040419601910177e-02, 4.898263108008589495e-02, 4.855514324478461818e-02, 4.812794098575203655e-02, 4.770102459824776542e-02, 4.727439437715560966e-02, 4.684805061698179424e-02, 4.642199361185592871e-02, 4.599622365552994557e-02, 4.557074104137854437e-02, 4.514554606239786633e-02, 4.472063901120675034e-02, 4.429602018004465125e-02, 4.387168986077268074e-02, 4.344764834487315625e-02, 4.302389592344883773e-02, 4.260043288722335786e-02, 4.217725952654005628e-02, 4.175437613136272902e-02, 4.133178299127397703e-02, 4.090948039547739196e-02, 4.048746863279396174e-02, 4.006574799166472134e-02, 3.964431876014880979e-02, 3.922318122592408085e-02, 3.880233567628631891e-02, 3.838178239814914183e-02, 3.796152167804382055e-02, 3.754155380211863374e-02, 3.712187905613972827e-02, 3.670249772548899586e-02, 3.628341009516585641e-02, 3.586461644978514163e-02, 3.544611707357846891e-02, 3.502791225039303402e-02, 3.461000226369116695e-02, 3.419238739655091480e-02, 3.377506793166498711e-02, 3.335804415134120682e-02, 3.294131633750169846e-02, 3.252488477168283959e-02, 3.210874973503474034e-02, 3.169291150832194426e-02, 3.127737037192195729e-02, 3.086212660582527897e-02, 3.044718048963635654e-02, 3.003253230257120140e-02, 2.961818232345909616e-02, 2.920413083074133859e-02, 2.879037810247124171e-02, 2.837692441631348150e-02, 2.796377004954487405e-02, 2.755091527905333820e-02, 2.713836038133698308e-02, 2.672610563250583243e-02, 2.631415130827954169e-02, 2.590249768398842148e-02, 2.549114503457272987e-02, 2.508009363458233235e-02, 2.466934375817677119e-02, 2.425889567912500877e-02, 2.384874967080444913e-02, 2.343890600620208639e-02, 2.302936495791306146e-02, 2.262012679814022487e-02, 2.221119179869588539e-02, 2.180256023099870835e-02, 2.139423236607594647e-02, 2.098620847456178842e-02, 2.057848882669746984e-02, 2.017107369233122824e-02, 1.976396334091792481e-02, 1.935715804151872180e-02, 1.895065806280111717e-02, 1.854446367303836871e-02, 1.813857514010908459e-02, 1.773299273149807342e-02, 1.732771671429468585e-02, 1.692274735519351189e-02, 1.651808492049389177e-02, 1.611372967609956894e-02, 1.570968188751870401e-02, 1.530594181986322591e-02, 1.490250973784930724e-02, 1.449938590579590708e-02, 1.409657058762651613e-02, 1.369406404686653034e-02, 1.329186654664487634e-02, 1.288997834969305388e-02, 1.248839971834486522e-02, 1.208713091453641857e-02, 1.168617219980573260e-02, 1.128552383529251267e-02, 1.088518608173805018e-02, 1.048515919948498840e-02, 1.008544344847654185e-02, 9.686039088257649907e-03, 9.286946377972959271e-03, 8.888165576367847501e-03, 8.489696941788315437e-03, 8.091540732179441572e-03, 7.693697205086506147e-03, 7.296166617654279915e-03, 6.898949226626655516e-03, 6.502045288346657882e-03, 6.105455058756187499e-03, 5.709178793395310036e-03, 5.313216747403330144e-03, 4.917569175516806924e-03, 4.522236332070624261e-03, 4.127218470997816475e-03, 3.732515845828120703e-03, 3.338128709689056322e-03, 2.944057315305130887e-03, 2.550301914997683134e-03, 2.156862760684686523e-03, 1.763740103880680286e-03, 1.370934195696011781e-03, 9.784452868372836218e-04, 5.862736276072896000e-04, 1.944194679035751347e-04, -1.971169427804136346e-04, -5.883353553562285440e-04, -9.792355211404874926e-04, -1.369817191854952668e-03, -1.760080119627292902e-03, -2.150024056990598384e-03, -2.539648756883606823e-03, -2.928953972651572330e-03, -3.317939458045829348e-03, -3.706604967224626408e-03, -4.094950254752581856e-03, -4.482975075601509582e-03, -4.870679185149713424e-03, -5.258062339184239702e-03, -5.645124293898334117e-03, -6.031864805893672604e-03, -6.418283632179797547e-03, -6.804380530174296456e-03, -7.190155257703596467e-03, -7.575607573002333776e-03, -7.960737234713780378e-03, -8.345544001890426930e-03, -8.730027633994177916e-03, -9.114187890896068012e-03, -9.498024532876686229e-03, -9.881537320626746640e-03, -1.026472601524607703e-02, -1.064759037824623486e-02, -1.103013017154769529e-02, -1.141234515748230753e-02, -1.179423509879230954e-02, -1.217579975863146424e-02, -1.255703890056420607e-02, -1.293795228856651353e-02, -1.331853968702611558e-02, -1.369880086074176835e-02, -1.407873557492555355e-02, -1.445834359520042391e-02, -1.483762468760225876e-02, -1.521657861857929166e-02, -1.559520515499280592e-02, -1.597350406411664550e-02, -1.635147511363808578e-02, -1.672911807165721951e-02, -1.710643270668798371e-02, -1.748341878765811638e-02, -1.786007608390911133e-02, -1.823640436519629107e-02, -1.861240340168940355e-02, -1.898807296397293787e-02, -1.936341282304553449e-02, -1.973842275032071034e-02, -2.011310251762716064e-02, -2.048745189720860282e-02, -2.086147066172440792e-02, -2.123515858424914263e-02, -2.160851543827346788e-02, -2.198154099770313272e-02, -2.235423503686144800e-02, -2.272659733048646921e-02, -2.309862765373370611e-02, -2.347032578217475227e-02, -2.384169149179860350e-02, -2.421272455901072457e-02, -2.458342476063416285e-02, -2.495379187390869141e-02, -2.532382567649206148e-02, -2.569352594646031815e-02, -2.606289246230636750e-02, -2.643192500294165928e-02, -2.680062334769573243e-02, -2.716898727631690547e-02, -2.753701656897185324e-02, -2.790471100624603018e-02, -2.827207036914356625e-02, -2.863909443908811345e-02, -2.900578299792248849e-02, -2.937213582790913768e-02, -2.973815271172968594e-02, -3.010383343248590124e-02, -3.046917777369960792e-02, -3.083418551931266932e-02, -3.119885645368706759e-02, -3.156319036160548652e-02, -3.192718702827094385e-02, -3.229084623930817549e-02, -3.265416778076182802e-02, -3.301715143909852296e-02, -3.337979700120522614e-02, -3.374210425439191918e-02, -3.410407298638856721e-02, -3.446570298534811644e-02, -3.482699403984515496e-02, -3.518794593887596134e-02, -3.554855847185995482e-02, -3.590883142863873778e-02, -3.626876459947608183e-02, -3.662835777505876050e-02, -3.698761074649742353e-02, -3.734652330532437642e-02, -3.770509524349636293e-02, -3.806332635339289283e-02, -3.842121642781692881e-02, -3.877876525999632978e-02, -3.913597264358170680e-02, -3.949283837264818547e-02, -3.984936224169508684e-02, -4.020554404564612161e-02, -4.056138357984966081e-02, -4.091688064007854148e-02, -4.127203502253070505e-02, -4.162684652382848266e-02, -4.198131494102055189e-02, -4.233544007157991756e-02, -4.268922171340530647e-02, -4.304265966482099387e-02, -4.339575372457738639e-02, -4.374850369185043913e-02, -4.410090936624255775e-02, -4.445297054778162699e-02, -4.480468703692265520e-02, -4.515605863454706659e-02, -4.550708514196264570e-02, -4.585776636090433539e-02, -4.620810209353341802e-02, -4.655809214243929878e-02, -4.690773631063795135e-02, -4.725703440157261181e-02, -4.760598621911445866e-02, -4.795459156756211316e-02, -4.830285025164244433e-02, -4.865076207651006235e-02, -4.899832684774757530e-02, -4.934554437136532551e-02, -4.969241445380379041e-02, -5.003893690193025184e-02, -5.038511152304129409e-02, -5.073093812486244303e-02, -5.107641651554797879e-02, -5.142154650368187946e-02, -5.176632789827662756e-02, -5.211076050877446603e-02, -5.245484414504665571e-02, -5.279857861739524483e-02, -5.314196373655088318e-02, -5.348499931367477894e-02, -5.382768516035809497e-02, -5.417002108862224719e-02, -5.451200691091899475e-02, -5.485364244013032214e-02, -5.519492748956912609e-02, -5.553586187297872290e-02, -5.587644540453378522e-02, -5.621667789883950245e-02, -5.655655917093251744e-02, -5.689608903628036451e-02, -5.723526731078270452e-02, -5.757409381076988159e-02, -5.791256835300422068e-02, -5.825069075468011781e-02, -5.858846083342311717e-02, -5.892587840729177767e-02, -5.926294329477641704e-02, -5.959965531479947259e-02, -5.993601428671542497e-02, -6.027202003031231770e-02, -6.060767236581009187e-02, -6.094297111386177968e-02, -6.127791609555315044e-02, -6.161250713240304377e-02, -6.194674404636366788e-02, -6.228062665982029428e-02, -6.261415479559194475e-02, -6.294732827692978150e-02, -6.328014692752126358e-02, -6.361261057148495657e-02, -6.394471903337467511e-02, -6.427647213817822003e-02, -6.460786971131667056e-02, -6.493891157864635499e-02, -6.526959756645757393e-02, -6.559992750147498886e-02, -6.592990121085745558e-02, -6.625951852219941207e-02, -6.658877926352958776e-02, -6.691768326331191952e-02, -6.724623035044482999e-02, -6.757442035426211580e-02, -6.790225310453378016e-02, -6.822972843146361821e-02, -6.855684616569196477e-02, -6.888360613829438983e-02, -6.921000818078261452e-02, -6.953605212510385880e-02, -6.986173780364100805e-02, -7.018706504921322364e-02, -7.051203369507585972e-02, -7.083664357492075458e-02, -7.116089452287575889e-02, -7.148478637350534626e-02, -7.180831896181037732e-02, -7.213149212322884918e-02, -7.245430569363500717e-02, -7.277675950934049676e-02, -7.309885340709335044e-02, -7.342058722407916738e-02, -7.374196079792053049e-02, -7.406297396667757549e-02, -7.438362656884796309e-02, -7.470391844336624065e-02, -7.502384942960484138e-02, -7.534341936737433409e-02, -7.566262809692249347e-02, -7.598147545893531307e-02, -7.629996129453699150e-02, -7.661808544528919684e-02, -7.693584775319238511e-02, -7.725324806068488426e-02, -7.757028621064379625e-02, -7.788696204638494158e-02, -7.820327541166154084e-02, -7.851922615066710132e-02, -7.883481410803239164e-02, -7.915003912882805082e-02, -7.946490105856379715e-02, -7.977939974318747074e-02, -8.009353502908661548e-02, -8.040730676308768810e-02, -8.072071479245757075e-02, -8.103375896490126740e-02, -8.134643912856359682e-02, -8.165875513202947023e-02, -8.197070682432304467e-02, -8.228229405490837534e-02, -8.259351667368929062e-02, -8.290437453100973908e-02, -8.321486747765316494e-02, -8.352499536484442322e-02, -8.383475804424704581e-02, -8.414415536796582273e-02, -8.445318718854567808e-02, -8.476185335897160056e-02, -8.507015373267003133e-02, -8.537808816350707375e-02, -8.568565650578979787e-02, -8.599285861426629596e-02, -8.629969434412597395e-02, -8.660616355099770569e-02, -8.691226609095327460e-02, -8.721800182050391814e-02, -8.752337059660303398e-02, -8.782837227664502810e-02, -8.813300671846596712e-02, -8.843727378034245412e-02, -8.874117332099297484e-02, -8.904470519957831398e-02, -8.934786927570072257e-02, -8.965066540940284934e-02, -8.995309346117050242e-02, -9.025515329193077585e-02, -9.055684476305347896e-02, -9.085816773634915189e-02, -9.115912207407156354e-02, -9.145970763891578259e-02, -9.175992429402012041e-02, -9.205977190296385504e-02, -9.235925032976988192e-02, -9.265835943890310400e-02, -9.295709909527025139e-02, -9.325546916422197685e-02, -9.355346951155041335e-02, -9.385110000349089487e-02, -9.414836050672140133e-02, -9.444525088836307203e-02, -9.474177101597987261e-02, -9.503792075757810931e-02, -9.533369998160791392e-02, -9.562910855696195311e-02, -9.592414635297674685e-02, -9.621881323943165532e-02, -9.651310908654908705e-02, -9.680703376499510959e-02, -9.710058714587904705e-02, -9.739376910075392413e-02, -9.768657950161620251e-02, -9.797901822090560042e-02, -9.827108513150623059e-02, -9.856278010674551782e-02, -9.885410302039449038e-02, -9.914505374666786330e-02, -9.943563216022514861e-02, -9.972583813616839321e-02, -1.000156715500453292e-01, -1.003051322778463345e-01, -1.005942201960063065e-01, -1.008829351814049813e-01, -1.011712771113651155e-01, -1.014592458636543598e-01, -1.017468413164855506e-01, -1.020340633485144338e-01, -1.023209118388417188e-01, -1.026073866670126622e-01, -1.028934877130175812e-01, -1.031792148572899664e-01, -1.034645679807094237e-01, -1.037495469645998286e-01, -1.040341516907290209e-01, -1.043183820413106089e-01, -1.046022378990017487e-01, -1.048857191469062394e-01, -1.051688256685716916e-01, -1.054515573479902074e-01, -1.057339140695998936e-01, -1.060158957182836953e-01, -1.062975021793690078e-01, -1.065787333386291336e-01, -1.068595890822819638e-01, -1.071400692969910889e-01, -1.074201738698647712e-01, -1.076999026884575689e-01, -1.079792556407679766e-01, -1.082582326152410762e-01, -1.085368335007665802e-01, -1.088150581866803301e-01, -1.090929065627633671e-01, -1.093703785192417788e-01, -1.096474739467878101e-01, -1.099241927365191551e-01, -1.102005347799993318e-01, -1.104764999692373767e-01, -1.107520881966875953e-01, -1.110272993552508941e-01, -1.113021333382732125e-01, -1.115765900395468968e-01, -1.118506693533097840e-01, -1.121243711742452437e-01, -1.123976953974832049e-01, -1.126706419185998648e-01, -1.129432106336162450e-01, -1.132154014389995245e-01, -1.134872142316642324e-01, -1.137586489089699449e-01, -1.140297053687218259e-01, -1.143003835091722237e-01, -1.145706832290189492e-01, -1.148406044274064564e-01, -1.151101470039248009e-01, -1.153793108586114446e-01, -1.156480958919477442e-01, -1.159165020048641553e-01, -1.161845290987357504e-01, -1.164521770753838698e-01, -1.167194458370770516e-01, -1.169863352865294914e-01, -1.172528453269022775e-01, -1.175189758618023494e-01, -1.177847267952835397e-01, -1.180500980318457127e-01, -1.183150894764358751e-01, -1.185797010344470936e-01, -1.188439326117179812e-01, -1.191077841145358196e-01, -1.193712554496327016e-01, -1.196343465241876541e-01, -1.198970572458267353e-01, -1.201593875226218411e-01, -1.204213372630923290e-01, -1.206829063762035886e-01, -1.209440947713683462e-01, -1.212049023584443885e-01, -1.214653290477376718e-01, -1.217253747500003230e-01, -1.219850393764315699e-01, -1.222443228386763114e-01, -1.225032250488272967e-01, -1.227617459194228766e-01, -1.230198853634494466e-01, -1.232776432943387679e-01, -1.235350196259705491e-01, -1.237920142726699896e-01, -1.240486271492105691e-01, -1.243048581708105366e-01, -1.245607072531374204e-01, -1.248161743123033657e-01, -1.250712592648679788e-01, -1.253259620278383280e-01, -1.255802825186674854e-01, -1.258342206552555964e-01, -1.260877763559492548e-01, -1.263409495395427795e-01, -1.265937401252757166e-01, -1.268461480328365865e-01, -1.270981731823588035e-01, -1.273498154944230076e-01, -1.276010748900576475e-01, -1.278519512907362321e-01, -1.281024446183814391e-01, -1.283525547953603685e-01, -1.286022817444882338e-01, -1.288516253890270025e-01, -1.291005856526848961e-01, -1.293491624596174172e-01, -1.295973557344263505e-01, -1.298451654021606227e-01, -1.300925913883157758e-01, -1.303396336188346327e-01, -1.305862920201063815e-01, -1.308325665189666587e-01, -1.310784570426979101e-01, -1.313239635190297794e-01, -1.315690858761385806e-01, -1.318138240426470487e-01, -1.320581779476243112e-01, -1.323021475205875541e-01, -1.325457326914981360e-01, -1.327889333907674163e-01, -1.330317495492507329e-01, -1.332741810982515374e-01, -1.335162279695188692e-01, -1.337578900952489380e-01, -1.339991674080844297e-01, -1.342400598411155055e-01, -1.344805673278773872e-01, -1.347206898023532440e-01, -1.349604271989709448e-01, -1.351997794526080265e-01, -1.354387464985846723e-01, -1.356773282726707608e-01, -1.359155247110808151e-01, -1.361533357504766950e-01, -1.363907613279657649e-01, -1.366278013811032532e-01, -1.368644558478893380e-01, -1.371007246667717283e-01, -1.373366077766436100e-01, -1.375721051168446729e-01, -1.378072166271615828e-01, -1.380419422478258162e-01, -1.382762819195176573e-01, -1.385102355833605359e-01, -1.387438031809264394e-01, -1.389769846542322218e-01, -1.392097799457414908e-01, -1.394421889983643303e-01, -1.396742117554554130e-01, -1.399058481608175530e-01, -1.401370981586984310e-01, -1.403679616937912045e-01, -1.405984387112367007e-01, -1.408285291566199471e-01, -1.410582329759728637e-01, -1.412875501157734026e-01, -1.415164805229448541e-01, -1.417450241448563741e-01, -1.419731809293232061e-01, -1.422009508246062648e-01, -1.424283337794119142e-01, -1.426553297428930223e-01, -1.428819386646471290e-01, -1.431081604947184449e-01, -1.433339951835954917e-01, -1.435594426822133507e-01, -1.437845029419521081e-01, -1.440091759146374661e-01, -1.442334615525411590e-01, -1.444573598083789268e-01, -1.446808706353142349e-01, -1.449039939869527505e-01, -1.451267298173477549e-01, -1.453490780809972016e-01, -1.455710387328440769e-01, -1.457926117282758449e-01, -1.460137970231268623e-01, -1.462345945736753527e-01, -1.464550043366439902e-01, -1.466750262692021189e-01, -1.468946603289626451e-01, -1.471139064739836744e-01, -1.473327646627681786e-01, -1.475512348542649121e-01, -1.477693170078654417e-01, -1.479870110834079489e-01, -1.482043170411741495e-01, -1.484212348418902649e-01, -1.486377644467289372e-01, -1.488539058173044827e-01, -1.490696589156778329e-01, -1.492850237043528427e-01, -1.495000001462796213e-01, -1.497145882048507848e-01, -1.499287878439040655e-01, -1.501425990277208689e-01, -1.503560217210276884e-01, -1.505690558889949404e-01, -1.507817014972353542e-01, -1.509939585118082739e-01, -1.512058268992151899e-01, -1.514173066264015155e-01, -1.516283976607580297e-01, -1.518390999701181576e-01, -1.520494135227574706e-01, -1.522593382873992929e-01, -1.524688742332061253e-01, -1.526780213297871946e-01, -1.528867795471929858e-01, -1.530951488559192386e-01, -1.533031292269038393e-01, -1.535107206315284023e-01, -1.537179230416174658e-01, -1.539247364294390463e-01, -1.541311607677044171e-01, -1.543371960295674417e-01, -1.545428421886252957e-01, -1.547480992189178561e-01, -1.549529670949281734e-01, -1.551574457915822769e-01, -1.553615352842475927e-01, -1.555652355487359972e-01, -1.557685465613000420e-01, -1.559714682986370615e-01, -1.561740007378849826e-01, -1.563761438566241557e-01, -1.565778976328791317e-01, -1.567792620451144148e-01, -1.569802370722382934e-01, -1.571808226936001196e-01, -1.573810188889912254e-01, -1.575808256386464767e-01, -1.577802429232409986e-01, -1.579792707238923122e-01, -1.581779090221595296e-01, -1.583761578000434656e-01, -1.585740170399867477e-01, -1.587714867248732897e-01, -1.589685668380278194e-01, -1.591652573632189316e-01, -1.593615582846529266e-01, -1.595574695869792226e-01, -1.597529912552892728e-01, -1.599481232751139570e-01, -1.601428656324255240e-01, -1.603372183136378137e-01, -1.605311813056046200e-01, -1.607247545956203838e-01, -1.609179381714217483e-01, -1.611107320211840888e-01, -1.613031361335243719e-01, -1.614951504974994900e-01, -1.616867751026068445e-01, -1.618780099387832072e-01, -1.620688549964072744e-01, -1.622593102662971964e-01, -1.624493757397096894e-01, -1.626390514083432826e-01, -1.628283372643357096e-01, -1.630172333002634366e-01, -1.632057395091444374e-01, -1.633938558844334477e-01, -1.635815824200285984e-01, -1.637689191102637276e-01, -1.639558659499139037e-01, -1.641424229341925112e-01, -1.643285900587533321e-01, -1.645143673196880207e-01, -1.646997547135273798e-01, -1.648847522372405006e-01, -1.650693598882370661e-01, -1.652535776643624110e-01, -1.654374055639045715e-01, -1.656208435855860139e-01, -1.658038917285696578e-01, -1.659865499924557675e-01, -1.661688183772844218e-01, -1.663506968835321287e-01, -1.665321855121134342e-01, -1.667132842643822555e-01, -1.668939931421281053e-01, -1.670743121475806725e-01, -1.672542412834042702e-01, -1.674337805527040812e-01, -1.676129299590202182e-01, -1.677916895063303881e-01, -1.679700591990512248e-01, -1.681480390420339865e-01, -1.683256290405687194e-01, -1.685028292003815931e-01, -1.686796395276361216e-01, -1.688560600289317204e-01, -1.690320907113044557e-01, -1.692077315822282657e-01, -1.693829826496111302e-01, -1.695578439217992894e-01, -1.697323154075744411e-01, -1.699063971161536291e-01, -1.700800890571914914e-01, -1.702533912407766248e-01, -1.704263036774348039e-01, -1.705988263781267888e-01, -1.707709593542490190e-01, -1.709427026176324194e-01, -1.711140561805449267e-01, -1.712850200556885749e-01, -1.714555942562007995e-01, -1.716257787956535774e-01, -1.717955736880537876e-01, -1.719649789478442381e-01, -1.721339945898997525e-01, -1.723026206295328600e-01, -1.724708570824884379e-01, -1.726387039649460442e-01, -1.728061612935189728e-01, -1.729732290852550036e-01, -1.731399073576370407e-01, -1.733061961285795594e-01, -1.734720954164325757e-01, -1.736376052399785930e-01, -1.738027256184341562e-01, -1.739674565714487697e-01, -1.741317981191042585e-01, -1.742957502819189874e-01, -1.744593130808394232e-01, -1.746224865372484891e-01, -1.747852706729615402e-01, -1.749476655102245315e-01, -1.751096710717169602e-01, -1.752712873805515048e-01, -1.754325144602726372e-01, -1.755933523348565395e-01, -1.757538010287111041e-01, -1.759138605666772104e-01, -1.760735309740268373e-01, -1.762328122764637017e-01, -1.763917045001223149e-01, -1.765502076715697310e-01, -1.767083218178031045e-01, -1.768660469662526047e-01, -1.770233831447767525e-01, -1.771803303816665287e-01, -1.773368887056434862e-01, -1.774930581458606382e-01, -1.776488387318992113e-01, -1.778042304937718643e-01, -1.779592334619223282e-01, -1.781138476672236848e-01, -1.782680731409784503e-01, -1.784219099149199628e-01, -1.785753580212107727e-01, -1.787284174924422819e-01, -1.788810883616364922e-01, -1.790333706622442012e-01, -1.791852644281446416e-01, -1.793367696936471745e-01, -1.794878864934894569e-01, -1.796386148628374979e-01, -1.797889548372862134e-01, -1.799389064528601478e-01, -1.800884697460100325e-01, -1.802376447536154502e-01, -1.803864315129858065e-01, -1.805348300618555279e-01, -1.806828404383885034e-01, -1.808304626811760851e-01, -1.809776968292373667e-01, -1.811245429220179337e-01, -1.812710009993897808e-01, -1.814170711016550308e-01, -1.815627532695393287e-01, -1.817080475441973098e-01, -1.818529539672086581e-01, -1.819974725805807991e-01, -1.821416034267462902e-01, -1.822853465485651803e-01, -1.824287019893227058e-01, -1.825716697927295129e-01, -1.827142500029232397e-01, -1.828564426644657681e-01, -1.829982478223454723e-01, -1.831396655219756919e-01, -1.832806958091941496e-01, -1.834213387302641440e-01, -1.835615943318744947e-01, -1.837014626611381263e-01, -1.838409437655914302e-01, -1.839800376931970127e-01, -1.841187444923399197e-01, -1.842570642118310509e-01, -1.843949969009035239e-01, -1.845325426092157273e-01, -1.846697013868486559e-01, -1.848064732843059388e-01, -1.849428583525168923e-01, -1.850788566428330784e-01, -1.852144682070268056e-01, -1.853496930972962642e-01, -1.854845313662602801e-01, -1.856189830669618401e-01, -1.857530482528650106e-01, -1.858867269778560205e-01, -1.860200192962433718e-01, -1.861529252627583120e-01, -1.862854449325522521e-01, -1.864175783611997372e-01, -1.865493256046958093e-01, -1.866806867194556740e-01, -1.868116617623178100e-01, -1.869422507905406095e-01, -1.870724538618029897e-01, -1.872022710342035323e-01, -1.873317023662633418e-01, -1.874607479169228264e-01, -1.875894077455412812e-01, -1.877176819118991369e-01, -1.878455704761976264e-01, -1.879730734990543717e-01, -1.881001910415088796e-01, -1.882269231650205432e-01, -1.883532699314647840e-01, -1.884792314031395188e-01, -1.886048076427576936e-01, -1.887299987134540558e-01, -1.888548046787796031e-01, -1.889792256027053030e-01, -1.891032615496187896e-01, -1.892269125843249744e-01, -1.893501787720487106e-01, -1.894730601784311297e-01, -1.895955568695301963e-01, -1.897176689118214021e-01, -1.898393963721980715e-01, -1.899607393179685577e-01, -1.900816978168611004e-01, -1.902022719370168313e-01, -1.903224617469949365e-01, -1.904422673157707413e-01, -1.905616887127344894e-01, -1.906807260076944788e-01, -1.907993792708714276e-01, -1.909176485729043582e-01, -1.910355339848464618e-01, -1.911530355781642099e-01, -1.912701534247422119e-01, -1.913868875968779693e-01, -1.915032381672829576e-01, -1.916192052090839038e-01, -1.917347887958212038e-01, -1.918499890014503939e-01, -1.919648059003390139e-01, -1.920792395672697717e-01, -1.921932900774375452e-01, -1.923069575064510484e-01, -1.924202419303318035e-01, -1.925331434255149743e-01, -1.926456620688472565e-01, -1.927577979375890704e-01, -1.928695511094117854e-01, -1.929809216623988577e-01, -1.930919096750482733e-01, -1.932025152262666357e-01, -1.933127383953724132e-01, -1.934225792620984929e-01, -1.935320379065846863e-01, -1.936411144093852787e-01, -1.937498088514631456e-01, -1.938581213141932214e-01, -1.939660518793587252e-01, -1.940736006291561844e-01, -1.941807676461894672e-01, -1.942875530134741402e-01, -1.943939568144330554e-01, -1.944999791329013183e-01, -1.946056200531222080e-01, -1.947108796597464553e-01, -1.948157580378360731e-01, -1.949202552728600546e-01, -1.950243714506965931e-01, -1.951281066576325274e-01, -1.952314609803610101e-01, -1.953344345059856713e-01, -1.954370273220161491e-01, -1.955392395163689234e-01, -1.956410711773697020e-01, -1.957425223937498127e-01, -1.958435932546477298e-01, -1.959442838496086858e-01, -1.960445942685852538e-01, -1.961445246019340727e-01, -1.962440749404205098e-01, -1.963432453752139428e-01, -1.964420359978902852e-01, -1.965404469004307930e-01, -1.966384781752214816e-01, -1.967361299150535425e-01, -1.968334022131235095e-01, -1.969302951630320098e-01, -1.970268088587853461e-01, -1.971229433947912224e-01, -1.972186988658648499e-01, -1.973140753672230352e-01, -1.974090729944866507e-01, -1.975036918436801348e-01, -1.975979320112310200e-01, -1.976917935939706550e-01, -1.977852766891315672e-01, -1.978783813943497116e-01, -1.979711078076634156e-01, -1.980634560275129075e-01, -1.981554261527404825e-01, -1.982470182825912253e-01, -1.983382325167095672e-01, -1.984290689551417020e-01, -1.985195276983372503e-01, -1.986096088471439036e-01, -1.986993125028113927e-01, -1.987886387669899890e-01, -1.988775877417285343e-01, -1.989661595294779373e-01, -1.990543542330885651e-01, -1.991421719558086612e-01, -1.992296128012882583e-01, -1.993166768735747385e-01, -1.994033642771148862e-01, -1.994896751167542504e-01, -1.995756094977370887e-01, -1.996611675257054241e-01, -1.997463493067005713e-01, -1.998311549471592230e-01, -1.999155845539179188e-01, -1.999996382342104084e-01, -2.000833160956657364e-01, -2.001666182463126276e-01, -2.002495447945743801e-01, -2.003320958492706416e-01, -2.004142715196198521e-01, -2.004960719152339976e-01, -2.005774971461216361e-01, -2.006585473226870642e-01, -2.007392225557299292e-01, -2.008195229564442852e-01, -2.008994486364219789e-01, -2.009789997076454060e-01, -2.010581762824937280e-01, -2.011369784737403466e-01, -2.012154063945523486e-01, -2.012934601584906724e-01, -2.013711398795095808e-01, -2.014484456719577987e-01, -2.015253776505746552e-01, -2.016019359304946912e-01, -2.016781206272443006e-01, -2.017539318567422302e-01, -2.018293697352995797e-01, -2.019044343796192464e-01, -2.019791259067957034e-01, -2.020534444343158320e-01, -2.021273900800557299e-01, -2.022009629622844029e-01, -2.022741631996609613e-01, -2.023469909112353138e-01, -2.024194462164470576e-01, -2.024915292351266438e-01, -2.025632400874940175e-01, -2.026345788941577575e-01, -2.027055457761183510e-01, -2.027761408547630317e-01, -2.028463642518686660e-01, -2.029162160896001987e-01, -2.029856964905131234e-01, -2.030548055775486804e-01, -2.031235434740363555e-01, -2.031919103036946284e-01, -2.032599061906295856e-01, -2.033275312593321171e-01, -2.033947856346823568e-01, -2.034616694419466298e-01, -2.035281828067773968e-01, -2.035943258552137813e-01, -2.036600987136805430e-01, -2.037255015089877164e-01, -2.037905343683329984e-01, -2.038551974192970018e-01, -2.039194907898456699e-01, -2.039834146083308875e-01, -2.040469690034884265e-01, -2.041101541044386958e-01, -2.041729700406856585e-01, -2.042354169421172483e-01, -2.042974949390050921e-01, -2.043592041620033162e-01, -2.044205447421506283e-01, -2.044815168108681525e-01, -2.045421204999580134e-01, -2.046023559416063065e-01, -2.046622232683808496e-01, -2.047217226132302392e-01, -2.047808541094869039e-01, -2.048396178908618859e-01, -2.048980140914491432e-01, -2.049560428457229133e-01, -2.050137042885379068e-01, -2.050709985551291969e-01, -2.051279257811112200e-01, -2.051844861024794409e-01, -2.052406796556084656e-01, -2.052965065772518471e-01, -2.053519670045422518e-01, -2.054070610749914871e-01, -2.054617889264886699e-01, -2.055161506973029462e-01, -2.055701465260805216e-01, -2.056237765518454663e-01, -2.056770409139993538e-01, -2.057299397523202622e-01, -2.057824732069647444e-01, -2.058346414184651918e-01, -2.058864445277298061e-01, -2.059378826760452919e-01, -2.059889560050711943e-01, -2.060396646568449508e-01, -2.060900087737788933e-01, -2.061399884986596653e-01, -2.061896039746506926e-01, -2.062388553452868534e-01, -2.062877427544816122e-01, -2.063362663465193592e-01, -2.063844262660587403e-01, -2.064322226581331576e-01, -2.064796556681488815e-01, -2.065267254418840515e-01, -2.065734321254913686e-01, -2.066197758654955141e-01, -2.066657568087929830e-01, -2.067113751026517510e-01, -2.067566308947129672e-01, -2.068015243329885955e-01, -2.068460555658607480e-01, -2.068902247420844054e-01, -2.069340320107840026e-01, -2.069774775214545670e-01, -2.070205614239605529e-01, -2.070632838685375343e-01, -2.071056450057901788e-01, -2.071476449866916925e-01, -2.071892839625854577e-01, -2.072305620851824515e-01, -2.072714795065643267e-01, -2.073120363791780274e-01, -2.073522328558396743e-01, -2.073920690897347596e-01, -2.074315452344132893e-01, -2.074706614437935304e-01, -2.075094178721625382e-01, -2.075478146741705499e-01, -2.075858520048367017e-01, -2.076235300195436728e-01, -2.076608488740437353e-01, -2.076978087244515936e-01, -2.077344097272471046e-01, -2.077706520392767209e-01, -2.078065358177499655e-01, -2.078420612202420414e-01, -2.078772284046916663e-01, -2.079120375294006839e-01, -2.079464887530358408e-01, -2.079805822346257604e-01, -2.080143181335633307e-01, -2.080476966096034830e-01, -2.080807178228636645e-01, -2.081133819338218394e-01, -2.081456891033209022e-01, -2.081776394925644036e-01, -2.082092332631143017e-01, -2.082404705768981235e-01, -2.082713515961994721e-01, -2.083018764836662429e-01, -2.083320454023048773e-01, -2.083618585154817515e-01, -2.083913159869221210e-01, -2.084204179807111756e-01, -2.084491646612947058e-01, -2.084775561934734678e-01, -2.085055927424111777e-01, -2.085332744736250465e-01, -2.085606015529949397e-01, -2.085875741467535516e-01, -2.086141924214954535e-01, -2.086404565441685177e-01, -2.086663666820795238e-01, -2.086919230028902450e-01, -2.087171256746191417e-01, -2.087419748656416940e-01, -2.087664707446869605e-01, -2.087906134808410474e-01, -2.088144032435443331e-01, -2.088378402025907743e-01, -2.088609245281305982e-01, -2.088836563906665555e-01, -2.089060359610557527e-01, -2.089280634105099843e-01, -2.089497389105929304e-01, -2.089710626332210164e-01, -2.089920347506637743e-01, -2.090126554355437039e-01, -2.090329248608347457e-01, -2.090528431998621428e-01, -2.090724106263028015e-01, -2.090916273141851245e-01, -2.091104934378898161e-01, -2.091290091721450251e-01, -2.091471746920308961e-01, -2.091649901729782657e-01, -2.091824557907651094e-01, -2.091995717215228423e-01, -2.092163381417279366e-01, -2.092327552282081948e-01, -2.092488231581375591e-01, -2.092645421090410240e-01, -2.092799122587900018e-01, -2.092949337856027936e-01, -2.093096068680457833e-01, -2.093239316850328269e-01, -2.093379084158241421e-01, -2.093515372400243935e-01, -2.093648183375875493e-01, -2.093777518888117195e-01, -2.093903380743398490e-01, -2.094025770751607174e-01, -2.094144690726088276e-01, -2.094260142483616582e-01, -2.094372127844415232e-01, -2.094480648632157382e-01, -2.094585706673935399e-01, -2.094687303800290279e-01, -2.094785441845180285e-01, -2.094880122645994547e-01, -2.094971348043558335e-01, -2.095059119882099474e-01, -2.095143440009272495e-01, -2.095224310276153912e-01, -2.095301732537212802e-01, -2.095375708650358826e-01, -2.095446240476873667e-01, -2.095513329881455999e-01, -2.095576978732202611e-01, -2.095637188900616177e-01, -2.095693962261575560e-01, -2.095747300693360238e-01, -2.095797206077640029e-01, -2.095843680299457334e-01, -2.095886725247239901e-01, -2.095926342812803045e-01, -2.095962534891322171e-01, -2.095995303381348596e-01, -2.096024650184802607e-01, -2.096050577206979570e-01, -2.096073086356520510e-01, -2.096092179545432088e-01, -2.096107858689083836e-01, -2.096120125706184278e-01, -2.096128982518798145e-01, -2.096134431052337488e-01, -2.096136473235569730e-01, -2.096135111000559659e-01, -2.096130346282760737e-01, -2.096122181020937114e-01, -2.096110617157176115e-01, -2.096095656636899340e-01, -2.096077301408852955e-01, -2.096055553425103246e-01, -2.096030414641042450e-01, -2.096001887015360721e-01, -2.095969972510070556e-01, -2.095934673090494860e-01, -2.095895990725242519e-01, -2.095853927386253923e-01, -2.095808485048742675e-01, -2.095759665691228624e-01, -2.095707471295527313e-01, -2.095651903846732222e-01, -2.095592965333226421e-01, -2.095530657746669245e-01, -2.095464983082028221e-01, -2.095395943337503286e-01, -2.095323540514602567e-01, -2.095247776618081870e-01, -2.095168653655970770e-01, -2.095086173639561511e-01, -2.095000338583406785e-01, -2.094911150505320840e-01, -2.094818611426349786e-01, -2.094722723370819606e-01, -2.094623488366282316e-01, -2.094520908443534557e-01, -2.094414985636627036e-01, -2.094305721982822055e-01, -2.094193119522644309e-01, -2.094077180299828145e-01, -2.093957906361332000e-01, -2.093835299757370594e-01, -2.093709362541333052e-01, -2.093580096769853960e-01, -2.093447504502775613e-01, -2.093311587803157736e-01, -2.093172348737251665e-01, -2.093029789374514227e-01, -2.092883911787622175e-01, -2.092734718052428611e-01, -2.092582210247987407e-01, -2.092426390456550434e-01, -2.092267260763535086e-01, -2.092104823257563140e-01, -2.091939080030430498e-01, -2.091770033177116073e-01, -2.091597684795752921e-01, -2.091422036987672095e-01, -2.091243091857349912e-01, -2.091060851512433205e-01, -2.090875318063729893e-01, -2.090686493625197873e-01, -2.090494380313976663e-01, -2.090298980250304695e-01, -2.090100295557626997e-01, -2.089898328362481128e-01, -2.089693080794571556e-01, -2.089484554986735243e-01, -2.089272753074940536e-01, -2.089057677198284946e-01, -2.088839329499001807e-01, -2.088617712122425307e-01, -2.088392827217036007e-01, -2.088164676934406161e-01, -2.087933263429239128e-01, -2.087698588859349946e-01, -2.087460655385635910e-01, -2.087219465172127641e-01, -2.086975020385925805e-01, -2.086727323197256068e-01, -2.086476375779405812e-01, -2.086222180308784091e-01, -2.085964738964851406e-01, -2.085704053930176882e-01, -2.085440127390398857e-01, -2.085172961534237923e-01, -2.084902558553468066e-01, -2.084628920642947192e-01, -2.084352050000596035e-01, -2.084071948827402321e-01, -2.083788619327389957e-01, -2.083502063707660390e-01, -2.083212284178357077e-01, -2.082919282952672146e-01, -2.082623062246841406e-01, -2.082323624280141561e-01, -2.082020971274886889e-01, -2.081715105456418968e-01, -2.081406029053129159e-01, -2.081093744296408921e-01, -2.080778253420699497e-01, -2.080459558663434461e-01, -2.080137662265086340e-01, -2.079812566469138591e-01, -2.079484273522063109e-01, -2.079152785673358261e-01, -2.078818105175521680e-01, -2.078480234284043882e-01, -2.078139175257407156e-01, -2.077794930357105829e-01, -2.077447501847593525e-01, -2.077096891996332018e-01, -2.076743103073761532e-01, -2.076386137353281036e-01, -2.076025997111284327e-01, -2.075662684627126164e-01, -2.075296202183125049e-01, -2.074926552064582097e-01, -2.074553736559729966e-01, -2.074177757959780877e-01, -2.073798618558899409e-01, -2.073416320654166700e-01, -2.073030866545660100e-01, -2.072642258536363247e-01, -2.072250498932203810e-01, -2.071855590042063211e-01, -2.071457534177726933e-01, -2.071056333653928938e-01, -2.070651990788314190e-01, -2.070244507901468911e-01, -2.069833887316869514e-01, -2.069420131360925064e-01, -2.069003242362950634e-01, -2.068583222655165366e-01, -2.068160074572684692e-01, -2.067733800453544490e-01, -2.067304402638650285e-01, -2.066871883471817217e-01, -2.066436245299735908e-01, -2.065997490472005482e-01, -2.065555621341075565e-01, -2.065110640262295960e-01, -2.064662549593881402e-01, -2.064211351696912944e-01, -2.063757048935355443e-01, -2.063299643676014816e-01, -2.062839138288571905e-01, -2.062375535145553329e-01, -2.061908836622348695e-01, -2.061439045097191447e-01, -2.060966162951159975e-01, -2.060490192568167067e-01, -2.060011136334976289e-01, -2.059528996641185883e-01, -2.059043775879195737e-01, -2.058555476444268173e-01, -2.058064100734482982e-01, -2.057569651150709944e-01, -2.057072130096674889e-01, -2.056571539978884200e-01, -2.056067883206673941e-01, -2.055561162192165170e-01, -2.055051379350308072e-01, -2.054538537098818951e-01, -2.054022637858222700e-01, -2.053503684051846967e-01, -2.052981678105771646e-01, -2.052456622448902701e-01, -2.051928519512893623e-01, -2.051397371732179009e-01, -2.050863181543966518e-01, -2.050325951388239920e-01, -2.049785683707742723e-01, -2.049242380947976783e-01, -2.048696045557195089e-01, -2.048146679986415919e-01, -2.047594286689395082e-01, -2.047038868122654509e-01, -2.046480426745422021e-01, -2.045918965019705993e-01, -2.045354485410215972e-01, -2.044786990384411807e-01, -2.044216482412466174e-01, -2.043642963967290671e-01, -2.043066437524500567e-01, -2.042486905562442279e-01, -2.041904370562167559e-01, -2.041318835007429056e-01, -2.040730301384698353e-01, -2.040138772183138494e-01, -2.039544249894600370e-01, -2.038946737013661026e-01, -2.038346236037557602e-01, -2.037742749466208703e-01, -2.037136279802247707e-01, -2.036526829550944773e-01, -2.035914401220290937e-01, -2.035298997320905412e-01, -2.034680620366102755e-01, -2.034059272871841795e-01, -2.033434957356757833e-01, -2.032807676342126280e-01, -2.032177432351889579e-01, -2.031544227912623624e-01, -2.030908065553562458e-01, -2.030268947806569690e-01, -2.029626877206153757e-01, -2.028981856289447105e-01, -2.028333887596224516e-01, -2.027682973668877286e-01, -2.027029117052414897e-01, -2.026372320294465568e-01, -2.025712585945285138e-01, -2.025049916557729868e-01, -2.024384314687255326e-01, -2.023715782891924442e-01, -2.023044323732410554e-01, -2.022369939771970770e-01, -2.021692633576441522e-01, -2.021012407714281034e-01, -2.020329264756497711e-01, -2.019643207276688168e-01, -2.018954237851038613e-01, -2.018262359058287658e-01, -2.017567573479760734e-01, -2.016869883699330679e-01, -2.016169292303435223e-01, -2.015465801881089480e-01, -2.014759415023820444e-01, -2.014050134325743313e-01, -2.013337962383492941e-01, -2.012622901796261021e-01, -2.011904955165766118e-01, -2.011184125096268649e-01, -2.010460414194546463e-01, -2.009733825069913438e-01, -2.009004360334209205e-01, -2.008272022601784168e-01, -2.007536814489494781e-01, -2.006798738616720201e-01, -2.006057797605339532e-01, -2.005313994079746254e-01, -2.004567330666814917e-01, -2.003817809995929733e-01, -2.003065434698954317e-01, -2.002310207410242793e-01, -2.001552130766639515e-01, -2.000791207407464078e-01, -2.000027439974494947e-01, -1.999260831112010806e-01, -1.998491383466735327e-01, -1.997719099687864930e-01, -1.996943982427066833e-01, -1.996166034338433537e-01, -1.995385258078540003e-01, -1.994601656306390081e-01, -1.993815231683437605e-01, -1.993025986873576683e-01, -1.992233924543147239e-01, -1.991439047360911707e-01, -1.990641357998046423e-01, -1.989840859128188255e-01, -1.989037553427352167e-01, -1.988231443573998947e-01, -1.987422532249001339e-01, -1.986610822135624066e-01, -1.985796315919554078e-01, -1.984979016288865028e-01, -1.984158925934031703e-01, -1.983336047547923919e-01, -1.982510383825805966e-01, -1.981681937465309962e-01, -1.980850711166471656e-01, -1.980016707631692130e-01, -1.979179929565738905e-01, -1.978340379675757044e-01, -1.977498060671256108e-01, -1.976652975264104328e-01, -1.975805126168537207e-01, -1.974954516101127266e-01, -1.974101147780805421e-01, -1.973245023928854591e-01, -1.972386147268878065e-01, -1.971524520526843072e-01, -1.970660146431031379e-01, -1.969793027712066213e-01, -1.968923167102877014e-01, -1.968050567338742174e-01, -1.967175231157235471e-01, -1.966297161298254659e-01, -1.965416360504008975e-01, -1.964532831518996381e-01, -1.963646577090042145e-01, -1.962757599966250543e-01, -1.961865902899020686e-01, -1.960971488642057614e-01, -1.960074359951327894e-01, -1.959174519585086538e-01, -1.958271970303883946e-01, -1.957366714870525382e-01, -1.956458756050095671e-01, -1.955548096609929232e-01, -1.954634739319644487e-01, -1.953718686951102235e-01, -1.952799942278411749e-01, -1.951878508077954377e-01, -1.950954387128345235e-01, -1.950027582210422661e-01, -1.949098096107292066e-01, -1.948165931604267098e-01, -1.947231091488913768e-01, -1.946293578550997716e-01, -1.945353395582533895e-01, -1.944410545377733279e-01, -1.943465030733033949e-01, -1.942516854447061403e-01, -1.941566019320668801e-01, -1.940612528156909766e-01, -1.939656383761017011e-01, -1.938697588940422323e-01, -1.937736146504763779e-01, -1.936772059265844947e-01, -1.935805330037654592e-01, -1.934835961636359458e-01, -1.933863956880299828e-01, -1.932889318589982863e-01, -1.931912049588082325e-01, -1.930932152699430526e-01, -1.929949630751023326e-01, -1.928964486571989601e-01, -1.927976722993630654e-01, -1.926986342849368039e-01, -1.925993348974789632e-01, -1.924997744207590789e-01, -1.923999531387626249e-01, -1.922998713356860734e-01, -1.921995292959385593e-01, -1.920989273041407985e-01, -1.919980656451269196e-01, -1.918969446039396898e-01, -1.917955644658350112e-01, -1.916939255162773692e-01, -1.915920280409414977e-01, -1.914898723257115742e-01, -1.913874586566822744e-01, -1.912847873201552751e-01, -1.911818586026410582e-01, -1.910786727908573568e-01, -1.909752301717313472e-01, -1.908715310323946812e-01, -1.907675756601882322e-01, -1.906633643426570157e-01, -1.905588973675520215e-01, -1.904541750228314900e-01, -1.903491975966567773e-01, -1.902439653773929928e-01, -1.901384786536136628e-01, -1.900327377140918206e-01, -1.899267428478045860e-01, -1.898204943439334158e-01, -1.897139924918615217e-01, -1.896072375811742039e-01, -1.895002299016586844e-01, -1.893929697433029413e-01, -1.892854573962964304e-01, -1.891776931510278925e-01, -1.890696772980886287e-01, -1.889614101282662550e-01, -1.888528919325507538e-01, -1.887441230021280614e-01, -1.886351036283848981e-01, -1.885258341029040219e-01, -1.884163147174668929e-01, -1.883065457640513418e-01, -1.881965275348336242e-01, -1.880862603221842566e-01, -1.879757444186700710e-01, -1.878649801170547973e-01, -1.877539677102949833e-01, -1.876427074915436588e-01, -1.875311997541474485e-01, -1.874194447916466000e-01, -1.873074428977742900e-01, -1.871951943664587337e-01, -1.870826994918179387e-01, -1.869699585681645349e-01, -1.868569718900004173e-01, -1.867437397520200770e-01, -1.866302624491102680e-01, -1.865165402763462876e-01, -1.864025735289931429e-01, -1.862883625025071599e-01, -1.861739074925330972e-01, -1.860592087949038131e-01, -1.859442667056425691e-01, -1.858290815209579505e-01, -1.857136535372480302e-01, -1.855979830510974538e-01, -1.854820703592767461e-01, -1.853659157587446982e-01, -1.852495195466436206e-01, -1.851328820203028691e-01, -1.850160034772365125e-01, -1.848988842151422229e-01, -1.847815245319034405e-01, -1.846639247255865701e-01, -1.845460850944413977e-01, -1.844280059369007574e-01, -1.843096875515791433e-01, -1.841911302372745141e-01, -1.840723342929652673e-01, -1.839533000178130151e-01, -1.838340277111574494e-01, -1.837145176725205886e-01, -1.835947702016038907e-01, -1.834747855982877540e-01, -1.833545641626329881e-01, -1.832341061948783989e-01, -1.831134119954405115e-01, -1.829924818649149021e-01, -1.828713161040748381e-01, -1.827499150138676143e-01, -1.826282788954208813e-01, -1.825064080500368169e-01, -1.823843027791933746e-01, -1.822619633845433962e-01, -1.821393901679155825e-01, -1.820165834313123843e-01, -1.818935434769110848e-01, -1.817702706070622176e-01, -1.816467651242893999e-01, -1.815230273312885556e-01, -1.813990575309289144e-01, -1.812748560262517628e-01, -1.811504231204684456e-01, -1.810257591169625313e-01, -1.809008643192893118e-01, -1.807757390311719170e-01, -1.806503835565044791e-01, -1.805247981993518824e-01, -1.803989832639452673e-01, -1.802729390546859711e-01, -1.801466658761438078e-01, -1.800201640330552910e-01, -1.798934338303244951e-01, -1.797664755730228880e-01, -1.796392895663878331e-01, -1.795118761158225051e-01, -1.793842355268953914e-01, -1.792563681053422897e-01, -1.791282741570601189e-01, -1.789999539881140800e-01, -1.788714079047296901e-01, -1.787426362132982227e-01, -1.786136392203726553e-01, -1.784844172326685852e-01, -1.783549705570662280e-01, -1.782252995006031182e-01, -1.780954043704826295e-01, -1.779652854740649548e-01, -1.778349431188739060e-01, -1.777043776125921959e-01, -1.775735892630619650e-01, -1.774425783782840327e-01, -1.773113452664190626e-01, -1.771798902357842320e-01, -1.770482135948577840e-01, -1.769163156522721714e-01, -1.767841967168181927e-01, -1.766518570974439095e-01, -1.765192971032525926e-01, -1.763865170435031937e-01, -1.762535172276103179e-01, -1.761202979651437239e-01, -1.759868595658277135e-01, -1.758532023395388277e-01, -1.757193265963104822e-01, -1.755852326463253898e-01, -1.754509207999231379e-01, -1.753163913675919172e-01, -1.751816446599736010e-01, -1.750466809878611085e-01, -1.749115006621998758e-01, -1.747761039940825545e-01, -1.746404912947551735e-01, -1.745046628756119211e-01, -1.743686190481970599e-01, -1.742323601242028175e-01, -1.740958864154705521e-01, -1.739591982339893372e-01, -1.738222958918961836e-01, -1.736851797014743737e-01, -1.735478499751545167e-01, -1.734103070255139378e-01, -1.732725511652748462e-01, -1.731345827073053623e-01, -1.729964019646192674e-01, -1.728580092503733956e-01, -1.727194048778702695e-01, -1.725805891605546316e-01, -1.724415624120157753e-01, -1.723023249459843254e-01, -1.721628770763358462e-01, -1.720232191170843472e-01, -1.718833513823886661e-01, -1.717432741865465851e-01, -1.716029878439979950e-01, -1.714624926693217311e-01, -1.713217889772370439e-01, -1.711808770826030446e-01, -1.710397573004163452e-01, -1.708984299458144451e-01, -1.707568953340704021e-01, -1.706151537805955243e-01, -1.704732056009405639e-01, -1.703310511107892777e-01, -1.701886906259650889e-01, -1.700461244624251467e-01, -1.699033529362632966e-01, -1.697603763637084984e-01, -1.696171950611230772e-01, -1.694738093450045002e-01, -1.693302195319841830e-01, -1.691864259388261849e-01, -1.690424288824274035e-01, -1.688982286798174637e-01, -1.687538256481587173e-01, -1.686092201047436900e-01, -1.684644123669973570e-01, -1.683194027524735625e-01, -1.681741915788582120e-01, -1.680287791639674677e-01, -1.678831658257438353e-01, -1.677373518822626308e-01, -1.675913376517245423e-01, -1.674451234524606813e-01, -1.672987096029290022e-01, -1.671520964217130811e-01, -1.670052842275252525e-01, -1.668582733392049433e-01, -1.667110640757144824e-01, -1.665636567561440406e-01, -1.664160516997080785e-01, -1.662682492257462619e-01, -1.661202496537210194e-01, -1.659720533032206236e-01, -1.658236604939548053e-01, -1.656750715457572798e-01, -1.655262867785829706e-01, -1.653773065125105357e-01, -1.652281310677387038e-01, -1.650787607645879396e-01, -1.649291959234993055e-01, -1.647794368650342955e-01, -1.646294839098746410e-01, -1.644793373788195623e-01, -1.643289975927897106e-01, -1.641784648728227824e-01, -1.640277395400748239e-01, -1.638768219158196482e-01, -1.637257123214484467e-01, -1.635744110784681793e-01, -1.634229185085030456e-01, -1.632712349332939572e-01, -1.631193606746954572e-01, -1.629672960546781346e-01, -1.628150413953268483e-01, -1.626625970188407266e-01, -1.625099632475327793e-01, -1.623571404038288979e-01, -1.622041288102682444e-01, -1.620509287895026129e-01, -1.618975406642947645e-01, -1.617439647575190376e-01, -1.615902013921623470e-01, -1.614362508913202987e-01, -1.612821135782007698e-01, -1.611277897761197453e-01, -1.609732798085030114e-01, -1.608185839988854615e-01, -1.606637026709103466e-01, -1.605086361483291368e-01, -1.603533847550003832e-01, -1.601979488148902175e-01, -1.600423286520714361e-01, -1.598865245907229449e-01, -1.597305369551298981e-01, -1.595743660696821997e-01, -1.594180122588749748e-01, -1.592614758473089032e-01, -1.591047571596863608e-01, -1.589478565208155281e-01, -1.587907742556075308e-01, -1.586335106890742752e-01, -1.584760661463331388e-01, -1.583184409526016689e-01, -1.581606354331979991e-01, -1.580026499135427642e-01, -1.578444847191567690e-01, -1.576861401756609327e-01, -1.575276166087757057e-01, -1.573689143443207372e-01, -1.572100337082149579e-01, -1.570509750264748317e-01, -1.568917386252170476e-01, -1.567323248306517203e-01, -1.565727339690896058e-01, -1.564129663669374115e-01, -1.562530223506972404e-01, -1.560929022469664251e-01, -1.559326063824396369e-01, -1.557721350839042229e-01, -1.556114886782433426e-01, -1.554506674924340248e-01, -1.552896718535464460e-01, -1.551285020887442079e-01, -1.549671585252834216e-01, -1.548056414905121247e-01, -1.546439513118711973e-01, -1.544820883168915582e-01, -1.543200528331966637e-01, -1.541578451884986767e-01, -1.539954657106007430e-01, -1.538329147273957975e-01, -1.536701925668655377e-01, -1.535072995570803955e-01, -1.533442360261999260e-01, -1.531810023024700040e-01, -1.530175987142251282e-01, -1.528540255898865052e-01, -1.526902832579618285e-01, -1.525263720470449169e-01, -1.523622922858144657e-01, -1.521980443030357955e-01, -1.520336284275588812e-01, -1.518690449883162985e-01, -1.517042943143261935e-01, -1.515393767346894516e-01, -1.513742925785909466e-01, -1.512090421752966818e-01, -1.510436258541556775e-01, -1.508780439445982779e-01, -1.507122967761373444e-01, -1.505463846783644255e-01, -1.503803079809537535e-01, -1.502140670136565548e-01, -1.500476621063069060e-01, -1.498810935888157392e-01, -1.497143617911740332e-01, -1.495474670434490672e-01, -1.493804096757871680e-01, -1.492131900184126836e-01, -1.490458084016249574e-01, -1.488782651558015202e-01, -1.487105606113948431e-01, -1.485426950989327533e-01, -1.483746689490192672e-01, -1.482064824923324531e-01, -1.480381360596242091e-01, -1.478696299817209847e-01, -1.477009645895225320e-01, -1.475321402140009619e-01, -1.473631571862009659e-01, -1.471940158372395668e-01, -1.470247164983054800e-01, -1.468552595006584471e-01, -1.466856451756282653e-01, -1.465158738546155637e-01, -1.463459458690918591e-01, -1.461758615505958647e-01, -1.460056212307372370e-01, -1.458352252411933836e-01, -1.456646739137089364e-01, -1.454939675800970833e-01, -1.453231065722392912e-01, -1.451520912220814752e-01, -1.449809218616375239e-01, -1.448095988229862185e-01, -1.446381224382728425e-01, -1.444664930397069336e-01, -1.442947109595623945e-01, -1.441227765301779928e-01, -1.439506900839555292e-01, -1.437784519533605310e-01, -1.436060624709215583e-01, -1.434335219692280949e-01, -1.432608307809333237e-01, -1.430879892387511010e-01, -1.429149976754560125e-01, -1.427418564238842336e-01, -1.425685658169306147e-01, -1.423951261875513741e-01, -1.422215378687605725e-01, -1.420478011936327778e-01, -1.418739164952989573e-01, -1.416998841069500581e-01, -1.415257043618333155e-01, -1.413513775932534466e-01, -1.411769041345707909e-01, -1.410022843192037800e-01, -1.408275184806256908e-01, -1.406526069523646449e-01, -1.404775500680047196e-01, -1.403023481611838097e-01, -1.401270015655933787e-01, -1.399515106149791521e-01, -1.397758756431401461e-01, -1.396000969839279460e-01, -1.394241749712454292e-01, -1.392481099390485422e-01, -1.390719022213443290e-01, -1.388955521521904324e-01, -1.387190600656953987e-01, -1.385424262960177344e-01, -1.383656511773649067e-01, -1.381887350439944817e-01, -1.380116782302126255e-01, -1.378344810703737988e-01, -1.376571438988791474e-01, -1.374796670501791940e-01, -1.373020508587705912e-01, -1.371242956591960938e-01, -1.369464017860454463e-01, -1.367683695739532468e-01, -1.365901993575995288e-01, -1.364118914717097897e-01, -1.362334462510535749e-01, -1.360548640304431456e-01, -1.358761451447368096e-01, -1.356972899288331758e-01, -1.355182987176752341e-01, -1.353391718462478022e-01, -1.351599096495768870e-01, -1.349805124627303510e-01, -1.348009806208163852e-01, -1.346213144589845090e-01, -1.344415143124237932e-01, -1.342615805163616116e-01, -1.340815134060667768e-01, -1.339013133168453773e-01, -1.337209805840413879e-01, -1.335405155430373081e-01, -1.333599185292530520e-01, -1.331791898781449213e-01, -1.329983299252057993e-01, -1.328173390059649017e-01, -1.326362174559877760e-01, -1.324549656108729712e-01, -1.322735838062555069e-01, -1.320920723778052364e-01, -1.319104316612234595e-01, -1.317286619922470037e-01, -1.315467637066456419e-01, -1.313647371402194008e-01, -1.311825826288037233e-01, -1.310003005082633898e-01, -1.308178911144951551e-01, -1.306353547834266660e-01, -1.304526918510150457e-01, -1.302699026532493920e-01, -1.300869875261456143e-01, -1.299039468057504032e-01, -1.297207808281391206e-01, -1.295374899294144677e-01, -1.293540744457072067e-01, -1.291705347131759107e-01, -1.289868710680050767e-01, -1.288030838464062633e-01, -1.286191733846170915e-01, -1.284351400188998293e-01, -1.282509840855431682e-01, -1.280667059208595304e-01, -1.278823058611864849e-01, -1.276977842428837495e-01, -1.275131414023366605e-01, -1.273283776759514263e-01, -1.271434934001578754e-01, -1.269584889114078463e-01, -1.267733645461749936e-01, -1.265881206409531778e-01, -1.264027575322578256e-01, -1.262172755566244031e-01, -1.260316750506087213e-01, -1.258459563507851875e-01, -1.256601197937481929e-01, -1.254741657161099477e-01, -1.252880944545010644e-01, -1.251019063455699742e-01, -1.249156017259826362e-01, -1.247291809324206635e-01, -1.245426443015836965e-01, -1.243559921701863635e-01, -1.241692248749588778e-01, -1.239823427526465099e-01, -1.237953461400096988e-01, -1.236082353738227196e-01, -1.234210107908741832e-01, -1.232336727279649685e-01, -1.230462215219091521e-01, -1.228586575095344940e-01, -1.226709810276796486e-01, -1.224831924131958294e-01, -1.222952920029434926e-01, -1.221072801337958896e-01, -1.219191571426358617e-01, -1.217309233663565471e-01, -1.215425791418593415e-01, -1.213541248060562572e-01, -1.211655606958662451e-01, -1.209768871482181235e-01, -1.207881045000471637e-01, -1.205992130882963392e-01, -1.204102132499153682e-01, -1.202211053218601305e-01, -1.200318896410942221e-01, -1.198425665445836813e-01, -1.196531363693022071e-01, -1.194635994522273287e-01, -1.192739561303409190e-01, -1.190842067406283483e-01, -1.188943516200791362e-01, -1.187043911056840373e-01, -1.185143255344392466e-01, -1.183241552433403621e-01, -1.181338805693855770e-01, -1.179435018495746113e-01, -1.177530194209076841e-01, -1.175624336203857784e-01, -1.173717447850087109e-01, -1.171809532517768121e-01, -1.169900593576893577e-01, -1.167990634397443744e-01, -1.166079658349371273e-01, -1.164167668802616046e-01, -1.162254669127090190e-01, -1.160340662692667807e-01, -1.158425652869203432e-01, -1.156509643026495532e-01, -1.154592636534304273e-01, -1.152674636762342358e-01, -1.150755647080276278e-01, -1.148835670857706881e-01, -1.146914711464170483e-01, -1.144992772269152609e-01, -1.143069856642052740e-01, -1.141145967952212209e-01, -1.139221109568884782e-01, -1.137295284861237349e-01, -1.135368497198360055e-01, -1.133440749949242987e-01, -1.131512046482792827e-01, -1.129582390167804817e-01, -1.127651784372971228e-01, -1.125720232466881077e-01, -1.123787737818010835e-01, -1.121854303794717206e-01, -1.119919933765232967e-01, -1.117984631097665577e-01, -1.116048399160004534e-01, -1.114111241320093620e-01, -1.112173160945633815e-01, -1.110234161404193703e-01, -1.108294246063195460e-01, -1.106353418289904855e-01, -1.104411681451431398e-01, -1.102469038914724447e-01, -1.100525494046574598e-01, -1.098581050213600085e-01, -1.096635710782250944e-01, -1.094689479118792635e-01, -1.092742358589311458e-01, -1.090794352559718294e-01, -1.088845464395717250e-01, -1.086895697462831739e-01, -1.084945055126378816e-01, -1.082993540751483463e-01, -1.081041157703054451e-01, -1.079087909345783636e-01, -1.077133799044165952e-01, -1.075178830162460825e-01, -1.073223006064716184e-01, -1.071266330114738347e-01, -1.069308805676109642e-01, -1.067350436112170092e-01, -1.065391224786028934e-01, -1.063431175060542411e-01, -1.061470290298320435e-01, -1.059508573861710629e-01, -1.057546029112814978e-01, -1.055582659413466518e-01, -1.053618468125236823e-01, -1.051653458609414643e-01, -1.049687634227028793e-01, -1.047720998338820819e-01, -1.045753554305246802e-01, -1.043785305486482629e-01, -1.041816255242407063e-01, -1.039846406932600359e-01, -1.037875763916349531e-01, -1.035904329552634340e-01, -1.033932107200115358e-01, -1.031959100217162140e-01, -1.029985311961799793e-01, -1.028010745791758523e-01, -1.026035405064419509e-01, -1.024059293136845850e-01, -1.022082413365765913e-01, -1.020104769107571391e-01, -1.018126363718308003e-01, -1.016147200553667307e-01, -1.014167282969002937e-01, -1.012186614319301042e-01, -1.010205197959200135e-01, -1.008223037242967079e-01, -1.006240135524497509e-01, -1.004256496157324846e-01, -1.002272122494595741e-01, -1.000287017889083807e-01, -9.983011856931760242e-02, -9.963146292588641317e-02, -9.943273519377508751e-02, -9.923393570810500053e-02, -9.903506480395561640e-02, -9.883612281636654229e-02, -9.863711008033723693e-02, -9.843802693082477628e-02, -9.823887370274436703e-02, -9.803965073096880534e-02, -9.784035835032943440e-02, -9.764099689561263340e-02, -9.744156670156266242e-02, -9.724206810287881753e-02, -9.704250143421730423e-02, -9.684286703018810116e-02, -9.664316522535652820e-02, -9.644339635424269142e-02, -9.624356075131997035e-02, -9.604365875101586458e-02, -9.584369068771034228e-02, -9.564365689573665896e-02, -9.544355770937985872e-02, -9.524339346287727381e-02, -9.504316449041717851e-02, -9.484287112613941362e-02, -9.464251370413397091e-02, -9.444209255844110418e-02, -9.424160802305085738e-02, -9.404106043190271769e-02, -9.384045011888533794e-02, -9.363977741783539865e-02, -9.343904266253766355e-02, -9.323824618672463260e-02, -9.303738832407684733e-02, -9.283646940822060101e-02, -9.263548977272899332e-02, -9.243444975112181938e-02, -9.223334967686300234e-02, -9.203218988336313300e-02, -9.183097070397659711e-02, -9.162969247200287992e-02, -9.142835552068456773e-02, -9.122696018320834710e-02, -9.102550679270413059e-02, -9.082399568224396036e-02, -9.062242718484274373e-02, -9.042080163345675436e-02, -9.021911936098396534e-02, -9.001738070026343852e-02, -8.981558598407449190e-02, -8.961373554513719919e-02, -8.941182971611132124e-02, -8.920986882959570929e-02, -8.900785321812833273e-02, -8.880578321418558518e-02, -8.860365915018164618e-02, -8.840148135847024358e-02, -8.819925017133982414e-02, -8.799696592101770298e-02, -8.779462893966705206e-02, -8.759223955938667816e-02, -8.738979811221124494e-02, -8.718730493011174476e-02, -8.698476034499237619e-02, -8.678216468869301425e-02, -8.657951829298693447e-02, -8.637682148958136796e-02, -8.617407461011614145e-02, -8.597127798616512051e-02, -8.576843194923297609e-02, -8.556553683075746042e-02, -8.536259296210754743e-02, -8.515960067458347438e-02, -8.495656029941607568e-02, -8.475347216776692172e-02, -8.455033661072633433e-02, -8.434715395931584314e-02, -8.414392454448510472e-02, -8.394064869711212462e-02, -8.373732674800424269e-02, -8.353395902789589877e-02, -8.333054586744918779e-02, -8.312708759725340180e-02, -8.292358454782439159e-02, -8.272003704960464998e-02, -8.251644543296181300e-02, -8.231281002818933989e-02, -8.210913116550583313e-02, -8.190540917505424734e-02, -8.170164438690202813e-02, -8.149783713103996019e-02, -8.129398773738299999e-02, -8.109009653576865206e-02, -8.088616385595669145e-02, -8.068219002762949676e-02, -8.047817538039171714e-02, -8.027412024376859301e-02, -8.007002494720624752e-02, -7.986588982007183923e-02, -7.966171519165260451e-02, -7.945750139115538568e-02, -7.925324874770708905e-02, -7.904895759035210356e-02, -7.884462824805488212e-02, -7.864026104969687458e-02, -7.843585632407826247e-02, -7.823141439991584956e-02, -7.802693560584361698e-02, -7.782242027041205712e-02, -7.761786872208781274e-02, -7.741328128925334395e-02, -7.720865830020594289e-02, -7.700400008315884393e-02, -7.679930696623857300e-02, -7.659457927748705708e-02, -7.638981734485844610e-02, -7.618502149622154163e-02, -7.598019205935736820e-02, -7.577532936195949254e-02, -7.557043373163430111e-02, -7.536550549589880743e-02, -7.516054498218195656e-02, -7.495555251782355655e-02, -7.475052843007364001e-02, -7.454547304609325520e-02, -7.434038669295162105e-02, -7.413526969762881946e-02, -7.393012238701295036e-02, -7.372494508790090884e-02, -7.351973812699759414e-02, -7.331450183091571537e-02, -7.310923652617508373e-02, -7.290394253920316758e-02, -7.269862019633287209e-02, -7.249326982380410733e-02, -7.228789174776210913e-02, -7.208248629425723086e-02, -7.187705378924572064e-02, -7.167159455858694572e-02, -7.146610892804568238e-02, -7.126059722328967339e-02, -7.105505976989084926e-02, -7.084949689332276090e-02, -7.064390891896261959e-02, -7.043829617208946514e-02, -7.023265897788422141e-02, -7.002699766142923832e-02, -6.982131254770723716e-02, -6.961560396160194897e-02, -6.940987222789785083e-02, -6.920411767127843117e-02, -6.899834061632650895e-02, -6.879254138752483039e-02, -6.858672030925364038e-02, -6.838087770579218128e-02, -6.817501390131743000e-02, -6.796912921990312662e-02, -6.776322398552091231e-02, -6.755729852203894159e-02, -6.735135315322141047e-02, -6.714538820272786257e-02, -6.693940399411416053e-02, -6.673340085083087625e-02, -6.652737909622358226e-02, -6.632133905353193581e-02, -6.611528104588895727e-02, -6.590920539632207087e-02, -6.570311242775152272e-02, -6.549700246299011708e-02, -6.529087582474331353e-02, -6.508473283560797795e-02, -6.487857381807343726e-02, -6.467239909451938384e-02, -6.446620898721637516e-02, -6.426000381832608355e-02, -6.405378390989927007e-02, -6.384754958387711676e-02, -6.364130116208967236e-02, -6.343503896625569960e-02, -6.322876331798230054e-02, -6.302247453876548555e-02, -6.281617294998861900e-02, -6.260985887292125351e-02, -6.240353262872146839e-02, -6.219719453843282342e-02, -6.199084492298532340e-02, -6.178448410319527934e-02, -6.157811239976322681e-02, -6.137173013327561211e-02, -6.116533762420329340e-02, -6.095893519290113832e-02, -6.075252315960782273e-02, -6.054610184444576132e-02, -6.033967156742009452e-02, -6.013323264841916038e-02, -5.992678540721290553e-02, -5.972033016345368317e-02, -5.951386723667503875e-02, -5.930739694629199449e-02, -5.910091961160039015e-02, -5.889443555177572426e-02, -5.868794508587413944e-02, -5.848144853283163136e-02, -5.827494621146264014e-02, -5.806843844046121611e-02, -5.786192553839906300e-02, -5.765540782372695350e-02, -5.744888561477233535e-02, -5.724235922974090646e-02, -5.703582898671470669e-02, -5.682929520365261750e-02, -5.662275819838950841e-02, -5.641621828863631338e-02, -5.620967579197929526e-02, -5.600313102587946984e-02, -5.579658430767282795e-02, -5.559003595456996766e-02, -5.538348628365461629e-02, -5.517693561188455331e-02, -5.497038425609064582e-02, -5.476383253297661957e-02, -5.455728075911822628e-02, -5.435072925096384039e-02, -5.414417832483267579e-02, -5.393762829691588212e-02, -5.373107948327538602e-02, -5.352453219984372457e-02, -5.331798676242292812e-02, -5.311144348668557502e-02, -5.290490268817334835e-02, -5.269836468229659177e-02, -5.249182978433501734e-02, -5.228529830943599160e-02, -5.207877057261506293e-02, -5.187224688875509415e-02, -5.166572757260620014e-02, -5.145921293878544939e-02, -5.125270330177610079e-02, -5.104619897592736766e-02, -5.083970027545434839e-02, -5.063320751443706191e-02, -5.042672100682082936e-02, -5.022024106641514996e-02, -5.001376800689431162e-02, -4.980730214179553833e-02, -4.960084378452016968e-02, -4.939439324833187067e-02, -4.918795084635782522e-02, -4.898151689158692507e-02, -4.877509169687049145e-02, -4.856867557492067222e-02, -4.836226883831157286e-02, -4.815587179947780627e-02, -4.794948477071413889e-02, -4.774310806417604580e-02, -4.753674199187838539e-02, -4.733038686569513570e-02, -4.712404299735994256e-02, -4.691771069846421838e-02, -4.671139028045850905e-02, -4.650508205465030132e-02, -4.629878633220542439e-02, -4.609250342414630830e-02, -4.588623364135243493e-02, -4.567997729455980371e-02, -4.547373469436006427e-02, -4.526750615120083560e-02, -4.506129197538531750e-02, -4.485509247707102770e-02, -4.464890796627012104e-02, -4.444273875284984743e-02, -4.423658514653054652e-02, -4.403044745688611261e-02, -4.382432599334365464e-02, -4.361822106518316311e-02, -4.341213298153689254e-02, -4.320606205138934758e-02, -4.300000858357647116e-02, -4.279397288678560285e-02, -4.258795526955522215e-02, -4.238195604027408109e-02, -4.217597550718131527e-02, -4.197001397836597203e-02, -4.176407176176671204e-02, -4.155814916517119872e-02, -4.135224649621578596e-02, -4.114636406238504629e-02, -4.094050217101256883e-02, -4.073466112927869726e-02, -4.052884124421163303e-02, -4.032304282268610318e-02, -4.011726617142404722e-02, -3.991151159699312528e-02, -3.970577940580759246e-02, -3.950006990412643915e-02, -3.929438339805452207e-02, -3.908872019354119737e-02, -3.888308059638036912e-02, -3.867746491221012856e-02, -3.847187344651242791e-02, -3.826630650461228245e-02, -3.806076439167827008e-02, -3.785524741272128929e-02, -3.764975587259473261e-02, -3.744429007599394538e-02, -3.723885032745597595e-02, -3.703343693135924958e-02, -3.682805019192286755e-02, -3.662269041320650315e-02, -3.641735789911049181e-02, -3.621205295337472790e-02, -3.600677587957853282e-02, -3.580152698114048848e-02, -3.559630656131788223e-02, -3.539111492320674152e-02, -3.518595236974102897e-02, -3.498081920369278813e-02, -3.477571572767074876e-02, -3.457064224412128434e-02, -3.436559905532729498e-02, -3.416058646340806165e-02, -3.395560477031898949e-02, -3.375065427785077510e-02, -3.354573528762989226e-02, -3.334084810111734298e-02, -3.313599301960913623e-02, -3.293117034423524714e-02, -3.272638037595965166e-02, -3.252162341557979230e-02, -3.231689976372680018e-02, -3.211220972086393372e-02, -3.190755358728730728e-02, -3.170293166312558586e-02, -3.149834424833877766e-02, -3.129379164271863661e-02, -3.108927414588770824e-02, -3.088479205729968355e-02, -3.068034567623843106e-02, -3.047593530181852417e-02, -3.027156123298341620e-02, -3.006722376850653328e-02, -2.986292320699022659e-02, -2.965865984686561277e-02, -2.945443398639211938e-02, -2.925024592365727330e-02, -2.904609595657626012e-02, -2.884198438289165695e-02, -2.863791150017314449e-02, -2.843387760581645232e-02, -2.822988299704474666e-02, -2.802592797090633706e-02, -2.782201282427543623e-02, -2.761813785385158065e-02, -2.741430335615912747e-02, -2.721050962754694227e-02, -2.700675696418890909e-02, -2.680304566208214709e-02, -2.659937601704737142e-02, -2.639574832472892443e-02, -2.619216288059390482e-02, -2.598861997993190051e-02, -2.578511991785526966e-02, -2.558166298929738514e-02, -2.537824948901401534e-02, -2.517487971158165541e-02, -2.497155395139810316e-02, -2.476827250268133149e-02, -2.456503565946983186e-02, -2.436184371562179901e-02, -2.415869696481541193e-02, -2.395559570054721019e-02, -2.375254021613361008e-02, -2.354953080470891316e-02, -2.334656775922594810e-02, -2.314365137245548085e-02, -2.294078193698543058e-02, -2.273795974522112295e-02, -2.253518508938522416e-02, -2.233245826151668278e-02, -2.212977955347014344e-02, -2.192714925691671354e-02, -2.172456766334310979e-02, -2.152203506405076308e-02, -2.131955175015695300e-02, -2.111711801259225085e-02, -2.091473414210250070e-02, -2.071240042924700833e-02, -2.051011716439866267e-02, -2.030788463774374844e-02, -2.010570313928138411e-02, -1.990357295882324434e-02, -1.970149438599341774e-02, -1.949946771022778927e-02, -1.929749322077366214e-02, -1.909557120669019836e-02, -1.889370195684695122e-02, -1.869188575992450016e-02, -1.849012290441321565e-02, -1.828841367861400516e-02, -1.808675837063692532e-02, -1.788515726840194525e-02, -1.768361065963763856e-02, -1.748211883188112784e-02, -1.728068207247806382e-02, -1.707930066858220908e-02, -1.687797490715501822e-02, -1.667670507496512092e-02, -1.647549145858832539e-02, -1.627433434440724025e-02, -1.607323401861080608e-02, -1.587219076719404570e-02, -1.567120487595772410e-02, -1.547027663050813337e-02, -1.526940631625657747e-02, -1.506859421841943818e-02, -1.486784062201701277e-02, -1.466714581187421318e-02, -1.446651007261988073e-02, -1.426593368868603155e-02, -1.406541694430830589e-02, -1.386496012352456120e-02, -1.366456351017576731e-02, -1.346422738790490833e-02, -1.326395204015735733e-02, -1.306373775017934807e-02, -1.286358480101892736e-02, -1.266349347552498360e-02, -1.246346405634697271e-02, -1.226349682593488172e-02, -1.206359206653861461e-02, -1.186375006020782240e-02, -1.166397108879149193e-02, -1.146425543393774123e-02, -1.126460337709354192e-02, -1.106501519950415721e-02, -1.086549118221307245e-02, -1.066603160606163780e-02, -1.046663675168879246e-02, -1.026730689953015037e-02, -1.006804232981912441e-02, -9.868843322584999050e-03, -9.669710157653691948e-03, -9.470643114646645419e-03, -9.271642472981424937e-03, -9.072708511870537784e-03, -8.873841510321988160e-03, -8.675041747138234616e-03, -8.476309500915792799e-03, -8.277645050045842612e-03, -8.079048672713000021e-03, -7.880520646895481859e-03, -7.682061250364689495e-03, -7.483670760684849738e-03, -7.285349455212680909e-03, -7.087097611097296565e-03, -6.888915505279579257e-03, -6.690803414492200486e-03, -6.492761615259009210e-03, -6.294790383894993679e-03, -6.096889996505932760e-03, -5.899060728987633520e-03, -5.701302857026248685e-03, -5.503616656098048524e-03, -5.306002401468477153e-03, -5.108460368191942644e-03, -4.910990831112106714e-03, -4.713594064861114513e-03, -4.516270343859244210e-03, -4.319019942315325059e-03, -4.121843134225020890e-03, -3.924740193371900436e-03, -3.727711393326523133e-03, -3.530757007446180210e-03, -3.333877308874668745e-03, -3.137072570541929971e-03, -2.940343065163799480e-03, -2.743689065241689765e-03, -2.547110843062271469e-03, -2.350608670697204496e-03, -2.154182820002832708e-03, -1.957833562619857356e-03, -1.761561169973234519e-03, -1.565365913271255481e-03, -1.369248063506142178e-03, -1.173207891453014384e-03, -9.772456676703084304e-04, -7.813616624987748628e-04, -5.855561460612079307e-04, -3.898293882628106393e-04, -1.941816587903659583e-04, 1.386772887924763056e-06, 1.968756375227371852e-04, 3.922846660839125407e-04, 5.876135897607608028e-04, 7.828621399623425514e-04, 9.780300483177644614e-04, 1.173117046676624801e-03, 1.368122867108453227e-03, 1.563047241904942609e-03, 1.757889903578052334e-03, 1.952650584861651516e-03, 2.147329018710986658e-03, 2.341924938303815724e-03, 2.536438077040134922e-03, 2.730868168542614771e-03, 2.925214946656865076e-03, 3.119478145451616644e-03, 3.313657499219543109e-03, 3.507752742476712322e-03, 3.701763609963467597e-03, 3.895689836644509671e-03, 4.089531157709274875e-03, 4.283287308572259963e-03, 4.476958024872843868e-03, 4.670543042476306417e-03, 4.864042097473410264e-03, 5.057454926181777395e-03, 5.250781265144820534e-03, 5.444020851132446576e-03, 5.637173421141951704e-03, 5.830238712397724753e-03, 6.023216462351763285e-03, 6.216106408683768139e-03, 6.408908289301614401e-03, 6.601621842341427737e-03, 6.794246806168325117e-03, 6.986782919376060066e-03, 7.179229920787654103e-03, 7.371587549455750621e-03, 7.563855544662736324e-03, 7.756033645920843572e-03, 7.948121592972947486e-03, 8.140119125792440180e-03, 8.332025984583477096e-03, 8.523841909781809667e-03, 8.715566642054233676e-03, 8.907199922299420189e-03, 9.098741491648056068e-03, 9.290191091463121525e-03, 9.481548463340167682e-03, 9.672813349107576772e-03, 9.863985490827033992e-03, 1.005506463079284749e-02, 1.024605051153428328e-02, 1.043694287581361374e-02, 1.062774146662770480e-02, 1.081844602720753550e-02, 1.100905630101923528e-02, 1.119957203176385509e-02, 1.138999296337775066e-02, 1.158031884003287056e-02, 1.177054940613688275e-02, 1.196068440633398129e-02, 1.215072358550437458e-02, 1.234066668876501738e-02, 1.253051346146994739e-02, 1.272026364921023840e-02, 1.290991699781461784e-02, 1.309947325334953443e-02, 1.328893216211917208e-02, 1.347829347066611429e-02, 1.366755692577219065e-02, 1.385672227445727822e-02, 1.404578926398032147e-02, 1.423475764183997766e-02, 1.442362715577448495e-02, 1.461239755376182725e-02, 1.480106858402032918e-02, 1.498963999500853468e-02, 1.517811153542570485e-02, 1.536648295421239215e-02, 1.555475400054999631e-02, 1.574292442386150334e-02, 1.593099397381161214e-02, 1.611896240030725666e-02, 1.630682945349727977e-02, 1.649459488377325381e-02, 1.668225844176956033e-02, 1.686981987836346300e-02, 1.705727894467631497e-02, 1.724463539207189006e-02, 1.743188897215850255e-02, 1.761903943678841400e-02, 1.780608653805837438e-02, 1.799303002830953194e-02, 1.817986966012814440e-02, 1.836660518634552347e-02, 1.855323636003783361e-02, 1.873976293452818409e-02, 1.892618466338446756e-02, 1.911250130042114678e-02, 1.929871259969916791e-02, 1.948481831552595356e-02, 1.967081820245602727e-02, 1.985671201529096153e-02, 2.004249950908007505e-02, 2.022818043911994365e-02, 2.041375456095569432e-02, 2.059922163038021073e-02, 2.078458140343490690e-02, 2.096983363641011580e-02, 2.115497808584489159e-02, 2.134001450852763410e-02, 2.152494266149648436e-02, 2.170976230203841909e-02, 2.189447318769165846e-02, 2.207907507624392446e-02, 2.226356772573351295e-02, 2.244795089444920344e-02, 2.263222434093131383e-02, 2.281638782397086770e-02, 2.300044110261084684e-02, 2.318438393614555976e-02, 2.336821608412138068e-02, 2.355193730633727695e-02, 2.373554736284417405e-02, 2.391904601394601385e-02, 2.410243302019954986e-02, 2.428570814241491280e-02, 2.446887114165574237e-02, 2.465192177923888200e-02, 2.483485981673571458e-02, 2.501768501597124647e-02, 2.520039713902584924e-02, 2.538299594823387878e-02, 2.556548120618436920e-02, 2.574785267572203204e-02, 2.593011011994688503e-02, 2.611225330221457475e-02, 2.629428198613660214e-02, 2.647619593558045090e-02, 2.665799491467027438e-02, 2.683967868778678462e-02, 2.702124701956736680e-02, 2.720269967490671417e-02, 2.738403641895673785e-02, 2.756525701712699353e-02, 2.774636123508462601e-02, 2.792734883875504920e-02, 2.810821959432192527e-02, 2.828897326822749081e-02, 2.846960962717269908e-02, 2.865012843811753918e-02, 2.883052946828118870e-02, 2.901081248514224623e-02, 2.919097725643905045e-02, 2.937102355017002717e-02, 2.955095113459367887e-02, 2.973075977822877899e-02, 2.991044924985471892e-02, 3.009001931851223652e-02, 3.026946975350291655e-02, 3.044880032438932946e-02, 3.062801080099634629e-02, 3.080710095340968499e-02, 3.098607055197800594e-02, 3.116491936731172543e-02, 3.134364717028403913e-02, 3.152225373203053349e-02, 3.170073882395030990e-02, 3.187910221770507563e-02, 3.205734368522022981e-02, 3.223546299868474546e-02, 3.241345993055178704e-02, 3.259133425353797492e-02, 3.276908574062499524e-02, 3.294671416505837169e-02, 3.312421930034873535e-02, 3.330160092027217161e-02, 3.347885879886942223e-02, 3.365599271044663471e-02, 3.383300242957620191e-02, 3.400988773109575591e-02, 3.418664839010947254e-02, 3.436328418198796031e-02, 3.453979488236810086e-02, 3.471618026715370814e-02, 3.489244011251577821e-02, 3.506857419489230882e-02, 3.524458229098886147e-02, 3.542046417777880429e-02, 3.559621963250333282e-02, 3.577184843267160880e-02, 3.594735035606114876e-02, 3.612272518071842076e-02, 3.629797268495810886e-02, 3.647309264736479928e-02, 3.664808484679137751e-02, 3.682294906236053406e-02, 3.699768507346462565e-02, 3.717229265976584873e-02, 3.734677160119666967e-02, 3.752112167795954717e-02, 3.769534267052784826e-02, 3.786943435964489763e-02, 3.804339652632632296e-02, 3.821722895185775820e-02, 3.839093141779652274e-02, 3.856450370597194061e-02, 3.873794559848463964e-02, 3.891125687770731478e-02, 3.908443732628530398e-02, 3.925748672713599841e-02, 3.943040486344935591e-02, 3.960319151868905291e-02, 3.977584647659075656e-02, 3.994836952116414402e-02, 4.012076043669188935e-02, 4.029301900773091250e-02, 4.046514501911156747e-02, 4.063713825593901624e-02, 4.080899850359172298e-02, 4.098072554772325821e-02, 4.115231917426259017e-02, 4.132377916941259999e-02, 4.149510531965185794e-02, 4.166629741173405455e-02, 4.183735523268883316e-02, 4.200827856982132513e-02, 4.217906721071269099e-02, 4.234972094322032865e-02, 4.252023955547812317e-02, 4.269062283589633577e-02, 4.286087057316221444e-02, 4.303098255623998003e-02, 4.320095857437121489e-02, 4.337079841707443262e-02, 4.354050187414648665e-02, 4.371006873566111312e-02, 4.387949879197099862e-02, 4.404879183370610102e-02, 4.421794765177623765e-02, 4.438696603736825425e-02, 4.455584678194864784e-02, 4.472458967726260920e-02, 4.489319451533499428e-02, 4.506166108846963031e-02, 4.522998918924989870e-02, 4.539817861053955378e-02, 4.556622914548164038e-02, 4.573414058749985384e-02, 4.590191273029830404e-02, 4.606954536786126569e-02, 4.623703829445447583e-02, 4.640439130462371831e-02, 4.657160419319687078e-02, 4.673867675528264182e-02, 4.690560878627125091e-02, 4.707240008183491420e-02, 4.723905043792790692e-02, 4.740555965078631362e-02, 4.757192751692875671e-02, 4.773815383315620914e-02, 4.790423839655248706e-02, 4.807018100448421510e-02, 4.823598145460130521e-02, 4.840163954483631820e-02, 4.856715507340596261e-02, 4.873252783881053957e-02, 4.889775763983392198e-02, 4.906284427554422761e-02, 4.922778754529347905e-02, 4.939258724871837397e-02, 4.955724318574012549e-02, 4.972175515656455935e-02, 4.988612296168277310e-02, 5.005034640187087935e-02, 5.021442527819020007e-02, 5.037835939198773844e-02, 5.054214854489590819e-02, 5.070579253883356063e-02, 5.086929117600492295e-02, 5.103264425890106232e-02, 5.119585159029919896e-02, 5.135891297326270616e-02, 5.152182821114240086e-02, 5.168459710757659920e-02, 5.184721946648922913e-02, 5.200969509209271702e-02, 5.217202378888662756e-02, 5.233420536165803855e-02, 5.249623961548251921e-02, 5.265812635572265921e-02, 5.281986538803042780e-02, 5.298145651834539060e-02, 5.314289955289596551e-02, 5.330419429819916594e-02, 5.346534056106149596e-02, 5.362633814857800663e-02, 5.378718686813278860e-02, 5.394788652739988810e-02, 5.410843693434318896e-02, 5.426883789721546197e-02, 5.442908922456077964e-02, 5.458919072521220550e-02, 5.474914220829339706e-02, 5.490894348321888330e-02, 5.506859435969364142e-02, 5.522809464771324950e-02, 5.538744415756469835e-02, 5.554664269982597519e-02, 5.570569008536613298e-02, 5.586458612534640072e-02, 5.602333063121923279e-02, 5.618192341472881546e-02, 5.634036428791183715e-02, 5.649865306309652391e-02, 5.665678955290434637e-02, 5.681477357024836833e-02, 5.697260492833479406e-02, 5.713028344066271164e-02, 5.728780892102423861e-02, 5.744518118350470243e-02, 5.760240004248273066e-02, 5.775946531263038974e-02, 5.791637680891332379e-02, 5.807313434659115009e-02, 5.822973774121786850e-02, 5.838618680864104266e-02, 5.854248136500254940e-02, 5.869862122673962651e-02, 5.885460621058324904e-02, 5.901043613355975992e-02, 5.916611081299007896e-02, 5.932163006649032733e-02, 5.947699371197207735e-02, 5.963220156764242191e-02, 5.978725345200384955e-02, 5.994214918385477181e-02, 6.009688858228974528e-02, 6.025147146669879161e-02, 6.040589765676874362e-02, 6.056016697248226693e-02, 6.071427923411951838e-02, 6.086823426225646677e-02, 6.102203187776608639e-02, 6.117567190181888437e-02, 6.132915415588197777e-02, 6.148247846172037040e-02, 6.163564464139580784e-02, 6.178865251726848445e-02, 6.194150191199565558e-02, 6.209419264853310860e-02, 6.224672455013427474e-02, 6.239909744035097156e-02, 6.255131114303374984e-02, 6.270336548233094998e-02, 6.285526028269064480e-02, 6.300699536885896734e-02, 6.315857056588082552e-02, 6.330998569910126217e-02, 6.346124059416353991e-02, 6.361233507701123668e-02, 6.376326897388688575e-02, 6.391404211133315527e-02, 6.406465431619216833e-02, 6.421510541560652985e-02, 6.436539523701867438e-02, 6.451552360817165710e-02, 6.466549035710893178e-02, 6.481529531217392059e-02, 6.496493830201173492e-02, 6.511441915556791249e-02, 6.526373770208895864e-02, 6.541289377112241565e-02, 6.556188719251768160e-02, 6.571071779642542743e-02, 6.585938541329736107e-02, 6.600788987388768458e-02, 6.615623100925217825e-02, 6.630440865074849199e-02, 6.645242263003646455e-02, 6.660027277907838716e-02, 6.674795893013897585e-02, 6.689548091578552402e-02, 6.704283856888762494e-02, 6.719003172261869827e-02, 6.733706021045410273e-02, 6.748392386617274585e-02, 6.763062252385662609e-02, 6.777715601789174871e-02, 6.792352418296665473e-02, 6.806972685407426671e-02, 6.821576386651134749e-02, 6.836163505587805611e-02, 6.850734025807912742e-02, 6.865287930932281735e-02, 6.879825204612259604e-02, 6.894345830529570451e-02, 6.908849792396426492e-02, 6.923337073955497523e-02, 6.937807658979965042e-02, 6.952261531273465356e-02, 6.966698674670221414e-02, 6.981119073034872113e-02, 6.995522710262637445e-02, 7.009909570279382329e-02, 7.024279637041362656e-02, 7.038632894535552798e-02, 7.052969326779436054e-02, 7.067288917821105965e-02, 7.081591651739281568e-02, 7.095877512643343488e-02, 7.110146484673274259e-02, 7.124398551999659712e-02, 7.138633698823816653e-02, 7.152851909377741513e-02, 7.167053167924065937e-02, 7.181237458756134506e-02, 7.195404766198029711e-02, 7.209555074604562241e-02, 7.223688368361251555e-02, 7.237804631884380002e-02, 7.251903849620970621e-02, 7.265986006048841261e-02, 7.280051085676590705e-02, 7.294099073043605608e-02, 7.308129952720092415e-02, 7.322143709307087078e-02, 7.336140327436405095e-02, 7.350119791770738653e-02, 7.364082087003713528e-02, 7.378027197859669817e-02, 7.391955109093928389e-02, 7.405865805492714560e-02, 7.419759271873048456e-02, 7.433635493082965673e-02, 7.447494454001370168e-02, 7.461336139538188306e-02, 7.475160534634171794e-02, 7.488967624261096134e-02, 7.502757393421702337e-02, 7.516529827149716347e-02, 7.530284910509850438e-02, 7.544022628597814306e-02, 7.557742966540334506e-02, 7.571445909495166937e-02, 7.585131442651087130e-02, 7.598799551227977678e-02, 7.612450220476681129e-02, 7.626083435679219258e-02, 7.639699182148593226e-02, 7.653297445228947338e-02, 7.666878210295555163e-02, 7.680441462754712678e-02, 7.693987188043908965e-02, 7.707515371631741552e-02, 7.721025999018013564e-02, 7.734519055733589388e-02, 7.747994527340516802e-02, 7.761452399432065830e-02, 7.774892657632666293e-02, 7.788315287597942504e-02, 7.801720275014738248e-02, 7.815107605601055718e-02, 7.828477265106199845e-02, 7.841829239310683930e-02, 7.855163514026272664e-02, 7.868480075095964088e-02, 7.881778908394054817e-02, 7.895059999826092856e-02, 7.908323335328895642e-02, 7.921568900870641639e-02, 7.934796682450760696e-02, 7.948006666100006223e-02, 7.961198837880519019e-02, 7.974373183885663519e-02, 7.987529690240234570e-02, 8.000668343100338087e-02, 8.013789128653484028e-02, 8.026892033118573910e-02, 8.039977042745777291e-02, 8.053044143816721900e-02, 8.066093322644551922e-02, 8.079124565573640726e-02, 8.092137858979873977e-02, 8.105133189270569138e-02, 8.118110542884428293e-02, 8.131069906291683858e-02, 8.144011265993940374e-02, 8.156934608524364638e-02, 8.169839920447501125e-02, 8.182727188359451009e-02, 8.195596398887719514e-02, 8.208447538691486522e-02, 8.221280594461215230e-02, 8.234095552919105943e-02, 8.246892400818707503e-02, 8.259671124945214271e-02, 8.272431712115305147e-02, 8.285174149177297609e-02, 8.297898423010981184e-02, 8.310604520527770100e-02, 8.323292428670654719e-02, 8.335962134414161284e-02, 8.348613624764524010e-02, 8.361246886759418628e-02, 8.373861907468321819e-02, 8.386458673992157331e-02, 8.399037173463590189e-02, 8.411597393046908733e-02, 8.424139319937998249e-02, 8.436662941364460322e-02, 8.449168244585540666e-02, 8.461655216892120801e-02, 8.474123845606734706e-02, 8.486574118083743679e-02, 8.499006021709037961e-02, 8.511419543900297646e-02, 8.523814672106921897e-02, 8.536191393809997030e-02, 8.548549696522303454e-02, 8.560889567788394772e-02, 8.573210995184585292e-02, 8.585513966318902845e-02, 8.597798468831124863e-02, 8.610064490392763115e-02, 8.622312018707209424e-02, 8.634541041509548320e-02, 8.646751546566633362e-02, 8.658943521677130162e-02, 8.671116954671546917e-02, 8.683271833412127549e-02, 8.695408145792994647e-02, 8.707525879740064811e-02, 8.719625023210995918e-02, 8.731705564195452185e-02, 8.743767490714832169e-02, 8.755810790822370071e-02, 8.767835452603174595e-02, 8.779841464174258092e-02, 8.791828813684444965e-02, 8.803797489314472979e-02, 8.815747479276919707e-02, 8.827678771816291348e-02, 8.839591355208946399e-02, 8.851485217763252478e-02, 8.863360347819301821e-02, 8.875216733749273501e-02, 8.887054363957191949e-02, 8.898873226878956100e-02, 8.910673310982526740e-02, 8.922454604767721120e-02, 8.934217096766261523e-02, 8.945960775541939025e-02, 8.957685629690437246e-02, 8.969391647839386472e-02, 8.981078818648391415e-02, 8.992747130809071454e-02, 9.004396573044982921e-02, 9.016027134111766206e-02, 9.027638802796890405e-02, 9.039231567919969734e-02, 9.050805418332523444e-02, 9.062360342918213130e-02, 9.073896330592551296e-02, 9.085413370303210834e-02, 9.096911451029773832e-02, 9.108390561784014683e-02, 9.119850691609568405e-02, 9.131291829582245667e-02, 9.142713964809817684e-02, 9.154117086432184136e-02, 9.165501183621259373e-02, 9.176866245581075110e-02, 9.188212261547665238e-02, 9.199539220789161587e-02, 9.210847112605788367e-02, 9.222135926329907973e-02, 9.233405651325872487e-02, 9.244656276990141641e-02, 9.255887792751438248e-02, 9.267100188070356848e-02, 9.278293452439748124e-02, 9.289467575384581510e-02, 9.300622546461878581e-02, 9.311758355260815745e-02, 9.322874991402720080e-02, 9.333972444541013824e-02, 9.345050704361280991e-02, 9.356109760581278467e-02, 9.367149602950909648e-02, 9.378170221252157823e-02, 9.389171605299216627e-02, 9.400153744938441469e-02, 9.411116630048339815e-02, 9.422060250539608661e-02, 9.432984596355134532e-02, 9.443889657469885235e-02, 9.454775423891136066e-02, 9.465641885658322707e-02, 9.476489032842970450e-02, 9.487316855548948158e-02, 9.498125343912229568e-02, 9.508914488100987661e-02, 9.519684278315646009e-02, 9.530434704788813549e-02, 9.541165757785298462e-02, 9.551877427602202542e-02, 9.562569704568753270e-02, 9.573242579046456480e-02, 9.583896041429036672e-02, 9.594530082142448124e-02, 9.605144691644894317e-02, 9.615739860426796015e-02, 9.626315579010878698e-02, 9.636871837951932473e-02, 9.647408627837295025e-02, 9.657925939286278461e-02, 9.668423762950606459e-02, 9.678902089514211660e-02, 9.689360909693293944e-02, 9.699800214236320439e-02, 9.710219993924039394e-02, 9.720620239569420507e-02, 9.731000942017808963e-02, 9.741362092146746421e-02, 9.751703680866072310e-02, 9.762025699117875266e-02, 9.772328137876634679e-02, 9.782610988148982001e-02, 9.792874240973951927e-02, 9.803117887422864440e-02, 9.813341918599220726e-02, 9.823546325638929377e-02, 9.833731099710184276e-02, 9.843896232013514547e-02, 9.854041713781686029e-02, 9.864167536279769277e-02, 9.874273690805246417e-02, 9.884360168687789105e-02, 9.894426961289473632e-02, 9.904474060004658797e-02, 9.914501456260037260e-02, 9.924509141514586963e-02, 9.934497107259707138e-02, 9.944465345018996261e-02, 9.954413846348469930e-02, 9.964342602836442908e-02, 9.974251606103545775e-02, 9.984140847802820684e-02, 9.994010319619524296e-02, 1.000386001327134011e-01, 1.001368992050830214e-01, 1.002350003311272691e-01, 1.003329034289926064e-01, 1.004306084171498331e-01, 1.005281152143925882e-01, 1.006254237398377938e-01, 1.007225339129267927e-01, 1.008194456534231426e-01, 1.009161588814149468e-01, 1.010126735173134949e-01, 1.011089894818532620e-01, 1.012051066960928530e-01, 1.013010250814144059e-01, 1.013967445595228417e-01, 1.014922650524477110e-01, 1.015875864825416808e-01, 1.016827087724810758e-01, 1.017776318452654621e-01, 1.018723556242188272e-01, 1.019668800329883440e-01, 1.020612049955444411e-01, 1.021553304361820375e-01, 1.022492562795192100e-01, 1.023429824504973745e-01, 1.024365088743826036e-01, 1.025298354767634756e-01, 1.026229621835535177e-01, 1.027158889209888043e-01, 1.028086156156294423e-01, 1.029011421943598764e-01, 1.029934685843875569e-01, 1.030855947132434669e-01, 1.031775205087831215e-01, 1.032692458991852635e-01, 1.033607708129519465e-01, 1.034520951789094922e-01, 1.035432189262080749e-01, 1.036341419843213735e-01, 1.037248642830466416e-01, 1.038153857525047213e-01, 1.039057063231402511e-01, 1.039958259257221934e-01, 1.040857444913426411e-01, 1.041754619514170255e-01, 1.042649782376852546e-01, 1.043542932822113106e-01, 1.044434070173813345e-01, 1.045323193759061520e-01, 1.046210302908201495e-01, 1.047095396954821622e-01, 1.047978475235728235e-01, 1.048859537090985200e-01, 1.049738581863880749e-01, 1.050615608900942466e-01, 1.051490617551936319e-01, 1.052363607169861104e-01, 1.053234577110957054e-01, 1.054103526734696122e-01, 1.054970455403789059e-01, 1.055835362484181389e-01, 1.056698247345053965e-01, 1.057559109358827687e-01, 1.058417947901156425e-01, 1.059274762350931876e-01, 1.060129552090275096e-01, 1.060982316504552325e-01, 1.061833054982355834e-01, 1.062681766915517800e-01, 1.063528451699108368e-01, 1.064373108731426487e-01, 1.065215737414008101e-01, 1.066056337151628924e-01, 1.066894907352294586e-01, 1.067731447427240216e-01, 1.068565956790946542e-01, 1.069398434861121988e-01, 1.070228881058706283e-01, 1.071057294807876148e-01, 1.071883675536041552e-01, 1.072708022673849459e-01, 1.073530335655173834e-01, 1.074350613917124386e-01, 1.075168856900046849e-01, 1.075985064047513817e-01, 1.076799234806332523e-01, 1.077611368626546495e-01, 1.078421464961421133e-01, 1.079229523267470764e-01, 1.080035543004417981e-01, 1.080839523635240690e-01, 1.081641464626130339e-01, 1.082441365446518006e-01, 1.083239225569064546e-01, 1.084035044469657538e-01, 1.084828821627416423e-01, 1.085620556524691666e-01, 1.086410248647063093e-01, 1.087197897483346276e-01, 1.087983502525570051e-01, 1.088767063269003438e-01, 1.089548579212143709e-01, 1.090328049856714165e-01, 1.091105474707669831e-01, 1.091880853273189539e-01, 1.092654185064681482e-01, 1.093425469596774335e-01, 1.094194706387330990e-01, 1.094961894957447446e-01, 1.095727034831430885e-01, 1.096490125536823262e-01, 1.097251166604392980e-01, 1.098010157568124340e-01, 1.098767097965236972e-01, 1.099521987336175566e-01, 1.100274825224601821e-01, 1.101025611177404856e-01, 1.101774344744697598e-01, 1.102521025479816646e-01, 1.103265652939319913e-01, 1.104008226682994948e-01, 1.104748746273835069e-01, 1.105487211278076420e-01, 1.106223621265157997e-01, 1.106957975807755373e-01, 1.107690274481753639e-01, 1.108420516866259892e-01, 1.109148702543614196e-01, 1.109874831099351422e-01, 1.110598902122254400e-01, 1.111320915204299653e-01, 1.112040869940695703e-01, 1.112758765929867805e-01, 1.113474602773454752e-01, 1.114188380076315266e-01, 1.114900097446526461e-01, 1.115609754495382466e-01, 1.116317350837383315e-01, 1.117022886090255351e-01, 1.117726359874939984e-01, 1.118427771815581756e-01, 1.119127121539551517e-01, 1.119824408677429495e-01, 1.120519632863008486e-01, 1.121212793733295243e-01, 1.121903890928512143e-01, 1.122592924092082056e-01, 1.123279892870645696e-01, 1.123964796914067588e-01, 1.124647635875396096e-01, 1.125328409410914776e-01, 1.126007117180102129e-01, 1.126683758845643812e-01, 1.127358334073451651e-01, 1.128030842532621869e-01, 1.128701283895473667e-01, 1.129369657837534097e-01, 1.130035964037523488e-01, 1.130700202177379460e-01, 1.131362371942241374e-01, 1.132022473020449921e-01, 1.132680505103561414e-01, 1.133336467886323917e-01, 1.133990361066691266e-01, 1.134642184345822924e-01, 1.135291937428080933e-01, 1.135939620021027413e-01, 1.136585231835423454e-01, 1.137228772585233694e-01, 1.137870241987617853e-01, 1.138509639762941006e-01, 1.139146965634765946e-01, 1.139782219329851243e-01, 1.140415400578150273e-01, 1.141046509112820517e-01, 1.141675544670212317e-01, 1.142302506989875677e-01, 1.142927395814541114e-01, 1.143550210890150604e-01, 1.144170951965837041e-01, 1.144789618793919522e-01, 1.145406211129914587e-01, 1.146020728732527472e-01, 1.146633171363661413e-01, 1.147243538788405848e-01, 1.147851830775042381e-01, 1.148458047095036183e-01, 1.149062187523050976e-01, 1.149664251836933077e-01, 1.150264239817717915e-01, 1.150862151249623655e-01, 1.151457985920062294e-01, 1.152051743619623009e-01, 1.152643424142092282e-01, 1.153233027284426976e-01, 1.153820552846771402e-01, 1.154406000632460655e-01, 1.154989370448004649e-01, 1.155570662103099361e-01, 1.156149875410614480e-01, 1.156727010186606730e-01, 1.157302066250307376e-01, 1.157875043424135691e-01, 1.158445941533672169e-01, 1.159014760407691830e-01, 1.159581499878142991e-01, 1.160146159780133662e-01, 1.160708739951968188e-01, 1.161269240235116851e-01, 1.161827660474218371e-01, 1.162384000517093785e-01, 1.162938260214732566e-01, 1.163490439421289296e-01, 1.164040537994096014e-01, 1.164588555793656804e-01, 1.165134492683641831e-01, 1.165678348530890529e-01, 1.166220123205399251e-01, 1.166759816580354298e-01, 1.167297428532081127e-01, 1.167832958940097365e-01, 1.168366407687062292e-01, 1.168897774658809036e-01, 1.169427059744336667e-01, 1.169954262835802700e-01, 1.170479383828518100e-01, 1.171002422620972955e-01, 1.171523379114800117e-01, 1.172042253214794633e-01, 1.172559044828918318e-01, 1.173073753868279501e-01, 1.173586380247151062e-01, 1.174096923882953780e-01, 1.174605384696272709e-01, 1.175111762610835803e-01, 1.175616057553534599e-01, 1.176118269454398679e-01, 1.176618398246630642e-01, 1.177116443866558920e-01, 1.177612406253682326e-01, 1.178106285350638271e-01, 1.178598081103208600e-01, 1.179087793460333738e-01, 1.179575422374082444e-01, 1.180060967799690941e-01, 1.180544429695525310e-01, 1.181025808023095369e-01, 1.181505102747056474e-01, 1.181982313835209242e-01, 1.182457441258487202e-01, 1.182930484990968173e-01, 1.183401445009867325e-01, 1.183870321295548422e-01, 1.184337113831490096e-01, 1.184801822604324012e-01, 1.185264447603816690e-01, 1.185724988822861731e-01, 1.186183446257492446e-01, 1.186639819906868815e-01, 1.187094109773283168e-01, 1.187546315862162000e-01, 1.187996438182063880e-01, 1.188444476744666689e-01, 1.188890431564780803e-01, 1.189334302660347426e-01, 1.189776090052422214e-01, 1.190215793765200258e-01, 1.190653413825993323e-01, 1.191088950265225266e-01, 1.191522403116463402e-01, 1.191953772416377705e-01, 1.192383058204766477e-01, 1.192810260524544003e-01, 1.193235379421747205e-01, 1.193658414945521634e-01, 1.194079367148133120e-01, 1.194498236084961529e-01, 1.194915021814501460e-01, 1.195329724398363491e-01, 1.195742343901262522e-01, 1.196152880391022216e-01, 1.196561333938594290e-01, 1.196967704618009387e-01, 1.197371992506438693e-01, 1.197774197684134678e-01, 1.198174320234460799e-01, 1.198572360243894408e-01, 1.198968317802008021e-01, 1.199362193001476673e-01, 1.199753985938079026e-01, 1.200143696710691682e-01, 1.200531325421291540e-01, 1.200916872174958988e-01, 1.201300337079855562e-01, 1.201681720247257806e-01, 1.202061021791523826e-01, 1.202438241830108001e-01, 1.202813380483555711e-01, 1.203186437875514020e-01, 1.203557414132709197e-01, 1.203926309384959203e-01, 1.204293123765171059e-01, 1.204657857409338478e-01, 1.205020510456541599e-01, 1.205381083048948226e-01, 1.205739575331794405e-01, 1.206095987453427165e-01, 1.206450319565244567e-01, 1.206802571821742193e-01, 1.207152744380490805e-01, 1.207500837402138844e-01, 1.207846851050411452e-01, 1.208190785492107983e-01, 1.208532640897103660e-01, 1.208872417438347502e-01, 1.209210115291856763e-01, 1.209545734636728737e-01, 1.209879275655109665e-01, 1.210210738532241648e-01, 1.210540123456415595e-01, 1.210867430618989271e-01, 1.211192660214397560e-01, 1.211515812440128043e-01, 1.211836887496727660e-01, 1.212155885587815896e-01, 1.212472806920070478e-01, 1.212787651703216146e-01, 1.213100420150047820e-01, 1.213411112476407844e-01, 1.213719728901206524e-01, 1.214026269646395761e-01, 1.214330734936984041e-01, 1.214633125001026437e-01, 1.214933440069638215e-01, 1.215231680376978041e-01, 1.215527846160252973e-01, 1.215821937659714996e-01, 1.216113955118664491e-01, 1.216403898783436632e-01, 1.216691768903423315e-01, 1.216977565731048594e-01, 1.217261289521779088e-01, 1.217542940534117185e-01, 1.217822519029611861e-01, 1.218100025272834119e-01, 1.218375459531401694e-01, 1.218648822075962812e-01, 1.218920113180191889e-01, 1.219189333120807711e-01, 1.219456482177543183e-01, 1.219721560633166973e-01, 1.219984568773483380e-01, 1.220245506887304987e-01, 1.220504375266483338e-01, 1.220761174205887284e-01, 1.221015904003402708e-01, 1.221268564959950703e-01, 1.221519157379448300e-01, 1.221767681568858011e-01, 1.222014137838135089e-01, 1.222258526500263481e-01, 1.222500847871238611e-01, 1.222741102270060026e-01, 1.222979290018750553e-01, 1.223215411442332562e-01, 1.223449466868848506e-01, 1.223681456629332615e-01, 1.223911381057836006e-01, 1.224139240491406572e-01, 1.224365035270102847e-01, 1.224588765736975976e-01, 1.224810432238085944e-01, 1.225030035122486594e-01, 1.225247574742225898e-01, 1.225463051452353874e-01, 1.225676465610913840e-01, 1.225887817578934225e-01, 1.226097107720443002e-01, 1.226304336402463391e-01, 1.226509503994992201e-01, 1.226712610871021625e-01, 1.226913657406533548e-01, 1.227112643980490664e-01, 1.227309570974834119e-01, 1.227504438774490031e-01, 1.227697247767373934e-01, 1.227887998344360243e-01, 1.228076690899322365e-01, 1.228263325829091202e-01, 1.228447903533479157e-01, 1.228630424415275840e-01, 1.228810888880233626e-01, 1.228989297337084174e-01, 1.229165650197517196e-01, 1.229339947876199046e-01, 1.229512190790753440e-01, 1.229682379361774630e-01, 1.229850514012813534e-01, 1.230016595170387445e-01, 1.230180623263966710e-01, 1.230342598725983200e-01, 1.230502521991828635e-01, 1.230660393499847793e-01, 1.230816213691331013e-01, 1.230969983010528623e-01, 1.231121701904642207e-01, 1.231271370823816130e-01, 1.231418990221144899e-01, 1.231564560552672744e-01, 1.231708082277386401e-01, 1.231849555857203460e-01, 1.231988981757001500e-01, 1.232126360444588398e-01, 1.232261692390706348e-01, 1.232394978069038805e-01, 1.232526217956203540e-01, 1.232655412531755423e-01, 1.232782562278176980e-01, 1.232907667680873259e-01, 1.233030729228195843e-01, 1.233151747411406762e-01, 1.233270722724707225e-01, 1.233387655665208194e-01, 1.233502546732953564e-01, 1.233615396430906008e-01, 1.233726205264939618e-01, 1.233834973743859614e-01, 1.233941702379380279e-01, 1.234046391686119820e-01, 1.234149042181629935e-01, 1.234249654386361528e-01, 1.234348228823667071e-01, 1.234444766019825029e-01, 1.234539266504002114e-01, 1.234631730808290612e-01, 1.234722159467661479e-01, 1.234810553020007778e-01, 1.234896912006108044e-01, 1.234981236969645985e-01, 1.235063528457199106e-01, 1.235143787018240097e-01, 1.235222013205140995e-01, 1.235298207573153478e-01, 1.235372370680426352e-01, 1.235444503087994306e-01, 1.235514605359784440e-01, 1.235582678062598500e-01, 1.235648721766121477e-01, 1.235712737042933967e-01, 1.235774724468483160e-01, 1.235834684621096718e-01, 1.235892618081984168e-01, 1.235948525435218021e-01, 1.236002407267758757e-01, 1.236054264169421796e-01, 1.236104096732908719e-01, 1.236151905553777713e-01, 1.236197691230456197e-01, 1.236241454364234993e-01, 1.236283195559274156e-01, 1.236322915422579799e-01, 1.236360614564035454e-01, 1.236396293596364465e-01, 1.236429953135159132e-01, 1.236461593798866138e-01, 1.236491216208770172e-01, 1.236518820989025019e-01, 1.236544408766619974e-01, 1.236567980171395381e-01, 1.236589535836036396e-01, 1.236609076396069928e-01, 1.236626602489873522e-01, 1.236642114758654820e-01, 1.236655613846462248e-01, 1.236667100400182656e-01, 1.236676575069530354e-01, 1.236684038507069316e-01, 1.236689491368177657e-01, 1.236692934311069136e-01, 1.236694367996785393e-01, 1.236693793089188587e-01, 1.236691210254977635e-01, 1.236686620163662126e-01, 1.236680023487569391e-01, 1.236671420901856305e-01, 1.236660813084495547e-01, 1.236648200716260471e-01, 1.236633584480752029e-01, 1.236616965064382540e-01, 1.236598343156356111e-01, 1.236577719448712365e-01, 1.236555094636267171e-01, 1.236530469416664696e-01, 1.236503844490337983e-01, 1.236475220560519089e-01, 1.236444598333250877e-01, 1.236411978517355514e-01, 1.236377361824463755e-01, 1.236340748968993986e-01, 1.236302140668152499e-01, 1.236261537641944186e-01, 1.236218940613151990e-01, 1.236174350307342601e-01, 1.236127767452875476e-01, 1.236079192780884795e-01, 1.236028627025285015e-01, 1.235976070922776143e-01, 1.235921525212820560e-01, 1.235864990637665223e-01, 1.235806467942326681e-01, 1.235745957874590101e-01, 1.235683461185007048e-01, 1.235618978626900483e-01, 1.235552510956357680e-01, 1.235484058932225099e-01, 1.235413623316107962e-01, 1.235341204872377335e-01, 1.235266804368157362e-01, 1.235190422573327479e-01, 1.235112060260514927e-01, 1.235031718205107931e-01, 1.234949397185237802e-01, 1.234865097981785453e-01, 1.234778821378364755e-01, 1.234690568161358193e-01, 1.234600339119869966e-01, 1.234508135045744998e-01, 1.234413956733574069e-01, 1.234317804980676891e-01, 1.234219680587106266e-01, 1.234119584355646698e-01, 1.234017517091824806e-01, 1.233913479603874624e-01, 1.233807472702770219e-01, 1.233699497202203899e-01, 1.233589553918586490e-01, 1.233477643671052615e-01, 1.233363767281457357e-01, 1.233247925574369325e-01, 1.233130119377068845e-01, 1.233010349519545745e-01, 1.232888616834501155e-01, 1.232764922157350562e-01, 1.232639266326209654e-01, 1.232511650181898483e-01, 1.232382074567932861e-01, 1.232250540330534355e-01, 1.232117048318625008e-01, 1.231981599383815407e-01, 1.231844194380420088e-01, 1.231704834165425616e-01, 1.231563519598529721e-01, 1.231420251542107436e-01, 1.231275030861215675e-01, 1.231127858423602395e-01, 1.230978735099690635e-01, 1.230827661762584346e-01, 1.230674639288068944e-01, 1.230519668554603263e-01, 1.230362750443311642e-01, 1.230203885838000583e-01, 1.230043075625135152e-01, 1.229880320693853002e-01, 1.229715621935959513e-01, 1.229548980245918771e-01, 1.229380396520847046e-01, 1.229209871660536801e-01, 1.229037406567427687e-01, 1.228863002146608763e-01, 1.228686659305830292e-01, 1.228508378955482511e-01, 1.228328162008619912e-01, 1.228146009380921694e-01, 1.227961921990729927e-01, 1.227775900759019850e-01, 1.227587946609399461e-01, 1.227398060468130325e-01, 1.227206243264099272e-01, 1.227012495928824776e-01, 1.226816819396458202e-01, 1.226619214603782010e-01, 1.226419682490212937e-01, 1.226218223997769807e-01, 1.226014840071115025e-01, 1.225809531657525847e-01, 1.225602299706899240e-01, 1.225393145171734671e-01, 1.225182069007161867e-01, 1.224969072170920964e-01, 1.224754155623356128e-01, 1.224537320327414719e-01, 1.224318567248665474e-01, 1.224097897355254511e-01, 1.223875311617961259e-01, 1.223650811010137118e-01, 1.223424396507737100e-01, 1.223196069089326349e-01, 1.222965829736036431e-01, 1.222733679431610154e-01, 1.222499619162365908e-01, 1.222263649917212924e-01, 1.222025772687641149e-01, 1.221785988467729289e-01, 1.221544298254120253e-01, 1.221300703046050845e-01, 1.221055203845321929e-01, 1.220807801656308977e-01, 1.220558497485961097e-01, 1.220307292343785627e-01, 1.220054187241870897e-01, 1.219799183194855835e-01, 1.219542281219945096e-01, 1.219283482336902952e-01, 1.219022787568051214e-01, 1.218760197938268536e-01, 1.218495714474979869e-01, 1.218229338208157292e-01, 1.217961070170336946e-01, 1.217690911396585446e-01, 1.217418862924517925e-01, 1.217144925794290261e-01, 1.216869101048598661e-01, 1.216591389732677997e-01, 1.216311792894282096e-01, 1.216030311583726209e-01, 1.215746946853825811e-01, 1.215461699759944614e-01, 1.215174571359954325e-01, 1.214885562714268091e-01, 1.214594674885806913e-01, 1.214301908940011998e-01, 1.214007265944839348e-01, 1.213710746970771553e-01, 1.213412353090786294e-01, 1.213112085380375488e-01, 1.212809944917545846e-01, 1.212505932782801110e-01, 1.212200050059143996e-01, 1.211892297832090071e-01, 1.211582677189640828e-01, 1.211271189222293126e-01, 1.210957835023049461e-01, 1.210642615687386181e-01, 1.210325532313280966e-01, 1.210006586001197149e-01, 1.209685777854069416e-01, 1.209363108977330181e-01, 1.209038580478875441e-01, 1.208712193469089757e-01, 1.208383949060828633e-01, 1.208053848369417677e-01, 1.207721892512654688e-01, 1.207388082610799662e-01, 1.207052419786590614e-01, 1.206714905165209156e-01, 1.206375539874317837e-01, 1.206034325044017530e-01, 1.205691261806878800e-01, 1.205346351297915258e-01, 1.204999594654606598e-01, 1.204650993016866956e-01, 1.204300547527059340e-01, 1.203948259329989667e-01, 1.203594129572910093e-01, 1.203238159405510127e-01, 1.202880349979910252e-01, 1.202520702450678158e-01, 1.202159217974796551e-01, 1.201795897711690070e-01, 1.201430742823206416e-01, 1.201063754473617323e-01, 1.200694933829614119e-01, 1.200324282060312997e-01, 1.199951800337245716e-01, 1.199577489834360300e-01, 1.199201351728009790e-01, 1.198823387196968349e-01, 1.198443597422411688e-01, 1.198061983587922902e-01, 1.197678546879481498e-01, 1.197293288485478946e-01, 1.196906209596695636e-01, 1.196517311406312123e-01, 1.196126595109895524e-01, 1.195734061905408541e-01, 1.195339712993206127e-01, 1.194943549576028552e-01, 1.194545572858988353e-01, 1.194145784049589765e-01, 1.193744184357703186e-01, 1.193340774995597237e-01, 1.192935557177891154e-01, 1.192528532121592683e-01, 1.192119701046062408e-01, 1.191709065173034987e-01, 1.191296625726611103e-01, 1.190882383933246774e-01, 1.190466341021767377e-01, 1.190048498223338774e-01, 1.189628856771488830e-01, 1.189207417902100050e-01, 1.188784182853395710e-01, 1.188359152865954005e-01, 1.187932329182692370e-01, 1.187503713048870257e-01, 1.187073305712076088e-01, 1.186641108422255564e-01, 1.186207122431665456e-01, 1.185771348994915236e-01, 1.185333789368925306e-01, 1.184894444812948366e-01, 1.184453316588566230e-01, 1.184010405959678575e-01, 1.183565714192496982e-01, 1.183119242555555339e-01, 1.182670992319704573e-01, 1.182220964758100012e-01, 1.181769161146210279e-01, 1.181315582761808675e-01, 1.180860230884968193e-01, 1.180403106798064289e-01, 1.179944211785777658e-01, 1.179483547135078275e-01, 1.179021114135223730e-01, 1.178556914077777684e-01, 1.178090948256578785e-01, 1.177623217967764119e-01, 1.177153724509734239e-01, 1.176682469183190222e-01, 1.176209453291098550e-01, 1.175734678138708883e-01, 1.175258145033537260e-01, 1.174779855285371516e-01, 1.174299810206274053e-01, 1.173818011110562137e-01, 1.173334459314819278e-01, 1.172849156137895782e-01, 1.172362102900887937e-01, 1.171873300927154110e-01, 1.171382751542306005e-01, 1.170890456074201863e-01, 1.170396415852939659e-01, 1.169900632210876396e-01, 1.169403106482601318e-01, 1.168903840004944239e-01, 1.168402834116975958e-01, 1.167900090159995213e-01, 1.167395609477533541e-01, 1.166889393415357773e-01, 1.166381443321451300e-01, 1.165871760546025176e-01, 1.165360346441511874e-01, 1.164847202362565559e-01, 1.164332329666049465e-01, 1.163815729711040886e-01, 1.163297403858830903e-01, 1.162777353472922021e-01, 1.162255579919010545e-01, 1.161732084565003098e-01, 1.161206868781004403e-01, 1.160679933939316871e-01, 1.160151281414441571e-01, 1.159620912583062685e-01, 1.159088828824058753e-01, 1.158555031518493095e-01, 1.158019522049617278e-01, 1.157482301802862518e-01, 1.156943372165835510e-01, 1.156402734528316073e-01, 1.155860390282271305e-01, 1.155316340821825050e-01, 1.154770587543277605e-01, 1.154223131845084627e-01, 1.153673975127878087e-01, 1.153123118794434215e-01, 1.152570564249705276e-01, 1.152016312900780992e-01, 1.151460366156913245e-01, 1.150902725429496787e-01, 1.150343392132075343e-01, 1.149782367680347583e-01, 1.149219653492130760e-01, 1.148655250987398457e-01, 1.148089161588256857e-01, 1.147521386718936415e-01, 1.146951927805808652e-01, 1.146380786277371444e-01, 1.145807963564242221e-01, 1.145233461099159356e-01, 1.144657280316986742e-01, 1.144079422654709632e-01, 1.143499889551411741e-01, 1.142918682448306050e-01, 1.142335802788696786e-01, 1.141751252018012169e-01, 1.141165031583765144e-01, 1.140577142935587651e-01, 1.139987587525192053e-01, 1.139396366806400829e-01, 1.138803482235115488e-01, 1.138208935269335864e-01, 1.137612727369151644e-01, 1.137014859996719612e-01, 1.136415334616300288e-01, 1.135814152694219620e-01, 1.135211315698884671e-01, 1.134606825100760441e-01, 1.134000682372408308e-01, 1.133392888988433711e-01, 1.132783446425527085e-01, 1.132172356162420429e-01, 1.131559619679921164e-01, 1.130945238460886321e-01, 1.130329213990227816e-01, 1.129711547754914808e-01, 1.129092241243942751e-01, 1.128471295948383218e-01, 1.127848713361325333e-01, 1.127224494977913660e-01, 1.126598642295325581e-01, 1.125971156812769769e-01, 1.125342040031486607e-01, 1.124711293454753319e-01, 1.124078918587860798e-01, 1.123444916938132199e-01, 1.122809290014908090e-01, 1.122172039329543541e-01, 1.121533166395414644e-01, 1.120892672727912404e-01, 1.120250559844416655e-01, 1.119606829264341852e-01, 1.118961482509084754e-01, 1.118314521102054399e-01, 1.117665946568652535e-01, 1.117015760436278621e-01, 1.116363964234318579e-01, 1.115710559494157705e-01, 1.115055547749161380e-01, 1.114398930534678395e-01, 1.113740709388042621e-01, 1.113080885848565932e-01, 1.112419461457532788e-01, 1.111756437758196492e-01, 1.111091816295791124e-01, 1.110425598617505033e-01, 1.109757786272503322e-01, 1.109088380811900226e-01, 1.108417383788782989e-01, 1.107744796758178552e-01, 1.107070621277075478e-01, 1.106394858904409390e-01, 1.105717511201065317e-01, 1.105038579729868270e-01, 1.104358066055591420e-01, 1.103675971744941114e-01, 1.102992298366558127e-01, 1.102307047491020570e-01, 1.101620220690832513e-01, 1.100931819540428708e-01, 1.100241845616167086e-01, 1.099550300496322242e-01, 1.098857185761093064e-01, 1.098162502992588718e-01, 1.097466253774839057e-01, 1.096768439693773661e-01, 1.096069062337238220e-01, 1.095368123294973295e-01, 1.094665624158630973e-01, 1.093961566521751694e-01, 1.093255951979779511e-01, 1.092548782130043500e-01, 1.091840058571770106e-01, 1.091129782906064549e-01, 1.090417956735922761e-01, 1.089704581666215422e-01, 1.088989659303698926e-01, 1.088273191256994843e-01, 1.087555179136605876e-01, 1.086835624554898933e-01, 1.086114529126108591e-01, 1.085391894466340157e-01, 1.084667722193540518e-01, 1.083942013927532699e-01, 1.083214771289988804e-01, 1.082485995904434034e-01, 1.081755689396235037e-01, 1.081023853392612116e-01, 1.080290489522630210e-01, 1.079555599417184875e-01, 1.078819184709017276e-01, 1.078081247032701834e-01, 1.077341788024640534e-01, 1.076600809323071117e-01, 1.075858312568042374e-01, 1.075114299401445095e-01, 1.074368771466978068e-01, 1.073621730410154046e-01, 1.072873177878308076e-01, 1.072123115520577236e-01, 1.071371544987919089e-01, 1.070618467933081713e-01, 1.069863886010620768e-01, 1.069107800876900882e-01, 1.068350214190067482e-01, 1.067591127610068164e-01, 1.066830542798632986e-01, 1.066068461419292512e-01, 1.065304885137346308e-01, 1.064539815619885144e-01, 1.063773254535774482e-01, 1.063005203555659056e-01, 1.062235664351947606e-01, 1.061464638598832028e-01, 1.060692127972254623e-01, 1.059918134149930302e-01, 1.059142658811336180e-01, 1.058365703637699218e-01, 1.057587270312010524e-01, 1.056807360519009253e-01, 1.056025975945174417e-01, 1.055243118278741538e-01, 1.054458789209690162e-01, 1.053672990429730255e-01, 1.052885723632309561e-01, 1.052096990512617902e-01, 1.051306792767569692e-01, 1.050515132095811988e-01, 1.049722010197703670e-01, 1.048927428775339316e-01, 1.048131389532530044e-01, 1.047333894174798524e-01, 1.046534944409378970e-01, 1.045734541945217977e-01, 1.044932688492971051e-01, 1.044129385764991924e-01, 1.043324635475341988e-01, 1.042518439339772812e-01, 1.041710799075736688e-01, 1.040901716402378857e-01, 1.040091193040521417e-01, 1.039279230712686353e-01, 1.038465831143067092e-01, 1.037650996057549874e-01, 1.036834727183680860e-01, 1.036017026250695416e-01, 1.035197894989485501e-01, 1.034377335132619646e-01, 1.033555348414334635e-01, 1.032731936570512321e-01, 1.031907101338709887e-01, 1.031080844458131945e-01, 1.030253167669639147e-01, 1.029424072715734162e-01, 1.028593561340572365e-01, 1.027761635289951153e-01, 1.026928296311310079e-01, 1.026093546153720726e-01, 1.025257386567893086e-01, 1.024419819306166962e-01, 1.023580846122503912e-01, 1.022740468772503075e-01, 1.021898689013379519e-01, 1.021055508603961881e-01, 1.020210929304704306e-01, 1.019364952877659936e-01, 1.018517581086511165e-01, 1.017668815696524537e-01, 1.016818658474593629e-01, 1.015967111189189503e-01, 1.015114175610400127e-01, 1.014259853509894699e-01, 1.013404146660938365e-01, 1.012547056838388193e-01, 1.011688585818675823e-01, 1.010828735379832033e-01, 1.009967507301447048e-01, 1.009104903364702460e-01, 1.008240925352345135e-01, 1.007375575048689298e-01, 1.006508854239629575e-01, 1.005640764712604079e-01, 1.004771308256628831e-01, 1.003900486662266250e-01, 1.003028301721639870e-01, 1.002154755228428507e-01, 1.001279848977841419e-01, 1.000403584766646481e-01, 9.995259643931600491e-02, 9.986469896572192084e-02, 9.977666623602088336e-02, 9.968849843050490989e-02, 9.960019572961810452e-02, 9.951175831395762950e-02, 9.942318636427292800e-02, 9.933448006146579357e-02, 9.924563958658925988e-02, 9.915666512084808648e-02, 9.906755684559800934e-02, 9.897831494234581029e-02, 9.888893959274833168e-02, 9.879943097861319801e-02, 9.870978928189680368e-02, 9.862001468470667220e-02, 9.853010736929748714e-02, 9.844006751807542199e-02, 9.834989531359294990e-02, 9.825959093855247961e-02, 9.816915457580296933e-02, 9.807858640834260511e-02, 9.798788661931552568e-02, 9.789705539201394580e-02, 9.780609290987682392e-02, 9.771499935648829405e-02, 9.762377491557984455e-02, 9.753241977102884708e-02, 9.744093410685686352e-02, 9.734931810723226886e-02, 9.725757195646732300e-02, 9.716569583901932261e-02, 9.707368993948892189e-02, 9.698155444262161751e-02, 9.688928953330600002e-02, 9.679689539657485020e-02, 9.670437221760269653e-02, 9.661172018170716136e-02, 9.651893947434861398e-02, 9.642603028112961550e-02, 9.633299278779315633e-02, 9.623982718022539018e-02, 9.614653364445252537e-02, 9.605311236664149099e-02, 9.595956353309974263e-02, 9.586588733027553988e-02, 9.577208394475643372e-02, 9.567815356326922482e-02, 9.558409637268089343e-02, 9.548991255999643435e-02, 9.539560231235937049e-02, 9.530116581705226630e-02, 9.520660326149503472e-02, 9.511191483324533957e-02, 9.501710071999781848e-02, 9.492216110958506814e-02, 9.482709618997517409e-02, 9.473190614927322339e-02, 9.463659117572056911e-02, 9.454115145769388662e-02, 9.444558718370585360e-02, 9.434989854240258267e-02, 9.425408572256706308e-02, 9.415814891311567736e-02, 9.406208830309908953e-02, 9.396590408170145403e-02, 9.386959643824113741e-02, 9.377316556216962196e-02, 9.367661164307011790e-02, 9.357993487066006144e-02, 9.348313543478795062e-02, 9.338621352543438614e-02, 9.328916933271230727e-02, 9.319200304686481307e-02, 9.309471485826663339e-02, 9.299730495742321301e-02, 9.289977353496980950e-02, 9.280212078167231204e-02, 9.270434688842620063e-02, 9.260645204625565785e-02, 9.250843644631487339e-02, 9.241030027988553219e-02, 9.231204373837895161e-02, 9.221366701333413851e-02, 9.211517029641765053e-02, 9.201655377942345726e-02, 9.191781765427298190e-02, 9.181896211301451838e-02, 9.171998734782245422e-02, 9.162089355099709009e-02, 9.152168091496593050e-02, 9.142234963228039468e-02, 9.132289989561817589e-02, 9.122333189778122908e-02, 9.112364583169653420e-02, 9.102384189041493046e-02, 9.092392026711162978e-02, 9.082388115508510662e-02, 9.072372474775707019e-02, 9.062345123867286689e-02, 9.052306082149942645e-02, 9.042255369002651089e-02, 9.032193003816592347e-02, 9.022119005995155039e-02, 9.012033394953773702e-02, 9.001936190120085612e-02, 8.991827410933699027e-02, 8.981707076846308369e-02, 8.971575207321641487e-02, 8.961431821835352807e-02, 8.951276939875092709e-02, 8.941110580940381247e-02, 8.930932764542605373e-02, 8.920743510204980076e-02, 8.910542837462678833e-02, 8.900330765862447813e-02, 8.890107314962976404e-02, 8.879872504334471173e-02, 8.869626353558995868e-02, 8.859368882230200803e-02, 8.849100109953332571e-02, 8.838820056345265963e-02, 8.828528741034395722e-02, 8.818226183660678175e-02, 8.807912403875493845e-02, 8.797587421341766800e-02, 8.787251255733782851e-02, 8.776903926737232575e-02, 8.766545454049214092e-02, 8.756175857378087346e-02, 8.745795156443547658e-02, 8.735403370976568826e-02, 8.725000520719275454e-02, 8.714586625425090050e-02, 8.704161704858559556e-02, 8.693725778795330372e-02, 8.683278867022194147e-02, 8.672820989337026720e-02, 8.662352165548690974e-02, 8.651872415477071532e-02, 8.641381758953071979e-02, 8.630880215818437229e-02, 8.620367805925918669e-02, 8.609844549139078485e-02, 8.599310465332328512e-02, 8.588765574390939961e-02, 8.578209896210858831e-02, 8.567643450698882168e-02, 8.557066257772484585e-02, 8.546478337359757205e-02, 8.535879709399585291e-02, 8.525270393841262451e-02, 8.514650410644819534e-02, 8.504019779780785937e-02, 8.493378521230204869e-02, 8.482726654984627801e-02, 8.472064201045992338e-02, 8.461391179426755449e-02, 8.450707610149670035e-02, 8.440013513247873744e-02, 8.429308908764845953e-02, 8.418593816754310621e-02, 8.407868257280276536e-02, 8.397132250416963761e-02, 8.386385816248774494e-02, 8.375628974870316656e-02, 8.364861746386266506e-02, 8.354084150911393614e-02, 8.343296208570576133e-02, 8.332497939498660633e-02, 8.321689363840517606e-02, 8.310870501750960981e-02, 8.300041373394763389e-02, 8.289201998946534033e-02, 8.278352398590869965e-02, 8.267492592521996642e-02, 8.256622600944162060e-02, 8.245742444071237076e-02, 8.234852142126795893e-02, 8.223951715344250679e-02, 8.213041183966539316e-02, 8.202120568246340504e-02, 8.191189888445904455e-02, 8.180249164836968234e-02, 8.169298417700904258e-02, 8.158337667328570408e-02, 8.147366934020223994e-02, 8.136386238085671629e-02, 8.125395599843998617e-02, 8.114395039623799322e-02, 8.103384577762853813e-02, 8.092364234608373508e-02, 8.081334030516779121e-02, 8.070293985853765895e-02, 8.059244120994196736e-02, 8.048184456322146629e-02, 8.037115012230773570e-02, 8.026035809122414322e-02, 8.014946867408433151e-02, 8.003848207509299539e-02, 7.992739849854386958e-02, 7.981621814882140786e-02, 7.970494123039907619e-02, 7.959356794783993549e-02, 7.948209850579460167e-02, 7.937053310900338277e-02, 7.925887196229440546e-02, 7.914711527058303220e-02, 7.903526323887326288e-02, 7.892331607225480661e-02, 7.881127397590532990e-02, 7.869913715508843055e-02, 7.858690581515383189e-02, 7.847458016153693872e-02, 7.836216039975925363e-02, 7.824964673542704474e-02, 7.813703937423149837e-02, 7.802433852194819164e-02, 7.791154438443669006e-02, 7.779865716764088057e-02, 7.768567707758798624e-02, 7.757260432038814990e-02, 7.745943910223469786e-02, 7.734618162940309904e-02, 7.723283210825153400e-02, 7.711939074521963200e-02, 7.700585774682908169e-02, 7.689223331968160491e-02, 7.677851767046139919e-02, 7.666471100593179322e-02, 7.655081353293700930e-02, 7.643682545840160825e-02, 7.632274698932831059e-02, 7.620857833280046678e-02, 7.609431969597967027e-02, 7.597997128610591011e-02, 7.586553331049795956e-02, 7.575100597655208545e-02, 7.563638949174236736e-02, 7.552168406361979558e-02, 7.540688989981250701e-02, 7.529200720802532720e-02, 7.517703619603874343e-02, 7.506197707171027855e-02, 7.494683004297160445e-02, 7.483159531783091512e-02, 7.471627310437081726e-02, 7.460086361074855232e-02, 7.448536704519538587e-02, 7.436978361601642717e-02, 7.425411353159150352e-02, 7.413835700037232912e-02, 7.402251423088439253e-02, 7.390658543172499984e-02, 7.379057081156521758e-02, 7.367447057914629227e-02, 7.355828494328230105e-02, 7.344201411285851411e-02, 7.332565829683018732e-02, 7.320921770422399166e-02, 7.309269254413744421e-02, 7.297608302573657668e-02, 7.285938935825866936e-02, 7.274261175100868448e-02, 7.262575041336212511e-02, 7.250880555476157951e-02, 7.239177738471935797e-02, 7.227466611281514741e-02, 7.215747194869544245e-02, 7.204019510207586297e-02, 7.192283578273746258e-02, 7.180539420052874100e-02, 7.168787056536443658e-02, 7.157026508722452718e-02, 7.145257797615588158e-02, 7.133480944226988640e-02, 7.121695969574322327e-02, 7.109902894681666141e-02, 7.098101740579629282e-02, 7.086292528305147831e-02, 7.074475278901563857e-02, 7.062650013418521333e-02, 7.050816752911974461e-02, 7.038975518444141877e-02, 7.027126331083567712e-02, 7.015269211904812119e-02, 7.003404181988766297e-02, 6.991531262422381876e-02, 6.979650474298738916e-02, 6.967761838716966805e-02, 6.955865376782244258e-02, 6.943961109605778503e-02, 6.932049058304656786e-02, 6.920129244002048985e-02, 6.908201687826878712e-02, 6.896266410913988454e-02, 6.884323434404160391e-02, 6.872372779443805535e-02, 6.860414467185256548e-02, 6.848448518786488803e-02, 6.836474955411209198e-02, 6.824493798228813135e-02, 6.812505068414359544e-02, 6.800508787148455692e-02, 6.788504975617229431e-02, 6.776493655012509609e-02, 6.764474846531513819e-02, 6.752448571376944153e-02, 6.740414850756967780e-02, 6.728373705885141998e-02, 6.716325157980407301e-02, 6.704269228267065173e-02, 6.692205937974621266e-02, 6.680135308338028266e-02, 6.668057360597301475e-02, 6.655972115997782490e-02, 6.643879595789932424e-02, 6.631779821229390193e-02, 6.619672813576903125e-02, 6.607558594098189575e-02, 6.595437184064194269e-02, 6.583308604750687243e-02, 6.571172877438540005e-02, 6.559030023413518762e-02, 6.546880063966260821e-02, 6.534723020392378678e-02, 6.522558913992218543e-02, 6.510387766071037974e-02, 6.498209597938786608e-02, 6.486024430910179717e-02, 6.473832286304685713e-02, 6.461633185446398475e-02, 6.449427149664092862e-02, 6.437214200291108135e-02, 6.424994358665431227e-02, 6.412767646129516330e-02, 6.400534084030372328e-02, 6.388293693719500344e-02, 6.376046496552824350e-02, 6.363792513890670355e-02, 6.351531767097745584e-02, 6.339264277543119053e-02, 6.326990066600207685e-02, 6.314709155646583416e-02, 6.302421566064252134e-02, 6.290127319239229020e-02, 6.277826436561871615e-02, 6.265518939426630018e-02, 6.253204849232023299e-02, 6.240884187380699166e-02, 6.228556975279354868e-02, 6.216223234338666415e-02, 6.203882985973369069e-02, 6.191536251602060281e-02, 6.179183052647276020e-02, 6.166823410535456768e-02, 6.154457346696896175e-02, 6.142084882565666121e-02, 6.129706039579653487e-02, 6.117320839180501874e-02, 6.104929302813518616e-02, 6.092531451927746949e-02, 6.080127307975887602e-02, 6.067716892414249524e-02, 6.055300226702678423e-02, 6.042877332304623372e-02, 6.030448230687033423e-02, 6.018012943320360381e-02, 6.005571491678464435e-02, 5.993123897238688408e-02, 5.980670181481695380e-02, 5.968210365891589431e-02, 5.955744471955665836e-02, 5.943272521164659483e-02, 5.930794535012441637e-02, 5.918310534996130273e-02, 5.905820542616079666e-02, 5.893324579375752714e-02, 5.880822666781746616e-02, 5.868314826343760948e-02, 5.855801079574508849e-02, 5.843281447989770450e-02, 5.830755953108344297e-02, 5.818224616451869030e-02, 5.805687459545036400e-02, 5.793144503915334531e-02, 5.780595771093211682e-02, 5.768041282611801462e-02, 5.755481060007185817e-02, 5.742915124818046696e-02, 5.730343498585933892e-02, 5.717766202855046470e-02, 5.705183259172152965e-02, 5.692594689086755838e-02, 5.680000514150926327e-02, 5.667400755919276695e-02, 5.654795435948991450e-02, 5.642184575799652491e-02, 5.629568197033452820e-02, 5.616946321214868337e-02, 5.604318969910879189e-02, 5.591686164690740785e-02, 5.579047927126113554e-02, 5.566404278790936661e-02, 5.553755241261368325e-02, 5.541100836115846195e-02, 5.528441084934981181e-02, 5.515776009301600474e-02, 5.503105630800604608e-02, 5.490429971019036848e-02, 5.477749051545931919e-02, 5.465062893972471442e-02, 5.452371519891744539e-02, 5.439674950898862327e-02, 5.426973208590860076e-02, 5.414266314566684030e-02, 5.401554290427087318e-02, 5.388837157774782616e-02, 5.376114938214159727e-02, 5.363387653351438245e-02, 5.350655324794587747e-02, 5.337917974153275763e-02, 5.325175623038851114e-02, 5.312428293064230117e-02, 5.299676005844035365e-02, 5.286918782994443067e-02, 5.274156646133112969e-02, 5.261389616879269537e-02, 5.248617716853616610e-02, 5.235840967678221519e-02, 5.223059390976659416e-02, 5.210273008373848824e-02, 5.197481841496048166e-02, 5.184685911970805111e-02, 5.171885241427014168e-02, 5.159079851494733499e-02, 5.146269763805298714e-02, 5.133454999991197976e-02, 5.120635581686053261e-02, 5.107811530524643956e-02, 5.094982868142789584e-02, 5.082149616177403240e-02, 5.069311796266388198e-02, 5.056469430048638608e-02, 5.043622539163985369e-02, 5.030771145253223192e-02, 5.017915269957953089e-02, 5.005054934920732945e-02, 4.992190161784838126e-02, 4.979320972194434952e-02, 4.966447387794360041e-02, 4.953569430230227166e-02, 4.940687121148304439e-02, 4.927800482195535819e-02, 4.914909535019557074e-02, 4.902014301268413365e-02, 4.889114802590894399e-02, 4.876211060636266581e-02, 4.863303097054242491e-02, 4.850390933495044715e-02, 4.837474591609278174e-02, 4.824554093048027265e-02, 4.811629459462654634e-02, 4.798700712504914284e-02, 4.785767873826820423e-02, 4.772830965080678001e-02, 4.759890007919009153e-02, 4.746945023994546264e-02, 4.733996034960209071e-02, 4.721043062469039431e-02, 4.708086128174165941e-02, 4.695125253728817116e-02, 4.682160460786235351e-02, 4.669191770999694263e-02, 4.656219206022417512e-02, 4.643242787507584346e-02, 4.630262537108296994e-02, 4.617278476477499477e-02, 4.604290627268040059e-02, 4.591299011132470714e-02, 4.578303649723236557e-02, 4.565304564692526657e-02, 4.552301777692096402e-02, 4.539295310373590853e-02, 4.526285184388120081e-02, 4.513271421386549215e-02, 4.500254043019286804e-02, 4.487233070936218898e-02, 4.474208526786875584e-02, 4.461180432220186037e-02, 4.448148808884577060e-02, 4.435113678427868300e-02, 4.422075062497268783e-02, 4.409032982739415074e-02, 4.395987460800166585e-02, 4.382938518324764471e-02, 4.369886176957654689e-02, 4.356830458342535184e-02, 4.343771384122318419e-02, 4.330708975939056432e-02, 4.317643255433911698e-02, 4.304574244247184878e-02, 4.291501964018251680e-02, 4.278426436385496245e-02, 4.265347682986306288e-02, 4.252265725457072404e-02, 4.239180585433070109e-02, 4.226092284548542410e-02, 4.213000844436578379e-02, 4.199906286729073596e-02, 4.186808633056808560e-02, 4.173707905049264116e-02, 4.160604124334756765e-02, 4.147497312540214531e-02, 4.134387491291315053e-02, 4.121274682212387741e-02, 4.108158906926306225e-02, 4.095040187054669462e-02, 4.081918544217466582e-02, 4.068794000033293390e-02, 4.055666576119273253e-02, 4.042536294090882248e-02, 4.029403175562108058e-02, 4.016267242145298011e-02, 4.003128515451145897e-02, 3.989987017088710702e-02, 3.976842768665321548e-02, 3.963695791786571443e-02, 3.950546108056282590e-02, 3.937393739076531368e-02, 3.924238706447455427e-02, 3.911081031767430632e-02, 3.897920736632929511e-02, 3.884757842638417169e-02, 3.871592371376472025e-02, 3.858424344437670628e-02, 3.845253783410521736e-02, 3.832080709881537789e-02, 3.818905145435110005e-02, 3.805727111653543077e-02, 3.792546630116917089e-02, 3.779363722403243642e-02, 3.766178410088195927e-02, 3.752990714745306489e-02, 3.739800657945793749e-02, 3.726608261258499560e-02, 3.713413546250050878e-02, 3.700216534484568331e-02, 3.687017247523863284e-02, 3.673815706927296282e-02, 3.660611934251705585e-02, 3.647405951051500839e-02, 3.634197778878487523e-02, 3.620987439281974501e-02, 3.607774953808617902e-02, 3.594560344002471763e-02, 3.581343631404947103e-02, 3.568124837554722401e-02, 3.554903983987809518e-02, 3.541681092237405210e-02, 3.528456183833964671e-02, 3.515229280305118276e-02, 3.502000403175643817e-02, 3.488769573967393650e-02, 3.475536814199385593e-02, 3.462302145387653046e-02, 3.449065589045249153e-02, 3.435827166682210027e-02, 3.422586899805592914e-02, 3.409344809919301333e-02, 3.396100918524215528e-02, 3.382855247118018299e-02, 3.369607817195242189e-02, 3.356358650247277808e-02, 3.343107767762205917e-02, 3.329855191224895261e-02, 3.316600942116944284e-02, 3.303345041916565944e-02, 3.290087512098689715e-02, 3.276828374134796440e-02, 3.263567649492971762e-02, 3.250305359637883917e-02, 3.237041526030674798e-02, 3.223776170129034890e-02, 3.210509313387041597e-02, 3.197240977255257077e-02, 3.183971183180590858e-02, 3.170699952606379629e-02, 3.157427306972222791e-02, 3.144153267714033112e-02, 3.130877856264076275e-02, 3.117601094050728716e-02, 3.104323002498658723e-02, 3.091043603028733114e-02, 3.077762917057849310e-02, 3.064480965999161546e-02, 3.051197771261774869e-02, 3.037913354250956766e-02, 3.024627736367913391e-02, 3.011340939009863119e-02, 2.998052983570006699e-02, 2.984763891437447123e-02, 2.971473683997208695e-02, 2.958182382630135041e-02, 2.944890008712947038e-02, 2.931596583618149843e-02, 2.918302128714032884e-02, 2.905006665364592844e-02, 2.891710214929537476e-02, 2.878412798764298786e-02, 2.865114438219937623e-02, 2.851815154643094069e-02, 2.838514969376047456e-02, 2.825213903756565795e-02, 2.811911979118035879e-02, 2.798609216789231177e-02, 2.785305638094435349e-02, 2.772001264353386035e-02, 2.758696116881169738e-02, 2.745390216988301615e-02, 2.732083585980545765e-02, 2.718776245159063368e-02, 2.705468215820261077e-02, 2.692159519255757708e-02, 2.678850176752468545e-02, 2.665540209592342710e-02, 2.652229639052629262e-02, 2.638918486405657932e-02, 2.625606772918802345e-02, 2.612294519854553229e-02, 2.598981748470386918e-02, 2.585668480018838561e-02, 2.572354735747322402e-02, 2.559040536898277846e-02, 2.545725904709003271e-02, 2.532410860411645620e-02, 2.519095425233297200e-02, 2.505779620395739288e-02, 2.492463467115624970e-02, 2.479146986604362224e-02, 2.465830200068009834e-02, 2.452513128707402290e-02, 2.439195793717985339e-02, 2.425878216289821879e-02, 2.412560417607638105e-02, 2.399242418850654895e-02, 2.385924241192719994e-02, 2.372605905802084927e-02, 2.359287433841599987e-02, 2.345968846468437716e-02, 2.332650164834279213e-02, 2.319331410085199649e-02, 2.306012603361528787e-02, 2.292693765798032787e-02, 2.279374918523716098e-02, 2.266056082661850601e-02, 2.252737279330007530e-02, 2.239418529639852426e-02, 2.226099854697329364e-02, 2.212781275602454870e-02, 2.199462813449416451e-02, 2.186144489326440413e-02, 2.172826324315801569e-02, 2.159508339493851348e-02, 2.146190555930881441e-02, 2.132872994691196664e-02, 2.119555676832975827e-02, 2.106238623408334884e-02, 2.092921855463282521e-02, 2.079605394037628563e-02, 2.066289260164996811e-02, 2.052973474872833021e-02, 2.039658059182285904e-02, 2.026343034108272004e-02, 2.013028420659354958e-02, 1.999714239837804830e-02, 1.986400512639472857e-02, 1.973087260053882006e-02, 1.959774503064056275e-02, 1.946462262646581759e-02, 1.933150559771592072e-02, 1.919839415402643107e-02, 1.906528850496813643e-02, 1.893218886004534307e-02, 1.879909542869666675e-02, 1.866600842029450882e-02, 1.853292804414400155e-02, 1.839985450948403503e-02, 1.826678802548559882e-02, 1.813372880125229888e-02, 1.800067704582019798e-02, 1.786763296815667076e-02, 1.773459677716114971e-02, 1.760156868166379979e-02, 1.746854889042620193e-02, 1.733553761214001038e-02, 1.720253505542803166e-02, 1.706954142884242395e-02, 1.693655694086509261e-02, 1.680358179990786710e-02, 1.667061621431171342e-02, 1.653766039234588064e-02, 1.640471454220893480e-02, 1.627177887202691658e-02, 1.613885358985477775e-02, 1.600593890367427163e-02, 1.587303502139496281e-02, 1.574014215085360255e-02, 1.560726049981335170e-02, 1.547439027596448149e-02, 1.534153168692272903e-02, 1.520868494023027741e-02, 1.507585024335505140e-02, 1.494302780368951533e-02, 1.481021782855237480e-02, 1.467742052518559298e-02, 1.454463610075668045e-02, 1.441186476235717384e-02, 1.427910671700199571e-02, 1.414636217163019009e-02, 1.401363133310348091e-02, 1.388091440820720703e-02, 1.374821160364880779e-02, 1.361552312605862625e-02, 1.348284918198881105e-02, 1.335018997791313951e-02, 1.321754572022749985e-02, 1.308491661524840456e-02, 1.295230286921365305e-02, 1.281970468828179388e-02, 1.268712227853122446e-02, 1.255455584596109307e-02, 1.242200559648972726e-02, 1.228947173595504490e-02, 1.215695447011459589e-02, 1.202445400464420208e-02, 1.189197054513899295e-02, 1.175950429711163960e-02, 1.162705546599367840e-02, 1.149462425713353338e-02, 1.136221087579782942e-02, 1.122981552717034967e-02, 1.109743841635077964e-02, 1.096507974835660669e-02, 1.083273972812076949e-02, 1.070041856049271101e-02, 1.056811645023763777e-02, 1.043583360203567158e-02, 1.030357022048279496e-02, 1.017132651008908518e-02, 1.003910267527997717e-02, 9.906898920394662314e-03, 9.774715449686326163e-03, 9.642552467322334023e-03, 9.510410177382898692e-03, 9.378288783862038028e-03, 9.246188490665883594e-03, 9.114109501613693737e-03, 8.982052020437260309e-03, 8.850016250779193031e-03, 8.718002396195186771e-03, 8.586010660151350074e-03, 8.454041246025644982e-03, 8.322094357106717827e-03, 8.190170196593397900e-03, 8.058268967595455523e-03, 7.926390873131988757e-03, 7.794536116132512807e-03, 7.662704899435463825e-03, 7.530897425788461719e-03, 7.399113897848479289e-03, 7.267354518180458786e-03, 7.135619489258314581e-03, 7.003909013463298187e-03, 6.872223293084909861e-03, 6.740562530320158736e-03, 6.608926927272878483e-03, 6.477316685953916388e-03, 6.345732008280667580e-03, 6.214173096077148760e-03, 6.082640151073486455e-03, 5.951133374904993278e-03, 5.819652969113208764e-03, 5.688199135144218418e-03, 5.556772074349722312e-03, 5.425371987985557962e-03, 5.293999077211883342e-03, 5.162653543093584547e-03, 5.031335586598574029e-03, 4.900045408599046533e-03, 4.768783209869731365e-03, 4.637549191088887260e-03, 4.506343552837484452e-03, 4.375166495598339922e-03, 4.244018219757142614e-03, 4.112898925600956372e-03, 3.981808813318376931e-03, 3.850748082999884501e-03, 3.719716934636255190e-03, 3.588715568119755801e-03, 3.457744183242414306e-03, 3.326802979697159133e-03, 3.195892157076147318e-03, 3.065011914871916369e-03, 2.934162452475799158e-03, 2.803343969178269997e-03, 2.672556664168948548e-03, 2.541800736536040800e-03, 2.411076385265443090e-03, 2.280383809241809823e-03, 2.149723207246768009e-03, 2.019094777960114221e-03, 1.888498719958301483e-03, 1.757935231714651122e-03, 1.627404511599681502e-03, 1.496906757879515326e-03, 1.366442168717083103e-03, 1.236010942170407724e-03, 1.105613276193567881e-03, 9.752493686359166867e-04, 8.449194172412430402e-04, 7.146236196489577468e-04, 5.843621733916406179e-04, 4.541352758971314092e-04, 3.239431244869852124e-04, 1.937859163758393348e-04, 6.366384867241073873e-05, -6.642288162222435724e-05, -1.964740776134523434e-04, -3.264895425148430647e-04, -4.564690796469690701e-04, -5.864124924389461967e-04, -7.163195844281591710e-04, -8.461901592599859780e-04, -9.760240206893348262e-04, -1.105820972579655030e-03, -1.235580818903738018e-03, -1.365303363744533845e-03, -1.494988411294153295e-03, -1.624635765855397037e-03, -1.754245231841496935e-03, -1.883816613775824182e-03, -2.013349716293424095e-03, -2.142844344139863827e-03, -2.272300302172896181e-03, -2.401717395361329440e-03, -2.531095428786706795e-03, -2.660434207642344874e-03, -2.789733537233906203e-03, -2.918993222980979536e-03, -3.048213070414972168e-03, -3.177392885181561967e-03, -3.306532473039499546e-03, -3.435631639861427052e-03, -3.564690191634654025e-03, -3.693707934460224544e-03, -3.822684674554552211e-03, -3.951620218248314692e-03, -4.080514371987885303e-03, -4.209366942335140450e-03, -4.338177735967168637e-03, -4.466946559677761018e-03, -4.595673220376238731e-03, -4.724357525089200628e-03, -4.852999280959461627e-03, -4.981598295246940887e-03, -5.110154375329144065e-03, -5.238667328701059230e-03, -5.367136962975657330e-03, -5.495563085883650202e-03, -5.623945505274093384e-03, -5.752284029115210980e-03, -5.880578465493407729e-03, -6.008828622614977716e-03, -6.137034308804819802e-03, -6.265195332508103829e-03, -6.393311502289872501e-03, -6.521382626834841892e-03, -6.649408514948902844e-03, -6.777388975557917944e-03, -6.905323817709392055e-03, -7.033212850571540775e-03, -7.161055883434091010e-03, -7.288852725708998281e-03, -7.416603186929288799e-03, -7.544307076751595627e-03, -7.671964204953848898e-03, -7.799574381437083398e-03, -7.927137416225728261e-03, -8.054653119466908748e-03, -8.182121301431925092e-03, -8.309541772515208202e-03, -8.436914343235893052e-03, -8.564238824236776113e-03, -8.691515026285673642e-03, -8.818742760275227396e-03, -8.945921837222731154e-03, -9.073052068271365844e-03, -9.200133264689424120e-03, -9.327165237871054559e-03, -9.454147799336972899e-03, -9.581080760733549570e-03, -9.707963933834289419e-03, -9.834797130539585375e-03, -9.961580162876322933e-03, -1.008831284299952120e-02, -1.021499498319099891e-02, -1.034162639586128432e-02, -1.046820689354823093e-02, -1.059473628891869842e-02, -1.072121439476777204e-02, -1.084764102401913032e-02, -1.097401598972664802e-02, -1.110033910507251739e-02, -1.122661018336877300e-02, -1.135282903805775664e-02, -1.147899548271127598e-02, -1.160510933103220746e-02, -1.173117039685334095e-02, -1.185717849413908329e-02, -1.198313343698418319e-02, -1.210903503961529952e-02, -1.223488311639072887e-02, -1.236067748180009508e-02, -1.248641795046584284e-02, -1.261210433714211356e-02, -1.273773645671626500e-02, -1.286331412420803691e-02, -1.298883715477022055e-02, -1.311430536368944980e-02, -1.323971856638579692e-02, -1.336507657841272227e-02, -1.349037921545850373e-02, -1.361562629334491827e-02, -1.374081762802915538e-02, -1.386595303560254205e-02, -1.399103233229201902e-02, -1.411605533445934105e-02, -1.424102185860214205e-02, -1.436593172135407909e-02, -1.449078473948410203e-02, -1.461558072989836872e-02, -1.474031950963889531e-02, -1.486500089588452603e-02, -1.498962470595158018e-02, -1.511419075729313229e-02, -1.523869886750009450e-02, -1.536314885430115247e-02, -1.548754053556259183e-02, -1.561187372928943447e-02, -1.573614825362464401e-02, -1.586036392685055696e-02, -1.598452056738767016e-02, -1.610861799379645701e-02, -1.623265602477631450e-02, -1.635663447916610794e-02, -1.648055317594568359e-02, -1.660441193423380438e-02, -1.672821057329050218e-02, -1.685194891251588084e-02, -1.697562677145105642e-02, -1.709924396977859432e-02, -1.722280032732185356e-02, -1.734629566404640930e-02, -1.746972980005900150e-02, -1.759310255560891934e-02, -1.771641375108770969e-02, -1.783966320702907657e-02, -1.796285074411007807e-02, -1.808597618315013408e-02, -1.820903934511258412e-02, -1.833204005110373666e-02, -1.845497812237355262e-02, -1.857785338031636355e-02, -1.870066564647061141e-02, -1.882341474251917821e-02, -1.894610049028925408e-02, -1.906872271175303127e-02, -1.919128122902828693e-02, -1.931377586437748109e-02, -1.943620644020926588e-02, -1.955857277907753142e-02, -1.968087470368282479e-02, -1.980311203687177071e-02, -1.992528460163717208e-02, -2.004739222111922431e-02, -2.016943471860433226e-02, -2.029141191752697679e-02, -2.041332364146847961e-02, -2.053516971415778047e-02, -2.065694995947238433e-02, -2.077866420143695964e-02, -2.090031226422595437e-02, -2.102189397216099043e-02, -2.114340914971319166e-02, -2.126485762150286465e-02, -2.138623921229906855e-02, -2.150755374702121095e-02, -2.162880105073746936e-02, -2.174998094866676182e-02, -2.187109326617790728e-02, -2.199213782879006276e-02, -2.211311446217348320e-02, -2.223402299214867137e-02, -2.235486324468783509e-02, -2.247563504591409966e-02, -2.259633822210223297e-02, -2.271697259967922489e-02, -2.283753800522331581e-02, -2.295803426546568632e-02, -2.307846120728980488e-02, -2.319881865773140012e-02, -2.331910644397989715e-02, -2.343932439337710616e-02, -2.355947233341872810e-02, -2.367955009175375797e-02, -2.379955749618528280e-02, -2.391949437467010345e-02, -2.403936055531920302e-02, -2.415915586639885357e-02, -2.427888013632896816e-02, -2.439853319368531781e-02, -2.451811486719813679e-02, -2.463762498575321203e-02, -2.475706337839225779e-02, -2.487642987431230163e-02, -2.499572430286691252e-02, -2.511494649356520517e-02, -2.523409627607368921e-02, -2.535317348021510001e-02, -2.547217793596874211e-02, -2.559110947347184931e-02, -2.570996792301805112e-02, -2.582875311505966609e-02, -2.594746488020578667e-02, -2.606610304922396190e-02, -2.618466745303999615e-02, -2.630315792273826836e-02, -2.642157428956140933e-02, -2.653991638491129401e-02, -2.665818404034862865e-02, -2.677637708759388405e-02, -2.689449535852625126e-02, -2.701253868518564347e-02, -2.713050689977107230e-02, -2.724839983464222987e-02, -2.736621732231934653e-02, -2.748395919548249008e-02, -2.760162528697354331e-02, -2.771921542979469133e-02, -2.783672945710943120e-02, -2.795416720224331089e-02, -2.807152849868261787e-02, -2.818881318007658912e-02, -2.830602108023561742e-02, -2.842315203313296873e-02, -2.854020587290442487e-02, -2.865718243384807531e-02, -2.877408155042559049e-02, -2.889090305726117400e-02, -2.900764678914290184e-02, -2.912431258102202852e-02, -2.924090026801406603e-02, -2.935740968539791995e-02, -2.947384066861710381e-02, -2.959019305327990207e-02, -2.970646667515853753e-02, -2.982266137019020866e-02, -2.993877697447764469e-02, -3.005481332428820707e-02, -3.017077025605536048e-02, -3.028664760637755221e-02, -3.040244521201975955e-02, -3.051816290991275077e-02, -3.063380053715331758e-02, -3.074935793100540271e-02, -3.086483492889897234e-02, -3.098023136843163633e-02, -3.109554708736725348e-02, -3.121078192363762466e-02, -3.132593571534216664e-02, -3.144100830074730152e-02, -3.155599951828851057e-02, -3.167090920656841224e-02, -3.178573720435838579e-02, -3.190048335059856438e-02, -3.201514748439717589e-02, -3.212972944503237477e-02, -3.224422907195029220e-02, -3.235864620476786718e-02, -3.247298068327001547e-02, -3.258723234741284225e-02, -3.270140103732153969e-02, -3.281548659329169837e-02, -3.292948885578945994e-02, -3.304340766545141306e-02, -3.315724286308446150e-02, -3.327099428966753120e-02, -3.338466178634970360e-02, -3.349824519445190191e-02, -3.361174435546680078e-02, -3.372515911105831293e-02, -3.383848930306294911e-02, -3.395173477348872176e-02, -3.406489536451651201e-02, -3.417797091849944513e-02, -3.429096127796384119e-02, -3.440386628560853505e-02, -3.451668578430514001e-02, -3.462941961710026828e-02, -3.474206762721198521e-02, -3.485462965803377139e-02, -3.496710555313183727e-02, -3.507949515624739223e-02, -3.519179831129541636e-02, -3.530401486236557640e-02, -3.541614465372262821e-02, -3.552818752980545225e-02, -3.564014333522894790e-02, -3.575201191478262486e-02, -3.586379311343177584e-02, -3.597548677631739328e-02, -3.608709274875600975e-02, -3.619861087624087065e-02, -3.631004100444104599e-02, -3.642138297920188145e-02, -3.653263664654571308e-02, -3.664380185267155504e-02, -3.675487844395595310e-02, -3.686586626695168012e-02, -3.697676516838966504e-02, -3.708757499517830597e-02, -3.719829559440337996e-02, -3.730892681332940997e-02, -3.741946849939818687e-02, -3.752992050023063603e-02, -3.764028266362601238e-02, -3.775055483756172003e-02, -3.786073687019489431e-02, -3.797082860986122216e-02, -3.808082990507621196e-02, -3.819074060453406944e-02, -3.830056055710936991e-02, -3.841028961185613544e-02, -3.851992761800877157e-02, -3.862947442498149142e-02, -3.873892988236930096e-02, -3.884829383994734681e-02, -3.895756614767234560e-02, -3.906674665568079380e-02, -3.917583521429152116e-02, -3.928483167400374787e-02, -3.939373588549886090e-02, -3.950254769963971319e-02, -3.961126696747074155e-02, -3.971989354021911167e-02, -3.982842726929337190e-02, -3.993686800628527128e-02, -4.004521560296883664e-02, -4.015346991130056692e-02, -4.026163078342065438e-02, -4.036969807165147889e-02, -4.047767162849971734e-02, -4.058555130665511546e-02, -4.069333695899093883e-02, -4.080102843856466682e-02, -4.090862559861735415e-02, -4.101612829257498399e-02, -4.112353637404691370e-02, -4.123084969682831724e-02, -4.133806811489803418e-02, -4.144519148242058887e-02, -4.155221965374515658e-02, -4.165915248340653493e-02, -4.176598982612448469e-02, -4.187273153680518695e-02, -4.197937747053975821e-02, -4.208592748260589489e-02, -4.219238142846720718e-02, -4.229873916377380888e-02, -4.240500054436235899e-02, -4.251116542625579808e-02, -4.261723366566466664e-02, -4.272320511898565487e-02, -4.282907964280328189e-02, -4.293485709388938920e-02, -4.304053732920293251e-02, -4.314612020589139035e-02, -4.325160558128891830e-02, -4.335699331291923558e-02, -4.346228325849321728e-02, -4.356747527591053187e-02, -4.367256922325948171e-02, -4.377756495881678783e-02, -4.388246234104842269e-02, -4.398726122860936727e-02, -4.409196148034403434e-02, -4.419656295528562318e-02, -4.430106551265782650e-02, -4.440546901187369250e-02, -4.450977331253587466e-02, -4.461397827443777664e-02, -4.471808375756255310e-02, -4.482208962208365788e-02, -4.492599572836613459e-02, -4.502980193696466682e-02, -4.513350810862547940e-02, -4.523711410428574858e-02, -4.534061978507398366e-02, -4.544402501231020047e-02, -4.554732964750548424e-02, -4.565053355236362714e-02, -4.575363658877926176e-02, -4.585663861884026193e-02, -4.595953950482566108e-02, -4.606233910920732449e-02, -4.616503729465035871e-02, -4.626763392401155028e-02, -4.637012886034123926e-02, -4.647252196688286124e-02, -4.657481310707256572e-02, -4.667700214454036101e-02, -4.677908894310950361e-02, -4.688107336679727538e-02, -4.698295527981486558e-02, -4.708473454656678797e-02, -4.718641103165278211e-02, -4.728798459986606473e-02, -4.738945511619507833e-02, -4.749082244582223528e-02, -4.759208645412543043e-02, -4.769324700667691708e-02, -4.779430396924441021e-02, -4.789525720779106571e-02, -4.799610658847520972e-02, -4.809685197765119213e-02, -4.819749324186872741e-02, -4.829803024787345661e-02, -4.839846286260737762e-02, -4.849879095320840799e-02, -4.859901438701139803e-02, -4.869913303154687484e-02, -4.879914675454306155e-02, -4.889905542392435078e-02, -4.899885890781204706e-02, -4.909855707452540075e-02, -4.919814979258019250e-02, -4.929763693069009328e-02, -4.939701835776629663e-02, -4.949629394291755330e-02, -4.959546355545090685e-02, -4.969452706487104826e-02, -4.979348434088165520e-02, -4.989233525338365727e-02, -4.999107967247761602e-02, -5.008971746846224704e-02, -5.018824851183460029e-02, -5.028667267329181567e-02, -5.038498982372954099e-02, -5.048319983424243845e-02, -5.058130257612501041e-02, -5.067929792087133567e-02, -5.077718574017505565e-02, -5.087496590592945067e-02, -5.097263829022855020e-02, -5.107020276536596015e-02, -5.116765920383517519e-02, -5.126500747833152849e-02, -5.136224746174948563e-02, -5.145937902718521889e-02, -5.155640204793515702e-02, -5.165331639749740078e-02, -5.175012194957057804e-02, -5.184681857805526622e-02, -5.194340615705311109e-02, -5.203988456086718062e-02, -5.213625366400281846e-02, -5.223251334116710970e-02, -5.232866346726865875e-02, -5.242470391741933106e-02, -5.252063456693229632e-02, -5.261645529132338156e-02, -5.271216596631171647e-02, -5.280776646781817907e-02, -5.290325667196726922e-02, -5.299863645508624821e-02, -5.309390569370558283e-02, -5.318906426455900782e-02, -5.328411204458359529e-02, -5.337904891092037918e-02, -5.347387474091353649e-02, -5.356858941211187913e-02, -5.366319280226748700e-02, -5.375768478933673489e-02, -5.385206525148072965e-02, -5.394633406706447754e-02, -5.404049111465777933e-02, -5.413453627303509846e-02, -5.422846942117549168e-02, -5.432229043826358739e-02, -5.441599920368823257e-02, -5.450959559704420671e-02, -5.460307949813109768e-02, -5.469645078695475199e-02, -5.478970934372554003e-02, -5.488285504886068755e-02, -5.497588778298279771e-02, -5.506880742692030206e-02, -5.516161386170849446e-02, -5.525430696858792123e-02, -5.534688662900630329e-02, -5.543935272461809893e-02, -5.553170513728366425e-02, -5.562394374907108502e-02, -5.571606844225404642e-02, -5.580807909931485844e-02, -5.589997560294255458e-02, -5.599175783603255879e-02, -5.608342568168921821e-02, -5.617497902322305531e-02, -5.626641774415368225e-02, -5.635774172820737227e-02, -5.644895085931914136e-02, -5.654004502163182538e-02, -5.663102409949632293e-02, -5.672188797747255984e-02, -5.681263654032804589e-02, -5.690326967303950545e-02, -5.699378726079235014e-02, -5.708418918898046368e-02, -5.717447534320704849e-02, -5.726464560928443831e-02, -5.735469987323390390e-02, -5.744463802128677715e-02, -5.753445993988295232e-02, -5.762416551567237089e-02, -5.771375463551463997e-02, -5.780322718647974006e-02, -5.789258305584660952e-02, -5.798182213110490008e-02, -5.807094429995449114e-02, -5.815994945030559388e-02, -5.824883747027882058e-02, -5.833760824820525409e-02, -5.842626167262641307e-02, -5.851479763229564673e-02, -5.860321601617595605e-02, -5.869151671344238763e-02, -5.877969961348041006e-02, -5.886776460588766940e-02, -5.895571158047242105e-02, -5.904354042725497298e-02, -5.913125103646685310e-02, -5.921884329855153090e-02, -5.930631710416464641e-02, -5.939367234417348290e-02, -5.948090890965716110e-02, -5.956802669190786742e-02, -5.965502558242932740e-02, -5.974190547293838083e-02, -5.982866625536401028e-02, -5.991530782184796566e-02, -6.000183006474507641e-02, -6.008823287662259233e-02, -6.017451615026111339e-02, -6.026067977865406933e-02, -6.034672365500909352e-02, -6.043264767274580257e-02, -6.051845172549832202e-02, -6.060413570711420395e-02, -6.068969951165398974e-02, -6.077514303339314611e-02, -6.086046616682007360e-02, -6.094566880663776498e-02, -6.103075084776347220e-02, -6.111571218532815125e-02, -6.120055271467740587e-02, -6.128527233137136265e-02, -6.136987093118471959e-02, -6.145434841010709998e-02, -6.153870466434212955e-02, -6.162293959030937934e-02, -6.170705308464264488e-02, -6.179104504419113963e-02, -6.187491536601914810e-02, -6.195866394740640742e-02, -6.204229068584854456e-02, -6.212579547905582034e-02, -6.220917822495469762e-02, -6.229243882168730706e-02, -6.237557716761139154e-02, -6.245859316130149969e-02, -6.254148670154677236e-02, -6.262425768735398190e-02, -6.270690601794536023e-02, -6.278943159275959807e-02, -6.287183431145197676e-02, -6.295411407389446545e-02, -6.303627078017570717e-02, -6.311830433060036660e-02, -6.320021462569146153e-02, -6.328200156618740690e-02, -6.336366505304473484e-02, -6.344520498743674852e-02, -6.352662127075450749e-02, -6.360791380460557864e-02, -6.368908249081593753e-02, -6.377012723142828909e-02, -6.385104792870366364e-02, -6.393184448512057028e-02, -6.401251680337523287e-02, -6.409306478638227000e-02, -6.417348833727419544e-02, -6.425378735940157071e-02, -6.433396175633299130e-02, -6.441401143185593314e-02, -6.449393628997614203e-02, -6.457373623491745318e-02, -6.465341117112301250e-02, -6.473296100325429125e-02, -6.481238563619144688e-02, -6.489168497503408628e-02, -6.497085892510050253e-02, -6.504990739192786919e-02, -6.512883028127297580e-02, -6.520762749911168665e-02, -6.528629895163913510e-02, -6.536484454527041743e-02, -6.544326418663928835e-02, -6.552155778260011776e-02, -6.559972524022608664e-02, -6.567776646681132424e-02, -6.575568136986932599e-02, -6.583346985713299515e-02, -6.591113183655601671e-02, -6.598866721631251042e-02, -6.606607590479611491e-02, -6.614335781062145869e-02, -6.622051284262311932e-02, -6.629754090985659487e-02, -6.637444192159797085e-02, -6.645121578734382306e-02, -6.652786241681178658e-02, -6.660438171994031986e-02, -6.668077360688857980e-02, -6.675703798803730993e-02, -6.683317477398749429e-02, -6.690918387556267499e-02, -6.698506520380607954e-02, -6.706081866998415963e-02, -6.713644418558341320e-02, -6.721194166231204969e-02, -6.728731101210062848e-02, -6.736255214710115680e-02, -6.743766497968724238e-02, -6.751264942245407963e-02, -6.758750538821983733e-02, -6.766223279002350766e-02, -6.773683154112736249e-02, -6.781130155501499668e-02, -6.788564274539270194e-02, -6.795985502618949459e-02, -6.803393831155590821e-02, -6.810789251586561732e-02, -6.818171755371504883e-02, -6.825541333992285464e-02, -6.832897978953049456e-02, -6.840241681780311056e-02, -6.847572434022741739e-02, -6.854890227251420054e-02, -6.862195053059697014e-02, -6.869486903063178052e-02, -6.876765768899908982e-02, -6.884031642230184489e-02, -6.891284514736631395e-02, -6.898524378124241963e-02, -6.905751224120426635e-02, -6.912965044474790599e-02, -6.920165830959500164e-02, -6.927353575368942751e-02, -6.934528269519957266e-02, -6.941689905251784143e-02, -6.948838474426016765e-02, -6.955973968926663920e-02, -6.963096380660156737e-02, -6.970205701555352851e-02, -6.977301923563523911e-02, -6.984385038658327827e-02, -6.991455038835941993e-02, -6.998511916114932840e-02, -7.005555662536332162e-02, -7.012586270163646829e-02, -7.019603731082829645e-02, -7.026608037402297391e-02, -7.033599181252990495e-02, -7.040577154788313363e-02, -7.047541950184123272e-02, -7.054493559638835842e-02, -7.061431975373333447e-02, -7.068357189631067905e-02, -7.075269194677909212e-02, -7.082167982802375916e-02, -7.089053546315417231e-02, -7.095925877550575411e-02, -7.102784968863920523e-02, -7.109630812634107344e-02, -7.116463401262279609e-02, -7.123282727172230988e-02, -7.130088782810249659e-02, -7.136881560645245981e-02, -7.143661053168699759e-02, -7.150427252894685226e-02, -7.157180152359862713e-02, -7.163919744123531386e-02, -7.170646020767550144e-02, -7.177358974896380639e-02, -7.184058599137194134e-02, -7.190744886139699421e-02, -7.197417828576246901e-02, -7.204077419141853567e-02, -7.210723650554230757e-02, -7.217356515553587093e-02, -7.223976006902951830e-02, -7.230582117387907015e-02, -7.237174839816754024e-02, -7.243754167020451107e-02, -7.250320091852635596e-02, -7.256872607189621127e-02, -7.263411705930404583e-02, -7.269937380996724374e-02, -7.276449625332966076e-02, -7.282948431906233200e-02, -7.289433793706386056e-02, -7.295905703745929338e-02, -7.302364155060131479e-02, -7.308809140707014929e-02, -7.315240653767257628e-02, -7.321658687344337335e-02, -7.328063234564484441e-02, -7.334454288576636172e-02, -7.340831842552493491e-02, -7.347195889686512771e-02, -7.353546423195971016e-02, -7.359883436320824313e-02, -7.366206922323864648e-02, -7.372516874490654681e-02, -7.378813286129495830e-02, -7.385096150571567042e-02, -7.391365461170756879e-02, -7.397621211303818944e-02, -7.403863394370206741e-02, -7.410092003792327631e-02, -7.416307033015290262e-02, -7.422508475507026693e-02, -7.428696324758410352e-02, -7.434870574282959055e-02, -7.441031217617170845e-02, -7.447178248320336647e-02, -7.453311659974544423e-02, -7.459431446184752734e-02, -7.465537600578814326e-02, -7.471630116807387312e-02, -7.477708988544011504e-02, -7.483774209485044571e-02, -7.489825773349759186e-02, -7.495863673880291678e-02, -7.501887904841683663e-02, -7.507898460021752984e-02, -7.513895333231337959e-02, -7.519878518304043413e-02, -7.525848009096461344e-02, -7.531803799488009932e-02, -7.537745883381062606e-02, -7.543674254700866166e-02, -7.549588907395560211e-02, -7.555489835436259016e-02, -7.561377032816940513e-02, -7.567250493554471269e-02, -7.573110211688757754e-02, -7.578956181282495153e-02, -7.584788396421447698e-02, -7.590606851214179440e-02, -7.596411539792276291e-02, -7.602202456310276635e-02, -7.607979594945639412e-02, -7.613742949898737178e-02, -7.619492515392953247e-02, -7.625228285674594264e-02, -7.630950255012923511e-02, -7.636658417700224744e-02, -7.642352768051668965e-02, -7.648033300405442103e-02, -7.653700009122707537e-02, -7.659352888587635244e-02, -7.664991933207231101e-02, -7.670617137411687991e-02, -7.676228495654051354e-02, -7.681826002410370446e-02, -7.687409652179734432e-02, -7.692979439484191884e-02, -7.698535358868789646e-02, -7.704077404901611692e-02, -7.709605572173730548e-02, -7.715119855299241991e-02, -7.720620248915147088e-02, -7.726106747681638076e-02, -7.731579346281756970e-02, -7.737038039421692548e-02, -7.742482821830556916e-02, -7.747913688260564535e-02, -7.753330633486940626e-02, -7.758733652307903128e-02, -7.764122739544719598e-02, -7.769497890041712762e-02, -7.774859098666246637e-02, -7.780206360308694613e-02, -7.785539669882435287e-02, -7.790859022324041205e-02, -7.796164412592965220e-02, -7.801455835671819439e-02, -7.806733286566215624e-02, -7.811996760304872056e-02, -7.817246251939463653e-02, -7.822481756544863440e-02, -7.827703269218860838e-02, -7.832910785082451699e-02, -7.838104299279587128e-02, -7.843283806977344175e-02, -7.848449303365798158e-02, -7.853600783658244711e-02, -7.858738243090900022e-02, -7.863861676923128430e-02, -7.868971080437391075e-02, -7.874066448939119611e-02, -7.879147777757007642e-02, -7.884215062242631855e-02, -7.889268297770815619e-02, -7.894307479739412492e-02, -7.899332603569331201e-02, -7.904343664704628625e-02, -7.909340658612386277e-02, -7.914323580782836598e-02, -7.919292426729299117e-02, -7.924247191988167960e-02, -7.929187872118968750e-02, -7.934114462704262849e-02, -7.939026959349809731e-02, -7.943925357684381017e-02, -7.948809653359879823e-02, -7.953679842051369908e-02, -7.958535919456925789e-02, -7.963377881297827032e-02, -7.968205723318338984e-02, -7.973019441285991715e-02, -7.977819030991328830e-02, -7.982604488248006003e-02, -7.987375808892792362e-02, -7.992132988785656533e-02, -7.996876023809580680e-02, -8.001604909870693727e-02, -8.006319642898236666e-02, -8.011020218844602803e-02, -8.015706633685294735e-02, -8.020378883418896598e-02, -8.025036964067180922e-02, -8.029680871674929610e-02, -8.034310602310197613e-02, -8.038926152064025665e-02, -8.043527517050665099e-02, -8.048114693407469600e-02, -8.052687677294873003e-02, -8.057246464896521132e-02, -8.061791052419098325e-02, -8.066321436092505071e-02, -8.070837612169624864e-02, -8.075339576926673923e-02, -8.079827326662832043e-02, -8.084300857700452148e-02, -8.088760166385032535e-02, -8.093205249085179409e-02, -8.097636102192652674e-02, -8.102052722122321526e-02, -8.106455105312214415e-02, -8.110843248223419122e-02, -8.115217147340246517e-02, -8.119576799170047376e-02, -8.123922200243378910e-02, -8.128253347113889582e-02, -8.132570236358349636e-02, -8.136872864576635833e-02, -8.141161228391854965e-02, -8.145435324450148173e-02, -8.149695149420815854e-02, -8.153940699996280184e-02, -8.158171972892096224e-02, -8.162388964846961636e-02, -8.166591672622676434e-02, -8.170780093004183231e-02, -8.174954222799524217e-02, -8.179114058839939694e-02, -8.183259597979740396e-02, -8.187390837096328311e-02, -8.191507773090346556e-02, -8.195610402885417090e-02, -8.199698723428433533e-02, -8.203772731689266962e-02, -8.207832424661050397e-02, -8.211877799359912355e-02, -8.215908852825189179e-02, -8.219925582119322338e-02, -8.223927984327855656e-02, -8.227916056559422819e-02, -8.231889795945876442e-02, -8.235849199642064633e-02, -8.239794264826033610e-02, -8.243724988698918066e-02, -8.247641368484964763e-02, -8.251543401431518654e-02, -8.255431084809072839e-02, -8.259304415911257469e-02, -8.263163392054689860e-02, -8.267008010579193766e-02, -8.270838268847731378e-02, -8.274654164246258992e-02, -8.278455694183937952e-02, -8.282242856092951466e-02, -8.286015647428694730e-02, -8.289774065669545944e-02, -8.293518108317046722e-02, -8.297247772895835483e-02, -8.300963056953605812e-02, -8.304663958061200835e-02, -8.308350473812524395e-02, -8.312022601824560486e-02, -8.315680339737424598e-02, -8.319323685214273512e-02, -8.322952635941427424e-02, -8.326567189628157617e-02, -8.330167344006979280e-02, -8.333753096833355911e-02, -8.337324445885907487e-02, -8.340881388966284171e-02, -8.344423923899253748e-02, -8.347952048532647495e-02, -8.351465760737337984e-02, -8.354965058407297362e-02, -8.358449939459547395e-02, -8.361920401834206651e-02, -8.365376443494411396e-02, -8.368818062426432169e-02, -8.372245256639472555e-02, -8.375658024165925919e-02, -8.379056363061146429e-02, -8.382440271403621135e-02, -8.385809747294842298e-02, -8.389164788859318489e-02, -8.392505394244641204e-02, -8.395831561621464045e-02, -8.399143289183436112e-02, -8.402440575147318569e-02, -8.405723417752769544e-02, -8.408991815262592540e-02, -8.412245765962625410e-02, -8.415485268161709831e-02, -8.418710320191657992e-02, -8.421920920407373334e-02, -8.425117067186768671e-02, -8.428298758930732881e-02, -8.431465994063234992e-02, -8.434618771031174300e-02, -8.437757088304484454e-02, -8.440880944376209782e-02, -8.443990337762233289e-02, -8.447085267001527842e-02, -8.450165730656063190e-02, -8.453231727310765720e-02, -8.456283255573564250e-02, -8.459320314075416403e-02, -8.462342901470201739e-02, -8.465351016434791154e-02, -8.468344657669070463e-02, -8.471323823895900162e-02, -8.474288513861034933e-02, -8.477238726333309604e-02, -8.480174460104460132e-02, -8.483095713989176334e-02, -8.486002486825067193e-02, -8.488894777472826003e-02, -8.491772584816000002e-02, -8.494635907761052818e-02, -8.497484745237506021e-02, -8.500319096197717084e-02, -8.503138959617012604e-02, -8.505944334493659165e-02, -8.508735219848864717e-02, -8.511511614726756381e-02, -8.514273518194326318e-02, -8.517020929341583002e-02, -8.519753847281374970e-02, -8.522472271149483802e-02, -8.525176200104594981e-02, -8.527865633328292339e-02, -8.530540570025099689e-02, -8.533201009422332339e-02, -8.535846950770303865e-02, -8.538478393342184558e-02, -8.541095336433970897e-02, -8.543697779364628486e-02, -8.546285721475889441e-02, -8.548859162132484146e-02, -8.551418100721894233e-02, -8.553962536654494131e-02, -8.556492469363567721e-02, -8.559007898305193152e-02, -8.561508822958285858e-02, -8.563995242824676279e-02, -8.566467157428987733e-02, -8.568924566318630864e-02, -8.571367469063961853e-02, -8.573795865258075632e-02, -8.576209754516873895e-02, -8.578609136479134478e-02, -8.580994010806435035e-02, -8.583364377183151650e-02, -8.585720235316474103e-02, -8.588061584936305948e-02, -8.590388425795492111e-02, -8.592700757669559375e-02, -8.594998580356853768e-02, -8.597281893678455911e-02, -8.599550697478311467e-02, -8.601804991623031305e-02, -8.604044776002062189e-02, -8.606270050527585480e-02, -8.608480815134506026e-02, -8.610677069780540982e-02, -8.612858814446149036e-02, -8.615026049134429098e-02, -8.617178773871318753e-02, -8.619316988705406912e-02, -8.621440693708108671e-02, -8.623549888973433553e-02, -8.625644574618145100e-02, -8.627724750781809449e-02, -8.629790417626544141e-02, -8.631841575337270700e-02, -8.633878224121582790e-02, -8.635900364209654623e-02, -8.637907995854492149e-02, -8.639901119331699908e-02, -8.641879734939536539e-02, -8.643843842998995275e-02, -8.645793443853627691e-02, -8.647728537869697751e-02, -8.649649125436112418e-02, -8.651555206964432754e-02, -8.653446782888819799e-02, -8.655323853666031797e-02, -8.657186419775568520e-02, -8.659034481719450616e-02, -8.660868040022302872e-02, -8.662687095231388912e-02, -8.664491647916587602e-02, -8.666281698670365297e-02, -8.668057248107717550e-02, -8.669818296866274587e-02, -8.671564845606283267e-02, -8.673296895010457197e-02, -8.675014445784115513e-02, -8.676717498655174554e-02, -8.678406054374042389e-02, -8.680080113713724288e-02, -8.681739677469736682e-02, -8.683384746460066916e-02, -8.685015321525343945e-02, -8.686631403528666251e-02, -8.688232993355600453e-02, -8.689820091914290945e-02, -8.691392700135311400e-02, -8.692950818971796612e-02, -8.694494449399312042e-02, -8.696023592415912107e-02, -8.697538249042172098e-02, -8.699038420321072995e-02, -8.700524107318106937e-02, -8.701995311121164811e-02, -8.703452032840620911e-02, -8.704894273609298239e-02, -8.706322034582410219e-02, -8.707735316937627312e-02, -8.709134121875057588e-02, -8.710518450617159292e-02, -8.711888304408876849e-02, -8.713243684517470167e-02, -8.714584592232603455e-02, -8.715911028866438204e-02, -8.717222995753329262e-02, -8.718520494250169006e-02, -8.719803525736137539e-02, -8.721072091612709631e-02, -8.722326193303839292e-02, -8.723565832255718300e-02, -8.724791009936889996e-02, -8.726001727838318678e-02, -8.727197987473139795e-02, -8.728379790376919467e-02, -8.729547138107458804e-02, -8.730700032244918807e-02, -8.731838474391635796e-02, -8.732962466172378146e-02, -8.734072009234071510e-02, -8.735167105245932040e-02, -8.736247755899509415e-02, -8.737313962908521692e-02, -8.738365728008996858e-02, -8.739403052959093809e-02, -8.740425939539328559e-02, -8.741434389552331374e-02, -8.742428404823043842e-02, -8.743407987198531517e-02, -8.744373138548093560e-02, -8.745323860763212775e-02, -8.746260155757551447e-02, -8.747182025466952726e-02, -8.748089471849423981e-02, -8.748982496885122917e-02, -8.749861102576404759e-02, -8.750725290947648782e-02, -8.751575064045516439e-02, -8.752410423938626616e-02, -8.753231372717935888e-02, -8.754037912496291651e-02, -8.754830045408770745e-02, -8.755607773612501810e-02, -8.756371099286740234e-02, -8.757120024632723820e-02, -8.757854551873835158e-02, -8.758574683255511417e-02, -8.759280421045215204e-02, -8.759971767532467868e-02, -8.760648725028793993e-02, -8.761311295867824089e-02, -8.761959482405091981e-02, -8.762593287018261012e-02, -8.763212712106875635e-02, -8.763817760092584841e-02, -8.764408433418904854e-02, -8.764984734551381496e-02, -8.765546665977594354e-02, -8.766094230206948612e-02, -8.766627429770929014e-02, -8.767146267222829248e-02, -8.767650745137957335e-02, -8.768140866113538490e-02, -8.768616632768649888e-02, -8.769078047744377491e-02, -8.769525113703575958e-02, -8.769957833331080976e-02, -8.770376209333544115e-02, -8.770780244439556339e-02, -8.771169941399480086e-02, -8.771545302985547798e-02, -8.771906331991921602e-02, -8.772253031234493459e-02, -8.772585403550943461e-02, -8.772903451800917463e-02, -8.773207178865707889e-02, -8.773496587648529910e-02, -8.773771681074230000e-02, -8.774032462089569051e-02, -8.774278933663029467e-02, -8.774511098784837371e-02, -8.774728960466933458e-02, -8.774932521743072922e-02, -8.775121785668682506e-02, -8.775296755320892428e-02, -8.775457433798601603e-02, -8.775603824222341642e-02, -8.775735929734390650e-02, -8.775853753498652488e-02, -8.775957298700756692e-02, -8.776046568547966886e-02, -8.776121566269153018e-02, -8.776182295114902387e-02, -8.776228758357361437e-02, -8.776260959290356489e-02, -8.776278901229271623e-02, -8.776282587511140265e-02, -8.776272021494532782e-02, -8.776247206559664726e-02, -8.776208146108256669e-02, -8.776154843563609143e-02, -8.776087302370652599e-02, -8.776005525995693446e-02, -8.775909517926722136e-02, -8.775799281673157815e-02, -8.775674820765994033e-02, -8.775536138757680793e-02, -8.775383239222112053e-02, -8.775216125754770058e-02, -8.775034801972549092e-02, -8.774839271513779071e-02, -8.774629538038246357e-02, -8.774405605227227067e-02, -8.774167476783346908e-02, -8.773915156430690809e-02, -8.773648647914773779e-02, -8.773367955002432661e-02, -8.773073081481948254e-02, -8.772764031162948173e-02, -8.772440807876467905e-02, -8.772103415474827304e-02, -8.771751857831749932e-02, -8.771386138842235392e-02, -8.771006262422631483e-02, -8.770612232510591189e-02, -8.770204053065067118e-02, -8.769781728066337878e-02, -8.769345261515885948e-02, -8.768894657436500373e-02, -8.768429919872254563e-02, -8.767951052888391106e-02, -8.767458060571407807e-02, -8.766950947029135410e-02, -8.766429716390430893e-02, -8.765894372805473067e-02, -8.765344920445636290e-02, -8.764781363503371114e-02, -8.764203706192426335e-02, -8.763611952747607514e-02, -8.763006107424901880e-02, -8.762386174501449188e-02, -8.761752158275430691e-02, -8.761104063066221803e-02, -8.760441893214294951e-02, -8.759765653081155734e-02, -8.759075347049387339e-02, -8.758370979522715760e-02, -8.757652554925846045e-02, -8.756920077704538619e-02, -8.756173552325594023e-02, -8.755412983276829320e-02, -8.754638375067040623e-02, -8.753849732226125224e-02, -8.753047059304805422e-02, -8.752230360874889425e-02, -8.751399641529096496e-02, -8.750554905881120782e-02, -8.749696158565574422e-02, -8.748823404238005585e-02, -8.747936647574859614e-02, -8.747035893273516494e-02, -8.746121146052168727e-02, -8.745192410650023951e-02, -8.744249691826989912e-02, -8.743292994363977000e-02, -8.742322323062651224e-02, -8.741337682745480009e-02, -8.740339078255834893e-02, -8.739326514457845807e-02, -8.738299996236448264e-02, -8.737259528497345884e-02, -8.736205116167022888e-02, -8.735136764192678871e-02, -8.734054477542330108e-02, -8.732958261204716577e-02, -8.731848120189175666e-02, -8.730724059525936387e-02, -8.729586084265808510e-02, -8.728434199480275546e-02, -8.727268410261551645e-02, -8.726088721722485841e-02, -8.724895138996560662e-02, -8.723687667237879639e-02, -8.722466311621236701e-02, -8.721231077341901061e-02, -8.719981969615896167e-02, -8.718718993679730467e-02, -8.717442154790437658e-02, -8.716151458225768200e-02, -8.714846909283893717e-02, -8.713528513283504140e-02, -8.712196275563893755e-02, -8.710850201484786337e-02, -8.709490296426455891e-02, -8.708116565789641994e-02, -8.706729014995541471e-02, -8.705327649485747332e-02, -8.703912474722447223e-02, -8.702483496188102852e-02, -8.701040719385695621e-02, -8.699584149838554548e-02, -8.698113793090399282e-02, -8.696629654705353984e-02, -8.695131740267872389e-02, -8.693620055382812739e-02, -8.692094605675303176e-02, -8.690555396790866638e-02, -8.689002434395261265e-02, -8.687435724174619178e-02, -8.685855271835322966e-02, -8.684261083103994583e-02, -8.682653163727571677e-02, -8.681031519473145219e-02, -8.679396156128167672e-02, -8.677747079500276739e-02, -8.676084295417178793e-02, -8.674407809726938923e-02, -8.672717628297714476e-02, -8.671013757017860535e-02, -8.669296201795845258e-02, -8.667564968560327598e-02, -8.665820063260028239e-02, -8.664061491863808695e-02, -8.662289260360658827e-02, -8.660503374759581652e-02, -8.658703841089718245e-02, -8.656890665400174267e-02, -8.655063853760240622e-02, -8.653223412259095082e-02, -8.651369347005941068e-02, -8.649501664130090917e-02, -8.647620369780771588e-02, -8.645725470127156587e-02, -8.643816971358411760e-02, -8.641894879683661990e-02, -8.639959201331910699e-02, -8.638009942552117570e-02, -8.636047109613130546e-02, -8.634070708803719130e-02, -8.632080746432457818e-02, -8.630077228827835734e-02, -8.628060162338159478e-02, -8.626029553331615585e-02, -8.623985408196140068e-02, -8.621927733339468380e-02, -8.619856535189256153e-02, -8.617771820192746124e-02, -8.615673594817084557e-02, -8.613561865549088092e-02, -8.611436638895288154e-02, -8.609297921382073893e-02, -8.607145719555335528e-02, -8.604980039980782147e-02, -8.602800889243768234e-02, -8.600608273949326976e-02, -8.598402200722099487e-02, -8.596182676206322315e-02, -8.593949707066000920e-02, -8.591703299984530806e-02, -8.589443461665047241e-02, -8.587170198830199053e-02, -8.584883518222199972e-02, -8.582583426602821697e-02, -8.580269930753359198e-02, -8.577943037474566879e-02, -8.575602753586800131e-02, -8.573249085929765534e-02, -8.570882041362752612e-02, -8.568501626764486734e-02, -8.566107849033050003e-02, -8.563700715086028370e-02, -8.561280231860424195e-02, -8.558846406312549393e-02, -8.556399245418173927e-02, -8.553938756172402291e-02, -8.551464945589683231e-02, -8.548977820703815289e-02, -8.546477388567931543e-02, -8.543963656254348338e-02, -8.541436630854858103e-02, -8.538896319480394903e-02, -8.536342729261170437e-02, -8.533775867346699018e-02, -8.531195740905618552e-02, -8.528602357125882050e-02, -8.525995723214577215e-02, -8.523375846398005551e-02, -8.520742733921578271e-02, -8.518096393049963411e-02, -8.515436831066837409e-02, -8.512764055275116870e-02, -8.510078072996678233e-02, -8.507378891572646429e-02, -8.504666518363090955e-02, -8.501940960747252085e-02, -8.499202226123263315e-02, -8.496450321908458059e-02, -8.493685255539062950e-02, -8.490907034470304704e-02, -8.488115666176443419e-02, -8.485311158150643518e-02, -8.482493517905115299e-02, -8.479662752970862361e-02, -8.476818870897878666e-02, -8.473961879255124952e-02, -8.471091785630302518e-02, -8.468208597630108581e-02, -8.465312322879992024e-02, -8.462402969024325483e-02, -8.459480543726266566e-02, -8.456545054667741201e-02, -8.453596509549504701e-02, -8.450634916091127880e-02, -8.447660282030851342e-02, -8.444672615125704829e-02, -8.441671923151422563e-02, -8.438658213902475169e-02, -8.435631495191982243e-02, -8.432591774851812272e-02, -8.429539060732424427e-02, -8.426473360702932403e-02, -8.423394682651090537e-02, -8.420303034483289650e-02, -8.417198424124500145e-02, -8.414080859518226208e-02, -8.410950348626608508e-02, -8.407806899430259051e-02, -8.404650519928370811e-02, -8.401481218138651119e-02, -8.398299002097291133e-02, -8.395103879858913098e-02, -8.391895859496734111e-02, -8.388674949102258027e-02, -8.385441156785568284e-02, -8.382194490675015652e-02, -8.378934958917515219e-02, -8.375662569678180014e-02, -8.372377331140638812e-02, -8.369079251506793271e-02, -8.365768338996877607e-02, -8.362444601849498838e-02, -8.359108048321482742e-02, -8.355758686688008474e-02, -8.352396525242446190e-02, -8.349021572296468074e-02, -8.345633836179969234e-02, -8.342233325241003861e-02, -8.338820047845922623e-02, -8.335394012379201967e-02, -8.331955227243423301e-02, -8.328503700859465897e-02, -8.325039441666123863e-02, -8.321562458120541905e-02, -8.318072758697780955e-02, -8.314570351891044375e-02, -8.311055246211601633e-02, -8.307527450188739726e-02, -8.303986972369832575e-02, -8.300433821320189753e-02, -8.296868005623156406e-02, -8.293289533880016107e-02, -8.289698414710058860e-02, -8.286094656750518650e-02, -8.282478268656462417e-02, -8.278849259100996838e-02, -8.275207636775003261e-02, -8.271553410387288974e-02, -8.267886588664516423e-02, -8.264207180351161586e-02, -8.260515194209575029e-02, -8.256810639019801501e-02, -8.253093523579801971e-02, -8.249363856705178855e-02, -8.245621647229396667e-02, -8.241866904003579408e-02, -8.238099635896577178e-02, -8.234319851794935641e-02, -8.230527560602930726e-02, -8.226722771242445109e-02, -8.222905492653008463e-02, -8.219075733791793292e-02, -8.215233503633559420e-02, -8.211378811170716441e-02, -8.207511665413182167e-02, -8.203632075388461731e-02, -8.199740050141575420e-02, -8.195835598735071170e-02, -8.191918730249039826e-02, -8.187989453781013838e-02, -8.184047778445967258e-02, -8.180093713376378195e-02, -8.176127267722169134e-02, -8.172148450650577878e-02, -8.168157271346343506e-02, -8.164153739011519029e-02, -8.160137862865517178e-02, -8.156109652145167310e-02, -8.152069116104528057e-02, -8.148016264014988630e-02, -8.143951105165235516e-02, -8.139873648861238598e-02, -8.135783904426197033e-02, -8.131681881200547579e-02, -8.127567588541920185e-02, -8.123441035825179624e-02, -8.119302232442358880e-02, -8.115151187802625843e-02, -8.110987911332294409e-02, -8.106812412474828644e-02, -8.102624700690774784e-02, -8.098424785457780661e-02, -8.094212676270536033e-02, -8.089988382640776743e-02, -8.085751914097323578e-02, -8.081503280185926841e-02, -8.077242490469420388e-02, -8.072969554527589797e-02, -8.068684481957076604e-02, -8.064387282371601740e-02, -8.060077965401733768e-02, -8.055756540694977708e-02, -8.051423017915648739e-02, -8.047077406744992945e-02, -8.042719716881130410e-02, -8.038349958038909504e-02, -8.033968139950058152e-02, -8.029574272363075582e-02, -8.025168365043257312e-02, -8.020750427772600777e-02, -8.016320470349824756e-02, -8.011878502590481788e-02, -8.007424534326675059e-02, -8.002958575407252695e-02, -7.998480635697764740e-02, -7.993990725080277193e-02, -7.989488853453605155e-02, -7.984975030733097723e-02, -7.980449266850687950e-02, -7.975911571754866480e-02, -7.971361955410727340e-02, -7.966800427799808348e-02, -7.962226998920228505e-02, -7.957641678786556150e-02, -7.953044477429808967e-02, -7.948435404897462309e-02, -7.943814471253482501e-02, -7.939181686578121455e-02, -7.934537060968203936e-02, -7.929880604536752864e-02, -7.925212327413230784e-02, -7.920532239743406644e-02, -7.915840351689418242e-02, -7.911136673429652877e-02, -7.906421215158718208e-02, -7.901693987087607396e-02, -7.896954999443477063e-02, -7.892204262469659781e-02, -7.887441786425801460e-02, -7.882667581587625427e-02, -7.877881658247090635e-02, -7.873084026712220962e-02, -7.868274697307194032e-02, -7.863453680372371746e-02, -7.858620986264035213e-02, -7.853776625354683127e-02, -7.848920608032756985e-02, -7.844052944702799290e-02, -7.839173645785248168e-02, -7.834282721716655240e-02, -7.829380182949458034e-02, -7.824466039952052143e-02, -7.819540303208764864e-02, -7.814602983219849641e-02, -7.809654090501387536e-02, -7.804693635585426004e-02, -7.799721629019756852e-02, -7.794738081368063343e-02, -7.789743003209800842e-02, -7.784736405140244009e-02, -7.779718297770440993e-02, -7.774688691727105194e-02, -7.769647597652809545e-02, -7.764595026205729777e-02, -7.759530988059754053e-02, -7.754455493904496843e-02, -7.749368554445153212e-02, -7.744270180402589021e-02, -7.739160382513236847e-02, -7.734039171529175083e-02, -7.728906558217987777e-02, -7.723762553362860384e-02, -7.718607167762488175e-02, -7.713440412231062360e-02, -7.708262297598297841e-02, -7.703072834709334682e-02, -7.697872034424774190e-02, -7.692659907620692794e-02, -7.687436465188524082e-02, -7.682201718035101823e-02, -7.676955677082622498e-02, -7.671698353268645298e-02, -7.666429757546010249e-02, -7.661149900882942287e-02, -7.655858794262919431e-02, -7.650556448684694977e-02, -7.645242875162215623e-02, -7.639918084724710290e-02, -7.634582088416567991e-02, -7.629234897297458573e-02, -7.623876522442080139e-02, -7.618506974940422727e-02, -7.613126265897442180e-02, -7.607734406433333540e-02, -7.602331407683302067e-02, -7.596917280797615968e-02, -7.591492036941642485e-02, -7.586055687295707728e-02, -7.580608243055178552e-02, -7.575149715430383457e-02, -7.569680115646587604e-02, -7.564199454944066370e-02, -7.558707744577944365e-02, -7.553204995818267597e-02, -7.547691219949997921e-02, -7.542166428272857603e-02, -7.536630632101536109e-02, -7.531083842765401437e-02, -7.525526071608738821e-02, -7.519957329990534234e-02, -7.514377629284524351e-02, -7.508786980879218753e-02, -7.503185396177822208e-02, -7.497572886598212472e-02, -7.491949463572941670e-02, -7.486315138549272385e-02, -7.480669922988987530e-02, -7.475013828368538837e-02, -7.469346866179026045e-02, -7.463669047925949873e-02, -7.457980385129542311e-02, -7.452280889324416902e-02, -7.446570572059743598e-02, -7.440849444899205745e-02, -7.435117519420872401e-02, -7.429374807217375976e-02, -7.423621319895579163e-02, -7.417857069076923271e-02, -7.412082066397139568e-02, -7.406296323506310342e-02, -7.400499852068874451e-02, -7.394692663763588469e-02, -7.388874770283511417e-02, -7.383046183335888191e-02, -7.377206914642324420e-02, -7.371356975938625489e-02, -7.365496378974742409e-02, -7.359625135514898109e-02, -7.353743257337370942e-02, -7.347850756234737546e-02, -7.341947644013545327e-02, -7.336033932494498422e-02, -7.330109633512452150e-02, -7.324174758916172923e-02, -7.318229320568624130e-02, -7.312273330346645561e-02, -7.306306800141161573e-02, -7.300329741857031207e-02, -7.294342167413062072e-02, -7.288344088742032545e-02, -7.282335517790566870e-02, -7.276316466519230919e-02, -7.270286946902389247e-02, -7.264246970928335545e-02, -7.258196550599127495e-02, -7.252135697930620073e-02, -7.246064424952487759e-02, -7.239982743708153756e-02, -7.233890666254738644e-02, -7.227788204663106175e-02, -7.221675371017821643e-02, -7.215552177417070001e-02, -7.209418635972776601e-02, -7.203274758810393474e-02, -7.197120558069058927e-02, -7.190956045901435167e-02, -7.184781234473819334e-02, -7.178596135965939484e-02, -7.172400762571155830e-02, -7.166195126496263668e-02, -7.159979239961532238e-02, -7.153753115200693624e-02, -7.147516764460964955e-02, -7.141270200002870772e-02, -7.135013434100398455e-02, -7.128746479040873330e-02, -7.122469347124987804e-02, -7.116182050666741699e-02, -7.109884601993395059e-02, -7.103577013445556976e-02, -7.097259297377077336e-02, -7.090931466154984375e-02, -7.084593532159590146e-02, -7.078245507784340640e-02, -7.071887405435901830e-02, -7.065519237534029218e-02, -7.059141016511645550e-02, -7.052752754814782532e-02, -7.046354464902503112e-02, -7.039946159246959767e-02, -7.033527850333354259e-02, -7.027099550659887672e-02, -7.020661272737711844e-02, -7.014213029091058427e-02, -7.007754832257001576e-02, -7.001286694785564813e-02, -6.994808629239684938e-02, -6.988320648195177343e-02, -6.981822764240737389e-02, -6.975314989977864089e-02, -6.968797338020897569e-02, -6.962269820996914993e-02, -6.955732451545862394e-02, -6.949185242320343736e-02, -6.942628205985702794e-02, -6.936061355220027314e-02, -6.929484702714046318e-02, -6.922898261171142598e-02, -6.916302043307376302e-02, -6.909696061851393345e-02, -6.903080329544428184e-02, -6.896454859140262184e-02, -6.889819663405279127e-02, -6.883174755118344479e-02, -6.876520147070805389e-02, -6.869855852066554525e-02, -6.863181882921881583e-02, -6.856498252465551002e-02, -6.849804973538663189e-02, -6.843102058994804393e-02, -6.836389521699859362e-02, -6.829667374532091828e-02, -6.822935630382073735e-02, -6.816194302152635276e-02, -6.809443402758952324e-02, -6.802682945128431247e-02, -6.795912942200654783e-02, -6.789133406927468084e-02, -6.782344352272921817e-02, -6.775545791213158364e-02, -6.768737736736489541e-02, -6.761920201843368838e-02, -6.755093199546303995e-02, -6.748256742869930547e-02, -6.741410844850839745e-02, -6.734555518537731211e-02, -6.727690776991290811e-02, -6.720816633284151798e-02, -6.713933100500911466e-02, -6.707040191738154744e-02, -6.700137920104330680e-02, -6.693226298719739953e-02, -6.686305340716622303e-02, -6.679375059239033019e-02, -6.672435467442831836e-02, -6.665486578495703751e-02, -6.658528405577078535e-02, -6.651560961878130729e-02, -6.644584260601830994e-02, -6.637598314962769863e-02, -6.630603138187264600e-02, -6.623598743513287035e-02, -6.616585144190421930e-02, -6.609562353479918329e-02, -6.602530384654566042e-02, -6.595489250998722019e-02, -6.588438965808350589e-02, -6.581379542390852766e-02, -6.574310994065162006e-02, -6.567233334161702574e-02, -6.560146576022343745e-02, -6.553050733000377603e-02, -6.545945818460480181e-02, -6.538831845778768359e-02, -6.531708828342620843e-02, -6.524576779550886330e-02, -6.517435712813603177e-02, -6.510285641552136793e-02, -6.503126579199165758e-02, -6.495958539198565251e-02, -6.488781535005420931e-02, -6.481595580086052522e-02, -6.474400687917922226e-02, -6.467196871989690232e-02, -6.459984145801071775e-02, -6.452762522862917627e-02, -6.445532016697197442e-02, -6.438292640836895675e-02, -6.431044408826017134e-02, -6.423787334219588363e-02, -6.416521430583654872e-02, -6.409246711495228399e-02, -6.401963190542177273e-02, -6.394670881323399891e-02, -6.387369797448612385e-02, -6.380059952538374990e-02, -6.372741360224215557e-02, -6.365414034148363098e-02, -6.358077987963890731e-02, -6.350733235334672655e-02, -6.343379789935313373e-02, -6.336017665451121328e-02, -6.328646875578131104e-02, -6.321267434023110365e-02, -6.313879354503389163e-02, -6.306482650747012586e-02, -6.299077336492556189e-02, -6.291663425489292527e-02, -6.284240931496956617e-02, -6.276809868285877780e-02, -6.269370249636929682e-02, -6.261922089341376285e-02, -6.254465401201057817e-02, -6.247000199028210354e-02, -6.239526496645467213e-02, -6.232044307885964418e-02, -6.224553646593092987e-02, -6.217054526620649502e-02, -6.209546961832759782e-02, -6.202030966103851822e-02, -6.194506553318648856e-02, -6.186973737372102045e-02, -6.179432532169384928e-02, -6.171882951625916325e-02, -6.164325009667293020e-02, -6.156758720229281445e-02, -6.149184097257733017e-02, -6.141601154708691002e-02, -6.134009906548254509e-02, -6.126410366752543801e-02, -6.118802549307814781e-02, -6.111186468210242501e-02, -6.103562137466085613e-02, -6.095929571091499716e-02, -6.088288783112656699e-02, -6.080639787565627480e-02, -6.072982598496317469e-02, -6.065317229960620615e-02, -6.057643696024202218e-02, -6.049962010762591907e-02, -6.042272188261095522e-02, -6.034574242614833967e-02, -6.026868187928673820e-02, -6.019154038317150318e-02, -6.011431807904643598e-02, -6.003701510825074777e-02, -5.995963161222114118e-02, -5.988216773249058905e-02, -5.980462361068782789e-02, -5.972699938853764240e-02, -5.964929520786047684e-02, -5.957151121057233101e-02, -5.949364753868417038e-02, -5.941570433430187759e-02, -5.933768173962641890e-02, -5.925957989695260913e-02, -5.918139894866993739e-02, -5.910313903726116536e-02, -5.902480030530346533e-02, -5.894638289546783733e-02, -5.886788695051731884e-02, -5.878931261330879593e-02, -5.871066002679151824e-02, -5.863192933400779988e-02, -5.855312067809149285e-02, -5.847423420226940255e-02, -5.839527004985869268e-02, -5.831622836426964690e-02, -5.823710928900296263e-02, -5.815791296765037560e-02, -5.807863954389475697e-02, -5.799928916150997454e-02, -5.791986196435883888e-02, -5.784035809639564291e-02, -5.776077770166402475e-02, -5.768112092429696774e-02, -5.760138790851726531e-02, -5.752157879863664669e-02, -5.744169373905572140e-02, -5.736173287426370865e-02, -5.728169634883810424e-02, -5.720158430744485406e-02, -5.712139689483760469e-02, -5.704113425585788377e-02, -5.696079653543428128e-02, -5.688038387858258133e-02, -5.679989643040617153e-02, -5.671933433609428754e-02, -5.663869774092310933e-02, -5.655798679025471343e-02, -5.647720162953770440e-02, -5.639634240430559109e-02, -5.631540926017783444e-02, -5.623440234285946582e-02, -5.615332179813940089e-02, -5.607216777189246576e-02, -5.599094041007719735e-02, -5.590963985873699527e-02, -5.582826626399885889e-02, -5.574681977207344291e-02, -5.566530052925554306e-02, -5.558370868192256953e-02, -5.550204437653487310e-02, -5.542030775963653622e-02, -5.533849897785315941e-02, -5.525661817789319363e-02, -5.517466550654660795e-02, -5.509264111068616632e-02, -5.501054513726514467e-02, -5.492837773331875340e-02, -5.484613904596282591e-02, -5.476382922239445700e-02, -5.468144840989123262e-02, -5.459899675581051520e-02, -5.451647440759065100e-02, -5.443388151274915904e-02, -5.435121821888327931e-02, -5.426848467367013928e-02, -5.418568102486484572e-02, -5.410280742030249002e-02, -5.401986400789616366e-02, -5.393685093563736765e-02, -5.385376835159581821e-02, -5.377061640391923164e-02, -5.368739524083272069e-02, -5.360410501063875982e-02, -5.352074586171721993e-02, -5.343731794252477157e-02, -5.335382140159453807e-02, -5.327025638753597053e-02, -5.318662304903487570e-02, -5.310292153485301342e-02, -5.301915199382779831e-02, -5.293531457487156422e-02, -5.285140942697272998e-02, -5.276743669919331525e-02, -5.268339654067149408e-02, -5.259928910061863194e-02, -5.251511452832100663e-02, -5.243087297313824002e-02, -5.234656458450418631e-02, -5.226218951192573153e-02, -5.217774790498309195e-02, -5.209323991332924508e-02, -5.200866568669033907e-02, -5.192402537486435349e-02, -5.183931912772186956e-02, -5.175454709520514035e-02, -5.166970942732788952e-02, -5.158480627417626890e-02, -5.149983778590618705e-02, -5.141480411274599455e-02, -5.132970540499341705e-02, -5.124454181301748429e-02, -5.115931348725724637e-02, -5.107402057822132274e-02, -5.098866323648854060e-02, -5.090324161270686626e-02, -5.081775585759358560e-02, -5.073220612193492934e-02, -5.064659255658570530e-02, -5.056091531246965226e-02, -5.047517454057789260e-02, -5.038937039197041723e-02, -5.030350301777422595e-02, -5.021757256918409074e-02, -5.013157919746204227e-02, -5.004552305393672462e-02, -4.995940429000413074e-02, -4.987322305712624942e-02, -4.978697950683116241e-02, -4.970067379071326646e-02, -4.961430606043273212e-02, -4.952787646771501795e-02, -4.944138516435041264e-02, -4.935483230219503414e-02, -4.926821803316886600e-02, -4.918154250925688142e-02, -4.909480588250837718e-02, -4.900800830503605765e-02, -4.892114992901687442e-02, -4.883423090669098549e-02, -4.874725139036190785e-02, -4.866021153239579594e-02, -4.857311148522217015e-02, -4.848595140133237641e-02, -4.839873143328034949e-02, -4.831145173368212725e-02, -4.822411245521465023e-02, -4.813671375061741309e-02, -4.804925577269056336e-02, -4.796173867429518595e-02, -4.787416260835319903e-02, -4.778652772784681285e-02, -4.769883418581897377e-02, -4.761108213537205286e-02, -4.752327172966853280e-02, -4.743540312192980751e-02, -4.734747646543722294e-02, -4.725949191353050888e-02, -4.717144961960850758e-02, -4.708334973712787613e-02, -4.699519241960457838e-02, -4.690697782061144933e-02, -4.681870609377979109e-02, -4.673037739279783942e-02, -4.664199187141139513e-02, -4.655354968342316491e-02, -4.646505098269233802e-02, -4.637649592313498881e-02, -4.628788465872295949e-02, -4.619921734348413078e-02, -4.611049413150244275e-02, -4.602171517691693026e-02, -4.593288063392185483e-02, -4.584399065676648954e-02, -4.575504539975500801e-02, -4.566604501724559617e-02, -4.557698966365116705e-02, -4.548787949343818804e-02, -4.539871466112681969e-02, -4.530949532129087409e-02, -4.522022162855741934e-02, -4.513089373760603706e-02, -4.504151180316939840e-02, -4.495207598003236188e-02, -4.486258642303250777e-02, -4.477304328705851433e-02, -4.468344672705103215e-02, -4.459379689800296170e-02, -4.450409395495685816e-02, -4.441433805300774168e-02, -4.432452934730004429e-02, -4.423466799302948338e-02, -4.414475414544174331e-02, -4.405478795983209378e-02, -4.396476959154595882e-02, -4.387469919597770940e-02, -4.378457692857103817e-02, -4.369440294481877901e-02, -4.360417740026225480e-02, -4.351390045049120109e-02, -4.342357225114339830e-02, -4.333319295790485914e-02, -4.324276272650869057e-02, -4.315228171273611385e-02, -4.306175007241495184e-02, -4.297116796141990658e-02, -4.288053553567298254e-02, -4.278985295114164089e-02, -4.269912036383981951e-02, -4.260833792982829382e-02, -4.251750580521171385e-02, -4.242662414614190719e-02, -4.233569310881418052e-02, -4.224471284946973437e-02, -4.215368352439445576e-02, -4.206260528991806469e-02, -4.197147830241473865e-02, -4.188030271830235629e-02, -4.178907869404258763e-02, -4.169780638614025564e-02, -4.160648595114349590e-02, -4.151511754564327084e-02, -4.142370132627280072e-02, -4.133223744970833391e-02, -4.124072607266761337e-02, -4.114916735191024438e-02, -4.105756144423820808e-02, -4.096590850649376586e-02, -4.087420869556093045e-02, -4.078246216836443200e-02, -4.069066908186924625e-02, -4.059882959308139944e-02, -4.050694385904612949e-02, -4.041501203684920440e-02, -4.032303428361557612e-02, -4.023101075650978992e-02, -4.013894161273516559e-02, -4.004682700953384605e-02, -3.995466710418733164e-02, -3.986246205401398901e-02, -3.977021201637130632e-02, -3.967791714865443603e-02, -3.958557760829566757e-02, -3.949319355276540572e-02, -3.940076513956993626e-02, -3.930829252625334808e-02, -3.921577587039577067e-02, -3.912321532961384601e-02, -3.903061106156006238e-02, -3.893796322392277520e-02, -3.884527197442598501e-02, -3.875253747082864353e-02, -3.865975987092516025e-02, -3.856693933254441709e-02, -3.847407601354974754e-02, -3.838117007183929758e-02, -3.828822166534468635e-02, -3.819523095203120749e-02, -3.810219808989788459e-02, -3.800912323697728384e-02, -3.791600655133456343e-02, -3.782284819106773721e-02, -3.772964831430752897e-02, -3.763640707921651202e-02, -3.754312464398953941e-02, -3.744980116685307781e-02, -3.735643680606499928e-02, -3.726303171991495605e-02, -3.716958606672259025e-02, -3.707610000483938656e-02, -3.698257369264634775e-02, -3.688900728855513261e-02, -3.679540095100770902e-02, -3.670175483847498699e-02, -3.660806910945803988e-02, -3.651434392248668198e-02, -3.642057943611964194e-02, -3.632677580894508318e-02, -3.623293319957866798e-02, -3.613905176666499380e-02, -3.604513166887591408e-02, -3.595117306491188436e-02, -3.585717611349974882e-02, -3.576314097339460679e-02, -3.566906780337755073e-02, -3.557495676225693598e-02, -3.548080800886720121e-02, -3.538662170206938878e-02, -3.529239800074998601e-02, -3.519813706382162594e-02, -3.510383905022172041e-02, -3.500950411891371600e-02, -3.491513242888517193e-02, -3.482072413914857195e-02, -3.472627940874127572e-02, -3.463179839672375637e-02, -3.453728126218162664e-02, -3.444272816422305761e-02, -3.434813926198061751e-02, -3.425351471460896802e-02, -3.415885468128634916e-02, -3.406415932121398954e-02, -3.396942879361425360e-02, -3.387466325773273723e-02, -3.377986287283673422e-02, -3.368502779821462567e-02, -3.359015819317703877e-02, -3.349525421705461248e-02, -3.340031602920000287e-02, -3.330534378898578757e-02, -3.321033765580513886e-02, -3.311529778907115751e-02, -3.302022434821703933e-02, -3.292511749269540905e-02, -3.282997738197829252e-02, -3.273480417555701266e-02, -3.263959803294167600e-02, -3.254435911366058976e-02, -3.244908757726108761e-02, -3.235378358330805171e-02, -3.225844729138421102e-02, -3.216307886109031483e-02, -3.206767845204403639e-02, -3.197224622388061821e-02, -3.187678233625138025e-02, -3.178128694882509375e-02, -3.168576022128604536e-02, -3.159020231333524442e-02, -3.149461338468930588e-02, -3.139899359508019350e-02, -3.130334310425569172e-02, -3.120766207197785830e-02, -3.111195065802440859e-02, -3.101620902218740067e-02, -3.092043732427265934e-02, -3.082463572410103561e-02, -3.072880438150619661e-02, -3.063294345633608279e-02, -3.053705310845156867e-02, -3.044113349772669189e-02, -3.034518478404853517e-02, -3.024920712731606759e-02, -3.015320068744144211e-02, -3.005716562434817413e-02, -2.996110209797171742e-02, -2.986501026825963759e-02, -2.976889029516987042e-02, -2.967274233867206804e-02, -2.957656655874613821e-02, -2.948036311538325752e-02, -2.938413216858433083e-02, -2.928787387836039383e-02, -2.919158840473247765e-02, -2.909527590773082831e-02, -2.899893654739523971e-02, -2.890257048377447777e-02, -2.880617787692583281e-02, -2.870975888691560882e-02, -2.861331367381786048e-02, -2.851684239771530224e-02, -2.842034521869768807e-02, -2.832382229686280020e-02, -2.822727379231569286e-02, -2.813069986516805038e-02, -2.803410067553907883e-02, -2.793747638355339319e-02, -2.784082714934266178e-02, -2.774415313304475980e-02, -2.764745449480259312e-02, -2.755073139476527794e-02, -2.745398399308661766e-02, -2.735721244992598070e-02, -2.726041692544704451e-02, -2.716359757981829867e-02, -2.706675457321234754e-02, -2.696988806580568124e-02, -2.687299821777912323e-02, -2.677608518931618234e-02, -2.667914914060434337e-02, -2.658219023183377647e-02, -2.648520862319738572e-02, -2.638820447489077445e-02, -2.629117794711171088e-02, -2.619412920005965290e-02, -2.609705839393651472e-02, -2.599996568894504673e-02, -2.590285124528991095e-02, -2.580571522317600536e-02, -2.570855778280963996e-02, -2.561137908439733643e-02, -2.551417928814601194e-02, -2.541695855426277795e-02, -2.531971704295364958e-02, -2.522245491442534973e-02, -2.512517232888285268e-02, -2.502786944653078577e-02, -2.493054642757247530e-02, -2.483320343220937754e-02, -2.473584062064163730e-02, -2.463845815306716508e-02, -2.454105618968169950e-02, -2.444363489067850545e-02, -2.434619441624812086e-02, -2.424873492657829074e-02, -2.415125658185297494e-02, -2.405375954225340979e-02, -2.395624396795642194e-02, -2.385871001913523679e-02, -2.376115785595909677e-02, -2.366358763859194997e-02, -2.356599952719368521e-02, -2.346839368191936878e-02, -2.337077026291809259e-02, -2.327312943033419887e-02, -2.317547134430584035e-02, -2.307779616496567418e-02, -2.298010405243958859e-02, -2.288239516684749744e-02, -2.278466966830231324e-02, -2.268692771690987431e-02, -2.258916947276935414e-02, -2.249139509597177997e-02, -2.239360474660108749e-02, -2.229579858473291695e-02, -2.219797677043473111e-02, -2.210013946376563829e-02, -2.200228682477610095e-02, -2.190441901350719325e-02, -2.180653618999164878e-02, -2.170863851425183441e-02, -2.161072614630121097e-02, -2.151279924614254296e-02, -2.141485797376923433e-02, -2.131690248916365618e-02, -2.121893295229761514e-02, -2.112094952313251645e-02, -2.102295236161750083e-02, -2.092494162769137703e-02, -2.082691748128066497e-02, -2.072888008230028625e-02, -2.063082959065294306e-02, -2.053276616622861164e-02, -2.043468996890522582e-02, -2.033660115854710182e-02, -2.023849989500606933e-02, -2.014038633812019127e-02, -2.004226064771378463e-02, -1.994412298359772573e-02, -1.984597350556828801e-02, -1.974781237340780468e-02, -1.964963974688354806e-02, -1.955145578574819451e-02, -1.945326064973931096e-02, -1.935505449857908775e-02, -1.925683749197384248e-02, -1.915860978961423516e-02, -1.906037155117492124e-02, -1.896212293631423587e-02, -1.886386410467360761e-02, -1.876559521587794696e-02, -1.866731642953482415e-02, -1.856902790523483338e-02, -1.847072980255067345e-02, -1.837242228103706104e-02, -1.827410550023132740e-02, -1.817577961965165939e-02, -1.807744479879850458e-02, -1.797910119715277755e-02, -1.788074897417687298e-02, -1.778238828931370460e-02, -1.768401930198643460e-02, -1.758564217159913623e-02, -1.748725705753469140e-02, -1.738886411915679595e-02, -1.729046351580831170e-02, -1.719205540681094380e-02, -1.709363995146613927e-02, -1.699521730905323436e-02, -1.689678763883079374e-02, -1.679835110003518803e-02, -1.669990785188122523e-02, -1.660145805356108908e-02, -1.650300186424452989e-02, -1.640453944307898940e-02, -1.630607094918840733e-02, -1.620759654167392913e-02, -1.610911637961325374e-02, -1.601063062205995008e-02, -1.591213942804434872e-02, -1.581364295657205696e-02, -1.571514136662427799e-02, -1.561663481715797226e-02, -1.551812346710471947e-02, -1.541960747537144370e-02, -1.532108700083916093e-02, -1.522256220236379264e-02, -1.512403323877482483e-02, -1.502550026887606964e-02, -1.492696345144503729e-02, -1.482842294523198552e-02, -1.472987890896108529e-02, -1.463133150132888381e-02, -1.453278088100490133e-02, -1.443422720663127372e-02, -1.433567063682167006e-02, -1.423711133016247916e-02, -1.413854944521100547e-02, -1.403998514049682560e-02, -1.394141857452013862e-02, -1.384284990575220496e-02, -1.374427929263544526e-02, -1.364570689358212373e-02, -1.354713286697546183e-02, -1.344855737116806317e-02, -1.334998056448271318e-02, -1.325140260521171821e-02, -1.315282365161645622e-02, -1.305424386192728138e-02, -1.295566339434386580e-02, -1.285708240703384471e-02, -1.275850105813370293e-02, -1.265991950574757614e-02, -1.256133790794779909e-02, -1.246275642277395145e-02, -1.236417520823349797e-02, -1.226559442230052040e-02, -1.216701422291611122e-02, -1.206843476798831472e-02, -1.196985621539113295e-02, -1.187127872296508957e-02, -1.177270244851662435e-02, -1.167412754981747222e-02, -1.157555418460541954e-02, -1.147698251058285393e-02, -1.137841268541767495e-02, -1.127984486674212666e-02, -1.118127921215297804e-02, -1.108271587921163918e-02, -1.098415502544290885e-02, -1.088559680833605173e-02, -1.078704138534325972e-02, -1.068848891388054015e-02, -1.058993955132643723e-02, -1.049139345502290641e-02, -1.039285078227401328e-02, -1.029431169034624588e-02, -1.019577633646838802e-02, -1.009724487783113939e-02, -9.998717471586456365e-03, -9.900194274848174783e-03, -9.801675444690809494e-03, -9.703161138150234385e-03, -9.604651512222738691e-03, -9.506146723864954129e-03, -9.407646929994207055e-03, -9.309152287487135885e-03, -9.210662953180811727e-03, -9.112179083871135496e-03, -9.013700836313774667e-03, -8.915228367223335809e-03, -8.816761833272837232e-03, -8.718301391094550323e-03, -8.619847197278094827e-03, -8.521399408372017439e-03, -8.422958180882487295e-03, -8.324523671273001066e-03, -8.226096035964863482e-03, -8.127675431336038939e-03, -8.029262013721871413e-03, -7.930855939413882297e-03, -7.832457364660587451e-03, -7.734066445666221319e-03, -7.635683338591013614e-03, -7.537308199551327227e-03, -7.438941184618463875e-03, -7.340582449819403957e-03, -7.242232151136130877e-03, -7.143890444505019560e-03, -7.045557485817531204e-03, -6.947233430919066630e-03, -6.848918435609033933e-03, -6.750612655641196301e-03, -6.652316246722292901e-03, -6.554029364513060639e-03, -6.455752164626803874e-03, -6.357484802630326837e-03, -6.259227434042489470e-03, -6.160980214335213569e-03, -6.062743298932195615e-03, -5.964516843209129691e-03, -5.866301002493850593e-03, -5.768095932065164626e-03, -5.669901787153579925e-03, -5.571718722940633382e-03, -5.473546894558285227e-03, -5.375386457089601638e-03, -5.277237565567625445e-03, -5.179100374975520102e-03, -5.080975040246675511e-03, -4.982861716263711424e-03, -4.884760557859074183e-03, -4.786671719813985482e-03, -4.688595356859079875e-03, -4.590531623673228638e-03, -4.492480674884187682e-03, -4.394442665068121374e-03, -4.296417748748389102e-03, -4.198406080397143816e-03, -4.100407814433410826e-03, -4.002423105223967305e-03, -3.904452107082685697e-03, -3.806494974269943911e-03, -3.708551860993306200e-03, -3.610622921406166606e-03, -3.512708309608717373e-03, -3.414808179646676087e-03, -3.316922685511484309e-03, -3.219051981140494054e-03, -3.121196220415794250e-03, -3.023355557165043842e-03, -2.925530145160187227e-03, -2.827720138118152045e-03, -2.729925689700207769e-03, -2.632146953511496461e-03, -2.534384083101046646e-03, -2.436637231961954163e-03, -2.338906553530221630e-03, -2.241192201185595884e-03, -2.143494328250273879e-03, -2.045813087989732312e-03, -1.948148633611450874e-03, -1.850501118265732549e-03, -1.752870695044552634e-03, -1.655257516981720493e-03, -1.557661737053077540e-03, -1.460083508175298974e-03, -1.362522983206771766e-03, -1.264980314946268468e-03, -1.167455656133665380e-03, -1.069949159449340827e-03, -9.724609775134917785e-04, -8.749912628869035286e-04, -7.775401680697426520e-04, -6.801078455017551963e-04, -5.826944475624341912e-04, -4.853001265698564620e-04, -3.879250347815312895e-04, -2.905693243930974152e-04, -1.932331475391789921e-04, -9.591665629207390324e-05, 1.379997337382631567e-06, 9.865666140099728300e-05, 1.959131840130337663e-04, 2.931494133501669555e-04, 3.903651976519814182e-04, 4.875603852215975144e-04, 5.847348244249524077e-04, 6.818883636921053634e-04, 7.790208515163799278e-04, 8.761321364556734275e-04, 9.732220671315909089e-04, 1.070290492230756589e-03, 1.167337260504095788e-03, 1.264362220767449672e-03, 1.361365221901942148e-03, 1.458346112854487812e-03, 1.555304742636775617e-03, 1.652240960326975842e-03, 1.749154615068775585e-03, 1.846045556072666146e-03, 1.942913632615203817e-03, 2.039758694039654763e-03, 2.136580589756640995e-03, 2.233379169243373836e-03, 2.330154282044987271e-03, 2.426905777773677528e-03, 2.523633506109975062e-03, 2.620337316802068880e-03, 2.717017059666399382e-03, 2.813672584588304548e-03, 2.910303741521263164e-03, 3.006910380487950833e-03, 3.103492351580609040e-03, 3.200049504960038142e-03, 3.296581690857263141e-03, 3.393088759572621647e-03, 3.489570561476972119e-03, 3.586026947011044640e-03, 3.682457766686039833e-03, 3.778862871084209991e-03, 3.875242110858212897e-03, 3.971595336732353446e-03, 4.067922399501745778e-03, 4.164223150033602612e-03, 4.260497439266513163e-03, 4.356745118211062875e-03, 4.452966037950474402e-03, 4.549160049639880757e-03, 4.645327004507565638e-03, 4.741466753854053570e-03, 4.837579149053757022e-03, 4.933664041553996286e-03, 5.029721282875329949e-03, 5.125750724612640821e-03, 5.221752218434350112e-03, 5.317725616083060144e-03, 5.413670769376172781e-03, 5.509587530205155639e-03, 5.605475750536872623e-03, 5.701335282412688804e-03, 5.797165977949765396e-03, 5.892967689340321627e-03, 5.988740268852319956e-03, 6.084483568830010777e-03, 6.180197441693222049e-03, 6.275881739938703706e-03, 6.371536316139210857e-03, 6.467161022944512526e-03, 6.562755713081824469e-03, 6.658320239354870683e-03, 6.753854454644912103e-03, 6.849358211911286097e-03, 6.944831364190600688e-03, 7.040273764598120598e-03, 7.135685266326821825e-03, 7.231065722648681408e-03, 7.326414986913907211e-03, 7.421732912552131411e-03, 7.517019353071670643e-03, 7.612274162060297944e-03, 7.707497193185708535e-03, 7.802688300194749599e-03, 7.897847336914915611e-03, 7.992974157253279754e-03, 8.088068615197957154e-03, 8.183130564816877561e-03, 8.278159860259877434e-03, 8.373156355756829899e-03, 8.468119905619592852e-03, 8.563050364240910872e-03, 8.657947586095794332e-03, 8.752811425740577439e-03, 8.847641737814245302e-03, 8.942438377037618610e-03, 9.037201198214496814e-03, 9.131930056231106485e-03, 9.226624806056562753e-03, 9.321285302743551049e-03, 9.415911401427647098e-03, 9.510502957328480916e-03, 9.605059825748968327e-03, 9.699581862076587721e-03, 9.794068921782571671e-03, 9.888520860422488068e-03, 9.982937533637211563e-03, 1.007731879715196253e-02, 1.017166450677689342e-02, 1.026597451840786761e-02, 1.036024868802561637e-02, 1.045448687169721683e-02, 1.054868892557512920e-02, 1.064285470589794100e-02, 1.073698406899092905e-02, 1.083107687126539688e-02, 1.092513296921980744e-02, 1.101915221943905974e-02, 1.111313447859571708e-02, 1.120707960344914135e-02, 1.130098745084680452e-02, 1.139485787772342475e-02, 1.148869074110179037e-02, 1.158248589809303050e-02, 1.167624320589678161e-02, 1.176996252180077286e-02, 1.186364370318199711e-02, 1.195728660750594412e-02, 1.205089109232783569e-02, 1.214445701529191964e-02, 1.223798423413196071e-02, 1.233147260667199693e-02, 1.242492199082559194e-02, 1.251833224459692785e-02, 1.261170322608018944e-02, 1.270503479346067610e-02, 1.279832680501400734e-02, 1.289157911910738565e-02, 1.298479159419874823e-02, 1.307796408883758928e-02, 1.317109646166539014e-02, 1.326418857141486128e-02, 1.335724027691150874e-02, 1.345025143707273031e-02, 1.354322191090808619e-02, 1.363615155752032071e-02, 1.372904023610473263e-02, 1.382188780594954466e-02, 1.391469412643674478e-02, 1.400745905704123967e-02, 1.410018245733211766e-02, 1.419286418697181078e-02, 1.428550410571730912e-02, 1.437810207341962652e-02, 1.447065795002404169e-02, 1.456317159557105924e-02, 1.465564287019549029e-02, 1.474807163412767373e-02, 1.484045774769287944e-02, 1.493280107131183393e-02, 1.502510146550164669e-02, 1.511735879087431657e-02, 1.520957290813856368e-02, 1.530174367809905220e-02, 1.539387096165699409e-02, 1.548595461981048388e-02, 1.557799451365411703e-02, 1.566999050438000821e-02, 1.576194245327696905e-02, 1.585385022173191327e-02, 1.594571367122891298e-02, 1.603753266335005909e-02, 1.612930705977561399e-02, 1.622103672228392135e-02, 1.631272151275193344e-02, 1.640436129315510014e-02, 1.649595592556792056e-02, 1.658750527216349205e-02, 1.667900919521477995e-02, 1.677046755709386827e-02, 1.686188022027246616e-02, 1.695324704732185939e-02, 1.704456790091387827e-02, 1.713584264382008587e-02, 1.722707113891286043e-02, 1.731825324916482986e-02, 1.740938883764977033e-02, 1.750047776754220727e-02, 1.759151990211774153e-02, 1.768251510475379179e-02, 1.777346323892899788e-02, 1.786436416822392154e-02, 1.795521775632093545e-02, 1.804602386700487546e-02, 1.813678236416262426e-02, 1.822749311178361101e-02, 1.831815597396030046e-02, 1.840877081488804384e-02, 1.849933749886488454e-02, 1.858985589029278629e-02, 1.868032585367654722e-02, 1.877074725362541316e-02, 1.886111995485191539e-02, 1.895144382217301207e-02, 1.904171872050983844e-02, 1.913194451488785600e-02, 1.922212107043745274e-02, 1.931224825239358581e-02, 1.940232592609658982e-02, 1.949235395699158019e-02, 1.958233221062966392e-02, 1.967226055266696819e-02, 1.976213884886578870e-02, 1.985196696509400685e-02, 1.994174476732666831e-02, 2.003147212164389096e-02, 2.012114889423335939e-02, 2.021077495138878799e-02, 2.030035015951139887e-02, 2.038987438510913089e-02, 2.047934749479726757e-02, 2.056876935529896103e-02, 2.065813983344452764e-02, 2.074745879617275260e-02, 2.083672611052983167e-02, 2.092594164367068271e-02, 2.101510526285842173e-02, 2.110421683546495272e-02, 2.119327622897100236e-02, 2.128228331096577303e-02, 2.137123794914835492e-02, 2.146014001132700091e-02, 2.154898936541927226e-02, 2.163778587945279844e-02, 2.172652942156472894e-02, 2.181521986000270127e-02, 2.190385706312452524e-02, 2.199244089939827659e-02, 2.208097123740309156e-02, 2.216944794582851458e-02, 2.225787089347551831e-02, 2.234623994925591037e-02, 2.243455498219346089e-02, 2.252281586142274722e-02, 2.261102245619083656e-02, 2.269917463585632844e-02, 2.278727226988992716e-02, 2.287531522787492749e-02, 2.296330337950679146e-02, 2.305123659459403646e-02, 2.313911474305791957e-02, 2.322693769493251389e-02, 2.331470532036525323e-02, 2.340241748961711596e-02, 2.349007407306226425e-02, 2.357767494118920629e-02, 2.366521996459987343e-02, 2.375270901401075122e-02, 2.384014196025215776e-02, 2.392751867426945456e-02, 2.401483902712227975e-02, 2.410210288998502343e-02, 2.418931013414762562e-02, 2.427646063101468812e-02, 2.436355425210665407e-02, 2.445059086905898918e-02, 2.453757035362322605e-02, 2.462449257766731459e-02, 2.471135741317429316e-02, 2.479816473224431134e-02, 2.488491440709343638e-02, 2.497160631005455184e-02, 2.505824031357762466e-02, 2.514481629022904952e-02, 2.523133411269302268e-02, 2.531779365377044913e-02, 2.540419478638031303e-02, 2.549053738355909829e-02, 2.557682131846079898e-02, 2.566304646435805040e-02, 2.574921269464124085e-02, 2.583531988281951783e-02, 2.592136790252025716e-02, 2.600735662749000671e-02, 2.609328593159345594e-02, 2.617915568881551761e-02, 2.626496577325963810e-02, 2.635071605914872730e-02, 2.643640642082528344e-02, 2.652203673275211476e-02, 2.660760686951138890e-02, 2.669311670580571533e-02, 2.677856611645802049e-02, 2.686395497641159633e-02, 2.694928316073052707e-02, 2.703455054459954349e-02, 2.711975700332455719e-02, 2.720490241233253920e-02, 2.728998664717198833e-02, 2.737500958351267097e-02, 2.745997109714630804e-02, 2.754487106398621418e-02, 2.762970936006772793e-02, 2.771448586154871482e-02, 2.779920044470947371e-02, 2.788385298595211920e-02, 2.796844336180233023e-02, 2.805297144890792765e-02, 2.813743712404055686e-02, 2.822184026409434859e-02, 2.830618074608749063e-02, 2.839045844716111058e-02, 2.847467324458041738e-02, 2.855882501573458326e-02, 2.864291363813647323e-02, 2.872693898942369969e-02, 2.881090094735785229e-02, 2.889479938982526114e-02, 2.897863419483699340e-02, 2.906240524052904062e-02, 2.914611240516215562e-02, 2.922975556712292117e-02, 2.931333460492287213e-02, 2.939684939719934553e-02, 2.948029982271508850e-02, 2.956368576035929216e-02, 2.964700708914647098e-02, 2.973026368821809345e-02, 2.981345543684163490e-02, 2.989658221441105976e-02, 2.997964390044747379e-02, 3.006264037459849617e-02, 3.014557151663892556e-02, 3.022843720647066731e-02, 3.031123732412330934e-02, 3.039397174975372318e-02, 3.047664036364639353e-02, 3.055924304621411222e-02, 3.064177967799707261e-02, 3.072425013966439619e-02, 3.080665431201303969e-02, 3.088899207596866939e-02, 3.097126331258559517e-02, 3.105346790304710364e-02, 3.113560572866492723e-02, 3.121767667088090961e-02, 3.129968061126545825e-02, 3.138161743151890448e-02, 3.146348701347075061e-02, 3.154528923908093280e-02, 3.162702399043883922e-02, 3.170869114976439251e-02, 3.179029059940739060e-02, 3.187182222184841568e-02, 3.195328589969843175e-02, 3.203468151569933281e-02, 3.211600895272371387e-02, 3.219726809377596033e-02, 3.227845882199061045e-02, 3.235958102063436759e-02, 3.244063457310530918e-02, 3.252161936293303246e-02, 3.260253527377945243e-02, 3.268338218943788592e-02, 3.276415999383451572e-02, 3.284486857102731500e-02, 3.292550780520699799e-02, 3.300607758069724895e-02, 3.308657778195365357e-02, 3.316700829356582225e-02, 3.324736900025565545e-02, 3.332765978687903669e-02, 3.340788053842471544e-02, 3.348803114001533410e-02, 3.356811147690699076e-02, 3.364812143449009280e-02, 3.372806089828897513e-02, 3.380792975396191419e-02, 3.388772788730166907e-02, 3.396745518423567589e-02, 3.404711153082581876e-02, 3.412669681326899185e-02, 3.420621091789686347e-02, 3.428565373117641729e-02, 3.436502513970969563e-02, 3.444432503023430597e-02, 3.452355328962362913e-02, 3.460270980488622250e-02, 3.468179446316706910e-02, 3.476080715174675873e-02, 3.483974775804272311e-02, 3.491861616960770937e-02, 3.499741227413163264e-02, 3.507613595944136797e-02, 3.515478711349991764e-02, 3.523336562440704256e-02, 3.531187138040044193e-02, 3.539030426985434463e-02, 3.546866418128054310e-02, 3.554695100332844887e-02, 3.562516462478515500e-02, 3.570330493457542220e-02, 3.578137182176208131e-02, 3.585936517554615816e-02, 3.593728488526663073e-02, 3.601513084040137980e-02, 3.609290293056631460e-02, 3.617060104551667737e-02, 3.624822507514598169e-02, 3.632577490948683124e-02, 3.640325043871110722e-02, 3.648065155313044705e-02, 3.655797814319484973e-02, 3.663523009949495174e-02, 3.671240731276024377e-02, 3.678950967386106219e-02, 3.686653707380659756e-02, 3.694348940374700407e-02, 3.702036655497272649e-02, 3.709716841891431277e-02, 3.717389488714303164e-02, 3.725054585137079627e-02, 3.732712120345083040e-02, 3.740362083537662058e-02, 3.748004463928367863e-02, 3.755639250744800817e-02, 3.763266433228745766e-02, 3.770886000636157476e-02, 3.778497942237155766e-02, 3.786102247316030373e-02, 3.793698905171283275e-02, 3.801287905115619675e-02, 3.808869236476006281e-02, 3.816442888593626209e-02, 3.824008850823916450e-02, 3.831567112536599790e-02, 3.839117663115650114e-02, 3.846660491959419392e-02, 3.854195588480487794e-02, 3.861722942105801082e-02, 3.869242542276635916e-02, 3.876754378448644262e-02, 3.884258440091822862e-02, 3.891754716690547927e-02, 3.899243197743620243e-02, 3.906723872764186756e-02, 3.914196731279920294e-02, 3.921661762832830828e-02, 3.929118956979441718e-02, 3.936568303290725879e-02, 3.944009791352103000e-02, 3.951443410763511022e-02, 3.958869151139395026e-02, 3.966287002108724591e-02, 3.973696953314979907e-02, 3.981098994416190640e-02, 3.988493115084960211e-02, 3.995879305008459559e-02, 4.003257553888437542e-02, 4.010627851441234820e-02, 4.017990187397817159e-02, 4.025344551503795554e-02, 4.032690933519365167e-02, 4.040029323219424678e-02, 4.047359710393544363e-02, 4.054682084845910583e-02, 4.061996436395471505e-02, 4.069302754875832318e-02, 4.076601030135330872e-02, 4.083891252037064740e-02, 4.091173410458816967e-02, 4.098447495293180975e-02, 4.105713496447492561e-02, 4.112971403843895118e-02, 4.120221207419316745e-02, 4.127462897125473706e-02, 4.134696462928939831e-02, 4.141921894811103483e-02, 4.149139182768196016e-02, 4.156348316811341731e-02, 4.163549286966513469e-02, 4.170742083274545792e-02, 4.177926695791244621e-02, 4.185103114587263029e-02, 4.192271329748232384e-02, 4.199431331374659654e-02, 4.206583109582051616e-02, 4.213726654500862118e-02, 4.220861956276522609e-02, 4.227989005069435202e-02, 4.235107791055039983e-02, 4.242218304423777536e-02, 4.249320535381084785e-02, 4.256414474147492133e-02, 4.263500110958522160e-02, 4.270577436064805499e-02, 4.277646439732015610e-02, 4.284707112240968702e-02, 4.291759443887492587e-02, 4.298803424982615418e-02, 4.305839045852485891e-02, 4.312866296838312880e-02, 4.319885168296528494e-02, 4.326895650598703430e-02, 4.333897734131568480e-02, 4.340891409297079062e-02, 4.347876666512343058e-02, 4.354853496209741548e-02, 4.361821888836802524e-02, 4.368781834856354934e-02, 4.375733324746446107e-02, 4.382676349000372978e-02, 4.389610898126753563e-02, 4.396536962649402747e-02, 4.403454533107518248e-02, 4.410363600055561967e-02, 4.417264154063314102e-02, 4.424156185715910627e-02, 4.431039685613829410e-02, 4.437914644372849271e-02, 4.444781052624205420e-02, 4.451638901014417365e-02, 4.458488180205488066e-02, 4.465328880874730455e-02, 4.472160993714968669e-02, 4.478984509434358330e-02, 4.485799418756564183e-02, 4.492605712420653236e-02, 4.499403381181173167e-02, 4.506192415808161350e-02, 4.512972807087102523e-02, 4.519744545819012749e-02, 4.526507622820390153e-02, 4.533262028923250309e-02, 4.540007754975161625e-02, 4.546744791839178734e-02, 4.553473130393993068e-02, 4.560192761533816280e-02, 4.566903676168430903e-02, 4.573605865223188266e-02, 4.580299319639080657e-02, 4.586984030372686511e-02, 4.593659988396223137e-02, 4.600327184697471095e-02, 4.606985610279973331e-02, 4.613635256162808285e-02, 4.620276113380824418e-02, 4.626908172984445233e-02, 4.633531426039864953e-02, 4.640145863628913903e-02, 4.646751476849174389e-02, 4.653348256813930051e-02, 4.659936194652222058e-02, 4.666515281508778340e-02, 4.673085508544160688e-02, 4.679646866934607241e-02, 4.686199347872205268e-02, 4.692742942564773201e-02, 4.699277642235975827e-02, 4.705803438125245181e-02, 4.712320321487829117e-02, 4.718828283594855844e-02, 4.725327315733245104e-02, 4.731817409205778951e-02, 4.738298555331108691e-02, 4.744770745443751409e-02, 4.751233970894098990e-02, 4.757688223048472942e-02, 4.764133493289052917e-02, 4.770569773013938475e-02, 4.776997053637194179e-02, 4.783415326588758704e-02, 4.789824583314568340e-02, 4.796224815276535491e-02, 4.802616013952442503e-02, 4.808998170836128322e-02, 4.815371277437416331e-02, 4.821735325282079654e-02, 4.828090305911943159e-02, 4.834436210884815455e-02, 4.840773031774607549e-02, 4.847100760171145495e-02, 4.853419387680425745e-02, 4.859728905924426412e-02, 4.866029306541209964e-02, 4.872320581184962085e-02, 4.878602721525888974e-02, 4.884875719250363763e-02, 4.891139566060805077e-02, 4.897394253675760312e-02, 4.903639773830005544e-02, 4.909876118274311002e-02, 4.916103278775683927e-02, 4.922321247117274895e-02, 4.928530015098379902e-02, 4.934729574534520158e-02, 4.940919917257332455e-02, 4.947101035114745415e-02, 4.953272919970820587e-02, 4.959435563705869021e-02, 4.965588958216413801e-02, 4.971733095415235837e-02, 4.977867967231356522e-02, 4.983993565610013443e-02, 4.990109882512795692e-02, 4.996216909917486348e-02, 5.002314639818201264e-02, 5.008403064225328688e-02, 5.014482175165566741e-02, 5.020551964681938678e-02, 5.026612424833758197e-02, 5.032663547696717560e-02, 5.038705325362821674e-02, 5.044737749940399196e-02, 5.050760813554225348e-02, 5.056774508345363711e-02, 5.062778826471261984e-02, 5.068773760105826226e-02, 5.074759301439283471e-02, 5.080735442678292052e-02, 5.086702176045954787e-02, 5.092659493781771796e-02, 5.098607388141648128e-02, 5.104545851398001322e-02, 5.110474875839636499e-02, 5.116394453771901107e-02, 5.122304577516503810e-02, 5.128205239411721267e-02, 5.134096431812253114e-02, 5.139978147089378085e-02, 5.145850377630804134e-02, 5.151713115840775986e-02, 5.157566354140083464e-02, 5.163410084966017083e-02, 5.169244300772451312e-02, 5.175068994029763392e-02, 5.180884157224908970e-02, 5.186689782861417242e-02, 5.192485863459406908e-02, 5.198272391555551486e-02, 5.204049359703108446e-02, 5.209816760472008035e-02, 5.215574586448687433e-02, 5.221322830236274637e-02, 5.227061484454550294e-02, 5.232790541739835294e-02, 5.238509994745168402e-02, 5.244219836140234098e-02, 5.249920058611356327e-02, 5.255610654861525566e-02, 5.261291617610449473e-02, 5.266962939594482113e-02, 5.272624613566664203e-02, 5.278276632296800830e-02, 5.283918988571352504e-02, 5.289551675193508024e-02, 5.295174684983208063e-02, 5.300788010777105624e-02, 5.306391645428597259e-02, 5.311985581807824458e-02, 5.317569812801723611e-02, 5.323144331313999639e-02, 5.328709130265070482e-02, 5.334264202592216980e-02, 5.339809541249441321e-02, 5.345345139207607899e-02, 5.350870989454341309e-02, 5.356387084994088804e-02, 5.361893418848173720e-02, 5.367389984054671964e-02, 5.372876773668572303e-02, 5.378353780761641750e-02, 5.383820998422571974e-02, 5.389278419756853705e-02, 5.394726037886869718e-02, 5.400163845951916342e-02, 5.405591837108115333e-02, 5.411010004528542250e-02, 5.416418341403101550e-02, 5.421816840938671611e-02, 5.427205496359019388e-02, 5.432584300904848978e-02, 5.437953247833755138e-02, 5.443312330420335687e-02, 5.448661541956043713e-02, 5.454000875749392963e-02, 5.459330325125762162e-02, 5.464649883427561555e-02, 5.469959544014151021e-02, 5.475259300261873380e-02, 5.480549145564053704e-02, 5.485829073331015271e-02, 5.491099076990126060e-02, 5.496359149985673848e-02, 5.501609285779077846e-02, 5.506849477848690944e-02, 5.512079719689932933e-02, 5.517300004815305081e-02, 5.522510326754258292e-02, 5.527710679053360332e-02, 5.532901055276252117e-02, 5.538081449003617873e-02, 5.543251853833216364e-02, 5.548412263379872561e-02, 5.553562671275531770e-02, 5.558703071169208976e-02, 5.563833456727025617e-02, 5.568953821632222773e-02, 5.574064159585120914e-02, 5.579164464303242726e-02, 5.584254729521166694e-02, 5.589334948990588858e-02, 5.594405116480426210e-02, 5.599465225776712601e-02, 5.604515270682555034e-02, 5.609555245018368885e-02, 5.614585142621629499e-02, 5.619604957347033164e-02, 5.624614683066404136e-02, 5.629614313668844516e-02, 5.634603843060554534e-02, 5.639583265165002551e-02, 5.644552573922831384e-02, 5.649511763291903410e-02, 5.654460827247313054e-02, 5.659399759781354178e-02, 5.664328554903555468e-02, 5.669247206640703335e-02, 5.674155709036855788e-02, 5.679054056153227253e-02, 5.683942242068356493e-02, 5.688820260878069135e-02, 5.693688106695372203e-02, 5.698545773650633833e-02, 5.703393255891472946e-02, 5.708230547582748837e-02, 5.713057642906693712e-02, 5.717874536062783619e-02, 5.722681221267806456e-02, 5.727477692755898048e-02, 5.732263944778416553e-02, 5.737039971604179778e-02, 5.741805767519200104e-02, 5.746561326826916949e-02, 5.751306643848066308e-02, 5.756041712920724474e-02, 5.760766528400321912e-02, 5.765481084659693223e-02, 5.770185376088962648e-02, 5.774879397095648154e-02, 5.779563142104661433e-02, 5.784236605558303046e-02, 5.788899781916190257e-02, 5.793552665655406914e-02, 5.798195251270366751e-02, 5.802827533272946620e-02, 5.807449506192371297e-02, 5.812061164575316879e-02, 5.816662502985853883e-02, 5.821253516005472917e-02, 5.825834198233137418e-02, 5.830404544285188589e-02, 5.834964548795427280e-02, 5.839514206415075126e-02, 5.844053511812848101e-02, 5.848582459674872558e-02, 5.853101044704765721e-02, 5.857609261623575314e-02, 5.862107105169820503e-02, 5.866594570099548100e-02, 5.871071651186222234e-02, 5.875538343220818027e-02, 5.879994641011788981e-02, 5.884440539385053792e-02, 5.888876033184119868e-02, 5.893301117269909850e-02, 5.897715786520873332e-02, 5.902120035832996575e-02, 5.906513860119776832e-02, 5.910897254312202226e-02, 5.915270213358863466e-02, 5.919632732225748456e-02, 5.923984805896560096e-02, 5.928326429372395012e-02, 5.932657597671964905e-02, 5.936978305831498715e-02, 5.941288548904798822e-02, 5.945588321963245909e-02, 5.949877620095773284e-02, 5.954156438408847452e-02, 5.958424772026549993e-02, 5.962682616090504012e-02, 5.966929965759953242e-02, 5.971166816211699591e-02, 5.975393162640171146e-02, 5.979609000257315315e-02, 5.983814324292757725e-02, 5.988009129993713403e-02, 5.992193412624966659e-02, 5.996367167468918957e-02, 6.000530389825620148e-02, 6.004683075012749033e-02, 6.008825218365557858e-02, 6.012956815236951413e-02, 6.017077860997464139e-02, 6.021188351035305919e-02, 6.025288280756233017e-02, 6.029377645583769429e-02, 6.033456440958968880e-02, 6.037524662340636172e-02, 6.041582305205141223e-02, 6.045629365046591847e-02, 6.049665837376710237e-02, 6.053691717724921095e-02, 6.057707001638295424e-02, 6.061711684681578283e-02, 6.065705762437215848e-02, 6.069689230505288802e-02, 6.073662084503631681e-02, 6.077624320067723240e-02, 6.081575932850757926e-02, 6.085516918523595220e-02, 6.089447272774822090e-02, 6.093366991310749520e-02, 6.097276069855338265e-02, 6.101174504150295996e-02, 6.105062289955041910e-02, 6.108939423046712974e-02, 6.112805899220199318e-02, 6.116661714288013779e-02, 6.120506864080526438e-02, 6.124341344445741880e-02, 6.128165151249445608e-02, 6.131978280375144363e-02, 6.135780727724095968e-02, 6.139572489215308626e-02, 6.143353560785497908e-02, 6.147123938389214420e-02, 6.150883617998630787e-02, 6.154632595603786588e-02, 6.158370867212459299e-02, 6.162098428850183718e-02, 6.165815276560212416e-02, 6.169521406403614960e-02, 6.173216814459264734e-02, 6.176901496823707094e-02, 6.180575449611366845e-02, 6.184238668954403217e-02, 6.187891151002749418e-02, 6.191532891924152182e-02, 6.195163887904114874e-02, 6.198784135145966184e-02, 6.202393629870802533e-02, 6.205992368317531788e-02, 6.209580346742846896e-02, 6.213157561421245312e-02, 6.216724008645053284e-02, 6.220279684724362712e-02, 6.223824585987130370e-02, 6.227358708779064805e-02, 6.230882049463722094e-02, 6.234394604422476699e-02, 6.237896370054529099e-02, 6.241387342776841957e-02, 6.244867519024285135e-02, 6.248336895249526068e-02, 6.251795467923002003e-02, 6.255243233533086533e-02, 6.258680188585898085e-02, 6.262106329605429678e-02, 6.265521653133532265e-02, 6.268926155729838412e-02, 6.272319833971871927e-02, 6.275702684454968761e-02, 6.279074703792360268e-02, 6.282435888615059416e-02, 6.285786235571974578e-02, 6.289125741329855412e-02, 6.292454402573292860e-02, 6.295772216004782984e-02, 6.299079178344590968e-02, 6.302375286330956505e-02, 6.305660536719862042e-02, 6.308934926285225675e-02, 6.312198451818823441e-02, 6.315451110130285151e-02, 6.318692898047148510e-02, 6.321923812414736998e-02, 6.325143850096338893e-02, 6.328353007973064326e-02, 6.331551282943882752e-02, 6.334738671925721487e-02, 6.337915171853307494e-02, 6.341080779679271473e-02, 6.344235492374147856e-02, 6.347379306926304032e-02, 6.350512220342070802e-02, 6.353634229645603593e-02, 6.356745331878953242e-02, 6.359845524102084036e-02, 6.362934803392794603e-02, 6.366013166846878901e-02, 6.369080611577909723e-02, 6.372137134717430207e-02, 6.375182733414884451e-02, 6.378217404837525917e-02, 6.381241146170602008e-02, 6.384253954617211124e-02, 6.387255827398378993e-02, 6.390246761752980953e-02, 6.393226754937884893e-02, 6.396195804227750026e-02, 6.399153906915246159e-02, 6.402101060310881608e-02, 6.405037261743101729e-02, 6.407962508558223691e-02, 6.410876798120546116e-02, 6.413780127812156173e-02, 6.416672495033198809e-02, 6.419553897201626946e-02, 6.422424331753322224e-02, 6.425283796142099157e-02, 6.428132287839662118e-02, 6.430969804335694151e-02, 6.433796343137687668e-02, 6.436611901771115141e-02, 6.439416477779395798e-02, 6.442210068723791538e-02, 6.444992672183504079e-02, 6.447764285755680502e-02, 6.450524907055386892e-02, 6.453274533715565309e-02, 6.456013163387139264e-02, 6.458740793738859676e-02, 6.461457422457483890e-02, 6.464163047247674376e-02, 6.466857665831965418e-02, 6.469541275950865811e-02, 6.472213875362778368e-02, 6.474875461844036006e-02, 6.477526033188911458e-02, 6.480165587209546496e-02, 6.482794121736043524e-02, 6.485411634616440602e-02, 6.488018123716668417e-02, 6.490613586920578049e-02, 6.493198022130006186e-02, 6.495771427264596110e-02, 6.498333800262034998e-02, 6.500885139077866581e-02, 6.503425441685553587e-02, 6.505954706076490235e-02, 6.508472930260013334e-02, 6.510980112263375919e-02, 6.513476250131751411e-02, 6.515961341928186434e-02, 6.518435385733731269e-02, 6.520898379647305232e-02, 6.523350321785775785e-02, 6.525791210283908572e-02, 6.528221043294385462e-02, 6.530639818987830914e-02, 6.533047535552805041e-02, 6.535444191195734220e-02, 6.537829784140994360e-02, 6.540204312630878980e-02, 6.542567774925628354e-02, 6.544920169303343471e-02, 6.547261494060066522e-02, 6.549591747509776740e-02, 6.551910927984357091e-02, 6.554219033833558195e-02, 6.556516063425142649e-02, 6.558802015144699071e-02, 6.561076887395775326e-02, 6.563340678599807743e-02, 6.565593387196162756e-02, 6.567835011642128573e-02, 6.570065550412847177e-02, 6.572285002001426735e-02, 6.574493364918883309e-02, 6.576690637694106167e-02, 6.578876818873878596e-02, 6.581051907022968106e-02, 6.583215900723954350e-02, 6.585368798577398430e-02, 6.587510599201716610e-02, 6.589641301233217785e-02, 6.591760903326158993e-02, 6.593869404152659375e-02, 6.595966802402745965e-02, 6.598053096784313454e-02, 6.600128286023232427e-02, 6.602192368863173122e-02, 6.604245344065777512e-02, 6.606287210410509425e-02, 6.608317966694776668e-02, 6.610337611733853314e-02, 6.612346144360890798e-02, 6.614343563427002581e-02, 6.616329867801035158e-02, 6.618305056369863659e-02, 6.620269128038186457e-02, 6.622222081728609822e-02, 6.624163916381548001e-02, 6.626094630955337017e-02, 6.628014224426226342e-02, 6.629922695788320608e-02, 6.631820044053536589e-02, 6.633706268251707283e-02, 6.635581367430583299e-02, 6.637445340655687143e-02, 6.639298187010470031e-02, 6.641139905596217530e-02, 6.642970495532107833e-02, 6.644789955955167360e-02, 6.646598286020261037e-02, 6.648395484900121444e-02, 6.650181551785340484e-02, 6.651956485884379100e-02, 6.653720286423496499e-02, 6.655472952646863949e-02, 6.657214483816434325e-02, 6.658944879212078116e-02, 6.660664138131458523e-02, 6.662372259890071702e-02, 6.664069243821270361e-02, 6.665755089276266532e-02, 6.667429795624084388e-02, 6.669093362251569956e-02, 6.670745788563367529e-02, 6.672387073982048722e-02, 6.674017217947891822e-02, 6.675636219919105219e-02, 6.677244079371609520e-02, 6.678840795799265151e-02, 6.680426368713603125e-02, 6.682000797644097045e-02, 6.683564082137981310e-02, 6.685116221760270538e-02, 6.686657216093806755e-02, 6.688187064739266330e-02, 6.689705767315061447e-02, 6.691213323457469164e-02, 6.692709732820502355e-02, 6.694194995075991583e-02, 6.695669109913553185e-02, 6.697132077040622578e-02, 6.698583896182386255e-02, 6.700024567081774851e-02, 6.701454089499578326e-02, 6.702872463214304410e-02, 6.704279688022246608e-02, 6.705675763737496686e-02, 6.707060690191844754e-02, 6.708434467234959675e-02, 6.709797094734129552e-02, 6.711148572574517079e-02, 6.712488900658948598e-02, 6.713818078908097287e-02, 6.715136107260304132e-02, 6.716442985671716714e-02, 6.717738714116151810e-02, 6.719023292585253604e-02, 6.720296721088332703e-02, 6.721558999652436917e-02, 6.722810128322413703e-02, 6.724050107160785272e-02, 6.725278936247754136e-02, 6.726496615681316904e-02, 6.727703145577153265e-02, 6.728898526068685659e-02, 6.730082757306976582e-02, 6.731255839460888180e-02, 6.732417772716889348e-02, 6.733568557279240308e-02, 6.734708193369813578e-02, 6.735836681228260514e-02, 6.736954021111815627e-02, 6.738060213295520018e-02, 6.739155258071975740e-02, 6.740239155751573397e-02, 6.741311906662275644e-02, 6.742373511149797605e-02, 6.743423969577479193e-02, 6.744463282326358666e-02, 6.745491449795065764e-02, 6.746508472399943834e-02, 6.747514350574959630e-02, 6.748509084771776856e-02, 6.749492675459652091e-02, 6.750465123125466704e-02, 6.751426428273797631e-02, 6.752376591426817454e-02, 6.753315613124342975e-02, 6.754243493923771380e-02, 6.755160234400212071e-02, 6.756065835146277121e-02, 6.756960296772276942e-02, 6.757843619906092614e-02, 6.758715805193174497e-02, 6.759576853296704602e-02, 6.760426764897296825e-02, 6.761265540693230103e-02, 6.762093181400390118e-02, 6.762909687752223509e-02, 6.763715060499757292e-02, 6.764509300411562787e-02, 6.765292408273830549e-02, 6.766064384890295436e-02, 6.766825231082226888e-02, 6.767574947688474729e-02, 6.768313535565484429e-02, 6.769040995587161103e-02, 6.769757328644993022e-02, 6.770462535648059943e-02, 6.771156617522849919e-02, 6.771839575213528528e-02, 6.772511409681640504e-02, 6.773172121906369247e-02, 6.773821712884364743e-02, 6.774460183629787968e-02, 6.775087535174281750e-02, 6.775703768567016561e-02, 6.776308884874672478e-02, 6.776902885181392000e-02, 6.777485770588805025e-02, 6.778057542216060771e-02, 6.778618201199762550e-02, 6.779167748693958051e-02, 6.779706185870200408e-02, 6.780233513917451049e-02, 6.780749734042226806e-02, 6.781254847468372315e-02, 6.781748855437283452e-02, 6.782231759207738020e-02, 6.782703560055988734e-02, 6.783164259275675789e-02, 6.783613858177889311e-02, 6.784052358091162416e-02, 6.784479760361372680e-02, 6.784896066351914223e-02, 6.785301277443521462e-02, 6.785695395034284372e-02, 6.786078420539819189e-02, 6.786450355392958933e-02, 6.786811201044103126e-02, 6.787160958960895829e-02, 6.787499630628374137e-02, 6.787827217549018133e-02, 6.788143721242591300e-02, 6.788449143246266804e-02, 6.788743485114526188e-02, 6.789026748419188517e-02, 6.789298934749483927e-02, 6.789560045711905134e-02, 6.789810082930312907e-02, 6.790049048045870839e-02, 6.790276942717067554e-02, 6.790493768619711157e-02, 6.790699527446925066e-02, 6.790894220909075851e-02, 6.791077850733910626e-02, 6.791250418666365529e-02, 6.791411926468775284e-02, 6.791562375920660866e-02, 6.791701768818818319e-02, 6.791830106977357617e-02, 6.791947392227652702e-02, 6.792053626418277645e-02, 6.792148811415053833e-02, 6.792232949101095763e-02, 6.792306041376748593e-02, 6.792368090159517369e-02, 6.792419097384203019e-02, 6.792459065002823260e-02, 6.792487994984505728e-02, 6.792505889315728074e-02, 6.792512750000080646e-02, 6.792508579058351148e-02, 6.792493378528512149e-02, 6.792467150465743286e-02, 6.792429896942386858e-02, 6.792381620047942270e-02, 6.792322321889077141e-02, 6.792252004589612036e-02, 6.792170670290484380e-02, 6.792078321149835896e-02, 6.791974959342905738e-02, 6.791860587062065191e-02, 6.791735206516784362e-02, 6.791598819933700182e-02, 6.791451429556505381e-02, 6.791293037646069231e-02, 6.791123646480261289e-02, 6.790943258354106837e-02, 6.790751875579699448e-02, 6.790549500486178780e-02, 6.790336135419772212e-02, 6.790111782743830926e-02, 6.789876444838652270e-02, 6.789630124101661557e-02, 6.789372822947276065e-02, 6.789104543806998016e-02, 6.788825289129306328e-02, 6.788535061379750990e-02, 6.788233863040873950e-02, 6.787921696612199407e-02, 6.787598564610297647e-02, 6.787264469568686509e-02, 6.786919414037921594e-02, 6.786563400585463035e-02, 6.786196431795862849e-02, 6.785818510270515136e-02, 6.785429638627851756e-02, 6.785029819503200776e-02, 6.784619055548890554e-02, 6.784197349434101243e-02, 6.783764703845072963e-02, 6.783321121484826854e-02, 6.782866605073427368e-02, 6.782401157347718590e-02, 6.781924781061553220e-02, 6.781437478985641309e-02, 6.780939253907521114e-02, 6.780430108631704811e-02, 6.779910045979534172e-02, 6.779379068789159746e-02, 6.778837179915687960e-02, 6.778284382230999328e-02, 6.777720678623866402e-02, 6.777146071999845534e-02, 6.776560565281335158e-02, 6.775964161407570241e-02, 6.775356863334598689e-02, 6.774738674035213348e-02, 6.774109596499121311e-02, 6.773469633732667750e-02, 6.772818788759077391e-02, 6.772157064618346267e-02, 6.771484464367186207e-02, 6.770800991079062303e-02, 6.770106647844295611e-02, 6.769401437769793917e-02, 6.768685363979293212e-02, 6.767958429613236959e-02, 6.767220637828805230e-02, 6.766471991799843932e-02, 6.765712494716913383e-02, 6.764942149787260550e-02, 6.764160960234900932e-02, 6.763368929300385413e-02, 6.762566060241007038e-02, 6.761752356330767710e-02, 6.760927820860275494e-02, 6.760092457136736288e-02, 6.759246268484035702e-02, 6.758389258242764042e-02, 6.757521429769960952e-02, 6.756642786439474857e-02, 6.755753331641566051e-02, 6.754853068783248093e-02, 6.753942001288032460e-02, 6.753020132596018743e-02, 6.752087466163932128e-02, 6.751144005464992937e-02, 6.750189753988990182e-02, 6.749224715242288508e-02, 6.748248892747764349e-02, 6.747262290044865607e-02, 6.746264910689440952e-02, 6.745256758254009055e-02, 6.744237836327461599e-02, 6.743208148515295042e-02, 6.742167698439355261e-02, 6.741116489738120665e-02, 6.740054526066431573e-02, 6.738981811095597074e-02, 6.737898348513422786e-02, 6.736804142024130360e-02, 6.735699195348350543e-02, 6.734583512223211998e-02, 6.733457096402160891e-02, 6.732319951655106605e-02, 6.731172081768371784e-02, 6.730013490544672905e-02, 6.728844181803009250e-02, 6.727664159378872466e-02, 6.726473427124059212e-02, 6.725271988906718346e-02, 6.724059848611391166e-02, 6.722837010138846270e-02, 6.721603477406304372e-02, 6.720359254347262057e-02, 6.719104344911451532e-02, 6.717838753065000224e-02, 6.716562482790300326e-02, 6.715275538085981044e-02, 6.713977922966982148e-02, 6.712669641464520665e-02, 6.711350697626049244e-02, 6.710021095515233958e-02, 6.708680839212033398e-02, 6.707329932812575168e-02, 6.705968380429234987e-02, 6.704596186190610319e-02, 6.703213354241450983e-02, 6.701819888742745202e-02, 6.700415793871612735e-02, 6.699001073821393704e-02, 6.697575732801525072e-02, 6.696139775037637798e-02, 6.694693204771515194e-02, 6.693236026261026317e-02, 6.691768243780188419e-02, 6.690289861619148903e-02, 6.688800884084124265e-02, 6.687301315497426457e-02, 6.685791160197492033e-02, 6.684270422538753087e-02, 6.682739106891821823e-02, 6.681197217643226882e-02, 6.679644759195633996e-02, 6.678081735967769661e-02, 6.676508152394257378e-02, 6.674924012925848027e-02, 6.673329322029282473e-02, 6.671724084187226345e-02, 6.670108303898442115e-02, 6.668481985677571222e-02, 6.666845134055271460e-02, 6.665197753578151751e-02, 6.663539848808716637e-02, 6.661871424325496727e-02, 6.660192484722869677e-02, 6.658503034611167049e-02, 6.656803078616607694e-02, 6.655092621381315798e-02, 6.653371667563305614e-02, 6.651640221836453704e-02, 6.649898288890510045e-02, 6.648145873431086927e-02, 6.646382980179639521e-02, 6.644609613873420084e-02, 6.642825779265544572e-02, 6.641031481124941294e-02, 6.639226724236330091e-02, 6.637411513400232055e-02, 6.635585853432969528e-02, 6.633749749166562015e-02, 6.631903205448852479e-02, 6.630046227143467086e-02, 6.628178819129712518e-02, 6.626300986302646745e-02, 6.624412733573052658e-02, 6.622514065867385336e-02, 6.620604988127859469e-02, 6.618685505312377204e-02, 6.616755622394444869e-02, 6.614815344363285388e-02, 6.612864676223818849e-02, 6.610903622996525120e-02, 6.608932189717613148e-02, 6.606950381438818354e-02, 6.604958203227567770e-02, 6.602955660166837104e-02, 6.600942757355265922e-02, 6.598919499906999442e-02, 6.596885892951787067e-02, 6.594841941634935201e-02, 6.592787651117305858e-02, 6.590723026575312504e-02, 6.588648073200849276e-02, 6.586562796201402004e-02, 6.584467200799851150e-02, 6.582361292234710504e-02, 6.580245075759857953e-02, 6.578118556644708959e-02, 6.575981740174102752e-02, 6.573834631648378668e-02, 6.571677236383285936e-02, 6.569509559709978130e-02, 6.567331606975074232e-02, 6.565143383540560096e-02, 6.562944894783860617e-02, 6.560736146097720378e-02, 6.558517142890357698e-02, 6.556287890585209277e-02, 6.554048394621198037e-02, 6.551798660452497203e-02, 6.549538693548669077e-02, 6.547268499394544305e-02, 6.544988083490298203e-02, 6.542697451351363325e-02, 6.540396608508490528e-02, 6.538085560507657379e-02, 6.535764312910150031e-02, 6.533432871292441102e-02, 6.531091241246315959e-02, 6.528739428378749210e-02, 6.526377438311911638e-02, 6.524005276683181309e-02, 6.521622949145168546e-02, 6.519230461365606299e-02, 6.516827819027418145e-02, 6.514415027828711346e-02, 6.511992093482660282e-02, 6.509559021717699345e-02, 6.507115818277238450e-02, 6.504662488919907282e-02, 6.502199039419370719e-02, 6.499725475564394062e-02, 6.497241803158836093e-02, 6.494748028021614383e-02, 6.492244155986665044e-02, 6.489730192902980199e-02, 6.487206144634594107e-02, 6.484672017060535976e-02, 6.482127816074868820e-02, 6.479573547586597870e-02, 6.477009217519713591e-02, 6.474434831813237479e-02, 6.471850396421074958e-02, 6.469255917312104198e-02, 6.466651400470127542e-02, 6.464036851893874280e-02, 6.461412277596990938e-02, 6.458777683607962172e-02, 6.456133075970235669e-02, 6.453478460742052836e-02, 6.450813843996597297e-02, 6.448139231821792272e-02, 6.445454630320508749e-02, 6.442760045610347597e-02, 6.440055483823763083e-02, 6.437340951108042053e-02, 6.434616453625155441e-02, 6.431881997551958108e-02, 6.429137589079962634e-02, 6.426383234415482260e-02, 6.423618939779637826e-02, 6.420844711408121852e-02, 6.418060555551424740e-02, 6.415266478474757061e-02, 6.412462486457977395e-02, 6.409648585795589548e-02, 6.406824782796825823e-02, 6.403991083785519345e-02, 6.401147495100172058e-02, 6.398294023093852034e-02, 6.395430674134335025e-02, 6.392557454603876865e-02, 6.389674370899417477e-02, 6.386781429432421275e-02, 6.383878636628907699e-02, 6.380965998929473415e-02, 6.378043522789239583e-02, 6.375111214677828264e-02, 6.372169081079424868e-02, 6.369217128492637991e-02, 6.366255363430614600e-02, 6.363283792420933171e-02, 6.360302422005675860e-02, 6.357311258741323023e-02, 6.354310309198858697e-02, 6.351299579963566588e-02, 6.348279077635292367e-02, 6.345248808828135578e-02, 6.342208780170628668e-02, 6.339158998305732817e-02, 6.336099469890663083e-02, 6.333030201596999420e-02, 6.329951200110758847e-02, 6.326862472132099846e-02, 6.323764024375627679e-02, 6.320655863570151523e-02, 6.317537996458816307e-02, 6.314410429798975044e-02, 6.311273170362281804e-02, 6.308126224934582083e-02, 6.304969600315990519e-02, 6.301803303320796523e-02, 6.298627340777505912e-02, 6.295441719528774294e-02, 6.292246446431525031e-02, 6.289041528356709154e-02, 6.285826972189503814e-02, 6.282602784829183218e-02, 6.279368973189192182e-02, 6.276125544197026784e-02, 6.272872504794256565e-02, 6.269609861936606410e-02, 6.266337622593792789e-02, 6.263055793749613964e-02, 6.259764382401923621e-02, 6.256463395562558705e-02, 6.253152840257379663e-02, 6.249832723526260042e-02, 6.246503052423064972e-02, 6.243163834015583169e-02, 6.239815075385600485e-02, 6.236456783628836764e-02, 6.233088965854913927e-02, 6.229711629187419802e-02, 6.226324780763790867e-02, 6.222928427735385098e-02, 6.219522577267425772e-02, 6.216107236538991748e-02, 6.212682412743041754e-02, 6.209248113086290183e-02, 6.205804344789371541e-02, 6.202351115086639916e-02, 6.198888431226289020e-02, 6.195416300470246718e-02, 6.191934730094276335e-02, 6.188443727387862858e-02, 6.184943299654133142e-02, 6.181433454210117501e-02, 6.177914198386358358e-02, 6.174385539527264127e-02, 6.170847484990827497e-02, 6.167300042148709388e-02, 6.163743218386254913e-02, 6.160177021102443418e-02, 6.156601457709855174e-02, 6.153016535634711626e-02, 6.149422262316778937e-02, 6.145818645209495668e-02, 6.142205691779784038e-02, 6.138583409508138744e-02, 6.134951805888614468e-02, 6.131310888428789102e-02, 6.127660664649749872e-02, 6.124001142086045457e-02, 6.120332328285796319e-02, 6.116654230810474741e-02, 6.112966857235119927e-02, 6.109270215148111804e-02, 6.105564312151313261e-02, 6.101849155860007701e-02, 6.098124753902829653e-02, 6.094391113921839714e-02, 6.090648243572428094e-02, 6.086896150523399968e-02, 6.083134842456833224e-02, 6.079364327068136065e-02, 6.075584612066101814e-02, 6.071795705172762514e-02, 6.067997614123368799e-02, 6.064190346666589737e-02, 6.060373910564206129e-02, 6.056548313591318677e-02, 6.052713563536245289e-02, 6.048869668200469729e-02, 6.045016635398713090e-02, 6.041154472958823463e-02, 6.037283188721898064e-02, 6.033402790542110455e-02, 6.029513286286801443e-02, 6.025614683836429814e-02, 6.021706991084553595e-02, 6.017790215937846715e-02, 6.013864366315989363e-02, 6.009929450151842850e-02, 6.005985475391211609e-02, 6.002032449992958374e-02, 5.998070381929009737e-02, 5.994099279184224305e-02, 5.990119149756505113e-02, 5.986130001656708027e-02, 5.982131842908657016e-02, 5.978124681549074754e-02, 5.974108525627679078e-02, 5.970083383207090005e-02, 5.966049262362759648e-02, 5.962006171183082542e-02, 5.957954117769333202e-02, 5.953893110235589092e-02, 5.949823156708800714e-02, 5.945744265328729156e-02, 5.941656444247973151e-02, 5.937559701631908715e-02, 5.933454045658610732e-02, 5.929339484519084019e-02, 5.925216026416929571e-02, 5.921083679568556191e-02, 5.916942452203061836e-02, 5.912792352562278725e-02, 5.908633388900697697e-02, 5.904465569485480708e-02, 5.900288902596441398e-02, 5.896103396526113094e-02, 5.891909059579514274e-02, 5.887705900074409471e-02, 5.883493926341051838e-02, 5.879273146722376747e-02, 5.875043569573800556e-02, 5.870805203263328165e-02, 5.866558056171501667e-02, 5.862302136691355248e-02, 5.858037453228460978e-02, 5.853764014200848326e-02, 5.849481828039048564e-02, 5.845190903186041342e-02, 5.840891248097210275e-02, 5.836582871240426212e-02, 5.832265781095920254e-02, 5.827939986156360080e-02, 5.823605494926780562e-02, 5.819262315924547679e-02, 5.814910457679407785e-02, 5.810549928733436259e-02, 5.806180737641022938e-02, 5.801802892968853376e-02, 5.797416403295928972e-02, 5.793021277213471903e-02, 5.788617523325014641e-02, 5.784205150246274352e-02, 5.779784166605241025e-02, 5.775354581042063673e-02, 5.770916402209093354e-02, 5.766469638770919254e-02, 5.762014299404230599e-02, 5.757550392797818745e-02, 5.753077927652755497e-02, 5.748596912682033683e-02, 5.744107356610912707e-02, 5.739609268176614626e-02, 5.735102656128479581e-02, 5.730587529227899185e-02, 5.726063896248271418e-02, 5.721531765975041567e-02, 5.716991147205652268e-02, 5.712442048749506729e-02, 5.707884479427996482e-02, 5.703318448074451430e-02, 5.698743963534200208e-02, 5.694161034664391857e-02, 5.689569670334165830e-02, 5.684969879424487532e-02, 5.680361670828290577e-02, 5.675745053450245020e-02, 5.671120036206943327e-02, 5.666486628026794897e-02, 5.661844837849949741e-02, 5.657194674628488601e-02, 5.652536147326144705e-02, 5.647869264918425197e-02, 5.643194036392642360e-02, 5.638510470747817166e-02, 5.633818576994634869e-02, 5.629118364155526882e-02, 5.624409841264614573e-02, 5.619693017367604487e-02, 5.614967901521949328e-02, 5.610234502796652284e-02, 5.605492830272397475e-02, 5.600742893041402853e-02, 5.595984700207511792e-02, 5.591218260886120922e-02, 5.586443584204182217e-02, 5.581660679300166905e-02, 5.576869555324061312e-02, 5.572070221437371712e-02, 5.567262686813057720e-02, 5.562446960635576698e-02, 5.557623052100821304e-02, 5.552790970416122268e-02, 5.547950724800197048e-02, 5.543102324483224763e-02, 5.538245778706716443e-02, 5.533381096723598291e-02, 5.528508287798087478e-02, 5.523627361205758757e-02, 5.518738326233544461e-02, 5.513841192179637363e-02, 5.508935968353532303e-02, 5.504022664075960275e-02, 5.499101288678934218e-02, 5.494171851505726123e-02, 5.489234361910780291e-02, 5.484288829259760523e-02, 5.479335262929493217e-02, 5.474373672308031208e-02, 5.469404066794493480e-02, 5.464426455799206717e-02, 5.459440848743577629e-02, 5.454447255060156791e-02, 5.449445684192509576e-02, 5.444436145595336202e-02, 5.439418648734330869e-02, 5.434393203086274049e-02, 5.429359818138908972e-02, 5.424318503391040852e-02, 5.419269268352389785e-02, 5.414212122543697603e-02, 5.409147075496628654e-02, 5.404074136753813512e-02, 5.398993315868720611e-02, 5.393904622405804039e-02, 5.388808065940341868e-02, 5.383703656058484721e-02, 5.378591402357282836e-02, 5.373471314444529939e-02, 5.368343401938924231e-02, 5.363207674469887970e-02, 5.358064141677650744e-02, 5.352912813213222404e-02, 5.347753698738307027e-02, 5.342586807925400749e-02, 5.337412150457663401e-02, 5.332229736028994138e-02, 5.327039574343888501e-02, 5.321841675117598702e-02, 5.316636048075944199e-02, 5.311422702955387321e-02, 5.306201649503061724e-02, 5.300972897476620427e-02, 5.295736456644251078e-02, 5.290492336784832078e-02, 5.285240547687656415e-02, 5.279981099152607910e-02, 5.274714000990050194e-02, 5.269439263020838510e-02, 5.264156895076309989e-02, 5.258866906998211493e-02, 5.253569308638787044e-02, 5.248264109860659166e-02, 5.242951320536841375e-02, 5.237630950550757614e-02, 5.232303009796211019e-02, 5.226967508177290250e-02, 5.221624455608476351e-02, 5.216273862014558782e-02, 5.210915737330573672e-02, 5.205550091501891241e-02, 5.200176934484127683e-02, 5.194796276243101446e-02, 5.189408126754919970e-02, 5.184012496005863113e-02, 5.178609393992416460e-02, 5.173198830721230379e-02, 5.167780816209111699e-02, 5.162355360483014688e-02, 5.156922473579986926e-02, 5.151482165547226211e-02, 5.146034446441987570e-02, 5.140579326331576326e-02, 5.135116815293402914e-02, 5.129646923414850346e-02, 5.124169660793369274e-02, 5.118685037536339910e-02, 5.113193063761219126e-02, 5.107693749595326738e-02, 5.102187105176012039e-02, 5.096673140650480327e-02, 5.091151866175894908e-02, 5.085623291919275091e-02, 5.080087428057553089e-02, 5.074544284777495612e-02, 5.068993872275697615e-02, 5.063436200758578143e-02, 5.057871280442387957e-02, 5.052299121553131822e-02, 5.046719734326599732e-02, 5.041133129008294744e-02, 5.035539315853504450e-02, 5.029938305127179543e-02, 5.024330107104010845e-02, 5.018714732068339096e-02, 5.013092190314184793e-02, 5.007462492145176025e-02, 5.001825647874581088e-02, 4.996181667825300848e-02, 4.990530562329784786e-02, 4.984872341730085116e-02, 4.979207016377780459e-02, 4.973534596633998051e-02, 4.967855092869404715e-02, 4.962168515464071561e-02, 4.956474874807702963e-02, 4.950774181299291005e-02, 4.945066445347434669e-02, 4.939351677370024812e-02, 4.933629887794480778e-02, 4.927901087057492274e-02, 4.922165285605227536e-02, 4.916422493893132101e-02, 4.910672722386032890e-02, 4.904915981558033433e-02, 4.899152281892584643e-02, 4.893381633882377263e-02, 4.887604048029381421e-02, 4.881819534844816788e-02, 4.876028104849126910e-02, 4.870229768571975038e-02, 4.864424536552172662e-02, 4.858612419337757227e-02, 4.852793427485885963e-02, 4.846967571562876137e-02, 4.841134862144134271e-02, 4.835295309814165166e-02, 4.829448925166580919e-02, 4.823595718804060684e-02, 4.817735701338290988e-02, 4.811868883390012230e-02, 4.805995275588965943e-02, 4.800114888573878136e-02, 4.794227732992429464e-02, 4.788333819501323224e-02, 4.782433158766098008e-02, 4.776525761461283826e-02, 4.770611638270255001e-02, 4.764690799885328704e-02, 4.758763257007622705e-02, 4.752829020347125455e-02, 4.746888100622639189e-02, 4.740940508561763966e-02, 4.734986254900939995e-02, 4.729025350385309551e-02, 4.723057805768773876e-02, 4.717083631814002198e-02, 4.711102839292354016e-02, 4.705115438983901999e-02, 4.699121441677368838e-02, 4.693120858170117538e-02, 4.687113699268218026e-02, 4.681099975786287559e-02, 4.675079698547592727e-02, 4.669052878383987693e-02, 4.663019526135862847e-02, 4.656979652652144808e-02, 4.650933268790324870e-02, 4.644880385416384760e-02, 4.638821013404804267e-02, 4.632755163638501567e-02, 4.626682847008935229e-02, 4.620604074415867596e-02, 4.614518856767588911e-02, 4.608427204980741071e-02, 4.602329129980362726e-02, 4.596224642699796997e-02, 4.590113754080822617e-02, 4.583996475073425642e-02, 4.577872816636011782e-02, 4.571742789735203788e-02, 4.565606405345892793e-02, 4.559463674451223747e-02, 4.553314608042612066e-02, 4.547159217119613878e-02, 4.540997512690028021e-02, 4.534829505769791269e-02, 4.528655207383002618e-02, 4.522474628561960752e-02, 4.516287780346958658e-02, 4.510094673786484154e-02, 4.503895319937069319e-02, 4.497689729863293268e-02, 4.491477914637789087e-02, 4.485259885341236902e-02, 4.479035653062277827e-02, 4.472805228897564628e-02, 4.466568623951669426e-02, 4.460325849337180154e-02, 4.454076916174579126e-02, 4.447821835592240258e-02, 4.441560618726441562e-02, 4.435293276721347794e-02, 4.429019820728947315e-02, 4.422740261909081927e-02, 4.416454611429407318e-02, 4.410162880465331309e-02, 4.403865080200126264e-02, 4.397561221824712596e-02, 4.391251316537842647e-02, 4.384935375545925135e-02, 4.378613410063104255e-02, 4.372285431311198622e-02, 4.365951450519653387e-02, 4.359611478925617956e-02, 4.353265527773812760e-02, 4.346913608316568117e-02, 4.340555731813862395e-02, 4.334191909533140902e-02, 4.327822152749470630e-02, 4.321446472745422984e-02, 4.315064880811071008e-02, 4.308677388244008116e-02, 4.302284006349252343e-02, 4.295884746439302543e-02, 4.289479619834084961e-02, 4.283068637860940053e-02, 4.276651811854599583e-02, 4.270229153157180380e-02, 4.263800673118157275e-02, 4.257366383094281920e-02, 4.250926294449747234e-02, 4.244480418555914708e-02, 4.238028766791494123e-02, 4.231571350542447790e-02, 4.225108181201967655e-02, 4.218639270170465583e-02, 4.212164628855573356e-02, 4.205684268672092024e-02, 4.199198201042007861e-02, 4.192706437394397995e-02, 4.186208989165535882e-02, 4.179705867798730323e-02, 4.173197084744417751e-02, 4.166682651460123371e-02, 4.160162579410358469e-02, 4.153636880066716164e-02, 4.147105564907785369e-02, 4.140568645419123034e-02, 4.134026133093293698e-02, 4.127478039429757078e-02, 4.120924375934965217e-02, 4.114365154122257007e-02, 4.107800385511856112e-02, 4.101230081630884150e-02, 4.094654254013296857e-02, 4.088072914199894492e-02, 4.081486073738274656e-02, 4.074893744182861433e-02, 4.068295937094841552e-02, 4.061692664042148432e-02, 4.055083936599476746e-02, 4.048469766348206100e-02, 4.041850164876472501e-02, 4.035225143779005985e-02, 4.028594714657295073e-02, 4.021958889119382763e-02, 4.015317678780003924e-02, 4.008671095260434719e-02, 4.002019150188559915e-02, 3.995361855198851370e-02, 3.988699221932283379e-02, 3.982031262036384023e-02, 3.975357987165178270e-02, 3.968679408979136625e-02, 3.961995539145282685e-02, 3.955306389336993994e-02, 3.948611971234129020e-02, 3.941912296522928627e-02, 3.935207376896057707e-02, 3.928497224052495546e-02, 3.921781849697576761e-02, 3.915061265543030161e-02, 3.908335483306811520e-02, 3.901604514713215982e-02, 3.894868371492783005e-02, 3.888127065382314396e-02, 3.881380608124846560e-02, 3.874629011469610945e-02, 3.867872287172049311e-02, 3.861110446993745726e-02, 3.854343502702484159e-02, 3.847571466072126356e-02, 3.840794348882688863e-02, 3.834012162920250044e-02, 3.827224919977000039e-02, 3.820432631851138072e-02, 3.813635310346943225e-02, 3.806832967274662027e-02, 3.800025614450566053e-02, 3.793213263696884607e-02, 3.786395926841826937e-02, 3.779573615719524632e-02, 3.772746342170011508e-02, 3.765914118039226377e-02, 3.759076955179008195e-02, 3.752234865446999607e-02, 3.745387860706746175e-02, 3.738535952827556907e-02, 3.731679153684563932e-02, 3.724817475158666291e-02, 3.717950929136523003e-02, 3.711079527510558612e-02, 3.704203282178872986e-02, 3.697322205045285720e-02, 3.690436308019295203e-02, 3.683545603016058489e-02, 3.676650101956362854e-02, 3.669749816766625095e-02, 3.662844759378879045e-02, 3.655934941730717980e-02, 3.649020375765257146e-02, 3.642101073431219110e-02, 3.635177046682813023e-02, 3.628248307479772089e-02, 3.621314867787261277e-02, 3.614376739575951569e-02, 3.607433934821958899e-02, 3.600486465506764350e-02, 3.593534343617337673e-02, 3.586577581145945770e-02, 3.579616190090267186e-02, 3.572650182453302597e-02, 3.565679570243376201e-02, 3.558704365474121140e-02, 3.551724580164458689e-02, 3.544740226338576050e-02, 3.537751316025834758e-02, 3.530757861260945540e-02, 3.523759874083701865e-02, 3.516757366539129820e-02, 3.509750350677431907e-02, 3.502738838553919043e-02, 3.495722842229066069e-02, 3.488702373768427095e-02, 3.481677445242634811e-02, 3.474648068727383826e-02, 3.467614256303408471e-02, 3.460576020056515406e-02, 3.453533372077439295e-02, 3.446486324461955214e-02, 3.439434889310758608e-02, 3.432379078729535377e-02, 3.425318904828855704e-02, 3.418254379724208758e-02, 3.411185515535961749e-02, 3.404112324389373112e-02, 3.397034818414480795e-02, 3.389953009746213275e-02, 3.382866910524239684e-02, 3.375776532893085685e-02, 3.368681889002000940e-02, 3.361582991004958415e-02, 3.354479851060693935e-02, 3.347372481332599320e-02, 3.340260893988820229e-02, 3.333145101202093091e-02, 3.326025115149827682e-02, 3.318900948014090468e-02, 3.311772611981474157e-02, 3.304640119243243412e-02, 3.297503481995137098e-02, 3.290362712437513992e-02, 3.283217822775203604e-02, 3.276068825217583885e-02, 3.268915731978463274e-02, 3.261758555276127181e-02, 3.254597307333346318e-02, 3.247432000377284411e-02, 3.240262646639460731e-02, 3.233089258355882623e-02, 3.225911847766821383e-02, 3.218730427116943404e-02, 3.211545008655208866e-02, 3.204355604634909205e-02, 3.197162227313599114e-02, 3.189964888953100708e-02, 3.182763601819471599e-02, 3.175558378182979230e-02, 3.168349230318137644e-02, 3.161136170503602710e-02, 3.153919211022189473e-02, 3.146698364160890188e-02, 3.139473642210763998e-02, 3.132245057467017424e-02, 3.125012622228925951e-02, 3.117776348799799688e-02, 3.110536249487054483e-02, 3.103292336602034643e-02, 3.096044622460157950e-02, 3.088793119380787641e-02, 3.081537839687258432e-02, 3.074278795706857775e-02, 3.067015999770758214e-02, 3.059749464214062825e-02, 3.052479201375721610e-02, 3.045205223598593594e-02, 3.037927543229318114e-02, 3.030646172618399470e-02, 3.023361124120127127e-02, 3.016072410092573639e-02, 3.008780042897519005e-02, 3.001484034900565867e-02, 2.994184398470949721e-02, 2.986881145981700597e-02, 2.979574289809417201e-02, 2.972263842334461892e-02, 2.964949815940718172e-02, 2.957632223015804057e-02, 2.950311075950869111e-02, 2.942986387140629836e-02, 2.935658168983410962e-02, 2.928326433880999030e-02, 2.920991194238781175e-02, 2.913652462465578588e-02, 2.906310250973696135e-02, 2.898964572178935883e-02, 2.891615438500470467e-02, 2.884262862360955845e-02, 2.876906856186384198e-02, 2.869547432406126253e-02, 2.862184603452966325e-02, 2.854818381762948623e-02, 2.847448779775477168e-02, 2.840075809933246404e-02, 2.832699484682191585e-02, 2.825319816471543941e-02, 2.817936817753737347e-02, 2.810550500984434694e-02, 2.803160878622456068e-02, 2.795767963129860284e-02, 2.788371766971776272e-02, 2.780972302616538036e-02, 2.773569582535558367e-02, 2.766163619203312884e-02, 2.758754425097415669e-02, 2.751342012698482567e-02, 2.743926394490137435e-02, 2.736507582959079102e-02, 2.729085590594929403e-02, 2.721660429890342819e-02, 2.714232113340886432e-02, 2.706800653445059351e-02, 2.699366062704273289e-02, 2.691928353622815434e-02, 2.684487538707878637e-02, 2.677043630469453164e-02, 2.669596641420401983e-02, 2.662146584076346273e-02, 2.654693470955750076e-02, 2.647237314579810666e-02, 2.639778127472465138e-02, 2.632315922160410535e-02, 2.624850711173027165e-02, 2.617382507042344958e-02, 2.609911322303134357e-02, 2.602437169492753666e-02, 2.594960061151213235e-02, 2.587480009821125151e-02, 2.579997028047665425e-02, 2.572511128378610762e-02, 2.565022323364230319e-02, 2.557530625557376258e-02, 2.550036047513350862e-02, 2.542538601789964131e-02, 2.535038300947506026e-02, 2.527535157548667713e-02, 2.520029184158595684e-02, 2.512520393344814737e-02, 2.505008797677250876e-02, 2.497494409728173714e-02, 2.489977242072232214e-02, 2.482457307286325618e-02, 2.474934617949693313e-02, 2.467409186643873889e-02, 2.459881025952658298e-02, 2.452350148462032961e-02, 2.444816566760267540e-02, 2.437280293437767142e-02, 2.429741341087167036e-02, 2.422199722303235506e-02, 2.414655449682870728e-02, 2.407108535825125406e-02, 2.399558993331096096e-02, 2.392006834804014451e-02, 2.384452072849111565e-02, 2.376894720073700895e-02, 2.369334789087084933e-02, 2.361772292500581225e-02, 2.354207242927480737e-02, 2.346639652982982285e-02, 2.339069535284280660e-02, 2.331496902450472253e-02, 2.323921767102526958e-02, 2.316344141863314193e-02, 2.308764039357522058e-02, 2.301181472211722215e-02, 2.293596453054234929e-02, 2.286008994515244253e-02, 2.278419109226657857e-02, 2.270826809822136874e-02, 2.263232108937118098e-02, 2.255635019208688391e-02, 2.248035553275679402e-02, 2.240433723778551683e-02, 2.232829543359446042e-02, 2.225223024662135313e-02, 2.217614180332000071e-02, 2.210003023015956122e-02, 2.202389565362581486e-02, 2.194773820021931471e-02, 2.187155799645636514e-02, 2.179535516886796018e-02, 2.171912984400038715e-02, 2.164288214841421018e-02, 2.156661220868479403e-02, 2.149032015140175250e-02, 2.141400610316850084e-02, 2.133767019060271719e-02, 2.126131254033531565e-02, 2.118493327901116094e-02, 2.110853253328788190e-02, 2.103211042983654452e-02, 2.095566709534099278e-02, 2.087920265649757801e-02, 2.080271724001547459e-02, 2.072621097261545531e-02, 2.064968398103088007e-02, 2.057313639200685287e-02, 2.049656833229994077e-02, 2.041997992867842712e-02, 2.034337130792159692e-02, 2.026674259681992760e-02, 2.019009392217467960e-02, 2.011342541079759114e-02, 2.003673718951118690e-02, 1.996002938514775810e-02, 1.988330212455003201e-02, 1.980655553457021448e-02, 1.972978974207040617e-02, 1.965300487392212733e-02, 1.957620105700571406e-02, 1.949937841821106424e-02, 1.942253708443663490e-02, 1.934567718258909177e-02, 1.926879883958423911e-02, 1.919190218234553130e-02, 1.911498733780466266e-02, 1.903805443290123786e-02, 1.896110359458202943e-02, 1.888413494980176188e-02, 1.880714862552180372e-02, 1.873014474871095153e-02, 1.865312344634443426e-02, 1.857608484540446483e-02, 1.849902907287905018e-02, 1.842195625576302856e-02, 1.834486652105688995e-02, 1.826775999576674483e-02, 1.819063680690471974e-02, 1.811349708148777410e-02, 1.803634094653869605e-02, 1.795916852908448214e-02, 1.788197995615734004e-02, 1.780477535479400505e-02, 1.772755485203566725e-02, 1.765031857492738165e-02, 1.757306665051855052e-02, 1.749579920586179227e-02, 1.741851636801389214e-02, 1.734121826403452887e-02, 1.726390502098682639e-02, 1.718657676593651068e-02, 1.710923362595239902e-02, 1.703187572810583444e-02, 1.695450319947021736e-02, 1.687711616712144966e-02, 1.679971475813703957e-02, 1.672229909959653191e-02, 1.664486931858086965e-02, 1.656742554217204011e-02, 1.648996789745362651e-02, 1.641249651151016273e-02, 1.633501151142645325e-02, 1.625751302428826706e-02, 1.618000117718148070e-02, 1.610247609719222053e-02, 1.602493791140632839e-02, 1.594738674690967042e-02, 1.586982273078747785e-02, 1.579224599012422903e-02, 1.571465665200376394e-02, 1.563705484350847580e-02, 1.555944069171991823e-02, 1.548181432371771409e-02, 1.540417586658024418e-02, 1.532652544738356999e-02, 1.524886319320222991e-02, 1.517118923110769187e-02, 1.509350368816970295e-02, 1.501580669145480100e-02, 1.493809836802709005e-02, 1.486037884494697918e-02, 1.478264824927232046e-02, 1.470490670805681480e-02, 1.462715434835087404e-02, 1.454939129720101559e-02, 1.447161768164928648e-02, 1.439383362873401968e-02, 1.431603926548843594e-02, 1.423823471894164472e-02, 1.416042011611735874e-02, 1.408259558403454278e-02, 1.400476124970686728e-02, 1.392691724014217397e-02, 1.384906368234311257e-02, 1.377120070330587441e-02, 1.369332843002084125e-02, 1.361544698947226260e-02, 1.353755650863760346e-02, 1.345965711448785136e-02, 1.338174893398695088e-02, 1.330383209409175503e-02, 1.322590672175204610e-02, 1.314797294390974806e-02, 1.307003088749943316e-02, 1.299208067944750654e-02, 1.291412244667253587e-02, 1.283615631608443254e-02, 1.275818241458499640e-02, 1.268020086906728253e-02, 1.260221180641510341e-02, 1.252421535350367425e-02, 1.244621163719867966e-02, 1.236820078435592503e-02, 1.229018292182223505e-02, 1.221215817643404519e-02, 1.213412667501808165e-02, 1.205608854439032228e-02, 1.197804391135664712e-02, 1.189999290271218091e-02, 1.182193564524092362e-02, 1.174387226571612340e-02, 1.166580289089936932e-02, 1.158772764754124364e-02, 1.150964666238015431e-02, 1.143156006214289533e-02, 1.135346797354437089e-02, 1.127537052328664476e-02, 1.119726783805992387e-02, 1.111916004454143597e-02, 1.104104726939526479e-02, 1.096292963927299365e-02, 1.088480728081244429e-02, 1.080668032063831878e-02, 1.072854888536159054e-02, 1.065041310157906727e-02, 1.057227309587394949e-02, 1.049412899481472726e-02, 1.041598092495585499e-02, 1.033782901283672104e-02, 1.025967338498220104e-02, 1.018151416790183221e-02, 1.010335148809009785e-02, 1.002518547202608905e-02, 9.947016246172901005e-03, 9.868843936978231521e-03, 9.790668670873334950e-03, 9.712490574273693542e-03, 9.634309773577699049e-03, 9.556126395167533968e-03, 9.477940565408553980e-03, 9.399752410649133555e-03, 9.321562057220096967e-03, 9.243369631435193606e-03, 9.165175259590249701e-03, 9.086979067963569037e-03, 9.008781182815096822e-03, 8.930581730387011224e-03, 8.852380836902535091e-03, 8.774178628566737387e-03, 8.695975231565766447e-03, 8.617770772066518647e-03, 8.539565376217148410e-03, 8.461359170145852163e-03, 8.383152279961801623e-03, 8.304944831754108164e-03, 8.226736951591560876e-03, 8.148528765523341266e-03, 8.070320399578114270e-03, 7.992111979763639670e-03, 7.913903632067403535e-03, 7.835695482455390035e-03, 7.757487656872967020e-03, 7.679280281243582376e-03, 7.601073481469540309e-03, 7.522867383431415880e-03, 7.444662112987415759e-03, 7.366457795974118948e-03, 7.288254558205302380e-03, 7.210052525472642609e-03, 7.131851823544627274e-03, 7.053652578167328782e-03, 6.975454915063137099e-03, 6.897258959931817923e-03, 6.819064838448712050e-03, 6.740872676266367741e-03, 6.662682599012785187e-03, 6.584494732292325500e-03, 6.506309201684579678e-03, 6.428126132745171778e-03, 6.349945651004570632e-03, 6.271767881968682255e-03, 6.193592951118326827e-03, 6.115420983908769446e-03, 6.037252105770213664e-03, 5.959086442106805749e-03, 5.880924118297226229e-03, 5.802765259693740997e-03, 5.724609991622748618e-03, 5.646458439383824496e-03, 5.568310728250222205e-03, 5.490166983468448489e-03, 5.412027330257518191e-03, 5.333891893809524984e-03, 5.255760799289375083e-03, 5.177634171833914688e-03, 5.099512136552688049e-03, 5.021394818526795159e-03, 4.943282342809447727e-03, 4.865174834425557183e-03, 4.787072418371055536e-03, 4.708975219613626556e-03, 4.630883363091514889e-03, 4.552796973714272853e-03, 4.474716176361692721e-03, 4.396641095884322795e-03, 4.318571857103025054e-03, 4.240508584808365400e-03, 4.162451403761308413e-03, 4.084400438692192131e-03, 4.006355814300652587e-03, 3.928317655256179791e-03, 3.850286086196911227e-03, 3.772261231730303192e-03, 3.694243216432124659e-03, 3.616232164847018454e-03, 3.538228201487954826e-03, 3.460231450835730537e-03, 3.382242037339577758e-03, 3.304260085416032156e-03, 3.226285719449650206e-03, 3.148319063791948404e-03, 3.070360242761956213e-03, 2.992409380645714295e-03, 2.914466601695759728e-03, 2.836532030131651196e-03, 2.758605790138973692e-03, 2.680688005870097024e-03, 2.602778801442753344e-03, 2.524878300940885858e-03, 2.446986628414211679e-03, 2.369103907877894398e-03, 2.291230263312090450e-03, 2.213365818662446118e-03, 2.135510697839109601e-03, 2.057665024717341643e-03, 1.979828923136511994e-03, 1.902002516900740603e-03, 1.824185929777866980e-03, 1.746379285499993382e-03, 1.668582707762979568e-03, 1.590796320225925427e-03, 1.513020246511760560e-03, 1.435254610206139914e-03, 1.357499534858182776e-03, 1.279755143979579169e-03, 1.202021561044317507e-03, 1.124298909489353324e-03, 1.046587312713780733e-03, 9.688868940784140264e-04, 8.911977769063677288e-04, 8.135200844819832347e-04, 7.358539400515273603e-04, 6.581994668221228867e-04, 5.805567879624279207e-04, 5.029260266015866043e-04, 4.253073058297913273e-04, 3.477007486977757005e-04, 2.701064782162925664e-04, 1.925246173566905780e-04, 1.149552890498587685e-04, 3.739861618690078964e-05, -4.014527838191673045e-05, -1.176762718463792454e-04, -1.951942414378095389e-04, -2.726990644277444971e-04, -3.501906181294143594e-04, -4.276687798969660984e-04, -5.051334271265076146e-04, -5.825844372554404372e-04, -6.600216877634958960e-04, -7.374450561721857022e-04, -8.148544200453007895e-04, -8.922496569894189378e-04, -9.696306446533568173e-04, -1.046997260729194126e-03, -1.124349382951607889e-03, -1.201686889098945278e-03, -1.279009656992492316e-03, -1.356317564497590712e-03, -1.433610489523009027e-03, -1.510888310021392834e-03, -1.588150903990068327e-03, -1.665398149470364480e-03, -1.742629924547937654e-03, -1.819846107353568273e-03, -1.897046576062512251e-03, -1.974231208895524045e-03, -2.051399884118308269e-03, -2.128552480042021026e-03, -2.205688875023785554e-03, -2.282808947466102856e-03, -2.359912575817913784e-03, -2.436999638573955022e-03, -2.514070014275717520e-03, -2.591123581510874473e-03, -2.668160218914249725e-03, -2.745179805167287379e-03, -2.822182218998429103e-03, -2.899167339184002736e-03, -2.976135044547434730e-03, -3.053085213959653467e-03, -3.130017726339871190e-03, -3.206932460654882307e-03, -3.283829295920174043e-03, -3.360708111199278095e-03, -3.437568785604366069e-03, -3.514411198296658878e-03, -3.591235228485957064e-03, -3.668040755431594899e-03, -3.744827658441808940e-03, -3.821595816874810096e-03, -3.898345110138130062e-03, -3.975075417689218939e-03, -4.051786619035905798e-03, -4.128478593735794566e-03, -4.205151221397186896e-03, -4.281804381679252605e-03, -4.358437954291360071e-03, -4.435051818994362530e-03, -4.511645855599836531e-03, -4.588219943971162673e-03, -4.664773964022865538e-03, -4.741307795721230386e-03, -4.817821319084673523e-03, -4.894314414183340706e-03, -4.970786961139992723e-03, -5.047238840129393035e-03, -5.123669931379389378e-03, -5.200080115170225073e-03, -5.276469271835211236e-03, -5.352837281761056373e-03, -5.429184025387425762e-03, -5.505509383207913762e-03, -5.581813235769257989e-03, -5.658095463672780864e-03, -5.734355947573452003e-03, -5.810594568180321023e-03, -5.886811206257283428e-03, -5.963005742622541974e-03, -6.039178058149038616e-03, -6.115328033764964519e-03, -6.191455550453312494e-03, -6.267560489252795540e-03, -6.343642731257126063e-03, -6.419702157616224113e-03, -6.495738649535507878e-03, -6.571752088276411503e-03, -6.647742355156932396e-03, -6.723709331551080449e-03, -6.799652898889758414e-03, -6.875572938660311738e-03, -6.951469332407186896e-03, -7.027341961732234965e-03, -7.103190708294098397e-03, -7.179015453809017670e-03, -7.254816080051144402e-03, -7.330592468852093792e-03, -7.406344502101844945e-03, -7.482072061748176219e-03, -7.557775029797664419e-03, -7.633453288314961428e-03, -7.709106719423859319e-03, -7.784735205306783819e-03, -7.860338628205157732e-03, -7.935916870419999422e-03, -8.011469814311365095e-03, -8.086997342299244787e-03, -8.162499336863126079e-03, -8.237975680542698395e-03, -8.313426255937382894e-03, -8.388850945707638715e-03, -8.464249632573618565e-03, -8.539622199316693543e-03, -8.614968528778639556e-03, -8.690288503862712843e-03, -8.765582007532871089e-03, -8.840848922814854155e-03, -8.916089132795618558e-03, -8.991302520624166669e-03, -9.066488969511104362e-03, -9.141648362729098976e-03, -9.216780583613434427e-03, -9.291885515561253139e-03, -9.366963042032844938e-03, -9.442013046550817856e-03, -9.517035412701071312e-03, -9.592030024132411001e-03, -9.666996764556713695e-03, -9.741935517749926443e-03, -9.816846167551348395e-03, -9.891728597863790398e-03, -9.966582692654485723e-03, -1.004140833595446904e-02, -1.011620541185948713e-02, -1.019097380452949411e-02, -1.026571339818911806e-02, -1.034042407712815366e-02, -1.041510572570097590e-02, -1.048975822832767975e-02, -1.056438146949321803e-02, -1.063897533374848561e-02, -1.071353970570980765e-02, -1.078807447005966647e-02, -1.086257951154636497e-02, -1.093705471498447775e-02, -1.101149996525510252e-02, -1.108591514730609962e-02, -1.116030014615159056e-02, -1.123465484687303367e-02, -1.130897913461867757e-02, -1.138327289460439387e-02, -1.145753601211317585e-02, -1.153176837249560681e-02, -1.160596986117041519e-02, -1.168014036362384662e-02, -1.175427976541067523e-02, -1.182838795215346295e-02, -1.190246480954385705e-02, -1.197651022334163262e-02, -1.205052407937548010e-02, -1.212450626354328632e-02, -1.219845666181176499e-02, -1.227237516021730673e-02, -1.234626164486517588e-02, -1.242011600193114115e-02, -1.249393811766024223e-02, -1.256772787836746459e-02, -1.264148517043824083e-02, -1.271520988032809850e-02, -1.278890189456309209e-02, -1.286256109974020720e-02, -1.293618738252682622e-02, -1.300978062966175880e-02, -1.308334072795463987e-02, -1.315686756428677447e-02, -1.323036102561073873e-02, -1.330382099895065229e-02, -1.337724737140302475e-02, -1.345064003013572360e-02, -1.352399886238925958e-02, -1.359732375547626458e-02, -1.367061459678180560e-02, -1.374387127376418272e-02, -1.381709367395380673e-02, -1.389028168495455226e-02, -1.396343519444333964e-02, -1.403655409017029107e-02, -1.410963825995940543e-02, -1.418268759170799968e-02, -1.425570197338749817e-02, -1.432868129304312385e-02, -1.440162543879457135e-02, -1.447453429883551086e-02, -1.454740776143422128e-02, -1.462024571493401350e-02, -1.469304804775248795e-02, -1.476581464838266911e-02, -1.483854540539250588e-02, -1.491124020742557246e-02, -1.498389894320033972e-02, -1.505652150151180410e-02, -1.512910777123003397e-02, -1.520165764130162675e-02, -1.527417100074878777e-02, -1.534664773867061224e-02, -1.541908774424226303e-02, -1.549149090671580499e-02, -1.556385711541984421e-02, -1.563618625976039705e-02, -1.570847822922013387e-02, -1.578073291335924458e-02, -1.585295020181545778e-02, -1.592512998430391583e-02, -1.599727215061787569e-02, -1.606937659062812260e-02, -1.614144319428400393e-02, -1.621347185161275267e-02, -1.628546245272012583e-02, -1.635741488779073050e-02, -1.642932904708782615e-02, -1.650120482095336974e-02, -1.657304209980860199e-02, -1.664484077415393989e-02, -1.671660073456930976e-02, -1.678832187171405352e-02, -1.686000407632739367e-02, -1.693164723922832571e-02, -1.700325125131577075e-02, -1.707481600356927642e-02, -1.714634138704829169e-02, -1.721782729289313488e-02, -1.728927361232479587e-02, -1.736068023664467247e-02, -1.743204705723564937e-02, -1.750337396556168185e-02, -1.757466085316800042e-02, -1.764590761168125313e-02, -1.771711413281015085e-02, -1.778828030834426685e-02, -1.785940603015610459e-02, -1.793049119019981055e-02, -1.800153568051210407e-02, -1.807253939321163197e-02, -1.814350222050008232e-02, -1.821442405466204215e-02, -1.828530478806429313e-02, -1.835614431315739023e-02, -1.842694252247480124e-02, -1.849769930863369438e-02, -1.856841456433412987e-02, -1.863908818236035408e-02, -1.870972005558073359e-02, -1.878031007694650617e-02, -1.885085813949460495e-02, -1.892136413634551775e-02, -1.899182796070371382e-02, -1.906224950585923630e-02, -1.913262866518629715e-02, -1.920296533214453302e-02, -1.927325940027815529e-02, -1.934351076321689719e-02, -1.941371931467623241e-02, -1.948388494845643484e-02, -1.955400755844413641e-02, -1.962408703861166087e-02, -1.969412328301762757e-02, -1.976411618580611873e-02, -1.983406564120829274e-02, -1.990397154354161049e-02, -1.997383378720982497e-02, -2.004365226670372716e-02, -2.011342687660168729e-02, -2.018315751156804852e-02, -2.025284406635518425e-02, -2.032248643580293959e-02, -2.039208451483795481e-02, -2.046163819847546597e-02, -2.053114738181808716e-02, -2.060061196005696232e-02, -2.067003182847060999e-02, -2.073940688242652611e-02, -2.080873701738052833e-02, -2.087802212887722789e-02, -2.094726211254940504e-02, -2.101645686411963976e-02, -2.108560627939915985e-02, -2.115471025428816015e-02, -2.122376868477672540e-02, -2.129278146694432716e-02, -2.136174849696001118e-02, -2.143066967108291088e-02, -2.149954488566212935e-02, -2.156837403713643755e-02, -2.163715702203534638e-02, -2.170589373697885682e-02, -2.177458407867768550e-02, -2.184322794393244588e-02, -2.191182522963568483e-02, -2.198037583277048096e-02, -2.204887965041131895e-02, -2.211733657972365930e-02, -2.218574651796476060e-02, -2.225410936248370733e-02, -2.232242501072075058e-02, -2.239069336020856060e-02, -2.245891430857188328e-02, -2.252708775352756793e-02, -2.259521359288491071e-02, -2.266329172454580737e-02, -2.273132204650442356e-02, -2.279930445684823573e-02, -2.286723885375735801e-02, -2.293512513550566984e-02, -2.300296320045912279e-02, -2.307075294707813459e-02, -2.313849427391647534e-02, -2.320618707962102123e-02, -2.327383126293321516e-02, -2.334142672268821328e-02, -2.340897335781540189e-02, -2.347647106733810954e-02, -2.354391975037434595e-02, -2.361131930613697208e-02, -2.367866963393333232e-02, -2.374597063316512269e-02, -2.381322220333019143e-02, -2.388042424402045047e-02, -2.394757665492363088e-02, -2.401467933582283540e-02, -2.408173218659702061e-02, -2.414873510722014352e-02, -2.421568799776277134e-02, -2.428259075839132863e-02, -2.434944328936799324e-02, -2.441624549105166075e-02, -2.448299726389753864e-02, -2.454969850845764925e-02, -2.461634912538027131e-02, -2.468294901541101885e-02, -2.474949807939216817e-02, -2.481599621826360846e-02, -2.488244333306196057e-02, -2.494883932492179476e-02, -2.501518409507494378e-02, -2.508147754485099551e-02, -2.514771957567769542e-02, -2.521391008908066209e-02, -2.528004898668332126e-02, -2.534613617020769691e-02, -2.541217154147456733e-02, -2.547815500240245556e-02, -2.554408645500927388e-02, -2.560996580141157095e-02, -2.567579294382508343e-02, -2.574156778456423988e-02, -2.580729022604298303e-02, -2.587296017077506463e-02, -2.593857752137282424e-02, -2.600414218054923274e-02, -2.606965405111665024e-02, -2.613511303598744714e-02, -2.620051903817406658e-02, -2.626587196078941297e-02, -2.633117170704669940e-02, -2.639641818025910761e-02, -2.646161128384130409e-02, -2.652675092130845139e-02, -2.659183699627613168e-02, -2.665686941246180747e-02, -2.672184807368355175e-02, -2.678677288386138722e-02, -2.685164374701586032e-02, -2.691646056726997374e-02, -2.698122324884836762e-02, -2.704593169607706626e-02, -2.711058581338451554e-02, -2.717518550530145446e-02, -2.723973067646070015e-02, -2.730422123159706102e-02, -2.736865707554890503e-02, -2.743303811325676494e-02, -2.749736424976351873e-02, -2.756163539021579817e-02, -2.762585143986306252e-02, -2.769001230405786218e-02, -2.775411788825617523e-02, -2.781816809801774051e-02, -2.788216283900562045e-02, -2.794610201698661742e-02, -2.800998553783171433e-02, -2.807381330751602955e-02, -2.813758523211814730e-02, -2.820130121782168237e-02, -2.826496117091436069e-02, -2.832856499778882431e-02, -2.839211260494176048e-02, -2.845560389897498765e-02, -2.851903878659590302e-02, -2.858241717461611556e-02, -2.864573896995281643e-02, -2.870900407962870618e-02, -2.877221241077154365e-02, -2.883536387061510012e-02, -2.889845836649886784e-02, -2.896149580586820232e-02, -2.902447609627414535e-02, -2.908739914537423338e-02, -2.915026486093235183e-02, -2.921307315081834652e-02, -2.927582392300894648e-02, -2.933851708558758015e-02, -2.940115254674438225e-02, -2.946373021477612791e-02, -2.952624999808687797e-02, -2.958871180518815244e-02, -2.965111554469821928e-02, -2.971346112534322889e-02, -2.977574845595667638e-02, -2.983797744547979358e-02, -2.990014800296145886e-02, -2.996226003755887365e-02, -3.002431345853718084e-02, -3.008630817526926696e-02, -3.014824409723700430e-02, -3.021012113403050495e-02, -3.027193919534801672e-02, -3.033369819099694664e-02, -3.039539803089375339e-02, -3.045703862506340606e-02, -3.051861988363997052e-02, -3.058014171686675511e-02, -3.064160403509676514e-02, -3.070300674879206104e-02, -3.076434976852443839e-02, -3.082563300497551811e-02, -3.088685636893630931e-02, -3.094801977130823278e-02, -3.100912312310266650e-02, -3.107016633544135153e-02, -3.113114931955582657e-02, -3.119207198678861787e-02, -3.125293424859282299e-02, -3.131373601653184707e-02, -3.137447720228008635e-02, -3.143515771762303568e-02, -3.149577747445735099e-02, -3.155633638479035663e-02, -3.161683436074105152e-02, -3.167727131454024792e-02, -3.173764715852933627e-02, -3.179796180516231835e-02, -3.185821516700475947e-02, -3.191840715673370521e-02, -3.197853768713873612e-02, -3.203860667112141264e-02, -3.209861402169569833e-02, -3.215855965198770317e-02, -3.221844347523621088e-02, -3.227826540479292183e-02, -3.233802535412162726e-02, -3.239772323679968036e-02, -3.245735896651730928e-02, -3.251693245707757557e-02, -3.257644362239693614e-02, -3.263589237650521557e-02, -3.269527863354596692e-02, -3.275460230777569454e-02, -3.281386331356513086e-02, -3.287306156539927804e-02, -3.293219697787594380e-02, -3.299126946570792723e-02, -3.305027894372191549e-02, -3.310922532685895564e-02, -3.316810853017428118e-02, -3.322692846883793655e-02, -3.328568505813479794e-02, -3.334437821346383779e-02, -3.340300785033966519e-02, -3.346157388439146424e-02, -3.352007623136393083e-02, -3.357851480711644687e-02, -3.363688952762397544e-02, -3.369520030897739382e-02, -3.375344706738248046e-02, -3.381162971916106680e-02, -3.386974818075079441e-02, -3.392780236870526767e-02, -3.398579219969401211e-02, -3.404371759050284912e-02, -3.410157845803388904e-02, -3.415937471930517721e-02, -3.421710629145192917e-02, -3.427477309172569098e-02, -3.433237503749444336e-02, -3.438991204624349679e-02, -3.444738403557481843e-02, -3.450479092320767743e-02, -3.456213262697817312e-02, -3.461940906483977620e-02, -3.467662015486393939e-02, -3.473376581523868190e-02, -3.479084596427029635e-02, -3.484786052038276599e-02, -3.490480940211772298e-02, -3.496169252813470518e-02, -3.501850981721182227e-02, -3.507526118824461775e-02, -3.513194656024758167e-02, -3.518856585235308199e-02, -3.524511898381255809e-02, -3.530160587399555627e-02, -3.535802644239046527e-02, -3.541438060860489789e-02, -3.547066829236515673e-02, -3.552688941351611618e-02, -3.558304389202270046e-02, -3.563913164796875255e-02, -3.569515260155697173e-02, -3.575110667311044016e-02, -3.580699378307130448e-02, -3.586281385200165012e-02, -3.591856680058275186e-02, -3.597425254961711394e-02, -3.602987102002578462e-02, -3.608542213285103467e-02, -3.614090580925478913e-02, -3.619632197051973754e-02, -3.625167053804850131e-02, -3.630695143336477859e-02, -3.636216457811256714e-02, -3.641730989405721208e-02, -3.647238730308396959e-02, -3.652739672719994279e-02, -3.658233808853313812e-02, -3.663721130933236120e-02, -3.669201631196800789e-02, -3.674675301893201573e-02, -3.680142135283783617e-02, -3.685602123641992800e-02, -3.691055259253532561e-02, -3.696501534416225809e-02, -3.701940941440117622e-02, -3.707373472647440549e-02, -3.712799120372669431e-02, -3.718217876962450624e-02, -3.723629734775699834e-02, -3.729034686183596570e-02, -3.734432723569503648e-02, -3.739823839329121241e-02, -3.745208025870394586e-02, -3.750585275613556313e-02, -3.755955580991112569e-02, -3.761318934447895057e-02, -3.766675328441061732e-02, -3.772024755440098187e-02, -3.777367207926747572e-02, -3.782702678395204188e-02, -3.788031159351967769e-02, -3.793352643315910794e-02, -3.798667122818249337e-02, -3.803974590402650624e-02, -3.809275038625111603e-02, -3.814568460054058863e-02, -3.819854847270352793e-02, -3.825134192867239713e-02, -3.830406489450425417e-02, -3.835671729638064076e-02, -3.840929906060760318e-02, -3.846181011361544944e-02, -3.851425038195969985e-02, -3.856661979232080262e-02, -3.861891827150345374e-02, -3.867114574643797098e-02, -3.872330214417971789e-02, -3.877538739190903444e-02, -3.882740141693161173e-02, -3.887934414667906097e-02, -3.893121550870780323e-02, -3.898301543070002706e-02, -3.903474384046402845e-02, -3.908640066593373208e-02, -3.913798583516828189e-02, -3.918949927635364400e-02, -3.924094091780156585e-02, -3.929231068795024234e-02, -3.934360851536343462e-02, -3.939483432873183699e-02, -3.944598805687260512e-02, -3.949706962872886334e-02, -3.954807897337120348e-02, -3.959901601999640114e-02, -3.964988069792834552e-02, -3.970067293661744962e-02, -3.975139266564148288e-02, -3.980203981470523122e-02, -3.985261431364083701e-02, -3.990311609240713292e-02, -3.995354508109139752e-02, -4.000390120990699599e-02, -4.005418440919607248e-02, -4.010439460942782919e-02, -4.015453174119935909e-02, -4.020459573523536140e-02, -4.025458652238897428e-02, -4.030450403364089357e-02, -4.035434820009985157e-02, -4.040411895300320688e-02, -4.045381622371627822e-02, -4.050343994373289958e-02, -4.055299004467526752e-02, -4.060246645829395512e-02, -4.065186911646891110e-02, -4.070119795120772516e-02, -4.075045289464762632e-02, -4.079963387905467115e-02, -4.084874083682338980e-02, -4.089777370047774363e-02, -4.094673240267094477e-02, -4.099561687618551165e-02, -4.104442705393286650e-02, -4.109316286895407094e-02, -4.114182425441990920e-02, -4.119041114363064526e-02, -4.123892347001600900e-02, -4.128736116713578597e-02, -4.133572416867953986e-02, -4.138401240846645290e-02, -4.143222582044631813e-02, -4.148036433869869977e-02, -4.152842789743340507e-02, -4.157641643099022066e-02, -4.162432987384018929e-02, -4.167216816058346568e-02, -4.171993122595202275e-02, -4.176761900480763234e-02, -4.181523143214311428e-02, -4.186276844308189221e-02, -4.191022997287817409e-02, -4.195761595691784723e-02, -4.200492633071667425e-02, -4.205216102992228450e-02, -4.209931999031346628e-02, -4.214640314780011832e-02, -4.219341043842326361e-02, -4.224034179835592373e-02, -4.228719716390227923e-02, -4.233397647149780840e-02, -4.238067965771043916e-02, -4.242730665923971634e-02, -4.247385741291588579e-02, -4.252033185570275320e-02, -4.256672992469491545e-02, -4.261305155711993253e-02, -4.265929669033666216e-02, -4.270546526183673780e-02, -4.275155720924431885e-02, -4.279757247031507061e-02, -4.284351098293814192e-02, -4.288937268513463852e-02, -4.293515751505858763e-02, -4.298086541099637586e-02, -4.302649631136748476e-02, -4.307205015472430343e-02, -4.311752687975195508e-02, -4.316292642526847745e-02, -4.320824873022548890e-02, -4.325349373370731415e-02, -4.329866137493156020e-02, -4.334375159324957427e-02, -4.338876432814580547e-02, -4.343369951923777006e-02, -4.347855710627739761e-02, -4.352333702914962243e-02, -4.356803922787312600e-02, -4.361266364260085043e-02, -4.365721021361902709e-02, -4.370167888134796064e-02, -4.374606958634202208e-02, -4.379038226928971128e-02, -4.383461687101372628e-02, -4.387877333247046374e-02, -4.392285159475150386e-02, -4.396685159908210461e-02, -4.401077328682202056e-02, -4.405461659946584979e-02, -4.409838147864254126e-02, -4.414206786611574868e-02, -4.418567570378387904e-02, -4.422920493367980127e-02, -4.427265549797225475e-02, -4.431602733896343460e-02, -4.435932039909168401e-02, -4.440253462093015496e-02, -4.444566994718717606e-02, -4.448872632070582228e-02, -4.453170368446525418e-02, -4.457460198157925380e-02, -4.461742115529745284e-02, -4.466016114900501349e-02, -4.470282190622257290e-02, -4.474540337060622236e-02, -4.478790548594808324e-02, -4.483032819617577269e-02, -4.487267144535318081e-02, -4.491493517767936039e-02, -4.495711933749014372e-02, -4.499922386925699069e-02, -4.504124871758752313e-02, -4.508319382722555252e-02, -4.512505914305126736e-02, -4.516684461008123319e-02, -4.520855017346771254e-02, -4.525017577850037886e-02, -4.529172137060508141e-02, -4.533318689534380358e-02, -4.537457229841566214e-02, -4.541587752565647701e-02, -4.545710252303872961e-02, -4.549824723667152127e-02, -4.553931161280114215e-02, -4.558029559781111989e-02, -4.562119913822143547e-02, -4.566202218068942525e-02, -4.570276467200968390e-02, -4.574342655911371736e-02, -4.578400778907081026e-02, -4.582450830908717937e-02, -4.586492806650661197e-02, -4.590526700881057687e-02, -4.594552508361755827e-02, -4.598570223868440887e-02, -4.602579842190478859e-02, -4.606581358131065645e-02, -4.610574766507159056e-02, -4.614560062149517666e-02, -4.618537239902652941e-02, -4.622506294624925682e-02, -4.626467221188458601e-02, -4.630420014479191132e-02, -4.634364669396873193e-02, -4.638301180855131794e-02, -4.642229543781336426e-02, -4.646149753116739223e-02, -4.650061803816422923e-02, -4.653965690849326542e-02, -4.657861409198205127e-02, -4.661748953859702616e-02, -4.665628319844329630e-02, -4.669499502176427397e-02, -4.673362495894248930e-02, -4.677217296049895195e-02, -4.681063897709418498e-02, -4.684902295952672602e-02, -4.688732485873445960e-02, -4.692554462579473507e-02, -4.696368221192322862e-02, -4.700173756847527556e-02, -4.703971064694540544e-02, -4.707760139896684931e-02, -4.711540977631302474e-02, -4.715313573089595367e-02, -4.719077921476754617e-02, -4.722834018011873997e-02, -4.726581857928025682e-02, -4.730321436472269270e-02, -4.734052748905592106e-02, -4.737775790502919693e-02, -4.741490556553242669e-02, -4.745197042359450973e-02, -4.748895243238444169e-02, -4.752585154521111327e-02, -4.756266771552383754e-02, -4.759940089691069159e-02, -4.763605104310143085e-02, -4.767261810796485227e-02, -4.770910204551006423e-02, -4.774550280988653500e-02, -4.778182035538423161e-02, -4.781805463643278020e-02, -4.785420560760292319e-02, -4.789027322360546457e-02, -4.792625743929167237e-02, -4.796215820965314680e-02, -4.799797548982256273e-02, -4.803370923507283008e-02, -4.806935940081784320e-02, -4.810492594261182864e-02, -4.814040881614994882e-02, -4.817580797726830899e-02, -4.821112338194355473e-02, -4.824635498629366998e-02, -4.828150274657772023e-02, -4.831656661919482565e-02, -4.835154656068643003e-02, -4.838644252773407345e-02, -4.842125447716098818e-02, -4.845598236593141872e-02, -4.849062615115089236e-02, -4.852518579006655230e-02, -4.855966124006619311e-02, -4.859405245867967627e-02, -4.862835940357776443e-02, -4.866258203257311371e-02, -4.869672030361964221e-02, -4.873077417481298107e-02, -4.876474360439041894e-02, -4.879862855073077016e-02, -4.883242897235448576e-02, -4.886614482792416003e-02, -4.889977607624360761e-02, -4.893332267625889742e-02, -4.896678458705793630e-02, -4.900016176787035105e-02, -4.903345417806807827e-02, -4.906666177716458715e-02, -4.909978452481603139e-02, -4.913282238082000014e-02, -4.916577530511660049e-02, -4.919864325778795788e-02, -4.923142619905868100e-02, -4.926412408929538300e-02, -4.929673688900706313e-02, -4.932926455884500960e-02, -4.936170705960307020e-02, -4.939406435221723596e-02, -4.942633639776641136e-02, -4.945852315747144984e-02, -4.949062459269617381e-02, -4.952264066494711792e-02, -4.955457133587272411e-02, -4.958641656726479191e-02, -4.961817632105755549e-02, -4.964985055932804453e-02, -4.968143924429618136e-02, -4.971294233832436460e-02, -4.974435980391848922e-02, -4.977569160372623952e-02, -4.980693770053960107e-02, -4.983809805729247366e-02, -4.986917263706258652e-02, -4.990016140306981901e-02, -4.993106431867763706e-02, -4.996188134739292658e-02, -4.999261245286509836e-02, -5.002325759888728157e-02, -5.005381674939549802e-02, -5.008428986846908543e-02, -5.011467692033088478e-02, -5.014497786934671297e-02, -5.017519268002623711e-02, -5.020532131702191286e-02, -5.023536374513021957e-02, -5.026531992929098025e-02, -5.029518983458706322e-02, -5.032497342624548536e-02, -5.035467066963638522e-02, -5.038428153027395967e-02, -5.041380597381545786e-02, -5.044324396606238853e-02, -5.047259547295959714e-02, -5.050186046059578632e-02, -5.053103889520325215e-02, -5.056013074315849481e-02, -5.058913597098151776e-02, -5.061805454533638282e-02, -5.064688643303076609e-02, -5.067563160101652003e-02, -5.070429001638937505e-02, -5.073286164638880769e-02, -5.076134645839915777e-02, -5.078974441994753286e-02, -5.081805549870622302e-02, -5.084627966249102154e-02, -5.087441687926227973e-02, -5.090246711712378275e-02, -5.093043034432441496e-02, -5.095830652925694565e-02, -5.098609564045779308e-02, -5.101379764660845390e-02, -5.104141251653477457e-02, -5.106894021920615340e-02, -5.109638072373690054e-02, -5.112373399938566904e-02, -5.115100001555572540e-02, -5.117817874179425575e-02, -5.120527014779325398e-02, -5.123227420338918869e-02, -5.125919087856293382e-02, -5.128602014344005311e-02, -5.131276196829060582e-02, -5.133941632352932716e-02, -5.136598317971558664e-02, -5.139246250755306195e-02, -5.141885427789076590e-02, -5.144515846172154072e-02, -5.147137503018384130e-02, -5.149750395456013929e-02, -5.152354520627812351e-02, -5.154949875691038075e-02, -5.157536457817366721e-02, -5.160114264193025463e-02, -5.162683292018689640e-02, -5.165243538509541044e-02, -5.167795000895247098e-02, -5.170337676419962253e-02, -5.172871562342344631e-02, -5.175396655935523421e-02, -5.177912954487179364e-02, -5.180420455299449695e-02, -5.182919155688995444e-02, -5.185409052986987566e-02, -5.187890144539064607e-02, -5.190362427705445814e-02, -5.192825899860790267e-02, -5.195280558394303749e-02, -5.197726400709729022e-02, -5.200163424225284076e-02, -5.202591626373745393e-02, -5.205011004602379254e-02, -5.207421556372979210e-02, -5.209823279161891751e-02, -5.212216170459945536e-02, -5.214600227772564489e-02, -5.216975448619608213e-02, -5.219341830535585008e-02, -5.221699371069404849e-02, -5.224048067784645144e-02, -5.226387918259332160e-02, -5.228718920086058292e-02, -5.231041070871946669e-02, -5.233354368238693488e-02, -5.235658809822502091e-02, -5.237954393274142639e-02, -5.240241116258907705e-02, -5.242518976456694846e-02, -5.244787971561878231e-02, -5.247048099283423139e-02, -5.249299357344867217e-02, -5.251541743484264280e-02, -5.253775255454232879e-02, -5.255999891021945203e-02, -5.258215647969152057e-02, -5.260422524092157881e-02, -5.262620517201824916e-02, -5.264809625123566261e-02, -5.266989845697339634e-02, -5.269161176777750755e-02, -5.271323616233866000e-02, -5.273477161949405995e-02, -5.275621811822599205e-02, -5.277757563766289489e-02, -5.279884415707830625e-02, -5.282002365589222315e-02, -5.284111411366988753e-02, -5.286211551012239690e-02, -5.288302782510671124e-02, -5.290385103862511873e-02, -5.292458513082640148e-02, -5.294523008200456571e-02, -5.296578587259943155e-02, -5.298625248319684816e-02, -5.300662989452850637e-02, -5.302691808747142521e-02, -5.304711704304896497e-02, -5.306722674243033455e-02, -5.308724716693006412e-02, -5.310717829800912920e-02, -5.312702011727376411e-02, -5.314677260647683588e-02, -5.316643574751628298e-02, -5.318600952243637825e-02, -5.320549391342702800e-02, -5.322488890282442431e-02, -5.324419447311003195e-02, -5.326341060691183737e-02, -5.328253728700365482e-02, -5.330157449630455041e-02, -5.332052221788026458e-02, -5.333938043494217823e-02, -5.335814913084754169e-02, -5.337682828909957877e-02, -5.339541789334731337e-02, -5.341391792738629102e-02, -5.343232837515689282e-02, -5.345064922074686808e-02, -5.346888044838855186e-02, -5.348702204246116171e-02, -5.350507398748939603e-02, -5.352303626814422510e-02, -5.354090886924227355e-02, -5.355869177574625745e-02, -5.357638497276503986e-02, -5.359398844555313818e-02, -5.361150217951132779e-02, -5.362892616018596903e-02, -5.364626037326986757e-02, -5.366350480460130301e-02, -5.368065944016502111e-02, -5.369772426609149829e-02, -5.371469926865703182e-02, -5.373158443428418390e-02, -5.374837974954135844e-02, -5.376508520114281486e-02, -5.378170077594879306e-02, -5.379822646096575622e-02, -5.381466224334615495e-02, -5.383100811038789985e-02, -5.384726404953523587e-02, -5.386343004837852028e-02, -5.387950609465366747e-02, -5.389549217624295396e-02, -5.391138828117423426e-02, -5.392719439762175271e-02, -5.394291051390533859e-02, -5.395853661849056571e-02, -5.397407269998957119e-02, -5.398951874716005628e-02, -5.400487474890577899e-02, -5.402014069427622800e-02, -5.403531657246700426e-02, -5.405040237281949489e-02, -5.406539808482133808e-02, -5.408030369810574306e-02, -5.409511920245165667e-02, -5.410984458778427680e-02, -5.412447984417487201e-02, -5.413902496184024027e-02, -5.415347993114280611e-02, -5.416784474259141169e-02, -5.418211938684076856e-02, -5.419630385469097200e-02, -5.421039813708843080e-02, -5.422440222512480562e-02, -5.423831611003853553e-02, -5.425213978321286740e-02, -5.426587323617777792e-02, -5.427951646060846097e-02, -5.429306944832578558e-02, -5.430653219129717713e-02, -5.431990468163518104e-02, -5.433318691159811503e-02, -5.434637887359090175e-02, -5.435948056016284835e-02, -5.437249196401022083e-02, -5.438541307797444685e-02, -5.439824389504282348e-02, -5.441098440834830213e-02, -5.442363461116951628e-02, -5.443619449693076762e-02, -5.444866405920245622e-02, -5.446104329169992875e-02, -5.447333218828495638e-02, -5.448553074296422910e-02, -5.449763894989067409e-02, -5.450965680336247038e-02, -5.452158429782361093e-02, -5.453342142786365976e-02, -5.454516818821739110e-02, -5.455682457376569150e-02, -5.456839057953492833e-02, -5.457986620069670697e-02, -5.459125143256816914e-02, -5.460254627061235377e-02, -5.461375071043775287e-02, -5.462486474779753437e-02, -5.463588837859158220e-02, -5.464682159886424806e-02, -5.465766440480556571e-02, -5.466841679275165344e-02, -5.467907875918303490e-02, -5.468965030072631128e-02, -5.470013141415298180e-02, -5.471052209638041508e-02, -5.472082234447084997e-02, -5.473103215563222823e-02, -5.474115152721766714e-02, -5.475118045672529993e-02, -5.476111894179902517e-02, -5.477096698022750065e-02, -5.478072456994509398e-02, -5.479039170903092504e-02, -5.479996839570953904e-02, -5.480945462835089960e-02, -5.481885040546986138e-02, -5.482815572572622559e-02, -5.483737058792535757e-02, -5.484649499101736103e-02, -5.485552893409754993e-02, -5.486447241640626804e-02, -5.487332543732917345e-02, -5.488208799639671814e-02, -5.489076009328419659e-02, -5.489934172781195387e-02, -5.490783289994545513e-02, -5.491623360979519530e-02, -5.492454385761618568e-02, -5.493276364380858534e-02, -5.494089296891740276e-02, -5.494893183363260686e-02, -5.495688023878873146e-02, -5.496473818536520839e-02, -5.497250567448648539e-02, -5.498018270742133229e-02, -5.498776928558331972e-02, -5.499526541053127021e-02, -5.500267108396807852e-02, -5.500998630774147496e-02, -5.501721108384418496e-02, -5.502434541441269394e-02, -5.503138930172903065e-02, -5.503834274821899769e-02, -5.504520575645367036e-02, -5.505197832914796724e-02, -5.505866046916163548e-02, -5.506525217949863327e-02, -5.507175346330804577e-02, -5.507816432388205896e-02, -5.508448476465862415e-02, -5.509071478921921672e-02, -5.509685440128984230e-02, -5.510290360474059956e-02, -5.510886240358646437e-02, -5.511473080198602686e-02, -5.512050880424210209e-02, -5.512619641480229205e-02, -5.513179363825754936e-02, -5.513730047934371770e-02, -5.514271694293981091e-02, -5.514804303407002534e-02, -5.515327875790162343e-02, -5.515842411974668236e-02, -5.516347912506072704e-02, -5.516844377944302158e-02, -5.517331808863722153e-02, -5.517810205853106165e-02, -5.518279569515537053e-02, -5.518739900468546539e-02, -5.519191199344022913e-02, -5.519633466788225612e-02, -5.520066703461774110e-02, -5.520490910039671517e-02, -5.520906087211331636e-02, -5.521312235680449904e-02, -5.521709356165142857e-02, -5.522097449397841279e-02, -5.522476516125372076e-02, -5.522846557108889581e-02, -5.523207573123881109e-02, -5.523559564960205115e-02, -5.523902533422039157e-02, -5.524236479327909038e-02, -5.524561403510665908e-02, -5.524877306817506384e-02, -5.525184190109933002e-02, -5.525482054263783360e-02, -5.525770900169224564e-02, -5.526050728730677597e-02, -5.526321540866970666e-02, -5.526583337511185856e-02, -5.526836119610700065e-02, -5.527079888127230112e-02, -5.527314644036730729e-02, -5.527540388329546528e-02, -5.527757122010194119e-02, -5.527964846097576518e-02, -5.528163561624824252e-02, -5.528353269639377926e-02, -5.528533971202916758e-02, -5.528705667391416168e-02, -5.528868359295112389e-02, -5.529022048018530922e-02, -5.529166734680414363e-02, -5.529302420413775149e-02, -5.529429106365908037e-02, -5.529546793698288110e-02, -5.529655483586719961e-02, -5.529755177221183648e-02, -5.529845875805919353e-02, -5.529927580559394762e-02, -5.530000292714327276e-02, -5.530064013517622945e-02, -5.530118744230398675e-02, -5.530164486128054391e-02, -5.530201240500133564e-02, -5.530229008650416889e-02, -5.530247791896880649e-02, -5.530257591571702963e-02, -5.530258409021258231e-02, -5.530250245606108117e-02, -5.530233102701000852e-02, -5.530206981694869156e-02, -5.530171883990837173e-02, -5.530127811006128880e-02, -5.530074764172253354e-02, -5.530012744934813956e-02, -5.529941754753572858e-02, -5.529861795102467698e-02, -5.529772867469579661e-02, -5.529674973357116136e-02, -5.529568114281466912e-02, -5.529452291773161166e-02, -5.529327507376784190e-02, -5.529193762651176541e-02, -5.529051059169162730e-02, -5.528899398517810038e-02, -5.528738782298205784e-02, -5.528569212125614141e-02, -5.528390689629376215e-02, -5.528203216452933638e-02, -5.528006794253812611e-02, -5.527801424703665534e-02, -5.527587109488186351e-02, -5.527363850307218801e-02, -5.527131648874601677e-02, -5.526890506918299972e-02, -5.526640426180318144e-02, -5.526381408416751462e-02, -5.526113455397737434e-02, -5.525836568907454421e-02, -5.525550750744149392e-02, -5.525256002720090737e-02, -5.524952326661616148e-02, -5.524639724409074332e-02, -5.524318197816828480e-02, -5.523987748753284022e-02, -5.523648379100877526e-02, -5.523300090756042002e-02, -5.522942885629199966e-02, -5.522576765644797436e-02, -5.522201732741311569e-02, -5.521817788871117433e-02, -5.521424936000678824e-02, -5.521023176110372715e-02, -5.520612511194582933e-02, -5.520192943261694601e-02, -5.519764474333970633e-02, -5.519327106447724507e-02, -5.518880841653167613e-02, -5.518425682014486272e-02, -5.517961629609826474e-02, -5.517488686531241832e-02, -5.517006854884726197e-02, -5.516516136790232394e-02, -5.516016534381595893e-02, -5.515508049806586849e-02, -5.514990685226892758e-02, -5.514464442818112905e-02, -5.513929324769732687e-02, -5.513385333285130557e-02, -5.512832470581589123e-02, -5.512270738890268779e-02, -5.511700140456229913e-02, -5.511120677538349638e-02, -5.510532352409449469e-02, -5.509935167356150298e-02, -5.509329124678961215e-02, -5.508714226692224686e-02, -5.508090475724145701e-02, -5.507457874116754304e-02, -5.506816424225917384e-02, -5.506166128421333822e-02, -5.505506989086544206e-02, -5.504839008618843399e-02, -5.504162189429391561e-02, -5.503476533943137822e-02, -5.502782044598833466e-02, -5.502078723849030545e-02, -5.501366574159998607e-02, -5.500645598011906501e-02, -5.499915797898610736e-02, -5.499177176327760957e-02, -5.498429735820748593e-02, -5.497673478912783879e-02, -5.496908408152742509e-02, -5.496134526103308576e-02, -5.495351835340879509e-02, -5.494560338455589665e-02, -5.493760038051297145e-02, -5.492950936745544244e-02, -5.492133037169696919e-02, -5.491306341968697075e-02, -5.490470853801241585e-02, -5.489626575339767028e-02, -5.488773509270317152e-02, -5.487911658292656675e-02, -5.487041025120267812e-02, -5.486161612480203870e-02, -5.485273423113290470e-02, -5.484376459773941670e-02, -5.483470725230225884e-02, -5.482556222263863799e-02, -5.481632953670234620e-02, -5.480700922258333052e-02, -5.479760130850780397e-02, -5.478810582283771824e-02, -5.477852279407217223e-02, -5.476885225084524023e-02, -5.475909422192750536e-02, -5.474924873622560167e-02, -5.473931582278158958e-02, -5.472929551077369836e-02, -5.471918782951577104e-02, -5.470899280845687579e-02, -5.469871047718260354e-02, -5.468834086541290995e-02, -5.467788400300443302e-02, -5.466733991994793262e-02, -5.465670864637049708e-02, -5.464599021253393335e-02, -5.463518464883557191e-02, -5.462429198580739942e-02, -5.461331225411674567e-02, -5.460224548456587418e-02, -5.459109170809218342e-02, -5.457985095576758927e-02, -5.456852325879858745e-02, -5.455710864852681558e-02, -5.454560715642873397e-02, -5.453401881411422403e-02, -5.452234365332925270e-02, -5.451058170595279861e-02, -5.449873300399914189e-02, -5.448679757961612247e-02, -5.447477546508670138e-02, -5.446266669282680967e-02, -5.445047129538724273e-02, -5.443818930545262641e-02, -5.442582075584168066e-02, -5.441336567950644937e-02, -5.440082410953298031e-02, -5.438819607914144316e-02, -5.437548162168512333e-02, -5.436268077065103954e-02, -5.434979355965954828e-02, -5.433682002246489201e-02, -5.432376019295415831e-02, -5.431061410514771010e-02, -5.429738179319960195e-02, -5.428406329139648379e-02, -5.427065863415806574e-02, -5.425716785603756226e-02, -5.424359099172031129e-02, -5.422992807602523141e-02, -5.421617914390330917e-02, -5.420234423043867461e-02, -5.418842337084787270e-02, -5.417441660048001595e-02, -5.416032395481659018e-02, -5.414614546947127405e-02, -5.413188118019053585e-02, -5.411753112285270367e-02, -5.410309533346812499e-02, -5.408857384817974956e-02, -5.407396670326179711e-02, -5.405927393512099249e-02, -5.404449558029553180e-02, -5.402963167545540152e-02, -5.401468225740247570e-02, -5.399964736307011348e-02, -5.398452702952306892e-02, -5.396932129395738686e-02, -5.395403019370119402e-02, -5.393865376621307522e-02, -5.392319204908341268e-02, -5.390764508003321326e-02, -5.389201289691491342e-02, -5.387629553771188656e-02, -5.386049304053805442e-02, -5.384460544363854628e-02, -5.382863278538885937e-02, -5.381257510429560825e-02, -5.379643243899537991e-02, -5.378020482825559417e-02, -5.376389231097425392e-02, -5.374749492617945240e-02, -5.373101271302931775e-02, -5.371444571081231828e-02, -5.369779395894733881e-02, -5.368105749698270229e-02, -5.366423636459685675e-02, -5.364733060159842387e-02, -5.363034024792538018e-02, -5.361326534364509178e-02, -5.359610592895530656e-02, -5.357886204418283588e-02, -5.356153372978350591e-02, -5.354412102634324017e-02, -5.352662397457678273e-02, -5.350904261532807987e-02, -5.349137698957029396e-02, -5.347362713840525528e-02, -5.345579310306445425e-02, -5.343787492490714719e-02, -5.341987264542204933e-02, -5.340178630622659933e-02, -5.338361594906622376e-02, -5.336536161581552362e-02, -5.334702334847707395e-02, -5.332860118918188869e-02, -5.331009518018906684e-02, -5.329150536388631287e-02, -5.327283178278863912e-02, -5.325407447953966339e-02, -5.323523349691080403e-02, -5.321630887780110647e-02, -5.319730066523713219e-02, -5.317820890237343057e-02, -5.315903363249228908e-02, -5.313977489900274798e-02, -5.312043274544170357e-02, -5.310100721547341557e-02, -5.308149835288884094e-02, -5.306190620160649435e-02, -5.304223080567164322e-02, -5.302247220925668941e-02, -5.300263045666066958e-02, -5.298270559230951193e-02, -5.296269766075564767e-02, -5.294260670667800400e-02, -5.292243277488230258e-02, -5.290217591030057370e-02, -5.288183615799062209e-02, -5.286141356313742851e-02, -5.284090817105101950e-02, -5.282032002716831320e-02, -5.279964917705173844e-02, -5.277889566638965108e-02, -5.275805954099586220e-02, -5.273714084681046382e-02, -5.271613962989869784e-02, -5.269505593645110869e-02, -5.267388981278416094e-02, -5.265264130533928860e-02, -5.263131046068295071e-02, -5.260989732550713088e-02, -5.258840194662839362e-02, -5.256682437098859906e-02, -5.254516464565441025e-02, -5.252342281781682831e-02, -5.250159893479179607e-02, -5.247969304402005930e-02, -5.245770519306612589e-02, -5.243563542961952872e-02, -5.241348380149386810e-02, -5.239125035662676316e-02, -5.236893514307980335e-02, -5.234653820903917287e-02, -5.232405960281399926e-02, -5.230149937283817135e-02, -5.227885756766863928e-02, -5.225613423598633039e-02, -5.223332942659504596e-02, -5.221044318842323062e-02, -5.218747557052123148e-02, -5.216442662206346309e-02, -5.214129639234738739e-02, -5.211808493079309046e-02, -5.209479228694371966e-02, -5.207141851046582365e-02, -5.204796365114817969e-02, -5.202442775890215448e-02, -5.200081088376164173e-02, -5.197711307588345764e-02, -5.195333438554600863e-02, -5.192947486315046407e-02, -5.190553455922032600e-02, -5.188151352440065894e-02, -5.185741180945865891e-02, -5.183322946528332031e-02, -5.180896654288580372e-02, -5.178462309339833258e-02, -5.176019916807477611e-02, -5.173569481829101702e-02, -5.171111009554370253e-02, -5.168644505145065376e-02, -5.166169973775174701e-02, -5.163687420630696384e-02, -5.161196850909759853e-02, -5.158698269822589028e-02, -5.156191682591469011e-02, -5.153677094450739848e-02, -5.151154510646838158e-02, -5.148623936438218723e-02, -5.146085377095366981e-02, -5.143538837900780980e-02, -5.140984324149024121e-02, -5.138421841146611352e-02, -5.135851394212082033e-02, -5.133272988675955523e-02, -5.130686629880719385e-02, -5.128092323180832163e-02, -5.125490073942671337e-02, -5.122879887544637412e-02, -5.120261769376974886e-02, -5.117635724841899242e-02, -5.115001759353528243e-02, -5.112359878337889574e-02, -5.109710087232912507e-02, -5.107052391488352966e-02, -5.104386796565885814e-02, -5.101713307939049341e-02, -5.099031931093213343e-02, -5.096342671525588841e-02, -5.093645534745214892e-02, -5.090940526272945410e-02, -5.088227651641475530e-02, -5.085506916395264587e-02, -5.082778326090536813e-02, -5.080041886295361131e-02, -5.077297602589495029e-02, -5.074545480564538608e-02, -5.071785525823718777e-02, -5.069017743982138363e-02, -5.066242140666507576e-02, -5.063458721515289029e-02, -5.060667492178658883e-02, -5.057868458318476312e-02, -5.055061625608287673e-02, -5.052246999733270988e-02, -5.049424586390335867e-02, -5.046594391287965997e-02, -5.043756420146313507e-02, -5.040910678697153868e-02, -5.038057172683929608e-02, -5.035195907861589326e-02, -5.032326889996739661e-02, -5.029450124867561323e-02, -5.026565618263816732e-02, -5.023673375986768830e-02, -5.020773403849337208e-02, -5.017865707675904507e-02, -5.014950293302376100e-02, -5.012027166576218246e-02, -5.009096333356388708e-02, -5.006157799513324264e-02, -5.003211570928955271e-02, -5.000257653496718857e-02, -4.997296053121461773e-02, -4.994326775719488964e-02, -4.991349827218583696e-02, -4.988365213557943711e-02, -4.985372940688181237e-02, -4.982373014571278569e-02, -4.979365441180666485e-02, -4.976350226501160406e-02, -4.973327376528883376e-02, -4.970296897271405528e-02, -4.967258794747619194e-02, -4.964213074987725710e-02, -4.961159744033254160e-02, -4.958098807937124514e-02, -4.955030272763486648e-02, -4.951954144587784185e-02, -4.948870429496821099e-02, -4.945779133588579929e-02, -4.942680262972364014e-02, -4.939573823768714234e-02, -4.936459822109375006e-02, -4.933338264137401147e-02, -4.930209156006937904e-02, -4.927072503883459659e-02, -4.923928313943540247e-02, -4.920776592374977859e-02, -4.917617345376771448e-02, -4.914450579158972932e-02, -4.911276299942907153e-02, -4.908094513960924860e-02, -4.904905227456601152e-02, -4.901708446684525933e-02, -4.898504177910432966e-02, -4.895292427411185310e-02, -4.892073201474651106e-02, -4.888846506399786157e-02, -4.885612348496620044e-02, -4.882370734086233927e-02, -4.879121669500707803e-02, -4.875865161083126759e-02, -4.872601215187646190e-02, -4.869329838179344005e-02, -4.866051036434319854e-02, -4.862764816339666674e-02, -4.859471184293365220e-02, -4.856170146704442969e-02, -4.852861709992765948e-02, -4.849545880589207353e-02, -4.846222664935489338e-02, -4.842892069484248940e-02, -4.839554100699063055e-02, -4.836208765054333947e-02, -4.832856069035330188e-02, -4.829496019138175555e-02, -4.826128621869879565e-02, -4.822753883748219506e-02, -4.819371811301829261e-02, -4.815982411070116737e-02, -4.812585689603342265e-02, -4.809181653462476363e-02, -4.805770309219305897e-02, -4.802351663456351505e-02, -4.798925722766905072e-02, -4.795492493754930502e-02, -4.792051983035213597e-02, -4.788604197233166382e-02, -4.785149142984934656e-02, -4.781686826937339707e-02, -4.778217255747870679e-02, -4.774740436084679018e-02, -4.771256374626559743e-02, -4.767765078062972950e-02, -4.764266553093991774e-02, -4.760760806430250347e-02, -4.757247844793089514e-02, -4.753727674914304258e-02, -4.750200303536376845e-02, -4.746665737412310987e-02, -4.743123983305612412e-02, -4.739575047990435275e-02, -4.736018938251339294e-02, -4.732455660883490289e-02, -4.728885222692526952e-02, -4.725307630494529620e-02, -4.721722891116131998e-02, -4.718131011394385843e-02, -4.714531998176819949e-02, -4.710925858321348553e-02, -4.707312598696387212e-02, -4.703692226180720970e-02, -4.700064747663534187e-02, -4.696430170044438301e-02, -4.692788500233369131e-02, -4.689139745150668059e-02, -4.685483911727037626e-02, -4.681821006903460342e-02, -4.678151037631286119e-02, -4.674474010872212842e-02, -4.670789933598161470e-02, -4.667098812791406481e-02, -4.663400655444462778e-02, -4.659695468560150905e-02, -4.655983259151481174e-02, -4.652264034241772317e-02, -4.648537800864493280e-02, -4.644804566063386042e-02, -4.641064336892375408e-02, -4.637317120415566929e-02, -4.633562923707264247e-02, -4.629801753851890689e-02, -4.626033617944062815e-02, -4.622258523088487031e-02, -4.618476476400065062e-02, -4.614687485003732270e-02, -4.610891556034582561e-02, -4.607088696637742786e-02, -4.603278913968466418e-02, -4.599462215192025305e-02, -4.595638607483766569e-02, -4.591808098029043911e-02, -4.587970694023280060e-02, -4.584126402671832856e-02, -4.580275231190104879e-02, -4.576417186803504594e-02, -4.572552276747340189e-02, -4.568680508266937529e-02, -4.564801888617529141e-02, -4.560916425064313884e-02, -4.557024124882355642e-02, -4.553124995356693655e-02, -4.549219043782194716e-02, -4.545306277463626726e-02, -4.541386703715658002e-02, -4.537460329862714331e-02, -4.533527163239162161e-02, -4.529587211189170515e-02, -4.525640481066684623e-02, -4.521686980235454373e-02, -4.517726716069052351e-02, -4.513759695950831513e-02, -4.509785927273834982e-02, -4.505805417440916089e-02, -4.501818173864657185e-02, -4.497824203967329404e-02, -4.493823515180932204e-02, -4.489816114947153131e-02, -4.485802010717382382e-02, -4.481781209952666323e-02, -4.477753720123667930e-02, -4.473719548710741734e-02, -4.469678703203868592e-02, -4.465631191102600872e-02, -4.461577019916127679e-02, -4.457516197163238075e-02, -4.453448730372257247e-02, -4.449374627081064543e-02, -4.445293894837153148e-02, -4.441206541197514901e-02, -4.437112573728611842e-02, -4.433012000006515685e-02, -4.428904827616693407e-02, -4.424791064154156434e-02, -4.420670717223341983e-02, -4.416543794438193560e-02, -4.412410303422045071e-02, -4.408270251807654139e-02, -4.404123647237260381e-02, -4.399970497362418881e-02, -4.395810809844111211e-02, -4.391644592352708654e-02, -4.387471852567893793e-02, -4.383292598178728516e-02, -4.379106836883616544e-02, -4.374914576390260407e-02, -4.370715824415646877e-02, -4.366510588686082356e-02, -4.362298876937170666e-02, -4.358080696913724239e-02, -4.353856056369848765e-02, -4.349624963068848132e-02, -4.345387424783325736e-02, -4.341143449294981166e-02, -4.336893044394809354e-02, -4.332636217882931268e-02, -4.328372977568654967e-02, -4.324103331270432587e-02, -4.319827286815852013e-02, -4.315544852041654222e-02, -4.311256034793665287e-02, -4.306960842926829680e-02, -4.302659284305154763e-02, -4.298351366801760748e-02, -4.294037098298741223e-02, -4.289716486687341485e-02, -4.285389539867751757e-02, -4.281056265749228623e-02, -4.276716672249983309e-02, -4.272370767297278132e-02, -4.268018558827271075e-02, -4.263660054785159415e-02, -4.259295263125026376e-02, -4.254924191809923012e-02, -4.250546848811795342e-02, -4.246163242111517661e-02, -4.241773379698809271e-02, -4.237377269572313587e-02, -4.232974919739527359e-02, -4.228566338216790954e-02, -4.224151533029243955e-02, -4.219730512210891765e-02, -4.215303283804540391e-02, -4.210869855861764516e-02, -4.206430236442932485e-02, -4.201984433617166753e-02, -4.197532455462361228e-02, -4.193074310065116744e-02, -4.188610005520737589e-02, -4.184139549933321017e-02, -4.179662951415569205e-02, -4.175180218088898193e-02, -4.170691358083398331e-02, -4.166196379537766975e-02, -4.161695290599370239e-02, -4.157188099424215244e-02, -4.152674814176883500e-02, -4.148155443030563522e-02, -4.143629994167001562e-02, -4.139098475776553654e-02, -4.134560896058088464e-02, -4.130017263219008111e-02, -4.125467585475277310e-02, -4.120911871051326225e-02, -4.116350128180082391e-02, -4.111782365102958914e-02, -4.107208590069885007e-02, -4.102628811339145004e-02, -4.098043037177499098e-02, -4.093451275860199301e-02, -4.088853535670790296e-02, -4.084249824901249604e-02, -4.079640151851982727e-02, -4.075024524831706574e-02, -4.070402952157488319e-02, -4.065775442154742625e-02, -4.061142003157232339e-02, -4.056502643506971345e-02, -4.051857371554296733e-02, -4.047206195657848671e-02, -4.042549124184454529e-02, -4.037886165509257941e-02, -4.033217328015601538e-02, -4.028542620095066501e-02, -4.023862050147429537e-02, -4.019175626580645533e-02, -4.014483357810872538e-02, -4.009785252262405147e-02, -4.005081318367683524e-02, -4.000371564567282295e-02, -3.995655999309929290e-02, -3.990934631052375087e-02, -3.986207468259526238e-02, -3.981474519404366169e-02, -3.976735792967879546e-02, -3.971991297439115415e-02, -3.967241041315205247e-02, -3.962485033101220688e-02, -3.957723281310280422e-02, -3.952955794463442613e-02, -3.948182581089793031e-02, -3.943403649726341664e-02, -3.938619008918012310e-02, -3.933828667217710573e-02, -3.929032633186230888e-02, -3.924230915392238478e-02, -3.919423522412301963e-02, -3.914610462830854509e-02, -3.909791745240194516e-02, -3.904967378240416231e-02, -3.900137370439490242e-02, -3.895301730453155920e-02, -3.890460466904955422e-02, -3.885613588426225368e-02, -3.880761103656032301e-02, -3.875903021241211555e-02, -3.871039349836311733e-02, -3.866170098103641900e-02, -3.861295274713173742e-02, -3.856414888342569319e-02, -3.851528947677218540e-02, -3.846637461410095521e-02, -3.841740438241834921e-02, -3.836837886880743731e-02, -3.831929816042684012e-02, -3.827016234451173504e-02, -3.822097150837251711e-02, -3.817172573939579122e-02, -3.812242512504361580e-02, -3.807306975285287137e-02, -3.802365971043657894e-02, -3.797419508548235262e-02, -3.792467596575249678e-02, -3.787510243908433910e-02, -3.782547459339020285e-02, -3.777579251665625498e-02, -3.772605629694341517e-02, -3.767626602238664801e-02, -3.762642178119512265e-02, -3.757652366165144947e-02, -3.752657175211220747e-02, -3.747656614100787487e-02, -3.742650691684188541e-02, -3.737639416819086430e-02, -3.732622798370508616e-02, -3.727600845210759378e-02, -3.722573566219378877e-02, -3.717540970283250701e-02, -3.712503066296456850e-02, -3.707459863160313118e-02, -3.702411369783369793e-02, -3.697357595081401938e-02, -3.692298547977351103e-02, -3.687234237401327414e-02, -3.682164672290627605e-02, -3.677089861589676045e-02, -3.672009814250015020e-02, -3.666924539230310975e-02, -3.661834045496351053e-02, -3.656738342020994514e-02, -3.651637437784119311e-02, -3.646531341772715762e-02, -3.641420062980811612e-02, -3.636303610409402642e-02, -3.631181993066551900e-02, -3.626055219967286997e-02, -3.620923300133598033e-02, -3.615786242594439676e-02, -3.610644056385759609e-02, -3.605496750550370166e-02, -3.600344334138025348e-02, -3.595186816205390296e-02, -3.590024205815988551e-02, -3.584856512040238835e-02, -3.579683743955356517e-02, -3.574505910645488227e-02, -3.569323021201537688e-02, -3.564135084721198332e-02, -3.558942110309010892e-02, -3.553744107076247521e-02, -3.548541084140941632e-02, -3.543333050627927444e-02, -3.538120015668696355e-02, -3.532901988401469795e-02, -3.527678977971193675e-02, -3.522450993529491897e-02, -3.517218044234631663e-02, -3.511980139251545674e-02, -3.506737287751797438e-02, -3.501489498913577803e-02, -3.496236781921686909e-02, -3.490979145967466196e-02, -3.485716600248919134e-02, -3.480449153970532894e-02, -3.475176816343330394e-02, -3.469899596584949397e-02, -3.464617503919444758e-02, -3.459330547577387643e-02, -3.454038736795862069e-02, -3.448742080818389261e-02, -3.443440588894962351e-02, -3.438134270281945765e-02, -3.432823134242207752e-02, -3.427507190044962876e-02, -3.422186446965800460e-02, -3.416860914286725531e-02, -3.411530601296080406e-02, -3.406195517288525959e-02, -3.400855671565031213e-02, -3.395511073432931626e-02, -3.390161732205826395e-02, -3.384807657203560416e-02, -3.379448857752277713e-02, -3.374085343184367314e-02, -3.368717122838369576e-02, -3.363344206059157293e-02, -3.357966602197722666e-02, -3.352584320611257107e-02, -3.347197370663089477e-02, -3.341805761722763807e-02, -3.336409503165903984e-02, -3.331008604374239429e-02, -3.325603074735668241e-02, -3.320192923644105926e-02, -3.314778160499579074e-02, -3.309358794708121276e-02, -3.303934835681884147e-02, -3.298506292838979115e-02, -3.293073175603512814e-02, -3.287635493405639819e-02, -3.282193255681456479e-02, -3.276746471873018263e-02, -3.271295151428317560e-02, -3.265839303801292004e-02, -3.260378938451742592e-02, -3.254914064845468996e-02, -3.249444692454035027e-02, -3.243970830754940027e-02, -3.238492489231491189e-02, -3.233009677372865320e-02, -3.227522404674018630e-02, -3.222030680635718652e-02, -3.216534514764517183e-02, -3.211033916572745422e-02, -3.205528895578491771e-02, -3.200019461305517871e-02, -3.194505623283402235e-02, -3.188987391047352210e-02, -3.183464774138287240e-02, -3.177937782102797926e-02, -3.172406424493137006e-02, -3.166870710867169397e-02, -3.161330650788432561e-02, -3.155786253826025484e-02, -3.150237529554669735e-02, -3.144684487554608165e-02, -3.139127137411726332e-02, -3.133565488717402620e-02, -3.127999551068513795e-02, -3.122429334067532147e-02, -3.116854847322352018e-02, -3.111276100446369944e-02, -3.105693103058425678e-02, -3.100105864782849024e-02, -3.094514395249378658e-02, -3.088918704093155179e-02, -3.083318800954714181e-02, -3.077714695480009838e-02, -3.072106397320309087e-02, -3.066493916132280451e-02, -3.060877261577903824e-02, -3.055256443324459031e-02, -3.049631471044535538e-02, -3.044002354416048758e-02, -3.038369103122134235e-02, -3.032731726851167764e-02, -3.027090235296842763e-02, -3.021444638157981880e-02, -3.015794945138672994e-02, -3.010141165948118300e-02, -3.004483310300805690e-02, -2.998821387916277004e-02, -2.993155408519271657e-02, -2.987485381839583357e-02, -2.981811317612238083e-02, -2.976133225577189817e-02, -2.970451115479609203e-02, -2.964764997069638600e-02, -2.959074880102501373e-02, -2.953380774338417586e-02, -2.947682689542663673e-02, -2.941980635485442336e-02, -2.936274621941985588e-02, -2.930564658692479119e-02, -2.924850755522033496e-02, -2.919132922220688334e-02, -2.913411168583394592e-02, -2.907685504410026378e-02, -2.901955939505310167e-02, -2.896222483678813006e-02, -2.890485146745005660e-02, -2.884743938523162340e-02, -2.878998868837335384e-02, -2.873249947516423250e-02, -2.867497184394086907e-02, -2.861740589308731098e-02, -2.855980172103539036e-02, -2.850215942626417587e-02, -2.844447910729988940e-02, -2.838676086271543775e-02, -2.832900479113123829e-02, -2.827121099121358838e-02, -2.821337956167583455e-02, -2.815551060127729349e-02, -2.809760420882383147e-02, -2.803966048316691370e-02, -2.798167952320389229e-02, -2.792366142787823871e-02, -2.786560629617858276e-02, -2.780751422713871948e-02, -2.774938531983806370e-02, -2.769121967340070975e-02, -2.763301738699584786e-02, -2.757477855983684820e-02, -2.751650329118246127e-02, -2.745819168033520816e-02, -2.739984382664168577e-02, -2.734145982949298323e-02, -2.728303978832385263e-02, -2.722458380261262578e-02, -2.716609197188109628e-02, -2.710756439569492540e-02, -2.704900117366239309e-02, -2.699040240543510924e-02, -2.693176819070773609e-02, -2.687309862921729089e-02, -2.681439382074338879e-02, -2.675565386510812479e-02, -2.669687886217619183e-02, -2.663806891185335757e-02, -2.657922411408798063e-02, -2.652034456887040342e-02, -2.646143037623177943e-02, -2.640248163624494757e-02, -2.634349844902424478e-02, -2.628448091472486425e-02, -2.622542913354269922e-02, -2.616634320571444364e-02, -2.610722323151778990e-02, -2.604806931127021455e-02, -2.598888154532970687e-02, -2.592966003409446357e-02, -2.587040487800232325e-02, -2.581111617753086701e-02, -2.575179403319724503e-02, -2.569243854555839160e-02, -2.563304981521020640e-02, -2.557362794278690912e-02, -2.551417302896310038e-02, -2.545468517445109019e-02, -2.539516448000166474e-02, -2.533561104640494333e-02, -2.527602497448836957e-02, -2.521640636511779041e-02, -2.515675531919692870e-02, -2.509707193766737288e-02, -2.503735632150815363e-02, -2.497760857173558433e-02, -2.491782878940358714e-02, -2.485801707560287427e-02, -2.479817353146093403e-02, -2.473829825814229458e-02, -2.467839135684805549e-02, -2.461845292881547839e-02, -2.455848307531826452e-02, -2.449848189766604817e-02, -2.443844949720442791e-02, -2.437838597531458151e-02, -2.431829143341385571e-02, -2.425816597295439581e-02, -2.419800969542362790e-02, -2.413782270234415134e-02, -2.407760509527377343e-02, -2.401735697580469411e-02, -2.395707844556342614e-02, -2.389676960621172491e-02, -2.383643055944491274e-02, -2.377606140699237494e-02, -2.371566225061751132e-02, -2.365523319211790959e-02, -2.359477433332410681e-02, -2.353428577610001959e-02, -2.347376762234371431e-02, -2.341321997398514848e-02, -2.335264293298753083e-02, -2.329203660134737675e-02, -2.323140108109328708e-02, -2.317073647428612507e-02, -2.311004288301913082e-02, -2.304932040941803234e-02, -2.298856915563980002e-02, -2.292778922387336132e-02, -2.286698071633946547e-02, -2.280614373528992364e-02, -2.274527838300800797e-02, -2.268438476180755642e-02, -2.262346297403411768e-02, -2.256251312206335180e-02, -2.250153530830145687e-02, -2.244052963518553684e-02, -2.237949620518258145e-02, -2.231843512078911587e-02, -2.225734648453248435e-02, -2.219623039896925429e-02, -2.213508696668558401e-02, -2.207391629029688274e-02, -2.201271847244818183e-02, -2.195149361581328826e-02, -2.189024182309450006e-02, -2.182896319702378948e-02, -2.176765784036085657e-02, -2.170632585589394106e-02, -2.164496734643948581e-02, -2.158358241484237966e-02, -2.152217116397480909e-02, -2.146073369673680981e-02, -2.139927011605629106e-02, -2.133778052488839380e-02, -2.127626502621478288e-02, -2.121472372304518059e-02, -2.115315671841558332e-02, -2.109156411538871609e-02, -2.102994601705375152e-02, -2.096830252652683371e-02, -2.090663374694952045e-02, -2.084493978148954652e-02, -2.078322073334104222e-02, -2.072147670572319425e-02, -2.065970780188100195e-02, -2.059791412508449326e-02, -2.053609577862954005e-02, -2.047425286583638010e-02, -2.041238549005013753e-02, -2.035049375464119750e-02, -2.028857776300379417e-02, -2.022663761855675660e-02, -2.016467342474313057e-02, -2.010268528502983515e-02, -2.004067330290755858e-02, -1.997863758189099767e-02, -1.991657822551807025e-02, -1.985449533734999147e-02, -1.979238902097112812e-02, -1.973025937998910267e-02, -1.966810651803411678e-02, -1.960593053875909694e-02, -1.954373154583903538e-02, -1.948150964297223897e-02, -1.941926493387824415e-02, -1.935699752229863568e-02, -1.929470751199749770e-02, -1.923239500675985592e-02, -1.917006011039245478e-02, -1.910770292672329951e-02, -1.904532355960157283e-02, -1.898292211289729498e-02, -1.892049869050159774e-02, -1.885805339632592309e-02, -1.879558633430226250e-02, -1.873309760838282739e-02, -1.867058732254023301e-02, -1.860805558076674554e-02, -1.854550248707449722e-02, -1.848292814549510471e-02, -1.842033266008016520e-02, -1.835771613489980622e-02, -1.829507867404362928e-02, -1.823242038162045664e-02, -1.816974136175735291e-02, -1.810704171860033282e-02, -1.804432155631345222e-02, -1.798158097907985933e-02, -1.791882009109950838e-02, -1.785603899659166799e-02, -1.779323779979246484e-02, -1.773041660495580304e-02, -1.766757551635288886e-02, -1.760471463827283090e-02, -1.754183407502103720e-02, -1.747893393092003061e-02, -1.741601431030951816e-02, -1.735307531754527038e-02, -1.729011705699954465e-02, -1.722713963306089432e-02, -1.716414315013422426e-02, -1.710112771263999284e-02, -1.703809342501439589e-02, -1.697504039170918619e-02, -1.691196871719195804e-02, -1.684887850594492253e-02, -1.678576986246566385e-02, -1.672264289126654604e-02, -1.665949769687468524e-02, -1.659633438383168250e-02, -1.653315305669377649e-02, -1.646995382003116695e-02, -1.640673677842798689e-02, -1.634350203648270161e-02, -1.628024969880701237e-02, -1.621697987002639410e-02, -1.615369265477939464e-02, -1.609038815771841185e-02, -1.602706648350815319e-02, -1.596372773682659674e-02, -1.590037202236413427e-02, -1.583699944482412983e-02, -1.577361010892184764e-02, -1.571020411938495870e-02, -1.564678158095297172e-02, -1.558334259837749342e-02, -1.551988727642148770e-02, -1.545641571985987249e-02, -1.539292803347857598e-02, -1.532942432207448982e-02, -1.526590469045625668e-02, -1.520236924344264481e-02, -1.513881808586339459e-02, -1.507525132255839277e-02, -1.501166905837857980e-02, -1.494807139818439892e-02, -1.488445844684625936e-02, -1.482083030924507584e-02, -1.475718709027074894e-02, -1.469352889482287462e-02, -1.462985582781017868e-02, -1.456616799415125750e-02, -1.450246549877261780e-02, -1.443874844661010258e-02, -1.437501694260854765e-02, -1.431127109172072691e-02, -1.424751099890771838e-02, -1.418373676913921647e-02, -1.411994850739249109e-02, -1.405614631865258202e-02, -1.399233030791221730e-02, -1.392850058017185318e-02, -1.386465724043894551e-02, -1.380080039372780752e-02, -1.373693014506054653e-02, -1.367304659946530845e-02, -1.360914986197704277e-02, -1.354524003763706366e-02, -1.348131723149343514e-02, -1.341738154860000823e-02, -1.335343309401598386e-02, -1.328947197280742724e-02, -1.322549829004533023e-02, -1.316151215080605882e-02, -1.309751366017191006e-02, -1.303350292322954899e-02, -1.296948004507087783e-02, -1.290544513079237669e-02, -1.284139828549563968e-02, -1.277733961428614146e-02, -1.271326922227353218e-02, -1.264918721457230361e-02, -1.258509369630010644e-02, -1.252098877257860204e-02, -1.245687254853295074e-02, -1.239274512929206679e-02, -1.232860661998778744e-02, -1.226445712575503430e-02, -1.220029675173165892e-02, -1.213612560305843933e-02, -1.207194378487831329e-02, -1.200775140233727167e-02, -1.194354856058302793e-02, -1.187933536476549513e-02, -1.181511192003625865e-02, -1.175087833154930643e-02, -1.168663470445957357e-02, -1.162238114392332745e-02, -1.155811775509874538e-02, -1.149384464314446436e-02, -1.142956191322008937e-02, -1.136526967048594704e-02, -1.130096802010333544e-02, -1.123665706723343469e-02, -1.117233691703769377e-02, -1.110800767467824343e-02, -1.104366944531606949e-02, -1.097932233411241451e-02, -1.091496644622841523e-02, -1.085060188682410165e-02, -1.078622876105876996e-02, -1.072184717409078655e-02, -1.065745723107765219e-02, -1.059305903717531507e-02, -1.052865269753811527e-02, -1.046423831731932604e-02, -1.039981600166994466e-02, -1.033538585573907584e-02, -1.027094798467360556e-02, -1.020650249361865214e-02, -1.014204948771635188e-02, -1.007758907210609851e-02, -1.001312135192514163e-02, -9.948646432307372417e-03, -9.884164418383004427e-03, -9.819675415280018638e-03, -9.755179528122222277e-03, -9.690676862029965269e-03, -9.626167522119572981e-03, -9.561651613504040109e-03, -9.497129241291559637e-03, -9.432600510586112638e-03, -9.368065526487751038e-03, -9.303524394091213304e-03, -9.238977218486800480e-03, -9.174424104759512297e-03, -9.109865157989838202e-03, -9.045300483252371321e-03, -8.980730185616229988e-03, -8.916154370145463678e-03, -8.851573141897941047e-03, -8.786986605925008187e-03, -8.722394867272940597e-03, -8.657798030980965592e-03, -8.593196202082035995e-03, -8.528589485602325326e-03, -8.463977986561680572e-03, -8.399361809972463386e-03, -8.334741060839808563e-03, -8.270115844162231195e-03, -8.205486264930100110e-03, -8.140852428126387277e-03, -8.076214438726031161e-03, -8.011572401696554283e-03, -7.946926421996854117e-03, -7.882276604577373100e-03, -7.817623054380778633e-03, -7.752965876340470359e-03, -7.688305175381190786e-03, -7.623641056418816245e-03, -7.558973624359974393e-03, -7.494302984102019921e-03, -7.429629240532659856e-03, -7.364952498530531223e-03, -7.300272862963867043e-03, -7.235590438690981188e-03, -7.170905330560518182e-03, -7.106217643410368996e-03, -7.041527482068092592e-03, -6.976834951350374681e-03, -6.912140156063751109e-03, -6.847443201003160229e-03, -6.782744190952462449e-03, -6.718043230684689164e-03, -6.653340424960960293e-03, -6.588635878530867650e-03, -6.523929696132237284e-03, -6.459221982490927390e-03, -6.394512842320677383e-03, -6.329802380322737537e-03, -6.265090701186483944e-03, -6.200377909588035072e-03, -6.135664110190835498e-03, -6.070949407645822443e-03, -6.006233906590314683e-03, -5.941517711648513882e-03, -5.876800927430974632e-03, -5.812083658535240234e-03, -5.747366009544461855e-03, -5.682648085027852160e-03, -5.617929989541111183e-03, -5.553211827625044623e-03, -5.488493703806264674e-03, -5.423775722596536029e-03, -5.359057988493633705e-03, -5.294340605979071419e-03, -5.229623679520573575e-03, -5.164907313569860881e-03, -5.100191612563402359e-03, -5.035476680921878445e-03, -4.970762623050782071e-03, -4.906049543339124561e-03, -4.841337546160012426e-03, -4.776626735870106999e-03, -4.711917216810194292e-03, -4.647209093303956810e-03, -4.582502469658318763e-03, -4.517797450163835507e-03, -4.453094139093430673e-03, -4.388392640702985098e-03, -4.323693059230827689e-03, -4.258995498898197722e-03, -4.194300063908109472e-03, -4.129606858445835325e-03, -4.064915986678615221e-03, -4.000227552755449348e-03, -3.935541660806759871e-03, -3.870858414944976841e-03, -3.806177919263283548e-03, -3.741500277836154725e-03, -3.676825594718827889e-03, -3.612153973947908325e-03, -3.547485519540059806e-03, -3.482820335492442607e-03, -3.418158525783027060e-03, -3.353500194369441259e-03, -3.288845445189410820e-03, -3.224194382160329962e-03, -3.159547109179780631e-03, -3.094903730124285227e-03, -3.030264348849872127e-03, -2.965629069191749994e-03, -2.900997994964102638e-03, -2.836371229959779375e-03, -2.771748877950856640e-03, -2.707131042687352558e-03, -2.642517827897668432e-03, -2.577909337288904895e-03, -2.513305674545664083e-03, -2.448706943330570922e-03, -2.384113247283773957e-03, -2.319524690023501770e-03, -2.254941375144818745e-03, -2.190363406220162401e-03, -2.125790886798864174e-03, -2.061223920407661593e-03, -1.996662610549474002e-03, -1.932107060703808481e-03, -1.867557374327264656e-03, -1.803013654851618906e-03, -1.738476005685240990e-03, -1.673944530212795453e-03, -1.609419331794152003e-03, -1.544900513764770186e-03, -1.480388179436079726e-03, -1.415882432094240414e-03, -1.351383375000685290e-03, -1.286891111391623866e-03, -1.222405744478584442e-03, -1.157927377447177031e-03, -1.093456113457471311e-03, -1.028992055644374582e-03, -9.645353071163892660e-04, -9.000859709561837398e-04, -8.356441502200490437e-04, -7.712099479384793618e-04, -7.067834671150989871e-04, -6.423648107263261109e-04, -5.779540817228281469e-04, -5.135513830275609520e-04, -4.491568175363427483e-04, -3.847704881182048629e-04, -3.203924976141806196e-04, -2.560229488378440790e-04, -1.916619445748020357e-04, -1.273095875832455247e-04, -6.296598059271490153e-05, 1.368773695521595375e-06, 6.569457260809090534e-05, 1.300113135007512370e-04, 1.943188937578347144e-04, 2.586172107927647477e-04, 3.229061620475014768e-04, 3.871856449937751462e-04, 4.514555571325273072e-04, 5.157157959942533986e-04, 5.799662591391615283e-04, 6.442068441575081418e-04, 7.084374486690463808e-04, 7.726579703242520986e-04, 8.368683068037781813e-04, 9.010683558189585933e-04, 9.652580151112673604e-04, 1.029437182453525395e-03, 1.093605755649563419e-03, 1.157763632533802484e-03, 1.221910710972511430e-03, 1.286046888863245268e-03, 1.350172064135354323e-03, 1.414286134749435193e-03, 1.478388998698559800e-03, 1.542480554007905026e-03, 1.606560698734183076e-03, 1.670629330967581330e-03, 1.734686348830340738e-03, 1.798731650477076961e-03, 1.862765134095820336e-03, 1.926786697907475077e-03, 1.990796240166327769e-03, 2.054793659159503093e-03, 2.118778853208168160e-03, 2.182751720667175811e-03, 2.246712159924674299e-03, 2.310660069403361501e-03, 2.374595347559899008e-03, 2.438517892885416500e-03, 2.502427603905002605e-03, 2.566324379178898385e-03, 2.630208117302123942e-03, 2.694078716903934578e-03, 2.757936076649729427e-03, 2.821780095239658902e-03, 2.885610671408890982e-03, 2.949427703928724463e-03, 3.013231091605993953e-03, 3.077020733283603732e-03, 3.140796527839926234e-03, 3.204558374190111334e-03, 3.268306171285630547e-03, 3.332039818113934418e-03, 3.395759213699660328e-03, 3.459464257104122049e-03, 3.523154847425741254e-03, 3.586830883799560065e-03, 3.650492265398468366e-03, 3.714138891432767955e-03, 3.777770661149817358e-03, 3.841387473835119505e-03, 3.904989228812598846e-03, 3.968575825443213141e-03, 4.032147163126806148e-03, 4.095703141301461001e-03, 4.159243659443955139e-03, 4.222768617069220382e-03, 4.286277913731576308e-03, 4.349771449024329543e-03, 4.413249122579430278e-03, 4.476710834068640607e-03, 4.540156483203047072e-03, 4.603585969733505617e-03, 4.666999193450111633e-03, 4.730396054183446351e-03, 4.793776451804156180e-03, 4.857140286222572795e-03, 4.920487457389996835e-03, 4.983817865298086416e-03, 5.047131409979173713e-03, 5.110427991506480069e-03, 5.173707509994202730e-03, 5.236969865597899086e-03, 5.300214958513922020e-03, 5.363442688980601253e-03, 5.426652957277920686e-03, 5.489845663727074311e-03, 5.553020708691745570e-03, 5.616177992577526222e-03, 5.679317415832409004e-03, 5.742438878946252469e-03, 5.805542282452011774e-03, 5.868627526925284180e-03, 5.931694512984070529e-03, 5.994743141289830823e-03, 6.057773312547066157e-03, 6.120784927503513870e-03, 6.183777886950452864e-03, 6.246752091722726150e-03, 6.309707442699136366e-03, 6.372643840801868985e-03, 6.435561186997746513e-03, 6.498459382297738438e-03, 6.561338327756758258e-03, 6.624197924474703458e-03, 6.687038073595977586e-03, 6.749858676310065315e-03, 6.812659633850832487e-03, 6.875440847497810669e-03, 6.938202218575891846e-03, 7.000943648454801063e-03, 7.063665038550390532e-03, 7.126366290324140026e-03, 7.189047305283537657e-03, 7.251707984981398993e-03, 7.314348231017867193e-03, 7.376967945038812730e-03, 7.439567028736311302e-03, 7.502145383849630894e-03, 7.564702912164714826e-03, 7.627239515514104562e-03, 7.689755095777849568e-03, 7.752249554883071901e-03, 7.814722794804518716e-03, 7.877174717563956846e-03, 7.939605225231356755e-03, 8.002014219924510896e-03, 8.064401603808783042e-03, 8.126767279098060653e-03, 8.189111148054534564e-03, 8.251433112988855109e-03, 8.313733076259863242e-03, 8.376010940275445751e-03, 8.438266607492894353e-03, 8.500499980417547397e-03, 8.562710961604604390e-03, 8.624899453658598641e-03, 8.687065359233045111e-03, 8.749208581031654719e-03, 8.811329021807742801e-03, 8.873426584364688813e-03, 8.935501171555493977e-03, 8.997552686283884563e-03, 9.059581031503999640e-03, 9.121586110219957397e-03, 9.183567825487114547e-03, 9.245526080411436629e-03, 9.307460778150101685e-03, 9.369371821910820256e-03, 9.431259114953131212e-03, 9.493122560587858791e-03, 9.554962062177313822e-03, 9.616777523135574754e-03, 9.678568846928770411e-03, 9.740335937074462436e-03, 9.802078697142956737e-03, 9.863797030756590520e-03, 9.925490841590445257e-03, 9.987160033371588613e-03, 1.004880450988042059e-02, 1.011042417495016353e-02, 1.017201893246654984e-02, 1.023358868636916295e-02, 1.029513334065049190e-02, 1.035665279935695307e-02, 1.041814696658786323e-02, 1.047961574649685680e-02, 1.054105904329158579e-02, 1.060247676123296165e-02, 1.066386880463718496e-02, 1.072523507787426569e-02, 1.078657548536839268e-02, 1.084788993159889817e-02, 1.090917832109993511e-02, 1.097044055845996895e-02, 1.103167654832316012e-02, 1.109288619538873269e-02, 1.115406940441131776e-02, 1.121522608020067251e-02, 1.127635612762267758e-02, 1.133745945159883931e-02, 1.139853595710678923e-02, 1.145958554917973250e-02, 1.152060813290761536e-02, 1.158160361343671743e-02, 1.164257189596945921e-02, 1.170351288576509767e-02, 1.176442648814032821e-02, 1.182531260846774596e-02, 1.188617115217767244e-02, 1.194700202475779474e-02, 1.200780513175249940e-02, 1.206858037876435558e-02, 1.212932767145331533e-02, 1.219004691553746654e-02, 1.225073801679215160e-02, 1.231140088105141597e-02, 1.237203541420745651e-02, 1.243264152221085043e-02, 1.249321911107026915e-02, 1.255376808685365955e-02, 1.261428835568756401e-02, 1.267477982375720541e-02, 1.273524239730721222e-02, 1.279567598264138434e-02, 1.285608048612283533e-02, 1.291645581417423354e-02, 1.297680187327810743e-02, 1.303711856997626442e-02, 1.309740581087086818e-02, 1.315766350262413328e-02, 1.321789155195855769e-02, 1.327808986565658968e-02, 1.333825835056158884e-02, 1.339839691357762319e-02, 1.345850546166904062e-02, 1.351858390186164681e-02, 1.357863214124213277e-02, 1.363865008695849985e-02, 1.369863764621963992e-02, 1.375859472629644385e-02, 1.381852123452130716e-02, 1.387841707828829305e-02, 1.393828216505343248e-02, 1.399811640233501568e-02, 1.405791969771289646e-02, 1.411769195882979500e-02, 1.417743309339090062e-02, 1.423714300916388044e-02, 1.429682161397890366e-02, 1.435646881572930252e-02, 1.441608452237164856e-02, 1.447566864192501718e-02, 1.453522108247232332e-02, 1.459474175215975424e-02, 1.465423055919728990e-02, 1.471368741185797961e-02, 1.477311221847935757e-02, 1.483250488746279232e-02, 1.489186532727362899e-02, 1.495119344644165772e-02, 1.501048915356105115e-02, 1.506975235729022568e-02, 1.512898296635256483e-02, 1.518818088953624405e-02, 1.524734603569456205e-02, 1.530647831374526077e-02, 1.536557763267192532e-02, 1.542464390152348784e-02, 1.548367702941385975e-02, 1.554267692552309919e-02, 1.560164349909679352e-02, 1.566057665944674618e-02, 1.571947631595015105e-02, 1.577834237805098364e-02, 1.583717475525943039e-02, 1.589597335715183662e-02, 1.595473809337118881e-02, 1.601346887362788129e-02, 1.607216560769811689e-02, 1.613082820542568324e-02, 1.618945657672152955e-02, 1.624805063156369370e-02, 1.630661027999748269e-02, 1.636513543213596183e-02, 1.642362599816000329e-02, 1.648208188831769630e-02, 1.654050301292562739e-02, 1.659888928236821423e-02, 1.665724060709834753e-02, 1.671555689763668320e-02, 1.677383806457279775e-02, 1.683208401856492453e-02, 1.689029467033959647e-02, 1.694846993069271113e-02, 1.700660971048877437e-02, 1.706471392066165327e-02, 1.712278247221449973e-02, 1.718081527621979562e-02, 1.723881224381957483e-02, 1.729677328622537813e-02, 1.735469831471887076e-02, 1.741258724065141220e-02, 1.747043997544433722e-02, 1.752825643058949362e-02, 1.758603651764882592e-02, 1.764378014825504146e-02, 1.770148723411074654e-02, 1.775915768699002154e-02, 1.781679141873760905e-02, 1.787438834126882370e-02, 1.793194836657062419e-02, 1.798947140670089859e-02, 1.804695737378920334e-02, 1.810440618003624283e-02, 1.816181773771462921e-02, 1.821919195916886502e-02, 1.827652875681473610e-02, 1.833382804314074438e-02, 1.839108973070740713e-02, 1.844831373214711120e-02, 1.850549996016511226e-02, 1.856264832753910798e-02, 1.861975874711960244e-02, 1.867683113182946192e-02, 1.873386539466499745e-02, 1.879086144869537844e-02, 1.884781920706292066e-02, 1.890473858298330825e-02, 1.896161948974575337e-02, 1.901846184071319737e-02, 1.907526554932162735e-02, 1.913203052908175883e-02, 1.918875669357802613e-02, 1.924544395646841585e-02, 1.930209223148566730e-02, 1.935870143243695676e-02, 1.941527147320348465e-02, 1.947180226774128040e-02, 1.952829373008137942e-02, 1.958474577432950045e-02, 1.964115831466596226e-02, 1.969753126534676615e-02, 1.975386454070311368e-02, 1.981015805514102501e-02, 1.986641172314269899e-02, 1.992262545926549305e-02, 1.997879917814304740e-02, 2.003493279448409839e-02, 2.009102622307387329e-02, 2.014707937877409719e-02, 2.020309217652196607e-02, 2.025906453133157273e-02, 2.031499635829348005e-02, 2.037088757257453711e-02, 2.042673808941869451e-02, 2.048254782414686212e-02, 2.053831669215672867e-02, 2.059404460892302544e-02, 2.064973148999798766e-02, 2.070537725101138926e-02, 2.076098180766997731e-02, 2.081654507575843999e-02, 2.087206697113944479e-02, 2.092754740975324643e-02, 2.098298630761810321e-02, 2.103838358083039844e-02, 2.109373914556500126e-02, 2.114905291807493704e-02, 2.120432481469178634e-02, 2.125955475182600418e-02, 2.131474264596618096e-02, 2.136988841368029843e-02, 2.142499197161525787e-02, 2.148005323649706741e-02, 2.153507212513070326e-02, 2.159004855440067872e-02, 2.164498244127135290e-02, 2.169987370278587610e-02, 2.175472225606790017e-02, 2.180952801832057239e-02, 2.186429090682726409e-02, 2.191901083895080385e-02, 2.197368773213496593e-02, 2.202832150390363411e-02, 2.208291207186054150e-02, 2.213745935369113710e-02, 2.219196326716087533e-02, 2.224642373011581978e-02, 2.230084066048340641e-02, 2.235521397627197523e-02, 2.240954359557122827e-02, 2.246382943655168135e-02, 2.251807141746572580e-02, 2.257226945664729534e-02, 2.262642347251155039e-02, 2.268053338355583912e-02, 2.273459910835921166e-02, 2.278862056558310020e-02, 2.284259767397031279e-02, 2.289653035234661543e-02, 2.295041851962010410e-02, 2.300426209478064615e-02, 2.305806099690147978e-02, 2.311181514513866928e-02, 2.316552445873028623e-02, 2.321918885699807145e-02, 2.327280825934665079e-02, 2.332638258526398278e-02, 2.337991175432082430e-02, 2.343339568617197263e-02, 2.348683430055568608e-02, 2.354022751729339599e-02, 2.359357525629088292e-02, 2.364687743753763130e-02, 2.370013398110721800e-02, 2.375334480715705562e-02, 2.380650983592918005e-02, 2.385962898774990001e-02, 2.391270218302966530e-02, 2.396572934226406243e-02, 2.401871038603314856e-02, 2.407164523500179149e-02, 2.412453380991977023e-02, 2.417737603162213242e-02, 2.423017182102873632e-02, 2.428292109914501756e-02, 2.433562378706176019e-02, 2.438827980595561010e-02, 2.444088907708792668e-02, 2.449345152180675347e-02, 2.454596706154555524e-02, 2.459843561782401947e-02, 2.465085711224765386e-02, 2.470323146650820617e-02, 2.475555860238407707e-02, 2.480783844173963665e-02, 2.486007090652623402e-02, 2.491225591878147919e-02, 2.496439340063012075e-02, 2.501648327428358104e-02, 2.506852546204049043e-02, 2.512051988628619462e-02, 2.517246646949351796e-02, 2.522436513422279120e-02, 2.527621580312165717e-02, 2.532801839892502571e-02, 2.537977284445587164e-02, 2.543147906262482882e-02, 2.548313697643064812e-02, 2.553474650895951395e-02, 2.558630758338611977e-02, 2.563782012297365770e-02, 2.568928405107293728e-02, 2.574069929112395017e-02, 2.579206576665484321e-02, 2.584338340128253600e-02, 2.589465211871266187e-02, 2.594587184274011610e-02, 2.599704249724808097e-02, 2.604816400620954542e-02, 2.609923629368640988e-02, 2.615025928382997897e-02, 2.620123290088078108e-02, 2.625215706916932470e-02, 2.630303171311541149e-02, 2.635385675722871218e-02, 2.640463212610890190e-02, 2.645535774444541383e-02, 2.650603353701826495e-02, 2.655665942869674459e-02, 2.660723534444155505e-02, 2.665776120930292079e-02, 2.670823694842231616e-02, 2.675866248703104300e-02, 2.680903775045221163e-02, 2.685936266409863493e-02, 2.690963715347486143e-02, 2.695986114417627325e-02, 2.701003456188947119e-02, 2.706015733239209783e-02, 2.711022938155348283e-02, 2.716025063533441392e-02, 2.721022101978688018e-02, 2.726014046105520658e-02, 2.731000888537501656e-02, 2.735982621907419657e-02, 2.740959238857220218e-02, 2.745930732038124114e-02, 2.750897094110518748e-02, 2.755858317744065353e-02, 2.760814395617632380e-02, 2.765765320419369400e-02, 2.770711084846686281e-02, 2.775651681606263604e-02, 2.780587103414065148e-02, 2.785517342995381951e-02, 2.790442393084746620e-02, 2.795362246426062736e-02, 2.800276895772571203e-02, 2.805186333886787106e-02, 2.810090553540634667e-02, 2.814989547515357043e-02, 2.819883308601616942e-02, 2.824771829599385595e-02, 2.829655103318080497e-02, 2.834533122576504346e-02, 2.839405880202827345e-02, 2.844273369034719390e-02, 2.849135581919207127e-02, 2.853992511712797470e-02, 2.858844151281448795e-02, 2.863690493500548745e-02, 2.868531531255010328e-02, 2.873367257439157080e-02, 2.878197664956852128e-02, 2.883022746721462456e-02, 2.887842495655824210e-02, 2.892656904692334635e-02, 2.897465966772911489e-02, 2.902269674849022874e-02, 2.907068021881652198e-02, 2.911861000841382482e-02, 2.916648604708366524e-02, 2.921430826472300873e-02, 2.926207659132511879e-02, 2.930979095697915440e-02, 2.935745129187036437e-02, 2.940505752628004218e-02, 2.945260959058615055e-02, 2.950010741526296748e-02, 2.954755093088088161e-02, 2.959494006810742608e-02, 2.964227475770641468e-02, 2.968955493053865649e-02, 2.973678051756176513e-02, 2.978395144983049872e-02, 2.983106765849674949e-02, 2.987812907480911356e-02, 2.992513563011404629e-02, 2.997208725585529671e-02, 3.001898388357359879e-02, 3.006582544490793776e-02, 3.011261187159435318e-02, 3.015934309546741687e-02, 3.020601904845861274e-02, 3.025263966259785289e-02, 3.029920487001376908e-02, 3.034571460293175940e-02, 3.039216879367665283e-02, 3.043856737467112716e-02, 3.048491027843603859e-02, 3.053119743759135155e-02, 3.057742878485526089e-02, 3.062360425304504891e-02, 3.066972377507631506e-02, 3.071578728396373928e-02, 3.076179471282143238e-02, 3.080774599486198542e-02, 3.085364106339748974e-02, 3.089947985183929061e-02, 3.094526229369831682e-02, 3.099098832258440767e-02, 3.103665787220753411e-02, 3.108227087637690372e-02, 3.112782726900189395e-02, 3.117332698409138250e-02, 3.121876995575450717e-02, 3.126415611819992335e-02, 3.130948540573679634e-02, 3.135475775277440924e-02, 3.139997309382257934e-02, 3.144513136349094684e-02, 3.149023249648997408e-02, 3.153527642763105654e-02, 3.158026309182550978e-02, 3.162519242408606129e-02, 3.167006435952588600e-02, 3.171487883335926544e-02, 3.175963578090131717e-02, 3.180433513756870251e-02, 3.184897683887896042e-02, 3.189356082045059076e-02, 3.193808701800440741e-02, 3.198255536736212268e-02, 3.202696580444675672e-02, 3.207131826528335228e-02, 3.211561268599881502e-02, 3.215984900282177483e-02, 3.220402715208228739e-02, 3.224814707021324278e-02, 3.229220869374910957e-02, 3.233621195932650377e-02, 3.238015680368463295e-02, 3.242404316366487987e-02, 3.246787097621123275e-02, 3.251164017836971620e-02, 3.255535070728968888e-02, 3.259900250022278873e-02, 3.264259549452338399e-02, 3.268612962764892022e-02, 3.272960483715996877e-02, 3.277302106071983828e-02, 3.281637823609502569e-02, 3.285967630115527172e-02, 3.290291519387399805e-02, 3.294609485232741219e-02, 3.298921521469563856e-02, 3.303227621926228125e-02, 3.307527780441442411e-02, 3.311821990864301235e-02, 3.316110247054295662e-02, 3.320392542881293874e-02, 3.324668872225566840e-02, 3.328939228977766812e-02, 3.333203607039020300e-02, 3.337462000320820521e-02, 3.341714402745118995e-02, 3.345960808244304030e-02, 3.350201210761241666e-02, 3.354435604249194486e-02, 3.358663982671948600e-02, 3.362886340003746338e-02, 3.367102670229293881e-02, 3.371312967343804284e-02, 3.375517225353014822e-02, 3.379715438273103723e-02, 3.383907600130822702e-02, 3.388093704963424796e-02, 3.392273746818726121e-02, 3.396447719755021910e-02, 3.400615617841196842e-02, 3.404777435156712551e-02, 3.408933165791527137e-02, 3.413082803846225616e-02, 3.417226343431958163e-02, 3.421363778670474115e-02, 3.425495103694086579e-02, 3.429620312645744601e-02, 3.433739399679038018e-02, 3.437852358958077420e-02, 3.441959184657687049e-02, 3.446059870963313204e-02, 3.450154412071029103e-02, 3.454242802187548755e-02, 3.458325035530281089e-02, 3.462401106327305661e-02, 3.466471008817310906e-02, 3.470534737249748869e-02, 3.474592285884720716e-02, 3.478643648993028081e-02, 3.482688820856180006e-02, 3.486727795766409593e-02, 3.490760568026685107e-02, 3.494787131950659320e-02, 3.498807481862772212e-02, 3.502821612098168391e-02, 3.506829517002767876e-02, 3.510831190933250134e-02, 3.514826628257057550e-02, 3.518815823352396122e-02, 3.522798770608292357e-02, 3.526775464424503764e-02, 3.530745899211663874e-02, 3.534710069391127502e-02, 3.538667969395122709e-02, 3.542619593666693212e-02, 3.546564936659675482e-02, 3.550503992838759809e-02, 3.554436756679496545e-02, 3.558363222668284309e-02, 3.562283385302319333e-02, 3.566197239089771709e-02, 3.570104778549576530e-02, 3.574005998211619156e-02, 3.577900892616650563e-02, 3.581789456316312320e-02, 3.585671683873138671e-02, 3.589547569860598170e-02, 3.593417108863036086e-02, 3.597280295475781958e-02, 3.601137124305038573e-02, 3.604987589967970085e-02, 3.608831687092702717e-02, 3.612669410318265772e-02, 3.616500754294701969e-02, 3.620325713682984170e-02, 3.624144283155083385e-02, 3.627956457393927137e-02, 3.631762231093448035e-02, 3.635561598958575447e-02, 3.639354555705210520e-02, 3.643141096060308753e-02, 3.646921214761834895e-02, 3.650694906558710207e-02, 3.654462166210971363e-02, 3.658222988489655270e-02, 3.661977368176833753e-02, 3.665725300065623971e-02, 3.669466778960253639e-02, 3.673201799675936130e-02, 3.676930357039021047e-02, 3.680652445886887364e-02, 3.684368061068030165e-02, 3.688077197442054395e-02, 3.691779849879598535e-02, 3.695476013262454645e-02, 3.699165682483517709e-02, 3.702848852446798122e-02, 3.706525518067427943e-02, 3.710195674271675459e-02, 3.713859315996962535e-02, 3.717516438191800082e-02, 3.721167035815951818e-02, 3.724811103840217075e-02, 3.728448637246636888e-02, 3.732079631028429462e-02, 3.735704080189966581e-02, 3.739321979746790259e-02, 3.742933324725643274e-02, 3.746538110164512186e-02, 3.750136331112498972e-02, 3.753727982629992410e-02, 3.757313059788566778e-02, 3.760891557671035973e-02, 3.764463471371400777e-02, 3.768028795994943225e-02, 3.771587526658191220e-02, 3.775139658488872729e-02, 3.778685186626005305e-02, 3.782224106219898158e-02, 3.785756412432041834e-02, 3.789282100435279604e-02, 3.792801165413693665e-02, 3.796313602562685630e-02, 3.799819407088898815e-02, 3.803318574210339670e-02, 3.806811099156269529e-02, 3.810296977167260818e-02, 3.813776203495237993e-02, 3.817248773403419254e-02, 3.820714682166398424e-02, 3.824173925070004781e-02, 3.827626497411521639e-02, 3.831072394499514255e-02, 3.834511611653915186e-02, 3.837944144206033997e-02, 3.841369987498523958e-02, 3.844789136885402164e-02, 3.848201587732093254e-02, 3.851607335415382222e-02, 3.855006375323475482e-02, 3.858398702855914131e-02, 3.861784313423687748e-02, 3.865163202449200391e-02, 3.868535365366219253e-02, 3.871900797619973189e-02, 3.875259494667109006e-02, 3.878611451975695623e-02, 3.881956665025220604e-02, 3.885295129306654688e-02, 3.888626840322361583e-02, 3.891951793586221481e-02, 3.895269984623520726e-02, 3.898581408971042717e-02, 3.901886062177004760e-02, 3.905183939801148280e-02, 3.908475037414656933e-02, 3.911759350600205881e-02, 3.915036874951986073e-02, 3.918307606075657756e-02, 3.921571539588410149e-02, 3.924828671118912177e-02, 3.928078996307370063e-02, 3.931322510805503739e-02, 3.934559210276566965e-02, 3.937789090395314717e-02, 3.941012146848074660e-02, 3.944228375332699960e-02, 3.947437771558567204e-02, 3.950640331246654813e-02, 3.953836050129470175e-02, 3.957024923951069778e-02, 3.960206948467088345e-02, 3.963382119444764512e-02, 3.966550432662874215e-02, 3.969711883911788974e-02, 3.972866468993483530e-02, 3.976014183721524042e-02, 3.979155023921041728e-02, 3.982288985428834860e-02, 3.985416064093236233e-02, 3.988536255774281086e-02, 3.991649556343535021e-02, 3.994755961684268164e-02, 3.997855467691326797e-02, 4.000948070271190260e-02, 4.004033765342011886e-02, 4.007112548833603044e-02, 4.010184416687374853e-02, 4.013249364856391610e-02, 4.016307389305453363e-02, 4.019358486010961989e-02, 4.022402650960966303e-02, 4.025439880155255723e-02, 4.028470169605281176e-02, 4.031493515334153704e-02, 4.034509913376676388e-02, 4.037519359779363770e-02, 4.040521850600443943e-02, 4.043517381909795400e-02, 4.046505949789062917e-02, 4.049487550331572899e-02, 4.052462179642362522e-02, 4.055429833838242182e-02, 4.058390509047671291e-02, 4.061344201410897747e-02, 4.064290907079907977e-02, 4.067230622218399178e-02, 4.070163343001853562e-02, 4.073089065617448851e-02, 4.076007786264156801e-02, 4.078919501152725863e-02, 4.081824206505596520e-02, 4.084721898557066438e-02, 4.087612573553148221e-02, 4.090496227751674874e-02, 4.093372857422188787e-02, 4.096242458846110351e-02, 4.099105028316581134e-02, 4.101960562138576988e-02, 4.104809056628857394e-02, 4.107650508116002935e-02, 4.110484912940359087e-02, 4.113312267454132670e-02, 4.116132568021341198e-02, 4.118945811017789976e-02, 4.121751992831149125e-02, 4.124551109860874476e-02, 4.127343158518309574e-02, 4.130128135226606573e-02, 4.132906036420743584e-02, 4.135676858547574636e-02, 4.138440598065821346e-02, 4.141197251445986188e-02, 4.143946815170489184e-02, 4.146689285733648478e-02, 4.149424659641535312e-02, 4.152152933412206481e-02, 4.154874103575521144e-02, 4.157588166673271968e-02, 4.160295119259079660e-02, 4.162994957898474846e-02, 4.165687679168924434e-02, 4.168373279659701863e-02, 4.171051755972068897e-02, 4.173723104719111177e-02, 4.176387322525881157e-02, 4.179044406029305131e-02, 4.181694351878247062e-02, 4.184337156733487773e-02, 4.186972817267697183e-02, 4.189601330165514115e-02, 4.192222692123483141e-02, 4.194836899850087203e-02, 4.197443950065736507e-02, 4.200043839502826809e-02, 4.202636564905619376e-02, 4.205222123030398496e-02, 4.207800510645344494e-02, 4.210371724530655863e-02, 4.212935761478400071e-02, 4.215492618292692589e-02, 4.218042291789587256e-02, 4.220584778797071418e-02, 4.223120076155160996e-02, 4.225648180715804725e-02, 4.228169089342957015e-02, 4.230682798912532849e-02, 4.233189306312473005e-02, 4.235688608442691322e-02, 4.238180702215042783e-02, 4.240665584553467843e-02, 4.243143252393841158e-02, 4.245613702684096491e-02, 4.248076932384108745e-02, 4.250532938465809152e-02, 4.252981717913126986e-02, 4.255423267722031194e-02, 4.257857584900459624e-02, 4.260284666468450165e-02, 4.262704509457988095e-02, 4.265117110913134446e-02, 4.267522467889990623e-02, 4.269920577456648436e-02, 4.272311436693288639e-02, 4.274695042692087943e-02, 4.277071392557330737e-02, 4.279440483405283491e-02, 4.281802312364284963e-02, 4.284156876574772566e-02, 4.286504173189194938e-02, 4.288844199372041088e-02, 4.291176952299937536e-02, 4.293502429161517170e-02, 4.295820627157499738e-02, 4.298131543500662705e-02, 4.300435175415914801e-02, 4.302731520140155169e-02, 4.305020574922435728e-02, 4.307302337023868888e-02, 4.309576803717644206e-02, 4.311843972289054056e-02, 4.314103840035463100e-02, 4.316356404266382535e-02, 4.318601662303341721e-02, 4.320839611480033898e-02, 4.323070249142237087e-02, 4.325293572647821716e-02, 4.327509579366783932e-02, 4.329718266681227556e-02, 4.331919631985362701e-02, 4.334113672685532132e-02, 4.336300386200154372e-02, 4.338479769959851379e-02, 4.340651821407276456e-02, 4.342816537997257198e-02, 4.344973917196782304e-02, 4.347123956484875984e-02, 4.349266653352808903e-02, 4.351402005303903892e-02, 4.353530009853669169e-02, 4.355650664529703286e-02, 4.357763966871831124e-02, 4.359869914431948462e-02, 4.361968504774129535e-02, 4.364059735474615925e-02, 4.366143604121744404e-02, 4.368220108316066275e-02, 4.370289245670275907e-02, 4.372351013809213510e-02, 4.374405410369883174e-02, 4.376452433001483400e-02, 4.378492079365330775e-02, 4.380524347134923807e-02, 4.382549233995963051e-02, 4.384566737646303225e-02, 4.386576855795947666e-02, 4.388579586167146857e-02, 4.390574926494226343e-02, 4.392562874523776167e-02, 4.394543428014544700e-02, 4.396516584737489297e-02, 4.398482342475687479e-02, 4.400440699024446567e-02, 4.402391652191318255e-02, 4.404335199795945954e-02, 4.406271339670245896e-02, 4.408200069658291254e-02, 4.410121387616348920e-02, 4.412035291412935711e-02, 4.413941778928728854e-02, 4.415840848056604845e-02, 4.417732496701667899e-02, 4.419616722781209706e-02, 4.421493524224776733e-02, 4.423362898974068924e-02, 4.425224844983031286e-02, 4.427079360217807402e-02, 4.428926442656784535e-02, 4.430766090290524234e-02, 4.432598301121865036e-02, 4.434423073165827400e-02, 4.436240404449614400e-02, 4.438050293012759523e-02, 4.439852736906944874e-02, 4.441647734196097624e-02, 4.443435282956366417e-02, 4.445215381276155370e-02, 4.446988027256074116e-02, 4.448753219008983600e-02, 4.450510954659954443e-02, 4.452261232346333558e-02, 4.454004050217674759e-02, 4.455739406435781091e-02, 4.457467299174671521e-02, 4.459187726620679471e-02, 4.460900686972280038e-02, 4.462606178440271104e-02, 4.464304199247658145e-02, 4.465994747629730560e-02, 4.467677821833955509e-02, 4.469353420120147913e-02, 4.471021540760275470e-02, 4.472682182038610621e-02, 4.474335342251692382e-02, 4.475981019708262509e-02, 4.477619212729356396e-02, 4.479249919648286421e-02, 4.480873138810563538e-02, 4.482488868573979851e-02, 4.484097107308594732e-02, 4.485697853396750090e-02, 4.487291105233014860e-02, 4.488876861224208592e-02, 4.490455119789465988e-02, 4.492025879360145996e-02, 4.493589138379894266e-02, 4.495144895304598737e-02, 4.496693148602431966e-02, 4.498233896753831701e-02, 4.499767138251514059e-02, 4.501292871600445084e-02, 4.502811095317873352e-02, 4.504321807933310551e-02, 4.505825007988568942e-02, 4.507320694037696140e-02, 4.508808864647020215e-02, 4.510289518395162178e-02, 4.511762653872988804e-02, 4.513228269683703525e-02, 4.514686364442704880e-02, 4.516136936777732230e-02, 4.517579985328755432e-02, 4.519015508748051163e-02, 4.520443505700189046e-02, 4.521863974861969199e-02, 4.523276914922508968e-02, 4.524682324583217258e-02, 4.526080202557729998e-02, 4.527470547572014226e-02, 4.528853358364321596e-02, 4.530228633685130790e-02, 4.531596372297260616e-02, 4.532956572975782583e-02, 4.534309234508052816e-02, 4.535654355693750223e-02, 4.536991935344780041e-02, 4.538321972285354333e-02, 4.539644465351985042e-02, 4.540959413393459015e-02, 4.542266815270844943e-02, 4.543566669857484336e-02, 4.544858976039039405e-02, 4.546143732713430613e-02, 4.547420938790857486e-02, 4.548690593193838866e-02, 4.549952694857161556e-02, 4.551207242727884489e-02, 4.552454235765394236e-02, 4.553693672941295373e-02, 4.554925553239561747e-02, 4.556149875656386600e-02, 4.557366639200279013e-02, 4.558575842892043095e-02, 4.559777485764759247e-02, 4.560971566863782772e-02, 4.562158085246768857e-02, 4.563337039983682980e-02, 4.564508430156710012e-02, 4.565672254860396462e-02, 4.566828513201523498e-02, 4.567977204299190214e-02, 4.569118327284776154e-02, 4.570251881301905933e-02, 4.571377865506562332e-02, 4.572496279066934344e-02, 4.573607121163571210e-02, 4.574710390989249198e-02, 4.575806087749052786e-02, 4.576894210660370499e-02, 4.577974758952831763e-02, 4.579047731868374910e-02, 4.580113128661231908e-02, 4.581170948597879100e-02, 4.582221190957123935e-02, 4.583263855030035583e-02, 4.584298940119932442e-02, 4.585326445542452917e-02, 4.586346370625526275e-02, 4.587358714709323382e-02, 4.588363477146313596e-02, 4.589360657301242569e-02, 4.590350254551137793e-02, 4.591332268285312074e-02, 4.592306697905332302e-02, 4.593273542825065947e-02, 4.594232802470661625e-02, 4.595184476280494285e-02, 4.596128563705264430e-02, 4.597065064207932206e-02, 4.597993977263746535e-02, 4.598915302360175039e-02, 4.599829038997012287e-02, 4.600735186686306932e-02, 4.601633744952372124e-02, 4.602524713331795220e-02, 4.603408091373415584e-02, 4.604283878638391891e-02, 4.605152074700077924e-02, 4.606012679144144001e-02, 4.606865691568515220e-02, 4.607711111583371461e-02, 4.608548938811148771e-02, 4.609379172886573367e-02, 4.610201813456612369e-02, 4.611016860180501553e-02, 4.611824312729714825e-02, 4.612624170788016259e-02, 4.613416434051410830e-02, 4.614201102228144419e-02, 4.614978175038756542e-02, 4.615747652216006802e-02, 4.616509533504908197e-02, 4.617263818662751401e-02, 4.618010507459061054e-02, 4.618749599675576328e-02, 4.619481095106353630e-02, 4.620204993557679163e-02, 4.620921294848011340e-02, 4.621629998808146622e-02, 4.622331105281067554e-02, 4.623024614122027420e-02, 4.623710525198515553e-02, 4.624388838390233042e-02, 4.625059553589121880e-02, 4.625722670699422556e-02, 4.626378189637531113e-02, 4.627026110332115028e-02, 4.627666432724074352e-02, 4.628299156766520900e-02, 4.628924282424827508e-02, 4.629541809676534364e-02, 4.630151738511478765e-02, 4.630754068931677847e-02, 4.631348800951382710e-02, 4.631935934597078419e-02, 4.632515469907422939e-02, 4.633087406933380364e-02, 4.633651745738025240e-02, 4.634208486396713261e-02, 4.634757628997011186e-02, 4.635299173638655901e-02, 4.635833120433643928e-02, 4.636359469506144693e-02, 4.636878220992547706e-02, 4.637389375041436196e-02, 4.637892931813607927e-02, 4.638388891482050219e-02, 4.638877254231976027e-02, 4.639358020260720555e-02, 4.639831189777918891e-02, 4.640296763005341552e-02, 4.640754740176927795e-02, 4.641205121538845291e-02, 4.641647907349420732e-02, 4.642083097879235593e-02, 4.642510693410929756e-02, 4.642930694239447847e-02, 4.643343100671827595e-02, 4.643747913027346241e-02, 4.644145131637383850e-02, 4.644534756845597467e-02, 4.644916789007689367e-02, 4.645291228491644359e-02, 4.645658075677534110e-02, 4.646017330957634417e-02, 4.646368994736380098e-02, 4.646713067430340710e-02, 4.647049549468277446e-02, 4.647378441291091788e-02, 4.647699743351822732e-02, 4.648013456115709929e-02, 4.648319580060072953e-02, 4.648618115674413992e-02, 4.648909063460393565e-02, 4.649192423931795132e-02, 4.649468197614518156e-02, 4.649736385046666920e-02, 4.649996986778406199e-02, 4.650250003372084773e-02, 4.650495435402141747e-02, 4.650733283455179418e-02, 4.650963548129893183e-02, 4.651186230037127750e-02, 4.651401329799820933e-02, 4.651608848053043893e-02, 4.651808785443990041e-02, 4.652001142631959074e-02, 4.652185920288321591e-02, 4.652363119096619704e-02, 4.652532739752471974e-02, 4.652694782963557457e-02, 4.652849249449725333e-02, 4.652996139942870701e-02, 4.653135455187016462e-02, 4.653267195938237677e-02, 4.653391362964715006e-02, 4.653507957046719434e-02, 4.653616978976618523e-02, 4.653718429558821590e-02, 4.653812309609819259e-02, 4.653898619958238281e-02, 4.653977361444665978e-02, 4.654048534921883390e-02, 4.654112141254641150e-02, 4.654168181319769809e-02, 4.654216656006192332e-02, 4.654257566214881070e-02, 4.654290912858834173e-02, 4.654316696863118608e-02, 4.654334919164828527e-02, 4.654345580713151187e-02, 4.654348682469267029e-02, 4.654344225406395474e-02, 4.654332210509835865e-02, 4.654312638776876565e-02, 4.654285511216832427e-02, 4.654250828851087818e-02, 4.654208592712991838e-02, 4.654158803847958936e-02, 4.654101463313397441e-02, 4.654036572178739395e-02, 4.653964131525414882e-02, 4.653884142446853417e-02, 4.653796606048517942e-02, 4.653701523447848626e-02, 4.653598895774290617e-02, 4.653488724169271840e-02, 4.653371009786190504e-02, 4.653245753790516415e-02, 4.653112957359580026e-02, 4.652972621682805593e-02, 4.652824747961500917e-02, 4.652669337408994743e-02, 4.652506391250589568e-02, 4.652335910723540829e-02, 4.652157897077072862e-02, 4.651972351572335879e-02, 4.651779275482467724e-02, 4.651578670092567508e-02, 4.651370536699666464e-02, 4.651154876612724476e-02, 4.650931691152672409e-02, 4.650700981652330229e-02, 4.650462749456536760e-02, 4.650216995921974128e-02, 4.649963722417283646e-02, 4.649702930323047767e-02, 4.649434621031750536e-02, 4.649158795947758160e-02, 4.648875456487429336e-02, 4.648584604078928595e-02, 4.648286240162397692e-02, 4.647980366189869567e-02, 4.647666983625263482e-02, 4.647346093944350331e-02, 4.647017698634862970e-02, 4.646681799196365065e-02, 4.646338397140314935e-02, 4.645987493990068329e-02, 4.645629091280814582e-02, 4.645263190559639072e-02, 4.644889793385477417e-02, 4.644508901329134909e-02, 4.644120515973289981e-02, 4.643724638912419961e-02, 4.643321271752898216e-02, 4.642910416112952521e-02, 4.642492073622606075e-02, 4.642066245923742729e-02, 4.641632934670053556e-02, 4.641192141527119425e-02, 4.640743868172281933e-02, 4.640288116294723902e-02, 4.639824887595450642e-02, 4.639354183787269825e-02, 4.638876006594776918e-02, 4.638390357754425958e-02, 4.637897239014421996e-02, 4.637396652134755104e-02, 4.636888598887239921e-02, 4.636373081055481654e-02, 4.635850100434819182e-02, 4.635319658832403461e-02, 4.634781758067140628e-02, 4.634236399969740572e-02, 4.633683586382620484e-02, 4.633123319160001308e-02, 4.632555600167841126e-02, 4.631980431283838628e-02, 4.631397814397456708e-02, 4.630807751409896783e-02, 4.630210244234075206e-02, 4.629605294794685022e-02, 4.628992905028084942e-02, 4.628373076882393022e-02, 4.627745812317453356e-02, 4.627111113304812479e-02, 4.626468981827708965e-02, 4.625819419881116445e-02, 4.625162429471675607e-02, 4.624498012617768439e-02, 4.623826171349398190e-02, 4.623146907708312880e-02, 4.622460223747910935e-02, 4.621766121533291138e-02, 4.621064603141192273e-02, 4.620355670660050013e-02, 4.619639326189930312e-02, 4.618915571842589773e-02, 4.618184409741402791e-02, 4.617445842021400404e-02, 4.616699870829284180e-02, 4.615946498323353353e-02, 4.615185726673549926e-02, 4.614417558061475327e-02, 4.613641994680282854e-02, 4.612859038734837963e-02, 4.612068692441522594e-02, 4.611270958028396844e-02, 4.610465837735083089e-02, 4.609653333812810394e-02, 4.608833448524404797e-02, 4.608006184144296247e-02, 4.607171542958450605e-02, 4.606329527264432094e-02, 4.605480139371410236e-02, 4.604623381600073118e-02, 4.603759256282686368e-02, 4.602887765763096634e-02, 4.602008912396623325e-02, 4.601122698550250134e-02, 4.600229126602396745e-02, 4.599328198943082591e-02, 4.598419917973797788e-02, 4.597504286107612775e-02, 4.596581305769095044e-02, 4.595650979394320240e-02, 4.594713309430879800e-02, 4.593768298337882333e-02, 4.592815948585871749e-02, 4.591856262656971582e-02, 4.590889243044728174e-02, 4.589914892254214757e-02, 4.588933212801925982e-02, 4.587944207215874370e-02, 4.586947878035522314e-02, 4.585944227811782764e-02, 4.584933259107035891e-02, 4.583914974495084671e-02, 4.582889376561192357e-02, 4.581856467902094276e-02, 4.580816251125886807e-02, 4.579768728852145337e-02, 4.578713903711848637e-02, 4.577651778347384404e-02, 4.576582355412529141e-02, 4.575505637572532813e-02, 4.574421627503959253e-02, 4.573330327894827019e-02, 4.572231741444494207e-02, 4.571125870863741725e-02, 4.570012718874671975e-02, 4.568892288210821967e-02, 4.567764581617043962e-02, 4.566629601849528375e-02, 4.565487351675906469e-02, 4.564337833875038025e-02, 4.563181051237234775e-02, 4.562017006564036276e-02, 4.560845702668387541e-02, 4.559667142374534271e-02, 4.558481328518015907e-02, 4.557288263945696166e-02, 4.556087951515746387e-02, 4.554880394097637897e-02, 4.553665594572125358e-02, 4.552443555831261340e-02, 4.551214280778339422e-02, 4.549977772327980230e-02, 4.548734033406041932e-02, 4.547483066949657010e-02, 4.546224875907175361e-02, 4.544959463238260750e-02, 4.543686831913765212e-02, 4.542406984915796364e-02, 4.541119925237691729e-02, 4.539825655884022204e-02, 4.538524179870569164e-02, 4.537215500224318909e-02, 4.535899619983452952e-02, 4.534576542197397975e-02, 4.533246269926723832e-02, 4.531908806243198362e-02, 4.530564154229806129e-02, 4.529212316980656128e-02, 4.527853297601038690e-02, 4.526487099207441439e-02, 4.525113724927461167e-02, 4.523733177899840613e-02, 4.522345461274521194e-02, 4.520950578212510479e-02, 4.519548531885986958e-02, 4.518139325478238294e-02, 4.516722962183686296e-02, 4.515299445207825862e-02, 4.513868777767291590e-02, 4.512430963089761327e-02, 4.510986004414102579e-02, 4.509533904990153247e-02, 4.508074668078884684e-02, 4.506608296952360065e-02, 4.505134794893641409e-02, 4.503654165196890186e-02, 4.502166411167338872e-02, 4.500671536121202132e-02, 4.499169543385780901e-02, 4.497660436299376341e-02, 4.496144218211343274e-02, 4.494620892482014546e-02, 4.493090462482780129e-02, 4.491552931595972631e-02, 4.490008303214996360e-02, 4.488456580744150382e-02, 4.486897767598822112e-02, 4.485331867205284012e-02, 4.483758883000814321e-02, 4.482178818433675549e-02, 4.480591676963038839e-02, 4.478997462059050583e-02, 4.477396177202807442e-02, 4.475787825886329979e-02, 4.474172411612532818e-02, 4.472549937895316241e-02, 4.470920408259423245e-02, 4.469283826240565832e-02, 4.467640195385306351e-02, 4.465989519251128970e-02, 4.464331801406399430e-02, 4.462667045430347007e-02, 4.460995254913074914e-02, 4.459316433455570716e-02, 4.457630584669645957e-02, 4.455937712177960447e-02, 4.454237819614086796e-02, 4.452530910622331389e-02, 4.450816988857898837e-02, 4.449096057986774017e-02, 4.447368121685781744e-02, 4.445633183642559022e-02, 4.443891247555503687e-02, 4.442142317133842416e-02, 4.440386396097567578e-02, 4.438623488177439319e-02, 4.436853597115017478e-02, 4.435076726662600527e-02, 4.433292880583244305e-02, 4.431502062650753693e-02, 4.429704276649690936e-02, 4.427899526375322914e-02, 4.426087815633648892e-02, 4.424269148241390809e-02, 4.422443528026007153e-02, 4.420610958825594433e-02, 4.418771444489012074e-02, 4.416924988875772784e-02, 4.415071595856091824e-02, 4.413211269310787083e-02, 4.411344013131454633e-02, 4.409469831220250852e-02, 4.407588727490035357e-02, 4.405700705864297462e-02, 4.403805770277145065e-02, 4.401903924673355312e-02, 4.399995173008244831e-02, 4.398079519247850150e-02, 4.396156967368722995e-02, 4.394227521358051031e-02, 4.392291185213610671e-02, 4.390347962943734472e-02, 4.388397858567356230e-02, 4.386440876113963799e-02, 4.384477019623607419e-02, 4.382506293146872650e-02, 4.380528700744905357e-02, 4.378544246489373543e-02, 4.376552934462490246e-02, 4.374554768756944850e-02, 4.372549753475998141e-02, 4.370537892733359492e-02, 4.368519190653266659e-02, 4.366493651370415702e-02, 4.364461279030020652e-02, 4.362422077787724700e-02, 4.360376051809641135e-02, 4.358323205272390810e-02, 4.356263542362975860e-02, 4.354197067278854638e-02, 4.352123784227937553e-02, 4.350043697428571110e-02, 4.347956811109425501e-02, 4.345863129509686118e-02, 4.343762656878905754e-02, 4.341655397476994194e-02, 4.339541355574244585e-02, 4.337420535451402132e-02, 4.335292941399471189e-02, 4.333158577719879029e-02, 4.331017448724382851e-02, 4.328869558735107953e-02, 4.326714912084475562e-02, 4.324553513115228509e-02, 4.322385366180489519e-02, 4.320210475643616876e-02, 4.318028845878295330e-02, 4.315840481268502782e-02, 4.313645386208541516e-02, 4.311443565102908437e-02, 4.309235022366401935e-02, 4.307019762424128123e-02, 4.304797789711366923e-02, 4.302569108673701126e-02, 4.300333723766913002e-02, 4.298091639457003038e-02, 4.295842860220214221e-02, 4.293587390542982773e-02, 4.291325234921958276e-02, 4.289056397863969666e-02, 4.286780883886008586e-02, 4.284498697515290444e-02, 4.282209843289183637e-02, 4.279914325755150573e-02, 4.277612149470868402e-02, 4.275303319004147146e-02, 4.272987838932918586e-02, 4.270665713845230027e-02, 4.268336948339247067e-02, 4.266001547023252211e-02, 4.263659514515592830e-02, 4.261310855444756102e-02, 4.258955574449276027e-02, 4.256593676177745228e-02, 4.254225165288845478e-02, 4.251850046451299131e-02, 4.249468324343898262e-02, 4.247080003655396424e-02, 4.244685089084671709e-02, 4.242283585340552582e-02, 4.239875497141917110e-02, 4.237460829217608305e-02, 4.235039586306497961e-02, 4.232611773157404084e-02, 4.230177394529151952e-02, 4.227736455190508891e-02, 4.225288959920207171e-02, 4.222834913506933602e-02, 4.220374320749305935e-02, 4.217907186455864543e-02, 4.215433515445096008e-02, 4.212953312545364426e-02, 4.210466582594959289e-02, 4.207973330442056625e-02, 4.205473560944727324e-02, 4.202967278970912157e-02, 4.200454489398389862e-02, 4.197935197114874284e-02, 4.195409407017827719e-02, 4.192877124014636470e-02, 4.190338353022452639e-02, 4.187793098968299599e-02, 4.185241366788995665e-02, 4.182683161431152707e-02, 4.180118487851181008e-02, 4.177547351015287180e-02, 4.174969755899438084e-02, 4.172385707489378176e-02, 4.169795210780596895e-02, 4.167198270778352254e-02, 4.164594892497624351e-02, 4.161985080963119532e-02, 4.159368841209286349e-02, 4.156746178280249643e-02, 4.154117097229881317e-02, 4.151481603121712216e-02, 4.148839701028947391e-02, 4.146191396034505650e-02, 4.143536693230933515e-02, 4.140875597720453105e-02, 4.138208114614910782e-02, 4.135534249035828502e-02, 4.132854006114314999e-02, 4.130167390991120596e-02, 4.127474408816593499e-02, 4.124775064750674236e-02, 4.122069363962903299e-02, 4.119357311632385749e-02, 4.116638912947835627e-02, 4.113914173107484362e-02, 4.111183097319136975e-02, 4.108445690800120731e-02, 4.105701958777312199e-02, 4.102951906487132400e-02, 4.100195539175438553e-02, 4.097432862097685757e-02, 4.094663880518752130e-02, 4.091888599713040808e-02, 4.089107024964391129e-02, 4.086319161566161207e-02, 4.083525014821114130e-02, 4.080724590041487354e-02, 4.077917892548924006e-02, 4.075104927674532557e-02, 4.072285700758818822e-02, 4.069460217151692205e-02, 4.066628482212448353e-02, 4.063790501309801767e-02, 4.060946279821811555e-02, 4.058095823135925845e-02, 4.055239136648947779e-02, 4.052376225767009843e-02, 4.049507095905599541e-02, 4.046631752489544126e-02, 4.043750200952957868e-02, 4.040862446739275360e-02, 4.037968495301260535e-02, 4.035068352100906752e-02, 4.032162022609538099e-02, 4.029249512307733067e-02, 4.026330826685311365e-02, 4.023405971241360291e-02, 4.020474951484189624e-02, 4.017537772931365631e-02, 4.014594441109666650e-02, 4.011644961555039385e-02, 4.008689339812667590e-02, 4.005727581436945711e-02, 4.002759691991385899e-02, 3.999785677048713073e-02, 3.996805542190814964e-02, 3.993819293008685906e-02, 3.990826935102488593e-02, 3.987828474081532570e-02, 3.984823915564224966e-02, 3.981813265178033717e-02, 3.978796528559631202e-02, 3.975773711354691625e-02, 3.972744819217997186e-02, 3.969709857813372850e-02, 3.966668832813749490e-02, 3.963621749901072300e-02, 3.960568614766311890e-02, 3.957509433109505231e-02, 3.954444210639672386e-02, 3.951372953074851202e-02, 3.948295666142054988e-02, 3.945212355577339125e-02, 3.942123027125676860e-02, 3.939027686541018980e-02, 3.935926339586286182e-02, 3.932818992033326744e-02, 3.929705649662948441e-02, 3.926586318264856795e-02, 3.923461003637670336e-02, 3.920329711588933785e-02, 3.917192447935059774e-02, 3.914049218501355204e-02, 3.910900029121989335e-02, 3.907744885640004190e-02, 3.904583793907302758e-02, 3.901416759784588628e-02, 3.898243789141420806e-02, 3.895064887856178326e-02, 3.891880061816051922e-02, 3.888689316917035704e-02, 3.885492659063859849e-02, 3.882290094170093991e-02, 3.879081628158059791e-02, 3.875867266958802487e-02, 3.872647016512156121e-02, 3.869420882766665820e-02, 3.866188871679583638e-02, 3.862950989216911574e-02, 3.859707241353341894e-02, 3.856457634072257834e-02, 3.853202173365687794e-02, 3.849940865234419834e-02, 3.846673715687782408e-02, 3.843400730743858768e-02, 3.840121916429319743e-02, 3.836837278779462596e-02, 3.833546823838216572e-02, 3.830250557658126942e-02, 3.826948486300307123e-02, 3.823640615834456025e-02, 3.820326952338871235e-02, 3.817007501900410854e-02, 3.813682270614449088e-02, 3.810351264584956738e-02, 3.807014489924372136e-02, 3.803671952753730212e-02, 3.800323659202496651e-02, 3.796969615408690019e-02, 3.793609827518787392e-02, 3.790244301687756279e-02, 3.786873044079025474e-02, 3.783496060864465632e-02, 3.780113358224423958e-02, 3.776724942347648578e-02, 3.773330819431298944e-02, 3.769930995681004815e-02, 3.766525477310728870e-02, 3.763114270542836787e-02, 3.759697381608118061e-02, 3.756274816745686085e-02, 3.752846582203019088e-02, 3.749412684235916421e-02, 3.745973129108567251e-02, 3.742527923093440928e-02, 3.739077072471305718e-02, 3.735620583531281541e-02, 3.732158462570739355e-02, 3.728690715895326829e-02, 3.725217349818964879e-02, 3.721738370663842110e-02, 3.718253784760388453e-02, 3.714763598447220344e-02, 3.711267818071279506e-02, 3.707766449987628249e-02, 3.704259500559542451e-02, 3.700746976158517110e-02, 3.697228883164208751e-02, 3.693705227964416693e-02, 3.690176016955145494e-02, 3.686641256540498096e-02, 3.683100953132751459e-02, 3.679555113152237211e-02, 3.676003743027467241e-02, 3.672446849195027535e-02, 3.668884438099586504e-02, 3.665316516193853347e-02, 3.661743089938684220e-02, 3.658164165802918477e-02, 3.654579750263459853e-02, 3.650989849805240384e-02, 3.647394470921214854e-02, 3.643793620112354553e-02, 3.640187303887607029e-02, 3.636575528763912740e-02, 3.632958301266184936e-02, 3.629335627927301328e-02, 3.625707515288100619e-02, 3.622073969897324219e-02, 3.618434998311668288e-02, 3.614790607095770547e-02, 3.611140802822128404e-02, 3.607485592071132258e-02, 3.603824981431085622e-02, 3.600158977498152391e-02, 3.596487586876329079e-02, 3.592810816177477440e-02, 3.589128672021331401e-02, 3.585441161035372859e-02, 3.581748289854952416e-02, 3.578050065123202644e-02, 3.574346493491048493e-02, 3.570637581617183698e-02, 3.566923336168071473e-02, 3.563203763817932024e-02, 3.559478871248733522e-02, 3.555748665150158805e-02, 3.552013152219624104e-02, 3.548272339162263089e-02, 3.544526232690865808e-02, 3.540774839525930723e-02, 3.537018166395637653e-02, 3.533256220035815853e-02, 3.529489007189937771e-02, 3.525716534609137087e-02, 3.521938809052130998e-02, 3.518155837285274340e-02, 3.514367626082548490e-02, 3.510574182225473239e-02, 3.506775512503170628e-02, 3.502971623712331645e-02, 3.499162522657208590e-02, 3.495348216149592180e-02, 3.491528711008773378e-02, 3.487704014061618341e-02, 3.483874132142464330e-02, 3.480039072093119024e-02, 3.476198840762931980e-02, 3.472353445008675293e-02, 3.468502891694617840e-02, 3.464647187692431601e-02, 3.460786339881283952e-02, 3.456920355147710677e-02, 3.453049240385677038e-02, 3.449173002496541685e-02, 3.445291648389103845e-02, 3.441405184979450665e-02, 3.437513619191090442e-02, 3.433616957954863103e-02, 3.429715208208971439e-02, 3.425808376898900609e-02, 3.421896470977506266e-02, 3.417979497404918798e-02, 3.414057463148539168e-02, 3.410130375183084012e-02, 3.406198240490518336e-02, 3.402261066060082578e-02, 3.398318858888223909e-02, 3.394371625978658685e-02, 3.390419374342296815e-02, 3.386462110997265351e-02, 3.382499842968870324e-02, 3.378532577289634214e-02, 3.374560320999221014e-02, 3.370583081144460508e-02, 3.366600864779327462e-02, 3.362613678964931907e-02, 3.358621530769496238e-02, 3.354624427268366321e-02, 3.350622375543998305e-02, 3.346615382685888540e-02, 3.342603455790633254e-02, 3.338586601961912592e-02, 3.334564828310413592e-02, 3.330538141953871822e-02, 3.326506550017056807e-02, 3.322470059631743577e-02, 3.318428677936707816e-02, 3.314382412077697404e-02, 3.310331269207459487e-02, 3.306275256485689124e-02, 3.302214381079034144e-02, 3.298148650161065315e-02, 3.294078070912304784e-02, 3.290002650520162941e-02, 3.285922396178972416e-02, 3.281837315089929791e-02, 3.277747414461147646e-02, 3.273652701507536594e-02, 3.269553183450930878e-02, 3.265448867519932241e-02, 3.261339760950032057e-02, 3.257225870983499610e-02, 3.253107204869405689e-02, 3.248983769863629523e-02, 3.244855573228788703e-02, 3.240722622234320366e-02, 3.236584924156366005e-02, 3.232442486277811722e-02, 3.228295315888309036e-02, 3.224143420284156930e-02, 3.219986806768403154e-02, 3.215825482650771366e-02, 3.211659455247675016e-02, 3.207488731882167377e-02, 3.203313319883963756e-02, 3.199133226589435247e-02, 3.194948459341536567e-02, 3.190759025489851158e-02, 3.186564932390611310e-02, 3.182366187406571872e-02, 3.178162797907090054e-02, 3.173954771268074071e-02, 3.169742114872015765e-02, 3.165524836107918433e-02, 3.161302942371283647e-02, 3.157076441064196604e-02, 3.152845339595179708e-02, 3.148609645379250171e-02, 3.144369365837932501e-02, 3.140124508399172454e-02, 3.135875080497391859e-02, 3.131621089573453920e-02, 3.127362543074609785e-02, 3.123099448454563082e-02, 3.118831813173363748e-02, 3.114559644697510385e-02, 3.110282950499842700e-02, 3.106001738059534223e-02, 3.101716014862134982e-02, 3.097425788399542704e-02, 3.093131066169947652e-02, 3.088831855677837135e-02, 3.084528164434058306e-02, 3.080219999955665852e-02, 3.075907369766029548e-02, 3.071590281394750294e-02, 3.067268742377708690e-02, 3.062942760256964075e-02, 3.058612342580845772e-02, 3.054277496903869821e-02, 3.049938230786751470e-02, 3.045594551796335092e-02, 3.041246467505730189e-02, 3.036893985494105302e-02, 3.032537113346825408e-02, 3.028175858655373850e-02, 3.023810229017342630e-02, 3.019440232036416441e-02, 3.015065875322370942e-02, 3.010687166491110914e-02, 3.006304113164522812e-02, 3.001916722970611809e-02, 2.997525003543361974e-02, 2.993128962522833766e-02, 2.988728607555066197e-02, 2.984323946292113602e-02, 2.979914986392030035e-02, 2.975501735518791199e-02, 2.971084201342376330e-02, 2.966662391538724131e-02, 2.962236313789649508e-02, 2.957805975782932389e-02, 2.953371385212260822e-02, 2.948932549777207035e-02, 2.944489477183201767e-02, 2.940042175141585265e-02, 2.935590651369528875e-02, 2.931134913590047533e-02, 2.926674969531989356e-02, 2.922210826930021418e-02, 2.917742493524632177e-02, 2.913269977062029822e-02, 2.908793285294285214e-02, 2.904312425979183043e-02, 2.899827406880270061e-02, 2.895338235766830096e-02, 2.890844920413875030e-02, 2.886347468602133010e-02, 2.881845888117986684e-02, 2.877340186753574516e-02, 2.872830372306668309e-02, 2.868316452580677023e-02, 2.863798435384675226e-02, 2.859276328533406561e-02, 2.854750139847164747e-02, 2.850219877151879272e-02, 2.845685548279099433e-02, 2.841147161065904134e-02, 2.836604723354983412e-02, 2.832058242994536790e-02, 2.827507727838333984e-02, 2.822953185745670501e-02, 2.818394624581302410e-02, 2.813832052215582691e-02, 2.809265476524261743e-02, 2.804694905388591467e-02, 2.800120346695312776e-02, 2.795541808336565390e-02, 2.790959298209954448e-02, 2.786372824218475916e-02, 2.781782394270577649e-02, 2.777188016280052185e-02, 2.772589698166070399e-02, 2.767987447853231808e-02, 2.763381273271431349e-02, 2.758771182355910026e-02, 2.754157183047250060e-02, 2.749539283291331862e-02, 2.744917491039349303e-02, 2.740291814247767035e-02, 2.735662260878330906e-02, 2.731028838898053729e-02, 2.726391556279172609e-02, 2.721750420999184336e-02, 2.717105441040785357e-02, 2.712456624391871782e-02, 2.707803979045528622e-02, 2.703147513000065533e-02, 2.698487234258890172e-02, 2.693823150830611246e-02, 2.689155270728953856e-02, 2.684483601972779271e-02, 2.679808152586042602e-02, 2.675128930597806681e-02, 2.670445944042226794e-02, 2.665759200958512168e-02, 2.661068709390919731e-02, 2.656374477388795743e-02, 2.651676513006473446e-02, 2.646974824303303941e-02, 2.642269419343689155e-02, 2.637560306196952073e-02, 2.632847492937444994e-02, 2.628130987644437117e-02, 2.623410798402198152e-02, 2.618686933299892161e-02, 2.613959400431604616e-02, 2.609228207896370846e-02, 2.604493363798076472e-02, 2.599754876245505969e-02, 2.595012753352293061e-02, 2.590267003236973106e-02, 2.585517634022866523e-02, 2.580764653838132916e-02, 2.576008070815782522e-02, 2.571247893093571435e-02, 2.566484128814064403e-02, 2.561716786124625805e-02, 2.556945873177335696e-02, 2.552171398129038371e-02, 2.547393369141283392e-02, 2.542611794380393239e-02, 2.537826682017349511e-02, 2.533038040227817908e-02, 2.528245877192187088e-02, 2.523450201095454523e-02, 2.518651020127289641e-02, 2.513848342482002604e-02, 2.509042176358528345e-02, 2.504232529960409223e-02, 2.499419411495733614e-02, 2.494602829177233402e-02, 2.489782791222192732e-02, 2.484959305852412620e-02, 2.480132381294292837e-02, 2.475302025778703882e-02, 2.470468247541055679e-02, 2.465631054821230614e-02, 2.460790455863648071e-02, 2.455946458917142305e-02, 2.451099072235008239e-02, 2.446248304075041360e-02, 2.441394162699407622e-02, 2.436536656374699988e-02, 2.431675793371904093e-02, 2.426811581966435011e-02, 2.421944030438049483e-02, 2.417073147070859448e-02, 2.412198940153341756e-02, 2.407321417978287859e-02, 2.402440588842802774e-02, 2.397556461048335266e-02, 2.392669042900596316e-02, 2.387778342709566404e-02, 2.382884368789487187e-02, 2.377987129458887516e-02, 2.373086633040495316e-02, 2.368182887861262909e-02, 2.363275902252370136e-02, 2.358365684549181343e-02, 2.353452243091229065e-02, 2.348535586222209176e-02, 2.343615722290007947e-02, 2.338692659646611147e-02, 2.333766406648125902e-02, 2.328836971654835511e-02, 2.323904363031012790e-02, 2.318968589145079320e-02, 2.314029658369532935e-02, 2.309087579080922048e-02, 2.304142359659790487e-02, 2.299194008490753477e-02, 2.294242533962445943e-02, 2.289287944467472899e-02, 2.284330248402410835e-02, 2.279369454167877104e-02, 2.274405570168372762e-02, 2.269438604812378663e-02, 2.264468566512281220e-02, 2.259495463684419239e-02, 2.254519304749006553e-02, 2.249540098130135141e-02, 2.244557852255813640e-02, 2.239572575557880266e-02, 2.234584276471971928e-02, 2.229592963437654687e-02, 2.224598644898238484e-02, 2.219601329300870118e-02, 2.214601025096463519e-02, 2.209597740739747268e-02, 2.204591484689163647e-02, 2.199582265406909570e-02, 2.194570091358967814e-02, 2.189554971014976911e-02, 2.184536912848323437e-02, 2.179515925336030641e-02, 2.174492016958887858e-02, 2.169465196201257953e-02, 2.164435471551193549e-02, 2.159402851500398166e-02, 2.154367344544175569e-02, 2.149328959181433935e-02, 2.144287703914667456e-02, 2.139243587249976819e-02, 2.134196617696994605e-02, 2.129146803768937335e-02, 2.124094153982539895e-02, 2.119038676858064907e-02, 2.113980380919247906e-02, 2.108919274693398654e-02, 2.103855366711241542e-02, 2.098788665506972143e-02, 2.093719179618244025e-02, 2.088646917586190616e-02, 2.083571887955312785e-02, 2.078494099273530196e-02, 2.073413560092196919e-02, 2.068330278966006366e-02, 2.063244264453045415e-02, 2.058155525114733694e-02, 2.053064069515826012e-02, 2.047969906224430398e-02, 2.042873043811964731e-02, 2.037773490853114766e-02, 2.032671255925865006e-02, 2.027566347611444580e-02, 2.022458774494401840e-02, 2.017348545162453433e-02, 2.012235668206570696e-02, 2.007120152220951553e-02, 2.002002005802975063e-02, 1.996881237553192398e-02, 1.991757856075334135e-02, 1.986631869976297413e-02, 1.981503287866116444e-02, 1.976372118357938232e-02, 1.971238370068011461e-02, 1.966102051615756935e-02, 1.960963171623545179e-02, 1.955821738716961508e-02, 1.950677761524551371e-02, 1.945531248677943165e-02, 1.940382208811748666e-02, 1.935230650563670926e-02, 1.930076582574337396e-02, 1.924920013487380413e-02, 1.919760951949431652e-02, 1.914599406610049265e-02, 1.909435386121739048e-02, 1.904268899139918009e-02, 1.899099954322969533e-02, 1.893928560332126115e-02, 1.888754725831506137e-02, 1.883578459488119763e-02, 1.878399769971835290e-02, 1.873218665955359366e-02, 1.868035156114201262e-02, 1.862849249126723519e-02, 1.857660953674051055e-02, 1.852470278440108628e-02, 1.847277232111622577e-02, 1.842081823378022287e-02, 1.836884060931501944e-02, 1.831683953467017761e-02, 1.826481509682185977e-02, 1.821276738277344959e-02, 1.816069647955505587e-02, 1.810860247422396013e-02, 1.805648545386341966e-02, 1.800434550558333707e-02, 1.795218271652023259e-02, 1.789999717383618238e-02, 1.784778896471964083e-02, 1.779555817638476742e-02, 1.774330489607148231e-02, 1.769102921104522691e-02, 1.763873120859677651e-02, 1.758641097604258727e-02, 1.753406860072389412e-02, 1.748170417000672119e-02, 1.742931777128265899e-02, 1.737690949196733781e-02, 1.732447941950114242e-02, 1.727202764134883051e-02, 1.721955424499987258e-02, 1.716705931796726897e-02, 1.711454294778817081e-02, 1.706200522202403966e-02, 1.700944622825940195e-02, 1.695686605410268166e-02, 1.690426478718566952e-02, 1.685164251516339459e-02, 1.679899932571405144e-02, 1.674633530653861849e-02, 1.669365054536145129e-02, 1.664094512992912028e-02, 1.658821914801074382e-02, 1.653547268739826229e-02, 1.648270583590558114e-02, 1.642991868136867498e-02, 1.637711131164546613e-02, 1.632428381461626180e-02, 1.627143627818240790e-02, 1.621856879026690665e-02, 1.616568143881471145e-02, 1.611277431179136341e-02, 1.605984749718393848e-02, 1.600690108300014194e-02, 1.595393515726920702e-02, 1.590094980804004215e-02, 1.584794512338279227e-02, 1.579492119138803732e-02, 1.574187810016636907e-02, 1.568881593784838754e-02, 1.563573479258502028e-02, 1.558263475254681625e-02, 1.552951590592396847e-02, 1.547637834092617515e-02, 1.542322214578286527e-02, 1.537004740874239883e-02, 1.531685421807212240e-02, 1.526364266205884786e-02, 1.521041282900780986e-02, 1.515716480724297287e-02, 1.510389868510674839e-02, 1.505061455096035582e-02, 1.499731249318302442e-02, 1.494399260017155451e-02, 1.489065496034160802e-02, 1.483729966212610392e-02, 1.478392679397565884e-02, 1.473053644435877267e-02, 1.467712870176086405e-02, 1.462370365468490356e-02, 1.457026139165065216e-02, 1.451680200119530306e-02, 1.446332557187247903e-02, 1.440983219225229831e-02, 1.435632195092199220e-02, 1.430279493648469076e-02, 1.424925123755992236e-02, 1.419569094278301177e-02, 1.414211414080582263e-02, 1.408852092029552229e-02, 1.403491136993512134e-02, 1.398128557842299308e-02, 1.392764363447302443e-02, 1.387398562681413199e-02, 1.382031164419068175e-02, 1.376662177536168256e-02, 1.371291610910089706e-02, 1.365919473419677059e-02, 1.360545773945244508e-02, 1.355170521368526462e-02, 1.349793724572658817e-02, 1.344415392442229254e-02, 1.339035533863182532e-02, 1.333654157722849974e-02, 1.328271272909909567e-02, 1.322886888314439048e-02, 1.317501012827804706e-02, 1.312113655342689485e-02, 1.306724824753135485e-02, 1.301334529954407439e-02, 1.295942779843069388e-02, 1.290549583316992314e-02, 1.285154949275239475e-02, 1.279758886618138046e-02, 1.274361404247196204e-02, 1.268962511065192637e-02, 1.263562215976041410e-02, 1.258160527884837759e-02, 1.252757455697877699e-02, 1.247353008322565730e-02, 1.241947194667445374e-02, 1.236540023642173323e-02, 1.231131504157545464e-02, 1.225721645125407190e-02, 1.220310455458682025e-02, 1.214897944071389492e-02, 1.209484119878573467e-02, 1.204068991796263498e-02, 1.198652568741592067e-02, 1.193234859632636216e-02, 1.187815873388476350e-02, 1.182395618929158246e-02, 1.176974105175717517e-02, 1.171551341050106401e-02, 1.166127335475196543e-02, 1.160702097374828427e-02, 1.155275635673687525e-02, 1.149847959297376626e-02, 1.144419077172342467e-02, 1.138988998225949623e-02, 1.133557731386350409e-02, 1.128125285582530848e-02, 1.122691669744336346e-02, 1.117256892802365523e-02, 1.111820963688034056e-02, 1.106383891333504767e-02, 1.100945684671711042e-02, 1.095506352636336361e-02, 1.090065904161768157e-02, 1.084624348183154015e-02, 1.079181693636294646e-02, 1.073737949457687253e-02, 1.068293124584530213e-02, 1.062847227954644667e-02, 1.057400268506504364e-02, 1.051952255179196792e-02, 1.046503196912464476e-02, 1.041053102646614242e-02, 1.035601981322522951e-02, 1.030149841881693347e-02, 1.024696693266132809e-02, 1.019242544418410591e-02, 1.013787404281621396e-02, 1.008331281799370108e-02, 1.002874185915742129e-02, 9.974161255753628830e-03, 9.919571097232633694e-03, 9.864971473049639547e-03, 9.810362472663999509e-03, 9.755744185539786881e-03, 9.701116701144771662e-03, 9.646480108950805654e-03, 9.591834498433466846e-03, 9.537179959072454929e-03, 9.482516580350475871e-03, 9.427844451753807434e-03, 9.373163662772236726e-03, 9.318474302898395803e-03, 9.263776461627836259e-03, 9.209070228458952900e-03, 9.154355692893318547e-03, 9.099632944434042983e-03, 9.044902072587632583e-03, 8.990163166862241706e-03, 8.935416316768338835e-03, 8.880661611818109827e-03, 8.825899141526059866e-03, 8.771128995407934462e-03, 8.716351262981061193e-03, 8.661566033764113784e-03, 8.606773397277389659e-03, 8.551973443041878398e-03, 8.497166260579416125e-03, 8.442351939413245826e-03, 8.387530569066676406e-03, 8.332702239063825150e-03, 8.277867038928937715e-03, 8.223025058186981401e-03, 8.168176386362552277e-03, 8.113321112980376518e-03, 8.058459327564894067e-03, 8.003591119640295071e-03, 7.948716578730089660e-03, 7.893835794357640517e-03, 7.838948856045056118e-03, 7.784055853313540281e-03, 7.729156875683699211e-03, 7.674252012674472045e-03, 7.619341353803609634e-03, 7.564424988587179280e-03, 7.509503006540183163e-03, 7.454575497175254702e-03, 7.399642550003343762e-03, 7.344704254533178898e-03, 7.289760700271714043e-03, 7.234811976723088539e-03, 7.179858173389137149e-03, 7.124899379769042244e-03, 7.069935685359205434e-03, 7.014967179652933579e-03, 6.959993952140989572e-03, 6.905016092310345063e-03, 6.850033689644756396e-03, 6.795046833624896442e-03, 6.740055613727264326e-03, 6.685060119424841157e-03, 6.630060440186484605e-03, 6.575056665477418960e-03, 6.520048884758240272e-03, 6.465037187485303191e-03, 6.410021663110363616e-03, 6.355002401080936912e-03, 6.299979490839355094e-03, 6.244953021823121571e-03, 6.189923083464721199e-03, 6.134889765191386089e-03, 6.079853156424878773e-03, 6.024813346581860823e-03, 5.969770425073002949e-03, 5.914724481303070859e-03, 5.859675604671452619e-03, 5.804623884570961692e-03, 5.749569410388391186e-03, 5.694512271503963073e-03, 5.639452557291966574e-03, 5.584390357119472723e-03, 5.529325760346846981e-03, 5.474258856327996435e-03, 5.419189734409257837e-03, 5.364118483929935371e-03, 5.309045194221821869e-03, 5.253969954609854533e-03, 5.198892854410362002e-03, 5.143813982932399220e-03, 5.088733429477414368e-03, 5.033651283338293030e-03, 4.978567633799733765e-03, 4.923482570138550812e-03, 4.868396181622586423e-03, 4.813308557511252958e-03, 4.758219787054991656e-03, 4.703129959495784378e-03, 4.648039164066142259e-03, 4.592947489989325158e-03, 4.537855026479714615e-03, 4.482761862741792974e-03, 4.427668087970505068e-03, 4.372573791350920815e-03, 4.317479062058648086e-03, 4.262383989258928911e-03, 4.207288662106356721e-03, 4.152193169746089783e-03, 4.097097601312226639e-03, 4.042002045928231105e-03, 3.986906592707264475e-03, 3.931811330751111729e-03, 3.876716349150696739e-03, 3.821621736985585278e-03, 3.766527583324478547e-03, 3.711433977224130702e-03, 3.656341007729705782e-03, 3.601248763875080847e-03, 3.546157334681770013e-03, 3.491066809159402810e-03, 3.435977276305265341e-03, 3.380888825104817232e-03, 3.325801544530557988e-03, 3.270715523542596856e-03, 3.215630851088245156e-03, 3.160547616101967282e-03, 3.105465907505025516e-03, 3.050385814205986996e-03, 2.995307425099667277e-03, 2.940230829067561839e-03, 2.885156114977447967e-03, 2.830083371683814533e-03, 2.775012688026834602e-03, 2.719944152832650362e-03, 2.664877854913741753e-03, 2.609813883067820146e-03, 2.554752326078296720e-03, 2.499693272713896918e-03, 2.444636811729055531e-03, 2.389583031862910125e-03, 2.334532021839604184e-03, 2.279483870368739437e-03, 2.224438666143736115e-03, 2.169396497843045085e-03, 2.114357454129893281e-03, 2.059321623651308789e-03, 2.004289095038667718e-03, 1.949259956907187447e-03, 1.894234297856449856e-03, 1.839212206469294794e-03, 1.784193771312184802e-03, 1.729179080935478331e-03, 1.674168223872418834e-03, 1.619161288639564111e-03, 1.564158363736362382e-03, 1.509159537645620667e-03, 1.454164898832458093e-03, 1.399174535744594512e-03, 1.344188536812703730e-03, 1.289206990449495412e-03, 1.234229985049404340e-03, 1.179257608989858286e-03, 1.124289950629587956e-03, 1.069327098309267102e-03, 1.014369140351046748e-03, 9.594161650590479632e-04, 9.044682607182930522e-04, 8.495255155950245289e-04, 7.945880179370380745e-04, 7.396558559726022384e-04, 6.847291179109513170e-04, 6.298078919418371438e-04, 5.748922662359871654e-04, 5.199823289440662095e-04, 4.650781681969833135e-04, 4.101798721062182868e-04, 3.552875287627656436e-04, 3.004012262375990207e-04, 2.455210525813877670e-04, 1.906470958243565124e-04, 1.357794439761437610e-04, 8.091818502551122920e-05, 2.606340694081813765e-05, -2.878480233103600840e-05, -8.362635486429172160e-05, -1.384611627540077955e-04, -1.932891381171193300e-04, -2.481101930919637046e-04, -3.029242398387231973e-04, -3.577311905389541562e-04, -4.125309573966420363e-04, -4.673234526378796630e-04, -5.221085885105476634e-04, -5.768862772853705330e-04, -6.316564312554450627e-04, -6.864189627365239110e-04, -7.411737840671620264e-04, -7.959208076088524972e-04, -8.506599457463110466e-04, -9.053911108870106930e-04, -9.601142154622326671e-04, -1.014829171926742669e-03, -1.069535892758487943e-03, -1.124234290459616209e-03, -1.178924277556036996e-03, -1.233605766597853154e-03, -1.288278670158876432e-03, -1.342942900837688046e-03, -1.397598371257334883e-03, -1.452244994064976055e-03, -1.506882681932970132e-03, -1.561511347558374677e-03, -1.616130903663396410e-03, -1.670741262994778842e-03, -1.725342338325455043e-03, -1.779934042453296030e-03, -1.834516288201428879e-03, -1.889088988419119911e-03, -1.943652055981454421e-03, -1.998205403789012936e-03, -2.052748944768947176e-03, -2.107282591874460285e-03, -2.161806258085296247e-03, -2.216319856407232471e-03, -2.270823299873165734e-03, -2.325316501542739212e-03, -2.379799374502077937e-03, -2.434271831864794500e-03, -2.488733786771559278e-03, -2.543185152390478598e-03, -2.597625841916710067e-03, -2.652055768573417533e-03, -2.706474845611367332e-03, -2.760882986309178954e-03, -2.815280103973476396e-03, -2.869666111939197812e-03, -2.924040923569058616e-03, -2.978404452254656935e-03, -3.032756611415994390e-03, -3.087097314501886791e-03, -3.141426474989527425e-03, -3.195744006385495793e-03, -3.250049822225478755e-03, -3.304343836073910575e-03, -3.358625961525047148e-03, -3.412896112202493289e-03, -3.467154201759613859e-03, -3.521400143879099658e-03, -3.575633852273977023e-03, -3.629855240687145969e-03, -3.684064222891725825e-03, -3.738260712691063043e-03, -3.792444623919149702e-03, -3.846615870440067524e-03, -3.900774366149060372e-03, -3.954920024972081484e-03, -4.009052760866179017e-03, -4.063172487819058896e-03, -4.117279119850159909e-03, -4.171372571010266428e-03, -4.225452755381227388e-03, -4.279519587076995382e-03, -4.333572980243164362e-03, -4.387612849057350405e-03, -4.441639107728810945e-03, -4.495651670499433566e-03, -4.549650451643232063e-03, -4.603635365466707263e-03, -4.657606326308932898e-03, -4.711563248541850504e-03, -4.765506046569816662e-03, -4.819434634830553621e-03, -4.873348927795000986e-03, -4.927248839966836061e-03, -4.981134285883585811e-03, -5.035005180116121186e-03, -5.088861437269153257e-03, -5.142702971980710192e-03, -5.196529698923172021e-03, -5.250341532802846496e-03, -5.304138388360340323e-03, -5.357920180370130681e-03, -5.411686823641601723e-03, -5.465438233018746206e-03, -5.519174323379613840e-03, -5.572895009638036481e-03, -5.626600206742369582e-03, -5.680289829675749802e-03, -5.733963793457026552e-03, -5.787622013140444541e-03, -5.841264403815284688e-03, -5.894890880606919702e-03, -5.948501358676298000e-03, -6.002095753220517901e-03, -6.055673979472174506e-03, -6.109235952700503743e-03, -6.162781588211086597e-03, -6.216310801345383344e-03, -6.269823507481967796e-03, -6.323319622035859441e-03, -6.376799060459178298e-03, -6.430261738240431076e-03, -6.483707570905549410e-03, -6.537136474018169149e-03, -6.590548363178310234e-03, -6.643943154024116622e-03, -6.697320762231341075e-03, -6.750681103513006022e-03, -6.804024093620466077e-03, -6.857349648342926651e-03, -6.910657683507905394e-03, -6.963948114980666668e-03, -7.017220858665406368e-03, -7.070475830504775738e-03, -7.123712946479661065e-03, -7.176932122610177670e-03, -7.230133274955234494e-03, -7.283316319612857630e-03, -7.336481172719909287e-03, -7.389627750452920467e-03, -7.442755969027738810e-03, -7.495865744699761919e-03, -7.548956993764131644e-03, -7.602029632555913630e-03, -7.655083577449668837e-03, -7.708118744860575910e-03, -7.761135051243761573e-03, -7.814132413094953752e-03, -7.867110746949804168e-03, -7.920069969385120853e-03, -7.973009997018316516e-03, -8.025930746507327004e-03, -8.078832134551466523e-03, -8.131714077891009571e-03, -8.184576493307666248e-03, -8.237419297624063580e-03, -8.290242407704770736e-03, -8.343045740455972900e-03, -8.395829212825018512e-03, -8.448592741802101944e-03, -8.501336244418851440e-03, -8.554059637748898104e-03, -8.606762838908540297e-03, -8.659445765056228428e-03, -8.712108333393267512e-03, -8.764750461163008793e-03, -8.817372065652121296e-03, -8.869973064190182430e-03, -8.922553374149332778e-03, -8.975112912945398466e-03, -9.027651598037214620e-03, -9.080169346927320986e-03, -9.132666077161325294e-03, -9.185141706328898981e-03, -9.237596152063588112e-03, -9.290029332042351942e-03, -9.342441163986602015e-03, -9.394831565662328798e-03, -9.447200454878902989e-03, -9.499547749490815443e-03, -9.551873367396842771e-03, -9.604177226540746432e-03, -9.656459244910580580e-03, -9.708719340539823106e-03, -9.760957431506969706e-03, -9.813173435935306638e-03, -9.865367271993878695e-03, -9.917538857897064200e-03, -9.969688111904901132e-03, -1.002181495232268640e-02, -1.007391929750208262e-02, -1.012600106584059245e-02, -1.017806017578140425e-02, -1.023009654581438256e-02, -1.028211009447545926e-02, -1.033410074034716263e-02, -1.038606840205846468e-02, -1.043801299828518020e-02, -1.048993444774997535e-02, -1.054183266922206416e-02, -1.059370758151824757e-02, -1.064555910350242426e-02, -1.069738715408549007e-02, -1.074919165222610988e-02, -1.080097251693048002e-02, -1.085272966725260579e-02, -1.090446302229388861e-02, -1.095617250120411480e-02, -1.100785802318112599e-02, -1.105951950747054678e-02, -1.111115687336672146e-02, -1.116277004021235843e-02, -1.121435892739866720e-02, -1.126592345436565508e-02, -1.131746354060204386e-02, -1.136897910564563241e-02, -1.142047006908288379e-02, -1.147193635054993659e-02, -1.152337786973217995e-02, -1.157479454636401589e-02, -1.162618630022982900e-02, -1.167755305116350770e-02, -1.172889471904891082e-02, -1.178021122381944091e-02, -1.183150248545889599e-02, -1.188276842400136715e-02, -1.193400895953060023e-02, -1.198522401218138703e-02, -1.203641350213884714e-02, -1.208757734963882523e-02, -1.213871547496750067e-02, -1.218982779846269904e-02, -1.224091424051290157e-02, -1.229197472155744465e-02, -1.234300916208743229e-02, -1.239401748264516191e-02, -1.244499960382423019e-02, -1.249595544627015581e-02, -1.254688493068010363e-02, -1.259778797780332533e-02, -1.264866450844050021e-02, -1.269951444344504313e-02, -1.275033770372238119e-02, -1.280113421023007687e-02, -1.285190388397843345e-02, -1.290264664603035967e-02, -1.295336241750159011e-02, -1.300405111955998602e-02, -1.305471267342739328e-02, -1.310534700037829618e-02, -1.315595402173997709e-02, -1.320653365889363356e-02, -1.325708583327373132e-02, -1.330761046636804411e-02, -1.335810747971833204e-02, -1.340857679492003622e-02, -1.345901833362264481e-02, -1.350943201752937382e-02, -1.355981776839784367e-02, -1.361017550804014854e-02, -1.366050515832220244e-02, -1.371080664116488060e-02, -1.376107987854361878e-02, -1.381132479248872030e-02, -1.386154130508493974e-02, -1.391172933847228607e-02, -1.396188881484628289e-02, -1.401201965645689461e-02, -1.406212178560998886e-02, -1.411219512466686983e-02, -1.416223959604401110e-02, -1.421225512221396467e-02, -1.426224162570501226e-02, -1.431219902910160074e-02, -1.436212725504361007e-02, -1.441202622622767687e-02, -1.446189586540667232e-02, -1.451173609538940895e-02, -1.456154683904167108e-02, -1.461132801928588520e-02, -1.466107955910112524e-02, -1.471080138152306045e-02, -1.476049340964482280e-02, -1.481015556661638248e-02, -1.485978777564501627e-02, -1.490938995999541161e-02, -1.495896204298969613e-02, -1.500850394800721903e-02, -1.505801559848545489e-02, -1.510749691791959427e-02, -1.515694782986278487e-02, -1.520636825792591636e-02, -1.525575812577831779e-02, -1.530511735714765870e-02, -1.535444587581963859e-02, -1.540374360563875715e-02, -1.545301047050804712e-02, -1.550224639438947498e-02, -1.555145130130326618e-02, -1.560062511532925300e-02, -1.564976776060617025e-02, -1.569887916133145059e-02, -1.574795924176267820e-02, -1.579700792621646990e-02, -1.584602513906862090e-02, -1.589501080475498943e-02, -1.594396484777133721e-02, -1.599288719267275005e-02, -1.604177776407479661e-02, -1.609063648665295942e-02, -1.613946328514306860e-02, -1.618825808434107630e-02, -1.623702080910343834e-02, -1.628575138434744038e-02, -1.633444973505075032e-02, -1.638311578625183118e-02, -1.643174946305014233e-02, -1.648035069060639971e-02, -1.652891939414179515e-02, -1.657745549893930442e-02, -1.662595893034339925e-02, -1.667442961375937768e-02, -1.672286747465456108e-02, -1.677127243855812411e-02, -1.681964443106041471e-02, -1.686798337781426904e-02, -1.691628920453436963e-02, -1.696456183699759923e-02, -1.701280120104287780e-02, -1.706100722257160307e-02, -1.710917982754784836e-02, -1.715731894199807456e-02, -1.720542449201144242e-02, -1.725349640373984028e-02, -1.730153460339847044e-02, -1.734953901726494357e-02, -1.739750957168055209e-02, -1.744544619304960742e-02, -1.749334880783993268e-02, -1.754121734258254697e-02, -1.758905172387248764e-02, -1.763685187836796717e-02, -1.768461773279134119e-02, -1.773234921392879276e-02, -1.778004624863070704e-02, -1.782770876381128966e-02, -1.787533668644908369e-02, -1.792292994358734778e-02, -1.797048846233316455e-02, -1.801801216985873463e-02, -1.806550099340064816e-02, -1.811295486026067575e-02, -1.816037369780479360e-02, -1.820775743346457823e-02, -1.825510599473660275e-02, -1.830241930918257570e-02, -1.834969730442956304e-02, -1.839693990817034899e-02, -1.844414704816258258e-02, -1.849131865223029719e-02, -1.853845464826296349e-02, -1.858555496421605835e-02, -1.863261952811090180e-02, -1.867964826803492073e-02, -1.872664111214202010e-02, -1.877359798865186127e-02, -1.882051882585121863e-02, -1.886740355209282419e-02, -1.891425209579646396e-02, -1.896106438544821818e-02, -1.900784034960136329e-02, -1.905457991687605976e-02, -1.910128301595959144e-02, -1.914794957560585903e-02, -1.919457952463717032e-02, -1.924117279194198504e-02, -1.928772930647701042e-02, -1.933424899726639626e-02, -1.938073179340187024e-02, -1.942717762404295653e-02, -1.947358641841714574e-02, -1.951995810582016211e-02, -1.956629261561540489e-02, -1.961258987723486086e-02, -1.965884982017866711e-02, -1.970507237401564887e-02, -1.975125746838268803e-02, -1.979740503298577439e-02, -1.984351499759967261e-02, -1.988958729206746420e-02, -1.993562184630175496e-02, -1.998161859028402265e-02, -2.002757745406484255e-02, -2.007349836776411989e-02, -2.011938126157130149e-02, -2.016522606574509130e-02, -2.021103271061372095e-02, -2.025680112657538695e-02, -2.030253124409800783e-02, -2.034822299371904716e-02, -2.039387630604650239e-02, -2.043949111175812766e-02, -2.048506734160211729e-02, -2.053060492639665821e-02, -2.057610379703062042e-02, -2.062156388446347716e-02, -2.066698511972483651e-02, -2.071236743391541985e-02, -2.075771075820687442e-02, -2.080301502384140216e-02, -2.084828016213256113e-02, -2.089350610446483875e-02, -2.093869278229415487e-02, -2.098384012714735181e-02, -2.102894807062320043e-02, -2.107401654439175487e-02, -2.111904548019465783e-02, -2.116403480984541813e-02, -2.120898446522935521e-02, -2.125389437830384892e-02, -2.129876448109791279e-02, -2.134359470571313075e-02, -2.138838498432330676e-02, -2.143313524917421151e-02, -2.147784543258436304e-02, -2.152251546694492618e-02, -2.156714528471960837e-02, -2.161173481844442731e-02, -2.165628400072895296e-02, -2.170079276425550610e-02, -2.174526104177899877e-02, -2.178968876612788139e-02, -2.183407587020395890e-02, -2.187842228698193975e-02, -2.192272794951028239e-02, -2.196699279091111207e-02, -2.201121674437992934e-02, -2.205539974318584950e-02, -2.209954172067228606e-02, -2.214364261025638866e-02, -2.218770234542896333e-02, -2.223172085975535367e-02, -2.227569808687515640e-02, -2.231963396050228726e-02, -2.236352841442462019e-02, -2.240738138250520164e-02, -2.245119279868140749e-02, -2.249496259696523795e-02, -2.253869071144356390e-02, -2.258237707627834545e-02, -2.262602162570614278e-02, -2.266962429403918122e-02, -2.271318501566436249e-02, -2.275670372504446856e-02, -2.280018035671686066e-02, -2.284361484529512723e-02, -2.288700712546823737e-02, -2.293035713200057210e-02, -2.297366479973259393e-02, -2.301693006358061094e-02, -2.306015285853688784e-02, -2.310333311966945163e-02, -2.314647078212276818e-02, -2.318956578111797118e-02, -2.323261805195166174e-02, -2.327562752999741413e-02, -2.331859415070561964e-02, -2.336151784960247349e-02, -2.340439856229166796e-02, -2.344723622445338967e-02, -2.349003077184488517e-02, -2.353278214030011042e-02, -2.357549026573046991e-02, -2.361815508412455980e-02, -2.366077653154801536e-02, -2.370335454414395845e-02, -2.374588905813312945e-02, -2.378838000981397388e-02, -2.383082733556197291e-02, -2.387323097183111087e-02, -2.391559085515270952e-02, -2.395790692213636136e-02, -2.400017910946963817e-02, -2.404240735391814654e-02, -2.408459159232563540e-02, -2.412673176161439503e-02, -2.416882779878503848e-02, -2.421087964091671318e-02, -2.425288722516697262e-02, -2.429485048877242509e-02, -2.433676936904809532e-02, -2.437864380338807674e-02, -2.442047372926535800e-02, -2.446225908423186463e-02, -2.450399980591926041e-02, -2.454569583203737235e-02, -2.458734710037630347e-02, -2.462895354880531573e-02, -2.467051511527276753e-02, -2.471203173780718229e-02, -2.475350335451656850e-02, -2.479492990358859658e-02, -2.483631132329074467e-02, -2.487764755197084676e-02, -2.491893852805647167e-02, -2.496018419005524569e-02, -2.500138447655508508e-02, -2.504253932622468176e-02, -2.508364867781235491e-02, -2.512471247014737286e-02, -2.516573064213965122e-02, -2.520670313277957250e-02, -2.524762988113839202e-02, -2.528851082636811298e-02, -2.532934590770186470e-02, -2.537013506445342376e-02, -2.541087823601802242e-02, -2.545157536187236946e-02, -2.549222638157355031e-02, -2.553283123476079303e-02, -2.557338986115464258e-02, -2.561390220055716552e-02, -2.565436819285187020e-02, -2.569478777800409883e-02, -2.573516089606131887e-02, -2.577548748715231819e-02, -2.581576749148821806e-02, -2.585600084936234139e-02, -2.589618750115003920e-02, -2.593632738730864556e-02, -2.597642044837824432e-02, -2.601646662498109316e-02, -2.605646585782185262e-02, -2.609641808768814117e-02, -2.613632325544976154e-02, -2.617618130205988380e-02, -2.621599216855394904e-02, -2.625575579605073789e-02, -2.629547212575166978e-02, -2.633514109894149330e-02, -2.637476265698837641e-02, -2.641433674134321952e-02, -2.645386329354054711e-02, -2.649334225519850428e-02, -2.653277356801841264e-02, -2.657215717378553360e-02, -2.661149301436835715e-02, -2.665078103171972940e-02, -2.669002116787599216e-02, -2.672921336495724665e-02, -2.676835756516816531e-02, -2.680745371079706549e-02, -2.684650174421669006e-02, -2.688550160788387780e-02, -2.692445324434010814e-02, -2.696335659621093214e-02, -2.700221160620656577e-02, -2.704101821712198359e-02, -2.707977637183671751e-02, -2.711848601331494010e-02, -2.715714708460590862e-02, -2.719575952884350709e-02, -2.723432328924720036e-02, -2.727283830912066373e-02, -2.731130453185362517e-02, -2.734972190092063368e-02, -2.738809035988129872e-02, -2.742640985238134835e-02, -2.746468032215145308e-02, -2.750290171300812450e-02, -2.754107396885324341e-02, -2.757919703367484390e-02, -2.761727085154643338e-02, -2.765529536662754764e-02, -2.769327052316378907e-02, -2.773119626548674332e-02, -2.776907253801387879e-02, -2.780689928524930632e-02, -2.784467645178316519e-02, -2.788240398229201861e-02, -2.792008182153878082e-02, -2.795770991437324451e-02, -2.799528820573154650e-02, -2.803281664063638282e-02, -2.807029516419753956e-02, -2.810772372161122329e-02, -2.814510225816130654e-02, -2.818243071921767290e-02, -2.821970905023798298e-02, -2.825693719676699439e-02, -2.829411510443632580e-02, -2.833124271896527227e-02, -2.836831998616046180e-02, -2.840534685191571998e-02, -2.844232326221270493e-02, -2.847924916312066790e-02, -2.851612450079618957e-02, -2.855294922148421399e-02, -2.858972327151708751e-02, -2.862644659731516938e-02, -2.866311914538691163e-02, -2.869974086232880348e-02, -2.873631169482548930e-02, -2.877283158964977217e-02, -2.880930049366263804e-02, -2.884571835381390809e-02, -2.888208511714133661e-02, -2.891840073077153739e-02, -2.895466514191949794e-02, -2.899087829788928733e-02, -2.902704014607294589e-02, -2.906315063395219569e-02, -2.909920970909709442e-02, -2.913521731916695126e-02, -2.917117341190990018e-02, -2.920707793516333708e-02, -2.924293083685400307e-02, -2.927873206499756117e-02, -2.931448156769914451e-02, -2.935017929315347079e-02, -2.938582518964447804e-02, -2.942141920554578252e-02, -2.945696128932064409e-02, -2.949245138952212228e-02, -2.952788945479292021e-02, -2.956327543386544354e-02, -2.959860927556245275e-02, -2.963389092879612982e-02, -2.966912034256922320e-02, -2.970429746597430878e-02, -2.973942224819427910e-02, -2.977449463850227046e-02, -2.980951458626177053e-02, -2.984448204092694790e-02, -2.987939695204185411e-02, -2.991425926924159984e-02, -2.994906894225176155e-02, -2.998382592088874241e-02, -3.001853015505941483e-02, -3.005318159476174159e-02, -3.008778019008478272e-02, -3.012232589120782816e-02, -3.015681864840211515e-02, -3.019125841202960001e-02, -3.022564513254322530e-02, -3.025997876048763108e-02, -3.029425924649842283e-02, -3.032848654130272312e-02, -3.036266059571903625e-02, -3.039678136065756403e-02, -3.043084878712004615e-02, -3.046486282619984692e-02, -3.049882342908201427e-02, -3.053273054704375850e-02, -3.056658413145347739e-02, -3.060038413377212316e-02, -3.063413050555241490e-02, -3.066782319843917859e-02, -3.070146216416926727e-02, -3.073504735457185943e-02, -3.076857872156867069e-02, -3.080205621717306899e-02, -3.083547979349146248e-02, -3.086884940272252575e-02, -3.090216499715742193e-02, -3.093542652917975408e-02, -3.096863395126631460e-02, -3.100178721598619014e-02, -3.103488627600121952e-02, -3.106793108406646908e-02, -3.110092159302985798e-02, -3.113385775583189796e-02, -3.116673952550656074e-02, -3.119956685518093450e-02, -3.123233969807521007e-02, -3.126505800750277453e-02, -3.129772173687036391e-02, -3.133033083967814991e-02, -3.136288526951992728e-02, -3.139538498008251355e-02, -3.142782992514678991e-02, -3.146022005858701426e-02, -3.149255533437132076e-02, -3.152483570656119255e-02, -3.155706112931273150e-02, -3.158923155687513862e-02, -3.162134694359201859e-02, -3.165340724390078991e-02, -3.168541241233292782e-02, -3.171736240351435976e-02, -3.174925717216487558e-02, -3.178109667309877984e-02, -3.181288086122437131e-02, -3.184460969154465776e-02, -3.187628311915707835e-02, -3.190790109925321916e-02, -3.193946358711980543e-02, -3.197097053813797995e-02, -3.200242190778313650e-02, -3.203381765162596762e-02, -3.206515772533195113e-02, -3.209644208466112814e-02, -3.212767068546848459e-02, -3.215884348370456891e-02, -3.218996043541435398e-02, -3.222102149673795185e-02, -3.225202662391119662e-02, -3.228297577326455503e-02, -3.231386890122435462e-02, -3.234470596431157641e-02, -3.237548691914318016e-02, -3.240621172243142445e-02, -3.243688033098398454e-02, -3.246749270170437573e-02, -3.249804879159149534e-02, -3.252854855774016396e-02, -3.255899195734069523e-02, -3.258937894767939547e-02, -3.261970948613875793e-02, -3.264998353019646360e-02, -3.268020103742670657e-02, -3.271036196549982622e-02, -3.274046627218192562e-02, -3.277051391533546132e-02, -3.280050485291888251e-02, -3.283043904298736659e-02, -3.286031644369203503e-02, -3.289013701328053624e-02, -3.291990071009685132e-02, -3.294960749258158544e-02, -3.297925731927193321e-02, -3.300885014880155371e-02, -3.303838593990081340e-02, -3.306786465139698039e-02, -3.309728624221382892e-02, -3.312665067137217367e-02, -3.315595789798946730e-02, -3.318520788128048044e-02, -3.321440058055670497e-02, -3.324353595522671484e-02, -3.327261396479619382e-02, -3.330163456886786610e-02, -3.333059772714223878e-02, -3.335950339941615855e-02, -3.338835154558448398e-02, -3.341714212563941244e-02, -3.344587509967001521e-02, -3.347455042786354196e-02, -3.350316807050421342e-02, -3.353172798797430382e-02, -3.356023014075340538e-02, -3.358867448941882383e-02, -3.361706099464580044e-02, -3.364538961720704019e-02, -3.367366031797337095e-02, -3.370187305791351451e-02, -3.373002779809387147e-02, -3.375812449967901391e-02, -3.378616312393177556e-02, -3.381414363221274533e-02, -3.384206598598074600e-02, -3.386993014679306330e-02, -3.389773607630484908e-02, -3.392548373626961405e-02, -3.395317308853965099e-02, -3.398080409506509109e-02, -3.400837671789496558e-02, -3.403589091917652576e-02, -3.406334666115561766e-02, -3.409074390617671674e-02, -3.411808261668308057e-02, -3.414536275521650593e-02, -3.417258428441755785e-02, -3.419974716702560424e-02, -3.422685136587881594e-02, -3.425389684391445810e-02, -3.428088356416863353e-02, -3.430781148977617157e-02, -3.433468058397120409e-02, -3.436149081008725570e-02, -3.438824213155621673e-02, -3.441493451190967556e-02, -3.444156791477835655e-02, -3.446814230389241840e-02, -3.449465764308092680e-02, -3.452111389627275650e-02, -3.454751102749602232e-02, -3.457384900087799584e-02, -3.460012778064613936e-02, -3.462634733112680135e-02, -3.465250761674610464e-02, -3.467860860203019618e-02, -3.470465025160462263e-02, -3.473063253019434415e-02, -3.475655540262459486e-02, -3.478241883382053590e-02, -3.480822278880660314e-02, -3.483396723270749951e-02, -3.485965213074794511e-02, -3.488527744825267035e-02, -3.491084315064624938e-02, -3.493634920345354417e-02, -3.496179557229946167e-02, -3.498718222290907176e-02, -3.501250912110778074e-02, -3.503777623282112313e-02, -3.506298352407510172e-02, -3.508813096099587525e-02, -3.511321850981016096e-02, -3.513824613684513043e-02, -3.516321380852825002e-02, -3.518812149138771800e-02, -3.521296915205217315e-02, -3.523775675725104167e-02, -3.526248427381393352e-02, -3.528715166867186365e-02, -3.531175890885593360e-02, -3.533630596149849035e-02, -3.536079279383223806e-02, -3.538521937319132060e-02, -3.540958566701032928e-02, -3.543389164282482323e-02, -3.545813726827144047e-02, -3.548232251108818930e-02, -3.550644733911341444e-02, -3.553051172028710153e-02, -3.555451562265033588e-02, -3.557845901434499719e-02, -3.560234186361466852e-02, -3.562616413880385913e-02, -3.564992580835868452e-02, -3.567362684082632518e-02, -3.569726720485534577e-02, -3.572084686919592411e-02, -3.574436580269953201e-02, -3.576782397431921279e-02, -3.579122135310958130e-02, -3.581455790822685170e-02, -3.583783360892843495e-02, -3.586104842457392416e-02, -3.588420232462435217e-02, -3.590729527864254533e-02, -3.593032725629308893e-02, -3.595329822734227160e-02, -3.597620816165812696e-02, -3.599905702921078060e-02, -3.602184480007229045e-02, -3.604457144441650107e-02, -3.606723693251916857e-02, -3.608984123475820344e-02, -3.611238432161364975e-02, -3.613486616366763660e-02, -3.615728673160385764e-02, -3.617964599620902139e-02, -3.620194392837164377e-02, -3.622418049908211757e-02, -3.624635567943353814e-02, -3.626846944062151606e-02, -3.629052175394319874e-02, -3.631251259079891491e-02, -3.633444192269087714e-02, -3.635630972122397969e-02, -3.637811595810536841e-02, -3.639986060514507210e-02, -3.642154363425523234e-02, -3.644316501745088754e-02, -3.646472472684932770e-02, -3.648622273467087840e-02, -3.650765901323825557e-02, -3.652903353497700956e-02, -3.655034627241540712e-02, -3.657159719818449395e-02, -3.659278628501786562e-02, -3.661391350575230602e-02, -3.663497883332734323e-02, -3.665598224078540912e-02, -3.667692370127167284e-02, -3.669780318803460978e-02, -3.671862067442536320e-02, -3.673937613389832019e-02, -3.676006954001068139e-02, -3.678070086642292597e-02, -3.680127008689876994e-02, -3.682177717530465272e-02, -3.684222210561065997e-02, -3.686260485188944114e-02, -3.688292538831777767e-02, -3.690318368917505643e-02, -3.692337972884395664e-02, -3.694351348181078298e-02, -3.696358492266509088e-02, -3.698359402609974894e-02, -3.700354076691103611e-02, -3.702342511999856534e-02, -3.704324706036595666e-02, -3.706300656311945635e-02, -3.708270360346956757e-02, -3.710233815673009278e-02, -3.712191019831830724e-02, -3.714141970375510471e-02, -3.716086664866511541e-02, -3.718025100877666439e-02, -3.719957275992172296e-02, -3.721883187803591564e-02, -3.723802833915861726e-02, -3.725716211943318895e-02, -3.727623319510627725e-02, -3.729524154252897988e-02, -3.731418713815582572e-02, -3.733306995854530214e-02, -3.735188998035977870e-02, -3.737064718036577082e-02, -3.738934153543344019e-02, -3.740797302253709433e-02, -3.742654161875514501e-02, -3.744504730126969883e-02, -3.746349004736723720e-02, -3.748186983443802661e-02, -3.750018663997674306e-02, -3.751844044158197250e-02, -3.753663121695654387e-02, -3.755475894390747360e-02, -3.757282360034594482e-02, -3.759082516428715465e-02, -3.760876361385103589e-02, -3.762663892726132026e-02, -3.764445108284621838e-02, -3.766220005903826024e-02, -3.767988583437434369e-02, -3.769750838749556104e-02, -3.771506769714757373e-02, -3.773256374218041803e-02, -3.774999650154854669e-02, -3.776736595431061383e-02, -3.778467207963009944e-02, -3.780191485677494856e-02, -3.781909426511718963e-02, -3.783621028413381576e-02, -3.785326289340635447e-02, -3.787025207262084692e-02, -3.788717780156785481e-02, -3.790404006014245347e-02, -3.792083882834457881e-02, -3.793757408627877747e-02, -3.795424581415415138e-02, -3.797085399228474628e-02, -3.798739860108900357e-02, -3.800387962109040563e-02, -3.802029703291696233e-02, -3.803665081730171066e-02, -3.805294095508195834e-02, -3.806916742720063002e-02, -3.808533021470470598e-02, -3.810142929874652667e-02, -3.811746466058306415e-02, -3.813343628157619264e-02, -3.814934414319286204e-02, -3.816518822700480651e-02, -3.818096851468868319e-02, -3.819668498802616247e-02, -3.821233762890381691e-02, -3.822792641931345436e-02, -3.824345134135154201e-02, -3.825891237721981697e-02, -3.827430950922470348e-02, -3.828964271977838146e-02, -3.830491199139756525e-02, -3.832011730670410038e-02, -3.833525864842508152e-02, -3.835033599939269983e-02, -3.836534934254422907e-02, -3.838029866092213666e-02, -3.839518393767409055e-02, -3.841000515605295235e-02, -3.842476229941664545e-02, -3.843945535122834239e-02, -3.845408429505681874e-02, -3.846864911457545388e-02, -3.848314979356352861e-02, -3.849758631590501773e-02, -3.851195866558951297e-02, -3.852626682671204256e-02, -3.854051078347251608e-02, -3.855469052017675147e-02, -3.856880602123512886e-02, -3.858285727116420732e-02, -3.859684425458534407e-02, -3.861076695622551319e-02, -3.862462536091707671e-02, -3.863841945359765273e-02, -3.865214921931053871e-02, -3.866581464320408001e-02, -3.867941571053253730e-02, -3.869295240665535790e-02, -3.870642471703727994e-02, -3.871983262724880415e-02, -3.873317612296590939e-02, -3.874645518997005267e-02, -3.875966981414796092e-02, -3.877281998149219311e-02, -3.878590567810050183e-02, -3.879892689017673535e-02, -3.881188360402974130e-02, -3.882477580607411605e-02, -3.883760348283001734e-02, -3.885036662092338638e-02, -3.886306520708541351e-02, -3.887569922815312801e-02, -3.888826867106918994e-02, -3.890077352288163343e-02, -3.891321377074435234e-02, -3.892558940191685746e-02, -3.893790040376400585e-02, -3.895014676375683355e-02, -3.896232846947162570e-02, -3.897444550859039542e-02, -3.898649786890098085e-02, -3.899848553829692033e-02, -3.901040850477709154e-02, -3.902226675644660664e-02, -3.903406028151572976e-02, -3.904578906830097340e-02, -3.905745310522406449e-02, -3.906905238081297138e-02, -3.908058688370096706e-02, -3.909205660262711490e-02, -3.910346152643657397e-02, -3.911480164407984267e-02, -3.912607694461336938e-02, -3.913728741719954551e-02, -3.914843305110603244e-02, -3.915951383570678151e-02, -3.917052976048118751e-02, -3.918148081501449803e-02, -3.919236698899805638e-02, -3.920318827222842722e-02, -3.921394465460848605e-02, -3.922463612614673911e-02, -3.923526267695726100e-02, -3.924582429726031219e-02, -3.925632097738186721e-02, -3.926675270775342036e-02, -3.927711947891272815e-02, -3.928742128150314317e-02, -3.929765810627371819e-02, -3.930782994407964331e-02, -3.931793678588177410e-02, -3.932797862274655526e-02, -3.933795544584694354e-02, -3.934786724646098521e-02, -3.935771401597309982e-02, -3.936749574587320583e-02, -3.937721242775719249e-02, -3.938686405332694762e-02, -3.939645061439012164e-02, -3.940597210285984309e-02, -3.941542851075588438e-02, -3.942481983020298952e-02, -3.943414605343240759e-02, -3.944340717278100455e-02, -3.945260318069124944e-02, -3.946173406971201225e-02, -3.947079983249753010e-02, -3.947980046180808722e-02, -3.948873595051000801e-02, -3.949760629157507419e-02, -3.950641147808102438e-02, -3.951515150321180392e-02, -3.952382636025696810e-02, -3.953243604261177241e-02, -3.954098054377729043e-02, -3.954945985736084413e-02, -3.955787397707531683e-02, -3.956622289673928511e-02, -3.957450661027764327e-02, -3.958272511172069436e-02, -3.959087839520470525e-02, -3.959896645497180956e-02, -3.960698928536999369e-02, -3.961494688085299976e-02, -3.962283923598038105e-02, -3.963066634541754368e-02, -3.963842820393588540e-02, -3.964612480641224040e-02, -3.965375614782975372e-02, -3.966132222327684725e-02, -3.966882302794807330e-02, -3.967625855714377453e-02, -3.968362880626984113e-02, -3.969093377083841856e-02, -3.969817344646691532e-02, -3.970534782887891884e-02, -3.971245691390351551e-02, -3.971950069747563761e-02, -3.972647917563614656e-02, -3.973339234453143742e-02, -3.974024020041395239e-02, -3.974702273964148685e-02, -3.975373995867778620e-02, -3.976039185409240700e-02, -3.976697842256059212e-02, -3.977349966086316663e-02, -3.977995556588674597e-02, -3.978634613462392333e-02, -3.979267136417240225e-02, -3.979893125173632890e-02, -3.980512579462470307e-02, -3.981125499025291864e-02, -3.981731883614167411e-02, -3.982331732991764572e-02, -3.982925046931255764e-02, -3.983511825216429908e-02, -3.984092067641641088e-02, -3.984665774011774547e-02, -3.985232944142313993e-02, -3.985793577859268744e-02, -3.986347674999223684e-02, -3.986895235409326083e-02, -3.987436258947281431e-02, -3.987970745481365931e-02, -3.988498694890383472e-02, -3.989020107063719067e-02, -3.989534981901277089e-02, -3.990043319313552050e-02, -3.990545119221593912e-02, -3.991040381556958117e-02, -3.991529106261810372e-02, -3.992011293288824647e-02, -3.992486942601217170e-02, -3.992956054172797781e-02, -3.993418627987882497e-02, -3.993874664041337230e-02, -3.994324162338567380e-02, -3.994767122895553912e-02, -3.995203545738786055e-02, -3.995633430905287664e-02, -3.996056778442658164e-02, -3.996473588408986505e-02, -3.996883860872940675e-02, -3.997287595913704555e-02, -3.997684793620992494e-02, -3.998075454095061793e-02, -3.998459577446673158e-02, -3.998837163797158006e-02, -3.999208213278353935e-02, -3.999572726032613046e-02, -3.999930702212853295e-02, -4.000282141982464124e-02, -4.000627045515379315e-02, -4.000965412996075610e-02, -4.001297244619540783e-02, -4.001622540591234095e-02, -4.001941301127190376e-02, -4.002253526453943000e-02, -4.002559216808510706e-02, -4.002858372438466983e-02, -4.003150993601859581e-02, -4.003437080567267409e-02, -4.003716633613764453e-02, -4.003989653030928103e-02, -4.004256139118864133e-02, -4.004516092188154658e-02, -4.004769512559884503e-02, -4.005016400565653695e-02, -4.005256756547518476e-02, -4.005490580858089844e-02, -4.005717873860441952e-02, -4.005938635928110031e-02, -4.006152867445184063e-02, -4.006360568806203309e-02, -4.006561740416174355e-02, -4.006756382690640494e-02, -4.006944496055584587e-02, -4.007126080947484570e-02, -4.007301137813316233e-02, -4.007469667110468564e-02, -4.007631669306911670e-02, -4.007787144881000407e-02, -4.007936094321586096e-02, -4.008078518127995704e-02, -4.008214416810020053e-02, -4.008343790887915897e-02, -4.008466640892407312e-02, -4.008582967364670430e-02, -4.008692770856347315e-02, -4.008796051929535559e-02, -4.008892811156794522e-02, -4.008983049121119663e-02, -4.009066766415963351e-02, -4.009143963645254299e-02, -4.009214641423333031e-02, -4.009278800374997676e-02, -4.009336441135472051e-02, -4.009387564350448685e-02, -4.009432170676049956e-02, -4.009470260778810746e-02, -4.009501835335745057e-02, -4.009526895034246086e-02, -4.009545440572172964e-02, -4.009557472657786920e-02, -4.009562992009808868e-02, -4.009561999357322271e-02, -4.009554495439904970e-02, -4.009540481007502211e-02, -4.009519956820454395e-02, -4.009492923649593532e-02, -4.009459382276080175e-02, -4.009419333491519993e-02, -4.009372778097947121e-02, -4.009319716907729092e-02, -4.009260150743720885e-02, -4.009194080439086594e-02, -4.009121506837458326e-02, -4.009042430792834899e-02, -4.008956853169585999e-02, -4.008864774842488959e-02, -4.008766196696719047e-02, -4.008661119627797420e-02, -4.008549544541653575e-02, -4.008431472354598984e-02, -4.008306903993297948e-02, -4.008175840394789802e-02, -4.008038282506510425e-02, -4.007894231286225628e-02, -4.007743687702083890e-02, -4.007586652732607335e-02, -4.007423127366634835e-02, -4.007253112603415685e-02, -4.007076609452512456e-02, -4.006893618933851653e-02, -4.006704142077706365e-02, -4.006508179924706675e-02, -4.006305733525784840e-02, -4.006096803942257173e-02, -4.005881392245768530e-02, -4.005659499518265249e-02, -4.005431126852068702e-02, -4.005196275349778151e-02, -4.004954946124368587e-02, -4.004707140299092194e-02, -4.004452859007562315e-02, -4.004192103393657692e-02, -4.003924874611612672e-02, -4.003651173825956838e-02, -4.003371002211523338e-02, -4.003084360953453741e-02, -4.002791251247182769e-02, -4.002491674298438301e-02, -4.002185631323262882e-02, -4.001873123547979721e-02, -4.001554152209198939e-02, -4.001228718553800912e-02, -4.000896823838993172e-02, -4.000558469332189671e-02, -4.000213656311159272e-02, -3.999862386063884195e-02, -3.999504659888648839e-02, -3.999140479093975242e-02, -3.998769844998680684e-02, -3.998392758931823554e-02, -3.998009222232710991e-02, -3.997619236250922470e-02, -3.997222802346260540e-02, -3.996819921888810495e-02, -3.996410596258859887e-02, -3.995994826846955422e-02, -3.995572615053908511e-02, -3.995143962290695350e-02, -3.994708869978583904e-02, -3.994267339549032597e-02, -3.993819372443747906e-02, -3.993364970114612195e-02, -3.992904134023795432e-02, -3.992436865643604615e-02, -3.991963166456589940e-02, -3.991483037955500385e-02, -3.990996481643305921e-02, -3.990503499033126733e-02, -3.990004091648336609e-02, -3.989498261022454695e-02, -3.988986008699208635e-02, -3.988467336232513066e-02, -3.987942245186425205e-02, -3.987410737135238525e-02, -3.986872813663371734e-02, -3.986328476365427059e-02, -3.985777726846169433e-02, -3.985220566720532737e-02, -3.984656997613595514e-02, -3.984087021160607339e-02, -3.983510639006956205e-02, -3.982927852808188646e-02, -3.982338664229959080e-02, -3.981743074948086020e-02, -3.981141086648550681e-02, -3.980532701027415798e-02, -3.979917919790901953e-02, -3.979296744655325818e-02, -3.978669177347154973e-02, -3.978035219602967659e-02, -3.977394873169426415e-02, -3.976748139803327337e-02, -3.976095021271550123e-02, -3.975435519351097624e-02, -3.974769635829061842e-02, -3.974097372502617687e-02, -3.973418731179025054e-02, -3.972733713675641321e-02, -3.972042321819899136e-02, -3.971344557449306423e-02, -3.970640422411411685e-02, -3.969929918563899762e-02, -3.969213047774451664e-02, -3.968489811920837551e-02, -3.967760212890905636e-02, -3.967024252582488503e-02, -3.966281932903546054e-02, -3.965533255772014237e-02, -3.964778223115882072e-02, -3.964016836873222177e-02, -3.963249098992072811e-02, -3.962475011430541261e-02, -3.961694576156722658e-02, -3.960907795148748550e-02, -3.960114670394757758e-02, -3.959315203892917884e-02, -3.958509397651374662e-02, -3.957697253688266525e-02, -3.956878774031765550e-02, -3.956053960719994184e-02, -3.955222815801087699e-02, -3.954385341333151171e-02, -3.953541539384290010e-02, -3.952691412032541263e-02, -3.951834961365946475e-02, -3.950972189482494790e-02, -3.950103098490138215e-02, -3.949227690506808969e-02, -3.948345967660332051e-02, -3.947457932088547367e-02, -3.946563585939172336e-02, -3.945662931369925408e-02, -3.944755970548397689e-02, -3.943842705652159802e-02, -3.942923138868678623e-02, -3.941997272395322133e-02, -3.941065108439411463e-02, -3.940126649218177179e-02, -3.939181896958710710e-02, -3.938230853898044143e-02, -3.937273522283091243e-02, -3.936309904370649537e-02, -3.935340002427436396e-02, -3.934363818729994661e-02, -3.933381355564807141e-02, -3.932392615228169630e-02, -3.931397600026285272e-02, -3.930396312275188236e-02, -3.929388754300809639e-02, -3.928374928438906066e-02, -3.927354837035068602e-02, -3.926328482444776946e-02, -3.925295867033312680e-02, -3.924256993175803676e-02, -3.923211863257175525e-02, -3.922160479672245903e-02, -3.921102844825582329e-02, -3.920038961131596528e-02, -3.918968831014505577e-02, -3.917892456908336068e-02, -3.916809841256892188e-02, -3.915720986513785556e-02, -3.914625895142435918e-02, -3.913524569616017024e-02, -3.912417012417468420e-02, -3.911303226039567621e-02, -3.910183212984778139e-02, -3.909056975765384800e-02, -3.907924516903409085e-02, -3.906785838930633414e-02, -3.905640944388556746e-02, -3.904489835828491712e-02, -3.903332515811397396e-02, -3.902168986908026438e-02, -3.900999251698850090e-02, -3.899823312774046424e-02, -3.898641172733516291e-02, -3.897452834186875686e-02, -3.896258299753427995e-02, -3.895057572062214646e-02, -3.893850653751921437e-02, -3.892637547470978454e-02, -3.891418255877463622e-02, -3.890192781639134623e-02, -3.888961127433445547e-02, -3.887723295947507346e-02, -3.886479289878089910e-02, -3.885229111931618601e-02, -3.883972764824184659e-02, -3.882710251281502184e-02, -3.881441574038966419e-02, -3.880166735841557302e-02, -3.878885739443932446e-02, -3.877598587610362607e-02, -3.876305283114693523e-02, -3.875005828740459013e-02, -3.873700227280752612e-02, -3.872388481538264343e-02, -3.871070594325325132e-02, -3.869746568463797859e-02, -3.868416406785198797e-02, -3.867080112130566460e-02, -3.865737687350552509e-02, -3.864389135305361378e-02, -3.863034458864744725e-02, -3.861673660908055555e-02, -3.860306744324153161e-02, -3.858933712011479444e-02, -3.857554566877997165e-02, -3.856169311841202429e-02, -3.854777949828136485e-02, -3.853380483775337845e-02, -3.851976916628900571e-02, -3.850567251344387543e-02, -3.849151490886908167e-02, -3.847729638231030952e-02, -3.846301696360853589e-02, -3.844867668269957850e-02, -3.843427556961383218e-02, -3.841981365447685870e-02, -3.840529096750845695e-02, -3.839070753902335681e-02, -3.837606339943087919e-02, -3.836135857923495679e-02, -3.834659310903372476e-02, -3.833176701952002718e-02, -3.831688034148066080e-02, -3.830193310579727006e-02, -3.828692534344518839e-02, -3.827185708549430548e-02, -3.825672836310841513e-02, -3.824153920754559677e-02, -3.822628965015741759e-02, -3.821097972238994556e-02, -3.819560945578295841e-02, -3.818017888196983262e-02, -3.816468803267774462e-02, -3.814913693972792064e-02, -3.813352563503468601e-02, -3.811785415060615217e-02, -3.810212251854415422e-02, -3.808633077104365411e-02, -3.807047894039293501e-02, -3.805456705897407310e-02, -3.803859515926177187e-02, -3.802256327382438211e-02, -3.800647143532324274e-02, -3.799031967651263914e-02, -3.797410803024017095e-02, -3.795783652944600267e-02, -3.794150520716333547e-02, -3.792511409651820597e-02, -3.790866323072925037e-02, -3.789215264310825254e-02, -3.787558236705895753e-02, -3.785895243607800831e-02, -3.784226288375476532e-02, -3.782551374377039061e-02, -3.780870504989913838e-02, -3.779183683600696037e-02, -3.777490913605247025e-02, -3.775792198408613881e-02, -3.774087541425071024e-02, -3.772376946078093152e-02, -3.770660415800361487e-02, -3.768937954033736021e-02, -3.767209564229234003e-02, -3.765475249847133332e-02, -3.763735014356782427e-02, -3.761988861236761211e-02, -3.760236793974805480e-02, -3.758478816067760409e-02, -3.756714931021646470e-02, -3.754945142351612253e-02, -3.753169453581945564e-02, -3.751387868246073426e-02, -3.749600389886495466e-02, -3.747807022054874815e-02, -3.746007768311920838e-02, -3.744202632227500160e-02, -3.742391617380556867e-02, -3.740574727359073648e-02, -3.738751965760155754e-02, -3.736923336189979655e-02, -3.735088842263770137e-02, -3.733248487605807936e-02, -3.731402275849410310e-02, -3.729550210636997654e-02, -3.727692295619976920e-02, -3.725828534458757585e-02, -3.723958930822855729e-02, -3.722083488390734440e-02, -3.720202210849878066e-02, -3.718315101896801922e-02, -3.716422165236978742e-02, -3.714523404584914312e-02, -3.712618823664050327e-02, -3.710708426206839328e-02, -3.708792215954659355e-02, -3.706870196657884725e-02, -3.704942372075846480e-02, -3.703008745976798383e-02, -3.701069322137930800e-02, -3.699124104345401232e-02, -3.697173096394253816e-02, -3.695216302088460275e-02, -3.693253725240935870e-02, -3.691285369673443645e-02, -3.689311239216695043e-02, -3.687331337710252760e-02, -3.685345669002589031e-02, -3.683354236951041222e-02, -3.681357045421802809e-02, -3.679354098289943503e-02, -3.677345399439386348e-02, -3.675330952762899395e-02, -3.673310762162083909e-02, -3.671284831547374367e-02, -3.669253164838029435e-02, -3.667215765962138219e-02, -3.665172638856572379e-02, -3.663123787467034015e-02, -3.661069215748032069e-02, -3.659008927662804611e-02, -3.656942927183413905e-02, -3.654871218290711016e-02, -3.652793804974290709e-02, -3.650710691232483124e-02, -3.648621881072412060e-02, -3.646527378509939465e-02, -3.644427187569612009e-02, -3.642321312284770018e-02, -3.640209756697462828e-02, -3.638092524858417554e-02, -3.635969620827107784e-02, -3.633841048671695995e-02, -3.631706812469006479e-02, -3.629566916304590579e-02, -3.627421364272645499e-02, -3.625270160476071896e-02, -3.623113309026389228e-02, -3.620950814043789184e-02, -3.618782679657137763e-02, -3.616608910003883681e-02, -3.614429509230161763e-02, -3.612244481490710368e-02, -3.610053830948860287e-02, -3.607857561776561112e-02, -3.605655678154395111e-02, -3.603448184271521720e-02, -3.601235084325647012e-02, -3.599016382523114593e-02, -3.596792083078786950e-02, -3.594562190216141206e-02, -3.592326708167146304e-02, -3.590085641172372638e-02, -3.587838993480908789e-02, -3.585586769350351116e-02, -3.583328973046880084e-02, -3.581065608845110382e-02, -3.578796681028242888e-02, -3.576522193887918255e-02, -3.574242151724315447e-02, -3.571956558846076102e-02, -3.569665419570276083e-02, -3.567368738222560093e-02, -3.565066519136943918e-02, -3.562758766655935161e-02, -3.560445485130479815e-02, -3.558126678919951158e-02, -3.555802352392178206e-02, -3.553472509923379791e-02, -3.551137155898211745e-02, -3.548796294709709309e-02, -3.546449930759330849e-02, -3.544098068456911360e-02, -3.541740712220679127e-02, -3.539377866477209922e-02, -3.537009535661451293e-02, -3.534635724216731584e-02, -3.532256436594726628e-02, -3.529871677255402851e-02, -3.527481450667122043e-02, -3.525085761306532423e-02, -3.522684613658617209e-02, -3.520278012216665475e-02, -3.517865961482252724e-02, -3.515448465965259617e-02, -3.513025530183838674e-02, -3.510597158664438555e-02, -3.508163355941774225e-02, -3.505724126558776993e-02, -3.503279475066699289e-02, -3.500829406024981438e-02, -3.498373924001302315e-02, -3.495913033571602935e-02, -3.493446739320008043e-02, -3.490975045838883017e-02, -3.488497957728750598e-02, -3.486015479598369299e-02, -3.483527616064676508e-02, -3.481034371752747547e-02, -3.478535751295867146e-02, -3.476031759335486415e-02, -3.473522400521174974e-02, -3.471007679510646621e-02, -3.468487600969783619e-02, -3.465962169572575635e-02, -3.463431390001114885e-02, -3.460895266945626658e-02, -3.458353805104429080e-02, -3.455807009183938655e-02, -3.453254883898637662e-02, -3.450697433971103290e-02, -3.448134664131968091e-02, -3.445566579119930389e-02, -3.442993183681760522e-02, -3.440414482572229371e-02, -3.437830480554143753e-02, -3.435241182398371396e-02, -3.432646592883776410e-02, -3.430046716797233164e-02, -3.427441558933591592e-02, -3.424831124095729235e-02, -3.422215417094493645e-02, -3.419594442748684349e-02, -3.416968205885105581e-02, -3.414336711338477465e-02, -3.411699963951483894e-02, -3.409057968574755876e-02, -3.406410730066847248e-02, -3.403758253294225655e-02, -3.401100543131284348e-02, -3.398437604460318590e-02, -3.395769442171514552e-02, -3.393096061162923643e-02, -3.390417466340531899e-02, -3.387733662618129526e-02, -3.385044654917417073e-02, -3.382350448167912443e-02, -3.379651047307001555e-02, -3.376946457279890457e-02, -3.374236683039599782e-02, -3.371521729547011931e-02, -3.368801601770748944e-02, -3.366076304687295323e-02, -3.363345843280863418e-02, -3.360610222543519710e-02, -3.357869447475030078e-02, -3.355123523082962494e-02, -3.352372454382661349e-02, -3.349616246397156549e-02, -3.346854904157254423e-02, -3.344088432701484981e-02, -3.341316837076090118e-02, -3.338540122335011823e-02, -3.335758293539917846e-02, -3.332971355760146887e-02, -3.330179314072732877e-02, -3.327382173562355716e-02, -3.324579939321421068e-02, -3.321772616449920196e-02, -3.318960210055529880e-02, -3.316142725253552054e-02, -3.313320167166921432e-02, -3.310492540926195798e-02, -3.307659851669530332e-02, -3.304822104542695649e-02, -3.301979304699037554e-02, -3.299131457299520759e-02, -3.296278567512633817e-02, -3.293420640514442554e-02, -3.290557681488615743e-02, -3.287689695626311998e-02, -3.284816688126255407e-02, -3.281938664194678640e-02, -3.279055629045338899e-02, -3.276167587899535966e-02, -3.273274545986032402e-02, -3.270376508541086857e-02, -3.267473480808430475e-02, -3.264565468039303670e-02, -3.261652475492386044e-02, -3.258734508433798471e-02, -3.255811572137136400e-02, -3.252883671883418509e-02, -3.249950812961076296e-02, -3.247013000665958243e-02, -3.244070240301372143e-02, -3.241122537177922036e-02, -3.238169896613712906e-02, -3.235212323934144596e-02, -3.232249824472043648e-02, -3.229282403567552973e-02, -3.226310066568217200e-02, -3.223332818828852225e-02, -3.220350665711679133e-02, -3.217363612586192356e-02, -3.214371664829246411e-02, -3.211374827824941408e-02, -3.208373106964702848e-02, -3.205366507647259416e-02, -3.202355035278590945e-02, -3.199338695271948529e-02, -3.196317493047831637e-02, -3.193291434034018633e-02, -3.190260523665479353e-02, -3.187224767384451429e-02, -3.184184170640372291e-02, -3.181138738889894430e-02, -3.178088477596861805e-02, -3.175033392232316787e-02, -3.171973488274494601e-02, -3.168908771208767128e-02, -3.165839246527676898e-02, -3.162764919730964158e-02, -3.159685796325448909e-02, -3.156601881825099598e-02, -3.153513181751044919e-02, -3.150419701631492625e-02, -3.147321447001746181e-02, -3.144218423404233215e-02, -3.141110636388430577e-02, -3.137998091510922627e-02, -3.134880794335335313e-02, -3.131758750432365318e-02, -3.128631965379745361e-02, -3.125500444762219221e-02, -3.122364194171629859e-02, -3.119223219206748027e-02, -3.116077525473414170e-02, -3.112927118584426361e-02, -3.109772004159598244e-02, -3.106612187825695884e-02, -3.103447675216457202e-02, -3.100278471972608627e-02, -3.097104583741779743e-02, -3.093926016178556726e-02, -3.090742774944442786e-02, -3.087554865707898763e-02, -3.084362294144243205e-02, -3.081165065935708228e-02, -3.077963186771439860e-02, -3.074756662347416861e-02, -3.071545498366523921e-02, -3.068329700538485402e-02, -3.065109274579892046e-02, -3.061884226214129506e-02, -3.058654561171485209e-02, -3.055420285188991530e-02, -3.052181404010541332e-02, -3.048937923386788387e-02, -3.045689849075208441e-02, -3.042437186840021499e-02, -3.039179942452245597e-02, -3.035918121689648586e-02, -3.032651730336741527e-02, -3.029380774184775582e-02, -3.026105259031726738e-02, -3.022825190682321486e-02, -3.019540574947931350e-02, -3.016251417646679395e-02, -3.012957724603361476e-02, -3.009659501649451785e-02, -3.006356754623080302e-02, -3.003049489369043548e-02, -2.999737711738820548e-02, -2.996421427590455211e-02, -2.993100642788668053e-02, -2.989775363204807274e-02, -2.986445594716800531e-02, -2.983111343209160493e-02, -2.979772614573035841e-02, -2.976429414706103713e-02, -2.973081749512627298e-02, -2.969729624903433979e-02, -2.966373046795880639e-02, -2.963012021113897027e-02, -2.959646553787859471e-02, -2.956276650754738333e-02, -2.952902317957973449e-02, -2.949523561347502237e-02, -2.946140386879762818e-02, -2.942752800517653769e-02, -2.939360808230528574e-02, -2.935964415994194929e-02, -2.932563629790944926e-02, -2.929158455609449235e-02, -2.925748899444815393e-02, -2.922334967298602024e-02, -2.918916665178707473e-02, -2.915493999099475972e-02, -2.912066975081588002e-02, -2.908635599152139747e-02, -2.905199877344552886e-02, -2.901759815698623513e-02, -2.898315420260454134e-02, -2.894866697082518203e-02, -2.891413652223569219e-02, -2.887956291748693810e-02, -2.884494621729280853e-02, -2.881028648242978107e-02, -2.877558377373746340e-02, -2.874083815211773973e-02, -2.870604967853548906e-02, -2.867121841401748528e-02, -2.863634441965357685e-02, -2.860142775659520187e-02, -2.856646848605627967e-02, -2.853146666931267311e-02, -2.849642236770213652e-02, -2.846133564262445445e-02, -2.842620655554081721e-02, -2.839103516797436208e-02, -2.835582154150936146e-02, -2.832056573779171901e-02, -2.828526781852868169e-02, -2.824992784548870789e-02, -2.821454588050105114e-02, -2.817912198545605498e-02, -2.814365622230528136e-02, -2.810814865306069874e-02, -2.807259933979485908e-02, -2.803700834464141825e-02, -2.800137572979368925e-02, -2.796570155750594672e-02, -2.792998589009238614e-02, -2.789422878992753319e-02, -2.785843031944580661e-02, -2.782259054114128924e-02, -2.778670951756863003e-02, -2.775078731134146895e-02, -2.771482398513298515e-02, -2.767881960167650410e-02, -2.764277422376412718e-02, -2.760668791424744292e-02, -2.757056073603720431e-02, -2.753439275210326984e-02, -2.749818402547432941e-02, -2.746193461923792864e-02, -2.742564459654049658e-02, -2.738931402058687389e-02, -2.735294295464051062e-02, -2.731653146202324065e-02, -2.728007960611526089e-02, -2.724358745035497173e-02, -2.720705505823863002e-02, -2.717048249332084178e-02, -2.713386981921373300e-02, -2.709721709958738331e-02, -2.706052439816943739e-02, -2.702379177874518826e-02, -2.698701930515710196e-02, -2.695020704130510897e-02, -2.691335505114672566e-02, -2.687646339869580875e-02, -2.683953214802391185e-02, -2.680256136325910934e-02, -2.676555110858633985e-02, -2.672850144824718763e-02, -2.669141244653959466e-02, -2.665428416781858573e-02, -2.661711667649479043e-02, -2.657991003703545629e-02, -2.654266431396386586e-02, -2.650537957185926038e-02, -2.646805587535688148e-02, -2.643069328914782190e-02, -2.639329187797844270e-02, -2.635585170665125793e-02, -2.631837284002362665e-02, -2.628085534300890827e-02, -2.624329928057518233e-02, -2.620570471774580357e-02, -2.616807171959938116e-02, -2.613040035126903970e-02, -2.609269067794298819e-02, -2.605494276486380184e-02, -2.601715667732915072e-02, -2.597933248069075191e-02, -2.594147024035458465e-02, -2.590357002178127199e-02, -2.586563189048526543e-02, -2.582765591203520228e-02, -2.578964215205343732e-02, -2.575159067621645911e-02, -2.571350155025389425e-02, -2.567537483994926720e-02, -2.563721061113983027e-02, -2.559900892971574485e-02, -2.556076986162051159e-02, -2.552249347285088371e-02, -2.548417982945661367e-02, -2.544582899754021035e-02, -2.540744104325693906e-02, -2.536901603281509557e-02, -2.533055403247528106e-02, -2.529205510855037781e-02, -2.525351932740601754e-02, -2.521494675545973493e-02, -2.517633745918128677e-02, -2.513769150509232581e-02, -2.509900895976673388e-02, -2.506028988982991756e-02, -2.502153436195867289e-02, -2.498274244288193474e-02, -2.494391419937978804e-02, -2.490504969828327350e-02, -2.486614900647545617e-02, -2.482721219088989892e-02, -2.478823931851127996e-02, -2.474923045637499042e-02, -2.471018567156775883e-02, -2.467110503122627377e-02, -2.463198860253804079e-02, -2.459283645274120897e-02, -2.455364864912390477e-02, -2.451442525902447489e-02, -2.447516634983140996e-02, -2.443587198898339308e-02, -2.439654224396856780e-02, -2.435717718232514525e-02, -2.431777687164056803e-02, -2.427834137955224916e-02, -2.423887077374645496e-02, -2.419936512195949505e-02, -2.415982449197611251e-02, -2.412024895163049701e-02, -2.408063856880544862e-02, -2.404099341143312377e-02, -2.400131354749386950e-02, -2.396159904501680288e-02, -2.392184997207968261e-02, -2.388206639680845109e-02, -2.384224838737726906e-02, -2.380239601200838037e-02, -2.376250933897248313e-02, -2.372258843658767158e-02, -2.368263337321997383e-02, -2.364264421728341781e-02, -2.360262103723897650e-02, -2.356256390159537986e-02, -2.352247287890895516e-02, -2.348234803778295743e-02, -2.344218944686769085e-02, -2.340199717486050185e-02, -2.336177129050569234e-02, -2.332151186259429076e-02, -2.328121895996373633e-02, -2.324089265149831968e-02, -2.320053300612862426e-02, -2.316014009283148475e-02, -2.311971398062954292e-02, -2.307925473859233703e-02, -2.303876243583476841e-02, -2.299823714151734422e-02, -2.295767892484704489e-02, -2.291708785507563101e-02, -2.287646400150071535e-02, -2.283580743346544026e-02, -2.279511822035792251e-02, -2.275439643161133660e-02, -2.271364213670418533e-02, -2.267285540515969963e-02, -2.263203630654573445e-02, -2.259118491047489366e-02, -2.255030128660460292e-02, -2.250938550463629090e-02, -2.246843763431603108e-02, -2.242745774543367099e-02, -2.238644590782369603e-02, -2.234540219136406380e-02, -2.230432666597675570e-02, -2.226321940162771795e-02, -2.222208046832610528e-02, -2.218090993612447520e-02, -2.213970787511936045e-02, -2.209847435544999572e-02, -2.205720944729890748e-02, -2.201591322089179598e-02, -2.197458574649712934e-02, -2.193322709442606724e-02, -2.189183733503252682e-02, -2.185041653871310288e-02, -2.180896477590666890e-02, -2.176748211709423828e-02, -2.172596863279953674e-02, -2.168442439358776730e-02, -2.164284947006658855e-02, -2.160124393288495245e-02, -2.155960785273422151e-02, -2.151794130034681563e-02, -2.147624434649682626e-02, -2.143451706199976312e-02, -2.139275951771227313e-02, -2.135097178453204333e-02, -2.130915393339824493e-02, -2.126730603529033287e-02, -2.122542816122888892e-02, -2.118352038227502496e-02, -2.114158276953062576e-02, -2.109961539413765866e-02, -2.105761832727852390e-02, -2.101559164017587078e-02, -2.097353540409233399e-02, -2.093144969033050931e-02, -2.088933457023270726e-02, -2.084719011518135559e-02, -2.080501639659782312e-02, -2.076281348594359241e-02, -2.072058145471896567e-02, -2.067832037446374824e-02, -2.063603031675663793e-02, -2.059371135321583918e-02, -2.055136355549783134e-02, -2.050898699529820832e-02, -2.046658174435080774e-02, -2.042414787442855401e-02, -2.038168545734233769e-02, -2.033919456494121328e-02, -2.029667526911293346e-02, -2.025412764178283892e-02, -2.021155175491420528e-02, -2.016894768050826042e-02, -2.012631549060388964e-02, -2.008365525727737882e-02, -2.004096705264249434e-02, -1.999825094885060786e-02, -1.995550701808998170e-02, -1.991273533258571329e-02, -1.986993596460045683e-02, -1.982710898643331998e-02, -1.978425447042020391e-02, -1.974137248893335222e-02, -1.969846311438214551e-02, -1.965552641921163371e-02, -1.961256247590318150e-02, -1.956957135697486028e-02, -1.952655313498005696e-02, -1.948350788250828233e-02, -1.944043567218472698e-02, -1.939733657667038966e-02, -1.935421066866171297e-02, -1.931105802089017748e-02, -1.926787870612315864e-02, -1.922467279716261190e-02, -1.918144036684586023e-02, -1.913818148804502170e-02, -1.909489623366683944e-02, -1.905158467665299393e-02, -1.900824688997939174e-02, -1.896488294665671023e-02, -1.892149291972975919e-02, -1.887807688227740102e-02, -1.883463490741276933e-02, -1.879116706828278666e-02, -1.874767343806822001e-02, -1.870415408998343104e-02, -1.866060909727668832e-02, -1.861703853322941096e-02, -1.857344247115617214e-02, -1.852982098440529579e-02, -1.848617414635768050e-02, -1.844250203042753847e-02, -1.839880471006169471e-02, -1.835508225873969460e-02, -1.831133474997388363e-02, -1.826756225730871014e-02, -1.822376485432151971e-02, -1.817994261462140340e-02, -1.813609561184969035e-02, -1.809222391968002067e-02, -1.804832761181737050e-02, -1.800440676199887777e-02, -1.796046144399291583e-02, -1.791649173159979083e-02, -1.787249769865101312e-02, -1.782847941900906133e-02, -1.778443696656803810e-02, -1.774037041525281314e-02, -1.769627983901898155e-02, -1.765216531185311369e-02, -1.760802690777258164e-02, -1.756386470082483067e-02, -1.751967876508794125e-02, -1.747546917467048336e-02, -1.743123600371090584e-02, -1.738697932637757806e-02, -1.734269921686922705e-02, -1.729839574941395217e-02, -1.725406899826974552e-02, -1.720971903772393688e-02, -1.716534594209357875e-02, -1.712094978572466231e-02, -1.707653064299252677e-02, -1.703208858830179695e-02, -1.698762369608561654e-02, -1.694313604080611643e-02, -1.689862569695397068e-02, -1.685409273904879199e-02, -1.680953724163843088e-02, -1.676495927929852470e-02, -1.672035892663384718e-02, -1.667573625827654255e-02, -1.663109134888690957e-02, -1.658642427315325588e-02, -1.654173510579131506e-02, -1.649702392154446876e-02, -1.645229079518345863e-02, -1.640753580150670909e-02, -1.636275901533949112e-02, -1.631796051153408533e-02, -1.627314036497028507e-02, -1.622829865055416820e-02, -1.618343544321864877e-02, -1.613855081792321330e-02, -1.609364484965414982e-02, -1.604871761342368391e-02, -1.600376918427040898e-02, -1.595879963725893233e-02, -1.591380904748001396e-02, -1.586879749004992124e-02, -1.582376504011110893e-02, -1.577871177283138304e-02, -1.573363776340391124e-02, -1.568854308704724365e-02, -1.564342781900556964e-02, -1.559829203454759887e-02, -1.555313580896731940e-02, -1.550795921758368542e-02, -1.546276233574017667e-02, -1.541754523880487469e-02, -1.537230800217037098e-02, -1.532705070125385712e-02, -1.528177341149649683e-02, -1.523647620836359427e-02, -1.519115916734453849e-02, -1.514582236395248249e-02, -1.510046587372425135e-02, -1.505508977222072033e-02, -1.500969413502576365e-02, -1.496427903774686166e-02, -1.491884455601451623e-02, -1.487339076548271043e-02, -1.482791774182827017e-02, -1.478242556075063351e-02, -1.473691429797244906e-02, -1.469138402923864800e-02, -1.464583483031674238e-02, -1.460026677699658229e-02, -1.455467994509047035e-02, -1.450907441043267597e-02, -1.446345024887930354e-02, -1.441780753630890997e-02, -1.437214634862102845e-02, -1.432646676173726305e-02, -1.428076885160081862e-02, -1.423505269417605322e-02, -1.418931836544866203e-02, -1.414356594142533383e-02, -1.409779549813414828e-02, -1.405200711162375021e-02, -1.400620085796336171e-02, -1.396037681324334596e-02, -1.391453505357428781e-02, -1.386867565508710827e-02, -1.382279869393295522e-02, -1.377690424628340467e-02, -1.373099238832977895e-02, -1.368506319628321789e-02, -1.363911674637501535e-02, -1.359315311485581081e-02, -1.354717237799547835e-02, -1.350117461208384315e-02, -1.345515989342974117e-02, -1.340912829836092557e-02, -1.336307990322466860e-02, -1.331701478438665660e-02, -1.327093301823161105e-02, -1.322483468116252697e-02, -1.317871984960156811e-02, -1.313258859998866872e-02, -1.308644100878226038e-02, -1.304027715245880889e-02, -1.299409710751309871e-02, -1.294790095045750093e-02, -1.290168875782205654e-02, -1.285546060615491704e-02, -1.280921657202129492e-02, -1.276295673200392340e-02, -1.271668116270285691e-02, -1.267038994073526638e-02, -1.262408314273507845e-02, -1.257776084535369536e-02, -1.253142312525873728e-02, -1.248507005913467721e-02, -1.243870172368236222e-02, -1.239231819561934476e-02, -1.234591955167912113e-02, -1.229950586861140206e-02, -1.225307722318185605e-02, -1.220663369217233653e-02, -1.216017535238005445e-02, -1.211370228061799462e-02, -1.206721455371491045e-02, -1.202071224851458502e-02, -1.197419544187619707e-02, -1.192766421067404867e-02, -1.188111863179747672e-02, -1.183455878215052513e-02, -1.178798473865243397e-02, -1.174139657823665590e-02, -1.169479437785128292e-02, -1.164817821445865605e-02, -1.160154816503578511e-02, -1.155490430657334956e-02, -1.150824671607617901e-02, -1.146157547056319247e-02, -1.141489064706680857e-02, -1.136819232263315375e-02, -1.132148057432174129e-02, -1.127475547920579746e-02, -1.122801711437150518e-02, -1.118126555691825209e-02, -1.113450088395826279e-02, -1.108772317261728230e-02, -1.104093250003269737e-02, -1.099412894335565112e-02, -1.094731257974912962e-02, -1.090048348638858119e-02, -1.085364174046171866e-02, -1.080678741916869454e-02, -1.075992059972124409e-02, -1.071304135934302362e-02, -1.066614977526981513e-02, -1.061924592474858264e-02, -1.057232988503795275e-02, -1.052540173340782946e-02, -1.047846154713968567e-02, -1.043150940352574954e-02, -1.038454537986942781e-02, -1.033756955348478883e-02, -1.029058200169700489e-02, -1.024358280184160461e-02, -1.019657203126465850e-02, -1.014954976732253440e-02, -1.010251608738198942e-02, -1.005547106881965469e-02, -1.000841478902257838e-02, -9.961347325387309715e-03, -9.914268755320041274e-03, -9.867179156237099874e-03, -9.820078605563808613e-03, -9.772967180735014220e-03, -9.725844959194670722e-03, -9.678712018396233227e-03, -9.631568435801754133e-03, -9.584414288882134661e-03, -9.537249655117440578e-03, -9.490074611995850951e-03, -9.442889237014296527e-03, -9.395693607677897685e-03, -9.348487801500221170e-03, -9.301271896002733658e-03, -9.254045968714867676e-03, -9.206810097174233237e-03, -9.159564358925890992e-03, -9.112308831522379984e-03, -9.065043592524140922e-03, -9.017768719498615859e-03, -8.970484290020576054e-03, -8.923190381671768090e-03, -8.875887072041271225e-03, -8.828574438724685544e-03, -8.781252559324300225e-03, -8.733921511449393646e-03, -8.686581372715308780e-03, -8.639232220743904220e-03, -8.591874133163089275e-03, -8.544507187607445001e-03, -8.497131461716697642e-03, -8.449747033136799368e-03, -8.402353979519728774e-03, -8.354952378522614853e-03, -8.307542307808106485e-03, -8.260123845044540711e-03, -8.212697067905120468e-03, -8.165262054068225112e-03, -8.117818881217101629e-03, -8.070367627040244546e-03, -8.022908369230426218e-03, -7.975441185485050710e-03, -7.927966153506346356e-03, -7.880483351000520942e-03, -7.832992855678056615e-03, -7.785494745253486101e-03, -7.737989097445637302e-03, -7.690475989976922055e-03, -7.642955500573097617e-03, -7.595427706964255447e-03, -7.547892686883431700e-03, -7.500350518067010544e-03, -7.452801278254993049e-03, -7.405245045190002318e-03, -7.357681896617825588e-03, -7.310111910286946728e-03, -7.262535163948909654e-03, -7.214951735357437966e-03, -7.167361702268789693e-03, -7.119765142441877859e-03, -7.072162133637423936e-03, -7.024552753618430560e-03, -6.976937080149662844e-03, -6.929315190998100275e-03, -6.881687163932088437e-03, -6.834053076721669472e-03, -6.786413007138292382e-03, -6.738767032954780072e-03, -6.691115231945014494e-03, -6.643457681884339106e-03, -6.595794460548705385e-03, -6.548125645714939977e-03, -6.500451315160520049e-03, -6.452771546663853448e-03, -6.405086418003393990e-03, -6.357396006957964987e-03, -6.309700391306959609e-03, -6.261999648829440560e-03, -6.214293857304587637e-03, -6.166583094511235430e-03, -6.118867438228360774e-03, -6.071146966234088754e-03, -6.023421756306123788e-03, -5.975691886221519769e-03, -5.927957433756508333e-03, -5.880218476686276813e-03, -5.832475092785355947e-03, -5.784727359826700478e-03, -5.736975355582139315e-03, -5.689219157821858580e-03, -5.641458844314975810e-03, -5.593694492828486103e-03, -5.545926181127622083e-03, -5.498153986976033435e-03, -5.450377988134995008e-03, -5.402598262363708659e-03, -5.354814887418903394e-03, -5.307027941055348849e-03, -5.259237501024825734e-03, -5.211443645076471905e-03, -5.163646450957105026e-03, -5.115845996409885965e-03, -5.068042359175284166e-03, -5.020235616990874686e-03, -4.972425847590535020e-03, -4.924613128704853626e-03, -4.876797538060741351e-03, -4.828979153381833880e-03, -4.781158052387572341e-03, -4.733334312793490394e-03, -4.685508012311433677e-03, -4.637679228648718469e-03, -4.589848039508486431e-03, -4.542014522589343795e-03, -4.494178755585699625e-03, -4.446340816186934893e-03, -4.398500782077659210e-03, -4.350658730937909460e-03, -4.302814740442469782e-03, -4.254968888260504678e-03, -4.207121252056720412e-03, -4.159271909489872278e-03, -4.111420938213285019e-03, -4.063568415874521493e-03, -4.015714420115739161e-03, -3.967859028572764610e-03, -3.920002318875437028e-03, -3.872144368647754357e-03, -3.824285255507123456e-03, -3.776425057064598627e-03, -3.728563850924606661e-03, -3.680701714685294650e-03, -3.632838725937647447e-03, -3.584974962265721418e-03, -3.537110501246954961e-03, -3.489245420451253868e-03, -3.441379797441330469e-03, -3.393513709772518448e-03, -3.345647234992627991e-03, -3.297780450641820890e-03, -3.249913434252349031e-03, -3.202046263348936033e-03, -3.154179015447931573e-03, -3.106311768057503503e-03, -3.058444598677971353e-03, -3.010577584800838355e-03, -2.962710803909233796e-03, -2.914844333477522274e-03, -2.866978250971672759e-03, -2.819112633848400336e-03, -2.771247559555385220e-03, -2.723383105531575026e-03, -2.675519349206267102e-03, -2.627656367999480196e-03, -2.579794239321762332e-03, -2.531933040573995652e-03, -2.484072849147206906e-03, -2.436213742422920891e-03, -2.388355797772266208e-03, -2.340499092556374248e-03, -2.292643704126017500e-03, -2.244789709821973407e-03, -2.196937186974123185e-03, -2.149086212901884629e-03, -2.101236864913771495e-03, -2.053389220307863181e-03, -2.005543356370818094e-03, -1.957699350378207161e-03, -1.909857279594751912e-03, -1.862017221273433703e-03, -1.814179252655864077e-03, -1.766343450971938258e-03, -1.718509893440334961e-03, -1.670678657266961437e-03, -1.622849819646695344e-03, -1.575023457761757801e-03, -1.527199648782316633e-03, -1.479378469866036213e-03, -1.431559998158533475e-03, -1.383744310792430973e-03, -1.335931484887769964e-03, -1.288121597551634837e-03, -1.240314725878543644e-03, -1.192510946949541925e-03, -1.144710337832475925e-03, -1.096912975582264946e-03, -1.049118937239977610e-03, -1.001328299833254042e-03, -9.535411403759018988e-04, -9.057575358683189921e-04, -8.579775632965682460e-04, -8.102012996327822127e-04, -7.624288218349148990e-04, -7.146602068466170830e-04, -6.668955315969778402e-04, -6.191348730009406604e-04, -5.713783079583724432e-04, -5.236259133543560160e-04, -4.758777660594523478e-04, -4.281339429287880850e-04, -3.803945208024654885e-04, -3.326595765051670243e-04, -2.849291868465779866e-04, -2.372034286204537307e-04, -1.894823786050394223e-04, -1.417661135626760384e-04, -9.405471024021179460e-05, -4.634824536808491736e-05, 1.353204339268211485e-06, 4.904956218380133315e-05, 9.674075148331383496e-05, 1.444266955730355464e-04, 1.921073178038871653e-04, 2.397825415441961941e-04, 2.874522901786251048e-04, 3.351164871093523061e-04, 3.827750557549978614e-04, 4.304279195522124689e-04, 4.780750019545931232e-04, 5.257162264328141960e-04, 5.733515164760687741e-04, 6.209807955903417966e-04, 6.686039873001080238e-04, 7.162210151471425047e-04, 7.638318026922223409e-04, 8.114362735133987935e-04, 8.590343512077058775e-04, 9.066259593899533191e-04, 9.542110216944390535e-04, 1.001789461773222633e-03, 1.049361203297821893e-03, 1.096926169958158679e-03, 1.144484285463721104e-03, 1.192035473542508084e-03, 1.239579657942728062e-03, 1.287116762431075130e-03, 1.334646710794166894e-03, 1.382169426838656149e-03, 1.429684834390194817e-03, 1.477192857294958766e-03, 1.524693419418495736e-03, 1.572186444647395882e-03, 1.619671856887583937e-03, 1.667149580066010564e-03, 1.714619538129457136e-03, 1.762081655046251810e-03, 1.809535854804510298e-03, 1.856982061413887074e-03, 1.904420198904460812e-03, 1.951850191327938284e-03, 1.999271962756583171e-03, 2.046685437284897005e-03, 2.094090539027946684e-03, 2.141487192122713216e-03, 2.188875320728317451e-03, 2.236254849024880368e-03, 2.283625701215089964e-03, 2.330987801523069346e-03, 2.378341074196019516e-03, 2.425685443502483343e-03, 2.473020833734104577e-03, 2.520347169204386218e-03, 2.567664374250536261e-03, 2.614972373231076383e-03, 2.662271090528861659e-03, 2.709560450548724811e-03, 2.756840377719257332e-03, 2.804110796491633781e-03, 2.851371631341339131e-03, 2.898622806766406722e-03, 2.945864247288867196e-03, 2.993095877454859510e-03, 3.040317621833594879e-03, 3.087529405018886799e-03, 3.134731151627961031e-03, 3.181922786303195087e-03, 3.229104233710307185e-03, 3.276275418540155158e-03, 3.323436265507492653e-03, 3.370586699352742452e-03, 3.417726644839733530e-03, 3.464856026758623194e-03, 3.511974769923544796e-03, 3.559082799174412715e-03, 3.606180039375794354e-03, 3.653266415418532538e-03, 3.700341852218043317e-03, 3.747406274716035945e-03, 3.794459607879266047e-03, 3.841501776701195751e-03, 3.888532706200799761e-03, 3.935552321422773961e-03, 3.982560547438944443e-03, 4.029557309346557502e-03, 4.076542532269929360e-03, 4.123516141359294743e-03, 4.170478061792624001e-03, 4.217428218773252614e-03, 4.264366537532839757e-03, 4.311292943329046376e-03, 4.358207361447339299e-03, 4.405109717199791677e-03, 4.451999935926801225e-03, 4.498877942995307792e-03, 4.545743663800536766e-03, 4.592597023764834197e-03, 4.639437948339123104e-03, 4.686266363001968457e-03, 4.733082193259581516e-03, 4.779885364647304749e-03, 4.826675802727877114e-03, 4.873453433093171382e-03, 4.920218181362919982e-03, 4.966969973186554678e-03, 5.013708734240912394e-03, 5.060434390233143481e-03, 5.107146866898389787e-03, 5.153846090001515910e-03, 5.200531985336096993e-03, 5.247204478725896702e-03, 5.293863496023309446e-03, 5.340508963110964999e-03, 5.387140805900560159e-03, 5.433758950334519749e-03, 5.480363322384346030e-03, 5.526953848051978715e-03, 5.573530453369913810e-03, 5.620093064400200067e-03, 5.666641607235915236e-03, 5.713176008000061049e-03, 5.759696192847294470e-03, 5.806202087961588425e-03, 5.852693619559270165e-03, 5.899170713886570105e-03, 5.945633297221505735e-03, 5.992081295872677717e-03, 6.038514636180921345e-03, 6.084933244517596977e-03, 6.131337047286305672e-03, 6.177725970921699172e-03, 6.224099941891073247e-03, 6.270458886692842002e-03, 6.316802731857732237e-03, 6.363131403949034114e-03, 6.409444829561537771e-03, 6.455742935323045134e-03, 6.502025647893347297e-03, 6.548292893965295715e-03, 6.594544600263924430e-03, 6.640780693547868214e-03, 6.687001100607894120e-03, 6.733205748268475746e-03, 6.779394563386573723e-03, 6.825567472853336613e-03, 6.871724403592491953e-03, 6.917865282561851126e-03, 6.963990036752236434e-03, 7.010098593189129958e-03, 7.056190878930935356e-03, 7.102266821070746423e-03, 7.148326346735036502e-03, 7.194369383085248357e-03, 7.240395857316824467e-03, 7.286405696659283351e-03, 7.332398828377299435e-03, 7.378375179769455783e-03, 7.424334678170079437e-03, 7.470277250947465059e-03, 7.516202825505502970e-03, 7.562111329282643520e-03, 7.608002689753333436e-03, 7.653876834426536109e-03, 7.699733690847324064e-03, 7.745573186595614348e-03, 7.791395249287950096e-03, 7.837199806575725902e-03, 7.882986786146942496e-03, 7.928756115724858861e-03, 7.974507723069733031e-03, 8.020241535977645081e-03, 8.065957482280746924e-03, 8.111655489848133144e-03, 8.157335486584947615e-03, 8.202997400433786890e-03, 8.248641159373211809e-03, 8.294266691419345180e-03, 8.339873924624647064e-03, 8.385462787079661640e-03, 8.431033206911228706e-03, 8.476585112284201057e-03, 8.522118431400275279e-03, 8.567633092499679637e-03, 8.613129023859284958e-03, 8.658606153794531912e-03, 8.704064410658138642e-03, 8.749503722841797324e-03, 8.794924018773983207e-03, 8.840325226922712831e-03, 8.885707275793798890e-03, 8.931070093931139930e-03, 8.976413609918201808e-03, 9.021737752376163266e-03, 9.067042449965662804e-03, 9.112327631385629470e-03, 9.157593225374932588e-03, 9.202839160710601929e-03, 9.248065366209626617e-03, 9.293271770727714806e-03, 9.338458303160894827e-03, 9.383624892443945265e-03, 9.428771467551848653e-03, 9.473897957498880751e-03, 9.519004291340159643e-03, 9.564090398169473872e-03, 9.609156207121948706e-03, 9.654201647372542133e-03, 9.699226648136060475e-03, 9.744231138668735248e-03, 9.789215048266453750e-03, 9.834178306266419187e-03, 9.879120842045915549e-03, 9.924042585024174176e-03, 9.968943464660411785e-03, 1.001382341045559295e-02, 1.005868235195135456e-02, 1.010352021873148730e-02, 1.014833694042032060e-02, 1.019313244668444175e-02, 1.023790666723155100e-02, 1.028265953181158043e-02, 1.032739097021576243e-02, 1.037210091227819958e-02, 1.041678928787417857e-02, 1.046145602692159435e-02, 1.050610105938098657e-02, 1.055072431525462019e-02, 1.059532572458784377e-02, 1.063990521746810240e-02, 1.068446272402636711e-02, 1.072899817443562741e-02, 1.077351149891249936e-02, 1.081800262771592629e-02, 1.086247149114909390e-02, 1.090691801955735903e-02, 1.095134214333028967e-02, 1.099574379290030324e-02, 1.104012289874407513e-02, 1.108447939138124290e-02, 1.112881320137621734e-02, 1.117312425933636097e-02, 1.121741249591358749e-02, 1.126167784180420739e-02, 1.130592022774807963e-02, 1.135013958452999253e-02, 1.139433584297870616e-02, 1.143850893396827079e-02, 1.148265878841662514e-02, 1.152678533728707447e-02, 1.157088851158720802e-02, 1.161496824237046727e-02, 1.165902446073450484e-02, 1.170305709782289323e-02, 1.174706608482389315e-02, 1.179105135297177191e-02, 1.183501283354572615e-02, 1.187895045787126271e-02, 1.192286415731902763e-02, 1.196675386330570308e-02, 1.201061950729429353e-02, 1.205446102079319078e-02, 1.209827833535753391e-02, 1.214207138258806794e-02, 1.218584009413283681e-02, 1.222958440168542618e-02, 1.227330423698673803e-02, 1.231699953182359072e-02, 1.236067021803051100e-02, 1.240431622748812412e-02, 1.244793749212461630e-02, 1.249153394391473888e-02, 1.253510551488104009e-02, 1.257865213709269230e-02, 1.262217374266714175e-02, 1.266567026376858897e-02, 1.270914163260941469e-02, 1.275258778144906791e-02, 1.279600864259560628e-02, 1.283940414840471778e-02, 1.288277423127961487e-02, 1.292611882367271023e-02, 1.296943785808370685e-02, 1.301273126706122517e-02, 1.305599898320178656e-02, 1.309924093915144395e-02, 1.314245706760361690e-02, 1.318564730130173356e-02, 1.322881157303718372e-02, 1.327194981565092170e-02, 1.331506196203238387e-02, 1.335814794512105164e-02, 1.340120769790473579e-02, 1.344424115342136503e-02, 1.348724824475774735e-02, 1.353022890505089885e-02, 1.357318306748719026e-02, 1.361611066530254988e-02, 1.365901163178346624e-02, 1.370188590026575649e-02, 1.374473340413578069e-02, 1.378755407682966290e-02, 1.383034785183461304e-02, 1.387311466268707771e-02, 1.391585444297527112e-02, 1.395856712633702576e-02, 1.400125264646159134e-02, 1.404391093708834415e-02, 1.408654193200837602e-02, 1.412914556506306152e-02, 1.417172177014544392e-02, 1.421427048119913543e-02, 1.425679163221999814e-02, 1.429928515725443529e-02, 1.434175099040068194e-02, 1.438418906580904259e-02, 1.442659931768078101e-02, 1.446898168026954090e-02, 1.451133608788037280e-02, 1.455366247487122761e-02, 1.459596077565095129e-02, 1.463823092468187134e-02, 1.468047285647760408e-02, 1.472268650560498368e-02, 1.476487180668263795e-02, 1.480702869438265713e-02, 1.484915710342906911e-02, 1.489125696859926011e-02, 1.493332822472297379e-02, 1.497537080668384993e-02, 1.501738464941773654e-02, 1.505936968791408807e-02, 1.510132585721606080e-02, 1.514325309241953792e-02, 1.518515132867449650e-02, 1.522702050118375158e-02, 1.526886054520514013e-02, 1.531067139604873686e-02, 1.535245298907983620e-02, 1.539420525971699205e-02, 1.543592814343326507e-02, 1.547762157575547672e-02, 1.551928549226533685e-02, 1.556091982859851043e-02, 1.560252452044538600e-02, 1.564409950355063333e-02, 1.568564471371422173e-02, 1.572716008679024557e-02, 1.576864555868823237e-02, 1.581010106537212787e-02, 1.585152654286163185e-02, 1.589292192723132033e-02, 1.593428715461065598e-02, 1.597562216118543488e-02, 1.601692688319560423e-02, 1.605820125693811079e-02, 1.609944521876440632e-02, 1.614065870508250150e-02, 1.618184165235552613e-02, 1.622299399710351586e-02, 1.626411567590169485e-02, 1.630520662538207516e-02, 1.634626678223210713e-02, 1.638729608319661191e-02, 1.642829446507611604e-02, 1.646926186472806933e-02, 1.651019821906593577e-02, 1.655110346506086585e-02, 1.659197753974021514e-02, 1.663282038018813747e-02, 1.667363192354631707e-02, 1.671441210701291036e-02, 1.675516086784402392e-02, 1.679587814335231979e-02, 1.683656387090849346e-02, 1.687721798794001096e-02, 1.691784043193282627e-02, 1.695843114042977842e-02, 1.699899005103197927e-02, 1.703951710139792186e-02, 1.708001222924475024e-02, 1.712047537234692371e-02, 1.716090646853763932e-02, 1.720130545570779448e-02, 1.724167227180744763e-02, 1.728200685484387183e-02, 1.732230914288402160e-02, 1.736257907405298895e-02, 1.740281658653425670e-02, 1.744302161857099256e-02, 1.748319410846429015e-02, 1.752333399457485508e-02, 1.756344121532206828e-02, 1.760351570918508926e-02, 1.764355741470163830e-02, 1.768356627046936344e-02, 1.772354221514473027e-02, 1.776348518744474622e-02, 1.780339512614504890e-02, 1.784327197008163737e-02, 1.788311565814989026e-02, 1.792292612930579052e-02, 1.796270332256429472e-02, 1.800244717700149460e-02, 1.804215763175324311e-02, 1.808183462601533828e-02, 1.812147809904468207e-02, 1.816108799015797234e-02, 1.820066423873298311e-02, 1.824020678420750288e-02, 1.827971556608099304e-02, 1.831919052391287397e-02, 1.835863159732407240e-02, 1.839803872599591120e-02, 1.843741184967170529e-02, 1.847675090815507903e-02, 1.851605584131155516e-02, 1.855532658906761806e-02, 1.859456309141183442e-02, 1.863376528839327459e-02, 1.867293312012388573e-02, 1.871206652677638235e-02, 1.875116544858576248e-02, 1.879022982584914112e-02, 1.882925959892504247e-02, 1.886825470823469061e-02, 1.890721509426091657e-02, 1.894614069754943508e-02, 1.898503145870782810e-02, 1.902388731840651617e-02, 1.906270821737798479e-02, 1.910149409641798135e-02, 1.914024489638444654e-02, 1.917896055819848927e-02, 1.921764102284378301e-02, 1.925628623136727002e-02, 1.929489612487867572e-02, 1.933347064455144537e-02, 1.937200973162150550e-02, 1.941051332738868984e-02, 1.944898137321632650e-02, 1.948741381053073832e-02, 1.952581058082240167e-02, 1.956417162564479811e-02, 1.960249688661611089e-02, 1.964078630541757700e-02, 1.967903982379492350e-02, 1.971725738355733365e-02, 1.975543892657903589e-02, 1.979358439479754136e-02, 1.983169373021521215e-02, 1.986976687489855689e-02, 1.990780377097872353e-02, 1.994580436065107598e-02, 1.998376858617624541e-02, 2.002169638987907549e-02, 2.005958771414926081e-02, 2.009744250144189504e-02, 2.013526069427642659e-02, 2.017304223523779319e-02, 2.021078706697572447e-02, 2.024849513220578628e-02, 2.028616637370836071e-02, 2.032380073432943704e-02, 2.036139815698038286e-02, 2.039895858463855460e-02, 2.043648196034639555e-02, 2.047396822721268134e-02, 2.051141732841150339e-02, 2.054882920718342776e-02, 2.058620380683435364e-02, 2.062354107073718912e-02, 2.066084094233021362e-02, 2.069810336511832341e-02, 2.073532828267256323e-02, 2.077251563863080630e-02, 2.080966537669729638e-02, 2.084677744064241181e-02, 2.088385177430400128e-02, 2.092088832158599601e-02, 2.095788702645972820e-02, 2.099484783296284851e-02, 2.103177068520078671e-02, 2.106865552734537780e-02, 2.110550230363622201e-02, 2.114231095837954683e-02, 2.117908143594966763e-02, 2.121581368078749932e-02, 2.125250763740249224e-02, 2.128916325037075868e-02, 2.132578046433668967e-02, 2.136235922401190368e-02, 2.139889947417650956e-02, 2.143540115967820098e-02, 2.147186422543233622e-02, 2.150828861642327047e-02, 2.154467427770264190e-02, 2.158102115439085658e-02, 2.161732919167614134e-02, 2.165359833481594193e-02, 2.168982852913546588e-02, 2.172601972002896620e-02, 2.176217185295898499e-02, 2.179828487345711330e-02, 2.183435872712348458e-02, 2.187039335962746855e-02, 2.190638871670715429e-02, 2.194234474416981856e-02, 2.197826138789171421e-02, 2.201413859381858365e-02, 2.204997630796519045e-02, 2.208577447641579469e-02, 2.212153304532446865e-02, 2.215725196091401436e-02, 2.219293116947777811e-02, 2.222857061737789144e-02, 2.226417025104724529e-02, 2.229973001698755397e-02, 2.233524986177147509e-02, 2.237072973204085047e-02, 2.240616957450811825e-02, 2.244156933595555306e-02, 2.247692896323614728e-02, 2.251224840327265345e-02, 2.254752760305879164e-02, 2.258276650965810803e-02, 2.261796507020548408e-02, 2.265312323190583552e-02, 2.268824094203493805e-02, 2.272331814793972227e-02, 2.275835479703743752e-02, 2.279335083681680724e-02, 2.282830621483689440e-02, 2.286322087872893344e-02, 2.289809477619406813e-02, 2.293292785500581493e-02, 2.296772006300827965e-02, 2.300247134811754524e-02, 2.303718165832034648e-02, 2.307185094167623837e-02, 2.310647914631520222e-02, 2.314106622043970302e-02, 2.317561211232355839e-02, 2.321011677031285456e-02, 2.324458014282520385e-02, 2.327900217835065025e-02, 2.331338282545083671e-02, 2.334772203276007721e-02, 2.338201974898490923e-02, 2.341627592290353513e-02, 2.345049050336761934e-02, 2.348466343930013731e-02, 2.351879467969764104e-02, 2.355288417362852091e-02, 2.358693187023442120e-02, 2.362093771872926518e-02, 2.365490166840038613e-02, 2.368882366860752819e-02, 2.372270366878382816e-02, 2.375654161843500714e-02, 2.379033746714041483e-02, 2.382409116455242587e-02, 2.385780266039667918e-02, 2.389147190447191496e-02, 2.392509884665102587e-02, 2.395868343687974564e-02, 2.399222562517745738e-02, 2.402572536163785286e-02, 2.405918259642711443e-02, 2.409259727978659005e-02, 2.412596936203059358e-02, 2.415929879354775794e-02, 2.419258552480034463e-02, 2.422582950632545112e-02, 2.425903068873351207e-02, 2.429218902270974603e-02, 2.432530445901329164e-02, 2.435837694847813734e-02, 2.439140644201216387e-02, 2.442439289059824756e-02, 2.445733624529334779e-02, 2.449023645722995038e-02, 2.452309347761399277e-02, 2.455590725772737598e-02, 2.458867774892661492e-02, 2.462140490264243600e-02, 2.465408867038152568e-02, 2.468672900372512191e-02, 2.471932585432987800e-02, 2.475187917392726242e-02, 2.478438891432471758e-02, 2.481685502740434493e-02, 2.484927746512420946e-02, 2.488165617951729192e-02, 2.491399112269305355e-02, 2.494628224683572218e-02, 2.497852950420566959e-02, 2.501073284713878700e-02, 2.504289222804732470e-02, 2.507500759941878876e-02, 2.510707891381723164e-02, 2.513910612388248547e-02, 2.517108918233035286e-02, 2.520302804195330426e-02, 2.523492265561961059e-02, 2.526677297627424532e-02, 2.529857895693810380e-02, 2.533034055070914822e-02, 2.536205771076134249e-02, 2.539373039034558549e-02, 2.542535854278911781e-02, 2.545694212149641339e-02, 2.548848107994826709e-02, 2.551997537170263772e-02, 2.555142495039412071e-02, 2.558282976973487791e-02, 2.561418978351332615e-02, 2.564550494559588931e-02, 2.567677520992534684e-02, 2.570800053052233608e-02, 2.573918086148483872e-02, 2.577031615698785819e-02, 2.580140637128417597e-02, 2.583245145870364731e-02, 2.586345137365466187e-02, 2.589440607062216612e-02, 2.592531550416969990e-02, 2.595617962893797398e-02, 2.598699839964590391e-02, 2.601777177109038108e-02, 2.604849969814609922e-02, 2.607918213576556829e-02, 2.610981903898026632e-02, 2.614041036289874165e-02, 2.617095606270872926e-02, 2.620145609367555833e-02, 2.623191041114343591e-02, 2.626231897053509651e-02, 2.629268172735095208e-02, 2.632299863717100716e-02, 2.635326965565298885e-02, 2.638349473853426191e-02, 2.641367384163009063e-02, 2.644380692083498144e-02, 2.647389393212210007e-02, 2.650393483154400362e-02, 2.653392957523173154e-02, 2.656387811939573546e-02, 2.659378042032518180e-02, 2.662363643438928409e-02, 2.665344611803520045e-02, 2.668320942779082647e-02, 2.671292632026234931e-02, 2.674259675213588872e-02, 2.677222068017725068e-02, 2.680179806123123357e-02, 2.683132885222269670e-02, 2.686081301015602954e-02, 2.689025049211553331e-02, 2.691964125526495263e-02, 2.694898525684840188e-02, 2.697828245418929308e-02, 2.700753280469184864e-02, 2.703673626583954701e-02, 2.706589279519655902e-02, 2.709500235040684588e-02, 2.712406488919471073e-02, 2.715308036936470507e-02, 2.718204874880207969e-02, 2.721096998547203882e-02, 2.723984403742052765e-02, 2.726867086277367375e-02, 2.729745041973870995e-02, 2.732618266660333597e-02, 2.735486756173555536e-02, 2.738350506358479611e-02, 2.741209513068079695e-02, 2.744063772163434292e-02, 2.746913279513706063e-02, 2.749758030996203584e-02, 2.752598022496278649e-02, 2.755433249907435558e-02, 2.758263709131256874e-02, 2.761089396077509583e-02, 2.763910306664031299e-02, 2.766726436816815959e-02, 2.769537782470005843e-02, 2.772344339565886023e-02, 2.775146104054867016e-02, 2.777943071895560764e-02, 2.780735239054711594e-02, 2.783522601507234379e-02, 2.786305155236247499e-02, 2.789082896232993047e-02, 2.791855820496946805e-02, 2.794623924035757531e-02, 2.797387202865287206e-02, 2.800145653009582236e-02, 2.802899270500895657e-02, 2.805648051379686439e-02, 2.808391991694682288e-02, 2.811131087502751272e-02, 2.813865334869076335e-02, 2.816594729867022417e-02, 2.819319268578227011e-02, 2.822038947092535624e-02, 2.824753761508091293e-02, 2.827463707931254788e-02, 2.830168782476662204e-02, 2.832868981267241959e-02, 2.835564300434164492e-02, 2.838254736116894994e-02, 2.840940284463166696e-02, 2.843620941629035337e-02, 2.846296703778818799e-02, 2.848967567085149144e-02, 2.851633527728962558e-02, 2.854294581899498306e-02, 2.856950725794314694e-02, 2.859601955619319597e-02, 2.862248267588711481e-02, 2.864889657925037691e-02, 2.867526122859157672e-02, 2.870157658630320685e-02, 2.872784261486078031e-02, 2.875405927682361459e-02, 2.878022653483466517e-02, 2.880634435162003973e-02, 2.883241268999021945e-02, 2.885843151283874058e-02, 2.888440078314359963e-02, 2.891032046396587243e-02, 2.893619051845128243e-02, 2.896201090982891690e-02, 2.898778160141222970e-02, 2.901350255659831609e-02, 2.903917373886889808e-02, 2.906479511178934605e-02, 2.909036663900955305e-02, 2.911588828426318887e-02, 2.914136001136902188e-02, 2.916678178422926759e-02, 2.919215356683117768e-02, 2.921747532324600605e-02, 2.924274701762977907e-02, 2.926796861422318805e-02, 2.929314007735087100e-02, 2.931826137142289068e-02, 2.934333246093336761e-02, 2.936835331046158334e-02, 2.939332388467131088e-02, 2.941824414831132120e-02, 2.944311406621505367e-02, 2.946793360330121972e-02, 2.949270272457322345e-02, 2.951742139511967511e-02, 2.954208958011385333e-02, 2.956670724481480841e-02, 2.959127435456609598e-02, 2.961579087479690106e-02, 2.964025677102142403e-02, 2.966467200883939406e-02, 2.968903655393588525e-02, 2.971335037208091764e-02, 2.973761342913066805e-02, 2.976182569102607881e-02, 2.978598712379423863e-02, 2.981009769354744238e-02, 2.983415736648364208e-02, 2.985816610888655451e-02, 2.988212388712574788e-02, 2.990603066765621862e-02, 2.992988641701908176e-02, 2.995369110184107134e-02, 2.997744468883511287e-02, 3.000114714479965722e-02, 3.002479843661953751e-02, 3.004839853126524754e-02, 3.007194739579380910e-02, 3.009544499734794626e-02, 3.011889130315672028e-02, 3.014228628053566145e-02, 3.016562989688591559e-02, 3.018892211969561104e-02, 3.021216291653870331e-02, 3.023535225507580776e-02, 3.025849010305388387e-02, 3.028157642830652321e-02, 3.030461119875338394e-02, 3.032759438240119343e-02, 3.035052594734289830e-02, 3.037340586175847623e-02, 3.039623409391419007e-02, 3.041901061216318800e-02, 3.044173538494532663e-02, 3.046440838078750407e-02, 3.048702956830328867e-02, 3.050959891619297107e-02, 3.053211639324419566e-02, 3.055458196833120421e-02, 3.057699561041538061e-02, 3.059935728854532716e-02, 3.062166697185650377e-02, 3.064392462957146387e-02, 3.066613023100039220e-02, 3.068828374554012986e-02, 3.071038514267537475e-02, 3.073243439197727994e-02, 3.075443146310531672e-02, 3.077637632580557461e-02, 3.079826894991212829e-02, 3.082010930534591700e-02, 3.084189736211605248e-02, 3.086363309031846247e-02, 3.088531646013755946e-02, 3.090694744184436030e-02, 3.092852600579812719e-02, 3.095005212244603468e-02, 3.097152576232238205e-02, 3.099294689604966194e-02, 3.101431549433776233e-02, 3.103563152798528846e-02, 3.105689496787778295e-02, 3.107810578498908932e-02, 3.109926395038105709e-02, 3.112036943520362503e-02, 3.114142221069447422e-02, 3.116242224817955195e-02, 3.118336951907291210e-02, 3.120426399487696151e-02, 3.122510564718172441e-02, 3.124589444766606369e-02, 3.126663036809659846e-02, 3.128731338032868931e-02, 3.130794345630580344e-02, 3.132852056805969510e-02, 3.134904468771081837e-02, 3.136951578746765418e-02, 3.138993383962763312e-02, 3.141029881657630279e-02, 3.143061069078791070e-02, 3.145086943482523073e-02, 3.147107502133993789e-02, 3.149122742307184503e-02, 3.151132661284998526e-02, 3.153137256359170998e-02, 3.155136524830345901e-02, 3.157130464008010146e-02, 3.159119071210565038e-02, 3.161102343765295752e-02, 3.163080279008331774e-02, 3.165052874284772499e-02, 3.167020126948552616e-02, 3.168982034362527456e-02, 3.170938593898448010e-02, 3.172889802936978282e-02, 3.174835658867704996e-02, 3.176776159089107071e-02, 3.178711301008563250e-02, 3.180641082042431900e-02, 3.182565499615917087e-02, 3.184484551163221933e-02, 3.186398234127427870e-02, 3.188306545960582078e-02, 3.190209484123619765e-02, 3.192107046086472416e-02, 3.193999229327970646e-02, 3.195886031335929550e-02, 3.197767449607061968e-02, 3.199643481647075627e-02, 3.201514124970616243e-02, 3.203379377101259196e-02, 3.205239235571627487e-02, 3.207093697923195375e-02, 3.208942761706479185e-02, 3.210786424480929074e-02, 3.212624683815012983e-02, 3.214457537286104227e-02, 3.216284982480630689e-02, 3.218107016993911051e-02, 3.219923638430376850e-02, 3.221734844403296993e-02, 3.223540632535066425e-02, 3.225341000456987545e-02, 3.227135945809395112e-02, 3.228925466241588244e-02, 3.230709559411921311e-02, 3.232488222987724147e-02, 3.234261454645308981e-02, 3.236029252070069667e-02, 3.237791612956334580e-02, 3.239548535007491514e-02, 3.241300015935933559e-02, 3.243046053463112532e-02, 3.244786645319439750e-02, 3.246521789244394274e-02, 3.248251482986480587e-02, 3.249975724303232755e-02, 3.251694510961206097e-02, 3.253407840736048662e-02, 3.255115711412374935e-02, 3.256818120783887965e-02, 3.258515066653320386e-02, 3.260206546832469798e-02, 3.261892559142166859e-02, 3.263573101412298172e-02, 3.265248171481825029e-02, 3.266917767198748712e-02, 3.268581886420139637e-02, 3.270240527012115844e-02, 3.271893686849906141e-02, 3.273541363817755734e-02, 3.275183555809010882e-02, 3.276820260726079348e-02, 3.278451476480471333e-02, 3.280077200992731479e-02, 3.281697432192515890e-02, 3.283312168018572702e-02, 3.284921406418726125e-02, 3.286525145349851462e-02, 3.288123382777979192e-02, 3.289716116678190194e-02, 3.291303345034667788e-02, 3.292885065840729653e-02, 3.294461277098723745e-02, 3.296031976820162218e-02, 3.297597163025623584e-02, 3.299156833744838757e-02, 3.300710987016582804e-02, 3.302259620888799152e-02, 3.303802733418502446e-02, 3.305340322671875691e-02, 3.306872386724165475e-02, 3.308398923659768009e-02, 3.309919931572194440e-02, 3.311435408564078475e-02, 3.312945352747195121e-02, 3.314449762242432929e-02, 3.315948635179810644e-02, 3.317441969698499415e-02, 3.318929763946750627e-02, 3.320412016082043005e-02, 3.321888724270934817e-02, 3.323359886689109671e-02, 3.324825501521436882e-02, 3.326285566961928453e-02, 3.327740081213700907e-02, 3.329189042489065498e-02, 3.330632449009475471e-02, 3.332070299005501085e-02, 3.333502590716933695e-02, 3.334929322392641421e-02, 3.336350492290739850e-02, 3.337766098678424803e-02, 3.339176139832090301e-02, 3.340580614037318846e-02, 3.341979519588818281e-02, 3.343372854790467585e-02, 3.344760617955342547e-02, 3.346142807405670661e-02, 3.347519421472861662e-02, 3.348890458497504746e-02, 3.350255916829335961e-02, 3.351615794827320083e-02, 3.352970090859543062e-02, 3.354318803303320967e-02, 3.355661930545138921e-02, 3.356999470980666367e-02, 3.358331423014739719e-02, 3.359657785061431062e-02, 3.360978555543951696e-02, 3.362293732894744425e-02, 3.363603315555403067e-02, 3.364907301976779314e-02, 3.366205690618858520e-02, 3.367498479950851997e-02, 3.368785668451181048e-02, 3.370067254607439500e-02, 3.371343236916458930e-02, 3.372613613884239275e-02, 3.373878384026021693e-02, 3.375137545866225414e-02, 3.376391097938485908e-02, 3.377639038785651415e-02, 3.378881366959800292e-02, 3.380118081022179949e-02, 3.381349179543299138e-02, 3.382574661102848851e-02, 3.383794524289764072e-02, 3.385008767702161331e-02, 3.386217389947417111e-02, 3.387420389642080421e-02, 3.388617765412006017e-02, 3.389809515892167752e-02, 3.390995639726836902e-02, 3.392176135569489187e-02, 3.393351002082821422e-02, 3.394520237938766782e-02, 3.395683841818478849e-02, 3.396841812412367684e-02, 3.397994148420047100e-02, 3.399140848550374211e-02, 3.400281911521421674e-02, 3.401417336060554714e-02, 3.402547120904308303e-02, 3.403671264798491247e-02, 3.404789766498136916e-02, 3.405902624767531001e-02, 3.407009838380197636e-02, 3.408111406118899400e-02, 3.409207326775630376e-02, 3.410297599151645292e-02, 3.411382222057456753e-02, 3.412461194312767926e-02, 3.413534514746604381e-02, 3.414602182197165603e-02, 3.415664195511970008e-02, 3.416720553547715478e-02, 3.417771255170425071e-02, 3.418816299255297841e-02, 3.419855684686854552e-02, 3.420889410358816246e-02, 3.421917475174179185e-02, 3.422939878045196116e-02, 3.423956617893381821e-02, 3.424967693649486056e-02, 3.425973104253544899e-02, 3.426972848654823850e-02, 3.427966925811857385e-02, 3.428955334692447565e-02, 3.429938074273654325e-02, 3.430915143541800327e-02, 3.431886541492448761e-02, 3.432852267130456769e-02, 3.433812319469924795e-02, 3.434766697534230584e-02, 3.435715400355977139e-02, 3.436658426977103054e-02, 3.437595776448741647e-02, 3.438527447831345868e-02, 3.439453440194593231e-02, 3.440373752617465614e-02, 3.441288384188176397e-02, 3.442197334004250264e-02, 3.443100601172431607e-02, 3.443998184808769875e-02, 3.444890084038580713e-02, 3.445776297996443194e-02, 3.446656825826203280e-02, 3.447531666680973828e-02, 3.448400819723156097e-02, 3.449264284124417546e-02, 3.450122059065695301e-02, 3.450974143737194771e-02, 3.451820537338416706e-02, 3.452661239078086419e-02, 3.453496248174268979e-02, 3.454325563854253323e-02, 3.455149185354636221e-02, 3.455967111921240398e-02, 3.456779342809226940e-02, 3.457585877282993991e-02, 3.458386714616212138e-02, 3.459181854091859104e-02, 3.459971295002160080e-02, 3.460755036648607147e-02, 3.461533078342016873e-02, 3.462305419402443574e-02, 3.463072059159204991e-02, 3.463832996950955145e-02, 3.464588232125555972e-02, 3.465337764040198748e-02, 3.466081592061324296e-02, 3.466819715564668780e-02, 3.467552133935227626e-02, 3.468278846567288826e-02, 3.468999852864396161e-02, 3.469715152239404715e-02, 3.470424744114406629e-02, 3.471128627920828241e-02, 3.471826803099310743e-02, 3.472519269099813566e-02, 3.473206025381561646e-02, 3.473887071413035710e-02, 3.474562406672051379e-02, 3.475232030645648840e-02, 3.475895942830144886e-02, 3.476554142731183572e-02, 3.477206629863619641e-02, 3.477853403751647587e-02, 3.478494463928681613e-02, 3.479129809937471507e-02, 3.479759441329986075e-02, 3.480383357667495708e-02, 3.481001558520551570e-02, 3.481614043468978653e-02, 3.482220812101881335e-02, 3.482821864017603131e-02, 3.483417198823813427e-02, 3.484006816137424217e-02, 3.484590715584642839e-02, 3.485168896800909522e-02, 3.485741359430991754e-02, 3.486308103128895469e-02, 3.486869127557908066e-02, 3.487424432390585916e-02, 3.487974017308771713e-02, 3.488517882003563941e-02, 3.489056026175319652e-02, 3.489588449533707198e-02, 3.490115151797630599e-02, 3.490636132695262850e-02, 3.491151391964078532e-02, 3.491660929350792753e-02, 3.492164744611391675e-02, 3.492662837511133905e-02, 3.493155207824531067e-02, 3.493641855335401919e-02, 3.494122779836774523e-02, 3.494597981130997955e-02, 3.495067459029635448e-02, 3.495531213353546274e-02, 3.495989243932837165e-02, 3.496441550606901177e-02, 3.496888133224361483e-02, 3.497328991643124108e-02, 3.497764125730354334e-02, 3.498193535362455198e-02, 3.498617220425121604e-02, 3.499035180813277884e-02, 3.499447416431143015e-02, 3.499853927192147357e-02, 3.500254713018997876e-02, 3.500649773843671209e-02, 3.501039109607385902e-02, 3.501422720260599641e-02, 3.501800605763037699e-02, 3.502172766083686689e-02, 3.502539201200779995e-02, 3.502899911101776259e-02, 3.503254895783405182e-02, 3.503604155251651558e-02, 3.503947689521729608e-02, 3.504285498618103095e-02, 3.504617582574503371e-02, 3.504943941433870391e-02, 3.505264575248409620e-02, 3.505579484079577451e-02, 3.505888667998045827e-02, 3.506192127083730681e-02, 3.506489861425829413e-02, 3.506781871122713334e-02, 3.507068156282044241e-02, 3.507348717020688372e-02, 3.507623553464742083e-02, 3.507892665749578337e-02, 3.508156054019762049e-02, 3.508413718429097966e-02, 3.508665659140629972e-02, 3.508911876326625129e-02, 3.509152370168580615e-02, 3.509387140857216786e-02, 3.509616188592486197e-02, 3.509839513583556253e-02, 3.510057116048827253e-02, 3.510268996215899773e-02, 3.510475154321625324e-02, 3.510675590612072350e-02, 3.510870305342492920e-02, 3.511059298777387261e-02, 3.511242571190459349e-02, 3.511420122864618992e-02, 3.511591954092008888e-02, 3.511758065173970628e-02, 3.511918456421044693e-02, 3.512073128153014173e-02, 3.512222080698821497e-02, 3.512365314396637822e-02, 3.512502829593851239e-02, 3.512634626647025832e-02, 3.512760705921961352e-02, 3.512881067793605094e-02, 3.512995712646148350e-02, 3.513104640872969503e-02, 3.513207852876625709e-02, 3.513305349068859829e-02, 3.513397129870639291e-02, 3.513483195712092250e-02, 3.513563547032558243e-02, 3.513638184280543086e-02, 3.513707107913754263e-02, 3.513770318399063453e-02, 3.513827816212532207e-02, 3.513879601839421662e-02, 3.513925675774120377e-02, 3.513966038520258822e-02, 3.514000690590593501e-02, 3.514029632507085360e-02, 3.514052864800822767e-02, 3.514070388012119350e-02, 3.514082202690416157e-02, 3.514088309394326065e-02, 3.514088708691646273e-02, 3.514083401159320136e-02, 3.514072387383463530e-02, 3.514055667959314899e-02, 3.514033243491310188e-02, 3.514005114593024559e-02, 3.513971281887186271e-02, 3.513931746005676676e-02, 3.513886507589521202e-02, 3.513835567288899758e-02, 3.513778925763115513e-02, 3.513716583680660116e-02, 3.513648541719113783e-02, 3.513574800565228556e-02, 3.513495360914890842e-02, 3.513410223473110300e-02, 3.513319388954028177e-02, 3.513222858080945060e-02, 3.513120631586234832e-02, 3.513012710211464718e-02, 3.512899094707273157e-02, 3.512779785833451685e-02, 3.512654784358903298e-02, 3.512524091061623721e-02, 3.512387706728786751e-02, 3.512245632156614505e-02, 3.512097868150482194e-02, 3.511944415524850815e-02, 3.511785275103308096e-02, 3.511620447718523386e-02, 3.511449934212296925e-02, 3.511273735435488375e-02, 3.511091852248118123e-02, 3.510904285519242385e-02, 3.510711036127035778e-02, 3.510512104958759400e-02, 3.510307492910780952e-02, 3.510097200888528252e-02, 3.509881229806532943e-02, 3.509659580588381927e-02, 3.509432254166794385e-02, 3.509199251483480220e-02, 3.508960573489318391e-02, 3.508716221144210501e-02, 3.508466195417125899e-02, 3.508210497286107232e-02, 3.507949127738256567e-02, 3.507682087769765922e-02, 3.507409378385854121e-02, 3.507131000600808429e-02, 3.506846955437976227e-02, 3.506557243929749046e-02, 3.506261867117570902e-02, 3.505960826051934820e-02, 3.505654121792375205e-02, 3.505341755407456045e-02, 3.505023727974819481e-02, 3.504700040581104625e-02, 3.504370694321984336e-02, 3.504035690302188116e-02, 3.503695029635465336e-02, 3.503348713444578988e-02, 3.502996742861329976e-02, 3.502639119026506459e-02, 3.502275843089987239e-02, 3.501906916210571069e-02, 3.501532339556139017e-02, 3.501152114303573981e-02, 3.500766241638711418e-02, 3.500374722756460777e-02, 3.499977558860684068e-02, 3.499574751164252068e-02, 3.499166300889048481e-02, 3.498752209265924840e-02, 3.498332477534744911e-02, 3.497907106944336819e-02, 3.497476098752544393e-02, 3.497039454226137656e-02, 3.496597174640906497e-02, 3.496149261281629450e-02, 3.495695715442000834e-02, 3.495236538424732753e-02, 3.494771731541482240e-02, 3.494301296112869298e-02, 3.493825233468501879e-02, 3.493343544946869023e-02, 3.492856231895519192e-02, 3.492363295670852102e-02, 3.491864737638290805e-02, 3.491360559172153322e-02, 3.490850761655721335e-02, 3.490335346481206191e-02, 3.489814315049762083e-02, 3.489287668771477724e-02, 3.488755409065356222e-02, 3.488217537359319942e-02, 3.487674055090251440e-02, 3.487124963703903263e-02, 3.486570264654982598e-02, 3.486009959407105480e-02, 3.485444049432761399e-02, 3.484872536213401428e-02, 3.484295421239318180e-02, 3.483712706009764459e-02, 3.483124392032833222e-02, 3.482530480825543617e-02, 3.481930973913813232e-02, 3.481325872832423396e-02, 3.480715179125030978e-02, 3.480098894344193367e-02, 3.479477020051351815e-02, 3.478849557816802995e-02, 3.478216509219696911e-02, 3.477577875848085476e-02, 3.476933659298853119e-02, 3.476283861177763279e-02, 3.475628483099432731e-02, 3.474967526687309377e-02, 3.474300993573723600e-02, 3.473628885399813321e-02, 3.472951203815593385e-02, 3.472267950479895199e-02, 3.471579127060375053e-02, 3.470884735233544655e-02, 3.470184776684751005e-02, 3.469479253108116029e-02, 3.468768166206638581e-02, 3.468051517692084806e-02, 3.467329309285065164e-02, 3.466601542714980999e-02, 3.465868219720067561e-02, 3.465129342047326699e-02, 3.464384911452578208e-02, 3.463634929700439014e-02, 3.462879398564297495e-02, 3.462118319826348878e-02, 3.461351695277552903e-02, 3.460579526717668525e-02, 3.459801815955226151e-02, 3.459018564807506135e-02, 3.458229775100591513e-02, 3.457435448669306244e-02, 3.456635587357221456e-02, 3.455830193016714430e-02, 3.455019267508865205e-02, 3.454202812703516257e-02, 3.453380830479276659e-02, 3.452553322723474899e-02, 3.451720291332163737e-02, 3.450881738210168082e-02, 3.450037665271023929e-02, 3.449188074436965873e-02, 3.448332967638993024e-02, 3.447472346816792682e-02, 3.446606213918770867e-02, 3.445734570902063421e-02, 3.444857419732479803e-02, 3.443974762384537092e-02, 3.443086600841492595e-02, 3.442192937095230748e-02, 3.441293773146371360e-02, 3.440389111004189815e-02, 3.439478952686675362e-02, 3.438563300220467966e-02, 3.437642155640884684e-02, 3.436715520991918266e-02, 3.435783398326218430e-02, 3.434845789705099489e-02, 3.433902697198528559e-02, 3.432954122885140125e-02, 3.432000068852178454e-02, 3.431040537195577389e-02, 3.430075530019859736e-02, 3.429105049438239267e-02, 3.428129097572525652e-02, 3.427147676553161243e-02, 3.426160788519208578e-02, 3.425168435618335810e-02, 3.424170620006856958e-02, 3.423167343849684713e-02, 3.422158609320292977e-02, 3.421144418600811227e-02, 3.420124773881954433e-02, 3.419099677363013345e-02, 3.418069131251860043e-02, 3.417033137764972917e-02, 3.415991699127399195e-02, 3.414944817572756336e-02, 3.413892495343220923e-02, 3.412834734689562666e-02, 3.411771537871080562e-02, 3.410702907155650082e-02, 3.409628844819698884e-02, 3.408549353148201261e-02, 3.407464434434647610e-02, 3.406374090981095781e-02, 3.405278325098137771e-02, 3.404177139104868494e-02, 3.403070535328926033e-02, 3.401958516106477759e-02, 3.400841083782182861e-02, 3.399718240709218714e-02, 3.398589989249280185e-02, 3.397456331772543553e-02, 3.396317270657700504e-02, 3.395172808291926914e-02, 3.394022947070861329e-02, 3.392867689398684078e-02, 3.391707037687990978e-02, 3.390540994359879379e-02, 3.389369561843915551e-02, 3.388192742578133992e-02, 3.387010539009001342e-02, 3.385822953591465651e-02, 3.384629988788911970e-02, 3.383431647073182474e-02, 3.382227930924531362e-02, 3.381018842831669952e-02, 3.379804385291736157e-02, 3.378584560810286852e-02, 3.377359371901305501e-02, 3.376128821087182735e-02, 3.374892910898725368e-02, 3.373651643875131417e-02, 3.372405022564034516e-02, 3.371153049521422029e-02, 3.369895727311712774e-02, 3.368633058507650851e-02, 3.367365045690432629e-02, 3.366091691449577677e-02, 3.364812998383003712e-02, 3.363528969096968302e-02, 3.362239606206122999e-02, 3.360944912333457130e-02, 3.359644890110297100e-02, 3.358339542176327908e-02, 3.357028871179595919e-02, 3.355712879776429763e-02, 3.354391570631543723e-02, 3.353064946417957243e-02, 3.351733009816976888e-02, 3.350395763518283082e-02, 3.349053210219793408e-02, 3.347705352627816655e-02, 3.346352193456888363e-02, 3.344993735429864501e-02, 3.343629981277905505e-02, 3.342260933740425627e-02, 3.340886595565129014e-02, 3.339506969508006240e-02, 3.338122058333285042e-02, 3.336731864813493459e-02, 3.335336391729376571e-02, 3.333935641869983230e-02, 3.332529618032548796e-02, 3.331118323022594363e-02, 3.329701759653846266e-02, 3.328279930748298532e-02, 3.326852839136123369e-02, 3.325420487655748186e-02, 3.323982879153807718e-02, 3.322540016485122510e-02, 3.321091902512773170e-02, 3.319638540107957420e-02, 3.318179932150153860e-02, 3.316716081526936699e-02, 3.315246991134140897e-02, 3.313772663875728247e-02, 3.312293102663870642e-02, 3.310808310418846684e-02, 3.309318290069161728e-02, 3.307823044551443104e-02, 3.306322576810446362e-02, 3.304816889799112173e-02, 3.303305986478497630e-02, 3.301789869817781109e-02, 3.300268542794278226e-02, 3.298742008393443226e-02, 3.297210269608816940e-02, 3.295673329442067728e-02, 3.294131190902939432e-02, 3.292583857009329790e-02, 3.291031330787170389e-02, 3.289473615270505080e-02, 3.287910713501471932e-02, 3.286342628530274090e-02, 3.284769363415148552e-02, 3.283190921222477188e-02, 3.281607305026607718e-02, 3.280018517910008452e-02, 3.278424562963164896e-02, 3.276825443284632489e-02, 3.275221161980927664e-02, 3.273611722166695076e-02, 3.271997126964531349e-02, 3.270377379505073900e-02, 3.268752482926977343e-02, 3.267122440376910020e-02, 3.265487255009518613e-02, 3.263846929987448964e-02, 3.262201468481341210e-02, 3.260550873669820077e-02, 3.258895148739497649e-02, 3.257234296884910923e-02, 3.255568321308618951e-02, 3.253897225221116796e-02, 3.252221011840827208e-02, 3.250539684394169321e-02, 3.248853246115456644e-02, 3.247161700246959520e-02, 3.245465050038889160e-02, 3.243763298749357399e-02, 3.242056449644383637e-02, 3.240344505997933694e-02, 3.238627471091857363e-02, 3.236905348215909917e-02, 3.235178140667727825e-02, 3.233445851752832223e-02, 3.231708484784658053e-02, 3.229966043084469413e-02, 3.228218529981406043e-02, 3.226465948812524270e-02, 3.224708302922645736e-02, 3.222945595664529483e-02, 3.221177830398715830e-02, 3.219405010493622127e-02, 3.217627139325469204e-02, 3.215844220278308435e-02, 3.214056256744015488e-02, 3.212263252122289636e-02, 3.210465209820614896e-02, 3.208662133254282234e-02, 3.206854025846400669e-02, 3.205040891027800126e-02, 3.203222732237174381e-02, 3.201399552920939501e-02, 3.199571356533292138e-02, 3.197738146536193565e-02, 3.195899926399366209e-02, 3.194056699600261728e-02, 3.192208469624103345e-02, 3.190355239963813677e-02, 3.188497014120093842e-02, 3.186633795601325619e-02, 3.184765587923633207e-02, 3.182892394610829095e-02, 3.181014219194466808e-02, 3.179131065213761792e-02, 3.177242936215622648e-02, 3.175349835754683742e-02, 3.173451767393194872e-02, 3.171548734701142014e-02, 3.169640741256125188e-02, 3.167727790643439650e-02, 3.165809886456005112e-02, 3.163887032294434437e-02, 3.161959231766905271e-02, 3.160026488489285634e-02, 3.158088806085056904e-02, 3.156146188185322138e-02, 3.154198638428777623e-02, 3.152246160461737862e-02, 3.150288757938129319e-02, 3.148326434519479328e-02, 3.146359193874839755e-02, 3.144387039680926477e-02, 3.142409975621968110e-02, 3.140428005389794830e-02, 3.138441132683768287e-02, 3.136449361210823933e-02, 3.134452694685432167e-02, 3.132451136829615679e-02, 3.130444691372917532e-02, 3.128433362052410877e-02, 3.126417152612696176e-02, 3.124396066805865471e-02, 3.122370108391538807e-02, 3.120339281136826071e-02, 3.118303588816324218e-02, 3.116263035212132534e-02, 3.114217624113812394e-02, 3.112167359318402174e-02, 3.110112244630388115e-02, 3.108052283861766074e-02, 3.105987480831929118e-02, 3.103917839367719908e-02, 3.101843363303441459e-02, 3.099764056480828686e-02, 3.097679922749020306e-02, 3.095590965964582775e-02, 3.093497189991489468e-02, 3.091398598701104380e-02, 3.089295195972217509e-02, 3.087186985690985527e-02, 3.085073971750925889e-02, 3.082956158052996276e-02, 3.080833548505436392e-02, 3.078706147023940742e-02, 3.076573957531454975e-02, 3.074436983958368091e-02, 3.072295230242336542e-02, 3.070148700328390393e-02, 3.067997398168858386e-02, 3.065841327723409226e-02, 3.063680492959017579e-02, 3.061514897849955050e-02, 3.059344546377792615e-02, 3.057169442531399231e-02, 3.054989590306905062e-02, 3.052804993707740333e-02, 3.050615656744604109e-02, 3.048421583435415722e-02, 3.046222777805408441e-02, 3.044019243887002846e-02, 3.041810985719924781e-02, 3.039598007351062767e-02, 3.037380312834590118e-02, 3.035157906231829295e-02, 3.032930791611413227e-02, 3.030698973049073333e-02, 3.028462454627792871e-02, 3.026221240437756976e-02, 3.023975334576277027e-02, 3.021724741147902016e-02, 3.019469464264289138e-02, 3.017209508044301283e-02, 3.014944876613925157e-02, 3.012675574106308748e-02, 3.010401604661726987e-02, 3.008122972427582781e-02, 3.005839681558419504e-02, 3.003551736215880064e-02, 3.001259140568702383e-02, 2.998961898792753059e-02, 2.996660015070972197e-02, 2.994353493593416432e-02, 2.992042338557167683e-02, 2.989726554166407049e-02, 2.987406144632397814e-02, 2.985081114173418135e-02, 2.982751467014854024e-02, 2.980417207389037676e-02, 2.978078339535433772e-02, 2.975734867700469827e-02, 2.973386796137626048e-02, 2.971034129107362129e-02, 2.968676870877164434e-02, 2.966315025721504017e-02, 2.963948597921852932e-02, 2.961577591766626633e-02, 2.959202011551268635e-02, 2.956821861578136715e-02, 2.954437146156580971e-02, 2.952047869602882069e-02, 2.949654036240281774e-02, 2.947255650398924315e-02, 2.944852716415903918e-02, 2.942445238635235313e-02, 2.940033221407829453e-02, 2.937616669091522303e-02, 2.935195586051016908e-02, 2.932769976657957287e-02, 2.930339845290781675e-02, 2.927905196334883164e-02, 2.925466034182486186e-02, 2.923022363232685022e-02, 2.920574187891376156e-02, 2.918121512571375531e-02, 2.915664341692269373e-02, 2.913202679680498841e-02, 2.910736530969322208e-02, 2.908265899998807233e-02, 2.905790791215809646e-02, 2.903311209073994661e-02, 2.900827158033830733e-02, 2.898338642562519815e-02, 2.895845667134072307e-02, 2.893348236229260212e-02, 2.890846354335601526e-02, 2.888340025947349482e-02, 2.885829255565520307e-02, 2.883314047697857138e-02, 2.880794406858815798e-02, 2.878270337569576939e-02, 2.875741844358039104e-02, 2.873208931758754539e-02, 2.870671604313047853e-02, 2.868129866568846706e-02, 2.865583723080814341e-02, 2.863033178410237869e-02, 2.860478237125108764e-02, 2.857918903800026056e-02, 2.855355183016254281e-02, 2.852787079361712372e-02, 2.850214597430915375e-02, 2.847637741825017471e-02, 2.845056517151764788e-02, 2.842470928025536692e-02, 2.839880979067286107e-02, 2.837286674904574910e-02, 2.834688020171499331e-02, 2.832085019508792656e-02, 2.829477677563679849e-02, 2.826865998990013562e-02, 2.824249988448133616e-02, 2.821629650604965192e-02, 2.819004990133922722e-02, 2.816376011714964711e-02, 2.813742720034581937e-02, 2.811105119785708290e-02, 2.808463215667862667e-02, 2.805817012386984527e-02, 2.803166514655540398e-02, 2.800511727192421876e-02, 2.797852654723025426e-02, 2.795189301979198945e-02, 2.792521673699231710e-02, 2.789849774627838758e-02, 2.787173609516206338e-02, 2.784493183121901361e-02, 2.781808500208933152e-02, 2.779119565547690310e-02, 2.776426383915022236e-02, 2.773728960094088564e-02, 2.771027298874480238e-02, 2.768321405052146661e-02, 2.765611283429418588e-02, 2.762896938814960943e-02, 2.760178376023805086e-02, 2.757455599877312383e-02, 2.754728615203165878e-02, 2.751997426835413665e-02, 2.749262039614359943e-02, 2.746522458386692345e-02, 2.743778688005283836e-02, 2.741030733329429675e-02, 2.738278599224592061e-02, 2.735522290562588180e-02, 2.732761812221443792e-02, 2.729997169085493156e-02, 2.727228366045249611e-02, 2.724455407997537423e-02, 2.721678299845351964e-02, 2.718897046497959630e-02, 2.716111652870803472e-02, 2.713322123885527834e-02, 2.710528464470041143e-02, 2.707730679558328912e-02, 2.704928774090659474e-02, 2.702122753013393164e-02, 2.699312621279131158e-02, 2.696498383846536451e-02, 2.693680045680509408e-02, 2.690857611752015335e-02, 2.688031087038179195e-02, 2.685200476522241197e-02, 2.682365785193556451e-02, 2.679527018047564088e-02, 2.676684180085812936e-02, 2.673837276315935152e-02, 2.670986311751649689e-02, 2.668131291412687012e-02, 2.665272220324911567e-02, 2.662409103520211456e-02, 2.659541946036458188e-02, 2.656670752917661762e-02, 2.653795529213751059e-02, 2.650916279980767773e-02, 2.648033010280649927e-02, 2.645145725181452870e-02, 2.642254429757117870e-02, 2.639359129087634828e-02, 2.636459828258912175e-02, 2.633556532362883382e-02, 2.630649246497362287e-02, 2.627737975766162096e-02, 2.624822725279007951e-02, 2.621903500151573016e-02, 2.618980305505410819e-02, 2.616053146468031929e-02, 2.613122028172812708e-02, 2.610186955759008498e-02, 2.607247934371813985e-02, 2.604304969162247671e-02, 2.601358065287219523e-02, 2.598407227909468528e-02, 2.595452462197631038e-02, 2.592493773326110668e-02, 2.589531166475202151e-02, 2.586564646830991077e-02, 2.583594219585407317e-02, 2.580619889936097699e-02, 2.577641663086620641e-02, 2.574659544246232432e-02, 2.571673538630016992e-02, 2.568683651458771727e-02, 2.565689887959113347e-02, 2.562692253363361983e-02, 2.559690752909584907e-02, 2.556685391841596877e-02, 2.553676175408934462e-02, 2.550663108866829676e-02, 2.547646197476209282e-02, 2.544625446503758978e-02, 2.541600861221757907e-02, 2.538572446908237551e-02, 2.535540208846848165e-02, 2.532504152326945160e-02, 2.529464282643463166e-02, 2.526420605097063482e-02, 2.523373124993963032e-02, 2.520321847646075572e-02, 2.517266778370833014e-02, 2.514207922491354733e-02, 2.511145285336319893e-02, 2.508078872240019144e-02, 2.505008688542261983e-02, 2.501934739588464532e-02, 2.498857030729630807e-02, 2.495775567322250019e-02, 2.492690354728415922e-02, 2.489601398315676589e-02, 2.486508703457190189e-02, 2.483412275531539717e-02, 2.480312119922895714e-02, 2.477208242020846260e-02, 2.474100647220517021e-02, 2.470989340922481736e-02, 2.467874328532807318e-02, 2.464755615462975100e-02, 2.461633207129954037e-02, 2.458507108956121262e-02, 2.455377326369330079e-02, 2.452243864802790621e-02, 2.449106729695158663e-02, 2.445965926490493297e-02, 2.442821460638236464e-02, 2.439673337593243826e-02, 2.436521562815663344e-02, 2.433366141771104579e-02, 2.430207079930462102e-02, 2.427044382770027209e-02, 2.423878055771366141e-02, 2.420708104421443602e-02, 2.417534534212477382e-02, 2.414357350642040365e-02, 2.411176559212965809e-02, 2.407992165433403900e-02, 2.404804174816774567e-02, 2.401612592881789687e-02, 2.398417425152355245e-02, 2.395218677157730583e-02, 2.392016354432316416e-02, 2.388810462515807490e-02, 2.385601006953116596e-02, 2.382387993294339881e-02, 2.379171427094809929e-02, 2.375951313915029839e-02, 2.372727659320728044e-02, 2.369500468882735494e-02, 2.366269748177132065e-02, 2.363035502785106393e-02, 2.359797738293007568e-02, 2.356556460292310098e-02, 2.353311674379639229e-02, 2.350063386156716130e-02, 2.346811601230392591e-02, 2.343556325212609037e-02, 2.340297563720400778e-02, 2.337035322375867127e-02, 2.333769606806196037e-02, 2.330500422643648484e-02, 2.327227775525496020e-02, 2.323951671094097102e-02, 2.320672114996813820e-02, 2.317389112886063252e-02, 2.314102670419216842e-02, 2.310812793258726350e-02, 2.307519487071980555e-02, 2.304222757531382976e-02, 2.300922610314284217e-02, 2.297619051103035395e-02, 2.294312085584917019e-02, 2.291001719452168822e-02, 2.287687958401959584e-02, 2.284370808136409331e-02, 2.281050274362507457e-02, 2.277726362792189055e-02, 2.274399079142293278e-02, 2.271068429134487018e-02, 2.267734418495410270e-02, 2.264397052956473172e-02, 2.261056338254041967e-02, 2.257712280129239857e-02, 2.254364884328110066e-02, 2.251014156601451044e-02, 2.247660102704950730e-02, 2.244302728399052982e-02, 2.240942039449044312e-02, 2.237578041624965416e-02, 2.234210740701666337e-02, 2.230840142458756156e-02, 2.227466252680618611e-02, 2.224089077156347904e-02, 2.220708621679840303e-02, 2.217324892049693172e-02, 2.213937894069190407e-02, 2.210547633546404434e-02, 2.207154116294049798e-02, 2.203757348129583779e-02, 2.200357334875075940e-02, 2.196954082357346211e-02, 2.193547596407816394e-02, 2.190137882862625701e-02, 2.186724947562473584e-02, 2.183308796352785922e-02, 2.179889435083523508e-02, 2.176466869609337829e-02, 2.173041105789433325e-02, 2.169612149487646843e-02, 2.166180006572341124e-02, 2.162744682916527619e-02, 2.159306184397720429e-02, 2.155864516898048019e-02, 2.152419686304114788e-02, 2.148971698507102027e-02, 2.145520559402722821e-02, 2.142066274891167230e-02, 2.138608850877176185e-02, 2.135148293269942613e-02, 2.131684607983201987e-02, 2.128217800935073428e-02, 2.124747878048253297e-02, 2.121274845249786906e-02, 2.117798708471241298e-02, 2.114319473648575143e-02, 2.110837146722220614e-02, 2.107351733636939409e-02, 2.103863240341996219e-02, 2.100371672790970340e-02, 2.096877036941904512e-02, 2.093379338757132488e-02, 2.089878584203407400e-02, 2.086374779251836883e-02, 2.082867929877831037e-02, 2.079358042061200604e-02, 2.075845121786009176e-02, 2.072329175040701216e-02, 2.068810207817960503e-02, 2.065288226114851688e-02, 2.061763235932616289e-02, 2.058235243276862469e-02, 2.054704254157400933e-02, 2.051170274588358378e-02, 2.047633310588034550e-02, 2.044093368179010495e-02, 2.040550453388076738e-02, 2.037004572246249937e-02, 2.033455730788729515e-02, 2.029903935054904948e-02, 2.026349191088399476e-02, 2.022791504936926471e-02, 2.019230882652445214e-02, 2.015667330291002340e-02, 2.012100853912855702e-02, 2.008531459582289444e-02, 2.004959153367864844e-02, 2.001383941342083431e-02, 1.997805829581688480e-02, 1.994224824167418336e-02, 1.990640931184177106e-02, 1.987054156720849743e-02, 1.983464506870466146e-02, 1.979871987730041222e-02, 1.976276605400690417e-02, 1.972678365987488858e-02, 1.969077275599601454e-02, 1.965473340350179163e-02, 1.961866566356324990e-02, 1.958256959739222008e-02, 1.954644526623936646e-02, 1.951029273139609499e-02, 1.947411205419209007e-02, 1.943790329599795128e-02, 1.940166651822243515e-02, 1.936540178231439119e-02, 1.932910914976137054e-02, 1.929278868209048994e-02, 1.925644044086708556e-02, 1.922006448769619097e-02, 1.918366088422081978e-02, 1.914722969212353382e-02, 1.911077097312441353e-02, 1.907428478898298349e-02, 1.903777120149653668e-02, 1.900123027250054386e-02, 1.896466206386908729e-02, 1.892806663751378862e-02, 1.889144405538479773e-02, 1.885479437946928349e-02, 1.881811767179310951e-02, 1.878141399441884962e-02, 1.874468340944732136e-02, 1.870792597901619128e-02, 1.867114176530106084e-02, 1.863433083051400929e-02, 1.859749323690476630e-02, 1.856062904675989667e-02, 1.852373832240305704e-02, 1.848682112619409040e-02, 1.844987752053034447e-02, 1.841290756784508958e-02, 1.837591133060870879e-02, 1.833888887132726145e-02, 1.830184025254341998e-02, 1.826476553683629989e-02, 1.822766478682056462e-02, 1.819053806514739358e-02, 1.815338543450318101e-02, 1.811620695761059774e-02, 1.807900269722774803e-02, 1.804177271614839512e-02, 1.800451707720147204e-02, 1.796723584325156386e-02, 1.792992907719827278e-02, 1.789259684197664832e-02, 1.785523920055609795e-02, 1.781785621594161526e-02, 1.778044795117272522e-02, 1.774301446932373405e-02, 1.770555583350338219e-02, 1.766807210685495191e-02, 1.763056335255637833e-02, 1.759302963381947221e-02, 1.755547101389068332e-02, 1.751788755605000400e-02, 1.748027932361190251e-02, 1.744264637992423012e-02, 1.740498878836920990e-02, 1.736730661236193449e-02, 1.732959991535178504e-02, 1.729186876082099145e-02, 1.725411321228575295e-02, 1.721633333329470467e-02, 1.717852918743030879e-02, 1.714070083830766811e-02, 1.710284834957510880e-02, 1.706497178491300781e-02, 1.702707120803571145e-02, 1.698914668268899572e-02, 1.695119827265152007e-02, 1.691322604173476143e-02, 1.687523005378158830e-02, 1.683721037266792953e-02, 1.679916706230112286e-02, 1.676110018662104600e-02, 1.672300980959875658e-02, 1.668489599523772723e-02, 1.664675880757244750e-02, 1.660859831066973866e-02, 1.657041456862675885e-02, 1.653220764557304309e-02, 1.649397760566861590e-02, 1.645572451310520906e-02, 1.641744843210468652e-02, 1.637914942692113296e-02, 1.634082756183796725e-02, 1.630248290117015594e-02, 1.626411550926336325e-02, 1.622572545049285123e-02, 1.618731278926526657e-02, 1.614887759001670114e-02, 1.611041991721417696e-02, 1.607193983535384549e-02, 1.603343740896252811e-02, 1.599491270259650877e-02, 1.595636578084212026e-02, 1.591779670831476243e-02, 1.587920554965988051e-02, 1.584059236955199026e-02, 1.580195723269523997e-02, 1.576330020382224473e-02, 1.572462134769589751e-02, 1.568592072910666296e-02, 1.564719841287503035e-02, 1.560845446384973370e-02, 1.556968894690781945e-02, 1.553090192695558841e-02, 1.549209346892731556e-02, 1.545326363778597514e-02, 1.541441249852211655e-02, 1.537554011615506824e-02, 1.533664655573180324e-02, 1.529773188232748556e-02, 1.525879616104444669e-02, 1.521983945701343641e-02, 1.518086183539234940e-02, 1.514186336136676657e-02, 1.510284410014931834e-02, 1.506380411698044278e-02, 1.502474347712694919e-02, 1.498566224588335737e-02, 1.494656048857085154e-02, 1.490743827053710863e-02, 1.486829565715724194e-02, 1.482913271383229543e-02, 1.478994950599039557e-02, 1.475074609908536873e-02, 1.471152255859797982e-02, 1.467227895003464858e-02, 1.463301533892842794e-02, 1.459373179083759374e-02, 1.455442837134694051e-02, 1.451510514606650822e-02, 1.447576218063239238e-02, 1.443639954070578303e-02, 1.439701729197382686e-02, 1.435761550014821343e-02, 1.431819423096664101e-02, 1.427875355019119288e-02, 1.423929352360968174e-02, 1.419981421703395662e-02, 1.416031569630107900e-02, 1.412079802727310429e-02, 1.408126127583566277e-02, 1.404170550789989903e-02, 1.400213078940052043e-02, 1.396253718629707555e-02, 1.392292476457238429e-02, 1.388329359023415983e-02, 1.384364372931342832e-02, 1.380397524786526955e-02, 1.376428821196828620e-02, 1.372458268772495243e-02, 1.368485874126057836e-02, 1.364511643872449304e-02, 1.360535584628882501e-02, 1.356557703014931587e-02, 1.352578005652402791e-02, 1.348596499165437800e-02, 1.344613190180487562e-02, 1.340628085326185832e-02, 1.336641191233512230e-02, 1.332652514535642187e-02, 1.328662061868032297e-02, 1.324669839868298886e-02, 1.320675855176344643e-02, 1.316680114434212560e-02, 1.312682624286202679e-02, 1.308683391378735739e-02, 1.304682422360472528e-02, 1.300679723882145096e-02, 1.296675302596715998e-02, 1.292669165159239519e-02, 1.288661318226935748e-02, 1.284651768459093082e-02, 1.280640522517127733e-02, 1.276627587064591354e-02, 1.272612968767028278e-02, 1.268596674292146731e-02, 1.264578710309662533e-02, 1.260559083491388441e-02, 1.256537800511087731e-02, 1.252514868044688617e-02, 1.248490292770002355e-02, 1.244464081366940429e-02, 1.240436240517350970e-02, 1.236406776905134633e-02, 1.232375697216076676e-02, 1.228343008138003609e-02, 1.224308716360650827e-02, 1.220272828575733742e-02, 1.216235351476832767e-02, 1.212196291759518735e-02, 1.208155656121247951e-02, 1.204113451261328710e-02, 1.200069683881023822e-02, 1.196024360683418247e-02, 1.191977488373527003e-02, 1.187929073658112143e-02, 1.183879123245913309e-02, 1.179827643847373639e-02, 1.175774642174844120e-02, 1.171720124942432321e-02, 1.167664098866104221e-02, 1.163606570663530161e-02, 1.159547547054234039e-02, 1.155487034759454003e-02, 1.151425040502232315e-02, 1.147361571007284031e-02, 1.143296633001127278e-02, 1.139230233211976223e-02, 1.135162378369708631e-02, 1.131093075205990249e-02, 1.127022330454095257e-02, 1.122950150849050081e-02, 1.118876543127446561e-02, 1.114801514027663129e-02, 1.110725070289591068e-02, 1.106647218654844937e-02, 1.102567965866617025e-02, 1.098487318669759405e-02, 1.094405283810641685e-02, 1.090321868037301932e-02, 1.086237078099305808e-02, 1.082150920747844934e-02, 1.078063402735578852e-02, 1.073974530816796356e-02, 1.069884311747260931e-02, 1.065792752284319689e-02, 1.061699859186759215e-02, 1.057605639214905142e-02, 1.053510099130599946e-02, 1.049413245697087584e-02, 1.045315085679192173e-02, 1.041215625843069752e-02, 1.037114872956420610e-02, 1.033012833788323100e-02, 1.028909515109322978e-02, 1.024804923691310064e-02, 1.020699066307654244e-02, 1.016591949733062876e-02, 1.012483580743665963e-02, 1.008373966116890737e-02, 1.004263112631604768e-02, 1.000151027067960018e-02, 9.960377162075012558e-03, 9.919231868330269375e-03, 9.878074457286846119e-03, 9.836904996799601675e-03, 9.795723554735376662e-03, 9.754530198975066430e-03, 9.713324997410909684e-03, 9.672108017948780057e-03, 9.630879328506388934e-03, 9.589638997014326288e-03, 9.548387091414691982e-03, 9.507123679662433241e-03, 9.465848829724066160e-03, 9.424562609578532660e-03, 9.383265087215706887e-03, 9.341956330638121267e-03, 9.300636407859115551e-03, 9.259305386904200311e-03, 9.217963335809330888e-03, 9.176610322622900592e-03, 9.135246415403343312e-03, 9.093871682220575070e-03, 9.052486191155706061e-03, 9.011090010299966854e-03, 8.969683207755946991e-03, 8.928265851636378939e-03, 8.886838010064951679e-03, 8.845399751174896907e-03, 8.803951143110607530e-03, 8.762492254025911614e-03, 8.721023152085357819e-03, 8.679543905462522302e-03, 8.638054582341589058e-03, 8.596555250915932644e-03, 8.555045979389037589e-03, 8.513526835972959686e-03, 8.471997888890379913e-03, 8.430459206372069997e-03, 8.388910856658382542e-03, 8.347352907999108784e-03, 8.305785428652076932e-03, 8.264208486884838320e-03, 8.222622150972939623e-03, 8.181026489201173590e-03, 8.139421569861972697e-03, 8.097807461256894060e-03, 8.056184231695334014e-03, 8.014551949495157812e-03, 7.972910682981700428e-03, 7.931260500488899329e-03, 7.889601470357878940e-03, 7.847933660938168424e-03, 7.806257140585895829e-03, 7.764571977665909661e-03, 7.722878240549214089e-03, 7.681175997614902301e-03, 7.639465317249013315e-03, 7.597746267844120854e-03, 7.556018917800458312e-03, 7.514283335524589956e-03, 7.472539589430196756e-03, 7.430787747936883764e-03, 7.389027879471430846e-03, 7.347260052466528940e-03, 7.305484335361567619e-03, 7.263700796601360067e-03, 7.221909504637569026e-03, 7.180110527927155949e-03, 7.138303934933468674e-03, 7.096489794124727010e-03, 7.054668173975855473e-03, 7.012839142966138806e-03, 6.971002769581078999e-03, 6.929159122311099456e-03, 6.887308269651422690e-03, 6.845450280103012285e-03, 6.803585222171166895e-03, 6.761713164366568891e-03, 6.719834175203846273e-03, 6.677948323202950905e-03, 6.636055676887801964e-03, 6.594156304787248714e-03, 6.552250275433576035e-03, 6.510337657364027517e-03, 6.468418519119331807e-03, 6.426492929244619415e-03, 6.384560956288271721e-03, 6.342622668803087581e-03, 6.300678135344580690e-03, 6.258727424472573797e-03, 6.216770604749653935e-03, 6.174807744742286109e-03, 6.132838913019408172e-03, 6.090864178153260027e-03, 6.048883608719476425e-03, 6.006897273295595981e-03, 5.964905240462722164e-03, 5.922907578803962916e-03, 5.880904356905524398e-03, 5.838895643355155804e-03, 5.796881506743653371e-03, 5.754862015663412753e-03, 5.712837238709334541e-03, 5.670807244477804251e-03, 5.628772101567576167e-03, 5.586731878578332644e-03, 5.544686644112119603e-03, 5.502636466771957009e-03, 5.460581415162776495e-03, 5.418521557890090823e-03, 5.376456963560919365e-03, 5.334387700783695292e-03, 5.292313838166922031e-03, 5.250235444320790895e-03, 5.208152587855625903e-03, 5.166065337382896860e-03, 5.123973761513756116e-03, 5.081877928860602418e-03, 5.039777908035471959e-03, 4.997673767651021962e-03, 4.955565576319555764e-03, 4.913453402653819926e-03, 4.871337315265641607e-03, 4.829217382767316338e-03, 4.787093673770200300e-03, 4.744966256885758960e-03, 4.702835200724092557e-03, 4.660700573894924897e-03, 4.618562445007541768e-03, 4.576420882669422242e-03, 4.534275955487822481e-03, 4.492127732068255247e-03, 4.449976281015531610e-03, 4.407821670932243058e-03, 4.365663970420332295e-03, 4.323503248079530251e-03, 4.281339572508300641e-03, 4.239173012302841631e-03, 4.197003636057952333e-03, 4.154831512365631148e-03, 4.112656709816468747e-03, 4.070479296998233409e-03, 4.028299342496875421e-03, 3.986116914895046492e-03, 3.943932082773621110e-03, 3.901744914710396795e-03, 3.859555479280011268e-03, 3.817363845054834101e-03, 3.775170080603662635e-03, 3.732974254492680850e-03, 3.690776435284019979e-03, 3.648576691537225650e-03, 3.606375091807783369e-03, 3.564171704648066118e-03, 3.521966598606254481e-03, 3.479759842227314170e-03, 3.437551504051468594e-03, 3.395341652615704604e-03, 3.353130356452278457e-03, 3.310917684089808698e-03, 3.268703704051692353e-03, 3.226488484857676590e-03, 3.184272095022599308e-03, 3.142054603056214368e-03, 3.099836077464178212e-03, 3.057616586746669893e-03, 3.015396199399417599e-03, 2.973174983912051528e-03, 2.930953008770274034e-03, 2.888730342453133069e-03, 2.846507053435143753e-03, 2.804283210184654700e-03, 2.762058881164936117e-03, 2.719834134832624633e-03, 2.677609039639265026e-03, 2.635383664029833112e-03, 2.593158076443726704e-03, 2.550932345313301937e-03, 2.508706539065408067e-03, 2.466480726119836629e-03, 2.424254974890399997e-03, 2.382029353783543177e-03, 2.339803931199269712e-03, 2.297578775531054079e-03, 2.255353955164420519e-03, 2.213129538479060698e-03, 2.170905593846182181e-03, 2.128682189630582734e-03, 2.086459394189027917e-03, 2.044237275871324446e-03, 2.002015903018807517e-03, 1.959795343965846544e-03, 1.917575667038356330e-03, 1.875356940554854818e-03, 1.833139232824920707e-03, 1.790922612150772043e-03, 1.748707146825708011e-03, 1.706492905135198338e-03, 1.664279955355461469e-03, 1.622068365754424741e-03, 1.579858204591631354e-03, 1.537649540116804020e-03, 1.495442440571993206e-03, 1.453236974188872911e-03, 1.411033209190870261e-03, 1.368831213791516432e-03, 1.326631056195544519e-03, 1.284432804597315922e-03, 1.242236527182403929e-03, 1.200042292126066298e-03, 1.157850167594289990e-03, 1.115660221742287381e-03, 1.073472522716039951e-03, 1.031287138650758281e-03, 9.891041376719645218e-04, 9.469235878939767865e-04, 9.047455574214267101e-04, 8.625701143479863782e-04, 8.203973267561483424e-04, 7.782272627187514181e-04, 7.360599902964135108e-04, 6.938955775396393050e-04, 6.517340924872107658e-04, 6.095756031672237450e-04, 5.674201775955916736e-04, 5.252678837775703836e-04, 4.831187897062455918e-04, 4.409729633635935207e-04, 3.988304727189675688e-04, 3.566913857306356554e-04, 3.145557703442529050e-04, 2.724236944939368503e-04, 2.302952261006326181e-04, 1.881704330742277743e-04, 1.460493833111038155e-04, 1.039321446950798318e-04, 6.181878509836196941e-05, 1.970937237908853315e-05, -2.239602561654950767e-05, -6.449734105594168328e-05, -1.065945061189930591e-04, -1.486874529996394219e-04, -1.907761139043147769e-04, -2.328604210534657647e-04, -2.749403066804847117e-04, -3.170157030332300201e-04, -3.590865423724877935e-04, -4.011527569734907772e-04, -4.432142791248474102e-04, -4.852710411301829822e-04, -5.273229753060094472e-04, -5.693700139844222680e-04, -6.114120895109774944e-04, -6.534491342460807886e-04, -6.954810805651089100e-04, -7.375078608574535573e-04, -7.795294075279206401e-04, -8.215456529956621226e-04, -8.635565296957024720e-04, -9.055619700773862978e-04, -9.475619066059081611e-04, -9.895562717612414912e-04, -1.031544998039649096e-03, -1.073528017952160183e-03, -1.115505264026072198e-03, -1.157476668803900230e-03, -1.199442164844986836e-03, -1.241401684723400642e-03, -1.283355161030625162e-03, -1.325302526373408609e-03, -1.367243713375210440e-03, -1.409178654676248839e-03, -1.451107282932611025e-03, -1.493029530817609586e-03, -1.534945331020728639e-03, -1.576854616249146910e-03, -1.618757319226185598e-03, -1.660653372692832974e-03, -1.702542709406698346e-03, -1.744425262143478334e-03, -1.786300963695466523e-03, -1.828169746873030800e-03, -1.870031544503595504e-03, -1.911886289433208097e-03, -1.953733914524498263e-03, -1.995574352659267633e-03, -2.037407536736457123e-03, -2.079233399673735289e-03, -2.121051874406422368e-03, -2.162862893888904941e-03, -2.204666391093708724e-03, -2.246462299011532399e-03, -2.288250550652622811e-03, -2.330031079045164714e-03, -2.371803817236822071e-03, -2.413568698293676838e-03, -2.455325655301726032e-03, -2.497074621365362110e-03, -2.538815529608867434e-03, -2.580548313175389484e-03, -2.622272905228498208e-03, -2.663989238950143380e-03, -2.705697247543286613e-03, -2.747396864229799309e-03, -2.789088022252083320e-03, -2.830770654872027080e-03, -2.872444695372375172e-03, -2.914110077055784634e-03, -2.955766733244935985e-03, -2.997414597283815183e-03, -3.039053602536164085e-03, -3.080683682387012207e-03, -3.122304770241595556e-03, -3.163916799526853268e-03, -3.205519703689942677e-03, -3.247113416199684348e-03, -3.288697870545681697e-03, -3.330273000239295043e-03, -3.371838738812760802e-03, -3.413395019820635642e-03, -3.454941776838308960e-03, -3.496478943463510788e-03, -3.538006453315213715e-03, -3.579524240035047121e-03, -3.621032237286364759e-03, -3.662530378754315884e-03, -3.704018598147131112e-03, -3.745496829194611046e-03, -3.786965005649619870e-03, -3.828423061286998115e-03, -3.869870929905101786e-03, -3.911308545324262802e-03, -3.952735841388286923e-03, -3.994152751963521777e-03, -4.035559210939887280e-03, -4.076955152229901590e-03, -4.118340509770257972e-03, -4.159715217520200230e-03, -4.201079209463131660e-03, -4.242432419605441513e-03, -4.283774781978103539e-03, -4.325106230635123415e-03, -4.366426699654741769e-03, -4.407736123139611127e-03, -4.449034435215901660e-03, -4.490321570034486870e-03, -4.531597461770115257e-03, -4.572862044622775547e-03, -4.614115252816218711e-03, -4.655357020599378698e-03, -4.696587282245596150e-03, -4.737805972053461476e-03, -4.779013024345996931e-03, -4.820208373472145875e-03, -4.861391953805164687e-03, -4.902563699744202225e-03, -4.943723545713243385e-03, -4.984871426162554992e-03, -5.026007275567172250e-03, -5.067131028428218872e-03, -5.108242619272927894e-03, -5.149341982653764770e-03, -5.190429053149803879e-03, -5.231503765365630443e-03, -5.272566053932842799e-03, -5.313615853508564871e-03, -5.354653098776916351e-03, -5.395677724448101099e-03, -5.436689665259378593e-03, -5.477688855974193090e-03, -5.518675231383570953e-03, -5.559648726304746748e-03, -5.600609275582515457e-03, -5.641556814088244561e-03, -5.682491276721378035e-03, -5.723412598407841279e-03, -5.764320714101634456e-03, -5.805215558783742222e-03, -5.846097067463441703e-03, -5.886965175177443811e-03, -5.927819816989973907e-03, -5.968660927994130089e-03, -6.009488443309789381e-03, -6.050302298086317372e-03, -6.091102427500361648e-03, -6.131888766757524929e-03, -6.172661251091299088e-03, -6.213419815764571752e-03, -6.254164396068095412e-03, -6.294894927321955866e-03, -6.335611344874548731e-03, -6.376313584104044418e-03, -6.417001580416865913e-03, -6.457675269249235281e-03, -6.498334586066059106e-03, -6.538979466362291118e-03, -6.579609845662062230e-03, -6.620225659518734311e-03, -6.660826843516240263e-03, -6.701413333267087352e-03, -6.741985064414879499e-03, -6.782541972632345761e-03, -6.823083993622821794e-03, -6.863611063119326103e-03, -6.904123116885920938e-03, -6.944620090716252525e-03, -6.985101920435048128e-03, -7.025568541897089098e-03, -7.066019890988586502e-03, -7.106455903625785546e-03, -7.146876515756408858e-03, -7.187281663358556678e-03, -7.227671282442288056e-03, -7.268045309047960721e-03, -7.308403679247685650e-03, -7.348746329145338339e-03, -7.389073194875194449e-03, -7.429384212604378361e-03, -7.469679318530745085e-03, -7.509958448884601970e-03, -7.550221539927522152e-03, -7.590468527953871114e-03, -7.630699349289340842e-03, -7.670913940292361892e-03, -7.711112237353110258e-03, -7.751294176894935918e-03, -7.791459695372898731e-03, -7.831608729275209985e-03, -7.871741215122187232e-03, -7.911857089467800794e-03, -7.951956288898054392e-03, -7.992038750032267116e-03, -8.032104409523349239e-03, -8.072153204056289541e-03, -8.112185070350483307e-03, -8.152199945157966379e-03, -8.192197765264697118e-03, -8.232178467489763632e-03, -8.272141988686601555e-03, -8.312088265741706880e-03, -8.352017235576039353e-03, -8.391928835143950410e-03, -8.431823001434621268e-03, -8.471699671470682078e-03, -8.511558782309561547e-03, -8.551400271042480794e-03, -8.591224074795936541e-03, -8.631030130730233535e-03, -8.670818376040858450e-03, -8.710588747957659361e-03, -8.750341183745515353e-03, -8.790075620704657436e-03, -8.829791996169641596e-03, -8.869490247510811165e-03, -8.909170312133092920e-03, -8.948832127477709258e-03, -8.988475631020363676e-03, -9.028100760272989370e-03, -9.067707452782630337e-03, -9.107295646132660891e-03, -9.146865277941776048e-03, -9.186416285864921344e-03, -9.225948607592666592e-03, -9.265462180852591934e-03, -9.304956943407206166e-03, -9.344432833056609544e-03, -9.383889787636389562e-03, -9.423327745019128426e-03, -9.462746643114139378e-03, -9.502146419866897703e-03, -9.541527013260281062e-03, -9.580888361313447121e-03, -9.620230402083337559e-03, -9.659553073663191408e-03, -9.698856314184090693e-03, -9.738140061813727044e-03, -9.777404254758034069e-03, -9.816648831259634778e-03, -9.855873729599281402e-03, -9.895078888094798950e-03, -9.934264245102747068e-03, -9.973429739016293274e-03, -1.001257530826778382e-02, -1.005170089132670537e-02, -1.009080642670130527e-02, -1.012989185293747436e-02, -1.016895710862016945e-02, -1.020800213237241238e-02, -1.024702686285540454e-02, -1.028603123876981745e-02, -1.032501519885419862e-02, -1.036397868188653447e-02, -1.040292162668311066e-02, -1.044184397210007852e-02, -1.048074565703181402e-02, -1.051962662041250850e-02, -1.055848680121512957e-02, -1.059732613845282105e-02, -1.063614457117706760e-02, -1.067494203848015286e-02, -1.071371847949309855e-02, -1.075247383338725528e-02, -1.079120803937335185e-02, -1.082992103670259686e-02, -1.086861276466607323e-02, -1.090728316259459083e-02, -1.094593216985995446e-02, -1.098455972587360913e-02, -1.102316577008785256e-02, -1.106175024199507716e-02, -1.110031308112897387e-02, -1.113885422706326414e-02, -1.117737361941287602e-02, -1.121587119783325204e-02, -1.125434690202151491e-02, -1.129280067171486296e-02, -1.133123244669268642e-02, -1.136964216677489002e-02, -1.140802977182320092e-02, -1.144639520174040373e-02, -1.148473839647132580e-02, -1.152305929600212948e-02, -1.156135784036045958e-02, -1.159963396961650149e-02, -1.163788762388161778e-02, -1.167611874330965090e-02, -1.171432726809612350e-02, -1.175251313847939204e-02, -1.179067629473949663e-02, -1.182881667719922272e-02, -1.186693422622337596e-02, -1.190502888222021854e-02, -1.194310058563946043e-02, -1.198114927697468274e-02, -1.201917489676151800e-02, -1.205717738557907787e-02, -1.209515668404890880e-02, -1.213311273283647872e-02, -1.217104547264969555e-02, -1.220895484423999491e-02, -1.224684078840268878e-02, -1.228470324597585005e-02, -1.232254215784157718e-02, -1.236035746492527079e-02, -1.239814910819669359e-02, -1.243591702866881157e-02, -1.247366116739892679e-02, -1.251138146548811357e-02, -1.254907786408186558e-02, -1.258675030436939499e-02, -1.262439872758501676e-02, -1.266202307500649549e-02, -1.269962328795694144e-02, -1.273719930780321981e-02, -1.277475107595767503e-02, -1.281227853387676384e-02, -1.284978162306195382e-02, -1.288726028506007905e-02, -1.292471446146237386e-02, -1.296214409390557785e-02, -1.299954912407124026e-02, -1.303692949368689610e-02, -1.307428514452472698e-02, -1.311161601840292977e-02, -1.314892205718477293e-02, -1.318620320277969112e-02, -1.322345939714236057e-02, -1.326069058227386487e-02, -1.329789670022056558e-02, -1.333507769307545193e-02, -1.337223350297686575e-02, -1.340936407211033334e-02, -1.344646934270670412e-02, -1.348354925704384373e-02, -1.352060375744548043e-02, -1.355763278628256165e-02, -1.359463628597224610e-02, -1.363161419897838261e-02, -1.366856646781196456e-02, -1.370549303503038746e-02, -1.374239384323861640e-02, -1.377926883508801860e-02, -1.381611795327783443e-02, -1.385294114055373935e-02, -1.388973833970971565e-02, -1.392650949358625184e-02, -1.396325454507210337e-02, -1.399997343710282331e-02, -1.403666611266262548e-02, -1.407333251478260459e-02, -1.410997258654234608e-02, -1.414658627106874303e-02, -1.418317351153745680e-02, -1.421973425117197855e-02, -1.425626843324359974e-02, -1.429277600107268717e-02, -1.432925689802726048e-02, -1.436571106752434351e-02, -1.440213845302908309e-02, -1.443853899805569094e-02, -1.447491264616660930e-02, -1.451125934097380332e-02, -1.454757902613742528e-02, -1.458387164536708094e-02, -1.462013714242110102e-02, -1.465637546110748306e-02, -1.469258654528296515e-02, -1.472877033885390888e-02, -1.476492678577577718e-02, -1.480105583005411098e-02, -1.483715741574352133e-02, -1.487323148694835555e-02, -1.490927798782332343e-02, -1.494529686257188919e-02, -1.498128805544853177e-02, -1.501725151075697547e-02, -1.505318717285161409e-02, -1.508909498613653262e-02, -1.512497489506657404e-02, -1.516082684414650668e-02, -1.519665077793193146e-02, -1.523244664102843884e-02, -1.526821437809296016e-02, -1.530395393383249952e-02, -1.533966525300529612e-02, -1.537534828041981633e-02, -1.541100296093641901e-02, -1.544662923946567984e-02, -1.548222706096948412e-02, -1.551779637046158712e-02, -1.555333711300572672e-02, -1.558884923371835728e-02, -1.562433267776643618e-02, -1.565978739036895384e-02, -1.569521331679623807e-02, -1.573061040237071564e-02, -1.576597859246613165e-02, -1.580131783250847063e-02, -1.583662806797517600e-02, -1.587190924439656550e-02, -1.590716130735423534e-02, -1.594238420248252422e-02, -1.597757787546758707e-02, -1.601274227204854336e-02, -1.604787733801646757e-02, -1.608298301921529463e-02, -1.611805926154121979e-02, -1.615310601094329876e-02, -1.618812321342380511e-02, -1.622311081503710270e-02, -1.625806876189110281e-02, -1.629299700014625110e-02, -1.632789547601675578e-02, -1.636276413576929004e-02, -1.639760292572437980e-02, -1.643241179225538723e-02, -1.646719068178972151e-02, -1.650193954080779110e-02, -1.653665831584382948e-02, -1.657134695348556550e-02, -1.660600540037486181e-02, -1.664063360320707299e-02, -1.667523150873167354e-02, -1.670979906375190047e-02, -1.674433621512522521e-02, -1.677884290976355136e-02, -1.681331909463260055e-02, -1.684776471675262025e-02, -1.688217972319805416e-02, -1.691656406109833671e-02, -1.695091767763685225e-02, -1.698524052005218749e-02, -1.701953253563709412e-02, -1.705379367173969624e-02, -1.708802387576249804e-02, -1.712222309516345242e-02, -1.715639127745504505e-02, -1.719052837020541152e-02, -1.722463432103737632e-02, -1.725870907762965326e-02, -1.729275258771551665e-02, -1.732676479908432446e-02, -1.736074565958099086e-02, -1.739469511710551100e-02, -1.742861311961405382e-02, -1.746249961511804616e-02, -1.749635455168544254e-02, -1.753017787743943109e-02, -1.756396954055966173e-02, -1.759772948928140304e-02, -1.763145767189672197e-02, -1.766515403675323823e-02, -1.769881853225532126e-02, -1.773245110686333392e-02, -1.776605170909488843e-02, -1.779962028752284792e-02, -1.783315679077807428e-02, -1.786666116754710709e-02, -1.790013336657386017e-02, -1.793357333665860157e-02, -1.796698102665902907e-02, -1.800035638548971514e-02, -1.803369936212175992e-02, -1.806700990558434555e-02, -1.810028796496316802e-02, -1.813353348940164797e-02, -1.816674642810002863e-02, -1.819992673031691627e-02, -1.823307434536766344e-02, -1.826618922262572900e-02, -1.829927131152168582e-02, -1.833232056154482717e-02, -1.836533692224118219e-02, -1.839832034321563919e-02, -1.843127077413042603e-02, -1.846418816470634869e-02, -1.849707246472173661e-02, -1.852992362401390675e-02, -1.856274159247811584e-02, -1.859552632006757772e-02, -1.862827775679484418e-02, -1.866099585273018821e-02, -1.869368055800298134e-02, -1.872633182280080202e-02, -1.875894959737065687e-02, -1.879153383201777328e-02, -1.882408447710655700e-02, -1.885660148306012376e-02, -1.888908480036135401e-02, -1.892153437955106793e-02, -1.895395017123054776e-02, -1.898633212605935205e-02, -1.901868019475703650e-02, -1.905099432810207147e-02, -1.908327447693308754e-02, -1.911552059214748772e-02, -1.914773262470268952e-02, -1.917991052561626719e-02, -1.921205424596472700e-02, -1.924416373688513440e-02, -1.927623894957387202e-02, -1.930827983528816613e-02, -1.934028634534444915e-02, -1.937225843111991738e-02, -1.940419604405153875e-02, -1.943609913563708672e-02, -1.946796765743411678e-02, -1.949980156106131957e-02, -1.953160079819711570e-02, -1.956336532058132113e-02, -1.959509508001354428e-02, -1.962679002835507336e-02, -1.965845011752728744e-02, -1.969007529951260008e-02, -1.972166552635479242e-02, -1.975322075015799664e-02, -1.978474092308802126e-02, -1.981622599737117157e-02, -1.984767592529590799e-02, -1.987909065921115992e-02, -1.991047015152778987e-02, -1.994181435471760466e-02, -1.997312322131457318e-02, -2.000439670391334843e-02, -2.003563475517143241e-02, -2.006683732780700086e-02, -2.009800437460054420e-02, -2.012913584839420844e-02, -2.016023170209247165e-02, -2.019129188866130784e-02, -2.022231636112909250e-02, -2.025330507258625221e-02, -2.028425797618542761e-02, -2.031517502514179271e-02, -2.034605617273235745e-02, -2.037690137229722712e-02, -2.040771057723831869e-02, -2.043848374102080409e-02, -2.046922081717181610e-02, -2.049992175928178756e-02, -2.053058652100341747e-02, -2.056121505605284019e-02, -2.059180731820853955e-02, -2.062236326131229591e-02, -2.065288283926869362e-02, -2.068336600604586337e-02, -2.071381271567477450e-02, -2.074422292224976580e-02, -2.077459657992823325e-02, -2.080493364293153208e-02, -2.083523406554419616e-02, -2.086549780211396921e-02, -2.089572480705277277e-02, -2.092591503483564805e-02, -2.095606844000177243e-02, -2.098618497715395645e-02, -2.101626460095885884e-02, -2.104630726614705252e-02, -2.107631292751329516e-02, -2.110628153991617184e-02, -2.113621305827860508e-02, -2.116610743758739685e-02, -2.119596463289423471e-02, -2.122578459931444630e-02, -2.125556729202821363e-02, -2.128531266627990692e-02, -2.131502067737878203e-02, -2.134469128069817201e-02, -2.137432443167653143e-02, -2.140392008581713801e-02, -2.143347819868743342e-02, -2.146299872592041802e-02, -2.149248162321340874e-02, -2.152192684632926387e-02, -2.155133435109547746e-02, -2.158070409340503981e-02, -2.161003602921585109e-02, -2.163933011455116198e-02, -2.166858630549936895e-02, -2.169780455821473594e-02, -2.172698482891642288e-02, -2.175612707388949532e-02, -2.178523124948420972e-02, -2.181429731211693979e-02, -2.184332521826942708e-02, -2.187231492448911407e-02, -2.190126638738970274e-02, -2.193017956365041210e-02, -2.195905441001657840e-02, -2.198789088329942271e-02, -2.201668894037643598e-02, -2.204544853819102868e-02, -2.207416963375330443e-02, -2.210285218413899147e-02, -2.213149614649074365e-02, -2.216010147801702329e-02, -2.218866813599352367e-02, -2.221719607776178815e-02, -2.224568526073022329e-02, -2.227413564237388371e-02, -2.230254718023460397e-02, -2.233091983192086322e-02, -2.235925355510811133e-02, -2.238754830753857464e-02, -2.241580404702143633e-02, -2.244402073143321463e-02, -2.247219831871713133e-02, -2.250033676688379877e-02, -2.252843603401063349e-02, -2.255649607824320238e-02, -2.258451685779339427e-02, -2.261249833094124140e-02, -2.264044045603358368e-02, -2.266834319148560914e-02, -2.269620649577920590e-02, -2.272403032746474205e-02, -2.275181464515927537e-02, -2.277955940754877034e-02, -2.280726457338614482e-02, -2.283493010149264743e-02, -2.286255595075716712e-02, -2.289014208013677096e-02, -2.291768844865669022e-02, -2.294519501541009837e-02, -2.297266173955842331e-02, -2.300008858033111836e-02, -2.302747549702647764e-02, -2.305482244901055008e-02, -2.308212939571817682e-02, -2.310939629665244646e-02, -2.313662311138528146e-02, -2.316380979955677197e-02, -2.319095632087614031e-02, -2.321806263512086674e-02, -2.324512870213771981e-02, -2.327215448184169130e-02, -2.329913993421714805e-02, -2.332608501931720396e-02, -2.335298969726385884e-02, -2.337985392824843550e-02, -2.340667767253128487e-02, -2.343346089044196986e-02, -2.346020354237884561e-02, -2.348690558881037435e-02, -2.351356699027363009e-02, -2.354018770737563437e-02, -2.356676770079231542e-02, -2.359330693126981612e-02, -2.361980535962309238e-02, -2.364626294673742926e-02, -2.367267965356718157e-02, -2.369905544113707144e-02, -2.372539027054116831e-02, -2.375168410294361057e-02, -2.377793689957816148e-02, -2.380414862174917712e-02, -2.383031923083021170e-02, -2.385644868826561349e-02, -2.388253695556959502e-02, -2.390858399432636491e-02, -2.393458976619095013e-02, -2.396055423288794006e-02, -2.398647735621289509e-02, -2.401235909803131272e-02, -2.403819942027974124e-02, -2.406399828496467996e-02, -2.408975565416359918e-02, -2.411547149002415957e-02, -2.414114575476553406e-02, -2.416677841067652391e-02, -2.419236942011776179e-02, -2.421791874552003607e-02, -2.424342634938543226e-02, -2.426889219428665645e-02, -2.429431624286788535e-02, -2.431969845784409667e-02, -2.434503880200112810e-02, -2.437033723819660713e-02, -2.439559372935877143e-02, -2.442080823848763460e-02, -2.444598072865403898e-02, -2.447111116300089081e-02, -2.449619950474190080e-02, -2.452124571716260415e-02, -2.454624976361977767e-02, -2.457121160754247718e-02, -2.459613121243039990e-02, -2.462100854185587592e-02, -2.464584355946249083e-02, -2.467063622896581085e-02, -2.469538651415304972e-02, -2.472009437888370714e-02, -2.474475978708881932e-02, -2.476938270277162166e-02, -2.479396309000774304e-02, -2.481850091294431765e-02, -2.484299613580109520e-02, -2.486744872286960478e-02, -2.489185863851437613e-02, -2.491622584717161082e-02, -2.494055031335006348e-02, -2.496483200163081284e-02, -2.498907087666796603e-02, -2.501326690318712853e-02, -2.503742004598748586e-02, -2.506153026994032904e-02, -2.508559753998968259e-02, -2.510962182115218655e-02, -2.513360307851769324e-02, -2.515754127724835823e-02, -2.518143638257942796e-02, -2.520528835981918417e-02, -2.522909717434865945e-02, -2.525286279162220621e-02, -2.527658517716660502e-02, -2.530026429658269183e-02, -2.532390011554361622e-02, -2.534749259979627786e-02, -2.537104171516039661e-02, -2.539454742752975808e-02, -2.541800970287041994e-02, -2.544142850722276930e-02, -2.546480380670018348e-02, -2.548813556748972739e-02, -2.551142375585184821e-02, -2.553466833812086459e-02, -2.555786928070444969e-02, -2.558102655008424528e-02, -2.560414011281509500e-02, -2.562720993552646681e-02, -2.565023598492096810e-02, -2.567321822777527893e-02, -2.569615663094025268e-02, -2.571905116134030542e-02, -2.574190178597431100e-02, -2.576470847191469210e-02, -2.578747118630863103e-02, -2.581018989637670971e-02, -2.583286456941451953e-02, -2.585549517279123535e-02, -2.587808167395072578e-02, -2.590062404041089048e-02, -2.592312223976444077e-02, -2.594557623967808785e-02, -2.596798600789335457e-02, -2.599035151222596138e-02, -2.601267272056655144e-02, -2.603494960088030899e-02, -2.605718212120652910e-02, -2.607937024966018244e-02, -2.610151395443019093e-02, -2.612361320378064899e-02, -2.614566796605027194e-02, -2.616767820965279490e-02, -2.618964390307684104e-02, -2.621156501488607418e-02, -2.623344151371892474e-02, -2.625527336828933911e-02, -2.627706054738574576e-02, -2.629880301987236671e-02, -2.632050075468812811e-02, -2.634215372084735066e-02, -2.636376188743955878e-02, -2.638532522362982066e-02, -2.640684369865827635e-02, -2.642831728184062354e-02, -2.644974594256804812e-02, -2.647112965030694667e-02, -2.649246837459976259e-02, -2.651376208506378562e-02, -2.653501075139261603e-02, -2.655621434335493289e-02, -2.657737283079572577e-02, -2.659848618363511510e-02, -2.661955437186946244e-02, -2.664057736557038161e-02, -2.666155513488617512e-02, -2.668248765004027981e-02, -2.670337488133263382e-02, -2.672421679913861148e-02, -2.674501337391006067e-02, -2.676576457617486221e-02, -2.678647037653660370e-02, -2.680713074567555795e-02, -2.682774565434776701e-02, -2.684831507338585749e-02, -2.686883897369833282e-02, -2.688931732627021509e-02, -2.690975010216284033e-02, -2.693013727251412220e-02, -2.695047880853792058e-02, -2.697077468152518642e-02, -2.699102486284268160e-02, -2.701122932393439785e-02, -2.703138803632040843e-02, -2.705150097159771463e-02, -2.707156810143968723e-02, -2.709158939759676032e-02, -2.711156483189567853e-02, -2.713149437624036778e-02, -2.715137800261122752e-02, -2.717121568306573795e-02, -2.719100738973837320e-02, -2.721075309484008442e-02, -2.723045277065916717e-02, -2.725010638956073053e-02, -2.726971392398722799e-02, -2.728927534645773229e-02, -2.730879062956886177e-02, -2.732825974599402755e-02, -2.734768266848402324e-02, -2.736705936986686891e-02, -2.738638982304792552e-02, -2.740567400100949250e-02, -2.742491187681167161e-02, -2.744410342359164534e-02, -2.746324861456410360e-02, -2.748234742302108069e-02, -2.750139982233223285e-02, -2.752040578594468559e-02, -2.753936528738296433e-02, -2.755827830024951824e-02, -2.757714479822394663e-02, -2.759596475506400498e-02, -2.761473814460473422e-02, -2.763346494075917537e-02, -2.765214511751789422e-02, -2.767077864894969264e-02, -2.768936550920063702e-02, -2.770790567249493963e-02, -2.772639911313474342e-02, -2.774484580550008392e-02, -2.776324572404902449e-02, -2.778159884331745516e-02, -2.779990513791954013e-02, -2.781816458254718002e-02, -2.783637715197094520e-02, -2.785454282103873996e-02, -2.787266156467750611e-02, -2.789073335789169286e-02, -2.790875817576451631e-02, -2.792673599345692897e-02, -2.794466678620870573e-02, -2.796255052933754176e-02, -2.798038719823980544e-02, -2.799817676839008729e-02, -2.801591921534149487e-02, -2.803361451472558344e-02, -2.805126264225242874e-02, -2.806886357371046747e-02, -2.808641728496700379e-02, -2.810392375196758483e-02, -2.812138295073685068e-02, -2.813879485737738953e-02, -2.815615944807122600e-02, -2.817347669907867974e-02, -2.819074658673888928e-02, -2.820796908746986756e-02, -2.822514417776823478e-02, -2.824227183420989842e-02, -2.825935203344887015e-02, -2.827638475221882705e-02, -2.829336996733192860e-02, -2.831030765567974991e-02, -2.832719779423210210e-02, -2.834404036003855890e-02, -2.836083533022741229e-02, -2.837758268200601605e-02, -2.839428239266096957e-02, -2.841093443955794440e-02, -2.842753880014167386e-02, -2.844409545193629998e-02, -2.846060437254512715e-02, -2.847706553965055273e-02, -2.849347893101455281e-02, -2.850984452447813400e-02, -2.852616229796184691e-02, -2.854243222946531433e-02, -2.855865429706815409e-02, -2.857482847892879943e-02, -2.859095475328538027e-02, -2.860703309845544565e-02, -2.862306349283643553e-02, -2.863904591490453594e-02, -2.865498034321638590e-02, -2.867086675640748497e-02, -2.868670513319348386e-02, -2.870249545236923730e-02, -2.871823769280986219e-02, -2.873393183346939841e-02, -2.874957785338231805e-02, -2.876517573166250188e-02, -2.878072544750362796e-02, -2.879622698017923060e-02, -2.881168030904252692e-02, -2.882708541352708986e-02, -2.884244227314562009e-02, -2.885775086749140309e-02, -2.887301117623725447e-02, -2.888822317913617571e-02, -2.890338685602083721e-02, -2.891850218680433460e-02, -2.893356915147958508e-02, -2.894858773011958070e-02, -2.896355790287737098e-02, -2.897847964998623987e-02, -2.899335295175927557e-02, -2.900817778859017537e-02, -2.902295414095274612e-02, -2.903768198940054682e-02, -2.905236131456796073e-02, -2.906699209716907470e-02, -2.908157431799886228e-02, -2.909610795793208388e-02, -2.911059299792397373e-02, -2.912502941901035786e-02, -2.913941720230703650e-02, -2.915375632901047107e-02, -2.916804678039756557e-02, -2.918228853782540641e-02, -2.919648158273193891e-02, -2.921062589663507222e-02, -2.922472146113389707e-02, -2.923876825790734657e-02, -2.925276626871540706e-02, -2.926671547539830276e-02, -2.928061585987710991e-02, -2.929446740415345488e-02, -2.930827009030949337e-02, -2.932202390050816718e-02, -2.933572881699305843e-02, -2.934938482208853186e-02, -2.936299189819949196e-02, -2.937655002781177846e-02, -2.939005919349173268e-02, -2.940351937788691569e-02, -2.941693056372537626e-02, -2.943029273381603944e-02, -2.944360587104870308e-02, -2.945686995839409336e-02, -2.947008497890367743e-02, -2.948325091571009707e-02, -2.949636775202656505e-02, -2.950943547114762838e-02, -2.952245405644854034e-02, -2.953542349138549294e-02, -2.954834375949595346e-02, -2.956121484439825503e-02, -2.957403672979179096e-02, -2.958680939945688634e-02, -2.959953283725539133e-02, -2.961220702712951888e-02, -2.962483195310340600e-02, -2.963740759928166352e-02, -2.964993394985060080e-02, -2.966241098907727858e-02, -2.967483870131024451e-02, -2.968721707097902313e-02, -2.969954608259455300e-02, -2.971182572074887104e-02, -2.972405597011545941e-02, -2.973623681544888125e-02, -2.974836824158497497e-02, -2.976045023344132609e-02, -2.977248277601621598e-02, -2.978446585438986396e-02, -2.979639945372326501e-02, -2.980828355925941447e-02, -2.982011815632204521e-02, -2.983190323031697372e-02, -2.984363876673110094e-02, -2.985532475113257533e-02, -2.986696116917145552e-02, -2.987854800657895049e-02, -2.989008524916779777e-02, -2.990157288283245424e-02, -2.991301089354868326e-02, -2.992439926737397449e-02, -2.993573799044695408e-02, -2.994702704898845325e-02, -2.995826642930041542e-02, -2.996945611776642357e-02, -2.998059610085182514e-02, -2.999168636510370425e-02, -3.000272689715035093e-02, -3.001371768370207985e-02, -3.002465871155080707e-02, -3.003554996757010209e-02, -3.004639143871507337e-02, -3.005718311202279849e-02, -3.006792497461210564e-02, -3.007861701368310173e-02, -3.008925921651822016e-02, -3.009985157048124596e-02, -3.011039406301795757e-02, -3.012088668165580421e-02, -3.013132941400413142e-02, -3.014172224775395550e-02, -3.015206517067842845e-02, -3.016235817063210589e-02, -3.017260123555166526e-02, -3.018279435345564560e-02, -3.019293751244431223e-02, -3.020303070070014598e-02, -3.021307390648699312e-02, -3.022306711815106114e-02, -3.023301032412012077e-02, -3.024290351290441839e-02, -3.025274667309559712e-02, -3.026253979336736982e-02, -3.027228286247555730e-02, -3.028197586925789053e-02, -3.029161880263418760e-02, -3.030121165160602065e-02, -3.031075440525703157e-02, -3.032024705275320614e-02, -3.032968958334223905e-02, -3.033908198635360681e-02, -3.034842425119944551e-02, -3.035771636737354465e-02, -3.036695832445185372e-02, -3.037615011209244056e-02, -3.038529172003530399e-02, -3.039438313810272421e-02, -3.040342435619895756e-02, -3.041241536431047235e-02, -3.042135615250570607e-02, -3.043024671093520761e-02, -3.043908702983190440e-02, -3.044787709951071036e-02, -3.045661691036866472e-02, -3.046530645288501871e-02, -3.047394571762113147e-02, -3.048253469522058459e-02, -3.049107337640906065e-02, -3.049956175199457567e-02, -3.050799981286714604e-02, -3.051638754999936448e-02, -3.052472495444555345e-02, -3.053301201734245907e-02, -3.054124872990916437e-02, -3.054943508344693665e-02, -3.055757106933911643e-02, -3.056565667905133607e-02, -3.057369190413172441e-02, -3.058167673621044885e-02, -3.058961116699979513e-02, -3.059749518829475712e-02, -3.060532879197209316e-02, -3.061311196999124892e-02, -3.062084471439368433e-02, -3.062852701730335581e-02, -3.063615887092628956e-02, -3.064374026755109157e-02, -3.065127119954829532e-02, -3.065875165937120839e-02, -3.066618163955514911e-02, -3.067356113271763746e-02, -3.068089013155877662e-02, -3.068816862886097202e-02, -3.069539661748892437e-02, -3.070257409038950128e-02, -3.070970104059220565e-02, -3.071677746120859628e-02, -3.072380334543283256e-02, -3.073077868654117140e-02, -3.073770347789250498e-02, -3.074457771292775018e-02, -3.075140138517043140e-02, -3.075817448822648625e-02, -3.076489701578402625e-02, -3.077156896161344773e-02, -3.077819031956783441e-02, -3.078476108358242300e-02, -3.079128124767483918e-02, -3.079775080594518433e-02, -3.080416975257590367e-02, -3.081053808183174814e-02, -3.081685578805986453e-02, -3.082312286568986495e-02, -3.082933930923369148e-02, -3.083550511328566474e-02, -3.084162027252249430e-02, -3.084768478170344178e-02, -3.085369863566974485e-02, -3.085966182934560612e-02, -3.086557435773697525e-02, -3.087143621593270784e-02, -3.087724739910388191e-02, -3.088300790250394015e-02, -3.088871772146872113e-02, -3.089437685141647322e-02, -3.089998528784775392e-02, -3.090554302634575951e-02, -3.091105006257564153e-02, -3.091650639228546438e-02, -3.092191201130541425e-02, -3.092726691554789284e-02, -3.093257110100801344e-02, -3.093782456376302503e-02, -3.094302729997281884e-02, -3.094817930587949115e-02, -3.095328057780757230e-02, -3.095833111216374917e-02, -3.096333090543751734e-02, -3.096827995420054630e-02, -3.097317825510684935e-02, -3.097802580489264490e-02, -3.098282260037690111e-02, -3.098756863846077736e-02, -3.099226391612767625e-02, -3.099690843044361835e-02, -3.100150217855667314e-02, -3.100604515769747951e-02, -3.101053736517898202e-02, -3.101497879839651070e-02, -3.101936945482777763e-02, -3.102370933203274159e-02, -3.102799842765364621e-02, -3.103223673941537392e-02, -3.103642426512465483e-02, -3.104056100267109375e-02, -3.104464695002608424e-02, -3.104868210524391187e-02, -3.105266646646070300e-02, -3.105660003189510132e-02, -3.106048279984805621e-02, -3.106431476870277070e-02, -3.106809593692468410e-02, -3.107182630306179472e-02, -3.107550586574417059e-02, -3.107913462368402588e-02, -3.108271257567631063e-02, -3.108623972059768037e-02, -3.108971605740751959e-02, -3.109314158514724091e-02, -3.109651630294052449e-02, -3.109984020999347412e-02, -3.110311330559415235e-02, -3.110633558911295865e-02, -3.110950706000280633e-02, -3.111262771779838010e-02, -3.111569756211690629e-02, -3.111871659265759080e-02, -3.112168480920194866e-02, -3.112460221161396021e-02, -3.112746879983913431e-02, -3.113028457390595513e-02, -3.113304953392438332e-02, -3.113576368008692807e-02, -3.113842701266821694e-02, -3.114103953202489172e-02, -3.114360123859580276e-02, -3.114611213290209221e-02, -3.114857221554675690e-02, -3.115098148721514443e-02, -3.115333994867449524e-02, -3.115564760077425485e-02, -3.115790444444596283e-02, -3.116011048070334993e-02, -3.116226571064187670e-02, -3.116437013543947240e-02, -3.116642375635592099e-02, -3.116842657473298250e-02, -3.117037859199459776e-02, -3.117227980964661777e-02, -3.117413022927709859e-02, -3.117592985255571159e-02, -3.117767868123452746e-02, -3.117937671714749587e-02, -3.118102396221030664e-02, -3.118262041842086510e-02, -3.118416608785900060e-02, -3.118566097268639370e-02, -3.118710507514671493e-02, -3.118849839756543743e-02, -3.118984094235022556e-02, -3.119113271199025830e-02, -3.119237370905690240e-02, -3.119356393620330639e-02, -3.119470339616429999e-02, -3.119579209175688678e-02, -3.119683002587970988e-02, -3.119781720151330526e-02, -3.119875362171974434e-02, -3.119963928964350833e-02, -3.120047420851022532e-02, -3.120125838162773890e-02, -3.120199181238535180e-02, -3.120267450425437405e-02, -3.120330646078762690e-02, -3.120388768561985562e-02, -3.120441818246732710e-02, -3.120489795512810735e-02, -3.120532700748201646e-02, -3.120570534349036834e-02, -3.120603296719634545e-02, -3.120630988272442979e-02, -3.120653609428127723e-02, -3.120671160615450315e-02, -3.120683642271387948e-02, -3.120691054841030418e-02, -3.120693398777669297e-02, -3.120690674542721602e-02, -3.120682882605774547e-02, -3.120670023444539407e-02, -3.120652097544918124e-02, -3.120629105400923864e-02, -3.120601047514757684e-02, -3.120567924396723536e-02, -3.120529736565315349e-02, -3.120486484547123004e-02, -3.120438168876926710e-02, -3.120384790097599850e-02, -3.120326348760198848e-02, -3.120262845423871570e-02, -3.120194280655937125e-02, -3.120120655031831391e-02, -3.120041969135119858e-02, -3.119958223557521212e-02, -3.119869418898846974e-02, -3.119775555767061170e-02, -3.119676634778248067e-02, -3.119572656556600376e-02, -3.119463621734453948e-02, -3.119349530952256547e-02, -3.119230384858560565e-02, -3.119106184110047655e-02, -3.118976929371531509e-02, -3.118842621315897137e-02, -3.118703260624163323e-02, -3.118558847985469437e-02, -3.118409384097032763e-02, -3.118254869664210949e-02, -3.118095305400425676e-02, -3.117930692027238992e-02, -3.117761030274278367e-02, -3.117586320879287692e-02, -3.117406564588113063e-02, -3.117221762154671200e-02, -3.117031914340987614e-02, -3.116837021917182732e-02, -3.116637085661433035e-02, -3.116432106360048429e-02, -3.116222084807384121e-02, -3.116007021805893007e-02, -3.115786918166113528e-02, -3.115561774706637407e-02, -3.115331592254154749e-02, -3.115096371643435655e-02, -3.114856113717299688e-02, -3.114610819326631488e-02, -3.114360489330420673e-02, -3.114105124595675789e-02, -3.113844725997515911e-02, -3.113579294419079393e-02, -3.113308830751573483e-02, -3.113033335894277789e-02, -3.112752810754517915e-02, -3.112467256247671357e-02, -3.112176673297152585e-02, -3.111881062834458839e-02, -3.111580425799088251e-02, -3.111274763138615132e-02, -3.110964075808647991e-02, -3.110648364772812535e-02, -3.110327631002793303e-02, -3.110001875478324296e-02, -3.109671099187130694e-02, -3.109335303124997896e-02, -3.108994488295718089e-02, -3.108648655711130498e-02, -3.108297806391071422e-02, -3.107941941363424193e-02, -3.107581061664062283e-02, -3.107215168336905850e-02, -3.106844262433853046e-02, -3.106468345014834834e-02, -3.106087417147794516e-02, -3.105701479908673512e-02, -3.105310534381391235e-02, -3.104914581657918643e-02, -3.104513622838165482e-02, -3.104107659030110739e-02, -3.103696691349651371e-02, -3.103280720920726862e-02, -3.102859748875238383e-02, -3.102433776353078973e-02, -3.102002804502129729e-02, -3.101566834478244883e-02, -3.101125867445263945e-02, -3.100679904575004767e-02, -3.100228947047236477e-02, -3.099772996049713833e-02, -3.099312052778167501e-02, -3.098846118436285324e-02, -3.098375194235698793e-02, -3.097899281396023982e-02, -3.097418381144825122e-02, -3.096932494717614601e-02, -3.096441623357867878e-02, -3.095945768316987756e-02, -3.095444930854347396e-02, -3.094939112237252848e-02, -3.094428313740947567e-02, -3.093912536648622466e-02, -3.093391782251373248e-02, -3.092866051848268058e-02, -3.092335346746271155e-02, -3.091799668260302586e-02, -3.091259017713182330e-02, -3.090713396435657012e-02, -3.090162805766394349e-02, -3.089607247051974828e-02, -3.089046721646892049e-02, -3.088481230913543707e-02, -3.087910776222244427e-02, -3.087335358951194542e-02, -3.086754980486514782e-02, -3.086169642222194587e-02, -3.085579345560168427e-02, -3.084984091910188478e-02, -3.084383882689970685e-02, -3.083778719325060841e-02, -3.083168603248925138e-02, -3.082553535902863781e-02, -3.081933518736112293e-02, -3.081308553205729106e-02, -3.080678640776671889e-02, -3.080043782921738915e-02, -3.079403981121617978e-02, -3.078759236864853782e-02, -3.078109551647839615e-02, -3.077454926974809019e-02, -3.076795364357891999e-02, -3.076130865317011631e-02, -3.075461431379992311e-02, -3.074787064082454280e-02, -3.074107764967863934e-02, -3.073423535587549438e-02, -3.072734377500657352e-02, -3.072040292274142922e-02, -3.071341281482817265e-02, -3.070637346709302606e-02, -3.069928489544021880e-02, -3.069214711585252844e-02, -3.068496014439054537e-02, -3.067772399719311677e-02, -3.067043869047697199e-02, -3.066310424053710765e-02, -3.065572066374635390e-02, -3.064828797655547166e-02, -3.064080619549331558e-02, -3.063327533716644208e-02, -3.062569541825944236e-02, -3.061806645553457468e-02, -3.061038846583207657e-02, -3.060266146606976240e-02, -3.059488547324313093e-02, -3.058706050442561511e-02, -3.057918657676823512e-02, -3.057126370749936942e-02, -3.056329191392527164e-02, -3.055527121342965433e-02, -3.054720162347368886e-02, -3.053908316159606104e-02, -3.053091584541302653e-02, -3.052269969261787660e-02, -3.051443472098181245e-02, -3.050612094835291471e-02, -3.049775839265683394e-02, -3.048934707189639853e-02, -3.048088700415151758e-02, -3.047237820757955559e-02, -3.046382070041482593e-02, -3.045521450096905572e-02, -3.044655962763066423e-02, -3.043785609886531102e-02, -3.042910393321573634e-02, -3.042030314930149054e-02, -3.041145376581915263e-02, -3.040255580154226783e-02, -3.039360927532111165e-02, -3.038461420608292926e-02, -3.037557061283148105e-02, -3.036647851464768788e-02, -3.035733793068875683e-02, -3.034814888018892015e-02, -3.033891138245880040e-02, -3.032962545688569142e-02, -3.032029112293351328e-02, -3.031090840014273244e-02, -3.030147730813006340e-02, -3.029199786658889892e-02, -3.028247009528896999e-02, -3.027289401407633543e-02, -3.026326964287346516e-02, -3.025359700167912572e-02, -3.024387611056808881e-02, -3.023410698969165866e-02, -3.022428965927713429e-02, -3.021442413962798640e-02, -3.020451045112376026e-02, -3.019454861422011388e-02, -3.018453864944855430e-02, -3.017448057741687131e-02, -3.016437441880836720e-02, -3.015422019438261658e-02, -3.014401792497474128e-02, -3.013376763149598625e-02, -3.012346933493317142e-02, -3.011312305634874717e-02, -3.010272881688106500e-02, -3.009228663774398196e-02, -3.008179654022710356e-02, -3.007125854569549228e-02, -3.006067267558958436e-02, -3.005003895142576570e-02, -3.003935739479538305e-02, -3.002862802736538939e-02, -3.001785087087793791e-02, -3.000702594715096150e-02, -2.999615327807708329e-02, -2.998523288562437647e-02, -2.997426479183620124e-02, -2.996324901883108682e-02, -2.995218558880249904e-02, -2.994107452401893049e-02, -2.992991584682425099e-02, -2.991870957963684366e-02, -2.990745574495039250e-02, -2.989615436533312257e-02, -2.988480546342847655e-02, -2.987340906195448675e-02, -2.986196518370395556e-02, -2.985047385154441374e-02, -2.983893508841818989e-02, -2.982734891734195246e-02, -2.981571536140725440e-02, -2.980403444378000935e-02, -2.979230618770071365e-02, -2.978053061648438735e-02, -2.976870775352023421e-02, -2.975683762227180826e-02, -2.974492024627745090e-02, -2.973295564914932299e-02, -2.972094385457376212e-02, -2.970888488631172331e-02, -2.969677876819785262e-02, -2.968462552414125738e-02, -2.967242517812468741e-02, -2.966017775420540584e-02, -2.964788327651414479e-02, -2.963554176925585135e-02, -2.962315325670917751e-02, -2.961071776322690002e-02, -2.959823531323496626e-02, -2.958570593123375364e-02, -2.957312964179682757e-02, -2.956050646957143757e-02, -2.954783643927879483e-02, -2.953511957571338872e-02, -2.952235590374298335e-02, -2.950954544830913101e-02, -2.949668823442689811e-02, -2.948378428718401861e-02, -2.947083363174244144e-02, -2.945783629333676573e-02, -2.944479229727499370e-02, -2.943170166893822881e-02, -2.941856443378085273e-02, -2.940538061733015407e-02, -2.939215024518650882e-02, -2.937887334302312359e-02, -2.936554993658656298e-02, -2.935218005169573305e-02, -2.933876371424281801e-02, -2.932530095019229149e-02, -2.931179178558199899e-02, -2.929823624652183600e-02, -2.928463435919483743e-02, -2.927098614985633104e-02, -2.925729164483424627e-02, -2.924355087052903437e-02, -2.922976385341360950e-02, -2.921593062003327232e-02, -2.920205119700547067e-02, -2.918812561102023667e-02, -2.917415388883978777e-02, -2.916013605729843305e-02, -2.914607214330254548e-02, -2.913196217383101638e-02, -2.911780617593400997e-02, -2.910360417673454533e-02, -2.908935620342692485e-02, -2.907506228327784437e-02, -2.906072244362548421e-02, -2.904633671187988389e-02, -2.903190511552305661e-02, -2.901742768210822596e-02, -2.900290443926089104e-02, -2.898833541467751851e-02, -2.897372063612660073e-02, -2.895906013144789251e-02, -2.894435392855248396e-02, -2.892960205542302946e-02, -2.891480454011356380e-02, -2.889996141074912747e-02, -2.888507269552628015e-02, -2.887013842271246231e-02, -2.885515862064657461e-02, -2.884013331773837077e-02, -2.882506254246866573e-02, -2.880994632338931133e-02, -2.879478468912292227e-02, -2.877957766836311201e-02, -2.876432528987426379e-02, -2.874902758249149939e-02, -2.873368457512054039e-02, -2.871829629673813139e-02, -2.870286277639108249e-02, -2.868738404319725113e-02, -2.867186012634466430e-02, -2.865629105509182040e-02, -2.864067685876779679e-02, -2.862501756677169121e-02, -2.860931320857317689e-02, -2.859356381371210357e-02, -2.857776941179820951e-02, -2.856193003251162460e-02, -2.854604570560254767e-02, -2.853011646089096548e-02, -2.851414232826704129e-02, -2.849812333769078179e-02, -2.848205951919187059e-02, -2.846595090286990065e-02, -2.844979751889445060e-02, -2.843359939750412721e-02, -2.841735656900791149e-02, -2.840106906378381257e-02, -2.838473691227957202e-02, -2.836836014501237235e-02, -2.835193879256882668e-02, -2.833547288560464214e-02, -2.831896245484534502e-02, -2.830240753108503177e-02, -2.828580814518769082e-02, -2.826916432808567262e-02, -2.825247611078099061e-02, -2.823574352434437759e-02, -2.821896659991575754e-02, -2.820214536870346844e-02, -2.818527986198527541e-02, -2.816837011110745470e-02, -2.815141614748477294e-02, -2.813441800260125386e-02, -2.811737570800879049e-02, -2.810028929532868217e-02, -2.808315879624996569e-02, -2.806598424253039029e-02, -2.804876566599621979e-02, -2.803150309854204533e-02, -2.801419657213044187e-02, -2.799684611879261695e-02, -2.797945177062742886e-02, -2.796201355980231298e-02, -2.794453151855235198e-02, -2.792700567918091417e-02, -2.790943607405909146e-02, -2.789182273562591449e-02, -2.787416569638822769e-02, -2.785646498892055054e-02, -2.783872064586517467e-02, -2.782093269993190371e-02, -2.780310118389831345e-02, -2.778522613060922450e-02, -2.776730757297723312e-02, -2.774934554398183692e-02, -2.773134007667047221e-02, -2.771329120415735869e-02, -2.769519895962425579e-02, -2.767706337631976182e-02, -2.765888448755987258e-02, -2.764066232672740195e-02, -2.762239692727236351e-02, -2.760408832271134608e-02, -2.758573654662815205e-02, -2.756734163267321458e-02, -2.754890361456343445e-02, -2.753042252608301974e-02, -2.751189840108214310e-02, -2.749333127347802427e-02, -2.747472117725393778e-02, -2.745606814646010460e-02, -2.743737221521246744e-02, -2.741863341769387730e-02, -2.739985178815308037e-02, -2.738102736090520725e-02, -2.736216017033126988e-02, -2.734325025087857089e-02, -2.732429763706041223e-02, -2.730530236345585227e-02, -2.728626446470989661e-02, -2.726718397553357445e-02, -2.724806093070330365e-02, -2.722889536506162972e-02, -2.720968731351625092e-02, -2.719043681104066704e-02, -2.717114389267415164e-02, -2.715180859352078410e-02, -2.713243094875083389e-02, -2.711301099359897035e-02, -2.709354876336597315e-02, -2.707404429341733754e-02, -2.705449761918373927e-02, -2.703490877616096869e-02, -2.701527779990988212e-02, -2.699560472605612438e-02, -2.697588959029054850e-02, -2.695613242836819926e-02, -2.693633327610950312e-02, -2.691649216939930728e-02, -2.689660914418706000e-02, -2.687668423648685578e-02, -2.685671748237703285e-02, -2.683670891800091912e-02, -2.681665857956536808e-02, -2.679656650334254556e-02, -2.677643272566787927e-02, -2.675625728294167213e-02, -2.673604021162796773e-02, -2.671578154825503607e-02, -2.669548132941503352e-02, -2.667513959176401675e-02, -2.665475637202193576e-02, -2.663433170697267205e-02, -2.661386563346346268e-02, -2.659335818840548663e-02, -2.657280940877340333e-02, -2.655221933160554007e-02, -2.653158799400339579e-02, -2.651091543313215115e-02, -2.649020168622037708e-02, -2.646944679055921942e-02, -2.644865078350412679e-02, -2.642781370247258843e-02, -2.640693558494592447e-02, -2.638601646846809937e-02, -2.636505639064617296e-02, -2.634405538914974185e-02, -2.632301350171170964e-02, -2.630193076612712816e-02, -2.628080722025449845e-02, -2.625964290201393200e-02, -2.623843784938894794e-02, -2.621719210042496376e-02, -2.619590569323027376e-02, -2.617457866597473759e-02, -2.615321105689144554e-02, -2.613180290427504285e-02, -2.611035424648237152e-02, -2.608886512193262994e-02, -2.606733556910657140e-02, -2.604576562654727784e-02, -2.602415533285941385e-02, -2.600250472670974020e-02, -2.598081384682628808e-02, -2.595908273199919528e-02, -2.593731142107985957e-02, -2.591549995298142450e-02, -2.589364836667831793e-02, -2.587175670120643589e-02, -2.584982499566299691e-02, -2.582785328920644830e-02, -2.580584162105611576e-02, -2.578379003049321994e-02, -2.576169855685905494e-02, -2.573956723955659470e-02, -2.571739611804947298e-02, -2.569518523186186190e-02, -2.567293462057923178e-02, -2.565064432384727561e-02, -2.562831438137289086e-02, -2.560594483292264606e-02, -2.558353571832442178e-02, -2.556108707746610267e-02, -2.553859895029599036e-02, -2.551607137682270973e-02, -2.549350439711504240e-02, -2.547089805130189552e-02, -2.544825237957225317e-02, -2.542556742217496821e-02, -2.540284321941932433e-02, -2.538007981167355806e-02, -2.535727723936661085e-02, -2.533443554298669964e-02, -2.531155476308137586e-02, -2.528863494025844136e-02, -2.526567611518465428e-02, -2.524267832858656871e-02, -2.521964162124969155e-02, -2.519656603401923198e-02, -2.517345160779939708e-02, -2.515029838355356193e-02, -2.512710640230404052e-02, -2.510387570513256117e-02, -2.508060633317920132e-02, -2.505729832764348741e-02, -2.503395172978318053e-02, -2.501056658091528259e-02, -2.498714292241489485e-02, -2.496368079571616161e-02, -2.494018024231140634e-02, -2.491664130375170066e-02, -2.489306402164597615e-02, -2.486944843766181190e-02, -2.484579459352512232e-02, -2.482210253101949440e-02, -2.479837229198693718e-02, -2.477460391832729536e-02, -2.475079745199849912e-02, -2.472695293501610617e-02, -2.470307040945358967e-02, -2.467914991744190462e-02, -2.465519150117004635e-02, -2.463119520288417630e-02, -2.460716106488818750e-02, -2.458308912954298292e-02, -2.455897943926737062e-02, -2.453483203653688757e-02, -2.451064696388479888e-02, -2.448642426390085572e-02, -2.446216397923217656e-02, -2.443786615258310493e-02, -2.441353082671422411e-02, -2.438915804444359223e-02, -2.436474784864541346e-02, -2.434030028225121073e-02, -2.431581538824841016e-02, -2.429129320968148251e-02, -2.426673378965108277e-02, -2.424213717131426873e-02, -2.421750339788438997e-02, -2.419283251263128556e-02, -2.416812455888036823e-02, -2.414337958001355755e-02, -2.411859761946867631e-02, -2.409377872073956151e-02, -2.406892292737551967e-02, -2.404403028298198255e-02, -2.401910083122014983e-02, -2.399413461580627085e-02, -2.396913168051281740e-02, -2.394409206916727970e-02, -2.391901582565291590e-02, -2.389390299390777017e-02, -2.386875361792558173e-02, -2.384356774175502500e-02, -2.381834540950004964e-02, -2.379308666531939134e-02, -2.376779155342692920e-02, -2.374246011809110629e-02, -2.371709240363553337e-02, -2.369168845443803476e-02, -2.366624831493180370e-02, -2.364077202960369883e-02, -2.361525964299578464e-02, -2.358971119970412408e-02, -2.356412674437912899e-02, -2.353850632172552193e-02, -2.351284997650233272e-02, -2.348715775352262433e-02, -2.346142969765307312e-02, -2.343566585381494718e-02, -2.340986626698280185e-02, -2.338403098218536438e-02, -2.335816004450476033e-02, -2.333225349907721430e-02, -2.330631139109180100e-02, -2.328033376579165953e-02, -2.325432066847305662e-02, -2.322827214448566074e-02, -2.320218823923214657e-02, -2.317606899816884725e-02, -2.314991446680476905e-02, -2.312372469070182041e-02, -2.309749971547517267e-02, -2.307123958679270503e-02, -2.304494435037520578e-02, -2.301861405199573732e-02, -2.299224873748045850e-02, -2.296584845270761149e-02, -2.293941324360843428e-02, -2.291294315616593594e-02, -2.288643823641600336e-02, -2.285989853044615230e-02, -2.283332408439655778e-02, -2.280671494445902711e-02, -2.278007115687780831e-02, -2.275339276794851109e-02, -2.272667982401906789e-02, -2.269993237148868609e-02, -2.267315045680879174e-02, -2.264633412648175970e-02, -2.261948342706184348e-02, -2.259259840515491849e-02, -2.256567910741745508e-02, -2.253872558055811451e-02, -2.251173787133609744e-02, -2.248471602656188992e-02, -2.245766009309702049e-02, -2.243057011785415389e-02, -2.240344614779626528e-02, -2.237628822993759439e-02, -2.234909641134303834e-02, -2.232187073912809613e-02, -2.229461126045840721e-02, -2.226731802255065701e-02, -2.223999107267155342e-02, -2.221263045813837503e-02, -2.218523622631815573e-02, -2.215780842462840988e-02, -2.213034710053682352e-02, -2.210285230156061251e-02, -2.207532407526743845e-02, -2.204776246927423952e-02, -2.202016753124803189e-02, -2.199253930890536501e-02, -2.196487785001244308e-02, -2.193718320238472949e-02, -2.190945541388740134e-02, -2.188169453243454798e-02, -2.185390060599008005e-02, -2.182607368256642491e-02, -2.179821381022568894e-02, -2.177032103707830096e-02, -2.174239541128446251e-02, -2.171443698105232981e-02, -2.168644579463935296e-02, -2.165842190035151618e-02, -2.163036534654319207e-02, -2.160227618161775567e-02, -2.157415445402635981e-02, -2.154600021226904180e-02, -2.151781350489366529e-02, -2.148959438049672863e-02, -2.146134288772217485e-02, -2.143305907526265458e-02, -2.140474299185816595e-02, -2.137639468629711631e-02, -2.134801420741496217e-02, -2.131960160409553801e-02, -2.129115692526962686e-02, -2.126268021991631341e-02, -2.123417153706116597e-02, -2.120563092577781514e-02, -2.117705843518687472e-02, -2.114845411445594528e-02, -2.111981801280022816e-02, -2.109115017948145696e-02, -2.106245066380846992e-02, -2.103371951513694979e-02, -2.100495678286945847e-02, -2.097616251645470151e-02, -2.094733676538874587e-02, -2.091847957921354542e-02, -2.088959100751793668e-02, -2.086067109993654592e-02, -2.083171990615085775e-02, -2.080273747588793146e-02, -2.077372385892150425e-02, -2.074467910507053758e-02, -2.071560326420099352e-02, -2.068649638622357609e-02, -2.065735852109538279e-02, -2.062818971881911004e-02, -2.059899002944253973e-02, -2.056975950305960782e-02, -2.054049818980919692e-02, -2.051120613987592045e-02, -2.048188340348894992e-02, -2.045253003092337499e-02, -2.042314607249882258e-02, -2.039373157858025490e-02, -2.036428659957708123e-02, -2.033481118594398368e-02, -2.030530538818007061e-02, -2.027576925682942136e-02, -2.024620284247996560e-02, -2.021660619576505155e-02, -2.018697936736159326e-02, -2.015732240799128494e-02, -2.012763536842002501e-02, -2.009791829945720837e-02, -2.006817125195707596e-02, -2.003839427681737562e-02, -2.000858742498007325e-02, -1.997875074743020105e-02, -1.994888429519733192e-02, -1.991898811935401484e-02, -1.988906227101682953e-02, -1.985910680134524153e-02, -1.982912176154254941e-02, -1.979910720285486120e-02, -1.976906317657209020e-02, -1.973898973402635551e-02, -1.970888692659378966e-02, -1.967875480569249158e-02, -1.964859342278412954e-02, -1.961840282937251517e-02, -1.958818307700468594e-02, -1.955793421726971862e-02, -1.952765630179940926e-02, -1.949734938226817954e-02, -1.946701351039211575e-02, -1.943664873793031836e-02, -1.940625511668330264e-02, -1.937583269849434478e-02, -1.934538153524780271e-02, -1.931490167887068080e-02, -1.928439318133123512e-02, -1.925385609463994493e-02, -1.922329047084817347e-02, -1.919269636204970833e-02, -1.916207382037872498e-02, -1.913142289801174345e-02, -1.910074364716575837e-02, -1.907003612009956425e-02, -1.903930036911250304e-02, -1.900853644654502267e-02, -1.897774440477884017e-02, -1.894692429623591121e-02, -1.891607617337946398e-02, -1.888520008871291331e-02, -1.885429609478081470e-02, -1.882336424416727882e-02, -1.879240458949760564e-02, -1.876141718343705619e-02, -1.873040207869115098e-02, -1.869935932800512526e-02, -1.866828898416514337e-02, -1.863719109999623785e-02, -1.860606572836402683e-02, -1.857491292217353096e-02, -1.854373273436964523e-02, -1.851252521793649367e-02, -1.848129042589805385e-02, -1.845002841131766422e-02, -1.841873922729752797e-02, -1.838742292697959080e-02, -1.835607956354468051e-02, -1.832470919021289557e-02, -1.829331186024267530e-02, -1.826188762693213216e-02, -1.823043654361742802e-02, -1.819895866367397808e-02, -1.816745404051534063e-02, -1.813592272759403934e-02, -1.810436477840036973e-02, -1.807278024646353023e-02, -1.804116918535065076e-02, -1.800953164866717776e-02, -1.797786769005635041e-02, -1.794617736319964116e-02, -1.791446072181638455e-02, -1.788271781966322554e-02, -1.785094871053526794e-02, -1.781915344826446798e-02, -1.778733208672101176e-02, -1.775548467981177478e-02, -1.772361128148151541e-02, -1.769171194571193123e-02, -1.765978672652208231e-02, -1.762783567796779097e-02, -1.759585885414236342e-02, -1.756385630917528182e-02, -1.753182809723333874e-02, -1.749977427251980452e-02, -1.746769488927481587e-02, -1.743559000177453272e-02, -1.740345966433197097e-02, -1.737130393129644387e-02, -1.733912285705307976e-02, -1.730691649602372761e-02, -1.727468490266594742e-02, -1.724242813147347508e-02, -1.721014623697559448e-02, -1.717783927373777234e-02, -1.714550729636077700e-02, -1.711315035948145213e-02, -1.708076851777167240e-02, -1.704836182593915533e-02, -1.701593033872648292e-02, -1.698347411091196205e-02, -1.695099319730856285e-02, -1.691848765276489017e-02, -1.688595753216387899e-02, -1.685340289042379716e-02, -1.682082378249733640e-02, -1.678822026337246226e-02, -1.675559238807096396e-02, -1.672294021164956110e-02, -1.669026378919960182e-02, -1.665756317584607751e-02, -1.662483842674894810e-02, -1.659208959710177858e-02, -1.655931674213251270e-02, -1.652651991710277560e-02, -1.649369917730840809e-02, -1.646085457807847097e-02, -1.642798617477625456e-02, -1.639509402279823447e-02, -1.636217817757478973e-02, -1.632923869456910301e-02, -1.629627562927824305e-02, -1.626328903723212385e-02, -1.623027897399409447e-02, -1.619724549516007514e-02, -1.616418865635918869e-02, -1.613110851325371548e-02, -1.609800512153794494e-02, -1.606487853693956691e-02, -1.603172881521818666e-02, -1.599855601216653572e-02, -1.596536018360904599e-02, -1.593214138540318195e-02, -1.589889967343775801e-02, -1.586563510363439219e-02, -1.583234773194623288e-02, -1.579903761435882611e-02, -1.576570480688892911e-02, -1.573234936558549901e-02, -1.569897134652883594e-02, -1.566557080583120751e-02, -1.563214779963556858e-02, -1.559870238411709305e-02, -1.556523461548172879e-02, -1.553174454996626187e-02, -1.549823224383958462e-02, -1.546469775340037281e-02, -1.543114113497901993e-02, -1.539756244493634303e-02, -1.536396173966413786e-02, -1.533033907558426640e-02, -1.529669450914967858e-02, -1.526302809684342530e-02, -1.522933989517906428e-02, -1.519562996070005466e-02, -1.516189834998039714e-02, -1.512814511962372668e-02, -1.509437032626417992e-02, -1.506057402656496742e-02, -1.502675627721982050e-02, -1.499291713495174913e-02, -1.495905665651305234e-02, -1.492517489868635389e-02, -1.489127191828270094e-02, -1.485734777214310458e-02, -1.482340251713732890e-02, -1.478943621016471505e-02, -1.475544890815298077e-02, -1.472144066805933932e-02, -1.468741154686936320e-02, -1.465336160159783595e-02, -1.461929088928750481e-02, -1.458519946701035234e-02, -1.455108739186621036e-02, -1.451695472098373831e-02, -1.448280151151933731e-02, -1.444862782065804534e-02, -1.441443370561250326e-02, -1.438021922362382916e-02, -1.434598443196068510e-02, -1.431172938791925274e-02, -1.427745414882390304e-02, -1.424315877202629067e-02, -1.420884331490580334e-02, -1.417450783486871521e-02, -1.414015238934921911e-02, -1.410577703580821914e-02, -1.407138183173416331e-02, -1.403696683464197847e-02, -1.400253210207397930e-02, -1.396807769159899223e-02, -1.393360366081291060e-02, -1.389911006733771104e-02, -1.386459696882252554e-02, -1.383006442294237859e-02, -1.379551248739913777e-02, -1.376094121992061173e-02, -1.372635067826057272e-02, -1.369174092019934813e-02, -1.365711200354277795e-02, -1.362246398612308035e-02, -1.358779692579755762e-02, -1.355311088044976707e-02, -1.351840590798850626e-02, -1.348368206634835767e-02, -1.344893941348881787e-02, -1.341417800739521347e-02, -1.337939790607765855e-02, -1.334459916757177109e-02, -1.330978184993744130e-02, -1.327494601126052130e-02, -1.324009170965063410e-02, -1.320521900324286672e-02, -1.317032795019649170e-02, -1.313541860869565057e-02, -1.310049103694857150e-02, -1.306554529318777920e-02, -1.303058143567061879e-02, -1.299559952267775528e-02, -1.296059961251453535e-02, -1.292558176350992391e-02, -1.289054603401703844e-02, -1.285549248241223651e-02, -1.282042116709603864e-02, -1.278533214649219159e-02, -1.275022547904832056e-02, -1.271510122323465074e-02, -1.267995943754575416e-02, -1.264480018049825120e-02, -1.260962351063271529e-02, -1.257442948651218279e-02, -1.253921816672298045e-02, -1.250398960987376094e-02, -1.246874387459610302e-02, -1.243348101954442828e-02, -1.239820110339506093e-02, -1.236290418484729987e-02, -1.232759032262247846e-02, -1.229225957546431318e-02, -1.225691200213814905e-02, -1.222154766143208546e-02, -1.218616661215546869e-02, -1.215076891314000387e-02, -1.211535462323848344e-02, -1.207992380132618185e-02, -1.204447650629905837e-02, -1.200901279707504953e-02, -1.197353273259312879e-02, -1.193803637181385657e-02, -1.190252377371838616e-02, -1.186699499730954274e-02, -1.183145010161070800e-02, -1.179588914566594496e-02, -1.176031218854066418e-02, -1.172471928932034869e-02, -1.168911050711158618e-02, -1.165348590104072282e-02, -1.161784553025512444e-02, -1.158218945392205067e-02, -1.154651773122931067e-02, -1.151083042138401590e-02, -1.147512758361436506e-02, -1.143940927716727805e-02, -1.140367556131039427e-02, -1.136792649533036222e-02, -1.133216213853403646e-02, -1.129638255024701700e-02, -1.126058778981496589e-02, -1.122477791660263929e-02, -1.118895298999354575e-02, -1.115311306939100085e-02, -1.111725821421674296e-02, -1.108138848391202608e-02, -1.104550393793605340e-02, -1.100960463576752639e-02, -1.097369063690324144e-02, -1.093776200085907167e-02, -1.090181878716838665e-02, -1.086586105538404207e-02, -1.082988886507592341e-02, -1.079390227583304496e-02, -1.075790134726170230e-02, -1.072188613898673870e-02, -1.068585671065010352e-02, -1.064981312191220532e-02, -1.061375543245076346e-02, -1.057768370196064331e-02, -1.054159799015490402e-02, -1.050549835676331881e-02, -1.046938486153345220e-02, -1.043325756422932779e-02, -1.039711652463261825e-02, -1.036096180254158193e-02, -1.032479345777160759e-02, -1.028861155015449273e-02, -1.025241613953915311e-02, -1.021620728579038587e-02, -1.017998504879011855e-02, -1.014374948843615835e-02, -1.010750066464305950e-02, -1.007123863734082740e-02, -1.003496346647625090e-02, -9.998675212011564825e-03, -9.962373933925376332e-03, -9.926059692211421093e-03, -9.889732546879489647e-03, -9.853392557955184539e-03, -9.817039785478895095e-03, -9.780674289507081121e-03, -9.744296130110942367e-03, -9.707905367377337932e-03, -9.671502061407752371e-03, -9.635086272319131825e-03, -9.598658060242692275e-03, -9.562217485324981184e-03, -9.525764607726885241e-03, -9.489299487624329454e-03, -9.452822185206965697e-03, -9.416332760679640285e-03, -9.379831274260884769e-03, -9.343317786183994930e-03, -9.306792356695762700e-03, -9.270255046057263720e-03, -9.233705914543727244e-03, -9.197145022443524789e-03, -9.160572430059419138e-03, -9.123988197707306666e-03, -9.087392385716935514e-03, -9.050785054431076393e-03, -9.014166264206358720e-03, -8.977536075411813449e-03, -8.940894548430337180e-03, -8.904241743657382441e-03, -8.867577721501788621e-03, -8.830902542384408069e-03, -8.794216266739634386e-03, -8.757518955013926173e-03, -8.720810667666778482e-03, -8.684091465169399213e-03, -8.647361408005963326e-03, -8.610620556672634457e-03, -8.573868971677393175e-03, -8.537106713540788122e-03, -8.500333842794841402e-03, -8.463550419983763284e-03, -8.426756505663166377e-03, -8.389952160400700534e-03, -8.353137444774890591e-03, -8.316312419376397508e-03, -8.279477144806693042e-03, -8.242631681678977418e-03, -8.205776090616914709e-03, -8.168910432255881843e-03, -8.132034767241672762e-03, -8.095149156231476809e-03, -8.058253659892442369e-03, -8.021348338903147926e-03, -7.984433253952359991e-03, -7.947508465738850961e-03, -7.910574034972797305e-03, -7.873630022373507079e-03, -7.836676488671215357e-03, -7.799713494605729422e-03, -7.762741100927258824e-03, -7.725759368395195004e-03, -7.688768357779394123e-03, -7.651768129858810968e-03, -7.614758745422489476e-03, -7.577740265268202713e-03, -7.540712750203820702e-03, -7.503676261045911372e-03, -7.466630858620725009e-03, -7.429576603762881072e-03, -7.392513557316598115e-03, -7.355441780134514169e-03, -7.318361333078434415e-03, -7.281272277018569633e-03, -7.244174672833383552e-03, -7.207068581410486230e-03, -7.169954063645256684e-03, -7.132831180441924490e-03, -7.095699992712083994e-03, -7.058560561376178363e-03, -7.021412947362081457e-03, -6.984257211606052784e-03, -6.947093415051385293e-03, -6.909921618649761919e-03, -6.872741883359964089e-03, -6.835554270148681832e-03, -6.798358839989323762e-03, -6.761155653863246129e-03, -6.723944772758524632e-03, -6.686726257670616222e-03, -6.649500169601860362e-03, -6.612266569561106068e-03, -6.575025518564613959e-03, -6.537777077634773434e-03, -6.500521307801120086e-03, -6.463258270098891541e-03, -6.425988025570488101e-03, -6.388710635264020776e-03, -6.351426160234322632e-03, -6.314134661541608712e-03, -6.276836200252758000e-03, -6.239530837440060949e-03, -6.202218634182049550e-03, -6.164899651562313378e-03, -6.127573950670644511e-03, -6.090241592601890012e-03, -6.052902638456660565e-03, -6.015557149340423210e-03, -5.978205186364446769e-03, -5.940846810644342946e-03, -5.903482083301129710e-03, -5.866111065460947668e-03, -5.828733818254088622e-03, -5.791350402816183851e-03, -5.753960880287020165e-03, -5.716565311811347416e-03, -5.679163758537579196e-03, -5.641756281619212700e-03, -5.604342942213351615e-03, -5.566923801481800729e-03, -5.529498920589549782e-03, -5.492068360706287011e-03, -5.454632183004959334e-03, -5.417190448662632767e-03, -5.379743218859552208e-03, -5.342290554780007930e-03, -5.304832517611072704e-03, -5.267369168543427523e-03, -5.229900568771263594e-03, -5.192426779491176453e-03, -5.154947861903480012e-03, -5.117463877210903789e-03, -5.079974886619496692e-03, -5.042480951337273073e-03, -5.004982132575625658e-03, -4.967478491547903073e-03, -4.929970089470430729e-03, -4.892456987560974725e-03, -4.854939247040691679e-03, -4.817416929131723528e-03, -4.779890095059027670e-03, -4.742358806049001320e-03, -4.704823123330345407e-03, -4.667283108132768733e-03, -4.629738821688342797e-03, -4.592190325230356869e-03, -4.554637679993186160e-03, -4.517080947213168718e-03, -4.479520188127354696e-03, -4.441955463974441368e-03, -4.404386835993435653e-03, -4.366814365424969042e-03, -4.329238113510034715e-03, -4.291658141490841891e-03, -4.254074510609391624e-03, -4.216487282109418824e-03, -4.178896517233878644e-03, -4.141302277226963091e-03, -4.103704623332518966e-03, -4.066103616795099969e-03, -4.028499318858566776e-03, -3.990891790767407167e-03, -3.953281093765670037e-03, -3.915667289096858711e-03, -3.878050438004695087e-03, -3.840430601731959978e-03, -3.802807841521400802e-03, -3.765182218614353347e-03, -3.727553794252169445e-03, -3.689922629674817489e-03, -3.652288786121832623e-03, -3.614652324830839192e-03, -3.577013307039539174e-03, -3.539371793983168632e-03, -3.501727846896484416e-03, -3.464081527012286606e-03, -3.426432895562344857e-03, -3.388782013776047482e-03, -3.351128942881789231e-03, -3.313473744105820303e-03, -3.275816478672120141e-03, -3.238157207803270005e-03, -3.200495992719212639e-03, -3.162832894638149556e-03, -3.125167974775236099e-03, -3.087501294343929746e-03, -3.049832914554643972e-03, -3.012162896615672419e-03, -2.974491301731749943e-03, -2.936818191105945632e-03, -2.899143625937247639e-03, -2.861467667422466603e-03, -2.823790376754762438e-03, -2.786111815124619247e-03, -2.748432043718433259e-03, -2.710751123719961752e-03, -2.673069116308885405e-03, -2.635386082661823112e-03, -2.597702083951046546e-03, -2.560017181345329747e-03, -2.522331436009858045e-03, -2.484644909105072300e-03, -2.446957661788035001e-03, -2.409269755211098860e-03, -2.371581250522726905e-03, -2.333892208866561804e-03, -2.296202691382264165e-03, -2.258512759204187644e-03, -2.220822473462686492e-03, -2.183131895282844435e-03, -2.145441085785331631e-03, -2.107750106085138752e-03, -2.070059017292867187e-03, -2.032367880513427996e-03, -1.994676756846960018e-03, -1.956985707387594309e-03, -1.919294793224303941e-03, -1.881604075440791246e-03, -1.843913615114340732e-03, -1.806223473317201652e-03, -1.768533711115226033e-03, -1.730844389568718476e-03, -1.693155569731490725e-03, -1.655467312651698244e-03, -1.617779679370512716e-03, -1.580092730923479249e-03, -1.542406528339149195e-03, -1.504721132640026446e-03, -1.467036604841242316e-03, -1.429353005951904078e-03, -1.391670396973726694e-03, -1.353988838902017927e-03, -1.316308392724287093e-03, -1.278629119421635218e-03, -1.240951079967604273e-03, -1.203274335328071570e-03, -1.165598946462121028e-03, -1.127924974320753835e-03, -1.090252479847762541e-03, -1.052581523978791045e-03, -1.014912167642160546e-03, -9.772444717575535372e-04, -9.395784972373331717e-04, -9.019143049852258471e-04, -8.642519558972621861e-04, -8.265915108604150610e-04, -7.889330307539737120e-04, -7.512765764481853497e-04, -7.136222088052141324e-04, -6.759699886777762639e-04, -6.383199769105127016e-04, -6.006722343388485761e-04, -5.630268217888872648e-04, -5.253838000782669109e-04, -4.877432300148922873e-04, -4.501051723978078496e-04, -4.124696880162355612e-04, -3.748368376504326600e-04, -3.372066820703393869e-04, -2.995792820369430750e-04, -2.619546983009233849e-04, -2.243329916036090313e-04, -1.867142226756162695e-04, -1.490984522382211429e-04, -1.114857410020069406e-04, -7.387614966781187145e-05, -3.626973892537595288e-05, 1.333430545288951487e-06, 3.893329807525446935e-05, 7.652980300572373559e-05, 1.141228846892826772e-04, 1.517124824890523738e-04, 1.892985357788908333e-04, 2.268809839441213530e-04, 2.644597663806824771e-04, 3.020348224964847813e-04, 3.396060917100389778e-04, 3.771735134518145556e-04, 4.147370271632826199e-04, 4.522965722982719042e-04, 4.898520883216031085e-04, 5.274035147104381895e-04, 5.649507909533304367e-04, 6.024938565515763639e-04, 6.400326510178550900e-04, 6.775671138775651598e-04, 7.150971846679935037e-04, 7.526228029390368652e-04, 7.901439082533981504e-04, 8.276604401857458456e-04, 8.651723383239553209e-04, 9.026795422681698020e-04, 9.401819916321396860e-04, 9.776796260418656615e-04, 1.015172385136941602e-03, 1.052660208569610985e-03, 1.090143036006109350e-03, 1.127620807125317938e-03, 1.165093461620083813e-03, 1.202560939196292006e-03, 1.240023179574211007e-03, 1.277480122487129922e-03, 1.314931707682694866e-03, 1.352377874922083226e-03, 1.389818563980911798e-03, 1.427253714648426880e-03, 1.464683266728712295e-03, 1.502107160039869299e-03, 1.539525334414104836e-03, 1.576937729698879272e-03, 1.614344285755515149e-03, 1.651744942460581711e-03, 1.689139639704930178e-03, 1.726528317395023418e-03, 1.763910915451611912e-03, 1.801287373811035668e-03, 1.838657632424321947e-03, 1.876021631258485440e-03, 1.913379310295206838e-03, 1.950730609532156648e-03, 1.988075468982147560e-03, 2.025413828674096136e-03, 2.062745628652128127e-03, 2.100070808976872358e-03, 2.137389309724584043e-03, 2.174701070987249303e-03, 2.212006032873745261e-03, 2.249304135508418435e-03, 2.286595319032511554e-03, 2.323879523603132689e-03, 2.361156689394681638e-03, 2.398426756597411402e-03, 2.435689665418829843e-03, 2.472945356082718697e-03, 2.510193768830494901e-03, 2.547434843919855335e-03, 2.584668521626105192e-03, 2.621894742241304057e-03, 2.659113446075226511e-03, 2.696324573454501276e-03, 2.733528064723862380e-03, 2.770723860245293078e-03, 2.807911900398093064e-03, 2.845092125580117072e-03, 2.882264476206285175e-03, 2.919428892710002662e-03, 2.956585315542195960e-03, 2.993733685172654448e-03, 3.030873942088679537e-03, 3.068006026796383980e-03, 3.105129879819828846e-03, 3.142245441702377906e-03, 3.179352653004867933e-03, 3.216451454308009560e-03, 3.253541786210434415e-03, 3.290623589330230348e-03, 3.327696804303909277e-03, 3.364761371787814044e-03, 3.401817232456732804e-03, 3.438864327005026165e-03, 3.475902596146729969e-03, 3.512931980614714816e-03, 3.549952421161904279e-03, 3.586963858560374575e-03, 3.623966233602649543e-03, 3.660959487100354497e-03, 3.697943559885571475e-03, 3.734918392809879507e-03, 3.771883926745786195e-03, 3.808840102584893240e-03, 3.845786861240207098e-03, 3.882724143644337034e-03, 3.919651890750879865e-03, 3.956570043533484508e-03, 3.993478542987211576e-03, 4.030377330127175514e-03, 4.067266345989644857e-03, 4.104145531632173195e-03, 4.141014828132714466e-03, 4.177874176590902315e-03, 4.214723518127102067e-03, 4.251562793883677076e-03, 4.288391945023774417e-03, 4.325210912732477611e-03, 4.362019638216027735e-03, 4.398818062703179106e-03, 4.435606127443332720e-03, 4.472383773708911957e-03, 4.509150942793504688e-03, 4.545907576013283151e-03, 4.582653614706066331e-03, 4.619389000232663502e-03, 4.656113673975502062e-03, 4.692827577339994498e-03, 4.729530651753502749e-03, 4.766222838666755481e-03, 4.802904079552760414e-03, 4.839574315907150398e-03, 4.876233489249111493e-03, 4.912881541120117483e-03, 4.949518413085294243e-03, 4.986144046732371091e-03, 5.022758383673210821e-03, 5.059361365541928390e-03, 5.095952933997238872e-03, 5.132533030720525836e-03, 5.169101597417369645e-03, 5.205658575816605495e-03, 5.242203907671556806e-03, 5.278737534758827857e-03, 5.315259398879439157e-03, 5.351769441858117080e-03, 5.388267605544342503e-03, 5.424753831811584062e-03, 5.461228062557357127e-03, 5.497690239704425968e-03, 5.534140305199379550e-03, 5.570578201013925632e-03, 5.607003869144106672e-03, 5.643417251611508069e-03, 5.679818290461616237e-03, 5.716206927766009568e-03, 5.752583105620574268e-03, 5.788946766146919887e-03, 5.825297851491438236e-03, 5.861636303826634788e-03, 5.897962065349756505e-03, 5.934275078284131921e-03, 5.970575284878256936e-03, 6.006862627407095860e-03, 6.043137048170694504e-03, 6.079398489495394485e-03, 6.115646893733843632e-03, 6.151882203264201487e-03, 6.188104360491334527e-03, 6.224313307846006914e-03, 6.260508987785748727e-03, 6.296691342794129981e-03, 6.332860315381934162e-03, 6.369015848085891017e-03, 6.405157883470032239e-03, 6.441286364124680988e-03, 6.477401232667863960e-03, 6.513502431743834267e-03, 6.549589904024522534e-03, 6.585663592208522953e-03, 6.621723439022458510e-03, 6.657769387219638312e-03, 6.693801379581056782e-03, 6.729819358915673823e-03, 6.765823268059438164e-03, 6.801813049876587539e-03, 6.837788647258742289e-03, 6.873750003125893293e-03, 6.909697060425496438e-03, 6.945629762133833512e-03, 6.981548051254689476e-03, 7.017451870820618810e-03, 7.053341163891994024e-03, 7.089215873558441135e-03, 7.125075942937366021e-03, 7.160921315175357814e-03, 7.196751933447159341e-03, 7.232567740957129496e-03, 7.268368680937765253e-03, 7.304154696651072101e-03, 7.339925731387678468e-03, 7.375681728467893029e-03, 7.411422631241085419e-03, 7.447148383085730461e-03, 7.482858927410176650e-03, 7.518554207651730222e-03, 7.554234167278107114e-03, 7.589898749785941104e-03, 7.625547898702222764e-03, 7.661181557583310667e-03, 7.696799670016239367e-03, 7.732402179617387135e-03, 7.767989030033775263e-03, 7.803560164942240605e-03, 7.839115528050517173e-03, 7.874655063096138927e-03, 7.910178713847672294e-03, 7.945686424103676204e-03, 7.981178137694068184e-03, 8.016653798479208420e-03, 8.052113350350090584e-03, 8.087556737229080819e-03, 8.122983903069052117e-03, 8.158394791854711378e-03, 8.193789347601315720e-03, 8.229167514355831270e-03, 8.264529236196110906e-03, 8.299874457232288977e-03, 8.335203121605240864e-03, 8.370515173488052296e-03, 8.405810557084985452e-03, 8.441089216632816430e-03, 8.476351096399627888e-03, 8.511596140685929665e-03, 8.546824293823794896e-03, 8.582035500178263401e-03, 8.617229704145577471e-03, 8.652406850155317311e-03, 8.687566882669006327e-03, 8.722709746180518781e-03, 8.757835385216919399e-03, 8.792943744337323661e-03, 8.828034768134060059e-03, 8.863108401231969274e-03, 8.898164588289302762e-03, 8.933203273996888349e-03, 8.968224403079035761e-03, 9.003227920292802833e-03, 9.038213770429241040e-03, 9.073181898312049354e-03, 9.108132248798960287e-03, 9.143064766780860386e-03, 9.177979397182548307e-03, 9.212876084962252562e-03, 9.247754775112460718e-03, 9.282615412659272341e-03, 9.317457942662518700e-03, 9.352282310216838285e-03, 9.387088460450210975e-03, 9.421876338525451630e-03, 9.456645889639139768e-03, 9.491397059023028160e-03, 9.526129791942606478e-03, 9.560844033698506425e-03, 9.595539729625476508e-03, 9.630216825093762881e-03, 9.664875265507709423e-03, 9.699514996307135109e-03, 9.734135962966405931e-03, 9.768738110995411547e-03, 9.803321385938777721e-03, 9.837885733376882866e-03, 9.872431098925263035e-03, 9.906957428234464472e-03, 9.941464666991363733e-03, 9.975952760917778175e-03, 1.001042165577152067e-02, 1.004487129734584622e-02, 1.007930163147053269e-02, 1.011371260401053990e-02, 1.014810416086739560e-02, 1.018247624797830216e-02, 1.021682881131723113e-02, 1.025116179689381478e-02, 1.028547515075447713e-02, 1.031976881898177302e-02, 1.035404274769518435e-02, 1.038829688305021974e-02, 1.042253117123985613e-02, 1.045674555849317525e-02, 1.049093999107629689e-02, 1.052511441529276059e-02, 1.055926877748239109e-02, 1.059340302402273469e-02, 1.062751710132799933e-02, 1.066161095585035391e-02, 1.069568453407863939e-02, 1.072973778253967676e-02, 1.076377064779727825e-02, 1.079778307645360910e-02, 1.083177501514784487e-02, 1.086574641055735452e-02, 1.089969720939708633e-02, 1.093362735842023231e-02, 1.096753680441757590e-02, 1.100142549421871500e-02, 1.103529337469075396e-02, 1.106914039273929062e-02, 1.110296649530864710e-02, 1.113677162938097286e-02, 1.117055574197749722e-02, 1.120431878015746945e-02, 1.123806069101958988e-02, 1.127178142170055276e-02, 1.130548091937652079e-02, 1.133915913126201137e-02, 1.137281600461133475e-02, 1.140645148671690264e-02, 1.144006552491129425e-02, 1.147365806656567601e-02, 1.150722905909089613e-02, 1.154077844993690871e-02, 1.157430618659368270e-02, 1.160781221659023740e-02, 1.164129648749573018e-02, 1.167475894691847454e-02, 1.170819954250731237e-02, 1.174161822195066325e-02, 1.177501493297666499e-02, 1.180838962335417977e-02, 1.184174224089154862e-02, 1.187507273343792018e-02, 1.190838104888210063e-02, 1.194166713515428316e-02, 1.197493094022393512e-02, 1.200817241210209822e-02, 1.204139149883994182e-02, 1.207458814852947586e-02, 1.210776230930330974e-02, 1.214091392933546246e-02, 1.217404295684034257e-02, 1.220714934007381333e-02, 1.224023302733237388e-02, 1.227329396695434581e-02, 1.230633210731893121e-02, 1.233934739684663939e-02, 1.237233978399980214e-02, 1.240530921728183293e-02, 1.243825564523808741e-02, 1.247117901645522844e-02, 1.250407927956232075e-02, 1.253695638322930260e-02, 1.256981027616908136e-02, 1.260264090713569297e-02, 1.263544822492589786e-02, 1.266823217837800310e-02, 1.270099271637324494e-02, 1.273372978783453117e-02, 1.276644334172761554e-02, 1.279913332706031359e-02, 1.283179969288350021e-02, 1.286444238829020578e-02, 1.289706136241625806e-02, 1.292965656444070716e-02, 1.296222794358489229e-02, 1.299477544911336463e-02, 1.302729903033354730e-02, 1.305979863659646918e-02, 1.309227421729540312e-02, 1.312472572186781754e-02, 1.315715309979388278e-02, 1.318955630059760742e-02, 1.322193527384598645e-02, 1.325428996915021390e-02, 1.328662033616457259e-02, 1.331892632458745243e-02, 1.335120788416057323e-02, 1.338346496467018691e-02, 1.341569751594597071e-02, 1.344790548786171588e-02, 1.348008883033567119e-02, 1.351224749332980909e-02, 1.354438142685067056e-02, 1.357649058094882559e-02, 1.360857490571985330e-02, 1.364063435130295071e-02, 1.367266886788276285e-02, 1.370467840568791867e-02, 1.373666291499226269e-02, 1.376862234611383844e-02, 1.380055664941644972e-02, 1.383246577530791374e-02, 1.386434967424172472e-02, 1.389620829671604080e-02, 1.392804159327471966e-02, 1.395984951450630202e-02, 1.399163201104510444e-02, 1.402338903357039541e-02, 1.405512053280752460e-02, 1.408682645952697918e-02, 1.411850676454486260e-02, 1.415016139872326759e-02, 1.418179031296964640e-02, 1.421339345823793843e-02, 1.424497078552738709e-02, 1.427652224588368476e-02, 1.430804779039814012e-02, 1.433954737020895487e-02, 1.437102093649979956e-02, 1.440246844050119442e-02, 1.443388983348959168e-02, 1.446528506678849968e-02, 1.449665409176730674e-02, 1.452799685984249370e-02, 1.455931332247690536e-02, 1.459060343118043224e-02, 1.462186713750967572e-02, 1.465310439306804526e-02, 1.468431514950608793e-02, 1.471549935852107041e-02, 1.474665697185804578e-02, 1.477778794130857332e-02, 1.480889221871193803e-02, 1.483996975595449665e-02, 1.487102050497033333e-02, 1.490204441774071326e-02, 1.493304144629473140e-02, 1.496401154270875743e-02, 1.499495465910752334e-02, 1.502587074766285023e-02, 1.505675976059493021e-02, 1.508762165017147466e-02, 1.511845636870876725e-02, 1.514926386857035762e-02, 1.518004410216883954e-02, 1.521079702196457238e-02, 1.524152258046600553e-02, 1.527222073023058908e-02, 1.530289142386359082e-02, 1.533353461401924279e-02, 1.536415025339991740e-02, 1.539473829475728958e-02, 1.542529869089113125e-02, 1.545583139465043013e-02, 1.548633635893280867e-02, 1.551681353668507048e-02, 1.554726288090279435e-02, 1.557768434463093453e-02, 1.560807788096322049e-02, 1.563844344304326367e-02, 1.566878098406302919e-02, 1.569909045726480129e-02, 1.572937181593988404e-02, 1.575962501342898989e-02, 1.578985000312282949e-02, 1.582004673846126863e-02, 1.585021517293441068e-02, 1.588035526008167025e-02, 1.591046695349289039e-02, 1.594055020680730517e-02, 1.597060497371460483e-02, 1.600063120795439803e-02, 1.603062886331645120e-02, 1.606059789364053941e-02, 1.609053825281734143e-02, 1.612044989478715953e-02, 1.615033277354137667e-02, 1.618018684312164113e-02, 1.621001205761984573e-02, 1.623980837117921031e-02, 1.626957573799296675e-02, 1.629931411230582314e-02, 1.632902344841266618e-02, 1.635870370066005650e-02, 1.638835482344491723e-02, 1.641797677121542565e-02, 1.644756949847088479e-02, 1.647713295976212938e-02, 1.650666710969067585e-02, 1.653617190290998171e-02, 1.656564729412444287e-02, 1.659509323809050044e-02, 1.662450968961523903e-02, 1.665389660355830193e-02, 1.668325393483035060e-02, 1.671258163839440397e-02, 1.674187966926465529e-02, 1.677114798250776626e-02, 1.680038653324201700e-02, 1.682959527663763222e-02, 1.685877416791744382e-02, 1.688792316235570787e-02, 1.691704221527971785e-02, 1.694613128206825733e-02, 1.697519031815334506e-02, 1.700421927901862862e-02, 1.703321812020069936e-02, 1.706218679728841933e-02, 1.709112526592393433e-02, 1.712003348180113349e-02, 1.714891140066763034e-02, 1.717775897832323276e-02, 1.720657617062095607e-02, 1.723536293346636383e-02, 1.726411922281859829e-02, 1.729284499468983563e-02, 1.732154020514504317e-02, 1.735020481030295769e-02, 1.737883876633506547e-02, 1.740744202946657368e-02, 1.743601455597576858e-02, 1.746455630219514651e-02, 1.749306722450999496e-02, 1.752154727935976292e-02, 1.754999642323716927e-02, 1.757841461268938935e-02, 1.760680180431634448e-02, 1.763515795477296061e-02, 1.766348302076739193e-02, 1.769177695906221440e-02, 1.772003972647387057e-02, 1.774827127987318662e-02, 1.777647157618491430e-02, 1.780464057238821673e-02, 1.783277822551683142e-02, 1.786088449265854292e-02, 1.788895933095591487e-02, 1.791700269760583553e-02, 1.794501454986013184e-02, 1.797299484502489289e-02, 1.800094354046112219e-02, 1.802886059358456070e-02, 1.805674596186618644e-02, 1.808459960283128817e-02, 1.811242147406090519e-02, 1.814021153319036669e-02, 1.816796973791059630e-02, 1.819569604596744244e-02, 1.822339041516230981e-02, 1.825105280335164240e-02, 1.827868316844740576e-02, 1.830628146841710782e-02, 1.833384766128345889e-02, 1.836138170512498571e-02, 1.838888355807554581e-02, 1.841635317832517743e-02, 1.844379052411917672e-02, 1.847119555375905178e-02, 1.849856822560197803e-02, 1.852590849806107220e-02, 1.855321632960533693e-02, 1.858049167876036148e-02, 1.860773450410707630e-02, 1.863494476428347729e-02, 1.866212241798291885e-02, 1.868926742395597349e-02, 1.871637974100884630e-02, 1.874345932800461009e-02, 1.877050614386241434e-02, 1.879752014755849132e-02, 1.882450129812560796e-02, 1.885144955465276051e-02, 1.887836487628632987e-02, 1.890524722222900952e-02, 1.893209655174047518e-02, 1.895891282413729798e-02, 1.898569599879337821e-02, 1.901244603513923409e-02, 1.903916289266285866e-02, 1.906584653090913350e-02, 1.909249690948023812e-02, 1.911911398803565337e-02, 1.914569772629235583e-02, 1.917224808402444303e-02, 1.919876502106398694e-02, 1.922524849729989257e-02, 1.925169847267939674e-02, 1.927811490720682600e-02, 1.930449776094428707e-02, 1.933084699401214912e-02, 1.935716256658789533e-02, 1.938344443890756968e-02, 1.940969257126478123e-02, 1.943590692401115511e-02, 1.946208745755639152e-02, 1.948823413236855720e-02, 1.951434690897355453e-02, 1.954042574795594733e-02, 1.956647060995806917e-02, 1.959248145568122726e-02, 1.961845824588466514e-02, 1.964440094138630508e-02, 1.967030950306249137e-02, 1.969618389184841709e-02, 1.972202406873759320e-02, 1.974782999478245926e-02, 1.977360163109436603e-02, 1.979933893884323545e-02, 1.982504187925782438e-02, 1.985071041362586330e-02, 1.987634450329447966e-02, 1.990194410966919861e-02, 1.992750919421541755e-02, 1.995303971845705654e-02, 1.997853564397756437e-02, 2.000399693241942597e-02, 2.002942354548507137e-02, 2.005481544493553994e-02, 2.008017259259197579e-02, 2.010549495033463890e-02, 2.013078248010359214e-02, 2.015603514389848264e-02, 2.018125290377822609e-02, 2.020643572186236678e-02, 2.023158356032925265e-02, 2.025669638141785675e-02, 2.028177414742667745e-02, 2.030681682071417554e-02, 2.033182436369875348e-02, 2.035679673885939719e-02, 2.038173390873457627e-02, 2.040663583592336461e-02, 2.043150248308480202e-02, 2.045633381293858466e-02, 2.048112978826438155e-02, 2.050589037190243477e-02, 2.053061552675336174e-02, 2.055530521577848824e-02, 2.057995940199946680e-02, 2.060457804849891161e-02, 2.062916111841973932e-02, 2.065370857496563392e-02, 2.067822038140145965e-02, 2.070269650105237280e-02, 2.072713689730499090e-02, 2.075154153360633455e-02, 2.077591037346494460e-02, 2.080024338044995924e-02, 2.082454051819197446e-02, 2.084880175038232586e-02, 2.087302704077418150e-02, 2.089721635318139356e-02, 2.092136965147957731e-02, 2.094548689960541721e-02, 2.096956806155726022e-02, 2.099361310139478964e-02, 2.101762198323915698e-02, 2.104159467127315539e-02, 2.106553112974141398e-02, 2.108943132295014802e-02, 2.111329521526724567e-02, 2.113712277112233737e-02, 2.116091395500686867e-02, 2.118466873147472132e-02, 2.120838706514092259e-02, 2.123206892068309898e-02, 2.125571426284068172e-02, 2.127932305641541330e-02, 2.130289526627091035e-02, 2.132643085733315624e-02, 2.134992979459033810e-02, 2.137339204309320409e-02, 2.139681756795440426e-02, 2.142020633434963892e-02, 2.144355830751640615e-02, 2.146687345275507738e-02, 2.149015173542873774e-02, 2.151339312096263098e-02, 2.153659757484521417e-02, 2.155976506262715503e-02, 2.158289554992238318e-02, 2.160598900240726788e-02, 2.162904538582120437e-02, 2.165206466596636403e-02, 2.167504680870826345e-02, 2.169799177997495596e-02, 2.172089954575805171e-02, 2.174377007211171497e-02, 2.176660332515401031e-02, 2.178939927106551822e-02, 2.181215787609049744e-02, 2.183487910653617026e-02, 2.185756292877379450e-02, 2.188020930923721685e-02, 2.190281821442438548e-02, 2.192538961089656596e-02, 2.194792346527826496e-02, 2.197041974425821553e-02, 2.199287841458813855e-02, 2.201529944308406109e-02, 2.203768279662532067e-02, 2.206002844215549513e-02, 2.208233634668157336e-02, 2.210460647727460759e-02, 2.212683880106959544e-02, 2.214903328526571583e-02, 2.217118989712586405e-02, 2.219330860397735264e-02, 2.221538937321134236e-02, 2.223743217228340424e-02, 2.225943696871302349e-02, 2.228140373008430028e-02, 2.230333242404560976e-02, 2.232522301830959510e-02, 2.234707548065337224e-02, 2.236888977891854716e-02, 2.239066588101110145e-02, 2.241240375490148248e-02, 2.243410336862531815e-02, 2.245576469028218169e-02, 2.247738768803690668e-02, 2.249897233011848019e-02, 2.252051858482154167e-02, 2.254202642050442268e-02, 2.256349580559144363e-02, 2.258492670857097095e-02, 2.260631909799703729e-02, 2.262767294248816188e-02, 2.264898821072838103e-02, 2.267026487146638417e-02, 2.269150289351619387e-02, 2.271270224575731508e-02, 2.273386289713401343e-02, 2.275498481665618605e-02, 2.277606797339881348e-02, 2.279711233650252161e-02, 2.281811787517317239e-02, 2.283908455868213436e-02, 2.286001235636606413e-02, 2.288090123762762801e-02, 2.290175117193468321e-02, 2.292256212882102726e-02, 2.294333407788596429e-02, 2.296406698879453062e-02, 2.298476083127730385e-02, 2.300541557513129456e-02, 2.302603119021871120e-02, 2.304660764646808413e-02, 2.306714491387374874e-02, 2.308764296249605358e-02, 2.310810176246124240e-02, 2.312852128396165191e-02, 2.314890149725606569e-02, 2.316924237266887107e-02, 2.318954388059117980e-02, 2.320980599147978718e-02, 2.323002867585859457e-02, 2.325021190431676363e-02, 2.327035564751073204e-02, 2.329045987616268701e-02, 2.331052456106200849e-02, 2.333054967306358307e-02, 2.335053518308975382e-02, 2.337048106212902265e-02, 2.339038728123634878e-02, 2.341025381153352333e-02, 2.343008062420913473e-02, 2.344986769051851661e-02, 2.346961498178337310e-02, 2.348932246939283708e-02, 2.350899012480246741e-02, 2.352861791953477638e-02, 2.354820582517924699e-02, 2.356775381339259665e-02, 2.358726185589804861e-02, 2.360672992448646645e-02, 2.362615799101533756e-02, 2.364554602740958147e-02, 2.366489400566097745e-02, 2.368420189782904917e-02, 2.370346967603995797e-02, 2.372269731248768942e-02, 2.374188477943330045e-02, 2.376103204920523501e-02, 2.378013909419934846e-02, 2.379920588687898728e-02, 2.381823239977508971e-02, 2.383721860548590823e-02, 2.385616447667743625e-02, 2.387506998608325895e-02, 2.389393510650449429e-02, 2.391275981080989363e-02, 2.393154407193627542e-02, 2.395028786288787639e-02, 2.396899115673687547e-02, 2.398765392662314047e-02, 2.400627614575474161e-02, 2.402485778740735128e-02, 2.404339882492476099e-02, 2.406189923171841646e-02, 2.408035898126834051e-02, 2.409877804712209567e-02, 2.411715640289568280e-02, 2.413549402227320798e-02, 2.415379087900669866e-02, 2.417204694691660674e-02, 2.419026219989146853e-02, 2.420843661188841131e-02, 2.422657015693237617e-02, 2.424466280911725252e-02, 2.426271454260489277e-02, 2.428072533162560151e-02, 2.429869515047822920e-02, 2.431662397353024155e-02, 2.433451177521741074e-02, 2.435235853004431156e-02, 2.437016421258384261e-02, 2.438792879747791326e-02, 2.440565225943663874e-02, 2.442333457323918669e-02, 2.444097571373335387e-02, 2.445857565583569454e-02, 2.447613437453169394e-02, 2.449365184487561561e-02, 2.451112804199046674e-02, 2.452856294106822016e-02, 2.454595651737005030e-02, 2.456330874622581276e-02, 2.458061960303452656e-02, 2.459788906326422150e-02, 2.461511710245209081e-02, 2.463230369620434540e-02, 2.464944882019633188e-02, 2.466655245017257414e-02, 2.468361456194711340e-02, 2.470063513140259223e-02, 2.471761413449185749e-02, 2.473455154723613186e-02, 2.475144734572670008e-02, 2.476830150612376741e-02, 2.478511400465721604e-02, 2.480188481762633096e-02, 2.481861392139983122e-02, 2.483530129241600173e-02, 2.485194690718259963e-02, 2.486855074227693752e-02, 2.488511277434598754e-02, 2.490163298010657916e-02, 2.491811133634479203e-02, 2.493454781991676431e-02, 2.495094240774812719e-02, 2.496729507683450103e-02, 2.498360580424116226e-02, 2.499987456710317871e-02, 2.501610134262554838e-02, 2.503228610808325150e-02, 2.504842884082101456e-02, 2.506452951825370243e-02, 2.508058811786605113e-02, 2.509660461721265057e-02, 2.511257899391851345e-02, 2.512851122567839185e-02, 2.514440129025741558e-02, 2.516024916549051971e-02, 2.517605482928314542e-02, 2.519181825961080978e-02, 2.520753943451901208e-02, 2.522321833212384096e-02, 2.523885493061163096e-02, 2.525444920823872313e-02, 2.527000114333223871e-02, 2.528551071428933664e-02, 2.530097789957760912e-02, 2.531640267773541120e-02, 2.533178502737096910e-02, 2.534712492716355986e-02, 2.536242235586258845e-02, 2.537767729228831287e-02, 2.539288971533123010e-02, 2.540805960395279076e-02, 2.542318693718470524e-02, 2.543827169412963760e-02, 2.545331385396069554e-02, 2.546831339592200288e-02, 2.548327029932801260e-02, 2.549818454356439154e-02, 2.551305610808731958e-02, 2.552788497242373944e-02, 2.554267111617158914e-02, 2.555741451899978117e-02, 2.557211516064767862e-02, 2.558677302092631292e-02, 2.560138807971697184e-02, 2.561596031697214310e-02, 2.563048971271558035e-02, 2.564497624704173417e-02, 2.565941990011630369e-02, 2.567382065217584802e-02, 2.568817848352837954e-02, 2.570249337455286082e-02, 2.571676530569936073e-02, 2.573099425748916549e-02, 2.574518021051483418e-02, 2.575932314544015361e-02, 2.577342304300021467e-02, 2.578747988400127700e-02, 2.580149364932098066e-02, 2.581546431990823162e-02, 2.582939187678353482e-02, 2.584327630103852580e-02, 2.585711757383636275e-02, 2.587091567641162243e-02, 2.588467059007044588e-02, 2.589838229619017412e-02, 2.591205077621985819e-02, 2.592567601168022789e-02, 2.593925798416326853e-02, 2.595279667533283152e-02, 2.596629206692408279e-02, 2.597974414074403354e-02, 2.599315287867137378e-02, 2.600651826265618777e-02, 2.601984027472048489e-02, 2.603311889695797757e-02, 2.604635411153405355e-02, 2.605954590068606386e-02, 2.607269424672281621e-02, 2.608579913202515102e-02, 2.609886053904571929e-02, 2.611187845030897223e-02, 2.612485284841132779e-02, 2.613778371602108047e-02, 2.615067103587831107e-02, 2.616351479079523021e-02, 2.617631496365585911e-02, 2.618907153741621349e-02, 2.620178449510461929e-02, 2.621445381982094938e-02, 2.622707949473762970e-02, 2.623966150309873027e-02, 2.625219982822051684e-02, 2.626469445349153414e-02, 2.627714536237251222e-02, 2.628955253839590153e-02, 2.630191596516680969e-02, 2.631423562636240471e-02, 2.632651150573189422e-02, 2.633874358709685504e-02, 2.635093185435097643e-02, 2.636307629146066034e-02, 2.637517688246408462e-02, 2.638723361147208776e-02, 2.639924646266759642e-02, 2.641121542030612501e-02, 2.642314046871535940e-02, 2.643502159229549689e-02, 2.644685877551906580e-02, 2.645865200293124123e-02, 2.647040125914932457e-02, 2.648210652886331604e-02, 2.649376779683576891e-02, 2.650538504790140096e-02, 2.651695826696761835e-02, 2.652848743901456419e-02, 2.653997254909488263e-02, 2.655141358233346210e-02, 2.656281052392829578e-02, 2.657416335914963151e-02, 2.658547207334028759e-02, 2.659673665191611761e-02, 2.660795708036523682e-02, 2.661913334424882011e-02, 2.663026542920045314e-02, 2.664135332092651409e-02, 2.665239700520613542e-02, 2.666339646789122816e-02, 2.667435169490639871e-02, 2.668526267224925752e-02, 2.669612938598989529e-02, 2.670695182227143805e-02, 2.671772996730982508e-02, 2.672846380739375693e-02, 2.673915332888479254e-02, 2.674979851821754698e-02, 2.676039936189931329e-02, 2.677095584651064189e-02, 2.678146795870444893e-02, 2.679193568520731039e-02, 2.680235901281794592e-02, 2.681273792840884948e-02, 2.682307241892485650e-02, 2.683336247138428179e-02, 2.684360807287819103e-02, 2.685380921057083439e-02, 2.686396587169942798e-02, 2.687407804357416080e-02, 2.688414571357843411e-02, 2.689416886916895164e-02, 2.690414749787487306e-02, 2.691408158729914277e-02, 2.692397112511765028e-02, 2.693381609907931351e-02, 2.694361649700619324e-02, 2.695337230679362844e-02, 2.696308351641025364e-02, 2.697275011389745070e-02, 2.698237208737057705e-02, 2.699194942501751890e-02, 2.700148211509966270e-02, 2.701097014595170084e-02, 2.702041350598156574e-02, 2.702981218367045413e-02, 2.703916616757282357e-02, 2.704847544631639247e-02, 2.705774000860235173e-02, 2.706695984320519471e-02, 2.707613493897251256e-02, 2.708526528482568113e-02, 2.709435086975885143e-02, 2.710339168284011183e-02, 2.711238771321075949e-02, 2.712133895008532122e-02, 2.713024538275184486e-02, 2.713910700057186806e-02, 2.714792379298022404e-02, 2.715669574948538847e-02, 2.716542285966902850e-02, 2.717410511318653701e-02, 2.718274249976659201e-02, 2.719133500921134053e-02, 2.719988263139665879e-02, 2.720838535627165614e-02, 2.721684317385908783e-02, 2.722525607425537938e-02, 2.723362404763016859e-02, 2.724194708422677039e-02, 2.725022517436218039e-02, 2.725845830842690831e-02, 2.726664647688480103e-02, 2.727478967027358037e-02, 2.728288787920455163e-02, 2.729094109436239202e-02, 2.729894930650569179e-02, 2.730691250646617718e-02, 2.731483068514979629e-02, 2.732270383353564702e-02, 2.733053194267686184e-02, 2.733831500369996240e-02, 2.734605300780508855e-02, 2.735374594626638345e-02, 2.736139381043118865e-02, 2.736899659172090105e-02, 2.737655428163046981e-02, 2.738406687172859066e-02, 2.739153435365769551e-02, 2.739895671913376157e-02, 2.740633395994647101e-02, 2.741366606795972785e-02, 2.742095303511042290e-02, 2.742819485340975555e-02, 2.743539151494250178e-02, 2.744254301186703146e-02, 2.744964933641571778e-02, 2.745671048089465272e-02, 2.746372643768353605e-02, 2.747069719923594944e-02, 2.747762275807925925e-02, 2.748450310681484557e-02, 2.749133823811735974e-02, 2.749812814473576866e-02, 2.750487281949261578e-02, 2.751157225528414949e-02, 2.751822644508072901e-02, 2.752483538192635262e-02, 2.753139905893890391e-02, 2.753791746930998527e-02, 2.754439060630520242e-02, 2.755081846326390069e-02, 2.755720103359938361e-02, 2.756353831079855557e-02, 2.756983028842239017e-02, 2.757607696010574289e-02, 2.758227831955723658e-02, 2.758843436055954251e-02, 2.759454507696877321e-02, 2.760061046271536714e-02, 2.760663051180344690e-02, 2.761260521831107248e-02, 2.761853457639004347e-02, 2.762441858026643687e-02, 2.763025722423962868e-02, 2.763605050268348046e-02, 2.764179841004532276e-02, 2.764750094084672538e-02, 2.765315808968275141e-02, 2.765876985122284887e-02, 2.766433622020992092e-02, 2.766985719146120015e-02, 2.767533275986749919e-02, 2.768076292039372069e-02, 2.768614766807862490e-02, 2.769148699803494068e-02, 2.769678090544926835e-02, 2.770202938558204500e-02, 2.770723243376789144e-02, 2.771239004541514381e-02, 2.771750221600614503e-02, 2.772256894109699499e-02, 2.772759021631800505e-02, 2.773256603737324702e-02, 2.773749640004076131e-02, 2.774238130017237305e-02, 2.774722073369424030e-02, 2.775201469660582704e-02, 2.775676318498123546e-02, 2.776146619496790147e-02, 2.776612372278761814e-02, 2.777073576473578290e-02, 2.777530231718199419e-02, 2.777982337656953807e-02, 2.778429893941599532e-02, 2.778872900231220411e-02, 2.779311356192381080e-02, 2.779745261498972261e-02, 2.780174615832306864e-02, 2.780599418881079046e-02, 2.781019670341375316e-02, 2.781435369916691533e-02, 2.781846517317891621e-02, 2.782253112263246772e-02, 2.782655154478423307e-02, 2.783052643696454567e-02, 2.783445579657798513e-02, 2.783833962110287066e-02, 2.784217790809141030e-02, 2.784597065516978068e-02, 2.784971786003806807e-02, 2.785341952047020245e-02, 2.785707563431417608e-02, 2.786068619949161329e-02, 2.786425121399819377e-02, 2.786777067590356927e-02, 2.787124458335116239e-02, 2.787467293455830886e-02, 2.787805572781624011e-02, 2.788139296149003479e-02, 2.788468463401862565e-02, 2.788793074391501467e-02, 2.789113128976575956e-02, 2.789428627023141094e-02, 2.789739568404668232e-02, 2.790045953001962092e-02, 2.790347780703250624e-02, 2.790645051404121169e-02, 2.790937765007574928e-02, 2.791225921423965556e-02, 2.791509520571067160e-02, 2.791788562373986177e-02, 2.792063046765269618e-02, 2.792332973684782949e-02, 2.792598343079832207e-02, 2.792859154905068253e-02, 2.793115409122541928e-02, 2.793367105701666936e-02, 2.793614244619253145e-02, 2.793856825859459408e-02, 2.794094849413865378e-02, 2.794328315281403158e-02, 2.794557223468368407e-02, 2.794781573988468215e-02, 2.795001366862754147e-02, 2.795216602119666299e-02, 2.795427279795015263e-02, 2.795633399931998775e-02, 2.795834962581157310e-02, 2.796031967800429244e-02, 2.796224415655127263e-02, 2.796412306217908178e-02, 2.796595639568821498e-02, 2.796774415795288959e-02, 2.796948634992076077e-02, 2.797118297261335859e-02, 2.797283402712586603e-02, 2.797443951462707731e-02, 2.797599943635941180e-02, 2.797751379363912563e-02, 2.797898258785569414e-02, 2.798040582047277292e-02, 2.798178349302728532e-02, 2.798311560712970700e-02, 2.798440216446438158e-02, 2.798564316678900377e-02, 2.798683861593503214e-02, 2.798798851380743594e-02, 2.798909286238466382e-02, 2.799015166371878610e-02, 2.799116491993552600e-02, 2.799213263323405837e-02, 2.799305480588697506e-02, 2.799393144024058325e-02, 2.799476253871441972e-02, 2.799554810380187539e-02, 2.799628813806968528e-02, 2.799698264415779667e-02, 2.799763162478007342e-02, 2.799823508272353614e-02, 2.799879302084879937e-02, 2.799930544208978009e-02, 2.799977234945386084e-02, 2.800019374602189665e-02, 2.800056963494797213e-02, 2.800090001946003992e-02, 2.800118490285873757e-02, 2.800142428851857060e-02, 2.800161817988724294e-02, 2.800176658048590325e-02, 2.800186949390873897e-02, 2.800192692382358003e-02, 2.800193887397143741e-02, 2.800190534816662455e-02, 2.800182635029676084e-02, 2.800170188432259122e-02, 2.800153195427835737e-02, 2.800131656427152019e-02, 2.800105571848243019e-02, 2.800074942116517057e-02, 2.800039767664661353e-02, 2.800000048932706903e-02, 2.799955786367995178e-02, 2.799906980425174996e-02, 2.799853631566230627e-02, 2.799795740260437732e-02, 2.799733306984406381e-02, 2.799666332222040810e-02, 2.799594816464571687e-02, 2.799518760210515517e-02, 2.799438163965713502e-02, 2.799353028243316624e-02, 2.799263353563771761e-02, 2.799169140454807470e-02, 2.799070389451508920e-02, 2.798967101096192650e-02, 2.798859275938528693e-02, 2.798746914535454877e-02, 2.798630017451210136e-02, 2.798508585257330691e-02, 2.798382618532643806e-02, 2.798252117863278543e-02, 2.798117083842629679e-02, 2.797977517071394832e-02, 2.797833418157544272e-02, 2.797684787716360477e-02, 2.797531626370385396e-02, 2.797373934749446817e-02, 2.797211713490642404e-02, 2.797044963238381338e-02, 2.796873684644303470e-02, 2.796697878367370230e-02, 2.796517545073768166e-02, 2.796332685436993953e-02, 2.796143300137793677e-02, 2.795949389864182608e-02, 2.795750955311461158e-02, 2.795547997182160765e-02, 2.795340516186104601e-02, 2.795128513040355187e-02, 2.794911988469256370e-02, 2.794690943204385103e-02, 2.794465377984600707e-02, 2.794235293556000463e-02, 2.794000690671925857e-02, 2.793761570092986868e-02, 2.793517932587024147e-02, 2.793269778929132960e-02, 2.793017109901675329e-02, 2.792759926294205441e-02, 2.792498228903563667e-02, 2.792232018533806481e-02, 2.791961295996234216e-02, 2.791686062109388286e-02, 2.791406317699028986e-02, 2.791122063598156997e-02, 2.790833300647002635e-02, 2.790540029693027585e-02, 2.790242251590909980e-02, 2.789939967202538854e-02, 2.789633177397062708e-02, 2.789321883050818740e-02, 2.789006085047368577e-02, 2.788685784277490642e-02, 2.788360981639176339e-02, 2.788031678037630398e-02, 2.787697874385262550e-02, 2.787359571601692732e-02, 2.787016770613736510e-02, 2.786669472355439783e-02, 2.786317677768010773e-02, 2.785961387799886294e-02, 2.785600603406686998e-02, 2.785235325551234029e-02, 2.784865555203519527e-02, 2.784491293340762494e-02, 2.784112540947348419e-02, 2.783729299014834138e-02, 2.783341568541992939e-02, 2.782949350534758004e-02, 2.782552646006236988e-02, 2.782151455976736645e-02, 2.781745781473716345e-02, 2.781335623531819290e-02, 2.780920983192843032e-02, 2.780501861505790123e-02, 2.780078259526790399e-02, 2.779650178319143655e-02, 2.779217618953332136e-02, 2.778780582506970229e-02, 2.778339070064844360e-02, 2.777893082718893222e-02, 2.777442621568190773e-02, 2.776987687718989253e-02, 2.776528282284660906e-02, 2.776064406385748973e-02, 2.775596061149905938e-02, 2.775123247711937940e-02, 2.774645967213802689e-02, 2.774164220804566788e-02, 2.773678009640457090e-02, 2.773187334884810035e-02, 2.772692197708091083e-02, 2.772192599287890552e-02, 2.771688540808937840e-02, 2.771180023463054240e-02, 2.770667048449206721e-02, 2.770149616973446166e-02, 2.769627730248961153e-02, 2.769101389496045687e-02, 2.768570595942079771e-02, 2.768035350821578672e-02, 2.767495655376151983e-02, 2.766951510854469970e-02, 2.766402918512360365e-02, 2.765849879612699083e-02, 2.765292395425471977e-02, 2.764730467227753674e-02, 2.764164096303707227e-02, 2.763593283944561566e-02, 2.763018031448651046e-02, 2.762438340121364452e-02, 2.761854211275185586e-02, 2.761265646229656839e-02, 2.760672646311397929e-02, 2.760075212854085427e-02, 2.759473347198496823e-02, 2.758867050692407480e-02, 2.758256324690709638e-02, 2.757641170555320126e-02, 2.757021589655221649e-02, 2.756397583366440932e-02, 2.755769153072060509e-02, 2.755136300162200000e-02, 2.754499026034010895e-02, 2.753857332091713336e-02, 2.753211219746542343e-02, 2.752560690416774175e-02, 2.751905745527703437e-02, 2.751246386511680547e-02, 2.750582614808025003e-02, 2.749914431863148545e-02, 2.749241839130436155e-02, 2.748564838070307464e-02, 2.747883430150170961e-02, 2.747197616844488516e-02, 2.746507399634680324e-02, 2.745812780009207130e-02, 2.745113759463501182e-02, 2.744410339500035628e-02, 2.743702521628233956e-02, 2.742990307364532795e-02, 2.742273698232358670e-02, 2.741552695762113773e-02, 2.740827301491207194e-02, 2.740097516963984833e-02, 2.739363343731822387e-02, 2.738624783353022299e-02, 2.737881837392895298e-02, 2.737134507423684415e-02, 2.736382795024625003e-02, 2.735626701781904840e-02, 2.734866229288672457e-02, 2.734101379145009725e-02, 2.733332152957990493e-02, 2.732558552341609812e-02, 2.731780578916809948e-02, 2.730998234311467210e-02, 2.730211520160423164e-02, 2.729420438105436414e-02, 2.728624989795211050e-02, 2.727825176885368547e-02, 2.727021001038442902e-02, 2.726212463923933724e-02, 2.725399567218219493e-02, 2.724582312604601972e-02, 2.723760701773326326e-02, 2.722934736421518329e-02, 2.722104418253209687e-02, 2.721269748979339084e-02, 2.720430730317762932e-02, 2.719587363993207843e-02, 2.718739651737303933e-02, 2.717887595288588296e-02, 2.717031196392441852e-02, 2.716170456801166727e-02, 2.715305378273951201e-02, 2.714435962576808650e-02, 2.713562211482679551e-02, 2.712684126771326698e-02, 2.711801710229430618e-02, 2.710914963650484094e-02, 2.710023888834886541e-02, 2.709128487589831935e-02, 2.708228761729429557e-02, 2.707324713074597475e-02, 2.706416343453105916e-02, 2.705503654699580388e-02, 2.704586648655468370e-02, 2.703665327169047297e-02, 2.702739692095455087e-02, 2.701809745296620754e-02, 2.700875488641308816e-02, 2.699936924005122071e-02, 2.698994053270455107e-02, 2.698046878326530382e-02, 2.697095401069363532e-02, 2.696139623401805699e-02, 2.695179547233462342e-02, 2.694215174480788302e-02, 2.693246507067001763e-02, 2.692273546922122757e-02, 2.691296295982946452e-02, 2.690314756193069173e-02, 2.689328929502848506e-02, 2.688338817869429312e-02, 2.687344423256741652e-02, 2.686345747635442496e-02, 2.685342792983004545e-02, 2.684335561283624286e-02, 2.683324054528285485e-02, 2.682308274714671759e-02, 2.681288223847292859e-02, 2.680263903937338613e-02, 2.679235317002782307e-02, 2.678202465068310958e-02, 2.677165350165367635e-02, 2.676123974332091440e-02, 2.675078339613392794e-02, 2.674028448060861152e-02, 2.672974301732842020e-02, 2.671915902694381451e-02, 2.670853253017228812e-02, 2.669786354779837834e-02, 2.668715210067397828e-02, 2.667639820971753548e-02, 2.666560189591484983e-02, 2.665476318031837280e-02, 2.664388208404737390e-02, 2.663295862828834668e-02, 2.662199283429412741e-02, 2.661098472338462723e-02, 2.659993431694632898e-02, 2.658884163643241913e-02, 2.657770670336259689e-02, 2.656652953932356689e-02, 2.655531016596817534e-02, 2.654404860501585056e-02, 2.653274487825254407e-02, 2.652139900753086241e-02, 2.651001101476928995e-02, 2.649858092195325407e-02, 2.648710875113399754e-02, 2.647559452442951530e-02, 2.646403826402343035e-02, 2.645243999216612824e-02, 2.644079973117376137e-02, 2.642911750342879715e-02, 2.641739333137975432e-02, 2.640562723754088029e-02, 2.639381924449285197e-02, 2.638196937488196045e-02, 2.637007765142058632e-02, 2.635814409688666191e-02, 2.634616873412430268e-02, 2.633415158604313078e-02, 2.632209267561872248e-02, 2.630999202589211911e-02, 2.629784965997007673e-02, 2.628566560102495522e-02, 2.627343987229470781e-02, 2.626117249708263476e-02, 2.624886349875783093e-02, 2.623651290075448145e-02, 2.622412072657229892e-02, 2.621168699977638808e-02, 2.619921174399693700e-02, 2.618669498292978612e-02, 2.617413674033537696e-02, 2.616153704004008443e-02, 2.614889590593460350e-02, 2.613621336197538211e-02, 2.612348943218338951e-02, 2.611072414064494890e-02, 2.609791751151101930e-02, 2.608506956899769511e-02, 2.607218033738593205e-02, 2.605924984102129735e-02, 2.604627810431419527e-02, 2.603326515173993647e-02, 2.602021100783828006e-02, 2.600711569721360361e-02, 2.599397924453503844e-02, 2.598080167453618861e-02, 2.596758301201523497e-02, 2.595432328183453277e-02, 2.594102250892108344e-02, 2.592768071826615645e-02, 2.591429793492540032e-02, 2.590087418401862060e-02, 2.588740949073007128e-02, 2.587390388030786498e-02, 2.586035737806455584e-02, 2.584677000937639704e-02, 2.583314179968395144e-02, 2.581947277449192155e-02, 2.580576295936855280e-02, 2.579201237994620602e-02, 2.577822106192124291e-02, 2.576438903105348829e-02, 2.575051631316661524e-02, 2.573660293414822831e-02, 2.572264891994936742e-02, 2.570865429658493809e-02, 2.569461909013299322e-02, 2.568054332673551030e-02, 2.566642703259761071e-02, 2.565227023398816003e-02, 2.563807295723921978e-02, 2.562383522874615502e-02, 2.560955707496768638e-02, 2.559523852242590741e-02, 2.558087959770562192e-02, 2.556648032745529805e-02, 2.555204073838612810e-02, 2.553756085727267033e-02, 2.552304071095211346e-02, 2.550848032632495321e-02, 2.549387973035430882e-02, 2.547923895006613815e-02, 2.546455801254948401e-02, 2.544983694495574558e-02, 2.543507577449934456e-02, 2.542027452845708677e-02, 2.540543323416871377e-02, 2.539055191903616046e-02, 2.537563061052416913e-02, 2.536066933615956087e-02, 2.534566812353191562e-02, 2.533062700029304823e-02, 2.531554599415706402e-02, 2.530042513290023734e-02, 2.528526444436120235e-02, 2.527006395644056796e-02, 2.525482369710124742e-02, 2.523954369436800030e-02, 2.522422397632769972e-02, 2.520886457112932535e-02, 2.519346550698331119e-02, 2.517802681216241636e-02, 2.516254851500089249e-02, 2.514703064389492773e-02, 2.513147322730217847e-02, 2.511587629374222030e-02, 2.510023987179596516e-02, 2.508456399010621993e-02, 2.506884867737681558e-02, 2.505309396237350231e-02, 2.503729987392286013e-02, 2.502146644091338482e-02, 2.500559369229440887e-02, 2.498968165707686137e-02, 2.497373036433261223e-02, 2.495773984319478792e-02, 2.494171012285737246e-02, 2.492564123257559258e-02, 2.490953320166553950e-02, 2.489338605950439445e-02, 2.487719983553002973e-02, 2.486097455924100863e-02, 2.484471026019716144e-02, 2.482840696801844396e-02, 2.481206471238571812e-02, 2.479568352304054382e-02, 2.477926342978495344e-02, 2.476280446248133038e-02, 2.474630665105286356e-02, 2.472977002548268008e-02, 2.471319461581456683e-02, 2.469658045215241543e-02, 2.467992756466040605e-02, 2.466323598356301786e-02, 2.464650573914464737e-02, 2.462973686175004562e-02, 2.461292938178349585e-02, 2.459608332970974684e-02, 2.457919873605303798e-02, 2.456227563139793887e-02, 2.454531404638827033e-02, 2.452831401172815909e-02, 2.451127555818081658e-02, 2.449419871656961789e-02, 2.447708351777715119e-02, 2.445992999274555768e-02, 2.444273817247688205e-02, 2.442550808803218079e-02, 2.440823977053178245e-02, 2.439093325115566230e-02, 2.437358856114278313e-02, 2.435620573179129653e-02, 2.433878479445865731e-02, 2.432132578056134600e-02, 2.430382872157493476e-02, 2.428629364903360857e-02, 2.426872059453110200e-02, 2.425110958971926980e-02, 2.423346066630942611e-02, 2.421577385607118563e-02, 2.419804919083318184e-02, 2.418028670248225515e-02, 2.416248642296443469e-02, 2.414464838428354368e-02, 2.412677261850256979e-02, 2.410885915774227395e-02, 2.409090803418227275e-02, 2.407291928006020584e-02, 2.405489292767219386e-02, 2.403682900937229028e-02, 2.401872755757257852e-02, 2.400058860474355363e-02, 2.398241218341335551e-02, 2.396419832616866058e-02, 2.394594706565327316e-02, 2.392765843456938490e-02, 2.390933246567669701e-02, 2.389096919179275330e-02, 2.387256864579269042e-02, 2.385413086060938700e-02, 2.383565586923302657e-02, 2.381714370471167339e-02, 2.379859440015030803e-02, 2.378000798871174326e-02, 2.376138450361571855e-02, 2.374272397813962862e-02, 2.372402644561776019e-02, 2.370529193944154178e-02, 2.368652049305989757e-02, 2.366771213997804352e-02, 2.364886691375896535e-02, 2.362998484802178445e-02, 2.361106597644303806e-02, 2.359211033275583624e-02, 2.357311795075016370e-02, 2.355408886427228995e-02, 2.353502310722558125e-02, 2.351592071356940761e-02, 2.349678171732024964e-02, 2.347760615255045299e-02, 2.345839405338902978e-02, 2.343914545402139837e-02, 2.341986038868894629e-02, 2.340053889168941872e-02, 2.338118099737670347e-02, 2.336178674016058804e-02, 2.334235615450688112e-02, 2.332288927493786010e-02, 2.330338613603086945e-02, 2.328384677241979520e-02, 2.326427121879362861e-02, 2.324465950989784008e-02, 2.322501168053271031e-02, 2.320532776555477364e-02, 2.318560779987575635e-02, 2.316585181846313873e-02, 2.314605985633927387e-02, 2.312623194858241110e-02, 2.310636813032561354e-02, 2.308646843675768792e-02, 2.306653290312191129e-02, 2.304656156471738757e-02, 2.302655445689787139e-02, 2.300651161507191386e-02, 2.298643307470343844e-02, 2.296631887131073135e-02, 2.294616904046724998e-02, 2.292598361780099139e-02, 2.290576263899477688e-02, 2.288550613978561007e-02, 2.286521415596570739e-02, 2.284488672338098880e-02, 2.282452387793258014e-02, 2.280412565557513732e-02, 2.278369209231826190e-02, 2.276322322422542552e-02, 2.274271908741459097e-02, 2.272217971805736564e-02, 2.270160515237986537e-02, 2.268099542666163898e-02, 2.266035057723666743e-02, 2.263967064049266995e-02, 2.261895565287072932e-02, 2.259820565086620436e-02, 2.257742067102780706e-02, 2.255660074995789396e-02, 2.253574592431230664e-02, 2.251485623080044102e-02, 2.249393170618513987e-02, 2.247297238728256444e-02, 2.245197831096193766e-02, 2.243094951414602647e-02, 2.240988603381032993e-02, 2.238878790698389798e-02, 2.236765517074832191e-02, 2.234648786223869532e-02, 2.232528601864252477e-02, 2.230404967720047912e-02, 2.228277887520578940e-02, 2.226147365000415504e-02, 2.224013403899437885e-02, 2.221876007962770780e-02, 2.219735180940777750e-02, 2.217590926589053935e-02, 2.215443248668479484e-02, 2.213292150945090839e-02, 2.211137637190232347e-02, 2.208979711180380362e-02, 2.206818376697296594e-02, 2.204653637527912574e-02, 2.202485497464375108e-02, 2.200313960303976191e-02, 2.198139029849259171e-02, 2.195960709907888303e-02, 2.193779004292729234e-02, 2.191593916821816743e-02, 2.189405451318345713e-02, 2.187213611610631936e-02, 2.185018401532161370e-02, 2.182819824921556490e-02, 2.180617885622559635e-02, 2.178412587484061108e-02, 2.176203934360050607e-02, 2.173991930109647405e-02, 2.171776578597044843e-02, 2.169557883691591860e-02, 2.167335849267656642e-02, 2.165110479204734525e-02, 2.162881777387417812e-02, 2.160649747705335397e-02, 2.158414394053191285e-02, 2.156175720330760423e-02, 2.153933730442841171e-02, 2.151688428299319139e-02, 2.149439817815080450e-02, 2.147187902910052681e-02, 2.144932687509224639e-02, 2.142674175542539153e-02, 2.140412370945009302e-02, 2.138147277656601147e-02, 2.135878899622331920e-02, 2.133607240792151361e-02, 2.131332305121052054e-02, 2.129054096568962912e-02, 2.126772619100825157e-02, 2.124487876686477483e-02, 2.122199873300796222e-02, 2.119908612923517705e-02, 2.117614099539407574e-02, 2.115316337138122352e-02, 2.113015329714263563e-02, 2.110711081267332284e-02, 2.108403595801778413e-02, 2.106092877326940296e-02, 2.103778929857053059e-02, 2.101461757411260400e-02, 2.099141364013598979e-02, 2.096817753692993558e-02, 2.094490930483188310e-02, 2.092160898422884205e-02, 2.089827661555545418e-02, 2.087491223929578352e-02, 2.085151589598172386e-02, 2.082808762619410559e-02, 2.080462747056146741e-02, 2.078113546976120482e-02, 2.075761166451845982e-02, 2.073405609560692586e-02, 2.071046880384768904e-02, 2.068684983011045628e-02, 2.066319921531278858e-02, 2.063951700041959103e-02, 2.061580322644411545e-02, 2.059205793444681895e-02, 2.056828116553627295e-02, 2.054447296086811883e-02, 2.052063336164584167e-02, 2.049676240912025327e-02, 2.047286014458964132e-02, 2.044892660939915188e-02, 2.042496184494166714e-02, 2.040096589265663965e-02, 2.037693879403114708e-02, 2.035288059059890686e-02, 2.032879132394090418e-02, 2.030467103568428522e-02, 2.028051976750389757e-02, 2.025633756112055900e-02, 2.023212445830193523e-02, 2.020788050086246707e-02, 2.018360573066287078e-02, 2.015930018961054407e-02, 2.013496391965882704e-02, 2.011059696280774467e-02, 2.008619936110310478e-02, 2.006177115663728902e-02, 2.003731239154857291e-02, 2.001282310802127845e-02, 1.998830334828531272e-02, 1.996375315461704214e-02, 1.993917256933795332e-02, 1.991456163481580832e-02, 1.988992039346356225e-02, 1.986524888773998077e-02, 1.984054716014927583e-02, 1.981581525324117854e-02, 1.979105320961059566e-02, 1.976626107189754719e-02, 1.974143888278772491e-02, 1.971658668501126421e-02, 1.969170452134435395e-02, 1.966679243460712351e-02, 1.964185046766538101e-02, 1.961687866342922901e-02, 1.959187706485382430e-02, 1.956684571493895117e-02, 1.954178465672893814e-02, 1.951669393331277938e-02, 1.949157358782396127e-02, 1.946642366344013275e-02, 1.944124420338354947e-02, 1.941603525092039373e-02, 1.939079684936146838e-02, 1.936552904206113868e-02, 1.934023187241816835e-02, 1.931490538387535885e-02, 1.928954961991897338e-02, 1.926416462407951058e-02, 1.923875043993081291e-02, 1.921330711109071193e-02, 1.918783468122043853e-02, 1.916233319402491433e-02, 1.913680269325216884e-02, 1.911124322269407497e-02, 1.908565482618516593e-02, 1.906003754760379407e-02, 1.903439143087098245e-02, 1.900871651995111877e-02, 1.898301285885145573e-02, 1.895728049162241635e-02, 1.893151946235662256e-02, 1.890572981519028292e-02, 1.887991159430173205e-02, 1.885406484391166995e-02, 1.882818960828445271e-02, 1.880228593172569157e-02, 1.877635385858409528e-02, 1.875039343325033206e-02, 1.872440470015774086e-02, 1.869838770378112053e-02, 1.867234248863798574e-02, 1.864626909928765799e-02, 1.862016758033147729e-02, 1.859403797641241696e-02, 1.856788033221557291e-02, 1.854169469246729970e-02, 1.851548110193609181e-02, 1.848923960543149420e-02, 1.846297024780498702e-02, 1.843667307394940974e-02, 1.841034812879843371e-02, 1.838399545732772103e-02, 1.835761510455344303e-02, 1.833120711553333504e-02, 1.830477153536591919e-02, 1.827830840919091038e-02, 1.825181778218852233e-02, 1.822529969958025867e-02, 1.819875420662777840e-02, 1.817218134863385001e-02, 1.814558117094147369e-02, 1.811895371893439133e-02, 1.809229903803678818e-02, 1.806561717371305345e-02, 1.803890817146770395e-02, 1.801217207684581087e-02, 1.798540893543205607e-02, 1.795861879285158905e-02, 1.793180169476958630e-02, 1.790495768689048806e-02, 1.787808681495926463e-02, 1.785118912475995231e-02, 1.782426466211691971e-02, 1.779731347289331689e-02, 1.777033560299247708e-02, 1.774333109835680641e-02, 1.771630000496822108e-02, 1.768924236884752976e-02, 1.766215823605536001e-02, 1.763504765269064897e-02, 1.760791066489219084e-02, 1.758074731883675634e-02, 1.755355766074117099e-02, 1.752634173686000441e-02, 1.749909959348724953e-02, 1.747183127695504240e-02, 1.744453683363417218e-02, 1.741721630993421296e-02, 1.738986975230289930e-02, 1.736249720722645232e-02, 1.733509872122896561e-02, 1.730767434087321713e-02, 1.728022411275954850e-02, 1.725274808352690592e-02, 1.722524629985142455e-02, 1.719771880844777473e-02, 1.717016565606803088e-02, 1.714258688950223708e-02, 1.711498255557763679e-02, 1.708735270115948474e-02, 1.705969737315004078e-02, 1.703201661848925338e-02, 1.700431048415429816e-02, 1.697657901715977219e-02, 1.694882226455700705e-02, 1.692104027343444353e-02, 1.689323309091797856e-02, 1.686540076416979256e-02, 1.683754334038941106e-02, 1.680966086681280613e-02, 1.678175339071295152e-02, 1.675382095939882687e-02, 1.672586362021656961e-02, 1.669788142054808369e-02, 1.666987440781238575e-02, 1.664184262946386342e-02, 1.661378613299412804e-02, 1.658570496593003707e-02, 1.655759917583506102e-02, 1.652946881030799633e-02, 1.650131391698425945e-02, 1.647313454353435680e-02, 1.644493073766495339e-02, 1.641670254711842872e-02, 1.638845001967226267e-02, 1.636017320313979534e-02, 1.633187214536942905e-02, 1.630354689424536735e-02, 1.627519749768645274e-02, 1.624682400364705487e-02, 1.621842646011653274e-02, 1.619000491511950537e-02, 1.616155941671474847e-02, 1.613309001299676609e-02, 1.610459675209408720e-02, 1.607607968217030642e-02, 1.604753885142351164e-02, 1.601897430808650602e-02, 1.599038610042610026e-02, 1.596177427674350460e-02, 1.593313888537465500e-02, 1.590447997468910288e-02, 1.587579759309085473e-02, 1.584709178901785864e-02, 1.581836261094219168e-02, 1.578961010736915777e-02, 1.576083432683863736e-02, 1.573203531792356086e-02, 1.570321312923086271e-02, 1.567436780940084998e-02, 1.564549940710753539e-02, 1.561660797105781338e-02, 1.558769354999236904e-02, 1.555875619268467548e-02, 1.552979594794177791e-02, 1.550081286460316260e-02, 1.547180699154184803e-02, 1.544277837766360600e-02, 1.541372707190672917e-02, 1.538465312324263992e-02, 1.535555658067491204e-02, 1.532643749324025945e-02, 1.529729591000715885e-02, 1.526813188007709356e-02, 1.523894545258363056e-02, 1.520973667669267386e-02, 1.518050560160182604e-02, 1.515125227654152452e-02, 1.512197675077324791e-02, 1.509267907359120725e-02, 1.506335929432093407e-02, 1.503401746232016153e-02, 1.500465362697747836e-02, 1.497526783771396981e-02, 1.494586014398154028e-02, 1.491643059526354467e-02, 1.488697924107506426e-02, 1.485750613096212605e-02, 1.482801131450220411e-02, 1.479849484130315446e-02, 1.476895676100468610e-02, 1.473939712327672173e-02, 1.470981597782042120e-02, 1.468021337436751020e-02, 1.465058936268072952e-02, 1.462094399255264160e-02, 1.459127731380703910e-02, 1.456158937629763520e-02, 1.453188022990894654e-02, 1.450214992455512060e-02, 1.447239851018097996e-02, 1.444262603676122261e-02, 1.441283255430069431e-02, 1.438301811283391324e-02, 1.435318276242520882e-02, 1.432332655316895589e-02, 1.429344953518883743e-02, 1.426355175863834417e-02, 1.423363327370046581e-02, 1.420369413058764942e-02, 1.417373437954132231e-02, 1.414375407083258603e-02, 1.411375325476131593e-02, 1.408373198165666952e-02, 1.405369030187693380e-02, 1.402362826580921991e-02, 1.399354592386904857e-02, 1.396344332650142211e-02, 1.393332052417921296e-02, 1.390317756740459647e-02, 1.387301450670760591e-02, 1.384283139264707793e-02, 1.381262827581029515e-02, 1.378240520681209801e-02, 1.375216223629641132e-02, 1.372189941493425977e-02, 1.369161679342534819e-02, 1.366131442249710407e-02, 1.363099235290482318e-02, 1.360065063543118742e-02, 1.357028932088706272e-02, 1.353990846011027087e-02, 1.350950810396676742e-02, 1.347908830334923133e-02, 1.344864910917810061e-02, 1.341819057240102933e-02, 1.338771274399283388e-02, 1.335721567495485804e-02, 1.332669941631626012e-02, 1.329616401913238238e-02, 1.326560953448533038e-02, 1.323503601348489586e-02, 1.320444350726628600e-02, 1.317383206699217386e-02, 1.314320174385099314e-02, 1.311255258905820106e-02, 1.308188465385485937e-02, 1.305119798950881045e-02, 1.302049264731381176e-02, 1.298976867858974565e-02, 1.295902613468215281e-02, 1.292826506696288791e-02, 1.289748552682907015e-02, 1.286668756570402174e-02, 1.283587123503625478e-02, 1.280503658630007674e-02, 1.277418367099528163e-02, 1.274331254064670245e-02, 1.271242324680487042e-02, 1.268151584104493072e-02, 1.265059037496764696e-02, 1.261964690019859968e-02, 1.258868546838854199e-02, 1.255770613121243336e-02, 1.252670894037075967e-02, 1.249569394758791481e-02, 1.246466120461376184e-02, 1.243361076322171271e-02, 1.240254267521027215e-02, 1.237145699240206446e-02, 1.234035376664414235e-02, 1.230923304980721320e-02, 1.227809489378665388e-02, 1.224693935050123229e-02, 1.221576647189406319e-02, 1.218457630993221609e-02, 1.215336891660581502e-02, 1.212214434392933776e-02, 1.209090264394019863e-02, 1.205964386869991418e-02, 1.202836807029278657e-02, 1.199707530082677956e-02, 1.196576561243303284e-02, 1.193443905726588976e-02, 1.190309568750229537e-02, 1.187173555534276614e-02, 1.184035871301006466e-02, 1.180896521275040870e-02, 1.177755510683176250e-02, 1.174612844754600177e-02, 1.171468528720630460e-02, 1.168322567814914642e-02, 1.165174967273273007e-02, 1.162025732333768838e-02, 1.158874868236705810e-02, 1.155722380224587578e-02, 1.152568273542126272e-02, 1.149412553436178312e-02, 1.146255225155852660e-02, 1.143096293952362494e-02, 1.139935765079160869e-02, 1.136773643791779906e-02, 1.133609935347955865e-02, 1.130444645007544664e-02, 1.127277778032564730e-02, 1.124109339687081287e-02, 1.120939335237356241e-02, 1.117767769951694828e-02, 1.114594649100527843e-02, 1.111419977956380582e-02, 1.108243761793859493e-02, 1.105066005889607413e-02, 1.101886715522334623e-02, 1.098705895972858053e-02, 1.095523552523952615e-02, 1.092339690460504380e-02, 1.089154315069389492e-02, 1.085967431639530550e-02, 1.082779045461799462e-02, 1.079589161829149456e-02, 1.076397786036437446e-02, 1.073204923380596983e-02, 1.070010579160426273e-02, 1.066814758676823231e-02, 1.063617467232520417e-02, 1.060418710132280187e-02, 1.057218492682742567e-02, 1.054016820192542163e-02, 1.050813697972161065e-02, 1.047609131334058773e-02, 1.044403125592590839e-02, 1.041195686063961859e-02, 1.037986818066326082e-02, 1.034776526919650198e-02, 1.031564817945840318e-02, 1.028351696468595734e-02, 1.025137167813514570e-02, 1.021921237308019530e-02, 1.018703910281397625e-02, 1.015485192064695917e-02, 1.012265087990853359e-02, 1.009043603394546226e-02, 1.005820743612303829e-02, 1.002596513982426975e-02, 9.993709198450183295e-03, 9.961439665419159761e-03, 9.929156594167225583e-03, 9.896860038148460464e-03, 9.864550050833821235e-03, 9.832226685712023087e-03, 9.799889996288984467e-03, 9.767540036087969321e-03, 9.735176858648889736e-03, 9.702800517529301672e-03, 9.670411066303041467e-03, 9.638008558561495659e-03, 9.605593047911935647e-03, 9.573164587979566403e-03, 9.540723232404872342e-03, 9.508269034845794401e-03, 9.475802048975967562e-03, 9.443322328486002809e-03, 9.410829927082101087e-03, 9.378324898487066380e-03, 9.345807296439915396e-03, 9.313277174694899185e-03, 9.280734587023024493e-03, 9.248179587210260053e-03, 9.215612229059113453e-03, 9.183032566386868656e-03, 9.150440653026982452e-03, 9.117836542828149440e-03, 9.085220289654529283e-03, 9.052591947385052809e-03, 9.019951569914606837e-03, 8.987299211152351489e-03, 8.954634925023007355e-03, 8.921958765466080077e-03, 8.889270786436021671e-03, 8.856571041901493274e-03, 8.823859585846525674e-03, 8.791136472269185306e-03, 8.758401755181962831e-03, 8.725655488612128752e-03, 8.692897726601056876e-03, 8.660128523204486256e-03, 8.627347932491756174e-03, 8.594556008546925044e-03, 8.561752805467299360e-03, 8.528938377364549128e-03, 8.496112778363946322e-03, 8.463276062604600802e-03, 8.430428284238655409e-03, 8.397569497432486388e-03, 8.364699756365150812e-03, 8.331819115229744874e-03, 8.298927628231885997e-03, 8.266025349590838678e-03, 8.233112333538728650e-03, 8.200188634320908915e-03, 8.167254306195158298e-03, 8.134309403432080435e-03, 8.101353980315495820e-03, 8.068388091141130355e-03, 8.035411790217751593e-03, 8.002425131866415867e-03, 7.969428170420634824e-03, 7.936420960225672866e-03, 7.903403555639725020e-03, 7.870376011032201302e-03, 7.837338380785196026e-03, 7.804290719292419215e-03, 7.771233080959616402e-03, 7.738165520203678718e-03, 7.705088091453876284e-03, 7.672000849150272667e-03, 7.638903847745135214e-03, 7.605797141701346915e-03, 7.572680785493620705e-03, 7.539554833607844606e-03, 7.506419340540467638e-03, 7.473274360799663819e-03, 7.440119948903821216e-03, 7.406956159382683397e-03, 7.373783046776537578e-03, 7.340600665636547693e-03, 7.307409070523850601e-03, 7.274208316010812025e-03, 7.240998456679418466e-03, 7.207779547122736968e-03, 7.174551641943238516e-03, 7.141314795754141569e-03, 7.108069063178450164e-03, 7.074814498849290451e-03, 7.041551157409136133e-03, 7.008279093510902218e-03, 6.974998361816656112e-03, 6.941709016998017477e-03, 6.908411113736501706e-03, 6.875104706722813021e-03, 6.841789850657184480e-03, 6.808466600248493268e-03, 6.775135010215517506e-03, 6.741795135285311678e-03, 6.708447030194483393e-03, 6.675090749688283517e-03, 6.641726348520956592e-03, 6.608353881454861328e-03, 6.574973403261691850e-03, 6.541584968720941598e-03, 6.508188632621271161e-03, 6.474784449758896714e-03, 6.441372474938857236e-03, 6.407952762974334499e-03, 6.374525368686039840e-03, 6.341090346903379034e-03, 6.307647752462928331e-03, 6.274197640209588055e-03, 6.240740064995817585e-03, 6.207275081681829648e-03, 6.173802745134858265e-03, 6.140323110230301064e-03, 6.106836231850167572e-03, 6.073342164884465259e-03, 6.039840964229631348e-03, 6.006332684789751457e-03, 5.972817381475726065e-03, 5.939295109205510771e-03, 5.905765922903381641e-03, 5.872229877500998591e-03, 5.838687027935989850e-03, 5.805137429153047444e-03, 5.771581136103347796e-03, 5.738018203743837017e-03, 5.704448687038542361e-03, 5.670872640956880865e-03, 5.637290120475156423e-03, 5.603701180574910054e-03, 5.570105876244159371e-03, 5.536504262476604939e-03, 5.502896394271854924e-03, 5.469282326634597631e-03, 5.435662114575849635e-03, 5.402035813111352031e-03, 5.368403477262966884e-03, 5.334765162057128994e-03, 5.301120922526018561e-03, 5.267470813706745872e-03, 5.233814890641659209e-03, 5.200153208377650098e-03, 5.166485821966452542e-03, 5.132812786464959615e-03, 5.099134156934528699e-03, 5.065449988441287667e-03, 5.031760336055305684e-03, 4.998065254851792767e-03, 4.964364799909509046e-03, 4.930659026312219327e-03, 4.896947989147053780e-03, 4.863231743505744796e-03, 4.829510344483809933e-03, 4.795783847180789573e-03, 4.762052306699475837e-03, 4.728315778147064441e-03, 4.694574316633629875e-03, 4.660827977273291137e-03, 4.627076815183403351e-03, 4.593320885484869151e-03, 4.559560243301386678e-03, 4.525794943759885863e-03, 4.492025041990873636e-03, 4.458250593127080844e-03, 4.424471652304702574e-03, 4.390688274662525592e-03, 4.356900515342228448e-03, 4.323108429487538401e-03, 4.289312072245482152e-03, 4.255511498764723982e-03, 4.221706764197078431e-03, 4.187897923695652405e-03, 4.154085032417025730e-03, 4.120268145518572733e-03, 4.086447318160561261e-03, 4.052622605504419689e-03, 4.018794062714157664e-03, 3.984961744954730253e-03, 3.951125707393288687e-03, 3.917286005198548048e-03, 3.883442693540094248e-03, 3.849595827589635203e-03, 3.815745462519390570e-03, 3.781891653503540677e-03, 3.748034455716584175e-03, 3.714173924334604818e-03, 3.680310114534419714e-03, 3.646443081493851678e-03, 3.612572880390903934e-03, 3.578699566404974861e-03, 3.544823194715279822e-03, 3.510943820502066340e-03, 3.477061498945770591e-03, 3.443176285227322279e-03, 3.409288234527463324e-03, 3.375397402027058812e-03, 3.341503842907557129e-03, 3.307607612349600015e-03, 3.273708765534230365e-03, 3.239807357642069535e-03, 3.205903443853580156e-03, 3.171997079348256882e-03, 3.138088319305825952e-03, 3.104177218904667027e-03, 3.070263833323220483e-03, 3.036348217738204115e-03, 3.002430427326801491e-03, 2.968510517263908081e-03, 2.934588542724313534e-03, 2.900664558880941806e-03, 2.866738620906228094e-03, 2.832810783970539370e-03, 2.798881103243413843e-03, 2.764949633892912172e-03, 2.731016431084917935e-03, 2.697081549984433474e-03, 2.663145045753928866e-03, 2.629206973554791722e-03, 2.595267388545715627e-03, 2.561326345883926155e-03, 2.527383900724370757e-03, 2.493440108219960750e-03, 2.459495023520756000e-03, 2.425548701775196575e-03, 2.391601198128485550e-03, 2.357652567723849280e-03, 2.323702865701667442e-03, 2.289752147199780076e-03, 2.255800467352621092e-03, 2.221847881292479850e-03, 2.187894444148072177e-03, 2.153940211045017854e-03, 2.119985237106136386e-03, 2.086029577450798644e-03, 2.052073287195183612e-03, 2.018116421451474334e-03, 1.984159035329066158e-03, 1.950201183932977287e-03, 1.916242922365264103e-03, 1.882284305723241338e-03, 1.848325389101648309e-03, 1.814366227589926921e-03, 1.780406876274392459e-03, 1.746447390236445952e-03, 1.712487824554000549e-03, 1.678528234299879506e-03, 1.644568674543038294e-03, 1.610609200347755138e-03, 1.576649866773874092e-03, 1.542690728876172949e-03, 1.508731841704670290e-03, 1.474773260305060896e-03, 1.440815039717344885e-03, 1.406857234977039852e-03, 1.372899901114342340e-03, 1.338943093154414728e-03, 1.304986866116544103e-03, 1.271031275015381068e-03, 1.237076374859321032e-03, 1.203122220651762098e-03, 1.169168867390250497e-03, 1.135216370066757493e-03, 1.101264783666862325e-03, 1.067314163170961097e-03, 1.033364563552674736e-03, 9.994160397802877207e-04, 9.654686468151204865e-04, 9.315224396127846007e-04, 8.975774731225181482e-04, 8.636338022865401977e-04, 8.296914820412679267e-04, 7.957505673157324938e-04, 7.618111130328121018e-04, 7.278731741083771046e-04, 6.939368054515884874e-04, 6.600020619640511055e-04, 6.260689985410534692e-04, 5.921376700699566191e-04, 5.582081314316297187e-04, 5.242804374988427243e-04, 4.903546431375021587e-04, 4.564308032058099875e-04, 4.225089725545501189e-04, 3.885892060262469551e-04, 3.546715584564001894e-04, 3.207560846720701399e-04, 2.868428394923616827e-04, 2.529318777287114573e-04, 2.190232541842331980e-04, 1.851170236540089237e-04, 1.512132409242433685e-04, 1.173119607735009345e-04, 8.341323797110359315e-05, 4.951712727836799416e-05, 1.562368344776079716e-05, -1.826703877681107706e-05, -5.215498466084425745e-05, -8.604009947800363015e-05, -1.199223285117223227e-04, -1.538016170537768220e-04, -1.876779104058872057e-04, -2.215511538784824459e-04, -2.554212927913534787e-04, -2.892882724743084280e-04, -3.231520382659381057e-04, -3.570125355152157522e-04, -3.908697095802600701e-04, -4.247235058291787334e-04, -4.585738696397806402e-04, -4.924207464004152482e-04, -5.262640815087411914e-04, -5.601038203733246660e-04, -5.939399084122110473e-04, -6.277722910545288594e-04, -6.616009137392555185e-04, -6.954257219160514102e-04, -7.292466610449841770e-04, -7.630636765973550966e-04, -7.968767140544778371e-04, -8.306857189092670297e-04, -8.644906366650126871e-04, -8.982914128360217250e-04, -9.320879929482886505e-04, -9.658803225382407058e-04, -9.996683471543521375e-04, -1.033452012355715217e-03, -1.067231263713635213e-03, -1.101006046810396564e-03, -1.134776307240109540e-03, -1.168541990608412077e-03, -1.202303042533323704e-03, -1.236059408643997619e-03, -1.269811034582322496e-03, -1.303557866001509328e-03, -1.337299848567673069e-03, -1.371036927958602927e-03, -1.404769049864611728e-03, -1.438496159988238415e-03, -1.472218204044901816e-03, -1.505935127762611167e-03, -1.539646876881666437e-03, -1.573353397155332484e-03, -1.607054634349533309e-03, -1.640750534243681693e-03, -1.674441042629475941e-03, -1.708126105312471115e-03, -1.741805668110659160e-03, -1.775479676856077643e-03, -1.809148077393561401e-03, -1.842810815581596463e-03, -1.876467837292014737e-03, -1.910119088410840767e-03, -1.943764514837074617e-03, -1.977404062484255497e-03, -2.011037677279253321e-03, -2.044665305163098114e-03, -2.078286892090691618e-03, -2.111902384031459981e-03, -2.145511726969055819e-03, -2.179114866900897212e-03, -2.212711749839549411e-03, -2.246302321811514003e-03, -2.279886528858045963e-03, -2.313464317034884341e-03, -2.347035632413080157e-03, -2.380600421077769518e-03, -2.414158629129752650e-03, -2.447710202684092243e-03, -2.481255087871705491e-03, -2.514793230838098612e-03, -2.548324577744252428e-03, -2.581849074766314010e-03, -2.615366668096402898e-03, -2.648877303941437125e-03, -2.682380928524687961e-03, -2.715877488084547826e-03, -2.749366928875191657e-03, -2.782849197167225688e-03, -2.816324239246457539e-03, -2.849792001415466566e-03, -2.883252429992230401e-03, -2.916705471311656708e-03, -2.950151071724403575e-03, -2.983589177597675748e-03, -3.017019735314968761e-03, -3.050442691276885991e-03, -3.083857991899908307e-03, -3.117265583617989579e-03, -3.150665412881332398e-03, -3.184057426157201227e-03, -3.217441569929660461e-03, -3.250817790700213233e-03, -3.284186034987481365e-03, -3.317546249326795531e-03, -3.350898380271526231e-03, -3.384242374391867748e-03, -3.417578178275721117e-03, -3.450905738528349358e-03, -3.484225001773234853e-03, -3.517535914650853340e-03, -3.550838423820256405e-03, -3.584132475957658992e-03, -3.617418017758190600e-03, -3.650694995933768949e-03, -3.683963357215769285e-03, -3.717223048352902379e-03, -3.750474016112932338e-03, -3.783716207281305737e-03, -3.816949568662726319e-03, -3.850174047079919868e-03, -3.883389589374276925e-03, -3.916596142406494202e-03, -3.949793653055404946e-03, -3.982982068219463427e-03, -4.016161334815409635e-03, -4.049331399779821858e-03, -4.082492210067902375e-03, -4.115643712654283234e-03, -4.148785854532763447e-03, -4.181918582717146851e-03, -4.215041844239990516e-03, -4.248155586154182470e-03, -4.281259755531763821e-03, -4.314354299464708518e-03, -4.347439165064652736e-03, -4.380514299463746618e-03, -4.413579649813385332e-03, -4.446635163285636745e-03, -4.479680787072753100e-03, -4.512716468386884783e-03, -4.545742154460731717e-03, -4.578757792547220699e-03, -4.611763329920365827e-03, -4.644758713874067198e-03, -4.677743891723602776e-03, -4.710718810804339490e-03, -4.743683418473376885e-03, -4.776637662107473259e-03, -4.809581489105716270e-03, -4.842514846887343259e-03, -4.875437682893564439e-03, -4.908349944586060630e-03, -4.941251579448672007e-03, -4.974142534986068440e-03, -5.007022758724651544e-03, -5.039892198212244170e-03, -5.072750801018705361e-03, -5.105598514735703967e-03, -5.138435286976147064e-03, -5.171261065375663997e-03, -5.204075797591342645e-03, -5.236879431302536060e-03, -5.269671914210630886e-03, -5.302453194039782013e-03, -5.335223218535812759e-03, -5.367981935467679849e-03, -5.400729292626322425e-03, -5.433465237825439199e-03, -5.466189718901266412e-03, -5.498902683713297740e-03, -5.531604080143168872e-03, -5.564293856096206616e-03, -5.596971959499952645e-03, -5.629638338305817565e-03, -5.662292940487824097e-03, -5.694935714043246333e-03, -5.727566606993262852e-03, -5.760185567381725935e-03, -5.792792543276730627e-03, -5.825387482769218278e-03, -5.857970333974725149e-03, -5.890541045031246967e-03, -5.923099564101897384e-03, -5.955645839372782947e-03, -5.988179819054736085e-03, -6.020701451381950745e-03, -6.053210684613489004e-03, -6.085707467032117068e-03, -6.118191746945099777e-03, -6.150663472683932584e-03, -6.183122592605144741e-03, -6.215569055089085852e-03, -6.248002808541310189e-03, -6.280423801392122189e-03, -6.312831982096231247e-03, -6.345227299133474226e-03, -6.377609701008417342e-03, -6.409979136251275564e-03, -6.442335553416654072e-03, -6.474678901085128592e-03, -6.507009127861973843e-03, -6.539326182378084676e-03, -6.571630013289592696e-03, -6.603920569278746641e-03, -6.636197799052659038e-03, -6.668461651344908224e-03, -6.700712074914093319e-03, -6.732949018545436246e-03, -6.765172431049557011e-03, -6.797382261263083467e-03, -6.829578458049298355e-03, -6.861760970296975314e-03, -6.893929746921825634e-03, -6.926084736865412324e-03, -6.958225889095912518e-03, -6.990353152607785281e-03, -7.022466476422658047e-03, -7.054565809588126193e-03, -7.086651101179207608e-03, -7.118722300297054655e-03, -7.150779356070457310e-03, -7.182822217654640136e-03, -7.214850834232082802e-03, -7.246865155012239927e-03, -7.278865129232339054e-03, -7.310850706156199301e-03, -7.342821835075734500e-03, -7.374778465309640013e-03, -7.406720546204846427e-03, -7.438648027135384179e-03, -7.470560857503028875e-03, -7.502458986737808692e-03, -7.534342364296989572e-03, -7.566210939666435237e-03, -7.598064662359528196e-03, -7.629903481917954707e-03, -7.661727347911341350e-03, -7.693536209938211731e-03, -7.725330017624644670e-03, -7.757108720625879687e-03, -7.788872268624966524e-03, -7.820620611334202360e-03, -7.852353698494053680e-03, -7.884071479873907412e-03, -7.915773905271747402e-03, -7.947460924514850034e-03, -7.979132487459463310e-03, -8.010788543990524091e-03, -8.042429044022270448e-03, -8.074053937498016156e-03, -8.105663174390848047e-03, -8.137256704702573035e-03, -8.168834478465071200e-03, -8.200396445739130055e-03, -8.231942556615801099e-03, -8.263472761215272244e-03, -8.294987009687736917e-03, -8.326485252212974253e-03, -8.357967439001252885e-03, -8.389433520292130519e-03, -8.420883446355935387e-03, -8.452317167492666428e-03, -8.483734634032593508e-03, -8.515135796336293847e-03, -8.546520604794945186e-03, -8.577889009830278952e-03, -8.609240961893993918e-03, -8.640576411469104087e-03, -8.671895309068816324e-03, -8.703197605237286694e-03, -8.734483250549349848e-03, -8.765752195611268421e-03, -8.797004391059629752e-03, -8.828239787562808250e-03, -8.859458335819667824e-03, -8.890659986560918437e-03, -8.921844690548155071e-03, -8.953012398574520386e-03, -8.984163061464402883e-03, -9.015296630074293854e-03, -9.046413055291665020e-03, -9.077512288036279978e-03, -9.108594279259215817e-03, -9.139658979943428643e-03, -9.170706341104260112e-03, -9.201736313788407007e-03, -9.232748849075347181e-03, -9.263743898076040248e-03, -9.294721411934278935e-03, -9.325681341825788756e-03, -9.356623638958764047e-03, -9.387548254573710102e-03, -9.418455139944230739e-03, -9.449344246375784503e-03, -9.480215525207275409e-03, -9.511068927809871593e-03, -9.541904405587709609e-03, -9.572721909977700144e-03, -9.603521392450077923e-03, -9.634302804508200480e-03, -9.665066097687979169e-03, -9.695811223559338068e-03, -9.726538133724925081e-03, -9.757246779820930721e-03, -9.787937113516857399e-03, -9.818609086516230655e-03, -9.849262650555476797e-03, -9.879897757405445985e-03, -9.910514358869988022e-03, -9.941112406787503200e-03, -9.971691853029800851e-03, -1.000225264950280017e-02, -1.003279474814632206e-02, -1.006331810093484547e-02, -1.009382265987629652e-02, -1.012430837701368096e-02, -1.015477520442376741e-02, -1.018522309421775532e-02, -1.021565199854190982e-02, -1.024606186957632489e-02, -1.027645265953645859e-02, -1.030682432067185975e-02, -1.033717680526746382e-02, -1.036751006564267524e-02, -1.039782405415194157e-02, -1.042811872318458004e-02, -1.045839402516557728e-02, -1.048864991255430562e-02, -1.051888633784613808e-02, -1.054910325357127227e-02, -1.057930061229542945e-02, -1.060947836661962386e-02, -1.063963646918093808e-02, -1.066977487265142154e-02, -1.069989352973925098e-02, -1.072999239318845471e-02, -1.076007141577848061e-02, -1.079013055032489871e-02, -1.082016974967909412e-02, -1.085018896672898525e-02, -1.088018815439799163e-02, -1.091016726564635400e-02, -1.094012625346996864e-02, -1.097006507090190694e-02, -1.099998367101048292e-02, -1.102988200690167321e-02, -1.105976003171716543e-02, -1.108961769863601836e-02, -1.111945496087330884e-02, -1.114927177168155599e-02, -1.117906808434964740e-02, -1.120884385220356598e-02, -1.123859902860611590e-02, -1.126833356695756093e-02, -1.129804742069527752e-02, -1.132774054329337664e-02, -1.135741288826391110e-02, -1.138706440915582957e-02, -1.141669505955565829e-02, -1.144630479308730679e-02, -1.147589356341270454e-02, -1.150546132423084338e-02, -1.153500802927904384e-02, -1.156453363233193865e-02, -1.159403808720224117e-02, -1.162352134774041930e-02, -1.165298336783540840e-02, -1.168242410141360349e-02, -1.171184350244022961e-02, -1.174124152491805642e-02, -1.177061812288881723e-02, -1.179997325043212995e-02, -1.182930686166601929e-02, -1.185861891074758284e-02, -1.188790935187175601e-02, -1.191717813927289579e-02, -1.194642522722332359e-02, -1.197565057003498711e-02, -1.200485412205767356e-02, -1.203403583768108444e-02, -1.206319567133324472e-02, -1.209233357748184731e-02, -1.212144951063310987e-02, -1.215054342533306540e-02, -1.217961527616663077e-02, -1.220866501775819991e-02, -1.223769260477142358e-02, -1.226669799190999340e-02, -1.229568113391645706e-02, -1.232464198557352807e-02, -1.235358050170361037e-02, -1.238249663716860412e-02, -1.241139034687038269e-02, -1.244026158575056717e-02, -1.246911030879133998e-02, -1.249793647101418714e-02, -1.252674002748142661e-02, -1.255552093329509629e-02, -1.258427914359763235e-02, -1.261301461357166274e-02, -1.264172729844071155e-02, -1.267041715346813729e-02, -1.269908413395848430e-02, -1.272772819525623371e-02, -1.275634929274723980e-02, -1.278494738185760246e-02, -1.281352241805424133e-02, -1.284207435684548912e-02, -1.287060315377991718e-02, -1.289910876444783257e-02, -1.292759114448011407e-02, -1.295605024954899105e-02, -1.298448603536775034e-02, -1.301289845769144742e-02, -1.304128747231595234e-02, -1.306965303507907211e-02, -1.309799510185952545e-02, -1.312631362857837568e-02, -1.315460857119759783e-02, -1.318287988572129643e-02, -1.321112752819504979e-02, -1.323935145470672529e-02, -1.326755162138555134e-02, -1.329572798440338023e-02, -1.332388049997339403e-02, -1.335200912435158260e-02, -1.338011381383563680e-02, -1.340819452476546547e-02, -1.343625121352379041e-02, -1.346428383653513854e-02, -1.349229235026699024e-02, -1.352027671122900919e-02, -1.354823687597348988e-02, -1.357617280109531255e-02, -1.360408444323245834e-02, -1.363197175906517497e-02, -1.365983470531703312e-02, -1.368767323875406602e-02, -1.371548731618579993e-02, -1.374327689446440751e-02, -1.377104193048528727e-02, -1.379878238118689877e-02, -1.382649820355120844e-02, -1.385418935460363057e-02, -1.388185579141247399e-02, -1.390949747108977640e-02, -1.393711435079088116e-02, -1.396470638771524046e-02, -1.399227353910523913e-02, -1.401981576224761022e-02, -1.404733301447231436e-02, -1.407482525315372976e-02, -1.410229243570967732e-02, -1.412973451960204858e-02, -1.415715146233675024e-02, -1.418454322146414995e-02, -1.421190975457818813e-02, -1.423925101931766343e-02, -1.426656697336509474e-02, -1.429385757444802743e-02, -1.432112278033751546e-02, -1.434836254884989774e-02, -1.437557683784597765e-02, -1.440276560523064478e-02, -1.442992880895423158e-02, -1.445706640701123133e-02, -1.448417835744112390e-02, -1.451126461832821964e-02, -1.453832514780211554e-02, -1.456535990403683492e-02, -1.459236884525212490e-02, -1.461935192971215193e-02, -1.464630911572712725e-02, -1.467324036165176121e-02, -1.470014562588645851e-02, -1.472702486687677177e-02, -1.475387804311422725e-02, -1.478070511313522850e-02, -1.480750603552234007e-02, -1.483428076890330911e-02, -1.486102927195170550e-02, -1.488775150338718725e-02, -1.491444742197472334e-02, -1.494111698652574906e-02, -1.496776015589704537e-02, -1.499437688899209371e-02, -1.502096714475991725e-02, -1.504753088219588572e-02, -1.507406806034143273e-02, -1.510057863828469758e-02, -1.512706257515960238e-02, -1.515351983014697444e-02, -1.517995036247374481e-02, -1.520635413141348258e-02, -1.523273109628619712e-02, -1.525908121645884290e-02, -1.528540445134505925e-02, -1.531170076040484600e-02, -1.533797010314564592e-02, -1.536421243912127962e-02, -1.539042772793272965e-02, -1.541661592922786289e-02, -1.544277700270201698e-02, -1.546891090809714327e-02, -1.549501760520288936e-02, -1.552109705385566925e-02, -1.554714921393984296e-02, -1.557317404538656816e-02, -1.559917150817474209e-02, -1.562514156233049678e-02, -1.565108416792806295e-02, -1.567699928508874130e-02, -1.570288687398199365e-02, -1.572874689482473692e-02, -1.575457930788152355e-02, -1.578038407346541577e-02, -1.580616115193663948e-02, -1.583191050370415937e-02, -1.585763208922429807e-02, -1.588332586900212048e-02, -1.590899180359036519e-02, -1.593462985359026321e-02, -1.596023997965113558e-02, -1.598582214247103866e-02, -1.601137630279592799e-02, -1.603690242142079975e-02, -1.606240045918876785e-02, -1.608787037699161565e-02, -1.611331213576968832e-02, -1.613872569651245495e-02, -1.616411102025759952e-02, -1.618946806809201319e-02, -1.621479680115152713e-02, -1.624009718062062804e-02, -1.626536916773290570e-02, -1.629061272377089684e-02, -1.631582781006676169e-02, -1.634101438800110787e-02, -1.636617241900449604e-02, -1.639130186455616325e-02, -1.641640268618531698e-02, -1.644147484547000063e-02, -1.646651830403812050e-02, -1.649153302356673803e-02, -1.651651896578305856e-02, -1.654147609246338010e-02, -1.656640436543415501e-02, -1.659130374657125789e-02, -1.661617419780057545e-02, -1.664101568109761439e-02, -1.666582815848816068e-02, -1.669061159204801234e-02, -1.671536594390260130e-02, -1.674009117622793016e-02, -1.676478725124985747e-02, -1.678945413124453487e-02, -1.681409177853829262e-02, -1.683870015550820165e-02, -1.686327922458118883e-02, -1.688782894823512987e-02, -1.691234928899807213e-02, -1.693684020944869612e-02, -1.696130167221620438e-02, -1.698573363998082120e-02, -1.701013607547305698e-02, -1.703450894147471445e-02, -1.705885220081781659e-02, -1.708316581638597703e-02, -1.710744975111323091e-02, -1.713170396798470788e-02, -1.715592843003695134e-02, -1.718012310035715168e-02, -1.720428794208413853e-02, -1.722842291840750995e-02, -1.725252799256874608e-02, -1.727660312785989777e-02, -1.730064828762519283e-02, -1.732466343525968996e-02, -1.734864853421045836e-02, -1.737260354797570336e-02, -1.739652844010571020e-02, -1.742042317420203212e-02, -1.744428771391812877e-02, -1.746812202295909902e-02, -1.749192606508228470e-02, -1.751569980409636504e-02, -1.753944320386237668e-02, -1.756315622829334594e-02, -1.758683884135416042e-02, -1.761049100706186393e-02, -1.763411268948561830e-02, -1.765770385274711279e-02, -1.768126446101982163e-02, -1.770479447853010382e-02, -1.772829386955630457e-02, -1.775176259842923751e-02, -1.777520062953221597e-02, -1.779860792730136518e-02, -1.782198445622494576e-02, -1.784533018084441189e-02, -1.786864506575333231e-02, -1.789192907559858381e-02, -1.791518217507947347e-02, -1.793840432894816192e-02, -1.796159550201009356e-02, -1.798475565912314653e-02, -1.800788476519881581e-02, -1.803098278520103709e-02, -1.805404968414760919e-02, -1.807708542710859123e-02, -1.810008997920806509e-02, -1.812306330562290027e-02, -1.814600537158376353e-02, -1.816891614237413702e-02, -1.819179558333147359e-02, -1.821464365984639885e-02, -1.823746033736312055e-02, -1.826024558137934531e-02, -1.828299935744681290e-02, -1.830572163117043585e-02, -1.832841236820941661e-02, -1.835107153427618237e-02, -1.837369909513753008e-02, -1.839629501661384572e-02, -1.841885926457936806e-02, -1.844139180496276800e-02, -1.846389260374630206e-02, -1.848636162696679422e-02, -1.850879884071473039e-02, -1.853120421113514313e-02, -1.855357770442710511e-02, -1.857591928684425991e-02, -1.859822892469426350e-02, -1.862050658433958908e-02, -1.864275223219670832e-02, -1.866496583473706283e-02, -1.868714735848629738e-02, -1.870929677002472133e-02, -1.873141403598733642e-02, -1.875349912306394778e-02, -1.877555199799913616e-02, -1.879757262759203934e-02, -1.881956097869687955e-02, -1.884151701822250891e-02, -1.886344071313314497e-02, -1.888533203044762132e-02, -1.890719093724017169e-02, -1.892901740063963195e-02, -1.895081138783061975e-02, -1.897257286605242427e-02, -1.899430180259983544e-02, -1.901599816482268251e-02, -1.903766192012660771e-02, -1.905929303597211216e-02, -1.908089147987560366e-02, -1.910245721940851543e-02, -1.912399022219832614e-02, -1.914549045592765439e-02, -1.916695788833483807e-02, -1.918839248721416341e-02, -1.920979422041527857e-02, -1.923116305584391186e-02, -1.925249896146144155e-02, -1.927380190528511089e-02, -1.929507185538800393e-02, -1.931630877989954156e-02, -1.933751264700458647e-02, -1.935868342494463309e-02, -1.937982108201678766e-02, -1.940092558657469449e-02, -1.942199690702803641e-02, -1.944303501184258334e-02, -1.946403986954049412e-02, -1.948501144870053853e-02, -1.950594971795738264e-02, -1.952685464600264001e-02, -1.954772620158400781e-02, -1.956856435350569356e-02, -1.958936907062889046e-02, -1.961014032187086836e-02, -1.963087807620603198e-02, -1.965158230266510556e-02, -1.967225297033584411e-02, -1.969289004836269341e-02, -1.971349350594683858e-02, -1.973406331234640182e-02, -1.975459943687664713e-02, -1.977510184890943212e-02, -1.979557051787411356e-02, -1.981600541325657244e-02, -1.983640650460044910e-02, -1.985677376150569648e-02, -1.987710715363020034e-02, -1.989740665068896047e-02, -1.991767222245386867e-02, -1.993790383875468017e-02, -1.995810146947813585e-02, -1.997826508456850350e-02, -1.999839465402753272e-02, -2.001849014791462142e-02, -2.003855153634640993e-02, -2.005857878949754772e-02, -2.007857187759989892e-02, -2.009853077094343396e-02, -2.011845543987555648e-02, -2.013834585480138786e-02, -2.015820198618406209e-02, -2.017802380454462516e-02, -2.019781128046175059e-02, -2.021756438457237084e-02, -2.023728308757118816e-02, -2.025696736021084104e-02, -2.027661717330245250e-02, -2.029623249771480079e-02, -2.031581330437521801e-02, -2.033535956426882341e-02, -2.035487124843943924e-02, -2.037434832798885875e-02, -2.039379077407720356e-02, -2.041319855792297910e-02, -2.043257165080342164e-02, -2.045191002405367248e-02, -2.047121364906792293e-02, -2.049048249729851917e-02, -2.050971654025651389e-02, -2.052891574951143383e-02, -2.054808009669176899e-02, -2.056720955348445568e-02, -2.058630409163533098e-02, -2.060536368294904955e-02, -2.062438829928882680e-02, -2.064337791257693511e-02, -2.066233249479442272e-02, -2.068125201798167931e-02, -2.070013645423747495e-02, -2.071898577572017092e-02, -2.073779995464675521e-02, -2.075657896329373073e-02, -2.077532277399643176e-02, -2.079403135914948894e-02, -2.081270469120667307e-02, -2.083134274268126640e-02, -2.084994548614558033e-02, -2.086851289423159381e-02, -2.088704493963037048e-02, -2.090554159509245072e-02, -2.092400283342796610e-02, -2.094242862750647985e-02, -2.096081895025720537e-02, -2.097917377466871486e-02, -2.099749307378950477e-02, -2.101577682072744771e-02, -2.103402498865033707e-02, -2.105223755078540829e-02, -2.107041448042011947e-02, -2.108855575090131176e-02, -2.110666133563606287e-02, -2.112473120809106250e-02, -2.114276534179302183e-02, -2.116076371032847223e-02, -2.117872628734443485e-02, -2.119665304654731741e-02, -2.121454396170416312e-02, -2.123239900664180071e-02, -2.125021815524742730e-02, -2.126800138146834468e-02, -2.128574865931187263e-02, -2.130345996284607052e-02, -2.132113526619887345e-02, -2.133877454355890407e-02, -2.135637776917480996e-02, -2.137394491735600949e-02, -2.139147596247218883e-02, -2.140897087895352741e-02, -2.142642964129060773e-02, -2.144385222403499824e-02, -2.146123860179837209e-02, -2.147858874925349590e-02, -2.149590264113339713e-02, -2.151318025223212735e-02, -2.153042155740418975e-02, -2.154762653156525737e-02, -2.156479514969135078e-02, -2.158192738681981304e-02, -2.159902321804862621e-02, -2.161608261853672705e-02, -2.163310556350393765e-02, -2.165009202823113890e-02, -2.166704198806040926e-02, -2.168395541839457027e-02, -2.170083229469785616e-02, -2.171767259249547666e-02, -2.173447628737375584e-02, -2.175124335498024655e-02, -2.176797377102399761e-02, -2.178466751127487722e-02, -2.180132455156456872e-02, -2.181794486778558875e-02, -2.183452843589235581e-02, -2.185107523190020842e-02, -2.186758523188617534e-02, -2.188405841198885066e-02, -2.190049474840807114e-02, -2.191689421740551993e-02, -2.193325679530416794e-02, -2.194958245848900591e-02, -2.196587118340605563e-02, -2.198212294656363627e-02, -2.199833772453133399e-02, -2.201451549394086230e-02, -2.203065623148532312e-02, -2.204675991391996659e-02, -2.206282651806168102e-02, -2.207885602078927742e-02, -2.209484839904341663e-02, -2.211080362982692504e-02, -2.212672169020431234e-02, -2.214260255730239602e-02, -2.215844620830968725e-02, -2.217425262047713688e-02, -2.219002177111744842e-02, -2.220575363760567827e-02, -2.222144819737905189e-02, -2.223710542793676942e-02, -2.225272530684062680e-02, -2.226830781171434265e-02, -2.228385292024413072e-02, -2.229936061017830790e-02, -2.231483085932794291e-02, -2.233026364556594048e-02, -2.234565894682822434e-02, -2.236101674111263399e-02, -2.237633700647982671e-02, -2.239161972105280229e-02, -2.240686486301720487e-02, -2.242207241062105921e-02, -2.243724234217515587e-02, -2.245237463605302686e-02, -2.246746927069052588e-02, -2.248252622458667832e-02, -2.249754547630250165e-02, -2.251252700446250074e-02, -2.252747078775347786e-02, -2.254237680492542431e-02, -2.255724503479071899e-02, -2.257207545622496800e-02, -2.258686804816662300e-02, -2.260162278961684590e-02, -2.261633965963993562e-02, -2.263101863736318234e-02, -2.264565970197672529e-02, -2.266026283273402456e-02, -2.267482800895124703e-02, -2.268935521000807129e-02, -2.270384441534689310e-02, -2.271829560447346033e-02, -2.273270875695680704e-02, -2.274708385242889958e-02, -2.276142087058527497e-02, -2.277571979118447540e-02, -2.278998059404838475e-02, -2.280420325906225287e-02, -2.281838776617474765e-02, -2.283253409539771558e-02, -2.284664222680666407e-02, -2.286071214054030687e-02, -2.287474381680094579e-02, -2.288873723585437697e-02, -2.290269237802972091e-02, -2.291660922371978326e-02, -2.293048775338108261e-02, -2.294432794753333352e-02, -2.295812978676034857e-02, -2.297189325170922308e-02, -2.298561832309075834e-02, -2.299930498167966283e-02, -2.301295320831416372e-02, -2.302656298389643696e-02, -2.304013428939214597e-02, -2.305366710583104176e-02, -2.306716141430656050e-02, -2.308061719597596234e-02, -2.309403443206043544e-02, -2.310741310384517230e-02, -2.312075319267893614e-02, -2.313405467997502532e-02, -2.314731754721017012e-02, -2.316054177592551805e-02, -2.317372734772570053e-02, -2.318687424427999869e-02, -2.319998244732154880e-02, -2.321305193864741864e-02, -2.322608270011913140e-02, -2.323907471366201682e-02, -2.325202796126579069e-02, -2.326494242498427720e-02, -2.327781808693559287e-02, -2.329065492930199738e-02, -2.330345293433027862e-02, -2.331621208433110742e-02, -2.332893236167985634e-02, -2.334161374881601678e-02, -2.335425622824350081e-02, -2.336685978253055795e-02, -2.337942439431003189e-02, -2.339195004627890595e-02, -2.340443672119902480e-02, -2.341688440189625478e-02, -2.342929307126120908e-02, -2.344166271224913320e-02, -2.345399330787953027e-02, -2.346628484123675779e-02, -2.347853729546952456e-02, -2.349075065379138683e-02, -2.350292489948032498e-02, -2.351506001587910094e-02, -2.352715598639505343e-02, -2.353921279450036860e-02, -2.355123042373188577e-02, -2.356320885769117718e-02, -2.357514808004453413e-02, -2.358704807452324456e-02, -2.359890882492299280e-02, -2.361073031510478593e-02, -2.362251252899404477e-02, -2.363425545058144353e-02, -2.364595906392229219e-02, -2.365762335313697715e-02, -2.366924830241062816e-02, -2.368083389599335079e-02, -2.369238011820052475e-02, -2.370388695341216906e-02, -2.371535438607356647e-02, -2.372678240069472574e-02, -2.373817098185116228e-02, -2.374952011418308973e-02, -2.376082978239590221e-02, -2.377209997126016397e-02, -2.378333066561165443e-02, -2.379452185035111147e-02, -2.380567351044463736e-02, -2.381678563092340037e-02, -2.382785819688371109e-02, -2.383889119348735208e-02, -2.384988460596106433e-02, -2.386083841959715443e-02, -2.387175261975300541e-02, -2.388262719185139590e-02, -2.389346212138036829e-02, -2.390425739389336751e-02, -2.391501299500905370e-02, -2.392572891041174973e-02, -2.393640512585088614e-02, -2.394704162714148682e-02, -2.395763840016391921e-02, -2.396819543086404353e-02, -2.397871270525309129e-02, -2.398919020940800534e-02, -2.399962792947088128e-02, -2.401002585164975847e-02, -2.402038396221786373e-02, -2.403070224751417336e-02, -2.404098069394304885e-02, -2.405121928797461853e-02, -2.406141801614453471e-02, -2.407157686505413327e-02, -2.408169582137024284e-02, -2.409177487182554908e-02, -2.410181400321823042e-02, -2.411181320241229456e-02, -2.412177245633730094e-02, -2.413169175198860358e-02, -2.414157107642733724e-02, -2.415141041678024389e-02, -2.416120976024003358e-02, -2.417096909406508606e-02, -2.418068840557954444e-02, -2.419036768217331865e-02, -2.420000691130241507e-02, -2.420960608048829121e-02, -2.421916517731855997e-02, -2.422868418944666355e-02, -2.423816310459183873e-02, -2.424760191053921057e-02, -2.425700059513985832e-02, -2.426635914631092988e-02, -2.427567755203531921e-02, -2.428495580036194382e-02, -2.429419387940569622e-02, -2.430339177734749598e-02, -2.431254948243421338e-02, -2.432166698297874227e-02, -2.433074426736000703e-02, -2.433978132402307010e-02, -2.434877814147887176e-02, -2.435773470830458406e-02, -2.436665101314332629e-02, -2.437552704470438703e-02, -2.438436279176317209e-02, -2.439315824316113865e-02, -2.440191338780611785e-02, -2.441062821467161054e-02, -2.441930271279784542e-02, -2.442793687129075214e-02, -2.443653067932282513e-02, -2.444508412613235690e-02, -2.445359720102418394e-02, -2.446206989336918367e-02, -2.447050219260469769e-02, -2.447889408823401489e-02, -2.448724556982678074e-02, -2.449555662701900435e-02, -2.450382724951285368e-02, -2.451205742707692273e-02, -2.452024714954599907e-02, -2.452839640682113326e-02, -2.453650518887000309e-02, -2.454457348572625444e-02, -2.455260128748996962e-02, -2.456058858432775757e-02, -2.456853536647248676e-02, -2.457644162422347595e-02, -2.458430734794627912e-02, -2.459213252807293873e-02, -2.459991715510190941e-02, -2.460766121959813424e-02, -2.461536471219287134e-02, -2.462302762358387423e-02, -2.463064994453535717e-02, -2.463823166587802982e-02, -2.464577277850896198e-02, -2.465327327339179864e-02, -2.466073314155662818e-02, -2.466815237409998932e-02, -2.467553096218509656e-02, -2.468286889704155926e-02, -2.469016616996555849e-02, -2.469742277231963892e-02, -2.470463869553319800e-02, -2.471181393110190999e-02, -2.471894847058817360e-02, -2.472604230562086905e-02, -2.473309542789553159e-02, -2.474010782917424045e-02, -2.474707950128563275e-02, -2.475401043612489305e-02, -2.476090062565411073e-02, -2.476775006190160000e-02, -2.477455873696258332e-02, -2.478132664299876817e-02, -2.478805377223860726e-02, -2.479474011697718402e-02, -2.480138566957595936e-02, -2.480799042246361469e-02, -2.481455436813496951e-02, -2.482107749915184874e-02, -2.482755980814256233e-02, -2.483400128780224175e-02, -2.484040193089255208e-02, -2.484676173024216034e-02, -2.485308067874615612e-02, -2.485935876936637076e-02, -2.486559599513149185e-02, -2.487179234913695566e-02, -2.487794782454476328e-02, -2.488406241458364365e-02, -2.489013611254935893e-02, -2.489616891180410074e-02, -2.490216080577694474e-02, -2.490811178796376382e-02, -2.491402185192728366e-02, -2.491989099129656923e-02, -2.492571919976804828e-02, -2.493150647110459542e-02, -2.493725279913586168e-02, -2.494295817775837171e-02, -2.494862260093550291e-02, -2.495424606269735016e-02, -2.495982855714079518e-02, -2.496537007842948575e-02, -2.497087062079416178e-02, -2.497633017853198925e-02, -2.498174874600723322e-02, -2.498712631765086581e-02, -2.499246288796082294e-02, -2.499775845150165043e-02, -2.500301300290481629e-02, -2.500822653686879046e-02, -2.501339904815877424e-02, -2.501853053160665169e-02, -2.502362098211140598e-02, -2.502867039463878632e-02, -2.503367876422134264e-02, -2.503864608595857827e-02, -2.504357235501671053e-02, -2.504845756662904196e-02, -2.505330171609551973e-02, -2.505810479878305130e-02, -2.506286681012551143e-02, -2.506758774562350620e-02, -2.507226760084453956e-02, -2.507690637142306195e-02, -2.508150405306037306e-02, -2.508606064152456641e-02, -2.509057613265076175e-02, -2.509505052234090039e-02, -2.509948380656374170e-02, -2.510387598135510601e-02, -2.510822704281744089e-02, -2.511253698712029997e-02, -2.511680581050016597e-02, -2.512103350926013848e-02, -2.512522007977046473e-02, -2.512936551846814762e-02, -2.513346982185715034e-02, -2.513753298650824725e-02, -2.514155500905932220e-02, -2.514553588621478569e-02, -2.514947561474641796e-02, -2.515337419149244608e-02, -2.515723161335813723e-02, -2.516104787731573977e-02, -2.516482298040443114e-02, -2.516855691973011316e-02, -2.517224969246563415e-02, -2.517590129585091374e-02, -2.517951172719231148e-02, -2.518308098386368502e-02, -2.518660906330526250e-02, -2.519009596302448223e-02, -2.519354168059549301e-02, -2.519694621365945256e-02, -2.520030955992421176e-02, -2.520363171716480041e-02, -2.520691268322285475e-02, -2.521015245600699561e-02, -2.521335103349276949e-02, -2.521650841372255133e-02, -2.521962459480548216e-02, -2.522269957491778819e-02, -2.522573335230244782e-02, -2.522872592526924362e-02, -2.523167729219492547e-02, -2.523458745152315150e-02, -2.523745640176422098e-02, -2.524028414149552535e-02, -2.524307066936116312e-02, -2.524581598407214800e-02, -2.524852008440633608e-02, -2.525118296920832520e-02, -2.525380463738975331e-02, -2.525638508792896197e-02, -2.525892431987109346e-02, -2.526142233232817058e-02, -2.526387912447905504e-02, -2.526629469556946478e-02, -2.526866904491187685e-02, -2.527100217188552392e-02, -2.527329407593656083e-02, -2.527554475657791538e-02, -2.527775421338930573e-02, -2.527992244601727848e-02, -2.528204945417501792e-02, -2.528413523764275195e-02, -2.528617979626726284e-02, -2.528818312996224810e-02, -2.529014523870814699e-02, -2.529206612255213010e-02, -2.529394578160810286e-02, -2.529578421605684774e-02, -2.529758142614571548e-02, -2.529933741218904145e-02, -2.530105217456770847e-02, -2.530272571372935153e-02, -2.530435803018837512e-02, -2.530594912452600528e-02, -2.530749899738997735e-02, -2.530900764949484474e-02, -2.531047508162190957e-02, -2.531190129461913588e-02, -2.531328628940106296e-02, -2.531463006694912796e-02, -2.531593262831118366e-02, -2.531719397460205009e-02, -2.531841410700298028e-02, -2.531959302676196552e-02, -2.532073073519357925e-02, -2.532182723367918872e-02, -2.532288252366662190e-02, -2.532389660667043116e-02, -2.532486948427181001e-02, -2.532580115811850982e-02, -2.532669162992480863e-02, -2.532754090147172968e-02, -2.532834897460681245e-02, -2.532911585124416470e-02, -2.532984153336442779e-02, -2.533052602301490153e-02, -2.533116932230946444e-02, -2.533177143342833088e-02, -2.533233235861843957e-02, -2.533285210019324551e-02, -2.533333066053262625e-02, -2.533376804208304148e-02, -2.533416424735742203e-02, -2.533451927893515601e-02, -2.533483313946223794e-02, -2.533510583165097044e-02, -2.533533735828019662e-02, -2.533552772219530361e-02, -2.533567692630794149e-02, -2.533578497359634599e-02, -2.533585186710504353e-02, -2.533587760994507332e-02, -2.533586220529390753e-02, -2.533580565639521540e-02, -2.533570796655925522e-02, -2.533556913916261075e-02, -2.533538917764816337e-02, -2.533516808552514071e-02, -2.533490586636926931e-02, -2.533460252382232006e-02, -2.533425806159265992e-02, -2.533387248345478002e-02, -2.533344579324965651e-02, -2.533297799488424748e-02, -2.533246909233200644e-02, -2.533191908963263600e-02, -2.533132799089212253e-02, -2.533069580028246559e-02, -2.533002252204218097e-02, -2.532930816047567965e-02, -2.532855271995392357e-02, -2.532775620491382537e-02, -2.532691861985852944e-02, -2.532603996935734944e-02, -2.532512025804579611e-02, -2.532415949062540028e-02, -2.532315767186401126e-02, -2.532211480659534927e-02, -2.532103089971942181e-02, -2.531990595620225992e-02, -2.531873998107598764e-02, -2.531753297943871786e-02, -2.531628495645470156e-02, -2.531499591735414043e-02, -2.531366586743332564e-02, -2.531229481205460319e-02, -2.531088275664614487e-02, -2.530942970670223280e-02, -2.530793566778309633e-02, -2.530640064551480453e-02, -2.530482464558955757e-02, -2.530320767376526350e-02, -2.530154973586598230e-02, -2.529985083778140548e-02, -2.529811098546725853e-02, -2.529633018494518992e-02, -2.529450844230252127e-02, -2.529264576369247980e-02, -2.529074215533411510e-02, -2.528879762351237889e-02, -2.528681217457784403e-02, -2.528478581494698202e-02, -2.528271855110186817e-02, -2.528061038959058399e-02, -2.527846133702662743e-02, -2.527627140008942980e-02, -2.527404058552404353e-02, -2.527176890014116648e-02, -2.526945635081724942e-02, -2.526710294449422550e-02, -2.526470868817987797e-02, -2.526227358894737526e-02, -2.525979765393564225e-02, -2.525728089034915205e-02, -2.525472330545793648e-02, -2.525212490659751313e-02, -2.524948570116893401e-02, -2.524680569663890692e-02, -2.524408490053946935e-02, -2.524132332046824523e-02, -2.523852096408820203e-02, -2.523567783912790755e-02, -2.523279395338116210e-02, -2.522986931470736979e-02, -2.522690393103117767e-02, -2.522389781034268738e-02, -2.522085096069730595e-02, -2.521776339021589153e-02, -2.521463510708434053e-02, -2.521146611955426761e-02, -2.520825643594209325e-02, -2.520500606462994231e-02, -2.520171501406485298e-02, -2.519838329275922439e-02, -2.519501090929080270e-02, -2.519159787230217454e-02, -2.518814419050142625e-02, -2.518464987266159569e-02, -2.518111492762097406e-02, -2.517753936428281103e-02, -2.517392319161565820e-02, -2.517026641865291806e-02, -2.516656905449317361e-02, -2.516283110830003916e-02, -2.515905258930211177e-02, -2.515523350679301287e-02, -2.515137387013118356e-02, -2.514747368874026279e-02, -2.514353297210865368e-02, -2.513955172978971087e-02, -2.513552997140172662e-02, -2.513146770662777127e-02, -2.512736494521577990e-02, -2.512322169697858015e-02, -2.511903797179389913e-02, -2.511481377960387770e-02, -2.511054913041592396e-02, -2.510624403430175913e-02, -2.510189850139808720e-02, -2.509751254190620284e-02, -2.509308616609212325e-02, -2.508861938428652225e-02, -2.508411220688468168e-02, -2.507956464434650534e-02, -2.507497670719651545e-02, -2.507034840602385267e-02, -2.506567975148195002e-02, -2.506097075428915383e-02, -2.505622142522803686e-02, -2.505143177514583194e-02, -2.504660181495392199e-02, -2.504173155562857897e-02, -2.503682100821014514e-02, -2.503187018380335568e-02, -2.502687909357759546e-02, -2.502184774876634737e-02, -2.501677616066747684e-02, -2.501166434064311384e-02, -2.500651230011977436e-02, -2.500132005058809323e-02, -2.499608760360302537e-02, -2.499081497078370004e-02, -2.498550216381341740e-02, -2.498014919443962076e-02, -2.497475607447398327e-02, -2.496932281579207144e-02, -2.496384943033389328e-02, -2.495833593010306564e-02, -2.495278232716763647e-02, -2.494718863365942910e-02, -2.494155486177440997e-02, -2.493588102377222032e-02, -2.493016713197694287e-02, -2.492441319877604713e-02, -2.491861923662117700e-02, -2.491278525802782112e-02, -2.490691127557518453e-02, -2.490099730190644192e-02, -2.489504334972842195e-02, -2.488904943181179802e-02, -2.488301556099087666e-02, -2.487694175016375020e-02, -2.487082801229223775e-02, -2.486467436040186094e-02, -2.485848080758146575e-02, -2.485224736698388170e-02, -2.484597405182523144e-02, -2.483966087538540257e-02, -2.483330785100767643e-02, -2.482691499209891198e-02, -2.482048231212933068e-02, -2.481400982463275243e-02, -2.480749754320634923e-02, -2.480094548151051334e-02, -2.479435365326938465e-02, -2.478772207227010124e-02, -2.478105075236326435e-02, -2.477433970746274056e-02, -2.476758895154565834e-02, -2.476079849865226584e-02, -2.475396836288625002e-02, -2.474709855841420586e-02, -2.474018909946610473e-02, -2.473324000033482947e-02, -2.472625127537659076e-02, -2.471922293901043788e-02, -2.471215500571853976e-02, -2.470504749004603234e-02, -2.469790040660116773e-02, -2.469071377005496726e-02, -2.468348759514153029e-02, -2.467622189665774624e-02, -2.466891668946337088e-02, -2.466157198848105761e-02, -2.465418780869622559e-02, -2.464676416515693136e-02, -2.463930107297431643e-02, -2.463179854732193766e-02, -2.462425660343612113e-02, -2.461667525661589279e-02, -2.460905452222296105e-02, -2.460139441568142543e-02, -2.459369495247815118e-02, -2.458595614816249872e-02, -2.457817801834629931e-02, -2.457036057870392101e-02, -2.456250384497203273e-02, -2.455460783294997548e-02, -2.454667255849917254e-02, -2.453869803754370194e-02, -2.453068428606976215e-02, -2.452263132012599475e-02, -2.451453915582316873e-02, -2.450640780933431920e-02, -2.449823729689480298e-02, -2.449002763480204875e-02, -2.448177883941559524e-02, -2.447349092715716060e-02, -2.446516391451056260e-02, -2.445679781802156949e-02, -2.444839265429804911e-02, -2.443994844000980243e-02, -2.443146519188862942e-02, -2.442294292672822498e-02, -2.441438166138421365e-02, -2.440578141277396224e-02, -2.439714219787678454e-02, -2.438846403373379212e-02, -2.437974693744768967e-02, -2.437099092618303167e-02, -2.436219601716616695e-02, -2.435336222768498191e-02, -2.434448957508890746e-02, -2.433557807678927293e-02, -2.432662775025848725e-02, -2.431763861303100002e-02, -2.430861068270247574e-02, -2.429954397693014079e-02, -2.429043851343253360e-02, -2.428129430998979960e-02, -2.427211138444309094e-02, -2.426288975469541656e-02, -2.425362943871050420e-02, -2.424433045451380997e-02, -2.423499282019189044e-02, -2.422561655389221871e-02, -2.421620167382381936e-02, -2.420674819825663696e-02, -2.419725614552170959e-02, -2.418772553401122780e-02, -2.417815638217838195e-02, -2.416854870853725121e-02, -2.415890253166296658e-02, -2.414921787019156524e-02, -2.413949474281996618e-02, -2.412973316830585579e-02, -2.411993316546789251e-02, -2.411009475318535294e-02, -2.410021795039848577e-02, -2.409030277610791151e-02, -2.408034924937526092e-02, -2.407035738932266494e-02, -2.406032721513257436e-02, -2.405025874604865832e-02, -2.404015200137445130e-02, -2.403000700047448757e-02, -2.401982376277337489e-02, -2.400960230775645368e-02, -2.399934265496916908e-02, -2.398904482401751151e-02, -2.397870883456772878e-02, -2.396833470634641972e-02, -2.395792245914032254e-02, -2.394747211279638424e-02, -2.393698368722171899e-02, -2.392645720238371215e-02, -2.391589267830957280e-02, -2.390529013508686448e-02, -2.389464959286305076e-02, -2.388397107184540152e-02, -2.387325459230141972e-02, -2.386250017455835218e-02, -2.385170783900331104e-02, -2.384087760608332926e-02, -2.383000949630523918e-02, -2.381910353023540539e-02, -2.380815972850032491e-02, -2.379717811178573908e-02, -2.378615870083735512e-02, -2.377510151646023903e-02, -2.376400657951919723e-02, -2.375287391093852327e-02, -2.374170353170206374e-02, -2.373049546285291647e-02, -2.371924972549383295e-02, -2.370796634078667711e-02, -2.369664532995295961e-02, -2.368528671427322721e-02, -2.367389051508734382e-02, -2.366245675379455987e-02, -2.365098545185308210e-02, -2.363947663078044825e-02, -2.362793031215300668e-02, -2.361634651760648185e-02, -2.360472526883544350e-02, -2.359306658759368486e-02, -2.358137049569349053e-02, -2.356963701500647615e-02, -2.355786616746285284e-02, -2.354605797505190945e-02, -2.353421245982133952e-02, -2.352232964387796638e-02, -2.351040954938704228e-02, -2.349845219857275500e-02, -2.348645761371761717e-02, -2.347442581716282367e-02, -2.346235683130815444e-02, -2.345025067861192941e-02, -2.343810738159093562e-02, -2.342592696282007683e-02, -2.341370944493311249e-02, -2.340145485062170363e-02, -2.338916320263616580e-02, -2.337683452378468488e-02, -2.336446883693401103e-02, -2.335206616500888968e-02, -2.333962653099229054e-02, -2.332714995792502244e-02, -2.331463646890629890e-02, -2.330208608709304074e-02, -2.328949883570029245e-02, -2.327687473800095497e-02, -2.326421381732594190e-02, -2.325151609706371802e-02, -2.323878160066071910e-02, -2.322601035162124433e-02, -2.321320237350701227e-02, -2.320035768993760142e-02, -2.318747632459018659e-02, -2.317455830119966032e-02, -2.316160364355808812e-02, -2.314861237551541287e-02, -2.313558452097868451e-02, -2.312252010391267765e-02, -2.310941914833922889e-02, -2.309628167833787868e-02, -2.308310771804507680e-02, -2.306989729165474443e-02, -2.305665042341771900e-02, -2.304336713764239611e-02, -2.303004745869390718e-02, -2.301669141099451157e-02, -2.300329901902381166e-02, -2.298987030731784731e-02, -2.297640530047006038e-02, -2.296290402313046555e-02, -2.294936650000610479e-02, -2.293579275586059632e-02, -2.292218281551462733e-02, -2.290853670384529125e-02, -2.289485444578660128e-02, -2.288113606632884503e-02, -2.286738159051930619e-02, -2.285359104346143880e-02, -2.283976445031534255e-02, -2.282590183629755465e-02, -2.281200322668102201e-02, -2.279806864679487927e-02, -2.278409812202483384e-02, -2.277009167781258656e-02, -2.275604933965604676e-02, -2.274197113310956475e-02, -2.272785708378337668e-02, -2.271370721734394804e-02, -2.269952155951347750e-02, -2.268530013607057347e-02, -2.267104297284940756e-02, -2.265675009574022111e-02, -2.264242153068897132e-02, -2.262805730369775448e-02, -2.261365744082389703e-02, -2.259922196818095821e-02, -2.258475091193760595e-02, -2.257024429831870280e-02, -2.255570215360408470e-02, -2.254112450412960877e-02, -2.252651137628640735e-02, -2.251186279652082553e-02, -2.249717879133505960e-02, -2.248245938728617513e-02, -2.246770461098673496e-02, -2.245291448910447310e-02, -2.243808904836238488e-02, -2.242322831553856047e-02, -2.240833231746627852e-02, -2.239340108103362106e-02, -2.237843463318392803e-02, -2.236343300091528027e-02, -2.234839621128078407e-02, -2.233332429138841502e-02, -2.231821726840094514e-02, -2.230307516953571045e-02, -2.228789802206514528e-02, -2.227268585331597731e-02, -2.225743869066959188e-02, -2.224215656156214652e-02, -2.222683949348412680e-02, -2.221148751398071761e-02, -2.219610065065111271e-02, -2.218067893114939598e-02, -2.216522238318341734e-02, -2.214973103451566006e-02, -2.213420491296283141e-02, -2.211864404639575857e-02, -2.210304846273919432e-02, -2.208741818997220566e-02, -2.207175325612774353e-02, -2.205605368929302798e-02, -2.204031951760861835e-02, -2.202455076926950264e-02, -2.200874747252425448e-02, -2.199290965567540085e-02, -2.197703734707896761e-02, -2.196113057514458705e-02, -2.194518936833593850e-02, -2.192921375516980811e-02, -2.191320376421676541e-02, -2.189715942410087532e-02, -2.188108076349961489e-02, -2.186496781114362006e-02, -2.184882059581714359e-02, -2.183263914635739239e-02, -2.181642349165520064e-02, -2.180017366065420750e-02, -2.178388968235147466e-02, -2.176757158579681328e-02, -2.175121940009331831e-02, -2.173483315439689659e-02, -2.171841287791649935e-02, -2.170195859991378914e-02, -2.168547034970331674e-02, -2.166894815665252119e-02, -2.165239205018131344e-02, -2.163580205976247881e-02, -2.161917821492116351e-02, -2.160252054523536733e-02, -2.158582908033531908e-02, -2.156910384990407686e-02, -2.155234488367655313e-02, -2.153555221144048959e-02, -2.151872586303558293e-02, -2.150186586835411279e-02, -2.148497225734017843e-02, -2.146804505999022963e-02, -2.145108430635283073e-02, -2.143409002652858775e-02, -2.141706225066986741e-02, -2.140000100898126201e-02, -2.138290633171901003e-02, -2.136577824919112453e-02, -2.134861679175766372e-02, -2.133142198983027996e-02, -2.131419387387226139e-02, -2.129693247439833070e-02, -2.127963782197521414e-02, -2.126230994722061104e-02, -2.124494888080401267e-02, -2.122755465344620951e-02, -2.121012729591947171e-02, -2.119266683904703907e-02, -2.117517331370372125e-02, -2.115764675081521773e-02, -2.114008718135863482e-02, -2.112249463636185071e-02, -2.110486914690406016e-02, -2.108721074411528881e-02, -2.106951945917635849e-02, -2.105179532331918207e-02, -2.103403836782621189e-02, -2.101624862403081440e-02, -2.099842612331706548e-02, -2.098057089711974701e-02, -2.096268297692381599e-02, -2.094476239426533437e-02, -2.092680918073028945e-02, -2.090882336795558266e-02, -2.089080498762795751e-02, -2.087275407148496409e-02, -2.085467065131410905e-02, -2.083655475895327541e-02, -2.081840642629019522e-02, -2.080022568526316076e-02, -2.078201256785985190e-02, -2.076376710611848100e-02, -2.074548933212707127e-02, -2.072717927802318616e-02, -2.070883697599473772e-02, -2.069046245827871333e-02, -2.067205575716247676e-02, -2.065361690498250177e-02, -2.063514593412517709e-02, -2.061664287702626511e-02, -2.059810776617118644e-02, -2.057954063409443701e-02, -2.056094151338017095e-02, -2.054231043666167322e-02, -2.052364743662158861e-02, -2.050495254599165804e-02, -2.048622579755281226e-02, -2.046746722413504693e-02, -2.044867685861752674e-02, -2.042985473392800247e-02, -2.041100088304340435e-02, -2.039211533898940831e-02, -2.037319813484064768e-02, -2.035424930372041474e-02, -2.033526887880039713e-02, -2.031625689330144799e-02, -2.029721338049234741e-02, -2.027813837369096470e-02, -2.025903190626313771e-02, -2.023989401162335985e-02, -2.022072472323445391e-02, -2.020152407460757901e-02, -2.018229209930172408e-02, -2.016302883092455089e-02, -2.014373430313133942e-02, -2.012440854962573716e-02, -2.010505160415927695e-02, -2.008566350053153302e-02, -2.006624427258970819e-02, -2.004679395422884203e-02, -2.002731257939197734e-02, -2.000780018206950797e-02, -1.998825679629975816e-02, -1.996868245616842050e-02, -1.994907719580893066e-02, -1.992944104940179775e-02, -1.990977405117539192e-02, -1.989007623540491043e-02, -1.987034763641339769e-02, -1.985058828857060378e-02, -1.983079822629364719e-02, -1.981097748404684472e-02, -1.979112609634155889e-02, -1.977124409773580241e-02, -1.975133152283496327e-02, -1.973138840629087148e-02, -1.971141478280248258e-02, -1.969141068711544040e-02, -1.967137615402176493e-02, -1.965131121836070915e-02, -1.963121591501730545e-02, -1.961109027892380535e-02, -1.959093434505842363e-02, -1.957074814844596278e-02, -1.955053172415757712e-02, -1.953028510731072420e-02, -1.951000833306873461e-02, -1.948970143664160645e-02, -1.946936445328476678e-02, -1.944899741830024079e-02, -1.942860036703572546e-02, -1.940817333488507185e-02, -1.938771635728752524e-02, -1.936722946972853701e-02, -1.934671270773911586e-02, -1.932616610689567513e-02, -1.930558970282064343e-02, -1.928498353118178812e-02, -1.926434762769252754e-02, -1.924368202811127873e-02, -1.922298676824219649e-02, -1.920226188393446901e-02, -1.918150741108278629e-02, -1.916072338562657337e-02, -1.913990984355099650e-02, -1.911906682088561696e-02, -1.909819435370549087e-02, -1.907729247813014575e-02, -1.905636123032431253e-02, -1.903540064649727331e-02, -1.901441076290323259e-02, -1.899339161584106053e-02, -1.897234324165399805e-02, -1.895126567673022580e-02, -1.893015895750186847e-02, -1.890902312044608763e-02, -1.888785820208380151e-02, -1.886666423898075359e-02, -1.884544126774658282e-02, -1.882418932503544112e-02, -1.880290844754501159e-02, -1.878159867201764643e-02, -1.876026003523920821e-02, -1.873889257403973246e-02, -1.871749632529308080e-02, -1.869607132591705884e-02, -1.867461761287272579e-02, -1.865313522316534856e-02, -1.863162419384354479e-02, -1.861008456199921696e-02, -1.858851636476827399e-02, -1.856691963932976391e-02, -1.854529442290616531e-02, -1.852364075276308891e-02, -1.850195866620953089e-02, -1.848024820059751896e-02, -1.845850939332238302e-02, -1.843674228182205777e-02, -1.841494690357813047e-02, -1.839312329611450178e-02, -1.837127149699823922e-02, -1.834939154383882429e-02, -1.832748347428898167e-02, -1.830554732604355167e-02, -1.828358313684032288e-02, -1.826159094445949788e-02, -1.823957078672382506e-02, -1.821752270149825520e-02, -1.819544672669000038e-02, -1.817334290024900934e-02, -1.815121126016673928e-02, -1.812905184447740486e-02, -1.810686469125698250e-02, -1.808464983862363359e-02, -1.806240732473708352e-02, -1.804013718779946471e-02, -1.801783946605416825e-02, -1.799551419778669045e-02, -1.797316142132414710e-02, -1.795078117503536366e-02, -1.792837349733032021e-02, -1.790593842666101526e-02, -1.788347600152033826e-02, -1.786098626044302015e-02, -1.783846924200458914e-02, -1.781592498482221371e-02, -1.779335352755416835e-02, -1.777075490889946235e-02, -1.774812916759862386e-02, -1.772547634243259312e-02, -1.770279647222364541e-02, -1.768008959583481504e-02, -1.765735575216981559e-02, -1.763459498017288726e-02, -1.761180731882933462e-02, -1.758899280716445107e-02, -1.756615148424461176e-02, -1.754328338917609739e-02, -1.752038856110586101e-02, -1.749746703922119145e-02, -1.747451886274959537e-02, -1.745154407095840174e-02, -1.742854270315550430e-02, -1.740551479868853585e-02, -1.738246039694503475e-02, -1.735937953735269823e-02, -1.733627225937891050e-02, -1.731313860253097178e-02, -1.728997860635549805e-02, -1.726679231043926066e-02, -1.724357975440799634e-02, -1.722034097792746188e-02, -1.719707602070253208e-02, -1.717378492247779997e-02, -1.715046772303656028e-02, -1.712712446220198206e-02, -1.710375517983575219e-02, -1.708035991583928617e-02, -1.705693871015240629e-02, -1.703349160275445875e-02, -1.701001863366342556e-02, -1.698651984293591058e-02, -1.696299527066770507e-02, -1.693944495699277464e-02, -1.691586894208412656e-02, -1.689226726615317489e-02, -1.686863996944993477e-02, -1.684498709226241869e-02, -1.682130867491752474e-02, -1.679760475777994019e-02, -1.677387538125309566e-02, -1.675012058577792992e-02, -1.672634041183395162e-02, -1.670253489993852800e-02, -1.667870409064699938e-02, -1.665484802455236002e-02, -1.663096674228574726e-02, -1.660706028451561581e-02, -1.658312869194852532e-02, -1.655917200532818628e-02, -1.653519026543616433e-02, -1.651118351309154020e-02, -1.648715178915028182e-02, -1.646309513450634407e-02, -1.643901359009024635e-02, -1.641490719687020705e-02, -1.639077599585142195e-02, -1.636662002807609193e-02, -1.634243933462324258e-02, -1.631823395660910586e-02, -1.629400393518635332e-02, -1.626974931154493570e-02, -1.624547012691089296e-02, -1.622116642254737076e-02, -1.619683823975389542e-02, -1.617248561986663752e-02, -1.614810860425787420e-02, -1.612370723433622158e-02, -1.609928155154691926e-02, -1.607483159737125092e-02, -1.605035741332669005e-02, -1.602585904096645933e-02, -1.600133652188029387e-02, -1.597678989769331370e-02, -1.595221921006701599e-02, -1.592762450069822033e-02, -1.590300581131973839e-02, -1.587836318370000263e-02, -1.585369665964310448e-02, -1.582900628098826007e-02, -1.580429208961066714e-02, -1.577955412742025609e-02, -1.575479243636277935e-02, -1.573000705841907584e-02, -1.570519803560515085e-02, -1.568036540997193307e-02, -1.565550922360529201e-02, -1.563062951862652719e-02, -1.560572633719117808e-02, -1.558079972149002332e-02, -1.555584971374847705e-02, -1.553087635622663228e-02, -1.550587969121892257e-02, -1.548085976105469976e-02, -1.545581660809729370e-02, -1.543075027474492648e-02, -1.540566080342956057e-02, -1.538054823661783553e-02, -1.535541261681034123e-02, -1.533025398654202370e-02, -1.530507238838126581e-02, -1.527986786493111884e-02, -1.525464045882781589e-02, -1.522939021274184561e-02, -1.520411716937747001e-02, -1.517882137147218667e-02, -1.515350286179759608e-02, -1.512816168315823592e-02, -1.510279787839272254e-02, -1.507741149037242039e-02, -1.505200256200248804e-02, -1.502657113622106293e-02, -1.500111725599966375e-02, -1.497564096434243416e-02, -1.495014230428712461e-02, -1.492462131890381904e-02, -1.489907805129586996e-02, -1.487351254459942131e-02, -1.484792484198328016e-02, -1.482231498664866864e-02, -1.479668302182980330e-02, -1.477102899079310409e-02, -1.474535293683730021e-02, -1.471965490329387068e-02, -1.469393493352641467e-02, -1.466819307093080067e-02, -1.464242935893474672e-02, -1.461664384099856454e-02, -1.459083656061390191e-02, -1.456500756130506800e-02, -1.453915688662744433e-02, -1.451328458016883788e-02, -1.448739068554850441e-02, -1.446147524641743821e-02, -1.443553830645785511e-02, -1.440957990938395925e-02, -1.438360009894083281e-02, -1.435759891890533296e-02, -1.433157641308554879e-02, -1.430553262532034513e-02, -1.427946759948033398e-02, -1.425338137946653184e-02, -1.422727400921147863e-02, -1.420114553267817770e-02, -1.417499599386073429e-02, -1.414882543678397039e-02, -1.412263390550346463e-02, -1.409642144410504574e-02, -1.407018809670550034e-02, -1.404393390745169862e-02, -1.401765892052119628e-02, -1.399136318012173322e-02, -1.396504673049142956e-02, -1.393870961589823050e-02, -1.391235188064059332e-02, -1.388597356904666680e-02, -1.385957472547449595e-02, -1.383315539431228570e-02, -1.380671561997795158e-02, -1.378025544691917001e-02, -1.375377491961288570e-02, -1.372727408256622234e-02, -1.370075298031515898e-02, -1.367421165742572185e-02, -1.364765015849249245e-02, -1.362106852814045158e-02, -1.359446681102267039e-02, -1.356784505182214058e-02, -1.354120329525023043e-02, -1.351454158604798415e-02, -1.348785996898465948e-02, -1.346115848885884141e-02, -1.343443719049768753e-02, -1.340769611875721433e-02, -1.338093531852171079e-02, -1.335415483470396049e-02, -1.332735471224577063e-02, -1.330053499611663116e-02, -1.327369573131475210e-02, -1.324683696286655180e-02, -1.321995873582662052e-02, -1.319306109527726249e-02, -1.316614408632930597e-02, -1.313920775412099132e-02, -1.311225214381884357e-02, -1.308527730061692824e-02, -1.305828326973724855e-02, -1.303127009642903247e-02, -1.300423782596952724e-02, -1.297718650366294635e-02, -1.295011617484150869e-02, -1.292302688486405768e-02, -1.289591867911728945e-02, -1.286879160301494449e-02, -1.284164570199751269e-02, -1.281448102153296374e-02, -1.278729760711582071e-02, -1.276009550426791296e-02, -1.273287475853718265e-02, -1.270563541549935352e-02, -1.267837752075564629e-02, -1.265110111993477532e-02, -1.262380625869120344e-02, -1.259649298270644306e-02, -1.256916133768777935e-02, -1.254181136936922090e-02, -1.251444312351075207e-02, -1.248705664589870069e-02, -1.245965198234489507e-02, -1.243222917868783660e-02, -1.240478828079137445e-02, -1.237732933454516356e-02, -1.234985238586491438e-02, -1.232235748069191936e-02, -1.229484466499306330e-02, -1.226731398476038799e-02, -1.223976548601189186e-02, -1.221219921479039898e-02, -1.218461521716442814e-02, -1.215701353922750243e-02, -1.212939422709845283e-02, -1.210175732692076248e-02, -1.207410288486339064e-02, -1.204643094711961918e-02, -1.201874155990818177e-02, -1.199103476947188662e-02, -1.196331062207874399e-02, -1.193556916402125842e-02, -1.190781044161602284e-02, -1.188003450120470560e-02, -1.185224138915266616e-02, -1.182443115185005840e-02, -1.179660383571101354e-02, -1.176875948717402698e-02, -1.174089815270105454e-02, -1.171301987877883255e-02, -1.168512471191715703e-02, -1.165721269865042410e-02, -1.162928388553604100e-02, -1.160133831915563171e-02, -1.157337604611417999e-02, -1.154539711304039713e-02, -1.151740156658585465e-02, -1.148938945342624016e-02, -1.146136082025978227e-02, -1.143331571380857246e-02, -1.140525418081723974e-02, -1.137717626805384054e-02, -1.134908202230943720e-02, -1.132097149039755501e-02, -1.129284471915511720e-02, -1.126470175544115604e-02, -1.123654264613781206e-02, -1.120836743814967312e-02, -1.118017617840400858e-02, -1.115196891384998695e-02, -1.112374569145980867e-02, -1.109550655822725586e-02, -1.106725156116900553e-02, -1.103898074732309435e-02, -1.101069416375021273e-02, -1.098239185753276809e-02, -1.095407387577522138e-02, -1.092574026560352157e-02, -1.089739107416533986e-02, -1.086902634863028648e-02, -1.084064613618944059e-02, -1.081225048405546826e-02, -1.078383943946201705e-02, -1.075541304966469609e-02, -1.072697136193966408e-02, -1.069851442358504476e-02, -1.067004228191927029e-02, -1.064155498428237014e-02, -1.061305257803510892e-02, -1.058453511055926916e-02, -1.055600262925701985e-02, -1.052745518155175954e-02, -1.049889281488701823e-02, -1.047031557672735251e-02, -1.044172351455714860e-02, -1.041311667588219574e-02, -1.038449510822771031e-02, -1.035585885913928132e-02, -1.032720797618313577e-02, -1.029854250694496945e-02, -1.026986249903088025e-02, -1.024116800006684251e-02, -1.021245905769874521e-02, -1.018373571959181254e-02, -1.015499803343162047e-02, -1.012624604692263786e-02, -1.009747980778955348e-02, -1.006869936377590563e-02, -1.003990476264500151e-02, -1.001109605217936037e-02, -9.982273280180814154e-03, -9.953436494469898588e-03, -9.924585742886836773e-03, -9.895721073290194778e-03, -9.866842533557929409e-03, -9.837950171586765449e-03, -9.809044035291772379e-03, -9.780124172607247354e-03, -9.751190631485506105e-03, -9.722243459897949788e-03, -9.693282705833793436e-03, -9.664308417301080770e-03, -9.635320642325959084e-03, -9.606319428952960274e-03, -9.577304825244182043e-03, -9.548276879280458845e-03, -9.519235639159868284e-03, -9.490181152998938482e-03, -9.461113468931739087e-03, -9.432032635110278521e-03, -9.402938699703655701e-03, -9.373831710899236183e-03, -9.344711716901387549e-03, -9.315578765931760430e-03, -9.286432906229795045e-03, -9.257274186051937109e-03, -9.228102653671915387e-03, -9.198918357380148417e-03, -9.169721345484613609e-03, -9.140511666309629468e-03, -9.111289368196981431e-03, -9.082054499504546227e-03, -9.052807108607429862e-03, -9.023547243897086373e-03, -8.994274953781761922e-03, -8.964990286685580595e-03, -8.935693291049718809e-03, -8.906384015330982840e-03, -8.877062508002891289e-03, -8.847728817555050584e-03, -8.818382992492646705e-03, -8.789025081337486014e-03, -8.759655132626602281e-03, -8.730273194913503940e-03, -8.700879316766744684e-03, -8.671473546771064911e-03, -8.642055933526541708e-03, -8.612626525648984371e-03, -8.583185371769058367e-03, -8.553732520533447597e-03, -8.524268020603398971e-03, -8.494791920655841294e-03, -8.465304269382634139e-03, -8.435805115490807235e-03, -8.406294507701804128e-03, -8.376772494752599343e-03, -8.347239125394412956e-03, -8.317694448393225803e-03, -8.288138512529887036e-03, -8.258571366599614522e-03, -8.228993059412279334e-03, -8.199403639791602583e-03, -8.169803156576270833e-03, -8.140191658618477211e-03, -8.110569194785274480e-03, -8.080935813957012062e-03, -8.051291565028612790e-03, -8.021636496908624014e-03, -7.991970658519630469e-03, -7.962294098797416397e-03, -7.932606866692103534e-03, -7.902909011166671382e-03, -7.873200581198143769e-03, -7.843481625776726682e-03, -7.813752193906184709e-03, -7.784012334603137608e-03, -7.754262096897414185e-03, -7.724501529832393174e-03, -7.694730682463815814e-03, -7.664949603860849239e-03, -7.635158343105317991e-03, -7.605356949292009332e-03, -7.575545471527863998e-03, -7.545723958933121117e-03, -7.515892460639859302e-03, -7.486051025793086060e-03, -7.456199703550043037e-03, -7.426338543080390764e-03, -7.396467593565514767e-03, -7.366586904199548189e-03, -7.336696524188034314e-03, -7.306796502749146952e-03, -7.276886889112241935e-03, -7.246967732519007249e-03, -7.217039082222820312e-03, -7.187100987488222355e-03, -7.157153497591934102e-03, -7.127196661821575546e-03, -7.097230529476718057e-03, -7.067255149867486194e-03, -7.037270572316405189e-03, -7.007276846155942839e-03, -6.977274020730524391e-03, -6.947262145394868076e-03, -6.917241269515282676e-03, -6.887211442468256332e-03, -6.857172713641501716e-03, -6.827125132433223102e-03, -6.797068748252462454e-03, -6.767003610518151392e-03, -6.736929768660408768e-03, -6.706847272119152020e-03, -6.676756170344608915e-03, -6.646656512797468469e-03, -6.616548348948417778e-03, -6.586431728278270385e-03, -6.556306700277325303e-03, -6.526173314446431263e-03, -6.496031620295500061e-03, -6.465881667344653208e-03, -6.435723505123507222e-03, -6.405557183171344503e-03, -6.375382751036422907e-03, -6.345200258277026995e-03, -6.315009754460100197e-03, -6.284811289162420961e-03, -6.254604911969291296e-03, -6.224390672475540315e-03, -6.194168620284968250e-03, -6.163938805009756654e-03, -6.133701276271576880e-03, -6.103456083700184095e-03, -6.073203276934618575e-03, -6.042942905621644448e-03, -6.012675019417728153e-03, -5.982399667986550845e-03, -5.952116901000921792e-03, -5.921826768141265698e-03, -5.891529319096830072e-03, -5.861224603564269692e-03, -5.830912671248755959e-03, -5.800593571863182397e-03, -5.770267355128495118e-03, -5.739934070772837599e-03, -5.709593768532748512e-03, -5.679246498151680270e-03, -5.648892309381250629e-03, -5.618531251979863583e-03, -5.588163375713777956e-03, -5.557788730356495038e-03, -5.527407365688241647e-03, -5.497019331497004883e-03, -5.466624677577144355e-03, -5.436223453730440816e-03, -5.405815709765388402e-03, -5.375401495497465244e-03, -5.344980860748288660e-03, -5.314553855346832063e-03, -5.284120529127882791e-03, -5.253680931933405601e-03, -5.223235113611039530e-03, -5.192783124015273172e-03, -5.162325013006575578e-03, -5.131860830451771827e-03, -5.101390626223393371e-03, -5.070914450199955591e-03, -5.040432352266150350e-03, -5.009944382312395833e-03, -4.979450590234942367e-03, -4.948951025935212356e-03, -4.918445739320872340e-03, -4.887934780304378432e-03, -4.857418198804301646e-03, -4.826896044743823021e-03, -4.796368368051905431e-03, -4.765835218662503418e-03, -4.735296646514795642e-03, -4.704752701552474513e-03, -4.674203433724830395e-03, -4.643648892985291834e-03, -4.613089129292746553e-03, -4.582524192609889122e-03, -4.551954132905215028e-03, -4.521379000150708288e-03, -4.490798844322927384e-03, -4.460213715403327922e-03, -4.429623663376955518e-03, -4.399028738233503981e-03, -4.368428989966668258e-03, -4.337824468574303163e-03, -4.307215224057680050e-03, -4.276601306422662084e-03, -4.245982765678183758e-03, -4.215359651837571019e-03, -4.184732014917064147e-03, -4.154099904936984361e-03, -4.123463371920928905e-03, -4.092822465896041664e-03, -4.062177236892240348e-03, -4.031527734943337118e-03, -4.000874010085628263e-03, -3.970216112358929822e-03, -3.939554091806051102e-03, -3.908887998472171041e-03, -3.878217882405968816e-03, -3.847543793658141954e-03, -3.816865782282754648e-03, -3.786183898335713366e-03, -3.755498191875946464e-03, -3.724808712964602746e-03, -3.694115511665332051e-03, -3.663418638043477310e-03, -3.632718142167282345e-03, -3.602014074106326715e-03, -3.571306483932900483e-03, -3.540595421720351462e-03, -3.509880937545052388e-03, -3.479163081483921567e-03, -3.448441903616419110e-03, -3.417717454023086725e-03, -3.386989782785956252e-03, -3.356258939988847161e-03, -3.325524975716734680e-03, -3.294787940056042100e-03, -3.264047883093881396e-03, -3.233304854919120518e-03, -3.202558905620975227e-03, -3.171810085290307536e-03, -3.141058444018122574e-03, -3.110304031896735620e-03, -3.079546899018997981e-03, -3.048787095478522509e-03, -3.018024671368972362e-03, -2.987259676785120922e-03, -2.956492161821458377e-03, -2.925722176573261613e-03, -2.894949771136023919e-03, -2.864174995604858685e-03, -2.833397900075608749e-03, -2.802618534643407447e-03, -2.771836949403952335e-03, -2.741053194452055825e-03, -2.710267319882780131e-03, -2.679479375790665748e-03, -2.648689412269973013e-03, -2.617897479413935739e-03, -2.587103627315878382e-03, -2.556307906067749325e-03, -2.525510365761259729e-03, -2.494711056487103340e-03, -2.463910028335219299e-03, -2.433107331394033200e-03, -2.402303015751574688e-03, -2.371497131494182918e-03, -2.340689728706955852e-03, -2.309880857474005695e-03, -2.279070567877865619e-03, -2.248258909999745637e-03, -2.217445933918781465e-03, -2.186631689713127834e-03, -2.155816227458535583e-03, -2.124999597229621472e-03, -2.094181849098416658e-03, -2.063363033135508142e-03, -2.032543199409231685e-03, -2.001722397985979292e-03, -1.970900678929395598e-03, -1.940078092301533198e-03, -1.909254688161347770e-03, -1.878430516565877907e-03, -1.847605627569437383e-03, -1.816780071223889894e-03, -1.785953897578052962e-03, -1.755127156677968765e-03, -1.724299898567322213e-03, -1.693472173286165051e-03, -1.662644030872048638e-03, -1.631815521359235299e-03, -1.600986694778979346e-03, -1.570157601158750360e-03, -1.539328290523350349e-03, -1.508498812893476751e-03, -1.477669218286823327e-03, -1.446839556717329249e-03, -1.416009878195426726e-03, -1.385180232727287923e-03, -1.354350670315927372e-03, -1.323521240959776900e-03, -1.292691994653956964e-03, -1.261862981388812109e-03, -1.231034251151064780e-03, -1.200205853923196021e-03, -1.169377839682855672e-03, -1.138550258403985384e-03, -1.107723160055358851e-03, -1.076896594601885453e-03, -1.046070612002974413e-03, -1.015245262214519535e-03, -9.844205951864129153e-04, -9.535966608645267536e-04, -9.227735091890890010e-04, -8.919511900959694413e-04, -8.611297535152339071e-04, -8.303092493722624180e-04, -7.994897275869803721e-04, -7.686712380741221162e-04, -7.378538307424692931e-04, -7.070375554959621497e-04, -6.762224622324291765e-04, -6.454086008440111395e-04, -6.145960212174324559e-04, -5.837847732333983778e-04, -5.529749067668647414e-04, -5.221664716862677502e-04, -4.913595178546452565e-04, -4.605540951281848522e-04, -4.297502533573423320e-04, -3.989480423860809082e-04, -3.681475120521261074e-04, -3.373487121862043885e-04, -3.065516926131647509e-04, -2.757565031505239514e-04, -2.449631936097573012e-04, -2.141718137948507409e-04, -1.833824135034172170e-04, -1.525950425261055196e-04, -1.218097506460023052e-04, -9.102658763975618353e-05, -6.024560327612199994e-05, -2.946684731725605054e-05, 1.309630482909408198e-06, 3.208378037668672365e-05, 6.285555262511502840e-05, 9.362489749598110840e-05, 1.243917652654441758e-04, 1.551561062167414737e-04, 1.859178706416422658e-04, 2.166770088393267307e-04, 2.474334711171502564e-04, 2.781872077903825547e-04, 3.089381691829722943e-04, 3.396863056264243013e-04, 3.704315674612564287e-04, 4.011739050357031214e-04, 4.319132687071667296e-04, 4.626496088410995337e-04, 4.933828758115958810e-04, 5.241130200019900693e-04, 5.548399918037257407e-04, 5.855637416178196631e-04, 6.162842198537345391e-04, 6.470013769301451037e-04, 6.777151632746717357e-04, 7.084255293246542523e-04, 7.391324255260206533e-04, 7.698358023347474325e-04, 8.005356102155637395e-04, 8.312317996433975969e-04, 8.619243211022631834e-04, 8.926131250860233537e-04, 9.232981620981246590e-04, 9.539793826521913815e-04, 9.846567372717601220e-04, 1.015330176489852082e-03, 1.045999650850411690e-03, 1.076665110906342791e-03, 1.107326507221978017e-03, 1.137983790371102514e-03, 1.168636910938575680e-03, 1.199285819519048781e-03, 1.229930466718394356e-03, 1.260570803152609226e-03, 1.291206779448564107e-03, 1.321838346243740803e-03, 1.352465454187004590e-03, 1.383088053937481850e-03, 1.413706096165996207e-03, 1.444319531553795669e-03, 1.474928310794162024e-03, 1.505532384590447343e-03, 1.536131703658352981e-03, 1.566726218724840379e-03, 1.597315880527851346e-03, 1.627900639817577225e-03, 1.658480447355361676e-03, 1.689055253914453986e-03, 1.719625010279726956e-03, 1.750189667248476825e-03, 1.780749175629269898e-03, 1.811303486243415325e-03, 1.841852549923657769e-03, 1.872396317515626334e-03, 1.902934739876735839e-03, 1.933467767876917995e-03, 1.963995352398386577e-03, 1.994517444336377926e-03, 2.025033994598053090e-03, 2.055544954103918995e-03, 2.086050273786736221e-03, 2.116549904592096229e-03, 2.147043797479010734e-03, 2.177531903418800617e-03, 2.208014173396537910e-03, 2.238490558409758201e-03, 2.268961009469900019e-03, 2.299425477601207621e-03, 2.329883913841459143e-03, 2.360336269241738050e-03, 2.390782494867167360e-03, 2.421222541795793343e-03, 2.451656361120069585e-03, 2.482083903945511705e-03, 2.512505121392345341e-03, 2.542919964593540715e-03, 2.573328384697083811e-03, 2.603730332864882206e-03, 2.634125760272493146e-03, 2.664514618110393803e-03, 2.694896857582871480e-03, 2.725272429908783423e-03, 2.755641286321281868e-03, 2.786003378068578618e-03, 2.816358656412846963e-03, 2.846707072631642858e-03, 2.877048578016622084e-03, 2.907383123874990923e-03, 2.937710661528367736e-03, 2.968031142313591782e-03, 2.998344517582400125e-03, 3.028650738702217370e-03, 3.058949757055047600e-03, 3.089241524038906835e-03, 3.119525991066685044e-03, 3.149803109566774555e-03, 3.180072830983635569e-03, 3.210335106776676401e-03, 3.240589888421715851e-03, 3.270837127409671318e-03, 3.301076775248015099e-03, 3.331308783459662869e-03, 3.361533103583719175e-03, 3.391749687175216361e-03, 3.421958485805884354e-03, 3.452159451063025256e-03, 3.482352534550946233e-03, 3.512537687889697932e-03, 3.542714862716661757e-03, 3.572884010684596132e-03, 3.603045083464089839e-03, 3.633198032741589197e-03, 3.663342810220860009e-03, 3.693479367622542163e-03, 3.723607656683872516e-03, 3.753727629159289442e-03, 3.783839236820163519e-03, 3.813942431455536949e-03, 3.844037164871068855e-03, 3.874123388890399634e-03, 3.904201055353901089e-03, 3.934270116120118857e-03, 3.964330523064660446e-03, 3.994382228080897365e-03, 4.024425183079809870e-03, 4.054459339990630976e-03, 4.084484650759818633e-03, 4.114501067352430499e-03, 4.144508541751031928e-03, 4.174507025956481800e-03, 4.204496471987615933e-03, 4.234476831881872454e-03, 4.264448057695028119e-03, 4.294410101500728202e-03, 4.324362915391782337e-03, 4.354306451479070771e-03, 4.384240661892230446e-03, 4.414165498779491076e-03, 4.444080914308312646e-03, 4.473986860664387090e-03, 4.503883290052979223e-03, 4.533770154697885045e-03, 4.563647406842148181e-03, 4.593514998747810080e-03, 4.623372882696648138e-03, 4.653221010989081960e-03, 4.683059335945602766e-03, 4.712887809905475824e-03, 4.742706385228195008e-03, 4.772515014292381258e-03, 4.802313649496297784e-03, 4.832102243258534421e-03, 4.861880748016841024e-03, 4.891649116229518715e-03, 4.921407300374241144e-03, 4.951155252949403229e-03, 4.980892926473030023e-03, 5.010620273483559935e-03, 5.040337246539525543e-03, 5.070043798220378456e-03, 5.099739881125300162e-03, 5.129425447874689549e-03, 5.159100451109034473e-03, 5.188764843489674164e-03, 5.218418577698493051e-03, 5.248061606438744753e-03, 5.277693882433856856e-03, 5.307315358428788335e-03, 5.336925987189501328e-03, 5.366525721502760776e-03, 5.396114514176693876e-03, 5.425692318040529864e-03, 5.455259085945337282e-03, 5.484814770762970124e-03, 5.514359325387395774e-03, 5.543892702733687131e-03, 5.573414855738716492e-03, 5.602925737360908362e-03, 5.632425300580962829e-03, 5.661913498400824273e-03, 5.691390283845011028e-03, 5.720855609959380264e-03, 5.750309429812579080e-03, 5.779751696494906527e-03, 5.809182363118914685e-03, 5.838601382819922150e-03, 5.868008708755028703e-03, 5.897404294104415488e-03, 5.926788092070157596e-03, 5.956160055877767964e-03, 5.985520138774277042e-03, 6.014868294030630176e-03, 6.044204474939787221e-03, 6.073528634818264708e-03, 6.102840727004918073e-03, 6.132140704862283458e-03, 6.161428521775541220e-03, 6.190704131153260993e-03, 6.219967486427092906e-03, 6.249218541052529129e-03, 6.278457248507829207e-03, 6.307683562295437335e-03, 6.336897435940662231e-03, 6.366098822993131699e-03, 6.395287677025697157e-03, 6.424463951634997415e-03, 6.453627600442019864e-03, 6.482778577091031884e-03, 6.511916835250979897e-03, 6.541042328614366137e-03, 6.570155010898059630e-03, 6.599254835842941445e-03, 6.628341757214735626e-03, 6.657415728802836517e-03, 6.686476704421781547e-03, 6.715524637909950183e-03, 6.744559483130958648e-03, 6.773581193972604345e-03, 6.802589724347616988e-03, 6.831585028193360234e-03, 6.860567059472352965e-03, 6.889535772172140048e-03, 6.918491120304796210e-03, 6.947433057908257437e-03, 6.976361539044563694e-03, 7.005276517802094122e-03, 7.034177948293744709e-03, 7.063065784658460917e-03, 7.091939981059990419e-03, 7.120800491688281282e-03, 7.149647270758363073e-03, 7.178480272511163912e-03, 7.207299451213159194e-03, 7.236104761157165222e-03, 7.264896156661199492e-03, 7.293673592069957815e-03, 7.322437021753460361e-03, 7.351186400108559137e-03, 7.379921681557733218e-03, 7.408642820549786109e-03, 7.437349771560259476e-03, 7.466042489090502464e-03, 7.494720927668960600e-03, 7.523385041850157509e-03, 7.552034786215360181e-03, 7.580670115372376006e-03, 7.609290983956251003e-03, 7.637897346628189088e-03, 7.666489158077011840e-03, 7.695066373017785469e-03, 7.723628946193288394e-03, 7.752176832372957398e-03, 7.780709986353544216e-03, 7.809228362958900438e-03, 7.837731917040697410e-03, 7.866220603477320356e-03, 7.894694377175191097e-03, 7.923153193068329173e-03, 7.951597006117468863e-03, 7.980025771312137389e-03, 8.008439443668779675e-03, 8.036837978232356031e-03, 8.065221330075027228e-03, 8.093589454297608204e-03, 8.121942306028409261e-03, 8.150279840424042715e-03, 8.178602012669166157e-03, 8.206908777977072258e-03, 8.235200091588840490e-03, 8.263475908774502859e-03, 8.291736184831900724e-03, 8.319980875088254721e-03, 8.348209934898221871e-03, 8.376423319646119497e-03, 8.404620984744773371e-03, 8.432802885635450052e-03, 8.460968977788831807e-03, 8.489119216704092002e-03, 8.517253557909630624e-03, 8.545371956962718660e-03, 8.573474369450268320e-03, 8.601560750987786996e-03, 8.629631057220766774e-03, 8.657685243823320942e-03, 8.685723266499719222e-03, 8.713745080983248056e-03, 8.741750643036881943e-03, 8.769739908453153335e-03, 8.797712833054683462e-03, 8.825669372693337525e-03, 8.853609483251386955e-03, 8.881533120640636852e-03, 8.909440240802769459e-03, 8.937330799710116111e-03, 8.965204753364390891e-03, 8.993062057798238002e-03, 9.020902669073868271e-03, 9.048726543284486834e-03, 9.076533636553177700e-03, 9.104323905033750303e-03, 9.132097304910305816e-03, 9.159853792398081965e-03, 9.187593323742328927e-03, 9.215315855219681496e-03, 9.243021343137000287e-03, 9.270709743832710945e-03, 9.298381013675229012e-03, 9.326035109064965273e-03, 9.353671986432724600e-03, 9.381291602240871691e-03, 9.408893912983004940e-03, 9.436478875183739595e-03, 9.464046445399205629e-03, 9.491596580216728543e-03, 9.519129236255717552e-03, 9.546644370166383620e-03, 9.574141938631323262e-03, 9.601621898364137708e-03, 9.629084206110796393e-03, 9.656528818648722756e-03, 9.683955692787305988e-03, 9.711364785367786537e-03, 9.738756053263946527e-03, 9.766129453380968314e-03, 9.793484942656907263e-03, 9.820822478061519076e-03, 9.848142016597080314e-03, 9.875443515298065744e-03, 9.902726931231691301e-03, 9.929992221497690313e-03, 9.957239343227912778e-03, 9.984468253587406097e-03, 1.001167890977357200e-02, 1.003887126901667828e-02, 1.006604528857966280e-02, 1.009320092575882559e-02, 1.012033813788293379e-02, 1.014745688231428501e-02, 1.017455711644785904e-02, 1.020163879771202910e-02, 1.022870188356817499e-02, 1.025574633151145852e-02, 1.028277209906983472e-02, 1.030977914380528868e-02, 1.033676742331273227e-02, 1.036373689522116642e-02, 1.039068751719290223e-02, 1.041761924692385759e-02, 1.044453204214422851e-02, 1.047142586061740495e-02, 1.049830066014132042e-02, 1.052515639854725675e-02, 1.055199303370108616e-02, 1.057881052350240735e-02, 1.060560882588510757e-02, 1.063238789881710070e-02, 1.065914770030110953e-02, 1.068588818837360940e-02, 1.071260932110607023e-02, 1.073931105660403014e-02, 1.076599335300774084e-02, 1.079265616849188654e-02, 1.081929946126632819e-02, 1.084592318957505568e-02, 1.087252731169735358e-02, 1.089911178594732931e-02, 1.092567657067380731e-02, 1.095222162426075403e-02, 1.097874690512700042e-02, 1.100525237172708670e-02, 1.103173798255004980e-02, 1.105820369612082674e-02, 1.108464947099927975e-02, 1.111107526578077910e-02, 1.113748103909601751e-02, 1.116386674961167454e-02, 1.119023235602939481e-02, 1.121657781708713594e-02, 1.124290309155790563e-02, 1.126920813825114075e-02, 1.129549291601166829e-02, 1.132175738372020665e-02, 1.134800150029396243e-02, 1.137422522468546984e-02, 1.140042851588409130e-02, 1.142661133291465736e-02, 1.145277363483892044e-02, 1.147891538075435265e-02, 1.150503652979509121e-02, 1.153113704113140590e-02, 1.155721687397059591e-02, 1.158327598755583103e-02, 1.160931434116756547e-02, 1.163533189412240161e-02, 1.166132860577393481e-02, 1.168730443551228675e-02, 1.171325934276499364e-02, 1.173919328699583008e-02, 1.176510622770624535e-02, 1.179099812443410757e-02, 1.181686893675495953e-02, 1.184271862428115142e-02, 1.186854714666218599e-02, 1.189435446358535348e-02, 1.192014053477477922e-02, 1.194590531999246107e-02, 1.197164877903759278e-02, 1.199737087174700817e-02, 1.202307155799497637e-02, 1.204875079769389228e-02, 1.207440855079337967e-02, 1.210004477728135290e-02, 1.212565943718301939e-02, 1.215125249056216335e-02, 1.217682389752004421e-02, 1.220237361819612870e-02, 1.222790161276790522e-02, 1.225340784145121514e-02, 1.227889226450022166e-02, 1.230435484220693612e-02, 1.232979553490240465e-02, 1.235521430295510176e-02, 1.238061110677304844e-02, 1.240598590680195949e-02, 1.243133866352682734e-02, 1.245666933747070597e-02, 1.248197788919592349e-02, 1.250726427930316971e-02, 1.253252846843214141e-02, 1.255777041726126482e-02, 1.258299008650840163e-02, 1.260818743692983246e-02, 1.263336242932151972e-02, 1.265851502451798179e-02, 1.268364518339354895e-02, 1.270875286686132949e-02, 1.273383803587382901e-02, 1.275890065142332164e-02, 1.278394067454100003e-02, 1.280895806629805608e-02, 1.283395278780494891e-02, 1.285892480021182289e-02, 1.288387406470838104e-02, 1.290880054252449213e-02, 1.293370419492930433e-02, 1.295858498323238482e-02, 1.298344286878262005e-02, 1.300827781296952541e-02, 1.303308977722218188e-02, 1.305787872300992816e-02, 1.308264461184218894e-02, 1.310738740526889816e-02, 1.313210706487985373e-02, 1.315680355230555362e-02, 1.318147682921705366e-02, 1.320612685732498043e-02, 1.323075359838158174e-02, 1.325535701417883579e-02, 1.327993706655002971e-02, 1.330449371736853147e-02, 1.332902692854906306e-02, 1.335353666204670310e-02, 1.337802287985754950e-02, 1.340248554401852511e-02, 1.342692461660795200e-02, 1.345134005974457474e-02, 1.347573183558889789e-02, 1.350009990634197868e-02, 1.352444423424666899e-02, 1.354876478158667692e-02, 1.357306151068710109e-02, 1.359733438391470643e-02, 1.362158336367735000e-02, 1.364580841242479282e-02, 1.367000949264805289e-02, 1.369418656687987519e-02, 1.371833959769456872e-02, 1.374246854770854939e-02, 1.376657337957955772e-02, 1.379065405600765799e-02, 1.381471053973434837e-02, 1.383874279354365376e-02, 1.386275078026112141e-02, 1.388673446275462582e-02, 1.391069380393398537e-02, 1.393462876675162498e-02, 1.395853931420175907e-02, 1.398242540932139594e-02, 1.400628701518943919e-02, 1.403012409492737297e-02, 1.405393661169943714e-02, 1.407772452871198197e-02, 1.410148780921439970e-02, 1.412522641649818084e-02, 1.414894031389815100e-02, 1.417262946479151339e-02, 1.419629383259827723e-02, 1.421993338078134626e-02, 1.424354807284685526e-02, 1.426713787234343452e-02, 1.429070274286335131e-02, 1.431424264804133199e-02, 1.433775755155594633e-02, 1.436124741712811737e-02, 1.438471220852291337e-02, 1.440815188954805773e-02, 1.443156642405502878e-02, 1.445495577593878915e-02, 1.447831990913747528e-02, 1.450165878763296813e-02, 1.452497237545052715e-02, 1.454826063665949631e-02, 1.457152353537244371e-02, 1.459476103574611737e-02, 1.461797310198072360e-02, 1.464115969832071283e-02, 1.466432078905413952e-02, 1.468745633851312703e-02, 1.471056631107372191e-02, 1.473365067115654098e-02, 1.475670938322566801e-02, 1.477974241179001377e-02, 1.480274972140232029e-02, 1.482573127665974370e-02, 1.484868704220373113e-02, 1.487161698272034330e-02, 1.489452106294013832e-02, 1.491739924763777446e-02, 1.494025150163304748e-02, 1.496307778979000074e-02, 1.498587807701745774e-02, 1.500865232826878275e-02, 1.503140050854270132e-02, 1.505412258288214844e-02, 1.507681851637540302e-02, 1.509948827415529514e-02, 1.512213182140023822e-02, 1.514474912333287418e-02, 1.516734014522177522e-02, 1.518990485238003868e-02, 1.521244321016657422e-02, 1.523495518398491379e-02, 1.525744073928447450e-02, 1.527989984155975201e-02, 1.530233245635058241e-02, 1.532473854924262975e-02, 1.534711808586660363e-02, 1.536947103189938157e-02, 1.539179735306288148e-02, 1.541409701512518049e-02, 1.543636998389988010e-02, 1.545861622524626403e-02, 1.548083570506953929e-02, 1.550302838932107741e-02, 1.552519424399769789e-02, 1.554733323514277156e-02, 1.556944532884523870e-02, 1.559153049124041568e-02, 1.561358868850950057e-02, 1.563561988688036072e-02, 1.565762405262655435e-02, 1.567960115206841476e-02, 1.570155115157246054e-02, 1.572347401755153778e-02, 1.574536971646494851e-02, 1.576723821481855123e-02, 1.578907947916494831e-02, 1.581089347610295515e-02, 1.583268017227850918e-02, 1.585443953438387191e-02, 1.587617152915827418e-02, 1.589787612338756234e-02, 1.591955328390476723e-02, 1.594120297758947272e-02, 1.596282517136862061e-02, 1.598441983221571272e-02, 1.600598692715175450e-02, 1.602752642324457855e-02, 1.604903828760909784e-02, 1.607052248740784006e-02, 1.609197898985011838e-02, 1.611340776219304799e-02, 1.613480877174059899e-02, 1.615618198584457821e-02, 1.617752737190399082e-02, 1.619884489736545322e-02, 1.622013452972293629e-02, 1.624139623651846970e-02, 1.626262998534125023e-02, 1.628383574382859939e-02, 1.630501347966525905e-02, 1.632616316058392927e-02, 1.634728475436499073e-02, 1.636837822883713961e-02, 1.638944355187642310e-02, 1.641048069140756127e-02, 1.643148961540263561e-02, 1.645247029188243865e-02, 1.647342268891547473e-02, 1.649434677461842844e-02, 1.651524251715670230e-02, 1.653610988474329621e-02, 1.655694884564022640e-02, 1.657775936815738399e-02, 1.659854142065329830e-02, 1.661929497153484189e-02, 1.664001998925773371e-02, 1.666071644232578614e-02, 1.668138429929192507e-02, 1.670202352875729823e-02, 1.672263409937214951e-02, 1.674321597983527421e-02, 1.676376913889424808e-02, 1.678429354534544116e-02, 1.680478916803441330e-02, 1.682525597585551175e-02, 1.684569393775195781e-02, 1.686610302271623896e-02, 1.688648319978979309e-02, 1.690683443806317507e-02, 1.692715670667602895e-02, 1.694744997481760843e-02, 1.696771421172593025e-02, 1.698794938668884286e-02, 1.700815546904317979e-02, 1.702833242817531831e-02, 1.704848023352099548e-02, 1.706859885456572107e-02, 1.708868826084415996e-02, 1.710874842194097870e-02, 1.712877930749012387e-02, 1.714878088717560964e-02, 1.716875313073077530e-02, 1.718869600793892366e-02, 1.720860948863329673e-02, 1.722849354269673922e-02, 1.724834814006235076e-02, 1.726817325071285450e-02, 1.728796884468110709e-02, 1.730773489204994256e-02, 1.732747136295256091e-02, 1.734717822757188971e-02, 1.736685545614138904e-02, 1.738650301894441308e-02, 1.740612088631500465e-02, 1.742570902863719434e-02, 1.744526741634536138e-02, 1.746479601992436889e-02, 1.748429480990964374e-02, 1.750376375688689201e-02, 1.752320283149249106e-02, 1.754261200441360052e-02, 1.756199124638729153e-02, 1.758134052820213566e-02, 1.760065982069684495e-02, 1.761994909476121557e-02, 1.763920832133555189e-02, 1.765843747141131875e-02, 1.767763651603062452e-02, 1.769680542628654374e-02, 1.771594417332303037e-02, 1.773505272833540009e-02, 1.775413106256953921e-02, 1.777317914732285883e-02, 1.779219695394353498e-02, 1.781118445383135171e-02, 1.783014161843691700e-02, 1.784906841926221788e-02, 1.786796482786070367e-02, 1.788683081583694601e-02, 1.790566635484718699e-02, 1.792447141659886042e-02, 1.794324597285093872e-02, 1.796198999541381153e-02, 1.798070345614980609e-02, 1.799938632697234073e-02, 1.801803857984698651e-02, 1.803666018679050270e-02, 1.805525111987179090e-02, 1.807381135121130175e-02, 1.809234085298131248e-02, 1.811083959740584365e-02, 1.812930755676122122e-02, 1.814774470337513282e-02, 1.816615100962782128e-02, 1.818452644795107848e-02, 1.820287099082882817e-02, 1.822118461079742097e-02, 1.823946728044486751e-02, 1.825771897241184813e-02, 1.827593965939076914e-02, 1.829412931412677246e-02, 1.831228790941691331e-02, 1.833041541811071540e-02, 1.834851181311009799e-02, 1.836657706736945922e-02, 1.838461115389553382e-02, 1.840261404574766030e-02, 1.842058571603763517e-02, 1.843852613792990730e-02, 1.845643528464147032e-02, 1.847431312944203957e-02, 1.849215964565380926e-02, 1.850997480665204920e-02, 1.852775858586468496e-02, 1.854551095677238123e-02, 1.856323189290859377e-02, 1.858092136785970475e-02, 1.859857935526533848e-02, 1.861620582881754610e-02, 1.863380076226186371e-02, 1.865136412939658039e-02, 1.866889590407327243e-02, 1.868639606019649804e-02, 1.870386457172396044e-02, 1.872130141266653905e-02, 1.873870655708859134e-02, 1.875607997910747407e-02, 1.877342165289404632e-02, 1.879073155267245443e-02, 1.880800965272014930e-02, 1.882525592736797662e-02, 1.884247035100046139e-02, 1.885965289805567602e-02, 1.887680354302477201e-02, 1.889392226045304851e-02, 1.891100902493902253e-02, 1.892806381113494238e-02, 1.894508659374673915e-02, 1.896207734753429727e-02, 1.897903604731091334e-02, 1.899596266794405935e-02, 1.901285718435459862e-02, 1.902971957151776417e-02, 1.904654980446215604e-02, 1.906334785827080644e-02, 1.908011370808028462e-02, 1.909684732908172727e-02, 1.911354869651976998e-02, 1.913021778569348394e-02, 1.914685457195597004e-02, 1.916345903071441092e-02, 1.918003113743035198e-02, 1.919657086761929199e-02, 1.921307819685143248e-02, 1.922955310075081040e-02, 1.924599555499621056e-02, 1.926240553532047872e-02, 1.927878301751100032e-02, 1.929512797740961030e-02, 1.931144039091262088e-02, 1.932772023397084926e-02, 1.934396748258971482e-02, 1.936018211282914889e-02, 1.937636410080372656e-02, 1.939251342268251410e-02, 1.940863005468966562e-02, 1.942471397310367373e-02, 1.944076515425797319e-02, 1.945678357454090970e-02, 1.947276921039533745e-02, 1.948872203831911870e-02, 1.950464203486501971e-02, 1.952052917664084952e-02, 1.953638344030917545e-02, 1.955220480258773250e-02, 1.956799324024909720e-02, 1.958374873012124276e-02, 1.959947124908665433e-02, 1.961516077408360925e-02, 1.963081728210507373e-02, 1.964644075019952169e-02, 1.966203115547030672e-02, 1.967758847507650524e-02, 1.969311268623214276e-02, 1.970860376620647489e-02, 1.972406169232462925e-02, 1.973948644196652641e-02, 1.975487799256796240e-02, 1.977023632161992520e-02, 1.978556140666912211e-02, 1.980085322531753567e-02, 1.981611175522284690e-02, 1.983133697409816820e-02, 1.984652885971256372e-02, 1.986168738989035551e-02, 1.987681254251187635e-02, 1.989190429551300487e-02, 1.990696262688533558e-02, 1.992198751467624124e-02, 1.993697893698908805e-02, 1.995193687198278457e-02, 1.996686129787249298e-02, 1.998175219292877558e-02, 1.999660953547875361e-02, 2.001143330390494496e-02, 2.002622347664602398e-02, 2.004098003219696028e-02, 2.005570294910841503e-02, 2.007039220598745913e-02, 2.008504778149695219e-02, 2.009966965435617745e-02, 2.011425780334035948e-02, 2.012881220728116038e-02, 2.014333284506630850e-02, 2.015781969564002171e-02, 2.017227273800243151e-02, 2.018669195121044688e-02, 2.020107731437707430e-02, 2.021542880667165712e-02, 2.022974640732003865e-02, 2.024403009560460029e-02, 2.025827985086418176e-02, 2.027249565249389721e-02, 2.028667747994574583e-02, 2.030082531272804636e-02, 2.031493913040572849e-02, 2.032901891260032248e-02, 2.034306463899023670e-02, 2.035707628931026497e-02, 2.037105384335220065e-02, 2.038499728096428501e-02, 2.039890658205167212e-02, 2.041278172657625886e-02, 2.042662269455686880e-02, 2.044042946606899197e-02, 2.045420202124527409e-02, 2.046794034027487469e-02, 2.048164440340434836e-02, 2.049531419093682943e-02, 2.050894968323253159e-02, 2.052255086070886234e-02, 2.053611770384006913e-02, 2.054965019315758631e-02, 2.056314830924987208e-02, 2.057661203276258191e-02, 2.059004134439838818e-02, 2.060343622491737220e-02, 2.061679665513659748e-02, 2.063012261593057117e-02, 2.064341408823075485e-02, 2.065667105302627926e-02, 2.066989349136335793e-02, 2.068308138434547111e-02, 2.069623471313362592e-02, 2.070935345894620375e-02, 2.072243760305894286e-02, 2.073548712680509457e-02, 2.074850201157538848e-02, 2.076148223881792154e-02, 2.077442779003845635e-02, 2.078733864680007773e-02, 2.080021479072389698e-02, 2.081305620348802149e-02, 2.082586286682878637e-02, 2.083863476253982466e-02, 2.085137187247240037e-02, 2.086407417853556115e-02, 2.087674166269623197e-02, 2.088937430697891326e-02, 2.090197209346601401e-02, 2.091453500429745274e-02, 2.092706302167142776e-02, 2.093955612784360876e-02, 2.095201430512766763e-02, 2.096443753589517789e-02, 2.097682580257560075e-02, 2.098917908765651416e-02, 2.100149737368321723e-02, 2.101378064325908415e-02, 2.102602887904558501e-02, 2.103824206376221639e-02, 2.105042018018640076e-02, 2.106256321115385424e-02, 2.107467113955830210e-02, 2.108674394835159671e-02, 2.109878162054376269e-02, 2.111078413920303848e-02, 2.112275148745570985e-02, 2.113468364848661296e-02, 2.114658060553848903e-02, 2.115844234191261580e-02, 2.117026884096846404e-02, 2.118206008612368366e-02, 2.119381606085454436e-02, 2.120553674869544644e-02, 2.121722213323942036e-02, 2.122887219813760634e-02, 2.124048692709985114e-02, 2.125206630389428475e-02, 2.126361031234752855e-02, 2.127511893634474391e-02, 2.128659215982961483e-02, 2.129802996680429591e-02, 2.130943234132973152e-02, 2.132079926752511456e-02, 2.133213072956850059e-02, 2.134342671169649902e-02, 2.135468719820431474e-02, 2.136591217344573426e-02, 2.137710162183354898e-02, 2.138825552783901740e-02, 2.139937387599217047e-02, 2.141045665088182892e-02, 2.142150383715549222e-02, 2.143251541951957453e-02, 2.144349138273916183e-02, 2.145443171163845947e-02, 2.146533639110017461e-02, 2.147620540606610604e-02, 2.148703874153692212e-02, 2.149783638257215038e-02, 2.150859831429017058e-02, 2.151932452186860675e-02, 2.153001499054376169e-02, 2.154066970561107491e-02, 2.155128865242500469e-02, 2.156187181639896561e-02, 2.157241918300540837e-02, 2.158293073777592733e-02, 2.159340646630133684e-02, 2.160384635423125144e-02, 2.161425038727467218e-02, 2.162461855119966053e-02, 2.163495083183333140e-02, 2.164524721506209948e-02, 2.165550768683172783e-02, 2.166573223314680052e-02, 2.167592084007160733e-02, 2.168607349372928331e-02, 2.169619018030260679e-02, 2.170627088603335753e-02, 2.171631559722276422e-02, 2.172632430023125824e-02, 2.173629698147884134e-02, 2.174623362744474223e-02, 2.175613422466755181e-02, 2.176599875974538287e-02, 2.177582721933551263e-02, 2.178561959015493793e-02, 2.179537585897991375e-02, 2.180509601264632100e-02, 2.181478003804937157e-02, 2.182442792214386168e-02, 2.183403965194414403e-02, 2.184361521452396135e-02, 2.185315459701667531e-02, 2.186265778661543313e-02, 2.187212477057255688e-02, 2.188155553620036234e-02, 2.189095007087046504e-02, 2.190030836201438749e-02, 2.190963039712305258e-02, 2.191891616374724849e-02, 2.192816564949724711e-02, 2.193737884204325153e-02, 2.194655572911509075e-02, 2.195569629850219542e-02, 2.196480053805383026e-02, 2.197386843567900039e-02, 2.198289997934658319e-02, 2.199189515708505419e-02, 2.200085395698299015e-02, 2.200977636718838212e-02, 2.201866237590945075e-02, 2.202751197141395237e-02, 2.203632514202967171e-02, 2.204510187614424840e-02, 2.205384216220523941e-02, 2.206254598871991782e-02, 2.207121334425583142e-02, 2.207984421744016781e-02, 2.208843859696010131e-02, 2.209699647156285890e-02, 2.210551783005561613e-02, 2.211400266130552836e-02, 2.212245095423968910e-02, 2.213086269784536944e-02, 2.213923788116971617e-02, 2.214757649331996342e-02, 2.215587852346340494e-02, 2.216414396082742877e-02, 2.217237279469942354e-02, 2.218056501442709078e-02, 2.218872060941794871e-02, 2.219683956913982500e-02, 2.220492188312059301e-02, 2.221296754094833834e-02, 2.222097653227128253e-02, 2.222894884679782815e-02, 2.223688447429644777e-02, 2.224478340459600662e-02, 2.225264562758550238e-02, 2.226047113321401663e-02, 2.226825991149101319e-02, 2.227601195248615773e-02, 2.228372724632941143e-02, 2.229140578321092692e-02, 2.229904755338120090e-02, 2.230665254715088336e-02, 2.231422075489113838e-02, 2.232175216703324513e-02, 2.232924677406898997e-02, 2.233670456655025005e-02, 2.234412553508953458e-02, 2.235150967035948177e-02, 2.235885696309321616e-02, 2.236616740408414739e-02, 2.237344098418608818e-02, 2.238067769431345902e-02, 2.238787752544070878e-02, 2.239504046860306755e-02, 2.240216651489594993e-02, 2.240925565547530196e-02, 2.241630788155742071e-02, 2.242332318441930469e-02, 2.243030155539818896e-02, 2.243724298589178795e-02, 2.244414746735846553e-02, 2.245101499131701636e-02, 2.245784554934657229e-02, 2.246463913308700475e-02, 2.247139573423854661e-02, 2.247811534456215302e-02, 2.248479795587909197e-02, 2.249144356007138496e-02, 2.249805214908147388e-02, 2.250462371491236332e-02, 2.251115824962775930e-02, 2.251765574535185416e-02, 2.252411619426942027e-02, 2.253053958862590370e-02, 2.253692592072729234e-02, 2.254327518294019922e-02, 2.254958736769194921e-02, 2.255586246747031884e-02, 2.256210047482393871e-02, 2.256830138236189456e-02, 2.257446518275416439e-02, 2.258059186873107027e-02, 2.258668143308381962e-02, 2.259273386866432129e-02, 2.259874916838503639e-02, 2.260472732521914482e-02, 2.261066833220063896e-02, 2.261657218242408771e-02, 2.262243886904488285e-02, 2.262826838527898926e-02, 2.263406072440317038e-02, 2.263981587975505763e-02, 2.264553384473274450e-02, 2.265121461279523754e-02, 2.265685817746240435e-02, 2.266246453231461622e-02, 2.266803367099309852e-02, 2.267356558719993420e-02, 2.267906027469793195e-02, 2.268451772731060537e-02, 2.268993793892231173e-02, 2.269532090347825201e-02, 2.270066661498437374e-02, 2.270597506750731895e-02, 2.271124625517478152e-02, 2.271648017217502147e-02, 2.272167681275724660e-02, 2.272683617123144595e-02, 2.273195824196844878e-02, 2.273704301939985864e-02, 2.274209049801828933e-02, 2.274710067237689995e-02, 2.275207353708998473e-02, 2.275700908683253240e-02, 2.276190731634040315e-02, 2.276676822041031820e-02, 2.277159179389989449e-02, 2.277637803172744002e-02, 2.278112692887248464e-02, 2.278583848037509310e-02, 2.279051268133637162e-02, 2.279514952691817989e-02, 2.279974901234339130e-02, 2.280431113289583048e-02, 2.280883588391989167e-02, 2.281332326082122913e-02, 2.281777325906610837e-02, 2.282218587418185715e-02, 2.282656110175666775e-02, 2.283089893743963164e-02, 2.283519937694062849e-02, 2.283946241603067653e-02, 2.284368805054151283e-02, 2.284787627636588464e-02, 2.285202708945739333e-02, 2.285614048583061580e-02, 2.286021646156104897e-02, 2.286425501278496059e-02, 2.286825613569976393e-02, 2.287221982656365352e-02, 2.287614608169580288e-02, 2.288003489747629168e-02, 2.288388627034612308e-02, 2.288770019680726880e-02, 2.289147667342250961e-02, 2.289521569681580646e-02, 2.289891726367178706e-02, 2.290258137073609632e-02, 2.290620801481545871e-02, 2.290979719277731405e-02, 2.291334890155018178e-02, 2.291686313812348746e-02, 2.292033989954760792e-02, 2.292377918293377406e-02, 2.292718098545423397e-02, 2.293054530434215227e-02, 2.293387213689161014e-02, 2.293716148045772674e-02, 2.294041333245638858e-02, 2.294362769036459998e-02, 2.294680455172008748e-02, 2.294994391412174747e-02, 2.295304577522926798e-02, 2.295611013276330561e-02, 2.295913698450549600e-02, 2.296212632829828029e-02, 2.296507816204521393e-02, 2.296799248371061974e-02, 2.297086929131982383e-02, 2.297370858295908619e-02, 2.297651035677561113e-02, 2.297927461097742236e-02, 2.298200134383368912e-02, 2.298469055367421965e-02, 2.298734223888994690e-02, 2.298995639793270651e-02, 2.299253302931505635e-02, 2.299507213161082822e-02, 2.299757370345440616e-02, 2.300003774354135444e-02, 2.300246425062794225e-02, 2.300485322353138309e-02, 2.300720466112997353e-02, 2.300951856236274282e-02, 2.301179492622967143e-02, 2.301403375179151070e-02, 2.301623503817011238e-02, 2.301839878454810598e-02, 2.302052499016903758e-02, 2.302261365433724838e-02, 2.302466477641816264e-02, 2.302667835583782976e-02, 2.302865439208336140e-02, 2.303059288470261576e-02, 2.303249383330437799e-02, 2.303435723755836717e-02, 2.303618309719496562e-02, 2.303797141200560061e-02, 2.303972218184241819e-02, 2.304143540661857809e-02, 2.304311108630780272e-02, 2.304474922094490799e-02, 2.304634981062547369e-02, 2.304791285550581922e-02, 2.304943835580319789e-02, 2.305092631179560952e-02, 2.305237672382188727e-02, 2.305378959228169752e-02, 2.305516491763547407e-02, 2.305650270040450478e-02, 2.305780294117078938e-02, 2.305906564057714353e-02, 2.306029079932721271e-02, 2.306147841818538893e-02, 2.306262849797677608e-02, 2.306374103958728355e-02, 2.306481604396372342e-02, 2.306585351211341492e-02, 2.306685344510452443e-02, 2.306781584406606203e-02, 2.306874071018758660e-02, 2.306962804471957007e-02, 2.307047784897300891e-02, 2.307129012431986814e-02, 2.307206487219258181e-02, 2.307280209408438254e-02, 2.307350179154921826e-02, 2.307416396620166552e-02, 2.307478861971704043e-02, 2.307537575383133630e-02, 2.307592537034123398e-02, 2.307643747110385210e-02, 2.307691205803734727e-02, 2.307734913312019243e-02, 2.307774869839157236e-02, 2.307811075595141842e-02, 2.307843530796019685e-02, 2.307872235663896432e-02, 2.307897190426950323e-02, 2.307918395319401642e-02, 2.307935850581535261e-02, 2.307949556459705856e-02, 2.307959513206312221e-02, 2.307965721079814625e-02, 2.307968180344731335e-02, 2.307966891271629947e-02, 2.307961854137130508e-02, 2.307953069223914189e-02, 2.307940536820701424e-02, 2.307924257222280368e-02, 2.307904230729483641e-02, 2.307880457649171338e-02, 2.307852938294293124e-02, 2.307821672983804973e-02, 2.307786662042737164e-02, 2.307747905802151958e-02, 2.307705404599163027e-02, 2.307659158776918448e-02, 2.307609168684622916e-02, 2.307555434677504430e-02, 2.307497957116846563e-02, 2.307436736369964173e-02, 2.307371772810215202e-02, 2.307303066816995124e-02, 2.307230618775722372e-02, 2.307154429077874422e-02, 2.307074498120940606e-02, 2.306990826308457504e-02, 2.306903414049990206e-02, 2.306812261761122251e-02, 2.306717369863491712e-02, 2.306618738784741579e-02, 2.306516368958556190e-02, 2.306410260824637293e-02, 2.306300414828724860e-02, 2.306186831422563435e-02, 2.306069511063942382e-02, 2.305948454216656326e-02, 2.305823661350525980e-02, 2.305695132941382869e-02, 2.305562869471103338e-02, 2.305426871427543670e-02, 2.305287139304608435e-02, 2.305143673602198795e-02, 2.304996474826224648e-02, 2.304845543488619891e-02, 2.304690880107327852e-02, 2.304532485206295389e-02, 2.304370359315478095e-02, 2.304204502970847585e-02, 2.304034916714362002e-02, 2.303861601094005229e-02, 2.303684556663752186e-02, 2.303503783983578898e-02, 2.303319283619459715e-02, 2.303131056143383620e-02, 2.302939102133315374e-02, 2.302743422173222226e-02, 2.302544016853079120e-02, 2.302340886768840245e-02, 2.302134032522451523e-02, 2.301923454721862411e-02, 2.301709153980993280e-02, 2.301491130919766301e-02, 2.301269386164084274e-02, 2.301043920345834798e-02, 2.300814734102893042e-02, 2.300581828079108562e-02, 2.300345202924315713e-02, 2.300104859294321152e-02, 2.299860797850924662e-02, 2.299613019261880983e-02, 2.299361524200937285e-02, 2.299106313347804714e-02, 2.298847387388167421e-02, 2.298584747013675614e-02, 2.298318392921949727e-02, 2.298048325816582152e-02, 2.297774546407124752e-02, 2.297497055409093367e-02, 2.297215853543965042e-02, 2.296930941539176638e-02, 2.296642320128137321e-02, 2.296349990050181381e-02, 2.296053952050634839e-02, 2.295754206880745718e-02, 2.295450755297747530e-02, 2.295143598064793358e-02, 2.294832735950996447e-02, 2.294518169731428817e-02, 2.294199900187085181e-02, 2.293877928104921457e-02, 2.293552254277829786e-02, 2.293222879504641307e-02, 2.292889804590126160e-02, 2.292553030345003198e-02, 2.292212557585896968e-02, 2.291868387135399462e-02, 2.291520519822010798e-02, 2.291168956480170785e-02, 2.290813697950237413e-02, 2.290454745078514959e-02, 2.290092098717214433e-02, 2.289725759724470233e-02, 2.289355728964347428e-02, 2.288982007306818167e-02, 2.288604595627781804e-02, 2.288223494809052058e-02, 2.287838705738347647e-02, 2.287450229309302349e-02, 2.287058066421470554e-02, 2.286662217980290485e-02, 2.286262684897137978e-02, 2.285859468089259869e-02, 2.285452568479830540e-02, 2.285041986997916538e-02, 2.284627724578469979e-02, 2.284209782162359773e-02, 2.283788160696333114e-02, 2.283362861133043584e-02, 2.282933884431010904e-02, 2.282501231554683388e-02, 2.282064903474353632e-02, 2.281624901166223046e-02, 2.281181225612363694e-02, 2.280733877800743964e-02, 2.280282858725193873e-02, 2.279828169385419989e-02, 2.279369810787023123e-02, 2.278907783941447676e-02, 2.278442089866032985e-02, 2.277972729583972386e-02, 2.277499704124327437e-02, 2.277023014522027225e-02, 2.276542661817862814e-02, 2.276058647058474063e-02, 2.275570971296375644e-02, 2.275079635589920962e-02, 2.274584641003338931e-02, 2.274085988606674297e-02, 2.273583679475855296e-02, 2.273077714692643345e-02, 2.272568095344641020e-02, 2.272054822525295878e-02, 2.271537897333902531e-02, 2.271017320875579060e-02, 2.270493094261293379e-02, 2.269965218607844157e-02, 2.269433695037850404e-02, 2.268898524679781661e-02, 2.268359708667911853e-02, 2.267817248142353290e-02, 2.267271144249025094e-02, 2.266721398139692409e-02, 2.266168010971915739e-02, 2.265610983909084261e-02, 2.265050318120394313e-02, 2.264486014780854942e-02, 2.263918075071270214e-02, 2.263346500178277376e-02, 2.262771291294295162e-02, 2.262192449617552586e-02, 2.261609976352079582e-02, 2.261023872707701443e-02, 2.260434139900030504e-02, 2.259840779150485215e-02, 2.259243791686254416e-02, 2.258643178740336183e-02, 2.258038941551494469e-02, 2.257431081364291020e-02, 2.256819599429057271e-02, 2.256204497001901982e-02, 2.255585775344708457e-02, 2.254963435725148430e-02, 2.254337479416640422e-02, 2.253707907698384097e-02, 2.253074721855350196e-02, 2.252437923178252782e-02, 2.251797512963580813e-02, 2.251153492513580448e-02, 2.250505863136238044e-02, 2.249854626145312772e-02, 2.249199782860307473e-02, 2.248541334606459288e-02, 2.247879282714775745e-02, 2.247213628521978548e-02, 2.246544373370548339e-02, 2.245871518608693468e-02, 2.245195065590356240e-02, 2.244515015675227834e-02, 2.243831370228707017e-02, 2.243144130621934143e-02, 2.242453298231759581e-02, 2.241758874440766963e-02, 2.241060860637248200e-02, 2.240359258215231589e-02, 2.239654068574426643e-02, 2.238945293120294874e-02, 2.238232933263959237e-02, 2.237516990422296417e-02, 2.236797466017838992e-02, 2.236074361478850719e-02, 2.235347678239283167e-02, 2.234617417738790288e-02, 2.233883581422695455e-02, 2.233146170742033448e-02, 2.232405187153523735e-02, 2.231660632119552429e-02, 2.230912507108199702e-02, 2.230160813593218272e-02, 2.229405553054051789e-02, 2.228646726975788347e-02, 2.227884336849202118e-02, 2.227118384170735654e-02, 2.226348870442487055e-02, 2.225575797172228004e-02, 2.224799165873378101e-02, 2.224018978065004509e-02, 2.223235235271853183e-02, 2.222447939024282254e-02, 2.221657090858331074e-02, 2.220862692315658110e-02, 2.220064744943582580e-02, 2.219263250295057735e-02, 2.218458209928644842e-02, 2.217649625408583264e-02, 2.216837498304697479e-02, 2.216021830192465084e-02, 2.215202622652974115e-02, 2.214379877272947689e-02, 2.213553595644708952e-02, 2.212723779366208496e-02, 2.211890430040994518e-02, 2.211053549278241270e-02, 2.210213138692700488e-02, 2.209369199904762451e-02, 2.208521734540387291e-02, 2.207670744231158416e-02, 2.206816230614213475e-02, 2.205958195332314783e-02, 2.205096640033804914e-02, 2.204231566372586576e-02, 2.203362976008177432e-02, 2.202490870605654932e-02, 2.201615251835676093e-02, 2.200736121374452167e-02, 2.199853480903803463e-02, 2.198967332111062892e-02, 2.198077676689165136e-02, 2.197184516336588359e-02, 2.196287852757378145e-02, 2.195387687661113849e-02, 2.194484022762934264e-02, 2.193576859783530342e-02, 2.192666200449133393e-02, 2.191752046491499475e-02, 2.190834399647937497e-02, 2.189913261661299848e-02, 2.188988634279940074e-02, 2.188060519257762834e-02, 2.187128918354176374e-02, 2.186193833334143174e-02, 2.185255265968097382e-02, 2.184313218032031892e-02, 2.183367691307412303e-02, 2.182418687581244576e-02, 2.181466208646009458e-02, 2.180510256299717994e-02, 2.179550832345844569e-02, 2.178587938593386231e-02, 2.177621576856824878e-02, 2.176651748956133850e-02, 2.175678456716744619e-02, 2.174701701969600220e-02, 2.173721486551107029e-02, 2.172737812303151758e-02, 2.171750681073086192e-02, 2.170760094713724761e-02, 2.169766055083370559e-02, 2.168768564045749775e-02, 2.167767623470086280e-02, 2.166763235231021142e-02, 2.165755401208665706e-02, 2.164744123288576266e-02, 2.163729403361762393e-02, 2.162711243324642180e-02, 2.161689645079110239e-02, 2.160664610532454788e-02, 2.159636141597435013e-02, 2.158604240192196766e-02, 2.157568908240335703e-02, 2.156530147670848371e-02, 2.155487960418178348e-02, 2.154442348422136444e-02, 2.153393313627965239e-02, 2.152340857986324157e-02, 2.151284983453254779e-02, 2.150225691990208937e-02, 2.149162985564019926e-02, 2.148096866146925049e-02, 2.147027335716541682e-02, 2.145954396255873170e-02, 2.144878049753293908e-02, 2.143798298202569466e-02, 2.142715143602831260e-02, 2.141628587958586960e-02, 2.140538633279691003e-02, 2.139445281581377201e-02, 2.138348534884232724e-02, 2.137248395214196711e-02, 2.136144864602549862e-02, 2.135037945085958844e-02, 2.133927638706384355e-02, 2.132813947511158839e-02, 2.131696873552934440e-02, 2.130576418889699314e-02, 2.129452585584782134e-02, 2.128325375706824341e-02, 2.127194791329802687e-02, 2.126060834532982752e-02, 2.124923507400970635e-02, 2.123782812023676178e-02, 2.122638750496311580e-02, 2.121491324919385496e-02, 2.120340537398721428e-02, 2.119186390045424070e-02, 2.118028884975909840e-02, 2.116868024311843385e-02, 2.115703810180216693e-02, 2.114536244713263735e-02, 2.113365330048520493e-02, 2.112191068328795121e-02, 2.111013461702134289e-02, 2.109832512321887718e-02, 2.108648222346641218e-02, 2.107460593940241669e-02, 2.106269629271786611e-02, 2.105075330515630144e-02, 2.103877699851368355e-02, 2.102676739463843480e-02, 2.101472451543113726e-02, 2.100264838284494201e-02, 2.099053901888518064e-02, 2.097839644560939298e-02, 2.096622068512747974e-02, 2.095401175960149090e-02, 2.094176969124534465e-02, 2.092949450232546582e-02, 2.091718621516000520e-02, 2.090484485211919694e-02, 2.089247043562544523e-02, 2.088006298815279355e-02, 2.086762253222752481e-02, 2.085514909042736689e-02, 2.084264268538221429e-02, 2.083010333977351400e-02, 2.081753107633460900e-02, 2.080492591785035664e-02, 2.079228788715738185e-02, 2.077961700714393845e-02, 2.076691330074982578e-02, 2.075417679096628470e-02, 2.074140750083620227e-02, 2.072860545345371619e-02, 2.071577067196457567e-02, 2.070290317956580486e-02, 2.069000299950565780e-02, 2.067707015508387855e-02, 2.066410466965120513e-02, 2.065110656660985866e-02, 2.063807586941287728e-02, 2.062501260156470589e-02, 2.061191678662075213e-02, 2.059878844818753552e-02, 2.058562760992232316e-02, 2.057243429553369876e-02, 2.055920852878076466e-02, 2.054595033347372118e-02, 2.053265973347364812e-02, 2.051933675269233814e-02, 2.050598141509207481e-02, 2.049259374468629172e-02, 2.047917376553860802e-02, 2.046572150176367497e-02, 2.045223697752635711e-02, 2.043872021704223885e-02, 2.042517124457751687e-02, 2.041159008444841383e-02, 2.039797676102200752e-02, 2.038433129871526986e-02, 2.037065372199596894e-02, 2.035694405538172533e-02, 2.034320232344062965e-02, 2.032942855079084357e-02, 2.031562276210077678e-02, 2.030178498208870530e-02, 2.028791523552331971e-02, 2.027401354722284735e-02, 2.026007994205585375e-02, 2.024611444494068407e-02, 2.023211708084565741e-02, 2.021808787478868163e-02, 2.020402685183763508e-02, 2.018993403711021040e-02, 2.017580945577352250e-02, 2.016165313304457349e-02, 2.014746509418989875e-02, 2.013324536452577168e-02, 2.011899396941755833e-02, 2.010471093428055009e-02, 2.009039628457912063e-02, 2.007605004582731223e-02, 2.006167224358825288e-02, 2.004726290347474613e-02, 2.003282205114831002e-02, 2.001834971232015897e-02, 2.000384591275026006e-02, 1.998931067824814140e-02, 1.997474403467190338e-02, 1.996014600792902355e-02, 1.994551662397592989e-02, 1.993085590881782387e-02, 1.991616388850897534e-02, 1.990144058915218478e-02, 1.988668603689952921e-02, 1.987190025795125894e-02, 1.985708327855700145e-02, 1.984223512501442563e-02, 1.982735582367021673e-02, 1.981244540091934084e-02, 1.979750388320557566e-02, 1.978253129702080282e-02, 1.976752766890568780e-02, 1.975249302544912142e-02, 1.973742739328840021e-02, 1.972233079910891071e-02, 1.970720326964457356e-02, 1.969204483167721551e-02, 1.967685551203693373e-02, 1.966163533760196397e-02, 1.964638433529857300e-02, 1.963110253210115577e-02, 1.961578995503169415e-02, 1.960044663116052716e-02, 1.958507258760548708e-02, 1.956966785153247887e-02, 1.955423245015509848e-02, 1.953876641073473350e-02, 1.952326976058017804e-02, 1.950774252704822603e-02, 1.949218473754288014e-02, 1.947659641951603529e-02, 1.946097760046679517e-02, 1.944532830794179143e-02, 1.942964856953519406e-02, 1.941393841288817368e-02, 1.939819786568957108e-02, 1.938242695567507848e-02, 1.936662571062804095e-02, 1.935079415837843292e-02, 1.933493232680385740e-02, 1.931904024382859533e-02, 1.930311793742403928e-02, 1.928716543560846444e-02, 1.927118276644726458e-02, 1.925516995805241077e-02, 1.923912703858281573e-02, 1.922305403624426090e-02, 1.920695097928909120e-02, 1.919081789601622887e-02, 1.917465481477148917e-02, 1.915846176394690736e-02, 1.914223877198132154e-02, 1.912598586735976200e-02, 1.910970307861390230e-02, 1.909339043432179903e-02, 1.907704796310752751e-02, 1.906067569364176123e-02, 1.904427365464113689e-02, 1.902784187486860484e-02, 1.901138038313314807e-02, 1.899488920828997993e-02, 1.897836837923997863e-02, 1.896181792493043319e-02, 1.894523787435413789e-02, 1.892862825655007228e-02, 1.891198910060268648e-02, 1.889532043564254651e-02, 1.887862229084574447e-02, 1.886189469543416916e-02, 1.884513767867510362e-02, 1.882835126988141594e-02, 1.881153549841179523e-02, 1.879469039366988767e-02, 1.877781598510537206e-02, 1.876091230221263104e-02, 1.874397937453189597e-02, 1.872701723164825471e-02, 1.871002590319229691e-02, 1.869300541883946870e-02, 1.867595580831059657e-02, 1.865887710137137043e-02, 1.864176932783276341e-02, 1.862463251755018187e-02, 1.860746670042446801e-02, 1.859027190640086605e-02, 1.857304816546980972e-02, 1.855579550766598904e-02, 1.853851396306944316e-02, 1.852120356180436689e-02, 1.850386433403938824e-02, 1.848649630998825885e-02, 1.846909951990860152e-02, 1.845167399410293022e-02, 1.843421976291789027e-02, 1.841673685674461575e-02, 1.839922530601820205e-02, 1.838168514121845537e-02, 1.836411639286871650e-02, 1.834651909153705088e-02, 1.832889326783516959e-02, 1.831123895241900182e-02, 1.829355617598837219e-02, 1.827584496928708405e-02, 1.825810536310254473e-02, 1.824033738826633805e-02, 1.822254107565334652e-02, 1.820471645618254239e-02, 1.818686356081639435e-02, 1.816898242056074267e-02, 1.815107306646542712e-02, 1.813313552962319414e-02, 1.811516984117076540e-02, 1.809717603228774147e-02, 1.807915413419736855e-02, 1.806110417816612565e-02, 1.804302619550361350e-02, 1.802492021756252685e-02, 1.800678627573888343e-02, 1.798862440147144803e-02, 1.797043462624230148e-02, 1.795221698157601492e-02, 1.793397149904077392e-02, 1.791569821024679987e-02, 1.789739714684768571e-02, 1.787906834053945224e-02, 1.786071182306063487e-02, 1.784232762619277629e-02, 1.782391578175976377e-02, 1.780547632162817959e-02, 1.778700927770664186e-02, 1.776851468194661637e-02, 1.774999256634154920e-02, 1.773144296292752942e-02, 1.771286590378249107e-02, 1.769426142102684119e-02, 1.767562954682301568e-02, 1.765697031337555567e-02, 1.763828375293083686e-02, 1.761956989777748936e-02, 1.760082878024565520e-02, 1.758206043270766489e-02, 1.756326488757761067e-02, 1.754444217731100999e-02, 1.752559233440547162e-02, 1.750671539139985605e-02, 1.748781138087491735e-02, 1.746888033545260580e-02, 1.744992228779654667e-02, 1.743093727061174533e-02, 1.741192531664459073e-02, 1.739288645868245289e-02, 1.737382072955442197e-02, 1.735472816213026737e-02, 1.733560878932123919e-02, 1.731646264407947153e-02, 1.729728975939832936e-02, 1.727809016831172162e-02, 1.725886390389488184e-02, 1.723961099926347995e-02, 1.722033148757443066e-02, 1.720102540202488386e-02, 1.718169277585299831e-02, 1.716233364233753916e-02, 1.714294803479752757e-02, 1.712353598659285478e-02, 1.710409753112351536e-02, 1.708463270183022131e-02, 1.706514153219368737e-02, 1.704562405573510631e-02, 1.702608030601582625e-02, 1.700651031663750340e-02, 1.698691412124149827e-02, 1.696729175350962515e-02, 1.694764324716341308e-02, 1.692796863596445281e-02, 1.690826795371413657e-02, 1.688854123425387321e-02, 1.686878851146451572e-02, 1.684900981926659713e-02, 1.682920519162070180e-02, 1.680937466252650780e-02, 1.678951826602357103e-02, 1.676963603619068682e-02, 1.674972800714633059e-02, 1.672979421304789105e-02, 1.670983468809253761e-02, 1.668984946651619686e-02, 1.666983858259430545e-02, 1.664980207064135215e-02, 1.662973996501090554e-02, 1.660965230009527061e-02, 1.658953911032610279e-02, 1.656940043017353023e-02, 1.654923629414686501e-02, 1.652904673679387454e-02, 1.650883179270125345e-02, 1.648859149649434253e-02, 1.646832588283682342e-02, 1.644803498643128761e-02, 1.642771884201829277e-02, 1.640737748437741395e-02, 1.638701094832601540e-02, 1.636661926872009371e-02, 1.634620248045382321e-02, 1.632576061845955606e-02, 1.630529371770758629e-02, 1.628480181320658693e-02, 1.626428494000278085e-02, 1.624374313318076302e-02, 1.622317642786278921e-02, 1.620258485920907099e-02, 1.618196846241726564e-02, 1.616132727272316313e-02, 1.614066132539987777e-02, 1.611997065575807714e-02, 1.609925529914615211e-02, 1.607851529094991502e-02, 1.605775066659260661e-02, 1.603696146153449700e-02, 1.601614771127362821e-02, 1.599530945134472817e-02, 1.597444671732011628e-02, 1.595355954480903379e-02, 1.593264796945784850e-02, 1.591171202694967313e-02, 1.589075175300490653e-02, 1.586976718338029696e-02, 1.584875835387002455e-02, 1.582772530030438288e-02, 1.580666805855074006e-02, 1.578558666451307033e-02, 1.576448115413161752e-02, 1.574335156338343630e-02, 1.572219792828173646e-02, 1.570102028487643103e-02, 1.567981866925318227e-02, 1.565859311753475119e-02, 1.563734366587923863e-02, 1.561607035048148857e-02, 1.559477320757194675e-02, 1.557345227341743431e-02, 1.555210758432038799e-02, 1.553073917661937711e-02, 1.550934708668875832e-02, 1.548793135093864091e-02, 1.546649200581462491e-02, 1.544502908779827634e-02, 1.542354263340638305e-02, 1.540203267919165384e-02, 1.538049926174182500e-02, 1.535894241768024325e-02, 1.533736218366577378e-02, 1.531575859639203868e-02, 1.529413169258847342e-02, 1.527248150901904487e-02, 1.525080808248320714e-02, 1.522911144981533085e-02, 1.520739164788487661e-02, 1.518564871359582603e-02, 1.516388268388741203e-02, 1.514209359573321159e-02, 1.512028148614199749e-02, 1.509844639215664544e-02, 1.507658835085508818e-02, 1.505470739934953311e-02, 1.503280357478683008e-02, 1.501087691434795091e-02, 1.498892745524823926e-02, 1.496695523473761703e-02, 1.494496029009963721e-02, 1.492294265865284908e-02, 1.490090237774903230e-02, 1.487883948477457252e-02, 1.485675401714931128e-02, 1.483464601232753650e-02, 1.481251550779679078e-02, 1.479036254107879249e-02, 1.476818714972883209e-02, 1.474598937133600289e-02, 1.472376924352249497e-02, 1.470152680394459614e-02, 1.467926209029154529e-02, 1.465697514028640319e-02, 1.463466599168517304e-02, 1.461233468227730002e-02, 1.458998124988560366e-02, 1.456760573236555271e-02, 1.454520816760626438e-02, 1.452278859352927262e-02, 1.450034704808950137e-02, 1.447788356927454806e-02, 1.445539819510502366e-02, 1.443289096363386918e-02, 1.441036191294724732e-02, 1.438781108116337672e-02, 1.436523850643361098e-02, 1.434264422694122090e-02, 1.432002828090231730e-02, 1.429739070656523697e-02, 1.427473154221078552e-02, 1.425205082615159033e-02, 1.422934859673293494e-02, 1.420662489233171476e-02, 1.418387975135729055e-02, 1.416111321225095761e-02, 1.413832531348556409e-02, 1.411551609356625873e-02, 1.409268559102958007e-02, 1.406983384444418159e-02, 1.404696089240994004e-02, 1.402406677355861296e-02, 1.400115152655350900e-02, 1.397821519008930410e-02, 1.395525780289194433e-02, 1.393227940371896331e-02, 1.390928003135888553e-02, 1.388625972463172938e-02, 1.386321852238820394e-02, 1.384015646351081756e-02, 1.381707358691231652e-02, 1.379396993153693927e-02, 1.377084553635944328e-02, 1.374770044038541895e-02, 1.372453468265145624e-02, 1.370134830222464149e-02, 1.367814133820284724e-02, 1.365491382971411281e-02, 1.363166581591743545e-02, 1.360839733600176238e-02, 1.358510842918687553e-02, 1.356179913472233857e-02, 1.353846949188828620e-02, 1.351511953999496793e-02, 1.349174931838272549e-02, 1.346835886642164422e-02, 1.344494822351223647e-02, 1.342151742908436439e-02, 1.339806652259816107e-02, 1.337459554354347366e-02, 1.335110453143945573e-02, 1.332759352583540689e-02, 1.330406256630967468e-02, 1.328051169247065379e-02, 1.325694094395558735e-02, 1.323335036043149504e-02, 1.320973998159456937e-02, 1.318610984717032315e-02, 1.316245999691313152e-02, 1.313879047060689635e-02, 1.311510130806403142e-02, 1.309139254912647723e-02, 1.306766423366443469e-02, 1.304391640157778406e-02, 1.302014909279427743e-02, 1.299636234727105481e-02, 1.297255620499332580e-02, 1.294873070597538089e-02, 1.292488589025949340e-02, 1.290102179791675734e-02, 1.287713846904663811e-02, 1.285323594377649550e-02, 1.282931426226247180e-02, 1.280537346468826367e-02, 1.278141359126627220e-02, 1.275743468223633319e-02, 1.273343677786671450e-02, 1.270941991845338757e-02, 1.268538414432030491e-02, 1.266132949581874091e-02, 1.263725601332824078e-02, 1.261316373725545996e-02, 1.258905270803489275e-02, 1.256492296612850626e-02, 1.254077455202580113e-02, 1.251660750624332581e-02, 1.249242186932494024e-02, 1.246821768184209686e-02, 1.244399498439294031e-02, 1.241975381760299091e-02, 1.239549422212475605e-02, 1.237121623863774063e-02, 1.234691990784795440e-02, 1.232260527048881053e-02, 1.229827236731984713e-02, 1.227392123912770389e-02, 1.224955192672557217e-02, 1.222516447095316552e-02, 1.220075891267640225e-02, 1.217633529278811313e-02, 1.215189365220690695e-02, 1.212743403187814539e-02, 1.210295647277296986e-02, 1.207846101588897110e-02, 1.205394770224984917e-02, 1.202941657290483753e-02, 1.200486766892970396e-02, 1.198030103142549811e-02, 1.195571670151959927e-02, 1.193111472036459050e-02, 1.190649512913910003e-02, 1.188185796904718886e-02, 1.185720328131859361e-02, 1.183253110720809166e-02, 1.180784148799637542e-02, 1.178313446498889007e-02, 1.175841007951674427e-02, 1.173366837293610999e-02, 1.170890938662835605e-02, 1.168413316199949821e-02, 1.165933974048107523e-02, 1.163452916352907505e-02, 1.160970147262438065e-02, 1.158485670927284460e-02, 1.155999491500489008e-02, 1.153511613137573819e-02, 1.151022039996470528e-02, 1.148530776237618317e-02, 1.146037826023835540e-02, 1.143543193520426063e-02, 1.141046882895097210e-02, 1.138548898318003655e-02, 1.136049243961661896e-02, 1.133547924001053649e-02, 1.131044942613505105e-02, 1.128540303978795012e-02, 1.126034012279025429e-02, 1.123526071698724600e-02, 1.121016486424792659e-02, 1.118505260646449409e-02, 1.115992398555333553e-02, 1.113477904345375885e-02, 1.110961782212908054e-02, 1.108444036356546689e-02, 1.105924670977277702e-02, 1.103403690278393669e-02, 1.100881098465522276e-02, 1.098356899746559708e-02, 1.095831098331757902e-02, 1.093303698433606072e-02, 1.090774704266929407e-02, 1.088244120048820207e-02, 1.085711949998654190e-02, 1.083178198338035844e-02, 1.080642869290888812e-02, 1.078105967083332374e-02, 1.075567495943786402e-02, 1.073027460102858599e-02, 1.070485863793426556e-02, 1.067942711250599586e-02, 1.065398006711654362e-02, 1.062851754416146120e-02, 1.060303958605769183e-02, 1.057754623524465205e-02, 1.055203753418347892e-02, 1.052651352535729015e-02, 1.050097425127053882e-02, 1.047541975444995534e-02, 1.044985007744332964e-02, 1.042426526282054164e-02, 1.039866535317245620e-02, 1.037305039111166213e-02, 1.034742041927205758e-02, 1.032177548030890207e-02, 1.029611561689840367e-02, 1.027044087173782129e-02, 1.024475128754600423e-02, 1.021904690706203732e-02, 1.019332777304688027e-02, 1.016759392828137619e-02, 1.014184541556791518e-02, 1.011608227772891819e-02, 1.009030455760807216e-02, 1.006451229806904803e-02, 1.003870554199646527e-02, 1.001288433229516849e-02, 9.987048711890503250e-03, 9.961198723727736695e-03, 9.935334410772860697e-03, 9.909455816011408791e-03, 9.883562982449620171e-03, 9.857655953113095282e-03, 9.831734771047848792e-03, 9.805799479319730200e-03, 9.779850121013938108e-03, 9.753886739235925751e-03, 9.727909377110242201e-03, 9.701918077781470848e-03, 9.675912884413480006e-03, 9.649893840189771588e-03, 9.623860988312726503e-03, 9.597814372004626407e-03, 9.571754034506366540e-03, 9.545680019078553805e-03, 9.519592369000290724e-03, 9.493491127570136481e-03, 9.467376338105425171e-03, 9.441248043942470497e-03, 9.415106288435951681e-03, 9.388951114959846744e-03, 9.362782566906313608e-03, 9.336600687685998878e-03, 9.310405520728827142e-03, 9.284197109482203794e-03, 9.257975497412597107e-03, 9.231740728004159124e-03, 9.205492844759887924e-03, 9.179231891200250251e-03, 9.152957910864310820e-03, 9.126670947308936077e-03, 9.100371044109049207e-03, 9.074058244857042058e-03, 9.047732593163621689e-03, 9.021394132656651577e-03, 8.995042906982220199e-03, 8.968678959803324385e-03, 8.942302334801010763e-03, 8.915913075673527477e-03, 8.889511226136629501e-03, 8.863096829923061692e-03, 8.836669930782746138e-03, 8.810230572483087469e-03, 8.783778798808402136e-03, 8.757314653560057185e-03, 8.730838180555991479e-03, 8.704349423631539684e-03, 8.677848426638228377e-03, 8.651335233444841163e-03, 8.624809887936246006e-03, 8.598272434014293808e-03, 8.571722915597185244e-03, 8.545161376619632085e-03, 8.518587861032315967e-03, 8.492002412802700240e-03, 8.465405075913909339e-03, 8.438795894365597877e-03, 8.412174912173513500e-03, 8.385542173368884522e-03, 8.358897721999446889e-03, 8.332241602128236807e-03, 8.305573857834558718e-03, 8.278894533212894161e-03, 8.252203672373708415e-03, 8.225501319442902332e-03, 8.198787518561996210e-03, 8.172062313887467136e-03, 8.145325749591668385e-03, 8.118577869861672361e-03, 8.091818718900297552e-03, 8.065048340924719020e-03, 8.038266780168187506e-03, 8.011474080877906134e-03, 7.984670287316655846e-03, 7.957855443761631398e-03, 7.931029594504772698e-03, 7.904192783852946949e-03, 7.877345056127521908e-03, 7.850486455664511601e-03, 7.823617026813939682e-03, 7.796736813940804804e-03, 7.769845861423816009e-03, 7.742944213656544582e-03, 7.716031915046059689e-03, 7.689109010014022125e-03, 7.662175542995947053e-03, 7.635231558441406101e-03, 7.608277100813464443e-03, 7.581312214589521273e-03, 7.554336944260118050e-03, 7.527351334329895199e-03, 7.500355429316935517e-03, 7.473349273752968869e-03, 7.446332912182817079e-03, 7.419306389164714854e-03, 7.392269749270621165e-03, 7.365223037085110759e-03, 7.338166297206320451e-03, 7.311099574245324625e-03, 7.284022912826305235e-03, 7.256936357585982815e-03, 7.229839953174478639e-03, 7.202733744254063118e-03, 7.175617775500391787e-03, 7.148492091600895486e-03, 7.121356737256665133e-03, 7.094211757180232149e-03, 7.067057196097262413e-03, 7.039893098745151137e-03, 7.012719509874159977e-03, 6.985536474246133339e-03, 6.958344036635507983e-03, 6.931142241828719755e-03, 6.903931134623758625e-03, 6.876710759831095900e-03, 6.849481162272393585e-03, 6.822242386781702216e-03, 6.794994478204132923e-03, 6.767737481396831484e-03, 6.740471441228346877e-03, 6.713196402578818639e-03, 6.685912410339285572e-03, 6.658619509412745663e-03, 6.631317744712820345e-03, 6.604007161164706860e-03, 6.576687803704547690e-03, 6.549359717279661271e-03, 6.522022946847881933e-03, 6.494677537378458487e-03, 6.467323533850987370e-03, 6.439960981255821171e-03, 6.412589924594187460e-03, 6.385210408877842712e-03, 6.357822479129083583e-03, 6.330426180380243836e-03, 6.303021557674566046e-03, 6.275608656065005501e-03, 6.248187520615175634e-03, 6.220758196398600351e-03, 6.193320728499091335e-03, 6.165875162009944004e-03, 6.138421542034981811e-03, 6.110959913687256939e-03, 6.083490322090155319e-03, 6.056012812376212681e-03, 6.028527429687960230e-03, 6.001034219177510051e-03, 5.973533226005960095e-03, 5.946024495344428944e-03, 5.918508072372734817e-03, 5.890984002280556971e-03, 5.863452330266117306e-03, 5.835913101537211663e-03, 5.808366361310498584e-03, 5.780812154811706613e-03, 5.753250527275046225e-03, 5.725681523944078921e-03, 5.698105190070513332e-03, 5.670521570915161048e-03, 5.642930711747267888e-03, 5.615332657844731602e-03, 5.587727454493420128e-03, 5.560115146988165585e-03, 5.532495780631474513e-03, 5.504869400734708346e-03, 5.477236052616706041e-03, 5.449595781604839664e-03, 5.421948633034485293e-03, 5.394294652248455765e-03, 5.366633884598022430e-03, 5.338966375441623648e-03, 5.311292170145819752e-03, 5.283611314084658145e-03, 5.255923852639888399e-03, 5.228229831200238015e-03, 5.200529295162505290e-03, 5.172822289930097822e-03, 5.145108860914404669e-03, 5.117389053533273266e-03, 5.089662913212160411e-03, 5.061930485383402817e-03, 5.034191815486405326e-03, 5.006446948967181211e-03, 4.978695931278522176e-03, 4.950938807880425098e-03, 4.923175624238908948e-03, 4.895406425827064298e-03, 4.867631258124309988e-03, 4.839850166616661148e-03, 4.812063196796024893e-03, 4.784270394161227284e-03, 4.756471804216669784e-03, 4.728667472473342334e-03, 4.700857444448185846e-03, 4.673041765664244854e-03, 4.645220481650034344e-03, 4.617393637940515536e-03, 4.589561280075803509e-03, 4.561723453602333812e-03, 4.533880204071524117e-03, 4.506031577040805515e-03, 4.478177618073085620e-03, 4.450318372736198659e-03, 4.422453886603916820e-03, 4.394584205254650072e-03, 4.366709374272431492e-03, 4.338829439246233780e-03, 4.310944445770239011e-03, 4.283054439443074492e-03, 4.255159465868909967e-03, 4.227259570656063774e-03, 4.199354799418205872e-03, 4.171445197773048126e-03, 4.143530811343339171e-03, 4.115611685756184399e-03, 4.087687866643293158e-03, 4.059759399640216343e-03, 4.031826330387462687e-03, 4.003888704529250629e-03, 3.975946567713790208e-03, 3.947999965594284864e-03, 3.920048943826820280e-03, 3.892093548072204055e-03, 3.864133823994420937e-03, 3.836169817261862736e-03, 3.808201573545998662e-03, 3.780229138522344171e-03, 3.752252557869839925e-03, 3.724271877271016599e-03, 3.696287142411362140e-03, 3.668298398980277160e-03, 3.640305692669795149e-03, 3.612309069175736933e-03, 3.584308574196409629e-03, 3.556304253433596740e-03, 3.528296152591875977e-03, 3.500284317378851706e-03, 3.472268793504620660e-03, 3.444249626682004389e-03, 3.416226862626782577e-03, 3.388200547057153983e-03, 3.360170725693977130e-03, 3.332137444260076849e-03, 3.304100748481249555e-03, 3.276060684084939646e-03, 3.248017296801439073e-03, 3.219970632362523840e-03, 3.191920736502521297e-03, 3.163867654957567242e-03, 3.135811433465859627e-03, 3.107752117766979846e-03, 3.079689753602876754e-03, 3.051624386716575172e-03, 3.023556062853163372e-03, 2.995484827759277869e-03, 2.967410727182551340e-03, 2.939333806872628744e-03, 2.911254112579840254e-03, 2.883171690056385208e-03, 2.855086585055011551e-03, 2.826998843330018069e-03, 2.798908510636565275e-03, 2.770815632730930841e-03, 2.742720255369769742e-03, 2.714622424311188050e-03, 2.686522185313351685e-03, 2.658419584135738450e-03, 2.630314666537578953e-03, 2.602207478279729667e-03, 2.574098065122360987e-03, 2.545986472826789956e-03, 2.517872747154123719e-03, 2.489756933865686691e-03, 2.461639078723236972e-03, 2.433519227488439417e-03, 2.405397425923089423e-03, 2.377273719788418598e-03, 2.349148154846123892e-03, 2.321020776857033591e-03, 2.292891631582276955e-03, 2.264760764781981444e-03, 2.236628222216265408e-03, 2.208494049644567185e-03, 2.180358292825868450e-03, 2.152220997517981238e-03, 2.124082209478608731e-03, 2.095941974463960949e-03, 2.067800338229838514e-03, 2.039657346530899303e-03, 2.011513045120884389e-03, 1.983367479752111504e-03, 1.955220696175678004e-03, 1.927072740141890861e-03, 1.898923657399063849e-03, 1.870773493694564017e-03, 1.842622294774099801e-03, 1.814470106381956081e-03, 1.786316974260309613e-03, 1.758162944150240374e-03, 1.730008061790400163e-03, 1.701852372918205222e-03, 1.673695923268341771e-03, 1.645538758574575109e-03, 1.617380924567481679e-03, 1.589222466976260772e-03, 1.561063431527238976e-03, 1.532903863945067786e-03, 1.504743809951373775e-03, 1.476583315265800941e-03, 1.448422425605457118e-03, 1.420261186684366236e-03, 1.392099644214505466e-03, 1.363937843904462549e-03, 1.335775831460631015e-03, 1.307613652585864258e-03, 1.279451352980514418e-03, 1.251288978341724397e-03, 1.223126574363668766e-03, 1.194964186736857063e-03, 1.166801861149147513e-03, 1.138639643284431032e-03, 1.110477578823644952e-03, 1.082315713444076963e-03, 1.054154092819608625e-03, 1.025992762620006301e-03, 9.978317685119476779e-04, 9.696711561578592875e-04, 9.415109712162972756e-04, 9.133512593422000222e-04, 8.851920661863395354e-04, 8.570334373955632284e-04, 8.288754186120909223e-04, 8.007180554745384421e-04, 7.725613936165927212e-04, 7.444054786681895703e-04, 7.162503562540302720e-04, 6.880960719953920900e-04, 6.599426715078520952e-04, 6.317902004031042884e-04, 6.036387042874689305e-04, 5.754882287630776845e-04, 5.473388194265393957e-04, 5.191905218699693252e-04, 4.910433816804459645e-04, 4.628974444394631338e-04, 4.347527557239581311e-04, 4.066093611049811994e-04, 3.784673061488762224e-04, 3.503266364159559384e-04, 3.221873974615240715e-04, 2.940496348351742326e-04, 2.659133940810314792e-04, 2.377787207370510270e-04, 2.096456603360436334e-04, 1.815142584043453631e-04, 1.533845604628449510e-04, 1.252566120262819981e-04, 9.713045860348614629e-05, 6.900614569667848656e-05, 4.088371880249530316e-05, 1.276322341066001066e-05, -1.535529499483530283e-05, -4.347179093705743041e-05, -7.158621894510751598e-05, -9.969853355466531356e-05, -1.278086893085317560e-04, -1.559166407556046379e-04, -1.840223424522064246e-04, -2.121257489610611313e-04, -2.402268148519906652e-04, -2.683254947016798248e-04, -2.964217430943705419e-04, -3.245155146208423516e-04, -3.526067638797361495e-04, -3.806954454763768290e-04, -4.087815140240948697e-04, -4.368649241432071874e-04, -4.649456304617152519e-04, -4.930235876150639062e-04, -5.210987502466833590e-04, -5.491710730077517446e-04, -5.772405105567983592e-04, -6.053070175608653292e-04, -6.333705486944971345e-04, -6.614310586404266923e-04, -6.894885020893423613e-04, -7.175428337405869274e-04, -7.455940083011309725e-04, -7.736419804869038410e-04, -8.016867050217624550e-04, -8.297281366381961546e-04, -8.577662300770862213e-04, -8.858009400883994425e-04, -9.138322214301705876e-04, -9.418600288698286043e-04, -9.698843171830067063e-04, -9.979050411548838571e-04, -1.025922155579141659e-03, -1.053935615258523801e-03, -1.081945375005371763e-03, -1.109951389640594175e-03, -1.137953613995005371e-03, -1.165952002908294096e-03, -1.193946511229721733e-03, -1.221937093817882262e-03, -1.249923705541403736e-03, -1.277906301277925228e-03, -1.305884835915412188e-03, -1.333859264350988972e-03, -1.361829541492256147e-03, -1.389795622256275679e-03, -1.417757461570245524e-03, -1.445715014371301002e-03, -1.473668235607159677e-03, -1.501617080235147965e-03, -1.529561503223341931e-03, -1.557501459550166998e-03, -1.585436904204175690e-03, -1.613367792184574115e-03, -1.641294078500988435e-03, -1.669215718174154846e-03, -1.697132666234907154e-03, -1.725044877725494946e-03, -1.752952307698560971e-03, -1.780854911217834378e-03, -1.808752643357898916e-03, -1.836645459204885519e-03, -1.864533313855443186e-03, -1.892416162418078833e-03, -1.920293960011957950e-03, -1.948166661768245978e-03, -1.976034222829070076e-03, -2.003896598348230574e-03, -2.031753743490942281e-03, -2.059605613434395670e-03, -2.087452163367496671e-03, -2.115293348490646357e-03, -2.143129124016263966e-03, -2.170959445168543604e-03, -2.198784267184182833e-03, -2.226603545311311039e-03, -2.254417234810856402e-03, -2.282225290955336786e-03, -2.310027669030201986e-03, -2.337824324332796796e-03, -2.365615212173062271e-03, -2.393400287873301974e-03, -2.421179506768860682e-03, -2.448952824207130397e-03, -2.476720195548835768e-03, -2.504481576167040969e-03, -2.532236921447684422e-03, -2.559986186790103990e-03, -2.587729327606033431e-03, -2.615466299320895645e-03, -2.643197057372668590e-03, -2.670921557213168113e-03, -2.698639754307035742e-03, -2.726351604132445580e-03, -2.754057062180852774e-03, -2.781756083957678729e-03, -2.809448624981318414e-03, -2.837134640784435766e-03, -2.864814086912795786e-03, -2.892486918926575560e-03, -2.920153092399359416e-03, -2.947812562918819806e-03, -2.975465286086485285e-03, -3.003111217518266568e-03, -3.030750312844217569e-03, -3.058382527708322033e-03, -3.086007817768997036e-03, -3.113626138698856634e-03, -3.141237446185426996e-03, -3.168841695930120755e-03, -3.196438843649524603e-03, -3.224028845074270854e-03, -3.251611655950311600e-03, -3.279187232037914738e-03, -3.306755529112387782e-03, -3.334316502963781664e-03, -3.361870109397620179e-03, -3.389416304233875202e-03, -3.416955043308274667e-03, -3.444486282471292092e-03, -3.472009977588836997e-03, -3.499526084542001637e-03, -3.527034559227620880e-03, -3.554535357558022846e-03, -3.582028435460622110e-03, -3.609513748879073728e-03, -3.636991253772281843e-03, -3.664460906115090105e-03, -3.691922661897998476e-03, -3.719376477127906561e-03, -3.746822307827065834e-03, -3.774260110034391522e-03, -3.801689839804315955e-03, -3.829111453208236624e-03, -3.856524906332719875e-03, -3.883930155281736536e-03, -3.911327156174912445e-03, -3.938715865148948760e-03, -3.966096238356467060e-03, -3.993468231967328176e-03, -4.020831802167590049e-03, -4.048186905160083664e-03, -4.075533497164912644e-03, -4.102871534418455791e-03, -4.130200973174660319e-03, -4.157521769703903004e-03, -4.184833880294255674e-03, -4.212137261250512889e-03, -4.239431868894860678e-03, -4.266717659566624139e-03, -4.293994589622972605e-03, -4.321262615437916101e-03, -4.348521693403589045e-03, -4.375771779929244973e-03, -4.403012831441947827e-03, -4.430244804386342106e-03, -4.457467655225318126e-03, -4.484681340439007624e-03, -4.511885816525934741e-03, -4.539081040002622240e-03, -4.566266967403396354e-03, -4.593443555280816125e-03, -4.620610760205536363e-03, -4.647768538766913066e-03, -4.674916847572083145e-03, -4.702055643247165725e-03, -4.729184882436164930e-03, -4.756304521802419243e-03, -4.783414518026810405e-03, -4.810514827809959579e-03, -4.837605407870502160e-03, -4.864686214946519795e-03, -4.891757205794371177e-03, -4.918818337189973140e-03, -4.945869565927860437e-03, -4.972910848821616818e-03, -4.999942142704504738e-03, -5.026963404428386357e-03, -5.053974590865044532e-03, -5.080975658905050908e-03, -5.107966565458995842e-03, -5.134947267456556851e-03, -5.161917721847134391e-03, -5.188877885599617670e-03, -5.215827715703095883e-03, -5.242767169165802633e-03, -5.269696203016460342e-03, -5.296614774303259367e-03, -5.323522840094499844e-03, -5.350420357478443377e-03, -5.377307283563883752e-03, -5.404183575479233614e-03, -5.431049190373762187e-03, -5.457904085416472907e-03, -5.484748217797350694e-03, -5.511581544726441677e-03, -5.538404023434279934e-03, -5.565215611172461690e-03, -5.592016265212690351e-03, -5.618805942847944837e-03, -5.645584601391467373e-03, -5.672352198178100095e-03, -5.699108690562564201e-03, -5.725854035921664788e-03, -5.752588191652517960e-03, -5.779311115173988919e-03, -5.806022763925553117e-03, -5.832723095368544386e-03, -5.859412066985230337e-03, -5.886089636279418641e-03, -5.912755760776243659e-03, -5.939410398022715483e-03, -5.966053505587415491e-03, -5.992685041060191904e-03, -6.019304962053227508e-03, -6.045913226200079482e-03, -6.072509791156335997e-03, -6.099094614599382021e-03, -6.125667654229066325e-03, -6.152228867766747385e-03, -6.178778212956495541e-03, -6.205315647564179672e-03, -6.231841129378083016e-03, -6.258354616208707151e-03, -6.284856065889421646e-03, -6.311345436275472669e-03, -6.337822685245250200e-03, -6.364287770699196892e-03, -6.390740650560991151e-03, -6.417181282776669368e-03, -6.443609625315009290e-03, -6.470025636168231717e-03, -6.496429273350779257e-03, -6.522820494900836812e-03, -6.549199258879134615e-03, -6.575565523369725392e-03, -6.601919246479757107e-03, -6.628260386340064508e-03, -6.654588901104283548e-03, -6.680904748950030995e-03, -6.707207888077783807e-03, -6.733498276712220065e-03, -6.759775873101119166e-03, -6.786040635516144177e-03, -6.812292522252529590e-03, -6.838531491629759596e-03, -6.864757501990602709e-03, -6.890970511702239343e-03, -6.917170479155819451e-03, -6.943357362766295997e-03, -6.969531120972905468e-03, -6.995691712238924151e-03, -7.021839095052358551e-03, -7.047973227924965271e-03, -7.074094069393491342e-03, -7.100201578018668080e-03, -7.126295712385934469e-03, -7.152376431105212512e-03, -7.178443692811494435e-03, -7.204497456163891193e-03, -7.230537679846924838e-03, -7.256564322569393141e-03, -7.282577343065585636e-03, -7.308576700094347733e-03, -7.334562352439709561e-03, -7.360534258910705549e-03, -7.386492378341808114e-03, -7.412436669592784542e-03, -7.438367091548343975e-03, -7.464283603118832162e-03, -7.490186163239770031e-03, -7.516074730872727983e-03, -7.541949265004180107e-03, -7.567809724646885894e-03, -7.593656068838672453e-03, -7.619488256643742498e-03, -7.645306247151708104e-03, -7.671109999478171841e-03, -7.696899472764580190e-03, -7.722674626178863654e-03, -7.748435418914388119e-03, -7.774181810191311409e-03, -7.799913759255555461e-03, -7.825631225379339750e-03, -7.851334167861604568e-03, -7.877022546027160135e-03, -7.902696319227900043e-03, -7.928355446841601692e-03, -7.953999888273288049e-03, -7.979629602954165998e-03, -8.005244550342337576e-03, -8.030844689922510271e-03, -8.056429981206784594e-03, -8.082000383733457111e-03, -8.107555857068505373e-03, -8.133096360804300748e-03, -8.158621854560945894e-03, -8.184132297985253005e-03, -8.209627650751446376e-03, -8.235107872560858827e-03, -8.260572923142531915e-03, -8.286022762252872459e-03, -8.311457349675538051e-03, -8.336876645221865528e-03, -8.362280608730655873e-03, -8.387669200068826464e-03, -8.413042379130450041e-03, -8.438400105838003706e-03, -8.463742340141244824e-03, -8.489069042018435735e-03, -8.514380171475401798e-03, -8.539675688546152429e-03, -8.564955553292690274e-03, -8.590219725805646120e-03, -8.615468166203293574e-03, -8.640700834632766836e-03, -8.665917691269205483e-03, -8.691118696316250600e-03, -8.716303810005982325e-03, -8.741472992599219963e-03, -8.766626204385457796e-03, -8.791763405682469570e-03, -8.816884556837302489e-03, -8.841989618225361280e-03, -8.867078550251119434e-03, -8.892151313347801747e-03, -8.917207867978052191e-03, -8.942248174633019714e-03, -8.967272193833530913e-03, -8.992279886129005834e-03, -9.017271212098658395e-03, -9.042246132350642909e-03, -9.067204607522560619e-03, -9.092146598281301839e-03, -9.117072065323693006e-03, -9.141980969375525234e-03, -9.166873271192742603e-03, -9.191748931560612956e-03, -9.216607911294022806e-03, -9.241450171238205918e-03, -9.266275672267555025e-03, -9.291084375287059910e-03, -9.315876241231006369e-03, -9.340651231064417762e-03, -9.365409305781852850e-03, -9.390150426408321732e-03, -9.414874553998761955e-03, -9.439581649638924959e-03, -9.464271674444290142e-03, -9.488944589561360693e-03, -9.513600356166582867e-03, -9.538238935467178645e-03, -9.562860288700725936e-03, -9.587464377135977364e-03, -9.612051162071696270e-03, -9.636620604837949078e-03, -9.661172666795544983e-03, -9.685707309335975235e-03, -9.710224493881798244e-03, -9.734724181886408867e-03, -9.759206334834732294e-03, -9.783670914242224848e-03, -9.808117881656142067e-03, -9.832547198654367770e-03, -9.856958826846866015e-03, -9.881352727873932498e-03, -9.905728863408316126e-03, -9.930087195153539797e-03, -9.954427684845177163e-03, -9.978750294249976588e-03, -1.000305498516680137e-02, -1.002734171942588730e-02, -1.005161045888923292e-02, -1.007586116545109746e-02, -1.010009380103712474e-02, -1.012430832760544130e-02, -1.014850470714569013e-02, -1.017268290168008189e-02, -1.019684287326261610e-02, -1.022098458397963268e-02, -1.024510799594959519e-02, -1.026921307132366672e-02, -1.029329977228484426e-02, -1.031736806104917650e-02, -1.034141789986474554e-02, -1.036544925101230523e-02, -1.038946207680517368e-02, -1.041345633958966170e-02, -1.043743200174435982e-02, -1.046138902568109069e-02, -1.048532737384408157e-02, -1.050924700871096011e-02, -1.053314789279191296e-02, -1.055702998863017501e-02, -1.058089325880246824e-02, -1.060473766591809447e-02, -1.062856317262015834e-02, -1.065236974158438425e-02, -1.067615733552056308e-02, -1.069992591717092156e-02, -1.072367544931202704e-02, -1.074740589475326608e-02, -1.077111721633812295e-02, -1.079480937694315620e-02, -1.081848233947916085e-02, -1.084213606689016229e-02, -1.086577052215418303e-02, -1.088938566828289399e-02, -1.091298146832216792e-02, -1.093655788535185212e-02, -1.096011488248528273e-02, -1.098365242287054240e-02, -1.100717046968939343e-02, -1.103066898615785718e-02, -1.105414793552611345e-02, -1.107760728107900529e-02, -1.110104698613525488e-02, -1.112446701404847318e-02, -1.114786732820631857e-02, -1.117124789203120458e-02, -1.119460866897990445e-02, -1.121794962254424842e-02, -1.124127071625025641e-02, -1.126457191365914587e-02, -1.128785317836654423e-02, -1.131111447400337533e-02, -1.133435576423512219e-02, -1.135757701276220860e-02, -1.138077818332054736e-02, -1.140395923968058091e-02, -1.142712014564841588e-02, -1.145026086506481348e-02, -1.147338136180650961e-02, -1.149648159978461370e-02, -1.151956154294647532e-02, -1.154262115527431368e-02, -1.156566040078622383e-02, -1.158867924353542030e-02, -1.161167764761120505e-02, -1.163465557713810189e-02, -1.165761299627648094e-02, -1.168054986922239906e-02, -1.170346616020806474e-02, -1.172636183350102279e-02, -1.174923685340518824e-02, -1.177209118426041957e-02, -1.179492479044235223e-02, -1.181773763636284440e-02, -1.184052968646980182e-02, -1.186330090524768087e-02, -1.188605125721669403e-02, -1.190878070693390280e-02, -1.193148921899230171e-02, -1.195417675802142032e-02, -1.197684328868726944e-02, -1.199948877569262905e-02, -1.202211318377637526e-02, -1.204471647771461311e-02, -1.206729862231955760e-02, -1.208985958244073941e-02, -1.211239932296404205e-02, -1.213491780881234203e-02, -1.215741500494540300e-02, -1.217989087636008744e-02, -1.220234538809033924e-02, -1.222477850520684028e-02, -1.224719019281769218e-02, -1.226958041606787328e-02, -1.229194914014010605e-02, -1.231429633025380062e-02, -1.233662195166630900e-02, -1.235892596967179749e-02, -1.238120834960235866e-02, -1.240346905682738511e-02, -1.242570805675372037e-02, -1.244792531482587922e-02, -1.247012079652631486e-02, -1.249229446737473194e-02, -1.251444629292907361e-02, -1.253657623878466632e-02, -1.255868427057515828e-02, -1.258077035397181173e-02, -1.260283445468372843e-02, -1.262487653845862680e-02, -1.264689657108166929e-02, -1.266889451837667664e-02, -1.269087034620533690e-02, -1.271282402046765465e-02, -1.273475550710186262e-02, -1.275666477208489170e-02, -1.277855178143154705e-02, -1.280041650119565638e-02, -1.282225889746900493e-02, -1.284407893638241094e-02, -1.286587658410503349e-02, -1.288765180684467611e-02, -1.290940457084788565e-02, -1.293113484240012052e-02, -1.295284258782570391e-02, -1.297452777348759995e-02, -1.299619036578772945e-02, -1.301783033116695604e-02, -1.303944763610551290e-02, -1.306104224712226029e-02, -1.308261413077558763e-02, -1.310416325366260681e-02, -1.312568958242023125e-02, -1.314719308372420091e-02, -1.316867372428973983e-02, -1.319013147087136177e-02, -1.321156629026332824e-02, -1.323297814929897016e-02, -1.325436701485159519e-02, -1.327573285383373304e-02, -1.329707563319770976e-02, -1.331839531993544469e-02, -1.333969188107874196e-02, -1.336096528369930432e-02, -1.338221549490825960e-02, -1.340344248185710262e-02, -1.342464621173694583e-02, -1.344582665177902758e-02, -1.346698376925447790e-02, -1.348811753147487365e-02, -1.350922790579148214e-02, -1.353031485959624303e-02, -1.355137836032082981e-02, -1.357241837543778779e-02, -1.359343487245950888e-02, -1.361442781893901569e-02, -1.363539718246958507e-02, -1.365634293068538653e-02, -1.367726503126062178e-02, -1.369816345191056904e-02, -1.371903816039084061e-02, -1.373988912449773322e-02, -1.376071631206853690e-02, -1.378151969098098499e-02, -1.380229922915403133e-02, -1.382305489454713730e-02, -1.384378665516112009e-02, -1.386449447903741715e-02, -1.388517833425862054e-02, -1.390583818894835198e-02, -1.392647401127160289e-02, -1.394708576943421742e-02, -1.396767343168365920e-02, -1.398823696630831746e-02, -1.400877634163802399e-02, -1.402929152604391258e-02, -1.404978248793881286e-02, -1.407024919577668128e-02, -1.409069161805320824e-02, -1.411110972330578348e-02, -1.413150348011310738e-02, -1.415187285709558311e-02, -1.417221782291541374e-02, -1.419253834627670803e-02, -1.421283439592505200e-02, -1.423310594064831555e-02, -1.425335294927577642e-02, -1.427357539067914544e-02, -1.429377323377181187e-02, -1.431394644750924247e-02, -1.433409500088903173e-02, -1.435421886295108231e-02, -1.437431800277720780e-02, -1.439439238949175720e-02, -1.441444199226109626e-02, -1.443446678029390584e-02, -1.445446672284158955e-02, -1.447444178919753306e-02, -1.449439194869798012e-02, -1.451431717072130916e-02, -1.453421742468889721e-02, -1.455409268006437225e-02, -1.457394290635415784e-02, -1.459376807310724423e-02, -1.461356814991566361e-02, -1.463334310641392459e-02, -1.465309291227966972e-02, -1.467281753723321570e-02, -1.469251695103788134e-02, -1.471219112349979145e-02, -1.473184002446854476e-02, -1.475146362383628236e-02, -1.477106189153875454e-02, -1.479063479755433549e-02, -1.481018231190518904e-02, -1.482970440465631971e-02, -1.484920104591601515e-02, -1.486867220583627629e-02, -1.488811785461208702e-02, -1.490753796248217231e-02, -1.492693249972845693e-02, -1.494630143667683049e-02, -1.496564474369602160e-02, -1.498496239119917126e-02, -1.500425434964253527e-02, -1.502352058952637071e-02, -1.504276108139440161e-02, -1.506197579583457881e-02, -1.508116470347825588e-02, -1.510032777500090219e-02, -1.511946498112169690e-02, -1.513857629260405985e-02, -1.515766168025546937e-02, -1.517672111492707719e-02, -1.519575456751453245e-02, -1.521476200895741267e-02, -1.523374341023956378e-02, -1.525269874238890759e-02, -1.527162797647803327e-02, -1.529053108362334046e-02, -1.530940803498615117e-02, -1.532825880177174707e-02, -1.534708335523002690e-02, -1.536588166665534168e-02, -1.538465370738680699e-02, -1.540339944880770792e-02, -1.542211886234648270e-02, -1.544081191947565754e-02, -1.545947859171301932e-02, -1.547811885062076731e-02, -1.549673266780587054e-02, -1.551532001492048410e-02, -1.553388086366122578e-02, -1.555241518577004517e-02, -1.557092295303347772e-02, -1.558940413728351383e-02, -1.560785871039658060e-02, -1.562628664429487058e-02, -1.564468791094519515e-02, -1.566306248235994902e-02, -1.568141033059639380e-02, -1.569973142775743860e-02, -1.571802574599102942e-02, -1.573629325749043364e-02, -1.575453393449439271e-02, -1.577274774928726087e-02, -1.579093467419849517e-02, -1.580909468160343612e-02, -1.582722774392284967e-02, -1.584533383362301748e-02, -1.586341292321593460e-02, -1.588146498525922629e-02, -1.589948999235640120e-02, -1.591748791715643860e-02, -1.593545873235455504e-02, -1.595340241069142725e-02, -1.597131892495377500e-02, -1.598920824797412168e-02, -1.600707035263130781e-02, -1.602490521184975203e-02, -1.604271279860029417e-02, -1.606049308589950833e-02, -1.607824604681054939e-02, -1.609597165444228914e-02, -1.611366988195002056e-02, -1.613134070253539193e-02, -1.614898408944607719e-02, -1.616660001597647334e-02, -1.618418845546697529e-02, -1.620174938130454143e-02, -1.621928276692252702e-02, -1.623678858580103121e-02, -1.625426681146625862e-02, -1.627171741749141448e-02, -1.628914037749598295e-02, -1.630653566514641759e-02, -1.632390325415557231e-02, -1.634124311828317674e-02, -1.635855523133555520e-02, -1.637583956716622685e-02, -1.639309609967508005e-02, -1.641032480280939926e-02, -1.642752565056289013e-02, -1.644469861697664056e-02, -1.646184367613847538e-02, -1.647896080218327550e-02, -1.649604996929326245e-02, -1.651311115169738428e-02, -1.653014432367219330e-02, -1.654714945954099611e-02, -1.656412653367468624e-02, -1.658107552049107106e-02, -1.659799639445570102e-02, -1.661488913008110982e-02, -1.663175370192748054e-02, -1.664859008460220502e-02, -1.666539825276033837e-02, -1.668217818110433182e-02, -1.669892984438407432e-02, -1.671565321739710772e-02, -1.673234827498870994e-02, -1.674901499205179445e-02, -1.676565334352678530e-02, -1.678226330440194328e-02, -1.679884484971320632e-02, -1.681539795454452951e-02, -1.683192259402734037e-02, -1.684841874334145131e-02, -1.686488637771401192e-02, -1.688132547242065379e-02, -1.689773600278460935e-02, -1.691411794417726697e-02, -1.693047127201798355e-02, -1.694679596177441419e-02, -1.696309198896214093e-02, -1.697935932914512031e-02, -1.699559795793520109e-02, -1.701180785099290493e-02, -1.702798898402650349e-02, -1.704414133279293087e-02, -1.706026487309754078e-02, -1.707635958079367286e-02, -1.709242543178357554e-02, -1.710846240201762888e-02, -1.712447046749470195e-02, -1.714044960426220482e-02, -1.715639978841636271e-02, -1.717232099610164694e-02, -1.718821320351143767e-02, -1.720407638688750684e-02, -1.721991052252062893e-02, -1.723571558675010898e-02, -1.725149155596403597e-02, -1.726723840659932785e-02, -1.728295611514189117e-02, -1.729864465812618046e-02, -1.731430401213595455e-02, -1.732993415380364513e-02, -1.734553505981059271e-02, -1.736110670688751148e-02, -1.737664907181379545e-02, -1.739216213141821579e-02, -1.740764586257833452e-02, -1.742310024222120876e-02, -1.743852524732284262e-02, -1.745392085490851328e-02, -1.746928704205268079e-02, -1.748462378587935240e-02, -1.749993106356148576e-02, -1.751520885232177652e-02, -1.753045712943199913e-02, -1.754567587221348215e-02, -1.756086505803686540e-02, -1.757602466432256136e-02, -1.759115466854013765e-02, -1.760625504820904214e-02, -1.762132578089819351e-02, -1.763636684422607848e-02, -1.765137821586083844e-02, -1.766635987352020015e-02, -1.768131179497190938e-02, -1.769623395803305785e-02, -1.771112634057105811e-02, -1.772598892050242236e-02, -1.774082167579422650e-02, -1.775562458446294095e-02, -1.777039762457510372e-02, -1.778514077424713652e-02, -1.779985401164558417e-02, -1.781453731498680929e-02, -1.782919066253741552e-02, -1.784381403261389720e-02, -1.785840740358276765e-02, -1.787297075386109699e-02, -1.788750406191557535e-02, -1.790200730626357803e-02, -1.791648046547226689e-02, -1.793092351815947158e-02, -1.794533644299300262e-02, -1.795971921869112323e-02, -1.797407182402228909e-02, -1.798839423780569310e-02, -1.800268643891052636e-02, -1.801694840625677266e-02, -1.803118011881469154e-02, -1.804538155560498833e-02, -1.805955269569905000e-02, -1.807369351821880646e-02, -1.808780400233667845e-02, -1.810188412727594884e-02, -1.811593387231019009e-02, -1.812995321676408311e-02, -1.814394214001265049e-02, -1.815790062148176301e-02, -1.817182864064828193e-02, -1.818572617703958366e-02, -1.819959321023415996e-02, -1.821342971986103162e-02, -1.822723568560041460e-02, -1.824101108718326550e-02, -1.825475590439157650e-02, -1.826847011705826085e-02, -1.828215370506735410e-02, -1.829580664835374348e-02, -1.830942892690362242e-02, -1.832302052075410886e-02, -1.833658140999346389e-02, -1.835011157476112639e-02, -1.836361099524769572e-02, -1.837707965169518148e-02, -1.839051752439645540e-02, -1.840392459369606659e-02, -1.841730083998951994e-02, -1.843064624372380694e-02, -1.844396078539723219e-02, -1.845724444555957647e-02, -1.847049720481180879e-02, -1.848371904380668312e-02, -1.849690994324816595e-02, -1.851006988389161320e-02, -1.852319884654415882e-02, -1.853629681206439214e-02, -1.854936376136234397e-02, -1.856239967539998620e-02, -1.857540453519045467e-02, -1.858837832179898591e-02, -1.860132101634219201e-02, -1.861423259998850818e-02, -1.862711305395816502e-02, -1.863996235952297686e-02, -1.865278049800680668e-02, -1.866556745078507343e-02, -1.867832319928534879e-02, -1.869104772498656267e-02, -1.870374100942018628e-02, -1.871640303416906986e-02, -1.872903378086842111e-02, -1.874163323120512162e-02, -1.875420136691822309e-02, -1.876673816979876688e-02, -1.877924362168982911e-02, -1.879171770448642004e-02, -1.880416040013606002e-02, -1.881657169063793641e-02, -1.882895155804372930e-02, -1.884129998445718129e-02, -1.885361695203420160e-02, -1.886590244298296318e-02, -1.887815643956379866e-02, -1.889037892408960279e-02, -1.890256987892522528e-02, -1.891472928648817858e-02, -1.892685712924814176e-02, -1.893895338972715128e-02, -1.895101805049965310e-02, -1.896305109419270385e-02, -1.897505250348561698e-02, -1.898702226111029928e-02, -1.899896034985104620e-02, -1.901086675254487837e-02, -1.902274145208120507e-02, -1.903458443140196993e-02, -1.904639567350196322e-02, -1.905817516142828752e-02, -1.906992287828095101e-02, -1.908163880721242683e-02, -1.909332293142815273e-02, -1.910497523418593427e-02, -1.911659569879663526e-02, -1.912818430862365041e-02, -1.913974104708340493e-02, -1.915126589764485493e-02, -1.916275884383007375e-02, -1.917421986921379745e-02, -1.918564895742371629e-02, -1.919704609214033589e-02, -1.920841125709731381e-02, -1.921974443608093566e-02, -1.923104561293077774e-02, -1.924231477153921094e-02, -1.925355189585170254e-02, -1.926475696986677463e-02, -1.927592997763586183e-02, -1.928707090326368251e-02, -1.929817973090795780e-02, -1.930925644477956768e-02, -1.932030102914253714e-02, -1.933131346831403960e-02, -1.934229374666435186e-02, -1.935324184861721836e-02, -1.936415775864937239e-02, -1.937504146129102531e-02, -1.938589294112542244e-02, -1.939671218278930104e-02, -1.940749917097272376e-02, -1.941825389041886007e-02, -1.942897632592446161e-02, -1.943966646233970946e-02, -1.945032428456800952e-02, -1.946094977756637409e-02, -1.947154292634505762e-02, -1.948210371596787588e-02, -1.949263213155230656e-02, -1.950312815826902441e-02, -1.951359178134247363e-02, -1.952402298605048631e-02, -1.953442175772461195e-02, -1.954478808174994406e-02, -1.955512194356509928e-02, -1.956542332866229722e-02, -1.957569222258767269e-02, -1.958592861094067897e-02, -1.959613247937478167e-02, -1.960630381359687244e-02, -1.961644259936785178e-02, -1.962654882250196645e-02, -1.963662246886766286e-02, -1.964666352438691754e-02, -1.965667197503557020e-02, -1.966664780684337227e-02, -1.967659100589373364e-02, -1.968650155832412166e-02, -1.969637945032564480e-02, -1.970622466814355225e-02, -1.971603719807685576e-02, -1.972581702647865920e-02, -1.973556413975574575e-02, -1.974527852436923359e-02, -1.975496016683390629e-02, -1.976460905371870552e-02, -1.977422517164655405e-02, -1.978380850729453619e-02, -1.979335904739355431e-02, -1.980287677872889437e-02, -1.981236168813969856e-02, -1.982181376251929833e-02, -1.983123298881523874e-02, -1.984061935402903903e-02, -1.984997284521659508e-02, -1.985929344948784286e-02, -1.986858115400694236e-02, -1.987783594599232956e-02, -1.988705781271657771e-02, -1.989624674150657427e-02, -1.990540271974347922e-02, -1.991452573486268696e-02, -1.992361577435404485e-02, -1.993267282576145771e-02, -1.994169687668348803e-02, -1.995068791477268982e-02, -1.995964592773630600e-02, -1.996857090333569937e-02, -1.997746282938685225e-02, -1.998632169376010626e-02, -1.999514748438008596e-02, -2.000394018922609443e-02, -2.001269979633161014e-02, -2.002142629378491842e-02, -2.003011966972849736e-02, -2.003877991235965966e-02, -2.004740700992985181e-02, -2.005600095074538958e-02, -2.006456172316700703e-02, -2.007308931560999876e-02, -2.008158371654424415e-02, -2.009004491449428026e-02, -2.009847289803913875e-02, -2.010686765581272059e-02, -2.011522917650332420e-02, -2.012355744885392997e-02, -2.013185246166235634e-02, -2.014011420378096842e-02, -2.014834266411694857e-02, -2.015653783163198765e-02, -2.016469969534276027e-02, -2.017282824432054325e-02, -2.018092346769134390e-02, -2.018898535463594865e-02, -2.019701389439011383e-02, -2.020500907624411466e-02, -2.021297088954332813e-02, -2.022089932368769175e-02, -2.022879436813210599e-02, -2.023665601238629208e-02, -2.024448424601494115e-02, -2.025227905863746791e-02, -2.026004043992831252e-02, -2.026776837961663871e-02, -2.027546286748681953e-02, -2.028312389337789956e-02, -2.029075144718394189e-02, -2.029834551885398297e-02, -2.030590609839202573e-02, -2.031343317585709851e-02, -2.032092674136308161e-02, -2.032838678507905422e-02, -2.033581329722898220e-02, -2.034320626809183949e-02, -2.035056568800167748e-02, -2.035789154734771178e-02, -2.036518383657398568e-02, -2.037244254617998421e-02, -2.037966766671978416e-02, -2.038685918880307063e-02, -2.039401710309418636e-02, -2.040114140031294016e-02, -2.040823207123412114e-02, -2.041528910668765490e-02, -2.042231249755871447e-02, -2.042930223478756774e-02, -2.043625830936957391e-02, -2.044318071235549927e-02, -2.045006943485111819e-02, -2.045692446801744557e-02, -2.046374580307085828e-02, -2.047053343128283145e-02, -2.047728734398002529e-02, -2.048400753254448620e-02, -2.049069398841345951e-02, -2.049734670307945886e-02, -2.050396566809035981e-02, -2.051055087504908420e-02, -2.051710231561427664e-02, -2.052361998149946493e-02, -2.053010386447366373e-02, -2.053655395636133640e-02, -2.054297024904209665e-02, -2.054935273445103808e-02, -2.055570140457851566e-02, -2.056201625147029838e-02, -2.056829726722755186e-02, -2.057454444400682106e-02, -2.058075777401991227e-02, -2.058693724953425050e-02, -2.059308286287254292e-02, -2.059919460641292110e-02, -2.060527247258898617e-02, -2.061131645388974282e-02, -2.061732654285957506e-02, -2.062330273209851683e-02, -2.062924501426181834e-02, -2.063515338206044214e-02, -2.064102782826058094e-02, -2.064686834568421614e-02, -2.065267492720845866e-02, -2.065844756576614566e-02, -2.066418625434564976e-02, -2.066989098599069513e-02, -2.067556175380069403e-02, -2.068119855093056639e-02, -2.068680137059058372e-02, -2.069237020604673336e-02, -2.069790505062055891e-02, -2.070340589768915676e-02, -2.070887274068506853e-02, -2.071430557309654821e-02, -2.071970438846738871e-02, -2.072506918039695653e-02, -2.073039994254013280e-02, -2.073569666860755265e-02, -2.074095935236532073e-02, -2.074618798763524369e-02, -2.075138256829468439e-02, -2.075654308827677708e-02, -2.076166954156995897e-02, -2.076676192221869194e-02, -2.077182022432272693e-02, -2.077684444203777014e-02, -2.078183456957494873e-02, -2.078679060120120631e-02, -2.079171253123902885e-02, -2.079660035406668064e-02, -2.080145406411795447e-02, -2.080627365588251509e-02, -2.081105912390543780e-02, -2.081581046278787456e-02, -2.082052766718634970e-02, -2.082521073181313812e-02, -2.082985965143636237e-02, -2.083447442087969434e-02, -2.083905503502263973e-02, -2.084360148880028477e-02, -2.084811377720358419e-02, -2.085259189527917389e-02, -2.085703583812930847e-02, -2.086144560091219430e-02, -2.086582117884151419e-02, -2.087016256718692703e-02, -2.087446976127367917e-02, -2.087874275648281264e-02, -2.088298154825122752e-02, -2.088718613207141833e-02, -2.089135650349174117e-02, -2.089549265811617776e-02, -2.089959459160473446e-02, -2.090366229967298081e-02, -2.090769577809222304e-02, -2.091169502268983710e-02, -2.091566002934855048e-02, -2.091959079400719859e-02, -2.092348731266033268e-02, -2.092734958135818515e-02, -2.093117759620688814e-02, -2.093497135336835208e-02, -2.093873084906021712e-02, -2.094245607955600927e-02, -2.094614704118490447e-02, -2.094980373033211371e-02, -2.095342614343838686e-02, -2.095701427700050537e-02, -2.096056812757088328e-02, -2.096408769175797659e-02, -2.096757296622568309e-02, -2.097102394769401190e-02, -2.097444063293873659e-02, -2.097782301879134656e-02, -2.098117110213928993e-02, -2.098448487992566822e-02, -2.098776434914954858e-02, -2.099100950686565159e-02, -2.099422035018472590e-02, -2.099739687627310766e-02, -2.100053908235321315e-02, -2.100364696570303225e-02, -2.100672052365655171e-02, -2.100975975360352965e-02, -2.101276465298947821e-02, -2.101573521931585087e-02, -2.101867145013981697e-02, -2.102157334307443864e-02, -2.102444089578859795e-02, -2.102727410600700383e-02, -2.103007297151011923e-02, -2.103283749013431028e-02, -2.103556765977172144e-02, -2.103826347837037605e-02, -2.104092494393403068e-02, -2.104355205452240751e-02, -2.104614480825080930e-02, -2.104870320329067443e-02, -2.105122723786892469e-02, -2.105371691026857242e-02, -2.105617221882828335e-02, -2.105859316194265418e-02, -2.106097973806199050e-02, -2.106333194569254275e-02, -2.106564978339617658e-02, -2.106793324979080659e-02, -2.107018234354987932e-02, -2.107239706340289717e-02, -2.107457740813511310e-02, -2.107672337658746120e-02, -2.107883496765677878e-02, -2.108091218029569530e-02, -2.108295501351264284e-02, -2.108496346637175889e-02, -2.108693753799312579e-02, -2.108887722755248273e-02, -2.109078253428144784e-02, -2.109265345746734813e-02, -2.109448999645338954e-02, -2.109629215063843141e-02, -2.109805991947724668e-02, -2.109979330248018189e-02, -2.110149229921361516e-02, -2.110315690929955371e-02, -2.110478713241569979e-02, -2.110638296829566232e-02, -2.110794441672872099e-02, -2.110947147755989906e-02, -2.111096415069000157e-02, -2.111242243607565003e-02, -2.111384633372908812e-02, -2.111523584371836557e-02, -2.111659096616721326e-02, -2.111791170125516814e-02, -2.111919804921740321e-02, -2.112045001034492525e-02, -2.112166758498441529e-02, -2.112285077353821122e-02, -2.112399957646439105e-02, -2.112511399427678682e-02, -2.112619402754489090e-02, -2.112723967689390109e-02, -2.112825094300467207e-02, -2.112922782661385071e-02, -2.113017032851357765e-02, -2.113107844955183431e-02, -2.113195219063225203e-02, -2.113279155271404613e-02, -2.113359653681213743e-02, -2.113436714399706540e-02, -2.113510337539518599e-02, -2.113580523218824836e-02, -2.113647271561378341e-02, -2.113710582696497892e-02, -2.113770456759049218e-02, -2.113826893889482472e-02, -2.113879894233791634e-02, -2.113929457943534984e-02, -2.113975585175837529e-02, -2.114018276093370188e-02, -2.114057530864383791e-02, -2.114093349662672303e-02, -2.114125732667579069e-02, -2.114154680064029776e-02, -2.114180192042483877e-02, -2.114202268798962350e-02, -2.114220910535048736e-02, -2.114236117457868325e-02, -2.114247889780112438e-02, -2.114256227720013800e-02, -2.114261131501362148e-02, -2.114262601353501109e-02, -2.114260637511320914e-02, -2.114255240215254239e-02, -2.114246409711297014e-02, -2.114234146250989002e-02, -2.114218450091404078e-02, -2.114199321495189091e-02, -2.114176760730505575e-02, -2.114150768071084568e-02, -2.114121343796185673e-02, -2.114088488190616483e-02, -2.114052201544738135e-02, -2.114012484154434782e-02, -2.113969336321134748e-02, -2.113922758351825804e-02, -2.113872750559002422e-02, -2.113819313260724767e-02, -2.113762446780573581e-02, -2.113702151447678645e-02, -2.113638427596691710e-02, -2.113571275567806620e-02, -2.113500695706754459e-02, -2.113426688364787587e-02, -2.113349253898697336e-02, -2.113268392670802909e-02, -2.113184105048957970e-02, -2.113096391406539890e-02, -2.113005252122449745e-02, -2.112910687581131056e-02, -2.112812698172529882e-02, -2.112711284292138544e-02, -2.112606446340956415e-02, -2.112498184725522532e-02, -2.112386499857880212e-02, -2.112271392155600641e-02, -2.112152862041780446e-02, -2.112030909945024001e-02, -2.111905536299455918e-02, -2.111776741544722433e-02, -2.111644526125981344e-02, -2.111508890493899240e-02, -2.111369835104669190e-02, -2.111227360419980909e-02, -2.111081466907043999e-02, -2.110932155038573385e-02, -2.110779425292795553e-02, -2.110623278153445428e-02, -2.110463714109756320e-02, -2.110300733656474831e-02, -2.110134337293842824e-02, -2.109964525527612683e-02, -2.109791298869041418e-02, -2.109614657834870538e-02, -2.109434602947357629e-02, -2.109251134734236449e-02, -2.109064253728765506e-02, -2.108873960469684339e-02, -2.108680255501206927e-02, -2.108483139373080323e-02, -2.108282612640512838e-02, -2.108078675864211507e-02, -2.107871329610375155e-02, -2.107660574450682597e-02, -2.107446410962307906e-02, -2.107228839727905839e-02, -2.107007861335611840e-02, -2.106783476379054179e-02, -2.106555685457321345e-02, -2.106324489175011652e-02, -2.106089888142171490e-02, -2.105851882974339034e-02, -2.105610474292531412e-02, -2.105365662723237413e-02, -2.105117448898406046e-02, -2.104865833455476024e-02, -2.104610817037340029e-02, -2.104352400292376982e-02, -2.104090583874417345e-02, -2.103825368442761856e-02, -2.103556754662171818e-02, -2.103284743202884360e-02, -2.103009334740586073e-02, -2.102730529956426883e-02, -2.102448329537017629e-02, -2.102162734174417569e-02, -2.101873744566145480e-02, -2.101581361415182439e-02, -2.101285585429954472e-02, -2.100986417324330821e-02, -2.100683857817651004e-02, -2.100377907634680755e-02, -2.100068567505639083e-02, -2.099755838166195501e-02, -2.099439720357462388e-02, -2.099120214825983197e-02, -2.098797322323743900e-02, -2.098471043608179931e-02, -2.098141379442152593e-02, -2.097808330593968831e-02, -2.097471897837352439e-02, -2.097132081951475976e-02, -2.096788883720929197e-02, -2.096442303935741949e-02, -2.096092343391362661e-02, -2.095739002888669447e-02, -2.095382283233960738e-02, -2.095022185238961179e-02, -2.094658709720811571e-02, -2.094291857502069906e-02, -2.093921629410716925e-02, -2.093548026280143970e-02, -2.093171048949165822e-02, -2.092790698261991905e-02, -2.092406975068246758e-02, -2.092019880222976622e-02, -2.091629414586615443e-02, -2.091235579025017485e-02, -2.090838374409428532e-02, -2.090437801616503583e-02, -2.090033861528294012e-02, -2.089626555032237862e-02, -2.089215883021195222e-02, -2.088801846393388909e-02, -2.088384446052457197e-02, -2.087963682907424331e-02, -2.087539557872685261e-02, -2.087112071868047966e-02, -2.086681225818686619e-02, -2.086247020655164486e-02, -2.085809457313426291e-02, -2.085368536734796482e-02, -2.084924259865973684e-02, -2.084476627659034853e-02, -2.084025641071423143e-02, -2.083571301065961431e-02, -2.083113608610841563e-02, -2.082652564679617069e-02, -2.082188170251216691e-02, -2.081720426309923225e-02, -2.081249333845380106e-02, -2.080774893852603558e-02, -2.080297107331955872e-02, -2.079815975289156169e-02, -2.079331498735281780e-02, -2.078843678686758886e-02, -2.078352516165372921e-02, -2.077858012198230755e-02, -2.077360167817818987e-02, -2.076858984061944607e-02, -2.076354461973761376e-02, -2.075846602601774324e-02, -2.075335406999797086e-02, -2.074820876227022326e-02, -2.074303011347932574e-02, -2.073781813432369267e-02, -2.073257283555486261e-02, -2.072729422797780358e-02, -2.072198232245064595e-02, -2.071663712988474834e-02, -2.071125866124464907e-02, -2.070584692754815631e-02, -2.070040193986612612e-02, -2.069492370932274339e-02, -2.068941224709500842e-02, -2.068386756441342039e-02, -2.067828967256121059e-02, -2.067267858287480387e-02, -2.066703430674366945e-02, -2.066135685561030361e-02, -2.065564624097008389e-02, -2.064990247437148083e-02, -2.064412556741582541e-02, -2.063831553175743405e-02, -2.063247237910351833e-02, -2.062659612121398034e-02, -2.062068676990190877e-02, -2.061474433703295098e-02, -2.060876883452568767e-02, -2.060276027435151494e-02, -2.059671866853443264e-02, -2.059064402915132888e-02, -2.058453636833178571e-02, -2.057839569825802364e-02, -2.057222203116492940e-02, -2.056601537934016691e-02, -2.055977575512386510e-02, -2.055350317090880868e-02, -2.054719763914035144e-02, -2.054085917231647865e-02, -2.053448778298748445e-02, -2.052808348375641939e-02, -2.052164628727876777e-02, -2.051517620626232968e-02, -2.050867325346744305e-02, -2.050213744170683444e-02, -2.049556878384561909e-02, -2.048896729280125228e-02, -2.048233298154343227e-02, -2.047566586309443326e-02, -2.046896595052853304e-02, -2.046223325697248130e-02, -2.045546779560503819e-02, -2.044866957965749479e-02, -2.044183862241288549e-02, -2.043497493720683456e-02, -2.042807853742692470e-02, -2.042114943651269360e-02, -2.041418764795609533e-02, -2.040719318530082038e-02, -2.040016606214286113e-02, -2.039310629212997411e-02, -2.038601388896203737e-02, -2.037888886639092553e-02, -2.037173123822035026e-02, -2.036454101830596081e-02, -2.035731822055528856e-02, -2.035006285892768801e-02, -2.034277494743438192e-02, -2.033545450013837450e-02, -2.032810153115449658e-02, -2.032071605464917663e-02, -2.031329808484078070e-02, -2.030584763599918574e-02, -2.029836472244595652e-02, -2.029084935855442542e-02, -2.028330155874939061e-02, -2.027572133750739011e-02, -2.026810870935637568e-02, -2.026046368887595567e-02, -2.025278629069710012e-02, -2.024507652950238365e-02, -2.023733442002581193e-02, -2.022955997705280437e-02, -2.022175321542006576e-02, -2.021391415001595401e-02, -2.020604279577978973e-02, -2.019813916770257789e-02, -2.019020328082627228e-02, -2.018223515024433062e-02, -2.017423479110141971e-02, -2.016620221859324186e-02, -2.015813744796682294e-02, -2.015004049452025561e-02, -2.014191137360289707e-02, -2.013375010061498049e-02, -2.012555669100784747e-02, -2.011733116028402088e-02, -2.010907352399698284e-02, -2.010078379775104632e-02, -2.009246199720161538e-02, -2.008410813805492495e-02, -2.007572223606813450e-02, -2.006730430704926210e-02, -2.005885436685719142e-02, -2.005037243140155717e-02, -2.004185851664279372e-02, -2.003331263859201017e-02, -2.002473481331118119e-02, -2.001612505691275495e-02, -2.000748338556002440e-02, -1.999880981546684963e-02, -1.999010436289757470e-02, -1.998136704416733633e-02, -1.997259787564152275e-02, -1.996379687373619691e-02, -1.995496405491797159e-02, -1.994609943570381863e-02, -1.993720303266094396e-02, -1.992827486240733581e-02, -1.991931494161092164e-02, -1.991032328699025508e-02, -1.990129991531396775e-02, -1.989224484340113702e-02, -1.988315808812095645e-02, -1.987403966639290226e-02, -1.986488959518657380e-02, -1.985570789152156512e-02, -1.984649457246789178e-02, -1.983724965514531077e-02, -1.982797315672399710e-02, -1.981866509442377702e-02, -1.980932548551471786e-02, -1.979995434731665963e-02, -1.979055169719954113e-02, -1.978111755258294552e-02, -1.977165193093654433e-02, -1.976215484977978873e-02, -1.975262632668188176e-02, -1.974306637926172628e-02, -1.973347502518812274e-02, -1.972385228217928693e-02, -1.971419816800355426e-02, -1.970451270047833894e-02, -1.969479589747109849e-02, -1.968504777689876473e-02, -1.967526835672759808e-02, -1.966545765497365594e-02, -1.965561568970212308e-02, -1.964574247902801593e-02, -1.963583804111544706e-02, -1.962590239417812826e-02, -1.961593555647892992e-02, -1.960593754633011346e-02, -1.959590838209319258e-02, -1.958584808217895754e-02, -1.957575666504734677e-02, -1.956563414920758914e-02, -1.955548055321790560e-02, -1.954529589568581791e-02, -1.953508019526764561e-02, -1.952483347066904032e-02, -1.951455574064452428e-02, -1.950424702399739321e-02, -1.949390733958040328e-02, -1.948353670629467127e-02, -1.947313514309055582e-02, -1.946270266896702947e-02, -1.945223930297205681e-02, -1.944174506420212611e-02, -1.943121997180271079e-02, -1.942066404496781834e-02, -1.941007730294034422e-02, -1.939945976501152025e-02, -1.938881145052134131e-02, -1.937813237885835371e-02, -1.936742256945966911e-02, -1.935668204181075630e-02, -1.934591081544564939e-02, -1.933510890994682291e-02, -1.932427634494512936e-02, -1.931341314011979921e-02, -1.930251931519809741e-02, -1.929159488995602426e-02, -1.928063988421754166e-02, -1.926965431785501379e-02, -1.925863821078867971e-02, -1.924759158298726056e-02, -1.923651445446729683e-02, -1.922540684529368271e-02, -1.921426877557901730e-02, -1.920310026548420479e-02, -1.919190133521790631e-02, -1.918067200503693198e-02, -1.916941229524566151e-02, -1.915812222619668950e-02, -1.914680181829004485e-02, -1.913545109197386726e-02, -1.912407006774395624e-02, -1.911265876614360801e-02, -1.910121720776417065e-02, -1.908974541324423915e-02, -1.907824340327033200e-02, -1.906671119857625274e-02, -1.905514881994354454e-02, -1.904355628820120216e-02, -1.903193362422557489e-02, -1.902028084894044971e-02, -1.900859798331714506e-02, -1.899688504837406325e-02, -1.898514206517713451e-02, -1.897336905483935562e-02, -1.896156603852122355e-02, -1.894973303743016993e-02, -1.893787007282094273e-02, -1.892597716599520724e-02, -1.891405433830200752e-02, -1.890210161113710721e-02, -1.889011900594347523e-02, -1.887810654421106030e-02, -1.886606424747656885e-02, -1.885399213732387794e-02, -1.884189023538323723e-02, -1.882975856333231335e-02, -1.881759714289502061e-02, -1.880540599584230518e-02, -1.879318514399175993e-02, -1.878093460920759322e-02, -1.876865441340061849e-02, -1.875634457852837222e-02, -1.874400512659462822e-02, -1.873163607964998048e-02, -1.871923745979134010e-02, -1.870680928916214000e-02, -1.869435158995205043e-02, -1.868186438439714200e-02, -1.866934769477989961e-02, -1.865680154342888586e-02, -1.864422595271906721e-02, -1.863162094507154684e-02, -1.861898654295364094e-02, -1.860632276887853875e-02, -1.859362964540579172e-02, -1.858090719514081043e-02, -1.856815544073507976e-02, -1.855537440488585349e-02, -1.854256411033671295e-02, -1.852972457987662677e-02, -1.851685583634079396e-02, -1.850395790260982859e-02, -1.849103080161050225e-02, -1.847807455631492873e-02, -1.846508918974109834e-02, -1.845207472495270090e-02, -1.843903118505875460e-02, -1.842595859321411247e-02, -1.841285697261888302e-02, -1.839972634651890898e-02, -1.838656673820514634e-02, -1.837337817101428530e-02, -1.836016066832803911e-02, -1.834691425357375463e-02, -1.833363895022368725e-02, -1.832033478179563232e-02, -1.830700177185230412e-02, -1.829363994400178342e-02, -1.828024932189708032e-02, -1.826682992923642918e-02, -1.825338178976286183e-02, -1.823990492726466905e-02, -1.822639936557482118e-02, -1.821286512857117276e-02, -1.819930224017666034e-02, -1.818571072435885144e-02, -1.817209060513025332e-02, -1.815844190654774745e-02, -1.814476465271334243e-02, -1.813105886777331352e-02, -1.811732457591883755e-02, -1.810356180138523660e-02, -1.808977056845291129e-02, -1.807595090144625480e-02, -1.806210282473438497e-02, -1.804822636273057876e-02, -1.803432153989263653e-02, -1.802038838072254207e-02, -1.800642690976659091e-02, -1.799243715161536611e-02, -1.797841913090343635e-02, -1.796437287230969945e-02, -1.795029840055701459e-02, -1.793619574041233067e-02, -1.792206491668657184e-02, -1.790790595423459239e-02, -1.789371887795534327e-02, -1.787950371279152517e-02, -1.786526048372939421e-02, -1.785098921579961195e-02, -1.783668993407589928e-02, -1.782236266367609803e-02, -1.780800742976165751e-02, -1.779362425753763452e-02, -1.777921317225242270e-02, -1.776477419919827300e-02, -1.775030736371065870e-02, -1.773581269116859122e-02, -1.772129020699447777e-02, -1.770673993665400348e-02, -1.769216190565636032e-02, -1.767755613955365041e-02, -1.766292266394157637e-02, -1.764826150445868158e-02, -1.763357268678680118e-02, -1.761885623665082612e-02, -1.760411217981878648e-02, -1.758934054210139347e-02, -1.757454134935271597e-02, -1.755971462746931319e-02, -1.754486040239099792e-02, -1.752997870009997614e-02, -1.751506954662156168e-02, -1.750013296802368015e-02, -1.748516899041701114e-02, -1.747017763995462741e-02, -1.745515894283231409e-02, -1.744011292528856866e-02, -1.742503961360409789e-02, -1.740993903410220645e-02, -1.739481121314866152e-02, -1.737965617715158881e-02, -1.736447395256114981e-02, -1.734926456587014554e-02, -1.733402804361332608e-02, -1.731876441236773062e-02, -1.730347369875259028e-02, -1.728815592942917548e-02, -1.727281113110064326e-02, -1.725743933051242587e-02, -1.724204055445154038e-02, -1.722661482974730332e-02, -1.721116218327051195e-02, -1.719568264193403750e-02, -1.718017623269247132e-02, -1.716464298254189585e-02, -1.714908291852045019e-02, -1.713349606770744535e-02, -1.711788245722402346e-02, -1.710224211423297738e-02, -1.708657506593835168e-02, -1.707088133958563694e-02, -1.705516096246183569e-02, -1.703941396189517440e-02, -1.702364036525529437e-02, -1.700784019995283877e-02, -1.699201349343996623e-02, -1.697616027320977480e-02, -1.696028056679663512e-02, -1.694437440177568033e-02, -1.692844180576339938e-02, -1.691248280641705765e-02, -1.689649743143457894e-02, -1.688048570855543717e-02, -1.686444766555925470e-02, -1.684838333026685009e-02, -1.683229273053940891e-02, -1.681617589427916032e-02, -1.680003284942857902e-02, -1.678386362397106188e-02, -1.676766824593031724e-02, -1.675144674337079864e-02, -1.673519914439692072e-02, -1.671892547715399940e-02, -1.670262576982728397e-02, -1.668630005064261623e-02, -1.666994834786579560e-02, -1.665357068980308219e-02, -1.663716710480073885e-02, -1.662073762124518031e-02, -1.660428226756282058e-02, -1.658780107221994454e-02, -1.657129406372301328e-02, -1.655476127061833447e-02, -1.653820272149210055e-02, -1.652161844496999321e-02, -1.650500846971795013e-02, -1.648837282444111721e-02, -1.647171153788471593e-02, -1.645502463883323496e-02, -1.643831215611091939e-02, -1.642157411858143762e-02, -1.640481055514806177e-02, -1.638802149475319242e-02, -1.637120696637894487e-02, -1.635436699904629226e-02, -1.633750162181586002e-02, -1.632061086378738812e-02, -1.630369475409958191e-02, -1.628675332193060474e-02, -1.626978659649725920e-02, -1.625279460705573997e-02, -1.623577738290088446e-02, -1.621873495336667581e-02, -1.620166734782583357e-02, -1.618457459569008425e-02, -1.616745672640947096e-02, -1.615031376947328665e-02, -1.613314575440895696e-02, -1.611595271078304636e-02, -1.609873466820016183e-02, -1.608149165630373689e-02, -1.606422370477561534e-02, -1.604693084333610673e-02, -1.602961310174356654e-02, -1.601227050979509015e-02, -1.599490309732560026e-02, -1.597751089420852352e-02, -1.596009393035538806e-02, -1.594265223571561529e-02, -1.592518584027701606e-02, -1.590769477406499613e-02, -1.589017906714333336e-02, -1.587263874961332075e-02, -1.585507385161429722e-02, -1.583748440332340135e-02, -1.581987043495554010e-02, -1.580223197676307659e-02, -1.578456905903631580e-02, -1.576688171210285580e-02, -1.574916996632806654e-02, -1.573143385211469431e-02, -1.571367339990301787e-02, -1.569588864017055010e-02, -1.567807960343206575e-02, -1.566024632023993793e-02, -1.564238882118336449e-02, -1.562450713688900636e-02, -1.560660129802058337e-02, -1.558867133527892454e-02, -1.557071727940152923e-02, -1.555273916116341887e-02, -1.553473701137601630e-02, -1.551671086088796635e-02, -1.549866074058430139e-02, -1.548058668138745965e-02, -1.546248871425589567e-02, -1.544436687018520271e-02, -1.542622118020715687e-02, -1.540805167539050294e-02, -1.538985838684008359e-02, -1.537164134569742914e-02, -1.535340058314045748e-02, -1.533513613038315487e-02, -1.531684801867620564e-02, -1.529853627930604504e-02, -1.528020094359569016e-02, -1.526184204290390208e-02, -1.524345960862583116e-02, -1.522505367219249839e-02, -1.520662426507095842e-02, -1.518817141876396999e-02, -1.516969516481040704e-02, -1.515119553478469494e-02, -1.513267256029711579e-02, -1.511412627299369392e-02, -1.509555670455615083e-02, -1.507696388670148185e-02, -1.505834785118254603e-02, -1.503970862978751266e-02, -1.502104625433985097e-02, -1.500236075669869780e-02, -1.498365216875827306e-02, -1.496492052244831339e-02, -1.494616584973329845e-02, -1.492738818261339639e-02, -1.490858755312341952e-02, -1.488976399333358930e-02, -1.487091753534864128e-02, -1.485204821130893353e-02, -1.483315605338905545e-02, -1.481424109379884946e-02, -1.479530336478259746e-02, -1.477634289861963143e-02, -1.475735972762359446e-02, -1.473835388414293512e-02, -1.471932540056084156e-02, -1.470027430929451637e-02, -1.468120064279611857e-02, -1.466210443355171582e-02, -1.464298571408214830e-02, -1.462384451694215444e-02, -1.460468087472092079e-02, -1.458549482004179929e-02, -1.456628638556228643e-02, -1.454705560397365378e-02, -1.452780250800152564e-02, -1.450852713040517127e-02, -1.448922950397797844e-02, -1.446990966154707882e-02, -1.445056763597348144e-02, -1.443120346015165124e-02, -1.441181716701011618e-02, -1.439240878951059469e-02, -1.437297836064870687e-02, -1.435352591345334140e-02, -1.433405148098691392e-02, -1.431455509634543301e-02, -1.429503679265781146e-02, -1.427549660308672329e-02, -1.425593456082755589e-02, -1.423635069910923409e-02, -1.421674505119374828e-02, -1.419711765037613531e-02, -1.417746852998418364e-02, -1.415779772337904217e-02, -1.413810526395427661e-02, -1.411839118513672810e-02, -1.409865552038563029e-02, -1.407889830319319739e-02, -1.405911956708422172e-02, -1.403931934561617086e-02, -1.401949767237890658e-02, -1.399965458099470400e-02, -1.397979010511868347e-02, -1.395990427843782355e-02, -1.393999713467180233e-02, -1.392006870757245100e-02, -1.390011903092388916e-02, -1.388014813854203562e-02, -1.386015606427546190e-02, -1.384014284200414321e-02, -1.382010850564052186e-02, -1.380005308912878557e-02, -1.377997662644516418e-02, -1.375987915159722179e-02, -1.373976069862486125e-02, -1.371962130159911676e-02, -1.369946099462319121e-02, -1.367927981183137721e-02, -1.365907778738982038e-02, -1.363885495549620706e-02, -1.361861135037911383e-02, -1.359834700629910208e-02, -1.357806195754748119e-02, -1.355775623844714811e-02, -1.353742988335206524e-02, -1.351708292664735925e-02, -1.349671540274901584e-02, -1.347632734610439489e-02, -1.345591879119127643e-02, -1.343548977251887711e-02, -1.341504032462678339e-02, -1.339457048208566627e-02, -1.337408027949678509e-02, -1.335356975149218188e-02, -1.333303893273412276e-02, -1.331248785791590630e-02, -1.329191656176095804e-02, -1.327132507902312880e-02, -1.325071344448684567e-02, -1.323008169296668347e-02, -1.320942985930767359e-02, -1.318875797838459096e-02, -1.316806608510290647e-02, -1.314735421439755698e-02, -1.312662240123400534e-02, -1.310587068060738852e-02, -1.308509908754296007e-02, -1.306430765709539268e-02, -1.304349642434969939e-02, -1.302266542442000186e-02, -1.300181469245065453e-02, -1.298094426361514307e-02, -1.296005417311677649e-02, -1.293914445618828124e-02, -1.291821514809190011e-02, -1.289726628411899667e-02, -1.287629789959026348e-02, -1.285531002985589206e-02, -1.283430271029504903e-02, -1.281327597631624383e-02, -1.279222986335665918e-02, -1.277116440688294899e-02, -1.275007964239028430e-02, -1.272897560540313389e-02, -1.270785233147437784e-02, -1.268670985618600144e-02, -1.266554821514853310e-02, -1.264436744400136356e-02, -1.262316757841205200e-02, -1.260194865407719515e-02, -1.258071070672136735e-02, -1.255945377209788556e-02, -1.253817788598849368e-02, -1.251688308420279179e-02, -1.249556940257915902e-02, -1.247423687698358957e-02, -1.245288554331074223e-02, -1.243151543748281275e-02, -1.241012659545035444e-02, -1.238871905319167965e-02, -1.236729284671320150e-02, -1.234584801204871053e-02, -1.232438458526023337e-02, -1.230290260243701791e-02, -1.228140209969642328e-02, -1.225988311318291189e-02, -1.223834567906874685e-02, -1.221678983355365539e-02, -1.219521561286472655e-02, -1.217362305325612321e-02, -1.215201219100966318e-02, -1.213038306243401261e-02, -1.210873570386520465e-02, -1.208707015166650238e-02, -1.206538644222769109e-02, -1.204368461196610694e-02, -1.202196469732544695e-02, -1.200022673477680289e-02, -1.197847076081744004e-02, -1.195669681197186578e-02, -1.193490492479098650e-02, -1.191309513585251181e-02, -1.189126748176027280e-02, -1.186942199914514141e-02, -1.184755872466382309e-02, -1.182567769499982477e-02, -1.180377894686274014e-02, -1.178186251698861049e-02, -1.175992844213932451e-02, -1.173797675910291313e-02, -1.171600750469382543e-02, -1.169402071575201263e-02, -1.167201642914369661e-02, -1.164999468176085816e-02, -1.162795551052139137e-02, -1.160589895236856760e-02, -1.158382504427181436e-02, -1.156173382322573523e-02, -1.153962532625093032e-02, -1.151749959039299886e-02, -1.149535665272337359e-02, -1.147319655033871184e-02, -1.145101932036110201e-02, -1.142882499993754658e-02, -1.140661362624069072e-02, -1.138438523646779360e-02, -1.136213986784159226e-02, -1.133987755760978988e-02, -1.131759834304469324e-02, -1.129530226144389617e-02, -1.127298935012939832e-02, -1.125065964644841009e-02, -1.122831318777231698e-02, -1.120595001149754522e-02, -1.118357015504494421e-02, -1.116117365585998430e-02, -1.113876055141217389e-02, -1.111633087919594066e-02, -1.109388467672952489e-02, -1.107142198155574783e-02, -1.104894283124158681e-02, -1.102644726337816301e-02, -1.100393531558035119e-02, -1.098140702548754816e-02, -1.095886243076263887e-02, -1.093630156909245442e-02, -1.091372447818788304e-02, -1.089113119578337396e-02, -1.086852175963727921e-02, -1.084589620753115963e-02, -1.082325457727062457e-02, -1.080059690668433263e-02, -1.077792323362483130e-02, -1.075523359596743111e-02, -1.073252803161166453e-02, -1.070980657847936737e-02, -1.068706927451626952e-02, -1.066431615769066789e-02, -1.064154726599442213e-02, -1.061876263744193118e-02, -1.059596231007086525e-02, -1.057314632194173397e-02, -1.055031471113757231e-02, -1.052746751576460159e-02, -1.050460477395118337e-02, -1.048172652384889332e-02, -1.045883280363125306e-02, -1.043592365149479013e-02, -1.041299910565816368e-02, -1.039005920436267966e-02, -1.036710398587147725e-02, -1.034413348847044653e-02, -1.032114775046717378e-02, -1.029814681019172382e-02, -1.027513070599604672e-02, -1.025209947625427102e-02, -1.022905315936200980e-02, -1.020599179373726621e-02, -1.018291541781930418e-02, -1.015982407006963024e-02, -1.013671778897094582e-02, -1.011359661302787399e-02, -1.009046058076660743e-02, -1.006730973073444689e-02, -1.004414410150059576e-02, -1.002096373165505157e-02, -9.997768659809645048e-03, -9.974558924596820669e-03, -9.951334564670991437e-03, -9.928095618706826719e-03, -9.904842125400657379e-03, -9.881574123469188606e-03, -9.858291651650651771e-03, -9.834994748703482573e-03, -9.811683453407367070e-03, -9.788357804562497488e-03, -9.765017840989889675e-03, -9.741663601530836658e-03, -9.718295125047141103e-03, -9.694912450421490011e-03, -9.671515616556370515e-03, -9.648104662375048268e-03, -9.624679626820833653e-03, -9.601240548857446072e-03, -9.577787467468242000e-03, -9.554320421657221118e-03, -9.530839450447858852e-03, -9.507344592883928622e-03, -9.483835888028986638e-03, -9.460313374966422204e-03, -9.436777092799100361e-03, -9.413227080649967313e-03, -9.389663377661131016e-03, -9.366086022994749363e-03, -9.342495055831939038e-03, -9.318890515373554409e-03, -9.295272440839887421e-03, -9.271640871470110748e-03, -9.247995846523087912e-03, -9.224337405276358468e-03, -9.200665587026937708e-03, -9.176980431090740742e-03, -9.153281976802721265e-03, -9.129570263516429210e-03, -9.105845330604666471e-03, -9.082107217458562295e-03, -9.058355963488409421e-03, -9.034591608122626710e-03, -9.010814190808631718e-03, -8.987023751012157211e-03, -8.963220328217570351e-03, -8.939403961927154529e-03, -8.915574691662068660e-03, -8.891732556961301145e-03, -8.867877597382054985e-03, -8.844009852499857063e-03, -8.820129361908174773e-03, -8.796236165218584285e-03, -8.772330302060198093e-03, -8.748411812080511551e-03, -8.724480734944252761e-03, -8.700537110334265536e-03, -8.676580977950957771e-03, -8.652612377512428066e-03, -8.628631348753901947e-03, -8.604637931428580147e-03, -8.580632165306568276e-03, -8.556614090175815313e-03, -8.532583745840942660e-03, -8.508541172124267637e-03, -8.484486408865026322e-03, -8.460419495919691002e-03, -8.436340473161465375e-03, -8.412249380480461489e-03, -8.388146257783946069e-03, -8.364031144995865211e-03, -8.339904082056981416e-03, -8.315765108924415630e-03, -8.291614265572344600e-03, -8.267451591990975651e-03, -8.243277128187552830e-03, -8.219090914185179023e-03, -8.194892990023659035e-03, -8.170683395758984377e-03, -8.146462171463466836e-03, -8.122229357225179899e-03, -8.097984993148775804e-03, -8.073729119354434297e-03, -8.049461775978769898e-03, -8.025183003173756366e-03, -8.000892841107583656e-03, -7.976591329964170460e-03, -7.952278509942753079e-03, -7.927954421258653905e-03, -7.903619104142297833e-03, -7.879272598839918290e-03, -7.854914945613043764e-03, -7.830546184738723312e-03, -7.806166356508849151e-03, -7.781775501231089943e-03, -7.757373659227685160e-03, -7.732960870836544029e-03, -7.708537176410070260e-03, -7.684102616315948743e-03, -7.659657230936662425e-03, -7.635201060669668388e-03, -7.610734145926734313e-03, -7.586256527134850949e-03, -7.561768244735133163e-03, -7.537269339183595360e-03, -7.512759850950768981e-03, -7.488239820521205500e-03, -7.463709288394329913e-03, -7.439168295083348724e-03, -7.414616881116181495e-03, -7.390055087034403530e-03, -7.365482953394037781e-03, -7.340900520765038760e-03, -7.316307829731413109e-03, -7.291704920890667088e-03, -7.267091834854690416e-03, -7.242468612248538495e-03, -7.217835293711349215e-03, -7.193191919895837276e-03, -7.168538531468313275e-03, -7.143875169108342832e-03, -7.119201873508896640e-03, -7.094518685376707823e-03, -7.069825645431291813e-03, -7.045122794405698358e-03, -7.020410173046087374e-03, -6.995687822111814821e-03, -6.970955782374790854e-03, -6.946214094620513715e-03, -6.921462799646764356e-03, -6.896701938264668957e-03, -6.871931551297605183e-03, -6.847151679582046124e-03, -6.822362363966878555e-03, -6.797563645313770692e-03, -6.772755564496382025e-03, -6.747938162401359054e-03, -6.723111479927180827e-03, -6.698275557984991607e-03, -6.673430437498151582e-03, -6.648576159401753741e-03, -6.623712764643510317e-03, -6.598840294182653846e-03, -6.573958788990827938e-03, -6.549068290051071606e-03, -6.524168838358614629e-03, -6.499260474920305099e-03, -6.474343240754801970e-03, -6.449417176891969646e-03, -6.424482324373750539e-03, -6.399538724253027965e-03, -6.374586417594496970e-03, -6.349625445474062387e-03, -6.324655848979014033e-03, -6.299677669207472477e-03, -6.274690947269245117e-03, -6.249695724284773206e-03, -6.224692041385499613e-03, -6.199679939714105616e-03, -6.174659460423994814e-03, -6.149630644679510844e-03, -6.124593533655301597e-03, -6.099548168537268986e-03, -6.074494590521326877e-03, -6.049432840814487032e-03, -6.024362960633682963e-03, -5.999284991206646836e-03, -5.974198973771312725e-03, -5.949104949576012637e-03, -5.924002959878863286e-03, -5.898893045948642132e-03, -5.873775249063665008e-03, -5.848649610512617926e-03, -5.823516171594145079e-03, -5.798374973616316277e-03, -5.773226057897537684e-03, -5.748069465765416435e-03, -5.722905238557717336e-03, -5.697733417621312496e-03, -5.672554044312919444e-03, -5.647367159998612808e-03, -5.622172806054024675e-03, -5.596971023863609937e-03, -5.571761854821712275e-03, -5.546545340331231026e-03, -5.521321521804638602e-03, -5.496090440663272715e-03, -5.470852138337662512e-03, -5.445606656266732334e-03, -5.420354035898884183e-03, -5.395094318690695813e-03, -5.369827546108040493e-03, -5.344553759624838009e-03, -5.319273000724036513e-03, -5.293985310897040934e-03, -5.268690731643319199e-03, -5.243389304471243566e-03, -5.218081070896927499e-03, -5.192766072445296859e-03, -5.167444350648702119e-03, -5.142115947048612329e-03, -5.116780903193521302e-03, -5.091439260640580854e-03, -5.066091060954318846e-03, -5.040736345707595885e-03, -5.015375156480476014e-03, -4.990007534861186020e-03, -4.964633522445362560e-03, -4.939253160836393035e-03, -4.913866491644843133e-03, -4.888473556488704026e-03, -4.863074396993741048e-03, -4.837669054792426843e-03, -4.812257571524886784e-03, -4.786839988838247593e-03, -4.761416348386851571e-03, -4.735986691831629500e-03, -4.710551060841025248e-03, -4.685109497089782332e-03, -4.659662042259898017e-03, -4.634208738039926820e-03, -4.608749626125271948e-03, -4.583284748217505283e-03, -4.557814146025305005e-03, -4.532337861263213523e-03, -4.506855935652803215e-03, -4.481368410921350229e-03, -4.455875328802854501e-03, -4.430376731037508932e-03, -4.404872659371172894e-03, -4.379363155556387915e-03, -4.353848261351068831e-03, -4.328328018519646964e-03, -4.302802468831702296e-03, -4.277271654063574159e-03, -4.251735615996353294e-03, -4.226194396417468253e-03, -4.200648037119376552e-03, -4.175096579900594226e-03, -4.149540066564560460e-03, -4.123978538920475452e-03, -4.098412038782727959e-03, -4.072840607971093055e-03, -4.047264288310084210e-03, -4.021683121629898716e-03, -3.996097149765322210e-03, -3.970506414556151942e-03, -3.944910957847333824e-03, -3.919310821488518337e-03, -3.893706047334279541e-03, -3.868096677243420753e-03, -3.842482753079992826e-03, -3.816864316711999182e-03, -3.791241410012391542e-03, -3.765614074858381240e-03, -3.739982353131695528e-03, -3.714346286717917951e-03, -3.688705917507422490e-03, -3.663061287394154923e-03, -3.637412438276735240e-03, -3.611759412057217750e-03, -3.586102250642029567e-03, -3.560440995941346540e-03, -3.534775689869280174e-03, -3.509106374343410988e-03, -3.483433091285012724e-03, -3.457755882619223224e-03, -3.432074790274578218e-03, -3.406389856183248549e-03, -3.380701122280364065e-03, -3.355008630504971185e-03, -3.329312422798794309e-03, -3.303612541107339099e-03, -3.277909027378674706e-03, -3.252201923564347098e-03, -3.226491271618761071e-03, -3.200777113499389710e-03, -3.175059491166138184e-03, -3.149338446582273989e-03, -3.123614021713193127e-03, -3.097886258527548543e-03, -3.072155198995983345e-03, -3.046420885092086198e-03, -3.020683358791910814e-03, -2.994942662073449453e-03, -2.969198836917590501e-03, -2.943451925306868593e-03, -2.917701969226457314e-03, -2.891949010663462730e-03, -2.866193091607207449e-03, -2.840434254048525026e-03, -2.814672539980742679e-03, -2.788907991398439663e-03, -2.763140650298549685e-03, -2.737370558679114944e-03, -2.711597758540255833e-03, -2.685822291883499611e-03, -2.660044200712014147e-03, -2.634263527029959574e-03, -2.608480312843439782e-03, -2.582694600159265563e-03, -2.556906430985899596e-03, -2.531115847332966826e-03, -2.505322891210740987e-03, -2.479527604631083949e-03, -2.453730029606237487e-03, -2.427930208149905750e-03, -2.402128182276017099e-03, -2.376323993999683408e-03, -2.350517685336555619e-03, -2.324709298303031472e-03, -2.298898874915611488e-03, -2.273086457191858274e-03, -2.247272087149162264e-03, -2.221455806805804241e-03, -2.195637658179643448e-03, -2.169817683289729585e-03, -2.143995924154386799e-03, -2.118172422792139169e-03, -2.092347221221956596e-03, -2.066520361462145447e-03, -2.040691885531306562e-03, -2.014861835447693834e-03, -1.989030253229421511e-03, -1.963197180893841865e-03, -1.937362660458457004e-03, -1.911526733939720611e-03, -1.885689443354106754e-03, -1.859850830716906636e-03, -1.834010938043154721e-03, -1.808169807346986886e-03, -1.782327480641868753e-03, -1.756483999939937148e-03, -1.730639407252962435e-03, -1.704793744591103421e-03, -1.678947053963858634e-03, -1.653099377379566937e-03, -1.627250756844916607e-03, -1.601401234365867551e-03, -1.575550851946440475e-03, -1.549699651589802165e-03, -1.523847675297038606e-03, -1.497994965068111684e-03, -1.472141562901184810e-03, -1.446287510792883344e-03, -1.420432850737611986e-03, -1.394577624728519276e-03, -1.368721874756270935e-03, -1.342865642809983788e-03, -1.317008970876598021e-03, -1.291151900941077098e-03, -1.265294474985777847e-03, -1.239436734991387640e-03, -1.213578722935841278e-03, -1.187720480794698073e-03, -1.161862050541350886e-03, -1.136003474146528693e-03, -1.110144793578531856e-03, -1.084286050802554064e-03, -1.058427287781660720e-03, -1.032568546475541669e-03, -1.006709868841616654e-03, -9.808512968337893510e-04, -9.549928724034191388e-04, -9.291346374986444480e-04, -9.032766340646390668e-04, -8.774189040429274675e-04, -8.515614893723664428e-04, -8.257044319878900336e-04, -7.998477738214764205e-04, -7.739915568016305421e-04, -7.481358228528943617e-04, -7.222806138967815572e-04, -6.964259718505634317e-04, -6.705719386283447679e-04, -6.447185561398548334e-04, -6.188658662913786024e-04, -5.930139109851198954e-04, -5.671627321194176773e-04, -5.413123715881009573e-04, -5.154628712814350805e-04, -4.896142730848982057e-04, -4.637666188801196823e-04, -4.379199505442447622e-04, -4.120743099501423872e-04, -3.862297389657759180e-04, -3.603862794551307772e-04, -3.345439732770038839e-04, -3.087028622860838443e-04, -2.828629883317329043e-04, -2.570243932589265194e-04, -2.311871189077554080e-04, -2.053512071129238363e-04, -1.795166997046927933e-04, -1.536836385076592061e-04, -1.278520653418401692e-04, -1.020220220213102243e-04, -7.619355035586178879e-05, -5.036669214892215967e-05, -2.454148919921291178e-05, 1.282016700611655602e-06, 2.710378376288123675e-05, 5.292377020612812501e-05, 7.874193425414699650e-05, 1.045582341366375792e-04, 1.303726280889846219e-04, 1.561850743527568443e-04, 1.819955311754851968e-04, 2.078039568103009951e-04, 2.336103095170070573e-04, 2.594145475611404927e-04, 2.852166292146139258e-04, 3.110165127554948613e-04, 3.368141564686497817e-04, 3.626095186448027342e-04, 3.884025575817533237e-04, 4.141932315834368178e-04, 4.399814989605700601e-04, 4.657673180304253060e-04, 4.915506471174760274e-04, 5.173314445524557171e-04, 5.431096686735777243e-04, 5.688852778254491552e-04, 5.946582303602897333e-04, 6.204284846369925548e-04, 6.461959990216208701e-04, 6.719607318879064917e-04, 6.977226416163134770e-04, 7.234816865952517842e-04, 7.492378252199918777e-04, 7.749910158940363520e-04, 8.007412170274452734e-04, 8.264883870389318340e-04, 8.522324843541898617e-04, 8.779734674072689135e-04, 9.037112946394792318e-04, 9.294459245006082187e-04, 9.551773154479947445e-04, 9.809054259471569007e-04, 1.006630214471573859e-03, 1.032351639503334547e-03, 1.058069659532191904e-03, 1.083784233056631682e-03, 1.109495318583519647e-03, 1.135202874627873684e-03, 1.160906859713362309e-03, 1.186607232372080241e-03, 1.212303951145199355e-03, 1.237996974582019792e-03, 1.263686261241187079e-03, 1.289371769689766443e-03, 1.315053458503857332e-03, 1.340731286268404768e-03, 1.366405211577810834e-03, 1.392075193035017438e-03, 1.417741189252710865e-03, 1.443403158852238875e-03, 1.469061060464830863e-03, 1.494714852730656988e-03, 1.520364494299474793e-03, 1.546009943830390894e-03, 1.571651159992379669e-03, 1.597288101464045592e-03, 1.622920726933267405e-03, 1.648548995098414374e-03, 1.674172864666682902e-03, 1.699792294356178204e-03, 1.725407242894256123e-03, 1.751017669018879470e-03, 1.776623531477536421e-03, 1.802224789028456994e-03, 1.827821400439680853e-03, 1.853413324489675299e-03, 1.879000519967135999e-03, 1.904582945671629696e-03, 1.930160560412627103e-03, 1.955733323010747787e-03, 1.981301192296674660e-03, 2.006864127112338147e-03, 2.032422086310019770e-03, 2.057975028752810111e-03, 2.083522913315138773e-03, 2.109065698881809007e-03, 2.134603344349229794e-03, 2.160135808624467392e-03, 2.185663050625880673e-03, 2.211185029282922068e-03, 2.236701703536753821e-03, 2.262213032339308212e-03, 2.287718974654532212e-03, 2.313219489457265989e-03, 2.338714535734480199e-03, 2.364204072484333598e-03, 2.389688058716808380e-03, 2.415166453453491610e-03, 2.440639215728203620e-03, 2.466106304586093787e-03, 2.491567679084803668e-03, 2.517023298293577516e-03, 2.542473121293709840e-03, 2.567917107179087943e-03, 2.593355215055220039e-03, 2.618787404040459101e-03, 2.644213633264929936e-03, 2.669633861871726580e-03, 2.695048049015986817e-03, 2.720456153865518419e-03, 2.745858135600582305e-03, 2.771253953414539156e-03, 2.796643566512908765e-03, 2.822026934114562659e-03, 2.847404015450678057e-03, 2.872774769766055399e-03, 2.898139156317501575e-03, 2.923497134375719914e-03, 2.948848663224399452e-03, 2.974193702159976839e-03, 2.999532210492728782e-03, 3.024864147545786724e-03, 3.050189472655841141e-03, 3.075508145172858778e-03, 3.100820124460764403e-03, 3.126125369896468921e-03, 3.151423840871097129e-03, 3.176715496788921726e-03, 3.202000297068533386e-03, 3.227278201141949975e-03, 3.252549168455222406e-03, 3.277813158468223867e-03, 3.303070130655272156e-03, 3.328320044504232394e-03, 3.353562859517683625e-03, 3.378798535211990309e-03, 3.404027031117830109e-03, 3.429248306780619763e-03, 3.454462321759673750e-03, 3.479669035629318844e-03, 3.504868407977868461e-03, 3.530060398408824390e-03, 3.555244966539921822e-03, 3.580422072003774242e-03, 3.605591674447688241e-03, 3.630753733534224700e-03, 3.655908208940331430e-03, 3.681055060358509774e-03, 3.706194247495768999e-03, 3.731325730074923439e-03, 3.756449467833024303e-03, 3.781565420523330320e-03, 3.806673547913731748e-03, 3.831773809787921738e-03, 3.856866165945026844e-03, 3.881950576199423141e-03, 3.907027000381173808e-03, 3.932095398335873869e-03, 3.957155729925210946e-03, 3.982207955026083150e-03, 4.007252033531787799e-03, 4.032287925350956301e-03, 4.057315590408742435e-03, 4.082334988645870862e-03, 4.107346080019322332e-03, 4.132348824502090831e-03, 4.157343182083777719e-03, 4.182329112769702685e-03, 4.207306576582118054e-03, 4.232275533559224333e-03, 4.257235943755716644e-03, 4.282187767243209736e-03, 4.307130964109374960e-03, 4.332065494459115540e-03, 4.356991318413458089e-03, 4.381908396110808547e-03, 4.406816687705975531e-03, 4.431716153370849481e-03, 4.456606753294129440e-03, 4.481488447681978779e-03, 4.506361196757124009e-03, 4.531224960759981484e-03, 4.556079699947802181e-03, 4.580925374595271049e-03, 4.605761944994265882e-03, 4.630589371454532123e-03, 4.655407614302701017e-03, 4.680216633883550748e-03, 4.705016390558864996e-03, 4.729806844708690609e-03, 4.754587956730360956e-03, 4.779359687039037158e-03, 4.804121996068124421e-03, 4.828874844268424629e-03, 4.853618192109258704e-03, 4.878352000077449194e-03, 4.903076228678479066e-03, 4.927790838435613940e-03, 4.952495789890440717e-03, 4.977191043602778239e-03, 5.001876560151147406e-03, 5.026552300132000953e-03, 5.051218224160798978e-03, 5.075874292871145055e-03, 5.100520466915402923e-03, 5.125156706964444087e-03, 5.149782973708194253e-03, 5.174399227855328888e-03, 5.199005430133037294e-03, 5.223601541287902980e-03, 5.248187522085161205e-03, 5.272763333309181226e-03, 5.297328935763314511e-03, 5.321884290270536590e-03, 5.346429357672450450e-03, 5.370964098830538144e-03, 5.395488474625239651e-03, 5.420002445956529670e-03, 5.444505973743745016e-03, 5.468999018926170089e-03, 5.493481542462161707e-03, 5.517953505330271471e-03, 5.542414868528269117e-03, 5.566865593074247533e-03, 5.591305640005705957e-03, 5.615734970380139787e-03, 5.640153545275358900e-03, 5.664561325788740852e-03, 5.688958273038221408e-03, 5.713344348161428915e-03, 5.737719512316884728e-03, 5.762083726682404664e-03, 5.786436952457155516e-03, 5.810779150859996661e-03, 5.835110283130834005e-03, 5.859430310529534919e-03, 5.883739194337117388e-03, 5.908036895854856634e-03, 5.932323376404866240e-03, 5.956598597329902135e-03, 5.980862519993966273e-03, 6.005115105781441004e-03, 6.029356316098045780e-03, 6.053586112370571738e-03, 6.077804456046532154e-03, 6.102011308594812965e-03, 6.126206631505335364e-03, 6.150390386289698516e-03, 6.174562534480236738e-03, 6.198723037631336148e-03, 6.222871857318299296e-03, 6.247008955138148335e-03, 6.271134292709301498e-03, 6.295247831672251375e-03, 6.319349533688638568e-03, 6.343439360442333294e-03, 6.367517273638594044e-03, 6.391583235004969638e-03, 6.415637206290652171e-03, 6.439679149266870802e-03, 6.463709025726831897e-03, 6.487726797486111953e-03, 6.511732426382467638e-03, 6.535725874275477576e-03, 6.559707103047728895e-03, 6.583676074603158831e-03, 6.607632750869115584e-03, 6.631577093794744152e-03, 6.655509065352246609e-03, 6.679428627535898520e-03, 6.703335742363190387e-03, 6.727230371873890898e-03, 6.751112478130706120e-03, 6.774982023219038377e-03, 6.798838969247603808e-03, 6.822683278347512099e-03, 6.846514912673453031e-03, 6.870333834402652176e-03, 6.894140005735999339e-03, 6.917933388897193336e-03, 6.941713946133167869e-03, 6.965481639714594594e-03, 6.989236431934986275e-03, 7.012978285111810470e-03, 7.036707161585655131e-03, 7.060423023720762900e-03, 7.084125833904889730e-03, 7.107815554549819226e-03, 7.131492148090592433e-03, 7.155155576986520043e-03, 7.178805803720270801e-03, 7.202442790798940959e-03, 7.226066500753194725e-03, 7.249676896137873146e-03, 7.273273939531745176e-03, 7.296857593537987331e-03, 7.320427820784052714e-03, 7.343984583921162740e-03, 7.367527845625593437e-03, 7.391057568597023120e-03, 7.414573715560560281e-03, 7.438076249265118157e-03, 7.461565132484654188e-03, 7.485040328017299183e-03, 7.508501798686352188e-03, 7.531949507339392308e-03, 7.555383416849013357e-03, 7.578803490112485594e-03, 7.602209690052396697e-03, 7.625601979615754047e-03, 7.648980321775114034e-03, 7.672344679527636629e-03, 7.695695015896241581e-03, 7.719031293928151245e-03, 7.742353476696623577e-03, 7.765661527300091703e-03, 7.788955408861999996e-03, 7.812235084531722606e-03, 7.835500517483771563e-03, 7.858751670918278157e-03, 7.881988508060896667e-03, 7.905210992163366410e-03, 7.928419086502535088e-03, 7.951612754381632078e-03, 7.974791959129166885e-03, 7.997956664100080992e-03, 8.021106832674875300e-03, 8.044242428260222483e-03, 8.067363414288666879e-03, 8.090469754219314913e-03, 8.113561411536934775e-03, 8.136638349753073582e-03, 8.159700532405139706e-03, 8.182747923056923195e-03, 8.205780485299019045e-03, 8.228798182747985857e-03, 8.251800979047384937e-03, 8.274788837866904265e-03, 8.297761722903359421e-03, 8.320719597879848786e-03, 8.343662426546430075e-03, 8.366590172679766457e-03, 8.389502800083815243e-03, 8.412400272588951844e-03, 8.435282554053034898e-03, 8.458149608360479924e-03, 8.481001399423390361e-03, 8.503837891180131628e-03, 8.526659047597223706e-03, 8.549464832667798969e-03, 8.572255210412656895e-03, 8.595030144879986511e-03, 8.617789600145224146e-03, 8.640533540311341396e-03, 8.663261929508772261e-03, 8.685974731895926629e-03, 8.708671911658394035e-03, 8.731353433009930720e-03, 8.754019260191642574e-03, 8.776669357472875049e-03, 8.799303689150555705e-03, 8.821922219549681657e-03, 8.844524913023009069e-03, 8.867111733951910102e-03, 8.889682646745198508e-03, 8.912237615840446284e-03, 8.934776605703069474e-03, 8.957299580826662971e-03, 8.979806505733661445e-03, 9.002297344974307183e-03, 9.024772063127829702e-03, 9.047230624801392770e-03, 9.069672994631284429e-03, 9.092099137282001059e-03, 9.114509017446793815e-03, 9.136902599847564546e-03, 9.159279849235361926e-03, 9.181640730389526231e-03, 9.203985208118804773e-03, 9.226313247260486267e-03, 9.248624812681049620e-03, 9.270919869275823927e-03, 9.293198381969638988e-03, 9.315460315716016931e-03, 9.337705635498164472e-03, 9.359934306328086470e-03, 9.382146293247543498e-03, 9.404341561327403051e-03, 9.426520075667898027e-03, 9.448681801399126320e-03, 9.470826703680249384e-03, 9.492954747700566021e-03, 9.515065898678416040e-03, 9.537160121862469156e-03, 9.559237382530682420e-03, 9.581297645991042680e-03, 9.603340877581193619e-03, 9.625367042669134843e-03, 9.647376106652338912e-03, 9.669368034958773089e-03, 9.691342793046170759e-03, 9.713300346402475513e-03, 9.735240660545744010e-03, 9.757163701024508529e-03, 9.779069433417589621e-03, 9.800957823333820290e-03, 9.822828836412915085e-03, 9.844682438324703355e-03, 9.866518594769635789e-03, 9.888337271478586654e-03, 9.910138434213473096e-03, 9.931922048766365224e-03, 9.953688080960561638e-03, 9.975436496649782783e-03, 9.997167261718674022e-03, 1.001888034208272410e-02, 1.004057570368863117e-02, 1.006225331251369738e-02, 1.008391313456666848e-02, 1.010555513588697572e-02, 1.012717928254566399e-02, 1.014878554064463714e-02, 1.017037387631705703e-02, 1.019194425572769909e-02, 1.021349664507234002e-02, 1.023503101057856787e-02, 1.025654731850498408e-02, 1.027804553514220093e-02, 1.029952562681205053e-02, 1.032098755986807052e-02, 1.034243130069543472e-02, 1.036385681571137807e-02, 1.038526407136438658e-02, 1.040665303413534741e-02, 1.042802367053665726e-02, 1.044937594711271150e-02, 1.047070983043989385e-02, 1.049202528712687467e-02, 1.051332228381404721e-02, 1.053460078717421977e-02, 1.055586076391248906e-02, 1.057710218076589499e-02, 1.059832500450397404e-02, 1.061952920192843312e-02, 1.064071473987378280e-02, 1.066188158520652365e-02, 1.068302970482610560e-02, 1.070415906566423402e-02, 1.072526963468530686e-02, 1.074636137888631757e-02, 1.076743426529725746e-02, 1.078848826098052077e-02, 1.080952333303167832e-02, 1.083053944857877669e-02, 1.085153657478325762e-02, 1.087251467883909584e-02, 1.089347372797354330e-02, 1.091441368944671628e-02, 1.093533453055213142e-02, 1.095623621861641431e-02, 1.097711872099913118e-02, 1.099798200509374997e-02, 1.101882603832612939e-02, 1.103965078815644443e-02, 1.106045622207763729e-02, 1.108124230761663165e-02, 1.110200901233341850e-02, 1.112275630382200328e-02, 1.114348414970975192e-02, 1.116419251765768915e-02, 1.118488137536060786e-02, 1.120555069054729631e-02, 1.122620043098006282e-02, 1.124683056445539495e-02, 1.126744105880336626e-02, 1.128803188188843599e-02, 1.130860300160878990e-02, 1.132915438589667846e-02, 1.134968600271878125e-02, 1.137019782007556677e-02, 1.139068980600218585e-02, 1.141116192856767193e-02, 1.143161415587556039e-02, 1.145204645606361440e-02, 1.147245879730435410e-02, 1.149285114780438516e-02, 1.151322347580521245e-02, 1.153357574958254264e-02, 1.155390793744707524e-02, 1.157422000774397004e-02, 1.159451192885303968e-02, 1.161478366918891093e-02, 1.163503519720120866e-02, 1.165526648137439093e-02, 1.167547749022753399e-02, 1.169566819231527589e-02, 1.171583855622636977e-02, 1.173598855058553825e-02, 1.175611814405198158e-02, 1.177622730532056419e-02, 1.179631600312082591e-02, 1.181638420621809911e-02, 1.183643188341268124e-02, 1.185645900354025464e-02, 1.187646553547185534e-02, 1.189645144811433790e-02, 1.191641671040947516e-02, 1.193636129133518638e-02, 1.195628515990446346e-02, 1.197618828516639963e-02, 1.199607063620541404e-02, 1.201593218214169062e-02, 1.203577289213154759e-02, 1.205559273536665338e-02, 1.207539168107501018e-02, 1.209516969852023928e-02, 1.211492675700201471e-02, 1.213466282585598001e-02, 1.215437787445405003e-02, 1.217407187220398077e-02, 1.219374478855001116e-02, 1.221339659297220222e-02, 1.223302725498732341e-02, 1.225263674414811023e-02, 1.227222503004369962e-02, 1.229179208229956924e-02, 1.231133787057799543e-02, 1.233086236457725873e-02, 1.235036553403256847e-02, 1.236984734871575398e-02, 1.238930777843466786e-02, 1.240874679303459287e-02, 1.242816436239700152e-02, 1.244756045644052241e-02, 1.246693504512024972e-02, 1.248628809842850310e-02, 1.250561958639424473e-02, 1.252492947908346796e-02, 1.254421774659905849e-02, 1.256348435908126275e-02, 1.258272928670703394e-02, 1.260195249969086641e-02, 1.262115396828401154e-02, 1.264033366277549607e-02, 1.265949155349082797e-02, 1.267862761079365658e-02, 1.269774180508443165e-02, 1.271683410680134532e-02, 1.273590448642001639e-02, 1.275495291445343654e-02, 1.277397936145211257e-02, 1.279298379800420174e-02, 1.281196619473568520e-02, 1.283092652230992045e-02, 1.284986475142831271e-02, 1.286878085282968688e-02, 1.288767479729107171e-02, 1.290654655562708912e-02, 1.292539609869032373e-02, 1.294422339737124651e-02, 1.296302842259865716e-02, 1.298181114533890866e-02, 1.300057153659688568e-02, 1.301930956741539046e-02, 1.303802520887527294e-02, 1.305671843209594944e-02, 1.307538920823472436e-02, 1.309403750848760727e-02, 1.311266330408850968e-02, 1.313126656631023390e-02, 1.314984726646367327e-02, 1.316840537589822335e-02, 1.318694086600189289e-02, 1.320545370820137322e-02, 1.322394387396172780e-02, 1.324241133478696632e-02, 1.326085606221949487e-02, 1.327927802784088784e-02, 1.329767720327083499e-02, 1.331605356016861592e-02, 1.333440707023179385e-02, 1.335273770519735705e-02, 1.337104543684073006e-02, 1.338933023697689087e-02, 1.340759207745945668e-02, 1.342583093018116791e-02, 1.344404676707424383e-02, 1.346223956010964874e-02, 1.348040928129792468e-02, 1.349855590268855474e-02, 1.351667939637071769e-02, 1.353477973447259758e-02, 1.355285688916189543e-02, 1.357091083264568357e-02, 1.358894153717073519e-02, 1.360694897502301437e-02, 1.362493311852839249e-02, 1.364289394005213131e-02, 1.366083141199912233e-02, 1.367874550681392326e-02, 1.369663619698101298e-02, 1.371450345502464759e-02, 1.373234725350853253e-02, 1.375016756503670036e-02, 1.376796436225279432e-02, 1.378573761784042048e-02, 1.380348730452313558e-02, 1.382121339506481306e-02, 1.383891586226894226e-02, 1.385659467897953391e-02, 1.387424981808052342e-02, 1.389188125249601717e-02, 1.390948895519031510e-02, 1.392707289916829579e-02, 1.394463305747471044e-02, 1.396216940319511615e-02, 1.397968190945501205e-02, 1.399717054942072568e-02, 1.401463529629883888e-02, 1.403207612333635945e-02, 1.404949300382121909e-02, 1.406688591108151178e-02, 1.408425481848633691e-02, 1.410159969944517304e-02, 1.411892052740850237e-02, 1.413621727586732851e-02, 1.415348991835353731e-02, 1.417073842843979449e-02, 1.418796277973990994e-02, 1.420516294590816637e-02, 1.422233890064033245e-02, 1.423949061767270340e-02, 1.425661807078290426e-02, 1.427372123378937638e-02, 1.429080008055207650e-02, 1.430785458497166665e-02, 1.432488472099037631e-02, 1.434189046259157739e-02, 1.435887178379977210e-02, 1.437582865868092773e-02, 1.439276106134216790e-02, 1.440966896593235715e-02, 1.442655234664139315e-02, 1.444341117770107409e-02, 1.446024543338435449e-02, 1.447705508800587251e-02, 1.449384011592177134e-02, 1.451060049153006862e-02, 1.452733618927011874e-02, 1.454404718362329804e-02, 1.456073344911241498e-02, 1.457739496030242311e-02, 1.459403169179978449e-02, 1.461064361825292236e-02, 1.462723071435207203e-02, 1.464379295482958789e-02, 1.466033031445987227e-02, 1.467684276805890191e-02, 1.469333029048519937e-02, 1.470979285663910445e-02, 1.472623044146306737e-02, 1.474264301994174416e-02, 1.475903056710214413e-02, 1.477539305801326905e-02, 1.479173046778663007e-02, 1.480804277157589215e-02, 1.482432994457713940e-02, 1.484059196202872945e-02, 1.485682879921168716e-02, 1.487304043144923801e-02, 1.488922683410736150e-02, 1.490538798259431232e-02, 1.492152385236121363e-02, 1.493763441890154538e-02, 1.495371965775140616e-02, 1.496977954448993481e-02, 1.498581405473860435e-02, 1.500182316416192631e-02, 1.501780684846703781e-02, 1.503376508340393582e-02, 1.504969784476544066e-02, 1.506560510838752219e-02, 1.508148685014872210e-02, 1.509734304597091722e-02, 1.511317367181871929e-02, 1.512897870370002486e-02, 1.514475811766564928e-02, 1.516051188980952098e-02, 1.517623999626880639e-02, 1.519194241322376765e-02, 1.520761911689822062e-02, 1.522327008355872126e-02, 1.523889528951571405e-02, 1.525449471112227603e-02, 1.527006832477552541e-02, 1.528561610691555293e-02, 1.530113803402622860e-02, 1.531663408263450252e-02, 1.533210422931126880e-02, 1.534754845067067691e-02, 1.536296672337045602e-02, 1.537835902411203992e-02, 1.539372532964067286e-02, 1.540906561674490992e-02, 1.542437986225743234e-02, 1.543966804305426169e-02, 1.545493013605573306e-02, 1.547016611822552533e-02, 1.548537596657125794e-02, 1.550055965814482045e-02, 1.551571717004151564e-02, 1.553084847940102917e-02, 1.554595356340679295e-02, 1.556103239928634252e-02, 1.557608496431119732e-02, 1.559111123579725970e-02, 1.560611119110418520e-02, 1.562108480763609204e-02, 1.563603206284106331e-02, 1.565095293421167599e-02, 1.566584739928457426e-02, 1.568071543564076437e-02, 1.569555702090546026e-02, 1.571037213274860400e-02, 1.572516074888413024e-02, 1.573992284707058376e-02, 1.575465840511120971e-02, 1.576936740085312094e-02, 1.578404981218869962e-02, 1.579870561705432747e-02, 1.581333479343139184e-02, 1.582793731934557108e-02, 1.584251317286756999e-02, 1.585706233211238436e-02, 1.587158477524006073e-02, 1.588608048045515517e-02, 1.590054942600738208e-02, 1.591499159019079193e-02, 1.592940695134475310e-02, 1.594379548785318165e-02, 1.595815717814521445e-02, 1.597249200069470604e-02, 1.598679993402059296e-02, 1.600108095668671682e-02, 1.601533504730213650e-02, 1.602956218452106230e-02, 1.604376234704255055e-02, 1.605793551361096166e-02, 1.607208166301568250e-02, 1.608620077409164337e-02, 1.610029282571857553e-02, 1.611435779682195493e-02, 1.612839566637208621e-02, 1.614240641338500482e-02, 1.615639001692184204e-02, 1.617034645608923446e-02, 1.618427571003913309e-02, 1.619817775796923362e-02, 1.621205257912226860e-02, 1.622590015278697895e-02, 1.623972045829735061e-02, 1.625351347503286442e-02, 1.626727918241896789e-02, 1.628101755992638136e-02, 1.629472858707180921e-02, 1.630841224341729803e-02, 1.632206850857102765e-02, 1.633569736218663457e-02, 1.634929878396364569e-02, 1.636287275364730481e-02, 1.637641925102904447e-02, 1.638993825594567411e-02, 1.640342974828041048e-02, 1.641689370796196867e-02, 1.643033011496547457e-02, 1.644373894931156280e-02, 1.645712019106727528e-02, 1.647047382034555474e-02, 1.648379981730547020e-02, 1.649709816215211289e-02, 1.651036883513693626e-02, 1.652361181655729802e-02, 1.653682708675687646e-02, 1.655001462612566351e-02, 1.656317441509969762e-02, 1.657630643416160149e-02, 1.658941066383998880e-02, 1.660248708471009915e-02, 1.661553567739338516e-02, 1.662855642255775881e-02, 1.664154930091736248e-02, 1.665451429323317259e-02, 1.666745138031231963e-02, 1.668036054300870222e-02, 1.669324176222254652e-02, 1.670609501890074275e-02, 1.671892029403672722e-02, 1.673171756867062807e-02, 1.674448682388935197e-02, 1.675722804082604642e-02, 1.676994120066115784e-02, 1.678262628462138042e-02, 1.679528327398038812e-02, 1.680791215005853628e-02, 1.682051289422325721e-02, 1.683308548788844602e-02, 1.684562991251517539e-02, 1.685814614961124447e-02, 1.687063418073157101e-02, 1.688309398747762577e-02, 1.689552555149833810e-02, 1.690792885448928057e-02, 1.692030387819333515e-02, 1.693265060440021091e-02, 1.694496901494681879e-02, 1.695725909171720558e-02, 1.696952081664233544e-02, 1.698175417170069007e-02, 1.699395913891764420e-02, 1.700613570036599298e-02, 1.701828383816553214e-02, 1.703040353448365130e-02, 1.704249477153470596e-02, 1.705455753158058654e-02, 1.706659179693031936e-02, 1.707859754994063561e-02, 1.709057477301526365e-02, 1.710252344860572690e-02, 1.711444355921068472e-02, 1.712633508737647012e-02, 1.713819801569672202e-02, 1.715003232681283282e-02, 1.716183800341353899e-02, 1.717361502823527147e-02, 1.718536338406206551e-02, 1.719708305372550511e-02, 1.720877402010478202e-02, 1.722043626612682066e-02, 1.723206977476632318e-02, 1.724367452904550235e-02, 1.725525051203453258e-02, 1.726679770685118909e-02, 1.727831609666117749e-02, 1.728980566467783891e-02, 1.730126639416254553e-02, 1.731269826842437784e-02, 1.732410127082050291e-02, 1.733547538475570596e-02, 1.734682059368301485e-02, 1.735813688110320399e-02, 1.736942423056510656e-02, 1.738068262566550351e-02, 1.739191205004926577e-02, 1.740311248740937858e-02, 1.741428392148678533e-02, 1.742542633607057495e-02, 1.743653971499796451e-02, 1.744762404215428539e-02, 1.745867930147299366e-02, 1.746970547693590253e-02, 1.748070255257282504e-02, 1.749167051246209442e-02, 1.750260934072998126e-02, 1.751351902155124859e-02, 1.752439953914878071e-02, 1.753525087779408964e-02, 1.754607302180664907e-02, 1.755686595555469923e-02, 1.756762966345448360e-02, 1.757836412997102957e-02, 1.758906933961759331e-02, 1.759974527695580895e-02, 1.761039192659601474e-02, 1.762100927319684360e-02, 1.763159730146568113e-02, 1.764215599615825622e-02, 1.765268534207894632e-02, 1.766318532408057626e-02, 1.767365592706494903e-02, 1.768409713598204439e-02, 1.769450893583085146e-02, 1.770489131165878249e-02, 1.771524424856214808e-02, 1.772556773168584496e-02, 1.773586174622352601e-02, 1.774612627741754128e-02, 1.775636131055917388e-02, 1.776656683098847694e-02, 1.777674282409406198e-02, 1.778688927531383440e-02, 1.779700617013417127e-02, 1.780709349409043823e-02, 1.781715123276695484e-02, 1.782717937179695636e-02, 1.783717789686256952e-02, 1.784714679369494780e-02, 1.785708604807413266e-02, 1.786699564582927904e-02, 1.787687557283838130e-02, 1.788672581502870340e-02, 1.789654635837637300e-02, 1.790633718890677004e-02, 1.791609829269419710e-02, 1.792582965586218824e-02, 1.793553126458341529e-02, 1.794520310507953173e-02, 1.795484516362169658e-02, 1.796445742652992561e-02, 1.797403988017364646e-02, 1.798359251097152514e-02, 1.799311530539131690e-02, 1.800260824995011597e-02, 1.801207133121441456e-02, 1.802150453579989819e-02, 1.803090785037162955e-02, 1.804028126164393050e-02, 1.804962475638063196e-02, 1.805893832139479627e-02, 1.806822194354893926e-02, 1.807747560975499906e-02, 1.808669930697436035e-02, 1.809589302221777801e-02, 1.810505674254556455e-02, 1.811419045506764899e-02, 1.812329414694305654e-02, 1.813236780538072385e-02, 1.814141141763893003e-02, 1.815042497102567487e-02, 1.815940845289826591e-02, 1.816836185066391524e-02, 1.817728515177918780e-02, 1.818617834375044554e-02, 1.819504141413348652e-02, 1.820387435053405500e-02, 1.821267714060730361e-02, 1.822144977205832767e-02, 1.823019223264162395e-02, 1.823890451016176029e-02, 1.824758659247276149e-02, 1.825623846747855342e-02, 1.826486012313278604e-02, 1.827345154743888894e-02, 1.828201272845026565e-02, 1.829054365426992235e-02, 1.829904431305078710e-02, 1.830751469299563006e-02, 1.831595478235711547e-02, 1.832436456943782599e-02, 1.833274404259017942e-02, 1.834109319021653625e-02, 1.834941200076924822e-02, 1.835770046275055425e-02, 1.836595856471256311e-02, 1.837418629525757255e-02, 1.838238364303773978e-02, 1.839055059675521672e-02, 1.839868714516233045e-02, 1.840679327706131949e-02, 1.841486898130436853e-02, 1.842291424679404210e-02, 1.843092906248265661e-02, 1.843891341737290482e-02, 1.844686730051741178e-02, 1.845479070101898461e-02, 1.846268360803061948e-02, 1.847054601075538705e-02, 1.847837789844653661e-02, 1.848617926040759668e-02, 1.849395008599217377e-02, 1.850169036460417790e-02, 1.850940008569765260e-02, 1.851707923877709758e-02, 1.852472781339696908e-02, 1.853234579916216915e-02, 1.853993318572779575e-02, 1.854748996279937528e-02, 1.855501612013260582e-02, 1.856251164753356872e-02, 1.856997653485869745e-02, 1.857741077201461449e-02, 1.858481434895862747e-02, 1.859218725569802833e-02, 1.859952948229083233e-02, 1.860684101884525418e-02, 1.861412185551998208e-02, 1.862137198252411183e-02, 1.862859139011723703e-02, 1.863578006860927908e-02, 1.864293800836074044e-02, 1.865006519978253466e-02, 1.865716163333610428e-02, 1.866422729953333415e-02, 1.867126218893669365e-02, 1.867826629215902853e-02, 1.868523959986393909e-02, 1.869218210276540545e-02, 1.869909379162805127e-02, 1.870597465726699452e-02, 1.871282469054798281e-02, 1.871964388238742463e-02, 1.872643222375207361e-02, 1.873318970565967037e-02, 1.873991631917824516e-02, 1.874661205542676665e-02, 1.875327690557451396e-02, 1.875991086084180179e-02, 1.876651391249927955e-02, 1.877308605186854204e-02, 1.877962727032168530e-02, 1.878613755928158074e-02, 1.879261691022182310e-02, 1.879906531466675121e-02, 1.880548276419139603e-02, 1.881186925042148753e-02, 1.881822476503366287e-02, 1.882454929975515764e-02, 1.883084284636408687e-02, 1.883710539668936521e-02, 1.884333694261058900e-02, 1.884953747605823057e-02, 1.885570698901363820e-02, 1.886184547350878288e-02, 1.886795292162678911e-02, 1.887402932550126880e-02, 1.888007467731700126e-02, 1.888608896930942319e-02, 1.889207219376492705e-02, 1.889802434302068415e-02, 1.890394540946492563e-02, 1.890983538553663371e-02, 1.891569426372575330e-02, 1.892152203657324755e-02, 1.892731869667084454e-02, 1.893308423666120038e-02, 1.893881864923800326e-02, 1.894452192714599081e-02, 1.895019406318051991e-02, 1.895583505018830911e-02, 1.896144488106680723e-02, 1.896702354876457844e-02, 1.897257104628097615e-02, 1.897808736666661486e-02, 1.898357250302289828e-02, 1.898902644850250857e-02, 1.899444919630873668e-02, 1.899984073969635326e-02, 1.900520107197088693e-02, 1.901053018648904760e-02, 1.901582807665844893e-02, 1.902109473593786501e-02, 1.902633015783726164e-02, 1.903153433591742161e-02, 1.903670726379036449e-02, 1.904184893511918358e-02, 1.904695934361813267e-02, 1.905203848305232414e-02, 1.905708634723831535e-02, 1.906210293004348411e-02, 1.906708822538660461e-02, 1.907204222723733397e-02, 1.907696492961656956e-02, 1.908185632659635880e-02, 1.908671641229991653e-02, 1.909154518090155905e-02, 1.909634262662682561e-02, 1.910110874375231527e-02, 1.910584352660596799e-02, 1.911054696956672808e-02, 1.911521906706477314e-02, 1.911985981358163209e-02, 1.912446920364974448e-02, 1.912904723185299485e-02, 1.913359389282636921e-02, 1.913810918125602445e-02, 1.914259309187942362e-02, 1.914704561948524231e-02, 1.915146675891324715e-02, 1.915585650505469487e-02, 1.916021485285179793e-02, 1.916454179729825888e-02, 1.916883733343881929e-02, 1.917310145636963101e-02, 1.917733416123794735e-02, 1.918153544324245272e-02, 1.918570529763297464e-02, 1.918984371971068845e-02, 1.919395070482791607e-02, 1.919802624838842786e-02, 1.920207034584716158e-02, 1.920608299271034033e-02, 1.921006418453552814e-02, 1.921401391693161598e-02, 1.921793218555865879e-02, 1.922181898612811135e-02, 1.922567431440273117e-02, 1.922949816619651600e-02, 1.923329053737488428e-02, 1.923705142385448083e-02, 1.924078082160330175e-02, 1.924447872664066320e-02, 1.924814513503718058e-02, 1.925178004291481365e-02, 1.925538344644686303e-02, 1.925895534185800145e-02, 1.926249572542412108e-02, 1.926600459347254171e-02, 1.926948194238195175e-02, 1.927292776858223478e-02, 1.927634206855480606e-02, 1.927972483883227603e-02, 1.928307607599874518e-02, 1.928639577668955774e-02, 1.928968393759144043e-02, 1.929294055544248168e-02, 1.929616562703216284e-02, 1.929935914920129919e-02, 1.930252111884200178e-02, 1.930565153289788213e-02, 1.930875038836374347e-02, 1.931181768228593804e-02, 1.931485341176211387e-02, 1.931785757394121825e-02, 1.932083016602366768e-02, 1.932377118526118140e-02, 1.932668062895691666e-02, 1.932955849446532648e-02, 1.933240477919238171e-02, 1.933521948059517201e-02, 1.933800259618244019e-02, 1.934075412351417278e-02, 1.934347406020171106e-02, 1.934616240390784128e-02, 1.934881915234669403e-02, 1.935144430328373036e-02, 1.935403785453598813e-02, 1.935659980397159974e-02, 1.935913014951031949e-02, 1.936162888912308644e-02, 1.936409602083233317e-02, 1.936653154271194763e-02, 1.936893545288700252e-02, 1.937130774953410919e-02, 1.937364843088114352e-02, 1.937595749520749921e-02, 1.937823494084369921e-02, 1.938048076617202714e-02, 1.938269496962570851e-02, 1.938487754968969828e-02, 1.938702850490012577e-02, 1.938914783384455484e-02, 1.939123553516191797e-02, 1.939329160754253364e-02, 1.939531604972802650e-02, 1.939730886051148698e-02, 1.939927003873732556e-02, 1.940119958330127972e-02, 1.940309749315052845e-02, 1.940496376728347711e-02, 1.940679840475014947e-02, 1.940860140465163960e-02, 1.941037276614055590e-02, 1.941211248842083376e-02, 1.941382057074777373e-02, 1.941549701242792358e-02, 1.941714181281939053e-02, 1.941875497133138326e-02, 1.942033648742463176e-02, 1.942188636061115484e-02, 1.942340459045432260e-02, 1.942489117656876624e-02, 1.942634611862051330e-02, 1.942776941632698429e-02, 1.942916106945680524e-02, 1.943052107782991880e-02, 1.943184944131771258e-02, 1.943314615984286647e-02, 1.943441123337922780e-02, 1.943564466195217555e-02, 1.943684644563824573e-02, 1.943801658456529094e-02, 1.943915507891250810e-02, 1.944026192891037258e-02, 1.944133713484067633e-02, 1.944238069703648625e-02, 1.944339261588208870e-02, 1.944437289181322540e-02, 1.944532152531669097e-02, 1.944623851693074931e-02, 1.944712386724482128e-02, 1.944797757689960618e-02, 1.944879964658712684e-02, 1.944959007705054921e-02, 1.945034886908447030e-02, 1.945107602353452619e-02, 1.945177154129773198e-02, 1.945243542332229097e-02, 1.945306767060769881e-02, 1.945366828420454566e-02, 1.945423726521475563e-02, 1.945477461479152084e-02, 1.945528033413907593e-02, 1.945575442451296863e-02, 1.945619688721997656e-02, 1.945660772361802390e-02, 1.945698693511620225e-02, 1.945733452317481571e-02, 1.945765048930541904e-02, 1.945793483507064422e-02, 1.945818756208432879e-02, 1.945840867201138399e-02, 1.945859816656803770e-02, 1.945875604752158455e-02, 1.945888231669040333e-02, 1.945897697594416512e-02, 1.945904002720349329e-02, 1.945907147244027233e-02, 1.945907131367740142e-02, 1.945903955298896801e-02, 1.945897619250013671e-02, 1.945888123438718753e-02, 1.945875468087745336e-02, 1.945859653424939287e-02, 1.945840679683244825e-02, 1.945818547100726728e-02, 1.945793255920553327e-02, 1.945764806390984369e-02, 1.945733198765399810e-02, 1.945698433302276570e-02, 1.945660510265202064e-02, 1.945619429922855470e-02, 1.945575192549028887e-02, 1.945527798422599583e-02, 1.945477247827565731e-02, 1.945423541053009284e-02, 1.945366678393110199e-02, 1.945306660147165870e-02, 1.945243486619538734e-02, 1.945177158119721153e-02, 1.945107674962270189e-02, 1.945035037466871786e-02, 1.944959245958260974e-02, 1.944880300766314157e-02, 1.944798202225955092e-02, 1.944712950677231558e-02, 1.944624546465266446e-02, 1.944532989940268852e-02, 1.944438281457552820e-02, 1.944340421377496395e-02, 1.944239410065586038e-02, 1.944135247892377072e-02, 1.944027935233521437e-02, 1.943917472469746180e-02, 1.943803859986870455e-02, 1.943687098175782627e-02, 1.943567187432462470e-02, 1.943444128157965911e-02, 1.943317920758426062e-02, 1.943188565645056001e-02, 1.943056063234148076e-02, 1.942920413947065925e-02, 1.942781618210250374e-02, 1.942639676455213196e-02, 1.942494589118547166e-02, 1.942346356641899002e-02, 1.942194979472014818e-02, 1.942040458060676281e-02, 1.941882792864765145e-02, 1.941721984346211557e-02, 1.941558032972011752e-02, 1.941390939214246089e-02, 1.941220703550031873e-02, 1.941047326461572270e-02, 1.940870808436116410e-02, 1.940691149965995121e-02, 1.940508351548565769e-02, 1.940322413686284414e-02, 1.940133336886627063e-02, 1.939941121662159748e-02, 1.939745768530473993e-02, 1.939547278014237819e-02, 1.939345650641158270e-02, 1.939140886944000150e-02, 1.938932987460577004e-02, 1.938721952733751808e-02, 1.938507783311440788e-02, 1.938290479746595379e-02, 1.938070042597223042e-02, 1.937846472426368524e-02, 1.937619769802130174e-02, 1.937389935297635646e-02, 1.937156969491062378e-02, 1.936920872965619544e-02, 1.936681646309560897e-02, 1.936439290116170886e-02, 1.936193804983782005e-02, 1.935945191515744956e-02, 1.935693450320453285e-02, 1.935438582011331232e-02, 1.935180587206823330e-02, 1.934919466530423543e-02, 1.934655220610629126e-02, 1.934387850080985724e-02, 1.934117355580052336e-02, 1.933843737751405473e-02, 1.933566997243658936e-02, 1.933287134710436408e-02, 1.933004150810382904e-02, 1.932718046207170318e-02, 1.932428821569471405e-02, 1.932136477570991356e-02, 1.931841014890429975e-02, 1.931542434211514989e-02, 1.931240736222979149e-02, 1.930935921618565781e-02, 1.930627991097027402e-02, 1.930316945362123629e-02, 1.930002785122606618e-02, 1.929685511092250200e-02, 1.929365123989821088e-02, 1.929041624539092406e-02, 1.928715013468828079e-02, 1.928385291512795668e-02, 1.928052459409752492e-02, 1.927716517903461935e-02, 1.927377467742670547e-02, 1.927035309681117761e-02, 1.926690044477537278e-02, 1.926341672895646312e-02, 1.925990195704154959e-02, 1.925635613676750582e-02, 1.925277927592113428e-02, 1.924917138233894764e-02, 1.924553246390739783e-02, 1.924186252856262616e-02, 1.923816158429056400e-02, 1.923442963912696396e-02, 1.923066670115718829e-02, 1.922687277851641355e-02, 1.922304787938954734e-02, 1.921919201201120059e-02, 1.921530518466552442e-02, 1.921138740568648431e-02, 1.920743868345758595e-02, 1.920345902641201405e-02, 1.919944844303248660e-02, 1.919540694185147001e-02, 1.919133453145078702e-02, 1.918723122046204696e-02, 1.918309701756619814e-02, 1.917893193149383668e-02, 1.917473597102494626e-02, 1.917050914498922079e-02, 1.916625146226559606e-02, 1.916196293178246482e-02, 1.915764356251788841e-02, 1.915329336349905556e-02, 1.914891234380276808e-02, 1.914450051255506269e-02, 1.914005787893141575e-02, 1.913558445215667383e-02, 1.913108024150496009e-02, 1.912654525629974706e-02, 1.912197950591371792e-02, 1.911738299976882896e-02, 1.911275574733644830e-02, 1.910809775813700206e-02, 1.910340904174017210e-02, 1.909868960776490640e-02, 1.909393946587933585e-02, 1.908915862580066319e-02, 1.908434709729521159e-02, 1.907950489017855647e-02, 1.907463201431527575e-02, 1.906972847961910592e-02, 1.906479429605274778e-02, 1.905982947362800523e-02, 1.905483402240574706e-02, 1.904980795249578210e-02, 1.904475127405684878e-02, 1.903966399729684414e-02, 1.903454613247242827e-02, 1.902939768988935396e-02, 1.902421867990207807e-02, 1.901900911291411894e-02, 1.901376899937772674e-02, 1.900849834979413330e-02, 1.900319717471325720e-02, 1.899786548473399173e-02, 1.899250329050390651e-02, 1.898711060271925447e-02, 1.898168743212526322e-02, 1.897623378951564244e-02, 1.897074968573294121e-02, 1.896523513166838842e-02, 1.895969013826188238e-02, 1.895411471650188667e-02, 1.894850887742558984e-02, 1.894287263211860001e-02, 1.893720599171538552e-02, 1.893150896739866432e-02, 1.892578157039996253e-02, 1.892002381199909405e-02, 1.891423570352456299e-02, 1.890841725635318202e-02, 1.890256848191030833e-02, 1.889668939166966322e-02, 1.889077999715348816e-02, 1.888484030993228466e-02, 1.887887034162498770e-02, 1.887287010389880962e-02, 1.886683960846928867e-02, 1.886077886710045559e-02, 1.885468789160429925e-02, 1.884856669384123162e-02, 1.884241528571995242e-02, 1.883623367919727912e-02, 1.883002188627816431e-02, 1.882377991901583100e-02, 1.881750778951156791e-02, 1.881120550991485438e-02, 1.880487309242317301e-02, 1.879851054928221785e-02, 1.879211789278551620e-02, 1.878569513527483109e-02, 1.877924228913982474e-02, 1.877275936681809324e-02, 1.876624638079520471e-02, 1.875970334360484854e-02, 1.875313026782840162e-02, 1.874652716609520597e-02, 1.873989405108247505e-02, 1.873323093551515148e-02, 1.872653783216623319e-02, 1.871981475385617322e-02, 1.871306171345359093e-02, 1.870627872387444282e-02, 1.869946579808272336e-02, 1.869262294908992372e-02, 1.868575018995538919e-02, 1.867884753378578483e-02, 1.867191499373576161e-02, 1.866495258300743254e-02, 1.865796031485038309e-02, 1.865093820256185850e-02, 1.864388625948659728e-02, 1.863680449901684855e-02, 1.862969293459235121e-02, 1.862255157970016048e-02, 1.861538044787490465e-02, 1.860817955269870524e-02, 1.860094890780076074e-02, 1.859368852685786000e-02, 1.858639842359394515e-02, 1.857907861178042033e-02, 1.857172910523582215e-02, 1.856434991782611454e-02, 1.855694106346427938e-02, 1.854950255611060791e-02, 1.854203440977249609e-02, 1.853453663850457636e-02, 1.852700925640854424e-02, 1.851945227763317561e-02, 1.851186571637431638e-02, 1.850424958687492752e-02, 1.849660390342489080e-02, 1.848892868036107126e-02, 1.848122393206741085e-02, 1.847348967297461272e-02, 1.846572591756052636e-02, 1.845793268034960632e-02, 1.845010997591347429e-02, 1.844225781887019397e-02, 1.843437622388508293e-02, 1.842646520566981402e-02, 1.841852477898305376e-02, 1.841055495863015354e-02, 1.840255575946322594e-02, 1.839452719638083600e-02, 1.838646928432828911e-02, 1.837838203829772130e-02, 1.837026547332750587e-02, 1.836211960450277736e-02, 1.835394444695518865e-02, 1.834574001586289360e-02, 1.833750632645043954e-02, 1.832924339398894764e-02, 1.832095123379586660e-02, 1.831262986123500039e-02, 1.830427929171669563e-02, 1.829589954069749808e-02, 1.828749062368024980e-02, 1.827905255621420366e-02, 1.827058535389460350e-02, 1.826208903236330172e-02, 1.825356360730795088e-02, 1.824500909446263169e-02, 1.823642550960756850e-02, 1.822781286856888991e-02, 1.821917118721903817e-02, 1.821050048147627304e-02, 1.820180076730516447e-02, 1.819307206071593339e-02, 1.818431437776518375e-02, 1.817552773455504214e-02, 1.816671214723390715e-02, 1.815786763199568610e-02, 1.814899420508049588e-02, 1.814009188277398640e-02, 1.813116068140777082e-02, 1.812220061735922427e-02, 1.811321170705141453e-02, 1.810419396695302566e-02, 1.809514741357853840e-02, 1.808607206348807062e-02, 1.807696793328716911e-02, 1.806783503962729881e-02, 1.805867339920515235e-02, 1.804948302876325031e-02, 1.804026394508926115e-02, 1.803101616501662924e-02, 1.802173970542402665e-02, 1.801243458323560295e-02, 1.800310081542092974e-02, 1.799373841899492080e-02, 1.798434741101763087e-02, 1.797492780859464082e-02, 1.796547962887655794e-02, 1.795600288905938730e-02, 1.794649760638417774e-02, 1.793696379813725442e-02, 1.792740148165004183e-02, 1.791781067429905686e-02, 1.790819139350584635e-02, 1.789854365673690037e-02, 1.788886748150394709e-02, 1.787916288536353648e-02, 1.786942988591724499e-02, 1.785966850081136328e-02, 1.784987874773734731e-02, 1.784006064443120071e-02, 1.783021420867399176e-02, 1.782033945829133992e-02, 1.781043641115385989e-02, 1.780050508517670368e-02, 1.779054549831985896e-02, 1.778055766858775005e-02, 1.777054161402968555e-02, 1.776049735273930313e-02, 1.775042490285503108e-02, 1.774032428255961982e-02, 1.773019551008050976e-02, 1.772003860368950856e-02, 1.770985358170274263e-02, 1.769964046248096237e-02, 1.768939926442907734e-02, 1.767913000599640946e-02, 1.766883270567664102e-02, 1.765850738200774178e-02, 1.764815405357161512e-02, 1.763777273899475029e-02, 1.762736345694757012e-02, 1.761692622614469128e-02, 1.760646106534487221e-02, 1.759596799335079106e-02, 1.758544702900937881e-02, 1.757489819121144797e-02, 1.756432149889172734e-02, 1.755371697102899725e-02, 1.754308462664581209e-02, 1.753242448480866675e-02, 1.752173656462790302e-02, 1.751102088525759506e-02, 1.750027746589569513e-02, 1.748950632578368664e-02, 1.747870748420706291e-02, 1.746788096049457090e-02, 1.745702677401886685e-02, 1.744614494419623185e-02, 1.743523549048638793e-02, 1.742429843239251194e-02, 1.741333378946146454e-02, 1.740234158128342937e-02, 1.739132182749199285e-02, 1.738027454776423786e-02, 1.736919976182057720e-02, 1.735809748942468769e-02, 1.734696775038348238e-02, 1.733581056454725627e-02, 1.732462595180937759e-02, 1.731341393210650975e-02, 1.730217452541840673e-02, 1.729090775176799974e-02, 1.727961363122111280e-02, 1.726829218388684431e-02, 1.725694342991705016e-02, 1.724556738950679818e-02, 1.723416408289378185e-02, 1.722273353035889618e-02, 1.721127575222576936e-02, 1.719979076886091890e-02, 1.718827860067341159e-02, 1.717673926811541171e-02, 1.716517279168147669e-02, 1.715357919190909491e-02, 1.714195848937831099e-02, 1.713031070471165290e-02, 1.711863585857450326e-02, 1.710693397167442273e-02, 1.709520506476174331e-02, 1.708344915862920060e-02, 1.707166627411188520e-02, 1.705985643208734678e-02, 1.704801965347547618e-02, 1.703615595923841167e-02, 1.702426537038072979e-02, 1.701234790794904639e-02, 1.700040359303228374e-02, 1.698843244676160810e-02, 1.697643449031031523e-02, 1.696440974489350079e-02, 1.695235823176877848e-02, 1.694027997223539195e-02, 1.692817498763473857e-02, 1.691604329935017526e-02, 1.690388492880699409e-02, 1.689169989747228706e-02, 1.687948822685493566e-02, 1.686724993850577739e-02, 1.685498505401720679e-02, 1.684269359502358829e-02, 1.683037558320063173e-02, 1.681803104026604462e-02, 1.680565998797895269e-02, 1.679326244814007343e-02, 1.678083844259168483e-02, 1.676838799321757681e-02, 1.675591112194279794e-02, 1.674340785073416202e-02, 1.673087820159964087e-02, 1.671832219658847540e-02, 1.670573985779151213e-02, 1.669313120734043296e-02, 1.668049626740856356e-02, 1.666783506021011010e-02, 1.665514760800059987e-02, 1.664243393307661412e-02, 1.662969405777586090e-02, 1.661692800447691146e-02, 1.660413579559957831e-02, 1.659131745360433938e-02, 1.657847300099284452e-02, 1.656560246030751998e-02, 1.655270585413168294e-02, 1.653978320508921532e-02, 1.652683453584508771e-02, 1.651385986910474876e-02, 1.650085922761450330e-02, 1.648783263416106135e-02, 1.647478011157196831e-02, 1.646170168271526499e-02, 1.644859737049943899e-02, 1.643546719787356697e-02, 1.642231118782693303e-02, 1.640912936338961847e-02, 1.639592174763157550e-02, 1.638268836366367151e-02, 1.636942923463647129e-02, 1.635614438374120155e-02, 1.634283383420898420e-02, 1.632949760931136710e-02, 1.631613573235979331e-02, 1.630274822670590290e-02, 1.628933511574141846e-02, 1.627589642289803407e-02, 1.626243217164734245e-02, 1.624894238550074824e-02, 1.623542708800987389e-02, 1.622188630276579641e-02, 1.620832005339964063e-02, 1.619472836358221493e-02, 1.618111125702412917e-02, 1.616746875747538878e-02, 1.615380088872602274e-02, 1.614010767460525436e-02, 1.612638913898208071e-02, 1.611264530576510257e-02, 1.609887619890220875e-02, 1.608508184238066629e-02, 1.607126226022738066e-02, 1.605741747650825044e-02, 1.604354751532887507e-02, 1.602965240083377430e-02, 1.601573215720678706e-02, 1.600178680867111666e-02, 1.598781637948879647e-02, 1.597382089396124152e-02, 1.595980037642860325e-02, 1.594575485127035924e-02, 1.593168434290462634e-02, 1.591758887578888573e-02, 1.590346847441907047e-02, 1.588932316333024550e-02, 1.587515296709599705e-02, 1.586095791032899466e-02, 1.584673801768030424e-02, 1.583249331383986339e-02, 1.581822382353621770e-02, 1.580392957153652772e-02, 1.578961058264626710e-02, 1.577526688170974301e-02, 1.576089849360948203e-02, 1.574650544326644877e-02, 1.573208775564005277e-02, 1.571764545572804095e-02, 1.570317856856645947e-02, 1.568868711922946982e-02, 1.567417113282961599e-02, 1.565963063451736997e-02, 1.564506564948146133e-02, 1.563047620294878010e-02, 1.561586232018415468e-02, 1.560122402649021835e-02, 1.558656134720787755e-02, 1.557187430771556774e-02, 1.555716293343000975e-02, 1.554242724980531981e-02, 1.552766728233358901e-02, 1.551288305654460568e-02, 1.549807459800595262e-02, 1.548324193232262190e-02, 1.546838508513723003e-02, 1.545350408213014455e-02, 1.543859894901882315e-02, 1.542366971155886834e-02, 1.540871639554258592e-02, 1.539373902680012118e-02, 1.537873763119861591e-02, 1.536371223464282759e-02, 1.534866286307434366e-02, 1.533358954247233258e-02, 1.531849229885290375e-02, 1.530337115826949090e-02, 1.528822614681210092e-02, 1.527305729060831826e-02, 1.525786461582229366e-02, 1.524264814865541363e-02, 1.522740791534557027e-02, 1.521214394216786198e-02, 1.519685625543399851e-02, 1.518154488149241373e-02, 1.516620984672837659e-02, 1.515085117756354363e-02, 1.513546890045645507e-02, 1.512006304190212369e-02, 1.510463362843215279e-02, 1.508918068661434242e-02, 1.507370424305331733e-02, 1.505820432438969431e-02, 1.504268095730080385e-02, 1.502713416849991816e-02, 1.501156398473674214e-02, 1.499597043279719995e-02, 1.498035353950344026e-02, 1.496471333171341817e-02, 1.494904983632145204e-02, 1.493336308025764586e-02, 1.491765309048831943e-02, 1.490191989401558857e-02, 1.488616351787732696e-02, 1.487038398914751307e-02, 1.485458133493561261e-02, 1.483875558238714927e-02, 1.482290675868303334e-02, 1.480703489103998328e-02, 1.479114000671032103e-02, 1.477522213298200320e-02, 1.475928129717821516e-02, 1.474331752665796087e-02, 1.472733084881526489e-02, 1.471132129107997032e-02, 1.469528888091667720e-02, 1.467923364582598630e-02, 1.466315561334311825e-02, 1.464705481103862651e-02, 1.463093126651842345e-02, 1.461478500742314189e-02, 1.459861606142877355e-02, 1.458242445624619021e-02, 1.456621021962124611e-02, 1.454997337933451942e-02, 1.453371396320171823e-02, 1.451743199907303689e-02, 1.450112751483383956e-02, 1.448480053840364191e-02, 1.446845109773713806e-02, 1.445207922082340952e-02, 1.443568493568619590e-02, 1.441926827038350449e-02, 1.440282925300821228e-02, 1.438636791168722284e-02, 1.436988427458203710e-02, 1.435337836988859889e-02, 1.433685022583673294e-02, 1.432029987069098273e-02, 1.430372733274962345e-02, 1.428713264034545821e-02, 1.427051582184500796e-02, 1.425387690564911165e-02, 1.423721592019252559e-02, 1.422053289394401877e-02, 1.420382785540597395e-02, 1.418710083311498261e-02, 1.417035185564112162e-02, 1.415358095158842679e-02, 1.413678814959457540e-02, 1.411997347833097126e-02, 1.410313696650237342e-02, 1.408627864284746692e-02, 1.406939853613810472e-02, 1.405249667517966851e-02, 1.403557308881109127e-02, 1.401862780590459184e-02, 1.400166085536579293e-02, 1.398467226613330297e-02, 1.396766206717926437e-02, 1.395063028750869773e-02, 1.393357695616008647e-02, 1.391650210220454070e-02, 1.389940575474652926e-02, 1.388228794292337143e-02, 1.386514869590541564e-02, 1.384798804289558670e-02, 1.383080601312997905e-02, 1.381360263587714209e-02, 1.379637794043855892e-02, 1.377913195614842955e-02, 1.376186471237325279e-02, 1.374457623851249762e-02, 1.372726656399784334e-02, 1.370993571829365321e-02, 1.369258373089649559e-02, 1.367521063133550659e-02, 1.365781644917206904e-02, 1.364040121399994442e-02, 1.362296495544482351e-02, 1.360550770316491624e-02, 1.358802948685025949e-02, 1.357053033622312131e-02, 1.355301028103782744e-02, 1.353546935108070060e-02, 1.351790757616964066e-02, 1.350032498615496082e-02, 1.348272161091824267e-02, 1.346509748037325732e-02, 1.344745262446522989e-02, 1.342978707317124196e-02, 1.341210085649995228e-02, 1.339439400449137646e-02, 1.337666654721739179e-02, 1.335891851478100169e-02, 1.334114993731696890e-02, 1.332336084499098801e-02, 1.330555126800045396e-02, 1.328772123657390516e-02, 1.326987078097110508e-02, 1.325199993148279236e-02, 1.323410871843111285e-02, 1.321619717216893607e-02, 1.319826532308042769e-02, 1.318031320158060543e-02, 1.316234083811543970e-02, 1.314434826316163152e-02, 1.312633550722665243e-02, 1.310830260084900473e-02, 1.309024957459751018e-02, 1.307217645907189467e-02, 1.305408328490247939e-02, 1.303597008275008545e-02, 1.301783688330588815e-02, 1.299968371729174656e-02, 1.298151061545961549e-02, 1.296331760859203985e-02, 1.294510472750176437e-02, 1.292687200303182897e-02, 1.290861946605523919e-02, 1.289034714747545537e-02, 1.287205507822560858e-02, 1.285374328926934019e-02, 1.283541181159972809e-02, 1.281706067624019396e-02, 1.279868991424397071e-02, 1.278029955669383183e-02, 1.276188963470270381e-02, 1.274346017941276055e-02, 1.272501122199639657e-02, 1.270654279365493813e-02, 1.268805492562006740e-02, 1.266954764915221091e-02, 1.265102099554179724e-02, 1.263247499610822139e-02, 1.261390968220065141e-02, 1.259532508519707605e-02, 1.257672123650512008e-02, 1.255809816756136947e-02, 1.253945590983180161e-02, 1.252079449481106020e-02, 1.250211395402320985e-02, 1.248341431902104566e-02, 1.246469562138624761e-02, 1.244595789272963382e-02, 1.242720116469058812e-02, 1.240842546893753708e-02, 1.238963083716717282e-02, 1.237081730110531873e-02, 1.235198489250595444e-02, 1.233313364315196184e-02, 1.231426358485456819e-02, 1.229537474945359074e-02, 1.227646716881687812e-02, 1.225754087484105630e-02, 1.223859589945063518e-02, 1.221963227459870079e-02, 1.220065003226621266e-02, 1.218164920446240806e-02, 1.216262982322461987e-02, 1.214359192061825569e-02, 1.212453552873646659e-02, 1.210546067970031704e-02, 1.208636740565900876e-02, 1.206725573878907054e-02, 1.204812571129545984e-02, 1.202897735541012120e-02, 1.200981070339315546e-02, 1.199062578753179627e-02, 1.197142264014128786e-02, 1.195220129356385982e-02, 1.193296178016952334e-02, 1.191370413235552823e-02, 1.189442838254653467e-02, 1.187513456319418126e-02, 1.185582270677768349e-02, 1.183649284580300109e-02, 1.181714501280362560e-02, 1.179777924033964011e-02, 1.177839556099846870e-02, 1.175899400739441499e-02, 1.173957461216836896e-02, 1.172013740798848874e-02, 1.170068242754921869e-02, 1.168120970357202672e-02, 1.166171926880505728e-02, 1.164221115602300655e-02, 1.162268539802688294e-02, 1.160314202764459526e-02, 1.158358107773008877e-02, 1.156400258116403734e-02, 1.154440657085309928e-02, 1.152479307973053313e-02, 1.150516214075564952e-02, 1.148551378691401934e-02, 1.146584805121707469e-02, 1.144616496670270399e-02, 1.142646456643427004e-02, 1.140674688350156590e-02, 1.138701195102010018e-02, 1.136725980213103282e-02, 1.134749047000162964e-02, 1.132770398782450595e-02, 1.130790038881831355e-02, 1.128807970622700170e-02, 1.126824197332023519e-02, 1.124838722339317407e-02, 1.122851548976653256e-02, 1.120862680578603096e-02, 1.118872120482317274e-02, 1.116879872027434252e-02, 1.114885938556154678e-02, 1.112890323413141293e-02, 1.110893029945642443e-02, 1.108894061503349834e-02, 1.106893421438462886e-02, 1.104891113105713196e-02, 1.102887139862266351e-02, 1.100881505067815951e-02, 1.098874212084512136e-02, 1.096865264276994205e-02, 1.094854665012329371e-02, 1.092842417660095690e-02, 1.090828525592276235e-02, 1.088812992183350349e-02, 1.086795820810193026e-02, 1.084777014852157835e-02, 1.082756577691010823e-02, 1.080734512710963130e-02, 1.078710823298606979e-02, 1.076685512842999806e-02, 1.074658584735563478e-02, 1.072630042370156800e-02, 1.070599889143033709e-02, 1.068568128452810316e-02, 1.066534763700536723e-02, 1.064499798289596406e-02, 1.062463235625794693e-02, 1.060425079117261436e-02, 1.058385332174526655e-02, 1.056343998210463632e-02, 1.054301080640312853e-02, 1.052256582881632915e-02, 1.050210508354360202e-02, 1.048162860480728389e-02, 1.046113642685342175e-02, 1.044062858395076662e-02, 1.042010511039211280e-02, 1.039956604049246253e-02, 1.037901140859056291e-02, 1.035844124904781484e-02, 1.033785559624854876e-02, 1.031725448460026062e-02, 1.029663794853316258e-02, 1.027600602250036167e-02, 1.025535874097737062e-02, 1.023469613846284682e-02, 1.021401824947761050e-02, 1.019332510856542189e-02, 1.017261675029217625e-02, 1.015189320924649204e-02, 1.013115452003934304e-02, 1.011040071730405152e-02, 1.008963183569594642e-02, 1.006884790989297923e-02, 1.004804897459479762e-02, 1.002723506452354515e-02, 1.000640621442334087e-02, 9.985562459059996523e-03, 9.964703833221719154e-03, 9.943830371718033814e-03, 9.922942109380829614e-03, 9.902039081063249495e-03, 9.881121321640470856e-03, 9.860188866009216360e-03, 9.839241749087904859e-03, 9.818280005816065054e-03, 9.797303671155273980e-03, 9.776312780087904539e-03, 9.755307367618155923e-03, 9.734287468771326765e-03, 9.713253118594047594e-03, 9.692204352153854091e-03, 9.671141204539775160e-03, 9.650063710861469038e-03, 9.628971906250061163e-03, 9.607865825857153652e-03, 9.586745504855557348e-03, 9.565610978438925799e-03, 9.544462281821312899e-03, 9.523299450237967395e-03, 9.502122518944290316e-03, 9.480931523216749174e-03, 9.459726498351889168e-03, 9.438507479667089528e-03, 9.417274502499939012e-03, 9.396027602208638363e-03, 9.374766814171224885e-03, 9.353492173786477973e-03, 9.332203716472904295e-03, 9.310901477669471585e-03, 9.289585492835032710e-03, 9.268255797448658739e-03, 9.246912427009104651e-03, 9.225555417034951577e-03, 9.204184803065033546e-03, 9.182800620657420934e-03, 9.161402905390286094e-03, 9.139991692861325692e-03, 9.118567018687960199e-03, 9.097128918506742351e-03, 9.075677427974222777e-03, 9.054212582765839776e-03, 9.032734418576795349e-03, 9.011242971121430703e-03, 8.989738276133474315e-03, 8.968220369365455594e-03, 8.946689286589476833e-03, 8.925145063596267789e-03, 8.903587736196023547e-03, 8.882017340217387980e-03, 8.860433911508255184e-03, 8.838837485935306312e-03, 8.817228099383695589e-03, 8.795605787757699093e-03, 8.773970586979810971e-03, 8.752322532991522325e-03, 8.730661661752450384e-03, 8.708988009240964737e-03, 8.687301611453757122e-03, 8.665602504405966328e-03, 8.643890724130699407e-03, 8.622166306679760264e-03, 8.600429288122568919e-03, 8.578679704547139892e-03, 8.556917592059305050e-03, 8.535142986783065752e-03, 8.513355924859945800e-03, 8.491556442449890024e-03, 8.469744575730237326e-03, 8.447920360896083239e-03, 8.426083834160475947e-03, 8.404235031753954852e-03, 8.382373989924762209e-03, 8.360500744938291484e-03, 8.338615333077845429e-03, 8.316717790643669839e-03, 8.294808153953669994e-03, 8.272886459342956161e-03, 8.250952743163895639e-03, 8.229007041785701623e-03, 8.207049391595154855e-03, 8.185079828995545440e-03, 8.163098390407656432e-03, 8.141105112268691782e-03, 8.119100031033077772e-03, 8.097083183171878418e-03, 8.075054605173050473e-03, 8.053014333540917807e-03, 8.030962404796507942e-03, 8.008898855477664808e-03, 7.986823722138181383e-03, 7.964737041349085125e-03, 7.942638849696974368e-03, 7.920529183785329774e-03, 7.898408080233391970e-03, 7.876275575677080948e-03, 7.854131706767948293e-03, 7.831976510174013320e-03, 7.809810022579161126e-03, 7.787632280683304785e-03, 7.765443321201940391e-03, 7.743243180866829674e-03, 7.721031896425067584e-03, 7.698809504639875928e-03, 7.676576042289672691e-03, 7.654331546168807558e-03, 7.632076053087158592e-03, 7.609809599869695081e-03, 7.587532223357286790e-03, 7.565243960405657053e-03, 7.542944847886146921e-03, 7.520634922685243313e-03, 7.498314221704654482e-03, 7.475982781860866788e-03, 7.453640640085856806e-03, 7.431287833326124213e-03, 7.408924398543553086e-03, 7.386550372714392743e-03, 7.364165792830060057e-03, 7.341770695896562664e-03, 7.319365118934726203e-03, 7.296949098979598446e-03, 7.274522673081288034e-03, 7.252085878304008644e-03, 7.229638751726281953e-03, 7.207181330441728671e-03, 7.184713651557443972e-03, 7.162235752195360121e-03, 7.139747669491057318e-03, 7.117249440594827954e-03, 7.094741102670431079e-03, 7.072222692896077724e-03, 7.049694248463759562e-03, 7.027155806579454475e-03, 7.004607404462597463e-03, 6.982049079346900299e-03, 6.959480868479243042e-03, 6.936902809120629870e-03, 6.914314938545180339e-03, 6.891717294040848422e-03, 6.869109912909072968e-03, 6.846492832464297178e-03, 6.823866090034774387e-03, 6.801229722961535905e-03, 6.778583768599204598e-03, 6.755928264315403352e-03, 6.733263247490966705e-03, 6.710588755519378799e-03, 6.687904825807565283e-03, 6.665211495774855076e-03, 6.642508802853928397e-03, 6.619796784489744707e-03, 6.597075478140289502e-03, 6.574344921276170130e-03, 6.551605151380637468e-03, 6.528856205949110612e-03, 6.506098122489986126e-03, 6.483330938523551232e-03, 6.460554691582810413e-03, 6.437769419213090760e-03, 6.414975158971497268e-03, 6.392171948427858262e-03, 6.369359825163533641e-03, 6.346538826772488671e-03, 6.323708990860094428e-03, 6.300870355044060206e-03, 6.278022956953780397e-03, 6.255166834230612913e-03, 6.232302024527221727e-03, 6.209428565508411275e-03, 6.186546494850184499e-03, 6.163655850240503525e-03, 6.140756669378194185e-03, 6.117848989974407521e-03, 6.094932849750744550e-03, 6.072008286440757664e-03, 6.049075337788810923e-03, 6.026134041550486840e-03, 6.003184435492666185e-03, 5.980226557393232209e-03, 5.957260445041084526e-03, 5.934286136235749666e-03, 5.911303668788082770e-03, 5.888313080519217216e-03, 5.865314409261549074e-03, 5.842307692857632087e-03, 5.819292969161041565e-03, 5.796270276035720391e-03, 5.773239651356291274e-03, 5.750201133007370666e-03, 5.727154758884465610e-03, 5.704100566892886942e-03, 5.681038594948554198e-03, 5.657968880977577546e-03, 5.634891462915764260e-03, 5.611806378709551131e-03, 5.588713666314794500e-03, 5.565613363697816292e-03, 5.542505508834301604e-03, 5.519390139710101013e-03, 5.496267294320699749e-03, 5.473137010671398107e-03, 5.449999326776711235e-03, 5.426854280661233022e-03, 5.403701910358522410e-03, 5.380542253912112133e-03, 5.357375349374242368e-03, 5.334201234807365612e-03, 5.311019948282271440e-03, 5.287831527879606128e-03, 5.264636011688573342e-03, 5.241433437807978442e-03, 5.218223844345116526e-03, 5.195007269416587747e-03, 5.171783751147856698e-03, 5.148553327672828264e-03, 5.125316037134656881e-03, 5.102071917684660590e-03, 5.078821007483312437e-03, 5.055563344699121574e-03, 5.032298967509469395e-03, 5.009027914100065704e-03, 4.985750222665108304e-03, 4.962465931406693197e-03, 4.939175078535733114e-03, 4.915877702270765766e-03, 4.892573840838854160e-03, 4.869263532475000267e-03, 4.845946815422312419e-03, 4.822623727931587244e-03, 4.799294308261490075e-03, 4.775958594678898425e-03, 4.752616625457909728e-03, 4.729268438880681810e-03, 4.705914073236873441e-03, 4.682553566823852501e-03, 4.659186957946064543e-03, 4.635814284915921839e-03, 4.612435586052708765e-03, 4.589050899683371106e-03, 4.565660264141997368e-03, 4.542263717769998328e-03, 4.518861298915485131e-03, 4.495453045934173948e-03, 4.472038997188251472e-03, 4.448619191047352428e-03, 4.425193665887469305e-03, 4.401762460091798897e-03, 4.378325612050273062e-03, 4.354883160159107695e-03, 4.331435142821683099e-03, 4.307981598447411208e-03, 4.284522565452707037e-03, 4.261058082259917487e-03, 4.237588187298136667e-03, 4.214112919002640373e-03, 4.190632315815069966e-03, 4.167146416182873798e-03, 4.143655258560135536e-03, 4.120158881406466543e-03, 4.096657323187876711e-03, 4.073150622376169906e-03, 4.049638817449135661e-03, 4.026121946890008803e-03, 4.002600049188252684e-03, 3.979073162838661464e-03, 3.955541326341596893e-03, 3.932004578203285826e-03, 3.908462956935288522e-03, 3.884916501054733271e-03, 3.861365249083722681e-03, 3.837809239550183694e-03, 3.814248510986749992e-03, 3.790683101931661882e-03, 3.767113050928103200e-03, 3.743538396524460216e-03, 3.719959177273733132e-03, 3.696375431734337524e-03, 3.672787198469058736e-03, 3.649194516045993833e-03, 3.625597423037443118e-03, 3.601995958020821724e-03, 3.578390159577977871e-03, 3.554780066295450472e-03, 3.531165716764032847e-03, 3.507547149578915408e-03, 3.483924403340045179e-03, 3.460297516651145242e-03, 3.436666528120586005e-03, 3.413031476360775009e-03, 3.389392399988333873e-03, 3.365749337623570505e-03, 3.342102327891282709e-03, 3.318451409419680490e-03, 3.294796620841217855e-03, 3.271138000792016016e-03, 3.247475587912057680e-03, 3.223809420844613288e-03, 3.200139538237072815e-03, 3.176465978739842055e-03, 3.152788781007365669e-03, 3.129107983696946278e-03, 3.105423625469658656e-03, 3.081735744989854038e-03, 3.058044380924734244e-03, 3.034349571945197787e-03, 3.010651356724704068e-03, 2.986949773940166756e-03, 2.963244862271336225e-03, 2.939536660401018131e-03, 2.915825207014474500e-03, 2.892110540800277210e-03, 2.868392700449211210e-03, 2.844671724655244670e-03, 2.820947652114422655e-03, 2.797220521525731456e-03, 2.773490371590490999e-03, 2.749757241012577760e-03, 2.726021168497801996e-03, 2.702282192754824550e-03, 2.678540352494095198e-03, 2.654795686428128472e-03, 2.631048233272314206e-03, 2.607298031743136412e-03, 2.583545120559752745e-03, 2.559789538442667871e-03, 2.536031324114789050e-03, 2.512270516300250424e-03, 2.488507153725329386e-03, 2.464741275117819479e-03, 2.440972919207244195e-03, 2.417202124724269780e-03, 2.393428930401550470e-03, 2.369653374972624776e-03, 2.345875497172901676e-03, 2.322095335738551692e-03, 2.298312929407353433e-03, 2.274528316918239534e-03, 2.250741537010850831e-03, 2.226952628426372063e-03, 2.203161629906442032e-03, 2.179368580193986708e-03, 2.155573518032651535e-03, 2.131776482166990085e-03, 2.107977511341875988e-03, 2.084176644303367687e-03, 2.060373919797571767e-03, 2.036569376571675111e-03, 2.012763053372782635e-03, 1.988954988948800264e-03, 1.965145222047852934e-03, 1.941333791418450253e-03, 1.917520735808950260e-03, 1.893706093968360645e-03, 1.869889904645409160e-03, 1.846072206588690633e-03, 1.822253038547565337e-03, 1.798432439270377433e-03, 1.774610447505954201e-03, 1.750787102002382845e-03, 1.726962441507978252e-03, 1.703136504770177756e-03, 1.679309330536406762e-03, 1.655480957553476587e-03, 1.631651424567794788e-03, 1.607820770324766904e-03, 1.583989033569658611e-03, 1.560156253046490922e-03, 1.536322467499009027e-03, 1.512487715669450210e-03, 1.488652036300064114e-03, 1.464815468131191100e-03, 1.440978049902797266e-03, 1.417139820353337980e-03, 1.393300818220108515e-03, 1.369461082239435950e-03, 1.345620651146227061e-03, 1.321779563674164992e-03, 1.297937858555109911e-03, 1.274095574519986318e-03, 1.250252750297631624e-03, 1.226409424615812916e-03, 1.202565636200104158e-03, 1.178721423774733816e-03, 1.154876826062017177e-03, 1.131031881782538053e-03, 1.107186629654566571e-03, 1.083341108394917643e-03, 1.059495356717838135e-03, 1.035649413335861880e-03, 1.011803316959352566e-03, 9.879571062960455612e-04, 9.641108200519159233e-04, 9.402644969300459491e-04, 9.164181756316281714e-04, 8.925718948548465705e-04, 8.687256932957376472e-04, 8.448796096475955216e-04, 8.210336826011763048e-04, 7.971879508441137140e-04, 7.733424530617667020e-04, 7.494972279361131369e-04, 7.256523141467387033e-04, 7.018077503695833476e-04, 6.779635752784754239e-04, 6.541198275432002964e-04, 6.302765458310418583e-04, 6.064337688055191104e-04, 5.825915351273876393e-04, 5.587498834535151908e-04, 5.349088524377479479e-04, 5.110684807304507202e-04, 4.872288069780445320e-04, 4.633898698238756103e-04, 4.395517079070901997e-04, 4.157143598636325161e-04, 3.918778643251241700e-04, 3.680422599197274080e-04, 3.442075852715527589e-04, 3.203738790008635686e-04, 2.965411797234812608e-04, 2.727095260516528615e-04, 2.488789565929259767e-04, 2.250495099510165875e-04, 2.012212247252154228e-04, 1.773941395105917888e-04, 1.535682928975320787e-04, 1.297437234719425454e-04, 1.059204698155879522e-04, 8.209857050509683063e-05, 5.827806411283070607e-05, 3.445898920629041534e-05, 1.064138434831879679e-05, -1.317471190349207185e-05, -3.698926099593356597e-05, -6.080222438130510613e-05, -8.461356351641397650e-05, -1.084232398638325335e-04, -1.322312148903671261e-04, -1.560374500689777838e-04, -1.798419068772502715e-04, -2.036445467986490064e-04, -2.274453313215196195e-04, -2.512442219402124329e-04, -2.750411801542160467e-04, -2.988361674686159839e-04, -3.226291453945555028e-04, -3.464200754483686426e-04, -3.702089191527060041e-04, -3.939956380355300741e-04, -4.177801936312453435e-04, -4.415625474798241150e-04, -4.653426611274065006e-04, -4.891204961260917127e-04, -5.128960140345316648e-04, -5.366691764170675128e-04, -5.604399448448485520e-04, -5.842082808949663726e-04, -6.079741461510499790e-04, -6.317375022030603327e-04, -6.554983106478820022e-04, -6.792565330884586198e-04, -7.030121311347813486e-04, -7.267650664035542980e-04, -7.505153005179861399e-04, -7.742627951082608692e-04, -7.980075118113195542e-04, -8.217494122714678146e-04, -8.454884581394952331e-04, -8.692246110738078039e-04, -8.929578327395554758e-04, -9.166880848092285716e-04, -9.404153289624509219e-04, -9.641395268865770446e-04, -9.878606402758131812e-04, -1.011578630832355927e-03, -1.035293460265385547e-03, -1.059005090292181950e-03, -1.082713482637269898e-03, -1.106418599033002744e-03, -1.130120401219361853e-03, -1.153818850944418909e-03, -1.177513909964119070e-03, -1.201205540041963083e-03, -1.224893702949985666e-03, -1.248578360467890100e-03, -1.272259474383638901e-03, -1.295937006493263653e-03, -1.319610918601425318e-03, -1.343281172520587215e-03, -1.366947730072106369e-03, -1.390610553085378951e-03, -1.414269603398432898e-03, -1.437924842857721264e-03, -1.461576233318716798e-03, -1.485223736645033743e-03, -1.508867314709570577e-03, -1.532506929393490439e-03, -1.556142542587356714e-03, -1.579774116190253101e-03, -1.603401612110258272e-03, -1.627024992264893433e-03, -1.650644218580258000e-03, -1.674259252992154343e-03, -1.697870057445215663e-03, -1.721476593893498828e-03, -1.745078824300289001e-03, -1.768676710638676002e-03, -1.792270214890693018e-03, -1.815859299048450462e-03, -1.839443925113121809e-03, -1.863024055096060110e-03, -1.886599651017954260e-03, -1.910170674909396045e-03, -1.933737088810689314e-03, -1.957298854772437837e-03, -1.980855934854683364e-03, -2.004408291127877505e-03, -2.027955885672563189e-03, -2.051498680579169100e-03, -2.075036637948452466e-03, -2.098569719891306504e-03, -2.122097888529362372e-03, -2.145621105994094044e-03, -2.169139334427962369e-03, -2.192652535983539031e-03, -2.216160672824098090e-03, -2.239663707123416055e-03, -2.263161601066355187e-03, -2.286654316847996134e-03, -2.310141816674773745e-03, -2.333624062763452276e-03, -2.357101017342276388e-03, -2.380572642650067346e-03, -2.404038900936729135e-03, -2.427499754463647436e-03, -2.450955165502884722e-03, -2.474405096338233231e-03, -2.497849509264421768e-03, -2.521288366587648693e-03, -2.544721630625408886e-03, -2.568149263707050593e-03, -2.591571228172950131e-03, -2.614987486375613002e-03, -2.638398000678662120e-03, -2.661802733457974916e-03, -2.685201647100804272e-03, -2.708594704006391310e-03, -2.731981866585733373e-03, -2.755363097262182939e-03, -2.778738358470583727e-03, -2.802107612658250382e-03, -2.825470822284792405e-03, -2.848827949821205151e-03, -2.872178957751676115e-03, -2.895523808572044062e-03, -2.918862464791071448e-03, -2.942194888929422231e-03, -2.965521043520789445e-03, -2.988840891111036509e-03, -3.012154394258772724e-03, -3.035461515535156380e-03, -3.058762217524476756e-03, -3.082056462823304539e-03, -3.105344214041592076e-03, -3.128625433801674599e-03, -3.151900084739413851e-03, -3.175168129503295588e-03, -3.198429530755044978e-03, -3.221684251169407587e-03, -3.244932253434624266e-03, -3.268173500252181344e-03, -3.291407954336680527e-03, -3.314635578416208397e-03, -3.337856335232217142e-03, -3.361070187540041079e-03, -3.384277098108061377e-03, -3.407477029718839704e-03, -3.430669945168106014e-03, -3.453855807265832339e-03, -3.477034578835441325e-03, -3.500206222714370881e-03, -3.523370701753819612e-03, -3.546527978819397769e-03, -3.569678016790233006e-03, -3.592820778560094908e-03, -3.615956227036514186e-03, -3.639084325141247155e-03, -3.662205035810748872e-03, -3.685318321995286264e-03, -3.708424146660045315e-03, -3.731522472784174361e-03, -3.754613263361841844e-03, -3.777696481401425325e-03, -3.800772089926068766e-03, -3.823840051973479131e-03, -3.846900330596527903e-03, -3.869952888862376785e-03, -3.892997689853566236e-03, -3.916034696667096068e-03, -3.939063872415569066e-03, -3.962085180225742055e-03, -3.985098583240408512e-03, -4.008104044616879816e-03, -4.031101527528185673e-03, -4.054090995162183339e-03, -4.077072410722530800e-03, -4.100045737427957318e-03, -4.123010938512622521e-03, -4.145967977226614268e-03, -4.168916816835075215e-03, -4.191857420619316509e-03, -4.214789751875824657e-03, -4.237713773917341394e-03, -4.260629450072068308e-03, -4.283536743684201141e-03, -4.306435618113727687e-03, -4.329326036737029745e-03, -4.352207962945981931e-03, -4.375081360149150368e-03, -4.397946191770824714e-03, -4.420802421251663478e-03, -4.443650012048482381e-03, -4.466488927634694982e-03, -4.489319131500111443e-03, -4.512140587150610671e-03, -4.534953258109094415e-03, -4.557757107914665005e-03, -4.580552100123177865e-03, -4.603338198307055894e-03, -4.626115366055840242e-03, -4.648883566975355042e-03, -4.671642764688846254e-03, -4.694392922835915680e-03, -4.717134005073796849e-03, -4.739865975075897853e-03, -4.762588796533559488e-03, -4.785302433154680485e-03, -4.808006848664866766e-03, -4.830702006806472139e-03, -4.853387871339678167e-03, -4.876064406041706600e-03, -4.898731574707166324e-03, -4.921389341148583313e-03, -4.944037669195517661e-03, -4.966676522695634768e-03, -4.989305865513802424e-03, -5.011925661533077857e-03, -5.034535874653951401e-03, -5.057136468794859105e-03, -5.079727407892050892e-03, -5.102308655900067609e-03, -5.124880176790976016e-03, -5.147441934555437373e-03, -5.169993893201832273e-03, -5.192536016756857387e-03, -5.215068269265357194e-03, -5.237590614790814912e-03, -5.260103017414594420e-03, -5.282605441236850122e-03, -5.305097850376161786e-03, -5.327580208969467761e-03, -5.350052481172339926e-03, -5.372514631158913437e-03, -5.394966623122384591e-03, -5.417408421274187702e-03, -5.439839989845089707e-03, -5.462261293084244747e-03, -5.484672295260294844e-03, -5.507072960660071466e-03, -5.529463253590242641e-03, -5.551843138375985032e-03, -5.574212579362154002e-03, -5.596571540912263602e-03, -5.618919987409614139e-03, -5.641257883256463844e-03, -5.663585192874550159e-03, -5.685901880704954427e-03, -5.708207911208472256e-03, -5.730503248865418363e-03, -5.752787858175434019e-03, -5.775061703658211296e-03, -5.797324749852851219e-03, -5.819576961318337349e-03, -5.841818302633331947e-03, -5.864048738396773590e-03, -5.886268233227084402e-03, -5.908476751763099867e-03, -5.930674258663416569e-03, -5.952860718606791182e-03, -5.975036096292072815e-03, -5.997200356438707816e-03, -6.019353463785877614e-03, -6.041495383093622822e-03, -6.063626079141876991e-03, -6.085745516731511789e-03, -6.107853660683535552e-03, -6.129950475839481862e-03, -6.152035927061883132e-03, -6.174109979233469159e-03, -6.196172597258155050e-03, -6.218223746060274476e-03, -6.240263390585113965e-03, -6.262291495798751571e-03, -6.284308026688519185e-03, -6.306312948262338125e-03, -6.328306225549602121e-03, -6.350287823600372396e-03, -6.372257707486355185e-03, -6.394215842300081214e-03, -6.416162193155538866e-03, -6.438096725187879288e-03, -6.460019403554025270e-03, -6.481930193431825575e-03, -6.503829060021040255e-03, -6.525715968542950343e-03, -6.547590884240205196e-03, -6.569453772377218011e-03, -6.591304598240053936e-03, -6.613143327136867221e-03, -6.634969924397150949e-03, -6.656784355372779606e-03, -6.678586585437231056e-03, -6.700376579986028029e-03, -6.722154304436663529e-03, -6.743919724229077879e-03, -6.765672804824905857e-03, -6.787413511708447270e-03, -6.809141810385797855e-03, -6.830857666385831140e-03, -6.852561045259471587e-03, -6.874251912580031133e-03, -6.895930233943713995e-03, -6.917595974968704202e-03, -6.939249101296345208e-03, -6.960889578590181460e-03, -6.982517372536647081e-03, -7.004132448844736271e-03, -7.025734773246696332e-03, -7.047324311497083112e-03, -7.068901029373884232e-03, -7.090464892677564128e-03, -7.112015867232094474e-03, -7.133553918884144932e-03, -7.155079013503670357e-03, -7.176591116983680081e-03, -7.198090195240748786e-03, -7.219576214214320879e-03, -7.241049139867495460e-03, -7.262508938186926569e-03, -7.283955575181954092e-03, -7.305389016886329814e-03, -7.326809229356722949e-03, -7.348216178673902359e-03, -7.369609830941830156e-03, -7.390990152288670449e-03, -7.412357108866001777e-03, -7.433710666849338393e-03, -7.455050792437972404e-03, -7.476377451855487251e-03, -7.497690611348939785e-03, -7.518990237189967889e-03, -7.540276295673772194e-03, -7.561548753120209826e-03, -7.582807575872966936e-03, -7.604052730300105145e-03, -7.625284182793840362e-03, -7.646501899771047592e-03, -7.667705847672967763e-03, -7.688895992965074158e-03, -7.710072302137508694e-03, -7.731234741704801766e-03, -7.752383278206534042e-03, -7.773517878206429206e-03, -7.794638508293439891e-03, -7.815745135080817002e-03, -7.836837725207128000e-03, -7.857916245335492753e-03, -7.878980662154019821e-03, -7.900030942375744006e-03, -7.921067052739056563e-03, -7.942088960007033863e-03, -7.963096630968335976e-03, -7.984090032436453807e-03, -8.005069131250128894e-03, -8.026033894273809643e-03, -8.046984288396757945e-03, -8.067920280534197561e-03, -8.088841837626245534e-03, -8.109748926639069252e-03, -8.130641514564050307e-03, -8.151519568418237258e-03, -8.172383055244298797e-03, -8.193231942110957428e-03, -8.214066196112245269e-03, -8.234885784368411316e-03, -8.255690674025206732e-03, -8.276480832254767828e-03, -8.297256226254762571e-03, -8.318016823249119174e-03, -8.338762590487661802e-03, -8.359493495246722930e-03, -8.380209504828338429e-03, -8.400910586561272791e-03, -8.421596707800165643e-03, -8.442267835926055633e-03, -8.462923938346704825e-03, -8.483564982495849296e-03, -8.504190935834135892e-03, -8.524801765848376289e-03, -8.545397440052325891e-03, -8.565977925986128713e-03, -8.586543191216725046e-03, -8.607093203337639817e-03, -8.627627929969582804e-03, -8.648147338759605562e-03, -8.668651397382190829e-03, -8.689140073538371284e-03, -8.709613334956272518e-03, -8.730071149391029767e-03, -8.750513484625020363e-03, -8.770940308467829044e-03, -8.791351588755885391e-03, -8.811747293353331192e-03, -8.832127390151260637e-03, -8.852491847068249403e-03, -8.872840632050104856e-03, -8.893173713070520042e-03, -8.913491058130156020e-03, -8.933792635257708711e-03, -8.954078412509064097e-03, -8.974348357968224554e-03, -8.994602439746235065e-03, -9.014840625982565789e-03, -9.035062884844013986e-03, -9.055269184525644235e-03, -9.075459493249936685e-03, -9.095633779267814009e-03, -9.115792010857888539e-03, -9.135934156326755429e-03, -9.156060184009513075e-03, -9.176170062268928715e-03, -9.196263759496387316e-03, -9.216341244111147385e-03, -9.236402484561175366e-03, -9.256447449322437876e-03, -9.276476106899420385e-03, -9.296488425824965887e-03, -9.316484374660699910e-03, -9.336463921996381726e-03, -9.356427036450835899e-03, -9.376373686671107474e-03, -9.396303841333143725e-03, -9.416217469141459351e-03, -9.436114538829705467e-03, -9.455995019159973980e-03, -9.475858878923491477e-03, -9.495706086940464835e-03, -9.515536612059909485e-03, -9.535350423159881864e-03, -9.555147489147521045e-03, -9.574927778959348851e-03, -9.594691261560640144e-03, -9.614437905946368254e-03, -9.634167681140320266e-03, -9.653880556196163878e-03, -9.673576500196149827e-03, -9.693255482252754671e-03, -9.712917471507350256e-03, -9.732562437131270575e-03, -9.752190348324968686e-03, -9.771801174318972549e-03, -9.791394884373100932e-03, -9.810971447777044538e-03, -9.830530833850076311e-03, -9.850073011941573586e-03, -9.869597951430674615e-03, -9.889105621726205705e-03, -9.908595992267255417e-03, -9.928069032522652410e-03, -9.947524711991367896e-03, -9.966963000202336970e-03, -9.986383866714984223e-03, -1.000578728111846741e-02, -1.002517321303260378e-02, -1.004454163210719703e-02, -1.006389250802247268e-02, -1.008322581048889249e-02, -1.010254150924770264e-02, -1.012183957407019642e-02, -1.014111997475854697e-02, -1.016038268114513241e-02, -1.017962766309336506e-02, -1.019885489049692298e-02, -1.021806433328027557e-02, -1.023725596139892120e-02, -1.025642974483871768e-02, -1.027558565361680679e-02, -1.029472365778078338e-02, -1.031384372740977960e-02, -1.033294583261303197e-02, -1.035202994353172194e-02, -1.037109603033739731e-02, -1.039014406323329753e-02, -1.040917401245333197e-02, -1.042818584826308952e-02, -1.044717954095907009e-02, -1.046615506086917557e-02, -1.048511237835263524e-02, -1.050405146380027979e-02, -1.052297228763407651e-02, -1.054187482030771207e-02, -1.056075903230649198e-02, -1.057962489414701092e-02, -1.059847237637765588e-02, -1.061730144957839621e-02, -1.063611208436117395e-02, -1.065490425136930361e-02, -1.067367792127837771e-02, -1.069243306479546358e-02, -1.071116965265971749e-02, -1.072988765564202897e-02, -1.074858704454570608e-02, -1.076726779020558723e-02, -1.078592986348908718e-02, -1.080457323529529674e-02, -1.082319787655586923e-02, -1.084180375823445321e-02, -1.086039085132687460e-02, -1.087895912686159643e-02, -1.089750855589907870e-02, -1.091603910953252259e-02, -1.093455075888732572e-02, -1.095304347512141528e-02, -1.097151722942519593e-02, -1.098997199302195922e-02, -1.100840773716716715e-02, -1.102682443314943750e-02, -1.104522205228956194e-02, -1.106360056594164580e-02, -1.108195994549219209e-02, -1.110030016236066702e-02, -1.111862118799934913e-02, -1.113692299389374210e-02, -1.115520555156190863e-02, -1.117346883255524587e-02, -1.119171280845823388e-02, -1.120993745088825176e-02, -1.122814273149590723e-02, -1.124632862196489440e-02, -1.126449509401256620e-02, -1.128264211938898552e-02, -1.130076966987808400e-02, -1.131887771729678076e-02, -1.133696623349557051e-02, -1.135503519035825810e-02, -1.137308455980246338e-02, -1.139111431377898449e-02, -1.140912442427258720e-02, -1.142711486330122428e-02, -1.144508560291701560e-02, -1.146303661520542243e-02, -1.148096787228581814e-02, -1.149887934631126270e-02, -1.151677100946883400e-02, -1.153464283397955849e-02, -1.155249479209814918e-02, -1.157032685611342551e-02, -1.158813899834811902e-02, -1.160593119115928620e-02, -1.162370340693774477e-02, -1.164145561810885597e-02, -1.165918779713173876e-02, -1.167689991650013373e-02, -1.169459194874180631e-02, -1.171226386641888682e-02, -1.172991564212784096e-02, -1.174754724849972308e-02, -1.176515865819974596e-02, -1.178274984392794003e-02, -1.180032077841853752e-02, -1.181787143444044952e-02, -1.183540178479737179e-02, -1.185291180232741701e-02, -1.187040145990357794e-02, -1.188787073043334579e-02, -1.190531958685935379e-02, -1.192274800215874751e-02, -1.194015594934361331e-02, -1.195754340146087426e-02, -1.197491033159268047e-02, -1.199225671285578977e-02, -1.200958251840234317e-02, -1.202688772141920909e-02, -1.204417229512875186e-02, -1.206143621278813263e-02, -1.207867944768987144e-02, -1.209590197316160430e-02, -1.211310376256650133e-02, -1.213028478930274281e-02, -1.214744502680416283e-02, -1.216458444853973399e-02, -1.218170302801393004e-02, -1.219880073876687329e-02, -1.221587755437392002e-02, -1.223293344844630752e-02, -1.224996839463054696e-02, -1.226698236660911379e-02, -1.228397533809996896e-02, -1.230094728285677057e-02, -1.231789817466895538e-02, -1.233482798736194180e-02, -1.235173669479671874e-02, -1.236862427087044233e-02, -1.238549068951599191e-02, -1.240233592470222149e-02, -1.241915995043398578e-02, -1.243596274075227208e-02, -1.245274426973424706e-02, -1.246950451149280228e-02, -1.248624344017749965e-02, -1.250296102997371615e-02, -1.251965725510319379e-02, -1.253633208982389731e-02, -1.255298550843032129e-02, -1.256961748525303388e-02, -1.258622799465930128e-02, -1.260281701105252228e-02, -1.261938450887284749e-02, -1.263593046259675265e-02, -1.265245484673730575e-02, -1.266895763584414275e-02, -1.268543880450376075e-02, -1.270189832733892125e-02, -1.271833617900954699e-02, -1.273475233421200552e-02, -1.275114676767942490e-02, -1.276751945418207711e-02, -1.278387036852666678e-02, -1.280019948555723847e-02, -1.281650678015439256e-02, -1.283279222723606762e-02, -1.284905580175696796e-02, -1.286529747870889320e-02, -1.288151723312070188e-02, -1.289771504005864620e-02, -1.291389087462572853e-02, -1.293004471196263980e-02, -1.294617652724692689e-02, -1.296228629569360670e-02, -1.297837399255489556e-02, -1.299443959312060644e-02, -1.301048307271759560e-02, -1.302650440671047558e-02, -1.304250357050131676e-02, -1.305848053952952600e-02, -1.307443528927207735e-02, -1.309036779524352066e-02, -1.310627803299630259e-02, -1.312216597812011082e-02, -1.313803160624271195e-02, -1.315387489302926281e-02, -1.316969581418316049e-02, -1.318549434544496329e-02, -1.320127046259365888e-02, -1.321702414144572402e-02, -1.323275535785589478e-02, -1.324846408771652821e-02, -1.326415030695832394e-02, -1.327981399154966845e-02, -1.329545511749723533e-02, -1.331107366084559838e-02, -1.332666959767769485e-02, -1.334224290411466576e-02, -1.335779355631553852e-02, -1.337332153047797456e-02, -1.338882680283767432e-02, -1.340430934966869991e-02, -1.341976914728340575e-02, -1.343520617203279068e-02, -1.345062040030597060e-02, -1.346601180853081170e-02, -1.348138037317349498e-02, -1.349672607073873487e-02, -1.351204887776978787e-02, -1.352734877084874401e-02, -1.354262572659607408e-02, -1.355787972167113789e-02, -1.357311073277177316e-02, -1.358831873663482112e-02, -1.360350371003578654e-02, -1.361866562978882034e-02, -1.363380447274729033e-02, -1.364892021580309603e-02, -1.366401283588739198e-02, -1.367908230996990257e-02, -1.369412861505989523e-02, -1.370915172820500252e-02, -1.372415162649241391e-02, -1.373912828704815584e-02, -1.375408168703766074e-02, -1.376901180366515640e-02, -1.378391861417445526e-02, -1.379880209584832124e-02, -1.381366222600889822e-02, -1.382849898201752095e-02, -1.384331234127517476e-02, -1.385810228122181555e-02, -1.387286877933710180e-02, -1.388761181314004944e-02, -1.390233136018912199e-02, -1.391702739808226008e-02, -1.393169990445687623e-02, -1.394634885699030762e-02, -1.396097423339905108e-02, -1.397557601143963046e-02, -1.399015416890795997e-02, -1.400470868363982990e-02, -1.401923953351060480e-02, -1.403374669643573866e-02, -1.404823015037011229e-02, -1.406268987330881043e-02, -1.407712584328645912e-02, -1.409153803837793865e-02, -1.410592643669777123e-02, -1.412029101640055288e-02, -1.413463175568105759e-02, -1.414894863277372378e-02, -1.416324162595353729e-02, -1.417751071353524212e-02, -1.419175587387386597e-02, -1.420597708536442891e-02, -1.422017432644249318e-02, -1.423434757558350756e-02, -1.424849681130345609e-02, -1.426262201215845737e-02, -1.427672315674508724e-02, -1.429080022370015669e-02, -1.430485319170097733e-02, -1.431888203946515142e-02, -1.433288674575102471e-02, -1.434686728935704973e-02, -1.436082364912253176e-02, -1.437475580392731135e-02, -1.438866373269158914e-02, -1.440254741437635780e-02, -1.441640682798310015e-02, -1.443024195255434433e-02, -1.444405276717283977e-02, -1.445783925096256160e-02, -1.447160138308794738e-02, -1.448533914275432558e-02, -1.449905250920780798e-02, -1.451274146173554824e-02, -1.452640597966542955e-02, -1.454004604236641338e-02, -1.455366162924823063e-02, -1.456725271976188826e-02, -1.458081929339915921e-02, -1.459436132969293282e-02, -1.460787880821719752e-02, -1.462137170858711886e-02, -1.463484001045907597e-02, -1.464828369353045855e-02, -1.466170273753987334e-02, -1.467509712226719790e-02, -1.468846682753369333e-02, -1.470181183320173716e-02, -1.471513211917526050e-02, -1.472842766539925533e-02, -1.474169845186042681e-02, -1.475494445858661734e-02, -1.476816566564729226e-02, -1.478136205315325365e-02, -1.479453360125699592e-02, -1.480768029015238144e-02, -1.482080210007501349e-02, -1.483389901130180606e-02, -1.484697100415171243e-02, -1.486001805898492720e-02, -1.487304015620354893e-02, -1.488603727625140843e-02, -1.489900939961390919e-02, -1.491195650681847833e-02, -1.492487857843413125e-02, -1.493777559507175785e-02, -1.495064753738405659e-02, -1.496349438606585022e-02, -1.497631612185358271e-02, -1.498911272552586917e-02, -1.500188417790306213e-02, -1.501463045984780496e-02, -1.502735155226453574e-02, -1.504004743609984630e-02, -1.505271809234228278e-02, -1.506536350202279662e-02, -1.507798364621411313e-02, -1.509057850603151736e-02, -1.510314806263218096e-02, -1.511569229721555774e-02, -1.512821119102351897e-02, -1.514070472533996826e-02, -1.515317288149142620e-02, -1.516561564084637631e-02, -1.517803298481610122e-02, -1.519042489485388815e-02, -1.520279135245558751e-02, -1.521513233915950183e-02, -1.522744783654650727e-02, -1.523973782623973955e-02, -1.525200228990514217e-02, -1.526424120925101886e-02, -1.527645456602829896e-02, -1.528864234203043682e-02, -1.530080451909374140e-02, -1.531294107909707269e-02, -1.532505200396188337e-02, -1.533713727565247896e-02, -1.534919687617583399e-02, -1.536123078758172208e-02, -1.537323899196258933e-02, -1.538522147145396021e-02, -1.539717820823392411e-02, -1.540910918452370257e-02, -1.542101438258716706e-02, -1.543289378473137151e-02, -1.544474737330607007e-02, -1.545657513070416988e-02, -1.546837703936143442e-02, -1.548015308175687207e-02, -1.549190324041234065e-02, -1.550362749789287002e-02, -1.551532583680658925e-02, -1.552699823980470233e-02, -1.553864468958167724e-02, -1.555026516887504130e-02, -1.556185966046571591e-02, -1.557342814717752738e-02, -1.558497061187799800e-02, -1.559648703747756188e-02, -1.560797740693008369e-02, -1.561944170323275281e-02, -1.563087990942626723e-02, -1.564229200859440505e-02, -1.565367798386466114e-02, -1.566503781840778223e-02, -1.567637149543802538e-02, -1.568767899821299841e-02, -1.569896031003405884e-02, -1.571021541424583515e-02, -1.572144429423675410e-02, -1.573264693343869383e-02, -1.574382331532716769e-02, -1.575497342342118204e-02, -1.576609724128353457e-02, -1.577719475252068598e-02, -1.578826594078276691e-02, -1.579931078976366809e-02, -1.581032928320085656e-02, -1.582132140487587865e-02, -1.583228713861379450e-02, -1.584322646828358050e-02, -1.585413937779802176e-02, -1.586502585111386476e-02, -1.587588587223159875e-02, -1.588671942519576802e-02, -1.589752649409474985e-02, -1.590830706306085515e-02, -1.591906111627039086e-02, -1.592978863794373978e-02, -1.594048961234532588e-02, -1.595116402378341652e-02, -1.596181185661058738e-02, -1.597243309522335120e-02, -1.598302772406240760e-02, -1.599359572761245574e-02, -1.600413709040263491e-02, -1.601465179700593822e-02, -1.602513983203985790e-02, -1.603560118016589958e-02, -1.604603582608988416e-02, -1.605644375456181591e-02, -1.606682495037626418e-02, -1.607717939837173191e-02, -1.608750708343145708e-02, -1.609780799048262517e-02, -1.610808210449719835e-02, -1.611832941049119033e-02, -1.612854989352519725e-02, -1.613874353870429004e-02, -1.614891033117796248e-02, -1.615905025614022480e-02, -1.616916329882945799e-02, -1.617924944452888217e-02, -1.618930867856576208e-02, -1.619934098631243061e-02, -1.620934635318549075e-02, -1.621932476464640893e-02, -1.622927620620101541e-02, -1.623920066340002466e-02, -1.624909812183866070e-02, -1.625896856715696934e-02, -1.626881198503954407e-02, -1.627862836121583140e-02, -1.628841768146015168e-02, -1.629817993159129313e-02, -1.630791509747314683e-02, -1.631762316501423823e-02, -1.632730412016795973e-02, -1.633695794893253936e-02, -1.634658463735116224e-02, -1.635618417151182835e-02, -1.636575653754753640e-02, -1.637530172163615544e-02, -1.638481971000049428e-02, -1.639431048890829454e-02, -1.640377404467253941e-02, -1.641321036365084307e-02, -1.642261943224618617e-02, -1.643200123690639891e-02, -1.644135576412447328e-02, -1.645068300043847284e-02, -1.645998293243153276e-02, -1.646925554673195347e-02, -1.647850083001316940e-02, -1.648771876899381497e-02, -1.649690935043756149e-02, -1.650607256115359939e-02, -1.651520838799585417e-02, -1.652431681786402373e-02, -1.653339783770264859e-02, -1.654245143450176758e-02, -1.655147759529662296e-02, -1.656047630716785818e-02, -1.656944755724135132e-02, -1.657839133268827758e-02, -1.658730762072535558e-02, -1.659619640861456982e-02, -1.660505768366331986e-02, -1.661389143322438908e-02, -1.662269764469618757e-02, -1.663147630552228723e-02, -1.664022740319200111e-02, -1.664895092523983183e-02, -1.665764685924616198e-02, -1.666631519283653246e-02, -1.667495591368239188e-02, -1.668356900950038191e-02, -1.669215446805295128e-02, -1.670071227714806789e-02, -1.670924242463934367e-02, -1.671774489842590972e-02, -1.672621968645276319e-02, -1.673466677671022959e-02, -1.674308615723468438e-02, -1.675147781610796666e-02, -1.675984174145762548e-02, -1.676817792145690600e-02, -1.677648634432498884e-02, -1.678476699832667091e-02, -1.679301987177253194e-02, -1.680124495301895532e-02, -1.680944223046807948e-02, -1.681761169256798527e-02, -1.682575332781247740e-02, -1.683386712474124053e-02, -1.684195307193986010e-02, -1.685001115803981542e-02, -1.685804137171847267e-02, -1.686604370169905373e-02, -1.687401813675074025e-02, -1.688196466568874649e-02, -1.688988327737412504e-02, -1.689777396071403398e-02, -1.690563670466144544e-02, -1.691347149821556192e-02, -1.692127833042143814e-02, -1.692905719037012674e-02, -1.693680806719898013e-02, -1.694453095009116825e-02, -1.695222582827608793e-02, -1.695989269102914088e-02, -1.696753152767191755e-02, -1.697514232757193695e-02, -1.698272508014321558e-02, -1.699027977484561872e-02, -1.699780640118528710e-02, -1.700530494871449472e-02, -1.701277540703185001e-02, -1.702021776578200099e-02, -1.702763201465590931e-02, -1.703501814339069068e-02, -1.704237614176989934e-02, -1.704970599962307015e-02, -1.705700770682629444e-02, -1.706428125330186618e-02, -1.707152662901821605e-02, -1.707874382399030347e-02, -1.708593282827930437e-02, -1.709309363199290263e-02, -1.710022622528485636e-02, -1.710733059835556347e-02, -1.711440674145167998e-02, -1.712145464486621721e-02, -1.712847429893869788e-02, -1.713546569405503817e-02, -1.714242882064759624e-02, -1.714936366919507515e-02, -1.715627023022275530e-02, -1.716314849430243539e-02, -1.716999845205217576e-02, -1.717682009413674937e-02, -1.718361341126736080e-02, -1.719037839420176073e-02, -1.719711503374417652e-02, -1.720382332074545800e-02, -1.721050324610295598e-02, -1.721715480076051880e-02, -1.722377797570880109e-02, -1.723037276198481280e-02, -1.723693915067232504e-02, -1.724347713290158568e-02, -1.724998669984971131e-02, -1.725646784274012871e-02, -1.726292055284316118e-02, -1.726934482147570588e-02, -1.727574064000132401e-02, -1.728210799983029289e-02, -1.728844689241956084e-02, -1.729475730927281657e-02, -1.730103924194039550e-02, -1.730729268201941159e-02, -1.731351762115368453e-02, -1.731971405103388886e-02, -1.732588196339724870e-02, -1.733202135002801653e-02, -1.733813220275701866e-02, -1.734421451346190163e-02, -1.735026827406719804e-02, -1.735629347654418439e-02, -1.736229011291100591e-02, -1.736825817523261414e-02, -1.737419765562075655e-02, -1.738010854623412565e-02, -1.738599083927810235e-02, -1.739184452700519995e-02, -1.739766960171457849e-02, -1.740346605575237085e-02, -1.740923388151164458e-02, -1.741497307143232559e-02, -1.742068361800127793e-02, -1.742636551375225523e-02, -1.743201875126597702e-02, -1.743764332317013915e-02, -1.744323922213934785e-02, -1.744880644089516486e-02, -1.745434497220612821e-02, -1.745985480888778349e-02, -1.746533594380265259e-02, -1.747078836986021635e-02, -1.747621208001703952e-02, -1.748160706727660066e-02, -1.748697332468952814e-02, -1.749231084535336767e-02, -1.749761962241273838e-02, -1.750289964905929821e-02, -1.750815091853174035e-02, -1.751337342411597026e-02, -1.751856715914478987e-02, -1.752373211699815442e-02, -1.752886829110307174e-02, -1.753397567493367171e-02, -1.753905426201115073e-02, -1.754410404590388273e-02, -1.754912502022730469e-02, -1.755411717864401380e-02, -1.755908051486370844e-02, -1.756401502264323330e-02, -1.756892069578649962e-02, -1.757379752814478349e-02, -1.757864551361631306e-02, -1.758346464614662583e-02, -1.758825491972831889e-02, -1.759301632840124668e-02, -1.759774886625242382e-02, -1.760245252741599389e-02, -1.760712730607350007e-02, -1.761177319645343756e-02, -1.761639019283172888e-02, -1.762097828953135270e-02, -1.762553748092269418e-02, -1.763006776142317031e-02, -1.763456912549757338e-02, -1.763904156765784548e-02, -1.764348508246332478e-02, -1.764789966452039865e-02, -1.765228530848292690e-02, -1.765664200905190176e-02, -1.766096976097565954e-02, -1.766526855904970369e-02, -1.766953839811697541e-02, -1.767377927306762117e-02, -1.767799117883905174e-02, -1.768217411041610870e-02, -1.768632806283075912e-02, -1.769045303116242168e-02, -1.769454901053775508e-02, -1.769861599613080025e-02, -1.770265398316282074e-02, -1.770666296690256991e-02, -1.771064294266596825e-02, -1.771459390581640869e-02, -1.771851585176449639e-02, -1.772240877596833325e-02, -1.772627267393322298e-02, -1.773010754121201113e-02, -1.773391337340466875e-02, -1.773769016615875035e-02, -1.774143791516912677e-02, -1.774515661617787413e-02, -1.774884626497471446e-02, -1.775250685739649531e-02, -1.775613838932766850e-02, -1.775974085669985991e-02, -1.776331425549235524e-02, -1.776685858173157953e-02, -1.777037383149150662e-02, -1.777386000089339890e-02, -1.777731708610610570e-02, -1.778074508334569898e-02, -1.778414398887575784e-02, -1.778751379900725405e-02, -1.779085451009862484e-02, -1.779416611855563768e-02, -1.779744862083152551e-02, -1.780070201342700761e-02, -1.780392629289013692e-02, -1.780712145581648739e-02, -1.781028749884904991e-02, -1.781342441867815943e-02, -1.781653221204167539e-02, -1.781961087572492622e-02, -1.782266040656056011e-02, -1.782568080142890241e-02, -1.782867205725745599e-02, -1.783163417102135578e-02, -1.783456713974306343e-02, -1.783747096049267955e-02, -1.784034563038755863e-02, -1.784319114659263517e-02, -1.784600750632025362e-02, -1.784879470683026909e-02, -1.785155274542993276e-02, -1.785428161947402378e-02, -1.785698132636472785e-02, -1.785965186355170653e-02, -1.786229322853214938e-02, -1.786490541885070102e-02, -1.786748843209940915e-02, -1.787004226591781819e-02, -1.787256691799298317e-02, -1.787506238605938644e-02, -1.787752866789905914e-02, -1.787996576134137650e-02, -1.788237366426330757e-02, -1.788475237458927655e-02, -1.788710189029110720e-02, -1.788942220938814429e-02, -1.789171332994727442e-02, -1.789397525008273870e-02, -1.789620796795636168e-02, -1.789841148177738483e-02, -1.790058578980251169e-02, -1.790273089033594597e-02, -1.790484678172943669e-02, -1.790693346238206307e-02, -1.790899093074051554e-02, -1.791101918529883902e-02, -1.791301822459865842e-02, -1.791498804722903640e-02, -1.791692865182650113e-02, -1.791884003707499076e-02, -1.792072220170603386e-02, -1.792257514449855163e-02, -1.792439886427894466e-02, -1.792619335992108251e-02, -1.792795863034634882e-02, -1.792969467452353374e-02, -1.793140149146888254e-02, -1.793307908024616149e-02, -1.793472743996652602e-02, -1.793634656978871159e-02, -1.793793646891876647e-02, -1.793949713661026693e-02, -1.794102857216430674e-02, -1.794253077492930296e-02, -1.794400374430121445e-02, -1.794544747972344131e-02, -1.794686198068673813e-02, -1.794824724672942906e-02, -1.794960327743730377e-02, -1.795093007244338498e-02, -1.795222763142835173e-02, -1.795349595412018551e-02, -1.795473504029440961e-02, -1.795594488977385675e-02, -1.795712550242889796e-02, -1.795827687817726226e-02, -1.795939901698411986e-02, -1.796049191886207874e-02, -1.796155558387107706e-02, -1.796259001211861911e-02, -1.796359520375947691e-02, -1.796457115899591922e-02, -1.796551787807757969e-02, -1.796643536130148114e-02, -1.796732360901208067e-02, -1.796818262160122109e-02, -1.796901239950805459e-02, -1.796981294321925438e-02, -1.797058425326878914e-02, -1.797132633023802023e-02, -1.797203917475568430e-02, -1.797272278749790717e-02, -1.797337716918816219e-02, -1.797400232059729805e-02, -1.797459824254347277e-02, -1.797516493589225786e-02, -1.797570240155661400e-02, -1.797621064049671757e-02, -1.797668965372016536e-02, -1.797713944228189475e-02, -1.797756000728419762e-02, -1.797795134987657112e-02, -1.797831347125598139e-02, -1.797864637266663457e-02, -1.797895005540006697e-02, -1.797922452079511388e-02, -1.797946977023788528e-02, -1.797968580516184217e-02, -1.797987262704768899e-02, -1.798003023742349507e-02, -1.798015863786453505e-02, -1.798025782999333744e-02, -1.798032781547977133e-02, -1.798036859604091806e-02, -1.798038017344117528e-02, -1.798036254949211474e-02, -1.798031572605258629e-02, -1.798023970502872146e-02, -1.798013448837384662e-02, -1.798000007808849346e-02, -1.797983647622046835e-02, -1.797964368486478989e-02, -1.797942170616364035e-02, -1.797917054230639342e-02, -1.797889019552970091e-02, -1.797858066811731589e-02, -1.797824196240029385e-02, -1.797787408075673249e-02, -1.797747702561194524e-02, -1.797705079943839532e-02, -1.797659540475580672e-02, -1.797611084413092836e-02, -1.797559712017771441e-02, -1.797505423555715090e-02, -1.797448219297754016e-02, -1.797388099519410878e-02, -1.797325064500935460e-02, -1.797259114527277254e-02, -1.797190249888094490e-02, -1.797118470877767660e-02, -1.797043777795371416e-02, -1.796966170944691230e-02, -1.796885650634228240e-02, -1.796802217177175670e-02, -1.796715870891441025e-02, -1.796626612099631870e-02, -1.796534441129066587e-02, -1.796439358311754594e-02, -1.796341363984407455e-02, -1.796240458488452749e-02, -1.796136642170010483e-02, -1.796029915379884420e-02, -1.795920278473598503e-02, -1.795807731811367366e-02, -1.795692275758097034e-02, -1.795573910683390464e-02, -1.795452636961551371e-02, -1.795328454971575893e-02, -1.795201365097143578e-02, -1.795071367726637848e-02, -1.794938463253128308e-02, -1.794802652074376295e-02, -1.794663934592830370e-02, -1.794522311215624930e-02, -1.794377782354595816e-02, -1.794230348426248747e-02, -1.794080009851775973e-02, -1.793926767057066676e-02, -1.793770620472684429e-02, -1.793611570533872740e-02, -1.793449617680567196e-02, -1.793284762357377424e-02, -1.793117005013589865e-02, -1.792946346103173327e-02, -1.792772786084778289e-02, -1.792596325421715042e-02, -1.792416964581994288e-02, -1.792234704038279253e-02, -1.792049544267916919e-02, -1.791861485752924837e-02, -1.791670528979994251e-02, -1.791476674440476563e-02, -1.791279922630403115e-02, -1.791080274050469920e-02, -1.790877729206040436e-02, -1.790672288607138632e-02, -1.790463952768456962e-02, -1.790252722209353595e-02, -1.790038597453841654e-02, -1.789821579030606569e-02, -1.789601667472986296e-02, -1.789378863318970628e-02, -1.789153167111225823e-02, -1.788924579397055056e-02, -1.788693100728436583e-02, -1.788458731661978288e-02, -1.788221472758962094e-02, -1.787981324585317250e-02, -1.787738287711618593e-02, -1.787492362713088978e-02, -1.787243550169602402e-02, -1.786991850665684348e-02, -1.786737264790494786e-02, -1.786479793137852462e-02, -1.786219436306211994e-02, -1.785956194898659713e-02, -1.785690069522939682e-02, -1.785421060791431494e-02, -1.785149169321139165e-02, -1.784874395733720975e-02, -1.784596740655463101e-02, -1.784316204717284471e-02, -1.784032788554736765e-02, -1.783746492808007886e-02, -1.783457318121912591e-02, -1.783165265145896308e-02, -1.782870334534024034e-02, -1.782572526945000457e-02, -1.782271843042141160e-02, -1.781968283493405233e-02, -1.781661848971344622e-02, -1.781352540153161371e-02, -1.781040357720655581e-02, -1.780725302360254558e-02, -1.780407374763003786e-02, -1.780086575624561726e-02, -1.779762905645198082e-02, -1.779436365529792410e-02, -1.779106955987846267e-02, -1.778774677733459611e-02, -1.778439531485344685e-02, -1.778101517966819423e-02, -1.777760637905810223e-02, -1.777416892034843973e-02, -1.777070281091049780e-02, -1.776720805816152729e-02, -1.776368466956490533e-02, -1.776013265262982657e-02, -1.775655201491149401e-02, -1.775294276401123347e-02, -1.774930490757600093e-02, -1.774563845329886827e-02, -1.774194340891875957e-02, -1.773821978222048235e-02, -1.773446758103470675e-02, -1.773068681323802798e-02, -1.772687748675269570e-02, -1.772303960954703037e-02, -1.771917318963491667e-02, -1.771527823507623722e-02, -1.771135475397649442e-02, -1.770740275448703938e-02, -1.770342224480497134e-02, -1.769941323317304055e-02, -1.769537572787976965e-02, -1.769130973725940859e-02, -1.768721526969173688e-02, -1.768309233360235849e-02, -1.767894093746243123e-02, -1.767476108978883326e-02, -1.767055279914391680e-02, -1.766631607413576832e-02, -1.766205092341797608e-02, -1.765775735568966137e-02, -1.765343537969552359e-02, -1.764908500422585416e-02, -1.764470623811641159e-02, -1.764029909024833823e-02, -1.763586356954847598e-02, -1.763139968498889446e-02, -1.762690744558728997e-02, -1.762238686040660043e-02, -1.761783793855539043e-02, -1.761326068918746962e-02, -1.760865512150195517e-02, -1.760402124474350766e-02, -1.759935906820196336e-02, -1.759466860121255624e-02, -1.758994985315581044e-02, -1.758520283345750210e-02, -1.758042755158874607e-02, -1.757562401706576002e-02, -1.757079223945016283e-02, -1.756593222834866574e-02, -1.756104399341314876e-02, -1.755612754434075079e-02, -1.755118289087374828e-02, -1.754621004279955515e-02, -1.754120900995061530e-02, -1.753617980220466277e-02, -1.753112242948417013e-02, -1.752603690175703541e-02, -1.752092322903609639e-02, -1.751578142137904734e-02, -1.751061148888871655e-02, -1.750541344171291022e-02, -1.750018729004447146e-02, -1.749493304412094372e-02, -1.748965071422507733e-02, -1.748434031068436464e-02, -1.747900184387130018e-02, -1.747363532420303373e-02, -1.746824076214183175e-02, -1.746281816819461249e-02, -1.745736755291314377e-02, -1.745188892689397697e-02, -1.744638230077848531e-02, -1.744084768525267642e-02, -1.743528509104743177e-02, -1.742969452893824989e-02, -1.742407600974525683e-02, -1.741842954433336921e-02, -1.741275514361211030e-02, -1.740705281853564823e-02, -1.740132258010265373e-02, -1.739556443935652216e-02, -1.738977840738512026e-02, -1.738396449532086940e-02, -1.737812271434071437e-02, -1.737225307566618929e-02, -1.736635559056316433e-02, -1.736043027034214065e-02, -1.735447712635785136e-02, -1.734849617000961894e-02, -1.734248741274103944e-02, -1.733645086604021501e-02, -1.733038654143945548e-02, -1.732429445051562877e-02, -1.731817460488962318e-02, -1.731202701622677059e-02, -1.730585169623669387e-02, -1.729964865667316803e-02, -1.729341790933431808e-02, -1.728715946606231707e-02, -1.728087333874372272e-02, -1.727455953930896043e-02, -1.726821807973294778e-02, -1.726184897203437638e-02, -1.725545222827630856e-02, -1.724902786056558765e-02, -1.724257588105344505e-02, -1.723609630193481679e-02, -1.722958913544889864e-02, -1.722305439387860487e-02, -1.721649208955109908e-02, -1.720990223483720438e-02, -1.720328484215185444e-02, -1.719663992395382285e-02, -1.718996749274562252e-02, -1.718326756107377978e-02, -1.717654014152856373e-02, -1.716978524674403483e-02, -1.716300288939800328e-02, -1.715619308221209144e-02, -1.714935583795163324e-02, -1.714249116942571233e-02, -1.713559908948691229e-02, -1.712867961103164624e-02, -1.712173274699990005e-02, -1.711475851037527404e-02, -1.710775691418492048e-02, -1.710072797149966850e-02, -1.709367169543377432e-02, -1.708658809914494203e-02, -1.707947719583462892e-02, -1.707233899874737587e-02, -1.706517352117147696e-02, -1.705798077643858046e-02, -1.705076077792367500e-02, -1.704351353904506872e-02, -1.703623907326456272e-02, -1.702893739408707294e-02, -1.702160851506096667e-02, -1.701425244977789256e-02, -1.700686921187266609e-02, -1.699945881502330433e-02, -1.699202127295115425e-02, -1.698455659942053886e-02, -1.697706480823909028e-02, -1.696954591325744444e-02, -1.696199992836945961e-02, -1.695442686751195624e-02, -1.694682674466482450e-02, -1.693919957385103467e-02, -1.693154536913643246e-02, -1.692386414462997146e-02, -1.691615591448340436e-02, -1.690842069289151886e-02, -1.690065849409192258e-02, -1.689286933236520960e-02, -1.688505322203461001e-02, -1.687721017746635424e-02, -1.686934021306933651e-02, -1.686144334329523278e-02, -1.685351958263860486e-02, -1.684556894563656732e-02, -1.683759144686887421e-02, -1.682958710095810648e-02, -1.682155592256938392e-02, -1.681349792641035484e-02, -1.680541312723140765e-02, -1.679730153982535168e-02, -1.678916317902764618e-02, -1.678099805971609848e-02, -1.677280619681116233e-02, -1.676458760527551120e-02, -1.675634230011443723e-02, -1.674807029637552860e-02, -1.673977160914881870e-02, -1.673144625356654674e-02, -1.672309424480339368e-02, -1.671471559807617344e-02, -1.670631032864414514e-02, -1.669787845180857599e-02, -1.668941998291315759e-02, -1.668093493734362082e-02, -1.667242333052790931e-02, -1.666388517793597479e-02, -1.665532049507991580e-02, -1.664672929751400549e-02, -1.663811160083428220e-02, -1.662946742067918093e-02, -1.662079677272873188e-02, -1.661209967270519186e-02, -1.660337613637253087e-02, -1.659462617953678595e-02, -1.658584981804569342e-02, -1.657704706778898376e-02, -1.656821794469812495e-02, -1.655936246474645421e-02, -1.655048064394879295e-02, -1.654157249836207474e-02, -1.653263804408455079e-02, -1.652367729725643525e-02, -1.651469027405938136e-02, -1.650567699071680064e-02, -1.649663746349360610e-02, -1.648757170869620883e-02, -1.647847974267267410e-02, -1.646936158181244031e-02, -1.646021724254643007e-02, -1.645104674134709871e-02, -1.644185009472828515e-02, -1.643262731924504186e-02, -1.642337843149396792e-02, -1.641410344811279620e-02, -1.640480238578081659e-02, -1.639547526121823418e-02, -1.638612209118672086e-02, -1.637674289248908233e-02, -1.636733768196938291e-02, -1.635790647651257090e-02, -1.634844929304501981e-02, -1.633896614853398710e-02, -1.632945705998767663e-02, -1.631992204445571054e-02, -1.631036111902823757e-02, -1.630077430083673451e-02, -1.629116160705336089e-02, -1.628152305489128163e-02, -1.627185866160448316e-02, -1.626216844448782894e-02, -1.625245242087699701e-02, -1.624271060814842793e-02, -1.623294302371923459e-02, -1.622314968504741731e-02, -1.621333060963140935e-02, -1.620348581501056609e-02, -1.619361531876465504e-02, -1.618371913851409868e-02, -1.617379729192000223e-02, -1.616384979668378588e-02, -1.615387667054753174e-02, -1.614387793129369586e-02, -1.613385359674521582e-02, -1.612380368476539969e-02, -1.611372821325804047e-02, -1.610362720016705884e-02, -1.609350066347690553e-02, -1.608334862121206868e-02, -1.607317109143756653e-02, -1.606296809225837841e-02, -1.605273964181978819e-02, -1.604248575830724208e-02, -1.603220645994635554e-02, -1.602190176500254554e-02, -1.601157169178166542e-02, -1.600121625862925903e-02, -1.599083548393112619e-02, -1.598042938611287864e-02, -1.596999798364005102e-02, -1.595954129501814950e-02, -1.594905933879239499e-02, -1.593855213354806316e-02, -1.592801969790994671e-02, -1.591746205054282368e-02, -1.590687921015113138e-02, -1.589627119547900799e-02, -1.588563802531019545e-02, -1.587497971846816083e-02, -1.586429629381582926e-02, -1.585358777025592733e-02, -1.584285416673037253e-02, -1.583209550222097750e-02, -1.582131179574867291e-02, -1.581050306637412500e-02, -1.579966933319706598e-02, -1.578881061535684568e-02, -1.577792693203204991e-02, -1.576701830244061145e-02, -1.575608474583967133e-02, -1.574512628152562044e-02, -1.573414292883412724e-02, -1.572313470713984987e-02, -1.571210163585675182e-02, -1.570104373443771337e-02, -1.568996102237482995e-02, -1.567885351919921441e-02, -1.566772124448095535e-02, -1.565656421782896796e-02, -1.564538245889134441e-02, -1.563417598735477101e-02, -1.562294482294501394e-02, -1.561168898542659132e-02, -1.560040849460290688e-02, -1.558910337031592201e-02, -1.557777363244641083e-02, -1.556641930091388210e-02, -1.555504039567633806e-02, -1.554363693673062839e-02, -1.553220894411201994e-02, -1.552075643789444133e-02, -1.550927943819013950e-02, -1.549777796515005961e-02, -1.548625203896336795e-02, -1.547470167985786314e-02, -1.546312690809937933e-02, -1.545152774399265530e-02, -1.543990420788007682e-02, -1.542825632014278511e-02, -1.541658410119981469e-02, -1.540488757150868318e-02, -1.539316675156477202e-02, -1.538142166190180002e-02, -1.536965232309161350e-02, -1.535785875574378900e-02, -1.534604098050632200e-02, -1.533419901806486532e-02, -1.532233288914322533e-02, -1.531044261450292647e-02, -1.529852821494358597e-02, -1.528658971130249060e-02, -1.527462712445489153e-02, -1.526264047531350997e-02, -1.525062978482909400e-02, -1.523859507398987213e-02, -1.522653636382189681e-02, -1.521445367538869220e-02, -1.520234702979153009e-02, -1.519021644816905860e-02, -1.517806195169743924e-02, -1.516588356159050133e-02, -1.515368129909921979e-02, -1.514145518551216277e-02, -1.512920524215527994e-02, -1.511693149039182275e-02, -1.510463395162215186e-02, -1.509231264728415518e-02, -1.507996759885266332e-02, -1.506759882783988841e-02, -1.505520635579497661e-02, -1.504279020430454583e-02, -1.503035039499181318e-02, -1.501788694951744149e-02, -1.500539988957872058e-02, -1.499288923691015872e-02, -1.498035501328299698e-02, -1.496779724050548849e-02, -1.495521594042271106e-02, -1.494261113491640071e-02, -1.492998284590529509e-02, -1.491733109534457494e-02, -1.490465590522640354e-02, -1.489195729757931616e-02, -1.487923529446864672e-02, -1.486648991799631100e-02, -1.485372119030070083e-02, -1.484092913355657475e-02, -1.482811376997547094e-02, -1.481527512180498551e-02, -1.480241321132928778e-02, -1.478952806086900051e-02, -1.477661969278088773e-02, -1.476368812945792579e-02, -1.475073339332957402e-02, -1.473775550686125778e-02, -1.472475449255452110e-02, -1.471173037294716546e-02, -1.469868317061311103e-02, -1.468561290816223878e-02, -1.467251960824029165e-02, -1.465940329352919715e-02, -1.464626398674660941e-02, -1.463310171064617464e-02, -1.461991648801739055e-02, -1.460670834168559251e-02, -1.459347729451165865e-02, -1.458022336939244698e-02, -1.456694658926028542e-02, -1.455364697708340892e-02, -1.454032455586535405e-02, -1.452697934864535280e-02, -1.451361137849831173e-02, -1.450022066853449282e-02, -1.448680724189954985e-02, -1.447337112177453540e-02, -1.445991233137604998e-02, -1.444643089395574072e-02, -1.443292683280082353e-02, -1.441940017123363380e-02, -1.440585093261177556e-02, -1.439227914032783009e-02, -1.437868481780981041e-02, -1.436506798852047254e-02, -1.435142867595789497e-02, -1.433776690365508137e-02, -1.432408269518001438e-02, -1.431037607413544570e-02, -1.429664706415930721e-02, -1.428289568892402751e-02, -1.426912197213722408e-02, -1.425532593754086537e-02, -1.424150760891200289e-02, -1.422766701006224731e-02, -1.421380416483767999e-02, -1.419991909711928492e-02, -1.418601183082229995e-02, -1.417208238989672159e-02, -1.415813079832696324e-02, -1.414415708013187084e-02, -1.413016125936457194e-02, -1.411614336011275672e-02, -1.410210340649818012e-02, -1.408804142267714408e-02, -1.407395743283991127e-02, -1.405985146121114041e-02, -1.404572353204955326e-02, -1.403157366964812719e-02, -1.401740189833354175e-02, -1.400320824246689688e-02, -1.398899272644306760e-02, -1.397475537469078377e-02, -1.396049621167304994e-02, -1.394621526188624672e-02, -1.393191254986102419e-02, -1.391758810016139811e-02, -1.390324193738543337e-02, -1.388887408616463690e-02, -1.387448457116433921e-02, -1.386007341708347246e-02, -1.384564064865453220e-02, -1.383118629064330855e-02, -1.381671036784942221e-02, -1.380221290510560625e-02, -1.378769392727832721e-02, -1.377315345926698360e-02, -1.375859152600467442e-02, -1.374400815245765614e-02, -1.372940336362522308e-02, -1.371477718454015664e-02, -1.370012964026804531e-02, -1.368546075590781029e-02, -1.367077055659137765e-02, -1.365605906748374940e-02, -1.364132631378269823e-02, -1.362657232071916129e-02, -1.361179711355667461e-02, -1.359700071759197167e-02, -1.358218315815420962e-02, -1.356734446060557132e-02, -1.355248465034087149e-02, -1.353760375278762439e-02, -1.352270179340582523e-02, -1.350777879768827808e-02, -1.349283479116004242e-02, -1.347786979937889984e-02, -1.346288384793513024e-02, -1.344787696245109548e-02, -1.343284916858191770e-02, -1.341780049201468997e-02, -1.340273095846912683e-02, -1.338764059369676809e-02, -1.337252942348170215e-02, -1.335739747364003867e-02, -1.334224477001998491e-02, -1.332707133850175203e-02, -1.331187720499768697e-02, -1.329666239545188901e-02, -1.328142693584070076e-02, -1.326617085217200731e-02, -1.325089417048580347e-02, -1.323559691685373407e-02, -1.322027911737936288e-02, -1.320494079819767297e-02, -1.318958198547544661e-02, -1.317420270541114734e-02, -1.315880298423478291e-02, -1.314338284820792610e-02, -1.312794232362341808e-02, -1.311248143680587668e-02, -1.309700021411093311e-02, -1.308149868192596058e-02, -1.306597686666929881e-02, -1.305043479479069297e-02, -1.303487249277116011e-02, -1.301928998712295095e-02, -1.300368730438903817e-02, -1.298806447114404447e-02, -1.297242151399305085e-02, -1.295675845957262699e-02, -1.294107533455003678e-02, -1.292537216562339442e-02, -1.290964897952192464e-02, -1.289390580300527750e-02, -1.287814266286432807e-02, -1.286235958592015470e-02, -1.284655659902496534e-02, -1.283073372906137592e-02, -1.281489100294269483e-02, -1.279902844761251525e-02, -1.278314609004530325e-02, -1.276724395724559112e-02, -1.275132207624865045e-02, -1.273538047411969590e-02, -1.271941917795480458e-02, -1.270343821487982146e-02, -1.268743761205112959e-02, -1.267141739665496834e-02, -1.265537759590810996e-02, -1.263931823705697136e-02, -1.262323934737830805e-02, -1.260714095417888626e-02, -1.259102308479507180e-02, -1.257488576659357080e-02, -1.255872902697052589e-02, -1.254255289335227605e-02, -1.252635739319449097e-02, -1.251014255398286319e-02, -1.249390840323270392e-02, -1.247765496848898814e-02, -1.246138227732595041e-02, -1.244509035734774928e-02, -1.242877923618772480e-02, -1.241244894150878020e-02, -1.239609950100320490e-02, -1.237973094239277171e-02, -1.236334329342817819e-02, -1.234693658188955843e-02, -1.233051083558638940e-02, -1.231406608235701555e-02, -1.229760235006908259e-02, -1.228111966661931016e-02, -1.226461805993336873e-02, -1.224809755796575292e-02, -1.223155818870015794e-02, -1.221499998014884646e-02, -1.219842296035318283e-02, -1.218182715738289935e-02, -1.216521259933711976e-02, -1.214857931434294540e-02, -1.213192733055660534e-02, -1.211525667616257344e-02, -1.209856737937414946e-02, -1.208185946843277903e-02, -1.206513297160870246e-02, -1.204838791720047597e-02, -1.203162433353474267e-02, -1.201484224896680504e-02, -1.199804169187986685e-02, -1.198122269068571839e-02, -1.196438527382388296e-02, -1.194752946976233507e-02, -1.193065530699695051e-02, -1.191376281405171454e-02, -1.189685201947843045e-02, -1.187992295185699015e-02, -1.186297563979493187e-02, -1.184601011192779399e-02, -1.182902639691886353e-02, -1.181202452345920216e-02, -1.179500452026730796e-02, -1.177796641608961151e-02, -1.176091023969991038e-02, -1.174383601989950621e-02, -1.172674378551738159e-02, -1.170963356540983755e-02, -1.169250538846062885e-02, -1.167535928358065349e-02, -1.165819527970839674e-02, -1.164101340580924078e-02, -1.162381369087602152e-02, -1.160659616392862269e-02, -1.158936085401416315e-02, -1.157210779020644009e-02, -1.155483700160669057e-02, -1.153754851734272412e-02, -1.152024236656960625e-02, -1.150291857846880497e-02, -1.148557718224899743e-02, -1.146821820714541071e-02, -1.145084168242017919e-02, -1.143344763736179465e-02, -1.141603610128540634e-02, -1.139860710353298758e-02, -1.138116067347269035e-02, -1.136369684049926866e-02, -1.134621563403395358e-02, -1.132871708352434052e-02, -1.131120121844404400e-02, -1.129366806829336725e-02, -1.127611766259840539e-02, -1.125855003091169593e-02, -1.124096520281181108e-02, -1.122336320790347404e-02, -1.120574407581712353e-02, -1.118810783620959558e-02, -1.117045451876314856e-02, -1.115278415318636702e-02, -1.113509676921323362e-02, -1.111739239660384723e-02, -1.109967106514395292e-02, -1.108193280464460882e-02, -1.106417764494304484e-02, -1.104640561590150734e-02, -1.102861674740815423e-02, -1.101081106937646693e-02, -1.099298861174537525e-02, -1.097514940447898851e-02, -1.095729347756709514e-02, -1.093942086102430745e-02, -1.092153158489083190e-02, -1.090362567923173001e-02, -1.088570317413738858e-02, -1.086776409972322818e-02, -1.084980848612975349e-02, -1.083183636352204847e-02, -1.081384776209063509e-02, -1.079584271205050877e-02, -1.077782124364152182e-02, -1.075978338712851173e-02, -1.074172917280080859e-02, -1.072365863097259758e-02, -1.070557179198238645e-02, -1.068746868619355889e-02, -1.066934934399367887e-02, -1.065121379579500420e-02, -1.063306207203415510e-02, -1.061489420317213335e-02, -1.059671021969403951e-02, -1.057851015210951873e-02, -1.056029403095214148e-02, -1.054206188677988057e-02, -1.052381375017454219e-02, -1.050554965174220999e-02, -1.048726962211295188e-02, -1.046897369194051478e-02, -1.045066189190294731e-02, -1.043233425270170302e-02, -1.041399080506237584e-02, -1.039563157973416585e-02, -1.037725660749005616e-02, -1.035886591912639314e-02, -1.034045954546351613e-02, -1.032203751734484323e-02, -1.030359986563774040e-02, -1.028514662123257949e-02, -1.026667781504339398e-02, -1.024819347800749909e-02, -1.022969364108554380e-02, -1.021117833526109971e-02, -1.019264759154133067e-02, -1.017410144095614276e-02, -1.015553991455876715e-02, -1.013696304342548773e-02, -1.011837085865523872e-02, -1.009976339137028112e-02, -1.008114067271533194e-02, -1.006250273385831014e-02, -1.004384960598953859e-02, -1.002518132032226977e-02, -1.000649790809241164e-02, -9.987799400558489485e-03, -9.969085829001335386e-03, -9.950357224724629482e-03, -9.931613619054152284e-03, -9.912855043338447344e-03, -9.894081528948005938e-03, -9.875293107275912377e-03, -9.856489809737434618e-03, -9.837671667770050282e-03, -9.818838712833177773e-03, -9.799990976408410465e-03, -9.781128489999464659e-03, -9.762251285131957543e-03, -9.743359393353604944e-03, -9.724452846233588160e-03, -9.705531675363386623e-03, -9.686595912355783905e-03, -9.667645588845745486e-03, -9.648680736489459453e-03, -9.629701386965011309e-03, -9.610707571971964167e-03, -9.591699323231480181e-03, -9.572676672485911156e-03, -9.553639651499294672e-03, -9.534588292056726117e-03, -9.515522625964882575e-03, -9.496442685051590879e-03, -9.477348501165668015e-03, -9.458240106177448481e-03, -9.439117531977875286e-03, -9.419980810479360381e-03, -9.400829973614939841e-03, -9.381665053338776941e-03, -9.362486081625882861e-03, -9.343293090472172199e-03, -9.324086111893984188e-03, -9.304865177928774850e-03, -9.285630320634308613e-03, -9.266381572089310570e-03, -9.247118964392614729e-03, -9.227842529663939433e-03, -9.208552300043268066e-03, -9.189248307691150891e-03, -9.169930584788082290e-03, -9.150599163535335159e-03, -9.131254076153909674e-03, -9.111895354885390236e-03, -9.092523031991426793e-03, -9.073137139753403510e-03, -9.053737710473196837e-03, -9.034324776472174579e-03, -9.014898370092056315e-03, -8.995458523693997469e-03, -8.976005269659277988e-03, -8.956538640388792341e-03, -8.937058668303262884e-03, -8.917565385842684753e-03, -8.898058825467130770e-03, -8.878539019655734901e-03, -8.859006000907455533e-03, -8.839459801740548114e-03, -8.819900454692719549e-03, -8.800327992320867987e-03, -8.780742447201035986e-03, -8.761143851928903173e-03, -8.741532239118802658e-03, -8.721907641404522474e-03, -8.702270091438781691e-03, -8.682619621893398684e-03, -8.662956265458793270e-03, -8.643280054844736104e-03, -8.623591022779373769e-03, -8.603889202010049295e-03, -8.584174625302327249e-03, -8.564447325441103959e-03, -8.544707335229238809e-03, -8.524954687488633248e-03, -8.505189415059283622e-03, -8.485411550800034050e-03, -8.465621127587728140e-03, -8.445818178317873390e-03, -8.426002735904224855e-03, -8.406174833278483305e-03, -8.386334503390954417e-03, -8.366481779209608560e-03, -8.346616693720949887e-03, -8.326739279929057033e-03, -8.306849570856242315e-03, -8.286947599542713455e-03, -8.267033399046518072e-03, -8.247107002443292145e-03, -8.227168442826745740e-03, -8.207217753307908398e-03, -8.187254967015722418e-03, -8.167280117096623049e-03, -8.147293236714668596e-03, -8.127294359051052963e-03, -8.107283517304822093e-03, -8.087260744692056913e-03, -8.067226074446131809e-03, -8.047179539817881158e-03, -8.027121174075231569e-03, -8.007051010503368413e-03, -7.986969082404185918e-03, -7.966875423097111164e-03, -7.946770065918023346e-03, -7.926653044220233896e-03, -7.906524391373305136e-03, -7.886384140764444994e-03, -7.866232325796768815e-03, -7.846068979890680195e-03, -7.825894136482753824e-03, -7.805707829026655754e-03, -7.785510090992048791e-03, -7.765300955865480671e-03, -7.745080457149757826e-03, -7.724848628364201254e-03, -7.704605503044195496e-03, -7.684351114741364702e-03, -7.664085497023903973e-03, -7.643808683475683367e-03, -7.623520707696985164e-03, -7.603221603304055436e-03, -7.582911403929171699e-03, -7.562590143220210975e-03, -7.542257854841404388e-03, -7.521914572472308477e-03, -7.501560329808573679e-03, -7.481195160561457738e-03, -7.460819098457947135e-03, -7.440432177240281775e-03, -7.420034430666719999e-03, -7.399625892510508160e-03, -7.379206596560763595e-03, -7.358776576621550020e-03, -7.338335866512534986e-03, -7.317884500068672429e-03, -7.297422511139778530e-03, -7.276949933591225599e-03, -7.256466801303080791e-03, -7.235973148170709787e-03, -7.215469008104380411e-03, -7.194954415029406608e-03, -7.174429402885596808e-03, -7.153894005628027609e-03, -7.133348257226048046e-03, -7.112792191664221546e-03, -7.092225842941224379e-03, -7.071649245070711284e-03, -7.051062432080680564e-03, -7.030465438013818423e-03, -7.009858296926808549e-03, -6.989241042891146567e-03, -6.968613709992304769e-03, -6.947976332330040895e-03, -6.927328944018472726e-03, -6.906671579185752821e-03, -6.886004271974252404e-03, -6.865327056539993235e-03, -6.844639967053426505e-03, -6.823943037698457920e-03, -6.803236302673193632e-03, -6.782519796189426763e-03, -6.761793552472758831e-03, -6.741057605762217249e-03, -6.720311990310826045e-03, -6.699556740384780135e-03, -6.678791890264230285e-03, -6.658017474242326414e-03, -6.637233526625955712e-03, -6.616440081735372285e-03, -6.595637173903749588e-03, -6.574824837477985344e-03, -6.554003106817655501e-03, -6.533172016295824350e-03, -6.512331600298514565e-03, -6.491481893224831240e-03, -6.470622929486534274e-03, -6.449754743508699303e-03, -6.428877369728783556e-03, -6.407990842597502748e-03, -6.387095196577822348e-03, -6.366190466145719117e-03, -6.345276685789682375e-03, -6.324353890010849313e-03, -6.303422113322511462e-03, -6.282481390250861490e-03, -6.261531755334033035e-03, -6.240573243122936840e-03, -6.219605888180272830e-03, -6.198629725081321144e-03, -6.177644788413524067e-03, -6.156651112776061023e-03, -6.135648732780627466e-03, -6.114637683050421803e-03, -6.093617998220934688e-03, -6.072589712939445092e-03, -6.051552861865101829e-03, -6.030507479668482072e-03, -6.009453601032365908e-03, -5.988391260650675549e-03, -5.967320493229400814e-03, -5.946241333485589517e-03, -5.925153816148130692e-03, -5.904057975957164792e-03, -5.882953847664382924e-03, -5.861841466032467404e-03, -5.840720865835424824e-03, -5.819592081858598193e-03, -5.798455148898430146e-03, -5.777310101762481165e-03, -5.756156975269044462e-03, -5.734995804247780028e-03, -5.713826623538822112e-03, -5.692649467993617096e-03, -5.671464372473889598e-03, -5.650271371852516773e-03, -5.629070501012880395e-03, -5.607861794849109717e-03, -5.586645288265549777e-03, -5.565421016177508201e-03, -5.544189013510278548e-03, -5.522949315199881040e-03, -5.501701956192677455e-03, -5.480446971444948717e-03, -5.459184395923670323e-03, -5.437914264605480177e-03, -5.416636612477626622e-03, -5.395351474536889437e-03, -5.374058885790424650e-03, -5.352758881255182538e-03, -5.331451495958100181e-03, -5.310136764935582780e-03, -5.288814723234285149e-03, -5.267485405910030984e-03, -5.246148848028845020e-03, -5.224805084665774292e-03, -5.203454150905816207e-03, -5.182096081843294046e-03, -5.160730912582045180e-03, -5.139358678234943155e-03, -5.117979413924608062e-03, -5.096593154782445498e-03, -5.075199935949364742e-03, -5.053799792575441353e-03, -5.032392759819448794e-03, -5.010978872849630381e-03, -4.989558166842720036e-03, -4.968130676984833065e-03, -4.946696438470415784e-03, -4.925255486503078185e-03, -4.903807856295050102e-03, -4.882353583067279221e-03, -4.860892702049025155e-03, -4.839425248478555937e-03, -4.817951257602151420e-03, -4.796470764674866556e-03, -4.774983804960050010e-03, -4.753490413729475131e-03, -4.731990626262907139e-03, -4.710484477848356395e-03, -4.688972003782327334e-03, -4.667453239368918143e-03, -4.645928219920616997e-03, -4.624396980757784249e-03, -4.602859557208805949e-03, -4.581315984609565621e-03, -4.559766298304214482e-03, -4.538210533644186119e-03, -4.516648725989067317e-03, -4.495080910705576312e-03, -4.473507123168390248e-03, -4.451927398759561449e-03, -4.430341772868698694e-03, -4.408750280892468482e-03, -4.387152958235357447e-03, -4.365549840308626320e-03, -4.343940962531142591e-03, -4.322326360328908670e-03, -4.300706069134712338e-03, -4.279080124388829308e-03, -4.257448561538065661e-03, -4.235811416036646890e-03, -4.214168723345175331e-03, -4.192520518931425536e-03, -4.170866838269836861e-03, -4.149207716841637507e-03, -4.127543190134368330e-03, -4.105873293642606225e-03, -4.084198062867004826e-03, -4.062517533315010074e-03, -4.040831740500390110e-03, -4.019140719943366247e-03, -3.997444507170107297e-03, -3.975743137713491984e-03, -3.954036647112221629e-03, -3.932325070911099445e-03, -3.910608444661275995e-03, -3.888886803919734420e-03, -3.867160184249558014e-03, -3.845428621219344322e-03, -3.823692150404007454e-03, -3.801950807383761531e-03, -3.780204627744995424e-03, -3.758453647079166866e-03, -3.736697900984186759e-03, -3.714937425062635450e-03, -3.693172254923196042e-03, -3.671402426179488660e-03, -3.649627974450992459e-03, -3.627848935361996981e-03, -3.606065344542405769e-03, -3.584277237627209439e-03, -3.562484650256635306e-03, -3.540687618075756635e-03, -3.518886176734660476e-03, -3.497080361888759911e-03, -3.475270209197868585e-03, -3.453455754327044644e-03, -3.431637032945958430e-03, -3.409814080729176976e-03, -3.387986933355546446e-03, -3.366155626509014821e-03, -3.344320195877605820e-03, -3.322480677154186941e-03, -3.300637106035949914e-03, -3.278789518224591113e-03, -3.256937949425756009e-03, -3.235082435349835410e-03, -3.213223011710948911e-03, -3.191359714227837412e-03, -3.169492578622852205e-03, -3.147621640622728662e-03, -3.125746935958193754e-03, -3.103868500363494640e-03, -3.081986369577246945e-03, -3.060100579341347091e-03, -3.038211165401958919e-03, -3.016318163508273798e-03, -2.994421609413993809e-03, -2.972521538875508122e-03, -2.950617987653334114e-03, -2.928710991510945130e-03, -2.906800586215695960e-03, -2.884886807537778968e-03, -2.862969691251030305e-03, -2.841049273132378265e-03, -2.819125588962036275e-03, -2.797198674522935209e-03, -2.775268565601549976e-03, -2.753335297986971453e-03, -2.731398907471193141e-03, -2.709459429849349690e-03, -2.687516900919249396e-03, -2.665571356481552003e-03, -2.643622832339279083e-03, -2.621671364298553027e-03, -2.599716988167575724e-03, -2.577759739757449955e-03, -2.555799654881599128e-03, -2.533836769355984116e-03, -2.511871118998538609e-03, -2.489902739629954072e-03, -2.467931667072678376e-03, -2.445957937151804849e-03, -2.423981585694049649e-03, -2.402002648528548875e-03, -2.380021161486426621e-03, -2.358037160400390346e-03, -2.336050681105485919e-03, -2.314061759438115328e-03, -2.292070431236793455e-03, -2.270076732341617682e-03, -2.248080698594448305e-03, -2.226082365838378142e-03, -2.204081769918501878e-03, -2.182078946680896057e-03, -2.160073931973540643e-03, -2.138066761645286435e-03, -2.116057471546628314e-03, -2.094046097529193070e-03, -2.072032675445898125e-03, -2.050017241150415941e-03, -2.027999830497973291e-03, -2.005980479344310428e-03, -1.983959223546590076e-03, -1.961936098962394764e-03, -1.939911141450494005e-03, -1.917884386870420373e-03, -1.895855871082057723e-03, -1.873825629946438732e-03, -1.851793699324693655e-03, -1.829760115078873667e-03, -1.807724913071373420e-03, -1.785688129165129015e-03, -1.763649799223089999e-03, -1.741609959108988059e-03, -1.719568644686317880e-03, -1.697525891819250468e-03, -1.675481736371602299e-03, -1.653436214207623092e-03, -1.631389361191468244e-03, -1.609341213187352997e-03, -1.587291806059161698e-03, -1.565241175670620396e-03, -1.543189357885471841e-03, -1.521136388567065649e-03, -1.499082303578541751e-03, -1.477027138782278535e-03, -1.454970930040693422e-03, -1.432913713215211134e-03, -1.410855524167173563e-03, -1.388796398756812376e-03, -1.366736372844046124e-03, -1.344675482287922960e-03, -1.322613762946817963e-03, -1.300551250677888654e-03, -1.278487981337858006e-03, -1.256423990781994210e-03, -1.234359314865018584e-03, -1.212293989440078185e-03, -1.190228050359539227e-03, -1.168161533474560993e-03, -1.146094474634672122e-03, -1.124026909688575961e-03, -1.101958874483096717e-03, -1.079890404864000198e-03, -1.057821536675425909e-03, -1.035752305760085680e-03, -1.013682747958715054e-03, -9.916128991108651928e-04, -9.695427950538750526e-04, -9.474724716237876423e-04, -9.254019646543111413e-04, -9.033313099776182822e-04, -8.812605434238032732e-04, -8.591897008210676312e-04, -8.371188179951682138e-04, -8.150479307702149755e-04, -7.929770749676436862e-04, -7.709062864070065314e-04, -7.488356009055456954e-04, -7.267650542777762688e-04, -7.046946823362778244e-04, -6.826245208906604137e-04, -6.605546057484833200e-04, -6.384849727142247406e-04, -6.164156575900727126e-04, -5.943466961753794339e-04, -5.722781242668547935e-04, -5.502099776580061637e-04, -5.281422921399542628e-04, -5.060751035003785512e-04, -4.840084475243281608e-04, -4.619423599936713911e-04, -4.398768766872827884e-04, -4.178120333806134763e-04, -3.957478658458857160e-04, -3.736844098523962659e-04, -3.516217011656058147e-04, -3.295597755479367369e-04, -3.074986687582248663e-04, -2.854384165519072256e-04, -2.633790546804737451e-04, -2.413206188922688137e-04, -2.192631449314505260e-04, -1.972066685389172954e-04, -1.751512254512648252e-04, -1.530968514015902877e-04, -1.310435821189428237e-04, -1.089914533285118688e-04, -8.694050075107673053e-05, -6.489076010381005009e-05, -4.284226709923738855e-05, -2.079505744603922458e-05, 1.250833151375232664e-06, 2.329536899329433066e-05, 4.533851438402404830e-05, 6.738023363219152340e-05, 8.942049105166315255e-05, 1.114592509601265317e-04, 1.334964776801325745e-04, 1.555321355387829162e-04, 1.775661888682799434e-04, 1.995986020052473782e-04, 2.216293392912770826e-04, 2.436583650726217409e-04, 2.656856437013540347e-04, 2.877111395334610764e-04, 3.097348169306217143e-04, 3.317566402592792962e-04, 3.537765738918067799e-04, 3.757945822050893559e-04, 3.978106295814399476e-04, 4.198246804089077753e-04, 4.418366990805907006e-04, 4.638466499951907724e-04, 4.858544975566996449e-04, 5.078602061754396288e-04, 5.298637402666478858e-04, 5.518650642515134140e-04, 5.738641425568702728e-04, 5.958609396157403884e-04, 6.178554198666633005e-04, 6.398475477542320830e-04, 6.618372877287918279e-04, 6.838246042474796114e-04, 7.058094617727976843e-04, 7.277918247736681837e-04, 7.497716577251097156e-04, 7.717489251087874787e-04, 7.937235914123426861e-04, 8.156956211296869253e-04, 8.376649787619191772e-04, 8.596316288159106065e-04, 8.815955358053473474e-04, 9.035566642504130495e-04, 9.255149786783480005e-04, 9.474704436227517675e-04, 9.694230236241482834e-04, 9.913726832297918828e-04, 1.013319386994210921e-03, 1.035263099478529823e-03, 1.057203785251027229e-03, 1.079141408886807050e-03, 1.101075934968854912e-03, 1.123007328086608747e-03, 1.144935552837002008e-03, 1.166860573824163782e-03, 1.188782355659939857e-03, 1.210700862963248053e-03, 1.232616060360345808e-03, 1.254527912485775597e-03, 1.276436383980926199e-03, 1.298341439495092177e-03, 1.320243043685138213e-03, 1.342141161216070478e-03, 1.364035756760345565e-03, 1.385926794998413236e-03, 1.407814240618421092e-03, 1.429698058317235019e-03, 1.451578212799031027e-03, 1.473454668776348446e-03, 1.495327390969746449e-03, 1.517196344108373476e-03, 1.539061492929290906e-03, 1.560922802177767965e-03, 1.582780236608183561e-03, 1.604633760982641108e-03, 1.626483340071977271e-03, 1.648328938655467275e-03, 1.670170521521375465e-03, 1.692008053466251879e-03, 1.713841499295512506e-03, 1.735670823823216814e-03, 1.757495991872651264e-03, 1.779316968275612655e-03, 1.801133717872984699e-03, 1.822946205514410379e-03, 1.844754396059325625e-03, 1.866558254375572622e-03, 1.888357745340392283e-03, 1.910152833840165565e-03, 1.931943484770902875e-03, 1.953729663037613497e-03, 1.975511333554585969e-03, 1.997288461246290135e-03, 2.019061011046001733e-03, 2.040828947896777736e-03, 2.062592236751224772e-03, 2.084350842571964461e-03, 2.106104730331009780e-03, 2.127853865010295026e-03, 2.149598211601356623e-03, 2.171337735106371788e-03, 2.193072400536763382e-03, 2.214802172914206915e-03, 2.236527017270337810e-03, 2.258246898647295678e-03, 2.279961782097036493e-03, 2.301671632681887274e-03, 2.323376415474243811e-03, 2.345076095557573331e-03, 2.366770638025157691e-03, 2.388460007980382650e-03, 2.410144170538256175e-03, 2.431823090823511963e-03, 2.453496733971766933e-03, 2.475165065129211143e-03, 2.496828049453152926e-03, 2.518485652111332376e-03, 2.540137838282466483e-03, 2.561784573155976782e-03, 2.583425821932947789e-03, 2.605061549824784755e-03, 2.626691722054211569e-03, 2.648316303854984961e-03, 2.669935260472408849e-03, 2.691548557162661264e-03, 2.713156159193142597e-03, 2.734758031843300026e-03, 2.756354140403304356e-03, 2.777944450175027103e-03, 2.799528926471755996e-03, 2.821107534618703255e-03, 2.842680239952394099e-03, 2.864247007821139022e-03, 2.885807803584781398e-03, 2.907362592615673254e-03, 2.928911340297323928e-03, 2.950454012025387988e-03, 2.971990573207376404e-03, 2.993520989263196048e-03, 3.015045225624464042e-03, 3.036563247735056797e-03, 3.058075021050820751e-03, 3.079580511040548151e-03, 3.101079683184762310e-03, 3.122572502975950060e-03, 3.144058935920133850e-03, 3.165538947534934922e-03, 3.187012503350744250e-03, 3.208479568910442385e-03, 3.229940109769853084e-03, 3.251394091497180824e-03, 3.272841479673459231e-03, 3.294282239892306480e-03, 3.315716337760888071e-03, 3.337143738898601473e-03, 3.358564408938008970e-03, 3.379978313524587431e-03, 3.401385418317257395e-03, 3.422785688987703065e-03, 3.444179091220910937e-03, 3.465565590714860585e-03, 3.486945153181554222e-03, 3.508317744345631952e-03, 3.529683329945242608e-03, 3.551041875732364669e-03, 3.572393347472114112e-03, 3.593737710943303420e-03, 3.615074931938143648e-03, 3.636404976263214132e-03, 3.657727809738129353e-03, 3.679043398196518190e-03, 3.700351707485724680e-03, 3.721652703467370933e-03, 3.742946352016648503e-03, 3.764232619022868289e-03, 3.785511470389195561e-03, 3.806782872033574131e-03, 3.828046789887564524e-03, 3.849303189896810615e-03, 3.870552038021341911e-03, 3.891793300236135594e-03, 3.913026942529818954e-03, 3.934252930905605267e-03, 3.955471231381520181e-03, 3.976681809989803668e-03, 3.997884632777417430e-03, 4.019079665805737854e-03, 4.040266875151556948e-03, 4.061446226905724918e-03, 4.082617687174139830e-03, 4.103781222077472653e-03, 4.124936797751653852e-03, 4.146084380347258430e-03, 4.167223936029985573e-03, 4.188355430980424468e-03, 4.209478831394975439e-03, 4.230594103484564515e-03, 4.251701213475438806e-03, 4.272800127609562883e-03, 4.293890812143847692e-03, 4.314973233350779397e-03, 4.336047357518033399e-03, 4.357113150949518642e-03, 4.378170579964052282e-03, 4.399219610896247003e-03, 4.420260210096341874e-03, 4.441292343930602210e-03, 4.462315978780768792e-03, 4.483331081044509767e-03, 4.504337617135199465e-03, 4.525335553482919340e-03, 4.546324856532743194e-03, 4.567305492746362612e-03, 4.588277428601225671e-03, 4.609240630591651504e-03, 4.630195065227478944e-03, 4.651140699034903535e-03, 4.672077498556809726e-03, 4.693005430352122087e-03, 4.713924460996265879e-03, 4.734834557080960619e-03, 4.755735685215117803e-03, 4.776627812023570216e-03, 4.797510904147987872e-03, 4.818384928246657699e-03, 4.839249850994933703e-03, 4.860105639084618540e-03, 4.880952259224494334e-03, 4.901789678140020846e-03, 4.922617862574298238e-03, 4.943436779286736540e-03, 4.964246395054063531e-03, 4.985046676669979519e-03, 5.005837590945721137e-03, 5.026619104709400404e-03, 5.047391184806261470e-03, 5.068153798099616497e-03, 5.088906911469410176e-03, 5.109650491813269232e-03, 5.130384506046228345e-03, 5.151108921101159484e-03, 5.171823703928179507e-03, 5.192528821495187054e-03, 5.213224240787542492e-03, 5.233909928809146045e-03, 5.254585852580657100e-03, 5.275251979141182962e-03, 5.295908275547380265e-03, 5.316554708874550450e-03, 5.337191246215300562e-03, 5.357817854680573671e-03, 5.378434501399254226e-03, 5.399041153518796023e-03, 5.419637778204464997e-03, 5.440224342639732140e-03, 5.460800814027034177e-03, 5.481367159586552316e-03, 5.501923346557068342e-03, 5.522469342195739962e-03, 5.543005113778620360e-03, 5.563530628600005939e-03, 5.584045853972895157e-03, 5.604550757228780357e-03, 5.625045305718575847e-03, 5.645529466811278693e-03, 5.666003207894977460e-03, 5.686466496376537359e-03, 5.706919299682093778e-03, 5.727361585256454668e-03, 5.747793320563338200e-03, 5.768214473086286098e-03, 5.788625010327247238e-03, 5.809024899807665315e-03, 5.829414109068094610e-03, 5.849792605668711724e-03, 5.870160357188756138e-03, 5.890517331226943071e-03, 5.910863495401373277e-03, 5.931198817349982340e-03, 5.951523264729925711e-03, 5.971836805218064433e-03, 5.992139406510743095e-03, 6.012431036324673676e-03, 6.032711662395660521e-03, 6.052981252479547498e-03, 6.073239774351930041e-03, 6.093487195808675559e-03, 6.113723484665281593e-03, 6.133948608757155974e-03, 6.154162535940437342e-03, 6.174365234090751359e-03, 6.194556671104060712e-03, 6.214736814896505528e-03, 6.234905633404801487e-03, 6.255063094585676907e-03, 6.275209166416313364e-03, 6.295343816894143595e-03, 6.315467014037719727e-03, 6.335578725885439126e-03, 6.355678920496567012e-03, 6.375767565950810588e-03, 6.395844630348944404e-03, 6.415910081812118207e-03, 6.435963888482356537e-03, 6.456006018522341024e-03, 6.476036440116279477e-03, 6.496055121468635209e-03, 6.516062030804963164e-03, 6.536057136372216102e-03, 6.556040406438070657e-03, 6.576011809291445152e-03, 6.595971313242361689e-03, 6.615918886622379827e-03, 6.635854497783998975e-03, 6.655778115101214365e-03, 6.675689706969129347e-03, 6.695589241804978872e-03, 6.715476688046819777e-03, 6.735352014154412890e-03, 6.755215188609061706e-03, 6.775066179913994888e-03, 6.794904956593811156e-03, 6.814731487194703938e-03, 6.834545740285320053e-03, 6.854347684455518522e-03, 6.874137288317198891e-03, 6.893914520504119958e-03, 6.913679349672336057e-03, 6.933431744499611582e-03, 6.953171673685896309e-03, 6.972899105953032223e-03, 6.992614010045724963e-03, 7.012316354730262734e-03, 7.032006108795355037e-03, 7.051683241051989563e-03, 7.071347720333897094e-03, 7.090999515496799500e-03, 7.110638595419069806e-03, 7.130264929001380036e-03, 7.149878485167618022e-03, 7.169479232863750287e-03, 7.189067141058071847e-03, 7.208642178742607001e-03, 7.228204314931359863e-03, 7.247753518661362131e-03, 7.267289758992440639e-03, 7.286813005007635423e-03, 7.306323225812601241e-03, 7.325820390536159216e-03, 7.345304468329947288e-03, 7.364775428369357835e-03, 7.384233239852312954e-03, 7.403677872000125754e-03, 7.423109294057280046e-03, 7.442527475291901319e-03, 7.461932384995082802e-03, 7.481323992481471799e-03, 7.500702267088930550e-03, 7.520067178179504208e-03, 7.539418695138059082e-03, 7.558756787373235864e-03, 7.578081424317589278e-03, 7.597392575427052916e-03, 7.616690210181418022e-03, 7.635974298084050732e-03, 7.655244808662760303e-03, 7.674501711468615164e-03, 7.693744976076823290e-03, 7.712974572086463317e-03, 7.732190469120977204e-03, 7.751392636827514511e-03, 7.770581044877480567e-03, 7.789755662966224223e-03, 7.808916460813988478e-03, 7.828063408164680562e-03, 7.847196474786460874e-03, 7.866315630471906045e-03, 7.885420845038597012e-03, 7.904512088327889097e-03, 7.923589330205723855e-03, 7.942652540562962146e-03, 7.961701689314688510e-03, 7.980736746400778417e-03, 7.999757681785549593e-03, 8.018764465458717849e-03, 8.037757067434137676e-03, 8.056735457750699089e-03, 8.075699606472072634e-03, 8.094649483687174282e-03, 8.113585059509553082e-03, 8.132506304077925449e-03, 8.151413187555814344e-03, 8.170305680132518983e-03, 8.189183752021845022e-03, 8.208047373462933755e-03, 8.226896514720458131e-03, 8.245731146084119695e-03, 8.264551237869056238e-03, 8.283356760415545167e-03, 8.302147684089995761e-03, 8.320923979283635988e-03, 8.339685616413461400e-03, 8.358432565921909002e-03, 8.377164798277370733e-03, 8.395882283973603658e-03, 8.414584993530174056e-03, 8.433272897492211095e-03, 8.451945966431279392e-03, 8.470604170944263586e-03, 8.489247481653873148e-03, 8.507875869208848807e-03, 8.526489304284451745e-03, 8.545087757581358578e-03, 8.563671199826435043e-03, 8.582239601773001408e-03, 8.600792934200202772e-03, 8.619331167913572844e-03, 8.637854273744659250e-03, 8.656362222551974156e-03, 8.674854985219760881e-03, 8.693332532658869932e-03, 8.711794835806504003e-03, 8.730241865626662059e-03, 8.748673593109591168e-03, 8.767089989272247932e-03, 8.785491025157934203e-03, 8.803876671837370868e-03, 8.822246900407290995e-03, 8.840601681991400868e-03, 8.858940987740222123e-03, 8.877264788831331147e-03, 8.895573056468939269e-03, 8.913865761884090522e-03, 8.932142876335499512e-03, 8.950404371108224358e-03, 8.968650217514662418e-03, 8.986880386894246717e-03, 9.005094850613843196e-03, 9.023293580067245911e-03, 9.041476546675652343e-03, 9.059643721887311249e-03, 9.077795077178605135e-03, 9.095930584052303383e-03, 9.114050214039218917e-03, 9.132153938697283591e-03, 9.150241729612601169e-03, 9.168313558398227814e-03, 9.186369396695053327e-03, 9.204409216171528796e-03, 9.222432988524102010e-03, 9.240440685476655411e-03, 9.258432278780837424e-03, 9.276407740216664408e-03, 9.294367041591485024e-03, 9.312310154740745249e-03, 9.330237051527771538e-03, 9.348147703844237461e-03, 9.366042083609507976e-03, 9.383920162771250059e-03, 9.401781913304983404e-03, 9.419627307215060544e-03, 9.437456316533468156e-03, 9.455268913320716978e-03, 9.473065069665444551e-03, 9.490844757685003297e-03, 9.508607949524915809e-03, 9.526354617358942511e-03, 9.544084733390011469e-03, 9.561798269848998874e-03, 9.579495198995533964e-03, 9.597175493117759623e-03, 9.614839124532814640e-03, 9.632486065586250840e-03, 9.650116288652473701e-03, 9.667729766134476946e-03, 9.685326470464793169e-03, 9.702906374103956871e-03, 9.720469449541951218e-03, 9.738015669297342414e-03, 9.755545005918400334e-03, 9.773057431981806153e-03, 9.790552920093578693e-03, 9.808031442888720530e-03, 9.825492973031741892e-03, 9.842937483216105538e-03, 9.860364946164443603e-03, 9.877775334629225468e-03, 9.895168621391755084e-03, 9.912544779262899564e-03, 9.929903781082896619e-03, 9.947245599721696308e-03, 9.964570208078534289e-03, 9.981877579082271829e-03, 9.999167685691236207e-03, 1.001644050089392675e-02, 1.003369599770796011e-02, 1.005093414918091684e-02, 1.006815492839002735e-02, 1.008535830844263514e-02, 1.010254426247566076e-02, 1.011971276365598860e-02, 1.013686378518028133e-02, 1.015399730027577961e-02, 1.017111328219914845e-02, 1.018821170423718329e-02, 1.020529253970713091e-02, 1.022235576195610826e-02, 1.023940134436142867e-02, 1.025642926033064513e-02, 1.027343948330181403e-02, 1.029043198674302502e-02, 1.030740674415283470e-02, 1.032436372906002028e-02, 1.034130291502431340e-02, 1.035822427563539913e-02, 1.037512778451367065e-02, 1.039201341530997767e-02, 1.040888114170604277e-02, 1.042573093741398262e-02, 1.044256277617644155e-02, 1.045937663176741035e-02, 1.047617247799107788e-02, 1.049295028868260128e-02, 1.050971003770790821e-02, 1.052645169896404900e-02, 1.054317524637878901e-02, 1.055988065391092259e-02, 1.057656789555001808e-02, 1.059323694531734937e-02, 1.060988777726465382e-02, 1.062652036547495453e-02, 1.064313468406242504e-02, 1.065973070717270502e-02, 1.067630840898236254e-02, 1.069286776369937457e-02, 1.070940874556286677e-02, 1.072593132884390975e-02, 1.074243548784432900e-02, 1.075892119689764864e-02, 1.077538843036900812e-02, 1.079183716265487078e-02, 1.080826736818335347e-02, 1.082467902141408429e-02, 1.084107209683859985e-02, 1.085744656897986819e-02, 1.087380241239261844e-02, 1.089013960166325228e-02, 1.090645811141045460e-02, 1.092275791628421339e-02, 1.093903899096659686e-02, 1.095530131017150195e-02, 1.097154484864505328e-02, 1.098776958116507232e-02, 1.100397548254157185e-02, 1.102016252761638809e-02, 1.103633069126409676e-02, 1.105247994839080213e-02, 1.106861027393493679e-02, 1.108472164286745075e-02, 1.110081403019125626e-02, 1.111688741094165288e-02, 1.113294176018620428e-02, 1.114897705302526042e-02, 1.116499326459113178e-02, 1.118099037004878157e-02, 1.119696834459557415e-02, 1.121292716346164627e-02, 1.122886680190948033e-02, 1.124478723523427912e-02, 1.126068843876362573e-02, 1.127657038785848109e-02, 1.129243305791195924e-02, 1.130827642434989282e-02, 1.132410046263104472e-02, 1.133990514824740302e-02, 1.135569045672335173e-02, 1.137145636361624849e-02, 1.138720284451673684e-02, 1.140292987504810084e-02, 1.141863743086678033e-02, 1.143432548766213329e-02, 1.144999402115711405e-02, 1.146564300710730885e-02, 1.148127242130163317e-02, 1.149688223956223804e-02, 1.151247243774461415e-02, 1.152804299173743226e-02, 1.154359387746273224e-02, 1.155912507087570630e-02, 1.157463654796552985e-02, 1.159012828475425826e-02, 1.160560025729756237e-02, 1.162105244168476319e-02, 1.163648481403865495e-02, 1.165189735051555195e-02, 1.166729002730528854e-02, 1.168266282063184190e-02, 1.169801570675242826e-02, 1.171334866195810308e-02, 1.172866166257362924e-02, 1.174395468495786563e-02, 1.175922770550321197e-02, 1.177448070063602005e-02, 1.178971364681645484e-02, 1.180492652053908263e-02, 1.182011929833203662e-02, 1.183529195675740719e-02, 1.185044447241141718e-02, 1.186557682192483643e-02, 1.188068898196198084e-02, 1.189578092922148264e-02, 1.191085264043647077e-02, 1.192590409237391687e-02, 1.194093526183527890e-02, 1.195594612565609172e-02, 1.197093666070677721e-02, 1.198590684389159305e-02, 1.200085665214939597e-02, 1.201578606245343357e-02, 1.203069505181165316e-02, 1.204558359726628364e-02, 1.206045167589415122e-02, 1.207529926480663436e-02, 1.209012634115009567e-02, 1.210493288210513774e-02, 1.211971886488717558e-02, 1.213448426674632215e-02, 1.214922906496766070e-02, 1.216395323687084577e-02, 1.217865675981030793e-02, 1.219333961117580016e-02, 1.220800176839150625e-02, 1.222264320891666527e-02, 1.223726391024550220e-02, 1.225186384990739619e-02, 1.226644300546664811e-02, 1.228100135452251350e-02, 1.229553887470938300e-02, 1.231005554369732531e-02, 1.232455133919074970e-02, 1.233902623892979729e-02, 1.235348022068956039e-02, 1.236791326228089093e-02, 1.238232534154953303e-02, 1.239671643637663655e-02, 1.241108652467873448e-02, 1.242543558440798238e-02, 1.243976359355175240e-02, 1.245407053013279641e-02, 1.246835637220989300e-02, 1.248262109787686737e-02, 1.249686468526330606e-02, 1.251108711253430886e-02, 1.252528835789086005e-02, 1.253946839956942942e-02, 1.255362721584224808e-02, 1.256776478501711418e-02, 1.258188108543811974e-02, 1.259597609548469485e-02, 1.261004979357226684e-02, 1.262410215815203303e-02, 1.263813316771139270e-02, 1.265214280077340755e-02, 1.266613103589707585e-02, 1.268009785167783197e-02, 1.269404322674676580e-02, 1.270796713977108243e-02, 1.272186956945411083e-02, 1.273575049453549816e-02, 1.274960989379085932e-02, 1.276344774603211697e-02, 1.277726403010717195e-02, 1.279105872490087469e-02, 1.280483180933355072e-02, 1.281858326236234163e-02, 1.283231306298049032e-02, 1.284602119021808174e-02, 1.285970762314118943e-02, 1.287337234085245488e-02, 1.288701532249102340e-02, 1.290063654723265160e-02, 1.291423599428959297e-02, 1.292781364291049895e-02, 1.294136947238113712e-02, 1.295490346202342151e-02, 1.296841559119615503e-02, 1.298190583929474673e-02, 1.299537418575157782e-02, 1.300882061003558535e-02, 1.302224509165256228e-02, 1.303564761014501874e-02, 1.304902814509278745e-02, 1.306238667611206959e-02, 1.307572318285629351e-02, 1.308903764501559083e-02, 1.310233004231747128e-02, 1.311560035452612009e-02, 1.312884856144294968e-02, 1.314207464290620929e-02, 1.315527857879175526e-02, 1.316846034901216975e-02, 1.318161993351721177e-02, 1.319475731229411385e-02, 1.320787246536709106e-02, 1.322096537279776260e-02, 1.323403601468477186e-02, 1.324708437116471800e-02, 1.326011042241086180e-02, 1.327311414863415785e-02, 1.328609553008279834e-02, 1.329905454704284444e-02, 1.331199117983744400e-02, 1.332490540882733804e-02, 1.333779721441072201e-02, 1.335066657702355802e-02, 1.336351347713926087e-02, 1.337633789526870148e-02, 1.338913981196088870e-02, 1.340191920780206720e-02, 1.341467606341634373e-02, 1.342741035946545120e-02, 1.344012207664908518e-02, 1.345281119570463160e-02, 1.346547769740727256e-02, 1.347812156256996199e-02, 1.349074277204388890e-02, 1.350334130671777301e-02, 1.351591714751842338e-02, 1.352847027541052849e-02, 1.354100067139698930e-02, 1.355350831651849601e-02, 1.356599319185397209e-02, 1.357845527852007649e-02, 1.359089455767218714e-02, 1.360331101050333939e-02, 1.361570461824476198e-02, 1.362807536216612513e-02, 1.364042322357514672e-02, 1.365274818381776931e-02, 1.366505022427825025e-02, 1.367732932637928146e-02, 1.368958547158171356e-02, 1.370181864138485077e-02, 1.371402881732621849e-02, 1.372621598098214789e-02, 1.373838011396704903e-02, 1.375052119793394347e-02, 1.376263921457424044e-02, 1.377473414561813415e-02, 1.378680597283409200e-02, 1.379885467802935244e-02, 1.381088024304945837e-02, 1.382288264977916091e-02, 1.383486188014138203e-02, 1.384681791609778008e-02, 1.385875073964897182e-02, 1.387066033283414386e-02, 1.388254667773130419e-02, 1.389440975645700634e-02, 1.390624955116720983e-02, 1.391806604405624627e-02, 1.392985921735744557e-02, 1.394162905334293996e-02, 1.395337553432402476e-02, 1.396509864265081322e-02, 1.397679836071239433e-02, 1.398847467093671838e-02, 1.400012755579122491e-02, 1.401175699778197704e-02, 1.402336297945435024e-02, 1.403494548339247368e-02, 1.404650449222021730e-02, 1.405803998860019437e-02, 1.406955195523423505e-02, 1.408104037486350955e-02, 1.409250523026837378e-02, 1.410394650426845080e-02, 1.411536417972248172e-02, 1.412675823952901089e-02, 1.413812866662543521e-02, 1.414947544398870334e-02, 1.416079855463510222e-02, 1.417209798162047223e-02, 1.418337370804002504e-02, 1.419462571702835053e-02, 1.420585399175951224e-02, 1.421705851544743070e-02, 1.422823927134517392e-02, 1.423939624274552299e-02, 1.425052941298092166e-02, 1.426163876542336888e-02, 1.427272428348442396e-02, 1.428378595061531586e-02, 1.429482375030729883e-02, 1.430583766609092554e-02, 1.431682768153665596e-02, 1.432779378025465962e-02, 1.433873594589500991e-02, 1.434965416214752619e-02, 1.436054841274182065e-02, 1.437141868144724624e-02, 1.438226495207349347e-02, 1.439308720846975247e-02, 1.440388543452519182e-02, 1.441465961416886835e-02, 1.442540973137025617e-02, 1.443613577013833429e-02, 1.444683771452230994e-02, 1.445751554861144685e-02, 1.446816925653509472e-02, 1.447879882246257133e-02, 1.448940423060338448e-02, 1.449998546520736911e-02, 1.451054251056427616e-02, 1.452107535100410386e-02, 1.453158397089705442e-02, 1.454206835465369878e-02, 1.455252848672471816e-02, 1.456296435160111223e-02, 1.457337593381408981e-02, 1.458376321793547654e-02, 1.459412618857717017e-02, 1.460446483039154648e-02, 1.461477912807123206e-02, 1.462506906634958651e-02, 1.463533463000010575e-02, 1.464557580383668914e-02, 1.465579257271415990e-02, 1.466598492152744980e-02, 1.467615283521212302e-02, 1.468629629874420965e-02, 1.469641529714054221e-02, 1.470650981545833409e-02, 1.471657983879549013e-02, 1.472662535229040705e-02, 1.473664634112248177e-02, 1.474664279051157365e-02, 1.475661468571809118e-02, 1.476656201204328347e-02, 1.477648475482940676e-02, 1.478638289945911378e-02, 1.479625643135599675e-02, 1.480610533598439478e-02, 1.481592959884960731e-02, 1.482572920549765638e-02, 1.483550414151535782e-02, 1.484525439253077048e-02, 1.485497994421244340e-02, 1.486468078227011491e-02, 1.487435689245433269e-02, 1.488400826055675738e-02, 1.489363487240992837e-02, 1.490323671388747544e-02, 1.491281377090391061e-02, 1.492236602941510518e-02, 1.493189347541775021e-02, 1.494139609494971564e-02, 1.495087387408986640e-02, 1.496032679895845097e-02, 1.496975485571665383e-02, 1.497915803056690254e-02, 1.498853630975293533e-02, 1.499788967955955309e-02, 1.500721812631283965e-02, 1.501652163638008720e-02, 1.502580019616998538e-02, 1.503505379213242871e-02, 1.504428241075866229e-02, 1.505348603858110319e-02, 1.506266466217389896e-02, 1.507181826815221296e-02, 1.508094684317266669e-02, 1.509005037393331382e-02, 1.509912884717383962e-02, 1.510818224967511170e-02, 1.511721056825954604e-02, 1.512621378979103065e-02, 1.513519190117502619e-02, 1.514414488935851913e-02, 1.515307274132983613e-02, 1.516197544411921130e-02, 1.517085298479815131e-02, 1.517970535047993667e-02, 1.518853252831929915e-02, 1.519733450551282589e-02, 1.520611126929864027e-02, 1.521486280695641576e-02, 1.522358910580768124e-02, 1.523229015321573947e-02, 1.524096593658536870e-02, 1.524961644336330496e-02, 1.525824166103787773e-02, 1.526684157713937944e-02, 1.527541617923976192e-02, 1.528396545495282373e-02, 1.529248939193414078e-02, 1.530098797788133000e-02, 1.530946120053362780e-02, 1.531790904767232203e-02, 1.532633150712054901e-02, 1.533472856674332994e-02, 1.534310021444769585e-02, 1.535144643818244815e-02, 1.535976722593879705e-02, 1.536806256574934845e-02, 1.537633244568909971e-02, 1.538457685387486715e-02, 1.539279577846579088e-02, 1.540098920766278662e-02, 1.540915712970893428e-02, 1.541729953288933225e-02, 1.542541640553133676e-02, 1.543350773600434163e-02, 1.544157351271968452e-02, 1.544961372413129752e-02, 1.545762835873485362e-02, 1.546561740506840164e-02, 1.547358085171220143e-02, 1.548151868728865448e-02, 1.548943090046246696e-02, 1.549731747994049016e-02, 1.550517841447188357e-02, 1.551301369284824143e-02, 1.552082330390326149e-02, 1.552860723651298090e-02, 1.553636547959573976e-02, 1.554409802211238929e-02, 1.555180485306595188e-02, 1.555948596150189336e-02, 1.556714133650795653e-02, 1.557477096721456185e-02, 1.558237484279429222e-02, 1.558995295246225557e-02, 1.559750528547598075e-02, 1.560503183113550428e-02, 1.561253257878328186e-02, 1.562000751780424392e-02, 1.562745663762599505e-02, 1.563487992771849661e-02, 1.564227737759418119e-02, 1.564964897680812608e-02, 1.565699471495816952e-02, 1.566431458168440760e-02, 1.567160856666970081e-02, 1.567887665963936875e-02, 1.568611885036162376e-02, 1.569333512864705404e-02, 1.570052548434898443e-02, 1.570768990736334109e-02, 1.571482838762900541e-02, 1.572194091512714442e-02, 1.572902747988188382e-02, 1.573608807196002699e-02, 1.574312268147104107e-02, 1.575013129856726174e-02, 1.575711391344353576e-02, 1.576407051633781781e-02, 1.577100109753062571e-02, 1.577790564734528680e-02, 1.578478415614798305e-02, 1.579163661434776489e-02, 1.579846301239645409e-02, 1.580526334078868542e-02, 1.581203759006198639e-02, 1.581878575079689181e-02, 1.582550781361667658e-02, 1.583220376918756389e-02, 1.583887360821848930e-02, 1.584551732146175645e-02, 1.585213489971224604e-02, 1.585872633380786684e-02, 1.586529161462958346e-02, 1.587183073310121512e-02, 1.587834368018967504e-02, 1.588483044690470677e-02, 1.589129102429934215e-02, 1.589772540346938781e-02, 1.590413357555375481e-02, 1.591051553173442740e-02, 1.591687126323651155e-02, 1.592320076132798176e-02, 1.592950401732011814e-02, 1.593578102256704848e-02, 1.594203176846639008e-02, 1.594825624645849690e-02, 1.595445444802694526e-02, 1.596062636469855814e-02, 1.596677198804325598e-02, 1.597289130967407753e-02, 1.597898432124720061e-02, 1.598505101446215382e-02, 1.599109138106154585e-02, 1.599710541283112103e-02, 1.600309310159990853e-02, 1.600905443924023272e-02, 1.601498941766754669e-02, 1.602089802884059874e-02, 1.602678026476127629e-02, 1.603263611747502218e-02, 1.603846557907029347e-02, 1.604426864167891181e-02, 1.605004529747592820e-02, 1.605579553867991782e-02, 1.606151935755253252e-02, 1.606721674639883385e-02, 1.607288769756725147e-02, 1.607853220344961434e-02, 1.608415025648094604e-02, 1.608974184913977007e-02, 1.609530697394791557e-02, 1.610084562347070813e-02, 1.610635779031673737e-02, 1.611184346713797830e-02, 1.611730264662998222e-02, 1.612273532153160258e-02, 1.612814148462514072e-02, 1.613352112873630423e-02, 1.613887424673442553e-02, 1.614420083153209062e-02, 1.614950087608541668e-02, 1.615477437339400343e-02, 1.616002131650097137e-02, 1.616524169849293049e-02, 1.617043551249987623e-02, 1.617560275169555029e-02, 1.618074340929699997e-02, 1.618585747856485929e-02, 1.619094495280330726e-02, 1.619600582536014771e-02, 1.620104008962656994e-02, 1.620604773903750254e-02, 1.621102876707124912e-02, 1.621598316724990468e-02, 1.622091093313905025e-02, 1.622581205834781187e-02, 1.623068653652885024e-02, 1.623553436137875963e-02, 1.624035552663738793e-02, 1.624515002608836051e-02, 1.624991785355892754e-02, 1.625465900292002649e-02, 1.625937346808610171e-02, 1.626406124301539580e-02, 1.626872232170971030e-02, 1.627335669821462771e-02, 1.627796436661922697e-02, 1.628254532105638877e-02, 1.628709955570271234e-02, 1.629162706477841824e-02, 1.629612784254743860e-02, 1.630060188331737200e-02, 1.630504918143969861e-02, 1.630946973130943320e-02, 1.631386352736545128e-02, 1.631823056409019077e-02, 1.632257083601005090e-02, 1.632688433769498640e-02, 1.633117106375878147e-02, 1.633543100885910190e-02, 1.633966416769712729e-02, 1.634387053501799511e-02, 1.634805010561051625e-02, 1.635220287430742131e-02, 1.635632883598503451e-02, 1.636042798556366570e-02, 1.636450031800722876e-02, 1.636854582832360586e-02, 1.637256451156450174e-02, 1.637655636282528068e-02, 1.638052137724519200e-02, 1.638445955000739779e-02, 1.638837087633880293e-02, 1.639225535151020430e-02, 1.639611297083613112e-02, 1.639994372967508787e-02, 1.640374762342942591e-02, 1.640752464754517692e-02, 1.641127479751247273e-02, 1.641499806886516713e-02, 1.641869445718103712e-02, 1.642236395808163371e-02, 1.642600656723260458e-02, 1.642962228034324651e-02, 1.643321109316683154e-02, 1.643677300150054449e-02, 1.644030800118550725e-02, 1.644381608810666778e-02, 1.644729725819287294e-02, 1.645075150741695524e-02, 1.645417883179554897e-02, 1.645757922738929832e-02, 1.646095269030274644e-02, 1.646429921668430413e-02, 1.646761880272643377e-02, 1.647091144466537524e-02, 1.647417713878135750e-02, 1.647741588139865071e-02, 1.648062766888531636e-02, 1.648381249765345016e-02, 1.648697036415902595e-02, 1.649010126490206563e-02, 1.649320519642645186e-02, 1.649628215532012235e-02, 1.649933213821476105e-02, 1.650235514178632901e-02, 1.650535116275450923e-02, 1.650832019788305016e-02, 1.651126224397960612e-02, 1.651417729789592809e-02, 1.651706535652763472e-02, 1.651992641681424706e-02, 1.652276047573949733e-02, 1.652556753033093684e-02, 1.652834757766012685e-02, 1.653110061484258306e-02, 1.653382663903790392e-02, 1.653652564744961806e-02, 1.653919763732524667e-02, 1.654184260595623415e-02, 1.654446055067819096e-02, 1.654705146887060219e-02, 1.654961535795701488e-02, 1.655215221540482992e-02, 1.655466203872563852e-02, 1.655714482547498284e-02, 1.655960057325232132e-02, 1.656202927970118477e-02, 1.656443094250915210e-02, 1.656680555940774624e-02, 1.656915312817250005e-02, 1.657147364662300143e-02, 1.657376711262281699e-02, 1.657603352407949551e-02, 1.657827287894464083e-02, 1.658048517521393261e-02, 1.658267041092688701e-02, 1.658482858416724173e-02, 1.658695969306257442e-02, 1.658906373578456633e-02, 1.659114071054896070e-02, 1.659319061561539271e-02, 1.659521344928758385e-02, 1.659720920991328633e-02, 1.659917789588421372e-02, 1.660111950563618669e-02, 1.660303403764890745e-02, 1.660492149044625124e-02, 1.660678186259596789e-02, 1.660861515270990740e-02, 1.661042135944388112e-02, 1.661220048149779013e-02, 1.661395251761546912e-02, 1.661567746658481823e-02, 1.661737532723768507e-02, 1.661904609845007291e-02, 1.662068977914177639e-02, 1.662230636827677008e-02, 1.662389586486302459e-02, 1.662545826795246498e-02, 1.662699357664099500e-02, 1.662850179006863591e-02, 1.662998290741932519e-02, 1.663143692792097908e-02, 1.663286385084563820e-02, 1.663426367550920396e-02, 1.663563640127165011e-02, 1.663698202753696384e-02, 1.663830055375310063e-02, 1.663959197941200854e-02, 1.664085630404959354e-02, 1.664209352724582355e-02, 1.664330364862458972e-02, 1.664448666785384862e-02, 1.664564258464544186e-02, 1.664677139875527651e-02, 1.664787310998315506e-02, 1.664894771817290037e-02, 1.664999522321237990e-02, 1.665101562503332883e-02, 1.665200892361150958e-02, 1.665297511896660088e-02, 1.665391421116231563e-02, 1.665482620030625180e-02, 1.665571108655005891e-02, 1.665656887008923337e-02, 1.665739955116332313e-02, 1.665820313005572997e-02, 1.665897960709391765e-02, 1.665972898264922106e-02, 1.666045125713689831e-02, 1.666114643101619663e-02, 1.666181450479026563e-02, 1.666245547900615381e-02, 1.666306935425495434e-02, 1.666365613117157599e-02, 1.666421581043486463e-02, 1.666474839276758588e-02, 1.666525387893643545e-02, 1.666573226975199412e-02, 1.666618356606878668e-02, 1.666660776878518824e-02, 1.666700487884351101e-02, 1.666737489722993834e-02, 1.666771782497454210e-02, 1.666803366315125837e-02, 1.666832241287791866e-02, 1.666858407531628117e-02, 1.666881865167189197e-02, 1.666902614319419954e-02, 1.666920655117653041e-02, 1.666935987695602681e-02, 1.666948612191370901e-02, 1.666958528747444768e-02, 1.666965737510692908e-02, 1.666970238632367596e-02, 1.666972032268108916e-02, 1.666971118577932967e-02, 1.666967497726246084e-02, 1.666961169881830962e-02, 1.666952135217847700e-02, 1.666940393911843163e-02, 1.666925946145742313e-02, 1.666908792105847859e-02, 1.666888931982846850e-02, 1.666866365971793676e-02, 1.666841094272129842e-02, 1.666813117087674254e-02, 1.666782434626618709e-02, 1.666749047101524425e-02, 1.666712954729341820e-02, 1.666674157731388647e-02, 1.666632656333353821e-02, 1.666588450765304694e-02, 1.666541541261678042e-02, 1.666491928061285613e-02, 1.666439611407311353e-02, 1.666384591547304464e-02, 1.666326868733188776e-02, 1.666266443221254764e-02, 1.666203315272170651e-02, 1.666137485150956388e-02, 1.666068953127012794e-02, 1.665997719474106992e-02, 1.665923784470363378e-02, 1.665847148398278549e-02, 1.665767811544710542e-02, 1.665685774200884040e-02, 1.665601036662386208e-02, 1.665513599229163921e-02, 1.665423462205528962e-02, 1.665330625900150394e-02, 1.665235090626062189e-02, 1.665136856700653173e-02, 1.665035924445674304e-02, 1.664932294187232431e-02, 1.664825966255792031e-02, 1.664716940986170693e-02, 1.664605218717547103e-02, 1.664490799793449591e-02, 1.664373684561765501e-02, 1.664253873374730436e-02, 1.664131366588930336e-02, 1.664006164565307727e-02, 1.663878267669157557e-02, 1.663747676270110540e-02, 1.663614390742168547e-02, 1.663478411463659157e-02, 1.663339738817270347e-02, 1.663198373190028639e-02, 1.663054314973316447e-02, 1.662907564562844664e-02, 1.662758122358682505e-02, 1.662605988765231482e-02, 1.662451164191245875e-02, 1.662293649049805672e-02, 1.662133443758338769e-02, 1.661970548738615425e-02, 1.661804964416738542e-02, 1.661636691223148526e-02, 1.661465729592621204e-02, 1.661292079964270599e-02, 1.661115742781543725e-02, 1.660936718492217815e-02, 1.660755007548403439e-02, 1.660570610406539999e-02, 1.660383527527408212e-02, 1.660193759376096811e-02, 1.660001306422044867e-02, 1.659806169139006402e-02, 1.659608348005064266e-02, 1.659407843502620425e-02, 1.659204656118409490e-02, 1.658998786343485535e-02, 1.658790234673225908e-02, 1.658579001607324299e-02, 1.658365087649795247e-02, 1.658148493308978996e-02, 1.657929219097519294e-02, 1.657707265532392532e-02, 1.657482633134878952e-02, 1.657255322430578603e-02, 1.657025333949397813e-02, 1.656792668225565493e-02, 1.656557325797612321e-02, 1.656319307208381497e-02, 1.656078613005031175e-02, 1.655835243739010865e-02, 1.655589199966098560e-02, 1.655340482246354245e-02, 1.655089091144161181e-02, 1.654835027228193645e-02, 1.654578291071431492e-02, 1.654318883251153921e-02, 1.654056804348939466e-02, 1.653792054950669818e-02, 1.653524635646518373e-02, 1.653254547030953356e-02, 1.652981789702731921e-02, 1.652706364264920971e-02, 1.652428271324868012e-02, 1.652147511494208437e-02, 1.651864085388871084e-02, 1.651577993629081004e-02, 1.651289236839337954e-02, 1.650997815648432357e-02, 1.650703730689438015e-02, 1.650406982599710720e-02, 1.650107572020891381e-02, 1.649805499598898037e-02, 1.649500765983931416e-02, 1.649193371830478053e-02, 1.648883317797267614e-02, 1.648570604547351312e-02, 1.648255232748022103e-02, 1.647937203070853895e-02, 1.647616516191696689e-02, 1.647293172790661314e-02, 1.646967173552139202e-02, 1.646638519164779144e-02, 1.646307210321498044e-02, 1.645973247719480920e-02, 1.645636632060169108e-02, 1.645297364049273792e-02, 1.644955444396756575e-02, 1.644610873816845092e-02, 1.644263653028023991e-02, 1.643913782753026256e-02, 1.643561263718854026e-02, 1.643206096656754309e-02, 1.642848282302221061e-02, 1.642487821395000394e-02, 1.642124714679092656e-02, 1.641758962902746186e-02, 1.641390566818447944e-02, 1.641019527182930801e-02, 1.640645844757177702e-02, 1.640269520306401538e-02, 1.639890554600072561e-02, 1.639508948411880218e-02, 1.639124702519755006e-02, 1.638737817705878189e-02, 1.638348294756645021e-02, 1.637956134462692503e-02, 1.637561337618888974e-02, 1.637163905024335495e-02, 1.636763837482344344e-02, 1.636361135800476138e-02, 1.635955800790500278e-02, 1.635547833268419932e-02, 1.635137234054449135e-02, 1.634724003973025627e-02, 1.634308143852808079e-02, 1.633889654526674007e-02, 1.633468536831708326e-02, 1.633044791609215493e-02, 1.632618419704708751e-02, 1.632189421967915680e-02, 1.631757799252762584e-02, 1.631323552417397044e-02, 1.630886682324159467e-02, 1.630447189839600783e-02, 1.630005075834472378e-02, 1.629560341183722630e-02, 1.629112986766508703e-02, 1.628663013466171219e-02, 1.628210422170253691e-02, 1.627755213770493148e-02, 1.627297389162819102e-02, 1.626836949247346606e-02, 1.626373894928381109e-02, 1.625908227114422969e-02, 1.625439946718146983e-02, 1.624969054656413142e-02, 1.624495551850265937e-02, 1.624019439224924644e-02, 1.623540717709806222e-02, 1.623059388238471887e-02, 1.622575451748676026e-02, 1.622088909182353364e-02, 1.621599761485591901e-02, 1.621108009608660319e-02, 1.620613654505988557e-02, 1.620116697136185502e-02, 1.619617138462000824e-02, 1.619114979450363492e-02, 1.618610221072356442e-02, 1.618102864303231844e-02, 1.617592910122379532e-02, 1.617080359513361348e-02, 1.616565213463877146e-02, 1.616047472965799481e-02, 1.615527139015118102e-02, 1.615004212611993728e-02, 1.614478694760736535e-02, 1.613950586469782567e-02, 1.613419888751716977e-02, 1.612886602623265359e-02, 1.612350729105302416e-02, 1.611812269222815189e-02, 1.611271224004936012e-02, 1.610727594484939740e-02, 1.610181381700218073e-02, 1.609632586692294823e-02, 1.609081210506826953e-02, 1.608527254193577519e-02, 1.607970718806462501e-02, 1.607411605403487667e-02, 1.606849915046786037e-02, 1.606285648802622396e-02, 1.605718807741361373e-02, 1.605149392937480282e-02, 1.604577405469573975e-02, 1.604002846420344436e-02, 1.603425716876600779e-02, 1.602846017929244679e-02, 1.602263750673297779e-02, 1.601678916207883996e-02, 1.601091515636196561e-02, 1.600501550065558387e-02, 1.599909020607372806e-02, 1.599313928377143340e-02, 1.598716274494440398e-02, 1.598116060082959214e-02, 1.597513286270449764e-02, 1.596907954188768117e-02, 1.596300064973837224e-02, 1.595689619765661843e-02, 1.595076619708336169e-02, 1.594461065950023362e-02, 1.593842959642956941e-02, 1.593222301943444594e-02, 1.592599094011871302e-02, 1.591973337012671241e-02, 1.591345032114356919e-02, 1.590714180489509119e-02, 1.590080783314759549e-02, 1.589444841770800212e-02, 1.588806357042376119e-02, 1.588165330318301247e-02, 1.587521762791440499e-02, 1.586875655658677789e-02, 1.586227010120981953e-02, 1.585575827383351941e-02, 1.584922108654843176e-02, 1.584265855148523500e-02, 1.583607068081533883e-02, 1.582945748675026326e-02, 1.582281898154203059e-02, 1.581615517748295036e-02, 1.580946608690557767e-02, 1.580275172218290752e-02, 1.579601209572788559e-02, 1.578924721999403272e-02, 1.578245710747486555e-02, 1.577564177070428161e-02, 1.576880122225611525e-02, 1.576193547474443596e-02, 1.575504454082355538e-02, 1.574812843318779132e-02, 1.574118716457142964e-02, 1.573422074774895665e-02, 1.572722919553491347e-02, 1.572021252078368778e-02, 1.571317073638980530e-02, 1.570610385528765918e-02, 1.569901189045159670e-02, 1.569189485489600952e-02, 1.568475276167487914e-02, 1.567758562388233204e-02, 1.567039345465228578e-02, 1.566317626715834146e-02, 1.565593407461404393e-02, 1.564866689027261809e-02, 1.564137472742720483e-02, 1.563405759941033715e-02, 1.562671551959453342e-02, 1.561934850139190187e-02, 1.561195655825434181e-02, 1.560453970367299201e-02, 1.559709795117900782e-02, 1.558963131434287601e-02, 1.558213980677480848e-02, 1.557462344212439190e-02, 1.556708223408081494e-02, 1.555951619637276247e-02, 1.555192534276821775e-02, 1.554430968707478690e-02, 1.553666924313943515e-02, 1.552900402484845045e-02, 1.552131404612747297e-02, 1.551359932094154188e-02, 1.550585986329497921e-02, 1.549809568723152509e-02, 1.549030680683375141e-02, 1.548249323622395181e-02, 1.547465498956334708e-02, 1.546679208105247554e-02, 1.545890452493090157e-02, 1.545099233547740127e-02, 1.544305552700992075e-02, 1.543509411388539407e-02, 1.542710811049971542e-02, 1.541909753128801498e-02, 1.541106239072434665e-02, 1.540300270332160999e-02, 1.539491848363190238e-02, 1.538680974624598817e-02, 1.537867650579387985e-02, 1.537051877694400187e-02, 1.536233657440384988e-02, 1.535412991291991609e-02, 1.534589880727735105e-02, 1.533764327229988379e-02, 1.532936332285021047e-02, 1.532105897382971850e-02, 1.531273024017843105e-02, 1.530437713687502616e-02, 1.529599967893686442e-02, 1.528759788141989019e-02, 1.527917175941870091e-02, 1.527072132806625918e-02, 1.526224660253424313e-02, 1.525374759803280710e-02, 1.524522432981043583e-02, 1.523667681315428110e-02, 1.522810506338972969e-02, 1.521950909588078507e-02, 1.521088892602942381e-02, 1.520224456927639529e-02, 1.519357604110052259e-02, 1.518488335701895578e-02, 1.517616653258712853e-02, 1.516742558339863323e-02, 1.515866052508539445e-02, 1.514987137331748855e-02, 1.514105814380291640e-02, 1.513222085228803880e-02, 1.512335951455729896e-02, 1.511447414643308541e-02, 1.510556476377585174e-02, 1.509663138248411828e-02, 1.508767401849447735e-02, 1.507869268778105377e-02, 1.506968740635641207e-02, 1.506065819027074294e-02, 1.505160505561224833e-02, 1.504252801850665400e-02, 1.503342709511780624e-02, 1.502430230164724170e-02, 1.501515365433436257e-02, 1.500598116945602023e-02, 1.499678486332696632e-02, 1.498756475229955608e-02, 1.497832085276397732e-02, 1.496905318114759645e-02, 1.495976175391570268e-02, 1.495044658757116278e-02, 1.494110769865410020e-02, 1.493174510374233044e-02, 1.492235881945114598e-02, 1.491294886243324340e-02, 1.490351524937852563e-02, 1.489405799701457207e-02, 1.488457712210619448e-02, 1.487507264145547341e-02, 1.486554457190182414e-02, 1.485599293032187351e-02, 1.484641773362960562e-02, 1.483681899877612939e-02, 1.482719674274954672e-02, 1.481755098257538442e-02, 1.480788173531611719e-02, 1.479818901807139313e-02, 1.478847284797781512e-02, 1.477873324220905886e-02, 1.476897021797589880e-02, 1.475918379252569301e-02, 1.474937398314319324e-02, 1.473954080714979728e-02, 1.472968428190392712e-02, 1.471980442480054149e-02, 1.470990125327172396e-02, 1.469997478478616594e-02, 1.469002503684953102e-02, 1.468005202700378709e-02, 1.467005577282800600e-02, 1.466003629193763508e-02, 1.464999360198506947e-02, 1.463992772065881957e-02, 1.462983866568431067e-02, 1.461972645482343888e-02, 1.460959110587462494e-02, 1.459943263667264242e-02, 1.458925106508878432e-02, 1.457904640903086302e-02, 1.456881868644275928e-02, 1.455856791530497213e-02, 1.454829411363423725e-02, 1.453799729948365531e-02, 1.452767749094232771e-02, 1.451733470613584057e-02, 1.450696896322585874e-02, 1.449658028041036877e-02, 1.448616867592304215e-02, 1.447573416803406461e-02, 1.446527677504951155e-02, 1.445479651531174359e-02, 1.444429340719864500e-02, 1.443376746912439397e-02, 1.442321871953908784e-02, 1.441264717692871192e-02, 1.440205285981500417e-02, 1.439143578675562002e-02, 1.438079597634414619e-02, 1.437013344720963932e-02, 1.435944821801716370e-02, 1.434874030746740789e-02, 1.433800973429675586e-02, 1.432725651727718638e-02, 1.431648067521633025e-02, 1.430568222695737315e-02, 1.429486119137918405e-02, 1.428401758739578434e-02, 1.427315143395706774e-02, 1.426226275004816718e-02, 1.425135155468977566e-02, 1.424041786693775076e-02, 1.422946170588347894e-02, 1.421848309065373156e-02, 1.420748204041019820e-02, 1.419645857435019448e-02, 1.418541271170609998e-02, 1.417434447174555773e-02, 1.416325387377117412e-02, 1.415214093712086063e-02, 1.414100568116755628e-02, 1.412984812531937334e-02, 1.411866828901900579e-02, 1.410746619174460884e-02, 1.409624185300900091e-02, 1.408499529236034026e-02, 1.407372652938094701e-02, 1.406243558368856436e-02, 1.405112247493558834e-02, 1.403978722280920140e-02, 1.402842984703122318e-02, 1.401705036735828927e-02, 1.400564880358188408e-02, 1.399422517552763139e-02, 1.398277950305627446e-02, 1.397131180606284162e-02, 1.395982210447712854e-02, 1.394831041826316564e-02, 1.393677676741966222e-02, 1.392522117197964732e-02, 1.391364365201078375e-02, 1.390204422761461521e-02, 1.389042291892749088e-02, 1.387877974611987676e-02, 1.386711472939656381e-02, 1.385542788899643551e-02, 1.384371924519267431e-02, 1.383198881829262109e-02, 1.382023662863787229e-02, 1.380846269660368150e-02, 1.379666704259980420e-02, 1.378484968706988542e-02, 1.377301065049143722e-02, 1.376114995337603467e-02, 1.374926761626908689e-02, 1.373736365975016666e-02, 1.372543810443211873e-02, 1.371349097096202438e-02, 1.370152228002074167e-02, 1.368953205232289159e-02, 1.367752030861633418e-02, 1.366548706968310697e-02, 1.365343235633867912e-02, 1.364135618943222716e-02, 1.362925858984621354e-02, 1.361713957849691389e-02, 1.360499917633406497e-02, 1.359283740434052978e-02, 1.358065428353300366e-02, 1.356844983496124576e-02, 1.355622407970865327e-02, 1.354397703889162995e-02, 1.353170873365999900e-02, 1.351941918519681922e-02, 1.350710841471851158e-02, 1.349477644347413935e-02, 1.348242329274640730e-02, 1.347004898385087412e-02, 1.345765353813630112e-02, 1.344523697698422372e-02, 1.343279932180936435e-02, 1.342034059405932019e-02, 1.340786081521470538e-02, 1.339536000678864282e-02, 1.338283819032742676e-02, 1.337029538741013254e-02, 1.335773161964838064e-02, 1.334514690868670271e-02, 1.333254127620222239e-02, 1.331991474390491724e-02, 1.330726733353689191e-02, 1.329459906687317436e-02, 1.328190996572145045e-02, 1.326920005192177079e-02, 1.325646934734631653e-02, 1.324371787390010886e-02, 1.323094565352045393e-02, 1.321815270817703995e-02, 1.320533905987164580e-02, 1.319250473063852264e-02, 1.317964974254411635e-02, 1.316677411768722022e-02, 1.315387787819834176e-02, 1.314096104624047981e-02, 1.312802364400877768e-02, 1.311506569373011889e-02, 1.310208721766359038e-02, 1.308908823810024137e-02, 1.307606877736312671e-02, 1.306302885780684896e-02, 1.304996850181824354e-02, 1.303688773181579073e-02, 1.302378657024988104e-02, 1.301066503960240234e-02, 1.299752316238717009e-02, 1.298436096114958908e-02, 1.297117845846680086e-02, 1.295797567694715810e-02, 1.294475263923097579e-02, 1.293150936798987197e-02, 1.291824588592710606e-02, 1.290496221577709136e-02, 1.289165838030588949e-02, 1.287833440231095535e-02, 1.286499030462060281e-02, 1.285162611009484437e-02, 1.283824184162500257e-02, 1.282483752213349655e-02, 1.281141317457354205e-02, 1.279796882192988511e-02, 1.278450448721827823e-02, 1.277102019348554281e-02, 1.275751596380934536e-02, 1.274399182129840567e-02, 1.273044778909241705e-02, 1.271688389036203064e-02, 1.270330014830839058e-02, 1.268969658616382092e-02, 1.267607322719135031e-02, 1.266243009468448824e-02, 1.264876721196770033e-02, 1.263508460239601977e-02, 1.262138228935526241e-02, 1.260766029626126696e-02, 1.259391864656090806e-02, 1.258015736373145448e-02, 1.256637647128062626e-02, 1.255257599274639015e-02, 1.253875595169721968e-02, 1.252491637173190966e-02, 1.251105727647967500e-02, 1.249717868959954181e-02, 1.248328063478122002e-02, 1.246936313574431750e-02, 1.245542621623880845e-02, 1.244146990004447312e-02, 1.242749421097128631e-02, 1.241349917285937410e-02, 1.239948480957835802e-02, 1.238545114502831966e-02, 1.237139820313901302e-02, 1.235732600787014038e-02, 1.234323458321083360e-02, 1.232912395318035842e-02, 1.231499414182767212e-02, 1.230084517323135930e-02, 1.228667707149954345e-02, 1.227248986077006387e-02, 1.225828356521029873e-02, 1.224405820901736108e-02, 1.222981381641728704e-02, 1.221555041166600547e-02, 1.220126801904877246e-02, 1.218696666288019044e-02, 1.217264636750402078e-02, 1.215830715729350822e-02, 1.214394905665111719e-02, 1.212957209000818833e-02, 1.211517628182556122e-02, 1.210076165659307833e-02, 1.208632823882972371e-02, 1.207187605308323967e-02, 1.205740512393060904e-02, 1.204291547597767867e-02, 1.202840713385941278e-02, 1.201388012223901861e-02, 1.199933446580910869e-02, 1.198477018929089942e-02, 1.197018731743435503e-02, 1.195558587501798810e-02, 1.194096588684910240e-02, 1.192632737776376170e-02, 1.191167037262601085e-02, 1.189699489632913172e-02, 1.188230097379447750e-02, 1.186758862997211797e-02, 1.185285788984002595e-02, 1.183810877840495678e-02, 1.182334132070190884e-02, 1.180855554179414783e-02, 1.179375146677298820e-02, 1.177892912075813141e-02, 1.176408852889736754e-02, 1.174922971636676444e-02, 1.173435270836990438e-02, 1.171945753013890756e-02, 1.170454420693370703e-02, 1.168961276404222038e-02, 1.167466322678008435e-02, 1.165969562049095666e-02, 1.164470997054636858e-02, 1.162970630234518715e-02, 1.161468464131439580e-02, 1.159964501290858090e-02, 1.158458744260997507e-02, 1.156951195592824042e-02, 1.155441857840070440e-02, 1.153930733559219851e-02, 1.152417825309517627e-02, 1.150903135652897070e-02, 1.149386667154084739e-02, 1.147868422380505897e-02, 1.146348403902367613e-02, 1.144826614292512867e-02, 1.143303056126577719e-02, 1.141777731982888781e-02, 1.140250644442489074e-02, 1.138721796089109048e-02, 1.137191189509205447e-02, 1.135658827291947080e-02, 1.134124712029132599e-02, 1.132588846315315742e-02, 1.131051232747708191e-02, 1.129511873926214091e-02, 1.127970772453391890e-02, 1.126427930934491631e-02, 1.124883351977428413e-02, 1.123337038192791758e-02, 1.121788992193782641e-02, 1.120239216596307513e-02, 1.118687714018903705e-02, 1.117134487082768052e-02, 1.115579538411705374e-02, 1.114022870632188668e-02, 1.112464486373311058e-02, 1.110904388266815805e-02, 1.109342578947012173e-02, 1.107779061050886103e-02, 1.106213837218023022e-02, 1.104646910090600204e-02, 1.103078282313420082e-02, 1.101507956533884051e-02, 1.099935935402003399e-02, 1.098362221570331303e-02, 1.096786817694057718e-02, 1.095209726430935136e-02, 1.093630950441340684e-02, 1.092050492388137520e-02, 1.090468354936830614e-02, 1.088884540755467867e-02, 1.087299052514670468e-02, 1.085711892887583803e-02, 1.084123064549940424e-02, 1.082532570180019978e-02, 1.080940412458603929e-02, 1.079346594069053970e-02, 1.077751117697258766e-02, 1.076153986031637595e-02, 1.074555201763109299e-02, 1.072954767585144846e-02, 1.071352686193722745e-02, 1.069748960287344661e-02, 1.068143592566967934e-02, 1.066536585736110876e-02, 1.064927942500770025e-02, 1.063317665569442350e-02, 1.061705757653086564e-02, 1.060092221465173609e-02, 1.058477059721651785e-02, 1.056860275140950912e-02, 1.055241870443931161e-02, 1.053621848353957988e-02, 1.052000211596862585e-02, 1.050376962900899901e-02, 1.048752104996807794e-02, 1.047125640617758285e-02, 1.045497572499389828e-02, 1.043867903379723343e-02, 1.042236635999258150e-02, 1.040603773100938316e-02, 1.038969317430115183e-02, 1.037333271734520480e-02, 1.035695638764357225e-02, 1.034056421272217322e-02, 1.032415622013110879e-02, 1.030773243744427525e-02, 1.029129289225973881e-02, 1.027483761219941984e-02, 1.025836662490934442e-02, 1.024187995805881865e-02, 1.022537763934141912e-02, 1.020885969647446559e-02, 1.019232615719868097e-02, 1.017577704927863022e-02, 1.015921240050253818e-02, 1.014263223868221153e-02, 1.012603659165254265e-02, 1.010942548727238564e-02, 1.009279895342385727e-02, 1.007615701801245836e-02, 1.005949970896685697e-02, 1.004282705423920757e-02, 1.002613908180480240e-02, 1.000943581966230733e-02, 9.992717295833022928e-03, 9.975983538361805555e-03, 9.959234575316465443e-03, 9.942470434787843009e-03, 9.925691144889448037e-03, 9.908896733758011319e-03, 9.892087229553191488e-03, 9.875262660456905414e-03, 9.858423054674316996e-03, 9.841568440433304601e-03, 9.824698845984499232e-03, 9.807814299600516039e-03, 9.790914829577191184e-03, 9.774000464232686716e-03, 9.757071231907729972e-03, 9.740127160965176417e-03, 9.723168279790648030e-03, 9.706194616791853289e-03, 9.689206200399138810e-03, 9.672203059064424235e-03, 9.655185221262439083e-03, 9.638152715489928246e-03, 9.621105570265478524e-03, 9.604043814130026890e-03, 9.586967475646416409e-03, 9.569876583399611336e-03, 9.552771165995933844e-03, 9.535651252064137814e-03, 9.518516870254612600e-03, 9.501368049239613742e-03, 9.484204817712787658e-03, 9.467027204389768386e-03, 9.449835238007750840e-03, 9.432628947325640001e-03, 9.415408361123320594e-03, 9.398173508202758639e-03, 9.380924417387094191e-03, 9.363661117521003899e-03, 9.346383637470220482e-03, 9.329092006121975089e-03, 9.311786252384943521e-03, 9.294466405188205396e-03, 9.277132493482952852e-03, 9.259784546240958786e-03, 9.242422592455300234e-03, 9.225046661139475399e-03, 9.207656781328548562e-03, 9.190252982078307015e-03, 9.172835292465437995e-03, 9.155403741587164398e-03, 9.137958358561749581e-03, 9.120499172528077556e-03, 9.103026212645932286e-03, 9.085539508095031441e-03, 9.068039088076313564e-03, 9.050524981810989175e-03, 9.032997218540884249e-03, 9.015455827527897245e-03, 8.997900838054639222e-03, 8.980332279424105973e-03, 8.962750180958968527e-03, 8.945154572002726734e-03, 8.927545481918881809e-03, 8.909922940091111535e-03, 8.892286975922900766e-03, 8.874637618838060113e-03, 8.856974898280250627e-03, 8.839298843713287376e-03, 8.821609484620296371e-03, 8.803906850504776213e-03, 8.786190970889852167e-03, 8.768461875318440957e-03, 8.750719593352872597e-03, 8.732964154575421217e-03, 8.715195588588027509e-03, 8.697413925011485136e-03, 8.679619193486965562e-03, 8.661811423674557406e-03, 8.643990645254100852e-03, 8.626156887924089564e-03, 8.608310181403008160e-03, 8.590450555428303520e-03, 8.572578039756717852e-03, 8.554692664163912261e-03, 8.536794458444850117e-03, 8.518883452413516036e-03, 8.500959675902980059e-03, 8.483023158764809585e-03, 8.465073930869938465e-03, 8.447112022108032095e-03, 8.429137462387574151e-03, 8.411150281635543929e-03, 8.393150509797935033e-03, 8.375138176839434442e-03, 8.357113312742761591e-03, 8.339075947509799400e-03, 8.321026111160676614e-03, 8.302963833734128621e-03, 8.284889145286959689e-03, 8.266802075894617158e-03, 8.248702655650747353e-03, 8.230590914667473140e-03, 8.212466883074481458e-03, 8.194330591020242832e-03, 8.176182068670991357e-03, 8.158021346211560831e-03, 8.139848453843839121e-03, 8.121663421788351961e-03, 8.103466280283386919e-03, 8.085257059585100950e-03, 8.067035789967246309e-03, 8.048802501721543518e-03, 8.030557225157523502e-03, 8.012299990601795541e-03, 7.994030828399162694e-03, 7.975749768911766582e-03, 7.957456842519338922e-03, 7.939152079618760904e-03, 7.920835510624623516e-03, 7.902507165968774769e-03, 7.884167076100517466e-03, 7.865815271485844182e-03, 7.847451782608511062e-03, 7.829076639969245049e-03, 7.810689874085958127e-03, 7.792291515493289349e-03, 7.773881594743195511e-03, 7.755460142404470639e-03, 7.737027189063039150e-03, 7.718582765320944512e-03, 7.700126901797762179e-03, 7.681659629129642883e-03, 7.663180977969128761e-03, 7.644690978985715403e-03, 7.626189662865377403e-03, 7.607677060310829437e-03, 7.589153202040675381e-03, 7.570618118790561034e-03, 7.552071841312182725e-03, 7.533514400374155540e-03, 7.514945826760387020e-03, 7.496366151271754638e-03, 7.477775404725120478e-03, 7.459173617953587104e-03, 7.440560821806015308e-03, 7.421937047147611315e-03, 7.403302324859660499e-03, 7.384656685838747632e-03, 7.366000160997972050e-03, 7.347332781266036061e-03, 7.328654577587521632e-03, 7.309965580922455838e-03, 7.291265822246788784e-03, 7.272555332552028441e-03, 7.253834142845457487e-03, 7.235102284149232989e-03, 7.216359787501625857e-03, 7.197606683956130069e-03, 7.178843004581628336e-03, 7.160068780462096327e-03, 7.141284042697049368e-03, 7.122488822401117428e-03, 7.103683150704249820e-03, 7.084867058750957125e-03, 7.066040577701369375e-03, 7.047203738730549102e-03, 7.028356573028197302e-03, 7.009499111799219820e-03, 6.990631386263285868e-03, 6.971753427655030116e-03, 6.952865267223273804e-03, 6.933966936232107206e-03, 6.915058465959982373e-03, 6.896139887700464266e-03, 6.877211232760678181e-03, 6.858272532463025387e-03, 6.839323818144126682e-03, 6.820365121155066990e-03, 6.801396472860968614e-03, 6.782417904641556763e-03, 6.763429447890666885e-03, 6.744431134016539570e-03, 6.725422994440917630e-03, 6.706405060600232650e-03, 6.687377363944844305e-03, 6.668339935938748068e-03, 6.649292808060239604e-03, 6.630236011801312820e-03, 6.611169578667997274e-03, 6.592093540179495142e-03, 6.573007927869322677e-03, 6.553912773284438498e-03, 6.534808107985553248e-03, 6.515693963546569274e-03, 6.496570371555271048e-03, 6.477437363612738828e-03, 6.458294971333677394e-03, 6.439143226345509646e-03, 6.419982160289612605e-03, 6.400811804820365908e-03, 6.381632191605462329e-03, 6.362443352325414248e-03, 6.343245318674145192e-03, 6.324038122358707943e-03, 6.304821795098532536e-03, 6.285596368626470559e-03, 6.266361874688397039e-03, 6.247118345042885178e-03, 6.227865811460754457e-03, 6.208604305726204281e-03, 6.189333859635858144e-03, 6.170054504999113176e-03, 6.150766273637567685e-03, 6.131469197385666474e-03, 6.112163308090227259e-03, 6.092848637610684404e-03, 6.073525217818161702e-03, 6.054193080596750876e-03, 6.034852257842707526e-03, 6.015502781464113734e-03, 5.996144683381567607e-03, 5.976777995527622969e-03, 5.957402749847125027e-03, 5.938018978296244130e-03, 5.918626712843703085e-03, 5.899225985469953165e-03, 5.879816828167348450e-03, 5.860399272939695661e-03, 5.840973351802876065e-03, 5.821539096784318981e-03, 5.802096539923282809e-03, 5.782645713269978123e-03, 5.763186648886762901e-03, 5.743719378847233527e-03, 5.724243935236501477e-03, 5.704760350150739692e-03, 5.685268655697742028e-03, 5.665768883996650900e-03, 5.646261067177150636e-03, 5.626745237380645359e-03, 5.607221426759729024e-03, 5.587689667477905263e-03, 5.568149991709164977e-03, 5.548602431639054061e-03, 5.529047019463811247e-03, 5.509483787390580603e-03, 5.489912767637003879e-03, 5.470333992431721838e-03, 5.450747494013961393e-03, 5.431153304633810561e-03, 5.411551456551219261e-03, 5.391941982037353268e-03, 5.372324913373596744e-03, 5.352700282851854084e-03, 5.333068122774052046e-03, 5.313428465452746906e-03, 5.293781343210854709e-03, 5.274126788380841153e-03, 5.254464833305933294e-03, 5.234795510339293814e-03, 5.215118851844167611e-03, 5.195434890193486276e-03, 5.175743657770425811e-03, 5.156045186967933916e-03, 5.136339510189024890e-03, 5.116626659845783034e-03, 5.096906668360700124e-03, 5.077179568165687482e-03, 5.057445391702424659e-03, 5.037704171421754015e-03, 5.017955939784400632e-03, 4.998200729260638374e-03, 4.978438572329360948e-03, 4.958669501479803614e-03, 4.938893549209949843e-03, 4.919110748027346637e-03, 4.899321130448057622e-03, 4.879524728997938939e-03, 4.859721576211739787e-03, 4.839911704633302787e-03, 4.820095146815119892e-03, 4.800271935318953416e-03, 4.780442102715314751e-03, 4.760605681583716768e-03, 4.740762704511830745e-03, 4.720913204096631281e-03, 4.701057212943565364e-03, 4.681194763666779619e-03, 4.661325888888625049e-03, 4.641450621240277193e-03, 4.621568993361493266e-03, 4.601681037899695362e-03, 4.581786787511359094e-03, 4.561886274860964957e-03, 4.541979532621379968e-03, 4.522066593473260919e-03, 4.502147490105762144e-03, 4.482222255215944848e-03, 4.462290921509151805e-03, 4.442353521697982137e-03, 4.422410088503598430e-03, 4.402460654654839420e-03, 4.382505252888392600e-03, 4.362543915948399569e-03, 4.342576676587017216e-03, 4.322603567563906846e-03, 4.302624621646448412e-03, 4.282639871609197554e-03, 4.262649350234525708e-03, 4.242653090312341682e-03, 4.222651124639268533e-03, 4.202643486019883891e-03, 4.182630207265814436e-03, 4.162611321196011717e-03, 4.142586860636242145e-03, 4.122556858419712360e-03, 4.102521347386554884e-03, 4.082480360384127364e-03, 4.062433930266048064e-03, 4.042382089893505580e-03, 4.022324872134277855e-03, 4.002262309863040095e-03, 3.982194435960859959e-03, 3.962121283315820329e-03, 3.942042884822489351e-03, 3.921959273382232686e-03, 3.901870481902257239e-03, 3.881776543296896597e-03, 3.861677490486761875e-03, 3.841573356398487148e-03, 3.821464173965341375e-03, 3.801349976126718391e-03, 3.781230795828423568e-03, 3.761106666021715381e-03, 3.740977619664610787e-03, 3.720843689720817506e-03, 3.700704909160580560e-03, 3.680561310959038629e-03, 3.660412928097987826e-03, 3.640259793564820049e-03, 3.620101940352778852e-03, 3.599939401460487166e-03, 3.579772209892546648e-03, 3.559600398659265759e-03, 3.539424000775829703e-03, 3.519243049263562004e-03, 3.499057577149030252e-03, 3.478867617464263817e-03, 3.458673203246302816e-03, 3.438474367537775779e-03, 3.418271143386422597e-03, 3.398063563845383356e-03, 3.377851661972225156e-03, 3.357635470830251396e-03, 3.337415023487523384e-03, 3.317190353017202952e-03, 3.296961492496959176e-03, 3.276728475009686118e-03, 3.256491333642914324e-03, 3.236250101489163405e-03, 3.216004811644932425e-03, 3.195755497212028270e-03, 3.175502191296728210e-03, 3.155244927009469378e-03, 3.134983737465504936e-03, 3.114718655784371511e-03, 3.094449715090206651e-03, 3.074176948510745286e-03, 3.053900389178668909e-03, 3.033620070230498827e-03, 3.013336024807475658e-03, 2.993048286053889232e-03, 2.972756887118871427e-03, 2.952461861155280740e-03, 2.932163241320050965e-03, 2.911861060773602260e-03, 2.891555352680535897e-03, 2.871246150209096504e-03, 2.850933486531461759e-03, 2.830617394822778320e-03, 2.810297908262471105e-03, 2.789975060033416700e-03, 2.769648883321615494e-03, 2.749319411316860848e-03, 2.728986677212218246e-03, 2.708650714204295477e-03, 2.688311555492308054e-03, 2.667969234279369845e-03, 2.647623783771529005e-03, 2.627275237178065912e-03, 2.606923627710987495e-03, 2.586568988585631352e-03, 2.566211353020172222e-03, 2.545850754235923826e-03, 2.525487225456347906e-03, 2.505120799908391264e-03, 2.484751510821491330e-03, 2.464379391427890583e-03, 2.444004474962111362e-03, 2.423626794661597715e-03, 2.403246383766414855e-03, 2.382863275518425604e-03, 2.362477503162566713e-03, 2.342089099945812367e-03, 2.321698099117992971e-03, 2.301304533930157575e-03, 2.280908437636371480e-03, 2.260509843492578257e-03, 2.240108784756959272e-03, 2.219705294689358621e-03, 2.199299406551945366e-03, 2.178891153608712196e-03, 2.158480569125728697e-03, 2.138067686370223250e-03, 2.117652538611842009e-03, 2.097235159121846153e-03, 2.076815581172805278e-03, 2.056393838039214522e-03, 2.035969962997027927e-03, 2.015543989323893056e-03, 1.995115950298229860e-03, 1.974685879200515672e-03, 1.954253809312332842e-03, 1.933819773916660174e-03, 1.913383806297340797e-03, 1.892945939739742013e-03, 1.872506207530229456e-03, 1.852064642956437277e-03, 1.831621279306344403e-03, 1.811176149869555630e-03, 1.790729287936347744e-03, 1.770280726797950760e-03, 1.749830499746040519e-03, 1.729378640073381398e-03, 1.708925181073521439e-03, 1.688470156039957940e-03, 1.668013598267326829e-03, 1.647555541050900680e-03, 1.627096017686303128e-03, 1.606635061469000600e-03, 1.586172705695494288e-03, 1.565708983662368213e-03, 1.545243928666567438e-03, 1.524777574004885236e-03, 1.504309952974601690e-03, 1.483841098872976279e-03, 1.463371044997515032e-03, 1.442899824645034208e-03, 1.422427471112951147e-03, 1.401954017698326923e-03, 1.381479497698153217e-03, 1.361003944408848820e-03, 1.340527391126877842e-03, 1.320049871148475410e-03, 1.299571417768795268e-03, 1.279092064283215806e-03, 1.258611843986396153e-03, 1.238130790172530752e-03, 1.217648936134867752e-03, 1.197166315166330259e-03, 1.176682960558999387e-03, 1.156198905604410897e-03, 1.135714183592589389e-03, 1.115228827813346309e-03, 1.094742871555346884e-03, 1.074256348106361223e-03, 1.053769290752782934e-03, 1.033281732780236490e-03, 1.012793707473318540e-03, 9.923052481147270811e-04, 9.718163879864696875e-04, 9.513271603693537228e-04, 9.308375985426996756e-04, 9.103477357838423182e-04, 8.898576053693160650e-04, 8.693672405738990311e-04, 8.488766746708968766e-04, 8.283859409316385444e-04, 8.078950726260996761e-04, 7.874041030223946636e-04, 7.669130653870705758e-04, 7.464219929841279079e-04, 7.259309190763510054e-04, 7.054398769243309811e-04, 6.849488997867600763e-04, 6.644580209199139539e-04, 6.439672735782957149e-04, 6.234766910143370918e-04, 6.029863064775585176e-04, 5.824961532158799259e-04, 5.620062644746567871e-04, 5.415166734969643859e-04, 5.210274135230896558e-04, 5.005385177911638112e-04, 4.800500195366507123e-04, 4.595619519926341786e-04, 4.390743483888521277e-04, 4.185872419530159406e-04, 3.981006659098382575e-04, 3.776146534813225688e-04, 3.571292378862567294e-04, 3.366444523408418507e-04, 3.161603300581807734e-04, 2.956769042484543052e-04, 2.751942081184089893e-04, 2.547122748719928258e-04, 2.342311377100678507e-04, 2.137508298295614487e-04, 1.932713844247806233e-04, 1.727928346864441840e-04, 1.523152138019752909e-04, 1.318385549549869467e-04, 1.113628913259167696e-04, 9.088825609151351568e-05, 7.041468242512944730e-05, 4.994220349575069718e-05, 2.947085246931510603e-05, 9.000662507744902491e-06, -1.146833323076434687e-05, -3.193610159225385636e-05, -5.240260942637009034e-05, -7.286782358687535297e-05, -9.333171093135816737e-05, -1.137942383222003822e-04, -1.342553726252611128e-04, -1.547150807107284501e-04, -1.751733294534023148e-04, -1.956300857320617990e-04, -2.160853164299759467e-04, -2.365389884346161969e-04, -2.569910686386191277e-04, -2.774415239384734060e-04, -2.978903212354861644e-04, -3.183374274354921910e-04, -3.387828094493644526e-04, -3.592264341923841740e-04, -3.796682685847509002e-04, -4.001082795514032783e-04, -4.205464340225332403e-04, -4.409826989329533706e-04, -4.614170412223802089e-04, -4.818494278362805234e-04, -5.022798257245645768e-04, -5.227082018425407116e-04, -5.431345231506377403e-04, -5.635587566149098584e-04, -5.839808692063983746e-04, -6.044008279016549467e-04, -6.248185996824452693e-04, -6.452341515367093511e-04, -6.656474504572545102e-04, -6.860584634427215056e-04, -7.064671574972895265e-04, -7.268734996311869596e-04, -7.472774568600627689e-04, -7.676789962054955284e-04, -7.880780846947037233e-04, -8.084746893615091723e-04, -8.288687772450246006e-04, -8.492603153905043051e-04, -8.696492708496234448e-04, -8.900356106798533234e-04, -9.104193019449548100e-04, -9.308003117147127092e-04, -9.511786070658791257e-04, -9.715541550808752405e-04, -9.919269228488532871e-04, -1.012296877464855969e-03, -1.032663986031448185e-03, -1.053028215656963982e-03, -1.073389533456565060e-03, -1.093747906551969726e-03, -1.114103302071953357e-03, -1.134455687151714361e-03, -1.154805028933388739e-03, -1.175151294565764072e-03, -1.195494451205235138e-03, -1.215834466014493109e-03, -1.236171306163377304e-03, -1.256504938829151007e-03, -1.276835331195887808e-03, -1.297162450454949741e-03, -1.317486263804725985e-03, -1.337806738451587183e-03, -1.358123841608564883e-03, -1.378437540496321896e-03, -1.398747802342870843e-03, -1.419054594384061172e-03, -1.439357883862974396e-03, -1.459657638030404389e-03, -1.479953824144602387e-03, -1.500246409472204192e-03, -1.520535361286948651e-03, -1.540820646870610282e-03, -1.561102233512744707e-03, -1.581380088511162010e-03, -1.601654179171316771e-03, -1.621924472806594289e-03, -1.642190936739136966e-03, -1.662453538298549549e-03, -1.682712244822966857e-03, -1.702967023658208097e-03, -1.723217842159399703e-03, -1.743464667689227816e-03, -1.763707467619011213e-03, -1.783946209328402931e-03, -1.804180860205903750e-03, -1.824411387648240072e-03, -1.844637759060856587e-03, -1.864859941857632212e-03, -1.885077903461849147e-03, -1.905291611304867549e-03, -1.925501032826994847e-03, -1.945706135477740526e-03, -1.965906886715200301e-03, -1.986103254006572200e-03, -2.006295204827836937e-03, -2.026482706664757549e-03, -2.046665727011530000e-03, -2.066844233371782375e-03, -2.087018193258252229e-03, -2.107187574193325648e-03, -2.127352343708368947e-03, -2.147512469344269904e-03, -2.167667918651134621e-03, -2.187818659189243783e-03, -2.207964658527760728e-03, -2.228105884245657354e-03, -2.248242303931466055e-03, -2.268373885183758067e-03, -2.288500595610517673e-03, -2.308622402829441003e-03, -2.328739274468754825e-03, -2.348851178165922444e-03, -2.368958081568713590e-03, -2.389059952334355707e-03, -2.409156758131155915e-03, -2.429248466636764123e-03, -2.449335045539209957e-03, -2.469416462536656431e-03, -2.489492685337870055e-03, -2.509563681661615853e-03, -2.529629419237142650e-03, -2.549689865803915489e-03, -2.569744989112553255e-03, -2.589794756923538468e-03, -2.609839137008166179e-03, -2.629878097148258612e-03, -2.649911605136664322e-03, -2.669939628776628066e-03, -2.689962135882101313e-03, -2.709979094278529375e-03, -2.729990471801590265e-03, -2.749996236298138386e-03, -2.769996355625916565e-03, -2.789990797654046551e-03, -2.809979530262420987e-03, -2.829962521342202584e-03, -2.849939738795545692e-03, -2.869911150536500529e-03, -2.889876724489781092e-03, -2.909836428591683257e-03, -2.929790230789798989e-03, -2.949738099043515936e-03, -2.969680001323397704e-03, -2.989615905611467481e-03, -3.009545779902037237e-03, -3.029469592200510330e-03, -3.049387310523927509e-03, -3.069298902901178554e-03, -3.089204337373553915e-03, -3.109103581993539513e-03, -3.128996604825764333e-03, -3.148883373946730676e-03, -3.168763857445286436e-03, -3.188638023422032258e-03, -3.208505839989806395e-03, -3.228367275273393705e-03, -3.248222297410491895e-03, -3.268070874550400070e-03, -3.287912974854966322e-03, -3.307748566498323189e-03, -3.327577617667371208e-03, -3.347400096561133163e-03, -3.367215971391089319e-03, -3.387025210381964559e-03, -3.406827781770442078e-03, -3.426623653806104911e-03, -3.446412794751195670e-03, -3.466195172881056299e-03, -3.485970756483541301e-03, -3.505739513859488718e-03, -3.525501413322493748e-03, -3.545256423199770468e-03, -3.565004511830922786e-03, -3.584745647568866878e-03, -3.604479798779570109e-03, -3.624206933842487321e-03, -3.643927021150021334e-03, -3.663640029107957490e-03, -3.683345926135217756e-03, -3.703044680664880749e-03, -3.722736261142487336e-03, -3.742420636027394588e-03, -3.762097773793079795e-03, -3.781767642925923118e-03, -3.801430211926199853e-03, -3.821085449307753436e-03, -3.840733323598513691e-03, -3.860373803339882740e-03, -3.880006857087206842e-03, -3.899632453409517495e-03, -3.919250560890465140e-03, -3.938861148127022899e-03, -3.958464183730445868e-03, -3.978059636325947598e-03, -3.997647474553266481e-03, -4.017227667065961447e-03, -4.036800182531998307e-03, -4.056364989633373316e-03, -4.075922057067135791e-03, -4.095471353544034160e-03, -4.115012847789400671e-03, -4.134546508543390786e-03, -4.154072304560364748e-03, -4.173590204609416675e-03, -4.193100177474030216e-03, -4.212602191953087293e-03, -4.232096216859535832e-03, -4.251582221021326519e-03, -4.271060173281184674e-03, -4.290530042497019657e-03, -4.309991797541388829e-03, -4.329445407301939046e-03, -4.348890840681251396e-03, -4.368328066597342539e-03, -4.387757053983017651e-03, -4.407177771786205227e-03, -4.426590188970704748e-03, -4.445994274514953291e-03, -4.465389997412960547e-03, -4.484777326674001773e-03, -4.504156231323134738e-03, -4.523526680400578696e-03, -4.542888642962200976e-03, -4.562242088079209064e-03, -4.581586984839161950e-03, -4.600923302344581481e-03, -4.620251009714003605e-03, -4.639570076081613210e-03, -4.658880470597737654e-03, -4.678182162428316804e-03, -4.697475120755264730e-03, -4.716759314776299700e-03, -4.736034713705826286e-03, -4.755301286773645601e-03, -4.774559003225825257e-03, -4.793807832324905802e-03, -4.813047743349370758e-03, -4.832278705594054286e-03, -4.851500688369899186e-03, -4.870713661004878042e-03, -4.889917592842752889e-03, -4.909112453243923493e-03, -4.928298211585254752e-03, -4.947474837260475676e-03, -4.966642299679603460e-03, -4.985800568269430945e-03, -5.004949612473375692e-03, -5.024089401751909330e-03, -5.043219905582032800e-03, -5.062341093457659730e-03, -5.081452934889435155e-03, -5.100555399405589004e-03, -5.119648456550733064e-03, -5.138732075886609518e-03, -5.157806226992398858e-03, -5.176870879464091045e-03, -5.195926002915018938e-03, -5.214971566975505277e-03, -5.234007541293843671e-03, -5.253033895534992351e-03, -5.272050599381551683e-03, -5.291057622533434576e-03, -5.310054934708370415e-03, -5.329042505641267552e-03, -5.348020305084770151e-03, -5.366988302808919920e-03, -5.385946468602071172e-03, -5.404894772269689535e-03, -5.423833183635185483e-03, -5.442761672539749539e-03, -5.461680208842682738e-03, -5.480588762420954274e-03, -5.499487303169355024e-03, -5.518375801001349293e-03, -5.537254225847791991e-03, -5.556122547658001558e-03, -5.574980736398905609e-03, -5.593828762056609130e-03, -5.612666594634692710e-03, -5.631494204155275060e-03, -5.650311560658712040e-03, -5.669118634204067635e-03, -5.687915394868542363e-03, -5.706701812747893079e-03, -5.725477857956264710e-03, -5.744243500626957863e-03, -5.762998710911327281e-03, -5.781743458979469660e-03, -5.800477715020536766e-03, -5.819201449242157771e-03, -5.837914631870859926e-03, -5.856617233151841309e-03, -5.875309223349832986e-03, -5.893990572747933275e-03, -5.912661251648413524e-03, -5.931321230372538569e-03, -5.949970479260941435e-03, -5.968608968673146283e-03, -5.987236668987950053e-03, -6.005853550603186541e-03, -6.024459583936600700e-03, -6.043054739424668156e-03, -6.061638987523427016e-03, -6.080212298708287909e-03, -6.098774643474418229e-03, -6.117325992336195700e-03, -6.135866315827485061e-03, -6.154395584502385733e-03, -6.172913768934043532e-03, -6.191420839715590027e-03, -6.209916767459466858e-03, -6.228401522798776221e-03, -6.246875076385807225e-03, -6.265337398892917992e-03, -6.283788461012306675e-03, -6.302228233456498054e-03, -6.320656686957716423e-03, -6.339073792268400814e-03, -6.357479520160878861e-03, -6.375873841428270593e-03, -6.394256726883341783e-03, -6.412628147359290647e-03, -6.430988073709547476e-03, -6.449336476808201386e-03, -6.467673327549447806e-03, -6.485998596847805317e-03, -6.504312255638934441e-03, -6.522614274878424205e-03, -6.540904625542611796e-03, -6.559183278628448986e-03, -6.577450205153797906e-03, -6.595705376156973943e-03, -6.613948762697201104e-03, -6.632180335854212169e-03, -6.650400066729354569e-03, -6.668607926444147967e-03, -6.686803886141363257e-03, -6.704987916984624444e-03, -6.723159990158909978e-03, -6.741320076869999380e-03, -6.759468148344684874e-03, -6.777604175831584109e-03, -6.795728130600009985e-03, -6.813839983940432089e-03, -6.831939707164799355e-03, -6.850027271606873996e-03, -6.868102648621233174e-03, -6.886165809584104264e-03, -6.904216725893172306e-03, -6.922255368967861026e-03, -6.940281710248981557e-03, -6.958295721199044687e-03, -6.976297373302019732e-03, -6.994286638064231391e-03, -7.012263487013142838e-03, -7.030227891698262108e-03, -7.048179823690859346e-03, -7.066119254584354512e-03, -7.084046155993891508e-03, -7.101960499556454406e-03, -7.119862256931702715e-03, -7.137751399800723248e-03, -7.155627899867002435e-03, -7.173491728856038613e-03, -7.191342858515889329e-03, -7.209181260616553781e-03, -7.227006906950424713e-03, -7.244819769332064632e-03, -7.262619819599020268e-03, -7.280407029610698466e-03, -7.298181371249147682e-03, -7.315942816418898390e-03, -7.333691337047291807e-03, -7.351426905084034076e-03, -7.369149492501579635e-03, -7.386859071294862335e-03, -7.404555613482297245e-03, -7.422239091104179502e-03, -7.439909476223932443e-03, -7.457566740928361741e-03, -7.475210857326602433e-03, -7.492841797550956785e-03, -7.510459533756642762e-03, -7.528064038122229441e-03, -7.545655282849087105e-03, -7.563233240161829594e-03, -7.580797882308048900e-03, -7.598349181559176449e-03, -7.615887110209315636e-03, -7.633411640576109186e-03, -7.650922745000396548e-03, -7.668420395846790687e-03, -7.685904565503043177e-03, -7.703375226380436251e-03, -7.720832350913676111e-03, -7.738275911561581615e-03, -7.755705880806022627e-03, -7.773122231152632122e-03, -7.790524935131005677e-03, -7.807913965294274727e-03, -7.825289294219384129e-03, -7.842650894506978526e-03, -7.859998738782148289e-03, -7.877332799693291532e-03, -7.894653049912993617e-03, -7.911959462137818991e-03, -7.929252009088529757e-03, -7.946530663509802916e-03, -7.963795398170511394e-03, -7.981046185863526279e-03, -7.998282999406611943e-03, -8.015505811640954992e-03, -8.032714595432277963e-03, -8.049909323671186265e-03, -8.067089969272104796e-03, -8.084256505174060303e-03, -8.101408904340473213e-03, -8.118547139759554887e-03, -8.135671184443847917e-03, -8.152781011430517560e-03, -8.169876593781247656e-03, -8.186957904582953596e-03, -8.204024916946727614e-03, -8.221077604008582979e-03, -8.238115938929353385e-03, -8.255139894894909791e-03, -8.272149445115803065e-03, -8.289144562827579707e-03, -8.306125221290603169e-03, -8.323091393790860507e-03, -8.340043053638763679e-03, -8.356980174170011710e-03, -8.373902728745660079e-03, -8.390810690751766832e-03, -8.407704033599616364e-03, -8.424582730725686461e-03, -8.441446755592241571e-03, -8.458296081686394324e-03, -8.475130682520841049e-03, -8.491950531633627591e-03, -8.508755602588584724e-03, -8.525545868974696712e-03, -8.542321304406725810e-03, -8.559081882524919097e-03, -8.575827576995358886e-03, -8.592558361509683440e-03, -8.609274209785263907e-03, -8.625975095565077688e-03, -8.642660992618464780e-03, -8.659331874740079996e-03, -8.675987715750588594e-03, -8.692628489496805055e-03, -8.709254169851290625e-03, -8.725864730712733219e-03, -8.742460146005650787e-03, -8.759040389681237854e-03, -8.775605435716303873e-03, -8.792155258113951502e-03, -8.808689830903472517e-03, -8.825209128140708639e-03, -8.841713123907468663e-03, -8.858201792312062756e-03, -8.874675107488939896e-03, -8.891133043599591668e-03, -8.907575574831360504e-03, -8.924002675398298376e-03, -8.940414319540941276e-03, -8.956810481526664841e-03, -8.973191135649162195e-03, -8.989556256228766612e-03, -9.005905817613034381e-03, -9.022239794175683156e-03, -9.038558160317435031e-03, -9.054860890465787557e-03, -9.071147959075312114e-03, -9.087419340627247988e-03, -9.103675009629837167e-03, -9.119914940618258428e-03, -9.136139108154960400e-03, -9.152347486829201864e-03, -9.168540051257407369e-03, -9.184716776083005907e-03, -9.200877635977126531e-03, -9.217022605637585284e-03, -9.233151659789544385e-03, -9.249264773185739488e-03, -9.265361920606009563e-03, -9.281443076857607416e-03, -9.297508216775055706e-03, -9.313557315220887672e-03, -9.329590347084575075e-03, -9.345607287283308820e-03, -9.361608110761811610e-03, -9.377592792492586010e-03, -9.393561307475629951e-03, -9.409513630738643164e-03, -9.425449737336962994e-03, -9.441369602354154206e-03, -9.457273200901084378e-03, -9.473160508116631670e-03, -9.489031499167533898e-03, -9.504886149248657420e-03, -9.520724433582566926e-03, -9.536546327419804722e-03, -9.552351806039404217e-03, -9.568140844747973980e-03, -9.583913418880559906e-03, -9.599669503799878462e-03, -9.615409074897595179e-03, -9.631132107593063513e-03, -9.646838577334049952e-03, -9.662528459596541469e-03, -9.678201729885160115e-03, -9.693858363732626993e-03, -9.709498336700143895e-03, -9.725121624377263199e-03, -9.740728202382543596e-03, -9.756318046362524865e-03, -9.771891131992517174e-03, -9.787447434976372096e-03, -9.802986931046820882e-03, -9.818509595965072001e-03, -9.834015405520910025e-03, -9.849504335533438085e-03, -9.864976361850030101e-03, -9.880431460347123551e-03, -9.895869606929829157e-03, -9.911290777532550181e-03, -9.926694948118323231e-03, -9.942082094679284901e-03, -9.957452193236352583e-03, -9.972805219840116114e-03, -9.988141150569705001e-03, -1.000345996153360201e-02, -1.001876162886928580e-02, -1.003404612874374442e-02, -1.004931343735303295e-02, -1.006456353092229951e-02, -1.007979638570657629e-02, -1.009501197798970754e-02, -1.011021028408526194e-02, -1.012539128033571739e-02, -1.014055494311385912e-02, -1.015570124882137631e-02, -1.017083017388958031e-02, -1.018594169477941500e-02, -1.020103578798161464e-02, -1.021611243001626680e-02, -1.023117159743333789e-02, -1.024621326681224298e-02, -1.026123741476275136e-02, -1.027624401792388148e-02, -1.029123305296462086e-02, -1.030620449658381857e-02, -1.032115832551040030e-02, -1.033609451650301450e-02, -1.035101304635022319e-02, -1.036591389187105708e-02, -1.038079702991414818e-02, -1.039566243735830231e-02, -1.041051009111246609e-02, -1.042533996811587961e-02, -1.044015204533777288e-02, -1.045494629977772316e-02, -1.046972270846533923e-02, -1.048448124846107325e-02, -1.049922189685517128e-02, -1.051394463076846079e-02, -1.052864942735201766e-02, -1.054333626378768478e-02, -1.055800511728748232e-02, -1.057265596509402925e-02, -1.058728878448035246e-02, -1.060190355275057381e-02, -1.061650024723872696e-02, -1.063107884530979652e-02, -1.064563932435973193e-02, -1.066018166181481944e-02, -1.067470583513222167e-02, -1.068921182179980063e-02, -1.070369959933650111e-02, -1.071816914529188404e-02, -1.073262043724647168e-02, -1.074705345281152906e-02, -1.076146816962984115e-02, -1.077586456537463384e-02, -1.079024261775033029e-02, -1.080460230449239653e-02, -1.081894360336754790e-02, -1.083326649217349752e-02, -1.084757094873908291e-02, -1.086185695092430244e-02, -1.087612447662079582e-02, -1.089037350375102534e-02, -1.090460401026881881e-02, -1.091881597415956563e-02, -1.093300937343985070e-02, -1.094718418615765396e-02, -1.096134039039229312e-02, -1.097547796425507767e-02, -1.098959688588822294e-02, -1.100369713346573131e-02, -1.101777868519310082e-02, -1.103184151930763739e-02, -1.104588561407808707e-02, -1.105991094780488411e-02, -1.107391749882010584e-02, -1.108790524548801046e-02, -1.110187416620405862e-02, -1.111582423939561602e-02, -1.112975544352235759e-02, -1.114366775707534632e-02, -1.115756115857772200e-02, -1.117143562658443751e-02, -1.118529113968269248e-02, -1.119912767649144589e-02, -1.121294521566179418e-02, -1.122674373587671109e-02, -1.124052321585173458e-02, -1.125428363433410989e-02, -1.126802497010341922e-02, -1.128174720197127993e-02, -1.129545030878186147e-02, -1.130913426941136668e-02, -1.132279906276826946e-02, -1.133644466779336682e-02, -1.135007106346014837e-02, -1.136367822877414752e-02, -1.137726614277332488e-02, -1.139083478452834926e-02, -1.140438413314216921e-02, -1.141791416775026977e-02, -1.143142486752067762e-02, -1.144491621165431329e-02, -1.145838817938431807e-02, -1.147184074997663859e-02, -1.148527390272982736e-02, -1.149868761697541396e-02, -1.151208187207735691e-02, -1.152545664743253109e-02, -1.153881192247046585e-02, -1.155214767665406310e-02, -1.156546388947836575e-02, -1.157876054047174419e-02, -1.159203760919527183e-02, -1.160529507524341031e-02, -1.161853291824325139e-02, -1.163175111785486569e-02, -1.164494965377165826e-02, -1.165812850571992451e-02, -1.167128765345917980e-02, -1.168442707678181425e-02, -1.169754675551400690e-02, -1.171064666951460685e-02, -1.172372679867584623e-02, -1.173678712292318925e-02, -1.174982762221568090e-02, -1.176284827654534675e-02, -1.177584906593780525e-02, -1.178882997045177516e-02, -1.180179097017996538e-02, -1.181473204524802721e-02, -1.182765317581525692e-02, -1.184055434207443441e-02, -1.185343552425203659e-02, -1.186629670260800837e-02, -1.187913785743571586e-02, -1.189195896906261596e-02, -1.190476001784950173e-02, -1.191754098419088755e-02, -1.193030184851501078e-02, -1.194304259128402268e-02, -1.195576319299370728e-02, -1.196846363417373126e-02, -1.198114389538748083e-02, -1.199380395723249719e-02, -1.200644380033999252e-02, -1.201906340537513100e-02, -1.203166275303700281e-02, -1.204424182405898491e-02, -1.205680059920818774e-02, -1.206933905928575176e-02, -1.208185718512716673e-02, -1.209435495760176511e-02, -1.210683235761310893e-02, -1.211928936609883711e-02, -1.213172596403109572e-02, -1.214414213241600191e-02, -1.215653785229390063e-02, -1.216891310473944277e-02, -1.218126787086174292e-02, -1.219360213180412968e-02, -1.220591586874428779e-02, -1.221820906289425475e-02, -1.223048169550076426e-02, -1.224273374784473449e-02, -1.225496520124162887e-02, -1.226717603704137460e-02, -1.227936623662862457e-02, -1.229153578142242430e-02, -1.230368465287632641e-02, -1.231581283247891630e-02, -1.232792030175302450e-02, -1.234000704225633391e-02, -1.235207303558106401e-02, -1.236411826335449826e-02, -1.237614270723842551e-02, -1.238814634892945916e-02, -1.240012917015902508e-02, -1.241209115269351765e-02, -1.242403227833410902e-02, -1.243595252891684794e-02, -1.244785188631263376e-02, -1.245973033242766918e-02, -1.247158784920282537e-02, -1.248342441861401142e-02, -1.249524002267220213e-02, -1.250703464342356984e-02, -1.251880826294921208e-02, -1.253056086336524697e-02, -1.254229242682340997e-02, -1.255400293551008767e-02, -1.256569237164716947e-02, -1.257736071749151682e-02, -1.258900795533558596e-02, -1.260063406750683290e-02, -1.261223903636809161e-02, -1.262382284431749942e-02, -1.263538547378882486e-02, -1.264692690725083106e-02, -1.265844712720792971e-02, -1.266994611619979942e-02, -1.268142385680180208e-02, -1.269288033162467751e-02, -1.270431552331451920e-02, -1.271572941455332076e-02, -1.272712198805844852e-02, -1.273849322658282372e-02, -1.274984311291478892e-02, -1.276117162987894411e-02, -1.277247876033504696e-02, -1.278376448717863725e-02, -1.279502879334106988e-02, -1.280627166178949228e-02, -1.281749307552665362e-02, -1.282869301759128992e-02, -1.283987147105767820e-02, -1.285102841903641192e-02, -1.286216384467359260e-02, -1.287327773115132419e-02, -1.288437006168754659e-02, -1.289544081953633917e-02, -1.290648998798768314e-02, -1.291751755036734360e-02, -1.292852349003756687e-02, -1.293950779039630510e-02, -1.295047043487763949e-02, -1.296141140695173700e-02, -1.297233069012506887e-02, -1.298322826794007408e-02, -1.299410412397536928e-02, -1.300495824184579041e-02, -1.301579060520261823e-02, -1.302660119773304051e-02, -1.303739000316077139e-02, -1.304815700524557427e-02, -1.305890218778383259e-02, -1.306962553460809355e-02, -1.308032702958724681e-02, -1.309100665662654012e-02, -1.310166439966801988e-02, -1.311230024268979395e-02, -1.312291416970625714e-02, -1.313350616476891691e-02, -1.314407621196531269e-02, -1.315462429541961950e-02, -1.316515039929257343e-02, -1.317565450778164851e-02, -1.318613660512074626e-02, -1.319659667558042634e-02, -1.320703470346783377e-02, -1.321745067312713254e-02, -1.322784456893879440e-02, -1.323821637532022859e-02, -1.324856607672538801e-02, -1.325889365764531917e-02, -1.326919910260759491e-02, -1.327948239617669605e-02, -1.328974352295378934e-02, -1.329998246757731206e-02, -1.331019921472218100e-02, -1.332039374910032672e-02, -1.333056605546075087e-02, -1.334071611858924505e-02, -1.335084392330860605e-02, -1.336094945447858021e-02, -1.337103269699619311e-02, -1.338109363579523779e-02, -1.339113225584667548e-02, -1.340114854215843782e-02, -1.341114247977582934e-02, -1.342111405378102959e-02, -1.343106324929345917e-02, -1.344099005146963746e-02, -1.345089444550363368e-02, -1.346077641662621512e-02, -1.347063595010560000e-02, -1.348047303124755812e-02, -1.349028764539469093e-02, -1.350007977792720172e-02, -1.350984941426240996e-02, -1.351959653985524389e-02, -1.352932114019781730e-02, -1.353902320081961687e-02, -1.354870270728749521e-02, -1.355835964520608547e-02, -1.356799400021713523e-02, -1.357760575799993839e-02, -1.358719490427127280e-02, -1.359676142478557018e-02, -1.360630530533464555e-02, -1.361582653174794703e-02, -1.362532508989238410e-02, -1.363480096567279073e-02, -1.364425414503127147e-02, -1.365368461394766454e-02, -1.366309235843962515e-02, -1.367247736456229934e-02, -1.368183961840869524e-02, -1.369117910610925110e-02, -1.370049581383263673e-02, -1.370978972778492955e-02, -1.371906083421003952e-02, -1.372830911938969015e-02, -1.373753456964354677e-02, -1.374673717132900673e-02, -1.375591691084135197e-02, -1.376507377461359642e-02, -1.377420774911718680e-02, -1.378331882086083170e-02, -1.379240697639153891e-02, -1.380147220229415578e-02, -1.381051448519174385e-02, -1.381953381174511053e-02, -1.382853016865313693e-02, -1.383750354265288716e-02, -1.384645392051926660e-02, -1.385538128906545555e-02, -1.386428563514254149e-02, -1.387316694564001696e-02, -1.388202520748521573e-02, -1.389086040764381767e-02, -1.389967253311951215e-02, -1.390846157095439010e-02, -1.391722750822856070e-02, -1.392597033206054158e-02, -1.393469002960682872e-02, -1.394338658806257639e-02, -1.395205999466093104e-02, -1.396071023667341121e-02, -1.396933730140988671e-02, -1.397794117621858900e-02, -1.398652184848603840e-02, -1.399507930563713594e-02, -1.400361353513542365e-02, -1.401212452448246694e-02, -1.402061226121852598e-02, -1.402907673292220006e-02, -1.403751792721066004e-02, -1.404593583173949049e-02, -1.405433043420277126e-02, -1.406270172233303230e-02, -1.407104968390167701e-02, -1.407937430671823455e-02, -1.408767557863109879e-02, -1.409595348752699234e-02, -1.410420802133166042e-02, -1.411243916800909541e-02, -1.412064691556207986e-02, -1.412883125203207198e-02, -1.413699216549921256e-02, -1.414512964408225042e-02, -1.415324367593862910e-02, -1.416133424926482344e-02, -1.416940135229572718e-02, -1.417744497330509709e-02, -1.418546510060540375e-02, -1.419346172254812993e-02, -1.420143482752336990e-02, -1.420938440396012602e-02, -1.421731044032610580e-02, -1.422521292512820418e-02, -1.423309184691192754e-02, -1.424094719426175285e-02, -1.424877895580095241e-02, -1.425658712019201024e-02, -1.426437167613613458e-02, -1.427213261237341574e-02, -1.427986991768323034e-02, -1.428758358088372954e-02, -1.429527359083208535e-02, -1.430293993642443168e-02, -1.431058260659619219e-02, -1.431820159032157723e-02, -1.432579687661400536e-02, -1.433336845452596285e-02, -1.434091631314899327e-02, -1.434844044161383281e-02, -1.435594082909034952e-02, -1.436341746478734041e-02, -1.437087033795316458e-02, -1.437829943787506497e-02, -1.438570475387953955e-02, -1.439308627533228760e-02, -1.440044399163832069e-02, -1.440777789224181350e-02, -1.441508796662606569e-02, -1.442237420431398756e-02, -1.442963659486751898e-02, -1.443687512788787916e-02, -1.444408979301570715e-02, -1.445128057993092310e-02, -1.445844747835283578e-02, -1.446559047804000207e-02, -1.447270956879043863e-02, -1.447980474044155419e-02, -1.448687598287015307e-02, -1.449392328599233282e-02, -1.450094663976376000e-02, -1.450794603417949677e-02, -1.451492145927408758e-02, -1.452187290512137012e-02, -1.452880036183498008e-02, -1.453570381956780476e-02, -1.454258326851231957e-02, -1.454943869890048397e-02, -1.455627010100385768e-02, -1.456307746513354692e-02, -1.456986078164009858e-02, -1.457662004091377604e-02, -1.458335523338446203e-02, -1.459006634952147996e-02, -1.459675337983388881e-02, -1.460341631487024720e-02, -1.461005514521902977e-02, -1.461666986150813446e-02, -1.462326045440516184e-02, -1.462982691461736998e-02, -1.463636923289184967e-02, -1.464288740001526423e-02, -1.464938140681397612e-02, -1.465585124415431408e-02, -1.466229690294205447e-02, -1.466871837412285669e-02, -1.467511564868215559e-02, -1.468148871764524827e-02, -1.468783757207706327e-02, -1.469416220308241566e-02, -1.470046260180586477e-02, -1.470673875943205068e-02, -1.471299066718515999e-02, -1.471921831632935253e-02, -1.472542169816859828e-02, -1.473160080404695149e-02, -1.473775562534808577e-02, -1.474388615349568263e-02, -1.474999237995334306e-02, -1.475607429622469505e-02, -1.476213189385314727e-02, -1.476816516442201049e-02, -1.477417409955479599e-02, -1.478015869091478529e-02, -1.478611893020529040e-02, -1.479205480916961392e-02, -1.479796631959109411e-02, -1.480385345329304422e-02, -1.480971620213881144e-02, -1.481555455803175957e-02, -1.482136851291540776e-02, -1.482715805877318424e-02, -1.483292318762870210e-02, -1.483866389154550602e-02, -1.484438016262739322e-02, -1.485007199301818272e-02, -1.485573937490181247e-02, -1.486138230050229603e-02, -1.486700076208389946e-02, -1.487259475195093147e-02, -1.487816426244783878e-02, -1.488370928595933104e-02, -1.488922981491012584e-02, -1.489472584176528697e-02, -1.490019735902991561e-02, -1.490564435924953898e-02, -1.491106683500965403e-02, -1.491646477893614903e-02, -1.492183818369497046e-02, -1.492718704199244052e-02, -1.493251134657516861e-02, -1.493781109022987788e-02, -1.494308626578357002e-02, -1.494833686610373344e-02, -1.495356288409795294e-02, -1.495876431271402247e-02, -1.496394114494027823e-02, -1.496909337380525860e-02, -1.497422099237783605e-02, -1.497932399376707309e-02, -1.498440237112266815e-02, -1.498945611763443861e-02, -1.499448522653257405e-02, -1.499948969108769181e-02, -1.500446950461084387e-02, -1.500942466045334864e-02, -1.501435515200696437e-02, -1.501926097270379727e-02, -1.502414211601651485e-02, -1.502899857545803367e-02, -1.503383034458173964e-02, -1.503863741698142735e-02, -1.504341978629153247e-02, -1.504817744618664778e-02, -1.505291039038198463e-02, -1.505761861263327228e-02, -1.506230210673650642e-02, -1.506696086652839495e-02, -1.507159488588589308e-02, -1.507620415872675326e-02, -1.508078867900898221e-02, -1.508534844073118955e-02, -1.508988343793247339e-02, -1.509439366469245321e-02, -1.509887911513139308e-02, -1.510333978340989286e-02, -1.510777566372926116e-02, -1.511218675033136789e-02, -1.511657303749850897e-02, -1.512093451955369254e-02, -1.512527119086030242e-02, -1.512958304582260292e-02, -1.513387007888518029e-02, -1.513813228453332084e-02, -1.514236965729294331e-02, -1.514658219173052947e-02, -1.515076988245314150e-02, -1.515493272410850523e-02, -1.515907071138505174e-02, -1.516318383901167112e-02, -1.516727210175800554e-02, -1.517133549443434350e-02, -1.517537401189164060e-02, -1.517938764902139991e-02, -1.518337640075589218e-02, -1.518734026206796511e-02, -1.519127922797130353e-02, -1.519519329352014662e-02, -1.519908245380943018e-02, -1.520294670397475539e-02, -1.520678603919252588e-02, -1.521060045467978114e-02, -1.521438994569418446e-02, -1.521815450753432990e-02, -1.522189413553931558e-02, -1.522560882508911320e-02, -1.522929857160427829e-02, -1.523296337054625034e-02, -1.523660321741712211e-02, -1.524021810775973151e-02, -1.524380803715764780e-02, -1.524737300123535366e-02, -1.525091299565785839e-02, -1.525442801613107607e-02, -1.525791805840160179e-02, -1.526138311825697529e-02, -1.526482319152533060e-02, -1.526823827407554172e-02, -1.527162836181757480e-02, -1.527499345070184797e-02, -1.527833353671974141e-02, -1.528164861590332844e-02, -1.528493868432574329e-02, -1.528820373810056872e-02, -1.529144377338245188e-02, -1.529465878636672611e-02, -1.529784877328962782e-02, -1.530101373042817153e-02, -1.530415365410019157e-02, -1.530726854066427438e-02, -1.531035838652010893e-02, -1.531342318810789346e-02, -1.531646294190886631e-02, -1.531947764444503875e-02, -1.532246729227926436e-02, -1.532543188201526338e-02, -1.532837141029762609e-02, -1.533128587381178513e-02, -1.533417526928399638e-02, -1.533703959348137885e-02, -1.533987884321201187e-02, -1.534269301532471298e-02, -1.534548210670925832e-02, -1.534824611429628193e-02, -1.535098503505722724e-02, -1.535369886600449624e-02, -1.535638760419137834e-02, -1.535905124671190121e-02, -1.536168979070111872e-02, -1.536430323333500686e-02, -1.536689157183027815e-02, -1.536945480344469213e-02, -1.537199292547675698e-02, -1.537450593526594987e-02, -1.537699383019267181e-02, -1.537945660767820084e-02, -1.538189426518468510e-02, -1.538430680021523299e-02, -1.538669421031375537e-02, -1.538905649306518929e-02, -1.539139364609527945e-02, -1.539370566707077420e-02, -1.539599255369931280e-02, -1.539825430372930570e-02, -1.540049091495026071e-02, -1.540270238519260079e-02, -1.540488871232744555e-02, -1.540704989426705876e-02, -1.540918592896452569e-02, -1.541129681441389884e-02, -1.541338254865000715e-02, -1.541544312974885665e-02, -1.541747855582713267e-02, -1.541948882504256581e-02, -1.542147393559373594e-02, -1.542343388572022488e-02, -1.542536867370251918e-02, -1.542727829786198594e-02, -1.542916275656093517e-02, -1.543102204820264757e-02, -1.543285617123120630e-02, -1.543466512413179705e-02, -1.543644890543033506e-02, -1.543820751369384681e-02, -1.543994094753016293e-02, -1.544164920558805526e-02, -1.544333228655725421e-02, -1.544499018916838627e-02, -1.544662291219301223e-02, -1.544823045444361151e-02, -1.544981281477364986e-02, -1.545136999207734514e-02, -1.545290198529005593e-02, -1.545440879338791026e-02, -1.545589041538796699e-02, -1.545734685034831114e-02, -1.545877809736778512e-02, -1.546018415558631127e-02, -1.546156502418467166e-02, -1.546292070238446982e-02, -1.546425118944837543e-02, -1.546555648467984323e-02, -1.546683658742333510e-02, -1.546809149706417606e-02, -1.546932121302861847e-02, -1.547052573478378129e-02, -1.547170506183775072e-02, -1.547285919373951255e-02, -1.547398813007890180e-02, -1.547509187048670166e-02, -1.547617041463456369e-02, -1.547722376223510318e-02, -1.547825191304174307e-02, -1.547925486684886311e-02, -1.548023262349174090e-02, -1.548118518284645473e-02, -1.548211254483003278e-02, -1.548301470940048087e-02, -1.548389167655652224e-02, -1.548474344633784215e-02, -1.548557001882503240e-02, -1.548637139413954270e-02, -1.548714757244363735e-02, -1.548789855394051319e-02, -1.548862433887421633e-02, -1.548932492752966988e-02, -1.549000032023264972e-02, -1.549065051734980353e-02, -1.549127551928858836e-02, -1.549187532649738859e-02, -1.549244993946540666e-02, -1.549299935872268733e-02, -1.549352358484007604e-02, -1.549402261842936120e-02, -1.549449646014304342e-02, -1.549494511067461139e-02, -1.549536857075826078e-02, -1.549576684116905217e-02, -1.549613992272289020e-02, -1.549648781627645765e-02, -1.549681052272727615e-02, -1.549710804301367151e-02, -1.549738037811481534e-02, -1.549762752905066085e-02, -1.549784949688193074e-02, -1.549804628271017268e-02, -1.549821788767771942e-02, -1.549836431296771136e-02, -1.549848555980407397e-02, -1.549858162945142066e-02, -1.549865252321526964e-02, -1.549869824244187906e-02, -1.549871878851821760e-02, -1.549871416287200605e-02, -1.549868436697184222e-02, -1.549862940232693727e-02, -1.549854927048730131e-02, -1.549844397304377813e-02, -1.549831351162776587e-02, -1.549815788791153622e-02, -1.549797710360805228e-02, -1.549777116047094949e-02, -1.549754006029469174e-02, -1.549728380491433889e-02, -1.549700239620569082e-02, -1.549669583608528738e-02, -1.549636412651036674e-02, -1.549600726947877177e-02, -1.549562526702910094e-02, -1.549521812124059553e-02, -1.549478583423327324e-02, -1.549432840816766278e-02, -1.549384584524502936e-02, -1.549333814770731052e-02, -1.549280531783711959e-02, -1.549224735795758263e-02, -1.549166427043256744e-02, -1.549105605766661238e-02, -1.549042272210479111e-02, -1.548976426623275768e-02, -1.548908069257700151e-02, -1.548837200370427672e-02, -1.548763820222225432e-02, -1.548687929077903133e-02, -1.548609527206331639e-02, -1.548528614880441238e-02, -1.548445192377218005e-02, -1.548359259977707091e-02, -1.548270817967007350e-02, -1.548179866634270645e-02, -1.548086406272709131e-02, -1.547990437179587453e-02, -1.547891959656216149e-02, -1.547790974007965878e-02, -1.547687480544256144e-02, -1.547581479578555644e-02, -1.547472971428388855e-02, -1.547361956415321815e-02, -1.547248434864975999e-02, -1.547132407107016175e-02, -1.547013873475158729e-02, -1.546892834307154498e-02, -1.546769289944817383e-02, -1.546643240734001112e-02, -1.546514687024586228e-02, -1.546383629170519462e-02, -1.546250067529778699e-02, -1.546114002464380431e-02, -1.545975434340391558e-02, -1.545834363527910128e-02, -1.545690790401077139e-02, -1.545544715338072195e-02, -1.545396138721108828e-02, -1.545245060936443170e-02, -1.545091482374359206e-02, -1.544935403429178664e-02, -1.544776824499266045e-02, -1.544615745987003817e-02, -1.544452168298816007e-02, -1.544286091845152240e-02, -1.544117517040498495e-02, -1.543946444303364099e-02, -1.543772874056299586e-02, -1.543596806725866348e-02, -1.543418242742656751e-02, -1.543237182541296396e-02, -1.543053626560432663e-02, -1.542867575242732464e-02, -1.542679029034885706e-02, -1.542487988387615007e-02, -1.542294453755648290e-02, -1.542098425597743586e-02, -1.541899904376675505e-02, -1.541698890559237492e-02, -1.541495384616239223e-02, -1.541289387022501747e-02, -1.541080898256871022e-02, -1.540869918802200214e-02, -1.540656449145358202e-02, -1.540440489777223157e-02, -1.540222041192685840e-02, -1.540001103890649252e-02, -1.539777678374018403e-02, -1.539551765149714188e-02, -1.539323364728661589e-02, -1.539092477625790198e-02, -1.538859104360033349e-02, -1.538623245454327944e-02, -1.538384901435619311e-02, -1.538144072834844202e-02, -1.537900760186949878e-02, -1.537654964030875197e-02, -1.537406684909563802e-02, -1.537155923369947462e-02, -1.536902679962961864e-02, -1.536646955243537067e-02, -1.536388749770590222e-02, -1.536128064107038574e-02, -1.535864898819780042e-02, -1.535599254479721489e-02, -1.535331131661740213e-02, -1.535060530944711357e-02, -1.534787452911490560e-02, -1.534511898148926447e-02, -1.534233867247846578e-02, -1.533953360803058490e-02, -1.533670379413366522e-02, -1.533384923681539377e-02, -1.533096994214333021e-02, -1.532806591622476455e-02, -1.532513716520683862e-02, -1.532218369527642982e-02, -1.531920551266009733e-02, -1.531620262362421575e-02, -1.531317503447485184e-02, -1.531012275155777674e-02, -1.530704578125840001e-02, -1.530394413000198649e-02, -1.530081780425327984e-02, -1.529766681051678706e-02, -1.529449115533662758e-02, -1.529129084529661474e-02, -1.528806588702006156e-02, -1.528481628716999753e-02, -1.528154205244899692e-02, -1.527824318959922212e-02, -1.527491970540245658e-02, -1.527157160667990017e-02, -1.526819890029242240e-02, -1.526480159314038375e-02, -1.526137969216368254e-02, -1.525793320434161437e-02, -1.525446213669305606e-02, -1.525096649627639446e-02, -1.524744629018940159e-02, -1.524390152556925893e-02, -1.524033220959266667e-02, -1.523673834947573448e-02, -1.523311995247393115e-02, -1.522947702588207074e-02, -1.522580957703451379e-02, -1.522211761330479265e-02, -1.521840114210595493e-02, -1.521466017089017665e-02, -1.521089470714918554e-02, -1.520710475841386897e-02, -1.520329033225440059e-02, -1.519945143628030799e-02, -1.519558807814026975e-02, -1.519170026552233918e-02, -1.518778800615374659e-02, -1.518385130780085246e-02, -1.517989017826937119e-02, -1.517590462540418031e-02, -1.517189465708910535e-02, -1.516786028124740733e-02, -1.516380150584138026e-02, -1.515971833887247606e-02, -1.515561078838116062e-02, -1.515147886244707504e-02, -1.514732256918896458e-02, -1.514314191676463354e-02, -1.513893691337080301e-02, -1.513470756724336411e-02, -1.513045388665725834e-02, -1.512617587992630928e-02, -1.512187355540335100e-02, -1.511754692148029218e-02, -1.511319598658795657e-02, -1.510882075919594766e-02, -1.510442124781296788e-02, -1.509999746098663297e-02, -1.509554940730337656e-02, -1.509107709538848666e-02, -1.508658053390615587e-02, -1.508205973155943291e-02, -1.507751469709025204e-02, -1.507294543927910346e-02, -1.506835196694555033e-02, -1.506373428894788695e-02, -1.505909241418299481e-02, -1.505442635158664964e-02, -1.504973611013332192e-02, -1.504502169883621503e-02, -1.504028312674716115e-02, -1.503552040295669939e-02, -1.503073353659406877e-02, -1.502592253682709551e-02, -1.502108741286223813e-02, -1.501622817394456487e-02, -1.501134482935777455e-02, -1.500643738842411326e-02, -1.500150586050439695e-02, -1.499655025499786395e-02, -1.499157058134245948e-02, -1.498656684901457543e-02, -1.498153906752895496e-02, -1.497648724643896659e-02, -1.497141139533640988e-02, -1.496631152385140620e-02, -1.496118764165262592e-02, -1.495603975844707507e-02, -1.495086788398018729e-02, -1.494567202803559480e-02, -1.494045220043544765e-02, -1.493520841104020724e-02, -1.492994066974859431e-02, -1.492464898649754901e-02, -1.491933337126245471e-02, -1.491399383405672859e-02, -1.490863038493229521e-02, -1.490324303397901236e-02, -1.489783179132505263e-02, -1.489239666713686704e-02, -1.488693767161897337e-02, -1.488145481501391976e-02, -1.487594810760254314e-02, -1.487041755970377674e-02, -1.486486318167448001e-02, -1.485928498390973705e-02, -1.485368297684262415e-02, -1.484805717094428434e-02, -1.484240757672375399e-02, -1.483673420472810325e-02, -1.483103706554248988e-02, -1.482531616978987124e-02, -1.481957152813119169e-02, -1.481380315126530622e-02, -1.480801104992896314e-02, -1.480219523489682137e-02, -1.479635571698125797e-02, -1.479049250703260224e-02, -1.478460561593901434e-02, -1.477869505462634306e-02, -1.477276083405826973e-02, -1.476680296523624931e-02, -1.476082145919947394e-02, -1.475481632702472373e-02, -1.474878757982654373e-02, -1.474273522875728382e-02, -1.473665928500680553e-02, -1.473055975980252195e-02, -1.472443666440969960e-02, -1.471829001013094489e-02, -1.471211980830668120e-02, -1.470592607031461288e-02, -1.469970880757011378e-02, -1.469346803152613706e-02, -1.468720375367310593e-02, -1.468091598553865861e-02, -1.467460473868821558e-02, -1.466827002472443665e-02, -1.466191185528739789e-02, -1.465553024205461241e-02, -1.464912519674094887e-02, -1.464269673109861412e-02, -1.463624485691701615e-02, -1.462976958602304513e-02, -1.462327093028072469e-02, -1.461674890159152078e-02, -1.461020351189385412e-02, -1.460363477316356517e-02, -1.459704269741364177e-02, -1.459042729669430757e-02, -1.458378858309270117e-02, -1.457712656873329064e-02, -1.457044126577763596e-02, -1.456373268642435076e-02, -1.455700084290907290e-02, -1.455024574750444881e-02, -1.454346741252037119e-02, -1.453666585030333365e-02, -1.452984107323714198e-02, -1.452299309374239025e-02, -1.451612192427672449e-02, -1.450922757733446970e-02, -1.450231006544708094e-02, -1.449536940118271999e-02, -1.448840559714654856e-02, -1.448141866598019571e-02, -1.447440862036249165e-02, -1.446737547300883456e-02, -1.446031923667146293e-02, -1.445323992413908784e-02, -1.444613754823743761e-02, -1.443901212182873567e-02, -1.443186365781198334e-02, -1.442469216912269613e-02, -1.441749766873300607e-02, -1.441028016965180923e-02, -1.440303968492425216e-02, -1.439577622763229398e-02, -1.438848981089427617e-02, -1.438118044786516024e-02, -1.437384815173613564e-02, -1.436649293573509859e-02, -1.435911481312621835e-02, -1.435171379721025299e-02, -1.434428990132390232e-02, -1.433684313884068737e-02, -1.432937352317022878e-02, -1.432188106775852260e-02, -1.431436578608775295e-02, -1.430682769167650886e-02, -1.429926679807952926e-02, -1.429168311888760409e-02, -1.428407666772799588e-02, -1.427644745826396437e-02, -1.426879550419495393e-02, -1.426112081925645300e-02, -1.425342341722006696e-02, -1.424570331189355631e-02, -1.423796051712064407e-02, -1.423019504678090831e-02, -1.422240691479019319e-02, -1.421459613510019787e-02, -1.420676272169860491e-02, -1.419890668860876275e-02, -1.419102804989024608e-02, -1.418312681963832325e-02, -1.417520301198414885e-02, -1.416725664109459194e-02, -1.415928772117246680e-02, -1.415129626645635769e-02, -1.414328229122031703e-02, -1.413524580977440492e-02, -1.412718683646425888e-02, -1.411910538567123959e-02, -1.411100147181220538e-02, -1.410287510933979326e-02, -1.409472631274214481e-02, -1.408655509654302071e-02, -1.407836147530154396e-02, -1.407014546361258153e-02, -1.406190707610632112e-02, -1.405364632744853827e-02, -1.404536323234030840e-02, -1.403705780551822366e-02, -1.402873006175414487e-02, -1.402038001585552938e-02, -1.401200768266475105e-02, -1.400361307705988607e-02, -1.399519621395409717e-02, -1.398675710829578103e-02, -1.397829577506867413e-02, -1.396981222929161159e-02, -1.396130648601868855e-02, -1.395277856033903113e-02, -1.394422846737695086e-02, -1.393565622229189262e-02, -1.392706184027836351e-02, -1.391844533656574727e-02, -1.390980672641859567e-02, -1.390114602513642210e-02, -1.389246324805376055e-02, -1.388375841053992622e-02, -1.387503152799920113e-02, -1.386628261587082890e-02, -1.385751168962892112e-02, -1.384871876478212596e-02, -1.383990385687420069e-02, -1.383106698148362131e-02, -1.382220815422344554e-02, -1.381332739074161292e-02, -1.380442470672066727e-02, -1.379550011787795787e-02, -1.378655363996512777e-02, -1.377758528876876429e-02, -1.376859508010986992e-02, -1.375958302984413295e-02, -1.375054915386153369e-02, -1.374149346808676599e-02, -1.373241598847887296e-02, -1.372331673103151933e-02, -1.371419571177237909e-02, -1.370505294676389700e-02, -1.369588845210276996e-02, -1.368670224391990188e-02, -1.367749433838061877e-02, -1.366826475168446062e-02, -1.365901350006536695e-02, -1.364974059979116687e-02, -1.364044606716414629e-02, -1.363112991852066282e-02, -1.362179217023135741e-02, -1.361243283870052466e-02, -1.360305194036697841e-02, -1.359364949170343770e-02, -1.358422550921663599e-02, -1.357478000944719806e-02, -1.356531300896981519e-02, -1.355582452439312371e-02, -1.354631457235969290e-02, -1.353678316954563809e-02, -1.352723033266132330e-02, -1.351765607845076961e-02, -1.350806042369169860e-02, -1.349844338519568497e-02, -1.348880497980802298e-02, -1.347914522440780451e-02, -1.346946413590739515e-02, -1.345976173125323569e-02, -1.345003802742518462e-02, -1.344029304143674886e-02, -1.343052679033482529e-02, -1.342073929119998871e-02, -1.341093056114629582e-02, -1.340110061732130431e-02, -1.339124947690565823e-02, -1.338137715711377670e-02, -1.337148367519341852e-02, -1.336156904842566127e-02, -1.335163329412458917e-02, -1.334167642963794177e-02, -1.333169847234659013e-02, -1.332169943966456105e-02, -1.331167934903917070e-02, -1.330163821795079561e-02, -1.329157606391311204e-02, -1.328149290447256520e-02, -1.327138875720898330e-02, -1.326126363973515604e-02, -1.325111756969685022e-02, -1.324095056477274553e-02, -1.323076264267460458e-02, -1.322055382114700056e-02, -1.321032411796754791e-02, -1.320007355094638714e-02, -1.318980213792680586e-02, -1.317950989678479991e-02, -1.316919684542902300e-02, -1.315886300180098972e-02, -1.314850838387481187e-02, -1.313813300965749505e-02, -1.312773689718825521e-02, -1.311732006453927499e-02, -1.310688252981525269e-02, -1.309642431115337971e-02, -1.308594542672330066e-02, -1.307544589472722438e-02, -1.306492573339985627e-02, -1.305438496100829772e-02, -1.304382359585183442e-02, -1.303324165626231282e-02, -1.302263916060397361e-02, -1.301201612727330946e-02, -1.300137257469875969e-02, -1.299070852134136429e-02, -1.298002398569429207e-02, -1.296931898628275910e-02, -1.295859354166415192e-02, -1.294784767042805700e-02, -1.293708139119609940e-02, -1.292629472262176067e-02, -1.291548768339076392e-02, -1.290466029222066616e-02, -1.289381256786114802e-02, -1.288294452909347423e-02, -1.287205619473107999e-02, -1.286114758361914592e-02, -1.285021871463474033e-02, -1.283926960668643064e-02, -1.282830027871484195e-02, -1.281731074969224768e-02, -1.280630103862257299e-02, -1.279527116454124737e-02, -1.278422114651558798e-02, -1.277315100364443366e-02, -1.276206075505783438e-02, -1.275095041991777638e-02, -1.273982001741761662e-02, -1.272866956678211578e-02, -1.271749908726740354e-02, -1.270630859816110174e-02, -1.269509811878215787e-02, -1.268386766848093525e-02, -1.267261726663874120e-02, -1.266134693266843247e-02, -1.265005668601414286e-02, -1.263874654615112711e-02, -1.262741653258553191e-02, -1.261606666485494584e-02, -1.260469696252794133e-02, -1.259330744520418058e-02, -1.258189813251417606e-02, -1.257046904411967571e-02, -1.255902019971331766e-02, -1.254755161901839090e-02, -1.253606332178940248e-02, -1.252455532781154499e-02, -1.251302765690101571e-02, -1.250148032890448409e-02, -1.248991336369957399e-02, -1.247832678119462600e-02, -1.246672060132873218e-02, -1.245509484407128151e-02, -1.244344952942266422e-02, -1.243178467741365596e-02, -1.242010030810576648e-02, -1.240839644159070013e-02, -1.239667309799084849e-02, -1.238493029745922451e-02, -1.237316806017873388e-02, -1.236138640636306844e-02, -1.234958535625614237e-02, -1.233776493013232639e-02, -1.232592514829590133e-02, -1.231406603108168435e-02, -1.230218759885457966e-02, -1.229028987200987168e-02, -1.227837287097239757e-02, -1.226643661619778065e-02, -1.225448112817129585e-02, -1.224250642740854975e-02, -1.223051253445458370e-02, -1.221849946988493203e-02, -1.220646725430484664e-02, -1.219441590834959531e-02, -1.218234545268401942e-02, -1.217025590800302481e-02, -1.215814729503131991e-02, -1.214601963452298546e-02, -1.213387294726226036e-02, -1.212170725406283914e-02, -1.210952257576814600e-02, -1.209731893325104515e-02, -1.208509634741414783e-02, -1.207285483918948618e-02, -1.206059442953879429e-02, -1.204831513945282297e-02, -1.203601698995215158e-02, -1.202370000208661562e-02, -1.201136419693549923e-02, -1.199900959560713277e-02, -1.198663621923942366e-02, -1.197424408899936191e-02, -1.196183322608336368e-02, -1.194940365171655826e-02, -1.193695538715365025e-02, -1.192448845367834014e-02, -1.191200287260321504e-02, -1.189949866527009563e-02, -1.188697585304974123e-02, -1.187443445734199209e-02, -1.186187449957505462e-02, -1.184929600120676607e-02, -1.183669898372340622e-02, -1.182408346864023858e-02, -1.181144947750090331e-02, -1.179879703187825327e-02, -1.178612615337362030e-02, -1.177343686361709447e-02, -1.176072918426720841e-02, -1.174800313701126336e-02, -1.173525874356509506e-02, -1.172249602567313441e-02, -1.170971500510789923e-02, -1.169691570367075058e-02, -1.168409814319145215e-02, -1.167126234552782679e-02, -1.165840833256628385e-02, -1.164553612622151908e-02, -1.163264574843650943e-02, -1.161973722118211406e-02, -1.160681056645775089e-02, -1.159386580629091085e-02, -1.158090296273718567e-02, -1.156792205788001980e-02, -1.155492311383119267e-02, -1.154190615273033987e-02, -1.152887119674522384e-02, -1.151581826807103817e-02, -1.150274738893140164e-02, -1.148965858157761401e-02, -1.147655186828859530e-02, -1.146342727137127267e-02, -1.145028481316018309e-02, -1.143712451601767814e-02, -1.142394640233354922e-02, -1.141075049452538147e-02, -1.139753681503830746e-02, -1.138430538634514419e-02, -1.137105623094573567e-02, -1.135778937136788964e-02, -1.134450483016664728e-02, -1.133120262992453990e-02, -1.131788279325122472e-02, -1.130454534278391328e-02, -1.129119030118696208e-02, -1.127781769115219351e-02, -1.126442753539810479e-02, -1.125101985667085157e-02, -1.123759467774362864e-02, -1.122415202141645828e-02, -1.121069191051668294e-02, -1.119721436789851768e-02, -1.118371941644339881e-02, -1.117020707905908537e-02, -1.115667737868079185e-02, -1.114313033827044053e-02, -1.112956598081677080e-02, -1.111598432933511189e-02, -1.110238540686778359e-02, -1.108876923648365910e-02, -1.107513584127842350e-02, -1.106148524437402733e-02, -1.104781746891934403e-02, -1.103413253808960270e-02, -1.102043047508692065e-02, -1.100671130313916543e-02, -1.099297504550121596e-02, -1.097922172545419753e-02, -1.096545136630534475e-02, -1.095166399138850985e-02, -1.093785962406364914e-02, -1.092403828771715095e-02, -1.091020000576110524e-02, -1.089634480163418837e-02, -1.088247269880108711e-02, -1.086858372075260107e-02, -1.085467789100531995e-02, -1.084075523310206769e-02, -1.082681577061154685e-02, -1.081285952712849295e-02, -1.079888652627310902e-02, -1.078489679169182362e-02, -1.077089034705682249e-02, -1.075686721606575538e-02, -1.074282742244232064e-02, -1.072877098993568756e-02, -1.071469794232089191e-02, -1.070060830339808651e-02, -1.068650209699338778e-02, -1.067237934695835014e-02, -1.065824007716998680e-02, -1.064408431153055813e-02, -1.062991207396797588e-02, -1.061572338843534170e-02, -1.060151827891132534e-02, -1.058729676939928165e-02, -1.057305888392828450e-02, -1.055880464655260809e-02, -1.054453408135165582e-02, -1.053024721242951621e-02, -1.051594406391575219e-02, -1.050162465996498477e-02, -1.048728902475655131e-02, -1.047293718249489060e-02, -1.045856915740937809e-02, -1.044418497375436752e-02, -1.042978465580850569e-02, -1.041536822787579412e-02, -1.040093571428476332e-02, -1.038648713938871912e-02, -1.037202252756539746e-02, -1.035754190321738072e-02, -1.034304529077181498e-02, -1.032853271468041345e-02, -1.031400419941902978e-02, -1.029945976948839007e-02, -1.028489944941349439e-02, -1.027032326374375214e-02, -1.025573123705273738e-02, -1.024112339393849248e-02, -1.022649975902341357e-02, -1.021186035695362086e-02, -1.019720521239987979e-02, -1.018253435005690190e-02, -1.016784779464359641e-02, -1.015314557090265732e-02, -1.013842770360099885e-02, -1.012369421752943102e-02, -1.010894513750286786e-02, -1.009418048835954151e-02, -1.007940029496202754e-02, -1.006460458219664983e-02, -1.004979337497351535e-02, -1.003496669822594688e-02, -1.002012457691148217e-02, -1.000526703601109166e-02, -9.990394100529400440e-03, -9.975505795494369124e-03, -9.960602145957645967e-03, -9.945683176994485342e-03, -9.930748913702970582e-03, -9.915799381205150226e-03, -9.900834604646198411e-03, -9.885854609194621306e-03, -9.870859420042003840e-03, -9.855849062403320218e-03, -9.840823561516647694e-03, -9.825782942643334836e-03, -9.810727231067321516e-03, -9.795656452096079131e-03, -9.780570631059913242e-03, -9.765469793312150926e-03, -9.750353964228779952e-03, -9.735223169208903279e-03, -9.720077433674544770e-03, -9.704916783069965705e-03, -9.689741242862738579e-03, -9.674550838542864128e-03, -9.659345595623184191e-03, -9.644125539638838743e-03, -9.628890696147794984e-03, -9.613641090730450089e-03, -9.598376748989905297e-03, -9.583097696551011804e-03, -9.567803959061906005e-03, -9.552495562192533235e-03, -9.537172531635456155e-03, -9.521834893105029021e-03, -9.506482672338278928e-03, -9.491115895094267424e-03, -9.475734587154288277e-03, -9.460338774321458075e-03, -9.444928482421247051e-03, -9.429503737301156430e-03, -9.414064564830140758e-03, -9.398610990899685172e-03, -9.383143041422842626e-03, -9.367660742334717877e-03, -9.352164119591867275e-03, -9.336653199172905912e-03, -9.321128007077997615e-03, -9.305588569329217505e-03, -9.290034911969693304e-03, -9.274467061064682605e-03, -9.258885042700788770e-03, -9.243288882986162164e-03, -9.227678608050198308e-03, -9.212054244043864012e-03, -9.196415817139499613e-03, -9.180763353530860607e-03, -9.165096879432479277e-03, -9.149416421080629191e-03, -9.133722004732678160e-03, -9.118013656666890468e-03, -9.102291403182867502e-03, -9.086555270601179984e-03, -9.070805285263567469e-03, -9.055041473532133428e-03, -9.039263861790710480e-03, -9.023472476443557613e-03, -9.007667343915970806e-03, -8.991848490653606488e-03, -8.976015943123310734e-03, -8.960169727812482623e-03, -8.944309871229266795e-03, -8.928436399902149254e-03, -8.912549340380470850e-03, -8.896648719233955435e-03, -8.880734563053025582e-03, -8.864806898448004610e-03, -8.848865752050110584e-03, -8.832911150510838749e-03, -8.816943120501708267e-03, -8.800961688714775688e-03, -8.784966881862225560e-03, -8.768958726676552573e-03, -8.752937249909836445e-03, -8.736902478334869493e-03, -8.720854438744160900e-03, -8.704793157950399887e-03, -8.688718662785883257e-03, -8.672630980103145093e-03, -8.656530136774413797e-03, -8.640416159691974643e-03, -8.624289075767285068e-03, -8.608148911932109182e-03, -8.591995695137754491e-03, -8.575829452354926177e-03, -8.559650210574152110e-03, -8.543457996805423754e-03, -8.527252838078451178e-03, -8.511034761441686400e-03, -8.494803793963889849e-03, -8.478559962732666253e-03, -8.462303294855214042e-03, -8.446033817457487478e-03, -8.429751557685192381e-03, -8.413456542703050614e-03, -8.397148799694994364e-03, -8.380828355863784510e-03, -8.364495238431484195e-03, -8.348149474639104950e-03, -8.331791091746722916e-03, -8.315420117032890773e-03, -8.299036577795477349e-03, -8.282640501351083012e-03, -8.266231915034866207e-03, -8.249810846200951106e-03, -8.233377322222071998e-03, -8.216931370489739817e-03, -8.200473018413581214e-03, -8.184002293422238880e-03, -8.167519222962740105e-03, -8.151023834500621679e-03, -8.134516155519562128e-03, -8.117996213521902135e-03, -8.101464036028184837e-03, -8.084919650577391745e-03, -8.068363084726228041e-03, -8.051794366050113103e-03, -8.035213522142314879e-03, -8.018620580614662860e-03, -8.002015569096198461e-03, -7.985398515234604436e-03, -7.968769446695405170e-03, -7.952128391161814025e-03, -7.935475376335137526e-03, -7.918810429934365971e-03, -7.902133579696560273e-03, -7.885444853375807653e-03, -7.868744278744560852e-03, -7.852031883592605968e-03, -7.835307695727478788e-03, -7.818571742973942640e-03, -7.801824053174536561e-03, -7.785064654189184988e-03, -7.768293573895360821e-03, -7.751510840187297857e-03, -7.734716480977199896e-03, -7.717910524194351689e-03, -7.701092997785007055e-03, -7.684263929712876334e-03, -7.667423347958655412e-03, -7.650571280520358786e-03, -7.633707755412442661e-03, -7.616832800666904768e-03, -7.599946444332496796e-03, -7.583048714474962052e-03, -7.566139639176588765e-03, -7.549219246536771274e-03, -7.532287564671538184e-03, -7.515344621713811700e-03, -7.498390445812619202e-03, -7.481425065134154027e-03, -7.464448507860903768e-03, -7.447460802192333758e-03, -7.430461976343520972e-03, -7.413452058546674515e-03, -7.396431077050214485e-03, -7.379399060118673956e-03, -7.362356036033117050e-03, -7.345302033090772911e-03, -7.328237079605219584e-03, -7.311161203905651093e-03, -7.294074434337905269e-03, -7.276976799263654497e-03, -7.259868327060737918e-03, -7.242749046122589837e-03, -7.225618984858884174e-03, -7.208478171695067820e-03, -7.191326635072541919e-03, -7.174164403447980121e-03, -7.156991505294269668e-03, -7.139807969099825312e-03, -7.122613823368799217e-03, -7.105409096620604777e-03, -7.088193817390505552e-03, -7.070968014229288279e-03, -7.053731715702673058e-03, -7.036484950392290008e-03, -7.019227746894974966e-03, -7.001960133822900459e-03, -6.984682139803261719e-03, -6.967393793478673936e-03, -6.950095123506860872e-03, -6.932786158560837013e-03, -6.915466927328104384e-03, -6.898137458511627469e-03, -6.880797780829472389e-03, -6.863447923014492046e-03, -6.846087913813969639e-03, -6.828717781990525058e-03, -6.811337556321453955e-03, -6.793947265598778915e-03, -6.776546938628962360e-03, -6.759136604233407890e-03, -6.741716291248159298e-03, -6.724286028523234447e-03, -6.706845844923733750e-03, -6.689395769329003170e-03, -6.671935830632831979e-03, -6.654466057743148311e-03, -6.636986479582408609e-03, -6.619497125087255886e-03, -6.601998023208696664e-03, -6.584489202911370659e-03, -6.566970693174535231e-03, -6.549442522991350685e-03, -6.531904721369123125e-03, -6.514357317328762359e-03, -6.496800339905421141e-03, -6.479233818148216750e-03, -6.461657781119524956e-03, -6.444072257896042537e-03, -6.426477277568009260e-03, -6.408872869239442063e-03, -6.391259062027708319e-03, -6.373635885064016758e-03, -6.356003367493050574e-03, -6.338361538473150439e-03, -6.320710427175487908e-03, -6.303050062785155692e-03, -6.285380474500683670e-03, -6.267701691533751791e-03, -6.250013743108842265e-03, -6.232316658464161566e-03, -6.214610466850948277e-03, -6.196895197533613606e-03, -6.179170879789273006e-03, -6.161437542908394967e-03, -6.143695216194485290e-03, -6.125943928963374120e-03, -6.108183710544333976e-03, -6.090414590279260958e-03, -6.072636597522877711e-03, -6.054849761642387349e-03, -6.037054112017885450e-03, -6.019249678042045207e-03, -6.001436489120270078e-03, -5.983614574669899287e-03, -5.965783964121331925e-03, -5.947944686917225506e-03, -5.930096772512668570e-03, -5.912240250374794712e-03, -5.894375149983322078e-03, -5.876501500830117949e-03, -5.858619332419359206e-03, -5.840728674266840170e-03, -5.822829555900990023e-03, -5.804922006862170240e-03, -5.787006056702469897e-03, -5.769081734986166235e-03, -5.751149071289365575e-03, -5.733208095200201075e-03, -5.715258836317893380e-03, -5.697301324254296258e-03, -5.679335588632501014e-03, -5.661361659087503495e-03, -5.643379565265297694e-03, -5.625389336824057097e-03, -5.607391003433234364e-03, -5.589384594773837145e-03, -5.571370140537970118e-03, -5.553347670429405712e-03, -5.535317214163098382e-03, -5.517278801465496860e-03, -5.499232462073596998e-03, -5.481178225736205514e-03, -5.463116122213132475e-03, -5.445046181274925019e-03, -5.426968432703468438e-03, -5.408882906291473565e-03, -5.390789631842806372e-03, -5.372688639171581577e-03, -5.354579958103310167e-03, -5.336463618474087539e-03, -5.318339650130856321e-03, -5.300208082930865129e-03, -5.282068946742332106e-03, -5.263922271443921899e-03, -5.245768086925042296e-03, -5.227606423084928296e-03, -5.209437309833909319e-03, -5.191260777092519298e-03, -5.173076854791363102e-03, -5.154885572871605731e-03, -5.136686961284527356e-03, -5.118481049991824294e-03, -5.100267868964562107e-03, -5.082047448184831388e-03, -5.063819817644262845e-03, -5.045585007344711645e-03, -5.027343047297419543e-03, -5.009093967524099085e-03, -4.990837798056065380e-03, -4.972574568934548349e-03, -4.954304310210205266e-03, -4.936027051943692352e-03, -4.917742824205160838e-03, -4.899451657074597836e-03, -4.881153580640889590e-03, -4.862848625003034914e-03, -4.844536820269370637e-03, -4.826218196557304461e-03, -4.807892783993901291e-03, -4.789560612715396647e-03, -4.771221712867501977e-03, -4.752876114604490457e-03, -4.734523848090380072e-03, -4.716164943498105284e-03, -4.697799431009719133e-03, -4.679427340815970823e-03, -4.661048703116872118e-03, -4.642663548121213346e-03, -4.624271906046840096e-03, -4.605873807119781511e-03, -4.587469281575430775e-03, -4.569058359657543304e-03, -4.550641071619087631e-03, -4.532217447720669409e-03, -4.513787518232168124e-03, -4.495351313431940853e-03, -4.476908863606126644e-03, -4.458460199050134909e-03, -4.440005350067265447e-03, -4.421544346969367642e-03, -4.403077220075958358e-03, -4.384603999715372923e-03, -4.366124716223896904e-03, -4.347639399945989885e-03, -4.329148081233896890e-03, -4.310650790448139306e-03, -4.292147557957100290e-03, -4.273638414137280635e-03, -4.255123389372419268e-03, -4.236602514054630363e-03, -4.218075818583755417e-03, -4.199543333366974676e-03, -4.181005088819437707e-03, -4.162461115363831447e-03, -4.143911443430553683e-03, -4.125356103456923745e-03, -4.106795125888326563e-03, -4.088228541177333156e-03, -4.069656379783995540e-03, -4.051078672175347124e-03, -4.032495448825987316e-03, -4.013906740217632226e-03, -3.995312576839326300e-03, -3.976712989186649561e-03, -3.958108007762816544e-03, -3.939497663077761239e-03, -3.920881985648876078e-03, -3.902261005999566480e-03, -3.883634754660753984e-03, -3.865003262170122952e-03, -3.846366559071779691e-03, -3.827724675916856570e-03, -3.809077643263020663e-03, -3.790425491674766917e-03, -3.771768251722541244e-03, -3.753105953983900626e-03, -3.734438629042643142e-03, -3.715766307489096372e-03, -3.697089019919627337e-03, -3.678406796937231001e-03, -3.659719669151045417e-03, -3.641027667176618878e-03, -3.622330821635042115e-03, -3.603629163154152635e-03, -3.584922722367599700e-03, -3.566211529915185637e-03, -3.547495616442322870e-03, -3.528775012600664489e-03, -3.510049749047823662e-03, -3.491319856446595173e-03, -3.472585365466143714e-03, -3.453846306781148661e-03, -3.435102711072031325e-03, -3.416354609024539919e-03, -3.397602031330257399e-03, -3.378845008686190768e-03, -3.360083571795017838e-03, -3.341317751364164361e-03, -3.322547578107072110e-03, -3.303773082742167150e-03, -3.284994295993638735e-03, -3.266211248589973460e-03, -3.247423971265510877e-03, -3.228632494759501540e-03, -3.209836849816368951e-03, -3.191037067185221229e-03, -3.172233177620414034e-03, -3.153425211881347168e-03, -3.134613200731618896e-03, -3.115797174940283191e-03, -3.096977165280927723e-03, -3.078153202531945347e-03, -3.059325317476085243e-03, -3.040493540901002389e-03, -3.021657903598788750e-03, -3.002818436366280330e-03, -2.983975170004122147e-03, -2.965128135317982114e-03, -2.946277363117695385e-03, -2.927422884217479454e-03, -2.908564729435504821e-03, -2.889702929594451832e-03, -2.870837515521272587e-03, -2.851968518046374326e-03, -2.833095968004852808e-03, -2.814219896235597637e-03, -2.795340333581548559e-03, -2.776457310889242705e-03, -2.757570859009371433e-03, -2.738681008796332340e-03, -2.719787791108469084e-03, -2.700891236807210095e-03, -2.681991376758146271e-03, -2.663088241830596867e-03, -2.644181862897286399e-03, -2.625272270833947826e-03, -2.606359496520368156e-03, -2.587443570839552745e-03, -2.568524524677930423e-03, -2.549602388924925456e-03, -2.530677194473529134e-03, -2.511748972220031757e-03, -2.492817753063232035e-03, -2.473883567905665708e-03, -2.454946447652707822e-03, -2.436006423212819065e-03, -2.417063525497109913e-03, -2.398117785419889673e-03, -2.379169233898206347e-03, -2.360217901852123320e-03, -2.341263820203806894e-03, -2.322307019878767052e-03, -2.303347531804915069e-03, -2.284385386912893105e-03, -2.265420616135554663e-03, -2.246453250408569566e-03, -2.227483320669935637e-03, -2.208510857860269700e-03, -2.189535892921879064e-03, -2.170558456800011395e-03, -2.151578580442038962e-03, -2.132596294797220980e-03, -2.113611630817263057e-03, -2.094624619455859229e-03, -2.075635291668962139e-03, -2.056643678413863641e-03, -2.037649810650348815e-03, -2.018653719340171224e-03, -1.999655435446835629e-03, -1.980654989935100134e-03, -1.961652413772097675e-03, -1.942647737926432670e-03, -1.923640993368462256e-03, -1.904632211069804499e-03, -1.885621422003942727e-03, -1.866608657145722673e-03, -1.847593947471662780e-03, -1.828577323959010292e-03, -1.809558817586995674e-03, -1.790538459336031606e-03, -1.771516280187433907e-03, -1.752492311124037800e-03, -1.733466583129694401e-03, -1.714439127189557174e-03, -1.695409974289175965e-03, -1.676379155415722152e-03, -1.657346701557084207e-03, -1.638312643702147849e-03, -1.619277012840299916e-03, -1.600239839962042674e-03, -1.581201156058490960e-03, -1.562160992121664057e-03, -1.543119379143572138e-03, -1.524076348117439682e-03, -1.505031930036925501e-03, -1.485986155895835858e-03, -1.466939056688741812e-03, -1.447890663410475714e-03, -1.428841007056418306e-03, -1.409790118621485422e-03, -1.390738029101777932e-03, -1.371684769493042820e-03, -1.352630370791474412e-03, -1.333574863992714092e-03, -1.314518280093057668e-03, -1.295460650088575867e-03, -1.276402004975364787e-03, -1.257342375749090531e-03, -1.238281793405551258e-03, -1.219220288940224637e-03, -1.200157893348526971e-03, -1.181094637624907889e-03, -1.162030552764086767e-03, -1.142965669760244354e-03, -1.123900019606779250e-03, -1.104833633296874954e-03, -1.085766541823035818e-03, -1.066698776177352247e-03, -1.047630367350608398e-03, -1.028561346333493670e-03, -1.009491744115707367e-03, -9.904215916862347396e-04, -9.713509200328666795e-04, -9.522797601427754333e-04, -9.332081430020643326e-04, -9.141360995960137997e-04, -8.950636609081902414e-04, -8.759908579216734749e-04, -8.569177216181470816e-04, -8.378442829781839862e-04, -8.187705729807480490e-04, -7.996966226038016530e-04, -7.806224628240347610e-04, -7.615481246159615594e-04, -7.424736389535746247e-04, -7.233990368088109944e-04, -7.043243491523432011e-04, -6.852496069525795298e-04, -6.661748411768855880e-04, -6.471000827906833340e-04, -6.280253627577252716e-04, -6.089507120396165339e-04, -5.898761615963951481e-04, -5.708017423860688644e-04, -5.517274853648787255e-04, -5.326534214863919148e-04, -5.135795817027399152e-04, -4.945059969638142478e-04, -4.754326982170106546e-04, -4.563597164078089840e-04, -4.372870824793067125e-04, -4.182148273724814848e-04, -3.991429820252932314e-04, -3.800715773739094796e-04, -3.610006443518043277e-04, -3.419302138900291699e-04, -3.228603169167339128e-04, -3.037909843577582991e-04, -2.847222471361553469e-04, -2.656541361724590929e-04, -2.465866823837858436e-04, -2.275199166850603260e-04, -2.084538699880061604e-04, -1.893885732019488745e-04, -1.703240572322775560e-04, -1.512603529820941682e-04, -1.321974913514205102e-04, -1.131355032364046487e-04, -9.407441953097077554e-05, -7.501427112528152451e-05, -5.595508890653868840e-05, -3.689690375797611725e-05, -1.783974656008600855e-05, 1.216351810281940856e-06, 2.027136047965128946e-05, 3.932524857839374987e-05, 5.837798524014145850e-05, 7.742953960226198206e-05, 9.647988080558963391e-05, 1.155289779953243420e-04, 1.345768003198084112e-04, 1.536233169314236535e-04, 1.726684969863248771e-04, 1.917123096449136832e-04, 2.107547240712501235e-04, 2.297957094333163237e-04, 2.488352349038094424e-04, 2.678732696589154381e-04, 2.869097828792105290e-04, 3.059447437493914438e-04, 3.249781214587487842e-04, 3.440098852005825316e-04, 3.630400041726740000e-04, 3.820684475770168460e-04, 4.010951846207191245e-04, 4.201201845147726653e-04, 4.391434164750685908e-04, 4.581648497215857910e-04, 4.771844534799361826e-04, 4.962021969797094029e-04, 5.152180494554851843e-04, 5.342319801465543342e-04, 5.532439582974015306e-04, 5.722539531571149739e-04, 5.912619339796487640e-04, 6.102678700246149095e-04, 6.292717305560569874e-04, 6.482734848433554511e-04, 6.672731021609513763e-04, 6.862705517888242684e-04, 7.052658030119060518e-04, 7.242588251205518300e-04, 7.432495874102700278e-04, 7.622380591826300855e-04, 7.812242097440231072e-04, 8.002080084065762771e-04, 8.191894244878723764e-04, 8.381684273114291088e-04, 8.571449862061088611e-04, 8.761190705063882358e-04, 8.950906495531347736e-04, 9.140596926924005614e-04, 9.330261692763077005e-04, 9.519900486627858212e-04, 9.709513002160429515e-04, 9.899098933059766875e-04, 1.008865797308660349e-03, 1.027818981606051438e-03, 1.046769415586913101e-03, 1.065717068645567409e-03, 1.084661910182927944e-03, 1.103603909605669741e-03, 1.122543036327788152e-03, 1.141479259768933508e-03, 1.160412549355424637e-03, 1.179342874519983663e-03, 1.198270204702189421e-03, 1.217194509347920180e-03, 1.236115757909587391e-03, 1.255033919846944724e-03, 1.273948964625851860e-03, 1.292860861719189553e-03, 1.311769580606573843e-03, 1.330675090774831575e-03, 1.349577361717422099e-03, 1.368476362934904983e-03, 1.387372063934673959e-03, 1.406264434231846829e-03, 1.425153443348045309e-03, 1.444039060812303370e-03, 1.462921256160777976e-03, 1.481799998937238273e-03, 1.500675258692478172e-03, 1.519547004984775828e-03, 1.538415207379637559e-03, 1.557279835450685584e-03, 1.576140858778444804e-03, 1.594998246951131451e-03, 1.613851969564905273e-03, 1.632701996223284062e-03, 1.651548296537634153e-03, 1.670390840126882237e-03, 1.689229596618407447e-03, 1.708064535646944791e-03, 1.726895626855049415e-03, 1.745722839893351381e-03, 1.764546144421034026e-03, 1.783365510104712023e-03, 1.802180906619338862e-03, 1.820992303647924306e-03, 1.839799670882004932e-03, 1.858602978021091628e-03, 1.877402194773084400e-03, 1.896197290854061178e-03, 1.914988235989118284e-03, 1.933774999911202531e-03, 1.952557552361864962e-03, 1.971335863091528643e-03, 1.990109901858913392e-03, 2.008879638431484635e-03, 2.027645042585220735e-03, 2.046406084105467996e-03, 2.065162732785736765e-03, 2.083914958428623437e-03, 2.102662730845485193e-03, 2.121406019856957384e-03, 2.140144795292342472e-03, 2.158879026990110066e-03, 2.177608684797593779e-03, 2.196333738571892846e-03, 2.215054158178675608e-03, 2.233769913492948418e-03, 2.252480974399315855e-03, 2.271187310791403062e-03, 2.289888892572304602e-03, 2.308585689654365017e-03, 2.327277671960002823e-03, 2.345964809420662735e-03, 2.364647071977242412e-03, 2.383324429580376946e-03, 2.401996852190882957e-03, 2.420664309778683063e-03, 2.439326772323664131e-03, 2.457984209815422712e-03, 2.476636592253744686e-03, 2.495283889647993344e-03, 2.513926072017614623e-03, 2.532563109391836997e-03, 2.551194971810583079e-03, 2.569821629323243602e-03, 2.588443051989464984e-03, 2.607059209879420379e-03, 2.625670073073185611e-03, 2.644275611661269995e-03, 2.662875795744293252e-03, 2.681470595433909244e-03, 2.700059980851566947e-03, 2.718643922129418584e-03, 2.737222389410058979e-03, 2.755795352846952730e-03, 2.774362782603900790e-03, 2.792924648855479777e-03, 2.811480921786790009e-03, 2.830031571594309858e-03, 2.848576568484741719e-03, 2.867115882675839479e-03, 2.885649484396189072e-03, 2.904177343885642158e-03, 2.922699431394741934e-03, 2.941215717185017599e-03, 2.959726171529795773e-03, 2.978230764712646184e-03, 2.996729467028854451e-03, 3.015222248784635815e-03, 3.033709080298138249e-03, 3.052189931898219473e-03, 3.070664773925353350e-03, 3.089133576731333680e-03, 3.107596310679747349e-03, 3.126052946145427454e-03, 3.144503453514879612e-03, 3.162947803186023487e-03, 3.181385965569097883e-03, 3.199817911085420848e-03, 3.218243610168197190e-03, 3.236663033262761769e-03, 3.255076150826000971e-03, 3.273482933326813272e-03, 3.291883351245855974e-03, 3.310277375076418199e-03, 3.328664975323225670e-03, 3.347046122503287684e-03, 3.365420787145691987e-03, 3.383788939792006355e-03, 3.402150550995740406e-03, 3.420505591322814398e-03, 3.438854031351245687e-03, 3.457195841672083304e-03, 3.475530992888176737e-03, 3.493859455615061504e-03, 3.512181200480689412e-03, 3.530496198125888680e-03, 3.548804419203828789e-03, 3.567105834380207823e-03, 3.585400414334164940e-03, 3.603688129756690058e-03, 3.621968951352066285e-03, 3.640242849837142629e-03, 3.658509795942267284e-03, 3.676769760410149648e-03, 3.695022713996651796e-03, 3.713268627470605026e-03, 3.731507471614240509e-03, 3.749739217222587771e-03, 3.767963835103966923e-03, 3.786181296079741462e-03, 3.804391570985137493e-03, 3.822594630668097078e-03, 3.840790445990130419e-03, 3.858978987826059120e-03, 3.877160227064464174e-03, 3.895334134607137799e-03, 3.913500681369317183e-03, 3.931659838280436060e-03, 3.949811576282981525e-03, 3.967955866333328432e-03, 3.986092679401481362e-03, 4.004221986471551663e-03, 4.022343758541133824e-03, 4.040457966621851041e-03, 4.058564581739027358e-03, 4.076663574932537677e-03, 4.094754917255706214e-03, 4.112838579776183397e-03, 4.130914533575251978e-03, 4.148982749749239099e-03, 4.167043199407965449e-03, 4.185095853675721914e-03, 4.203140683690942576e-03, 4.221177660606755498e-03, 4.239206755590322652e-03, 4.257227939823157378e-03, 4.275241184501870316e-03, 4.293246460836948157e-03, 4.311243740053665244e-03, 4.329232993391836370e-03, 4.347214192106177606e-03, 4.365187307465863073e-03, 4.383152310754874492e-03, 4.401109173271822508e-03, 4.419057866330741192e-03, 4.436998361259959604e-03, 4.454930629402919715e-03, 4.472854642117983850e-03, 4.490770370778807662e-03, 4.508677786773803223e-03, 4.526576861506445212e-03, 4.544467566395915363e-03, 4.562349872876035606e-03, 4.580223752396072982e-03, 4.598089176420485508e-03, 4.615946116429383607e-03, 4.633794543917957656e-03, 4.651634430396927276e-03, 4.669465747392304543e-03, 4.687288466446217113e-03, 4.705102559115754632e-03, 4.722907996973934978e-03, 4.740704751608925370e-03, 4.758492794625503002e-03, 4.776272097643498131e-03, 4.794042632298728228e-03, 4.811804370242758581e-03, 4.829557283143335981e-03, 4.847301342683830137e-03, 4.865036520563497356e-03, 4.882762788498216065e-03, 4.900480118219311537e-03, 4.918188481474454476e-03, 4.935887850027321881e-03, 4.953578195658140879e-03, 4.971259490163049480e-03, 4.988931705354577965e-03, 5.006594813061416432e-03, 5.024248785129206696e-03, 5.041893593419432065e-03, 5.059529209810217920e-03, 5.077155606196144359e-03, 5.094772754488625238e-03, 5.112380626615362599e-03, 5.129979194520842799e-03, 5.147568430166010386e-03, 5.165148305529170154e-03, 5.182718792604787579e-03, 5.200279863404276386e-03, 5.217831489956185030e-03, 5.235373644305721386e-03, 5.252906298515111830e-03, 5.270429424663399150e-03, 5.287942994847286485e-03, 5.305446981180054859e-03, 5.322941355792028956e-03, 5.340426090830806098e-03, 5.357901158461702076e-03, 5.375366530866718985e-03, 5.392822180245357942e-03, 5.410268078814372758e-03, 5.427704198808243514e-03, 5.445130512478569412e-03, 5.462546992094531942e-03, 5.479953609942684982e-03, 5.497350338327695526e-03, 5.514737149571324534e-03, 5.532114016013039287e-03, 5.549480910010355129e-03, 5.566837803938197958e-03, 5.584184670189437649e-03, 5.601521481174561064e-03, 5.618848209322507316e-03, 5.636164827079593979e-03, 5.653471306910299449e-03, 5.670767621296976709e-03, 5.688053742740374619e-03, 5.705329643759038567e-03, 5.722595296889765835e-03, 5.739850674687328042e-03, 5.757095749725296870e-03, 5.774330494594986755e-03, 5.791554881906097602e-03, 5.808768884286979323e-03, 5.825972474384121837e-03, 5.843165624862514153e-03, 5.860348308405503859e-03, 5.877520497715509225e-03, 5.894682165513057299e-03, 5.911833284537210652e-03, 5.928973827545772068e-03, 5.946103767315757266e-03, 5.963223076642349720e-03, 5.980331728339702106e-03, 5.997429695240729872e-03, 6.014516950197511085e-03, 6.031593466080759081e-03, 6.048659215780237061e-03, 6.065714172204538651e-03, 6.082758308281908423e-03, 6.099791596959039733e-03, 6.116814011201945553e-03, 6.133825523996033063e-03, 6.150826108345707269e-03, 6.167815737274678044e-03, 6.184794383825828294e-03, 6.201762021061913051e-03, 6.218718622064550727e-03, 6.235664159934949970e-03, 6.252598607793742255e-03, 6.269521938781323633e-03, 6.286434126057401962e-03, 6.303335142801380284e-03, 6.320224962212111358e-03, 6.337103557508689568e-03, 6.353970901929433500e-03, 6.370826968732551214e-03, 6.387671731196038760e-03, 6.404505162617995899e-03, 6.421327236316162930e-03, 6.438137925628101103e-03, 6.454937203911966306e-03, 6.471725044545423994e-03, 6.488501420926173074e-03, 6.505266306472077750e-03, 6.522019674621622881e-03, 6.538761498832946009e-03, 6.555491752584601504e-03, 6.572210409375347194e-03, 6.588917442724508654e-03, 6.605612826171537721e-03, 6.622296533276344696e-03, 6.638968537619140478e-03, 6.655628812801132194e-03, 6.672277332443553484e-03, 6.688914070188291608e-03, 6.705538999698085201e-03, 6.722152094656096664e-03, 6.738753328766243500e-03, 6.755342675753038713e-03, 6.771920109362288172e-03, 6.788485603360107021e-03, 6.805039131533571067e-03, 6.821580667690701170e-03, 6.838110185660631508e-03, 6.854627659293248756e-03, 6.871133062459548572e-03, 6.887626369051427430e-03, 6.904107552982409468e-03, 6.920576588186671575e-03, 6.937033448619719933e-03, 6.953478108258207870e-03, 6.969910541100379948e-03, 6.986330721165479561e-03, 7.002738622493994390e-03, 7.019134219148523771e-03, 7.035517485212230450e-03, 7.051888394790206682e-03, 7.068246922008795952e-03, 7.084593041016495028e-03, 7.100926725982796908e-03, 7.117247951099027817e-03, 7.133556690578133838e-03, 7.149852918655033064e-03, 7.166136609586151555e-03, 7.182407737649798909e-03, 7.198666277145932338e-03, 7.214912202396976323e-03, 7.231145487746698519e-03, 7.247366107561034609e-03, 7.263574036227833305e-03, 7.279769248157264006e-03, 7.295951717781283367e-03, 7.312121419553944957e-03, 7.328278327951955225e-03, 7.344422417473698596e-03, 7.360553662639986866e-03, 7.376672037993838894e-03, 7.392777518100891732e-03, 7.408870077548819488e-03, 7.424949690947870232e-03, 7.441016332930480877e-03, 7.457069978152152355e-03, 7.473110601290407044e-03, 7.489138177045434087e-03, 7.505152680140020870e-03, 7.521154085319819299e-03, 7.537142367352896513e-03, 7.553117501030179835e-03, 7.569079461165213914e-03, 7.585028222594680271e-03, 7.600963760177765864e-03, 7.616886048796500490e-03, 7.632795063356365671e-03, 7.648690778785246884e-03, 7.664573170034221991e-03, 7.680442212077360879e-03, 7.696297879912007353e-03, 7.712140148558415710e-03, 7.727968993060070797e-03, 7.743784388483457293e-03, 7.759586309918842066e-03, 7.775374732479275845e-03, 7.791149631301227257e-03, 7.806910981544488287e-03, 7.822658758392492598e-03, 7.838392937051822870e-03, 7.854113492752490960e-03, 7.869820400748494746e-03, 7.885513636316883110e-03, 7.901193174758435953e-03, 7.916858991397547965e-03, 7.932511061582438530e-03, 7.948149360684837739e-03, 7.963773864100300373e-03, 7.979384547247949169e-03, 7.994981385571295340e-03, 8.010564354537143966e-03, 8.026133429636471764e-03, 8.041688586383778301e-03, 8.057229800318296831e-03, 8.072757047002639477e-03, 8.088270302023711431e-03, 8.103769540992337983e-03, 8.119254739543795354e-03, 8.134725873337203539e-03, 8.150182918055852432e-03, 8.165625849407770823e-03, 8.181054643124737596e-03, 8.196469274963024201e-03, 8.211869720703183009e-03, 8.227255956150395996e-03, 8.242627957134049735e-03, 8.257985699508028563e-03, 8.273329159150617437e-03, 8.288658311965116030e-03, 8.303973133878896767e-03, 8.319273600844116073e-03, 8.334559688837532218e-03, 8.349831373860827979e-03, 8.365088631940170022e-03, 8.380331439126559312e-03, 8.395559771495647236e-03, 8.410773605148462451e-03, 8.425972916210366578e-03, 8.441157680831722077e-03, 8.456327875188154181e-03, 8.471483475479973241e-03, 8.486624457932617077e-03, 8.501750798796454955e-03, 8.516862474347389536e-03, 8.531959460886058902e-03, 8.547041734738433302e-03, 8.562109272255357187e-03, 8.577162049813655958e-03, 8.592200043814824523e-03, 8.607223230685887710e-03, 8.622231586879148743e-03, 8.637225088872563933e-03, 8.652203713169239613e-03, 8.667167436297851940e-03, 8.682116234812457811e-03, 8.697050085293131505e-03, 8.711968964345010585e-03, 8.726872848598960300e-03, 8.741761714711748787e-03, 8.756635539365596049e-03, 8.771494299268500078e-03, 8.786337971154094609e-03, 8.801166531782277092e-03, 8.815979957938313571e-03, 8.830778226433492681e-03, 8.845561314104943493e-03, 8.860329197815982466e-03, 8.875081854455646804e-03, 8.889819260939063952e-03, 8.904541394207328431e-03, 8.919248231227991028e-03, 8.933939748994368379e-03, 8.948615924525896853e-03, 8.963276734868581841e-03, 8.977922157094260502e-03, 8.992552168301281776e-03, 9.007166745614039738e-03, 9.021765866183759433e-03, 9.036349507187679819e-03, 9.050917645829345201e-03, 9.065470259338787376e-03, 9.080007324972995744e-03, 9.094528820014968415e-03, 9.109034721774374871e-03, 9.123525007587427599e-03, 9.137999654817211687e-03, 9.152458640853228591e-03, 9.166901943111736145e-03, 9.181329539035540388e-03, 9.195741406094750173e-03, 9.210137521785741535e-03, 9.224517863631827297e-03, 9.238882409183427069e-03, 9.253231136017600611e-03, 9.267564021738500593e-03, 9.281881043976971876e-03, 9.296182180391439689e-03, 9.310467408666849715e-03, 9.324736706515448711e-03, 9.338990051676418491e-03, 9.353227421916378986e-03, 9.367448795028897324e-03, 9.381654148834843443e-03, 9.395843461182124684e-03, 9.410016709946457739e-03, 9.424173873030386797e-03, 9.438314928363972234e-03, 9.452439853904608461e-03, 9.466548627637239033e-03, 9.480641227574186647e-03, 9.494717631755085485e-03, 9.508777818247531738e-03, 9.522821765146405326e-03, 9.536849450573968781e-03, 9.550860852680325211e-03, 9.564855949643479016e-03, 9.578834719668768635e-03, 9.592797140989383492e-03, 9.606743191866202666e-03, 9.620672850588105410e-03, 9.634586095471570424e-03, 9.648482904861050563e-03, 9.662363257128707417e-03, 9.676227130675127755e-03, 9.690074503928338204e-03, 9.703905355344493930e-03, 9.717719663407994868e-03, 9.731517406631060713e-03, 9.745298563554081334e-03, 9.759063112745429425e-03, 9.772811032802104086e-03, 9.786542302348866934e-03, 9.800256900038785066e-03, 9.813954804553166877e-03, 9.827635994601836150e-03, 9.841300448922717450e-03, 9.854948146282158788e-03, 9.868579065474758147e-03, 9.882193185323972368e-03, 9.895790484681277546e-03, 9.909370942426836901e-03, 9.922934537469167704e-03, 9.936481248745633946e-03, 9.950011055221972753e-03, 9.963523935892400207e-03, 9.977019869780313910e-03, 9.990498835937392658e-03, 1.000396081344393298e-02, 1.001740578140907292e-02, 1.003083371897113031e-02, 1.004424460529675621e-02, 1.005763841958162361e-02, 1.007101514105020711e-02, 1.008437474895607783e-02, 1.009771722258157728e-02, 1.011104254123807930e-02, 1.012435068426583221e-02, 1.013764163103453471e-02, 1.015091536094247723e-02, 1.016417185341734856e-02, 1.017741108791574492e-02, 1.019063304392370597e-02, 1.020383770095627772e-02, 1.021702503855760440e-02, 1.023019503630155126e-02, 1.024334767379087886e-02, 1.025648293065779294e-02, 1.026960078656371199e-02, 1.028270122119978418e-02, 1.029578421428623512e-02, 1.030884974557291778e-02, 1.032189779483895509e-02, 1.033492834189344602e-02, 1.034794136657454788e-02, 1.036093684875019280e-02, 1.037391476831786390e-02, 1.038687510520480695e-02, 1.039981783936776670e-02, 1.041274295079329740e-02, 1.042565041949752164e-02, 1.043854022552663519e-02, 1.045141234895634319e-02, 1.046426676989207355e-02, 1.047710346846961356e-02, 1.048992242485417489e-02, 1.050272361924096259e-02, 1.051550703185511956e-02, 1.052827264295196248e-02, 1.054102043281659323e-02, 1.055375038176421289e-02, 1.056646247013992741e-02, 1.057915667831940860e-02, 1.059183298670798509e-02, 1.060449137574126684e-02, 1.061713182588505840e-02, 1.062975431763547689e-02, 1.064235883151875076e-02, 1.065494534809129090e-02, 1.066751384794024059e-02, 1.068006431168260807e-02, 1.069259671996598653e-02, 1.070511105346822096e-02, 1.071760729289780376e-02, 1.073008541899350340e-02, 1.074254541252459352e-02, 1.075498725429078692e-02, 1.076741092512262764e-02, 1.077981640588094973e-02, 1.079220367745722595e-02, 1.080457272077357117e-02, 1.081692351678288470e-02, 1.082925604646859871e-02, 1.084157029084489160e-02, 1.085386623095667066e-02, 1.086614384787975771e-02, 1.087840312272061148e-02, 1.089064403661646127e-02, 1.090286657073577699e-02, 1.091507070627751631e-02, 1.092725642447168848e-02, 1.093942370657919466e-02, 1.095157253389212292e-02, 1.096370288773333701e-02, 1.097581474945679911e-02, 1.098790810044742230e-02, 1.099998292212157197e-02, 1.101203919592638573e-02, 1.102407690334022798e-02, 1.103609602587259444e-02, 1.104809654506440190e-02, 1.106007844248754930e-02, 1.107204169974525428e-02, 1.108398629847200285e-02, 1.109591222033385650e-02, 1.110781944702790569e-02, 1.111970796028260121e-02, 1.113157774185806644e-02, 1.114342877354565844e-02, 1.115526103716814495e-02, 1.116707451457978582e-02, 1.117886918766666793e-02, 1.119064503834598517e-02, 1.120240204856678967e-02, 1.121414020030931172e-02, 1.122585947558604400e-02, 1.123755985644063135e-02, 1.124924132494854734e-02, 1.126090386321691554e-02, 1.127254745338470039e-02, 1.128417207762256666e-02, 1.129577771813292629e-02, 1.130736435714986381e-02, 1.131893197693974520e-02, 1.133048055980038701e-02, 1.134201008806155070e-02, 1.135352054408511786e-02, 1.136501191026475892e-02, 1.137648416902609615e-02, 1.138793730282670544e-02, 1.139937129415649793e-02, 1.141078612553713713e-02, 1.142218177952239802e-02, 1.143355823869817399e-02, 1.144491548568264162e-02, 1.145625350312593285e-02, 1.146757227371046801e-02, 1.147887178015073728e-02, 1.149015200519379332e-02, 1.150141293161864760e-02, 1.151265454223662603e-02, 1.152387681989156323e-02, 1.153507974745940703e-02, 1.154626330784861050e-02, 1.155742748399985094e-02, 1.156857225888657283e-02, 1.157969761551435120e-02, 1.159080353692133226e-02, 1.160189000617796277e-02, 1.161295700638768046e-02, 1.162400452068604664e-02, 1.163503253224130660e-02, 1.164604102425431491e-02, 1.165702997995867081e-02, 1.166799938262041807e-02, 1.167894921553839886e-02, 1.168987946204400226e-02, 1.170079010550167768e-02, 1.171168112930833297e-02, 1.172255251689360497e-02, 1.173340425172018225e-02, 1.174423631728338697e-02, 1.175504869711145421e-02, 1.176584137476537929e-02, 1.177661433383936015e-02, 1.178736755796022835e-02, 1.179810103078783069e-02, 1.180881473601498935e-02, 1.181950865736761287e-02, 1.183018277860453139e-02, 1.184083708351762500e-02, 1.185147155593180984e-02, 1.186208617970533480e-02, 1.187268093872930960e-02, 1.188325581692807609e-02, 1.189381079825903645e-02, 1.190434586671302100e-02, 1.191486100631389267e-02, 1.192535620111870656e-02, 1.193583143521804307e-02, 1.194628669273559499e-02, 1.195672195782827851e-02, 1.196713721468633217e-02, 1.197753244753374698e-02, 1.198790764062747892e-02, 1.199826277825800577e-02, 1.200859784474924731e-02, 1.201891282445866592e-02, 1.202920770177704976e-02, 1.203948246112880420e-02, 1.204973708697166211e-02, 1.205997156379729623e-02, 1.207018587613062355e-02, 1.208038000853014007e-02, 1.209055394558819496e-02, 1.210070767193059844e-02, 1.211084117221685429e-02, 1.212095443114005050e-02, 1.213104743342733813e-02, 1.214112016383921307e-02, 1.215117260717013883e-02, 1.216120474824816319e-02, 1.217121657193543510e-02, 1.218120806312766521e-02, 1.219117920675451446e-02, 1.220112998777938065e-02, 1.221106039119986518e-02, 1.222097040204720916e-02, 1.223086000538665778e-02, 1.224072918631739434e-02, 1.225057792997260794e-02, 1.226040622151956458e-02, 1.227021404615931226e-02, 1.228000138912733151e-02, 1.228976823569290049e-02, 1.229951457115931526e-02, 1.230924038086408587e-02, 1.231894565017906985e-02, 1.232863036450999351e-02, 1.233829450929686128e-02, 1.234793807001380653e-02, 1.235756103216934486e-02, 1.236716338130611562e-02, 1.237674510300102240e-02, 1.238630618286517410e-02, 1.239584660654429078e-02, 1.240536635971815384e-02, 1.241486542810091645e-02, 1.242434379744111750e-02, 1.243380145352177349e-02, 1.244323838216026233e-02, 1.245265456920825048e-02, 1.246205000055223590e-02, 1.247142466211279867e-02, 1.248077853984520466e-02, 1.249011161973919391e-02, 1.249942388781909511e-02, 1.250871533014371109e-02, 1.251798593280647499e-02, 1.252723568193534441e-02, 1.253646456369315702e-02, 1.254567256427708763e-02, 1.255485966991908876e-02, 1.256402586688577100e-02, 1.257317114147855214e-02, 1.258229548003346465e-02, 1.259139886892127365e-02, 1.260048129454746646e-02, 1.260954274335263081e-02, 1.261858320181174012e-02, 1.262760265643472074e-02, 1.263660109376661851e-02, 1.264557850038693435e-02, 1.265453486291031812e-02, 1.266347016798613154e-02, 1.267238440229889046e-02, 1.268127755256791798e-02, 1.269014960554741729e-02, 1.269900054802665032e-02, 1.270783036683004359e-02, 1.271663904881680657e-02, 1.272542658088128900e-02, 1.273419294995280747e-02, 1.274293814299594374e-02, 1.275166214701020997e-02, 1.276036494903022220e-02, 1.276904653612599694e-02, 1.277770689540233887e-02, 1.278634601399948438e-02, 1.279496387909263497e-02, 1.280356047789252272e-02, 1.281213579764485522e-02, 1.282068982563057402e-02, 1.282922254916601598e-02, 1.283773395560282131e-02, 1.284622403232785551e-02, 1.285469276676331866e-02, 1.286314014636668820e-02, 1.287156615863098083e-02, 1.287997079108438650e-02, 1.288835403129062057e-02, 1.289671586684871217e-02, 1.290505628539331817e-02, 1.291337527459432422e-02, 1.292167282215706849e-02, 1.292994891582268865e-02, 1.293820354336753034e-02, 1.294643669260351314e-02, 1.295464835137811674e-02, 1.296283850757445032e-02, 1.297100714911111376e-02, 1.297915426394233122e-02, 1.298727984005780024e-02, 1.299538386548319303e-02, 1.300346632827951467e-02, 1.301152721654350898e-02, 1.301956651840756665e-02, 1.302758422203994029e-02, 1.303558031564437669e-02, 1.304355478746050540e-02, 1.305150762576357155e-02, 1.305943881886480369e-02, 1.306734835511105808e-02, 1.307523622288490027e-02, 1.308310241060494511e-02, 1.309094690672542652e-02, 1.309876969973653403e-02, 1.310657077816427228e-02, 1.311435013057065009e-02, 1.312210774555346363e-02, 1.312984361174644211e-02, 1.313755771781914897e-02, 1.314525005247735821e-02, 1.315292060446256357e-02, 1.316056936255230285e-02, 1.316819631556014406e-02, 1.317580145233572184e-02, 1.318338476176456400e-02, 1.319094623276823898e-02, 1.319848585430464377e-02, 1.320600361536744191e-02, 1.321349950498652316e-02, 1.322097351222785433e-02, 1.322842562619355733e-02, 1.323585583602188316e-02, 1.324326413088722752e-02, 1.325065050000005101e-02, 1.325801493260732669e-02, 1.326535741799190690e-02, 1.327267794547292920e-02, 1.327997650440579207e-02, 1.328725308418227113e-02, 1.329450767423014969e-02, 1.330174026401372001e-02, 1.330895084303335661e-02, 1.331613940082598119e-02, 1.332330592696468440e-02, 1.333045041105885946e-02, 1.333757284275437563e-02, 1.334467321173341686e-02, 1.335175150771449049e-02, 1.335880772045252435e-02, 1.336584183973899692e-02, 1.337285385540167362e-02, 1.337984375730476468e-02, 1.338681153534880715e-02, 1.339375717947122180e-02, 1.340068067964545959e-02, 1.340758202588175456e-02, 1.341446120822667107e-02, 1.342131821676342991e-02, 1.342815304161173139e-02, 1.343496567292785937e-02, 1.344175610090454775e-02, 1.344852431577133779e-02, 1.345527030779419299e-02, 1.346199406727567778e-02, 1.346869558455515703e-02, 1.347537485000838836e-02, 1.348203185404797666e-02, 1.348866658712291264e-02, 1.349527903971933264e-02, 1.350186920235966516e-02, 1.350843706560316340e-02, 1.351498262004576650e-02, 1.352150585632024005e-02, 1.352800676509603554e-02, 1.353448533707929391e-02, 1.354094156301297210e-02, 1.354737543367688993e-02, 1.355378693988758092e-02, 1.356017607249840155e-02, 1.356654282239946711e-02, 1.357288718051781473e-02, 1.357920913781732880e-02, 1.358550868529859526e-02, 1.359178581399936997e-02, 1.359804051499404962e-02, 1.360427277939400652e-02, 1.361048259834732842e-02, 1.361666996303946379e-02, 1.362283486469238573e-02, 1.362897729456521295e-02, 1.363509724395387673e-02, 1.364119470419146961e-02, 1.364726966664788800e-02, 1.365332212273015142e-02, 1.365935206388208499e-02, 1.366535948158486592e-02, 1.367134436735641979e-02, 1.367730671275174843e-02, 1.368324650936300971e-02, 1.368916374881932844e-02, 1.369505842278698031e-02, 1.370093052296917843e-02, 1.370678004110651403e-02, 1.371260696897640824e-02, 1.371841129839349895e-02, 1.372419302120958008e-02, 1.372995212931361897e-02, 1.373568861463161234e-02, 1.374140246912685173e-02, 1.374709368479964770e-02, 1.375276225368772011e-02, 1.375840816786580260e-02, 1.376403141944593927e-02, 1.376963200057725219e-02, 1.377520990344627792e-02, 1.378076512027669523e-02, 1.378629764332929553e-02, 1.379180746490249465e-02, 1.379729457733170489e-02, 1.380275897298953620e-02, 1.380820064428610501e-02, 1.381361958366878265e-02, 1.381901578362221619e-02, 1.382438923666832672e-02, 1.382973993536640300e-02, 1.383506787231319861e-02, 1.384037304014264051e-02, 1.384565543152607714e-02, 1.385091503917223327e-02, 1.385615185582722911e-02, 1.386136587427461500e-02, 1.386655708733525692e-02, 1.387172548786745618e-02, 1.387687106876690779e-02, 1.388199382296685311e-02, 1.388709374343777975e-02, 1.389217082318781361e-02, 1.389722505526244829e-02, 1.390225643274465780e-02, 1.390726494875484630e-02, 1.391225059645094346e-02, 1.391721336902836115e-02, 1.392215325972004716e-02, 1.392707026179633781e-02, 1.393196436856534298e-02, 1.393683557337243098e-02, 1.394168386960062921e-02, 1.394650925067049234e-02, 1.395131171004014917e-02, 1.395609124120528871e-02, 1.396084783769910645e-02, 1.396558149309242922e-02, 1.397029220099375510e-02, 1.397497995504900885e-02, 1.397964474894177432e-02, 1.398428657639339684e-02, 1.398890543116266053e-02, 1.399350130704598953e-02, 1.399807419787753478e-02, 1.400262409752908027e-02, 1.400715099991000495e-02, 1.401165489896732778e-02, 1.401613578868580318e-02, 1.402059366308788801e-02, 1.402502851623364452e-02, 1.402944034222084954e-02, 1.403382913518493383e-02, 1.403819488929916245e-02, 1.404253759877440756e-02, 1.404685725785918306e-02, 1.405115386083994992e-02, 1.405542740204078662e-02, 1.405967787582346022e-02, 1.406390527658749404e-02, 1.406810959877028561e-02, 1.407229083684686383e-02, 1.407644898533010752e-02, 1.408058403877057718e-02, 1.408469599175674915e-02, 1.408878483891483520e-02, 1.409285057490877562e-02, 1.409689319444035194e-02, 1.410091269224918176e-02, 1.410490906311271178e-02, 1.410888230184615885e-02, 1.411283240330252556e-02, 1.411675936237277371e-02, 1.412066317398569248e-02, 1.412454383310770244e-02, 1.412840133474341058e-02, 1.413223567393503965e-02, 1.413604684576271441e-02, 1.413983484534451357e-02, 1.414359966783628950e-02, 1.414734130843187977e-02, 1.415105976236295283e-02, 1.415475502489895940e-02, 1.415842709134750022e-02, 1.416207595705387158e-02, 1.416570161740137584e-02, 1.416930406781116702e-02, 1.417288330374236530e-02, 1.417643932069199107e-02, 1.417997211419505521e-02, 1.418348167982437166e-02, 1.418696801319086279e-02, 1.419043110994325056e-02, 1.419387096576824048e-02, 1.419728757639062214e-02, 1.420068093757296569e-02, 1.420405104511589765e-02, 1.420739789485796038e-02, 1.421072148267573700e-02, 1.421402180448381666e-02, 1.421729885623465063e-02, 1.422055263391873089e-02, 1.422378313356457633e-02, 1.422699035123867195e-02, 1.423017428304550885e-02, 1.423333492512754948e-02, 1.423647227366532306e-02, 1.423958632487735444e-02, 1.424267707502012426e-02, 1.424574452038823713e-02, 1.424878865731426213e-02, 1.425180948216877262e-02, 1.425480699136043826e-02, 1.425778118133585494e-02, 1.426073204857984146e-02, 1.426365958961505441e-02, 1.426656380100233858e-02, 1.426944467934056389e-02, 1.427230222126656470e-02, 1.427513642345534621e-02, 1.427794728261990234e-02, 1.428073479551134062e-02, 1.428349895891878329e-02, 1.428623976966941073e-02, 1.428895722462857239e-02, 1.429165132069961514e-02, 1.429432205482396127e-02, 1.429696942398110682e-02, 1.429959342518873598e-02, 1.430219405550244016e-02, 1.430477131201607008e-02, 1.430732519186143047e-02, 1.430985569220853681e-02, 1.431236281026543669e-02, 1.431484654327830341e-02, 1.431730688853129208e-02, 1.431974384334689689e-02, 1.432215740508553832e-02, 1.432454757114579036e-02, 1.432691433896428682e-02, 1.432925770601590522e-02, 1.433157766981348925e-02, 1.433387422790811765e-02, 1.433614737788888732e-02, 1.433839711738307647e-02, 1.434062344405609250e-02, 1.434282635561140266e-02, 1.434500584979066067e-02, 1.434716192437359393e-02, 1.434929457717809553e-02, 1.435140380606017042e-02, 1.435348960891398400e-02, 1.435555198367179618e-02, 1.435759092830394927e-02, 1.435960644081910390e-02, 1.436159851926379662e-02, 1.436356716172292568e-02, 1.436551236631941966e-02, 1.436743413121427913e-02, 1.436933245460681428e-02, 1.437120733473435524e-02, 1.437305876987238565e-02, 1.437488675833453917e-02, 1.437669129847261688e-02, 1.437847238867651783e-02, 1.438023002737427031e-02, 1.438196421303215844e-02, 1.438367494415451232e-02, 1.438536221928374791e-02, 1.438702603700054740e-02, 1.438866639592370142e-02, 1.439028329471007776e-02, 1.439187673205479141e-02, 1.439344670669101892e-02, 1.439499321739013543e-02, 1.439651626296159677e-02, 1.439801584225308163e-02, 1.439949195415028693e-02, 1.440094459757722441e-02, 1.440237377149593268e-02, 1.440377947490657090e-02, 1.440516170684756105e-02, 1.440652046639531898e-02, 1.440785575266450430e-02, 1.440916756480782428e-02, 1.441045590201627154e-02, 1.441172076351884997e-02, 1.441296214858272563e-02, 1.441418005651320770e-02, 1.441537448665373110e-02, 1.441654543838590853e-02, 1.441769291112943510e-02, 1.441881690434215768e-02, 1.441991741752007491e-02, 1.442099445019726263e-02, 1.442204800194593628e-02, 1.442307807237646310e-02, 1.442408466113732045e-02, 1.442506776791515309e-02, 1.442602739243460837e-02, 1.442696353445858427e-02, 1.442787619378806119e-02, 1.442876537026204810e-02, 1.442963106375776648e-02, 1.443047327419054969e-02, 1.443129200151372152e-02, 1.443208724571893101e-02, 1.443285900683568233e-02, 1.443360728493177890e-02, 1.443433208011306833e-02, 1.443503339252337307e-02, 1.443571122234483042e-02, 1.443636556979751955e-02, 1.443699643513965229e-02, 1.443760381866750035e-02, 1.443818772071548719e-02, 1.443874814165611691e-02, 1.443928508189988580e-02, 1.443979854189545060e-02, 1.444028852212950881e-02, 1.444075502312684896e-02, 1.444119804545028647e-02, 1.444161758970080416e-02, 1.444201365651732669e-02, 1.444238624657692878e-02, 1.444273536059465998e-02, 1.444306099932370080e-02, 1.444336316355525861e-02, 1.444364185411857633e-02, 1.444389707188093591e-02, 1.444412881774763922e-02, 1.444433709266211042e-02, 1.444452189760569473e-02, 1.444468323359791341e-02, 1.444482110169610298e-02, 1.444493550299575865e-02, 1.444502643863045804e-02, 1.444509390977163563e-02, 1.444513791762879959e-02, 1.444515846344950755e-02, 1.444515554851928674e-02, 1.444512917416161668e-02, 1.444507934173799683e-02, 1.444500605264798648e-02, 1.444490930832901913e-02, 1.444478911025655170e-02, 1.444464545994406102e-02, 1.444447835894291723e-02, 1.444428780884251043e-02, 1.444407381127018816e-02, 1.444383636789122426e-02, 1.444357548040882920e-02, 1.444329115056423342e-02, 1.444298338013654676e-02, 1.444265217094285909e-02, 1.444229752483811718e-02, 1.444191944371530680e-02, 1.444151792950518730e-02, 1.444109298417661953e-02, 1.444064460973618763e-02, 1.444017280822850954e-02, 1.443967758173608784e-02, 1.443915893237920217e-02, 1.443861686231619548e-02, 1.443805137374315137e-02, 1.443746246889413519e-02, 1.443685015004098071e-02, 1.443621441949348091e-02, 1.443555527959927004e-02, 1.443487273274376981e-02, 1.443416678135029697e-02, 1.443343742788005639e-02, 1.443268467483199008e-02, 1.443190852474296286e-02, 1.443110898018759233e-02, 1.443028604377835297e-02, 1.442943971816551540e-02, 1.442857000603713774e-02, 1.442767691011915231e-02, 1.442676043317519738e-02, 1.442582057800670219e-02, 1.442485734745293201e-02, 1.442387074439082859e-02, 1.442286077173523737e-02, 1.442182743243861434e-02, 1.442077072949128277e-02, 1.441969066592124066e-02, 1.441858724479424744e-02, 1.441746046921377027e-02, 1.441631034232100997e-02, 1.441513686729491844e-02, 1.441394004735209976e-02, 1.441271988574686393e-02, 1.441147638577129977e-02, 1.441020955075506503e-02, 1.440891938406556501e-02, 1.440760588910785546e-02, 1.440626906932462696e-02, 1.440490892819634543e-02, 1.440352546924090517e-02, 1.440211869601408338e-02, 1.440068861210910822e-02, 1.439923522115691724e-02, 1.439775852682604988e-02, 1.439625853282261794e-02, 1.439473524289044959e-02, 1.439318866081078403e-02, 1.439161879040259766e-02, 1.439002563552234035e-02, 1.438840920006411069e-02, 1.438676948795950677e-02, 1.438510650317771471e-02, 1.438342024972540968e-02, 1.438171073164685662e-02, 1.437997795302381476e-02, 1.437822191797556888e-02, 1.437644263065891194e-02, 1.437464009526810520e-02, 1.437281431603493198e-02, 1.437096529722865258e-02, 1.436909304315597651e-02, 1.436719755816114746e-02, 1.436527884662572134e-02, 1.436333691296882986e-02, 1.436137176164697243e-02, 1.435938339715409594e-02, 1.435737182402152361e-02, 1.435533704681803135e-02, 1.435327907014981308e-02, 1.435119789866037658e-02, 1.434909353703066846e-02, 1.434696598997895443e-02, 1.434481526226088349e-02, 1.434264135866945497e-02, 1.434044428403498384e-02, 1.433822404322516487e-02, 1.433598064114497382e-02, 1.433371408273664133e-02, 1.433142437297983511e-02, 1.432911151689133383e-02, 1.432677551952540700e-02, 1.432441638597335004e-02, 1.432203412136392497e-02, 1.431962873086298216e-02, 1.431720021967372407e-02, 1.431474859303653695e-02, 1.431227385622896829e-02, 1.430977601456589164e-02, 1.430725507339927587e-02, 1.430471103811822679e-02, 1.430214391414918497e-02, 1.429955370695562729e-02, 1.429694042203820056e-02, 1.429430406493473540e-02, 1.429164464122013173e-02, 1.428896215650649580e-02, 1.428625661644285921e-02, 1.428352802671557786e-02, 1.428077639304791216e-02, 1.427800172120032018e-02, 1.427520401697022177e-02, 1.427238328619213729e-02, 1.426953953473765815e-02, 1.426667276851523690e-02, 1.426378299347057579e-02, 1.426087021558620528e-02, 1.425793444088175980e-02, 1.425497567541372801e-02, 1.425199392527569560e-02, 1.424898919659813024e-02, 1.424596149554845266e-02, 1.424291082833098986e-02, 1.423983720118700107e-02, 1.423674062039475066e-02, 1.423362109226931210e-02, 1.423047862316254367e-02, 1.422731321946329140e-02, 1.422412488759733362e-02, 1.422091363402708947e-02, 1.421767946525199361e-02, 1.421442238780816839e-02, 1.421114240826867187e-02, 1.420783953324320642e-02, 1.420451376937838760e-02, 1.420116512335751861e-02, 1.419779360190072046e-02, 1.419439921176479658e-02, 1.419098195974328493e-02, 1.418754185266646838e-02, 1.418407889740139205e-02, 1.418059310085167946e-02, 1.417708446995762615e-02, 1.417355301169629343e-02, 1.416999873308139729e-02, 1.416642164116308639e-02, 1.416282174302842256e-02, 1.415919904580089858e-02, 1.415555355664062029e-02, 1.415188528274428578e-02, 1.414819423134513511e-02, 1.414448040971315844e-02, 1.414074382515457563e-02, 1.413698448501234106e-02, 1.413320239666587992e-02, 1.412939756753110558e-02, 1.412557000506036754e-02, 1.412171971674262318e-02, 1.411784671010312374e-02, 1.411395099270373356e-02, 1.411003257214254840e-02, 1.410609145605421985e-02, 1.410212765210977146e-02, 1.409814116801661778e-02, 1.409413201151849156e-02, 1.409010019039551830e-02, 1.408604571246422840e-02, 1.408196858557731260e-02, 1.407786881762394804e-02, 1.407374641652947567e-02, 1.406960139025569684e-02, 1.406543374680042577e-02, 1.406124349419795271e-02, 1.405703064051864841e-02, 1.405279519386929549e-02, 1.404853716239264430e-02, 1.404425655426778767e-02, 1.403995337770996138e-02, 1.403562764097060836e-02, 1.403127935233724338e-02, 1.402690852013352592e-02, 1.402251515271922370e-02, 1.401809925849031163e-02, 1.401366084587868030e-02, 1.400919992335237542e-02, 1.400471649941554056e-02, 1.400021058260824368e-02, 1.399568218150667662e-02, 1.399113130472293479e-02, 1.398655796090525483e-02, 1.398196215873762083e-02, 1.397734390694019800e-02, 1.397270321426896320e-02, 1.396804008951584887e-02, 1.396335454150868585e-02, 1.395864657911119987e-02, 1.395391621122300981e-02, 1.394916344677959129e-02, 1.394438829475222637e-02, 1.393959076414801740e-02, 1.393477086401003449e-02, 1.392992860341683153e-02, 1.392506399148302557e-02, 1.392017703735882843e-02, 1.391526775023033645e-02, 1.391033613931916789e-02, 1.390538221388283591e-02, 1.390040598321442243e-02, 1.389540745664278633e-02, 1.389038664353234656e-02, 1.388534355328320535e-02, 1.388027819533106839e-02, 1.387519057914735066e-02, 1.387008071423886761e-02, 1.386494861014812494e-02, 1.385979427645319187e-02, 1.385461772276765091e-02, 1.384941895874049721e-02, 1.384419799405639528e-02, 1.383895483843550211e-02, 1.383368950163317047e-02, 1.382840199344049364e-02, 1.382309232368385613e-02, 1.381776050222507934e-02, 1.381240653896139391e-02, 1.380703044382535806e-02, 1.380163222678496004e-02, 1.379621189784351228e-02, 1.379076946703950562e-02, 1.378530494444692341e-02, 1.377981834017496555e-02, 1.377430966436805904e-02, 1.376877892720592550e-02, 1.376322613890346332e-02, 1.375765130971086381e-02, 1.375205444991350716e-02, 1.374643556983174732e-02, 1.374079467982134567e-02, 1.373513179027314145e-02, 1.372944691161289560e-02, 1.372374005430175049e-02, 1.371801122883574940e-02, 1.371226044574607589e-02, 1.370648771559886299e-02, 1.370069304899533894e-02, 1.369487645657168490e-02, 1.368903794899919459e-02, 1.368317753698390302e-02, 1.367729523126699764e-02, 1.367139104262449396e-02, 1.366546498186736389e-02, 1.365951705984130501e-02, 1.365354728742708586e-02, 1.364755567554031858e-02, 1.364154223513121961e-02, 1.363550697718502250e-02, 1.362944991272168824e-02, 1.362337105279595034e-02, 1.361727040849723160e-02, 1.361114799094980017e-02, 1.360500381131253544e-02, 1.359883788077909453e-02, 1.359265021057764859e-02, 1.358644081197112226e-02, 1.358020969625711380e-02, 1.357395687476776504e-02, 1.356768235886982206e-02, 1.356138615996449817e-02, 1.355506828948774799e-02, 1.354872875891001416e-02, 1.354236757973595676e-02, 1.353598476350510900e-02, 1.352958032179127530e-02, 1.352315426620266485e-02, 1.351670660838204946e-02, 1.351023736000650337e-02, 1.350374653278758365e-02, 1.349723413847098846e-02, 1.349070018883695606e-02, 1.348414469570000974e-02, 1.347756767090895445e-02, 1.347096912634681079e-02, 1.346434907393093475e-02, 1.345770752561287545e-02, 1.345104449337847403e-02, 1.344435998924757743e-02, 1.343765402527439222e-02, 1.343092661354718456e-02, 1.342417776618839466e-02, 1.341740749535444768e-02, 1.341061581323597408e-02, 1.340380273205769510e-02, 1.339696826407820937e-02, 1.339011242159027226e-02, 1.338323521692058940e-02, 1.337633666242993465e-02, 1.336941677051278234e-02, 1.336247555359778953e-02, 1.335551302414744214e-02, 1.334852919465810174e-02, 1.334152407765993274e-02, 1.333449768571704809e-02, 1.332745003142733406e-02, 1.332038112742258210e-02, 1.331329098636803258e-02, 1.330617962096300629e-02, 1.329904704394046892e-02, 1.329189326806706761e-02, 1.328471830614308576e-02, 1.327752217100255233e-02, 1.327030487551318812e-02, 1.326306643257604140e-02, 1.325580685512609165e-02, 1.324852615613175168e-02, 1.324122434859498383e-02, 1.323390144555124798e-02, 1.322655746006957782e-02, 1.321919240525237620e-02, 1.321180629423566316e-02, 1.320439914018873943e-02, 1.319697095631434773e-02, 1.318952175584871961e-02, 1.318205155206140546e-02, 1.317456035825508368e-02, 1.316704818776608457e-02, 1.315951505396386646e-02, 1.315196097025105558e-02, 1.314438595006371842e-02, 1.313679000687105643e-02, 1.312917315417555346e-02, 1.312153540551258026e-02, 1.311387677445098772e-02, 1.310619727459262467e-02, 1.309849691957249741e-02, 1.309077572305849917e-02, 1.308303369875179860e-02, 1.307527086038651719e-02, 1.306748722172989229e-02, 1.305968279658181221e-02, 1.305185759877542685e-02, 1.304401164217681638e-02, 1.303614494068482815e-02, 1.302825750823126752e-02, 1.302034935878076082e-02, 1.301242050633090105e-02, 1.300447096491185936e-02, 1.299650074858678048e-02, 1.298850987145146879e-02, 1.298049834763468149e-02, 1.297246619129753184e-02, 1.296441341663409630e-02, 1.295634003787103118e-02, 1.294824606926765244e-02, 1.294013152511578994e-02, 1.293199641974000259e-02, 1.292384076749732852e-02, 1.291566458277748630e-02, 1.290746788000236150e-02, 1.289925067362665545e-02, 1.289101297813745502e-02, 1.288275480805428988e-02, 1.287447617792897119e-02, 1.286617710234583788e-02, 1.285785759592168384e-02, 1.284951767330526004e-02, 1.284115734917801351e-02, 1.283277663825350967e-02, 1.282437555527764228e-02, 1.281595411502840093e-02, 1.280751233231610872e-02, 1.279905022198327656e-02, 1.279056779890460141e-02, 1.278206507798662454e-02, 1.277354207416829361e-02, 1.276499880242061048e-02, 1.275643527774655839e-02, 1.274785151518106549e-02, 1.273924752979118703e-02, 1.273062333667592146e-02, 1.272197895096629019e-02, 1.271331438782493869e-02, 1.270462966244668805e-02, 1.269592479005833899e-02, 1.268719978591809940e-02, 1.267845466531637016e-02, 1.266968944357515364e-02, 1.266090413604832945e-02, 1.265209875812138042e-02, 1.264327332521162847e-02, 1.263442785276797445e-02, 1.262556235627113575e-02, 1.261667685123315369e-02, 1.260777135319792949e-02, 1.259884587774088259e-02, 1.258990044046899570e-02, 1.258093505702065872e-02, 1.257194974306583522e-02, 1.256294451430612497e-02, 1.255391938647411505e-02, 1.254487437533419354e-02, 1.253580949668204464e-02, 1.252672476634473023e-02, 1.251762020018042966e-02, 1.250849581407892028e-02, 1.249935162396108648e-02, 1.249018764577915566e-02, 1.248100389551632695e-02, 1.247180038918729514e-02, 1.246257714283778052e-02, 1.245333417254466946e-02, 1.244407149441589637e-02, 1.243478912459054092e-02, 1.242548707923869095e-02, 1.241616537456158992e-02, 1.240682402679116510e-02, 1.239746305219059132e-02, 1.238808246705404813e-02, 1.237868228770627049e-02, 1.236926253050315422e-02, 1.235982321183144717e-02, 1.235036434810863823e-02, 1.234088595578299898e-02, 1.233138805133356629e-02, 1.232187065127025166e-02, 1.231233377213365038e-02, 1.230277743049478303e-02, 1.229320164295561943e-02, 1.228360642614865703e-02, 1.227399179673704759e-02, 1.226435777141437686e-02, 1.225470436690487448e-02, 1.224503159996324919e-02, 1.223533948737488830e-02, 1.222562804595513607e-02, 1.221589729255027033e-02, 1.220614724403677395e-02, 1.219637791732140417e-02, 1.218658932934137129e-02, 1.217678149706421208e-02, 1.216695443748779144e-02, 1.215710816763991911e-02, 1.214724270457893246e-02, 1.213735806539330275e-02, 1.212745426720163340e-02, 1.211753132715260618e-02, 1.210758926242508186e-02, 1.209762809022798050e-02, 1.208764782780036469e-02, 1.207764849241088449e-02, 1.206763010135878528e-02, 1.205759267197296924e-02, 1.204753622161210992e-02, 1.203746076766499216e-02, 1.202736632755027624e-02, 1.201725291871635383e-02, 1.200712055864145388e-02, 1.199696926483357490e-02, 1.198679905483049715e-02, 1.197660994619985375e-02, 1.196640195653850616e-02, 1.195617510347342025e-02, 1.194592940466101053e-02, 1.193566487778742122e-02, 1.192538154056809255e-02, 1.191507941074823433e-02, 1.190475850610247209e-02, 1.189441884443503614e-02, 1.188406044357926891e-02, 1.187368332139825122e-02, 1.186328749578434774e-02, 1.185287298465918446e-02, 1.184243980597380827e-02, 1.183198797770851525e-02, 1.182151751787303973e-02, 1.181102844450589683e-02, 1.180052077567523595e-02, 1.178999452947816079e-02, 1.177944972404103112e-02, 1.176888637751915927e-02, 1.175830450809702693e-02, 1.174770413398818977e-02, 1.173708527343526008e-02, 1.172644794470944878e-02, 1.171579216611142067e-02, 1.170511795597049473e-02, 1.169442533264505174e-02, 1.168371431452193583e-02, 1.167298492001720735e-02, 1.166223716757558947e-02, 1.165147107567052025e-02, 1.164068666280422895e-02, 1.162988394750761288e-02, 1.161906294834033626e-02, 1.160822368389040175e-02, 1.159736617277469517e-02, 1.158649043363858475e-02, 1.157559648515607553e-02, 1.156468434602939133e-02, 1.155375403498954366e-02, 1.154280557079583394e-02, 1.153183897223612926e-02, 1.152085425812626567e-02, 1.150985144731088254e-02, 1.149883055866272527e-02, 1.148779161108292451e-02, 1.147673462350060243e-02, 1.146565961487341391e-02, 1.145456660418719963e-02, 1.144345561045549166e-02, 1.143232665272046582e-02, 1.142117975005214892e-02, 1.141001492154872232e-02, 1.139883218633620104e-02, 1.138763156356882925e-02, 1.137641307242862748e-02, 1.136517673212572750e-02, 1.135392256189787091e-02, 1.134265058101087582e-02, 1.133136080875837316e-02, 1.132005326446186046e-02, 1.130872796747019009e-02, 1.129738493716038288e-02, 1.128602419293711807e-02, 1.127464575423240897e-02, 1.126324964050624128e-02, 1.125183587124599024e-02, 1.124040446596688038e-02, 1.122895544421114757e-02, 1.121748882554893766e-02, 1.120600462957780687e-02, 1.119450287592272004e-02, 1.118298358423583903e-02, 1.117144677419697023e-02, 1.115989246551308406e-02, 1.114832067791863418e-02, 1.113673143117493991e-02, 1.112512474507091655e-02, 1.111350063942257230e-02, 1.110185913407311063e-02, 1.109020024889271344e-02, 1.107852400377879777e-02, 1.106683041865590827e-02, 1.105511951347529394e-02, 1.104339130821549268e-02, 1.103164582288194626e-02, 1.101988307750704880e-02, 1.100810309214988146e-02, 1.099630588689663215e-02, 1.098449148186015148e-02, 1.097265989718021126e-02, 1.096081115302315230e-02, 1.094894526958218109e-02, 1.093706226707713385e-02, 1.092516216575471072e-02, 1.091324498588768128e-02, 1.090131074777592191e-02, 1.088935947174568195e-02, 1.087739117814979020e-02, 1.086540588736731663e-02, 1.085340361980405462e-02, 1.084138439589223471e-02, 1.082934823609002853e-02, 1.081729516088239008e-02, 1.080522519078046598e-02, 1.079313834632166999e-02, 1.078103464806951829e-02, 1.076891411661389832e-02, 1.075677677257078774e-02, 1.074462263658244876e-02, 1.073245172931685219e-02, 1.072026407146839388e-02, 1.070805968375739513e-02, 1.069583858693023103e-02, 1.068360080175901651e-02, 1.067134634904200359e-02, 1.065907524960325696e-02, 1.064678752429280145e-02, 1.063448319398614846e-02, 1.062216227958487184e-02, 1.060982480201648308e-02, 1.059747078223358292e-02, 1.058510024121502024e-02, 1.057271319996502465e-02, 1.056030967951355343e-02, 1.054788970091597236e-02, 1.053545328525326043e-02, 1.052300045363195775e-02, 1.051053122718413786e-02, 1.049804562706689592e-02, 1.048554367446308776e-02, 1.047302539058088226e-02, 1.046049079665374928e-02, 1.044793991394026879e-02, 1.043537276372447781e-02, 1.042278936731569350e-02, 1.041018974604794416e-02, 1.039757392128089729e-02, 1.038494191439910848e-02, 1.037229374681230588e-02, 1.035962943995503982e-02, 1.034694901528706960e-02, 1.033425249429298712e-02, 1.032153989848250998e-02, 1.030881124938982409e-02, 1.029606656857433300e-02, 1.028330587762013582e-02, 1.027052919813619195e-02, 1.025773655175597592e-02, 1.024492796013787288e-02, 1.023210344496487331e-02, 1.021926302794475341e-02, 1.020640673080942980e-02, 1.019353457531574011e-02, 1.018064658324526091e-02, 1.016774277640342117e-02, 1.015482317662057092e-02, 1.014188780575133765e-02, 1.012893668567482405e-02, 1.011596983829418477e-02, 1.010298728553717974e-02, 1.008998904935566945e-02, 1.007697515172596182e-02, 1.006394561464805763e-02, 1.005090046014659420e-02, 1.003783971027014284e-02, 1.002476338709142392e-02, 1.001167151270703284e-02, 9.998564109237715811e-03, 9.985441198828159948e-03, 9.972302803647100852e-03, 9.959148945886737991e-03, 9.945979647763586451e-03, 9.932794931517855905e-03, 9.919594819413353470e-03, 9.906379333737813306e-03, 9.893148496802683239e-03, 9.879902330943121300e-03, 9.866640858517496115e-03, 9.853364101908282033e-03, 9.840072083521278490e-03, 9.826764825785929205e-03, 9.813442351154879825e-03, 9.800104682104505277e-03, 9.786751841134486499e-03, 9.773383850767961359e-03, 9.760000733550955668e-03, 9.746602512053411868e-03, 9.733189208868314735e-03, 9.719760846611484942e-03, 9.706317447922351016e-03, 9.692859035463373407e-03, 9.679385631920152042e-03, 9.665897260001136623e-03, 9.652393942438003069e-03, 9.638875701985372482e-03, 9.625342561420962076e-03, 9.611794543544925976e-03, 9.598231671180705235e-03, 9.584653967174529970e-03, 9.571061454395412421e-03, 9.557454155734876333e-03, 9.543832094107491254e-03, 9.530195292450355585e-03, 9.516543773723332503e-03, 9.502877560908520871e-03, 9.489196677010995964e-03, 9.475501145058245686e-03, 9.461790988100056074e-03, 9.448066229208901615e-03, 9.434326891479544522e-03, 9.420572998029308823e-03, 9.406804571997370856e-03, 9.393021636545685615e-03, 9.379224214858275510e-03, 9.365412330141469760e-03, 9.351586005623541836e-03, 9.337745264555139674e-03, 9.323890130208914440e-03, 9.310020625879765130e-03, 9.296136774884047535e-03, 9.282238600560788547e-03, 9.268326126270565526e-03, 9.254399375396111724e-03, 9.240458371341575550e-03, 9.226503137533368856e-03, 9.212533697419591008e-03, 9.198550074469881432e-03, 9.184552292175841154e-03, 9.170540374050614729e-03, 9.156514343629167801e-03, 9.142474224467589741e-03, 9.128420040143943662e-03, 9.114351814257688755e-03, 9.100269570429793051e-03, 9.086173332302497491e-03, 9.072063123539572671e-03, 9.057938967826155777e-03, 9.043800888868771398e-03, 9.029648910394788563e-03, 9.015483056153300243e-03, 9.001303349914368743e-03, 8.987109815469365715e-03, 8.972902476630502042e-03, 8.958681357231273665e-03, 8.944446481126354029e-03, 8.930197872190875907e-03, 8.915935554321454889e-03, 8.901659551435394876e-03, 8.887369887471052374e-03, 8.873066586387279644e-03, 8.858749672163997169e-03, 8.844419168801838024e-03, 8.830075100322291870e-03, 8.815717490766919115e-03, 8.801346364198660635e-03, 8.786961744700696325e-03, 8.772563656376936025e-03, 8.758152123351353388e-03, 8.743727169768863647e-03, 8.729288819794770241e-03, 8.714837097614471645e-03, 8.700372027433997402e-03, 8.685893633479595255e-03, 8.671401939997968808e-03, 8.656896971255543735e-03, 8.642378751539427084e-03, 8.627847305156696039e-03, 8.613302656434677212e-03, 8.598744829720462654e-03, 8.584173849381435475e-03, 8.569589739804891679e-03, 8.554992525398208425e-03, 8.540382230588255963e-03, 8.525758879822179989e-03, 8.511122497566810108e-03, 8.496473108308841976e-03, 8.481810736554500768e-03, 8.467135406829928018e-03, 8.452447143680992536e-03, 8.437745971672757847e-03, 8.423031915390257612e-03, 8.408304999438002969e-03, 8.393565248440032836e-03, 8.378812687039582582e-03, 8.364047339899611383e-03, 8.349269231702290475e-03, 8.334478387149265102e-03, 8.319674830961189607e-03, 8.304858587878256523e-03, 8.290029682659773302e-03, 8.275188140084335786e-03, 8.260333984949259217e-03, 8.245467242071338049e-03, 8.230587936286344608e-03, 8.215696092449044710e-03, 8.200791735432991225e-03, 8.185874890130888371e-03, 8.170945581454350584e-03, 8.156003834333437619e-03, 8.141049673717393534e-03, 8.126083124574112401e-03, 8.111104211890277083e-03, 8.096112960670975855e-03, 8.081109395940207218e-03, 8.066093542740421923e-03, 8.051065426132857777e-03, 8.036025071196684424e-03, 8.020972503030096221e-03, 8.005907746749493445e-03, 7.990830827489791080e-03, 7.975741770403915742e-03, 7.960640600663435387e-03, 7.945527343458012870e-03, 7.930402023995706054e-03, 7.915264667502294738e-03, 7.900115299222128934e-03, 7.884953944417572025e-03, 7.869780628368792594e-03, 7.854595376374244944e-03, 7.839398213750188582e-03, 7.824189165830931075e-03, 7.808968257968429937e-03, 7.793735515532649108e-03, 7.778490963911349060e-03, 7.763234628510136230e-03, 7.747966534751897505e-03, 7.732686708077605130e-03, 7.717395173945757261e-03, 7.702091957832453428e-03, 7.686777085231146465e-03, 7.671450581653004204e-03, 7.656112472626714315e-03, 7.640762783697901440e-03, 7.625401540430057010e-03, 7.610028768403829733e-03, 7.594644493217235504e-03, 7.579248740485294844e-03, 7.563841535840440562e-03, 7.548422904932221983e-03, 7.532992873427455001e-03, 7.517551467009502171e-03, 7.502098711379303134e-03, 7.486634632254576642e-03, 7.471159255370099853e-03, 7.455672606477289389e-03, 7.440174711344637627e-03, 7.424665595757432533e-03, 7.409145285517840067e-03, 7.393613806444313506e-03, 7.378071184372352390e-03, 7.362517445154397565e-03, 7.346952614658730507e-03, 7.331376718770761351e-03, 7.315789783392248266e-03, 7.300191834441538581e-03, 7.284582897853098676e-03, 7.268962999578115064e-03, 7.253332165583958359e-03, 7.237690421854509407e-03, 7.222037794389404679e-03, 7.206374309204970421e-03, 7.190699992333565195e-03, 7.175014869823748143e-03, 7.159318967739906024e-03, 7.143612312162743276e-03, 7.127894929188873484e-03, 7.112166844930988517e-03, 7.096428085517265255e-03, 7.080678677092188712e-03, 7.064918645816026417e-03, 7.049148017864560398e-03, 7.033366819429553822e-03, 7.017575076718411860e-03, 7.001772815954342144e-03, 6.985960063375657413e-03, 6.970136845236735677e-03, 6.954303187807307253e-03, 6.938459117372706292e-03, 6.922604660233400674e-03, 6.906739842705516760e-03, 6.890864691120453418e-03, 6.874979231825085850e-03, 6.859083491181031805e-03, 6.843177495565550168e-03, 6.827261271371338862e-03, 6.811334845005448911e-03, 6.795398242890650538e-03, 6.779451491464499879e-03, 6.763494617179766598e-03, 6.747527646503793768e-03, 6.731550605919165743e-03, 6.715563521923236315e-03, 6.699566421028362029e-03, 6.683559329761127633e-03, 6.667542274663385178e-03, 6.651515282291559257e-03, 6.635478379216749358e-03, 6.619431592024417610e-03, 6.603374947314833744e-03, 6.587308471702738553e-03, 6.571232191817480070e-03, 6.555146134302334421e-03, 6.539050325815478140e-03, 6.522944793029330710e-03, 6.506829562630365472e-03, 6.490704661319556326e-03, 6.474570115812021236e-03, 6.458425952837184431e-03, 6.442272199138100730e-03, 6.426108881472397498e-03, 6.409936026611566875e-03, 6.393753661341200836e-03, 6.377561812460515872e-03, 6.361360506782965350e-03, 6.345149771135696545e-03, 6.328929632359913196e-03, 6.312700117309899724e-03, 6.296461252854514828e-03, 6.280213065875821059e-03, 6.263955583269799517e-03, 6.247688831945458210e-03, 6.231412838825927530e-03, 6.215127630847693506e-03, 6.198833234960506727e-03, 6.182529678127700670e-03, 6.166216987325980926e-03, 6.149895189545477245e-03, 6.133564311789122502e-03, 6.117224381073558225e-03, 6.100875424428509226e-03, 6.084517468896872075e-03, 6.068150541534404578e-03, 6.051774669410167271e-03, 6.035389879606173867e-03, 6.018996199217554327e-03, 6.002593655351830607e-03, 5.986182275129955759e-03, 5.969762085685483867e-03, 5.953333114164925666e-03, 5.936895387727180416e-03, 5.920448933544184694e-03, 5.903993778800581058e-03, 5.887529950693073597e-03, 5.871057476431498258e-03, 5.854576383237991045e-03, 5.838086698347310678e-03, 5.821588449006299959e-03, 5.805081662474523285e-03, 5.788566366023750569e-03, 5.772042586938233924e-03, 5.755510352513851582e-03, 5.738969690059509549e-03, 5.722420626895788516e-03, 5.705863190355676788e-03, 5.689297407783684701e-03, 5.672723306536886327e-03, 5.656140913984249001e-03, 5.639550257506406074e-03, 5.622951364496133093e-03, 5.606344262357986115e-03, 5.589728978508481244e-03, 5.573105540375326156e-03, 5.556473975398543326e-03, 5.539834311029548895e-03, 5.523186574731564664e-03, 5.506530793979032626e-03, 5.489866996258229055e-03, 5.473195209066834301e-03, 5.456515459914120132e-03, 5.439827776320221159e-03, 5.423132185817151375e-03, 5.406428715948057365e-03, 5.389717394267437740e-03, 5.372998248340695587e-03, 5.356271305744720462e-03, 5.339536594067581347e-03, 5.322794140907859649e-03, 5.306043973875749879e-03, 5.289286120592249542e-03, 5.272520608689341276e-03, 5.255747465809673669e-03, 5.238966719606995802e-03, 5.222178397745760002e-03, 5.205382527901370772e-03, 5.188579137759301817e-03, 5.171768255016511578e-03, 5.154949907380122244e-03, 5.138124122568122308e-03, 5.121290928308446302e-03, 5.104450352340094560e-03, 5.087602422412283200e-03, 5.070747166284761583e-03, 5.053884611727296229e-03, 5.037014786520287515e-03, 5.020137718454454820e-03, 5.003253435330155645e-03, 4.986361964958483696e-03, 4.969463335160463104e-03, 4.952557573767316437e-03, 4.935644708619958167e-03, 4.918724767569594876e-03, 4.901797778477274235e-03, 4.884863769214116587e-03, 4.867922767660520442e-03, 4.850974801707255354e-03, 4.834019899254644870e-03, 4.817058088212816322e-03, 4.800089396501280165e-03, 4.783113852049462530e-03, 4.766131482796205632e-03, 4.749142316690128582e-03, 4.732146381688732278e-03, 4.715143705759506157e-03, 4.698134316879246444e-03, 4.681118243033813298e-03, 4.664095512218627802e-03, 4.647066152438270384e-03, 4.630030191706626524e-03, 4.612987658046426194e-03, 4.595938579489822380e-03, 4.578882984077936591e-03, 4.561820899861086104e-03, 4.544752354897989462e-03, 4.527677377256859349e-03, 4.510595995014620233e-03, 4.493508236257100046e-03, 4.476414129078649419e-03, 4.459313701582625668e-03, 4.442206981881217584e-03, 4.425093998094619709e-03, 4.407974778352273526e-03, 4.390849350791968878e-03, 4.373717743560065138e-03, 4.356579984811144272e-03, 4.339436102708477475e-03, 4.322286125423627050e-03, 4.305130081136648509e-03, 4.287967998035309945e-03, 4.270799904316211794e-03, 4.253625828183935954e-03, 4.236445797851284313e-03, 4.219259841538890166e-03, 4.202067987475726490e-03, 4.184870263898651452e-03, 4.167666699052711976e-03, 4.150457321190242563e-03, 4.133242158572048366e-03, 4.116021239466640183e-03, 4.098794592150035825e-03, 4.081562244906246709e-03, 4.064324226026872801e-03, 4.047080563811241392e-03, 4.029831286565998573e-03, 4.012576422605591484e-03, 3.995316000251871065e-03, 3.978050047834332317e-03, 3.960778593689315459e-03, 3.943501666161059772e-03, 3.926219293600934253e-03, 3.908931504367671797e-03, 3.891638326826923813e-03, 3.874339789351810559e-03, 3.857035920322462313e-03, 3.839726748126306467e-03, 3.822412301157182817e-03, 3.805092607816535320e-03, 3.787767696512622361e-03, 3.770437595660299478e-03, 3.753102333681588784e-03, 3.735761939005180672e-03, 3.718416440066716136e-03, 3.701065865307973622e-03, 3.683710243177955833e-03, 3.666349602132115606e-03, 3.648983970632512473e-03, 3.631613377147478294e-03, 3.614237850152106444e-03, 3.596857418127788648e-03, 3.579472109562524193e-03, 3.562081952950033482e-03, 3.544686976790832264e-03, 3.527287209591960584e-03, 3.509882679865765874e-03, 3.492473416131433844e-03, 3.475059446914046529e-03, 3.457640800744849439e-03, 3.440217506160797058e-03, 3.422789591705084969e-03, 3.405357085926733092e-03, 3.387920017380825939e-03, 3.370478414627677780e-03, 3.353032306233968887e-03, 3.335581720771895950e-03, 3.318126686819454843e-03, 3.300667232959958799e-03, 3.283203387782623016e-03, 3.265735179882084567e-03, 3.248262637858676492e-03, 3.230785790317598164e-03, 3.213304665870037220e-03, 3.195819293132417128e-03, 3.178329700726198557e-03, 3.160835917278379415e-03, 3.143337971421078080e-03, 3.125835891791771057e-03, 3.108329707032482427e-03, 3.090819445790872824e-03, 3.073305136719441891e-03, 3.055786808475784589e-03, 3.038264489722098532e-03, 3.020738209125804589e-03, 3.003207995359023861e-03, 2.985673877098888630e-03, 2.968135883026680640e-03, 2.950594041828884934e-03, 2.933048382196711511e-03, 2.915498932825890191e-03, 2.897945722416221757e-03, 2.880388779672606644e-03, 2.862828133304307250e-03, 2.845263812024709411e-03, 2.827695844551866237e-03, 2.810124259608058356e-03, 2.792549085920031145e-03, 2.774970352218190245e-03, 2.757388087237687500e-03, 2.739802319717639031e-03, 2.722213078401342513e-03, 2.704620392035830909e-03, 2.687024289372444506e-03, 2.669424799166370769e-03, 2.651821950176889812e-03, 2.634215771166549969e-03, 2.616606290902305336e-03, 2.598993538154673131e-03, 2.581377541697971786e-03, 2.563758330309900274e-03, 2.546135932772081514e-03, 2.528510377869808666e-03, 2.510881694391294862e-03, 2.493249911128854988e-03, 2.475615056878008400e-03, 2.457977160437784230e-03, 2.440336250610233935e-03, 2.422692356201029337e-03, 2.405045506018956523e-03, 2.387395728876212913e-03, 2.369743053587453595e-03, 2.352087508971341303e-03, 2.334429123849084478e-03, 2.316767927045204015e-03, 2.299103947386608223e-03, 2.281437213703686566e-03, 2.263767754829631822e-03, 2.246095599600138239e-03, 2.228420776853989611e-03, 2.210743315432594797e-03, 2.193063244180247073e-03, 2.175380591943277143e-03, 2.157695387571194161e-03, 2.140007659915868672e-03, 2.122317437831749021e-03, 2.104624750175443718e-03, 2.086929625806250958e-03, 2.069232093585733623e-03, 2.051532182377956062e-03, 2.033829921048652730e-03, 2.016125338466351856e-03, 1.998418463501568359e-03, 1.980709325027028064e-03, 1.962997951917224045e-03, 1.945284373048987783e-03, 1.927568617301218552e-03, 1.909850713554155045e-03, 1.892130690690520516e-03, 1.874408577594667558e-03, 1.856684403152846332e-03, 1.838958196252750508e-03, 1.821229985784069989e-03, 1.803499800638043351e-03, 1.785767669707716753e-03, 1.768033621886987887e-03, 1.750297686072167227e-03, 1.732559891160518478e-03, 1.714820266051035515e-03, 1.697078839643473974e-03, 1.679335640839500722e-03, 1.661590698541876368e-03, 1.643844041654670589e-03, 1.626095699082842107e-03, 1.608345699732787295e-03, 1.590594072512079970e-03, 1.572840846328741726e-03, 1.555086050092379041e-03, 1.537329712713353868e-03, 1.519571863103013482e-03, 1.501812530173271759e-03, 1.484051742837138059e-03, 1.466289530008282231e-03, 1.448525920601283342e-03, 1.430760943530789411e-03, 1.412994627712661462e-03, 1.395227002063131752e-03, 1.377458095499056821e-03, 1.359687936937464944e-03, 1.341916555296120356e-03, 1.324143979493067232e-03, 1.306370238446880137e-03, 1.288595361075833530e-03, 1.270819376299033672e-03, 1.253042313035680711e-03, 1.235264200204833204e-03, 1.217485066725941967e-03, 1.199704941518413368e-03, 1.181923853501857819e-03, 1.164141831595154547e-03, 1.146358904717991812e-03, 1.128575101789419275e-03, 1.110790451728609117e-03, 1.093004983453912558e-03, 1.075218725883996754e-03, 1.057431707937013651e-03, 1.039643958530842840e-03, 1.021855506582653112e-03, 1.004066381009450625e-03, 9.862766107278275914e-04, 9.684862246532310870e-04, 9.506952517010926846e-04, 9.329037207860052180e-04, 9.151116608219578372e-04, 8.973191007219014602e-04, 8.795260693982954276e-04, 8.617325957626615707e-04, 8.439387087258369384e-04, 8.261444371971315894e-04, 8.083498100854779548e-04, 7.905548562985782214e-04, 7.727596047431687688e-04, 7.549640843245689244e-04, 7.371683239472295694e-04, 7.193723525142904597e-04, 7.015761989278357716e-04, 6.837798920880441963e-04, 6.659834608943392782e-04, 6.481869342446489046e-04, 6.303903410351538797e-04, 6.125937101608428187e-04, 5.947970705150644813e-04, 5.770004509896812942e-04, 5.592038804746267801e-04, 5.414073878584500440e-04, 5.236110020278779724e-04, 5.058147518680584194e-04, 4.880186662617279196e-04, 4.702227740903491241e-04, 4.524271042332769950e-04, 4.346316855679995526e-04, 4.168365469697058205e-04, 3.990417173118257044e-04, 3.812472254655917573e-04, 3.634531003002863239e-04, 3.456593706824028010e-04, 3.278660654767915857e-04, 3.100732135459143609e-04, 2.922808437496029685e-04, 2.744889849456061187e-04, 2.566976659891453006e-04, 2.389069157331682688e-04, 2.211167630275050731e-04, 2.033272367200154428e-04, 1.855383656557458465e-04, 1.677501786771828701e-04, 1.499627046238069051e-04, 1.321759723326435736e-04, 1.143900106378177285e-04, 9.660484837080711602e-05, 7.882051435959928638e-05, 6.103703742983786673e-05, 4.325444640407978775e-05, 2.547277010155182602e-05, 7.692037338697833097e-06, -1.008772307126379691e-05, -2.786648231818864054e-05, -4.564421159544933130e-05, -6.342088209938709061e-05, -8.119646502975527659e-05, -9.897093158946790336e-05, -1.167442529854398808e-04, -1.345164004274432626e-04, -1.522873451289477468e-04, -1.700570583068682193e-04, -1.878255111820102663e-04, -2.055926749785184644e-04, -2.233585209243222312e-04, -2.411230202508852941e-04, -2.588861441940412569e-04, -2.766478639928551613e-04, -2.944081508903603371e-04, -3.121669761338057903e-04, -3.299243109741049678e-04, -3.476801266662825568e-04, -3.654343944692194264e-04, -3.831870856464941310e-04, -4.009381714652402156e-04, -4.186876231969845750e-04, -4.364354121173962442e-04, -4.541815095067297287e-04, -4.719258866492791085e-04, -4.896685148338152972e-04, -5.074093653533387352e-04, -5.251484095059205139e-04, -5.428856185936520003e-04, -5.606209639230952694e-04, -5.783544168055220619e-04, -5.960859485573585239e-04, -6.138155304991405785e-04, -6.315431339562567123e-04, -6.492687302591880179e-04, -6.669922907429622983e-04, -6.847137867475953368e-04, -7.024331896178479277e-04, -7.201504707040454244e-04, -7.378656013609574335e-04, -7.555785529486200736e-04, -7.732892968321001615e-04, -7.909978043819165328e-04, -8.087040469735151801e-04, -8.264079959876920916e-04, -8.441096228103598222e-04, -8.618088988333659582e-04, -8.795057954533710759e-04, -8.972002840726720852e-04, -9.148923360989578502e-04, -9.325819229457534953e-04, -9.502690160318649683e-04, -9.679535867816305757e-04, -9.856356066256558544e-04, -1.003315046999669197e-03, -1.020991879345370563e-03, -1.038666075110166072e-03, -1.056337605747619457e-03, -1.074006442716904115e-03, -1.091672557483241339e-03, -1.109335921517646401e-03, -1.126996506297777041e-03, -1.144654283306879199e-03, -1.162309224034238685e-03, -1.179961299975418624e-03, -1.197610482632697256e-03, -1.215256743514035341e-03, -1.232900054133811681e-03, -1.250540386013065334e-03, -1.268177710678942451e-03, -1.285811999665145786e-03, -1.303443224511688803e-03, -1.321071356765706872e-03, -1.338696367980356152e-03, -1.356318229715613955e-03, -1.373936913538048241e-03, -1.391552391021251729e-03, -1.409164633745299154e-03, -1.426773613297180722e-03, -1.444379301270558823e-03, -1.461981669266602208e-03, -1.479580688892842815e-03, -1.497176331764012765e-03, -1.514768569501802808e-03, -1.532357373735286892e-03, -1.549942716100385053e-03, -1.567524568240110609e-03, -1.585102901805299398e-03, -1.602677688453467029e-03, -1.620248899849651737e-03, -1.637816507666169140e-03, -1.655380483583042232e-03, -1.672940799287447140e-03, -1.690497426474183449e-03, -1.708050336845389058e-03, -1.725599502111493846e-03, -1.743144893989679017e-03, -1.760686484205316272e-03, -1.778224244491205400e-03, -1.795758146588513843e-03, -1.813288162245651732e-03, -1.830814263219079831e-03, -1.848336421273090967e-03, -1.865854608180226790e-03, -1.883368795720737413e-03, -1.900878955682824920e-03, -1.918385059863376941e-03, -1.935887080066835608e-03, -1.953384988106029573e-03, -1.970878755801903394e-03, -1.988368354983993495e-03, -2.005853757489856146e-03, -2.023334935165513934e-03, -2.040811859865202058e-03, -2.058284503452199703e-03, -2.075752837797717638e-03, -2.093216834781691429e-03, -2.110676466292559384e-03, -2.128131704227693641e-03, -2.145582520492854157e-03, -2.163028887002628464e-03, -2.180470775680187941e-03, -2.197908158458093588e-03, -2.215341007277188846e-03, -2.232769294087343353e-03, -2.250192990847651141e-03, -2.267612069525915854e-03, -2.285026502099088766e-03, -2.302436260553013345e-03, -2.319841316883347691e-03, -2.337241643094046650e-03, -2.354637211198788629e-03, -2.372027993220214483e-03, -2.389413961190877712e-03, -2.406795087152082194e-03, -2.424171343154753449e-03, -2.441542701259151113e-03, -2.458909133535343381e-03, -2.476270612062602457e-03, -2.493627108929724612e-03, -2.510978596235701518e-03, -2.528325046088607427e-03, -2.545666430606440944e-03, -2.563002721916844001e-03, -2.580333892157578041e-03, -2.597659913475955026e-03, -2.614980758029271986e-03, -2.632296397984575966e-03, -2.649606805519492785e-03, -2.666911952821071716e-03, -2.684211812086645908e-03, -2.701506355523573474e-03, -2.718795555349640819e-03, -2.736079383792575613e-03, -2.753357813090450985e-03, -2.770630815491433550e-03, -2.787898363254604807e-03, -2.805160428648868689e-03, -2.822416983953645025e-03, -2.839668001459120204e-03, -2.856913453465702909e-03, -2.874153312284461696e-03, -2.891387550236989255e-03, -2.908616139655796629e-03, -2.925839052883814472e-03, -2.943056262274814164e-03, -2.960267740193144991e-03, -2.977473459014559880e-03, -2.994673391125121653e-03, -3.011867508922003167e-03, -3.029055784813214098e-03, -3.046238191218090998e-03, -3.063414700566707925e-03, -3.080585285300337442e-03, -3.097749917871201256e-03, -3.114908570743265583e-03, -3.132061216391165189e-03, -3.149207827300873428e-03, -3.166348375969986299e-03, -3.183482834907159532e-03, -3.200611176632555711e-03, -3.217733373677575826e-03, -3.234849398585694109e-03, -3.251959223911349110e-03, -3.269062822220728231e-03, -3.286160166091562154e-03, -3.303251228113529905e-03, -3.320335980887726725e-03, -3.337414397027100351e-03, -3.354486449156193414e-03, -3.371552109911976104e-03, -3.388611351942719032e-03, -3.405664147908716612e-03, -3.422710470482532956e-03, -3.439750292348442429e-03, -3.456783586202871999e-03, -3.473810324754274172e-03, -3.490830480723513402e-03, -3.507844026843380796e-03, -3.524850935858960584e-03, -3.541851180527449700e-03, -3.558844733618942748e-03, -3.575831567915289683e-03, -3.592811656210976624e-03, -3.609784971312812729e-03, -3.626751486040410716e-03, -3.643711173225630019e-03, -3.660664005712984878e-03, -3.677609956359451787e-03, -3.694548998035225833e-03, -3.711481103622645602e-03, -3.728406246016904846e-03, -3.745324398126264557e-03, -3.762235532871565941e-03, -3.779139623186590809e-03, -3.796036642017892437e-03, -3.812926562325555380e-03, -3.829809357082099124e-03, -3.846684999273278227e-03, -3.863553461897890635e-03, -3.880414717968105973e-03, -3.897268740509044014e-03, -3.914115502559119449e-03, -3.930954977169841963e-03, -3.947787137406589056e-03, -3.964611956347637196e-03, -3.981429407084559509e-03, -3.998239462722470369e-03, -4.015042096380452147e-03, -4.031837281190516105e-03, -4.048624990298377822e-03, -4.065405196863621125e-03, -4.082177874059226240e-03, -4.098942995071949702e-03, -4.115700533102128328e-03, -4.132450461364419077e-03, -4.149192753086749542e-03, -4.165927381511108987e-03, -4.182654319893327165e-03, -4.199373541503443816e-03, -4.216085019625210803e-03, -4.232788727556544874e-03, -4.249484638609234491e-03, -4.266172726109773369e-03, -4.282852963398234639e-03, -4.299525323829137338e-03, -4.316189780771095136e-03, -4.332846307607359296e-03, -4.349494877735208057e-03, -4.366135464566218115e-03, -4.382768041526930759e-03, -4.399392582057814506e-03, -4.416009059614026643e-03, -4.432617447665167763e-03, -4.449217719695731932e-03, -4.465809849204562844e-03, -4.482393809705238936e-03, -4.498969574725923334e-03, -4.515537117810072484e-03, -4.532096412515476853e-03, -4.548647432414678997e-03, -4.565190151095235502e-03, -4.581724542160042248e-03, -4.598250579226441891e-03, -4.614768235926878723e-03, -4.631277485909130257e-03, -4.647778302835778134e-03, -4.664270660384662627e-03, -4.680754532248598138e-03, -4.697229892136174645e-03, -4.713696713770726410e-03, -4.730154970891019793e-03, -4.746604637251136162e-03, -4.763045686620782405e-03, -4.779478092784832099e-03, -4.795901829543731433e-03, -4.812316870713258081e-03, -4.828723190125284483e-03, -4.845120761626730936e-03, -4.861509559080343622e-03, -4.877889556364483833e-03, -4.894260727373448902e-03, -4.910623046017100965e-03, -4.926976486220957172e-03, -4.943321021926959033e-03, -4.959656627092373475e-03, -4.975983275690586474e-03, -4.992300941710863665e-03, -5.008609599158764941e-03, -5.024909222055613627e-03, -5.041199784438932761e-03, -5.057481260362179688e-03, -5.073753623895566577e-03, -5.090016849125024792e-03, -5.106270910152714039e-03, -5.122515781097121239e-03, -5.138751436093580947e-03, -5.154977849293238858e-03, -5.171194994863841099e-03, -5.187402846989528672e-03, -5.203601379871216487e-03, -5.219790567726073811e-03, -5.235970384787785349e-03, -5.252140805307213035e-03, -5.268301803551320509e-03, -5.284453353803987563e-03, -5.300595430365736063e-03, -5.316728007554160154e-03, -5.332851059703415386e-03, -5.348964561164621170e-03, -5.365068486305631795e-03, -5.381162809511788429e-03, -5.397247505184893032e-03, -5.413322547743956888e-03, -5.429387911624997641e-03, -5.445443571281388846e-03, -5.461489501183417611e-03, -5.477525675818635878e-03, -5.493552069691681750e-03, -5.509568657325000264e-03, -5.525575413257791287e-03, -5.541572312046739827e-03, -5.557559328266183443e-03, -5.573536436507624779e-03, -5.589503611380147903e-03, -5.605460827510171107e-03, -5.621408059542307330e-03, -5.637345282137950359e-03, -5.653272469976612299e-03, -5.669189597755172443e-03, -5.685096640188803604e-03, -5.700993572009885324e-03, -5.716880367968800968e-03, -5.732757002833649765e-03, -5.748623451390704776e-03, -5.764479688443898547e-03, -5.780325688815000917e-03, -5.796161427344349339e-03, -5.811986878889775082e-03, -5.827802018327392537e-03, -5.843606820551295634e-03, -5.859401260474032293e-03, -5.875185313026092676e-03, -5.890958953156300373e-03, -5.906722155831559996e-03, -5.922474896037608315e-03, -5.938217148778075771e-03, -5.953948889075085828e-03, -5.969670091969179505e-03, -5.985380732519574726e-03, -6.001080785803815897e-03, -6.016770226918025447e-03, -6.032449030976778058e-03, -6.048117173113805832e-03, -6.063774628480980006e-03, -6.079421372248952800e-03, -6.095057379607441046e-03, -6.110682625764637249e-03, -6.126297085947713522e-03, -6.141900735402465970e-03, -6.157493549394268788e-03, -6.173075503206602345e-03, -6.188646572142432294e-03, -6.204206731523452360e-03, -6.219755956690931759e-03, -6.235294223004747213e-03, -6.250821505844080320e-03, -6.266337780607224989e-03, -6.281843022711923116e-03, -6.297337207594936974e-03, -6.312820310712398755e-03, -6.328292307539639706e-03, -6.343753173571848453e-03, -6.359202884323101289e-03, -6.374641415327068211e-03, -6.390068742137110930e-03, -6.405484840325898627e-03, -6.420889685485721941e-03, -6.436283253228342049e-03, -6.451665519185682818e-03, -6.467036459008768286e-03, -6.482396048368625589e-03, -6.497744262955868627e-03, -6.513081078481203733e-03, -6.528406470674907522e-03, -6.543720415287244095e-03, -6.559022888088153654e-03, -6.574313864868132871e-03, -6.589593321437077836e-03, -6.604861233625051661e-03, -6.620117577282398115e-03, -6.635362328279327884e-03, -6.650595462506318431e-03, -6.665816955873859855e-03, -6.681026784312991788e-03, -6.696224923774705788e-03, -6.711411350230405033e-03, -6.726586039671639781e-03, -6.741748968110829014e-03, -6.756900111580322818e-03, -6.772039446133062447e-03, -6.787166947842386035e-03, -6.802282592802425844e-03, -6.817386357127588718e-03, -6.832478216952982825e-03, -6.847558148434186066e-03, -6.862626127747944310e-03, -6.877682131091204278e-03, -6.892726134681762332e-03, -6.907758114758430143e-03, -6.922778047580574988e-03, -6.937785909428556899e-03, -6.952781676603399935e-03, -6.967765325427633522e-03, -6.982736832244196105e-03, -6.997696173417237465e-03, -7.012643325331848962e-03, -7.027578264394456452e-03, -7.042500967032364056e-03, -7.057411409694114117e-03, -7.072309568849266884e-03, -7.087195420989125631e-03, -7.102068942625741794e-03, -7.116930110292755442e-03, -7.131778900544691845e-03, -7.146615289958211346e-03, -7.161439255130824799e-03, -7.176250772681568371e-03, -7.191049819251230796e-03, -7.205836371501832087e-03, -7.220610406117094517e-03, -7.235371899802136436e-03, -7.250120829284192187e-03, -7.264857171311736063e-03, -7.279580902655051304e-03, -7.294292000106096518e-03, -7.308990440478893395e-03, -7.323676200608991542e-03, -7.338349257353900430e-03, -7.353009587592849138e-03, -7.367657168227488042e-03, -7.382291976180931255e-03, -7.396913988398465256e-03, -7.411523181847315574e-03, -7.426119533517042300e-03, -7.440703020419049164e-03, -7.455273619586811652e-03, -7.469831308076485023e-03, -7.484376062965918119e-03, -7.498907861355424455e-03, -7.513426680367456083e-03, -7.527932497147111872e-03, -7.542425288861538159e-03, -7.556905032700390185e-03, -7.571371705875577091e-03, -7.585825285621966216e-03, -7.600265749196543491e-03, -7.614693073878702270e-03, -7.629107236970565122e-03, -7.643508215797166841e-03, -7.657895987705814339e-03, -7.672270530066470882e-03, -7.686631820272136865e-03, -7.700979835738255667e-03, -7.715314553903208916e-03, -7.729635952227979952e-03, -7.743944008196911033e-03, -7.758238699316760516e-03, -7.772520003117382864e-03, -7.786787897151475381e-03, -7.801042358995015358e-03, -7.815283366246757873e-03, -7.829510896528606156e-03, -7.843724927485409490e-03, -7.857925436785604192e-03, -7.872112402120372276e-03, -7.886285801204243398e-03, -7.900445611774874546e-03, -7.914591811593499338e-03, -7.928724378444383311e-03, -7.942843290135071996e-03, -7.956948524496951225e-03, -7.971040059384379775e-03, -7.985117872675299988e-03, -7.999181942271083381e-03, -8.013232246096853306e-03, -8.027268762101009633e-03, -8.041291468255684985e-03, -8.055300342556437690e-03, -8.069295363022964754e-03, -8.083276507698269192e-03, -8.097243754648994832e-03, -8.111197081965608457e-03, -8.125136467762805736e-03, -8.139061890178605693e-03, -8.152973327375058477e-03, -8.166870757538063214e-03, -8.180754158877617810e-03, -8.194623509627513638e-03, -8.208478788045430949e-03, -8.222319972413573777e-03, -8.236147041037707173e-03, -8.249959972247925682e-03, -8.263758744398304670e-03, -8.277543335867363489e-03, -8.291313725057572817e-03, -8.305069890395708546e-03, -8.318811810332728610e-03, -8.332539463344269121e-03, -8.346252827929894966e-03, -8.359951882613689614e-03, -8.373636605944022662e-03, -8.387306976494006069e-03, -8.400962972860925165e-03, -8.414604573666537024e-03, -8.428231757557573534e-03, -8.441844503204860156e-03, -8.455442789304054921e-03, -8.469026594575285866e-03, -8.482595897763640230e-03, -8.496150677638668325e-03, -8.509690912994711393e-03, -8.523216582650755893e-03, -8.536727665451018104e-03, -8.550224140264201661e-03, -8.563705985983816743e-03, -8.577173181528285895e-03, -8.590625705841398521e-03, -8.604063537891436589e-03, -8.617486656671868514e-03, -8.630895041201057730e-03, -8.644288670522717183e-03, -8.657667523705406265e-03, -8.671031579842709489e-03, -8.684380818053930376e-03, -8.697715217482979502e-03, -8.711034757299221040e-03, -8.724339416697240307e-03, -8.737629174897044992e-03, -8.750904011143837910e-03, -8.764163904708178326e-03, -8.777408834885907368e-03, -8.790638780998751706e-03, -8.803853722393392006e-03, -8.817053638442205396e-03, -8.830238508542939332e-03, -8.843408312119164366e-03, -8.856563028619819644e-03, -8.869702637519528629e-03, -8.882827118318357973e-03, -8.895936450542591203e-03, -8.909030613743686156e-03, -8.922109587498954983e-03, -8.935173351411722018e-03, -8.948221885110865803e-03, -8.961255168251205938e-03, -8.974273180513267154e-03, -8.987275901603931569e-03, -9.000263311255481125e-03, -9.013235389226402494e-03, -9.026192115301008914e-03, -9.039133469290092440e-03, -9.052059431030080872e-03, -9.064969980383520004e-03, -9.077865097239136080e-03, -9.090744761511990180e-03, -9.103608953143013313e-03, -9.116457652099575412e-03, -9.129290838375053382e-03, -9.142108491989495503e-03, -9.154910592988931006e-03, -9.167697121445708350e-03, -9.180468057458807465e-03, -9.193223381153376589e-03, -9.205963072681039305e-03, -9.218687112219802610e-03, -9.231395479974507934e-03, -9.244088156176152871e-03, -9.256765121082416795e-03, -9.269426354977483920e-03, -9.282071838172334735e-03, -9.294701551004438955e-03, -9.307315473837975833e-03, -9.319913587063679769e-03, -9.332495871099475218e-03, -9.345062306389598922e-03, -9.357612873405160223e-03, -9.370147552644314537e-03, -9.382666324631853960e-03, -9.395169169919535129e-03, -9.407656069085883199e-03, -9.420127002736861446e-03, -9.432581951504774923e-03, -9.445020896049267922e-03, -9.457443817056885096e-03, -9.469850695241550237e-03, -9.482241511343905346e-03, -9.494616246131914322e-03, -9.506974880400529890e-03, -9.519317394972179325e-03, -9.531643770696240567e-03, -9.543953988449455084e-03, -9.556248029135612151e-03, -9.568525873686322542e-03, -9.580787503060062688e-03, -9.593032898242731532e-03, -9.605262040247836142e-03, -9.617474910116122211e-03, -9.629671488915790903e-03, -9.641851757742439868e-03, -9.654015697719606215e-03, -9.666163289997860980e-03, -9.678294515755563737e-03, -9.690409356198571161e-03, -9.702507792560556218e-03, -9.714589806102645608e-03, -9.726655378113732014e-03, -9.738704489910302367e-03, -9.750737122836901014e-03, -9.762753258265534709e-03, -9.774752877596135786e-03, -9.786735962256180518e-03, -9.798702493701579030e-03, -9.810652453415637936e-03, -9.822585822909669223e-03, -9.834502583723104749e-03, -9.846402717423182252e-03, -9.858286205605146582e-03, -9.870153029892180310e-03, -9.882003171935870370e-03, -9.893836613415561004e-03, -9.905653336038747550e-03, -9.917453321541066028e-03, -9.929236551686470083e-03, -9.941003008266962107e-03, -9.952752673102770176e-03, -9.964485528042275192e-03, -9.976201554962512222e-03, -9.987900735768490482e-03, -9.999583052393599264e-03, -1.001124848679950732e-02, -1.002289702097658615e-02, -1.003452863694332883e-02, -1.004614331674665018e-02, -1.005774104246228394e-02, -1.006932179619412539e-02, -1.008088556007469445e-02, -1.009243231626500738e-02, -1.010396204695485252e-02, -1.011547473436244862e-02, -1.012697036073466166e-02, -1.013844890834698399e-02, -1.014991035950389177e-02, -1.016135469653824987e-02, -1.017278190181181499e-02, -1.018419195771485576e-02, -1.019558484666698017e-02, -1.020696055111613466e-02, -1.021831905353925291e-02, -1.022966033644229916e-02, -1.024098438235998554e-02, -1.025229117385594198e-02, -1.026358069352271973e-02, -1.027485292398217995e-02, -1.028610784788484313e-02, -1.029734544791041824e-02, -1.030856570676753903e-02, -1.031976860719419596e-02, -1.033095413195727133e-02, -1.034212226385286711e-02, -1.035327298570613494e-02, -1.036440628037176015e-02, -1.037552213073335110e-02, -1.038662051970382950e-02, -1.039770143022532636e-02, -1.040876484526952195e-02, -1.041981074783719652e-02, -1.043083912095836910e-02, -1.044184994769292371e-02, -1.045284321112971253e-02, -1.046381889438714394e-02, -1.047477698061301428e-02, -1.048571745298483050e-02, -1.049664029470936781e-02, -1.050754548902302354e-02, -1.051843301919166453e-02, -1.052930286851105207e-02, -1.054015502030629034e-02, -1.055098945793202063e-02, -1.056180616477265903e-02, -1.057260512424260286e-02, -1.058338631978554371e-02, -1.059414973487509889e-02, -1.060489535301452346e-02, -1.061562315773709880e-02, -1.062633313260573018e-02, -1.063702526121306641e-02, -1.064769952718197694e-02, -1.065835591416489786e-02, -1.066899440584431584e-02, -1.067961498593249410e-02, -1.069021763817194076e-02, -1.070080234633492833e-02, -1.071136909422380767e-02, -1.072191786567085019e-02, -1.073244864453873175e-02, -1.074296141471987702e-02, -1.075345616013687576e-02, -1.076393286474252101e-02, -1.077439151251979171e-02, -1.078483208748177297e-02, -1.079525457367170801e-02, -1.080565895516332441e-02, -1.081604521606033611e-02, -1.082641334049687550e-02, -1.083676331263722092e-02, -1.084709511667624783e-02, -1.085740873683895859e-02, -1.086770415738076007e-02, -1.087798136258747578e-02, -1.088824033677551414e-02, -1.089848106429161349e-02, -1.090870352951280910e-02, -1.091890771684672981e-02, -1.092909361073180277e-02, -1.093926119563668614e-02, -1.094941045606066983e-02, -1.095954137653360264e-02, -1.096965394161609694e-02, -1.097974813589922514e-02, -1.098982394400474689e-02, -1.099988135058531900e-02, -1.100992034032402186e-02, -1.101994089793478619e-02, -1.102994300816224557e-02, -1.103992665578194289e-02, -1.104989182560008401e-02, -1.105983850245368695e-02, -1.106976667121062352e-02, -1.107967631676981708e-02, -1.108956742406086091e-02, -1.109943997804433043e-02, -1.110929396371167395e-02, -1.111912936608550583e-02, -1.112894617021916062e-02, -1.113874436119709731e-02, -1.114852392413471886e-02, -1.115828484417877471e-02, -1.116802710650669980e-02, -1.117775069632714023e-02, -1.118745559888003650e-02, -1.119714179943621934e-02, -1.120680928329784165e-02, -1.121645803579801939e-02, -1.122608804230150296e-02, -1.123569928820388093e-02, -1.124529175893203281e-02, -1.125486543994412211e-02, -1.126442031672986351e-02, -1.127395637480997116e-02, -1.128347359973664622e-02, -1.129297197709329924e-02, -1.130245149249494395e-02, -1.131191213158783473e-02, -1.132135388004966436e-02, -1.133077672358946512e-02, -1.134018064794813443e-02, -1.134956563889761606e-02, -1.135893168224147258e-02, -1.136827876381495475e-02, -1.137760686948470490e-02, -1.138691598514899282e-02, -1.139620609673754406e-02, -1.140547719021204644e-02, -1.141472925156548739e-02, -1.142396226682259458e-02, -1.143317622203979082e-02, -1.144237110330527732e-02, -1.145154689673885673e-02, -1.146070358849208236e-02, -1.146984116474821999e-02, -1.147895961172258616e-02, -1.148805891566197224e-02, -1.149713906284511623e-02, -1.150620003958265254e-02, -1.151524183221701650e-02, -1.152426442712247909e-02, -1.153326781070520939e-02, -1.154225196940359723e-02, -1.155121688968754196e-02, -1.156016255805915674e-02, -1.156908896105234875e-02, -1.157799608523338644e-02, -1.158688391720024032e-02, -1.159575244358300623e-02, -1.160460165104381519e-02, -1.161343152627702935e-02, -1.162224205600894886e-02, -1.163103322699805299e-02, -1.163980502603490473e-02, -1.164855743994245262e-02, -1.165729045557558838e-02, -1.166600405982140022e-02, -1.167469823959942088e-02, -1.168337298186123384e-02, -1.169202827359070058e-02, -1.170066410180393285e-02, -1.170928045354955628e-02, -1.171787731590830800e-02, -1.172645467599326384e-02, -1.173501252094988519e-02, -1.174355083795613000e-02, -1.175206961422219608e-02, -1.176056883699076738e-02, -1.176904849353677118e-02, -1.177750857116805286e-02, -1.178594905722443568e-02, -1.179436993907848931e-02, -1.180277120413514812e-02, -1.181115283983206164e-02, -1.181951483363925977e-02, -1.182785717305928977e-02, -1.183617984562761009e-02, -1.184448283891187566e-02, -1.185276614051255541e-02, -1.186102973806267211e-02, -1.186927361922812500e-02, -1.187749777170725093e-02, -1.188570218323113485e-02, -1.189388684156350573e-02, -1.190205173450106617e-02, -1.191019684987303789e-02, -1.191832217554140115e-02, -1.192642769940099011e-02, -1.193451340937952583e-02, -1.194257929343742544e-02, -1.195062533956794612e-02, -1.195865153579717816e-02, -1.196665787018419240e-02, -1.197464433082085639e-02, -1.198261090583187943e-02, -1.199055758337513357e-02, -1.199848435164118342e-02, -1.200639119885371121e-02, -1.201427811326915077e-02, -1.202214508317724605e-02, -1.202999209690050648e-02, -1.203781914279459034e-02, -1.204562620924804102e-02, -1.205341328468271904e-02, -1.206118035755337700e-02, -1.206892741634797532e-02, -1.207665444958726936e-02, -1.208436144582566117e-02, -1.209204839365029920e-02, -1.209971528168158131e-02, -1.210736209857323983e-02, -1.211498883301199980e-02, -1.212259547371790161e-02, -1.213018200944410499e-02, -1.213774842897725678e-02, -1.214529472113702255e-02, -1.215282087477644393e-02, -1.216032687878180509e-02, -1.216781272207277144e-02, -1.217527839360232379e-02, -1.218272388235666463e-02, -1.219014917735544538e-02, -1.219755426765181325e-02, -1.220493914233214579e-02, -1.221230379051622267e-02, -1.221964820135724820e-02, -1.222697236404197453e-02, -1.223427626779052639e-02, -1.224155990185637165e-02, -1.224882325552681048e-02, -1.225606631812230923e-02, -1.226328907899692719e-02, -1.227049152753834083e-02, -1.227767365316772413e-02, -1.228483544533982494e-02, -1.229197689354287470e-02, -1.229909798729880883e-02, -1.230619871616319382e-02, -1.231327906972510752e-02, -1.232033903760734565e-02, -1.232737860946620141e-02, -1.233439777499194256e-02, -1.234139652390824418e-02, -1.234837484597253905e-02, -1.235533273097601942e-02, -1.236227016874362657e-02, -1.236918714913392940e-02, -1.237608366203932393e-02, -1.238295969738605236e-02, -1.238981524513402266e-02, -1.239665029527696992e-02, -1.240346483784239562e-02, -1.241025886289181396e-02, -1.241703236052036849e-02, -1.242378532085714263e-02, -1.243051773406506251e-02, -1.243722959034102710e-02, -1.244392087991578154e-02, -1.245059159305392585e-02, -1.245724172005400164e-02, -1.246387125124862744e-02, -1.247048017700416039e-02, -1.247706848772102417e-02, -1.248363617383379046e-02, -1.249018322581073835e-02, -1.249670963415432101e-02, -1.250321538940093492e-02, -1.250970048212110206e-02, -1.251616490291937618e-02, -1.252260864243428910e-02, -1.252903169133844606e-02, -1.253543404033874431e-02, -1.254181568017596719e-02, -1.254817660162506864e-02, -1.255451679549509682e-02, -1.256083625262941102e-02, -1.256713496390531558e-02, -1.257341292023440166e-02, -1.257967011256239283e-02, -1.258590653186919886e-02, -1.259212216916902848e-02, -1.259831701551013435e-02, -1.260449106197520167e-02, -1.261064429968105846e-02, -1.261677671977875712e-02, -1.262288831345360213e-02, -1.262897907192532532e-02, -1.263504898644783082e-02, -1.264109804830934082e-02, -1.264712624883231398e-02, -1.265313357937381498e-02, -1.265912003132499061e-02, -1.266508559611142191e-02, -1.267103026519298195e-02, -1.267695403006412896e-02, -1.268285688225354035e-02, -1.268873881332427227e-02, -1.269459981487384981e-02, -1.270043987853432775e-02, -1.270625899597210146e-02, -1.271205715888791554e-02, -1.271783435901714492e-02, -1.272359058812956925e-02, -1.272932583802941810e-02, -1.273504010055542118e-02, -1.274073336758091597e-02, -1.274640563101369500e-02, -1.275205688279603365e-02, -1.275768711490467104e-02, -1.276329631935118128e-02, -1.276888448818147212e-02, -1.277445161347607466e-02, -1.277999768735003927e-02, -1.278552270195319578e-02, -1.279102664946982215e-02, -1.279650952211885268e-02, -1.280197131215377558e-02, -1.280741201186297133e-02, -1.281283161356916792e-02, -1.281823010962989361e-02, -1.282360749243740064e-02, -1.282896375441843970e-02, -1.283429888803468491e-02, -1.283961288578224468e-02, -1.284490574019224625e-02, -1.285017744383029625e-02, -1.285542798929684843e-02, -1.286065736922698856e-02, -1.286586557629071717e-02, -1.287105260319268418e-02, -1.287621844267232592e-02, -1.288136308750380959e-02, -1.288648653049629528e-02, -1.289158876449354035e-02, -1.289666978237411291e-02, -1.290172957705158600e-02, -1.290676814147414218e-02, -1.291178546862498631e-02, -1.291678155152194488e-02, -1.292175638321807485e-02, -1.292670995680092298e-02, -1.293164226539309652e-02, -1.293655330215197699e-02, -1.294144306027010180e-02, -1.294631153297464039e-02, -1.295115871352773597e-02, -1.295598459522649161e-02, -1.296078917140305008e-02, -1.296557243542426074e-02, -1.297033438069211154e-02, -1.297507500064339937e-02, -1.297979428875008917e-02, -1.298449223851895484e-02, -1.298916884349179957e-02, -1.299382409724545578e-02, -1.299845799339169501e-02, -1.300307052557733711e-02, -1.300766168748418439e-02, -1.301223147282916555e-02, -1.301677987536415879e-02, -1.302130688887608197e-02, -1.302581250718686488e-02, -1.303029672415369732e-02, -1.303475953366856066e-02, -1.303920092965872232e-02, -1.304362090608639571e-02, -1.304801945694904035e-02, -1.305239657627904962e-02, -1.305675225814401617e-02, -1.306108649664662440e-02, -1.306539928592467641e-02, -1.306969062015113370e-02, -1.307396049353402520e-02, -1.307820890031667280e-02, -1.308243583477735651e-02, -1.308664129122965626e-02, -1.309082526402221072e-02, -1.309498774753896193e-02, -1.309912873619897833e-02, -1.310324822445644959e-02, -1.310734620680083055e-02, -1.311142267775677189e-02, -1.311547763188415476e-02, -1.311951106377800234e-02, -1.312352296806858047e-02, -1.312751333942149649e-02, -1.313148217253749458e-02, -1.313542946215253034e-02, -1.313935520303788351e-02, -1.314325939000007652e-02, -1.314714201788083972e-02, -1.315100308155724498e-02, -1.315484257594161897e-02, -1.315866049598157436e-02, -1.316245683665994565e-02, -1.316623159299496609e-02, -1.316998476004010120e-02, -1.317371633288415625e-02, -1.317742630665125203e-02, -1.318111467650071034e-02, -1.318478143762740785e-02, -1.318842658526139106e-02, -1.319205011466809130e-02, -1.319565202114814963e-02, -1.319923230003780534e-02, -1.320279094670851090e-02, -1.320632795656697007e-02, -1.320984332505553520e-02, -1.321333704765167115e-02, -1.321680911986829535e-02, -1.322025953725368408e-02, -1.322368829539167373e-02, -1.322709538990125659e-02, -1.323048081643693648e-02, -1.323384457068857434e-02, -1.323718664838151662e-02, -1.324050704527644090e-02, -1.324380575716950330e-02, -1.324708277989217545e-02, -1.325033810931149428e-02, -1.325357174132986426e-02, -1.325678367188512161e-02, -1.325997389695050474e-02, -1.326314241253478618e-02, -1.326628921468214414e-02, -1.326941429947212439e-02, -1.327251766301991952e-02, -1.327559930147607058e-02, -1.327865921102655035e-02, -1.328169738789286222e-02, -1.328471382833200029e-02, -1.328770852863635915e-02, -1.329068148513391084e-02, -1.329363269418802444e-02, -1.329656215219770024e-02, -1.329946985559728005e-02, -1.330235580085671089e-02, -1.330521998448128997e-02, -1.330806240301207755e-02, -1.331088305302546848e-02, -1.331368193113335353e-02, -1.331645903398319744e-02, -1.331921435825802677e-02, -1.332194790067632063e-02, -1.332465965799211477e-02, -1.332734962699499114e-02, -1.333001780451006750e-02, -1.333266418739794366e-02, -1.333528877255480555e-02, -1.333789155691239570e-02, -1.334047253743799594e-02, -1.334303171113441176e-02, -1.334556907504001917e-02, -1.334808462622878548e-02, -1.335057836181017914e-02, -1.335305027892925815e-02, -1.335550037476662677e-02, -1.335792864653851178e-02, -1.336033509149662027e-02, -1.336271970692827146e-02, -1.336508249015647826e-02, -1.336742343853959507e-02, -1.336974254947174284e-02, -1.337203982038257140e-02, -1.337431524873725769e-02, -1.337656883203668101e-02, -1.337880056781717321e-02, -1.338101045365073030e-02, -1.338319848714500035e-02, -1.338536466594309436e-02, -1.338750898772385865e-02, -1.338963145020152616e-02, -1.339173205112619176e-02, -1.339381078828340114e-02, -1.339586765949434682e-02, -1.339790266261571029e-02, -1.339991579553999508e-02, -1.340190705619509481e-02, -1.340387644254466618e-02, -1.340582395258797278e-02, -1.340774958435975162e-02, -1.340965333593044720e-02, -1.341153520540612661e-02, -1.341339519092848466e-02, -1.341523329067477802e-02, -1.341704950285791537e-02, -1.341884382572635682e-02, -1.342061625756432210e-02, -1.342236679669154761e-02, -1.342409544146340450e-02, -1.342580219027086907e-02, -1.342748704154058705e-02, -1.342914999373479717e-02, -1.343079104535137812e-02, -1.343241019492378945e-02, -1.343400744102116531e-02, -1.343558278224826069e-02, -1.343713621724542361e-02, -1.343866774468869055e-02, -1.344017736328959739e-02, -1.344166507179541878e-02, -1.344313086898905191e-02, -1.344457475368895059e-02, -1.344599672474925019e-02, -1.344739678105969297e-02, -1.344877492154565937e-02, -1.345013114516812984e-02, -1.345146545092370215e-02, -1.345277783784469203e-02, -1.345406830499889031e-02, -1.345533685148981619e-02, -1.345658347645658018e-02, -1.345780817907394136e-02, -1.345901095855226923e-02, -1.346019181413750550e-02, -1.346135074511126475e-02, -1.346248775079077198e-02, -1.346360283052889205e-02, -1.346469598371406728e-02, -1.346576720977039725e-02, -1.346681650815750864e-02, -1.346784387837075825e-02, -1.346884931994108379e-02, -1.346983283243502472e-02, -1.347079441545469096e-02, -1.347173406863783757e-02, -1.347265179165787856e-02, -1.347354758422377591e-02, -1.347442144608004475e-02, -1.347527337700697367e-02, -1.347610337682027086e-02, -1.347691144537136766e-02, -1.347769758254724164e-02, -1.347846178827048248e-02, -1.347920406249927990e-02, -1.347992440522738714e-02, -1.348062281648421470e-02, -1.348129929633469157e-02, -1.348195384487935015e-02, -1.348258646225439054e-02, -1.348319714863146362e-02, -1.348378590421791569e-02, -1.348435272925661496e-02, -1.348489762402597589e-02, -1.348542058884010485e-02, -1.348592162404856770e-02, -1.348640073003655633e-02, -1.348685790722473944e-02, -1.348729315606953146e-02, -1.348770647706274556e-02, -1.348809787073178973e-02, -1.348846733763969102e-02, -1.348881487838495506e-02, -1.348914049360166664e-02, -1.348944418395950709e-02, -1.348972595016360333e-02, -1.348998579295470658e-02, -1.349022371310905875e-02, -1.349043971143849656e-02, -1.349063378879026241e-02, -1.349080594604730281e-02, -1.349095618412798382e-02, -1.349108450398613449e-02, -1.349119090661124974e-02, -1.349127539302824585e-02, -1.349133796429757490e-02, -1.349137862151516404e-02, -1.349139736581247973e-02, -1.349139419835652769e-02, -1.349136912034972456e-02, -1.349132213303001239e-02, -1.349125323767080831e-02, -1.349116243558110863e-02, -1.349104972810521302e-02, -1.349091511662307667e-02, -1.349075860255000668e-02, -1.349058018733688587e-02, -1.349037987246988306e-02, -1.349015765947081391e-02, -1.348991354989688592e-02, -1.348964754534068798e-02, -1.348935964743030319e-02, -1.348904985782931401e-02, -1.348871817823667565e-02, -1.348836461038678547e-02, -1.348798915604944651e-02, -1.348759181702993172e-02, -1.348717259516891455e-02, -1.348673149234247588e-02, -1.348626851046205548e-02, -1.348578365147459594e-02, -1.348527691736236059e-02, -1.348474831014300976e-02, -1.348419783186964420e-02, -1.348362548463069924e-02, -1.348303127055000897e-02, -1.348241519178676115e-02, -1.348177725053549721e-02, -1.348111744902617988e-02, -1.348043578952404231e-02, -1.347973227432973549e-02, -1.347900690577924152e-02, -1.347825968624380248e-02, -1.347749061813015639e-02, -1.347669970388019021e-02, -1.347588694597122438e-02, -1.347505234691582544e-02, -1.347419590926194483e-02, -1.347331763559274885e-02, -1.347241752852676444e-02, -1.347149559071778371e-02, -1.347055182485493510e-02, -1.346958623366249601e-02, -1.346859881990010617e-02, -1.346758958636269654e-02, -1.346655853588040776e-02, -1.346550567131860575e-02, -1.346443099557798236e-02, -1.346333451159440614e-02, -1.346221622233900912e-02, -1.346107613081808964e-02, -1.345991424007326673e-02, -1.345873055318127197e-02, -1.345752507325410560e-02, -1.345629780343893939e-02, -1.345504874691811487e-02, -1.345377790690919020e-02, -1.345248528666488121e-02, -1.345117088947312550e-02, -1.344983471865692816e-02, -1.344847677757454556e-02, -1.344709706961928070e-02, -1.344569559821964799e-02, -1.344427236683930910e-02, -1.344282737897697574e-02, -1.344136063816656589e-02, -1.343987214797700766e-02, -1.343836191201240766e-02, -1.343682993391195207e-02, -1.343527621734991184e-02, -1.343370076603556118e-02, -1.343210358371341520e-02, -1.343048467416285696e-02, -1.342884404119845665e-02, -1.342718168866974433e-02, -1.342549762046140079e-02, -1.342379184049300941e-02, -1.342206435271929739e-02, -1.342031516112984595e-02, -1.341854426974945294e-02, -1.341675168263772693e-02, -1.341493740388931960e-02, -1.341310143763391714e-02, -1.341124378803611877e-02, -1.340936445929550094e-02, -1.340746345564659131e-02, -1.340554078135890864e-02, -1.340359644073679801e-02, -1.340163043811962509e-02, -1.339964277788167207e-02, -1.339763346443210469e-02, -1.339560250221496704e-02, -1.339354989570919890e-02, -1.339147564942864271e-02, -1.338937976792208689e-02, -1.338726225577303690e-02, -1.338512311759992857e-02, -1.338296235805601191e-02, -1.338077998182946558e-02, -1.337857599364316794e-02, -1.337635039825486004e-02, -1.337410320045714050e-02, -1.337183440507733190e-02, -1.336954401697757790e-02, -1.336723204105477909e-02, -1.336489848224070055e-02, -1.336254334550165436e-02, -1.336016663583892462e-02, -1.335776835828841880e-02, -1.335534851792073534e-02, -1.335290711984132503e-02, -1.335044416919018741e-02, -1.334795967114218128e-02, -1.334545363090671247e-02, -1.334292605372788820e-02, -1.334037694488461254e-02, -1.333780630969022551e-02, -1.333521415349296461e-02, -1.333260048167542525e-02, -1.332996529965503087e-02, -1.332730861288377970e-02, -1.332463042684823434e-02, -1.332193074706953216e-02, -1.331920957910344254e-02, -1.331646692854031831e-02, -1.331370280100497780e-02, -1.331091720215685052e-02, -1.330811013768991649e-02, -1.330528161333271661e-02, -1.330243163484813931e-02, -1.329956020803377791e-02, -1.329666733872158363e-02, -1.329375303277807382e-02, -1.329081729610415499e-02, -1.328786013463524943e-02, -1.328488155434119806e-02, -1.328188156122629346e-02, -1.327886016132924854e-02, -1.327581736072314805e-02, -1.327275316551554570e-02, -1.326966758184835830e-02, -1.326656061589781381e-02, -1.326343227387463686e-02, -1.326028256202378165e-02, -1.325711148662455860e-02, -1.325391905399067420e-02, -1.325070527047009228e-02, -1.324747014244511550e-02, -1.324421367633233163e-02, -1.324093587858255622e-02, -1.323763675568096800e-02, -1.323431631414688850e-02, -1.323097456053398679e-02, -1.322761150143007131e-02, -1.322422714345727890e-02, -1.322082149327183029e-02, -1.321739455756414452e-02, -1.321394634305897431e-02, -1.321047685651505557e-02, -1.320698610472536422e-02, -1.320347409451699296e-02, -1.319994083275121549e-02, -1.319638632632337202e-02, -1.319281058216287099e-02, -1.318921360723320814e-02, -1.318559540853211573e-02, -1.318195599309123119e-02, -1.317829536797622200e-02, -1.317461354028688636e-02, -1.317091051715699873e-02, -1.316718630575438101e-02, -1.316344091328074291e-02, -1.315967434697190401e-02, -1.315588661409760468e-02, -1.315207772196155638e-02, -1.314824767790130113e-02, -1.314439648928847348e-02, -1.314052416352854205e-02, -1.313663070806080427e-02, -1.313271613035860673e-02, -1.312878043792901038e-02, -1.312482363831310797e-02, -1.312084573908557476e-02, -1.311684674785517507e-02, -1.311282667226434419e-02, -1.310878551998940003e-02, -1.310472329874029854e-02, -1.310064001626098408e-02, -1.309653568032898528e-02, -1.309241029875570471e-02, -1.308826387938613611e-02, -1.308409643009904137e-02, -1.307990795880693835e-02, -1.307569847345603324e-02, -1.307146798202610087e-02, -1.306721649253061307e-02, -1.306294401301678031e-02, -1.305865055156526372e-02, -1.305433611629042145e-02, -1.305000071534031213e-02, -1.304564435689645370e-02, -1.304126704917389461e-02, -1.303686880042132998e-02, -1.303244961892096633e-02, -1.302800951298848167e-02, -1.302354849097314693e-02, -1.301906656125761778e-02, -1.301456373225807345e-02, -1.301004001242427911e-02, -1.300549541023912278e-02, -1.300092993421924324e-02, -1.299634359291450270e-02, -1.299173639490830770e-02, -1.298710834881725701e-02, -1.298245946329147638e-02, -1.297778974701439304e-02, -1.297309920870265941e-02, -1.296838785710644620e-02, -1.296365570100905217e-02, -1.295890274922714691e-02, -1.295412901061062001e-02, -1.294933449404267641e-02, -1.294451920843970108e-02, -1.293968316275139092e-02, -1.293482636596044767e-02, -1.292994882708297343e-02, -1.292505055516808554e-02, -1.292013155929824103e-02, -1.291519184858880981e-02, -1.291023143218844073e-02, -1.290525031927887076e-02, -1.290024851907480355e-02, -1.289522604082416792e-02, -1.289018289380786803e-02, -1.288511908733990310e-02, -1.288003463076715580e-02, -1.287492953346969747e-02, -1.286980380486040659e-02, -1.286465745438532954e-02, -1.285949049152324865e-02, -1.285430292578603959e-02, -1.284909476671844235e-02, -1.284386602389813066e-02, -1.283861670693554717e-02, -1.283334682547413071e-02, -1.282805638919013586e-02, -1.282274540779265726e-02, -1.281741389102351338e-02, -1.281206184865739915e-02, -1.280668929050186346e-02, -1.280129622639699857e-02, -1.279588266621583918e-02, -1.279044861986402583e-02, -1.278499409728003217e-02, -1.277951910843489955e-02, -1.277402366333233764e-02, -1.276850777200883719e-02, -1.276297144453346702e-02, -1.275741469100773358e-02, -1.275183752156602499e-02, -1.274623994637515481e-02, -1.274062197563455116e-02, -1.273498361957609709e-02, -1.272932488846431100e-02, -1.272364579259620265e-02, -1.271794634230121943e-02, -1.271222654794125322e-02, -1.270648641991076189e-02, -1.270072596863662182e-02, -1.269494520457794401e-02, -1.268914413822638983e-02, -1.268332278010605302e-02, -1.267748114077326023e-02, -1.267161923081670458e-02, -1.266573706085743871e-02, -1.265983464154880195e-02, -1.265391198357648794e-02, -1.264796909765818385e-02, -1.264200599454415319e-02, -1.263602268501670851e-02, -1.263001917989043862e-02, -1.262399549001201257e-02, -1.261795162626042251e-02, -1.261188759954669225e-02, -1.260580342081394842e-02, -1.259969910103754878e-02, -1.259357465122481340e-02, -1.258743008241527961e-02, -1.258126540568036550e-02, -1.257508063212365614e-02, -1.256887577288067111e-02, -1.256265083911902065e-02, -1.255640584203801535e-02, -1.255014079286925939e-02, -1.254385570287606423e-02, -1.253755058335386842e-02, -1.253122544562966685e-02, -1.252488030106259538e-02, -1.251851516104357867e-02, -1.251213003699540999e-02, -1.250572494037247365e-02, -1.249929988266124635e-02, -1.249285487537984789e-02, -1.248638993007800124e-02, -1.247990505833736739e-02, -1.247340027177124000e-02, -1.246687558202462173e-02, -1.246033100077411845e-02, -1.245376653972801381e-02, -1.244718221062627965e-02, -1.244057802524044937e-02, -1.243395399537351037e-02, -1.242731013286022500e-02, -1.242064644956680439e-02, -1.241396295739098828e-02, -1.240725966826194265e-02, -1.240053659414043150e-02, -1.239379374701860166e-02, -1.238703113892017892e-02, -1.238024878189997700e-02, -1.237344668804454470e-02, -1.236662486947165233e-02, -1.235978333833041495e-02, -1.235292210680133222e-02, -1.234604118709613230e-02, -1.233914059145801642e-02, -1.233222033216114545e-02, -1.232528042151119496e-02, -1.231832087184485391e-02, -1.231134169553032599e-02, -1.230434290496664265e-02, -1.229732451258413670e-02, -1.229028653084430871e-02, -1.228322897223978714e-02, -1.227615184929416181e-02, -1.226905517456221631e-02, -1.226193896062977018e-02, -1.225480322011365635e-02, -1.224764796566160663e-02, -1.224047320995245991e-02, -1.223327896569600948e-02, -1.222606524563287986e-02, -1.221883206253474886e-02, -1.221157942920409085e-02, -1.220430735847433980e-02, -1.219701586320957355e-02, -1.218970495630493540e-02, -1.218237465068623335e-02, -1.217502495931012396e-02, -1.216765589516392507e-02, -1.216026747126578919e-02, -1.215285970066450928e-02, -1.214543259643968177e-02, -1.213798617170135270e-02, -1.213052043959038546e-02, -1.212303541327823531e-02, -1.211553110596691810e-02, -1.210800753088899645e-02, -1.210046470130767167e-02, -1.209290263051673343e-02, -1.208532133184010704e-02, -1.207772081863260627e-02, -1.207010110427928287e-02, -1.206246220219588799e-02, -1.205480412582810718e-02, -1.204712688865244331e-02, -1.203943050417558003e-02, -1.203171498593459329e-02, -1.202398034749679011e-02, -1.201622660245984381e-02, -1.200845376445170039e-02, -1.200066184713059932e-02, -1.199285086418479078e-02, -1.198502082933290865e-02, -1.197717175632380046e-02, -1.196930365893625683e-02, -1.196141655097937573e-02, -1.195351044629224674e-02, -1.194558535874426335e-02, -1.193764130223443770e-02, -1.192967829069217431e-02, -1.192169633807678604e-02, -1.191369545837756873e-02, -1.190567566561371270e-02, -1.189763697383438255e-02, -1.188957939711867556e-02, -1.188150294957564072e-02, -1.187340764534390580e-02, -1.186529349859219255e-02, -1.185716052351899405e-02, -1.184900873435256775e-02, -1.184083814535082969e-02, -1.183264877080156957e-02, -1.182444062502233974e-02, -1.181621372236002672e-02, -1.180796807719153296e-02, -1.179970370392333101e-02, -1.179142061699154156e-02, -1.178311883086156746e-02, -1.177479836002868693e-02, -1.176645921901767200e-02, -1.175810142238270344e-02, -1.174972498470746619e-02, -1.174132992060514594e-02, -1.173291624471836311e-02, -1.172448397171919725e-02, -1.171603311630892326e-02, -1.170756369321833412e-02, -1.169907571720753096e-02, -1.169056920306596470e-02, -1.168204416561221572e-02, -1.167350061969424542e-02, -1.166493858018931122e-02, -1.165635806200359358e-02, -1.164775908007275110e-02, -1.163914164936146606e-02, -1.163050578486362480e-02, -1.162185150160202456e-02, -1.161317881462873430e-02, -1.160448773902479462e-02, -1.159577828990039465e-02, -1.158705048239437076e-02, -1.157830433167490562e-02, -1.156953985293894711e-02, -1.156075706141245808e-02, -1.155195597235014054e-02, -1.154313660103566813e-02, -1.153429896278168783e-02, -1.152544307292932210e-02, -1.151656894684865290e-02, -1.150767659993868867e-02, -1.149876604762706082e-02, -1.148983730536985021e-02, -1.148089038865217869e-02, -1.147192531298765923e-02, -1.146294209391858325e-02, -1.145394074701571070e-02, -1.144492128787854592e-02, -1.143588373213505482e-02, -1.142682809544184538e-02, -1.141775439348369225e-02, -1.140866264197413701e-02, -1.139955285665513081e-02, -1.139042505329699966e-02, -1.138127924769832475e-02, -1.137211545568621134e-02, -1.136293369311616556e-02, -1.135373397587160701e-02, -1.134451631986463892e-02, -1.133528074103543233e-02, -1.132602725535249849e-02, -1.131675587881232972e-02, -1.130746662743978455e-02, -1.129815951728776503e-02, -1.128883456443738852e-02, -1.127949178499757822e-02, -1.127013119510562010e-02, -1.126075281092669446e-02, -1.125135664865405116e-02, -1.124194272450878586e-02, -1.123251105474004120e-02, -1.122306165562480217e-02, -1.121359454346813368e-02, -1.120410973460263943e-02, -1.119460724538899957e-02, -1.118508709221572271e-02, -1.117554929149883539e-02, -1.116599385968235561e-02, -1.115642081323791474e-02, -1.114683016866493959e-02, -1.113722194249036623e-02, -1.112759615126885857e-02, -1.111795281158270768e-02, -1.110829194004180585e-02, -1.109861355328338808e-02, -1.108891766797242759e-02, -1.107920430080133918e-02, -1.106947346848999487e-02, -1.105972518778566144e-02, -1.104995947546305243e-02, -1.104017634832435771e-02, -1.103037582319881839e-02, -1.102055791694329240e-02, -1.101072264644182945e-02, -1.100087002860577860e-02, -1.099100008037357662e-02, -1.098111281871105502e-02, -1.097120826061109312e-02, -1.096128642309394247e-02, -1.095134732320651727e-02, -1.094139097802322887e-02, -1.093141740464542364e-02, -1.092142662020149750e-02, -1.091141864184674501e-02, -1.090139348676354668e-02, -1.089135117216121114e-02, -1.088129171527598034e-02, -1.087121513337081617e-02, -1.086112144373574742e-02, -1.085101066368761129e-02, -1.084088281056977757e-02, -1.083073790175261182e-02, -1.082057595463327242e-02, -1.081039698663555093e-02, -1.080020101520973858e-02, -1.078998805783301651e-02, -1.077975813200907074e-02, -1.076951125526836445e-02, -1.075924744516746495e-02, -1.074896671928988676e-02, -1.073866909524551563e-02, -1.072835459067076301e-02, -1.071802322322826587e-02, -1.070767501060727878e-02, -1.069730997052341891e-02, -1.068692812071867296e-02, -1.067652947896102766e-02, -1.066611406304515154e-02, -1.065568189079187621e-02, -1.064523298004807841e-02, -1.063476734868697496e-02, -1.062428501460800992e-02, -1.061378599573672456e-02, -1.060327031002453180e-02, -1.059273797544919155e-02, -1.058218901001439609e-02, -1.057162343175008928e-02, -1.056104125871169114e-02, -1.055044250898100507e-02, -1.053982720066558298e-02, -1.052919535189896817e-02, -1.051854698084038475e-02, -1.050788210567505862e-02, -1.049720074461394162e-02, -1.048650291589385379e-02, -1.047578863777704622e-02, -1.046505792855177350e-02, -1.045431080653195718e-02, -1.044354729005695336e-02, -1.043276739749189434e-02, -1.042197114722748404e-02, -1.041115855768002044e-02, -1.040032964729097759e-02, -1.038948443452776885e-02, -1.037862293788303913e-02, -1.036774517587492166e-02, -1.035685116704678811e-02, -1.034594092996758523e-02, -1.033501448323144792e-02, -1.032407184545799939e-02, -1.031311303529173530e-02, -1.030213807140273677e-02, -1.029114697248626267e-02, -1.028013975726252069e-02, -1.026911644447707495e-02, -1.025807705290050255e-02, -1.024702160132860522e-02, -1.023595010858185939e-02, -1.022486259350608578e-02, -1.021375907497194292e-02, -1.020263957187532086e-02, -1.019150410313650335e-02, -1.018035268770104904e-02, -1.016918534453923120e-02, -1.015800209264630140e-02, -1.014680295104195343e-02, -1.013558793877099296e-02, -1.012435707490278065e-02, -1.011311037853149589e-02, -1.010184786877563363e-02, -1.009056956477870533e-02, -1.007927548570871842e-02, -1.006796565075803070e-02, -1.005664007914377177e-02, -1.004529879010749617e-02, -1.003394180291532038e-02, -1.002256913685742497e-02, -1.001118081124876755e-02, -9.999776845428558908e-03, -9.988357258760368826e-03, -9.976922070631928305e-03, -9.965471300455348153e-03, -9.954004967667042653e-03, -9.942523091727646298e-03, -9.931025692121550619e-03, -9.919512788357804506e-03, -9.907984399969279807e-03, -9.896440546513125824e-03, -9.884881247570205531e-03, -9.873306522745652417e-03, -9.861716391668625889e-03, -9.850110873991830759e-03, -9.838489989392188578e-03, -9.826853757570582631e-03, -9.815202198251667121e-03, -9.803535331183502871e-03, -9.791853176138431633e-03, -9.780155752912318007e-03, -9.768443081324816590e-03, -9.756715181219103097e-03, -9.744972072462080789e-03, -9.733213774944302413e-03, -9.721440308579958056e-03, -9.709651693306411979e-03, -9.697847949084919053e-03, -9.686029095900045363e-03, -9.674195153759912805e-03, -9.662346142695763668e-03, -9.650482082762536565e-03, -9.638602994038424077e-03, -9.626708896624612544e-03, -9.614799810645960343e-03, -9.602875756250361244e-03, -9.590936753609027171e-03, -9.578982822916116968e-03, -9.567013984389121511e-03, -9.555030258268593091e-03, -9.543031664818213064e-03, -9.531018224324359911e-03, -9.518989957096745877e-03, -9.506946883467957271e-03, -9.494889023793581101e-03, -9.482816398451835577e-03, -9.470729027844071446e-03, -9.458626932394449335e-03, -9.446510132549582398e-03, -9.434378648779160811e-03, -9.422232501575656879e-03, -9.410071711454134208e-03, -9.397896298952011784e-03, -9.385706284629702356e-03, -9.373501689070095483e-03, -9.361282532878647741e-03, -9.349048836683174560e-03, -9.336800621134150324e-03, -9.324537906904408271e-03, -9.312260714689381616e-03, -9.299969065206395782e-03, -9.287662979195563523e-03, -9.275342477419202050e-03, -9.263007580661874671e-03, -9.250658309730245069e-03, -9.238294685453396493e-03, -9.225916728682542062e-03, -9.213524460290741999e-03, -9.201117901173462219e-03, -9.188697072248159722e-03, -9.176261994454338114e-03, -9.163812688753323818e-03, -9.151349176128550575e-03, -9.138871477585335662e-03, -9.126379614151037753e-03, -9.113873606874389049e-03, -9.101353476826397337e-03, -9.088819245099726690e-03, -9.076270932808763389e-03, -9.063708561089504900e-03, -9.051132151099774981e-03, -9.038541724018901019e-03, -9.025937301048064451e-03, -9.013318903409462887e-03, -9.000686552347442887e-03, -8.988040269127655149e-03, -8.975380075036853283e-03, -8.962705991383610252e-03, -8.950018039497803155e-03, -8.937316240730649661e-03, -8.924600616454558821e-03, -8.911871188063349644e-03, -8.899127976972049867e-03, -8.886371004617062488e-03, -8.873600292455482291e-03, -8.860815861965992690e-03, -8.848017734648213478e-03, -8.835205932022957565e-03, -8.822380475631776478e-03, -8.809541387037473845e-03, -8.796688687823855587e-03, -8.783822399595239000e-03, -8.770942543977228167e-03, -8.758049142616139773e-03, -8.745142217179199123e-03, -8.732221789354151567e-03, -8.719287880849678832e-03, -8.706340513395166569e-03, -8.693379708740754663e-03, -8.680405488656790791e-03, -8.667417874934611050e-03, -8.654416889386047293e-03, -8.641402553843427134e-03, -8.628374890159407409e-03, -8.615333920207296839e-03, -8.602279665880712550e-03, -8.589212149093762225e-03, -8.576131391780605212e-03, -8.563037415896004173e-03, -8.549930243414998951e-03, -8.536809896332412176e-03, -8.523676396663713156e-03, -8.510529766444384706e-03, -8.497370027730077532e-03, -8.484197202596336154e-03, -8.471011313138926760e-03, -8.457812381473533633e-03, -8.444600429736031505e-03, -8.431375480081718804e-03, -8.418137554686237062e-03, -8.404886675744937738e-03, -8.391622865473114673e-03, -8.378346146105565204e-03, -8.365056539897037721e-03, -8.351754069121988810e-03, -8.338438756074638761e-03, -8.325110623068397372e-03, -8.311769692436748666e-03, -8.298415986532638525e-03, -8.285049527728320304e-03, -8.271670338415715654e-03, -8.258278441006187270e-03, -8.244873857930611755e-03, -8.231456611638808887e-03, -8.218026724600334398e-03, -8.204584219303966489e-03, -8.191129118257766545e-03, -8.177661443988808523e-03, -8.164181219043600488e-03, -8.150688465987633580e-03, -8.137183207405706414e-03, -8.123665465901357824e-03, -8.110135264097482685e-03, -8.096592624635787216e-03, -8.083037570177170617e-03, -8.069470123400975664e-03, -8.055890307005890774e-03, -8.042298143709346314e-03, -8.028693656247342866e-03, -8.015076867374954298e-03, -8.001447799865836832e-03, -7.987806476512480588e-03, -7.974152920125645791e-03, -7.960487153535112173e-03, -7.946809199589104783e-03, -7.933119081154463986e-03, -7.919416821116307195e-03, -7.905702442378405304e-03, -7.891975967862950234e-03, -7.878237420510643407e-03, -7.864486823280045225e-03, -7.850724199148541305e-03, -7.836949571111695434e-03, -7.823162962183041400e-03, -7.809364395394577385e-03, -7.795553893796396475e-03, -7.781731480456821094e-03, -7.767897178461834022e-03, -7.754051010915898913e-03, -7.740193000941255133e-03, -7.726323171678515372e-03, -7.712441546285492104e-03, -7.698548147938471739e-03, -7.684642999831386295e-03, -7.670726125176109168e-03, -7.656797547202011910e-03, -7.642857289156447347e-03, -7.628905374304404373e-03, -7.614941825928660604e-03, -7.600966667329163082e-03, -7.586979921823920787e-03, -7.572981612748336776e-03, -7.558971763455169142e-03, -7.544950397314816384e-03, -7.530917537715064135e-03, -7.516873208061191844e-03, -7.502817431775422874e-03, -7.488750232297674767e-03, -7.474671633085064847e-03, -7.460581657611943182e-03, -7.446480329369678346e-03, -7.432367671866965328e-03, -7.418243708629599156e-03, -7.404108463200550355e-03, -7.389961959139389018e-03, -7.375804220023124413e-03, -7.361635269445609975e-03, -7.347455131017631771e-03, -7.333263828366665647e-03, -7.319061385137251054e-03, -7.304847824990790689e-03, -7.290623171604999724e-03, -7.276387448674758417e-03, -7.262140679911432972e-03, -7.247882889043395956e-03, -7.233614099814905662e-03, -7.219334335987346446e-03, -7.205043621338474980e-03, -7.190741979662617148e-03, -7.176429434770295081e-03, -7.162106010488673846e-03, -7.147771730661204095e-03, -7.133426619147836302e-03, -7.119070699824299117e-03, -7.104703996583089029e-03, -7.090326533332724432e-03, -7.075938333997962466e-03, -7.061539422519465085e-03, -7.047129822854237072e-03, -7.032709558975367564e-03, -7.018278654871513977e-03, -7.003837134547784109e-03, -6.989385022025032708e-03, -6.974922341340081787e-03, -6.960449116545369339e-03, -6.945965371709422048e-03, -6.931471130916369572e-03, -6.916966418266339185e-03, -6.902451257874583218e-03, -6.887925673872526827e-03, -6.873389690407008187e-03, -6.858843331640575129e-03, -6.844286621751018498e-03, -6.829719584931860481e-03, -6.815142245392175925e-03, -6.800554627355945292e-03, -6.785956755062936760e-03, -6.771348652768328057e-03, -6.756730344742490485e-03, -6.742101855270664530e-03, -6.727463208653754363e-03, -6.712814429207710279e-03, -6.698155541263637984e-03, -6.683486569167550531e-03, -6.668807537280717866e-03, -6.654118469979311210e-03, -6.639419391654687551e-03, -6.624710326712602085e-03, -6.609991299574201340e-03, -6.595262334675305003e-03, -6.580523456466629700e-03, -6.565774689413396946e-03, -6.551016057995839685e-03, -6.536247586708890910e-03, -6.521469300061690129e-03, -6.506681222578431650e-03, -6.491883378797747885e-03, -6.477075793272840318e-03, -6.462258490571169862e-03, -6.447431495274872325e-03, -6.432594831980401918e-03, -6.417748525298729023e-03, -6.402892599854668847e-03, -6.388027080287793022e-03, -6.373151991251759137e-03, -6.358267357414459919e-03, -6.343373203457752622e-03, -6.328469554077847600e-03, -6.313556433984905854e-03, -6.298633867903297504e-03, -6.283701880570864533e-03, -6.268760496740071776e-03, -6.253809741177090986e-03, -6.238849638661512001e-03, -6.223880213987293374e-03, -6.208901491961965266e-03, -6.193913497406952108e-03, -6.178916255157048711e-03, -6.163909790061049970e-03, -6.148894126981240861e-03, -6.133869290793661846e-03, -6.118835306387402848e-03, -6.103792198665559075e-03, -6.088739992544492906e-03, -6.073678712954089752e-03, -6.058608384837361679e-03, -6.043529033150894098e-03, -6.028440682864653205e-03, -6.013343358961368429e-03, -5.998237086437458766e-03, -5.983121890302385733e-03, -5.967997795578766120e-03, -5.952864827302110917e-03, -5.937723010521197414e-03, -5.922572370297727457e-03, -5.907412931706538216e-03, -5.892244719834885749e-03, -5.877067759783405169e-03, -5.861882076665416753e-03, -5.846687695607112427e-03, -5.831484641747177594e-03, -5.816272940237291605e-03, -5.801052616241701883e-03, -5.785823694937475455e-03, -5.770586201513655013e-03, -5.755340161172605926e-03, -5.740085599128950250e-03, -5.724822540609353361e-03, -5.709551010853405190e-03, -5.694271035112914194e-03, -5.678982638652108582e-03, -5.663685846747262484e-03, -5.648380684687184274e-03, -5.633067177772781153e-03, -5.617745351317311557e-03, -5.602415230645687791e-03, -5.587076841095368548e-03, -5.571730208015750023e-03, -5.556375356768276062e-03, -5.541012312726130255e-03, -5.525641101274639255e-03, -5.510261747810965734e-03, -5.494874277744267108e-03, -5.479478716494981701e-03, -5.464075089495838353e-03, -5.448663422191145182e-03, -5.433243740036687239e-03, -5.417816068500100335e-03, -5.402380433060511959e-03, -5.386936859208829240e-03, -5.371485372446868113e-03, -5.356025998288482630e-03, -5.340558762258744430e-03, -5.325083689894201215e-03, -5.309600806742487307e-03, -5.294110138362761661e-03, -5.278611710325392149e-03, -5.263105548211996325e-03, -5.247591677615137847e-03, -5.232070124138740209e-03, -5.216540913397757148e-03, -5.201004071018308812e-03, -5.185459622637044255e-03, -5.169907593902046961e-03, -5.154348010472271056e-03, -5.138780898017244678e-03, -5.123206282217626813e-03, -5.107624188764737193e-03, -5.092034643360846859e-03, -5.076437671718383657e-03, -5.060833299560997360e-03, -5.045221552622729602e-03, -5.029602456648336536e-03, -5.013976037392805715e-03, -4.998342320621920742e-03, -4.982701332111793766e-03, -4.967053097649127419e-03, -4.951397643030474097e-03, -4.935734994063248164e-03, -4.920065176565008649e-03, -4.904388216363330007e-03, -4.888704139296241868e-03, -4.873012971211819651e-03, -4.857314737968440425e-03, -4.841609465434028314e-03, -4.825897179487032874e-03, -4.810177906015744749e-03, -4.794451670918454395e-03, -4.778718500103107739e-03, -4.762978419487752003e-03, -4.747231455000180955e-03, -4.731477632578022507e-03, -4.715716978168380501e-03, -4.699949517728310884e-03, -4.684175277224414922e-03, -4.668394282633088130e-03, -4.652606559939711887e-03, -4.636812135139763667e-03, -4.621011034238067632e-03, -4.605203283248640242e-03, -4.589388908195121339e-03, -4.573567935110408114e-03, -4.557740390036909249e-03, -4.541906299025711378e-03, -4.526065688137696254e-03, -4.510218583442700269e-03, -4.494365011019804158e-03, -4.478504996956901053e-03, -4.462638567351177865e-03, -4.446765748308774413e-03, -4.430886565944930008e-03, -4.415001046383276555e-03, -4.399109215756854228e-03, -4.383211100207348200e-03, -4.367306725885343639e-03, -4.351396118949870349e-03, -4.335479305568947471e-03, -4.319556311919333681e-03, -4.303627164185867132e-03, -4.287691888562496743e-03, -4.271750511251433055e-03, -4.255803058463811760e-03, -4.239849556418425619e-03, -4.223890031343069743e-03, -4.207924509473741879e-03, -4.191953017054814157e-03, -4.175975580338702614e-03, -4.159992225586278333e-03, -4.144002979066530902e-03, -4.128007867056774846e-03, -4.112006915841861197e-03, -4.096000151715268635e-03, -4.079987600978289899e-03, -4.063969289940264247e-03, -4.047945244918231371e-03, -4.031915492237322582e-03, -4.015880058230657593e-03, -3.999838969238582974e-03, -3.983792251609742478e-03, -3.967739931700322437e-03, -3.951682035874246046e-03, -3.935618590502816885e-03, -3.919549621965174278e-03, -3.903475156647899947e-03, -3.887395220945264775e-03, -3.871309841258448181e-03, -3.855219043996567681e-03, -3.839122855575945528e-03, -3.823021302420294767e-03, -3.806914410960348868e-03, -3.790802207634347016e-03, -3.774684718887804259e-03, -3.758561971172854482e-03, -3.742433990949264357e-03, -3.726300804683611075e-03, -3.710162438849917265e-03, -3.694018919928385072e-03, -3.677870274406787841e-03, -3.661716528779587147e-03, -3.645557709548192995e-03, -3.629393843220546628e-03, -3.613224956311615783e-03, -3.597051075342987906e-03, -3.580872226843122546e-03, -3.564688437346552087e-03, -3.548499733394923014e-03, -3.532306141536260824e-03, -3.516107688325194238e-03, -3.499904400322495501e-03, -3.483696304095658912e-03, -3.467483426218614159e-03, -3.451265793271070595e-03, -3.435043431839577589e-03, -3.418816368516739996e-03, -3.402584629901434995e-03, -3.386348242598416578e-03, -3.370107233218839430e-03, -3.353861628379817880e-03, -3.337611454704661820e-03, -3.321356738822117769e-03, -3.305097507367420542e-03, -3.288833786981502656e-03, -3.272565604311228945e-03, -3.256292986009001050e-03, -3.240015958733264388e-03, -3.223734549148060159e-03, -3.207448783923314613e-03, -3.191158689733921815e-03, -3.174864293261189969e-03, -3.158565621191701273e-03, -3.142262700217061683e-03, -3.125955557034895346e-03, -3.109644218348042721e-03, -3.093328710864817754e-03, -3.077009061298559452e-03, -3.060685296368183088e-03, -3.044357442797737418e-03, -3.028025527316652310e-03, -3.011689576658945541e-03, -2.995349617564306999e-03, -2.979005676777282934e-03, -2.962657781047542665e-03, -2.946305957129463117e-03, -2.929950231782610208e-03, -2.913590631771521139e-03, -2.897227183865055174e-03, -2.880859914837390241e-03, -2.864488851467305620e-03, -2.848114020538354985e-03, -2.831735448838509049e-03, -2.815353163160613965e-03, -2.798967190302029204e-03, -2.782577557064814903e-03, -2.766184290255001114e-03, -2.749787416683574862e-03, -2.733386963165784951e-03, -2.716982956521321949e-03, -2.700575423573905315e-03, -2.684164391151822038e-03, -2.667749886087494252e-03, -2.651331935217704754e-03, -2.634910565382747420e-03, -2.618485803427843608e-03, -2.602057676201977292e-03, -2.585626210557708578e-03, -2.569191433352102216e-03, -2.552753371445967354e-03, -2.536312051704083925e-03, -2.519867500994797584e-03, -2.503419746190517579e-03, -2.486968814167311685e-03, -2.470514731805145605e-03, -2.454057525987068077e-03, -2.437597223600328038e-03, -2.421133851535555402e-03, -2.404667436686994814e-03, -2.388198005952099721e-03, -2.371725586232057998e-03, -2.355250204431343954e-03, -2.338771887457988946e-03, -2.322290662222764330e-03, -2.305806555640282137e-03, -2.289319594628264325e-03, -2.272829806107352826e-03, -2.256337217001590494e-03, -2.239841854238030366e-03, -2.223343744746945558e-03, -2.206842915461060348e-03, -2.190339393316628313e-03, -2.173833205252623940e-03, -2.157324378210977688e-03, -2.140812939136186102e-03, -2.124298914975800579e-03, -2.107782332680024906e-03, -2.091263219201847968e-03, -2.074741601496630453e-03, -2.058217506522633938e-03, -2.041690961240580707e-03, -2.025161992613903547e-03, -2.008630627607951250e-03, -1.992096893191071076e-03, -1.975560816333904891e-03, -1.959022424009161482e-03, -1.942481743192124403e-03, -1.925938800860256452e-03, -1.909393623993402636e-03, -1.892846239573028411e-03, -1.876296674583292391e-03, -1.859744956010238185e-03, -1.843191110842049615e-03, -1.826635166068611401e-03, -1.810077148682056464e-03, -1.793517085676315983e-03, -1.776955004047386976e-03, -1.760390930792511124e-03, -1.743824892911273287e-03, -1.727256917404894170e-03, -1.710687031275998950e-03, -1.694115261529144639e-03, -1.677541635170384880e-03, -1.660966179207521484e-03, -1.644388920649306890e-03, -1.627809886506520996e-03, -1.611229103791183594e-03, -1.594646599516777495e-03, -1.578062400697863212e-03, -1.561476534350548194e-03, -1.544889027492117334e-03, -1.528299907141137488e-03, -1.511709200317063254e-03, -1.495116934040746333e-03, -1.478523135334008790e-03, -1.461927831219908026e-03, -1.445331048721905419e-03, -1.428732814864972856e-03, -1.412133156674889520e-03, -1.395532101178004669e-03, -1.378929675401750462e-03, -1.362325906374243188e-03, -1.345720821124500328e-03, -1.329114446681655369e-03, -1.312506810076043313e-03, -1.295897938338394896e-03, -1.279287858500083351e-03, -1.262676597592704607e-03, -1.246064182648595319e-03, -1.229450640700407646e-03, -1.212835998781352760e-03, -1.196220283924413069e-03, -1.179603523163407115e-03, -1.162985743532212856e-03, -1.146366972064988840e-03, -1.129747235795772620e-03, -1.113126561758981652e-03, -1.096504976989194071e-03, -1.079882508520453935e-03, -1.063259183387328319e-03, -1.046635028624044294e-03, -1.030010071265179562e-03, -1.013384338344321947e-03, -9.967578568955090014e-04, -9.801306539523448134e-04, -9.635027565482466626e-04, -9.468741917160150264e-04, -9.302449864883605016e-04, -9.136151678974741355e-04, -8.969847629752766838e-04, -8.803537987526225891e-04, -8.637223022603708481e-04, -8.470903005286968676e-04, -8.304578205868609880e-04, -8.138248894637142633e-04, -7.971915341872939454e-04, -7.805577817850533348e-04, -7.639236592830719397e-04, -7.472891937071324134e-04, -7.306544120819297378e-04, -7.140193414313068202e-04, -6.973840087778414125e-04, -6.807484411433564449e-04, -6.641126655485033673e-04, -6.474767090130037093e-04, -6.308405985548555528e-04, -6.142043611914075425e-04, -5.975680239385725142e-04, -5.809316138110588636e-04, -5.642951578219603925e-04, -5.476586829832658836e-04, -5.310222163056299008e-04, -5.143857847976815011e-04, -4.977494154670906567e-04, -4.811131353196956882e-04, -4.644769713601943901e-04, -4.478409505908069921e-04, -4.312051000127106130e-04, -4.145694466251683753e-04, -3.979340174257603945e-04, -3.812988394099656566e-04, -3.646639395716812964e-04, -3.480293449028016022e-04, -3.313950823934575158e-04, -3.147611790312289056e-04, -2.981276618022139151e-04, -2.814945576902428618e-04, -2.648618936771135099e-04, -2.482296967421762537e-04, -2.315979938628469727e-04, -2.149668120143779940e-04, -1.983361781691657475e-04, -1.817061192978175401e-04, -1.650766623683689238e-04, -1.484478343465183716e-04, -1.318196621952091277e-04, -1.151921728751465076e-04, -9.856539334438001914e-05, -8.193935055853969192e-05, -6.531407147005040986e-05, -4.868958302920029093e-05, -3.206591218335633464e-05, -1.544308587719804722e-05, 1.178868947696194127e-06, 1.779992535233685663e-05, 3.442005640073762210e-05, 5.103923515968059114e-05, 6.765743469950155295e-05, 8.427462809311396367e-05, 1.008907884162376826e-04, 1.175058887485552398e-04, 1.341199021722707893e-04, 1.507328017729903861e-04, 1.673445606394853731e-04, 1.839551518641067897e-04, 2.005645485422734796e-04, 2.171727237728866898e-04, 2.337796506580933347e-04, 2.503853023040729917e-04, 2.669896518199693387e-04, 2.835926723186732185e-04, 3.001943369165898344e-04, 3.167946187340507733e-04, 3.333934908948038892e-04, 3.499909265262403347e-04, 3.665868987600878542e-04, 3.831813807313401887e-04, 3.997743455790435559e-04, 4.163657664460628416e-04, 4.329556164794915916e-04, 4.495438688301453089e-04, 4.661304966529698736e-04, 4.827154731068104983e-04, 4.992987713551940354e-04, 5.158803645652609285e-04, 5.324602259085534821e-04, 5.490383285607759820e-04, 5.656146457022093480e-04, 5.821891505172012340e-04, 5.987618161945771570e-04, 6.153326159274118395e-04, 6.319015229138940769e-04, 6.484685103559013376e-04, 6.650335514601459809e-04, 6.815966194384047829e-04, 6.981576875065479250e-04, 7.147167288853179933e-04, 7.312737168000990433e-04, 7.478286244813243683e-04, 7.643814251639750564e-04, 7.809320920879778919e-04, 7.974805984979871061e-04, 8.140269176441604490e-04, 8.305710227810833351e-04, 8.471128871685675759e-04, 8.636524840714122041e-04, 8.801897867598077732e-04, 8.967247685088324200e-04, 9.132574025988696078e-04, 9.297876623153620125e-04, 9.463155209496001714e-04, 9.628409517976589888e-04, 9.793639281610825188e-04, 9.958844233471128397e-04, 1.012402410668184708e-03, 1.028917863442327472e-03, 1.045430754992943568e-03, 1.061941058649576788e-03, 1.078448747746855183e-03, 1.094953795625277105e-03, 1.111456175630968352e-03, 1.127955861116088738e-03, 1.144452825438347678e-03, 1.160947041961384084e-03, 1.177438484054551052e-03, 1.193927125093788419e-03, 1.210412938460177310e-03, 1.226895897541296692e-03, 1.243375975730506714e-03, 1.259853146427824091e-03, 1.276327383038876285e-03, 1.292798658975571110e-03, 1.309266947656329613e-03, 1.325732222505578888e-03, 1.342194456954158436e-03, 1.358653624439090744e-03, 1.375109698404363215e-03, 1.391562652299852421e-03, 1.408012459582127065e-03, 1.424459093714182780e-03, 1.440902528165886876e-03, 1.457342736413441220e-03, 1.473779691939812453e-03, 1.490213368234482617e-03, 1.506643738794246267e-03, 1.523070777122128867e-03, 1.539494456728088267e-03, 1.555914751129233720e-03, 1.572331633849320849e-03, 1.588745078419159752e-03, 1.605155058376381456e-03, 1.621561547266220284e-03, 1.637964518640439623e-03, 1.654363946058134884e-03, 1.670759803085474816e-03, 1.687152063296127377e-03, 1.703540700270740615e-03, 1.719925687597360963e-03, 1.736306998871285992e-03, 1.752684607695482923e-03, 1.769058487680069507e-03, 1.785428612442729705e-03, 1.801794955608473870e-03, 1.818157490810433895e-03, 1.834516191688776192e-03, 1.850871031891407944e-03, 1.867221985074205004e-03, 1.883569024900477598e-03, 1.899912125041407262e-03, 1.916251259175810479e-03, 1.932586400990891993e-03, 1.948917524181214373e-03, 1.965244602449461517e-03, 1.981567609506204239e-03, 1.997886519070304900e-03, 2.014201304868427998e-03, 2.030511940635432860e-03, 2.046818400114141200e-03, 2.063120657056118600e-03, 2.079418685220618939e-03, 2.095712458375350272e-03, 2.112001950296243241e-03, 2.128287134767878688e-03, 2.144567985582948588e-03, 2.160844476542504982e-03, 2.177116581456640422e-03, 2.193384274143415913e-03, 2.209647528429659318e-03, 2.225906318150705585e-03, 2.242160617150831294e-03, 2.258410399282720360e-03, 2.274655638407898153e-03, 2.290896308396581441e-03, 2.307132383128072169e-03, 2.323363836490275648e-03, 2.339590642380081319e-03, 2.355812774703151553e-03, 2.372030207374686665e-03, 2.388242914318364565e-03, 2.404450869467042017e-03, 2.420654046762948496e-03, 2.436852420157196563e-03, 2.453045963610212508e-03, 2.469234651091454028e-03, 2.485418456580218167e-03, 2.501597354064586179e-03, 2.517771317542173357e-03, 2.533940321019924769e-03, 2.550104338514495601e-03, 2.566263344051768897e-03, 2.582417311667249780e-03, 2.598566215405824758e-03, 2.614710029322557527e-03, 2.630848727481610843e-03, 2.646982283957033649e-03, 2.663110672832523420e-03, 2.679233868201829488e-03, 2.695351844168261679e-03, 2.711464574844886771e-03, 2.727572034355241030e-03, 2.743674196832250785e-03, 2.759771036419101081e-03, 2.775862527268574322e-03, 2.791948643544317921e-03, 2.808029359419473431e-03, 2.824104649077510080e-03, 2.840174486712003597e-03, 2.856238846527046470e-03, 2.872297702736720595e-03, 2.888351029565540060e-03, 2.904398801248189201e-03, 2.920440992030286318e-03, 2.936477576167369295e-03, 2.952508527925636755e-03, 2.968533821581715616e-03, 2.984553431423076549e-03, 3.000567331747527877e-03, 3.016575496863437185e-03, 3.032577901090403524e-03, 3.048574518758209208e-03, 3.064565324207609107e-03, 3.080550291790059604e-03, 3.096529395868151402e-03, 3.112502610815106457e-03, 3.128469911015157017e-03, 3.144431270863368676e-03, 3.160386664766316484e-03, 3.176336067141133455e-03, 3.192279452416213990e-03, 3.208216795031021331e-03, 3.224148069436451412e-03, 3.240073250094360150e-03, 3.255992311477965036e-03, 3.271905228071610508e-03, 3.287811974371493504e-03, 3.303712524884799134e-03, 3.319606854129835121e-03, 3.335494936637189295e-03, 3.351376746948338779e-03, 3.367252259616495668e-03, 3.383121449206346384e-03, 3.398984290294496200e-03, 3.414840757468959234e-03, 3.430690825329534878e-03, 3.446534468487599638e-03, 3.462371661566867372e-03, 3.478202379202340218e-03, 3.494026596041088784e-03, 3.509844286741975027e-03, 3.525655425976121499e-03, 3.541459988426366202e-03, 3.557257948787481607e-03, 3.573049281766860295e-03, 3.588833962083482799e-03, 3.604611964468655734e-03, 3.620383263665790611e-03, 3.636147834430825381e-03, 3.651905651531678863e-03, 3.667656689748710012e-03, 3.683400923874430386e-03, 3.699138328714281308e-03, 3.714868879085641597e-03, 3.730592549818523632e-03, 3.746309315755374722e-03, 3.762019151751465253e-03, 3.777722032674401664e-03, 3.793417933404523695e-03, 3.809106828834656761e-03, 3.824788693870909053e-03, 3.840463503431676244e-03, 3.856131232447895189e-03, 3.871791855864151980e-03, 3.887445348637274221e-03, 3.903091685737194918e-03, 3.918730842146730432e-03, 3.934362792861946512e-03, 3.949987512891685142e-03, 3.965604977257956160e-03, 3.981215160995718247e-03, 3.996818039153610114e-03, 4.012413586792949564e-03, 4.028001778988463816e-03, 4.043582590828069187e-03, 4.059155997413257076e-03, 4.074721973858625584e-03, 4.090280495292262890e-03, 4.105831536855491376e-03, 4.121375073703660401e-03, 4.136911081005106329e-03, 4.152439533941803054e-03, 4.167960407709567563e-03, 4.183473677517633195e-03, 4.198979318588941072e-03, 4.214477306160013467e-03, 4.229967615481622541e-03, 4.245450221817830168e-03, 4.260925100446693106e-03, 4.276392226660045287e-03, 4.291851575763900271e-03, 4.307303123077973334e-03, 4.322746843936024937e-03, 4.338182713685704607e-03, 4.353610707689309876e-03, 4.369030801322477432e-03, 4.384442969975419976e-03, 4.399847189052299122e-03, 4.415243433971970458e-03, 4.430631680167071082e-03, 4.446011903084629360e-03, 4.461384078186247069e-03, 4.476748180947673524e-03, 4.492104186859147315e-03, 4.507452071425200289e-03, 4.522791810165398274e-03, 4.538123378613290702e-03, 4.553446752317191239e-03, 4.568761906839940989e-03, 4.584068817759305754e-03, 4.599367460667469487e-03, 4.614657811171429813e-03, 4.629939844892807209e-03, 4.645213537468502463e-03, 4.660478864549794618e-03, 4.675735801802917771e-03, 4.690984324909270101e-03, 4.706224409564969784e-03, 4.721456031481245305e-03, 4.736679166384145760e-03, 4.751893790015356174e-03, 4.767099878131141923e-03, 4.782297406503106807e-03, 4.797486350917963202e-03, 4.812666687177901553e-03, 4.827838391100134144e-03, 4.843001438517274132e-03, 4.858155805277110037e-03, 4.873301467243417590e-03, 4.888438400294603178e-03, 4.903566580325018770e-03, 4.918685983244195162e-03, 4.933796584977775262e-03, 4.948898361466415145e-03, 4.963991288666516968e-03, 4.979075342550364283e-03, 4.994150499105689221e-03, 5.009216734336049796e-03, 5.024274024260565359e-03, 5.039322344914729315e-03, 5.054361672349312780e-03, 5.069391982631187704e-03, 5.084413251843023299e-03, 5.099425456083722316e-03, 5.114428571467926656e-03, 5.129422574126405940e-03, 5.144407440205819859e-03, 5.159383145869439816e-03, 5.174349667296199162e-03, 5.189306980681387092e-03, 5.204255062236406645e-03, 5.219193888189184102e-03, 5.234123434783714487e-03, 5.249043678280213357e-03, 5.263954594955811556e-03, 5.278856161103502240e-03, 5.293748353032944054e-03, 5.308631147070164494e-03, 5.323504519557964963e-03, 5.338368446855495768e-03, 5.353222905338560558e-03, 5.368067871399513115e-03, 5.382903321447643323e-03, 5.397729231908709666e-03, 5.412545579225275759e-03, 5.427352339856568973e-03, 5.442149490279089320e-03, 5.456937006985748163e-03, 5.471714866486388634e-03, 5.486483045308099618e-03, 5.501241519994623345e-03, 5.515990267106848921e-03, 5.530729263222524360e-03, 5.545458484936978232e-03, 5.560177908862169900e-03, 5.574887511627392954e-03, 5.589587269879021068e-03, 5.604277160280935616e-03, 5.618957159514026065e-03, 5.633627244276601109e-03, 5.648287391284081624e-03, 5.662937577269826391e-03, 5.677577778984097337e-03, 5.692207973194739548e-03, 5.706828136687078917e-03, 5.721438246264143324e-03, 5.736038278746323493e-03, 5.750628210971503104e-03, 5.765208019795690225e-03, 5.779777682092108321e-03, 5.794337174751828558e-03, 5.808886474683580721e-03, 5.823425558814153934e-03, 5.837954404087863230e-03, 5.852472987467019667e-03, 5.866981285931690930e-03, 5.881479276480163637e-03, 5.895966936128412515e-03, 5.910444241910492447e-03, 5.924911170878371068e-03, 5.939367700102549802e-03, 5.953813806671148789e-03, 5.968249467690606852e-03, 5.982674660285467252e-03, 5.997089361598726374e-03, 6.011493548791392236e-03, 6.025887199042704798e-03, 6.040270289550672862e-03, 6.054642797531237935e-03, 6.069004700218856227e-03, 6.083355974866362474e-03, 6.097696598745284795e-03, 6.112026549145432690e-03, 6.126345803375241386e-03, 6.140654338761554996e-03, 6.154952132650311734e-03, 6.169239162405637522e-03, 6.183515405410460949e-03, 6.197780839066402252e-03, 6.212035440794036120e-03, 6.226279188032542156e-03, 6.240512058239933851e-03, 6.254734028893010021e-03, 6.268945077487883891e-03, 6.283145181539241501e-03, 6.297334318580490031e-03, 6.311512466164741382e-03, 6.325679601863611751e-03, 6.339835703267963224e-03, 6.353980747987661784e-03, 6.368114713651982367e-03, 6.382237577909134416e-03, 6.396349318426590609e-03, 6.410449912891007067e-03, 6.424539339008709937e-03, 6.438617574504924314e-03, 6.452684597124369245e-03, 6.466740384631091201e-03, 6.480784914808807549e-03, 6.494818165460441647e-03, 6.508840114408350960e-03, 6.522850739494909060e-03, 6.536850018581549793e-03, 6.550837929549487189e-03, 6.564814450299523776e-03, 6.578779558752319463e-03, 6.592733232848034183e-03, 6.606675450546656628e-03, 6.620606189827763118e-03, 6.634525428691273076e-03, 6.648433145156370898e-03, 6.662329317262419281e-03, 6.676213923068493455e-03, 6.690086940653943229e-03, 6.703948348117812726e-03, 6.717798123579283610e-03, 6.731636245177380178e-03, 6.745462691071724831e-03, 6.759277439441670719e-03, 6.773080468486494289e-03, 6.786871756426328568e-03, 6.800651281501054676e-03, 6.814419021970881223e-03, 6.828174956116297468e-03, 6.841919062238339608e-03, 6.855651318658137136e-03, 6.869371703717366481e-03, 6.883080195777895385e-03, 6.896776773222566999e-03, 6.910461414454264865e-03, 6.924134097896527014e-03, 6.937794801993415854e-03, 6.951443505209776649e-03, 6.965080186030907922e-03, 6.978704822962812984e-03, 6.992317394532055960e-03, 7.005917879286414039e-03, 7.019506255793948532e-03, 7.033082502643606820e-03, 7.046646598445405370e-03, 7.060198521829990845e-03, 7.073738251448986186e-03, 7.087265765974841425e-03, 7.100781044101353232e-03, 7.114284064542938935e-03, 7.127774806035169081e-03, 7.141253247334616513e-03, 7.154719367219176430e-03, 7.168173144487650049e-03, 7.181614557960101959e-03, 7.195043586477658029e-03, 7.208460208903095211e-03, 7.221864404120109486e-03, 7.235256151033605566e-03, 7.248635428569919804e-03, 7.262002215677128107e-03, 7.275356491324247964e-03, 7.288698234501806567e-03, 7.302027424222025560e-03, 7.315344039518423790e-03, 7.328648059446101794e-03, 7.341939463081570937e-03, 7.355218229523404795e-03, 7.368484337891374400e-03, 7.381737767327031102e-03, 7.394978496993588613e-03, 7.408206506076160658e-03, 7.421421773781447864e-03, 7.434624279338017047e-03, 7.447814001996078299e-03, 7.460990921028176279e-03, 7.474155015728285549e-03, 7.487306265412403856e-03, 7.500444649418685703e-03, 7.513570147107057236e-03, 7.526682737859557125e-03, 7.539782401080092830e-03, 7.552869116195156177e-03, 7.565942862652840634e-03, 7.579003619923642757e-03, 7.592051367500035446e-03, 7.605086084897055149e-03, 7.618107751651681699e-03, 7.631116347323298882e-03, 7.644111851493398668e-03, 7.657094243766347091e-03, 7.670063503768280964e-03, 7.683019611148028151e-03, 7.695962545576712915e-03, 7.708892286748296289e-03, 7.721808814378856162e-03, 7.734712108207034836e-03, 7.747602147994293170e-03, 7.760478913524455208e-03, 7.773342384604063800e-03, 7.786192541062129067e-03, 7.799029362750857855e-03, 7.811852829544678814e-03, 7.824662921340961447e-03, 7.837459618059781918e-03, 7.850242899644227501e-03, 7.863012746060044425e-03, 7.875769137295911965e-03, 7.888512053363319274e-03, 7.901241474297042433e-03, 7.913957380154486992e-03, 7.926659751016171956e-03, 7.939348566985564987e-03, 7.952023808189438020e-03, 7.964685454777433588e-03, 7.977333486922262573e-03, 7.989967884820241978e-03, 8.002588628690380720e-03, 8.015195698775123834e-03, 8.027789075340069705e-03, 8.040368738674327428e-03, 8.052934669090065778e-03, 8.065486846922920866e-03, 8.078025252531720324e-03, 8.090549866299227497e-03, 8.103060668630973976e-03, 8.115557639956310840e-03, 8.128040760727945485e-03, 8.140510011422429082e-03, 8.152965372539518196e-03, 8.165406824602605002e-03, 8.177834348158930650e-03, 8.190247923779153325e-03, 8.202647532057669166e-03, 8.215033153612475228e-03, 8.227404769085707240e-03, 8.239762359142881534e-03, 8.252105904473391179e-03, 8.264435385790493832e-03, 8.276750783831382866e-03, 8.289052079357036446e-03, 8.301339253152404882e-03, 8.313612286026172971e-03, 8.325871158811554498e-03, 8.338115852365230590e-03, 8.350346347568123398e-03, 8.362562625325167115e-03, 8.374764666565552573e-03, 8.386952452242425401e-03, 8.399125963333024802e-03, 8.411285180839174480e-03, 8.423430085786512422e-03, 8.435560659225021726e-03, 8.447676882228976822e-03, 8.459778735897073576e-03, 8.471866201352200310e-03, 8.483939259741645963e-03, 8.495997892237018567e-03, 8.508042080034595653e-03, 8.520071804354850675e-03, 8.532087046442841591e-03, 8.544087787567964526e-03, 8.556074009024628585e-03, 8.568045692131331242e-03, 8.580002818231326212e-03, 8.591945368692474258e-03, 8.603873324907409734e-03, 8.615786668293322001e-03, 8.627685380291974515e-03, 8.639569442370355346e-03, 8.651438836019762976e-03, 8.663293542756439480e-03, 8.675133544121414395e-03, 8.686958821680735437e-03, 8.698769357025163199e-03, 8.710565131770427877e-03, 8.722346127557073156e-03, 8.734112326051007846e-03, 8.745863708942723524e-03, 8.757600257947917299e-03, 8.769321954807238542e-03, 8.781028781286618484e-03, 8.792720719176916333e-03, 8.804397750294189889e-03, 8.816059856479553300e-03, 8.827707019599671454e-03, 8.839339221546078235e-03, 8.850956444235624082e-03, 8.862558669610573134e-03, 8.874145879638395060e-03, 8.885718056311900370e-03, 8.897275181649245621e-03, 8.908817237694080862e-03, 8.920344206515407395e-03, 8.931856070207664505e-03, 8.943352810890627114e-03, 8.954834410709983442e-03, 8.966300851836596017e-03, 8.977752116466935356e-03, 8.989188186823093840e-03, 9.000609045152896739e-03, 9.012014673729602104e-03, 9.023405054852147097e-03, 9.034780170845494937e-03, 9.046140004059973969e-03, 9.057484536871742570e-03, 9.068813751682744048e-03, 9.080127630920857562e-03, 9.091426157039632708e-03, 9.102709312518541054e-03, 9.113977079862774916e-03, 9.125229441603861444e-03, 9.136466380298894144e-03, 9.147687878531030742e-03, 9.158893918909342263e-03, 9.170084484069161712e-03, 9.181259556671669472e-03, 9.192419119404089331e-03, 9.203563154979806440e-03, 9.214691646138492218e-03, 9.225804575645821584e-03, 9.236901926293419191e-03, 9.247983680899629633e-03, 9.259049822308627539e-03, 9.270100333391007377e-03, 9.281135197043495488e-03, 9.292154396189430607e-03, 9.303157913778198340e-03, 9.314145732785690870e-03, 9.325117836214053685e-03, 9.336074207092126195e-03, 9.347014828474969894e-03, 9.357939683444168461e-03, 9.368848755107678575e-03, 9.379742026600249721e-03, 9.390619481082962752e-03, 9.401481101743557750e-03, 9.412326871796208513e-03, 9.423156774482100220e-03, 9.433970793068693905e-03, 9.444768910850215651e-03, 9.455551111147750265e-03, 9.466317377308932496e-03, 9.477067692708221122e-03, 9.487802040746730683e-03, 9.498520404852715468e-03, 9.509222768480924196e-03, 9.519909115113090944e-03, 9.530579428257740862e-03, 9.541233691450523233e-03, 9.551871888253772591e-03, 9.562494002256902506e-03, 9.573100017076176596e-03, 9.583689916355194252e-03, 9.594263683764345935e-03, 9.604821303000922461e-03, 9.615362757789479298e-03, 9.625888031881841764e-03, 9.636397109056770230e-03, 9.646889973120058998e-03, 9.657366607905009878e-03, 9.667826997271852796e-03, 9.678271125108215897e-03, 9.688698975328733504e-03, 9.699110531875795513e-03, 9.709505778718657484e-03, 9.719884699854037385e-03, 9.730247279306011507e-03, 9.740593501126111609e-03, 9.750923349393173997e-03, 9.761236808213495653e-03, 9.771533861720681571e-03, 9.781814494076229369e-03, 9.792078689468707020e-03, 9.802326432114328789e-03, 9.812557706256977777e-03, 9.822772496167976944e-03, 9.832970786146279923e-03, 9.843152560518372146e-03, 9.853317803638702785e-03, 9.863466499889042907e-03, 9.873598633678965994e-03, 9.883714189445745590e-03, 9.893813151654556534e-03, 9.903895504798089847e-03, 9.913961233396972536e-03, 9.924010321999481368e-03, 9.934042755182179510e-03, 9.944058517548860082e-03, 9.954057593731625159e-03, 9.964039968390219631e-03, 9.974005626212645303e-03, 9.983954551914586695e-03, 9.993886730239719823e-03, 1.000380214595989609e-02, 1.001370078387476409e-02, 1.002358262881219118e-02, 1.003344766562789050e-02, 1.004329587920606282e-02, 1.005312725445864017e-02, 1.006294177632584448e-02, 1.007273942977599500e-02, 1.008252019980574593e-02, 1.009228407143977595e-02, 1.010203102973110910e-02, 1.011176105976082686e-02, 1.012147414663865097e-02, 1.013117027550231031e-02, 1.014084943151789299e-02, 1.015051159987982038e-02, 1.016015676581101188e-02, 1.016978491456266807e-02, 1.017939603141423607e-02, 1.018899010167403744e-02, 1.019856711067843730e-02, 1.020812704379242715e-02, 1.021766988640942370e-02, 1.022719562395155678e-02, 1.023670424186925998e-02, 1.024619572564167656e-02, 1.025567006077638017e-02, 1.026512723280995076e-02, 1.027456722730706387e-02, 1.028399002986138226e-02, 1.029339562609504592e-02, 1.030278400165919941e-02, 1.031215514223346105e-02, 1.032150903352610158e-02, 1.033084566127444315e-02, 1.034016501124437708e-02, 1.034946706923065701e-02, 1.035875182105674801e-02, 1.036801925257527755e-02, 1.037726934966743710e-02, 1.038650209824341052e-02, 1.039571748424223709e-02, 1.040491549363206127e-02, 1.041409611240979617e-02, 1.042325932660136990e-02, 1.043240512226168044e-02, 1.044153348547487321e-02, 1.045064440235385535e-02, 1.045973785904066866e-02, 1.046881384170643588e-02, 1.047787233655148205e-02, 1.048691332980512467e-02, 1.049593680772575865e-02, 1.050494275660127097e-02, 1.051393116274840743e-02, 1.052290201251320119e-02, 1.053185529227093457e-02, 1.054079098842619112e-02, 1.054970908741272896e-02, 1.055860957569364211e-02, 1.056749243976121307e-02, 1.057635766613737767e-02, 1.058520524137300176e-02, 1.059403515204862534e-02, 1.060284738477388321e-02, 1.061164192618823526e-02, 1.062041876296021883e-02, 1.062917788178796737e-02, 1.063791926939897971e-02, 1.064664291255041847e-02, 1.065534879802878913e-02, 1.066403691265007878e-02, 1.067270724326014816e-02, 1.068135977673408642e-02, 1.068999449997671755e-02, 1.069861139992235761e-02, 1.070721046353514949e-02, 1.071579167780871596e-02, 1.072435502976641988e-02, 1.073290050646117516e-02, 1.074142809497586649e-02, 1.074993778242291573e-02, 1.075842955594447613e-02, 1.076690340271247923e-02, 1.077535930992873196e-02, 1.078379726482478658e-02, 1.079221725466196317e-02, 1.080061926673134970e-02, 1.080900328835422523e-02, 1.081736930688141987e-02, 1.082571730969373279e-02, 1.083404728420198082e-02, 1.084235921784681457e-02, 1.085065309809887281e-02, 1.085892891245868012e-02, 1.086718664845694009e-02, 1.087542629365422127e-02, 1.088364783564114806e-02, 1.089185126203830178e-02, 1.090003656049656593e-02, 1.090820371869674101e-02, 1.091635272434968509e-02, 1.092448356519641790e-02, 1.093259622900822139e-02, 1.094069070358636570e-02, 1.094876697676229471e-02, 1.095682503639787246e-02, 1.096486487038488347e-02, 1.097288646664552197e-02, 1.098088981313210047e-02, 1.098887489782737932e-02, 1.099684170874419380e-02, 1.100479023392581489e-02, 1.101272046144566655e-02, 1.102063237940787734e-02, 1.102852597594652928e-02, 1.103640123922624942e-02, 1.104425815744199645e-02, 1.105209671881925149e-02, 1.105991691161378743e-02, 1.106771872411187532e-02, 1.107550214463012654e-02, 1.108326716151596461e-02, 1.109101376314695735e-02, 1.109874193793124707e-02, 1.110645167430768937e-02, 1.111414296074545241e-02, 1.112181578574442456e-02, 1.112947013783492124e-02, 1.113710600557809779e-02, 1.114472337756548803e-02, 1.115232224241931129e-02, 1.115990258879241866e-02, 1.116746440536854103e-02, 1.117500768086178951e-02, 1.118253240401710473e-02, 1.119003856361010588e-02, 1.119752614844721911e-02, 1.120499514736554222e-02, 1.121244554923296090e-02, 1.121987734294801163e-02, 1.122729051744037615e-02, 1.123468506167017190e-02, 1.124206096462845514e-02, 1.124941821533730416e-02, 1.125675680284939952e-02, 1.126407671624846465e-02, 1.127137794464895364e-02, 1.127866047719651779e-02, 1.128592430306746101e-02, 1.129316941146911099e-02, 1.130039579163973767e-02, 1.130760343284865736e-02, 1.131479232439611647e-02, 1.132196245561333144e-02, 1.132911381586249391e-02, 1.133624639453711426e-02, 1.134336018106147335e-02, 1.135045516489092791e-02, 1.135753133551190876e-02, 1.136458868244221744e-02, 1.137162719523046248e-02, 1.137864686345644444e-02, 1.138564767673124270e-02, 1.139262962469689625e-02, 1.139959269702676796e-02, 1.140653688342525146e-02, 1.141346217362822386e-02, 1.142036855740248026e-02, 1.142725602454622638e-02, 1.143412456488876287e-02, 1.144097416829088949e-02, 1.144780482464446102e-02, 1.145461652387269429e-02, 1.146140925593008841e-02, 1.146818301080261560e-02, 1.147493777850740193e-02, 1.148167354909295813e-02, 1.148839031263925239e-02, 1.149508805925753864e-02, 1.150176677909051266e-02, 1.150842646231213864e-02, 1.151506709912812100e-02, 1.152168867977529723e-02, 1.152829119452206813e-02, 1.153487463366826421e-02, 1.154143898754531397e-02, 1.154798424651595073e-02, 1.155451040097454744e-02, 1.156101744134691370e-02, 1.156750535809055944e-02, 1.157397414169436534e-02, 1.158042378267880486e-02, 1.158685427159591129e-02, 1.159326559902944774e-02, 1.159965775559466429e-02, 1.160603073193834309e-02, 1.161238451873916958e-02, 1.161871910670716351e-02, 1.162503448658420285e-02, 1.163133064914368200e-02, 1.163760758519089347e-02, 1.164386528556264795e-02, 1.165010374112752066e-02, 1.165632294278576113e-02, 1.166252288146945801e-02, 1.166870354814241763e-02, 1.167486493380008941e-02, 1.168100702946981047e-02, 1.168712982621073967e-02, 1.169323331511377788e-02, 1.169931748730160259e-02, 1.170538233392877034e-02, 1.171142784618166462e-02, 1.171745401527852018e-02, 1.172346083246938141e-02, 1.172944828903637639e-02, 1.173541637629319304e-02, 1.174136508558570879e-02, 1.174729440829141817e-02, 1.175320433582019430e-02, 1.175909485961337646e-02, 1.176496597114456803e-02, 1.177081766191910919e-02, 1.177664992347449840e-02, 1.178246274738014264e-02, 1.178825612523741635e-02, 1.179403004867974995e-02, 1.179978450937264195e-02, 1.180551949901346639e-02, 1.181123500933180075e-02, 1.181693103208920556e-02, 1.182260755907941704e-02, 1.182826458212801225e-02, 1.183390209309290175e-02, 1.183952008386402951e-02, 1.184511854636335383e-02, 1.185069747254512314e-02, 1.185625685439549264e-02, 1.186179668393312625e-02, 1.186731695320844895e-02, 1.187281765430439791e-02, 1.187829877933581184e-02, 1.188376032044988553e-02, 1.188920226982605709e-02, 1.189462461967577718e-02, 1.190002736224292194e-02, 1.190541048980353449e-02, 1.191077399466596541e-02, 1.191611786917062821e-02, 1.192144210569042254e-02, 1.192674669663048095e-02, 1.193203163442813942e-02, 1.193729691155307089e-02, 1.194254252050733212e-02, 1.194776845382529082e-02, 1.195297470407355282e-02, 1.195816126385099328e-02, 1.196332812578923196e-02, 1.196847528255176249e-02, 1.197360272683485431e-02, 1.197871045136681897e-02, 1.198379844890862245e-02, 1.198886671225357463e-02, 1.199391523422726515e-02, 1.199894400768786347e-02, 1.200395302552591768e-02, 1.200894228066446204e-02, 1.201391176605883654e-02, 1.201886147469702695e-02, 1.202379139959941848e-02, 1.202870153381882523e-02, 1.203359187044058566e-02, 1.203846240258263714e-02, 1.204331312339535290e-02, 1.204814402606150560e-02, 1.205295510379658305e-02, 1.205774634984856791e-02, 1.206251775749791338e-02, 1.206726932005771150e-02, 1.207200103087348667e-02, 1.207671288332362244e-02, 1.208140487081874742e-02, 1.208607698680235626e-02, 1.209072922475032570e-02, 1.209536157817127366e-02, 1.209997404060649678e-02, 1.210456660562968939e-02, 1.210913926684748822e-02, 1.211369201789889993e-02, 1.211822485245578687e-02, 1.212273776422249059e-02, 1.212723074693616496e-02, 1.213170379436667376e-02, 1.213615690031638258e-02, 1.214059005862053696e-02, 1.214500326314701950e-02, 1.214939650779635512e-02, 1.215376978650197122e-02, 1.215812309322976403e-02, 1.216245642197867453e-02, 1.216676976678008476e-02, 1.217106312169840589e-02, 1.217533648083062893e-02, 1.217958983830651036e-02, 1.218382318828871262e-02, 1.218803652497248494e-02, 1.219222984258618372e-02, 1.219640313539059606e-02, 1.220055639767962663e-02, 1.220468962377974434e-02, 1.220880280805042122e-02, 1.221289594488388780e-02, 1.221696902870518867e-02, 1.222102205397225007e-02, 1.222505501517585393e-02, 1.222906790683966384e-02, 1.223306072352010714e-02, 1.223703345980656741e-02, 1.224098611032135332e-02, 1.224491866971948867e-02, 1.224883113268904374e-02, 1.225272349395098610e-02, 1.225659574825915463e-02, 1.226044789040029413e-02, 1.226427991519393225e-02, 1.226809181749288595e-02, 1.227188359218251215e-02, 1.227565523418144150e-02, 1.227940673844093826e-02, 1.228313809994543461e-02, 1.228684931371235023e-02, 1.229054037479184423e-02, 1.229421127826725753e-02, 1.229786201925487342e-02, 1.230149259290388118e-02, 1.230510299439651831e-02, 1.230869321894801152e-02, 1.231226326180658373e-02, 1.231581311825349564e-02, 1.231934278360294864e-02, 1.232285225320225129e-02, 1.232634152243173783e-02, 1.232981058670466756e-02, 1.233325944146746768e-02, 1.233668808219951819e-02, 1.234009650441327335e-02, 1.234348470365432236e-02, 1.234685267550109621e-02, 1.235020041556541583e-02, 1.235352791949189885e-02, 1.235683518295837592e-02, 1.236012220167561487e-02, 1.236338897138769370e-02, 1.236663548787165362e-02, 1.236986174693759447e-02, 1.237306774442875623e-02, 1.237625347622158672e-02, 1.237941893822543625e-02, 1.238256412638296007e-02, 1.238568903666982871e-02, 1.238879366509499508e-02, 1.239187800770025910e-02, 1.239494206056078983e-02, 1.239798581978485484e-02, 1.240100928151381329e-02, 1.240401244192222696e-02, 1.240699529721770410e-02, 1.240995784364119607e-02, 1.241290007746664870e-02, 1.241582199500131274e-02, 1.241872359258544382e-02, 1.242160486659259558e-02, 1.242446581342950170e-02, 1.242730642953595276e-02, 1.243012671138516052e-02, 1.243292665548331906e-02, 1.243570625836991177e-02, 1.243846551661753966e-02, 1.244120442683212258e-02, 1.244392298565272920e-02, 1.244662118975160131e-02, 1.244929903583424577e-02, 1.245195652063937550e-02, 1.245459364093897542e-02, 1.245721039353810990e-02, 1.245980677527519509e-02, 1.246238278302191915e-02, 1.246493841368302019e-02, 1.246747366419665229e-02, 1.246998853153409408e-02, 1.247248301269995863e-02, 1.247495710473210673e-02, 1.247741080470151157e-02, 1.247984410971259700e-02, 1.248225701690284031e-02, 1.248464952344316946e-02, 1.248702162653763000e-02, 1.248937332342361754e-02, 1.249170461137174594e-02, 1.249401548768594092e-02, 1.249630594970335684e-02, 1.249857599479444782e-02, 1.250082562036299375e-02, 1.250305482384591466e-02, 1.250526360271352229e-02, 1.250745195446946630e-02, 1.250961987665054516e-02, 1.251176736682692130e-02, 1.251389442260199790e-02, 1.251600104161262710e-02, 1.251808722152871617e-02, 1.252015296005367685e-02, 1.252219825492413910e-02, 1.252422310390998057e-02, 1.252622750481450706e-02, 1.252821145547412807e-02, 1.253017495375888940e-02, 1.253211799757175671e-02, 1.253404058484934580e-02, 1.253594271356131724e-02, 1.253782438171082911e-02, 1.253968558733430279e-02, 1.254152632850140045e-02, 1.254334660331517942e-02, 1.254514640991206270e-02, 1.254692574646164467e-02, 1.254868461116697038e-02, 1.255042300226429618e-02, 1.255214091802339671e-02, 1.255383835674713823e-02, 1.255551531677182725e-02, 1.255717179646715850e-02, 1.255880779423596688e-02, 1.256042330851463856e-02, 1.256201833777268601e-02, 1.256359288051314693e-02, 1.256514693527221831e-02, 1.256668050061951133e-02, 1.256819357515793871e-02, 1.256968615752379614e-02, 1.257115824638667563e-02, 1.257260984044945851e-02, 1.257404093844846291e-02, 1.257545153915323212e-02, 1.257684164136671501e-02, 1.257821124392517059e-02, 1.257956034569817846e-02, 1.258088894558870817e-02, 1.258219704253296309e-02, 1.258348463550055217e-02, 1.258475172349441534e-02, 1.258599830555085300e-02, 1.258722438073939069e-02, 1.258842994816298556e-02, 1.258961500695792400e-02, 1.259077955629377653e-02, 1.259192359537344985e-02, 1.259304712343323022e-02, 1.259415013974266896e-02, 1.259523264360473335e-02, 1.259629463435565574e-02, 1.259733611136499773e-02, 1.259835707403567789e-02, 1.259935752180395101e-02, 1.260033745413930047e-02, 1.260129687054467942e-02, 1.260223577055630956e-02, 1.260315415374364638e-02, 1.260405201970959781e-02, 1.260492936809035243e-02, 1.260578619855538471e-02, 1.260662251080754519e-02, 1.260743830458291824e-02, 1.260823357965099208e-02, 1.260900833581449741e-02, 1.260976257290956359e-02, 1.261049629080552778e-02, 1.261120948940512576e-02, 1.261190216864437920e-02, 1.261257432849257828e-02, 1.261322596895234592e-02, 1.261385709005962211e-02, 1.261446769188365007e-02, 1.261505777452695022e-02, 1.261562733812531673e-02, 1.261617638284792502e-02, 1.261670490889716528e-02, 1.261721291650873614e-02, 1.261770040595164288e-02, 1.261816737752821140e-02, 1.261861383157395454e-02, 1.261903976845775606e-02, 1.261944518858174394e-02, 1.261983009238135806e-02, 1.262019448032525477e-02, 1.262053835291538847e-02, 1.262086171068703411e-02, 1.262116455420867790e-02, 1.262144688408206421e-02, 1.262170870094221804e-02, 1.262195000545748326e-02, 1.262217079832935428e-02, 1.262237108029263567e-02, 1.262255085211539014e-02, 1.262271011459890728e-02, 1.262284886857773132e-02, 1.262296711491967156e-02, 1.262306485452569307e-02, 1.262314208833010404e-02, 1.262319881730040831e-02, 1.262323504243726378e-02, 1.262325076477465412e-02, 1.262324598537974997e-02, 1.262322070535292808e-02, 1.262317492582778859e-02, 1.262310864797114643e-02, 1.262302187298301910e-02, 1.262291460209658163e-02, 1.262278683657831919e-02, 1.262263857772786407e-02, 1.262246982687798350e-02, 1.262228058539466811e-02, 1.262207085467711640e-02, 1.262184063615774156e-02, 1.262158993130199809e-02, 1.262131874160866800e-02, 1.262102706860959885e-02, 1.262071491386983907e-02, 1.262038227898759982e-02, 1.262002916559424107e-02, 1.261965557535424734e-02, 1.261926150996533699e-02, 1.261884697115821241e-02, 1.261841196069690522e-02, 1.261795648037842242e-02, 1.261748053203297359e-02, 1.261698411752388942e-02, 1.261646723874760949e-02, 1.261592989763366673e-02, 1.261537209614470821e-02, 1.261479383627651593e-02, 1.261419512005794441e-02, 1.261357594955097791e-02, 1.261293632685060902e-02, 1.261227625408502424e-02, 1.261159573341534730e-02, 1.261089476703591145e-02, 1.261017335717403223e-02, 1.260943150609015496e-02, 1.260866921607774020e-02, 1.260788648946325509e-02, 1.260708332860626703e-02, 1.260625973589942460e-02, 1.260541571376833092e-02, 1.260455126467167376e-02, 1.260366639110107982e-02, 1.260276109558132115e-02, 1.260183538067005324e-02, 1.260088924895805436e-02, 1.259992270306903132e-02, 1.259893574565963507e-02, 1.259792837941966018e-02, 1.259690060707170656e-02, 1.259585243137148827e-02, 1.259478385510760107e-02, 1.259369488110164380e-02, 1.259258551220816466e-02, 1.259145575131468200e-02, 1.259030560134156117e-02, 1.258913506524225907e-02, 1.258794414600305014e-02, 1.258673284664313906e-02, 1.258550117021470932e-02, 1.258424911980277755e-02, 1.258297669852533399e-02, 1.258168390953326617e-02, 1.258037075601024790e-02, 1.257903724117298040e-02, 1.257768336827092513e-02, 1.257630914058649116e-02, 1.257491456143488250e-02, 1.257349963416419525e-02, 1.257206436215541415e-02, 1.257060874882228590e-02, 1.256913279761141290e-02, 1.256763651200225665e-02, 1.256611989550710136e-02, 1.256458295167097068e-02, 1.256302568407172658e-02, 1.256144809632013873e-02, 1.255985019205953235e-02, 1.255823197496627394e-02, 1.255659344874923700e-02, 1.255493461715031026e-02, 1.255325548394402128e-02, 1.255155605293756423e-02, 1.254983632797107909e-02, 1.254809631291723890e-02, 1.254633601168160181e-02, 1.254455542820230238e-02, 1.254275456645028049e-02, 1.254093343042915823e-02, 1.253909202417521906e-02, 1.253723035175751885e-02, 1.253534841727761348e-02, 1.253344622486998391e-02, 1.253152377870148451e-02, 1.252958108297184958e-02, 1.252761814191334123e-02, 1.252563495979087428e-02, 1.252363154090203358e-02, 1.252160788957690576e-02, 1.251956401017837069e-02, 1.251749990710172324e-02, 1.251541558477494570e-02, 1.251331104765855337e-02, 1.251118630024574373e-02, 1.250904134706214664e-02, 1.250687619266595448e-02, 1.250469084164801577e-02, 1.250248529863158715e-02, 1.250025956827253981e-02, 1.249801365525923628e-02, 1.249574756431254610e-02, 1.249346130018577812e-02, 1.249115486766484533e-02, 1.248882827156806534e-02, 1.248648151674622633e-02, 1.248411460808260265e-02, 1.248172755049295653e-02, 1.247932034892532994e-02, 1.247689300836043319e-02, 1.247444553381117475e-02, 1.247197793032305164e-02, 1.246949020297384407e-02, 1.246698235687376637e-02, 1.246445439716545311e-02, 1.246190632902380302e-02, 1.245933815765622871e-02, 1.245674988830235488e-02, 1.245414152623423518e-02, 1.245151307675618040e-02, 1.244886454520491466e-02, 1.244619593694939672e-02, 1.244350725739089107e-02, 1.244079851196304778e-02, 1.243806970613163705e-02, 1.243532084539481462e-02, 1.243255193528291190e-02, 1.242976298135867186e-02, 1.242695398921685179e-02, 1.242412496448453037e-02, 1.242127591282110241e-02, 1.241840683991794758e-02, 1.241551775149894038e-02, 1.241260865331979268e-02, 1.240967955116861580e-02, 1.240673045086562211e-02, 1.240376135826322217e-02, 1.240077227924584607e-02, 1.239776321973006835e-02, 1.239473418566475194e-02, 1.239168518303067519e-02, 1.238861621784071755e-02, 1.238552729614001910e-02, 1.238241842400553475e-02, 1.237928960754650781e-02, 1.237614085290398604e-02, 1.237297216625131598e-02, 1.236978355379371279e-02, 1.236657502176837647e-02, 1.236334657644460114e-02, 1.236009822412359981e-02, 1.235682997113865013e-02, 1.235354182385481336e-02, 1.235023378866930734e-02, 1.234690587201114388e-02, 1.234355808034137865e-02, 1.234019042015288212e-02, 1.233680289797038990e-02, 1.233339552035076815e-02, 1.232996829388240644e-02, 1.232652122518586822e-02, 1.232305432091341212e-02, 1.231956758774917574e-02, 1.231606103240913581e-02, 1.231253466164103361e-02, 1.230898848222449285e-02, 1.230542250097085497e-02, 1.230183672472328661e-02, 1.229823116035668601e-02, 1.229460581477772110e-02, 1.229096069492485732e-02, 1.228729580776809389e-02, 1.228361116030937499e-02, 1.227990675958222019e-02, 1.227618261265180609e-02, 1.227243872661510325e-02, 1.226867510860061260e-02, 1.226489176576865681e-02, 1.226108870531092063e-02, 1.225726593445098864e-02, 1.225342346044383524e-02, 1.224956129057621496e-02, 1.224567943216635195e-02, 1.224177789256393999e-02, 1.223785667915054491e-02, 1.223391579933892810e-02, 1.222995526057353219e-02, 1.222597507033029197e-02, 1.222197523611669515e-02, 1.221795576547166258e-02, 1.221391666596545120e-02, 1.220985794520010152e-02, 1.220577961080882186e-02, 1.220168167045632135e-02, 1.219756413183865906e-02, 1.219342700268345042e-02, 1.218927029074971628e-02, 1.218509400382752732e-02, 1.218089814973870831e-02, 1.217668273633609743e-02, 1.217244777150413085e-02, 1.216819326315845586e-02, 1.216391921924582856e-02, 1.215962564774467590e-02, 1.215531255666438964e-02, 1.215097995404569066e-02, 1.214662784796055779e-02, 1.214225624651226083e-02, 1.213786515783519745e-02, 1.213345459009490708e-02, 1.212902455148829467e-02, 1.212457505024328898e-02, 1.212010609461898133e-02, 1.211561769290562564e-02, 1.211110985342461754e-02, 1.210658258452846497e-02, 1.210203589460063546e-02, 1.209746979205590135e-02, 1.209288428533987145e-02, 1.208827938292943681e-02, 1.208365509333217576e-02, 1.207901142508704256e-02, 1.207434838676372905e-02, 1.206966598696313994e-02, 1.206496423431694005e-02, 1.206024313748778332e-02, 1.205550270516941684e-02, 1.205074294608631143e-02, 1.204596386899393912e-02, 1.204116548267870207e-02, 1.203634779595778512e-02, 1.203151081767926157e-02, 1.202665455672200477e-02, 1.202177902199586673e-02, 1.201688422244134684e-02, 1.201197016702973235e-02, 1.200703686476326318e-02, 1.200208432467470346e-02, 1.199711255582786192e-02, 1.199212156731684943e-02, 1.198711136826694640e-02, 1.198208196783373362e-02, 1.197703337520379316e-02, 1.197196559959423472e-02, 1.196687865025263670e-02, 1.196177253645764639e-02, 1.195664726751795477e-02, 1.195150285277333212e-02, 1.194633930159384565e-02, 1.194115662338031923e-02, 1.193595482756396910e-02, 1.193073392360653046e-02, 1.192549392100042925e-02, 1.192023482926839184e-02, 1.191495665796371561e-02, 1.190965941667006603e-02, 1.190434311500175764e-02, 1.189900776260331867e-02, 1.189365336914972524e-02, 1.188827994434646027e-02, 1.188288749792920998e-02, 1.187747603966428193e-02, 1.187204557934790766e-02, 1.186659612680699208e-02, 1.186112769189876480e-02, 1.185564028451036034e-02, 1.185013391455961608e-02, 1.184460859199429859e-02, 1.183906432679263966e-02, 1.183350112896298066e-02, 1.182791900854377604e-02, 1.182231797560383962e-02, 1.181669804024208098e-02, 1.181105921258744119e-02, 1.180540150279905595e-02, 1.179972492106629370e-02, 1.179402947760845380e-02, 1.178831518267488103e-02, 1.178258204654519803e-02, 1.177683007952876233e-02, 1.177105929196529260e-02, 1.176526969422406720e-02, 1.175946129670475682e-02, 1.175363410983678789e-02, 1.174778814407946917e-02, 1.174192340992226240e-02, 1.173603991788428266e-02, 1.173013767851484659e-02, 1.172421670239265530e-02, 1.171827700012674327e-02, 1.171231858235567171e-02, 1.170634145974802989e-02, 1.170034564300202924e-02, 1.169433114284561433e-02, 1.168829797003677513e-02, 1.168224613536291909e-02, 1.167617564964126484e-02, 1.167008652371886654e-02, 1.166397876847229294e-02, 1.165785239480781298e-02, 1.165170741366132121e-02, 1.164554383599843840e-02, 1.163936167281428430e-02, 1.163316093513351752e-02, 1.162694163401054200e-02, 1.162070378052902815e-02, 1.161444738580258082e-02, 1.160817246097375043e-02, 1.160187901721509637e-02, 1.159556706572827806e-02, 1.158923661774467935e-02, 1.158288768452490208e-02, 1.157652027735898981e-02, 1.157013440756646944e-02, 1.156373008649615869e-02, 1.155730732552621119e-02, 1.155086613606407832e-02, 1.154440652954663929e-02, 1.153792851743994964e-02, 1.153143211123929847e-02, 1.152491732246939751e-02, 1.151838416268401860e-02, 1.151183264346614804e-02, 1.150526277642794151e-02, 1.149867457321095479e-02, 1.149206804548555221e-02, 1.148544320495132470e-02, 1.147880006333716792e-02, 1.147213863240074960e-02, 1.146545892392905261e-02, 1.145876094973796548e-02, 1.145204472167234665e-02, 1.144531025160624993e-02, 1.143855755144254291e-02, 1.143178663311306825e-02, 1.142499750857857953e-02, 1.141819018982888172e-02, 1.141136468888262999e-02, 1.140452101778711286e-02, 1.139765918861888189e-02, 1.139077921348302831e-02, 1.138388110451348662e-02, 1.137696487387297901e-02, 1.137003053375320628e-02, 1.136307809637432387e-02, 1.135610757398528882e-02, 1.134911897886395002e-02, 1.134211232331652601e-02, 1.133508761967829542e-02, 1.132804488031264115e-02, 1.132098411761210503e-02, 1.131390534399739391e-02, 1.130680857191818794e-02, 1.129969381385236699e-02, 1.129256108230646330e-02, 1.128541038981570842e-02, 1.127824174894337741e-02, 1.127105517228171004e-02, 1.126385067245101040e-02, 1.125662826210025065e-02, 1.124938795390669974e-02, 1.124212976057585751e-02, 1.123485369484193870e-02, 1.122755976946715993e-02, 1.122024799724212485e-02, 1.121291839098587269e-02, 1.120557096354548622e-02, 1.119820572779661565e-02, 1.119082269664265113e-02, 1.118342188301560923e-02, 1.117600329987551711e-02, 1.116856696021040554e-02, 1.116111287703686929e-02, 1.115364106339904529e-02, 1.114615153236976804e-02, 1.113864429704926849e-02, 1.113111937056639709e-02, 1.112357676607761935e-02, 1.111601649676775133e-02, 1.110843857584926930e-02, 1.110084301656265315e-02, 1.109322983217654601e-02, 1.108559903598723903e-02, 1.107795064131896975e-02, 1.107028466152375559e-02, 1.106260110998173556e-02, 1.105490000010058739e-02, 1.104718134531571146e-02, 1.103944515909061758e-02, 1.103169145491625196e-02, 1.102392024631138577e-02, 1.101613154682238443e-02, 1.100832537002343486e-02, 1.100050172951650036e-02, 1.099266063893060245e-02, 1.098480211192305427e-02, 1.097692616217820459e-02, 1.096903280340832780e-02, 1.096112204935300975e-02, 1.095319391377931953e-02, 1.094524841048206097e-02, 1.093728555328322451e-02, 1.092930535603235838e-02, 1.092130783260627895e-02, 1.091329299690949224e-02, 1.090526086287359545e-02, 1.089721144445753541e-02, 1.088914475564776822e-02, 1.088106081045785330e-02, 1.087295962292866673e-02, 1.086484120712824519e-02, 1.085670557715212592e-02, 1.084855274712272742e-02, 1.084038273118964613e-02, 1.083219554352992872e-02, 1.082399119834734705e-02, 1.081576970987323943e-02, 1.080753109236535017e-02, 1.079927536010912188e-02, 1.079100252741656621e-02, 1.078271260862707220e-02, 1.077440561810666039e-02, 1.076608157024839911e-02, 1.075774047947245307e-02, 1.074938236022569826e-02, 1.074100722698186593e-02, 1.073261509424153388e-02, 1.072420597653237807e-02, 1.071577988840849774e-02, 1.070733684445091156e-02, 1.069887685926755420e-02, 1.069039994749282525e-02, 1.068190612378780088e-02, 1.067339540284058252e-02, 1.066486779936550236e-02, 1.065632332810394559e-02, 1.064776200382328182e-02, 1.063918384131810543e-02, 1.063058885540905593e-02, 1.062197706094369226e-02, 1.061334847279579024e-02, 1.060470310586558024e-02, 1.059604097508013570e-02, 1.058736209539222310e-02, 1.057866648178172955e-02, 1.056995414925442772e-02, 1.056122511284277900e-02, 1.055247938760526909e-02, 1.054371698862670466e-02, 1.053493793101844579e-02, 1.052614222991776934e-02, 1.051732990048825922e-02, 1.050850095791964686e-02, 1.049965541742801933e-02, 1.049079329425535445e-02, 1.048191460366978793e-02, 1.047301936096571920e-02, 1.046410758146329618e-02, 1.045517928050914216e-02, 1.044623447347520391e-02, 1.043727317576002844e-02, 1.042829540278804312e-02, 1.041930117000905952e-02, 1.041029049289948598e-02, 1.040126338696103873e-02, 1.039221986772175324e-02, 1.038315995073510120e-02, 1.037408365158043640e-02, 1.036499098586310917e-02, 1.035588196921391653e-02, 1.034675661728948377e-02, 1.033761494577198695e-02, 1.032845697036961947e-02, 1.031928270681585491e-02, 1.031009217086975051e-02, 1.030088537831628723e-02, 1.029166234496559085e-02, 1.028242308665378718e-02, 1.027316761924177563e-02, 1.026389595861667593e-02, 1.025460812069063470e-02, 1.024530412140116364e-02, 1.023598397671152474e-02, 1.022664770260990792e-02, 1.021729531511034357e-02, 1.020792683025141707e-02, 1.019854226409778152e-02, 1.018914163273876641e-02, 1.017972495228937173e-02, 1.017029223888941264e-02, 1.016084350870399139e-02, 1.015137877792358055e-02, 1.014189806276341414e-02, 1.013240137946390222e-02, 1.012288874429076793e-02, 1.011336017353447851e-02, 1.010381568351058010e-02, 1.009425529055949997e-02, 1.008467901104692296e-02, 1.007508686136314967e-02, 1.006547885792336179e-02, 1.005585501716788586e-02, 1.004621535556151322e-02, 1.003655988959433615e-02, 1.002688863578051100e-02, 1.001720161065965467e-02, 1.000749883079559213e-02, 9.997780312777246325e-03, 9.988046073217899182e-03, 9.978296128755495195e-03, 9.968530496052858264e-03, 9.958749191797110559e-03, 9.948952232700002118e-03, 9.939139635497761666e-03, 9.929311416951313446e-03, 9.919467593845855691e-03, 9.909608182990966435e-03, 9.899733201220924442e-03, 9.889842665394126334e-03, 9.879936592393395375e-03, 9.870014999125759428e-03, 9.860077902522910651e-03, 9.850125319540424876e-03, 9.840157267158169269e-03, 9.830173762380477534e-03, 9.820174822235508069e-03, 9.810160463776045406e-03, 9.800130704078270291e-03, 9.790085560243126650e-03, 9.780025049395435141e-03, 9.769949188683933056e-03, 9.759857995281380136e-03, 9.749751486384452756e-03, 9.739629679214129032e-03, 9.729492591014911665e-03, 9.719340239055218253e-03, 9.709172640627697012e-03, 9.698989813048401049e-03, 9.688791773657376427e-03, 9.678578539818308291e-03, 9.668350128918933722e-03, 9.658106558370403369e-03, 9.647847845607531239e-03, 9.637574008089093078e-03, 9.627285063297104720e-03, 9.616981028737692921e-03, 9.606661921939717991e-03, 9.596327760456482489e-03, 9.585978561864137021e-03, 9.575614343762771374e-03, 9.565235123775592263e-03, 9.554840919549219963e-03, 9.544431748754144545e-03, 9.534007629083343302e-03, 9.523568578254005060e-03, 9.513114614005942909e-03, 9.502645754102801573e-03, 9.492162016331039120e-03, 9.481663418500365856e-03, 9.471149978443964626e-03, 9.460621714017850709e-03, 9.450078643101149367e-03, 9.439520783596428918e-03, 9.428948153428822962e-03, 9.418360770547104174e-03, 9.407758652922154283e-03, 9.397141818548747361e-03, 9.386510285443981638e-03, 9.375864071648025433e-03, 9.365203195224118884e-03, 9.354527674257958128e-03, 9.343837526858597350e-03, 9.333132771157085297e-03, 9.322413425308017851e-03, 9.311679507488134638e-03, 9.300931035897316498e-03, 9.290168028757763222e-03, 9.279390504314312740e-03, 9.268598480834748174e-03, 9.257791976609015469e-03, 9.246971009949795858e-03, 9.236135599192072179e-03, 9.225285762693725619e-03, 9.214421518834701313e-03, 9.203542886017303248e-03, 9.192649882666650493e-03, 9.181742527229804635e-03, 9.170820838176279785e-03, 9.159884833997782375e-03, 9.148934533208544218e-03, 9.137969954344770870e-03, 9.126991115964808166e-03, 9.115998036649497829e-03, 9.104990735001382979e-03, 9.093969229645549462e-03, 9.082933539228817479e-03, 9.071883682420022604e-03, 9.060819677910362732e-03, 9.049741544412685107e-03, 9.038649300661810715e-03, 9.027542965414468365e-03, 9.016422557449549693e-03, 9.005288095567446499e-03, 8.994139598590340443e-03, 8.982977085362628053e-03, 8.971800574750039489e-03, 8.960610085640143344e-03, 8.949405636942086434e-03, 8.938187247587069117e-03, 8.926954936527498746e-03, 8.915708722737388653e-03, 8.904448625212710300e-03, 8.893174662970427038e-03, 8.881886855049656374e-03, 8.870585220510103508e-03, 8.859269778433731882e-03, 8.847940547923351107e-03, 8.836597548103574534e-03, 8.825240798120023017e-03, 8.813870317139623281e-03, 8.802486124350888952e-03, 8.791088238963275237e-03, 8.779676680207499848e-03, 8.768251467335385144e-03, 8.756812619620257115e-03, 8.745360156356135270e-03, 8.733894096858166312e-03, 8.722414460462915575e-03, 8.710921266527529155e-03, 8.699414534430224832e-03, 8.687894283570446463e-03, 8.676360533368118050e-03, 8.664813303264658553e-03, 8.653252612721439724e-03, 8.641678481221538172e-03, 8.630090928268212280e-03, 8.618489973385923958e-03, 8.606875636119516379e-03, 8.595247936034503683e-03, 8.583606892717541084e-03, 8.571952525775076992e-03, 8.560284854834971507e-03, 8.548603899545035786e-03, 8.536909679574067669e-03, 8.525202214611062382e-03, 8.513481524365365191e-03, 8.501747628567209170e-03, 8.490000546966785383e-03, 8.478240299334771982e-03, 8.466466905462073991e-03, 8.454680385160225770e-03, 8.442880758260671095e-03, 8.431068044615066745e-03, 8.419242264095624234e-03, 8.407403436594230312e-03, 8.395551582023506876e-03, 8.383686720315282684e-03, 8.371808871422204909e-03, 8.359918055316986271e-03, 8.348014291991470021e-03, 8.336097601458444459e-03, 8.324168003749908215e-03, 8.312225518918324452e-03, 8.300270167035588703e-03, 8.288301968193415720e-03, 8.276320942503705494e-03, 8.264327110097719267e-03, 8.252320491126624233e-03, 8.240301105761011283e-03, 8.228268974191640939e-03, 8.216224116628480581e-03, 8.204166553301040984e-03, 8.192096304458780509e-03, 8.180013390370177023e-03, 8.167917831323862413e-03, 8.155809647626934694e-03, 8.143688859606906111e-03, 8.131555487610088104e-03, 8.119409552002155098e-03, 8.107251073168533079e-03, 8.095080071513317127e-03, 8.082896567460581133e-03, 8.070700581452623992e-03, 8.058492133951912495e-03, 8.046271245439365685e-03, 8.034037936415515391e-03, 8.021792227399609371e-03, 8.009534138929914893e-03, 7.997263691564122923e-03, 7.984980905878453009e-03, 7.972685802468104307e-03, 7.960378401947592122e-03, 7.948058724949837173e-03, 7.935726792126771012e-03, 7.923382624149006431e-03, 7.911026241706281548e-03, 7.898657665506663567e-03, 7.886276916276972054e-03, 7.873884014763018330e-03, 7.861478981728739837e-03, 7.849061837957348534e-03, 7.836632604249643003e-03, 7.824191301425914916e-03, 7.811737950324225584e-03, 7.799272571801674041e-03, 7.786795186733364016e-03, 7.774305816012758684e-03, 7.761804480552093530e-03, 7.749291201281521130e-03, 7.736765999149560445e-03, 7.724228895122901666e-03, 7.711679910186817338e-03, 7.699119065344329702e-03, 7.686546381616659110e-03, 7.673961880043440875e-03, 7.661365581682065204e-03, 7.648757507608043224e-03, 7.636137678914751981e-03, 7.623506116713960057e-03, 7.610862842134921182e-03, 7.598207876324788827e-03, 7.585541240449024739e-03, 7.572862955690304321e-03, 7.560173043249847173e-03, 7.547471524345554864e-03, 7.534758420213988513e-03, 7.522033752109191784e-03, 7.509297541302561649e-03, 7.496549809083292472e-03, 7.483790576757946671e-03, 7.471019865651117378e-03, 7.458237697104415365e-03, 7.445444092476979046e-03, 7.432639073145767654e-03, 7.419822660504690401e-03, 7.406994875965199759e-03, 7.394155740955934975e-03, 7.381305276923205184e-03, 7.368443505330185377e-03, 7.355570447657257260e-03, 7.342686125402397845e-03, 7.329790560080180241e-03, 7.316883773223002707e-03, 7.303965786379319237e-03, 7.291036621115616276e-03, 7.278096299014717024e-03, 7.265144841676933300e-03, 7.252182270719107968e-03, 7.239208607774954944e-03, 7.226223874495627322e-03, 7.213228092548111016e-03, 7.200221283617192804e-03, 7.187203469403643206e-03, 7.174174671625566969e-03, 7.161134912017307584e-03, 7.148084212329834132e-03, 7.135022594331177567e-03, 7.121950079805491364e-03, 7.108866690553449635e-03, 7.095772448392687753e-03, 7.082667375156702534e-03, 7.069551492696161954e-03, 7.056424822877077618e-03, 7.043287387582843062e-03, 7.030139208712599640e-03, 7.016980308181759544e-03, 7.003810707922383111e-03, 6.990630429882222115e-03, 6.977439496025856884e-03, 6.964237928333024893e-03, 6.951025748800578399e-03, 6.937802979440671654e-03, 6.924569642282094907e-03, 6.911325759369193675e-03, 6.898071352762220020e-03, 6.884806444537847764e-03, 6.871531056788119513e-03, 6.858245211621123195e-03, 6.844948931160553182e-03, 6.831642237546331313e-03, 6.818325152933711782e-03, 6.804997699493569099e-03, 6.791659899412913308e-03, 6.778311774893959300e-03, 6.764953348154616013e-03, 6.751584641428182848e-03, 6.738205676963938615e-03, 6.724816477026196102e-03, 6.711417063894669841e-03, 6.698007459864937542e-03, 6.684587687247367169e-03, 6.671157768368212414e-03, 6.657717725568587479e-03, 6.644267581204845244e-03, 6.630807357648989264e-03, 6.617337077287784725e-03, 6.603856762523272785e-03, 6.590366435772421032e-03, 6.576866119467757524e-03, 6.563355836056350770e-03, 6.549835608000268566e-03, 6.536305457777005605e-03, 6.522765407878485140e-03, 6.509215480811689561e-03, 6.495655699098271812e-03, 6.482086085275148672e-03, 6.468506661893567468e-03, 6.454917451519480778e-03, 6.441318476733997461e-03, 6.427709760132273298e-03, 6.414091324324844128e-03, 6.400463191935738469e-03, 6.386825385604659802e-03, 6.373177927984949136e-03, 6.359520841745140186e-03, 6.345854149567631448e-03, 6.332177874149292479e-03, 6.318492038201927070e-03, 6.304796664450582760e-03, 6.291091775635667196e-03, 6.277377394511055551e-03, 6.263653543845447078e-03, 6.249920246421244475e-03, 6.236177525034985840e-03, 6.222425402497747116e-03, 6.208663901634204479e-03, 6.194893045283048939e-03, 6.181112856297413943e-03, 6.167323357543740003e-03, 6.153524571903179821e-03, 6.139716522269637183e-03, 6.125899231551902406e-03, 6.112072722671834345e-03, 6.098237018565625875e-03, 6.084392142182735302e-03, 6.070538116486275809e-03, 6.056674964453628678e-03, 6.042802709074701628e-03, 6.028921373354025233e-03, 6.015030980308894160e-03, 6.001131552970686428e-03, 5.987223114383774872e-03, 5.973305687605946941e-03, 5.959379295708827108e-03, 5.945443961776886339e-03, 5.931499708908061393e-03, 5.917546560213384453e-03, 5.903584538817556460e-03, 5.889613667858022497e-03, 5.875633970485326547e-03, 5.861645469863655325e-03, 5.847648189169541572e-03, 5.833642151593385408e-03, 5.819627380337468077e-03, 5.805603898617955547e-03, 5.791571729663930537e-03, 5.777530896716392451e-03, 5.763481423030306951e-03, 5.749423331872604952e-03, 5.735356646523632855e-03, 5.721281390275976403e-03, 5.707197586434911707e-03, 5.693105258318804235e-03, 5.679004429258197213e-03, 5.664895122596279135e-03, 5.650777361688699880e-03, 5.636651169904002660e-03, 5.622516570622722830e-03, 5.608373587237829375e-03, 5.594222243155104815e-03, 5.580062561792066209e-03, 5.565894566579271396e-03, 5.551718280958474992e-03, 5.537533728384727398e-03, 5.523340932324637478e-03, 5.509139916256950223e-03, 5.494930703672976958e-03, 5.480713318075469513e-03, 5.466487782980000189e-03, 5.452254121913004993e-03, 5.438012358413974595e-03, 5.423762516033539191e-03, 5.409504618334799037e-03, 5.395238688892228102e-03, 5.380964751292075660e-03, 5.366682829132839866e-03, 5.352392946024239068e-03, 5.338095125587833702e-03, 5.323789391456640319e-03, 5.309475767275788176e-03, 5.295154276701450648e-03, 5.280824943401322275e-03, 5.266487791055081066e-03, 5.252142843353345067e-03, 5.237790123998137259e-03, 5.223429656703305370e-03, 5.209061465193436796e-03, 5.194685573205129296e-03, 5.180302004485144371e-03, 5.165910782792568733e-03, 5.151511931896864474e-03, 5.137105475579227358e-03, 5.122691437631492206e-03, 5.108269841856525814e-03, 5.093840712068697929e-03, 5.079404072092860364e-03, 5.064959945764955888e-03, 5.050508356931662605e-03, 5.036049329450984630e-03, 5.021582887191278904e-03, 5.007109054031643781e-03, 4.992627853862423824e-03, 4.978139310584158567e-03, 4.963643448108219156e-03, 4.949140290356410232e-03, 4.934629861261636934e-03, 4.920112184766810282e-03, 4.905587284825382345e-03, 4.891055185401700124e-03, 4.876515910469950837e-03, 4.861969484015451690e-03, 4.847415930032752084e-03, 4.832855272527675390e-03, 4.818287535516135867e-03, 4.803712743023961715e-03, 4.789130919087293201e-03, 4.774542087752295556e-03, 4.759946273075708889e-03, 4.745343499123825561e-03, 4.730733789972991522e-03, 4.716117169710012241e-03, 4.701493662431162172e-03, 4.686863292242763289e-03, 4.672226083260869363e-03, 4.657582059611813270e-03, 4.642931245431269373e-03, 4.628273664864611739e-03, 4.613609342067464050e-03, 4.598938301204413305e-03, 4.584260566450515557e-03, 4.569576161989288843e-03, 4.554885112014893725e-03, 4.540187440730244182e-03, 4.525483172348331203e-03, 4.510772331091092609e-03, 4.496054941189875365e-03, 4.481331026886022778e-03, 4.466600612429023551e-03, 4.451863722078802481e-03, 4.437120380103690837e-03, 4.422370610781848829e-03, 4.407614438400129370e-03, 4.392851887254462309e-03, 4.378082981650353173e-03, 4.363307745901864008e-03, 4.348526204332019314e-03, 4.333738381273293493e-03, 4.318944301066436446e-03, 4.304143988061849210e-03, 4.289337466617653208e-03, 4.274524761101889010e-03, 4.259705895890690541e-03, 4.244880895368930394e-03, 4.230049783930606676e-03, 4.215212585977709363e-03, 4.200369325921643644e-03, 4.185520028181212437e-03, 4.170664717184860253e-03, 4.155803417368715558e-03, 4.140936153177969016e-03, 4.126062949065725100e-03, 4.111183829493415820e-03, 4.096298818931306401e-03, 4.081407941857412812e-03, 4.066511222758146214e-03, 4.051608686127967755e-03, 4.036700356469964494e-03, 4.021786258294813773e-03, 4.006866416121327920e-03, 3.991940854476775172e-03, 3.977009597895948129e-03, 3.962072670921747489e-03, 3.947130098104831633e-03, 3.932181904004202963e-03, 3.917228113186199158e-03, 3.902268750224941168e-03, 3.887303839702814599e-03, 3.872333406209228519e-03, 3.857357474341932980e-03, 3.842376068705788232e-03, 3.827389213913271696e-03, 3.812396934584869578e-03, 3.797399255348103252e-03, 3.782396200838100426e-03, 3.767387795697276377e-03, 3.752374064575896874e-03, 3.737355032131096759e-03, 3.722330723027301048e-03, 3.707301161936698078e-03, 3.692266373538212118e-03, 3.677226382518099679e-03, 3.662181213569593030e-03, 3.647130891393543777e-03, 3.632075440697334328e-03, 3.617014886195395705e-03, 3.601949252609627349e-03, 3.586878564668192788e-03, 3.571802847106996318e-03, 3.556722124667633430e-03, 3.541636422099684982e-03, 3.526545764158680197e-03, 3.511450175607533017e-03, 3.496349681215379836e-03, 3.481244305757978056e-03, 3.466134074018409512e-03, 3.451019010785131517e-03, 3.435899140854307022e-03, 3.420774489027770225e-03, 3.405645080114465956e-03, 3.390510938929258786e-03, 3.375372090293368883e-03, 3.360228559034869871e-03, 3.345080369987604198e-03, 3.329927547991679265e-03, 3.314770117893904144e-03, 3.299608104546583077e-03, 3.284441532809006907e-03, 3.269270427545349720e-03, 3.254094813627037182e-03, 3.238914715930634510e-03, 3.223730159339360454e-03, 3.208541168741843932e-03, 3.193347769032603683e-03, 3.178149985112681437e-03, 3.162947841887716813e-03, 3.147741364270317376e-03, 3.132530577177966135e-03, 3.117315505534483909e-03, 3.102096174268835840e-03, 3.086872608315580687e-03, 3.071644832615352209e-03, 3.056412872113776266e-03, 3.041176751762151263e-03, 3.025936496517006667e-03, 3.010692131340809465e-03, 2.995443681200843540e-03, 2.980191171069718811e-03, 2.964934625925835700e-03, 2.949674070752130069e-03, 2.934409530537588056e-03, 2.919141030275147070e-03, 2.903868594963891943e-03, 2.888592249607951218e-03, 2.873312019215476694e-03, 2.858027928800794919e-03, 2.842740003382319448e-03, 2.827448267984068297e-03, 2.812152747634388914e-03, 2.796853467366467328e-03, 2.781550452218771799e-03, 2.766243727234025430e-03, 2.750933317459784699e-03, 2.735619247948125037e-03, 2.720301543756238009e-03, 2.704980229945383539e-03, 2.689655331581366961e-03, 2.674326873734987880e-03, 2.658994881480824992e-03, 2.643659379898724918e-03, 2.628320394071710555e-03, 2.612977949088345509e-03, 2.597632070040774288e-03, 2.582282782025409253e-03, 2.566930110143390321e-03, 2.551574079499329458e-03, 2.536214715202822056e-03, 2.520852042366363965e-03, 2.505486086107684262e-03, 2.490116871547669655e-03, 2.474744423811835094e-03, 2.459368768029130282e-03, 2.443989929332373353e-03, 2.428607932858733130e-03, 2.413222803748679614e-03, 2.397834567146590271e-03, 2.382443248200414795e-03, 2.367048872062267519e-03, 2.351651463887404793e-03, 2.336251048834675145e-03, 2.320847652066975082e-03, 2.305441298750229070e-03, 2.290032014053809770e-03, 2.274619823151044582e-03, 2.259204751217974878e-03, 2.243786823434817512e-03, 2.228366064983931718e-03, 2.212942501052119360e-03, 2.197516156828565811e-03, 2.182087057506308398e-03, 2.166655228281033803e-03, 2.151220694351517818e-03, 2.135783480920120173e-03, 2.120343613191692962e-03, 2.104901116374256319e-03, 2.089456015678587721e-03, 2.074008336318870771e-03, 2.058558103511644831e-03, 2.043105342476250405e-03, 2.027650078435325274e-03, 2.012192336613715087e-03, 1.996732142239148605e-03, 1.981269520541808354e-03, 1.965804496755023650e-03, 1.950337096114159070e-03, 1.934867343857119048e-03, 1.919395265224800411e-03, 1.903920885459868323e-03, 1.888444229808249443e-03, 1.872965323517011881e-03, 1.857484191836601684e-03, 1.842000860019568469e-03, 1.826515353320339692e-03, 1.811027696995732607e-03, 1.795537916304544004e-03, 1.780046036508210272e-03, 1.764552082869710620e-03, 1.749056080654068411e-03, 1.733558055128815853e-03, 1.718058031562923237e-03, 1.702556035227441658e-03, 1.687052091395118986e-03, 1.671546225341043451e-03, 1.656038462341588927e-03, 1.640528827674854473e-03, 1.625017346621182362e-03, 1.609504044461877422e-03, 1.593988946480733807e-03, 1.578472077961917339e-03, 1.562953464192346192e-03, 1.547433130459574535e-03, 1.531911102053303475e-03, 1.516387404264131402e-03, 1.500862062384046005e-03, 1.485335101707044216e-03, 1.469806547527217075e-03, 1.454276425141119581e-03, 1.438744759845649555e-03, 1.423211576939570518e-03, 1.407676901722257476e-03, 1.392140759494173976e-03, 1.376603175557340264e-03, 1.361064175214283557e-03, 1.345523783768479966e-03, 1.329982026524853447e-03, 1.314438928788519640e-03, 1.298894515866308962e-03, 1.283348813064623135e-03, 1.267801845691854693e-03, 1.252253639056410267e-03, 1.236704218467376496e-03, 1.221153609234998383e-03, 1.205601836669425520e-03, 1.190048926082221516e-03, 1.174494902784253923e-03, 1.158939792088072105e-03, 1.143383619305798470e-03, 1.127826409750627050e-03, 1.112268188735592500e-03, 1.096708981574027412e-03, 1.081148813580055414e-03, 1.065587710067503278e-03, 1.050025696350560551e-03, 1.034462797743382085e-03, 1.018899039560745281e-03, 1.003334447116970658e-03, 9.877690457263975984e-04, 9.722028607038669295e-04, 9.566359173636349847e-04, 9.410682410200248843e-04, 9.254998569870495585e-04, 9.099307905790525106e-04, 8.943610671096320717e-04, 8.787907118921167151e-04, 8.632197502400506704e-04, 8.476482074659323455e-04, 8.320761088827367639e-04, 8.165034798017936721e-04, 8.009303455350001797e-04, 7.853567313935683972e-04, 7.697826626878084876e-04, 7.542081647276024621e-04, 7.386332628220318658e-04, 7.230579822800119270e-04, 7.074823484092245939e-04, 6.919063865165871272e-04, 6.763301219087411833e-04, 6.607535798909608057e-04, 6.451767857678140060e-04, 6.295997648427717995e-04, 6.140225424188576432e-04, 5.984451437975716898e-04, 5.828675942793623077e-04, 5.672899191641167906e-04, 5.517121437498941419e-04, 5.361342933344534750e-04, 5.205563932131290848e-04, 5.049784686812143920e-04, 4.894005450318437370e-04, 4.738226475575147627e-04, 4.582448015488252641e-04, 4.426670322949592369e-04, 4.270893650843388622e-04, 4.115118252026705569e-04, 3.959344379353394350e-04, 3.803572285652842165e-04, 3.647802223745137012e-04, 3.492034446428572258e-04, 3.336269206484399237e-04, 3.180506756681651952e-04, 3.024747349766320230e-04, 2.868991238466114249e-04, 2.713238675495321765e-04, 2.557489913542193962e-04, 2.401745205284198004e-04, 2.246004803366740657e-04, 2.090268960427098797e-04, 1.934537929073159559e-04, 1.778811961898634408e-04, 1.623091311470501092e-04, 1.467376230333808829e-04, 1.311666971018213333e-04, 1.155963786018456842e-04, 1.000266927818280329e-04, 8.445766488691804584e-05, 6.888932016056180971e-05, 5.332168384324623047e-05, 3.775478117297922649e-05, 2.218863738576932871e-05, 6.623277714543288645e-06, -8.941272610200052040e-06, -2.450498836077799058e-05, -4.006784431167037048e-05, -5.562981524060181093e-05, -7.119087592806176018e-05, -8.675100115682457850e-05, -1.023101657132055695e-04, -1.178683443855390244e-04, -1.334255119663019576e-04, -1.489816432497261239e-04, -1.645367130337454761e-04, -1.800906961193449662e-04, -1.956435673100800541e-04, -2.111953014133307769e-04, -2.267458732389575013e-04, -2.422952576005518212e-04, -2.578434293149594551e-04, -2.733903632018028175e-04, -2.889360340845558155e-04, -3.044804167898971766e-04, -3.200234861480953132e-04, -3.355652169923549824e-04, -3.511055841598981274e-04, -3.666445624914868823e-04, -3.821821268309421324e-04, -3.977182520263957679e-04, -4.132529129287756194e-04, -4.287860843939225253e-04, -4.443177412802062258e-04, -4.598478584504698792e-04, -4.753764107713834980e-04, -4.909033731129581720e-04, -5.064287203497986473e-04, -5.219524273595935746e-04, -5.374744690252264510e-04, -5.529948202323942781e-04, -5.685134558717243585e-04, -5.840303508372619423e-04, -5.995454800277147823e-04, -6.150588183459789046e-04, -6.305703406986616676e-04, -6.460800219971562066e-04, -6.615878371569931891e-04, -6.770937610982239721e-04, -6.925977687447723574e-04, -7.080998350255114215e-04, -7.235999348737860324e-04, -7.390980432269304888e-04, -7.545941350273547817e-04, -7.700881852220555109e-04, -7.855801687621476181e-04, -8.010700606041110030e-04, -8.165578357082711215e-04, -8.320434690409161081e-04, -8.475269355719281189e-04, -8.630082102768744327e-04, -8.784872681355172146e-04, -8.939640841330480977e-04, -9.094386332596095072e-04, -9.249108905098306225e-04, -9.403808308838914123e-04, -9.558484293868729819e-04, -9.713136610291466921e-04, -9.867765008257269998e-04, -1.002236923797340806e-03, -1.017694904969950733e-03, -1.033150419374285122e-03, -1.048603442046902286e-03, -1.064053948029548878e-03, -1.079501912369543268e-03, -1.094947310119123284e-03, -1.110390116336526945e-03, -1.125830306085506523e-03, -1.141267854434858866e-03, -1.156702736459670712e-03, -1.172134927239806444e-03, -1.187564401862018166e-03, -1.202991135417731759e-03, -1.218415103004328193e-03, -1.233836279725310063e-03, -1.249254640689864216e-03, -1.264670161013224312e-03, -1.280082815816022471e-03, -1.295492580225379763e-03, -1.310899429374403789e-03, -1.326303338401739170e-03, -1.341704282452620958e-03, -1.357102236678229537e-03, -1.372497176236084837e-03, -1.387889076289387574e-03, -1.403277912008096947e-03, -1.418663658568450336e-03, -1.434046291152487338e-03, -1.449425784949310040e-03, -1.464802115153536304e-03, -1.480175256967451248e-03, -1.495545185598604228e-03, -1.510911876261925198e-03, -1.526275304178219185e-03, -1.541635444575408138e-03, -1.556992272688051057e-03, -1.572345763756696074e-03, -1.587695893029816190e-03, -1.603042635761449614e-03, -1.618385967213267773e-03, -1.633725862653124432e-03, -1.649062297356247882e-03, -1.664395246604786875e-03, -1.679724685687334230e-03, -1.695050589900002572e-03, -1.710372934545756254e-03, -1.725691694934819442e-03, -1.741006846384192787e-03, -1.756318364217847707e-03, -1.771626223767990352e-03, -1.786930400372864144e-03, -1.802230869378664046e-03, -1.817527606138918126e-03, -1.832820586013972136e-03, -1.848109784372261710e-03, -1.863395176588812478e-03, -1.878676738047295935e-03, -1.893954444137723337e-03, -1.909228270258497449e-03, -1.924498191814936511e-03, -1.939764184220504157e-03, -1.955026222896324994e-03, -1.970284283270736826e-03, -1.985538340780330837e-03, -2.000788370869307792e-03, -2.016034348989892422e-03, -2.031276250601642998e-03, -2.046514051172543779e-03, -2.061747726178533163e-03, -2.076977251103019270e-03, -2.092202601437942889e-03, -2.107423752683146041e-03, -2.122640680346746678e-03, -2.137853359944485131e-03, -2.153061767000810037e-03, -2.168265877048385689e-03, -2.183465665627618013e-03, -2.198661108287910948e-03, -2.213852180586152896e-03, -2.229038858088793623e-03, -2.244221116369693198e-03, -2.259398931011331966e-03, -2.274572277605022182e-03, -2.289741131750460020e-03, -2.304905469056062108e-03, -2.320065265138380930e-03, -2.335220495623100117e-03, -2.350371136144617686e-03, -2.365517162345546001e-03, -2.380658549877773429e-03, -2.395795274401837666e-03, -2.410927311587287864e-03, -2.426054637112057526e-03, -2.441177226663508379e-03, -2.456295055937979775e-03, -2.471408100640293433e-03, -2.486516336484992460e-03, -2.501619739194879417e-03, -2.516718284503031630e-03, -2.531811948150526105e-03, -2.546900705888477390e-03, -2.561984533476547015e-03, -2.577063406684205072e-03, -2.592137301290231479e-03, -2.607206193082064159e-03, -2.622270057857750171e-03, -2.637328871423560896e-03, -2.652382609596090624e-03, -2.667431248200765985e-03, -2.682474763073085418e-03, -2.697513130058108721e-03, -2.712546325010028146e-03, -2.727574323793210530e-03, -2.742597102281725888e-03, -2.757614636358860383e-03, -2.772626901918390056e-03, -2.787633874863031710e-03, -2.802635531106563178e-03, -2.817631846571471473e-03, -2.832622797191020145e-03, -2.847608358907773030e-03, -2.862588507674808987e-03, -2.877563219455260904e-03, -2.892532470221681647e-03, -2.907496235957908459e-03, -2.922454492656798714e-03, -2.937407216322219638e-03, -2.952354382967644492e-03, -2.967295968617303555e-03, -2.982231949305750879e-03, -2.997162301077415866e-03, -3.012086999987600728e-03, -3.027006022101886348e-03, -3.041919343496500908e-03, -3.056826940257652454e-03, -3.071728788482639555e-03, -3.086624864279325677e-03, -3.101515143765694229e-03, -3.116399603071075015e-03, -3.131278218334655836e-03, -3.146150965707523832e-03, -3.161017821350404697e-03, -3.175878761435485011e-03, -3.190733762145807253e-03, -3.205582799674812702e-03, -3.220425850227536663e-03, -3.235262890019323899e-03, -3.250093895277004347e-03, -3.264918842238475043e-03, -3.279737707152216575e-03, -3.294550466278297479e-03, -3.309357095887836050e-03, -3.324157572263248834e-03, -3.338951871697731083e-03, -3.353739970496226463e-03, -3.368521844975012024e-03, -3.383297471461197727e-03, -3.398066826293939888e-03, -3.412829885822998757e-03, -3.427586626410745584e-03, -3.442337024429903587e-03, -3.457081056265397159e-03, -3.471818698313696144e-03, -3.486549926982427262e-03, -3.501274718691507314e-03, -3.515993049871701196e-03, -3.530704896966677109e-03, -3.545410236430708486e-03, -3.560109044730678900e-03, -3.574801298344669996e-03, -3.589486973763112918e-03, -3.604166047488366765e-03, -3.618838496034231141e-03, -3.633504295927024279e-03, -3.648163423704871809e-03, -3.662815855918171229e-03, -3.677461569128891942e-03, -3.692100539911671170e-03, -3.706732744853288766e-03, -3.721358160552269527e-03, -3.735976763619854642e-03, -3.750588530679599235e-03, -3.765193438366872328e-03, -3.779791463330057708e-03, -3.794382582229140558e-03, -3.808966771737665961e-03, -3.823544008540505877e-03, -3.838114269335885734e-03, -3.852677530833905142e-03, -3.867233769757733551e-03, -3.881782962843175703e-03, -3.896325086838204992e-03, -3.910860118503968301e-03, -3.925388034614192730e-03, -3.939908811955532969e-03, -3.954422427326969788e-03, -3.968928857540796225e-03, -3.983428079422227271e-03, -3.997920069808858640e-03, -4.012404805551758775e-03, -4.026882263514820932e-03, -4.041352420575131804e-03, -4.055815253622333146e-03, -4.070270739559684291e-03, -4.084718855303568624e-03, -4.099159577783072911e-03, -4.113592883941127876e-03, -4.128018750733111752e-03, -4.142437155128809653e-03, -4.156848074110388279e-03, -4.171251484673509612e-03, -4.185647363827561633e-03, -4.200035688595183010e-03, -4.214416436012699378e-03, -4.228789583129396491e-03, -4.243155107008612231e-03, -4.257512984727274304e-03, -4.271863193375424056e-03, -4.286205710057235628e-03, -4.300540511890431350e-03, -4.314867576006588788e-03, -4.329186879550595175e-03, -4.343498399681598905e-03, -4.357802113572570649e-03, -4.372097998409901765e-03, -4.386386031394513656e-03, -4.400666189740460449e-03, -4.414938450676905712e-03, -4.429202791445908081e-03, -4.443459189304376292e-03, -4.457707621522652777e-03, -4.471948065385710630e-03, -4.486180498192656602e-03, -4.500404897256177726e-03, -4.514621239904287320e-03, -4.528829503478163515e-03, -4.543029665334072202e-03, -4.557221702841997464e-03, -4.571405593386779556e-03, -4.585581314367638724e-03, -4.599748843197807441e-03, -4.613908157305442008e-03, -4.628059234133093461e-03, -4.642202051137982524e-03, -4.656336585791658739e-03, -4.670462815580095871e-03, -4.684580718004897545e-03, -4.698690270581252874e-03, -4.712791450839724956e-03, -4.726884236325648060e-03, -4.740968604598661852e-03, -4.755044533233907487e-03, -4.769111999820617280e-03, -4.783170981964018562e-03, -4.797221457283192166e-03, -4.811263403412973684e-03, -4.825296798002624669e-03, -4.839321618716896020e-03, -4.853337843235644607e-03, -4.867345449253390917e-03, -4.881344414480268817e-03, -4.895334716641457432e-03, -4.909316333477533288e-03, -4.923289242743835413e-03, -4.937253422211528714e-03, -4.951208849667077493e-03, -4.965155502911837784e-03, -4.979093359763077375e-03, -4.993022398053346966e-03, -5.006942595630801095e-03, -5.020853930358671648e-03, -5.034756380116184662e-03, -5.048649922798150932e-03, -5.062534536314546203e-03, -5.076410198591603182e-03, -5.090276887570493146e-03, -5.104134581209170823e-03, -5.117983257480436705e-03, -5.131822894373022116e-03, -5.145653469891811257e-03, -5.159474962057380640e-03, -5.173287348906375517e-03, -5.187090608490902734e-03, -5.200884718879503904e-03, -5.214669658156707854e-03, -5.228445404422646381e-03, -5.242211935793941562e-03, -5.255969230403218298e-03, -5.269717266399358453e-03, -5.283456021946976965e-03, -5.297185475227348186e-03, -5.310905604437991291e-03, -5.324616387792259140e-03, -5.338317803520411207e-03, -5.352009829868308206e-03, -5.365692445099254360e-03, -5.379365627491901856e-03, -5.393029355342098333e-03, -5.406683606961608379e-03, -5.420328360679144836e-03, -5.433963594839985416e-03, -5.447589287805359483e-03, -5.461205417954241755e-03, -5.474811963681146601e-03, -5.488408903398054456e-03, -5.501996215533085620e-03, -5.515573878531521146e-03, -5.529141870855517477e-03, -5.542700170983526180e-03, -5.556248757411337384e-03, -5.569787608651685998e-03, -5.583316703233713076e-03, -5.596836019704159310e-03, -5.610345536626009343e-03, -5.623845232580318432e-03, -5.637335086164195833e-03, -5.650815075992546462e-03, -5.664285180696841844e-03, -5.677745378926148806e-03, -5.691195649346771253e-03, -5.704635970641592710e-03, -5.718066321511868291e-03, -5.731486680675068439e-03, -5.744897026866758495e-03, -5.758297338839295058e-03, -5.771687595362830388e-03, -5.785067775225024439e-03, -5.798437857230517509e-03, -5.811797820201866985e-03, -5.825147642979104125e-03, -5.838487304419897120e-03, -5.851816783399120883e-03, -5.865136058809706197e-03, -5.878445109562284096e-03, -5.891743914584682794e-03, -5.905032452823135054e-03, -5.918310703240842706e-03, -5.931578644819897848e-03, -5.944836256559131796e-03, -5.958083517475887096e-03, -5.971320406605406042e-03, -5.984546903000368366e-03, -5.997762985732085599e-03, -6.010968633889096809e-03, -6.024163826578991798e-03, -6.037348542926577501e-03, -6.050522762074892792e-03, -6.063686463185397578e-03, -6.076839625437579877e-03, -6.089982228029256796e-03, -6.103114250176062787e-03, -6.116235671112330886e-03, -6.129346470090672044e-03, -6.142446626381608231e-03, -6.155536119274590719e-03, -6.168614928076745010e-03, -6.181683032114654135e-03, -6.194740410732328152e-03, -6.207787043292850408e-03, -6.220822909177858850e-03, -6.233847987787060306e-03, -6.246862258539375400e-03, -6.259865700871605418e-03, -6.272858294240253769e-03, -6.285840018119420031e-03, -6.298810852002740233e-03, -6.311770775401943576e-03, -6.324719767848039839e-03, -6.337657808890825861e-03, -6.350584878098509099e-03, -6.363500955058607952e-03, -6.376406019377453029e-03, -6.389300050680410056e-03, -6.402183028611410642e-03, -6.415054932833834378e-03, -6.427915743030080363e-03, -6.440765438901236740e-03, -6.453604000167866526e-03, -6.466431406569730055e-03, -6.479247637865263691e-03, -6.492052673832732559e-03, -6.504846494268880057e-03, -6.517629078990743244e-03, -6.530400407833648370e-03, -6.543160460652940394e-03, -6.555909217322791228e-03, -6.568646657737141695e-03, -6.581372761809413559e-03, -6.594087509472004727e-03, -6.606790880677278037e-03, -6.619482855396913341e-03, -6.632163413622314298e-03, -6.644832535364035911e-03, -6.657490200652691793e-03, -6.670136389538482320e-03, -6.682771082090917941e-03, -6.695394258399571183e-03, -6.708005898573696744e-03, -6.720605982742399766e-03, -6.733194491054162248e-03, -6.745771403677734701e-03, -6.758336700801751903e-03, -6.770890362634265393e-03, -6.783432369403862364e-03, -6.795962701358336001e-03, -6.808481338766500870e-03, -6.820988261916182370e-03, -6.833483451115937579e-03, -6.845966886693861768e-03, -6.858438548998563311e-03, -6.870898418398819346e-03, -6.883346475283146429e-03, -6.895782700060660957e-03, -6.908207073160736560e-03, -6.920619575032613789e-03, -6.933020186146170334e-03, -6.945408886991541117e-03, -6.957785658079327328e-03, -6.970150479940096823e-03, -6.982503333125261030e-03, -6.994844198206661215e-03, -7.007173055776248424e-03, -7.019489886446950849e-03, -7.031794670851624317e-03, -7.044087389644606602e-03, -7.056368023499908111e-03, -7.068636553112835584e-03, -7.080892959198799470e-03, -7.093137222494327876e-03, -7.105369323756662372e-03, -7.117589243763222835e-03, -7.129796963313223337e-03, -7.141992463225680689e-03, -7.154175724341147423e-03, -7.166346727520513105e-03, -7.178505453645958427e-03, -7.190651883620626482e-03, -7.202785998368156986e-03, -7.214907778833651655e-03, -7.227017205983041030e-03, -7.239114260803458309e-03, -7.251198924302864647e-03, -7.263271177510187068e-03, -7.275331001476279501e-03, -7.287378377272233157e-03, -7.299413285990880539e-03, -7.311435708746301040e-03, -7.323445626673385535e-03, -7.335443020928840777e-03, -7.347427872690116477e-03, -7.359400163156807825e-03, -7.371359873549044803e-03, -7.383306985108999652e-03, -7.395241479099724617e-03, -7.407163336806200579e-03, -7.419072539534795827e-03, -7.430969068613105591e-03, -7.442852905390596498e-03, -7.454724031238228396e-03, -7.466582427548679873e-03, -7.478428075735879012e-03, -7.490260957235825648e-03, -7.502081053506185447e-03, -7.513888346025959439e-03, -7.525682816296359184e-03, -7.537464445840142378e-03, -7.549233216202093366e-03, -7.560989108948415124e-03, -7.572732105667545448e-03, -7.584462187969881128e-03, -7.596179337487285292e-03, -7.607883535874153391e-03, -7.619574764806163331e-03, -7.631253005981954683e-03, -7.642918241121412180e-03, -7.654570451966639759e-03, -7.666209620282039491e-03, -7.677835727854080868e-03, -7.689448756491484675e-03, -7.701048688024752890e-03, -7.712635504307031702e-03, -7.724209187213638798e-03, -7.735769718641821377e-03, -7.747317080511527225e-03, -7.758851254764824457e-03, -7.770372223366356010e-03, -7.781879968302647492e-03, -7.793374471583161024e-03, -7.804855715239636046e-03, -7.816323681326026868e-03, -7.827778351919209565e-03, -7.839219709117961968e-03, -7.850647735044529243e-03, -7.862062411842823256e-03, -7.873463721679969940e-03, -7.884851646745249382e-03, -7.896226169250982266e-03, -7.907587271432149970e-03, -7.918934935545959147e-03, -7.930269143873259000e-03, -7.941589878716768386e-03, -7.952897122402612790e-03, -7.964190857279278279e-03, -7.975471065718423361e-03, -7.986737730114695094e-03, -7.997990832885135820e-03, -8.009230356470182360e-03, -8.020456283333218458e-03, -8.031668595960229570e-03, -8.042867276860711859e-03, -8.054052308566608809e-03, -8.065223673633761456e-03, -8.076381354640288154e-03, -8.087525334188033072e-03, -8.098655594901468108e-03, -8.109772119428648729e-03, -8.120874890440828858e-03, -8.131963890631987296e-03, -8.143039102720265807e-03, -8.154100509446142453e-03, -8.165148093574124688e-03, -8.176181837891481272e-03, -8.187201725209310860e-03, -8.198207738362014649e-03, -8.209199860207079535e-03, -8.220178073625839660e-03, -8.231142361522886600e-03, -8.242092706826558562e-03, -8.253029092488256904e-03, -8.263951501483325635e-03, -8.274859916810721819e-03, -8.285754321492583632e-03, -8.296634698575193131e-03, -8.307501031127931951e-03, -8.318353302244630917e-03, -8.329191495042014004e-03, -8.340015592661068761e-03, -8.350825578266473856e-03, -8.361621435046375297e-03, -8.372403146213212161e-03, -8.383170695002675754e-03, -8.393924064675107807e-03, -8.404663238514098814e-03, -8.415388199827194063e-03, -8.426098931946202422e-03, -8.436795418226738369e-03, -8.447477642048511690e-03, -8.458145586814980535e-03, -8.468799235953894389e-03, -8.479438572917183045e-03, -8.490063581180404967e-03, -8.500674244243798527e-03, -8.511270545631154441e-03, -8.521852468891243440e-03, -8.532419997596213390e-03, -8.542973115342878190e-03, -8.553511805752377767e-03, -8.564036052469714902e-03, -8.574545839164650352e-03, -8.585041149530748747e-03, -8.595521967286702189e-03, -8.605988276174777671e-03, -8.616440059962206591e-03, -8.626877302440195960e-03, -8.637299987424752398e-03, -8.647708098756359471e-03, -8.658101620299663709e-03, -8.668480535944171964e-03, -8.678844829603812525e-03, -8.689194485217242164e-03, -8.699529486747353477e-03, -8.709849818182020809e-03, -8.720155463533735968e-03, -8.730446406839372300e-03, -8.740722632160812661e-03, -8.750984123584635427e-03, -8.761230865221930619e-03, -8.771462841208901851e-03, -8.781680035706012841e-03, -8.791882432899418565e-03, -8.802070016999216651e-03, -8.812242772241029448e-03, -8.822400682884852172e-03, -8.832543733216010468e-03, -8.842671907544726734e-03, -8.852785190205842564e-03, -8.862883565559549065e-03, -8.872967017990963587e-03, -8.883035531910337887e-03, -8.893089091752634859e-03, -8.903127681978231095e-03, -8.913151287072684434e-03, -8.923159891546255176e-03, -8.933153479934795999e-03, -8.943132036799146534e-03, -8.953095546725534093e-03, -8.963043994325015085e-03, -8.972977364234337172e-03, -8.982895641115389365e-03, -8.992798809655125694e-03, -9.002686854566227873e-03, -9.012559760586220589e-03, -9.022417512478729182e-03, -9.032260095031977368e-03, -9.042087493060253084e-03, -9.051899691402754897e-03, -9.061696674924527017e-03, -9.071478428516065520e-03, -9.081244937093065073e-03, -9.090996185597128437e-03, -9.100732158995324117e-03, -9.110452842280051047e-03, -9.120158220469621463e-03, -9.129848278607839360e-03, -9.139523001764319685e-03, -9.149182375033950571e-03, -9.158826383537696514e-03, -9.168455012422244491e-03, -9.178068246859662216e-03, -9.187666072048225607e-03, -9.197248473211473360e-03, -9.206815435599504521e-03, -9.216366944487472748e-03, -9.225902985176965415e-03, -9.235423542994964513e-03, -9.244928603294700134e-03, -9.254418151455369446e-03, -9.263892172881597192e-03, -9.273350653004792249e-03, -9.282793577281575961e-03, -9.292220931195093597e-03, -9.301632700254143515e-03, -9.311028869993898810e-03, -9.320409425975556897e-03, -9.329774353786122673e-03, -9.339123639039074651e-03, -9.348457267373874030e-03, -9.357775224456306440e-03, -9.367077495978081217e-03, -9.376364067657037837e-03, -9.385634925237916135e-03, -9.394890054490878314e-03, -9.404129441212877652e-03, -9.413353071227122462e-03, -9.422560930382800279e-03, -9.431753004555898379e-03, -9.440929279648190703e-03, -9.450089741588662065e-03, -9.459234376331893124e-03, -9.468363169859399589e-03, -9.477476108178742309e-03, -9.486573177324321773e-03, -9.495654363356942698e-03, -9.504719652363656165e-03, -9.513769030458347695e-03, -9.522802483781352134e-03, -9.531819998499687849e-03, -9.540821560806635182e-03, -9.549807156922419937e-03, -9.558776773093897658e-03, -9.567730395594276072e-03, -9.576668010723755203e-03, -9.585589604809138797e-03, -9.594495164204007789e-03, -9.603384675288437547e-03, -9.612258124469537368e-03, -9.621115498181197212e-03, -9.629956782883839633e-03, -9.638781965065052956e-03, -9.647591031238836670e-03, -9.656383967946716856e-03, -9.665160761756504126e-03, -9.673921399263029144e-03, -9.682665867088238038e-03, -9.691394151880914840e-03, -9.700106240316936496e-03, -9.708802119098863467e-03, -9.717481774956536478e-03, -9.726145194646830180e-03, -9.734792364953405094e-03, -9.743423272687207204e-03, -9.752037904686277139e-03, -9.760636247815767524e-03, -9.769218288967701849e-03, -9.777784015061560807e-03, -9.786333413043968310e-03, -9.794866469888419136e-03, -9.803383172596063025e-03, -9.811883508194752315e-03, -9.820367463740270128e-03, -9.828835026314954731e-03, -9.837286183028990175e-03, -9.845720921019419231e-03, -9.854139227450873714e-03, -9.862541089515394072e-03, -9.870926494431981821e-03, -9.879295429447616100e-03, -9.887647881836139976e-03, -9.895983838899200663e-03, -9.904303287965493183e-03, -9.912606216391521910e-03, -9.920892611561227606e-03, -9.929162460885751496e-03, -9.937415751804082320e-03, -9.945652471782579288e-03, -9.953872608315322487e-03, -9.962076148923726046e-03, -9.970263081156725479e-03, -9.978433392591414333e-03, -9.986587070831847227e-03, -9.994724103510240279e-03, -1.000284447828604650e-02, -1.001094818284672255e-02, -1.001903520490743035e-02, -1.002710553221061208e-02, -1.003515915252720971e-02, -1.004319605365517308e-02, -1.005121622342073848e-02, -1.005921964967760110e-02, -1.006720632030745112e-02, -1.007517622321989388e-02, -1.008312934635212030e-02, -1.009106567766933013e-02, -1.009898520516471811e-02, -1.010688791685929698e-02, -1.011477380080180559e-02, -1.012264284506920846e-02, -1.013049503776637661e-02, -1.013833036702595572e-02, -1.014614882100887613e-02, -1.015395038790364857e-02, -1.016173505592745177e-02, -1.016950281332493385e-02, -1.017725364836903276e-02, -1.018498754936087575e-02, -1.019270450462940458e-02, -1.020040450253201399e-02, -1.020808753145377792e-02, -1.021575357980857197e-02, -1.022340263603789719e-02, -1.023103468861152367e-02, -1.023864972602762588e-02, -1.024624773681243745e-02, -1.025382870952060675e-02, -1.026139263273473032e-02, -1.026893949506593913e-02, -1.027646928515365057e-02, -1.028398199166530823e-02, -1.029147760329712433e-02, -1.029895610877305280e-02, -1.030641749684616144e-02, -1.031386175629720597e-02, -1.032128887593567780e-02, -1.032869884459951086e-02, -1.033609165115475029e-02, -1.034346728449627752e-02, -1.035082573354698630e-02, -1.035816698725884090e-02, -1.036549103461165307e-02, -1.037279786461423395e-02, -1.038008746630355791e-02, -1.038735982874535932e-02, -1.039461494103392780e-02, -1.040185279229192787e-02, -1.040907337167080483e-02, -1.041627666835053326e-02, -1.042346267153980606e-02, -1.043063137047571011e-02, -1.043778275442420155e-02, -1.044491681267989761e-02, -1.045203353456593091e-02, -1.045913290943423918e-02, -1.046621492666560162e-02, -1.047327957566920528e-02, -1.048032684588337711e-02, -1.048735672677468880e-02, -1.049436920783918328e-02, -1.050136427860105977e-02, -1.050834192861372848e-02, -1.051530214745912024e-02, -1.052224492474822595e-02, -1.052917025012091098e-02, -1.053607811324568273e-02, -1.054296850382010868e-02, -1.054984141157064292e-02, -1.055669682625271465e-02, -1.056353473765038638e-02, -1.057035513557702013e-02, -1.057715800987485237e-02, -1.058394335041488478e-02, -1.059071114709732656e-02, -1.059746138985132036e-02, -1.060419406863514699e-02, -1.061090917343579521e-02, -1.061760669426965731e-02, -1.062428662118208335e-02, -1.063094894424733081e-02, -1.063759365356900868e-02, -1.064422073927954321e-02, -1.065083019154090122e-02, -1.065742200054372278e-02, -1.066399615650814869e-02, -1.067055264968324278e-02, -1.067709147034739438e-02, -1.068361260880823158e-02, -1.069011605540225174e-02, -1.069660180049576692e-02, -1.070306983448380232e-02, -1.070952014779074681e-02, -1.071595273087041708e-02, -1.072236757420579750e-02, -1.072876466830927078e-02, -1.073514400372226757e-02, -1.074150557101580597e-02, -1.074784936079020009e-02, -1.075417536367488658e-02, -1.076048357032897973e-02, -1.076677397144061403e-02, -1.077304655772780284e-02, -1.077930131993743573e-02, -1.078553824884620656e-02, -1.079175733525992477e-02, -1.079795857001410869e-02, -1.080414194397368716e-02, -1.081030744803276010e-02, -1.081645507311546593e-02, -1.082258481017485743e-02, -1.082869665019393045e-02, -1.083479058418486754e-02, -1.084086660318964862e-02, -1.084692469827970053e-02, -1.085296486055595602e-02, -1.085898708114895438e-02, -1.086499135121891252e-02, -1.087097766195559839e-02, -1.087694600457831881e-02, -1.088289637033589864e-02, -1.088882875050722725e-02, -1.089474313640037204e-02, -1.090063951935332440e-02, -1.090651789073376898e-02, -1.091237824193883911e-02, -1.091822056439566840e-02, -1.092404484956073854e-02, -1.092985108892076222e-02, -1.093563927399168571e-02, -1.094140939631955273e-02, -1.094716144747989901e-02, -1.095289541907823981e-02, -1.095861130274988597e-02, -1.096430909015968548e-02, -1.096998877300258031e-02, -1.097565034300319355e-02, -1.098129379191611216e-02, -1.098691911152551229e-02, -1.099252629364565539e-02, -1.099811533012064191e-02, -1.100368621282430889e-02, -1.100923893366054056e-02, -1.101477348456306009e-02, -1.102028985749557537e-02, -1.102578804445153264e-02, -1.103126803745449296e-02, -1.103672982855802981e-02, -1.104217340984537526e-02, -1.104759877343002017e-02, -1.105300591145523016e-02, -1.105839481609458344e-02, -1.106376547955130289e-02, -1.106911789405874702e-02, -1.107445205188035790e-02, -1.107976794530961956e-02, -1.108506556667005274e-02, -1.109034490831515424e-02, -1.109560596262856684e-02, -1.110084872202407417e-02, -1.110607317894537344e-02, -1.111127932586642580e-02, -1.111646715529121532e-02, -1.112163665975404031e-02, -1.112678783181894962e-02, -1.113192066408051455e-02, -1.113703514916331884e-02, -1.114213127972203676e-02, -1.114720904844167249e-02, -1.115226844803714722e-02, -1.115730947125408677e-02, -1.116233211086773564e-02, -1.116733635968398738e-02, -1.117232221053866999e-02, -1.117728965629804019e-02, -1.118223868985862221e-02, -1.118716930414691627e-02, -1.119208149212009770e-02, -1.119697524676530748e-02, -1.120185056110014135e-02, -1.120670742817232203e-02, -1.121154584106004264e-02, -1.121636579287183140e-02, -1.122116727674635217e-02, -1.122595028585272880e-02, -1.123071481339044803e-02, -1.123546085258937503e-02, -1.124018839670963034e-02, -1.124489743904166436e-02, -1.124958797290659743e-02, -1.125425999165559354e-02, -1.125891348867051611e-02, -1.126354845736334334e-02, -1.126816489117670600e-02, -1.127276278358363415e-02, -1.127734212808734551e-02, -1.128190291822194456e-02, -1.128644514755162108e-02, -1.129096880967121394e-02, -1.129547389820587978e-02, -1.129996040681138791e-02, -1.130442832917408040e-02, -1.130887765901048177e-02, -1.131330839006794084e-02, -1.131772051612416584e-02, -1.132211403098749153e-02, -1.132648892849662421e-02, -1.133084520252094184e-02, -1.133518284696038644e-02, -1.133950185574532366e-02, -1.134380222283688268e-02, -1.134808394222643936e-02, -1.135234700793644712e-02, -1.135659141401945162e-02, -1.136081715455891476e-02, -1.136502422366881225e-02, -1.136921261549364917e-02, -1.137338232420872890e-02, -1.137753334401976277e-02, -1.138166566916336449e-02, -1.138577929390659216e-02, -1.138987421254715471e-02, -1.139395041941355068e-02, -1.139800790886485483e-02, -1.140204667529092636e-02, -1.140606671311212607e-02, -1.141006801677964602e-02, -1.141405058077537768e-02, -1.141801439961179741e-02, -1.142195946783228222e-02, -1.142588578001066911e-02, -1.142979333075185185e-02, -1.143368211469115818e-02, -1.143755212649484251e-02, -1.144140336085989682e-02, -1.144523581251392398e-02, -1.144904947621547091e-02, -1.145284434675364685e-02, -1.145662041894862648e-02, -1.146037768765111216e-02, -1.146411614774275889e-02, -1.146783579413584303e-02, -1.147153662177362830e-02, -1.147521862563012640e-02, -1.147888180071009005e-02, -1.148252614204918649e-02, -1.148615164471385348e-02, -1.148975830380149880e-02, -1.149334611444012208e-02, -1.149691507178882306e-02, -1.150046517103742519e-02, -1.150399640740661956e-02, -1.150750877614796670e-02, -1.151100227254401275e-02, -1.151447689190797721e-02, -1.151793262958416934e-02, -1.152136948094757522e-02, -1.152478744140438167e-02, -1.152818650639132747e-02, -1.153156667137632090e-02, -1.153492793185807025e-02, -1.153827028336622956e-02, -1.154159372146142809e-02, -1.154489824173507775e-02, -1.154818383980968019e-02, -1.155145051133862726e-02, -1.155469825200629991e-02, -1.155792705752791728e-02, -1.156113692364976395e-02, -1.156432784614909448e-02, -1.156749982083401726e-02, -1.157065284354372690e-02, -1.157378691014836723e-02, -1.157690201654911627e-02, -1.157999815867801451e-02, -1.158307533249814877e-02, -1.158613353400373552e-02, -1.158917275921978428e-02, -1.159219300420250356e-02, -1.159519426503891580e-02, -1.159817653784731527e-02, -1.160113981877678238e-02, -1.160408410400759656e-02, -1.160700938975094826e-02, -1.160991567224909510e-02, -1.161280294777546421e-02, -1.161567121263425324e-02, -1.161852046316108091e-02, -1.162135069572232081e-02, -1.162416190671544322e-02, -1.162695409256912435e-02, -1.162972724974300869e-02, -1.163248137472788421e-02, -1.163521646404545688e-02, -1.163793251424868197e-02, -1.164062952192156629e-02, -1.164330748367909361e-02, -1.164596639616748662e-02, -1.164860625606392239e-02, -1.165122706007684118e-02, -1.165382880494561860e-02, -1.165641148744088126e-02, -1.165897510436424318e-02, -1.166151965254850001e-02, -1.166404512885759609e-02, -1.166655153018646661e-02, -1.166903885346135678e-02, -1.167150709563949222e-02, -1.167395625370930626e-02, -1.167638632469026987e-02, -1.167879730563310681e-02, -1.168118919361968780e-02, -1.168356198576285532e-02, -1.168591567920679482e-02, -1.168825027112675718e-02, -1.169056575872915414e-02, -1.169286213925154957e-02, -1.169513940996259535e-02, -1.169739756816230193e-02, -1.169963661118165153e-02, -1.170185653638283578e-02, -1.170405734115933724e-02, -1.170623902293561371e-02, -1.170840157916746074e-02, -1.171054500734170466e-02, -1.171266930497658412e-02, -1.171477446962121242e-02, -1.171686049885615338e-02, -1.171892739029298421e-02, -1.172097514157456957e-02, -1.172300375037493674e-02, -1.172501321439927725e-02, -1.172700353138399036e-02, -1.172897469909674542e-02, -1.173092671533631365e-02, -1.173285957793268434e-02, -1.173477328474708398e-02, -1.173666783367197271e-02, -1.173854322263089348e-02, -1.174039944957873567e-02, -1.174223651250149748e-02, -1.174405440941652355e-02, -1.174585313837218405e-02, -1.174763269744820426e-02, -1.174939308475551891e-02, -1.175113429843616976e-02, -1.175285633666355717e-02, -1.175455919764215734e-02, -1.175624287960785885e-02, -1.175790738082758968e-02, -1.175955269959964855e-02, -1.176117883425341001e-02, -1.176278578314955692e-02, -1.176437354468006478e-02, -1.176594211726799018e-02, -1.176749149936774305e-02, -1.176902168946495145e-02, -1.177053268607638689e-02, -1.177202448775010145e-02, -1.177349709306542598e-02, -1.177495050063289209e-02, -1.177638470909419047e-02, -1.177779971712239818e-02, -1.177919552342170627e-02, -1.178057212672757245e-02, -1.178192952580674191e-02, -1.178326771945704954e-02, -1.178458670650780506e-02, -1.178588648581934371e-02, -1.178716705628331599e-02, -1.178842841682261992e-02, -1.178967056639135431e-02, -1.179089350397492623e-02, -1.179209722858990880e-02, -1.179328173928414526e-02, -1.179444703513667439e-02, -1.179559311525789529e-02, -1.179671997878923781e-02, -1.179782762490358579e-02, -1.179891605280492667e-02, -1.179998526172850587e-02, -1.180103525094083373e-02, -1.180206601973960573e-02, -1.180307756745388806e-02, -1.180406989344376205e-02, -1.180504299710072313e-02, -1.180599687784742412e-02, -1.180693153513777058e-02, -1.180784696845691047e-02, -1.180874317732114737e-02, -1.180962016127814172e-02, -1.181047791990669921e-02, -1.181131645281680367e-02, -1.181213575964984441e-02, -1.181293584007823104e-02, -1.181371669380576299e-02, -1.181447832056735543e-02, -1.181522072012916418e-02, -1.181594389228865678e-02, -1.181664783687438360e-02, -1.181733255374622059e-02, -1.181799804279520631e-02, -1.181864430394361128e-02, -1.181927133714493622e-02, -1.181987914238385659e-02, -1.182046771967631971e-02, -1.182103706906939729e-02, -1.182158719064148322e-02, -1.182211808450202295e-02, -1.182262975079187428e-02, -1.182312218968285637e-02, -1.182359540137816085e-02, -1.182404938611218356e-02, -1.182448414415041178e-02, -1.182489967578956476e-02, -1.182529598135758850e-02, -1.182567306121359157e-02, -1.182603091574794575e-02, -1.182636954538204138e-02, -1.182668895056859792e-02, -1.182698913179148006e-02, -1.182727008956572894e-02, -1.182753182443753263e-02, -1.182777433698426785e-02, -1.182799762781454496e-02, -1.182820169756803631e-02, -1.182838654691567570e-02, -1.182855217655950399e-02, -1.182869858723271245e-02, -1.182882577969971739e-02, -1.182893375475602485e-02, -1.182902251322833290e-02, -1.182909205597447617e-02, -1.182914238388341199e-02, -1.182917349787525330e-02, -1.182918539890128254e-02, -1.182917808794390485e-02, -1.182915156601661334e-02, -1.182910583416413135e-02, -1.182904089346218518e-02, -1.182895674501771577e-02, -1.182885338996875896e-02, -1.182873082948445592e-02, -1.182858906476508438e-02, -1.182842809704196668e-02, -1.182824792757765538e-02, -1.182804855766565744e-02, -1.182782998863072046e-02, -1.182759222182856729e-02, -1.182733525864611973e-02, -1.182705910050126791e-02, -1.182676374884305409e-02, -1.182644920515162068e-02, -1.182611547093816856e-02, -1.182576254774492588e-02, -1.182539043714523480e-02, -1.182499914074347860e-02, -1.182458866017516499e-02, -1.182415899710673873e-02, -1.182371015323571868e-02, -1.182324213029081229e-02, -1.182275493003156867e-02, -1.182224855424873766e-02, -1.182172300476396799e-02, -1.182117828343003801e-02, -1.182061439213069783e-02, -1.182003133278073520e-02, -1.181942910732594436e-02, -1.181880771774310862e-02, -1.181816716604006980e-02, -1.181750745425560502e-02, -1.181682858445952736e-02, -1.181613055875263552e-02, -1.181541337926668954e-02, -1.181467704816445766e-02, -1.181392156763965209e-02, -1.181314693991701061e-02, -1.181235316725214209e-02, -1.181154025193169310e-02, -1.181070819627322820e-02, -1.180985700262529928e-02, -1.180898667336730858e-02, -1.180809721090971334e-02, -1.180718861769384023e-02, -1.180626089619190265e-02, -1.180531404890711698e-02, -1.180434807837355687e-02, -1.180336298715625905e-02, -1.180235877785107239e-02, -1.180133545308484702e-02, -1.180029301551524176e-02, -1.179923146783086983e-02, -1.179815081275114620e-02, -1.179705105302641596e-02, -1.179593219143789708e-02, -1.179479423079763008e-02, -1.179363717394854225e-02, -1.179246102376440945e-02, -1.179126578314979024e-02, -1.179005145504018887e-02, -1.178881804240182983e-02, -1.178756554823180876e-02, -1.178629397555806292e-02, -1.178500332743930359e-02, -1.178369360696508543e-02, -1.178236481725568503e-02, -1.178101696146226750e-02, -1.177965004276666783e-02, -1.177826406438162860e-02, -1.177685902955056228e-02, -1.177543494154768312e-02, -1.177399180367798108e-02, -1.177252961927710215e-02, -1.177104839171159989e-02, -1.176954812437860584e-02, -1.176802882070604461e-02, -1.176649048415259399e-02, -1.176493311820762076e-02, -1.176335672639110784e-02, -1.176176131225390581e-02, -1.176014687937741894e-02, -1.175851343137383417e-02, -1.175686097188595632e-02, -1.175518950458725488e-02, -1.175349903318185195e-02, -1.175178956140462277e-02, -1.175006109302097548e-02, -1.174831363182699852e-02, -1.174654718164942074e-02, -1.174476174634560971e-02, -1.174295732980350573e-02, -1.174113393594168435e-02, -1.173929156870931294e-02, -1.173743023208615767e-02, -1.173554993008253840e-02, -1.173365066673943621e-02, -1.173173244612827834e-02, -1.172979527235116712e-02, -1.172783914954060418e-02, -1.172586408185984953e-02, -1.172387007350254515e-02, -1.172185712869281901e-02, -1.171982525168550893e-02, -1.171777444676574444e-02, -1.171570471824936142e-02, -1.171361607048245455e-02, -1.171150850784184738e-02, -1.170938203473462745e-02, -1.170723665559850885e-02, -1.170507237490158760e-02, -1.170288919714234342e-02, -1.170068712684988778e-02, -1.169846616858357183e-02, -1.169622632693320848e-02, -1.169396760651912094e-02, -1.169169001199196235e-02, -1.168939354803274870e-02, -1.168707821935293517e-02, -1.168474403069435369e-02, -1.168239098682918170e-02, -1.168001909255992829e-02, -1.167762835271952959e-02, -1.167521877217117705e-02, -1.167279035580847703e-02, -1.167034310855523047e-02, -1.166787703536565496e-02, -1.166539214122422168e-02, -1.166288843114575771e-02, -1.166036591017527782e-02, -1.165782458338811278e-02, -1.165526445588989206e-02, -1.165268553281639981e-02, -1.165008781933375703e-02, -1.164747132063822556e-02, -1.164483604195642140e-02, -1.164218198854504761e-02, -1.163950916569104869e-02, -1.163681757871158282e-02, -1.163410723295395417e-02, -1.163137813379571013e-02, -1.162863028664441571e-02, -1.162586369693791727e-02, -1.162307837014421412e-02, -1.162027431176129548e-02, -1.161745152731740414e-02, -1.161461002237079536e-02, -1.161174980250993284e-02, -1.160887087335327021e-02, -1.160597324054931691e-02, -1.160305690977684982e-02, -1.160012188674435993e-02, -1.159716817719074616e-02, -1.159419578688463022e-02, -1.159120472162488390e-02, -1.158819498724029083e-02, -1.158516658958958639e-02, -1.158211953456165892e-02, -1.157905382807521838e-02, -1.157596947607896290e-02, -1.157286648455160480e-02, -1.156974485950179425e-02, -1.156660460696809847e-02, -1.156344573301890978e-02, -1.156026824375275958e-02, -1.155707214529782222e-02, -1.155385744381244410e-02, -1.155062414548451051e-02, -1.154737225653200590e-02, -1.154410178320276065e-02, -1.154081273177426023e-02, -1.153750510855411707e-02, -1.153417891987945122e-02, -1.153083417211749929e-02, -1.152747087166491012e-02, -1.152408902494847683e-02, -1.152068863842461641e-02, -1.151726971857944259e-02, -1.151383227192890636e-02, -1.151037630501860858e-02, -1.150690182442400469e-02, -1.150340883675015843e-02, -1.149989734863180423e-02, -1.149636736673345823e-02, -1.149281889774919976e-02, -1.148925194840294019e-02, -1.148566652544797707e-02, -1.148206263566750596e-02, -1.147844028587419705e-02, -1.147479948291031150e-02, -1.147114023364785747e-02, -1.146746254498821373e-02, -1.146376642386259630e-02, -1.146005187723147210e-02, -1.145631891208512797e-02, -1.145256753544316927e-02, -1.144879775435494670e-02, -1.144500957589910349e-02, -1.144120300718389459e-02, -1.143737805534702189e-02, -1.143353472755570532e-02, -1.142967303100652851e-02, -1.142579297292551851e-02, -1.142189456056830026e-02, -1.141797780121971487e-02, -1.141404270219404000e-02, -1.141008927083509220e-02, -1.140611751451590591e-02, -1.140212744063892440e-02, -1.139811905663590773e-02, -1.139409236996799524e-02, -1.139004738812576280e-02, -1.138598411862878045e-02, -1.138190256902620219e-02, -1.137780274689627162e-02, -1.137368465984671742e-02, -1.136954831551431448e-02, -1.136539372156508514e-02, -1.136122088569446222e-02, -1.135702981562686405e-02, -1.135282051911607956e-02, -1.134859300394493176e-02, -1.134434727792553443e-02, -1.134008334889912220e-02, -1.133580122473597067e-02, -1.133150091333565319e-02, -1.132718242262676332e-02, -1.132284576056691999e-02, -1.131849093514291846e-02, -1.131411795437063487e-02, -1.130972682629493090e-02, -1.130531755898973520e-02, -1.130089016055801227e-02, -1.129644463913168605e-02, -1.129198100287187589e-02, -1.128749925996828073e-02, -1.128299941863998741e-02, -1.127848148713470923e-02, -1.127394547372934965e-02, -1.126939138672959986e-02, -1.126481923446996485e-02, -1.126022902531415536e-02, -1.125562076765428826e-02, -1.125099446991175041e-02, -1.124635014053667822e-02, -1.124168778800791434e-02, -1.123700742083316544e-02, -1.123230904754896065e-02, -1.122759267672065325e-02, -1.122285831694229581e-02, -1.121810597683669045e-02, -1.121333566505548600e-02, -1.120854739027885884e-02, -1.120374116121595695e-02, -1.119891698660431013e-02, -1.119407487521038511e-02, -1.118921483582918999e-02, -1.118433687728430034e-02, -1.117944100842812108e-02, -1.117452723814146148e-02, -1.116959557533397929e-02, -1.116464602894355271e-02, -1.115967860793696913e-02, -1.115469332130929365e-02, -1.114969017808441036e-02, -1.114466918731448625e-02, -1.113963035808017248e-02, -1.113457369949083856e-02, -1.112949922068410050e-02, -1.112440693082612266e-02, -1.111929683911139742e-02, -1.111416895476303145e-02, -1.110902328703237615e-02, -1.110385984519917518e-02, -1.109867863857164939e-02, -1.109347967648624707e-02, -1.108826296830776013e-02, -1.108302852342944386e-02, -1.107777635127267166e-02, -1.107250646128732884e-02, -1.106721886295120721e-02, -1.106191356577073889e-02, -1.105659057928029543e-02, -1.105124991304271172e-02, -1.104589157664886967e-02, -1.104051557971777453e-02, -1.103512193189681509e-02, -1.102971064286135255e-02, -1.102428172231494433e-02, -1.101883517998918441e-02, -1.101337102564394974e-02, -1.100788926906702894e-02, -1.100238992007424726e-02, -1.099687298850969205e-02, -1.099133848424528950e-02, -1.098578641718100934e-02, -1.098021679724475209e-02, -1.097462963439264569e-02, -1.096902493860855282e-02, -1.096340271990420799e-02, -1.095776298831956271e-02, -1.095210575392215405e-02, -1.094643102680778121e-02, -1.094073881709959999e-02, -1.093502913494906643e-02, -1.092930199053524301e-02, -1.092355739406519061e-02, -1.091779535577355395e-02, -1.091201588592280794e-02, -1.090621899480335999e-02, -1.090040469273319095e-02, -1.089457299005796263e-02, -1.088872389715127807e-02, -1.088285742441421483e-02, -1.087697358227559218e-02, -1.087107238119182015e-02, -1.086515383164711121e-02, -1.085921794415314195e-02, -1.085326472924913986e-02, -1.084729419750217298e-02, -1.084130635950652892e-02, -1.083530122588440003e-02, -1.082927880728506292e-02, -1.082323911438570069e-02, -1.081718215789072117e-02, -1.081110794853221840e-02, -1.080501649706952332e-02, -1.079890781428946393e-02, -1.079278191100645906e-02, -1.078663879806188511e-02, -1.078047848632499549e-02, -1.077430098669199948e-02, -1.076810631008672664e-02, -1.076189446746017749e-02, -1.075566546979055127e-02, -1.074941932808359639e-02, -1.074315605337206742e-02, -1.073687565671607030e-02, -1.073057814920282474e-02, -1.072426354194691393e-02, -1.071793184609016493e-02, -1.071158307280108309e-02, -1.070521723327589637e-02, -1.069883433873755965e-02, -1.069243440043640865e-02, -1.068601742964962222e-02, -1.067958343768153975e-02, -1.067313243586367512e-02, -1.066666443555423609e-02, -1.066017944813877141e-02, -1.065367748502952724e-02, -1.064715855766602305e-02, -1.064062267751449652e-02, -1.063406985606807527e-02, -1.062750010484700067e-02, -1.062091343539819932e-02, -1.061430985929554330e-02, -1.060768938813969400e-02, -1.060105203355826697e-02, -1.059439780720553871e-02, -1.058772672076253862e-02, -1.058103878593728495e-02, -1.057433401446424351e-02, -1.056761241810493836e-02, -1.056087400864712776e-02, -1.055411879790571321e-02, -1.054734679772199001e-02, -1.054055801996390922e-02, -1.053375247652619390e-02, -1.052693017932993143e-02, -1.052009114032314077e-02, -1.051323537147987042e-02, -1.050636288480117329e-02, -1.049947369231437819e-02, -1.049256780607343321e-02, -1.048564523815868552e-02, -1.047870600067681186e-02, -1.047175010576122112e-02, -1.046477756557147309e-02, -1.045778839229353878e-02, -1.045078259813994083e-02, -1.044376019534928347e-02, -1.043672119618685099e-02, -1.042966561294369696e-02, -1.042259345793772850e-02, -1.041550474351275561e-02, -1.040839948203883120e-02, -1.040127768591252166e-02, -1.039413936755614713e-02, -1.038698453941874073e-02, -1.037981321397485161e-02, -1.037262540372573330e-02, -1.036542112119832534e-02, -1.035820037894605132e-02, -1.035096318954805208e-02, -1.034370956560957781e-02, -1.033643951976215974e-02, -1.032915306466304639e-02, -1.032185021299554008e-02, -1.031453097746882173e-02, -1.030719537081831692e-02, -1.029984340580504185e-02, -1.029247509521592080e-02, -1.028509045186401342e-02, -1.027768948858793184e-02, -1.027027221825227432e-02, -1.026283865374728703e-02, -1.025538880798918841e-02, -1.024792269392003040e-02, -1.024044032450708089e-02, -1.023294171274398943e-02, -1.022542687164958511e-02, -1.021789581426869528e-02, -1.021034855367163041e-02, -1.020278510295421874e-02, -1.019520547523823303e-02, -1.018760968367072098e-02, -1.017999774142434345e-02, -1.017236966169727391e-02, -1.016472545771338228e-02, -1.015706514272184981e-02, -1.014938872999726800e-02, -1.014169623283987971e-02, -1.013398766457521659e-02, -1.012626303855417541e-02, -1.011852236815298164e-02, -1.011076566677347743e-02, -1.010299294784253524e-02, -1.009520422481239785e-02, -1.008739951116077727e-02, -1.007957882039033776e-02, -1.007174216602936372e-02, -1.006388956163081425e-02, -1.005602102077340736e-02, -1.004813655706052015e-02, -1.004023618412116028e-02, -1.003231991560904653e-02, -1.002438776520311360e-02, -1.001643974660761972e-02, -1.000847587355132087e-02, -1.000049615978845785e-02, -9.992500619098284437e-03, -9.984489265284725648e-03, -9.976462112176823563e-03, -9.968419173628466703e-03, -9.960360463518698818e-03, -9.952285995751130807e-03, -9.944195784254273793e-03, -9.936089842981771572e-03, -9.927968185911668561e-03, -9.919830827047232055e-03, -9.911677780415887110e-03, -9.903509060070429110e-03, -9.895324680088033245e-03, -9.887124654570464410e-03, -9.878908997644523030e-03, -9.870677723461231470e-03, -9.862430846196718753e-03, -9.854168380051027062e-03, -9.845890339249440543e-03, -9.837596738041314362e-03, -9.829287590700879623e-03, -9.820962911526594577e-03, -9.812622714841366667e-03, -9.804267014992875187e-03, -9.795895826352906885e-03, -9.787509163317742802e-03, -9.779107040307889395e-03, -9.770689471768605888e-03, -9.762256472169062935e-03, -9.753808056002798849e-03, -9.745344237787905220e-03, -9.736865032066381598e-03, -9.728370453404518864e-03, -9.719860516393051889e-03, -9.711335235646524622e-03, -9.702794625804096740e-03, -9.694238701528370972e-03, -9.685667477506725367e-03, -9.677080968450138890e-03, -9.668479189094031021e-03, -9.659862154197519299e-03, -9.651229878543768001e-03, -9.642582376940159877e-03, -9.633919664217741041e-03, -9.625241755231580057e-03, -9.616548664860570181e-03, -9.607840408007712121e-03, -9.599116999599617908e-03, -9.590378454586680895e-03, -9.581624787943433114e-03, -9.572856014667757707e-03, -9.564072149781546392e-03, -9.555273208330165163e-03, -9.546459205383064917e-03, -9.537630156033028578e-03, -9.528786075396464272e-03, -9.519926978613708901e-03, -9.511052880848285679e-03, -9.502163797287823538e-03, -9.493259743142688431e-03, -9.484340733647567134e-03, -9.475406784060037835e-03, -9.466457909661635250e-03, -9.457494125756936432e-03, -9.448515447673973625e-03, -9.439521890764447642e-03, -9.430513470403132856e-03, -9.421490201988088828e-03, -9.412452100941007260e-03, -9.403399182706582288e-03, -9.394331462752803646e-03, -9.385248956570826570e-03, -9.376151679675256284e-03, -9.367039647603658814e-03, -9.357912875916626905e-03, -9.348771380198241457e-03, -9.339615176055313453e-03, -9.330444279118128154e-03, -9.321258705039334874e-03, -9.312058469495334764e-03, -9.302843588185000581e-03, -9.293614076830552725e-03, -9.284369951176813310e-03, -9.275111226991584329e-03, -9.265837920065885316e-03, -9.256550046212886490e-03, -9.247247621269331225e-03, -9.237930661094214194e-03, -9.228599181569712914e-03, -9.219253198600457430e-03, -9.209892728113802662e-03, -9.200517786060078210e-03, -9.191128388411960379e-03, -9.181724551164916273e-03, -9.172306290336872461e-03, -9.162873621968528962e-03, -9.153426562123305466e-03, -9.143965126886486119e-03, -9.134489332366548323e-03, -9.124999194694003932e-03, -9.115494730022150396e-03, -9.105975954526468810e-03, -9.096442884404745341e-03, -9.086895535877586444e-03, -9.077333925187216698e-03, -9.067758068598887403e-03, -9.058167982399594614e-03, -9.048563682899008961e-03, -9.038945186428759201e-03, -9.029312509342603960e-03, -9.019665668016808163e-03, -9.010004678849489052e-03, -9.000329558260961385e-03, -8.990640322693524075e-03, -8.980936988611852231e-03, -8.971219572502318884e-03, -8.961488090873329787e-03, -8.951742560255587094e-03, -8.941982997201277511e-03, -8.932209418285066288e-03, -8.922421840102740670e-03, -8.912620279272753798e-03, -8.902804752434892444e-03, -8.892975276250780076e-03, -8.883131867404140541e-03, -8.873274542600066012e-03, -8.863403318565842709e-03, -8.853518212049694969e-03, -8.843619239822348224e-03, -8.833706418675488573e-03, -8.823779765423008306e-03, -8.813839296899909567e-03, -8.803885029962829969e-03, -8.793916981490235152e-03, -8.783935168381756114e-03, -8.773939607558487591e-03, -8.763930315963326320e-03, -8.753907310560048172e-03, -8.743870608334503372e-03, -8.733820226292940761e-03, -8.723756181463903844e-03, -8.713678490896614032e-03, -8.703587171661680139e-03, -8.693482240851186857e-03, -8.683363715578059847e-03, -8.673231612976946975e-03, -8.663085950202818394e-03, -8.652926744432591979e-03, -8.642754012863695240e-03, -8.632567772715106155e-03, -8.622368041226432037e-03, -8.612154835658336269e-03, -8.601928173292808927e-03, -8.591688071432389620e-03, -8.581434547400724339e-03, -8.571167618542159528e-03, -8.560887302222295464e-03, -8.550593615827177876e-03, -8.540286576763729889e-03, -8.529966202459876926e-03, -8.519632510364057512e-03, -8.509285517945424510e-03, -8.498925242693810417e-03, -8.488551702119871353e-03, -8.478164913754998588e-03, -8.467764895150506690e-03, -8.457351663879076817e-03, -8.446925237533342914e-03, -8.436485633726915206e-03, -8.426032870093549260e-03, -8.415566964287414867e-03, -8.405087933983448195e-03, -8.394595796876657898e-03, -8.384090570682494609e-03, -8.373572273136658389e-03, -8.363040921995447408e-03, -8.352496535035109151e-03, -8.341939130052114515e-03, -8.331368724863508213e-03, -8.320785337306178461e-03, -8.310188985237223006e-03, -8.299579686533784320e-03, -8.288957459093448596e-03, -8.278322320833459910e-03, -8.267674289691169520e-03, -8.257013383624209335e-03, -8.246339620609740781e-03, -8.235653018645440124e-03, -8.224953595748081200e-03, -8.214241369955105343e-03, -8.203516359323257887e-03, -8.192778581929557880e-03, -8.182028055870456743e-03, -8.171264799262117559e-03, -8.160488830240940697e-03, -8.149700166962228071e-03, -8.138898827601563982e-03, -8.128084830354176740e-03, -8.117258193434515393e-03, -8.106418935076842996e-03, -8.095567073534778654e-03, -8.084702627081788440e-03, -8.073825614010571305e-03, -8.062936052633151024e-03, -8.052033961281400073e-03, -8.041119358306078602e-03, -8.030192262077904750e-03, -8.019252690986114832e-03, -8.008300663440022851e-03, -7.997336197867788848e-03, -7.986359312716748496e-03, -7.975370026453864128e-03, -7.964368357564739417e-03, -7.953354324554722660e-03, -7.942327945947473891e-03, -7.931289240286536549e-03, -7.920238226133921935e-03, -7.909174922071101482e-03, -7.898099346698238266e-03, -7.887011518634376092e-03, -7.875911456517906140e-03, -7.864799179005706534e-03, -7.853674704773683582e-03, -7.842538052516381461e-03, -7.831389240947598043e-03, -7.820228288799439473e-03, -7.809055214822827572e-03, -7.797870037787702803e-03, -7.786672776482349463e-03, -7.775463449713777321e-03, -7.764242076307499574e-03, -7.753008675107873719e-03, -7.741763264977910737e-03, -7.730505864798400788e-03, -7.719236493469469260e-03, -7.707955169909096182e-03, -7.696661913054143184e-03, -7.685356741859540770e-03, -7.674039675298541599e-03, -7.662710732363109054e-03, -7.651369932063113201e-03, -7.640017293426840800e-03, -7.628652835500637081e-03, -7.617276577349434835e-03, -7.605888538056031906e-03, -7.594488736721221288e-03, -7.583077192464401754e-03, -7.571653924422615083e-03, -7.560218951751048258e-03, -7.548772293622808827e-03, -7.537313969229315208e-03, -7.525843997779600204e-03, -7.514362398500543452e-03, -7.502869190637338932e-03, -7.491364393452513981e-03, -7.479848026227005689e-03, -7.468320108258670771e-03, -7.456780658864018557e-03, -7.445229697376595096e-03, -7.433667243148188788e-03, -7.422093315547828585e-03, -7.410507933962163889e-03, -7.398911117795860942e-03, -7.387302886470694697e-03, -7.375683259425970355e-03, -7.364052256118924084e-03, -7.352409896023807956e-03, -7.340756198632459803e-03, -7.329091183453964077e-03, -7.317414870015155788e-03, -7.305727277859806919e-03, -7.294028426549021074e-03, -7.282318335661501496e-03, -7.270597024792686304e-03, -7.258864513555865657e-03, -7.247120821580571928e-03, -7.235365968514375148e-03, -7.223599974021308739e-03, -7.211822857783013567e-03, -7.200034639497721392e-03, -7.188235338880709369e-03, -7.176424975664705101e-03, -7.164603569598498867e-03, -7.152771140448655786e-03, -7.140927707997985797e-03, -7.129073292046673831e-03, -7.117207912411246777e-03, -7.105331588925090439e-03, -7.093444341438630805e-03, -7.081546189818676597e-03, -7.069637153948813910e-03, -7.057717253729101775e-03, -7.045786509076684516e-03, -7.033844939924763055e-03, -7.021892566223176049e-03, -7.009929407938626268e-03, -6.997955485053742979e-03, -6.985970817568169615e-03, -6.973975425497508200e-03, -6.961969328873733945e-03, -6.949952547745748624e-03, -6.937925102177738661e-03, -6.925887012251206488e-03, -6.913838298063100518e-03, -6.901778979727215928e-03, -6.889709077373068827e-03, -6.877628611146290039e-03, -6.865537601209054444e-03, -6.853436067739211886e-03, -6.841324030930755543e-03, -6.829201510993542640e-03, -6.817068528153833080e-03, -6.804925102653395196e-03, -6.792771254749935088e-03, -6.780607004717369851e-03, -6.768432372844968015e-03, -6.756247379438458898e-03, -6.744052044818378555e-03, -6.731846389321953679e-03, -6.719630433301564641e-03, -6.707404197125287591e-03, -6.695167701177188492e-03, -6.682920965856414992e-03, -6.670664011578365631e-03, -6.658396858772994142e-03, -6.646119527886733269e-03, -6.633832039380777382e-03, -6.621534413732286378e-03, -6.609226671433439393e-03, -6.596908832991735770e-03, -6.584580918930439154e-03, -6.572242949787679769e-03, -6.559894946116843865e-03, -6.547536928486971837e-03, -6.535168917481741675e-03, -6.522790933700643376e-03, -6.510402997757351769e-03, -6.498005130281609559e-03, -6.485597351917633986e-03, -6.473179683324652850e-03, -6.460752145177312174e-03, -6.448314758164648379e-03, -6.435867542991317337e-03, -6.423410520375870056e-03, -6.410943711052670413e-03, -6.398467135770228957e-03, -6.385980815292363437e-03, -6.373484770397216080e-03, -6.360979021877665590e-03, -6.348463590541655877e-03, -6.335938497211373796e-03, -6.323403762723724467e-03, -6.310859407930084070e-03, -6.298305453696728326e-03, -6.285741920904060545e-03, -6.273168830446948160e-03, -6.260586203235112175e-03, -6.247994060192210361e-03, -6.235392422256436605e-03, -6.222781310380188710e-03, -6.210160745530398860e-03, -6.197530748688436474e-03, -6.184891340849014464e-03, -6.172242543022064473e-03, -6.159584376230922351e-03, -6.146916861513629197e-03, -6.134240019921901807e-03, -6.121553872521468334e-03, -6.108858440392539273e-03, -6.096153744628853358e-03, -6.083439806338244819e-03, -6.070716646642302511e-03, -6.057984286676941499e-03, -6.045242747591476722e-03, -6.032492050549032384e-03, -6.019732216726894104e-03, -6.006963267315723089e-03, -5.994185223519955114e-03, -5.981398106557599299e-03, -5.968601937660703016e-03, -5.955796738074463706e-03, -5.942982529057667766e-03, -5.930159331883023618e-03, -5.917327167836172915e-03, -5.904486058216937804e-03, -5.891636024337547177e-03, -5.878777087524588232e-03, -5.865909269117313384e-03, -5.853032590468843291e-03, -5.840147072945174600e-03, -5.827252737925493059e-03, -5.814349606802826642e-03, -5.801437700982300417e-03, -5.788517041883248573e-03, -5.775587650937333978e-03, -5.762649549589902130e-03, -5.749702759298855326e-03, -5.736747301535105419e-03, -5.723783197782958930e-03, -5.710810469539238411e-03, -5.697829138313592091e-03, -5.684839225628987407e-03, -5.671840753020638073e-03, -5.658833742037258294e-03, -5.645818214239266448e-03, -5.632794191200849419e-03, -5.619761694508231334e-03, -5.606720745760318016e-03, -5.593671366569028316e-03, -5.580613578558319202e-03, -5.567547403365300310e-03, -5.554472862638657957e-03, -5.541389978040493075e-03, -5.528298771244654145e-03, -5.515199263937905529e-03, -5.502091477818961233e-03, -5.488975434598833587e-03, -5.475851156001279932e-03, -5.462718663761812962e-03, -5.449577979628349514e-03, -5.436429125360795096e-03, -5.423272122731665791e-03, -5.410106993525102929e-03, -5.396933759537334528e-03, -5.383752442577053460e-03, -5.370563064464490242e-03, -5.357365647031997642e-03, -5.344160212123671636e-03, -5.330946781595849275e-03, -5.317725377316781694e-03, -5.304496021165693888e-03, -5.291258735034623517e-03, -5.278013540826585574e-03, -5.264760460456908119e-03, -5.251499515852135064e-03, -5.238230728950432104e-03, -5.224954121702020393e-03, -5.211669716068221582e-03, -5.198377534022044152e-03, -5.185077597547819994e-03, -5.171769928641767322e-03, -5.158454549311112039e-03, -5.145131481574398251e-03, -5.131800747462011286e-03, -5.118462369015160281e-03, -5.105116368286497473e-03, -5.091762767339733965e-03, -5.078401588250225189e-03, -5.065032853104058444e-03, -5.051656583998416321e-03, -5.038272803042048546e-03, -5.024881532354127933e-03, -5.011482794065599128e-03, -4.998076610317331130e-03, -4.984663003262192887e-03, -4.971241995063192809e-03, -4.957813607894824039e-03, -4.944377863941937755e-03, -4.930934785400209810e-03, -4.917484394476489412e-03, -4.904026713387910075e-03, -4.890561764362297281e-03, -4.877089569638571806e-03, -4.863610151465812097e-03, -4.850123532103818927e-03, -4.836629733822770186e-03, -4.823128778903826297e-03, -4.809620689638137089e-03, -4.796105488327272875e-03, -4.782583197283683286e-03, -4.769053838829539343e-03, -4.755517435298070930e-03, -4.741974009031760945e-03, -4.728423582384381867e-03, -4.714866177719161285e-03, -4.701301817410096819e-03, -4.687730523840857172e-03, -4.674152319405228823e-03, -4.660567226507662461e-03, -4.646975267561540869e-03, -4.633376464991319568e-03, -4.619770841230638574e-03, -4.606158418723659866e-03, -4.592539219923969310e-03, -4.578913267294961766e-03, -4.565280583310325942e-03, -4.551641190453049532e-03, -4.537995111215971725e-03, -4.524342368101516056e-03, -4.510682983622175263e-03, -4.497016980299623108e-03, -4.483344380665102089e-03, -4.469665207259868392e-03, -4.455979482634053919e-03, -4.442287229347877120e-03, -4.428588469970547517e-03, -4.414883227080621322e-03, -4.401171523266671042e-03, -4.387453381125506514e-03, -4.373728823264265257e-03, -4.359997872298591870e-03, -4.346260550853937345e-03, -4.332516881564472261e-03, -4.318766887073502252e-03, -4.305010590033867858e-03, -4.291248013107039870e-03, -4.277479178963642346e-03, -4.263704110283142099e-03, -4.249922829754393394e-03, -4.236135360074732431e-03, -4.222341723950339028e-03, -4.208541944096709335e-03, -4.194736043237503979e-03, -4.180924044105927169e-03, -4.167105969442833242e-03, -4.153281841998824817e-03, -4.139451684532538880e-03, -4.125615519811237468e-03, -4.111773370611210981e-03, -4.097925259716669703e-03, -4.084071209921085605e-03, -4.070211244025341395e-03, -4.056345384839773159e-03, -4.042473655182373185e-03, -4.028596077880103148e-03, -4.014712675767750059e-03, -4.000823471688376431e-03, -3.986928488493762628e-03, -3.973027749043410266e-03, -3.959121276204994981e-03, -3.945209092854768014e-03, -3.931291221876447722e-03, -3.917367686162596084e-03, -3.903438508612664965e-03, -3.889503712135220469e-03, -3.875563319646084613e-03, -3.861617354069014473e-03, -3.847665838336086427e-03, -3.833708795386573786e-03, -3.819746248168328934e-03, -3.805778219635843913e-03, -3.791804732752403206e-03, -3.777825810488235399e-03, -3.763841475821768246e-03, -3.749851751738581766e-03, -3.735856661231841489e-03, -3.721856227302663619e-03, -3.707850472959199097e-03, -3.693839421217209960e-03, -3.679823095099686407e-03, -3.665801517637480838e-03, -3.651774711868309951e-03, -3.637742700837167178e-03, -3.623705507596796695e-03, -3.609663155206672969e-03, -3.595615666733624396e-03, -3.581563065251452092e-03, -3.567505373841398705e-03, -3.553442615591912920e-03, -3.539374813597546184e-03, -3.525301990960930717e-03, -3.511224170790885196e-03, -3.497141376203747893e-03, -3.483053630322298973e-03, -3.468960956276129128e-03, -3.454863377202137438e-03, -3.440760916243475361e-03, -3.426653596550208961e-03, -3.412541441278942479e-03, -3.398424473593385578e-03, -3.384302716663394484e-03, -3.370176193665412601e-03, -3.356044927782877302e-03, -3.341908942205270606e-03, -3.327768260128672988e-03, -3.313622904755474108e-03, -3.299472899294866781e-03, -3.285318266961960530e-03, -3.271159030978167126e-03, -3.256995214571628203e-03, -3.242826840976102860e-03, -3.228653933432332895e-03, -3.214476515186122027e-03, -3.200294609490475679e-03, -3.186108239603729214e-03, -3.171917428790856346e-03, -3.157722200322377135e-03, -3.143522577474794268e-03, -3.129318583531142100e-03, -3.115110241779285756e-03, -3.100897575513998899e-03, -3.086680608035126221e-03, -3.072459362648880150e-03, -3.058233862666777467e-03, -3.044004131406006196e-03, -3.029770192189913929e-03, -3.015532068346989548e-03, -3.001289783211301236e-03, -2.987043360122959654e-03, -2.972792822426932689e-03, -2.958538193474466189e-03, -2.944279496621122431e-03, -2.930016755228986251e-03, -2.915749992664842718e-03, -2.901479232300808141e-03, -2.887204497514759844e-03, -2.872925811689180410e-03, -2.858643198212544156e-03, -2.844356680477394626e-03, -2.830066281882510394e-03, -2.815772025830952201e-03, -2.801473935731494964e-03, -2.787172034997429954e-03, -2.772866347047033605e-03, -2.758556895303983843e-03, -2.744243703196404260e-03, -2.729926794157420955e-03, -2.715606191624820361e-03, -2.701281919041666375e-03, -2.686953999855281640e-03, -2.672622457517692500e-03, -2.658287315486082200e-03, -2.643948597221778673e-03, -2.629606326190869932e-03, -2.615260525863839346e-03, -2.600911219715993684e-03, -2.586558431227283135e-03, -2.572202183881148584e-03, -2.557842501166541702e-03, -2.543479406575972941e-03, -2.529112923606931414e-03, -2.514743075760692698e-03, -2.500369886542800658e-03, -2.485993379463479879e-03, -2.471613578036635592e-03, -2.457230505780480783e-03, -2.442844186217164957e-03, -2.428454642873354406e-03, -2.414061899279269872e-03, -2.399665978969104611e-03, -2.385266905481472390e-03, -2.370864702358410018e-03, -2.356459393145986236e-03, -2.342051001393918776e-03, -2.327639550656201463e-03, -2.313225064490103712e-03, -2.298807566456591636e-03, -2.284387080120793816e-03, -2.269963629050827762e-03, -2.255537236819203303e-03, -2.241107927000870158e-03, -2.226675723175418429e-03, -2.212240648925112730e-03, -2.197802727836302514e-03, -2.183361983498254173e-03, -2.168918439503605532e-03, -2.154472119448798233e-03, -2.140023046933079830e-03, -2.125571245558947452e-03, -2.111116738932586681e-03, -2.096659550662879727e-03, -2.082199704361994367e-03, -2.067737223645038733e-03, -2.053272132130660229e-03, -2.038804453440035483e-03, -2.024334211197330053e-03, -2.009861429030128203e-03, -1.995386130568268471e-03, -1.980908339445261370e-03, -1.966428079296326983e-03, -1.951945373760579413e-03, -1.937460246479090183e-03, -1.922972721096278398e-03, -1.908482821258761491e-03, -1.893990570615770907e-03, -1.879495992819801104e-03, -1.864999111524754706e-03, -1.850499950388184408e-03, -1.835998533069321467e-03, -1.821494883230484734e-03, -1.806989024535899518e-03, -1.792480980652161847e-03, -1.777970775248676047e-03, -1.763458431996646437e-03, -1.748943974569691206e-03, -1.734427426643468141e-03, -1.719908811896298483e-03, -1.705388154008142783e-03, -1.690865476661065816e-03, -1.676340803539661797e-03, -1.661814158329903831e-03, -1.647285564720542316e-03, -1.632755046401138848e-03, -1.618222627064127726e-03, -1.603688330403805692e-03, -1.589152180115322105e-03, -1.574614199896741742e-03, -1.560074413447071337e-03, -1.545532844467666653e-03, -1.530989516661074128e-03, -1.516444453731465416e-03, -1.501897679385096659e-03, -1.487349217329283482e-03, -1.472799091273032431e-03, -1.458247324926646542e-03, -1.443693942002365668e-03, -1.429138966213341910e-03, -1.414582421274090214e-03, -1.400024330900923562e-03, -1.385464718810804812e-03, -1.370903608722743574e-03, -1.356341024355819935e-03, -1.341776989431426583e-03, -1.327211527671430654e-03, -1.312644662798792159e-03, -1.298076418538005039e-03, -1.283506818613942054e-03, -1.268935886753247118e-03, -1.254363646682374192e-03, -1.239790122129811635e-03, -1.225215336824092690e-03, -1.210639314495224900e-03, -1.196062078873507241e-03, -1.181483653689985487e-03, -1.166904062676898685e-03, -1.152323329566661957e-03, -1.137741478092327936e-03, -1.123158531988016759e-03, -1.108574514987756840e-03, -1.093989450826894985e-03, -1.079403363240120104e-03, -1.064816275963697753e-03, -1.050228212733636318e-03, -1.035639197286298717e-03, -1.021049253358863188e-03, -1.006458404688135438e-03, -9.918666750119804407e-04, -9.772740880673238140e-04, -9.626806675924028459e-04, -9.480864373247657045e-04, -9.334914210026948886e-04, -9.188956423640456126e-04, -9.042991251466785119e-04, -8.897018930889172847e-04, -8.751039699285332284e-04, -8.605053794033543438e-04, -8.459061452509041880e-04, -8.313062912090186767e-04, -8.167058410148206457e-04, -8.021048184051772761e-04, -7.875032471171498211e-04, -7.729011508869715287e-04, -7.582985534506707327e-04, -7.436954785436982124e-04, -7.290919499015448627e-04, -7.144879912587213510e-04, -6.998836263492154344e-04, -6.852788789069338797e-04, -6.706737726645298995e-04, -6.560683313546651629e-04, -6.414625787088335451e-04, -6.268565384578038066e-04, -6.122502343320821144e-04, -5.976436900608824831e-04, -5.830369293727549621e-04, -5.684299759952076824e-04, -5.538228536553262615e-04, -5.392155860787567132e-04, -5.246081969901576682e-04, -5.100007101136489092e-04, -4.953931491717970988e-04, -4.807855378862236381e-04, -4.661778999772493736e-04, -4.515702591644990939e-04, -4.369626391658895355e-04, -4.223550636980823625e-04, -4.077475564769285810e-04, -3.931401412162949444e-04, -3.785328416294890834e-04, -3.639256814272650610e-04, -3.493186843200698946e-04, -3.347118740160454791e-04, -3.201052742224596800e-04, -3.054989086445260163e-04, -2.908928009858552312e-04, -2.762869749490659142e-04, -2.616814542339581089e-04, -2.470762625397525153e-04, -2.324714235630974824e-04, -2.178669609994987458e-04, -2.032628985421397342e-04, -1.886592598823295616e-04, -1.740560687099577150e-04, -1.594533487124753107e-04, -1.448511235753460681e-04, -1.302494169824973381e-04, -1.156482526151403009e-04, -1.010476541531993381e-04, -8.644764527331719509e-05, -7.184824965109833116e-05, -5.724949095927848791e-05, -4.265139286833834773e-05, -2.805397904695271878e-05, -1.345727316081347767e-05, 1.138701125943921397e-06, 1.573392015273219018e-05, 3.032836026027138117e-05, 4.492199779258055975e-05, 5.951480909555130608e-05, 7.410677051812522705e-05, 8.869785841184306711e-05, 1.032880491303967362e-04, 1.178773190306418801e-04, 1.324656444719864243e-04, 1.470530018167532803e-04, 1.616393674295696142e-04, 1.762247176783788552e-04, 1.908090289339922825e-04, 2.053922775696381874e-04, 2.199744399619783667e-04, 2.345554924904926213e-04, 2.491354115378439970e-04, 2.637141734894286231e-04, 2.782917547335777273e-04, 2.928681316627313922e-04, 3.074432806713644768e-04, 3.220171781579776998e-04, 3.365898005236684439e-04, 3.511611241733098260e-04, 3.657311255151006989e-04, 3.802997809601174422e-04, 3.948670669233216740e-04, 4.094329598229554286e-04, 4.239974360808997566e-04, 4.385604721220669210e-04, 4.531220443754062658e-04, 4.676821292734613736e-04, 4.822407032519193085e-04, 4.967977427506215264e-04, 5.113532242129534148e-04, 5.259071240862091268e-04, 5.404594188209738571e-04, 5.550100848721435881e-04, 5.695590986984713517e-04, 5.841064367621225974e-04, 5.986520755298383248e-04, 6.131959914715307165e-04, 6.277381610622513987e-04, 6.422785607799657908e-04, 6.568171671075383883e-04, 6.713539565313056271e-04, 6.858889055422578811e-04, 7.004219906355821455e-04, 7.149531883102163213e-04, 7.294824750698616434e-04, 7.440098274225365313e-04, 7.585352218801201399e-04, 7.730586349593664142e-04, 7.875800431813028985e-04, 8.020994230715756219e-04, 8.166167511598527865e-04, 8.311320039808289557e-04, 8.456451580737754355e-04, 8.601561899820968360e-04, 8.746650762545013589e-04, 8.891717934435782161e-04, 9.036763181077760816e-04, 9.181786268091871994e-04, 9.326786961155134753e-04, 9.471765025986528946e-04, 9.616720228358730622e-04, 9.761652334093595240e-04, 9.906561109056066620e-04, 1.005144631917235902e-03, 1.019630773040770605e-03, 1.034114510878612891e-03, 1.048595822037622907e-03, 1.063074683130294093e-03, 1.077551070774303028e-03, 1.092024961592059917e-03, 1.106496332211721239e-03, 1.120965159266577816e-03, 1.135431419395416513e-03, 1.149895089241904401e-03, 1.164356145455611603e-03, 1.178814564691550281e-03, 1.193270323609732942e-03, 1.207723398876339466e-03, 1.222173767162303528e-03, 1.236621405145284756e-03, 1.251066289507608538e-03, 1.265508396937275190e-03, 1.279947704128961330e-03, 1.294384187781960540e-03, 1.308817824602156185e-03, 1.323248591300611949e-03, 1.337676464594742117e-03, 1.352101421207839525e-03, 1.366523437868660731e-03, 1.380942491312423057e-03, 1.395358558280177701e-03, 1.409771615519201131e-03, 1.424181639782355190e-03, 1.438588607829116442e-03, 1.452992496425118633e-03, 1.467393282341706651e-03, 1.481790942357106818e-03, 1.496185453255009182e-03, 1.510576791826544023e-03, 1.524964934868055545e-03, 1.539349859182916405e-03, 1.553731541580927493e-03, 1.568109958877855628e-03, 1.582485087896605370e-03, 1.596856905465820608e-03, 1.611225388421831141e-03, 1.625590513606456518e-03, 1.639952257868956733e-03, 1.654310598064633606e-03, 1.668665511055988709e-03, 1.683016973712288386e-03, 1.697364962909095592e-03, 1.711709455529294684e-03, 1.726050428462639523e-03, 1.740387858605300930e-03, 1.754721722861038707e-03, 1.769051998139784367e-03, 1.783378661359612868e-03, 1.797701689444530402e-03, 1.812021059326267888e-03, 1.826336747943695278e-03, 1.840648732242356226e-03, 1.854956989175638154e-03, 1.869261495703367559e-03, 1.883562228793774374e-03, 1.897859165421268484e-03, 1.912152282568419697e-03, 1.926441557224532666e-03, 1.940726966386830841e-03, 1.955008487059981589e-03, 1.969286096255689397e-03, 1.983559770993650190e-03, 1.997829488300993835e-03, 2.012095225212597906e-03, 2.026356958770511758e-03, 2.040614666024966137e-03, 2.054868324033875312e-03, 2.069117909862453267e-03, 2.083363400584183848e-03, 2.097604773280215777e-03, 2.111842005039720870e-03, 2.126075072959300333e-03, 2.140303954143971382e-03, 2.154528625706725754e-03, 2.168749064768089527e-03, 2.182965248457283212e-03, 2.197177153910971452e-03, 2.211384758274411409e-03, 2.225588038701034697e-03, 2.239786972351989845e-03, 2.253981536397120684e-03, 2.268171708014400829e-03, 2.282357464390254165e-03, 2.296538782718981521e-03, 2.310715640203729951e-03, 2.324888014056072059e-03, 2.339055881495556277e-03, 2.353219219750683940e-03, 2.367378006058335101e-03, 2.381532217664108532e-03, 2.395681831821728884e-03, 2.409826825794022034e-03, 2.423967176852492682e-03, 2.438102862276869849e-03, 2.452233859356283460e-03, 2.466360145387817577e-03, 2.480481697678510108e-03, 2.494598493543138864e-03, 2.508710510306146231e-03, 2.522817725300289127e-03, 2.536920115867744019e-03, 2.551017659359710969e-03, 2.565110333135766588e-03, 2.579198114565670313e-03, 2.593280981027203808e-03, 2.607358909908054443e-03, 2.621431878604476955e-03, 2.635499864522409304e-03, 2.649562845077044204e-03, 2.663620797692386327e-03, 2.677673699802243269e-03, 2.691721528849781025e-03, 2.705764262287091611e-03, 2.719801877576327135e-03, 2.733834352188325902e-03, 2.747861663604530581e-03, 2.761883789314820235e-03, 2.775900706819297518e-03, 2.789912393627649433e-03, 2.803918827258778269e-03, 2.817919985241866716e-03, 2.831915845115045172e-03, 2.845906384427318147e-03, 2.859891580736350757e-03, 2.873871411610455420e-03, 2.887845854627165039e-03, 2.901814887374380095e-03, 2.915778487449951443e-03, 2.929736632461227546e-03, 2.943689300026022023e-03, 2.957636467772064605e-03, 2.971578113337296906e-03, 2.985514214369314277e-03, 2.999444748526346356e-03, 3.013369693476784794e-03, 3.027289026898799008e-03, 3.041202726481271202e-03, 3.055110769923233879e-03, 3.069013134934187297e-03, 3.082909799233713062e-03, 3.096800740551608998e-03, 3.110685936629078302e-03, 3.124565365216675199e-03, 3.138439004076252169e-03, 3.152306830979584307e-03, 3.166168823709505573e-03, 3.180024960059435642e-03, 3.193875217833000869e-03, 3.207719574844978411e-03, 3.221558008920702952e-03, 3.235390497896420154e-03, 3.249217019618714196e-03, 3.263037551945447562e-03, 3.276852072745360753e-03, 3.290660559897615189e-03, 3.304462991292779830e-03, 3.318259344832227061e-03, 3.332049598428509559e-03, 3.345833730004718880e-03, 3.359611717495518055e-03, 3.373383538846673208e-03, 3.387149172014627691e-03, 3.400908594967616636e-03, 3.414661785684329487e-03, 3.428408722155778295e-03, 3.442149382383201308e-03, 3.455883744379897437e-03, 3.469611786169927818e-03, 3.483333485789204351e-03, 3.497048821285053850e-03, 3.510757770715816888e-03, 3.524460312151783247e-03, 3.538156423674628133e-03, 3.551846083377729630e-03, 3.565529269365630503e-03, 3.579205959754951094e-03, 3.592876132673989038e-03, 3.606539766262286013e-03, 3.620196838671599620e-03, 3.633847328065441511e-03, 3.647491212618674938e-03, 3.661128470518643183e-03, 3.674759079963797834e-03, 3.688383019165551030e-03, 3.702000266346221983e-03, 3.715610799740870149e-03, 3.729214597595963826e-03, 3.742811638170467827e-03, 3.756401899735464876e-03, 3.769985360573529370e-03, 3.783561998980471651e-03, 3.797131793263219899e-03, 3.810694721741684967e-03, 3.824250762747449361e-03, 3.837799894624835829e-03, 3.851342095730491463e-03, 3.864877344432993914e-03, 3.878405619113745213e-03, 3.891926898166470430e-03, 3.905441159997465311e-03, 3.918948383025129198e-03, 3.932448545680790331e-03, 3.945941626408402264e-03, 3.959427603664044705e-03, 3.972906455917049780e-03, 3.986378161648652420e-03, 3.999842699353884680e-03, 4.013300047539599021e-03, 4.026750184725411998e-03, 4.040193089444680044e-03, 4.053628740242520151e-03, 4.067057115677727604e-03, 4.080478194321363918e-03, 4.093891954757920837e-03, 4.107298375584844154e-03, 4.120697435412182426e-03, 4.134089112863439594e-03, 4.147473386575106606e-03, 4.160850235196881727e-03, 4.174219637391226451e-03, 4.187581571834195562e-03, 4.200936017215071115e-03, 4.214282952235956503e-03, 4.227622355612826836e-03, 4.240954206074240042e-03, 4.254278482363146180e-03, 4.267595163234849144e-03, 4.280904227458670261e-03, 4.294205653817375831e-03, 4.307499421106805899e-03, 4.320785508136872587e-03, 4.334063893730351856e-03, 4.347334556724622573e-03, 4.360597475969656828e-03, 4.373852630329815375e-03, 4.387099998682595162e-03, 4.400339559919620724e-03, 4.413571292946308518e-03, 4.426795176681397673e-03, 4.440011190057921442e-03, 4.453219312022758773e-03, 4.466419521536248334e-03, 4.479611797573221539e-03, 4.492796119121782172e-03, 4.505972465185009018e-03, 4.519140814778999961e-03, 4.532301146934506093e-03, 4.545453440696354055e-03, 4.558597675123093884e-03, 4.571733829287982602e-03, 4.584861882277753431e-03, 4.597981813194391282e-03, 4.611093601153127414e-03, 4.624197225284199311e-03, 4.637292664731599949e-03, 4.650379898654108217e-03, 4.663458906224909883e-03, 4.676529666631165649e-03, 4.689592159074937490e-03, 4.702646362772626605e-03, 4.715692256955328170e-03, 4.728729820868235456e-03, 4.741759033771558371e-03, 4.754779874940170438e-03, 4.767792323663130015e-03, 4.780796359244627453e-03, 4.793791961003441258e-03, 4.806779108273256419e-03, 4.819757780402060716e-03, 4.832727956753164744e-03, 4.845689616704691033e-03, 4.858642739649225370e-03, 4.871587304994838552e-03, 4.884523292163857333e-03, 4.897450680594569658e-03, 4.910369449739451775e-03, 4.923279579066111057e-03, 4.936181048057613867e-03, 4.949073836211915697e-03, 4.961957923042315671e-03, 4.974833288076811223e-03, 4.987699910859086025e-03, 5.000557770948056355e-03, 5.013406847917482520e-03, 5.026247121356842290e-03, 5.039078570870851245e-03, 5.051901176079691760e-03, 5.064714916618585396e-03, 5.077519772138549235e-03, 5.090315722306133078e-03, 5.103102746802921572e-03, 5.115880825326625352e-03, 5.128649937589788675e-03, 5.141410063321567511e-03, 5.154161182265748486e-03, 5.166903274182492282e-03, 5.179636318847089839e-03, 5.192360296050960687e-03, 5.205075185601332026e-03, 5.217780967320608150e-03, 5.230477621048027111e-03, 5.243165126637682263e-03, 5.255843463960279544e-03, 5.268512612901849433e-03, 5.281172553364833766e-03, 5.293823265267610413e-03, 5.306464728544190573e-03, 5.319096923145034961e-03, 5.331719829036678238e-03, 5.344333426201339568e-03, 5.356937694637959116e-03, 5.369532614360925625e-03, 5.382118165401829357e-03, 5.394694327807502722e-03, 5.407261081641617957e-03, 5.419818406984123343e-03, 5.432366283930918811e-03, 5.444904692594774477e-03, 5.457433613104204807e-03, 5.469953025605071503e-03, 5.482462910258772450e-03, 5.494963247243838528e-03, 5.507454016754793902e-03, 5.519935199003123995e-03, 5.532406774216881706e-03, 5.544868722640338733e-03, 5.557321024534786144e-03, 5.569763660178111107e-03, 5.582196609864995517e-03, 5.594619853906464095e-03, 5.607033372630710125e-03, 5.619437146382725082e-03, 5.631831155523949091e-03, 5.644215380433062826e-03, 5.656589801505506991e-03, 5.668954399153792838e-03, 5.681309153806965266e-03, 5.693654045911465851e-03, 5.705989055930755539e-03, 5.718314164344929541e-03, 5.730629351651703521e-03, 5.742934598365366690e-03, 5.755229885017728968e-03, 5.767515192157809598e-03, 5.779790500351390456e-03, 5.792055790181905098e-03, 5.804311042249886247e-03, 5.816556237173322284e-03, 5.828791355587130754e-03, 5.841016378143957209e-03, 5.853231285513823060e-03, 5.865436058383803782e-03, 5.877630677458780921e-03, 5.889815123461003207e-03, 5.901989377130338089e-03, 5.914153419223792951e-03, 5.926307230516366861e-03, 5.938450791800618626e-03, 5.950584083886338062e-03, 5.962707087601540855e-03, 5.974819783791232575e-03, 5.986922153319067068e-03, 5.999014177065531937e-03, 6.011095835929524539e-03, 6.023167110827265178e-03, 6.035227982693160131e-03, 6.047278432479537974e-03, 6.059318441156165587e-03, 6.071347989711190982e-03, 6.083367059150555228e-03, 6.095375630498320318e-03, 6.107373684796174769e-03, 6.119361203104260218e-03, 6.131338166500786314e-03, 6.143304556081664695e-03, 6.155260352961350323e-03, 6.167205538272454643e-03, 6.179140093165406446e-03, 6.191063998809383413e-03, 6.202977236391144650e-03, 6.214879787116657853e-03, 6.226771632209276985e-03, 6.238652752911424092e-03, 6.250523130483269171e-03, 6.262382746203825658e-03, 6.274231581370560105e-03, 6.286069617298831007e-03, 6.297896835323456982e-03, 6.309713216796805982e-03, 6.321518743090502254e-03, 6.333313395594171273e-03, 6.345097155716497919e-03, 6.356870004884741625e-03, 6.368631924544477033e-03, 6.380382896160379826e-03, 6.392122901215681156e-03, 6.403851921212505051e-03, 6.415569937671388757e-03, 6.427276932132052964e-03, 6.438972886153073068e-03, 6.450657781311494934e-03, 6.462331599203786393e-03, 6.473994321444671504e-03, 6.485645929668794156e-03, 6.497286405528953854e-03, 6.508915730696973947e-03, 6.520533886864523891e-03, 6.532140855741415744e-03, 6.543736619057195780e-03, 6.555321158560079367e-03, 6.566894456017755011e-03, 6.578456493217151035e-03, 6.590007251963985423e-03, 6.601546714083637510e-03, 6.613074861420624971e-03, 6.624591675838877904e-03, 6.636097139221270452e-03, 6.647591233470436997e-03, 6.659073940508399188e-03, 6.670545242276181702e-03, 6.682005120734772416e-03, 6.693453557864017384e-03, 6.704890535664126579e-03, 6.716316036153951313e-03, 6.727730041372408445e-03, 6.739132533378012872e-03, 6.750523494248482012e-03, 6.761902906081699444e-03, 6.773270750994584734e-03, 6.784627011124624331e-03, 6.795971668628137709e-03, 6.807304705681878516e-03, 6.818626104481812465e-03, 6.829935847244125204e-03, 6.841233916204833738e-03, 6.852520293619412603e-03, 6.863794961763642136e-03, 6.875057902933219903e-03, 6.886309099443379059e-03, 6.897548533629843312e-03, 6.908776187847738386e-03, 6.919992044473084747e-03, 6.931196085901038598e-03, 6.942388294547401952e-03, 6.953568652848040633e-03, 6.964737143258635348e-03, 6.975893748255483987e-03, 6.987038450334481614e-03, 6.998171232012604520e-03, 7.009292075826222337e-03, 7.020400964332582094e-03, 7.031497880108756975e-03, 7.042582805752499800e-03, 7.053655723881956802e-03, 7.064716617135257358e-03, 7.075765468171305896e-03, 7.086802259669375097e-03, 7.097826974329262892e-03, 7.108839594870925566e-03, 7.119840104035227157e-03, 7.130828484583519658e-03, 7.141804719297407955e-03, 7.152768790979462804e-03, 7.163720682452741177e-03, 7.174660376561098514e-03, 7.185587856168695192e-03, 7.196503104160757204e-03, 7.207406103443244824e-03, 7.218296836942548166e-03, 7.229175287606302500e-03, 7.240041438402318799e-03, 7.250895272320182286e-03, 7.261736772369562810e-03, 7.272565921581124714e-03, 7.283382703006758413e-03, 7.294187099719155395e-03, 7.304979094812055415e-03, 7.315758671399896947e-03, 7.326525812618496329e-03, 7.337280501624685210e-03, 7.348022721596056406e-03, 7.358752455731656927e-03, 7.369469687251535214e-03, 7.380174399397025631e-03, 7.390866575430275753e-03, 7.401546198634993169e-03, 7.412213252316182666e-03, 7.422867719799664844e-03, 7.433509584433083996e-03, 7.444138829584790069e-03, 7.454755438645307986e-03, 7.465359395025661024e-03, 7.475950682158919065e-03, 7.486529283499045867e-03, 7.497095182521819334e-03, 7.507648362724500188e-03, 7.518188807625342772e-03, 7.528716500764957680e-03, 7.539231425704685449e-03, 7.549733566028014702e-03, 7.560222905339591612e-03, 7.570699427265975383e-03, 7.581163115455431811e-03, 7.591613953577542977e-03, 7.602051925323869037e-03, 7.612477014407764350e-03, 7.622889204564011444e-03, 7.633288479549523581e-03, 7.643674823142543318e-03, 7.654048219143855074e-03, 7.664408651375387814e-03, 7.674756103681317464e-03, 7.685090559927729506e-03, 7.695412004002362243e-03, 7.705720419815281601e-03, 7.716015791297992088e-03, 7.726298102404800285e-03, 7.736567337111230173e-03, 7.746823479415432603e-03, 7.757066513337175680e-03, 7.767296422918675697e-03, 7.777513192224226775e-03, 7.787716805340007438e-03, 7.797907246374659145e-03, 7.808084499458911587e-03, 7.818248548745852441e-03, 7.828399378410464196e-03, 7.838536972650330184e-03, 7.848661315685376977e-03, 7.858772391757425091e-03, 7.868870185131082370e-03, 7.878954680093143773e-03, 7.889025860952919231e-03, 7.899083712041832933e-03, 7.909128217714066905e-03, 7.919159362346266107e-03, 7.929177130337229651e-03, 7.939181506108748676e-03, 7.949172474104652247e-03, 7.959150018791723291e-03, 7.969114124659310017e-03, 7.979064776219034483e-03, 7.989001958005467405e-03, 7.998925654575819374e-03, 8.008835850509966880e-03, 8.018732530410238937e-03, 8.028615678902015565e-03, 8.038485280633446764e-03, 8.048341320275067406e-03, 8.058183782520633373e-03, 8.068012652086557768e-03, 8.077827913712233576e-03, 8.087629552159584373e-03, 8.097417552213785966e-03, 8.107191898682889961e-03, 8.116952576397620800e-03, 8.126699570212055773e-03, 8.136432865002754186e-03, 8.146152445670047995e-03, 8.155858297136501373e-03, 8.165550404348326241e-03, 8.175228752274405625e-03, 8.184893325906985803e-03, 8.194544110261497635e-03, 8.204181090376176655e-03, 8.213804251312796859e-03, 8.223413578156143350e-03, 8.233009056014437346e-03, 8.242590670018730761e-03, 8.252158405323709381e-03, 8.261712247107356327e-03, 8.271252180570632870e-03, 8.280778190938154967e-03, 8.290290263457926120e-03, 8.299788383400962671e-03, 8.309272536062173309e-03, 8.318742706759304356e-03, 8.328198880834346632e-03, 8.337641043651984607e-03, 8.347069180600939081e-03, 8.356483277093040840e-03, 8.365883318563952301e-03, 8.375269290472941996e-03, 8.384641178302397121e-03, 8.393998967559063856e-03, 8.403342643772586731e-03, 8.412672192496818344e-03, 8.421987599308776787e-03, 8.431288849809589342e-03, 8.440575929624081347e-03, 8.449848824400439662e-03, 8.459107519811014109e-03, 8.468352001551767566e-03, 8.477582255342631587e-03, 8.486798266927010267e-03, 8.496000022072520974e-03, 8.505187506570550254e-03, 8.514360706236212203e-03, 8.523519606908853269e-03, 8.532664194451269890e-03, 8.541794454750917601e-03, 8.550910373718665497e-03, 8.560011937289335737e-03, 8.569099131422447738e-03, 8.578171942100774883e-03, 8.587230355331746182e-03, 8.596274357146419312e-03, 8.605303933600282063e-03, 8.614319070772967837e-03, 8.623319754767953815e-03, 8.632305971713183715e-03, 8.641277707760722585e-03, 8.650234949086919867e-03, 8.659177681892088474e-03, 8.668105892401075513e-03, 8.677019566863062791e-03, 8.685918691551164361e-03, 8.694803252763309495e-03, 8.703673236821130726e-03, 8.712528630071462651e-03, 8.721369418884775473e-03, 8.730195589656309513e-03, 8.739007128805783772e-03, 8.747804022777085423e-03, 8.756586258038876955e-03, 8.765353821083909230e-03, 8.774106698430064050e-03, 8.782844876619136376e-03, 8.791568342217876905e-03, 8.800277081817318992e-03, 8.808971082033309474e-03, 8.817650329506330001e-03, 8.826314810901196919e-03, 8.834964512907668432e-03, 8.843599422240120203e-03, 8.852219525637651173e-03, 8.860824809863944787e-03, 8.869415261707308887e-03, 8.877990867981355727e-03, 8.886551615523785932e-03, 8.895097491197581988e-03, 8.903628481890442717e-03, 8.912144574514615017e-03, 8.920645756007643257e-03, 8.929132013331465487e-03, 8.937603333473508049e-03, 8.946059703445533723e-03, 8.954501110284635718e-03, 8.962927541052580216e-03, 8.971338982836312911e-03, 8.979735422747787271e-03, 8.988116847923713001e-03, 8.996483245526090342e-03, 9.004834602741903019e-03, 9.013170906783262229e-03, 9.021492144887160308e-03, 9.029798304315880125e-03, 9.038089372356948245e-03, 9.046365336322659614e-03, 9.054626183550856452e-03, 9.062871901404378344e-03, 9.071102477271421327e-03, 9.079317898565142375e-03, 9.087518152724185019e-03, 9.095703227212474651e-03, 9.103873109518934026e-03, 9.112027787158199707e-03, 9.120167247669704394e-03, 9.128291478618931129e-03, 9.136400467596129601e-03, 9.144494202217003098e-03, 9.152572670122920140e-03, 9.160635858980459983e-03, 9.168683756481828956e-03, 9.176716350344381670e-03, 9.184733628311160525e-03, 9.192735578150798559e-03, 9.200722187657080567e-03, 9.208693444649640458e-03, 9.216649336973558801e-03, 9.224589852499577927e-03, 9.232514979123690804e-03, 9.240424704767869618e-03, 9.248319017379635562e-03, 9.256197904931881895e-03, 9.264061355423543545e-03, 9.271909356878760972e-03, 9.279741897347992124e-03, 9.287558964906836301e-03, 9.295360547656948344e-03, 9.303146633725509554e-03, 9.310917211265638815e-03, 9.318672268456285046e-03, 9.326411793501809128e-03, 9.334135774633045557e-03, 9.341844200106011811e-03, 9.349537058203048062e-03, 9.357214337232001855e-03, 9.364876025526894243e-03, 9.372522111447591925e-03, 9.380152583379722242e-03, 9.387767429735013186e-03, 9.395366638951211866e-03, 9.402950199491780930e-03, 9.410518099846502255e-03, 9.418070328530765700e-03, 9.425606874086542297e-03, 9.433127725081282694e-03, 9.440632870108897276e-03, 9.448122297789273913e-03, 9.455595996768203365e-03, 9.463053955717904905e-03, 9.470496163336349776e-03, 9.477922608348163247e-03, 9.485333279503663576e-03, 9.492728165579672125e-03, 9.500107255378937438e-03, 9.507470537730648708e-03, 9.514818001490217211e-03, 9.522149635539075077e-03, 9.529465428785148864e-03, 9.536765370162623642e-03, 9.544049448631969010e-03, 9.551317653179812461e-03, 9.558569972819343577e-03, 9.565806396590060753e-03, 9.573026913557602935e-03, 9.580231512814238806e-03, 9.587420183478592706e-03, 9.594592914695686259e-03, 9.601749695636858581e-03, 9.608890515500042098e-03, 9.616015363509651526e-03, 9.623124228916384373e-03, 9.630217100997696261e-03, 9.637293969057294379e-03, 9.644354822425546883e-03, 9.651399650459540139e-03, 9.658428442542502795e-03, 9.665441188084569063e-03, 9.672437876522424829e-03, 9.679418497319302456e-03, 9.686383039964996389e-03, 9.693331493976015817e-03, 9.700263848895631508e-03, 9.707180094293501108e-03, 9.714080219766252008e-03, 9.720964214937038994e-03, 9.727832069455899858e-03, 9.734683772999333864e-03, 9.741519315270860332e-03, 9.748338686000680361e-03, 9.755141874945603975e-03, 9.761928871889535841e-03, 9.768699666642790061e-03, 9.775454249043065078e-03, 9.782192608954314375e-03, 9.788914736267795985e-03, 9.795620620901258901e-03, 9.802310252799636969e-03, 9.808983621934689798e-03, 9.815640718304902146e-03, 9.822281531935917603e-03, 9.828906052880276648e-03, 9.835514271217454807e-03, 9.842106177053793273e-03, 9.848681760522745229e-03, 9.855241011784832486e-03, 9.861783921027352309e-03, 9.868310478464838859e-03, 9.874820674338917470e-03, 9.881314498917952507e-03, 9.887791942497815845e-03, 9.894252995400995218e-03, 9.900697647977628121e-03, 9.907125890604457502e-03, 9.913537713685745961e-03, 9.919933107652592272e-03, 9.926312062963430979e-03, 9.932674570103924849e-03, 9.939020619586663025e-03, 9.945350201951846242e-03, 9.951663307766454164e-03, 9.957959927625055496e-03, 9.964240052149145321e-03, 9.970503671987741845e-03, 9.976750777817070676e-03, 9.982981360340483293e-03, 9.989195410288786645e-03, 9.995392918420125186e-03, 1.000157387551990976e-02, 1.000773827240076727e-02, 1.001388609990289634e-02, 1.002001734889384869e-02, 1.002613201026827591e-02, 1.003223007494858168e-02, 1.003831153388424872e-02, 1.004437637805255176e-02, 1.005042459845792609e-02, 1.005645618613213756e-02, 1.006247113213490883e-02, 1.006846942755288375e-02, 1.007445106350056234e-02, 1.008041603111972141e-02, 1.008636432157977714e-02, 1.009229592607768962e-02, 1.009821083583777035e-02, 1.010410904211211762e-02, 1.010999053618025049e-02, 1.011585530934937770e-02, 1.012170335295406974e-02, 1.012753465835676547e-02, 1.013334921694741993e-02, 1.013914702014347656e-02, 1.014492805939028186e-02, 1.015069232616045043e-02, 1.015643981195482604e-02, 1.016217050830135922e-02, 1.016788440675601285e-02, 1.017358149890244638e-02, 1.017926177635178515e-02, 1.018492523074324835e-02, 1.019057185374335449e-02, 1.019620163704687901e-02, 1.020181457237588629e-02, 1.020741065148060914e-02, 1.021298986613867511e-02, 1.021855220815582645e-02, 1.022409766936552451e-02, 1.022962624162894116e-02, 1.023513791683522411e-02, 1.024063268690129924e-02, 1.024611054377201104e-02, 1.025157147941999081e-02, 1.025701548584564277e-02, 1.026244255507765060e-02, 1.026785267917213786e-02, 1.027324585021345375e-02, 1.027862206031380544e-02, 1.028398130161323025e-02, 1.028932356627984546e-02, 1.029464884650953954e-02, 1.029995713452653769e-02, 1.030524842258262810e-02, 1.031052270295791141e-02, 1.031577996796022127e-02, 1.032102020992560140e-02, 1.032624342121814601e-02, 1.033144959422977772e-02, 1.033663872138064314e-02, 1.034181079511893066e-02, 1.034696580792091036e-02, 1.035210375229076926e-02, 1.035722462076097555e-02, 1.036232840589207047e-02, 1.036741510027261622e-02, 1.037248469651932785e-02, 1.037753718727713916e-02, 1.038257256521909686e-02, 1.038759082304627733e-02, 1.039259195348804683e-02, 1.039757594930200250e-02, 1.040254280327372431e-02, 1.040749250821722260e-02, 1.041242505697442117e-02, 1.041734044241586499e-02, 1.042223865744000902e-02, 1.042711969497357033e-02, 1.043198354797158882e-02, 1.043683020941742028e-02, 1.044165967232262709e-02, 1.044647192972695399e-02, 1.045126697469855870e-02, 1.045604480033390793e-02, 1.046080539975761600e-02, 1.046554876612276752e-02, 1.047027489261073176e-02, 1.047498377243125632e-02, 1.047967539882225727e-02, 1.048434976505019899e-02, 1.048900686440987565e-02, 1.049364669022432445e-02, 1.049826923584519164e-02, 1.050287449465215836e-02, 1.050746246005376111e-02, 1.051203312548661291e-02, 1.051658648441588031e-02, 1.052112253033506660e-02, 1.052564125676623032e-02, 1.053014265725985520e-02, 1.053462672539468535e-02, 1.053909345477830814e-02, 1.054354283904639956e-02, 1.054797487186339387e-02, 1.055238954692202906e-02, 1.055678685794365912e-02, 1.056116679867813435e-02, 1.056552936290371288e-02, 1.056987454442735036e-02, 1.057420233708443458e-02, 1.057851273473888777e-02, 1.058280573128324818e-02, 1.058708132063847403e-02, 1.059133949675435810e-02, 1.059558025360898652e-02, 1.059980358520917591e-02, 1.060400948559036584e-02, 1.060819794881647134e-02, 1.061236896898014662e-02, 1.061652254020248841e-02, 1.062065865663352517e-02, 1.062477731245160296e-02, 1.062887850186390246e-02, 1.063296221910613529e-02, 1.063702845844272799e-02, 1.064107721416688440e-02, 1.064510848060023183e-02, 1.064912225209326685e-02, 1.065311852302514364e-02, 1.065709728780371568e-02, 1.066105854086545936e-02, 1.066500227667568045e-02, 1.066892848972833714e-02, 1.067283717454607823e-02, 1.067672832568036974e-02, 1.068060193771138908e-02, 1.068445800524811529e-02, 1.068829652292812432e-02, 1.069211748541787528e-02, 1.069592088741266531e-02, 1.069970672363637632e-02, 1.070347498884186531e-02, 1.070722567781062264e-02, 1.071095878535310852e-02, 1.071467430630846512e-02, 1.071837223554460844e-02, 1.072205256795839660e-02, 1.072571529847547549e-02, 1.072936042205031686e-02, 1.073298793366616807e-02, 1.073659782833521516e-02, 1.074019010109852207e-02, 1.074376474702585377e-02, 1.074732176121597632e-02, 1.075086113879650772e-02, 1.075438287492395603e-02, 1.075788696478363095e-02, 1.076137340358983459e-02, 1.076484218658575569e-02, 1.076829330904338113e-02, 1.077172676626376308e-02, 1.077514255357666338e-02, 1.077854066634106184e-02, 1.078192109994463056e-02, 1.078528384980404799e-02, 1.078862891136491385e-02, 1.079195628010180298e-02, 1.079526595151829131e-02, 1.079855792114679455e-02, 1.080183218454873993e-02, 1.080508873731461129e-02, 1.080832757506379124e-02, 1.081154869344456808e-02, 1.081475208813434917e-02, 1.081793775483955167e-02, 1.082110568929540301e-02, 1.082425588726630347e-02, 1.082738834454565792e-02, 1.083050305695578558e-02, 1.083360002034812475e-02, 1.083667923060298299e-02, 1.083974068362996389e-02, 1.084278437536743793e-02, 1.084581030178300223e-02, 1.084881845887317002e-02, 1.085180884266356491e-02, 1.085478144920892958e-02, 1.085773627459288813e-02, 1.086067331492834853e-02, 1.086359256635709147e-02, 1.086649402505014163e-02, 1.086937768720744150e-02, 1.087224354905812901e-02, 1.087509160686044030e-02, 1.087792185690160222e-02, 1.088073429549803184e-02, 1.088352891899522015e-02, 1.088630572376779980e-02, 1.088906470621938023e-02, 1.089180586278286691e-02, 1.089452918992018203e-02, 1.089723468412235122e-02, 1.089992234190963541e-02, 1.090259215983127757e-02, 1.090524413446582880e-02, 1.090787826242083959e-02, 1.091049454033305062e-02, 1.091309296486843092e-02, 1.091567353272192460e-02, 1.091823624061783078e-02, 1.092078108530944967e-02, 1.092330806357933240e-02, 1.092581717223918732e-02, 1.092830840812984185e-02, 1.093078176812139167e-02, 1.093323724911301510e-02, 1.093567484803316218e-02, 1.093809456183936213e-02, 1.094049638751844016e-02, 1.094288032208638566e-02, 1.094524636258827760e-02, 1.094759450609855515e-02, 1.094992474972073838e-02, 1.095223709058766939e-02, 1.095453152586125731e-02, 1.095680805273273328e-02, 1.095906666842252908e-02, 1.096130737018019552e-02, 1.096353015528465751e-02, 1.096573502104387920e-02, 1.096792196479530988e-02, 1.097009098390537736e-02, 1.097224207576986098e-02, 1.097437523781375976e-02, 1.097649046749128374e-02, 1.097858776228593722e-02, 1.098066711971040256e-02, 1.098272853730665466e-02, 1.098477201264588116e-02, 1.098679754332862642e-02, 1.098880512698448275e-02, 1.099079476127247552e-02, 1.099276644388088101e-02, 1.099472017252708239e-02, 1.099665594495785083e-02, 1.099857375894924480e-02, 1.100047361230650431e-02, 1.100235550286420873e-02, 1.100421942848607733e-02, 1.100606538706529539e-02, 1.100789337652417939e-02, 1.100970339481439561e-02, 1.101149543991681960e-02, 1.101326950984167670e-02, 1.101502560262840151e-02, 1.101676371634580619e-02, 1.101848384909189134e-02, 1.102018599899399175e-02, 1.102187016420875035e-02, 1.102353634292205752e-02, 1.102518453334909963e-02, 1.102681473373440767e-02, 1.102842694235166981e-02, 1.103002115750405243e-02, 1.103159737752390686e-02, 1.103315560077292035e-02, 1.103469582564202064e-02, 1.103621805055145406e-02, 1.103772227395088783e-02, 1.103920849431910128e-02, 1.104067671016434500e-02, 1.104212692002399902e-02, 1.104355912246491808e-02, 1.104497331608318179e-02, 1.104636949950416752e-02, 1.104774767138255037e-02, 1.104910783040237779e-02, 1.105044997527694813e-02, 1.105177410474890952e-02, 1.105308021759011591e-02, 1.105436831260189420e-02, 1.105563838861475627e-02, 1.105689044448858287e-02, 1.105812447911254381e-02, 1.105934049140511709e-02, 1.106053848031407841e-02, 1.106171844481656195e-02, 1.106288038391899965e-02, 1.106402429665709342e-02, 1.106515018209592791e-02, 1.106625803932976930e-02, 1.106734786748238275e-02, 1.106841966570669238e-02, 1.106947343318503973e-02, 1.107050916912894617e-02, 1.107152687277938689e-02, 1.107252654340659150e-02, 1.107350818031004394e-02, 1.107447178281865605e-02, 1.107541735029053502e-02, 1.107634488211318990e-02, 1.107725437770331299e-02, 1.107814583650709034e-02, 1.107901925799986871e-02, 1.107987464168632558e-02, 1.108071198710047084e-02, 1.108153129380564338e-02, 1.108233256139446246e-02, 1.108311578948882777e-02, 1.108388097773995058e-02, 1.108462812582837985e-02, 1.108535723346393449e-02, 1.108606830038574680e-02, 1.108676132636223811e-02, 1.108743631119112928e-02, 1.108809325469947357e-02, 1.108873215674352312e-02, 1.108935301720896140e-02, 1.108995583601068112e-02, 1.109054061309285022e-02, 1.109110734842894651e-02, 1.109165604202179585e-02, 1.109218669390343512e-02, 1.109269930413521975e-02, 1.109319387280775782e-02, 1.109367040004100545e-02, 1.109412888598416969e-02, 1.109456933081569112e-02, 1.109499173474333238e-02, 1.109539609800415383e-02, 1.109578242086443033e-02, 1.109615070361975007e-02, 1.109650094659494178e-02, 1.109683315014415445e-02, 1.109714731465074634e-02, 1.109744344052736309e-02, 1.109772152821589426e-02, 1.109798157818754627e-02, 1.109822359094271398e-02, 1.109844756701108132e-02, 1.109865350695154670e-02, 1.109884141135236008e-02, 1.109901128083085921e-02, 1.109916311603377850e-02, 1.109929691763701133e-02, 1.109941268634571411e-02, 1.109951042289424906e-02, 1.109959012804631086e-02, 1.109965180259468720e-02, 1.109969544736150518e-02, 1.109972106319805432e-02, 1.109972865098490628e-02, 1.109971821163176740e-02, 1.109968974607764003e-02, 1.109964325529069415e-02, 1.109957874026836974e-02, 1.109949620203723626e-02, 1.109939564165313836e-02, 1.109927706020103974e-02, 1.109914045879520361e-02, 1.109898583857902091e-02, 1.109881320072509704e-02, 1.109862254643517558e-02, 1.109841387694032559e-02, 1.109818719350063113e-02, 1.109794249740544275e-02, 1.109767978997329083e-02, 1.109739907255183171e-02, 1.109710034651790848e-02, 1.109678361327752841e-02, 1.109644887426590107e-02, 1.109609613094729788e-02, 1.109572538481524290e-02, 1.109533663739234802e-02, 1.109492989023035982e-02, 1.109450514491025150e-02, 1.109406240304197828e-02, 1.109360166626480702e-02, 1.109312293624700047e-02, 1.109262621468599941e-02, 1.109211150330836025e-02, 1.109157880386971162e-02, 1.109102811815488969e-02, 1.109045944797773173e-02, 1.108987279518122183e-02, 1.108926816163746318e-02, 1.108864554924763116e-02, 1.108800495994195605e-02, 1.108734639567982537e-02, 1.108666985844965376e-02, 1.108597535026892116e-02, 1.108526287318421441e-02, 1.108453242927118568e-02, 1.108378402063450729e-02, 1.108301764940790822e-02, 1.108223331775424689e-02, 1.108143102786530824e-02, 1.108061078196204488e-02, 1.107977258229429253e-02, 1.107891643114107712e-02, 1.107804233081035976e-02, 1.107715028363909227e-02, 1.107624029199331429e-02, 1.107531235826807528e-02, 1.107436648488734597e-02, 1.107340267430415373e-02, 1.107242092900048019e-02, 1.107142125148742953e-02, 1.107040364430489539e-02, 1.106936811002187486e-02, 1.106831465123625340e-02, 1.106724327057494878e-02, 1.106615397069381571e-02, 1.106504675427764060e-02, 1.106392162404020579e-02, 1.106277858272417675e-02, 1.106161763310116279e-02, 1.106043877797177263e-02, 1.105924202016546169e-02, 1.105802736254065353e-02, 1.105679480798458375e-02, 1.105554435941351506e-02, 1.105427601977259158e-02, 1.105298979203578509e-02, 1.105168567920597825e-02, 1.105036368431493166e-02, 1.104902381042337060e-02, 1.104766606062070403e-02, 1.104629043802540615e-02, 1.104489694578460537e-02, 1.104348558707445721e-02, 1.104205636509983379e-02, 1.104060928309449040e-02, 1.103914434432102382e-02, 1.103766155207083766e-02, 1.103616090966411112e-02, 1.103464242044986839e-02, 1.103310608780598556e-02, 1.103155191513899812e-02, 1.102997990588433681e-02, 1.102839006350618892e-02, 1.102678239149753985e-02, 1.102515689338001877e-02, 1.102351357270416575e-02, 1.102185243304917156e-02, 1.102017347802305286e-02, 1.101847671126244925e-02, 1.101676213643284705e-02, 1.101502975722832428e-02, 1.101327957737183172e-02, 1.101151160061489623e-02, 1.100972583073779945e-02, 1.100792227154950322e-02, 1.100610092688767729e-02, 1.100426180061860222e-02, 1.100240489663727346e-02, 1.100053021886734407e-02, 1.099863777126114731e-02, 1.099672755779956997e-02, 1.099479958249228312e-02, 1.099285384937742117e-02, 1.099089036252184383e-02, 1.098890912602095392e-02, 1.098691014399886395e-02, 1.098489342060821050e-02, 1.098285896003016460e-02, 1.098080676647462603e-02, 1.097873684417990763e-02, 1.097664919741303015e-02, 1.097454383046938056e-02, 1.097242074767310407e-02, 1.097027995337676760e-02, 1.096812145196151243e-02, 1.096594524783690502e-02, 1.096375134544110355e-02, 1.096153974924082147e-02, 1.095931046373116793e-02, 1.095706349343575879e-02, 1.095479884290674957e-02, 1.095251651672467068e-02, 1.095021651949861126e-02, 1.094789885586597462e-02, 1.094556353049279049e-02, 1.094321054807336456e-02, 1.094083991333049018e-02, 1.093845163101538238e-02, 1.093604570590761028e-02, 1.093362214281525316e-02, 1.093118094657460730e-02, 1.092872212205052256e-02, 1.092624567413604843e-02, 1.092375160775274981e-02, 1.092123992785043289e-02, 1.091871063940727526e-02, 1.091616374742983807e-02, 1.091359925695284915e-02, 1.091101717303957080e-02, 1.090841750078135573e-02, 1.090580024529802169e-02, 1.090316541173755142e-02, 1.090051300527620538e-02, 1.089784303111858942e-02, 1.089515549449747954e-02, 1.089245040067395205e-02, 1.088972775493720659e-02, 1.088698756260483499e-02, 1.088422982902257155e-02, 1.088145455956423223e-02, 1.087866175963200614e-02, 1.087585143465617625e-02, 1.087302359009516967e-02, 1.087017823143566694e-02, 1.086731536419237136e-02, 1.086443499390830902e-02, 1.086153712615441080e-02, 1.085862176652992693e-02, 1.085568892066206270e-02, 1.085273859420625778e-02, 1.084977079284597280e-02, 1.084678552229269809e-02, 1.084378278828608544e-02, 1.084076259659377643e-02, 1.083772495301149087e-02, 1.083466986336295047e-02, 1.083159733349997600e-02, 1.082850736930230859e-02, 1.082539997667767394e-02, 1.082227516156194190e-02, 1.081913292991880729e-02, 1.081597328774003448e-02, 1.081279624104519721e-02, 1.080960179588205672e-02, 1.080638995832606392e-02, 1.080316073448072019e-02, 1.079991413047743862e-02, 1.079665015247550063e-02, 1.079336880666213923e-02, 1.079007009925233955e-02, 1.078675403648903137e-02, 1.078342062464305272e-02, 1.078006987001297982e-02, 1.077670177892533013e-02, 1.077331635773427602e-02, 1.076991361282202131e-02, 1.076649355059838657e-02, 1.076305617750097227e-02, 1.075960149999536167e-02, 1.075612952457464730e-02, 1.075264025775980042e-02, 1.074913370609950104e-02, 1.074560987617018820e-02, 1.074206877457596458e-02, 1.073851040794862773e-02, 1.073493478294771514e-02, 1.073134190626041928e-02, 1.072773178460165004e-02, 1.072410442471371378e-02, 1.072045983336698122e-02, 1.071679801735906865e-02, 1.071311898351544160e-02, 1.070942273868906794e-02, 1.070570928976046117e-02, 1.070197864363787651e-02, 1.069823080725696741e-02, 1.069446578758099890e-02, 1.069068359160073658e-02, 1.068688422633462011e-02, 1.068306769882843010e-02, 1.067923401615547899e-02, 1.067538318541669771e-02, 1.067151521374030791e-02, 1.066763010828208381e-02, 1.066372787622530197e-02, 1.065980852478052264e-02, 1.065587206118598536e-02, 1.065191849270695837e-02, 1.064794782663651580e-02, 1.064396007029477786e-02, 1.063995523102947462e-02, 1.063593331621558516e-02, 1.063189433325536191e-02, 1.062783828957861339e-02, 1.062376519264215426e-02, 1.061967504993038998e-02, 1.061556786895479290e-02, 1.061144365725430298e-02, 1.060730242239499646e-02, 1.060314417197016218e-02, 1.059896891360051843e-02, 1.059477665493377754e-02, 1.059056740364502057e-02, 1.058634116743634515e-02, 1.058209795403729052e-02, 1.057783777120432749e-02, 1.057356062672112733e-02, 1.056926652839863985e-02, 1.056495548407475338e-02, 1.056062750161462088e-02, 1.055628258891028876e-02, 1.055192075388113396e-02, 1.054754200447341646e-02, 1.054314634866047699e-02, 1.053873379444281340e-02, 1.053430434984772325e-02, 1.052985802292985378e-02, 1.052539482177040908e-02, 1.052091475447792905e-02, 1.051641782918779147e-02, 1.051190405406235949e-02, 1.050737343729081681e-02, 1.050282598708939322e-02, 1.049826171170122231e-02, 1.049368061939626867e-02, 1.048908271847134172e-02, 1.048446801725026398e-02, 1.047983652408356059e-02, 1.047518824734873163e-02, 1.047052319544985316e-02, 1.046584137681807677e-02, 1.046114279991118209e-02, 1.045642747321371899e-02, 1.045169540523713941e-02, 1.044694660451944875e-02, 1.044218107962557179e-02, 1.043739883914687923e-02, 1.043259989170174616e-02, 1.042778424593497101e-02, 1.042295191051824214e-02, 1.041810289414970940e-02, 1.041323720555423736e-02, 1.040835485348338453e-02, 1.040345584671515181e-02, 1.039854019405424615e-02, 1.039360790433184467e-02, 1.038865898640588085e-02, 1.038369344916062822e-02, 1.037871130150691372e-02, 1.037371255238222871e-02, 1.036869721075036471e-02, 1.036366528560163196e-02, 1.035861678595295134e-02, 1.035355172084751266e-02, 1.034847009935511812e-02, 1.034337193057165497e-02, 1.033825722361984660e-02, 1.033312598764839219e-02, 1.032797823183271083e-02, 1.032281396537430666e-02, 1.031763319750104296e-02, 1.031243593746733467e-02, 1.030722219455361931e-02, 1.030199197806678894e-02, 1.029674529733981027e-02, 1.029148216173219298e-02, 1.028620258062943986e-02, 1.028090656344333477e-02, 1.027559411961196864e-02, 1.027026525859946887e-02, 1.026491998989619708e-02, 1.025955832301860167e-02, 1.025418026750944331e-02, 1.024878583293744108e-02, 1.024337502889734706e-02, 1.023794786501027593e-02, 1.023250435092306482e-02, 1.022704449630900368e-02, 1.022156831086693321e-02, 1.021607580432212260e-02, 1.021056698642555834e-02, 1.020504186695446978e-02, 1.019950045571184349e-02, 1.019394276252661054e-02, 1.018836879725383039e-02, 1.018277856977430063e-02, 1.017717208999463496e-02, 1.017154936784765359e-02, 1.016591041329172745e-02, 1.016025523631116680e-02, 1.015458384691606507e-02, 1.014889625514252790e-02, 1.014319247105217696e-02, 1.013747250473250559e-02, 1.013173636629686840e-02, 1.012598406588418459e-02, 1.012021561365935261e-02, 1.011443101981257357e-02, 1.010863029456008678e-02, 1.010281344814357302e-02, 1.009698049083060031e-02, 1.009113143291417297e-02, 1.008526628471282174e-02, 1.007938505657104966e-02, 1.007348775885840916e-02, 1.006757440197053946e-02, 1.006164499632817080e-02, 1.005569955237793286e-02, 1.004973808059169728e-02, 1.004376059146683785e-02, 1.003776709552640575e-02, 1.003175760331867679e-02, 1.002573212541744106e-02, 1.001969067242182605e-02, 1.001363325495647875e-02, 1.000755988367151190e-02, 1.000147056924194887e-02, 9.995365322368656921e-03, 9.989244153777561419e-03, 9.983107074219829680e-03, 9.976954094472179763e-03, 9.970785225336254234e-03, 9.964600477639355691e-03, 9.958399862233457966e-03, 9.952183389996257373e-03, 9.945951071830319221e-03, 9.939702918663598230e-03, 9.933438941448989243e-03, 9.927159151164585693e-03, 9.920863558813733385e-03, 9.914552175424697425e-03, 9.908225012050830491e-03, 9.901882079770572831e-03, 9.895523389687452265e-03, 9.889148952929969691e-03, 9.882758780651501943e-03, 9.876352884030659141e-03, 9.869931274270783358e-03, 9.863493962600236586e-03, 9.857040960272220320e-03, 9.850572278565049647e-03, 9.844087928781681401e-03, 9.837587922249946618e-03, 9.831072270322777779e-03, 9.824540984377544417e-03, 9.817994075816838945e-03, 9.811431556067517351e-03, 9.804853436581632484e-03, 9.798259728835896284e-03, 9.791650444331591319e-03, 9.785025594594768533e-03, 9.778385191176110214e-03, 9.771729245651197132e-03, 9.765057769619946496e-03, 9.758370774706955422e-03, 9.751668272561608494e-03, 9.744950274857751629e-03, 9.738216793293714632e-03, 9.731467839592401400e-03, 9.724703425501411355e-03, 9.717923562792579739e-03, 9.711128263262340174e-03, 9.704317538731684761e-03, 9.697491401045831017e-03, 9.690649862074735346e-03, 9.683792933712211809e-03, 9.676920627877052747e-03, 9.670032956511963665e-03, 9.663129931584302224e-03, 9.656211565085531801e-03, 9.649277869031362004e-03, 9.642328855462060921e-03, 9.635364536441915623e-03, 9.628384924059455938e-03, 9.621390030427405884e-03, 9.614379867682905714e-03, 9.607354447986994964e-03, 9.600313783524907357e-03, 9.593257886506199178e-03, 9.586186769164315585e-03, 9.579100443756767558e-03, 9.571998922565399040e-03, 9.564882217895767647e-03, 9.557750342077835082e-03, 9.550603307465023450e-03, 9.543441126435243949e-03, 9.536263811390039910e-03, 9.529071374755121102e-03, 9.521863828979971675e-03, 9.514641186537926495e-03, 9.507403459926459105e-03, 9.500150661666408036e-03, 9.492882804302969074e-03, 9.485599900404741158e-03, 9.478301962564446292e-03, 9.470989003398284228e-03, 9.463661035546241246e-03, 9.456318071672284442e-03, 9.448960124463756313e-03, 9.441587206631858742e-03, 9.434199330911274828e-03, 9.426796510060592160e-03, 9.419378756861827504e-03, 9.411946084120499656e-03, 9.404498504665972924e-03, 9.397036031350823951e-03, 9.389558677051618868e-03, 9.382066454667775321e-03, 9.374559377122769835e-03, 9.367037457363237493e-03, 9.359500708359240820e-03, 9.351949143104526518e-03, 9.344382774615802092e-03, 9.336801615933683005e-03, 9.329205680121476635e-03, 9.321594980266332403e-03, 9.313969529478613799e-03, 9.306329340891761337e-03, 9.298674427662630831e-03, 9.291004802971156856e-03, 9.283320480020765611e-03, 9.275621472037816340e-03, 9.267907792271854600e-03, 9.260179453995747573e-03, 9.252436470505222624e-03, 9.244678855119517827e-03, 9.236906621180276944e-03, 9.229119782052904244e-03, 9.221318351125417853e-03, 9.213502341808840063e-03, 9.205671767537434991e-03, 9.197826641768123979e-03, 9.189966977981186419e-03, 9.182092789679147798e-03, 9.174204090388077271e-03, 9.166300893656496515e-03, 9.158383213056092709e-03, 9.150451062181100964e-03, 9.142504454648604437e-03, 9.134543404098634939e-03, 9.126567924193815587e-03, 9.118578028619487436e-03, 9.110573731083688662e-03, 9.102555045317354057e-03, 9.094521985073850123e-03, 9.086474564129136400e-03, 9.078412796282046490e-03, 9.070336695353779788e-03, 9.062246275188059336e-03, 9.054141549651456219e-03, 9.046022532632648841e-03, 9.037889238043269463e-03, 9.029741679816823477e-03, 9.021579871909865544e-03, 9.013403828300937948e-03, 9.005213562991281825e-03, 8.997009090004347981e-03, 8.988790423385828107e-03, 8.980557577204072855e-03, 8.972310565549455191e-03, 8.964049402534699992e-03, 8.955774102294714045e-03, 8.947484678986893092e-03, 8.939181146790551105e-03, 8.930863519907237744e-03, 8.922531812560854578e-03, 8.914186038997269981e-03, 8.905826213484398929e-03, 8.897452350312300140e-03, 8.889064463793283632e-03, 8.880662568261445816e-03, 8.872246678072891538e-03, 8.863816807605964798e-03, 8.855372971260664153e-03, 8.846915183459305373e-03, 8.838443458645548270e-03, 8.829957811285529465e-03, 8.821458255866837170e-03, 8.812944806899234568e-03, 8.804417478914009290e-03, 8.795876286464268320e-03, 8.787321244125189529e-03, 8.778752366493355538e-03, 8.770169668187093731e-03, 8.761573163846691353e-03, 8.752962868133829996e-03, 8.744338795731923866e-03, 8.735700961345911619e-03, 8.727049379702603304e-03, 8.718384065550088824e-03, 8.709705033658015488e-03, 8.701012298817804858e-03, 8.692305875842023036e-03, 8.683585779565145685e-03, 8.674852024842425249e-03, 8.666104626551242307e-03, 8.657343599589834016e-03, 8.648568958878225660e-03, 8.639780719357441352e-03, 8.630978895989887406e-03, 8.622163503759622954e-03, 8.613334557671263603e-03, 8.604492072751355330e-03, 8.595636064047219166e-03, 8.586766546627681504e-03, 8.577883535582466953e-03, 8.568987046022455076e-03, 8.560077093079907634e-03, 8.551153691907904808e-03, 8.542216857680608871e-03, 8.533266605593227763e-03, 8.524302950862108763e-03, 8.515325908724677775e-03, 8.506335494438738501e-03, 8.497331723283726643e-03, 8.488314610559556314e-03, 8.479284171587057189e-03, 8.470240421708191345e-03, 8.461183376285343755e-03, 8.452113050702217412e-03, 8.443029460362558303e-03, 8.433932620691622986e-03, 8.424822547134827241e-03, 8.415699255158689759e-03, 8.406562760250143457e-03, 8.397413077916740173e-03, 8.388250223686926493e-03, 8.379074213109495572e-03, 8.369885061753842143e-03, 8.360682785209863632e-03, 8.351467399088215171e-03, 8.342238919019777030e-03, 8.332997360655855848e-03, 8.323742739668543722e-03, 8.314475071749970539e-03, 8.305194372612794904e-03, 8.295900657989942195e-03, 8.286593943634932430e-03, 8.277274245321273108e-03, 8.267941578842787076e-03, 8.258595960013841511e-03, 8.249237404668572499e-03, 8.239865928661863417e-03, 8.230481547868075121e-03, 8.221084278182230753e-03, 8.211674135519476253e-03, 8.202251135814764629e-03, 8.192815295023221991e-03, 8.183366629119937646e-03, 8.173905154100260737e-03, 8.164430885979309313e-03, 8.154943840792011969e-03, 8.145444034593647339e-03, 8.135931483459068678e-03, 8.126406203483024782e-03, 8.116868210780074991e-03, 8.107317521484904907e-03, 8.097754151751668933e-03, 8.088178117754278237e-03, 8.078589435686671372e-03, 8.068988121762108237e-03, 8.059374192214059998e-03, 8.049747663294866407e-03, 8.040108551277274501e-03, 8.030456872453099401e-03, 8.020792643134161057e-03, 8.011115879651429031e-03, 8.001426598355490874e-03, 7.991724815616670086e-03, 7.982010547824462329e-03, 7.972283811387904928e-03, 7.962544622735327066e-03, 7.952792998314755710e-03, 7.943028954593239072e-03, 7.933252508057158855e-03, 7.923463675212518223e-03, 7.913662472584242699e-03, 7.903848916716643344e-03, 7.894023024173085420e-03, 7.884184811536382176e-03, 7.874334295408586676e-03, 7.864471492410223322e-03, 7.854596419181691241e-03, 7.844709092381906002e-03, 7.834809528689265848e-03, 7.824897744800857202e-03, 7.814973757432775586e-03, 7.805037583320484709e-03, 7.795089239217634254e-03, 7.785128741897511841e-03, 7.775156108151747188e-03, 7.765171354791313048e-03, 7.755174498645566773e-03, 7.745165556562742110e-03, 7.735144545410125271e-03, 7.725111482073406151e-03, 7.715066383457111140e-03, 7.705009266484303884e-03, 7.694940148097084882e-03, 7.684859045255756221e-03, 7.674765974939291684e-03, 7.664660954145497210e-03, 7.654543999890340428e-03, 7.644415129208775514e-03, 7.634274359153508070e-03, 7.624121706796473975e-03, 7.613957189227521863e-03, 7.603780823554955222e-03, 7.593592626905761381e-03, 7.583392616424791850e-03, 7.573180809275822239e-03, 7.562957222640017026e-03, 7.552721873717561062e-03, 7.542474779726708080e-03, 7.532215957903659262e-03, 7.521945425502940541e-03, 7.511663199797009687e-03, 7.501369298076874734e-03, 7.491063737651193662e-03, 7.480746535846707207e-03, 7.470417710008513817e-03, 7.460077277499224842e-03, 7.449725255700007098e-03, 7.439361662009127442e-03, 7.428986513843587741e-03, 7.418599828637772661e-03, 7.408201623843899825e-03, 7.397791916932405787e-03, 7.387370725390962449e-03, 7.376938066725634985e-03, 7.366493958459377836e-03, 7.356038418133692240e-03, 7.345571463307080592e-03, 7.335093111556221721e-03, 7.324603380475037603e-03, 7.314102287674998683e-03, 7.303589850785498563e-03, 7.293066087453116755e-03, 7.282531015341969088e-03, 7.271984652133593220e-03, 7.261427015527268693e-03, 7.250858123239328247e-03, 7.240277993003441451e-03, 7.229686642571064858e-03, 7.219084089710526946e-03, 7.208470352207453115e-03, 7.197845447865101366e-03, 7.187209394503452434e-03, 7.176562209960297457e-03, 7.165903912089721835e-03, 7.155234518763834740e-03, 7.144554047871182721e-03, 7.133862517317879001e-03, 7.123159945026803774e-03, 7.112446348937717829e-03, 7.101721747007828933e-03, 7.090986157210882844e-03, 7.080239597537684587e-03, 7.069482085995814832e-03, 7.058713640610086992e-03, 7.047934279421747515e-03, 7.037144020488889616e-03, 7.026342881886720425e-03, 7.015530881706816789e-03, 7.004708038057603191e-03, 6.993874369064086334e-03, 6.983029892868217701e-03, 6.972174627628288136e-03, 6.961308591519126468e-03, 6.950431802732508040e-03, 6.939544279476237039e-03, 6.928646039975241110e-03, 6.917737102470053467e-03, 6.906817485218530277e-03, 6.895887206494252103e-03, 6.884946284587754699e-03, 6.873994737805477762e-03, 6.863032584470237646e-03, 6.852059842921594257e-03, 6.841076531514526590e-03, 6.830082668620915919e-03, 6.819078272628812873e-03, 6.808063361942124324e-03, 6.797037954980987215e-03, 6.786002070181582947e-03, 6.774955725996492130e-03, 6.763898940893982477e-03, 6.752831733358306311e-03, 6.741754121890129910e-03, 6.730666125005484862e-03, 6.719567761237004062e-03, 6.708459049132306680e-03, 6.697340007255764976e-03, 6.686210654186926575e-03, 6.675071008521643763e-03, 6.663921088871161032e-03, 6.652760913862442067e-03, 6.641590502138649404e-03, 6.630409872357788739e-03, 6.619219043194291864e-03, 6.608018033337631492e-03, 6.596806861493371629e-03, 6.585585546382202206e-03, 6.574354106740341527e-03, 6.563112561319884089e-03, 6.551860928887976582e-03, 6.540599228227314023e-03, 6.529327478135890823e-03, 6.518045697427261864e-03, 6.506753904930458361e-03, 6.495452119489035503e-03, 6.484140359962730846e-03, 6.472818645225955105e-03, 6.461486994168372418e-03, 6.450145425695172699e-03, 6.438793958726162642e-03, 6.427432612196927117e-03, 6.416061405057202870e-03, 6.404680356272666152e-03, 6.393289484823385348e-03, 6.381888809704911250e-03, 6.370478349927348981e-03, 6.359058124515742233e-03, 6.347628152510377715e-03, 6.336188452966048761e-03, 6.324739044952448243e-03, 6.313279947553984695e-03, 6.301811179870171753e-03, 6.290332761014884831e-03, 6.278844710116695919e-03, 6.267347046319208387e-03, 6.255839788780286764e-03, 6.244322956672524252e-03, 6.232796569182930471e-03, 6.221260645513477031e-03, 6.209715204880229301e-03, 6.198160266513731524e-03, 6.186595849659334671e-03, 6.175021973576322147e-03, 6.163438657538948019e-03, 6.151845920834948626e-03, 6.140243782767290312e-03, 6.128632262652496283e-03, 6.117011379821948522e-03, 6.105381153620785366e-03, 6.093741603408378560e-03, 6.082092748558609076e-03, 6.070434608459094293e-03, 6.058767202511564434e-03, 6.047090550132160069e-03, 6.035404670750655828e-03, 6.023709583810992960e-03, 6.012005308770876008e-03, 6.000291865102396448e-03, 5.988569272291064706e-03, 5.976837549836348795e-03, 5.965096717251851255e-03, 5.953346794064511179e-03, 5.941587799815651987e-03, 5.929819754059406298e-03, 5.918042676364577287e-03, 5.906256586312914371e-03, 5.894461503500357871e-03, 5.882657447536053692e-03, 5.870844438042726286e-03, 5.859022494657011720e-03, 5.847191637028660571e-03, 5.835351884821059210e-03, 5.823503257710860304e-03, 5.811645775388513645e-03, 5.799779457557508074e-03, 5.787904323934603065e-03, 5.776020394250306646e-03, 5.764127688247981142e-03, 5.752226225684415641e-03, 5.740316026329387970e-03, 5.728397109966212875e-03, 5.716469496391408944e-03, 5.704533205413847737e-03, 5.692588256856432986e-03, 5.680634670554386700e-03, 5.668672466356538923e-03, 5.656701664124261751e-03, 5.644722283731890868e-03, 5.632734345067199125e-03, 5.620737868029935906e-03, 5.608732872533603482e-03, 5.596719378503866270e-03, 5.584697405879707026e-03, 5.572666974612441523e-03, 5.560628104666131416e-03, 5.548580816017912969e-03, 5.536525128657153114e-03, 5.524461062585998491e-03, 5.512388637819035445e-03, 5.500307874383795689e-03, 5.488218792319930588e-03, 5.476121411679587582e-03, 5.464015752527771018e-03, 5.451901834941347280e-03, 5.439779679010265170e-03, 5.427649304835859348e-03, 5.415510732532737709e-03, 5.403363982227269574e-03, 5.391209074058066208e-03, 5.379046028176352919e-03, 5.366874864744996740e-03, 5.354695603939733754e-03, 5.342508265947430897e-03, 5.330312870967865782e-03, 5.318109439212743983e-03, 5.305897990905503875e-03, 5.293678546281724295e-03, 5.281451125588776732e-03, 5.269215749086375231e-03, 5.256972437045709032e-03, 5.244721209749822477e-03, 5.232462087493970626e-03, 5.220195090584685976e-03, 5.207920239340885216e-03, 5.195637554092278482e-03, 5.183347055181208168e-03, 5.171048762961129308e-03, 5.158742697797101366e-03, 5.146428880066184625e-03, 5.134107330156424502e-03, 5.121778068468105759e-03, 5.109441115412013436e-03, 5.097096491411310694e-03, 5.084744216899945470e-03, 5.072384312323767637e-03, 5.060016798139554094e-03, 5.047641694815410349e-03, 5.035259022831133947e-03, 5.022868802677354916e-03, 5.010471054856045769e-03, 4.998065799880219671e-03, 4.985653058274442176e-03, 4.973232850574020245e-03, 4.960805197325265058e-03, 4.948370119085996818e-03, 4.935927636424623614e-03, 4.923477769920514384e-03, 4.911020540164407443e-03, 4.898555967757371385e-03, 4.886084073312058421e-03, 4.873604877450999143e-03, 4.861118400808502049e-03, 4.848624664028900605e-03, 4.836123687767882040e-03, 4.823615492691397076e-03, 4.811100099476063249e-03, 4.798577528809546550e-03, 4.786047801389702733e-03, 4.773510937925096002e-03, 4.760966959134678086e-03, 4.748415885748302583e-03, 4.735857738505912240e-03, 4.723292538157823454e-03, 4.710720305465211123e-03, 4.698141061199177966e-03, 4.685554826141271473e-03, 4.672961621083231501e-03, 4.660361466827460386e-03, 4.647754384186139967e-03, 4.635140393981675676e-03, 4.622519517047038277e-03, 4.609891774224758598e-03, 4.597257186368143567e-03, 4.584615774339582256e-03, 4.571967559012480101e-03, 4.559312561269492949e-03, 4.546650802003804684e-03, 4.533982302118086394e-03, 4.521307082524917038e-03, 4.508625164147226673e-03, 4.495936567916836678e-03, 4.483241314776149379e-03, 4.470539425677180941e-03, 4.457830921581361870e-03, 4.445115823459957691e-03, 4.432394152293732403e-03, 4.419665929073460231e-03, 4.406931174799066930e-03, 4.394189910480021839e-03, 4.381442157135714312e-03, 4.368687935794430231e-03, 4.355927267494608818e-03, 4.343160173283086220e-03, 4.330386674217030600e-03, 4.317606791362270727e-03, 4.304820545794478190e-03, 4.292027958598137842e-03, 4.279229050867001428e-03, 4.266423843704537748e-03, 4.253612358222368800e-03, 4.240794615542292471e-03, 4.227970636794420312e-03, 4.215140443118490718e-03, 4.202304055662866265e-03, 4.189461495584851161e-03, 4.176612784051138803e-03, 4.163757942236924470e-03, 4.150896991326371091e-03, 4.138029952512397615e-03, 4.125156846996997327e-03, 4.112277695991039227e-03, 4.099392520713315662e-03, 4.086501342392325625e-03, 4.073604182264632841e-03, 4.060701061575440821e-03, 4.047792001578988386e-03, 4.034877023537511431e-03, 4.021956148722477184e-03, 4.009029398412825192e-03, 3.996096793897003022e-03, 3.983158356471103168e-03, 3.970214107440241287e-03, 3.957264068117396540e-03, 3.944308259823918993e-03, 3.931346703889833198e-03, 3.918379421652988179e-03, 3.905406434459617743e-03, 3.892427763663934559e-03, 3.879443430628772872e-03, 3.866453456724620093e-03, 3.853457863330053516e-03, 3.840456671832095936e-03, 3.827449903625340915e-03, 3.814437580112519603e-03, 3.801419722704117363e-03, 3.788396352818978324e-03, 3.775367491883347380e-03, 3.762333161331320348e-03, 3.749293382605199156e-03, 3.736248177154472255e-03, 3.723197566437067094e-03, 3.710141571917575064e-03, 3.697080215069277649e-03, 3.684013517372321939e-03, 3.670941500315012557e-03, 3.657864185392797288e-03, 3.644781594108584526e-03, 3.631693747973219893e-03, 3.618600668504558162e-03, 3.605502377227844460e-03, 3.592398895676119763e-03, 3.579290245389330112e-03, 3.566176447914869586e-03, 3.553057524807256336e-03, 3.539933497628642602e-03, 3.526804387947954280e-03, 3.513670217341266066e-03, 3.500531007392226023e-03, 3.487386779690957068e-03, 3.474237555835385342e-03, 3.461083357429414406e-03, 3.447924206084960076e-03, 3.434760123420135033e-03, 3.421591131060563312e-03, 3.408417250638287425e-03, 3.395238503792185995e-03, 3.382054912168397029e-03, 3.368866497419373794e-03, 3.355673281204425186e-03, 3.342475285189452482e-03, 3.329272531047411214e-03, 3.316065040457482401e-03, 3.302852835105394777e-03, 3.289635936683904874e-03, 3.276414366891827312e-03, 3.263188147434602487e-03, 3.249957300023980419e-03, 3.236721846378426675e-03, 3.223481808222897291e-03, 3.210237207287824392e-03, 3.196988065310980582e-03, 3.183734404035647950e-03, 3.170476245211955538e-03, 3.157213610595784731e-03, 3.143946521949150894e-03, 3.130675001040812699e-03, 3.117399069644582500e-03, 3.104118749541354225e-03, 3.090834062517288858e-03, 3.077545030365161447e-03, 3.064251674883203616e-03, 3.050954017875591884e-03, 3.037652081152816298e-03, 3.024345886530754087e-03, 3.011035455831238654e-03, 2.997720810881723472e-03, 2.984401973515845435e-03, 2.971078965572495918e-03, 2.957751808896219321e-03, 2.944420525337640687e-03, 2.931085136752367183e-03, 2.917745665002318203e-03, 2.904402131953879619e-03, 2.891054559479969404e-03, 2.877702969458362323e-03, 2.864347383772238107e-03, 2.850987824310593881e-03, 2.837624312967171672e-03, 2.824256871641771596e-03, 2.810885522238410449e-03, 2.797510286667250715e-03, 2.784131186843469535e-03, 2.770748244687127725e-03, 2.757361482123567038e-03, 2.743970921083046296e-03, 2.730576583501343781e-03, 2.717178491318797927e-03, 2.703776666480731464e-03, 2.690371130937867315e-03, 2.676961906645233986e-03, 2.663549015563484394e-03, 2.650132479657048377e-03, 2.636712320896230852e-03, 2.623288561255485759e-03, 2.609861222713995028e-03, 2.596430327256107028e-03, 2.582995896870199457e-03, 2.569557953550049775e-03, 2.556116519292944787e-03, 2.542671616101788330e-03, 2.529223265983257269e-03, 2.515771490949093424e-03, 2.502316313015031518e-03, 2.488857754201218107e-03, 2.475395836532617508e-03, 2.461930582038084590e-03, 2.448462012750914248e-03, 2.434990150708521775e-03, 2.421515017953001017e-03, 2.408036636530175908e-03, 2.394555028490041523e-03, 2.381070215887148758e-03, 2.367582220779681449e-03, 2.354091065230031875e-03, 2.340596771304439497e-03, 2.327099361073428543e-03, 2.313598856611615018e-03, 2.300095279996605159e-03, 2.286588653310932685e-03, 2.273078998640208712e-03, 2.259566338074438414e-03, 2.246050693706933346e-03, 2.232532087634733417e-03, 2.219010541959014118e-03, 2.205486078784150202e-03, 2.191958720218285112e-03, 2.178428488372976656e-03, 2.164895405363792026e-03, 2.151359493309348923e-03, 2.137820774331729290e-03, 2.124279270556910394e-03, 2.110735004113812024e-03, 2.097187997134862016e-03, 2.083638271755666651e-03, 2.070085850115573143e-03, 2.056530754356739391e-03, 2.042973006624525592e-03, 2.029412629067938768e-03, 2.015849643838522973e-03, 2.002284073091683755e-03, 1.988715938984844146e-03, 1.975145263679528498e-03, 1.961572069339492883e-03, 1.947996378132079267e-03, 1.934418212227085546e-03, 1.920837593797225257e-03, 1.907254545018653409e-03, 1.893669088069298333e-03, 1.880081245130772911e-03, 1.866491038387294282e-03, 1.852898490025478486e-03, 1.839303622234777407e-03, 1.825706457207129001e-03, 1.812107017137529327e-03, 1.798505324223082999e-03, 1.784901400663433182e-03, 1.771295268661161881e-03, 1.757686950420720698e-03, 1.744076468149722116e-03, 1.730463844057113926e-03, 1.716849100355260236e-03, 1.703232259258078600e-03, 1.689613342982356240e-03, 1.675992373746684706e-03, 1.662369373771861898e-03, 1.648744365281445880e-03, 1.635117370500079352e-03, 1.621488411655561124e-03, 1.607857510976993219e-03, 1.594224690696107935e-03, 1.580589973046168896e-03, 1.566953380262393024e-03, 1.553314934582371212e-03, 1.539674658245115957e-03, 1.526032573491638593e-03, 1.512388702564605595e-03, 1.498743067708903885e-03, 1.485095691170708635e-03, 1.471446595197889191e-03, 1.457795802040439499e-03, 1.444143333949515556e-03, 1.430489213177865400e-03, 1.416833461980255204e-03, 1.403176102612352762e-03, 1.389517157332071252e-03, 1.375856648397703321e-03, 1.362194598070018805e-03, 1.348531028610397940e-03, 1.334865962282166243e-03, 1.321199421349496207e-03, 1.307531428077816915e-03, 1.293862004734253361e-03, 1.280191173586662807e-03, 1.266518956904204860e-03, 1.252845376957010788e-03, 1.239170456016756199e-03, 1.225494216355704335e-03, 1.211816680247120893e-03, 1.198137869965717897e-03, 1.184457807786683551e-03, 1.170776515986256218e-03, 1.157094016841393952e-03, 1.143410332630340675e-03, 1.129725485631674891e-03, 1.116039498124735347e-03, 1.102352392390041269e-03, 1.088664190708182357e-03, 1.074974915361166881e-03, 1.061284588630541890e-03, 1.047593232799499821e-03, 1.033900870151016052e-03, 1.020207522969177267e-03, 1.006513213538075789e-03, 9.928179641422480318e-04, 9.791217970670721815e-04, 9.654247345978362194e-04, 9.517267990201452562e-04, 9.380280126203546700e-04, 9.243283976846085282e-04, 9.106279764994242975e-04, 8.969267713513392852e-04, 8.832248045274961089e-04, 8.695220983146823100e-04, 8.558186749997601312e-04, 8.421145568700769959e-04, 8.284097662123730658e-04, 8.147043253141106897e-04, 8.009982564616115273e-04, 7.872915819421538296e-04, 7.735843240421029499e-04, 7.598765050482595481e-04, 7.461681472467371172e-04, 7.324592729234026024e-04, 7.187499043642813510e-04, 7.050400638546212287e-04, 6.913297736794536946e-04, 6.776190561232604088e-04, 6.639079334705410293e-04, 6.501964280048681127e-04, 6.364845620093065922e-04, 6.227723577668320626e-04, 6.090598375593831880e-04, 5.953470236684358947e-04, 5.816339383746559934e-04, 5.679206039583292818e-04, 5.542070426991690989e-04, 5.404932768752076198e-04, 5.267793287647550091e-04, 5.130652206445176795e-04, 4.993509747909469308e-04, 4.856366134791294318e-04, 4.719221589832085415e-04, 4.582076335769630555e-04, 4.444930595320875535e-04, 4.307784591202941794e-04, 4.170638546114457533e-04, 4.033492682748958998e-04, 3.896347223783784455e-04, 3.759202391884332393e-04, 3.622058409708310512e-04, 3.484915499896127527e-04, 3.347773885076725086e-04, 3.210633787864120795e-04, 3.073495430863157200e-04, 2.936359036660002005e-04, 2.799224827826329301e-04, 2.662093026923590777e-04, 2.524963856491917289e-04, 2.387837539063536669e-04, 2.250714297144064196e-04, 2.113594353233542349e-04, 1.976477929809270298e-04, 1.839365249331542586e-04, 1.702256534247899745e-04, 1.565152006982050998e-04, 1.428051889947269855e-04, 1.290956405527707881e-04, 1.153865776097876461e-04, 1.016780224011621677e-04, 8.796999716002134055e-05, 7.426252411765728930e-05, 6.055562550318665296e-05, 4.684932354412475140e-05, 3.314364046543368290e-05, 1.943859848994387553e-05, 5.734219838777317318e-06, -7.969473269758584085e-06, -2.167245861883128496e-05, -3.537471399495304255e-05, -4.907621718587737821e-05, -6.277694598231618598e-05, -7.647687817736340628e-05, -9.017599156607444355e-05, -1.038742639465697079e-04, -1.175716731186966893e-04, -1.312681968858982683e-04, -1.449638130531112341e-04, -1.586584994286333755e-04, -1.723522338227868357e-04, -1.860449940490208412e-04, -1.997367579234913290e-04, -2.134275032646378641e-04, -2.271172078941346474e-04, -2.408058496363188971e-04, -2.544934063185269515e-04, -2.681798557705256862e-04, -2.818651758254578301e-04, -2.955493443194246827e-04, -3.092323390910630050e-04, -3.229141379824937495e-04, -3.365947188387511204e-04, -3.502740595081221451e-04, -3.639521378417235101e-04, -3.776289316936914595e-04, -3.913044189222868673e-04, -4.049785773879436743e-04, -4.186513849551368053e-04, -4.323228194910497930e-04, -4.459928588666705815e-04, -4.596614809563734578e-04, -4.733286636375019047e-04, -4.869943847913083337e-04, -5.006586223023911124e-04, -5.143213540590264388e-04, -5.279825579526001116e-04, -5.416422118785562062e-04, -5.553002937359751041e-04, -5.689567814271497860e-04, -5.826116528585422068e-04, -5.962648859402002116e-04, -6.099164585861066492e-04, -6.235663487136004074e-04, -6.372145342443302947e-04, -6.508609931038259128e-04, -6.645057032210878283e-04, -6.781486425296780630e-04, -6.917897889663908624e-04, -7.054291204731188243e-04, -7.190666149947461854e-04, -7.327022504810244913e-04, -7.463360048852265595e-04, -7.599678561652562685e-04, -7.735977822832210572e-04, -7.872257612048640194e-04, -8.008517709012684871e-04, -8.144757893469192593e-04, -8.280977945208023092e-04, -8.417177644065906156e-04, -8.553356769922237099e-04, -8.689515102702498502e-04, -8.825652422372551884e-04, -8.961768508947995458e-04, -9.097863142490131977e-04, -9.233936103101601572e-04, -9.369987170937461212e-04, -9.506016126191915152e-04, -9.642022749116745291e-04, -9.778006820000575798e-04, -9.913968119187254683e-04, -1.004990642706277181e-03, -1.018582152406603478e-03, -1.032171319068479450e-03, -1.045758120744989675e-03, -1.059342535495228464e-03, -1.072924541382214722e-03, -1.086504116474754393e-03, -1.100081238846093009e-03, -1.113655886575037196e-03, -1.127228037745506674e-03, -1.140797670446138312e-03, -1.154364762771220923e-03, -1.167929292820127580e-03, -1.181491238697646076e-03, -1.195050578513415359e-03, -1.208607290382876379e-03, -1.222161352426831679e-03, -1.235712742771052268e-03, -1.249261439547199844e-03, -1.262807420892420214e-03, -1.276350664948921109e-03, -1.289891149865062024e-03, -1.303428853794041898e-03, -1.316963754895728814e-03, -1.330495831334591126e-03, -1.344025061281552743e-03, -1.357551422912649372e-03, -1.371074894410140473e-03, -1.384595453962073411e-03, -1.398113079761880784e-03, -1.411627750009320425e-03, -1.425139442909881910e-03, -1.438648136675171017e-03, -1.452153809522284574e-03, -1.465656439674801201e-03, -1.479156005362335926e-03, -1.492652484820117340e-03, -1.506145856289958394e-03, -1.519636098019655967e-03, -1.533123188263339765e-03, -1.546607105280909831e-03, -1.560087827338971569e-03, -1.573565332710413116e-03, -1.587039599673996382e-03, -1.600510606515440385e-03, -1.613978331526107202e-03, -1.627442753004838816e-03, -1.640903849255876106e-03, -1.654361598590726274e-03, -1.667815979326818000e-03, -1.681266969788596053e-03, -1.694714548307104307e-03, -1.708158693219583068e-03, -1.721599382870386309e-03, -1.735036595610571410e-03, -1.748470309797492146e-03, -1.761900503795729364e-03, -1.775327155976518965e-03, -1.788750244718089735e-03, -1.802169748405111271e-03, -1.815585645429607965e-03, -1.828997914190556764e-03, -1.842406533093467148e-03, -1.855811480551465553e-03, -1.869212734983995844e-03, -1.882610274818616921e-03, -1.896004078488980902e-03, -1.909394124436634413e-03, -1.922780391109717331e-03, -1.936162856964062382e-03, -1.949541500462732618e-03, -1.962916300075666885e-03, -1.976287234280565182e-03, -1.989654281562354583e-03, -2.003017420413502354e-03, -2.016376629333467129e-03, -2.029731886829619619e-03, -2.043083171416838848e-03, -2.056430461617090189e-03, -2.069773735960355604e-03, -2.083112972984082871e-03, -2.096448151233500437e-03, -2.109779249261218431e-03, -2.123106245627409943e-03, -2.136429118900887852e-03, -2.149747847657188394e-03, -2.163062410480422974e-03, -2.176372785961930723e-03, -2.189678952701414310e-03, -2.202980889306452045e-03, -2.216278574392013898e-03, -2.229571986582071751e-03, -2.242861104507584084e-03, -2.256145906808301824e-03, -2.269426372131474242e-03, -2.282702479132921007e-03, -2.295974206476602414e-03, -2.309241532834239476e-03, -2.322504436886214680e-03, -2.335762897321025985e-03, -2.349016892835604272e-03, -2.362266402134765610e-03, -2.375511403932146267e-03, -2.388751876949749085e-03, -2.401987799917587423e-03, -2.415219151574714285e-03, -2.428445910667959874e-03, -2.441668055953686266e-03, -2.454885566195823265e-03, -2.468098420167473463e-03, -2.481306596650371434e-03, -2.494510074434475207e-03, -2.507708832319054375e-03, -2.520902849111350454e-03, -2.534092103628420890e-03, -2.547276574695096427e-03, -2.560456241145767867e-03, -2.573631081823128403e-03, -2.586801075579199267e-03, -2.599966201274951563e-03, -2.613126437779884296e-03, -2.626281763972947679e-03, -2.639432158742127232e-03, -2.652577600984047396e-03, -2.665718069605023215e-03, -2.678853543519785739e-03, -2.691984001653257089e-03, -2.705109422938545543e-03, -2.718229786318600034e-03, -2.731345070745638554e-03, -2.744455255180740499e-03, -2.757560318594932600e-03, -2.770660239967879645e-03, -2.783754998289674713e-03, -2.796844572558839902e-03, -2.809928941784118304e-03, -2.823008084983158212e-03, -2.836081981183609466e-03, -2.849150609422685873e-03, -2.862213948746795706e-03, -2.875271978212418176e-03, -2.888324676885569136e-03, -2.901372023842125909e-03, -2.914413998167276511e-03, -2.927450578956418675e-03, -2.940481745314766499e-03, -2.953507476356964905e-03, -2.966527751207941391e-03, -2.979542549002414664e-03, -2.992551848885194755e-03, -3.005555630010775785e-03, -3.018553871543522456e-03, -3.031546552658719550e-03, -3.044533652540724888e-03, -3.057515150384715764e-03, -3.070491025395456850e-03, -3.083461256788303309e-03, -3.096425823788861217e-03, -3.109384705632521791e-03, -3.122337881565381227e-03, -3.135285330843733727e-03, -3.148227032734350356e-03, -3.161162966513949516e-03, -3.174093111470094233e-03, -3.187017446900784496e-03, -3.199935952114088197e-03, -3.212848606428997649e-03, -3.225755389174914372e-03, -3.238656279691963513e-03, -3.251551257330442205e-03, -3.264440301451728126e-03, -3.277323391427882683e-03, -3.290200506641231641e-03, -3.303071626485426342e-03, -3.315936730364175619e-03, -3.328795797692995270e-03, -3.341648807897249114e-03, -3.354495740413888493e-03, -3.367336574690183316e-03, -3.380171290184800191e-03, -3.392999866367366144e-03, -3.405822282717928685e-03, -3.418638518728589915e-03, -3.431448553901656016e-03, -3.444252367750698894e-03, -3.457049939800684556e-03, -3.469841249587619220e-03, -3.482626276658867641e-03, -3.495405000572554630e-03, -3.508177400898563388e-03, -3.520943457218035904e-03, -3.533703149123007363e-03, -3.546456456217497288e-03, -3.559203358116155153e-03, -3.571943834446093986e-03, -3.584677864844875491e-03, -3.597405428962271220e-03, -3.610126506459015745e-03, -3.622841077007826673e-03, -3.635549120293000893e-03, -3.648250616009915837e-03, -3.660945543866577293e-03, -3.673633883581702529e-03, -3.686315614886427703e-03, -3.698990717523078370e-03, -3.711659171246195141e-03, -3.724320955822126890e-03, -3.736976051028670365e-03, -3.749624436655904589e-03, -3.762266092505696467e-03, -3.774900998391989178e-03, -3.787529134140301713e-03, -3.800150479588567613e-03, -3.812765014586762431e-03, -3.825372718996537282e-03, -3.837973572692041958e-03, -3.850567555559471743e-03, -3.863154647497275569e-03, -3.875734828415867625e-03, -3.888308078237748353e-03, -3.900874376898504081e-03, -3.913433704345081407e-03, -3.925986040537426947e-03, -3.938531365447293410e-03, -3.951069659059265257e-03, -3.963600901370336292e-03, -3.976125072389548841e-03, -3.988642152138846368e-03, -4.001152120652582550e-03, -4.013654957977765003e-03, -4.026150644173597318e-03, -4.038639159312315194e-03, -4.051120483478791792e-03, -4.063594596770182116e-03, -4.076061479296743534e-03, -4.088521111181369141e-03, -4.100973472559857509e-03, -4.113418543580382725e-03, -4.125856304404392112e-03, -4.138286735206209849e-03, -4.150709816172610221e-03, -4.163125527503908768e-03, -4.175533849412649962e-03, -4.187934762125353205e-03, -4.200328245880620252e-03, -4.212714280930789264e-03, -4.225092847540727441e-03, -4.237463925988847573e-03, -4.249827496566725531e-03, -4.262183539578674393e-03, -4.274532035342689003e-03, -4.286872964189971519e-03, -4.299206306464610494e-03, -4.311532042524397063e-03, -4.323850152740356563e-03, -4.336160617496989667e-03, -4.348463417191814409e-03, -4.360758532236184114e-03, -4.373045943054936109e-03, -4.385325630085955446e-03, -4.397597573781233948e-03, -4.409861754605642892e-03, -4.422118153038577526e-03, -4.434366749572106990e-03, -4.446607524712651791e-03, -4.458840458979733933e-03, -4.471065532907042908e-03, -4.483282727041971658e-03, -4.495492021945302584e-03, -4.507693398192041956e-03, -4.519886836370888214e-03, -4.532072317084514732e-03, -4.544249820949130061e-03, -4.556419328595274175e-03, -4.568580820667421209e-03, -4.580734277823635126e-03, -4.592879680736436203e-03, -4.605017010092246794e-03, -4.617146246591689700e-03, -4.629267370949118054e-03, -4.641380363893431518e-03, -4.653485206167700707e-03, -4.665581878528786419e-03, -4.677670361748346647e-03, -4.689750636611762780e-03, -4.701822683919095434e-03, -4.713886484484767006e-03, -4.725942019136982267e-03, -4.737989268719314771e-03, -4.750028214088774375e-03, -4.762058836117531550e-03, -4.774081115691663178e-03, -4.786095033712189917e-03, -4.798100571094653793e-03, -4.810097708768768660e-03, -4.822086427679254592e-03, -4.834066708785320944e-03, -4.846038533060980334e-03, -4.858001881494515214e-03, -4.869956735089359980e-03, -4.881903074863685500e-03, -4.893840881850033964e-03, -4.905770137096309401e-03, -4.917690821664585932e-03, -4.929602916632722792e-03, -4.941506403092577569e-03, -4.953401262151446889e-03, -4.965287474931595439e-03, -4.977165022569913361e-03, -4.989033886218777539e-03, -5.000894047045009033e-03, -5.012745486231389228e-03, -5.024588184974947656e-03, -5.036422124488437388e-03, -5.048247285999312405e-03, -5.060063650750592362e-03, -5.071871200000546004e-03, -5.083669915022285234e-03, -5.095459777104614264e-03, -5.107240767551659254e-03, -5.119012867682482329e-03, -5.130776058832072113e-03, -5.142530322350158042e-03, -5.154275639602802841e-03, -5.166011991970673872e-03, -5.177739360850378003e-03, -5.189457727654117267e-03, -5.201167073809204004e-03, -5.212867380759101700e-03, -5.224558629962188123e-03, -5.236240802893422398e-03, -5.247913881042525278e-03, -5.259577845915552538e-03, -5.271232679033789094e-03, -5.282878361934638910e-03, -5.294514876171322292e-03, -5.306142203312476033e-03, -5.317760324942975673e-03, -5.329369222663427226e-03, -5.340968878090489834e-03, -5.352559272856366630e-03, -5.364140388609604446e-03, -5.375712207014727781e-03, -5.387274709751914414e-03, -5.398827878517774292e-03, -5.410371695024862940e-03, -5.421906141001966821e-03, -5.433431198193756397e-03, -5.444946848360936176e-03, -5.456453073281204019e-03, -5.467949854747509476e-03, -5.479437174569780702e-03, -5.490915014573644233e-03, -5.502383356601445001e-03, -5.513842182511888984e-03, -5.525291474179606921e-03, -5.536731213496065042e-03, -5.548161382368979599e-03, -5.559581962722695038e-03, -5.570992936497600259e-03, -5.582394285650995117e-03, -5.593785992156740002e-03, -5.605168038004829968e-03, -5.616540405202292453e-03, -5.627903075772604409e-03, -5.639256031756035778e-03, -5.650599255209149026e-03, -5.661932728205602318e-03, -5.673256432835780023e-03, -5.684570351206473526e-03, -5.695874465441732974e-03, -5.707168757681825577e-03, -5.718453210084727470e-03, -5.729727804824446234e-03, -5.740992524092457250e-03, -5.752247350096741790e-03, -5.763492265062577190e-03, -5.774727251232208980e-03, -5.785952290864438026e-03, -5.797167366235971009e-03, -5.808372459639824480e-03, -5.819567553386251202e-03, -5.830752629802876327e-03, -5.841927671234358257e-03, -5.853092660042667067e-03, -5.864247578606603985e-03, -5.875392409322577683e-03, -5.886527134604276415e-03, -5.897651736882290711e-03, -5.908766198605049265e-03, -5.919870502237706972e-03, -5.930964630263630723e-03, -5.942048565182793049e-03, -5.953122289513143421e-03, -5.964185785789620324e-03, -5.975239036565069793e-03, -5.986282024409776172e-03, -5.997314731911117767e-03, -6.008337141674881775e-03, -6.019349236323611081e-03, -6.030350998498069243e-03, -6.041342410856198782e-03, -6.052323456073946048e-03, -6.063294116845040910e-03, -6.074254375880504958e-03, -6.085204215909498053e-03, -6.096143619678886377e-03, -6.107072569953436725e-03, -6.117991049515386290e-03, -6.128899041165238905e-03, -6.139796527721378197e-03, -6.150683492019714572e-03, -6.161559916914529159e-03, -6.172425785277890938e-03, -6.183281080000071345e-03, -6.194125783989057679e-03, -6.204959880170813312e-03, -6.215783351490087802e-03, -6.226596180908922432e-03, -6.237398351408095232e-03, -6.248189845986018565e-03, -6.258970647659724447e-03, -6.269740739464409185e-03, -6.280500104453179237e-03, -6.291248725697780667e-03, -6.301986586288094334e-03, -6.312713669332490653e-03, -6.323429957957292687e-03, -6.334135435307583668e-03, -6.344830084546852246e-03, -6.355513888856634264e-03, -6.366186831437298591e-03, -6.376848895507569205e-03, -6.387500064304788006e-03, -6.398140321084508884e-03, -6.408769649121149117e-03, -6.419388031707762982e-03, -6.429995452155629759e-03, -6.440591893795159263e-03, -6.451177339974837992e-03, -6.461751774062627317e-03, -6.472315179444469019e-03, -6.482867539525539492e-03, -6.493408837729352893e-03, -6.503939057498612022e-03, -6.514458182294769438e-03, -6.524966195597827097e-03, -6.535463080906993814e-03, -6.545948821740353064e-03, -6.556423401634619251e-03, -6.566886804145743127e-03, -6.577339012848584798e-03, -6.587780011337088931e-03, -6.598209783223889235e-03, -6.608628312141039650e-03, -6.619035581739653520e-03, -6.629431575689594819e-03, -6.639816277680336831e-03, -6.650189671419920456e-03, -6.660551740636384485e-03, -6.670902469076167920e-03, -6.681241840505495154e-03, -6.691569838709410592e-03, -6.701886447492574894e-03, -6.712191650678951856e-03, -6.722485432111410288e-03, -6.732767775652936590e-03, -6.743038665185129878e-03, -6.753298084609554199e-03, -6.763546017846756679e-03, -6.773782448837074172e-03, -6.784007361540360034e-03, -6.794220739935573003e-03, -6.804422568021636746e-03, -6.814612829816842250e-03, -6.824791509359214720e-03, -6.834958590706017439e-03, -6.845114057934528935e-03, -6.855257895141683017e-03, -6.865390086443717496e-03, -6.875510615977043286e-03, -6.885619467897399586e-03, -6.895716626380568592e-03, -6.905802075622110951e-03, -6.915875799837009272e-03, -6.925937783260785290e-03, -6.935988010148085199e-03, -6.946026464773976360e-03, -6.956053131432982789e-03, -6.966067994439888340e-03, -6.976071038129465218e-03, -6.986062246856065451e-03, -6.996041604994460497e-03, -7.006009096939257511e-03, -7.015964707105280980e-03, -7.025908419927087874e-03, -7.035840219859642447e-03, -7.045760091378080320e-03, -7.055668018977299082e-03, -7.065563987172842134e-03, -7.075447980499894284e-03, -7.085319983514659116e-03, -7.095179980792752639e-03, -7.105027956930554632e-03, -7.114863896544714253e-03, -7.124687784271885489e-03, -7.134499604769460081e-03, -7.144299342714714902e-03, -7.154086982806001117e-03, -7.163862509761387623e-03, -7.173625908319903981e-03, -7.183377163240564633e-03, -7.193116259303234533e-03, -7.202843181308303880e-03, -7.212557914076322962e-03, -7.222260442448740284e-03, -7.231950751287567758e-03, -7.241628825475149127e-03, -7.251294649914820888e-03, -7.260948209530070085e-03, -7.270589489265763365e-03, -7.280218474086756590e-03, -7.289835148979058842e-03, -7.299439498949379657e-03, -7.309031509024889635e-03, -7.318611164253979381e-03, -7.328178449705340103e-03, -7.337733350469210006e-03, -7.347275851655944885e-03, -7.356805938397325238e-03, -7.366323595845605636e-03, -7.375828809174304022e-03, -7.385321563577864311e-03, -7.394801844271361481e-03, -7.404269636491290878e-03, -7.413724925494911619e-03, -7.423167696560743593e-03, -7.432597934988018420e-03, -7.442015626097384616e-03, -7.451420755230575392e-03, -7.460813307750130234e-03, -7.470193269040117413e-03, -7.479560624505636121e-03, -7.488915359573115708e-03, -7.498257459689978283e-03, -7.507586910324774016e-03, -7.516903696968001668e-03, -7.526207805130658360e-03, -7.535499220345651637e-03, -7.544777928166716136e-03, -7.554043914169330382e-03, -7.563297163950339491e-03, -7.572537663127629909e-03, -7.581765397340909166e-03, -7.590980352251185462e-03, -7.600182513541001855e-03, -7.609371866914152634e-03, -7.618548398096209803e-03, -7.627712092834313187e-03, -7.636862936896793123e-03, -7.646000916073982315e-03, -7.655126016177563573e-03, -7.664238223041078962e-03, -7.673337522519347795e-03, -7.682423900489137106e-03, -7.691497342848980373e-03, -7.700557835518760316e-03, -7.709605364440517278e-03, -7.718639915577522881e-03, -7.727661474915563725e-03, -7.736670028461501564e-03, -7.745665562244511033e-03, -7.754648062315227901e-03, -7.763617514746441219e-03, -7.772573905632817505e-03, -7.781517221090557268e-03, -7.790447447258448850e-03, -7.799364570296558712e-03, -7.808268576387414513e-03, -7.817159451735132547e-03, -7.826037182566150663e-03, -7.834901755128931625e-03, -7.843753155693692497e-03, -7.852591370553050829e-03, -7.861416386021667299e-03, -7.870228188436103473e-03, -7.879026764155385582e-03, -7.887812099560232576e-03, -7.896584181054246143e-03, -7.905342995062522929e-03, -7.914088528032901804e-03, -7.922820766435023643e-03, -7.931539696761143177e-03, -7.940245305525780312e-03, -7.948937579265366246e-03, -7.957616504539339816e-03, -7.966282067928829105e-03, -7.974934256037780750e-03, -7.983573055492172374e-03, -7.992198452940690867e-03, -8.000810435054427072e-03, -8.009408988526606904e-03, -8.017994100073302585e-03, -8.026565756432926108e-03, -8.035123944366491175e-03, -8.043668650657262789e-03, -8.052199862111371342e-03, -8.060717565557512509e-03, -8.069221747846669693e-03, -8.077712395852712501e-03, -8.086189496472113991e-03, -8.094653036624065157e-03, -8.103103003250176559e-03, -8.111539383314774962e-03, -8.119962163805366506e-03, -8.128371331731606281e-03, -8.136766874126318341e-03, -8.145148778044754984e-03, -8.153517030565254203e-03, -8.161871618788936120e-03, -8.170212529839510421e-03, -8.178539750863784638e-03, -8.186853269031344957e-03, -8.195153071534797343e-03, -8.203439145589377229e-03, -8.211711478433499425e-03, -8.219970057328562091e-03, -8.228214869558636221e-03, -8.236445902431055455e-03, -8.244663143276095146e-03, -8.252866579447152781e-03, -8.261056198320376742e-03, -8.269231987295250913e-03, -8.277393933794400388e-03, -8.285542025263220242e-03, -8.293676249170633605e-03, -8.301796593008238176e-03, -8.309903044291437266e-03, -8.317995590558201202e-03, -8.326074219370122043e-03, -8.334138918311652031e-03, -8.342189674990792281e-03, -8.350226477038764916e-03, -8.358249312109822249e-03, -8.366258167881770666e-03, -8.374253032055764198e-03, -8.382233892355961044e-03, -8.390200736530172357e-03, -8.398153552349544790e-03, -8.406092327608596926e-03, -8.414017050125106520e-03, -8.421927707740443567e-03, -8.429824288319500911e-03, -8.437706779750333425e-03, -8.445575169944827612e-03, -8.453429446837950473e-03, -8.461269598388819826e-03, -8.469095612579413679e-03, -8.476907477415784528e-03, -8.484705180927152104e-03, -8.492488711166625015e-03, -8.500258056210914515e-03, -8.508013204159994500e-03, -8.515754143138130200e-03, -8.523480861292632646e-03, -8.531193346794885626e-03, -8.538891587839719452e-03, -8.546575572645879332e-03, -8.554245289455844961e-03, -8.561900726535620620e-03, -8.569541872175224367e-03, -8.577168714688413950e-03, -8.584781242412792626e-03, -8.592379443709566300e-03, -8.599963306964039655e-03, -8.607532820585380232e-03, -8.615087973006344338e-03, -8.622628752684003903e-03, -8.630155148098925949e-03, -8.637667147755897709e-03, -8.645164740183673355e-03, -8.652647913934607971e-03, -8.660116657585649816e-03, -8.667570959737143366e-03, -8.675010809013911778e-03, -8.682436194064413817e-03, -8.689847103561488054e-03, -8.697243526201990302e-03, -8.704625450706628825e-03, -8.711992865820467405e-03, -8.719345760312620028e-03, -8.726684122976434768e-03, -8.734007942629093066e-03, -8.741317208112310555e-03, -8.748611908291908587e-03, -8.755892032057701474e-03, -8.763157568324049865e-03, -8.770408506029128692e-03, -8.777644834135992294e-03, -8.784866541631347961e-03, -8.792073617526532589e-03, -8.799266050857207366e-03, -8.806443830683094096e-03, -8.813606946088594490e-03, -8.820755386182047714e-03, -8.827889140096757334e-03, -8.835008196989797835e-03, -8.842112546043119636e-03, -8.849202176462740710e-03, -8.856277077479348531e-03, -8.863337238348091909e-03, -8.870382648348405785e-03, -8.877413296784370314e-03, -8.884429172984579029e-03, -8.891430266301980981e-03, -8.898416566114307480e-03, -8.905388061823447596e-03, -8.912344742856459501e-03, -8.919286598664387389e-03, -8.926213618723231186e-03, -8.933125792533542359e-03, -8.940023109620326772e-03, -8.946905559533547755e-03, -8.953773131847395789e-03, -8.960625816161344945e-03, -8.967463602098952463e-03, -8.974286479308939482e-03, -8.981094437464379188e-03, -8.987887466263382030e-03, -8.994665555428743575e-03, -9.001428694707894196e-03, -9.008176873873167956e-03, -9.014910082721731485e-03, -9.021628311075554491e-03, -9.028331548781286589e-03, -9.035019785710604254e-03, -9.041693011760068566e-03, -9.048351216850847659e-03, -9.054994390929339484e-03, -9.061622523966667009e-03, -9.068235605958976583e-03, -9.074833626927241922e-03, -9.081416576917281450e-03, -9.087984446000323818e-03, -9.094537224272076364e-03, -9.101074901853635837e-03, -9.107597468890770223e-03, -9.114104915554543246e-03, -9.120597232041024668e-03, -9.127074408571134168e-03, -9.133536435391055933e-03, -9.139983302772058255e-03, -9.146415001010519547e-03, -9.152831520427721912e-03, -9.159232851370357684e-03, -9.165618984210133907e-03, -9.171989909343846933e-03, -9.178345617193578443e-03, -9.184686098206567076e-03, -9.191011342855324659e-03, -9.197321341637327424e-03, -9.203616085075560713e-03, -9.209895563718208458e-03, -9.216159768138510941e-03, -9.222408688935227958e-03, -9.228642316732121875e-03, -9.234860642178687948e-03, -9.241063655949288691e-03, -9.247251348743936242e-03, -9.253423711287692144e-03, -9.259580734331213786e-03, -9.265722408650497663e-03, -9.271848725046695494e-03, -9.277959674346769950e-03, -9.284055247402653310e-03, -9.290135435092048907e-03, -9.296200228317820502e-03, -9.302249618008465865e-03, -9.308283595117931158e-03, -9.314302150625498183e-03, -9.320305275536103565e-03, -9.326292960880201710e-03, -9.332265197713513274e-03, -9.338221977117623640e-03, -9.344163290199313313e-03, -9.350089128091350690e-03, -9.355999481951640315e-03, -9.361894342964003496e-03, -9.367773702337560751e-03, -9.373637551307255691e-03, -9.379485881133700631e-03, -9.385318683102782805e-03, -9.391135948526576835e-03, -9.396937668742359404e-03, -9.402723835113356923e-03, -9.408494439028218179e-03, -9.414249471901546887e-03, -9.419988925173610264e-03, -9.425712790310234943e-03, -9.431421058803145241e-03, -9.437113722169772345e-03, -9.442790771953356657e-03, -9.448452199722736158e-03, -9.454097997072726314e-03, -9.459728155623922316e-03, -9.465342667022555098e-03, -9.470941522940888591e-03, -9.476524715076910937e-03, -9.482092235154554807e-03, -9.487644074923463205e-03, -9.493180226159123047e-03, -9.498700680663271084e-03, -9.504205430263038684e-03, -9.509694466811885113e-03, -9.515167782188856810e-03, -9.520625368299154637e-03, -9.526067217073915308e-03, -9.531493320470032712e-03, -9.536903670470584654e-03, -9.542298259084532747e-03, -9.547677078346887211e-03, -9.553040120318516057e-03, -9.558387377086436515e-03, -9.563718840763733506e-03, -9.569034503489309840e-03, -9.574334357428338979e-03, -9.579618394771942380e-03, -9.584886607737418476e-03, -9.590138988567928693e-03, -9.595375529532971029e-03, -9.600596222928038312e-03, -9.605801061074644223e-03, -9.610990036320670241e-03, -9.616163141039812262e-03, -9.621320367632314394e-03, -9.626461708524210875e-03, -9.631587156167954050e-03, -9.636696703041977216e-03, -9.641790341651083202e-03, -9.646868064526260486e-03, -9.651929864224540953e-03, -9.656975733329360712e-03, -9.662005664450372747e-03, -9.667019650223327223e-03, -9.672017683310413227e-03, -9.676999756400019373e-03, -9.681965862206841356e-03, -9.686915993471732766e-03, -9.691850142961998260e-03, -9.696768303471228756e-03, -9.701670467819223376e-03, -9.706556628852291285e-03, -9.711426779442821483e-03, -9.716280912489945465e-03, -9.721119020918744455e-03, -9.725941097680953704e-03, -9.730747135754509725e-03, -9.735537128143852137e-03, -9.740311067879850807e-03, -9.745068948019569924e-03, -9.749810761646859544e-03, -9.754536501871646087e-03, -9.759246161830530814e-03, -9.763939734686366556e-03, -9.768617213628665377e-03, -9.773278591873345300e-03, -9.777923862662688675e-03, -9.782553019265618002e-03, -9.787166054977503374e-03, -9.791762963120252683e-03, -9.796343737042183253e-03, -9.800908370118238677e-03, -9.805456855749943718e-03, -9.809989187365215219e-03, -9.814505358418689970e-03, -9.819005362391343070e-03, -9.823489192791102012e-03, -9.827956843152135455e-03, -9.832408307035229653e-03, -9.836843578028041726e-03, -9.841262649744544552e-03, -9.845665515825524627e-03, -9.850052169938233390e-03, -9.854422605776683858e-03, -9.858776817061572564e-03, -9.863114797540048842e-03, -9.867436540986164115e-03, -9.871742041200483320e-03, -9.876031292010390220e-03, -9.880304287269756069e-03, -9.884561020859329930e-03, -9.888801486686525297e-03, -9.893025678685428773e-03, -9.897233590816930174e-03, -9.901425217068472728e-03, -9.905600551454564820e-03, -9.909759588016120793e-03, -9.913902320821003922e-03, -9.918028743963892835e-03, -9.922138851566019574e-03, -9.926232637775637968e-03, -9.930310096767569136e-03, -9.934371222743714966e-03, -9.938416009932492592e-03, -9.942444452589360021e-03, -9.946456544996410201e-03, -9.950452281462702359e-03, -9.954431656324178729e-03, -9.958394663943383532e-03, -9.962341298709993798e-03, -9.966271555040427318e-03, -9.970185427377924181e-03, -9.974082910192732382e-03, -9.977963997981766087e-03, -9.981828685269160742e-03, -9.985676966605638166e-03, -9.989508836569028702e-03, -9.993324289763984986e-03, -9.997123320822103379e-03, -1.000090592440193611e-02, -1.000467209518885597e-02, -1.000842182789543969e-02, -1.001215511726091627e-02, -1.001587195805172387e-02, -1.001957234506103966e-02, -1.002325627310918926e-02, -1.002692373704346107e-02, -1.003057473173801437e-02, -1.003420925209410133e-02, -1.003782729303994911e-02, -1.004142884953087775e-02, -1.004501391654900010e-02, -1.004858248910369192e-02, -1.005213456223129180e-02, -1.005567013099503346e-02, -1.005918919048537537e-02, -1.006269173581973708e-02, -1.006617776214264147e-02, -1.006964726462557247e-02, -1.007310023846717285e-02, -1.007653667889320606e-02, -1.007995658115634283e-02, -1.008335994053655323e-02, -1.008674675234069208e-02, -1.009011701190286672e-02, -1.009347071458427912e-02, -1.009680785577314610e-02, -1.010012843088487627e-02, -1.010343243536199198e-02, -1.010671986467419695e-02, -1.010999071431821494e-02, -1.011324497981800838e-02, -1.011648265672468634e-02, -1.011970374061639533e-02, -1.012290822709861760e-02, -1.012609611180386240e-02, -1.012926739039192101e-02, -1.013242205854959950e-02, -1.013556011199109527e-02, -1.013868154645768821e-02, -1.014178635771776846e-02, -1.014487454156709142e-02, -1.014794609382846206e-02, -1.015100101035207834e-02, -1.015403928701517910e-02, -1.015706091972233202e-02, -1.016006590440521329e-02, -1.016305423702289212e-02, -1.016602591356160525e-02, -1.016898093003469790e-02, -1.017191928248307141e-02, -1.017484096697452225e-02, -1.017774597960439953e-02, -1.018063431649509319e-02, -1.018350597379641398e-02, -1.018636094768539217e-02, -1.018919923436629321e-02, -1.019202083007069923e-02, -1.019482573105753333e-02, -1.019761393361290694e-02, -1.020038543405034012e-02, -1.020314022871047360e-02, -1.020587831396153368e-02, -1.020859968619872334e-02, -1.021130434184490399e-02, -1.021399227734990853e-02, -1.021666348919118665e-02, -1.021931797387336770e-02, -1.022195572792836994e-02, -1.022457674791561397e-02, -1.022718103042171388e-02, -1.022976857206070456e-02, -1.023233936947388727e-02, -1.023489341933001007e-02, -1.023743071832514118e-02, -1.023995126318264989e-02, -1.024245505065338874e-02, -1.024494207751549396e-02, -1.024741234057451218e-02, -1.024986583666328589e-02, -1.025230256264214254e-02, -1.025472251539876964e-02, -1.025712569184817659e-02, -1.025951208893280224e-02, -1.026188170362252010e-02, -1.026423453291460536e-02, -1.026657057383361868e-02, -1.026888982343159007e-02, -1.027119227878804837e-02, -1.027347793700979055e-02, -1.027574679523115576e-02, -1.027799885061376692e-02, -1.028023410034678044e-02, -1.028245254164675271e-02, -1.028465417175759844e-02, -1.028683898795074506e-02, -1.028900698752501820e-02, -1.029115816780673022e-02, -1.029329252614950320e-02, -1.029541005993458470e-02, -1.029751076657050082e-02, -1.029959464349330597e-02, -1.030166168816651524e-02, -1.030371189808106797e-02, -1.030574527075539711e-02, -1.030776180373531824e-02, -1.030976149459417873e-02, -1.031174434093281439e-02, -1.031371034037942107e-02, -1.031565949058975591e-02, -1.031759178924699510e-02, -1.031950723406185010e-02, -1.032140582277242535e-02, -1.032328755314438143e-02, -1.032515242297082393e-02, -1.032700043007231568e-02, -1.032883157229698944e-02, -1.033064584752035192e-02, -1.033244325364548327e-02, -1.033422378860294859e-02, -1.033598745035077884e-02, -1.033773423687447263e-02, -1.033946414618707420e-02, -1.034117717632917176e-02, -1.034287332536875173e-02, -1.034455259140132366e-02, -1.034621497254999828e-02, -1.034786046696522903e-02, -1.034948907282515727e-02, -1.035110078833524801e-02, -1.035269561172868016e-02, -1.035427354126597886e-02, -1.035583457523526867e-02, -1.035737871195213308e-02, -1.035890594975973772e-02, -1.036041628702871406e-02, -1.036190972215719763e-02, -1.036338625357095117e-02, -1.036484587972309225e-02, -1.036628859909444374e-02, -1.036771441019321109e-02, -1.036912331155514892e-02, -1.037051530174364251e-02, -1.037189037934944415e-02, -1.037324854299094892e-02, -1.037458979131402649e-02, -1.037591412299213728e-02, -1.037722153672616769e-02, -1.037851203124465042e-02, -1.037978560530357711e-02, -1.038104225768646943e-02, -1.038228198720442946e-02, -1.038350479269602687e-02, -1.038471067302743772e-02, -1.038589962709233344e-02, -1.038707165381187736e-02, -1.038822675213488776e-02, -1.038936492103758463e-02, -1.039048615952381863e-02, -1.039159046662489240e-02, -1.039267784139973755e-02, -1.039374828293474634e-02, -1.039480179034392958e-02, -1.039583836276870669e-02, -1.039685799937814688e-02, -1.039786069936884071e-02, -1.039884646196482902e-02, -1.039981528641780242e-02, -1.040076717200692086e-02, -1.040170211803886045e-02, -1.040262012384793669e-02, -1.040352118879586327e-02, -1.040440531227198977e-02, -1.040527249369315246e-02, -1.040612273250373331e-02, -1.040695602817568247e-02, -1.040777238020839518e-02, -1.040857178812886960e-02, -1.040935425149159925e-02, -1.041011976987869792e-02, -1.041086834289968455e-02, -1.041159997019165499e-02, -1.041231465141928894e-02, -1.041301238627467818e-02, -1.041369317447756078e-02, -1.041435701577513896e-02, -1.041500390994214674e-02, -1.041563385678085339e-02, -1.041624685612102703e-02, -1.041684290781999533e-02, -1.041742201176253796e-02, -1.041798416786109474e-02, -1.041852937605542047e-02, -1.041905763631298561e-02, -1.041956894862864670e-02, -1.042006331302482852e-02, -1.042054072955143039e-02, -1.042100119828591812e-02, -1.042144471933321992e-02, -1.042187129282581837e-02, -1.042228091892365843e-02, -1.042267359781420127e-02, -1.042304932971239821e-02, -1.042340811486078614e-02, -1.042374995352924813e-02, -1.042407484601533783e-02, -1.042438279264396028e-02, -1.042467379376760435e-02, -1.042494784976621784e-02, -1.042520496104723700e-02, -1.042544512804560557e-02, -1.042566835122374705e-02, -1.042587463107153001e-02, -1.042606396810637562e-02, -1.042623636287311889e-02, -1.042639181594412316e-02, -1.042653032791918642e-02, -1.042665189942559335e-02, -1.042675653111812054e-02, -1.042684422367902257e-02, -1.042691497781791758e-02, -1.042696879427201795e-02, -1.042700567380589957e-02, -1.042702561721168750e-02, -1.042702862530888591e-02, -1.042701469894446141e-02, -1.042698383899284820e-02, -1.042693604635593768e-02, -1.042687132196304552e-02, -1.042678966677094109e-02, -1.042669108176378680e-02, -1.042657556795326471e-02, -1.042644312637843428e-02, -1.042629375810576360e-02, -1.042612746422919880e-02, -1.042594424587008073e-02, -1.042574410417717798e-02, -1.042552704032667817e-02, -1.042529305552215325e-02, -1.042504215099462721e-02, -1.042477432800249966e-02, -1.042448958783158582e-02, -1.042418793179510778e-02, -1.042386936123366331e-02, -1.042353387751527617e-02, -1.042318148203527466e-02, -1.042281217621651539e-02, -1.042242596150909015e-02, -1.042202283939058435e-02, -1.042160281136588623e-02, -1.042116587896726662e-02, -1.042071204375435642e-02, -1.042024130731420729e-02, -1.041975367126114597e-02, -1.041924913723690956e-02, -1.041872770691058651e-02, -1.041818938197856641e-02, -1.041763416416458324e-02, -1.041706205521980393e-02, -1.041647305692261147e-02, -1.041586717107878014e-02, -1.041524439952138184e-02, -1.041460474411086759e-02, -1.041394820673491838e-02, -1.041327478930857524e-02, -1.041258449377417510e-02, -1.041187732210138370e-02, -1.041115327628715052e-02, -1.041041235835569317e-02, -1.040965457035854941e-02, -1.040887991437453204e-02, -1.040808839250972201e-02, -1.040728000689749612e-02, -1.040645475969850797e-02, -1.040561265310062898e-02, -1.040475368931904551e-02, -1.040387787059617215e-02, -1.040298519920167426e-02, -1.040207567743245409e-02, -1.040114930761267334e-02, -1.040020609209375141e-02, -1.039924603325425266e-02, -1.039826913350005294e-02, -1.039727539526420427e-02, -1.039626482100701119e-02, -1.039523741321593878e-02, -1.039419317440567689e-02, -1.039313210711812104e-02, -1.039205421392234638e-02, -1.039095949741461120e-02, -1.038984796021839505e-02, -1.038871960498425825e-02, -1.038757443439005529e-02, -1.038641245114074046e-02, -1.038523365796838530e-02, -1.038403805763228431e-02, -1.038282565291888046e-02, -1.038159644664166451e-02, -1.038035044164140053e-02, -1.037908764078588827e-02, -1.037780804697006377e-02, -1.037651166311597505e-02, -1.037519849217282200e-02, -1.037386853711683501e-02, -1.037252180095142931e-02, -1.037115828670707139e-02, -1.036977799744132761e-02, -1.036838093623879652e-02, -1.036696710621119039e-02, -1.036553651049732482e-02, -1.036408915226297127e-02, -1.036262503470105657e-02, -1.036114416103151546e-02, -1.035964653450131140e-02, -1.035813215838447647e-02, -1.035660103598204373e-02, -1.035505317062204896e-02, -1.035348856565958785e-02, -1.035190722447672934e-02, -1.035030915048256936e-02, -1.034869434711316143e-02, -1.034706281783159820e-02, -1.034541456612786750e-02, -1.034374959551902749e-02, -1.034206790954906446e-02, -1.034036951178885291e-02, -1.033865440583639668e-02, -1.033692259531642649e-02, -1.033517408388074689e-02, -1.033340887520800729e-02, -1.033162697300393437e-02, -1.032982838100101990e-02, -1.032801310295865076e-02, -1.032618114266324431e-02, -1.032433250392798992e-02, -1.032246719059304839e-02, -1.032058520652534908e-02, -1.031868655561885006e-02, -1.031677124179424671e-02, -1.031483926899910177e-02, -1.031289064120789745e-02, -1.031092536242186365e-02, -1.030894343666911156e-02, -1.030694486800452954e-02, -1.030492966050992193e-02, -1.030289781829383210e-02, -1.030084934549154937e-02, -1.029878424626526519e-02, -1.029670252480385621e-02, -1.029460418532306999e-02, -1.029248923206532544e-02, -1.029035766929986030e-02, -1.028820950132268257e-02, -1.028604473245642997e-02, -1.028386336705059204e-02, -1.028166540948132618e-02, -1.027945086415157569e-02, -1.027721973549085115e-02, -1.027497202795549236e-02, -1.027270774602851225e-02, -1.027042689421952745e-02, -1.026812947706491272e-02, -1.026581549912767947e-02, -1.026348496499746542e-02, -1.026113787929062993e-02, -1.025877424665009099e-02, -1.025639407174542064e-02, -1.025399735927280849e-02, -1.025158411395516930e-02, -1.024915434054180820e-02, -1.024670804380877973e-02, -1.024424522855869879e-02, -1.024176589962067993e-02, -1.023927006185050906e-02, -1.023675772013045090e-02, -1.023422887936944504e-02, -1.023168354450271905e-02, -1.022912172049228116e-02, -1.022654341232652822e-02, -1.022394862502047121e-02, -1.022133736361548195e-02, -1.021870963317949438e-02, -1.021606543880698020e-02, -1.021340478561880843e-02, -1.021072767876228006e-02, -1.020803412341127377e-02, -1.020532412476599093e-02, -1.020259768805319156e-02, -1.019985481852584905e-02, -1.019709552146362552e-02, -1.019431980217235141e-02, -1.019152766598435331e-02, -1.018871911825839846e-02, -1.018589416437946753e-02, -1.018305280975915703e-02, -1.018019505983508259e-02, -1.017732092007149654e-02, -1.017443039595881428e-02, -1.017152349301391791e-02, -1.016860021677982659e-02, -1.016566057282595331e-02, -1.016270456674809620e-02, -1.015973220416815925e-02, -1.015674349073444720e-02, -1.015373843212142614e-02, -1.015071703402992305e-02, -1.014767930218692625e-02, -1.014462524234564442e-02, -1.014155486028560024e-02, -1.013846816181244309e-02, -1.013536515275801665e-02, -1.013224583898034159e-02, -1.012911022636371269e-02, -1.012595832081850111e-02, -1.012279012828119079e-02, -1.011960565471457969e-02, -1.011640490610737908e-02, -1.011318788847464720e-02, -1.010995460785730701e-02, -1.010670507032256429e-02, -1.010343928196370984e-02, -1.010015724890000501e-02, -1.009685897727684648e-02, -1.009354447326559281e-02, -1.009021374306384895e-02, -1.008686679289505679e-02, -1.008350362900870163e-02, -1.008012425768040066e-02, -1.007672868521164965e-02, -1.007331691792998259e-02, -1.006988896218880859e-02, -1.006644482436768774e-02, -1.006298451087197371e-02, -1.005950802813301327e-02, -1.005601538260809252e-02, -1.005250658078035535e-02, -1.004898162915899076e-02, -1.004544053427883048e-02, -1.004188330270086062e-02, -1.003830994101171346e-02, -1.003472045582404389e-02, -1.003111485377627086e-02, -1.002749314153258443e-02, -1.002385532578320589e-02, -1.002020141324384828e-02, -1.001653141065629062e-02, -1.001284532478796500e-02, -1.000914316243215960e-02, -1.000542493040782778e-02, -1.000169063555964542e-02, -9.997940284758201693e-03, -9.994173884899613947e-03, -9.990391442905786207e-03, -9.986592965724362322e-03, -9.982778460328576783e-03, -9.978947933717454213e-03, -9.975101392915502324e-03, -9.971238844973044982e-03, -9.967360296965913427e-03, -9.963465755995690870e-03, -9.959555229189485243e-03, -9.955628723699929197e-03, -9.951686246705438582e-03, -9.947727805409742330e-03, -9.943753407042359507e-03, -9.939763058858148287e-03, -9.935756768137708403e-03, -9.931734542187004716e-03, -9.927696388337490380e-03, -9.923642313946262963e-03, -9.919572326395724449e-03, -9.915486433093850110e-03, -9.911384641473968207e-03, -9.907266958994992434e-03, -9.903133393141149571e-03, -9.898983951422000299e-03, -9.894818641372779208e-03, -9.890637470553792845e-03, -9.886440446550917582e-03, -9.882227576975219710e-03, -9.877998869463371773e-03, -9.873754331677100926e-03, -9.869493971303497717e-03, -9.865217796055198232e-03, -9.860925813669764797e-03, -9.856618031910341707e-03, -9.852294458565164295e-03, -9.847955101447708123e-03, -9.843599968396786123e-03, -9.839229067276371657e-03, -9.834842405975588106e-03, -9.830439992408786937e-03, -9.826021834515603209e-03, -9.821587940260672819e-03, -9.817138317633812908e-03, -9.812672974650113802e-03, -9.808191919349607685e-03, -9.803695159797487166e-03, -9.799182704084077530e-03, -9.794654560324758674e-03, -9.790110736659918267e-03, -9.785551241255085325e-03, -9.780976082300756741e-03, -9.776385268012449323e-03, -9.771778806630817757e-03, -9.767156706421167151e-03, -9.762518975674176411e-03, -9.757865622705199152e-03, -9.753196655854706049e-03, -9.748512083488002078e-03, -9.743811913995313254e-03, -9.739096155791831730e-03, -9.734364817317578758e-03, -9.729617907037435912e-03, -9.724855433441122535e-03, -9.720077405043329316e-03, -9.715283830383426855e-03, -9.710474718025616583e-03, -9.705650076559008826e-03, -9.700809914597364331e-03, -9.695954240779196612e-03, -9.691083063767957570e-03, -9.686196392251584728e-03, -9.681294234942986951e-03, -9.676376600579489340e-03, -9.671443497923332827e-03, -9.666494935761337642e-03, -9.661530922905021274e-03, -9.656551468190515200e-03, -9.651556580478514585e-03, -9.646546268654571446e-03, -9.641520541628405966e-03, -9.636479408334742633e-03, -9.631422877732567778e-03, -9.626350958805677746e-03, -9.621263660562179298e-03, -9.616160992034696042e-03, -9.611042962280597415e-03, -9.605909580381469595e-03, -9.600760855443458974e-03, -9.595596796597152464e-03, -9.590417412997685048e-03, -9.585222713824458757e-03, -9.580012708281277975e-03, -9.574787405596509038e-03, -9.569546815022663896e-03, -9.564290945836891045e-03, -9.559019807340293773e-03, -9.553733408858601506e-03, -9.548431759741866226e-03, -9.543114869364127673e-03, -9.537782747124030902e-03, -9.532435402444227809e-03, -9.527072844771868054e-03, -9.521695083578099461e-03, -9.516302128358281390e-03, -9.510893988632184229e-03, -9.505470673943540103e-03, -9.500032193860301344e-03, -9.494578557974493044e-03, -9.489109775902501015e-03, -9.483625857284513211e-03, -9.478126811784948202e-03, -9.472612649092401402e-03, -9.467083378919292913e-03, -9.461539011002363664e-03, -9.455979555101998862e-03, -9.450405021003013828e-03, -9.444815418513897651e-03, -9.439210757467222587e-03, -9.433591047719576406e-03, -9.427956299151302177e-03, -9.422306521667003082e-03, -9.416641725194655962e-03, -9.410961919686653895e-03, -9.405267115118902399e-03, -9.399557321491391892e-03, -9.393832548827781362e-03, -9.388092807175540608e-03, -9.382338106606099432e-03, -9.376568457214530181e-03, -9.370783869119639689e-03, -9.364984352464151424e-03, -9.359169917414264864e-03, -9.353340574160260920e-03, -9.347496332915612022e-03, -9.341637203917898050e-03, -9.335763197428167959e-03, -9.329874323731036923e-03, -9.323970593134967358e-03, -9.318052015971771060e-03, -9.312118602597169517e-03, -9.306170363389947367e-03, -9.300207308752979352e-03, -9.294229449112265812e-03, -9.288236794917624842e-03, -9.282229356642144116e-03, -9.276207144782423752e-03, -9.270170169858697740e-03, -9.264118442414428015e-03, -9.258051973016562936e-03, -9.251970772255436667e-03, -9.245874850744923573e-03, -9.239764219122051370e-03, -9.233638888047235316e-03, -9.227498868204408317e-03, -9.221344170300592447e-03, -9.215174805066202526e-03, -9.208990783254791118e-03, -9.202792115643490881e-03, -9.196578813032327618e-03, -9.190350886244674777e-03, -9.184108346127199674e-03, -9.177851203549506134e-03, -9.171579469404786758e-03, -9.165293154608769935e-03, -9.158992270100814459e-03, -9.152676826843241659e-03, -9.146346835821411725e-03, -9.140002308043685547e-03, -9.133643254541553083e-03, -9.127269686369622950e-03, -9.120881614605419463e-03, -9.114479050349314979e-03, -9.108062004724973987e-03, -9.101630488878756364e-03, -9.095184513980059116e-03, -9.088724091221066573e-03, -9.082249231817130300e-03, -9.075759947006224390e-03, -9.069256248049165775e-03, -9.062738146229886577e-03, -9.056205652854757565e-03, -9.049658779253406948e-03, -9.043097536777646578e-03, -9.036521936802627275e-03, -9.029931990725787588e-03, -9.023327709967665644e-03, -9.016709105971226074e-03, -9.010076190202139304e-03, -9.003428974149012276e-03, -8.996767469322560981e-03, -8.990091687256689459e-03, -8.983401639507481926e-03, -8.976697337653912270e-03, -8.969978793297314970e-03, -8.963246018061551620e-03, -8.956499023593191347e-03, -8.949737821561129167e-03, -8.942962423656749052e-03, -8.936172841594055768e-03, -8.929369087109249870e-03, -8.922551171961294950e-03, -8.915719107931053752e-03, -8.908872906822283902e-03, -8.902012580460718499e-03, -8.895138140694770421e-03, -8.888249599394869652e-03, -8.881346968453808499e-03, -8.874430259786916797e-03, -8.867499485331293424e-03, -8.860554657046755198e-03, -8.853595786915031962e-03, -8.846622886940252312e-03, -8.839635969148589706e-03, -8.832635045588283287e-03, -8.825620128330022990e-03, -8.818591229466299017e-03, -8.811548361111795624e-03, -8.804491535403255811e-03, -8.797420764499627038e-03, -8.790336060581655300e-03, -8.783237435852180031e-03, -8.776124902536154918e-03, -8.768998472880297490e-03, -8.761858159153434328e-03, -8.754703973646110748e-03, -8.747535928671104286e-03, -8.740354036562793250e-03, -8.733158309677432549e-03, -8.725948760393360121e-03, -8.718725401110384576e-03, -8.711488244250515517e-03, -8.704237302257184644e-03, -8.696972587595643012e-03, -8.689694112753129293e-03, -8.682401890238323344e-03, -8.675095932581679270e-03, -8.667776252335284912e-03, -8.660442862073045728e-03, -8.653095774390301420e-03, -8.645735001904008080e-03, -8.638360557252880434e-03, -8.630972453097039698e-03, -8.623570702118183579e-03, -8.616155317019416268e-03, -8.608726310525659578e-03, -8.601283695383019762e-03, -8.593827484359049459e-03, -8.586357690243014845e-03, -8.578874325845234697e-03, -8.571377403997819389e-03, -8.563866937553721997e-03, -8.556342939387751381e-03, -8.548805422395671857e-03, -8.541254399494858929e-03, -8.533689883623728559e-03, -8.526111887741950543e-03, -8.518520424830672289e-03, -8.510915507892010540e-03, -8.503297149949358424e-03, -8.495665364047175552e-03, -8.488020163251354042e-03, -8.480361560648600958e-03, -8.472689569346799135e-03, -8.465004202475100853e-03, -8.457305473183501093e-03, -8.449593394643000605e-03, -8.441867980045866110e-03, -8.434129242605043972e-03, -8.426377195554854080e-03, -8.418611852149950753e-03, -8.410833225666526636e-03, -8.403041329401254519e-03, -8.395236176671984699e-03, -8.387417780817247107e-03, -8.379586155196268663e-03, -8.371741313189570016e-03, -8.363883268197759915e-03, -8.356012033642860534e-03, -8.348127622967169495e-03, -8.340230049634087331e-03, -8.332319327127413189e-03, -8.324395468951629323e-03, -8.316458488632163040e-03, -8.308508399714699746e-03, -8.300545215765767551e-03, -8.292568950372251543e-03, -8.284579617141915944e-03, -8.276577229702817770e-03, -8.268561801703473366e-03, -8.260533346813177594e-03, -8.252491878721294333e-03, -8.244437411138181085e-03, -8.236369957793846300e-03, -8.228289532439328480e-03, -8.220196148845983208e-03, -8.212089820805023449e-03, -8.203970562128581195e-03, -8.195838386648605922e-03, -8.187693308217778784e-03, -8.179535340708669541e-03, -8.171364498014147687e-03, -8.163180794047495206e-03, -8.154984242741950343e-03, -8.146774858050979951e-03, -8.138552653948140717e-03, -8.130317644427276919e-03, -8.122069843502166542e-03, -8.113809265206557708e-03, -8.105535923594550315e-03, -8.097249832739909087e-03, -8.088951006736797358e-03, -8.080639459698786553e-03, -8.072315205759943851e-03, -8.063978259073971769e-03, -8.055628633814418058e-03, -8.047266344174982752e-03, -8.038891404368869384e-03, -8.030503828629565605e-03, -8.022103631209703475e-03, -8.013690826382322344e-03, -8.005265428439770764e-03, -7.996827451694513145e-03, -7.988376910478392490e-03, -7.979913819142973874e-03, -7.971438192059723121e-03, -7.962950043619521079e-03, -7.954449388232864848e-03, -7.945936240329791456e-03, -7.937410614360065203e-03, -7.928872524793090931e-03, -7.920321986117228805e-03, -7.911759012840932290e-03, -7.903183619491804465e-03, -7.894595820616846088e-03, -7.885995630782717536e-03, -7.877383064575162880e-03, -7.868758136599724590e-03, -7.860120861480617699e-03, -7.851471253862042990e-03, -7.842809328406996974e-03, -7.834135099798118437e-03, -7.825448582737011896e-03, -7.816749791944507808e-03, -7.808038742160904565e-03, -7.799315448145337920e-03, -7.790579924676220742e-03, -7.781832186550989745e-03, -7.773072248586433350e-03, -7.764300125618090603e-03, -7.755515832500614604e-03, -7.746719384107892195e-03, -7.737910795332540899e-03, -7.729090081086240245e-03, -7.720257256299468095e-03, -7.711412335921990699e-03, -7.702555334922089013e-03, -7.693686268286942936e-03, -7.684805151022857696e-03, -7.675911998154569087e-03, -7.667006824726050988e-03, -7.658089645799425089e-03, -7.649160476456054632e-03, -7.640219331795958073e-03, -7.631266226937657299e-03, -7.622301177018397933e-03, -7.613324197193988008e-03, -7.604335302639114551e-03, -7.595334508546779800e-03, -7.586321830128500698e-03, -7.577297282614683591e-03, -7.568260881253883500e-03, -7.559212641313275104e-03, -7.550152578078375178e-03, -7.541080706853420766e-03, -7.531997042960772437e-03, -7.522901601741136327e-03, -7.513794398553911950e-03, -7.504675448776389028e-03, -7.495544767804672090e-03, -7.486402371052423670e-03, -7.477248273952311931e-03, -7.468082491954651514e-03, -7.458905040528371506e-03, -7.449715935160299875e-03, -7.440515191355402853e-03, -7.431302824637171789e-03, -7.422078850546432252e-03, -7.412843284642816818e-03, -7.403596142503542088e-03, -7.394337439724165024e-03, -7.385067191917936771e-03, -7.375785414716126177e-03, -7.366492123768201075e-03, -7.357187334741197710e-03, -7.347871063320098040e-03, -7.338543325208025762e-03, -7.329204136125535944e-03, -7.319853511811435544e-03, -7.310491468021672323e-03, -7.301118020530604664e-03, -7.291733185129834101e-03, -7.282336977629061403e-03, -7.272929413855348454e-03, -7.263510509653377592e-03, -7.254080280885909573e-03, -7.244638743432518964e-03, -7.235185913191107682e-03, -7.225721806076578803e-03, -7.216246438021772444e-03, -7.206759824976704219e-03, -7.197261982908817642e-03, -7.187752927803318058e-03, -7.178232675662524730e-03, -7.168701242506194359e-03, -7.159158644371351084e-03, -7.149604897312642100e-03, -7.140040017401742649e-03, -7.130464020727516478e-03, -7.120876923396472942e-03, -7.111278741531944746e-03, -7.101669491274604888e-03, -7.092049188782176099e-03, -7.082417850229808139e-03, -7.072775491809453301e-03, -7.063122129730152639e-03, -7.053457780218314391e-03, -7.043782459516935088e-03, -7.034096183886557122e-03, -7.024398969603916527e-03, -7.014690832963396683e-03, -7.004971790276090689e-03, -6.995241857869888107e-03, -6.985501052089543479e-03, -6.975749389296603473e-03, -6.965986885869681830e-03, -6.956213558203931148e-03, -6.946429422711179920e-03, -6.936634495820344533e-03, -6.926828793976698082e-03, -6.917012333642317927e-03, -6.907185131295769109e-03, -6.897347203432600479e-03, -6.887498566564584021e-03, -6.877639237220078278e-03, -6.867769231944290294e-03, -6.857888567298518409e-03, -6.847997259861032630e-03, -6.838095326225797008e-03, -6.828182783004008334e-03, -6.818259646822670203e-03, -6.808325934325597413e-03, -6.798381662172604117e-03, -6.788426847039817809e-03, -6.778461505619998509e-03, -6.768485654621780694e-03, -6.758499310770209323e-03, -6.748502490806326110e-03, -6.738495211487742845e-03, -6.728477489587866844e-03, -6.718449341896181107e-03, -6.708410785218634625e-03, -6.698361836376889519e-03, -6.688302512208595986e-03, -6.678232829567790421e-03, -6.668152805324019383e-03, -6.658062456363326650e-03, -6.647961799586887995e-03, -6.637850851912567227e-03, -6.627729630273502398e-03, -6.617598151619138828e-03, -6.607456432914375621e-03, -6.597304491139864904e-03, -6.587142343292506225e-03, -6.576970006384082190e-03, -6.566787497442870027e-03, -6.556594833512256401e-03, -6.546392031651708000e-03, -6.536179108935923250e-03, -6.525956082455252119e-03, -6.515722969315852243e-03, -6.505479786639078305e-03, -6.495226551561948669e-03, -6.484963281236744669e-03, -6.474689992831590864e-03, -6.464406703529620643e-03, -6.454113430529377811e-03, -6.443810191045097613e-03, -6.433497002305848048e-03, -6.423173881556602793e-03, -6.412840846056739805e-03, -6.402497913081705780e-03, -6.392145099921705577e-03, -6.381782423882063904e-03, -6.371409902283692826e-03, -6.361027552462024046e-03, -6.350635391768169428e-03, -6.340233437567890581e-03, -6.329821707241964010e-03, -6.319400218186553217e-03, -6.308968987812437618e-03, -6.298528033545429741e-03, -6.288077372826177472e-03, -6.277617023110537015e-03, -6.267147001868876403e-03, -6.256667326586404232e-03, -6.246178014763437668e-03, -6.235679083914653920e-03, -6.225170551570003569e-03, -6.214652435273361822e-03, -6.204124752584095834e-03, -6.193587521075731572e-03, -6.183040758336453419e-03, -6.172484481969375651e-03, -6.161918709591675085e-03, -6.151343458835722977e-03, -6.140758747347506430e-03, -6.130164592788347501e-03, -6.119561012833421750e-03, -6.108948025172765244e-03, -6.098325647510502608e-03, -6.087693897565045649e-03, -6.077052793069546120e-03, -6.066402351771109022e-03, -6.055742591431154294e-03, -6.045073529825290178e-03, -6.034395184743549141e-03, -6.023707573990285530e-03, -6.013010715383243152e-03, -6.002304626755171173e-03, -5.991589325952399910e-03, -5.980864830835353439e-03, -5.970131159278810676e-03, -5.959388329171101326e-03, -5.948636358415122435e-03, -5.937875264926881225e-03, -5.927105066637099705e-03, -5.916325781489852054e-03, -5.905537427443484887e-03, -5.894740022469834029e-03, -5.883933584554543704e-03, -5.873118131697348428e-03, -5.862293681911393863e-03, -5.851460253223631468e-03, -5.840617863674553087e-03, -5.829766531318697487e-03, -5.818906274223823762e-03, -5.808037110471253074e-03, -5.797159058156291928e-03, -5.786272135387370008e-03, -5.775376360286505091e-03, -5.764471750989126966e-03, -5.753558325644387954e-03, -5.742636102414539270e-03, -5.731705099475193840e-03, -5.720765335015634209e-03, -5.709816827238022377e-03, -5.698859594358372110e-03, -5.687893654605125603e-03, -5.676919026220680030e-03, -5.665935727460476821e-03, -5.654943776592890638e-03, -5.643943191899565906e-03, -5.632933991675112377e-03, -5.621916194227563092e-03, -5.610889817877651002e-03, -5.599854880959116016e-03, -5.588811401819037197e-03, -5.577759398817063417e-03, -5.566698890325925096e-03, -5.555629894731075116e-03, -5.544552430431230923e-03, -5.533466515837516704e-03, -5.522372169373937836e-03, -5.511269409477560430e-03, -5.500158254597706416e-03, -5.489038723197075045e-03, -5.477910833750087964e-03, -5.466774604744765315e-03, -5.455630054681068208e-03, -5.444477202072046246e-03, -5.433316065442946735e-03, -5.422146663331500922e-03, -5.410969014288484306e-03, -5.399783136876208298e-03, -5.388589049670320860e-03, -5.377386771258231384e-03, -5.366176320240225242e-03, -5.354957715228526177e-03, -5.343730974847707427e-03, -5.332496117734955403e-03, -5.321253162539323761e-03, -5.310002127922117642e-03, -5.298743032557173827e-03, -5.287475895129974297e-03, -5.276200734338778141e-03, -5.264917568893025604e-03, -5.253626417515109247e-03, -5.242327298938824834e-03, -5.231020231910448598e-03, -5.219705235187865541e-03, -5.208382327540910309e-03, -5.197051527751785256e-03, -5.185712854613696958e-03, -5.174366326932622155e-03, -5.163011963525640687e-03, -5.151649783222167142e-03, -5.140279804862964673e-03, -5.128902047300544845e-03, -5.117516529399460806e-03, -5.106123270035522327e-03, -5.094722288096324020e-03, -5.083313602480929623e-03, -5.071897232100294403e-03, -5.060473195876584278e-03, -5.049041512743416074e-03, -5.037602201646282536e-03, -5.026155281541742209e-03, -5.014700771397836640e-03, -5.003238690193903895e-03, -4.991769056920969741e-03, -4.980291890581029467e-03, -4.968807210187310697e-03, -4.957315034764699264e-03, -4.945815383348794655e-03, -4.934308274986990740e-03, -4.922793728736958759e-03, -4.911271763668248469e-03, -4.899742398861396502e-03, -4.888205653407725997e-03, -4.876661546409693550e-03, -4.865110096980652422e-03, -4.853551324245311376e-03, -4.841985247338905472e-03, -4.830411885407569043e-03, -4.818831257608709520e-03, -4.807243383110181706e-03, -4.795648281090753549e-03, -4.784045970739861549e-03, -4.772436471258079994e-03, -4.760819801856266617e-03, -4.749195981756004943e-03, -4.737565030189894860e-03, -4.725926966400615867e-03, -4.714281809642102347e-03, -4.702629579177935483e-03, -4.690970294283112671e-03, -4.679303974242469792e-03, -4.667630638351834803e-03, -4.655950305917038942e-03, -4.644262996254359087e-03, -4.632568728690772755e-03, -4.620867522563225187e-03, -4.609159397219063023e-03, -4.597444372015795783e-03, -4.585722466321561636e-03, -4.573993699514273051e-03, -4.562258090982040069e-03, -4.550515660123505106e-03, -4.538766426347006812e-03, -4.527010409070969521e-03, -4.515247627724242388e-03, -4.503478101745171311e-03, -4.491701850582724767e-03, -4.479918893694920419e-03, -4.468129250550570246e-03, -4.456332940627741844e-03, -4.444529983414862578e-03, -4.432720398409805383e-03, -4.420904205120181930e-03, -4.409081423063932435e-03, -4.397252071767773947e-03, -4.385416170769031348e-03, -4.373573739614037940e-03, -4.361724797859265618e-03, -4.349869365070382909e-03, -4.338007460822630550e-03, -4.326139104701168421e-03, -4.314264316300242888e-03, -4.302383115223724561e-03, -4.290495521084730993e-03, -4.278601553506238171e-03, -4.266701232120146368e-03, -4.254794576567695608e-03, -4.242881606499836894e-03, -4.230962341576258168e-03, -4.219036801466542232e-03, -4.207105005848541315e-03, -4.195166974410217617e-03, -4.183222726848134093e-03, -4.171272282867974010e-03, -4.159315662184890489e-03, -4.147352884522525519e-03, -4.135383969614079419e-03, -4.123408937201340253e-03, -4.111427807035029913e-03, -4.099440598875170143e-03, -4.087447332490281096e-03, -4.075448027657850580e-03, -4.063442704164058235e-03, -4.051431381804252579e-03, -4.039414080382153910e-03, -4.027390819710162211e-03, -4.015361619609796040e-03, -4.003326499910682054e-03, -3.991285480451730282e-03, -3.979238581079489606e-03, -3.967185821650027339e-03, -3.955127222027360161e-03, -3.943062802084032654e-03, -3.930992581701405267e-03, -3.918916580768772202e-03, -3.906834819184444758e-03, -3.894747316854172293e-03, -3.882654093692977995e-03, -3.870555169623487047e-03, -3.858450564577124448e-03, -3.846340298493143139e-03, -3.834224391318994361e-03, -3.822102863010686316e-03, -3.809975733531958866e-03, -3.797843022854774028e-03, -3.785704750959008064e-03, -3.773560937832881254e-03, -3.761411603472700725e-03, -3.749256767881949289e-03, -3.737096451072969856e-03, -3.724930673065484418e-03, -3.712759453887077166e-03, -3.700582813573544908e-03, -3.688400772167971589e-03, -3.676213349721875814e-03, -3.664020566293556790e-03, -3.651822441949957414e-03, -3.639618996765037542e-03, -3.627410250820896354e-03, -3.615196224206863786e-03, -3.602976937019814526e-03, -3.590752409364568291e-03, -3.578522661353060637e-03, -3.566287713104802654e-03, -3.554047584746623800e-03, -3.541802296413170629e-03, -3.529551868246038997e-03, -3.517296320394168278e-03, -3.505035673014213465e-03, -3.492769946269674766e-03, -3.480499160331455323e-03, -3.468223335377515568e-03, -3.455942491593386699e-03, -3.443656649171330641e-03, -3.431365828310733827e-03, -3.419070049218456316e-03, -3.406769332107834752e-03, -3.394463697199911860e-03, -3.382153164721755055e-03, -3.369837754908172958e-03, -3.357517488000752188e-03, -3.345192384247670878e-03, -3.332862463904107207e-03, -3.320527747231887677e-03, -3.308188254500033995e-03, -3.295844005983892665e-03, -3.283495021965520105e-03, -3.271141322734060376e-03, -3.258782928584880861e-03, -3.246419859820105260e-03, -3.234052136748279214e-03, -3.221679779684906778e-03, -3.209302808951601700e-03, -3.196921244876428300e-03, -3.184535107794323871e-03, -3.172144418046073024e-03, -3.159749195979530672e-03, -3.147349461947920694e-03, -3.134945236311741535e-03, -3.122536539437087855e-03, -3.110123391696820606e-03, -3.097705813469631576e-03, -3.085283825140350007e-03, -3.072857447100519387e-03, -3.060426699746825359e-03, -3.047991603482983966e-03, -3.035552178718073282e-03, -3.023108445867713455e-03, -3.010660425353106975e-03, -2.998208137601366969e-03, -2.985751603045958685e-03, -2.973290842125797875e-03, -2.960825875285757764e-03, -2.948356722976402337e-03, -2.935883405654338488e-03, -2.923405943782060330e-03, -2.910924357826905756e-03, -2.898438668262902189e-03, -2.885948895568981112e-03, -2.873455060230252663e-03, -2.860957182736993849e-03, -2.848455283584994200e-03, -2.835949383276117810e-03, -2.823439502316727780e-03, -2.810925661219594845e-03, -2.798407880502209490e-03, -2.785886180687969799e-03, -2.773360582305203510e-03, -2.760831105887545309e-03, -2.748297771974315875e-03, -2.735760601109651913e-03, -2.723219613843024401e-03, -2.710674830728946293e-03, -2.698126272327492498e-03, -2.685573959203391321e-03, -2.673017911926464218e-03, -2.660458151071978805e-03, -2.647894697219776300e-03, -2.635327570954823593e-03, -2.622756792866867605e-03, -2.610182383550971319e-03, -2.597604363606648582e-03, -2.585022753638262661e-03, -2.572437574255366684e-03, -2.559848846071734792e-03, -2.547256589706567778e-03, -2.534660825782796955e-03, -2.522061574928834062e-03, -2.509458857777605023e-03, -2.496852694966334406e-03, -2.484243107136957420e-03, -2.471630114935797692e-03, -2.459013739014098525e-03, -2.446394000027139488e-03, -2.433770918634626298e-03, -2.421144515501081132e-03, -2.408514811294967459e-03, -2.395881826689214792e-03, -2.383245582360909044e-03, -2.370606098991809470e-03, -2.357963397267479576e-03, -2.345317497877682199e-03, -2.332668421516748136e-03, -2.320016188882575211e-03, -2.307360820677863394e-03, -2.294702337608369672e-03, -2.282040760384868288e-03, -2.269376109721405604e-03, -2.256708406336565588e-03, -2.244037670952411193e-03, -2.231363924294910671e-03, -2.218687187094291018e-03, -2.206007480084189697e-03, -2.193324824002159008e-03, -2.180639239589370754e-03, -2.167950747591138386e-03, -2.155259368756028832e-03, -2.142565123836264514e-03, -2.129868033588101957e-03, -2.117168118770965286e-03, -2.104465400147823538e-03, -2.091759898485584437e-03, -2.079051634554061369e-03, -2.066340629127241466e-03, -2.053626902981515318e-03, -2.040910476897657595e-03, -2.028191371659072810e-03, -2.015469608053039111e-03, -2.002745206869702577e-03, -1.990018188902437177e-03, -1.977288574948398141e-03, -1.964556385806929921e-03, -1.951821642281505826e-03, -1.939084365177993520e-03, -1.926344575305910956e-03, -1.913602293477386198e-03, -1.900857540507553366e-03, -1.888110337214949025e-03, -1.875360704420611863e-03, -1.862608662948634763e-03, -1.849854233625834342e-03, -1.837097437282298905e-03, -1.824338294750479884e-03, -1.811576826865606438e-03, -1.798813054466067525e-03, -1.786046998392374317e-03, -1.773278679488432194e-03, -1.760508118599770667e-03, -1.747735336575514031e-03, -1.734960354266793219e-03, -1.722183192527256684e-03, -1.709403872213484561e-03, -1.696622414183948267e-03, -1.683838839300115303e-03, -1.671053168425419263e-03, -1.658265422425663372e-03, -1.645475622169396924e-03, -1.632683788527037076e-03, -1.619889942371399022e-03, -1.607094104577385480e-03, -1.594296296022520336e-03, -1.581496537586042465e-03, -1.568694850149327490e-03, -1.555891254596262043e-03, -1.543085771812220718e-03, -1.530278422685308563e-03, -1.517469228104611177e-03, -1.504658208962183358e-03, -1.491845386151416939e-03, -1.479030780567587881e-03, -1.466214413108254391e-03, -1.453396304672217388e-03, -1.440576476160779695e-03, -1.427754948475987900e-03, -1.414931742522601262e-03, -1.402106879206354607e-03, -1.389280379435194534e-03, -1.376452264118255059e-03, -1.363622554166239688e-03, -1.350791270491836235e-03, -1.337958434008808262e-03, -1.325124065632540859e-03, -1.312288186279720811e-03, -1.299450816868722141e-03, -1.286611978319446075e-03, -1.273771691552267422e-03, -1.260929977489874025e-03, -1.248086857055652824e-03, -1.235242351174228263e-03, -1.222396480771857381e-03, -1.209549266775400249e-03, -1.196700730113559215e-03, -1.183850891715145697e-03, -1.170999772511042807e-03, -1.158147393432441569e-03, -1.145293775412112259e-03, -1.132438939383363565e-03, -1.119582906280435939e-03, -1.106725697038893645e-03, -1.093867332594738529e-03, -1.081007833884942799e-03, -1.068147221847135907e-03, -1.055285517420136458e-03, -1.042422741543057307e-03, -1.029558915155714309e-03, -1.016694059199005568e-03, -1.003828194614029331e-03, -9.909613423426154658e-04, -9.780935233270119083e-04, -9.652247585104170059e-04, -9.523550688360926404e-04, -9.394844752477513961e-04, -9.266129986899644374e-04, -9.137406601071099404e-04, -9.008674804446457299e-04, -8.879934806473322719e-04, -8.751186816610916465e-04, -8.622431044319412352e-04, -8.493667699058393304e-04, -8.364896990290609201e-04, -8.236119127479000742e-04, -8.107334320091828805e-04, -7.978542777593976981e-04, -7.849744709450732182e-04, -7.720940325131891600e-04, -7.592129834102660834e-04, -7.463313445829220178e-04, -7.334491369775383114e-04, -7.205663815408047679e-04, -7.076830992188234450e-04, -6.947993109575112186e-04, -6.819150377029850000e-04, -6.690303004005307679e-04, -6.561451199958629778e-04, -6.432595174333627331e-04, -6.303735136580552621e-04, -6.174871296138547024e-04, -6.046003862448186316e-04, -5.917133044941180753e-04, -5.788259053044212061e-04, -5.659382096184429256e-04, -5.530502383773283192e-04, -5.401620125226323007e-04, -5.272735529945543143e-04, -5.143848807332096701e-04, -5.014960166775750492e-04, -4.886069817658983318e-04, -4.757177969360876094e-04, -4.628284831248206748e-04, -4.499390612680828952e-04, -4.370495523008441742e-04, -4.241599771574592931e-04, -4.112703567714887467e-04, -3.983807120746624087e-04, -3.854910639987056535e-04, -3.726014334735895076e-04, -3.597118414287844216e-04, -3.468223087922244776e-04, -3.339328564907017671e-04, -3.210435054504062703e-04, -3.081542765953176584e-04, -2.952651908491738257e-04, -2.823762691337206618e-04, -2.694875323699667444e-04, -2.565990014771447826e-04, -2.437106973731107383e-04, -2.308226409747372832e-04, -2.179348531970218533e-04, -2.050473549536230300e-04, -1.921601671565438725e-04, -1.792733107166702238e-04, -1.663868065428748615e-04, -1.535006755424146686e-04, -1.406149386213293210e-04, -1.277296166835432164e-04, -1.148447306314073990e-04, -1.019603013653790151e-04, -8.907634978456063562e-05, -7.619289678580553249e-05, -6.330996326411482129e-05, -5.042757011303401526e-05, -3.754573822361394620e-05, -2.466448848566979763e-05, -1.178384178602370285e-05, 1.096180989662060381e-06, 1.397555895792409236e-05, 2.685427123767539047e-05, 3.973229694980818605e-05, 5.260961521751511956e-05, 6.548620516574829846e-05, 7.836204592211506168e-05, 9.123711661648051783e-05, 1.041113963805709644e-04, 1.169848643488692017e-04, 1.298574996580731768e-04, 1.427292814474176127e-04, 1.556001888581340885e-04, 1.684702010343440567e-04, 1.813392971226645319e-04, 1.942074562718086172e-04, 2.070746576336259307e-04, 2.199408803618442001e-04, 2.328061036138242060e-04, 2.456703065485856940e-04, 2.585334683285609087e-04, 2.713955681183404705e-04, 2.842565850857078935e-04, 2.971164984012440420e-04, 3.099752872379316678e-04, 3.228329307720484128e-04, 3.356894081826271477e-04, 3.485446986517755949e-04, 3.613987813641375340e-04, 3.742516355077876483e-04, 3.871032402738299361e-04, 3.999535748560107047e-04, 4.128026184516029001e-04, 4.256503502610140596e-04, 4.384967494873886801e-04, 4.513417953376472639e-04, 4.641854670212281560e-04, 4.770277437518407530e-04, 4.898686047454930146e-04, 5.027080292222451058e-04, 5.155459964049547046e-04, 5.283824855203084030e-04, 5.412174757984331832e-04, 5.540509464723506307e-04, 5.668828767795867571e-04, 5.797132459602044987e-04, 5.925420332585517756e-04, 6.053692179220082625e-04, 6.181947792020184166e-04, 6.310186963537012727e-04, 6.438409486354475545e-04, 6.566615153098163092e-04, 6.694803756429951918e-04, 6.822975089051181363e-04, 6.951128943697318201e-04, 7.079265113146772283e-04, 7.207383390217079067e-04, 7.335483567760801328e-04, 7.463565438675989544e-04, 7.591628795893581296e-04, 7.719673432394914391e-04, 7.847699141192038827e-04, 7.975705715343757570e-04, 8.103692947950303120e-04, 8.231660632149319454e-04, 8.359608561126228091e-04, 8.487536528101703379e-04, 8.615444326349127073e-04, 8.743331749176378072e-04, 8.871198589936178961e-04, 8.999044642027774358e-04, 9.126869698893125358e-04, 9.254673554019912781e-04, 9.382456000936330830e-04, 9.510216833219885387e-04, 9.637955844493455116e-04, 9.765672828421436032e-04, 9.893367578719879877e-04, 1.002103988914414181e-03, 1.014868955350630136e-03, 1.027631636565547440e-03, 1.040392011949392006e-03, 1.053150060897150046e-03, 1.065905762808198355e-03, 1.078659097087312840e-03, 1.091410043143431442e-03, 1.104158580391395366e-03, 1.116904688249983641e-03, 1.129648346143656513e-03, 1.142389533501314254e-03, 1.155128229757319130e-03, 1.167864414351099233e-03, 1.180598066726764239e-03, 1.193329166333982529e-03, 1.206057692627458388e-03, 1.218783625067229506e-03, 1.231506943118295099e-03, 1.244227626250772687e-03, 1.256945653940937406e-03, 1.269661005669411391e-03, 1.282373660922741078e-03, 1.295083599192880684e-03, 1.307790799976794307e-03, 1.320495242777473995e-03, 1.333196907102708302e-03, 1.345895772466813118e-03, 1.358591818388668604e-03, 1.371285024393466929e-03, 1.383975370011476932e-03, 1.396662834779036164e-03, 1.409347398238192670e-03, 1.422029039936305566e-03, 1.434707739426908284e-03, 1.447383476269198345e-03, 1.460056230028343319e-03, 1.472725980274940897e-03, 1.485392706585927231e-03, 1.498056388544136532e-03, 1.510717005737972343e-03, 1.523374537762237600e-03, 1.536028964217617905e-03, 1.548680264711007216e-03, 1.561328418854964883e-03, 1.573973406268601655e-03, 1.586615206577183081e-03, 1.599253799411742664e-03, 1.611889164410104268e-03, 1.624521281215632676e-03, 1.637150129478978080e-03, 1.649775688856126897e-03, 1.662397939010114376e-03, 1.675016859609808556e-03, 1.687632430330914457e-03, 1.700244630855583328e-03, 1.712853440872044676e-03, 1.725458840075456274e-03, 1.738060808167528381e-03, 1.750659324856132125e-03, 1.763254369856174890e-03, 1.775845922889072309e-03, 1.788433963683059864e-03, 1.801018471972673334e-03, 1.813599427499596860e-03, 1.826176810012316220e-03, 1.838750599265684708e-03, 1.851320775021967876e-03, 1.863887317049614696e-03, 1.876450205124959763e-03, 1.889009419030286685e-03, 1.901564938555566067e-03, 1.914116743497199565e-03, 1.926664813659069615e-03, 1.939209128852105099e-03, 1.951749668893791286e-03, 1.964286413609727180e-03, 1.976819342831696077e-03, 1.989348436399385103e-03, 2.001873674159150313e-03, 2.014395035965038227e-03, 2.026912501678383802e-03, 2.039426051167440943e-03, 2.051935664308241185e-03, 2.064441320984062439e-03, 2.076943001085765524e-03, 2.089440684511383040e-03, 2.101934351166282865e-03, 2.114423980964221135e-03, 2.126909553825518610e-03, 2.139391049678639276e-03, 2.151868448459669497e-03, 2.164341730111934200e-03, 2.176810874586993915e-03, 2.189275861843428730e-03, 2.201736671848546559e-03, 2.214193284576460204e-03, 2.226645680009787381e-03, 2.239093838138439020e-03, 2.251537738960620628e-03, 2.263977362482444151e-03, 2.276412688717538522e-03, 2.288843697687933075e-03, 2.301270369423523681e-03, 2.313692683962378059e-03, 2.326110621350217962e-03, 2.338524161641277431e-03, 2.350933284897933732e-03, 2.363337971190306638e-03, 2.375738200597126652e-03, 2.388133953205223703e-03, 2.400525209109816410e-03, 2.412911948414006406e-03, 2.425294151229638769e-03, 2.437671797676907361e-03, 2.450044867883987079e-03, 2.462413341988019169e-03, 2.474777200133909498e-03, 2.487136422476012108e-03, 2.499490989176373669e-03, 2.511840880405723578e-03, 2.524186076343640055e-03, 2.536526557178181950e-03, 2.548862303106198390e-03, 2.561193294332770633e-03, 2.573519511072123664e-03, 2.585840933547219403e-03, 2.598157541989355550e-03, 2.610469316639075447e-03, 2.622776237745589982e-03, 2.635078285567122799e-03, 2.647375440370372101e-03, 2.659667682431404029e-03, 2.671954992035212046e-03, 2.684237349475376497e-03, 2.696514735055062506e-03, 2.708787129085780954e-03, 2.721054511889122330e-03, 2.733316863794781754e-03, 2.745574165142338798e-03, 2.757826396279980299e-03, 2.770073537565515606e-03, 2.782315569365999275e-03, 2.794552472057352469e-03, 2.806784226025209935e-03, 2.819010811664406525e-03, 2.831232209379269931e-03, 2.843448399583141471e-03, 2.855659362699180127e-03, 2.867865079160030351e-03, 2.880065529407387949e-03, 2.892260693892912977e-03, 2.904450553077678535e-03, 2.916635087432465669e-03, 2.928814277437409488e-03, 2.940988103582175238e-03, 2.953156546366892451e-03, 2.965319586300484839e-03, 2.977477203902265373e-03, 2.989629379700810882e-03, 3.001776094234887959e-03, 3.013917328053107754e-03, 3.026053061713405989e-03, 3.038183275784555205e-03, 3.050307950844339394e-03, 3.062427067481143881e-03, 3.074540606292825145e-03, 3.086648547887664053e-03, 3.098750872883982918e-03, 3.110847561909814169e-03, 3.122938595603680541e-03, 3.135023954614126265e-03, 3.147103619600004603e-03, 3.159177571229986915e-03, 3.171245790183374949e-03, 3.183308257149729606e-03, 3.195364952828540044e-03, 3.207415857930138309e-03, 3.219460953174557022e-03, 3.231500219293160017e-03, 3.243533637026793127e-03, 3.255561187127303802e-03, 3.267582850357009846e-03, 3.279598607488361586e-03, 3.291608439304872114e-03, 3.303612326599972369e-03, 3.315610250178633103e-03, 3.327602190855680903e-03, 3.339588129456718887e-03, 3.351568046818327509e-03, 3.363541923787690281e-03, 3.375509741222883914e-03, 3.387471479992351393e-03, 3.399427120975804899e-03, 3.411376645063777819e-03, 3.423320033157279101e-03, 3.435257266168791589e-03, 3.447188325021055110e-03, 3.459113190648734851e-03, 3.471031843996538312e-03, 3.482944266020773956e-03, 3.494850437688803036e-03, 3.506750339978669233e-03, 3.518643953880101326e-03, 3.530531260393293246e-03, 3.542412240530577218e-03, 3.554286875314556764e-03, 3.566155145779763801e-03, 3.578017032971463410e-03, 3.589872517946629191e-03, 3.601721581773565956e-03, 3.613564205531563222e-03, 3.625400370311701852e-03, 3.637230057216359232e-03, 3.649053247359495926e-03, 3.660869921866167793e-03, 3.672680061873347373e-03, 3.684483648529556128e-03, 3.696280662994505355e-03, 3.708071086439893287e-03, 3.719854900049078972e-03, 3.731632085016665067e-03, 3.743402622549508313e-03, 3.755166493865525184e-03, 3.766923680195308211e-03, 3.778674162780326640e-03, 3.790417922874523247e-03, 3.802154941743134727e-03, 3.813885200663723850e-03, 3.825608680925708053e-03, 3.837325363830097497e-03, 3.849035230690209339e-03, 3.860738262831272215e-03, 3.872434441590649583e-03, 3.884123748317380893e-03, 3.895806164372962645e-03, 3.907481671131034402e-03, 3.919150249976974601e-03, 3.930811882308716740e-03, 3.942466549536296182e-03, 3.954114233082089980e-03, 3.965754914380359777e-03, 3.977388574878045445e-03, 3.989015196034405991e-03, 4.000634759320672619e-03, 4.012247246220982874e-03, 4.023852638231205370e-03, 4.035450916860595580e-03, 4.047042063629935349e-03, 4.058626060073188685e-03, 4.070202887736310872e-03, 4.081772528178197364e-03, 4.093334962970343778e-03, 4.104890173696466860e-03, 4.116438141953328474e-03, 4.127978849350342691e-03, 4.139512277509273946e-03, 4.151038408064967357e-03, 4.162557222664936725e-03, 4.174068702969592655e-03, 4.185572830651796729e-03, 4.197069587397642132e-03, 4.208558954906086759e-03, 4.220040914888621882e-03, 4.231515449070205430e-03, 4.242982539188103197e-03, 4.254442166993457029e-03, 4.265894314249573521e-03, 4.277338962733417613e-03, 4.288776094234554408e-03, 4.300205690556031281e-03, 4.311627733514025729e-03, 4.323042204937374393e-03, 4.334449086669023288e-03, 4.345848360564247975e-03, 4.357240008492184458e-03, 4.368624012334797885e-03, 4.380000353987697007e-03, 4.391369015359847944e-03, 4.402729978373230713e-03, 4.414083224963573013e-03, 4.425428737079913077e-03, 4.436766496684894576e-03, 4.448096485754342473e-03, 4.459418686277507628e-03, 4.470733080257941090e-03, 4.482039649711853056e-03, 4.493338376669605595e-03, 4.504629243175121978e-03, 4.515912231285663762e-03, 4.527187323072649587e-03, 4.538454500620577904e-03, 4.549713746028593436e-03, 4.560965041408700411e-03, 4.572208368887358508e-03, 4.583443710604323193e-03, 4.594671048713610227e-03, 4.605890365383090608e-03, 4.617101642794193932e-03, 4.628304863142629171e-03, 4.639500008638007371e-03, 4.650687061503996043e-03, 4.661866003977938391e-03, 4.673036818311636538e-03, 4.684199486770913509e-03, 4.695353991635359096e-03, 4.706500315199082726e-03, 4.717638439770199983e-03, 4.728768347671185625e-03, 4.739890021238310665e-03, 4.751003442822523612e-03, 4.762108594788995973e-03, 4.773205459516881126e-03, 4.784294019400102752e-03, 4.795374256846394664e-03, 4.806446154278685122e-03, 4.817509694133590217e-03, 4.828564858862326344e-03, 4.839611630930770042e-03, 4.850649992819232488e-03, 4.861679927022627759e-03, 4.872701416050099002e-03, 4.883714442425694975e-03, 4.894718988688095962e-03, 4.905715037390252081e-03, 4.916702571100140494e-03, 4.927681572400325651e-03, 4.938652023888176132e-03, 4.949613908175495153e-03, 4.960567207889164144e-03, 4.971511905670917240e-03, 4.982447984176940556e-03, 4.993375426078737814e-03, 5.004294214062117267e-03, 5.015204330828659275e-03, 5.026105759093985048e-03, 5.036998481589349125e-03, 5.047882481060477974e-03, 5.058757740268482461e-03, 5.069624241989545595e-03, 5.080481969014512267e-03, 5.091330904149760951e-03, 5.102171030216645989e-03, 5.113002330051786420e-03, 5.123824786506631437e-03, 5.134638382448229732e-03, 5.145443100758819235e-03, 5.156238924335582521e-03, 5.167025836091352839e-03, 5.177803818954138798e-03, 5.188572855867435753e-03, 5.199332929789850233e-03, 5.210084023695287295e-03, 5.220826120573816148e-03, 5.231559203430078547e-03, 5.242283255284808409e-03, 5.252998259173790110e-03, 5.263704198148688555e-03, 5.274401055276723045e-03, 5.285088813640221456e-03, 5.295767456337974188e-03, 5.306436966483560162e-03, 5.317097327206843013e-03, 5.327748521652892963e-03, 5.338390532982858518e-03, 5.349023344373621258e-03, 5.359646939017517417e-03, 5.370261300122997072e-03, 5.380866410914236439e-03, 5.391462254631397208e-03, 5.402048814530146896e-03, 5.412626073882426461e-03, 5.423194015976075602e-03, 5.433752624114597703e-03, 5.444301881617908366e-03, 5.454841771821365703e-03, 5.465372278077166787e-03, 5.475893383752768184e-03, 5.486405072232171387e-03, 5.496907326915546378e-03, 5.507400131218754581e-03, 5.517883468574389695e-03, 5.528357322430609358e-03, 5.538821676252617468e-03, 5.549276513521150637e-03, 5.559721817733362034e-03, 5.570157572402921128e-03, 5.580583761059700575e-03, 5.591000367250047696e-03, 5.601407374536343867e-03, 5.611804766497694927e-03, 5.622192526729672714e-03, 5.632570638843933421e-03, 5.642939086469056335e-03, 5.653297853249588875e-03, 5.663646922847396202e-03, 5.673986278940080022e-03, 5.684315905222318659e-03, 5.694635785405374392e-03, 5.704945903216808965e-03, 5.715246242401282421e-03, 5.725536786719584263e-03, 5.735817519950048120e-03, 5.746088425886857788e-03, 5.756349488341619761e-03, 5.766600691142204430e-03, 5.776842018133682838e-03, 5.787073453177933764e-03, 5.797294980153355759e-03, 5.807506582955634759e-03, 5.817708245497169028e-03, 5.827899951707456866e-03, 5.838081685532624764e-03, 5.848253430936115223e-03, 5.858415171898389250e-03, 5.868566892416610635e-03, 5.878708576505338977e-03, 5.888840208196229574e-03, 5.898961771537721173e-03, 5.909073250595824403e-03, 5.919174629453172881e-03, 5.929265892210359816e-03, 5.939347022984427932e-03, 5.949418005910195664e-03, 5.959478825139315206e-03, 5.969529464841051396e-03, 5.979569909202008503e-03, 5.989600142425782411e-03, 5.999620148733629359e-03, 6.009629912364157153e-03, 6.019629417573430993e-03, 6.029618648634659482e-03, 6.039597589838838210e-03, 6.049566225494446177e-03, 6.059524539927143086e-03, 6.069472517480463229e-03, 6.079410142515375738e-03, 6.089337399410576883e-03, 6.099254272562001748e-03, 6.109160746383579706e-03, 6.119056805306900479e-03, 6.128942433780894088e-03, 6.138817616272630555e-03, 6.148682337266379687e-03, 6.158536581264932933e-03, 6.168380332788105450e-03, 6.178213576374040616e-03, 6.188036296578262874e-03, 6.197848477974554626e-03, 6.207650105154480930e-03, 6.217441162727100658e-03, 6.227221635320225046e-03, 6.236991507578872052e-03, 6.246750764166176216e-03, 6.256499389763525709e-03, 6.266237369070156403e-03, 6.275964686803504888e-03, 6.285681327698744436e-03, 6.295387276509445060e-03, 6.305082518007320246e-03, 6.314767036981880875e-03, 6.324440818241240138e-03, 6.334103846611185452e-03, 6.343756106936434408e-03, 6.353397584079202749e-03, 6.363028262920508021e-03, 6.372648128359210268e-03, 6.382257165312811738e-03, 6.391855358717144636e-03, 6.401442693525943514e-03, 6.411019154712104678e-03, 6.420584727266158767e-03, 6.430139396197590007e-03, 6.439683146533926351e-03, 6.449215963321446379e-03, 6.458737831624965058e-03, 6.468248736527462510e-03, 6.477748663130828213e-03, 6.487237596555360530e-03, 6.496715521940071153e-03, 6.506182424442372852e-03, 6.515638289238189634e-03, 6.525083101522765119e-03, 6.534516846509262622e-03, 6.543939509430006345e-03, 6.553351075535986114e-03, 6.562751530096667431e-03, 6.572140858400706172e-03, 6.581519045755029190e-03, 6.590886077486101530e-03, 6.600241938938500481e-03, 6.609586615476205351e-03, 6.618920092481666781e-03, 6.628242355356524923e-03, 6.637553389521376121e-03, 6.646853180415480608e-03, 6.656141713497334099e-03, 6.665418974244371152e-03, 6.674684948153155988e-03, 6.683939620738967025e-03, 6.693182977536471685e-03, 6.702415004099420218e-03, 6.711635686000378548e-03, 6.720845008831336301e-03, 6.730042958203385009e-03, 6.739229519746847349e-03, 6.748404679110977036e-03, 6.757568421964529545e-03, 6.766720733995534864e-03, 6.775861600910977438e-03, 6.784991008437555107e-03, 6.794108942320746698e-03, 6.803215388326074031e-03, 6.812310332237741899e-03, 6.821393759859829820e-03, 6.830465657015402994e-03, 6.839526009547278185e-03, 6.848574803317675035e-03, 6.857612024208027852e-03, 6.866637658119554601e-03, 6.875651690972946380e-03, 6.884654108708185283e-03, 6.893644897285079558e-03, 6.902624042682917530e-03, 6.911591530900688778e-03, 6.920547347956706834e-03, 6.929491479889237152e-03, 6.938423912756186591e-03, 6.947344632634893519e-03, 6.956253625622754906e-03, 6.965150877836418820e-03, 6.974036375412995259e-03, 6.982910104508651891e-03, 6.991772051299880407e-03, 7.000622201982539816e-03, 7.009460542772673504e-03, 7.018287059906146673e-03, 7.027101739638439044e-03, 7.035904568245209510e-03, 7.044695532021948321e-03, 7.053474617284182652e-03, 7.062241810367140063e-03, 7.070997097626269788e-03, 7.079740465437072729e-03, 7.088471900194786603e-03, 7.097191388314987026e-03, 7.105898916233224956e-03, 7.114594470405184549e-03, 7.123278037306572143e-03, 7.131949603433061606e-03, 7.140609155301077572e-03, 7.149256679446542098e-03, 7.157892162426070758e-03, 7.166515590816073186e-03, 7.175126951213551922e-03, 7.183726230235712960e-03, 7.192313414519693401e-03, 7.200888490723556315e-03, 7.209451445525052148e-03, 7.218002265622753232e-03, 7.226540937735208975e-03, 7.235067448601616331e-03, 7.243581784981598624e-03, 7.252083933654904571e-03, 7.260573881422028447e-03, 7.269051615103810232e-03, 7.277517121541709696e-03, 7.285970387597356240e-03, 7.294411400153221099e-03, 7.302840146112317236e-03, 7.311256612397965156e-03, 7.319660785954376636e-03, 7.328052653745981658e-03, 7.336432202758429340e-03, 7.344799419997425673e-03, 7.353154292489667669e-03, 7.361496807282534582e-03, 7.369826951443878872e-03, 7.378144712062615143e-03, 7.386450076247950795e-03, 7.394743031130497982e-03, 7.403023563861129558e-03, 7.411291661611600114e-03, 7.419547311574663066e-03, 7.427790500963846014e-03, 7.436021217013612933e-03, 7.444239446979074477e-03, 7.452445178136478041e-03, 7.460638397783003056e-03, 7.468819093236563240e-03, 7.476987251836294916e-03, 7.485142860941924707e-03, 7.493285907934842463e-03, 7.501416380216775065e-03, 7.509534265210882770e-03, 7.517639550361356754e-03, 7.525732223133216152e-03, 7.533812271012977659e-03, 7.541879681507738728e-03, 7.549934442146455198e-03, 7.557976540478561316e-03, 7.566005964075122464e-03, 7.574022700528056269e-03, 7.582026737450753631e-03, 7.590018062477843670e-03, 7.597996663264922242e-03, 7.605962527489153018e-03, 7.613915642848871970e-03, 7.621855997063847581e-03, 7.629783577874890525e-03, 7.637698373044416594e-03, 7.645600370356220310e-03, 7.653489557615223392e-03, 7.661365922647999510e-03, 7.669229453302553977e-03, 7.677080137448058332e-03, 7.684917962975515611e-03, 7.692742917796961503e-03, 7.700554989846521668e-03, 7.708354167079246866e-03, 7.716140437472146854e-03, 7.723913789023453130e-03, 7.731674209753201799e-03, 7.739421687703028005e-03, 7.747156210935964710e-03, 7.754877767536809581e-03, 7.762586345612051270e-03, 7.770281933289848592e-03, 7.777964518719798076e-03, 7.785634090073460453e-03, 7.793290635544110855e-03, 7.800934143346496819e-03, 7.808564601717365647e-03, 7.816181998915179910e-03, 7.823786323220288316e-03, 7.831377562934498104e-03, 7.838955706381820973e-03, 7.846520741908013380e-03, 7.854072657880486336e-03, 7.861611442688860515e-03, 7.869137084744237676e-03, 7.876649572480184242e-03, 7.884148894351645370e-03, 7.891635038835937213e-03, 7.899107994431997515e-03, 7.906567749660973685e-03, 7.914014293066084019e-03, 7.921447613212151059e-03, 7.928867698686654572e-03, 7.936274538098652548e-03, 7.943668120079315498e-03, 7.951048433282099925e-03, 7.958415466382472506e-03, 7.965769208078085292e-03, 7.973109647088517243e-03, 7.980436772155770353e-03, 7.987750572043927910e-03, 7.995051035539144091e-03, 8.002338151450022127e-03, 8.009611908606995012e-03, 8.016872295863342046e-03, 8.024119302094024839e-03, 8.031352916196651814e-03, 8.038573127090864121e-03, 8.045779923718810941e-03, 8.052973295044960414e-03, 8.060153230055835949e-03, 8.067319717760892267e-03, 8.074472747191328847e-03, 8.081612307401255663e-03, 8.088738387466789387e-03, 8.095850976486726469e-03, 8.102950063582321089e-03, 8.110035637897054436e-03, 8.117107688597104825e-03, 8.124166204871092686e-03, 8.131211175930212406e-03, 8.138242591008010285e-03, 8.145260439360568414e-03, 8.152264710266888051e-03, 8.159255393028100323e-03, 8.166232476968160112e-03, 8.173195951433717688e-03, 8.180145805793744007e-03, 8.187082029440179501e-03, 8.194004611787241918e-03, 8.200913542272366547e-03, 8.207808810355125481e-03, 8.214690405518209476e-03, 8.221558317266662932e-03, 8.228412535128582991e-03, 8.235253048654730956e-03, 8.242079847418475047e-03, 8.248892921016147753e-03, 8.255692259066860217e-03, 8.262477851212559482e-03, 8.269249687117816855e-03, 8.276007756470318832e-03, 8.282752048980530565e-03, 8.289482554381654225e-03, 8.296199262429955132e-03, 8.302902162904565730e-03, 8.309591245607594878e-03, 8.316266500363874575e-03, 8.322927917021410993e-03, 8.329575485451235287e-03, 8.336209195547049713e-03, 8.342829037225921521e-03, 8.349435000427523138e-03, 8.356027075115136579e-03, 8.362605251274498122e-03, 8.369169518914844341e-03, 8.375719868068134955e-03, 8.382256288789684262e-03, 8.388778771157899203e-03, 8.395287305274090270e-03, 8.401781881262938151e-03, 8.408262489272219642e-03, 8.414729119472766014e-03, 8.421181762058688527e-03, 8.427620407247293430e-03, 8.434045045279187774e-03, 8.440455666417909925e-03, 8.446852260950543645e-03, 8.453234819187350341e-03, 8.459603331461697934e-03, 8.465957788130513625e-03, 8.472298179573642049e-03, 8.478624496194782020e-03, 8.484936728420423152e-03, 8.491234866700773931e-03, 8.497518901509125075e-03, 8.503788823342293621e-03, 8.510044622720577823e-03, 8.516286290187354696e-03, 8.522513816309706253e-03, 8.528727191678069086e-03, 8.534926406906329782e-03, 8.541111452631689610e-03, 8.547282319514962895e-03, 8.553438998240528446e-03, 8.559581479515963529e-03, 8.565709754072649285e-03, 8.571823812665370010e-03, 8.577923646072538669e-03, 8.584009245095962706e-03, 8.590080600560984561e-03, 8.596137703316894529e-03, 8.602180544236158813e-03, 8.608209114215115143e-03, 8.614223404173499202e-03, 8.620223405054885241e-03, 8.626209107826500466e-03, 8.632180503478950953e-03, 8.638137583026971045e-03, 8.644080337508523032e-03, 8.650008757985666250e-03, 8.655922835543818084e-03, 8.661822561292388881e-03, 8.667707926364511331e-03, 8.673578921916828832e-03, 8.679435539130047131e-03, 8.685277769208530133e-03, 8.691105603380461231e-03, 8.696919032897739224e-03, 8.702718049036188216e-03, 8.708502643095521190e-03, 8.714272806399065915e-03, 8.720028530294316599e-03, 8.725769806152239988e-03, 8.731496625368220799e-03, 8.737208979361026084e-03, 8.742906859573683007e-03, 8.748590257473001786e-03, 8.754259164549667641e-03, 8.759913572318499264e-03, 8.765553472318020345e-03, 8.771178856111066721e-03, 8.776789715284175758e-03, 8.782386041447919414e-03, 8.787967826237008326e-03, 8.793535061310102721e-03, 8.799087738349975485e-03, 8.804625849063251949e-03, 8.810149385180789799e-03, 8.815658338457566315e-03, 8.821152700672411223e-03, 8.826632463628525382e-03, 8.832097619152906587e-03, 8.837548159097092029e-03, 8.842984075336334307e-03, 8.848405359770267556e-03, 8.853812004322704488e-03, 8.859204000941421284e-03, 8.864581341598639849e-03, 8.869944018290434537e-03, 8.875292023037594305e-03, 8.880625347884561066e-03, 8.885943984900411541e-03, 8.891247926178213676e-03, 8.896537163835460324e-03, 8.901811690013862813e-03, 8.907071496879311046e-03, 8.912316576622057382e-03, 8.917546921456687148e-03, 8.922762523622106492e-03, 8.927963375381360242e-03, 8.933149469022017009e-03, 8.938320796856009595e-03, 8.943477351219386931e-03, 8.948619124472822345e-03, 8.953746109001238865e-03, 8.958858297214043406e-03, 8.963955681544913401e-03, 8.969038254451867920e-03, 8.974106008417715233e-03, 8.979158935949258305e-03, 8.984197029578104912e-03, 8.989220281860022324e-03, 8.994228685375397006e-03, 8.999222232729137474e-03, 9.004200916550500824e-03, 9.009164729493313040e-03, 9.014113664235932563e-03, 9.019047713481245093e-03, 9.023966869956552561e-03, 9.028871126413803849e-03, 9.033760475629521933e-03, 9.038634910404661632e-03, 9.043494423564850740e-03, 9.048339007960282468e-03, 9.053168656465772693e-03, 9.057983361980631587e-03, 9.062783117428866581e-03, 9.067567915759184097e-03, 9.072337749944698118e-03, 9.077092612983429787e-03, 9.081832497897762702e-03, 9.086557397735124664e-03, 9.091267305567233073e-03, 9.095962214490768000e-03, 9.100642117626891667e-03, 9.105307008121624884e-03, 9.109956879145708272e-03, 9.114591723894399297e-03, 9.119211535588015241e-03, 9.123816307471343395e-03, 9.128406032813988005e-03, 9.132980704910384148e-03, 9.137540317079714466e-03, 9.142084862665973352e-03, 9.146614335037805618e-03, 9.151128727588803136e-03, 9.155628033737405955e-03, 9.160112246926647300e-03, 9.164581360624658377e-03, 9.169035368324123664e-03, 9.173474263542966134e-03, 9.177898039823523257e-03, 9.182306690733379670e-03, 9.186700209864714917e-03, 9.191078590834730194e-03, 9.195441827285558145e-03, 9.199789912884047752e-03, 9.204122841322267407e-03, 9.208440606316889085e-03, 9.212743201609752131e-03, 9.217030620967431309e-03, 9.221302858181608039e-03, 9.225559907068933349e-03, 9.229801761470816240e-03, 9.234028415253871247e-03, 9.238239862309613123e-03, 9.242436096554541847e-03, 9.246617111930114860e-03, 9.250782902402894525e-03, 9.254933461964402405e-03, 9.259068784631162632e-03, 9.263188864444740073e-03, 9.267293695471872164e-03, 9.271383271804147994e-03, 9.275457587558381262e-03, 9.279516636876245991e-03, 9.283560413924824700e-03, 9.287588912895949206e-03, 9.291602128006792166e-03, 9.295600053499424725e-03, 9.299582683641147846e-03, 9.303550012724415980e-03, 9.307502035066687884e-03, 9.311438745010593154e-03, 9.315360136923966916e-03, 9.319266205199822073e-03, 9.323156944256120321e-03, 9.327032348536191952e-03, 9.330892412508503403e-03, 9.334737130666610413e-03, 9.338566497529336707e-03, 9.342380507640697662e-03, 9.346179155569908983e-03, 9.349962435911346806e-03, 9.353730343284646573e-03, 9.357482872334734261e-03, 9.361220017731597398e-03, 9.364941774170671904e-03, 9.368648136372392798e-03, 9.372339099082752784e-03, 9.376014657072738456e-03, 9.379674805138800420e-03, 9.383319538102506338e-03, 9.386948850810809819e-03, 9.390562738135972351e-03, 9.394161194975462689e-03, 9.397744216252081756e-03, 9.401311796914073662e-03, 9.404863931934735397e-03, 9.408400616312940709e-03, 9.411921845072794904e-03, 9.415427613263784024e-03, 9.418917915960630868e-03, 9.422392748263529183e-03, 9.425852105298004879e-03, 9.429295982214884811e-03, 9.432724374190498001e-03, 9.436137276426365128e-03, 9.439534684149653021e-03, 9.442916592612655979e-03, 9.446282997093260678e-03, 9.449633892894587078e-03, 9.452969275345338845e-03, 9.456289139799600382e-03, 9.459593481636739687e-03, 9.462882296261694581e-03, 9.466155579104835668e-03, 9.469413325621961128e-03, 9.472655531294222123e-03, 9.475882191628384743e-03, 9.479093302156606227e-03, 9.482288858436407203e-03, 9.485468856050938841e-03, 9.488633290608778151e-03, 9.491782157744016457e-03, 9.494915453116136231e-03, 9.498033172410139460e-03, 9.501135311336698572e-03, 9.504221865631750504e-03, 9.507292831056956411e-03, 9.510348203399314818e-03, 9.513387978471480808e-03, 9.516412152111632453e-03, 9.519420720183333767e-03, 9.522413678575977064e-03, 9.525391023204187943e-03, 9.528352750008368260e-03, 9.531298854954314489e-03, 9.534229334033498746e-03, 9.537144183263006336e-03, 9.540043398685296369e-03, 9.542926976368605943e-03, 9.545794912406643101e-03, 9.548647202918819285e-03, 9.551483844049938818e-03, 9.554304831970578810e-03, 9.557110162876931297e-03, 9.559899832990640181e-03, 9.562673838559116943e-03, 9.565432175855219724e-03, 9.568174841177732107e-03, 9.570901830850717801e-03, 9.573613141224074016e-03, 9.576308768673326768e-03, 9.578988709599542406e-03, 9.581652960429589555e-03, 9.584301517615757479e-03, 9.586934377636253946e-03, 9.589551536994769809e-03, 9.592152992220751365e-03, 9.594738739869204322e-03, 9.597308776520922791e-03, 9.599863098782352236e-03, 9.602401703285542642e-03, 9.604924586688351473e-03, 9.607431745674226836e-03, 9.609923176952318499e-03, 9.612398877257545549e-03, 9.614858843350433323e-03, 9.617303072017349339e-03, 9.619731560070220525e-03, 9.622144304346762211e-03, 9.624541301710413943e-03, 9.626922549050296110e-03, 9.629288043281322707e-03, 9.631637781343984489e-03, 9.633971760204761842e-03, 9.636289976855597419e-03, 9.638592428314409627e-03, 9.640879111624653733e-03, 9.643150023855654937e-03, 9.645405162102521635e-03, 9.647644523485970208e-03, 9.649868105152583503e-03, 9.652075904274701537e-03, 9.654267918050419769e-03, 9.656444143703564811e-03, 9.658604578483743000e-03, 9.660749219666411522e-03, 9.662878064552671981e-03, 9.664991110469514993e-03, 9.667088354769643246e-03, 9.669169794831638035e-03, 9.671235428059789252e-03, 9.673285251884116212e-03, 9.675319263760638264e-03, 9.677337461170958458e-03, 9.679339841622615695e-03, 9.681326402648914725e-03, 9.683297141808915737e-03, 9.685252056687569666e-03, 9.687191144895582889e-03, 9.689114404069490080e-03, 9.691021831871638598e-03, 9.692913425990256140e-03, 9.694789184139277274e-03, 9.696649104058506496e-03, 9.698493183513652929e-03, 9.700321420296142971e-03, 9.702133812223290299e-03, 9.703930357138209131e-03, 9.705711052909935660e-03, 9.707475897433221618e-03, 9.709224888628723363e-03, 9.710958024442949837e-03, 9.712675302848210526e-03, 9.714376721842736886e-03, 9.716062279450465508e-03, 9.717731973721379854e-03, 9.719385802731128621e-03, 9.721023764581346663e-03, 9.722645857399422539e-03, 9.724252079338701477e-03, 9.725842428578315366e-03, 9.727416903323234804e-03, 9.728975501804413076e-03, 9.730518222278571050e-03, 9.732045063028264831e-03, 9.733556022362000251e-03, 9.735051098614123585e-03, 9.736530290144830221e-03, 9.737993595340201092e-03, 9.739441012612187060e-03, 9.740872540398654023e-03, 9.742288177163235460e-03, 9.743687921395535398e-03, 9.745071771611003505e-03, 9.746439726350994079e-03, 9.747791784182708794e-03, 9.749127943699231399e-03, 9.750448203519539864e-03, 9.751752562288490758e-03, 9.753041018676819260e-03, 9.754313571381121803e-03, 9.755570219123972306e-03, 9.756810960653689718e-03, 9.758035794744615576e-03, 9.759244720196879816e-03, 9.760437735836567305e-03, 9.761614840515598149e-03, 9.762776033111793608e-03, 9.763921312528922938e-03, 9.765050677696576753e-03, 9.766164127570246822e-03, 9.767261661131336481e-03, 9.768343277387115525e-03, 9.769408975370822562e-03, 9.770458754141444699e-03, 9.771492612783984691e-03, 9.772510550409311755e-03, 9.773512566154139020e-03, 9.774498659181153626e-03, 9.775468828678812033e-03, 9.776423073861641860e-03, 9.777361393969848102e-03, 9.778283788269746812e-03, 9.779190256053373054e-03, 9.780080796638758456e-03, 9.780955409369783762e-03, 9.781814093616210057e-03, 9.782656848773723865e-03, 9.783483674263888583e-03, 9.784294569534186109e-03, 9.785089534057935315e-03, 9.785868567334377044e-03, 9.786631668888651561e-03, 9.787378838271729165e-03, 9.788110075060581922e-03, 9.788825378857956422e-03, 9.789524749292573269e-03, 9.790208186018960548e-03, 9.790875688717597808e-03, 9.791527257094815445e-03, 9.792162890882845014e-03, 9.792782589839781060e-03, 9.793386353749638368e-03, 9.793974182422261754e-03, 9.794546075693449233e-03, 9.795102033424795893e-03, 9.795642055503843079e-03, 9.796166141843939620e-03, 9.796674292384410093e-03, 9.797166507090379617e-03, 9.797642785952836303e-03, 9.798103128988711052e-03, 9.798547536240724901e-03, 9.798976007777578101e-03, 9.799388543693709000e-03, 9.799785144109512611e-03, 9.800165809171250408e-03, 9.800530539050979206e-03, 9.800879333946670852e-03, 9.801212194082193144e-03, 9.801529119707176260e-03, 9.801830111097200107e-03, 9.802115168553660746e-03, 9.802384292403780799e-03, 9.802637483000718743e-03, 9.802874740723362471e-03, 9.803096065976612053e-03, 9.803301459191024123e-03, 9.803490920823167490e-03, 9.803664451355368140e-03, 9.803822051295795967e-03, 9.803963721178476920e-03, 9.804089461563270450e-03, 9.804199273035890325e-03, 9.804293156207826571e-03, 9.804371111716459961e-03, 9.804433140224959667e-03, 9.804479242422343976e-03, 9.804509419023466413e-03, 9.804523670768963695e-03, 9.804521998425247062e-03, 9.804504402784719116e-03, 9.804470884665388714e-03, 9.804421444911190150e-03, 9.804356084391853063e-03, 9.804274804002883342e-03, 9.804177604665622117e-03, 9.804064487327171160e-03, 9.803935452960481356e-03, 9.803790502564253828e-03, 9.803629637163000649e-03, 9.803452857807011880e-03, 9.803260165572319149e-03, 9.803051561560877786e-03, 9.802827046900278868e-03, 9.802586622743912279e-03, 9.802330290270997934e-03, 9.802058050686485169e-03, 9.801769905221109982e-03, 9.801465855131363814e-03, 9.801145901699464050e-03, 9.800810046233440764e-03, 9.800458290067046510e-03, 9.800090634559770197e-03, 9.799707081096885666e-03, 9.799307631089410053e-03, 9.798892285973980626e-03, 9.798461047213163563e-03, 9.798013916295124359e-03, 9.797550894733806498e-03, 9.797071984068816963e-03, 9.796577185865604914e-03, 9.796066501715184130e-03, 9.795539933234375871e-03, 9.794997482065734284e-03, 9.794439149877433651e-03, 9.793864938363414097e-03, 9.793274849243248023e-03, 9.792668884262301435e-03, 9.792047045191522303e-03, 9.791409333827641795e-03, 9.790755751992952227e-03, 9.790086301535574215e-03, 9.789400984329144420e-03, 9.788699802273070558e-03, 9.787982757292403024e-03, 9.787249851337808879e-03, 9.786501086385681128e-03, 9.785736464437982604e-03, 9.784955987522388210e-03, 9.784159657692173898e-03, 9.783347477026294731e-03, 9.782519447629249576e-03, 9.781675571631291005e-03, 9.780815851188196311e-03, 9.779940288481375060e-03, 9.779048885717863890e-03, 9.778141645130342119e-03, 9.777218568977050217e-03, 9.776279659541788070e-03, 9.775324919134045082e-03, 9.774354350088812829e-03, 9.773367954766708221e-03, 9.772365735553954422e-03, 9.771347694862281968e-03, 9.770313835129008570e-03, 9.769264158817030433e-03, 9.768198668414801444e-03, 9.767117366436331438e-03, 9.766020255421134152e-03, 9.764907337934326109e-03, 9.763778616566508653e-03, 9.762634093933842544e-03, 9.761473772677988978e-03, 9.760297655466175504e-03, 9.759105744991067657e-03, 9.757898043970926819e-03, 9.756674555149422862e-03, 9.755435281295804159e-03, 9.754180225204769211e-03, 9.752909389696513484e-03, 9.751622777616691246e-03, 9.750320391836465872e-03, 9.749002235252414439e-03, 9.747668310786623130e-03, 9.746318621386626524e-03, 9.744953170025416264e-03, 9.743571959701354326e-03, 9.742174993438329142e-03, 9.740762274285651515e-03, 9.739333805317971354e-03, 9.737889589635499721e-03, 9.736429630363696575e-03, 9.734953930653548332e-03, 9.733462493681382249e-03, 9.731955322648975712e-03, 9.730432420783401842e-03, 9.728893791337209912e-03, 9.727339437588260543e-03, 9.725769362839793361e-03, 9.724183570420388834e-03, 9.722582063684087963e-03, 9.720964846010100857e-03, 9.719331920803162342e-03, 9.717683291493169409e-03, 9.716018961535498669e-03, 9.714338934410725324e-03, 9.712643213624805316e-03, 9.710931802708971244e-03, 9.709204705219805220e-03, 9.707461924739124379e-03, 9.705703464874012101e-03, 9.703929329256909958e-03, 9.702139521545447703e-03, 9.700334045422623688e-03, 9.698512904596542916e-03, 9.696676102800698069e-03, 9.694823643793759604e-03, 9.692955531359601778e-03, 9.691071769307399789e-03, 9.689172361471494466e-03, 9.687257311711463398e-03, 9.685326623912082766e-03, 9.683380301983297855e-03, 9.681418349860337544e-03, 9.679440771503483587e-03, 9.677447570898238885e-03, 9.675438752055285849e-03, 9.673414319010541912e-03, 9.671374275824927078e-03, 9.669318626584584228e-03, 9.667247375400797593e-03, 9.665160526409954586e-03, 9.663058083773561416e-03, 9.660940051678232679e-03, 9.658806434335719115e-03, 9.656657235982867710e-03, 9.654492460881529750e-03, 9.652312113318734302e-03, 9.650116197606509530e-03, 9.647904718082030151e-03, 9.645677679107419675e-03, 9.643435085069906529e-03, 9.641176940381765079e-03, 9.638903249480287871e-03, 9.636614016827733595e-03, 9.634309246911471059e-03, 9.631988944243816131e-03, 9.629653113362064698e-03, 9.627301758828518685e-03, 9.624934885230473913e-03, 9.622552497180209691e-03, 9.620154599314865648e-03, 9.617741196296632558e-03, 9.615312292812632639e-03, 9.612867893574902206e-03, 9.610408003320369125e-03, 9.607932626810946480e-03, 9.605441768833385130e-03, 9.602935434199441969e-03, 9.600413627745572887e-03, 9.597876354333335219e-03, 9.595323618848973155e-03, 9.592755426203738653e-03, 9.590171781333632975e-03, 9.587572689199517703e-03, 9.584958154787139029e-03, 9.582328183107023667e-03, 9.579682779194508349e-03, 9.577021948109762373e-03, 9.574345694937758111e-03, 9.571654024788231116e-03, 9.568946942795655830e-03, 9.566224454119373957e-03, 9.563486563943434868e-03, 9.560733277476560904e-03, 9.557964599952378099e-03, 9.555180536629043209e-03, 9.552381092789663519e-03, 9.549566273741809386e-03, 9.546736084817928833e-03, 9.543890531375071734e-03, 9.541029618795049405e-03, 9.538153352484252459e-03, 9.535261737873760093e-03, 9.532354780419350498e-03, 9.529432485601375957e-03, 9.526494858924872133e-03, 9.523541905919375924e-03, 9.520573632139242917e-03, 9.517590043163264013e-03, 9.514591144594811145e-03, 9.511576942061988199e-03, 9.508547441217308355e-03, 9.505502647737905722e-03, 9.502442567325417380e-03, 9.499367205706153380e-03, 9.496276568630787965e-03, 9.493170661874572938e-03, 9.490049491237311646e-03, 9.486913062543206321e-03, 9.483761381641054103e-03, 9.480594454404052754e-03, 9.477412286729811064e-03, 9.474214884540595183e-03, 9.471002253782809938e-03, 9.467774400427583434e-03, 9.464531330470222353e-03, 9.461273049930675125e-03, 9.457999564853099977e-03, 9.454710881306080048e-03, 9.451407005382645929e-03, 9.448087943200135161e-03, 9.444753700900249474e-03, 9.441404284648973258e-03, 9.438039700636779994e-03, 9.434659955078290514e-03, 9.431265054212522800e-03, 9.427855004302791372e-03, 9.424429811636644838e-03, 9.420989482526046302e-03, 9.417534023306908461e-03, 9.414063440339806577e-03, 9.410577740009237746e-03, 9.407076928724032033e-03, 9.403561012917329917e-03, 9.400029999046259632e-03, 9.396483893592438505e-03, 9.392922703061331105e-03, 9.389346433982858134e-03, 9.385755092910900294e-03, 9.382148686423622680e-03, 9.378527221123242330e-03, 9.374890703636061182e-03, 9.371239140612656893e-03, 9.367572538727525489e-03, 9.363890904679306876e-03, 9.360194245190805659e-03, 9.356482567008734402e-03, 9.352755876904022408e-03, 9.349014181671441021e-03, 9.345257488129962709e-03, 9.341485803122488718e-03, 9.337699133515888969e-03, 9.333897486201163385e-03, 9.330080868093086274e-03, 9.326249286130667768e-03, 9.322402747276468601e-03, 9.318541258517422377e-03, 9.314664826864072281e-03, 9.310773459351065484e-03, 9.306867163036859972e-03, 9.302945945003762707e-03, 9.299009812358116980e-03, 9.295058772229958938e-03, 9.291092831773234417e-03, 9.287111998165733032e-03, 9.283116278609121128e-03, 9.279105680328797803e-03, 9.275080210573938277e-03, 9.271039876617644809e-03, 9.266984685756662204e-03, 9.262914645311518327e-03, 9.258829762626470325e-03, 9.254730045069593097e-03, 9.250615500032722052e-03, 9.246486134931116568e-03, 9.242341957204070618e-03, 9.238182974314328166e-03, 9.234009193748457869e-03, 9.229820623016572051e-03, 9.225617269652427316e-03, 9.221399141213523429e-03, 9.217166245280832698e-03, 9.212918589459006408e-03, 9.208656181376210018e-03, 9.204379028684359088e-03, 9.200087139058737637e-03, 9.195780520198182026e-03, 9.191459179825249223e-03, 9.187123125685838637e-03, 9.182772365549386404e-03, 9.178406907208827223e-03, 9.174026758480665483e-03, 9.169631927204756686e-03, 9.165222421244368159e-03, 9.160798248486402839e-03, 9.156359416840925691e-03, 9.151905934241739635e-03, 9.147437808645611859e-03, 9.142955048033103022e-03, 9.138457660407819580e-03, 9.133945653796975844e-03, 9.129419036250993255e-03, 9.124877815843536813e-03, 9.120322000671841206e-03, 9.115751598856053350e-03, 9.111166618539973117e-03, 9.106567067890484340e-03, 9.101952955097757786e-03, 9.097324288375154000e-03, 9.092681075959285764e-03, 9.088023326110040642e-03, 9.083351047110398840e-03, 9.078664247266558102e-03, 9.073962934907904218e-03, 9.069247118386926029e-03, 9.064516806079414915e-03, 9.059772006383888868e-03, 9.055012727722440771e-03, 9.050238978539897061e-03, 9.045450767304421408e-03, 9.040648102507089709e-03, 9.035830992661942132e-03, 9.030999446306368222e-03, 9.026153472000328012e-03, 9.021293078327191628e-03, 9.016418273893048868e-03, 9.011529067327141151e-03, 9.006625467281519776e-03, 9.001707482431221125e-03, 8.996775121474308301e-03, 8.991828393131631736e-03, 8.986867306146936740e-03, 8.981891869286863506e-03, 8.976902091341021697e-03, 8.971897981121766674e-03, 8.966879547464222042e-03, 8.961846799226543328e-03, 8.956799745289491244e-03, 8.951738394556672807e-03, 8.946662755954466750e-03, 8.941572838432014850e-03, 8.936468650961320800e-03, 8.931350202536776639e-03, 8.926217502175873980e-03, 8.921070558918508392e-03, 8.915909381827456445e-03, 8.910733979988016626e-03, 8.905544362508129030e-03, 8.900340538518514144e-03, 8.895122517172360591e-03, 8.889890307645509013e-03, 8.884643919136282070e-03, 8.879383360865788014e-03, 8.874108642077504355e-03, 8.868819772037444399e-03, 8.863516760034264794e-03, 8.858199615379003591e-03, 8.852868347405227697e-03, 8.847522965468895828e-03, 8.842163478948637800e-03, 8.836789897245268810e-03, 8.831402229782084334e-03, 8.826000486004960746e-03, 8.820584675381886938e-03, 8.815154807403554130e-03, 8.809710891582557893e-03, 8.804252937454281128e-03, 8.798780954576075272e-03, 8.793294952527921232e-03, 8.787794940911836106e-03, 8.782280929352126453e-03, 8.776752927495509726e-03, 8.771210945010841920e-03, 8.765654991589075934e-03, 8.760085076943679647e-03, 8.754501210809999268e-03, 8.748903402945722510e-03, 8.743291663130555932e-03, 8.737666001166554536e-03, 8.732026426877710634e-03, 8.726372950110092633e-03, 8.720705580732061868e-03, 8.715024328633799028e-03, 8.709329203727826305e-03, 8.703620215948268402e-03, 8.697897375251752855e-03, 8.692160691616513182e-03, 8.686410175043060219e-03, 8.680645835553665174e-03, 8.674867683192569526e-03, 8.669075728026089112e-03, 8.663269980142331364e-03, 8.657450449651295926e-03, 8.651617146684812201e-03, 8.645770081396789153e-03, 8.639909263962734787e-03, 8.634034704580042380e-03, 8.628146413468037318e-03, 8.622244400867694336e-03, 8.616328677041817929e-03, 8.610399252274855003e-03, 8.604456136873255695e-03, 8.598499341164921733e-03, 8.592528875499503074e-03, 8.586544750248500252e-03, 8.580546975804837634e-03, 8.574535562583335269e-03, 8.568510521020238774e-03, 8.562471861573430973e-03, 8.556419594722596694e-03, 8.550353730968589597e-03, 8.544274280834287388e-03, 8.538181254863691505e-03, 8.532074663622683450e-03, 8.525954517698402027e-03, 8.519820827699465388e-03, 8.513673604256168786e-03, 8.507512858020066515e-03, 8.501338599664166190e-03, 8.495150839882866303e-03, 8.488949589392124490e-03, 8.482734858929084562e-03, 8.476506659252260392e-03, 8.470265001141667749e-03, 8.464009895398381944e-03, 8.457741352845138047e-03, 8.451459384325454849e-03, 8.445164000704592430e-03, 8.438855212868790617e-03, 8.432533031725482353e-03, 8.426197468203552171e-03, 8.419848533252791492e-03, 8.413486237844472818e-03, 8.407110592970567370e-03, 8.400721609644622861e-03, 8.394319298901007156e-03, 8.387903671795392258e-03, 8.381474739404377872e-03, 8.375032512825579881e-03, 8.368577003177869733e-03, 8.362108221600925151e-03, 8.355626179255396663e-03, 8.349130887323174752e-03, 8.342622357006763620e-03, 8.336100599530044467e-03, 8.329565626137210368e-03, 8.323017448093963239e-03, 8.316456076686525034e-03, 8.309881523222035007e-03, 8.303293799028634709e-03, 8.296692915455034303e-03, 8.290078883871121462e-03, 8.283451715667012466e-03, 8.276811422254155490e-03, 8.270158015064347015e-03, 8.263491505550401434e-03, 8.256811905185613282e-03, 8.250119225463998368e-03, 8.243413477900416939e-03, 8.236694674030198976e-03, 8.229962825409324612e-03, 8.223217943614359940e-03, 8.216460040242618348e-03, 8.209689126911841328e-03, 8.202905215260250515e-03, 8.196108316946847799e-03, 8.189298443650908782e-03, 8.182475607072265539e-03, 8.175639818931167840e-03, 8.168791090968461829e-03, 8.161929434945475528e-03, 8.155054862643481076e-03, 8.148167385864726886e-03, 8.141267016431374265e-03, 8.134353766186321402e-03, 8.127427646992474788e-03, 8.120488670733092690e-03, 8.113536849311986376e-03, 8.106572194652930316e-03, 8.099594718700073304e-03, 8.092604433417671314e-03, 8.085601350790470876e-03, 8.078585482823133143e-03, 8.071556841540504512e-03, 8.064515438987774482e-03, 8.057461287230066257e-03, 8.050394398352631042e-03, 8.043314784460789055e-03, 8.036222457680101267e-03, 8.029117430155954804e-03, 8.021999714053765912e-03, 8.014869321559170770e-03, 8.007726264877491201e-03, 8.000570556234359171e-03, 7.993402207874851159e-03, 7.986221232064431852e-03, 7.979027641088159636e-03, 7.971821447251220896e-03, 7.964602662878425207e-03, 7.957371300314416973e-03, 7.950127371923987676e-03, 7.942870890091139127e-03, 7.935601867220243993e-03, 7.928320315734939047e-03, 7.921026248078985588e-03, 7.913719676715592899e-03, 7.906400614127626417e-03, 7.899069072817881815e-03, 7.891725065308552445e-03, 7.884368604141453116e-03, 7.876999701878226526e-03, 7.869618371099756926e-03, 7.862224624406949011e-03, 7.854818474419610758e-03, 7.847399933777698955e-03, 7.839969015140162145e-03, 7.832525731185834006e-03, 7.825070094612706501e-03, 7.817602118138203965e-03, 7.810121814499532654e-03, 7.802629196452606081e-03, 7.795124276773368610e-03, 7.787607068256677430e-03, 7.780077583716992970e-03, 7.772535835987868895e-03, 7.764981837922142922e-03, 7.757415602392099020e-03, 7.749837142289038062e-03, 7.742246470523604825e-03, 7.734643600025451447e-03, 7.727028543743711883e-03, 7.719401314646378263e-03, 7.711761925720622690e-03, 7.704110389972904788e-03, 7.696446720428521543e-03, 7.688770930131960321e-03, 7.681083032146605698e-03, 7.673383039555054311e-03, 7.665670965458916235e-03, 7.657946822978344004e-03, 7.650210625253010127e-03, 7.642462385441027226e-03, 7.634702116719825800e-03, 7.626929832285375341e-03, 7.619145545352590254e-03, 7.611349269155437414e-03, 7.603541016946424418e-03, 7.595720801996917911e-03, 7.587888637597037765e-03, 7.580044537055808870e-03, 7.572188513700802044e-03, 7.564320580878245055e-03, 7.556440751953318394e-03, 7.548549040309573271e-03, 7.540645459349303720e-03, 7.532730022493308933e-03, 7.524802743181240212e-03, 7.516863634871066673e-03, 7.508912711039242641e-03, 7.500949985181090164e-03, 7.492975470809980221e-03, 7.484989181458277276e-03, 7.476991130676124975e-03, 7.468981332032717697e-03, 7.460959799115222425e-03, 7.452926545529536817e-03, 7.444881584899675116e-03, 7.436824930867919070e-03, 7.428756597095192635e-03, 7.420676597260426194e-03, 7.412584945060791616e-03, 7.404481654211972873e-03, 7.396366738447628271e-03, 7.388240211519692298e-03, 7.380102087198161381e-03, 7.371952379271466856e-03, 7.363791101545918982e-03, 7.355618267845883892e-03, 7.347433892014082826e-03, 7.339237987910982378e-03, 7.331030569415485781e-03, 7.322811650423857385e-03, 7.314581244851028029e-03, 7.306339366629419768e-03, 7.298086029709757727e-03, 7.289821248060381412e-03, 7.281545035667549154e-03, 7.273257406535668830e-03, 7.264958374686682034e-03, 7.256647954160476942e-03, 7.248326159014622898e-03, 7.239993003324734708e-03, 7.231648501183949619e-03, 7.223292666703057426e-03, 7.214925514010892514e-03, 7.206547057253646048e-03, 7.198157310595265819e-03, 7.189756288217235940e-03, 7.181344004318956746e-03, 7.172920473117064787e-03, 7.164485708845823135e-03, 7.156039725757269709e-03, 7.147582538120581495e-03, 7.139114160222934970e-03, 7.130634606368239752e-03, 7.122143890878444850e-03, 7.113642028092928039e-03, 7.105129032367865291e-03, 7.096604918077468495e-03, 7.088069699612832737e-03, 7.079523391382708253e-03, 7.070966007812901945e-03, 7.062397563346482082e-03, 7.053818072443991671e-03, 7.045227549582993957e-03, 7.036626009258272786e-03, 7.028013465981710305e-03, 7.019389934282630437e-03, 7.010755428707203876e-03, 7.002109963818670124e-03, 6.993453554197649746e-03, 6.984786214441432266e-03, 6.976107959164781075e-03, 6.967418802998822346e-03, 6.958718760592307907e-03, 6.950007846610575281e-03, 6.941286075735872071e-03, 6.932553462667642198e-03, 6.923810022121828535e-03, 6.915055768831698639e-03, 6.906290717546659935e-03, 6.897514883033617136e-03, 6.888728280075771815e-03, 6.879930923473456805e-03, 6.871122828043444049e-03, 6.862304008619205670e-03, 6.853474480051184592e-03, 6.844634257206201264e-03, 6.835783354967660090e-03, 6.826921788235910254e-03, 6.818049571927485911e-03, 6.809166720975922370e-03, 6.800273250330647612e-03, 6.791369174958225216e-03, 6.782454509841360363e-03, 6.773529269979179993e-03, 6.764593470387532045e-03, 6.755647126098275959e-03, 6.746690252160148296e-03, 6.737722863637569254e-03, 6.728744975611923758e-03, 6.719756603180424351e-03, 6.710757761457007177e-03, 6.701748465571500182e-03, 6.692728730669960518e-03, 6.683698571914971180e-03, 6.674658004484971402e-03, 6.665607043574671257e-03, 6.656545704394800991e-03, 6.647474002172449291e-03, 6.638391952150535930e-03, 6.629299569587985240e-03, 6.620196869760070456e-03, 6.611083867957736303e-03, 6.601960579488015332e-03, 6.592827019673785927e-03, 6.583683203854140929e-03, 6.574529147383763143e-03, 6.565364865633205489e-03, 6.556190373989152949e-03, 6.547005687853762503e-03, 6.537810822645297171e-03, 6.528605793797543147e-03, 6.519390616759996281e-03, 6.510165306998179531e-03, 6.500929879993019335e-03, 6.491684351241170867e-03, 6.482428736254848903e-03, 6.473163050562154817e-03, 6.463887309706470297e-03, 6.454601529246799078e-03, 6.445305724757904864e-03, 6.435999911829772685e-03, 6.426684106067981003e-03, 6.417358323093455379e-03, 6.408022578542850109e-03, 6.398676888067921995e-03, 6.389321267335793149e-03, 6.379955732029239830e-03, 6.370580297845962123e-03, 6.361194980499481656e-03, 6.351799795717836226e-03, 6.342394759245029157e-03, 6.332979886839808052e-03, 6.323555194276481856e-03, 6.314120697344248641e-03, 6.304676411847404648e-03, 6.295222353605793575e-03, 6.285758538453641714e-03, 6.276284982240905828e-03, 6.266801700832126502e-03, 6.257308710107196623e-03, 6.247806025960723868e-03, 6.238293664302231069e-03, 6.228771641056536114e-03, 6.219239972162977394e-03, 6.209698673575816258e-03, 6.200147761264454722e-03, 6.190587251212689539e-03, 6.181017159419663690e-03, 6.171437501898495957e-03, 6.161848294677846512e-03, 6.152249553800528264e-03, 6.142641295324458364e-03, 6.133023535321907062e-03, 6.123396289879763990e-03, 6.113759575099977049e-03, 6.104113407098299936e-03, 6.094457802005803088e-03, 6.084792775967531007e-03, 6.075118345143481514e-03, 6.065434525707763536e-03, 6.055741333848955327e-03, 6.046038785770379426e-03, 6.036326897689422641e-03, 6.026605685837936772e-03, 6.016875166461992282e-03, 6.007135355822305033e-03, 5.997386270193554546e-03, 5.987627925864676300e-03, 5.977860339139128010e-03, 5.968083526334275538e-03, 5.958297503781779733e-03, 5.948502287827283318e-03, 5.938697894830812472e-03, 5.928884341166566936e-03, 5.919061643222190555e-03, 5.909229817400088805e-03, 5.899388880116169381e-03, 5.889538847800725174e-03, 5.879679736897693541e-03, 5.869811563864944272e-03, 5.859934345174561479e-03, 5.850048097312167059e-03, 5.840152836777379522e-03, 5.830248580083472257e-03, 5.820335343757881801e-03, 5.810413144341468848e-03, 5.800481998388792339e-03, 5.790541922468503237e-03, 5.780592933162563042e-03, 5.770635047066727773e-03, 5.760668280790220107e-03, 5.750692650956252400e-03, 5.740708174201232181e-03, 5.730714867175138588e-03, 5.720712746541760894e-03, 5.710701828977965584e-03, 5.700682131174611422e-03, 5.690653669835219787e-03, 5.680616461677516840e-03, 5.670570523431982431e-03, 5.660515871842977664e-03, 5.650452523667769122e-03, 5.640380495676967747e-03, 5.630299804654765629e-03, 5.620210467398258601e-03, 5.610112500717738537e-03, 5.600005921437032491e-03, 5.589890746392766306e-03, 5.579766992434826052e-03, 5.569634676426067459e-03, 5.559493815242745260e-03, 5.549344425773819305e-03, 5.539186524921285021e-03, 5.529020129600436227e-03, 5.518845256739068894e-03, 5.508661923278493355e-03, 5.498470146172117906e-03, 5.488269942386996177e-03, 5.478061328902498334e-03, 5.467844322711233086e-03, 5.457618940818273999e-03, 5.447385200241421435e-03, 5.437143118011588533e-03, 5.426892711172035325e-03, 5.416633996778793744e-03, 5.406366991900456859e-03, 5.396091713618556170e-03, 5.385808179026845173e-03, 5.375516405231720897e-03, 5.365216409352367884e-03, 5.354908208520183996e-03, 5.344591819879123025e-03, 5.334267260585501269e-03, 5.323934547808387846e-03, 5.313593698728889120e-03, 5.303244730540480900e-03, 5.292887660449297274e-03, 5.282522505673375134e-03, 5.272149283443525007e-03, 5.261768011002058640e-03, 5.251378705604162894e-03, 5.240981384517249229e-03, 5.230576065020155728e-03, 5.220162764404696204e-03, 5.209741499974183954e-03, 5.199312289044506416e-03, 5.188875148943223985e-03, 5.178430097009914350e-03, 5.167977150596491688e-03, 5.157516327066520578e-03, 5.147047643795559478e-03, 5.136571118170985516e-03, 5.126086767592386538e-03, 5.115594609470851609e-03, 5.105094661229306677e-03, 5.094586940302762643e-03, 5.084071464137591978e-03, 5.073548250192416037e-03, 5.063017315936793605e-03, 5.052478678852727507e-03, 5.041932356433423412e-03, 5.031378366183693156e-03, 5.020816725620294747e-03, 5.010247452271074549e-03, 4.999670563675958669e-03, 4.989086077385597277e-03, 4.978494010962898099e-03, 4.967894381981636034e-03, 4.957287208027471442e-03, 4.946672506697081043e-03, 4.936050295598505729e-03, 4.925420592351443735e-03, 4.914783414586560220e-03, 4.904138779945783032e-03, 4.893486706082603686e-03, 4.882827210661258577e-03, 4.872160311357788889e-03, 4.861486025858513180e-03, 4.850804371861696176e-03, 4.840115367076263352e-03, 4.829419029222148732e-03, 4.818715376030697356e-03, 4.808004425243786635e-03, 4.797286194614871525e-03, 4.786560701907468379e-03, 4.775827964896888801e-03, 4.765088001368716561e-03, 4.754340829119864907e-03, 4.743586465957725685e-03, 4.732824929700472916e-03, 4.722056238177403664e-03, 4.711280409228226808e-03, 4.700497460703433397e-03, 4.689707410464098898e-03, 4.678910276382296056e-03, 4.668106076340377587e-03, 4.657294828231253736e-03, 4.646476549958785188e-03, 4.635651259436988567e-03, 4.624818974590489198e-03, 4.613979713354294729e-03, 4.603133493674188906e-03, 4.592280333506009067e-03, 4.581420250815998289e-03, 4.570553263581084678e-03, 4.559679389788051304e-03, 4.548798647434453002e-03, 4.537911054527743807e-03, 4.527016629085633438e-03, 4.516115389136360521e-03, 4.505207352718003898e-03, 4.494292537878901567e-03, 4.483370962677374859e-03, 4.472442645182203753e-03, 4.461507603471868803e-03, 4.450565855634844303e-03, 4.439617419770003348e-03, 4.428662313985786900e-03, 4.417700556400711194e-03, 4.406732165143068501e-03, 4.395757158351396368e-03, 4.384775554173722147e-03, 4.373787370767874376e-03, 4.362792626301839269e-03, 4.351791338952850849e-03, 4.340783526908521990e-03, 4.329769208365288370e-03, 4.318748401530073805e-03, 4.307721124618869510e-03, 4.296687395857758454e-03, 4.285647233481992488e-03, 4.274600655736424289e-03, 4.263547680875877724e-03, 4.252488327163807778e-03, 4.241422612873989306e-03, 4.230350556289010425e-03, 4.219272175701340236e-03, 4.208187489412446719e-03, 4.197096515733126330e-03, 4.185999272983860486e-03, 4.174895779494034072e-03, 4.163786053602260701e-03, 4.152670113656773028e-03, 4.141547978014444367e-03, 4.130419665041960495e-03, 4.119285193114248858e-03, 4.108144580616193350e-03, 4.096997845941121631e-03, 4.085845007491900605e-03, 4.074686083680021352e-03, 4.063521092925941741e-03, 4.052350053659553933e-03, 4.041172984318810481e-03, 4.029989903351394002e-03, 4.018800829213231389e-03, 4.007605780369547649e-03, 3.996404775294008956e-03, 3.985197832469026223e-03, 3.973984970386106388e-03, 3.962766207545094337e-03, 3.951541562454627399e-03, 3.940311053631833510e-03, 3.929074699602845555e-03, 3.917832518901999059e-03, 3.906584530072142701e-03, 3.895330751665077203e-03, 3.884071202240635921e-03, 3.872805900367298944e-03, 3.861534864621791064e-03, 3.850258113589532811e-03, 3.838975665864376337e-03, 3.827687540047808746e-03, 3.816393754750452630e-03, 3.805094328590594155e-03, 3.793789280195269432e-03, 3.782478628199316493e-03, 3.771162391245781644e-03, 3.759840587986236493e-03, 3.748513237079957421e-03, 3.737180357194485898e-03, 3.725841967005244244e-03, 3.714498085196100280e-03, 3.703148730458489992e-03, 3.691793921491868125e-03, 3.680433677003951479e-03, 3.669068015710015476e-03, 3.657696956333314833e-03, 3.646320517604827692e-03, 3.634938718263718786e-03, 3.623551577056535397e-03, 3.612159112737608514e-03, 3.600761344069332986e-03, 3.589358289821303200e-03, 3.577949968771399446e-03, 3.566536399704229275e-03, 3.555117601412899949e-03, 3.543693592697420760e-03, 3.532264392365874403e-03, 3.520830019233442496e-03, 3.509390492122778111e-03, 3.497945829864356187e-03, 3.486496051295690304e-03, 3.475041175261779375e-03, 3.463581220614863482e-03, 3.452116206214858422e-03, 3.440646150928601543e-03, 3.429171073630164854e-03, 3.417690993201249246e-03, 3.406205928530344450e-03, 3.394715898513111542e-03, 3.383220922052709943e-03, 3.371721018058918343e-03, 3.360216205449185079e-03, 3.348706503147120227e-03, 3.337191930084232490e-03, 3.325672505198368819e-03, 3.314148247434815526e-03, 3.302619175745402300e-03, 3.291085309088839610e-03, 3.279546666431066085e-03, 3.268003266744455744e-03, 3.256455129008305888e-03, 3.244902272208521378e-03, 3.233344715338142862e-03, 3.221782477396508901e-03, 3.210215577389621128e-03, 3.198644034330500301e-03, 3.187067867238368817e-03, 3.175487095139178494e-03, 3.163901737065261469e-03, 3.152311812055848001e-03, 3.140717339156279785e-03, 3.129118337418310049e-03, 3.117514825900512525e-03, 3.105906823667337318e-03, 3.094294349790193809e-03, 3.082677423345951424e-03, 3.071056063418506950e-03, 3.059430289098043817e-03, 3.047800119480161257e-03, 3.036165573667596023e-03, 3.024526670768568331e-03, 3.012883429897971008e-03, 3.001235870176399353e-03, 2.989584010730517161e-03, 2.977927870693413206e-03, 2.966267469203797639e-03, 2.954602825406495072e-03, 2.942933958452118894e-03, 2.931260887497609460e-03, 2.919583631705385818e-03, 2.907902210243704794e-03, 2.896216642287069085e-03, 2.884526947015203773e-03, 2.872833143614264995e-03, 2.861135251275227949e-03, 2.849433289195645470e-03, 2.837727276578231195e-03, 2.826017232631325773e-03, 2.814303176569247708e-03, 2.802585127611369620e-03, 2.790863104983259263e-03, 2.779137127915050614e-03, 2.767407215643286587e-03, 2.755673387409291863e-03, 2.743935662460318670e-03, 2.732194060048600496e-03, 2.720448599431734595e-03, 2.708699299872999004e-03, 2.696946180640587536e-03, 2.685189261007935035e-03, 2.673428560254080370e-03, 2.661664097662742694e-03, 2.649895892523444676e-03, 2.638123964129918727e-03, 2.626348331781908942e-03, 2.614569014783687043e-03, 2.602786032444579303e-03, 2.590999404079277497e-03, 2.579209149006936406e-03, 2.567415286552291419e-03, 2.555617836044060415e-03, 2.543816816816762624e-03, 2.532012248209103596e-03, 2.520204149565106674e-03, 2.508392540233197934e-03, 2.496577439566536206e-03, 2.484758866923401227e-03, 2.472936841666339720e-03, 2.461111383162708360e-03, 2.449282510784330305e-03, 2.437450243908017341e-03, 2.425614601914751096e-03, 2.413775604190028685e-03, 2.401933270124226132e-03, 2.390087619111807334e-03, 2.378238670551783337e-03, 2.366386443847426965e-03, 2.354530958406779364e-03, 2.342672233641829044e-03, 2.330810288968843211e-03, 2.318945143808774124e-03, 2.307076817586284183e-03, 2.295205329730760739e-03, 2.283330699675374144e-03, 2.271452946857451145e-03, 2.259572090718803619e-03, 2.247688150704948810e-03, 2.235801146265574673e-03, 2.223911096854247135e-03, 2.212018021928920108e-03, 2.200121940951117998e-03, 2.188222873386256630e-03, 2.176320838704056976e-03, 2.164415856377707725e-03, 2.152507945884331482e-03, 2.140597126704739742e-03, 2.128683418323882616e-03, 2.116766840230052595e-03, 2.104847411915235830e-03, 2.092925152875497671e-03, 2.081000082609986077e-03, 2.069072220622123360e-03, 2.057141586417984662e-03, 2.045208199508099026e-03, 2.033272079405853017e-03, 2.021333245628625670e-03, 2.009391717696855633e-03, 1.997447515134379448e-03, 1.985500657468957167e-03, 1.973551164230758805e-03, 1.961599054954201414e-03, 1.949644349176332756e-03, 1.937687066437970363e-03, 1.925727226282763918e-03, 1.913764848257549145e-03, 1.901799951912712524e-03, 1.889832556801374899e-03, 1.877862682479740798e-03, 1.865890348507491135e-03, 1.853915574446780758e-03, 1.841938379863452971e-03, 1.829958784325363573e-03, 1.817976807404246553e-03, 1.805992468674066757e-03, 1.794005787712191257e-03, 1.782016784098427878e-03, 1.770025477415389714e-03, 1.758031887248996238e-03, 1.746036033186975809e-03, 1.734037934820704908e-03, 1.722037611743562537e-03, 1.710035083552110483e-03, 1.698030369845133581e-03, 1.686023490223992512e-03, 1.674014464292991567e-03, 1.662003311658562894e-03, 1.649990051929759805e-03, 1.637974704717945831e-03, 1.625957289637317959e-03, 1.613937826304062033e-03, 1.601916334336718137e-03, 1.589892833356556590e-03, 1.577867342986741164e-03, 1.565839882852832800e-03, 1.553810472582492757e-03, 1.541779131805838445e-03, 1.529745880155300528e-03, 1.517710737264631312e-03, 1.505673722770632097e-03, 1.493634856311497382e-03, 1.481594157528002501e-03, 1.469551646062527408e-03, 1.457507341559420534e-03, 1.445461263665383678e-03, 1.433413432028619395e-03, 1.421363866299357476e-03, 1.409312586129521025e-03, 1.397259611173266814e-03, 1.385204961086126821e-03, 1.373148655525383358e-03, 1.361090714150439002e-03, 1.349031156621983063e-03, 1.336970002602493133e-03, 1.324907271755934981e-03, 1.312842983748272341e-03, 1.300777158246623193e-03, 1.288709814919628818e-03, 1.276640973437833922e-03, 1.264570653472704568e-03, 1.252498874697813638e-03, 1.240425656787189166e-03, 1.228351019417167015e-03, 1.216274982264749401e-03, 1.204197565008779730e-03, 1.192118787328960965e-03, 1.180038668906243770e-03, 1.167957229423187545e-03, 1.155874488563121043e-03, 1.143790466010646736e-03, 1.131705181451357189e-03, 1.119618654572310593e-03, 1.107530905061220212e-03, 1.095441952606810440e-03, 1.083351816899196050e-03, 1.071260517629026108e-03, 1.059168074487887084e-03, 1.047074507168642204e-03, 1.034979835364476485e-03, 1.022884078770070707e-03, 1.010787257079953433e-03, 9.986893899903543335e-04, 9.865904971975620642e-04, 9.744905983990878248e-04, 9.623897132927071441e-04, 9.502878615768330615e-04, 9.381850629508734808e-04, 9.260813371143955747e-04, 9.139767037676462024e-04, 9.018711826112358644e-04, 8.897647933466470852e-04, 8.776575556754025046e-04, 8.655494892994239657e-04, 8.534406139214222855e-04, 8.413309492440378080e-04, 8.292205149703623388e-04, 8.171093308036259193e-04, 8.049974164477155091e-04, 7.928847916063275734e-04, 7.807714759833379045e-04, 7.686574892831779483e-04, 7.565428512098632506e-04, 7.444275814681663474e-04, 7.323116997619700782e-04, 7.201952257959902751e-04, 7.080781792749383250e-04, 6.959605799026664930e-04, 6.838424473839047057e-04, 6.717238014225996624e-04, 6.596046617231016021e-04, 6.474850479891893894e-04, 6.353649799244361074e-04, 6.232444772325921060e-04, 6.111235596167331448e-04, 5.990022467797752803e-04, 5.868805584241703135e-04, 5.747585142524122212e-04, 5.626361339661996091e-04, 5.505134372668073770e-04, 5.383904438554539375e-04, 5.262671734323318314e-04, 5.141436456977893990e-04, 5.020198803506740115e-04, 4.898958970901939707e-04, 4.777717156144052884e-04, 4.656473556207076548e-04, 4.535228368062325282e-04, 4.413981788668550478e-04, 4.292734014983824817e-04, 4.171485243948990841e-04, 4.050235672506281577e-04, 3.928985497582771283e-04, 3.807734916102196499e-04, 3.686484124975217204e-04, 3.565233321103145384e-04, 3.443982701381649212e-04, 3.322732462692349936e-04, 3.201482801906545034e-04, 3.080233915888972557e-04, 2.958986001487985554e-04, 2.837739255547431670e-04, 2.716493874890110391e-04, 2.595250056336352476e-04, 2.474007996688872024e-04, 2.352767892737819670e-04, 2.231529941264539347e-04, 2.110294339031771162e-04, 1.989061282795523140e-04, 1.867830969288501904e-04, 1.746603595238741707e-04, 1.625379357353055442e-04, 1.504158452328871421e-04, 1.382941076844475009e-04, 1.261727427562733404e-04, 1.140517701134824750e-04, 1.019312094191823640e-04, 8.981108033497791200e-05, 7.769140252066970766e-05, 6.557219563476328729e-05, 5.345347933362549678e-05, 4.133527327185843969e-05, 2.921759710267347618e-05, 1.710047047704803223e-05, 4.983913044234646903e-06, -7.132055548541158316e-06, -1.924741565557222780e-05, -3.136214763351222905e-05, -4.347623184100219502e-05, -5.558964863829692922e-05, -6.770237838824225813e-05, -7.981440145509146526e-05, -9.192569820615802188e-05, -1.040362490100908585e-04, -1.161460342378512378e-04, -1.282550342628823239e-04, -1.403632294607308094e-04, -1.524706002093540423e-04, -1.645771268886078904e-04, -1.766827898810905751e-04, -1.887875695717686219e-04, -2.008914463476036783e-04, -2.129944005983936371e-04, -2.250964127162665318e-04, -2.371974630959789354e-04, -2.492975321344096111e-04, -2.613966002314027236e-04, -2.734946477893911328e-04, -2.855916552130252444e-04, -2.976876029101488191e-04, -3.097824712906170836e-04, -3.218762407679460731e-04, -3.339688917574576161e-04, -3.460604046779259114e-04, -3.581507599503988386e-04, -3.702399379991741729e-04, -3.823279192514236389e-04, -3.944146841366856114e-04, -4.065002130883827824e-04, -4.185844865419628626e-04, -4.306674849365511220e-04, -4.427491887137641646e-04, -4.548295783186917822e-04, -4.669086341995169948e-04, -4.789863368071481278e-04, -4.910626665960592845e-04, -5.031376040239132069e-04, -5.152111295511924843e-04, -5.272832236421736004e-04, -5.393538667637441230e-04, -5.514230393870538354e-04, -5.634907219856577151e-04, -5.755568950371647884e-04, -5.876215390220592772e-04, -5.996846344246715022e-04, -6.117461617328055681e-04, -6.238061014372369437e-04, -6.358644340332212383e-04, -6.479211400186386978e-04, -6.599761998956463118e-04, -6.720295941694952747e-04, -6.840813033495040567e-04, -6.961313079486858724e-04, -7.081795884833786423e-04, -7.202261254740828641e-04, -7.322708994449533392e-04, -7.443138909240992794e-04, -7.563550804430834058e-04, -7.683944485377533148e-04, -7.804319757478717654e-04, -7.924676426167464238e-04, -8.045014296920656753e-04, -8.165333175253944699e-04, -8.285632866724731288e-04, -8.405913176927077689e-04, -8.526173911500196673e-04, -8.646414876124576586e-04, -8.766635876518364453e-04, -8.886836718447086933e-04, -9.007017207713133560e-04, -9.127177150165580698e-04, -9.247316351696407673e-04, -9.367434618236777965e-04, -9.487531755765469957e-04, -9.607607570303733488e-04, -9.727661867918321274e-04, -9.847694454716516763e-04, -9.967705136854384911e-04, -1.008769372053300566e-03, -1.020766001199503812e-03, -1.032760381753276098e-03, -1.044752494348315892e-03, -1.056742319623099309e-03, -1.068729838220364679e-03, -1.080715030787941094e-03, -1.092697877978402333e-03, -1.104678360448669823e-03, -1.116656458860994933e-03, -1.128632153881783040e-03, -1.140605426183228513e-03, -1.152576256441480455e-03, -1.164544625338262288e-03, -1.176510513559719676e-03, -1.188473901797374409e-03, -1.200434770747756206e-03, -1.212393101112031702e-03, -1.224348873596851428e-03, -1.236302068913821585e-03, -1.248252667779823234e-03, -1.260200650916497517e-03, -1.272145999051091771e-03, -1.284088692916068343e-03, -1.296028713248749409e-03, -1.307966040792156144e-03, -1.319900656294616462e-03, -1.331832540509412426e-03, -1.343761674195754520e-03, -1.355688038117579914e-03, -1.367611613045216718e-03, -1.379532379753526522e-03, -1.391450319023550221e-03, -1.403365411641323626e-03, -1.415277638398860409e-03, -1.427186980093765904e-03, -1.439093417528876069e-03, -1.450996931513085604e-03, -1.462897502860851162e-03, -1.474795112392480621e-03, -1.486689740933639552e-03, -1.498581369316172611e-03, -1.510469978377737945e-03, -1.522355548961447456e-03, -1.534238061916678650e-03, -1.546117498098594986e-03, -1.557993838368410423e-03, -1.569867063592936870e-03, -1.581737154645356143e-03, -1.593604092404903808e-03, -1.605467857756456536e-03, -1.617328431591531735e-03, -1.629185794807098617e-03, -1.641039928307200593e-03, -1.652890813001280188e-03, -1.664738429804987849e-03, -1.676582759641020038e-03, -1.688423783437413561e-03, -1.700261482129183802e-03, -1.712095836657137301e-03, -1.723926827968867703e-03, -1.735754437018349619e-03, -1.747578644765593846e-03, -1.759399432177467457e-03, -1.771216780227205263e-03, -1.783030669894670236e-03, -1.794841082165912240e-03, -1.806647998033929789e-03, -1.818451398498356067e-03, -1.830251264565058416e-03, -1.842047577247102851e-03, -1.853840317563611737e-03, -1.865629466541356921e-03, -1.877415005212949330e-03, -1.889196914618329528e-03, -1.900975175804260967e-03, -1.912749769823969158e-03, -1.924520677738081028e-03, -1.936287880613503636e-03, -1.948051359524991498e-03, -1.959811095553373912e-03, -1.971567069787127056e-03, -1.983319263321260510e-03, -1.995067657258228419e-03, -2.006812232707591223e-03, -2.018552970785651365e-03, -2.030289852616250831e-03, -2.042022859330305373e-03, -2.053751972066068191e-03, -2.065477171968789060e-03, -2.077198440190869584e-03, -2.088915757892795180e-03, -2.100629106241493592e-03, -2.112338466411775150e-03, -2.124043819585857019e-03, -2.135745146952993702e-03, -2.147442429710421600e-03, -2.159135649062225801e-03, -2.170824786220916514e-03, -2.182509822405651403e-03, -2.194190738843818968e-03, -2.205867516769893615e-03, -2.217540137426395833e-03, -2.229208582063506652e-03, -2.240872831938728934e-03, -2.252532868317674939e-03, -2.264188672473613131e-03, -2.275840225687715372e-03, -2.287487509248590286e-03, -2.299130504453091636e-03, -2.310769192605953599e-03, -2.322403555019438622e-03, -2.334033573014140158e-03, -2.345659227918486973e-03, -2.357280501069055831e-03, -2.368897373810046302e-03, -2.380509827494126443e-03, -2.392117843482049425e-03, -2.403721403142301382e-03, -2.415320487852048569e-03, -2.426915078995972499e-03, -2.438505157967886267e-03, -2.450090706169067920e-03, -2.461671705009192430e-03, -2.473248135906495632e-03, -2.484819980287410798e-03, -2.496387219586875244e-03, -2.507949835247804717e-03, -2.519507808721946004e-03, -2.531061121469480989e-03, -2.542609754958696181e-03, -2.554153690666755971e-03, -2.565692910079246398e-03, -2.577227394690458778e-03, -2.588757126002878394e-03, -2.600282085528014125e-03, -2.611802254786031990e-03, -2.623317615305396922e-03, -2.634828148623798681e-03, -2.646333836287044668e-03, -2.657834659850599052e-03, -2.669330600877850655e-03, -2.680821640941651214e-03, -2.692307761623204294e-03, -2.703788944513000302e-03, -2.715265171210443518e-03, -2.726736423323375055e-03, -2.738202682469526549e-03, -2.749663930274729925e-03, -2.761120148374513784e-03, -2.772571318412954140e-03, -2.784017422043608136e-03, -2.795458440929162337e-03, -2.806894356741083171e-03, -2.818325151160414911e-03, -2.829750805877385023e-03, -2.841171302591119236e-03, -2.852586623010518446e-03, -2.863996748853145022e-03, -2.875401661846781459e-03, -2.886801343727689578e-03, -2.898195776242171780e-03, -2.909584941145414855e-03, -2.920968820202451879e-03, -2.932347395187801398e-03, -2.943720647884968695e-03, -2.955088560087889941e-03, -2.966451113599194445e-03, -2.977808290231707782e-03, -2.989160071807417038e-03, -3.000506440158291765e-03, -3.011847377126036784e-03, -3.023182864561647660e-03, -3.034512884326259850e-03, -3.045837418290657343e-03, -3.057156448335525065e-03, -3.068469956351022564e-03, -3.079777924237525610e-03, -3.091080333905307006e-03, -3.102377167274176194e-03, -3.113668406274253814e-03, -3.124954032845510699e-03, -3.136234028938047168e-03, -3.147508376511609033e-03, -3.158777057536393817e-03, -3.170040053992660440e-03, -3.181297347870435180e-03, -3.192548921170369498e-03, -3.203794755902788539e-03, -3.215034834088615744e-03, -3.226269137758969088e-03, -3.237497648954896102e-03, -3.248720349728070802e-03, -3.259937222140365208e-03, -3.271148248264132540e-03, -3.282353410181726699e-03, -3.293552689986268146e-03, -3.304746069781317776e-03, -3.315933531680493544e-03, -3.327115057808328284e-03, -3.338290630299705491e-03, -3.349460231300176779e-03, -3.360623842965528626e-03, -3.371781447462484944e-03, -3.382933026968417810e-03, -3.394078563670993587e-03, -3.405218039769039411e-03, -3.416351437471499327e-03, -3.427478738998910104e-03, -3.438599926581737635e-03, -3.449714982461841040e-03, -3.460823888891438344e-03, -3.471926628133954751e-03, -3.483023182463709094e-03, -3.494113534165560822e-03, -3.505197665535698427e-03, -3.516275558881121199e-03, -3.527347196519993542e-03, -3.538412560781096367e-03, -3.549471634004670601e-03, -3.560524398542013434e-03, -3.571570836755170834e-03, -3.582610931017700829e-03, -3.593644663714326559e-03, -3.604672017240596275e-03, -3.615692974003768909e-03, -3.626707516421748961e-03, -3.637715626924577922e-03, -3.648717287952737715e-03, -3.659712481958665980e-03, -3.670701191405667529e-03, -3.681683398768819011e-03, -3.692659086534588134e-03, -3.703628237200542236e-03, -3.714590833276100283e-03, -3.725546857282026336e-03, -3.736496291750776924e-03, -3.747439119225968486e-03, -3.758375322263185318e-03, -3.769304883429627859e-03, -3.780227785303755771e-03, -3.791144010476071597e-03, -3.802053541548664536e-03, -3.812956361135442021e-03, -3.823852451861731606e-03, -3.834741796364980488e-03, -3.845624377294451068e-03, -3.856500177310874002e-03, -3.867369179087329009e-03, -3.878231365308186691e-03, -3.889086718670570035e-03, -3.899935221882823520e-03, -3.910776857665277696e-03, -3.921611608750962159e-03, -3.932439457884100674e-03, -3.943260387821592196e-03, -3.954074381331911490e-03, -3.964881421196017261e-03, -3.975681490206999999e-03, -3.986474571169741979e-03, -3.997260646901710894e-03, -4.008039700232422092e-03, -4.018811714003815011e-03, -4.029576671069701535e-03, -4.040334554296561367e-03, -4.051085346563209830e-03, -4.061829030760458724e-03, -4.072565589791959408e-03, -4.083295006573196655e-03, -4.094017264032943221e-03, -4.104732345111553743e-03, -4.115440232762382876e-03, -4.126140909951289161e-03, -4.136834359656333185e-03, -4.147520564868611981e-03, -4.158199508591221664e-03, -4.168871173840730214e-03, -4.179535543645509534e-03, -4.190192601047219509e-03, -4.200842329099735081e-03, -4.211484710870050038e-03, -4.222119729437902313e-03, -4.232747367895433113e-03, -4.243367609347989226e-03, -4.253980436913633832e-03, -4.264585833723398903e-03, -4.275183782920992902e-03, -4.285774267662908338e-03, -4.296357271119316014e-03, -4.306932776472522859e-03, -4.317500766918295520e-03, -4.328061225665451837e-03, -4.338614135935498287e-03, -4.349159480963491267e-03, -4.359697243997008413e-03, -4.370227408297584076e-03, -4.380749957139091696e-03, -4.391264873809183622e-03, -4.401772141608243337e-03, -4.412271743850252823e-03, -4.422763663862459491e-03, -4.433247884985052657e-03, -4.443724390571898199e-03, -4.454193163990079717e-03, -4.464654188620176961e-03, -4.475107447855811334e-03, -4.485552925104372736e-03, -4.495990603786735942e-03, -4.506420467336848604e-03, -4.516842499202559577e-03, -4.527256682845099377e-03, -4.537663001739384618e-03, -4.548061439373567855e-03, -4.558451979249734942e-03, -4.568834604883646559e-03, -4.579209299804334887e-03, -4.589576047555000461e-03, -4.599934831691983479e-03, -4.610285635786153316e-03, -4.620628443421465233e-03, -4.630963238195767891e-03, -4.641290003720979426e-03, -4.651608723622711883e-03, -4.661919381540587798e-03, -4.672221961127758817e-03, -4.682516446051667239e-03, -4.692802819993664373e-03, -4.703081066648760744e-03, -4.713351169726290486e-03, -4.723613112949494146e-03, -4.733866880055784959e-03, -4.744112454796318643e-03, -4.754349820936654321e-03, -4.764578962256521208e-03, -4.774799862549420487e-03, -4.785012505623516092e-03, -4.795216875300594740e-03, -4.805412955417448506e-03, -4.815600729824346532e-03, -4.825780182386413264e-03, -4.835951296982610170e-03, -4.846114057506567541e-03, -4.856268447866272236e-03, -4.866414451983628806e-03, -4.876552053795790015e-03, -4.886681237253474169e-03, -4.896801986322481259e-03, -4.906914284982601820e-03, -4.917018117228501642e-03, -4.927113467069364414e-03, -4.937200318528594221e-03, -4.947278655644526783e-03, -4.957348462470104189e-03, -4.967409723072533159e-03, -4.977462421534177561e-03, -4.987506541951497625e-03, -4.997542068436438591e-03, -5.007568985114923231e-03, -5.017587276128166775e-03, -5.027596925631751430e-03, -5.037597917796359306e-03, -5.047590236807553837e-03, -5.057573866865281917e-03, -5.067548792185141114e-03, -5.077514996996919036e-03, -5.087472465545833655e-03, -5.097421182091630386e-03, -5.107361130909386995e-03, -5.117292296289173599e-03, -5.127214662535789849e-03, -5.137128213969384231e-03, -5.147032934925078497e-03, -5.156928809753277311e-03, -5.166815822819095794e-03, -5.176693958503188718e-03, -5.186563201201405300e-03, -5.196423535324411896e-03, -5.206274945298495181e-03, -5.216117415565047800e-03, -5.225950930580871082e-03, -5.235775474817731812e-03, -5.245591032763050054e-03, -5.255397588919625933e-03, -5.265195127805270131e-03, -5.274983633953659115e-03, -5.284763091913331594e-03, -5.294533486249040737e-03, -5.304294801540384609e-03, -5.314047022382546032e-03, -5.323790133386453044e-03, -5.333524119178453642e-03, -5.343248964400628027e-03, -5.352964653710262991e-03, -5.362671171780652481e-03, -5.372368503300669999e-03, -5.382056632974568239e-03, -5.391735545522632206e-03, -5.401405225680715183e-03, -5.411065658200539703e-03, -5.420716827849286421e-03, -5.430358719410209936e-03, -5.439991317682375989e-03, -5.449614607480416859e-03, -5.459228573635208775e-03, -5.468833200992957722e-03, -5.478428474416578535e-03, -5.488014378784143200e-03, -5.497590898990205310e-03, -5.507158019944867651e-03, -5.516715726574584512e-03, -5.526264003821813008e-03, -5.535802836644738989e-03, -5.545332210017928434e-03, -5.554852108931990044e-03, -5.564362518393707949e-03, -5.573863423425686955e-03, -5.583354809067062052e-03, -5.592836660373131513e-03, -5.602308962415097557e-03, -5.611771700280697786e-03, -5.621224859073963194e-03, -5.630668423914867750e-03, -5.640102379940137647e-03, -5.649526712302256441e-03, -5.658941406170883183e-03, -5.668346446731226985e-03, -5.677741819185485109e-03, -5.687127508751820340e-03, -5.696503500665214478e-03, -5.705869780177037255e-03, -5.715226332554916230e-03, -5.724573143083244199e-03, -5.733910197062921585e-03, -5.743237479811433635e-03, -5.752554976662612764e-03, -5.761862672967167642e-03, -5.771160554092447277e-03, -5.780448605422168658e-03, -5.789726812357001359e-03, -5.798995160314226668e-03, -5.808253634727980445e-03, -5.817502221048786483e-03, -5.826740904744287693e-03, -5.835969671298877476e-03, -5.845188506213505435e-03, -5.854397395006346975e-03, -5.863596323211901253e-03, -5.872785276382292211e-03, -5.881964240085846111e-03, -5.891133199908195686e-03, -5.900292141451947067e-03, -5.909441050336354528e-03, -5.918579912198077692e-03, -5.927708712690416513e-03, -5.936827437483972215e-03, -5.945936072266445188e-03, -5.955034602742307129e-03, -5.964123014633432480e-03, -5.973201293678709854e-03, -5.982269425634336932e-03, -5.991327396273317396e-03, -6.000375191386224209e-03, -6.009412796780752922e-03, -6.018440198281623660e-03, -6.027457381731216902e-03, -6.036464332988634128e-03, -6.045461037931055236e-03, -6.054447482452247550e-03, -6.063423652463748904e-03, -6.072389533894438293e-03, -6.081345112690368475e-03, -6.090290374815308938e-03, -6.099225306250049411e-03, -6.108149892993497074e-03, -6.117064121061373781e-03, -6.125967976487351439e-03, -6.134861445322309544e-03, -6.143744513634918913e-03, -6.152617167511431791e-03, -6.161479393055406886e-03, -6.170331176388286175e-03, -6.179172503649096523e-03, -6.188003360994570254e-03, -6.196823734598982079e-03, -6.205633610654130022e-03, -6.214432975370188031e-03, -6.223221814974367640e-03, -6.232000115712020387e-03, -6.240767863846295206e-03, -6.249525045657884290e-03, -6.258271647445659731e-03, -6.267007655525874688e-03, -6.275733056233331712e-03, -6.284447835920041817e-03, -6.293151980956451785e-03, -6.301845477730488344e-03, -6.310528312648400369e-03, -6.319200472134354693e-03, -6.327861942630261770e-03, -6.336512710596341191e-03, -6.345152762510725304e-03, -6.353782084869780133e-03, -6.362400664187563282e-03, -6.371008486996614963e-03, -6.379605539847572025e-03, -6.388191809308896470e-03, -6.396767281967545050e-03, -6.405331944428550341e-03, -6.413885783315282675e-03, -6.422428785269010398e-03, -6.430960936949560794e-03, -6.439482225035024314e-03, -6.447992636221516922e-03, -6.456492157223820208e-03, -6.464980774774603360e-03, -6.473458475625548138e-03, -6.481925246546125022e-03, -6.490381074324300982e-03, -6.498825945766666112e-03, -6.507259847698136992e-03, -6.515682766962183937e-03, -6.524094690420483185e-03, -6.532495604953467670e-03, -6.540885497460104114e-03, -6.549264354857631948e-03, -6.557632164082088932e-03, -6.565988912088071769e-03, -6.574334585848769057e-03, -6.582669172355793893e-03, -6.590992658619637505e-03, -6.599305031669488834e-03, -6.607606278552879790e-03, -6.615896386336475414e-03, -6.624175342105143201e-03, -6.632443132963199497e-03, -6.640699746033015653e-03, -6.648945168456230591e-03, -6.657179387392947630e-03, -6.665402390022307812e-03, -6.673614163542312960e-03, -6.681814695169482204e-03, -6.690003972139847710e-03, -6.698181981707674454e-03, -6.706348711146646775e-03, -6.714504147748967186e-03, -6.722648278826130058e-03, -6.730781091708572944e-03, -6.738902573745479685e-03, -6.747012712305278277e-03, -6.755111494775507298e-03, -6.763198908562447279e-03, -6.771274941091812855e-03, -6.779339579807972145e-03, -6.787392812175068249e-03, -6.795434625675678304e-03, -6.803465007812064223e-03, -6.811483946105260229e-03, -6.819491428095757202e-03, -6.827487441343278035e-03, -6.835471973426405536e-03, -6.843445011943625859e-03, -6.851406544512028338e-03, -6.859356558768454730e-03, -6.867295042368724671e-03, -6.875221982988231548e-03, -6.883137368321686628e-03, -6.891041186082953393e-03, -6.898933424005500303e-03, -6.906814069842154465e-03, -6.914683111365228264e-03, -6.922540536366191509e-03, -6.930386332656281179e-03, -6.938220488066183973e-03, -6.946042990445819472e-03, -6.953853827664907387e-03, -6.961652987612619754e-03, -6.969440458197735319e-03, -6.977216227348356781e-03, -6.984980283012478912e-03, -6.992732613157650289e-03, -7.000473205770795480e-03, -7.008202048858879450e-03, -7.015919130448060141e-03, -7.023624438584782220e-03, -7.031317961334718029e-03, -7.038999686783266319e-03, -7.046669603035813322e-03, -7.054327698217397954e-03, -7.061973960472897431e-03, -7.069608377966756646e-03, -7.077230938883448744e-03, -7.084841631427331136e-03, -7.092440443822321111e-03, -7.100027364312444002e-03, -7.107602381161569512e-03, -7.115165482653521868e-03, -7.122716657091797063e-03, -7.130255892800088473e-03, -7.137783178122037060e-03, -7.145298501421049227e-03, -7.152801851080799016e-03, -7.160293215504592336e-03, -7.167772583116334938e-03, -7.175239942359363209e-03, -7.182695281697583020e-03, -7.190138589614584151e-03, -7.197569854614289074e-03, -7.204989065220765605e-03, -7.212396209978002258e-03, -7.219791277450313301e-03, -7.227174256222195642e-03, -7.234545134898292401e-03, -7.241903902103326122e-03, -7.249250546482416228e-03, -7.256585056700954120e-03, -7.263907421444316947e-03, -7.271217629418446141e-03, -7.278515669349510005e-03, -7.285801529983810913e-03, -7.293075200088252816e-03, -7.300336668449720207e-03, -7.307585923875975845e-03, -7.314822955194639868e-03, -7.322047751254111801e-03, -7.329260300922874061e-03, -7.336460593090098244e-03, -7.343648616665404867e-03, -7.350824360578615303e-03, -7.357987813780285206e-03, -7.365138965241387926e-03, -7.372277803953506195e-03, -7.379404318928481712e-03, -7.386518499198967656e-03, -7.393620333818186688e-03, -7.400709811859669009e-03, -7.407786922417839565e-03, -7.414851654607616457e-03, -7.421903997564632989e-03, -7.428943940444933218e-03, -7.435971472425507121e-03, -7.442986582703966202e-03, -7.449989260498408178e-03, -7.456979495047966026e-03, -7.463957275612086335e-03, -7.470922591471575343e-03, -7.477875431927373355e-03, -7.484815786301564355e-03, -7.491743643937026458e-03, -7.498658994197212463e-03, -7.505561826466695431e-03, -7.512452130150610100e-03, -7.519329894675148146e-03, -7.526195109487439361e-03, -7.533047764055222917e-03, -7.539887847867419828e-03, -7.546715350433748706e-03, -7.553530261285013730e-03, -7.560332569972659685e-03, -7.567122266069434625e-03, -7.573899339169009107e-03, -7.580663778885828735e-03, -7.587415574855726520e-03, -7.594154716735126640e-03, -7.600881194202051445e-03, -7.607594996955115325e-03, -7.614296114714236806e-03, -7.620984537220493703e-03, -7.627660254235809137e-03, -7.634323255543590779e-03, -7.640973530947997930e-03, -7.647611070274858321e-03, -7.654235863370677587e-03, -7.660847900103494486e-03, -7.667447170362298031e-03, -7.674033664057506275e-03, -7.680607371120753805e-03, -7.687168281504771182e-03, -7.693716385183721473e-03, -7.700251672152983416e-03, -7.706774132429356980e-03, -7.713283756050765862e-03, -7.719780533076394530e-03, -7.726264453587224253e-03, -7.732735507685096349e-03, -7.739193685493502353e-03, -7.745638977157341155e-03, -7.752071372842676139e-03, -7.758490862737290293e-03, -7.764897437050048701e-03, -7.771291086011764167e-03, -7.777671799874227507e-03, -7.784039568911051490e-03, -7.790394383417045474e-03, -7.796736233708783520e-03, -7.803065110124321642e-03, -7.809381003023059889e-03, -7.815683902786158682e-03, -7.821973799816302891e-03, -7.828250684537792908e-03, -7.834514547396309592e-03, -7.840765378859412132e-03, -7.847003169416248355e-03, -7.853227909577360430e-03, -7.859439589875203552e-03, -7.865638200863870125e-03, -7.871823733119110572e-03, -7.877996177238187625e-03, -7.884155523840360308e-03, -7.890301763566519647e-03, -7.896434887079147036e-03, -7.902554885062742715e-03, -7.908661748223206472e-03, -7.914755467288705007e-03, -7.920836033008821914e-03, -7.926903436155013916e-03, -7.932957667520652498e-03, -7.938998717920919823e-03, -7.945026578192938838e-03, -7.951041239195407243e-03, -7.957042691809204649e-03, -7.963030926937059509e-03, -7.969005935503370441e-03, -7.974967708454711035e-03, -7.980916236759533211e-03, -7.986851511408233142e-03, -7.992773523413022885e-03, -7.998682263808291198e-03, -8.004577723650384974e-03, -8.010459894017451371e-03, -8.016328766009953033e-03, -8.022184330750003686e-03, -8.028026579382292749e-03, -8.033855503073016741e-03, -8.039671093010828176e-03, -8.045473340406191984e-03, -8.051262236491813981e-03, -8.057037772522587099e-03, -8.062799939775183722e-03, -8.068548729548943865e-03, -8.074284133164834343e-03, -8.080006141966361230e-03, -8.085714747318858628e-03, -8.091409940610160001e-03, -8.097091713250195721e-03, -8.102760056670982661e-03, -8.108414962326898276e-03, -8.114056421694538362e-03, -8.119684426272795116e-03, -8.125298967582685397e-03, -8.130900037167461750e-03, -8.136487626593030473e-03, -8.142061727447132830e-03, -8.147622331340193327e-03, -8.153169429904667462e-03, -8.158703014795549990e-03, -8.164223077690173705e-03, -8.169729610288020347e-03, -8.175222604311339902e-03, -8.180702051504376918e-03, -8.186167943634033162e-03, -8.191620272489404456e-03, -8.197059029882238640e-03, -8.202484207646659753e-03, -8.207895797639043131e-03, -8.213293791738480315e-03, -8.218678181846425165e-03, -8.224048959886900295e-03, -8.229406117806184820e-03, -8.234749647573339978e-03, -8.240079541179886474e-03, -8.245395790639728148e-03, -8.250698387989471166e-03, -8.255987325288214121e-03, -8.261262594617707622e-03, -8.266524188082090621e-03, -8.271772097808282459e-03, -8.277006315945779902e-03, -8.282226834666544385e-03, -8.287433646165390591e-03, -8.292626742659474706e-03, -8.297806116389012596e-03, -8.302971759616544281e-03, -8.308123664627327723e-03, -8.313261823729427291e-03, -8.318386229253522945e-03, -8.323496873553095851e-03, -8.328593749004156027e-03, -8.333676848005608373e-03, -8.338746162979108686e-03, -8.343801686368864171e-03, -8.348843410642082727e-03, -8.353871328288608664e-03, -8.358885431821203721e-03, -8.363885713775182779e-03, -8.368872166708897845e-03, -8.373844783203481315e-03, -8.378803555862741892e-03, -8.383748477313579181e-03, -8.388679540205395621e-03, -8.393596737210903130e-03, -8.398500061025269622e-03, -8.403389504366838916e-03, -8.408265059976632871e-03, -8.413126720618729557e-03, -8.417974479080110595e-03, -8.422808328170548406e-03, -8.427628260722890702e-03, -8.432434269592895687e-03, -8.437226347659315326e-03, -8.442004487823723605e-03, -8.446768683010823578e-03, -8.451518926168317264e-03, -8.456255210266726968e-03, -8.460977528299747433e-03, -8.465685873284136548e-03, -8.470380238259443001e-03, -8.475060616288554449e-03, -8.479727000457064345e-03, -8.484379383874040420e-03, -8.489017759671256200e-03, -8.493642121003794690e-03, -8.498252461049675410e-03, -8.502848773010085112e-03, -8.507431050109426351e-03, -8.511999285594967074e-03, -8.516553472737340216e-03, -8.521093604830219312e-03, -8.525619675190483290e-03, -8.530131677158037801e-03, -8.534629604096085828e-03, -8.539113449391040958e-03, -8.543583206452282780e-03, -8.548038868712649549e-03, -8.552480429628021852e-03, -8.556907882677647001e-03, -8.561321221363743517e-03, -8.565720439212025014e-03, -8.570105529771348055e-03, -8.574476486613764187e-03, -8.578833303334715971e-03, -8.583175973552703911e-03, -8.587504490909877997e-03, -8.591818849071258812e-03, -8.596119041725455712e-03, -8.600405062584312935e-03, -8.604676905382892260e-03, -8.608934563879757501e-03, -8.613178031856572048e-03, -8.617407303118683470e-03, -8.621622371494493814e-03, -8.625823230835830829e-03, -8.630009875017977464e-03, -8.634182297939557368e-03, -8.638340493522609492e-03, -8.642484455712482264e-03, -8.646614178478033083e-03, -8.650729655811513832e-03, -8.654830881728498015e-03, -8.658917850268186070e-03, -8.662990555492930053e-03, -8.667048991488917123e-03, -8.671093152365432280e-03, -8.675123032255423888e-03, -8.679138625315316324e-03, -8.683139925724890282e-03, -8.687126927687586347e-03, -8.691099625430081729e-03, -8.695058013202966798e-03, -8.699002085279948851e-03, -8.702931835958525181e-03, -8.706847259559563276e-03, -8.710748350427512457e-03, -8.714635102930502752e-03, -8.718507511459994488e-03, -8.722365570431168599e-03, -8.726209274282753156e-03, -8.730038617477061530e-03, -8.733853594499947290e-03, -8.737654199860800733e-03, -8.741440428092885420e-03, -8.745212273752743168e-03, -8.748969731420721402e-03, -8.752712795700823972e-03, -8.756441461220529007e-03, -8.760155722631113306e-03, -8.763855574607338356e-03, -8.767541011847870130e-03, -8.771212029074779495e-03, -8.774868621034005375e-03, -8.778510782494997403e-03, -8.782138508251012554e-03, -8.785751793118991987e-03, -8.789350631939488179e-03, -8.792935019576866157e-03, -8.796504950919128291e-03, -8.800060420878131132e-03, -8.803601424389229796e-03, -8.807127956411713379e-03, -8.810640011928579443e-03, -8.814137585946494116e-03, -8.817620673495936076e-03, -8.821089269631189611e-03, -8.824543369430271761e-03, -8.827982967994913235e-03, -8.831408060450726683e-03, -8.834818641947100870e-03, -8.838214707657134767e-03, -8.841596252777890810e-03, -8.844963272530013271e-03, -8.848315762158257339e-03, -8.851653716930942689e-03, -8.854977132140407978e-03, -8.858286003102646550e-03, -8.861580325157656854e-03, -8.864860093669263766e-03, -8.868125304025004096e-03, -8.871375951636480475e-03, -8.874612031939056039e-03, -8.877833540391929026e-03, -8.881040472478301043e-03, -8.884232823705146345e-03, -8.887410589603451233e-03, -8.890573765727933023e-03, -8.893722347657400870e-03, -8.896856330994479950e-03, -8.899975711365696457e-03, -8.903080484421557403e-03, -8.906170645836404900e-03, -8.909246191308678106e-03, -8.912307116560611378e-03, -8.915353417338487546e-03, -8.918385089412426275e-03, -8.921402128576619989e-03, -8.924404530649169068e-03, -8.927392291472114813e-03, -8.930365406911630263e-03, -8.933323872857643760e-03, -8.936267685224262222e-03, -8.939196839949415524e-03, -8.942111332995175688e-03, -8.945011160347597287e-03, -8.947896318016637651e-03, -8.950766802036354622e-03, -8.953622608464849308e-03, -8.956463733384179352e-03, -8.959290172900499435e-03, -8.962101923143844448e-03, -8.964898980268528467e-03, -8.967681340452730160e-03, -8.970448999898772077e-03, -8.973201954832912483e-03, -8.975940201505624647e-03, -8.978663736191388675e-03, -8.981372555188616921e-03, -8.984066654820056438e-03, -8.986746031432308462e-03, -8.989410681396187500e-03, -8.992060601106516629e-03, -8.994695786982261076e-03, -8.997316235466512602e-03, -8.999921943026321230e-03, -9.002512906153035260e-03, -9.005089121362006357e-03, -9.007650585192717926e-03, -9.010197294208778171e-03, -9.012729244997907951e-03, -9.015246434172003234e-03, -9.017748858366998049e-03, -9.020236514243062248e-03, -9.022709398484478338e-03, -9.025167507799662300e-03, -9.027610838921156650e-03, -9.030039388605741457e-03, -9.032453153634285165e-03, -9.034852130811798360e-03, -9.037236316967555208e-03, -9.039605708954845387e-03, -9.041960303651338376e-03, -9.044300097958713966e-03, -9.046625088802880826e-03, -9.048935273133974777e-03, -9.051230647926296335e-03, -9.053511210178329799e-03, -9.055776956912738040e-03, -9.058027885176435368e-03, -9.060263992040500786e-03, -9.062485274600238713e-03, -9.064691729975135615e-03, -9.066883355308979694e-03, -9.069060147769696101e-03, -9.071222104549419782e-03, -9.073369222864559672e-03, -9.075501499955760526e-03, -9.077618933087838737e-03, -9.079721519549922848e-03, -9.081809256655285281e-03, -9.083882141741586938e-03, -9.085940172170551068e-03, -9.087983345328318890e-03, -9.090011658625125196e-03, -9.092025109495556826e-03, -9.094023695398507565e-03, -9.096007413816975182e-03, -9.097976262258337249e-03, -9.099930238254201956e-03, -9.101869339360486172e-03, -9.103793563157285343e-03, -9.105702907249057371e-03, -9.107597369264515061e-03, -9.109476946856610510e-03, -9.111341637702632251e-03, -9.113191439504115046e-03, -9.115026349986886725e-03, -9.116846366901095941e-03, -9.118651488021111556e-03, -9.120441711145723870e-03, -9.122217034097870533e-03, -9.123977454724903693e-03, -9.125722970898400913e-03, -9.127453580514272719e-03, -9.129169281492785157e-03, -9.130870071778405400e-03, -9.132555949339999507e-03, -9.134226912170717930e-03, -9.135882958288023270e-03, -9.137524085733704157e-03, -9.139150292573814532e-03, -9.140761576898854060e-03, -9.142357936823490572e-03, -9.143939370486808133e-03, -9.145505876052209895e-03, -9.147057451707447592e-03, -9.148594095664515716e-03, -9.150115806159807644e-03, -9.151622581454065333e-03, -9.153114419832290849e-03, -9.154591319603907693e-03, -9.156053279102618556e-03, -9.157500296686502464e-03, -9.158932370737929776e-03, -9.160349499663694023e-03, -9.161751681894836699e-03, -9.163138915886812064e-03, -9.164511200119414280e-03, -9.165868533096709764e-03, -9.167210913347238407e-03, -9.168538339423815825e-03, -9.169850809903588862e-03, -9.171148323388111923e-03, -9.172430878503242888e-03, -9.173698473899236788e-03, -9.174951108250669479e-03, -9.176188780256527844e-03, -9.177411488640076220e-03, -9.178619232148991711e-03, -9.179812009555291322e-03, -9.180989819655354517e-03, -9.182152661269940563e-03, -9.183300533244129552e-03, -9.184433434447396988e-03, -9.185551363773596448e-03, -9.186654320140878044e-03, -9.187742302491825469e-03, -9.188815309793318953e-03, -9.189873341036703530e-03, -9.190916395237561792e-03, -9.191944471436000116e-03, -9.192957568696284373e-03, -9.193955686107228506e-03, -9.194938822781942994e-03, -9.195906977857893835e-03, -9.196860150496928565e-03, -9.197798339885272789e-03, -9.198721545233505895e-03, -9.199629765776554113e-03, -9.200523000773765114e-03, -9.201401249508810859e-03, -9.202264511289732704e-03, -9.203112785448932728e-03, -9.203946071343260468e-03, -9.204764368353818629e-03, -9.205567675886133089e-03, -9.206355993370083507e-03, -9.207129320259958838e-03, -9.207887656034346308e-03, -9.208631000196223354e-03, -9.209359352272940280e-03, -9.210072711816241070e-03, -9.210771078402200940e-03, -9.211454451631247153e-03, -9.212122831128167696e-03, -9.212776216542161584e-03, -9.213414607546769469e-03, -9.214038003839866708e-03, -9.214646405143711930e-03, -9.215239811204914075e-03, -9.215818221794437604e-03, -9.216381636707638922e-03, -9.216930055764190055e-03, -9.217463478808153240e-03, -9.217981905707902865e-03, -9.218485336356200058e-03, -9.218973770670213508e-03, -9.219447208591352930e-03, -9.219905650085430393e-03, -9.220349095142606546e-03, -9.220777543777442659e-03, -9.221190996028773984e-03, -9.221589451959805173e-03, -9.221972911658099861e-03, -9.222341375235563327e-03, -9.222694842828411260e-03, -9.223033314597261709e-03, -9.223356790727022317e-03, -9.223665271426982268e-03, -9.223958756930666567e-03, -9.224237247496106656e-03, -9.224500743405519496e-03, -9.224749244965508785e-03, -9.224982752507014661e-03, -9.225201266385273796e-03, -9.225404786979923485e-03, -9.225593314694828170e-03, -9.225766849958237301e-03, -9.225925393222729823e-03, -9.226068944965149995e-03, -9.226197505686718411e-03, -9.226311075912936588e-03, -9.226409656193619926e-03, -9.226493247102915060e-03, -9.226561849239237403e-03, -9.226615463225390848e-03, -9.226654089708390821e-03, -9.226677729359610003e-03, -9.226686382874703732e-03, -9.226680050973630823e-03, -9.226658734400629280e-03, -9.226622433924261402e-03, -9.226571150337387756e-03, -9.226504884457087385e-03, -9.226423637124789648e-03, -9.226327409206184008e-03, -9.226216201591272079e-03, -9.226090015194298236e-03, -9.225948850953782573e-03, -9.225792709832522642e-03, -9.225621592817581304e-03, -9.225435500920323162e-03, -9.225234435176341702e-03, -9.225018396645520008e-03, -9.224787386411949230e-03, -9.224541405584003179e-03, -9.224280455294366077e-03, -9.224004536699874704e-03, -9.223713650981662376e-03, -9.223407799345101701e-03, -9.223086983019830598e-03, -9.222751203259655153e-03, -9.222400461342704012e-03, -9.222034758571256638e-03, -9.221654096271854339e-03, -9.221258475795288123e-03, -9.220847898516518898e-03, -9.220422365834755538e-03, -9.219981879173421921e-03, -9.219526439980144789e-03, -9.219056049726750274e-03, -9.218570709909276045e-03, -9.218070422047969573e-03, -9.217555187687246493e-03, -9.217025008395739183e-03, -9.216479885766239513e-03, -9.215919821415780380e-03, -9.215344816985545501e-03, -9.214754874140852065e-03, -9.214149994571249613e-03, -9.213530179990429836e-03, -9.212895432136280344e-03, -9.212245752770770180e-03, -9.211581143680119821e-03, -9.210901606674662401e-03, -9.210207143588892281e-03, -9.209497756281430358e-03, -9.208773446635022328e-03, -9.208034216556590726e-03, -9.207280067977172480e-03, -9.206511002851941461e-03, -9.205727023160163378e-03, -9.204928130905298128e-03, -9.204114328114784693e-03, -9.203285616840339509e-03, -9.202441999157651153e-03, -9.201583477166595457e-03, -9.200710052991055085e-03, -9.199821728779113833e-03, -9.198918506702864067e-03, -9.198000388958505608e-03, -9.197067377766304092e-03, -9.196119475370606589e-03, -9.195156684039860681e-03, -9.194179006066512116e-03, -9.193186443767119298e-03, -9.192178999482257876e-03, -9.191156675576598808e-03, -9.190119474438816424e-03, -9.189067398481576276e-03, -9.188000450141724229e-03, -9.186918631880000227e-03, -9.185821946181199626e-03, -9.184710395554157580e-03, -9.183583982531702203e-03, -9.182442709670741304e-03, -9.181286579552023000e-03, -9.180115594780465307e-03, -9.178929757984861243e-03, -9.177729071818050560e-03, -9.176513538956852095e-03, -9.175283162101996112e-03, -9.174037943978257878e-03, -9.172777887334351843e-03, -9.171502994942929907e-03, -9.170213269600577949e-03, -9.168908714127926851e-03, -9.167589331369440861e-03, -9.166255124193563308e-03, -9.164906095492706198e-03, -9.163542248183106226e-03, -9.162163585205008662e-03, -9.160770109522504284e-03, -9.159361824123666423e-03, -9.157938732020389633e-03, -9.156500836248497241e-03, -9.155048139867708393e-03, -9.153580645961605089e-03, -9.152098357637666881e-03, -9.150601278027217095e-03, -9.149089410285448851e-03, -9.147562757591423330e-03, -9.146021323148009058e-03, -9.144465110181996398e-03, -9.142894121943950098e-03, -9.141308361708313374e-03, -9.139707832773258725e-03, -9.138092538460878753e-03, -9.136462482117068198e-03, -9.134817667111468434e-03, -9.133158096837533380e-03, -9.131483774712546853e-03, -9.129794704177560116e-03, -9.128090888697390146e-03, -9.126372331760610954e-03, -9.124639036879617776e-03, -9.122891007590490028e-03, -9.121128247453123145e-03, -9.119350760051117555e-03, -9.117558548991802972e-03, -9.115751617906286963e-03, -9.113929970449336990e-03, -9.112093610299486224e-03, -9.110242541158929466e-03, -9.108376766753653250e-03, -9.106496290833170429e-03, -9.104601117170891406e-03, -9.102691249563721679e-03, -9.100766691832360214e-03, -9.098827447821120767e-03, -9.096873521397952703e-03, -9.094904916454519053e-03, -9.092921636906069888e-03, -9.090923686691504760e-03, -9.088911069773325871e-03, -9.086883790137768174e-03, -9.084841851794514880e-03, -9.082785258776952461e-03, -9.080714015142052689e-03, -9.078628124970384780e-03, -9.076527592366054678e-03, -9.074412421456777914e-03, -9.072282616393799806e-03, -9.070138181352027304e-03, -9.067979120529761836e-03, -9.065805438148940437e-03, -9.063617138455050751e-03, -9.061414225717032145e-03, -9.059196704227421432e-03, -9.056964578302198476e-03, -9.054717852280879872e-03, -9.052456530526487716e-03, -9.050180617425487156e-03, -9.047890117387802009e-03, -9.045585034846951797e-03, -9.043265374259751646e-03, -9.040931140106579431e-03, -9.038582336891238730e-03, -9.036218969140931076e-03, -9.033841041406304520e-03, -9.031448558261382514e-03, -9.029041524303700952e-03, -9.026619944154115616e-03, -9.024183822456840337e-03, -9.021733163879648229e-03, -9.019267973113411982e-03, -9.016788254872665914e-03, -9.014294013895026575e-03, -9.011785254941688875e-03, -9.009261982796997609e-03, -9.006724202268799606e-03, -9.004171918188131479e-03, -9.001605135409400035e-03, -8.999023858810309417e-03, -8.996428093291855901e-03, -8.993817843778294935e-03, -8.991193115217238283e-03, -8.988553912579444125e-03, -8.985900240859052979e-03, -8.983232105073311879e-03, -8.980549510262886628e-03, -8.977852461491533931e-03, -8.975140963846217623e-03, -8.972415022437247450e-03, -8.969674642397994571e-03, -8.966919828885191665e-03, -8.964150587078473231e-03, -8.961366922180934169e-03, -8.958568839418664873e-03, -8.955756344041037459e-03, -8.952929441320403928e-03, -8.950088136552365042e-03, -8.947232435055678390e-03, -8.944362342172074501e-03, -8.941477863266523995e-03, -8.938579003726991254e-03, -8.935665768964642583e-03, -8.932738164413636314e-03, -8.929796195531167907e-03, -8.926839867797594849e-03, -8.923869186716237162e-03, -8.920884157813472812e-03, -8.917884786638682199e-03, -8.914871078764308870e-03, -8.911843039785816156e-03, -8.908800675321551857e-03, -8.905743991012978963e-03, -8.902672992524405041e-03, -8.899587685543271925e-03, -8.896488075779810517e-03, -8.893374168967245474e-03, -8.890245970861873279e-03, -8.887103487242611205e-03, -8.883946723911578455e-03, -8.880775686693646864e-03, -8.877590381436647332e-03, -8.874390814011262271e-03, -8.871176990310966626e-03, -8.867948916252256855e-03, -8.864706597774366439e-03, -8.861450040839380371e-03, -8.858179251432193521e-03, -8.854894235560595642e-03, -8.851594999255106566e-03, -8.848281548569028251e-03, -8.844953889578554065e-03, -8.841612028382525926e-03, -8.838255971102599098e-03, -8.834885723883155462e-03, -8.831501292891398916e-03, -8.828102684317145482e-03, -8.824689904372963814e-03, -8.821262959294230710e-03, -8.817821855338841414e-03, -8.814366598787542681e-03, -8.810897195943589305e-03, -8.807413653133026876e-03, -8.803915976704530452e-03, -8.800404173029376803e-03, -8.796878248501477371e-03, -8.793338209537289799e-03, -8.789784062576045179e-03, -8.786215814079442743e-03, -8.782633470531708841e-03, -8.779037038439825927e-03, -8.775426524333154385e-03, -8.771801934763685804e-03, -8.768163276305855625e-03, -8.764510555556805083e-03, -8.760843779136036000e-03, -8.757162953685525275e-03, -8.753468085869886214e-03, -8.749759182375995564e-03, -8.746036249913477501e-03, -8.742299295214032290e-03, -8.738548325032175282e-03, -8.734783346144562102e-03, -8.731004365350451824e-03, -8.727211389471417266e-03, -8.723404425351371019e-03, -8.719583479856757996e-03, -8.715748559876250121e-03, -8.711899672320931945e-03, -8.708036824124135850e-03, -8.704160022241723069e-03, -8.700269273651693377e-03, -8.696364585354362034e-03, -8.692445964372446515e-03, -8.688513417750856616e-03, -8.684566952556788122e-03, -8.680606575879608322e-03, -8.676632294831083253e-03, -8.672644116545200760e-03, -8.668642048177924164e-03, -8.664626096907704009e-03, -8.660596269935009681e-03, -8.656552574482577478e-03, -8.652495017795277035e-03, -8.648423607140036731e-03, -8.644338349806150734e-03, -8.640239253104812361e-03, -8.636126324369452351e-03, -8.631999570955473447e-03, -8.627859000240580001e-03, -8.623704619624377246e-03, -8.619536436528532630e-03, -8.615354458396869489e-03, -8.611158692695191838e-03, -8.606949146911286111e-03, -8.602725828554931564e-03, -8.598488745158047730e-03, -8.594237904274383902e-03, -8.589973313479663114e-03, -8.585694980371731330e-03, -8.581402912570113353e-03, -8.577097117716564467e-03, -8.572777603474411243e-03, -8.568444377529196854e-03, -8.564097447588167600e-03, -8.559736821380446378e-03, -8.555362506657150645e-03, -8.550974511191068023e-03, -8.546572842777074366e-03, -8.542157509231486714e-03, -8.537728518392696461e-03, -8.533285878120923026e-03, -8.528829596297998750e-03, -8.524359680827606547e-03, -8.519876139635085624e-03, -8.515378980667707293e-03, -8.510868211894305480e-03, -8.506343841305382542e-03, -8.501805876913326107e-03, -8.497254326751964987e-03, -8.492689198877138163e-03, -8.488110501365863855e-03, -8.483518242317196478e-03, -8.478912429851654178e-03, -8.474293072111286490e-03, -8.469660177259974443e-03, -8.465013753482922287e-03, -8.460353808987141483e-03, -8.455680352000883443e-03, -8.450993390774272709e-03, -8.446292933578682452e-03, -8.441578988707260089e-03, -8.436851564474412077e-03, -8.432110669216091869e-03, -8.427356311289812066e-03, -8.422588499074446650e-03, -8.417807240970274357e-03, -8.413012545399074088e-03, -8.408204420804029494e-03, -8.403382875649645714e-03, -8.398547918421815292e-03, -8.393699557627910118e-03, -8.388837801796505608e-03, -8.383962659477535093e-03, -8.379074139242352268e-03, -8.374172249683451905e-03, -8.369256999414848019e-03, -8.364328397071480597e-03, -8.359386451309916422e-03, -8.354431170807636101e-03, -8.349462564263681122e-03, -8.344480640398034554e-03, -8.339485407951924625e-03, -8.334476875687923600e-03, -8.329455052389569611e-03, -8.324419946861668501e-03, -8.319371567930064840e-03, -8.314309924441881314e-03, -8.309235025265201274e-03, -8.304146879289198840e-03, -8.299045495424258595e-03, -8.293930882601715376e-03, -8.288803049773927137e-03, -8.283662005914247187e-03, -8.278507760017296546e-03, -8.273340321098368935e-03, -8.268159698193850576e-03, -8.262965900361235808e-03, -8.257758936678719422e-03, -8.252538816245739636e-03, -8.247305548182237364e-03, -8.242059141629443780e-03, -8.236799605749224595e-03, -8.231526949724524145e-03, -8.226241182758959464e-03, -8.220942314077002433e-03, -8.215630352924154986e-03, -8.210305308566357568e-03, -8.204967190290639659e-03, -8.199616007404776294e-03, -8.194251769237208272e-03, -8.188874485137111539e-03, -8.183484164474350356e-03, -8.178080816639751380e-03, -8.172664451044538148e-03, -8.167235077120676284e-03, -8.161792704320968914e-03, -8.156337342118603895e-03, -8.150869000007705464e-03, -8.145387687502605653e-03, -8.139893414138602359e-03, -8.134386189471340053e-03, -8.128866023077205294e-03, -8.123332924552978049e-03, -8.117786903515956595e-03, -8.112227969604196912e-03, -8.106656132475844809e-03, -8.101071401809902678e-03, -8.095473787305552948e-03, -8.089863298682694118e-03, -8.084239945681442885e-03, -8.078603738062323236e-03, -8.072954685606452060e-03, -8.067292798115117611e-03, -8.061618085410057061e-03, -8.055930557333295175e-03, -8.050230223747258801e-03, -8.044517094534785542e-03, -8.038791179598634568e-03, -8.033052488862265500e-03, -8.027301032269064732e-03, -8.021536819782968189e-03, -8.015759861387892343e-03, -8.009970167087949316e-03, -8.004167746907778214e-03, -7.998352610891669087e-03, -7.992524769104520505e-03, -7.986684231631072800e-03, -7.980831008576466656e-03, -7.974965110065674115e-03, -7.969086546243821234e-03, -7.963195327276276561e-03, -7.957291463348266022e-03, -7.951374964665112316e-03, -7.945445841452075317e-03, -7.939504103954648714e-03, -7.933549762438048270e-03, -7.927582827187503248e-03, -7.921603308508388258e-03, -7.915611216725772226e-03, -7.909606562184708090e-03, -7.903589355250102699e-03, -7.897559606306914573e-03, -7.891517325759753176e-03, -7.885462524033073212e-03, -7.879395211571375846e-03, -7.873315398838636250e-03, -7.867223096319026984e-03, -7.861118314515937872e-03, -7.855001063953068879e-03, -7.848871355173403161e-03, -7.842729198740017171e-03, -7.836574605235395452e-03, -7.830407585261739412e-03, -7.824228149441114777e-03, -7.818036308415007504e-03, -7.811832072844537150e-03, -7.805615453410623406e-03, -7.799386460813551546e-03, -7.793145105773264733e-03, -7.786891399029197483e-03, -7.780625351340480361e-03, -7.774346973485602580e-03, -7.768056276262470979e-03, -7.761753270488756101e-03, -7.755437967001265094e-03, -7.749110376656574012e-03, -7.742770510330241988e-03, -7.736418378917692476e-03, -7.730053993333335476e-03, -7.723677364511290049e-03, -7.717288503404797113e-03, -7.710887420986369499e-03, -7.704474128248140624e-03, -7.698048636201207905e-03, -7.691610955876090720e-03, -7.685161098322446788e-03, -7.678699074609375737e-03, -7.672224895825034870e-03, -7.665738573076682529e-03, -7.659240117491045857e-03, -7.652729540213750944e-03, -7.646206852409647217e-03, -7.639672065262614886e-03, -7.633125189975804338e-03, -7.626566237771499959e-03, -7.619995219890610995e-03, -7.613412147593597024e-03, -7.606817032159594524e-03, -7.600209884886993672e-03, -7.593590717092999452e-03, -7.586959540113740082e-03, -7.580316365304587065e-03, -7.573661204039377169e-03, -7.566994067711254636e-03, -7.560314967732033667e-03, -7.553623915532527155e-03, -7.546920922562330714e-03, -7.540206000289748946e-03, -7.533479160202169282e-03, -7.526740413805550235e-03, -7.519989772624678138e-03, -7.513227248203031838e-03, -7.506452852102997800e-03, -7.499666595905529233e-03, -7.492868491210176451e-03, -7.486058549635478052e-03, -7.479236782818240135e-03, -7.472403202414364641e-03, -7.465557820097740854e-03, -7.458700647561461450e-03, -7.451831696516840638e-03, -7.444950978693752434e-03, -7.438058505840841432e-03, -7.431154289724950339e-03, -7.424238342131799125e-03, -7.417310674865077759e-03, -7.410371299747303166e-03, -7.403420228619434114e-03, -7.396457473340660449e-03, -7.389483045788598249e-03, -7.382496957859240386e-03, -7.375499221467060607e-03, -7.368489848544732511e-03, -7.361468851043192867e-03, -7.354436240931877533e-03, -7.347392030198223595e-03, -7.340336230848281719e-03, -7.333268854905816703e-03, -7.326189914413321416e-03, -7.319099421431145974e-03, -7.311997388037888915e-03, -7.304883826330426690e-03, -7.297758748423508607e-03, -7.290622166450392606e-03, -7.283474092561844325e-03, -7.276314538927240380e-03, -7.269143517733638558e-03, -7.261961041186426602e-03, -7.254767121508735005e-03, -7.247561770941699823e-03, -7.240345001744674311e-03, -7.233116826194653862e-03, -7.225877256586709686e-03, -7.218626305233662686e-03, -7.211363984466500655e-03, -7.204090306633797146e-03, -7.196805284101995964e-03, -7.189508929255583776e-03, -7.182201254496569688e-03, -7.174882272244867756e-03, -7.167551994938024633e-03, -7.160210435031502327e-03, -7.152857604998566314e-03, -7.145493517329640221e-03, -7.138118184533426454e-03, -7.130731619135852357e-03, -7.123333833680790123e-03, -7.115924840729482594e-03, -7.108504652860780058e-03, -7.101073282671264281e-03, -7.093630742774889412e-03, -7.086177045803191896e-03, -7.078712204405107448e-03, -7.071236231247312806e-03, -7.063749139013674079e-03, -7.056250940405487879e-03, -7.048741648141758007e-03, -7.041221274958583097e-03, -7.033689833609536521e-03, -7.026147336865433933e-03, -7.018593797514699299e-03, -7.011029228362785498e-03, -7.003453642232438867e-03, -6.995867051963923847e-03, -6.988269470414395015e-03, -6.980660910458675109e-03, -6.973041384988139593e-03, -6.965410906911982149e-03, -6.957769489156107913e-03, -6.950117144663875077e-03, -6.942453886395526762e-03, -6.934779727328360156e-03, -6.927094680457118563e-03, -6.919398758792966175e-03, -6.911691975364589631e-03, -6.903974343217607335e-03, -6.896245875414454100e-03, -6.888506585034568502e-03, -6.880756485174290525e-03, -6.872995588947073201e-03, -6.865223909483060202e-03, -6.857441459929184725e-03, -6.849648253449565002e-03, -6.841844303224740159e-03, -6.834029622452521963e-03, -6.826204224346836893e-03, -6.818368122139062751e-03, -6.810521329076799600e-03, -6.802663858424700706e-03, -6.794795723463926962e-03, -6.786916937492251840e-03, -6.779027513824434359e-03, -6.771127465791237227e-03, -6.763216806740702733e-03, -6.755295550036933237e-03, -6.747363709060981950e-03, -6.739421297210126949e-03, -6.731468327898222463e-03, -6.723504814555836782e-03, -6.715530770629695410e-03, -6.707546209583126889e-03, -6.699551144895747948e-03, -6.691545590063875497e-03, -6.683529558599849221e-03, -6.675503064032465260e-03, -6.667466119907031717e-03, -6.659418739784871664e-03, -6.651360937243894732e-03, -6.643292725878016843e-03, -6.635214119297410881e-03, -6.627125131128796393e-03, -6.619025775014458594e-03, -6.610916064613512992e-03, -6.602796013600706684e-03, -6.594665635667335164e-03, -6.586524944520485980e-03, -6.578373953883334506e-03, -6.570212677495354710e-03, -6.562041129111801339e-03, -6.553859322504055132e-03, -6.545667271459339187e-03, -6.537464989781122289e-03, -6.529252491288540378e-03, -6.521029789816674971e-03, -6.512796899216694545e-03, -6.504553833355470292e-03, -6.496300606115706228e-03, -6.488037231395887144e-03, -6.479763723110562243e-03, -6.471480095189783947e-03, -6.463186361579349899e-03, -6.454882536241051891e-03, -6.446568633152027945e-03, -6.438244666305563760e-03, -6.429910649709956461e-03, -6.421566597389753196e-03, -6.413212523384680813e-03, -6.404848441750385715e-03, -6.396474366557878752e-03, -6.388090311893613281e-03, -6.379696291859901502e-03, -6.371292320574235314e-03, -6.362878412169585551e-03, -6.354454580794650920e-03, -6.346020840613288139e-03, -6.337577205804812916e-03, -6.329123690563806526e-03, -6.320660309100524336e-03, -6.312187075640271310e-03, -6.303704004423586749e-03, -6.295211109706635479e-03, -6.286708405760465385e-03, -6.278195906871755078e-03, -6.269673627341773060e-03, -6.261141581487680505e-03, -6.252599783641226740e-03, -6.244048248149732840e-03, -6.235486989375330080e-03, -6.226916021695263516e-03, -6.218335359502076727e-03, -6.209745017203106149e-03, -6.201145009220769902e-03, -6.192535349992404729e-03, -6.183916053970573042e-03, -6.175287135622515612e-03, -6.166648609430390969e-03, -6.158000489891513052e-03, -6.149342791517779620e-03, -6.140675528836076445e-03, -6.131998716387956384e-03, -6.123312368729970714e-03, -6.114616500433558977e-03, -6.105911126084334270e-03, -6.097196260283274140e-03, -6.088471917645591272e-03, -6.079738112801562691e-03, -6.070994860395820258e-03, -6.062242175087610013e-03, -6.053480071551196363e-03, -6.044708564474690279e-03, -6.035927668561480441e-03, -6.027137398528988575e-03, -6.018337769109489109e-03, -6.009528795049491612e-03, -6.000710491109921205e-03, -5.991882872066456832e-03, -5.983045952708861658e-03, -5.974199747841368174e-03, -5.965344272282505599e-03, -5.956479540865400844e-03, -5.947605568437161830e-03, -5.938722369859231361e-03, -5.929829960007556265e-03, -5.920928353771956823e-03, -5.912017566056921268e-03, -5.903097611780446126e-03, -5.894168505875365012e-03, -5.885230263288241011e-03, -5.876282898979776070e-03, -5.867326427924991414e-03, -5.858360865112623855e-03, -5.849386225545882140e-03, -5.840402524241354067e-03, -5.831409776230127989e-03, -5.822407996557219488e-03, -5.813397200281314632e-03, -5.804377402475140342e-03, -5.795348618225189437e-03, -5.786310862632115283e-03, -5.777264150810108162e-03, -5.768208497887137264e-03, -5.759143919005262936e-03, -5.750070429319911573e-03, -5.740988044000739504e-03, -5.731896778230370117e-03, -5.722796647205846687e-03, -5.713687666137438025e-03, -5.704569850249069547e-03, -5.695443214778521043e-03, -5.686307774976793496e-03, -5.677163546108927872e-03, -5.668010543452771735e-03, -5.658848782300374830e-03, -5.649678277956799062e-03, -5.640499045740919939e-03, -5.631311100984727480e-03, -5.622114459033643666e-03, -5.612909135246745354e-03, -5.603695144996152788e-03, -5.594472503667412104e-03, -5.585241226659253336e-03, -5.576001329384007617e-03, -5.566752827266928036e-03, -5.557495735746452448e-03, -5.548230070274595520e-03, -5.538955846316175047e-03, -5.529673079349250835e-03, -5.520381784864912197e-03, -5.511081978367557248e-03, -5.501773675374734170e-03, -5.492456891416395287e-03, -5.483131642036276170e-03, -5.473797942790523466e-03, -5.464455809248691502e-03, -5.455105256992965994e-03, -5.445746301618401702e-03, -5.436378958733297136e-03, -5.427003243958476372e-03, -5.417619172927680242e-03, -5.408226761287372904e-03, -5.398826024697082719e-03, -5.389416978828820252e-03, -5.379999639367295979e-03, -5.370574022010226461e-03, -5.361140142467706385e-03, -5.351698016462575445e-03, -5.342247659730193707e-03, -5.332789088018844055e-03, -5.323322317089030503e-03, -5.313847362713824268e-03, -5.304364240679137858e-03, -5.294872966782937507e-03, -5.285373556836189465e-03, -5.275866026661545083e-03, -5.266350392094826596e-03, -5.256826668983713945e-03, -5.247294873188652030e-03, -5.237755020582117796e-03, -5.228207127048889111e-03, -5.218651208486442886e-03, -5.209087280803781535e-03, -5.199515359922765242e-03, -5.189935461777343481e-03, -5.180347602313423172e-03, -5.170751797489195681e-03, -5.161148063274843649e-03, -5.151536415652954726e-03, -5.141916870617888394e-03, -5.132289444176036178e-03, -5.122654152346142568e-03, -5.113011011158468885e-03, -5.103360036655825438e-03, -5.093701244892176808e-03, -5.084034651934166670e-03, -5.074360273859772515e-03, -5.064678126759256278e-03, -5.054988226734385449e-03, -5.045290589898733177e-03, -5.035585232378102412e-03, -5.025872170309243075e-03, -5.016151419841424590e-03, -5.006422997135061108e-03, -4.996686918362633519e-03, -4.986943199707999895e-03, -4.977191857366581977e-03, -4.967432907545756351e-03, -4.957666366464087704e-03, -4.947892250351811939e-03, -4.938110575450588985e-03, -4.928321358013829784e-03, -4.918524614306115164e-03, -4.908720360603438700e-03, -4.898908613193510286e-03, -4.889089388374992864e-03, -4.879262702458325544e-03, -4.869428571764930838e-03, -4.859587012627522573e-03, -4.849738041390544777e-03, -4.839881674408882777e-03, -4.830017928049388024e-03, -4.820146818689583119e-03, -4.810268362718574282e-03, -4.800382576536255108e-03, -4.790489476553611015e-03, -4.780589079193074860e-03, -4.770681400887749786e-03, -4.760766458081889738e-03, -4.750844267230641856e-03, -4.740914844800429850e-03, -4.730978207268300879e-03, -4.721034371122194429e-03, -4.711083352861281451e-03, -4.701125168995254865e-03, -4.691159836044739816e-03, -4.681187370541073367e-03, -4.671207789026649709e-03, -4.661221108054338161e-03, -4.651227344187707814e-03, -4.641226514001319838e-03, -4.631218634079999757e-03, -4.621203721019736914e-03, -4.611181791426366937e-03, -4.601152861917087895e-03, -4.591116949119090733e-03, -4.581074069670538519e-03, -4.571024240219763272e-03, -4.560967477425555659e-03, -4.550903797957509336e-03, -4.540833218495284561e-03, -4.530755755728935186e-03, -4.520671426359211369e-03, -4.510580247096863081e-03, -4.500482234663059043e-03, -4.490377405789146466e-03, -4.480265777217024015e-03, -4.470147365698509505e-03, -4.460022187995620058e-03, -4.449890260880874811e-03, -4.439751601136449240e-03, -4.429606225555236809e-03, -4.419454150939410887e-03, -4.409295394101990333e-03, -4.399129971865475136e-03, -4.388957901062784904e-03, -4.378779198536506857e-03, -4.368593881139155172e-03, -4.358401965733526597e-03, -4.348203469191935441e-03, -4.337998408396688890e-03, -4.327786800239812048e-03, -4.317568661623485092e-03, -4.307344009459312950e-03, -4.297112860668659239e-03, -4.286875232182960245e-03, -4.276631140942992008e-03, -4.266380603899313541e-03, -4.256123638012009221e-03, -4.245860260251016656e-03, -4.235590487595953212e-03, -4.225314337035302424e-03, -4.215031825567888517e-03, -4.204742970201461733e-03, -4.194447787953700137e-03, -4.184146295851370878e-03, -4.173838510930677134e-03, -4.163524450237625872e-03, -4.153204130826826553e-03, -4.142877569762999472e-03, -4.132544784119596658e-03, -4.122205790979801936e-03, -4.111860607435699998e-03, -4.101509250588582581e-03, -4.091151737549304952e-03, -4.080788085437506152e-03, -4.070418311382088643e-03, -4.060042432520954633e-03, -4.049660466001412003e-03, -4.039272428979456993e-03, -4.028878338620145438e-03, -4.018478212097828690e-03, -4.008072066595409419e-03, -3.997659919305245405e-03, -3.987241787427830281e-03, -3.976817688173337438e-03, -3.966387638760319849e-03, -3.955951656416146350e-03, -3.945509758377350323e-03, -3.935061961888745852e-03, -3.924608284204474627e-03, -3.914148742586550517e-03, -3.903683354306506682e-03, -3.893212136643939714e-03, -3.882735106887526180e-03, -3.872252282334190821e-03, -3.861763680289418375e-03, -3.851269318067590975e-03, -3.840769212991241351e-03, -3.830263382391383732e-03, -3.819751843607831297e-03, -3.809234613988351798e-03, -3.798711710889704930e-03, -3.788183151676189925e-03, -3.777648953721231967e-03, -3.767109134406157467e-03, -3.756563711120505886e-03, -3.746012701262475125e-03, -3.735456122237983904e-03, -3.724893991461727342e-03, -3.714326326355773134e-03, -3.703753144351123235e-03, -3.693174462886310468e-03, -3.682590299408416371e-03, -3.672000671372193867e-03, -3.661405596240466676e-03, -3.650805091484362642e-03, -3.640199174582645428e-03, -3.629587863022108295e-03, -3.618971174297361173e-03, -3.608349125911207086e-03, -3.597721735373993809e-03, -3.587089020203850214e-03, -3.576450997927054908e-03, -3.565807686077315884e-03, -3.555159102196166470e-03, -3.544505263832751531e-03, -3.533846188544105885e-03, -3.523181893895048489e-03, -3.512512397457282550e-03, -3.501837716810962415e-03, -3.491157869543185226e-03, -3.480472873249045203e-03, -3.469782745530816150e-03, -3.459087503998223376e-03, -3.448387166268788474e-03, -3.437681749967110272e-03, -3.426971272725275099e-03, -3.416255752182624332e-03, -3.405535205986162488e-03, -3.394809651789856397e-03, -3.384079107254948753e-03, -3.373343590050251715e-03, -3.362603117851456491e-03, -3.351857708341557471e-03, -3.341107379210567739e-03, -3.330352148155990046e-03, -3.319592032882079553e-03, -3.308827051100149581e-03, -3.298057220528891661e-03, -3.287282558893551108e-03, -3.276503083926944875e-03, -3.265718813368006547e-03, -3.254929764963411347e-03, -3.244135956466155830e-03, -3.233337405636552749e-03, -3.222534130241407925e-03, -3.211726148054319489e-03, -3.200913476856153631e-03, -3.190096134433675467e-03, -3.179274138581078199e-03, -3.168447507099146111e-03, -3.157616257795055944e-03, -3.146780408482757231e-03, -3.135939976982661786e-03, -3.125094981122128121e-03, -3.114245438734682993e-03, -3.103391367660374416e-03, -3.092532785746090421e-03, -3.081669710844692992e-03, -3.070802160816074947e-03, -3.059930153525662003e-03, -3.049053706846124520e-03, -3.038172838655834023e-03, -3.027287566839970395e-03, -3.016397909289620684e-03, -3.005503883902130823e-03, -2.994605508581526729e-03, -2.983702801237201989e-03, -2.972795779785556737e-03, -2.961884462148496686e-03, -2.950968866254536846e-03, -2.940049010037885154e-03, -2.929124911438808938e-03, -2.918196588403922445e-03, -2.907264058885495120e-03, -2.896327340841854930e-03, -2.885386452237135527e-03, -2.874441411041726412e-03, -2.863492235231531770e-03, -2.852538942788284456e-03, -2.841581551699882968e-03, -2.830620079959535792e-03, -2.819654545566664759e-03, -2.808684966526059801e-03, -2.797711360848187303e-03, -2.786733746549689694e-03, -2.775752141651949105e-03, -2.764766564182823388e-03, -2.753777032175130403e-03, -2.742783563667724415e-03, -2.731786176704581025e-03, -2.720784889335178813e-03, -2.709779719614819390e-03, -2.698770685603842871e-03, -2.687757805368114900e-03, -2.676741096978759501e-03, -2.665720578512574112e-03, -2.654696268051312275e-03, -2.643668183681991985e-03, -2.632636343497252607e-03, -2.621600765594590734e-03, -2.610561468076790393e-03, -2.599518469051681924e-03, -2.588471786632589103e-03, -2.577421438937566728e-03, -2.566367444089743665e-03, -2.555309820217642469e-03, -2.544248585454313323e-03, -2.533183757938396990e-03, -2.522115355812613435e-03, -2.511043397225480936e-03, -2.499967900329779554e-03, -2.488888883283644875e-03, -2.477806364249673758e-03, -2.466720361395271718e-03, -2.455630892892966474e-03, -2.444537976919676763e-03, -2.433441631657018954e-03, -2.422341875291670905e-03, -2.411238726014580929e-03, -2.400132202021460458e-03, -2.389022321512473523e-03, -2.377909102692727684e-03, -2.366792563771483865e-03, -2.355672722962514135e-03, -2.344549598484430442e-03, -2.333423208559794702e-03, -2.322293571416206900e-03, -2.311160705284770293e-03, -2.300024628401824405e-03, -2.288885359007407187e-03, -2.277742915346345730e-03, -2.266597315667362011e-03, -2.255448578223411167e-03, -2.244296721272026705e-03, -2.233141763074545944e-03, -2.221983721896574927e-03, -2.210822616007706524e-03, -2.199658463682002251e-03, -2.188491283197198638e-03, -2.177321092835057207e-03, -2.166147910881709247e-03, -2.154971755626887767e-03, -2.143792645364376789e-03, -2.132610598391746805e-03, -2.121425633010686970e-03, -2.110237767526863296e-03, -2.099047020249017025e-03, -2.087853409490531085e-03, -2.076656953567939095e-03, -2.065457670801998293e-03, -2.054255579516777071e-03, -2.043050698040021866e-03, -2.031843044703604724e-03, -2.020632637842150262e-03, -2.009419495794710544e-03, -1.998203636903277559e-03, -1.986985079513855709e-03, -1.975763841975554987e-03, -1.964539942640962638e-03, -1.953313399866433726e-03, -1.942084232011382066e-03, -1.930852457438696126e-03, -1.919618094514478814e-03, -1.908381161608510655e-03, -1.897141677093482602e-03, -1.885899659345336484e-03, -1.874655126743596115e-03, -1.863408097670474781e-03, -1.852158590511983945e-03, -1.840906623656360938e-03, -1.829652215495836858e-03, -1.818395384425202169e-03, -1.807136148842287873e-03, -1.795874527148304863e-03, -1.784610537746939701e-03, -1.773344199045460501e-03, -1.762075529453165220e-03, -1.750804547383124840e-03, -1.739531271250637076e-03, -1.728255719474332697e-03, -1.716977910475255041e-03, -1.705697862677222352e-03, -1.694415594507166266e-03, -1.683131124394347507e-03, -1.671844470770698053e-03, -1.660555652071183481e-03, -1.649264686732880309e-03, -1.637971593196079281e-03, -1.626676389902749270e-03, -1.615379095298263758e-03, -1.604079727829990512e-03, -1.592778305947770146e-03, -1.581474848104250054e-03, -1.570169372753980625e-03, -1.558861898354526980e-03, -1.547552443364907720e-03, -1.536241026247345048e-03, -1.524927665465723899e-03, -1.513612379486672021e-03, -1.502295186778685896e-03, -1.490976105812445154e-03, -1.479655155061170577e-03, -1.468332352999855836e-03, -1.457007718105709409e-03, -1.445681268857898711e-03, -1.434353023738016517e-03, -1.423023001229281256e-03, -1.411691219816913444e-03, -1.400357697988452920e-03, -1.389022454232992105e-03, -1.377685507041648489e-03, -1.366346874907265396e-03, -1.355006576324787552e-03, -1.343664629791083923e-03, -1.332321053804037857e-03, -1.320975866864166010e-03, -1.309629087473066639e-03, -1.298280734134526354e-03, -1.286930825353607873e-03, -1.275579379636997395e-03, -1.264226415493350250e-03, -1.252871951432512438e-03, -1.241516005965990523e-03, -1.230158597606658463e-03, -1.218799744869252877e-03, -1.207439466269570301e-03, -1.196077780324817383e-03, -1.184714705553967587e-03, -1.173350260476964738e-03, -1.161984463615209828e-03, -1.150617333491252671e-03, -1.139248888629301260e-03, -1.127879147554412516e-03, -1.116508128792838370e-03, -1.105135850872388968e-03, -1.093762332321508712e-03, -1.082387591670384754e-03, -1.071011647449401352e-03, -1.059634518190883702e-03, -1.048256222427535389e-03, -1.036876778693565301e-03, -1.025496205523764330e-03, -1.014114521453849489e-03, -1.002731745020948992e-03, -9.913478947621719682e-04, -9.799629892162276153e-04, -9.685770469225122963e-04, -9.571900864209475623e-04, -9.458021262523318672e-04, -9.344131849580518444e-04, -9.230232810805760529e-04, -9.116324331626370547e-04, -9.002406597476081754e-04, -8.888479793798394982e-04, -8.774544106037425809e-04, -8.660599719649005697e-04, -8.546646820085201761e-04, -8.432685592811736642e-04, -8.318716223292456228e-04, -8.204738897000525121e-04, -8.090753799409141538e-04, -7.976761115995051202e-04, -7.862761032243454446e-04, -7.748753733633574397e-04, -7.634739405656198281e-04, -7.520718233798177671e-04, -7.406690403553502526e-04, -7.292656100414131011e-04, -7.178615509873488218e-04, -7.064568817429984398e-04, -6.950516208579105709e-04, -6.836457868818151097e-04, -6.722393983643422041e-04, -6.608324738555042916e-04, -6.494250319048931394e-04, -6.380170910620419676e-04, -6.266086698767702259e-04, -6.151997868982610456e-04, -6.037904606761866416e-04, -5.923807097591396887e-04, -5.809705526962659133e-04, -5.695600080364634100e-04, -5.581490943275952939e-04, -5.467378301181097158e-04, -5.353262339554841400e-04, -5.239143243873420732e-04, -5.125021199605286730e-04, -5.010896392214665837e-04, -4.896769007165032057e-04, -4.782639229911208548e-04, -4.668507245904126180e-04, -4.554373240588030091e-04, -4.440237399405169943e-04, -4.326099907787994757e-04, -4.211960951162547540e-04, -4.097820714952055631e-04, -3.983679384568991622e-04, -3.869537145419822710e-04, -3.755394182902192855e-04, -3.641250682409708991e-04, -3.527106829324008460e-04, -3.412962809018266945e-04, -3.298818806860727556e-04, -3.184675008205473720e-04, -3.070531598403601885e-04, -2.956388762787637747e-04, -2.842246686689050986e-04, -2.728105555422702931e-04, -2.613965554297967763e-04, -2.499826868609553664e-04, -2.385689683641003698e-04, -2.271554184668220287e-04, -2.157420556951515297e-04, -2.043288985739155378e-04, -1.929159656270861228e-04, -1.815032753769855783e-04, -1.700908463447692710e-04, -1.586786970501384629e-04, -1.472668460118195825e-04, -1.358553117467720529e-04, -1.244441127705377841e-04, -1.130332675975952329e-04, -1.016227947404377768e-04, -9.021271271068815158e-05, -7.880304001754252698e-05, -6.739379516952208890e-05, -5.598499667291546806e-05, -4.457666303289376056e-05, -3.316881275259110412e-05, -2.176146433345513625e-05, -1.035463627559950400e-05, 1.051652922989795198e-06, 1.245738476597532969e-05, 2.386254075895264404e-05, 3.526710240897137834e-05, 4.667105122532837588e-05, 5.807436871921593298e-05, 6.947703640337061918e-05, 8.087903579286560200e-05, 9.228034840463236472e-05, 1.036809557577446724e-04, 1.150808393729401069e-04, 1.264799807734121983e-04, 1.378783614844605529e-04, 1.492759630331373492e-04, 1.606727669491678256e-04, 1.720687547639635612e-04, 1.834639080115422051e-04, 1.948582082281761401e-04, 2.062516369519120187e-04, 2.176441757240020459e-04, 2.290358060871508234e-04, 2.404265095870738913e-04, 2.518162677713818120e-04, 2.632050621904985987e-04, 2.745928743973121951e-04, 2.859796859468231671e-04, 2.973654783969359536e-04, 3.087502333079798658e-04, 3.201339322429943408e-04, 3.315165567672497785e-04, 3.428980884490413945e-04, 3.542785088593340356e-04, 3.656577995714144756e-04, 3.770359421618101688e-04, 3.884129182091717626e-04, 3.997887092958340776e-04, 4.111632970060600796e-04, 4.225366629274744114e-04, 4.339087886505786466e-04, 4.452796557684067296e-04, 4.566492458774390668e-04, 4.680175405764913274e-04, 4.793845214682665337e-04, 4.907501701576083564e-04, 5.021144682530536384e-04, 5.134773973657204369e-04, 5.248389391102261260e-04, 5.361990751043337836e-04, 5.475577869686079581e-04, 5.589150563271958350e-04, 5.702708648074859311e-04, 5.816251940397481387e-04, 5.929780256580606101e-04, 6.043293412991909697e-04, 6.156791226041492164e-04, 6.270273512164454112e-04, 6.383740087835112825e-04, 6.497190769562182985e-04, 6.610625373885399385e-04, 6.724043717384540738e-04, 6.837445616668400093e-04, 6.950830888390279166e-04, 7.064199349230522928e-04, 7.177550815912023697e-04, 7.290885105189161188e-04, 7.404202033856904395e-04, 7.517501418747287931e-04, 7.630783076726055337e-04, 7.744046824700326565e-04, 7.857292479614069259e-04, 7.970519858450685665e-04, 8.083728778228454646e-04, 8.196919056008318419e-04, 8.310090508890349142e-04, 8.423242954010360783e-04, 8.536376208547685014e-04, 8.649490089720412653e-04, 8.762584414788352448e-04, 8.875659001049376233e-04, 8.988713665841015958e-04, 9.101748226549667481e-04, 9.214762500594396921e-04, 9.327756305442394882e-04, 9.440729458597973967e-04, 9.553681777611600177e-04, 9.666613080076482019e-04, 9.779523183625039254e-04, 9.892411905936767703e-04, 1.000527906473348827e-03, 1.011812447778219623e-03, 1.023094796289024085e-03, 1.034374933791329648e-03, 1.045652842075174560e-03, 1.056928502934723546e-03, 1.068201898169062521e-03, 1.079473009581706803e-03, 1.090741818980902516e-03, 1.102008308179129592e-03, 1.113272458993908422e-03, 1.124534253247438161e-03, 1.135793672766244582e-03, 1.147050699382106201e-03, 1.158305314930937980e-03, 1.169557501254339356e-03, 1.180807240197853008e-03, 1.192054513612508977e-03, 1.203299303353717702e-03, 1.214541591282194185e-03, 1.225781359263579178e-03, 1.237018589168007669e-03, 1.248253262871482560e-03, 1.259485362254160988e-03, 1.270714869201898869e-03, 1.281941765605129624e-03, 1.293166033359796152e-03, 1.304387654366977655e-03, 1.315606610532566540e-03, 1.326822883768031050e-03, 1.338036455990081761e-03, 1.349247309120315966e-03, 1.360455425086127537e-03, 1.371660785819604289e-03, 1.382863373259078611e-03, 1.394063169347369751e-03, 1.405260156033342686e-03, 1.416454315270806574e-03, 1.427645629019403577e-03, 1.438834079244286860e-03, 1.450019647915628141e-03, 1.461202317010035830e-03, 1.472382068508821607e-03, 1.483558884399546057e-03, 1.494732746674903683e-03, 1.505903637333645120e-03, 1.517071538380213936e-03, 1.528236431824411823e-03, 1.539398299682179661e-03, 1.550557123975116565e-03, 1.561712886730759172e-03, 1.572865569982120426e-03, 1.584015155768466517e-03, 1.595161626134960174e-03, 1.606304963132322398e-03, 1.617445148817741457e-03, 1.628582165253765045e-03, 1.639715994509831614e-03, 1.650846618660687434e-03, 1.661974019787148572e-03, 1.673098179976885858e-03, 1.684219081322830235e-03, 1.695336705924703003e-03, 1.706451035887920778e-03, 1.717562053324482151e-03, 1.728669740352646545e-03, 1.739774079096571878e-03, 1.750875051687098005e-03, 1.761972640261275959e-03, 1.773066826962651143e-03, 1.784157593940771972e-03, 1.795244923351994133e-03, 1.806328797359126916e-03, 1.817409198131071744e-03, 1.828486107843616459e-03, 1.839559508678971283e-03, 1.850629382826013631e-03, 1.861695712479860933e-03, 1.872758479842616354e-03, 1.883817667123030516e-03, 1.894873256536165401e-03, 1.905925230304289248e-03, 1.916973570655778475e-03, 1.928018259826646619e-03, 1.939059280058827179e-03, 1.950096613601702122e-03, 1.961130242711004671e-03, 1.972160149649717243e-03, 1.983186316687732525e-03, 1.994208726101500458e-03, 2.005227360174814937e-03, 2.016242201198447347e-03, 2.027253231469839951e-03, 2.038260433293830141e-03, 2.049263788982235400e-03, 2.060263280854083157e-03, 2.071258891235171033e-03, 2.082250602458826649e-03, 2.093238396865571959e-03, 2.104222256802776737e-03, 2.115202164625553695e-03, 2.126178102695670379e-03, 2.137150053383063582e-03, 2.148117999064138011e-03, 2.159081922123278537e-03, 2.170041804951758184e-03, 2.180997629948652327e-03, 2.191949379520457489e-03, 2.202897036080799474e-03, 2.213840582051162815e-03, 2.224779999860428039e-03, 2.235715271945179581e-03, 2.246646380749204881e-03, 2.257573308724272840e-03, 2.268496038329799892e-03, 2.279414552032505651e-03, 2.290328832307169261e-03, 2.301238861636180529e-03, 2.312144622509810111e-03, 2.323046097425725959e-03, 2.333943268889800398e-03, 2.344836119415715913e-03, 2.355724631524677183e-03, 2.366608787746271505e-03, 2.377488570617496914e-03, 2.388363962683697633e-03, 2.399234946498179401e-03, 2.410101504621768847e-03, 2.420963619624187831e-03, 2.431821274082364252e-03, 2.442674450581907436e-03, 2.453523131716092882e-03, 2.464367300086677155e-03, 2.475206938303615555e-03, 2.486042028984667904e-03, 2.496872554756222971e-03, 2.507698498252777623e-03, 2.518519842117251245e-03, 2.529336569000515192e-03, 2.540148661562122677e-03, 2.550956102470026011e-03, 2.561758874400194529e-03, 2.572556960037492360e-03, 2.583350342074658412e-03, 2.594139003213736649e-03, 2.604922926164438945e-03, 2.615702093645491666e-03, 2.626476488384190712e-03, 2.637246093116057608e-03, 2.648010890585699925e-03, 2.658770863545797340e-03, 2.669525994758511090e-03, 2.680276266993881964e-03, 2.691021663031277055e-03, 2.701762165658329849e-03, 2.712497757671824931e-03, 2.723228421877354512e-03, 2.733954141088993164e-03, 2.744674898130030315e-03, 2.755390675832651050e-03, 2.766101457037609124e-03, 2.776807224595080441e-03, 2.787507961363612681e-03, 2.798203650211603718e-03, 2.808894274015631947e-03, 2.819579815661820647e-03, 2.830260258045372204e-03, 2.840935584070245889e-03, 2.851605776650011775e-03, 2.862270818706819445e-03, 2.872930693172831302e-03, 2.883585382988623595e-03, 2.894234871104585036e-03, 2.904879140479928006e-03, 2.915518174083503011e-03, 2.926151954893506813e-03, 2.936780465897141992e-03, 2.947403690091320808e-03, 2.958021610482285731e-03, 2.968634210085808068e-03, 2.979241471926795046e-03, 2.989843379039969391e-03, 3.000439914469606520e-03, 3.011031061269144223e-03, 3.021616802501968495e-03, 3.032197121240953839e-03, 3.042772000568697444e-03, 3.053341423577228628e-03, 3.063905373368145009e-03, 3.074463833053456014e-03, 3.085016785754072805e-03, 3.095564214601272384e-03, 3.106106102735642013e-03, 3.116642433307948313e-03, 3.127173189478789014e-03, 3.137698354418286782e-03, 3.148217911306803486e-03, 3.158731843334528205e-03, 3.169240133701697534e-03, 3.179742765618185762e-03, 3.190239722304217835e-03, 3.200730986990050608e-03, 3.211216542915648446e-03, 3.221696373331416584e-03, 3.232170461497742286e-03, 3.242638790685278480e-03, 3.253101344174491854e-03, 3.263558105256378870e-03, 3.274009057232167823e-03, 3.284454183412964957e-03, 3.294893467120635702e-03, 3.305326891686759944e-03, 3.315754440454019795e-03, 3.326176096774673043e-03, 3.336591844011934857e-03, 3.347001665538935650e-03, 3.357405544739598853e-03, 3.367803465008298736e-03, 3.378195409749436273e-03, 3.388581362378741049e-03, 3.398961306321645823e-03, 3.409335225014729388e-03, 3.419703101904718236e-03, 3.430064920449271519e-03, 3.440420664116711734e-03, 3.450770316385679513e-03, 3.461113860745827081e-03, 3.471451280697583196e-03, 3.481782559751736388e-03, 3.492107681430308384e-03, 3.502426629265560989e-03, 3.512739386801376051e-03, 3.523045937591688138e-03, 3.533346265201889238e-03, 3.543640353207796155e-03, 3.553928185196516577e-03, 3.564209744766122512e-03, 3.574485015525178007e-03, 3.584753981094093538e-03, 3.595016625103486692e-03, 3.605272931195616787e-03, 3.615522883023383500e-03, 3.625766464251120071e-03, 3.636003658554309674e-03, 3.646234449619257991e-03, 3.656458821143806180e-03, 3.666676756836876380e-03, 3.676888240418781789e-03, 3.687093255620743550e-03, 3.697291786185603717e-03, 3.707483815867556806e-03, 3.717669328431771197e-03, 3.727848307655258226e-03, 3.738020737325851300e-03, 3.748186601243609726e-03, 3.758345883219350696e-03, 3.768498567075379176e-03, 3.778644636646151436e-03, 3.788784075776896378e-03, 3.798916868324929592e-03, 3.809042998158708362e-03, 3.819162449158623567e-03, 3.829275205216701311e-03, 3.839381250236267688e-03, 3.849480568132691675e-03, 3.859573142832904615e-03, 3.869658958275707696e-03, 3.879737998411309646e-03, 3.889810247202025398e-03, 3.899875688622008937e-03, 3.909934306656867760e-03, 3.919986085304446970e-03, 3.930031008574335315e-03, 3.940069060488150983e-03, 3.950100225079092309e-03, 3.960124486392692378e-03, 3.970141828486439990e-03, 3.980152235429491696e-03, 3.990155691303516605e-03, 4.000152180201650351e-03, 4.010141686229928837e-03, 4.020124193505690557e-03, 4.030099686158991265e-03, 4.040068148331586555e-03, 4.050029564177745449e-03, 4.059983917863979781e-03, 4.069931193568672965e-03, 4.079871375482822457e-03, 4.089804447809691074e-03, 4.099730394764550256e-03, 4.109649200575327121e-03, 4.119560849482188994e-03, 4.129465325737820963e-03, 4.139362613606975723e-03, 4.149252697367170062e-03, 4.159135561308392563e-03, 4.169011189732791355e-03, 4.178879566955453866e-03, 4.188740677303456200e-03, 4.198594505117222292e-03, 4.208441034748961786e-03, 4.218280250564084705e-03, 4.228112136940154545e-03, 4.237936678267766044e-03, 4.247753858950162678e-03, 4.257563663402985990e-03, 4.267366076054946930e-03, 4.277161081347388705e-03, 4.286948663734559996e-03, 4.296728807683201229e-03, 4.306501497673179482e-03, 4.316266718197264707e-03, 4.326024453760732476e-03, 4.335774688882125527e-03, 4.345517408092797532e-03, 4.355252595937181975e-03, 4.364980236972341131e-03, 4.374700315768679029e-03, 4.384412816909640485e-03, 4.394117724991379766e-03, 4.403815024623566367e-03, 4.413504700428438725e-03, 4.423186737042113931e-03, 4.432861119113223371e-03, 4.442527831303551104e-03, 4.452186858288737295e-03, 4.461838184756899105e-03, 4.471481795409928267e-03, 4.481117674962560408e-03, 4.490745808143170419e-03, 4.500366179693414230e-03, 4.509978774368009376e-03, 4.519583576935340408e-03, 4.529180572177072053e-03, 4.538769744888413761e-03, 4.548351079877686019e-03, 4.557924561966994297e-03, 4.567490175991931536e-03, 4.577047906801266774e-03, 4.586597739257772602e-03, 4.596139658237213821e-03, 4.605673648629702265e-03, 4.615199695338191924e-03, 4.624717783279727948e-03, 4.634227897384990413e-03, 4.643730022598021971e-03, 4.653224143876989391e-03, 4.662710246193267627e-03, 4.672188314532713972e-03, 4.681658333894224769e-03, 4.691120289291029512e-03, 4.700574165749740220e-03, 4.710019948311147675e-03, 4.719457622029910905e-03, 4.728887171974261415e-03, 4.738308583226638095e-03, 4.747721840883466909e-03, 4.757126930054794006e-03, 4.766523835865083686e-03, 4.775912543452275581e-03, 4.785293037969072689e-03, 4.794665304581520633e-03, 4.804029328470149976e-03, 4.813385094829597186e-03, 4.822732588868342690e-03, 4.832071795809377013e-03, 4.841402700889379379e-03, 4.850725289359958912e-03, 4.860039546486211344e-03, 4.869345457547994034e-03, 4.878643007839006569e-03, 4.887932182667563581e-03, 4.897212967356289436e-03, 4.906485347241838942e-03, 4.915749307675536597e-03, 4.925004834022955053e-03, 4.934251911664236032e-03, 4.943490525993583795e-03, 4.952720662419987652e-03, 4.961942306366924453e-03, 4.971155443272047211e-03, 4.980360058587820875e-03, 4.989556137781187527e-03, 4.998743666333723377e-03, 5.007922629741310902e-03, 5.017093013514742524e-03, 5.026254803179442190e-03, 5.035407984275200831e-03, 5.044552542356876314e-03, 5.053688462993636242e-03, 5.062815731769674393e-03, 5.071934334283933164e-03, 5.081044256149838158e-03, 5.090145482995870642e-03, 5.099238000465285657e-03, 5.108321794216237784e-03, 5.117396849921434197e-03, 5.126463153268818150e-03, 5.135520689961174320e-03, 5.144569445715978760e-03, 5.153609406265907168e-03, 5.162640557358549528e-03, 5.171662884756558429e-03, 5.180676374237327270e-03, 5.189681011593599153e-03, 5.198676782633154629e-03, 5.207663673178574044e-03, 5.216641669067947039e-03, 5.225610756153999115e-03, 5.234570920305285126e-03, 5.243522147404877827e-03, 5.252464423351498914e-03, 5.261397734058720181e-03, 5.270322065455637466e-03, 5.279237403486625180e-03, 5.288143734110940797e-03, 5.297041043303841144e-03, 5.305929317055222381e-03, 5.314808541370833438e-03, 5.323678702271378294e-03, 5.332539785793264514e-03, 5.341391777988341305e-03, 5.350234664923564712e-03, 5.359068432681678498e-03, 5.367893067360880212e-03, 5.376708555074613018e-03, 5.385514881952197137e-03, 5.394312034138047489e-03, 5.403099997792813400e-03, 5.411878759092067157e-03, 5.420648304227462799e-03, 5.429408619405927741e-03, 5.438159690850315024e-03, 5.446901504799160458e-03, 5.455634047506317461e-03, 5.464357305242049066e-03, 5.473071264291654893e-03, 5.481775910956713203e-03, 5.490471231554171043e-03, 5.499157212417116192e-03, 5.507833839894433689e-03, 5.516501100350575983e-03, 5.525158980166146663e-03, 5.533807465737563061e-03, 5.542446543477246197e-03, 5.551076199813269503e-03, 5.559696421189940820e-03, 5.568307194067578618e-03, 5.576908504922136432e-03, 5.585500340246083231e-03, 5.594082686547343503e-03, 5.602655530350642531e-03, 5.611218858196200150e-03, 5.619772656640321419e-03, 5.628316912256042803e-03, 5.636851611631851083e-03, 5.645376741372893324e-03, 5.653892288100118187e-03, 5.662398238450993236e-03, 5.670894579079165804e-03, 5.679381296654292983e-03, 5.687858377862594142e-03, 5.696325809406440656e-03, 5.704783578004679438e-03, 5.713231670392140277e-03, 5.721670073320344468e-03, 5.730098773557172620e-03, 5.738517757886592296e-03, 5.746927013109314614e-03, 5.755326526042381374e-03, 5.763716283519380174e-03, 5.772096272390093985e-03, 5.780466479521085763e-03, 5.788826891795468589e-03, 5.797177496112582151e-03, 5.805518279388716986e-03, 5.813849228556271405e-03, 5.822170330564901616e-03, 5.830481572380257979e-03, 5.838782940985043184e-03, 5.847074423378324434e-03, 5.855356006576067744e-03, 5.863627677610974004e-03, 5.871889423532195354e-03, 5.880141231405899838e-03, 5.888383088315005988e-03, 5.896614981358955579e-03, 5.904836897654285217e-03, 5.913048824334214346e-03, 5.921250748548967900e-03, 5.929442657465307936e-03, 5.937624538267196293e-03, 5.945796378155445913e-03, 5.953958164347589004e-03, 5.962109884078400923e-03, 5.970251524599227110e-03, 5.978383073179003096e-03, 5.986504517103039338e-03, 5.994615843674110621e-03, 6.002717040211690176e-03, 6.010808094052582859e-03, 6.018888992550680550e-03, 6.026959723076706285e-03, 6.035020273018778907e-03, 6.043070629782053109e-03, 6.051110780788972708e-03, 6.059140713478862982e-03, 6.067160415308513535e-03, 6.075169873751961463e-03, 6.083169076300223334e-03, 6.091158010461789583e-03, 6.099136663762418954e-03, 6.107105023745192270e-03, 6.115063077970264369e-03, 6.123010814015408809e-03, 6.130948219475742048e-03, 6.138875281963493587e-03, 6.146791989108633079e-03, 6.154698328558127866e-03, 6.162594287976999423e-03, 6.170479855047137675e-03, 6.178355017467961931e-03, 6.186219762956892722e-03, 6.194074079248251992e-03, 6.201917954094316072e-03, 6.209751375264583630e-03, 6.217574330546355062e-03, 6.225386807744548619e-03, 6.233188794681376009e-03, 6.240980279197015472e-03, 6.248761249149112178e-03, 6.256531692413130376e-03, 6.264291596881909306e-03, 6.272040950466277291e-03, 6.279779741094778517e-03, 6.287507956713417161e-03, 6.295225585286312250e-03, 6.302932614794929181e-03, 6.310629033239131824e-03, 6.318314828635970826e-03, 6.325989989020689742e-03, 6.333654502446397182e-03, 6.341308356983766693e-03, 6.348951540721757547e-03, 6.356584041766760382e-03, 6.364205848243725643e-03, 6.371816948294895498e-03, 6.379417330080949626e-03, 6.387006981780193361e-03, 6.394585891589169187e-03, 6.402154047722438159e-03, 6.409711438412334442e-03, 6.417258051909522157e-03, 6.424793876482712621e-03, 6.432318900418470924e-03, 6.439833112021786654e-03, 6.447336499615369601e-03, 6.454829051540630740e-03, 6.462310756156587621e-03, 6.469781601840749949e-03, 6.477241576988854166e-03, 6.484690670014554674e-03, 6.492128869350092570e-03, 6.499556163445562723e-03, 6.506972540769868744e-03, 6.514377989809654393e-03, 6.521772499070295839e-03, 6.529156057075078540e-03, 6.536528652365989137e-03, 6.543890273503240144e-03, 6.551240909065293369e-03, 6.558580547649212056e-03, 6.565909177870328690e-03, 6.573226788362564188e-03, 6.580533367777970793e-03, 6.587828904787376531e-03, 6.595113388080033057e-03, 6.602386806363483816e-03, 6.609649148363999464e-03, 6.616900402826325460e-03, 6.624140558513810437e-03, 6.631369604208185893e-03, 6.638587528709938290e-03, 6.645794320838191958e-03, 6.652989969430442817e-03, 6.660174463343142975e-03, 6.667347791451093582e-03, 6.674509942647976514e-03, 6.681660905846196520e-03, 6.688800669976576775e-03, 6.695929223988937411e-03, 6.703046556851763316e-03, 6.710152657552325567e-03, 6.717247515096508824e-03, 6.724331118509147866e-03, 6.731403456833921772e-03, 6.738464519133095451e-03, 6.745514294488001890e-03, 6.752552771998753325e-03, 6.759579940784421655e-03, 6.766595789982732256e-03, 6.773600308750533233e-03, 6.780593486263638420e-03, 6.787575311716505591e-03, 6.794545774322939893e-03, 6.801504863315256839e-03, 6.808452567945365644e-03, 6.815388877483600887e-03, 6.822313781219704366e-03, 6.829227268462191060e-03, 6.836129328538808822e-03, 6.843019950796433437e-03, 6.849899124600677437e-03, 6.856766839336823384e-03, 6.863623084408727523e-03, 6.870467849239752199e-03, 6.877301123272148292e-03, 6.884122895967523595e-03, 6.890933156806697962e-03, 6.897731895289459583e-03, 6.904519100935056775e-03, 6.911294763281919558e-03, 6.918058871887598077e-03, 6.924811416329092195e-03, 6.931552386202416947e-03, 6.938281771123358012e-03, 6.944999560726482050e-03, 6.951705744666082133e-03, 6.958400312615505533e-03, 6.965083254267679345e-03, 6.971754559334878039e-03, 6.978414217548529162e-03, 6.985062218659940196e-03, 6.991698552439348791e-03, 6.998323208676810944e-03, 7.004936177181522727e-03, 7.011537447782380597e-03, 7.018127010327768894e-03, 7.024704854685382034e-03, 7.031270970742611350e-03, 7.037825348406320444e-03, 7.044367977603014329e-03, 7.050898848278551456e-03, 7.057417950398529698e-03, 7.063925273948212617e-03, 7.070420808932220691e-03, 7.076904545375108969e-03, 7.083376473320683597e-03, 7.089836582832951574e-03, 7.096284863995128492e-03, 7.102721306910139004e-03, 7.109145901701029689e-03, 7.115558638510063524e-03, 7.121959507499575105e-03, 7.128348498851419003e-03, 7.134725602767367884e-03, 7.141090809468984141e-03, 7.147444109197425600e-03, 7.153785492213861862e-03, 7.160114948799223625e-03, 7.166432469254326726e-03, 7.172738043899631877e-03, 7.179031663075700030e-03, 7.185313317142971203e-03, 7.191582996481545031e-03, 7.197840691491643079e-03, 7.204086392593383320e-03, 7.210320090226832179e-03, 7.216541774851875299e-03, 7.222751436948491623e-03, 7.228949067016721304e-03, 7.235134655576333507e-03, 7.241308193167432690e-03, 7.247469670349756914e-03, 7.253619077703627599e-03, 7.259756405828891347e-03, 7.265881645345829802e-03, 7.271994786894509996e-03, 7.278095821135341197e-03, 7.284184738748817299e-03, 7.290261530435365039e-03, 7.296326186915749919e-03, 7.302378698930821199e-03, 7.308419057241682774e-03, 7.314447252629376582e-03, 7.320463275895388276e-03, 7.326467117861411305e-03, 7.332458769369137874e-03, 7.338438221280713450e-03, 7.344405464478529454e-03, 7.350360489865039385e-03, 7.356303288363262756e-03, 7.362233850916163197e-03, 7.368152168487481987e-03, 7.374058232060824725e-03, 7.379952032640427206e-03, 7.385833561250672308e-03, 7.391702808936437795e-03, 7.397559766763030405e-03, 7.403404425815898748e-03, 7.409236777201132045e-03, 7.415056812045159144e-03, 7.420864521494884708e-03, 7.426659896717473230e-03, 7.432442928900749764e-03, 7.438213609253012566e-03, 7.443971929002818864e-03, 7.449717879399424605e-03, 7.455451451712558075e-03, 7.461172637232521380e-03, 7.466881427269926770e-03, 7.472577813156153735e-03, 7.478261786243177271e-03, 7.483933337903299864e-03, 7.489592459529659761e-03, 7.495239142535753060e-03, 7.500873378356068613e-03, 7.506495158445358577e-03, 7.512104474279007044e-03, 7.517701317353447238e-03, 7.523285679185344466e-03, 7.528857551312303879e-03, 7.534416925292415114e-03, 7.539963792704659079e-03, 7.545498145148724078e-03, 7.551019974244824531e-03, 7.556529271634112969e-03, 7.562026028978464064e-03, 7.567510237960532737e-03, 7.572981890283589368e-03, 7.578440977671856323e-03, 7.583887491870434233e-03, 7.589321424644965459e-03, 7.594742767782186599e-03, 7.600151513089444498e-03, 7.605547652395256569e-03, 7.610931177548644656e-03, 7.616302080419751729e-03, 7.621660352899569529e-03, 7.627005986899870055e-03, 7.632338974353502191e-03, 7.637659307214028290e-03, 7.642966977456283617e-03, 7.648261977075724964e-03, 7.653544298088969279e-03, 7.658813932533452794e-03, 7.664070872467718121e-03, 7.669315109971348333e-03, 7.674546637144764871e-03, 7.679765446109499891e-03, 7.684971529008245705e-03, 7.690164878004457534e-03, 7.695345485282947644e-03, 7.700513343049278196e-03, 7.705668443530490699e-03, 7.710810778974342729e-03, 7.715940341649881254e-03, 7.721057123847309932e-03, 7.726161117877750582e-03, 7.731252316073727177e-03, 7.736330710788623735e-03, 7.741396294397342656e-03, 7.746449059295597815e-03, 7.751488997900559882e-03, 7.756516102650369733e-03, 7.761530366004529627e-03, 7.766531780443778309e-03, 7.771520338469907994e-03, 7.776496032606100908e-03, 7.781458855396751473e-03, 7.786408799407577332e-03, 7.791345857225382560e-03, 7.796270021458445373e-03, 7.801181284736303026e-03, 7.806079639709660734e-03, 7.810965079050682242e-03, 7.815837595452845843e-03, 7.820697181630965195e-03, 7.825543830321083499e-03, 7.830377534280759735e-03, 7.835198286288895184e-03, 7.840006079145629345e-03, 7.844800905672705965e-03, 7.849582758713018540e-03, 7.854351631131236550e-03, 7.859107515813102893e-03, 7.863850405665891857e-03, 7.868580293618417792e-03, 7.873297172620858167e-03, 7.878001035644975614e-03, 7.882691875683788332e-03, 7.887369685751986423e-03, 7.892034458885777495e-03, 7.896686188142645543e-03, 7.901324866601831462e-03, 7.905950487364006921e-03, 7.910563043551432222e-03, 7.915162528307777626e-03, 7.919748934798419987e-03, 7.924322256210272752e-03, 7.928882485751714837e-03, 7.933429616652901140e-03, 7.937963642165342740e-03, 7.942484555562451601e-03, 7.946992350138990663e-03, 7.951487019211540483e-03, 7.955968556118134943e-03, 7.960436954218629013e-03, 7.964892206894466295e-03, 7.969334307548642596e-03, 7.973763249606127465e-03, 7.978179026513201530e-03, 7.982581631738150385e-03, 7.986971058770751114e-03, 7.991347301122600152e-03, 7.995710352327059511e-03, 8.000060205939046876e-03, 8.004396855535398161e-03, 8.008720294714683635e-03, 8.013030517097095157e-03, 8.017327516324798328e-03, 8.021611286061431159e-03, 8.025881819992843058e-03, 8.030139111826328085e-03, 8.034383155291162718e-03, 8.038613944138343903e-03, 8.042831472140745189e-03, 8.047035733093130597e-03, 8.051226720811908294e-03, 8.055404429135659683e-03, 8.059568851924513166e-03, 8.063719983060668034e-03, 8.067857816448040578e-03, 8.071982346012600631e-03, 8.076093565702149521e-03, 8.080191469486288844e-03, 8.084276051356706697e-03, 8.088347305326919201e-03, 8.092405225432407548e-03, 8.096449805730538199e-03, 8.100481040300656563e-03, 8.104498923244156383e-03, 8.108503448684186571e-03, 8.112494610766103967e-03, 8.116472403657004966e-03, 8.120436821546292774e-03, 8.124387858645032087e-03, 8.128325509186528491e-03, 8.132249767426028356e-03, 8.136160627640763934e-03, 8.140058084130060920e-03, 8.143942131215211808e-03, 8.147812763239670186e-03, 8.151669974568868590e-03, 8.155513759590260134e-03, 8.159344112713469432e-03, 8.163161028370164232e-03, 8.166964501014156025e-03, 8.170754525121169329e-03, 8.174531095189225063e-03, 8.178294205738446260e-03, 8.182043851310910609e-03, 8.185780026470971388e-03, 8.189502725805113473e-03, 8.193211943921946405e-03, 8.196907675452141939e-03, 8.200589915048642209e-03, 8.204258657386572992e-03, 8.207913897163075442e-03, 8.211555629097679054e-03, 8.215183847931873187e-03, 8.218798548429646564e-03, 8.222399725376864504e-03, 8.225987373581862203e-03, 8.229561487874981554e-03, 8.233122063108973612e-03, 8.236669094158753993e-03, 8.240202575921383790e-03, 8.243722503316333258e-03, 8.247228871285223334e-03, 8.250721674792025132e-03, 8.254200908822825755e-03, 8.257666568386137079e-03, 8.261118648512725746e-03, 8.264557144255554183e-03, 8.267982050689987039e-03, 8.271393362913695771e-03, 8.274791076046545887e-03, 8.278175185230862362e-03, 8.281545685631145140e-03, 8.284902572434450774e-03, 8.288245840849925786e-03, 8.291575486109247287e-03, 8.294891503466274296e-03, 8.298193888197380810e-03, 8.301482635601258042e-03, 8.304757740998883198e-03, 8.308019199733729376e-03, 8.311267007171592100e-03, 8.314501158700707273e-03, 8.317721649731601996e-03, 8.320928475697313143e-03, 8.324121632053298886e-03, 8.327301114277287780e-03, 8.330466917869587540e-03, 8.333619038352864730e-03, 8.336757471272250586e-03, 8.339882212195250805e-03, 8.342993256711882591e-03, 8.346090600434638226e-03, 8.349174238998379252e-03, 8.352244168060527288e-03, 8.355300383300824640e-03, 8.358342880421759311e-03, 8.361371655148030699e-03, 8.364386703226894815e-03, 8.367388020428270096e-03, 8.370375602544347093e-03, 8.373349445389992665e-03, 8.376309544802448132e-03, 8.379255896641575607e-03, 8.382188496789746979e-03, 8.385107341151776250e-03, 8.388012425655120771e-03, 8.390903746249721643e-03, 8.393781298908119942e-03, 8.396645079625269376e-03, 8.399495084418843321e-03, 8.402331309329023196e-03, 8.405153750418463757e-03, 8.407962403772537702e-03, 8.410757265499040763e-03, 8.413538331728578554e-03, 8.416305598614072167e-03, 8.419059062331224821e-03, 8.421798719078289405e-03, 8.424524565076070212e-03, 8.427236596568058249e-03, 8.429934809820250827e-03, 8.432619201121451663e-03, 8.435289766782854554e-03, 8.437946503138487458e-03, 8.440589406544848211e-03, 8.443218473381149114e-03, 8.445833700049304796e-03, 8.448435082973748331e-03, 8.451022618601608180e-03, 8.453596303402793194e-03, 8.456156133869647401e-03, 8.458702106517388894e-03, 8.461234217883719516e-03, 8.463752464529230787e-03, 8.466256843037011856e-03, 8.468747350012902769e-03, 8.471223982085461512e-03, 8.473686735905877274e-03, 8.476135608148098813e-03, 8.478570595508681806e-03, 8.480991694707024769e-03, 8.483398902485108847e-03, 8.485792215607714656e-03, 8.488171630862264422e-03, 8.490537145058972904e-03, 8.492888755030767595e-03, 8.495226457633243619e-03, 8.497550249744818124e-03, 8.499860128266591500e-03, 8.502156090122435853e-03, 8.504438132258925614e-03, 8.506706251645417341e-03, 8.508960445274080936e-03, 8.511200710159684546e-03, 8.513427043339915484e-03, 8.515639441875144308e-03, 8.517837902848542780e-03, 8.520022423366016215e-03, 8.522193000556293682e-03, 8.524349631570858621e-03, 8.526492313583960980e-03, 8.528621043792710896e-03, 8.530735819416853175e-03, 8.532836637699147200e-03, 8.534923495904967947e-03, 8.536996391322526287e-03, 8.539055321262867260e-03, 8.541100283059871803e-03, 8.543131274070190836e-03, 8.545148291673266075e-03, 8.547151333271362991e-03, 8.549140396289634999e-03, 8.551115478175988147e-03, 8.553076576401150502e-03, 8.555023688458720729e-03, 8.556956811865129922e-03, 8.558875944159575685e-03, 8.560781082904174791e-03, 8.562672225683824398e-03, 8.564549370106274914e-03, 8.566412513802194179e-03, 8.568261654424955825e-03, 8.570096789650939392e-03, 8.571917917179257967e-03, 8.573725034731981970e-03, 8.575518140053932717e-03, 8.577297230912859366e-03, 8.579062305099405955e-03, 8.580813360426965686e-03, 8.582550394731955010e-03, 8.584273405873525664e-03, 8.585982391733804064e-03, 8.587677350217703953e-03, 8.589358279253056505e-03, 8.591025176790648490e-03, 8.592678040803993292e-03, 8.594316869289617133e-03, 8.595941660266890813e-03, 8.597552411778074805e-03, 8.599149121888296707e-03, 8.600731788685606755e-03, 8.602300410280984758e-03, 8.603854984808196119e-03, 8.605395510424052041e-03, 8.606921985308114628e-03, 8.608434407662979640e-03, 8.609932775714082206e-03, 8.611417087709728052e-03, 8.612887341921242682e-03, 8.614343536642737192e-03, 8.615785670191344198e-03, 8.617213740906999250e-03, 8.618627747152616050e-03, 8.620027687314063894e-03, 8.621413559800049711e-03, 8.622785363042230825e-03, 8.624143095495201070e-03, 8.625486755636483857e-03, 8.626816341966457580e-03, 8.628131853008496124e-03, 8.629433287308887340e-03, 8.630720643436817427e-03, 8.631993919984436853e-03, 8.633253115566766681e-03, 8.634498228821878979e-03, 8.635729258410614062e-03, 8.636946203016880597e-03, 8.638149061347459579e-03, 8.639337832132056375e-03, 8.640512514123373580e-03, 8.641673106096987855e-03, 8.642819606851421047e-03, 8.643952015208169679e-03, 8.645070330011659851e-03, 8.646174550129193462e-03, 8.647264674451128619e-03, 8.648340701890687085e-03, 8.649402631384044485e-03, 8.650450461890292139e-03, 8.651484192391546355e-03, 8.652503821892766275e-03, 8.653509349421942970e-03, 8.654500774029969326e-03, 8.655478094790693827e-03, 8.656441310800873715e-03, 8.657390421180279072e-03, 8.658325425071580067e-03, 8.659246321640416341e-03, 8.660153110075362315e-03, 8.661045789587906371e-03, 8.661924359412574020e-03, 8.662788818806744021e-03, 8.663639167050776746e-03, 8.664475403448029800e-03, 8.665297527324700155e-03, 8.666105538030044464e-03, 8.666899434936202115e-03, 8.667679217438275033e-03, 8.668444884954306859e-03, 8.669196436925321117e-03, 8.669933872815213660e-03, 8.670657192110926142e-03, 8.671366394322277751e-03, 8.672061478982029392e-03, 8.672742445645940934e-03, 8.673409293892665392e-03, 8.674062023323826989e-03, 8.674700633564005545e-03, 8.675325124260656676e-03, 8.675935495084295679e-03, 8.676531745728284159e-03, 8.677113875908987889e-03, 8.677681885365608541e-03, 8.678235773860435223e-03, 8.678775541178606820e-03, 8.679301187128207404e-03, 8.679812711540288786e-03, 8.680310114268818475e-03, 8.680793395190710901e-03, 8.681262554205787518e-03, 8.681717591236879153e-03, 8.682158506229656000e-03, 8.682585299152780281e-03, 8.682997969997854198e-03, 8.683396518779357490e-03, 8.683780945534767121e-03, 8.684151250324390753e-03, 8.684507433231599197e-03, 8.684849494362567937e-03, 8.685177433846447137e-03, 8.685491251835313065e-03, 8.685790948504181971e-03, 8.686076524050940703e-03, 8.686347978696407415e-03, 8.686605312684387084e-03, 8.686848526281508442e-03, 8.687077619777350615e-03, 8.687292593484410158e-03, 8.687493447738128816e-03, 8.687680182896782496e-03, 8.687852799341621787e-03, 8.688011297476740113e-03, 8.688155677729215987e-03, 8.688285940548963818e-03, 8.688402086408843206e-03, 8.688504115804558323e-03, 8.688592029254779345e-03, 8.688665827301034900e-03, 8.688725510507722474e-03, 8.688771079462203825e-03, 8.688802534774664466e-03, 8.688819877078169177e-03, 8.688823107028719253e-03, 8.688812225305181380e-03, 8.688787232609277225e-03, 8.688748129665658029e-03, 8.688694917221795322e-03, 8.688627596048032961e-03, 8.688546166937689483e-03, 8.688450630706806566e-03, 8.688340988194393627e-03, 8.688217240262259555e-03, 8.688079387795139344e-03, 8.687927431700574396e-03, 8.687761372909028751e-03, 8.687581212373703468e-03, 8.687386951070749999e-03, 8.687178589999153960e-03, 8.686956130180728194e-03, 8.686719572660119709e-03, 8.686468918504818351e-03, 8.686204168805222725e-03, 8.685925324674432027e-03, 8.685632387248485436e-03, 8.685325357686218134e-03, 8.685004237169294261e-03, 8.684669026902163552e-03, 8.684319728112144601e-03, 8.683956342049383229e-03, 8.683578869986750132e-03, 8.683187313220024767e-03, 8.682781673067766978e-03, 8.682361950871287509e-03, 8.681928147994776371e-03, 8.681480265825150186e-03, 8.681018305772175356e-03, 8.680542269268388261e-03, 8.680052157769077917e-03, 8.679547972752383114e-03, 8.679029715719141502e-03, 8.678497388193082140e-03, 8.677950991720570495e-03, 8.677390527870840892e-03, 8.676815998235850799e-03, 8.676227404430374504e-03, 8.675624748091815761e-03, 8.675008030880462795e-03, 8.674377254479316568e-03, 8.673732420594106388e-03, 8.673073530953319399e-03, 8.672400587308152012e-03, 8.671713591432591434e-03, 8.671012545123309850e-03, 8.670297450199737285e-03, 8.669568308503978332e-03, 8.668825121900907565e-03, 8.668067892278126171e-03, 8.667296621545857865e-03, 8.666511311637124099e-03, 8.665711964507636506e-03, 8.664898582135746596e-03, 8.664071166522534229e-03, 8.663229719691786790e-03, 8.662374243689976647e-03, 8.661504740586219511e-03, 8.660621212472305666e-03, 8.659723661462776292e-03, 8.658812089694722242e-03, 8.657886499327995672e-03, 8.656946892545057393e-03, 8.655993271551025436e-03, 8.655025638573678529e-03, 8.654043995863428332e-03, 8.653048345693335058e-03, 8.652038690359093592e-03, 8.651015032179026551e-03, 8.649977373494037447e-03, 8.648925716667725180e-03, 8.647860064086259138e-03, 8.646780418158441645e-03, 8.645686781315657654e-03, 8.644579156011864343e-03, 8.643457544723695193e-03, 8.642321949950321214e-03, 8.641172374213470023e-03, 8.640008820057521258e-03, 8.638831290049338307e-03, 8.637639786778464335e-03, 8.636434312856915846e-03, 8.635214870919278099e-03, 8.633981463622725921e-03, 8.632734093646952586e-03, 8.631472763694237466e-03, 8.630197476489322866e-03, 8.628908234779552808e-03, 8.627605041334720365e-03, 8.626287898947220326e-03, 8.624956810431906942e-03, 8.623611778626173729e-03, 8.622252806389915300e-03, 8.620879896605464915e-03, 8.619493052177762751e-03, 8.618092276034088756e-03, 8.616677571124329790e-03, 8.615248940420762794e-03, 8.613806386918191824e-03, 8.612349913633857851e-03, 8.610879523607412739e-03, 8.609395219901068430e-03, 8.607897005599347146e-03, 8.606384883809324246e-03, 8.604858857660423535e-03, 8.603318930304550832e-03, 8.601765104916000299e-03, 8.600197384691470048e-03, 8.598615772850117661e-03, 8.597020272633431812e-03, 8.595410887305367578e-03, 8.593787620152181644e-03, 8.592150474482571076e-03, 8.590499453627626486e-03, 8.588834560940752233e-03, 8.587155799797739283e-03, 8.585463173596725311e-03, 8.583756685758201638e-03, 8.582036339725018434e-03, 8.580302138962318803e-03, 8.578554086957656741e-03, 8.576792187220813254e-03, 8.575016443283916059e-03, 8.573226858701411823e-03, 8.571423437050083513e-03, 8.569606181928915087e-03, 8.567775096959258027e-03, 8.565930185784744605e-03, 8.564071452071194204e-03, 8.562198899506864858e-03, 8.560312531802010891e-03, 8.558412352689429362e-03, 8.556498365923927499e-03, 8.554570575282714751e-03, 8.552628984565132167e-03, 8.550673597592766892e-03, 8.548704418209488592e-03, 8.546721450281255170e-03, 8.544724697696336538e-03, 8.542714164365083906e-03, 8.540689854220191723e-03, 8.538651771216402772e-03, 8.536599919330640010e-03, 8.534534302562086366e-03, 8.532454924931993923e-03, 8.530361790483758505e-03, 8.528254903283008156e-03, 8.526134267417394969e-03, 8.523999886996804984e-03, 8.521851766153094518e-03, 8.519689909040397205e-03, 8.517514319834834299e-03, 8.515325002734696822e-03, 8.513121961960315454e-03, 8.510905201754077887e-03, 8.508674726380517292e-03, 8.506430540126189155e-03, 8.504172647299685153e-03, 8.501901052231648770e-03, 8.499615759274822130e-03, 8.497316772803902019e-03, 8.495004097215642230e-03, 8.492677736928822343e-03, 8.490337696384209556e-03, 8.487983980044582974e-03, 8.485616592394650340e-03, 8.483235537941244062e-03, 8.480840821213002020e-03, 8.478432446760626046e-03, 8.476010419156753545e-03, 8.473574742995969647e-03, 8.471125422894824550e-03, 8.468662463491699946e-03, 8.466185869446994638e-03, 8.463695645443079438e-03, 8.461191796184026545e-03, 8.458674326396001600e-03, 8.456143240826915000e-03, 8.453598544246692520e-03, 8.451040241447018569e-03, 8.448468337241466300e-03, 8.445882836465525359e-03, 8.443283743976424949e-03, 8.440671064653298625e-03, 8.438044803397047253e-03, 8.435404965130476052e-03, 8.432751554798157551e-03, 8.430084577366353527e-03, 8.427404037823339397e-03, 8.424709941178935846e-03, 8.422002292464959849e-03, 8.419281096734744160e-03, 8.416546359063565783e-03, 8.413798084548410050e-03, 8.411036278307870012e-03, 8.408260945482453480e-03, 8.405472091234210061e-03, 8.402669720747088511e-03, 8.399853839226464891e-03, 8.397024451899669922e-03, 8.394181564015506733e-03, 8.391325180844611681e-03, 8.388455307679176798e-03, 8.385571949833024383e-03, 8.382675112641721493e-03, 8.379764801462359636e-03, 8.376841021673679666e-03, 8.373903778676023216e-03, 8.370953077891403818e-03, 8.367988924763380271e-03, 8.365011324756969902e-03, 8.362020283358997247e-03, 8.359015806077643024e-03, 8.355997898442699134e-03, 8.352966566005566931e-03, 8.349921814339052520e-03, 8.346863649037649519e-03, 8.343792075717134868e-03, 8.340707100015011186e-03, 8.337608727590092167e-03, 8.334496964122818305e-03, 8.331371815315024437e-03, 8.328233286889899847e-03, 8.325081384592314393e-03, 8.321916114188402172e-03, 8.318737481465771424e-03, 8.315545492233402183e-03, 8.312340152321814543e-03, 8.309121467582773757e-03, 8.305889443889474116e-03, 8.302644087136578852e-03, 8.299385403239984207e-03, 8.296113398136999856e-03, 8.292828077786237873e-03, 8.289529448167767128e-03, 8.286217515282814916e-03, 8.282892285153988995e-03, 8.279553763825249837e-03, 8.276201957361721540e-03, 8.272836871850011015e-03, 8.269458513397677166e-03, 8.266066888133841509e-03, 8.262662002208749287e-03, 8.259243861793852740e-03, 8.255812473081854466e-03, 8.252367842286613756e-03, 8.248909975643353015e-03, 8.245438879408303889e-03, 8.241954559858936241e-03, 8.238457023293959888e-03, 8.234946276033144191e-03, 8.231422324417439484e-03, 8.227885174808899013e-03, 8.224334833590783017e-03, 8.220771307167402606e-03, 8.217194601964079859e-03, 8.213604724427473955e-03, 8.210001681025006978e-03, 8.206385478245509235e-03, 8.202756122598455976e-03, 8.199113620614763634e-03, 8.195457978846076852e-03, 8.191789203865280228e-03, 8.188107302266135756e-03, 8.184412280663379974e-03, 8.180704145692899165e-03, 8.176982904011283540e-03, 8.173248562296366732e-03, 8.169501127246715788e-03, 8.165740605582004139e-03, 8.161967004042671586e-03, 8.158180329390118599e-03, 8.154380588406742736e-03, 8.150567787895742627e-03, 8.146741934681114503e-03, 8.142903035607945358e-03, 8.139051097541896013e-03, 8.135186127369773562e-03, 8.131308131998868718e-03, 8.127417118357576839e-03, 8.123513093394927817e-03, 8.119596064080863637e-03, 8.115666037406002453e-03, 8.111723020381720120e-03, 8.107767020040316727e-03, 8.103798043434523937e-03, 8.099816097638164181e-03, 8.095821189745453297e-03, 8.091813326871579934e-03, 8.087792516152247577e-03, 8.083758764743839351e-03, 8.079712079823534246e-03, 8.075652468589048644e-03, 8.071579938258792442e-03, 8.067494496071714663e-03, 8.063396149287542850e-03, 8.059284905186491627e-03, 8.055160771069326889e-03, 8.051023754257549681e-03, 8.046873862093087415e-03, 8.042711101938444795e-03, 8.038535481176655242e-03, 8.034347007211339875e-03, 8.030145687466620774e-03, 8.025931529386985674e-03, 8.021704540437634909e-03, 8.017464728103988747e-03, 8.013212099892254650e-03, 8.008946663328653584e-03, 8.004668425960186767e-03, 8.000377395354210663e-03, 7.996073579098393613e-03, 7.991756984800837266e-03, 7.987427620090003719e-03, 7.983085492614783174e-03, 7.978730610044433222e-03, 7.974362980068363735e-03, 7.969982610396605244e-03, 7.965589508759271173e-03, 7.961183682906837131e-03, 7.956765140610057643e-03, 7.952333889660040747e-03, 7.947889937868074517e-03, 7.943433293065625331e-03, 7.938963963104572058e-03, 7.934481955856845237e-03, 7.929987279214761875e-03, 7.925479941090513708e-03, 7.920959949416831597e-03, 7.916427312146333273e-03, 7.911882037251995181e-03, 7.907324132726760435e-03, 7.902753606583740043e-03, 7.898170466856238928e-03, 7.893574721597547764e-03, 7.888966378881083485e-03, 7.884345446800248777e-03, 7.879711933468699220e-03, 7.875065847019895732e-03, 7.870407195607402942e-03, 7.865735987404899598e-03, 7.861052230605887134e-03, 7.856355933423922119e-03, 7.851647104092583304e-03, 7.846925750865268653e-03, 7.842191882015547497e-03, 7.837445505836534293e-03, 7.832686630641617215e-03, 7.827915264763837117e-03, 7.823131416556288256e-03, 7.818335094391837270e-03, 7.813526306663109294e-03, 7.808705061782776798e-03, 7.803871368183171869e-03, 7.799025234316487448e-03, 7.794166668654629003e-03, 7.789295679689456527e-03, 7.784412275932424581e-03, 7.779516465914764443e-03, 7.774608258187534413e-03, 7.769687661321399499e-03, 7.764754683906777144e-03, 7.759809334553695835e-03, 7.754851621892033635e-03, 7.749881554571170367e-03, 7.744899141260120322e-03, 7.739904390647671904e-03, 7.734897311442022472e-03, 7.729877912371250180e-03, 7.724846202182602747e-03, 7.719802189643325784e-03, 7.714745883539935942e-03, 7.709677292678519291e-03, 7.704596425884882235e-03, 7.699503292004045846e-03, 7.694397899900776681e-03, 7.689280258459173061e-03, 7.684150376582750061e-03, 7.679008263194667637e-03, 7.673853927237326428e-03, 7.668687377672610619e-03, 7.663508623481732687e-03, 7.658317673665492736e-03, 7.653114537243822270e-03, 7.647899223256065214e-03, 7.642671740761023021e-03, 7.637432098836652826e-03, 7.632180306580428272e-03, 7.626916373108762713e-03, 7.621640307557741266e-03, 7.616352119082442536e-03, 7.611051816857201426e-03, 7.605739410075774802e-03, 7.600414907950886131e-03, 7.595078319714701660e-03, 7.589729654618226733e-03, 7.584368921932009219e-03, 7.578996130945422210e-03, 7.573611290967230403e-03, 7.568214411325139938e-03, 7.562805501365931979e-03, 7.557384570455696025e-03, 7.551951627979343329e-03, 7.546506683340929549e-03, 7.541049745963511637e-03, 7.535580825289198148e-03, 7.530099930779252451e-03, 7.524607071913528081e-03, 7.519102258191228544e-03, 7.513585499130337464e-03, 7.508056804267723532e-03, 7.502516183159349539e-03, 7.496963645379895076e-03, 7.491399200523190215e-03, 7.485822858201490390e-03, 7.480234628046370654e-03, 7.474634519707918159e-03, 7.469022542855293344e-03, 7.463398707176255482e-03, 7.457763022377380396e-03, 7.452115498184181883e-03, 7.446456144340730943e-03, 7.440784970609943746e-03, 7.435101986773329230e-03, 7.429407202631317826e-03, 7.423700628002882426e-03, 7.417982272725567004e-03, 7.412252146655852643e-03, 7.406510259668606759e-03, 7.400756621657406630e-03, 7.394991242534364184e-03, 7.389214132230377541e-03, 7.383425300694669569e-03, 7.377624757895099271e-03, 7.371812513818156581e-03, 7.365988578468669196e-03, 7.360152961870238854e-03, 7.354305674064541380e-03, 7.348446725112074349e-03, 7.342576125091696514e-03, 7.336693884100624341e-03, 7.330800012254503999e-03, 7.324894519687340233e-03, 7.318977416551708873e-03, 7.313048713018339628e-03, 7.307108419276309511e-03, 7.301156545533234524e-03, 7.295193102014829040e-03, 7.289218098965142591e-03, 7.283231546646471398e-03, 7.277233455339579549e-03, 7.271223835343179447e-03, 7.265202696974336870e-03, 7.259170050568418929e-03, 7.253125906478738449e-03, 7.247070275077133368e-03, 7.241003166753108046e-03, 7.234924591914759610e-03, 7.228834560987966104e-03, 7.222733084416999710e-03, 7.216620172664000264e-03, 7.210495836209130510e-03, 7.204360085550908302e-03, 7.198212931205400823e-03, 7.192054383707147461e-03, 7.185884453608308055e-03, 7.179703151479360258e-03, 7.173510487908460291e-03, 7.167306473501738710e-03, 7.161091118883440923e-03, 7.154864434695505648e-03, 7.148626431597797370e-03, 7.142377120268036950e-03, 7.136116511401844123e-03, 7.129844615712802557e-03, 7.123561443931881315e-03, 7.117267006808279672e-03, 7.110961315108665567e-03, 7.104644379617742860e-03, 7.098316211137698818e-03, 7.091976820488464332e-03, 7.085626218507971516e-03, 7.079264416051275939e-03, 7.072891423991688534e-03, 7.066507253219675780e-03, 7.060111914643751353e-03, 7.053705419189726725e-03, 7.047287777801028615e-03, 7.040859001438870730e-03, 7.034419101081802739e-03, 7.027968087726000831e-03, 7.021505972385022262e-03, 7.015032766090173108e-03, 7.008548479890040761e-03, 7.002053124850598879e-03, 6.995546712055555200e-03, 6.989029252605773873e-03, 6.982500757619585115e-03, 6.975961238232660303e-03, 6.969410705598227083e-03, 6.962849170886651305e-03, 6.956276645285606151e-03, 6.949693140000300258e-03, 6.943098666252944286e-03, 6.936493235283363278e-03, 6.929876858348124093e-03, 6.923249546721473892e-03, 6.916611311694789363e-03, 6.909962164576476974e-03, 6.903302116692217570e-03, 6.896631179384728715e-03, 6.889949364014146330e-03, 6.883256681957401063e-03, 6.876553144608622478e-03, 6.869838763379184157e-03, 6.863113549697289102e-03, 6.856377515008268975e-03, 6.849630670774388939e-03, 6.842873028475124353e-03, 6.836104599606735756e-03, 6.829325395682411988e-03, 6.822535428232519121e-03, 6.815734708804030602e-03, 6.808923248961228081e-03, 6.802101060284710017e-03, 6.795268154372490627e-03, 6.788424542839026701e-03, 6.781570237315890683e-03, 6.774705249451259785e-03, 6.767829590910091203e-03, 6.760943273374291247e-03, 6.754046308542351919e-03, 6.747138708129485352e-03, 6.740220483867570035e-03, 6.733291647505419697e-03, 6.726352210808216048e-03, 6.719402185557842716e-03, 6.712441583553034434e-03, 6.705470416608862692e-03, 6.698488696557005490e-03, 6.691496435245914733e-03, 6.684493644540327045e-03, 6.677480336321825818e-03, 6.670456522487988593e-03, 6.663422214953434834e-03, 6.656377425648814586e-03, 6.649322166521560475e-03, 6.642256449535297903e-03, 6.635180286670048014e-03, 6.628093689922434119e-03, 6.620996671305230674e-03, 6.613889242847589660e-03, 6.606771416594995477e-03, 6.599643204609348217e-03, 6.592504618968686968e-03, 6.585355671767273086e-03, 6.578196375115826985e-03, 6.571026741141099657e-03, 6.563846781986107728e-03, 6.556656509809897539e-03, 6.549455936788022188e-03, 6.542245075111841578e-03, 6.535023936988865016e-03, 6.527792534642973266e-03, 6.520550880313745468e-03, 6.513298986257244107e-03, 6.506036864745001064e-03, 6.498764528065119166e-03, 6.491481988521377068e-03, 6.484189258433531097e-03, 6.476886350137519947e-03, 6.469573275984867068e-03, 6.462250048343399708e-03, 6.454916679596524667e-03, 6.447573182143528404e-03, 6.440219568399806888e-03, 6.432855850796322626e-03, 6.425482041779928197e-03, 6.418098153813206648e-03, 6.410704199374690077e-03, 6.403300190958438956e-03, 6.395886141074252906e-03, 6.388462062247859778e-03, 6.381027967020326715e-03, 6.373583867948827766e-03, 6.366129777605527597e-03, 6.358665708578866045e-03, 6.351191673472481730e-03, 6.343707684905612772e-03, 6.336213755513304090e-03, 6.328709897945787241e-03, 6.321196124869228085e-03, 6.313672448964684214e-03, 6.306138882929264618e-03, 6.298595439475135685e-03, 6.291042131330183869e-03, 6.283478971237445830e-03, 6.275905971955384258e-03, 6.268323146258013637e-03, 6.260730506934495190e-03, 6.253128066789328567e-03, 6.245515838642284184e-03, 6.237893835328516857e-03, 6.230262069698557989e-03, 6.222620554617671121e-03, 6.214969302966849400e-03, 6.207308327642031484e-03, 6.199637641554262869e-03, 6.191957257629983856e-03, 6.184267188810435405e-03, 6.176567448052388588e-03, 6.168858048327088145e-03, 6.161139002621412140e-03, 6.153410323936884911e-03, 6.145672025290366616e-03, 6.137924119713440881e-03, 6.130166620252694085e-03, 6.122399539969849806e-03, 6.114622891941387181e-03, 6.106836689258706569e-03, 6.099040945028053225e-03, 6.091235672370732407e-03, 6.083420884422691306e-03, 6.075596594334631805e-03, 6.067762815272373031e-03, 6.059919560416173953e-03, 6.052066842961201752e-03, 6.044204676117207430e-03, 6.036333073108936936e-03, 6.028452047175537898e-03, 6.020561611570832833e-03, 6.012661779563557678e-03, 6.004752564436684377e-03, 5.996833979488219724e-03, 5.988906038030157586e-03, 5.980968753389535354e-03, 5.973022138907843268e-03, 5.965066207940898646e-03, 5.957100973859106099e-03, 5.949126450047198186e-03, 5.941142649904652615e-03, 5.933149586845049527e-03, 5.925147274296439261e-03, 5.917135725701411740e-03, 5.909114954516716568e-03, 5.901084974213474665e-03, 5.893045798277024745e-03, 5.884997440207271995e-03, 5.876939913518080920e-03, 5.868873231737584129e-03, 5.860797408408366209e-03, 5.852712457086843567e-03, 5.844618391344067604e-03, 5.836515224764596277e-03, 5.828402970947724020e-03, 5.820281643506401009e-03, 5.812151256068032873e-03, 5.804011822273773789e-03, 5.795863355778830932e-03, 5.787705870252769780e-03, 5.779539379378502775e-03, 5.771363896853552201e-03, 5.763179436388901795e-03, 5.754986011709849365e-03, 5.746783636555269532e-03, 5.738572324677933788e-03, 5.730352089844742945e-03, 5.722122945836096569e-03, 5.713884906446357013e-03, 5.705637985483493803e-03, 5.697382196769482619e-03, 5.689117554140088462e-03, 5.680844071444245483e-03, 5.672561762545183690e-03, 5.664270641319384646e-03, 5.655970721657282291e-03, 5.647662017462717378e-03, 5.639344542653055431e-03, 5.631018311159636039e-03, 5.622683336926674776e-03, 5.614339633912597202e-03, 5.605987216088800275e-03, 5.597626097440596034e-03, 5.589256291966427509e-03, 5.580877813678168826e-03, 5.572490676601401030e-03, 5.564094894774791050e-03, 5.555690482250429975e-03, 5.547277453093716823e-03, 5.538855821383597069e-03, 5.530425601212017941e-03, 5.521986806684204240e-03, 5.513539451918920281e-03, 5.505083551047843665e-03, 5.496619118215926095e-03, 5.488146167581234650e-03, 5.479664713315233679e-03, 5.471174769602240098e-03, 5.462676350639660179e-03, 5.454169470638287054e-03, 5.445654143821550448e-03, 5.437130384426404860e-03, 5.428598206702134332e-03, 5.420057624911581509e-03, 5.411508653330439865e-03, 5.402951306247157429e-03, 5.394385597963185716e-03, 5.385811542792746411e-03, 5.377229155063236420e-03, 5.368638449114600773e-03, 5.360039439299558138e-03, 5.351432139983965108e-03, 5.342816565546098899e-03, 5.334192730377130924e-03, 5.325560648880795465e-03, 5.316920335473849374e-03, 5.308271804585432824e-03, 5.299615070657298296e-03, 5.290950148144141045e-03, 5.282277051512856633e-03, 5.273595795243378806e-03, 5.264906393827541511e-03, 5.256208861770383413e-03, 5.247503213588947460e-03, 5.238789463813120495e-03, 5.230067626984985334e-03, 5.221337717659032401e-03, 5.212599750402469381e-03, 5.203853739794560285e-03, 5.195099700427066938e-03, 5.186337646903938468e-03, 5.177567593841737176e-03, 5.168789555869040056e-03, 5.160003547626651303e-03, 5.151209583767926703e-03, 5.142407678958123979e-03, 5.133597847874685552e-03, 5.124780105207505689e-03, 5.115954465658240947e-03, 5.107120943941144582e-03, 5.098279554781859173e-03, 5.089430312918769711e-03, 5.080573233101839600e-03, 5.071708330093422507e-03, 5.062835618667555458e-03, 5.053955113610262423e-03, 5.045066829719787628e-03, 5.036170781805982335e-03, 5.027266984690732451e-03, 5.018355453207661021e-03, 5.009436202202519409e-03, 5.000509246532587951e-03, 4.991574601066966523e-03, 4.982632280686778367e-03, 4.973682300284606311e-03, 4.964724674764871802e-03, 4.955759419043574698e-03, 4.946786548048675777e-03, 4.937806076719481775e-03, 4.928818020006909065e-03, 4.919822392873814121e-03, 4.910819210294183404e-03, 4.901808487254038019e-03, 4.892790238750251500e-03, 4.883764479791864732e-03, 4.874731225399008688e-03, 4.865690490603241831e-03, 4.856642290447866703e-03, 4.847586639987146694e-03, 4.838523554287257541e-03, 4.829453048424975012e-03, 4.820375137489034921e-03, 4.811289836579331694e-03, 4.802197160806848976e-03, 4.793097125293917238e-03, 4.783989745173987396e-03, 4.774875035592002041e-03, 4.765753011703750125e-03, 4.756623688676200022e-03, 4.747487081687735457e-03, 4.738343205927409568e-03, 4.729192076595858246e-03, 4.720033708904071944e-03, 4.710868118074721875e-03, 4.701695319341133057e-03, 4.692515327947539318e-03, 4.683328159149456257e-03, 4.674133828212878941e-03, 4.664932350415250742e-03, 4.655723741044122399e-03, 4.646508015398622196e-03, 4.637285188788159256e-03, 4.628055276533401055e-03, 4.618818293965406066e-03, 4.609574256426010597e-03, 4.600323179268049970e-03, 4.591065077854755705e-03, 4.581799967560138027e-03, 4.572527863768716117e-03, 4.563248781875821683e-03, 4.553962737287528713e-03, 4.544669745419785238e-03, 4.535369821699834943e-03, 4.526062981565028877e-03, 4.516749240463173269e-03, 4.507428613852847848e-03, 4.498101117202693740e-03, 4.488766765992217508e-03, 4.479425575710607212e-03, 4.470077561858163545e-03, 4.460722739944945024e-03, 4.451361125491761113e-03, 4.441992734029402874e-03, 4.432617581098889301e-03, 4.423235682251783901e-03, 4.413847053049551120e-03, 4.404451709063917156e-03, 4.395049665876671341e-03, 4.385640939080049511e-03, 4.376225544276053127e-03, 4.366803497076758925e-03, 4.357374813104610348e-03, 4.347939507991765290e-03, 4.338497597380466461e-03, 4.329049096922833219e-03, 4.319594022281255351e-03, 4.310132389127709594e-03, 4.300664213144037192e-03, 4.291189510022324662e-03, 4.281708295464029500e-03, 4.272220585180958562e-03, 4.262726394893980898e-03, 4.253225740334476250e-03, 4.243718637242994973e-03, 4.234205101370254638e-03, 4.224685148476325577e-03, 4.215158794330930991e-03, 4.205626054713770476e-03, 4.196086945413800978e-03, 4.186541482229566395e-03, 4.176989680969498547e-03, 4.167431557451224157e-03, 4.157867127501970773e-03, 4.148296406958369015e-03, 4.138719411666775226e-03, 4.129136157482674735e-03, 4.119546660270945529e-03, 4.109950935906149690e-03, 4.100349000271783992e-03, 4.090740869261170684e-03, 4.081126558776191141e-03, 4.071506084728753437e-03, 4.061879463039449675e-03, 4.052246709638517019e-03, 4.042607840465061407e-03, 4.032962871467345514e-03, 4.023311818603212027e-03, 4.013654697838841580e-03, 4.003991525150255894e-03, 3.994322316521981171e-03, 3.984647087948032552e-03, 3.974965855431058896e-03, 3.965278634982739164e-03, 3.955585442623977578e-03, 3.945886294384307741e-03, 3.936181206302248256e-03, 3.926470194425104102e-03, 3.916753274809208624e-03, 3.907030463519847209e-03, 3.897301776630422883e-03, 3.887567230223896129e-03, 3.877826840391388006e-03, 3.868080623233168935e-03, 3.858328594857883716e-03, 3.848570771382825179e-03, 3.838807168934360060e-03, 3.829037803646695177e-03, 3.819262691663360618e-03, 3.809481849135929951e-03, 3.799695292224894525e-03, 3.789903037098938353e-03, 3.780105099935220439e-03, 3.770301496919676622e-03, 3.760492244246313540e-03, 3.750677358117646652e-03, 3.740856854744460842e-03, 3.731030750346181653e-03, 3.721199061150241242e-03, 3.711361803392341195e-03, 3.701518993316776050e-03, 3.691670647175732470e-03, 3.681816781229738100e-03, 3.671957411747351057e-03, 3.662092555005637406e-03, 3.652222227289444751e-03, 3.642346444891719250e-03, 3.632465224113807026e-03, 3.622578581264671808e-03, 3.612686532661808260e-03, 3.602789094629969997e-03, 3.592886283502513128e-03, 3.582978115620614329e-03, 3.573064607333157217e-03, 3.563145774996999936e-03, 3.553221634976758310e-03, 3.543292203645196595e-03, 3.533357497382552236e-03, 3.523417532576836406e-03, 3.513472325624146693e-03, 3.503521892927958462e-03, 3.493566250899557673e-03, 3.483605415957781101e-03, 3.473639404529429639e-03, 3.463668233048613869e-03, 3.453691917956983482e-03, 3.443710475704122361e-03, 3.433723922746666473e-03, 3.423732275549341668e-03, 3.413735550583536869e-03, 3.403733764328906088e-03, 3.393726933271946390e-03, 3.383715073907005762e-03, 3.373698202735452619e-03, 3.363676336266008000e-03, 3.353649491015050013e-03, 3.343617683505880917e-03, 3.333580930269198529e-03, 3.323539247842805227e-03, 3.313492652772065481e-03, 3.303441161609162961e-03, 3.293384790913447043e-03, 3.283323557251713841e-03, 3.273257477197524020e-03, 3.263186567331514184e-03, 3.253110844241697414e-03, 3.243030324522642310e-03, 3.232945024776483905e-03, 3.222854961611505090e-03, 3.212760151643730393e-03, 3.202660611495516084e-03, 3.192556357796549806e-03, 3.182447407183034826e-03, 3.172333776297998377e-03, 3.162215481791580060e-03, 3.152092540320394331e-03, 3.141964968547850991e-03, 3.131832783144017709e-03, 3.121696000785956129e-03, 3.111554638157036645e-03, 3.101408711947303137e-03, 3.091258238853700647e-03, 3.081103235579438302e-03, 3.070943718834368355e-03, 3.060779705334769341e-03, 3.050611211803745931e-03, 3.040438254970524203e-03, 3.030260851570781237e-03, 3.020079018346926575e-03, 3.009892772047335907e-03, 2.999702129427273510e-03, 2.989507107247550439e-03, 2.979307722276080574e-03, 2.969103991286594756e-03, 2.958895931059065364e-03, 2.948683558380028966e-03, 2.938466890041764937e-03, 2.928245942843281206e-03, 2.918020733588910873e-03, 2.907791279089804500e-03, 2.897557596163065352e-03, 2.887319701631627534e-03, 2.877077612324562168e-03, 2.866831345076825861e-03, 2.856580916729685709e-03, 2.846326344130016301e-03, 2.836067644130603731e-03, 2.825804833590465654e-03, 2.815537929374022086e-03, 2.805266948352100678e-03, 2.794991907400528556e-03, 2.784712823401718721e-03, 2.774429713243364674e-03, 2.764142593818892744e-03, 2.753851482027763493e-03, 2.743556394774641655e-03, 2.733257348970405311e-03, 2.722954361530743363e-03, 2.712647449377743238e-03, 2.702336629438449340e-03, 2.692021918645909513e-03, 2.681703333938321564e-03, 2.671380892259357220e-03, 2.661054610558483049e-03, 2.650724505790228846e-03, 2.640390594914633453e-03, 2.630052894896980648e-03, 2.619711422708112698e-03, 2.609366195324304590e-03, 2.599017229726406208e-03, 2.588664542901330731e-03, 2.578308151840750552e-03, 2.567948073541532691e-03, 2.557584325006062326e-03, 2.547216923241387137e-03, 2.536845885260248165e-03, 2.526471228079675124e-03, 2.516092968722542875e-03, 2.505711124216191028e-03, 2.495325711593404053e-03, 2.484936747891612445e-03, 2.474544250153159434e-03, 2.464148235425686964e-03, 2.453748720761344659e-03, 2.443345723217280312e-03, 2.432939259855352795e-03, 2.422529347742562265e-03, 2.412116003950343264e-03, 2.401699245554888684e-03, 2.391279089637441627e-03, 2.380855553283605860e-03, 2.370428653583745229e-03, 2.359998407632767255e-03, 2.349564832530512577e-03, 2.339127945381069742e-03, 2.328687763293077473e-03, 2.318244303380046466e-03, 2.307797582759508939e-03, 2.297347618554053828e-03, 2.286894427889905618e-03, 2.276438027898495999e-03, 2.265978435715074353e-03, 2.255515668479706956e-03, 2.245049743336432167e-03, 2.234580677433596532e-03, 2.224108487924177004e-03, 2.213633191965016372e-03, 2.203154806717200990e-03, 2.192673349346336599e-03, 2.182188837021855309e-03, 2.171701286917419350e-03, 2.161210716210697734e-03, 2.150717142083763064e-03, 2.140220581722401122e-03, 2.129721052316407934e-03, 2.119218571059929349e-03, 2.108713155150595403e-03, 2.098204821790573306e-03, 2.087693588185103328e-03, 2.077179471544123805e-03, 2.066662489080843892e-03, 2.056142658012761418e-03, 2.045619995560821539e-03, 2.035094518949727253e-03, 2.024566245408390436e-03, 2.014035192168614746e-03, 2.003501376466715854e-03, 1.992964815542054308e-03, 1.982425526638098914e-03, 1.971883527001566314e-03, 1.961338833882731499e-03, 1.950791464535779314e-03, 1.940241436218036837e-03, 1.929688766190436333e-03, 1.919133471717265893e-03, 1.908575570066449803e-03, 1.898015078509454655e-03, 1.887452014320395747e-03, 1.876886394777560387e-03, 1.866318237161965904e-03, 1.855747558758386821e-03, 1.845174376854501370e-03, 1.834598708741216758e-03, 1.824020571713120186e-03, 1.813439983067142687e-03, 1.802856960104181521e-03, 1.792271520127671413e-03, 1.781683680444604142e-03, 1.771093458364680906e-03, 1.760500871200629562e-03, 1.749905936268541596e-03, 1.739308670887138985e-03, 1.728709092378182075e-03, 1.718107218066269436e-03, 1.707503065279222104e-03, 1.696896651347372777e-03, 1.686287993603895414e-03, 1.675677109385118133e-03, 1.665064016029796368e-03, 1.654448730879560852e-03, 1.643831271278631831e-03, 1.633211654574288517e-03, 1.622589898116114267e-03, 1.611966019256336159e-03, 1.601340035350139407e-03, 1.590711963754816482e-03, 1.580081821830806857e-03, 1.569449626940244398e-03, 1.558815396448466574e-03, 1.548179147723158363e-03, 1.537540898134210233e-03, 1.526900665054044259e-03, 1.516258465857339612e-03, 1.505614317921487484e-03, 1.494968238625849280e-03, 1.484320245352083179e-03, 1.473670355484472212e-03, 1.463018586409183322e-03, 1.452364955514718605e-03, 1.441709480191638625e-03, 1.431052177833019075e-03, 1.420393065833705287e-03, 1.409732161590640520e-03, 1.399069482503204672e-03, 1.388405045972329784e-03, 1.377738869401561039e-03, 1.367070970195606756e-03, 1.356401365761946689e-03, 1.345730073509409990e-03, 1.335057110849197396e-03, 1.324382495194018419e-03, 1.313706243958436340e-03, 1.303028374559179157e-03, 1.292348904414407753e-03, 1.281667850944159109e-03, 1.270985231570085890e-03, 1.260301063715893368e-03, 1.249615364806606725e-03, 1.238928152268892191e-03, 1.228239443531398568e-03, 1.217549256023996987e-03, 1.206857607178241478e-03, 1.196164514427096185e-03, 1.185469995205267781e-03, 1.174774066949063221e-03, 1.164076747095507854e-03, 1.153378053083891925e-03, 1.142678002354287825e-03, 1.131976612348620194e-03, 1.121273900509774058e-03, 1.110569884281948716e-03, 1.099864581110976056e-03, 1.089158008443573324e-03, 1.078450183727797411e-03, 1.067741124412783984e-03, 1.057030847949180525e-03, 1.046319371788414273e-03, 1.035606713383018136e-03, 1.024892890186962892e-03, 1.014177919654904751e-03, 1.003461819242642021e-03, 9.927446064068512141e-04, 9.820262986055213784e-04, 9.713069132972291988e-04, 9.605864679414464775e-04, 9.498649799988926083e-04, 9.391424669306562643e-04, 9.284189461992429539e-04, 9.176944352671164437e-04, 9.069689515983423008e-04, 8.962425126572436986e-04, 8.855151359088558058e-04, 8.747868388192468194e-04, 8.640576388546659979e-04, 8.533275534825744127e-04, 8.425966001701971041e-04, 8.318647963860399891e-04, 8.211321595990305226e-04, 8.103987072783617887e-04, 7.996644568938315314e-04, 7.889294259155712119e-04, 7.781936318144912906e-04, 7.674570920615435363e-04, 7.567198241280465032e-04, 7.459818454860132854e-04, 7.352431736072980329e-04, 7.245038259646241008e-04, 7.137638200301383738e-04, 7.030231732770528567e-04, 6.922819031782929998e-04, 6.815400272069559911e-04, 6.707975628366367755e-04, 6.600545275405686084e-04, 6.493109387926594440e-04, 6.385668140660431162e-04, 6.278221708347125809e-04, 6.170770265720625309e-04, 6.063313987519374946e-04, 5.955853048477653417e-04, 5.848387623328859045e-04, 5.740917886808841533e-04, 5.633444013648428563e-04, 5.525966178577943659e-04, 5.418484556324498942e-04, 5.310999321616499983e-04, 5.203510649176239624e-04, 5.096018713723135399e-04, 4.988523689977051537e-04, 4.881025752650858620e-04, 4.773525076453756662e-04, 4.666021836094481098e-04, 4.558516206272795589e-04, 4.451008361689853744e-04, 4.343498477033586242e-04, 4.235986726995213773e-04, 4.128473286254560437e-04, 4.020958329490552613e-04, 3.913442031372583291e-04, 3.805924566563739200e-04, 3.698406109724225801e-04, 3.590886835503799015e-04, 3.483366918546341637e-04, 3.375846533487138201e-04, 3.268325854957400433e-04, 3.160805057576800896e-04, 3.053284315956778178e-04, 2.945763804703856723e-04, 2.838243698412151197e-04, 2.730724171667915255e-04, 2.623205399046812610e-04, 2.515687555118483690e-04, 2.408170814439020461e-04, 2.300655351554312003e-04, 2.193141341003341572e-04, 2.085628957309521112e-04, 1.978118374991188230e-04, 1.870609768546953474e-04, 1.763103312472192403e-04, 1.655599181244356548e-04, 1.548097549333521611e-04, 1.440598591193681052e-04, 1.333102481266065103e-04, 1.225609393983667856e-04, 1.118119503757764797e-04, 1.010632984993214972e-04, 9.031500120797912937e-05, 7.956707593906965420e-05, 6.881954012858795323e-05, 5.807241121093581520e-05, 4.732570661937181896e-05, 3.657944378526580220e-05, 2.583364013842890614e-05, 1.508831310744521431e-05, 4.343480118804844021e-06, -6.400841402045978462e-06, -1.714463403217100063e-05, -2.788788034949459612e-05, -3.863056293426777118e-05, -4.937266436801809969e-05, -6.011416723441684681e-05, -7.085505411894688467e-05, -8.159530760845275525e-05, -9.233491029248598906e-05, -1.030738447616562912e-04, -1.138120936090969692e-04, -1.245496394294159405e-04, -1.352864648195608850e-04, -1.460225523784893225e-04, -1.567578847068370497e-04, -1.674924444076649258e-04, -1.782262140860075184e-04, -1.889591763491411188e-04, -1.996913138062536563e-04, -2.104226090685901173e-04, -2.211530447503219394e-04, -2.318826034670148982e-04, -2.426112678370978765e-04, -2.533390204808108896e-04, -2.640658440210719594e-04, -2.747917210831458631e-04, -2.855166342941937020e-04, -2.962405662846180707e-04, -3.069634996864143654e-04, -3.176854171346361368e-04, -3.284063012663452036e-04, -3.391261347214784175e-04, -3.498449001425154637e-04, -3.605625801741485590e-04, -3.712791574640303340e-04, -3.819946146623185768e-04, -3.927089344219484766e-04, -4.034220993981790467e-04, -4.141340922493412795e-04, -4.248448956365051326e-04, -4.355544922231471675e-04, -4.462628646759037986e-04, -4.569699956641119711e-04, -4.676758678600817292e-04, -4.783804639386417192e-04, -4.890837665778892396e-04, -4.997857584588585303e-04, -5.104864222651865667e-04, -5.211857406839812351e-04, -5.318836964047723125e-04, -5.425802721209753562e-04, -5.532754505282415488e-04, -5.639692143259270084e-04, -5.746615462160398115e-04, -5.853524289041055120e-04, -5.960418450988380851e-04, -6.067297775118059939e-04, -6.174162088581844083e-04, -6.281011218564123803e-04, -6.387844992278771247e-04, -6.494663236976474813e-04, -6.601465779940255980e-04, -6.708252448488197153e-04, -6.815023069968869588e-04, -6.921777471768862091e-04, -7.028515481309371201e-04, -7.135236926042973519e-04, -7.241941633462233192e-04, -7.348629431089284897e-04, -7.455300146490350223e-04, -7.561953607259368389e-04, -7.668589641032564665e-04, -7.775208075478012761e-04, -7.881808738304282424e-04, -7.988391457257048049e-04, -8.094956060115918476e-04, -8.201502374701735839e-04, -8.308030228872234418e-04, -8.414539450524546231e-04, -8.521029867590793755e-04, -8.627501308045540558e-04, -8.733953599902471478e-04, -8.840386571211012075e-04, -8.946800050063880103e-04, -9.053193864592549208e-04, -9.159567842969881368e-04, -9.265921813406882961e-04, -9.372255604154121822e-04, -9.478569043510329294e-04, -9.584861959807312480e-04, -9.691134181424368704e-04, -9.797385536777906447e-04, -9.903615854330142815e-04, -1.000982496258560808e-03, -1.011601269008810013e-03, -1.022217886542789878e-03, -1.032832331723733356e-03, -1.043444587419354187e-03, -1.054054636501387636e-03, -1.064662461846328616e-03, -1.075268046335119869e-03, -1.085871372852799388e-03, -1.096472424289265642e-03, -1.107071183538810939e-03, -1.117667633500391824e-03, -1.128261757077189545e-03, -1.138853537177334082e-03, -1.149442956713596668e-03, -1.160029998603042843e-03, -1.170614645767893095e-03, -1.181196881134500025e-03, -1.191776687634771466e-03, -1.202354048204561966e-03, -1.212928945784991610e-03, -1.223501363322000192e-03, -1.234071283766023696e-03, -1.244638690072853628e-03, -1.255203565202586647e-03, -1.265765892121082379e-03, -1.276325653798451604e-03, -1.286882833209904761e-03, -1.297437413335907628e-03, -1.307989377161850866e-03, -1.318538707678306972e-03, -1.329085387880588574e-03, -1.339629400769494581e-03, -1.350170729350970390e-03, -1.360709356635783499e-03, -1.371245265640380672e-03, -1.381778439385853612e-03, -1.392308860899376180e-03, -1.402836513212584162e-03, -1.413361379362907755e-03, -1.423883442393106659e-03, -1.434402685350968237e-03, -1.444919091290140616e-03, -1.455432643269109197e-03, -1.465943324352634745e-03, -1.476451117610127735e-03, -1.486956006117101398e-03, -1.497457972954128287e-03, -1.507957001207688554e-03, -1.518453073969855752e-03, -1.528946174337958343e-03, -1.539436285415328020e-03, -1.549923390310841732e-03, -1.560407472139186454e-03, -1.570888514020433741e-03, -1.581366499080736872e-03, -1.591841410452045488e-03, -1.602313231271752791e-03, -1.612781944683436709e-03, -1.623247533836526604e-03, -1.633709981886002742e-03, -1.644169271993211169e-03, -1.654625387324851942e-03, -1.665078311054428483e-03, -1.675528026360597863e-03, -1.685974516428638591e-03, -1.696417764449400459e-03, -1.706857753620160843e-03, -1.717294467144298573e-03, -1.727727888230976916e-03, -1.738158000095851993e-03, -1.748584785960662948e-03, -1.759008229053462668e-03, -1.769428312608190609e-03, -1.779845019865410483e-03, -1.790258334071961367e-03, -1.800668238480670168e-03, -1.811074716351032069e-03, -1.821477750948820003e-03, -1.831877325546307561e-03, -1.842273423421848322e-03, -1.852666027860596634e-03, -1.863055122154186035e-03, -1.873440689600407898e-03, -1.883822713504041714e-03, -1.894201177175858057e-03, -1.904576063934012220e-03, -1.914947357102474287e-03, -1.925315040012429927e-03, -1.935679096001245410e-03, -1.946039508413365763e-03, -1.956396260599917516e-03, -1.966749335918338126e-03, -1.977098717733637764e-03, -1.987444389416925458e-03, -1.997786334346262141e-03, -2.008124535906787283e-03, -2.018458977490406644e-03, -2.028789642496048578e-03, -2.039116514329220378e-03, -2.049439576402742932e-03, -2.059758812136422423e-03, -2.070074204956725075e-03, -2.080385738297631064e-03, -2.090693395599590217e-03, -2.100997160310967907e-03, -2.111297015886432621e-03, -2.121592945788375838e-03, -2.131884933485911522e-03, -2.142172962455672364e-03, -2.152457016181540464e-03, -2.162737078154173317e-03, -2.173013131872321337e-03, -2.183285160841223239e-03, -2.193553148574038051e-03, -2.203817078590806014e-03, -2.214076934419302936e-03, -2.224332699594715797e-03, -2.234584357659326163e-03, -2.244831892163210146e-03, -2.255075286663827706e-03, -2.265314524726265086e-03, -2.275549589922923419e-03, -2.285780465833659684e-03, -2.296007136046601584e-03, -2.306229584156702095e-03, -2.316447793767136779e-03, -2.326661748488294181e-03, -2.336871431938594180e-03, -2.347076827744200896e-03, -2.357277919538568189e-03, -2.367474690963702975e-03, -2.377667125668657313e-03, -2.387855207310849836e-03, -2.398038919555113384e-03, -2.408218246074511192e-03, -2.418393170550002524e-03, -2.428563676670145600e-03, -2.438729748131799289e-03, -2.448891368639703314e-03, -2.459048521906712862e-03, -2.469201191653379659e-03, -2.479349361608671441e-03, -2.489493015509650162e-03, -2.499632137101130691e-03, -2.509766710136443653e-03, -2.519896718376954045e-03, -2.530022145592337058e-03, -2.540142975560154368e-03, -2.550259192066549330e-03, -2.560370778905941662e-03, -2.570477719880709562e-03, -2.580579998802008928e-03, -2.590677599488784566e-03, -2.600770505769141056e-03, -2.610858701478792777e-03, -2.620942170462453851e-03, -2.631020896572852392e-03, -2.641094863671505054e-03, -2.651164055628445985e-03, -2.661228456321927151e-03, -2.671288049639060618e-03, -2.681342819475558779e-03, -2.691392749735402150e-03, -2.701437824331535866e-03, -2.711478027185475464e-03, -2.721513342227504639e-03, -2.731543753396297076e-03, -2.741569244639599934e-03, -2.751589799913931565e-03, -2.761605403184228067e-03, -2.771616038424736667e-03, -2.781621689617945828e-03, -2.791622340756005991e-03, -2.801617975839178730e-03, -2.811608578877197208e-03, -2.821594133888285626e-03, -2.831574624899970642e-03, -2.841550035948788196e-03, -2.851520351079932236e-03, -2.861485554347986768e-03, -2.871445629816497380e-03, -2.881400561558217568e-03, -2.891350333654673765e-03, -2.901294930196882636e-03, -2.911234335285023227e-03, -2.921168533028142920e-03, -2.931097507544848293e-03, -2.941021242962875339e-03, -2.950939723419335366e-03, -2.960852933060435701e-03, -2.970760856041581178e-03, -2.980663476528180780e-03, -2.990560778694267233e-03, -3.000452746723806293e-03, -3.010339364809756085e-03, -3.020220617154831689e-03, -3.030096487971253600e-03, -3.039966961480395150e-03, -3.049832021913485066e-03, -3.059691653511197214e-03, -3.069545840523876541e-03, -3.079394567211156571e-03, -3.089237817842612529e-03, -3.099075576697480315e-03, -3.108907828064321702e-03, -3.118734556241753789e-03, -3.128555745537978886e-03, -3.138371380271099374e-03, -3.148181444768628507e-03, -3.157985923368222900e-03, -3.167784800417365945e-03, -3.177578060273052521e-03, -3.187365687302603015e-03, -3.197147665882676699e-03, -3.206923980400644327e-03, -3.216694615253038163e-03, -3.226459554846814858e-03, -3.236218783598925671e-03, -3.245972285936025038e-03, -3.255720046295242087e-03, -3.265462049123239990e-03, -3.275198278877550825e-03, -3.284928720025161782e-03, -3.294653357043331350e-03, -3.304372174419688626e-03, -3.314085156651980051e-03, -3.323792288248264126e-03, -3.333493553726505059e-03, -3.343188937615307853e-03, -3.352878424453534061e-03, -3.362561998790045050e-03, -3.372239645184509083e-03, -3.381911348206389535e-03, -3.391577092436334415e-03, -3.401236862464608601e-03, -3.410890642892394457e-03, -3.420538418331328222e-03, -3.430180173403211616e-03, -3.439815892740786391e-03, -3.449445560986819266e-03, -3.459069162795381288e-03, -3.468686682830381552e-03, -3.478298105766875186e-03, -3.487903416290141778e-03, -3.497502599096433042e-03, -3.507095638892703503e-03, -3.516682520396279595e-03, -3.526263228335560496e-03, -3.535837747449571428e-03, -3.545406062488275483e-03, -3.554968158212090928e-03, -3.564524019392584231e-03, -3.574073630812211154e-03, -3.583616977263956362e-03, -3.593154043552040326e-03, -3.602684814491522933e-03, -3.612209274908506022e-03, -3.621727409639861894e-03, -3.631239203533356483e-03, -3.640744641448426071e-03, -3.650243708254807297e-03, -3.659736388833846003e-03, -3.669222668077558747e-03, -3.678702530889411265e-03, -3.688175962184001445e-03, -3.697642946886785242e-03, -3.707103469934745852e-03, -3.716557516275938774e-03, -3.726005070869819677e-03, -3.735446118686760412e-03, -3.744880644708737695e-03, -3.754308633929061192e-03, -3.763730071352039581e-03, -3.773144941993686590e-03, -3.782553230881259554e-03, -3.791954923053559526e-03, -3.801350003560493261e-03, -3.810738457463739778e-03, -3.820120269836456764e-03, -3.829495425762997375e-03, -3.838863910339659642e-03, -3.848225708673757087e-03, -3.857580805884914133e-03, -3.866929187103635389e-03, -3.876270837472561587e-03, -3.885605742145568399e-03, -3.894933886288481570e-03, -3.904255255078854011e-03, -3.913569833705541658e-03, -3.922877607369826269e-03, -3.932178561284166429e-03, -3.941472680672912683e-03, -3.950759950772400782e-03, -3.960040356830723564e-03, -3.969313884107933052e-03, -3.978580517875636262e-03, -3.987840243417650928e-03, -3.997093046029747895e-03, -4.006338911019305046e-03, -4.015577823706123484e-03, -4.024809769421433536e-03, -4.034034733509260853e-03, -4.043252701324917195e-03, -4.052463658236311016e-03, -4.061667589623028062e-03, -4.070864480877053881e-03, -4.080054317402544845e-03, -4.089237084615376244e-03, -4.098412767944339258e-03, -4.107581352829691584e-03, -4.116742824724468897e-03, -4.125897169093512527e-03, -4.135044371414255300e-03, -4.144184417176426626e-03, -4.153317291881776681e-03, -4.162442981044697440e-03, -4.171561470191855782e-03, -4.180672744862374765e-03, -4.189776790607542198e-03, -4.198873592991312839e-03, -4.207963137590161815e-03, -4.217045409992722059e-03, -4.226120395800502492e-03, -4.235188080627172447e-03, -4.244248450099234737e-03, -4.253301489855778467e-03, -4.262347185548045342e-03, -4.271385522840647452e-03, -4.280416487410098822e-03, -4.289440064946088704e-03, -4.298456241150589927e-03, -4.307465001738572732e-03, -4.316466332437765389e-03, -4.325460218988304642e-03, -4.334446647143446081e-03, -4.343425602669096636e-03, -4.352397071344128558e-03, -4.361361038959930131e-03, -4.370317491321054452e-03, -4.379266414244954025e-03, -4.388207793561684986e-03, -4.397141615114520327e-03, -4.406067864759614233e-03, -4.414986528366185090e-03, -4.423897591816134713e-03, -4.432801041004709279e-03, -4.441696861840194882e-03, -4.450585040243626965e-03, -4.459465562149533650e-03, -4.468338413505081388e-03, -4.477203580271230283e-03, -4.486061048421415703e-03, -4.494910803942742637e-03, -4.503752832835121803e-03, -4.512587121111961801e-03, -4.521413654799959214e-03, -4.530232419938735183e-03, -4.539043402581510213e-03, -4.547846588794812739e-03, -4.556641964658211114e-03, -4.565429516264912953e-03, -4.574209229721414721e-03, -4.582981091147695155e-03, -4.591745086676857907e-03, -4.600501202455759518e-03, -4.609249424644685893e-03, -4.617989739417148465e-03, -4.626722132960532988e-03, -4.635446591475266866e-03, -4.644163101176023919e-03, -4.652871648290340077e-03, -4.661572219059876253e-03, -4.670264799739477259e-03, -4.678949376597922073e-03, -4.687625935917654092e-03, -4.696294463994518317e-03, -4.704954947138344223e-03, -4.713607371672556313e-03, -4.722251723934471623e-03, -4.730887990274845224e-03, -4.739516157058524214e-03, -4.748136210664152812e-03, -4.756748137483952053e-03, -4.765351923924212446e-03, -4.773947556405078868e-03, -4.782535021360647710e-03, -4.791114305238733558e-03, -4.799685394501009700e-03, -4.808248275623687278e-03, -4.816802935096250668e-03, -4.825349359422701281e-03, -4.833887535120672853e-03, -4.842417448722110586e-03, -4.850939086773050843e-03, -4.859452435833306293e-03, -4.867957482477092146e-03, -4.876454213292661863e-03, -4.884942614882513585e-03, -4.893422673863011101e-03, -4.901894376865007473e-03, -4.910357710533578765e-03, -4.918812661527730001e-03, -4.927259216521017934e-03, -4.935697362201177212e-03, -4.944127085270328542e-03, -4.952548372444627416e-03, -4.960961210454869520e-03, -4.969365586046163748e-03, -4.977761485977757853e-03, -4.986148897023671631e-03, -4.994527805971858171e-03, -5.002898199625369600e-03, -5.011260064801082922e-03, -5.019613388330724374e-03, -5.027958157060532889e-03, -5.036294357850966928e-03, -5.044621977577413117e-03, -5.052941003129383934e-03, -5.061251421411595841e-03, -5.069553219342833907e-03, -5.077846383856590186e-03, -5.086130901901204232e-03, -5.094406760439589010e-03, -5.102673946449431258e-03, -5.110932446922855817e-03, -5.119182248866988548e-03, -5.127423339303711740e-03, -5.135655705269409101e-03, -5.143879333815596332e-03, -5.152094212008187339e-03, -5.160300326928506445e-03, -5.168497665672153879e-03, -5.176686215349919976e-03, -5.184865963087514559e-03, -5.193036896025261633e-03, -5.201199001318824490e-03, -5.209352266138313203e-03, -5.217496677669479846e-03, -5.225632223112428726e-03, -5.233758889682717068e-03, -5.241876664610581327e-03, -5.249985535141592045e-03, -5.258085488536399718e-03, -5.266176512070436418e-03, -5.274258593034548102e-03, -5.282331718734623385e-03, -5.290395876491791292e-03, -5.298451053642086461e-03, -5.306497237536972160e-03, -5.314534415543178091e-03, -5.322562575042381200e-03, -5.330581703431740842e-03, -5.338591788123644641e-03, -5.346592816545830788e-03, -5.354584776141182480e-03, -5.362567654367838069e-03, -5.370541438699780873e-03, -5.378506116625792269e-03, -5.386461675650430943e-03, -5.394408103293372829e-03, -5.402345387089934128e-03, -5.410273514590900439e-03, -5.418192473362270882e-03, -5.426102250985770717e-03, -5.434002835058560771e-03, -5.441894213193411781e-03, -5.449776373018373928e-03, -5.457649302177333683e-03, -5.465512988329747530e-03, -5.473367419150406039e-03, -5.481212582330020205e-03, -5.489048465574826799e-03, -5.496875056606791328e-03, -5.504692343163356504e-03, -5.512500312997871584e-03, -5.520298953879418900e-03, -5.528088253592571000e-03, -5.535868199937990855e-03, -5.543638780731677262e-03, -5.551399983806043839e-03, -5.559151797008732472e-03, -5.566894208203590835e-03, -5.574627205270001051e-03, -5.582350776103506794e-03, -5.590064908615488028e-03, -5.597769590732926820e-03, -5.605464810399332816e-03, -5.613150555573602658e-03, -5.620826814230724285e-03, -5.628493574361828101e-03, -5.636150823973969277e-03, -5.643798551090302082e-03, -5.651436743749758962e-03, -5.659065390007582234e-03, -5.666684477935115920e-03, -5.674293995619511706e-03, -5.681893931164401154e-03, -5.689484272689102930e-03, -5.697065008329705270e-03, -5.704636126237828259e-03, -5.712197614581751397e-03, -5.719749461545596547e-03, -5.727291655329981926e-03, -5.734824184151728933e-03, -5.742347036243627967e-03, -5.749860199855310987e-03, -5.757363663252134355e-03, -5.764857414716189309e-03, -5.772341442545550830e-03, -5.779815735054916886e-03, -5.787280280575313532e-03, -5.794735067453984749e-03, -5.802180084054759344e-03, -5.809615318757843649e-03, -5.817040759959953358e-03, -5.824456396074014289e-03, -5.831862215529708821e-03, -5.839258206773189665e-03, -5.846644358266890780e-03, -5.854020658490089422e-03, -5.861387095938297258e-03, -5.868743659123856239e-03, -5.876090336575674929e-03, -5.883427116838927523e-03, -5.890753988476038309e-03, -5.898070940065433532e-03, -5.905377960202638603e-03, -5.912675037499524368e-03, -5.919962160584899512e-03, -5.927239318104284178e-03, -5.934506498719680986e-03, -5.941763691110098916e-03, -5.949010883971172538e-03, -5.956248066015494211e-03, -5.963475225972120555e-03, -5.970692352587213432e-03, -5.977899434623777999e-03, -5.985096460861379954e-03, -5.992283420096755284e-03, -5.999460301143391336e-03, -6.006627092831808706e-03, -6.013783784009166591e-03, -6.020930363539837848e-03, -6.028066820305109756e-03, -6.035193143203040900e-03, -6.042309321148979853e-03, -6.049415343074879096e-03, -6.056511197930282073e-03, -6.063596874681228578e-03, -6.070672362311177635e-03, -6.077737649820397735e-03, -6.084792726226428278e-03, -6.091837580563970282e-03, -6.098872201884577605e-03, -6.105896579257214657e-03, -6.112910701767963230e-03, -6.119914558519899336e-03, -6.126908138633497397e-03, -6.133891431246365697e-03, -6.140864425513411183e-03, -6.147827110606566246e-03, -6.154779475715258831e-03, -6.161721510046199064e-03, -6.168653202823135527e-03, -6.175574543287441591e-03, -6.182485520697462295e-03, -6.189386124329392981e-03, -6.196276343476280965e-03, -6.203156167448904169e-03, -6.210025585575150095e-03, -6.216884587200541441e-03, -6.223733161688008858e-03, -6.230571298417735687e-03, -6.237398986787576899e-03, -6.244216216212765055e-03, -6.251022976126137561e-03, -6.257819255977762826e-03, -6.264605045235542222e-03, -6.271380333384828434e-03, -6.278145109928370826e-03, -6.284899364386688399e-03, -6.291643086297833871e-03, -6.298376265217517714e-03, -6.305098890718942480e-03, -6.311810952392858318e-03, -6.318512439848131094e-03, -6.325203342710771816e-03, -6.331883650624849091e-03, -6.338553353251826471e-03, -6.345212440271144443e-03, -6.351860901379926400e-03, -6.358498726292859810e-03, -6.365125904742602141e-03, -6.371742426479537133e-03, -6.378348281271904903e-03, -6.384943458905543469e-03, -6.391527949184334575e-03, -6.398101741930030222e-03, -6.404664826981962961e-03, -6.411217194197638310e-03, -6.417758833452312343e-03, -6.424289734639290067e-03, -6.430809887669502144e-03, -6.437319282472083425e-03, -6.443817908994136159e-03, -6.450305757200488870e-03, -6.456782817074231511e-03, -6.463249078616116125e-03, -6.469704531845414663e-03, -6.476149166798913712e-03, -6.482582973531759302e-03, -6.489005942117119508e-03, -6.495418062646055209e-03, -6.501819325227971118e-03, -6.508209719990084088e-03, -6.514589237078171648e-03, -6.520957866655663002e-03, -6.527315598904520275e-03, -6.533662424024576712e-03, -6.539998332234040618e-03, -6.546323313769344433e-03, -6.552637358884932234e-03, -6.558940457853616214e-03, -6.565232600966555004e-03, -6.571513778532856419e-03, -6.577783980880258334e-03, -6.584043198354380157e-03, -6.590291421319661308e-03, -6.596528640158357687e-03, -6.602754845271356990e-03, -6.608970027077854317e-03, -6.615174176015225539e-03, -6.621367282539487864e-03, -6.627549337124717839e-03, -6.633720330263869272e-03, -6.639880252467822604e-03, -6.646029094266223645e-03, -6.652166846206950153e-03, -6.658293498856506475e-03, -6.664409042799852682e-03, -6.670513468640279671e-03, -6.676606766999767378e-03, -6.682688928518742792e-03, -6.688759943856253422e-03, -6.694819803689662854e-03, -6.700868498715149488e-03, -6.706906019647396883e-03, -6.712932357219554731e-03, -6.718947502183537229e-03, -6.724951445309800165e-03, -6.730944177387540410e-03, -6.736925689224414031e-03, -6.742895971646736646e-03, -6.748855015499842513e-03, -6.754802811647330797e-03, -6.760739350971813229e-03, -6.766664624374359865e-03, -6.772578622774983945e-03, -6.778481337112405962e-03, -6.784372758343954792e-03, -6.790252877445872998e-03, -6.796121685413217955e-03, -6.801979173259795064e-03, -6.807825332018133460e-03, -6.813660152739691583e-03, -6.819483626494844165e-03, -6.825295744372586459e-03, -6.831096497480996545e-03, -6.836885876946945627e-03, -6.842663873916318348e-03, -6.848430479553626812e-03, -6.854185685042567429e-03, -6.859929481585750298e-03, -6.865661860404571708e-03, -6.871382812739579293e-03, -6.877092329850057438e-03, -6.882790403014651774e-03, -6.888477023530621517e-03, -6.894152182714498658e-03, -6.899815871901674239e-03, -6.905468082446716664e-03, -6.911108805723232065e-03, -6.916738033123679547e-03, -6.922355756060032117e-03, -6.927961965962976983e-03, -6.933556654282361370e-03, -6.939139812487299212e-03, -6.944711432065962115e-03, -6.950271504525712928e-03, -6.955820021392925337e-03, -6.961356974213283970e-03, -6.966882354551703731e-03, -6.972396153992078266e-03, -6.977898364137781299e-03, -6.983388976611088102e-03, -6.988867983053937034e-03, -6.994335375127105556e-03, -6.999791144510885896e-03, -7.005235282904677396e-03, -7.010667782027291822e-03, -7.016088633616824125e-03, -7.021497829430511060e-03, -7.026895361245271560e-03, -7.032281220856959059e-03, -7.037655400081066666e-03, -7.043017890752210214e-03, -7.048368684724603574e-03, -7.053707773871766354e-03, -7.059035150086478798e-03, -7.064350805281121790e-03, -7.069654731387420114e-03, -7.074946920356578635e-03, -7.080227364159088869e-03, -7.085496054785088080e-03, -7.090752984244179727e-03, -7.095998144565229641e-03, -7.101231527796890777e-03, -7.106453126007001263e-03, -7.111662931283334668e-03, -7.116860935732830656e-03, -7.122047131481988765e-03, -7.127221510677188461e-03, -7.132384065484001327e-03, -7.137534788087840712e-03, -7.142673670693473406e-03, -7.147800705525481947e-03, -7.152915884827990532e-03, -7.158019200864639865e-03, -7.163110645918833487e-03, -7.168190212293610274e-03, -7.173257892311679998e-03, -7.178313678315283684e-03, -7.183357562666507594e-03, -7.188389537747108017e-03, -7.193409595958404588e-03, -7.198417729721603812e-03, -7.203413931477544926e-03, -7.208398193686913272e-03, -7.213370508829946258e-03, -7.218330869406796788e-03, -7.223279267937436979e-03, -7.228215696961436121e-03, -7.233140149038352722e-03, -7.238052616747280010e-03, -7.242953092687551969e-03, -7.247841569477913269e-03, -7.252718039757248721e-03, -7.257582496184051581e-03, -7.262434931436826877e-03, -7.267275338214017680e-03, -7.272103709233671172e-03, -7.276920037234016307e-03, -7.281724314973110797e-03, -7.286516535228804679e-03, -7.291296690798981447e-03, -7.296064774501485189e-03, -7.300820779174094569e-03, -7.305564697674404862e-03, -7.310296522880168832e-03, -7.315016247689093767e-03, -7.319723865018716580e-03, -7.324419367806792383e-03, -7.329102749010822648e-03, -7.333774001608704858e-03, -7.338433118597982238e-03, -7.343080092996544586e-03, -7.347714917842060149e-03, -7.352337586192498643e-03, -7.356948091125818136e-03, -7.361546425739948565e-03, -7.366132583153097921e-03, -7.370706556503464277e-03, -7.375268338949459573e-03, -7.379817923669456346e-03, -7.384355303862082630e-03, -7.388880472746155170e-03, -7.393393423560466055e-03, -7.397894149564157411e-03, -7.402382644036431709e-03, -7.406858900276804165e-03, -7.411322911604820846e-03, -7.415774671360233009e-03, -7.420214172903256446e-03, -7.424641409614018105e-03, -7.429056374893125078e-03, -7.433459062161217913e-03, -7.437849464859334035e-03, -7.442227576448769838e-03, -7.446593390411000886e-03, -7.450946900247857989e-03, -7.455288099481445670e-03, -7.459616981654247983e-03, -7.463933540328863969e-03, -7.468237769088403172e-03, -7.472529661536254052e-03, -7.476809211296045823e-03, -7.481076412011903459e-03, -7.485331257348210900e-03, -7.489573740989808812e-03, -7.493803856641773412e-03, -7.498021598029687949e-03, -7.502226958899551636e-03, -7.506419933017600965e-03, -7.510600514170696559e-03, -7.514768696165880814e-03, -7.518924472830961631e-03, -7.523067838013827204e-03, -7.527198785583047100e-03, -7.531317309427638940e-03, -7.535423403456899261e-03, -7.539517061600868424e-03, -7.543598277809778103e-03, -7.547667046054708749e-03, -7.551723360326885286e-03, -7.555767214638348453e-03, -7.559798603021395356e-03, -7.563817519529012282e-03, -7.567823958234735048e-03, -7.571817913232517169e-03, -7.575799378637001341e-03, -7.579768348583371985e-03, -7.583724817227267649e-03, -7.587668778745073304e-03, -7.591600227333561261e-03, -7.595519157210415054e-03, -7.599425562613577184e-03, -7.603319437801811173e-03, -7.607200777054500332e-03, -7.611069574671506383e-03, -7.614925824973546760e-03, -7.618769522301714961e-03, -7.622600661018144076e-03, -7.626419235505220093e-03, -7.630225240166281855e-03, -7.634018669425204733e-03, -7.637799517726626131e-03, -7.641567779535887381e-03, -7.645323449338902767e-03, -7.649066521642476114e-03, -7.652796990974033639e-03, -7.656514851881800025e-03, -7.660220098934558165e-03, -7.663912726722049013e-03, -7.667592729854710507e-03, -7.671260102963623796e-03, -7.674914840700734417e-03, -7.678556937738751677e-03, -7.682186388771231923e-03, -7.685803188512366907e-03, -7.689407331697183275e-03, -7.692998813081695225e-03, -7.696577627442513329e-03, -7.700143769577180199e-03, -7.703697234303967523e-03, -7.707238016462092042e-03, -7.710766110911625344e-03, -7.714281512533332531e-03, -7.717784216228971463e-03, -7.721274216921125352e-03, -7.724751509553306854e-03, -7.728216089089754229e-03, -7.731667950515745333e-03, -7.735107088837395520e-03, -7.738533499081682795e-03, -7.741947176296557105e-03, -7.745348115550830179e-03, -7.748736311934296093e-03, -7.752111760557606375e-03, -7.755474456552364539e-03, -7.758824395071180734e-03, -7.762161571287493934e-03, -7.765485980395860771e-03, -7.768797617611585167e-03, -7.772096478171177172e-03, -7.775382557331933162e-03, -7.778655850372274971e-03, -7.781916352591469743e-03, -7.785164059309898806e-03, -7.788398965868923232e-03, -7.791621067630789300e-03, -7.794830359979024875e-03, -7.798026838317909451e-03, -7.801210498072863597e-03, -7.804381334690356151e-03, -7.807539343637851306e-03, -7.810684520403959538e-03, -7.813816860498201677e-03, -7.816936359451250038e-03, -7.820043012814859029e-03, -7.823136816161764540e-03, -7.826217765085888636e-03, -7.829285855202105376e-03, -7.832341082146577343e-03, -7.835383441576354926e-03, -7.838412929169763163e-03, -7.841429540626066938e-03, -7.844433271665781499e-03, -7.847424118030535412e-03, -7.850402075482943928e-03, -7.853367139807004502e-03, -7.856319306807604125e-03, -7.859258572310914848e-03, -7.862184932164176937e-03, -7.865098382235879287e-03, -7.867998918415620643e-03, -7.870886536614140824e-03, -7.873761232763386644e-03, -7.876623002816498034e-03, -7.879471842747795898e-03, -7.882307748552714460e-03, -7.885130716248000757e-03, -7.887940741871542899e-03, -7.890737821482382217e-03, -7.893521951160890199e-03, -7.896293127008485735e-03, -7.899051345148051448e-03, -7.901796601723487870e-03, -7.904528892899963244e-03, -7.907248214864001992e-03, -7.909954563823240123e-03, -7.912647936006647273e-03, -7.915328327664328950e-03, -7.917995735067805824e-03, -7.920650154509765659e-03, -7.923291582304174338e-03, -7.925920014786261986e-03, -7.928535448312599293e-03, -7.931137879260989967e-03, -7.933727304030484609e-03, -7.936303719041507346e-03, -7.938867120735758690e-03, -7.941417505576187780e-03, -7.943954870047106875e-03, -7.946479210654121966e-03, -7.948990523924207366e-03, -7.951488806405520096e-03, -7.953974054667673974e-03, -7.956446265301602566e-03, -7.958905434919467253e-03, -7.961351560154900087e-03, -7.963784637662752255e-03, -7.966204664119371642e-03, -7.968611636222304451e-03, -7.971005550690586638e-03, -7.973386404264495853e-03, -7.975754193705742248e-03, -7.978108915797406039e-03, -7.980450567343913212e-03, -7.982779145171091037e-03, -7.985094646126180210e-03, -7.987397067077680463e-03, -7.989686404915626386e-03, -7.991962656551386199e-03, -7.994225818917732873e-03, -7.996475888968778215e-03, -7.998712863680158477e-03, -8.000936740048850485e-03, -8.003147515093249689e-03, -8.005345185853138951e-03, -8.007529749389770066e-03, -8.009701202785849891e-03, -8.011859543145406770e-03, -8.014004767594024720e-03, -8.016136873278581487e-03, -8.018255857367531311e-03, -8.020361717050738387e-03, -8.022454449539430030e-03, -8.024534052066347595e-03, -8.026600521885720457e-03, -8.028653856273177541e-03, -8.030694052525814974e-03, -8.032721107962222107e-03, -8.034735019922453758e-03, -8.036735785767962562e-03, -8.038723402881777641e-03, -8.040697868668346751e-03, -8.042659180553605666e-03, -8.044607335984971241e-03, -8.046542332431360495e-03, -8.048464167383183668e-03, -8.050372838352306062e-03, -8.052268342872119164e-03, -8.054150678497512886e-03, -8.056019842804851283e-03, -8.057875833392066228e-03, -8.059718647878513428e-03, -8.061548283905100795e-03, -8.063364739134258954e-03, -8.065168011249936042e-03, -8.066958097957557805e-03, -8.068734996984102195e-03, -8.070498706078076817e-03, -8.072249223009498112e-03, -8.073986545569900031e-03, -8.075710671572386076e-03, -8.077421598851585935e-03, -8.079119325263608639e-03, -8.080803848686162263e-03, -8.082475167018489740e-03, -8.084133278181356713e-03, -8.085778180117100117e-03, -8.087409870789557045e-03, -8.089028348184160166e-03, -8.090633610307897822e-03, -8.092225655189268924e-03, -8.093804480878395713e-03, -8.095370085446876307e-03, -8.096922466987958172e-03, -8.098461623616345570e-03, -8.099987553468438947e-03, -8.101500254702114628e-03, -8.102999725496834102e-03, -8.104485964053612795e-03, -8.105958968595098138e-03, -8.107418737365508846e-03, -8.108865268630529102e-03, -8.110298560677535809e-03, -8.111718611815485827e-03, -8.113125420374850058e-03, -8.114518984707736610e-03, -8.115899303187774569e-03, -8.117266374210299618e-03, -8.118620196192104232e-03, -8.119960767571626770e-03, -8.121288086808930648e-03, -8.122602152385619348e-03, -8.123902962804917943e-03, -8.125190516591601977e-03, -8.126464812292163997e-03, -8.127725848474516915e-03, -8.128973623728353096e-03, -8.130208136664839047e-03, -8.131429385916775013e-03, -8.132637370138607116e-03, -8.133832088006342359e-03, -8.135013538217591988e-03, -8.136181719491594050e-03, -8.137336630569218590e-03, -8.138478270212863575e-03, -8.139606637206628359e-03, -8.140721730356162769e-03, -8.141823548488739959e-03, -8.142912090453273757e-03, -8.143987355120254484e-03, -8.145049341381799257e-03, -8.146098048151658930e-03, -8.147133474365160846e-03, -8.148155618979295578e-03, -8.149164480972619778e-03, -8.150160059345353328e-03, -8.151142353119301270e-03, -8.152111361337898918e-03, -8.153067083066244808e-03, -8.154009517390942846e-03, -8.154938663420348635e-03, -8.155854520284333553e-03, -8.156757087134485981e-03, -8.157646363143917015e-03, -8.158522347507420058e-03, -8.159385039441413578e-03, -8.160234438183909880e-03, -8.161070542994539392e-03, -8.161893353154576689e-03, -8.162702867966945691e-03, -8.163499086756106915e-03, -8.164282008868230939e-03, -8.165051633671083914e-03, -8.165807960553996339e-03, -8.166550988928031329e-03, -8.167280718225741754e-03, -8.167997147901472077e-03, -8.168700277431006213e-03, -8.169390106311884975e-03, -8.170066634063203118e-03, -8.170729860225703009e-03, -8.171379784361736467e-03, -8.172016406055275170e-03, -8.172639724911948816e-03, -8.173249740558930637e-03, -8.173846452645105662e-03, -8.174429860840904186e-03, -8.174999964838386771e-03, -8.175556764351289349e-03, -8.176100259114896587e-03, -8.176630448886144237e-03, -8.177147333443577498e-03, -8.177650912587335411e-03, -8.178141186139235852e-03, -8.178618153942647170e-03, -8.179081815862564511e-03, -8.179532171785627165e-03, -8.179969221620063055e-03, -8.180392965295685270e-03, -8.180803402763947574e-03, -8.181200533997960017e-03, -8.181584358992292916e-03, -8.181954877763313386e-03, -8.182312090348843603e-03, -8.182655996808393256e-03, -8.182986597223041586e-03, -8.183303891695473814e-03, -8.183607880349998490e-03, -8.183898563332502388e-03, -8.184175940810466121e-03, -8.184440012972972814e-03, -8.184690780030732388e-03, -8.184928242216012173e-03, -8.185152399782664664e-03, -8.185363253006158746e-03, -8.185560802183584894e-03, -8.185745047633554566e-03, -8.185915989696300812e-03, -8.186073628733653990e-03, -8.186217965128987986e-03, -8.186348999287317366e-03, -8.186466731635193284e-03, -8.186571162620778080e-03, -8.186662292713760281e-03, -8.186740122405444797e-03, -8.186804652208700891e-03, -8.186855882657982988e-03, -8.186893814309301187e-03, -8.186918447740210852e-03, -8.186929783549908024e-03, -8.186927822359031659e-03, -8.186912564809904758e-03, -8.186884011566357422e-03, -8.186842163313742468e-03, -8.186787020759042979e-03, -8.186718584630731793e-03, -8.186636855678882524e-03, -8.186541834675053336e-03, -8.186433522412422253e-03, -8.186311919705663992e-03, -8.186177027391017616e-03, -8.186028846326244904e-03, -8.185867377390663308e-03, -8.185692621485106055e-03, -8.185504579531951638e-03, -8.185303252475113409e-03, -8.185088641279997940e-03, -8.184860746933591766e-03, -8.184619570444339950e-03, -8.184365112842257109e-03, -8.184097375178858019e-03, -8.183816358527171500e-03, -8.183522063981723063e-03, -8.183214492658566139e-03, -8.182893645695238707e-03, -8.182559524250820546e-03, -8.182212129505841286e-03, -8.181851462662374092e-03, -8.181477524943948920e-03, -8.181090317595580280e-03, -8.180689841883821006e-03, -8.180276099096646034e-03, -8.179849090543580767e-03, -8.179408817555567507e-03, -8.178955281485041778e-03, -8.178488483705918452e-03, -8.178008425613579602e-03, -8.177515108624871035e-03, -8.177008534178116170e-03, -8.176488703733046648e-03, -8.175955618770922029e-03, -8.175409280794366726e-03, -8.174849691327553888e-03, -8.174276851916007641e-03, -8.173690764126759212e-03, -8.173091429548228967e-03, -8.172478849790325295e-03, -8.171853026484337049e-03, -8.171213961282987326e-03, -8.170561655860445610e-03, -8.169896111912296546e-03, -8.169217331155546880e-03, -8.168525315328538719e-03, -8.167820066191143827e-03, -8.167101585524545043e-03, -8.166369875131371595e-03, -8.165624936835648787e-03, -8.164866772482733820e-03, -8.164095383939445894e-03, -8.163310773093981204e-03, -8.162512941855850496e-03, -8.161701892155993551e-03, -8.160877625946737560e-03, -8.160040145201753747e-03, -8.159189451916019215e-03, -8.158325548105979999e-03, -8.157448435809337706e-03, -8.156558117085242060e-03, -8.155654594014065395e-03, -8.154737868697648981e-03, -8.153807943259087920e-03, -8.152864819842826558e-03, -8.151908500614672357e-03, -8.150938987761686613e-03, -8.149956283492345785e-03, -8.148960390036319446e-03, -8.147951309644692330e-03, -8.146929044589820354e-03, -8.145893597165334080e-03, -8.144844969686187292e-03, -8.143783164488632709e-03, -8.142708183930180352e-03, -8.141620030389609686e-03, -8.140518706267032070e-03, -8.139404213983798819e-03, -8.138276555982515079e-03, -8.137135734727050235e-03, -8.135981752702555261e-03, -8.134814612415429760e-03, -8.133634316393287267e-03, -8.132440867184983005e-03, -8.131234267360657256e-03, -8.130014519511613927e-03, -8.128781626250478412e-03, -8.127535590210975547e-03, -8.126276414048122163e-03, -8.125004100438155963e-03, -8.123718652078436644e-03, -8.122420071687641921e-03, -8.121108362005505579e-03, -8.119783525793107179e-03, -8.118445565832528577e-03, -8.117094484927186993e-03, -8.115730285901560925e-03, -8.114352971601406991e-03, -8.112962544893520533e-03, -8.111559008665891746e-03, -8.110142365827716082e-03, -8.108712619309284969e-03, -8.107269772062010091e-03, -8.105813827058449411e-03, -8.104344787292321051e-03, -8.102862655778411347e-03, -8.101367435552635568e-03, -8.099859129672067407e-03, -8.098337741214798463e-03, -8.096803273280070087e-03, -8.095255728988177968e-03, -8.093695111480538051e-03, -8.092121423919676135e-03, -8.090534669489080413e-03, -8.088934851393369749e-03, -8.087321972858226016e-03, -8.085696037130407979e-03, -8.084057047477671495e-03, -8.082405007188785129e-03, -8.080739919573668925e-03, -8.079061787963161961e-03, -8.077370615709145510e-03, -8.075666406184549978e-03, -8.073949162783280314e-03, -8.072218888920278460e-03, -8.070475588031433140e-03, -8.068719263573649256e-03, -8.066949919024846150e-03, -8.065167557883858723e-03, -8.063372183670479074e-03, -8.061563799925564044e-03, -8.059742410210821856e-03, -8.057908018108928330e-03, -8.056060627223580670e-03, -8.054200241179271941e-03, -8.052326863621575570e-03, -8.050440498216826155e-03, -8.048541148652423038e-03, -8.046628818636549288e-03, -8.044703511898395470e-03, -8.042765232187963631e-03, -8.040813983276152294e-03, -8.038849768954806768e-03, -8.036872593036524862e-03, -8.034882459354885861e-03, -8.032879371764240634e-03, -8.030863334139874687e-03, -8.028834350377819090e-03, -8.026792424394980571e-03, -8.024737560129155400e-03, -8.022669761538861119e-03, -8.020589032603444093e-03, -8.018495377323154108e-03, -8.016388799718920585e-03, -8.014269303832545141e-03, -8.012136893726521172e-03, -8.009991573484224678e-03, -8.007833347209700886e-03, -8.005662219027862014e-03, -8.003478193084275633e-03, -8.001281273545261807e-03, -7.999071464597972900e-03, -7.996848770450171520e-03, -7.994613195330416144e-03, -7.992364743487901518e-03, -7.990103419192692846e-03, -7.987829226735347621e-03, -7.985542170427210526e-03, -7.983242254600356191e-03, -7.980929483607445210e-03, -7.978603861821843835e-03, -7.976265393637547649e-03, -7.973914083469259631e-03, -7.971549935752279131e-03, -7.969172954942512280e-03, -7.966783145516570866e-03, -7.964380511971581519e-03, -7.961965058825442448e-03, -7.959536790616403637e-03, -7.957095711903491853e-03, -7.954641827266359724e-03, -7.952175141305018596e-03, -7.949695658640246188e-03, -7.947203383913253524e-03, -7.944698321785913925e-03, -7.942180476940544423e-03, -7.939649854080001179e-03, -7.937106457927729786e-03, -7.934550293227655982e-03, -7.931981364744168303e-03, -7.929399677262184004e-03, -7.926805235587162934e-03, -7.924198044544963557e-03, -7.921578108981941826e-03, -7.918945433764965069e-03, -7.916300023781280143e-03, -7.913641883938614049e-03, -7.910971019165081997e-03, -7.908287434409324440e-03, -7.905591134640333612e-03, -7.902882124847462192e-03, -7.900160410040601988e-03, -7.897425995249878622e-03, -7.894678885525960310e-03, -7.891919085939686634e-03, -7.889146601582424159e-03, -7.886361437565827040e-03, -7.883563599021935903e-03, -7.880753091103049474e-03, -7.877929918981859889e-03, -7.875094087851360752e-03, -7.872245602924834995e-03, -7.869384469435842730e-03, -7.866510692638299315e-03, -7.863624277806369536e-03, -7.860725230234458932e-03, -7.857813555237196448e-03, -7.854889258149583622e-03, -7.851952344326786418e-03, -7.849002819144154305e-03, -7.846040687997367716e-03, -7.843065956302188238e-03, -7.840078629494781279e-03, -7.837078713031209523e-03, -7.834066212387981107e-03, -7.831041133061624610e-03, -7.828003480568907629e-03, -7.824953260446715353e-03, -7.821890478252043616e-03, -7.818815139562101252e-03, -7.815727249974183458e-03, -7.812626815105649242e-03, -7.809513840593949180e-03, -7.806388332096789347e-03, -7.803250295291770493e-03, -7.800099735876606620e-03, -7.796936659569163146e-03, -7.793761072107273022e-03, -7.790572979248806991e-03, -7.787372386771667515e-03, -7.784159300473880716e-03, -7.780933726173332697e-03, -7.777695669707968169e-03, -7.774445136935752287e-03, -7.771182133734571770e-03, -7.767906666002422252e-03, -7.764618739656965925e-03, -7.761318360636080584e-03, -7.758005534897529157e-03, -7.754680268418941494e-03, -7.751342567197828243e-03, -7.747992437251668453e-03, -7.744629884617854065e-03, -7.741254915353623992e-03, -7.737867535536041563e-03, -7.734467751262151525e-03, -7.731055568648755386e-03, -7.727630993832478208e-03, -7.724194032969823251e-03, -7.720744692237127733e-03, -7.717282977830496049e-03, -7.713808895965779816e-03, -7.710322452878767829e-03, -7.706823654824839984e-03, -7.703312508079332432e-03, -7.699789018937072682e-03, -7.696253193712901744e-03, -7.692705038741210963e-03, -7.689144560376130234e-03, -7.685571764991620813e-03, -7.681986658981150920e-03, -7.678389248758090389e-03, -7.674779540755202398e-03, -7.671157541425185564e-03, -7.667523257240179552e-03, -7.663876694692117221e-03, -7.660217860292489571e-03, -7.656546760572343138e-03, -7.652863402082441327e-03, -7.649167791393082262e-03, -7.645459935094090116e-03, -7.641739839794991183e-03, -7.638007512124720712e-03, -7.634262958731932551e-03, -7.630506186284574145e-03, -7.626737201470341898e-03, -7.622956010996323820e-03, -7.619162621589097538e-03, -7.615357039994835250e-03, -7.611539272979036576e-03, -7.607709327326837336e-03, -7.603867209842576740e-03, -7.600012927350273569e-03, -7.596146486693238463e-03, -7.592267894734263008e-03, -7.588377158355502639e-03, -7.584474284458475775e-03, -7.580559279964175709e-03, -7.576632151812879787e-03, -7.572692906964215327e-03, -7.568741552397139673e-03, -7.564778095110067692e-03, -7.560802542120600295e-03, -7.556814900465627649e-03, -7.552815177201442805e-03, -7.548803379403562150e-03, -7.544779514166738421e-03, -7.540743588604978051e-03, -7.536695609851606220e-03, -7.532635585059160171e-03, -7.528563521399238290e-03, -7.524479426062916435e-03, -7.520383306260194564e-03, -7.516275169220482458e-03, -7.512155022192187719e-03, -7.508022872442885777e-03, -7.503878727259453464e-03, -7.499722593947719465e-03, -7.495554479832678557e-03, -7.491374392258406609e-03, -7.487182338588208030e-03, -7.482978326204280974e-03, -7.478762362507963661e-03, -7.474534454919693621e-03, -7.470294610878907074e-03, -7.466042837844015512e-03, -7.461779143292463813e-03, -7.457503534720818714e-03, -7.453216019644481709e-03, -7.448916605597832169e-03, -7.444605300134362648e-03, -7.440282110826285968e-03, -7.435947045265036554e-03, -7.431600111060616444e-03, -7.427241315842265761e-03, -7.422870667257876372e-03, -7.418488172974390879e-03, -7.414093840677535470e-03, -7.409687678071833795e-03, -7.405269692880868913e-03, -7.400839892846702156e-03, -7.396398285730555744e-03, -7.391944879312222112e-03, -7.387479681390421264e-03, -7.383002699782576991e-03, -7.378513942324783914e-03, -7.374013416872125803e-03, -7.369501131298215012e-03, -7.364977093495372017e-03, -7.360441311374779812e-03, -7.355893792866140431e-03, -7.351334545918054852e-03, -7.346763578497456613e-03, -7.342180898590264064e-03, -7.337586514200800970e-03, -7.332980433352173817e-03, -7.328362664085972568e-03, -7.323733214462399034e-03, -7.319092092560385704e-03, -7.314439306477140378e-03, -7.309774864328733371e-03, -7.305098774249532863e-03, -7.300411044392616025e-03, -7.295711682929460241e-03, -7.291000698049981271e-03, -7.286278097962768305e-03, -7.281543890894717937e-03, -7.276798085091231924e-03, -7.272040688816096624e-03, -7.267271710351666872e-03, -7.262491157998565879e-03, -7.257699040075791044e-03, -7.252895364920901311e-03, -7.248080140889613839e-03, -7.243253376356255033e-03, -7.238415079713107422e-03, -7.233565259371086201e-03, -7.228703923759466007e-03, -7.223831081325438573e-03, -7.218946740534862988e-03, -7.214050909871635130e-03, -7.209143597838074506e-03, -7.204224812954585118e-03, -7.199294563759789899e-03, -7.194352858810679034e-03, -7.189399706682297712e-03, -7.184435115967866686e-03, -7.179459095278777070e-03, -7.174471653244671003e-03, -7.169472798513220474e-03, -7.164462539750176759e-03, -7.159440885639538690e-03, -7.154407844883275101e-03, -7.149363426201455797e-03, -7.144307638332144869e-03, -7.139240490031648761e-03, -7.134161990074087793e-03, -7.129072147251626010e-03, -7.123970970374582205e-03, -7.118858468271041344e-03, -7.113734649787326406e-03, -7.108599523787322710e-03, -7.103453099153245534e-03, -7.098295384784921065e-03, -7.093126389600344986e-03, -7.087946122535240985e-03, -7.082754592543160505e-03, -7.077551808595724733e-03, -7.072337779682212611e-03, -7.067112514809730829e-03, -7.061876023003362153e-03, -7.056628313305841893e-03, -7.051369394777730511e-03, -7.046099276497275708e-03, -7.040817967560681311e-03, -7.035525477081693534e-03, -7.030221814191801345e-03, -7.024906988040303252e-03, -7.019581007794067906e-03, -7.014243882637823807e-03, -7.008895621773617197e-03, -7.003536234421469525e-03, -6.998165729818808453e-03, -6.992784117220873785e-03, -6.987391405900328888e-03, -6.981987605147400335e-03, -6.976572724270087809e-03, -6.971146772593703536e-03, -6.965709759461186264e-03, -6.960261694232915651e-03, -6.954802586286979414e-03, -6.949332445018719696e-03, -6.943851279840955112e-03, -6.938359100184183711e-03, -6.932855915496089448e-03, -6.927341735241861372e-03, -6.921816568904026225e-03, -6.916280425982684367e-03, -6.910733315995121195e-03, -6.905175248475957199e-03, -6.899606232977332707e-03, -6.894026279068509767e-03, -6.888435396336284149e-03, -6.882833594384374712e-03, -6.877220882834096487e-03, -6.871597271323968623e-03, -6.865962769509644133e-03, -6.860317387064010508e-03, -6.854661133677164564e-03, -6.848994019056514788e-03, -6.843316052926488174e-03, -6.837627245028668997e-03, -6.831927605121941062e-03, -6.826217142982113871e-03, -6.820495868402215792e-03, -6.814763791192276349e-03, -6.809020921179533524e-03, -6.803267268208170945e-03, -6.797502842139356918e-03, -6.791727652851509839e-03, -6.785941710239742214e-03, -6.780145024216519857e-03, -6.774337604710792791e-03, -6.768519461668974502e-03, -6.762690605054081511e-03, -6.756851044846091600e-03, -6.751000791042068711e-03, -6.745139853655730128e-03, -6.739268242717921797e-03, -6.733385968275950456e-03, -6.727493040394366859e-03, -6.721589469154245003e-03, -6.715675264653709481e-03, -6.709750437007440220e-03, -6.703814996346934424e-03, -6.697868952820571625e-03, -6.691912316593350875e-03, -6.685945097846882935e-03, -6.679967306779752839e-03, -6.673978953606910132e-03, -6.667980048560313323e-03, -6.661970601888133649e-03, -6.655950623855554776e-03, -6.649920124744182134e-03, -6.643879114852168678e-03, -6.637827604494442139e-03, -6.631765604002233180e-03, -6.625693123723652191e-03, -6.619610174022836670e-03, -6.613516765280913132e-03, -6.607412907895157499e-03, -6.601298612279584907e-03, -6.595173888864430158e-03, -6.589038748096394914e-03, -6.582893200438806429e-03, -6.576737256371142232e-03, -6.570570926389358857e-03, -6.564394221005696688e-03, -6.558207150748947972e-03, -6.552009726164017070e-03, -6.545801957812122547e-03, -6.539583856270992333e-03, -6.533355432134383203e-03, -6.527116696012417313e-03, -6.520867658531336736e-03, -6.514608330333871225e-03, -6.508338722078672693e-03, -6.502058844440630064e-03, -6.495768708110966419e-03, -6.489468323796806180e-03, -6.483157702221628745e-03, -6.476836854124890311e-03, -6.470505790262057709e-03, -6.464164521404937996e-03, -6.457813058341127684e-03, -6.451451411874416057e-03, -6.445079592824427828e-03, -6.438697612027094973e-03, -6.432305480334064331e-03, -6.425903208612963879e-03, -6.419490807747573607e-03, -6.413068288637399639e-03, -6.406635662197896278e-03, -6.400192939360365395e-03, -6.393740131072193217e-03, -6.387277248296366339e-03, -6.380804302011744075e-03, -6.374321303213204178e-03, -6.367828262911117213e-03, -6.361325192132033512e-03, -6.354812101917708261e-03, -6.348289003326162278e-03, -6.341755907430776489e-03, -6.335212825320927707e-03, -6.328659768101457805e-03, -6.322096746892863668e-03, -6.315523772831589493e-03, -6.308940857069202796e-03, -6.302348010773377134e-03, -6.295745245127003058e-03, -6.289132571328869860e-03, -6.282510000593047143e-03, -6.275877544149184063e-03, -6.269235213242653308e-03, -6.262583019134089664e-03, -6.255920973099584302e-03, -6.249249086430971011e-03, -6.242567370435157456e-03, -6.235875836434870249e-03, -6.229174495767729469e-03, -6.222463359787235720e-03, -6.215742439861881088e-03, -6.209011747375788384e-03, -6.202271293728203738e-03, -6.195521090333665735e-03, -6.188761148622290778e-03, -6.181991480038960367e-03, -6.175212096044272597e-03, -6.168423008113725105e-03, -6.161624227738328290e-03, -6.154815766424005102e-03, -6.147997635691881610e-03, -6.141169847078480418e-03, -6.134332412135172496e-03, -6.127485342428545811e-03, -6.120628649540209298e-03, -6.113762345067043531e-03, -6.106886440620788725e-03, -6.100000947828198260e-03, -6.093105878331242509e-03, -6.086201243786613577e-03, -6.079287055866349800e-03, -6.072363326256894657e-03, -6.065430066660106381e-03, -6.058487288792731469e-03, -6.051535004385976205e-03, -6.044573225186418257e-03, -6.037601962955173145e-03, -6.030621229468412052e-03, -6.023631036516980189e-03, -6.016631395906442761e-03, -6.009622319457401558e-03, -6.002603819005003158e-03, -5.995575906399156635e-03, -5.988538593504464172e-03, -5.981491892200423155e-03, -5.974435814380972543e-03, -5.967370371954727054e-03, -5.960295576845130693e-03, -5.953211440990071636e-03, -5.946117976342041832e-03, -5.939015194868086690e-03, -5.931903108549998506e-03, -5.924781729383900991e-03, -5.917651069380416677e-03, -5.910511140564900234e-03, -5.903361954976874687e-03, -5.896203524670694945e-03, -5.889035861714592840e-03, -5.881858978191796018e-03, -5.874672886199525275e-03, -5.867477597849640736e-03, -5.860273125268188228e-03, -5.853059480595481680e-03, -5.845836675986439655e-03, -5.838604723610022439e-03, -5.831363635649481833e-03, -5.824113424302309987e-03, -5.816854101780455366e-03, -5.809585680309807543e-03, -5.802308172130461739e-03, -5.795021589496928728e-03, -5.787725944677616155e-03, -5.780421249955057517e-03, -5.773107517626137677e-03, -5.765784760001508268e-03, -5.758452989406279837e-03, -5.751112218179071228e-03, -5.743762458673033929e-03, -5.736403723254978639e-03, -5.729036024305970282e-03, -5.721659374220843149e-03, -5.714273785408324931e-03, -5.706879270291340296e-03, -5.699475841306455778e-03, -5.692063510904198098e-03, -5.684642291548855537e-03, -5.677212195718817078e-03, -5.669773235906049383e-03, -5.662325424616291951e-03, -5.654868774369318195e-03, -5.647403297698391604e-03, -5.639929007150604884e-03, -5.632445915286669186e-03, -5.624954034681245441e-03, -5.617453377922408328e-03, -5.609943957611860516e-03, -5.602425786365218888e-03, -5.594898876811331065e-03, -5.587363241593075978e-03, -5.579818893366293546e-03, -5.572265844800882752e-03, -5.564704108580159798e-03, -5.557133697400785249e-03, -5.549554623972988675e-03, -5.541966901020343138e-03, -5.534370541280121680e-03, -5.526765557502796855e-03, -5.519151962452161289e-03, -5.511529768905698047e-03, -5.503898989653960468e-03, -5.496259637500901761e-03, -5.488611725263717149e-03, -5.480955265773133564e-03, -5.473290271872863211e-03, -5.465616756419934032e-03, -5.457934732284755626e-03, -5.450244212350669956e-03, -5.442545209514593196e-03, -5.434837736685983571e-03, -5.427121806788073877e-03, -5.419397432756834117e-03, -5.411664627541322783e-03, -5.403923404103972220e-03, -5.396173775419852228e-03, -5.388415754477547844e-03, -5.380649354278010076e-03, -5.372874587835790167e-03, -5.365091468177971869e-03, -5.357300008344911303e-03, -5.349500221389622001e-03, -5.341692120378048990e-03, -5.333875718389216244e-03, -5.326051028514779996e-03, -5.318218063859216083e-03, -5.310376837540066279e-03, -5.302527362687312062e-03, -5.294669652444128349e-03, -5.286803719965826182e-03, -5.278929578421066166e-03, -5.271047240990827179e-03, -5.263156720868799286e-03, -5.255258031261546801e-03, -5.247351185387954912e-03, -5.239436196479956530e-03, -5.231513077781418594e-03, -5.223581842549434445e-03, -5.215642504053165027e-03, -5.207695075574683696e-03, -5.199739570408268459e-03, -5.191776001860678655e-03, -5.183804383251425577e-03, -5.175824727912143632e-03, -5.167837049186996268e-03, -5.159841360432414030e-03, -5.151837675017520435e-03, -5.143826006323464102e-03, -5.135806367743727535e-03, -5.127778772684366514e-03, -5.119743234563445440e-03, -5.111699766811382550e-03, -5.103648382870700113e-03, -5.095589096196447704e-03, -5.087521920255569027e-03, -5.079446868527170804e-03, -5.071363954502782108e-03, -5.063273191685681296e-03, -5.055174593591715664e-03, -5.047068173748140915e-03, -5.038953945694848481e-03, -5.030831922983636934e-03, -5.022702119178136526e-03, -5.014564547854070270e-03, -5.006419222599011939e-03, -4.998266157012773783e-03, -4.990105364706779421e-03, -4.981936859304370892e-03, -4.973760654441020286e-03, -4.965576763763792853e-03, -4.957385200931635830e-03, -4.949185979615261348e-03, -4.940979113497392765e-03, -4.932764616272246848e-03, -4.924542501645800922e-03, -4.916312783335968079e-03, -4.908075475072042927e-03, -4.899830590595395489e-03, -4.891578143658432964e-03, -4.883318148025805362e-03, -4.875050617473309159e-03, -4.866775565788685268e-03, -4.858493006770932959e-03, -4.850202954230601292e-03, -4.841905421990112639e-03, -4.833600423882714915e-03, -4.825287973753768743e-03, -4.816968085459618146e-03, -4.808640772868374644e-03, -4.800306049859276274e-03, -4.791963930322906164e-03, -4.783614428161516059e-03, -4.775257557288349781e-03, -4.766893331627982365e-03, -4.758521765116519552e-03, -4.750142871700978493e-03, -4.741756665340038021e-03, -4.733363160002963116e-03, -4.724962369670814878e-03, -4.716554308335393214e-03, -4.708138989999963685e-03, -4.699716428678641679e-03, -4.691286638396637010e-03, -4.682849633190598257e-03, -4.674405427107568463e-03, -4.665954034206248012e-03, -4.657495468555888744e-03, -4.649029744237048560e-03, -4.640556875340999879e-03, -4.632076875969914388e-03, -4.623589760237175293e-03, -4.615095542266706846e-03, -4.606594236193449661e-03, -4.598085856163038054e-03, -4.589570416332229390e-03, -4.581047930868238811e-03, -4.572518413949087923e-03, -4.563981879763803415e-03, -4.555438342511743122e-03, -4.546887816403423488e-03, -4.538330315659395466e-03, -4.529765854511482240e-03, -4.521194447201769620e-03, -4.512616107982937372e-03, -4.504030851118496007e-03, -4.495438690882172690e-03, -4.486839641558560896e-03, -4.478233717442503710e-03, -4.469620932839288123e-03, -4.461001302064961614e-03, -4.452374839445703315e-03, -4.443741559318230804e-03, -4.435101476029497392e-03, -4.426454603937138819e-03, -4.417800957408822733e-03, -4.409140550822537516e-03, -4.400473398566842088e-03, -4.391799515040270899e-03, -4.383118914651694745e-03, -4.374431611820121281e-03, -4.365737620975008136e-03, -4.357036956555723414e-03, -4.348329633011748657e-03, -4.339615664802996299e-03, -4.330895066399098429e-03, -4.322167852280216042e-03, -4.313434036935908863e-03, -4.304693634866406035e-03, -4.295946660581483750e-03, -4.287193128601271899e-03, -4.278433053455554975e-03, -4.269666449684047897e-03, -4.260893331836688308e-03, -4.252113714472963504e-03, -4.243327612162330238e-03, -4.234535039483981397e-03, -4.225736011027207695e-03, -4.216930541390804393e-03, -4.208118645183295953e-03, -4.199300337023272565e-03, -4.190475631538694533e-03, -4.181644543367277374e-03, -4.172807087156614123e-03, -4.163963277563612411e-03, -4.155113129255252544e-03, -4.146256656907411353e-03, -4.137393875206229164e-03, -4.128524798846900691e-03, -4.119649442534532857e-03, -4.110767820983405804e-03, -4.101879948917305958e-03, -4.092985841069721187e-03, -4.084085512183289156e-03, -4.075178977010140806e-03, -4.066266250311653153e-03, -4.057347346858879503e-03, -4.048422281431882444e-03, -4.039491068820031359e-03, -4.030553723822235743e-03, -4.021610261246394424e-03, -4.012660695909717364e-03, -4.003705042638496664e-03, -3.994743316268518571e-03, -3.985775531644415552e-03, -3.976801703619956864e-03, -3.967821847058286208e-03, -3.958835976831248660e-03, -3.949844107820225936e-03, -3.940846254914928161e-03, -3.931842433014698379e-03, -3.922832657027714581e-03, -3.913816941870935928e-03, -3.904795302470345612e-03, -3.895767753760723175e-03, -3.886734310686033086e-03, -3.877694988198806311e-03, -3.868649801260381008e-03, -3.859598764841227787e-03, -3.850541893920275335e-03, -3.841479203485315044e-03, -3.832410708532791102e-03, -3.823336424068114921e-03, -3.814256365105110885e-03, -3.805170546666254879e-03, -3.796078983782944904e-03, -3.786981691494788541e-03, -3.777878684850493295e-03, -3.768769978906598948e-03, -3.759655588728906973e-03, -3.750535529391302650e-03, -3.741409815976155361e-03, -3.732278463574610888e-03, -3.723141487285838973e-03, -3.713998902217908928e-03, -3.704850723486587463e-03, -3.695696966216701317e-03, -3.686537645540891289e-03, -3.677372776600529043e-03, -3.668202374544955562e-03, -3.659026454531785592e-03, -3.649845031727144435e-03, -3.640658121305092448e-03, -3.631465738447847529e-03, -3.622267898346111670e-03, -3.613064616198301618e-03, -3.603855907211453956e-03, -3.594641786599990854e-03, -3.585422269587073586e-03, -3.576197371403512688e-03, -3.566967107288127048e-03, -3.557731492488010183e-03, -3.548490542257838522e-03, -3.539244271860673714e-03, -3.529992696566832018e-03, -3.520735831655181450e-03, -3.511473692411968672e-03, -3.502206294131652523e-03, -3.492933652116211873e-03, -3.483655781675411463e-03, -3.474372698127058210e-03, -3.465084416796398829e-03, -3.455790953016481953e-03, -3.446492322127935656e-03, -3.437188539479359064e-03, -3.427879620426652323e-03, -3.418565580333349230e-03, -3.409246434570845346e-03, -3.399922198517797787e-03, -3.390592887560494716e-03, -3.381258517092611184e-03, -3.371919102515624159e-03, -3.362574659238144227e-03, -3.353225202676220033e-03, -3.343870748253602830e-03, -3.334511311401005314e-03, -3.325146907557017129e-03, -3.315777552166828106e-03, -3.306403260683539718e-03, -3.297024048567442564e-03, -3.287639931285847670e-03, -3.278250924313403508e-03, -3.268857043131869183e-03, -3.259458303230458771e-03, -3.250054720105244148e-03, -3.240646309259404782e-03, -3.231233086203539988e-03, -3.221815066455003661e-03, -3.212392265538303697e-03, -3.202964698984855658e-03, -3.193532382333381329e-03, -3.184095331129269037e-03, -3.174653560924839066e-03, -3.165207087279654167e-03, -3.155755925759745010e-03, -3.146300091938517875e-03, -3.136839601395514324e-03, -3.127374469717804188e-03, -3.117904712498723550e-03, -3.108430345338817572e-03, -3.098951383845013462e-03, -3.089467843630984336e-03, -3.079979740317490954e-03, -3.070487089531228567e-03, -3.060989906906268470e-03, -3.051488208082746116e-03, -3.041982008707832131e-03, -3.032471324434916557e-03, -3.022956170923923273e-03, -3.013436563841611834e-03, -3.003912518860894863e-03, -2.994384051661144221e-03, -2.984851177928485051e-03, -2.975313913355016448e-03, -2.965772273639733902e-03, -2.956226274487269885e-03, -2.946675931609306354e-03, -2.937121260723297989e-03, -2.927562277553406780e-03, -2.917998997829709257e-03, -2.908431437288523918e-03, -2.898859611672787231e-03, -2.889283536730850605e-03, -2.879703228217967044e-03, -2.870118701894971459e-03, -2.860529973529219588e-03, -2.850937058893823848e-03, -2.841339973767923952e-03, -2.831738733937010869e-03, -2.822133355192232938e-03, -2.812523853330821735e-03, -2.802910244155823200e-03, -2.793292543476539550e-03, -2.783670767107812409e-03, -2.774044930870368450e-03, -2.764415050591078303e-03, -2.754781142102178532e-03, -2.745143221242257823e-03, -2.735501303854882219e-03, -2.725855405790115604e-03, -2.716205542903275469e-03, -2.706551731055389584e-03, -2.696893986113439289e-03, -2.687232323949602722e-03, -2.677566760442097026e-03, -2.667897311474386017e-03, -2.658223992935475951e-03, -2.648546820720242088e-03, -2.638865810728703576e-03, -2.629180978866461037e-03, -2.619492341044479290e-03, -2.609799913179437336e-03, -2.600103711193088238e-03, -2.590403751012550129e-03, -2.580700048570611516e-03, -2.570992619805052143e-03, -2.561281480659028959e-03, -2.551566647080871428e-03, -2.541848135024466632e-03, -2.532125960448567119e-03, -2.522400139317134381e-03, -2.512670687599586911e-03, -2.502937621270069028e-03, -2.493200956308338177e-03, -2.483460708698495990e-03, -2.473716894430437636e-03, -2.463969529498559897e-03, -2.454218629902683597e-03, -2.444464211647260406e-03, -2.434706290741727158e-03, -2.424944883200729623e-03, -2.415180005043505388e-03, -2.405411672294255083e-03, -2.395639900981926407e-03, -2.385864707140595772e-03, -2.376086106808811271e-03, -2.366304116029883681e-03, -2.356518750852176596e-03, -2.346730027328458069e-03, -2.336937961516156494e-03, -2.327142569477709273e-03, -2.317343867279725821e-03, -2.307541870993988064e-03, -2.297736596696073070e-03, -2.287928060466894349e-03, -2.278116278391331857e-03, -2.268301266559203874e-03, -2.258483041064486812e-03, -2.248661618005587566e-03, -2.238837013485677017e-03, -2.229009243611980960e-03, -2.219178324496210320e-03, -2.209344272254309613e-03, -2.199507103006852898e-03, -2.189666832878398896e-03, -2.179823477997748157e-03, -2.169977054498280471e-03, -2.160127578517253167e-03, -2.150275066196207473e-03, -2.140419533680737799e-03, -2.130560997120913274e-03, -2.120699472670554801e-03, -2.110834976487575496e-03, -2.100967524734265179e-03, -2.091097133576499782e-03, -2.081223819184704112e-03, -2.071347597732506578e-03, -2.061468485398140846e-03, -2.051586498363646132e-03, -2.041701652814735795e-03, -2.031813964941106554e-03, -2.021923450936172206e-03, -2.012030126997507717e-03, -2.002134009326128443e-03, -1.992235114126817124e-03, -1.982333457608423128e-03, -1.972429055983165522e-03, -1.962521925467059815e-03, -1.952612082279668376e-03, -1.942699542644509610e-03, -1.932784322788370143e-03, -1.922866438941611862e-03, -1.912945907338476585e-03, -1.903022744216294367e-03, -1.893096965816430449e-03, -1.883168588382951036e-03, -1.873237628164138796e-03, -1.863304101411254483e-03, -1.853368024378934404e-03, -1.843429413325521973e-03, -1.833488284512253472e-03, -1.823544654204217351e-03, -1.813598538669025650e-03, -1.803649954178311501e-03, -1.793698917006377770e-03, -1.783745443431192365e-03, -1.773789549733555126e-03, -1.763831252197412035e-03, -1.753870567110176132e-03, -1.743907510762022573e-03, -1.733942099446295418e-03, -1.723974349459287108e-03, -1.714004277100523825e-03, -1.704031898672623245e-03, -1.694057230480521502e-03, -1.684080288832849040e-03, -1.674101090040714789e-03, -1.664119650418106455e-03, -1.654135986282199294e-03, -1.644150113952566605e-03, -1.634162049752130134e-03, -1.624171810005814150e-03, -1.614179411042073083e-03, -1.604184869191534104e-03, -1.594188200787951442e-03, -1.584189422167434861e-03, -1.574188549668728088e-03, -1.564185599633525180e-03, -1.554180588405786609e-03, -1.544173532332137168e-03, -1.534164447761635248e-03, -1.524153351046184188e-03, -1.514140258539825590e-03, -1.504125186599078240e-03, -1.494108151583211546e-03, -1.484089169853568344e-03, -1.474068257773982751e-03, -1.464045431710529277e-03, -1.454020708031932875e-03, -1.443994103108889142e-03, -1.433965633314363127e-03, -1.423935315023900066e-03, -1.413903164614810923e-03, -1.403869198467155551e-03, -1.393833432962384182e-03, -1.383795884484748844e-03, -1.373756569420498015e-03, -1.363715504157748904e-03, -1.353672705086776283e-03, -1.343628188599781548e-03, -1.333581971091306459e-03, -1.323534068957526880e-03, -1.313484498596575881e-03, -1.303433276408841454e-03, -1.293380418796271757e-03, -1.283325942162804028e-03, -1.273269862914101335e-03, -1.263212197457980190e-03, -1.253152962203709286e-03, -1.243092173562328684e-03, -1.233029847946936911e-03, -1.222966001771906433e-03, -1.212900651453849461e-03, -1.202833813410246434e-03, -1.192765504060995779e-03, -1.182695739827043261e-03, -1.172624537131343242e-03, -1.162551912398076528e-03, -1.152477882052945933e-03, -1.142402462523592387e-03, -1.132325670238345508e-03, -1.122247521627759044e-03, -1.112168033123247602e-03, -1.102087221158056136e-03, -1.092005102166458295e-03, -1.081921692584062377e-03, -1.071837008848125104e-03, -1.061751067396845801e-03, -1.051663884669674313e-03, -1.041575477107637131e-03, -1.031485861152503210e-03, -1.021395053247778177e-03, -1.011303069837336073e-03, -1.001209927366952844e-03, -9.911156422829415537e-04, -9.810202310331292419e-04, -9.709237100660468144e-04, -9.608260958312398814e-04, -9.507274047796973430e-04, -9.406276533625695371e-04, -9.305268580327387060e-04, -9.204250352434293746e-04, -9.103222014491909632e-04, -9.002183731050981876e-04, -8.901135666670458545e-04, -8.800077985920717362e-04, -8.699010853376401304e-04, -8.597934433620897437e-04, -8.496848891243491972e-04, -8.395754390843939092e-04, -8.294651097025187037e-04, -8.193539174396596023e-04, -8.092418787577049894e-04, -7.991290101186775824e-04, -7.890153279857219223e-04, -7.789008488217304734e-04, -7.687855890908853584e-04, -7.586695652574001417e-04, -7.485527937859419098e-04, -7.384352911419382083e-04, -7.283170737907641076e-04, -7.181981581986226831e-04, -7.080785608317188536e-04, -6.979582981565797626e-04, -6.878373866403613909e-04, -6.777158427501445842e-04, -6.675936829533650474e-04, -6.574709237175562805e-04, -6.473475815107710080e-04, -6.372236728008864219e-04, -6.270992140559100356e-04, -6.169742217442907408e-04, -6.068487123342204735e-04, -5.967227022940492466e-04, -5.865962080920430468e-04, -5.764692461968042893e-04, -5.663418330765656759e-04, -5.562139851995032049e-04, -5.460857190340531915e-04, -5.359570510480868646e-04, -5.258279977099055563e-04, -5.156985754868581269e-04, -5.055688008468931091e-04, -4.954386902571786266e-04, -4.853082601850930303e-04, -4.751775270974022592e-04, -4.650465074605791924e-04, -4.549152177411126471e-04, -4.447836744048013998e-04, -4.346518939171801154e-04, -4.245198927432694384e-04, -4.143876873479943328e-04, -4.042552941954913846e-04, -3.941227297494063618e-04, -3.839900104732186614e-04, -3.738571528295295309e-04, -3.637241732803778963e-04, -3.535910882875509319e-04, -3.434579143117667886e-04, -3.333246678136647960e-04, -3.231913652524229957e-04, -3.130580230873146767e-04, -3.029246577763221684e-04, -2.927912857771310540e-04, -2.826579235463102429e-04, -2.725245875396247082e-04, -2.623912942123479545e-04, -2.522580600185577739e-04, -2.421249014115604945e-04, -2.319918348436397705e-04, -2.218588767664803974e-04, -2.117260436304650435e-04, -2.015933518849842240e-04, -1.914608179787523725e-04, -1.813284583590996405e-04, -1.711962894723995608e-04, -1.610643277638152088e-04, -1.509325896777248327e-04, -1.408010916570169601e-04, -1.306698501434038948e-04, -1.205388815777325032e-04, -1.104082023991671054e-04, -1.002778290461810325e-04, -9.014777795517219504e-05, -8.001806556190641374e-05, -6.988870830069980904e-05, -5.975972260427875603e-05, -4.963112490409269718e-05, -3.950293163006157737e-05, -2.937515921100049545e-05, -1.924782407391607391e-05, -9.120942644318275484e-06, 1.005468653467277426e-06, 1.113139339700342660e-05, 2.125681516531643391e-05, 3.138171753914840859e-05, 4.150608410053219428e-05, 5.162989843349534132e-05, 6.175314412374813603e-05, 7.187580475837170284e-05, 8.199786392663366318e-05, 9.211930521900029171e-05, 1.022401122285168548e-04, 1.123602685492536778e-04, 1.224797577775748648e-04, 1.325985635117128171e-04, 1.427166693514569451e-04, 1.528340588989687040e-04, 1.629507157577945629e-04, 1.730666235342452456e-04, 1.831817658358428553e-04, 1.932961262727010091e-04, 2.034096884565365611e-04, 2.135224360014858168e-04, 2.236343525237924454e-04, 2.337454216414946604e-04, 2.438556269751300325e-04, 2.539649521473107802e-04, 2.640733807829728926e-04, 2.741808965090692459e-04, 2.842874829547047491e-04, 2.943931237519538326e-04, 3.044978025344207361e-04, 3.146015029385056941e-04, 3.247042086029826389e-04, 3.348059031686840777e-04, 3.449065702793190145e-04, 3.550061935804859465e-04, 3.651047567210469278e-04, 3.752022433515830153e-04, 3.852986371257656213e-04, 3.953939216993766661e-04, 4.054880807311156583e-04, 4.155810978822956840e-04, 4.256729568165244348e-04, 4.357636412004152276e-04, 4.458531347031514805e-04, 4.559414209967520715e-04, 4.660284837556332121e-04, 4.761143066573226114e-04, 4.861988733821381186e-04, 4.962821676128857185e-04, 5.063641730355515234e-04, 5.164448733388870118e-04, 5.265242522146538953e-04, 5.366022933572026348e-04, 5.466789804641757631e-04, 5.567542972361929233e-04, 5.668282273765441488e-04, 5.769007545919977017e-04, 5.869718625918214725e-04, 5.970415350891507007e-04, 6.071097557995627910e-04, 6.171765084418756120e-04, 6.272417767383057889e-04, 6.373055444141362876e-04, 6.473677951979875736e-04, 6.574285128213774258e-04, 6.674876810194348836e-04, 6.775452835305789982e-04, 6.876013040962165564e-04, 6.976557264614373800e-04, 7.077085343745895350e-04, 7.177597115875363962e-04, 7.278092418552262188e-04, 7.378571089364014237e-04, 7.479032965932781067e-04, 7.579477885912421376e-04, 7.679905686996577573e-04, 7.780316206908867004e-04, 7.880709283416549409e-04, 7.981084754315202799e-04, 8.081442457442239132e-04, 8.181782230667322122e-04, 8.282103911900309031e-04, 8.382407339088171526e-04, 8.482692350210807412e-04, 8.582958783293646648e-04, 8.683206476392190624e-04, 8.783435267605660098e-04, 8.883644995067315440e-04, 8.983835496952469971e-04, 9.084006611475363121e-04, 9.184158176886130084e-04, 9.284290031477761317e-04, 9.384402013582950758e-04, 9.484493961571063315e-04, 9.584565713856259880e-04, 9.684617108887542177e-04, 9.784647985162599117e-04, 9.884658181212330891e-04, 9.984647535614518590e-04, 1.008461588698404687e-03, 1.018456307398098778e-03, 1.028448893530749773e-03, 1.038439330970363254e-03, 1.048427603595985472e-03, 1.058413695290168991e-03, 1.068397589940336392e-03, 1.078379271437802326e-03, 1.088358723678586014e-03, 1.098335930563090540e-03, 1.108310875995804695e-03, 1.118283543885990796e-03, 1.128253918147276158e-03, 1.138221982697883812e-03, 1.148187721460231349e-03, 1.158151118361610069e-03, 1.168112157333889636e-03, 1.178070822313198466e-03, 1.188027097240735783e-03, 1.197980966061794762e-03, 1.207932412727123631e-03, 1.217881421191390444e-03, 1.227827975414436850e-03, 1.237772059360857857e-03, 1.247713656999695220e-03, 1.257652752305232161e-03, 1.267589329256038405e-03, 1.277523371836310900e-03, 1.287454864034462193e-03, 1.297383789843920780e-03, 1.307310133263279430e-03, 1.317233878295971444e-03, 1.327155008950530206e-03, 1.337073509240160494e-03, 1.346989363183446250e-03, 1.356902554804025312e-03, 1.366813068130292349e-03, 1.376720887196093614e-03, 1.386625996040296736e-03, 1.396528378707045069e-03, 1.406428019245346351e-03, 1.416324901709752494e-03, 1.426219010160055143e-03, 1.436110328660988606e-03, 1.445998841283010908e-03, 1.455884532101357287e-03, 1.465767385197379617e-03, 1.475647384657020065e-03, 1.485524514572169599e-03, 1.495398759039703266e-03, 1.505270102162269922e-03, 1.515138528047993644e-03, 1.525004020810159311e-03, 1.534866564567914518e-03, 1.544726143445837628e-03, 1.554582741574196030e-03, 1.564436343088519395e-03, 1.574286932130309182e-03, 1.584134492846700146e-03, 1.593979009390178664e-03, 1.603820465919262315e-03, 1.613658846598203670e-03, 1.623494135596665038e-03, 1.633326317090539855e-03, 1.643155375260960420e-03, 1.652981294295668979e-03, 1.662804058387489219e-03, 1.672623651735672193e-03, 1.682440058544936584e-03, 1.692253263026258442e-03, 1.702063249396574976e-03, 1.711870001878466668e-03, 1.721673504700851377e-03, 1.731473742098577984e-03, 1.741270698312652335e-03, 1.751064357589837174e-03, 1.760854704183328900e-03, 1.770641722352458980e-03, 1.780425396362392103e-03, 1.790205710484800991e-03, 1.799982648997449416e-03, 1.809756196184458474e-03, 1.819526336335877464e-03, 1.829293053748363681e-03, 1.839056332724875367e-03, 1.848816157574392858e-03, 1.858572512612691836e-03, 1.868325382161378822e-03, 1.878074750549234501e-03, 1.887820602110716227e-03, 1.897562921187291368e-03, 1.907301692126463482e-03, 1.917036899282589368e-03, 1.926768527016541228e-03, 1.936496559695443645e-03, 1.946220981693329733e-03, 1.955941777390838871e-03, 1.965658931174921360e-03, 1.975372427439516052e-03, 1.985082250585136401e-03, 1.994788385019121129e-03, 2.004490815155213993e-03, 2.014189525414245962e-03, 2.023884500223839446e-03, 2.033575724018088678e-03, 2.043263181238375460e-03, 2.052946856332394255e-03, 2.062626733755474045e-03, 2.072302797969098609e-03, 2.081975033442141215e-03, 2.091643424650404051e-03, 2.101307956076373627e-03, 2.110968612209972780e-03, 2.120625377547614814e-03, 2.130278236593524058e-03, 2.139927173858274800e-03, 2.149572173860066736e-03, 2.159213221123809038e-03, 2.168850300181912692e-03, 2.178483395573941814e-03, 2.188112491846366022e-03, 2.197737573553209655e-03, 2.207358625255635871e-03, 2.216975631522215100e-03, 2.226588576928592404e-03, 2.236197446057651850e-03, 2.245802223500273712e-03, 2.255402893853962303e-03, 2.264999441724075031e-03, 2.274591851723380045e-03, 2.284180108471783009e-03, 2.293764196597112507e-03, 2.303344100734149025e-03, 2.312919805525965027e-03, 2.322491295622434830e-03, 2.332058555681534341e-03, 2.341621570368431198e-03, 2.351180324356224628e-03, 2.360734802325687408e-03, 2.370284988964926291e-03, 2.379830868970088473e-03, 2.389372427044918808e-03, 2.398909647901044297e-03, 2.408442516257516992e-03, 2.417971016841537809e-03, 2.427495134388107413e-03, 2.437014853639765145e-03, 2.446530159347245180e-03, 2.456041036269069732e-03, 2.465547469171775006e-03, 2.475049442829538229e-03, 2.484546942024819932e-03, 2.494039951548082494e-03, 2.503528456197474852e-03, 2.513012440779620067e-03, 2.522491890108681609e-03, 2.531966789007637515e-03, 2.541437122306971965e-03, 2.550902874845398672e-03, 2.560364031470010928e-03, 2.569820577035979332e-03, 2.579272496406801590e-03, 2.588719774453884445e-03, 2.598162396057220654e-03, 2.607600346105080208e-03, 2.617033609493730605e-03, 2.626462171128095182e-03, 2.635886015921325501e-03, 2.645305128795091484e-03, 2.654719494679126483e-03, 2.664129098511922467e-03, 2.673533925240416474e-03, 2.682933959819722592e-03, 2.692329187213858381e-03, 2.701719592394848015e-03, 2.711105160344004245e-03, 2.720485876050482942e-03, 2.729861724512543369e-03, 2.739232690736669116e-03, 2.748598759738281935e-03, 2.757959916541491939e-03, 2.767316146178670430e-03, 2.776667433691649024e-03, 2.786013764130256410e-03, 2.795355122553614194e-03, 2.804691494029220092e-03, 2.814022863633684323e-03, 2.823349216452469834e-03, 2.832670537579572243e-03, 2.841986812118189876e-03, 2.851298025180321744e-03, 2.860604161887007803e-03, 2.869905207368031019e-03, 2.879201146762043560e-03, 2.888491965217348297e-03, 2.897777647890505820e-03, 2.907058179947677543e-03, 2.916333546563680719e-03, 2.925603732922717887e-03, 2.934868724218140518e-03, 2.944128505652020104e-03, 2.953383062436311293e-03, 2.962632379791439816e-03, 2.971876442947580122e-03, 2.981115237143706041e-03, 2.990348747628377053e-03, 2.999576959659447286e-03, 3.008799858503744158e-03, 3.018017429437771810e-03, 3.027229657747252702e-03, 3.036436528727409941e-03, 3.045638027682564825e-03, 3.054834139926770886e-03, 3.064024850783516815e-03, 3.073210145585470593e-03, 3.082390009675209808e-03, 3.091564428404294882e-03, 3.100733387134582686e-03, 3.109896871236762003e-03, 3.119054866091515790e-03, 3.128207357089136942e-03, 3.137354329629261137e-03, 3.146495769121594125e-03, 3.155631660984997960e-03, 3.164761990648763852e-03, 3.173886743551304623e-03, 3.183005905140890660e-03, 3.192119460875742724e-03, 3.201227396223809904e-03, 3.210329696662956971e-03, 3.219426347680584468e-03, 3.228517334774263624e-03, 3.237602643451467470e-03, 3.246682259229258585e-03, 3.255756167634969549e-03, 3.264824354205762315e-03, 3.273886804488906638e-03, 3.282943504041365909e-03, 3.291994438430422953e-03, 3.301039593233437604e-03, 3.310078954037523179e-03, 3.319112506440308023e-03, 3.328140236049013500e-03, 3.337162128481748098e-03, 3.346178169366038554e-03, 3.355188344340149544e-03, 3.364192639052112233e-03, 3.373191039160528329e-03, 3.382183530334233103e-03, 3.391170098252050801e-03, 3.400150728603421307e-03, 3.409125407087996388e-03, 3.418094119415882124e-03, 3.427056851307245990e-03, 3.436013588492969548e-03, 3.444964316714329688e-03, 3.453909021722767914e-03, 3.462847689280460200e-03, 3.471780305160088870e-03, 3.480706855144529051e-03, 3.489627325027608914e-03, 3.498541700613171188e-03, 3.507449967716365531e-03, 3.516352112162227355e-03, 3.525248119786914252e-03, 3.534137976436835596e-03, 3.543021667969349902e-03, 3.551899180252512424e-03, 3.560770499164779383e-03, 3.569635610595655022e-03, 3.578494500445293484e-03, 3.587347154624708715e-03, 3.596193559055440529e-03, 3.605033699670137474e-03, 3.613867562412280150e-03, 3.622695133235948311e-03, 3.631516398106385528e-03, 3.640331342999654409e-03, 3.649139953902840426e-03, 3.657942216813693699e-03, 3.666738117741249157e-03, 3.675527642705537709e-03, 3.684310777737295241e-03, 3.693087508878727630e-03, 3.701857822182594814e-03, 3.710621703713438101e-03, 3.719379139546229261e-03, 3.728130115767456024e-03, 3.736874618474764730e-03, 3.745612633776674964e-03, 3.754344147793319854e-03, 3.763069146655636382e-03, 3.771787616506129103e-03, 3.780499543498527966e-03, 3.789204913797589690e-03, 3.797903713579646803e-03, 3.806595929032291492e-03, 3.815281546354544299e-03, 3.823960551756527132e-03, 3.832632931460020105e-03, 3.841298671698259014e-03, 3.849957758715598366e-03, 3.858610178768255138e-03, 3.867255918123457901e-03, 3.875894963060580456e-03, 3.884527299869887200e-03, 3.893152914853556176e-03, 3.901771794325335167e-03, 3.910383924610289288e-03, 3.918989292045461058e-03, 3.927587882979064610e-03, 3.936179683771639723e-03, 3.944764680794723456e-03, 3.953342860432053178e-03, 3.961914209078674053e-03, 3.970478713141710123e-03, 3.979036359039978335e-03, 3.987587133203854099e-03, 3.996131022075799510e-03, 4.004668012109983445e-03, 4.013198089772538300e-03, 4.021721241541278968e-03, 4.030237453905814726e-03, 4.038746713368243993e-03, 4.047249006441932216e-03, 4.055744319652581330e-03, 4.064232639537862860e-03, 4.072713952647182001e-03, 4.081188245542338548e-03, 4.089655504796701167e-03, 4.098115716996356649e-03, 4.106568868738814070e-03, 4.115014946634185274e-03, 4.123453937304297559e-03, 4.131885827383426600e-03, 4.140310603518011952e-03, 4.148728252366425465e-03, 4.157138760599496906e-03, 4.165542114900206913e-03, 4.173938301963908172e-03, 4.182327308497910817e-03, 4.190709121222126014e-03, 4.199083726868759782e-03, 4.207451112182093549e-03, 4.215811263919054877e-03, 4.224164168848830621e-03, 4.232509813753119327e-03, 4.240848185425755666e-03, 4.249179270673316723e-03, 4.257503056314798466e-03, 4.265819529181439675e-03, 4.274128676117334297e-03, 4.282430483978656027e-03, 4.290724939634754653e-03, 4.299012029967012004e-03, 4.307291741869469920e-03, 4.315564062248968165e-03, 4.323828978024881614e-03, 4.332086476129361381e-03, 4.340336543506883790e-03, 4.348579167114946867e-03, 4.356814333923739874e-03, 4.365042030915927337e-03, 4.373262245087160792e-03, 4.381474963445815968e-03, 4.389680173013128101e-03, 4.397877860822883150e-03, 4.406068013921952964e-03, 4.414250619370119200e-03, 4.422425664239699496e-03, 4.430593135616302074e-03, 4.438753020597996542e-03, 4.446905306296432790e-03, 4.455049979835562501e-03, 4.463187028352769321e-03, 4.471316438998087367e-03, 4.479438198934828329e-03, 4.487552295339341211e-03, 4.495658715400675798e-03, 4.503757446321584451e-03, 4.511848475317281788e-03, 4.519931789616587862e-03, 4.528007376461060801e-03, 4.536075223105675083e-03, 4.544135316818635056e-03, 4.552187644881031461e-03, 4.560232194587467668e-03, 4.568268953245679768e-03, 4.576297908176757759e-03, 4.584319046714895735e-03, 4.592332356207481231e-03, 4.600337824015776102e-03, 4.608335437513736907e-03, 4.616325184089145085e-03, 4.624307051142787298e-03, 4.632281026089112019e-03, 4.640247096355997955e-03, 4.648205249384390614e-03, 4.656155472629344011e-03, 4.664097753558707482e-03, 4.672032079654355602e-03, 4.679958438411241893e-03, 4.687876817338182921e-03, 4.695787203957506144e-03, 4.703689585804879045e-03, 4.711583950429799189e-03, 4.719470285395340955e-03, 4.727348578278237068e-03, 4.735218816668651347e-03, 4.743080988170662697e-03, 4.750935080402065615e-03, 4.758781080994075284e-03, 4.766618977592023201e-03, 4.774448757854497620e-03, 4.782270409454543979e-03, 4.790083920078318756e-03, 4.797889277426165000e-03, 4.805686469212254973e-03, 4.813475483164347292e-03, 4.821256307024398419e-03, 4.829028928547834942e-03, 4.836793335504601353e-03, 4.844549515678002113e-03, 4.852297456865418968e-03, 4.860037146878358645e-03, 4.867768573542201327e-03, 4.875491724696447843e-03, 4.883206588194326757e-03, 4.890913151903386775e-03, 4.898611403705214855e-03, 4.906301331495239310e-03, 4.913982923183225944e-03, 4.921656166692965802e-03, 4.929321049962498945e-03, 4.936977560943711998e-03, 4.944625687602966120e-03, 4.952265417920783015e-03, 4.959896739891661056e-03, 4.967519641524636466e-03, 4.975134110842585090e-03, 4.982740135883258897e-03, 4.990337704698066465e-03, 4.997926805353172797e-03, 5.005507425928703083e-03, 5.013079554519386284e-03, 5.020643179234327014e-03, 5.028198288196712371e-03, 5.035744869544406949e-03, 5.043282911429631046e-03, 5.050812402019058678e-03, 5.058333329493618080e-03, 5.065845682048934935e-03, 5.073349447895139815e-03, 5.080844615256580217e-03, 5.088331172372432057e-03, 5.095809107496387415e-03, 5.103278408896440299e-03, 5.110739064855543239e-03, 5.118191063670774615e-03, 5.125634393654447153e-03, 5.133069043132911825e-03, 5.140495000447619506e-03, 5.147912253954313455e-03, 5.155320792023716271e-03, 5.162720603041226312e-03, 5.170111675406763307e-03, 5.177493997535189026e-03, 5.184867557856087834e-03, 5.192232344813879456e-03, 5.199588346867558761e-03, 5.206935552491157200e-03, 5.214273950173573674e-03, 5.221603528418280495e-03, 5.228924275743894109e-03, 5.236236180683817749e-03, 5.243539231786465207e-03, 5.250833417614902618e-03, 5.258118726747426988e-03, 5.265395147777229660e-03, 5.272662669312293098e-03, 5.279921279975903492e-03, 5.287170968405948204e-03, 5.294411723255916698e-03, 5.301643533193795520e-03, 5.308866386902940868e-03, 5.316080273081785421e-03, 5.323285180443661398e-03, 5.330481097717317505e-03, 5.337668013646213773e-03, 5.344845916989579733e-03, 5.352014796521313740e-03, 5.359174641030573644e-03, 5.366325439321878270e-03, 5.373467180214911397e-03, 5.380599852544683086e-03, 5.387723445161194009e-03, 5.394837946930010515e-03, 5.401943346731925485e-03, 5.409039633462875071e-03, 5.416126796034392323e-03, 5.423204823372980952e-03, 5.430273704421051222e-03, 5.437333428135855684e-03, 5.444383983490363489e-03, 5.451425359472935120e-03, 5.458457545087149788e-03, 5.465480529352341466e-03, 5.472494301302904124e-03, 5.479498849989307419e-03, 5.486494164476912738e-03, 5.493480233847048734e-03, 5.500457047196221153e-03, 5.507424593636757286e-03, 5.514382862296511936e-03, 5.521331842318742515e-03, 5.528271522862492418e-03, 5.535201893102380255e-03, 5.542122942228738629e-03, 5.549034659447362600e-03, 5.555937033979684893e-03, 5.562830055063249478e-03, 5.569713711950793900e-03, 5.576587993911066334e-03, 5.583452890228552366e-03, 5.590308390203270299e-03, 5.597154483151310644e-03, 5.603991158404145710e-03, 5.610818405309624460e-03, 5.617636213230843209e-03, 5.624444571547162174e-03, 5.631243469653433517e-03, 5.638032896960651873e-03, 5.644812842895657705e-03, 5.651583296901029757e-03, 5.658344248435401638e-03, 5.665095686973323046e-03, 5.671837602005395940e-03, 5.678569983037895508e-03, 5.685292819593343490e-03, 5.692006101210258379e-03, 5.698709817442947252e-03, 5.705403957861977619e-03, 5.712088512053892057e-03, 5.718763469621349592e-03, 5.725428820182912326e-03, 5.732084553373399324e-03, 5.738730658843813753e-03, 5.745367126260995071e-03, 5.751993945308260005e-03, 5.758611105684733819e-03, 5.765218597106197725e-03, 5.771816409304126108e-03, 5.778404532026579048e-03, 5.784982955037518831e-03, 5.791551668117424917e-03, 5.798110661062943517e-03, 5.804659923686846835e-03, 5.811199445818398222e-03, 5.817729217303156154e-03, 5.824249228002773872e-03, 5.830759467795479031e-03, 5.837259926575728494e-03, 5.843750594254485883e-03, 5.850231460758815658e-03, 5.856702516032443427e-03, 5.863163750035493144e-03, 5.869615152744277198e-03, 5.876056714151870614e-03, 5.882488424267434506e-03, 5.888910273117120737e-03, 5.895322250743047568e-03, 5.901724347204185227e-03, 5.908116552575800803e-03, 5.914498856949836417e-03, 5.920871250434837224e-03, 5.927233723155617487e-03, 5.933586265254044666e-03, 5.939928866888125221e-03, 5.946261518232819065e-03, 5.952584209479418534e-03, 5.958896930836071401e-03, 5.965199672527600472e-03, 5.971492424795281535e-03, 5.977775177897289190e-03, 5.984047922108410612e-03, 5.990310647720249390e-03, 5.996563345040995668e-03, 6.002806004395514622e-03, 6.009038616125839984e-03, 6.015261170590313622e-03, 6.021473658164409534e-03, 6.027676069240131898e-03, 6.033868394226524212e-03, 6.040050623549449854e-03, 6.046222747651336209e-03, 6.052384756992002131e-03, 6.058536642047642265e-03, 6.064678393311680529e-03, 6.070810001294188983e-03, 6.076931456522357070e-03, 6.083042749540334623e-03, 6.089143870909007224e-03, 6.095234811206438549e-03, 6.101315561027601496e-03, 6.107386110984533434e-03, 6.113446451706088143e-03, 6.119496573838330462e-03, 6.125536468044383634e-03, 6.131566125004238484e-03, 6.137585535415179296e-03, 6.143594689991278140e-03, 6.149593579464157286e-03, 6.155582194582075867e-03, 6.161560526110707037e-03, 6.167528564832858683e-03, 6.173486301548256582e-03, 6.179433727074116860e-03, 6.185370832244485063e-03, 6.191297607911036734e-03, 6.197214044942321934e-03, 6.203120134224133012e-03, 6.209015866659644244e-03, 6.214901233169219281e-03, 6.220776224690575083e-03, 6.226640832178453183e-03, 6.232495046605162660e-03, 6.238338858960270489e-03, 6.244172260250489652e-03, 6.249995241500055573e-03, 6.255807793750465910e-03, 6.261609908060719945e-03, 6.267401575506911793e-03, 6.273182787182774237e-03, 6.278953534199427193e-03, 6.284713807685229393e-03, 6.290463598786186043e-03, 6.296202898665484785e-03, 6.301931698504183513e-03, 6.307649989500375975e-03, 6.313357762869954183e-03, 6.319055009846057634e-03, 6.324741721679522609e-03, 6.330417889638738187e-03, 6.336083505009393844e-03, 6.341738559094978189e-03, 6.347383043216426809e-03, 6.353016948712376412e-03, 6.358640266938787519e-03, 6.364252989269501316e-03, 6.369855107095917859e-03, 6.375446611826917145e-03, 6.381027494889158352e-03, 6.386597747727040808e-03, 6.392157361802370055e-03, 6.397706328594912097e-03, 6.403244639601846089e-03, 6.408772286338458232e-03, 6.414289260337355941e-03, 6.419795553149140917e-03, 6.425291156341957251e-03, 6.430776061501904291e-03, 6.436250260232820666e-03, 6.441713744156175869e-03, 6.447166504911408524e-03, 6.452608534155714753e-03, 6.458039823564151391e-03, 6.463460364829486798e-03, 6.468870149662472348e-03, 6.474269169791727063e-03, 6.479657416963584965e-03, 6.485034882942446351e-03, 6.490401559510553149e-03, 6.495757438468077391e-03, 6.501102511633003248e-03, 6.506436770841369892e-03, 6.511760207947248080e-03, 6.517072814822397545e-03, 6.522374583356858532e-03, 6.527665505458329909e-03, 6.532945573052930700e-03, 6.538214778084406459e-03, 6.543473112514704322e-03, 6.548720568323856787e-03, 6.553957137509774412e-03, 6.559182812088606637e-03, 6.564397584094333257e-03, 6.569601445579422751e-03, 6.574794388614073337e-03, 6.579976405286673546e-03, 6.585147487703797882e-03, 6.590307627990163453e-03, 6.595456818288641249e-03, 6.600595050760119098e-03, 6.605722317583797437e-03, 6.610838610957071350e-03, 6.615943923095347554e-03, 6.621038246232498030e-03, 6.626121572620260677e-03, 6.631193894529065908e-03, 6.636255204247144997e-03, 6.641305494081235251e-03, 6.646344756356286840e-03, 6.651372983415422893e-03, 6.656390167620221399e-03, 6.661396301350312743e-03, 6.666391377003988601e-03, 6.671375386997518454e-03, 6.676348323765735060e-03, 6.681310179761640669e-03, 6.686260947456709736e-03, 6.691200619340797844e-03, 6.696129187921988184e-03, 6.701046645726915080e-03, 6.705952985300530668e-03, 6.710848199206292247e-03, 6.715732280025928959e-03, 6.720605220359568421e-03, 6.725467012826117502e-03, 6.730317650062554551e-03, 6.735157124724502724e-03, 6.739985429486120699e-03, 6.744802557039877161e-03, 6.749608500096923765e-03, 6.754403251386694416e-03, 6.759186803657479467e-03, 6.763959149675771720e-03, 6.768720282226816341e-03, 6.773470194114284727e-03, 6.778208878160487012e-03, 6.782936327206336505e-03, 6.787652534111214379e-03, 6.792357491753200395e-03, 6.797051193028946260e-03, 6.801733630853799666e-03, 6.806404798161543208e-03, 6.811064687904776031e-03, 6.815713293054747289e-03, 6.820350606601204360e-03, 6.824976621552735455e-03, 6.829591330936516345e-03, 6.834194727798535013e-03, 6.838786805203266386e-03, 6.843367556234081737e-03, 6.847936973993063066e-03, 6.852495051600867790e-03, 6.857041782197132070e-03, 6.861577158939940850e-03, 6.866101175006572056e-03, 6.870613823592633569e-03, 6.875115097912841249e-03, 6.879604991200451679e-03, 6.884083496707731412e-03, 6.888550607705707166e-03, 6.893006317484140673e-03, 6.897450619351696947e-03, 6.901883506635962499e-03, 6.906304972683197270e-03, 6.910715010858649483e-03, 6.915113614546442022e-03, 6.919500777149612328e-03, 6.923876492089915506e-03, 6.928240752808186888e-03, 6.932593552764185034e-03, 6.936934885436418265e-03, 6.941264744322540176e-03, 6.945583122938887334e-03, 6.949890014821109852e-03, 6.954185413523441932e-03, 6.958469312619374077e-03, 6.962741705701181241e-03, 6.967002586380259370e-03, 6.971251948286984017e-03, 6.975489785070571568e-03, 6.979716090399615269e-03, 6.983930857961331493e-03, 6.988134081462294388e-03, 6.992325754627879038e-03, 6.996505871202683864e-03, 7.000674424950374501e-03, 7.004831409653509457e-03, 7.008976819113944302e-03, 7.013110647152499474e-03, 7.017232887609196196e-03, 7.021343534343076065e-03, 7.025442581232204525e-03, 7.029530022174123628e-03, 7.033605851085137327e-03, 7.037670061900937711e-03, 7.041722648576199083e-03, 7.045763605084913624e-03, 7.049792925420210986e-03, 7.053810603594231655e-03, 7.057816633638631758e-03, 7.061811009603962026e-03, 7.065793725560175209e-03, 7.069764775596320758e-03, 7.073724153820722636e-03, 7.077671854361026159e-03, 7.081607871363937781e-03, 7.085532198995523473e-03, 7.089444831441151472e-03, 7.093345762905432436e-03, 7.097234987612157861e-03, 7.101112499804481358e-03, 7.104978293744922992e-03, 7.108832363715139428e-03, 7.112674704016278687e-03, 7.116505308968591563e-03, 7.120324172911954644e-03, 7.124131290205293517e-03, 7.127926655227012111e-03, 7.131710262374918105e-03, 7.135482106066004353e-03, 7.139242180736835724e-03, 7.142990480843149255e-03, 7.146727000860320783e-03, 7.150451735282905251e-03, 7.154164678624902983e-03, 7.157865825419741472e-03, 7.161555170220343033e-03, 7.165232707598947863e-03, 7.168898432147255417e-03, 7.172552338476411403e-03, 7.176194421217082370e-03, 7.179824675019242340e-03, 7.183443094552425211e-03, 7.187049674505655364e-03, 7.190644409587426851e-03, 7.194227294525619258e-03, 7.197798324067732761e-03, 7.201357492980784911e-03, 7.204904796051110269e-03, 7.208440228084807971e-03, 7.211963783907275952e-03, 7.215475458363691461e-03, 7.218975246318532282e-03, 7.222463142655991333e-03, 7.225939142279699974e-03, 7.229403240112915359e-03, 7.232855431098497018e-03, 7.236295710198767210e-03, 7.239724072395741644e-03, 7.243140512690984627e-03, 7.246545026105694065e-03, 7.249937607680563556e-03, 7.253318252476036523e-03, 7.256686955572117133e-03, 7.260043712068393711e-03, 7.263388517084129817e-03, 7.266721365758291133e-03, 7.270042253249391073e-03, 7.273351174735649509e-03, 7.276648125414835779e-03, 7.279933100504662469e-03, 7.283206095242188670e-03, 7.286467104884425394e-03, 7.289716124707835976e-03, 7.292953150008772353e-03, 7.296178176103235678e-03, 7.299391198326836416e-03, 7.302592212035027668e-03, 7.305781212602931694e-03, 7.308958195425427525e-03, 7.312123155917040797e-03, 7.315276089512133713e-03, 7.318416991664839118e-03, 7.321545857848893966e-03, 7.324662683557948105e-03, 7.327767464305356970e-03, 7.330860195624290879e-03, 7.333940873067597115e-03, 7.337009492208015904e-03, 7.340066048638068524e-03, 7.343110537969995723e-03, 7.346142955835943331e-03, 7.349163297887735015e-03, 7.352171559797213152e-03, 7.355167737255853717e-03, 7.358151825975064661e-03, 7.361123821686072280e-03, 7.364083720139887393e-03, 7.367031517107457128e-03, 7.369967208379455889e-03, 7.372890789766646177e-03, 7.375802257099408482e-03, 7.378701606228080419e-03, 7.381588833022923769e-03, 7.384463933374034277e-03, 7.387326903191461340e-03, 7.390177738405019799e-03, 7.393016434964534526e-03, 7.395842988839720737e-03, 7.398657396020152759e-03, 7.401459652515408882e-03, 7.404249754354804217e-03, 7.407027697587873806e-03, 7.409793478283809715e-03, 7.412547092531899043e-03, 7.415288536441335711e-03, 7.418017806141210917e-03, 7.420734897780684874e-03, 7.423439807528679768e-03, 7.426132531574369811e-03, 7.428813066126617459e-03, 7.431481407414449597e-03, 7.434137551686751354e-03, 7.436781495212466467e-03, 7.439413234280542637e-03, 7.442032765199853468e-03, 7.444640084299292138e-03, 7.447235187927822575e-03, 7.449818072454364101e-03, 7.452388734267825256e-03, 7.454947169777180992e-03, 7.457493375411463135e-03, 7.460027347619645893e-03, 7.462549082870769020e-03, 7.465058577653992458e-03, 7.467555828478382972e-03, 7.470040831873179556e-03, 7.472513584387550575e-03, 7.474974082590924232e-03, 7.477422323072544473e-03, 7.479858302441918551e-03, 7.482282017328496099e-03, 7.484693464381885104e-03, 7.487092640271754765e-03, 7.489479541687807732e-03, 7.491854165339943174e-03, 7.494216507958038204e-03, 7.496566566292194207e-03, 7.498904337112471431e-03, 7.501229817209137916e-03, 7.503543003392592302e-03, 7.505843892493218109e-03, 7.508132481361673438e-03, 7.510408766868651581e-03, 7.512672745905021529e-03, 7.514924415381710014e-03, 7.517163772229850695e-03, 7.519390813400726042e-03, 7.521605535865678004e-03, 7.523807936616308360e-03, 7.525998012664244542e-03, 7.528175761041418917e-03, 7.530341178799809451e-03, 7.532494263011621852e-03, 7.534635010769155129e-03, 7.536763419184959456e-03, 7.538879485391742491e-03, 7.540983206542313001e-03, 7.543074579809819387e-03, 7.545153602387465186e-03, 7.547220271488653057e-03, 7.549274584347033350e-03, 7.551316538216419107e-03, 7.553346130370871929e-03, 7.555363358104571873e-03, 7.557368218731964037e-03, 7.559360709587728197e-03, 7.561340828026676467e-03, 7.563308571423925895e-03, 7.565263937174720663e-03, 7.567206922694644580e-03, 7.569137525419412059e-03, 7.571055742805029437e-03, 7.572961572327687428e-03, 7.574855011483823571e-03, 7.576736057790171668e-03, 7.578604708783599590e-03, 7.580460962021366884e-03, 7.582304815080849816e-03, 7.584136265559757346e-03, 7.585955311075981075e-03, 7.587761949267756573e-03, 7.589556177793515060e-03, 7.591337994331984890e-03, 7.593107396582125627e-03, 7.594864382263236471e-03, 7.596608949114804464e-03, 7.598341094896656281e-03, 7.600060817388802972e-03, 7.601768114391703642e-03, 7.603462983725904623e-03, 7.605145423232392496e-03, 7.606815430772331278e-03, 7.608473004227215945e-03, 7.610118141498914066e-03, 7.611750840509418602e-03, 7.613371099201200927e-03, 7.614978915536868218e-03, 7.616574287499471366e-03, 7.618157213092269925e-03, 7.619727690338855275e-03, 7.621285717283178378e-03, 7.622831291989402326e-03, 7.624364412542090561e-03, 7.625885077046078500e-03, 7.627393283626561146e-03, 7.628889030428963845e-03, 7.630372315619142649e-03, 7.631843137383219518e-03, 7.633301493927602266e-03, 7.634747383479155436e-03, 7.636180804284897587e-03, 7.637601754612356048e-03, 7.639010232749272010e-03, 7.640406237003732372e-03, 7.641789765704223511e-03, 7.643160817199531540e-03, 7.644519389858774397e-03, 7.645865482071378429e-03, 7.647199092247218034e-03, 7.648520218816423979e-03, 7.649828860229522173e-03, 7.651125014957325249e-03, 7.652408681491085218e-03, 7.653679858342310460e-03, 7.654938544042910568e-03, 7.656184737145167729e-03, 7.657418436221700292e-03, 7.658639639865463637e-03, 7.659848346689800483e-03, 7.661044555328393180e-03, 7.662228264435310549e-03, 7.663399472684946298e-03, 7.664558178772075403e-03, 7.665704381411851502e-03, 7.666838079339790418e-03, 7.667959271311730260e-03, 7.669067956103917290e-03, 7.670164132513003323e-03, 7.671247799355910418e-03, 7.672318955470036443e-03, 7.673377599713054713e-03, 7.674423730963087463e-03, 7.675457348118578348e-03, 7.676478450098396522e-03, 7.677487035841709141e-03, 7.678483104308136617e-03, 7.679466654477668484e-03, 7.680437685350583604e-03, 7.681396195947667004e-03, 7.682342185309953136e-03, 7.683275652498950531e-03, 7.684196596596528164e-03, 7.685105016704905055e-03, 7.686000911946698835e-03, 7.686884281464899729e-03, 7.687755124422878360e-03, 7.688613440004422178e-03, 7.689459227413643523e-03, 7.690292485875093245e-03, 7.691113214633628868e-03, 7.691921412954580255e-03, 7.692717080123603023e-03, 7.693500215446757474e-03, 7.694270818250464362e-03, 7.695028887881569073e-03, 7.695774423707247951e-03, 7.696507425115109782e-03, 7.697227891513126405e-03, 7.697935822329647453e-03, 7.698631217013382141e-03, 7.699314075033493812e-03, 7.699984395879475030e-03, 7.700642179061216105e-03, 7.701287424108971269e-03, 7.701920130573410711e-03, 7.702540298025559000e-03, 7.703147926056852328e-03, 7.703743014279083867e-03, 7.704325562324399433e-03, 7.704895569845416313e-03, 7.705453036515057599e-03, 7.705997962026642396e-03, 7.706530346093897962e-03, 7.707050188450858229e-03, 7.707557488852036405e-03, 7.708052247072258445e-03, 7.708534462906747181e-03, 7.709004136171081559e-03, 7.709461266701242606e-03, 7.709905854353582208e-03, 7.710337899004817905e-03, 7.710757400552038093e-03, 7.711164358912741060e-03, 7.711558774024743906e-03, 7.711940645846277961e-03, 7.712309974355918522e-03, 7.712666759552625623e-03, 7.713011001455701530e-03, 7.713342700104866209e-03, 7.713661855560175785e-03, 7.713968467902026886e-03, 7.714262537231245977e-03, 7.714544063668960124e-03, 7.714813047356701946e-03, 7.715069488456312470e-03, 7.715313387150074705e-03, 7.715544743640543636e-03, 7.715763558150707559e-03, 7.715969830923842358e-03, 7.716163562223616462e-03, 7.716344752334051808e-03, 7.716513401559505630e-03, 7.716669510224709490e-03, 7.716813078674723304e-03, 7.716944107274972646e-03, 7.717062596411189759e-03, 7.717168546489497696e-03, 7.717261957936349601e-03, 7.717342831198504421e-03, 7.717411166743099772e-03, 7.717466965057629379e-03, 7.717510226649845935e-03, 7.717540952047905085e-03, 7.717559141800274351e-03, 7.717564796475739203e-03, 7.717557916663438621e-03, 7.717538502972808717e-03, 7.717506556033616565e-03, 7.717462076495968867e-03, 7.717405065030282472e-03, 7.717335522327308656e-03, 7.717253449098051589e-03, 7.717158846073933140e-03, 7.717051714006589042e-03, 7.716932053668018945e-03, 7.716799865850539585e-03, 7.716655151366723191e-03, 7.716497911049474689e-03, 7.716328145752010884e-03, 7.716145856347833565e-03, 7.715951043730714769e-03, 7.715743708814787848e-03, 7.715523852534395682e-03, 7.715291475844239001e-03, 7.715046579719253214e-03, 7.714789165154694282e-03, 7.714519233166083206e-03, 7.714236784789193883e-03, 7.713941821080138109e-03, 7.713634343115255421e-03, 7.713314351991132183e-03, 7.712981848824681380e-03, 7.712636834753072365e-03, 7.712279310933681416e-03, 7.711909278544220106e-03, 7.711526738782560966e-03, 7.711131692866933507e-03, 7.710724142035740337e-03, 7.710304087547683802e-03, 7.709871530681675772e-03, 7.709426472736885354e-03, 7.708968915032704192e-03, 7.708498858908781164e-03, 7.708016305724985952e-03, 7.707521256861415981e-03, 7.707013713718394686e-03, 7.706493677716452426e-03, 7.705961150296371590e-03, 7.705416132919146698e-03, 7.704858627065945369e-03, 7.704288634238213272e-03, 7.703706155957493716e-03, 7.703111193765652294e-03, 7.702503749224669585e-03, 7.701883823916768658e-03, 7.701251419444346547e-03, 7.700606537429953435e-03, 7.699949179516415824e-03, 7.699279347366627495e-03, 7.698597042663773288e-03, 7.697902267111112265e-03, 7.697195022432138170e-03, 7.696475310370464069e-03, 7.695743132689896945e-03, 7.694998491174439431e-03, 7.694241387628146696e-03, 7.693471823875309458e-03, 7.692689801760315207e-03, 7.691895323147753157e-03, 7.691088389922278064e-03, 7.690269003988742073e-03, 7.689437167272131397e-03, 7.688592881717454426e-03, 7.687736149289986325e-03, 7.686866971975007089e-03, 7.685985351777999304e-03, 7.685091290724472939e-03, 7.684184790860093713e-03, 7.683265854250635393e-03, 7.682334482981948570e-03, 7.681390679159983206e-03, 7.680434444910729658e-03, 7.679465782380385207e-03, 7.678484693735077374e-03, 7.677491181161126728e-03, 7.676485246864869945e-03, 7.675466893072702308e-03, 7.674436122031133220e-03, 7.673392936006632678e-03, 7.672337337285821228e-03, 7.671269328175331186e-03, 7.670188911001814443e-03, 7.669096088112022265e-03, 7.667990861872648299e-03, 7.666873234670515055e-03, 7.665743208912365741e-03, 7.664600787025067224e-03, 7.663445971455405334e-03, 7.662278764670245323e-03, 7.661099169156439063e-03, 7.659907187420779071e-03, 7.658702821990152898e-03, 7.657486075411384409e-03, 7.656256950251245051e-03, 7.655015449096550136e-03, 7.653761574554070364e-03, 7.652495329250529228e-03, 7.651216715832569182e-03, 7.649925736966925113e-03, 7.648622395340154596e-03, 7.647306693658802688e-03, 7.645978634649380247e-03, 7.644638221058311887e-03, 7.643285455651987158e-03, 7.641920341216643445e-03, 7.640542880558549854e-03, 7.639153076503754809e-03, 7.637750931898360136e-03, 7.636336449608258255e-03, 7.634909632519298710e-03, 7.633470483537219652e-03, 7.632019005587621814e-03, 7.630555201616011883e-03, 7.629079074587743516e-03, 7.627590627488063310e-03, 7.626089863322090857e-03, 7.624576785114749351e-03, 7.623051395910905234e-03, 7.621513698775189520e-03, 7.619963696792099277e-03, 7.618401393065979410e-03, 7.616826790720988838e-03, 7.615239892901149062e-03, 7.613640702770194113e-03, 7.612029223511788262e-03, 7.610405458329327390e-03, 7.608769410446058687e-03, 7.607121083104965292e-03, 7.605460479568830479e-03, 7.603787603120248928e-03, 7.602102457061562547e-03, 7.600405044714873479e-03, 7.598695369422032823e-03, 7.596973434544729981e-03, 7.595239243464287950e-03, 7.593492799581837670e-03, 7.591734106318238223e-03, 7.589963167114050814e-03, 7.588179985429606422e-03, 7.586384564744888710e-03, 7.584576908559629432e-03, 7.582757020393284149e-03, 7.580924903784923806e-03, 7.579080562293424687e-03, 7.577223999497201268e-03, 7.575355218994523666e-03, 7.573474224403150754e-03, 7.571581019360592961e-03, 7.569675607524016872e-03, 7.567757992570199252e-03, 7.565828178195631998e-03, 7.563886168116337391e-03, 7.561931966068075398e-03, 7.559965575806113815e-03, 7.557987001105401746e-03, 7.555996245760510620e-03, 7.553993313585579544e-03, 7.551978208414314442e-03, 7.549950934100023610e-03, 7.547911494515658487e-03, 7.545859893553647987e-03, 7.543796135125974828e-03, 7.541720223164325582e-03, 7.539632161619751541e-03, 7.537531954462989639e-03, 7.535419605684168416e-03, 7.533295119293088177e-03, 7.531158499318980730e-03, 7.529009749810586585e-03, 7.526848874836204392e-03, 7.524675878483567774e-03, 7.522490764859991047e-03, 7.520293538092105538e-03, 7.518084202326221280e-03, 7.515862761727934958e-03, 7.513629220482415279e-03, 7.511383582794255512e-03, 7.509125852887428391e-03, 7.506856035005464792e-03, 7.504574133411201324e-03, 7.502280152386942534e-03, 7.499974096234370696e-03, 7.497655969274696734e-03, 7.495325775848389604e-03, 7.492983520315305533e-03, 7.490629207054790364e-03, 7.488262840465509558e-03, 7.485884424965429107e-03, 7.483493964991904009e-03, 7.481091465001693877e-03, 7.478676929470901361e-03, 7.476250362894807343e-03, 7.473811769788232633e-03, 7.471361154685099079e-03, 7.468898522138824221e-03, 7.466423876722001231e-03, 7.463937223026529885e-03, 7.461438565663661669e-03, 7.458927909263829772e-03, 7.456405258476800010e-03, 7.453870617971506025e-03, 7.451323992436250515e-03, 7.448765386578486657e-03, 7.446194805124902241e-03, 7.443612252821477787e-03, 7.441017734433325211e-03, 7.438411254744800583e-03, 7.435792818559411321e-03, 7.433162430699941960e-03, 7.430520096008260723e-03, 7.427865819345447901e-03, 7.425199605591770689e-03, 7.422521459646574775e-03, 7.419831386428461274e-03, 7.417129390874999638e-03, 7.414415477943049441e-03, 7.411689652608475024e-03, 7.408951919866354520e-03, 7.406202284730728329e-03, 7.403440752234817686e-03, 7.400667327430975224e-03, 7.397882015390412624e-03, 7.395084821203637762e-03, 7.392275749980116439e-03, 7.389454806848346977e-03, 7.386621996955855876e-03, 7.383777325469185679e-03, 7.380920797573973027e-03, 7.378052418474807285e-03, 7.375172193395201047e-03, 7.372280127577816519e-03, 7.369376226284135058e-03, 7.366460494794759006e-03, 7.363532938409057815e-03, 7.360593562445536669e-03, 7.357642372241529442e-03, 7.354679373153367831e-03, 7.351704570556244316e-03, 7.348717969844272002e-03, 7.345719576430567027e-03, 7.342709395746910284e-03, 7.339687433244227940e-03, 7.336653694392124801e-03, 7.333608184679216505e-03, 7.330550909612843294e-03, 7.327481874719220939e-03, 7.324401085543468491e-03, 7.321308547649484251e-03, 7.318204266619927553e-03, 7.315088248056285554e-03, 7.311960497578943487e-03, 7.308821020826940934e-03, 7.305669823458122748e-03, 7.302506911149153797e-03, 7.299332289595343755e-03, 7.296145964510875222e-03, 7.292947941628578207e-03, 7.289738226699978701e-03, 7.286516825495483428e-03, 7.283283743803898452e-03, 7.280038987433052819e-03, 7.276782562209202672e-03, 7.273514473977490957e-03, 7.270234728601521548e-03, 7.266943331963630730e-03, 7.263640289964856840e-03, 7.260325608524788484e-03, 7.256999293581642592e-03, 7.253661351092244476e-03, 7.250311787032062520e-03, 7.246950607395108435e-03, 7.243577818193950267e-03, 7.240193425459806945e-03, 7.236797435242343576e-03, 7.233389853609912580e-03, 7.229970686649185053e-03, 7.226539940465593996e-03, 7.223097621182898026e-03, 7.219643734943435517e-03, 7.216178287908102049e-03, 7.212701286256120552e-03, 7.209212736185361368e-03, 7.205712643911924183e-03, 7.202201015670604660e-03, 7.198677857714425206e-03, 7.195143176315005329e-03, 7.191596977762250258e-03, 7.188039268364502729e-03, 7.184470054448541254e-03, 7.180889342359490779e-03, 7.177297138460813145e-03, 7.173693449134412904e-03, 7.170078280780463852e-03, 7.166451639817494890e-03, 7.162813532682338856e-03, 7.159163965830222728e-03, 7.155502945734614102e-03, 7.151830478887229864e-03, 7.148146571798155886e-03, 7.144451230995660547e-03, 7.140744463026427180e-03, 7.137026274455066620e-03, 7.133296671864794609e-03, 7.129555661856771739e-03, 7.125803251050541465e-03, 7.122039446083750815e-03, 7.118264253612201567e-03, 7.114477680310011577e-03, 7.110679732869344162e-03, 7.106870418000532999e-03, 7.103049742432040493e-03, 7.099217712910543647e-03, 7.095374336200743239e-03, 7.091519619085406324e-03, 7.087653568365568334e-03, 7.083776190860171379e-03, 7.079887493406312321e-03, 7.075987482859071032e-03, 7.072076166091654376e-03, 7.068153549995351108e-03, 7.064219641479224827e-03, 7.060274447470637864e-03, 7.056317974914749075e-03, 7.052350230774830434e-03, 7.048371222032038912e-03, 7.044380955685478930e-03, 7.040379438752329862e-03, 7.036366678267591893e-03, 7.032342681284178831e-03, 7.028307454872938058e-03, 7.024261006122711239e-03, 7.020203342140094067e-03, 7.016134470049559431e-03, 7.012054396993590982e-03, 7.007963130132345737e-03, 7.003860676643911681e-03, 6.999747043724111745e-03, 6.995622238586772686e-03, 6.991486268463313961e-03, 6.987339140602978442e-03, 6.983180862272915686e-03, 6.979011440757841925e-03, 6.974830883360485893e-03, 6.970639197400928765e-03, 6.966436390217373500e-03, 6.962222469165464840e-03, 6.957997441618605020e-03, 6.953761314968014487e-03, 6.949514096622369345e-03, 6.945255794008239371e-03, 6.940986414569544176e-03, 6.936705965768094444e-03, 6.932414455083285749e-03, 6.928111890012001416e-03, 6.923798278068788586e-03, 6.919473626785738532e-03, 6.915137943712612416e-03, 6.910791236416623587e-03, 6.906433512482488754e-03, 6.902064779512643959e-03, 6.897685045126806559e-03, 6.893294316962444469e-03, 6.888892602674193295e-03, 6.884479909934469559e-03, 6.880056246433020536e-03, 6.875621619876967627e-03, 6.871176037991064828e-03, 6.866719508517257244e-03, 6.862252039215192834e-03, 6.857773637861518112e-03, 6.853284312250616274e-03, 6.848784070194027795e-03, 6.844272919520812126e-03, 6.839750868077235438e-03, 6.835217923726869503e-03, 6.830674094350784251e-03, 6.826119387847170462e-03, 6.821553812131567890e-03, 6.816977375136728211e-03, 6.812390084812844880e-03, 6.807791949127187103e-03, 6.803182976064232543e-03, 6.798563173625859005e-03, 6.793932549830979280e-03, 6.789291112715770127e-03, 6.784638870333499668e-03, 6.779975830754733819e-03, 6.775302002067194046e-03, 6.770617392375504959e-03, 6.765922009801709526e-03, 6.761215862484683606e-03, 6.756498958580671975e-03, 6.751771306262793933e-03, 6.747032913721234121e-03, 6.742283789163400383e-03, 6.737523940813574218e-03, 6.732753376913109405e-03, 6.727972105720329658e-03, 6.723180135510697757e-03, 6.718377474576469471e-03, 6.713564131226931221e-03, 6.708740113788407879e-03, 6.703905430604060675e-03, 6.699060090033991284e-03, 6.694204100455175034e-03, 6.689337470261604024e-03, 6.684460207864058139e-03, 6.679572321690112856e-03, 6.674673820184386444e-03, 6.669764711808130568e-03, 6.664845005039629275e-03, 6.659914708373682914e-03, 6.654973830322187534e-03, 6.650022379413583241e-03, 6.645060364193272270e-03, 6.640087793223261627e-03, 6.635104675082270642e-03, 6.630111018365962561e-03, 6.625106831686337384e-03, 6.620092123672373721e-03, 6.615066902969705259e-03, 6.610031178240513214e-03, 6.604984958163665973e-03, 6.599928251434589860e-03, 6.594861066765530209e-03, 6.589783412885140239e-03, 6.584695298538672734e-03, 6.579596732488107551e-03, 6.574487723511729213e-03, 6.569368280404709777e-03, 6.564238411978283103e-03, 6.559098127060633034e-03, 6.553947434496135323e-03, 6.548786343145869375e-03, 6.543614861887228802e-03, 6.538432999614005557e-03, 6.533240765236737746e-03, 6.528038167681906451e-03, 6.522825215892815234e-03, 6.517601918828898853e-03, 6.512368285466168215e-03, 6.507124324796798379e-03, 6.501870045829348868e-03, 6.496605457588866886e-03, 6.491330569116529961e-03, 6.486045389469857585e-03, 6.480749927722611464e-03, 6.475444192964994149e-03, 6.470128194303237899e-03, 6.464801940859866633e-03, 6.459465441773779189e-03, 6.454118706199826923e-03, 6.448761743309289023e-03, 6.443394562289458775e-03, 6.438017172343748519e-03, 6.432629582691965463e-03, 6.427231802569635145e-03, 6.421823841228799408e-03, 6.416405707937296483e-03, 6.410977411979271873e-03, 6.405538962654739460e-03, 6.400090369279799220e-03, 6.394631641186715280e-03, 6.389162787723639235e-03, 6.383683818254701214e-03, 6.378194742160031572e-03, 6.372695568835843281e-03, 6.367186307694147444e-03, 6.361666968162911148e-03, 6.356137559686150275e-03, 6.350598091723579086e-03, 6.345048573751062120e-03, 6.339489015259935911e-03, 6.333919425757819979e-03, 6.328339814767901250e-03, 6.322750191829202074e-03, 6.317150566496747624e-03, 6.311540948341042880e-03, 6.305921346948752636e-03, 6.300291771921805520e-03, 6.294652232878334211e-03, 6.289002739451859253e-03, 6.283343301291890136e-03, 6.277673928063401410e-03, 6.271994629447057330e-03, 6.266305415139372323e-03, 6.260606294852298984e-03, 6.254897278313413696e-03, 6.249178375266114388e-03, 6.243449595469137414e-03, 6.237710948696940060e-03, 6.231962444739403036e-03, 6.226204093402201711e-03, 6.220435904506257073e-03, 6.214657887888092209e-03, 6.208870053399852262e-03, 6.203072410908913245e-03, 6.197264970298423277e-03, 6.191447741466566193e-03, 6.185620734327310945e-03, 6.179783958809809651e-03, 6.173937424858784440e-03, 6.168081142434166629e-03, 6.162215121511266727e-03, 6.156339372080862037e-03, 6.150453904148944252e-03, 6.144558727736806197e-03, 6.138653852881001058e-03, 6.132739289633521926e-03, 6.126815048061432303e-03, 6.120881138247046514e-03, 6.114937570288065012e-03, 6.108984354297227436e-03, 6.103021500402493887e-03, 6.097049018746964269e-03, 6.091066919488954609e-03, 6.085075212802048238e-03, 6.079073908874531133e-03, 6.073063017910231530e-03, 6.067042550127747964e-03, 6.061012515761005255e-03, 6.054972925058753168e-03, 6.048923788284833562e-03, 6.042865115718212485e-03, 6.036796917652713021e-03, 6.030719204397216524e-03, 6.024631986275411945e-03, 6.018535273626233854e-03, 6.012429076803278705e-03, 6.006313406175078050e-03, 6.000188272125233854e-03, 5.994053685052020373e-03, 5.987909655368674720e-03, 5.981756193503134054e-03, 5.975593309898433701e-03, 5.969421015012161581e-03, 5.963239319316686327e-03, 5.957048233299374988e-03, 5.950847767462050068e-03, 5.944637932321607081e-03, 5.938418738409210508e-03, 5.932190196271145549e-03, 5.925952316468139844e-03, 5.919705109575563833e-03, 5.913448586183655403e-03, 5.907182756896973454e-03, 5.900907632335044076e-03, 5.894623223131511408e-03, 5.888329539935037958e-03, 5.882026593408530915e-03, 5.875714394229679914e-03, 5.869392953090499937e-03, 5.863062280697520397e-03, 5.856722387771899629e-03, 5.850373285049121318e-03, 5.844014983279059543e-03, 5.837647493226250268e-03, 5.831270825669363118e-03, 5.824884991401789447e-03, 5.818490001230814876e-03, 5.812085865978550842e-03, 5.805672596481179989e-03, 5.799250203589193832e-03, 5.792818698167601782e-03, 5.786378091095399460e-03, 5.779928393266205340e-03, 5.773469615587392516e-03, 5.767001768981031527e-03, 5.760524864383065498e-03, 5.754038912743903410e-03, 5.747543925027912698e-03, 5.741039912213608334e-03, 5.734526885293848852e-03, 5.728004855275408737e-03, 5.721473833179203938e-03, 5.714933830040175647e-03, 5.708384856907545296e-03, 5.701826924844322769e-03, 5.695260044927568342e-03, 5.688684228248579167e-03, 5.682099485912355842e-03, 5.675505829038011811e-03, 5.668903268758480191e-03, 5.662291816220786124e-03, 5.655671482585945299e-03, 5.649042279028395827e-03, 5.642404216736994840e-03, 5.635757306914075671e-03, 5.629101560776074084e-03, 5.622436989553058172e-03, 5.615763604488862790e-03, 5.609081416841335023e-03, 5.602390437881845861e-03, 5.595690678895597243e-03, 5.588982151181432108e-03, 5.582264866052089394e-03, 5.575538834833817202e-03, 5.568804068866486413e-03, 5.562060579503844832e-03, 5.555308378113055744e-03, 5.548547476074961599e-03, 5.541777884783883647e-03, 5.534999615647957609e-03, 5.528212680088674842e-03, 5.521417089540994229e-03, 5.514612855453650091e-03, 5.507799989288558046e-03, 5.500978502521495887e-03, 5.494148406641128669e-03, 5.487309713150111991e-03, 5.480462433564125754e-03, 5.473606579412553311e-03, 5.466742162237941093e-03, 5.459869193596130453e-03, 5.452987685056689612e-03, 5.446097648201894507e-03, 5.439199094627829474e-03, 5.432292035943741930e-03, 5.425376483772011149e-03, 5.418452449748306990e-03, 5.411519945521476270e-03, 5.404578982753741392e-03, 5.397629573120350799e-03, 5.390671728309644889e-03, 5.383705460023369138e-03, 5.376730779976081689e-03, 5.369747699895808211e-03, 5.362756231523122495e-03, 5.355756386612229789e-03, 5.348748176929957188e-03, 5.341731614256472679e-03, 5.334706710384721356e-03, 5.327673477120643125e-03, 5.320631926283413832e-03, 5.313582069704643820e-03, 5.306523919229403155e-03, 5.299457486715272725e-03, 5.292382784033028593e-03, 5.285299823066093826e-03, 5.278208615710697216e-03, 5.271109173876161250e-03, 5.264001509484370414e-03, 5.256885634470057425e-03, 5.249761560780667052e-03, 5.242629300376623266e-03, 5.235488865230781934e-03, 5.228340267328789905e-03, 5.221183518669139656e-03, 5.214018631262728673e-03, 5.206845617133452724e-03, 5.199664488317315945e-03, 5.192475256863355454e-03, 5.185277934833217202e-03, 5.178072534300658114e-03, 5.170859067352490644e-03, 5.163637546087692862e-03, 5.156407982618006064e-03, 5.149170389067495891e-03, 5.141924777572623451e-03, 5.134671160282561903e-03, 5.127409549358652625e-03, 5.120139956974739150e-03, 5.112862395316945981e-03, 5.105576876583992584e-03, 5.098283412986737151e-03, 5.090982016748308442e-03, 5.083672700104417165e-03, 5.076355475302698518e-03, 5.069030354603470262e-03, 5.061697350278711836e-03, 5.054356474613188460e-03, 5.047007739903544739e-03, 5.039651158458613445e-03, 5.032286742599579449e-03, 5.024914504659475784e-03, 5.017534456983873195e-03, 5.010146611929816758e-03, 5.002750981867039315e-03, 4.995347579176882477e-03, 4.987936416253081588e-03, 4.980517505501122141e-03, 4.973090859338477436e-03, 4.965656490194832358e-03, 4.958214410511587247e-03, 4.950764632742071271e-03, 4.943307169351733241e-03, 4.935842032817727015e-03, 4.928369235629095381e-03, 4.920888790286664233e-03, 4.913400709303353091e-03, 4.905905005203601774e-03, 4.898401690523653158e-03, 4.890890777811749204e-03, 4.883372279627551556e-03, 4.875846208542848441e-03, 4.868312577140557207e-03, 4.860771398015825868e-03, 4.853222683775090286e-03, 4.845666447036707340e-03, 4.838102700430424973e-03, 4.830531456597580812e-03, 4.822952728191332895e-03, 4.815366527876145317e-03, 4.807772868328077931e-03, 4.800171762234643237e-03, 4.792563222295070056e-03, 4.784947261219821280e-03, 4.777323891730784686e-03, 4.769693126561539223e-03, 4.762054978456812040e-03, 4.754409460172800278e-03, 4.746756584476969840e-03, 4.739096364148372847e-03, 4.731428811977142837e-03, 4.723753940764708996e-03, 4.716071763324019075e-03, 4.708382292478938309e-03, 4.700685541064903404e-03, 4.692981521928307580e-03, 4.685270247926759911e-03, 4.677551731929244054e-03, 4.669825986815681097e-03, 4.662093025477176758e-03, 4.654352860815856585e-03, 4.646605505745203361e-03, 4.638850973189488983e-03, 4.631089276084012982e-03, 4.623320427375402636e-03, 4.615544440020947700e-03, 4.607761326989073987e-03, 4.599971101259020707e-03, 4.592173775821235988e-03, 4.584369363676824363e-03, 4.576557877837787031e-03, 4.568739331327237828e-03, 4.560913737178774394e-03, 4.553081108437289151e-03, 4.545241458157828728e-03, 4.537394799406878516e-03, 4.529541145261275006e-03, 4.521680508808635125e-03, 4.513812903147546192e-03, 4.505938341386918865e-03, 4.498056836646796390e-03, 4.490168402057238307e-03, 4.482273050759559042e-03, 4.474370795905238500e-03, 4.466461650656690548e-03, 4.458545628186631575e-03, 4.450622741678310346e-03, 4.442693004325762134e-03, 4.434756429333251010e-03, 4.426813029915525714e-03, 4.418862819298043434e-03, 4.410905810716342704e-03, 4.402942017416816220e-03, 4.394971452655603225e-03, 4.386994129699864527e-03, 4.379010061826717377e-03, 4.371019262323595431e-03, 4.363021744488552317e-03, 4.355017521629486223e-03, 4.347006607065045415e-03, 4.338989014123462509e-03, 4.330964756143831224e-03, 4.322933846474953656e-03, 4.314896298476179892e-03, 4.306852125516731460e-03, 4.298801340975939855e-03, 4.290743958243499814e-03, 4.282679990718954097e-03, 4.274609451811944155e-03, 4.266532354942067021e-03, 4.258448713539216175e-03, 4.250358541042986542e-03, 4.242261850902939897e-03, 4.234158656578862479e-03, 4.226048971540181248e-03, 4.217932809266307370e-03, 4.209810183246453195e-03, 4.201681106979850838e-03, 4.193545593975676715e-03, 4.185403657752338573e-03, 4.177255311838701940e-03, 4.169100569772909645e-03, 4.160939445103242242e-03, 4.152771951387398963e-03, 4.144598102192792628e-03, 4.136417911096764745e-03, 4.128231391686071165e-03, 4.120038557557145764e-03, 4.111839422315977273e-03, 4.103633999578388571e-03, 4.095422302969485909e-03, 4.087204346123927794e-03, 4.078980142686169583e-03, 4.070749706309861535e-03, 4.062513050658249532e-03, 4.054270189403904462e-03, 4.046021136229115134e-03, 4.037765904825301941e-03, 4.029504508893263191e-03, 4.021236962143412766e-03, 4.012963278295158219e-03, 4.004683471077667527e-03, 3.996397554228748455e-03, 3.988105541496147002e-03, 3.979807446636343497e-03, 3.971503283415472006e-03, 3.963193065608516287e-03, 3.954876806999705306e-03, 3.946554521382749162e-03, 3.938226222559855494e-03, 3.929891924342883945e-03, 3.921551640552689566e-03, 3.913205385019022202e-03, 3.904853171580737262e-03, 3.896495014085627883e-03, 3.888130926390758000e-03, 3.879760922361870801e-03, 3.871385015873681900e-03, 3.863003220810071886e-03, 3.854615551063499557e-03, 3.846222020535714024e-03, 3.837822643136711270e-03, 3.829417432785945426e-03, 3.821006403411235028e-03, 3.812589568949536697e-03, 3.804166943346293326e-03, 3.795738540555712495e-03, 3.787304374541057041e-03, 3.778864459273647593e-03, 3.770418808734149300e-03, 3.761967436911344085e-03, 3.753510357803096879e-03, 3.745047585415536406e-03, 3.736579133763376533e-03, 3.728105016870194265e-03, 3.719625248767783558e-03, 3.711139843496555173e-03, 3.702648815105325907e-03, 3.694152177651626075e-03, 3.685649945201180822e-03, 3.677142131828089241e-03, 3.668628751615157432e-03, 3.660109818653172961e-03, 3.651585347041746196e-03, 3.643055350888125057e-03, 3.634519844308464840e-03, 3.625978841427164243e-03, 3.617432356376324137e-03, 3.608880403296925009e-03, 3.600322996337676842e-03, 3.591760149655885605e-03, 3.583191877416696917e-03, 3.574618193793398322e-03, 3.566039112967678629e-03, 3.557454649129032469e-03, 3.548864816475115480e-03, 3.540269629211539176e-03, 3.531669101552193605e-03, 3.523063247718703078e-03, 3.514452081940652988e-03, 3.505835618455860423e-03, 3.497213871509702830e-03, 3.488586855355911218e-03, 3.479954584255451257e-03, 3.471317072477783996e-03, 3.462674334299846272e-03, 3.454026384006373372e-03, 3.445373235890159674e-03, 3.436714904251381240e-03, 3.428051403398442356e-03, 3.419382747646779880e-03, 3.410708951320192469e-03, 3.402030028749669643e-03, 3.393345994274197999e-03, 3.384656862240142776e-03, 3.375962647001430877e-03, 3.367263362919863112e-03, 3.358559024364474090e-03, 3.349849645711860079e-03, 3.341135241346379799e-03, 3.332415825659582401e-03, 3.323691413050579996e-03, 3.314962017925805228e-03, 3.306227654699374699e-03, 3.297488337792526918e-03, 3.288744081633826130e-03, 3.279994900659484978e-03, 3.271240809312618136e-03, 3.262481822044135688e-03, 3.253717953311504978e-03, 3.244949217580122766e-03, 3.236175629322121747e-03, 3.227397203017199311e-03, 3.218613953151950105e-03, 3.209825894220089387e-03, 3.201033040722750089e-03, 3.192235407167874368e-03, 3.183433008070573559e-03, 3.174625857952899626e-03, 3.165813971344229403e-03, 3.156997362780642694e-03, 3.148176046805196363e-03, 3.139350037968201019e-03, 3.130519350826576567e-03, 3.121683999944271145e-03, 3.112843999892000481e-03, 3.103999365247646445e-03, 3.095150110595608264e-03, 3.086296250527094387e-03, 3.077437799640409585e-03, 3.068574772540210317e-03, 3.059707183838290996e-03, 3.050835048152857141e-03, 3.041958380108804663e-03, 3.033077194337988752e-03, 3.024191505478603277e-03, 3.015301328175554185e-03, 3.006406677080262612e-03, 2.997507566850994912e-03, 2.988604012152254637e-03, 2.979696027655087849e-03, 2.970783628037304298e-03, 2.961866827982924041e-03, 2.952945642182486664e-03, 2.944020085332852647e-03, 2.935090172137602357e-03, 2.926155917306362108e-03, 2.917217335555138957e-03, 2.908274441606533214e-03, 2.899327250189074039e-03, 2.890375776038051677e-03, 2.881420033894321799e-03, 2.872460038505651216e-03, 2.863495804625633672e-03, 2.854527347014028122e-03, 2.845554680437047557e-03, 2.836577819666649507e-03, 2.827596779481388219e-03, 2.818611574665212931e-03, 2.809622220008814453e-03, 2.800628730308436440e-03, 2.791631120366719777e-03, 2.782629404991999143e-03, 2.773623598998564525e-03, 2.764613717206948311e-03, 2.755599774443297321e-03, 2.746581785539643859e-03, 2.737559765334184134e-03, 2.728533728670554017e-03, 2.719503690398707672e-03, 2.710469665373685041e-03, 2.701431668457007426e-03, 2.692389714515516959e-03, 2.683343818421784696e-03, 2.674293995054380368e-03, 2.665240259297142495e-03, 2.656182626040040542e-03, 2.647121110177971890e-03, 2.638055726612137473e-03, 2.628986490248795809e-03, 2.619913416000165928e-03, 2.610836518783687509e-03, 2.601755813522278922e-03, 2.592671315144661620e-03, 2.583583038584677093e-03, 2.574490998781716212e-03, 2.565395210680449910e-03, 2.556295689231229476e-03, 2.547192449389478093e-03, 2.538085506115906383e-03, 2.528974874376864555e-03, 2.519860569143653282e-03, 2.510742605392937872e-03, 2.501620998106512776e-03, 2.492495762271563966e-03, 2.483366912880580896e-03, 2.474234464930579348e-03, 2.465098433424415918e-03, 2.455958833369559832e-03, 2.446815679778952500e-03, 2.437668987670290211e-03, 2.428518772066299083e-03, 2.419365047995026934e-03, 2.410207830489188418e-03, 2.401047134586557514e-03, 2.391882975329741139e-03, 2.382715367766565558e-03, 2.373544326949417194e-03, 2.364369867935554002e-03, 2.355192005787388240e-03, 2.346010755571803410e-03, 2.336826132360594888e-03, 2.327638151230199733e-03, 2.318446827262112594e-03, 2.309252175542216099e-03, 2.300054211161084872e-03, 2.290852949214268290e-03, 2.281648404801537178e-03, 2.272440593027772425e-03, 2.263229529001755443e-03, 2.254015227837514318e-03, 2.244797704653128580e-03, 2.235576974571576621e-03, 2.226353052720041366e-03, 2.217125954230142297e-03, 2.207895694238371734e-03, 2.198662287884904382e-03, 2.189425750315020236e-03, 2.180186096677860352e-03, 2.170943342127302014e-03, 2.161697501821238394e-03, 2.152448590921846993e-03, 2.143196624595886286e-03, 2.133941618014037825e-03, 2.124683586351193334e-03, 2.115422544786757422e-03, 2.106158508503881265e-03, 2.096891492690365535e-03, 2.087621512537414861e-03, 2.078348583241036024e-03, 2.069072720000796756e-03, 2.059793938020714355e-03, 2.050512252508507587e-03, 2.041227678675890719e-03, 2.031940231738955157e-03, 2.022649926917012390e-03, 2.013356779434012124e-03, 2.004060804517288508e-03, 1.994762017398433573e-03, 1.985460433312592494e-03, 1.976156067498716432e-03, 1.966848935199859167e-03, 1.957539051662540459e-03, 1.948226432137113370e-03, 1.938911091877545479e-03, 1.929593046141815692e-03, 1.920272310191252019e-03, 1.910948899290829507e-03, 1.901622828709444765e-03, 1.892294113719180000e-03, 1.882962769596196843e-03, 1.873628811619475415e-03, 1.864292255072135971e-03, 1.854953115240792500e-03, 1.845611407414900684e-03, 1.836267146888082361e-03, 1.826920348956864596e-03, 1.817571028921583691e-03, 1.808219202085620606e-03, 1.798864883755705180e-03, 1.789508089242206924e-03, 1.780148833858451315e-03, 1.770787132921154130e-03, 1.761423001750167744e-03, 1.752056455668866888e-03, 1.742687510003507450e-03, 1.733316180083518997e-03, 1.723942481241781677e-03, 1.714566428813976348e-03, 1.705188038138988121e-03, 1.695807324558653521e-03, 1.686424303418175086e-03, 1.677038990065455237e-03, 1.667651399851384454e-03, 1.658261548130140085e-03, 1.648869450258415260e-03, 1.639475121596350874e-03, 1.630078577506242129e-03, 1.620679833353977275e-03, 1.611278904507774728e-03, 1.601875806339085996e-03, 1.592470554221826545e-03, 1.583063163532688698e-03, 1.573653649651425915e-03, 1.564242027960175601e-03, 1.554828313843783279e-03, 1.545412522690061720e-03, 1.535994669889154509e-03, 1.526574770833932435e-03, 1.517152840919740869e-03, 1.507728895544803525e-03, 1.498302950109583857e-03, 1.488875020017049397e-03, 1.479445120672968818e-03, 1.470013267485163842e-03, 1.460579475864420178e-03, 1.451143761223199500e-03, 1.441706138977084896e-03, 1.432266624543504117e-03, 1.422825233342642692e-03, 1.413381980796682815e-03, 1.403936882330095864e-03, 1.394489953369937090e-03, 1.385041209345174058e-03, 1.375590665687098429e-03, 1.366138337829087218e-03, 1.356684241206995061e-03, 1.347228391258493063e-03, 1.337770803423369561e-03, 1.328311493143816135e-03, 1.318850475863765160e-03, 1.309387767029303968e-03, 1.299923382088407709e-03, 1.290457336491373022e-03, 1.280989645690125021e-03, 1.271520325138538647e-03, 1.262049390292708639e-03, 1.252576856610196007e-03, 1.243102739550844011e-03, 1.233627054576013574e-03, 1.224149817148878407e-03, 1.214671042734712320e-03, 1.205190746800230460e-03, 1.195708944813995457e-03, 1.186225652246163283e-03, 1.176740884568896551e-03, 1.167254657255704453e-03, 1.157766985781722487e-03, 1.148277885624011474e-03, 1.138787372260906174e-03, 1.129295461172401044e-03, 1.119802167839916264e-03, 1.110307507746700201e-03, 1.100811496377160229e-03, 1.091314149217171518e-03, 1.081815481754347212e-03, 1.072315509477297707e-03, 1.062814247876526196e-03, 1.053311712443170999e-03, 1.043807918670429987e-03, 1.034302882052385523e-03, 1.024796618084406483e-03, 1.015289142263423646e-03, 1.005780470087189399e-03, 9.962706170551813116e-04, 9.867595986673147537e-04, 9.772474304254080875e-04, 9.677341278318716492e-04, 9.582197063906510055e-04, 9.487041816064436172e-04, 9.391875689850162938e-04, 9.296698840334637753e-04, 9.201511422595795705e-04, 9.106313591721312351e-04, 9.011105502811541908e-04, 8.915887310971916998e-04, 8.820659171322210983e-04, 8.725421238983468997e-04, 8.630173669092748752e-04, 8.534916616791097827e-04, 8.439650237227604244e-04, 8.344374685562308634e-04, 8.249090116958455446e-04, 8.153796686591930926e-04, 8.058494549638126926e-04, 7.963183861286703396e-04, 7.867864776728447857e-04, 7.772537451164649412e-04, 7.677202039799424765e-04, 7.581858697842636888e-04, 7.486507580512815870e-04, 7.391148843030558285e-04, 7.295782640622498630e-04, 7.200409128518912155e-04, 7.105028461957843501e-04, 7.009640796178281648e-04, 6.914246286423240137e-04, 6.818845087942608518e-04, 6.723437355986611359e-04, 6.628023245809740649e-04, 6.532602912668367297e-04, 6.437176511823743293e-04, 6.341744198540606335e-04, 6.246306128079588248e-04, 6.150862455710664513e-04, 6.055413336700242498e-04, 5.959958926320402120e-04, 5.864499379841274984e-04, 5.769034852533902339e-04, 5.673565499673274099e-04, 5.578091476531564508e-04, 5.482612938382264026e-04, 5.387130040497714947e-04, 5.291642938153157637e-04, 5.196151786620061604e-04, 5.100656741169082124e-04, 5.005157957073023359e-04, 4.909655589600162929e-04, 4.814149794018275381e-04, 4.718640725592240987e-04, 4.623128539588078974e-04, 4.527613391266273172e-04, 4.432095435884736770e-04, 4.336574828701739658e-04, 4.241051724968222521e-04, 4.145526279937106879e-04, 4.049998648850264065e-04, 3.954468986953226222e-04, 3.858937449482051189e-04, 3.763404191672753440e-04, 3.667869368753551491e-04, 3.572333135947819102e-04, 3.476795648478087065e-04, 3.381257061554098550e-04, 3.285717530387418186e-04, 3.190177210178470426e-04, 3.094636256125816521e-04, 2.999094823418459394e-04, 2.903553067238825742e-04, 2.808011142765633205e-04, 2.712469205167338535e-04, 2.616927409605000971e-04, 2.521385911235283855e-04, 2.425844865202711259e-04, 2.330304426649021127e-04, 2.234764750700129370e-04, 2.139225992480783128e-04, 2.043688307101527036e-04, 1.948151849668055820e-04, 1.852616775273488003e-04, 1.757083239001314124e-04, 1.661551395929408009e-04, 1.566021401118065318e-04, 1.470493409624650297e-04, 1.374967576490574242e-04, 1.279444056750624243e-04, 1.183923005425258985e-04, 1.088404577523553838e-04, 9.928889280461425772e-05, 8.973762119785778609e-05, 8.018665842953322069e-05, 7.063601999574328067e-05, 6.108572139164559968e-05, 5.153577811078932972e-05, 4.198620564540943420e-05, 3.243701948672096755e-05, 2.288823512414852937e-05, 1.333986804625972686e-05, 3.791933739462152352e-06, -5.755552310637384259e-06, -1.530257461989683782e-05, -2.484911770630284677e-05, -3.439516608861156499e-05, -4.394070428765161154e-05, -5.348571682539059034e-05, -6.303018822570578513e-05, -7.257410301408935137e-05, -8.211744571735443644e-05, -9.166020086429875881e-05, -1.012023529853040970e-04, -1.107438866125734993e-04, -1.202847862797311594e-04, -1.298250365224862593e-04, -1.393646218783385952e-04, -1.489035268862833354e-04, -1.584417360874763143e-04, -1.679792340248309663e-04, -1.775160052432593985e-04, -1.870520342892686603e-04, -1.965873057116267154e-04, -2.061218040610655596e-04, -2.156555138899892451e-04, -2.251884197532430412e-04, -2.347205062071801253e-04, -2.442517578109646586e-04, -2.537821591251062433e-04, -2.633116947127606936e-04, -2.728403491388007121e-04, -2.823681069705812280e-04, -2.918949527776487770e-04, -3.014208711314461642e-04, -3.109458466059744240e-04, -3.204698637775000854e-04, -3.299929072242612990e-04, -3.395149615271300680e-04, -3.490360112692102255e-04, -3.585560410360798082e-04, -3.680750354153860529e-04, -3.775929789975071386e-04, -3.871098563752668254e-04, -3.966256521436286545e-04, -4.061403509004753274e-04, -4.156539372456676722e-04, -4.251663957823522463e-04, -4.346777111154986385e-04, -4.441878678531896159e-04, -4.536968506057036717e-04, -4.632046439862705519e-04, -4.727112326107896874e-04, -4.822166010975264551e-04, -4.917207340677766858e-04, -5.012236161454718510e-04, -5.107252319574097279e-04, -5.202255661328595866e-04, -5.297246033042198130e-04, -5.392223281067257167e-04, -5.487187251781588558e-04, -5.582137791595040638e-04, -5.677074746945521980e-04, -5.771997964301364952e-04, -5.866907290157356457e-04, -5.961802571041299520e-04, -6.056683653511111967e-04, -6.151550384151894743e-04, -6.246402609583589626e-04, -6.341240176451697378e-04, -6.436062931440237212e-04, -6.530870721258214863e-04, -6.625663392647261878e-04, -6.720440792383019059e-04, -6.815202767272138641e-04, -6.909949164154657614e-04, -7.004679829900034961e-04, -7.099394611413732768e-04, -7.194093355634268274e-04, -7.288775909530357004e-04, -7.383442120107403884e-04, -7.478091834403653238e-04, -7.572724899492372375e-04, -7.667341162478016761e-04, -7.761940470502819807e-04, -7.856522670743732156e-04, -7.951087610409663482e-04, -8.045635136748990586e-04, -8.140165097040379626e-04, -8.234677338605688119e-04, -8.329171708795391101e-04, -8.423648055000494336e-04, -8.518106224648533615e-04, -8.612546065200637644e-04, -8.706967424159217216e-04, -8.801370149058581433e-04, -8.895754087478053304e-04, -8.990119087027244110e-04, -9.084464995359134301e-04, -9.178791660160592154e-04, -9.273098929160302536e-04, -9.367386650125584776e-04, -9.461654670859626862e-04, -9.555902839207998248e-04, -9.650131003055722502e-04, -9.744339010324468142e-04, -9.838526708979976505e-04, -9.932693947023007574e-04, -1.002684057250211296e-03, -1.012096643349916615e-03, -1.021507137814127355e-03, -1.030915525459665015e-03, -1.040321791107181367e-03, -1.049725919581918692e-03, -1.059127895712785612e-03, -1.068527704333640995e-03, -1.077925330281848289e-03, -1.087320758399572002e-03, -1.096713973532833369e-03, -1.106104960532292925e-03, -1.115493704252945410e-03, -1.124880189553831376e-03, -1.134264401298704398e-03, -1.143646324355616049e-03, -1.153025943597156804e-03, -1.162403243900076138e-03, -1.171778210145908760e-03, -1.181150827220710285e-03, -1.190521080014747156e-03, -1.199888953423162334e-03, -1.209254432345580228e-03, -1.218617501686325476e-03, -1.227978146354054756e-03, -1.237336351262380415e-03, -1.246692101329603545e-03, -1.256045381478409963e-03, -1.265396176636633500e-03, -1.274744471736442841e-03, -1.284090251715097001e-03, -1.293433501514653240e-03, -1.302774206081687989e-03, -1.312112350367927857e-03, -1.321447919329880568e-03, -1.330780897929051366e-03, -1.340111271131548152e-03, -1.349439023908749567e-03, -1.358764141236995775e-03, -1.368086608097307229e-03, -1.377406409476050145e-03, -1.386723530364505214e-03, -1.396037955759149487e-03, -1.405349670661220534e-03, -1.414658660077389510e-03, -1.423964909019468641e-03, -1.433268402504117621e-03, -1.442569125553599951e-03, -1.451867063194871342e-03, -1.461162200460855171e-03, -1.470454522388999841e-03, -1.479744014022560524e-03, -1.489030660409680629e-03, -1.498314446604151169e-03, -1.507595357665122808e-03, -1.516873378656694070e-03, -1.526148494649117414e-03, -1.535420690717324279e-03, -1.544689951942230252e-03, -1.553956263409806554e-03, -1.563219610211833343e-03, -1.572479977445620644e-03, -1.581737350213709105e-03, -1.590991713624525725e-03, -1.600243052792086566e-03, -1.609491352835719412e-03, -1.618736598880818377e-03, -1.627978776057909752e-03, -1.637217869503949366e-03, -1.646453864360873003e-03, -1.655686745776880535e-03, -1.664916498905515867e-03, -1.674143108906426093e-03, -1.683366560945051636e-03, -1.692586840192276910e-03, -1.701803931825545974e-03, -1.711017821027474095e-03, -1.720228492987095235e-03, -1.729435932898955655e-03, -1.738640125963867439e-03, -1.747841057388618141e-03, -1.757038712385688246e-03, -1.766233076173889111e-03, -1.775424133977978507e-03, -1.784611871028884402e-03, -1.793796272563323970e-03, -1.802977323824446303e-03, -1.812155010061534694e-03, -1.821329316529732983e-03, -1.830500228490793873e-03, -1.839667731212153885e-03, -1.848831809968215978e-03, -1.857992450039030715e-03, -1.867149636710925759e-03, -1.876303355277154656e-03, -1.885453591036581698e-03, -1.894600329294941765e-03, -1.903743555363943260e-03, -1.912883254561994302e-03, -1.922019412213937751e-03, -1.931152013650751101e-03, -1.940281044210187891e-03, -1.949406489236408212e-03, -1.958528334080186437e-03, -1.967646564098540860e-03, -1.976761164655344103e-03, -1.985872121121081985e-03, -1.994979418872531302e-03, -2.004083043293420751e-03, -2.013182979774034553e-03, -2.022279213711440995e-03, -2.031371730509106896e-03, -2.040460515577544650e-03, -2.049545554334016029e-03, -2.058626832202250720e-03, -2.067704334613187922e-03, -2.076778047004087299e-03, -2.085847954819761933e-03, -2.094914043511187946e-03, -2.103976298536736154e-03, -2.113034705361296894e-03, -2.122089249457000375e-03, -2.131139916302944755e-03, -2.140186691384903406e-03, -2.149229560195969370e-03, -2.158268508236168507e-03, -2.167303521012689353e-03, -2.176334584039478059e-03, -2.185361682837906258e-03, -2.194384802936463590e-03, -2.203403929870484477e-03, -2.212419049182792578e-03, -2.221430146423377262e-03, -2.230437207149182834e-03, -2.239440216924760366e-03, -2.248439161321457574e-03, -2.257434025918583689e-03, -2.266424796302076317e-03, -2.275411458065701008e-03, -2.284393996810176949e-03, -2.293372398143918561e-03, -2.302346647682713271e-03, -2.311316731049505545e-03, -2.320282633874986254e-03, -2.329244341797191090e-03, -2.338201840461777686e-03, -2.347155115521620556e-03, -2.356104152637420856e-03, -2.365048937477451808e-03, -2.373989455717269437e-03, -2.382925693040349215e-03, -2.391857635137690976e-03, -2.400785267708047468e-03, -2.409708576457561795e-03, -2.418627547100372834e-03, -2.427542165358337247e-03, -2.436452416960761900e-03, -2.445358287645124206e-03, -2.454259763156199127e-03, -2.463156829247269575e-03, -2.472049471678863103e-03, -2.480937676219457499e-03, -2.489821428645624772e-03, -2.498700714741743621e-03, -2.507575520300210636e-03, -2.516445831121085549e-03, -2.525311633012696216e-03, -2.534172911791362365e-03, -2.543029653281134953e-03, -2.551881843314411993e-03, -2.560729467731536965e-03, -2.569572512381045580e-03, -2.578410963119300188e-03, -2.587244805811079150e-03, -2.596074026329320966e-03, -2.604898610554841083e-03, -2.613718544377053535e-03, -2.622533813693111397e-03, -2.631344404409084650e-03, -2.640150302438643102e-03, -2.648951493704113699e-03, -2.657747964136156563e-03, -2.666539699673480500e-03, -2.675326686263506532e-03, -2.684108909861588135e-03, -2.692886356432139250e-03, -2.701659011947328895e-03, -2.710426862388262085e-03, -2.719189893744112900e-03, -2.727948092012830953e-03, -2.736701443200919345e-03, -2.745449933323080779e-03, -2.754193548402895843e-03, -2.762932274472525065e-03, -2.771666097572426588e-03, -2.780395003752082587e-03, -2.789118979069135380e-03, -2.797838009590586979e-03, -2.806552081391433008e-03, -2.815261180555793299e-03, -2.823965293176500767e-03, -2.832664405354878932e-03, -2.841358503201407183e-03, -2.850047572834894620e-03, -2.858731600383637109e-03, -2.867410571984119281e-03, -2.876084473782156842e-03, -2.884753291932096002e-03, -2.893417012597467031e-03, -2.902075621950755274e-03, -2.910729106173077629e-03, -2.919377451454872093e-03, -2.928020643995438502e-03, -2.936658670003215645e-03, -2.945291515695403536e-03, -2.953919167298548875e-03, -2.962541611048282678e-03, -2.971158833189077846e-03, -2.979770819974814685e-03, -2.988377557668440033e-03, -2.996979032542168488e-03, -3.005575230877131562e-03, -3.014166138963958810e-03, -3.022751743102536272e-03, -3.031332029601717208e-03, -3.039906984780038537e-03, -3.048476594964943248e-03, -3.057040846493500746e-03, -3.065599725712131463e-03, -3.074153218976346646e-03, -3.082701312651325593e-03, -3.091243993111586919e-03, -3.099781246741176340e-03, -3.108313059933302380e-03, -3.116839419090966078e-03, -3.125360310626634427e-03, -3.133875720962056924e-03, -3.142385636528779481e-03, -3.150890043767851697e-03, -3.159388929129978204e-03, -3.167882279075208592e-03, -3.176370080073508562e-03, -3.184852318604491916e-03, -3.193328981157167717e-03, -3.201800054230619433e-03, -3.210265524333174008e-03, -3.218725377983575400e-03, -3.227179601709651013e-03, -3.235628182049481334e-03, -3.244071105550588949e-03, -3.252508358770596006e-03, -3.260939928276968339e-03, -3.269365800646670695e-03, -3.277785962467222747e-03, -3.286200400335381570e-03, -3.294609100858309110e-03, -3.303012050652761201e-03, -3.311409236345732449e-03, -3.319800644574222043e-03, -3.328186261984956637e-03, -3.336566075235008772e-03, -3.344940070991469019e-03, -3.353308235931266000e-03, -3.361670556741787417e-03, -3.370027020120069505e-03, -3.378377612773967968e-03, -3.386722321420835690e-03, -3.395061132788680658e-03, -3.403394033615349777e-03, -3.411721010649195873e-03, -3.420042050648821382e-03, -3.428357140382724474e-03, -3.436666266630353760e-03, -3.444969416180805946e-03, -3.453266575833995912e-03, -3.461557732399811460e-03, -3.469842872698781621e-03, -3.478121983561858945e-03, -3.486395051830118094e-03, -3.494662064355333504e-03, -3.502923007999693590e-03, -3.511177869635923477e-03, -3.519426636146968414e-03, -3.527669294426593553e-03, -3.535905831379088614e-03, -3.544136233919042804e-03, -3.552360488971992736e-03, -3.560578583473614483e-03, -3.568790504370867624e-03, -3.576996238620775304e-03, -3.585195773191075189e-03, -3.593389095060700415e-03, -3.601576191218675005e-03, -3.609757048665191131e-03, -3.617931654410844536e-03, -3.626099995477251228e-03, -3.634262058896843214e-03, -3.642417831712566664e-03, -3.650567300978491657e-03, -3.658710453759432719e-03, -3.666847277131180406e-03, -3.674977758180149583e-03, -3.683101884003913730e-03, -3.691219641711009341e-03, -3.699331018420646666e-03, -3.707436001263268287e-03, -3.715534577380240778e-03, -3.723626733924027300e-03, -3.731712458057856278e-03, -3.739791736956284314e-03, -3.747864557804941182e-03, -3.755930907800293476e-03, -3.763990774150260867e-03, -3.772044144073479280e-03, -3.780091004800352136e-03, -3.788131343571839085e-03, -3.796165147640531094e-03, -3.804192404269911461e-03, -3.812213100734942149e-03, -3.820227224321845211e-03, -3.828234762327871205e-03, -3.836235702061815273e-03, -3.844230030843711829e-03, -3.852217736005021480e-03, -3.860198804888299254e-03, -3.868173224847744514e-03, -3.876140983248950282e-03, -3.884102067468666892e-03, -3.892056464895348854e-03, -3.900004162928902025e-03, -3.907945148980455918e-03, -3.915879410472978238e-03, -3.923806934840533278e-03, -3.931727709529322760e-03, -3.939641721996491042e-03, -3.947548959711218858e-03, -3.955449410153905401e-03, -3.963343060816844864e-03, -3.971229899203963624e-03, -3.979109912830599942e-03, -3.986983089223994012e-03, -3.994849415923032963e-03, -4.002708880478392239e-03, -4.010561470452207733e-03, -4.018407173418650849e-03, -4.026245976963665693e-03, -4.034077868684704526e-03, -4.041902836191334919e-03, -4.049720867104832089e-03, -4.057531949058451257e-03, -4.065336069697015643e-03, -4.073133216677538374e-03, -4.080923377668915428e-03, -4.088706540351732220e-03, -4.096482692418864681e-03, -4.104251821574724651e-03, -4.112013915536318065e-03, -4.119768962032156409e-03, -4.127516948802825714e-03, -4.135257863601182575e-03, -4.142991694192017620e-03, -4.150718428352337397e-03, -4.158438053870948045e-03, -4.166150558549084996e-03, -4.173855930200083379e-03, -4.181554156649222760e-03, -4.189245225734200724e-03, -4.196929125304828430e-03, -4.204605843223221430e-03, -4.212275367363509104e-03, -4.219937685612285688e-03, -4.227592785868461087e-03, -4.235240656042970307e-03, -4.242881284059416176e-03, -4.250514657853288712e-03, -4.258140765373053666e-03, -4.265759594578941681e-03, -4.273371133443901529e-03, -4.280975369953329487e-03, -4.288572292104750154e-03, -4.296161887908508600e-03, -4.303744145386994083e-03, -4.311319052575648784e-03, -4.318886597521854991e-03, -4.326446768285924747e-03, -4.333999552940376483e-03, -4.341544939570560376e-03, -4.349082916274383398e-03, -4.356613471162112429e-03, -4.364136592356876454e-03, -4.371652267994456664e-03, -4.379160486222999360e-03, -4.386661235203724585e-03, -4.394154503110058764e-03, -4.401640278128763142e-03, -4.409118548458726417e-03, -4.416589302311934445e-03, -4.424052527913143254e-03, -4.431508213499602347e-03, -4.438956347321749464e-03, -4.446396917642404800e-03, -4.453829912737801433e-03, -4.461255320896476834e-03, -4.468673130420238240e-03, -4.476083329623461830e-03, -4.483485906833674720e-03, -4.490880850391363276e-03, -4.498268148649713777e-03, -4.505647789975100737e-03, -4.513019762746827562e-03, -4.520384055357276609e-03, -4.527740656211607338e-03, -4.535089553728274998e-03, -4.542430736338792102e-03, -4.549764192487477758e-03, -4.557089910632053549e-03, -4.564407879243214186e-03, -4.571718086804893791e-03, -4.579020521813920684e-03, -4.586315172780569896e-03, -4.593602028228254384e-03, -4.600881076693372380e-03, -4.608152306725892856e-03, -4.615415706888577503e-03, -4.622671265758044983e-03, -4.629918971923686725e-03, -4.637158813988277554e-03, -4.644390780568049409e-03, -4.651614860292523947e-03, -4.658831041804616623e-03, -4.666039313760377352e-03, -4.673239664829465824e-03, -4.680432083694986700e-03, -4.687616559053179970e-03, -4.694793079613968252e-03, -4.701961634100676642e-03, -4.709122211250147197e-03, -4.716274799812500418e-03, -4.723419388551576732e-03, -4.730555966244783840e-03, -4.737684521682773188e-03, -4.744805043670139930e-03, -4.751917521024610208e-03, -4.759021942578083725e-03, -4.766118297175507904e-03, -4.773206573675863214e-03, -4.780286760951466679e-03, -4.787358847888519182e-03, -4.794422823386924187e-03, -4.801478676359958141e-03, -4.808526395735159518e-03, -4.815565970453284522e-03, -4.822597389469179645e-03, -4.829620641751204875e-03, -4.836635716281692532e-03, -4.843642602056811956e-03, -4.850641288086287618e-03, -4.857631763393970709e-03, -4.864614017017497398e-03, -4.871588038008189091e-03, -4.878553815431565036e-03, -4.885511338366640630e-03, -4.892460595906924017e-03, -4.899401577159305868e-03, -4.906334271245016074e-03, -4.913258667298957619e-03, -4.920174754470265158e-03, -4.927082521922083840e-03, -4.933981958831242312e-03, -4.940873054389190340e-03, -4.947755797800880775e-03, -4.954630178285747942e-03, -4.961496185076964306e-03, -4.968353807422085794e-03, -4.975203034582781174e-03, -4.982043855834635167e-03, -4.988876260467612483e-03, -4.995700237785791545e-03, -5.002515777107529281e-03, -5.009322867765114186e-03, -5.016121499105372604e-03, -5.022911660489284488e-03, -5.029693341291931359e-03, -5.036466530902949067e-03, -5.043231218725878137e-03, -5.049987394179109197e-03, -5.056735046694835201e-03, -5.063474165719879759e-03, -5.070204740715451679e-03, -5.076926761156870006e-03, -5.083640216534194602e-03, -5.090345096351532247e-03, -5.097041390127712325e-03, -5.103729087395937267e-03, -5.110408177703687146e-03, -5.117078650613133411e-03, -5.123740495700845714e-03, -5.130393702557994873e-03, -5.137038260790022411e-03, -5.143674160017159235e-03, -5.150301389874177571e-03, -5.156919940010210555e-03, -5.163529800089185044e-03, -5.170130959789574418e-03, -5.176723408804520012e-03, -5.183307136841609070e-03, -5.189882133623258988e-03, -5.196448388886608892e-03, -5.203005892383215196e-03, -5.209554633879644008e-03, -5.216094603156810200e-03, -5.222625790010869060e-03, -5.229148184252223157e-03, -5.235661775706384503e-03, -5.242166554213361328e-03, -5.248662509628181962e-03, -5.255149631820663254e-03, -5.261627910675256183e-03, -5.268097336091437030e-03, -5.274557897983512232e-03, -5.281009586280717254e-03, -5.287452390926913881e-03, -5.293886301881163547e-03, -5.300311309117371715e-03, -5.306727402624226292e-03, -5.313134572405534169e-03, -5.319532808480102390e-03, -5.325922100881479680e-03, -5.332302439658508954e-03, -5.338673814874701079e-03, -5.345036216609077954e-03, -5.351389634955196727e-03, -5.357734060022065724e-03, -5.364069481933455771e-03, -5.370395890828441425e-03, -5.376713276861204947e-03, -5.383021630200843753e-03, -5.389320941031812764e-03, -5.395611199553603486e-03, -5.401892395980982531e-03, -5.408164520543694981e-03, -5.414427563486856436e-03, -5.420681515070803827e-03, -5.426926365570928883e-03, -5.433162105278027676e-03, -5.439388724498088121e-03, -5.445606213552460842e-03, -5.451814562777579018e-03, -5.458013762525361703e-03, -5.464203803163042092e-03, -5.470384675073009656e-03, -5.476556368653247298e-03, -5.482718874316750216e-03, -5.488872182492412349e-03, -5.495016283624065342e-03, -5.501151168171022378e-03, -5.507276826608168384e-03, -5.513393249425743194e-03, -5.519500427129506344e-03, -5.525598350240480336e-03, -5.531687009295364367e-03, -5.537766394846380807e-03, -5.543836497461015859e-03, -5.549897307722481861e-03, -5.555948816229509986e-03, -5.561991013596398817e-03, -5.568023890452858220e-03, -5.574047437444306849e-03, -5.580061645231843524e-03, -5.586066504491936716e-03, -5.592062005916935419e-03, -5.598048140214527922e-03, -5.604024898108470390e-03, -5.609992270337775012e-03, -5.615950247657383078e-03, -5.621898820837913438e-03, -5.627837980665491638e-03, -5.633767717942288547e-03, -5.639688023485817797e-03, -5.645598888129856052e-03, -5.651500302723439471e-03, -5.657392258131767500e-03, -5.663274745235514183e-03, -5.669147754931401495e-03, -5.675011278131974687e-03, -5.680865305765374178e-03, -5.686709828775848158e-03, -5.692544838123489784e-03, -5.698370324784030744e-03, -5.704186279749426727e-03, -5.709992694027169607e-03, -5.715789558641139190e-03, -5.721576864630695085e-03, -5.727354603051413098e-03, -5.733122764974797267e-03, -5.738881341488190520e-03, -5.744630323695125093e-03, -5.750369702714846348e-03, -5.756099469683066509e-03, -5.761819615751080821e-03, -5.767530132086528226e-03, -5.773231009872863140e-03, -5.778922240309809083e-03, -5.784603814613166126e-03, -5.790275724014633078e-03, -5.795937959762235102e-03, -5.801590513120034875e-03, -5.807233375368309539e-03, -5.812866537803293952e-03, -5.818489991737585756e-03, -5.824103728499950214e-03, -5.829707739435169289e-03, -5.835302015904381655e-03, -5.840886549284952586e-03, -5.846461330970466157e-03, -5.852026352370608142e-03, -5.857581604911506028e-03, -5.863127080035533852e-03, -5.868662769201202049e-03, -5.874188663883520012e-03, -5.879704755573548526e-03, -5.885211035779071981e-03, -5.890707496023834221e-03, -5.896194127848025136e-03, -5.901670922808275460e-03, -5.907137872477576969e-03, -5.912594968445346669e-03, -5.918042202317220363e-03, -5.923479565715414341e-03, -5.928907050278612624e-03, -5.934324647661723233e-03, -5.939732349536294524e-03, -5.945130147590296614e-03, -5.950518033528212451e-03, -5.955895999070853070e-03, -5.961264035955708002e-03, -5.966622135936800429e-03, -5.971970290784456466e-03, -5.977308492285838583e-03, -5.982636732244297692e-03, -5.987955002480247445e-03, -5.993263294830208400e-03, -5.998561601147603395e-03, -6.003849913302210239e-03, -6.009128223180638766e-03, -6.014396522686088833e-03, -6.019654803738171654e-03, -6.024903058273576792e-03, -6.030141278245254241e-03, -6.035369455623084030e-03, -6.040587582393460754e-03, -6.045795650559585878e-03, -6.050993652141446050e-03, -6.056181579175545088e-03, -6.061359423715300364e-03, -6.066527177830866729e-03, -6.071684833609028095e-03, -6.076832383153543508e-03, -6.081969818584668369e-03, -6.087097132039877810e-03, -6.092214315673040968e-03, -6.097321361655146967e-03, -6.102418262173803579e-03, -6.107505009433585041e-03, -6.112581595655976544e-03, -6.117648013079093200e-03, -6.122704253958317563e-03, -6.127750310565542417e-03, -6.132786175189831705e-03, -6.137811840136966034e-03, -6.142827297729813035e-03, -6.147832540308157366e-03, -6.152827560228603561e-03, -6.157812349864872671e-03, -6.162786901607603639e-03, -6.167751207864485136e-03, -6.172705261060032651e-03, -6.177649053635926764e-03, -6.182582578050899516e-03, -6.187505826780516707e-03, -6.192418792317633258e-03, -6.197321467171886672e-03, -6.202213843870323269e-03, -6.207095914956752003e-03, -6.211967672992224111e-03, -6.216829110554970665e-03, -6.221680220240068636e-03, -6.226520994660022026e-03, -6.231351426444208495e-03, -6.236171508239339058e-03, -6.240981232709264664e-03, -6.245780592534844362e-03, -6.250569580414280964e-03, -6.255348189062917216e-03, -6.260116411213344223e-03, -6.264874239615208888e-03, -6.269621667035540913e-03, -6.274358686258609680e-03, -6.279085290085758587e-03, -6.283801471335738117e-03, -6.288507222844554045e-03, -6.293202537465483054e-03, -6.297887408068978191e-03, -6.302561827542938616e-03, -6.307225788792571695e-03, -6.311879284740221259e-03, -6.316522308325831642e-03, -6.321154852506358744e-03, -6.325776910256512495e-03, -6.330388474568012652e-03, -6.334989538450182082e-03, -6.339580094929548638e-03, -6.344160137050173023e-03, -6.348729657873516084e-03, -6.353288650478329525e-03, -6.357837107960890091e-03, -6.362375023434936258e-03, -6.366902390031613582e-03, -6.371419200899460823e-03, -6.375925449204555666e-03, -6.380421128130519919e-03, -6.384906230878281859e-03, -6.389380750666400627e-03, -6.393844680730985559e-03, -6.398298014325481085e-03, -6.402740744721081324e-03, -6.407172865206246098e-03, -6.411594369087358393e-03, -6.416005249687979292e-03, -6.420405500349538400e-03, -6.424795114430771788e-03, -6.429174085308228537e-03, -6.433542406376003588e-03, -6.437900071045672690e-03, -6.442247072746595977e-03, -6.446583404925650823e-03, -6.450909061047474698e-03, -6.455224034594167666e-03, -6.459528319065632393e-03, -6.463821907979442304e-03, -6.468104794870730562e-03, -6.472376973292409512e-03, -6.476638436815063994e-03, -6.480889179027070172e-03, -6.485129193534298030e-03, -6.489358473960557191e-03, -6.493577013947347994e-03, -6.497784807153798164e-03, -6.501981847256950789e-03, -6.506168127951415629e-03, -6.510343642949847041e-03, -6.514508385982447844e-03, -6.518662350797258150e-03, -6.522805531160163171e-03, -6.526937920854875876e-03, -6.531059513682936114e-03, -6.535170303463542357e-03, -6.539270284033947209e-03, -6.543359449249202403e-03, -6.547437792982038242e-03, -6.551505309123274723e-03, -6.555561991581513627e-03, -6.559607834283271224e-03, -6.563642831172823017e-03, -6.567666976212515988e-03, -6.571680263382561303e-03, -6.575682686680987474e-03, -6.579674240123910105e-03, -6.583654917745164134e-03, -6.587624713596865883e-03, -6.591583621748711361e-03, -6.595531636288586887e-03, -6.599468751322345311e-03, -6.603394960973686320e-03, -6.607310259384440061e-03, -6.611214640714276579e-03, -6.615108099141123882e-03, -6.618990628860637986e-03, -6.622862224086727666e-03, -6.626722879051149401e-03, -6.630572588003801407e-03, -6.634411345212692414e-03, -6.638239144963712680e-03, -6.642055981560951450e-03, -6.645861849326551232e-03, -6.649656742600763316e-03, -6.653440655741832410e-03, -6.657213583126098122e-03, -6.660975519148210934e-03, -6.664726458220681174e-03, -6.668466394774295349e-03, -6.672195323257964356e-03, -6.675913238138648023e-03, -6.679620133901570216e-03, -6.683316005049935206e-03, -6.687000846105407327e-03, -6.690674651607516829e-03, -6.694337416114168153e-03, -6.697989134201338089e-03, -6.701629800463266597e-03, -6.705259409512427313e-03, -6.708877955979396582e-03, -6.712485434513059020e-03, -6.716081839780492155e-03, -6.719667166467098267e-03, -6.723241409276325097e-03, -6.726804562930053556e-03, -6.730356622168380022e-03, -6.733897581749584242e-03, -6.737427436450308879e-03, -6.740946181065495327e-03, -6.744453810408312586e-03, -6.747950319310200631e-03, -6.751435702620966692e-03, -6.754909955208784379e-03, -6.758373071959948228e-03, -6.761825047779327323e-03, -6.765265877589863100e-03, -6.768695556333153077e-03, -6.772114078968865386e-03, -6.775521440475095261e-03, -6.778917635848379780e-03, -6.782302660103580773e-03, -6.785676508273975893e-03, -6.789039175411102495e-03, -6.792390656585036920e-03, -6.795730946884214092e-03, -6.799060041415391081e-03, -6.802377935303821448e-03, -6.805684623693191056e-03, -6.808980101745601594e-03, -6.812264364641521137e-03, -6.815537407579933329e-03, -6.818799225778260191e-03, -6.822049814472323087e-03, -6.825289168916513598e-03, -6.828517284383532442e-03, -6.831734156164779789e-03, -6.834939779569892959e-03, -6.838134149927195711e-03, -6.841317262583371250e-03, -6.844489112903679937e-03, -6.847649696271920251e-03, -6.850799008090246653e-03, -6.853937043779590246e-03, -6.857063798779165255e-03, -6.860179268546919180e-03, -6.863283448559130348e-03, -6.866376334310836382e-03, -6.869457921315523692e-03, -6.872528205105217676e-03, -6.875587181230575530e-03, -6.878634845260832471e-03, -6.881671192783718471e-03, -6.884696219405638667e-03, -6.887709920751498155e-03, -6.890712292464982146e-03, -6.893703330208140502e-03, -6.896683029661852642e-03, -6.899651386525425083e-03, -6.902608396516924510e-03, -6.905554055373039866e-03, -6.908488358848951377e-03, -6.911411302718745153e-03, -6.914322882774868485e-03, -6.917223094828658936e-03, -6.920111934709894178e-03, -6.922989398267213532e-03, -6.925855481367836075e-03, -6.928710179897640438e-03, -6.931553489761228121e-03, -6.934385406881884463e-03, -6.937205927201623747e-03, -6.940015046681038274e-03, -6.942812761299555109e-03, -6.945599067055297296e-03, -6.948373959964995392e-03, -6.951137436064261550e-03, -6.953889491407250385e-03, -6.956630122067103926e-03, -6.959359324135432935e-03, -6.962077093722755794e-03, -6.964783426958338908e-03, -6.967478319990113439e-03, -6.970161768984873933e-03, -6.972833770128038060e-03, -6.975494319624020445e-03, -6.978143413695838022e-03, -6.980781048585262688e-03, -6.983407220552978294e-03, -6.986021925878408041e-03, -6.988625160859813362e-03, -6.991216921814126517e-03, -6.993797205077231620e-03, -6.996366007003811116e-03, -6.998923323967247770e-03, -7.001469152359885741e-03, -7.004003488592803334e-03, -7.006526329096001218e-03, -7.009037670318195995e-03, -7.011537508727036169e-03, -7.014025840809053579e-03, -7.016502663069505534e-03, -7.018967972032617679e-03, -7.021421764241353274e-03, -7.023864036257763607e-03, -7.026294784662523961e-03, -7.028714006055367287e-03, -7.031121697054768492e-03, -7.033517854298180355e-03, -7.035902474441959806e-03, -7.038275554161232614e-03, -7.040637090150163140e-03, -7.042987079121777391e-03, -7.045325517807969964e-03, -7.047652402959565625e-03, -7.049967731346319308e-03, -7.052271499756928262e-03, -7.054563704998948782e-03, -7.056844343898908967e-03, -7.059113413302293104e-03, -7.061370910073458407e-03, -7.063616831095792872e-03, -7.065851173271517523e-03, -7.068073933521924930e-03, -7.070285108787170182e-03, -7.072484696026427875e-03, -7.074672692217756804e-03, -7.076849094358283847e-03, -7.079013899464053038e-03, -7.081167104570044654e-03, -7.083308706730284503e-03, -7.085438703017765856e-03, -7.087557090524479811e-03, -7.089663866361304266e-03, -7.091759027658252855e-03, -7.093842571564272850e-03, -7.095914495247299808e-03, -7.097974795894295731e-03, -7.100023470711215243e-03, -7.102060516923081046e-03, -7.104085931773826933e-03, -7.106099712526469520e-03, -7.108101856463105647e-03, -7.110092360884719825e-03, -7.112071223111455717e-03, -7.114038440482409707e-03, -7.115994010355773149e-03, -7.117937930108713535e-03, -7.119870197137525419e-03, -7.121790808857443068e-03, -7.123699762702834747e-03, -7.125597056127122922e-03, -7.127482686602718345e-03, -7.129356651621164033e-03, -7.131218948693035520e-03, -7.133069575347952135e-03, -7.134908529134644656e-03, -7.136735807620874644e-03, -7.138551408393570621e-03, -7.140355329058576533e-03, -7.142147567240947521e-03, -7.143928120584823287e-03, -7.145696986753356100e-03, -7.147454163428854784e-03, -7.149199648312630322e-03, -7.150933439125242187e-03, -7.152655533606193904e-03, -7.154365929514198454e-03, -7.156064624627021288e-03, -7.157751616741497673e-03, -7.159426903673693152e-03, -7.161090483258620784e-03, -7.162742353350602838e-03, -7.164382511822894352e-03, -7.166010956567988449e-03, -7.167627685497452404e-03, -7.169232696541962338e-03, -7.170825987651413373e-03, -7.172407556794710599e-03, -7.173977401959951219e-03, -7.175535521154380314e-03, -7.177081912404363086e-03, -7.178616573755391798e-03, -7.180139503272077971e-03, -7.181650699038283348e-03, -7.183150159156869233e-03, -7.184637881749956698e-03, -7.186113864958776527e-03, -7.187578106943709987e-03, -7.189030605884287953e-03, -7.190471359979164895e-03, -7.191900367446283672e-03, -7.193317626522593641e-03, -7.194723135464303927e-03, -7.196116892546702143e-03, -7.197498896064341740e-03, -7.198869144330909305e-03, -7.200227635679198532e-03, -7.201574368461260284e-03, -7.202909341048264677e-03, -7.204232551830614707e-03, -7.205543999217791859e-03, -7.206843681638557333e-03, -7.208131597540812403e-03, -7.209407745391613158e-03, -7.210672123677247698e-03, -7.211924730903137258e-03, -7.213165565593981053e-03, -7.214394626293529900e-03, -7.215611911564822137e-03, -7.216817419990097758e-03, -7.218011150170705603e-03, -7.219193100727278566e-03, -7.220363270299532364e-03, -7.221521657546527487e-03, -7.222668261146424594e-03, -7.223803079796563449e-03, -7.224926112213548787e-03, -7.226037357133136690e-03, -7.227136813310363825e-03, -7.228224479519348815e-03, -7.229300354553511686e-03, -7.230364437225458504e-03, -7.231416726366953623e-03, -7.232457220829018561e-03, -7.233485919481881694e-03, -7.234502821214976523e-03, -7.235507924936902639e-03, -7.236501229575539353e-03, -7.237482734077927728e-03, -7.238452437410349515e-03, -7.239410338558283781e-03, -7.240356436526410380e-03, -7.241290730338691486e-03, -7.242213219038209394e-03, -7.243123901687319177e-03, -7.244022777367613991e-03, -7.244909845179835738e-03, -7.245785104244005168e-03, -7.246648553699327339e-03, -7.247500192704250596e-03, -7.248340020436400653e-03, -7.249168036092664726e-03, -7.249984238889166377e-03, -7.250788628061174447e-03, -7.251581202863274789e-03, -7.252361962569185520e-03, -7.253130906471895803e-03, -7.253888033883612065e-03, -7.254633344135750193e-03, -7.255366836578979774e-03, -7.256088510583089644e-03, -7.256798365537272394e-03, -7.257496400849777415e-03, -7.258182615948152033e-03, -7.258857010279153900e-03, -7.259519583308765740e-03, -7.260170334522191016e-03, -7.260809263423821831e-03, -7.261436369537353427e-03, -7.262051652405600299e-03, -7.262655111590713905e-03, -7.263246746673965824e-03, -7.263826557255898680e-03, -7.264394542956252414e-03, -7.264950703414040610e-03, -7.265495038287403048e-03, -7.266027547253808665e-03, -7.266548230009882946e-03, -7.267057086271464308e-03, -7.267554115773614508e-03, -7.268039318270681087e-03, -7.268512693536118702e-03, -7.268974241362686009e-03, -7.269423961562327709e-03, -7.269861853966192757e-03, -7.270287918424657783e-03, -7.270702154807332299e-03, -7.271104563003015324e-03, -7.271495142919737892e-03, -7.271873894484703199e-03, -7.272240817644382016e-03, -7.272595912364421614e-03, -7.272939178629693469e-03, -7.273270616444269844e-03, -7.273590225831425525e-03, -7.273898006833688992e-03, -7.274193959512711451e-03, -7.274478083949429026e-03, -7.274750380243947406e-03, -7.275010848515559188e-03, -7.275259488902795051e-03, -7.275496301563369982e-03, -7.275721286674198020e-03, -7.275934444431401797e-03, -7.276135775050283916e-03, -7.276325278765350367e-03, -7.276502955830322673e-03, -7.276668806518068501e-03, -7.276822831120699671e-03, -7.276965029949490626e-03, -7.277095403334920068e-03, -7.277213951626632787e-03, -7.277320675193494313e-03, -7.277415574423519787e-03, -7.277498649723909523e-03, -7.277569901521095848e-03, -7.277629330260630344e-03, -7.277676936407259309e-03, -7.277712720444948040e-03, -7.277736682876792366e-03, -7.277748824225042934e-03, -7.277749145031194543e-03, -7.277737645855855177e-03, -7.277714327278816259e-03, -7.277679189899039641e-03, -7.277632234334626381e-03, -7.277573461222900872e-03, -7.277502871220285080e-03, -7.277420465002391349e-03, -7.277326243263989441e-03, -7.277220206718986589e-03, -7.277102356100433565e-03, -7.276972692160602746e-03, -7.276831215670803363e-03, -7.276677927421584466e-03, -7.276512828222617829e-03, -7.276335918902672797e-03, -7.276147200309700420e-03, -7.275946673310787483e-03, -7.275734338792133951e-03, -7.275510197659097213e-03, -7.275274250836153041e-03, -7.275026499266881719e-03, -7.274766943914047837e-03, -7.274495585759496209e-03, -7.274212425804163148e-03, -7.273917465068188357e-03, -7.273610704590748391e-03, -7.273292145430175493e-03, -7.272961788663869984e-03, -7.272619635388408686e-03, -7.272265686719440840e-03, -7.271899943791637795e-03, -7.271522407758914189e-03, -7.271133079794174676e-03, -7.270731961089457913e-03, -7.270319052855905330e-03, -7.269894356323687405e-03, -7.269457872742159793e-03, -7.269009603379656889e-03, -7.268549549523645355e-03, -7.268077712480672074e-03, -7.267594093576336400e-03, -7.267098694155305766e-03, -7.266591515581352981e-03, -7.266072559237275567e-03, -7.265541826524911373e-03, -7.264999318865234847e-03, -7.264445037698213925e-03, -7.263878984482857737e-03, -7.263301160697296401e-03, -7.262711567838591072e-03, -7.262110207422968998e-03, -7.261497080985597138e-03, -7.260872190080716604e-03, -7.260235536281610565e-03, -7.259587121180592975e-03, -7.258926946388948725e-03, -7.258255013537050736e-03, -7.257571324274222045e-03, -7.256875880268876325e-03, -7.256168683208374763e-03, -7.255449734799129281e-03, -7.254719036766486308e-03, -7.253976590854876831e-03, -7.253222398827673285e-03, -7.252456462467245062e-03, -7.251678783574963712e-03, -7.250889363971178662e-03, -7.250088205495224154e-03, -7.249275310005389751e-03, -7.248450679378964576e-03, -7.247614315512187003e-03, -7.246766220320257669e-03, -7.245906395737362025e-03, -7.245034843716600947e-03, -7.244151566230091349e-03, -7.243256565268807456e-03, -7.242349842842751677e-03, -7.241431400980814087e-03, -7.240501241730841822e-03, -7.239559367159641677e-03, -7.238605779352848268e-03, -7.237640480415162558e-03, -7.236663472470058686e-03, -7.235674757660035504e-03, -7.234674338146437900e-03, -7.233662216109564350e-03, -7.232638393748559366e-03, -7.231602873281472478e-03, -7.230555656945316344e-03, -7.229496746995912361e-03, -7.228426145707992148e-03, -7.227343855375145502e-03, -7.226249878309891524e-03, -7.225144216843555449e-03, -7.224026873326344980e-03, -7.222897850127355489e-03, -7.221757149634504096e-03, -7.220604774254586050e-03, -7.219440726413195800e-03, -7.218265008554811991e-03, -7.217077623142758441e-03, -7.215878572659129540e-03, -7.214667859604898675e-03, -7.213445486499834962e-03, -7.212211455882527530e-03, -7.210965770310404609e-03, -7.209708432359651122e-03, -7.208439444625279816e-03, -7.207158809721096564e-03, -7.205866530279705570e-03, -7.204562608952459930e-03, -7.203247048409539693e-03, -7.201919851339914566e-03, -7.200581020451216410e-03, -7.199230558469962155e-03, -7.197868468141365578e-03, -7.196494752229432718e-03, -7.195109413516856053e-03, -7.193712454805115120e-03, -7.192303878914424464e-03, -7.190883688683743190e-03, -7.189451886970710769e-03, -7.188008476651695615e-03, -7.186553460621898301e-03, -7.185086841795015021e-03, -7.183608623103644383e-03, -7.182118807498935262e-03, -7.180617397950845270e-03, -7.179104397447967287e-03, -7.177579808997541604e-03, -7.176043635625572147e-03, -7.174495880376644333e-03, -7.172936546314048235e-03, -7.171365636519719602e-03, -7.169783154094263276e-03, -7.168189102156961000e-03, -7.166583483845610954e-03, -7.164966302316800977e-03, -7.163337560745639682e-03, -7.161697262325896970e-03, -7.160045410269982348e-03, -7.158382007808848646e-03, -7.156707058192146413e-03, -7.155020564688007075e-03, -7.153322530583246762e-03, -7.151612959183238812e-03, -7.149891853811921570e-03, -7.148159217811855641e-03, -7.146415054544070361e-03, -7.144659367388278039e-03, -7.142892159742637165e-03, -7.141113435023927619e-03, -7.139323196667396280e-03, -7.137521448126920090e-03, -7.135708192874861203e-03, -7.133883434402024486e-03, -7.132047176217879564e-03, -7.130199421850286733e-03, -7.128340174845666094e-03, -7.126469438768890871e-03, -7.124587217203361134e-03, -7.122693513750935276e-03, -7.120788332031952571e-03, -7.118871675685246175e-03, -7.116943548368047726e-03, -7.115003953756160807e-03, -7.113052895543669520e-03, -7.111090377443197823e-03, -7.109116403185867031e-03, -7.107130976521114536e-03, -7.105134101216827383e-03, -7.103125781059297164e-03, -7.101106019853284206e-03, -7.099074821421876187e-03, -7.097032189606582685e-03, -7.094978128267307414e-03, -7.092912641282322211e-03, -7.090835732548257490e-03, -7.088747405980097040e-03, -7.086647665511237870e-03, -7.084536515093380928e-03, -7.082413958696530225e-03, -7.080280000309148100e-03, -7.078134643937873324e-03, -7.075977893607829881e-03, -7.073809753362249667e-03, -7.071630227262865401e-03, -7.069439319389567156e-03, -7.067237033840632204e-03, -7.065023374732565427e-03, -7.062798346200135739e-03, -7.060561952396447218e-03, -7.058314197492798585e-03, -7.056055085678758672e-03, -7.053784621162114375e-03, -7.051502808168970404e-03, -7.049209650943600962e-03, -7.046905153748439336e-03, -7.044589320864295609e-03, -7.042262156590048741e-03, -7.039923665242769739e-03, -7.037573851157843084e-03, -7.035212718688714333e-03, -7.032840272207099147e-03, -7.030456516102743039e-03, -7.028061454783715405e-03, -7.025655092676085130e-03, -7.023237434224179065e-03, -7.020808483890399881e-03, -7.018368246155256424e-03, -7.015916725517471267e-03, -7.013453926493748262e-03, -7.010979853618980705e-03, -7.008494511446110818e-03, -7.005997904546216494e-03, -7.003490037508400268e-03, -7.000970914939824014e-03, -6.998440541465784405e-03, -6.995898921729564596e-03, -6.993346060392514017e-03, -6.990781962133972918e-03, -6.988206631651385989e-03, -6.985620073660168787e-03, -6.983022292893718147e-03, -6.980413294103535345e-03, -6.977793082058984103e-03, -6.975161661547532588e-03, -6.972519037374466308e-03, -6.969865214363220318e-03, -6.967200197355045282e-03, -6.964523991209259010e-03, -6.961836600803008798e-03, -6.959138031031411945e-03, -6.956428286807558349e-03, -6.953707373062383013e-03, -6.950975294744720680e-03, -6.948232056821427270e-03, -6.945477664277072832e-03, -6.942712122114226038e-03, -6.939935435353228668e-03, -6.937147609032390770e-03, -6.934348648207820653e-03, -6.931538557953423156e-03, -6.928717343361028881e-03, -6.925885009540218122e-03, -6.923041561618452702e-03, -6.920187004740880818e-03, -6.917321344070591176e-03, -6.914444584788394417e-03, -6.911556732092810976e-03, -6.908657791200283581e-03, -6.905747767344856333e-03, -6.902826665778480017e-03, -6.899894491770648675e-03, -6.896951250608801195e-03, -6.893996947597921462e-03, -6.891031588060827183e-03, -6.888055177337987743e-03, -6.885067720787514667e-03, -6.882069223785340292e-03, -6.879059691724961900e-03, -6.876039130017549267e-03, -6.873007544091925582e-03, -6.869964939394596071e-03, -6.866911321389780089e-03, -6.863846695559067644e-03, -6.860771067401941550e-03, -6.857684442435333337e-03, -6.854586826193790651e-03, -6.851478224229526695e-03, -6.848358642112197317e-03, -6.845228085429219331e-03, -6.842086559785308213e-03, -6.838934070802974233e-03, -6.835770624122103518e-03, -6.832596225400193110e-03, -6.829410880312220856e-03, -6.826214594550643680e-03, -6.823007373825523345e-03, -6.819789223864305278e-03, -6.816560150411920052e-03, -6.813320159230777315e-03, -6.810069256100806552e-03, -6.806807446819306169e-03, -6.803534737201016348e-03, -6.800251133078152876e-03, -6.796956640300303061e-03, -6.793651264734476905e-03, -6.790335012265022105e-03, -6.787007888793820075e-03, -6.783669900239958084e-03, -6.780321052539948698e-03, -6.776961351647740189e-03, -6.773590803534458062e-03, -6.770209414188788424e-03, -6.766817189616428085e-03, -6.763414135840653540e-03, -6.760000258901980967e-03, -6.756575564858129795e-03, -6.753140059784181436e-03, -6.749693749772380652e-03, -6.746236640932386230e-03, -6.742768739391025515e-03, -6.739290051292279662e-03, -6.735800582797529107e-03, -6.732300340085231767e-03, -6.728789329351078305e-03, -6.725267556807953094e-03, -6.721735028685994068e-03, -6.718191751232414043e-03, -6.714637730711596128e-03, -6.711072973405163115e-03, -6.707497485611742423e-03, -6.703911273647266203e-03, -6.700314343844522916e-03, -6.696706702553684686e-03, -6.693088356141785149e-03, -6.689459310993163543e-03, -6.685819573509042303e-03, -6.682169150107733491e-03, -6.678508047224768901e-03, -6.674836271312427349e-03, -6.671153828840299324e-03, -6.667460726294770039e-03, -6.663756970179418419e-03, -6.660042567014672760e-03, -6.656317523337952104e-03, -6.652581845703754715e-03, -6.648835540683455982e-03, -6.645078614865358724e-03, -6.641311074854684519e-03, -6.637532927273702942e-03, -6.633744178761573698e-03, -6.629944835974123721e-03, -6.626134905584370183e-03, -6.622314394282021767e-03, -6.618483308773809130e-03, -6.614641655783138827e-03, -6.610789442050303208e-03, -6.606926674332615733e-03, -6.603053359403867999e-03, -6.599169504054991538e-03, -6.595275115093465410e-03, -6.591370199343742943e-03, -6.587454763646929945e-03, -6.583528814860864498e-03, -6.579592359860287828e-03, -6.575645405536532061e-03, -6.571687958797682409e-03, -6.567720026568529476e-03, -6.563741615790675936e-03, -6.559752733422256378e-03, -6.555753386438111646e-03, -6.551743581829894657e-03, -6.547723326605659269e-03, -6.543692627790398050e-03, -6.539651492425398692e-03, -6.535599927568845093e-03, -6.531537940295354186e-03, -6.527465537696177170e-03, -6.523382726879201239e-03, -6.519289514968793463e-03, -6.515185909105998541e-03, -6.511071916448160635e-03, -6.506947544169383070e-03, -6.502812799460258586e-03, -6.498667689527788671e-03, -6.494512221595517137e-03, -6.490346402903403485e-03, -6.486170240708025864e-03, -6.481983742282255816e-03, -6.477786914915447357e-03, -6.473579765913471673e-03, -6.469362302598506351e-03, -6.465134532309180226e-03, -6.460896462400451089e-03, -6.456648100243800835e-03, -6.452389453226935363e-03, -6.448120528753904269e-03, -6.443841334245230951e-03, -6.439551877137633315e-03, -6.435252164884302205e-03, -6.430942204954423480e-03, -6.426622004833830275e-03, -6.422291572024359414e-03, -6.417950914044321525e-03, -6.413600038428108122e-03, -6.409238952726376351e-03, -6.404867664506121855e-03, -6.400486181350428100e-03, -6.396094510858600819e-03, -6.391692660646109900e-03, -6.387280638344717751e-03, -6.382858451602201749e-03, -6.378426108082488680e-03, -6.373983615465767492e-03, -6.369530981448217818e-03, -6.365068213742135737e-03, -6.360595320076004033e-03, -6.356112308194224181e-03, -6.351619185857519667e-03, -6.347115960842262053e-03, -6.342602640941294966e-03, -6.338079233963166484e-03, -6.333545747732641749e-03, -6.329002190090377705e-03, -6.324448568892962128e-03, -6.319884892013118323e-03, -6.315311167339411093e-03, -6.310727402776359490e-03, -6.306133606244377840e-03, -6.301529785679921454e-03, -6.296915949035250711e-03, -6.292292104278450135e-03, -6.287658259393677333e-03, -6.283014422380794363e-03, -6.278360601255523858e-03, -6.273696804049423009e-03, -6.269023038809965094e-03, -6.264339313600359067e-03, -6.259645636499508795e-03, -6.254942015602307955e-03, -6.250228459019208961e-03, -6.245504974876662715e-03, -6.240771571316461146e-03, -6.236028256496561201e-03, -6.231275038590270397e-03, -6.226511925786884331e-03, -6.221738926291170597e-03, -6.216956048323575221e-03, -6.212163300120446437e-03, -6.207360689933320852e-03, -6.202548226029746571e-03, -6.197725916692802678e-03, -6.192893770221043724e-03, -6.188051794928708764e-03, -6.183199999145472421e-03, -6.178338391216796170e-03, -6.173466979503476441e-03, -6.168585772381846716e-03, -6.163694778243924977e-03, -6.158794005496986967e-03, -6.153883462564075334e-03, -6.148963157883300529e-03, -6.144033099908652665e-03, -6.139093297109268592e-03, -6.134143757969766700e-03, -6.129184490990333654e-03, -6.124215504686291583e-03, -6.119236807588677475e-03, -6.114248408243446939e-03, -6.109250315212336364e-03, -6.104242537072109183e-03, -6.099225082415110112e-03, -6.094197959848790709e-03, -6.089161177995913200e-03, -6.084114745494662371e-03, -6.079058670998357602e-03, -6.073992963175568228e-03, -6.068917630710099660e-03, -6.063832682301037620e-03, -6.058738126662743806e-03, -6.053633972524456903e-03, -6.048520228630941374e-03, -6.043396903741935812e-03, -6.038264006632270905e-03, -6.033121546092132248e-03, -6.027969530926549462e-03, -6.022807969955970391e-03, -6.017636872015490884e-03, -6.012456245955707414e-03, -6.007266100641962467e-03, -6.002066444954863231e-03, -5.996857287789892146e-03, -5.991638638057522268e-03, -5.986410504683410683e-03, -5.981172896607975242e-03, -5.975925822786700738e-03, -5.970669292189950683e-03, -5.965403313803176351e-03, -5.960127896626578499e-03, -5.954843049675285181e-03, -5.949548781979436748e-03, -5.944245102583915231e-03, -5.938932020548483119e-03, -5.933609544947710500e-03, -5.928277684871164147e-03, -5.922936449423008530e-03, -5.917585847722235670e-03, -5.912225888902801312e-03, -5.906856582113152211e-03, -5.901477936516805536e-03, -5.896089961291583852e-03, -5.890692665630450388e-03, -5.885286058740744029e-03, -5.879870149844763916e-03, -5.874444948179277648e-03, -5.869010462995696495e-03, -5.863566703560278356e-03, -5.858113679153702756e-03, -5.852651399071233905e-03, -5.847179872622965298e-03, -5.841699109133322715e-03, -5.836209117941400758e-03, -5.830709908400720856e-03, -5.825201489879573008e-03, -5.819683871760538731e-03, -5.814157063440697493e-03, -5.808621074331782839e-03, -5.803075913859793815e-03, -5.797521591465422570e-03, -5.791958116603402110e-03, -5.786385498743273903e-03, -5.780803747368720019e-03, -5.775212871978006347e-03, -5.769612882083614835e-03, -5.764003787212350176e-03, -5.758385596905624300e-03, -5.752758320718704375e-03, -5.747121968221623536e-03, -5.741476548998352553e-03, -5.735822072647433004e-03, -5.730158548781429974e-03, -5.724485987027159301e-03, -5.718804397025843700e-03, -5.713113788432721586e-03, -5.707414170917303811e-03, -5.701705554163165497e-03, -5.695987947868194970e-03, -5.690261361744473195e-03, -5.684525805517842700e-03, -5.678781288928665648e-03, -5.673027821731093517e-03, -5.667265413693584920e-03, -5.661494074598506614e-03, -5.655713814242211562e-03, -5.649924642435378945e-03, -5.644126569002208375e-03, -5.638319603781363591e-03, -5.632503756625161472e-03, -5.626679037400113270e-03, -5.620845455986497007e-03, -5.615003022278491907e-03, -5.609151746184385702e-03, -5.603291637626199063e-03, -5.597422706539812234e-03, -5.591544962874989318e-03, -5.585658416595452001e-03, -5.579763077678579451e-03, -5.573858956115572243e-03, -5.567946061911584199e-03, -5.562024405085318202e-03, -5.556093995669502371e-03, -5.550154843710213524e-03, -5.544206959267649996e-03, -5.538250352415494127e-03, -5.532285033241078794e-03, -5.526311011845632011e-03, -5.520328298343778195e-03, -5.514336902864046437e-03, -5.508336835548199167e-03, -5.502328106551974615e-03, -5.496310726044610628e-03, -5.490284704208778753e-03, -5.484250051240788064e-03, -5.478206777350394345e-03, -5.472154892761100196e-03, -5.466094407709665842e-03, -5.460025332446351125e-03, -5.453947677235107191e-03, -5.447861452353082098e-03, -5.441766668090940867e-03, -5.435663334752724105e-03, -5.429551462656021475e-03, -5.423431062131626491e-03, -5.417302143523674424e-03, -5.411164717189863478e-03, -5.405018793500943053e-03, -5.398864382841307014e-03, -5.392701495608147148e-03, -5.386530142212435888e-03, -5.380350333078022518e-03, -5.374162078642311449e-03, -5.367965389355676756e-03, -5.361760275681730185e-03, -5.355546748097457337e-03, -5.349324817092790917e-03, -5.343094493170924726e-03, -5.336855786848063860e-03, -5.330608708653782925e-03, -5.324353269130512566e-03, -5.318089478833756302e-03, -5.311817348332310840e-03, -5.305536888207819379e-03, -5.299248109054974579e-03, -5.292951021481437889e-03, -5.286645636107981799e-03, -5.280331963568456882e-03, -5.274010014509213258e-03, -5.267679799590030409e-03, -5.261341329483250687e-03, -5.254994614874441104e-03, -5.248639666461786188e-03, -5.242276494956340377e-03, -5.235905111082259610e-03, -5.229525525576276569e-03, -5.223137749188016404e-03, -5.216741792679818052e-03, -5.210337666827016996e-03, -5.203925382417498580e-03, -5.197504950251865402e-03, -5.191076381143648957e-03, -5.184639685918914984e-03, -5.178194875416425660e-03, -5.171741960487571087e-03, -5.165280951996601734e-03, -5.158811860820153132e-03, -5.152334697847513016e-03, -5.145849473980739289e-03, -5.139356200134199450e-03, -5.132854887235183822e-03, -5.126345546222971401e-03, -5.119828188049915796e-03, -5.113302823680482452e-03, -5.106769464091897442e-03, -5.100228120273679958e-03, -5.093678803227735113e-03, -5.087121523968734724e-03, -5.080556293523215243e-03, -5.073983122930544876e-03, -5.067402023242422240e-03, -5.060813005522711572e-03, -5.054216080847709000e-03, -5.047611260305927446e-03, -5.040998554998433155e-03, -5.034377976038322683e-03, -5.027749534550962282e-03, -5.021113241674184796e-03, -5.014469108557725874e-03, -5.007817146363931736e-03, -5.001157366266785996e-03, -4.994489779452976515e-03, -4.987814397121009824e-03, -4.981131230481570214e-03, -4.974440290757631625e-03, -4.967741589183994472e-03, -4.961035137007872853e-03, -4.954320945488042797e-03, -4.947599025895805906e-03, -4.940869389514120254e-03, -4.934132047638271727e-03, -4.927387011575226974e-03, -4.920634292643983818e-03, -4.913873902175664929e-03, -4.907105851513112772e-03, -4.900330152011109046e-03, -4.893546815036293150e-03, -4.886755851967359079e-03, -4.879957274194631281e-03, -4.873151093120249404e-03, -4.866337320158396415e-03, -4.859515966734844969e-03, -4.852687044287083175e-03, -4.845850564264589551e-03, -4.839006538128302198e-03, -4.832154977351228557e-03, -4.825295893417519931e-03, -4.818429297823562628e-03, -4.811555202077000444e-03, -4.804673617697399930e-03, -4.797784556215768138e-03, -4.790888029174644562e-03, -4.783984048128409917e-03, -4.777072624642754450e-03, -4.770153770295017075e-03, -4.763227496673943379e-03, -4.756293815380000477e-03, -4.749352738024957207e-03, -4.742404276231986480e-03, -4.735448441635969723e-03, -4.728485245882957377e-03, -4.721514700630501972e-03, -4.714536817547421328e-03, -4.707551608314181936e-03, -4.700559084622314351e-03, -4.693559258174702896e-03, -4.686552140685759128e-03, -4.679537743880855458e-03, -4.672516079497057197e-03, -4.665487159282084330e-03, -4.658450994995463369e-03, -4.651407598407496929e-03, -4.644356981300054761e-03, -4.637299155465884198e-03, -4.630234132708878174e-03, -4.623161924844311141e-03, -4.616082543698348147e-03, -4.608996001108220907e-03, -4.601902308922442043e-03, -4.594801479000391355e-03, -4.587693523212517908e-03, -4.580578453440222082e-03, -4.573456281576100159e-03, -4.566327019523503707e-03, -4.559190679196746879e-03, -4.552047272521292029e-03, -4.544896811433189396e-03, -4.537739307879796145e-03, -4.530574773818773701e-03, -4.523403221219189294e-03, -4.516224662060535841e-03, -4.509039108333443187e-03, -4.501846572039109977e-03, -4.494647065189464122e-03, -4.487440599807548773e-03, -4.480227187926552612e-03, -4.473006841590925278e-03, -4.465779572855425872e-03, -4.458545393785810773e-03, -4.451304316458210876e-03, -4.444056352959433430e-03, -4.436801515387097349e-03, -4.429539815849193457e-03, -4.422271266464352507e-03, -4.414995879361674307e-03, -4.407713666680959305e-03, -4.400424640572574153e-03, -4.393128813196928682e-03, -4.385826196725421330e-03, -4.378516803339539687e-03, -4.371200645231473718e-03, -4.363877734603630043e-03, -4.356548083668753367e-03, -4.349211704650325465e-03, -4.341868609781581595e-03, -4.334518811306643273e-03, -4.327162321479555498e-03, -4.319799152564960699e-03, -4.312429316837522800e-03, -4.305052826582139724e-03, -4.297669694094226160e-03, -4.290279931679089054e-03, -4.282883551652336140e-03, -4.275480566339659970e-03, -4.268070988077138882e-03, -4.260654829210714853e-03, -4.253232102096425951e-03, -4.245802819100676952e-03, -4.238366992599554989e-03, -4.230924634979626661e-03, -4.223475758636892861e-03, -4.216020375977948438e-03, -4.208558499419000343e-03, -4.201090141386249269e-03, -4.193615314316050981e-03, -4.186134030654362938e-03, -4.178646302857452928e-03, -4.171152143390870377e-03, -4.163651564730540960e-03, -4.156144579362095262e-03, -4.148631199780868778e-03, -4.141111438492024212e-03, -4.133585308010451730e-03, -4.126052820860995340e-03, -4.118513989578008808e-03, -4.110968826705544733e-03, -4.103417344797619971e-03, -4.095859556417618015e-03, -4.088295474138692320e-03, -4.080725110543518240e-03, -4.073148478224646041e-03, -4.065565589783926709e-03, -4.057976457832806853e-03, -4.050381094992505648e-03, -4.042779513893430231e-03, -4.035171727175908621e-03, -4.027557747489164501e-03, -4.019937587492461266e-03, -4.012311259854082005e-03, -4.004678777252053748e-03, -3.997040152373559398e-03, -3.989395397915143290e-03, -3.981744526582966202e-03, -3.974087551092250238e-03, -3.966424484167633581e-03, -3.958755338542943245e-03, -3.951080126961529007e-03, -3.943398862175746464e-03, -3.935711556947162591e-03, -3.928018224046807283e-03, -3.920318876254643391e-03, -3.912613526359877240e-03, -3.904902187160780389e-03, -3.897184871464896058e-03, -3.889461592088953694e-03, -3.881732361858288276e-03, -3.873997193607819998e-03, -3.866256100181133561e-03, -3.858509094431147347e-03, -3.850756189219508869e-03, -3.842997397416844565e-03, -3.835232731903003098e-03, -3.827462205566470755e-03, -3.819685831304756550e-03, -3.811903622024144598e-03, -3.804115590640057536e-03, -3.796321750076501848e-03, -3.788522113266307254e-03, -3.780716693151349624e-03, -3.772905502682023186e-03, -3.765088554817584438e-03, -3.757265862525936608e-03, -3.749437438783929325e-03, -3.741603296576878103e-03, -3.733763448898752991e-03, -3.725917908752434445e-03, -3.718066689149088395e-03, -3.710209803108915211e-03, -3.702347263660103228e-03, -3.694479083839998391e-03, -3.686605276694071218e-03, -3.678725855276639752e-03, -3.670840832650271949e-03, -3.662950221886012055e-03, -3.655054036063717579e-03, -3.647152288271048384e-03, -3.639244991604601194e-03, -3.631332159169316752e-03, -3.623413804078268619e-03, -3.615489939453008818e-03, -3.607560578423305020e-03, -3.599625734127519586e-03, -3.591685419711986363e-03, -3.583739648331346356e-03, -3.575788433148722068e-03, -3.567831787335086925e-03, -3.559869724070091872e-03, -3.551902256540895742e-03, -3.543929397943445907e-03, -3.535951161481482117e-03, -3.527967560366834874e-03, -3.519978607819682602e-03, -3.511984317067923678e-03, -3.503984701347931906e-03, -3.495979773903490524e-03, -3.487969547986999146e-03, -3.479954036858385648e-03, -3.471933253785895474e-03, -3.463907212045433306e-03, -3.455875924920819801e-03, -3.447839405704013205e-03, -3.439797667694610185e-03, -3.431750724200105605e-03, -3.423698588535734662e-03, -3.415641274024825043e-03, -3.407578793998175017e-03, -3.399511161794384340e-03, -3.391438390760019485e-03, -3.383360494249098432e-03, -3.375277485623354341e-03, -3.367189378252427676e-03, -3.359096185513267725e-03, -3.350997920790887638e-03, -3.342894597477262877e-03, -3.334786228972601903e-03, -3.326672828684215134e-03, -3.318554410027292970e-03, -3.310430986424288229e-03, -3.302302571305134726e-03, -3.294169178107517453e-03, -3.286030820276284511e-03, -3.277887511263798386e-03, -3.269739264529752075e-03, -3.261586093541483933e-03, -3.253428011773401313e-03, -3.245265032707274171e-03, -3.237097169832447562e-03, -3.228924436645273961e-03, -3.220746846649488824e-03, -3.212564413355978137e-03, -3.204377150283095870e-03, -3.196185070956180426e-03, -3.187988188907700787e-03, -3.179786517677594352e-03, -3.171580070812528816e-03, -3.163368861866789044e-03, -3.155152904401073606e-03, -3.146932211983813170e-03, -3.138706798190021678e-03, -3.130476676602086950e-03, -3.122241860809144877e-03, -3.114002364407304508e-03, -3.105758200999999760e-03, -3.097509384196947720e-03, -3.089255927615331288e-03, -3.080997844879146061e-03, -3.072735149619046369e-03, -3.064467855472657529e-03, -3.056195976084283110e-03, -3.047919525105353359e-03, -3.039638516193776414e-03, -3.031352963014211522e-03, -3.023062879238334888e-03, -3.014768278544174840e-03, -3.006469174616870337e-03, -2.998165581147624499e-03, -2.989857511834900696e-03, -2.981544980383319266e-03, -2.973228000504490615e-03, -2.964906585916291838e-03, -2.956580750343178535e-03, -2.948250507516486651e-03, -2.939915871173415501e-03, -2.931576855058305384e-03, -2.923233472921481398e-03, -2.914885738520089139e-03, -2.906533665617403849e-03, -2.898177267983105803e-03, -2.889816559393507123e-03, -2.881451553631006208e-03, -2.873082264484409960e-03, -2.864708705748730388e-03, -2.856330891225462160e-03, -2.847948834722442962e-03, -2.839562550053173918e-03, -2.831172051038037801e-03, -2.822777351503132429e-03, -2.814378465281089023e-03, -2.805975406210419951e-03, -2.797568188135737301e-03, -2.789156824908144497e-03, -2.780741330384146025e-03, -2.772321718426970158e-03, -2.763898002905400622e-03, -2.755470197694597119e-03, -2.747038316675444805e-03, -2.738602373734752484e-03, -2.730162382765581770e-03, -2.721718357666616083e-03, -2.713270312342516265e-03, -2.704818260703742341e-03, -2.696362216666855788e-03, -2.687902194153979178e-03, -2.679438207093037729e-03, -2.670970269418000871e-03, -2.662498395068226519e-03, -2.654022597989279860e-03, -2.645542892131773263e-03, -2.637059291452657772e-03, -2.628571809914184015e-03, -2.620080461484240470e-03, -2.611585260136601097e-03, -2.603086219850275686e-03, -2.594583354610319973e-03, -2.586076678406653423e-03, -2.577566205235416654e-03, -2.569051949097750191e-03, -2.560533924000666598e-03, -2.552012143956353986e-03, -2.543486622982424946e-03, -2.534957375102201045e-03, -2.526424414344096130e-03, -2.517887754741893452e-03, -2.509347410334998064e-03, -2.500803395167854829e-03, -2.492255723290298392e-03, -2.483704408757341983e-03, -2.475149465629524793e-03, -2.466590907972336048e-03, -2.458028749856472610e-03, -2.449463005358081848e-03, -2.440893688558100696e-03, -2.432320813543072720e-03, -2.423744394403984977e-03, -2.415164445237576001e-03, -2.406580980145183943e-03, -2.397994013233559294e-03, -2.389403558614186605e-03, -2.380809630403534719e-03, -2.372212242723368593e-03, -2.363611409700067979e-03, -2.355007145465069351e-03, -2.346399464154593547e-03, -2.337788379910048231e-03, -2.329173906877394715e-03, -2.320556059207425081e-03, -2.311934851056045379e-03, -2.303310296583640712e-03, -2.294682409955481166e-03, -2.286051205341449021e-03, -2.277416696916364017e-03, -2.268778898859815513e-03, -2.260137825355499393e-03, -2.251493490592426303e-03, -2.242845908763750271e-03, -2.234195094067610490e-03, -2.225541060706440026e-03, -2.216883822887222993e-03, -2.208223394821748689e-03, -2.199559790726053014e-03, -2.190893024820731155e-03, -2.182223111330753706e-03, -2.173550064485807540e-03, -2.164873898519714245e-03, -2.156194627670685992e-03, -2.147512266181584445e-03, -2.138826828299327919e-03, -2.130138328275261311e-03, -2.121446780364926680e-03, -2.112752198828421035e-03, -2.104054597929812601e-03, -2.095353991937387583e-03, -2.086650395123937265e-03, -2.077943821766048069e-03, -2.069234286144929023e-03, -2.060521802545270745e-03, -2.051806385256528704e-03, -2.043088048571779607e-03, -2.034366806788544518e-03, -2.025642674208088037e-03, -2.016915665135703226e-03, -2.008185793881056384e-03, -1.999453074757111953e-03, -1.990717522081351162e-03, -1.981979150175094181e-03, -1.973237973363363516e-03, -1.964494005975152887e-03, -1.955747262343208222e-03, -1.946997756804409729e-03, -1.938245503699135468e-03, -1.929490517371555604e-03, -1.920732812169892402e-03, -1.911972402445710284e-03, -1.903209302554770407e-03, -1.894443526855846705e-03, -1.885675089712059681e-03, -1.876904005489777238e-03, -1.868130288558986999e-03, -1.859353953293568437e-03, -1.850575014070578606e-03, -1.841793485271104539e-03, -1.833009381279083853e-03, -1.824222716482631597e-03, -1.815433505272853265e-03, -1.806641762044701319e-03, -1.797847501196261997e-03, -1.789050737129031354e-03, -1.780251484248169180e-03, -1.771449756961921340e-03, -1.762645569681955222e-03, -1.753838936823151140e-03, -1.745029872803978118e-03, -1.736218392045867217e-03, -1.727404508973505145e-03, -1.718588238015076241e-03, -1.709769593601674631e-03, -1.700948590167561609e-03, -1.692125242150439076e-03, -1.683299563990741125e-03, -1.674471570132493158e-03, -1.665641275022106691e-03, -1.656808693109742409e-03, -1.647973838848086538e-03, -1.639136726693229702e-03, -1.630297371103954160e-03, -1.621455786541991639e-03, -1.612611987472308689e-03, -1.603765988362490860e-03, -1.594917803683100054e-03, -1.586067447907474597e-03, -1.577214935512079872e-03, -1.568360280975905716e-03, -1.559503498780733573e-03, -1.550644603411415346e-03, -1.541783609355240007e-03, -1.532920531102329549e-03, -1.524055383145406532e-03, -1.515188179980150353e-03, -1.506318936104608305e-03, -1.497447666019445815e-03, -1.488574384228237872e-03, -1.479699105236734809e-03, -1.470821843553743761e-03, -1.461942613689911317e-03, -1.453061430159080297e-03, -1.444178307477089968e-03, -1.435293260162630183e-03, -1.426406302736544238e-03, -1.417517449722074116e-03, -1.408626715645261212e-03, -1.399734115033807267e-03, -1.390839662418365437e-03, -1.381943372331799567e-03, -1.373045259309072300e-03, -1.364145337887523717e-03, -1.355243622606634116e-03, -1.346340128008406949e-03, -1.337434868636756249e-03, -1.328527859037762719e-03, -1.319619113759970151e-03, -1.310708647353641234e-03, -1.301796474371651365e-03, -1.292882609368255914e-03, -1.283967066900474317e-03, -1.275049861526849748e-03, -1.266131007808341631e-03, -1.257210520307601182e-03, -1.248288413589234433e-03, -1.239364702220191895e-03, -1.230439400768642937e-03, -1.221512523805341017e-03, -1.212584085902414580e-03, -1.203654101634235715e-03, -1.194722585576692446e-03, -1.185789552307477557e-03, -1.176855016406349892e-03, -1.167918992454525457e-03, -1.158981495035039336e-03, -1.150042538732530366e-03, -1.141102138133518688e-03, -1.132160307826277383e-03, -1.123217062400109741e-03, -1.114272416446622765e-03, -1.105326384558515248e-03, -1.096378981330437550e-03, -1.087430221358280137e-03, -1.078480119239442255e-03, -1.069528689573213780e-03, -1.060575946959649817e-03, -1.051621906000943301e-03, -1.042666581300204188e-03, -1.033709987462334834e-03, -1.024752139093311172e-03, -1.015793050800451814e-03, -1.006832737192696033e-03, -9.978712128799812221e-04, -9.889084924736225770e-04, -9.799445905860791270e-04, -9.709795218313407947e-04, -9.620133008243032455e-04, -9.530459421810331911e-04, -9.440774605190562462e-04, -9.351078704566323551e-04, -9.261371866136261901e-04, -9.171654236102870983e-04, -9.081925960686200753e-04, -8.992187186112753257e-04, -8.902438058619062660e-04, -8.812678724454596577e-04, -8.722909329874464811e-04, -8.633130021148200306e-04, -8.543340944547479473e-04, -8.453542246359919748e-04, -8.363734072876856298e-04, -8.273916570402069844e-04, -8.184089885244533354e-04, -8.094254163721274330e-04, -8.004409552159969313e-04, -7.914556196892895109e-04, -7.824694244259508113e-04, -7.734823840609387916e-04, -7.644945132295825332e-04, -7.555058265679711433e-04, -7.465163387127228198e-04, -7.375260643013641050e-04, -7.285350179717106980e-04, -7.195432143621306991e-04, -7.105506681118315977e-04, -7.015573938601365675e-04, -6.925634062473550812e-04, -6.835687199135589542e-04, -6.745733494999683888e-04, -6.655773096477126229e-04, -6.565806149987197344e-04, -6.475832801949864314e-04, -6.385853198788583179e-04, -6.295867486932984515e-04, -6.205875812812708652e-04, -6.115878322861146178e-04, -6.025875163513171951e-04, -5.935866481208976675e-04, -5.845852422387750333e-04, -5.755833133490479434e-04, -5.665808760962719312e-04, -5.575779451248345873e-04, -5.485745350793308018e-04, -5.395706606043383343e-04, -5.305663363447001403e-04, -5.215615769453944839e-04, -5.125563970508062450e-04, -5.035508113060202648e-04, -4.945448343555767894e-04, -4.855384808443653950e-04, -4.765317654168900615e-04, -4.675247027175482455e-04, -4.585173073909095212e-04, -4.495095940810895610e-04, -4.405015774321261379e-04, -4.314932720877570800e-04, -4.224846926917944835e-04, -4.134758538875029222e-04, -4.044667703178737514e-04, -3.954574566259028796e-04, -3.864479274539668651e-04, -3.774381974441985373e-04, -3.684282812382609954e-04, -3.594181934777296804e-04, -3.504079488034645144e-04, -3.413975618558840949e-04, -3.323870472752491595e-04, -3.233764197009294486e-04, -3.143656937722891188e-04, -3.053548841274550353e-04, -2.963440054047001594e-04, -2.873330722412142805e-04, -2.783220992739825444e-04, -2.693111011390618035e-04, -2.603000924718566539e-04, -2.512890879074964126e-04, -2.422781020797087946e-04, -2.332671496220986476e-04, -2.242562451674256021e-04, -2.152454033474756484e-04, -2.062346387933409954e-04, -1.972239661351955060e-04, -1.882134000026718091e-04, -1.792029550242346041e-04, -1.701926458274610895e-04, -1.611824870393145344e-04, -1.521724932854198688e-04, -1.431626791909448957e-04, -1.341530593793675808e-04, -1.251436484738632619e-04, -1.161344610961722944e-04, -1.071255118669797393e-04, -9.811681540619308103e-05, -8.910838633221520276e-05, -8.010023926282425666e-05, -7.109238881394546632e-05, -6.208484960103315923e-05, -5.307763623784134924e-05, -4.407076333730541661e-05, -3.506424551081371383e-05, -2.605809736848648341e-05, -1.705233351945270218e-05, -8.046968571224128957e-06, 9.579828699265420083e-07, 9.962506199190313957e-06, 1.896658681284385894e-05, 2.797021010887567634e-05, 3.697336148670845939e-05, 4.597602634692140455e-05, 5.497819009187667535e-05, 6.397983812534087692e-05, 7.298095585271003477e-05, 8.198152868073144942e-05, 9.098154201762810188e-05, 9.998098127382500132e-05, 1.089798318606679021e-04, 1.179780791916512032e-04, 1.269757086815377796e-04, 1.359727057470863599e-04, 1.449690558067729946e-04, 1.539647442805141240e-04, 1.629597565902915393e-04, 1.719540781597764896e-04, 1.809476944145509136e-04, 1.899405907817321160e-04, 1.989327526905978636e-04, 2.079241655723085324e-04, 2.169148148596292797e-04, 2.259046859875574458e-04, 2.348937643929418357e-04, 2.438820355147097512e-04, 2.528694847934884692e-04, 2.618560976722289014e-04, 2.708418595959298817e-04, 2.798267560113624542e-04, 2.888107723677910566e-04, 2.977938941160986779e-04, 3.067761067100104890e-04, 3.157573956047177730e-04, 3.247377462580990082e-04, 3.337171441298453505e-04, 3.426955746821844467e-04, 3.516730233796033127e-04, 3.606494756884707055e-04, 3.696249170781638264e-04, 3.785993330197877696e-04, 3.875727089869013416e-04, 3.965450304556406599e-04, 4.055162829044410013e-04, 4.144864518142639962e-04, 4.234555226682145258e-04, 4.324234809521723243e-04, 4.413903121545074840e-04, 4.503560017658098926e-04, 4.593205352796102280e-04, 4.682838981915030552e-04, 4.772460760003706197e-04, 4.862070542070074828e-04, 4.951668183153422548e-04, 5.041253538315608549e-04, 5.130826462648322220e-04, 5.220386811270290783e-04, 5.309934439323546387e-04, 5.399469201984590135e-04, 5.488990954450727886e-04, 5.578499551952218740e-04, 5.667994849743566727e-04, 5.757476703110699307e-04, 5.846944967368241687e-04, 5.936399497856752108e-04, 6.025840149948920223e-04, 6.115266779045835282e-04, 6.204679240579194640e-04, 6.294077390007580619e-04, 6.383461082822615516e-04, 6.472830174546279286e-04, 6.562184520728090624e-04, 6.651523976952357017e-04, 6.740848398830412945e-04, 6.830157642007828739e-04, 6.919451562161651288e-04, 7.008730014996698236e-04, 7.097992856256676473e-04, 7.187239941710522276e-04, 7.276471127164560633e-04, 7.365686268453778499e-04, 7.454885221449051007e-04, 7.544067842054308446e-04, 7.633233986203954774e-04, 7.722383509868831816e-04, 7.811516269052684765e-04, 7.900632119794268786e-04, 7.989730918163616110e-04, 8.078812520268288623e-04, 8.167876782250515577e-04, 8.256923560284631621e-04, 8.345952710584039541e-04, 8.434964089392665669e-04, 8.523957552997041146e-04, 8.612932957712658320e-04, 8.701890159895081652e-04, 8.790829015936274440e-04, 8.879749382261795066e-04, 8.968651115337995024e-04, 9.057534071663340958e-04, 9.146398107780510022e-04, 9.235243080262783150e-04, 9.324068845726093784e-04, 9.412875260820447506e-04, 9.501662182236985613e-04, 9.590429466705372189e-04, 9.679176970990910128e-04, 9.767904551900756863e-04, 9.856612066281252894e-04, 9.945299371015140812e-04, 1.003396632302769320e-03, 1.012261277928304479e-03, 1.021123859678633918e-03, 1.029984363258010975e-03, 1.038842774375029919e-03, 1.047699078742366820e-03, 1.056553262076491374e-03, 1.065405310098396134e-03, 1.074255208532720043e-03, 1.083102943108963170e-03, 1.091948499560118236e-03, 1.100791863623891203e-03, 1.109633021041822641e-03, 1.118471957560014359e-03, 1.127308658928844040e-03, 1.136143110902699399e-03, 1.144975299240595960e-03, 1.153805209705794114e-03, 1.162632828066031791e-03, 1.171458140093143254e-03, 1.180281131563681429e-03, 1.189101788258636883e-03, 1.197920095963172843e-03, 1.206736040467234301e-03, 1.215549607565181989e-03, 1.224360783055999892e-03, 1.233169552743041764e-03, 1.241975902434132393e-03, 1.250779817942299218e-03, 1.259581285084496660e-03, 1.268380289682820425e-03, 1.277176817563651203e-03, 1.285970854558347474e-03, 1.294762386502989852e-03, 1.303551399238098759e-03, 1.312337878609257406e-03, 1.321121810466724085e-03, 1.329903180665675030e-03, 1.338681975065813233e-03, 1.347458179531991649e-03, 1.356231779933937372e-03, 1.365002762145984270e-03, 1.373771112047675151e-03, 1.382536815523407667e-03, 1.391299858462631198e-03, 1.400060226759496226e-03, 1.408817906313465824e-03, 1.417572883029022054e-03, 1.426325142815423755e-03, 1.435074671587386989e-03, 1.443821455264259965e-03, 1.452565479771175975e-03, 1.461306731037753876e-03, 1.470045194999253409e-03, 1.478780857595747089e-03, 1.487513704772811928e-03, 1.496243722481261848e-03, 1.504970896676779708e-03, 1.513695213321017766e-03, 1.522416658380244380e-03, 1.531135217826554628e-03, 1.539850877636988850e-03, 1.548563623794265570e-03, 1.557273442286491796e-03, 1.565980319106901730e-03, 1.574684240254459362e-03, 1.583385191733599354e-03, 1.592083159553942971e-03, 1.600778129731012141e-03, 1.609470088285363610e-03, 1.618159021243805850e-03, 1.626844914638019305e-03, 1.635527754505686779e-03, 1.644207526890107893e-03, 1.652884217839927601e-03, 1.661557813409851982e-03, 1.670228299659781744e-03, 1.678895662656011353e-03, 1.687559888469883319e-03, 1.696220963178985373e-03, 1.704878872866286360e-03, 1.713533603620845305e-03, 1.722185141537555106e-03, 1.730833472716845900e-03, 1.739478583265313683e-03, 1.748120459295335848e-03, 1.756759086925309713e-03, 1.765394452279267631e-03, 1.774026541487480667e-03, 1.782655340686212708e-03, 1.791280836017419918e-03, 1.799903013629387382e-03, 1.808521859676327738e-03, 1.817137360318633573e-03, 1.825749501722584043e-03, 1.834358270060466303e-03, 1.842963651511293028e-03, 1.851565632259545178e-03, 1.860164198496368519e-03, 1.868759336418720791e-03, 1.877351032230062345e-03, 1.885939272140109381e-03, 1.894524042364546194e-03, 1.903105329125632985e-03, 1.911683118651852408e-03, 1.920257397178092365e-03, 1.928828150945334843e-03, 1.937395366201210591e-03, 1.945959029199740209e-03, 1.954519126201089124e-03, 1.963075643472148284e-03, 1.971628567286175943e-03, 1.980177883923008204e-03, 1.988723579668708833e-03, 1.997265640816149948e-03, 2.005804053664760490e-03, 2.014338804520256036e-03, 2.022869879695326622e-03, 2.031397265508802334e-03, 2.039920948286822085e-03, 2.048440914361518254e-03, 2.056957150072183296e-03, 2.065469641764431860e-03, 2.073978375790886883e-03, 2.082483338510925878e-03, 2.090984516290320117e-03, 2.099481895502289339e-03, 2.107975462526298291e-03, 2.116465203748740635e-03, 2.124951105563069494e-03, 2.133433154369507746e-03, 2.141911336575285252e-03, 2.150385638594261555e-03, 2.158856046847533895e-03, 2.167322547763151849e-03, 2.175785127775886618e-03, 2.184243773327883709e-03, 2.192698470867853258e-03, 2.201149206852220149e-03, 2.209595967743817335e-03, 2.218038740013052439e-03, 2.226477510137077256e-03, 2.234912264600452149e-03, 2.243342989894904493e-03, 2.251769672518975224e-03, 2.260192298979062271e-03, 2.268610855788132097e-03, 2.277025329466863309e-03, 2.285435706542839583e-03, 2.293841973551204953e-03, 2.302244117034421816e-03, 2.310642123542009860e-03, 2.319035979631107677e-03, 2.327425671866150542e-03, 2.335811186819066430e-03, 2.344192511068916938e-03, 2.352569631202490116e-03, 2.360942533814023789e-03, 2.369311205504974396e-03, 2.377675632884672288e-03, 2.386035802569594008e-03, 2.394391701184056184e-03, 2.402743315359931030e-03, 2.411090631736321956e-03, 2.419433636960586186e-03, 2.427772317687069276e-03, 2.436106660578226616e-03, 2.444436652303837599e-03, 2.452762279541637926e-03, 2.461083528977084985e-03, 2.469400387303107187e-03, 2.477712841220666012e-03, 2.486020877438408199e-03, 2.494324482672883453e-03, 2.502623643648184924e-03, 2.510918347096534244e-03, 2.519208579758012642e-03, 2.527494328380317217e-03, 2.535775579719421868e-03, 2.544052320538761972e-03, 2.552324537610390146e-03, 2.560592217713668697e-03, 2.568855347636328675e-03, 2.577113914174113379e-03, 2.585367904130529866e-03, 2.593617304317505541e-03, 2.601862101554583678e-03, 2.610102282670057929e-03, 2.618337834499703375e-03, 2.626568743887879379e-03, 2.634794997686741146e-03, 2.643016582756925817e-03, 2.651233485967243245e-03, 2.659445694194470869e-03, 2.667653194323907091e-03, 2.675855973249109329e-03, 2.684054017871652896e-03, 2.692247315101690443e-03, 2.700435851857625399e-03, 2.708619615066285447e-03, 2.716798591662610701e-03, 2.724972768590196246e-03, 2.733142132801051009e-03, 2.741306671255359668e-03, 2.749466370922094578e-03, 2.757621218778269837e-03, 2.765771201810039367e-03, 2.773916307011408018e-03, 2.782056521385401198e-03, 2.790191831943231345e-03, 2.798322225704942805e-03, 2.806447689699204107e-03, 2.814568210963012615e-03, 2.822683776542297355e-03, 2.830794373491543441e-03, 2.838899988874006748e-03, 2.847000609761382584e-03, 2.855096223234359493e-03, 2.863186816382365558e-03, 2.871272376303317300e-03, 2.879352890104200369e-03, 2.887428344900712200e-03, 2.895498727817450227e-03, 2.903564025987695908e-03, 2.911624226553490621e-03, 2.919679316666330855e-03, 2.927729283485954771e-03, 2.935774114181503597e-03, 2.943813795930695903e-03, 2.951848315920496766e-03, 2.959877661346849327e-03, 2.967901819414442768e-03, 2.975920777337272630e-03, 2.983934522338292997e-03, 2.991943041649590407e-03, 2.999946322512115834e-03, 3.007944352176170413e-03, 3.015937117901205510e-03, 3.023924606955533459e-03, 3.031906806616932112e-03, 3.039883704172262335e-03, 3.047855286917691350e-03, 3.055821542158360538e-03, 3.063782457208911927e-03, 3.071738019393288697e-03, 3.079688216044438112e-03, 3.087633034504976785e-03, 3.095572462126416555e-03, 3.103506486270245224e-03, 3.111435094306707911e-03, 3.119358273615869571e-03, 3.127276011586853453e-03, 3.135188295618525876e-03, 3.143095113119134983e-03, 3.150996451506113839e-03, 3.158892298206965581e-03, 3.166782640658116332e-03, 3.174667466305939982e-03, 3.182546762606036552e-03, 3.190420517023827198e-03, 3.198288717034335638e-03, 3.206151350121917536e-03, 3.214008403780862014e-03, 3.221859865515069865e-03, 3.229705722837872706e-03, 3.237545963272633193e-03, 3.245380574352011230e-03, 3.253209543618994833e-03, 3.261032858625704037e-03, 3.268850506934395297e-03, 3.276662476117107609e-03, 3.284468753755429623e-03, 3.292269327441140619e-03, 3.300064184775418179e-03, 3.307853313369934524e-03, 3.315636700845625735e-03, 3.323414334833780723e-03, 3.331186202975279249e-03, 3.338952292921200382e-03, 3.346712592332594383e-03, 3.354467088880220757e-03, 3.362215770245136764e-03, 3.369958624118322282e-03, 3.377695638200897514e-03, 3.385426800203778647e-03, 3.393152097848238600e-03, 3.400871518865643782e-03, 3.408585050997230744e-03, 3.416292681994646113e-03, 3.423994399619592274e-03, 3.431690191644072834e-03, 3.439380045850085575e-03, 3.447063950029790290e-03, 3.454741891986087311e-03, 3.462413859531539382e-03, 3.470079840489429402e-03, 3.477739822692977635e-03, 3.485393793985981387e-03, 3.493041742222594264e-03, 3.500683655267041242e-03, 3.508319520994208039e-03, 3.515949327289267286e-03, 3.523573062047897098e-03, 3.531190713175951477e-03, 3.538802268590007620e-03, 3.546407716217080119e-03, 3.554007043994451397e-03, 3.561600239870170437e-03, 3.569187291802691526e-03, 3.576768187761140104e-03, 3.584342915724935026e-03, 3.591911463684331965e-03, 3.599473819640212208e-03, 3.607029971603804234e-03, 3.614579907597332067e-03, 3.622123615653248963e-03, 3.629661083815287782e-03, 3.637192300137274004e-03, 3.644717252684194324e-03, 3.652235929531422523e-03, 3.659748318765346144e-03, 3.667254408483135338e-03, 3.674754186792387675e-03, 3.682247641812133425e-03, 3.689734761671727061e-03, 3.697215534511430132e-03, 3.704689948482564783e-03, 3.712157991747253982e-03, 3.719619652478612769e-03, 3.727074918860416499e-03, 3.734523779087650739e-03, 3.741966221366237622e-03, 3.749402233912863674e-03, 3.756831804955533625e-03, 3.764254922732845291e-03, 3.771671575495019139e-03, 3.779081751502773746e-03, 3.786485439028264722e-03, 3.793882626354465413e-03, 3.801273301775656959e-03, 3.808657453597294722e-03, 3.816035070135616238e-03, 3.823406139718633044e-03, 3.830770650684941960e-03, 3.838128591384752479e-03, 3.845479950179188974e-03, 3.852824715440838869e-03, 3.860162875553558789e-03, 3.867494418912238198e-03, 3.874819333923290761e-03, 3.882137609004381994e-03, 3.889449232584585824e-03, 3.896754193104071465e-03, 3.904052479014618639e-03, 3.911344078779413307e-03, 3.918628980872779222e-03, 3.925907173780806766e-03, 3.933178646000592277e-03, 3.940443386041291018e-03, 3.947701382423026914e-03, 3.954952623677433776e-03, 3.962197098348141898e-03, 3.969434794989714667e-03, 3.976665702168731900e-03, 3.983889808462945901e-03, 3.991107102462003106e-03, 3.998317572767093667e-03, 4.005521207990820481e-03, 4.012717996757673641e-03, 4.019907927703690424e-03, 4.027090989476686013e-03, 4.034267170735916959e-03, 4.041436460152607671e-03, 4.048598846409682400e-03, 4.055754318201591768e-03, 4.062902864234873949e-03, 4.070044473227418282e-03, 4.077179133909531253e-03, 4.084306835022702246e-03, 4.091427565320643507e-03, 4.098541313568872073e-03, 4.105648068544564926e-03, 4.112747819037090684e-03, 4.119840553847341734e-03, 4.126926261788660573e-03, 4.134004931685807648e-03, 4.141076552375883360e-03, 4.148141112707646322e-03, 4.155198601542080608e-03, 4.162249007752191060e-03, 4.169292320222787313e-03, 4.176328527850928750e-03, 4.183357619545764045e-03, 4.190379584228278755e-03, 4.197394410831790587e-03, 4.204402088301659700e-03, 4.211402605595443091e-03, 4.218395951682630922e-03, 4.225382115545122698e-03, 4.232361086176980071e-03, 4.239332852584242091e-03, 4.246297403785475981e-03, 4.253254728811119677e-03, 4.260204816704376077e-03, 4.267147656520194759e-03, 4.274083237326199193e-03, 4.281011548202002387e-03, 4.287932578239790626e-03, 4.294846316544064999e-03, 4.301752752231473124e-03, 4.308651874431257585e-03, 4.315543672284977497e-03, 4.322428134946686325e-03, 4.329305251582611820e-03, 4.336175011371667769e-03, 4.343037403505230210e-03, 4.349892417186924064e-03, 4.356740041633081970e-03, 4.363580266072473665e-03, 4.370413079746496808e-03, 4.377238471908829164e-03, 4.384056431825959430e-03, 4.390866948776956519e-03, 4.397670012053240575e-03, 4.404465610959154565e-03, 4.411253734811364929e-03, 4.418034372939428842e-03, 4.424807514685527056e-03, 4.431573149404321663e-03, 4.438331266463373288e-03, 4.445081855242924256e-03, 4.451824905135961900e-03, 4.458560405548035559e-03, 4.465288345897653818e-03, 4.472008715616129261e-03, 4.478721504147315652e-03, 4.485426700948132693e-03, 4.492124295488213875e-03, 4.498814277250172758e-03, 4.505496635729196175e-03, 4.512171360433605422e-03, 4.518838440884602979e-03, 4.525497866616101650e-03, 4.532149627175196399e-03, 4.538793712121578020e-03, 4.545430111028441258e-03, 4.552058813481384136e-03, 4.558679809079409749e-03, 4.565293087434202889e-03, 4.571898638170724186e-03, 4.578496450926947299e-03, 4.585086515353614320e-03, 4.591668821115077979e-03, 4.598243357888232193e-03, 4.604810115363464421e-03, 4.611369083243987803e-03, 4.617920251246354635e-03, 4.624463609100305447e-03, 4.630999146548500124e-03, 4.637526853347016635e-03, 4.644046719265135931e-03, 4.650558734085117295e-03, 4.657062887602780345e-03, 4.663559169626797264e-03, 4.670047569979643431e-03, 4.676528078496541840e-03, 4.683000685026312247e-03, 4.689465379431096217e-03, 4.695922151586127274e-03, 4.702370991380294685e-03, 4.708811888715479926e-03, 4.715244833507421449e-03, 4.721669815684802207e-03, 4.728086825190012943e-03, 4.734495851978612682e-03, 4.740896886019798848e-03, 4.747289917296238122e-03, 4.753674935803838333e-03, 4.760051931552237645e-03, 4.766420894564452407e-03, 4.772781814877130428e-03, 4.779134682540245663e-03, 4.785479487617481584e-03, 4.791816220186136642e-03, 4.798144870336843240e-03, 4.804465428174062129e-03, 4.810777883815776229e-03, 4.817082227393692725e-03, 4.823378449052977655e-03, 4.829666538952415503e-03, 4.835946487264879308e-03, 4.842218284176413000e-03, 4.848481919887144727e-03, 4.854737384610620723e-03, 4.860984668574337003e-03, 4.867223762019532926e-03, 4.873454655201001247e-03, 4.879677338387541745e-03, 4.885891801861651576e-03, 4.892098035919703949e-03, 4.898296030871713072e-03, 4.904485777041714921e-03, 4.910667264767629332e-03, 4.916840484400999793e-03, 4.923005426307478297e-03, 4.929162080866556460e-03, 4.935310438471700832e-03, 4.941450489530090084e-03, 4.947582224463073844e-03, 4.953705633705935904e-03, 4.959820707707736365e-03, 4.965927436931812100e-03, 4.972025811855145319e-03, 4.978115822969216182e-03, 4.984197460779063449e-03, 4.990270715804111072e-03, 4.996335578577579262e-03, 5.002392039646962399e-03, 5.008440089573842555e-03, 5.014479718933656169e-03, 5.020510918316407889e-03, 5.026533678325843107e-03, 5.032547989579929347e-03, 5.038553842710942129e-03, 5.044551228365234258e-03, 5.050540137203465667e-03, 5.056520559900260815e-03, 5.062492487144706552e-03, 5.068455909640074558e-03, 5.074410818103752829e-03, 5.080357203267615168e-03, 5.086295055877495565e-03, 5.092224366693993975e-03, 5.098145126491539572e-03, 5.104057326059245961e-03, 5.109960956200256324e-03, 5.115856007732297664e-03, 5.121742471487450953e-03, 5.127620338311917811e-03, 5.133489599066744756e-03, 5.139350244626950635e-03, 5.145202265882271690e-03, 5.151045653736638537e-03, 5.156880399108636735e-03, 5.162706492931298623e-03, 5.168523926151940250e-03, 5.174332689732595927e-03, 5.180132774649687764e-03, 5.185924171894288476e-03, 5.191706872471763164e-03, 5.197480867402217743e-03, 5.203246147720380112e-03, 5.209002704475267087e-03, 5.214750528730835791e-03, 5.220489611565265475e-03, 5.226219944071838763e-03, 5.231941517358051734e-03, 5.237654322546078829e-03, 5.243358350773115462e-03, 5.249053593190583511e-03, 5.254740040964934501e-03, 5.260417685277025100e-03, 5.266086517322672231e-03, 5.271746528312359036e-03, 5.277397709471166355e-03, 5.283040052039076305e-03, 5.288673547270826558e-03, 5.294298186435974531e-03, 5.299913960818669265e-03, 5.305520861718076436e-03, 5.311118880448185801e-03, 5.316708008337624712e-03, 5.322288236730122156e-03, 5.327859556983941501e-03, 5.333421960472699286e-03, 5.338975438584428468e-03, 5.344519982722325223e-03, 5.350055584304488736e-03, 5.355582234763780689e-03, 5.361099925548265012e-03, 5.366608648120603335e-03, 5.372108393958893724e-03, 5.377599154555766023e-03, 5.383080921419166817e-03, 5.388553686071793913e-03, 5.394017440051582929e-03, 5.399472174911439278e-03, 5.404917882219181791e-03, 5.410354553557849763e-03, 5.415782180525557238e-03, 5.421200754735336011e-03, 5.426610267815494722e-03, 5.432010711409381194e-03, 5.437402077175529022e-03, 5.442784356787428585e-03, 5.448157541933904349e-03, 5.453521624318944869e-03, 5.458876595661538850e-03, 5.464222447696085415e-03, 5.469559172171897105e-03, 5.474886760853913716e-03, 5.480205205521890451e-03, 5.485514497971116094e-03, 5.490814630011880450e-03, 5.496105593469939252e-03, 5.501387380186295584e-03, 5.506659982017094064e-03, 5.511923390833945238e-03, 5.517177598523706136e-03, 5.522422596988614714e-03, 5.527658378146091227e-03, 5.532884933929087777e-03, 5.538102256285883616e-03, 5.543310337179985399e-03, 5.548509168590472392e-03, 5.553698742511737133e-03, 5.558879050953681455e-03, 5.564050085941410310e-03, 5.569211839515676721e-03, 5.574364303732668412e-03, 5.579507470663862961e-03, 5.584641332396445002e-03, 5.589765881032842179e-03, 5.594881108691179654e-03, 5.599987007505078003e-03, 5.605083569623493626e-03, 5.610170787211106458e-03, 5.615248652448071899e-03, 5.620317157530191690e-03, 5.625376294668625078e-03, 5.630426056090299079e-03, 5.635466434037758425e-03, 5.640497420768949589e-03, 5.645519008557609367e-03, 5.650531189693081859e-03, 5.655533956480368780e-03, 5.660527301239969868e-03, 5.665511216308222880e-03, 5.670485694037143143e-03, 5.675450726794265682e-03, 5.680406306963017328e-03, 5.685352426942318592e-03, 5.690289079147156127e-03, 5.695216256007850676e-03, 5.700133949970815142e-03, 5.705042153497908407e-03, 5.709940859066985237e-03, 5.714830059171675976e-03, 5.719709746321168832e-03, 5.724579913040818771e-03, 5.729440551871449287e-03, 5.734291655369971701e-03, 5.739133216108907240e-03, 5.743965226676804245e-03, 5.748787679678060356e-03, 5.753600567732782868e-03, 5.758403883477108791e-03, 5.763197619563098159e-03, 5.767981768658549287e-03, 5.772756323447376069e-03, 5.777521276629143943e-03, 5.782276620919753370e-03, 5.787022349050692169e-03, 5.791758453769582822e-03, 5.796484927840034156e-03, 5.801201764041493888e-03, 5.805908955169596444e-03, 5.810606494035737077e-03, 5.815294373467661676e-03, 5.819972586308814512e-03, 5.824641125418889877e-03, 5.829299983673475599e-03, 5.833949153964331467e-03, 5.838588629199318106e-03, 5.843218402302191410e-03, 5.847838466212985052e-03, 5.852448813887750276e-03, 5.857049438298726762e-03, 5.861640332434111048e-03, 5.866221489298387853e-03, 5.870792901912180034e-03, 5.875354563312129748e-03, 5.879906466551195095e-03, 5.884448604698433276e-03, 5.888980970839179270e-03, 5.893503558074801238e-03, 5.898016359522903485e-03, 5.902519368317563249e-03, 5.907012577608722684e-03, 5.911495980562851520e-03, 5.915969570362424913e-03, 5.920433340206362333e-03, 5.924887283309857554e-03, 5.929331392904174831e-03, 5.933765662237104263e-03, 5.938190084572614845e-03, 5.942604653191051363e-03, 5.947009361388970461e-03, 5.951404202479351410e-03, 5.955789169791552741e-03, 5.960164256671117954e-03, 5.964529456480108585e-03, 5.968884762596888237e-03, 5.973230168416286505e-03, 5.977565667349341375e-03, 5.981891252823633154e-03, 5.986206918283194268e-03, 5.990512657188307166e-03, 5.994808463015856466e-03, 5.999094329258969002e-03, 6.003370249427509957e-03, 6.007636217047526012e-03, 6.011892225661698980e-03, 6.016138268829087331e-03, 6.020374340125295327e-03, 6.024600433142473892e-03, 6.028816541489088153e-03, 6.033022658790427456e-03, 6.037218778688001677e-03, 6.041404894840110215e-03, 6.045581000921340653e-03, 6.049747090623049280e-03, 6.053903157653127767e-03, 6.058049195735906028e-03, 6.062185198612428903e-03, 6.066311160040342536e-03, 6.070427073793752994e-03, 6.074532933663557600e-03, 6.078628733457067633e-03, 6.082714466998527005e-03, 6.086790128128500774e-03, 6.090855710704425920e-03, 6.094911208600228836e-03, 6.098956615706618498e-03, 6.102991925931024013e-03, 6.107017133197323137e-03, 6.111032231446439020e-03, 6.115037214635671466e-03, 6.119032076739255518e-03, 6.123016811747979821e-03, 6.126991413669491057e-03, 6.130955876528189873e-03, 6.134910194365040918e-03, 6.138854361237978778e-03, 6.142788371221568830e-03, 6.146712218407272658e-03, 6.150625896903182642e-03, 6.154529400834298641e-03, 6.158422724342423916e-03, 6.162305861586054104e-03, 6.166178806740651303e-03, 6.170041553998328356e-03, 6.173894097568310285e-03, 6.177736431676418213e-03, 6.181568550565327835e-03, 6.185390448494794934e-03, 6.189202119741222564e-03, 6.193003558598030554e-03, 6.196794759375402230e-03, 6.200575716400522942e-03, 6.204346424017497669e-03, 6.208106876587195753e-03, 6.211857068487561424e-03, 6.215596994113391748e-03, 6.219326647876503161e-03, 6.223046024205486013e-03, 6.226755117546057573e-03, 6.230453922360872088e-03, 6.234142433129403679e-03, 6.237820644348347071e-03, 6.241488550531101506e-03, 6.245146146208357951e-03, 6.248793425927595159e-03, 6.252430384253371103e-03, 6.256057015767310832e-03, 6.259673315067946012e-03, 6.263279276770995080e-03, 6.266874895509025843e-03, 6.270460165931923853e-03, 6.274035082706362447e-03, 6.277599640516297146e-03, 6.281153834062538910e-03, 6.284697658063206904e-03, 6.288231107253398032e-03, 6.291754176385259793e-03, 6.295266860228117788e-03, 6.298769153568441019e-03, 6.302261051209710925e-03, 6.305742547972614798e-03, 6.309213638694969456e-03, 6.312674318231762012e-03, 6.316124581455010226e-03, 6.319564423254027050e-03, 6.322993838535262770e-03, 6.326412822222240821e-03, 6.329821369255815393e-03, 6.333219474593843566e-03, 6.336607133211646752e-03, 6.339984340101464250e-03, 6.343351090272976271e-03, 6.346707378752869388e-03, 6.350053200585220776e-03, 6.353388550831309996e-03, 6.356713424569558277e-03, 6.360027816895732350e-03, 6.363331722922847301e-03, 6.366625137781165705e-03, 6.369908056618160327e-03, 6.373180474598623413e-03, 6.376442386904704850e-03, 6.379693788735694461e-03, 6.382934675308274408e-03, 6.386165041856422912e-03, 6.389384883631440276e-03, 6.392594195901867352e-03, 6.395792973953633859e-03, 6.398981213090016752e-03, 6.402158908631540475e-03, 6.405326055916217218e-03, 6.408482650299185228e-03, 6.411628687153250045e-03, 6.414764161868334591e-03, 6.417889069851763668e-03, 6.421003406528318601e-03, 6.424107167340144427e-03, 6.427200347746800206e-03, 6.430282943225131519e-03, 6.433354949269480365e-03, 6.436416361391628788e-03, 6.439467175120675707e-03, 6.442507386003204321e-03, 6.445536989603223126e-03, 6.448555981502222291e-03, 6.451564357298996723e-03, 6.454562112609922749e-03, 6.457549243068808065e-03, 6.460525744326846634e-03, 6.463491612052800830e-03, 6.466446841932762049e-03, 6.469391429670557497e-03, 6.472325370987213299e-03, 6.475248661621448021e-03, 6.478161297329337008e-03, 6.481063273884557843e-03, 6.483954587078316623e-03, 6.486835232719185759e-03, 6.489705206633472612e-03, 6.492564504664813559e-03, 6.495413122674563444e-03, 6.498251056541416541e-03, 6.501078302161762169e-03, 6.503894855449525100e-03, 6.506700712336129996e-03, 6.509495868770572534e-03, 6.512280320719512211e-03, 6.515054064167016476e-03, 6.517817095114915478e-03, 6.520569409582432571e-03, 6.523311003606602383e-03, 6.526041873241865757e-03, 6.528762014560380265e-03, 6.531471423651872762e-03, 6.534170096623641115e-03, 6.536858029600732881e-03, 6.539535218725605302e-03, 6.542201660158614498e-03, 6.544857350077521937e-03, 6.547502284677882145e-03, 6.550136460172779895e-03, 6.552759872793027969e-03, 6.555372518787125520e-03, 6.557974394421087205e-03, 6.560565495978757170e-03, 6.563145819761571388e-03, 6.565715362088699047e-03, 6.568274119296893358e-03, 6.570822087740685845e-03, 6.573359263792286598e-03, 6.575885643841543511e-03, 6.578401224296082789e-03, 6.580906001581214408e-03, 6.583399972139967679e-03, 6.585883132433034866e-03, 6.588355478938898689e-03, 6.590817008153793295e-03, 6.593267716591551600e-03, 6.595707600783918406e-03, 6.598136657280213001e-03, 6.600554882647644006e-03, 6.602962273471092540e-03, 6.605358826353206758e-03, 6.607744537914410528e-03, 6.610119404792893887e-03, 6.612483423644633859e-03, 6.614836591143317263e-03, 6.617178903980470810e-03, 6.619510358865422078e-03, 6.621830952525205836e-03, 6.624140681704723636e-03, 6.626439543166636262e-03, 6.628727533691472149e-03, 6.631004650077438299e-03, 6.633270889140665746e-03, 6.635526247715098531e-03, 6.637770722652402630e-03, 6.640004310822192335e-03, 6.642227009111759638e-03, 6.644438814426448930e-03, 6.646639723689202507e-03, 6.648829733840972561e-03, 6.651008841840444497e-03, 6.653177044664225145e-03, 6.655334339306792461e-03, 6.657480722780348935e-03, 6.659616192115154661e-03, 6.661740744359168249e-03, 6.663854376578311374e-03, 6.665957085856300500e-03, 6.668048869294803879e-03, 6.670129724013379967e-03, 6.672199647149344715e-03, 6.674258635858055198e-03, 6.676306687312689309e-03, 6.678343798704297792e-03, 6.680369967241906598e-03, 6.682385190152328666e-03, 6.684389464680430201e-03, 6.686382788088862661e-03, 6.688365157658263983e-03, 6.690336570687138024e-03, 6.692297024491958637e-03, 6.694246516407119374e-03, 6.696185043784846740e-03, 6.698112603995493367e-03, 6.700029194427138159e-03, 6.701934812485963594e-03, 6.703829455595953016e-03, 6.705713121199148238e-03, 6.707585806755482147e-03, 6.709447509742835943e-03, 6.711298227657089450e-03, 6.713137958012016168e-03, 6.714966698339454136e-03, 6.716784446189069148e-03, 6.718591199128588071e-03, 6.720386954743723384e-03, 6.722171710638056089e-03, 6.723945464433266420e-03, 6.725708213768911807e-03, 6.727459956302622897e-03, 6.729200689709963906e-03, 6.730930411684455175e-03, 6.732649119937708475e-03, 6.734356812199249198e-03, 6.736053486216627383e-03, 6.737739139755370872e-03, 6.739413770599036492e-03, 6.741077376549198773e-03, 6.742729955425377092e-03, 6.744371505065185728e-03, 6.746002023324185540e-03, 6.747621508076019278e-03, 6.749229957212250254e-03, 6.750827368642557495e-03, 6.752413740294629929e-03, 6.753989070114121279e-03, 6.755553356064780170e-03, 6.757106596128321756e-03, 6.758648788304606400e-03, 6.760179930611372526e-03, 6.761700021084560142e-03, 6.763209057778063645e-03, 6.764707038763795137e-03, 6.766193962131762489e-03, 6.767669825990004287e-03, 6.769134628464643609e-03, 6.770588367699773534e-03, 6.772031041857642757e-03, 6.773462649118470839e-03, 6.774883187680592195e-03, 6.776292655760374553e-03, 6.777691051592251055e-03, 6.779078373428722853e-03, 6.780454619540379931e-03, 6.781819788215829974e-03, 6.783173877761803326e-03, 6.784516886503055844e-03, 6.785848812782482517e-03, 6.787169654960983900e-03, 6.788479411417578865e-03, 6.789778080549359503e-03, 6.791065660771485046e-03, 6.792342150517236520e-03, 6.793607548237899640e-03, 6.794861852402967785e-03, 6.796105061499919942e-03, 6.797337174034374235e-03, 6.798558188529987313e-03, 6.799768103528592254e-03, 6.800966917590051120e-03, 6.802154629292358166e-03, 6.803331237231571328e-03, 6.804496740021868592e-03, 6.805651136295564479e-03, 6.806794424702992084e-03, 6.807926603912616698e-03, 6.809047672611087849e-03, 6.810157629503043285e-03, 6.811256473311281569e-03, 6.812344202776735198e-03, 6.813420816658428102e-03, 6.814486313733429668e-03, 6.815540692797017810e-03, 6.816583952662545395e-03, 6.817616092161442841e-03, 6.818637110143325672e-03, 6.819647005475834925e-03, 6.820645777044845315e-03, 6.821633423754235384e-03, 6.822609944526080925e-03, 6.823575338300520536e-03, 6.824529604035837159e-03, 6.825472740708478890e-03, 6.826404747312944492e-03, 6.827325622861887475e-03, 6.828235366386082271e-03, 6.829133976934444183e-03, 6.830021453573970405e-03, 6.830897795389822419e-03, 6.831763001485291302e-03, 6.832617070981769972e-03, 6.833460003018766195e-03, 6.834291796753992794e-03, 6.835112451363162082e-03, 6.835921966040272094e-03, 6.836720339997284790e-03, 6.837507572464444384e-03, 6.838283662689998918e-03, 6.839048609940430977e-03, 6.839802413500292895e-03, 6.840545072672257927e-03, 6.841276586777195710e-03, 6.841996955154022210e-03, 6.842706177159848906e-03, 6.843404252169917740e-03, 6.844091179577571626e-03, 6.844766958794296086e-03, 6.845431589249702763e-03, 6.846085070391583205e-03, 6.846727401685797840e-03, 6.847358582616356638e-03, 6.847978612685421719e-03, 6.848587491413280458e-03, 6.849185218338363704e-03, 6.849771793017178992e-03, 6.850347215024459729e-03, 6.850911483952990856e-03, 6.851464599413692978e-03, 6.852006561035716911e-03, 6.852537368466199083e-03, 6.853057021370520009e-03, 6.853565519432100461e-03, 6.854062862352627850e-03, 6.854549049851763054e-03, 6.855024081667391092e-03, 6.855487957555468463e-03, 6.855940677290161059e-03, 6.856382240663708855e-03, 6.856812647486453666e-03, 6.857231897586931087e-03, 6.857639990811749062e-03, 6.858036927025682426e-03, 6.858422706111593978e-03, 6.858797327970482180e-03, 6.859160792521487235e-03, 6.859513099701857256e-03, 6.859854249466987297e-03, 6.860184241790328284e-03, 6.860503076663535330e-03, 6.860810754096348905e-03, 6.861107274116591374e-03, 6.861392636770268470e-03, 6.861666842121452205e-03, 6.861929890252378879e-03, 6.862181781263333724e-03, 6.862422515272778405e-03, 6.862652092417269485e-03, 6.862870512851471441e-03, 6.863077776748132373e-03, 6.863273884298170743e-03, 6.863458835710555678e-03, 6.863632631212423195e-03, 6.863795271048940029e-03, 6.863946755483446745e-03, 6.864087084797352786e-03, 6.864216259290181581e-03, 6.864334279279552323e-03, 6.864441145101186914e-03, 6.864536857108909096e-03, 6.864621415674640112e-03, 6.864694821188370953e-03, 6.864757074058228277e-03, 6.864808174710411957e-03, 6.864848123589194218e-03, 6.864876921156991621e-03, 6.864894567894224559e-03, 6.864901064299490721e-03, 6.864896410889391627e-03, 6.864880608198672268e-03, 6.864853656780132637e-03, 6.864815557204664159e-03, 6.864766310061201117e-03, 6.864705915956806521e-03, 6.864634375516564559e-03, 6.864551689383683805e-03, 6.864457858219396615e-03, 6.864352882703018965e-03, 6.864236763531951328e-03, 6.864109501421647441e-03, 6.863971097105607370e-03, 6.863821551335441695e-03, 6.863660864880716250e-03, 6.863489038529176772e-03, 6.863306073086531192e-03, 6.863111969376597087e-03, 6.862906728241208870e-03, 6.862690350540246419e-03, 6.862462837151666294e-03, 6.862224188971421945e-03, 6.861974406913567796e-03, 6.861713491910130004e-03, 6.861441444911214015e-03, 6.861158266884928233e-03, 6.860863958817475967e-03, 6.860558521713007972e-03, 6.860241956593757760e-03, 6.859914264499938387e-03, 6.859575446489814439e-03, 6.859225503639673413e-03, 6.858864437043798827e-03, 6.858492247814503180e-03, 6.858108937082089789e-03, 6.857714505994891817e-03, 6.857308955719238451e-03, 6.856892287439449694e-03, 6.856464502357874531e-03, 6.856025601694827609e-03, 6.855575586688636078e-03, 6.855114458595615301e-03, 6.854642218690053246e-03, 6.854158868264260789e-03, 6.853664408628478040e-03, 6.853158841110978429e-03, 6.852642167057968955e-03, 6.852114387833655243e-03, 6.851575504820227661e-03, 6.851025519417774587e-03, 6.850464433044450678e-03, 6.849892247136279110e-03, 6.849308963147281680e-03, 6.848714582549457995e-03, 6.848109106832688323e-03, 6.847492537504907932e-03, 6.846864876091867703e-03, 6.846226124137390866e-03, 6.845576283203122329e-03, 6.844915354868722109e-03, 6.844243340731740420e-03, 6.843560242407670594e-03, 6.842866061529949070e-03, 6.842160799749886016e-03, 6.841444458736752054e-03, 6.840717040177703677e-03, 6.839978545777826609e-03, 6.839228977260098513e-03, 6.838468336365407206e-03, 6.837696624852533309e-03, 6.836913844498200554e-03, 6.836119997096923133e-03, 6.835315084461205185e-03, 6.834499108421385541e-03, 6.833672070825665482e-03, 6.832833973540193735e-03, 6.831984818448891272e-03, 6.831124607453663809e-03, 6.830253342474174559e-03, 6.829371025448020306e-03, 6.828477658330624721e-03, 6.827573243095267849e-03, 6.826657781733062695e-03, 6.825731276253033282e-03, 6.824793728681934242e-03, 6.823845141064461585e-03, 6.822885515463069685e-03, 6.821914853958091843e-03, 6.820933158647654419e-03, 6.819940431647720201e-03, 6.818936675092071922e-03, 6.817921891132284508e-03, 6.816896081937736350e-03, 6.815859249695624920e-03, 6.814811396610955495e-03, 6.813752524906502121e-03, 6.812682636822829305e-03, 6.811601734618331037e-03, 6.810509820569103298e-03, 6.809406896969084563e-03, 6.808292966129939582e-03, 6.807168030381145242e-03, 6.806032092069909910e-03, 6.804885153561189039e-03, 6.803727217237723335e-03, 6.802558285499976307e-03, 6.801378360766202787e-03, 6.800187445472277194e-03, 6.798985542071919914e-03, 6.797772653036581944e-03, 6.796548780855386773e-03, 6.795313928035164215e-03, 6.794068097100501580e-03, 6.792811290593686428e-03, 6.791543511074711777e-03, 6.790264761121243137e-03, 6.788975043328686169e-03, 6.787674360310073929e-03, 6.786362714696206506e-03, 6.785040109135474090e-03, 6.783706546293988802e-03, 6.782362028855550874e-03, 6.781006559521563642e-03, 6.779640141011148043e-03, 6.778262776061034188e-03, 6.776874467425654178e-03, 6.775475217876995512e-03, 6.774065030204777169e-03, 6.772643907216272657e-03, 6.771211851736447934e-03, 6.769768866607853847e-03, 6.768314954690620930e-03, 6.766850118862601654e-03, 6.765374362019106746e-03, 6.763887687073170604e-03, 6.762390096955329249e-03, 6.760881594613788598e-03, 6.759362183014282210e-03, 6.757831865140127674e-03, 6.756290643992217057e-03, 6.754738522589022118e-03, 6.753175503966535320e-03, 6.751601591178365246e-03, 6.750016787295604753e-03, 6.748421095406956748e-03, 6.746814518618564176e-03, 6.745197060054193040e-03, 6.743568722855097092e-03, 6.741929510180015225e-03, 6.740279425205257351e-03, 6.738618471124614186e-03, 6.736946651149411033e-03, 6.735263968508354258e-03, 6.733570426447794965e-03, 6.731866028231433229e-03, 6.730150777140544473e-03, 6.728424676473820747e-03, 6.726687729547411489e-03, 6.724939939694960823e-03, 6.723181310267533836e-03, 6.721411844633661675e-03, 6.719631546179280837e-03, 6.717840418307825107e-03, 6.716038464440089381e-03, 6.714225688014287784e-03, 6.712402092486127389e-03, 6.710567681328621741e-03, 6.708722458032257384e-03, 6.706866426104856824e-03, 6.704999589071703424e-03, 6.703121950475390486e-03, 6.701233513875906253e-03, 6.699334282850640844e-03, 6.697424260994304726e-03, 6.695503451918985958e-03, 6.693571859254114631e-03, 6.691629486646433374e-03, 6.689676337760084961e-03, 6.687712416276481338e-03, 6.685737725894364339e-03, 6.683752270329778797e-03, 6.681756053316167954e-03, 6.679749078604150549e-03, 6.677731349961681280e-03, 6.675702871174060346e-03, 6.673663646043789463e-03, 6.671613678390680285e-03, 6.669552972051777211e-03, 6.667481530881450187e-03, 6.665399358751259405e-03, 6.663306459550009074e-03, 6.661202837183785586e-03, 6.659088495575866441e-03, 6.656963438666811325e-03, 6.654827670414248733e-03, 6.652681194793212509e-03, 6.650524015795763674e-03, 6.648356137431307884e-03, 6.646177563726317870e-03, 6.643988298724474821e-03, 6.641788346486718689e-03, 6.639577711090989716e-03, 6.637356396632551093e-03, 6.635124407223684517e-03, 6.632881746993916569e-03, 6.630628420089846979e-03, 6.628364430675196331e-03, 6.626089782930861573e-03, 6.623804481054804127e-03, 6.621508529262062036e-03, 6.619201931784865316e-03, 6.616884692872416519e-03, 6.614556816791158748e-03, 6.612218307824385341e-03, 6.609869170272658807e-03, 6.607509408453451742e-03, 6.605139026701439126e-03, 6.602758029368192144e-03, 6.600366420822361205e-03, 6.597964205449723639e-03, 6.595551387652874055e-03, 6.593127971851615518e-03, 6.590693962482608269e-03, 6.588249363999636871e-03, 6.585794180873370818e-03, 6.583328417591456476e-03, 6.580852078658612492e-03, 6.578365168596410351e-03, 6.575867691943427032e-03, 6.573359653255160875e-03, 6.570841057104072347e-03, 6.568311908079565824e-03, 6.565772210787877705e-03, 6.563221969852290651e-03, 6.560661189912869035e-03, 6.558089875626719155e-03, 6.555508031667612798e-03, 6.552915662726386224e-03, 6.550312773510765831e-03, 6.547699368745150440e-03, 6.545075453170963453e-03, 6.542441031546413453e-03, 6.539796108646574006e-03, 6.537140689263307332e-03, 6.534474778205266905e-03, 6.531798380298056185e-03, 6.529111500383916362e-03, 6.526414143322004785e-03, 6.523706313988132145e-03, 6.520988017275078201e-03, 6.518259258092216207e-03, 6.515520041365721951e-03, 6.512770372038617119e-03, 6.510010255070509087e-03, 6.507239695437923993e-03, 6.504458698133873049e-03, 6.501667268168325256e-03, 6.498865410567808421e-03, 6.496053130375540989e-03, 6.493230432651560420e-03, 6.490397322472416138e-03, 6.487553804931512139e-03, 6.484699885138673313e-03, 6.481835568220617287e-03, 6.478960859320538092e-03, 6.476075763598378512e-03, 6.473180286230615851e-03, 6.470274432410375552e-03, 6.467358207347439006e-03, 6.464431616268094365e-03, 6.461494664415297871e-03, 6.458547357048454417e-03, 6.455589699443750606e-03, 6.452621696893743632e-03, 6.449643354707630151e-03, 6.446654678211118789e-03, 6.443655672746474369e-03, 6.440646343672430316e-03, 6.437626696364320486e-03, 6.434596736213877080e-03, 6.431556468629476102e-03, 6.428505899035728832e-03, 6.425445032873993573e-03, 6.422373875601906403e-03, 6.419292432693676081e-03, 6.416200709639881088e-03, 6.413098711947518189e-03, 6.409986445140131682e-03, 6.406863914757560119e-03, 6.403731126356082895e-03, 6.400588085508356062e-03, 6.397434797803490392e-03, 6.394271268846953363e-03, 6.391097504260469415e-03, 6.387913509682314854e-03, 6.384719290766932738e-03, 6.381514853185215642e-03, 6.378300202624289685e-03, 6.375075344787740905e-03, 6.371840285395322101e-03, 6.368595030183111551e-03, 6.365339584903559854e-03, 6.362073955325262681e-03, 6.358798147233292106e-03, 6.355512166428662311e-03, 6.352216018728883834e-03, 6.348909709967679067e-03, 6.345593245994912007e-03, 6.342266632676686264e-03, 6.338929875895291284e-03, 6.335582981549319447e-03, 6.332225955553429271e-03, 6.328858803838456441e-03, 6.325481532351526562e-03, 6.322094147055781939e-03, 6.318696653930564594e-03, 6.315289058971300037e-03, 6.311871368189652526e-03, 6.308443587613294344e-03, 6.305005723285994276e-03, 6.301557781267714750e-03, 6.298099767634352496e-03, 6.294631688478059470e-03, 6.291153549906799633e-03, 6.287665358044829469e-03, 6.284167119032286856e-03, 6.280658839025359333e-03, 6.277140524196357825e-03, 6.273612180733423478e-03, 6.270073814840912765e-03, 6.266525432738882274e-03, 6.262967040663605656e-03, 6.259398644867201524e-03, 6.255820251617799990e-03, 6.252231867199430776e-03, 6.248633497911988514e-03, 6.245025150071450461e-03, 6.241406830009578119e-03, 6.237778544074000509e-03, 6.234140298628372892e-03, 6.230492100052064525e-03, 6.226833954740482180e-03, 6.223165869104652949e-03, 6.219487849571681340e-03, 6.215799902584339016e-03, 6.212102034601258219e-03, 6.208394252096953447e-03, 6.204676561561601154e-03, 6.200948969501346789e-03, 6.197211482437832084e-03, 6.193464106908748434e-03, 6.189706849467339900e-03, 6.185939716682708513e-03, 6.182162715139626931e-03, 6.178375851438544508e-03, 6.174579132195749491e-03, 6.170772564043068044e-03, 6.166956153628112315e-03, 6.163129907614063596e-03, 6.159293832679920387e-03, 6.155447935520186147e-03, 6.151592222844999396e-03, 6.147726701380268159e-03, 6.143851377867346440e-03, 6.139966259063283152e-03, 6.136071351740633034e-03, 6.132166662687668288e-03, 6.128252198708094949e-03, 6.124327966621168247e-03, 6.120393973261840925e-03, 6.116450225480382467e-03, 6.112496730142808442e-03, 6.108533494130384371e-03, 6.104560524340050739e-03, 6.100577827684226968e-03, 6.096585411090722946e-03, 6.092583281502836172e-03, 6.088571445879279766e-03, 6.084549911194320378e-03, 6.080518684437506705e-03, 6.076477772613823880e-03, 6.072427182743756792e-03, 6.068366921863068038e-03, 6.064296997022933233e-03, 6.060217415289817847e-03, 6.056128183745703580e-03, 6.052029309487759641e-03, 6.047920799628504068e-03, 6.043802661295850573e-03, 6.039674901632870012e-03, 6.035537527798136466e-03, 6.031390546965218966e-03, 6.027233966323185428e-03, 6.023067793076201069e-03, 6.018892034443825909e-03, 6.014706697660702518e-03, 6.010511789976702608e-03, 6.006307318657045854e-03, 6.002093290981874024e-03, 5.997869714246779199e-03, 5.993636595762314584e-03, 5.989393942854344052e-03, 5.985141762863752449e-03, 5.980880063146554876e-03, 5.976608851073986033e-03, 5.972328134032263425e-03, 5.968037919422700122e-03, 5.963738214661805370e-03, 5.959429027180968008e-03, 5.955110364426853715e-03, 5.950782233860860311e-03, 5.946444642959722304e-03, 5.942097599214940171e-03, 5.937741110133200155e-03, 5.933375183236073297e-03, 5.928999826060024105e-03, 5.924615046156744488e-03, 5.920220851092498904e-03, 5.915817248448812168e-03, 5.911404245821922157e-03, 5.906981850823136287e-03, 5.902550071078519270e-03, 5.898108914229024946e-03, 5.893658387930618588e-03, 5.889198499853936890e-03, 5.884729257684581140e-03, 5.880250669122876958e-03, 5.875762741884098944e-03, 5.871265483698226081e-03, 5.866758902309991176e-03, 5.862243005479088158e-03, 5.857717800979698498e-03, 5.853183296601073213e-03, 5.848639500146831163e-03, 5.844086419435652949e-03, 5.839524062300725793e-03, 5.834952436589937834e-03, 5.830371550165999554e-03, 5.825781410906108980e-03, 5.821182026702306431e-03, 5.816573405461133647e-03, 5.811955555103733538e-03, 5.807328483566039264e-03, 5.802692198798410812e-03, 5.798046708765872657e-03, 5.793392021447962836e-03, 5.788728144838909025e-03, 5.784055086947377869e-03, 5.779372855796511416e-03, 5.774681459424166503e-03, 5.769980905882494959e-03, 5.765271203238363402e-03, 5.760552359572785990e-03, 5.755824382981597487e-03, 5.751087281574879077e-03, 5.746341063477140507e-03, 5.741585736827455391e-03, 5.736821309779110804e-03, 5.732047790500053100e-03, 5.727265187172249535e-03, 5.722473507992393432e-03, 5.717672761171220704e-03, 5.712862954934099652e-03, 5.708044097520516627e-03, 5.703216197184252101e-03, 5.698379262193600976e-03, 5.693533300830909416e-03, 5.688678321392873216e-03, 5.683814332190425048e-03, 5.678941341548844612e-03, 5.674059357807497567e-03, 5.669168389319976034e-03, 5.664268444454192281e-03, 5.659359531592116771e-03, 5.654441659129857099e-03, 5.649514835477863553e-03, 5.644579069060499769e-03, 5.639634368316531927e-03, 5.634680741698421848e-03, 5.629718197673152721e-03, 5.624746744721500526e-03, 5.619766391338515410e-03, 5.614777146033165210e-03, 5.609779017328426522e-03, 5.604772013761488529e-03, 5.599756143883360092e-03, 5.594731416259123881e-03, 5.589697839467772447e-03, 5.584655422102426797e-03, 5.579604172770023275e-03, 5.574544100091396830e-03, 5.569475212701494385e-03, 5.564397519249006212e-03, 5.559311028396534196e-03, 5.554215748820550205e-03, 5.549111689211527927e-03, 5.543998858273632355e-03, 5.538877264724862033e-03, 5.533746917297180032e-03, 5.528607824736190418e-03, 5.523459995801484335e-03, 5.518303439266079684e-03, 5.513138163917110680e-03, 5.507964178555340394e-03, 5.502781491995214526e-03, 5.497590113064913450e-03, 5.492390050606242059e-03, 5.487181313474902983e-03, 5.481963910540068978e-03, 5.476737850684582423e-03, 5.471503142805085422e-03, 5.466259795811688471e-03, 5.461007818628125718e-03, 5.455747220191736746e-03, 5.450478009453549842e-03, 5.445200195378029594e-03, 5.439913786943139339e-03, 5.434618793140619589e-03, 5.429315222975412102e-03, 5.424003085466326014e-03, 5.418682389645218186e-03, 5.413353144557808520e-03, 5.408015359263083216e-03, 5.402669042833419671e-03, 5.397314204354839752e-03, 5.391950852926541415e-03, 5.386578997661367087e-03, 5.381198647685159209e-03, 5.375809812137540000e-03, 5.370412500171190678e-03, 5.365006720952333712e-03, 5.359592483660346844e-03, 5.354169797487930496e-03, 5.348738671641233532e-03, 5.343299115339456874e-03, 5.337851137815194380e-03, 5.332394748314176966e-03, 5.326929956095467766e-03, 5.321456770431428306e-03, 5.315975200607244919e-03, 5.310485255921682489e-03, 5.304986945686435661e-03, 5.299480279226380375e-03, 5.293965265879637186e-03, 5.288441914997274625e-03, 5.282910235943697776e-03, 5.277370238095996889e-03, 5.271821930844770507e-03, 5.266265323593331826e-03, 5.260700425758285496e-03, 5.255127246769094804e-03, 5.249545796068168409e-03, 5.243956083111178668e-03, 5.238358117366481367e-03, 5.232751908315512110e-03, 5.227137465452599829e-03, 5.221514798285109907e-03, 5.215883916333195237e-03, 5.210244829129873426e-03, 5.204597546221234085e-03, 5.198942077166007758e-03, 5.193278431535887710e-03, 5.187606618915262778e-03, 5.181926648901592942e-03, 5.176238531104889774e-03, 5.170542275147954094e-03, 5.164837890666545105e-03, 5.159125387308921562e-03, 5.153404774736382137e-03, 5.147676062622476983e-03, 5.141939260653869900e-03, 5.136194378529807501e-03, 5.130441425962102737e-03, 5.124680412675251991e-03, 5.118911348406335327e-03, 5.113134242905231601e-03, 5.107349105934254167e-03, 5.101555947268247154e-03, 5.095754776694853480e-03, 5.089945604014056019e-03, 5.084128439038443879e-03, 5.078303291593050210e-03, 5.072470171515592458e-03, 5.066629088656104604e-03, 5.060780052877060335e-03, 5.054923074053609827e-03, 5.049058162073021168e-03, 5.043185326835364704e-03, 5.037304578252602312e-03, 5.031415926249587466e-03, 5.025519380763180527e-03, 5.019614951742849829e-03, 5.013702649150214574e-03, 5.007782482959209636e-03, 5.001854463156330151e-03, 4.995918599739875184e-03, 4.989974902720916566e-03, 4.984023382122378630e-03, 4.978064047979760716e-03, 4.972096910340517012e-03, 4.966121979264315027e-03, 4.960139264823227277e-03, 4.954148777101246431e-03, 4.948150526194573275e-03, 4.942144522211674822e-03, 4.936130775272909617e-03, 4.930109295511057692e-03, 4.924080093070495705e-03, 4.918043178108145834e-03, 4.911998560792625763e-03, 4.905946251304878387e-03, 4.899886259837624505e-03, 4.893818596595602213e-03, 4.887743271795788082e-03, 4.881660295666631275e-03, 4.875569678449015454e-03, 4.869471430395422643e-03, 4.863365561770470122e-03, 4.857252082850523588e-03, 4.851131003923750927e-03, 4.845002335290456152e-03, 4.838866087262530362e-03, 4.832722270163745774e-03, 4.826570894329660320e-03, 4.820411970107788512e-03, 4.814245507857198986e-03, 4.808071517948742622e-03, 4.801890010765199994e-03, 4.795700996700801716e-03, 4.789504486161793098e-03, 4.783300489565660459e-03, 4.777089017342000220e-03, 4.770870079931824152e-03, 4.764643687787738918e-03, 4.758409851374174188e-03, 4.752168581166910794e-03, 4.745919887653533495e-03, 4.739663781333025051e-03, 4.733400272715875511e-03, 4.727129372324333743e-03, 4.720851090691936466e-03, 4.714565438363789267e-03, 4.708272425896388794e-03, 4.701972063857894242e-03, 4.695664362827706682e-03, 4.689349333396624318e-03, 4.683026986167078409e-03, 4.676697331752584230e-03, 4.670360380778386389e-03, 4.664016143880594933e-03, 4.657664631707096950e-03, 4.651305854916886959e-03, 4.644939824180183141e-03, 4.638566550178710966e-03, 4.632186043605197520e-03, 4.625798315163938759e-03, 4.619403375569967711e-03, 4.613001235550007705e-03, 4.606591905841634499e-03, 4.600175397193866957e-03, 4.593751720366641422e-03, 4.587320886131059788e-03, 4.580882905269541283e-03, 4.574437788575370575e-03, 4.567985546853022168e-03, 4.561526190917902790e-03, 4.555059731596752988e-03, 4.548586179727033899e-03, 4.542105546157288939e-03, 4.535617841747215800e-03, 4.529123077367301284e-03, 4.522621263898960950e-03, 4.516112412234778509e-03, 4.509596533277939433e-03, 4.503073637942905764e-03, 4.496543737154526203e-03, 4.490006841848980662e-03, 4.483462962972961478e-03, 4.476912111484269291e-03, 4.470354298351266603e-03, 4.463789534553144929e-03, 4.457217831080058368e-03, 4.450639198932692525e-03, 4.444053649122555946e-03, 4.437461192671766745e-03, 4.430861840613398682e-03, 4.424255603990948603e-03, 4.417642493858606190e-03, 4.411022521281389268e-03, 4.404395697334732677e-03, 4.397762033104746747e-03, 4.391121539688061168e-03, 4.384474228192070458e-03, 4.377820109734521965e-03, 4.371159195443680666e-03, 4.364491496458555546e-03, 4.357817023928314999e-03, 4.351135789013017147e-03, 4.344447802882640125e-03, 4.337753076718032716e-03, 4.331051621710405204e-03, 4.324343449061192335e-03, 4.317628569982316991e-03, 4.310906995695965548e-03, 4.304178737434900988e-03, 4.297443806441975447e-03, 4.290702213970373942e-03, 4.283953971283761819e-03, 4.277199089655858884e-03, 4.270437580370716954e-03, 4.263669454722531643e-03, 4.256894724015941600e-03, 4.250113399565573144e-03, 4.243325492696172971e-03, 4.236531014742906526e-03, 4.229729977050802024e-03, 4.222922390975307298e-03, 4.216108267881510906e-03, 4.209287619145069340e-03, 4.202460456151407321e-03, 4.195626790295999692e-03, 4.188786632984558764e-03, 4.181939995632497423e-03, 4.175086889665611742e-03, 4.168227326519112139e-03, 4.161361317638690230e-03, 4.154488874479580346e-03, 4.147610008507244747e-03, 4.140724731196802899e-03, 4.133833054033232701e-03, 4.126934988511597735e-03, 4.120030546136574552e-03, 4.113119738422718087e-03, 4.106202576894294257e-03, 4.099279073085518484e-03, 4.092349238540416920e-03, 4.085413084812294753e-03, 4.078470623464730202e-03, 4.071521866070664658e-03, 4.064566824212735748e-03, 4.057605509483460347e-03, 4.050637933484708096e-03, 4.043664107828327629e-03, 4.036684044135230645e-03, 4.029697754036475239e-03, 4.022705249172283185e-03, 4.015706541192714737e-03, 4.008701641757146487e-03, 4.001690562534441359e-03, 3.994673315203179330e-03, 3.987649911451184720e-03, 3.980620362975802878e-03, 3.973584681483724110e-03, 3.966542878691278577e-03, 3.959494966323946243e-03, 3.952440956116602330e-03, 3.945380859813658707e-03, 3.938314689168669232e-03, 3.931242455944543995e-03, 3.924164171913410541e-03, 3.917079848856916575e-03, 3.909989498565717356e-03, 3.902893132839686460e-03, 3.895790763488169058e-03, 3.888682402329380391e-03, 3.881568061191085790e-03, 3.874447751909671292e-03, 3.867321486331123329e-03, 3.860189276310444124e-03, 3.853051133711616130e-03, 3.845907070407736470e-03, 3.838757098280886834e-03, 3.831601229222423178e-03, 3.824439475132499974e-03, 3.817271847920223737e-03, 3.810098359503954427e-03, 3.802919021810745575e-03, 3.795733846776679944e-03, 3.788542846346669175e-03, 3.781346032474762996e-03, 3.774143417123647024e-03, 3.766935012264873480e-03, 3.759720829879042905e-03, 3.752500881955296314e-03, 3.745275180491931463e-03, 3.738043737495494283e-03, 3.730806564981823618e-03, 3.723563674975103200e-03, 3.716315079508571585e-03, 3.709060790623900251e-03, 3.701800820371452510e-03, 3.694535180810563663e-03, 3.687263884008641114e-03, 3.679986942042288468e-03, 3.672704366996292890e-03, 3.665416170964340241e-03, 3.658122366048435683e-03, 3.650822964359120952e-03, 3.643517978015686429e-03, 3.636207419145708834e-03, 3.628891299885209521e-03, 3.621569632378912953e-03, 3.614242428779686819e-03, 3.606909701249179107e-03, 3.599571461956902179e-03, 3.592227723081282704e-03, 3.584878496808724044e-03, 3.577523795334275423e-03, 3.570163630861065106e-03, 3.562798015600509866e-03, 3.555426961772635043e-03, 3.548050481605141259e-03, 3.540668587334555410e-03, 3.533281291205178556e-03, 3.525888605469866977e-03, 3.518490542389387729e-03, 3.511087114232657597e-03, 3.503678333276983789e-03, 3.496264211807538751e-03, 3.488844762117662875e-03, 3.481419996508710972e-03, 3.473989927290292105e-03, 3.466554566779836335e-03, 3.459113927302777305e-03, 3.451668021192786425e-03, 3.444216860791176130e-03, 3.436760458447609377e-03, 3.429298826519111294e-03, 3.421831977371218858e-03, 3.414359923376978669e-03, 3.406882676917331616e-03, 3.399400250381332759e-03, 3.391912656165496903e-03, 3.384419906674597002e-03, 3.376922014320561313e-03, 3.369418991523645632e-03, 3.361910850711726396e-03, 3.354397604320243868e-03, 3.346879264792428088e-03, 3.339355844579118028e-03, 3.331827356139060396e-03, 3.324293811938396157e-03, 3.316755224450880415e-03, 3.309211606158127001e-03, 3.301662969548996122e-03, 3.294109327120330315e-03, 3.286550691375914046e-03, 3.278987074827640746e-03, 3.271418489994571289e-03, 3.263844949403251015e-03, 3.256266465587911822e-03, 3.248683051089911854e-03, 3.241094718458419413e-03, 3.233501480249433273e-03, 3.225903349026891607e-03, 3.218300337361675381e-03, 3.210692457832347354e-03, 3.203079723024505020e-03, 3.195462145531055564e-03, 3.187839737952424465e-03, 3.180212512896018594e-03, 3.172580482976592245e-03, 3.164943660815966973e-03, 3.157302059043468750e-03, 3.149655690295301725e-03, 3.142004567214805831e-03, 3.134348702452714828e-03, 3.126688108666612030e-03, 3.119022798521164930e-03, 3.111352784688341169e-03, 3.103678079846821335e-03, 3.095998696682734919e-03, 3.088314647888599964e-03, 3.080625946164525231e-03, 3.072932604217145942e-03, 3.065234634760358439e-03, 3.057532050514742087e-03, 3.049824864207744020e-03, 3.042113088573963637e-03, 3.034396736354586649e-03, 3.026675820297709037e-03, 3.018950353158163149e-03, 3.011220347697815200e-03, 3.003485816685050065e-03, 2.995746772894997221e-03, 2.988003229109768843e-03, 2.980255198117929410e-03, 2.972502692714803184e-03, 2.964745725702292931e-03, 2.956984309889199112e-03, 2.949218458090703803e-03, 2.941448183128551538e-03, 2.933673497831360694e-03, 2.925894415033934368e-03, 2.918110947578061391e-03, 2.910323108311429520e-03, 2.902530910088830206e-03, 2.894734365771078725e-03, 2.886933488225817794e-03, 2.879128290326829747e-03, 2.871318784954325805e-03, 2.863504984995154240e-03, 2.855686903342276491e-03, 2.847864552894988771e-03, 2.840037946559175342e-03, 2.832207097246772481e-03, 2.824372017876066419e-03, 2.816532721371534185e-03, 2.808689220664135466e-03, 2.800841528690797399e-03, 2.792989658394642253e-03, 2.785133622725218146e-03, 2.777273434637888855e-03, 2.769409107094587558e-03, 2.761540653062740432e-03, 2.753668085516471856e-03, 2.745791417435630797e-03, 2.737910661806109130e-03, 2.730025831620086236e-03, 2.722136939875395394e-03, 2.714243999576297466e-03, 2.706347023732385854e-03, 2.698446025359832901e-03, 2.690541017480250607e-03, 2.682632013121538476e-03, 2.674719025317177923e-03, 2.666802067106528468e-03, 2.658881151535031143e-03, 2.650956291653669850e-03, 2.643027500519327857e-03, 2.635094791194543627e-03, 2.627158176747787510e-03, 2.619217670253352892e-03, 2.611273284790685285e-03, 2.603325033445557171e-03, 2.595372929309025436e-03, 2.587416985477794355e-03, 2.579457215054456725e-03, 2.571493631146836833e-03, 2.563526246868786263e-03, 2.555555075339082782e-03, 2.547580129682644641e-03, 2.539601423029488880e-03, 2.531618968515437357e-03, 2.523632779281542986e-03, 2.515642868474281431e-03, 2.507649249245825617e-03, 2.499651934753493229e-03, 2.491650938160055919e-03, 2.483646272633561938e-03, 2.475637951347664425e-03, 2.467625987481061531e-03, 2.459610394217742746e-03, 2.451591184747239568e-03, 2.443568372264077332e-03, 2.435541969968067939e-03, 2.427511991064180193e-03, 2.419478448762809111e-03, 2.411441356279247269e-03, 2.403400726833936334e-03, 2.395356573652707762e-03, 2.387308909966124031e-03, 2.379257749010275751e-03, 2.371203104025693554e-03, 2.363144988258450083e-03, 2.355083414959570614e-03, 2.347018397384870864e-03, 2.338949948795231507e-03, 2.330878082456390010e-03, 2.322802811639271096e-03, 2.314724149619442912e-03, 2.306642109677341668e-03, 2.298556705098541396e-03, 2.290467949173178447e-03, 2.282375855196301911e-03, 2.274280436467645931e-03, 2.266181706292010479e-03, 2.258079677978662870e-03, 2.249974364841591471e-03, 2.241865780199775449e-03, 2.233753937376505190e-03, 2.225638849700192420e-03, 2.217520530503261714e-03, 2.209398993123370437e-03, 2.201274250902340163e-03, 2.193146317186906499e-03, 2.185015205328123215e-03, 2.176880928681537448e-03, 2.168743500607582617e-03, 2.160602934470556239e-03, 2.152459243639834232e-03, 2.144312441488800160e-03, 2.136162541395610244e-03, 2.128009556742557588e-03, 2.119853500916303764e-03, 2.111694387308140318e-03, 2.103532229313427159e-03, 2.095367040331835851e-03, 2.087198833767586401e-03, 2.079027623028815823e-03, 2.070853421528356161e-03, 2.062676242682637273e-03, 2.054496099912908515e-03, 2.046313006644154969e-03, 2.038126976305889779e-03, 2.029938022331479776e-03, 2.021746158158407858e-03, 2.013551397228611258e-03, 2.005353752987462830e-03, 1.997153238885017879e-03, 1.988949868374906543e-03, 1.980743654915125256e-03, 1.972534611967370621e-03, 1.964322752997313057e-03, 1.956108091474826650e-03, 1.947890640873420169e-03, 1.939670414670600267e-03, 1.931447426347648140e-03, 1.923221689389968420e-03, 1.914993217286515203e-03, 1.906762023530051819e-03, 1.898528121617398682e-03, 1.890291525048770410e-03, 1.882052247328578785e-03, 1.873810301964309519e-03, 1.865565702467784914e-03, 1.857318462354137778e-03, 1.849068595142144703e-03, 1.840816114354484976e-03, 1.832561033517087021e-03, 1.824303366159907075e-03, 1.816043125815838257e-03, 1.807780326021843353e-03, 1.799514980318331825e-03, 1.791247102249013444e-03, 1.782976705361158289e-03, 1.774703803205413292e-03, 1.766428409336115359e-03, 1.758150537310728019e-03, 1.749870200690116593e-03, 1.741587413038774143e-03, 1.733302187924158806e-03, 1.725014538917525597e-03, 1.716724479592767610e-03, 1.708432023527695597e-03, 1.700137184303012307e-03, 1.691839975502635587e-03, 1.683540410713986121e-03, 1.675238503527282053e-03, 1.666934267536373387e-03, 1.658627716337605961e-03, 1.650318863531087792e-03, 1.642007722719555007e-03, 1.633694307509201684e-03, 1.625378631508980981e-03, 1.617060708330886158e-03, 1.608740551590187367e-03, 1.600418174904866134e-03, 1.592093591895953628e-03, 1.583766816187334205e-03, 1.575437861406086930e-03, 1.567106741181907700e-03, 1.558773469147360560e-03, 1.550438058938147018e-03, 1.542100524192518843e-03, 1.533760878551522879e-03, 1.525419135659286619e-03, 1.517075309162307407e-03, 1.508729412710307222e-03, 1.500381459955061735e-03, 1.492031464551690084e-03, 1.483679440157534453e-03, 1.475325400432938748e-03, 1.466969359040617808e-03, 1.458611329645871429e-03, 1.450251325916877745e-03, 1.441889361524091497e-03, 1.433525450140595752e-03, 1.425159605441900885e-03, 1.416791841106289796e-03, 1.408422170814239809e-03, 1.400050608248672255e-03, 1.391677167095223093e-03, 1.383301861041639005e-03, 1.374924703778169881e-03, 1.366545708997300365e-03, 1.358164890394152318e-03, 1.349782261665877225e-03, 1.341397836511925082e-03, 1.333011628634285300e-03, 1.324623651736834672e-03, 1.316233919526135776e-03, 1.307842445710304634e-03, 1.299449244000284217e-03, 1.291054328108722296e-03, 1.282657711750768981e-03, 1.274259408643408850e-03, 1.265859432505715091e-03, 1.257457797059119680e-03, 1.249054516026812302e-03, 1.240649603134013138e-03, 1.232243072108223743e-03, 1.223834936678641367e-03, 1.215425210576517390e-03, 1.207013907534948503e-03, 1.198601041289215413e-03, 1.190186625576218193e-03, 1.181770674134716322e-03, 1.173353200705602338e-03, 1.164934219031217490e-03, 1.156513742856160555e-03, 1.148091785926170019e-03, 1.139668361989385230e-03, 1.131243484795303386e-03, 1.122817168095141234e-03, 1.114389425642076624e-03, 1.105960271190579774e-03, 1.097529718497242037e-03, 1.089097781319608646e-03, 1.080664473417488215e-03, 1.072229808551793074e-03, 1.063793800485366954e-03, 1.055356462982299333e-03, 1.046917809808197352e-03, 1.038477854730426083e-03, 1.030036611517543867e-03, 1.021594093939638204e-03, 1.013150315768123443e-03, 1.004705290775999467e-03, 9.962590327377389421e-04, 9.878115554285955922e-04, 9.793628726258143870e-04, 9.709129981075730357e-04, 9.624619456533287142e-04, 9.540097290440949706e-04, 9.455563620617376446e-04, 9.371018584898133889e-04, 9.286462321124207405e-04, 9.201894967154803468e-04, 9.117316660856025160e-04, 9.032727540108963574e-04, 8.948127742802943234e-04, 8.863517406838149117e-04, 8.778896670128133331e-04, 8.694265670594075344e-04, 8.609624546168204813e-04, 8.524973434791775209e-04, 8.440312474418570129e-04, 8.355641803008987886e-04, 8.270961558532714071e-04, 8.186271878971322549e-04, 8.101572902312332951e-04, 8.016864766552811309e-04, 7.932147609697215744e-04, 7.847421569761002524e-04, 7.762686784764679217e-04, 7.677943392736477244e-04, 7.593191531714887834e-04, 7.508431339741875998e-04, 7.423662954871137814e-04, 7.338886515156567772e-04, 7.254102158664277149e-04, 7.169310023465764624e-04, 7.084510247636744253e-04, 6.999702969259837546e-04, 6.914888326422289049e-04, 6.830066457219667814e-04, 6.745237499749938978e-04, 6.660401592116036579e-04, 6.575558872428500330e-04, 6.490709478799603586e-04, 6.405853549346854229e-04, 6.320991222190916253e-04, 6.236122635459168118e-04, 6.151247927279789507e-04, 6.066367235784405698e-04, 5.981480699110613758e-04, 5.896588455395285417e-04, 5.811690642782710520e-04, 5.726787399413102312e-04, 5.641878863435578588e-04, 5.556965172996622534e-04, 5.472046466248337840e-04, 5.387122881341607382e-04, 5.302194556428761448e-04, 5.217261629667030920e-04, 5.132324239208003406e-04, 5.047382523210614154e-04, 4.962436619829605801e-04, 4.877486667223715185e-04, 4.792532803548941534e-04, 4.707575166961126324e-04, 4.622613895618513623e-04, 4.537649127675921421e-04, 4.452681001288266369e-04, 4.367709654608457719e-04, 4.282735225789965797e-04, 4.197757852985758401e-04, 4.112777674341328840e-04, 4.027794828006845502e-04, 3.942809452125581250e-04, 3.857821684842164742e-04, 3.772831664295735318e-04, 3.687839528622584664e-04, 3.602845415959717869e-04, 3.517849464434169701e-04, 3.432851812176103390e-04, 3.347852597307181483e-04, 3.262851957948863777e-04, 3.177850032215554085e-04, 3.092846958217254356e-04, 3.007842874062134240e-04, 2.922837917850651455e-04, 2.837832227679096047e-04, 2.752825941637507094e-04, 2.667819197813187148e-04, 2.582812134284848083e-04, 2.497804889125184997e-04, 2.412797600403537108e-04, 2.327790406178974886e-04, 2.242783444508663314e-04, 2.157776853436225149e-04, 2.072770771004812061e-04, 1.987765335246425517e-04, 1.902760684185520390e-04, 1.817756955841591060e-04, 1.732754288222340124e-04, 1.647752819331961159e-04, 1.562752687159557814e-04, 1.477754029691243239e-04, 1.392756984903264345e-04, 1.307761690760843602e-04, 1.222768285220800374e-04, 1.137776906229422623e-04, 1.052787691726046683e-04, 9.678007796371310015e-05, 8.828163078788903498e-05, 7.978344143599079357e-05, 7.128552369742810772e-05, 6.278789136099248360e-05, 5.429055821369795245e-05, 4.579353804208478981e-05, 3.729684463115596067e-05, 2.880049176473259201e-05, 2.030449322571649886e-05, 1.180886279540461447e-05, 3.313614254319375212e-06, -5.181238618950715446e-06, -1.367568204644682224e-05, -2.216970225199896727e-05, -3.066328546039601773e-05, -3.915641789807065647e-05, -4.764908579283783096e-05, -5.614127537363264569e-05, -6.463297287110136076e-05, -7.312416451724458100e-05, -8.161483654562833652e-05, -9.010497519102902010e-05, -9.859456669002255615e-05, -1.070835972807233926e-04, -1.155720532025219073e-04, -1.240599206966755419e-04, -1.325471860060467501e-04, -1.410338353748413396e-04, -1.495198550492929553e-04, -1.580052312768345324e-04, -1.664899503072543271e-04, -1.749739983913957408e-04, -1.834573617823127009e-04, -1.919400267344430102e-04, -2.004219795042896869e-04, -2.089032063501617862e-04, -2.173836935319115894e-04, -2.258634273115257384e-04, -2.343423939527679637e-04, -2.428205797213903140e-04, -2.512979708847774027e-04, -2.597745537125370810e-04, -2.682503144762364892e-04, -2.767252394491442869e-04, -2.851993149068156623e-04, -2.936725271267398574e-04, -3.021448623885500157e-04, -3.106163069736676721e-04, -3.190868471658921796e-04, -3.275564692511368143e-04, -3.360251595171737170e-04, -3.444929042543099472e-04, -3.529596897545639778e-04, -3.614255023128197736e-04, -3.698903282255282970e-04, -3.783541537918614240e-04, -3.868169653128831261e-04, -3.952787490922354992e-04, -4.037394914358770370e-04, -4.121991786517220256e-04, -4.206577970507115183e-04, -4.291153329455969149e-04, -4.375717726516300567e-04, -4.460271024866783681e-04, -4.544813087709599869e-04, -4.629343778272625013e-04, -4.713862959805794717e-04, -4.798370495587019708e-04, -4.882866248919589180e-04, -4.967350083129558943e-04, -5.051821861572530943e-04, -5.136281447625439889e-04, -5.220728704698079405e-04, -5.305163496220106781e-04, -5.389585685651613950e-04, -5.473995136479648275e-04, -5.558391712215519399e-04, -5.642775276401696934e-04, -5.727145692603465357e-04, -5.811502824420539072e-04, -5.895846535474008610e-04, -5.980176689417945933e-04, -6.064493149931068005e-04, -6.148795780723646407e-04, -6.233084445534774068e-04, -6.317359008129886776e-04, -6.401619332306547399e-04, -6.485865281890944994e-04, -6.570096720739968888e-04, -6.654313512738616347e-04, -6.738515521801172192e-04, -6.822702611877972051e-04, -6.906874646943457702e-04, -6.991031491006635288e-04, -7.075173008107673092e-04, -7.159299062315169345e-04, -7.243409517733048839e-04, -7.327504238492257935e-04, -7.411583088762291804e-04, -7.495645932738278323e-04, -7.579692634652413158e-04, -7.663723058765765364e-04, -7.747737069375066656e-04, -7.831734530810098485e-04, -7.915715307431150666e-04, -7.999679263634787169e-04, -8.083626263850338719e-04, -8.167556172542054941e-04, -8.251468854205435419e-04, -8.335364173373297977e-04, -8.419241994612939152e-04, -8.503102182523701244e-04, -8.586944601742754367e-04, -8.670769116941590138e-04, -8.754575592828074074e-04, -8.838363894142985903e-04, -8.922133885665743062e-04, -9.005885432211957996e-04, -9.089618398630737407e-04, -9.173332649811439003e-04, -9.257028050675590938e-04, -9.340704466188235822e-04, -9.424361761345025458e-04, -9.507999801183777359e-04, -9.591618450776156742e-04, -9.675217575234533029e-04, -9.758797039709326800e-04, -9.842356709386427226e-04, -9.925896449493110726e-04, -1.000941612529526650e-03, -1.009291560209505789e-03, -1.017639474523649411e-03, -1.025985342010208223e-03, -1.034329149211487414e-03, -1.042670882673488435e-03, -1.051010528946498155e-03, -1.059348074584828651e-03, -1.067683506146556785e-03, -1.076016810194199442e-03, -1.084347973293899731e-03, -1.092676982016556938e-03, -1.101003822936563866e-03, -1.109328482632918359e-03, -1.117650947688429881e-03, -1.125971204690383483e-03, -1.134289240230281111e-03, -1.142605040903499000e-03, -1.150918593310315931e-03, -1.159229884054652736e-03, -1.167538899745197700e-03, -1.175845626994590160e-03, -1.184150052420106149e-03, -1.192452162643372823e-03, -1.200751944290156603e-03, -1.209049383990890751e-03, -1.217344468380367022e-03, -1.225637184097912820e-03, -1.233927517787157448e-03, -1.242215456096130337e-03, -1.250500985677938451e-03, -1.258784093189587111e-03, -1.267064765293100413e-03, -1.275342988654717827e-03, -1.283618749945569012e-03, -1.291892035841402542e-03, -1.300162833022252195e-03, -1.308431128173465855e-03, -1.316696907984440034e-03, -1.324960159149743541e-03, -1.333220868368306710e-03, -1.341479022344098816e-03, -1.349734607785864175e-03, -1.357987611406866711e-03, -1.366238019925471300e-03, -1.374485820064791624e-03, -1.382730998552888363e-03, -1.390973542122444151e-03, -1.399213437511306109e-03, -1.407450671462260336e-03, -1.415685230722760419e-03, -1.423917102045593784e-03, -1.432146272188090453e-03, -1.440372727913221546e-03, -1.448596455988355276e-03, -1.456817443186280868e-03, -1.465035676284857057e-03, -1.473251142066776169e-03, -1.481463827320204886e-03, -1.489673718837996241e-03, -1.497880803418801584e-03, -1.506085067865900505e-03, -1.514286498987876947e-03, -1.522485083598719815e-03, -1.530680808517564289e-03, -1.538873660568906062e-03, -1.547063626582256563e-03, -1.555250693392710212e-03, -1.563434847840689196e-03, -1.571616076771692157e-03, -1.579794367036955766e-03, -1.587969705492651117e-03, -1.596142079001010208e-03, -1.604311474429049623e-03, -1.612477878649608764e-03, -1.620641278541019381e-03, -1.628801660986819782e-03, -1.636959012876442647e-03, -1.645113321104399928e-03, -1.653264572571404561e-03, -1.661412754183114529e-03, -1.669557852851250457e-03, -1.677699855492788316e-03, -1.685838749030622082e-03, -1.693974520393316113e-03, -1.702107156514844717e-03, -1.710236644335166997e-03, -1.718362970799876873e-03, -1.726486122860414066e-03, -1.734606087473716720e-03, -1.742722851602776513e-03, -1.750836402216414444e-03, -1.758946726288999592e-03, -1.767053810801035452e-03, -1.775157642738901895e-03, -1.783258209094593007e-03, -1.791355496866394283e-03, -1.799449493058071425e-03, -1.807540184679982953e-03, -1.815627558747832286e-03, -1.823711602283779269e-03, -1.831792302315645229e-03, -1.839869645877553967e-03, -1.847943620009694955e-03, -1.856014211758088943e-03, -1.864081408175103163e-03, -1.872145196319160119e-03, -1.880205563254913224e-03, -1.888262496052905927e-03, -1.896315981790147641e-03, -1.904366007549852238e-03, -1.912412560421192361e-03, -1.920455627499855194e-03, -1.928495195887717627e-03, -1.936531252693028411e-03, -1.944563785030085706e-03, -1.952592780019780276e-03, -1.960618224789362814e-03, -1.968640106472180264e-03, -1.976658412208340439e-03, -1.984673129143913178e-03, -1.992684244432032115e-03, -2.000691745231653485e-03, -2.008695618708668078e-03, -2.016695852035092860e-03, -2.024692432389738408e-03, -2.032685346957946101e-03, -2.040674582931272830e-03, -2.048660127508457676e-03, -2.056641967894316456e-03, -2.064620091300373595e-03, -2.072594484944970984e-03, -2.080565136053019043e-03, -2.088532031856205323e-03, -2.096495159592627177e-03, -2.104454506507406723e-03, -2.112410059852382494e-03, -2.120361806885900837e-03, -2.128309734873435211e-03, -2.136253831086837654e-03, -2.144194082805379615e-03, -2.152130477314567573e-03, -2.160063001907143107e-03, -2.167991643882699951e-03, -2.175916390547494913e-03, -2.183837229215058497e-03, -2.191754147205418179e-03, -2.199667131846189550e-03, -2.207576170471359407e-03, -2.215481250422361281e-03, -2.223382359047296111e-03, -2.231279483701576697e-03, -2.239172611747689608e-03, -2.247061730554934973e-03, -2.254946827499999806e-03, -2.262827889966584176e-03, -2.270704905345655340e-03, -2.278577861035145907e-03, -2.286446744440096077e-03, -2.294311542973295499e-03, -2.302172244054121429e-03, -2.310028835109573069e-03, -2.317881303573900327e-03, -2.325729636888395225e-03, -2.333573822501989071e-03, -2.341413847870523444e-03, -2.349249700457787561e-03, -2.357081367734325215e-03, -2.364908837178521153e-03, -2.372732096275797457e-03, -2.380551132519286191e-03, -2.388365933409553575e-03, -2.396176486454382280e-03, -2.403982779169288805e-03, -2.411784799077238122e-03, -2.419582533708782447e-03, -2.427375970601776747e-03, -2.435165097301890923e-03, -2.442949901362402500e-03, -2.450730370343920383e-03, -2.458506491814939528e-03, -2.466278253351530426e-03, -2.474045642537504777e-03, -2.481808646964098457e-03, -2.489567254230525776e-03, -2.497321451943720558e-03, -2.505071227718097624e-03, -2.512816569176195072e-03, -2.520557463947897987e-03, -2.528293899671495322e-03, -2.536025863992511561e-03, -2.543753344564728472e-03, -2.551476329049468666e-03, -2.559194805116178032e-03, -2.566908760442221903e-03, -2.574618182712620947e-03, -2.582323059620592835e-03, -2.590023378867318919e-03, -2.597719128161728262e-03, -2.605410295220973380e-03, -2.613096867770172207e-03, -2.620778833542547741e-03, -2.628456180279134004e-03, -2.636128895729311639e-03, -2.643796967650545969e-03, -2.651460383808169289e-03, -2.659119131975996256e-03, -2.666773199935569289e-03, -2.674422575477221516e-03, -2.682067246398855530e-03, -2.689707200507037571e-03, -2.697342425616228168e-03, -2.704972909549389730e-03, -2.712598640137765370e-03, -2.720219605220544536e-03, -2.727835792645838357e-03, -2.735447190269478784e-03, -2.743053785956093681e-03, -2.750655567578317532e-03, -2.758252523017462338e-03, -2.765844640163209276e-03, -2.773431906913453003e-03, -2.781014311174770468e-03, -2.788591840862114299e-03, -2.796164483899030075e-03, -2.803732228217388749e-03, -2.811295061757488559e-03, -2.818852972468705986e-03, -2.826405948308375552e-03, -2.833953977242831528e-03, -2.841497047246671105e-03, -2.849035146303389304e-03, -2.856568262405093615e-03, -2.864096383552222538e-03, -2.871619497754491438e-03, -2.879137593029702097e-03, -2.886650657404815200e-03, -2.894158678915183594e-03, -2.901661645605160735e-03, -2.909159545527882553e-03, -2.916652366745017648e-03, -2.924140097327298116e-03, -2.931622725354207735e-03, -2.939100238914156733e-03, -2.946572626104180821e-03, -2.954039875030448591e-03, -2.961501973808030371e-03, -2.968958910560666204e-03, -2.976410673421398152e-03, -2.983857250531794011e-03, -2.991298630042979034e-03, -2.998734800114519206e-03, -3.006165748915315059e-03, -3.013591464623311972e-03, -3.021011935425259049e-03, -3.028427149517309326e-03, -3.035837095104308974e-03, -3.043241760400775681e-03, -3.050641133629879934e-03, -3.058035203024017917e-03, -3.065423956824932065e-03, -3.072807383283446964e-03, -3.080185470659682276e-03, -3.087558207222746570e-03, -3.094925581251238653e-03, -3.102287581033011214e-03, -3.109644194864947479e-03, -3.116995411053562291e-03, -3.124341217914283937e-03, -3.131681603772445976e-03, -3.139016556962167474e-03, -3.146346065827257225e-03, -3.153670118720928832e-03, -3.160988704005543957e-03, -3.168301810053242469e-03, -3.175609425245194337e-03, -3.182911537972583655e-03, -3.190208136635542657e-03, -3.197499209644096702e-03, -3.204784745417463450e-03, -3.212064732384647438e-03, -3.219339158984211528e-03, -3.226608013664050527e-03, -3.233871284881893390e-03, -3.241128961105000077e-03, -3.248381030810354973e-03, -3.255627482484330353e-03, -3.262868304623218942e-03, -3.270103485732991054e-03, -3.277333014329090327e-03, -3.284556878936910340e-03, -3.291775068091513587e-03, -3.298987570337800178e-03, -3.306194374230281893e-03, -3.313395468333181926e-03, -3.320590841221029467e-03, -3.327780481477610620e-03, -3.334964377696964140e-03, -3.342142518482678435e-03, -3.349314892448464892e-03, -3.356481488217938867e-03, -3.363642294424389837e-03, -3.370797299711294007e-03, -3.377946492732001194e-03, -3.385089862149917844e-03, -3.392227396638187401e-03, -3.399359084880238056e-03, -3.406484915569499977e-03, -3.413604877409207993e-03, -3.420718959112912030e-03, -3.427827149404155758e-03, -3.434929437016684319e-03, -3.442025810694094787e-03, -3.449116259190350940e-03, -3.456200771269612830e-03, -3.463279335705943176e-03, -3.470351941283901075e-03, -3.477418576797879340e-03, -3.484479231053042112e-03, -3.491533892864240665e-03, -3.498582551056976606e-03, -3.505625194466719698e-03, -3.512661811939461233e-03, -3.519692392331519315e-03, -3.526716924509208824e-03, -3.533735397349772097e-03, -3.540747799740322482e-03, -3.547754120578423733e-03, -3.554754348772226191e-03, -3.561748473240203099e-03, -3.568736482911351836e-03, -3.575718366724872990e-03, -3.582694113630688175e-03, -3.589663712589190661e-03, -3.596627152571048053e-03, -3.603584422557780820e-03, -3.610535511541045420e-03, -3.617480408523603141e-03, -3.624419102518231135e-03, -3.631351582548620997e-03, -3.638277837649108153e-03, -3.645197856864358307e-03, -3.652111629250038780e-03, -3.659019143872068672e-03, -3.665920389807600290e-03, -3.672815356143928865e-03, -3.679704031979451860e-03, -3.686586406423001967e-03, -3.693462468594369257e-03, -3.700332207624132050e-03, -3.707195612653386724e-03, -3.714052672834293294e-03, -3.720903377329739734e-03, -3.727747715313514155e-03, -3.734585675970032888e-03, -3.741417248494804081e-03, -3.748242422094232116e-03, -3.755061185985385155e-03, -3.761873529396467849e-03, -3.768679441566647869e-03, -3.775478911745788757e-03, -3.782271929195038865e-03, -3.789058483186165654e-03, -3.795838563002444741e-03, -3.802612157937645086e-03, -3.809379257296985257e-03, -3.816139850396396607e-03, -3.822893926563117415e-03, -3.829641475135486025e-03, -3.836382485462692341e-03, -3.843116946905307790e-03, -3.849844848834943142e-03, -3.856566180634435868e-03, -3.863280931697592527e-03, -3.869989091429597728e-03, -3.876690649246875356e-03, -3.883385594576823589e-03, -3.890073916858302790e-03, -3.896755605541376167e-03, -3.903430650087421228e-03, -3.910099039968901666e-03, -3.916760764669794531e-03, -3.923415813685404187e-03, -3.930064176522147200e-03, -3.936705842698100949e-03, -3.943340801742327081e-03, -3.949969043195797856e-03, -3.956590556610380463e-03, -3.963205331549701782e-03, -3.969813357588567251e-03, -3.976414624313432712e-03, -3.983009121322233538e-03, -3.989596838224156519e-03, -3.996177764640112574e-03, -4.002751890202550268e-03, -4.009319204555207745e-03, -4.015879697353605393e-03, -4.022433358264751804e-03, -4.028980176967322455e-03, -4.035520143151355259e-03, -4.042053246518718078e-03, -4.048579476782939585e-03, -4.055098823668969003e-03, -4.061611276913680048e-03, -4.068116826265294993e-03, -4.074615461484236423e-03, -4.081107172342109818e-03, -4.087591948622637701e-03, -4.094069780120975291e-03, -4.100540656644266480e-03, -4.107004568011430462e-03, -4.113461504052887650e-03, -4.119911454611368054e-03, -4.126354409540944172e-03, -4.132790358707839375e-03, -4.139219291989889270e-03, -4.145641199277004009e-03, -4.152056070470967926e-03, -4.158463895485273003e-03, -4.164864664245531735e-03, -4.171258366689235136e-03, -4.177644992765879375e-03, -4.184024532436781893e-03, -4.190396975675196763e-03, -4.196762312466776994e-03, -4.203120532808701966e-03, -4.209471626710527443e-03, -4.215815584193594034e-03, -4.222152395291483423e-03, -4.228482050049877858e-03, -4.234804538526256573e-03, -4.241119850790692897e-03, -4.247427976924923569e-03, -4.253728907023124166e-03, -4.260022631191387812e-03, -4.266309139548171876e-03, -4.272588422224106279e-03, -4.278860469361838240e-03, -4.285125271116403504e-03, -4.291382817655035528e-03, -4.297633099157271291e-03, -4.303876105814680685e-03, -4.310111827831366975e-03, -4.316340255423667567e-03, -4.322561378820065532e-03, -4.328775188261611145e-03, -4.334981674001392796e-03, -4.341180826305268171e-03, -4.347372635451064553e-03, -4.353557091729180761e-03, -4.359734185442488280e-03, -4.365903906906019004e-03, -4.372066246447542034e-03, -4.378221194406900149e-03, -4.384368741136898846e-03, -4.390508877002399953e-03, -4.396641592380817753e-03, -4.402766877662201393e-03, -4.408884723249086555e-03, -4.414995119556560516e-03, -4.421098057012120761e-03, -4.427193526055964688e-03, -4.433281517140910677e-03, -4.439362020732169102e-03, -4.445435027307820253e-03, -4.451500527358216719e-03, -4.457558511386868969e-03, -4.463608969909414921e-03, -4.469651893454458687e-03, -4.475687272563302552e-03, -4.481715097789718862e-03, -4.487735359700463500e-03, -4.493748048874703430e-03, -4.499753155904813798e-03, -4.505750671395437716e-03, -4.511740585964355357e-03, -4.517722890241834301e-03, -4.523697574871174236e-03, -4.529664630508477979e-03, -4.535624047822464991e-03, -4.541575817494906790e-03, -4.547519930220410116e-03, -4.553456376706457691e-03, -4.559385147673238221e-03, -4.565306233854087015e-03, -4.571219625995195414e-03, -4.577125314855539674e-03, -4.583023291207199285e-03, -4.588913545835178291e-03, -4.594796069537511116e-03, -4.600670853125084746e-03, -4.606537887421725472e-03, -4.612397163264680272e-03, -4.618248671503765931e-03, -4.624092403002161809e-03, -4.629928348635864270e-03, -4.635756499294134240e-03, -4.641576845879305524e-03, -4.647389379306658165e-03, -4.653194090504727230e-03, -4.658990970415178776e-03, -4.664780009992841939e-03, -4.670561200205519854e-03, -4.676334532034412926e-03, -4.682099996473868160e-03, -4.687857584531276815e-03, -4.693607287227404001e-03, -4.699349095596220410e-03, -4.705083000684957828e-03, -4.710808993553960815e-03, -4.716527065277002426e-03, -4.722237206941159310e-03, -4.727939409646583595e-03, -4.733633664507071008e-03, -4.739319962649340100e-03, -4.744998295213941238e-03, -4.750668653354330265e-03, -4.756331028237631778e-03, -4.761985411044121312e-03, -4.767631792967637339e-03, -4.773270165215432945e-03, -4.778900519007960729e-03, -4.784522845579507709e-03, -4.790137136177466740e-03, -4.795743382062730292e-03, -4.801341574509810153e-03, -4.806931704806637062e-03, -4.812513764254728113e-03, -4.818087744168895320e-03, -4.823653635877721800e-03, -4.829211430723262533e-03, -4.834761120061017471e-03, -4.840302695260262009e-03, -4.845836147703566459e-03, -4.851361468787506424e-03, -4.856878649921883041e-03, -4.862387682530298037e-03, -4.867888558050066129e-03, -4.873381267931930529e-03, -4.878865803640548664e-03, -4.884342156653941405e-03, -4.889810318464279763e-03, -4.895270280576967219e-03, -4.900722034511462849e-03, -4.906165571800699329e-03, -4.911600883991547838e-03, -4.917027962644618562e-03, -4.922446799334108045e-03, -4.927857385648205107e-03, -4.933259713188798551e-03, -4.938653773571682719e-03, -4.944039558426257391e-03, -4.949417059395957996e-03, -4.954786268138054381e-03, -4.960147176323528515e-03, -4.965499775637354646e-03, -4.970844057778468945e-03, -4.976180014459466797e-03, -4.981507637407122345e-03, -4.986826918361824713e-03, -4.992137849078324800e-03, -4.997440421324915623e-03, -5.002734626884142687e-03, -5.008020457552266221e-03, -5.013297905139725216e-03, -5.018566961471010793e-03, -5.023827618384362620e-03, -5.029079867732283264e-03, -5.034323701381240683e-03, -5.039559111211807003e-03, -5.044786089118451222e-03, -5.050004627009875742e-03, -5.055214716808906217e-03, -5.060416350452245221e-03, -5.065609519890931084e-03, -5.070794217090043854e-03, -5.075970434028857954e-03, -5.081138162700646159e-03, -5.086297395112992711e-03, -5.091448123287664954e-03, -5.096590339260471947e-03, -5.101724035081596671e-03, -5.106849202815196172e-03, -5.111965834540034732e-03, -5.117073922348715394e-03, -5.122173458348367771e-03, -5.127264434660167534e-03, -5.132346843419722388e-03, -5.137420676776935889e-03, -5.142485926895823574e-03, -5.147542585954891989e-03, -5.152590646146957415e-03, -5.157630099679030508e-03, -5.162660938772585181e-03, -5.167683155663453654e-03, -5.172696742601836858e-03, -5.177701691852202963e-03, -5.182697995693516350e-03, -5.187685646419230683e-03, -5.192664636336967107e-03, -5.197634957769040748e-03, -5.202596603051934214e-03, -5.207549564536950726e-03, -5.212493834589460376e-03, -5.217429405589604427e-03, -5.222356269931802651e-03, -5.227274420025110682e-03, -5.232183848293109861e-03, -5.237084547173677385e-03, -5.241976509119606470e-03, -5.246859726597880372e-03, -5.251734192090255250e-03, -5.256599898092884603e-03, -5.261456837116661005e-03, -5.266305001687048709e-03, -5.271144384343948337e-03, -5.275974977642070712e-03, -5.280796774150661038e-03, -5.285609766453699260e-03, -5.290413947149647661e-03, -5.295209308851620000e-03, -5.299995844187702435e-03, -5.304773545800309936e-03, -5.309542406346763957e-03, -5.314302418498950686e-03, -5.319053574943586465e-03, -5.323795868382111100e-03, -5.328529291530512656e-03, -5.333253837119894709e-03, -5.337969497895746034e-03, -5.342676266618589381e-03, -5.347374136063507907e-03, -5.352063099020568440e-03, -5.356743148294632398e-03, -5.361414276705171039e-03, -5.366076477086702615e-03, -5.370729742288516545e-03, -5.375374065174775770e-03, -5.380009438624374501e-03, -5.384635855531207972e-03, -5.389253308804080496e-03, -5.393861791366525923e-03, -5.398461296157148516e-03, -5.403051816129259520e-03, -5.407633344251454831e-03, -5.412205873506854316e-03, -5.416769396893765347e-03, -5.421323907425443407e-03, -5.425869398129984540e-03, -5.430405862050608976e-03, -5.434933292245328063e-03, -5.439451681787461218e-03, -5.443961023765025303e-03, -5.448461311281274123e-03, -5.452952537454290767e-03, -5.457434695417391797e-03, -5.461907778318892195e-03, -5.466371779322054189e-03, -5.470826691605343121e-03, -5.475272508362311226e-03, -5.479709222801456246e-03, -5.484136828146588330e-03, -5.488555317636342572e-03, -5.492964684524884178e-03, -5.497364922081121770e-03, -5.501756023589296322e-03, -5.506137982348864937e-03, -5.510510791674222419e-03, -5.514874444895212155e-03, -5.519228935356542375e-03, -5.523574256418516473e-03, -5.527910401456254987e-03, -5.532237363860384276e-03, -5.536555137036523050e-03, -5.540863714405685689e-03, -5.545163089404133057e-03, -5.549453255483218113e-03, -5.553734206109734589e-03, -5.558005934765681937e-03, -5.562268434948392827e-03, -5.566521700170334527e-03, -5.570765723959471456e-03, -5.575000499859028395e-03, -5.579226021427440181e-03, -5.583442282238605843e-03, -5.587649275881712528e-03, -5.591846995961391627e-03, -5.596035436097469840e-03, -5.600214589925157395e-03, -5.604384451095321268e-03, -5.608545013273856343e-03, -5.612696270142329864e-03, -5.616838215397500916e-03, -5.620970842751723748e-03, -5.625094145932743074e-03, -5.629208118683637699e-03, -5.633312754763065110e-03, -5.637408047945068057e-03, -5.641493992019224607e-03, -5.645570580790463394e-03, -5.649637808079309952e-03, -5.653695667721804312e-03, -5.657744153569335341e-03, -5.661783259488952988e-03, -5.665812979363189610e-03, -5.669833307090138899e-03, -5.673844236583335324e-03, -5.677845761771944944e-03, -5.681837876600718575e-03, -5.685820575029874695e-03, -5.689793851035330162e-03, -5.693757698608417454e-03, -5.697712111756310545e-03, -5.701657084501566067e-03, -5.705592610882495412e-03, -5.709518684952899319e-03, -5.713435300782332416e-03, -5.717342452455981792e-03, -5.721240134074516946e-03, -5.725128339754568564e-03, -5.729007063628173413e-03, -5.732876299843091793e-03, -5.736736042562840497e-03, -5.740586285966600005e-03, -5.744427024249296881e-03, -5.748258251621440711e-03, -5.752079962309358287e-03, -5.755892150555146775e-03, -5.759694810616497636e-03, -5.763487936767003675e-03, -5.767271523295796481e-03, -5.771045564508105012e-03, -5.774810054724584252e-03, -5.778564988281883336e-03, -5.782310359532390545e-03, -5.786046162844189940e-03, -5.789772392601358862e-03, -5.793489043203527318e-03, -5.797196109066487732e-03, -5.800893584621537487e-03, -5.804581464316042709e-03, -5.808259742613029741e-03, -5.811928413991499127e-03, -5.815587472946361428e-03, -5.819236913988210837e-03, -5.822876731643680803e-03, -5.826506920455233260e-03, -5.830127474981299136e-03, -5.833738389796050243e-03, -5.837339659489704582e-03, -5.840931278668419664e-03, -5.844513241954108623e-03, -5.848085543984814921e-03, -5.851648179414399228e-03, -5.855201142912797030e-03, -5.858744429165773163e-03, -5.862278032875019827e-03, -5.865801948758476644e-03, -5.869316171549728706e-03, -5.872820695998611992e-03, -5.876315516870769286e-03, -5.879800628947972826e-03, -5.883276027028013291e-03, -5.886741705924593109e-03, -5.890197660467519011e-03, -5.893643885502655201e-03, -5.897080375891911204e-03, -5.900507126513123909e-03, -5.903924132260355076e-03, -5.907331388043661480e-03, -5.910728888789143487e-03, -5.914116629439023116e-03, -5.917494604951610213e-03, -5.920862810301324997e-03, -5.924221240478640821e-03, -5.927569890490170038e-03, -5.930908755358703030e-03, -5.934237830123025199e-03, -5.937557109838198857e-03, -5.940866589575258781e-03, -5.944166264421644162e-03, -5.947456129480646961e-03, -5.950736179871965285e-03, -5.954006410731307007e-03, -5.957266817210647367e-03, -5.960517394478154381e-03, -5.963758137718073483e-03, -5.966989042130966051e-03, -5.970210102933590571e-03, -5.973421315358816777e-03, -5.976622674655846824e-03, -5.979814176090034877e-03, -5.982995814943073594e-03, -5.986167586512712233e-03, -5.989329486113107066e-03, -5.992481509074636635e-03, -5.995623650743873989e-03, -5.998755906483732407e-03, -6.001878271673293658e-03, -6.004990741708128923e-03, -6.008093311999857314e-03, -6.011185977976561332e-03, -6.014268735082517990e-03, -6.017341578778348000e-03, -6.020404504541056537e-03, -6.023457507863803385e-03, -6.026500584256292391e-03, -6.029533729244358591e-03, -6.032556938370347253e-03, -6.035570207192770403e-03, -6.038573531286638152e-03, -6.041566906243312982e-03, -6.044550327670402193e-03, -6.047523791192004235e-03, -6.050487292448562988e-03, -6.053440827096918074e-03, -6.056384390810237196e-03, -6.059317979278157525e-03, -6.062241588206709365e-03, -6.065155213318285804e-03, -6.068058850351762401e-03, -6.070952495062353210e-03, -6.073836143221767771e-03, -6.076709790618176413e-03, -6.079573433056040255e-03, -6.082427066356512792e-03, -6.085270686356942897e-03, -6.088104288911330188e-03, -6.090927869890004967e-03, -6.093741425179834657e-03, -6.096544950684192575e-03, -6.099338442322833030e-03, -6.102121896032092555e-03, -6.104895307764771073e-03, -6.107658673490196088e-03, -6.110411989194093445e-03, -6.113155250878827586e-03, -6.115888454563247166e-03, -6.118611596282633007e-03, -6.121324672088941828e-03, -6.124027678050502667e-03, -6.126720610252365563e-03, -6.129403464795977162e-03, -6.132076237799375003e-03, -6.134738925397209205e-03, -6.137391523740589813e-03, -6.140034028997301899e-03, -6.142666437351579183e-03, -6.145288745004403273e-03, -6.147900948173167131e-03, -6.150503043091974306e-03, -6.153095026011412561e-03, -6.155676893198773307e-03, -6.158248640937931916e-03, -6.160810265529276589e-03, -6.163361763289959896e-03, -6.165903130553641170e-03, -6.168434363670641761e-03, -6.170955459007913813e-03, -6.173466412949058478e-03, -6.175967221894338929e-03, -6.178457882260556325e-03, -6.180938390481279660e-03, -6.183408743006713927e-03, -6.185868936303626393e-03, -6.188318966855625020e-03, -6.190758831162774221e-03, -6.193188525742046764e-03, -6.195608047126871000e-03, -6.198017391867571488e-03, -6.200416556530977813e-03, -6.202805537700712551e-03, -6.205184331977108003e-03, -6.207552935977134201e-03, -6.209911346334539423e-03, -6.212259559699746976e-03, -6.214597572739914179e-03, -6.216925382138884654e-03, -6.219242984597295014e-03, -6.221550376832472515e-03, -6.223847555578471483e-03, -6.226134517586087193e-03, -6.228411259622908779e-03, -6.230677778473264587e-03, -6.232934070938173608e-03, -6.235180133835414862e-03, -6.237415963999697402e-03, -6.239641558282266534e-03, -6.241856913551298465e-03, -6.244062026691652237e-03, -6.246256894605027588e-03, -6.248441514209920715e-03, -6.250615882441531469e-03, -6.252779996251947234e-03, -6.254933852609992004e-03, -6.257077448501339144e-03, -6.259210780928410774e-03, -6.261333846910474045e-03, -6.263446643483661092e-03, -6.265549167700764331e-03, -6.267641416631579074e-03, -6.269723387362609486e-03, -6.271795076997269819e-03, -6.273856482655701394e-03, -6.275907601474988579e-03, -6.277948430609033015e-03, -6.279978967228505918e-03, -6.281999208521049302e-03, -6.284009151691007100e-03, -6.286008793959766902e-03, -6.287998132565401736e-03, -6.289977164762978849e-03, -6.291945887824339396e-03, -6.293904299038226811e-03, -6.295852395710314561e-03, -6.297790175163029205e-03, -6.299717634735854839e-03, -6.301634771784992220e-03, -6.303541583683605967e-03, -6.305438067821744763e-03, -6.307324221606391661e-03, -6.309200042461377347e-03, -6.311065527827440860e-03, -6.312920675162253872e-03, -6.314765481940389467e-03, -6.316599945653291782e-03, -6.318424063809390499e-03, -6.320237833933947322e-03, -6.322041253569276285e-03, -6.323834320274461865e-03, -6.325617031625649540e-03, -6.327389385215861917e-03, -6.329151378655009999e-03, -6.330903009570030236e-03, -6.332644275604699773e-03, -6.334375174419891452e-03, -6.336095703693265906e-03, -6.337805861119549106e-03, -6.339505644410319864e-03, -6.341195051294190241e-03, -6.342874079516730955e-03, -6.344542726840393318e-03, -6.346200991044693984e-03, -6.347848869926065764e-03, -6.349486361297928746e-03, -6.351113462990637393e-03, -6.352730172851562933e-03, -6.354336488745073418e-03, -6.355932408552427901e-03, -6.357517930171975931e-03, -6.359093051518985816e-03, -6.360657770525759112e-03, -6.362212085141541289e-03, -6.363755993332578104e-03, -6.365289493082184995e-03, -6.366812582390550188e-03, -6.368325259275013119e-03, -6.369827521769772134e-03, -6.371319367926103067e-03, -6.372800795812328875e-03, -6.374271803513694747e-03, -6.375732389132519017e-03, -6.377182550788116841e-03, -6.378622286616847034e-03, -6.380051594772015791e-03, -6.381470473424052763e-03, -6.382878920760343654e-03, -6.384276934985289205e-03, -6.385664514320376316e-03, -6.387041657004090441e-03, -6.388408361291951151e-03, -6.389764625456493922e-03, -6.391110447787345591e-03, -6.392445826591123745e-03, -6.393770760191488760e-03, -6.395085246929161152e-03, -6.396389285161882543e-03, -6.397682873264508470e-03, -6.398966009628838381e-03, -6.400238692663815128e-03, -6.401500920795360171e-03, -6.402752692466505413e-03, -6.403994006137316876e-03, -6.405224860284899902e-03, -6.406445253403439920e-03, -6.407655184004192907e-03, -6.408854650615420333e-03, -6.410043651782526206e-03, -6.411222186067922629e-03, -6.412390252051125214e-03, -6.413547848328674146e-03, -6.414694973514223526e-03, -6.415831626238480655e-03, -6.416957805149206030e-03, -6.418073508911254985e-03, -6.419178736206559467e-03, -6.420273485734133249e-03, -6.421357756210041567e-03, -6.422431546367447092e-03, -6.423494854956586508e-03, -6.424547680744805214e-03, -6.425590022516495733e-03, -6.426621879073108994e-03, -6.427643249233290501e-03, -6.428654131832643552e-03, -6.429654525723950409e-03, -6.430644429777038727e-03, -6.431623842878801504e-03, -6.432592763933302898e-03, -6.433551191861617766e-03, -6.434499125601948755e-03, -6.435436564109612428e-03, -6.436363506356964671e-03, -6.437279951333502170e-03, -6.438185898045789557e-03, -6.439081345517524459e-03, -6.439966292789453366e-03, -6.440840738919473112e-03, -6.441704682982520719e-03, -6.442558124070675747e-03, -6.443401061293127334e-03, -6.444233493776103938e-03, -6.445055420663018189e-03, -6.445866841114297752e-03, -6.446667754307564002e-03, -6.447458159437468965e-03, -6.448238055715782915e-03, -6.449007442371419534e-03, -6.449766318650363046e-03, -6.450514683815695115e-03, -6.451252537147620855e-03, -6.451979877943467105e-03, -6.452696705517607829e-03, -6.453403019201602031e-03, -6.454098818344054106e-03, -6.454784102310690171e-03, -6.455458870484369338e-03, -6.456123122265015196e-03, -6.456776857069712085e-03, -6.457420074332602747e-03, -6.458052773504954248e-03, -6.458674954055174458e-03, -6.459286615468708831e-03, -6.459887757248180921e-03, -6.460478378913257942e-03, -6.461058480000777399e-03, -6.461628060064656016e-03, -6.462187118675910558e-03, -6.462735655422672566e-03, -6.463273669910187501e-03, -6.463801161760824275e-03, -6.464318130613991124e-03, -6.464824576126266577e-03, -6.465320497971341340e-03, -6.465805895839974934e-03, -6.466280769440039058e-03, -6.466745118496537541e-03, -6.467198942751562971e-03, -6.467642241964285423e-03, -6.468075015911039193e-03, -6.468497264385203969e-03, -6.468908987197308919e-03, -6.469310184174973700e-03, -6.469700855162877247e-03, -6.470081000022879190e-03, -6.470450618633865475e-03, -6.470809710891874122e-03, -6.471158276710032783e-03, -6.471496316018542257e-03, -6.471823828764732868e-03, -6.472140814913012428e-03, -6.472447274444910470e-03, -6.472743207359022734e-03, -6.473028613671069284e-03, -6.473303493413850272e-03, -6.473567846637253743e-03, -6.473821673408280790e-03, -6.474064973810989172e-03, -6.474297747946598271e-03, -6.474519995933330357e-03, -6.474731717906561518e-03, -6.474932914018725373e-03, -6.475123584439344306e-03, -6.475303729355059816e-03, -6.475473348969544921e-03, -6.475632443503599560e-03, -6.475781013195073404e-03, -6.475919058298960397e-03, -6.476046579087246097e-03, -6.476163575849047324e-03, -6.476270048890573131e-03, -6.476365998535076225e-03, -6.476451425122891140e-03, -6.476526329011431625e-03, -6.476590710575201061e-03, -6.476644570205738680e-03, -6.476687908311658595e-03, -6.476720725318703582e-03, -6.476743021669599358e-03, -6.476754797824174278e-03, -6.476756054259329848e-03, -6.476746791469027709e-03, -6.476727009964257549e-03, -6.476696710273110828e-03, -6.476655892940719195e-03, -6.476604558529252750e-03, -6.476542707617975562e-03, -6.476470340803150254e-03, -6.476387458698136014e-03, -6.476294061933332222e-03, -6.476190151156161964e-03, -6.476075727031101528e-03, -6.475950790239690807e-03, -6.475815341480494272e-03, -6.475669381469101836e-03, -6.475512910938181765e-03, -6.475345930637392208e-03, -6.475168441333447981e-03, -6.474980443810083273e-03, -6.474781938868086340e-03, -6.474572927325243123e-03, -6.474353410016379755e-03, -6.474123387793348679e-03, -6.473882861525002627e-03, -6.473631832097224981e-03, -6.473370300412928033e-03, -6.473098267392015694e-03, -6.472815733971416449e-03, -6.472522701105059943e-03, -6.472219169763887385e-03, -6.471905140935864560e-03, -6.471580615625893360e-03, -6.471245594855953159e-03, -6.470900079664988931e-03, -6.470544071108941600e-03, -6.470177570260717687e-03, -6.469800578210260431e-03, -6.469413096064456983e-03, -6.469015124947214736e-03, -6.468606665999399735e-03, -6.468187720378872248e-03, -6.467758289260439920e-03, -6.467318373835921966e-03, -6.466867975314091049e-03, -6.466407094920674156e-03, -6.465935733898392490e-03, -6.465453893506913768e-03, -6.464961575022874773e-03, -6.464458779739816301e-03, -6.463945508968334079e-03, -6.463421764035909636e-03, -6.462887546286948462e-03, -6.462342857082854601e-03, -6.461787697801940449e-03, -6.461222069839514352e-03, -6.460645974607729693e-03, -6.460059413535739273e-03, -6.459462388069604245e-03, -6.458854899672318399e-03, -6.458236949823802954e-03, -6.457608540020856255e-03, -6.456969671777258724e-03, -6.456320346623678312e-03, -6.455660566107674844e-03, -6.454990331793749453e-03, -6.454309645263275191e-03, -6.453618508114529993e-03, -6.452916921962708816e-03, -6.452204888439894148e-03, -6.451482409195048208e-03, -6.450749485894022479e-03, -6.450006120219556847e-03, -6.449252313871264852e-03, -6.448488068565660578e-03, -6.447713386036072782e-03, -6.446928268032759389e-03, -6.446132716322820755e-03, -6.445326732690219614e-03, -6.444510318935764599e-03, -6.443683476877146675e-03, -6.442846208348885356e-03, -6.441998515202330446e-03, -6.441140399305731422e-03, -6.440271862544131622e-03, -6.439392906819402934e-03, -6.438503534050266618e-03, -6.437603746172268146e-03, -6.436693545137805832e-03, -6.435772932916056233e-03, -6.434841911493010581e-03, -6.433900482871514684e-03, -6.432948649071162234e-03, -6.431986412128411039e-03, -6.431013774096480673e-03, -6.430030737045375026e-03, -6.429037303061914399e-03, -6.428033474249736368e-03, -6.427019252729174355e-03, -6.425994640637402479e-03, -6.424959640128400859e-03, -6.423914253372806429e-03, -6.422858482558156668e-03, -6.421792329888625916e-03, -6.420715797585248297e-03, -6.419628887885757244e-03, -6.418531603044623675e-03, -6.417423945333096749e-03, -6.416305917039153567e-03, -6.415177520467483553e-03, -6.414038757939537032e-03, -6.412889631793493132e-03, -6.411730144384206014e-03, -6.410560298083271651e-03, -6.409380095279041713e-03, -6.408189538376514276e-03, -6.406988629797393670e-03, -6.405777371980138184e-03, -6.404555767379816952e-03, -6.403323818468267814e-03, -6.402081527733945523e-03, -6.400828897682019764e-03, -6.399565930834316164e-03, -6.398292629729374417e-03, -6.397008996922316434e-03, -6.395715034984985996e-03, -6.394410746505898441e-03, -6.393096134090140055e-03, -6.391771200359506848e-03, -6.390435947952380520e-03, -6.389090379523844690e-03, -6.387734497745554789e-03, -6.386368305305786634e-03, -6.384991804909510155e-03, -6.383604999278206377e-03, -6.382207891150075592e-03, -6.380800483279778015e-03, -6.379382778438716546e-03, -6.377954779414779160e-03, -6.376516489012495903e-03, -6.375067910052980777e-03, -6.373609045373896179e-03, -6.372139897829515350e-03, -6.370660470290584465e-03, -6.369170765644551618e-03, -6.367670786795278856e-03, -6.366160536663281570e-03, -6.364640018185585384e-03, -6.363109234315710537e-03, -6.361568188023778575e-03, -6.360016882296402191e-03, -6.358455320136686094e-03, -6.356883504564326756e-03, -6.355301438615459757e-03, -6.353709125342756926e-03, -6.352106567815379509e-03, -6.350493769119009389e-03, -6.348870732355774496e-03, -6.347237460644286969e-03, -6.345593957119664841e-03, -6.343940224933460915e-03, -6.342276267253758176e-03, -6.340602087264979835e-03, -6.338917688168114843e-03, -6.337223073180525343e-03, -6.335518245536058551e-03, -6.333803208484966966e-03, -6.332077965293931784e-03, -6.330342519246078513e-03, -6.328596873640930133e-03, -6.326841031794422712e-03, -6.325074997038868108e-03, -6.323298772723040702e-03, -6.321512362212044697e-03, -6.319715768887390443e-03, -6.317908996146967548e-03, -6.316092047405044881e-03, -6.314264926092234137e-03, -6.312427635655491580e-03, -6.310580179558204772e-03, -6.308722561280078085e-03, -6.306854784317054638e-03, -6.304976852181548748e-03, -6.303088768402207408e-03, -6.301190536524090696e-03, -6.299282160108474020e-03, -6.297363642732978217e-03, -6.295434987991561752e-03, -6.293496199494416632e-03, -6.291547280868091570e-03, -6.289588235755328056e-03, -6.287619067815229494e-03, -6.285639780723105939e-03, -6.283650378170546093e-03, -6.281650863865423373e-03, -6.279641241531809179e-03, -6.277621514910062227e-03, -6.275591687756718398e-03, -6.273551763844597423e-03, -6.271501746962719614e-03, -6.269441640916264234e-03, -6.267371449526743833e-03, -6.265291176631729297e-03, -6.263200826085110057e-03, -6.261100401756807855e-03, -6.258989907533093339e-03, -6.256869347316263395e-03, -6.254738725024909171e-03, -6.252598044593667137e-03, -6.250447309973359601e-03, -6.248286525131006852e-03, -6.246115694049647615e-03, -6.243934820728579312e-03, -6.241743909183103053e-03, -6.239542963444748291e-03, -6.237331987561069852e-03, -6.235110985595693038e-03, -6.232879961628469759e-03, -6.230638919755198367e-03, -6.228387864087798001e-03, -6.226126798754300778e-03, -6.223855727898725161e-03, -6.221574655681248560e-03, -6.219283586277954065e-03, -6.216982523881095860e-03, -6.214671472698860694e-03, -6.212350436955502327e-03, -6.210019420891334588e-03, -6.207678428762612548e-03, -6.205327464841650480e-03, -6.202966533416640581e-03, -6.200595638791912313e-03, -6.198214785287664390e-03, -6.195823977240149522e-03, -6.193423219001513089e-03, -6.191012514939840845e-03, -6.188591869439287289e-03, -6.186161286899804178e-03, -6.183720771737353031e-03, -6.181270328383767221e-03, -6.178809961286878608e-03, -6.176339674910340596e-03, -6.173859473733715741e-03, -6.171369362252557278e-03, -6.168869344978166261e-03, -6.166359426437794528e-03, -6.163839611174521532e-03, -6.161309903747319398e-03, -6.158770308731077205e-03, -6.156220830716297408e-03, -6.153661474309602385e-03, -6.151092244133211408e-03, -6.148513144825361321e-03, -6.145924181039892804e-03, -6.143325357446583444e-03, -6.140716678730997677e-03, -6.138098149594435615e-03, -6.135469774753992030e-03, -6.132831558942491296e-03, -6.130183506908630509e-03, -6.127525623416745296e-03, -6.124857913246919104e-03, -6.122180381195086417e-03, -6.119493032072754329e-03, -6.116795870707252350e-03, -6.114088901941522498e-03, -6.111372130634342217e-03, -6.108645561660070236e-03, -6.105909199908739378e-03, -6.103163050286167582e-03, -6.100407117713700297e-03, -6.097641407128506254e-03, -6.094865923483169801e-03, -6.092080671746147140e-03, -6.089285656901351727e-03, -6.086480883948451777e-03, -6.083666357902616124e-03, -6.080842083794672955e-03, -6.078008066671079443e-03, -6.075164311593797724e-03, -6.072310823640383361e-03, -6.069447607904053868e-03, -6.066574669493446717e-03, -6.063692013532844850e-03, -6.060799645161995403e-03, -6.057897569536286643e-03, -6.054985791826538073e-03, -6.052064317219083694e-03, -6.049133150915837927e-03, -6.046192298134094381e-03, -6.043241764106804283e-03, -6.040281554082149729e-03, -6.037311673324019870e-03, -6.034332127111591976e-03, -6.031342920739624601e-03, -6.028344059518217328e-03, -6.025335548772906176e-03, -6.022317393844769419e-03, -6.019289600090052886e-03, -6.016252172880686040e-03, -6.013205117603758094e-03, -6.010148439661911791e-03, -6.007082144473064982e-03, -6.004006237470503431e-03, -6.000920724102931994e-03, -5.997825609834340176e-03, -5.994720900144054170e-03, -5.991606600526716911e-03, -5.988482716492393894e-03, -5.985349253566301687e-03, -5.982206217289012633e-03, -5.979053613216475660e-03, -5.975891446919747406e-03, -5.972719723985368649e-03, -5.969538450014851699e-03, -5.966347630625197344e-03, -5.963147271448632041e-03, -5.959937378132415357e-03, -5.956717956339220750e-03, -5.953489011746820707e-03, -5.950250550048278436e-03, -5.947002576951758782e-03, -5.943745098180620162e-03, -5.940478119473451002e-03, -5.937201646583930952e-03, -5.933915685280902012e-03, -5.930620241348325168e-03, -5.927315320585375795e-03, -5.924000928806264117e-03, -5.920677071840290719e-03, -5.917343755531961035e-03, -5.914000985740731214e-03, -5.910648768341310831e-03, -5.907287109223224864e-03, -5.903916014291292480e-03, -5.900535489465287033e-03, -5.897145540679931720e-03, -5.893746173885165869e-03, -5.890337395045754619e-03, -5.886919210141647145e-03, -5.883491625167562925e-03, -5.880054646133425419e-03, -5.876608279063982171e-03, -5.873152529999054600e-03, -5.869687404993333309e-03, -5.866212910116444870e-03, -5.862729051453048103e-03, -5.859235835102623302e-03, -5.855733267179543365e-03, -5.852221353813227313e-03, -5.848700101147834111e-03, -5.845169515342443951e-03, -5.841629602570988858e-03, -5.838080369022359377e-03, -5.834521820900171254e-03, -5.830953964422873857e-03, -5.827376805823865531e-03, -5.823790351351203903e-03, -5.820194607267933744e-03, -5.816589579851632469e-03, -5.812975275394927956e-03, -5.809351700204989401e-03, -5.805718860603959267e-03, -5.802076762928582918e-03, -5.798425413530330051e-03, -5.794764818775528271e-03, -5.791094985045095074e-03, -5.787415918734722595e-03, -5.783727626254699800e-03, -5.780030114030159684e-03, -5.776323388500773093e-03, -5.772607456120864948e-03, -5.768882323359545219e-03, -5.765147996700420961e-03, -5.761404482641771518e-03, -5.757651787696473934e-03, -5.753889918392081013e-03, -5.750118881270679071e-03, -5.746338682888867122e-03, -5.742549329817976320e-03, -5.738750828643757705e-03, -5.734943185966607723e-03, -5.731126408401369596e-03, -5.727300502577423527e-03, -5.723465475138770839e-03, -5.719621332743775495e-03, -5.715768082065363596e-03, -5.711905729790877663e-03, -5.708034282622257045e-03, -5.704153747275762104e-03, -5.700264130482106915e-03, -5.696365438986565090e-03, -5.692457679548691349e-03, -5.688540858942501936e-03, -5.684614983956370535e-03, -5.680680061393163574e-03, -5.676736098070013850e-03, -5.672783100818412465e-03, -5.668821076484311175e-03, -5.664850031927861317e-03, -5.660869974023706105e-03, -5.656880909660559099e-03, -5.652882845741702932e-03, -5.648875789184487108e-03, -5.644859746920742605e-03, -5.640834725896416713e-03, -5.636800733071720484e-03, -5.632757775421262311e-03, -5.628705859933617710e-03, -5.624644993611841934e-03, -5.620575183472992058e-03, -5.616496436548534636e-03, -5.612408759883905952e-03, -5.608312160538787838e-03, -5.604206645587124155e-03, -5.600092222116864922e-03, -5.595968897230104225e-03, -5.591836678043190373e-03, -5.587695571686403240e-03, -5.583545585304335902e-03, -5.579386726055366418e-03, -5.575219001112245026e-03, -5.571042417661602360e-03, -5.566856982904148932e-03, -5.562662704054731518e-03, -5.558459588342036517e-03, -5.554247643009020165e-03, -5.550026875312284030e-03, -5.545797292522761969e-03, -5.541558901925119039e-03, -5.537311710818176511e-03, -5.533055726514536296e-03, -5.528790956340776108e-03, -5.524517407637517113e-03, -5.520235087759153315e-03, -5.515944004074012016e-03, -5.511644163964292235e-03, -5.507335574826153178e-03, -5.503018244069532959e-03, -5.498692179118192837e-03, -5.494357387409853390e-03, -5.490013876395938644e-03, -5.485661653541702709e-03, -5.481300726326204624e-03, -5.476931102242314428e-03, -5.472552788796773877e-03, -5.468165793509746284e-03, -5.463770123915531220e-03, -5.459365787561880172e-03, -5.454952792010491804e-03, -5.450531144836586080e-03, -5.446100853629095087e-03, -5.441661925990786200e-03, -5.437214369537936819e-03, -5.432758191900543404e-03, -5.428293400722167088e-03, -5.423820003660182604e-03, -5.419338008385389711e-03, -5.414847422582233505e-03, -5.410348253948879874e-03, -5.405840510196882436e-03, -5.401324199051484379e-03, -5.396799328251384274e-03, -5.392265905548951181e-03, -5.387723938709967908e-03, -5.383173435513698667e-03, -5.378614403753072953e-03, -5.374046851234290899e-03, -5.369470785777273429e-03, -5.364886215215059449e-03, -5.360293147394468508e-03, -5.355691590175517929e-03, -5.351081551431819197e-03, -5.346463039050256168e-03, -5.341836060931107362e-03, -5.337200624988133572e-03, -5.332556739148367093e-03, -5.327904411352227948e-03, -5.323243649553372099e-03, -5.318574461718990690e-03, -5.313896855829395444e-03, -5.309210839878225965e-03, -5.304516421872510455e-03, -5.299813609832426317e-03, -5.295102411791401641e-03, -5.290382835796257448e-03, -5.285654889906820850e-03, -5.280918582196409035e-03, -5.276173920751168339e-03, -5.271420913670809769e-03, -5.266659569067913375e-03, -5.261889895068484237e-03, -5.257111899811478008e-03, -5.252325591448990874e-03, -5.247530978146442565e-03, -5.242728068081986548e-03, -5.237916869447251621e-03, -5.233097390446640219e-03, -5.228269639297875720e-03, -5.223433624231534067e-03, -5.218589353491239792e-03, -5.213736835333793521e-03, -5.208876078028831964e-03, -5.204007089859057772e-03, -5.199129879120064322e-03, -5.194244454120616750e-03, -5.189350823182217395e-03, -5.184448994639330455e-03, -5.179538976839501672e-03, -5.174620778142971500e-03, -5.169694406923126991e-03, -5.164759871565871227e-03, -5.159817180470279915e-03, -5.154866342048279593e-03, -5.149907364724327571e-03, -5.144940256936073736e-03, -5.139965027133693541e-03, -5.134981683780369399e-03, -5.129990235351911641e-03, -5.124990690336886021e-03, -5.119983057236779378e-03, -5.114967344565644024e-03, -5.109943560850307639e-03, -5.104911714630243173e-03, -5.099871814457803028e-03, -5.094823868897823543e-03, -5.089767886527813215e-03, -5.084703875938099277e-03, -5.079631845731441726e-03, -5.074551804523431443e-03, -5.069463760941954160e-03, -5.064367723627821033e-03, -5.059263701234213532e-03, -5.054151702426874261e-03, -5.049031735884255273e-03, -5.043903810297125159e-03, -5.038767934369054770e-03, -5.033624116815680824e-03, -5.028472366365561996e-03, -5.023312691759458139e-03, -5.018145101750770033e-03, -5.012969605105206325e-03, -5.007786210600889340e-03, -5.002594927028509476e-03, -4.997395763191014688e-03, -4.992188727903711966e-03, -4.986973829994477241e-03, -4.981751078303330374e-03, -4.976520481682722256e-03, -4.971282048997341385e-03, -4.966035789124377542e-03, -4.960781710953136685e-03, -4.955519823385189267e-03, -4.950250135334548045e-03, -4.944972655727275165e-03, -4.939687393501908039e-03, -4.934394357608826165e-03, -4.929093557011012677e-03, -4.923785000683330963e-03, -4.918468697613079775e-03, -4.913144656799516181e-03, -4.907812887254068071e-03, -4.902473398000417419e-03, -4.897126198074234008e-03, -4.891771296523322876e-03, -4.886408702407497688e-03, -4.881038424798848745e-03, -4.875660472781306702e-03, -4.870274855450838596e-03, -4.864881581915642995e-03, -4.859480661295727602e-03, -4.854072102723139964e-03, -4.848655915341832170e-03, -4.843232108307940140e-03, -4.837800690789312644e-03, -4.832361671965756771e-03, -4.826915061029163692e-03, -4.821460867183083657e-03, -4.815999099643186558e-03, -4.810529767636819581e-03, -4.805052880403191951e-03, -4.799568447193544064e-03, -4.794076477270707744e-03, -4.788576979909415013e-03, -4.783069964396134167e-03, -4.777555440029253656e-03, -4.772033416118756817e-03, -4.766503901986382345e-03, -4.760966906965729238e-03, -4.755422440401974038e-03, -4.749870511652026089e-03, -4.744311130084409578e-03, -4.738744305079501187e-03, -4.733170046029142389e-03, -4.727588362336810311e-03, -4.721999263417753050e-03, -4.716402758698583740e-03, -4.710798857617857355e-03, -4.705187569625183391e-03, -4.699568904182200788e-03, -4.693942870761789489e-03, -4.688309478848539692e-03, -4.682668737938428319e-03, -4.677020657538878863e-03, -4.671365247169025070e-03, -4.665702516359068221e-03, -4.660032474651030869e-03, -4.654355131598083770e-03, -4.648670496765052416e-03, -4.642978579727943464e-03, -4.637279390074168506e-03, -4.631572937402661169e-03, -4.625859231323531905e-03, -4.620138281458208498e-03, -4.614410097439615617e-03, -4.608674688911708166e-03, -4.602932065530076708e-03, -4.597182236961087042e-03, -4.591425212882822154e-03, -4.585661002984330221e-03, -4.579889616965873538e-03, -4.574111064539104592e-03, -4.568325355426604631e-03, -4.562532499362442241e-03, -4.556732506091370170e-03, -4.550925385369733456e-03, -4.545111146964682727e-03, -4.539289800654700696e-03, -4.533461356229178014e-03, -4.527625823488564197e-03, -4.521783212244564511e-03, -4.515933532319702827e-03, -4.510076793547607849e-03, -4.504213005772825761e-03, -4.498342178851091715e-03, -4.492464322648913495e-03, -4.486579447043739788e-03, -4.480687561924171815e-03, -4.474788677189494961e-03, -4.468882802750010971e-03, -4.462969948526799430e-03, -4.457050124451953678e-03, -4.451123340468506225e-03, -4.445189606529878837e-03, -4.439248932600825363e-03, -4.433301328656536616e-03, -4.427346804683266607e-03, -4.421385370677847690e-03, -4.415417036647831077e-03, -4.409441812611758320e-03, -4.403459708598618343e-03, -4.397470734648234285e-03, -4.391474900810990283e-03, -4.385472217148173209e-03, -4.379462693731518176e-03, -4.373446340643387213e-03, -4.367423167976957482e-03, -4.361393185835798873e-03, -4.355356404334152429e-03, -4.349312833596733451e-03, -4.343262483759044619e-03, -4.337205364966856443e-03, -4.331141487376527315e-03, -4.325070861155063361e-03, -4.318993496479710779e-03, -4.312909403538496209e-03, -4.306818592529447834e-03, -4.300721073661464486e-03, -4.294616857153531544e-03, -4.288505953235327225e-03, -4.282388372146667468e-03, -4.276264124137769615e-03, -4.270133219469338277e-03, -4.263995668412277375e-03, -4.257851481247796818e-03, -4.251700668267389960e-03, -4.245543239773009667e-03, -4.239379206076641579e-03, -4.233208577500540901e-03, -4.227031364377373777e-03, -4.220847577049833925e-03, -4.214657225870770997e-03, -4.208460321203440387e-03, -4.202256873420957654e-03, -4.196046892906932571e-03, -4.189830390054613898e-03, -4.183607375267821803e-03, -4.177377858960134270e-03, -4.171141851555463034e-03, -4.164899363487569589e-03, -4.158650405200255140e-03, -4.152394987147585252e-03, -4.146133119793176010e-03, -4.139864813611072655e-03, -4.133590079084988045e-03, -4.127308926708798779e-03, -4.121021366986147086e-03, -4.114727410430563982e-03, -4.108427067565701730e-03, -4.102120348924843778e-03, -4.095807265051245628e-03, -4.089487826497904127e-03, -4.083162043827867106e-03, -4.076829927613749398e-03, -4.070491488437991308e-03, -4.064146736892991323e-03, -4.057795683580619518e-03, -4.051438339112854205e-03, -4.045074714110862522e-03, -4.038704819205964081e-03, -4.032328665039142633e-03, -4.025946262260632347e-03, -4.019557621530814653e-03, -4.013162753519313591e-03, -4.006761668905700971e-03, -4.000354378378883149e-03, -3.993940892637351699e-03, -3.987521222389379429e-03, -3.981095378352561553e-03, -3.974663371254086308e-03, -3.968225211830566680e-03, -3.961780910828337048e-03, -3.955330479002948374e-03, -3.948873927119437958e-03, -3.942411265952473418e-03, -3.935942506285851350e-03, -3.929467658913138317e-03, -3.922986734636741031e-03, -3.916499744268970608e-03, -3.910006698631150919e-03, -3.903507608553975512e-03, -3.897002484877639880e-03, -3.890491338451312377e-03, -3.883974180133844146e-03, -3.877451020792800716e-03, -3.870921871305473341e-03, -3.864386742558053710e-03, -3.857845645446181682e-03, -3.851298590874474743e-03, -3.844745589756714925e-03, -3.838186653016034851e-03, -3.831621791584476685e-03, -3.825051016403208104e-03, -3.818474338422671050e-03, -3.811891768602188382e-03, -3.805303317910188089e-03, -3.798708997324082293e-03, -3.792108817830491894e-03, -3.785502790424841949e-03, -3.778890926111512158e-03, -3.772273235904079723e-03, -3.765649730824772914e-03, -3.759020421905084723e-03, -3.752385320184948875e-03, -3.745744436713649254e-03, -3.739097782549011522e-03, -3.732445368757982950e-03, -3.725787206416128049e-03, -3.719123306607828496e-03, -3.712453680426496937e-03, -3.705778338974066548e-03, -3.699097293361331470e-03, -3.692410554707737779e-03, -3.685718134141703108e-03, -3.679020042800088420e-03, -3.672316291828471232e-03, -3.665606892381283524e-03, -3.658891855621421423e-03, -3.652171192720463349e-03, -3.645444914858535137e-03, -3.638713033224555936e-03, -3.631975559015815369e-03, -3.625232503438157849e-03, -3.618483877706181635e-03, -3.611729693042712349e-03, -3.604969960679429205e-03, -3.598204691855989845e-03, -3.591433897820958850e-03, -3.584657589831258262e-03, -3.577875779152104273e-03, -3.571088477057166380e-03, -3.564295694828459402e-03, -3.557497443756560320e-03, -3.550693735140188472e-03, -3.543884580286407217e-03, -3.537069990510781359e-03, -3.530249977136977295e-03, -3.523424551496996768e-03, -3.516593724931010335e-03, -3.509757508787686962e-03, -3.502915914423646287e-03, -3.496068953203743113e-03, -3.489216636501217897e-03, -3.482358975697170695e-03, -3.475495982181248979e-03, -3.468627667350642364e-03, -3.461754042611246609e-03, -3.454875119376593726e-03, -3.447990909068636076e-03, -3.441101423117124032e-03, -3.434206672959836705e-03, -3.427306670042902428e-03, -3.420401425819851165e-03, -3.413490951752757262e-03, -3.406575259311265830e-03, -3.399654359973248042e-03, -3.392728265224265530e-03, -3.385796986557787665e-03, -3.378860535475372399e-03, -3.371918923486222179e-03, -3.364972162107378231e-03, -3.358020262863916153e-03, -3.351063237288437208e-03, -3.344101096921663335e-03, -3.337133853311584093e-03, -3.330161518014447194e-03, -3.323184102593930173e-03, -3.316201618621408397e-03, -3.309214077676178849e-03, -3.302221491344888103e-03, -3.295223871222239219e-03, -3.288221228909994718e-03, -3.281213576018084197e-03, -3.274200924163645898e-03, -3.267183284971697174e-03, -3.260160670074558134e-03, -3.253133091112110978e-03, -3.246100559731939644e-03, -3.239063087588946437e-03, -3.232020686345531135e-03, -3.224973367671526373e-03, -3.217921143244390197e-03, -3.210864024748780621e-03, -3.203802023876756427e-03, -3.196735152327983154e-03, -3.189663421809250856e-03, -3.182586844034779403e-03, -3.175505430726018995e-03, -3.168419193611954603e-03, -3.161328144428622415e-03, -3.154232294919325809e-03, -3.147131656834835280e-03, -3.140026241932846775e-03, -3.132916061978553279e-03, -3.125801128744109657e-03, -3.118681454008839955e-03, -3.111557049559436888e-03, -3.104427927189494334e-03, -3.097294098699788362e-03, -3.090155575898095083e-03, -3.083012370599508539e-03, -3.075864494625919852e-03, -3.068711959806271795e-03, -3.061554777976728363e-03, -3.054392960980214199e-03, -3.047226520666704297e-03, -3.040055468893051831e-03, -3.032879817523264840e-03, -3.025699578428030050e-03, -3.018514763484932313e-03, -3.011325384578665380e-03, -3.004131453600444694e-03, -2.996932982448725566e-03, -2.989729983028227827e-03, -2.982522467251003985e-03, -2.975310447035495100e-03, -2.968093934307214701e-03, -2.960872940998161146e-03, -2.953647479047050075e-03, -2.946417560399547733e-03, -2.939183197007737107e-03, -2.931944400830451426e-03, -2.924701183833057754e-03, -2.917453557987801337e-03, -2.910201535273281275e-03, -2.902945127674655661e-03, -2.895684347183901785e-03, -2.888419205799278369e-03, -2.881149715525574070e-03, -2.873875888374287021e-03, -2.866597736363117859e-03, -2.859315271516588586e-03, -2.852028505865114062e-03, -2.844737451446085336e-03, -2.837442120302883022e-03, -2.830142524485598516e-03, -2.822838676050436809e-03, -2.815530587059945477e-03, -2.808218269583300907e-03, -2.800901735695423590e-03, -2.793580997478086175e-03, -2.786256067018890413e-03, -2.778926956412031742e-03, -2.771593677757652231e-03, -2.764256243162115535e-03, -2.756914664738197279e-03, -2.749568954604587629e-03, -2.742219124886216986e-03, -2.734865187714022663e-03, -2.727507155225301037e-03, -2.720145039563191900e-03, -2.712778852876878821e-03, -2.705408607321844582e-03, -2.698034315059239744e-03, -2.690655988256664567e-03, -2.683273639087073101e-03, -2.675887279729917238e-03, -2.668496922370555604e-03, -2.661102579199804696e-03, -2.653704262414916838e-03, -2.646301984218642125e-03, -2.638895756819903664e-03, -2.631485592433229024e-03, -2.624071503278940613e-03, -2.616653501583438013e-03, -2.609231599578628984e-03, -2.601805809502270774e-03, -2.594376143597773229e-03, -2.586942614114508439e-03, -2.579505233307309835e-03, -2.572064013436681663e-03, -2.564618966769025357e-03, -2.557170105576067522e-03, -2.549717442135544711e-03, -2.542260988730228079e-03, -2.534800757649033603e-03, -2.527336761186103117e-03, -2.519869011641126966e-03, -2.512397521319540469e-03, -2.504922302531962727e-03, -2.497443367594885753e-03, -2.489960728829686536e-03, -2.482474398563761561e-03, -2.474984389129490300e-03, -2.467490712864996334e-03, -2.459993382113517205e-03, -2.452492409223640778e-03, -2.444987806549557205e-03, -2.437479586450499482e-03, -2.429967761291003218e-03, -2.422452343441125217e-03, -2.414933345275922620e-03, -2.407410779175770364e-03, -2.399884657526162122e-03, -2.392354992718050306e-03, -2.384821797147297032e-03, -2.377285083214908737e-03, -2.369744863327284679e-03, -2.362201149895587233e-03, -2.354653955336507773e-03, -2.347103292071183768e-03, -2.339549172526422631e-03, -2.331991609133628358e-03, -2.324430614329545727e-03, -2.316866200555643164e-03, -2.309298380258384235e-03, -2.301727165889410655e-03, -2.294152569905031410e-03, -2.286574604766565370e-03, -2.278993282940114471e-03, -2.271408616896915429e-03, -2.263820619112776392e-03, -2.256229302068341047e-03, -2.248634678249302431e-03, -2.241036760145890313e-03, -2.233435560253176945e-03, -2.225831091070882770e-03, -2.218223365103719463e-03, -2.210612394860830051e-03, -2.202998192856049121e-03, -2.195380771608114890e-03, -2.187760143640071157e-03, -2.180136321480002394e-03, -2.172509317659996383e-03, -2.164879144717226245e-03, -2.157245815193335053e-03, -2.149609341634334779e-03, -2.141969736590834845e-03, -2.134327012617863884e-03, -2.126681182275162469e-03, -2.119032258126683516e-03, -2.111380252740809559e-03, -2.103725178690588234e-03, -2.096067048553198857e-03, -2.088405874910285055e-03, -2.080741670347753102e-03, -2.073074447456091547e-03, -2.065404218829846889e-03, -2.057730997067846925e-03, -2.050054794773453586e-03, -2.042375624553928026e-03, -2.034693499021175255e-03, -2.027008430790728458e-03, -2.019320432482890008e-03, -2.011629516721698003e-03, -2.003935696135682176e-03, -1.996238983357241561e-03, -1.988539391022861331e-03, -1.980836931773471022e-03, -1.973131618253448800e-03, -1.965423463111811916e-03, -1.957712479001170233e-03, -1.949998678578488201e-03, -1.942282074504425669e-03, -1.934562679443617384e-03, -1.926840506064888972e-03, -1.919115567040719384e-03, -1.911387875047490265e-03, -1.903657442765703230e-03, -1.895924282879376827e-03, -1.888188408076791605e-03, -1.880449831049440385e-03, -1.872708564493198551e-03, -1.864964621107380576e-03, -1.857218013595040998e-03, -1.849468754663220749e-03, -1.841716857022330242e-03, -1.833962333386891840e-03, -1.826205196474497928e-03, -1.818445459006980992e-03, -1.810683133709364975e-03, -1.802918233310630506e-03, -1.795150770543083897e-03, -1.787380758142579620e-03, -1.779608208848785502e-03, -1.771833135404625881e-03, -1.764055550556602745e-03, -1.756275467054626161e-03, -1.748492897652309834e-03, -1.740707855106446563e-03, -1.732920352177255230e-03, -1.725130401628588743e-03, -1.717338016227439859e-03, -1.709543208744213321e-03, -1.701745991952585994e-03, -1.693946378629788106e-03, -1.686144381556086737e-03, -1.678340013515012847e-03, -1.670533287293619971e-03, -1.662724215681821768e-03, -1.654912811473102825e-03, -1.647099087463865319e-03, -1.639283056453681199e-03, -1.631464731245516834e-03, -1.623644124645213464e-03, -1.615821249461793160e-03, -1.607996118507267359e-03, -1.600168744596983800e-03, -1.592339140549058627e-03, -1.584507319184625534e-03, -1.576673293328073426e-03, -1.568837075806518407e-03, -1.560998679450108879e-03, -1.553158117091846214e-03, -1.545315401567893968e-03, -1.537470545717066353e-03, -1.529623562381027518e-03, -1.521774464404574301e-03, -1.513923264634969889e-03, -1.506069975922728985e-03, -1.498214611120533184e-03, -1.490357183084454595e-03, -1.482497704672865570e-03, -1.474636188747215646e-03, -1.466772648171389259e-03, -1.458907095811967257e-03, -1.451039544538437233e-03, -1.443170007222673978e-03, -1.435298496739257582e-03, -1.427425025965277849e-03, -1.419549607780668877e-03, -1.411672255067647225e-03, -1.403792980710973212e-03, -1.395911797598186179e-03, -1.388028718619048517e-03, -1.380143756665800454e-03, -1.372256924633387300e-03, -1.364368235418849263e-03, -1.356477701922052630e-03, -1.348585337044655007e-03, -1.340691153691284717e-03, -1.332795164768484347e-03, -1.324897383185467742e-03, -1.316997821853483795e-03, -1.309096493686074704e-03, -1.301193411599388438e-03, -1.293288588511197100e-03, -1.285382037342113620e-03, -1.277473771014498881e-03, -1.269563802453251879e-03, -1.261652144585159426e-03, -1.253738810339143127e-03, -1.245823812646504845e-03, -1.237907164440369637e-03, -1.229988878656027712e-03, -1.222068968230731034e-03, -1.214147446104015112e-03, -1.206224325217174036e-03, -1.198299618513477306e-03, -1.190373338938434172e-03, -1.182445499439136382e-03, -1.174516112965049222e-03, -1.166585192466913648e-03, -1.158652750897888823e-03, -1.150718801212992880e-03, -1.142783356368550201e-03, -1.134846429323326140e-03, -1.126908033037431331e-03, -1.118968180473123341e-03, -1.111026884594130786e-03, -1.103084158365923075e-03, -1.095140014755952408e-03, -1.087194466733089121e-03, -1.079247527267964074e-03, -1.071299209332771552e-03, -1.063349525901595384e-03, -1.055398489949862942e-03, -1.047446114454587138e-03, -1.039492412394607762e-03, -1.031537396749954627e-03, -1.023581080502623201e-03, -1.015623476635495182e-03, -1.007664598133539572e-03, -9.997044579828401507e-04, -9.917430691709170493e-04, -9.837804446869650565e-04, -9.758165975212247829e-04, -9.678515406657572148e-04, -9.598852871133500787e-04, -9.519178498587426655e-04, -9.439492418975467232e-04, -9.359794762270126633e-04, -9.280085658453989883e-04, -9.200365237522035522e-04, -9.120633629484193238e-04, -9.040890964359803595e-04, -8.961137372180893405e-04, -8.881372982990241513e-04, -8.801597926844667184e-04, -8.721812333809576562e-04, -8.642016333961356593e-04, -8.562210057389749423e-04, -8.482393634192536558e-04, -8.402567194477706183e-04, -8.322730868366168006e-04, -8.242884785985132032e-04, -8.163029077476008062e-04, -8.083163872983443327e-04, -8.003289302667667207e-04, -7.923405496693470326e-04, -7.843512585238140902e-04, -7.763610698484884731e-04, -7.683699966625430521e-04, -7.603780519862326235e-04, -7.523852488403511571e-04, -7.443916002465663815e-04, -7.363971192272093401e-04, -7.284018188056215525e-04, -7.204057120055933983e-04, -7.124088118516130495e-04, -7.044111313691080309e-04, -6.964126835838932526e-04, -6.884134815225098234e-04, -6.804135382120143904e-04, -6.724128666803238065e-04, -6.644114799556586097e-04, -6.564093910667859926e-04, -6.484066130432672177e-04, -6.404031589148118661e-04, -6.323990417120588974e-04, -6.243942744654911456e-04, -6.163888702065611555e-04, -6.083828419670595259e-04, -6.003762027789934794e-04, -5.923689656748399148e-04, -5.843611436873454804e-04, -5.763527498498580148e-04, -5.683437971957726277e-04, -5.603342987587793316e-04, -5.523242675731069879e-04, -5.443137166729702546e-04, -5.363026590929008105e-04, -5.282911078675512229e-04, -5.202790760320302917e-04, -5.122665766213449013e-04, -5.042536226706460269e-04, -4.962402272154787511e-04, -4.882264032911340194e-04, -4.802121639334305673e-04, -4.721975221776215014e-04, -4.641824910596271470e-04, -4.561670836149389727e-04, -4.481513128794017346e-04, -4.401351918885690264e-04, -4.321187336779489050e-04, -4.241019512833409696e-04, -4.160848577398329321e-04, -4.080674660830266331e-04, -4.000497893479509665e-04, -3.920318405698365420e-04, -3.840136327834805055e-04, -3.759951790234792625e-04, -3.679764923244880910e-04, -3.599575857206572475e-04, -3.519384722458785146e-04, -3.439191649340371157e-04, -3.358996768183584287e-04, -3.278800209321979897e-04, -3.198602103079400526e-04, -3.118402579782360187e-04, -3.038201769749932554e-04, -2.957999803297158611e-04, -2.877796810737499118e-04, -2.797592922376377646e-04, -2.717388268518979781e-04, -2.637182979459356895e-04, -2.556977185492714496e-04, -2.476771016904469910e-04, -2.396564603978085922e-04, -2.316358076988597270e-04, -2.236151566205107292e-04, -2.155945201893216541e-04, -2.075739114309490640e-04, -1.995533433704799631e-04, -1.915328290322316259e-04, -1.835123814400890828e-04, -1.754920136169484362e-04, -1.674717385849617006e-04, -1.594515693657853287e-04, -1.514315189800228504e-04, -1.434116004475609210e-04, -1.353918267873689609e-04, -1.273722110178367487e-04, -1.193527661562158678e-04, -1.113335052188672971e-04, -1.033144412215089754e-04, -9.529558717856755632e-05, -8.727695610396362898e-05, -7.925856101001618531e-05, -7.124041490858540999e-05, -6.322253081042373125e-05, -5.520492172506754296e-05, -4.718760066108289156e-05, -3.917058062586579998e-05, -3.115387462597927825e-05, -2.313749566659536943e-05, -1.512145675174266441e-05, -7.105770884553078268e-06, 9.095489332954389336e-07, 8.924489701331671498e-06, 1.693903842004417274e-05, 2.495318209143858323e-05, 3.296690771879063801e-05, 4.098020230639878305e-05, 4.899305286005241854e-05, 5.700544638723173082e-05, 6.501736989587683158e-05, 7.302881039637625917e-05, 8.103975489944163064e-05, 8.905019041809581100e-05, 9.706010396644269617e-05, 1.050694825598664080e-04, 1.130783132154995069e-04, 1.210865829519761327e-04, 1.290942787891845355e-04, 1.371013877488245992e-04, 1.451078968541600885e-04, 1.531137931297730083e-04, 1.611190636022077698e-04, 1.691236952992799570e-04, 1.771276752506319803e-04, 1.851309904879321901e-04, 1.931336280437360314e-04, 2.011355749528465813e-04, 2.091368182520661587e-04, 2.171373449790569633e-04, 2.251371421743283096e-04, 2.331361968791125395e-04, 2.411344961373502506e-04, 2.491320269944643346e-04, 2.571287764975544289e-04, 2.651247316958692496e-04, 2.731198796405551643e-04, 2.811142073844133046e-04, 2.891077019824545686e-04, 2.971003504916510675e-04, 3.050921399706926686e-04, 3.130830574806292761e-04, 3.210730900841800317e-04, 3.290622248462896191e-04, 3.370504488343264559e-04, 3.450377491168538590e-04, 3.530241127654379515e-04, 3.610095268534177981e-04, 3.689939784561051695e-04, 3.769774546513392742e-04, 3.849599425187966097e-04, 3.929414291406344907e-04, 4.009219016012437967e-04, 4.089013469870053522e-04, 4.168797523868415680e-04, 4.248571048919724423e-04, 4.328333915956685788e-04, 4.408085995937190203e-04, 4.487827159846271099e-04, 4.567557278684757104e-04, 4.647276223484589656e-04, 4.726983865297522901e-04, 4.806680075201509648e-04, 4.886364724302674073e-04, 4.966037683723109565e-04, 5.045698824618860762e-04, 5.125348018167662310e-04, 5.204985135570963607e-04, 5.284610048059418122e-04, 5.364222626886045332e-04, 5.443822743332598236e-04, 5.523410268707143423e-04, 5.602985074341585835e-04, 5.682547031597226387e-04, 5.762096011862276974e-04, 5.841631886549405843e-04, 5.921154527100425677e-04, 6.000663804988240826e-04, 6.080159591704632684e-04, 6.159641758779959642e-04, 6.239110177762170186e-04, 6.318564720236409613e-04, 6.398005257812882382e-04, 6.477431662128795009e-04, 6.556843804853017049e-04, 6.636241557683662242e-04, 6.715624792345516788e-04, 6.794993380596615028e-04, 6.874347194221221407e-04, 6.953686105036306414e-04, 7.033009984889084356e-04, 7.112318705654557642e-04, 7.191612139241044047e-04, 7.270890157587681958e-04, 7.350152632662100430e-04, 7.429399436464905609e-04, 7.508630441031733131e-04, 7.587845518421088790e-04, 7.667044540733932486e-04, 7.746227380092752038e-04, 7.825393908661199167e-04, 7.904543998631832595e-04, 7.983677522228194287e-04, 8.062794351709438997e-04, 8.141894359367788563e-04, 8.220977417526164005e-04, 8.300043398544609428e-04, 8.379092174813301082e-04, 8.458123618759089439e-04, 8.537137602842935057e-04, 8.616133999557555861e-04, 8.695112681431921156e-04, 8.774073521033411366e-04, 8.853016390955466795e-04, 8.931941163835594062e-04, 9.010847712343163403e-04, 9.089735909181316867e-04, 9.168605627092590990e-04, 9.247456738851969225e-04, 9.326289117273273317e-04, 9.405102635206740109e-04, 9.483897165536631958e-04, 9.562672581186649080e-04, 9.641428755117465148e-04, 9.720165560324441805e-04, 9.798882869842058703e-04, 9.877580556746010359e-04, 9.956258494141906595e-04, 1.003491655518041776e-03, 1.011355461304609118e-03, 1.019217254096370677e-03, 1.027077021220020037e-03, 1.034934750005261830e-03, 1.042790427786575731e-03, 1.050644041902034894e-03, 1.058495579693473571e-03, 1.066345028507042873e-03, 1.074192375692541385e-03, 1.082037608604030990e-03, 1.089880714599607454e-03, 1.097721681041153446e-03, 1.105560495294880203e-03, 1.113397144731095943e-03, 1.121231616723951082e-03, 1.129063898651903354e-03, 1.136893977897913402e-03, 1.144721841848235456e-03, 1.152547477894372589e-03, 1.160370873430979647e-03, 1.168192015857825224e-03, 1.176010892578580394e-03, 1.183827491001014729e-03, 1.191641798537447115e-03, 1.199453802604519802e-03, 1.207263490622939497e-03, 1.215070850018115742e-03, 1.222875868219486109e-03, 1.230678532661145033e-03, 1.238478830781597701e-03, 1.246276750023520008e-03, 1.254072277834318225e-03, 1.261865401665854692e-03, 1.269656108974240739e-03, 1.277444387220270363e-03, 1.285230223869621245e-03, 1.293013606391652578e-03, 1.300794522261354905e-03, 1.308572958957260855e-03, 1.316348903963389990e-03, 1.324122344768059647e-03, 1.331893268864054510e-03, 1.339661663749107997e-03, 1.347427516925640530e-03, 1.355190815900539445e-03, 1.362951548185769614e-03, 1.370709701297706225e-03, 1.378465262757758419e-03, 1.386218220092136182e-03, 1.393968560831603800e-03, 1.401716272511941731e-03, 1.409461342674120073e-03, 1.417203758863133916e-03, 1.424943508629735464e-03, 1.432680579529244450e-03, 1.440414959121752610e-03, 1.448146634972726507e-03, 1.455875594651932000e-03, 1.463601825734906371e-03, 1.471325315801849621e-03, 1.479046052437835677e-03, 1.486764023233248452e-03, 1.494479215783549612e-03, 1.502191617689040484e-03, 1.509901216555473548e-03, 1.517607999993410587e-03, 1.525311955618807941e-03, 1.533013071052810724e-03, 1.540711333921504760e-03, 1.548406731856342457e-03, 1.556099252494382197e-03, 1.563788883477058422e-03, 1.571475612451949094e-03, 1.579159427071580258e-03, 1.586840314993624452e-03, 1.594518263881425238e-03, 1.602193261403347556e-03, 1.609865295233373376e-03, 1.617534353050889854e-03, 1.625200422540436706e-03, 1.632863491392246794e-03, 1.640523547301998494e-03, 1.648180577970592784e-03, 1.655834571104767552e-03, 1.663485514416422357e-03, 1.671133395623162913e-03, 1.678778202448491909e-03, 1.686419922620625714e-03, 1.694058543874226060e-03, 1.701694053949308469e-03, 1.709326440591008717e-03, 1.716955691550875419e-03, 1.724581794585786478e-03, 1.732204737458151178e-03, 1.739824507936408703e-03, 1.747441093794397347e-03, 1.755054482811957330e-03, 1.762664662774688588e-03, 1.770271621473741086e-03, 1.777875346706305750e-03, 1.785475826275407813e-03, 1.793073047989668725e-03, 1.800666999663908538e-03, 1.808257669118494082e-03, 1.815845044179863069e-03, 1.823429112680715778e-03, 1.831009862458863637e-03, 1.838587281358899971e-03, 1.846161357231085667e-03, 1.853732077931505512e-03, 1.861299431322512065e-03, 1.868863405272509900e-03, 1.876423987655699305e-03, 1.883981166352706850e-03, 1.891534929249916001e-03, 1.899085264240080130e-03, 1.906632159222086155e-03, 1.914175602100739006e-03, 1.921715580787174702e-03, 1.929252083199060495e-03, 1.936785097259452340e-03, 1.944314610898463047e-03, 1.951840612052132976e-03, 1.959363088662605893e-03, 1.966882028678732224e-03, 1.974397420055011738e-03, 1.981909250753025129e-03, 1.989417508740358703e-03, 1.996922181990811243e-03, 2.004423258484825093e-03, 2.011920726209226809e-03, 2.019414573157050224e-03, 2.026904787328090256e-03, 2.034391356728263225e-03, 2.041874269370250877e-03, 2.049353513273210678e-03, 2.056829076462584130e-03, 2.064300946970519610e-03, 2.071769112836057553e-03, 2.079233562103996371e-03, 2.086694282826538280e-03, 2.094151263062207259e-03, 2.101604490875967884e-03, 2.109053954339791277e-03, 2.116499641531988107e-03, 2.123941540537809241e-03, 2.131379639449212417e-03, 2.138813926364659720e-03, 2.146244389389591160e-03, 2.153671016636225614e-03, 2.161093796223331840e-03, 2.168512716276800069e-03, 2.175927764929036588e-03, 2.183338930319443823e-03, 2.190746200594623737e-03, 2.198149563907246355e-03, 2.205549008417700355e-03, 2.212944522293042691e-03, 2.220336093706796500e-03, 2.227723710840166706e-03, 2.235107361881020008e-03, 2.242487035024052708e-03, 2.249862718471302894e-03, 2.257234400431510322e-03, 2.264602069120738321e-03, 2.271965712762094060e-03, 2.279325319585545108e-03, 2.286680877828420333e-03, 2.294032375735166607e-03, 2.301379801557134567e-03, 2.308723143553175362e-03, 2.316062389988991430e-03, 2.323397529137661687e-03, 2.330728549279803292e-03, 2.338055438702463587e-03, 2.345378185700772861e-03, 2.352696778576803763e-03, 2.360011205639762129e-03, 2.367321455206433233e-03, 2.374627515600906402e-03, 2.381929375154410219e-03, 2.389227022205855488e-03, 2.396520445101213339e-03, 2.403809632194122813e-03, 2.411094571845638895e-03, 2.418375252424027812e-03, 2.425651662305173401e-03, 2.432923789872771386e-03, 2.440191623517217433e-03, 2.447455151637380460e-03, 2.454714362638805471e-03, 2.461969244935045820e-03, 2.469219786947509689e-03, 2.476465977104352033e-03, 2.483707803842189355e-03, 2.490945255604915757e-03, 2.498178320843921947e-03, 2.505406988018514178e-03, 2.512631245595685261e-03, 2.519851082049879946e-03, 2.527066485863599041e-03, 2.534277445526760594e-03, 2.541483949537272791e-03, 2.548685986400837933e-03, 2.555883544630711303e-03, 2.563076612748107098e-03, 2.570265179282417434e-03, 2.577449232770054419e-03, 2.584628761756294600e-03, 2.591803754793317420e-03, 2.598974200442011068e-03, 2.606140087270876135e-03, 2.613301403856196914e-03, 2.620458138782442992e-03, 2.627610280642077561e-03, 2.634757818035312390e-03, 2.641900739570616097e-03, 2.649039033864492541e-03, 2.656172689541257039e-03, 2.663301695233610995e-03, 2.670426039582018268e-03, 2.677545711235216914e-03, 2.684660698850392657e-03, 2.691770991092059129e-03, 2.698876576633693711e-03, 2.705977444156711011e-03, 2.713073582350253397e-03, 2.720164979912539308e-03, 2.727251625549063051e-03, 2.734333507974378522e-03, 2.741410615910972945e-03, 2.748482938089475466e-03, 2.755550463249035326e-03, 2.762613180137137546e-03, 2.769671077509366572e-03, 2.776724144129905873e-03, 2.783772368771304188e-03, 2.790815740214263891e-03, 2.797854247248233398e-03, 2.804887878670739732e-03, 2.811916623287941900e-03, 2.818940469914777477e-03, 2.825959407373863225e-03, 2.832973424497099279e-03, 2.839982510124613568e-03, 2.846986653104879774e-03, 2.853985842295262473e-03, 2.860980066561370511e-03, 2.867969314777642047e-03, 2.874953575827114693e-03, 2.881932838601216490e-03, 2.888907092000246851e-03, 2.895876324933179674e-03, 2.902840526317405304e-03, 2.909799685079184160e-03, 2.916753790153798088e-03, 2.923702830484463128e-03, 2.930646795024091991e-03, 2.937585672733491245e-03, 2.944519452582730450e-03, 2.951448123550901460e-03, 2.958371674625130936e-03, 2.965290094802173256e-03, 2.972203373087311563e-03, 2.979111498494536880e-03, 2.986014460046966176e-03, 2.992912246776622490e-03, 2.999804847724212888e-03, 3.006692251939693979e-03, 3.013574448481673006e-03, 3.020451426417947779e-03, 3.027323174825311512e-03, 3.034189682789359844e-03, 3.041050939404819561e-03, 3.047906933775807944e-03, 3.054757655014718205e-03, 3.061603092243927755e-03, 3.068443234594019683e-03, 3.075278071205423801e-03, 3.082107591227407038e-03, 3.088931783818229561e-03, 3.095750638145538126e-03, 3.102564143386157911e-03, 3.109372288725889989e-03, 3.116175063359971891e-03, 3.122972456492878988e-03, 3.129764457338095503e-03, 3.136551055118687401e-03, 3.143332239066684401e-03, 3.150107998423585642e-03, 3.156878322440498895e-03, 3.163643200377196010e-03, 3.170402621503225302e-03, 3.177156575097763672e-03, 3.183905050448599186e-03, 3.190648036853814627e-03, 3.197385523620047132e-03, 3.204117500064076769e-03, 3.210843955511852917e-03, 3.217564879298670782e-03, 3.224280260769484072e-03, 3.230990089278798320e-03, 3.237694354190380746e-03, 3.244393044877764195e-03, 3.251086150724061524e-03, 3.257773661121711462e-03, 3.264455565473021580e-03, 3.271131853189644841e-03, 3.277802513692960797e-03, 3.284467536414321064e-03, 3.291126910793964674e-03, 3.297780626282558955e-03, 3.304428672340137003e-03, 3.311071038436324068e-03, 3.317707714050726134e-03, 3.324338688672420772e-03, 3.330963951800432893e-03, 3.337583492943585126e-03, 3.344197301620241512e-03, 3.350805367358811442e-03, 3.357407679697504196e-03, 3.364004228184170209e-03, 3.370595002376636316e-03, 3.377179991842904801e-03, 3.383759186160202343e-03, 3.390332574916234219e-03, 3.396900147708277039e-03, 3.403461894143672718e-03, 3.410017803840027957e-03, 3.416567866424156941e-03, 3.423112071533620897e-03, 3.429650408815667750e-03, 3.436182867927425541e-03, 3.442709438536333509e-03, 3.449230110319615600e-03, 3.455744872964772261e-03, 3.462253716169366204e-03, 3.468756629640870181e-03, 3.475253603097060336e-03, 3.481744626265865280e-03, 3.488229688885137545e-03, 3.494708780703043461e-03, 3.501181891478204970e-03, 3.507649010978732083e-03, 3.514110128983804083e-03, 3.520565235281962121e-03, 3.527014319672720777e-03, 3.533457371965563216e-03, 3.539894381980093416e-03, 3.546325339546446860e-03, 3.552750234505052448e-03, 3.559169056706449480e-03, 3.565581796011792898e-03, 3.571988442292338070e-03, 3.578388985429912204e-03, 3.584783415316724394e-03, 3.591171721855171764e-03, 3.597553894958232384e-03, 3.603929924549574993e-03, 3.610299800562719388e-03, 3.616663512942054279e-03, 3.623021051642676387e-03, 3.629372406629450664e-03, 3.635717567878638326e-03, 3.642056525376156494e-03, 3.648389269119203197e-03, 3.654715789115235616e-03, 3.661036075382143127e-03, 3.667350117948635878e-03, 3.673657906854048329e-03, 3.679959432148092926e-03, 3.686254683891426482e-03, 3.692543652155074255e-03, 3.698826327020948625e-03, 3.705102698581653510e-03, 3.711372756940277060e-03, 3.717636492210768095e-03, 3.723893894518098303e-03, 3.730144953997288626e-03, 3.736389660794832163e-03, 3.742628005067688036e-03, 3.748859976983502131e-03, 3.755085566721019525e-03, 3.761304764469517239e-03, 3.767517560429334191e-03, 3.773723944811651753e-03, 3.779923907838330255e-03, 3.786117439742334861e-03, 3.792304530767517858e-03, 3.798485171168436512e-03, 3.804659351210764196e-03, 3.810827061171362384e-03, 3.816988291337430634e-03, 3.823143032007739542e-03, 3.829291273491696596e-03, 3.835433006109828860e-03, 3.841568220194011528e-03, 3.847696906086430120e-03, 3.853819054141050665e-03, 3.859934654722625268e-03, 3.866043698206839564e-03, 3.872146174980776318e-03, 3.878242075442361186e-03, 3.884331390000841933e-03, 3.890414109076624060e-03, 3.896490223101071754e-03, 3.902559722516936360e-03, 3.908622597778152984e-03, 3.914678839349660516e-03, 3.920728437707754650e-03, 3.926771383340256147e-03, 3.932807666745546764e-03, 3.938837278434081067e-03, 3.944860208926795689e-03, 3.950876448756612466e-03, 3.956885988467460057e-03, 3.962888818614489043e-03, 3.968884929764388524e-03, 3.974874312495196155e-03, 3.980856957396118612e-03, 3.986832855068019044e-03, 3.992801996122916607e-03, 3.998764371184401062e-03, 4.004719970887527826e-03, 4.010668785878584650e-03, 4.016610806815525299e-03, 4.022546024367760521e-03, 4.028474429216000186e-03, 4.034396012052612369e-03, 4.040310763581710096e-03, 4.046218674518289177e-03, 4.052119735589714868e-03, 4.058013937534075619e-03, 4.063901271101721772e-03, 4.069781727054325345e-03, 4.075655296165033546e-03, 4.081521969218813127e-03, 4.087381737012255219e-03, 4.093234590353403597e-03, 4.099080520062237804e-03, 4.104919516970147522e-03, 4.110751571920388814e-03, 4.116576675767964419e-03, 4.122394819379361815e-03, 4.128205993632950467e-03, 4.134010189419118873e-03, 4.139807397639336077e-03, 4.145597609207545518e-03, 4.151380815049174507e-03, 4.157157006101350194e-03, 4.162926173313339327e-03, 4.168688307645725989e-03, 4.174443400071513148e-03, 4.180191441575328154e-03, 4.185932423153514680e-03, 4.191666335814531706e-03, 4.197393170578737551e-03, 4.203112918478182566e-03, 4.208825570557150376e-03, 4.214531117871567201e-03, 4.220229551489556967e-03, 4.225920862491203654e-03, 4.231605041968354401e-03, 4.237282081025042779e-03, 4.242951970777520884e-03, 4.248614702353467436e-03, 4.254270266893218563e-03, 4.259918655548933404e-03, 4.265559859484692982e-03, 4.271193869876942564e-03, 4.276820677913941750e-03, 4.282440274796282288e-03, 4.288052651736667768e-03, 4.293657799959739278e-03, 4.299255710702498678e-03, 4.304846375214117782e-03, 4.310429784755755341e-03, 4.316005930600999400e-03, 4.321574804035401528e-03, 4.327136396356886204e-03, 4.332690698875833225e-03, 4.338237702914259780e-03, 4.343777399807045164e-03, 4.349309780901148420e-03, 4.354834837555629154e-03, 4.360352561142082951e-03, 4.365862943044401985e-03, 4.371365974658618890e-03, 4.376861647393377741e-03, 4.382349952669388482e-03, 4.387830881919968160e-03, 4.393304426590768572e-03, 4.398770578139701674e-03, 4.404229328037221475e-03, 4.409680667766247703e-03, 4.415124588821914275e-03, 4.420561082712085380e-03, 4.425990140956834185e-03, 4.431411755088794993e-03, 4.436825916653393959e-03, 4.442232617207899324e-03, 4.447631848322718129e-03, 4.453023601580564407e-03, 4.458407868576551129e-03, 4.463784640918518933e-03, 4.469153910226885199e-03, 4.474515668134490531e-03, 4.479869906286964784e-03, 4.485216616342333276e-03, 4.490555789971410576e-03, 4.495887418857652182e-03, 4.501211494696968907e-03, 4.506528009198049536e-03, 4.511836954082501343e-03, 4.517138321084000069e-03, 4.522432101949544134e-03, 4.527718288438564720e-03, 4.532996872323143481e-03, 4.538267845388348209e-03, 4.543531199431538083e-03, 4.548786926263368932e-03, 4.554035017707022161e-03, 4.559275465598369541e-03, 4.564508261786237760e-03, 4.569733398132263570e-03, 4.574950866510739400e-03, 4.580160658809023615e-03, 4.585362766927100764e-03, 4.590557182777974497e-03, 4.595743898287523582e-03, 4.600922905394350115e-03, 4.606094196050068354e-03, 4.611257762219431351e-03, 4.616413595879532983e-03, 4.621561689020998835e-03, 4.626702033647146599e-03, 4.631834621774163011e-03, 4.636959445431430848e-03, 4.642076496661064894e-03, 4.647185767518395051e-03, 4.652287250071722620e-03, 4.657380936402217946e-03, 4.662466818604250017e-03, 4.667544888785241618e-03, 4.672615139065505394e-03, 4.677677561578638503e-03, 4.682732148471102814e-03, 4.687778891902583123e-03, 4.692817784046071292e-03, 4.697848817087130723e-03, 4.702871983225024796e-03, 4.707887274671970941e-03, 4.712894683653028743e-03, 4.717894202406917870e-03, 4.722885823185322442e-03, 4.727869538252982978e-03, 4.732845339888114462e-03, 4.737813220381868577e-03, 4.742773172038830705e-03, 4.747725187176808290e-03, 4.752669258126697265e-03, 4.757605377232835067e-03, 4.762533536852817627e-03, 4.767453729357360587e-03, 4.772365947130718239e-03, 4.777270182570215150e-03, 4.782166428086614789e-03, 4.787054676104232284e-03, 4.791934919060187627e-03, 4.796807149405513289e-03, 4.801671359604349314e-03, 4.806527542134154951e-03, 4.811375689485908151e-03, 4.816215794164039644e-03, 4.821047848686160590e-03, 4.825871845583596005e-03, 4.830687777400845262e-03, 4.835495636696037457e-03, 4.840295416040778752e-03, 4.845087108019939873e-03, 4.849870705232028206e-03, 4.854646200289248516e-03, 4.859413585816763081e-03, 4.864172854453886058e-03, 4.868923998852870902e-03, 4.873667011679984166e-03, 4.878401885614926103e-03, 4.883128613350615557e-03, 4.887847187594041715e-03, 4.892557601065536388e-03, 4.897259846498980447e-03, 4.901953916641957343e-03, 4.906639804255698463e-03, 4.911317502114906190e-03, 4.915987003008161563e-03, 4.920648299737428143e-03, 4.925301385118532535e-03, 4.929946251980966629e-03, 4.934582893167752289e-03, 4.939211301535696361e-03, 4.943831469955534651e-03, 4.948443391311214620e-03, 4.953047058501032496e-03, 4.957642464436359982e-03, 4.962229602042872445e-03, 4.966808464259806453e-03, 4.971379044040066461e-03, 4.975941334350479812e-03, 4.980495328171668373e-03, 4.985041018497901079e-03, 4.989578398337446083e-03, 4.994107460712367795e-03, 4.998628198658414123e-03, 5.003140605225412860e-03, 5.007644673476814579e-03, 5.012140396490059532e-03, 5.016627767356651377e-03, 5.021106779181513588e-03, 5.025577425083924479e-03, 5.030039698196962089e-03, 5.034493591667315963e-03, 5.038939098656151049e-03, 5.043376212337987059e-03, 5.047804925901762732e-03, 5.052225232550220865e-03, 5.056637125499969035e-03, 5.061040597981725925e-03, 5.065435643240235458e-03, 5.069822254534066437e-03, 5.074200425135991580e-03, 5.078570148332762005e-03, 5.082931417425041315e-03, 5.087284225727729987e-03, 5.091628566569601083e-03, 5.095964433293583874e-03, 5.100291819256860121e-03, 5.104610717830254316e-03, 5.108921122399111454e-03, 5.113223026362748863e-03, 5.117516423134477882e-03, 5.121801306141917851e-03, 5.126077668826643091e-03, 5.130345504644547201e-03, 5.134604807065621009e-03, 5.138855569573928285e-03, 5.143097785667838200e-03, 5.147331448859895214e-03, 5.151556552676697653e-03, 5.155773090659163983e-03, 5.159981056362606539e-03, 5.164180443356089674e-03, 5.168371245223465395e-03, 5.172553455562341196e-03, 5.176727067984852014e-03, 5.180892076117526654e-03, 5.185048473600708391e-03, 5.189196254089477843e-03, 5.193335411253056227e-03, 5.197465938774844391e-03, 5.201587830352698630e-03, 5.205701079698810997e-03, 5.209805680539569654e-03, 5.213901626615846836e-03, 5.217988911682751654e-03, 5.222067529509831323e-03, 5.226137473881024322e-03, 5.230198738594505140e-03, 5.234251317462952288e-03, 5.238295204313595139e-03, 5.242330392987632794e-03, 5.246356877341208126e-03, 5.250374651244362617e-03, 5.254383708582024276e-03, 5.258384043253379672e-03, 5.262375649171983222e-03, 5.266358520265979233e-03, 5.270332650477983945e-03, 5.274298033764977106e-03, 5.278254664098554379e-03, 5.282202535464792029e-03, 5.286141641864169731e-03, 5.290071977311842921e-03, 5.293993535837326209e-03, 5.297906311484748380e-03, 5.301810298312987710e-03, 5.305705490394998017e-03, 5.309591881818747153e-03, 5.313469466686653216e-03, 5.317338239115461385e-03, 5.321198193236949085e-03, 5.325049323196994443e-03, 5.328891623156528645e-03, 5.332725087290901902e-03, 5.336549709789997070e-03, 5.340365484858513277e-03, 5.344172406715699646e-03, 5.347970469595422945e-03, 5.351759667746270807e-03, 5.355539995431530913e-03, 5.359311446929007107e-03, 5.363074016531432266e-03, 5.366827698545964358e-03, 5.370572487294620993e-03, 5.374308377114288097e-03, 5.378035362356103216e-03, 5.381753437386408746e-03, 5.385462596586108354e-03, 5.389162834350714679e-03, 5.392854145090719697e-03, 5.396536523231187064e-03, 5.400209963212065228e-03, 5.403874459488105034e-03, 5.407530006528702728e-03, 5.411176598818178383e-03, 5.414814230855645796e-03, 5.418442897154916206e-03, 5.422062592244702127e-03, 5.425673310668717962e-03, 5.429275046985072850e-03, 5.432867795767248181e-03, 5.436451551603111408e-03, 5.440026309095602995e-03, 5.443592062862726011e-03, 5.447148807536900811e-03, 5.450696537765829797e-03, 5.454235248211979602e-03, 5.457764933552647010e-03, 5.461285588480126359e-03, 5.464797207701555144e-03, 5.468299785939049334e-03, 5.471793317929689489e-03, 5.475277798425378512e-03, 5.478753222193053288e-03, 5.482219584014657796e-03, 5.485676878686928867e-03, 5.489125101021701501e-03, 5.492564245845892382e-03, 5.495994308001066198e-03, 5.499415282344204993e-03, 5.502827163746867693e-03, 5.506229947095975068e-03, 5.509623627293331813e-03, 5.513008199255670788e-03, 5.516383657914889806e-03, 5.519749998217938873e-03, 5.523107215126653660e-03, 5.526455303618116321e-03, 5.529794258684292071e-03, 5.533124075332384803e-03, 5.536444748584591624e-03, 5.539756273478141889e-03, 5.543058645065416026e-03, 5.546351858414033144e-03, 5.549635908606390458e-03, 5.552910790740229682e-03, 5.556176499928516463e-03, 5.559433031298950320e-03, 5.562680379994862367e-03, 5.565918541174241264e-03, 5.569147510010613589e-03, 5.572367281692489592e-03, 5.575577851423487233e-03, 5.578779214422531670e-03, 5.581971365923690462e-03, 5.585154301176094641e-03, 5.588328015444251826e-03, 5.591492504007696679e-03, 5.594647762161297083e-03, 5.597793785215110160e-03, 5.600930568494322422e-03, 5.604058107339423243e-03, 5.607176397106260375e-03, 5.610285433165563759e-03, 5.613385210903689727e-03, 5.616475725722079766e-03, 5.619556973037395826e-03, 5.622628948281663437e-03, 5.625691646902082621e-03, 5.628745064361226520e-03, 5.631789196136951191e-03, 5.634824037722293254e-03, 5.637849584625724032e-03, 5.640865832370965671e-03, 5.643872776497019760e-03, 5.646870412558245393e-03, 5.649858736124439840e-03, 5.652837742780456899e-03, 5.655807428126749872e-03, 5.658767787778985585e-03, 5.661718817368186635e-03, 5.664660512540891854e-03, 5.667592868958704413e-03, 5.670515882298897241e-03, 5.673429548253996688e-03, 5.676333862531862326e-03, 5.679228820855820523e-03, 5.682114418964536069e-03, 5.684990652612149226e-03, 5.687857517568171636e-03, 5.690715009617475055e-03, 5.693563124560440530e-03, 5.696401858212869936e-03, 5.699231206405894028e-03, 5.702051164986167604e-03, 5.704861729815907667e-03, 5.707662896772454537e-03, 5.710454661749012582e-03, 5.713237020653828824e-03, 5.716009969410977901e-03, 5.718773503959854662e-03, 5.721527620255286925e-03, 5.724272314267682057e-03, 5.727007581982908151e-03, 5.729733419402305294e-03, 5.732449822542789661e-03, 5.735156787436642735e-03, 5.737854310131833974e-03, 5.740542386691788353e-03, 5.743221013195374224e-03, 5.745890185737081990e-03, 5.748549900427026710e-03, 5.751200153390620233e-03, 5.753840940769000545e-03, 5.756472258718925081e-03, 5.759094103412458476e-03, 5.761706471037551965e-03, 5.764309357797384181e-03, 5.766902759910985665e-03, 5.769486673612899720e-03, 5.772061095153148587e-03, 5.774626020797475438e-03, 5.777181446827188253e-03, 5.779727369539122521e-03, 5.782263785245828590e-03, 5.784790690275393860e-03, 5.787308080971573752e-03, 5.789815953693750079e-03, 5.792314304816865121e-03, 5.794803130731551732e-03, 5.797282427844169771e-03, 5.799752192576475632e-03, 5.802212421366132258e-03, 5.804663110666372604e-03, 5.807104256945993560e-03, 5.809535856689615300e-03, 5.811957906397369027e-03, 5.814370402585169323e-03, 5.816773341784646500e-03, 5.819166720542961850e-03, 5.821550535423077391e-03, 5.823924783003688217e-03, 5.826289459879044688e-03, 5.828644562659259475e-03, 5.830990087969999645e-03, 5.833326032452773764e-03, 5.835652392764793112e-03, 5.837969165578885816e-03, 5.840276347583711961e-03, 5.842573935483708070e-03, 5.844861925998830372e-03, 5.847140315865026645e-03, 5.849409101833868453e-03, 5.851668280672667373e-03, 5.853917849164542650e-03, 5.856157804108307573e-03, 5.858388142318607383e-03, 5.860608860625833409e-03, 5.862819955876117858e-03, 5.865021424931427495e-03, 5.867213264669458687e-03, 5.869395471983706800e-03, 5.871568043783501750e-03, 5.873730976993890053e-03, 5.875884268555740635e-03, 5.878027915425846316e-03, 5.880161914576571662e-03, 5.882286262996295340e-03, 5.884400957689175926e-03, 5.886505995675085992e-03, 5.888601373989822869e-03, 5.890687089684994160e-03, 5.892763139828005592e-03, 5.894829521502139950e-03, 5.896886231806466004e-03, 5.898933267855975549e-03, 5.900970626781431617e-03, 5.902998305729480373e-03, 5.905016301862634626e-03, 5.907024612359275569e-03, 5.909023234413585124e-03, 5.911012165235697731e-03, 5.912991402051523404e-03, 5.914960942102930747e-03, 5.916920782647681031e-03, 5.918870920959269470e-03, 5.920811354327260023e-03, 5.922742080057039928e-03, 5.924663095469791078e-03, 5.926574397902740696e-03, 5.928475984708950555e-03, 5.930367853257361224e-03, 5.932250000932868389e-03, 5.934122425136223108e-03, 5.935985123284167123e-03, 5.937838092809319228e-03, 5.939681331160157930e-03, 5.941514835801176703e-03, 5.943338604212836281e-03, 5.945152633891326137e-03, 5.946956922349012041e-03, 5.948751467114065695e-03, 5.950536265730596575e-03, 5.952311315758714375e-03, 5.954076614774378093e-03, 5.955832160369639756e-03, 5.957577950152429316e-03, 5.959313981746595414e-03, 5.961040252792004258e-03, 5.962756760944497997e-03, 5.964463503875814046e-03, 5.966160479273721270e-03, 5.967847684841925439e-03, 5.969525118300136012e-03, 5.971192777384039252e-03, 5.972850659845260930e-03, 5.974498763451426171e-03, 5.976137085986253129e-03, 5.977765625249255484e-03, 5.979384379056085046e-03, 5.980993345238366961e-03, 5.982592521643661544e-03, 5.984181906135620406e-03, 5.985761496593810377e-03, 5.987331290913843612e-03, 5.988891287007385399e-03, 5.990441482802028386e-03, 5.991981876241429632e-03, 5.993512465285272435e-03, 5.995033247909216899e-03, 5.996544222105013554e-03, 5.998045385880332488e-03, 5.999536737258951563e-03, 6.001018274280728662e-03, 6.002489995001368366e-03, 6.003951897492803592e-03, 6.005403979842916309e-03, 6.006846240155610389e-03, 6.008278676550861050e-03, 6.009701287164702713e-03, 6.011114070149181296e-03, 6.012517023672408860e-03, 6.013910145918531513e-03, 6.015293435087775385e-03, 6.016666889396421469e-03, 6.018030507076750982e-03, 6.019384286377175465e-03, 6.020728225562129235e-03, 6.022062322912124892e-03, 6.023386576723717759e-03, 6.024700985309563127e-03, 6.026005546998312173e-03, 6.027300260134873904e-03, 6.028585123079946775e-03, 6.029860134210538250e-03, 6.031125291919678562e-03, 6.032380594616373014e-03, 6.033626040725824889e-03, 6.034861628689286266e-03, 6.036087356964076230e-03, 6.037303224023600826e-03, 6.038509228357365199e-03, 6.039705368470958853e-03, 6.040891642886080798e-03, 6.042068050140473635e-03, 6.043234588788018100e-03, 6.044391257398716577e-03, 6.045538054558560401e-03, 6.046674978869778783e-03, 6.047802028950583809e-03, 6.048919203435361262e-03, 6.050026500974581278e-03, 6.051123920234774932e-03, 6.052211459898677350e-03, 6.053289118665032553e-03, 6.054356895248747851e-03, 6.055414788380826183e-03, 6.056462796808383467e-03, 6.057500919294635591e-03, 6.058529154618946984e-03, 6.059547501576740408e-03, 6.060555958979627067e-03, 6.061554525655286907e-03, 6.062543200447497241e-03, 6.063521982216223821e-03, 6.064490869837524563e-03, 6.065449862203546073e-03, 6.066398958222615594e-03, 6.067338156819092679e-03, 6.068267456933580835e-03, 6.069186857522745372e-03, 6.070096357559359376e-03, 6.070995956032367892e-03, 6.071885651946823739e-03, 6.072765444323898788e-03, 6.073635332200909981e-03, 6.074495314631329738e-03, 6.075345390684708767e-03, 6.076185559446777538e-03, 6.077015820019358687e-03, 6.077836171520433796e-03, 6.078646613084159878e-03, 6.079447143860713249e-03, 6.080237763016548870e-03, 6.081018469734164426e-03, 6.081789263212200938e-03, 6.082550142665492203e-03, 6.083301107324923414e-03, 6.084042156437619378e-03, 6.084773289266777116e-03, 6.085494505091736984e-03, 6.086205803208007831e-03, 6.086907182927240971e-03, 6.087598643577179884e-03, 6.088280184501742610e-03, 6.088951805061021752e-03, 6.089613504631195134e-03, 6.090265282604612543e-03, 6.090907138389746282e-03, 6.091539071411222403e-03, 6.092161081109861466e-03, 6.092773166942493795e-03, 6.093375328382236167e-03, 6.093967564918283640e-03, 6.094549876055946856e-03, 6.095122261316750049e-03, 6.095684720238298340e-03, 6.096237252374366207e-03, 6.096779857294875801e-03, 6.097312534585876131e-03, 6.097835283849587298e-03, 6.098348104704342382e-03, 6.098850996784623869e-03, 6.099343959741053249e-03, 6.099826993240444785e-03, 6.100300096965654596e-03, 6.100763270615798366e-03, 6.101216513906024957e-03, 6.101659826567702900e-03, 6.102093208348311967e-03, 6.102516659011445778e-03, 6.102930178336894197e-03, 6.103333766120547926e-03, 6.103727422174466156e-03, 6.104111146326803711e-03, 6.104484938421885637e-03, 6.104848798320179452e-03, 6.105202725898291674e-03, 6.105546721048911440e-03, 6.105880783680923268e-03, 6.106204913719368889e-03, 6.106519111105322348e-03, 6.106823375796099906e-03, 6.107117707765122132e-03, 6.107402107001893080e-03, 6.107676573512102643e-03, 6.107941107317543285e-03, 6.108195708456163817e-03, 6.108440376982028630e-03, 6.108675112965320300e-03, 6.108899916492360402e-03, 6.109114787665604306e-03, 6.109319726603636841e-03, 6.109514733441154082e-03, 6.109699808328972019e-03, 6.109874951434036972e-03, 6.110040162939444665e-03, 6.110195443044367375e-03, 6.110340791964125919e-03, 6.110476209930145418e-03, 6.110601697189987393e-03, 6.110717254007311597e-03, 6.110822880661915917e-03, 6.110918577449681727e-03, 6.111004344682617259e-03, 6.111080182688864541e-03, 6.111146091812633477e-03, 6.111202072414292918e-03, 6.111248124870267452e-03, 6.111284249573144083e-03, 6.111310446931562078e-03, 6.111326717370303176e-03, 6.111333061330213520e-03, 6.111329479268293001e-03, 6.111315971657590301e-03, 6.111292538987303513e-03, 6.111259181762646563e-03, 6.111215900505031356e-03, 6.111162695751864819e-03, 6.111099568056730172e-03, 6.111026517989226470e-03, 6.110943546135100442e-03, 6.110850653096156285e-03, 6.110747839490265204e-03, 6.110635105951431334e-03, 6.110512453129691122e-03, 6.110379881691196599e-03, 6.110237392318149455e-03, 6.110084985708850482e-03, 6.109922662577660542e-03, 6.109750423655025721e-03, 6.109568269687423551e-03, 6.109376201437454086e-03, 6.109174219683734947e-03, 6.108962325220976784e-03, 6.108740518859961596e-03, 6.108508801427501959e-03, 6.108267173766495674e-03, 6.108015636735839894e-03, 6.107754191210569041e-03, 6.107482838081712551e-03, 6.107201578256357330e-03, 6.106910412657658160e-03, 6.106609342224786525e-03, 6.106298367912977448e-03, 6.105977490693476582e-03, 6.105646711553613937e-03, 6.105306031496718876e-03, 6.104955451542164353e-03, 6.104594972725346097e-03, 6.104224596097711231e-03, 6.103844322726702763e-03, 6.103454153695820304e-03, 6.103054090104529858e-03, 6.102644133068369642e-03, 6.102224283718895442e-03, 6.101794543203609492e-03, 6.101354912686114858e-03, 6.100905393345938503e-03, 6.100445986378686541e-03, 6.099976692995900257e-03, 6.099497514425162789e-03, 6.099008451910053162e-03, 6.098509506710124602e-03, 6.098000680100933157e-03, 6.097481973374035101e-03, 6.096953387836940956e-03, 6.096414924813150192e-03, 6.095866585642193726e-03, 6.095308371679512491e-03, 6.094740284296535499e-03, 6.094162324880725810e-03, 6.093574494835412268e-03, 6.092976795579969039e-03, 6.092369228549707194e-03, 6.091751795195862566e-03, 6.091124496985690293e-03, 6.090487335402348587e-03, 6.089840311944968131e-03, 6.089183428128623447e-03, 6.088516685484310353e-03, 6.087840085559009275e-03, 6.087153629915593306e-03, 6.086457320132877651e-03, 6.085751157805641305e-03, 6.085035144544544659e-03, 6.084309281976182406e-03, 6.083573571743111294e-03, 6.082828015503735641e-03, 6.082072614932401873e-03, 6.081307371719411534e-03, 6.080532287570911132e-03, 6.079747364208958060e-03, 6.078952603371547483e-03, 6.078148006812517795e-03, 6.077333576301639957e-03, 6.076509313624561988e-03, 6.075675220582788146e-03, 6.074831298993768267e-03, 6.073977550690771131e-03, 6.073113977522913084e-03, 6.072240581355310696e-03, 6.071357364068754627e-03, 6.070464327560096476e-03, 6.069561473741926123e-03, 6.068648804542674940e-03, 6.067726321906707736e-03, 6.066794027794189179e-03, 6.065851924181089004e-03, 6.064900013059290433e-03, 6.063938296436463538e-03, 6.062966776336136364e-03, 6.061985454797647228e-03, 6.060994333876141248e-03, 6.059993415642624115e-03, 6.058982702183893579e-03, 6.057962195602535974e-03, 6.056931898016964383e-03, 6.055891811561421242e-03, 6.054841938385880327e-03, 6.053782280656200276e-03, 6.052712840553905148e-03, 6.051633620276451568e-03, 6.050544622036959849e-03, 6.049445848064363175e-03, 6.048337300603385917e-03, 6.047218981914508941e-03, 6.046090894273961798e-03, 6.044953039973750483e-03, 6.043805421321605392e-03, 6.042648040641083670e-03, 6.041480900271386199e-03, 6.040304002567509385e-03, 6.039117349900190515e-03, 6.037920944655913828e-03, 6.036714789236782147e-03, 6.035498886060773616e-03, 6.034273237561518788e-03, 6.033037846188264199e-03, 6.031792714406176807e-03, 6.030537844695901643e-03, 6.029273239553984212e-03, 6.027998901492474110e-03, 6.026714833039245947e-03, 6.025421036737821541e-03, 6.024117515147379455e-03, 6.022804270842766275e-03, 6.021481306414572070e-03, 6.020148624468963858e-03, 6.018806227627828721e-03, 6.017454118528666254e-03, 6.016092299824628460e-03, 6.014720774184565723e-03, 6.013339544292935733e-03, 6.011948612849741906e-03, 6.010547982570796192e-03, 6.009137656187392082e-03, 6.007717636446473740e-03, 6.006287926110650752e-03, 6.004848527958070621e-03, 6.003399444782547140e-03, 6.001940679393447629e-03, 6.000472234615730240e-03, 5.998994113290003795e-03, 5.997506318272369068e-03, 5.996008852434555822e-03, 5.994501718663876842e-03, 5.992984919863161147e-03, 5.991458458950869349e-03, 5.989922338860927988e-03, 5.988376562542879582e-03, 5.986821132961808907e-03, 5.985256053098343861e-03, 5.983681325948524490e-03, 5.982096954524120450e-03, 5.980502941852271909e-03, 5.978899290975686447e-03, 5.977286004952587876e-03, 5.975663086856662469e-03, 5.974030539777172577e-03, 5.972388366818834338e-03, 5.970736571101791651e-03, 5.969075155761775775e-03, 5.967404123949914506e-03, 5.965723478832831925e-03, 5.964033223592645795e-03, 5.962333361426880828e-03, 5.960623895548544139e-03, 5.958904829186109642e-03, 5.957176165583363651e-03, 5.955437907999764843e-03, 5.953690059709994958e-03, 5.951932624004192124e-03, 5.950165604187995089e-03, 5.948389003582399241e-03, 5.946602825523757477e-03, 5.944807073363935455e-03, 5.943001750470085220e-03, 5.941186860224795252e-03, 5.939362406026038425e-03, 5.937528391287097418e-03, 5.935684819436727773e-03, 5.933831693918962744e-03, 5.931969018193153191e-03, 5.930096795734145394e-03, 5.928215030031999157e-03, 5.926323724592158677e-03, 5.924422882935417856e-03, 5.922512508597771105e-03, 5.920592605130728207e-03, 5.918663176100934405e-03, 5.916724225090401121e-03, 5.914775755696468663e-03, 5.912817771531739437e-03, 5.910850276224056260e-03, 5.908873273416615987e-03, 5.906886766767815988e-03, 5.904890759951402467e-03, 5.902885256656278772e-03, 5.900870260586637238e-03, 5.898845775461944441e-03, 5.896811805016896092e-03, 5.894768353001309490e-03, 5.892715423180440969e-03, 5.890653019334554825e-03, 5.888581145259185259e-03, 5.886499804765147649e-03, 5.884409001678370284e-03, 5.882308739839996713e-03, 5.880199023106366663e-03, 5.878079855348918026e-03, 5.875951240454389823e-03, 5.873813182324545516e-03, 5.871665684876379437e-03, 5.869508752042029189e-03, 5.867342387768733139e-03, 5.865166596018920632e-03, 5.862981380770087951e-03, 5.860786746014846893e-03, 5.858582695761001095e-03, 5.856369234031392514e-03, 5.854146364863845042e-03, 5.851914092311597329e-03, 5.849672420442626232e-03, 5.847421353340132542e-03, 5.845160895102425626e-03, 5.842891049842753419e-03, 5.840611821689567842e-03, 5.838323214786241173e-03, 5.836025233291177068e-03, 5.833717881377936329e-03, 5.831401163234993176e-03, 5.829075083065825454e-03, 5.826739645089013507e-03, 5.824394853538025080e-03, 5.822040712661441693e-03, 5.819677226722760020e-03, 5.817304400000343316e-03, 5.814922236787799584e-03, 5.812530741393418660e-03, 5.810129918140590280e-03, 5.807719771367664437e-03, 5.805300305427849028e-03, 5.802871524689296595e-03, 5.800433433535176313e-03, 5.797986036363425924e-03, 5.795529337587025827e-03, 5.793063341633781366e-03, 5.790588052946364465e-03, 5.788103475982442868e-03, 5.785609615214448546e-03, 5.783106475129675718e-03, 5.780594060230390130e-03, 5.778072375033596608e-03, 5.775541424071230744e-03, 5.773001211890022716e-03, 5.770451743051417497e-03, 5.767893022131952152e-03, 5.765325053722703333e-03, 5.762747842429657638e-03, 5.760161392873656971e-03, 5.757565709690240681e-03, 5.754960797529749643e-03, 5.752346661057323660e-03, 5.749723304952787835e-03, 5.747090733910863343e-03, 5.744448952640889873e-03, 5.741797965866925375e-03, 5.739137778327906524e-03, 5.736468394777373761e-03, 5.733789819983500791e-03, 5.731102058729438051e-03, 5.728405115812674336e-03, 5.725698996045758445e-03, 5.722983704255607887e-03, 5.720259245283893998e-03, 5.717525623987136478e-03, 5.714782845236233283e-03, 5.712030913916866549e-03, 5.709269834929352541e-03, 5.706499613188624302e-03, 5.703720253624181349e-03, 5.700931761180228451e-03, 5.698134140815470927e-03, 5.695327397503308076e-03, 5.692511536231618929e-03, 5.689686562002886291e-03, 5.686852479834223623e-03, 5.684009294757286571e-03, 5.681157011818062201e-03, 5.678295636077492631e-03, 5.675425172610615472e-03, 5.672545626507346193e-03, 5.669657002871861425e-03, 5.666759306822912075e-03, 5.663852543493845884e-03, 5.660936718032370633e-03, 5.658011835600678177e-03, 5.655077901375516435e-03, 5.652134920548013315e-03, 5.649182898323740036e-03, 5.646221839922794389e-03, 5.643251750579570888e-03, 5.640272635543021849e-03, 5.637284500076454423e-03, 5.634287349457444728e-03, 5.631281188978295819e-03, 5.628266023945318643e-03, 5.625241859679396689e-03, 5.622208701515802980e-03, 5.619166554804022259e-03, 5.616115424908156052e-03, 5.613055317206306835e-03, 5.609986237091070700e-03, 5.606908189969423729e-03, 5.603821181262550258e-03, 5.600725216405940017e-03, 5.597620300849437576e-03, 5.594506440057116572e-03, 5.591383639507296194e-03, 5.588251904692672148e-03, 5.585111241120032169e-03, 5.581961654310561328e-03, 5.578803149799580093e-03, 5.575635733136564270e-03, 5.572459409885465072e-03, 5.569274185624155729e-03, 5.566080065944782780e-03, 5.562877056453799027e-03, 5.559665162771712868e-03, 5.556444390533171566e-03, 5.553214745387111302e-03, 5.549976232996449259e-03, 5.546728859038408885e-03, 5.543472629204205908e-03, 5.540207549199180175e-03, 5.536933624742864171e-03, 5.533650861568876339e-03, 5.530359265424705968e-03, 5.527058842072309942e-03, 5.523749597287271398e-03, 5.520431536859669690e-03, 5.517104666593252056e-03, 5.513768992305937561e-03, 5.510424519829852652e-03, 5.507071255010838502e-03, 5.503709203708864739e-03, 5.500338371797998220e-03, 5.496958765166141091e-03, 5.493570389715218133e-03, 5.490173251361174164e-03, 5.486767356033803167e-03, 5.483352709676978139e-03, 5.479929318248370068e-03, 5.476497187719617937e-03, 5.473056324076339130e-03, 5.469606733318002796e-03, 5.466148421457833577e-03, 5.462681394523270437e-03, 5.459205658555214662e-03, 5.455721219608846047e-03, 5.452228083752827525e-03, 5.448726257069840331e-03, 5.445215745656442619e-03, 5.441696555622871703e-03, 5.438168693093234016e-03, 5.434632164205489488e-03, 5.431086975111331858e-03, 5.427533131976148770e-03, 5.423970640979277648e-03, 5.420399508313631862e-03, 5.416819740186019916e-03, 5.413231342816906926e-03, 5.409634322440322676e-03, 5.406028685304405459e-03, 5.402414437670602365e-03, 5.398791585814163678e-03, 5.395160136024254767e-03, 5.391520094603264798e-03, 5.387871467867759966e-03, 5.384214262147483422e-03, 5.380548483786043966e-03, 5.376874139140702669e-03, 5.373191234582249710e-03, 5.369499776495039074e-03, 5.365799771277172427e-03, 5.362091225340218960e-03, 5.358374145109256158e-03, 5.354648537023121331e-03, 5.350914407533965793e-03, 5.347171763107700683e-03, 5.343420610223629207e-03, 5.339660955374431021e-03, 5.335892805066709543e-03, 5.332116165820117645e-03, 5.328331044167957872e-03, 5.324537446657125195e-03, 5.320735379847758330e-03, 5.316924850313639594e-03, 5.313105864641830614e-03, 5.309278429432837988e-03, 5.305442551300722578e-03, 5.301598236872783788e-03, 5.297745492789743445e-03, 5.293884325705780491e-03, 5.290014742288437315e-03, 5.286136749218349994e-03, 5.282250353189989027e-03, 5.278355560910620234e-03, 5.274452379101342986e-03, 5.270540814496140446e-03, 5.266620873842429475e-03, 5.262692563901166451e-03, 5.258755891446183738e-03, 5.254810863264765611e-03, 5.250857486157527697e-03, 5.246895766938135079e-03, 5.242925712433690009e-03, 5.238947329484349401e-03, 5.234960624943492229e-03, 5.230965605677825349e-03, 5.226962278567066911e-03, 5.222950650504167534e-03, 5.218930728395293830e-03, 5.214902519159741665e-03, 5.210866029729707173e-03, 5.206821267050988460e-03, 5.202768238081938688e-03, 5.198706949794561563e-03, 5.194637409173479166e-03, 5.190559623216570335e-03, 5.186473598934890870e-03, 5.182379343352388167e-03, 5.178276863506053006e-03, 5.174166166446026241e-03, 5.170047259235309965e-03, 5.165920148950056343e-03, 5.161784842679296992e-03, 5.157641347525044467e-03, 5.153489670602385067e-03, 5.149329819039282809e-03, 5.145161799976458866e-03, 5.140985620568035153e-03, 5.136801287980562007e-03, 5.132608809393663513e-03, 5.128408192000117292e-03, 5.124199443005060875e-03, 5.119982569627084569e-03, 5.115757579097137721e-03, 5.111524478659222603e-03, 5.107283275570247832e-03, 5.103033977099822802e-03, 5.098776590530343551e-03, 5.094511123157139353e-03, 5.090237582288138773e-03, 5.085955975244241777e-03, 5.081666309358926804e-03, 5.077368591978454609e-03, 5.073062830461922898e-03, 5.068749032181098929e-03, 5.064427204520200072e-03, 5.060097354876680505e-03, 5.055759490660155682e-03, 5.051413619293113576e-03, 5.047059748210794977e-03, 5.042697884860879512e-03, 5.038328036703884627e-03, 5.033950211212801298e-03, 5.029564415873200717e-03, 5.025170658183428576e-03, 5.020768945654227773e-03, 5.016359285808921417e-03, 5.011941686183544672e-03, 5.007516154326573272e-03, 5.003082697798760456e-03, 4.998641324173977440e-03, 4.994192041037877686e-03, 4.989734855989242171e-03, 4.985269776638988001e-03, 4.980796810610363563e-03, 4.976315965539556546e-03, 4.971827249074686934e-03, 4.967330668876521714e-03, 4.962826232618293594e-03, 4.958313947985491105e-03, 4.953793822676145694e-03, 4.949265864400541164e-03, 4.944730080881272645e-03, 4.940186479853494669e-03, 4.935635069064497026e-03, 4.931075856273906856e-03, 4.926508849253793607e-03, 4.921934055788450453e-03, 4.917351483674213888e-03, 4.912761140720209654e-03, 4.908163034747218233e-03, 4.903557173588844048e-03, 4.898943565090419991e-03, 4.894322217109712582e-03, 4.889693137516763245e-03, 4.885056334193677539e-03, 4.880411815034701485e-03, 4.875759587946424528e-03, 4.871099660847362338e-03, 4.866432041668354927e-03, 4.861756738352250064e-03, 4.857073758853950977e-03, 4.852383111140647076e-03, 4.847684803191473941e-03, 4.842978842997459552e-03, 4.838265238562117557e-03, 4.833543997900705685e-03, 4.828815129040360185e-03, 4.824078640020722925e-03, 4.819334538892824232e-03, 4.814582833720315418e-03, 4.809823532578264872e-03, 4.805056643553944767e-03, 4.800282174746630694e-03, 4.795500134267416045e-03, 4.790710530239278807e-03, 4.785913370797281047e-03, 4.781108664088129165e-03, 4.776296418270644002e-03, 4.771476641515333232e-03, 4.766649342004558761e-03, 4.761814527932672902e-03, 4.756972207505747764e-03, 4.752122388941410445e-03, 4.747265080469678308e-03, 4.742400290331741201e-03, 4.737528026780827087e-03, 4.732648298081979128e-03, 4.727761112511781605e-03, 4.722866478358745020e-03, 4.717964403922929664e-03, 4.713054897516084397e-03, 4.708137967461817515e-03, 4.703213622095221182e-03, 4.698281869763031894e-03, 4.693342718823818698e-03, 4.688396177647525219e-03, 4.683442254615931971e-03, 4.678480958122305071e-03, 4.673512296571284350e-03, 4.668536278379533874e-03, 4.663552911974984741e-03, 4.658562205796914005e-03, 4.653564168296678467e-03, 4.648558807936594046e-03, 4.643546133190689512e-03, 4.638526152544599802e-03, 4.633498874495163566e-03, 4.628464307550946184e-03, 4.623422460231747973e-03, 4.618373341068820158e-03, 4.613316958604950745e-03, 4.608253321394188695e-03, 4.603182438001965360e-03, 4.598104317005223714e-03, 4.593018966992038453e-03, 4.587926396562044470e-03, 4.582826614326102922e-03, 4.577719628906148572e-03, 4.572605448935962609e-03, 4.567484083060045948e-03, 4.562355539934399851e-03, 4.557219828226392357e-03, 4.552076956614413070e-03, 4.546926933788121225e-03, 4.541769768448543701e-03, 4.536605469307643072e-03, 4.531434045088808538e-03, 4.526255504526417901e-03, 4.521069856365990229e-03, 4.515877109364361056e-03, 4.510677272289348450e-03, 4.505470353919650665e-03, 4.500256363045582533e-03, 4.495035308468058911e-03, 4.489807198999344953e-03, 4.484572043462623295e-03, 4.479329850691903848e-03, 4.474080629532766265e-03, 4.468824388841189862e-03, 4.463561137484424457e-03, 4.458290884340747502e-03, 4.453013638299252452e-03, 4.447729408259958050e-03, 4.442438203133987004e-03, 4.437140031843127101e-03, 4.431834903320316064e-03, 4.426522826509181850e-03, 4.421203810364197039e-03, 4.415877863850900011e-03, 4.410544995945496830e-03, 4.405205215634831750e-03, 4.399858531917095854e-03, 4.394504953800715090e-03, 4.389144490305083197e-03, 4.383777150460506193e-03, 4.378402943307792110e-03, 4.373021877898690749e-03, 4.367633963295505101e-03, 4.362239208571244004e-03, 4.356837622809766122e-03, 4.351429215105400046e-03, 4.346013994563149851e-03, 4.340591970298836484e-03, 4.335163151438658005e-03, 4.329727547119646691e-03, 4.324285166489257037e-03, 4.318836018705529689e-03, 4.313380112937204199e-03, 4.307917458363491776e-03, 4.302448064173862788e-03, 4.296971939568913247e-03, 4.291489093759144439e-03, 4.285999535965752220e-03, 4.280503275420554157e-03, 4.275000321365555848e-03, 4.269490683053449656e-03, 4.263974369747160209e-03, 4.258451390720021344e-03, 4.252921755255945242e-03, 4.247385472649035584e-03, 4.241842552203728932e-03, 4.236293003235034986e-03, 4.230736835067985813e-03, 4.225174057038228251e-03, 4.219604678491547731e-03, 4.214028708783766793e-03, 4.208446157281609847e-03, 4.202857033361411671e-03, 4.197261346409991711e-03, 4.191659105824516174e-03, 4.186050321012155413e-03, 4.180435001390281693e-03, 4.174813156386620976e-03, 4.169184795438792349e-03, 4.163549927994808497e-03, 4.157908563512634215e-03, 4.152260711460312170e-03, 4.146606381316184954e-03, 4.140945582568534254e-03, 4.135278324715464630e-03, 4.129604617265664190e-03, 4.123924469737361154e-03, 4.118237891659126161e-03, 4.112544892569374409e-03, 4.106845482016257230e-03, 4.101139669558516443e-03, 4.095427464764224076e-03, 4.089708877211609833e-03, 4.083983916488983894e-03, 4.078252592194326655e-03, 4.072514913935519447e-03, 4.066770891330524079e-03, 4.061020534006856350e-03, 4.055263851602157639e-03, 4.049500853763661479e-03, 4.043731550148443356e-03, 4.037955950423544743e-03, 4.032174064265639166e-03, 4.026385901360891688e-03, 4.020591471405885256e-03, 4.014790784106113224e-03, 4.008983849177557082e-03, 4.003170676345267458e-03, 3.997351275344192441e-03, 3.991525655919090851e-03, 3.985693827824163607e-03, 3.979855800823232405e-03, 3.974011584689913189e-03, 3.968161189207237115e-03, 3.962304624167791930e-03, 3.956441899373940550e-03, 3.950573024637317118e-03, 3.944698009779350895e-03, 3.938816864630775329e-03, 3.932929599031800665e-03, 3.927036222832349863e-03, 3.921136745891657879e-03, 3.915231178078145031e-03, 3.909319529270300839e-03, 3.903401809355246804e-03, 3.897478028230301570e-03, 3.891548195801489488e-03, 3.885612321984459154e-03, 3.879670416704357645e-03, 3.873722489895432396e-03, 3.867768551501257583e-03, 3.861808611474905860e-03, 3.855842679778512944e-03, 3.849870766383518741e-03, 3.843892881270747144e-03, 3.837909034430030467e-03, 3.831919235860682151e-03, 3.825923495571031865e-03, 3.819921823578382135e-03, 3.813914229909823664e-03, 3.807900724600928218e-03, 3.801881317696683207e-03, 3.795856019251308677e-03, 3.789824839327783287e-03, 3.783787787998725994e-03, 3.777744875345171328e-03, 3.771696111457499643e-03, 3.765641506435244996e-03, 3.759581070386750802e-03, 3.753514813429343309e-03, 3.747442745689549305e-03, 3.741364877302652461e-03, 3.735281218412861166e-03, 3.729191779173539247e-03, 3.723096569746659531e-03, 3.716995600303384974e-03, 3.710888881023617636e-03, 3.704776422095825642e-03, 3.698658233718026770e-03, 3.692534326096365109e-03, 3.686404709446076868e-03, 3.680269393991316036e-03, 3.674128389964806569e-03, 3.667981707608052293e-03, 3.661829357171461369e-03, 3.655671348913934731e-03, 3.649507693103323618e-03, 3.643338400015982883e-03, 3.637163479936914110e-03, 3.630982943160012376e-03, 3.624796799987642544e-03, 3.618605060730540387e-03, 3.612407735708714641e-03, 3.606204835249940833e-03, 3.599996369691402763e-03, 3.593782349378117375e-03, 3.587562784663873242e-03, 3.581337685911372380e-03, 3.575107063491210230e-03, 3.568870927782734782e-03, 3.562629289173878736e-03, 3.556382158060857664e-03, 3.550129544848274529e-03, 3.543871459949379018e-03, 3.537607913785555374e-03, 3.531338916786799873e-03, 3.525064479391295819e-03, 3.518784612045570970e-03, 3.512499325204675345e-03, 3.506208629331825175e-03, 3.499912534898287977e-03, 3.493611052384251216e-03, 3.487304192277363400e-03, 3.480991965074325695e-03, 3.474674381279388782e-03, 3.468351451405254915e-03, 3.462023185972992918e-03, 3.455689595511594967e-03, 3.449350690558242432e-03, 3.443006481658432080e-03, 3.436656979365582294e-03, 3.430302194241206110e-03, 3.423942136855130224e-03, 3.417576817784932081e-03, 3.411206247616544417e-03, 3.404830436943779518e-03, 3.398449396368180466e-03, 3.392063136499994750e-03, 3.385671667956745724e-03, 3.379275001364178462e-03, 3.372873147356152644e-03, 3.366466116574068357e-03, 3.360053919667818027e-03, 3.353636567294546959e-03, 3.347214070119544117e-03, 3.340786438816108553e-03, 3.334353684065133501e-03, 3.327915816555364423e-03, 3.321472846983551230e-03, 3.315024786054008524e-03, 3.308571644478811198e-03, 3.302113432978001292e-03, 3.295650162279072353e-03, 3.289181843117512834e-03, 3.282708486236351163e-03, 3.276230102386016533e-03, 3.269746702325298637e-03, 3.263258296819948178e-03, 3.256764896643575026e-03, 3.250266512577577958e-03, 3.243763155410628145e-03, 3.237254835939272404e-03, 3.230741564967385022e-03, 3.224223353306385903e-03, 3.217700211775400589e-03, 3.211172151200846966e-03, 3.204639182416654710e-03, 3.198101316264377169e-03, 3.191558563592906440e-03, 3.185010935258248722e-03, 3.178458442124569485e-03, 3.171901095062522064e-03, 3.165338904951024018e-03, 3.158771882675602202e-03, 3.152200039129373754e-03, 3.145623385213157115e-03, 3.139041931834467194e-03, 3.132455689908354105e-03, 3.125864670357288242e-03, 3.119268884110710984e-03, 3.112668342105561620e-03, 3.106063055285777311e-03, 3.099453034602483049e-03, 3.092838291014204585e-03, 3.086218835486400931e-03, 3.079594678991659940e-03, 3.072965832509912121e-03, 3.066332307028048557e-03, 3.059694113539742234e-03, 3.053051263046459816e-03, 3.046403766555840983e-03, 3.039751635083439655e-03, 3.033094879651066899e-03, 3.026433511287838270e-03, 3.019767541029976052e-03, 3.013096979920429352e-03, 3.006421839009119131e-03, 2.999742129353068741e-03, 2.993057862015916035e-03, 2.986369048068484092e-03, 2.979675698588233473e-03, 2.972977824659470397e-03, 2.966275437373537549e-03, 2.959568547828476254e-03, 2.952857167128759321e-03, 2.946141306386431194e-03, 2.939420976719523716e-03, 2.932696189253018899e-03, 2.925966955119065332e-03, 2.919233285455710095e-03, 2.912495191408550656e-03, 2.905752684129108993e-03, 2.899005774775844247e-03, 2.892254474513998325e-03, 2.885498794515189112e-03, 2.878738745957629477e-03, 2.871974340026315058e-03, 2.865205587912490401e-03, 2.858432500814244402e-03, 2.851655089935953031e-03, 2.844873366488477953e-03, 2.838087341689391179e-03, 2.831297026762561331e-03, 2.824502432938010531e-03, 2.817703571452938316e-03, 2.810900453550159526e-03, 2.804093090479219293e-03, 2.797281493496154084e-03, 2.790465673863035904e-03, 2.783645642848599396e-03, 2.776821411727625581e-03, 2.769992991781217682e-03, 2.763160394296958547e-03, 2.756323630568461788e-03, 2.749482711895582122e-03, 2.742637649584611387e-03, 2.735788454947888672e-03, 2.728935139303630304e-03, 2.722077713976975462e-03, 2.715216190298290044e-03, 2.708350579604900960e-03, 2.701480893239779912e-03, 2.694607142551754594e-03, 2.687729338896486207e-03, 2.680847493634919924e-03, 2.673961618134337859e-03, 2.667071723768187769e-03, 2.660177821915588221e-03, 2.653279923961956999e-03, 2.646378041298424327e-03, 2.639472185322057091e-03, 2.632562367436082178e-03, 2.625648599049380371e-03, 2.618730891576701893e-03, 2.611809256438921405e-03, 2.604883705062572673e-03, 2.597954248879716724e-03, 2.591020899328976609e-03, 2.584083667853852555e-03, 2.577142565904526946e-03, 2.570197604936158651e-03, 2.563248796409950316e-03, 2.556296151792951908e-03, 2.549339682557686879e-03, 2.542379400182358164e-03, 2.535415316151028164e-03, 2.528447441953110466e-03, 2.521475789083921053e-03, 2.514500369044160057e-03, 2.507521193340080026e-03, 2.500538273483755673e-03, 2.493551620992621575e-03, 2.486561247389331222e-03, 2.479567164202815203e-03, 2.472569382966704338e-03, 2.465567915220340592e-03, 2.458562772508958785e-03, 2.451553966382377745e-03, 2.444541508396745871e-03, 2.437525410112831130e-03, 2.430505683097074470e-03, 2.423482338921416780e-03, 2.416455389162905972e-03, 2.409424845403899083e-03, 2.402390719232272171e-03, 2.395353022240872577e-03, 2.388311766028106131e-03, 2.381266962197382039e-03, 2.374218622357314977e-03, 2.367166758121979232e-03, 2.360111381110444658e-03, 2.353052502946627496e-03, 2.345990135260381075e-03, 2.338924289685885127e-03, 2.331854977862730851e-03, 2.324782211435753084e-03, 2.317706002054548912e-03, 2.310626361374049260e-03, 2.303543301053988940e-03, 2.296456832759097028e-03, 2.289366968159342770e-03, 2.282273718929404317e-03, 2.275177096748931971e-03, 2.268077113302713419e-03, 2.260973780280155047e-03, 2.253867109375852235e-03, 2.246757112289120978e-03, 2.239643800723814440e-03, 2.232527186389320854e-03, 2.225407280999381742e-03, 2.218284096272278832e-03, 2.211157643931868817e-03, 2.204027935705972236e-03, 2.196894983327460273e-03, 2.189758798534087361e-03, 2.182619393067972494e-03, 2.175476778676241080e-03, 2.168330967110438604e-03, 2.161181970126752668e-03, 2.154029799486220295e-03, 2.146874466954252179e-03, 2.139715984300836950e-03, 2.132554363300756713e-03, 2.125389615733028464e-03, 2.118221753381503009e-03, 2.111050788034390079e-03, 2.103876731484049731e-03, 2.096699595528110378e-03, 2.089519391967855928e-03, 2.082336132609307819e-03, 2.075149829263056751e-03, 2.067960493743843751e-03, 2.060768137870779611e-03, 2.053572773467556099e-03, 2.046374412361886934e-03, 2.039173066386107576e-03, 2.031968747376611435e-03, 2.024761467174060643e-03, 2.017551237623600724e-03, 2.010338070574470715e-03, 2.003121977879777221e-03, 1.995902971397558231e-03, 1.988681062989388834e-03, 1.981456264521383893e-03, 1.974228587863650301e-03, 1.966998044890071878e-03, 1.959764647479446485e-03, 1.952528407513848653e-03, 1.945289336879708593e-03, 1.938047447467686202e-03, 1.930802751172188813e-03, 1.923555259891656342e-03, 1.916304985528716545e-03, 1.909051939989657443e-03, 1.901796135185018430e-03, 1.894537583029023021e-03, 1.887276295439795472e-03, 1.880012284339583478e-03, 1.872745561654336850e-03, 1.865476139313521683e-03, 1.858204029251243807e-03, 1.850929243404587574e-03, 1.843651793714771829e-03, 1.836371692126911176e-03, 1.829088950589561474e-03, 1.821803581055326127e-03, 1.814515595480264325e-03, 1.807225005824124797e-03, 1.799931824050568507e-03, 1.792636062126660166e-03, 1.785337732023081379e-03, 1.778036845714384357e-03, 1.770733415178365241e-03, 1.763427452396729590e-03, 1.756118969354557649e-03, 1.748807978040136085e-03, 1.741494490445997514e-03, 1.734178518567680832e-03, 1.726860074403933085e-03, 1.719539169957791944e-03, 1.712215817234887189e-03, 1.704890028244598638e-03, 1.697561814999858825e-03, 1.690231189516646455e-03, 1.682898163814622186e-03, 1.675562749916520607e-03, 1.668224959848416946e-03, 1.660884805639891663e-03, 1.653542299323578759e-03, 1.646197452935353571e-03, 1.638850278514571287e-03, 1.631500788103488640e-03, 1.624148993747863683e-03, 1.616794907496480697e-03, 1.609438541400950475e-03, 1.602079907516827271e-03, 1.594719017901977294e-03, 1.587355884617678084e-03, 1.579990519728459789e-03, 1.572622935301650664e-03, 1.565253143407626443e-03, 1.557881156120019149e-03, 1.550506985515131414e-03, 1.543130643672581794e-03, 1.535752142674682219e-03, 1.528371494606699721e-03, 1.520988711557058745e-03, 1.513603805616915059e-03, 1.506216788879984449e-03, 1.498827673443573144e-03, 1.491436471407167055e-03, 1.484043194873497541e-03, 1.476647855947912143e-03, 1.469250466738224528e-03, 1.461851039355821892e-03, 1.454449585914013941e-03, 1.447046118529160888e-03, 1.439640649320480040e-03, 1.432233190409636829e-03, 1.424823753920945613e-03, 1.417412351981613616e-03, 1.409998996721141366e-03, 1.402583700271959341e-03, 1.395166474768829920e-03, 1.387747332349089160e-03, 1.380326285152848028e-03, 1.372903345322579313e-03, 1.365478525002935270e-03, 1.358051836341867599e-03, 1.350623291488805980e-03, 1.343192902596608562e-03, 1.335760681819737243e-03, 1.328326641315385461e-03, 1.320890793243291060e-03, 1.313453149765313665e-03, 1.306013723045650011e-03, 1.298572525251076148e-03, 1.291129568550421821e-03, 1.283684865114797071e-03, 1.276238427117828153e-03, 1.268790266735053641e-03, 1.261340396144567137e-03, 1.253888827526419445e-03, 1.246435573062845388e-03, 1.238980644938495823e-03, 1.231524055339996591e-03, 1.224065816455768320e-03, 1.216605940477165707e-03, 1.209144439596637624e-03, 1.201681326009691915e-03, 1.194216611913046172e-03, 1.186750309505783720e-03, 1.179282430989154118e-03, 1.171812988566145334e-03, 1.164341994441715116e-03, 1.156869460823008481e-03, 1.149395399918853779e-03, 1.141919823939982568e-03, 1.134442745099261199e-03, 1.126964175611091688e-03, 1.119484127692056382e-03, 1.112002613560391252e-03, 1.104519645435814157e-03, 1.097035235540656968e-03, 1.089549396098183969e-03, 1.082062139333746752e-03, 1.074573477474578863e-03, 1.067083422749217280e-03, 1.059591987388539989e-03, 1.052099183624348065e-03, 1.044605023690425806e-03, 1.037109519822343841e-03, 1.029612684257037378e-03, 1.022114529233023907e-03, 1.014615066990636307e-03, 1.007114309771594152e-03, 9.996122698188042183e-04, 9.921089593774390456e-04, 9.846043906934841099e-04, 9.770985760148103143e-04, 9.695915275905737755e-04, 9.620832576710186069e-04, 9.545737785086335454e-04, 9.470631023564655840e-04, 9.395512414692498183e-04, 9.320382081032480091e-04, 9.245240145157946265e-04, 9.170086729655313636e-04, 9.094921957126412149e-04, 9.019745950182348187e-04, 8.944558831450101933e-04, 8.869360723566428739e-04, 8.794151749180093664e-04, 8.718932030954338035e-04, 8.643701691562330133e-04, 8.568460853685397945e-04, 8.493209640024567244e-04, 8.417948173281826572e-04, 8.342676576180093912e-04, 8.267394971444661650e-04, 8.192103481814599127e-04, 8.116802230040922510e-04, 8.041491338882214611e-04, 7.966170931106992788e-04, 7.890841129495902283e-04, 7.815502056836583613e-04, 7.740153835925980830e-04, 7.664796589572578237e-04, 7.589430440590439440e-04, 7.514055511805606312e-04, 7.438671926050164068e-04, 7.363279806164402079e-04, 7.287879274999247911e-04, 7.212470455411848112e-04, 7.137053470263607976e-04, 7.061628442431884664e-04, 6.986195494791194727e-04, 6.910754750233206794e-04, 6.835306331648132328e-04, 6.759850361936150945e-04, 6.684386964005648588e-04, 6.608916260768740855e-04, 6.533438375143677760e-04, 6.457953430057055506e-04, 6.382461548438655681e-04, 6.306962853223754611e-04, 6.231457467355414276e-04, 6.155945513778418371e-04, 6.080427115445785104e-04, 6.004902395313581462e-04, 5.929371476338919601e-04, 5.853834481491680328e-04, 5.778291533737348008e-04, 5.702742756048709109e-04, 5.627188271403884374e-04, 5.551628202780270298e-04, 5.476062673165298751e-04, 5.400491805541899996e-04, 5.324915722899247134e-04, 5.249334548230879345e-04, 5.173748404530323884e-04, 5.098157414793343632e-04, 5.022561702020354865e-04, 4.946961389211103821e-04, 4.871356599367038936e-04, 4.795747455493593091e-04, 4.720134080594136469e-04, 4.644516597676501290e-04, 4.568895129747707162e-04, 4.493269799812077284e-04, 4.417640730882856212e-04, 4.342008045965165116e-04, 4.266371868067547995e-04, 4.190732320200137202e-04, 4.115089525369387477e-04, 4.039443606584609890e-04, 3.963794686851840137e-04, 3.888142889176251973e-04, 3.812488336564396089e-04, 3.736831152019008955e-04, 3.661171458541286929e-04, 3.585509379133260122e-04, 3.509845036793366141e-04, 3.434178554514537014e-04, 3.358510055295848402e-04, 3.282839662123727660e-04, 3.207167497992030559e-04, 3.131493685883256391e-04, 3.055818348779321147e-04, 2.980141609663898312e-04, 2.904463591509570523e-04, 2.828784417288563173e-04, 2.753104209970901268e-04, 2.677423092519125563e-04, 2.601741187894830308e-04, 2.526058619052585206e-04, 2.450375508942252353e-04, 2.374691980511309415e-04, 2.299008156699616995e-04, 2.223324160441712534e-04, 2.147640114669173601e-04, 2.071956142306173208e-04, 1.996272366267622567e-04, 1.920588909470762572e-04, 1.844905894816400321e-04, 1.769223445208977701e-04, 1.693541683537798967e-04, 1.617860732688633876e-04, 1.542180715541854484e-04, 1.466501754967991001e-04, 1.390823973830086953e-04, 1.315147494986018825e-04, 1.239472441282384691e-04, 1.163798935561079765e-04, 1.088127100653155473e-04, 1.012457059381184106e-04, 9.367889345615745345e-05, 8.611228490001566625e-05, 7.854589254902909852e-05, 7.097972868244928617e-05, 6.341380557773509106e-05, 5.584813551171434226e-05, 4.828273076039449373e-05, 4.071760359835326201e-05, 3.315276629981463592e-05, 2.558823113719527989e-05, 1.802401038218109258e-05, 1.046011630553871484e-05, 2.896561176673855495e-06, -4.666642736135535802e-06, -1.222948316550609307e-05, -1.979194784555928738e-05, -2.735402451126656449e-05, -3.491570089905972525e-05, -4.247696474659748758e-05, -5.003780379253265067e-05, -5.759820577695346010e-05, -6.515815844157195748e-05, -7.271764952856351824e-05, -8.027666678227315543e-05, -8.783519794805462379e-05, -9.539323077245966728e-05, -1.029507530037617971e-04, -1.105077523913048623e-04, -1.180642166861090378e-04, -1.256201336406416642e-04, -1.331754910085817189e-04, -1.407302765453456402e-04, -1.482844780078548883e-04, -1.558380831543035598e-04, -1.633910797445971644e-04, -1.709434555405437426e-04, -1.784951983046926041e-04, -1.860462958022072598e-04, -1.935967357988645807e-04, -2.011465060629273236e-04, -2.086955943640680065e-04, -2.162439884731384612e-04, -2.237916761634480261e-04, -2.313386452096967459e-04, -2.388848833881528826e-04, -2.464303784771891071e-04, -2.539751182566179653e-04, -2.615190905083105777e-04, -2.690622830159570037e-04, -2.766046835648375019e-04, -2.841462799423432185e-04, -2.916870599377489924e-04, -2.992270113419754273e-04, -3.067661219480332518e-04, -3.143043795512069833e-04, -3.218417719479032342e-04, -3.293782869375140761e-04, -3.369139123204232459e-04, -3.444486358998731425e-04, -3.519824454808092294e-04, -3.595153288700658669e-04, -3.670472738768084504e-04, -3.745782683122996014e-04, -3.821082999896683956e-04, -3.896373567245139924e-04, -3.971654263342602091e-04, -4.046924966387552476e-04, -4.122185554600447163e-04, -4.197435906221405329e-04, -4.272675899514554723e-04, -4.347905412769939321e-04, -4.423124324291932458e-04, -4.498332512416290782e-04, -4.573529855499348018e-04, -4.648716231915776083e-04, -4.723891520072988175e-04, -4.799055598392051934e-04, -4.874208345326385425e-04, -4.949349639350135574e-04, -5.024479358960112383e-04, -5.099597382680153392e-04, -5.174703589058795346e-04, -5.249797856666987622e-04, -5.324880064104118215e-04, -5.399950089991508535e-04, -5.475007812978525045e-04, -5.550053111740218962e-04, -5.625085864974982202e-04, -5.700105951408995873e-04, -5.775113249798054975e-04, -5.850107638916047679e-04, -5.925088997571928504e-04, -6.000057204598150968e-04, -6.075012138852570361e-04, -6.149953679223614305e-04, -6.224881704623837176e-04, -6.299796093995961273e-04, -6.374696726310541449e-04, -6.449583480563625404e-04, -6.524456235782059767e-04, -6.599314871021089678e-04, -6.674159265362073282e-04, -6.748989297918558689e-04, -6.823804847829700697e-04, -6.898605794265586389e-04, -6.973392016429055514e-04, -7.048163393544985313e-04, -7.122919804873075432e-04, -7.197661129705534237e-04, -7.272387247356384239e-04, -7.347098037178352884e-04, -7.421793378551459156e-04, -7.496473150884749382e-04, -7.571137233621629339e-04, -7.645785506233243036e-04, -7.720417848224686271e-04, -7.795034139132520556e-04, -7.869634258522568938e-04, -7.944218085995076797e-04, -8.018785501182425267e-04, -8.093336383746800198e-04, -8.167870613386268028e-04, -8.242388069828238042e-04, -8.316888632834664374e-04, -8.391372182203984563e-04, -8.465838597759545690e-04, -8.540287759366537454e-04, -8.614719546920462760e-04, -8.689133840349053508e-04, -8.763530519616607398e-04, -8.837909464721637387e-04, -8.912270555694667496e-04, -8.986613672604088594e-04, -9.060938695549929653e-04, -9.135245504669678831e-04, -9.209533980136005559e-04, -9.283804002154558534e-04, -9.358055450968243974e-04, -9.432288206859094784e-04, -9.506502150136788860e-04, -9.580697161157196527e-04, -9.654873120303434112e-04, -9.729029908000141804e-04, -9.803167404711218749e-04, -9.877285490929256419e-04, -9.951384047192242920e-04, -1.002546295407219729e-03, -1.009952209217703867e-03, -1.017356134215486457e-03, -1.024758058469174126e-03, -1.032157970050927515e-03, -1.039555857037077107e-03, -1.046951707507466200e-03, -1.054345509546055241e-03, -1.061737251240691760e-03, -1.069126920682890274e-03, -1.076514505968239948e-03, -1.083899995196618837e-03, -1.091283376471040940e-03, -1.098664637899325006e-03, -1.106043767592967400e-03, -1.113420753667316221e-03, -1.120795584242093024e-03, -1.128168247440746634e-03, -1.135538731391058350e-03, -1.142907024224896258e-03, -1.150273114078006640e-03, -1.157636989090523759e-03, -1.164998637406725697e-03, -1.172358047174822939e-03, -1.179715206547546445e-03, -1.187070103681513817e-03, -1.194422726737739970e-03, -1.201773063881809295e-03, -1.209121103282849571e-03, -1.216466833114761021e-03, -1.223810241555992745e-03, -1.231151316788516416e-03, -1.238490046999455620e-03, -1.245826420379971943e-03, -1.253160425125449074e-03, -1.260492049436003894e-03, -1.267821281515843761e-03, -1.275148109573853066e-03, -1.282472521823392652e-03, -1.289794506482047414e-03, -1.297114051772139997e-03, -1.304431145920514380e-03, -1.311745777158306470e-03, -1.319057933721527178e-03, -1.326367603850434236e-03, -1.333674775790045456e-03, -1.340979437790311554e-03, -1.348281578104995300e-03, -1.355581184993328615e-03, -1.362878246718875891e-03, -1.370172751549731532e-03, -1.377464687758936726e-03, -1.384754043624256310e-03, -1.392040807427953478e-03, -1.399324967457376331e-03, -1.406606512004330341e-03, -1.413885429365660138e-03, -1.421161707843035049e-03, -1.428435335742703422e-03, -1.435706301375945168e-03, -1.442974593059235047e-03, -1.450240199113200313e-03, -1.457503107864042318e-03, -1.464763307642477468e-03, -1.472020786784339818e-03, -1.479275533630747827e-03, -1.486527536526998901e-03, -1.493776783824214780e-03, -1.501023263878195971e-03, -1.508266965049643357e-03, -1.515507875704548511e-03, -1.522745984213993336e-03, -1.529981278953900480e-03, -1.537213748305651115e-03, -1.544443380655422925e-03, -1.551670164394799859e-03, -1.558894087920534039e-03, -1.566115139634326756e-03, -1.573333307943249569e-03, -1.580548581259929057e-03, -1.587760948001432472e-03, -1.594970396591054076e-03, -1.602176915456413010e-03, -1.609380493031228355e-03, -1.616581117754222353e-03, -1.623778778069305366e-03, -1.630973462425965980e-03, -1.638165159279087553e-03, -1.645353857088705570e-03, -1.652539544320499876e-03, -1.659722209445594092e-03, -1.666901840940314492e-03, -1.674078427286782413e-03, -1.681251956972283678e-03, -1.688422418489764296e-03, -1.695589800338031259e-03, -1.702754091020695871e-03, -1.709915279047421023e-03, -1.717073352933691554e-03, -1.724228301199780137e-03, -1.731380112372544458e-03, -1.738528774983513596e-03, -1.745674277570675439e-03, -1.752816608677358438e-03, -1.759955756852430667e-03, -1.767091710650708350e-03, -1.774224458632722972e-03, -1.781353989364522659e-03, -1.788480291418161148e-03, -1.795603353371460131e-03, -1.802723163807810848e-03, -1.809839711316735700e-03, -1.816952984493289342e-03, -1.824062971938517075e-03, -1.831169662259677332e-03, -1.838273044069109984e-03, -1.845373105985859607e-03, -1.852469836634588031e-03, -1.859563224645741954e-03, -1.866653258656046687e-03, -1.873739927307894668e-03, -1.880823219249910328e-03, -1.887903123136737589e-03, -1.894979627628830179e-03, -1.902052721392923909e-03, -1.909122393101830894e-03, -1.916188631434211868e-03, -1.923251425074991869e-03, -1.930310762715558648e-03, -1.937366633052709907e-03, -1.944419024790056691e-03, -1.951467926636980821e-03, -1.958513327309237273e-03, -1.965555215529096646e-03, -1.972593580024295436e-03, -1.979628409529589697e-03, -1.986659692785709003e-03, -1.993687418539515609e-03, -2.000711575544399969e-03, -2.007732152560087746e-03, -2.014749138352416469e-03, -2.021762521693884571e-03, -2.028772291363071991e-03, -2.035778436145175771e-03, -2.042780944831822272e-03, -2.049779806220831686e-03, -2.056775009116617019e-03, -2.063766542330396168e-03, -2.070754394679074316e-03, -2.077738554987003817e-03, -2.084719012084122400e-03, -2.091695754807685291e-03, -2.098668772001208334e-03, -2.105638052514608501e-03, -2.112603585204638010e-03, -2.119565358934654038e-03, -2.126523362574422697e-03, -2.133477585000577003e-03, -2.140428015096414779e-03, -2.147374641751698295e-03, -2.154317453863186394e-03, -2.161256440334046857e-03, -2.168191590074418449e-03, -2.175122892001187577e-03, -2.182050335037789227e-03, -2.188973908114594680e-03, -2.195893600169093653e-03, -2.202809400144820941e-03, -2.209721296993087235e-03, -2.216629279671133816e-03, -2.223533337143844286e-03, -2.230433458382690727e-03, -2.237329632365913246e-03, -2.244221848078897276e-03, -2.251110094513987525e-03, -2.257994360670250323e-03, -2.264874635553973652e-03, -2.271750908178444672e-03, -2.278623167563736777e-03, -2.285491402737260380e-03, -2.292355602733171360e-03, -2.299215756592855493e-03, -2.306071853365085876e-03, -2.312923882104979054e-03, -2.319771831875531987e-03, -2.326615691746587288e-03, -2.333455450794978073e-03, -2.340291098105097816e-03, -2.347122622767924133e-03, -2.353950013882321127e-03, -2.360773260554094831e-03, -2.367592351896123312e-03, -2.374407277028772571e-03, -2.381218025079703121e-03, -2.388024585183627993e-03, -2.394826946482814939e-03, -2.401625098126847473e-03, -2.408419029272438824e-03, -2.415208729083964494e-03, -2.421994186732887196e-03, -2.428775391398205283e-03, -2.435552332266654411e-03, -2.442324998531633738e-03, -2.449093379394765447e-03, -2.455857464064816614e-03, -2.462617241757896532e-03, -2.469372701697931157e-03, -2.476123833116042946e-03, -2.482870625251145432e-03, -2.489613067349675645e-03, -2.496351148665429745e-03, -2.503084858460022724e-03, -2.509814186002668965e-03, -2.516539120569977108e-03, -2.523259651446345571e-03, -2.529975767924139488e-03, -2.536687459302635565e-03, -2.543394714889702160e-03, -2.550097524000026830e-03, -2.556795875956749571e-03, -2.563489760090475762e-03, -2.570179165739400196e-03, -2.576864082249737294e-03, -2.583544498975469134e-03, -2.590220405278175885e-03, -2.596891790527575735e-03, -2.603558644100904297e-03, -2.610220955383494440e-03, -2.616878713768564652e-03, -2.623531908656987453e-03, -2.630180529457780761e-03, -2.636824565587872395e-03, -2.643464006471940488e-03, -2.650098841542745248e-03, -2.656729060241334525e-03, -2.663354652016007747e-03, -2.669975606323962171e-03, -2.676591912629536045e-03, -2.683203560405847052e-03, -2.689810539133787471e-03, -2.696412838302180738e-03, -2.703010447408150073e-03, -2.709603355956951079e-03, -2.716191553461729316e-03, -2.722775029444086253e-03, -2.729353773433468647e-03, -2.735927774967744034e-03, -2.742497023592958740e-03, -2.749061508863164839e-03, -2.755621220340768833e-03, -2.762176147596738518e-03, -2.768726280209546971e-03, -2.775271607766693471e-03, -2.781812119863666128e-03, -2.788347806104129675e-03, -2.794878656100439809e-03, -2.801404659472702102e-03, -2.807925805850040087e-03, -2.814442084869672386e-03, -2.820953486177046280e-03, -2.827459999426264452e-03, -2.833961614279825649e-03, -2.840458320408478961e-03, -2.846950107491698270e-03, -2.853436965217156195e-03, -2.859918883281225427e-03, -2.866395851388804823e-03, -2.872867859253080015e-03, -2.879334896595923260e-03, -2.885796953148069086e-03, -2.892254018648069986e-03, -2.898706082843835550e-03, -2.905153135491542627e-03, -2.911595166355886860e-03, -2.918032165210454349e-03, -2.924464121837223353e-03, -2.930891026027050445e-03, -2.937312867579471021e-03, -2.943729636302518451e-03, -2.950141322013153863e-03, -2.956547914537065343e-03, -2.962949403708490560e-03, -2.969345779370577594e-03, -2.975737031375529345e-03, -2.982123149583642933e-03, -2.988504123864877023e-03, -2.994879944097190386e-03, -3.001250600168077140e-03, -3.007616081973682898e-03, -3.013976379418617426e-03, -3.020331482417025395e-03, -3.026681380891654838e-03, -3.033026064774070954e-03, -3.039365524005041650e-03, -3.045699748534024930e-03, -3.052028728319664593e-03, -3.058352453329576427e-03, -3.064670913540198157e-03, -3.070984098937174119e-03, -3.077291999515220384e-03, -3.083594605277861084e-03, -3.089891906237854282e-03, -3.096183892417311238e-03, -3.102470553846751414e-03, -3.108751880566645084e-03, -3.115027862625767505e-03, -3.121298490082733291e-03, -3.127563753005034065e-03, -3.133823641469210639e-03, -3.140078145561214264e-03, -3.146327255376200633e-03, -3.152570961018345136e-03, -3.158809252601343324e-03, -3.165042120247870544e-03, -3.171269554090088046e-03, -3.177491544269440884e-03, -3.183708080936475341e-03, -3.189919154251189774e-03, -3.196124754383221963e-03, -3.202324871510821291e-03, -3.208519495822345375e-03, -3.214708617515295991e-03, -3.220892226796167289e-03, -3.227070313881634078e-03, -3.233242868996959347e-03, -3.239409882377548150e-03, -3.245571344267993066e-03, -3.251727244922216885e-03, -3.257877574603832566e-03, -3.264022323585985368e-03, -3.270161482151106094e-03, -3.276295040591457094e-03, -3.282422989208570209e-03, -3.288545318313750281e-03, -3.294662018227892571e-03, -3.300773079281266349e-03, -3.306878491813912153e-03, -3.312978246175763211e-03, -3.319072332725700892e-03, -3.325160741832982377e-03, -3.331243463876233657e-03, -3.337320489243638614e-03, -3.343391808333369668e-03, -3.349457411553039606e-03, -3.355517289320207684e-03, -3.361571432062159751e-03, -3.367619830215775115e-03, -3.373662474227896897e-03, -3.379699354555160736e-03, -3.385730461663813071e-03, -3.391755786030212910e-03, -3.397775318140265448e-03, -3.403789048489875256e-03, -3.409796967585080728e-03, -3.415799065941144651e-03, -3.421795334083891672e-03, -3.427785762548871736e-03, -3.433770341881136300e-03, -3.439749062636312561e-03, -3.445721915379704875e-03, -3.451688890686467788e-03, -3.457649979141989849e-03, -3.463605171341433038e-03, -3.469554457890144331e-03, -3.475497829403531233e-03, -3.481435276506824120e-03, -3.487366789835530737e-03, -3.493292360035239307e-03, -3.499211977761422943e-03, -3.505125633679926234e-03, -3.511033318466461745e-03, -3.516935022807017239e-03, -3.522830737397957164e-03, -3.528720452945198222e-03, -3.534604160165464009e-03, -3.540481849785435866e-03, -3.546353512541855230e-03, -3.552219139181886625e-03, -3.558078720462932911e-03, -3.563932247152473524e-03, -3.569779710028483845e-03, -3.575621099878986339e-03, -3.581456407502495078e-03, -3.587285623707805841e-03, -3.593108739313897668e-03, -3.598925745150161407e-03, -3.604736632056642579e-03, -3.610541390883101592e-03, -3.616340012490432305e-03, -3.622132487749255610e-03, -3.627918807540958090e-03, -3.633698962757560182e-03, -3.639472944300879177e-03, -3.645240743083847171e-03, -3.651002350029560872e-03, -3.656757756071517523e-03, -3.662506952153888121e-03, -3.668249929231356087e-03, -3.673986678268940757e-03, -3.679717190242446246e-03, -3.685441456137996535e-03, -3.691159466952452679e-03, -3.696871213693294408e-03, -3.702576687378346908e-03, -3.708275879036235321e-03, -3.713968779706431581e-03, -3.719655380438417844e-03, -3.725335672292958041e-03, -3.731009646341250027e-03, -3.736677293665012327e-03, -3.742338605356949031e-03, -3.747993572520195559e-03, -3.753642186268798739e-03, -3.759284437727562420e-03, -3.764920318031837569e-03, -3.770549818327919959e-03, -3.776172929772913991e-03, -3.781789643534495902e-03, -3.787399950791410768e-03, -3.793003842732976371e-03, -3.798601310559476980e-03, -3.804192345482277846e-03, -3.809776938723050208e-03, -3.815355081514723232e-03, -3.820926765101289278e-03, -3.826491980737018513e-03, -3.832050719687733926e-03, -3.837602973229943971e-03, -3.843148732650950115e-03, -3.848687989249284427e-03, -3.854220734334179617e-03, -3.859746959226070806e-03, -3.865266655256345725e-03, -3.870779813767279229e-03, -3.876286426112280931e-03, -3.881786483655866142e-03, -3.887279977773387424e-03, -3.892766899851513810e-03, -3.898247241287737270e-03, -3.903720993490776038e-03, -3.909188147880711221e-03, -3.914648695888102957e-03, -3.920102628955280180e-03, -3.925549938535457216e-03, -3.930990616092905517e-03, -3.936424653103234687e-03, -3.941852041053241565e-03, -3.947272771440741949e-03, -3.952686835775012959e-03, -3.958094225576311645e-03, -3.963494932376323415e-03, -3.968888947717970350e-03, -3.974276263155270689e-03, -3.979656870253645874e-03, -3.985030760590030710e-03, -3.990397925752091866e-03, -3.995758357339516779e-03, -4.001112046962647557e-03, -4.006458986243592070e-03, -4.011799166815914301e-03, -4.017132580324021124e-03, -4.022459218424254308e-03, -4.027779072784125509e-03, -4.033092135082460249e-03, -4.038398397009654653e-03, -4.043697850267547952e-03, -4.048990486569257682e-03, -4.054276297639609894e-03, -4.059555275214642156e-03, -4.064827411042071063e-03, -4.070092696881113560e-03, -4.075351124502327345e-03, -4.080602685687896233e-03, -4.085847372231808834e-03, -4.091085175938976443e-03, -4.096316088626609543e-03, -4.101540102122784928e-03, -4.106757208267753680e-03, -4.111967398913144930e-03, -4.117170665922056938e-03, -4.122367001169412702e-03, -4.127556396541791697e-03, -4.132738843937213032e-03, -4.137914335265571730e-03, -4.143082862448408885e-03, -4.148244417418812773e-03, -4.153398992121780549e-03, -4.158546578513828799e-03, -4.163687168563263291e-03, -4.168820754250419230e-03, -4.173947327566834668e-03, -4.179066880516157760e-03, -4.184179405114007988e-03, -4.189284893387192933e-03, -4.194383337375039676e-03, -4.199474729127974926e-03, -4.204559060708867695e-03, -4.209636324192146326e-03, -4.214706511664015331e-03, -4.219769615222704329e-03, -4.224825626978299768e-03, -4.229874539052650394e-03, -4.234916343579638726e-03, -4.239951032705078712e-03, -4.244978598586535319e-03, -4.249999033393735658e-03, -4.255012329308132703e-03, -4.260018478523256574e-03, -4.265017473244839437e-03, -4.270009305690037477e-03, -4.274993968088557604e-03, -4.279971452681908921e-03, -4.284941751723487721e-03, -4.289904857478979081e-03, -4.294860762225865929e-03, -4.299809458253874873e-03, -4.304750937864788851e-03, -4.309685193372316155e-03, -4.314612217102421765e-03, -4.319532001393177299e-03, -4.324444538594624833e-03, -4.329349821069004151e-03, -4.334247841190966115e-03, -4.339138591346793777e-03, -4.344022063935365149e-03, -4.348898251367493140e-03, -4.353767146066262958e-03, -4.358628740467197782e-03, -4.363483027017472926e-03, -4.368329998177040811e-03, -4.373169646417865083e-03, -4.378001964224052453e-03, -4.382826944092132852e-03, -4.387644578530920658e-03, -4.392454860061322137e-03, -4.397257781216774332e-03, -4.402053334542786224e-03, -4.406841512597375020e-03, -4.411622307950867523e-03, -4.416395713185750950e-03, -4.421161720897011198e-03, -4.425920323692184022e-03, -4.430671514190644665e-03, -4.435415285024813491e-03, -4.440151628838861879e-03, -4.444880538289883165e-03, -4.449602006047196148e-03, -4.454316024792450909e-03, -4.459022587219882948e-03, -4.463721686036185680e-03, -4.468413313960362988e-03, -4.473097463724047540e-03, -4.477774128071380227e-03, -4.482443299758807204e-03, -4.487104971555523972e-03, -4.491759136243024357e-03, -4.496405786615441380e-03, -4.501044915479659146e-03, -4.505676515654657120e-03, -4.510300579972279476e-03, -4.514917101277109331e-03, -4.519526072425793066e-03, -4.524127486288206067e-03, -4.528721335746203717e-03, -4.533307613694772392e-03, -4.537886313041366790e-03, -4.542457426705915138e-03, -4.547020947621199100e-03, -4.551576868732656878e-03, -4.556125182998237502e-03, -4.560665883388714814e-03, -4.565198962887613739e-03, -4.569724414490962221e-03, -4.574242231207735314e-03, -4.578752406059400683e-03, -4.583254932080322794e-03, -4.587749802317775925e-03, -4.592237009831303188e-03, -4.596716547693726132e-03, -4.601188408990436116e-03, -4.605652586819540019e-03, -4.610109074292130862e-03, -4.614557864531916576e-03, -4.618998950675578218e-03, -4.623432325872660689e-03, -4.627857983285350689e-03, -4.632275916088891311e-03, -4.636686117471379952e-03, -4.641088580633614784e-03, -4.645483298789424356e-03, -4.649870265165688410e-03, -4.654249473001808787e-03, -4.658620915550430210e-03, -4.662984586076935473e-03, -4.667340477859722135e-03, -4.671688584190336960e-03, -4.676028898372799371e-03, -4.680361413724593717e-03, -4.684686123575975379e-03, -4.689003021270109553e-03, -4.693312100163334923e-03, -4.697613353624834065e-03, -4.701906775036954374e-03, -4.706192357795047597e-03, -4.710470095307384836e-03, -4.714739980995428896e-03, -4.719002008293710256e-03, -4.723256170649664000e-03, -4.727502461523958553e-03, -4.731740874390461850e-03, -4.735971402735739133e-03, -4.740194040060020063e-03, -4.744408779876054666e-03, -4.748615615710240039e-03, -4.752814541101910845e-03, -4.757005549603442532e-03, -4.761188634780539296e-03, -4.765363790212060607e-03, -4.769531009489911925e-03, -4.773690286219386437e-03, -4.777841614018764338e-03, -4.781984986519708346e-03, -4.786120397367060741e-03, -4.790247840218817346e-03, -4.794367308746288851e-03, -4.798478796634056583e-03, -4.802582297579841529e-03, -4.806677805294709907e-03, -4.810765313503175510e-03, -4.814844815942611635e-03, -4.818916306364221663e-03, -4.822979778531956592e-03, -4.827035226223550662e-03, -4.831082643229905535e-03, -4.835122023355122381e-03, -4.839153360416807194e-03, -4.843176648245909460e-03, -4.847191880686630219e-03, -4.851199051596699618e-03, -4.855198154847055123e-03, -4.859189184322180652e-03, -4.863172133919920967e-03, -4.867146997551422688e-03, -4.871113769141349401e-03, -4.875072442627944973e-03, -4.879023011962478444e-03, -4.882965471110071488e-03, -4.886899814049147639e-03, -4.890826034771525097e-03, -4.894744127282676938e-03, -4.898654085601226310e-03, -4.902555903759698436e-03, -4.906449575803922998e-03, -4.910335095793145165e-03, -4.914212457800312683e-03, -4.918081655911838226e-03, -4.921942684227572501e-03, -4.925795536861085275e-03, -4.929640207939332310e-03, -4.933476691602949396e-03, -4.937304982006156945e-03, -4.941125073316629014e-03, -4.944936959715704947e-03, -4.948740635398497789e-03, -4.952536094573322702e-03, -4.956323331462510542e-03, -4.960102340301867502e-03, -4.963873115340720205e-03, -4.967635650842271329e-03, -4.971389941083125159e-03, -4.975135980353729941e-03, -4.978873762958194865e-03, -4.982603283214150428e-03, -4.986324535453074552e-03, -4.990037514020139071e-03, -4.993742213274076150e-03, -4.997438627587400331e-03, -5.001126751346562059e-03, -5.004806578951272872e-03, -5.008478104815523684e-03, -5.012141323366528338e-03, -5.015796229045660359e-03, -5.019442816307975036e-03, -5.023081079621990845e-03, -5.026711013470440588e-03, -5.030332612349626073e-03, -5.033945870769590721e-03, -5.037550783254345944e-03, -5.041147344341546759e-03, -5.044735548582783211e-03, -5.048315390543497115e-03, -5.051886864802826796e-03, -5.055449965953874233e-03, -5.059004688603610522e-03, -5.062551027372761379e-03, -5.066088976895945055e-03, -5.069618531821863151e-03, -5.073139686812713420e-03, -5.076652436545042377e-03, -5.080156775708812023e-03, -5.083652699008326184e-03, -5.087140201161612953e-03, -5.090619276900551320e-03, -5.094089920971106231e-03, -5.097552128133137767e-03, -5.101005893160370785e-03, -5.104451210840635182e-03, -5.107888075975560577e-03, -5.111316483380882493e-03, -5.114736427886299244e-03, -5.118147904335393870e-03, -5.121550907585818886e-03, -5.124945432509364802e-03, -5.128331473991498690e-03, -5.131709026932032049e-03, -5.135078086244705339e-03, -5.138438646857152424e-03, -5.141790703711315164e-03, -5.145134251762810244e-03, -5.148469285981715007e-03, -5.151795801351953356e-03, -5.155113792871502190e-03, -5.158423255552509364e-03, -5.161724184421207819e-03, -5.165016574517809766e-03, -5.168300420896779039e-03, -5.171575718626555268e-03, -5.174842462789782868e-03, -5.178100648483239914e-03, -5.181350270817732320e-03, -5.184591324918269920e-03, -5.187823805924153195e-03, -5.191047708988470212e-03, -5.194263029278837346e-03, -5.197469761976905751e-03, -5.200667902278378711e-03, -5.203857445393342968e-03, -5.207038386545913972e-03, -5.210210720974477010e-03, -5.213374443931677663e-03, -5.216529550684196291e-03, -5.219676036513103655e-03, -5.222813896713650143e-03, -5.225943126595228479e-03, -5.229063721481602700e-03, -5.232175676710636679e-03, -5.235278987634527439e-03, -5.238373649619872813e-03, -5.241459658047183980e-03, -5.244537008311562012e-03, -5.247605695822326645e-03, -5.250665716002866218e-03, -5.253717064291131209e-03, -5.256759736139305500e-03, -5.259793727013752605e-03, -5.262819032395287151e-03, -5.265835647778941558e-03, -5.268843568674146452e-03, -5.271842790604693366e-03, -5.274833309108569943e-03, -5.277815119738247032e-03, -5.280788218060519963e-03, -5.283752599656468645e-03, -5.286708260121680478e-03, -5.289655195065915555e-03, -5.292593400113464013e-03, -5.295522870903067968e-03, -5.298443603087552023e-03, -5.301355592334491135e-03, -5.304258834325699737e-03, -5.307153324757351437e-03, -5.310039059340121263e-03, -5.312916033799136226e-03, -5.315784243873808781e-03, -5.318643685318163832e-03, -5.321494353900516061e-03, -5.324336245403718006e-03, -5.327169355625083723e-03, -5.329993680376303791e-03, -5.332809215483572812e-03, -5.335615956787703035e-03, -5.338413900143663786e-03, -5.341203041421270156e-03, -5.343983376504524672e-03, -5.346754901292054447e-03, -5.349517611697139803e-03, -5.352271503647231150e-03, -5.355016573084591704e-03, -5.357752815965908036e-03, -5.360480228262310895e-03, -5.363198805959560819e-03, -5.365908545057966605e-03, -5.368609441572260409e-03, -5.371301491531877033e-03, -5.373984690980669436e-03, -5.376659035977139449e-03, -5.379324522594364916e-03, -5.381981146919913826e-03, -5.384628905055947531e-03, -5.387267793119393348e-03, -5.389897807241397255e-03, -5.392518943568078496e-03, -5.395131198259984877e-03, -5.397734567492208993e-03, -5.400329047454608539e-03, -5.402914634351505332e-03, -5.405491324401941189e-03, -5.408059113839613734e-03, -5.410617998912691656e-03, -5.413167975884166858e-03, -5.415709041031611590e-03, -5.418241190647176721e-03, -5.420764421037780820e-03, -5.423278728524900255e-03, -5.425784109444694962e-03, -5.428280560148160232e-03, -5.430768077000667007e-03, -5.433246656382530008e-03, -5.435716294688680734e-03, -5.438176988328568585e-03, -5.440628733726615360e-03, -5.443071527321781573e-03, -5.445505365567733860e-03, -5.447930244932918699e-03, -5.450346161900429705e-03, -5.452753112968106511e-03, -5.455151094648578135e-03, -5.457540103469094711e-03, -5.459920135971725250e-03, -5.462291188713259624e-03, -5.464653258265204233e-03, -5.467006341213878282e-03, -5.469350434160262855e-03, -5.471685533720182203e-03, -5.474011636524278579e-03, -5.476328739217747703e-03, -5.478636838460798457e-03, -5.480935930928314617e-03, -5.483226013309934650e-03, -5.485507082310141919e-03, -5.487779134648234323e-03, -5.490042167058215884e-03, -5.492296176288978884e-03, -5.494541159104155553e-03, -5.496777112282271588e-03, -5.499004032616614315e-03, -5.501221916915290805e-03, -5.503430762001236543e-03, -5.505630564712314309e-03, -5.507821321901008003e-03, -5.510003030434904893e-03, -5.512175687196186474e-03, -5.514339289082002306e-03, -5.516493833004477813e-03, -5.518639315890301426e-03, -5.520775734681293567e-03, -5.522903086334013736e-03, -5.525021367819882810e-03, -5.527130576125248093e-03, -5.529230708251320001e-03, -5.531321761214142568e-03, -5.533403732044746108e-03, -5.535476617788930367e-03, -5.537540415507464023e-03, -5.539595122276030036e-03, -5.541640735185153661e-03, -5.543677251340287451e-03, -5.545704667861893651e-03, -5.547722981885122411e-03, -5.549732190560325261e-03, -5.551732291052485259e-03, -5.553723280541754750e-03, -5.555705156223126641e-03, -5.557677915306448273e-03, -5.559641555016631327e-03, -5.561596072593491362e-03, -5.563541465291722658e-03, -5.565477730381044805e-03, -5.567404865146134176e-03, -5.569322866886533725e-03, -5.571231732916877635e-03, -5.573131460566626769e-03, -5.575022047180299388e-03, -5.576903490117439931e-03, -5.578775786752392628e-03, -5.580638934474596406e-03, -5.582492930688539787e-03, -5.584337772813472052e-03, -5.586173458283931470e-03, -5.587999984549137274e-03, -5.589817349073552578e-03, -5.591625549336539172e-03, -5.593424582832418231e-03, -5.595214447070589146e-03, -5.596995139575481823e-03, -5.598766657886420500e-03, -5.600528999557842329e-03, -5.602282162159232318e-03, -5.604026143274976751e-03, -5.605760940504603447e-03, -5.607486551462576192e-03, -5.609202973778469950e-03, -5.610910205096903206e-03, -5.612608243077392249e-03, -5.614297085394667763e-03, -5.615976729738433697e-03, -5.617647173813408029e-03, -5.619308415339418182e-03, -5.620960452051303007e-03, -5.622603281698970897e-03, -5.624236902047420605e-03, -5.625861310876635428e-03, -5.627476505981753203e-03, -5.629082485172950956e-03, -5.630679246275417139e-03, -5.632266787129470466e-03, -5.633845105590587661e-03, -5.635414199529110296e-03, -5.636974066830713163e-03, -5.638524705395916818e-03, -5.640066113140478760e-03, -5.641598287995282408e-03, -5.643121227906129807e-03, -5.644634930834078156e-03, -5.646139394755249862e-03, -5.647634617660794373e-03, -5.649120597557039103e-03, -5.650597332465410495e-03, -5.652064820422386324e-03, -5.653523059479645743e-03, -5.654972047703889747e-03, -5.656411783176982545e-03, -5.657842263995937690e-03, -5.659263488272798376e-03, -5.660675454134795302e-03, -5.662078159724351009e-03, -5.663471603198810128e-03, -5.664855782730893879e-03, -5.666230696508245575e-03, -5.667596342733776695e-03, -5.668952719625512497e-03, -5.670299825416552988e-03, -5.671637658355188280e-03, -5.672966216704893386e-03, -5.674285498744186841e-03, -5.675595502766815452e-03, -5.676896227081647608e-03, -5.678187670012692367e-03, -5.679469829899137616e-03, -5.680742705095291091e-03, -5.682006293970647166e-03, -5.683260594909886852e-03, -5.684505606312764171e-03, -5.685741326594245804e-03, -5.686967754184540577e-03, -5.688184887528848800e-03, -5.689392725087741298e-03, -5.690591265336750020e-03, -5.691780506766766154e-03, -5.692960447883770383e-03, -5.694131087208872781e-03, -5.695292423278448986e-03, -5.696444454644019641e-03, -5.697587179872260800e-03, -5.698720597545052502e-03, -5.699844706259488310e-03, -5.700959504627771228e-03, -5.702064991277367226e-03, -5.703161164850887276e-03, -5.704248024006137660e-03, -5.705325567416151197e-03, -5.706393793769071014e-03, -5.707452701768335294e-03, -5.708502290132537633e-03, -5.709542557595407089e-03, -5.710573502905970378e-03, -5.711595124828400087e-03, -5.712607422142033757e-03, -5.713610393641536944e-03, -5.714604038136620462e-03, -5.715588354452322273e-03, -5.716563341428814067e-03, -5.717528997921505346e-03, -5.718485322800993115e-03, -5.719432314953157293e-03, -5.720369973278967290e-03, -5.721298296694687577e-03, -5.722217284131761450e-03, -5.723126934536857009e-03, -5.724027246871897512e-03, -5.724918220113908718e-03, -5.725799853255259149e-03, -5.726672145303489218e-03, -5.727535095281290414e-03, -5.728388702226683109e-03, -5.729232965192830943e-03, -5.730067883248154449e-03, -5.730893455476267738e-03, -5.731709680976036607e-03, -5.732516558861536042e-03, -5.733314088262051085e-03, -5.734102268322126272e-03, -5.734881098201487573e-03, -5.735650577075142136e-03, -5.736410704133244713e-03, -5.737161478581267668e-03, -5.737902899639830967e-03, -5.738634966544839226e-03, -5.739357678547400178e-03, -5.740071034913831610e-03, -5.740775034925724683e-03, -5.741469677879900563e-03, -5.742154963088343632e-03, -5.742830889878352413e-03, -5.743497457592384309e-03, -5.744154665588185708e-03, -5.744802513238723464e-03, -5.745440999932164942e-03, -5.746070125071928332e-03, -5.746689888076694785e-03, -5.747300288380311276e-03, -5.747901325431918097e-03, -5.748492998695880346e-03, -5.749075307651754958e-03, -5.749648251794396529e-03, -5.750211830633815066e-03, -5.750766043695326908e-03, -5.751310890519471461e-03, -5.751846370661948746e-03, -5.752372483693785933e-03, -5.752889229201206371e-03, -5.753396606785640861e-03, -5.753894616063808323e-03, -5.754383256667613446e-03, -5.754862528244223882e-03, -5.755332430456025147e-03, -5.755792962980638833e-03, -5.756244125510926075e-03, -5.756685917754984089e-03, -5.757118339436113202e-03, -5.757541390292883650e-03, -5.757955070079080924e-03, -5.758359378563709247e-03, -5.758754315531051417e-03, -5.759139880780543910e-03, -5.759516074126937342e-03, -5.759882895400156820e-03, -5.760240344445364397e-03, -5.760588421122962537e-03, -5.760927125308591516e-03, -5.761256456893104269e-03, -5.761576415782573325e-03, -5.761887001898339383e-03, -5.762188215176915033e-03, -5.762480055570068024e-03, -5.762762523044794374e-03, -5.763035617583306229e-03, -5.763299339183055280e-03, -5.763553687856685925e-03, -5.763798663632088183e-03, -5.764034266552360390e-03, -5.764260496675848236e-03, -5.764477354076078842e-03, -5.764684838841834490e-03, -5.764882951077091033e-03, -5.765071690901056069e-03, -5.765251058448132501e-03, -5.765421053867996609e-03, -5.765581677325447990e-03, -5.765732929000585635e-03, -5.765874809088663080e-03, -5.766007317800186417e-03, -5.766130455360853578e-03, -5.766244222011556939e-03, -5.766348618008424950e-03, -5.766443643622778774e-03, -5.766529299141152226e-03, -5.766605584865288313e-03, -5.766672501112115809e-03, -5.766730048213765739e-03, -5.766778226517605202e-03, -5.766817036386167120e-03, -5.766846478197184926e-03, -5.766866552343622061e-03, -5.766877259233586100e-03, -5.766878599290427634e-03, -5.766870572952653533e-03, -5.766853180674005007e-03, -5.766826422923368271e-03, -5.766790300184842198e-03, -5.766744812957708827e-03, -5.766689961756442905e-03, -5.766625747110682397e-03, -5.766552169565291805e-03, -5.766469229680251142e-03, -5.766376928030788641e-03, -5.766275265207262794e-03, -5.766164241815227402e-03, -5.766043858475407291e-03, -5.765914115823711321e-03, -5.765775014511185549e-03, -5.765626555204081752e-03, -5.765468738583808851e-03, -5.765301565346935518e-03, -5.765125036205195376e-03, -5.764939151885499144e-03, -5.764743913129883462e-03, -5.764539320695586354e-03, -5.764325375354948343e-03, -5.764102077895525214e-03, -5.763869429119999541e-03, -5.763627429846180684e-03, -5.763376080907051634e-03, -5.763115383150735176e-03, -5.762845337440492162e-03, -5.762565944654750999e-03, -5.762277205687049535e-03, -5.761979121446073222e-03, -5.761671692855640375e-03, -5.761354920854726454e-03, -5.761028806397402481e-03, -5.760693350452888821e-03, -5.760348554005519615e-03, -5.759994418054762734e-03, -5.759630943615226713e-03, -5.759258131716584427e-03, -5.758875983403691917e-03, -5.758484499736467831e-03, -5.758083681789959336e-03, -5.757673530654360342e-03, -5.757254047434905674e-03, -5.756825233251972561e-03, -5.756387089241054612e-03, -5.755939616552723653e-03, -5.755482816352635797e-03, -5.755016689821571343e-03, -5.754541238155393146e-03, -5.754056462565037937e-03, -5.753562364276538880e-03, -5.753058944531024704e-03, -5.752546204584692811e-03, -5.752024145708808413e-03, -5.751492769189753100e-03, -5.750952076328929435e-03, -5.750402068442827738e-03, -5.749842746863044300e-03, -5.749274112936179904e-03, -5.748696168023937833e-03, -5.748108913503064896e-03, -5.747512350765346216e-03, -5.746906481217652941e-03, -5.746291306281898006e-03, -5.745666827395018786e-03, -5.745033046009017860e-03, -5.744389963590943934e-03, -5.743737581622847602e-03, -5.743075901601854202e-03, -5.742404925040081425e-03, -5.741724653464720836e-03, -5.741035088417958954e-03, -5.740336231456989388e-03, -5.739628084154064017e-03, -5.738910648096421860e-03, -5.738183924886322042e-03, -5.737447916141032514e-03, -5.736702623492816178e-03, -5.735948048588949966e-03, -5.735184193091716169e-03, -5.734411058678375549e-03, -5.733628647041176876e-03, -5.732836959887389894e-03, -5.732035998939215109e-03, -5.731225765933889611e-03, -5.730406262623615951e-03, -5.729577490775498820e-03, -5.728739452171741076e-03, -5.727892148609387002e-03, -5.727035581900556498e-03, -5.726169753872236909e-03, -5.725294666366383643e-03, -5.724410321240006906e-03, -5.723516720364921900e-03, -5.722613865627967401e-03, -5.721701758930930297e-03, -5.720780402190496147e-03, -5.719849797338292553e-03, -5.718909946320923851e-03, -5.717960851099834936e-03, -5.717002513651481266e-03, -5.716034935967171868e-03, -5.715058120053146534e-03, -5.714072067930592302e-03, -5.713076781635562790e-03, -5.712072263218964316e-03, -5.711058514746748457e-03, -5.710035538299620614e-03, -5.709003335973216083e-03, -5.707961909878101793e-03, -5.706911262139664417e-03, -5.705851394898208383e-03, -5.704782310308898624e-03, -5.703704010541740636e-03, -5.702616497781662006e-03, -5.701519774228425673e-03, -5.700413842096616925e-03, -5.699298703615730127e-03, -5.698174361030054237e-03, -5.697040816598787291e-03, -5.695898072595888088e-03, -5.694746131310183743e-03, -5.693584995045379224e-03, -5.692414666119916845e-03, -5.691235146867102031e-03, -5.690046439635123264e-03, -5.688848546786871678e-03, -5.687641470700079832e-03, -5.686425213767314774e-03, -5.685199778395920792e-03, -5.683965167008053244e-03, -5.682721382040621314e-03, -5.681468425945359127e-03, -5.680206301188746830e-03, -5.678935010252070432e-03, -5.677654555631354155e-03, -5.676364939837423747e-03, -5.675066165395828421e-03, -5.673758234846911983e-03, -5.672441150745761648e-03, -5.671114915662145602e-03, -5.669779532180696871e-03, -5.668435002900676541e-03, -5.667081330436112528e-03, -5.665718517415790044e-03, -5.664346566483174396e-03, -5.662965480296472572e-03, -5.661575261528603749e-03, -5.660175912867164601e-03, -5.658767437014514297e-03, -5.657349836687638328e-03, -5.655923114618243916e-03, -5.654487273552755676e-03, -5.653042316252252300e-03, -5.651588245492428393e-03, -5.650125064063797435e-03, -5.648652774771362184e-03, -5.647171380434942538e-03, -5.645680883888942216e-03, -5.644181287982349624e-03, -5.642672595578966839e-03, -5.641154809557075676e-03, -5.639627932809643251e-03, -5.638091968244312441e-03, -5.636546918783286522e-03, -5.634992787363396829e-03, -5.633429576936152192e-03, -5.631857290467554185e-03, -5.630275930938338259e-03, -5.628685501343728276e-03, -5.627086004693560538e-03, -5.625477444012305477e-03, -5.623859822338998261e-03, -5.622233142727148594e-03, -5.620597408245008725e-03, -5.618952621975207423e-03, -5.617298787015125548e-03, -5.615635906476516143e-03, -5.613963983485757703e-03, -5.612283021183804739e-03, -5.610593022726069815e-03, -5.608893991282511149e-03, -5.607185930037670782e-03, -5.605468842190539265e-03, -5.603742730954618112e-03, -5.602007599557977044e-03, -5.600263451243085722e-03, -5.598510289267011504e-03, -5.596748116901272864e-03, -5.594976937431744846e-03, -5.593196754159027693e-03, -5.591407570397958528e-03, -5.589609389477910584e-03, -5.587802214742820101e-03, -5.585986049550877540e-03, -5.584160897274924838e-03, -5.582326761302074634e-03, -5.580483645033938386e-03, -5.578631551886570859e-03, -5.576770485290418085e-03, -5.574900448690329503e-03, -5.573021445545607404e-03, -5.571133479329926259e-03, -5.569236553531304104e-03, -5.567330671652253454e-03, -5.565415837209582682e-03, -5.563492053734526988e-03, -5.561559324772656458e-03, -5.559617653883856120e-03, -5.557667044642550583e-03, -5.555707500637269494e-03, -5.553739025471034381e-03, -5.551761622761209464e-03, -5.549775296139393237e-03, -5.547780049251613624e-03, -5.545775885758170987e-03, -5.543762809333592154e-03, -5.541740823666889762e-03, -5.539709932461209241e-03, -5.537670139434030907e-03, -5.535621448317185576e-03, -5.533563862856724462e-03, -5.531497386812876671e-03, -5.529422023960353649e-03, -5.527337778087897287e-03, -5.525244652998671964e-03, -5.523142652510027763e-03, -5.521031780453414597e-03, -5.518912040674782069e-03, -5.516783437034053841e-03, -5.514645973405458111e-03, -5.512499653677510256e-03, -5.510344481752806403e-03, -5.508180461548152669e-03, -5.506007596994672709e-03, -5.503825892037452101e-03, -5.501635350635952944e-03, -5.499435976763709412e-03, -5.497227774408365922e-03, -5.495010747571834990e-03, -5.492784900270115088e-03, -5.490550236533249008e-03, -5.488306760405632645e-03, -5.486054475945516262e-03, -5.483793387225536185e-03, -5.481523498332217803e-03, -5.479244813366253991e-03, -5.476957336442499907e-03, -5.474661071689842888e-03, -5.472356023251192039e-03, -5.470042195283664720e-03, -5.467719591958313322e-03, -5.465388217460297009e-03, -5.463048075988846154e-03, -5.460699171757186013e-03, -5.458341508992629529e-03, -5.455975091936505345e-03, -5.453599924844025094e-03, -5.451216011984658105e-03, -5.448823357641726338e-03, -5.446421966112484185e-03, -5.444011841708379547e-03, -5.441592988754593262e-03, -5.439165411590556054e-03, -5.436729114569403831e-03, -5.434284102058353251e-03, -5.431830378438605444e-03, -5.429367948105218514e-03, -5.426896815467229830e-03, -5.424416984947627411e-03, -5.421928460983272725e-03, -5.419431248024928448e-03, -5.416925350537313971e-03, -5.414410772998997853e-03, -5.411887519902483686e-03, -5.409355595754127694e-03, -5.406815005074049399e-03, -5.404265752396488973e-03, -5.401707842269295491e-03, -5.399141279254247860e-03, -5.396566067927027061e-03, -5.393982212877045275e-03, -5.391389718707638445e-03, -5.388788590035874584e-03, -5.386178831492620563e-03, -5.383560447722644457e-03, -5.380933443384419528e-03, -5.378297823150175391e-03, -5.375653591706021188e-03, -5.373000753751778179e-03, -5.370339314000899082e-03, -5.367669277180847111e-03, -5.364990648032598973e-03, -5.362303431311005696e-03, -5.359607631784574049e-03, -5.356903254235429249e-03, -5.354190303459696598e-03, -5.351468784266882189e-03, -5.348738701480316125e-03, -5.346000059937085734e-03, -5.343252864487784033e-03, -5.340497119996847133e-03, -5.337732831342248060e-03, -5.334960003415590429e-03, -5.332178641122249825e-03, -5.329388749381105787e-03, -5.326590333124670180e-03, -5.323783397299154847e-03, -5.320967946864342372e-03, -5.318143986793459448e-03, -5.315311522073627899e-03, -5.312470557705184677e-03, -5.309621098702426052e-03, -5.306763150092856478e-03, -5.303896716917707276e-03, -5.301021804231757090e-03, -5.298138417103291122e-03, -5.295246560614069904e-03, -5.292346239859483693e-03, -5.289437459948289656e-03, -5.286520226002908510e-03, -5.283594543159104463e-03, -5.280660416566169968e-03, -5.277717851386933522e-03, -5.274766852797622627e-03, -5.271807425987808278e-03, -5.268839576160784868e-03, -5.265863308533106149e-03, -5.262878628334606915e-03, -5.259885540808915613e-03, -5.256884051212674588e-03, -5.253874164816268663e-03, -5.250855886903209313e-03, -5.247829222770458192e-03, -5.244794177728467031e-03, -5.241750757100939115e-03, -5.238698966224883923e-03, -5.235638810450822696e-03, -5.232570295142436288e-03, -5.229493425676872212e-03, -5.226408207444482694e-03, -5.223314645848959117e-03, -5.220212746307349369e-03, -5.217102514249952021e-03, -5.213983955120203573e-03, -5.210857074375126879e-03, -5.207721877484681496e-03, -5.204578369932225980e-03, -5.201426557214386057e-03, -5.198266444840918439e-03, -5.195098038334934609e-03, -5.191921343232644079e-03, -5.188736365083444595e-03, -5.185543109450041835e-03, -5.182341581908242109e-03, -5.179131788046980114e-03, -5.175913733468514091e-03, -5.172687423788117911e-03, -5.169452864634127912e-03, -5.166210061648299386e-03, -5.162959020485238457e-03, -5.159699746812839230e-03, -5.156432246312033126e-03, -5.153156524676703008e-03, -5.149872587614165442e-03, -5.146580440844466392e-03, -5.143280090100856537e-03, -5.139971541129708006e-03, -5.136654799690292331e-03, -5.133329871555058870e-03, -5.129996762509396284e-03, -5.126655478351675906e-03, -5.123306024893406994e-03, -5.119948407958980000e-03, -5.116582633385764571e-03, -5.113208707024204103e-03, -5.109826634737666545e-03, -5.106436422402282210e-03, -5.103038075907532709e-03, -5.099631601155367976e-03, -5.096217004061126543e-03, -5.092794290552669044e-03, -5.089363466570915977e-03, -5.085924538069772245e-03, -5.082477511015877358e-03, -5.079022391388766759e-03, -5.075559185180965500e-03, -5.072087898397669922e-03, -5.068608537057081587e-03, -5.065121107190116712e-03, -5.061625614840538877e-03, -5.058122066064983310e-03, -5.054610466932815509e-03, -5.051090823526185013e-03, -5.047563141940108675e-03, -5.044027428282333615e-03, -5.040483688673179363e-03, -5.036931929246099907e-03, -5.033372156146847555e-03, -5.029804375534334231e-03, -5.026228593579852577e-03, -5.022644816467478415e-03, -5.019053050394122785e-03, -5.015453301569230971e-03, -5.011845576214942963e-03, -5.008229880566155909e-03, -5.004606220870282986e-03, -5.000974603387530089e-03, -4.997335034390600061e-03, -4.993687520164842748e-03, -4.990032067008305303e-03, -4.986368681231569989e-03, -4.982697369157644898e-03, -4.979018137122521656e-03, -4.975330991474348832e-03, -4.971635938573978376e-03, -4.967932984794904035e-03, -4.964222136522940428e-03, -4.960503400156746068e-03, -4.956776782107155492e-03, -4.953042288797603401e-03, -4.949299926664144610e-03, -4.945549702155184295e-03, -4.941791621731595092e-03, -4.938025691866784750e-03, -4.934251919046493164e-03, -4.930470309769024832e-03, -4.926680870545021608e-03, -4.922883607897510401e-03, -4.919078528362008998e-03, -4.915265638486408968e-03, -4.911444944830757955e-03, -4.907616453967914537e-03, -4.903780172482666982e-03, -4.899936106972318725e-03, -4.896084264046576470e-03, -4.892224650327314274e-03, -4.888357272448864109e-03, -4.884482137057760860e-03, -4.880599250812802173e-03, -4.876708620385197639e-03, -4.872810252458292975e-03, -4.868904153727672372e-03, -4.864990330901299877e-03, -4.861068790699213209e-03, -4.857139539853821270e-03, -4.853202585109662147e-03, -4.849257933223272143e-03, -4.845305590963849308e-03, -4.841345565112294136e-03, -4.837377862461844473e-03, -4.833402489817998325e-03, -4.829419453998233698e-03, -4.825428761832155182e-03, -4.821430420161641403e-03, -4.817424435840465986e-03, -4.813410815734683532e-03, -4.809389566722289608e-03, -4.805360695693343051e-03, -4.801324209550116885e-03, -4.797280115206759184e-03, -4.793228419589463940e-03, -4.789169129636592498e-03, -4.785102252298310994e-03, -4.781027794536989346e-03, -4.776945763326860377e-03, -4.772856165653966039e-03, -4.768759008516779314e-03, -4.764654298925220625e-03, -4.760542043901386418e-03, -4.756422250479333189e-03, -4.752294925704929167e-03, -4.748160076635932376e-03, -4.744017710342135485e-03, -4.739867833905022330e-03, -4.735710454418101852e-03, -4.731545578986626199e-03, -4.727373214727674001e-03, -4.723193368770290876e-03, -4.719006048255272590e-03, -4.714811260334967301e-03, -4.710609012174068327e-03, -4.706399310948415453e-03, -4.702182163846204896e-03, -4.697957578066939803e-03, -4.693725560821966278e-03, -4.689486119334672007e-03, -4.685239260839731655e-03, -4.680984992583720958e-03, -4.676723321824984882e-03, -4.672454255833422519e-03, -4.668177801890607652e-03, -4.663893967289898905e-03, -4.659602759336128365e-03, -4.655304185345906023e-03, -4.650998252647387324e-03, -4.646684968580267958e-03, -4.642364340496028460e-03, -4.638036375757611553e-03, -4.633701081739361426e-03, -4.629358465827617015e-03, -4.625008535419811682e-03, -4.620651297925116793e-03, -4.616286760764282994e-03, -4.611914931369397348e-03, -4.607535817184229415e-03, -4.603149425663888641e-03, -4.598755764274940587e-03, -4.594354840495583868e-03, -4.589946661815267649e-03, -4.585531235734906751e-03, -4.581108569766982261e-03, -4.576678671435153826e-03, -4.572241548274711548e-03, -4.567797207832187401e-03, -4.563345657665304929e-03, -4.558886905343649716e-03, -4.554420958447613806e-03, -4.549947824569099131e-03, -4.545467511311609456e-03, -4.540980026289513118e-03, -4.536485377128651048e-03, -4.531983571466256973e-03, -4.527474616950617411e-03, -4.522958521241484536e-03, -4.518435292009681525e-03, -4.513904936937246544e-03, -4.509367463717621829e-03, -4.504822880055275522e-03, -4.500271193665840441e-03, -4.495712412276319653e-03, -4.491146543624629367e-03, -4.486573595460062978e-03, -4.481993575542921569e-03, -4.477406491644463603e-03, -4.472812351547516413e-03, -4.468211163045538586e-03, -4.463602933943238392e-03, -4.458987672056493115e-03, -4.454365385212114871e-03, -4.449736081247939942e-03, -4.445099768012972762e-03, -4.440456453367039834e-03, -4.435806145181168773e-03, -4.431148851337246564e-03, -4.426484579728093283e-03, -4.421813338257676342e-03, -4.417135134840799102e-03, -4.412449977402996791e-03, -4.407757873881234731e-03, -4.403058832222779898e-03, -4.398352860386390076e-03, -4.393639966341222718e-03, -4.388920158067416942e-03, -4.384193443556318182e-03, -4.379459830809616025e-03, -4.374719327840046780e-03, -4.369971942671274645e-03, -4.365217683337585530e-03, -4.360456557884067469e-03, -4.355688574366731181e-03, -4.350913740852154453e-03, -4.346132065417842964e-03, -4.341343556151912829e-03, -4.336548221153159119e-03, -4.331746068531258827e-03, -4.326937106406495911e-03, -4.322121342909575684e-03, -4.317298786182442727e-03, -4.312469444377018887e-03, -4.307633325656524265e-03, -4.302790438194258570e-03, -4.297940790174343585e-03, -4.293084389791618216e-03, -4.288221245251322769e-03, -4.283351364769262884e-03, -4.278474756571984741e-03, -4.273591428896384749e-03, -4.268701389989901229e-03, -4.263804648110653198e-03, -4.258901211527024028e-03, -4.253991088518098602e-03, -4.249074287373338053e-03, -4.244150816392445319e-03, -4.239220683886082454e-03, -4.234283898174815049e-03, -4.229340467589800916e-03, -4.224390400472899376e-03, -4.219433705175764000e-03, -4.214470390061074261e-03, -4.209500463501329899e-03, -4.204523933879601195e-03, -4.199540809589364168e-03, -4.194551099034271591e-03, -4.189554810628304780e-03, -4.184551952795815231e-03, -4.179542533971360684e-03, -4.174526562599684305e-03, -4.169504047136000056e-03, -4.164474996045455790e-03, -4.159439417803714387e-03, -4.154397320896499254e-03, -4.149348713819471166e-03, -4.144293605079077403e-03, -4.139232003191331381e-03, -4.134163916682606285e-03, -4.129089354089545728e-03, -4.124008323958680382e-03, -4.118920834846858184e-03, -4.113826895320835814e-03, -4.108726513957481653e-03, -4.103619699343852983e-03, -4.098506460076896743e-03, -4.093386804763600451e-03, -4.088260742021130115e-03, -4.083128280476528392e-03, -4.077989428766608769e-03, -4.072844195538723178e-03, -4.067692589449506922e-03, -4.062534619166146763e-03, -4.057370293365438960e-03, -4.052199620733902032e-03, -4.047022609968537431e-03, -4.041839269775656003e-03, -4.036649608871672491e-03, -4.031453635982969359e-03, -4.026251359845592348e-03, -4.021042789205413540e-03, -4.015827932818309166e-03, -4.010606799449699909e-03, -4.005379397875027080e-03, -4.000145736879329346e-03, -3.994905825257392788e-03, -3.989659671813923503e-03, -3.984407285363231015e-03, -3.979148674729089501e-03, -3.973883848745569589e-03, -3.968612816255724304e-03, -3.963335586112944758e-03, -3.958052167179699002e-03, -3.952762568328336071e-03, -3.947466798440935933e-03, -3.942164866408998103e-03, -3.936856781133615119e-03, -3.931542551525647744e-03, -3.926222186505320781e-03, -3.920895695002403480e-03, -3.915563085956393422e-03, -3.910224368316041199e-03, -3.904879551039853493e-03, -3.899528643095701453e-03, -3.894171653460680189e-03, -3.888808591121936230e-03, -3.883439465075480979e-03, -3.878064284326886331e-03, -3.872683057891545318e-03, -3.867295794793561454e-03, -3.861902504067116562e-03, -3.856503194755197053e-03, -3.851097875910357640e-03, -3.845686556594618121e-03, -3.840269245879124674e-03, -3.834845952844333303e-03, -3.829416686580178978e-03, -3.823981456185669269e-03, -3.818540270769095121e-03, -3.813093139448153149e-03, -3.807640071349531474e-03, -3.802181075609384602e-03, -3.796716161372929669e-03, -3.791245337794316335e-03, -3.785768614037501520e-03, -3.780285999274952697e-03, -3.774797502688519591e-03, -3.769303133469324892e-03, -3.763802900817327102e-03, -3.758296813941820573e-03, -3.752784882060984043e-03, -3.747267114402097476e-03, -3.741743520201613622e-03, -3.736214108704867445e-03, -3.730678889166189754e-03, -3.725137870849100190e-03, -3.719591063025984995e-03, -3.714038474977931787e-03, -3.708480115995611229e-03, -3.702915995377889687e-03, -3.697346122433216135e-03, -3.691770506478609954e-03, -3.686189156839750260e-03, -3.680602082851830263e-03, -3.675009293858289613e-03, -3.669410799211652707e-03, -3.663806608273385574e-03, -3.658196730413520309e-03, -3.652581175011149900e-03, -3.646959951453929930e-03, -3.641333069138311465e-03, -3.635700537469676360e-03, -3.630062365861921360e-03, -3.624418563737699227e-03, -3.618769140528528463e-03, -3.613114105674495799e-03, -3.607453468624123062e-03, -3.601787238835182925e-03, -3.596115425773351894e-03, -3.590438038913686125e-03, -3.584755087739201120e-03, -3.579066581741781154e-03, -3.573372530421994094e-03, -3.567672943288785654e-03, -3.561967829859642894e-03, -3.556257199660768989e-03, -3.550541062226627870e-03, -3.544819427100427342e-03, -3.539092303833690605e-03, -3.533359701986359472e-03, -3.527621631127057615e-03, -3.521878100832684638e-03, -3.516129120688327170e-03, -3.510374700288028654e-03, -3.504614849233839580e-03, -3.498849577135978821e-03, -3.493078893613673665e-03, -3.487302808293715663e-03, -3.481521330811963334e-03, -3.475734470811969994e-03, -3.469942237945828137e-03, -3.464144641874001597e-03, -3.458341692265066211e-03, -3.452533398795794382e-03, -3.446719771151390138e-03, -3.440900819025020756e-03, -3.435076552118291639e-03, -3.429246980140783149e-03, -3.423412112810255304e-03, -3.417571959852793058e-03, -3.411726531002470201e-03, -3.405875836001233132e-03, -3.400019884599748705e-03, -3.394158686556139615e-03, -3.388292251636832245e-03, -3.382420589616430030e-03, -3.376543710277316208e-03, -3.370661623410128697e-03, -3.364774338813327284e-03, -3.358881866293347580e-03, -3.352984215664781432e-03, -3.347081396749984009e-03, -3.341173419379216050e-03, -3.335260293390882817e-03, -3.329342028631135115e-03, -3.323418634953765206e-03, -3.317490122220994805e-03, -3.311556500302399123e-03, -3.305617779075690522e-03, -3.299673968426290044e-03, -3.293725078247140923e-03, -3.287771118439637100e-03, -3.281812098912280980e-03, -3.275848029581576379e-03, -3.269878920371924440e-03, -3.263904781215158299e-03, -3.257925622051072601e-03, -3.251941452826970311e-03, -3.245952283497809294e-03, -3.239958124026395738e-03, -3.233958984382988636e-03, -3.227954874545457212e-03, -3.221945804499473046e-03, -3.215931784238157919e-03, -3.209912823761938965e-03, -3.203888933079474585e-03, -3.197860122206139157e-03, -3.191826401165645012e-03, -3.185787779988532784e-03, -3.179744268713095151e-03, -3.173695877385236327e-03, -3.167642616058106899e-03, -3.161584494792295946e-03, -3.155521523656013190e-03, -3.149453712724598932e-03, -3.143381072081068324e-03, -3.137303611815569267e-03, -3.131221342025642621e-03, -3.125134272816341031e-03, -3.119042414299909739e-03, -3.112945776595626556e-03, -3.106844369830666624e-03, -3.100738204139060275e-03, -3.094627289661907709e-03, -3.088511636548196479e-03, -3.082391254953325242e-03, -3.076266155040733533e-03, -3.070136346980323165e-03, -3.064001840949488655e-03, -3.057862647132864389e-03, -3.051718775722049234e-03, -3.045570236915732740e-03, -3.039417040919928023e-03, -3.033259197947467400e-03, -3.027096718218487241e-03, -3.020929611960006863e-03, -3.014757889406063842e-03, -3.008581560797915239e-03, -3.002400636383679815e-03, -2.996215126418190575e-03, -2.990025041163930659e-03, -2.983830390889630809e-03, -2.977631185871262073e-03, -2.971427436391802911e-03, -2.965219152740885319e-03, -2.959006345215295288e-03, -2.952789024118454998e-03, -2.946567199760647456e-03, -2.940340882459199518e-03, -2.934110082538013073e-03, -2.927874810327823086e-03, -2.921635076166325101e-03, -2.915390890397704694e-03, -2.909142263373169605e-03, -2.902889205450442760e-03, -2.896631726993955259e-03, -2.890369838375048041e-03, -2.884103549971589811e-03, -2.877832872167824380e-03, -2.871557815355348185e-03, -2.865278389931662662e-03, -2.858994606301180387e-03, -2.852706474875020808e-03, -2.846414006070599554e-03, -2.840117210312179206e-03, -2.833816098030333703e-03, -2.827510679662164315e-03, -2.821200965651494801e-03, -2.814886966448399558e-03, -2.808568692509453429e-03, -2.802246154297863539e-03, -2.795919362283005687e-03, -2.789588326940950404e-03, -2.783253058754028408e-03, -2.776913568210656689e-03, -2.770569865806348994e-03, -2.764221962042236105e-03, -2.757869867426059832e-03, -2.751513592472045085e-03, -2.745153147700460112e-03, -2.738788543637880619e-03, -2.732419790817348058e-03, -2.726046899777842709e-03, -2.719669881064886493e-03, -2.713288745229978753e-03, -2.706903502830810496e-03, -2.700514164431451741e-03, -2.694120740601927810e-03, -2.687723241918403647e-03, -2.681321678963367264e-03, -2.674916062325126236e-03, -2.668506402598367147e-03, -2.662092710383694594e-03, -2.655674996287485899e-03, -2.649253270922859952e-03, -2.642827544908237826e-03, -2.636397828868322461e-03, -2.629964133433948179e-03, -2.623526469241689064e-03, -2.617084846934073644e-03, -2.610639277159756185e-03, -2.604189770573040949e-03, -2.597736337834392201e-03, -2.591278989609939812e-03, -2.584817736571666611e-03, -2.578352589397620454e-03, -2.571883558771528248e-03, -2.565410655382622477e-03, -2.558933889926642141e-03, -2.552453273104252421e-03, -2.545968815622706109e-03, -2.539480528194295803e-03, -2.532988421537229074e-03, -2.526492506375856584e-03, -2.519992793439546682e-03, -2.513489293463637333e-03, -2.506982017189241831e-03, -2.500470975362895781e-03, -2.493956178736734912e-03, -2.487437638068715380e-03, -2.480915364122073408e-03, -2.474389367665883865e-03, -2.467859659474561963e-03, -2.461326250328029364e-03, -2.454789151011934050e-03, -2.448248372317265217e-03, -2.441703925040187607e-03, -2.435155819983048954e-03, -2.428604067952901558e-03, -2.422048679762495854e-03, -2.415489666230126887e-03, -2.408927038179185017e-03, -2.402360806438715371e-03, -2.395790981842870534e-03, -2.389217575231143871e-03, -2.382640597448556011e-03, -2.376060059345187336e-03, -2.369475971776407834e-03, -2.362888345603041031e-03, -2.356297191690867425e-03, -2.349702520911172224e-03, -2.343104344140299958e-03, -2.336502672259484475e-03, -2.329897516155849876e-03, -2.323288886720944676e-03, -2.316676794851734930e-03, -2.310061251450437267e-03, -2.303442267424155032e-03, -2.296819853685053061e-03, -2.290194021150584926e-03, -2.283564780742937395e-03, -2.276932143389625435e-03, -2.270296120022944914e-03, -2.263656721580159514e-03, -2.257013959003738388e-03, -2.250367843240881714e-03, -2.243718385243704139e-03, -2.237065595969468541e-03, -2.230409486380036110e-03, -2.223750067442432313e-03, -2.217087350128395425e-03, -2.210421345414222572e-03, -2.203752064281755928e-03, -2.197079517716911661e-03, -2.190403716710694754e-03, -2.183724672259009045e-03, -2.177042395362302485e-03, -2.170356897025746672e-03, -2.163668188259458038e-03, -2.156976280077944029e-03, -2.150281183500698991e-03, -2.143582909551638646e-03, -2.136881469259335146e-03, -2.130176873657194884e-03, -2.123469133783097238e-03, -2.116758260679191175e-03, -2.110044265392962103e-03, -2.103327158975536182e-03, -2.096606952483464920e-03, -2.089883656977087160e-03, -2.083157283521445882e-03, -2.076427843186521519e-03, -2.069695347046068400e-03, -2.062959806178599198e-03, -2.056221231667183704e-03, -2.049479634599090175e-03, -2.042735026065960104e-03, -2.035987417164032438e-03, -2.029236818993603204e-03, -2.022483242659595375e-03, -2.015726699271026736e-03, -2.008967199941201140e-03, -2.002204755787934890e-03, -1.995439377933162957e-03, -1.988671077502733846e-03, -1.981899865627497707e-03, -1.975125753441591119e-03, -1.968348752084252487e-03, -1.961568872698131981e-03, -1.954786126430318495e-03, -1.948000524432203688e-03, -1.941212077859049822e-03, -1.934420797870229367e-03, -1.927626695629401296e-03, -1.920829782304077403e-03, -1.914030069065791873e-03, -1.907227567090329610e-03, -1.900422287557187832e-03, -1.893614241650145051e-03, -1.886803440556792050e-03, -1.879989895468367955e-03, -1.873173617580806919e-03, -1.866354618093182078e-03, -1.859532908208701716e-03, -1.852708499134892491e-03, -1.845881402082312495e-03, -1.839051628266267970e-03, -1.832219188905121528e-03, -1.825384095221347508e-03, -1.818546358441341373e-03, -1.811705989795045230e-03, -1.804863000516157513e-03, -1.798017401842313392e-03, -1.791169205014639821e-03, -1.784318421277956979e-03, -1.777465061880972126e-03, -1.770609138075765476e-03, -1.763750661118333165e-03, -1.756889642268151183e-03, -1.750026092787988026e-03, -1.743160023944945528e-03, -1.736291447008936643e-03, -1.729420373253718691e-03, -1.722546813956718145e-03, -1.715670780398578744e-03, -1.708792283863721151e-03, -1.701911335639817767e-03, -1.695027947017989627e-03, -1.688142129293016078e-03, -1.681253893762860987e-03, -1.674363251728889579e-03, -1.667470214496063379e-03, -1.660574793372561605e-03, -1.653676999669584065e-03, -1.646776844702433403e-03, -1.639874339788778427e-03, -1.632969496250507007e-03, -1.626062325411993525e-03, -1.619152838601096989e-03, -1.612241047149365510e-03, -1.605326962390862550e-03, -1.598410595663157449e-03, -1.591491958307134167e-03, -1.584571061666610733e-03, -1.577647917088535919e-03, -1.570722535923212799e-03, -1.563794929523727815e-03, -1.556865109246556404e-03, -1.549933086451010279e-03, -1.542998872499432147e-03, -1.536062478757436187e-03, -1.529123916593479139e-03, -1.522183197378693337e-03, -1.515240332487957035e-03, -1.508295333298171823e-03, -1.501348211190088426e-03, -1.494398977546611881e-03, -1.487447643753838245e-03, -1.480494221200903899e-03, -1.473538721279559014e-03, -1.466581155384400013e-03, -1.459621534913067321e-03, -1.452659871265779166e-03, -1.445696175845530632e-03, -1.438730460058313537e-03, -1.431762735312552869e-03, -1.424793013019712198e-03, -1.417821304593807740e-03, -1.410847621451232718e-03, -1.403871975011825729e-03, -1.396894376697305380e-03, -1.389914837932248667e-03, -1.382933370144316491e-03, -1.375949984762917921e-03, -1.368964693220955974e-03, -1.361977506953128891e-03, -1.354988437396973571e-03, -1.347997495992711613e-03, -1.341004694182834286e-03, -1.334010043412305491e-03, -1.327013555128803103e-03, -1.320015240782197253e-03, -1.313015111824802081e-03, -1.306013179711568509e-03, -1.299009455899524136e-03, -1.292003951848380182e-03, -1.284996679020044457e-03, -1.277987648878446160e-03, -1.270976872890610537e-03, -1.263964362525080284e-03, -1.256950129252976328e-03, -1.249934184547851030e-03, -1.242916539885175354e-03, -1.235897206742952092e-03, -1.228876196601154684e-03, -1.221853520941944054e-03, -1.214829191249874830e-03, -1.207803219011413087e-03, -1.200775615715160127e-03, -1.193746392852047854e-03, -1.186715561914955617e-03, -1.179683134398507461e-03, -1.172649121800171295e-03, -1.165613535618507252e-03, -1.158576387354951203e-03, -1.151537688512464710e-03, -1.144497450595752730e-03, -1.137455685112259782e-03, -1.130412403570584196e-03, -1.123367617481572283e-03, -1.116321338358110607e-03, -1.109273577714665849e-03, -1.102224347067885021e-03, -1.095173657936017800e-03, -1.088121521839149420e-03, -1.081067950299397775e-03, -1.074012954840446133e-03, -1.066956546987738938e-03, -1.059898738268718384e-03, -1.052839540212389870e-03, -1.045778964349166305e-03, -1.038717022211943855e-03, -1.031653725334346402e-03, -1.024589085252602949e-03, -1.017523113503789045e-03, -1.010455821626924646e-03, -1.003387221162777444e-03, -9.963173236534705966e-04, -9.892461406426867818e-04, -9.821736836758891524e-04, -9.750999642997500725e-04, -9.680249940627738822e-04, -9.609487845147039482e-04, -9.538713472067594529e-04, -9.467926936918489829e-04, -9.397128355241502915e-04, -9.326317842589405133e-04, -9.255495514536019779e-04, -9.184661486664202640e-04, -9.113815874567930166e-04, -9.042958793862559269e-04, -8.972090360167072438e-04, -8.901210689122998143e-04, -8.830319896376689556e-04, -8.759418097590376904e-04, -8.688505408440223496e-04, -8.617581944612349954e-04, -8.546647821804852999e-04, -8.475703155730118050e-04, -8.404748062109048019e-04, -8.333782656677181464e-04, -8.262807055178994020e-04, -8.191821373370080902e-04, -8.120825727019331808e-04, -8.049820231904797948e-04, -7.978805003811879253e-04, -7.907780158544343123e-04, -7.836745811908095004e-04, -7.765702079722291463e-04, -7.694649077817388621e-04, -7.623586922030359736e-04, -7.552515728210650731e-04, -7.481435612214702800e-04, -7.410346689907880121e-04, -7.339249077166823659e-04, -7.268142889874500698e-04, -7.197028243922262659e-04, -7.125905255212179384e-04, -7.054774039652837855e-04, -6.983634713157542417e-04, -6.912487391655252212e-04, -6.841332191072960721e-04, -6.770169227353689187e-04, -6.698998616442878792e-04, -6.627820474290568821e-04, -6.556634916861485158e-04, -6.485442060119017953e-04, -6.414242020036131945e-04, -6.343034912593565602e-04, -6.271820853774961969e-04, -6.200599959572912013e-04, -6.129372345983296168e-04, -6.058138129007463587e-04, -5.986897424654392952e-04, -5.915650348935753934e-04, -5.844397017868148241e-04, -5.773137547475183694e-04, -5.701872053783494125e-04, -5.630600652820781302e-04, -5.559323460626843438e-04, -5.488040593235927632e-04, -5.416752166695526678e-04, -5.345458297048768376e-04, -5.274159100345362713e-04, -5.202854692639794507e-04, -5.131545189987142715e-04, -5.060230708445340999e-04, -4.988911364077309269e-04, -4.917587272945201987e-04, -4.846258551116651003e-04, -4.774925314658946644e-04, -4.703587679641232141e-04, -4.632245762136743042e-04, -4.560899678218610816e-04, -4.489549543958088547e-04, -4.418195475434693654e-04, -4.346837588724138004e-04, -4.275475999900452411e-04, -4.204110825046185177e-04, -4.132742180234702501e-04, -4.061370181549082319e-04, -3.989994945064465125e-04, -3.918616586858921468e-04, -3.847235223011753009e-04, -3.775850969599314007e-04, -3.704463942697141772e-04, -3.633074258382239458e-04, -3.561682032727275034e-04, -3.490287381806756362e-04, -3.418890421691292512e-04, -3.347491268449788188e-04, -3.276090038151617014e-04, -3.204686846862493969e-04, -3.133281810642661526e-04, -3.061875045557856351e-04, -2.990466667663218116e-04, -2.919056793014211215e-04, -2.847645537664882987e-04, -2.776233017662857417e-04, -2.704819349055549780e-04, -2.633404647884392182e-04, -2.561989030187031237e-04, -2.490572611999538211e-04, -2.419155509351425494e-04, -2.347737838267868120e-04, -2.276319714771886545e-04, -2.204901254878595764e-04, -2.133482574601391771e-04, -2.062063789946167337e-04, -1.990645016913538420e-04, -1.919226371501023146e-04, -1.847807969698897707e-04, -1.776389927488381145e-04, -1.704972360852626987e-04, -1.633555385760598997e-04, -1.562139118178019440e-04, -1.490723674065604011e-04, -1.419309169374091304e-04, -1.347895720050420326e-04, -1.276483442031974469e-04, -1.205072451248779457e-04, -1.133662863625701568e-04, -1.062254795077496351e-04, -9.908483615109817783e-05, -9.194436788272692567e-05, -8.480408629159852407e-05, -7.766400296614553846e-05, -7.052412949377397100e-05, -6.338447746068558695e-05, -5.624505845297333832e-05, -4.910588405501074767e-05, -4.196696585054712173e-05, -3.482831542253022331e-05, -2.768994435268887723e-05, -2.055186422175339878e-05, -1.341408660967551052e-05, -6.276623095052415029e-06, 8.605147442553217477e-07, 7.997315331699462329e-06, 1.513376709182418254e-05, 2.226985845004617246e-05, 2.940557783307106489e-05, 3.654091366907149781e-05, 4.367585438667144222e-05, 5.081038841631742992e-05, 5.794450418926308635e-05, 6.507819013814465225e-05, 7.221143469715925352e-05, 7.934422630096919305e-05, 8.647655338631224159e-05, 9.360840439090646484e-05, 1.007397677536278293e-04, 1.078706319149273763e-04, 1.150009853166104103e-04, 1.221308164016170704e-04, 1.292601136145973774e-04, 1.363888654012946342e-04, 1.435170602091198231e-04, 1.506446864869324747e-04, 1.577717326848197886e-04, 1.648981872545132114e-04, 1.720240386495684411e-04, 1.791492753242664529e-04, 1.862738857353856813e-04, 1.933978583403109285e-04, 2.005211815987989596e-04, 2.076438439718880668e-04, 2.147658339220736830e-04, 2.218871399137227907e-04, 2.290077504128595486e-04, 2.361276538869378253e-04, 2.432468388053439176e-04, 2.503652936391721198e-04, 2.574830068610072333e-04, 2.645999669454982993e-04, 2.717161623687424461e-04, 2.788315816088591105e-04, 2.859462131457702152e-04, 2.930600454609807266e-04, 3.001730670379953677e-04, 3.072852663624936085e-04, 3.143966319212398259e-04, 3.215071522036867845e-04, 3.286168157008854170e-04, 3.357256109056598148e-04, 3.428335263131033583e-04, 3.499405504199622945e-04, 3.570466717252109598e-04, 3.641518787298287600e-04, 3.712561599365865280e-04, 3.783595038505336563e-04, 3.854618989787852133e-04, 3.925633338302990318e-04, 3.996637969164521247e-04, 4.067632767504217144e-04, 4.138617618476800081e-04, 4.209592407261749346e-04, 4.280557019052332024e-04, 4.351511339071715873e-04, 4.422455252561951111e-04, 4.493388644785874285e-04, 4.564311401031135532e-04, 4.635223406608055658e-04, 4.706124546847496220e-04, 4.777014707106444253e-04, 4.847893772762002537e-04, 4.918761629217056723e-04, 4.989618161898077111e-04, 5.060463256252932356e-04, 5.131296797755859453e-04, 5.202118671905223233e-04, 5.272928764221375061e-04, 5.343726960252338396e-04, 5.414513145567670035e-04, 5.485287205763425761e-04, 5.556049026463877718e-04, 5.626798493310653957e-04, 5.697535491978761866e-04, 5.768259908165619286e-04, 5.838971627592948622e-04, 5.909670536010781881e-04, 5.980356519195359488e-04, 6.051029462946916349e-04, 6.121689253095411853e-04, 6.192335775494355347e-04, 6.262968916026549152e-04, 6.333588560601933169e-04, 6.404194595155314560e-04, 6.474786905650610231e-04, 6.545365378082477472e-04, 6.615929898465593368e-04, 6.686480352852074670e-04, 6.757016627312827355e-04, 6.827538607954958911e-04, 6.898046180911863307e-04, 6.968539232340945251e-04, 7.039017648435623399e-04, 7.109481315415264614e-04, 7.179930119527031451e-04, 7.250363947049934905e-04, 7.320782684292600952e-04, 7.391186217591201894e-04, 7.461574433315081196e-04, 7.531947217860683044e-04, 7.602304457657177179e-04, 7.672646039164381570e-04, 7.742971848870464991e-04, 7.813281773296189498e-04, 7.883575698996543243e-04, 7.953853512550024219e-04, 8.024115100576025440e-04, 8.094360349716222440e-04, 8.164589146652034357e-04, 8.234801378093738536e-04, 8.304996930782341863e-04, 8.375175691493560873e-04, 8.445337547035780199e-04, 8.515482384247752973e-04, 8.585610090003589247e-04, 8.655720551210503017e-04, 8.725813654806737060e-04, 8.795889287767156336e-04, 8.865947337097186210e-04, 8.935987689837711963e-04, 9.006010233066731119e-04, 9.076014853888766205e-04, 9.146001439450520635e-04, 9.215969876930170043e-04, 9.285920053539120861e-04, 9.355851856527675273e-04, 9.425765173174998008e-04, 9.495659890802630922e-04, 9.565535896764474971e-04, 9.635393078448593234e-04, 9.705231323281248487e-04, 9.775050518724787921e-04, 9.844850552275404270e-04, 9.914631311468040734e-04, 9.984392683874295221e-04, 1.005413455710015870e-03, 1.012385681879171377e-03, 1.019355935662908698e-03, 1.026324205833123015e-03, 1.033290481165771799e-03, 1.040254750439808390e-03, 1.047217002438744328e-03, 1.054177225949586190e-03, 1.061135409763006889e-03, 1.068091542673830531e-03, 1.075045613480431770e-03, 1.081997610985288528e-03, 1.088947523994777088e-03, 1.095895341318948090e-03, 1.102841051772025923e-03, 1.109784644172173880e-03, 1.116726107341290764e-03, 1.123665430105412694e-03, 1.130602601294897853e-03, 1.137537609743338599e-03, 1.144470444289295320e-03, 1.151401093774461534e-03, 1.158329547045378657e-03, 1.165255792952441145e-03, 1.172179820349692446e-03, 1.179101618096000921e-03, 1.186021175054073010e-03, 1.192938480090617809e-03, 1.199853522076764272e-03, 1.206766289887834832e-03, 1.213676772403140484e-03, 1.220584958506537848e-03, 1.227490837085819849e-03, 1.234394397033292514e-03, 1.241295627245545333e-03, 1.248194516623237459e-03, 1.255091054071514906e-03, 1.261985228500167762e-03, 1.268877028822580459e-03, 1.275766443957435711e-03, 1.282653462826889362e-03, 1.289538074358277577e-03, 1.296420267483062994e-03, 1.303300031137002556e-03, 1.310177354260548240e-03, 1.317052225798638881e-03, 1.323924634700480952e-03, 1.330794569920036021e-03, 1.337662020415800223e-03, 1.344526975150594139e-03, 1.351389423092123985e-03, 1.358249353212365130e-03, 1.365106754488067337e-03, 1.371961615900918474e-03, 1.378813926436464870e-03, 1.385663675085692945e-03, 1.392510850844040421e-03, 1.399355442711173623e-03, 1.406197439692318885e-03, 1.413036830796516327e-03, 1.419873605038322710e-03, 1.426707751436754549e-03, 1.433539259015454651e-03, 1.440368116803110183e-03, 1.447194313833213711e-03, 1.454017839143877805e-03, 1.460838681778292352e-03, 1.467656830784522031e-03, 1.474472275215294240e-03, 1.481285004128545749e-03, 1.488095006586837889e-03, 1.494902271657824700e-03, 1.501706788414427281e-03, 1.508508545933777770e-03, 1.515307533298774958e-03, 1.522103739597016787e-03, 1.528897153920979893e-03, 1.535687765368500988e-03, 1.542475563042172530e-03, 1.549260536049896098e-03, 1.556042673504677261e-03, 1.562821964524407871e-03, 1.569598398232347879e-03, 1.576371963756904165e-03, 1.583142650231427568e-03, 1.589910446794612527e-03, 1.596675342590651685e-03, 1.603437326768215225e-03, 1.610196388482110783e-03, 1.616952516891501882e-03, 1.623705701161575008e-03, 1.630455930462588760e-03, 1.637203193969651157e-03, 1.643947480863886890e-03, 1.650688780331447877e-03, 1.657427081563704954e-03, 1.664162373757709090e-03, 1.670894646115601801e-03, 1.677623887845165491e-03, 1.684350088159612029e-03, 1.691073236277375021e-03, 1.697793321422575363e-03, 1.704510332824826302e-03, 1.711224259718998600e-03, 1.717935091345640765e-03, 1.724642816951138221e-03, 1.731347425786660104e-03, 1.738048907109863853e-03, 1.744747250183078949e-03, 1.751442444274990901e-03, 1.758134478659600626e-03, 1.764823342616410502e-03, 1.771509025430779765e-03, 1.778191516393759931e-03, 1.784870804801843907e-03, 1.791546879957545179e-03, 1.798219731168797155e-03, 1.804889347749500913e-03, 1.811555719019299895e-03, 1.818218834303399504e-03, 1.824878682932945268e-03, 1.831535254245172245e-03, 1.838188537582419483e-03, 1.844838522293596513e-03, 1.851485197733250933e-03, 1.858128553261360026e-03, 1.864768578244613804e-03, 1.871405262054723654e-03, 1.878038594070063384e-03, 1.884668563674649425e-03, 1.891295160258324925e-03, 1.897918373217122095e-03, 1.904538191953070950e-03, 1.911154605873994616e-03, 1.917767604394026056e-03, 1.924377176933074430e-03, 1.930983312917304313e-03, 1.937586001778977395e-03, 1.944185232956223289e-03, 1.950780995893437860e-03, 1.957373280041431116e-03, 1.963962074856429301e-03, 1.970547369801558743e-03, 1.977129154345836238e-03, 1.983707417964314119e-03, 1.990282150138569881e-03, 1.996853340356101198e-03, 2.003420978110886670e-03, 2.009985052903167681e-03, 2.016545554239233731e-03, 2.023102471631910322e-03, 2.029655794600321306e-03, 2.036205512669713238e-03, 2.042751615371822711e-03, 2.049294092245039414e-03, 2.055832932833409534e-03, 2.062368126688251223e-03, 2.068899663366498363e-03, 2.075427532431949572e-03, 2.081951723455066107e-03, 2.088472226012046389e-03, 2.094989029686311361e-03, 2.101502124067473627e-03, 2.108011498751521766e-03, 2.114517143341262256e-03, 2.121019047445764794e-03, 2.127517200680872304e-03, 2.134011592669014454e-03, 2.140502213038996890e-03, 2.146989051426464404e-03, 2.153472097473679327e-03, 2.159951340829345447e-03, 2.166426771148973179e-03, 2.172898378095031342e-03, 2.179366151335971388e-03, 2.185830080547826373e-03, 2.192290155412484915e-03, 2.198746365619304050e-03, 2.205198700864125210e-03, 2.211647150849414302e-03, 2.218091705284638143e-03, 2.224532353886095760e-03, 2.230969086376692872e-03, 2.237401892486447566e-03, 2.243830761951979853e-03, 2.250255684516986980e-03, 2.256676649932053483e-03, 2.263093647954465566e-03, 2.269506668348586671e-03, 2.275915700885987585e-03, 2.282320735344570400e-03, 2.288721761509640573e-03, 2.295118769173703100e-03, 2.301511748135553950e-03, 2.307900688201876011e-03, 2.314285579185524321e-03, 2.320666410907136316e-03, 2.327043173194133074e-03, 2.333415855880871526e-03, 2.339784448809037812e-03, 2.346148941827433040e-03, 2.352509324791788106e-03, 2.358865587565257653e-03, 2.365217720017890116e-03, 2.371565712027133826e-03, 2.377909553477636218e-03, 2.384249234261048237e-03, 2.390584744276393839e-03, 2.396916073430236955e-03, 2.403243211635687059e-03, 2.409566148813859377e-03, 2.415884874892866574e-03, 2.422199379808002637e-03, 2.428509653502174386e-03, 2.434815685925343330e-03, 2.441117467035053886e-03, 2.447414986796229118e-03, 2.453708235180959967e-03, 2.459997202168977964e-03, 2.466281877747416272e-03, 2.472562251910667003e-03, 2.478838314660833115e-03, 2.485110056007221440e-03, 2.491377465966771593e-03, 2.497640534564199953e-03, 2.503899251831125800e-03, 2.510153607807114311e-03, 2.516403592539491387e-03, 2.522649196082448961e-03, 2.528890408498483088e-03, 2.535127219857381299e-03, 2.541359620236430771e-03, 2.547587599720813837e-03, 2.553811148403089745e-03, 2.560030256383676907e-03, 2.566244913770692002e-03, 2.572455110679717095e-03, 2.578660837234262801e-03, 2.584862083565562726e-03, 2.591058839812385248e-03, 2.597251096121537886e-03, 2.603438842647302215e-03, 2.609622069551915252e-03, 2.615800767005673107e-03, 2.621974925186009407e-03, 2.628144534278883514e-03, 2.634309584477817750e-03, 2.640470065984082577e-03, 2.646625969007020563e-03, 2.652777283763865963e-03, 2.658924000479585565e-03, 2.665066109387317136e-03, 2.671203600727898014e-03, 2.677336464750303558e-03, 2.683464691711502301e-03, 2.689588271876236069e-03, 2.695707195517392518e-03, 2.701821452916157787e-03, 2.707931034361136993e-03, 2.714035930149521266e-03, 2.720136130586242509e-03, 2.726231625984453476e-03, 2.732322406665668724e-03, 2.738408462958821787e-03, 2.744489785201682883e-03, 2.750566363739883127e-03, 2.756638188927071527e-03, 2.762705251125271901e-03, 2.768767540704702036e-03, 2.774825048043594571e-03, 2.780877763528650636e-03, 2.786925677554542846e-03, 2.792968780524416206e-03, 2.799007062849644817e-03, 2.805040514949714778e-03, 2.811069127252531670e-03, 2.817092890194577114e-03, 2.823111794219984594e-03, 2.829125829782041732e-03, 2.835134987341590002e-03, 2.841139257368503149e-03, 2.847138630340778631e-03, 2.853133096744688534e-03, 2.859122647075113943e-03, 2.865107271835360628e-03, 2.871086961537003355e-03, 2.877061706700262313e-03, 2.883031497853835289e-03, 2.888996325534716383e-03, 2.894956180288663083e-03, 2.900911052669710548e-03, 2.906860933240607014e-03, 2.912805812572675460e-03, 2.918745681245573341e-03, 2.924680529847705455e-03, 2.930610348976315886e-03, 2.936535129236614132e-03, 2.942454861243094365e-03, 2.948369535618606922e-03, 2.954279142994546952e-03, 2.960183674011247767e-03, 2.966083119317443079e-03, 2.971977469570786980e-03, 2.977866715437634936e-03, 2.983750847592867711e-03, 2.989629856720335890e-03, 2.995503733512620489e-03, 3.001372468670880731e-03, 3.007236052905357549e-03, 3.013094476934799829e-03, 3.018947731486919337e-03, 3.024795807298511722e-03, 3.030638695114585678e-03, 3.036476385689645344e-03, 3.042308869786821204e-03, 3.048136138177997157e-03, 3.053958181644173941e-03, 3.059774990975236246e-03, 3.065586556969860776e-03, 3.071392870435890946e-03, 3.077193922189887156e-03, 3.082989703057583894e-03, 3.088780203873707150e-03, 3.094565415481797480e-03, 3.100345328734548274e-03, 3.106119934493944100e-03, 3.111889223630431509e-03, 3.117653187024057877e-03, 3.123411815563607950e-03, 3.129165100147087396e-03, 3.134913031681894544e-03, 3.140655601083869319e-03, 3.146392799278656741e-03, 3.152124617200799221e-03, 3.157851045793844125e-03, 3.163572076010752292e-03, 3.169287698813651275e-03, 3.174997905173679216e-03, 3.180702686071475334e-03, 3.186402032496653009e-03, 3.192095935448250807e-03, 3.197784385934588497e-03, 3.203467374973069728e-03, 3.209144893590529408e-03, 3.214816932823330413e-03, 3.220483483716568649e-03, 3.226144537325397518e-03, 3.231800084713575081e-03, 3.237450116954862685e-03, 3.243094625132124636e-03, 3.248733600337526395e-03, 3.254367033672787846e-03, 3.259994916249077911e-03, 3.265617239186802915e-03, 3.271233993615993429e-03, 3.276845170676163325e-03, 3.282450761516095966e-03, 3.288050757294320395e-03, 3.293645149178613899e-03, 3.299233928346474286e-03, 3.304817085984911723e-03, 3.310394613290312555e-03, 3.315966501468728574e-03, 3.321532741736051789e-03, 3.327093325317114110e-03, 3.332648243447126294e-03, 3.338197487370134046e-03, 3.343741048340466079e-03, 3.349278917621815142e-03, 3.354811086487418867e-03, 3.360337546220365512e-03, 3.365858288113434370e-03, 3.371373303468903643e-03, 3.376882583598967216e-03, 3.382386119825513907e-03, 3.387883903480013847e-03, 3.393375925903907488e-03, 3.398862178448179300e-03, 3.404342652473697772e-03, 3.409817339351380212e-03, 3.415286230461330591e-03, 3.420749317194082904e-03, 3.426206590949754192e-03, 3.431658043138201535e-03, 3.437103665179434484e-03, 3.442543448502847006e-03, 3.447977384548275240e-03, 3.453405464765199953e-03, 3.458827680612916542e-03, 3.464244023560800016e-03, 3.469654485088188769e-03, 3.475059056684179446e-03, 3.480457729848016827e-03, 3.485850496088941600e-03, 3.491237346925989138e-03, 3.496618273888446159e-03, 3.501993268515397970e-03, 3.507362322356048084e-03, 3.512725426969913380e-03, 3.518082573925971485e-03, 3.523433754803850359e-03, 3.528778961193050710e-03, 3.534118184693034459e-03, 3.539451416913630237e-03, 3.544778649474534214e-03, 3.550099874005778911e-03, 3.555415082147539776e-03, 3.560724265549982965e-03, 3.566027415873620522e-03, 3.571324524789182015e-03, 3.576615583977390319e-03, 3.581900585129316802e-03, 3.587179519946516199e-03, 3.592452380140181371e-03, 3.597719157432456485e-03, 3.602979843555073527e-03, 3.608234430250610407e-03, 3.613482909271803142e-03, 3.618725272381286082e-03, 3.623961511352600650e-03, 3.629191617969346195e-03, 3.634415584025370381e-03, 3.639633401325054977e-03, 3.644845061683138487e-03, 3.650050556924593851e-03, 3.655249878885014417e-03, 3.660443019410175493e-03, 3.665629970356429432e-03, 3.670810723590592437e-03, 3.675985270989734228e-03, 3.681153604441528889e-03, 3.686315715844324260e-03, 3.691471597106401638e-03, 3.696621240147221314e-03, 3.701764636896069920e-03, 3.706901779293328512e-03, 3.712032659289704953e-03, 3.717157268846311979e-03, 3.722275599935023684e-03, 3.727387644538266050e-03, 3.732493394648910695e-03, 3.737592842270560673e-03, 3.742685979417472407e-03, 3.747772798114344921e-03, 3.752853290396720130e-03, 3.757927448310586886e-03, 3.762995263912710577e-03, 3.768056729270733308e-03, 3.773111836462444448e-03, 3.778160577576894323e-03, 3.783202944713599282e-03, 3.788238929982722537e-03, 3.793268525505408099e-03, 3.798291723413122888e-03, 3.803308515848596080e-03, 3.808318894965099632e-03, 3.813322852926589231e-03, 3.818320381907961900e-03, 3.823311474094964486e-03, 3.828296121683978127e-03, 3.833274316882369966e-03, 3.838246051908378222e-03, 3.843211318990913134e-03, 3.848170110369988905e-03, 3.853122418296299131e-03, 3.858068235031508232e-03, 3.863007552848430129e-03, 3.867940364030239813e-03, 3.872866660871594410e-03, 3.877786435677876408e-03, 3.882699680765317254e-03, 3.887606388461308307e-03, 3.892506551104049986e-03, 3.897400161042854048e-03, 3.902287210638057720e-03, 3.907167692260841117e-03, 3.912041598293569851e-03, 3.916908921129663192e-03, 3.921769653173423631e-03, 3.926623786840306198e-03, 3.931471314557067644e-03, 3.936312228761030922e-03, 3.941146521901229237e-03, 3.945974186437180460e-03, 3.950795214840054602e-03, 3.955609599591999870e-03, 3.960417333185957921e-03, 3.965218408126568519e-03, 3.970012816929351616e-03, 3.974800552120951944e-03, 3.979581606239416570e-03, 3.984355971833746478e-03, 3.989123641464351055e-03, 3.993884607702847742e-03, 3.998638863131933653e-03, 4.003386400345713449e-03, 4.008127211949569224e-03, 4.012861290559966224e-03, 4.017588628804789376e-03, 4.022309219323398806e-03, 4.027023054765965435e-03, 4.031730127794561254e-03, 4.036430431082026551e-03, 4.041123957313002939e-03, 4.045810699183313187e-03, 4.050490649399997659e-03, 4.055163800681687268e-03, 4.059830145758341544e-03, 4.064489677371189644e-03, 4.069142388273078170e-03, 4.073788271228046161e-03, 4.078427319011733616e-03, 4.083059524411219304e-03, 4.087684880224886318e-03, 4.092303379262661467e-03, 4.096915014346180078e-03, 4.101519778308033992e-03, 4.106117663992833212e-03, 4.110708664256540641e-03, 4.115292771966325494e-03, 4.119869980001455816e-03, 4.124440281252124071e-03, 4.129003668620585994e-03, 4.133560135020468429e-03, 4.138109673376852600e-03, 4.142652276626569881e-03, 4.147187937718046537e-03, 4.151716649611158876e-03, 4.156238405277603611e-03, 4.160753197700525763e-03, 4.165261019874804890e-03, 4.169761864807052486e-03, 4.174255725515332686e-03, 4.178742595029485800e-03, 4.183222466391266214e-03, 4.187695332653578253e-03, 4.192161186881582062e-03, 4.196620022151914715e-03, 4.201071831552850681e-03, 4.205516608184596723e-03, 4.209954345158914597e-03, 4.214385035599481008e-03, 4.218808672641721942e-03, 4.223225249432695574e-03, 4.227634759131416661e-03, 4.232037194908692609e-03, 4.236432549946970820e-03, 4.240820817440654408e-03, 4.245201990596156848e-03, 4.249576062631224560e-03, 4.253943026776094843e-03, 4.258302876272276362e-03, 4.262655604373480692e-03, 4.267001204345428032e-03, 4.271339669465267809e-03, 4.275670993022499811e-03, 4.279995168318395660e-03, 4.284312188666034374e-03, 4.288622047390611147e-03, 4.292924737829081731e-03, 4.297220253330515452e-03, 4.301508587255940819e-03, 4.305789732978206746e-03, 4.310063683882297408e-03, 4.314330433365215142e-03, 4.318589974835799171e-03, 4.322842301715014435e-03, 4.327087407436038327e-03, 4.331325285443625786e-03, 4.335555929195131046e-03, 4.339779332159405222e-03, 4.343995487817831069e-03, 4.348204389663688080e-03, 4.352406031202261764e-03, 4.356600405951054425e-03, 4.360787507439688009e-03, 4.364967329209753187e-03, 4.369139864815172782e-03, 4.373305107821799306e-03, 4.377463051807791404e-03, 4.381613690363441241e-03, 4.385757017091091239e-03, 4.389893025605346583e-03, 4.394021709533190573e-03, 4.398143062513308957e-03, 4.402257078197096933e-03, 4.406363750248008630e-03, 4.410463072341453891e-03, 4.414555038165565888e-03, 4.418639641420188911e-03, 4.422716875817887978e-03, 4.426786735083274027e-03, 4.430849212953182591e-03, 4.434904303176850741e-03, 4.438951999515806934e-03, 4.442992295743733965e-03, 4.447025185646835861e-03, 4.451050663023456248e-03, 4.455068721684374115e-03, 4.459079355452721417e-03, 4.463082558163874655e-03, 4.467078323665617939e-03, 4.471066645818311258e-03, 4.475047518494246028e-03, 4.479020935578527200e-03, 4.482986890968489527e-03, 4.486945378573790368e-03, 4.490896392316675971e-03, 4.494839926131646672e-03, 4.498775973965745724e-03, 4.502704529778500317e-03, 4.506625587541718617e-03, 4.510539141239820228e-03, 4.514445184869710428e-03, 4.518343712440624042e-03, 4.522234717974447232e-03, 4.526118195505431270e-03, 4.529994139080379019e-03, 4.533862542758823611e-03, 4.537723400612397873e-03, 4.541576706725553372e-03, 4.545422455195391280e-03, 4.549260640131170576e-03, 4.553091255655117298e-03, 4.556914295901842542e-03, 4.560729755018500323e-03, 4.564537627164952371e-03, 4.568337906513515734e-03, 4.572130587249221244e-03, 4.575915663569756278e-03, 4.579693129685249650e-03, 4.583462979818640239e-03, 4.587225208205473158e-03, 4.590979809093831236e-03, 4.594726776744629052e-03, 4.598466105431263384e-03, 4.602197789439927203e-03, 4.605921823069625276e-03, 4.609638200631675439e-03, 4.613346916450466670e-03, 4.617047964862979435e-03, 4.620741340218821255e-03, 4.624427036880440073e-03, 4.628105049223020170e-03, 4.631775371634382424e-03, 4.635437998515254919e-03, 4.639092924278953763e-03, 4.642740143351710945e-03, 4.646379650172539032e-03, 4.650011439193100192e-03, 4.653635504877930845e-03, 4.657251841704562224e-03, 4.660860444162926233e-03, 4.664461306756157756e-03, 4.668054423999971891e-03, 4.671639790423036051e-03, 4.675217400566993378e-03, 4.678787248985978760e-03, 4.682349330247337869e-03, 4.685903638931194354e-03, 4.689450169630422077e-03, 4.692988916950900126e-03, 4.696519875511420868e-03, 4.700043039943578929e-03, 4.703558404892008854e-03, 4.707065965014108413e-03, 4.710565714980330908e-03, 4.714057649474088889e-03, 4.717541763191566810e-03, 4.721018050842018532e-03, 4.724486507147821965e-03, 4.727947126843895335e-03, 4.731399904678548068e-03, 4.734844835412927409e-03, 4.738281913821076538e-03, 4.741711134690182634e-03, 4.745132492820319271e-03, 4.748545983024654582e-03, 4.751951600129422637e-03, 4.755349338973717012e-03, 4.758739194409840334e-03, 4.762121161303110861e-03, 4.765495234531793960e-03, 4.768861408987365783e-03, 4.772219679574226173e-03, 4.775570041209926779e-03, 4.778912488825254323e-03, 4.782247017363736204e-03, 4.785573621782245914e-03, 4.788892297050865998e-03, 4.792203038152432690e-03, 4.795505840083244542e-03, 4.798800697852632219e-03, 4.802087606482938545e-03, 4.805366561009842899e-03, 4.808637556481996055e-03, 4.811900587961339369e-03, 4.815155650522981619e-03, 4.818402739255093180e-03, 4.821641849259114196e-03, 4.824872975649703404e-03, 4.828096113554609763e-03, 4.831311258114903175e-03, 4.834518404484741162e-03, 4.837717547831583975e-03, 4.840908683336227550e-03, 4.844091806192362890e-03, 4.847266911607282097e-03, 4.850433994801364897e-03, 4.853593051008200064e-03, 4.856744075474721603e-03, 4.859887063461150632e-03, 4.863022010240851400e-03, 4.866148911100638338e-03, 4.869267761340477681e-03, 4.872378556273699972e-03, 4.875481291226992260e-03, 4.878575961540208145e-03, 4.881662562566604566e-03, 4.884741089672899050e-03, 4.887811538238830827e-03, 4.890873903657755838e-03, 4.893928181336192236e-03, 4.896974366694102285e-03, 4.900012455164907098e-03, 4.903042442195096329e-03, 4.906064323244839660e-03, 4.909078093787573940e-03, 4.912083749310007519e-03, 4.915081285312426426e-03, 4.918070697308427226e-03, 4.921051980824972527e-03, 4.924025131402542770e-03, 4.926990144594912448e-03, 4.929947015969387766e-03, 4.932895741106690414e-03, 4.935836315600908124e-03, 4.938768735059606563e-03, 4.941692995103962906e-03, 4.944609091368286184e-03, 4.947517019500712911e-03, 4.950416775162494974e-03, 4.953308354028668377e-03, 4.956191751787614348e-03, 4.959066964141160827e-03, 4.961933986804714300e-03, 4.964792815507210362e-03, 4.967643445990968000e-03, 4.970485874011922045e-03, 4.973320095339542508e-03, 4.976146105756729630e-03, 4.978963901060041129e-03, 4.981773477059435462e-03, 4.984574829578555452e-03, 4.987367954454540939e-03, 4.990152847538042655e-03, 4.992929504693310698e-03, 4.995697921798309023e-03, 4.998458094744253136e-03, 5.001210019436330007e-03, 5.003953691792926116e-03, 5.006689107746363845e-03, 5.009416263242399275e-03, 5.012135154240366167e-03, 5.014845776713289585e-03, 5.017548126647832993e-03, 5.020242200044175949e-03, 5.022927992916224882e-03, 5.025605501291510735e-03, 5.028274721211156012e-03, 5.030935648729984062e-03, 5.033588279916419335e-03, 5.036232610852571512e-03, 5.038868637634356072e-03, 5.041496356371037192e-03, 5.044115763185863521e-03, 5.046726854215643175e-03, 5.049329625610839145e-03, 5.051924073535725424e-03, 5.054510194168051335e-03, 5.057087983699535931e-03, 5.059657438335480283e-03, 5.062218554294875029e-03, 5.064771327810483649e-03, 5.067315755128810363e-03, 5.069851832510020341e-03, 5.072379556228041181e-03, 5.074898922570707759e-03, 5.077409927839272169e-03, 5.079912568349050778e-03, 5.082406840428926355e-03, 5.084892740421607417e-03, 5.087370264683702820e-03, 5.089839409585309761e-03, 5.092300171510584506e-03, 5.094752546857343398e-03, 5.097196532037160006e-03, 5.099632123475515179e-03, 5.102059317611548107e-03, 5.104478110898331283e-03, 5.106888499802722178e-03, 5.109290480805310335e-03, 5.111684050400601247e-03, 5.114069205096933093e-03, 5.116445941416365717e-03, 5.118814255894885319e-03, 5.121174145082400993e-03, 5.123525605542418593e-03, 5.125868633852604522e-03, 5.128203226604152558e-03, 5.130529380402408350e-03, 5.132847091866479979e-03, 5.135156357629250962e-03, 5.137457174337602302e-03, 5.139749538652278044e-03, 5.142033447247851448e-03, 5.144308896812829941e-03, 5.146575884049619555e-03, 5.148834405674486761e-03, 5.151084458417675566e-03, 5.153326039023221894e-03, 5.155559144249186043e-03, 5.157783770867528650e-03, 5.159999915664058648e-03, 5.162207575438559036e-03, 5.164406747004849328e-03, 5.166597427190451619e-03, 5.168779612837117073e-03, 5.170953300800193615e-03, 5.173118487949326764e-03, 5.175275171167935742e-03, 5.177423347353389549e-03, 5.179563013417074618e-03, 5.181694166284354051e-03, 5.183816802894489553e-03, 5.185930920200783681e-03, 5.188036515170533006e-03, 5.190133584784935306e-03, 5.192222126039277783e-03, 5.194302135942747110e-03, 5.196373611518556070e-03, 5.198436549804063243e-03, 5.200490947850337602e-03, 5.202536802722730960e-03, 5.204574111500511087e-03, 5.206602871276884252e-03, 5.208623079159237224e-03, 5.210634732268772974e-03, 5.212637827740958241e-03, 5.214632362725165303e-03, 5.216618334384787344e-03, 5.218595739897319979e-03, 5.220564576454289271e-03, 5.222524841261223100e-03, 5.224476531537771730e-03, 5.226419644517633217e-03, 5.228354177448504836e-03, 5.230280127592229662e-03, 5.232197492224646522e-03, 5.234106268635684532e-03, 5.236006454129467184e-03, 5.237898046023955860e-03, 5.239781041651458103e-03, 5.241655438358210420e-03, 5.243521233504571701e-03, 5.245378424465005004e-03, 5.247227008628061948e-03, 5.249066983396400050e-03, 5.250898346186831309e-03, 5.252721094430185152e-03, 5.254535225571459363e-03, 5.256340737069775844e-03, 5.258137626398354594e-03, 5.259925891044507640e-03, 5.261705528509797759e-03, 5.263476536309711490e-03, 5.265238911974120563e-03, 5.266992653046764089e-03, 5.268737757085730812e-03, 5.270474221663210175e-03, 5.272202044365417728e-03, 5.273921222792859673e-03, 5.275631754560154187e-03, 5.277333637296034892e-03, 5.279026868643450603e-03, 5.280711446259449098e-03, 5.282387367815305490e-03, 5.284054630996454574e-03, 5.285713233502451792e-03, 5.287363173047074719e-03, 5.289004447358285760e-03, 5.290637054178193993e-03, 5.292260991263077717e-03, 5.293876256383524964e-03, 5.295482847324109975e-03, 5.297080761883826011e-03, 5.298669997875628257e-03, 5.300250553126868366e-03, 5.301822425479018643e-03, 5.303385612787723212e-03, 5.304940112922884761e-03, 5.306485923768627239e-03, 5.308023043223198713e-03, 5.309551469199192547e-03, 5.311071199623291529e-03, 5.312582232436489915e-03, 5.314084565593988480e-03, 5.315578197065157218e-03, 5.317063124833663716e-03, 5.318539346897430652e-03, 5.320006861268457982e-03, 5.321465665973170757e-03, 5.322915759052156311e-03, 5.324357138560194616e-03, 5.325789802566410075e-03, 5.327213749154032993e-03, 5.328628976420695350e-03, 5.330035482478221766e-03, 5.331433265452645981e-03, 5.332822323484302796e-03, 5.334202654727806386e-03, 5.335574257351959233e-03, 5.336937129539902173e-03, 5.338291269488996439e-03, 5.339636675410893048e-03, 5.340973345531501576e-03, 5.342301278091004905e-03, 5.343620471343830600e-03, 5.344930923558799223e-03, 5.346232633018825099e-03, 5.347525598021284077e-03, 5.348809816877722959e-03, 5.350085287913986139e-03, 5.351352009470263307e-03, 5.352609979900958478e-03, 5.353859197574822697e-03, 5.355099660874881179e-03, 5.356331368198424640e-03, 5.357554317957091694e-03, 5.358768508576802064e-03, 5.359973938497759188e-03, 5.361170606174461492e-03, 5.362358510075790861e-03, 5.363537648684794934e-03, 5.364708020499008023e-03, 5.365869624030059938e-03, 5.367022457804092317e-03, 5.368166520361475000e-03, 5.369301810256820774e-03, 5.370428326059196143e-03, 5.371546066351921833e-03, 5.372655029732614426e-03, 5.373755214813242739e-03, 5.374846620220084456e-03, 5.375929244593754749e-03, 5.377003086589207149e-03, 5.378068144875672828e-03, 5.379124418136757742e-03, 5.380171905070406206e-03, 5.381210604388838442e-03, 5.382240514818636447e-03, 5.383261635100789096e-03, 5.384273963990476169e-03, 5.385277500257372799e-03, 5.386272242685332008e-03, 5.387258190072681356e-03, 5.388235341232045124e-03, 5.389203694990350388e-03, 5.390163250188923297e-03, 5.391114005683423152e-03, 5.392055960343818122e-03, 5.392989113054476313e-03, 5.393913462714068630e-03, 5.394829008235658974e-03, 5.395735748546631391e-03, 5.396633682588703081e-03, 5.397522809318014599e-03, 5.398403127705028379e-03, 5.399274636734475823e-03, 5.400137335405594957e-03, 5.400991222731886705e-03, 5.401836297741200756e-03, 5.402672559475811022e-03, 5.403500006992276866e-03, 5.404318639361587948e-03, 5.405128455669049731e-03, 5.405929455014327721e-03, 5.406721636511479558e-03, 5.407504999288920318e-03, 5.408279542489412110e-03, 5.409045265270084890e-03, 5.409802166802441664e-03, 5.410550246272347215e-03, 5.411289502880061927e-03, 5.412019935840157656e-03, 5.412741544381602724e-03, 5.413454327747794885e-03, 5.414158285196365300e-03, 5.414853415999450886e-03, 5.415539719443497428e-03, 5.416217194829298608e-03, 5.416885841472066261e-03, 5.417545658701354051e-03, 5.418196645861109509e-03, 5.418838802309645410e-03, 5.419472127419641509e-03, 5.420096620578150615e-03, 5.420712281186606391e-03, 5.421319108660812083e-03, 5.421917102430943991e-03, 5.422506261941554932e-03, 5.423086586651563838e-03, 5.423658076034309529e-03, 5.424220729577440558e-03, 5.424774546783006288e-03, 5.425319527167455150e-03, 5.425855670261571333e-03, 5.426382975610551107e-03, 5.426901442773947315e-03, 5.427411071325682380e-03, 5.427911860854096882e-03, 5.428403810961820314e-03, 5.428886921265929817e-03, 5.429361191397904206e-03, 5.429826621003498201e-03, 5.430283209742912433e-03, 5.430730957290721451e-03, 5.431169863335845102e-03, 5.431599927581613578e-03, 5.432021149745693694e-03, 5.432433529560160880e-03, 5.432837066771448002e-03, 5.433231761140344500e-03, 5.433617612442060568e-03, 5.433994620466149096e-03, 5.434362785016519544e-03, 5.434722105911491720e-03, 5.435072582983739402e-03, 5.435414216080299878e-03, 5.435747005062612977e-03, 5.436070949806451683e-03, 5.436386050201979375e-03, 5.436692306153725548e-03, 5.436989717580585808e-03, 5.437278284415835751e-03, 5.437558006607130096e-03, 5.437828884116449775e-03, 5.438090916920182601e-03, 5.438344105009060812e-03, 5.438588448388190569e-03, 5.438823947077076233e-03, 5.439050601109498943e-03, 5.439268410533687481e-03, 5.439477375412210720e-03, 5.439677495821992372e-03, 5.439868771854318788e-03, 5.440051203614819017e-03, 5.440224791223536790e-03, 5.440389534814819503e-03, 5.440545434537384997e-03, 5.440692490554328506e-03, 5.440830703043091424e-03, 5.440960072195457839e-03, 5.441080598217578820e-03, 5.441192281329978488e-03, 5.441295121767461204e-03, 5.441389119779286784e-03, 5.441474275628990082e-03, 5.441550589594471195e-03, 5.441618061967980723e-03, 5.441676693056125835e-03, 5.441726483179855529e-03, 5.441767432674456291e-03, 5.441799541889564239e-03, 5.441822811189146042e-03, 5.441837240951526676e-03, 5.441842831569347790e-03, 5.441839583449609337e-03, 5.441827497013667844e-03, 5.441806572697130591e-03, 5.441776810950058572e-03, 5.441738212236752262e-03, 5.441690777035875642e-03, 5.441634505840429320e-03, 5.441569399157729706e-03, 5.441495457509430700e-03, 5.441412681431496805e-03, 5.441321071474229144e-03, 5.441220628202257659e-03, 5.441111352194514215e-03, 5.440993244044240416e-03, 5.440866304359044843e-03, 5.440730533760796371e-03, 5.440585932885696162e-03, 5.440432502384287203e-03, 5.440270242921385786e-03, 5.440099155176124010e-03, 5.439919239841944573e-03, 5.439730497626596439e-03, 5.439532929252143510e-03, 5.439326535454936870e-03, 5.439111316985625194e-03, 5.438887274609156483e-03, 5.438654409104786737e-03, 5.438412721266066077e-03, 5.438162211900809256e-03, 5.437902881831131220e-03, 5.437634731893466189e-03, 5.437357762938515617e-03, 5.437071975831237781e-03, 5.436777371450909370e-03, 5.436473950691069965e-03, 5.436161714459548933e-03, 5.435840663678412517e-03, 5.435510799284065317e-03, 5.435172122227121920e-03, 5.434824633472500575e-03, 5.434468333999384164e-03, 5.434103224801186370e-03, 5.433729306885648827e-03, 5.433346581274687594e-03, 5.432955049004563157e-03, 5.432554711125712164e-03, 5.432145568702886201e-03, 5.431727622815071127e-03, 5.431300874555454981e-03, 5.430865325031536406e-03, 5.430420975365007549e-03, 5.429967826691849478e-03, 5.429505880162228959e-03, 5.429035136940590402e-03, 5.428555598205586467e-03, 5.428067265150104091e-03, 5.427570138981263614e-03, 5.427064220920397100e-03, 5.426549512203089967e-03, 5.426026014079118540e-03, 5.425493727812470864e-03, 5.424952654681385739e-03, 5.424402795978269451e-03, 5.423844153009766897e-03, 5.423276727096718215e-03, 5.422700519574181338e-03, 5.422115531791382552e-03, 5.421521765111772875e-03, 5.420919220913001171e-03, 5.420307900586875116e-03, 5.419687805539433190e-03, 5.419058937190859675e-03, 5.418421296975558382e-03, 5.417774886342106681e-03, 5.417119706753197386e-03, 5.416455759685795748e-03, 5.415783046630958178e-03, 5.415101569093976226e-03, 5.414411328594253420e-03, 5.413712326665344292e-03, 5.413004564855022037e-03, 5.412288044725185703e-03, 5.411562767851835903e-03, 5.410828735825210997e-03, 5.410085950249630959e-03, 5.409334412743585854e-03, 5.408574124939692467e-03, 5.407805088484692567e-03, 5.407027305039522301e-03, 5.406240776279145656e-03, 5.405445503892725330e-03, 5.404641489583540334e-03, 5.403828735068962573e-03, 5.403007242080471589e-03, 5.402177012363701403e-03, 5.401338047678352038e-03, 5.400490349798265852e-03, 5.399633920511350341e-03, 5.398768761619637119e-03, 5.397894874939232479e-03, 5.397012262300352956e-03, 5.396120925547262873e-03, 5.395220866538382766e-03, 5.394312087146128920e-03, 5.393394589257029595e-03, 5.392468374771710281e-03, 5.391533445604819973e-03, 5.390589803685102294e-03, 5.389637450955367740e-03, 5.388676389372410412e-03, 5.387706620907219655e-03, 5.386728147544685152e-03, 5.385740971283802490e-03, 5.384745094137648007e-03, 5.383740518133276441e-03, 5.382727245311801599e-03, 5.381705277728365995e-03, 5.380674617452117434e-03, 5.379635266566277531e-03, 5.378587227168017681e-03, 5.377530501368552734e-03, 5.376465091293132319e-03, 5.375390999080992271e-03, 5.374308226885306065e-03, 5.373216776873385170e-03, 5.372116651226361596e-03, 5.371007852139536576e-03, 5.369890381822045762e-03, 5.368764242497049179e-03, 5.367629436401748569e-03, 5.366485965787242546e-03, 5.365333832918591644e-03, 5.364173040074877302e-03, 5.363003589549096908e-03, 5.361825483648216713e-03, 5.360638724693150142e-03, 5.359443315018731779e-03, 5.358239256973790221e-03, 5.357026552921052669e-03, 5.355805205237176153e-03, 5.354575216312757076e-03, 5.353336588552318198e-03, 5.352089324374258335e-03, 5.350833426210984192e-03, 5.349568896508677049e-03, 5.348295737727575515e-03, 5.347013952341698843e-03, 5.345723542838984842e-03, 5.344424511721322830e-03, 5.343116861504411397e-03, 5.341800594717853803e-03, 5.340475713905168398e-03, 5.339142221623698406e-03, 5.337800120444659638e-03, 5.336449412953171711e-03, 5.335090101748132287e-03, 5.333722189442376659e-03, 5.332345678662555460e-03, 5.330960572049073948e-03, 5.329566872256350472e-03, 5.328164581952487752e-03, 5.326753703819461956e-03, 5.325334240553105357e-03, 5.323906194862990104e-03, 5.322469569472632056e-03, 5.321024367119201945e-03, 5.319570590553743088e-03, 5.318108242541128884e-03, 5.316637325859971744e-03, 5.315157843302669924e-03, 5.313669797675451764e-03, 5.312173191798288084e-03, 5.310668028504886111e-03, 5.309154310642813512e-03, 5.307632041073288495e-03, 5.306101222671385370e-03, 5.304561858325868018e-03, 5.303013950939187288e-03, 5.301457503427719521e-03, 5.299892518721365832e-03, 5.298318999763874763e-03, 5.296736949512704379e-03, 5.295146370938987566e-03, 5.293547267027636991e-03, 5.291939640777210650e-03, 5.290323495199980401e-03, 5.288698833321928486e-03, 5.287065658182742330e-03, 5.285423972835745152e-03, 5.283773780347974895e-03, 5.282115083800151267e-03, 5.280447886286584666e-03, 5.278772190915395623e-03, 5.277088000808165258e-03, 5.275395319100342935e-03, 5.273694148940848148e-03, 5.271984493492277817e-03, 5.270266355930942719e-03, 5.268539739446687076e-03, 5.266804647243009986e-03, 5.265061082537065423e-03, 5.263309048559541674e-03, 5.261548548554802716e-03, 5.259779585780757251e-03, 5.258002163508919413e-03, 5.256216285024423521e-03, 5.254421953625936469e-03, 5.252619172625706302e-03, 5.250807945349599513e-03, 5.248988275137006498e-03, 5.247160165340809465e-03, 5.245323619327596672e-03, 5.243478640477299002e-03, 5.241625232183629718e-03, 5.239763397853613482e-03, 5.237893140907873453e-03, 5.236014464780604401e-03, 5.234127372919459946e-03, 5.232231868785597664e-03, 5.230327955853727659e-03, 5.228415637611965976e-03, 5.226494917562039301e-03, 5.224565799219031692e-03, 5.222628286111545906e-03, 5.220682381781719013e-03, 5.218728089785072341e-03, 5.216765413690539234e-03, 5.214794357080687094e-03, 5.212814923551322734e-03, 5.210827116711780338e-03, 5.208830940184858149e-03, 5.206826397606656269e-03, 5.204813492626920134e-03, 5.202792228908549588e-03, 5.200762610127951900e-03, 5.198724639975006202e-03, 5.196678322152875271e-03, 5.194623660378133896e-03, 5.192560658380766282e-03, 5.190489319904087115e-03, 5.188409648704843044e-03, 5.186321648553033140e-03, 5.184225323232080629e-03, 5.182120676538759171e-03, 5.180007712283153827e-03, 5.177886434288610749e-03, 5.175756846391974843e-03, 5.173618952443241083e-03, 5.171472756305764418e-03, 5.169318261856247626e-03, 5.167155472984627691e-03, 5.164984393594196366e-03, 5.162805027601460525e-03, 5.160617378936223701e-03, 5.158421451541591284e-03, 5.156217249373885522e-03, 5.154004776402672412e-03, 5.151784036610852768e-03, 5.149555033994480946e-03, 5.147317772562788260e-03, 5.145072256338464878e-03, 5.142818489357091696e-03, 5.140556475667808212e-03, 5.138286219332670671e-03, 5.136007724427018098e-03, 5.133720995039534746e-03, 5.131426035271868455e-03, 5.129122849238924690e-03, 5.126811441068811030e-03, 5.124491814902753031e-03, 5.122163974895182700e-03, 5.119827925213592777e-03, 5.117483670038653829e-03, 5.115131213564224656e-03, 5.112770559997193570e-03, 5.110401713557599819e-03, 5.108024678478637927e-03, 5.105639459006568355e-03, 5.103246059400633368e-03, 5.100844483933416988e-03, 5.098434736890280344e-03, 5.096016822569971426e-03, 5.093590745284013593e-03, 5.091156509357116708e-03, 5.088714119127099068e-03, 5.086263578944700062e-03, 5.083804893173723277e-03, 5.081338066191067732e-03, 5.078863102386543121e-03, 5.076380006163091867e-03, 5.073888781936541047e-03, 5.071389434135724697e-03, 5.068881967202572281e-03, 5.066366385591910063e-03, 5.063842693771430752e-03, 5.061310896222064731e-03, 5.058770997437406734e-03, 5.056223001924115695e-03, 5.053666914201915619e-03, 5.051102738803188788e-03, 5.048530480273557761e-03, 5.045950143171286026e-03, 5.043361732067651836e-03, 5.040765251546884887e-03, 5.038160706206018004e-03, 5.035548100654994690e-03, 5.032927439516689076e-03, 5.030298727426732452e-03, 5.027661969033724899e-03, 5.025017168999054012e-03, 5.022364331996940871e-03, 5.019703462714484275e-03, 5.017034565851628651e-03, 5.014357646120933334e-03, 5.011672708248155438e-03, 5.008979756971446672e-03, 5.006278797041958765e-03, 5.003569833223664790e-03, 5.000852870293184815e-03, 4.998127913040006226e-03, 4.995394966266316315e-03, 4.992654034787046523e-03, 4.989905123429958303e-03, 4.987148237035441030e-03, 4.984383380456644703e-03, 4.981610558559498164e-03, 4.978829776222522610e-03, 4.976041038337066652e-03, 4.973244349807094677e-03, 4.970439715549162564e-03, 4.967627140492766359e-03, 4.964806629579792373e-03, 4.961978187764873663e-03, 4.959141820015438608e-03, 4.956297531311327532e-03, 4.953445326645117101e-03, 4.950585211022054399e-03, 4.947717189459890398e-03, 4.944841266989091592e-03, 4.941957448652658721e-03, 4.939065739506138912e-03, 4.936166144617776599e-03, 4.933258669068275870e-03, 4.930343317950934903e-03, 4.927420096371648572e-03, 4.924489009448757525e-03, 4.921550062313270225e-03, 4.918603260108639179e-03, 4.915648607990722764e-03, 4.912686111128179885e-03, 4.909715774701888837e-03, 4.906737603905284711e-03, 4.903751603944401030e-03, 4.900757780037640760e-03, 4.897756137415835292e-03, 4.894746681322384961e-03, 4.891729417013022246e-03, 4.888704349756021680e-03, 4.885671484831977801e-03, 4.882630827533937859e-03, 4.879582383167412225e-03, 4.876526157050291126e-03, 4.873462154512665963e-03, 4.870390380897376623e-03, 4.867310841559232583e-03, 4.864223541865752773e-03, 4.861128487196626075e-03, 4.858025682943784181e-03, 4.854915134511797112e-03, 4.851796847317278207e-03, 4.848670826789218055e-03, 4.845537078369033940e-03, 4.842395607510333912e-03, 4.839246419678996589e-03, 4.836089520353264830e-03, 4.832924915023535835e-03, 4.829752609192616147e-03, 4.826572608375412007e-03, 4.823384918099114967e-03, 4.820189543903195817e-03, 4.816986491339343007e-03, 4.813775765971251008e-03, 4.810557373375214454e-03, 4.807331319139337110e-03, 4.804097608864060960e-03, 4.800856248162057791e-03, 4.797607242658014949e-03, 4.794350597988948463e-03, 4.791086319803861300e-03, 4.787814413763929848e-03, 4.784534885542526469e-03, 4.781247740825072048e-03, 4.777952985309035991e-03, 4.774650624704133116e-03, 4.771340664732001864e-03, 4.768023111126497467e-03, 4.764697969633469900e-03, 4.761365246010672812e-03, 4.758024946028222360e-03, 4.754677075468096738e-03, 4.751321640124117965e-03, 4.747958645802546895e-03, 4.744588098321254888e-03, 4.741210003510245088e-03, 4.737824367211609933e-03, 4.734431195279230169e-03, 4.731030493579142619e-03, 4.727622267989182829e-03, 4.724206524399149863e-03, 4.720783268710905187e-03, 4.717352506838086434e-03, 4.713914244706276548e-03, 4.710468488253045406e-03, 4.707015243427732989e-03, 4.703554516191689634e-03, 4.700086312518076542e-03, 4.696610638391761697e-03, 4.693127499809846351e-03, 4.689636902780893075e-03, 4.686138853325434034e-03, 4.682633357475922409e-03, 4.679120421276494746e-03, 4.675600050783084577e-03, 4.672072252063533444e-03, 4.668537031197309006e-03, 4.664994394275812084e-03, 4.661444347402060942e-03, 4.657886896690840474e-03, 4.654322048268802817e-03, 4.650749808274217550e-03, 4.647170182856937004e-03, 4.643583178178904529e-03, 4.639988800413265453e-03, 4.636387055745347201e-03, 4.632777950371839634e-03, 4.629161490501015365e-03, 4.625537682353196393e-03, 4.621906532159951800e-03, 4.618268046164622498e-03, 4.614622230622272663e-03, 4.610969091799430389e-03, 4.607308635974262899e-03, 4.603640869436597359e-03, 4.599965798487727457e-03, 4.596283429440639785e-03, 4.592593768619770110e-03, 4.588896822361092712e-03, 4.585192597012255691e-03, 4.581481098932335509e-03, 4.577762334491753717e-03, 4.574036310072854619e-03, 4.570303032068977200e-03, 4.566562506885432637e-03, 4.562814740938604847e-03, 4.559059740656462231e-03, 4.555297512478563744e-03, 4.551528062855711085e-03, 4.547751398250190688e-03, 4.543967525135791073e-03, 4.540176449997599013e-03, 4.536378179332088874e-03, 4.532572719647225828e-03, 4.528760077462215192e-03, 4.524940259307745280e-03, 4.521113271725790521e-03, 4.517279121269489155e-03, 4.513437814503705285e-03, 4.509589358004319377e-03, 4.505733758358443364e-03, 4.501871022164849988e-03, 4.498001156033126259e-03, 4.494124166584611071e-03, 4.490240060451490545e-03, 4.486348844277344462e-03, 4.482450524717133261e-03, 4.478545108436842413e-03, 4.474632602113711409e-03, 4.470713012436287534e-03, 4.466786346104206426e-03, 4.462852609828255393e-03, 4.458911810330526068e-03, 4.454963954344116038e-03, 4.451009048613395989e-03, 4.447047099893825829e-03, 4.443078114951785548e-03, 4.439102100565207529e-03, 4.435119063522702243e-03, 4.431129010624107294e-03, 4.427131948680461393e-03, 4.423127884513652214e-03, 4.419116824956838795e-03, 4.415098776854049951e-03, 4.411073747060361219e-03, 4.407041742442002405e-03, 4.403002769876054011e-03, 4.398956836250628513e-03, 4.394903948464911128e-03, 4.390844113428996748e-03, 4.386777338063747693e-03, 4.382703629301386988e-03, 4.378622994084691716e-03, 4.374535439367604507e-03, 4.370440972114891798e-03, 4.366339599302030208e-03, 4.362231327915839715e-03, 4.358116164953566851e-03, 4.353994117423489255e-03, 4.349865192344848017e-03, 4.345729396747527624e-03, 4.341586737672428059e-03, 4.337437222171139535e-03, 4.333280857306023165e-03, 4.329117650150408718e-03, 4.324947607788243338e-03, 4.320770737314259813e-03, 4.316587045834063309e-03, 4.312396540463940553e-03, 4.308199228330708043e-03, 4.303995116572349559e-03, 4.299784212337042985e-03, 4.295566522784160374e-03, 4.291342055083363291e-03, 4.287110816415112824e-03, 4.282872813970659172e-03, 4.278628054951719856e-03, 4.274376546570701763e-03, 4.270118296050722830e-03, 4.265853310625414285e-03, 4.261581597538963151e-03, 4.257303164046323009e-03, 4.253018017412812414e-03, 4.248726164914504340e-03, 4.244427613837923469e-03, 4.240122371479937771e-03, 4.235810445148389079e-03, 4.231491842161321133e-03, 4.227166569847145249e-03, 4.222834635545239662e-03, 4.218496046604870535e-03, 4.214150810386356819e-03, 4.209798934259986053e-03, 4.205440425606672694e-03, 4.201075291817841888e-03, 4.196703540295214363e-03, 4.192325178450868883e-03, 4.187940213707464290e-03, 4.183548653497851794e-03, 4.179150505265260586e-03, 4.174745776463422743e-03, 4.170334474556214137e-03, 4.165916607017986634e-03, 4.161492181333381613e-03, 4.157061204997079297e-03, 4.152623685514575044e-03, 4.148179630401113357e-03, 4.143729047182440756e-03, 4.139271943394623628e-03, 4.134808326583756799e-03, 4.130338204306385937e-03, 4.125861584129092950e-03, 4.121378473628665995e-03, 4.116888880392240851e-03, 4.112392812016962655e-03, 4.107890276110133347e-03, 4.103381280289353922e-03, 4.098865832182260749e-03, 4.094343939426408480e-03, 4.089815609669926640e-03, 4.085280850570611501e-03, 4.080739669796608696e-03, 4.076192075026031578e-03, 4.071638073946855403e-03, 4.067077674257573924e-03, 4.062510883666240087e-03, 4.057937709891110481e-03, 4.053358160660544725e-03, 4.048772243712706227e-03, 4.044179966795915203e-03, 4.039581337668332953e-03, 4.034976364098047732e-03, 4.030365053863262971e-03, 4.025747414751926906e-03, 4.021123454561921669e-03, 4.016493181101187318e-03, 4.011856602187425201e-03, 4.007213725648023361e-03, 4.002564559320729611e-03, 3.997909111052540439e-03, 3.993247388700894504e-03, 3.988579400132527715e-03, 3.983905153224196610e-03, 3.979224655862563867e-03, 3.974537915943883448e-03, 3.969844941374239995e-03, 3.965145740069554899e-03, 3.960440319955342570e-03, 3.955728688967029630e-03, 3.951010855049576741e-03, 3.946286826157685036e-03, 3.941556610255895002e-03, 3.936820215318220448e-03, 3.932077649328383565e-03, 3.927328920279912934e-03, 3.922574036175824341e-03, 3.917813005028575671e-03, 3.913045834860748654e-03, 3.908272533703888336e-03, 3.903493109599755120e-03, 3.898707570599155552e-03, 3.893915924762616273e-03, 3.889118180160380973e-03, 3.884314344871998836e-03, 3.879504426986559156e-03, 3.874688434602807565e-03, 3.869866375828747915e-03, 3.865038258782098508e-03, 3.860204091589835001e-03, 3.855363882388414612e-03, 3.850517639323862429e-03, 3.845665370551517703e-03, 3.840807084235916755e-03, 3.835942788551515489e-03, 3.831072491681596515e-03, 3.826196201819053247e-03, 3.821313927166196910e-03, 3.816425675934426946e-03, 3.811531456344878065e-03, 3.806631276627543779e-03, 3.801725145021868802e-03, 3.796813069776730845e-03, 3.791895059150084991e-03, 3.786971121409165794e-03, 3.782041264830581818e-03, 3.777105497699947880e-03, 3.772163828312334773e-03, 3.767216264971811300e-03, 3.762262815991656347e-03, 3.757303489694461228e-03, 3.752338294411868610e-03, 3.747367238484445879e-03, 3.742390330262428469e-03, 3.737407578104629154e-03, 3.732418990379158391e-03, 3.727424575463328046e-03, 3.722424341743318325e-03, 3.717418297614563747e-03, 3.712406451481375415e-03, 3.707388811757117517e-03, 3.702365386864297104e-03, 3.697336185234276554e-03, 3.692301215307408017e-03, 3.687260485533187804e-03, 3.682214004369914213e-03, 3.677161780284670615e-03, 3.672103821753970338e-03, 3.667040137262608714e-03, 3.661970735304940269e-03, 3.656895624383640128e-03, 3.651814813010486813e-03, 3.646728309706229534e-03, 3.641636123000286350e-03, 3.636538261430919371e-03, 3.631434733545359228e-03, 3.626325547899415195e-03, 3.621210713057907999e-03, 3.616090237594275173e-03, 3.610964130090701593e-03, 3.605832399138277338e-03, 3.600695053336672429e-03, 3.595552101294242648e-03, 3.590403551628248546e-03, 3.585249412964487681e-03, 3.580089693937240844e-03, 3.574924403189981992e-03, 3.569753549374152235e-03, 3.564577141150527661e-03, 3.559395187187890542e-03, 3.554207696163884985e-03, 3.549014676764826112e-03, 3.543816137685450694e-03, 3.538612087629040316e-03, 3.533402535307588778e-03, 3.528187489441386195e-03, 3.522966958759466988e-03, 3.517740951999201796e-03, 3.512509477906434509e-03, 3.507272545235635801e-03, 3.502030162749641615e-03, 3.496782339219475788e-03, 3.491529083425169711e-03, 3.486270404154606130e-03, 3.481006310204259446e-03, 3.475736810379109407e-03, 3.470461913492245160e-03, 3.465181628365528784e-03, 3.459895963828661571e-03, 3.454604928719882256e-03, 3.449308531885865968e-03, 3.444006782181405039e-03, 3.438699688469567736e-03, 3.433387259621843105e-03, 3.428069504517754999e-03, 3.422746432045280576e-03, 3.417418051100458258e-03, 3.412084370587516527e-03, 3.406745399419031789e-03, 3.401401146515681175e-03, 3.396051620806014425e-03, 3.390696831227352909e-03, 3.385336786724533684e-03, 3.379971496250754742e-03, 3.374600968767433630e-03, 3.369225213243824939e-03, 3.363844238657499961e-03, 3.358458053993896523e-03, 3.353066668246502437e-03, 3.347670090416993410e-03, 3.342268329514904313e-03, 3.336861394557728497e-03, 3.331449294571129857e-03, 3.326032038588516530e-03, 3.320609635651459394e-03, 3.315182094809365071e-03, 3.309749425119296387e-03, 3.304311635646840165e-03, 3.298868735464868633e-03, 3.293420733654294896e-03, 3.287967639304259417e-03, 3.282509461511217124e-03, 3.277046209379671626e-03, 3.271577892022062891e-03, 3.266104518558401223e-03, 3.260626098116716116e-03, 3.255142639832617809e-03, 3.249654152849475522e-03, 3.244160646318562310e-03, 3.238662129398720696e-03, 3.233158611256473688e-03, 3.227650101066221241e-03, 3.222136608009807442e-03, 3.216618141276982815e-03, 3.211094710065008802e-03, 3.205566323578528092e-03, 3.200032991030427217e-03, 3.194494721640585809e-03, 3.188951524636678483e-03, 3.183403409254112384e-03, 3.177850384735628197e-03, 3.172292460331532608e-03, 3.166729645299837942e-03, 3.161161948905789019e-03, 3.155589380422400489e-03, 3.150011949129974571e-03, 3.144429664316256319e-03, 3.138842535276640047e-03, 3.133250571313821089e-03, 3.127653781737655715e-03, 3.122052175866027197e-03, 3.116445763023461060e-03, 3.110834552542525444e-03, 3.105218553762778989e-03, 3.099597776030923058e-03, 3.093972228701597545e-03, 3.088341921136150518e-03, 3.082706862703437928e-03, 3.077067062779745548e-03, 3.071422530748402126e-03, 3.065773276000010109e-03, 3.060119307932570101e-03, 3.054460635951054132e-03, 3.048797269467870986e-03, 3.043129217902423855e-03, 3.037456490681308963e-03, 3.031779097238424849e-03, 3.026097047014696551e-03, 3.020410349457918614e-03, 3.014719014023615942e-03, 3.009023050173771380e-03, 3.003322467377682239e-03, 2.997617275111837988e-03, 2.991907482859522144e-03, 2.986193100111294955e-03, 2.980474136364516351e-03, 2.974750601123561915e-03, 2.969022503899959933e-03, 2.963289854212017120e-03, 2.957552661584997300e-03, 2.951810935551263219e-03, 2.946064685649846769e-03, 2.940313921426937743e-03, 2.934558652435483549e-03, 2.928798888235035255e-03, 2.923034638392630561e-03, 2.917265912481514442e-03, 2.911492720081937120e-03, 2.905715070781333606e-03, 2.899932974173364403e-03, 2.894146439858696126e-03, 2.888355477444893953e-03, 2.882560096545998783e-03, 2.876760306783035948e-03, 2.870956117783561145e-03, 2.865147539181790541e-03, 2.859334580618837565e-03, 2.853517251742261011e-03, 2.847695562206284045e-03, 2.841869521671932554e-03, 2.836039139806599291e-03, 2.830204426284531772e-03, 2.824365390786415502e-03, 2.818522042999258622e-03, 2.812674392617246256e-03, 2.806822449340461590e-03, 2.800966222875766673e-03, 2.795105722936638056e-03, 2.789240959242838495e-03, 2.783371941520622946e-03, 2.777498679502875614e-03, 2.771621182928659787e-03, 2.765739461543700959e-03, 2.759853525099965725e-03, 2.753963383355791019e-03, 2.748069046076070596e-03, 2.742170523031941046e-03, 2.736267824000596181e-03, 2.730360958766220314e-03, 2.724449937118524588e-03, 2.718534768854209780e-03, 2.712615463775867788e-03, 2.706692031692167245e-03, 2.700764482418644124e-03, 2.694832825776411530e-03, 2.688897071593078676e-03, 2.682957229702553990e-03, 2.677013309944731561e-03, 2.671065322165663749e-03, 2.665113276217749832e-03, 2.659157181959239443e-03, 2.653197049254783346e-03, 2.647232887974896101e-03, 2.641264707996198932e-03, 2.635292519201557198e-03, 2.629316331479758170e-03, 2.623336154725351872e-03, 2.617351998839559206e-03, 2.611363873728806111e-03, 2.605371789306292190e-03, 2.599375755490526598e-03, 2.593375782206218828e-03, 2.587371879384153372e-03, 2.581364056960825867e-03, 2.575352324878626108e-03, 2.569336693086036669e-03, 2.563317171537194458e-03, 2.557293770192089772e-03, 2.551266499016750615e-03, 2.545235367982742660e-03, 2.539200387067707450e-03, 2.533161566254934789e-03, 2.527118915533217020e-03, 2.521072444897692107e-03, 2.515022164348832290e-03, 2.508968083892626228e-03, 2.502910213541435086e-03, 2.496848563312499374e-03, 2.490783143229544430e-03, 2.484713963321235654e-03, 2.478641033622189412e-03, 2.472564364172750995e-03, 2.466483965018660251e-03, 2.460399846211263654e-03, 2.454312017807652648e-03, 2.448220489870282443e-03, 2.442125272467145919e-03, 2.436026375671941895e-03, 2.429923809563629741e-03, 2.423817584226883870e-03, 2.417707709751738994e-03, 2.411594196233416212e-03, 2.405477053773235480e-03, 2.399356292477252545e-03, 2.393231922457206545e-03, 2.387103953830362144e-03, 2.380972396719070218e-03, 2.374837261251309516e-03, 2.368698557560190536e-03, 2.362556295784146339e-03, 2.356410486067098218e-03, 2.350261138558077962e-03, 2.344108263411357959e-03, 2.337951870786682783e-03, 2.331791970848884950e-03, 2.325628573767754819e-03, 2.319461689718959989e-03, 2.313291328882521782e-03, 2.307117501444398613e-03, 2.300940217595284689e-03, 2.294759487530797799e-03, 2.288575321452364884e-03, 2.282387729565813882e-03, 2.276196722082356877e-03, 2.270002309218381933e-03, 2.263804501195071459e-03, 2.257603308238903973e-03, 2.251398740581177487e-03, 2.245190808458182117e-03, 2.238979522111406509e-03, 2.232764891787092885e-03, 2.226546927736424396e-03, 2.220325640215738486e-03, 2.214101039486133116e-03, 2.207873135813350103e-03, 2.201641939468678907e-03, 2.195407460727461738e-03, 2.189169709870710748e-03, 2.182928697183580610e-03, 2.176684432956309170e-03, 2.170436927484082137e-03, 2.164186191066641476e-03, 2.157932234008500937e-03, 2.151675066619131681e-03, 2.145414699212516013e-03, 2.139151142107358159e-03, 2.132884405627260335e-03, 2.126614500100221412e-03, 2.120341435859185528e-03, 2.114065223241596691e-03, 2.107785872589250462e-03, 2.101503394249179535e-03, 2.095217798572590780e-03, 2.088929095915059101e-03, 2.082637296637409111e-03, 2.076342411104178162e-03, 2.070044449685261734e-03, 2.063743422754362161e-03, 2.057439340689956164e-03, 2.051132213875139602e-03, 2.044822052697244964e-03, 2.038508867548043894e-03, 2.032192668823941048e-03, 2.025873466925543886e-03, 2.019551272257847415e-03, 2.013226095230417206e-03, 2.006897946256893262e-03, 2.000566835755550332e-03, 1.994232774148822166e-03, 1.987895771863174444e-03, 1.981555839330064513e-03, 1.975212986984498965e-03, 1.968867225266033270e-03, 1.962518564618585728e-03, 1.956167015490022434e-03, 1.949812588332678134e-03, 1.943455293602870714e-03, 1.937095141761067084e-03, 1.930732143272110863e-03, 1.924366308604755519e-03, 1.917997648231867767e-03, 1.911626172630630748e-03, 1.905251892282149593e-03, 1.898874817671329348e-03, 1.892494959287738428e-03, 1.886112327624422068e-03, 1.879726933178772286e-03, 1.873338786452051702e-03, 1.866947897949194262e-03, 1.860554278179825036e-03, 1.854157937656780936e-03, 1.847758886897119673e-03, 1.841357136421939130e-03, 1.834952696755947363e-03, 1.828545578428011648e-03, 1.822135791970640878e-03, 1.815723347920165324e-03, 1.809308256816973210e-03, 1.802890529205026507e-03, 1.796470175632078857e-03, 1.790047206649862492e-03, 1.783621632813728493e-03, 1.777193464682459440e-03, 1.770762712819283144e-03, 1.764329387790261735e-03, 1.757893500165995599e-03, 1.751455060520046292e-03, 1.745014079429895197e-03, 1.738570567476800405e-03, 1.732124535245415731e-03, 1.725675993324004946e-03, 1.719224952304607016e-03, 1.712771422782535845e-03, 1.706315415356944500e-03, 1.699856940630292213e-03, 1.693396009208541489e-03, 1.686932631701371262e-03, 1.680466818721710904e-03, 1.673998580885947742e-03, 1.667527928814117443e-03, 1.661054873129547095e-03, 1.654579424458665687e-03, 1.648101593432019360e-03, 1.641621390682647483e-03, 1.635138826847817818e-03, 1.628653912567401075e-03, 1.622166658484877925e-03, 1.615677075247175286e-03, 1.609185173504278392e-03, 1.602690963909441995e-03, 1.596194457119381842e-03, 1.589695663793757935e-03, 1.583194594595725528e-03, 1.576691260191420566e-03, 1.570185671250156137e-03, 1.563677838444620452e-03, 1.557167772450500408e-03, 1.550655483946319175e-03, 1.544140983614421519e-03, 1.537624282139538100e-03, 1.531105390209736104e-03, 1.524584318516303879e-03, 1.518061077753260664e-03, 1.511535678617945523e-03, 1.505008131810473731e-03, 1.498478448033959244e-03, 1.491946637994679943e-03, 1.485412712401663459e-03, 1.478876681966857180e-03, 1.472338557405350945e-03, 1.465798349434835378e-03, 1.459256068776168059e-03, 1.452711726152853102e-03, 1.446165332291241955e-03, 1.439616897920726170e-03, 1.433066433773367470e-03, 1.426513950583713219e-03, 1.419959459089830756e-03, 1.413402970031805766e-03, 1.406844494152756884e-03, 1.400284042198665473e-03, 1.393721624917926760e-03, 1.387157253061917749e-03, 1.380590937384462919e-03, 1.374022688642033505e-03, 1.367452517593955880e-03, 1.360880435001960093e-03, 1.354306451630359412e-03, 1.347730578246276491e-03, 1.341152825619251971e-03, 1.334573204521072309e-03, 1.327991725726789148e-03, 1.321408400013083899e-03, 1.314823238160008978e-03, 1.308236250949352608e-03, 1.301647449165666643e-03, 1.295056843596081387e-03, 1.288464445029922001e-03, 1.281870264258931635e-03, 1.275274312077453358e-03, 1.268676599281899978e-03, 1.262077136671341899e-03, 1.255475935046947026e-03, 1.248873005212217113e-03, 1.242268357973159293e-03, 1.235662004137845450e-03, 1.229053954516608248e-03, 1.222444219922250381e-03, 1.215832811169651872e-03, 1.209219739075609616e-03, 1.202605014459845250e-03, 1.195988648143381022e-03, 1.189370650950269089e-03, 1.182751033705963266e-03, 1.176129807238352051e-03, 1.169506982377547860e-03, 1.162882569955553521e-03, 1.156256580806424910e-03, 1.149629025766490823e-03, 1.142999915673830174e-03, 1.136369261368814316e-03, 1.129737073693605487e-03, 1.123103363492341557e-03, 1.116468141611340727e-03, 1.109831418898718156e-03, 1.103193206204233084e-03, 1.096553514380272645e-03, 1.089912354280389703e-03, 1.083269736760300974e-03, 1.076625672677735020e-03, 1.069980172891878438e-03, 1.063333248264335595e-03, 1.056684909657847971e-03, 1.050035167937237194e-03, 1.043384033969238294e-03, 1.036731518622118061e-03, 1.030077632765873455e-03, 1.023422387272435218e-03, 1.016765793015134882e-03, 1.010107860869287203e-03, 1.003448601711631359e-03, 9.967880264205623234e-04, 9.901261458763108408e-04, 9.834629709605826036e-04, 9.767985125563622296e-04, 9.701327815489539869e-04, 9.634657888244774638e-04, 9.567975452708822734e-04, 9.501280617777837969e-04, 9.434573492360052169e-04, 9.367854185381485664e-04, 9.301122805780595668e-04, 9.234379462510319998e-04, 9.167624264540114292e-04, 9.100857320851287770e-04, 9.034078740439198743e-04, 8.967288632315122696e-04, 8.900487105500954873e-04, 8.833674269035023769e-04, 8.766850231967377024e-04, 8.700015103358143187e-04, 8.633168992287732976e-04, 8.566312007841914156e-04, 8.499444259121128080e-04, 8.432565855242645089e-04, 8.365676905329229177e-04, 8.298777518518582474e-04, 8.231867803961728704e-04, 8.164947870818339186e-04, 8.098017828262537654e-04, 8.031077785477445637e-04, 7.964127851657323755e-04, 7.897168136009619782e-04, 7.830198747750242603e-04, 7.763219796105666655e-04, 7.696231390315007087e-04, 7.629233639624634529e-04, 7.562226653293881249e-04, 7.495210540590507018e-04, 7.428185410788922102e-04, 7.361151373180478512e-04, 7.294108537058460306e-04, 7.227057011728208955e-04, 7.159996906505559922e-04, 7.092928330712896167e-04, 7.025851393681214639e-04, 6.958766204752160232e-04, 6.891672873272652487e-04, 6.824571508600713174e-04, 6.757462220099958545e-04, 6.690345117141775332e-04, 6.623220309107301579e-04, 6.556087905383580980e-04, 6.488948015361809723e-04, 6.421800748447680863e-04, 6.354646214044780850e-04, 6.287484521572271785e-04, 6.220315780448325890e-04, 6.153140100099690341e-04, 6.085957589963690876e-04, 6.018768359476822736e-04, 5.951572518084396806e-04, 5.884370175238773457e-04, 5.817161440395490855e-04, 5.749946423015295672e-04, 5.682725232566222589e-04, 5.615497978518235083e-04, 5.548264770348914233e-04, 5.481025717538164565e-04, 5.413780929570191636e-04, 5.346530515935642245e-04, 5.279274586127619996e-04, 5.212013249640039475e-04, 5.144746615977930509e-04, 5.077474794642321135e-04, 5.010197895140417173e-04, 4.942916026984090850e-04, 4.875629299685103261e-04, 4.808337822760954728e-04, 4.741041705729450773e-04, 4.673741058110767528e-04, 4.606435989429533400e-04, 4.539126609210171882e-04, 4.471813026978913833e-04, 4.404495352265950158e-04, 4.337173694599939788e-04, 4.269848163513840513e-04, 4.202518868540255589e-04, 4.135185919209763525e-04, 4.067849425061190898e-04, 4.000509495626466592e-04, 3.933166240440193130e-04, 3.865819769041739192e-04, 3.798470190963768750e-04, 3.731117615741827583e-04, 3.663762152912691502e-04, 3.596403912009641930e-04, 3.529043002568340659e-04, 3.461679534121365467e-04, 3.394313616200282028e-04, 3.326945358337736426e-04, 3.259574870062775733e-04, 3.192202260902900950e-04, 3.124827640386137833e-04, 3.057451118035654368e-04, 2.990072803375515720e-04, 2.922692805926064988e-04, 2.855311235202201490e-04, 2.787928200723738693e-04, 2.720543812000202066e-04, 2.653158178541157740e-04, 2.585771409854547708e-04, 2.518383615442738995e-04, 2.450994904804608583e-04, 2.383605387437622903e-04, 2.316215172832395959e-04, 2.248824370478521792e-04, 2.181433089859142354e-04, 2.114041440453011563e-04, 2.046649531736593499e-04, 1.979257473180100191e-04, 1.911865374245847967e-04, 1.844473344398554662e-04, 1.777081493088671907e-04, 1.709689929769455893e-04, 1.642298763884050459e-04, 1.574908104867532165e-04, 1.507518062156515241e-04, 1.440128745173954597e-04, 1.372740263339473660e-04, 1.305352726067685216e-04, 1.237966242764266601e-04, 1.170580922828029844e-04, 1.103196875652997242e-04, 1.035814210622971131e-04, 9.684330371173616094e-05, 9.010534645057474994e-05, 8.336756021499614063e-05, 7.662995594061586464e-05, 6.989254456208876911e-05, 6.315533701294122294e-05, 5.641834422660440206e-05, 4.968157713474467911e-05, 4.294504666904826759e-05, 3.620876375955113725e-05, 2.947273933567287193e-05, 2.273698432604888593e-05, 1.600150965813676036e-05, 9.266326258424338808e-06, 2.531445052637039051e-06, -4.203123034730374442e-06, -1.093736708020619122e-05, -1.767127616113411574e-05, -2.440483935621673173e-05, -3.113804574493235012e-05, -3.787088440800317340e-05, -4.460334442756342836e-05, -5.133541488612561310e-05, -5.806708486809967443e-05, -6.479834345883549466e-05, -7.152917974441367450e-05, -7.825958281294143244e-05, -8.498954175284230297e-05, -9.171904565452568595e-05, -9.844808360935380519e-05, -1.051766447098088789e-04, -1.119047180498870917e-04, -1.186322927248897500e-04, -1.253593578312171483e-04, -1.320859024668352775e-04, -1.388119157310695553e-04, -1.455373867243963748e-04, -1.522623045489863037e-04, -1.589866583081212708e-04, -1.657104371066631045e-04, -1.724336300512200118e-04, -1.791562262491155563e-04, -1.858782148099051860e-04, -1.925995848443429344e-04, -1.993203254645532936e-04, -2.060404257844920546e-04, -2.127598749193705685e-04, -2.194786619861945954e-04, -2.261967761035567066e-04, -2.329142063914315872e-04, -2.396309419716410774e-04, -2.463469719676480117e-04, -2.530622855043483774e-04, -2.597768717084637954e-04, -2.664907197087095446e-04, -2.732038186347613990e-04, -2.799161576189251356e-04, -2.866277257944257182e-04, -2.933385122967042740e-04, -3.000485062632043433e-04, -3.067576968324239612e-04, -3.134660731454210186e-04, -3.201736243447924311e-04, -3.268803395748349811e-04, -3.335862079820131501e-04, -3.402912187143805893e-04, -3.469953609221176666e-04, -3.536986237573271487e-04, -3.604009963738280401e-04, -3.671024679276176160e-04, -3.738030275766691100e-04, -3.805026644807239810e-04, -3.872013678016796782e-04, -3.938991267037621918e-04, -4.005959303524925371e-04, -4.072917679163522522e-04, -4.139866285650039505e-04, -4.206805014709537284e-04, -4.273733758085244798e-04, -4.340652407540203156e-04, -4.407560854861202371e-04, -4.474458991856684518e-04, -4.541346710354689166e-04, -4.608223902207517621e-04, -4.675090459289684319e-04, -4.741946273495796136e-04, -4.808791236746007541e-04, -4.875625240980184343e-04, -4.942448178162595030e-04, -5.009259940283522982e-04, -5.076060419349824691e-04, -5.142849507396197875e-04, -5.209627096483193057e-04, -5.276393078687658484e-04, -5.343147346119293730e-04, -5.409889790903021651e-04, -5.476620305195437901e-04, -5.543338781174669307e-04, -5.610045111041937283e-04, -5.676739187025526016e-04, -5.743420901378722479e-04, -5.810090146377654531e-04, -5.876746814326108031e-04, -5.943390797553307469e-04, -6.010021988411900443e-04, -6.076640279283439380e-04, -6.143245562572459623e-04, -6.209837730711168608e-04, -6.276416676161162157e-04, -6.342982291403118046e-04, -6.409534468951847992e-04, -6.476073101346121325e-04, -6.542598081150243590e-04, -6.609109300958727288e-04, -6.675606653390562953e-04, -6.742090031094505722e-04, -6.808559326747064136e-04, -6.875014433050484616e-04, -6.941455242737315946e-04, -7.007881648568381819e-04, -7.074293543330721938e-04, -7.140690819841484299e-04, -7.207073370949578601e-04, -7.273441089525447883e-04, -7.339793868477579837e-04, -7.406131600735627952e-04, -7.472454179263149799e-04, -7.538761497055596929e-04, -7.605053447130843275e-04, -7.671329922544139557e-04, -7.737590816377994422e-04, -7.803836021743732441e-04, -7.870065431786171361e-04, -7.936278939677874743e-04, -8.002476438624443961e-04, -8.068657821862576388e-04, -8.134822982657888323e-04, -8.200971814309609585e-04, -8.267104210148534370e-04, -8.333220063534968860e-04, -8.399319267862555196e-04, -8.465401716559958507e-04, -8.531467303080727442e-04, -8.597515920919620094e-04, -8.663547463595170023e-04, -8.729561824665996997e-04, -8.795558897720728245e-04, -8.861538576379543453e-04, -8.927500754298200395e-04, -8.993445325165783056e-04, -9.059372182702844388e-04, -9.125281220666585542e-04, -9.191172332845316687e-04, -9.257045413063561424e-04, -9.322900355180233165e-04, -9.388737053086385412e-04, -9.454555400709302448e-04, -9.520355292013896881e-04, -9.586136620993467895e-04, -9.651899281680933595e-04, -9.717643168146650667e-04, -9.783368174489162888e-04, -9.849074194851390428e-04, -9.914761123403393207e-04, -9.980428854358483221e-04, -1.004607728196323796e-03, -1.011170630049903997e-03, -1.017731580428606671e-03, -1.024290568768111568e-03, -1.030847584507562460e-03, -1.037402617090096022e-03, -1.043955655962280861e-03, -1.050506690574635983e-03, -1.057055710381435421e-03, -1.063602704840495728e-03, -1.070147663413572149e-03, -1.076690575566518863e-03, -1.083231430768269834e-03, -1.089770218492331104e-03, -1.096306928215774442e-03, -1.102841549419390863e-03, -1.109374071588150115e-03, -1.115904484210639060e-03, -1.122432776779582744e-03, -1.128958938791647503e-03, -1.135482959747229114e-03, -1.142004829150919431e-03, -1.148524536511300390e-03, -1.155042071340734973e-03, -1.161557423155909095e-03, -1.168070581477247865e-03, -1.174581535829458557e-03, -1.181090275741315289e-03, -1.187596790745468417e-03, -1.194101070378814685e-03, -1.200603104182677633e-03, -1.207102881701779340e-03, -1.213600392485734243e-03, -1.220095626088037568e-03, -1.226588572066229484e-03, -1.233079219982353720e-03, -1.239567559402377298e-03, -1.246053579896738922e-03, -1.252537271040120000e-03, -1.259018622411273332e-03, -1.265497623593446388e-03, -1.271974264174211521e-03, -1.278448533745233295e-03, -1.284920421902665307e-03, -1.291389918247317584e-03, -1.297857012383638303e-03, -1.304321693921345294e-03, -1.310783952473694360e-03, -1.317243777659083456e-03, -1.323701159100067800e-03, -1.330156086423515353e-03, -1.336608549260983030e-03, -1.343058537248524370e-03, -1.349506040026480710e-03, -1.355951047240000961e-03, -1.362393548538503403e-03, -1.368833533576159023e-03, -1.375270992011723469e-03, -1.381705913508331045e-03, -1.388138287733938587e-03, -1.394568104361111009e-03, -1.400995353066863220e-03, -1.407420023532994068e-03, -1.413842105446266742e-03, -1.420261588497416950e-03, -1.426678462382752329e-03, -1.433092716802435943e-03, -1.439504341462092846e-03, -1.445913326071812622e-03, -1.452319660346320686e-03, -1.458723334005346695e-03, -1.465124336773415952e-03, -1.471522658379673110e-03, -1.477918288558379171e-03, -1.484311217048365052e-03, -1.490701433593555033e-03, -1.497088927942757074e-03, -1.503473689849460721e-03, -1.509855709072229803e-03, -1.516234975374851184e-03, -1.522611478525339465e-03, -1.528985208297410853e-03, -1.535356154469465738e-03, -1.541724306824776916e-03, -1.548089655151908958e-03, -1.554452189244189984e-03, -1.560811898900203026e-03, -1.567168773923603448e-03, -1.573522804122919234e-03, -1.579873979311988575e-03, -1.586222289309775768e-03, -1.592567723940145922e-03, -1.598910273032418767e-03, -1.605249926420781017e-03, -1.611586673944830420e-03, -1.617920505449340490e-03, -1.624251410784107634e-03, -1.630579379804287252e-03, -1.636904402370574149e-03, -1.643226468348214829e-03, -1.649545567608438424e-03, -1.655861690027493052e-03, -1.662174825486798044e-03, -1.668484963873378924e-03, -1.674792095079325306e-03, -1.681096209002297870e-03, -1.687397295545332333e-03, -1.693695344616654276e-03, -1.699990346130098506e-03, -1.706282290004934501e-03, -1.712571166165648487e-03, -1.718856964542482720e-03, -1.725139675070854568e-03, -1.731419287691826191e-03, -1.737695792352231174e-03, -1.743969179003736257e-03, -1.750239437604242995e-03, -1.756506558116920427e-03, -1.762770530510378774e-03, -1.769031344759012473e-03, -1.775288990842822153e-03, -1.781543458747214493e-03, -1.787794738463522205e-03, -1.794042819988424632e-03, -1.800287693324498315e-03, -1.806529348479990168e-03, -1.812767775468636204e-03, -1.819002964310101507e-03, -1.825234905029767289e-03, -1.831463587658577153e-03, -1.837689002233482485e-03, -1.843911138796958680e-03, -1.850129987397401959e-03, -1.856345538089291137e-03, -1.862557780932249784e-03, -1.868766705992426632e-03, -1.874972303341553622e-03, -1.881174563057087714e-03, -1.887373475222600770e-03, -1.893569029927546664e-03, -1.899761217267112749e-03, -1.905950027342680642e-03, -1.912135450261317950e-03, -1.918317476136262908e-03, -1.924496095086745484e-03, -1.930671297237775315e-03, -1.936843072720515098e-03, -1.943011411672447781e-03, -1.949176304236403595e-03, -1.955337740562100926e-03, -1.961495710804508300e-03, -1.967650205125381566e-03, -1.973801213692379618e-03, -1.979948726678862521e-03, -1.986092734264962266e-03, -1.992233226636695026e-03, -1.998370193986087357e-03, -2.004503626511584292e-03, -2.010633514417824695e-03, -2.016759847915462148e-03, -2.022882617221655448e-03, -2.029001812559542983e-03, -2.035117424158727154e-03, -2.041229442255105241e-03, -2.047337857090647355e-03, -2.053442658913788056e-03, -2.059543837979557323e-03, -2.065641384548637296e-03, -2.071735288888771741e-03, -2.077825541273785499e-03, -2.083912131983762725e-03, -2.089995051305477535e-03, -2.096074289531825886e-03, -2.102149836962378948e-03, -2.108221683903129407e-03, -2.114289820666346176e-03, -2.120354237570982493e-03, -2.126414924942490736e-03, -2.132471873112638978e-03, -2.138525072419981098e-03, -2.144574513209348068e-03, -2.150620185832276873e-03, -2.156662080647138435e-03, -2.162700188018221691e-03, -2.168734498317104013e-03, -2.174765001921762173e-03, -2.180791689216422715e-03, -2.186814550592558557e-03, -2.192833576448051120e-03, -2.198848757187324768e-03, -2.204860083221761406e-03, -2.210867544969200016e-03, -2.216871132854395920e-03, -2.222870837308860755e-03, -2.228866648770660378e-03, -2.234858557684817754e-03, -2.240846554503174177e-03, -2.246830629684149882e-03, -2.252810773693258821e-03, -2.258786977002590849e-03, -2.264759230091207675e-03, -2.270727523445300721e-03, -2.276691847557292536e-03, -2.282652192927145211e-03, -2.288608550061466563e-03, -2.294560909473674064e-03, -2.300509261684319674e-03, -2.306453597220886435e-03, -2.312393906617653608e-03, -2.318330180416153328e-03, -2.324262409164628944e-03, -2.330190583418564106e-03, -2.336114693740454218e-03, -2.342034730699648574e-03, -2.347950684872692536e-03, -2.353862546843463709e-03, -2.359770307202278122e-03, -2.365673956547338294e-03, -2.371573485483185854e-03, -2.377468884622144837e-03, -2.383360144583502888e-03, -2.389247255993316547e-03, -2.395130209485410010e-03, -2.401008995700538561e-03, -2.406883605286530819e-03, -2.412754028898656498e-03, -2.418620257199399163e-03, -2.424482280858316578e-03, -2.430340090552487835e-03, -2.436193676966026764e-03, -2.442043030790527324e-03, -2.447888142724906173e-03, -2.453729003475204045e-03, -2.459565603754939201e-03, -2.465397934285255745e-03, -2.471225985794005525e-03, -2.477049749017208764e-03, -2.482869214697527947e-03, -2.488684373585658190e-03, -2.494495216439489380e-03, -2.500301734024228464e-03, -2.506103917112716909e-03, -2.511901756485294089e-03, -2.517695242929584784e-03, -2.523484367240900767e-03, -2.529269120222091185e-03, -2.535049492683341330e-03, -2.540825475442626269e-03, -2.546597059325249410e-03, -2.552364235164203323e-03, -2.558126993800334970e-03, -2.563885326081449725e-03, -2.569639222863624121e-03, -2.575388675010373187e-03, -2.581133673392471337e-03, -2.586874208889077768e-03, -2.592610272386232460e-03, -2.598341854778343698e-03, -2.604068946967247420e-03, -2.609791539862377652e-03, -2.615509624381107383e-03, -2.621223191448532157e-03, -2.626932231997363820e-03, -2.632636736968249278e-03, -2.638336697309641259e-03, -2.644032103977613565e-03, -2.649722947936302558e-03, -2.655409220157441824e-03, -2.661090911620742506e-03, -2.666768013314025580e-03, -2.672440516232355359e-03, -2.678108411379345744e-03, -2.683771689766223031e-03, -2.689430342412064013e-03, -2.695084360344084801e-03, -2.700733734597232302e-03, -2.706378456214588411e-03, -2.712018516247223423e-03, -2.717653905754013020e-03, -2.723284615802022083e-03, -2.728910637466331647e-03, -2.734531961829896659e-03, -2.740148579983810954e-03, -2.745760483027512820e-03, -2.751367662067872102e-03, -2.756970108220609204e-03, -2.762567812608863072e-03, -2.768160766364272368e-03, -2.773748960626786376e-03, -2.779332386543876144e-03, -2.784911035271814706e-03, -2.790484897974788037e-03, -2.796053965825053781e-03, -2.801618230003260004e-03, -2.807177681698261318e-03, -2.812732312106975760e-03, -2.818282112434802433e-03, -2.823827073895156595e-03, -2.829367187709906379e-03, -2.834902445109218402e-03, -2.840432837331368678e-03, -2.845958355623061809e-03, -2.851478991239605760e-03, -2.856994735444001992e-03, -2.862505579508375746e-03, -2.868011514712456855e-03, -2.873512532344992248e-03, -2.879008623702880749e-03, -2.884499780091296251e-03, -2.889985992824038990e-03, -2.895467253223342995e-03, -2.900943552619691772e-03, -2.906414882352248517e-03, -2.911881233768633635e-03, -2.917342598224798543e-03, -2.922798967085421615e-03, -2.928250331723480579e-03, -2.933696683520588613e-03, -2.939138013867173462e-03, -2.944574314161594892e-03, -2.950005575811411040e-03, -2.955431790232574372e-03, -2.960852948849289432e-03, -2.966269043095026356e-03, -2.971680064411171690e-03, -2.977086004248351552e-03, -2.982486854065618913e-03, -2.987882605330558980e-03, -2.993273249519625302e-03, -2.998658778117980605e-03, -3.004039182619311181e-03, -3.009414454526194212e-03, -3.014784585349949021e-03, -3.020149566610490915e-03, -3.025509389836697656e-03, -3.030864046566015668e-03, -3.036213528344779665e-03, -3.041557826728385691e-03, -3.046896933280436766e-03, -3.052230839573968901e-03, -3.057559537190619736e-03, -3.062883017720766446e-03, -3.068201272763892637e-03, -3.073514293928129512e-03, -3.078822072830683480e-03, -3.084124601097660082e-03, -3.089421870363927812e-03, -3.094713872273462032e-03, -3.100000598479166723e-03, -3.105282040642764335e-03, -3.110558190435052522e-03, -3.115829039536046827e-03, -3.121094579634195714e-03, -3.126354802427646056e-03, -3.131609699622938184e-03, -3.136859262936012027e-03, -3.142103484092022368e-03, -3.147342354824616759e-03, -3.152575866877089551e-03, -3.157804012001616881e-03, -3.163026781959350775e-03, -3.168244168520796458e-03, -3.173456163465362620e-03, -3.178662758581775154e-03, -3.183863945667904111e-03, -3.189059716530646613e-03, -3.194250062986223049e-03, -3.199434976860069963e-03, -3.204614449986653568e-03, -3.209788474209770721e-03, -3.214957041382705480e-03, -3.220120143367379527e-03, -3.225277772035697443e-03, -3.230429919268138547e-03, -3.235576576955023244e-03, -3.240717736995760590e-03, -3.245853391298940665e-03, -3.250983531782674144e-03, -3.256108150374376758e-03, -3.261227239010672154e-03, -3.266340789637743169e-03, -3.271448794210954965e-03, -3.276551244695198074e-03, -3.281648133064770864e-03, -3.286739451303232959e-03, -3.291825191403656772e-03, -3.296905345368793608e-03, -3.301979905210334666e-03, -3.307048862949760193e-03, -3.312112210618218915e-03, -3.317169940255752618e-03, -3.322222043912609769e-03, -3.327268513647844289e-03, -3.332309341530633948e-03, -3.337344519639436850e-03, -3.342374040062150164e-03, -3.347397894896441458e-03, -3.352416076249503229e-03, -3.357428576237961836e-03, -3.362435386988289927e-03, -3.367436500636320287e-03, -3.372431909327692958e-03, -3.377421605217676131e-03, -3.382405580471014358e-03, -3.387383827262244705e-03, -3.392356337775773948e-03, -3.397323104205165166e-03, -3.402284118754203730e-03, -3.407239373636192573e-03, -3.412188861074024176e-03, -3.417132573300569152e-03, -3.422070502558189221e-03, -3.427002641099204279e-03, -3.431928981185674264e-03, -3.436849515089318054e-03, -3.441764235091762832e-03, -3.446673133484484675e-03, -3.451576202568592145e-03, -3.456473434655248263e-03, -3.461364822065241594e-03, -3.466250357129380035e-03, -3.471130032188333818e-03, -3.476003839592501071e-03, -3.480871771702259351e-03, -3.485733820888121774e-03, -3.490589979529974598e-03, -3.495440240018162729e-03, -3.500284594752756367e-03, -3.505123036143671569e-03, -3.509955556610999845e-03, -3.514782148584594430e-03, -3.519602804504451919e-03, -3.524417516820568721e-03, -3.529226277992784065e-03, -3.534029080491123478e-03, -3.538825916795651765e-03, -3.543616779396312980e-03, -3.548401660793212321e-03, -3.553180553496737559e-03, -3.557953450026819179e-03, -3.562720342914136879e-03, -3.567481224698814193e-03, -3.572236087931618918e-03, -3.576984925173257949e-03, -3.581727728994443631e-03, -3.586464491976222059e-03, -3.591195206709774448e-03, -3.595919865796304814e-03, -3.600638461847429413e-03, -3.605350987484725288e-03, -3.610057435340161772e-03, -3.614757798055882355e-03, -3.619452068284165647e-03, -3.624140238687576735e-03, -3.628822301939196165e-03, -3.633498250721849728e-03, -3.638168077728986226e-03, -3.642831775664490557e-03, -3.647489337242007610e-03, -3.652140755186147458e-03, -3.656786022231199498e-03, -3.661425131122306859e-03, -3.666058074614746056e-03, -3.670684845474054929e-03, -3.675305436476283306e-03, -3.679919840407870710e-03, -3.684528050065478087e-03, -3.689130058256382023e-03, -3.693725857798051040e-03, -3.698315441518557588e-03, -3.702898802256383327e-03, -3.707475932860310273e-03, -3.712046826189678832e-03, -3.716611475114491459e-03, -3.721169872514738276e-03, -3.725722011281390640e-03, -3.730267884315733706e-03, -3.734807484529437983e-03, -3.739340804844915392e-03, -3.743867838194929378e-03, -3.748388577522882882e-03, -3.752903015782792749e-03, -3.757411145939061180e-03, -3.761912960966812703e-03, -3.766408453851800061e-03, -3.770897617590168293e-03, -3.775380445188911832e-03, -3.779856929665437355e-03, -3.784327064047929377e-03, -3.788790841375201928e-03, -3.793248254696617028e-03, -3.797699297072241673e-03, -3.802143961573056005e-03, -3.806582241280229064e-03, -3.811014129286099776e-03, -3.815439618693530766e-03, -3.819858702616002466e-03, -3.824271374177921467e-03, -3.828677626514227599e-03, -3.833077452770767331e-03, -3.837470846104151095e-03, -3.841857799681601925e-03, -3.846238306681284622e-03, -3.850612360292135321e-03, -3.854979953713772584e-03, -3.859341080156809215e-03, -3.863695732842472794e-03, -3.868043905002955217e-03, -3.872385589881464744e-03, -3.876720780731585016e-03, -3.881049470818242163e-03, -3.885371653417063822e-03, -3.889687321814441160e-03, -3.893996469307846753e-03, -3.898299089205612116e-03, -3.902595174826884328e-03, -3.906884719501896655e-03, -3.911167716571651090e-03, -3.915444159388236679e-03, -3.919714041314689007e-03, -3.923977355724897823e-03, -3.928234096003842095e-03, -3.932484255547512818e-03, -3.936727827762756017e-03, -3.940964806067612757e-03, -3.945195183890945305e-03, -3.949418954672749386e-03, -3.953636111864257396e-03, -3.957846648927284411e-03, -3.962050559335155396e-03, -3.966247836572090249e-03, -3.970438474133298340e-03, -3.974622465525223976e-03, -3.978799804265391142e-03, -3.982970483882314165e-03, -3.987134497915823840e-03, -3.991291839916668444e-03, -3.995442503446899711e-03, -3.999586482079700231e-03, -4.003723769399282831e-03, -4.007854359001143847e-03, -4.011978244492107361e-03, -4.016095419489750136e-03, -4.020205877623406025e-03, -4.024309612533041002e-03, -4.028406617870330421e-03, -4.032496887298033655e-03, -4.036580414489850110e-03, -4.040657193131173830e-03, -4.044727216918442975e-03, -4.048790479559312427e-03, -4.052846974772818592e-03, -4.056896696289287452e-03, -4.060939637850233090e-03, -4.064975793208630041e-03, -4.069005156128592364e-03, -4.073027720385717122e-03, -4.077043479766923918e-03, -4.081052428070317852e-03, -4.085054559105498299e-03, -4.089049866693572795e-03, -4.093038344666584567e-03, -4.097019986868407661e-03, -4.100994787154125035e-03, -4.104962739390159536e-03, -4.108923837454481198e-03, -4.112878075236339227e-03, -4.116825446636527414e-03, -4.120765945567286120e-03, -4.124699565952162639e-03, -4.128626301726325172e-03, -4.132546146836373752e-03, -4.136459095240263041e-03, -4.140365140907624995e-03, -4.144264277819405436e-03, -4.148156499968140738e-03, -4.152041801358048040e-03, -4.155920176004445840e-03, -4.159791617934618761e-03, -4.163656121187187843e-03, -4.167513679812307435e-03, -4.171364287871749330e-03, -4.175207939438894088e-03, -4.179044628598567977e-03, -4.182874349447337006e-03, -4.186697096093225899e-03, -4.190512862655950549e-03, -4.194321643266873782e-03, -4.198123432068857908e-03, -4.201918223216483290e-03, -4.205706010876020598e-03, -4.209486789225233908e-03, -4.213260552453725050e-03, -4.217027294762606612e-03, -4.220787010364716180e-03, -4.224539693484780263e-03, -4.228285338358799342e-03, -4.232023939234873591e-03, -4.235755490372654711e-03, -4.239479986043453476e-03, -4.243197420530406272e-03, -4.246907788128412645e-03, -4.250611083143968766e-03, -4.254307299895518715e-03, -4.257996432713084117e-03, -4.261678475938602412e-03, -4.265353423925772464e-03, -4.269021271039986042e-03, -4.272682011658478739e-03, -4.276335640170508649e-03, -4.279982150976691102e-03, -4.283621538489977912e-03, -4.287253797134672056e-03, -4.290878921347320192e-03, -4.294496905576185297e-03, -4.298107744281162539e-03, -4.301711431934361271e-03, -4.305307963019623652e-03, -4.308897332032593161e-03, -4.312479533480891546e-03, -4.316054561884091062e-03, -4.319622411773524524e-03, -4.323183077692611433e-03, -4.326736554196525773e-03, -4.330282835852499596e-03, -4.333821917239720663e-03, -4.337353792949207552e-03, -4.340878457583971853e-03, -4.344395905759221126e-03, -4.347906132101677160e-03, -4.351409131250571702e-03, -4.354904897856617767e-03, -4.358393426582944652e-03, -4.361874712104509000e-03, -4.365348749108230106e-03, -4.368815532293141707e-03, -4.372275056370338205e-03, -4.375727316062820275e-03, -4.379172306105738599e-03, -4.382610021246340949e-03, -4.386040456243780507e-03, -4.389463605869462805e-03, -4.392879464906703120e-03, -4.396288028150990151e-03, -4.399689290410052807e-03, -4.403083246503357133e-03, -4.406469891262838369e-03, -4.409849219532462061e-03, -4.413221226168081816e-03, -4.416585906038089822e-03, -4.419943254022585047e-03, -4.423293265014175552e-03, -4.426635933917505775e-03, -4.429971255649273014e-03, -4.433299225138495440e-03, -4.436619837326340361e-03, -4.439933087166085188e-03, -4.443238969623277031e-03, -4.446537479675692801e-03, -4.449828612313215179e-03, -4.453112362538070267e-03, -4.456388725364563916e-03, -4.459657695819342800e-03, -4.462919268941399620e-03, -4.466173439781631616e-03, -4.469420203403562213e-03, -4.472659554882816267e-03, -4.475891489307243232e-03, -4.479116001777071546e-03, -4.482333087404716948e-03, -4.485542741314969828e-03, -4.488744958644936243e-03, -4.491939734543919961e-03, -4.495127064173621949e-03, -4.498306942708103079e-03, -4.501479365333618463e-03, -4.504644327248859444e-03, -4.507801823664988293e-03, -4.510951849805151619e-03, -4.514094400905291349e-03, -4.517229472213289514e-03, -4.520357058989767952e-03, -4.523477156507610397e-03, -4.526589760051862726e-03, -4.529694864920301087e-03, -4.532792466422964385e-03, -4.535882559882203728e-03, -4.538965140632934825e-03, -4.542040204022440228e-03, -4.545107745410383211e-03, -4.548167760168956089e-03, -4.551220243682684193e-03, -4.554265191348637505e-03, -4.557302598576348264e-03, -4.560332460787678253e-03, -4.563354773417079881e-03, -4.566369531911598778e-03, -4.569376731730395019e-03, -4.572376368345567980e-03, -4.575368437241296785e-03, -4.578352933914576692e-03, -4.581329853874822715e-03, -4.584299192643871354e-03, -4.587260945756187897e-03, -4.590215108758786619e-03, -4.593161677211092878e-03, -4.596100646685187703e-03, -4.599032012765720198e-03, -4.601955771049770494e-03, -4.604871917147135979e-03, -4.607780446680041601e-03, -4.610681355283358443e-03, -4.613574638604677446e-03, -4.616460292303856648e-03, -4.619338312053646554e-03, -4.622208693539340586e-03, -4.625071432458632836e-03, -4.627926524522192261e-03, -4.630773965452918486e-03, -4.633613750986646102e-03, -4.636445876871759554e-03, -4.639270338869182740e-03, -4.642087132752594110e-03, -4.644896254308336463e-03, -4.647697699335292046e-03, -4.650491463645134958e-03, -4.653277543062197576e-03, -4.656055933423392489e-03, -4.658826630578446690e-03, -4.661589630389661315e-03, -4.664344928732087718e-03, -4.667092521493608134e-03, -4.669832404574483786e-03, -4.672564573888057446e-03, -4.675289025360201793e-03, -4.678005754929498092e-03, -4.680714758547385376e-03, -4.683416032177887232e-03, -4.686109571797890221e-03, -4.688795373397032853e-03, -4.691473432977612788e-03, -4.694143746554773310e-03, -4.696806310156448686e-03, -4.699461119823240135e-03, -4.702108171608598841e-03, -4.704747461578870187e-03, -4.707378985812911247e-03, -4.710002740402715292e-03, -4.712618721452771671e-03, -4.715226925080549802e-03, -4.717827347416405498e-03, -4.720419984603273049e-03, -4.723004832797128398e-03, -4.725581888166728931e-03, -4.728151146893579647e-03, -4.730712605172176025e-03, -4.733266259209696104e-03, -4.735812105226297995e-03, -4.738350139454993240e-03, -4.740880358141573089e-03, -4.743402757544777637e-03, -4.745917333936235973e-03, -4.748424083600354291e-03, -4.750923002834501509e-03, -4.753414087949056101e-03, -4.755897335266999308e-03, -4.758372741124538771e-03, -4.760840301870497039e-03, -4.763300013866865815e-03, -4.765751873488432988e-03, -4.768195877122878915e-03, -4.770632021170891773e-03, -4.773060302046086903e-03, -4.775480716174942616e-03, -4.777893259996991888e-03, -4.780297929964615923e-03, -4.782694722543212422e-03, -4.785083634211173900e-03, -4.787464661459749776e-03, -4.789837800793231987e-03, -4.792203048728981875e-03, -4.794560401797092787e-03, -4.796909856540900949e-03, -4.799251409516639387e-03, -4.801585057293426655e-03, -4.803910796453613775e-03, -4.806228623592284643e-03, -4.808538535317766899e-03, -4.810840528251334423e-03, -4.813134599027205605e-03, -4.815420744292694261e-03, -4.817698960708187948e-03, -4.819969244946975366e-03, -4.822231593695538651e-03, -4.824486003653270620e-03, -4.826732471532708089e-03, -4.828970994059434731e-03, -4.831201567972019488e-03, -4.833424190022140611e-03, -4.835638856974659380e-03, -4.837845565607245407e-03, -4.840044312710905725e-03, -4.842235095089630903e-03, -4.844417909560437552e-03, -4.846592752953542659e-03, -4.848759622112166698e-03, -4.850918513892693226e-03, -4.853069425164607299e-03, -4.855212352810449501e-03, -4.857347293725930437e-03, -4.859474244819897773e-03, -4.861593203014199192e-03, -4.863704165243997249e-03, -4.865807128457402472e-03, -4.867902089615761332e-03, -4.869989045693617208e-03, -4.872067993678501352e-03, -4.874138930571171417e-03, -4.876201853385653956e-03, -4.878256759148876659e-03, -4.880303644901175762e-03, -4.882342507695959510e-03, -4.884373344599726371e-03, -4.886396152692304429e-03, -4.888410929066549539e-03, -4.890417670828597733e-03, -4.892416375097767209e-03, -4.894407039006510619e-03, -4.896389659700515692e-03, -4.898364234338688748e-03, -4.900330760093053219e-03, -4.902289234148905772e-03, -4.904239653704847539e-03, -4.906182015972437166e-03, -4.908116318176742460e-03, -4.910042557555799152e-03, -4.911960731361054121e-03, -4.913870836857135542e-03, -4.915772871321832070e-03, -4.917666832046246363e-03, -4.919552716334725691e-03, -4.921430521504798622e-03, -4.923300244887314665e-03, -4.925161883826308963e-03, -4.927015435679121987e-03, -4.928860897816363107e-03, -4.930698267621824726e-03, -4.932527542492652281e-03, -4.934348719839296536e-03, -4.936161797085312358e-03, -4.937966771667667495e-03, -4.939763641036673189e-03, -4.941552402655684934e-03, -4.943333054001653251e-03, -4.945105592564513937e-03, -4.946870015847738833e-03, -4.948626321368026180e-03, -4.950374506655284140e-03, -4.952114569252850235e-03, -4.953846506717337825e-03, -4.955570316618594477e-03, -4.957285996539917937e-03, -4.958993544077783776e-03, -4.960692956842097795e-03, -4.962384232456066788e-03, -4.964067368556169917e-03, -4.965742362792255858e-03, -4.967409212827606120e-03, -4.969067916338614985e-03, -4.970718471015237935e-03, -4.972360874560676804e-03, -4.973995124691458700e-03, -4.975621219137532289e-03, -4.977239155642119474e-03, -4.978848931961875855e-03, -4.980450545866791853e-03, -4.982043995140170156e-03, -4.983629277578741079e-03, -4.985206390992609655e-03, -4.986775333205181043e-03, -4.988336102053315783e-03, -4.989888695387191021e-03, -4.991433111070393315e-03, -4.992969346979932513e-03, -4.994497401006081291e-03, -4.996017271052624956e-03, -4.997528955036740876e-03, -4.999032450888856241e-03, -5.000527756552970715e-03, -5.002014869986405772e-03, -5.003493789159841124e-03, -5.004964512057470845e-03, -5.006427036676767452e-03, -5.007881361028714354e-03, -5.009327483137687026e-03, -5.010765401041433059e-03, -5.012195112791162366e-03, -5.013616616451505546e-03, -5.015029910100477460e-03, -5.016434991829583044e-03, -5.017831859743668126e-03, -5.019220511961054731e-03, -5.020600946613572313e-03, -5.021973161846328762e-03, -5.023337155817999243e-03, -5.024692926700657057e-03, -5.026040472679797928e-03, -5.027379791954381637e-03, -5.028710882736829417e-03, -5.030033743252970181e-03, -5.031348371742152409e-03, -5.032654766457080216e-03, -5.033952925663996367e-03, -5.035242847642592938e-03, -5.036524530685975755e-03, -5.037797973100735516e-03, -5.039063173206993762e-03, -5.040320129338206855e-03, -5.041568839841414906e-03, -5.042809303077047493e-03, -5.044041517419061565e-03, -5.045265481254929303e-03, -5.046481192985438624e-03, -5.047688651025037526e-03, -5.048887853801569542e-03, -5.050078799756337923e-03, -5.051261487344186306e-03, -5.052435915033423250e-03, -5.053602081305833514e-03, -5.054759984656691067e-03, -5.055909623594792048e-03, -5.057050996642380170e-03, -5.058184102335260349e-03, -5.059308939222653852e-03, -5.060425505867314523e-03, -5.061533800845592970e-03, -5.062633822747133854e-03, -5.063725570175307833e-03, -5.064809041746808245e-03, -5.065884236091962485e-03, -5.066951151854548127e-03, -5.068009787691869251e-03, -5.069060142274740832e-03, -5.070102214287476594e-03, -5.071136002427928911e-03, -5.072161505407443705e-03, -5.073178721950922891e-03, -5.074187650796715097e-03, -5.075188290696779590e-03, -5.076180640416529284e-03, -5.077164698734920947e-03, -5.078140464444464743e-03, -5.079107936351156573e-03, -5.080067113274513643e-03, -5.081017994047664667e-03, -5.081960577517138228e-03, -5.082894862543103041e-03, -5.083820847999223104e-03, -5.084738532772668101e-03, -5.085647915764196676e-03, -5.086548995888051476e-03, -5.087441772072041554e-03, -5.088326243257532827e-03, -5.089202408399370881e-03, -5.090070266465991991e-03, -5.090929816439363279e-03, -5.091781057314961889e-03, -5.092623988101874742e-03, -5.093458607822673630e-03, -5.094284915513485473e-03, -5.095102910224037426e-03, -5.095912591017498147e-03, -5.096713956970683364e-03, -5.097507007173937045e-03, -5.098291740731110584e-03, -5.099068156759623514e-03, -5.099836254390478253e-03, -5.100596032768204592e-03, -5.101347491050876176e-03, -5.102090628410118310e-03, -5.102825444031157398e-03, -5.103551937112709054e-03, -5.104270106867102134e-03, -5.104979952520172920e-03, -5.105681473311356189e-03, -5.106374668493611491e-03, -5.107059537333480392e-03, -5.107736079111033570e-03, -5.108404293119936726e-03, -5.109064178667421102e-03, -5.109715735074200210e-03, -5.110358961674651111e-03, -5.110993857816648750e-03, -5.111620422861637945e-03, -5.112238656184650738e-03, -5.112848557174245676e-03, -5.113450125232583271e-03, -5.114043359775335799e-03, -5.114628260231777503e-03, -5.115204826044742956e-03, -5.115773056670642679e-03, -5.116332951579395487e-03, -5.116884510254532566e-03, -5.117427732193187938e-03, -5.117962616905929324e-03, -5.118489163917029627e-03, -5.119007372764245757e-03, -5.119517242998925313e-03, -5.120018774185994444e-03, -5.120511965903903201e-03, -5.120996817744696665e-03, -5.121473329313998464e-03, -5.121941500230960467e-03, -5.122401330128314827e-03, -5.122852818652387855e-03, -5.123295965463021961e-03, -5.123730770233666729e-03, -5.124157232651293907e-03, -5.124575352416478949e-03, -5.124985129243355038e-03, -5.125386562859599211e-03, -5.125779653006459248e-03, -5.126164399438786629e-03, -5.126540801924923778e-03, -5.126908860246841976e-03, -5.127268574200036406e-03, -5.127619943593598149e-03, -5.127962968250141321e-03, -5.128297648005872462e-03, -5.128623982710549777e-03, -5.128941972227486594e-03, -5.129251616433572192e-03, -5.129552915219244905e-03, -5.129845868488525952e-03, -5.130130476158938774e-03, -5.130406738161633062e-03, -5.130674654441285017e-03, -5.130934224956133771e-03, -5.131185449677964916e-03, -5.131428328592134783e-03, -5.131662861697565241e-03, -5.131889049006703798e-03, -5.132106890545579982e-03, -5.132316386353758496e-03, -5.132517536484387799e-03, -5.132710341004122906e-03, -5.132894799993225135e-03, -5.133070913545451086e-03, -5.133238681768150652e-03, -5.133398104782200232e-03, -5.133549182722045232e-03, -5.133691915735650625e-03, -5.133826303984583353e-03, -5.133952347643864871e-03, -5.134070046902167173e-03, -5.134179401961629780e-03, -5.134280413037951678e-03, -5.134373080360410402e-03, -5.134457404171779635e-03, -5.134533384728410740e-03, -5.134601022300165109e-03, -5.134660317170449718e-03, -5.134711269636224942e-03, -5.134753880007964649e-03, -5.134788148609706511e-03, -5.134814075778980878e-03, -5.134831661866894048e-03, -5.134840907238066680e-03, -5.134841812270619053e-03, -5.134834377356261269e-03, -5.134818602900176158e-03, -5.134794489321101683e-03, -5.134762037051294505e-03, -5.134721246536539524e-03, -5.134672118236133405e-03, -5.134614652622905388e-03, -5.134548850183179129e-03, -5.134474711416853361e-03, -5.134392236837270924e-03, -5.134301426971338463e-03, -5.134202282359456165e-03, -5.134094803555562872e-03, -5.133978991127071019e-03, -5.133854845654911743e-03, -5.133722367733566105e-03, -5.133581557970954071e-03, -5.133432416988538589e-03, -5.133274945421285700e-03, -5.133109143917657588e-03, -5.132935013139603916e-03, -5.132752553762586108e-03, -5.132561766475571274e-03, -5.132362651980987983e-03, -5.132155210994790440e-03, -5.131939444246409049e-03, -5.131715352478751282e-03, -5.131482936448237241e-03, -5.131242196924738069e-03, -5.130993134691647951e-03, -5.130735750545809513e-03, -5.130470045297565868e-03, -5.130196019770731121e-03, -5.129913674802580835e-03, -5.129623011243878913e-03, -5.129324029958881072e-03, -5.129016731825273255e-03, -5.128701117734201995e-03, -5.128377188590331655e-03, -5.128044945311744686e-03, -5.127704388830010146e-03, -5.127355520090135996e-03, -5.126998340050594252e-03, -5.126632849683329662e-03, -5.126259049973706794e-03, -5.125876941920552536e-03, -5.125486526536170845e-03, -5.125087804846244731e-03, -5.124680777889978507e-03, -5.124265446719965950e-03, -5.123841812402251013e-03, -5.123409876016311350e-03, -5.122969638655082598e-03, -5.122521101424875982e-03, -5.122064265445506678e-03, -5.121599131850179329e-03, -5.121125701785480232e-03, -5.120643976411481425e-03, -5.120153956901666095e-03, -5.119655644442879135e-03, -5.119149040235458983e-03, -5.118634145493091911e-03, -5.118110961442905692e-03, -5.117579489325408890e-03, -5.117039730394534226e-03, -5.116491685917628172e-03, -5.115935357175394570e-03, -5.115370745461972693e-03, -5.114797852084859188e-03, -5.114216678364971388e-03, -5.113627225636586601e-03, -5.113029495247399352e-03, -5.112423488558437250e-03, -5.111809206944168543e-03, -5.111186651792377217e-03, -5.110555824504260138e-03, -5.109916726494394094e-03, -5.109269359190662073e-03, -5.108613724034352134e-03, -5.107949822480138333e-03, -5.107277655995993981e-03, -5.106597226063317417e-03, -5.105908534176781949e-03, -5.105211581844456420e-03, -5.104506370587766177e-03, -5.103792901941452305e-03, -5.103071177453587237e-03, -5.102341198685620728e-03, -5.101602967212313065e-03, -5.100856484621715120e-03, -5.100101752515281972e-03, -5.099338772507733264e-03, -5.098567546227170295e-03, -5.097788075314920765e-03, -5.097000361425683621e-03, -5.096204406227498700e-03, -5.095400211401643516e-03, -5.094587778642739075e-03, -5.093767109658700436e-03, -5.092938206170743651e-03, -5.092101069913371886e-03, -5.091255702634387564e-03, -5.090402106094862877e-03, -5.089540282069171008e-03, -5.088670232344956641e-03, -5.087791958723124688e-03, -5.086905463017913145e-03, -5.086010747056747376e-03, -5.085107812680363278e-03, -5.084196661742783861e-03, -5.083277296111195220e-03, -5.082349717666194595e-03, -5.081413928301471185e-03, -5.080469929924031659e-03, -5.079517724454149855e-03, -5.078557313825297383e-03, -5.077588699984185265e-03, -5.076611884890805566e-03, -5.075626870518296953e-03, -5.074633658853112961e-03, -5.073632251894855463e-03, -5.072622651656374416e-03, -5.071604860163744441e-03, -5.070578879456226658e-03, -5.069544711586264352e-03, -5.068502358619585320e-03, -5.067451822635025797e-03, -5.066393105724664898e-03, -5.065326209993752625e-03, -5.064251137560724612e-03, -5.063167890557218609e-03, -5.062076471128030240e-03, -5.060976881431107806e-03, -5.059869123637627739e-03, -5.058753199931871440e-03, -5.057629112511302476e-03, -5.056496863586559636e-03, -5.055356455381396219e-03, -5.054207890132750292e-03, -5.053051170090715194e-03, -5.051886297518414642e-03, -5.050713274692261202e-03, -5.049532103901722101e-03, -5.048342787449339175e-03, -5.047145327650897143e-03, -5.045939726835209360e-03, -5.044725987344184613e-03, -5.043504111532939871e-03, -5.042274101769619009e-03, -5.041035960435487351e-03, -5.039789689924897842e-03, -5.038535292645296253e-03, -5.037272771017249802e-03, -5.036002127474344808e-03, -5.034723364463276896e-03, -5.033436484443845789e-03, -5.032141489888876384e-03, -5.030838383284205739e-03, -5.029527167128901646e-03, -5.028207843934885332e-03, -5.026880416227289677e-03, -5.025544886544179926e-03, -5.024201257436695066e-03, -5.022849531469048695e-03, -5.021489711218450960e-03, -5.020121799275106822e-03, -5.018745798242326209e-03, -5.017361710736329729e-03, -5.015969539386452500e-03, -5.014569286834975013e-03, -5.013160955737170840e-03, -5.011744548761351732e-03, -5.010320068588808642e-03, -5.008887517913755347e-03, -5.007446899443514059e-03, -5.005998215898284712e-03, -5.004541470011232562e-03, -5.003076664528580131e-03, -5.001603802209392963e-03, -5.000122885825826827e-03, -4.998633918162853629e-03, -4.997136902018469579e-03, -4.995631840203609321e-03, -4.994118735542119915e-03, -4.992597590870769507e-03, -4.991068409039301976e-03, -4.989531192910329378e-03, -4.987985945359416952e-03, -4.986432669274999847e-03, -4.984871367558452518e-03, -4.983302043124043616e-03, -4.981724698898921250e-03, -4.980139337823073949e-03, -4.978545962849521486e-03, -4.976944576943996557e-03, -4.975335183085177228e-03, -4.973717784264633165e-03, -4.972092383486727621e-03, -4.970458983768760546e-03, -4.968817588140815936e-03, -4.967168199645838160e-03, -4.965510821339638031e-03, -4.963845456290830356e-03, -4.962172107580842609e-03, -4.960490778303999933e-03, -4.958801471567325647e-03, -4.957104190490792782e-03, -4.955398938207089023e-03, -4.953685717861645334e-03, -4.951964532612861472e-03, -4.950235385631800676e-03, -4.948498280102275534e-03, -4.946753219221028397e-03, -4.945000206197398308e-03, -4.943239244253590757e-03, -4.941470336624560582e-03, -4.939693486557980746e-03, -4.937908697314329944e-03, -4.936115972166778970e-03, -4.934315314401221952e-03, -4.932506727316332724e-03, -4.930690214223503245e-03, -4.928865778446769874e-03, -4.927033423322984239e-03, -4.925193152201621551e-03, -4.923344968444937596e-03, -4.921488875427810009e-03, -4.919624876537776435e-03, -4.917752975175210609e-03, -4.915873174752991882e-03, -4.913985478696709062e-03, -4.912089890444716785e-03, -4.910186413447905664e-03, -4.908275051169853215e-03, -4.906355807086822986e-03, -4.904428684687647463e-03, -4.902493687473867719e-03, -4.900550818959588557e-03, -4.898600082671543572e-03, -4.896641482149120296e-03, -4.894675020944284742e-03, -4.892700702621528494e-03, -4.890718530758116772e-03, -4.888728508943718069e-03, -4.886730640780719871e-03, -4.884724929884017020e-03, -4.882711379880988294e-03, -4.880689994411819069e-03, -4.878660777128986971e-03, -4.876623731697640914e-03, -4.874578861795500484e-03, -4.872526171112736247e-03, -4.870465663352116330e-03, -4.868397342228911878e-03, -4.866321211470868435e-03, -4.864237274818342116e-03, -4.862145536024068022e-03, -4.860045998853349328e-03, -4.857938667083968806e-03, -4.855823544506226129e-03, -4.853700634922740106e-03, -4.851569942148854613e-03, -4.849431470012127710e-03, -4.847285222352773135e-03, -4.845131203023293406e-03, -4.842969415888701869e-03, -4.840799864826486262e-03, -4.838622553726501171e-03, -4.836437486491011392e-03, -4.834244667034779536e-03, -4.832044099284902097e-03, -4.829835787180853691e-03, -4.827619734674607616e-03, -4.825395945730415539e-03, -4.823164424324967101e-03, -4.820925174447335260e-03, -4.818678200098862677e-03, -4.816423505293392429e-03, -4.814161094057026885e-03, -4.811890970428151990e-03, -4.809613138457703545e-03, -4.807327602208716182e-03, -4.805034365756633875e-03, -4.802733433189270047e-03, -4.800424808606673123e-03, -4.798108496121251433e-03, -4.795784499857640507e-03, -4.793452823952788940e-03, -4.791113472555960130e-03, -4.788766449828642940e-03, -4.786411759944578584e-03, -4.784049407089838689e-03, -4.781679395462657897e-03, -4.779301729273595194e-03, -4.776916412745398598e-03, -4.774523450112952254e-03, -4.772122845623599091e-03, -4.769714603536642089e-03, -4.767298728123703366e-03, -4.764875223668647852e-03, -4.762444094467430632e-03, -4.760005344828230518e-03, -4.757558979071455259e-03, -4.755105001529566326e-03, -4.752643416547297495e-03, -4.750174228481456214e-03, -4.747697441701016416e-03, -4.745213060587110711e-03, -4.742721089533007833e-03, -4.740221532943963458e-03, -4.737714395237576682e-03, -4.735199680843352882e-03, -4.732677394203043710e-03, -4.730147539770394698e-03, -4.727610122011171277e-03, -4.725065145403452814e-03, -4.722512614437118263e-03, -4.719952533614216530e-03, -4.717384907448926579e-03, -4.714809740467343184e-03, -4.712227037207638268e-03, -4.709636802220059162e-03, -4.707039040066765545e-03, -4.704433755322082709e-03, -4.701820952572199723e-03, -4.699200636415317746e-03, -4.696572811461737634e-03, -4.693937482333633560e-03, -4.691294653665084233e-03, -4.688644330102379083e-03, -4.685986516303442331e-03, -4.683321216938483508e-03, -4.680648436689359947e-03, -4.677968180249962755e-03, -4.675280452326185596e-03, -4.672585257635749473e-03, -4.669882600908245238e-03, -4.667172486885294916e-03, -4.664454920320276754e-03, -4.661729905978503896e-03, -4.658997448637187955e-03, -4.656257553085337529e-03, -4.653510224123914331e-03, -4.650755466565632823e-03, -4.647993285235052160e-03, -4.645223684968664661e-03, -4.642446670614701516e-03, -4.639662247033109373e-03, -4.636870419095912021e-03, -4.634071191686623195e-03, -4.631264569700839842e-03, -4.628450558045689618e-03, -4.625629161640149208e-03, -4.622800385415064273e-03, -4.619964234312896184e-03, -4.617120713287905034e-03, -4.614269827306126219e-03, -4.611411581345272424e-03, -4.608545980394748373e-03, -4.605673029455785265e-03, -4.602792733541159753e-03, -4.599905097675512262e-03, -4.597010126895078111e-03, -4.594107826247647609e-03, -4.591198200792986732e-03, -4.588281255602209147e-03, -4.585356995758214232e-03, -4.582425426355596007e-03, -4.579486552500438429e-03, -4.576540379310669281e-03, -4.573586911915570978e-03, -4.570626155456167412e-03, -4.567658115085104255e-03, -4.564682795966568292e-03, -4.561700203276287426e-03, -4.558710342201677257e-03, -4.555713217941624246e-03, -4.552708835706523877e-03, -4.549697200718455861e-03, -4.546678318210905720e-03, -4.543652193428975548e-03, -4.540618831629248710e-03, -4.537578238079679679e-03, -4.534530418060044206e-03, -4.531475376861293994e-03, -4.528413119785949618e-03, -4.525343652148115271e-03, -4.522266979273212480e-03, -4.519183106498230774e-03, -4.516092039171502176e-03, -4.512993782652825227e-03, -4.509888342313483206e-03, -4.506775723536100148e-03, -4.503655931714692015e-03, -4.500528972254785529e-03, -4.497394850573216071e-03, -4.494253572098059167e-03, -4.491105142269117938e-03, -4.487949566537114722e-03, -4.484786850364552366e-03, -4.481616999224941403e-03, -4.478440018603202510e-03, -4.475255913995795747e-03, -4.472064690910170642e-03, -4.468866354865251057e-03, -4.465660911391294667e-03, -4.462448366029731633e-03, -4.459228724333297311e-03, -4.456001991866063473e-03, -4.452768174203237082e-03, -4.449527276931420500e-03, -4.446279305648304439e-03, -4.443024265962847510e-03, -4.439762163495309180e-03, -4.436493003877104054e-03, -4.433216792750672638e-03, -4.429933535770022579e-03, -4.426643238599911601e-03, -4.423345906916669769e-03, -4.420041546407472641e-03, -4.416730162770724638e-03, -4.413411761716098079e-03, -4.410086348964259093e-03, -4.406753930246982108e-03, -4.403414511307293840e-03, -4.400068097899197464e-03, -4.396714695787757622e-03, -4.393354310749274759e-03, -4.389986948570924301e-03, -4.386612615051126152e-03, -4.383231315999275811e-03, -4.379843057235622075e-03, -4.376447844591855110e-03, -4.373045683910298069e-03, -4.369636581044434448e-03, -4.366220541858817014e-03, -4.362797572228811066e-03, -4.359367678041049798e-03, -4.355930865192808067e-03, -4.352487139592474234e-03, -4.349036507159444349e-03, -4.345578973823965158e-03, -4.342114545527180937e-03, -4.338643228221305236e-03, -4.335165027869316429e-03, -4.331679950445098230e-03, -4.328188001933550716e-03, -4.324689188330284144e-03, -4.321183515641948553e-03, -4.317670989885949266e-03, -4.314151617090408730e-03, -4.310625403294656571e-03, -4.307092354548464584e-03, -4.303552476912587098e-03, -4.300005776458657759e-03, -4.296452259268938867e-03, -4.292891931436645762e-03, -4.289324799065643255e-03, -4.285750868270578329e-03, -4.282170145176941722e-03, -4.278582635920877113e-03, -4.274988346649239226e-03, -4.271387283519749965e-03, -4.267779452700734728e-03, -4.264164860371084248e-03, -4.260543512720751588e-03, -4.256915415949941162e-03, -4.253280576269951804e-03, -4.249638999902371865e-03, -4.245990693079542376e-03, -4.242335662044711443e-03, -4.238673913051360306e-03, -4.235005452363765389e-03, -4.231330286256901156e-03, -4.227648421016133064e-03, -4.223959862937626090e-03, -4.220264618327958760e-03, -4.216562693504302684e-03, -4.212854094794476340e-03, -4.209138828536724761e-03, -4.205416901079839231e-03, -4.201688318783252697e-03, -4.197953088016801240e-03, -4.194211215160674640e-03, -4.190462706605963678e-03, -4.186707568753725121e-03, -4.182945808015992202e-03, -4.179177430814848271e-03, -4.175402443582959360e-03, -4.171620852763503924e-03, -4.167832664810013250e-03, -4.164037886186367984e-03, -4.160236523366996758e-03, -4.156428582836563072e-03, -4.152614071090249791e-03, -4.148792994633505871e-03, -4.144965359982127028e-03, -4.141131173662373696e-03, -4.137290442210756793e-03, -4.133443172173954447e-03, -4.129589370109364513e-03, -4.125729042584281442e-03, -4.121862196176389811e-03, -4.117988837473913512e-03, -4.114108973074899304e-03, -4.110222609588127553e-03, -4.106329753632225778e-03, -4.102430411836209892e-03, -4.098524590839407004e-03, -4.094612297291216028e-03, -4.090693537851255134e-03, -4.086768319189456287e-03, -4.082836647985735659e-03, -4.078898530930364849e-03, -4.074953974723642160e-03, -4.071002986076010556e-03, -4.067045571708145270e-03, -4.063081738350794204e-03, -4.059111492744626147e-03, -4.055134841640842258e-03, -4.051151791800262740e-03, -4.047162349994019859e-03, -4.043166523003339369e-03, -4.039164317619369643e-03, -4.035155740643410656e-03, -4.031140798886738777e-03, -4.027119499170588555e-03, -4.023091848326341806e-03, -4.019057853195265664e-03, -4.015017520628593253e-03, -4.010970857487664194e-03, -4.006917870643584602e-03, -4.002858566977613060e-03, -3.998792953380824085e-03, -3.994721036754075166e-03, -3.990642824008552338e-03, -3.986558322064901079e-03, -3.982467537853790103e-03, -3.978370478316053602e-03, -3.974267150401956591e-03, -3.970157561071822015e-03, -3.966041717295899771e-03, -3.961919626054072677e-03, -3.957791294336241578e-03, -3.953656729141972331e-03, -3.949515937480621575e-03, -3.945368926371466828e-03, -3.941215702843427204e-03, -3.937056273935173566e-03, -3.932890646695269034e-03, -3.928718828181913120e-03, -3.924540825462834170e-03, -3.920356645615955503e-03, -3.916166295728338090e-03, -3.911969782897284711e-03, -3.907767114229291315e-03, -3.903558296840736568e-03, -3.899343337857714455e-03, -3.895122244415846931e-03, -3.890895023660356344e-03, -3.886661682746239341e-03, -3.882422228837901276e-03, -3.878176669109527006e-03, -3.873925010744737416e-03, -3.869667260936717357e-03, -3.865403426888363528e-03, -3.861133515812005621e-03, -3.856857534929320017e-03, -3.852575491471979443e-03, -3.848287392680670247e-03, -3.843993245805741189e-03, -3.839693058107294076e-03, -3.835386836854383190e-03, -3.831074589326079541e-03, -3.826756322810431332e-03, -3.822432044605106674e-03, -3.818101762017303818e-03, -3.813765482363454511e-03, -3.809423212969420460e-03, -3.805074961170568353e-03, -3.800720734311470624e-03, -3.796360539746203820e-03, -3.791994384838083629e-03, -3.787622276959759417e-03, -3.783244223493324385e-03, -3.778860231830106532e-03, -3.774470309370522077e-03, -3.770074463524767609e-03, -3.765672701711822185e-03, -3.761265031360112171e-03, -3.756851459907404548e-03, -3.752431994800529361e-03, -3.748006643495704546e-03, -3.743575413458239288e-03, -3.739138312162596477e-03, -3.734695347092629059e-03, -3.730246525741155034e-03, -3.725791855610204647e-03, -3.721331344211047717e-03, -3.716864999063936026e-03, -3.712392827698428148e-03, -3.707914837653075030e-03, -3.703431036475332821e-03, -3.698941431722201686e-03, -3.694446030959427831e-03, -3.689944841761699963e-03, -3.685437871713208302e-03, -3.680925128406723010e-03, -3.676406619444191805e-03, -3.671882352436686616e-03, -3.667352335004077889e-03, -3.662816574775403650e-03, -3.658275079388528198e-03, -3.653727856490276982e-03, -3.649174913736553255e-03, -3.644616258792056623e-03, -3.640051899330382350e-03, -3.635481843034206115e-03, -3.630906097594863765e-03, -3.626324670712799750e-03, -3.621737570097193284e-03, -3.617144803465908044e-03, -3.612546378546112758e-03, -3.607942303073335792e-03, -3.603332584792095280e-03, -3.598717231455812824e-03, -3.594096250826558057e-03, -3.589469650675157497e-03, -3.584837438781376690e-03, -3.580199622933492171e-03, -3.575556210928759401e-03, -3.570907210572960011e-03, -3.566252629680606058e-03, -3.561592476075070568e-03, -3.556926757588294800e-03, -3.552255482060658141e-03, -3.547578657341712762e-03, -3.542896291289197863e-03, -3.538208391769761315e-03, -3.533514966658556772e-03, -3.528816023839144791e-03, -3.524111571204177184e-03, -3.519401616654376126e-03, -3.514686168099238027e-03, -3.509965233456906024e-03, -3.505238820653903270e-03, -3.500506937625286891e-03, -3.495769592314776353e-03, -3.491026792674374428e-03, -3.486278546664793934e-03, -3.481524862255042704e-03, -3.476765747422589682e-03, -3.472001210153507610e-03, -3.467231258442207177e-03, -3.462455900291291303e-03, -3.457675143712304108e-03, -3.452888996724524408e-03, -3.448097467356267196e-03, -3.443300563643689281e-03, -3.438498293631474939e-03, -3.433690665372777368e-03, -3.428877686928907733e-03, -3.424059366369498238e-03, -3.419235711772602732e-03, -3.414406731224436074e-03, -3.409572432819480813e-03, -3.404732824660597779e-03, -3.399887914858712099e-03, -3.395037711533188327e-03, -3.390182222811485239e-03, -3.385321456829049145e-03, -3.380455421730008646e-03, -3.375584125666338062e-03, -3.370707576798025705e-03, -3.365825783293707046e-03, -3.360938753329661185e-03, -3.356046495090464835e-03, -3.351149016768924238e-03, -3.346246326565715645e-03, -3.341338432689826797e-03, -3.336425343358129323e-03, -3.331507066795550039e-03, -3.326583611235227073e-03, -3.321654984918145145e-03, -3.316721196093313801e-03, -3.311782253017879745e-03, -3.306838163956779455e-03, -3.301888937183119956e-03, -3.296934580977864838e-03, -3.291975103629680727e-03, -3.287010513435742638e-03, -3.282040818700544815e-03, -3.277066027736753352e-03, -3.272086148864978509e-03, -3.267101190413580856e-03, -3.262111160718748470e-03, -3.257116068124689054e-03, -3.252115920983220977e-03, -3.247110727654197414e-03, -3.242100496505119934e-03, -3.237085235911252995e-03, -3.232064954255819099e-03, -3.227039659929694781e-03, -3.222009361331265760e-03, -3.216974066867152489e-03, -3.211933784951262992e-03, -3.206888524005473747e-03, -3.201838292459240672e-03, -3.196783098749485068e-03, -3.191722951321323502e-03, -3.186657858626992714e-03, -3.181587829126566493e-03, -3.176512871287850287e-03, -3.171432993586098883e-03, -3.166348204504149978e-03, -3.161258512532591144e-03, -3.156163926169338729e-03, -3.151064453920097118e-03, -3.145960104297932432e-03, -3.140850885823418242e-03, -3.135736807024825518e-03, -3.130617876437793035e-03, -3.125494102605203776e-03, -3.120365494077985500e-03, -3.115232059413828355e-03, -3.110093807178536656e-03, -3.104950745944768612e-03, -3.099802884292828659e-03, -3.094650230810502660e-03, -3.089492794092811145e-03, -3.084330582742122063e-03, -3.079163605368320789e-03, -3.073991870588466645e-03, -3.068815387026950330e-03, -3.063634163315610143e-03, -3.058448208093375933e-03, -3.053257530006660281e-03, -3.048062137708994635e-03, -3.042862039861135137e-03, -3.037657245131255169e-03, -3.032447762194640482e-03, -3.027233599733541742e-03, -3.022014766437973367e-03, -3.016791271004452390e-03, -3.011563122137328550e-03, -3.006330328547541370e-03, -3.001092898953384731e-03, -2.995850842080382843e-03, -2.990604166661011819e-03, -2.985352881434802028e-03, -2.980096995148572708e-03, -2.974836516556003067e-03, -2.969571454417824826e-03, -2.964301817501985726e-03, -2.959027614583200228e-03, -2.953748854443433505e-03, -2.948465545871514597e-03, -2.943177697663015846e-03, -2.937885318621047837e-03, -2.932588417555088891e-03, -2.927287003281769159e-03, -2.921981084624765673e-03, -2.916670670414354353e-03, -2.911355769488156373e-03, -2.906036390690152401e-03, -2.900712542871399045e-03, -2.895384234889936473e-03, -2.890051475610413284e-03, -2.884714273904340643e-03, -2.879372638650166873e-03, -2.874026578733005106e-03, -2.868676103044535269e-03, -2.863321220483676290e-03, -2.857961939955648047e-03, -2.852598270372669591e-03, -2.847230220653555396e-03, -2.841857799723583947e-03, -2.836481016515288341e-03, -2.831099879967304868e-03, -2.825714399025108532e-03, -2.820324582640974451e-03, -2.814930439773528567e-03, -2.809531979388260690e-03, -2.804129210457056119e-03, -2.798722141958387769e-03, -2.793310782877453640e-03, -2.787895142205833784e-03, -2.782475228941622570e-03, -2.777051052089621243e-03, -2.771622620661007026e-03, -2.766189943673204310e-03, -2.760753030150712561e-03, -2.755311889123751926e-03, -2.749866529629720838e-03, -2.744416960711830358e-03, -2.738963191419947676e-03, -2.733505230810460377e-03, -2.728043087945950743e-03, -2.722576771895363588e-03, -2.717106291734181032e-03, -2.711631656544042594e-03, -2.706152875412895682e-03, -2.700669957435188149e-03, -2.695182911711409019e-03, -2.689691747348578986e-03, -2.684196473459758616e-03, -2.678697099164297716e-03, -2.673193633587934645e-03, -2.667686085862515724e-03, -2.662174465125824365e-03, -2.656658780522459708e-03, -2.651139041202433665e-03, -2.645615256322668418e-03, -2.640087435045597800e-03, -2.634555586540035521e-03, -2.629019719981019049e-03, -2.623479844549507327e-03, -2.617935969432522159e-03, -2.612388103823338158e-03, -2.606836256921092436e-03, -2.601280437930970652e-03, -2.595720656064340586e-03, -2.590156920538333636e-03, -2.584589240576308424e-03, -2.579017625407486070e-03, -2.573442084266790164e-03, -2.567862626395695912e-03, -2.562279261040997184e-03, -2.556691997455640911e-03, -2.551100844898595253e-03, -2.545505812634393360e-03, -2.539906909933932217e-03, -2.534304146073406653e-03, -2.528697530335083463e-03, -2.523087072007175208e-03, -2.517472780383516254e-03, -2.511854664763729303e-03, -2.506232734453385427e-03, -2.500606998763635867e-03, -2.494977467011372501e-03, -2.489344148519392636e-03, -2.483707052615967067e-03, -2.478066188635307584e-03, -2.472421565917174487e-03, -2.466773193806750825e-03, -2.461121081655490671e-03, -2.455465238819860580e-03, -2.449805674662189174e-03, -2.444142398550539635e-03, -2.438475419858301182e-03, -2.432804747964700809e-03, -2.427130392254317568e-03, -2.421452362117293335e-03, -2.415770666949453374e-03, -2.410085316151977172e-03, -2.404396319131511632e-03, -2.398703685300380539e-03, -2.393007424076255829e-03, -2.387307544881986290e-03, -2.381604057146502647e-03, -2.375896970303374711e-03, -2.370186293792351812e-03, -2.364472037057914304e-03, -2.358754209550123580e-03, -2.353032820724759548e-03, -2.347307880042382583e-03, -2.341579396969115014e-03, -2.335847380976527072e-03, -2.330111841541217081e-03, -2.324372788145331013e-03, -2.318630230276053777e-03, -2.312884177425842108e-03, -2.307134639092565075e-03, -2.301381624779107269e-03, -2.295625143993557018e-03, -2.289865206249367281e-03, -2.284101821065055108e-03, -2.278334997963999548e-03, -2.272564746475380561e-03, -2.266791076132703645e-03, -2.261013996475370619e-03, -2.255233517047220727e-03, -2.249449647397414910e-03, -2.243662397080317845e-03, -2.237871775655118044e-03, -2.232077792686034713e-03, -2.226280457742505978e-03, -2.220479780398686240e-03, -2.214675770233978311e-03, -2.208868436832543778e-03, -2.203057789783493831e-03, -2.197243838681060997e-03, -2.191426593124267373e-03, -2.185606062716771974e-03, -2.179782257067762810e-03, -2.173955185790647174e-03, -2.168124858503947192e-03, -2.162291284831137188e-03, -2.156454474400199602e-03, -2.150614436844431633e-03, -2.144771181801339785e-03, -2.138924718913452587e-03, -2.133075057828200463e-03, -2.127222208197534527e-03, -2.121366179678146890e-03, -2.115506981931631562e-03, -2.109644624624007828e-03, -2.103779117426235034e-03, -2.097910470013741174e-03, -2.092038692066586388e-03, -2.086163793269670257e-03, -2.080285783312361449e-03, -2.074404671888374976e-03, -2.068520468696646939e-03, -2.062633183440029140e-03, -2.056742825826196781e-03, -2.050849405567464583e-03, -2.044952932380414250e-03, -2.039053415986397545e-03, -2.033150866111039720e-03, -2.027245292484442050e-03, -2.021336704841351396e-03, -2.015425112920762093e-03, -2.009510526466082476e-03, -2.003592955225318335e-03, -1.997672408950737673e-03, -1.991748897398721088e-03, -1.985822430330655593e-03, -1.979893017511486549e-03, -1.973960668711267647e-03, -1.968025393703698965e-03, -1.962087202266980020e-03, -1.956146104183972834e-03, -1.950202109241212919e-03, -1.944255227229734796e-03, -1.938305467944944271e-03, -1.932352841186182153e-03, -1.926397356757252478e-03, -1.920439024465948712e-03, -1.914477854124213129e-03, -1.908513855548348882e-03, -1.902547038558577430e-03, -1.896577412979238465e-03, -1.890604988638980950e-03, -1.884629775370385164e-03, -1.878651783009849079e-03, -1.872671021398468081e-03, -1.866687500380586912e-03, -1.860701229805357447e-03, -1.854712219525280013e-03, -1.848720479397091779e-03, -1.842726019281640129e-03, -1.836728849043523567e-03, -1.830728978551279503e-03, -1.824726417677561196e-03, -1.818721176298661790e-03, -1.812713264295034076e-03, -1.806702691550791115e-03, -1.800689467953917435e-03, -1.794673603396422555e-03, -1.788655107774006622e-03, -1.782633990985917505e-03, -1.776610262935863051e-03, -1.770583933530645851e-03, -1.764555012681031472e-03, -1.758523510301937326e-03, -1.752489436311259127e-03, -1.746452800631406559e-03, -1.740413613187821815e-03, -1.734371883909875157e-03, -1.728327622730747599e-03, -1.722280839587055773e-03, -1.716231544419040368e-03, -1.710179747170760631e-03, -1.704125457789601710e-03, -1.698068686226791597e-03, -1.692009442436923647e-03, -1.685947736378135041e-03, -1.679883578012294999e-03, -1.673816977304656535e-03, -1.667747944223687108e-03, -1.661676488742020981e-03, -1.655602620835077950e-03, -1.649526350481990335e-03, -1.643447687665470060e-03, -1.637366642371360440e-03, -1.631283224589185439e-03, -1.625197444311637929e-03, -1.619109311534786119e-03, -1.613018836258240307e-03, -1.606926028484749339e-03, -1.600830898220380804e-03, -1.594733455474691905e-03, -1.588633710260273224e-03, -1.582531672593232063e-03, -1.576427352492809283e-03, -1.570320759981202585e-03, -1.564211905084434296e-03, -1.558100797831324640e-03, -1.551987448253682117e-03, -1.545871866387147882e-03, -1.539754062269852635e-03, -1.533634045943321929e-03, -1.527511827452351272e-03, -1.521387416844548158e-03, -1.515260824170896505e-03, -1.509132059485232547e-03, -1.503001132844460595e-03, -1.496868054308714583e-03, -1.490732833940948453e-03, -1.484595481807117652e-03, -1.478456007976376024e-03, -1.472314422520574258e-03, -1.466170735514785942e-03, -1.460024957036891663e-03, -1.453877097167414426e-03, -1.447727165990476137e-03, -1.441575173592393342e-03, -1.435421130062635017e-03, -1.429265045493653208e-03, -1.423106929980549754e-03, -1.416946793621231323e-03, -1.410784646516634929e-03, -1.404620498770191902e-03, -1.398454360488397309e-03, -1.392286241780290841e-03, -1.386116152757653703e-03, -1.379944103535190539e-03, -1.373770104230183147e-03, -1.367594164962328924e-03, -1.361416295854677187e-03, -1.355236507032114325e-03, -1.349054808622933074e-03, -1.342871210757616693e-03, -1.336685723569071196e-03, -1.330498357193464747e-03, -1.324309121768863732e-03, -1.318118027436160399e-03, -1.311925084338923676e-03, -1.305730302623050055e-03, -1.299533692436934031e-03, -1.293335263931674967e-03, -1.287135027260561228e-03, -1.280932992579630501e-03, -1.274729170047139834e-03, -1.268523569823781826e-03, -1.262316202072855066e-03, -1.256107076959916751e-03, -1.249896204652626783e-03, -1.243683595321684512e-03, -1.237469259139311944e-03, -1.231253206280877224e-03, -1.225035446923368725e-03, -1.218815991246342215e-03, -1.212594849431772098e-03, -1.206372031663673679e-03, -1.200147548128312853e-03, -1.193921409014385426e-03, -1.187693624512586909e-03, -1.181464204815803332e-03, -1.175233160119311176e-03, -1.169000500620256955e-03, -1.162766236518218395e-03, -1.156530378014749292e-03, -1.150292935313239210e-03, -1.144053918619795593e-03, -1.137813338142177558e-03, -1.131571204090005148e-03, -1.125327526675627124e-03, -1.119082316112721912e-03, -1.112835582617263631e-03, -1.106587336407341892e-03, -1.100337587702755878e-03, -1.094086346725539963e-03, -1.087833623699453701e-03, -1.081579428850188481e-03, -1.075323772405551185e-03, -1.069066664595030294e-03, -1.062808115649992993e-03, -1.056548135803866235e-03, -1.050286735291647549e-03, -1.044023924350430659e-03, -1.037759713218986551e-03, -1.031494112137587614e-03, -1.025227131348988192e-03, -1.018958781096996908e-03, -1.012689071627444854e-03, -1.006418013188030772e-03, -1.000145616027941792e-03, -9.938718903980685478e-04, -9.875968465511723512e-04, -9.813204947414016447e-04, -9.750428452248226067e-04, -9.687639082589179261e-04, -9.624836941027727424e-04, -9.562022130172737056e-04, -9.499194752647434912e-04, -9.436354911087835914e-04, -9.373502708151636859e-04, -9.310638246506106963e-04, -9.247761628837217933e-04, -9.184872957844308601e-04, -9.121972336238728593e-04, -9.059059866753397736e-04, -8.996135652128568316e-04, -8.933199795121599162e-04, -8.870252398505251278e-04, -8.807293565064115400e-04, -8.744323397596519103e-04, -8.681341998916416568e-04, -8.618349471848334034e-04, -8.555345919232929582e-04, -8.492331443921680547e-04, -8.429306148779083362e-04, -8.366270136684341666e-04, -8.303223510527890346e-04, -8.240166373209704184e-04, -8.177098827649019897e-04, -8.114020976768684598e-04, -8.050932923511860094e-04, -7.987834770826406040e-04, -7.924726621674506571e-04, -7.861608579031176269e-04, -7.798480745880500154e-04, -7.735343225217651379e-04, -7.672196120050728957e-04, -7.609039533396476243e-04, -7.545873568282164198e-04, -7.482698327747531021e-04, -7.419513914839696161e-04, -7.356320432618691915e-04, -7.293117984152966155e-04, -7.229906672517850356e-04, -7.166686600804550878e-04, -7.103457872109413202e-04, -7.040220589535887584e-04, -6.976974856203496493e-04, -6.913720775232112597e-04, -6.850458449758834367e-04, -6.787187982922203346e-04, -6.723909477871928362e-04, -6.660623037767336198e-04, -6.597328765773671213e-04, -6.534026765064002455e-04, -6.470717138821204494e-04, -6.407399990233580500e-04, -6.344075422496761769e-04, -6.280743538815684217e-04, -6.217404442399473118e-04, -6.154058236466922660e-04, -6.090705024242123360e-04, -6.027344908952785886e-04, -5.963977993840092117e-04, -5.900604382144289351e-04, -5.837224177114477396e-04, -5.773837482007029972e-04, -5.710444400081096357e-04, -5.647045034604234902e-04, -5.583639488847168741e-04, -5.520227866085799162e-04, -5.456810269603157163e-04, -5.393386802684952807e-04, -5.329957568621607016e-04, -5.266522670710097965e-04, -5.203082212250381049e-04, -5.139636296543679097e-04, -5.076185026901621107e-04, -5.012728506633958242e-04, -4.949266839057676545e-04, -4.885800127491789517e-04, -4.822328475255818606e-04, -4.758851985679515796e-04, -4.695370762088553755e-04, -4.631884907814202350e-04, -4.568394526191846532e-04, -4.504899720556482029e-04, -4.441400594248274040e-04, -4.377897250607387224e-04, -4.314389792975949732e-04, -4.250878324700071444e-04, -4.187362949125309841e-04, -4.123843769598745709e-04, -4.060320889470864225e-04, -3.996794412091869762e-04, -3.933264440810102947e-04, -3.869731078981784389e-04, -3.806194429955280195e-04, -3.742654597087908186e-04, -3.679111683730182814e-04, -3.615565793235607137e-04, -3.552017028959051389e-04, -3.488465494253047724e-04, -3.424911292469737982e-04, -3.361354526962892476e-04, -3.297795301083388322e-04, -3.234233718181253169e-04, -3.170669881607597780e-04, -3.107103894709459030e-04, -3.043535860835342886e-04, -2.979965883330088546e-04, -2.916394065536790183e-04, -2.852820510798790253e-04, -2.789245322455975859e-04, -2.725668603843161663e-04, -2.662090458299855842e-04, -2.598510989154515297e-04, -2.534930299741379521e-04, -2.471348493384694376e-04, -2.407765673408476955e-04, -2.344181943134962466e-04, -2.280597405880836900e-04, -2.217012164959223015e-04, -2.153426323681655486e-04, -2.089839985353627271e-04, -2.026253253276571532e-04, -1.962666230749818080e-04, -1.899079021065453712e-04, -1.835491727513834841e-04, -1.771904453379153103e-04, -1.708317301937878178e-04, -1.644730376468480368e-04, -1.581143780237107205e-04, -1.517557616507343439e-04, -1.453971988538603163e-04, -1.390386999581018888e-04, -1.326802752884492461e-04, -1.263219351686460656e-04, -1.199636899220950974e-04, -1.136055498717002094e-04, -1.072475253394943978e-04, -1.008896266468361900e-04, -9.453186411460550614e-05, -8.817424806283221100e-05, -8.181678881053763104e-05, -7.545949667663980889e-05, -6.910238197873155332e-05, -6.274545503398484001e-05, -5.638872615863790264e-05, -5.003220566783756276e-05, -4.367590387661417152e-05, -3.731983109844691878e-05, -3.096399764624055699e-05, -2.460841383216592860e-05, -1.825308996721845183e-05, -1.189803636176834478e-05, -5.543263325047808854e-06, 8.112188346531152224e-07, 7.165399809790576171e-06, 1.351926929400886260e-05, 1.987281698194443263e-05, 2.622603256903005274e-05, 3.257890575186591682e-05, 3.893142622837766946e-05, 4.528358369684178276e-05, 5.163536785746021426e-05, 5.798676841067730168e-05, 6.433777505875458013e-05, 7.068837750479634182e-05, 7.703856545290687253e-05, 8.338832860856284113e-05, 8.973765667841569022e-05, 9.608653937009783497e-05, 1.024349663927327531e-04, 1.087829274563872054e-04, 1.151304122725827487e-04, 1.214774105540990072e-04, 1.278239120147797226e-04, 1.341699063699730891e-04, 1.405153833363363800e-04, 1.468603326316395854e-04, 1.532047439751364260e-04, 1.595486070877235956e-04, 1.658919116909645178e-04, 1.722346475086645296e-04, 1.785768042651877387e-04, 1.849183716870318002e-04, 1.912593395018536519e-04, 1.975996974386269416e-04, 2.039394352280125518e-04, 2.102785426021631736e-04, 2.166170092945282036e-04, 2.229548250403642136e-04, 2.292919795761878897e-04, 2.356284626402850644e-04, 2.419642639725165371e-04, 2.482993733141222389e-04, 2.546337804080930608e-04, 2.609674749993251075e-04, 2.673004468336502592e-04, 2.736326856592639564e-04, 2.799641812257549480e-04, 2.862949232842589768e-04, 2.926249015879743716e-04, 2.989541058912579857e-04, 3.052825259508430808e-04, 3.116101515249379214e-04, 3.179369723733809785e-04, 3.242629782580153585e-04, 3.305881589424906116e-04, 3.369125041920667074e-04, 3.432360037741261582e-04, 3.495586474576265509e-04, 3.558804250136092550e-04, 3.622013262150052416e-04, 3.685213408364394934e-04, 3.748404586546005010e-04, 3.811586694484000201e-04, 3.874759629979968012e-04, 3.937923290862287129e-04, 4.001077574976410253e-04, 4.064222380186403665e-04, 4.127357604379384330e-04, 4.190483145460028951e-04, 4.253598901355682728e-04, 4.316704770014394245e-04, 4.379800649402972577e-04, 4.442886437511352833e-04, 4.505962032350722111e-04, 4.569027331951507759e-04, 4.632082234367045775e-04, 4.695126637675233676e-04, 4.758160439968767250e-04, 4.821183539370824632e-04, 4.884195834018306703e-04, 4.947197222077545555e-04, 5.010187601735266580e-04, 5.073166871196632026e-04, 5.136134928696024478e-04, 5.199091672488011110e-04, 5.262037000848923370e-04, 5.324970812081240411e-04, 5.387893004508171333e-04, 5.450803476478644676e-04, 5.513702126365482631e-04, 5.576588852563360565e-04, 5.639463553493240331e-04, 5.702326127600381832e-04, 5.765176473352455434e-04, 5.828014489243209814e-04, 5.890840073793931304e-04, 5.953653125543975546e-04, 6.016453543066182684e-04, 6.079241224950320509e-04, 6.142016069818641679e-04, 6.204777976316196370e-04, 6.267526843112474844e-04, 6.330262568904991820e-04, 6.392985052417432491e-04, 6.455694192397600124e-04, 6.518389887622614816e-04, 6.581072036893390563e-04, 6.643740539039690897e-04, 6.706395292918271647e-04, 6.769036197410846977e-04, 6.831663151427803862e-04, 6.894276053909786104e-04, 6.956874803818009160e-04, 7.019459300148436082e-04, 7.082029441922181243e-04, 7.144585128186992443e-04, 7.207126258022384605e-04, 7.269652730530695110e-04, 7.332164444849093498e-04, 7.394661300140727882e-04, 7.457143195596188613e-04, 7.519610030437244444e-04, 7.582061703914889884e-04, 7.644498115307380619e-04, 7.706919163925332519e-04, 7.769324749106263760e-04, 7.831714770219636371e-04, 7.894089126664988144e-04, 7.956447717869897596e-04, 8.018790443293712534e-04, 8.081117202429105887e-04, 8.143427894792441488e-04, 8.205722419937862191e-04, 8.268000677447769498e-04, 8.330262566934312166e-04, 8.392507988043715426e-04, 8.454736840450991159e-04, 8.516949023864791874e-04, 8.579144438025628275e-04, 8.641322982703877583e-04, 8.703484557704143114e-04, 8.765629062863313555e-04, 8.827756398048639593e-04, 8.889866463162746178e-04, 8.951959158138349205e-04, 9.014034382942333204e-04, 9.076092037577590142e-04, 9.138132022073274614e-04, 9.200154236498890884e-04, 9.262158580955476153e-04, 9.324144955573603457e-04, 9.386113260523997089e-04, 9.448063396008718039e-04, 9.509995262262600562e-04, 9.571908759557641025e-04, 9.633803788197627853e-04, 9.695680248523154887e-04, 9.757538040909587412e-04, 9.819377065765362133e-04, 9.881197223536057270e-04, 9.942998414702683852e-04, 1.000478053977962465e-03, 1.006654349931970609e-03, 1.012828719390881406e-03, 1.019001152417021777e-03, 1.025171639076607457e-03, 1.031340169438792372e-03, 1.037506733577067686e-03, 1.043671321568314650e-03, 1.049833923492951397e-03, 1.055994529435291384e-03, 1.062153129483369481e-03, 1.068309713728730773e-03, 1.074464272266941432e-03, 1.080616795197050090e-03, 1.086767272622082229e-03, 1.092915694648855223e-03, 1.099062051387784261e-03, 1.105206332953250761e-03, 1.111348529463733123e-03, 1.117488631040890580e-03, 1.123626627811067421e-03, 1.129762509903735855e-03, 1.135896267452686688e-03, 1.142027890595831777e-03, 1.148157369474326478e-03, 1.154284694233955475e-03, 1.160409855024207085e-03, 1.166532841998397943e-03, 1.172653645314056378e-03, 1.178772255132715108e-03, 1.184888661619730834e-03, 1.191002854944775598e-03, 1.197114825281307910e-03, 1.203224562807070396e-03, 1.209332057703884451e-03, 1.215437300157485656e-03, 1.221540280357854679e-03, 1.227640988499394863e-03, 1.233739414779974446e-03, 1.239835549402446826e-03, 1.245929382573034887e-03, 1.252020904502846059e-03, 1.258110105406926894e-03, 1.264196975504422449e-03, 1.270281505018924523e-03, 1.276363684178292773e-03, 1.282443503214460850e-03, 1.288520952363861197e-03, 1.294596021867234006e-03, 1.300668701969438573e-03, 1.306738982919960915e-03, 1.312806854972357797e-03, 1.318872308384695614e-03, 1.324935333419709552e-03, 1.330995920343923215e-03, 1.337054059428682308e-03, 1.343109740949977472e-03, 1.349162955187570420e-03, 1.355213692426365021e-03, 1.361261942955476834e-03, 1.367307697068382514e-03, 1.373350945063345685e-03, 1.379391677242882428e-03, 1.385429883914260450e-03, 1.391465555389309779e-03, 1.397498681984220021e-03, 1.403529254019984665e-03, 1.409557261822205710e-03, 1.415582695720891569e-03, 1.421605546050969896e-03, 1.427625803151749175e-03, 1.433643457367333529e-03, 1.439658499046785143e-03, 1.445670918543191840e-03, 1.451680706215030363e-03, 1.457687852425233310e-03, 1.463692347541346991e-03, 1.469694181935885966e-03, 1.475693345986124009e-03, 1.481689830073943184e-03, 1.487683624586290517e-03, 1.493674719914671019e-03, 1.499663106455622350e-03, 1.505648774610549370e-03, 1.511631714785509470e-03, 1.517611917391586181e-03, 1.523589372845023408e-03, 1.529564071566313606e-03, 1.535536003981685313e-03, 1.541505160521575721e-03, 1.547471531621773646e-03, 1.553435107723256893e-03, 1.559395879271316008e-03, 1.565353836716923625e-03, 1.571308970515807903e-03, 1.577261271128586320e-03, 1.583210729021147529e-03, 1.589157334664432564e-03, 1.595101078534270694e-03, 1.601041951111856470e-03, 1.606979942883231911e-03, 1.612915044339762035e-03, 1.618847245977959653e-03, 1.624776538299299317e-03, 1.630702911810549740e-03, 1.636626357023946180e-03, 1.642546864456265188e-03, 1.648464424630288055e-03, 1.654379028073245861e-03, 1.660290665318272076e-03, 1.666199326903513526e-03, 1.672105003372248346e-03, 1.678007685273253530e-03, 1.683907363160627767e-03, 1.689804027593580678e-03, 1.695697669136871913e-03, 1.701588278360600601e-03, 1.707475845840061368e-03, 1.713360362156176502e-03, 1.719241817895018681e-03, 1.725120203648202811e-03, 1.730995510013035856e-03, 1.736867727591684613e-03, 1.742736846992163410e-03, 1.748602858828161941e-03, 1.754465753718206962e-03, 1.760325522287115117e-03, 1.766182155164435158e-03, 1.772035642985913574e-03, 1.777885976392572578e-03, 1.783733146030882935e-03, 1.789577142553080980e-03, 1.795417956617004684e-03, 1.801255578885904143e-03, 1.807090000028851616e-03, 1.812921210720557430e-03, 1.818749201641187835e-03, 1.824573963476845955e-03, 1.830395486919058311e-03, 1.836213762665176406e-03, 1.842028781418526134e-03, 1.847840533887516994e-03, 1.853649010786952460e-03, 1.859454202837123151e-03, 1.865256100763983127e-03, 1.871054695299511792e-03, 1.876849977181252460e-03, 1.882641937152751020e-03, 1.888430565963382466e-03, 1.894215854368181979e-03, 1.899997793128235671e-03, 1.905776373010516439e-03, 1.911551584787673846e-03, 1.917323419238420746e-03, 1.923091867147626094e-03, 1.928856919305521958e-03, 1.934618566508809192e-03, 1.940376799559828886e-03, 1.946131609267029222e-03, 1.951882986445115965e-03, 1.957630921914145852e-03, 1.963375406500865363e-03, 1.969116431037782645e-03, 1.974853986363333831e-03, 1.980588063322285923e-03, 1.986318652765224624e-03, 1.992045745549029644e-03, 1.997769332536685188e-03, 2.003489404597117319e-03, 2.009205952605573435e-03, 2.014918967443470044e-03, 2.020628439998183729e-03, 2.026334361163423681e-03, 2.032036721839329714e-03, 2.037735512931633085e-03, 2.043430725353047751e-03, 2.049122350021773727e-03, 2.054810377862897885e-03, 2.060494799807519647e-03, 2.066175606792901905e-03, 2.071852789762796722e-03, 2.077526339667272286e-03, 2.083196247462530768e-03, 2.088862504111309911e-03, 2.094525100582695677e-03, 2.100184027851970895e-03, 2.105839276901042868e-03, 2.111490838717980205e-03, 2.117138704297372772e-03, 2.122782864640511673e-03, 2.128423310754553113e-03, 2.134060033653493744e-03, 2.139693024357980280e-03, 2.145322273894522801e-03, 2.150947773296893809e-03, 2.156569513604621180e-03, 2.162187485864379421e-03, 2.167801681129139652e-03, 2.173412090458321389e-03, 2.179018704918083121e-03, 2.184621515581171812e-03, 2.190220513526754207e-03, 2.195815689840795431e-03, 2.201407035615892457e-03, 2.206994541951089357e-03, 2.212578199952329201e-03, 2.218158000732001721e-03, 2.223733935409289830e-03, 2.229305995110319235e-03, 2.234874170967310163e-03, 2.240438454119845005e-03, 2.245998835713973203e-03, 2.251555306902399897e-03, 2.257107858844840248e-03, 2.262656482707527204e-03, 2.268201169663701562e-03, 2.273741910893404671e-03, 2.279278697583315364e-03, 2.284811520927140273e-03, 2.290340372125438621e-03, 2.295865242385445280e-03, 2.301386122921419888e-03, 2.306903004954733577e-03, 2.312415879713138663e-03, 2.317924738431788659e-03, 2.323429572352475429e-03, 2.328930372724044660e-03, 2.334427130802585373e-03, 2.339919837850520934e-03, 2.345408485137893614e-03, 2.350893063941513709e-03, 2.356373565545070992e-03, 2.361849981239548882e-03, 2.367322302322727879e-03, 2.372790520099631820e-03, 2.378254625882363950e-03, 2.383714610989935614e-03, 2.389170466748635757e-03, 2.394622184491869595e-03, 2.400069755560007689e-03, 2.405513171300660471e-03, 2.410952423068862555e-03, 2.416387502226199739e-03, 2.421818400142164256e-03, 2.427245108192744444e-03, 2.432667617761715816e-03, 2.438085920239873444e-03, 2.443500007025086601e-03, 2.448909869522705989e-03, 2.454315499145322613e-03, 2.459716887312625097e-03, 2.465114025451849416e-03, 2.470506904997294469e-03, 2.475895517390764439e-03, 2.481279854081387508e-03, 2.486659906525466243e-03, 2.492035666186852294e-03, 2.497407124536763813e-03, 2.502774273053629765e-03, 2.508137103223406512e-03, 2.513495606539701849e-03, 2.518849774502953612e-03, 2.524199598621759775e-03, 2.529545070411466385e-03, 2.534886181395478149e-03, 2.540222923104439642e-03, 2.545555287076381457e-03, 2.550883264857025951e-03, 2.556206847999612473e-03, 2.561526028064738201e-03, 2.566840796620786184e-03, 2.572151145243484292e-03, 2.577457065516277311e-03, 2.582758549030237175e-03, 2.588055587383850022e-03, 2.593348172183330188e-03, 2.598636295042758108e-03, 2.603919947583276280e-03, 2.609199121434273641e-03, 2.614473808232561577e-03, 2.619743999622522242e-03, 2.625009687256537900e-03, 2.630270862794210733e-03, 2.635527517903414954e-03, 2.640779644259506204e-03, 2.646027233545490687e-03, 2.651270277452295789e-03, 2.656508767678640408e-03, 2.661742695930829818e-03, 2.666972053923238363e-03, 2.672196833377798141e-03, 2.677417026024443963e-03, 2.682632623600970240e-03, 2.687843617852832788e-03, 2.693050000533472790e-03, 2.698251763404442127e-03, 2.703448898234617117e-03, 2.708641396801350371e-03, 2.713829250889681060e-03, 2.719012452292464150e-03, 2.724190992810731227e-03, 2.729364864253242939e-03, 2.734534058436904457e-03, 2.739698567186600250e-03, 2.744858382335040557e-03, 2.750013495723115271e-03, 2.755163899199739985e-03, 2.760309584621683382e-03, 2.765450543853899008e-03, 2.770586768769605062e-03, 2.775718251249534568e-03, 2.780844983183184370e-03, 2.785966956467474196e-03, 2.791084163008008667e-03, 2.796196594718278888e-03, 2.801304243519791258e-03, 2.806407101342406167e-03, 2.811505160124107717e-03, 2.816598411810908309e-03, 2.821686848357232887e-03, 2.826770461725480917e-03, 2.831849243886419305e-03, 2.836923186819066602e-03, 2.841992282510493080e-03, 2.847056522956193259e-03, 2.852115900159928920e-03, 2.857170406133579046e-03, 2.862220032897394399e-03, 2.867264772480180961e-03, 2.872304616918494157e-03, 2.877339558257879185e-03, 2.882369588551545250e-03, 2.887394699861628011e-03, 2.892414884258402014e-03, 2.897430133820388682e-03, 2.902440440634686779e-03, 2.907445796796795032e-03, 2.912446194410445600e-03, 2.917441625588030382e-03, 2.922432082450158661e-03, 2.927417557126052623e-03, 2.932398041753400773e-03, 2.937373528478203974e-03, 2.942344009455062116e-03, 2.947309476847298146e-03, 2.952269922826183512e-03, 2.957225339572087421e-03, 2.962175719273686236e-03, 2.967121054128097485e-03, 2.972061336341266704e-03, 2.976996558127295231e-03, 2.981926711709346166e-03, 2.986851789318979104e-03, 2.991771783196229065e-03, 2.996686685589958644e-03, 3.001596488757631194e-03, 3.006501184965209347e-03, 3.011400766487534481e-03, 3.016295225607894346e-03, 3.021184554618442861e-03, 3.026068745820006695e-03, 3.030947791521976849e-03, 3.035821684042556284e-03, 3.040690415708923854e-03, 3.045553978856430262e-03, 3.050412365829743844e-03, 3.055265568982076883e-03, 3.060113580675331325e-03, 3.064956393280396287e-03, 3.069793999176754270e-03, 3.074626390752885786e-03, 3.079453560406085044e-03, 3.084275500542302956e-03, 3.089092203576550896e-03, 3.093903661932678652e-03, 3.098709868043246062e-03, 3.103510814349932836e-03, 3.108306493303081893e-03, 3.113096897362082303e-03, 3.117882018995444312e-03, 3.122661850680085935e-03, 3.127436384902397646e-03, 3.132205614157585784e-03, 3.136969530949475227e-03, 3.141728127791395403e-03, 3.146481397205428288e-03, 3.151229331722572337e-03, 3.155971923883037385e-03, 3.160709166235868214e-03, 3.165441051339301474e-03, 3.170167571760633407e-03, 3.174888720076055482e-03, 3.179604488870997440e-03, 3.184314870739990682e-03, 3.189019858286489591e-03, 3.193719444123275727e-03, 3.198413620872053633e-03, 3.203102381163741401e-03, 3.207785717638641110e-03, 3.212463622945672514e-03, 3.217136089743454202e-03, 3.221803110699569383e-03, 3.226464678490691216e-03, 3.231120785802863403e-03, 3.235771425331320211e-03, 3.240416589780380219e-03, 3.245056271863830128e-03, 3.249690464304442507e-03, 3.254319159834454574e-03, 3.258942351195364372e-03, 3.263560031137772901e-03, 3.268172192421712856e-03, 3.272778827816713674e-03, 3.277379930101092034e-03, 3.281975492063148817e-03, 3.286565506499907093e-03, 3.291149966218094840e-03, 3.295728864033940254e-03, 3.300302192772511679e-03, 3.304869945268812219e-03, 3.309432114367001285e-03, 3.313988692920571532e-03, 3.318539673792560932e-03, 3.323085049855446088e-03, 3.327624813991008658e-03, 3.332158959090653245e-03, 3.336687478055070429e-03, 3.341210363794564625e-03, 3.345727609228917477e-03, 3.350239207287280738e-03, 3.354745150908377931e-03, 3.359245433040687796e-03, 3.363740046641684918e-03, 3.368228984679005888e-03, 3.372712240129225464e-03, 3.377189805978987169e-03, 3.381661675224310708e-03, 3.386127840870684774e-03, 3.390588295933344605e-03, 3.395043033437156188e-03, 3.399492046416421973e-03, 3.403935327915227817e-03, 3.408372870987309844e-03, 3.412804668695889210e-03, 3.417230714114061988e-03, 3.421651000324372853e-03, 3.426065520419164200e-03, 3.430474267500671550e-03, 3.434877234680327063e-03, 3.439274415079764807e-03, 3.443665801830205798e-03, 3.448051388072323128e-03, 3.452431166956955368e-03, 3.456805131644501584e-03, 3.461173275305040598e-03, 3.465535591118625459e-03, 3.469892072274897033e-03, 3.474242711973436152e-03, 3.478587503423640013e-03, 3.482926439844576463e-03, 3.487259514465296251e-03, 3.491586720524676897e-03, 3.495908051271315580e-03, 3.500223499963864802e-03, 3.504533059870635573e-03, 3.508836724269945653e-03, 3.513134486450179839e-03, 3.517426339709163290e-03, 3.521712277355097415e-03, 3.525992292705921495e-03, 3.530266379089419364e-03, 3.534534529843459238e-03, 3.538796738315874452e-03, 3.543052997864298663e-03, 3.547303301856556592e-03, 3.551547643670262874e-03, 3.555786016693159024e-03, 3.560018414323005021e-03, 3.564244829967430118e-03, 3.568465257044197824e-03, 3.572679688981293504e-03, 3.576888119216259116e-03, 3.581090541197296494e-03, 3.585286948382123296e-03, 3.589477334238846875e-03, 3.593661692245769552e-03, 3.597840015890866466e-03, 3.602012298672655540e-03, 3.606178534099598997e-03, 3.610338715690206146e-03, 3.614492836973237210e-03, 3.618640891487638709e-03, 3.622782872782327052e-03, 3.626918774416628723e-03, 3.631048589959825785e-03, 3.635172312991550095e-03, 3.639289937101612433e-03, 3.643401455889907093e-03, 3.647506862966640000e-03, 3.651606151952425418e-03, 3.655699316477664922e-03, 3.659786350183537058e-03, 3.663867246720963443e-03, 3.667941999751564170e-03, 3.672010602947054121e-03, 3.676073049989372205e-03, 3.680129334570854827e-03, 3.684179450394174313e-03, 3.688223391172177571e-03, 3.692261150628155849e-03, 3.696292722495760161e-03, 3.700318100518859479e-03, 3.704337278451811776e-03, 3.708350250059210332e-03, 3.712357009116085387e-03, 3.716357549408059839e-03, 3.720351864730707826e-03, 3.724339948890314535e-03, 3.728321795703684952e-03, 3.732297398997614334e-03, 3.736266752609866595e-03, 3.740229850388099644e-03, 3.744186686190880634e-03, 3.748137253887068830e-03, 3.752081547355878930e-03, 3.756019560487163823e-03, 3.759951287181246757e-03, 3.763876721348839802e-03, 3.767795856911268070e-03, 3.771708687800400320e-03, 3.775615207958480258e-03, 3.779515411338470014e-03, 3.783409291903717074e-03, 3.787296843628183262e-03, 3.791178060496594796e-03, 3.795052936503800871e-03, 3.798921465655678321e-03, 3.802783641968514056e-03, 3.806639459469118685e-03, 3.810488912195066774e-03, 3.814331994194396312e-03, 3.818168699525914447e-03, 3.821999022259042235e-03, 3.825822956473734406e-03, 3.829640496260720492e-03, 3.833451635721404644e-03, 3.837256368967716883e-03, 3.841054690122410169e-03, 3.844846593319026576e-03, 3.848632072701437153e-03, 3.852411122424704952e-03, 3.856183736654169962e-03, 3.859949909566137791e-03, 3.863709635347779923e-03, 3.867462908196600720e-03, 3.871209722321269659e-03, 3.874950071941063619e-03, 3.878683951285935832e-03, 3.882411354596806020e-03, 3.886132276125200870e-03, 3.889846710133584504e-03, 3.893554650895220126e-03, 3.897256092694062913e-03, 3.900951029825031058e-03, 3.904639456593867429e-03, 3.908321367317032884e-03, 3.911996756321932216e-03, 3.915665617946992652e-03, 3.919327946541077516e-03, 3.922983736464462877e-03, 3.926632982087798450e-03, 3.930275677793025266e-03, 3.933911817972839640e-03, 3.937541397030779045e-03, 3.941164409381397310e-03, 3.944780849450211721e-03, 3.948390711673523470e-03, 3.951993990498729910e-03, 3.955590680384161485e-03, 3.959180775798994134e-03, 3.962764271223565872e-03, 3.966341161148994286e-03, 3.969911440077493123e-03, 3.973475102522439940e-03, 3.977032143007816663e-03, 3.980582556068912141e-03, 3.984126336252120926e-03, 3.987663478114487035e-03, 3.991193976224561776e-03, 3.994717825161485207e-03, 3.998235019515824877e-03, 4.001745553889061481e-03, 4.005249422893698147e-03, 4.008746621153398346e-03, 4.012237143302939055e-03, 4.015720983988048561e-03, 4.019198137865720444e-03, 4.022668599604026229e-03, 4.026132363882057273e-03, 4.029589425390191042e-03, 4.033039778829769322e-03, 4.036483418913384448e-03, 4.039920340364933082e-03, 4.043350537919071508e-03, 4.046774006322019675e-03, 4.050190740331021701e-03, 4.053600734714433475e-03, 4.057003984251960314e-03, 4.060400483734340378e-03, 4.063790227963656049e-03, 4.067173211753211635e-03, 4.070549429927386789e-03, 4.073918877321958294e-03, 4.077281548783905779e-03, 4.080637439171362277e-03, 4.083986543353789432e-03, 4.087328856212062503e-03, 4.090664372637995046e-03, 4.093993087534979029e-03, 4.097314995817518193e-03, 4.100630092411460502e-03, 4.103938372254142992e-03, 4.107239830293800235e-03, 4.110534461490397869e-03, 4.113822260815047129e-03, 4.117103223250146229e-03, 4.120377343789561643e-03, 4.123644617438379165e-03, 4.126905039213135500e-03, 4.130158604141750608e-03, 4.133405307263391532e-03, 4.136645143628716985e-03, 4.139878108299773277e-03, 4.143104196349904969e-03, 4.146323402863919677e-03, 4.149535722938177407e-03, 4.152741151680093556e-03, 4.155939684208956840e-03, 4.159131315655029831e-03, 4.162316041160398980e-03, 4.165493855878443785e-03, 4.168664754973916593e-03, 4.171828733623156836e-03, 4.174985787013944447e-03, 4.178135910345467767e-03, 4.181279098828503092e-03, 4.184415347685192625e-03, 4.187544652149292543e-03, 4.190667007466042024e-03, 4.193782408892096462e-03, 4.196890851695700940e-03, 4.199992331156772625e-03, 4.203086842566426326e-03, 4.206174381227556491e-03, 4.209254942454688023e-03, 4.212328521573559074e-03, 4.215395113921886934e-03, 4.218454714848538824e-03, 4.221507319714301251e-03, 4.224552923891428113e-03, 4.227591522763657177e-03, 4.230623111726446867e-03, 4.233647686186860909e-03, 4.236665241563463379e-03, 4.239675773286572837e-03, 4.242679276798002122e-03, 4.245675747551303815e-03, 4.248665181011632326e-03, 4.251647572655738692e-03, 4.254622917972034762e-03, 4.257591212460789219e-03, 4.260552451633537775e-03, 4.263506631013862930e-03, 4.266453746136883093e-03, 4.269393792549321109e-03, 4.272326765809755789e-03, 4.275252661488284506e-03, 4.278171475166863205e-03, 4.281083202439122520e-03, 4.283987838910325273e-03, 4.286885380197544282e-03, 4.289775821929612924e-03, 4.292659159746982020e-03, 4.295535389301972234e-03, 4.298404506258546830e-03, 4.301266506292501617e-03, 4.304121385091425056e-03, 4.306969138354550808e-03, 4.309809761792953754e-03, 4.312643251129663624e-03, 4.315469602099116821e-03, 4.318288810447923169e-03, 4.321100871934316009e-03, 4.323905782328311791e-03, 4.326703537411858390e-03, 4.329494132978584445e-03, 4.332277564834058695e-03, 4.335053828795691101e-03, 4.337822920692611418e-03, 4.340584836365896440e-03, 4.343339571668503214e-03, 4.346087122465109448e-03, 4.348827484632353767e-03, 4.351560654058857398e-03, 4.354286626644818248e-03, 4.357005398302676163e-03, 4.359716964956394762e-03, 4.362421322542142307e-03, 4.365118467007872774e-03, 4.367808394313364012e-03, 4.370491100430438924e-03, 4.373166581342782452e-03, 4.375834833045964996e-03, 4.378495851547582925e-03, 4.381149632867066893e-03, 4.383796173035871789e-03, 4.386435468097384799e-03, 4.389067514106888973e-03, 4.391692307131694201e-03, 4.394309843251099044e-03, 4.396920118556246759e-03, 4.399523129150376827e-03, 4.402118871148777250e-03, 4.404707340678468835e-03, 4.407288533878768975e-03, 4.409862446900712253e-03, 4.412429075907574327e-03, 4.414988417074572694e-03, 4.417540466588846734e-03, 4.420085220649683233e-03, 4.422622675468355913e-03, 4.425152827268127170e-03, 4.427675672284379048e-03, 4.430191206764467517e-03, 4.432699426967833499e-03, 4.435200329166018481e-03, 4.437693909642534407e-03, 4.440180164693000725e-03, 4.442659090625224183e-03, 4.445130683758818056e-03, 4.447594940425776341e-03, 4.450051856970050485e-03, 4.452501429747597952e-03, 4.454943655126704892e-03, 4.457378529487469182e-03, 4.459806049222362484e-03, 4.462226210735861613e-03, 4.464639010444537010e-03, 4.467044444777123861e-03, 4.469442510174538585e-03, 4.471833203089714895e-03, 4.474216519987863142e-03, 4.476592457346202300e-03, 4.478961011654210636e-03, 4.481322179413535500e-03, 4.483675957137862357e-03, 4.486022341353151574e-03, 4.488361328597586380e-03, 4.490692915421319598e-03, 4.493017098386909922e-03, 4.495333874069028755e-03, 4.497643239054454137e-03, 4.499945189942304059e-03, 4.502239723343772794e-03, 4.504526835882343393e-03, 4.506806524193724371e-03, 4.509078784925743891e-03, 4.511343614738546649e-03, 4.513601010304499339e-03, 4.515850968308117788e-03, 4.518093485446276862e-03, 4.520328558427984950e-03, 4.522556183974516669e-03, 4.524776358819548178e-03, 4.526989079708729560e-03, 4.529194343400216524e-03, 4.531392146664364219e-03, 4.533582486283728105e-03, 4.535765359053197526e-03, 4.537940761779967087e-03, 4.540108691283422163e-03, 4.542269144395370481e-03, 4.544422117959754162e-03, 4.546567608832955895e-03, 4.548705613883604650e-03, 4.550836129992597359e-03, 4.552959154053191730e-03, 4.555074682970994965e-03, 4.557182713663810239e-03, 4.559283243061927268e-03, 4.561376268107803986e-03, 4.563461785756330220e-03, 4.565539792974796472e-03, 4.567610286742618091e-03, 4.569673264051779364e-03, 4.571728721906539485e-03, 4.573776657323438619e-03, 4.575817067331469645e-03, 4.577849948971981012e-03, 4.579875299298631630e-03, 4.581893115377524452e-03, 4.583903394287045137e-03, 4.585906133118052008e-03, 4.587901328973766762e-03, 4.589888978969759725e-03, 4.591869080233996689e-03, 4.593841629906975088e-03, 4.595806625141336289e-03, 4.597764063102392947e-03, 4.599713940967633738e-03, 4.601656255927157047e-03, 4.603591005183411619e-03, 4.605518185951143657e-03, 4.607437795457714272e-03, 4.609349830942832335e-03, 4.611254289658596982e-03, 4.613151168869592152e-03, 4.615040465852869242e-03, 4.616922177897835218e-03, 4.618796302306455576e-03, 4.620662836393031429e-03, 4.622521777484406812e-03, 4.624373122919893213e-03, 4.626216870051160293e-03, 4.628053016242424968e-03, 4.629881558870457478e-03, 4.631702495324264805e-03, 4.633515823005621495e-03, 4.635321539328493730e-03, 4.637119641719572756e-03, 4.638910127617929674e-03, 4.640692994475097838e-03, 4.642468239755183877e-03, 4.644235860934780961e-03, 4.645995855502914156e-03, 4.647748220961180066e-03, 4.649492954823695665e-03, 4.651230054617029770e-03, 4.652959517880336619e-03, 4.654681342165223161e-03, 4.656395525035833191e-03, 4.658102064068964446e-03, 4.659800956853704310e-03, 4.661492200991885181e-03, 4.663175794097826864e-03, 4.664851733798261978e-03, 4.666520017732638664e-03, 4.668180643552889003e-03, 4.669833608923429011e-03, 4.671478911521346859e-03, 4.673116549036151340e-03, 4.674746519170050289e-03, 4.676368819637724203e-03, 4.677983448166412109e-03, 4.679590402495981821e-03, 4.681189680378851879e-03, 4.682781279579981137e-03, 4.684365197876967646e-03, 4.685941433059895994e-03, 4.687509982931528131e-03, 4.689070845307224435e-03, 4.690624018014783250e-03, 4.692169498894785233e-03, 4.693707285800321864e-03, 4.695237376597033614e-03, 4.696759769163254793e-03, 4.698274461389882577e-03, 4.699781451180385684e-03, 4.701280736450931877e-03, 4.702772315130192803e-03, 4.704256185159535683e-03, 4.705732344492943517e-03, 4.707200791096958700e-03, 4.708661522950793182e-03, 4.710114538046324129e-03, 4.711559834387953408e-03, 4.712997409992835708e-03, 4.714427262890639146e-03, 4.715849391123741290e-03, 4.717263792747188392e-03, 4.718670465828560950e-03, 4.720069408448202691e-03, 4.721460618699032351e-03, 4.722844094686639085e-03, 4.724219834529257318e-03, 4.725587836357803169e-03, 4.726948098315790318e-03, 4.728300618559470522e-03, 4.729645395257678353e-03, 4.730982426591961304e-03, 4.732311710756561575e-03, 4.733633245958285968e-03, 4.734947030416701910e-03, 4.736253062364084547e-03, 4.737551340045225920e-03, 4.738841861717809668e-03, 4.740124625651981685e-03, 4.741399630130729154e-03, 4.742666873449672381e-03, 4.743926353917093421e-03, 4.745178069854008064e-03, 4.746422019594110329e-03, 4.747658201483742971e-03, 4.748886613881998092e-03, 4.750107255160672046e-03, 4.751320123704200378e-03, 4.752525217909771456e-03, 4.753722536187255342e-03, 4.754912076959210733e-03, 4.756093838661007260e-03, 4.757267819740534920e-03, 4.758434018658584848e-03, 4.759592433888559619e-03, 4.760743063916563454e-03, 4.761885907241511506e-03, 4.763020962374893939e-03, 4.764148227841070830e-03, 4.765267702177064003e-03, 4.766379383932555294e-03, 4.767483271670064360e-03, 4.768579363964780410e-03, 4.769667659404582157e-03, 4.770748156590172255e-03, 4.771820854134936792e-03, 4.772885750664944415e-03, 4.773942844819121546e-03, 4.774992135249018187e-03, 4.776033620618966649e-03, 4.777067299606088495e-03, 4.778093170900135807e-03, 4.779111233203722775e-03, 4.780121485232143551e-03, 4.781123925713439901e-03, 4.782118553388408147e-03, 4.783105367010620848e-03, 4.784084365346361750e-03, 4.785055547174712522e-03, 4.786018911287446068e-03, 4.786974456489141022e-03, 4.787922181597139247e-03, 4.788862085441490321e-03, 4.789794166865039143e-03, 4.790718424723408586e-03, 4.791634857884911891e-03, 4.792543465230732214e-03, 4.793444245654710986e-03, 4.794337198063507513e-03, 4.795222321376586827e-03, 4.796099614526053156e-03, 4.796969076456928348e-03, 4.797830706126929821e-03, 4.798684502506539093e-03, 4.799530464579046876e-03, 4.800368591340460275e-03, 4.801198881799633757e-03, 4.802021334978144249e-03, 4.802835949910362265e-03, 4.803642725643417211e-03, 4.804441661237264169e-03, 4.805232755764578950e-03, 4.806016008310860441e-03, 4.806791417974378561e-03, 4.807558983866143040e-03, 4.808318705110038727e-03, 4.809070580842613948e-03, 4.809814610213313836e-03, 4.810550792384304247e-03, 4.811279126530549829e-03, 4.811999611839785397e-03, 4.812712247512589657e-03, 4.813417032762249900e-03, 4.814113966814902515e-03, 4.814803048909466199e-03, 4.815484278297606398e-03, 4.816157654243840257e-03, 4.816823176025412587e-03, 4.817480842932399081e-03, 4.818130654267699375e-03, 4.818772609346919089e-03, 4.819406707498507733e-03, 4.820032948063739629e-03, 4.820651330396612429e-03, 4.821261853863985890e-03, 4.821864517845444835e-03, 4.822459321733437929e-03, 4.823046264933188339e-03, 4.823625346862682461e-03, 4.824196566952723697e-03, 4.824759924646945461e-03, 4.825315419401721845e-03, 4.825863050686270833e-03, 4.826402817982581445e-03, 4.826934720785443222e-03, 4.827458758602454041e-03, 4.827974930953988879e-03, 4.828483237373255334e-03, 4.828983677406257190e-03, 4.829476250611723295e-03, 4.829960956561296648e-03, 4.830437794839328829e-03, 4.830906765043023986e-03, 4.831367866782344291e-03, 4.831821099680094940e-03, 4.832266463371823542e-03, 4.832703957505938078e-03, 4.833133581743597612e-03, 4.833555335758803369e-03, 4.833969219238314595e-03, 4.834375231881696267e-03, 4.834773373401337303e-03, 4.835163643522415872e-03, 4.835546041982895053e-03, 4.835920568533547126e-03, 4.836287222937931882e-03, 4.836646004972414842e-03, 4.836996914426175062e-03, 4.837339951101147888e-03, 4.837675114812117760e-03, 4.838002405386608931e-03, 4.838321822664994748e-03, 4.838633366500417858e-03, 4.838937036758808423e-03, 4.839232833318913608e-03, 4.839520756072264625e-03, 4.839800804923194075e-03, 4.840072979788805595e-03, 4.840337280599030234e-03, 4.840593707296559668e-03, 4.840842259836894770e-03, 4.841082938188360357e-03, 4.841315742331991565e-03, 4.841540672261703850e-03, 4.841757727984139469e-03, 4.841966909518741202e-03, 4.842168216897783581e-03, 4.842361650166287015e-03, 4.842547209382049023e-03, 4.842724894615711012e-03, 4.842894705950643794e-03, 4.843056643483028244e-03, 4.843210707321831017e-03, 4.843356897588801946e-03, 4.843495214418473173e-03, 4.843625657958140936e-03, 4.843748228367914140e-03, 4.843862925820677928e-03, 4.843969750502046846e-03, 4.844068702610497545e-03, 4.844159782357229140e-03, 4.844242989966221317e-03, 4.844318325674255160e-03, 4.844385789730848088e-03, 4.844445382398336261e-03, 4.844497103951794781e-03, 4.844540954679082793e-03, 4.844576934880830479e-03, 4.844605044870444258e-03, 4.844625284974086836e-03, 4.844637655530696294e-03, 4.844642156891984346e-03, 4.844638789422397313e-03, 4.844627553499169029e-03, 4.844608449512323445e-03, 4.844581477864588759e-03, 4.844546638971496295e-03, 4.844503933261302443e-03, 4.844453361175058911e-03, 4.844394923166555483e-03, 4.844328619702335630e-03, 4.844254451261688701e-03, 4.844172418336672482e-03, 4.844082521432093238e-03, 4.843984761065486637e-03, 4.843879137767175859e-03, 4.843765652080194405e-03, 4.843644304560332063e-03, 4.843515095776129709e-03, 4.843378026308855881e-03, 4.843233096752548421e-03, 4.843080307713940741e-03, 4.842919659812544228e-03, 4.842751153680577986e-03, 4.842574789963018274e-03, 4.842390569317542130e-03, 4.842198492414603699e-03, 4.841998559937339686e-03, 4.841790772581649159e-03, 4.841575131056129362e-03, 4.841351636082111276e-03, 4.841120288393682171e-03, 4.840881088737583257e-03, 4.840634037873326780e-03, 4.840379136573116220e-03, 4.840116385621901808e-03, 4.839845785817281643e-03, 4.839567337969656081e-03, 4.839281042902061208e-03, 4.838986901450249498e-03, 4.838684914462724508e-03, 4.838375082800642872e-03, 4.838057407337901898e-03, 4.837731888961056305e-03, 4.837398528569389344e-03, 4.837057327074879842e-03, 4.836708285402185718e-03, 4.836351404488652660e-03, 4.835986685284333203e-03, 4.835614128751956377e-03, 4.835233735866933773e-03, 4.834845507617362148e-03, 4.834449445004014752e-03, 4.834045549040359539e-03, 4.833633820752513202e-03, 4.833214261179294077e-03, 4.832786871372167503e-03, 4.832351652395290922e-03, 4.831908605325448830e-03, 4.831457731252150785e-03, 4.830999031277509112e-03, 4.830532506516337782e-03, 4.830058158096082153e-03, 4.829575987156842394e-03, 4.829085994851391693e-03, 4.828588182345140700e-03, 4.828082550816145332e-03, 4.827569101455104171e-03, 4.827047835465352391e-03, 4.826518754062903392e-03, 4.825981858476355996e-03, 4.825437149946964696e-03, 4.824884629728634459e-03, 4.824324299087878222e-03, 4.823756159303811686e-03, 4.823180211668245260e-03, 4.822596457485531403e-03, 4.822004898072695597e-03, 4.821405534759364356e-03, 4.820798368887760886e-03, 4.820183401812735448e-03, 4.819560634901749741e-03, 4.818930069534861291e-03, 4.818291707104706105e-03, 4.817645549016583671e-03, 4.816991596688309507e-03, 4.816329851550368683e-03, 4.815660315045762301e-03, 4.814982988630143665e-03, 4.814297873771710735e-03, 4.813604971951256431e-03, 4.812904284662156487e-03, 4.812195813410358181e-03, 4.811479559714356910e-03, 4.810755525105269922e-03, 4.810023711126721821e-03, 4.809284119334937373e-03, 4.808536751298705079e-03, 4.807781608599340749e-03, 4.807018692830746474e-03, 4.806248005599356860e-03, 4.805469548524132078e-03, 4.804683323236629000e-03, 4.803889331380898839e-03, 4.803087574613552208e-03, 4.802278054603732228e-03, 4.801460773033108462e-03, 4.800635731595882978e-03, 4.799802931998784286e-03, 4.798962375961023097e-03, 4.798114065214407684e-03, 4.797258001503192093e-03, 4.796394186584149871e-03, 4.795522622226588809e-03, 4.794643310212310175e-03, 4.793756252335591370e-03, 4.792861450403267456e-03, 4.791958906234583711e-03, 4.791048621661336999e-03, 4.790130598527787310e-03, 4.789204838690685508e-03, 4.788271344019249046e-03, 4.787330116395180184e-03, 4.786381157712652976e-03, 4.785424469878317606e-03, 4.784460054811245748e-03, 4.783487914443041583e-03, 4.782508050717724710e-03, 4.781520465591723203e-03, 4.780525161034023668e-03, 4.779522139025964809e-03, 4.778511401561340646e-03, 4.777492950646429135e-03, 4.776466788299914105e-03, 4.775432916552892204e-03, 4.774391337448926666e-03, 4.773342053043949304e-03, 4.772285065406381074e-03, 4.771220376616989826e-03, 4.770147988768986581e-03, 4.769067903967985633e-03, 4.767980124332036641e-03, 4.766884651991471974e-03, 4.765781489089208553e-03, 4.764670637780335852e-03, 4.763552100232540040e-03, 4.762425878625729282e-03, 4.761291975152241035e-03, 4.760150392016859397e-03, 4.759001131436624288e-03, 4.757844195640992778e-03, 4.756679586871796588e-03, 4.755507307383213464e-03, 4.754327359441768916e-03, 4.753139745326327541e-03, 4.751944467328112105e-03, 4.750741527750711353e-03, 4.749530928909998471e-03, 4.748312673134193543e-03, 4.747086762763863543e-03, 4.745853200151920609e-03, 4.744611987663492798e-03, 4.743363127676153077e-03, 4.742106622579662575e-03, 4.740842474776232537e-03, 4.739570686680200789e-03, 4.738291260718329248e-03, 4.737004199329626977e-03, 4.735709504965398761e-03, 4.734407180089203471e-03, 4.733097227176942534e-03, 4.731779648716722894e-03, 4.730454447208941142e-03, 4.729121625166290456e-03, 4.727781185113646110e-03, 4.726433129588246754e-03, 4.725077461139510528e-03, 4.723714182329056752e-03, 4.722343295730879395e-03, 4.720964803931089471e-03, 4.719578709528030394e-03, 4.718185015132401149e-03, 4.716783723366956178e-03, 4.715374836866773403e-03, 4.713958358279102430e-03, 4.712534290263393176e-03, 4.711102635491353982e-03, 4.709663396646819773e-03, 4.708216576425820581e-03, 4.706762177536650930e-03, 4.705300202699707647e-03, 4.703830654647570518e-03, 4.702353536125044794e-03, 4.700868849889051036e-03, 4.699376598708716185e-03, 4.697876785365305043e-03, 4.696369412652143076e-03, 4.694854483374909584e-03, 4.693332000351213562e-03, 4.691801966410920691e-03, 4.690264384396005022e-03, 4.688719257160548111e-03, 4.687166587570752892e-03, 4.685606378504974905e-03, 4.684038632853630355e-03, 4.682463353519281980e-03, 4.680880543416553186e-03, 4.679290205472195693e-03, 4.677692342625035769e-03, 4.676086957826010651e-03, 4.674474054038021097e-03, 4.672853634236254911e-03, 4.671225701407722038e-03, 4.669590258551722939e-03, 4.667947308679447870e-03, 4.666296854814158158e-03, 4.664638899991309373e-03, 4.662973447258206977e-03, 4.661300499674276947e-03, 4.659620060310995515e-03, 4.657932132251852743e-03, 4.656236718592277057e-03, 4.654533822439842553e-03, 4.652823446914012250e-03, 4.651105595146344529e-03, 4.649380270280325730e-03, 4.647647475471435204e-03, 4.645907213887204290e-03, 4.644159488707088820e-03, 4.642404303122439624e-03, 4.640641660336780085e-03, 4.638871563565362920e-03, 4.637094016035616002e-03, 4.635309020986744244e-03, 4.633516581669947301e-03, 4.631716701348421311e-03, 4.629909383297218378e-03, 4.628094630803355862e-03, 4.626272447165767805e-03, 4.624442835695306668e-03, 4.622605799714686950e-03, 4.620761342558616161e-03, 4.618909467573603135e-03, 4.617050178118134104e-03, 4.615183477562520044e-03, 4.613309369288913150e-03, 4.611427856691494194e-03, 4.609538943176130776e-03, 4.607642632160617591e-03, 4.605738927074690299e-03, 4.603827831359760120e-03, 4.601909348469287661e-03, 4.599983481868388270e-03, 4.598050235034064487e-03, 4.596109611455196503e-03, 4.594161614632425936e-03, 4.592206248078188786e-03, 4.590243515316810852e-03, 4.588273419884325577e-03, 4.586295965328586813e-03, 4.584311155209278357e-03, 4.582318993097778646e-03, 4.580319482577340298e-03, 4.578312627242923580e-03, 4.576298430701176458e-03, 4.574276896570698275e-03, 4.572248028481639033e-03, 4.570211830075966535e-03, 4.568168305007416080e-03, 4.566117456941393322e-03, 4.564059289555089625e-03, 4.561993806537354562e-03, 4.559921011588726272e-03, 4.557840908421533811e-03, 4.555753500759749698e-03, 4.553658792338981243e-03, 4.551556786906643150e-03, 4.549447488221738077e-03, 4.547330900054876585e-03, 4.545207026188539078e-03, 4.543075870416602227e-03, 4.540937436544820356e-03, 4.538791728390484566e-03, 4.536638749782428807e-03, 4.534478504561345602e-03, 4.532310996579331543e-03, 4.530136229700173524e-03, 4.527954207799343538e-03, 4.525764934763783567e-03, 4.523568414492149317e-03, 4.521364650894597707e-03, 4.519153647892876213e-03, 4.516935409420375774e-03, 4.514709939421993751e-03, 4.512477241854145199e-03, 4.510237320684943284e-03, 4.507990179893899170e-03, 4.505735823472069475e-03, 4.503474255422211525e-03, 4.501205479758355749e-03, 4.498929500506313080e-03, 4.496646321703196177e-03, 4.494355947397680497e-03, 4.492058381650012970e-03, 4.489753628531856743e-03, 4.487441692126325869e-03, 4.485122576528134501e-03, 4.482796285843335810e-03, 4.480462824189485917e-03, 4.478122195695644764e-03, 4.475774404502228659e-03, 4.473419454761192425e-03, 4.471057350635856791e-03, 4.468688096300891914e-03, 4.466311695942624428e-03, 4.463928153758536105e-03, 4.461537473957570034e-03, 4.459139660760252054e-03, 4.456734718398198958e-03, 4.454322651114703963e-03, 4.451903463164192006e-03, 4.449477158812527658e-03, 4.447043742337036809e-03, 4.444603218026265540e-03, 4.442155590180131043e-03, 4.439700863109955452e-03, 4.437239041138309713e-03, 4.434770128599077772e-03, 4.432294129837561526e-03, 4.429811049210229286e-03, 4.427320891084966445e-03, 4.424823659840902874e-03, 4.422319359868328789e-03, 4.419807995569091132e-03, 4.417289571356021981e-03, 4.414764091653321926e-03, 4.412231560896508892e-03, 4.409691983532219514e-03, 4.407145364018438122e-03, 4.404591706824304183e-03, 4.402031016430186031e-03, 4.399463297327712956e-03, 4.396888554019660715e-03, 4.394306791020000970e-03, 4.391718012853974146e-03, 4.389122224057932439e-03, 4.386519429179323339e-03, 4.383909632777001006e-03, 4.381292839420663360e-03, 4.378669053691452290e-03, 4.376038280181501761e-03, 4.373400523493984650e-03, 4.370755788243465764e-03, 4.368104079055362340e-03, 4.365445400566316143e-03, 4.362779757424119741e-03, 4.360107154287536091e-03, 4.357427595826537069e-03, 4.354741086722097899e-03, 4.352047631666241395e-03, 4.349347235362142038e-03, 4.346639902523947302e-03, 4.343925637876858321e-03, 4.341204446157161979e-03, 4.338476332112157184e-03, 4.335741300500020427e-03, 4.332999356090235128e-03, 4.330250503662944582e-03, 4.327494748009644114e-03, 4.324732093932494130e-03, 4.321962546244776347e-03, 4.319186109770798386e-03, 4.316402789345738511e-03, 4.313612589815707214e-03, 4.310815516037896401e-03, 4.308011572880255866e-03, 4.305200765221828089e-03, 4.302383097952465485e-03, 4.299558575972956161e-03, 4.296727204195025657e-03, 4.293888987541290975e-03, 4.291043930945101850e-03, 4.288192039350979638e-03, 4.285333317714093426e-03, 4.282467771000432639e-03, 4.279595404187107148e-03, 4.276716222261712358e-03, 4.273830230223042183e-03, 4.270937433080413369e-03, 4.268037835854081828e-03, 4.265131443575180190e-03, 4.262218261285510498e-03, 4.259298294037746312e-03, 4.256371546895340759e-03, 4.253438024932458018e-03, 4.250497733234136384e-03, 4.247550676896064484e-03, 4.244596861024695772e-03, 4.241636290737303173e-03, 4.238668971161829897e-03, 4.235694907436806170e-03, 4.232714104711813273e-03, 4.229726568146780115e-03, 4.226732302912513187e-03, 4.223731314190506611e-03, 4.220723607172838926e-03, 4.217709187062372578e-03, 4.214688059072529275e-03, 4.211660228427405346e-03, 4.208625700361776946e-03, 4.205584480121028930e-03, 4.202536572961114957e-03, 4.199481984148702336e-03, 4.196420718960969937e-03, 4.193352782685778185e-03, 4.190278180621537230e-03, 4.187196918077086376e-03, 4.184109000372130370e-03, 4.181014432836752809e-03, 4.177913220811463844e-03, 4.174805369647649478e-03, 4.171690884706917568e-03, 4.168569771361502023e-03, 4.165442034994219431e-03, 4.162307680998281710e-03, 4.159166714777514685e-03, 4.156019141746105684e-03, 4.152864967328744050e-03, 4.149704196960686195e-03, 4.146536836087522278e-03, 4.143362890165330596e-03, 4.140182364660687127e-03, 4.136995265050538891e-03, 4.133801596822138033e-03, 4.130601365473460761e-03, 4.127394576512492634e-03, 4.124181235458026541e-03, 4.120961347838859520e-03, 4.117734919194324453e-03, 4.114501955074193786e-03, 4.111262461038472232e-03, 4.108016442657506928e-03, 4.104763905512110594e-03, 4.101504855193238881e-03, 4.098239297302345985e-03, 4.094967237451048979e-03, 4.091688681261275266e-03, 4.088403634365357989e-03, 4.085112102405817451e-03, 4.081814091035314285e-03, 4.078509605917065781e-03, 4.075198652724348891e-03, 4.071881237140543598e-03, 4.068557364859641187e-03, 4.065227041585401171e-03, 4.061890273032252481e-03, 4.058547064924413958e-03, 4.055197422996495438e-03, 4.051841352993308665e-03, 4.048478860669748464e-03, 4.045109951790874271e-03, 4.041734632132004679e-03, 4.038352907478437274e-03, 4.034964783625760894e-03, 4.031570266379575461e-03, 4.028169361555565715e-03, 4.024762074979659938e-03, 4.021348412487784491e-03, 4.017928379925811769e-03, 4.014501983150044195e-03, 4.011069228026473490e-03, 4.007630120431290681e-03, 4.004184666250808038e-03, 4.000732871381217082e-03, 3.997274741728884355e-03, 3.993810283210065190e-03, 3.990339501751011264e-03, 3.986862403288093763e-03, 3.983378993767539705e-03, 3.979889279145545564e-03, 3.976393265388380484e-03, 3.972890958472120870e-03, 3.969382364382935749e-03, 3.965867489116785792e-03, 3.962346338679577709e-03, 3.958818919087232768e-03, 3.955285236365494242e-03, 3.951745296549822456e-03, 3.948199105685973320e-03, 3.944646669829175202e-03, 3.941087995044640670e-03, 3.937523087407550013e-03, 3.933951953002725113e-03, 3.930374597925005882e-03, 3.926791028278893772e-03, 3.923201250178738261e-03, 3.919605269748761139e-03, 3.916003093122876963e-03, 3.912394726444777190e-03, 3.908780175868014316e-03, 3.905159447555758140e-03, 3.901532547681055979e-03, 3.897899482426633606e-03, 3.894260257984776853e-03, 3.890614880557854201e-03, 3.886963356357573448e-03, 3.883305691605466563e-03, 3.879641892532838081e-03, 3.875971965380534817e-03, 3.872295916399063828e-03, 3.868613751848716011e-03, 3.864925477999234769e-03, 3.861231101130162963e-03, 3.857530627530544095e-03, 3.853824063499022932e-03, 3.850111415343946981e-03, 3.846392689383149651e-03, 3.842667891944024847e-03, 3.838937029363652734e-03, 3.835200107988512644e-03, 3.831457134174759763e-03, 3.827708114288042984e-03, 3.823953054703323196e-03, 3.820191961805506024e-03, 3.816424841988576202e-03, 3.812651701656174369e-03, 3.808872547221487347e-03, 3.805087385107064693e-03, 3.801296221744893730e-03, 3.797499063576544390e-03, 3.793695917052837454e-03, 3.789886788634192795e-03, 3.786071684790300648e-03, 3.782250612000291178e-03, 3.778423576752750097e-03, 3.774590585545617612e-03, 3.770751644885976354e-03, 3.766906761290734866e-03, 3.763055941285613649e-03, 3.759199191406175592e-03, 3.755336518196903100e-03, 3.751467928211725013e-03, 3.747593428013992322e-03, 3.743713024176190205e-03, 3.739826723280110631e-03, 3.735934531916902668e-03, 3.732036456686876457e-03, 3.728132504199584314e-03, 3.724222681073925678e-03, 3.720306993937855678e-03, 3.716385449428725573e-03, 3.712458054192938842e-03, 3.708524814886103409e-03, 3.704585738173123144e-03, 3.700640830727993606e-03, 3.696690099233686244e-03, 3.692733550382744714e-03, 3.688771190876425320e-03, 3.684803027425270772e-03, 3.680829066749019551e-03, 3.676849315576333991e-03, 3.672863780645151989e-03, 3.668872468702331826e-03, 3.664875386503818264e-03, 3.660872540814739257e-03, 3.656863938409117120e-03, 3.652849586070012079e-03, 3.648829490589656274e-03, 3.644803658769080797e-03, 3.640772097418494297e-03, 3.636734813357024934e-03, 3.632691813412582040e-03, 3.628643104422475847e-03, 3.624588693232522803e-03, 3.620528586697667472e-03, 3.616462791681858933e-03, 3.612391315057828737e-03, 3.608314163707223177e-03, 3.604231344520705208e-03, 3.600142864397632651e-03, 3.596048730246426822e-03, 3.591948948984223424e-03, 3.587843527537014354e-03, 3.583732472839733143e-03, 3.579615791836024668e-03, 3.575493491478353575e-03, 3.571365578728081906e-03, 3.567232060555199785e-03, 3.563092943938677565e-03, 3.558948235866114113e-03, 3.554797943333700815e-03, 3.550642073346831334e-03, 3.546480632919156613e-03, 3.542313629073231065e-03, 3.538141068840418464e-03, 3.533962959260616120e-03, 3.529779307382415344e-03, 3.525590120263221144e-03, 3.521395404968890967e-03, 3.517195168574127184e-03, 3.512989418162123199e-03, 3.508778160824701804e-03, 3.504561403662422719e-03, 3.500339153784356224e-03, 3.496111418307970824e-03, 3.491878204359776840e-03, 3.487639519074280364e-03, 3.483395369595105196e-03, 3.479145763073951576e-03, 3.474890706671168207e-03, 3.470630207555900574e-03, 3.466364272905397489e-03, 3.462092909905551460e-03, 3.457816125750860520e-03, 3.453533927644119456e-03, 3.449246322796585464e-03, 3.444953318428111300e-03, 3.440654921766767970e-03, 3.436351140049253693e-03, 3.432041980520519203e-03, 3.427727450433890044e-03, 3.423407557051246983e-03, 3.419082307642735009e-03, 3.414751709486656649e-03, 3.410415769870128559e-03, 3.406074496088046331e-03, 3.401727895444183868e-03, 3.397375975250150823e-03, 3.393018742826033572e-03, 3.388656205500321494e-03, 3.384288370609591680e-03, 3.379915245498711033e-03, 3.375536837520923435e-03, 3.371153154037559180e-03, 3.366764202418184599e-03, 3.362369990040700498e-03, 3.357970524291034251e-03, 3.353565812563464622e-03, 3.349155862260351155e-03, 3.344740680792031382e-03, 3.340320275577465716e-03, 3.335894654043265566e-03, 3.331463823624307864e-03, 3.327027791763868640e-03, 3.322586565912795994e-03, 3.318140153530603400e-03, 3.313688562084366428e-03, 3.309231799049451757e-03, 3.304769871909337634e-03, 3.300302788155417850e-03, 3.295830555287091509e-03, 3.291353180811909182e-03, 3.286870672245287544e-03, 3.282383037110619094e-03, 3.277890282939401826e-03, 3.273392417270923945e-03, 3.268889447652602136e-03, 3.264381381639681456e-03, 3.259868226795134289e-03, 3.255349990690340790e-03, 3.250826680904085348e-03, 3.246298305023207539e-03, 3.241764870642556157e-03, 3.237226385364611481e-03, 3.232682856799911578e-03, 3.228134292566648984e-03, 3.223580700290881035e-03, 3.219022087606584082e-03, 3.214458462155392413e-03, 3.209889831586726187e-03, 3.205316203557913735e-03, 3.200737585733933518e-03, 3.196153985787332594e-03, 3.191565411398858930e-03, 3.186971870256396274e-03, 3.182373370056131631e-03, 3.177769918501422482e-03, 3.173161523303482008e-03, 3.168548192181458879e-03, 3.163929932861741200e-03, 3.159306753078523766e-03, 3.154678660573756888e-03, 3.150045663096769956e-03, 3.145407768404723768e-03, 3.140764984262208077e-03, 3.136117318441377332e-03, 3.131464778722113304e-03, 3.126807372891673813e-03, 3.122145108744891345e-03, 3.117477994084229872e-03, 3.112806036719581882e-03, 3.108129244468147388e-03, 3.103447625155088783e-03, 3.098761186612445772e-03, 3.094069936680331895e-03, 3.089373883205775301e-03, 3.084673034043469448e-03, 3.079967397055597030e-03, 3.075256980111621807e-03, 3.070541791088362334e-03, 3.065821837870215307e-03, 3.061097128348745297e-03, 3.056367670422910267e-03, 3.051633471999127059e-03, 3.046894540990952634e-03, 3.042150885319456610e-03, 3.037402512912905968e-03, 3.032649431706651438e-03, 3.027891649643830053e-03, 3.023129174674327353e-03, 3.018362014755416635e-03, 3.013590177851931985e-03, 3.008813671935348880e-03, 3.004032504984968134e-03, 2.999246684986779220e-03, 2.994456219934151561e-03, 2.989661117827731307e-03, 2.984861386675146441e-03, 2.980057034491176773e-03, 2.975248069297885788e-03, 2.970434499124296242e-03, 2.965616332006527217e-03, 2.960793575987937225e-03, 2.955966239118756455e-03, 2.951134329456490089e-03, 2.946297855065567895e-03, 2.941456824017251413e-03, 2.936611244390355605e-03, 2.931761124270167249e-03, 2.926906471749171797e-03, 2.922047294926942342e-03, 2.917183601909823908e-03, 2.912315400811304241e-03, 2.907442699751656024e-03, 2.902565506858082595e-03, 2.897683830264848048e-03, 2.892797678112975831e-03, 2.887907058550349352e-03, 2.883011979731907141e-03, 2.878112449819320191e-03, 2.873208476980890907e-03, 2.868300069392302944e-03, 2.863387235235383913e-03, 2.858469982699396884e-03, 2.853548319980041617e-03, 2.848622255279638447e-03, 2.843691796807810892e-03, 2.838756952780389746e-03, 2.833817731420162477e-03, 2.828874140956738354e-03, 2.823926189626227955e-03, 2.818973885671642154e-03, 2.814017237342513519e-03, 2.809056252895040726e-03, 2.804090940592242082e-03, 2.799121308703606849e-03, 2.794147365505252230e-03, 2.789169119280064755e-03, 2.784186578317436600e-03, 2.779199750913095585e-03, 2.774208645369913989e-03, 2.769213269996658247e-03, 2.764213633109286524e-03, 2.759209743029739613e-03, 2.754201608086701610e-03, 2.749189236615456802e-03, 2.744172636957616877e-03, 2.739151817461257972e-03, 2.734126786481101950e-03, 2.729097552378082284e-03, 2.724064123519776438e-03, 2.719026508280038106e-03, 2.713984715039092187e-03, 2.708938752183755530e-03, 2.703888628107084784e-03, 2.698834351208280555e-03, 2.693775929893464129e-03, 2.688713372574511300e-03, 2.683646687669804382e-03, 2.678575883604354928e-03, 2.673500968808859186e-03, 2.668421951720955764e-03, 2.663338840784006123e-03, 2.658251644447809717e-03, 2.653160371168561057e-03, 2.648065029408471979e-03, 2.642965627635979805e-03, 2.637862174325883522e-03, 2.632754677958929184e-03, 2.627643147022263540e-03, 2.622527590009010763e-03, 2.617408015418439416e-03, 2.612284431756102965e-03, 2.607156847533559189e-03, 2.602025271268225762e-03, 2.596889711484181695e-03, 2.591750176710989027e-03, 2.586606675484512050e-03, 2.581459216346746865e-03, 2.576307807845494395e-03, 2.571152458534811409e-03, 2.565993176974548651e-03, 2.560829971730556841e-03, 2.555662851374835426e-03, 2.550491824485148773e-03, 2.545316899645205713e-03, 2.540138085444814363e-03, 2.534955390479477939e-03, 2.529768823350794608e-03, 2.524578392666163018e-03, 2.519384107038608392e-03, 2.514185975087519787e-03, 2.508984005437794873e-03, 2.503778206719967873e-03, 2.498568587570977172e-03, 2.493355156632970967e-03, 2.488137922554123447e-03, 2.482916893988474771e-03, 2.477692079595606237e-03, 2.472463488041057051e-03, 2.467231127995928811e-03, 2.461995008137017778e-03, 2.456755137147011766e-03, 2.451511523714096363e-03, 2.446264176532117560e-03, 2.441013104300770401e-03, 2.435758315725252473e-03, 2.430499819516167195e-03, 2.425237624390295769e-03, 2.419971739069329535e-03, 2.414702172281242565e-03, 2.409428932758984551e-03, 2.404152029241286154e-03, 2.398871470472550577e-03, 2.393587265202514868e-03, 2.388299422186430324e-03, 2.383007950185220356e-03, 2.377712857965050709e-03, 2.372414154297792198e-03, 2.367111847960587465e-03, 2.361805947736014474e-03, 2.356496462412251743e-03, 2.351183400782771733e-03, 2.345866771646199465e-03, 2.340546583807071902e-03, 2.335222846074929814e-03, 2.329895567264499926e-03, 2.324564756196416566e-03, 2.319230421695944473e-03, 2.313892572594348791e-03, 2.308551217727599237e-03, 2.303206365937182382e-03, 2.297858026069957670e-03, 2.292506206977867715e-03, 2.287150917518070148e-03, 2.281792166553133633e-03, 2.276429962950581639e-03, 2.271064315583372524e-03, 2.265695233329462818e-03, 2.260322725071952071e-03, 2.254946799699273675e-03, 2.249567466104884349e-03, 2.244184733187099771e-03, 2.238798609849933750e-03, 2.233409105001904309e-03, 2.228016227556825577e-03, 2.222619986433688969e-03, 2.217220390556299322e-03, 2.211817448853714650e-03, 2.206411170259833278e-03, 2.201001563713552139e-03, 2.195588638158926797e-03, 2.190172402544799789e-03, 2.184752865824979295e-03, 2.179330036958372283e-03, 2.173903924908588987e-03, 2.168474538644374425e-03, 2.163041887139193799e-03, 2.157605979371390783e-03, 2.152166824324357533e-03, 2.146724430986212892e-03, 2.141278808349666215e-03, 2.135829965412852638e-03, 2.130377911178111400e-03, 2.124922654652810702e-03, 2.119464204849218041e-03, 2.114002570784121165e-03, 2.108537761479286048e-03, 2.103069785961035349e-03, 2.097598653260415811e-03, 2.092124372413334439e-03, 2.086646952460224132e-03, 2.081166402446192436e-03, 2.075682731421152512e-03, 2.070195948439451043e-03, 2.064706062560292803e-03, 2.059213082847369865e-03, 2.053717018368728022e-03, 2.048217878197599890e-03, 2.042715671411189302e-03, 2.037210407091489227e-03, 2.031702094325138225e-03, 2.026190742203131182e-03, 2.020676359820965020e-03, 2.015158956278810878e-03, 2.009638540681068283e-03, 2.004115122136856074e-03, 1.998588709759538829e-03, 1.993059312666919849e-03, 1.987526939981412027e-03, 1.981991600829700884e-03, 1.976453304342609251e-03, 1.970912059655891349e-03, 1.965367875909163325e-03, 1.959820762246691685e-03, 1.954270727816941836e-03, 1.948717781772445808e-03, 1.943161933270665500e-03, 1.937603191472701825e-03, 1.932041565544182242e-03, 1.926477064655102676e-03, 1.920909697979523295e-03, 1.915339474695707065e-03, 1.909766403986324886e-03, 1.904190495037980059e-03, 1.898611757041705067e-03, 1.893030199192498840e-03, 1.887445830689521908e-03, 1.881858660736232796e-03, 1.876268698540095722e-03, 1.870675953312415148e-03, 1.865080434269213334e-03, 1.859482150629825645e-03, 1.853881111618394580e-03, 1.848277326462471589e-03, 1.842670804393899391e-03, 1.837061554648635039e-03, 1.831449586466455228e-03, 1.825834909091098111e-03, 1.820217531770476887e-03, 1.814597463756255228e-03, 1.808974714304015761e-03, 1.803349292673463687e-03, 1.797721208127955579e-03, 1.792090469934978824e-03, 1.786457087365703840e-03, 1.780821069695168613e-03, 1.775182426202427666e-03, 1.769541166170250212e-03, 1.763897298884949940e-03, 1.758250833637271240e-03, 1.752601779721125021e-03, 1.746950146434414009e-03, 1.741295943078933865e-03, 1.735639178959952084e-03, 1.729979863386715182e-03, 1.724318005671990296e-03, 1.718653615132215672e-03, 1.712986701087709264e-03, 1.707317272862246766e-03, 1.701645339783255462e-03, 1.695970911181972525e-03, 1.690293996393001574e-03, 1.684614604754781702e-03, 1.678932745609228823e-03, 1.673248428301555039e-03, 1.667561662181160946e-03, 1.661872456600354316e-03, 1.656180820915203154e-03, 1.650486764485424888e-03, 1.644790296674028150e-03, 1.639091426847484080e-03, 1.633390164375936012e-03, 1.627686518632695317e-03, 1.621980498994768111e-03, 1.616272114842376038e-03, 1.610561375559143617e-03, 1.604848290532265428e-03, 1.599132869152103441e-03, 1.593415120812383904e-03, 1.587695054910351301e-03, 1.581972680846315373e-03, 1.576248008024152669e-03, 1.570521045850889561e-03, 1.564791803736581902e-03, 1.559060291095173707e-03, 1.553326517343218451e-03, 1.547590491900752499e-03, 1.541852224191152428e-03, 1.536111723640793065e-03, 1.530368999679237443e-03, 1.524624061739402250e-03, 1.518876919257104849e-03, 1.513127581671543575e-03, 1.507376058424846933e-03, 1.501622358962250532e-03, 1.495866492732269909e-03, 1.490108469186361391e-03, 1.484348297778782669e-03, 1.478585987967478803e-03, 1.472821549212647825e-03, 1.467054990978262311e-03, 1.461286322730668153e-03, 1.455515553939359333e-03, 1.449742694077189344e-03, 1.443967752619386728e-03, 1.438190739044365200e-03, 1.432411662833586600e-03, 1.426630533471217850e-03, 1.420847360444313541e-03, 1.415062153242998720e-03, 1.409274921359989462e-03, 1.403485674291094854e-03, 1.397694421534768352e-03, 1.391901172592261088e-03, 1.386105936967818543e-03, 1.380308724168321025e-03, 1.374509543703171998e-03, 1.368708405085148532e-03, 1.362905317828998339e-03, 1.357100291452951807e-03, 1.351293335477289116e-03, 1.345484459425243598e-03, 1.339673672822835416e-03, 1.333860985198552594e-03, 1.328046406083516900e-03, 1.322229945011659923e-03, 1.316411611519333405e-03, 1.310591415145480115e-03, 1.304769365431802334e-03, 1.298945471922308657e-03, 1.293119744163814680e-03, 1.287292191705527314e-03, 1.281462824098905141e-03, 1.275631650898560255e-03, 1.269798681660930543e-03, 1.263963925945178930e-03, 1.258127393313050475e-03, 1.252289093328396623e-03, 1.246449035558009830e-03, 1.240607229570500972e-03, 1.234763684937125730e-03, 1.228918411231636268e-03, 1.223071418029959877e-03, 1.217222714910352931e-03, 1.211372311453590405e-03, 1.205520217242561686e-03, 1.199666441862457054e-03, 1.193810994900933349e-03, 1.187953885947645597e-03, 1.182095124594761569e-03, 1.176234720436547835e-03, 1.170372683069221664e-03, 1.164509022091851989e-03, 1.158643747105043411e-03, 1.152776867711824155e-03, 1.146908393517504258e-03, 1.141038334129275281e-03, 1.135166699156702971e-03, 1.129293498211266259e-03, 1.123418740906529864e-03, 1.117542436858335111e-03, 1.111664595684373627e-03, 1.105785227004387481e-03, 1.099904340440338102e-03, 1.094021945616068230e-03, 1.088138052157151207e-03, 1.082252669691795635e-03, 1.076365807849383226e-03, 1.070477476262038071e-03, 1.064587684563154946e-03, 1.058696442388240870e-03, 1.052803759375094865e-03, 1.046909645162818515e-03, 1.041014109392635186e-03, 1.035117161707759708e-03, 1.029218811752974231e-03, 1.023319069175153634e-03, 1.017417943622774381e-03, 1.011515444746107937e-03, 1.005611582197392514e-03, 9.997063656304349451e-04, 9.937998047007765706e-04, 9.878919090658838404e-04, 9.819826883848115605e-04, 9.760721523180358175e-04, 9.701603105283785862e-04, 9.642471726795301791e-04, 9.583327484376214477e-04, 9.524170474697606515e-04, 9.465000794449295518e-04, 9.405818540338460425e-04, 9.346623809086148206e-04, 9.287416697429102912e-04, 9.228197302121565445e-04, 9.168965719931189374e-04, 9.109722047640862394e-04, 9.050466382050428036e-04, 8.991198819972115756e-04, 8.931919458235461047e-04, 8.872628393683265700e-04, 8.813325723170159064e-04, 8.754011543571617532e-04, 8.694685951770614752e-04, 8.635349044666089250e-04, 8.576000919174758298e-04, 8.516641672219600438e-04, 8.457271400745157907e-04, 8.397890201702538871e-04, 8.338498172058803363e-04, 8.279095408795220969e-04, 8.219682008903965095e-04, 8.160258069389937684e-04, 8.100823687272480081e-04, 8.041378959581396181e-04, 7.981923983358668725e-04, 7.922458855660313281e-04, 7.862983673551625103e-04, 7.803498534112258619e-04, 7.744003534432145411e-04, 7.684498771610000179e-04, 7.624984342762396606e-04, 7.565460345010392631e-04, 7.505926875488700637e-04, 7.446384031344087167e-04, 7.386831909731321260e-04, 7.327270607818286464e-04, 7.267700222781224443e-04, 7.208120851806514148e-04, 7.148532592092496536e-04, 7.088935540845412060e-04, 7.029329795281171172e-04, 6.969715452627160603e-04, 6.910092610118850898e-04, 6.850461364998248169e-04, 6.790821814523045853e-04, 6.731174055951836188e-04, 6.671518186559964505e-04, 6.611854303624673489e-04, 6.552182504433594649e-04, 6.492502886286651096e-04, 6.432815546485862786e-04, 6.373120582343833659e-04, 6.313418091182296634e-04, 6.253708170327922089e-04, 6.193990917117541545e-04, 6.134266428893273091e-04, 6.074534803004385131e-04, 6.014796136809149284e-04, 5.955050527670634761e-04, 5.895298072958614398e-04, 5.835538870051368765e-04, 5.775773016332186359e-04, 5.716000609187895602e-04, 5.656221746018028507e-04, 5.596436524220005067e-04, 5.536645041204944166e-04, 5.476847394382879401e-04, 5.417043681171922762e-04, 5.357233998996728313e-04, 5.297418445285087801e-04, 5.237597117469664290e-04, 5.177770112989952406e-04, 5.117937529287348462e-04, 5.058099463810382824e-04, 4.998256014009876775e-04, 4.938407277340784579e-04, 4.878553351264070231e-04, 4.818694333243121459e-04, 4.758830320742383634e-04, 4.698961411236424776e-04, 4.639087702196522897e-04, 4.579209291099116267e-04, 4.519326275427690471e-04, 4.459438752661232740e-04, 4.399546820289483963e-04, 4.339650575798048799e-04, 4.279750116677580492e-04, 4.219845540422313408e-04, 4.159936944526551844e-04, 4.100024426486526723e-04, 4.040108083802221393e-04, 3.980188013972550719e-04, 3.920264314500533274e-04, 3.860337082888491028e-04, 3.800406416639851839e-04, 3.740472413261019158e-04, 3.680535170257863550e-04, 3.620594785134241132e-04, 3.560651355401183273e-04, 3.500704978563360325e-04, 3.440755752128302767e-04, 3.380803773604886572e-04, 3.320849140499170416e-04, 3.260891950319592795e-04, 3.200932300572109927e-04, 3.140970288762096356e-04, 3.081006012396129002e-04, 3.021039568977848229e-04, 2.961071056009793932e-04, 2.901100570995288259e-04, 2.841128211433552363e-04, 2.781154074824900273e-04, 2.721178258666618385e-04, 2.661200860451409626e-04, 2.601221977675950529e-04, 2.541241707830715446e-04, 2.481260148401816983e-04, 2.421277396879517802e-04, 2.361293550744747753e-04, 2.301308707478253183e-04, 2.241322964559142213e-04, 2.181336419460683446e-04, 2.121349169655526682e-04, 2.061361312610841888e-04, 2.001372945790174003e-04, 1.941384166655295025e-04, 1.881395072662029829e-04, 1.821405761262100674e-04, 1.761416329904982804e-04, 1.701426876034396523e-04, 1.641437497086818307e-04, 1.581448290500676737e-04, 1.521459353701489989e-04, 1.461470784117746677e-04, 1.401482679166055274e-04, 1.341495136260319708e-04, 1.281508252810277862e-04, 1.221522126217967886e-04, 1.161536853879598444e-04, 1.101552533187387931e-04, 1.041569261524725678e-04, 9.815871362713673109e-05, 9.216062547985899947e-05, 8.616267144710454710e-05, 8.016486126486097063e-05, 7.416720466828813254e-05, 6.816971139156737577e-05, 6.217239116882385445e-05, 5.617525373277230445e-05, 5.017830881557054765e-05, 4.418156614900453134e-05, 3.818503546333603142e-05, 3.218872648882431655e-05, 2.619264895423961215e-05, 2.019681258778345924e-05, 1.420122711693924030e-05, 8.205902268121961562e-06, 2.210847766863241264e-06, -3.783926662003991898e-06, -9.778411294829215548e-06, -1.577259640862519510e-05, -2.176647228155168063e-05, -2.776002919273071011e-05, -3.375325742206175544e-05, -3.974614725057167583e-05, -4.573868896056397515e-05, -5.173087283469930025e-05, -5.772268915734735974e-05, -6.371412821366702589e-05, -6.970518028975615781e-05, -7.569583567306798931e-05, -8.168608465189233813e-05, -8.767591751583882133e-05, -9.366532455565254091e-05, -9.965429606302934928e-05, -1.056428223310315324e-04, -1.116308936539044984e-04, -1.176185003268912974e-04, -1.236056326467154171e-04, -1.295922809110638756e-04, -1.355784354190014680e-04, -1.415640864711212809e-04, -1.475492243686923736e-04, -1.535338394146766247e-04, -1.595179219135438211e-04, -1.655014621704211557e-04, -1.714844504924408636e-04, -1.774668771878248571e-04, -1.834487325660319338e-04, -1.894300069381735945e-04, -1.954106906164966627e-04, -2.013907739148673259e-04, -2.073702471485837319e-04, -2.133491006341936525e-04, -2.193273246899090289e-04, -2.253049096354230391e-04, -2.312818457917246995e-04, -2.372581234815814434e-04, -2.432337330290206554e-04, -2.492086647597476314e-04, -2.551829090012924881e-04, -2.611564560820911116e-04, -2.671292963328386486e-04, -2.731014200855679886e-04, -2.790728176737991670e-04, -2.850434794328915141e-04, -2.910133956998535941e-04, -2.969825568131645292e-04, -3.029509531132517524e-04, -3.089185749419769340e-04, -3.148854126431168787e-04, -3.208514565621767181e-04, -3.268166970462109628e-04, -3.327811244441653514e-04, -3.387447291070328132e-04, -3.447075013869978699e-04, -3.506694316385871365e-04, -3.566305102178170846e-04, -3.625907274826779218e-04, -3.685500737932820184e-04, -3.745085395109449384e-04, -3.804661149995353249e-04, -3.864227906245599965e-04, -3.923785567533046221e-04, -3.983334037551912910e-04, -4.042873220015914338e-04, -4.102403018656387433e-04, -4.161923337227135962e-04, -4.221434079499246958e-04, -4.280935149265926261e-04, -4.340426450340628814e-04, -4.399907886555251297e-04, -4.459379361763570132e-04, -4.518840779842756656e-04, -4.578292044684232416e-04, -4.637733060208399684e-04, -4.697163730348930281e-04, -4.756583959067454351e-04, -4.815993650344460109e-04, -4.875392708180758595e-04, -4.934781036600975352e-04, -4.994158539651691016e-04, -5.053525121399645879e-04, -5.112880685935811608e-04, -5.172225137373622373e-04, -5.231558379847106761e-04, -5.290880317515682125e-04, -5.350190854559007869e-04, -5.409489895181800395e-04, -5.468777343611935749e-04, -5.528053104098733326e-04, -5.587317080916295213e-04, -5.646569178365069613e-04, -5.705809300762703425e-04, -5.765037352457426725e-04, -5.824253237818955223e-04, -5.883456861240009229e-04, -5.942648127140345805e-04, -6.001826939961699874e-04, -6.060993204172520016e-04, -6.120146824266173031e-04, -6.179287704759082360e-04, -6.238415750194875164e-04, -6.297530865142566278e-04, -6.356632954194676045e-04, -6.415721921972032237e-04, -6.474797673118674315e-04, -6.533860112305911591e-04, -6.592909144233881228e-04, -6.651944673622335776e-04, -6.710966605224117634e-04, -6.769974843816000797e-04, -6.828969294200204401e-04, -6.887949861207819883e-04, -6.946916449696960254e-04, -7.005868964551024286e-04, -7.064807310683374848e-04, -7.123731393032257247e-04, -7.182641116565561049e-04, -7.241536386278981264e-04, -7.300417107194248937e-04, -7.359283184362485665e-04, -7.418134522865760510e-04, -7.476971027808633225e-04, -7.535792604329529703e-04, -7.594599157592315554e-04, -7.653390592791057927e-04, -7.712166815151482672e-04, -7.770927729921968960e-04, -7.829673242386794981e-04, -7.888403257857092444e-04, -7.947117681672383974e-04, -8.005816419203904029e-04, -8.064499375852902116e-04, -8.123166457048724845e-04, -8.181817568253631949e-04, -8.240452614957640906e-04, -8.299071502683333205e-04, -8.357674136984019880e-04, -8.416260423441853907e-04, -8.474830267671382058e-04, -8.533383575320918580e-04, -8.591920252063551741e-04, -8.650440203611708999e-04, -8.708943335701579188e-04, -8.767429554107712382e-04, -8.825898764633932116e-04, -8.884350873114853263e-04, -8.942785785419287521e-04, -9.001203407448429535e-04, -9.059603645134044116e-04, -9.117986404442560188e-04, -9.176351591373262334e-04, -9.234699111956408630e-04, -9.293028872258070512e-04, -9.351340778374950301e-04, -9.409634736439176621e-04, -9.467910652616503544e-04, -9.526168433104432749e-04, -9.584407984135675379e-04, -9.642629211979579940e-04, -9.700832022933254849e-04, -9.759016323335847377e-04, -9.817182019553317117e-04, -9.875329017992673722e-04, -9.933457225093204630e-04, -9.991566547327816218e-04, -1.004965689120641001e-03, -1.010772816327428023e-03, -1.016578027011002562e-03, -1.022381311832982987e-03, -1.028182661458551441e-03, -1.033982066556288389e-03, -1.039779517798626466e-03, -1.045575005861359335e-03, -1.051368521424038503e-03, -1.057160055170115786e-03, -1.062949597786062069e-03, -1.068737139962667049e-03, -1.074522672394145201e-03, -1.080306185778300791e-03, -1.086087670816970234e-03, -1.091867118215210895e-03, -1.097644518682409573e-03, -1.103419862931456991e-03, -1.109193141678905441e-03, -1.114964345645279731e-03, -1.120733465554924748e-03, -1.126500492135812034e-03, -1.132265416119945496e-03, -1.138028228243182297e-03, -1.143788919245058728e-03, -1.149547479869248833e-03, -1.155303900863065671e-03, -1.161058172977870060e-03, -1.166810286969203287e-03, -1.172560233595907383e-03, -1.178308003621426165e-03, -1.184053587812923568e-03, -1.189796976941412876e-03, -1.195538161782167636e-03, -1.201277133114229869e-03, -1.207013881720861524e-03, -1.212748398389367757e-03, -1.218480673910926279e-03, -1.224210699080982220e-03, -1.229938464699073574e-03, -1.235663961568649700e-03, -1.241387180497402877e-03, -1.247108112297429846e-03, -1.252826747784324332e-03, -1.258543077778619254e-03, -1.264257093104260380e-03, -1.269968784590017529e-03, -1.275678143068688548e-03, -1.281385159376903071e-03, -1.287089824356113694e-03, -1.292792128851757896e-03, -1.298492063713416102e-03, -1.304189619795214803e-03, -1.309884787955313502e-03, -1.315577559056376345e-03, -1.321267923965392145e-03, -1.326955873553499823e-03, -1.332641398696391734e-03, -1.338324490274118072e-03, -1.344005139170929234e-03, -1.349683336275603893e-03, -1.355359072481580841e-03, -1.361032338686099866e-03, -1.366703125791602757e-03, -1.372371424704223446e-03, -1.378037226335207229e-03, -1.383700521600027570e-03, -1.389361301418542017e-03, -1.395019556715297506e-03, -1.400675278419385734e-03, -1.406328457464244095e-03, -1.411979084788070283e-03, -1.417627151333618460e-03, -1.423272648048054187e-03, -1.428915565883392231e-03, -1.434555895796020813e-03, -1.440193628747069585e-03, -1.445828755702585058e-03, -1.451461267632634614e-03, -1.457091155512584132e-03, -1.462718410322250790e-03, -1.468343023046016259e-03, -1.473964984673308085e-03, -1.479584286197774181e-03, -1.485200918618375049e-03, -1.490814872938593834e-03, -1.496426140166539753e-03, -1.502034711315323881e-03, -1.507640577402853373e-03, -1.513243729451662321e-03, -1.518844158489313350e-03, -1.524441855548207226e-03, -1.530036811665432157e-03, -1.535629017883189014e-03, -1.541218465248327075e-03, -1.546805144812727403e-03, -1.552389047633430776e-03, -1.557970164771795918e-03, -1.563548487294752183e-03, -1.569124006273938483e-03, -1.574696712785845533e-03, -1.580266597912209636e-03, -1.585833652739510697e-03, -1.591397868359447753e-03, -1.596959235868749888e-03, -1.602517746369000592e-03, -1.608073390967037618e-03, -1.613626160774774519e-03, -1.619176046909021104e-03, -1.624723040491831251e-03, -1.630267132650605692e-03, -1.635808314517277120e-03, -1.641346577229655691e-03, -1.646881911929979443e-03, -1.652414309766267377e-03, -1.657943761891547728e-03, -1.663470259463692077e-03, -1.668993793646330638e-03, -1.674514355608086157e-03, -1.680031936522704454e-03, -1.685546527569430205e-03, -1.691058119932546807e-03, -1.696566704801800952e-03, -1.702072273372240430e-03, -1.707574816844058870e-03, -1.713074326422945942e-03, -1.718570793319945320e-03, -1.724064208751279696e-03, -1.729554563938653271e-03, -1.735041850109412653e-03, -1.740526058495688814e-03, -1.746007180335758203e-03, -1.751485206872596852e-03, -1.756960129355232591e-03, -1.762431939037899372e-03, -1.767900627180191662e-03, -1.773366185047356739e-03, -1.778828603910147027e-03, -1.784287875044642717e-03, -1.789743989732699115e-03, -1.795196939261458529e-03, -1.800646714923798261e-03, -1.806093308018179473e-03, -1.811536709848446391e-03, -1.816976911724157420e-03, -1.822413904960739532e-03, -1.827847680878619393e-03, -1.833278230804474742e-03, -1.838705546070457456e-03, -1.844129618014006631e-03, -1.849550437978913922e-03, -1.854967997313932077e-03, -1.860382287374135824e-03, -1.865793299520062754e-03, -1.871201025117875082e-03, -1.876605455539649995e-03, -1.882006582163236975e-03, -1.887404396372081286e-03, -1.892798889555637708e-03, -1.898190053108944446e-03, -1.903577878433022983e-03, -1.908962356934738869e-03, -1.914343480026596588e-03, -1.919721239127093878e-03, -1.925095625660839475e-03, -1.930466631057716972e-03, -1.935834246754119950e-03, -1.941198464192095017e-03, -1.946559274819515068e-03, -1.951916670090413867e-03, -1.957270641464549550e-03, -1.962621180407814886e-03, -1.967968278392092426e-03, -1.973311926895074744e-03, -1.978652117400632200e-03, -1.983988841398665916e-03, -1.989322090384927372e-03, -1.994651855861454687e-03, -1.999978129336099034e-03, -2.005300902322922768e-03, -2.010620166342293094e-03, -2.015935912920102744e-03, -2.021248133588941353e-03, -2.026556819887353859e-03, -2.031861963359663566e-03, -2.037163555556889376e-03, -2.042461588035975571e-03, -2.047756052359939703e-03, -2.053046940098220835e-03, -2.058334242826229815e-03, -2.063617952125785995e-03, -2.068898059584942887e-03, -2.074174556797811660e-03, -2.079447435364955351e-03, -2.084716686893211927e-03, -2.089982302995525149e-03, -2.095244275291258985e-03, -2.100502595406341603e-03, -2.105757254972423151e-03, -2.111008245628212803e-03, -2.116255559018063656e-03, -2.121499186793290685e-03, -2.126739120611346751e-03, -2.131975352135976123e-03, -2.137207873037490734e-03, -2.142436674992630533e-03, -2.147661749684413000e-03, -2.152883088802501777e-03, -2.158100684042817217e-03, -2.163314527107916291e-03, -2.168524609706842538e-03, -2.173730923554970801e-03, -2.178933460374314277e-03, -2.184132211893619925e-03, -2.189327169847614298e-03, -2.194518325978157131e-03, -2.199705672033488470e-03, -2.204889199768094669e-03, -2.210068900943680265e-03, -2.215244767327857398e-03, -2.220416790695455521e-03, -2.225584962827684837e-03, -2.230749275512289818e-03, -2.235909720543850180e-03, -2.241066289723610012e-03, -2.246218974859335964e-03, -2.251367767765700186e-03, -2.256512660263871369e-03, -2.261653644181917631e-03, -2.266790711354623074e-03, -2.271923853623361578e-03, -2.277053062836384770e-03, -2.282178330848945186e-03, -2.287299649522504807e-03, -2.292417010725898187e-03, -2.297530406334558767e-03, -2.302639828230613854e-03, -2.307745268303260620e-03, -2.312846718448332423e-03, -2.317944170568690416e-03, -2.323037616574059622e-03, -2.328127048380911404e-03, -2.333212457912768340e-03, -2.338293837100083664e-03, -2.343371177880053478e-03, -2.348444472197053906e-03, -2.353513712002189631e-03, -2.358578889253637369e-03, -2.363639995916781613e-03, -2.368697023963492552e-03, -2.373749965372985195e-03, -2.378798812131663245e-03, -2.383843556232382276e-03, -2.388884189675627174e-03, -2.393920704468695086e-03, -2.398953092625845038e-03, -2.403981346168648347e-03, -2.409005457125532827e-03, -2.414025417532211261e-03, -2.419041219431509668e-03, -2.424052854873216811e-03, -2.429060315914432881e-03, -2.434063594619426379e-03, -2.439062683059456307e-03, -2.444057573313185468e-03, -2.449048257466241146e-03, -2.454034727611593709e-03, -2.459016975849630769e-03, -2.463994994287427298e-03, -2.468968775039852379e-03, -2.473938310228821543e-03, -2.478903591983389141e-03, -2.483864612440068835e-03, -2.488821363742667499e-03, -2.493773838042138632e-03, -2.498722027496957498e-03, -2.503665924272725166e-03, -2.508605520542552762e-03, -2.513540808486893624e-03, -2.518471780293417978e-03, -2.523398428157277475e-03, -2.528320744281240505e-03, -2.533238720874982260e-03, -2.538152350156050105e-03, -2.543061624349128060e-03, -2.547966535686451393e-03, -2.552867076407950610e-03, -2.557763238760450003e-03, -2.562655014998809540e-03, -2.567542397385175462e-03, -2.572425378189064846e-03, -2.577303949687683067e-03, -2.582178104165775041e-03, -2.587047833915446116e-03, -2.591913131236570599e-03, -2.596773988436385395e-03, -2.601630397829854738e-03, -2.606482351739536612e-03, -2.611329842495416220e-03, -2.616172862435212163e-03, -2.621011403904475751e-03, -2.625845459255865891e-03, -2.630675020850329129e-03, -2.635500081055818129e-03, -2.640320632248522020e-03, -2.645136666812074062e-03, -2.649948177137701269e-03, -2.654755155624521478e-03, -2.659557594679347325e-03, -2.664355486716579562e-03, -2.669148824158521470e-03, -2.673937599435230548e-03, -2.678721804984363682e-03, -2.683501433251590882e-03, -2.688276476690157693e-03, -2.693046927761201786e-03, -2.697812778933919055e-03, -2.702574022684818555e-03, -2.707330651498611549e-03, -2.712082657867987724e-03, -2.716830034292979420e-03, -2.721572773282022843e-03, -2.726310867351247266e-03, -2.731044309024534007e-03, -2.735773090833942735e-03, -2.740497205319195398e-03, -2.745216645028132011e-03, -2.749931402516534156e-03, -2.754641470347969287e-03, -2.759346841094164129e-03, -2.764047507334794779e-03, -2.768743461657390860e-03, -2.773434696657685501e-03, -2.778121204939230666e-03, -2.782802979113694220e-03, -2.787480011801010855e-03, -2.792152295628622279e-03, -2.796819823232580930e-03, -2.801482587256788007e-03, -2.806140580353125302e-03, -2.810793795181737529e-03, -2.815442224410882269e-03, -2.820085860716749562e-03, -2.824724696783912931e-03, -2.829358725304853203e-03, -2.833987938980370071e-03, -2.838612330519426404e-03, -2.843231892639014238e-03, -2.847846618064419320e-03, -2.852456499529322596e-03, -2.857061529775157920e-03, -2.861661701552007612e-03, -2.866257007617908567e-03, -2.870847440739273792e-03, -2.875432993690954422e-03, -2.880013659255568816e-03, -2.884589430224526914e-03, -2.889160299397328102e-03, -2.893726259581673975e-03, -2.898287303593727240e-03, -2.902843424257973808e-03, -2.907394614407098326e-03, -2.911940866882318981e-03, -2.916482174533018869e-03, -2.921018530217111588e-03, -2.925549926800873838e-03, -2.930076357158839170e-03, -2.934597814174034775e-03, -2.939114290738121995e-03, -2.943625779750662537e-03, -2.948132274120277268e-03, -2.952633766763421933e-03, -2.957130250605519064e-03, -2.961621718580256281e-03, -2.966108163629712063e-03, -2.970589578704605545e-03, -2.975065956764145168e-03, -2.979537290775925891e-03, -2.984003573716208484e-03, -2.988464798569796365e-03, -2.992920958329870797e-03, -2.997372045998398984e-03, -3.001818054585699089e-03, -3.006258977110828814e-03, -3.010694806601443580e-03, -3.015125536093649517e-03, -3.019551158632241116e-03, -3.023971667270873836e-03, -3.028387055071317738e-03, -3.032797315104598067e-03, -3.037202440449775741e-03, -3.041602424195129131e-03, -3.045997259437356955e-03, -3.050386939281787314e-03, -3.054771456842575884e-03, -3.059150805242609201e-03, -3.063524977613329460e-03, -3.067893967095066711e-03, -3.072257766836904852e-03, -3.076616369996508591e-03, -3.080969769740532407e-03, -3.085317959244190337e-03, -3.089660931691596418e-03, -3.093998680275839280e-03, -3.098331198198335957e-03, -3.102658478669819385e-03, -3.106980514909641472e-03, -3.111297300145894531e-03, -3.115608827615769932e-03, -3.119915090564936641e-03, -3.124216082248374750e-03, -3.128511795929723224e-03, -3.132802224881446433e-03, -3.137087362385049694e-03, -3.141367201730941791e-03, -3.145641736218316147e-03, -3.149910959155410167e-03, -3.154174863859563784e-03, -3.158433443656673886e-03, -3.162686691881972777e-03, -3.166934601879432733e-03, -3.171177167002087790e-03, -3.175414380612187268e-03, -3.179646236080507088e-03, -3.183872726787298230e-03, -3.188093846121663969e-03, -3.192309587481641838e-03, -3.196519944274514146e-03, -3.200724909916425904e-03, -3.204924477832742612e-03, -3.209118641457899337e-03, -3.213307394235281455e-03, -3.217490729617513909e-03, -3.221668641066331110e-03, -3.225841122052450737e-03, -3.230008166055813989e-03, -3.234169766565682738e-03, -3.238325917079998111e-03, -3.242476611106447342e-03, -3.246621842161297612e-03, -3.250761603770470267e-03, -3.254895889468911556e-03, -3.259024692800650738e-03, -3.263148007319071568e-03, -3.267265826586796939e-03, -3.271378144175520180e-03, -3.275484953666370214e-03, -3.279586248649541628e-03, -3.283682022724619936e-03, -3.287772269500482264e-03, -3.291856982595123444e-03, -3.295936155635979976e-03, -3.300009782259787344e-03, -3.304077856112454682e-03, -3.308140370849302000e-03, -3.312197320135162534e-03, -3.316248697643750867e-03, -3.320294497058676880e-03, -3.324334712072372824e-03, -3.328369336387090784e-03, -3.332398363714271679e-03, -3.336421787774677527e-03, -3.340439602298572730e-03, -3.344451801025658151e-03, -3.348458377704899812e-03, -3.352459326094836805e-03, -3.356454639963443384e-03, -3.360444313088001463e-03, -3.364428339255442785e-03, -3.368406712261975099e-03, -3.372379425913370112e-03, -3.376346474025066283e-03, -3.380307850421555155e-03, -3.384263548937283417e-03, -3.388213563416023633e-03, -3.392157887710989597e-03, -3.396096515685142949e-03, -3.400029441210651506e-03, -3.403956658169613077e-03, -3.407878160453527670e-03, -3.411793941963375994e-03, -3.415703996609835858e-03, -3.419608318313196744e-03, -3.423506901003195435e-03, -3.427399738619340414e-03, -3.431286825110725375e-03, -3.435168154435966348e-03, -3.439043720563475775e-03, -3.442913517471135956e-03, -3.446777539146593083e-03, -3.450635779587317518e-03, -3.454488232800020930e-03, -3.458334892801537535e-03, -3.462175753618214769e-03, -3.466010809286024317e-03, -3.469840053850804969e-03, -3.473663481367978995e-03, -3.477481085902791539e-03, -3.481292861530244694e-03, -3.485098802334964802e-03, -3.488898902411437068e-03, -3.492693155863964369e-03, -3.496481556806435229e-03, -3.500264099362670328e-03, -3.504040777666402560e-03, -3.507811585860770055e-03, -3.511576518099234281e-03, -3.515335568544556127e-03, -3.519088731369761271e-03, -3.522836000757579439e-03, -3.526577370900332506e-03, -3.530312836000593698e-03, -3.534042390270630742e-03, -3.537766027932486533e-03, -3.541483743218278371e-03, -3.545195530369831937e-03, -3.548901383638997445e-03, -3.552601297287551196e-03, -3.556295265587072416e-03, -3.559983282819154018e-03, -3.563665343275357941e-03, -3.567341441257063789e-03, -3.571011571075678737e-03, -3.574675727052760692e-03, -3.578333903519384691e-03, -3.581986094817161612e-03, -3.585632295297132288e-03, -3.589272499320805311e-03, -3.592906701259489157e-03, -3.596534895494462626e-03, -3.600157076417111017e-03, -3.603773238428885795e-03, -3.607383375941158443e-03, -3.610987483375471992e-03, -3.614585555163318982e-03, -3.618177585746353529e-03, -3.621763569576308493e-03, -3.625343501114881850e-03, -3.628917374833948769e-03, -3.632485185215635765e-03, -3.636046926751789442e-03, -3.639602593944770564e-03, -3.643152181306914556e-03, -3.646695683360608262e-03, -3.650233094638567939e-03, -3.653764409683357001e-03, -3.657289623048060826e-03, -3.660808729295775017e-03, -3.664321722999670013e-03, -3.667828598743258246e-03, -3.671329351120222392e-03, -3.674823974734326912e-03, -3.678312464199712511e-03, -3.681794814140582593e-03, -3.685271019191477780e-03, -3.688741073997190908e-03, -3.692204973212618278e-03, -3.695662711502995142e-03, -3.699114283543987643e-03, -3.702559684021117757e-03, -3.705998907630584250e-03, -3.709431949078703227e-03, -3.712858803082038674e-03, -3.716279464367558145e-03, -3.719693927672446283e-03, -3.723102187744249669e-03, -3.726504239340906310e-03, -3.729900077230518390e-03, -3.733289696191677536e-03, -3.736673091013319094e-03, -3.740050256494608944e-03, -3.743421187445231026e-03, -3.746785878685100248e-03, -3.750144325044587126e-03, -3.753496521364591085e-03, -3.756842462496040851e-03, -3.760182143300639518e-03, -3.763515558650394003e-03, -3.766842703427497954e-03, -3.770163572524930663e-03, -3.773478160845940548e-03, -3.776786463304131463e-03, -3.780088474823732007e-03, -3.783384190339288047e-03, -3.786673604795880426e-03, -3.789956713149112821e-03, -3.793233510364921787e-03, -3.796503991419881638e-03, -3.799768151301020566e-03, -3.803025985005802426e-03, -3.806277487542256404e-03, -3.809522653929067661e-03, -3.812761479195115027e-03, -3.815993958380216496e-03, -3.819220086534326920e-03, -3.822439858718287842e-03, -3.825653270003379937e-03, -3.828860315471356839e-03, -3.832060990214655911e-03, -3.835255289336305870e-03, -3.838443207949801018e-03, -3.841624741179402221e-03, -3.844799884159778684e-03, -3.847968632036384822e-03, -3.851130979965226939e-03, -3.854286923112874505e-03, -3.857436456656585921e-03, -3.860579575784392221e-03, -3.863716275694631733e-03, -3.866846551596635293e-03, -3.869970398710318588e-03, -3.873087812266009112e-03, -3.876198787505134424e-03, -3.879303319679378199e-03, -3.882401404051453921e-03, -3.885493035894631731e-03, -3.888578210492834274e-03, -3.891656923140784149e-03, -3.894729169143922812e-03, -3.897794943818323841e-03, -3.900854242490932322e-03, -3.903907060499295974e-03, -3.906953393191796298e-03, -3.909993235927585256e-03, -3.913026584076469486e-03, -3.916053433019107619e-03, -3.919073778147038473e-03, -3.922087614862270789e-03, -3.925094938577928551e-03, -3.928095744717797350e-03, -3.931090028716411992e-03, -3.934077786019221298e-03, -3.937059012082401617e-03, -3.940033702373019024e-03, -3.943001852368983352e-03, -3.945963457558944107e-03, -3.948918513442475214e-03, -3.951867015530029920e-03, -3.954808959342817620e-03, -3.957744340413013769e-03, -3.960673154283569919e-03, -3.963595396508363781e-03, -3.966511062652292897e-03, -3.969420148290817539e-03, -3.972322649010624242e-03, -3.975218560409190388e-03, -3.978107878094763392e-03, -3.980990597686732795e-03, -3.983866714815327559e-03, -3.986736225121636883e-03, -3.989599124257789745e-03, -3.992455407886771022e-03, -3.995305071682584558e-03, -3.998148111330208053e-03, -4.000984522525472507e-03, -4.003814300975291202e-03, -4.006637442397540869e-03, -4.009453942520996642e-03, -4.012263797085548027e-03, -4.015067001841935226e-03, -4.017863552551997203e-03, -4.020653444988700302e-03, -4.023436674935692431e-03, -4.026213238187958780e-03, -4.028983130551416769e-03, -4.031746347842916044e-03, -4.034502885890467461e-03, -4.037252740533126862e-03, -4.039995907620901397e-03, -4.042732383014979378e-03, -4.045462162587512567e-03, -4.048185242221776642e-03, -4.050901617812160786e-03, -4.053611285264034116e-03, -4.056314240493920018e-03, -4.059010479429556000e-03, -4.061699998009466080e-03, -4.064382792183674625e-03, -4.067058857912977769e-03, -4.069728191169445612e-03, -4.072390787936403141e-03, -4.075046644207991342e-03, -4.077695755989789103e-03, -4.080338119298404682e-03, -4.082973730161517344e-03, -4.085602584618075982e-03, -4.088224678718195039e-03, -4.090840008523040881e-03, -4.093448570105097210e-03, -4.096050359547896182e-03, -4.098645372946248255e-03, -4.101233606406158062e-03, -4.103815056044722055e-03, -4.106389717990343614e-03, -4.108957588382694016e-03, -4.111518663372394980e-03, -4.114072939121646635e-03, -4.116620411803517156e-03, -4.119161077602595013e-03, -4.121694932714583919e-03, -4.124221973346384358e-03, -4.126742195716228898e-03, -4.129255596053608458e-03, -4.131762170599175173e-03, -4.134261915604943612e-03, -4.136754827334173691e-03, -4.139240902061377611e-03, -4.141720136072387509e-03, -4.144192525664262654e-03, -4.146658067145395261e-03, -4.149116756835576417e-03, -4.151568591065675148e-03, -4.154013566178011395e-03, -4.156451678526310901e-03, -4.158882924475355673e-03, -4.161307300401519138e-03, -4.163724802692389711e-03, -4.166135427746840182e-03, -4.168539171975205529e-03, -4.170936031799038317e-03, -4.173326003651352430e-03, -4.175709083976480822e-03, -4.178085269230081590e-03, -4.180454555879223842e-03, -4.182816940402369482e-03, -4.185172419289282138e-03, -4.187520989041191091e-03, -4.189862646170633420e-03, -4.192197387201582366e-03, -4.194525208669528001e-03, -4.196846107121064359e-03, -4.199160079114494862e-03, -4.201467121219413375e-03, -4.203767230016790084e-03, -4.206060402099106796e-03, -4.208346634070228576e-03, -4.210625922545434101e-03, -4.212898264151510204e-03, -4.215163655526596616e-03, -4.217422093320336018e-03, -4.219673574193861902e-03, -4.221918094819675400e-03, -4.224155651881762383e-03, -4.226386242075735704e-03, -4.228609862108397184e-03, -4.230826508698251956e-03, -4.233036178575184071e-03, -4.235238868480567520e-03, -4.237434575167419760e-03, -4.239623295399959357e-03, -4.241805025954190587e-03, -4.243979763617504453e-03, -4.246147505188751538e-03, -4.248308247478382524e-03, -4.250461987308375329e-03, -4.252608721512144904e-03, -4.254748446934727112e-03, -4.256881160432624336e-03, -4.259006858873913039e-03, -4.261125539138241151e-03, -4.263237198116710119e-03, -4.265341832712050106e-03, -4.267439439838608718e-03, -4.269530016422081256e-03, -4.271613559400012049e-03, -4.273690065721215924e-03, -4.275759532346326379e-03, -4.277821956247470324e-03, -4.279877334408300170e-03, -4.281925663824128273e-03, -4.283966941501853205e-03, -4.286001164459922463e-03, -4.288028329728421802e-03, -4.290048434349055285e-03, -4.292061475375081106e-03, -4.294067449871448623e-03, -4.296066354914633567e-03, -4.298058187592762071e-03, -4.300042945005705212e-03, -4.302020624264768500e-03, -4.303991222492982438e-03, -4.305954736825119006e-03, -4.307911164407350786e-03, -4.309860502397784392e-03, -4.311802747965877598e-03, -4.313737898292998793e-03, -4.315665950572076560e-03, -4.317586902007650856e-03, -4.319500749815977959e-03, -4.321407491225013123e-03, -4.323307123474330778e-03, -4.325199643815203464e-03, -4.327085049510608766e-03, -4.328963337835169470e-03, -4.330834506075242896e-03, -4.332698551528825492e-03, -4.334555471505648246e-03, -4.336405263327200096e-03, -4.338247924326518040e-03, -4.340083451848506316e-03, -4.341911843249726503e-03, -4.343733095898411403e-03, -4.345547207174591670e-03, -4.347354174469944890e-03, -4.349153995187920486e-03, -4.350946666743731039e-03, -4.352732186564250809e-03, -4.354510552088124153e-03, -4.356281760765784612e-03, -4.358045810059313525e-03, -4.359802697442599628e-03, -4.361552420401373746e-03, -4.363294976432930371e-03, -4.365030363046462462e-03, -4.366758577762880171e-03, -4.368479618114850735e-03, -4.370193481646912105e-03, -4.371900165915171103e-03, -4.373599668487719756e-03, -4.375291986944353402e-03, -4.376977118876594977e-03, -4.378655061887848539e-03, -4.380325813593216253e-03, -4.381989371619669262e-03, -4.383645733605976563e-03, -4.385294897202617406e-03, -4.386936860071984252e-03, -4.388571619888230121e-03, -4.390199174337290275e-03, -4.391819521116933391e-03, -4.393432657936835288e-03, -4.395038582518286628e-03, -4.396637292594652614e-03, -4.398228785910869923e-03, -4.399813060223898599e-03, -4.401390113302481796e-03, -4.402959942927136237e-03, -4.404522546890260633e-03, -4.406077922996134814e-03, -4.407626069060795702e-03, -4.409166982912212512e-03, -4.410700662390117620e-03, -4.412227105346180900e-03, -4.413746309643910848e-03, -4.415258273158612946e-03, -4.416762993777512830e-03, -4.418260469399714653e-03, -4.419750697936137770e-03, -4.421233677309566179e-03, -4.422709405454787294e-03, -4.424177880318250211e-03, -4.425639099858499383e-03, -4.427093062045758289e-03, -4.428539764862316278e-03, -4.429979206302267492e-03, -4.431411384371556836e-03, -4.432836297088088399e-03, -4.434253942481641321e-03, -4.435664318593868054e-03, -4.437067423478360285e-03, -4.438463255200602968e-03, -4.439851811837941357e-03, -4.441233091479707649e-03, -4.442607092227081333e-03, -4.443973812193151643e-03, -4.445333249503021639e-03, -4.446685402293556674e-03, -4.448030268713668023e-03, -4.449367846924161089e-03, -4.450698135097724134e-03, -4.452021131419032357e-03, -4.453336834084617793e-03, -4.454645241303018498e-03, -4.455946351294687476e-03, -4.457240162291986607e-03, -4.458526672539233487e-03, -4.459805880292723977e-03, -4.461077783820633323e-03, -4.462342381403093354e-03, -4.463599671332300033e-03, -4.464849651912199471e-03, -4.466092321458872173e-03, -4.467327678300223384e-03, -4.468555720776190392e-03, -4.469776447238713035e-03, -4.470989856051525539e-03, -4.472195945590508662e-03, -4.473394714243414741e-03, -4.474586160409974381e-03, -4.475770282501914665e-03, -4.476947078942876759e-03, -4.478116548168552952e-03, -4.479278688626555684e-03, -4.480433498776493877e-03, -4.481580977089951248e-03, -4.482721122050521874e-03, -4.483853932153718247e-03, -4.484979405907088372e-03, -4.486097541830212296e-03, -4.487208338454517359e-03, -4.488311794323594783e-03, -4.489407907992864002e-03, -4.490496678029871902e-03, -4.491578103014102000e-03, -4.492652181537028222e-03, -4.493718912202132251e-03, -4.494778293624939088e-03, -4.495830324432899955e-03, -4.496875003265536283e-03, -4.497912328774328686e-03, -4.498942299622806298e-03, -4.499964914486503410e-03, -4.500980172052919566e-03, -4.501988071021623648e-03, -4.502988610104174949e-03, -4.503981788024133577e-03, -4.504967603517096020e-03, -4.505946055330714226e-03, -4.506917142224542948e-03, -4.507880862970328577e-03, -4.508837216351667398e-03, -4.509786201164299631e-03, -4.510727816215974982e-03, -4.511662060326405814e-03, -4.512588932327390306e-03, -4.513508431062761284e-03, -4.514420555388340243e-03, -4.515325304172034503e-03, -4.516222676293722704e-03, -4.517112670645362371e-03, -4.517995286130969956e-03, -4.518870521666522831e-03, -4.519738376180089390e-03, -4.520598848611815171e-03, -4.521451937913782346e-03, -4.522297643050202272e-03, -4.523135962997303604e-03, -4.523966896743361783e-03, -4.524790443288697304e-03, -4.525606601645650560e-03, -4.526415370838655569e-03, -4.527216749904170584e-03, -4.528010737890685901e-03, -4.528797333858782838e-03, -4.529576536881073888e-03, -4.530348346042217464e-03, -4.531112760438928307e-03, -4.531869779179987894e-03, -4.532619401386214948e-03, -4.533361626190500135e-03, -4.534096452737782640e-03, -4.534823880185047569e-03, -4.535543907701397072e-03, -4.536256534467888145e-03, -4.536961759677733859e-03, -4.537659582536164582e-03, -4.538350002260473082e-03, -4.539033018080022332e-03, -4.539708629236248114e-03, -4.540376834982610445e-03, -4.541037634584708070e-03, -4.541691027320099786e-03, -4.542337012478504799e-03, -4.542975589361659614e-03, -4.543606757283386553e-03, -4.544230515569566003e-03, -4.544846863558130341e-03, -4.545455800599102966e-03, -4.546057326054601770e-03, -4.546651439298741125e-03, -4.547238139717753314e-03, -4.547817426709962509e-03, -4.548389299685685026e-03, -4.548953758067394992e-03, -4.549510801289596840e-03, -4.550060428798849595e-03, -4.550602640053824990e-03, -4.551137434525216394e-03, -4.551664811695844623e-03, -4.552184771060574682e-03, -4.552697312126328770e-03, -4.553202434412132252e-03, -4.553700137449072025e-03, -4.554190420780310396e-03, -4.554673283961059062e-03, -4.555148726558674518e-03, -4.555616748152481986e-03, -4.556077348333990515e-03, -4.556530526706685687e-03, -4.556976282886177065e-03, -4.557414616500178248e-03, -4.557845527188408852e-03, -4.558269014602705539e-03, -4.558685078406974310e-03, -4.559093718277182697e-03, -4.559494933901393592e-03, -4.559888724979714071e-03, -4.560275091224353511e-03, -4.560654032359592359e-03, -4.561025548121758720e-03, -4.561389638259270851e-03, -4.561746302532657116e-03, -4.562095540714444092e-03, -4.562437352589304024e-03, -4.562771737953918647e-03, -4.563098696617108423e-03, -4.563418228399705040e-03, -4.563730333134644220e-03, -4.564035010666933623e-03, -4.564332260853661526e-03, -4.564622083563946511e-03, -4.564904478679018135e-03, -4.565179446092175290e-03, -4.565446985708754984e-03, -4.565707097446193054e-03, -4.565959781233972122e-03, -4.566205037013676242e-03, -4.566442864738938859e-03, -4.566673264375445407e-03, -4.566896235900971476e-03, -4.567111779305371537e-03, -4.567319894590502610e-03, -4.567520581770369119e-03, -4.567713840870992782e-03, -4.567899671930462056e-03, -4.568078074998950348e-03, -4.568249050138671781e-03, -4.568412597423911550e-03, -4.568568716941022456e-03, -4.568717408788397147e-03, -4.568858673076530569e-03, -4.568992509927941904e-03, -4.569118919477204929e-03, -4.569237901870985309e-03, -4.569349457267972078e-03, -4.569453585838921875e-03, -4.569550287766660675e-03, -4.569639563246041293e-03, -4.569721412484011036e-03, -4.569795835699528436e-03, -4.569862833123622230e-03, -4.569922404999374882e-03, -4.569974551581911307e-03, -4.570019273138417951e-03, -4.570056569948108965e-03, -4.570086442302270444e-03, -4.570108890504208377e-03, -4.570123914869299829e-03, -4.570131515724937428e-03, -4.570131693410577067e-03, -4.570124448277720561e-03, -4.570109780689900897e-03, -4.570087691022660555e-03, -4.570058179663647781e-03, -4.570021247012478680e-03, -4.569976893480853439e-03, -4.569925119492495615e-03, -4.569865925483139989e-03, -4.569799311900573334e-03, -4.569725279204613598e-03, -4.569643827867090821e-03, -4.569554958371884433e-03, -4.569458671214887691e-03, -4.569354966904025893e-03, -4.569243845959239034e-03, -4.569125308912506088e-03, -4.568999356307809449e-03, -4.568865988701150543e-03, -4.568725206660574113e-03, -4.568577010766104035e-03, -4.568421401609813574e-03, -4.568258379795763803e-03, -4.568087945940058243e-03, -4.567910100670766541e-03, -4.567724844628011198e-03, -4.567532178463889515e-03, -4.567332102842523028e-03, -4.567124618440039294e-03, -4.566909725944538062e-03, -4.566687426056177147e-03, -4.566457719487045791e-03, -4.566220606961277420e-03, -4.565976089214986329e-03, -4.565724166996290231e-03, -4.565464841065278168e-03, -4.565198112194025250e-03, -4.564923981166637765e-03, -4.564642448779172509e-03, -4.564353515839662812e-03, -4.564057183168168837e-03, -4.563753451596665699e-03, -4.563442321969187442e-03, -4.563123795141681323e-03, -4.562797871982075468e-03, -4.562464553370312696e-03, -4.562123840198269858e-03, -4.561775733369811611e-03, -4.561420233800744448e-03, -4.561057342418860933e-03, -4.560687060163931029e-03, -4.560309387987639650e-03, -4.559924326853669052e-03, -4.559531877737657210e-03, -4.559132041627175259e-03, -4.558724819521746581e-03, -4.558310212432871954e-03, -4.557888221383966237e-03, -4.557458847410418221e-03, -4.557022091559543783e-03, -4.556577954890604111e-03, -4.556126438474794420e-03, -4.555667543395263037e-03, -4.555201270747058495e-03, -4.554727621637197181e-03, -4.554246597184613034e-03, -4.553758198520156675e-03, -4.553262426786607552e-03, -4.552759283138690417e-03, -4.552248768742990330e-03, -4.551730884778087960e-03, -4.551205632434426884e-03, -4.550673012914372567e-03, -4.550133027432215829e-03, -4.549585677214106928e-03, -4.549030963498190000e-03, -4.548468887534420045e-03, -4.547899450584687829e-03, -4.547322653922801668e-03, -4.546738498834444926e-03, -4.546146986617169948e-03, -4.545548118580450964e-03, -4.544941896045654600e-03, -4.544328320346000850e-03, -4.543707392826604706e-03, -4.543079114844449269e-03, -4.542443487768420447e-03, -4.541800512979257513e-03, -4.541150191869547034e-03, -4.540492525843784453e-03, -4.539827516318305570e-03, -4.539155164721329037e-03, -4.538475472492906060e-03, -4.537788441084921257e-03, -4.537094071961201083e-03, -4.536392366597306533e-03, -4.535683326480737833e-03, -4.534966953110789595e-03, -4.534243247998619337e-03, -4.533512212667199781e-03, -4.532773848651360481e-03, -4.532028157497747928e-03, -4.531275140764852438e-03, -4.530514800022975193e-03, -4.529747136854233441e-03, -4.528972152852596932e-03, -4.528189849623821123e-03, -4.527400228785450655e-03, -4.526603291966932105e-03, -4.525799040809383271e-03, -4.524987476965877664e-03, -4.524168602101150474e-03, -4.523342417891816278e-03, -4.522508926026264954e-03, -4.521668128204662553e-03, -4.520820026138961702e-03, -4.519964621552931966e-03, -4.519101916182081784e-03, -4.518231911773713111e-03, -4.517354610086913615e-03, -4.516470012892494224e-03, -4.515578121973123568e-03, -4.514678939123145836e-03, -4.513772466148659700e-03, -4.512858704867606791e-03, -4.511937657109627714e-03, -4.511009324716061183e-03, -4.510073709540111421e-03, -4.509130813446600959e-03, -4.508180638312193553e-03, -4.507223186025208564e-03, -4.506258458485738055e-03, -4.505286457605588678e-03, -4.504307185308304221e-03, -4.503320643529124846e-03, -4.502326834215035663e-03, -4.501325759324715549e-03, -4.500317420828540624e-03, -4.499301820708628483e-03, -4.498278960958747991e-03, -4.497248843584438112e-03, -4.496211470602872601e-03, -4.495166844042886023e-03, -4.494114965945115135e-03, -4.493055838361766433e-03, -4.491989463356764467e-03, -4.490915843005718021e-03, -4.489834979395897555e-03, -4.488746874626256891e-03, -4.487651530807371635e-03, -4.486548950061492944e-03, -4.485439134522570086e-03, -4.484322086336155894e-03, -4.483197807659424113e-03, -4.482066300661275218e-03, -4.480927567522196772e-03, -4.479781610434265156e-03, -4.478628431601286083e-03, -4.477468033238609854e-03, -4.476300417573279671e-03, -4.475125586843899800e-03, -4.473943543300669401e-03, -4.472754289205486608e-03, -4.471557826831781129e-03, -4.470354158464582769e-03, -4.469143286400562194e-03, -4.467925212947951134e-03, -4.466699940426588356e-03, -4.465467471167872821e-03, -4.464227807514787975e-03, -4.462980951821941648e-03, -4.461726906455427272e-03, -4.460465673792934904e-03, -4.459197256223785925e-03, -4.457921656148776043e-03, -4.456638875980248153e-03, -4.455348918142192083e-03, -4.454051785069992192e-03, -4.452747479210739621e-03, -4.451436003022940860e-03, -4.450117358976648715e-03, -4.448791549553487469e-03, -4.447458577246574812e-03, -4.446118444560533123e-03, -4.444771154011538036e-03, -4.443416708127229109e-03, -4.442055109446759256e-03, -4.440686360520801693e-03, -4.439310463911489216e-03, -4.437927422192489667e-03, -4.436537237948924399e-03, -4.435139913777341389e-03, -4.433735452285890444e-03, -4.432323856094098555e-03, -4.430905127832934082e-03, -4.429479270144946398e-03, -4.428046285683989204e-03, -4.426606177115512825e-03, -4.425158947116286656e-03, -4.423704598374584782e-03, -4.422243133590133060e-03, -4.420774555474040607e-03, -4.419298866748867446e-03, -4.417816070148604564e-03, -4.416326168418644414e-03, -4.414829164315764443e-03, -4.413325060608218157e-03, -4.411813860075597220e-03, -4.410295565508918179e-03, -4.408770179710592117e-03, -4.407237705494330970e-03, -4.405698145685417282e-03, -4.404151503120313019e-03, -4.402597780646922386e-03, -4.401036981124574476e-03, -4.399469107423855871e-03, -4.397894162426810999e-03, -4.396312149026734839e-03, -4.394723070128317768e-03, -4.393126928647615205e-03, -4.391523727511960004e-03, -4.389913469660036184e-03, -4.388296158041860712e-03, -4.386671795618789574e-03, -4.385040385363385071e-03, -4.383401930259690771e-03, -4.381756433302877625e-03, -4.380103897499542341e-03, -4.378444325867523503e-03, -4.376777721435862537e-03, -4.375104087245087342e-03, -4.373423426346776874e-03, -4.371735741803889873e-03, -4.370041036690682466e-03, -4.368339314092565054e-03, -4.366630577106312208e-03, -4.364914828839854509e-03, -4.363192072412393901e-03, -4.361462310954411503e-03, -4.359725547607559183e-03, -4.357981785524711604e-03, -4.356231027870027805e-03, -4.354473277818851455e-03, -4.352708538557624116e-03, -4.350936813284207900e-03, -4.349158105207424040e-03, -4.347372417547518651e-03, -4.345579753535709980e-03, -4.343780116414511921e-03, -4.341973509437604788e-03, -4.340159935869803212e-03, -4.338339398987084775e-03, -4.336511902076638572e-03, -4.334677448436713432e-03, -4.332836041376786178e-03, -4.330987684217419385e-03, -4.329132380290303013e-03, -4.327270132938307312e-03, -4.325400945515373539e-03, -4.323524821386552121e-03, -4.321641763928055560e-03, -4.319751776527162163e-03, -4.317854862582180472e-03, -4.315951025502681726e-03, -4.314040268709102600e-03, -4.312122595633180629e-03, -4.310198009717547407e-03, -4.308266514415965386e-03, -4.306328113193289703e-03, -4.304382809525387522e-03, -4.302430606899157982e-03, -4.300471508812609388e-03, -4.298505518774691815e-03, -4.296532640305480988e-03, -4.294552876936023889e-03, -4.292566232208349167e-03, -4.290572709675564284e-03, -4.288572312901767908e-03, -4.286565045461956242e-03, -4.284550910942304912e-03, -4.282529912939805547e-03, -4.280502055062462667e-03, -4.278467340929333583e-03, -4.276425774170334107e-03, -4.274377358426471873e-03, -4.272322097349564446e-03, -4.270259994602430137e-03, -4.268191053858863722e-03, -4.266115278803551437e-03, -4.264032673132093533e-03, -4.261943240551091874e-03, -4.259846984777938307e-03, -4.257743909541048845e-03, -4.255634018579676318e-03, -4.253517315643945938e-03, -4.251393804494956775e-03, -4.249263488904628239e-03, -4.247126372655664513e-03, -4.244982459541882421e-03, -4.242831753367718763e-03, -4.240674257948551240e-03, -4.238509977110652485e-03, -4.236338914691054752e-03, -4.234161074537699972e-03, -4.231976460509290563e-03, -4.229785076475362296e-03, -4.227586926316328521e-03, -4.225382013923330987e-03, -4.223170343198315302e-03, -4.220951918054092512e-03, -4.218726742414171706e-03, -4.216494820212909195e-03, -4.214256155395420915e-03, -4.212010751917474004e-03, -4.209758613745836348e-03, -4.207499744857792594e-03, -4.205234149241442523e-03, -4.202961830895707990e-03, -4.200682793830147303e-03, -4.198397042065053243e-03, -4.196104579631485150e-03, -4.193805410571150097e-03, -4.191499538936524320e-03, -4.189186968790712708e-03, -4.186867704207528594e-03, -4.184541749271508508e-03, -4.182209108077815894e-03, -4.179869784732269736e-03, -4.177523783351401801e-03, -4.175171108062395928e-03, -4.172811763002918888e-03, -4.170445752321591364e-03, -4.168073080177307939e-03, -4.165693750739920577e-03, -4.163307768189643612e-03, -4.160915136717368602e-03, -4.158515860524692083e-03, -4.156109943823679646e-03, -4.153697390837017729e-03, -4.151278205798024021e-03, -4.148852392950507818e-03, -4.146419956548931356e-03, -4.143980900858233729e-03, -4.141535230153910695e-03, -4.139082948722088394e-03, -4.136624060859368096e-03, -4.134158570872746401e-03, -4.131686483080058460e-03, -4.129207801809343936e-03, -4.126722531399253796e-03, -4.124230676199015615e-03, -4.121732240568195052e-03, -4.119227228877065349e-03, -4.116715645506110327e-03, -4.114197494846418175e-03, -4.111672781299569555e-03, -4.109141509277522246e-03, -4.106603683202687469e-03, -4.104059307507976727e-03, -4.101508386636612720e-03, -4.098950925042400828e-03, -4.096386927189412525e-03, -4.093816397552163186e-03, -4.091239340615652857e-03, -4.088655760875178034e-03, -4.086065662836340338e-03, -4.083469051015397797e-03, -4.080865929938663761e-03, -4.078256304142957936e-03, -4.075640178175467601e-03, -4.073017556593659140e-03, -4.070388443965390797e-03, -4.067752844868818135e-03, -4.065110763892382760e-03, -4.062462205634932016e-03, -4.059807174705526434e-03, -4.057145675723516053e-03, -4.054477713318650582e-03, -4.051803292130808781e-03, -4.049122416810301169e-03, -4.046435092017575119e-03, -4.043741322423296397e-03, -4.041041112708611965e-03, -4.038334467564640845e-03, -4.035621391692802845e-03, -4.032901889804938259e-03, -4.030175966622837752e-03, -4.027443626878580638e-03, -4.024704875314550484e-03, -4.021959716683172308e-03, -4.019208155747190994e-03, -4.016450197279413693e-03, -4.013685846062815636e-03, -4.010915106890647688e-03, -4.008137984566201295e-03, -4.005354483902886543e-03, -4.002564609724374410e-03, -3.999768366864322675e-03, -3.996965760166612709e-03, -3.994156794485194222e-03, -3.991341474683987242e-03, -3.988519805637298458e-03, -3.985691792229220133e-03, -3.982857439354041233e-03, -3.980016751916176307e-03, -3.977169734830003286e-03, -3.974316393019931143e-03, -3.971456731420547337e-03, -3.968590754976299498e-03, -3.965718468641804204e-03, -3.962839877381604987e-03, -3.959954986170227849e-03, -3.957063799992326103e-03, -3.954166323842439254e-03, -3.951262562724993863e-03, -3.948352521654673909e-03, -3.945436205655780681e-03, -3.942513619762921459e-03, -3.939584769020353788e-03, -3.936649658482333294e-03, -3.933708293213279347e-03, -3.930760678287215613e-03, -3.927806818788212410e-03, -3.924846719810319920e-03, -3.921880386457340939e-03, -3.918907823843021700e-03, -3.915929037091030185e-03, -3.912944031334810412e-03, -3.909952811717782792e-03, -3.906955383393110812e-03, -3.903951751523786467e-03, -3.900941921282785087e-03, -3.897925897852766962e-03, -3.894903686426141095e-03, -3.891875292205404773e-03, -3.888840720402470929e-03, -3.885799976239447898e-03, -3.882753064947876143e-03, -3.879699991769207899e-03, -3.876640761954705267e-03, -3.873575380765304031e-03, -3.870503853471678277e-03, -3.867426185354331473e-03, -3.864342381703373547e-03, -3.861252447818658371e-03, -3.858156389009841872e-03, -3.855054210596123992e-03, -3.851945917906538820e-03, -3.848831516279745558e-03, -3.845711011063900151e-03, -3.842584407617219509e-03, -3.839451711307162278e-03, -3.836312927510984825e-03, -3.833168061615745137e-03, -3.830017119017851794e-03, -3.826860105123434334e-03, -3.823697025348321132e-03, -3.820527885117781363e-03, -3.817352689866801690e-03, -3.814171445039889804e-03, -3.810984156091055779e-03, -3.807790828484028042e-03, -3.804591467691939826e-03, -3.801386079197497866e-03, -3.798174668493026207e-03, -3.794957241080233745e-03, -3.791733802470469671e-03, -3.788504358184553895e-03, -3.785268913752615292e-03, -3.782027474714642033e-03, -3.778780046619747372e-03, -3.775526635026631075e-03, -3.772267245503544732e-03, -3.769001883628055397e-03, -3.765730554987177861e-03, -3.762453265177474401e-03, -3.759170019804755104e-03, -3.755880824484405297e-03, -3.752585684841083270e-03, -3.749284606508848216e-03, -3.745977595131240890e-03, -3.742664656361099733e-03, -3.739345795860488444e-03, -3.736021019301156553e-03, -3.732690332363794786e-03, -3.729353740738804417e-03, -3.726011250125677542e-03, -3.722662866233143655e-03, -3.719308594779574279e-03, -3.715948441492266524e-03, -3.712582412107950491e-03, -3.709210512372714246e-03, -3.705832748041782213e-03, -3.702449124879637031e-03, -3.699059648660118875e-03, -3.695664325166160037e-03, -3.692263160190046006e-03, -3.688856159533181710e-03, -3.685443329006160475e-03, -3.682024674428903237e-03, -3.678600201630416108e-03, -3.675169916448756558e-03, -3.671733824731491808e-03, -3.668291932334905199e-03, -3.664844245124902582e-03, -3.661390768976098987e-03, -3.657931509772428379e-03, -3.654466473406983197e-03, -3.650995665781861695e-03, -3.647519092808263353e-03, -3.644036760406574316e-03, -3.640548674506137103e-03, -3.637054841045379416e-03, -3.633555265971872682e-03, -3.630049955242094836e-03, -3.626538914821722179e-03, -3.623022150685347494e-03, -3.619499668816447083e-03, -3.615971475207843504e-03, -3.612437575861116631e-03, -3.608897976786715114e-03, -3.605352684004457711e-03, -3.601801703542644242e-03, -3.598245041439007957e-03, -3.594682703739816073e-03, -3.591114696500462625e-03, -3.587541025785291084e-03, -3.583961697667485940e-03, -3.580376718229093085e-03, -3.576786093561203691e-03, -3.573189829763642831e-03, -3.569587932945128203e-03, -3.565980409223346026e-03, -3.562367264724673917e-03, -3.558748505584483166e-03, -3.555124137946895878e-03, -3.551494167964716012e-03, -3.547858601799915544e-03, -3.544217445622897637e-03, -3.540570705613000149e-03, -3.536918387958425808e-03, -3.533260498855960319e-03, -3.529597044511343599e-03, -3.525928031138895503e-03, -3.522253464961709254e-03, -3.518573352211703045e-03, -3.514887699129408839e-03, -3.511196511964023541e-03, -3.507499796973602858e-03, -3.503797560424780702e-03, -3.500089808592686362e-03, -3.496376547761549051e-03, -3.492657784223742509e-03, -3.488933524280720885e-03, -3.485203774242344801e-03, -3.481468540426942496e-03, -3.477727829161890091e-03, -3.473981646782732090e-03, -3.470229999633762507e-03, -3.466472894067946803e-03, -3.462710336446630024e-03, -3.458942333139897619e-03, -3.455168890526245408e-03, -3.451390014992699283e-03, -3.447605712934938369e-03, -3.443815990757029179e-03, -3.440020854871525362e-03, -3.436220311699603874e-03, -3.432414367670840339e-03, -3.428603029223116667e-03, -3.424786302803168800e-03, -3.420964194865698093e-03, -3.417136711874329321e-03, -3.413303860300701247e-03, -3.409465646625036914e-03, -3.405622077336025681e-03, -3.401773158930645850e-03, -3.397918897914248369e-03, -3.394059300800681290e-03, -3.390194374112010054e-03, -3.386324124378679249e-03, -3.382448558139567255e-03, -3.378567681941715625e-03, -3.374681502340667796e-03, -3.370790025900157697e-03, -3.366893259192073329e-03, -3.362991208796945082e-03, -3.359083881303315169e-03, -3.355171283307865990e-03, -3.351253421415975684e-03, -3.347330302240702007e-03, -3.343401932403885189e-03, -3.339468318535118371e-03, -3.335529467272392492e-03, -3.331585385261966615e-03, -3.327636079158153692e-03, -3.323681555623445895e-03, -3.319721821328601788e-03, -3.315756882952413439e-03, -3.311786747181826116e-03, -3.307811420712001606e-03, -3.303830910246069712e-03, -3.299845222495428800e-03, -3.295854364179474742e-03, -3.291858342025539771e-03, -3.287857162769409428e-03, -3.283850833154538899e-03, -3.279839359932569098e-03, -3.275822749863295871e-03, -3.271801009714333467e-03, -3.267774146261493134e-03, -3.263742166288467837e-03, -3.259705076586916390e-03, -3.255662883956640836e-03, -3.251615595205236894e-03, -3.247563217148291721e-03, -3.243505756609437688e-03, -3.239443220420181943e-03, -3.235375615419735975e-03, -3.231302948455664834e-03, -3.227225226383051426e-03, -3.223142456065070278e-03, -3.219054644372718651e-03, -3.214961798184656945e-03, -3.210863924387842745e-03, -3.206761029876635700e-03, -3.202653121553387331e-03, -3.198540206328378144e-03, -3.194422291119491508e-03, -3.190299382852604393e-03, -3.186171488461229159e-03, -3.182038614886647989e-03, -3.177900769078036061e-03, -3.173757957992193093e-03, -3.169610188593638758e-03, -3.165457467854759267e-03, -3.161299802755556700e-03, -3.157137200283558365e-03, -3.152969667434446076e-03, -3.148797211210995796e-03, -3.144619838624239036e-03, -3.140437556692377789e-03, -3.136250372441433745e-03, -3.132058292905175005e-03, -3.127861325124832014e-03, -3.123659476149238078e-03, -3.119452753034971607e-03, -3.115241162846007009e-03, -3.111024712654064661e-03, -3.106803409538299969e-03, -3.102577260585400506e-03, -3.098346272889733466e-03, -3.094110453553101069e-03, -3.089869809684626933e-03, -3.085624348401351091e-03, -3.081374076827533490e-03, -3.077119002094742036e-03, -3.072859131342507016e-03, -3.068594471717240365e-03, -3.064325030373344153e-03, -3.060050814472186232e-03, -3.055771831182742520e-03, -3.051488087681475132e-03, -3.047199591152114240e-03, -3.042906348785759559e-03, -3.038608367781013477e-03, -3.034305655343662311e-03, -3.029998218687009800e-03, -3.025686065031550978e-03, -3.021369201605109654e-03, -3.017047635642955070e-03, -3.012721374387559471e-03, -3.008390425088472778e-03, -3.004054795003016903e-03, -2.999714491395273110e-03, -2.995369521536780672e-03, -2.991019892706391157e-03, -2.986665612189995204e-03, -2.982306687280894195e-03, -2.977943125279425545e-03, -2.973574933493121006e-03, -2.969202119236840666e-03, -2.964824689832445091e-03, -2.960442652608961424e-03, -2.956056014902672287e-03, -2.951664784056827386e-03, -2.947268967421954027e-03, -2.942868572355535756e-03, -2.938463606222164147e-03, -2.934054076393638553e-03, -2.929639990248722806e-03, -2.925221355173047641e-03, -2.920798178559751244e-03, -2.916370467808529921e-03, -2.911938230326277348e-03, -2.907501473526989157e-03, -2.903060204831464566e-03, -2.898614431667653323e-03, -2.894164161470349529e-03, -2.889709401681280539e-03, -2.885250159749266994e-03, -2.880786443129899291e-03, -2.876318259285700653e-03, -2.871845615686236843e-03, -2.867368519807762285e-03, -2.862886979133610812e-03, -2.858401001153869966e-03, -2.853910593365306409e-03, -2.849415763272008205e-03, -2.844916518384376942e-03, -2.840412866219861956e-03, -2.835904814302798137e-03, -2.831392370164151351e-03, -2.826875541341681078e-03, -2.822354335380049262e-03, -2.817828759830479438e-03, -2.813298822251125795e-03, -2.808764530206731436e-03, -2.804225891268735931e-03, -2.799682913015453124e-03, -2.795135603031709010e-03, -2.790583968909032559e-03, -2.786028018245747216e-03, -2.781467758646743223e-03, -2.776903197723332335e-03, -2.772334343093966428e-03, -2.767761202383105593e-03, -2.763183783222407722e-03, -2.758602093249613949e-03, -2.754016140109262056e-03, -2.749425931452523838e-03, -2.744831474936992605e-03, -2.740232778226779891e-03, -2.735629848992690225e-03, -2.731022694911821279e-03, -2.726411323667981071e-03, -2.721795742951318032e-03, -2.717175960458428127e-03, -2.712551983892551744e-03, -2.707923820963249739e-03, -2.703291479386335343e-03, -2.698654966884522083e-03, -2.694014291186457976e-03, -2.689369460027366508e-03, -2.684720481148962935e-03, -2.680067362299083916e-03, -2.675410111232321125e-03, -2.670748735709157357e-03, -2.666083243496607941e-03, -2.661413642368120128e-03, -2.656739940103267777e-03, -2.652062144487951720e-03, -2.647380263314468279e-03, -2.642694304381213496e-03, -2.638004275493014902e-03, -2.633310184460795848e-03, -2.628612039101706471e-03, -2.623909847239269417e-03, -2.619203616703107487e-03, -2.614493355328818304e-03, -2.609779070958698557e-03, -2.605060771440681922e-03, -2.600338464629070243e-03, -2.595612158384396490e-03, -2.590881860573115980e-03, -2.586147579068001027e-03, -2.581409321747761467e-03, -2.576667096497194283e-03, -2.571920911207324547e-03, -2.567170773775074959e-03, -2.562416692103421968e-03, -2.557658674101522412e-03, -2.552896727684350088e-03, -2.548130860773083900e-03, -2.543361081294796041e-03, -2.538587397182330996e-03, -2.533809816375018082e-03, -2.529028346817624104e-03, -2.524242996461052886e-03, -2.519453773262250295e-03, -2.514660685183909769e-03, -2.509863740194638853e-03, -2.505062946269067618e-03, -2.500258311387513425e-03, -2.495449843536345219e-03, -2.490637550707632680e-03, -2.485821440899275460e-03, -2.481001522115155837e-03, -2.476177802364794376e-03, -2.471350289663514724e-03, -2.466518992032589765e-03, -2.461683917498824845e-03, -2.456845074095005341e-03, -2.452002469859559247e-03, -2.447156112836411032e-03, -2.442306011075736673e-03, -2.437452172632899837e-03, -2.432594605569130593e-03, -2.427733317951470335e-03, -2.422868317852449119e-03, -2.417999613350241359e-03, -2.413127212528815881e-03, -2.408251123477561217e-03, -2.403371354291667684e-03, -2.398487913071777836e-03, -2.393600807924092713e-03, -2.388710046960566130e-03, -2.383815638298582458e-03, -2.378917590060849498e-03, -2.374015910376141378e-03, -2.369110607378115910e-03, -2.364201689206551008e-03, -2.359289164006194133e-03, -2.354373039927405015e-03, -2.349453325126349933e-03, -2.344530027764135226e-03, -2.339603156007529806e-03, -2.334672718028819004e-03, -2.329738722005537856e-03, -2.324801176120609887e-03, -2.319860088562492387e-03, -2.314915467524806050e-03, -2.309967321206732663e-03, -2.305015657812627822e-03, -2.300060485552155812e-03, -2.295101812640473055e-03, -2.290139647297930597e-03, -2.285173997749918862e-03, -2.280204872227667347e-03, -2.275232278966987827e-03, -2.270256226209599673e-03, -2.265276722201897339e-03, -2.260293775195721441e-03, -2.255307393448213477e-03, -2.250317585221538273e-03, -2.245324358783029692e-03, -2.240327722405363250e-03, -2.235327684366177504e-03, -2.230324252948256633e-03, -2.225317436439664016e-03, -2.220307243133343676e-03, -2.215293681327561333e-03, -2.210276759325541414e-03, -2.205256485435355164e-03, -2.200232867970682189e-03, -2.195205915249681151e-03, -2.190175635595693199e-03, -2.185142037337409800e-03, -2.180105128808017961e-03, -2.175064918345906689e-03, -2.170021414294544693e-03, -2.164974625002126941e-03, -2.159924558822025678e-03, -2.154871224112351550e-03, -2.149814629236147020e-03, -2.144754782561509969e-03, -2.139691692461265400e-03, -2.134625367313092506e-03, -2.129555815499718091e-03, -2.124483045408466411e-03, -2.119407065431731449e-03, -2.114327883966601786e-03, -2.109245509414751744e-03, -2.104159950183199460e-03, -2.099071214683174980e-03, -2.093979311330892209e-03, -2.088884248547430954e-03, -2.083786034758434644e-03, -2.078684678394244773e-03, -2.073580187890111670e-03, -2.068472571685722218e-03, -2.063361838225679073e-03, -2.058247995959070886e-03, -2.053131053339641004e-03, -2.048011018825944031e-03, -2.042887900881024035e-03, -2.037761707972310463e-03, -2.032632448572412216e-03, -2.027500131157817468e-03, -2.022364764210204686e-03, -2.017226356215468148e-03, -2.012084915663869735e-03, -2.006940451050754932e-03, -2.001792970875417455e-03, -1.996642483641879878e-03, -1.991488997858737939e-03, -1.986332522038903366e-03, -1.981173064699733120e-03, -1.976010634363192884e-03, -1.970845239555452880e-03, -1.965676888807312006e-03, -1.960505590653800149e-03, -1.955331353634332144e-03, -1.950154186292859127e-03, -1.944974097177566046e-03, -1.939791094840760633e-03, -1.934605187839652735e-03, -1.929416384735059553e-03, -1.924224694092797113e-03, -1.919030124482391363e-03, -1.913832684477866173e-03, -1.908632382657608892e-03, -1.903429227604086504e-03, -1.898223227903987013e-03, -1.893014392148389437e-03, -1.887802728932392368e-03, -1.882588246855287440e-03, -1.877370954520705916e-03, -1.872150860536199099e-03, -1.866927973513699554e-03, -1.861702302069155514e-03, -1.856473854822387548e-03, -1.851242640397903448e-03, -1.846008667423709075e-03, -1.840771944532066870e-03, -1.835532480359633543e-03, -1.830290283546482776e-03, -1.825045362737398027e-03, -1.819797726580607697e-03, -1.814547383728570308e-03, -1.809294342837848742e-03, -1.804038612568797115e-03, -1.798780201585732739e-03, -1.793519118557088989e-03, -1.788255372155056217e-03, -1.782988971055735712e-03, -1.777719923939301240e-03, -1.772448239489587051e-03, -1.767173926394529368e-03, -1.761896993345808161e-03, -1.756617449038704905e-03, -1.751335302172923099e-03, -1.746050561451393483e-03, -1.740763235581078506e-03, -1.735473333272845916e-03, -1.730180863241101647e-03, -1.724885834204243447e-03, -1.719588254884231318e-03, -1.714288134006763378e-03, -1.708985480301423521e-03, -1.703680302501315181e-03, -1.698372609343230897e-03, -1.693062409567809307e-03, -1.687749711919236126e-03, -1.682434525145094090e-03, -1.677116857997188251e-03, -1.671796719230225206e-03, -1.666474117603169644e-03, -1.661149061878206771e-03, -1.655821560820919898e-03, -1.650491623201040276e-03, -1.645159257791248188e-03, -1.639824473367982628e-03, -1.634487278711318353e-03, -1.629147682604608098e-03, -1.623805693834887197e-03, -1.618461321192521006e-03, -1.613114573471312232e-03, -1.607765459468682868e-03, -1.602413987985300140e-03, -1.597060167825251932e-03, -1.591704007796196189e-03, -1.586345516709057775e-03, -1.580984703377888607e-03, -1.575621576620690354e-03, -1.570256145258090621e-03, -1.564888418114763037e-03, -1.559518404018078730e-03, -1.554146111798962839e-03, -1.548771550291724083e-03, -1.543394728333771131e-03, -1.538015654765760706e-03, -1.532634338431769104e-03, -1.527250788178914674e-03, -1.521865012857521971e-03, -1.516477021321290669e-03, -1.511086822426867520e-03, -1.505694425034291963e-03, -1.500299838006646574e-03, -1.494903070209902896e-03, -1.489504130513695989e-03, -1.484103027790409151e-03, -1.478699770915333509e-03, -1.473294368767441272e-03, -1.467886830228052816e-03, -1.462477164182248530e-03, -1.457065379517549558e-03, -1.451651485124733770e-03, -1.446235489897703709e-03, -1.440817402733178022e-03, -1.435397232530834797e-03, -1.429974988193518422e-03, -1.424550678626820225e-03, -1.419124312739268633e-03, -1.413695899442494195e-03, -1.408265447650785488e-03, -1.402832966281563135e-03, -1.397398464254998160e-03, -1.391961950493875166e-03, -1.386523433924439748e-03, -1.381082923475150572e-03, -1.375640428077526574e-03, -1.370195956666013818e-03, -1.364749518177593452e-03, -1.359301121552265040e-03, -1.353850775732604213e-03, -1.348398489663919656e-03, -1.342944272294442198e-03, -1.337488132574925388e-03, -1.332030079458815719e-03, -1.326570121902440405e-03, -1.321108268864655240e-03, -1.315644529306743112e-03, -1.310178912193220432e-03, -1.304711426490508773e-03, -1.299242081168300962e-03, -1.293770885198525017e-03, -1.288297847555504609e-03, -1.282822977216736436e-03, -1.277346283161662254e-03, -1.271867774372502629e-03, -1.266387459834117076e-03, -1.260905348533638464e-03, -1.255421449460924046e-03, -1.249935771608132401e-03, -1.244448323969883034e-03, -1.238959115543427237e-03, -1.233468155328262556e-03, -1.227975452326310378e-03, -1.222481015542075311e-03, -1.216984853982334448e-03, -1.211486976655984501e-03, -1.205987392574900917e-03, -1.200486110752567448e-03, -1.194983140205535489e-03, -1.189478489952051909e-03, -1.183972169012916008e-03, -1.178464186411330760e-03, -1.172954551172590565e-03, -1.167443272324244531e-03, -1.161930358896263223e-03, -1.156415819920604765e-03, -1.150899664431677578e-03, -1.145381901465911687e-03, -1.139862540061909206e-03, -1.134341589260630823e-03, -1.128819058105069890e-03, -1.123294955640102150e-03, -1.117769290913285659e-03, -1.112242072973920358e-03, -1.106713310873206572e-03, -1.101183013665050798e-03, -1.095651190404673368e-03, -1.090117850150087303e-03, -1.084583001960725710e-03, -1.079046654898286380e-03, -1.073508818026595174e-03, -1.067969500411277946e-03, -1.062428711119943123e-03, -1.056886459222341730e-03, -1.051342753789920488e-03, -1.045797603896308397e-03, -1.040251018616859639e-03, -1.034703007028833343e-03, -1.029153578211560978e-03, -1.023602741246111341e-03, -1.018050505215181483e-03, -1.012496879203907477e-03, -1.006941872298649891e-03, -1.001385493587817355e-03, -9.958277521617468590e-04, -9.902686571123078037e-04, -9.847082175333764491e-04, -9.791464425204113396e-04, -9.735833411705955513e-04, -9.680189225830248016e-04, -9.624531958583204972e-04, -9.568861700987920391e-04, -9.513178544086147402e-04, -9.457482578933768457e-04, -9.401773896605674242e-04, -9.346052588191219781e-04, -9.290318744795886523e-04, -9.234572457543147169e-04, -9.178813817571061275e-04, -9.123042916030974208e-04, -9.067259844095992361e-04, -9.011464692948493137e-04, -8.955657553788631603e-04, -8.899838517832911510e-04, -8.844007676310374324e-04, -8.788165120467396818e-04, -8.732310941563201393e-04, -8.676445230871529003e-04, -8.620568079682402064e-04, -8.564679579298202896e-04, -8.508779821035447480e-04, -8.452868896226481150e-04, -8.396946896214939034e-04, -8.341013912360569675e-04, -8.285070036035445742e-04, -8.229115358622494936e-04, -8.173149971524043501e-04, -8.117173966149268758e-04, -8.061187433922743697e-04, -8.005190466283070884e-04, -7.949183154679544203e-04, -7.893165590573999590e-04, -7.837137865442349175e-04, -7.781100070770271583e-04, -7.725052298057931465e-04, -7.668994638815423677e-04, -7.612927184564654377e-04, -7.556850026840887091e-04, -7.500763257189609371e-04, -7.444666967165063706e-04, -7.388561248338214229e-04, -7.332446192287256706e-04, -7.276321890599353253e-04, -7.220188434878571952e-04, -7.164045916731996049e-04, -7.107894427784584033e-04, -7.051734059665259319e-04, -6.995564904015556763e-04, -6.939387052488139472e-04, -6.883200596743605827e-04, -6.827005628452156990e-04, -6.770802239295356561e-04, -6.714590520961594275e-04, -6.658370565150928053e-04, -6.602142463570593233e-04, -6.545906307936682003e-04, -6.489662189975879203e-04, -6.433410201422242250e-04, -6.377150434015732040e-04, -6.320882979510825854e-04, -6.264607929663916757e-04, -6.208325376241874459e-04, -6.152035411020621760e-04, -6.095738125781280208e-04, -6.039433612315043588e-04, -5.983121962418539710e-04, -5.926803267895700651e-04, -5.870477620559380388e-04, -5.814145112227525397e-04, -5.757805834724821553e-04, -5.701459879884513424e-04, -5.645107339543812674e-04, -5.588748305548754203e-04, -5.532382869749733574e-04, -5.476011124003132228e-04, -5.419633160173124853e-04, -5.363249070128386659e-04, -5.306858945740636213e-04, -5.250462878893354590e-04, -5.194060961469002631e-04, -5.137653285357702149e-04, -5.081239942455837311e-04, -5.024821024662095128e-04, -4.968396623882412669e-04, -4.911966832025347523e-04, -4.855531741003865100e-04, -4.799091442737066313e-04, -4.742646029146269267e-04, -4.686195592156699530e-04, -4.629740223699303466e-04, -4.573280015706152296e-04, -4.516815060115336191e-04, -4.460345448867008558e-04, -4.403871273902026993e-04, -4.347392627170584617e-04, -4.290909600619485873e-04, -4.234422286200798468e-04, -4.177930775870435771e-04, -4.121435161584912884e-04, -4.064935535302991918e-04, -4.008431988987535980e-04, -3.951924614600836800e-04, -3.895413504109587971e-04, -3.838898749480301482e-04, -3.782380442681021839e-04, -3.725858675683100911e-04, -3.669333540457269316e-04, -3.612805128975325611e-04, -3.556273533211960465e-04, -3.499738845140110306e-04, -3.443201156735930016e-04, -3.386660559974771626e-04, -3.330117146829876225e-04, -3.273571009280964637e-04, -3.217022239301523521e-04, -3.160470928867467610e-04, -3.103917169955747592e-04, -3.047361054541013474e-04, -2.990802674597384551e-04, -2.934242122100192795e-04, -2.877679489021404274e-04, -2.821114867334520286e-04, -2.764548349010023708e-04, -2.707980026017100714e-04, -2.651409990325400432e-04, -2.594838333901730294e-04, -2.538265148708639530e-04, -2.481690526713094952e-04, -2.425114559872483630e-04, -2.368537340149557812e-04, -2.311958959498448438e-04, -2.255379509872692850e-04, -2.198799083226983607e-04, -2.142217771507560825e-04, -2.085635666660257776e-04, -2.029052860629104705e-04, -1.972469445352998698e-04, -1.915885512767470124e-04, -1.859301154806415190e-04, -1.802716463397544997e-04, -1.746131530467249008e-04, -1.689546447936078253e-04, -1.632961307720442654e-04, -1.576376201734395891e-04, -1.519791221886289281e-04, -1.463206460077402977e-04, -1.406622008210591391e-04, -1.350037958176288587e-04, -1.293454401867475420e-04, -1.236871431165660531e-04, -1.180289137949562501e-04, -1.123707614093709200e-04, -1.067126951465110232e-04, -1.010547241925027984e-04, -9.539685773307039394e-05, -8.973910495314242511e-05, -8.408147503702796688e-05, -7.842397716858898280e-05, -7.276662053078466195e-05, -6.710941430616183063e-05, -6.145236767646008601e-05, -5.579548982247242185e-05, -5.013878992491200756e-05, -4.448227716313696311e-05, -3.882596071601744295e-05, -3.316984976179548932e-05, -2.751395347775441839e-05, -2.185828104039314637e-05, -1.620284162560052584e-05, -1.054764440819917448e-05, -4.892698562434943208e-06, 7.619867384792744639e-07, 6.416402322189281207e-06, 1.207053901702523424e-05, 1.772438765239484586e-05, 2.337793905860905761e-05, 2.903118406670770406e-05, 3.468411350891591194e-05, 4.033671821815431691e-05, 4.598898902843231382e-05, 5.164091677498874893e-05, 5.729249229342466655e-05, 6.294370642097877125e-05, 6.859454999565904295e-05, 7.424501385638494354e-05, 7.989508884331614701e-05, 8.554476579767914164e-05, 9.119403556159260565e-05, 9.684288897852304321e-05, 1.024913168927966766e-04, 1.081393101500539709e-04, 1.137868595970761073e-04, 1.194339560816106571e-04, 1.250805904527013690e-04, 1.307267535608294131e-04, 1.363724362570457350e-04, 1.420176293943709641e-04, 1.476623238263008269e-04, 1.533065104082040092e-04, 1.589501799965197654e-04, 1.645933234485830632e-04, 1.702359316235848620e-04, 1.758779953817666587e-04, 1.815195055845634673e-04, 1.871604530949314644e-04, 1.928008287771739750e-04, 1.984406234967696803e-04, 2.040798281208250830e-04, 2.097184335175865616e-04, 2.153564305568980665e-04, 2.209938101100234734e-04, 2.266305630494749271e-04, 2.322666802493415718e-04, 2.379021525854294397e-04, 2.435369709343975593e-04, 2.491711261751537298e-04, 2.548046091873620357e-04, 2.604374108528395159e-04, 2.660695220546922444e-04, 2.717009336774550026e-04, 2.773316366074190338e-04, 2.829616217324604135e-04, 2.885908799418647887e-04, 2.942194021267201839e-04, 2.998471791797421198e-04, 3.054742019951005197e-04, 3.111004614688738282e-04, 3.167259484985607948e-04, 3.223506539834746355e-04, 3.279745688248795880e-04, 3.335976839251279954e-04, 3.392199901889325088e-04, 3.448414785225619892e-04, 3.504621398336692814e-04, 3.560819650323724891e-04, 3.617009450298264302e-04, 3.673190707396183845e-04, 3.729363330769027915e-04, 3.785527229585425768e-04, 3.841682313034369060e-04, 3.897828490323496640e-04, 3.953965670677326758e-04, 4.010093763341187299e-04, 4.066212677579467507e-04, 4.122322322673908196e-04, 4.178422607928117998e-04, 4.234513442662708000e-04, 4.290594736219171569e-04, 4.346666397961361028e-04, 4.402728337266764171e-04, 4.458780463539254476e-04, 4.514822686200446766e-04, 4.570854914691066550e-04, 4.626877058474896526e-04, 4.682889027033880318e-04, 4.738890729872672876e-04, 4.794882076516916595e-04, 4.850862976511456713e-04, 4.906833339424324135e-04, 4.962793074844903127e-04, 5.018742092382311518e-04, 5.074680301668595302e-04, 5.130607612360149486e-04, 5.186523934129098684e-04, 5.242429176677232362e-04, 5.298323249721716144e-04, 5.354206063005925156e-04, 5.410077526297680031e-04, 5.465937549381246581e-04, 5.521786042070026381e-04, 5.577622914197943871e-04, 5.633448075620807027e-04, 5.689261436220237594e-04, 5.745062905898792177e-04, 5.800852394584509386e-04, 5.856629812229179445e-04, 5.912395068806558518e-04, 5.968148074316343386e-04, 6.023888738782384690e-04, 6.079616972250972799e-04, 6.135332684794143551e-04, 6.191035786511005310e-04, 6.246726187519172687e-04, 6.302403797968682275e-04, 6.358068528027084870e-04, 6.413720287893380717e-04, 6.469358987789402280e-04, 6.524984537961233452e-04, 6.580596848682403622e-04, 6.636195830252236433e-04, 6.691781392994087954e-04, 6.747353447259266069e-04, 6.802911903425225282e-04, 6.858456671893927402e-04, 6.913987663096320384e-04, 6.969504787487473514e-04, 7.025007955550495713e-04, 7.080497077797863687e-04, 7.135972064762972737e-04, 7.191432827012579068e-04, 7.246879275138951243e-04, 7.302311319758111614e-04, 7.357728871520584010e-04, 7.413131841097177687e-04, 7.468520139192907394e-04, 7.523893676538313249e-04, 7.579252363890936345e-04, 7.634596112038549666e-04, 7.689924831797395176e-04, 7.745238434010513068e-04, 7.800536829551605851e-04, 7.855819929323320985e-04, 7.911087644255472779e-04, 7.966339885309623153e-04, 8.021576563474181040e-04, 8.076797589768358642e-04, 8.132002875243398744e-04, 8.187192330974236119e-04, 8.242365868071891040e-04, 8.297523397674990819e-04, 8.352664830951126145e-04, 8.407790079100760719e-04, 8.462899053352405465e-04, 8.517991664966994376e-04, 8.573067825236329762e-04, 8.628127445481274891e-04, 8.683170437055590975e-04, 8.738196711344333638e-04, 8.793206179762005437e-04, 8.848198753755848580e-04, 8.903174344807235959e-04, 8.958132864423185102e-04, 9.013074224150011528e-04, 9.067998335559355550e-04, 9.122905110258727225e-04, 9.177794459889845359e-04, 9.232666296120831248e-04, 9.287520530658565331e-04, 9.342357075240221740e-04, 9.397175841634707039e-04, 9.451976741646457092e-04, 9.506759687110635142e-04, 9.561524589897607389e-04, 9.616271361911236460e-04, 9.670999915087183547e-04, 9.725710161396724802e-04, 9.780402012845037206e-04, 9.835075381469490959e-04, 9.889730179342985563e-04, 9.944366318575075230e-04, 9.998983711303776646e-04, 1.005358226970904777e-03, 1.010816190599823569e-03, 1.016272253241972670e-03, 1.021726406125451339e-03, 1.027178640481753906e-03, 1.032628947546095901e-03, 1.038077318557229737e-03, 1.043523744757296392e-03, 1.048968217392248683e-03, 1.054410727711385058e-03, 1.059851266967791299e-03, 1.065289826418173991e-03, 1.070726397322679675e-03, 1.076160970945231601e-03, 1.081593538553646174e-03, 1.087024091418870107e-03, 1.092452620815902208e-03, 1.097879118023624683e-03, 1.103303574324027711e-03, 1.108725981003554073e-03, 1.114146329351670172e-03, 1.119564610662198735e-03, 1.124980816232497641e-03, 1.130394937363579178e-03, 1.135806965360447018e-03, 1.141216891531909730e-03, 1.146624707190423576e-03, 1.152030403652530522e-03, 1.157433972238379460e-03, 1.162835404272173764e-03, 1.168234691081998684e-03, 1.173631823999652431e-03, 1.179026794360966014e-03, 1.184419593505938112e-03, 1.189810212777899162e-03, 1.195198643524730429e-03, 1.200584877098052373e-03, 1.205968904853324834e-03, 1.211350718150259673e-03, 1.216730308352323127e-03, 1.222107666827191175e-03, 1.227482784946569341e-03, 1.232855654086035266e-03, 1.238226265625407560e-03, 1.243594610948581215e-03, 1.248960681443361939e-03, 1.254324468501903092e-03, 1.259685963520227551e-03, 1.265045157898619542e-03, 1.270402043041740430e-03, 1.275756610357878023e-03, 1.281108851259845369e-03, 1.286458757164831140e-03, 1.291806319493613584e-03, 1.297151529671796517e-03, 1.302494379128964295e-03, 1.307834859298823192e-03, 1.313172961619579141e-03, 1.318508677533462630e-03, 1.323841998487172364e-03, 1.329172915931693547e-03, 1.334501421322155639e-03, 1.339827506118179733e-03, 1.345151161783728067e-03, 1.350472379786937490e-03, 1.355791151600546857e-03, 1.361107468701431688e-03, 1.366421322570984939e-03, 1.371732704695234530e-03, 1.377041606564042555e-03, 1.382348019672294650e-03, 1.387651935519079250e-03, 1.392953345607837864e-03, 1.398252241446656507e-03, 1.403548614548103500e-03, 1.408842456429085926e-03, 1.414133758611247531e-03, 1.419422512620525717e-03, 1.424708709987587175e-03, 1.429992342247638588e-03, 1.435273400940290014e-03, 1.440551877609843722e-03, 1.445827763805443596e-03, 1.451101051080301010e-03, 1.456371730992606865e-03, 1.461639795105372421e-03, 1.466905234985655185e-03, 1.472168042205898976e-03, 1.477428208342506256e-03, 1.482685724977161499e-03, 1.487940583696015012e-03, 1.493192776089825608e-03, 1.498442293754246842e-03, 1.503689128289682590e-03, 1.508933271301119003e-03, 1.514174714398538665e-03, 1.519413449196486488e-03, 1.524649467314474760e-03, 1.529882760376821606e-03, 1.535113320012504185e-03, 1.540341137855441231e-03, 1.545566205544649831e-03, 1.550788514723418178e-03, 1.556008057040501012e-03, 1.561224824149306687e-03, 1.566438807708032694e-03, 1.571649999380028001e-03, 1.576858390833337691e-03, 1.582063973741129918e-03, 1.587266739781528291e-03, 1.592466680637445340e-03, 1.597663787996963071e-03, 1.602858053553160578e-03, 1.608049469003941219e-03, 1.613238026052480397e-03, 1.618423716406740915e-03, 1.623606531779932033e-03, 1.628786463890305632e-03, 1.633963504461023513e-03, 1.639137645220462491e-03, 1.644308877902318040e-03, 1.649477194244841670e-03, 1.654642585991969363e-03, 1.659805044892578461e-03, 1.664964562700552066e-03, 1.670121131175207304e-03, 1.675274742080785093e-03, 1.680425387186913972e-03, 1.685573058268420143e-03, 1.690717747105182408e-03, 1.695859445482483015e-03, 1.700998145190859342e-03, 1.706133838025929335e-03, 1.711266515788823243e-03, 1.716396170285713722e-03, 1.721522793328205715e-03, 1.726646376733434896e-03, 1.731766912323295503e-03, 1.736884391925592195e-03, 1.741998807373254217e-03, 1.747110150504449250e-03, 1.752218413162920157e-03, 1.757323587197779204e-03, 1.762425664463377738e-03, 1.767524636819716669e-03, 1.772620496131984595e-03, 1.777713234271009052e-03, 1.782802843113051811e-03, 1.787889314539684200e-03, 1.792972640438119953e-03, 1.798052812701080765e-03, 1.803129823226613717e-03, 1.808203663918521269e-03, 1.813274326685910881e-03, 1.818341803443544345e-03, 1.823406086111975695e-03, 1.828467166616761473e-03, 1.833525036889614322e-03, 1.838579688867607396e-03, 1.843631114493325934e-03, 1.848679305715138091e-03, 1.853724254487048575e-03, 1.858765952768544035e-03, 1.863804392525000289e-03, 1.868839565727237152e-03, 1.873871464351941707e-03, 1.878900080381483992e-03, 1.883925405803792965e-03, 1.888947432612634062e-03, 1.893966152807723688e-03, 1.898981558393982635e-03, 1.903993641382761663e-03, 1.909002393790517477e-03, 1.914007807640053915e-03, 1.919009874959751519e-03, 1.924008587783699155e-03, 1.929003938151977642e-03, 1.933995918110506442e-03, 1.938984519710889058e-03, 1.943969735010766912e-03, 1.948951556073657589e-03, 1.953929974968795016e-03, 1.958904983771547759e-03, 1.963876574562970368e-03, 1.968844739430222757e-03, 1.973809470466390218e-03, 1.978770759770361563e-03, 1.983728599447092365e-03, 1.988682981607731593e-03, 1.993633898368882620e-03, 1.998581341853803654e-03, 2.003525304191115363e-03, 2.008465777516005649e-03, 2.013402753969493249e-03, 2.018336225698542669e-03, 2.023266184856333059e-03, 2.028192623602141122e-03, 2.033115534101156367e-03, 2.038034908524850169e-03, 2.042950739050784954e-03, 2.047863017862517482e-03, 2.052771737149944927e-03, 2.057676889108895919e-03, 2.062578465941490927e-03, 2.067476459856227265e-03, 2.072370863067261350e-03, 2.077261667795489864e-03, 2.082148866267804696e-03, 2.087032450717227379e-03, 2.091912413383159326e-03, 2.096788746511284683e-03, 2.101661442353359131e-03, 2.106530493167651369e-03, 2.111395891218495989e-03, 2.116257628776682057e-03, 2.121115698119325609e-03, 2.125970091529698781e-03, 2.130820801297571981e-03, 2.135667819719069046e-03, 2.140511139096514144e-03, 2.145350751738819492e-03, 2.150186649961064681e-03, 2.155018826084842756e-03, 2.159847272438377309e-03, 2.164671981355751392e-03, 2.169492945178052874e-03, 2.174310156252583833e-03, 2.179123606932995873e-03, 2.183933289579584151e-03, 2.188739196559123020e-03, 2.193541320244717270e-03, 2.198339653016202853e-03, 2.203134187259707562e-03, 2.207924915368069969e-03, 2.212711829740650771e-03, 2.217494922783225676e-03, 2.222274186908229556e-03, 2.227049614534909548e-03, 2.231821198088550923e-03, 2.236588930001694869e-03, 2.241352802712855662e-03, 2.246112808667712415e-03, 2.250868940318410862e-03, 2.255621190123451025e-03, 2.260369550548451800e-03, 2.265114014065512573e-03, 2.269854573153307770e-03, 2.274591220297367006e-03, 2.279323947989941954e-03, 2.284052748729835467e-03, 2.288777615022802303e-03, 2.293498539381134092e-03, 2.298215514324048348e-03, 2.302928532377512827e-03, 2.307637586074135373e-03, 2.312342667953418487e-03, 2.317043770561878595e-03, 2.321740886452333067e-03, 2.326434008185050781e-03, 2.331123128326510491e-03, 2.335808239450584776e-03, 2.340489334137778061e-03, 2.345166404975379277e-03, 2.349839444557725102e-03, 2.354508445486044269e-03, 2.359173400368328333e-03, 2.363834301819645652e-03, 2.368491142461995672e-03, 2.373143914924174917e-03, 2.377792611842144323e-03, 2.382437225858617235e-03, 2.387077749623410690e-03, 2.391714175793532588e-03, 2.396346497032468287e-03, 2.400974706011250494e-03, 2.405598795407784887e-03, 2.410218757906698334e-03, 2.414834586200246148e-03, 2.419446272987112959e-03, 2.424053810973589296e-03, 2.428657192872835623e-03, 2.433256411405000739e-03, 2.437851459297514078e-03, 2.442442329284917873e-03, 2.447029014108724043e-03, 2.451611506517740319e-03, 2.456189799267946214e-03, 2.460763885122322584e-03, 2.465333756851228499e-03, 2.469899407232005288e-03, 2.474460829049313516e-03, 2.479018015095212340e-03, 2.483570958168476468e-03, 2.488119651075636554e-03, 2.492664086630254090e-03, 2.497204257653032854e-03, 2.501740156972186244e-03, 2.506271777422958928e-03, 2.510799111848081334e-03, 2.515322153097545883e-03, 2.519840894028541056e-03, 2.524355327505704242e-03, 2.528865446401027620e-03, 2.533371243593689030e-03, 2.537872711970326923e-03, 2.542369844425160924e-03, 2.546862633859267155e-03, 2.551351073181734857e-03, 2.555835155308448185e-03, 2.560314873163211172e-03, 2.564790219677086369e-03, 2.569261187788291195e-03, 2.573727770442935624e-03, 2.578189960594387282e-03, 2.582647751203385068e-03, 2.587101135238337526e-03, 2.591550105674958557e-03, 2.595994655496617395e-03, 2.600434777694184650e-03, 2.604870465265914353e-03, 2.609301711217735815e-03, 2.613728508563149984e-03, 2.618150850323029948e-03, 2.622568729525955739e-03, 2.626982139208262033e-03, 2.631391072413380265e-03, 2.635795522192945373e-03, 2.640195481605608820e-03, 2.644590943718134069e-03, 2.648981901604730450e-03, 2.653368348347154206e-03, 2.657750277034960900e-03, 2.662127680765374871e-03, 2.666500552643146990e-03, 2.670868885780870814e-03, 2.675232673298837734e-03, 2.679591908324896899e-03, 2.683946583994832082e-03, 2.688296693451940576e-03, 2.692642229847376674e-03, 2.696983186340237097e-03, 2.701319556096894864e-03, 2.705651332291990254e-03, 2.709978508107795028e-03, 2.714301076734088828e-03, 2.718619031369002691e-03, 2.722932365217888007e-03, 2.727241071494424570e-03, 2.731545143419926262e-03, 2.735844574223465081e-03, 2.740139357142115303e-03, 2.744429485420819912e-03, 2.748714952312266129e-03, 2.752995751077192896e-03, 2.757271874984197884e-03, 2.761543317309689358e-03, 2.765810071338173706e-03, 2.770072130361905458e-03, 2.774329487681172646e-03, 2.778582136604424314e-03, 2.782830070447579653e-03, 2.787073282535025478e-03, 2.791311766198940544e-03, 2.795545514779401372e-03, 2.799774521624694059e-03, 2.803998780090917464e-03, 2.808218283542354872e-03, 2.812433025351320035e-03, 2.816642998898054827e-03, 2.820848197570959524e-03, 2.825048614766545538e-03, 2.829244243889242859e-03, 2.833435078351678911e-03, 2.837621111574767461e-03, 2.841802336987047251e-03, 2.845978748025762735e-03, 2.850150338135771632e-03, 2.854317100770343337e-03, 2.858479029391050065e-03, 2.862636117467164901e-03, 2.866788358476582942e-03, 2.870935745905210668e-03, 2.875078273247047480e-03, 2.879215934004488841e-03, 2.883348721687949839e-03, 2.887476629816221243e-03, 2.891599651916313806e-03, 2.895717781523355489e-03, 2.899831012180854265e-03, 2.903939337440592742e-03, 2.908042750862499786e-03, 2.912141246014853489e-03, 2.916234816474429919e-03, 2.920323455825844360e-03, 2.924407157662578267e-03, 2.928485915585897232e-03, 2.932559723205838478e-03, 2.936628574140623220e-03, 2.940692462016718245e-03, 2.944751380469102630e-03, 2.948805323141134166e-03, 2.952854283684400172e-03, 2.956898255759077016e-03, 2.960937233033564958e-03, 2.964971209184810372e-03, 2.969000177898189086e-03, 2.973024132867370210e-03, 2.977043067794549452e-03, 2.981056976390576187e-03, 2.985065852374290361e-03, 2.989069689473476590e-03, 2.993068481424250929e-03, 2.997062221970965470e-03, 3.001050904866950798e-03, 3.005034523873533706e-03, 3.009013072760992162e-03, 3.012986545307969836e-03, 3.016954935301554598e-03, 3.020918236537530489e-03, 3.024876442820215953e-03, 3.028829547962396621e-03, 3.032777545785609805e-03, 3.036720430119787140e-03, 3.040658194803611946e-03, 3.044590833684362660e-03, 3.048518340617813096e-03, 3.052440709468446246e-03, 3.056357934109575278e-03, 3.060270008422695184e-03, 3.064176926298416061e-03, 3.068078681635829068e-03, 3.071975268342616583e-03, 3.075866680335321516e-03, 3.079752911539014246e-03, 3.083633955887585786e-03, 3.087509807323645435e-03, 3.091380459798411060e-03, 3.095245907271932436e-03, 3.099106143713025330e-03, 3.102961163099120581e-03, 3.106810959416581985e-03, 3.110655526660366724e-03, 3.114494858834297719e-03, 3.118328949951176821e-03, 3.122157794032182857e-03, 3.125981385107594584e-03, 3.129799717216602030e-03, 3.133612784406823813e-03, 3.137420580735119854e-03, 3.141223100267045813e-03, 3.145020337076891246e-03, 3.148812285248007471e-03, 3.152598938872444578e-03, 3.156380292051240259e-03, 3.160156338894349118e-03, 3.163927073520476571e-03, 3.167692490057376787e-03, 3.171452582641719111e-03, 3.175207345418971840e-03, 3.178956772543698860e-03, 3.182700858179259972e-03, 3.186439596498030335e-03, 3.190172981681537508e-03, 3.193901007919842158e-03, 3.197623669412417990e-03, 3.201340960367550243e-03, 3.205052875002455809e-03, 3.208759407543476227e-03, 3.212460552225954516e-03, 3.216156303294161016e-03, 3.219846655001547091e-03, 3.223531601610458899e-03, 3.227211137392401938e-03, 3.230885256627953877e-03, 3.234553953606640088e-03, 3.238217222627132272e-03, 3.241875057997372928e-03, 3.245527454034023273e-03, 3.249174405063098587e-03, 3.252815905419838109e-03, 3.256451949448227121e-03, 3.260082531501834816e-03, 3.263707645942911812e-03, 3.267327287143244503e-03, 3.270941449483617727e-03, 3.274550127353917980e-03, 3.278153315153315133e-03, 3.281751007290159214e-03, 3.285343198181884562e-03, 3.288929882255280015e-03, 3.292511053946183160e-03, 3.296086707699769601e-03, 3.299656837970451912e-03, 3.303221439221744760e-03, 3.306780505926488686e-03, 3.310334032566958958e-03, 3.313882013634265791e-03, 3.317424443629189180e-03, 3.320961317061648949e-03, 3.324492628450749412e-03, 3.328018372325068207e-03, 3.331538543222317163e-03, 3.335053135689628519e-03, 3.338562144283489450e-03, 3.342065563569552970e-03, 3.345563388122970144e-03, 3.349055612528202292e-03, 3.352542231378968958e-03, 3.356023239278512448e-03, 3.359498630839257826e-03, 3.362968400683119096e-03, 3.366432543441553408e-03, 3.369891053755033703e-03, 3.373343926273700971e-03, 3.376791155657206823e-03, 3.380232736574242947e-03, 3.383668663703320867e-03, 3.387098931732224639e-03, 3.390523535358106692e-03, 3.393942469287738063e-03, 3.397355728237177065e-03, 3.400763306932081103e-03, 3.404165200107585245e-03, 3.407561402508199871e-03, 3.410951908888027514e-03, 3.414336714010678293e-03, 3.417715812649161494e-03, 3.421089199586159653e-03, 3.424456869613721945e-03, 3.427818817533513120e-03, 3.431175038156877247e-03, 3.434525526304364144e-03, 3.437870276806409813e-03, 3.441209284502909707e-03, 3.444542544243227398e-03, 3.447870050886435705e-03, 3.451191799301203938e-03, 3.454507784365657818e-03, 3.457818000967711677e-03, 3.461122444004712841e-03, 3.464421108383770789e-03, 3.467713989021607972e-03, 3.471001080844459200e-03, 3.474282378788308423e-03, 3.477557877798915630e-03, 3.480827572831367983e-03, 3.484091458850737712e-03, 3.487349530831560396e-03, 3.490601783758149820e-03, 3.493848212624644806e-03, 3.497088812434505714e-03, 3.500323578201306341e-03, 3.503552504948140647e-03, 3.506775587707775411e-03, 3.509992821522806353e-03, 3.513204201445570968e-03, 3.516409722538049645e-03, 3.519609379872094650e-03, 3.522803168529195072e-03, 3.525991083600710143e-03, 3.529173120187772093e-03, 3.532349273401182935e-03, 3.535519538361603983e-03, 3.538683910199647790e-03, 3.541842384055365976e-03, 3.544994955079045895e-03, 3.548141618430370597e-03, 3.551282369279209431e-03, 3.554417202805118872e-03, 3.557546114197419288e-03, 3.560669098655400502e-03, 3.563786151388190389e-03, 3.566897267614691554e-03, 3.570002442563760883e-03, 3.573101671474165301e-03, 3.576194949594416108e-03, 3.579282272183076461e-03, 3.582363634508468637e-03, 3.585439031848909087e-03, 3.588508459492665507e-03, 3.591571912737777286e-03, 3.594629386892306180e-03, 3.597680877274386617e-03, 3.600726379211748648e-03, 3.603765888042484260e-03, 3.606799399114227287e-03, 3.609826907784903244e-03, 3.612848409422319065e-03, 3.615863899404130142e-03, 3.618873373118129157e-03, 3.621876825962066972e-03, 3.624874253343610131e-03, 3.627865650680525168e-03, 3.630851013400608791e-03, 3.633830336941529151e-03, 3.636803616751169317e-03, 3.639770848287291177e-03, 3.642732027017755309e-03, 3.645687148420609456e-03, 3.648636207983625788e-03, 3.651579201204961395e-03, 3.654516123592726779e-03, 3.657446970665024447e-03, 3.660371737950143204e-03, 3.663290420986446694e-03, 3.666203015322317023e-03, 3.669109516516360758e-03, 3.672009920137169967e-03, 3.674904221763519978e-03, 3.677792416984341627e-03, 3.680674501398588979e-03, 3.683550470615434055e-03, 3.686420320254201344e-03, 3.689284045944277168e-03, 3.692141643325308736e-03, 3.694993108047004218e-03, 3.697838435769273263e-03, 3.700677622162362301e-03, 3.703510662906340633e-03, 3.706337553691835523e-03, 3.709158290219484021e-03, 3.711972868200106440e-03, 3.714781283354801327e-03, 3.717583531414884318e-03, 3.720379608121814844e-03, 3.723169509227375676e-03, 3.725953230493486874e-03, 3.728730767692379263e-03, 3.731502116606546723e-03, 3.734267273028624330e-03, 3.737026232761581340e-03, 3.739778991618767593e-03, 3.742525545423516266e-03, 3.745265890009786148e-03, 3.748000021221446938e-03, 3.750727934912997420e-03, 3.753449626949065428e-03, 3.756165093204553562e-03, 3.758874329564756717e-03, 3.761577331925289661e-03, 3.764274096191986413e-03, 3.766964618281093240e-03, 3.769648894119222247e-03, 3.772326919643201326e-03, 3.774998690800336100e-03, 3.777664203548175732e-03, 3.780323453854692040e-03, 3.782976437698257373e-03, 3.785623151067475482e-03, 3.788263589961442593e-03, 3.790897750389706205e-03, 3.793525628371935930e-03, 3.796147219938539319e-03, 3.798762521129973174e-03, 3.801371527997385400e-03, 3.803974236602236832e-03, 3.806570643016323786e-03, 3.809160743321992736e-03, 3.811744533611963800e-03, 3.814322009989352426e-03, 3.816893168567777814e-03, 3.819458005471324750e-03, 3.822016516834432151e-03, 3.824568698802113375e-03, 3.827114547529722032e-03, 3.829654059183164056e-03, 3.832187229938913316e-03, 3.834714055983652527e-03, 3.837234533514834872e-03, 3.839748658740285876e-03, 3.842256427878268463e-03, 3.844757837157715841e-03, 3.847252882817825143e-03, 3.849741561108570038e-03, 3.852223868290329499e-03, 3.854699800633945486e-03, 3.857169354420895979e-03, 3.859632525943180060e-03, 3.862089311503255021e-03, 3.864539707414236299e-03, 3.866983709999761293e-03, 3.869421315593962480e-03, 3.871852520541640020e-03, 3.874277321198067465e-03, 3.876695713929122732e-03, 3.879107695111417772e-03, 3.881513261131826729e-03, 3.883912408388136457e-03, 3.886305133288588121e-03, 3.888691432251989519e-03, 3.891071301707852564e-03, 3.893444738096213734e-03, 3.895811737867792800e-03, 3.898172297483930380e-03, 3.900526413416543266e-03, 3.902874082148216368e-03, 3.905215300172228728e-03, 3.907550063992389598e-03, 3.909878370123213639e-03, 3.912200215089990316e-03, 3.914515595428386639e-03, 3.916824507685072107e-03, 3.919126948417068178e-03, 3.921422914192325068e-03, 3.923712401589383482e-03, 3.925995407197347721e-03, 3.928271927616210080e-03, 3.930541959456589768e-03, 3.932805499339738983e-03, 3.935062543897706842e-03, 3.937313089773162439e-03, 3.939557133619576122e-03, 3.941794672101128424e-03, 3.944025701892643274e-03, 3.946250219679771874e-03, 3.948468222158879951e-03, 3.950679706036999174e-03, 3.952884668031976349e-03, 3.955083104872489028e-03, 3.957275013297721980e-03, 3.959460390057932717e-03, 3.961639231913833062e-03, 3.963811535637140789e-03, 3.965977298010282988e-03, 3.968136515826374382e-03, 3.970289185889414214e-03, 3.972435305014182169e-03, 3.974574870026179388e-03, 3.976707877761762912e-03, 3.978834325068120528e-03, 3.980954208803145870e-03, 3.983067525835653523e-03, 3.985174273045176928e-03, 3.987274447322113231e-03, 3.989368045567776196e-03, 3.991455064694094355e-03, 3.993535501624032556e-03, 3.995609353291347358e-03, 3.997676616640486423e-03, 3.999737288627001376e-03, 4.001791366217033463e-03, 4.003838846387788863e-03, 4.005879726127234246e-03, 4.007914002434203454e-03, 4.009941672318413988e-03, 4.011962732800493890e-03, 4.013977180911846437e-03, 4.015985013694851370e-03, 4.017986228202776421e-03, 4.019980821499692311e-03, 4.021968790660671381e-03, 4.023950132771594163e-03, 4.025924844929273418e-03, 4.027892924241533931e-03, 4.029854367826888988e-03, 4.031809172814985326e-03, 4.033757336346295228e-03, 4.035698855572187639e-03, 4.037633727655036593e-03, 4.039561949768046001e-03, 4.041483519095463023e-03, 4.043398432832426281e-03, 4.045306688184993615e-03, 4.047208282370219276e-03, 4.049103212616098416e-03, 4.050991476161533260e-03, 4.052873070256437192e-03, 4.054747992161760774e-03, 4.056616239149198576e-03, 4.058477808501699188e-03, 4.060332697512914445e-03, 4.062180903487686880e-03, 4.064022423741797327e-03, 4.065857255601861703e-03, 4.067685396405710044e-03, 4.069506843502042163e-03, 4.071321594250548216e-03, 4.073129646022000637e-03, 4.074930996198072863e-03, 4.076725642171541431e-03, 4.078513581346162806e-03, 4.080294811136695073e-03, 4.082069328968932626e-03, 4.083837132279720047e-03, 4.085598218516865374e-03, 4.087352585139253716e-03, 4.089100229616881958e-03, 4.090841149430566454e-03, 4.092575342072446963e-03, 4.094302805045448891e-03, 4.096023535863735181e-03, 4.097737532052449574e-03, 4.099444791147779932e-03, 4.101145310697011138e-03, 4.102839088258469595e-03, 4.104526121401537095e-03, 4.106206407706721948e-03, 4.107879944765518467e-03, 4.109546730180574370e-03, 4.111206761565611850e-03, 4.112860036545368594e-03, 4.114506552755743500e-03, 4.116146307843751573e-03, 4.117779299467359128e-03, 4.119405525295795172e-03, 4.121024983009338900e-03, 4.122637670299260718e-03, 4.124243584868134485e-03, 4.125842724429447210e-03, 4.127435086707949459e-03, 4.129020669439461937e-03, 4.130599470370889363e-03, 4.132171487260293333e-03, 4.133736717876882773e-03, 4.135295160000914197e-03, 4.136846811423904209e-03, 4.138391669948362356e-03, 4.139929733388042661e-03, 4.141460999567809186e-03, 4.142985466323645567e-03, 4.144503131502708798e-03, 4.146013992963350908e-03, 4.147518048574935084e-03, 4.149015296218150524e-03, 4.150505733784757428e-03, 4.151989359177663333e-03, 4.153466170311006372e-03, 4.154936165110013901e-03, 4.156399341511144742e-03, 4.157855697462021528e-03, 4.159305230921409025e-03, 4.160747939859282644e-03, 4.162183822256812840e-03, 4.163612876106313060e-03, 4.165035099411330821e-03, 4.166450490186541025e-03, 4.167859046457853510e-03, 4.169260766262439070e-03, 4.170655647648516089e-03, 4.172043688675596863e-03, 4.173424887414452049e-03, 4.174799241946897284e-03, 4.176166750366108044e-03, 4.177527410776427086e-03, 4.178881221293357512e-03, 4.180228180043698075e-03, 4.181568285165386187e-03, 4.182901534807651443e-03, 4.184227927130923681e-03, 4.185547460306837317e-03, 4.186860132518264305e-03, 4.188165941959353170e-03, 4.189464886835401504e-03, 4.190756965363001685e-03, 4.192042175770021792e-03, 4.193320516295446013e-03, 4.194591985189644393e-03, 4.195856580714095278e-03, 4.197114301141637721e-03, 4.198365144756324892e-03, 4.199609109853420612e-03, 4.200846194739495630e-03, 4.202076397732356500e-03, 4.203299717161074200e-03, 4.204516151365965924e-03, 4.205725698698615025e-03, 4.206928357521885764e-03, 4.208124126209911164e-03, 4.209313003148061789e-03, 4.210494986732996915e-03, 4.211670075372720909e-03, 4.212838267486344705e-03, 4.213999561504427546e-03, 4.215153955868747131e-03, 4.216301449032294410e-03, 4.217442039459475683e-03, 4.218575725625839379e-03, 4.219702506018334527e-03, 4.220822379135188464e-03, 4.221935343485825297e-03, 4.223041397591071472e-03, 4.224140539983011790e-03, 4.225232769204980733e-03, 4.226318083811694305e-03, 4.227396482369099109e-03, 4.228467963454469493e-03, 4.229532525656417956e-03, 4.230590167574793670e-03, 4.231640887820796101e-03, 4.232684685016981085e-03, 4.233721557797091688e-03, 4.234751504806292394e-03, 4.235774524701031198e-03, 4.236790616149040470e-03, 4.237799777829431500e-03, 4.238802008432569594e-03, 4.239797306660172092e-03, 4.240785671225291882e-03, 4.241767100852284443e-03, 4.242741594276837336e-03, 4.243709150245980610e-03, 4.244669767518026958e-03, 4.245623444862691408e-03, 4.246570181060934333e-03, 4.247509974905118446e-03, 4.248442825198928130e-03, 4.249368730757346023e-03, 4.250287690406720671e-03, 4.251199702984771733e-03, 4.252104767340464213e-03, 4.253002882334207084e-03, 4.253894046837711912e-03, 4.254778259734003261e-03, 4.255655519917492420e-03, 4.256525826293921025e-03, 4.257389177780373200e-03, 4.258245573305301582e-03, 4.259095011808476140e-03, 4.259937492241056174e-03, 4.260773013565520052e-03, 4.261601574755731134e-03, 4.262423174796882257e-03, 4.263237812685509616e-03, 4.264045487429550876e-03, 4.264846198048294866e-03, 4.265639943572321728e-03, 4.266426723043653842e-03, 4.267206535515656943e-03, 4.267979380053010634e-03, 4.268745255731806396e-03, 4.269504161639504219e-03, 4.270256096874864953e-03, 4.271001060548101219e-03, 4.271739051780735173e-03, 4.272470069705657479e-03, 4.273194113467164608e-03, 4.273911182220893785e-03, 4.274621275133838605e-03, 4.275324391384429691e-03, 4.276020530162369902e-03, 4.276709690668822547e-03, 4.277391872116266536e-03, 4.278067073728587452e-03, 4.278735294741055871e-03, 4.279396534400264906e-03, 4.280050791964226491e-03, 4.280698066702338413e-03, 4.281338357895343553e-03, 4.281971664835359376e-03, 4.282597986825928231e-03, 4.283217323181917613e-03, 4.283829673229627710e-03, 4.284435036306679517e-03, 4.285033411762124121e-03, 4.285624798956380252e-03, 4.286209197261229079e-03, 4.286786606059860179e-03, 4.287357024746842916e-03, 4.287920452728096084e-03, 4.288476889420996321e-03, 4.289026334254199442e-03, 4.289568786667842526e-03, 4.290104246113404275e-03, 4.290632712053731902e-03, 4.291154183963099243e-03, 4.291668661327139971e-03, 4.292176143642875349e-03, 4.292676630418721176e-03, 4.293170121174486910e-03, 4.293656615441337511e-03, 4.294136112761866297e-03, 4.294608612690013413e-03, 4.295074114791133484e-03, 4.295532618641975664e-03, 4.295984123830641141e-03, 4.296428629956660326e-03, 4.296866136630934745e-03, 4.297296643475729226e-03, 4.297720150124750838e-03, 4.298136656223036124e-03, 4.298546161427048255e-03, 4.298948665404631921e-03, 4.299344167835021137e-03, 4.299732668408821033e-03, 4.300114166828048617e-03, 4.300488662806087672e-03, 4.300856156067736462e-03, 4.301216646349157423e-03, 4.301570133397900585e-03, 4.301916616972923518e-03, 4.302256096844554907e-03, 4.302588572794517965e-03, 4.302914044615934776e-03, 4.303232512113272512e-03, 4.303543975102446656e-03, 4.303848433410710841e-03, 4.304145886876716703e-03, 4.304436335350518214e-03, 4.304719778693536121e-03, 4.304996216778590908e-03, 4.305265649489876771e-03, 4.305528076722972899e-03, 4.305783498384862552e-03, 4.306031914393882755e-03, 4.306273324679784145e-03, 4.306507729183656381e-03, 4.306735127858046103e-03, 4.306955520666801672e-03, 4.307168907585213688e-03, 4.307375288599903096e-03, 4.307574663708909658e-03, 4.307767032921653791e-03, 4.307952396258918348e-03, 4.308130753752856430e-03, 4.308302105447035617e-03, 4.308466451396366845e-03, 4.308623791667154715e-03, 4.308774126337076675e-03, 4.308917455495190826e-03, 4.309053779241913372e-03, 4.309183097689057648e-03, 4.309305410959812441e-03, 4.309420719188715096e-03, 4.309529022521689685e-03, 4.309630321116024454e-03, 4.309724615140401310e-03, 4.309811904774847255e-03, 4.309892190210763002e-03, 4.309965471650929920e-03, 4.310031749309484010e-03, 4.310091023411942793e-03, 4.310143294195161942e-03, 4.310188561907388194e-03, 4.310226826808222049e-03, 4.310258089168633386e-03, 4.310282349270930236e-03, 4.310299607408829038e-03, 4.310309863887342753e-03, 4.310313119022904024e-03, 4.310309373143257627e-03, 4.310298626587535931e-03, 4.310280879706215526e-03, 4.310256132861112026e-03, 4.310224386425415624e-03, 4.310185640783663341e-03, 4.310139896331742493e-03, 4.310087153476888956e-03, 4.310027412637690639e-03, 4.309960674244065794e-03, 4.309886938737309860e-03, 4.309806206570033875e-03, 4.309718478206213919e-03, 4.309623754121151215e-03, 4.309522034801506821e-03, 4.309413320745259131e-03, 4.309297612461744642e-03, 4.309174910471622391e-03, 4.309045215306901710e-03, 4.308908527510901462e-03, 4.308764847638319427e-03, 4.308614176255122150e-03, 4.308456513938657695e-03, 4.308291861277593199e-03, 4.308120218871883643e-03, 4.307941587332853386e-03, 4.307755967283149329e-03, 4.307563359356711419e-03, 4.307363764198816891e-03, 4.307157182466066388e-03, 4.306943614826389162e-03, 4.306723061958983231e-03, 4.306495524554409052e-03, 4.306261003314535742e-03, 4.306019498952513326e-03, 4.305771012192822177e-03, 4.305515543771239184e-03, 4.305253094434875055e-03, 4.304983664942100587e-03, 4.304707256062635136e-03, 4.304423868577459886e-03, 4.304133503278881161e-03, 4.303836160970467978e-03, 4.303531842467137915e-03, 4.303220548595061701e-03, 4.302902280191697043e-03, 4.302577038105819852e-03, 4.302244823197486946e-03, 4.301905636338009160e-03, 4.301559478410025943e-03, 4.301206350307427290e-03, 4.300846252935397115e-03, 4.300479187210377689e-03, 4.300105154060129484e-03, 4.299724154423627091e-03, 4.299336189251178053e-03, 4.298941259504289285e-03, 4.298539366155823202e-03, 4.298130510189830319e-03, 4.297714692601661141e-03, 4.297291914397913248e-03, 4.296862176596456459e-03, 4.296425480226403332e-03, 4.295981826328137791e-03, 4.295531215953261352e-03, 4.295073650164681588e-03, 4.294609130036492438e-03, 4.294137656654085228e-03, 4.293659231114054127e-03, 4.293173854524263804e-03, 4.292681528003794780e-03, 4.292182252682974659e-03, 4.291676029703377256e-03, 4.291162860217770554e-03, 4.290642745390196508e-03, 4.290115686395870424e-03, 4.289581684421310201e-03, 4.289040740664168926e-03, 4.288492856333367582e-03, 4.287938032649049082e-03, 4.287376270842532290e-03, 4.286807572156389225e-03, 4.286231937844372196e-03, 4.285649369171454573e-03, 4.285059867413803895e-03, 4.284463433858799221e-03, 4.283860069805004236e-03, 4.283249776562201953e-03, 4.282632555451353074e-03, 4.282008407804584714e-03, 4.281377334965267602e-03, 4.280739338287917195e-03, 4.280094419138221438e-03, 4.279442578893098009e-03, 4.278783818940572019e-03, 4.278118140679944281e-03, 4.277445545521567534e-03, 4.276766034887042461e-03, 4.276079610209116214e-03, 4.275386272931691080e-03, 4.274686024509825356e-03, 4.273978866409747224e-03, 4.273264800108849543e-03, 4.272543827095639547e-03, 4.271815948869809101e-03, 4.271081166942177453e-03, 4.270339482834705977e-03, 4.269590898080517262e-03, 4.268835414223821380e-03, 4.268073032820019104e-03, 4.267303755435603030e-03, 4.266527583648190534e-03, 4.265744519046560206e-03, 4.264954563230572045e-03, 4.264157717811237723e-03, 4.263353984410650326e-03, 4.262543364662036392e-03, 4.261725860209724694e-03, 4.260901472709142761e-03, 4.260070203826833365e-03, 4.259232055240418958e-03, 4.258387028638662385e-03, 4.257535125721328105e-03, 4.256676348199381690e-03, 4.255810697794772980e-03, 4.254938176240627770e-03, 4.254058785281068268e-03, 4.253172526671316310e-03, 4.252279402177734993e-03, 4.251379413577636990e-03, 4.250472562659483172e-03, 4.249558851222779397e-03, 4.248638281078069567e-03, 4.247710854046992009e-03, 4.246776571962198807e-03, 4.245835436667387899e-03, 4.244887450017339504e-03, 4.243932613877851937e-03, 4.242970930125745076e-03, 4.242002400648899399e-03, 4.241027027346212612e-03, 4.240044812127603986e-03, 4.239055756914054257e-03, 4.238059863637472918e-03, 4.237057134240915929e-03, 4.236047570678331577e-03, 4.235031174914733951e-03, 4.234007948926142226e-03, 4.232977894699557243e-03, 4.231941014232984064e-03, 4.230897309535431965e-03, 4.229846782626892759e-03, 4.228789435538335591e-03, 4.227725270311726014e-03, 4.226654288999981759e-03, 4.225576493667037789e-03, 4.224491886387769096e-03, 4.223400469247983770e-03, 4.222302244344554832e-03, 4.221197213785208603e-03, 4.220085379688653070e-03, 4.218966744184626458e-03, 4.217841309413653504e-03, 4.216709077527393268e-03, 4.215570050688303462e-03, 4.214424231069803517e-03, 4.213271620856293663e-03, 4.212112222243043907e-03, 4.210946037436266026e-03, 4.209773068653104022e-03, 4.208593318121615044e-03, 4.207406788080749437e-03, 4.206213480780375893e-03, 4.205013398481241560e-03, 4.203806543455032747e-03, 4.202592917984309881e-03, 4.201372524362473673e-03, 4.200145364893915177e-03, 4.198911441893814558e-03, 4.197670757688241709e-03, 4.196423314614203086e-03, 4.195169115019469971e-03, 4.193908161262793581e-03, 4.192640455713679548e-03, 4.191366000752548386e-03, 4.190084798770662630e-03, 4.188796852170119031e-03, 4.187502163363845085e-03, 4.186200734775631128e-03, 4.184892568840083496e-03, 4.183577668002667026e-03, 4.182256034719637403e-03, 4.180927671458022944e-03, 4.179592580695818890e-03, 4.178250764921658672e-03, 4.176902226635045498e-03, 4.175546968346376640e-03, 4.174184992576698838e-03, 4.172816301857900853e-03, 4.171440898732719539e-03, 4.170058785754597597e-03, 4.168669965487798931e-03, 4.167274440507340132e-03, 4.165872213399005215e-03, 4.164463286759367312e-03, 4.163047663195736624e-03, 4.161625345326155218e-03, 4.160196335779469019e-03, 4.158760637195261026e-03, 4.157318252223751558e-03, 4.155869183526078418e-03, 4.154413433773915254e-03, 4.152951005649849724e-03, 4.151481901847037422e-03, 4.150006125069396166e-03, 4.148523678031615543e-03, 4.147034563459011183e-03, 4.145538784087614108e-03, 4.144036342664206285e-03, 4.142527241946190528e-03, 4.141011484701704985e-03, 4.139489073709550285e-03, 4.137960011759177388e-03, 4.136424301650779532e-03, 4.134881946195147380e-03, 4.133332948213708051e-03, 4.131777310538683849e-03, 4.130215036012789553e-03, 4.128646127489440584e-03, 4.127070587832777290e-03, 4.125488419917408209e-03, 4.123899626628758745e-03, 4.122304210862724229e-03, 4.120702175525872007e-03, 4.119093523535439713e-03, 4.117478257819201688e-03, 4.115856381315553987e-03, 4.114227896973504835e-03, 4.112592807752644269e-03, 4.110951116623182307e-03, 4.109302826565858734e-03, 4.107647940572010763e-03, 4.105986461643583441e-03, 4.104318392793055922e-03, 4.102643737043394634e-03, 4.100962497428316082e-03, 4.099274676991896543e-03, 4.097580278788825331e-03, 4.095879305884373572e-03, 4.094171761354273645e-03, 4.092457648284849279e-03, 4.090736969772914081e-03, 4.089009728925770658e-03, 4.087275928861308638e-03, 4.085535572707870225e-03, 4.083788663604283158e-03, 4.082035204699944846e-03, 4.080275199154635019e-03, 4.078508650138740373e-03, 4.076735560833048139e-03, 4.074955934428759960e-03, 4.073169774127706130e-03, 4.071377083142069774e-03, 4.069577864694448426e-03, 4.067772122018036181e-03, 4.065959858356322718e-03, 4.064141076963295393e-03, 4.062315781103415825e-03, 4.060483974051488920e-03, 4.058645659092817264e-03, 4.056800839523081424e-03, 4.054949518648339087e-03, 4.053091699785136073e-03, 4.051227386260334608e-03, 4.049356581411212193e-03, 4.047479288585470285e-03, 4.045595511141118934e-03, 4.043705252446628574e-03, 4.041808515880782569e-03, 4.039905304832655530e-03, 4.037995622701890872e-03, 4.036079472898241108e-03, 4.034156858841924341e-03, 4.032227783963515839e-03, 4.030292251703869975e-03, 4.028350265514151450e-03, 4.026401828855942847e-03, 4.024446945201000034e-03, 4.022485618031524518e-03, 4.020517850839937929e-03, 4.018543647128920183e-03, 4.016563010411563876e-03, 4.014575944211159174e-03, 4.012582452061197284e-03, 4.010582537505672299e-03, 4.008576204098549499e-03, 4.006563455404326540e-03, 4.004544294997584158e-03, 4.002518726463117141e-03, 4.000486753396148565e-03, 3.998448379401948159e-03, 3.996403608096057818e-03, 3.994352443104321089e-03, 3.992294888062705369e-03, 3.990230946617396440e-03, 3.988160622424834906e-03, 3.986083919151578274e-03, 3.984000840474462291e-03, 3.981911390080419659e-03, 3.979815571666584124e-03, 3.977713388940293943e-03, 3.975604845619024226e-03, 3.973489945430319289e-03, 3.971368692112078880e-03, 3.969241089412083728e-03, 3.967107141088525510e-03, 3.964966850909501170e-03, 3.962820222653296552e-03, 3.960667260108387266e-03, 3.958507967073279094e-03, 3.956342347356577374e-03, 3.954170404777043388e-03, 3.951992143163481595e-03, 3.949807566354759589e-03, 3.947616678199896562e-03, 3.945419482557888102e-03, 3.943215983297884870e-03, 3.941006184299038206e-03, 3.938790089450476713e-03, 3.936567702651547380e-03, 3.934339027811523289e-03, 3.932104068849618349e-03, 3.929862829695309964e-03, 3.927615314287799531e-03, 3.925361526576589231e-03, 3.923101470520934733e-03, 3.920835150090182589e-03, 3.918562569263727736e-03, 3.916283732030846100e-03, 3.913998642390813416e-03, 3.911707304352935594e-03, 3.909409721936390851e-03, 3.907105899170326864e-03, 3.904795840093918443e-03, 3.902479548756135948e-03, 3.900157029216029352e-03, 3.897828285542491011e-03, 3.895493321814244396e-03, 3.893152142120161110e-03, 3.890804750558786874e-03, 3.888451151238649008e-03, 3.886091348278203524e-03, 3.883725345805721929e-03, 3.881353147959350214e-03, 3.878974758887178669e-03, 3.876590182747046733e-03, 3.874199423706771537e-03, 3.871802485943907218e-03, 3.869399373645862009e-03, 3.866990091009942475e-03, 3.864574642243247260e-03, 3.862153031562561706e-03, 3.859725263194737754e-03, 3.857291341376195646e-03, 3.854851270353300361e-03, 3.852405054382139135e-03, 3.849952697728475058e-03, 3.847494204668113534e-03, 3.845029579486352374e-03, 3.842558826478358232e-03, 3.840081949949095477e-03, 3.837598954213196096e-03, 3.835109843595011728e-03, 3.832614622428727729e-03, 3.830113295058110764e-03, 3.827605865836778993e-03, 3.825092339127941863e-03, 3.822572719304528042e-03, 3.820047010749239632e-03, 3.817515217854393437e-03, 3.814977345021865456e-03, 3.812433396663487267e-03, 3.809883377200412417e-03, 3.807327291063792966e-03, 3.804765142694113787e-03, 3.802196936541634049e-03, 3.799622677066293985e-03, 3.797042368737562224e-03, 3.794456016034519503e-03, 3.791863623445952333e-03, 3.789265195470139201e-03, 3.786660736614960287e-03, 3.784050251397956446e-03, 3.781433744346131016e-03, 3.778811219996177934e-03, 3.776182682894254055e-03, 3.773548137596057644e-03, 3.770907588666929863e-03, 3.768261040681693437e-03, 3.765608498224565486e-03, 3.762949965889582100e-03, 3.760285448279948248e-03, 3.757614950008696976e-03, 3.754938475698094830e-03, 3.752256029979996604e-03, 3.749567617495790268e-03, 3.746873242896278135e-03, 3.744172910841669488e-03, 3.741466626001773571e-03, 3.738754393055728539e-03, 3.736036216692119848e-03, 3.733312101609047914e-03, 3.730582052513929919e-03, 3.727846074123700171e-03, 3.725104171164646174e-03, 3.722356348372335769e-03, 3.719602610492040405e-03, 3.716842962278094162e-03, 3.714077408494333501e-03, 3.711305953914024840e-03, 3.708528603319660288e-03, 3.705745361503214822e-03, 3.702956233265899955e-03, 3.700161223418289066e-03, 3.697360336780339089e-03, 3.694553578181247397e-03, 3.691740952459518152e-03, 3.688922464463046010e-03, 3.686098119048960859e-03, 3.683267921083548894e-03, 3.680431875442655935e-03, 3.677589987011128415e-03, 3.674742260683240124e-03, 3.671888701362458450e-03, 3.669029313961367621e-03, 3.666164103402067692e-03, 3.663293074615609889e-03, 3.660416232542371747e-03, 3.657533582131986417e-03, 3.654645128343183939e-03, 3.651750876144008520e-03, 3.648850830511562223e-03, 3.645944996432166733e-03, 3.643033378901368129e-03, 3.640115982923792029e-03, 3.637192813513202578e-03, 3.634263875692611730e-03, 3.631329174494079756e-03, 3.628388714958685323e-03, 3.625442502136914935e-03, 3.622490541087992465e-03, 3.619532836880621184e-03, 3.616569394592259942e-03, 3.613600219309596757e-03, 3.610625316128442553e-03, 3.607644690153566803e-03, 3.604658346498791632e-03, 3.601666290287098941e-03, 3.598668526650360220e-03, 3.595665060729596758e-03, 3.592655897674781884e-03, 3.589641042644862653e-03, 3.586620500807907730e-03, 3.583594277340861924e-03, 3.580562377429655045e-03, 3.577524806269326372e-03, 3.574481569063739286e-03, 3.571432671025667142e-03, 3.568378117377088606e-03, 3.565317913348573127e-03, 3.562252064179989575e-03, 3.559180575119804540e-03, 3.556103451425529031e-03, 3.553020698363646476e-03, 3.549932321209429281e-03, 3.546838325247037276e-03, 3.543738715769585799e-03, 3.540633498079003884e-03, 3.537522677486022119e-03, 3.534406259310365634e-03, 3.531284248880426236e-03, 3.528156651533600249e-03, 3.525023472616003583e-03, 3.521884717482456125e-03, 3.518740391496898070e-03, 3.515590500031725955e-03, 3.512435048468270579e-03, 3.509274042196695951e-03, 3.506107486615770742e-03, 3.502935387133281151e-03, 3.499757749165470586e-03, 3.496574578137439087e-03, 3.493385879483094317e-03, 3.490191658644970722e-03, 3.486991921074293708e-03, 3.483786672231108453e-03, 3.480575917584042243e-03, 3.477359662610410296e-03, 3.474137912796308129e-03, 3.470910673636337044e-03, 3.467677950633922014e-03, 3.464439749301052775e-03, 3.461196075158197525e-03, 3.457946933734828976e-03, 3.454692330568670186e-03, 3.451432271206201965e-03, 3.448166761202567463e-03, 3.444895806121359670e-03, 3.441619411534898535e-03, 3.438337583023959483e-03, 3.435050326177885738e-03, 3.431757646594685036e-03, 3.428459549880774181e-03, 3.425156041651134745e-03, 3.421847127529351659e-03, 3.418532813147488747e-03, 3.415213104145917861e-03, 3.411888006173908246e-03, 3.408557524888759620e-03, 3.405221665956692945e-03, 3.401880435052019938e-03, 3.398533837857626184e-03, 3.395181880065062212e-03, 3.391824567373989685e-03, 3.388461905492618116e-03, 3.385093900137684918e-03, 3.381720557034170911e-03, 3.378341881915599126e-03, 3.374957880523767658e-03, 3.371568558608865028e-03, 3.368173921929553446e-03, 3.364773976252738528e-03, 3.361368727353684655e-03, 3.357958181016098675e-03, 3.354542343031957294e-03, 3.351121219201378711e-03, 3.347694815333194639e-03, 3.344263137244074709e-03, 3.340826190759427217e-03, 3.337383981712563862e-03, 3.333936515945239674e-03, 3.330483799307509037e-03, 3.327025837657602084e-03, 3.323562636861957659e-03, 3.320094202795364265e-03, 3.316620541340713733e-03, 3.313141658389221963e-03, 3.309657559840198209e-03, 3.306168251601170407e-03, 3.302673739587918145e-03, 3.299174029724363799e-03, 3.295669127942398198e-03, 3.292159040182469128e-03, 3.288643772392765147e-03, 3.285123330529786737e-03, 3.281597720558201026e-03, 3.278066948450617576e-03, 3.274531020188050680e-03, 3.270989941759233285e-03, 3.267443719161161261e-03, 3.263892358398980641e-03, 3.260335865485762975e-03, 3.256774246442637605e-03, 3.253207507298897915e-03, 3.249635654091705128e-03, 3.246058692866389279e-03, 3.242476629676184236e-03, 3.238889470582316608e-03, 3.235297221654132374e-03, 3.231699888968850992e-03, 3.228097478611530267e-03, 3.224489996675565517e-03, 3.220877449261917193e-03, 3.217259842479624349e-03, 3.213637182445744367e-03, 3.210009475285094047e-03, 3.206376727130554917e-03, 3.202738944122782670e-03, 3.199096132410318618e-03, 3.195448298149698111e-03, 3.191795447505219388e-03, 3.188137586648996918e-03, 3.184474721761155688e-03, 3.180806859029469951e-03, 3.177134004649695420e-03, 3.173456164825327712e-03, 3.169773345767519079e-03, 3.166085553695575407e-03, 3.162392794836233270e-03, 3.158695075424072796e-03, 3.154992401701724528e-03, 3.151284779919171636e-03, 3.147572216334297655e-03, 3.143854717212824466e-03, 3.140132288828009158e-03, 3.136404937460990101e-03, 3.132672669400463419e-03, 3.128935490942840857e-03, 3.125193408392297912e-03, 3.121446428060596027e-03, 3.117694556267108178e-03, 3.113937799339013598e-03, 3.110176163611024121e-03, 3.106409655425292678e-03, 3.102638281132030426e-03, 3.098862047088542671e-03, 3.095080959660223303e-03, 3.091295025219613270e-03, 3.087504250147028555e-03, 3.083708640830389296e-03, 3.079908203665068442e-03, 3.076102945053951591e-03, 3.072292871407587053e-03, 3.068477989143887467e-03, 3.064658304688413874e-03, 3.060833824474111595e-03, 3.057004554941401744e-03, 3.053170502538306123e-03, 3.049331673720239496e-03, 3.045488074949866467e-03, 3.041639712697747234e-03, 3.037786593441430764e-03, 3.033928723666017273e-03, 3.030066109864273591e-03, 3.026198758535881151e-03, 3.022326676188446474e-03, 3.018449869336487217e-03, 3.014568344502079663e-03, 3.010682108214738154e-03, 3.006791167011189578e-03, 3.002895527435485261e-03, 2.998995196039135405e-03, 2.995090179380777758e-03, 2.991180484026528027e-03, 2.987266116549659820e-03, 2.983347083530714372e-03, 2.979423391557644088e-03, 2.975495047225547567e-03, 2.971562057136610622e-03, 2.967624427900680470e-03, 2.963682166134389267e-03, 2.959735278461740875e-03, 2.955783771514059691e-03, 2.951827651929649337e-03, 2.947866926354170396e-03, 2.943901601440342478e-03, 2.939931683848005361e-03, 2.935957180244290303e-03, 2.931978097303333374e-03, 2.927994441706389950e-03, 2.924006220141940095e-03, 2.920013439305410574e-03, 2.916016105899474960e-03, 2.912014226633793425e-03, 2.908007808224926868e-03, 2.903996857396937571e-03, 2.899981380880449402e-03, 2.895961385413292274e-03, 2.891936877740563724e-03, 2.887907864613964079e-03, 2.883874352792390600e-03, 2.879836349041785259e-03, 2.875793860134910097e-03, 2.871746892851659034e-03, 2.867695453978743453e-03, 2.863639550309818836e-03, 2.859579188645609664e-03, 2.855514375793598032e-03, 2.851445118568202326e-03, 2.847371423790853989e-03, 2.843293298289703477e-03, 2.839210748899925578e-03, 2.835123782463485655e-03, 2.831032405829027754e-03, 2.826936625852462248e-03, 2.822836449396085891e-03, 2.818731883329183337e-03, 2.814622934527939106e-03, 2.810509609875202954e-03, 2.806391916260587028e-03, 2.802269860580618947e-03, 2.798143449738390957e-03, 2.794012690643946778e-03, 2.789877590213896922e-03, 2.785738155371594339e-03, 2.781594393047244571e-03, 2.777446310177641639e-03, 2.773293913706101257e-03, 2.769137210583061913e-03, 2.764976207765082201e-03, 2.760810912215877315e-03, 2.756641330905535824e-03, 2.752467470810624189e-03, 2.748289338914801719e-03, 2.744106942207860840e-03, 2.739920287686378481e-03, 2.735729382353604185e-03, 2.731534233219228957e-03, 2.727334847299504091e-03, 2.723131231617343089e-03, 2.718923393202045402e-03, 2.714711339089600009e-03, 2.710495076322370998e-03, 2.706274611949225934e-03, 2.702049953025668569e-03, 2.697821106613574292e-03, 2.693588079781096458e-03, 2.689350879603329483e-03, 2.685109513161227680e-03, 2.680863987542754946e-03, 2.676614309841797087e-03, 2.672360487158875666e-03, 2.668102526600964544e-03, 2.663840435281297336e-03, 2.659574220319471920e-03, 2.655303888841591825e-03, 2.651029447979972187e-03, 2.646750904873242105e-03, 2.642468266666515506e-03, 2.638181540511031192e-03, 2.633890733564499351e-03, 2.629595852990837014e-03, 2.625296905960043583e-03, 2.620993899648818397e-03, 2.616686841239800922e-03, 2.612375737921762437e-03, 2.608060596890161582e-03, 2.603741425346088774e-03, 2.599418230497429778e-03, 2.595091019557790608e-03, 2.590759799747130269e-03, 2.586424578291678794e-03, 2.582085362423673994e-03, 2.577742159381510648e-03, 2.573394976409841984e-03, 2.569043820759314700e-03, 2.564688699686672180e-03, 2.560329620454895438e-03, 2.555966590332871356e-03, 2.551599616595737891e-03, 2.547228706524596112e-03, 2.542853867406406985e-03, 2.538475106534646662e-03, 2.534092431208334606e-03, 2.529705848732685843e-03, 2.525315366419029432e-03, 2.520920991584515297e-03, 2.516522731552273823e-03, 2.512120593651552027e-03, 2.507714585217345367e-03, 2.503304713590775912e-03, 2.498890986118764042e-03, 2.494473410154118657e-03, 2.490051993055715420e-03, 2.485626742188213559e-03, 2.481197664921958295e-03, 2.476764768633594061e-03, 2.472328060705232273e-03, 2.467887548525061082e-03, 2.463443239486999732e-03, 2.458995140990594044e-03, 2.454543260441681678e-03, 2.450087605251392939e-03, 2.445628182836837722e-03, 2.441165000620994056e-03, 2.436698066032434891e-03, 2.432227386505492889e-03, 2.427752969480363645e-03, 2.423274822402760043e-03, 2.418792952724302999e-03, 2.414307367902171486e-03, 2.409818075399190566e-03, 2.405325082684030020e-03, 2.400828397230910741e-03, 2.396328026519473336e-03, 2.391823978035524916e-03, 2.387316259269858191e-03, 2.382804877719486153e-03, 2.378289840886521015e-03, 2.373771156278839910e-03, 2.369248831409989913e-03, 2.364722873798939112e-03, 2.360193290970173750e-03, 2.355660090453883838e-03, 2.351123279785615350e-03, 2.346582866506422439e-03, 2.342038858162997974e-03, 2.337491262307322265e-03, 2.332940086497029952e-03, 2.328385338295138086e-03, 2.323827025269875699e-03, 2.319265154995368144e-03, 2.314699735050862114e-03, 2.310130773020840564e-03, 2.305558276495702288e-03, 2.300982253070606165e-03, 2.296402710346692830e-03, 2.291819655929953209e-03, 2.287233097431911992e-03, 2.282643042469533097e-03, 2.278049498664948182e-03, 2.273452473645581548e-03, 2.268851975044315801e-03, 2.264248010499143177e-03, 2.259640587653344215e-03, 2.255029714155580567e-03, 2.250415397659563232e-03, 2.245797645824445035e-03, 2.241176466314480191e-03, 2.236551866798921519e-03, 2.231923854952725175e-03, 2.227292438455509820e-03, 2.222657624992277828e-03, 2.218019422253263498e-03, 2.213377837933652031e-03, 2.208732879733963771e-03, 2.204084555359655216e-03, 2.199432872521305503e-03, 2.194777838934735235e-03, 2.190119462320673852e-03, 2.185457750404923988e-03, 2.180792710918479441e-03, 2.176124351597290979e-03, 2.171452680182106316e-03, 2.166777704419150553e-03, 2.162099432059251449e-03, 2.157417870858458712e-03, 2.152733028577713970e-03, 2.148044912982687710e-03, 2.143353531844537346e-03, 2.138658892938821287e-03, 2.133961004046235760e-03, 2.129259872952483403e-03, 2.124555507447956244e-03, 2.119847915328145968e-03, 2.115137104393245357e-03, 2.110423082448305288e-03, 2.105705857303391288e-03, 2.100985436773231824e-03, 2.096261828677365747e-03, 2.091535040840311003e-03, 2.086805081091267985e-03, 2.082071957264003750e-03, 2.077335677197575392e-03, 2.072596248735168647e-03, 2.067853679725335184e-03, 2.063107978020832078e-03, 2.058359151479340413e-03, 2.053607207963352530e-03, 2.048852155339881461e-03, 2.044094001480621387e-03, 2.039332754262090323e-03, 2.034568421565240235e-03, 2.029801011275875981e-03, 2.025030531284256318e-03, 2.020256989485267381e-03, 2.015480393778538038e-03, 2.010700752068125905e-03, 2.005918072262666101e-03, 2.001132362275502216e-03, 1.996343630024426542e-03, 1.991551883431535649e-03, 1.986757130423994107e-03, 1.981959378932826674e-03, 1.977158636894182486e-03, 1.972354912248174951e-03, 1.967548212939584755e-03, 1.962738546917752736e-03, 1.957925922136301896e-03, 1.953110346553285940e-03, 1.948291828131334773e-03, 1.943470374837306036e-03, 1.938645994642457715e-03, 1.933818695522581494e-03, 1.928988485457612447e-03, 1.924155372432048618e-03, 1.919319364434622296e-03, 1.914480469458158633e-03, 1.909638695500349764e-03, 1.904794050562626153e-03, 1.899946542650927245e-03, 1.895096179775565938e-03, 1.890242969950842612e-03, 1.885386921195732939e-03, 1.880528041532948105e-03, 1.875666338989642789e-03, 1.870801821597280071e-03, 1.865934497391346942e-03, 1.861064374411508689e-03, 1.856191460701754614e-03, 1.851315764310119830e-03, 1.846437293288556453e-03, 1.841556055693627280e-03, 1.836672059585577272e-03, 1.831785313029012053e-03, 1.826895824092514969e-03, 1.822003600848522619e-03, 1.817108651374071656e-03, 1.812210983749705257e-03, 1.807310606060202581e-03, 1.802407526394475329e-03, 1.797501752845221019e-03, 1.792593293509349298e-03, 1.787682156487570154e-03, 1.782768349884576286e-03, 1.777851881809159327e-03, 1.772932760373886101e-03, 1.768010993695257136e-03, 1.763086589893835248e-03, 1.758159557093975141e-03, 1.753229903423695257e-03, 1.748297637015441266e-03, 1.743362766004839890e-03, 1.738425298532034636e-03, 1.733485242740440049e-03, 1.728542606777517133e-03, 1.723597398794628503e-03, 1.718649626946771236e-03, 1.713699299392708493e-03, 1.708746424295141259e-03, 1.703791009820295257e-03, 1.698833064138354203e-03, 1.693872595423051922e-03, 1.688909611851846472e-03, 1.683944121606031387e-03, 1.678976132870446626e-03, 1.674005653833581138e-03, 1.669032692687747420e-03, 1.664057257628797888e-03, 1.659079356855983935e-03, 1.654098998572718334e-03, 1.649116190985372215e-03, 1.644130942304543362e-03, 1.639143260743869445e-03, 1.634153154520766793e-03, 1.629160631856298126e-03, 1.624165700974901285e-03, 1.619168370104537551e-03, 1.614168647476839531e-03, 1.609166541326702412e-03, 1.604162059892737593e-03, 1.599155211416842257e-03, 1.594146004144370455e-03, 1.589134446324288368e-03, 1.584120546208867041e-03, 1.579104312053568543e-03, 1.574085752117813583e-03, 1.569064874663843312e-03, 1.564041687957504938e-03, 1.559016200268100154e-03, 1.553988419868008487e-03, 1.548958355033370343e-03, 1.543926014043162402e-03, 1.538891405179864183e-03, 1.533854536729373046e-03, 1.528815416980682180e-03, 1.523774054226059065e-03, 1.518730456761176878e-03, 1.513684632884729599e-03, 1.508636590898845527e-03, 1.503586339108701087e-03, 1.498533885822660042e-03, 1.493479239352441326e-03, 1.488422408012812651e-03, 1.483363400121474928e-03, 1.478302223999824029e-03, 1.473238887971825171e-03, 1.468173400364779658e-03, 1.463105769509194347e-03, 1.458036003738440341e-03, 1.452964111389182114e-03, 1.447890100800977879e-03, 1.442813980316419659e-03, 1.437735758281312838e-03, 1.432655443044291484e-03, 1.427573042957009167e-03, 1.422488566374264726e-03, 1.417402021653614346e-03, 1.412313417155798946e-03, 1.407222761244385310e-03, 1.402130062285671976e-03, 1.397035328649411752e-03, 1.391938568707721223e-03, 1.386839790835767486e-03, 1.381739003411947475e-03, 1.376636214817000001e-03, 1.371531433434745179e-03, 1.366424667651967547e-03, 1.361315925858029227e-03, 1.356205216445340467e-03, 1.351092547808936803e-03, 1.345977928346635396e-03, 1.340861366459190516e-03, 1.335742870549945071e-03, 1.330622449024979363e-03, 1.325500110293270899e-03, 1.320375862766402309e-03, 1.315249714858426466e-03, 1.310121674986645599e-03, 1.304991751570359036e-03, 1.299859953032202848e-03, 1.294726287796893038e-03, 1.289590764291997493e-03, 1.284453390947824314e-03, 1.279314176197101976e-03, 1.274173128475159303e-03, 1.269030256220064030e-03, 1.263885567872220566e-03, 1.258739071874812564e-03, 1.253590776673379863e-03, 1.248440690715987194e-03, 1.243288822453376833e-03, 1.238135180338665459e-03, 1.232979772827227493e-03, 1.227822608377462715e-03, 1.222663695449659150e-03, 1.217503042506767842e-03, 1.212340658014276649e-03, 1.207176550439796082e-03, 1.202010728253798295e-03, 1.196843199928604657e-03, 1.191673973939147511e-03, 1.186503058762827714e-03, 1.181330462879201298e-03, 1.176156194770168559e-03, 1.170980262920100472e-03, 1.165802675815442091e-03, 1.160623441945148613e-03, 1.155442569800276854e-03, 1.150260067874140073e-03, 1.145075944662467130e-03, 1.139890208663099994e-03, 1.134702868375864508e-03, 1.129513932303361206e-03, 1.124323408949808902e-03, 1.119131306821819893e-03, 1.113937634428290241e-03, 1.108742400280025723e-03, 1.103545612890195022e-03, 1.098347280773912752e-03, 1.093147412448394491e-03, 1.087946016433117896e-03, 1.082743101249470773e-03, 1.077538675420890071e-03, 1.072332747473042722e-03, 1.067125325933398691e-03, 1.061916419331670721e-03, 1.056706036199470860e-03, 1.051494185070170817e-03, 1.046280874479693429e-03, 1.041066112965346926e-03, 1.035849909066569128e-03, 1.030632271325077716e-03, 1.025413208283991592e-03, 1.020192728488568358e-03, 1.014970840486080278e-03, 1.009747552825442833e-03, 1.004522874057668788e-03, 9.992968127354533679e-04, 9.940693774133299576e-04, 9.888405766478292579e-04, 9.836104189971160792e-04, 9.783789130211539235e-04, 9.731460672818593744e-04, 9.679118903426922691e-04, 9.626763907690890536e-04, 9.574395771281205003e-04, 9.522014579883456660e-04, 9.469620419206166949e-04, 9.417213374969025681e-04, 9.364793532910939064e-04, 9.312360978788626750e-04, 9.259915798373663043e-04, 9.207458077454008880e-04, 9.154987901835681501e-04, 9.102505357338485942e-04, 9.050010529800584956e-04, 8.997503505074284707e-04, 8.944984369027513633e-04, 8.892453207545639561e-04, 8.839910106528234453e-04, 8.787355151887863347e-04, 8.734788429558084689e-04, 8.682210025480487613e-04, 8.629620025617930042e-04, 8.577018515944552111e-04, 8.524405582447298381e-04, 8.471781311133419435e-04, 8.419145788018671424e-04, 8.366499099135315306e-04, 8.313841330530764850e-04, 8.261172568264674469e-04, 8.208492898410407225e-04, 8.155802407056640538e-04, 8.103101180303289583e-04, 8.050389304265899394e-04, 7.997666865071415389e-04, 7.944933948859908340e-04, 7.892190641786068399e-04, 7.839437030016230051e-04, 7.786673199726942048e-04, 7.733899237113192170e-04, 7.681115228375252598e-04, 7.628321259732615163e-04, 7.575517417411029714e-04, 7.522703787650437219e-04, 7.469880456703850875e-04, 7.417047510834098075e-04, 7.364205036315536702e-04, 7.311353119435632644e-04, 7.258491846491338557e-04, 7.205621303790698488e-04, 7.152741577654426466e-04, 7.099852754411720406e-04, 7.046954920404808163e-04, 6.994048161985221132e-04, 6.941132565512544159e-04, 6.888208217362482011e-04, 6.835275203914960252e-04, 6.782333611561617084e-04, 6.729383526707457836e-04, 6.676425035760671055e-04, 6.623458225146057433e-04, 6.570483181291921805e-04, 6.517499990638192736e-04, 6.464508739635053177e-04, 6.411509514739950231e-04, 6.358502402419104367e-04, 6.305487489149233299e-04, 6.252464861413844013e-04, 6.199434605704801614e-04, 6.146396808524081387e-04, 6.093351556379359357e-04, 6.040298935788687359e-04, 5.987239033276797002e-04, 5.934171935373754167e-04, 5.881097728623078599e-04, 5.828016499569828529e-04, 5.774928334768687733e-04, 5.721833320782674249e-04, 5.668731544180041727e-04, 5.615623091535878629e-04, 5.562508049433789823e-04, 5.509386504461579294e-04, 5.456258543215874264e-04, 5.403124252297771034e-04, 5.349983718314587060e-04, 5.296837027881369075e-04, 5.243684267617902857e-04, 5.190525524147297266e-04, 5.137360884104201410e-04, 5.084190434121609904e-04, 5.031014260844296135e-04, 4.977832450918699908e-04, 4.924645090994486532e-04, 4.871452267732135689e-04, 4.818254067790929017e-04, 4.765050577837161858e-04, 4.711841884542739218e-04, 4.658628074582115059e-04, 4.605409234633959267e-04, 4.552185451382714560e-04, 4.498956811514374606e-04, 4.445723401721043641e-04, 4.392485308696700481e-04, 4.339242619138754904e-04, 4.285995419749769357e-04, 4.232743797234281161e-04, 4.179487838297523696e-04, 4.126227629653575805e-04, 4.072963258012169763e-04, 4.019694810092778320e-04, 3.966422372611427003e-04, 3.913146032288862498e-04, 3.859865875849243476e-04, 3.806581990017003994e-04, 3.753294461518476006e-04, 3.700003377083600775e-04, 3.646708823442155307e-04, 3.593410887325411180e-04, 3.540109655467799880e-04, 3.486805214602593881e-04, 3.433497651466515589e-04, 3.380187052796038041e-04, 3.326873505326056763e-04, 3.273557095797466170e-04, 3.220237910948114068e-04, 3.166916037514435549e-04, 3.113591562239053788e-04, 3.060264571857537600e-04, 3.006935153112545939e-04, 2.953603392740603885e-04, 2.900269377480286744e-04, 2.846933194070879435e-04, 2.793594929249277291e-04, 2.740254669751622670e-04, 2.686912502314946433e-04, 2.633568513673461599e-04, 2.580222790560198322e-04, 2.526875419708664349e-04, 2.473526487848530975e-04, 2.420176081710243075e-04, 2.366824288021324954e-04, 2.313471193505030245e-04, 2.260116884888550132e-04, 2.206761448890962984e-04, 2.153404972231429029e-04, 2.100047541627846483e-04, 2.046689243793157131e-04, 1.993330165439957441e-04, 1.939970393276187232e-04, 1.886610014006785522e-04, 1.833249114335337162e-04, 1.779887780960339653e-04, 1.726526100576874991e-04, 1.673164159878238132e-04, 1.619802045552815582e-04, 1.566439844282780281e-04, 1.513077642751656086e-04, 1.459715527634081005e-04, 1.406353585603397965e-04, 1.352991903327345653e-04, 1.299630567466727386e-04, 1.246269664683608220e-04, 1.192909281629264315e-04, 1.139549504952378016e-04, 1.086190421297709426e-04, 1.032832117302380449e-04, 9.794746796004986326e-05, 9.261181948188476035e-05, 8.727627495785354619e-05, 8.194084304966372113e-05, 7.660553241824861093e-05, 7.127035172393154211e-05, 6.593530962659062715e-05, 6.060041478534678523e-05, 5.526567585843155777e-05, 4.993110150400467809e-05, 4.459670037883274070e-05, 3.926248113970162538e-05, 3.392845244209439392e-05, 2.859462294101006264e-05, 2.326100129083040480e-05, 1.792759614500860838e-05, 1.259441615623369874e-05, 7.261469976594912947e-06, 1.928766257151394811e-06, -3.403686351606035826e-06, -8.735879200185260943e-06, -1.406780363992831378e-05, -1.939945102284720821e-05, -2.473081270193512251e-05, -3.006188003129923577e-05, -3.539264436540208957e-05, -4.072309705996710857e-05, -4.605322947181434730e-05, -5.138303295810170781e-05, -5.671249887764669400e-05, -6.204161858951362160e-05, -6.737038345433588407e-05, -7.269878483349669551e-05, -7.802681408926336916e-05, -8.335446258509727720e-05, -8.868172168548991941e-05, -9.400858275579905955e-05, -9.933503716261860093e-05, -1.046610762736147093e-04, -1.099866914573611765e-04, -1.153118740837700526e-04, -1.206366155236289619e-04, -1.259609071489730932e-04, -1.312847403332168623e-04, -1.366081064503367763e-04, -1.419309968760728647e-04, -1.472534029871118552e-04, -1.525753161612189586e-04, -1.578967277776090455e-04, -1.632176292164852906e-04, -1.685380118594679210e-04, -1.738578670894320197e-04, -1.791771862903402865e-04, -1.844959608476163843e-04, -1.898141821479788110e-04, -1.951318415792781345e-04, -2.004489305308045804e-04, -2.057654403934260784e-04, -2.110813625588244143e-04, -2.163966884205232167e-04, -2.217114093731283649e-04, -2.270255168127558148e-04, -2.323390021371664197e-04, -2.376518567449482249e-04, -2.429640720367178723e-04, -2.482756394143018379e-04, -2.535865502808714689e-04, -2.588967960413103390e-04, -2.642063681017565524e-04, -2.695152578700284554e-04, -2.748234567554638493e-04, -2.801309561687540537e-04, -2.854377475223123179e-04, -2.907438222301141724e-04, -2.960491717075280221e-04, -3.013537873716305954e-04, -3.066576606413344997e-04, -3.119607829365775645e-04, -3.172631456796340204e-04, -3.225647402937133852e-04, -3.278655582042719146e-04, -3.331655908381997216e-04, -3.384648296239532120e-04, -3.437632659918659250e-04, -3.490608913739800482e-04, -3.543576972038882866e-04, -3.596536749171598459e-04, -3.649488159508797549e-04, -3.702431117440786973e-04, -3.755365537375679962e-04, -3.808291333737760624e-04, -3.861208420971192997e-04, -3.914116713538336742e-04, -3.967016125918175051e-04, -4.019906572609349324e-04, -4.072787968131516057e-04, -4.125660227017203391e-04, -4.178523263824942971e-04, -4.231376993125217606e-04, -4.284221329513631066e-04, -4.337056187602739707e-04, -4.389881482023391462e-04, -4.442697127427805513e-04, -4.495503038487953036e-04, -4.548299129893905424e-04, -4.601085316358126094e-04, -4.653861512610833360e-04, -4.706627633404375185e-04, -4.759383593511485244e-04, -4.812129307723701072e-04, -4.864864690854436152e-04, -4.917589657740329204e-04, -4.970304123233106703e-04, -5.023008002211471704e-04, -5.075701209573068272e-04, -5.128383660235719642e-04, -5.181055269141730335e-04, -5.233715951250372637e-04, -5.286365621548028224e-04, -5.339004195040636695e-04, -5.391631586755069256e-04, -5.444247711742137381e-04, -5.496852485075054331e-04, -5.549445821847717774e-04, -5.602027637179017323e-04, -5.654597846208251613e-04, -5.707156364099405478e-04, -5.759703106039444501e-04, -5.812237987236781953e-04, -5.864760922924315643e-04, -5.917271828360741968e-04, -5.969770618822428741e-04, -6.022257209615398867e-04, -6.074731516067122944e-04, -6.127193453527914621e-04, -6.179642937374550758e-04, -6.232079883005753546e-04, -6.284504205846374453e-04, -6.336915821345802608e-04, -6.389314644976378616e-04, -6.441700592236972427e-04, -6.494073578651407986e-04, -6.546433519766832595e-04, -6.598780331157960482e-04, -6.651113928422520234e-04, -6.703434227184884705e-04, -6.755741143097396999e-04, -6.808034591832321349e-04, -6.860314489093664175e-04, -6.912580750609101116e-04, -6.964833292131359386e-04, -7.017072029441149454e-04, -7.069296878345704633e-04, -7.121507754676988881e-04, -7.173704574296094335e-04, -7.225887253088566229e-04, -7.278055706968741866e-04, -7.330209851877982291e-04, -7.382349603783243310e-04, -7.434474878680565535e-04, -7.486585592593526144e-04, -7.538681661571598486e-04, -7.590763001693243139e-04, -7.642829529067136311e-04, -7.694881159824208542e-04, -7.746917810130595503e-04, -7.798939396173737437e-04, -7.850945834175423197e-04, -7.902937040383625116e-04, -7.954912931073985453e-04, -8.006873422552684104e-04, -8.058818431154946742e-04, -8.110747873243401166e-04, -8.162661665212235214e-04, -8.214559723482774307e-04, -8.266441964507534193e-04, -8.318308304768857022e-04, -8.370158660776985801e-04, -8.421992949073409162e-04, -8.473811086231947728e-04, -8.525612988850854619e-04, -8.577398573564497730e-04, -8.629167757035441800e-04, -8.680920455955703921e-04, -8.732656587050977590e-04, -8.784376067073095332e-04, -8.836078812810283086e-04, -8.887764741079445027e-04, -8.939433768727707459e-04, -8.991085812635323405e-04, -9.042720789714072315e-04, -9.094338616905762790e-04, -9.145939211186248459e-04, -9.197522489561048894e-04, -9.249088369069524869e-04, -9.300636766783230373e-04, -9.352167599804374126e-04, -9.403680785268718739e-04, -9.455176240347070403e-04, -9.506653882237133283e-04, -9.558113628175288288e-04, -9.609555395428636109e-04, -9.660979101296244057e-04, -9.712384663112826923e-04, -9.763771998244123946e-04, -9.815141024091206343e-04, -9.866491658088835832e-04, -9.917823817703812304e-04, -9.969137420438672036e-04, -1.002043238382994972e-03, -1.007170862544673430e-03, -1.012296606289471521e-03, -1.017420461381175235e-03, -1.022542419587148862e-03, -1.027662472678460542e-03, -1.032780612429090366e-03, -1.037896830617090907e-03, -1.043011119023857115e-03, -1.048123469433967806e-03, -1.053233873636056717e-03, -1.058342323422079142e-03, -1.063448810587446164e-03, -1.068553326931372246e-03, -1.073655864256441769e-03, -1.078756414369009750e-03, -1.083854969079054830e-03, -1.088951520200012518e-03, -1.094046059549139485e-03, -1.099138578947341828e-03, -1.104229070219033687e-03, -1.109317525192541655e-03, -1.114403935699655483e-03, -1.119488293575993674e-03, -1.124570590661127731e-03, -1.129650818797791560e-03, -1.134728969833042429e-03, -1.139805035617471674e-03, -1.144879008005331329e-03, -1.149950878854833804e-03, -1.155020640027992068e-03, -1.160088283390470687e-03, -1.165153800811974177e-03, -1.170217184165841303e-03, -1.175278425329417389e-03, -1.180337516183925734e-03, -1.185394448614294355e-03, -1.190449214509459999e-03, -1.195501805762488705e-03, -1.200552214269808406e-03, -1.205600431932447305e-03, -1.210646450654703559e-03, -1.215690262345401219e-03, -1.220731858917169449e-03, -1.225771232286265808e-03, -1.230808374373474181e-03, -1.235843277103351040e-03, -1.240875932404355989e-03, -1.245906332209171597e-03, -1.250934468454513882e-03, -1.255960333080995486e-03, -1.260983918033533767e-03, -1.266005215260900636e-03, -1.271024216716140198e-03, -1.276040914356411102e-03, -1.281055300142826519e-03, -1.286067366040750557e-03, -1.291077104019928371e-03, -1.296084506053701846e-03, -1.301089564120263371e-03, -1.306092270201331812e-03, -1.311092616283381345e-03, -1.316090594356872975e-03, -1.321086196416398515e-03, -1.326079414460948390e-03, -1.331070240493766998e-03, -1.336058666522206345e-03, -1.341044684558059547e-03, -1.346028286617407740e-03, -1.351009464720476531e-03, -1.355988210892036501e-03, -1.360964517160956951e-03, -1.365938375560564553e-03, -1.370909778128769985e-03, -1.375878716907291428e-03, -1.380845183942782349e-03, -1.385809171286134147e-03, -1.390770670992301809e-03, -1.395729675121163468e-03, -1.400686175736808948e-03, -1.405640164907659244e-03, -1.410591634706821708e-03, -1.415540577211640968e-03, -1.420486984504122207e-03, -1.425430848670763972e-03, -1.430372161802401405e-03, -1.435310915994558170e-03, -1.440247103347301822e-03, -1.445180715965065782e-03, -1.450111745957070658e-03, -1.455040185436891429e-03, -1.459966026522787697e-03, -1.464889261337848966e-03, -1.469809882009209031e-03, -1.474727880669187211e-03, -1.479643249454505117e-03, -1.484555980506431071e-03, -1.489466065971057230e-03, -1.494373497999139551e-03, -1.499278268745957285e-03, -1.504180370371711092e-03, -1.509079795041089363e-03, -1.513976534923666770e-03, -1.518870582193751180e-03, -1.523761929030234248e-03, -1.528650567616877433e-03, -1.533536490142427787e-03, -1.538419688799880485e-03, -1.543300155787676433e-03, -1.548177883308465190e-03, -1.553052863570045629e-03, -1.557925088785220647e-03, -1.562794551171083112e-03, -1.567661242950139965e-03, -1.572525156349553277e-03, -1.577386283601245852e-03, -1.582244616942213907e-03, -1.587100148614361194e-03, -1.591952870864337668e-03, -1.596802775943959290e-03, -1.601649856109761336e-03, -1.606494103623400203e-03, -1.611335510751511595e-03, -1.616174069765541170e-03, -1.621009772942037493e-03, -1.625842612562781054e-03, -1.630672580914022509e-03, -1.635499670287703057e-03, -1.640323872980154266e-03, -1.645145181293300018e-03, -1.649963587533920554e-03, -1.654779084013775639e-03, -1.659591663049874528e-03, -1.664401316964325911e-03, -1.669208038084206295e-03, -1.674011818741877235e-03, -1.678812651274837675e-03, -1.683610528025596435e-03, -1.688405441342022634e-03, -1.693197383576962745e-03, -1.697986347088558702e-03, -1.702772324240375400e-03, -1.707555307400694016e-03, -1.712335288943361150e-03, -1.717112261247616444e-03, -1.721886216697419286e-03, -1.726657147682627994e-03, -1.731425046597750376e-03, -1.736189905843096674e-03, -1.740951717824072665e-03, -1.745710474951301305e-03, -1.750466169640866893e-03, -1.755218794314210989e-03, -1.759968341397943545e-03, -1.764714803324217169e-03, -1.769458172530541515e-03, -1.774198441459654040e-03, -1.778935602559905769e-03, -1.783669648284835632e-03, -1.788400571093518715e-03, -1.793128363450667085e-03, -1.797853017825912052e-03, -1.802574526694875143e-03, -1.807292882538420005e-03, -1.812008077842798114e-03, -1.816720105099960169e-03, -1.821428956807153842e-03, -1.826134625467290898e-03, -1.830837103588821855e-03, -1.835536383685576608e-03, -1.840232458277092295e-03, -1.844925319888472562e-03, -1.849614961050235779e-03, -1.854301374298598015e-03, -1.858984552175579289e-03, -1.863664487228287566e-03, -1.868341172010086655e-03, -1.873014599079399255e-03, -1.877684761000598598e-03, -1.882351650343890926e-03, -1.887015259684611621e-03, -1.891675581604315270e-03, -1.896332608690032111e-03, -1.900986333534398793e-03, -1.905636748735975178e-03, -1.910283846898842754e-03, -1.914927620632983019e-03, -1.919568062554126127e-03, -1.924205165283614065e-03, -1.928838921448714850e-03, -1.933469323682491560e-03, -1.938096364623650546e-03, -1.942720036916808580e-03, -1.947340333212613196e-03, -1.951957246167029293e-03, -1.956570768442487951e-03, -1.961180892706666703e-03, -1.965787611633618842e-03, -1.970390917903070208e-03, -1.974990804200548421e-03, -1.979587263217629216e-03, -1.984180287651806773e-03, -1.988769870206352330e-03, -1.993356003590676748e-03, -1.997938680519935860e-03, -2.002517893715411237e-03, -2.007093635904342362e-03, -2.011665899819812999e-03, -2.016234678201000129e-03, -2.020799963793300583e-03, -2.025361749347659706e-03, -2.029920027621365860e-03, -2.034474791377905573e-03, -2.039026033386305212e-03, -2.043573746422275902e-03, -2.048117923266988809e-03, -2.052658556708207051e-03, -2.057195639539602643e-03, -2.061729164560850182e-03, -2.066259124577898756e-03, -2.070785512402833605e-03, -2.075308320853731705e-03, -2.079827542754983556e-03, -2.084343170937145735e-03, -2.088855198236793439e-03, -2.093363617496914707e-03, -2.097868421566474999e-03, -2.102369603300772820e-03, -2.106867155561527750e-03, -2.111361071216180489e-03, -2.115851343138941063e-03, -2.120337964210072378e-03, -2.124820927315991710e-03, -2.129300225349616774e-03, -2.133775851209945493e-03, -2.138247797802438933e-03, -2.142716058038876027e-03, -2.147180624837189203e-03, -2.151641491121820439e-03, -2.156098649823550827e-03, -2.160552093879383479e-03, -2.165001816232774243e-03, -2.169447809833778724e-03, -2.173890067638378342e-03, -2.178328582609372413e-03, -2.182763347715721992e-03, -2.187194355932910259e-03, -2.191621600243069592e-03, -2.196045073634263385e-03, -2.200464769101535129e-03, -2.204880679646182423e-03, -2.209292798275892724e-03, -2.213701118005052988e-03, -2.218105631854340714e-03, -2.222506332851106881e-03, -2.226903214029227630e-03, -2.231296268428961151e-03, -2.235685489097276844e-03, -2.240070869087690091e-03, -2.244452401460138215e-03, -2.248830079281251976e-03, -2.253203895624436657e-03, -2.257573843569213746e-03, -2.261939916202307301e-03, -2.266302106616482556e-03, -2.270660407911624483e-03, -2.275014813194074260e-03, -2.279365315576720348e-03, -2.283711908179284714e-03, -2.288054584128154569e-03, -2.292393336556272209e-03, -2.296728158603457241e-03, -2.301059043416072650e-03, -2.305385984147327941e-03, -2.309708973957172885e-03, -2.314028006012156576e-03, -2.318343073485683737e-03, -2.322654169558112727e-03, -2.326961287416149261e-03, -2.331264420253566314e-03, -2.335563561271085734e-03, -2.339858703675760671e-03, -2.344149840682038539e-03, -2.348436965510606114e-03, -2.352720071389495429e-03, -2.356999151553380769e-03, -2.361274199243705747e-03, -2.365545207708932233e-03, -2.369812170204411116e-03, -2.374075079992229650e-03, -2.378333930341591795e-03, -2.382588714528402745e-03, -2.386839425835647101e-03, -2.391086057553253996e-03, -2.395328602977942270e-03, -2.399567055413494125e-03, -2.403801408170842292e-03, -2.408031654567435557e-03, -2.412257787928166405e-03, -2.416479801584757361e-03, -2.420697688875833847e-03, -2.424911443147238169e-03, -2.429121057751649614e-03, -2.433326526048932691e-03, -2.437527841406004429e-03, -2.441724997196702968e-03, -2.445917986802078562e-03, -2.450106803610266944e-03, -2.454291441016358787e-03, -2.458471892422735804e-03, -2.462648151238706028e-03, -2.466820210880827768e-03, -2.470988064772823740e-03, -2.475151706345401527e-03, -2.479311129036528959e-03, -2.483466326291513919e-03, -2.487617291562379835e-03, -2.491764018308815446e-03, -2.495906499997502161e-03, -2.500044730102245032e-03, -2.504178702104251173e-03, -2.508308409491770245e-03, -2.512433845760427518e-03, -2.516555004413096805e-03, -2.520671878959774691e-03, -2.524784462917863299e-03, -2.528892749812044951e-03, -2.532996733174144258e-03, -2.537096406543483309e-03, -2.541191763466498291e-03, -2.545282797497039600e-03, -2.549369502196482430e-03, -2.553451871133058035e-03, -2.557529897882835582e-03, -2.561603576029040843e-03, -2.565672899162176317e-03, -2.569737860880278411e-03, -2.573798454788759141e-03, -2.577854674500301181e-03, -2.581906513635175322e-03, -2.585953965820893524e-03, -2.589997024692538945e-03, -2.594035683892617194e-03, -2.598069937070975229e-03, -2.602099777885028171e-03, -2.606125199999678212e-03, -2.610146197087166720e-03, -2.614162762827325348e-03, -2.618174890907643253e-03, -2.622182575022684661e-03, -2.626185808875088068e-03, -2.630184586174444741e-03, -2.634178900638366877e-03, -2.638168745991815826e-03, -2.642154115967237406e-03, -2.646135004304769629e-03, -2.650111404752141225e-03, -2.654083311064519852e-03, -2.658050717004859908e-03, -2.662013616343545611e-03, -2.665972002858713226e-03, -2.669925870336114452e-03, -2.673875212569018847e-03, -2.677820023358425464e-03, -2.681760296513174737e-03, -2.685696025849318783e-03, -2.689627205191032992e-03, -2.693553828370008445e-03, -2.697475889225535179e-03, -2.701393381604826581e-03, -2.705306299362471214e-03, -2.709214636361164438e-03, -2.713118386471162404e-03, -2.717017543570381805e-03, -2.720912101544626684e-03, -2.724802054287445326e-03, -2.728687395700054794e-03, -2.732568119691600270e-03, -2.736444220178864926e-03, -2.740315691086557884e-03, -2.744182526347183678e-03, -2.748044719900955522e-03, -2.751902265696000872e-03, -2.755755157688444257e-03, -2.759603389841842631e-03, -2.763446956128023241e-03, -2.767285850526537624e-03, -2.771120067024690232e-03, -2.774949599617871059e-03, -2.778774442309187021e-03, -2.782594589109767258e-03, -2.786410034038666866e-03, -2.790220771122729412e-03, -2.794026794396873604e-03, -2.797828097903927187e-03, -2.801624675694575333e-03, -2.805416521827616520e-03, -2.809203630369655914e-03, -2.812985995395349097e-03, -2.816763610987533042e-03, -2.820536471236597710e-03, -2.824304570241364248e-03, -2.828067902108505598e-03, -2.831826460952653612e-03, -2.835580240896562552e-03, -2.839329236071053142e-03, -2.843073440614879432e-03, -2.846812848675012858e-03, -2.850547454406316544e-03, -2.854277251971889650e-03, -2.858002235542891293e-03, -2.861722399298474197e-03, -2.865437737426011072e-03, -2.869148244120985330e-03, -2.872853913586900440e-03, -2.876554740035539275e-03, -2.880250717686690456e-03, -2.883941840768333102e-03, -2.887628103516820706e-03, -2.891309500176228019e-03, -2.894986024999240959e-03, -2.898657672246568971e-03, -2.902324436187015723e-03, -2.905986311097743212e-03, -2.909643291264109571e-03, -2.913295370979574958e-03, -2.916942544545999931e-03, -2.920584806273328424e-03, -2.924222150479860102e-03, -2.927854571492178367e-03, -2.931482063644984259e-03, -2.935104621281356668e-03, -2.938722238752819547e-03, -2.942334910418782038e-03, -2.945942630647448331e-03, -2.949545393814833640e-03, -2.953143194305693584e-03, -2.956736026512991628e-03, -2.960323884837780684e-03, -2.963906763689813737e-03, -2.967484657487068096e-03, -2.971057560655775316e-03, -2.974625467630672305e-03, -2.978188372854880320e-03, -2.981746270779784842e-03, -2.985299155865323972e-03, -2.988847022579703069e-03, -2.992389865399641951e-03, -2.995927678810296393e-03, -2.999460457305130629e-03, -3.002988195386142433e-03, -3.006510887563914290e-03, -3.010028528357115967e-03, -3.013541112293340648e-03, -3.017048633908195072e-03, -3.020551087746160823e-03, -3.024048468360045726e-03, -3.027540770311087492e-03, -3.031027988169163190e-03, -3.034510116512650468e-03, -3.037987149928326937e-03, -3.041459083011647298e-03, -3.044925910366610197e-03, -3.048387626605609472e-03, -3.051844226349797150e-03, -3.055295704228719583e-03, -3.058742054880572887e-03, -3.062183272952306162e-03, -3.065619353099064207e-03, -3.069050289984979422e-03, -3.072476078282680018e-03, -3.075896712673190266e-03, -3.079312187846486044e-03, -3.082722498501031232e-03, -3.086127639343879629e-03, -3.089527605090842781e-03, -3.092922390466283991e-03, -3.096311990203318241e-03, -3.099696399043740634e-03, -3.103075611737920146e-03, -3.106449623045034678e-03, -3.109818427732953961e-03, -3.113182020578140682e-03, -3.116540396365923265e-03, -3.119893549890223085e-03, -3.123241475953737484e-03, -3.126584169368070310e-03, -3.129921624953191546e-03, -3.133253837538220107e-03, -3.136580801960858755e-03, -3.139902513067533308e-03, -3.143218965713542260e-03, -3.146530154762973083e-03, -3.149836075088614622e-03, -3.153136721572195184e-03, -3.156432089104104118e-03, -3.159722172583660262e-03, -3.163006966919015232e-03, -3.166286467027034160e-03, -3.169560667833524678e-03, -3.172829564273262938e-03, -3.176093151289519165e-03, -3.179351423834880785e-03, -3.182604376870370750e-03, -3.185852005366248980e-03, -3.189094304301560469e-03, -3.192331268664034237e-03, -3.195562893450617191e-03, -3.198789173667036974e-03, -3.202010104327854441e-03, -3.205225680456689607e-03, -3.208435897086077231e-03, -3.211640749257391788e-03, -3.214840232021102043e-03, -3.218034340436499129e-03, -3.221223069571947217e-03, -3.224406414504771192e-03, -3.227584370321170352e-03, -3.230756932116430041e-03, -3.233924094994942901e-03, -3.237085854069754812e-03, -3.240242204463375866e-03, -3.243393141306878322e-03, -3.246538659740723191e-03, -3.249678754914280161e-03, -3.252813421985862284e-03, -3.255942656122954963e-03, -3.259066452502092353e-03, -3.262184806308777996e-03, -3.265297712737666534e-03, -3.268405166992517739e-03, -3.271507164286065542e-03, -3.274603699840259591e-03, -3.277694768886038872e-03, -3.280780366663480462e-03, -3.283860488421952613e-03, -3.286935129419579164e-03, -3.290004284923972889e-03, -3.293067950211754982e-03, -3.296126120568507352e-03, -3.299178791289333803e-03, -3.302225957678084616e-03, -3.305267615048107684e-03, -3.308303758721808756e-03, -3.311334384030682233e-03, -3.314359486315527140e-03, -3.317379060926329160e-03, -3.320393103222181713e-03, -3.323401608571471127e-03, -3.326404572351815934e-03, -3.329401989949945431e-03, -3.332393856761952950e-03, -3.335380168193054305e-03, -3.338360919657741739e-03, -3.341336106579913603e-03, -3.344305724392400772e-03, -3.347269768537596783e-03, -3.350228234467073161e-03, -3.353181117641589829e-03, -3.356128413531332330e-03, -3.359070117615633837e-03, -3.362006225383250974e-03, -3.364936732332233279e-03, -3.367861633969827795e-03, -3.370780925812714990e-03, -3.373694603386917686e-03, -3.376602662227667917e-03, -3.379505097879609461e-03, -3.382401905896873732e-03, -3.385293081842613572e-03, -3.388178621289729669e-03, -3.391058519820135900e-03, -3.393932773025315746e-03, -3.396801376506238587e-03, -3.399664325872916917e-03, -3.402521616745089825e-03, -3.405373244751781943e-03, -3.408219205531345941e-03, -3.411059494731674604e-03, -3.413894108009967940e-03, -3.416723041032930942e-03, -3.419546289476716773e-03, -3.422363849026822686e-03, -3.425175715378276503e-03, -3.427981884235574168e-03, -3.430782351312566120e-03, -3.433577112332642043e-03, -3.436366163028778137e-03, -3.439149499143129458e-03, -3.441927116427691714e-03, -3.444699010643611711e-03, -3.447465177561817497e-03, -3.450225612962636718e-03, -3.452980312635821770e-03, -3.455729272380771849e-03, -3.458472488006381160e-03, -3.461209955330993380e-03, -3.463941670182615895e-03, -3.466667628398670004e-03, -3.469387825826219466e-03, -3.472102258321895039e-03, -3.474810921751776086e-03, -3.477513811991591805e-03, -3.480210924926761557e-03, -3.482902256452011930e-03, -3.485587802471833835e-03, -3.488267558900406615e-03, -3.490941521661214669e-03, -3.493609686687698408e-03, -3.496272049922551257e-03, -3.498928607318403574e-03, -3.501579354837350798e-03, -3.504224288451097003e-03, -3.506863404141055945e-03, -3.509496697898282103e-03, -3.512124165723393057e-03, -3.514745803626752492e-03, -3.517361607628372629e-03, -3.519971573757874322e-03, -3.522575698054617160e-03, -3.525173976567577173e-03, -3.527766405355432268e-03, -3.530352980486697097e-03, -3.532933698039267701e-03, -3.535508554101048605e-03, -3.538077544769522610e-03, -3.540640666151852276e-03, -3.543197914365000048e-03, -3.545749285535582541e-03, -3.548294775799999343e-03, -3.550834381304392249e-03, -3.553368098204579776e-03, -3.555895922666205914e-03, -3.558417850864646018e-03, -3.560933878984994232e-03, -3.563444003222123770e-03, -3.565948219780826125e-03, -3.568446524875369587e-03, -3.570938914730158870e-03, -3.573425385579058564e-03, -3.575905933665906190e-03, -3.578380555244433259e-03, -3.580849246577885812e-03, -3.583312003939596868e-03, -3.585768823612618672e-03, -3.588219701889763889e-03, -3.590664635073781245e-03, -3.593103619477140860e-03, -3.595536651422238505e-03, -3.597963727241324915e-03, -3.600384843276409948e-03, -3.602799995879421742e-03, -3.605209181412192404e-03, -3.607612396246298852e-03, -3.610009636763265341e-03, -3.612400899354605097e-03, -3.614786180421415262e-03, -3.617165476375046058e-03, -3.619538783636381749e-03, -3.621906098636509808e-03, -3.624267417816274227e-03, -3.626622737626414295e-03, -3.628972054527621841e-03, -3.631315364990562490e-03, -3.633652665495695246e-03, -3.635983952533545713e-03, -3.638309222604459766e-03, -3.640628472218806946e-03, -3.642941697896905865e-03, -3.645248896168945280e-03, -3.647550063575114628e-03, -3.649845196665680788e-03, -3.652134292000630729e-03, -3.654417346150098684e-03, -3.656694355694255563e-03, -3.658965317223010581e-03, -3.661230227336550319e-03, -3.663489082644758900e-03, -3.665741879767777864e-03, -3.667988615335640145e-03, -3.670229285988332087e-03, -3.672463888375947401e-03, -3.674692419158566599e-03, -3.676914875006247023e-03, -3.679131252599151646e-03, -3.681341548627386877e-03, -3.683545759791176030e-03, -3.685743882800760884e-03, -3.687935914376386064e-03, -3.690121851248373205e-03, -3.692301690157204219e-03, -3.694475427853186923e-03, -3.696643061096938597e-03, -3.698804586659025593e-03, -3.700960001320083466e-03, -3.703109301870885928e-03, -3.705252485112203037e-03, -3.707389547854998517e-03, -3.709520486920289684e-03, -3.711645299139133998e-03, -3.713763981352779988e-03, -3.715876530412568803e-03, -3.717982943179877400e-03, -3.720083216526323677e-03, -3.722177347333510168e-03, -3.724265332493284682e-03, -3.726347168907596756e-03, -3.728422853488455157e-03, -3.730492383158077064e-03, -3.732555754848916260e-03, -3.734612965503339606e-03, -3.736664012074078500e-03, -3.738708891523960000e-03, -3.740747600825908986e-03, -3.742780136963135083e-03, -3.744806496928898467e-03, -3.746826677726715869e-03, -3.748840676370286413e-03, -3.750848489883421358e-03, -3.752850115300191119e-03, -3.754845549664864116e-03, -3.756834790031842591e-03, -3.758817833465800951e-03, -3.760794677041554360e-03, -3.762765317844150251e-03, -3.764729752968965469e-03, -3.766687979521348480e-03, -3.768639994617110738e-03, -3.770585795382200983e-03, -3.772525378952742980e-03, -3.774458742475188169e-03, -3.776385883106194233e-03, -3.778306798012613828e-03, -3.780221484371647234e-03, -3.782129939370641129e-03, -3.784032160207276372e-03, -3.785928144089489508e-03, -3.787817888235413353e-03, -3.789701389873503194e-03, -3.791578646242555438e-03, -3.793449654591474294e-03, -3.795314412179543687e-03, -3.797172916276422491e-03, -3.799025164161836179e-03, -3.800871153126051272e-03, -3.802710880469388315e-03, -3.804544343502659024e-03, -3.806371539546918661e-03, -3.808192465933479473e-03, -3.810007120004025184e-03, -3.811815499110552882e-03, -3.813617600615327053e-03, -3.815413421891015316e-03, -3.817202960320514090e-03, -3.818986213297144178e-03, -3.820763178224529776e-03, -3.822533852516581555e-03, -3.824298233597601612e-03, -3.826056318902319904e-03, -3.827808105875590231e-03, -3.829553591972853412e-03, -3.831292774659807686e-03, -3.833025651412465089e-03, -3.834752219717303245e-03, -3.836472477071065004e-03, -3.838186420980944490e-03, -3.839894048964484323e-03, -3.841595358549585587e-03, -3.843290347274542964e-03, -3.844979012688079425e-03, -3.846661352349216561e-03, -3.848337363827456295e-03, -3.850007044702628660e-03, -3.851670392565004122e-03, -3.853327405015269727e-03, -3.854978079664446704e-03, -3.856622414134027073e-03, -3.858260406055957596e-03, -3.859892053072443759e-03, -3.861517352836278064e-03, -3.863136303010604542e-03, -3.864748901268977299e-03, -3.866355145295414728e-03, -3.867955032784326647e-03, -3.869548561440590631e-03, -3.871135728979546373e-03, -3.872716533126905041e-03, -3.874290971618879822e-03, -3.875859042202134310e-03, -3.877420742633723959e-03, -3.878976070681249173e-03, -3.880525024122669694e-03, -3.882067600746467659e-03, -3.883603798351649341e-03, -3.885133614747491009e-03, -3.886657047753971309e-03, -3.888174095201403935e-03, -3.889684754930584649e-03, -3.891189024792835512e-03, -3.892686902649962824e-03, -3.894178386374191631e-03, -3.895663473848318820e-03, -3.897142162965557856e-03, -3.898614451629661953e-03, -3.900080337754894145e-03, -3.901539819265963972e-03, -3.902992894098125925e-03, -3.904439560197142580e-03, -3.905879815519236898e-03, -3.907313658031224927e-03, -3.908741085710334094e-03, -3.910162096544375805e-03, -3.911576688531731572e-03, -3.912984859681137469e-03, -3.914386608012033683e-03, -3.915781931554315580e-03, -3.917170828348364928e-03, -3.918553296445169594e-03, -3.919929333906224667e-03, -3.921298938803540260e-03, -3.922662109219716108e-03, -3.924018843247839214e-03, -3.925369138991587938e-03, -3.926712994565198164e-03, -3.928050408093381775e-03, -3.929381377711482770e-03, -3.930705901565420025e-03, -3.932023977811539839e-03, -3.933335604616933386e-03, -3.934640780159063753e-03, -3.935939502626116353e-03, -3.937231770216793360e-03, -3.938517581140305035e-03, -3.939796933616543199e-03, -3.941069825875915568e-03, -3.942336256159394321e-03, -3.943596222718569015e-03, -3.944849723815611019e-03, -3.946096757723235350e-03, -3.947337322724801291e-03, -3.948571417114204833e-03, -3.949799039195977558e-03, -3.951020187285241535e-03, -3.952234859707664215e-03, -3.953443054799563386e-03, -3.954644770907895027e-03, -3.955840006390088509e-03, -3.957028759614330225e-03, -3.958211028959286899e-03, -3.959386812814315489e-03, -3.960556109579388591e-03, -3.961718917665012045e-03, -3.962875235492390597e-03, -3.964025061493327284e-03, -3.965168394110212165e-03, -3.966305231796098639e-03, -3.967435573014639269e-03, -3.968559416240121339e-03, -3.969676759957457314e-03, -3.970787602662196117e-03, -3.971891942860496238e-03, -3.972989779069217679e-03, -3.974081109815739803e-03, -3.975165933638199860e-03, -3.976244249085317782e-03, -3.977316054716430876e-03, -3.978381349101572755e-03, -3.979440130821395270e-03, -3.980492398467185000e-03, -3.981538150640921356e-03, -3.982577385955169032e-03, -3.983610103033207242e-03, -3.984636300508941249e-03, -3.985655977026921447e-03, -3.986669131242379788e-03, -3.987675761821195090e-03, -3.988675867439899110e-03, -3.989669446785712968e-03, -3.990656498556474294e-03, -3.991637021460723092e-03, -3.992611014217710419e-03, -3.993578475557214499e-03, -3.994539404219842570e-03, -3.995493798956801026e-03, -3.996441658529937060e-03, -3.997382981711837535e-03, -3.998317767285746588e-03, -3.999246014045537874e-03, -4.000167720795845538e-03, -4.001082886351913295e-03, -4.001991509539710654e-03, -4.002893589195881743e-03, -4.003789124167736642e-03, -4.004678113313282599e-03, -4.005560555501250924e-03, -4.006436449610984232e-03, -4.007305794532600371e-03, -4.008168589166817217e-03, -4.009024832425144361e-03, -4.009874523229726116e-03, -4.010717660513388357e-03, -4.011554243219700097e-03, -4.012384270302911914e-03, -4.013207740727946400e-03, -4.014024653470471028e-03, -4.014835007516817482e-03, -4.015638801864032832e-03, -4.016436035519880404e-03, -4.017226707502798144e-03, -4.018010816841962804e-03, -4.018788362577230960e-03, -4.019559343759189322e-03, -4.020323759449111363e-03, -4.021081608719013697e-03, -4.021832890651582358e-03, -4.022577604340249122e-03, -4.023315748889120386e-03, -4.024047323413058701e-03, -4.024772327037637668e-03, -4.025490758899104640e-03, -4.026202618144454452e-03, -4.026907903931422478e-03, -4.027606615428398762e-03, -4.028298751814543381e-03, -4.028984312279732666e-03, -4.029663296024548792e-03, -4.030335702260290191e-03, -4.031001530208983691e-03, -4.031660779103382782e-03, -4.032313448186996239e-03, -4.032959536713973635e-03, -4.033599043949274467e-03, -4.034231969168556274e-03, -4.034858311658166830e-03, -4.035478070715251692e-03, -4.036091245647592009e-03, -4.036697835773797073e-03, -4.037297840423136920e-03, -4.037891258935635136e-03, -4.038478090662038500e-03, -4.039058334963829128e-03, -4.039631991213222736e-03, -4.040199058793159104e-03, -4.040759537097324619e-03, -4.041313425530099375e-03, -4.041860723506654311e-03, -4.042401430452852336e-03, -4.042935545805299499e-03, -4.043463069011361474e-03, -4.043983999529072483e-03, -4.044498336827285351e-03, -4.045006080385535330e-03, -4.045507229694109488e-03, -4.046001784254022425e-03, -4.046489743577031881e-03, -4.046971107185643075e-03, -4.047445874613070545e-03, -4.047914045403287579e-03, -4.048375619110995000e-03, -4.048830595301656718e-03, -4.049278973551426013e-03, -4.049720753447215785e-03, -4.050155934586730649e-03, -4.050584516578310812e-03, -4.051006499041134162e-03, -4.051421881605041936e-03, -4.051830663910652337e-03, -4.052232845609326714e-03, -4.052628426363128790e-03, -4.053017405844899258e-03, -4.053399783738215016e-03, -4.053775559737356204e-03, -4.054144733547392077e-03, -4.054507304884083854e-03, -4.054863273473961922e-03, -4.055212639054279859e-03, -4.055555401373042192e-03, -4.055891560188976640e-03, -4.056221115271571413e-03, -4.056544066401014496e-03, -4.056860413368270843e-03, -4.057170155975040743e-03, -4.057473294033727730e-03, -4.057769827367520114e-03, -4.058059755810290367e-03, -4.058343079206694001e-03, -4.058619797412101916e-03, -4.058889910292622083e-03, -4.059153417725109084e-03, -4.059410319597139827e-03, -4.059660615807034363e-03, -4.059904306263837671e-03, -4.060141390887351751e-03, -4.060371869608085313e-03, -4.060595742367303224e-03, -4.060813009116997011e-03, -4.061023669819893538e-03, -4.061227724449428984e-03, -4.061425172989806959e-03, -4.061616015435955997e-03, -4.061800251793513082e-03, -4.061977882078860944e-03, -4.062148906319121115e-03, -4.062313324552117508e-03, -4.062471136826438858e-03, -4.062622343201381485e-03, -4.062766943746956225e-03, -4.062904938543941344e-03, -4.063036327683800138e-03, -4.063161111268750320e-03, -4.063279289411711112e-03, -4.063390862236350952e-03, -4.063495829877043254e-03, -4.063594192478897638e-03, -4.063685950197730434e-03, -4.063771103200090710e-03, -4.063849651663262001e-03, -4.063921595775217208e-03, -4.063986935734664567e-03, -4.064045671751033775e-03, -4.064097804044469915e-03, -4.064143332845832589e-03, -4.064182258396693316e-03, -4.064214580949332065e-03, -4.064240300766773679e-03, -4.064259418122721963e-03, -4.064271933301612585e-03, -4.064277846598588796e-03, -4.064277158319486681e-03, -4.064269868780883734e-03, -4.064255978310034670e-03, -4.064235487244920002e-03, -4.064208395934219148e-03, -4.064174704737315638e-03, -4.064134414024295379e-03, -4.064087524175955327e-03, -4.064034035583785273e-03, -4.063973948649977387e-03, -4.063907263787433152e-03, -4.063833981419732143e-03, -4.063754101981169320e-03, -4.063667625916728143e-03, -4.063574553682068428e-03, -4.063474885743591399e-03, -4.063368622578326927e-03, -4.063255764674057573e-03, -4.063136312529199747e-03, -4.063010266652896524e-03, -4.062877627564962998e-03, -4.062738395795911436e-03, -4.062592571886907040e-03, -4.062440156389827799e-03, -4.062281149867226319e-03, -4.062115552892324628e-03, -4.061943366049030647e-03, -4.061764589931946869e-03, -4.061579225146290557e-03, -4.061387272308037734e-03, -4.061188732043774854e-03, -4.060983604990769935e-03, -4.060771891796983828e-03, -4.060553593121021647e-03, -4.060328709632160527e-03, -4.060097242010345282e-03, -4.059859190946189279e-03, -4.059614557140944942e-03, -4.059363341306552325e-03, -4.059105544165587942e-03, -4.058841166451291650e-03, -4.058570208907564050e-03, -4.058292672288948272e-03, -4.058008557360658596e-03, -4.057717864898520606e-03, -4.057420595689051855e-03, -4.057116750529376863e-03, -4.056806330227300840e-03, -4.056489335601226424e-03, -4.056165767480226537e-03, -4.055835626704027905e-03, -4.055498914122961616e-03, -4.055155630598006496e-03, -4.054805777000769149e-03, -4.054449354213481363e-03, -4.054086363129053884e-03, -4.053716804650935035e-03, -4.053340679693269444e-03, -4.052957989180812175e-03, -4.052568734048901840e-03, -4.052172915243552540e-03, -4.051770533721348044e-03, -4.051361590449515521e-03, -4.050946086405875224e-03, -4.050524022578868254e-03, -4.050095399967558289e-03, -4.049660219581579547e-03, -4.049218482441208772e-03, -4.048770189577295849e-03, -4.048315342031301965e-03, -4.047853940855294409e-03, -4.047385987111929220e-03, -4.046911481874430373e-03, -4.046430426226670443e-03, -4.045942821263074328e-03, -4.045448668088621851e-03, -4.044947967818945771e-03, -4.044440721580206018e-03, -4.043926930509179896e-03, -4.043406595753193562e-03, -4.042879718470153254e-03, -4.042346299828555693e-03, -4.041806341007451661e-03, -4.041259843196456404e-03, -4.040706807595768717e-03, -4.040147235416127573e-03, -4.039581127878841618e-03, -4.039008486215786564e-03, -4.038429311669380906e-03, -4.037843605492601531e-03, -4.037251368948985460e-03, -4.036652603312565653e-03, -4.036047309868021071e-03, -4.035435489910471109e-03, -4.034817144745610901e-03, -4.034192275689706987e-03, -4.033560884069514914e-03, -4.032922971222337345e-03, -4.032278538496017993e-03, -4.031627587248904319e-03, -4.030970118849904783e-03, -4.030306134678396900e-03, -4.029635636124306169e-03, -4.028958624588100008e-03, -4.028275101480707082e-03, -4.027585068223574552e-03, -4.026888526248707974e-03, -4.026185476998563745e-03, -4.025475921926089003e-03, -4.024759862494814433e-03, -4.024037300178659980e-03, -4.023308236462128269e-03, -4.022572672840145878e-03, -4.021830610818144004e-03, -4.021082051912076676e-03, -4.020326997648329681e-03, -4.019565449563783886e-03, -4.018797409205806560e-03, -4.018022878132215814e-03, -4.017241857911332641e-03, -4.016454350121911529e-03, -4.015660356353166482e-03, -4.014859878204813520e-03, -4.014052917286991748e-03, -4.013239475220259887e-03, -4.012419553635731585e-03, -4.011593154174858573e-03, -4.010760278489603273e-03, -4.009920928242335578e-03, -4.009075105105878827e-03, -4.008222810763505464e-03, -4.007364046908885868e-03, -4.006498815246128248e-03, -4.005627117489797724e-03, -4.004748955364840872e-03, -4.003864330606611739e-03, -4.002973244960949910e-03, -4.002075700184039991e-03, -4.001171698042498351e-03, -4.000261240313340155e-03, -3.999344328783997586e-03, -3.998420965252294686e-03, -3.997491151526446490e-03, -3.996554889425016528e-03, -3.995612180777054732e-03, -3.994663027421914425e-03, -3.993707431209349464e-03, -3.992745393999503831e-03, -3.991776917662889085e-03, -3.990802004080390430e-03, -3.989820655143244167e-03, -3.988832872753056771e-03, -3.987838658821830917e-03, -3.986838015271858791e-03, -3.985830944035833115e-03, -3.984817447056785561e-03, -3.983797526288078081e-03, -3.982771183693445405e-03, -3.981738421246930858e-03, -3.980699240932886358e-03, -3.979653644746107728e-03, -3.978601634691567544e-03, -3.977543212784654530e-03, -3.976478381051059934e-03, -3.975407141526784462e-03, -3.974329496258132213e-03, -3.973245447301741035e-03, -3.972154996724517467e-03, -3.971058146603704403e-03, -3.969954899026813429e-03, -3.968845256091643042e-03, -3.967729219906314213e-03, -3.966606792589228749e-03, -3.965477976268997305e-03, -3.964342773084617196e-03, -3.963201185185278967e-03, -3.962053214730486966e-03, -3.960898863889986479e-03, -3.959738134843742915e-03, -3.958571029782097066e-03, -3.957397550905526577e-03, -3.956217700424782130e-03, -3.955031480560908252e-03, -3.953838893545148780e-03, -3.952639941618984153e-03, -3.951434627034154830e-03, -3.950222952052581497e-03, -3.949004918946467414e-03, -3.947780529998188258e-03, -3.946549787500338961e-03, -3.945312693755771878e-03, -3.944069251077502239e-03, -3.942819461788709019e-03, -3.941563328222908412e-03, -3.940300852723630301e-03, -3.939032037644779084e-03, -3.937756885350283259e-03, -3.936475398214326141e-03, -3.935187578621290351e-03, -3.933893428965690164e-03, -3.932592951652210539e-03, -3.931286149095734872e-03, -3.929973023721272142e-03, -3.928653577963976858e-03, -3.927327814269200232e-03, -3.925995735092393905e-03, -3.924657342899195815e-03, -3.923312640165331315e-03, -3.921961629376680830e-03, -3.920604313029276387e-03, -3.919240693629243502e-03, -3.917870773692788168e-03, -3.916494555746364258e-03, -3.915112042326349129e-03, -3.913723235979423530e-03, -3.912328139262205573e-03, -3.910926754741482318e-03, -3.909519084994136917e-03, -3.908105132607129530e-03, -3.906684900177465232e-03, -3.905258390312305906e-03, -3.903825605628811080e-03, -3.902386548754228999e-03, -3.900941222325900529e-03, -3.899489628991181529e-03, -3.898031771407530020e-03, -3.896567652242421617e-03, -3.895097274173316571e-03, -3.893620639887887449e-03, -3.892137752083649638e-03, -3.890648613468221557e-03, -3.889153226759315112e-03, -3.887651594684554852e-03, -3.886143719981621954e-03, -3.884629605398246411e-03, -3.883109253692089945e-03, -3.881582667630879575e-03, -3.880049849992296164e-03, -3.878510803564006945e-03, -3.876965531143710189e-03, -3.875414035539049337e-03, -3.873856319567621671e-03, -3.872292386057062021e-03, -3.870722237844873622e-03, -3.869145877778623708e-03, -3.867563308715786952e-03, -3.865974533523702100e-03, -3.864379555079853860e-03, -3.862778376271458307e-03, -3.861170999995776430e-03, -3.859557429159988801e-03, -3.857937666681182133e-03, -3.856311715486344070e-03, -3.854679578512436484e-03, -3.853041258706235879e-03, -3.851396759024536785e-03, -3.849746082433926249e-03, -3.848089231910925643e-03, -3.846426210441974622e-03, -3.844757021023360432e-03, -3.843081666661182349e-03, -3.841400150371580228e-03, -3.839712475180349395e-03, -3.838018644123361751e-03, -3.836318660246162884e-03, -3.834612526604194976e-03, -3.832900246262867499e-03, -3.831181822297237589e-03, -3.829457257792305818e-03, -3.827726555842912975e-03, -3.825989719553659404e-03, -3.824246752038980898e-03, -3.822497656423169948e-03, -3.820742435840248242e-03, -3.818981093434122356e-03, -3.817213632358425895e-03, -3.815440055776575870e-03, -3.813660366861850327e-03, -3.811874568797250871e-03, -3.810082664775461467e-03, -3.808284657999157653e-03, -3.806480551680516914e-03, -3.804670349041714382e-03, -3.802854053314483514e-03, -3.801031667740363724e-03, -3.799203195570689112e-03, -3.797368640066450980e-03, -3.795528004498378068e-03, -3.793681292146972982e-03, -3.791828506302393799e-03, -3.789969650264510444e-03, -3.788104727342945458e-03, -3.786233740856952568e-03, -3.784356694135551560e-03, -3.782473590517406413e-03, -3.780584433350767624e-03, -3.778689225993782288e-03, -3.776787971814052607e-03, -3.774880674188897840e-03, -3.772967336505417615e-03, -3.771047962160155829e-03, -3.769122554559516981e-03, -3.767191117119342465e-03, -3.765253653265210679e-03, -3.763310166432345949e-03, -3.761360660065530929e-03, -3.759405137619175555e-03, -3.757443602557346100e-03, -3.755476058353652419e-03, -3.753502508491289580e-03, -3.751522956463141083e-03, -3.749537405771532095e-03, -3.747545859928501366e-03, -3.745548322455584389e-03, -3.743544796883817305e-03, -3.741535286753985400e-03, -3.739519795616218483e-03, -3.737498327030299231e-03, -3.735470884565566477e-03, -3.733437471800818506e-03, -3.731398092324469170e-03, -3.729352749734387868e-03, -3.727301447637933803e-03, -3.725244189652086955e-03, -3.723180979403221697e-03, -3.721111820527229531e-03, -3.719036716669555948e-03, -3.716955671485076829e-03, -3.714868688638049872e-03, -3.712775771802447663e-03, -3.710676924661432483e-03, -3.708572150907862852e-03, -3.706461454243866784e-03, -3.704344838381065999e-03, -3.702222307040635343e-03, -3.700093863953010480e-03, -3.697959512858121217e-03, -3.695819257505360278e-03, -3.693673101653470112e-03, -3.691521049070646109e-03, -3.689363103534449868e-03, -3.687199268831807021e-03, -3.685029548759114794e-03, -3.682853947122081972e-03, -3.680672467735779645e-03, -3.678485114424712328e-03, -3.676291891022716481e-03, -3.674092801372855557e-03, -3.671887849327806416e-03, -3.669677038749275151e-03, -3.667460373508600775e-03, -3.665237857486207482e-03, -3.663009494571925137e-03, -3.660775288664939401e-03, -3.658535243673692421e-03, -3.656289363515905378e-03, -3.654037652118663059e-03, -3.651780113418243850e-03, -3.649516751360305355e-03, -3.647247569899692704e-03, -3.644972573000519224e-03, -3.642691764636241461e-03, -3.640405148789490914e-03, -3.638112729452060590e-03, -3.635814510625228098e-03, -3.633510496319253009e-03, -3.631200690553678702e-03, -3.628885097357433843e-03, -3.626563720768353604e-03, -3.624236564833805893e-03, -3.621903633610091145e-03, -3.619564931162784927e-03, -3.617220461566700209e-03, -3.614870228905758560e-03, -3.612514237273046092e-03, -3.610152490770868975e-03, -3.607784993510625930e-03, -3.605411749612836853e-03, -3.603032763207273358e-03, -3.600648038432701162e-03, -3.598257579437139000e-03, -3.595861390377650020e-03, -3.593459475420297984e-03, -3.591051838740544084e-03, -3.588638484522648463e-03, -3.586219416960076140e-03, -3.583794640255421986e-03, -3.581364158620262833e-03, -3.578927976275320545e-03, -3.576486097450322366e-03, -3.574038526384019573e-03, -3.571585267324324086e-03, -3.569126324528076009e-03, -3.566661702261131675e-03, -3.564191404798495912e-03, -3.561715436424100004e-03, -3.559233801430770894e-03, -3.556746504120632778e-03, -3.554253548804449641e-03, -3.551754939802289658e-03, -3.549250681443023858e-03, -3.546740778064412861e-03, -3.544225234013443845e-03, -3.541704053645814039e-03, -3.539177241326248603e-03, -3.536644801428465070e-03, -3.534106738335041509e-03, -3.531563056437541856e-03, -3.529013760136402288e-03, -3.526458853840958550e-03, -3.523898341969514906e-03, -3.521332228949205796e-03, -3.518760519216042673e-03, -3.516183217215008983e-03, -3.513600327399900563e-03, -3.511011854233248887e-03, -3.508417802186752574e-03, -3.505818175740595642e-03, -3.503212979384157447e-03, -3.500602217615360855e-03, -3.497985894941069065e-03, -3.495364015877010580e-03, -3.492736584947659512e-03, -3.490103606686266804e-03, -3.487465085634981667e-03, -3.484821026344622156e-03, -3.482171433374895483e-03, -3.479516311294198957e-03, -3.476855664679680703e-03, -3.474189498117350675e-03, -3.471517816201894185e-03, -3.468840623536622886e-03, -3.466157924733862927e-03, -3.463469724414398963e-03, -3.460776027207792052e-03, -3.458076837752484169e-03, -3.455372160695324192e-03, -3.452662000692184596e-03, -3.449946362407316138e-03, -3.447225250513794113e-03, -3.444498669693399091e-03, -3.441766624636485947e-03, -3.439029120042066262e-03, -3.436286160617880309e-03, -3.433537751080192792e-03, -3.430783896154002317e-03, -3.428024600572841894e-03, -3.425259869078872178e-03, -3.422489706422920074e-03, -3.419714117364373775e-03, -3.416933106671057440e-03, -3.414146679119719942e-03, -3.411354839495335783e-03, -3.408557592591582135e-03, -3.405754943210752110e-03, -3.402946896163563505e-03, -3.400133456269389520e-03, -3.397314628356041481e-03, -3.394490417259857316e-03, -3.391660827825777012e-03, -3.388825864907153533e-03, -3.385985533365827409e-03, -3.383139838072243832e-03, -3.380288783905183343e-03, -3.377432375752028107e-03, -3.374570618508559820e-03, -3.371703517078890756e-03, -3.368831076375880529e-03, -3.365953301320601370e-03, -3.363070196842489912e-03, -3.360181767879709749e-03, -3.357288019378516959e-03, -3.354388956293711567e-03, -3.351484583588548206e-03, -3.348574906234533591e-03, -3.345659929211699298e-03, -3.342739657508319445e-03, -3.339814096121065511e-03, -3.336883250055041033e-03, -3.333947124323605963e-03, -3.331005723948433049e-03, -3.328059053959668296e-03, -3.325107119395607439e-03, -3.322149925302986511e-03, -3.319187476736804032e-03, -3.316219778760203917e-03, -3.313246836444942549e-03, -3.310268654870737823e-03, -3.307285239125689821e-03, -3.304296594306233101e-03, -3.301302725516959326e-03, -3.298303637870694457e-03, -3.295299336488583322e-03, -3.292289826499895759e-03, -3.289275113042214402e-03, -3.286255201261262075e-03, -3.283230096310925210e-03, -3.280199803353409105e-03, -3.277164327559020218e-03, -3.274123674106102846e-03, -3.271077848181468475e-03, -3.268026854979874489e-03, -3.264970699704133027e-03, -3.261909387565529485e-03, -3.258842923783066611e-03, -3.255771313584258572e-03, -3.252694562204425793e-03, -3.249612674887081797e-03, -3.246525656883948383e-03, -3.243433513454687615e-03, -3.240336249867051006e-03, -3.237233871396959315e-03, -3.234126383328248845e-03, -3.231013790952954202e-03, -3.227896099571020330e-03, -3.224773314490451698e-03, -3.221645441027347432e-03, -3.218512484505756457e-03, -3.215374450257616791e-03, -3.212231343623175774e-03, -3.209083169950324808e-03, -3.205929934595085941e-03, -3.202771642921491742e-03, -3.199608300301408359e-03, -3.196439912114797458e-03, -3.193266483749432599e-03, -3.190088020601038882e-03, -3.186904528073330242e-03, -3.183716011577884114e-03, -3.180522476534132330e-03, -3.177323928369530249e-03, -3.174120372519260123e-03, -3.170911814426523832e-03, -3.167698259542332112e-03, -3.164479713325403076e-03, -3.161256181242603266e-03, -3.158027668768446320e-03, -3.154794181385148916e-03, -3.151555724583129069e-03, -3.148312303860235483e-03, -3.145063924722274040e-03, -3.141810592682889400e-03, -3.138552313263400211e-03, -3.135289091993009002e-03, -3.132020934408599223e-03, -3.128747846054780787e-03, -3.125469832484044450e-03, -3.122186899256501613e-03, -3.118899051939962811e-03, -3.115606296110099913e-03, -3.112308637350120425e-03, -3.109006081251087118e-03, -3.105698633411676027e-03, -3.102386299438087119e-03, -3.099069084944577716e-03, -3.095746995552675369e-03, -3.092420036891701737e-03, -3.089088214598719687e-03, -3.085751534318279150e-03, -3.082410001702586694e-03, -3.079063622411539781e-03, -3.075712402112496923e-03, -3.072356346480574745e-03, -3.068995461198354389e-03, -3.065629751955979091e-03, -3.062259224451280380e-03, -3.058883884389553866e-03, -3.055503737483513272e-03, -3.052118789453739725e-03, -3.048729046028011286e-03, -3.045334512941843749e-03, -3.041935195938162782e-03, -3.038531100767261420e-03, -3.035122233187270615e-03, -3.031708598963433251e-03, -3.028290203868622826e-03, -3.024867053683214652e-03, -3.021439154194956612e-03, -3.018006511198998657e-03, -3.014569130498059336e-03, -3.011127017902109210e-03, -3.007680179228686135e-03, -3.004228620302610772e-03, -3.000772346956085464e-03, -2.997311365028822172e-03, -2.993845680367818261e-03, -2.990375298827266295e-03, -2.986900226269110885e-03, -2.983420468562162677e-03, -2.979936031583029030e-03, -2.976446921215248394e-03, -2.972953143349833273e-03, -2.969454703885152265e-03, -2.965951608726780445e-03, -2.962443863787536224e-03, -2.958931474987650488e-03, -2.955414448254504653e-03, -2.951892789522699186e-03, -2.948366504734211899e-03, -2.944835599838100011e-03, -2.941300080790790281e-03, -2.937759953555800149e-03, -2.934215224103837484e-03, -2.930665898412944566e-03, -2.927111982468250887e-03, -2.923553482261895525e-03, -2.919990403793571842e-03, -2.916422753069657960e-03, -2.912850536104138327e-03, -2.909273758917731156e-03, -2.905692427538443534e-03, -2.902106548001459098e-03, -2.898516126348952421e-03, -2.894921168630170544e-03, -2.891321680901578258e-03, -2.887717669226582285e-03, -2.884109139675637961e-03, -2.880496098326388449e-03, -2.876878551263343815e-03, -2.873256504578198048e-03, -2.869629964369589236e-03, -2.865998936743011528e-03, -2.862363427811335983e-03, -2.858723443694038188e-03, -2.855078990517716502e-03, -2.851430074416034816e-03, -2.847776701529477518e-03, -2.844118878005478732e-03, -2.840456609998532472e-03, -2.836789903669887768e-03, -2.833118765187883463e-03, -2.829443200727627724e-03, -2.825763216471138990e-03, -2.822078818607422733e-03, -2.818390013332255483e-03, -2.814696806848252485e-03, -2.810999205365029025e-03, -2.807297215098865199e-03, -2.803590842273042012e-03, -2.799880093117579002e-03, -2.796164973869137964e-03, -2.792445490771590204e-03, -2.788721650075202951e-03, -2.784993458037165418e-03, -2.781260920921537622e-03, -2.777524044999000151e-03, -2.773782836546989476e-03, -2.770037301849794659e-03, -2.766287447198281096e-03, -2.762533278890183259e-03, -2.758774803229824529e-03, -2.755012026528213046e-03, -2.751244955103180484e-03, -2.747473595279144396e-03, -2.743697953387014971e-03, -2.739918035764783537e-03, -2.736133848756564565e-03, -2.732345398713620886e-03, -2.728552691993414801e-03, -2.724755734960180968e-03, -2.720954533984839673e-03, -2.717149095444786056e-03, -2.713339425723978581e-03, -2.709525531213076953e-03, -2.705707418309164121e-03, -2.701885093415888096e-03, -2.698058562943541749e-03, -2.694227833308771372e-03, -2.690392910934914089e-03, -2.686553802251696009e-03, -2.682710513695317229e-03, -2.678863051708591913e-03, -2.675011422740715405e-03, -2.671155633247186169e-03, -2.667295689690377374e-03, -2.663431598538578034e-03, -2.659563366267015620e-03, -2.655690999356929722e-03, -2.651814504296116752e-03, -2.647933887578847543e-03, -2.644049155705676096e-03, -2.640160315183512438e-03, -2.636267372525758802e-03, -2.632370334252046810e-03, -2.628469206888337222e-03, -2.624563996967059151e-03, -2.620654711026792604e-03, -2.616741355612599382e-03, -2.612823937275732950e-03, -2.608902462573579450e-03, -2.604976938070224530e-03, -2.601047370335598120e-03, -2.597113765946042555e-03, -2.593176131484227140e-03, -2.589234473538845008e-03, -2.585288798705166497e-03, -2.581339113584252450e-03, -2.577385424783563538e-03, -2.573427738916823221e-03, -2.569466062603800900e-03, -2.565500402470433788e-03, -2.561530765148935761e-03, -2.557557157277549724e-03, -2.553579585500638256e-03, -2.549598056468815876e-03, -2.545612576838637668e-03, -2.541623153272936243e-03, -2.537629792440529875e-03, -2.533632501016157019e-03, -2.529631285681039222e-03, -2.525626153122036317e-03, -2.521617110032205872e-03, -2.517604163110740301e-03, -2.513587319062670668e-03, -2.509566584599221863e-03, -2.505541966437467398e-03, -2.501513471300485965e-03, -2.497481105917455542e-03, -2.493444877023391452e-03, -2.489404791359259121e-03, -2.485360855672106781e-03, -2.481313076714805263e-03, -2.477261461245999861e-03, -2.473206016030649827e-03, -2.469146747839119378e-03, -2.465083663448162151e-03, -2.461016769639965806e-03, -2.456946073202734889e-03, -2.452871580930774103e-03, -2.448793299623834314e-03, -2.444711236087673736e-03, -2.440625397133954280e-03, -2.436535789579975710e-03, -2.432442420249003069e-03, -2.428345295969960502e-03, -2.424244423577540108e-03, -2.420139809912320774e-03, -2.416031461820512295e-03, -2.411919386154052526e-03, -2.407803589770748758e-03, -2.403684079534027917e-03, -2.399560862312849832e-03, -2.395433944982305711e-03, -2.391303334422634555e-03, -2.387169037520296081e-03, -2.383031061166934229e-03, -2.378889412260040692e-03, -2.374744097702826979e-03, -2.370595124403987192e-03, -2.366442499277845481e-03, -2.362286229244435400e-03, -2.358126321229230601e-03, -2.353962782163440161e-03, -2.349795618983710217e-03, -2.345624838632251897e-03, -2.341450448056942805e-03, -2.337272454211114948e-03, -2.333090864053422031e-03, -2.328905684548493015e-03, -2.324716922666006640e-03, -2.320524585381241768e-03, -2.316328679675250853e-03, -2.312129212534019037e-03, -2.307926190949559191e-03, -2.303719621918846796e-03, -2.299509512444472201e-03, -2.295295869534540439e-03, -2.291078700202411455e-03, -2.286858011466847990e-03, -2.282633810352133110e-03, -2.278406103887770096e-03, -2.274174899108629463e-03, -2.269940203055064755e-03, -2.265702022772578608e-03, -2.261460365312177503e-03, -2.257215237730093339e-03, -2.252966647087662876e-03, -2.248714600451981720e-03, -2.244459104894954999e-03, -2.240200167493941377e-03, -2.235937795331635093e-03, -2.231671995495794914e-03, -2.227402775079594111e-03, -2.223130141181274815e-03, -2.218854100904285934e-03, -2.214574661357419320e-03, -2.210291829654503597e-03, -2.206005612914527757e-03, -2.201716018261798587e-03, -2.197423052825657475e-03, -2.193126723740397577e-03, -2.188827038145913038e-03, -2.184524003186630401e-03, -2.180217626012650491e-03, -2.175907913778692832e-03, -2.171594873644679818e-03, -2.167278512775888070e-03, -2.162958838342223314e-03, -2.158635857518818868e-03, -2.154309577485924616e-03, -2.149980005428614709e-03, -2.145647148537174406e-03, -2.141311014006724075e-03, -2.136971609037364907e-03, -2.132628940834307724e-03, -2.128283016607576336e-03, -2.123933843572151526e-03, -2.119581428948076433e-03, -2.115225779960220199e-03, -2.110866903838167809e-03, -2.106504807816890566e-03, -2.102139499135651478e-03, -2.097770985039170127e-03, -2.093399272776554944e-03, -2.089024369601941589e-03, -2.084646282774406216e-03, -2.080265019557695719e-03, -2.075880587220379960e-03, -2.071492993035964954e-03, -2.067102244282561542e-03, -2.062708348243239703e-03, -2.058311312205690288e-03, -2.053911143462363795e-03, -2.049507849310583558e-03, -2.045101437052321541e-03, -2.040691913994050876e-03, -2.036279287447443666e-03, -2.031863564728380450e-03, -2.027444753157565168e-03, -2.023022860060659164e-03, -2.018597892767438982e-03, -2.014169858612913956e-03, -2.009738764936242015e-03, -2.005304619081386703e-03, -2.000867428397017003e-03, -1.996427200236253630e-03, -1.991983941956793937e-03, -1.987537660921056323e-03, -1.983088364495822885e-03, -1.978636060052611952e-03, -1.974180754967331999e-03, -1.969722456620412194e-03, -1.965261172396939003e-03, -1.960796909686390779e-03, -1.956329675882544517e-03, -1.951859478384134839e-03, -1.947386324593870181e-03, -1.942910221919091126e-03, -1.938431177771687136e-03, -1.933949199567768038e-03, -1.929464294728054988e-03, -1.924976470677510106e-03, -1.920485734845488049e-03, -1.915992094665880646e-03, -1.911495557576765609e-03, -1.906996131020594542e-03, -1.902493822444291383e-03, -1.897988639298913479e-03, -1.893480589040024342e-03, -1.888969679127396571e-03, -1.884455917024884354e-03, -1.879939310201067049e-03, -1.875419866128497613e-03, -1.870897592283813629e-03, -1.866372496148408422e-03, -1.861844585207391095e-03, -1.857313866950288661e-03, -1.852780348870933713e-03, -1.848244038467138518e-03, -1.843704943241098772e-03, -1.839163070699026490e-03, -1.834618428351281411e-03, -1.830071023712519316e-03, -1.825520864301368720e-03, -1.820967957640566180e-03, -1.816412311257120226e-03, -1.811853932681912810e-03, -1.807292829450105444e-03, -1.802729009100834546e-03, -1.798162479177082195e-03, -1.793593247226368727e-03, -1.789021320799751361e-03, -1.784446707452490982e-03, -1.779869414743965846e-03, -1.775289450237381873e-03, -1.770706821499925957e-03, -1.766121536102911683e-03, -1.761533601621387063e-03, -1.756943025634558888e-03, -1.752349815725404375e-03, -1.747753979480803650e-03, -1.743155524491721677e-03, -1.738554458352881702e-03, -1.733950788662695641e-03, -1.729344523023960360e-03, -1.724735669042794500e-03, -1.720124234329317627e-03, -1.715510226497797682e-03, -1.710893653165741768e-03, -1.706274521955066219e-03, -1.701652840490991804e-03, -1.697028616402698363e-03, -1.692401857323241323e-03, -1.687772570889275233e-03, -1.683140764741200340e-03, -1.678506446523284892e-03, -1.673869623883316241e-03, -1.669230304472987033e-03, -1.664588495947524199e-03, -1.659944205965837487e-03, -1.655297442190648049e-03, -1.650648212288223461e-03, -1.645996523928276245e-03, -1.641342384784648650e-03, -1.636685802534292413e-03, -1.632026784857957885e-03, -1.627365339440086907e-03, -1.622701473968499479e-03, -1.618035196134771925e-03, -1.613366513633890820e-03, -1.608695434164364229e-03, -1.604021965428406669e-03, -1.599346115131557253e-03, -1.594667890982881574e-03, -1.589987300695068842e-03, -1.585304351984087763e-03, -1.580619052569574899e-03, -1.575931410174506589e-03, -1.571241432525088142e-03, -1.566549127351423007e-03, -1.561854502386703309e-03, -1.557157565367375731e-03, -1.552458324033779459e-03, -1.547756786129121610e-03, -1.543052959400158762e-03, -1.538346851597113037e-03, -1.533638470473329928e-03, -1.528927823785677714e-03, -1.524214919294187079e-03, -1.519499764762180342e-03, -1.514782367956418047e-03, -1.510062736646781718e-03, -1.505340878606399200e-03, -1.500616801611810757e-03, -1.495890513442573767e-03, -1.491162021881677546e-03, -1.486431334715209839e-03, -1.481698459732254045e-03, -1.476963404725576811e-03, -1.472226177490612792e-03, -1.467486785826142490e-03, -1.462745237534207685e-03, -1.458001540419816104e-03, -1.453255702291094287e-03, -1.448507730959429406e-03, -1.443757634239087838e-03, -1.439005419947628249e-03, -1.434251095905521908e-03, -1.429494669936276496e-03, -1.424736149866614359e-03, -1.419975543526174125e-03, -1.415212858747394052e-03, -1.410448103366190083e-03, -1.405681285221050325e-03, -1.400912412153691201e-03, -1.396141492008698805e-03, -1.391368532633387731e-03, -1.386593541878542238e-03, -1.381816527597344406e-03, -1.377037497646090578e-03, -1.372256459884092046e-03, -1.367473422173378196e-03, -1.362688392378856757e-03, -1.357901378368447584e-03, -1.353112388012710785e-03, -1.348321429185247219e-03, -1.343528509762327919e-03, -1.338733637623020075e-03, -1.333936820649349233e-03, -1.329138066726028239e-03, -1.324337383740305457e-03, -1.319534779582733248e-03, -1.314730262145961687e-03, -1.309923839326012501e-03, -1.305115519021089266e-03, -1.300305309132317047e-03, -1.295493217563611216e-03, -1.290679252221418319e-03, -1.285863421014834477e-03, -1.281045731855783628e-03, -1.276226192658653884e-03, -1.271404811340470569e-03, -1.266581595821033050e-03, -1.261756554022514876e-03, -1.256929693869906573e-03, -1.252101023290607979e-03, -1.247270550214566375e-03, -1.242438282574461882e-03, -1.237604228305383500e-03, -1.232768395344740206e-03, -1.227930791632975442e-03, -1.223091425112394874e-03, -1.218250303728432961e-03, -1.213407435428444066e-03, -1.208562828162468555e-03, -1.203716489883090981e-03, -1.198868428545169255e-03, -1.194018652105981225e-03, -1.189167168525361940e-03, -1.184313985765385324e-03, -1.179459111790506212e-03, -1.174602554567698905e-03, -1.169744322066084644e-03, -1.164884422257327556e-03, -1.160022863115323273e-03, -1.155159652616058203e-03, -1.150294798738360665e-03, -1.145428309462808878e-03, -1.140560192772468008e-03, -1.135690456652773935e-03, -1.130819109091252880e-03, -1.125946158077656715e-03, -1.121071611604133184e-03, -1.116195477664811515e-03, -1.111317764256244782e-03, -1.106438479376998770e-03, -1.101557631027812005e-03, -1.096675227211738003e-03, -1.091791275933870096e-03, -1.086905785201220005e-03, -1.082018763023390260e-03, -1.077130217411668891e-03, -1.072240156379696647e-03, -1.067348587943088394e-03, -1.062455520119301704e-03, -1.057560960928399275e-03, -1.052664918391925473e-03, -1.047767400533680887e-03, -1.042868415379578136e-03, -1.037967970957368426e-03, -1.033066075296791390e-03, -1.028162736429719722e-03, -1.023257962389769078e-03, -1.018351761212722218e-03, -1.013444140936125030e-03, -1.008535109599455670e-03, -1.003624675244251842e-03, -9.987128459138408347e-04, -9.937996296532150553e-04, -9.888850345097734054e-04, -9.839690685321212868e-04, -9.790517397713601518e-04, -9.741330562798684260e-04, -9.692130261120635937e-04, -9.642916573242691670e-04, -9.593689579744402738e-04, -9.544449361222999417e-04, -9.495195998295057407e-04, -9.445929571592927548e-04, -9.396650161766372964e-04, -9.347357849484014313e-04, -9.298052715429371354e-04, -9.248734840305107606e-04, -9.199404304829121798e-04, -9.150061189735939982e-04, -9.100705575778384121e-04, -9.051337543724584031e-04, -9.001957174356741385e-04, -8.952564548478775513e-04, -8.903159746904019869e-04, -8.853742850468351725e-04, -8.804313940017849610e-04, -8.754873096416562707e-04, -8.705420400545011393e-04, -8.655955933297545049e-04, -8.606479775583737420e-04, -8.556992008329891491e-04, -8.507492712475713155e-04, -8.457981968975717421e-04, -8.408459858800751722e-04, -8.358926462934120971e-04, -8.309381862375756324e-04, -8.259826138138818370e-04, -8.210259371248432953e-04, -8.160681642749338053e-04, -8.111093033694637350e-04, -8.061493625153449277e-04, -8.011883498209674279e-04, -7.962262733957959412e-04, -7.912631413510790111e-04, -7.862989617988917768e-04, -7.813337428528452583e-04, -7.763674926279618901e-04, -7.714002192403812685e-04, -7.664319308075215895e-04, -7.614626354482209201e-04, -7.564923412824051075e-04, -7.515210564312260148e-04, -7.465487890172307645e-04, -7.415755471639472489e-04, -7.366013389963146658e-04, -7.316261726403514281e-04, -7.266500562230170362e-04, -7.216729978729750309e-04, -7.166950057194842886e-04, -7.117160878931461446e-04, -7.067362525257904439e-04, -7.017555077501265361e-04, -6.967738617001708852e-04, -6.917913225108497091e-04, -6.868078983181522858e-04, -6.818235972592790557e-04, -6.768384274722992304e-04, -6.718523970963093030e-04, -6.668655142715712841e-04, -6.618777871392382897e-04, -6.568892238412189083e-04, -6.518998325209467669e-04, -6.469096213221462756e-04, -6.419185983901459216e-04, -6.369267718706513861e-04, -6.319341499104488662e-04, -6.269407406575602240e-04, -6.219465522603919968e-04, -6.169515928684559574e-04, -6.119558706322325049e-04, -6.069593937028270811e-04, -6.019621702324080793e-04, -5.969642083737945228e-04, -5.919655162806186947e-04, -5.869661021074734815e-04, -5.819659740095655363e-04, -5.769651401428735728e-04, -5.719636086642979848e-04, -5.669613877313716896e-04, -5.619584855021325176e-04, -5.569549101358923452e-04, -5.519506697919962252e-04, -5.469457726311479327e-04, -5.419402268141718061e-04, -5.369340405027752663e-04, -5.319272218594274949e-04, -5.269197790470687591e-04, -5.219117202292603572e-04, -5.169030535703410690e-04, -5.118937872350794518e-04, -5.068839293888256292e-04, -5.018734881976683916e-04, -4.968624718280286205e-04, -4.918508884470965473e-04, -4.868387462224763517e-04, -4.818260533220698272e-04, -4.768128179148371109e-04, -4.717990481696722580e-04, -4.667847522561690676e-04, -4.617699383444967250e-04, -4.567546146049936595e-04, -4.517387892088831720e-04, -4.467224703273114223e-04, -4.417056661320536786e-04, -4.366883847953999882e-04, -4.316706344898503544e-04, -4.266524233882801852e-04, -4.216337596640858478e-04, -4.166146514908429283e-04, -4.115951070424573688e-04, -4.065751344933174732e-04, -4.015547420178937820e-04, -3.965339377911702599e-04, -3.915127299882981637e-04, -3.864911267844669141e-04, -3.814691363556782164e-04, -3.764467668776101412e-04, -3.714240265263889684e-04, -3.664009234784642872e-04, -3.613774659102594487e-04, -3.563536619986065485e-04, -3.513295199203393627e-04, -3.463050478524500693e-04, -3.412802539722435300e-04, -3.362551464569885572e-04, -3.312297334840696474e-04, -3.262040232311451664e-04, -3.211780238758533143e-04, -3.161517435956853815e-04, -3.111251905687585141e-04, -3.060983729725669841e-04, -3.010712989853171675e-04, -2.960439767846800613e-04, -2.910164145485059353e-04, -2.859886204549791562e-04, -2.809606026817655167e-04, -2.759323694067256408e-04, -2.709039288077919809e-04, -2.658752890626163976e-04, -2.608464583490082323e-04, -2.558174448445268089e-04, -2.507882567266359877e-04, -2.457589021728607236e-04, -2.407293893604361642e-04, -2.356997264664632873e-04, -2.306699216680626675e-04, -2.256399831420820398e-04, -2.206099190649710206e-04, -2.155797376135516492e-04, -2.105494469637715833e-04, -2.055190552920391309e-04, -2.004885707739725148e-04, -1.954580015851738574e-04, -1.904273559011046872e-04, -1.853966418967892195e-04, -1.803658677469723254e-04, -1.753350416262725931e-04, -1.703041717087782464e-04, -1.652732661684803105e-04, -1.602423331788683397e-04, -1.552113809130859466e-04, -1.501804175440832410e-04, -1.451494512443261278e-04, -1.401184901856681816e-04, -1.350875425401257160e-04, -1.300566164787395334e-04, -1.250257201722927486e-04, -1.199948617914654500e-04, -1.149640495058681065e-04, -1.099332914853172938e-04, -1.049025958985899323e-04, -9.987197091419418272e-05, -9.484142470024504654e-05, -8.981096542416963982e-05, -8.478060125286251850e-05, -7.975034035284146467e-05, -7.472019088984055847e-05, -6.969016102924627124e-05, -6.466025893569147252e-05, -5.963049277321014565e-05, -5.460087070539320123e-05, -4.957140089509372993e-05, -4.454209150430288170e-05, -3.951295069492042857e-05, -3.448398662762111610e-05, -2.945520746262567341e-05, -2.442662135957593341e-05, -1.939823647718497094e-05, -1.437006097367253702e-05, -9.342103006359294423e-06, -4.314370731821798523e-06, 7.131276939524381272e-07, 5.740384115914657728e-06, 1.076739037979978583e-05, 1.579413833197147938e-05, 2.082061981982787240e-05, 2.584682669136606134e-05, 3.087275079553189071e-05, 3.589838398234507336e-05, 4.092371810212796704e-05, 4.594874500663928053e-05, 5.097345654835918461e-05, 5.599784458033394590e-05, 6.102190095702997324e-05, 6.604561753361842043e-05, 7.106898616610043192e-05, 7.609199871165672345e-05, 8.111464702821232235e-05, 8.613692297484169997e-05, 9.115881841161467948e-05, 9.618032519944032428e-05, 1.012014352004176097e-04, 1.062221402776796365e-04, 1.112424322952385226e-04, 1.162623031183917751e-04, 1.212817446132864144e-04, 1.263007486472686697e-04, 1.313193070890087571e-04, 1.363374118077297277e-04, 1.413550546743421929e-04, 1.463722275606718854e-04, 1.513889223395846397e-04, 1.564051308852813500e-04, 1.614208450731416009e-04, 1.664360567795688704e-04, 1.714507578823959942e-04, 1.764649402604508892e-04, 1.814785957939608516e-04, 1.864917163643970289e-04, 1.915042938543219805e-04, 1.965163201476801899e-04, 2.015277871299247538e-04, 2.065386866872464329e-04, 2.115490107077046375e-04, 2.165587510805162179e-04, 2.215678996958979569e-04, 2.265764484460326754e-04, 2.315843892237928010e-04, 2.365917139239884204e-04, 2.415984144425921561e-04, 2.466044826768704632e-04, 2.516099105256694793e-04, 2.566146898892653506e-04, 2.616188126692077813e-04, 2.666222707687245495e-04, 2.716250560922871217e-04, 2.766271605460153310e-04, 2.816285760375223908e-04, 2.866292944757620762e-04, 2.916293077713188022e-04, 2.966286078365324699e-04, 3.016271865847322065e-04, 3.066250359313641522e-04, 3.116221477932222192e-04, 3.166185140885754848e-04, 3.216141267375134021e-04, 3.266089776615135822e-04, 3.316030587838450635e-04, 3.365963620294169030e-04, 3.415888793246163045e-04, 3.465806025976668936e-04, 3.515715237784641355e-04, 3.565616347984285344e-04, 3.615509275909038604e-04, 3.665393940907298118e-04, 3.715270262345831591e-04, 3.765138159611060601e-04, 3.814997552101942815e-04, 3.864848359238459122e-04, 3.914690500460055091e-04, 3.964523895218547583e-04, 4.014348462989390689e-04, 4.064164123264020728e-04, 4.113970795551056994e-04, 4.163768399379810781e-04, 4.213556854295988146e-04, 4.263336079865627732e-04, 4.313105995673656066e-04, 4.362866521322281317e-04, 4.412617576434486595e-04, 4.462359080652511523e-04, 4.512090953636261172e-04, 4.561813115067382663e-04, 4.611525484644919681e-04, 4.661227982088746689e-04, 4.710920527140909000e-04, 4.760603039557845251e-04, 4.810275439121725993e-04, 4.859937645632766696e-04, 4.909589578910448018e-04, 4.959231158796486520e-04, 5.008862305153199143e-04, 5.058482937862093754e-04, 5.108092976827764134e-04, 5.157692341973654001e-04, 5.207280953246036037e-04, 5.256858730612490749e-04, 5.306425594060374491e-04, 5.355981463599705610e-04, 5.405526259264408027e-04, 5.455059901104696886e-04, 5.504582309199365815e-04, 5.554093403643227530e-04, 5.603593104556569161e-04, 5.653081332083713514e-04, 5.702558006385919720e-04, 5.752023047652522324e-04, 5.801476376093436197e-04, 5.850917911940243989e-04, 5.900347575449228646e-04, 5.949765286899730840e-04, 5.999170966592682046e-04, 6.048564534854626931e-04, 6.097945912033338840e-04, 6.147315018501870376e-04, 6.196671774657057201e-04, 6.246016100917940522e-04, 6.295347917728646731e-04, 6.344667145559683029e-04, 6.393973704900246090e-04, 6.443267516270596070e-04, 6.492548500208856436e-04, 6.541816577283296897e-04, 6.591071668084805789e-04, 6.640313693228031737e-04, 6.689542573354304500e-04, 6.738758229130100818e-04, 6.787960581245555810e-04, 6.837149550417856523e-04, 6.886325057389721879e-04, 6.935487022927889133e-04, 6.984635367827072292e-04, 7.033770012905738063e-04, 7.082890879009491819e-04, 7.131997887012290821e-04, 7.181090957809479298e-04, 7.230170012326090192e-04, 7.279234971515378223e-04, 7.328285756351833298e-04, 7.377322287843294298e-04, 7.426344487017946241e-04, 7.475352274936555505e-04, 7.524345572684885833e-04, 7.573324301374914809e-04, 7.622288382147690729e-04, 7.671237736171875434e-04, 7.720172284642151618e-04, 7.769091948782697694e-04, 7.817996649845610282e-04, 7.866886309109471977e-04, 7.915760847883212192e-04, 7.964620187501955748e-04, 8.013464249330303673e-04, 8.062292954763714469e-04, 8.111106225220851822e-04, 8.159903982154662972e-04, 8.208686147044904225e-04, 8.257452641399325990e-04, 8.306203386756540489e-04, 8.354938304684458340e-04, 8.403657316778860662e-04, 8.452360344667323886e-04, 8.501047310004908970e-04, 8.549718134478203301e-04, 8.598372739803738845e-04, 8.647011047726530647e-04, 8.695632980022881655e-04, 8.744238458501656661e-04, 8.792827404997262094e-04, 8.841399741379102426e-04, 8.889955389544505759e-04, 8.938494271422828610e-04, 8.987016308976549872e-04, 9.035521424193773557e-04, 9.084009539099318015e-04, 9.132480575747167718e-04, 9.180934456221671305e-04, 9.229371102640440737e-04, 9.277790437152779205e-04, 9.326192381938264078e-04, 9.374576859210574133e-04, 9.422943791213351161e-04, 9.471293100224080323e-04, 9.519624708552579858e-04, 9.567938538539559092e-04, 9.616234512559359302e-04, 9.664512553021259098e-04, 9.712772582361963065e-04, 9.761014523057616899e-04, 9.809238297610986708e-04, 9.857443828563525103e-04, 9.905631038487760099e-04, 9.953799849988693733e-04, 1.000195018570651474e-03, 1.005008196831514572e-03, 1.009819512052071008e-03, 1.014628956506495160e-03, 1.019436522472365802e-03, 1.024242202230527974e-03, 1.029045988065466818e-03, 1.033847872264911190e-03, 1.038647847120194702e-03, 1.043445904926137979e-03, 1.048242037980867594e-03, 1.053036238586127884e-03, 1.057828499047376797e-03, 1.062618811673057741e-03, 1.067407168775790904e-03, 1.072193562671103868e-03, 1.076977985678603204e-03, 1.081760430121266915e-03, 1.086540888325537033e-03, 1.091319352621614733e-03, 1.096095815343307031e-03, 1.100870268827879332e-03, 1.105642705416389360e-03, 1.110413117453535378e-03, 1.115181497287511979e-03, 1.119947837270396504e-03, 1.124712129757734873e-03, 1.129474367108864461e-03, 1.134234541687048322e-03, 1.138992645858730125e-03, 1.143748671994615973e-03, 1.148502612468939961e-03, 1.153254459659581272e-03, 1.158004205948399415e-03, 1.162751843720820485e-03, 1.167497365366219030e-03, 1.172240763277765602e-03, 1.176982029852299914e-03, 1.181721157490632024e-03, 1.186458138597422645e-03, 1.191192965581015957e-03, 1.195925630853728874e-03, 1.200656126831968354e-03, 1.205384445935543366e-03, 1.210110580588593396e-03, 1.214834523218902155e-03, 1.219556266258288750e-03, 1.224275802142705920e-03, 1.228993123311538770e-03, 1.233708222208651679e-03, 1.238421091281680314e-03, 1.243131722982123571e-03, 1.247840109765706567e-03, 1.252546244091932211e-03, 1.257250118424498410e-03, 1.261951725231125242e-03, 1.266651056983420518e-03, 1.271348106157215016e-03, 1.276042865232392045e-03, 1.280735326692771653e-03, 1.285425483026367581e-03, 1.290113326725503924e-03, 1.294798850286102811e-03, 1.299482046208838646e-03, 1.304162906997900382e-03, 1.308841425162154438e-03, 1.313517593214420017e-03, 1.318191403671584681e-03, 1.322862849054891017e-03, 1.327531921889771186e-03, 1.332198614705721587e-03, 1.336862920036665636e-03, 1.341524830420556726e-03, 1.346184338399752500e-03, 1.350841436520872595e-03, 1.355496117334646644e-03, 1.360148373396247992e-03, 1.364798197265147325e-03, 1.369445581504962839e-03, 1.374090518683739309e-03, 1.378733001374055859e-03, 1.383373022152322102e-03, 1.388010573599922836e-03, 1.392645648301984226e-03, 1.397278238848532811e-03, 1.401908337833779284e-03, 1.406535937856226263e-03, 1.411161031518953866e-03, 1.415783611429461634e-03, 1.420403670199538648e-03, 1.425021200445576860e-03, 1.429636194788421908e-03, 1.434248645853247132e-03, 1.438858546269909406e-03, 1.443465888672559698e-03, 1.448070665699964857e-03, 1.452672869995612348e-03, 1.457272494207000318e-03, 1.461869530986702496e-03, 1.466463972991622266e-03, 1.471055812883143151e-03, 1.475645043327477495e-03, 1.480231656995017672e-03, 1.484815646561213212e-03, 1.489397004705941092e-03, 1.493975724113573607e-03, 1.498551797473302765e-03, 1.503125217478948382e-03, 1.507695976828845328e-03, 1.512264068226155988e-03, 1.516829484378719346e-03, 1.521392217998923050e-03, 1.525952261804060543e-03, 1.530509608515946609e-03, 1.535064250861219864e-03, 1.539616181571469393e-03, 1.544165393382528713e-03, 1.548711879035500781e-03, 1.553255631276067141e-03, 1.557796642854587235e-03, 1.562334906526438192e-03, 1.566870415051587872e-03, 1.571403161194986475e-03, 1.575933137726422779e-03, 1.580460337420372136e-03, 1.584984753056319778e-03, 1.589506377418624210e-03, 1.594025203296367370e-03, 1.598541223483628936e-03, 1.603054430779587590e-03, 1.607564817987837966e-03, 1.612072377917493941e-03, 1.616577103382021161e-03, 1.621078987200322329e-03, 1.625578022196112488e-03, 1.630074201197781545e-03, 1.634567517039151475e-03, 1.639057962558834909e-03, 1.643545530600359818e-03, 1.648030214012460295e-03, 1.652512005648700769e-03, 1.656990898367845287e-03, 1.661466885033701171e-03, 1.665939958514990864e-03, 1.670410111685655509e-03, 1.674877337424732432e-03, 1.679341628616193164e-03, 1.683802978149228583e-03, 1.688261378918343245e-03, 1.692716823822672115e-03, 1.697169305767095779e-03, 1.701618817661038714e-03, 1.706065352419606834e-03, 1.710508902962860640e-03, 1.714949462215965273e-03, 1.719387023109424269e-03, 1.723821578578958779e-03, 1.728253121565353611e-03, 1.732681645014822825e-03, 1.737107141878632428e-03, 1.741529605113444502e-03, 1.745949027681201627e-03, 1.750365402548953410e-03, 1.754778722689145313e-03, 1.759188981079725994e-03, 1.763596170703457316e-03, 1.768000284548904445e-03, 1.772401315609784238e-03, 1.776799256885044616e-03, 1.781194101379249663e-03, 1.785585842101921087e-03, 1.789974472068409919e-03, 1.794359984299253360e-03, 1.798742371820287759e-03, 1.803121627662910339e-03, 1.807497744863944752e-03, 1.811870716465494068e-03, 1.816240535515297252e-03, 1.820607195066357509e-03, 1.824970688177290088e-03, 1.829331007912175702e-03, 1.833688147340455576e-03, 1.838042099537151109e-03, 1.842392857582997225e-03, 1.846740414563756514e-03, 1.851084763571211921e-03, 1.855425897702494544e-03, 1.859763810060184250e-03, 1.864098493752630375e-03, 1.868429941893561853e-03, 1.872758147602428735e-03, 1.877083104004291384e-03, 1.881404804229666952e-03, 1.885723241414830574e-03, 1.890038408701700222e-03, 1.894350299237669523e-03, 1.898658906175998721e-03, 1.902964222675405503e-03, 1.907266241900378110e-03, 1.911564957021280511e-03, 1.915860361213689951e-03, 1.920152447659377723e-03, 1.924441209545675992e-03, 1.928726640065368293e-03, 1.933008732417389056e-03, 1.937287479806249196e-03, 1.941562875442116995e-03, 1.945834912541110620e-03, 1.950103584324963321e-03, 1.954368884021315082e-03, 1.958630804863627402e-03, 1.962889340091020663e-03, 1.967144482948591806e-03, 1.971396226687266440e-03, 1.975644564563673079e-03, 1.979889489840486183e-03, 1.984130995786053623e-03, 1.988369075674705898e-03, 1.992603722786845475e-03, 1.996834930408288022e-03, 2.001062691831250340e-03, 2.005287000353669479e-03, 2.009507849279318099e-03, 2.013725231918055570e-03, 2.017939141585688764e-03, 2.022149571603845848e-03, 2.026356515300317598e-03, 2.030559966008689196e-03, 2.034759917068682412e-03, 2.038956361826019855e-03, 2.043149293632305716e-03, 2.047338705845243041e-03, 2.051524591828787249e-03, 2.055706944952446179e-03, 2.059885758592264974e-03, 2.064061026130221532e-03, 2.068232740954069945e-03, 2.072400896458187480e-03, 2.076565486042483873e-03, 2.080726503113438687e-03, 2.084883941083467713e-03, 2.089037793371020541e-03, 2.093188053400835136e-03, 2.097334714603792984e-03, 2.101477770416800266e-03, 2.105617214283113554e-03, 2.109753039652001103e-03, 2.113885239979039054e-03, 2.118013808726022969e-03, 2.122138739360827312e-03, 2.126260025357623162e-03, 2.130377660197008312e-03, 2.134491637365373666e-03, 2.138601950355807461e-03, 2.142708592667484646e-03, 2.146811557805769228e-03, 2.150910839282484024e-03, 2.155006430615568052e-03, 2.159098325329403094e-03, 2.163186516954691396e-03, 2.167270999028300844e-03, 2.171351765093605841e-03, 2.175428808700302988e-03, 2.179502123404318710e-03, 2.183571702768115873e-03, 2.187637540360367217e-03, 2.191699629756212100e-03, 2.195757964537380959e-03, 2.199812538291538722e-03, 2.203863344613234999e-03, 2.207910377103302138e-03, 2.211953629368747232e-03, 2.215993095023423027e-03, 2.220028767687465873e-03, 2.224060640987378986e-03, 2.228088708556332127e-03, 2.232112964033809016e-03, 2.236133401065901801e-03, 2.240150013305234732e-03, 2.244162794410805000e-03, 2.248171738048264628e-03, 2.252176837889816822e-03, 2.256178087614070255e-03, 2.260175480906370400e-03, 2.264169011458454315e-03, 2.268158672968713461e-03, 2.272144459142328571e-03, 2.276126363690608723e-03, 2.280104380331925053e-03, 2.284078502791090596e-03, 2.288048724799445714e-03, 2.292015040095113972e-03, 2.295977442422851653e-03, 2.299935925533953211e-03, 2.303890483186542271e-03, 2.307841109145247673e-03, 2.311787797181520925e-03, 2.315730541073504362e-03, 2.319669334605905815e-03, 2.323604171570248841e-03, 2.327535045764955127e-03, 2.331461950994737336e-03, 2.335384881071585293e-03, 2.339303829813750308e-03, 2.343218791046519731e-03, 2.347129758602082509e-03, 2.351036726318970604e-03, 2.354939688042951944e-03, 2.358838637626421535e-03, 2.362733568928496869e-03, 2.366624475815241706e-03, 2.370511352159561120e-03, 2.374394191841068796e-03, 2.378272988746407083e-03, 2.382147736768890946e-03, 2.386018429808847534e-03, 2.389885061773479140e-03, 2.393747626576750009e-03, 2.397606118139609249e-03, 2.401460530390078438e-03, 2.405310857262681328e-03, 2.409157092699373663e-03, 2.412999230648533999e-03, 2.416837265065921708e-03, 2.420671189914069821e-03, 2.424500999162401693e-03, 2.428326686787446540e-03, 2.432148246772698492e-03, 2.435965673108535061e-03, 2.439778959792464341e-03, 2.443588100828984495e-03, 2.447393090229530409e-03, 2.451193922012693139e-03, 2.454990590203962736e-03, 2.458783088835948989e-03, 2.462571411948507195e-03, 2.466355553588156588e-03, 2.470135507808775971e-03, 2.473911268671438908e-03, 2.477682830243885508e-03, 2.481450186601498204e-03, 2.485213331826253980e-03, 2.488972260007653314e-03, 2.492726965242197164e-03, 2.496477441633422958e-03, 2.500223683292160902e-03, 2.503965684336385659e-03, 2.507703438891129618e-03, 2.511436941088733988e-03, 2.515166185068718266e-03, 2.518891164977674849e-03, 2.522611874969580420e-03, 2.526328309205445530e-03, 2.530040461853614274e-03, 2.533748327089809394e-03, 2.537451899096588009e-03, 2.541151172064185556e-03, 2.544846140189906906e-03, 2.548536797678287689e-03, 2.552223138741232644e-03, 2.555905157597953160e-03, 2.559582848474814196e-03, 2.563256205605680786e-03, 2.566925223231558521e-03, 2.570589895600889317e-03, 2.574250216969465981e-03, 2.577906181600305574e-03, 2.581557783763833297e-03, 2.585205017738027335e-03, 2.588847877807853772e-03, 2.592486358265985637e-03, 2.596120453412292892e-03, 2.599750157554093100e-03, 2.603375465006308852e-03, 2.606996370090849339e-03, 2.610612867137454725e-03, 2.614224950483145377e-03, 2.617832614472296454e-03, 2.621435853456852150e-03, 2.625034661796218135e-03, 2.628629033857146201e-03, 2.632218964014022226e-03, 2.635804446648570398e-03, 2.639385476150109960e-03, 2.642962046915481051e-03, 2.646534153348900284e-03, 2.650101789862189302e-03, 2.653664950874874955e-03, 2.657223630813592124e-03, 2.660777824113026106e-03, 2.664327525214924691e-03, 2.667872728569009328e-03, 2.671413428632407432e-03, 2.674949619869745627e-03, 2.678481296753363553e-03, 2.682008453763198071e-03, 2.685531085386677012e-03, 2.689049186118961168e-03, 2.692562750462835445e-03, 2.696071772928587858e-03, 2.699576248034329592e-03, 2.703076170305644590e-03, 2.706571534275856259e-03, 2.710062334486123756e-03, 2.713548565484905084e-03, 2.717030221828602848e-03, 2.720507298081419837e-03, 2.723979788814859422e-03, 2.727447688608616774e-03, 2.730910992049628665e-03, 2.734369693732946471e-03, 2.737823788261207949e-03, 2.741273270244705754e-03, 2.744718134301615126e-03, 2.748158375057848605e-03, 2.751593987146992281e-03, 2.755024965210515694e-03, 2.758451303897671656e-03, 2.761872997865389995e-03, 2.765290041778563357e-03, 2.768702430309730178e-03, 2.772110158139319287e-03, 2.775513219955770463e-03, 2.778911610454932925e-03, 2.782305324340904069e-03, 2.785694356325474352e-03, 2.789078701128227481e-03, 2.792458353476745536e-03, 2.795833308106356139e-03, 2.799203559760366205e-03, 2.802569103189986484e-03, 2.805929933154207960e-03, 2.809286044420046449e-03, 2.812637431762432874e-03, 2.815984089964109621e-03, 2.819326013815825691e-03, 2.822663198116423001e-03, 2.825995637672342863e-03, 2.829323327298307288e-03, 2.832646261816794235e-03, 2.835964436058337722e-03, 2.839277844861602847e-03, 2.842586483072863206e-03, 2.845890345546771543e-03, 2.849189427145829359e-03, 2.852483722740474081e-03, 2.855773227209323657e-03, 2.859057935438857802e-03, 2.862337842323725481e-03, 2.865612942766616964e-03, 2.868883231678135901e-03, 2.872148703977097251e-03, 2.875409354590350783e-03, 2.878665178452731194e-03, 2.881916170507224650e-03, 2.885162325705050313e-03, 2.888403639005166813e-03, 2.891640105375086270e-03, 2.894871719789982641e-03, 2.898098477233510082e-03, 2.901320372697339337e-03, 2.904537401181180294e-03, 2.907749557693004895e-03, 2.910956837248943052e-03, 2.914159234873165555e-03, 2.917356745598174202e-03, 2.920549364464483048e-03, 2.923737086520918505e-03, 2.926919906824486644e-03, 2.930097820440283850e-03, 2.933270822441733181e-03, 2.936438907910463372e-03, 2.939602071936222964e-03, 2.942760309617047706e-03, 2.945913616059383719e-03, 2.949061986377536724e-03, 2.952205415694495599e-03, 2.955343899141113593e-03, 2.958477431856823027e-03, 2.961606008989226772e-03, 2.964729625694111255e-03, 2.967848277135670242e-03, 2.970961958486411161e-03, 2.974070664927004615e-03, 2.977174391646579717e-03, 2.980273133842561897e-03, 2.983366886720603510e-03, 2.986455645494824097e-03, 2.989539405387560151e-03, 2.992618161629562873e-03, 2.995691909460079273e-03, 2.998760644126358208e-03, 3.001824360884393274e-03, 3.004883054998395021e-03, 3.007936721740911076e-03, 3.010985356393037788e-03, 3.014028954244005187e-03, 3.017067510591758556e-03, 3.020101020742525615e-03, 3.023129480010885908e-03, 3.026152883719939075e-03, 3.029171227201241968e-03, 3.032184505794674207e-03, 3.035192714848655889e-03, 3.038195849720174042e-03, 3.041193905774399690e-03, 3.044186878385238184e-03, 3.047174762934899434e-03, 3.050157554814161582e-03, 3.053135249422416538e-03, 3.056107842167238471e-03, 3.059075328465015245e-03, 3.062037703740552470e-03, 3.064994963427081741e-03, 3.067947102966523884e-03, 3.070894117809165862e-03, 3.073836003413973460e-03, 3.076772755248452940e-03, 3.079704368788545223e-03, 3.082630839518882195e-03, 3.085552162932654868e-03, 3.088468334531531412e-03, 3.091379349825843208e-03, 3.094285204334628649e-03, 3.097185893585192515e-03, 3.100081413113869692e-03, 3.102971758465176023e-03, 3.105856925192590663e-03, 3.108736908858088580e-03, 3.111611705032219909e-03, 3.114481309294246571e-03, 3.117345717232104102e-03, 3.120204924442261576e-03, 3.123058926529997861e-03, 3.125907719109104112e-03, 3.128751297802169137e-03, 3.131589658240438445e-03, 3.134422796063754402e-03, 3.137250706920750951e-03, 3.140073386468770784e-03, 3.142890830373748241e-03, 3.145703034310406640e-03, 3.148509993962310318e-03, 3.151311705021427479e-03, 3.154108163188855309e-03, 3.156899364174046291e-03, 3.159685303695500790e-03, 3.162465977480359396e-03, 3.165241381264449760e-03, 3.168011510792462238e-03, 3.170776361817870953e-03, 3.173535930102806303e-03, 3.176290211418330775e-03, 3.179039201544171366e-03, 3.181782896268952471e-03, 3.184521291390069245e-03, 3.187254382713677198e-03, 3.189982166054788470e-03, 3.192704637237358135e-03, 3.195421792093872636e-03, 3.198133626465953470e-03, 3.200840136203959938e-03, 3.203541317167016896e-03, 3.206237165223263692e-03, 3.208927676249462551e-03, 3.211612846131509883e-03, 3.214292670764065489e-03, 3.216967146050592891e-03, 3.219636267903545814e-03, 3.222300032244258469e-03, 3.224958435002887869e-03, 3.227611472118600312e-03, 3.230259139539371459e-03, 3.232901433222167172e-03, 3.235538349132877599e-03, 3.238169883246243014e-03, 3.240796031545999968e-03, 3.243416790024932026e-03, 3.246032154684484663e-03, 3.248642121535341622e-03, 3.251246686597049785e-03, 3.253845845898031310e-03, 3.256439595475837771e-03, 3.259027931376845717e-03, 3.261610849656511671e-03, 3.264188346379306646e-03, 3.266760417618572599e-03, 3.269327059456757483e-03, 3.271888267985339355e-03, 3.274444039304686294e-03, 3.276994369524315314e-03, 3.279539254762658170e-03, 3.282078691147240473e-03, 3.284612674814713779e-03, 3.287141201910512116e-03, 3.289664268589403626e-03, 3.292181871015113694e-03, 3.294694005360256864e-03, 3.297200667806780925e-03, 3.299701854545580501e-03, 3.302197561776575117e-03, 3.304687785708891341e-03, 3.307172522560608216e-03, 3.309651768559011831e-03, 3.312125519940463479e-03, 3.314593772950363230e-03, 3.317056523843309093e-03, 3.319513768883009842e-03, 3.321965504342202623e-03, 3.324411726502886268e-03, 3.326852431656060222e-03, 3.329287616101947889e-03, 3.331717276150005305e-03, 3.334141408118566820e-03, 3.336560008335412789e-03, 3.338973073137358871e-03, 3.341380598870338000e-03, 3.343782581889544799e-03, 3.346179018559358818e-03, 3.348569905253237847e-03, 3.350955238353959479e-03, 3.353335014253373911e-03, 3.355709229352636831e-03, 3.358077880062075408e-03, 3.360440962801166179e-03, 3.362798473998659943e-03, 3.365150410092635977e-03, 3.367496767530123430e-03, 3.369837542767641688e-03, 3.372172732270882056e-03, 3.374502332514684334e-03, 3.376826339983294428e-03, 3.379144751169981409e-03, 3.381457562577521499e-03, 3.383764770717857633e-03, 3.386066372112129380e-03, 3.388362363290853795e-03, 3.390652740793809617e-03, 3.392937501169984802e-03, 3.395216640977768204e-03, 3.397490156784740110e-03, 3.399758045167852651e-03, 3.402020302713371688e-03, 3.404276926016794845e-03, 3.406527911682968174e-03, 3.408773256326191100e-03, 3.411012956569813969e-03, 3.413247009046784051e-03, 3.415475410399270838e-03, 3.417698157278738040e-03, 3.419915246346110545e-03, 3.422126674271546310e-03, 3.424332437734634547e-03, 3.426532533424339784e-03, 3.428726958038904715e-03, 3.430915708286021073e-03, 3.433098780882761544e-03, 3.435276172555499531e-03, 3.437447880040076995e-03, 3.439613900081675644e-03, 3.441774229434861609e-03, 3.443928864863740700e-03, 3.446077803141561150e-03, 3.448221041051230135e-03, 3.450358575384997184e-03, 3.452490402944374381e-03, 3.454616520540531883e-03, 3.456736924993966155e-03, 3.458851613134546806e-03, 3.460960581801694833e-03, 3.463063827844163178e-03, 3.465161348120233617e-03, 3.467253139497653014e-03, 3.469339198853507115e-03, 3.471419523074466013e-03, 3.473494109056638000e-03, 3.475562953705544841e-03, 3.477626053936252321e-03, 3.479683406673237962e-03, 3.481735008850505957e-03, 3.483780857411624462e-03, 3.485820949309451078e-03, 3.487855281506542244e-03, 3.489883850974893897e-03, 3.491906654695933233e-03, 3.493923689660690876e-03, 3.495934952869698530e-03, 3.497940441332943011e-03, 3.499940152070032343e-03, 3.501934082109994534e-03, 3.503922228491492680e-03, 3.505904588262685750e-03, 3.507881158481233799e-03, 3.509851936214387295e-03, 3.511816918539020088e-03, 3.513776102541351851e-03, 3.515729485317425559e-03, 3.517677063972594453e-03, 3.519618835621928388e-03, 3.521554797390117134e-03, 3.523484946411216661e-03, 3.525409279829084998e-03, 3.527327794797067810e-03, 3.529240488478057811e-03, 3.531147358044599283e-03, 3.533048400678862055e-03, 3.534943613572508799e-03, 3.536832993926943090e-03, 3.538716538953031419e-03, 3.540594245871369478e-03, 3.542466111912144239e-03, 3.544332134315101440e-03, 3.546192310329665271e-03, 3.548046637214970038e-03, 3.549895112239564825e-03, 3.551737732681894012e-03, 3.553574495829784231e-03, 3.555405398980938329e-03, 3.557230439442581049e-03, 3.559049614531600413e-03, 3.560862921574567668e-03, 3.562670357907728614e-03, 3.564471920876927710e-03, 3.566267607837740345e-03, 3.568057416155410826e-03, 3.569841343204809871e-03, 3.571619386370551708e-03, 3.573391543046866136e-03, 3.575157810637703479e-03, 3.576918186556796164e-03, 3.578672668227349078e-03, 3.580421253082498399e-03, 3.582163938564998477e-03, 3.583900722127184978e-03, 3.585631601231344372e-03, 3.587356573349222578e-03, 3.589075635962475554e-03, 3.590788786562427743e-03, 3.592496022650059923e-03, 3.594197341736146689e-03, 3.595892741341203108e-03, 3.597582218995414461e-03, 3.599265772238754209e-03, 3.600943398620953632e-03, 3.602615095701425501e-03, 3.604280861049408494e-03, 3.605940692243797194e-03, 3.607594586873326837e-03, 3.609242542536515198e-03, 3.610884556841494758e-03, 3.612520627406327987e-03, 3.614150751858783567e-03, 3.615774927836362847e-03, 3.617393152986387445e-03, 3.619005424965991875e-03, 3.620611741441990411e-03, 3.622212100091103028e-03, 3.623806498599734666e-03, 3.625394934664149561e-03, 3.626977405990418346e-03, 3.628553910294338679e-03, 3.630124445301544534e-03, 3.631689008747585132e-03, 3.633247598377584067e-03, 3.634800211946745841e-03, 3.636346847219840226e-03, 3.637887501971613820e-03, 3.639422173986651271e-03, 3.640950861059211782e-03, 3.642473560993534417e-03, 3.643990271603639482e-03, 3.645500990713335457e-03, 3.647005716156313110e-03, 3.648504445776132917e-03, 3.649997177426110573e-03, 3.651483908969498267e-03, 3.652964638279323790e-03, 3.654439363238525841e-03, 3.655908081739885507e-03, 3.657370791685991135e-03, 3.658827490989354555e-03, 3.660278177572375523e-03, 3.661722849367187761e-03, 3.663161504315964705e-03, 3.664594140370593806e-03, 3.666020755492960161e-03, 3.667441347654802966e-03, 3.668855914837659566e-03, 3.670264455033061049e-03, 3.671666966242367013e-03, 3.673063446476819340e-03, 3.674453893757594677e-03, 3.675838306115739810e-03, 3.677216681592162563e-03, 3.678589018237764068e-03, 3.679955314113252281e-03, 3.681315567289269054e-03, 3.682669775846460821e-03, 3.684017937875211889e-03, 3.685360051475925457e-03, 3.686696114758980253e-03, 3.688026125844496780e-03, 3.689350082862714181e-03, 3.690667983953626382e-03, 3.691979827267269625e-03, 3.693285610963585423e-03, 3.694585333212391069e-03, 3.695878992193508440e-03, 3.697166586096668588e-03, 3.698448113121515640e-03, 3.699723571477674892e-03, 3.700992959384708566e-03, 3.702256275072104974e-03, 3.703513516779327955e-03, 3.704764682755758761e-03, 3.706009771260738560e-03, 3.707248780563657340e-03, 3.708481708943678519e-03, 3.709708554690103240e-03, 3.710929316102124041e-03, 3.712143991488856074e-03, 3.713352579169468953e-03, 3.714555077473018479e-03, 3.715751484738603200e-03, 3.716941799315259028e-03, 3.718126019561992634e-03, 3.719304143847810065e-03, 3.720476170551705042e-03, 3.721642098062606045e-03, 3.722801924779459148e-03, 3.723955649111257947e-03, 3.725103269476847962e-03, 3.726244784305195092e-03, 3.727380192035175278e-03, 3.728509491115696364e-03, 3.729632680005698538e-03, 3.730749757174021616e-03, 3.731860721099604546e-03, 3.732965570271359630e-03, 3.734064303188175133e-03, 3.735156918358989008e-03, 3.736243414302707795e-03, 3.737323789548289889e-03, 3.738398042634686995e-03, 3.739466172110851062e-03, 3.740528176535786332e-03, 3.741584054478491652e-03, 3.742633804517986502e-03, 3.743677425243310125e-03, 3.744714915253585276e-03, 3.745746273157834778e-03, 3.746771497575266015e-03, 3.747790587134957815e-03, 3.748803540476134538e-03, 3.749810356248034666e-03, 3.750811033109886956e-03, 3.751805569730991101e-03, 3.752793964790691709e-03, 3.753776216978339710e-03, 3.754752324993363040e-03, 3.755722287545205061e-03, 3.756686103353367931e-03, 3.757643771147423442e-03, 3.758595289666933660e-03, 3.759540657661553271e-03, 3.760479873891014839e-03, 3.761412937125012575e-03, 3.762339846143364103e-03, 3.763260599735976635e-03, 3.764175196702690841e-03, 3.765083635853552768e-03, 3.765985916008535855e-03, 3.766882035997775116e-03, 3.767771994661438771e-03, 3.768655790849710467e-03, 3.769533423422913743e-03, 3.770404891251403611e-03, 3.771270193215588238e-03, 3.772129328205967112e-03, 3.772982295123132775e-03, 3.773829092877684522e-03, 3.774669720390365878e-03, 3.775504176591950971e-03, 3.776332460423293541e-03, 3.777154570835370307e-03, 3.777970506789159969e-03, 3.778780267255791529e-03, 3.779583851216451046e-03, 3.780381257662377304e-03, 3.781172485594932933e-03, 3.781957534025539788e-03, 3.782736401975723192e-03, 3.783509088477095446e-03, 3.784275592571336756e-03, 3.785035913310226888e-03, 3.785790049755648635e-03, 3.786538000979551826e-03, 3.787279766063988019e-03, 3.788015344101133917e-03, 3.788744734193195528e-03, 3.789467935452531765e-03, 3.790184947001565968e-03, 3.790895767972811067e-03, 3.791600397508948506e-03, 3.792298834762635688e-03, 3.792991078896747106e-03, 3.793677129084198699e-03, 3.794356984508010736e-03, 3.795030644361324298e-03, 3.795698107847357040e-03, 3.796359374179450897e-03, 3.797014442581069481e-03, 3.797663312285727392e-03, 3.798305982537092569e-03, 3.798942452588938146e-03, 3.799572721705111230e-03, 3.800196789159594486e-03, 3.800814654236501795e-03, 3.801426316229977644e-03, 3.802031774444381007e-03, 3.802631028194083246e-03, 3.803224076803632479e-03, 3.803810919607684190e-03, 3.804391555950971740e-03, 3.804965985188369249e-03, 3.805534206684865577e-03, 3.806096219815542636e-03, 3.806652023965635678e-03, 3.807201618530440482e-03, 3.807745002915420909e-03, 3.808282176536138645e-03, 3.808813138818256672e-03, 3.809337889197580464e-03, 3.809856427120022430e-03, 3.810368752041606247e-03, 3.810874863428477272e-03, 3.811374760756936798e-03, 3.811868443513331903e-03, 3.812355911194202467e-03, 3.812837163306142824e-03, 3.813312199365934043e-03, 3.813781018900435499e-03, 3.814243621446633450e-03, 3.814700006551638867e-03, 3.815150173772706519e-03, 3.815594122677168180e-03, 3.816031852842512000e-03, 3.816463363856336093e-03, 3.816888655316347679e-03, 3.817307726830435934e-03, 3.817720578016518904e-03, 3.818127208502713945e-03, 3.818527617927246209e-03, 3.818921805938415258e-03, 3.819309772194706947e-03, 3.819691516364714934e-03, 3.820067038127129833e-03, 3.820436337170780849e-03, 3.820799413194621904e-03, 3.821156265907746374e-03, 3.821506895029337658e-03, 3.821851300288721647e-03, 3.822189481425346778e-03, 3.822521438188796177e-03, 3.822847170338754264e-03, 3.823166677645034074e-03, 3.823479959887571625e-03, 3.823787016856439788e-03, 3.824087848351818367e-03, 3.824382454184021857e-03, 3.824670834173467347e-03, 3.824952988150730031e-03, 3.825228915956453441e-03, 3.825498617441453961e-03, 3.825762092466651436e-03, 3.826019340903079585e-03, 3.826270362631891200e-03, 3.826515157544371597e-03, 3.826753725541923428e-03, 3.826986066536060185e-03, 3.827212180448431780e-03, 3.827432067210793324e-03, 3.827645726765016836e-03, 3.827853159063115962e-03, 3.828054364067189162e-03, 3.828249341749481293e-03, 3.828438092092326800e-03, 3.828620615088214763e-03, 3.828796910739709104e-03, 3.828966979059522310e-03, 3.829130820070461225e-03, 3.829288433805453501e-03, 3.829439820307552374e-03, 3.829584979629908036e-03, 3.829723911835788454e-03, 3.829856616998586743e-03, 3.829983095201795144e-03, 3.830103346539009360e-03, 3.830217371113957183e-03, 3.830325169040452084e-03, 3.830426740442460874e-03, 3.830522085453992674e-03, 3.830611204219225557e-03, 3.830694096892409400e-03, 3.830770763637914456e-03, 3.830841204630205336e-03, 3.830905420053876999e-03, 3.830963410103596645e-03, 3.831015174984156186e-03, 3.831060714910443626e-03, 3.831100030107443492e-03, 3.831133120810250713e-03, 3.831159987264056311e-03, 3.831180629724145227e-03, 3.831195048455920179e-03, 3.831203243734848749e-03, 3.831205215846529306e-03, 3.831200965086625949e-03, 3.831190491760919688e-03, 3.831173796185265070e-03, 3.831150878685636151e-03, 3.831121739598067517e-03, 3.831086379268706325e-03, 3.831044798053785845e-03, 3.830996996319621130e-03, 3.830942974442605106e-03, 3.830882732809258017e-03, 3.830816271816129409e-03, 3.830743591869893543e-03, 3.830664693387283038e-03, 3.830579576795129209e-03, 3.830488242530345581e-03, 3.830390691039907512e-03, 3.830286922780872134e-03, 3.830176938220393110e-03, 3.830060737835672916e-03, 3.829938322114010557e-03, 3.829809691552765131e-03, 3.829674846659383153e-03, 3.829533787951340876e-03, 3.829386515956239266e-03, 3.829233031211707293e-03, 3.829073334265452235e-03, 3.828907425675260115e-03, 3.828735306008959269e-03, 3.828556975844445934e-03, 3.828372435769690323e-03, 3.828181686382701922e-03, 3.827984728291555956e-03, 3.827781562114407690e-03, 3.827572188479421746e-03, 3.827356608024858400e-03, 3.827134821398992491e-03, 3.826906829260191475e-03, 3.826672632276840406e-03, 3.826432231127373153e-03, 3.826185626500293226e-03, 3.825932819094122160e-03, 3.825673809617419034e-03, 3.825408598788830345e-03, 3.825137187336988959e-03, 3.824859576000587402e-03, 3.824575765528361385e-03, 3.824285756679061173e-03, 3.823989550221487156e-03, 3.823687146934463821e-03, 3.823378547606853632e-03, 3.823063753037524940e-03, 3.822742764035384072e-03, 3.822415581419372731e-03, 3.822082206018438504e-03, 3.821742638671543103e-03, 3.821396880227688388e-03, 3.821044931545892510e-03, 3.820686793495142643e-03, 3.820322466954503404e-03, 3.819951952813005827e-03, 3.819575251969698111e-03, 3.819192365333653420e-03, 3.818803293823926949e-03, 3.818408038369584551e-03, 3.818006599909706637e-03, 3.817598979393347844e-03, 3.817185177779589943e-03, 3.816765196037464648e-03, 3.816339035146045552e-03, 3.815906696094355753e-03, 3.815468179881456763e-03, 3.815023487516322302e-03, 3.814572620018002666e-03, 3.814115578415442145e-03, 3.813652363747636886e-03, 3.813182977063499582e-03, 3.812707419421957050e-03, 3.812225691891911634e-03, 3.811737795552218224e-03, 3.811243731491707667e-03, 3.810743500809180267e-03, 3.810237104613388003e-03, 3.809724544023076163e-03, 3.809205820166922194e-03, 3.808680934183557819e-03, 3.808149887221595926e-03, 3.807612680439578963e-03, 3.807069315006012759e-03, 3.806519792099354819e-03, 3.805964112907990905e-03, 3.805402278630247177e-03, 3.804834290474440502e-03, 3.804260149658747481e-03, 3.803679857411363177e-03, 3.803093414970362338e-03, 3.802500823583750134e-03, 3.801902084509492952e-03, 3.801297199015464187e-03, 3.800686168379455512e-03, 3.800068993889184690e-03, 3.799445676842306847e-03, 3.798816218546345949e-03, 3.798180620318807130e-03, 3.797538883487038778e-03, 3.796891009388346592e-03, 3.796236999369917691e-03, 3.795576854788833190e-03, 3.794910577012111999e-03, 3.794238167416624091e-03, 3.793559627389152082e-03, 3.792874958326400772e-03, 3.792184161634911278e-03, 3.791487238731171619e-03, 3.790784191041490087e-03, 3.790075020002082410e-03, 3.789359727059073927e-03, 3.788638313668419785e-03, 3.787910781295950047e-03, 3.787177131417404814e-03, 3.786437365518360940e-03, 3.785691485094246338e-03, 3.784939491650378580e-03, 3.784181386701905483e-03, 3.783417171773878398e-03, 3.782646848401152468e-03, 3.781870418128419151e-03, 3.781087882510288187e-03, 3.780299243111158360e-03, 3.779504501505243520e-03, 3.778703659276666689e-03, 3.777896718019345141e-03, 3.777083679337008611e-03, 3.776264544843249606e-03, 3.775439316161473529e-03, 3.774607994924909522e-03, 3.773770582776603526e-03, 3.772927081369391398e-03, 3.772077492365977398e-03, 3.771221817438830982e-03, 3.770360058270212818e-03, 3.769492216552260220e-03, 3.768618293986803706e-03, 3.767738292285595543e-03, 3.766852213170075996e-03, 3.765960058371499962e-03, 3.765061829630962555e-03, 3.764157528699266404e-03, 3.763247157337049151e-03, 3.762330717314693249e-03, 3.761408210412376264e-03, 3.760479638420023609e-03, 3.759545003137345406e-03, 3.758604306373804823e-03, 3.757657549948640631e-03, 3.756704735690821664e-03, 3.755745865439075442e-03, 3.754780941041921567e-03, 3.753809964357577179e-03, 3.752832937253958688e-03, 3.751849861608871732e-03, 3.750860739309685478e-03, 3.749865572253631863e-03, 3.748864362347583985e-03, 3.747857111508182300e-03, 3.746843821661779549e-03, 3.745824494744463308e-03, 3.744799132701988765e-03, 3.743767737489872398e-03, 3.742730311073306972e-03, 3.741686855427194935e-03, 3.740637372536141040e-03, 3.739581864394445412e-03, 3.738520333006102245e-03, 3.737452780384808038e-03, 3.736379208553858820e-03, 3.735299619546375224e-03, 3.734214015405055726e-03, 3.733122398182256007e-03, 3.732024769940109083e-03, 3.730921132750268567e-03, 3.729811488694204005e-03, 3.728695839862898164e-03, 3.727574188357076455e-03, 3.726446536287101978e-03, 3.725312885772967715e-03, 3.724173238944291330e-03, 3.723027597940391058e-03, 3.721875964910172085e-03, 3.720718342012148232e-03, 3.719554731414524348e-03, 3.718385135295079226e-03, 3.717209555841233682e-03, 3.716027995250021070e-03, 3.714840455728036107e-03, 3.713646939491583188e-03, 3.712447448766468660e-03, 3.711241985788135689e-03, 3.710030552801648219e-03, 3.708813152061609872e-03, 3.707589785832251118e-03, 3.706360456387362921e-03, 3.705125166010309317e-03, 3.703883916994071650e-03, 3.702636711641137113e-03, 3.701383552263572910e-03, 3.700124441183074396e-03, 3.698859380730816319e-03, 3.697588373247504001e-03, 3.696311421083527289e-03, 3.695028526598637900e-03, 3.693739692162295064e-03, 3.692444920153396641e-03, 3.691144212960354148e-03, 3.689837572981208985e-03, 3.688525002623414296e-03, 3.687206504303989357e-03, 3.685882080449486616e-03, 3.684551733495921872e-03, 3.683215465888861444e-03, 3.681873280083349746e-03, 3.680525178543897578e-03, 3.679171163744580138e-03, 3.677811238168894343e-03, 3.676445404309820406e-03, 3.675073664669878653e-03, 3.673696021761015465e-03, 3.672312478104600673e-03, 3.670923036231608406e-03, 3.669527698682285323e-03, 3.668126468006517940e-03, 3.666719346763517781e-03, 3.665306337521977067e-03, 3.663887442860058307e-03, 3.662462665365319708e-03, 3.661032007634758105e-03, 3.659595472274835420e-03, 3.658153061901378480e-03, 3.656704779139705215e-03, 3.655250626624475477e-03, 3.653790606999785147e-03, 3.652324722919149651e-03, 3.650852977045474478e-03, 3.649375372050996189e-03, 3.647891910617475416e-03, 3.646402595435970038e-03, 3.644907429206844292e-03, 3.643406414640041127e-03, 3.641899554454653722e-03, 3.640386851379320571e-03, 3.638868308151918442e-03, 3.637343927519705485e-03, 3.635813712239339881e-03, 3.634277665076782703e-03, 3.632735788807335640e-03, 3.631188086215660516e-03, 3.629634560095733754e-03, 3.628075213250838132e-03, 3.626510048493623937e-03, 3.624939068646004878e-03, 3.623362276539270847e-03, 3.621779675013967349e-03, 3.620191266919886835e-03, 3.618597055116283372e-03, 3.616997042471545645e-03, 3.615391231863380843e-03, 3.613779626178846311e-03, 3.612162228314184757e-03, 3.610539041174986447e-03, 3.608910067676056928e-03, 3.607275310741453467e-03, 3.605634773304543586e-03, 3.603988458307886243e-03, 3.602336368703299048e-03, 3.600678507451877345e-03, 3.599014877523921789e-03, 3.597345481898880232e-03, 3.595670323565594920e-03, 3.593989405521975065e-03, 3.592302730775252285e-03, 3.590610302341786311e-03, 3.588912123247107056e-03, 3.587208196526110206e-03, 3.585498525222690757e-03, 3.583783112390011901e-03, 3.582061961090444741e-03, 3.580335074395473750e-03, 3.578602455385820804e-03, 3.576864107151319847e-03, 3.575120032790948116e-03, 3.573370235412902038e-03, 3.571614718134476663e-03, 3.569853484082102964e-03, 3.568086536391397705e-03, 3.566313878207083218e-03, 3.564535512682915838e-03, 3.562751442981967366e-03, 3.560961672276213071e-03, 3.559166203746942821e-03, 3.557365040584374236e-03, 3.555558185987882109e-03, 3.553745643165984527e-03, 3.551927415336225344e-03, 3.550103505725217545e-03, 3.548273917568731724e-03, 3.546438654111503525e-03, 3.544597718607428796e-03, 3.542751114319376681e-03, 3.540898844519314078e-03, 3.539040912488272250e-03, 3.537177321516289143e-03, 3.535308074902375561e-03, 3.533433175954723334e-03, 3.531552627990469824e-03, 3.529666434335653694e-03, 3.527774598325582236e-03, 3.525877123304283628e-03, 3.523974012625051208e-03, 3.522065269649951244e-03, 3.520150897750149062e-03, 3.518230900305791518e-03, 3.516305280705982281e-03, 3.514374042348759712e-03, 3.512437188641214826e-03, 3.510494722999293101e-03, 3.508546648847998307e-03, 3.506592969621182606e-03, 3.504633688761684025e-03, 3.502668809721297405e-03, 3.500698335960729726e-03, 3.498722270949502101e-03, 3.496740618166290643e-03, 3.494753381098453758e-03, 3.492760563242326612e-03, 3.490762168103218530e-03, 3.488758199195203091e-03, 3.486748660041377908e-03, 3.484733554173586201e-03, 3.482712885132609789e-03, 3.480686656468123981e-03, 3.478654871738609544e-03, 3.476617534511416020e-03, 3.474574648362768661e-03, 3.472526216877694274e-03, 3.470472243650113593e-03, 3.468412732282715946e-03, 3.466347686387018234e-03, 3.464277109583427817e-03, 3.462201005501096360e-03, 3.460119377777906829e-03, 3.458032230060768385e-03, 3.455939566005137176e-03, 3.453841389275369347e-03, 3.451737703544632135e-03, 3.449628512494772471e-03, 3.447513819816493477e-03, 3.445393629209207460e-03, 3.443267944381050646e-03, 3.441136769049008524e-03, 3.439000106938695529e-03, 3.436857961784515504e-03, 3.434710337329618772e-03, 3.432557237325808454e-03, 3.430398665533683153e-03, 3.428234625722522463e-03, 3.426065121670196761e-03, 3.423890157163511985e-03, 3.421709735997721744e-03, 3.419523861976856913e-03, 3.417332538913681831e-03, 3.415135770629537312e-03, 3.412933560954452099e-03, 3.410725913727152402e-03, 3.408512832794956520e-03, 3.406294322013869377e-03, 3.404070385248499694e-03, 3.401841026372066923e-03, 3.399606249266501866e-03, 3.397366057822250214e-03, 3.395120455938385740e-03, 3.392869447522654965e-03, 3.390613036491294582e-03, 3.388351226769233983e-03, 3.386084022289926557e-03, 3.383811426995317166e-03, 3.381533444836143983e-03, 3.379250079771480095e-03, 3.376961335769031007e-03, 3.374667216805114691e-03, 3.372367726864517606e-03, 3.370062869940538067e-03, 3.367752650035089022e-03, 3.365437071158517649e-03, 3.363116137329760173e-03, 3.360789852576177503e-03, 3.358458220933673195e-03, 3.356121246446674370e-03, 3.353778933168055382e-03, 3.351431285159064098e-03, 3.349078306489693558e-03, 3.346720001238119493e-03, 3.344356373491095841e-03, 3.341987427343856305e-03, 3.339613166899968195e-03, 3.337233596271633410e-03, 3.334848719579249984e-03, 3.332458540951748188e-03, 3.330063064526505960e-03, 3.327662294449244829e-03, 3.325256234874097560e-03, 3.322844889963629846e-03, 3.320428263888726243e-03, 3.318006360828746303e-03, 3.315579184971332010e-03, 3.313146740512483684e-03, 3.310709031656657118e-03, 3.308266062616594880e-03, 3.305817837613285980e-03, 3.303364360876301104e-03, 3.300905636643281307e-03, 3.298441669160310109e-03, 3.295972462681801603e-03, 3.293498021470410691e-03, 3.291018349797169250e-03, 3.288533451941336085e-03, 3.286043332190438995e-03, 3.283547994840387962e-03, 3.281047444195239228e-03, 3.278541684567361399e-03, 3.276030720277424597e-03, 3.273514555654239572e-03, 3.270993195034982773e-03, 3.268466642764994694e-03, 3.265934903197739107e-03, 3.263397980695158674e-03, 3.260855879627154539e-03, 3.258308604371899005e-03, 3.255756159315861126e-03, 3.253198548853594198e-03, 3.250635777387820766e-03, 3.248067849329525428e-03, 3.245494769097755777e-03, 3.242916541119824497e-03, 3.240333169831104664e-03, 3.237744659675112577e-03, 3.235151015103574987e-03, 3.232552240576289874e-03, 3.229948340561133394e-03, 3.227339319534209931e-03, 3.224725181979600994e-03, 3.222105932389598536e-03, 3.219481575264519779e-03, 3.216852115112670777e-03, 3.214217556450687293e-03, 3.211577903803003106e-03, 3.208933161702217339e-03, 3.206283334689041115e-03, 3.203628427312129288e-03, 3.200968444128191905e-03, 3.198303389702024119e-03, 3.195633268606353113e-03, 3.192958085422013294e-03, 3.190277844737754616e-03, 3.187592551150335383e-03, 3.184902209264578628e-03, 3.182206823693232035e-03, 3.179506399056894646e-03, 3.176800939984424522e-03, 3.174090451112280414e-03, 3.171374937085226064e-03, 3.168654402555671438e-03, 3.165928852184037457e-03, 3.163198290638855742e-03, 3.160462722596309778e-03, 3.157722152740589233e-03, 3.154976585763874346e-03, 3.152226026366129058e-03, 3.149470479255195993e-03, 3.146709949146895332e-03, 3.143944440764800171e-03, 3.141173958840444685e-03, 3.138398508113132875e-03, 3.135618093330028774e-03, 3.132832719246198081e-03, 3.130042390624488031e-03, 3.127247112235433286e-03, 3.124446888857704361e-03, 3.121641725277386412e-03, 3.118831626288734709e-03, 3.116016596693482917e-03, 3.113196641301275037e-03, 3.110371764929576507e-03, 3.107541972403536721e-03, 3.104707268556040206e-03, 3.101867658227827184e-03, 3.099023146267266757e-03, 3.096173737530468362e-03, 3.093319436881350731e-03, 3.090460249191436318e-03, 3.087596179340049932e-03, 3.084727232214163912e-03, 3.081853412708318758e-03, 3.078974725725045544e-03, 3.076091176174224496e-03, 3.073202768973495261e-03, 3.070309509048362723e-03, 3.067411401331589411e-03, 3.064508450763984808e-03, 3.061600662293678492e-03, 3.058688040876524333e-03, 3.055770591476055387e-03, 3.052848319063325173e-03, 3.049921228616986595e-03, 3.046989325123354835e-03, 3.044052613576249487e-03, 3.041111098977044864e-03, 3.038164786334778857e-03, 3.035213680665926547e-03, 3.032257786994613149e-03, 3.029297110352449206e-03, 3.026331655778448197e-03, 3.023361428319468018e-03, 3.020386433029521867e-03, 3.017406674970297790e-03, 3.014422159211019910e-03, 3.011432890828302268e-03, 3.008438874906235998e-03, 3.005440116536476063e-03, 3.002436620818011402e-03, 2.999428392857410395e-03, 2.996415437768577134e-03, 2.993397760672858107e-03, 2.990375366699115495e-03, 2.987348260983576677e-03, 2.984316448669724516e-03, 2.981279934908780474e-03, 2.978238724858953915e-03, 2.975192823686248315e-03, 2.972142236563684106e-03, 2.969086968671752740e-03, 2.966027025198516871e-03, 2.962962411339055240e-03, 2.959893132295945365e-03, 2.956819193279152519e-03, 2.953740599505835871e-03, 2.950657356200502880e-03, 2.947569468595040952e-03, 2.944476941928498431e-03, 2.941379781447351315e-03, 2.938277992405229598e-03, 2.935171580063062127e-03, 2.932060549689103918e-03, 2.928944906558809957e-03, 2.925824655954734153e-03, 2.922699803167001613e-03, 2.919570353492547971e-03, 2.916436312235925598e-03, 2.913297684708561573e-03, 2.910154476229209579e-03, 2.907006692123874879e-03, 2.903854337725640840e-03, 2.900697418374757839e-03, 2.897535939418732168e-03, 2.894369906212118735e-03, 2.891199324116626879e-03, 2.888024198501179789e-03, 2.884844534741692890e-03, 2.881660338221345759e-03, 2.878471614330335802e-03, 2.875278368465826202e-03, 2.872080606032414302e-03, 2.868878332441426871e-03, 2.865671553111345544e-03, 2.862460273467950806e-03, 2.859244498943664531e-03, 2.856024234978380913e-03, 2.852799487018665460e-03, 2.849570260518261965e-03, 2.846336560937978884e-03, 2.843098393745539278e-03, 2.839855764415641099e-03, 2.836608678430098569e-03, 2.833357141277580236e-03, 2.830101158453711321e-03, 2.826840735461205560e-03, 2.823575877809569434e-03, 2.820306591015396200e-03, 2.817032880602119999e-03, 2.813754752099973788e-03, 2.810472211046451205e-03, 2.807185262985594475e-03, 2.803893913468468845e-03, 2.800598168053105783e-03, 2.797298032304263576e-03, 2.793993511793707498e-03, 2.790684612099951327e-03, 2.787371338808352760e-03, 2.784053697511223568e-03, 2.780731693807569817e-03, 2.777405333303240194e-03, 2.774074621610986714e-03, 2.770739564350291253e-03, 2.767400167147274909e-03, 2.764056435635214512e-03, 2.760708375453701287e-03, 2.757355992249506480e-03, 2.753999291675921293e-03, 2.750638279392867043e-03, 2.747272961067375677e-03, 2.743903342372822594e-03, 2.740529428989456600e-03, 2.737151226604278044e-03, 2.733768740910858842e-03, 2.730381977609604854e-03, 2.726990942407460979e-03, 2.723595641018065547e-03, 2.720196079161791083e-03, 2.716792262565612039e-03, 2.713384196963016751e-03, 2.709971888094299744e-03, 2.706555341706378716e-03, 2.703134563552555148e-03, 2.699709559392961429e-03, 2.696280334994210440e-03, 2.692846896129611964e-03, 2.689409248578784970e-03, 2.685967398128148546e-03, 2.682521350570679468e-03, 2.679071111705714874e-03, 2.675616687339069360e-03, 2.672158083283533714e-03, 2.668695305357859666e-03, 2.665228359387696207e-03, 2.661757251204856668e-03, 2.658281986647900285e-03, 2.654802571561822554e-03, 2.651319011797866575e-03, 2.647831313213949798e-03, 2.644339481674451951e-03, 2.640843523049921440e-03, 2.637343443217582753e-03, 2.633839248061065844e-03, 2.630330943470171514e-03, 2.626818535341321134e-03, 2.623302029577321594e-03, 2.619781432087122004e-03, 2.616256748786267329e-03, 2.612727985596652487e-03, 2.609195148446279491e-03, 2.605658243269799983e-03, 2.602117276007871217e-03, 2.598572252607707703e-03, 2.595023179022809285e-03, 2.591470061212751679e-03, 2.587912905143621885e-03, 2.584351716787778794e-03, 2.580786502123609896e-03, 2.577217267135987078e-03, 2.573644017816035037e-03, 2.570066760160873241e-03, 2.566485500174063485e-03, 2.562900243865332342e-03, 2.559310997250650952e-03, 2.555717766352066326e-03, 2.552120557197689633e-03, 2.548519375822321138e-03, 2.544914228266396787e-03, 2.541305120576624853e-03, 2.537692058806010221e-03, 2.534075049013673111e-03, 2.530454097264626164e-03, 2.526829209630231977e-03, 2.523200392187881745e-03, 2.519567651021123195e-03, 2.515930992219354411e-03, 2.512290421878291772e-03, 2.508645946099705409e-03, 2.504997570991167669e-03, 2.501345302666541440e-03, 2.497689147245725147e-03, 2.494029110854385604e-03, 2.490365199624445039e-03, 2.486697419693827821e-03, 2.483025777206193749e-03, 2.479350278311525692e-03, 2.475670929165431355e-03, 2.471987735929736564e-03, 2.468300704772198595e-03, 2.464609841866282399e-03, 2.460915153391619436e-03, 2.457216645533761776e-03, 2.453514324483921458e-03, 2.449808196439440169e-03, 2.446098267603572397e-03, 2.442384544185172320e-03, 2.438667032399235036e-03, 2.434945738466586917e-03, 2.431220668613670501e-03, 2.427491829073072718e-03, 2.423759226082812350e-03, 2.420022865887288491e-03, 2.416282754736208058e-03, 2.412538898885067170e-03, 2.408791304595655092e-03, 2.405039978135019903e-03, 2.401284925776066542e-03, 2.397526153797599306e-03, 2.393763668484180478e-03, 2.389997476125850593e-03, 2.386227583018606362e-03, 2.382453995464083648e-03, 2.378676719769693641e-03, 2.374895762248291527e-03, 2.371111129218653538e-03, 2.367322827005215440e-03, 2.363530861937918146e-03, 2.359735240352262790e-03, 2.355935968589878849e-03, 2.352133052997430404e-03, 2.348326499927628347e-03, 2.344516315738447154e-03, 2.340702506793705152e-03, 2.336885079462791732e-03, 2.333064040120431427e-03, 2.329239395147159660e-03, 2.325411150929052994e-03, 2.321579313857481935e-03, 2.317743890329600990e-03, 2.313904886748070246e-03, 2.310062309520824649e-03, 2.306216165061535876e-03, 2.302366459789354294e-03, 2.298513200128674775e-03, 2.294656392509680960e-03, 2.290796043367669590e-03, 2.286932159143637271e-03, 2.283064746284022006e-03, 2.279193811240336730e-03, 2.275319360470103025e-03, 2.271441400435732227e-03, 2.267559937605106556e-03, 2.263674978451658045e-03, 2.259786529454198539e-03, 2.255894597096623922e-03, 2.251999187868447116e-03, 2.248100308264516616e-03, 2.244197964784730697e-03, 2.240292163934587324e-03, 2.236382912224772583e-03, 2.232470216171375792e-03, 2.228554082295587657e-03, 2.224634517123773129e-03, 2.220711527188089836e-03, 2.216785119025416889e-03, 2.212855299177965505e-03, 2.208922074193336686e-03, 2.204985450624274024e-03, 2.201045435028807680e-03, 2.197102033969894428e-03, 2.193155254015953688e-03, 2.189205101740558743e-03, 2.185251583722193011e-03, 2.181294706544753981e-03, 2.177334476797278262e-03, 2.173370901073754663e-03, 2.169403985973197922e-03, 2.165433738100266698e-03, 2.161460164064098709e-03, 2.157483270479348524e-03, 2.153503063965396102e-03, 2.149519551146956541e-03, 2.145532738653793854e-03, 2.141542633120437338e-03, 2.137549241186728882e-03, 2.133552569497520687e-03, 2.129552624702402055e-03, 2.125549413456240180e-03, 2.121542942418869638e-03, 2.117533218254850826e-03, 2.113520247633969128e-03, 2.109504037230958227e-03, 2.105484593725226884e-03, 2.101461923801388031e-03, 2.097436034148971676e-03, 2.093406931462147777e-03, 2.089374622440332528e-03, 2.085339113787402533e-03, 2.081300412212717856e-03, 2.077258524429966263e-03, 2.073213457157790755e-03, 2.069165217119835545e-03, 2.065113811044599467e-03, 2.061059245665108983e-03, 2.057001527719483271e-03, 2.052940663950635850e-03, 2.048876661105983581e-03, 2.044809525938007418e-03, 2.040739265203854284e-03, 2.036665885665503613e-03, 2.032589394089508433e-03, 2.028509797247059990e-03, 2.024427101914597071e-03, 2.020341314872744782e-03, 2.016252442906802441e-03, 2.012160492807317774e-03, 2.008065471368862195e-03, 2.003967385391127159e-03, 1.999866241678097557e-03, 1.995762047038663646e-03, 1.991654808286349131e-03, 1.987544532239023630e-03, 1.983431225719427000e-03, 1.979314895554901751e-03, 1.975195548577095110e-03, 1.971073191622506326e-03, 1.966947831532187430e-03, 1.962819475151475219e-03, 1.958688129330510373e-03, 1.954553800923964236e-03, 1.950416496790745649e-03, 1.946276223794637158e-03, 1.942132988803553419e-03, 1.937986798690145319e-03, 1.933837660331551040e-03, 1.929685580609092265e-03, 1.925530566408807610e-03, 1.921372624621163787e-03, 1.917211762140792796e-03, 1.913047985867003887e-03, 1.908881302703508386e-03, 1.904711719558139973e-03, 1.900539243343371413e-03, 1.896363880976059332e-03, 1.892185639377130888e-03, 1.888004525472223010e-03, 1.883820546190855373e-03, 1.879633708467506577e-03, 1.875444019240406776e-03, 1.871251485452093662e-03, 1.867056114049951091e-03, 1.862857911985065906e-03, 1.858656886212895366e-03, 1.854453043693323963e-03, 1.850246391390394322e-03, 1.846036936272468093e-03, 1.841824685311843450e-03, 1.837609645485307596e-03, 1.833391823773836008e-03, 1.829171227162317698e-03, 1.824947862640081053e-03, 1.820721737200625386e-03, 1.816492857841401276e-03, 1.812261231563915085e-03, 1.808026865374353460e-03, 1.803789766282360135e-03, 1.799549941302146369e-03, 1.795307397451650477e-03, 1.791062141753158856e-03, 1.786814181233041445e-03, 1.782563522921416484e-03, 1.778310173852750082e-03, 1.774054141065535724e-03, 1.769795431602003708e-03, 1.765534052508675169e-03, 1.761270010836075853e-03, 1.757003313638418225e-03, 1.752733967974193230e-03, 1.748461980905836573e-03, 1.744187359499463092e-03, 1.739910110825406905e-03, 1.735630241957935617e-03, 1.731347759974933296e-03, 1.727062671958577668e-03, 1.722774984994471237e-03, 1.718484706172750641e-03, 1.714191842586858467e-03, 1.709896401334183363e-03, 1.705598389516157836e-03, 1.701297814238042928e-03, 1.696994682608637646e-03, 1.692689001740843406e-03, 1.688380778751254847e-03, 1.684070020760353257e-03, 1.679756734892115175e-03, 1.675440928274556660e-03, 1.671122608039454652e-03, 1.666801781322129481e-03, 1.662478455261538106e-03, 1.658152637000927026e-03, 1.653824333686667843e-03, 1.649493552468926649e-03, 1.645160300501744477e-03, 1.640824584942728731e-03, 1.636486412953245964e-03, 1.632145791698018334e-03, 1.627802728345689558e-03, 1.623457230068528490e-03, 1.619109304042124246e-03, 1.614758957445947603e-03, 1.610406197463066721e-03, 1.606051031279829254e-03, 1.601693466086431990e-03, 1.597333509076630936e-03, 1.592971167447422782e-03, 1.588606448399628411e-03, 1.584239359137583911e-03, 1.579869906868833522e-03, 1.575498098804807047e-03, 1.571123942160016461e-03, 1.566747444152744593e-03, 1.562368612004726588e-03, 1.557987452940845247e-03, 1.553603974189716064e-03, 1.549218182983363046e-03, 1.544830086556939425e-03, 1.540439692149277130e-03, 1.536047007002600126e-03, 1.531652038362212162e-03, 1.527254793477059256e-03, 1.522855279599452790e-03, 1.518453503984737744e-03, 1.514049473891975525e-03, 1.509643196583054705e-03, 1.505234679323848518e-03, 1.500823929382928993e-03, 1.496410954032250870e-03, 1.491995760547223807e-03, 1.487578356206510502e-03, 1.483158748291724203e-03, 1.478736944087998342e-03, 1.474312950883585605e-03, 1.469886775970045923e-03, 1.465458426641833185e-03, 1.461027910196880265e-03, 1.456595233936288074e-03, 1.452160405164116749e-03, 1.447723431187478236e-03, 1.443284319317198958e-03, 1.438843076866648443e-03, 1.434399711152290749e-03, 1.429954229494288581e-03, 1.425506639215201382e-03, 1.421056947641143042e-03, 1.416605162100904132e-03, 1.412151289926614778e-03, 1.407695338453447600e-03, 1.403237315019295692e-03, 1.398777226965369162e-03, 1.394315081635872245e-03, 1.389850886377704290e-03, 1.385384648541038285e-03, 1.380916375479008824e-03, 1.376446074547413734e-03, 1.371973753105273745e-03, 1.367499418514553193e-03, 1.363023078139822403e-03, 1.358544739348962636e-03, 1.354064409512341230e-03, 1.349582096003510692e-03, 1.345097806198884520e-03, 1.340611547477435148e-03, 1.336123327221283965e-03, 1.331633152815371937e-03, 1.327141031647167740e-03, 1.322646971107244336e-03, 1.318150978588965424e-03, 1.313653061488188152e-03, 1.309153227203828851e-03, 1.304651483137466220e-03, 1.300147836693528892e-03, 1.295642295278874763e-03, 1.291134866303383184e-03, 1.286625557179645312e-03, 1.282114375322750089e-03, 1.277601328150370546e-03, 1.273086423083455302e-03, 1.268569667545010578e-03, 1.264051068960792999e-03, 1.259530634759395027e-03, 1.255008372371936185e-03, 1.250484289232240863e-03, 1.245958392776444533e-03, 1.241430690443559711e-03, 1.236901189675183648e-03, 1.232369897915169604e-03, 1.227836822610224891e-03, 1.223301971209598193e-03, 1.218765351164759507e-03, 1.214226969929999055e-03, 1.209686834962103762e-03, 1.205144953720056929e-03, 1.200601333665713474e-03, 1.196055982262994805e-03, 1.191508906978576855e-03, 1.186960115281579997e-03, 1.182409614643250076e-03, 1.177857412537547345e-03, 1.173303516440840936e-03, 1.168747933831587940e-03, 1.164190672190926895e-03, 1.159631739002364454e-03, 1.155071141751463134e-03, 1.150508887926421364e-03, 1.145944985017780752e-03, 1.141379440518089762e-03, 1.136812261922510005e-03, 1.132243456728391660e-03, 1.127673032435476657e-03, 1.123100996545558887e-03, 1.118527356562602163e-03, 1.113952119993415462e-03, 1.109375294346434063e-03, 1.104796887132413656e-03, 1.100216905864519245e-03, 1.095635358058115244e-03, 1.091052251230440655e-03, 1.086467592901213617e-03, 1.081881390592204662e-03, 1.077293651827435344e-03, 1.072704384132754530e-03, 1.068113595036436665e-03, 1.063521292068873208e-03, 1.058927482762332369e-03, 1.054332174651083148e-03, 1.049735375272066885e-03, 1.045137092163571499e-03, 1.040537332866449697e-03, 1.035936104923173770e-03, 1.031333415878544872e-03, 1.026729273279382943e-03, 1.022123684674186702e-03, 1.017516657613759664e-03, 1.012908199650870136e-03, 1.008298318339944820e-03, 1.003687021237662522e-03, 9.990743159026408207e-04, 9.944602098951129711e-04, 9.898447107775322409e-04, 9.852278261142488180e-04, 9.806095634711932234e-04, 9.759899304164779349e-04, 9.713689345200762467e-04, 9.667465833535076334e-04, 9.621228844905302304e-04, 9.574978455063271401e-04, 9.528714739781925149e-04, 9.482437774852262458e-04, 9.436147636080054494e-04, 9.389844399291892357e-04, 9.343528140332053736e-04, 9.297198935059146222e-04, 9.250856859352317614e-04, 9.204501989107926338e-04, 9.158134400236400512e-04, 9.111754168668248759e-04, 9.065361370349849174e-04, 9.018956081245320649e-04, 8.972538377333444826e-04, 8.926108334608391431e-04, 8.879666029086936887e-04, 8.833211536795950456e-04, 8.786744933779470825e-04, 8.740266296099546365e-04, 8.693775699834222848e-04, 8.647273221074103277e-04, 8.600758935928621077e-04, 8.554232920521615468e-04, 8.507695250993421807e-04, 8.461146003496458883e-04, 8.414585254201478260e-04, 8.368013079294181564e-04, 8.321429554972104492e-04, 8.274834757450616777e-04, 8.228228762959754160e-04, 8.181611647740964690e-04, 8.134983488053221462e-04, 8.088344360169728809e-04, 8.041694340374715231e-04, 7.995033504970630329e-04, 7.948361930269656588e-04, 7.901679692600829330e-04, 7.854986868306862175e-04, 7.808283533740877080e-04, 7.761569765272478046e-04, 7.714845639284571149e-04, 7.668111232170102178e-04, 7.621366620338142260e-04, 7.574611880210646098e-04, 7.527847088219235139e-04, 7.481072320811329827e-04, 7.434287654446823266e-04, 7.387493165594941373e-04, 7.340688930741304285e-04, 7.293875026378502475e-04, 7.247051529018418712e-04, 7.200218515178607222e-04, 7.153376061388384746e-04, 7.106524244194994218e-04, 7.059663140150921777e-04, 7.012792825821099118e-04, 6.965913377783847834e-04, 6.919024872628609093e-04, 6.872127386952735489e-04, 6.825220997367598347e-04, 6.778305780494339825e-04, 6.731381812965730148e-04, 6.684449171422006441e-04, 6.637507932516880293e-04, 6.590558172914356711e-04, 6.543599969286546195e-04, 6.496633398314462715e-04, 6.449658536695359419e-04, 6.402675461128908311e-04, 6.355684248329672914e-04, 6.308684975017562948e-04, 6.261677717925021513e-04, 6.214662553793764890e-04, 6.167639559371522343e-04, 6.120608811418196561e-04, 6.073570386702578519e-04, 6.026524361999084037e-04, 5.979470814093965168e-04, 5.932409819781927487e-04, 5.885341455863008680e-04, 5.838265799148596941e-04, 5.791182926458285710e-04, 5.744092914616498544e-04, 5.696995840459797731e-04, 5.649891780828286561e-04, 5.602780812572883242e-04, 5.555663012552018417e-04, 5.508538457627347147e-04, 5.461407224675095089e-04, 5.414269390572401877e-04, 5.367125032204431330e-04, 5.319974226465340721e-04, 5.272817050256090694e-04, 5.225653580481127601e-04, 5.178483894054560204e-04, 5.131308067896895144e-04, 5.084126178931756140e-04, 5.036938304092076959e-04, 4.989744520315737494e-04, 4.942544904547603157e-04, 4.895339533736149749e-04, 4.848128484834513517e-04, 4.800911834807596468e-04, 4.753689660619405061e-04, 4.706462039240290503e-04, 4.659229047647830209e-04, 4.611990762823550260e-04, 4.564747261754954484e-04, 4.517498621431129103e-04, 4.470244918848988820e-04, 4.422986231009933683e-04, 4.375722634916624667e-04, 4.328454207579119717e-04, 4.281181026011638487e-04, 4.233903167230290395e-04, 4.186620708254044985e-04, 4.139333726111948377e-04, 4.092042297829295351e-04, 4.044746500440177359e-04, 3.997446410977864573e-04, 3.950142106482041303e-04, 3.902833663995533336e-04, 3.855521160561012502e-04, 3.808204673227206442e-04, 3.760884279045614018e-04, 3.713560055067173559e-04, 3.666232078348542560e-04, 3.618900425948734490e-04, 3.571565174925883527e-04, 3.524226402343384398e-04, 3.476884185266684770e-04, 3.429538600759933433e-04, 3.382189725892192239e-04, 3.334837637734181870e-04, 3.287482413354955507e-04, 3.240124129829166232e-04, 3.192762864227450159e-04, 3.145398693628977159e-04, 3.098031695107574695e-04, 3.050661945739015289e-04, 3.003289522601949478e-04, 2.955914502775644167e-04, 2.908536963336720810e-04, 2.861156981365334815e-04, 2.813774633941910474e-04, 2.766389998143840650e-04, 2.719003151051665101e-04, 2.671614169744775959e-04, 2.624223131303366039e-04, 2.576830112805150752e-04, 2.529435191326285886e-04, 2.482038443948653443e-04, 2.434639947747043386e-04, 2.387239779795390787e-04, 2.339838017172948727e-04, 2.292434736950491828e-04, 2.245030016202788099e-04, 2.197623931999033561e-04, 2.150216561410100145e-04, 2.102807981505223987e-04, 2.055398269348741175e-04, 2.007987502006270677e-04, 1.960575756541443578e-04, 1.913163110012596532e-04, 1.865749639478989661e-04, 1.818335421997514106e-04, 1.770920534619391717e-04, 1.723505054396389695e-04, 1.676089058377533024e-04, 1.628672623605802801e-04, 1.581255827125403648e-04, 1.533838745973200679e-04, 1.486421457185977692e-04, 1.439004037797145805e-04, 1.391586564833448020e-04, 1.344169115321177397e-04, 1.296751766282884868e-04, 1.249334594734065112e-04, 1.201917677689398839e-04, 1.154501092159442455e-04, 1.107084915147329242e-04, 1.059669223654998230e-04, 1.012254094679888470e-04, 9.648396052116454979e-05, 9.174258322394005286e-05, 8.700128527421258041e-05, 8.226007437011949384e-05, 7.751895820865255943e-05, 7.277794448627788158e-05, 6.803704089956003737e-05, 6.329625514387888260e-05, 5.855559491415825765e-05, 5.381506790495916784e-05, 4.907468181014969135e-05, 4.433444432310443853e-05, 3.959436313626877034e-05, 3.485444594178108981e-05, 3.011470043114286845e-05, 2.537513429488907251e-05, 2.063575522321019350e-05, 1.589657090562253216e-05, 1.115758903074419206e-05, 6.418817286388597205e-06, 1.680263360291705546e-06, -3.058065061274399066e-06, -7.796160292245657718e-06, -1.253401464772966474e-05, -1.727162044327839653e-05, -2.200896999521761822e-05, -2.674605562097639942e-05, -3.148286963846551567e-05, -3.621940436640695612e-05, -4.095565212466317203e-05, -4.569160523361568663e-05, -5.042725601449470947e-05, -5.516259678970812408e-05, -5.989761988222005713e-05, -6.463231761588076729e-05, -6.936668231575516522e-05, -7.410070630739688607e-05, -7.883438191770453132e-05, -8.356770147419570059e-05, -8.830065730533541001e-05, -9.303324174097153492e-05, -9.776544711118605700e-05, -1.024972657476791568e-04, -1.072286899830428525e-04, -1.119597121506680295e-04, -1.166903245849680977e-04, -1.214205196217083590e-04, -1.261502895973828616e-04, -1.308796268496533529e-04, -1.356085237171455039e-04, -1.403369725398877536e-04, -1.450649656586877839e-04, -1.497924954154623617e-04, -1.545195541534614427e-04, -1.592461342171738194e-04, -1.639722279516017353e-04, -1.686978277035393217e-04, -1.734229258208456136e-04, -1.781475146523531239e-04, -1.828715865481948116e-04, -1.875951338596060257e-04, -1.923181489393598932e-04, -1.970406241411465592e-04, -2.017625518198992881e-04, -2.064839243321278282e-04, -2.112047340352933155e-04, -2.159249732881406896e-04, -2.206446344510259604e-04, -2.253637098852944180e-04, -2.300821919536131307e-04, -2.348000730202940637e-04, -2.395173454506795000e-04, -2.442340016114674358e-04, -2.489500338710398772e-04, -2.536654345987401113e-04, -2.583801961657246175e-04, -2.630943109442405829e-04, -2.678077713079523550e-04, -2.725205696322716901e-04, -2.772326982937362342e-04, -2.819441496703399335e-04, -2.866549161418571572e-04, -2.913649900892292008e-04, -2.960743638948881381e-04, -3.007830299430845210e-04, -3.054909806192724199e-04, -3.101982083104325161e-04, -3.149047054054039218e-04, -3.196104642941568976e-04, -3.243154773687535091e-04, -3.290197370220992773e-04, -3.337232356493195730e-04, -3.384259656470362909e-04, -3.431279194132783495e-04, -3.478290893476990186e-04, -3.525294678519093664e-04, -3.572290473288523491e-04, -3.619278201832457076e-04, -3.666257788213733129e-04, -3.713229156515243223e-04, -3.760192230833744789e-04, -3.807146935283119149e-04, -3.854093193996584914e-04, -3.901030931125793215e-04, -3.947960070833604748e-04, -3.994880537306782532e-04, -4.041792254749836891e-04, -4.088695147378836286e-04, -4.135589139435188609e-04, -4.182474155173172316e-04, -4.229350118869474153e-04, -4.276216954815992223e-04, -4.323074587323097809e-04, -4.369922940722916708e-04, -4.416761939363131936e-04, -4.463591507610264520e-04, -4.510411569852965140e-04, -4.557222050495795141e-04, -4.604022873962555036e-04, -4.650813964699476938e-04, -4.697595247169142731e-04, -4.744366645853659152e-04, -4.791128085258019361e-04, -4.837879489902800843e-04, -4.884620784332728430e-04, -4.931351893109422622e-04, -4.978072740814730793e-04, -5.024783252053889810e-04, -5.071483351449423060e-04, -5.118172963644452688e-04, -5.164852013305854623e-04, -5.211520425118139344e-04, -5.258178123786793386e-04, -5.304825034041404019e-04, -5.351461080629611559e-04, -5.398086188321357280e-04, -5.444700281906947022e-04, -5.491303286200288625e-04, -5.537895126037908552e-04, -5.584475726271949034e-04, -5.631045011782573502e-04, -5.677602907471999147e-04, -5.724149338258322384e-04, -5.770684229088101020e-04, -5.817207504929221284e-04, -5.863719090769967590e-04, -5.910218911622277301e-04, -5.956706892519767491e-04, -6.003182958522009947e-04, -6.049647034708446631e-04, -6.096099046181581568e-04, -6.142538918070255139e-04, -6.188966575523506411e-04, -6.235381943713848513e-04, -6.281784947840429083e-04, -6.328175513123033549e-04, -6.374553564805218470e-04, -6.420919028157554389e-04, -6.467271828470568754e-04, -6.513611891063088863e-04, -6.559939141275087206e-04, -6.606253504471006717e-04, -6.652554906042865927e-04, -6.698843271404262244e-04, -6.745118525993567095e-04, -6.791380595277095051e-04, -6.837629404743159143e-04, -6.883864879905116389e-04, -6.930086946304724483e-04, -6.976295529505979190e-04, -7.022490555098381045e-04, -7.068671948700141344e-04, -7.114839635952079164e-04, -7.160993542521905050e-04, -7.207133594102295470e-04, -7.253259716414042421e-04, -7.299371835205165472e-04, -7.345469876243853604e-04, -7.391553765330923778e-04, -7.437623428292668452e-04, -7.483678790980110738e-04, -7.529719779270979815e-04, -7.575746319073030756e-04, -7.621758336318029377e-04, -7.667755756965866781e-04, -7.713738507002699954e-04, -7.759706512445204004e-04, -7.805659699334449673e-04, -7.851597993739128836e-04, -7.897521321757791212e-04, -7.943429609517855573e-04, -7.989322783168554837e-04, -8.035200768894452819e-04, -8.081063492903190577e-04, -8.126910881434877771e-04, -8.172742860754992223e-04, -8.218559357157586990e-04, -8.264360296968520196e-04, -8.310145606539424707e-04, -8.355915212250759070e-04, -8.401669040515227088e-04, -8.447407017771591366e-04, -8.493129070487900976e-04, -8.538835125164720213e-04, -8.584525108329012612e-04, -8.630198946537440173e-04, -8.675856566379477192e-04, -8.721497894471447144e-04, -8.767122857459610499e-04, -8.812731382023460689e-04, -8.858323394868639934e-04, -8.903898822735195444e-04, -8.949457592390619920e-04, -8.994999630632978397e-04, -9.040524864294084955e-04, -9.086033220233581892e-04, -9.131524625341965731e-04, -9.176999006543903794e-04, -9.222456290792162672e-04, -9.267896405070809871e-04, -9.313319276398392696e-04, -9.358724831821889486e-04, -9.404112998420994379e-04, -9.449483703306086604e-04, -9.494836873621497180e-04, -9.540172436544552652e-04, -9.585490319278614510e-04, -9.630790449065318752e-04, -9.676072753177689025e-04, -9.721337158919118567e-04, -9.766583593625666540e-04, -9.811811984669059107e-04, -9.857022259450764264e-04, -9.902214345406269019e-04, -9.947388170003063860e-04, -9.992543660744825605e-04, -1.003768074516543478e-03, -1.008279935083223689e-03, -1.012789940534809374e-03, -1.017298083635043149e-03, -1.021804357150443406e-03, -1.026308753851617279e-03, -1.030811266512163217e-03, -1.035311887909095554e-03, -1.039810610823146140e-03, -1.044307428038073913e-03, -1.048802332341491504e-03, -1.053295316524153124e-03, -1.057786373380290891e-03, -1.062275495707910161e-03, -1.066762676308205798e-03, -1.071247907985874203e-03, -1.075731183549426219e-03, -1.080212495810595804e-03, -1.084691837584649682e-03, -1.089169201690705227e-03, -1.093644580951136759e-03, -1.098117968191890609e-03, -1.102589356242794335e-03, -1.107058737936864349e-03, -1.111526106111225759e-03, -1.115991453605923210e-03, -1.120454773265219545e-03, -1.124916057936924032e-03, -1.129375300472293918e-03, -1.133832493726249753e-03, -1.138287630557679618e-03, -1.142740703828864493e-03, -1.147191706405776418e-03, -1.151640631158393126e-03, -1.156087470960119948e-03, -1.160532218688183157e-03, -1.164974867223451949e-03, -1.169415409450856504e-03, -1.173853838258781925e-03, -1.178290146539396743e-03, -1.182724327188848512e-03, -1.187156373107190084e-03, -1.191586277197683981e-03, -1.196014032368110814e-03, -1.200439631529584463e-03, -1.204863067597464546e-03, -1.209284333490662526e-03, -1.213703422131963937e-03, -1.218120326448321553e-03, -1.222535039370284014e-03, -1.226947553832301351e-03, -1.231357862773031601e-03, -1.235765959134756207e-03, -1.240171835863697249e-03, -1.244575485910310404e-03, -1.248976902228719202e-03, -1.253376077777011884e-03, -1.257773005517554736e-03, -1.262167678416305141e-03, -1.266560089443623640e-03, -1.270950231573579397e-03, -1.275338097784275678e-03, -1.279723681058234520e-03, -1.284106974381349396e-03, -1.288487970744147011e-03, -1.292866663141133523e-03, -1.297243044570698268e-03, -1.301617108035325399e-03, -1.305988846541883148e-03, -1.310358253101072184e-03, -1.314725320727714664e-03, -1.319090042441063444e-03, -1.323452411264218996e-03, -1.327812420224541408e-03, -1.332170062353470403e-03, -1.336525330686809399e-03, -1.340878218264661328e-03, -1.345228718130735612e-03, -1.349576823333554229e-03, -1.353922526925753055e-03, -1.358265821964017676e-03, -1.362606701509380246e-03, -1.366945158627027148e-03, -1.371281186386708604e-03, -1.375614777862160364e-03, -1.379945926131421596e-03, -1.384274624277108097e-03, -1.388600865385870636e-03, -1.392924642548680307e-03, -1.397245948861038870e-03, -1.401564777422885507e-03, -1.405881121337947386e-03, -1.410194973714985192e-03, -1.414506327666661002e-03, -1.418815176310422128e-03, -1.423121512767814168e-03, -1.427425330164800625e-03, -1.431726621632062367e-03, -1.436025380304415192e-03, -1.440321599321131183e-03, -1.444615271826219741e-03, -1.448906390967870730e-03, -1.453194949898752204e-03, -1.457480941776316801e-03, -1.461764359762214322e-03, -1.466045197022615692e-03, -1.470323446728500922e-03, -1.474599102055089905e-03, -1.478872156182146859e-03, -1.483142602294279782e-03, -1.487410433580286465e-03, -1.491675643234003203e-03, -1.495938224453193053e-03, -1.500198170440786597e-03, -1.504455474404233157e-03, -1.508710129555405378e-03, -1.512962129110805238e-03, -1.517211466291866961e-03, -1.521458134324381100e-03, -1.525702126438814371e-03, -1.529943435870578534e-03, -1.534182055859489597e-03, -1.538417979650157693e-03, -1.542651200491795610e-03, -1.546881711638528438e-03, -1.551109506349297295e-03, -1.555334577887220295e-03, -1.559556919520722288e-03, -1.563776524522898217e-03, -1.567993386171428766e-03, -1.572207497748851846e-03, -1.576418852542427283e-03, -1.580627443844478779e-03, -1.584833264951871325e-03, -1.589036309166282903e-03, -1.593236569794522373e-03, -1.597434040147945739e-03, -1.601628713542775553e-03, -1.605820583300374355e-03, -1.610009642746702569e-03, -1.614195885212611238e-03, -1.618379304034115460e-03, -1.622559892551877657e-03, -1.626737644111465398e-03, -1.630912552063661699e-03, -1.635084609763816019e-03, -1.639253810572591707e-03, -1.643420147855347794e-03, -1.647583614982406353e-03, -1.651744205329350656e-03, -1.655901912276479607e-03, -1.660056729209099819e-03, -1.664208649517795371e-03, -1.668357666597914324e-03, -1.672503773849825463e-03, -1.676646964679228595e-03, -1.680787232496595320e-03, -1.684924570717470215e-03, -1.689058972762741461e-03, -1.693190432058026742e-03, -1.697318942034491606e-03, -1.701444496127773503e-03, -1.705567087779170498e-03, -1.709686710435115659e-03, -1.713803357546635599e-03, -1.717917022570437284e-03, -1.722027698968316058e-03, -1.726135380207047222e-03, -1.730240059758671178e-03, -1.734341731100334490e-03, -1.738440387714663277e-03, -1.742536023089212441e-03, -1.746628630716763391e-03, -1.750718204095600078e-03, -1.754804736728977519e-03, -1.758888222125407162e-03, -1.762968653798834473e-03, -1.767046025268584515e-03, -1.771120330058708605e-03, -1.775191561699190164e-03, -1.779259713724866366e-03, -1.783324779676248020e-03, -1.787386753098900048e-03, -1.791445627543724467e-03, -1.795501396567235992e-03, -1.799554053731038149e-03, -1.803603592602087604e-03, -1.807650006753007930e-03, -1.811693289761520187e-03, -1.815733435210744977e-03, -1.819770436689488458e-03, -1.823804287791693955e-03, -1.827834982116734912e-03, -1.831862513269692664e-03, -1.835886874860725212e-03, -1.839908060505821398e-03, -1.843926063826160358e-03, -1.847940878448400348e-03, -1.851952498005037190e-03, -1.855960916133451467e-03, -1.859966126477059735e-03, -1.863968122684698907e-03, -1.867966898410574218e-03, -1.871962447314417079e-03, -1.875954763061759168e-03, -1.879943839323452992e-03, -1.883929669775981103e-03, -1.887912248101329899e-03, -1.891891567987336346e-03, -1.895867623127166050e-03, -1.899840407219594495e-03, -1.903809913969185070e-03, -1.907776137086231822e-03, -1.911739070286122165e-03, -1.915698707290423462e-03, -1.919655041826276312e-03, -1.923608067626313232e-03, -1.927557778428916693e-03, -1.931504167978092927e-03, -1.935447230023791109e-03, -1.939386958321402460e-03, -1.943323346632050592e-03, -1.947256388722830691e-03, -1.951186078366317495e-03, -1.955112409340844810e-03, -1.959035375430740779e-03, -1.962954970425856253e-03, -1.966871188121813944e-03, -1.970784022320276867e-03, -1.974693466828444412e-03, -1.978599515459327288e-03, -1.982502162032004703e-03, -1.986401400371031953e-03, -1.990297224307159031e-03, -1.994189627676701791e-03, -1.998078604321835983e-03, -2.001964148090869602e-03, -2.005846252837713371e-03, -2.009724912422162623e-03, -2.013600120710169229e-03, -2.017471871573328114e-03, -2.021340158889138768e-03, -2.025204976541282800e-03, -2.029066318419124777e-03, -2.032924178417961584e-03, -2.036778550439298681e-03, -2.040629428390254661e-03, -2.044476806184355750e-03, -2.048320677740501482e-03, -2.052161036984094435e-03, -2.055997877846457798e-03, -2.059831194264738225e-03, -2.063660980182109670e-03, -2.067487229548030554e-03, -2.071309936317731592e-03, -2.075129094452579648e-03, -2.078944697919914240e-03, -2.082756740693392748e-03, -2.086565216752497322e-03, -2.090370120082785110e-03, -2.094171444676079085e-03, -2.097969184530403854e-03, -2.101763333649366364e-03, -2.105553886043218421e-03, -2.109340835728341045e-03, -2.113124176726750066e-03, -2.116903903067195516e-03, -2.120680008784171962e-03, -2.124452487918677881e-03, -2.128221334517637134e-03, -2.131986542634167411e-03, -2.135748106327827866e-03, -2.139506019664137292e-03, -2.143260276714827831e-03, -2.147010871558110816e-03, -2.150757798278177604e-03, -2.154501050965466728e-03, -2.158240623716921932e-03, -2.161976510635493873e-03, -2.165708705830409440e-03, -2.169437203417421550e-03, -2.173161997518248834e-03, -2.176883082261239603e-03, -2.180600451780789848e-03, -2.184314100217630769e-03, -2.188024021719061230e-03, -2.191730210438471577e-03, -2.195432660535589532e-03, -2.199131366176747780e-03, -2.202826321534408650e-03, -2.206517520787394833e-03, -2.210204958121157835e-03, -2.213888627727298754e-03, -2.217568523803901352e-03, -2.221244640555375925e-03, -2.224916972192717782e-03, -2.228585512933427878e-03, -2.232250257000952063e-03, -2.235911198625681155e-03, -2.239568332044453072e-03, -2.243221651500078816e-03, -2.246871151242345148e-03, -2.250516825527420443e-03, -2.254158668617821729e-03, -2.257796674782627626e-03, -2.261430838297360819e-03, -2.265061153444298137e-03, -2.268687614512006085e-03, -2.272310215795577196e-03, -2.275928951596898047e-03, -2.279543816224169177e-03, -2.283154803992148377e-03, -2.286761909222417843e-03, -2.290365126242885005e-03, -2.293964449388056180e-03, -2.297559872999275100e-03, -2.301151391424170398e-03, -2.304738999017312204e-03, -2.308322690139653563e-03, -2.311902459158770261e-03, -2.315478300449150088e-03, -2.319050208391652042e-03, -2.322618177373834622e-03, -2.326182201790147081e-03, -2.329742276041465391e-03, -2.333298394535384106e-03, -2.336850551686397645e-03, -2.340398741915488724e-03, -2.343942959650351272e-03, -2.347483199325628954e-03, -2.351019455382469779e-03, -2.354551722268827512e-03, -2.358079994439331566e-03, -2.361604266355532902e-03, -2.365124532485815122e-03, -2.368640787304874054e-03, -2.372153025294645393e-03, -2.375661240943799466e-03, -2.379165428747623268e-03, -2.382665583208230364e-03, -2.386161698834786838e-03, -2.389653770143039882e-03, -2.393141791655652596e-03, -2.396625757902056102e-03, -2.400105663418766137e-03, -2.403581502748924643e-03, -2.407053270442534396e-03, -2.410520961056646788e-03, -2.413984569155262945e-03, -2.417444089308815047e-03, -2.420899516095182877e-03, -2.424350844098768776e-03, -2.427798067911208016e-03, -2.431241182130818891e-03, -2.434680181362879840e-03, -2.438115060219820263e-03, -2.441545813320806797e-03, -2.444972435291969688e-03, -2.448394920766619205e-03, -2.451813264384834507e-03, -2.455227460793678752e-03, -2.458637504647437182e-03, -2.462043390607159595e-03, -2.465445113340922288e-03, -2.468842667524047060e-03, -2.472236047838648459e-03, -2.475625248973883571e-03, -2.479010265626184050e-03, -2.482391092498728320e-03, -2.485767724302056537e-03, -2.489140155753558417e-03, -2.492508381577696139e-03, -2.495872396506248082e-03, -2.499232195277859524e-03, -2.502587772638275535e-03, -2.505939123340585137e-03, -2.509286242144765072e-03, -2.512629123817922226e-03, -2.515967763134520450e-03, -2.519302154875952514e-03, -2.522632293830822433e-03, -2.525958174794822736e-03, -2.529279792570984699e-03, -2.532597141969553881e-03, -2.535910217807542128e-03, -2.539219014909587565e-03, -2.542523528107458897e-03, -2.545823752239976048e-03, -2.549119682153195340e-03, -2.552411312700583832e-03, -2.555698638742664140e-03, -2.558981655147234743e-03, -2.562260356789287149e-03, -2.565534738551299935e-03, -2.568804795322758225e-03, -2.572070522000471145e-03, -2.575331913488625602e-03, -2.578588964698799724e-03, -2.581841670549428567e-03, -2.585090025966745638e-03, -2.588334025884005737e-03, -2.591573665241809783e-03, -2.594808938988278722e-03, -2.598039842078577778e-03, -2.601266369475522741e-03, -2.604488516149050872e-03, -2.607706277076463769e-03, -2.610919647242641167e-03, -2.614128621639622441e-03, -2.617333195266832984e-03, -2.620533363131299746e-03, -2.623729120247238374e-03, -2.626920461636263106e-03, -2.630107382327621403e-03, -2.633289877357758522e-03, -2.636467941770565156e-03, -2.639641570617564346e-03, -2.642810758957446146e-03, -2.645975501856713367e-03, -2.649135794388818559e-03, -2.652291631635121574e-03, -2.655443008684370883e-03, -2.658589920632669756e-03, -2.661732362583605922e-03, -2.664870329648463213e-03, -2.668003816945846863e-03, -2.671132819601850471e-03, -2.674257332750314044e-03, -2.677377351532379910e-03, -2.680492871096805396e-03, -2.683603886599831862e-03, -2.686710393205437534e-03, -2.689812386084962370e-03, -2.692909860417299749e-03, -2.696002811389082952e-03, -2.699091234194566768e-03, -2.702175124035182969e-03, -2.705254476120451477e-03, -2.708329285667145526e-03, -2.711399547899926571e-03, -2.714465258050857265e-03, -2.717526411359636514e-03, -2.720583003073798103e-03, -2.723635028448293059e-03, -2.726682482745752031e-03, -2.729725361236646618e-03, -2.732763659198885180e-03, -2.735797371918077814e-03, -2.738826494687706357e-03, -2.741851022808725405e-03, -2.744870951589772207e-03, -2.747886276347399990e-03, -2.750896992405591802e-03, -2.753903095096312589e-03, -2.756904579759046452e-03, -2.759901441740995279e-03, -2.762893676397377984e-03, -2.765881279090673731e-03, -2.768864245191514015e-03, -2.771842570078219062e-03, -2.774816249136745783e-03, -2.777785277760800101e-03, -2.780749651352087178e-03, -2.783709365319892923e-03, -2.786664415081277837e-03, -2.789614796061314680e-03, -2.792560503692674730e-03, -2.795501533415911417e-03, -2.798437880679334119e-03, -2.801369540939200285e-03, -2.804296509659676400e-03, -2.807218782312367877e-03, -2.810136354377122236e-03, -2.813049221341584142e-03, -2.815957378701113879e-03, -2.818860821959006356e-03, -2.821759546626385722e-03, -2.824653548222432180e-03, -2.827542822274030712e-03, -2.830427364315946711e-03, -2.833307169891058006e-03, -2.836182234549959342e-03, -2.839052553851150167e-03, -2.841918123361189454e-03, -2.844778938654627179e-03, -2.847634995313559365e-03, -2.850486288928481566e-03, -2.853332815097526023e-03, -2.856174569427020679e-03, -2.859011547531083251e-03, -2.861843745031775622e-03, -2.864671157559357112e-03, -2.867493780751869878e-03, -2.870311610255336238e-03, -2.873124641723980282e-03, -2.875932870819838862e-03, -2.878736293212949809e-03, -2.881534904581548387e-03, -2.884328700611741604e-03, -2.887117676997629206e-03, -2.889901829441561282e-03, -2.892681153653723670e-03, -2.895455645352374308e-03, -2.898225300263987218e-03, -2.900990114122886914e-03, -2.903750082671737159e-03, -2.906505201660875264e-03, -2.909255466849088381e-03, -2.912000874003178082e-03, -2.914741418897925235e-03, -2.917477097316228778e-03, -2.920207905049244067e-03, -2.922933837896093175e-03, -2.925654891664001504e-03, -2.928371062168515920e-03, -2.931082345233133098e-03, -2.933788736689541075e-03, -2.936490232377521672e-03, -2.939186828145139586e-03, -2.941878519848662148e-03, -2.944565303352186369e-03, -2.947247174528310268e-03, -2.949924129257788536e-03, -2.952596163429405899e-03, -2.955263272940222580e-03, -2.957925453695422081e-03, -2.960582701608586564e-03, -2.963235012601315652e-03, -2.965882382603425918e-03, -2.968524807553149080e-03, -2.971162283396762936e-03, -2.973794806088756598e-03, -2.976422371592078123e-03, -2.979044975877719482e-03, -2.981662614924924289e-03, -2.984275284721393806e-03, -2.986882981262899226e-03, -2.989485700553491145e-03, -2.992083438605677367e-03, -2.994676191440008746e-03, -2.997263955085563598e-03, -2.999846725579542652e-03, -3.002424498967452924e-03, -3.004997271303263412e-03, -3.007565038649124070e-03, -3.010127797075458616e-03, -3.012685542661226908e-03, -3.015238271493527692e-03, -3.017785979667808940e-03, -3.020328663288024840e-03, -3.022866318466308801e-03, -3.025398941323169041e-03, -3.027926527987626504e-03, -3.030449074596848827e-03, -3.032966577296662952e-03, -3.035479032240873815e-03, -3.037986435592020251e-03, -3.040488783521024582e-03, -3.042986072206865615e-03, -3.045478297837281214e-03, -3.047965456608330275e-03, -3.050447544724404440e-03, -3.052924558398355595e-03, -3.055396493851406971e-03, -3.057863347313383856e-03, -3.060325115022385304e-03, -3.062781793224947195e-03, -3.065233378176219613e-03, -3.067679866139647656e-03, -3.070121253387131464e-03, -3.072557536199152419e-03, -3.074988710864719806e-03, -3.077414773680964451e-03, -3.079835720953926284e-03, -3.082251548997837470e-03, -3.084662254135635447e-03, -3.087067832698607312e-03, -3.089468281026534237e-03, -3.091863595467877514e-03, -3.094253772379457635e-03, -3.096638808126599141e-03, -3.099018699083334449e-03, -3.101393441632051273e-03, -3.103763032163692551e-03, -3.106127467077884809e-03, -3.108486742782662349e-03, -3.110840855694592573e-03, -3.113189802238994133e-03, -3.115533578849502376e-03, -3.117872181968559843e-03, -3.120205608047013808e-03, -3.122533853544303632e-03, -3.124856914928648977e-03, -3.127174788676520285e-03, -3.129487471273263710e-03, -3.131794959212809253e-03, -3.134097248997569710e-03, -3.136394337138579454e-03, -3.138686220155643188e-03, -3.140972894577045375e-03, -3.143254356939722844e-03, -3.145530603789232268e-03, -3.147801631679893707e-03, -3.150067437174526065e-03, -3.152328016844611024e-03, -3.154583367270363294e-03, -3.156833485040724981e-03, -3.159078366752998256e-03, -3.161318009013455114e-03, -3.163552408436995193e-03, -3.165781561647082465e-03, -3.168005465275940818e-03, -3.170224115964417888e-03, -3.172437510362207530e-03, -3.174645645127562726e-03, -3.176848516927441302e-03, -3.179046122437643399e-03, -3.181238458342556912e-03, -3.183425521335282813e-03, -3.185607308117790852e-03, -3.187783815400635056e-03, -3.189955039903106387e-03, -3.192120978353386266e-03, -3.194281627488201360e-03, -3.196436984053220836e-03, -3.198587044802728499e-03, -3.200731806499762435e-03, -3.202871265916271137e-03, -3.205005419832826410e-03, -3.207134265038788165e-03, -3.209257798332419351e-03, -3.211376016520625740e-03, -3.213488916419116829e-03, -3.215596494852523361e-03, -3.217698748654131483e-03, -3.219795674666045375e-03, -3.221887269739295671e-03, -3.223973530733609608e-03, -3.226054454517499493e-03, -3.228130037968463505e-03, -3.230200277972627033e-03, -3.232265171425197613e-03, -3.234324715229862108e-03, -3.236378906299454579e-03, -3.238427741555586353e-03, -3.240471217928634750e-03, -3.242509332357835020e-03, -3.244542081791409582e-03, -3.246569463186304346e-03, -3.248591473508390375e-03, -3.250608109732344188e-03, -3.252619368841883681e-03, -3.254625247829451978e-03, -3.256625743696367481e-03, -3.258620853452948336e-03, -3.260610574118456926e-03, -3.262594902720760293e-03, -3.264573836296903470e-03, -3.266547371892849268e-03, -3.268515506563199422e-03, -3.270478237371782226e-03, -3.272435561391129951e-03, -3.274387475702857878e-03, -3.276333977397402793e-03, -3.278275063574114922e-03, -3.280210731341423602e-03, -3.282140977816562760e-03, -3.284065800125720094e-03, -3.285985195404156345e-03, -3.287899160795963293e-03, -3.289807693454175654e-03, -3.291710790540947149e-03, -3.293608449227238694e-03, -3.295500666693004007e-03, -3.297387440127299771e-03, -3.299268766727972944e-03, -3.301144643702050643e-03, -3.303015068265392762e-03, -3.304880037642871516e-03, -3.306739549068470757e-03, -3.308593599785063493e-03, -3.310442187044498625e-03, -3.312285308107781791e-03, -3.314122960244793477e-03, -3.315955140734435161e-03, -3.317781846864760725e-03, -3.319603075932704098e-03, -3.321418825244280924e-03, -3.323229092114509189e-03, -3.325033873867491632e-03, -3.326833167836436983e-03, -3.328626971363352061e-03, -3.330415281799524885e-03, -3.332198096505308710e-03, -3.333975412849840558e-03, -3.335747228211593304e-03, -3.337513539978042166e-03, -3.339274345545656473e-03, -3.341029642320011116e-03, -3.342779427715712823e-03, -3.344523699156572768e-03, -3.346262454075362835e-03, -3.347995689913933585e-03, -3.349723404123348264e-03, -3.351445594163661619e-03, -3.353162257503977152e-03, -3.354873391622675231e-03, -3.356578994007081325e-03, -3.358279062153651188e-03, -3.359973593568046316e-03, -3.361662585764901498e-03, -3.363346036268127955e-03, -3.365023942610640556e-03, -3.366696302334471012e-03, -3.368363112990906648e-03, -3.370024372140244077e-03, -3.371680077351913666e-03, -3.373330226204618743e-03, -3.374974816286060650e-03, -3.376613845193119148e-03, -3.378247310531916608e-03, -3.379875209917618945e-03, -3.381497540974552716e-03, -3.383114301336319178e-03, -3.384725488645535380e-03, -3.386331100554157252e-03, -3.387931134723067613e-03, -3.389525588822532402e-03, -3.391114460532008556e-03, -3.392697747539905051e-03, -3.394275447544024393e-03, -3.395847558251342303e-03, -3.397414077377931396e-03, -3.398975002649071327e-03, -3.400530331799341173e-03, -3.402080062572409528e-03, -3.403624192721186725e-03, -3.405162720007761084e-03, -3.406695642203529020e-03, -3.408222957088992509e-03, -3.409744662453876619e-03, -3.411260756097190226e-03, -3.412771235827198255e-03, -3.414276099461188794e-03, -3.415775344825919355e-03, -3.417268969757198804e-03, -3.418756972100216954e-03, -3.420239349709290003e-03, -3.421716100447998871e-03, -3.423187222189229533e-03, -3.424652712815051594e-03, -3.426112570216759481e-03, -3.427566792295011228e-03, -3.429015376959627676e-03, -3.430458322129673141e-03, -3.431895625733585951e-03, -3.433327285708958568e-03, -3.434753300002662494e-03, -3.436173666570916784e-03, -3.437588383379157515e-03, -3.438997448402042988e-03, -3.440400859623650616e-03, -3.441798615037189833e-03, -3.443190712645292223e-03, -3.444577150459773428e-03, -3.445957926501748078e-03, -3.447333038801706113e-03, -3.448702485399350592e-03, -3.450066264343668813e-03, -3.451424373693072391e-03, -3.452776811515145729e-03, -3.454123575886793897e-03, -3.455464664894354089e-03, -3.456800076633330648e-03, -3.458129809208604095e-03, -3.459453860734336157e-03, -3.460772229334082521e-03, -3.462084913140724314e-03, -3.463391910296297234e-03, -3.464693218952366247e-03, -3.465988837269761043e-03, -3.467278763418607697e-03, -3.468562995578363360e-03, -3.469841531937911238e-03, -3.471114370695372806e-03, -3.472381510058263933e-03, -3.473642948243404679e-03, -3.474898683477053302e-03, -3.476148713994710662e-03, -3.477393038041268550e-03, -3.478631653871007944e-03, -3.479864559747589473e-03, -3.481091753943873872e-03, -3.482313234742283239e-03, -3.483529000434484012e-03, -3.484739049321499294e-03, -3.485943379713839826e-03, -3.487141989931243340e-03, -3.488334878302943882e-03, -3.489522043167464505e-03, -3.490703482872714418e-03, -3.491879195776047100e-03, -3.493049180244149274e-03, -3.494213434653043078e-03, -3.495371957388278186e-03, -3.496524746844656417e-03, -3.497671801426409117e-03, -3.498813119547222739e-03, -3.499948699630107875e-03, -3.501078540107466046e-03, -3.502202639421179466e-03, -3.503320996022421530e-03, -3.504433608371927862e-03, -3.505540474939601667e-03, -3.506641594204979503e-03, -3.507736964656916860e-03, -3.508826584793673601e-03, -3.509910453122906150e-03, -3.510988568161761605e-03, -3.512060928436736788e-03, -3.513127532483735493e-03, -3.514188378848183848e-03, -3.515243466084825609e-03, -3.516292792757866586e-03, -3.517336357440922594e-03, -3.518374158717084074e-03, -3.519406195178883135e-03, -3.520432465428167783e-03, -3.521452968076326136e-03, -3.522467701744227443e-03, -3.523476665061998307e-03, -3.524479856669388705e-03, -3.525477275215481866e-03, -3.526468919358867297e-03, -3.527454787767539748e-03, -3.528434879118928259e-03, -3.529409192099976396e-03, -3.530377725407022552e-03, -3.531340477745843320e-03, -3.532297447831744992e-03, -3.533248634389416117e-03, -3.534194036152998181e-03, -3.535133651866166713e-03, -3.536067480281995974e-03, -3.536995520163001457e-03, -3.537917770281252643e-03, -3.538834229418170909e-03, -3.539744896364752872e-03, -3.540649769921385207e-03, -3.541548848897921407e-03, -3.542442132113767222e-03, -3.543329618397711954e-03, -3.544211306588042083e-03, -3.545087195532556010e-03, -3.545957284088494237e-03, -3.546821571122564520e-03, -3.547680055510992608e-03, -3.548532736139469335e-03, -3.549379611903125901e-03, -3.550220681706650963e-03, -3.551055944464178316e-03, -3.551885399099302502e-03, -3.552709044545132588e-03, -3.553526879744270048e-03, -3.554338903648850828e-03, -3.555145115220370577e-03, -3.555945513429941817e-03, -3.556740097258143454e-03, -3.557528865695003002e-03, -3.558311817740084614e-03, -3.559088952402417964e-03, -3.559860268700584980e-03, -3.560625765662614895e-03, -3.561385442326039322e-03, -3.562139297737943865e-03, -3.562887330954857094e-03, -3.563629541042818635e-03, -3.564365927077406491e-03, -3.565096488143723596e-03, -3.565821223336260344e-03, -3.566540131759160862e-03, -3.567253212525977116e-03, -3.567960464759836314e-03, -3.568661887593329880e-03, -3.569357480168564196e-03, -3.570047241637207009e-03, -3.570731171160381173e-03, -3.571409267908742715e-03, -3.572081531062493414e-03, -3.572747959811298831e-03, -3.573408553354371145e-03, -3.574063310900454406e-03, -3.574712231667787673e-03, -3.575355314884116724e-03, -3.575992559786758240e-03, -3.576623965622497889e-03, -3.577249531647652778e-03, -3.577869257128106148e-03, -3.578483141339205888e-03, -3.579091183565881202e-03, -3.579693383102504692e-03, -3.580289739253050222e-03, -3.580880251331018324e-03, -3.581464918659371579e-03, -3.582043740570648241e-03, -3.582616716406911931e-03, -3.583183845519754673e-03, -3.583745127270253957e-03, -3.584300561029101113e-03, -3.584850146176445616e-03, -3.585393882101999170e-03, -3.585931768204981933e-03, -3.586463803894163714e-03, -3.586989988587886528e-03, -3.587510321713931888e-03, -3.588024802709682565e-03, -3.588533431022060578e-03, -3.589036206107483386e-03, -3.589533127431920705e-03, -3.590024194470869782e-03, -3.590509406709387497e-03, -3.590988763642053924e-03, -3.591462264772953689e-03, -3.591929909615759666e-03, -3.592391697693653185e-03, -3.592847628539348314e-03, -3.593297701695117880e-03, -3.593741916712754874e-03, -3.594180273153591097e-03, -3.594612770588508869e-03, -3.595039408597923685e-03, -3.595460186771769467e-03, -3.595875104709565350e-03, -3.596284162020307699e-03, -3.596687358322605416e-03, -3.597084693244542025e-03, -3.597476166423766320e-03, -3.597861777507470240e-03, -3.598241526152396678e-03, -3.598615412024790908e-03, -3.598983434800485590e-03, -3.599345594164810556e-03, -3.599701889812651368e-03, -3.600052321448460151e-03, -3.600396888786189242e-03, -3.600735591549344104e-03, -3.601068429470985488e-03, -3.601395402293694308e-03, -3.601716509769621946e-03, -3.602031751660407424e-03, -3.602341127737284515e-03, -3.602644637780992847e-03, -3.602942281581831240e-03, -3.603234058939613037e-03, -3.603519969663732028e-03, -3.603800013573067468e-03, -3.604074190496095974e-03, -3.604342500270778758e-03, -3.604604942744665287e-03, -3.604861517774806540e-03, -3.605112225227810087e-03, -3.605357064979817106e-03, -3.605596036916510622e-03, -3.605829140933093820e-03, -3.606056376934322141e-03, -3.606277744834518895e-03, -3.606493244557471608e-03, -3.606702876036573836e-03, -3.606906639214702004e-03, -3.607104534044312544e-03, -3.607296560487369044e-03, -3.607482718515375632e-03, -3.607663008109377421e-03, -3.607837429259955729e-03, -3.608005981967206833e-03, -3.608168666240774061e-03, -3.608325482099843887e-03, -3.608476429573106471e-03, -3.608621508698818536e-03, -3.608760719524733117e-03, -3.608894062108154634e-03, -3.609021536515931525e-03, -3.609143142824388154e-03, -3.609258881119450143e-03, -3.609368751496516876e-03, -3.609472754060526981e-03, -3.609570888925970038e-03, -3.609663156216829337e-03, -3.609749556066630446e-03, -3.609830088618439480e-03, -3.609904754024808454e-03, -3.609973552447842508e-03, -3.610036484059160004e-03, -3.610093549039918113e-03, -3.610144747580759043e-03, -3.610190079881884194e-03, -3.610229546152983904e-03, -3.610263146613292527e-03, -3.610290881491547664e-03, -3.610312751026016620e-03, -3.610328755464462577e-03, -3.610338895064187092e-03, -3.610343170091998444e-03, -3.610341580824211194e-03, -3.610334127546656162e-03, -3.610320810554691270e-03, -3.610301630153157307e-03, -3.610276586656442546e-03, -3.610245680388409015e-03, -3.610208911682436742e-03, -3.610166280881442393e-03, -3.610117788337798179e-03, -3.610063434413424231e-03, -3.610003219479722674e-03, -3.609937143917612331e-03, -3.609865208117499225e-03, -3.609787412479289158e-03, -3.609703757412420239e-03, -3.609614243335786121e-03, -3.609518870677805823e-03, -3.609417639876378193e-03, -3.609310551378923544e-03, -3.609197605642323805e-03, -3.609078803132966320e-03, -3.608954144326743420e-03, -3.608823629709019022e-03, -3.608687259774662030e-03, -3.608545035028002529e-03, -3.608396955982900306e-03, -3.608243023162662020e-03, -3.608083237100087170e-03, -3.607917598337483708e-03, -3.607746107426602553e-03, -3.607568764928704812e-03, -3.607385571414510172e-03, -3.607196527464224655e-03, -3.607001633667528909e-03, -3.606800890623583847e-03, -3.606594298941012428e-03, -3.606381859237921782e-03, -3.606163572141880651e-03, -3.605939438289916359e-03, -3.605709458328547334e-03, -3.605473632913738010e-03, -3.605231962710933949e-03, -3.604984448395028018e-03, -3.604731090650374267e-03, -3.604471890170806141e-03, -3.604206847659591813e-03, -3.603935963829443725e-03, -3.603659239402589708e-03, -3.603376675110657630e-03, -3.603088271694720058e-03, -3.602794029905344135e-03, -3.602493950502496170e-03, -3.602188034255642685e-03, -3.601876281943639391e-03, -3.601558694354820966e-03, -3.601235272286954208e-03, -3.600906016547238912e-03, -3.600570927952318704e-03, -3.600230007328278012e-03, -3.599883255510623412e-03, -3.599530673344299679e-03, -3.599172261683697589e-03, -3.598808021392603182e-03, -3.598437953344237224e-03, -3.598062058421299010e-03, -3.597680337515820649e-03, -3.597292791529328390e-03, -3.596899421372731168e-03, -3.596500227966367876e-03, -3.596095212240000422e-03, -3.595684375132773836e-03, -3.595267717593273946e-03, -3.594845240579496153e-03, -3.594416945058815510e-03, -3.593982832008043096e-03, -3.593542902413390892e-03, -3.593097157270430143e-03, -3.592645597584188510e-03, -3.592188224369050314e-03, -3.591725038648840244e-03, -3.591256041456713198e-03, -3.590781233835239287e-03, -3.590300616836425082e-03, -3.589814191521603463e-03, -3.589321958961476551e-03, -3.588823920236223260e-03, -3.588320076435315420e-03, -3.587810428657623590e-03, -3.587294978011394079e-03, -3.586773725614261516e-03, -3.586246672593244519e-03, -3.585713820084667630e-03, -3.585175169234284479e-03, -3.584630721197191484e-03, -3.584080477137826983e-03, -3.583524438230018504e-03, -3.582962605656957612e-03, -3.582394980611126618e-03, -3.581821564294433886e-03, -3.581242357918116691e-03, -3.580657362702723868e-03, -3.580066579878209056e-03, -3.579470010683798858e-03, -3.578867656368122947e-03, -3.578259518189133397e-03, -3.577645597414061320e-03, -3.577025895319546102e-03, -3.576400413191539989e-03, -3.575769152325282505e-03, -3.575132114025366369e-03, -3.574489299605731422e-03, -3.573840710389575726e-03, -3.573186347709460513e-03, -3.572526212907276358e-03, -3.571860307334162946e-03, -3.571188632350633975e-03, -3.570511189326437511e-03, -3.569827979640731192e-03, -3.569139004681888810e-03, -3.568444265847562757e-03, -3.567743764544814566e-03, -3.567037502189903276e-03, -3.566325480208379101e-03, -3.565607700035118566e-03, -3.564884163114294575e-03, -3.564154870899294454e-03, -3.563419824852855251e-03, -3.562679026446950985e-03, -3.561932477162858129e-03, -3.561180178491078416e-03, -3.560422131931419501e-03, -3.559658338992955501e-03, -3.558888801194003138e-03, -3.558113520062109163e-03, -3.557332497134176128e-03, -3.556545733956254212e-03, -3.555753232083702989e-03, -3.554954993081100786e-03, -3.554151018522276346e-03, -3.553341309990329204e-03, -3.552525869077552065e-03, -3.551704697385484142e-03, -3.550877796524952359e-03, -3.550045168115912187e-03, -3.549206813787620686e-03, -3.548362735178567547e-03, -3.547512933936368407e-03, -3.546657411717970849e-03, -3.545796170189471387e-03, -3.544929211026170545e-03, -3.544056535912604080e-03, -3.543178146542533009e-03, -3.542294044618844295e-03, -3.541404231853703070e-03, -3.540508709968400846e-03, -3.539607480693460900e-03, -3.538700545768626998e-03, -3.537787906942723749e-03, -3.536869565973849595e-03, -3.535945524629267086e-03, -3.535015784685368190e-03, -3.534080347927762329e-03, -3.533139216151226503e-03, -3.532192391159658020e-03, -3.531239874766142588e-03, -3.530281668792945634e-03, -3.529317775071477616e-03, -3.528348195442282311e-03, -3.527372931755000818e-03, -3.526391985868568453e-03, -3.525405359650920275e-03, -3.524413054979172368e-03, -3.523415073739585845e-03, -3.522411417827577256e-03, -3.521402089147605829e-03, -3.520387089613334370e-03, -3.519366421147523873e-03, -3.518340085682060414e-03, -3.517308085157895732e-03, -3.516270421525122692e-03, -3.515227096742986126e-03, -3.514178112779754032e-03, -3.513123471612779585e-03, -3.512063175228649029e-03, -3.510997225622868555e-03, -3.509925624800148795e-03, -3.508848374774250437e-03, -3.507765477567982484e-03, -3.506676935213278584e-03, -3.505582749751086011e-03, -3.504482923231484921e-03, -3.503377457713596852e-03, -3.502266355265573009e-03, -3.501149617964661488e-03, -3.500027247897160871e-03, -3.498899247158381628e-03, -3.497765617852724614e-03, -3.496626362093621654e-03, -3.495481482003513427e-03, -3.494330979713898902e-03, -3.493174857365340981e-03, -3.492013117107339425e-03, -3.490845761098514306e-03, -3.489672791506393500e-03, -3.488494210507678966e-03, -3.487310020287941442e-03, -3.486120223041787834e-03, -3.484924820972850387e-03, -3.483723816293802719e-03, -3.482517211226201972e-03, -3.481305008000688296e-03, -3.480087208856882941e-03, -3.478863816043312358e-03, -3.477634831817563461e-03, -3.476400258446168262e-03, -3.475160098204657655e-03, -3.473914353377454724e-03, -3.472663026257961916e-03, -3.471406119148651680e-03, -3.470143634360814498e-03, -3.468875574214701565e-03, -3.467601941039632346e-03, -3.466322737173712677e-03, -3.465037964964104954e-03, -3.463747626766804349e-03, -3.462451724946794939e-03, -3.461150261878013709e-03, -3.459843239943216544e-03, -3.458530661534157339e-03, -3.457212529051511239e-03, -3.455888844904770121e-03, -3.454559611512400021e-03, -3.453224831301790389e-03, -3.451884506709108815e-03, -3.450538640179526967e-03, -3.449187234167083987e-03, -3.447830291134619703e-03, -3.446467813553953305e-03, -3.445099803905679950e-03, -3.443726264679322982e-03, -3.442347198373301841e-03, -3.440962607494776372e-03, -3.439572494559854123e-03, -3.438176862093489730e-03, -3.436775712629417702e-03, -3.435369048710280784e-03, -3.433956872887537586e-03, -3.432539187721439164e-03, -3.431115995781104915e-03, -3.429687299644494820e-03, -3.428253101898297555e-03, -3.426813405138110034e-03, -3.425368211968283019e-03, -3.423917525002022604e-03, -3.422461346861266178e-03, -3.420999680176710616e-03, -3.419532527588027386e-03, -3.418059891743495220e-03, -3.416581775300193101e-03, -3.415098180924033659e-03, -3.413609111289677735e-03, -3.412114569080595527e-03, -3.410614556988886183e-03, -3.409109077715526733e-03, -3.407598133970245018e-03, -3.406081728471413873e-03, -3.404559863946241081e-03, -3.403032543130659216e-03, -3.401499768769301792e-03, -3.399961543615452088e-03, -3.398417870431361034e-03, -3.396868751987722462e-03, -3.395314191064127598e-03, -3.393754190448737204e-03, -3.392188752938520534e-03, -3.390617881339124794e-03, -3.389041578464823973e-03, -3.387459847138652846e-03, -3.385872690192319803e-03, -3.384280110466134431e-03, -3.382682110809164498e-03, -3.381078694079145321e-03, -3.379469863142385219e-03, -3.377855620873934216e-03, -3.376235970157502077e-03, -3.374610913885342078e-03, -3.372980454958453538e-03, -3.371344596286467762e-03, -3.369703340787550024e-03, -3.368056691388620315e-03, -3.366404651025052368e-03, -3.364747222641081750e-03, -3.363084409189339222e-03, -3.361416213631098805e-03, -3.359742638936296863e-03, -3.358063688083490900e-03, -3.356379364059690860e-03, -3.354689669860607196e-03, -3.352994608490540273e-03, -3.351294182962240732e-03, -3.349588396297151476e-03, -3.347877251525214690e-03, -3.346160751685013212e-03, -3.344438899823562374e-03, -3.342711698996413648e-03, -3.340979152267869751e-03, -3.339241262710567013e-03, -3.337498033405679639e-03, -3.335749467443004275e-03, -3.333995567920810393e-03, -3.332236337945927891e-03, -3.330471780633574921e-03, -3.328701899107586008e-03, -3.326926696500301893e-03, -3.325146175952438995e-03, -3.323360340613311457e-03, -3.321569193640703209e-03, -3.319772738200834575e-03, -3.317970977468318473e-03, -3.316163914626486103e-03, -3.314351552866845723e-03, -3.312533895389527597e-03, -3.310710945403097516e-03, -3.308882706124454450e-03, -3.307049180779085117e-03, -3.305210372600756938e-03, -3.303366284831771305e-03, -3.301516920722873377e-03, -3.299662283533062995e-03, -3.297802376529908666e-03, -3.295937202989347205e-03, -3.294066766195623448e-03, -3.292191069441475441e-03, -3.290310116028030783e-03, -3.288423909264680863e-03, -3.286532452469295099e-03, -3.284635748968138102e-03, -3.282733802095688398e-03, -3.280826615194968893e-03, -3.278914191617118834e-03, -3.276996534721947612e-03, -3.275073647877325446e-03, -3.273145534459505172e-03, -3.271212197853160843e-03, -3.269273641451267594e-03, -3.267329868655009274e-03, -3.265380882874000489e-03, -3.263426687526119196e-03, -3.261467286037562224e-03, -3.259502681842729472e-03, -3.257532878384393916e-03, -3.255557879113641761e-03, -3.253577687489684223e-03, -3.251592306980132050e-03, -3.249601741060861079e-03, -3.247605993215917260e-03, -3.245605066937549184e-03, -3.243598965726513395e-03, -3.241587693091497590e-03, -3.239571252549635402e-03, -3.237549647626115218e-03, -3.235522881854472049e-03, -3.233490958776456554e-03, -3.231453881941904506e-03, -3.229411654908957967e-03, -3.227364281243974651e-03, -3.225311764521367891e-03, -3.223254108323851241e-03, -3.221191316242335255e-03, -3.219123391875750115e-03, -3.217050338831313645e-03, -3.214972160724434164e-03, -3.212888861178510129e-03, -3.210800443825279245e-03, -3.208706912304411241e-03, -3.206608270263870426e-03, -3.204504521359746554e-03, -3.202395669256043187e-03, -3.200281717625218063e-03, -3.198162670147556858e-03, -3.196038530511479802e-03, -3.193909302413608896e-03, -3.191774989558642146e-03, -3.189635595659224762e-03, -3.187491124436220204e-03, -3.185341579618495948e-03, -3.183186964943051419e-03, -3.181027284154785105e-03, -3.178862541006792497e-03, -3.176692739260201723e-03, -3.174517882684094183e-03, -3.172337975055531875e-03, -3.170153020159877447e-03, -3.167963021790218704e-03, -3.165767983747717288e-03, -3.163567909841622124e-03, -3.161362803889146249e-03, -3.159152669715519293e-03, -3.156937511153814005e-03, -3.154717332045242021e-03, -3.152492136238965216e-03, -3.150261927591972537e-03, -3.148026709969354089e-03, -3.145786487244154987e-03, -3.143541263297265197e-03, -3.141291042017445995e-03, -3.139035827301705096e-03, -3.136775623054611876e-03, -3.134510433188917103e-03, -3.132240261625080218e-03, -3.129965112291586797e-03, -3.127684989124850101e-03, -3.125399896069008549e-03, -3.123109837076241437e-03, -3.120814816106590259e-03, -3.118514837127837717e-03, -3.116209904115752310e-03, -3.113900021053979048e-03, -3.111585191933851670e-03, -3.109265420754698389e-03, -3.106940711523683597e-03, -3.104611068255645669e-03, -3.102276494973398371e-03, -3.099936995707578639e-03, -3.097592574496448817e-03, -3.095243235386309529e-03, -3.092888982430982720e-03, -3.090529819692433133e-03, -3.088165751240104333e-03, -3.085796781151263057e-03, -3.083422913511040409e-03, -3.081044152412333852e-03, -3.078660501955615084e-03, -3.076271966249299102e-03, -3.073878549409432386e-03, -3.071480255559883715e-03, -3.069077088832077461e-03, -3.066669053365309733e-03, -3.064256153306575779e-03, -3.061838392810488450e-03, -3.059415776039286442e-03, -3.056988307163221140e-03, -3.054555990359898721e-03, -3.052118829814664397e-03, -3.049676829720619330e-03, -3.047229994278485322e-03, -3.044778327696687215e-03, -3.042321834191127807e-03, -3.039860517985509651e-03, -3.037394383311158106e-03, -3.034923434406888200e-03, -3.032447675519262670e-03, -3.029967110902463592e-03, -3.027481744818112403e-03, -3.024991581535581286e-03, -3.022496625331835308e-03, -3.019996880491256346e-03, -3.017492351305967480e-03, -3.014983042075637405e-03, -3.012468957107338179e-03, -3.009950100715921666e-03, -3.007426477223532069e-03, -3.004898090960054797e-03, -3.002364946262877938e-03, -2.999827047476740470e-03, -2.997284398954077472e-03, -2.994737005054821932e-03, -2.992184870146226069e-03, -2.989627998603213051e-03, -2.987066394808191375e-03, -2.984500063150870124e-03, -2.981929008028591597e-03, -2.979353233846118373e-03, -2.976772745015705737e-03, -2.974187545956947717e-03, -2.971597641096816560e-03, -2.969003034870070380e-03, -2.966403731718519378e-03, -2.963799736091417888e-03, -2.961191052445759711e-03, -2.958577685245594637e-03, -2.955959638962419624e-03, -2.953336918075234740e-03, -2.950709527070361025e-03, -2.948077470441554972e-03, -2.945440752689734449e-03, -2.942799378323375948e-03, -2.940153351858289937e-03, -2.937502677817444355e-03, -2.934847360731319358e-03, -2.932187405137728648e-03, -2.929522815581613905e-03, -2.926853596615393033e-03, -2.924179752798808807e-03, -2.921501288698696852e-03, -2.918818208889428431e-03, -2.916130517952405642e-03, -2.913438220476477318e-03, -2.910741321057772057e-03, -2.908039824299472279e-03, -2.905333734812184585e-03, -2.902623057213771056e-03, -2.899907796129128513e-03, -2.897187956190558009e-03, -2.894463542037589189e-03, -2.891734558316754779e-03, -2.889001009681986098e-03, -2.886262900794399257e-03, -2.883520236322096968e-03, -2.880773020940631274e-03, -2.878021259332388167e-03, -2.875264956187339582e-03, -2.872504116202272313e-03, -2.869738744081082489e-03, -2.866968844535178456e-03, -2.864194422282734850e-03, -2.861415482049101990e-03, -2.858632028566871364e-03, -2.855844066575715171e-03, -2.853051600822244065e-03, -2.850254636060317245e-03, -2.847453177050831685e-03, -2.844647228561792383e-03, -2.841836795368107241e-03, -2.839021882251910583e-03, -2.836202494002367999e-03, -2.833378635415591783e-03, -2.830550311294645262e-03, -2.827717526449981689e-03, -2.824880285698641927e-03, -2.822038593864978264e-03, -2.819192455780091498e-03, -2.816341876282265483e-03, -2.813486860216753756e-03, -2.810627412435609106e-03, -2.807763537798024008e-03, -2.804895241170145444e-03, -2.802022527424901429e-03, -2.799145401442320637e-03, -2.796263868109390583e-03, -2.793377932319808261e-03, -2.790487598974388233e-03, -2.787592872980861405e-03, -2.784693759253631731e-03, -2.781790262714292292e-03, -2.778882388291038959e-03, -2.775970140919127496e-03, -2.773053525540692277e-03, -2.770132547104526850e-03, -2.767207210566461663e-03, -2.764277520889178458e-03, -2.761343483041983453e-03, -2.758405102001211529e-03, -2.755462382750008092e-03, -2.752515330278125245e-03, -2.749563949582317732e-03, -2.746608245666119601e-03, -2.743648223539650773e-03, -2.740683888220017770e-03, -2.737715244731007101e-03, -2.734742298103227075e-03, -2.731765053373909173e-03, -2.728783515586954457e-03, -2.725797689793389364e-03, -2.722807581050565567e-03, -2.719813194422614471e-03, -2.716814534980514437e-03, -2.713811607801916437e-03, -2.710804417970983596e-03, -2.707792970578729898e-03, -2.704777270722802905e-03, -2.701757323507563129e-03, -2.698733134043832058e-03, -2.695704707449256016e-03, -2.692672048848134426e-03, -2.689635163371262815e-03, -2.686594056155980088e-03, -2.683548732346632566e-03, -2.680499197093698816e-03, -2.677445455554542525e-03, -2.674387512893075525e-03, -2.671325374279603839e-03, -2.668259044891256593e-03, -2.665188529911472967e-03, -2.662113834530416799e-03, -2.659034963944809180e-03, -2.655951923357694703e-03, -2.652864717978835676e-03, -2.649773353024530848e-03, -2.646677833717347387e-03, -2.643578165286575819e-03, -2.640474352967991066e-03, -2.637366402003642109e-03, -2.634254317642242740e-03, -2.631138105138970760e-03, -2.628017769755259386e-03, -2.624893316759259552e-03, -2.621764751425192854e-03, -2.618632079034217616e-03, -2.615495304873468284e-03, -2.612354434236575408e-03, -2.609209472423689499e-03, -2.606060424741366531e-03, -2.602907296502322051e-03, -2.599750093025867022e-03, -2.596588819637658894e-03, -2.593423481669509915e-03, -2.590254084459783952e-03, -2.587080633353112859e-03, -2.583903133700514877e-03, -2.580721590859206844e-03, -2.577536010192631524e-03, -2.574346397070945928e-03, -2.571152756870197752e-03, -2.567955094972685769e-03, -2.564753416767436879e-03, -2.561547727649220781e-03, -2.558338033019441193e-03, -2.555124338285440656e-03, -2.551906648861024425e-03, -2.548684970166223678e-03, -2.545459307627067399e-03, -2.542229666676012589e-03, -2.538996052751720054e-03, -2.535758471298822387e-03, -2.532516927768358947e-03, -2.529271427617516953e-03, -2.526021976309456712e-03, -2.522768579313700195e-03, -2.519511242105908124e-03, -2.516249970167677014e-03, -2.512984768987000170e-03, -2.509715644057709111e-03, -2.506442600879964060e-03, -2.503165644960014119e-03, -2.499884781809985634e-03, -2.496600016948310671e-03, -2.493311355899482853e-03, -2.490018804193841386e-03, -2.486722367367995637e-03, -2.483422050964613926e-03, -2.480117860532154214e-03, -2.476809801625332909e-03, -2.473497879804886345e-03, -2.470182100637327918e-03, -2.466862469695462433e-03, -2.463538992557727774e-03, -2.460211674809035381e-03, -2.456880522039836968e-03, -2.453545539846534781e-03, -2.450206733831936535e-03, -2.446864109604339910e-03, -2.443517672778042129e-03, -2.440167428973421485e-03, -2.436813383816687981e-03, -2.433455542940027305e-03, -2.430093911981302465e-03, -2.426728496584486597e-03, -2.423359302399413166e-03, -2.419986335081568667e-03, -2.416609600292512865e-03, -2.413229103699658911e-03, -2.409844850976102914e-03, -2.406456847800698962e-03, -2.403065099858559591e-03, -2.399669612840083475e-03, -2.396270392441847072e-03, -2.392867444365912033e-03, -2.389460774320352997e-03, -2.386050388018998245e-03, -2.382636291181225007e-03, -2.379218489532388802e-03, -2.375796988803576676e-03, -2.372371794731389059e-03, -2.368942913058376051e-03, -2.365510349532780679e-03, -2.362074109908353717e-03, -2.358634199944745300e-03, -2.355190625407294156e-03, -2.351743392066785177e-03, -2.348292505699903047e-03, -2.344837972088971607e-03, -2.341379797021751318e-03, -2.337917986291928891e-03, -2.334452545698433371e-03, -2.330983481046354673e-03, -2.327510798145926169e-03, -2.324034502813055510e-03, -2.320554600869389680e-03, -2.317071098142148462e-03, -2.313584000463893720e-03, -2.310093313672979126e-03, -2.306599043613306432e-03, -2.303101196134066993e-03, -2.299599777090232701e-03, -2.296094792342209898e-03, -2.292586247755995944e-03, -2.289074149202918133e-03, -2.285558502559729976e-03, -2.282039313709130750e-03, -2.278516588538807494e-03, -2.274990332941998795e-03, -2.271460552817549002e-03, -2.267927254069654081e-03, -2.264390442608029460e-03, -2.260850124347577386e-03, -2.257306305208837526e-03, -2.253758991117749740e-03, -2.250208188005408620e-03, -2.246653901808537933e-03, -2.243096138469227382e-03, -2.239534903934760433e-03, -2.235970204157700612e-03, -2.232402045096423208e-03, -2.228830432714090908e-03, -2.225255372979487341e-03, -2.221676871866723035e-03, -2.218094935354966105e-03, -2.214509569428994330e-03, -2.210920780078549398e-03, -2.207328573298879878e-03, -2.203732955090500090e-03, -2.200133931458934673e-03, -2.196531508415189120e-03, -2.192925691975503889e-03, -2.189316488161090722e-03, -2.185703902998630942e-03, -2.182087942519983156e-03, -2.178468612761986795e-03, -2.174845919766876280e-03, -2.171219869582067651e-03, -2.167590468259894456e-03, -2.163957721858175004e-03, -2.160321636439458629e-03, -2.156682218071969814e-03, -2.153039472828605083e-03, -2.149393406787428705e-03, -2.145744026031767230e-03, -2.142091336650053801e-03, -2.138435344735549297e-03, -2.134776056386815911e-03, -2.131113477707419213e-03, -2.127447614806032665e-03, -2.123778473796140119e-03, -2.120106060796495950e-03, -2.116430381930865280e-03, -2.112751443327796734e-03, -2.109069251121062187e-03, -2.105383811449432988e-03, -2.101695130456487839e-03, -2.098003214290708202e-03, -2.094308069106005227e-03, -2.090609701060678911e-03, -2.086908116318358323e-03, -2.083203321047297305e-03, -2.079495321420898359e-03, -2.075784123617468481e-03, -2.072069733819960260e-03, -2.068352158216482748e-03, -2.064631402999995285e-03, -2.060907474368091092e-03, -2.057180378523454367e-03, -2.053450121673631307e-03, -2.049716710030726960e-03, -2.045980149811950366e-03, -2.042240447239307508e-03, -2.038497608539358453e-03, -2.034751639943797614e-03, -2.031002547688758129e-03, -2.027250338015402532e-03, -2.023495017169663849e-03, -2.019736591401958496e-03, -2.015975066967707566e-03, -2.012210450127057976e-03, -2.008442747144634829e-03, -2.004671964290008924e-03, -2.000898107837463004e-03, -1.997121184065720704e-03, -1.993341199258419263e-03, -1.989558159703804646e-03, -1.985772071694837364e-03, -1.981982941528904942e-03, -1.978190775508253431e-03, -1.974395579939780977e-03, -1.970597361134811005e-03, -1.966796125409209315e-03, -1.962991879083928783e-03, -1.959184628484006690e-03, -1.955374379939139352e-03, -1.951561139783751292e-03, -1.947744914356747820e-03, -1.943925710001644059e-03, -1.940103533066247707e-03, -1.936278389903134996e-03, -1.932450286869393744e-03, -1.928619230326361405e-03, -1.924785226640119470e-03, -1.920948282181228484e-03, -1.917108403324545903e-03, -1.913265596449304157e-03, -1.909419867939696333e-03, -1.905571224183751425e-03, -1.901719671574358689e-03, -1.897865216508472491e-03, -1.894007865387716200e-03, -1.890147624618109846e-03, -1.886284500609792776e-03, -1.882418499777536915e-03, -1.878549628540488294e-03, -1.874677893321868459e-03, -1.870803300549520910e-03, -1.866925856655595383e-03, -1.863045568076320815e-03, -1.859162441252501042e-03, -1.855276482629210572e-03, -1.851387698655580349e-03, -1.847496095785268726e-03, -1.843601680476200178e-03, -1.839704459190291208e-03, -1.835804438394061629e-03, -1.831901624557828127e-03, -1.827996024156728835e-03, -1.824087643669610945e-03, -1.820176489579599256e-03, -1.816262568374187470e-03, -1.812345886545054094e-03, -1.808426450587782928e-03, -1.804504267002380669e-03, -1.800579342292913266e-03, -1.796651682967675056e-03, -1.792721295538825558e-03, -1.788788186522904684e-03, -1.784852362440554098e-03, -1.780913829816329870e-03, -1.776972595178803521e-03, -1.773028665061127107e-03, -1.769082046000000847e-03, -1.765132744536254683e-03, -1.761180767214944780e-03, -1.757226120585064257e-03, -1.753268811199714490e-03, -1.749308845615741041e-03, -1.745346230394253422e-03, -1.741380972100347972e-03, -1.737413077302823799e-03, -1.733442552574722059e-03, -1.729469404493033657e-03, -1.725493639638423860e-03, -1.721515264595759433e-03, -1.717534285953830221e-03, -1.713550710305067901e-03, -1.709564544246066188e-03, -1.705575794377318672e-03, -1.701584467302919143e-03, -1.697590569631192599e-03, -1.693594107973957555e-03, -1.689595088947150325e-03, -1.685593519170531206e-03, -1.681589405267435540e-03, -1.677582753865264212e-03, -1.673573571595210648e-03, -1.669561865092019466e-03, -1.665547640994456810e-03, -1.661530905945065749e-03, -1.657511666589881350e-03, -1.653489929578955435e-03, -1.649465701565974935e-03, -1.645438989208448596e-03, -1.641409799167424651e-03, -1.637378138107555003e-03, -1.633344012697724498e-03, -1.629307429609964334e-03, -1.625268395519968365e-03, -1.621226917107629339e-03, -1.617183001055951669e-03, -1.613136654051668985e-03, -1.609087882785308976e-03, -1.605036693950932531e-03, -1.600983094246292027e-03, -1.596927090372465743e-03, -1.592868689034369597e-03, -1.588807896940510386e-03, -1.584744720802667463e-03, -1.580679167336446547e-03, -1.576611243260983303e-03, -1.572540955298672724e-03, -1.568468310175703427e-03, -1.564393314621749303e-03, -1.560315975369726662e-03, -1.556236299156376441e-03, -1.552154292721558615e-03, -1.548069962808861942e-03, -1.543983316165322296e-03, -1.539894359541139034e-03, -1.535803099690214064e-03, -1.531709543369858678e-03, -1.527613697340520762e-03, -1.523515568366309121e-03, -1.519415163214712667e-03, -1.515312488656323084e-03, -1.511207551465356107e-03, -1.507100358419390454e-03, -1.502990916299043423e-03, -1.498879231888643323e-03, -1.494765311975369696e-03, -1.490649163350343375e-03, -1.486530792807430395e-03, -1.482410207143775418e-03, -1.478287413160342964e-03, -1.474162417660805462e-03, -1.470035227452177497e-03, -1.465905849344887593e-03, -1.461774290152591076e-03, -1.457640556691882543e-03, -1.453504655782831244e-03, -1.449366594248608546e-03, -1.445226378915657941e-03, -1.441084016613311015e-03, -1.436939514174334111e-03, -1.432792878434645777e-03, -1.428644116233102751e-03, -1.424493234411606645e-03, -1.420340239815712615e-03, -1.416185139293440424e-03, -1.412027939696355611e-03, -1.407868647878727716e-03, -1.403707270698186654e-03, -1.399543815015398540e-03, -1.395378287693810034e-03, -1.391210695600174395e-03, -1.387041045604262652e-03, -1.382869344578587130e-03, -1.378695599398931191e-03, -1.374519816944064525e-03, -1.370342004095457568e-03, -1.366162167737832497e-03, -1.361980314758849024e-03, -1.357796452048843109e-03, -1.353610586501450153e-03, -1.349422725012853217e-03, -1.345232874482425083e-03, -1.341041041812427283e-03, -1.336847233907743166e-03, -1.332651457676396799e-03, -1.328453720029279311e-03, -1.324254027879855945e-03, -1.320052388144712279e-03, -1.315848807743258018e-03, -1.311643293597445107e-03, -1.307435852632312431e-03, -1.303226491775691344e-03, -1.299015217957911854e-03, -1.294802038112370960e-03, -1.290586959175118054e-03, -1.286369988085051159e-03, -1.282151131783618777e-03, -1.277930397214901200e-03, -1.273707791326260386e-03, -1.269483321067195036e-03, -1.265256993389987867e-03, -1.261028815249791912e-03, -1.256798793604439052e-03, -1.252566935414121257e-03, -1.248333247641968471e-03, -1.244097737253652440e-03, -1.239860411217553245e-03, -1.235621276504397835e-03, -1.231380340087778486e-03, -1.227137608943887391e-03, -1.222893090051301338e-03, -1.218646790391074517e-03, -1.214398716947375162e-03, -1.210148876706255419e-03, -1.205897276656682201e-03, -1.201643923790140806e-03, -1.197388825100338281e-03, -1.193131987583862181e-03, -1.188873418239404494e-03, -1.184613124068415856e-03, -1.180351112074813679e-03, -1.176087389264676621e-03, -1.171821962646812281e-03, -1.167554839232457084e-03, -1.163286026034974011e-03, -1.159015530070425055e-03, -1.154743358357257889e-03, -1.150469517916025055e-03, -1.146194015769924765e-03, -1.141916858944532452e-03, -1.137638054467461418e-03, -1.133357609369067777e-03, -1.129075530681537126e-03, -1.124791825440044643e-03, -1.120506500681491338e-03, -1.116219563445168235e-03, -1.111931020772831836e-03, -1.107640879708504840e-03, -1.103349147298183629e-03, -1.099055830590391861e-03, -1.094760936635886649e-03, -1.090464472487357155e-03, -1.086166445199991627e-03, -1.081866861831082532e-03, -1.077565729440197861e-03, -1.073263055088891646e-03, -1.068958845840785711e-03, -1.064653108762229515e-03, -1.060345850921133983e-03, -1.056037079387538982e-03, -1.051726801234182523e-03, -1.047415023535223574e-03, -1.043101753367408875e-03, -1.038786997809170234e-03, -1.034470763941310609e-03, -1.030153058846677546e-03, -1.025833889609890394e-03, -1.021513263317885443e-03, -1.017191187059619502e-03, -1.012867667925782802e-03, -1.008542713009346952e-03, -1.004216329405276326e-03, -9.998885242102240490e-04, -9.955593045230949189e-04, -9.912286774447487663e-04, -9.868966500777003482e-04, -9.825632295267822287e-04, -9.782284228983543963e-04, -9.738922373009806970e-04, -9.695546798451190780e-04, -9.652157576428179028e-04, -9.608754778082941560e-04, -9.565338474576227110e-04, -9.521908737084349220e-04, -9.478465636804961781e-04, -9.435009244953958219e-04, -9.391539632762424886e-04, -9.348056871482415516e-04, -9.304561032383957750e-04, -9.261052186751853651e-04, -9.217530405892503673e-04, -9.173995761125067162e-04, -9.130448323792865993e-04, -9.086888165250780721e-04, -9.043315356870880841e-04, -8.999729970048140704e-04, -8.956132076188710617e-04, -8.912521746716576014e-04, -8.868899053074376024e-04, -8.825264066720408911e-04, -8.781616859130503402e-04, -8.737957501793892218e-04, -8.694286066219079770e-04, -8.650602623930662202e-04, -8.606907246466379436e-04, -8.563200005382815916e-04, -8.519480972252382184e-04, -8.475750218661216948e-04, -8.432007816210045775e-04, -8.388253836520943255e-04, -8.344488351224395219e-04, -8.300711431971149069e-04, -8.256923150422982877e-04, -8.213123578259700665e-04, -8.169312787175965441e-04, -8.125490848878215737e-04, -8.081657835090497524e-04, -8.037813817551359066e-04, -7.993958868010837913e-04, -7.950093058236170317e-04, -7.906216460008769556e-04, -7.862329145121147887e-04, -7.818431185382687752e-04, -7.774522652616613601e-04, -7.730603618656891078e-04, -7.686674155354007981e-04, -7.642734334571914647e-04, -7.598784228184958913e-04, -7.554823908084665630e-04, -7.510853446170721523e-04, -7.466872914362719270e-04, -7.422882384587206703e-04, -7.378881928784496690e-04, -7.334871618909500875e-04, -7.290851526929627421e-04, -7.246821724821796195e-04, -7.202782284578104809e-04, -7.158733278202877425e-04, -7.114674777709496713e-04, -7.070606855126250955e-04, -7.026529582492259613e-04, -6.982443031859329480e-04, -6.938347275288888564e-04, -6.894242384852840430e-04, -6.850128432640330712e-04, -6.806005490745844740e-04, -6.761873631275950192e-04, -6.717732926350200237e-04, -6.673583448098025124e-04, -6.629425268660587255e-04, -6.585258460186768550e-04, -6.541083094838889616e-04, -6.496899244789722770e-04, -6.452706982219309903e-04, -6.408506379320918003e-04, -6.364297508297747522e-04, -6.320080441361055614e-04, -6.275855250730898822e-04, -6.231622008642934271e-04, -6.187380787335517666e-04, -6.143131659060401114e-04, -6.098874696078694473e-04, -6.054609970657763443e-04, -6.010337555078051376e-04, -5.966057521625017139e-04, -5.921769942595975353e-04, -5.877474890297003157e-04, -5.833172437039810124e-04, -5.788862655147659084e-04, -5.744545616952168813e-04, -5.700221394790289109e-04, -5.655890061010083927e-04, -5.611551687967714043e-04, -5.567206348024260343e-04, -5.522854113551591525e-04, -5.478495056929299058e-04, -5.434129250541541072e-04, -5.389756766783934628e-04, -5.345377678054457097e-04, -5.300992056765257456e-04, -5.256599975329640439e-04, -5.212201506168901355e-04, -5.167796721713169587e-04, -5.123385694399322596e-04, -5.078968496667937140e-04, -5.034545200969034462e-04, -4.990115879758049225e-04, -4.945680605497701932e-04, -4.901239450653903894e-04, -4.856792487701557166e-04, -4.812339789121517701e-04, -4.767881427398448085e-04, -4.723417475021725559e-04, -4.678948004492210688e-04, -4.634473088310322227e-04, -4.589992798981774175e-04, -4.545507209023464073e-04, -4.501016390950419760e-04, -4.456520417287648610e-04, -4.412019360561029156e-04, -4.367513293304168664e-04, -4.323002288055297440e-04, -4.278486417354178308e-04, -4.233965753747946127e-04, -4.189440369787992332e-04, -4.144910338026907485e-04, -4.100375731024282302e-04, -4.055836621343625261e-04, -4.011293081549278591e-04, -3.966745184212229058e-04, -3.922193001907048338e-04, -3.877636607208740163e-04, -3.833076072699645063e-04, -3.788511470961332156e-04, -3.743942874581414446e-04, -3.699370356150526065e-04, -3.654793988259125506e-04, -3.610213843503437049e-04, -3.565629994482258326e-04, -3.521042513793945158e-04, -3.476451474042200653e-04, -3.431856947832985765e-04, -3.387259007771454807e-04, -3.342657726467740203e-04, -3.298053176532906249e-04, -3.253445430580805269e-04, -3.208834561223988541e-04, -3.164220641079530097e-04, -3.119603742765956252e-04, -3.074983938901113532e-04, -3.030361302103078310e-04, -2.985735904996952590e-04, -2.941107820202841830e-04, -2.896477120342718487e-04, -2.851843878041249798e-04, -2.807208165922734375e-04, -2.762570056612944800e-04, -2.717929622735067293e-04, -2.673286936915517369e-04, -2.628642071780848779e-04, -2.583995099954660281e-04, -2.539346094063443826e-04, -2.494695126733460972e-04, -2.450042270588672602e-04, -2.405387598251573485e-04, -2.360731182350082652e-04, -2.316073095504458707e-04, -2.271413410339129008e-04, -2.226752199473619237e-04, -2.182089535529414500e-04, -2.137425491126821917e-04, -2.092760138881900704e-04, -2.048093551412308734e-04, -2.003425801334182200e-04, -1.958756961259038325e-04, -1.914087103799652005e-04, -1.869416301566912439e-04, -1.824744627166763507e-04, -1.780072153206010489e-04, -1.735398952289256920e-04, -1.690725097015778567e-04, -1.646050659985388962e-04, -1.601375713795318522e-04, -1.556700331037134065e-04, -1.512024584303569012e-04, -1.467348546179458369e-04, -1.422672289253563310e-04, -1.377995886105509520e-04, -1.333319409312636375e-04, -1.288642931450885713e-04, -1.243966525092680324e-04, -1.199290262803823535e-04, -1.154614217149365696e-04, -1.109938460689478655e-04, -1.065263065981360291e-04, -1.020588105575112652e-04, -9.759136520195997621e-05, -9.312397778593584606e-05, -8.865665556324716008e-05, -8.418940578714546581e-05, -7.972223571101091076e-05, -7.525515258714502386e-05, -7.078816366745654118e-05, -6.632127620354895522e-05, -6.185449744641021623e-05, -5.738783464659964192e-05, -5.292129505383886152e-05, -4.845488591759606521e-05, -4.398861448677691846e-05, -3.952248800941337561e-05, -3.505651373324934560e-05, -3.059069890543067113e-05, -2.612505077219404731e-05, -2.165957657945326000e-05, -1.719428357248850421e-05, -1.272917899563580767e-05, -8.264270092873025154e-06, -3.799564107509100193e-06, 6.649317181262322059e-07, 5.129210141997206169e-06, 9.593263923170384713e-06, 1.405708582112927562e-05, 1.852066859608486718e-05, 2.298400500928608574e-05, 2.744708782243402418e-05, 3.190990979799235067e-05, 3.637246369949788345e-05, 4.083474229097468802e-05, 4.529673833724483993e-05, 4.975844460423825251e-05, 5.421985385840772948e-05, 5.868095886713830546e-05, 6.314175239856017368e-05, 6.760222722185932342e-05, 7.206237610718858129e-05, 7.652219182498400812e-05, 8.098166714716990844e-05, 8.544079484647436004e-05, 8.989956769634136651e-05, 9.435797847114131445e-05, 9.881601994648121789e-05, 1.032736848986200894e-04, 1.077309661048774810e-04, 1.121878563434469472e-04, 1.166443483938055210e-04, 1.211004350361284887e-04, 1.255561090515995126e-04, 1.300113632227207258e-04, 1.344661903327275482e-04, 1.389205831658992289e-04, 1.433745345078672880e-04, 1.478280371450326771e-04, 1.522810838648742612e-04, 1.567336674562599312e-04, 1.611857807087606559e-04, 1.656374164134591343e-04, 1.700885673622646070e-04, 1.745392263482237508e-04, 1.789893861658282406e-04, 1.834390396104327485e-04, 1.878881794785635089e-04, 1.923367985682285079e-04, 1.967848896783311200e-04, 2.012324456089823854e-04, 2.056794591618106311e-04, 2.101259231393733996e-04, 2.145718303454729244e-04, 2.190171735854597342e-04, 2.234619456655531015e-04, 2.279061393937455388e-04, 2.323497475786215599e-04, 2.367927630306615688e-04, 2.412351785616574748e-04, 2.456769869841280633e-04, 2.501181811125225687e-04, 2.545587537625352420e-04, 2.589986977510224633e-04, 2.634380058962084424e-04, 2.678766710179944326e-04, 2.723146859373792796e-04, 2.767520434768634490e-04, 2.811887364602644952e-04, 2.856247577131245589e-04, 2.900601000621271745e-04, 2.944947563354066472e-04, 2.989287193627564372e-04, 3.033619819755441031e-04, 3.077945370060275508e-04, 3.122263772886535275e-04, 3.166574956588835395e-04, 3.210878849540947156e-04, 3.255175380128981695e-04, 3.299464476754480511e-04, 3.343746067837498944e-04, 3.388020081810798638e-04, 3.432286447122894694e-04, 3.476545092241183055e-04, 3.520795945646081472e-04, 3.565038935834138455e-04, 3.609273991321134637e-04, 3.653501040636181999e-04, 3.697720012324900041e-04, 3.741930834952465106e-04, 3.786133437096761466e-04, 3.830327747356492788e-04, 3.874513694344273594e-04, 3.918691206689815191e-04, 3.962860213042899635e-04, 4.007020642067664362e-04, 4.051172422445629279e-04, 4.095315482878765598e-04, 4.139449752083719210e-04, 4.183575158794852408e-04, 4.227691631767360974e-04, 4.271799099771437375e-04, 4.315897491595346641e-04, 4.359986736048515263e-04, 4.404066761955709565e-04, 4.448137498161139954e-04, 4.492198873526517485e-04, 4.536250816934231660e-04, 4.580293257286387654e-04, 4.624326123498062038e-04, 4.668349344509285380e-04, 4.712362849278151598e-04, 4.756366566780064983e-04, 4.800360426009737296e-04, 4.844344355984302685e-04, 4.888318285737511780e-04, 4.932282144323780647e-04, 4.976235860816342763e-04, 5.020179364311286047e-04, 5.064112583921794117e-04, 5.108035448781170131e-04, 5.151947888044954233e-04, 5.195849830890034507e-04, 5.239741206507885895e-04, 5.283621944117455936e-04, 5.327491972953503092e-04, 5.371351222275513220e-04, 5.415199621360993788e-04, 5.459037099508495545e-04, 5.502863586040684062e-04, 5.546679010298565275e-04, 5.590483301644509325e-04, 5.634276389465381731e-04, 5.678058203166697375e-04, 5.721828672175726738e-04, 5.765587725944516491e-04, 5.809335293944136716e-04, 5.853071305667758954e-04, 5.896795690633633430e-04, 5.940508378379415417e-04, 5.984209298465179320e-04, 6.027898380476444688e-04, 6.071575554017468249e-04, 6.115240748720136539e-04, 6.158893894232413731e-04, 6.202534920231050648e-04, 6.246163756414966793e-04, 6.289780332504294087e-04, 6.333384578242533345e-04, 6.376976423399480535e-04, 6.420555797765637720e-04, 6.464122631155107875e-04, 6.507676853408713054e-04, 6.551218394388249201e-04, 6.594747183980457584e-04, 6.638263152095226103e-04, 6.681766228668654332e-04, 6.725256343662092910e-04, 6.768733427055554849e-04, 6.812197408859422751e-04, 6.855648219108762161e-04, 6.899085787857593731e-04, 6.942510045191656451e-04, 6.985920921216806677e-04, 7.029318346067958473e-04, 7.072702249902330105e-04, 7.116072562902452710e-04, 7.159429215279299302e-04, 7.202772137266455011e-04, 7.246101259123229835e-04, 7.289416511137592489e-04, 7.332717823620546645e-04, 7.376005126909120080e-04, 7.419278351369367917e-04, 7.462537427390707667e-04, 7.505782285388872595e-04, 7.549012855808997363e-04, 7.592229069118941508e-04, 7.635430855817100038e-04, 7.678618146425782208e-04, 7.721790871494199583e-04, 7.764948961601529989e-04, 7.808092347351150648e-04, 7.851220959373698873e-04, 7.894334728330087243e-04, 7.937433584905777923e-04, 7.980517459813857468e-04, 8.023586283797967417e-04, 8.066639987626675118e-04, 8.109678502096473712e-04, 8.152701758034764778e-04, 8.195709686293212171e-04, 8.238702217756612963e-04, 8.281679283331350692e-04, 8.324640813958026318e-04, 8.367586740605874578e-04, 8.410516994267004708e-04, 8.453431505968170539e-04, 8.496330206763990983e-04, 8.539213027736263732e-04, 8.582079899996856824e-04, 8.624930754685934892e-04, 8.667765522975855782e-04, 8.710584136065627030e-04, 8.753386525183816944e-04, 8.796172621591530740e-04, 8.838942356576826899e-04, 8.881695661457698725e-04, 8.924432467584012896e-04, 8.967152706336731010e-04, 9.009856309121356665e-04, 9.052543207380423299e-04, 9.095213332582139341e-04, 9.137866616229091106e-04, 9.180502989851681197e-04, 9.223122385011123074e-04, 9.265724733302387918e-04, 9.308309966348554849e-04, 9.350878015803873802e-04, 9.393428813356656006e-04, 9.435962290723704437e-04, 9.478478379653229244e-04, 9.520977011927879170e-04, 9.563458119359142737e-04, 9.605921633790254991e-04, 9.648367487099162795e-04, 9.690795611192040216e-04, 9.733205938010962505e-04, 9.775598399527326079e-04, 9.817972927744890790e-04, 9.860329454703647273e-04, 9.902667912469428121e-04, 9.944988233146438011e-04, 9.987290348870698619e-04, 1.002957419180919860e-03, 1.007183969416186684e-03, 1.011408678816456703e-03, 1.015631540608354869e-03, 1.019852548021831168e-03, 1.024071694290463108e-03, 1.028288972650890851e-03, 1.032504376343219236e-03, 1.036717898610825875e-03, 1.040929532700663428e-03, 1.045139271863172650e-03, 1.049347109351633604e-03, 1.053553038423310148e-03, 1.057757052338797674e-03, 1.061959144361940928e-03, 1.066159307760126962e-03, 1.070357535804110144e-03, 1.074553821768394011e-03, 1.078748158930683968e-03, 1.082940540572177200e-03, 1.087130959977848903e-03, 1.091319410435918858e-03, 1.095505885238117275e-03, 1.099690377679902716e-03, 1.103872881060372979e-03, 1.108053388681620862e-03, 1.112231893849955841e-03, 1.116408389874896196e-03, 1.120582870069545883e-03, 1.124755327750887263e-03, 1.128925756239144680e-03, 1.133094148858528223e-03, 1.137260498936598814e-03, 1.141424799804570053e-03, 1.145587044797575366e-03, 1.149747227254133272e-03, 1.153905340516444026e-03, 1.158061377930659367e-03, 1.162215332846359712e-03, 1.166367198616818706e-03, 1.170516968599313520e-03, 1.174664636154565834e-03, 1.178810194647033271e-03, 1.182953637445202785e-03, 1.187094957920947075e-03, 1.191234149450369831e-03, 1.195371205412709172e-03, 1.199506119191546096e-03, 1.203638884174174995e-03, 1.207769493751505207e-03, 1.211897941318282410e-03, 1.216024220273351003e-03, 1.220148324019127177e-03, 1.224270245961968416e-03, 1.228389979512007615e-03, 1.232507518083527992e-03, 1.236622855094421207e-03, 1.240735983966470774e-03, 1.244846898125558056e-03, 1.248955591001564905e-03, 1.253062056027755451e-03, 1.257166286641877434e-03, 1.261268276285626390e-03, 1.265368018404112874e-03, 1.269465506447047930e-03, 1.273560733867669511e-03, 1.277653694123578399e-03, 1.281744380676082696e-03, 1.285832786990517883e-03, 1.289918906536513749e-03, 1.294002732787443181e-03, 1.298084259220736152e-03, 1.302163479318138410e-03, 1.306240386565194530e-03, 1.310314974451515062e-03, 1.314387236471068615e-03, 1.318457166121642576e-03, 1.322524756905135192e-03, 1.326590002327827922e-03, 1.330652895899760721e-03, 1.334713431135473635e-03, 1.338771601553385765e-03, 1.342827400676063722e-03, 1.346880822030520645e-03, 1.350931859147662395e-03, 1.354980505562595030e-03, 1.359026754814883714e-03, 1.363070600448037725e-03, 1.367112036009776512e-03, 1.371151055052321132e-03, 1.375187651131863208e-03, 1.379221817808928569e-03, 1.383253548648211151e-03, 1.387282837218953117e-03, 1.391309677094392135e-03, 1.395334061852069067e-03, 1.399355985073993643e-03, 1.403375440346578320e-03, 1.407392421260022022e-03, 1.411406921409386972e-03, 1.415418934393989150e-03, 1.419428453817312644e-03, 1.423435473287296745e-03, 1.427439986416154018e-03, 1.431441986820760183e-03, 1.435441468122104639e-03, 1.439438423945574742e-03, 1.443432847921245722e-03, 1.447424733683348340e-03, 1.451414074870540152e-03, 1.455400865126091131e-03, 1.459385098097829882e-03, 1.463366767437505921e-03, 1.467345866801957142e-03, 1.471322389852067029e-03, 1.475296330253566971e-03, 1.479267681676419560e-03, 1.483236437795108081e-03, 1.487202592288896065e-03, 1.491166138841315113e-03, 1.495127071140449392e-03, 1.499085382879187817e-03, 1.503041067754727275e-03, 1.506994119468831094e-03, 1.510944531728118092e-03, 1.514892298243527202e-03, 1.518837412730604129e-03, 1.522779868909770887e-03, 1.526719660505807983e-03, 1.530656781248130888e-03, 1.534591224871060871e-03, 1.538522985113218713e-03, 1.542452055718331570e-03, 1.546378430434173709e-03, 1.550302103013744817e-03, 1.554223067214637478e-03, 1.558141316798976892e-03, 1.562056845533594130e-03, 1.565969647190316918e-03, 1.569879715545427967e-03, 1.573787044380050302e-03, 1.577691627479970967e-03, 1.581593458635993394e-03, 1.585492531643442572e-03, 1.589388840302407690e-03, 1.593282378417959846e-03, 1.597173139800054254e-03, 1.601061118262927640e-03, 1.604946307626162715e-03, 1.608828701714096632e-03, 1.612708294355722112e-03, 1.616585079384965425e-03, 1.620459050640532875e-03, 1.624330201966266195e-03, 1.628198527210615414e-03, 1.632064020226922695e-03, 1.635926674873695993e-03, 1.639786485014080612e-03, 1.643643444516152156e-03, 1.647497547253166548e-03, 1.651348787103059561e-03, 1.655197157948715483e-03, 1.659042653678237953e-03, 1.662885268184430623e-03, 1.666724995365081227e-03, 1.670561829123225249e-03, 1.674395763366537913e-03, 1.678226792008053218e-03, 1.682054908965559606e-03, 1.685880108161874483e-03, 1.689702383525094886e-03, 1.693521728988127591e-03, 1.697338138488912671e-03, 1.701151605970712766e-03, 1.704962125381623457e-03, 1.708769690674803330e-03, 1.712574295808765414e-03, 1.716375934746875191e-03, 1.720174601457690172e-03, 1.723970289914803118e-03, 1.727762994097099434e-03, 1.731552707988713797e-03, 1.735339425578387440e-03, 1.739123140860559082e-03, 1.742903847834732832e-03, 1.746681540505432223e-03, 1.750456212882358503e-03, 1.754227858980674697e-03, 1.757996472820485189e-03, 1.761762048427202186e-03, 1.765524579831378527e-03, 1.769284061069055719e-03, 1.773040486181258046e-03, 1.776793849214270554e-03, 1.780544144219898834e-03, 1.784291365254960090e-03, 1.788035506381554628e-03, 1.791776561667328231e-03, 1.795514525184978413e-03, 1.799249391012504003e-03, 1.802981153233482268e-03, 1.806709805936482357e-03, 1.810435343215746834e-03, 1.814157759170614446e-03, 1.817877047905773610e-03, 1.821593203531544306e-03, 1.825306220163356360e-03, 1.829016091922037405e-03, 1.832722812934050325e-03, 1.836426377331008396e-03, 1.840126779249950245e-03, 1.843824012833575766e-03, 1.847518072229767123e-03, 1.851208951591852428e-03, 1.854896645078853590e-03, 1.858581146854919926e-03, 1.862262451090083417e-03, 1.865940551959273603e-03, 1.869615443643407853e-03, 1.873287120328891771e-03, 1.876955576207136722e-03, 1.880620805475577461e-03, 1.884282802337079515e-03, 1.887941560999874344e-03, 1.891597075677743005e-03, 1.895249340590251207e-03, 1.898898349962292427e-03, 1.902544098024404936e-03, 1.906186579012612630e-03, 1.909825787168790414e-03, 1.913461716740152236e-03, 1.917094361979515419e-03, 1.920723717145478467e-03, 1.924349776502355149e-03, 1.927972534319579703e-03, 1.931591984872819663e-03, 1.935208122442969069e-03, 1.938820941316917812e-03, 1.942430435786980918e-03, 1.946036600151133380e-03, 1.949639428713309617e-03, 1.953238915782868311e-03, 1.956835055674891431e-03, 1.960427842710400857e-03, 1.964017271215914504e-03, 1.967603335523662299e-03, 1.971186029971881085e-03, 1.974765348904285525e-03, 1.978341286670383826e-03, 1.981913837625651643e-03, 1.985482996131055465e-03, 1.989048756553642421e-03, 1.992611113266023765e-03, 1.996170060646610366e-03, 1.999725593079869444e-03, 2.003277704955834949e-03, 2.006826390670385547e-03, 2.010371644625470570e-03, 2.013913461228635567e-03, 2.017451834893303330e-03, 2.020986760038982928e-03, 2.024518231090824752e-03, 2.028046242479851664e-03, 2.031570788643227883e-03, 2.035091864023772391e-03, 2.038609463070289833e-03, 2.042123580237428706e-03, 2.045634209985904700e-03, 2.049141346782472946e-03, 2.052644985099338643e-03, 2.056145119415126767e-03, 2.059641744214363388e-03, 2.063134853987373760e-03, 2.066624443230454921e-03, 2.070110506446142407e-03, 2.073593038142713257e-03, 2.077072032834537726e-03, 2.080547485041918821e-03, 2.084019389291408026e-03, 2.087487740115362943e-03, 2.090952532052163700e-03, 2.094413759646402470e-03, 2.097871417448807143e-03, 2.101325500015697491e-03, 2.104776001910007785e-03, 2.108222917700366527e-03, 2.111666241961803782e-03, 2.115105969275209944e-03, 2.118542094227588140e-03, 2.121974611412278007e-03, 2.125403515428523748e-03, 2.128828800881688802e-03, 2.132250462383519958e-03, 2.135668494551667702e-03, 2.139082892009947726e-03, 2.142493649388575120e-03, 2.145900761323705531e-03, 2.149304222457664153e-03, 2.152704027439220243e-03, 2.156100170923093157e-03, 2.159492647570220372e-03, 2.162881452047972150e-03, 2.166266579029662784e-03, 2.169648023195184204e-03, 2.173025779230166373e-03, 2.176399841826932250e-03, 2.179770205683994287e-03, 2.183136865505958153e-03, 2.186499816003727430e-03, 2.189859051894703541e-03, 2.193214567902358574e-03, 2.196566358756448650e-03, 2.199914419193283680e-03, 2.203258743955252910e-03, 2.206599327791136309e-03, 2.209936165455988772e-03, 2.213269251711333981e-03, 2.216598581325145752e-03, 2.219924149071275145e-03, 2.223245949730413666e-03, 2.226563978089601045e-03, 2.229878228941835783e-03, 2.233188697087005407e-03, 2.236495377331030807e-03, 2.239798264486544521e-03, 2.243097353372356002e-03, 2.246392638813703158e-03, 2.249684115642471786e-03, 2.252971778696766236e-03, 2.256255622821146632e-03, 2.259535642866824894e-03, 2.262811833691281364e-03, 2.266084190158439583e-03, 2.269352707138941674e-03, 2.272617379509695151e-03, 2.275878202154086715e-03, 2.279135169962236401e-03, 2.282388277830478887e-03, 2.285637520661966751e-03, 2.288882893366137473e-03, 2.292124390858988822e-03, 2.295362008063266644e-03, 2.298595739908039851e-03, 2.301825581328958460e-03, 2.305051527268429240e-03, 2.308273572675237102e-03, 2.311491712504741992e-03, 2.314705941719096601e-03, 2.317916255286854316e-03, 2.321122648183153968e-03, 2.324325115389986544e-03, 2.327523651895657426e-03, 2.330718252695465967e-03, 2.333908912790842033e-03, 2.337095627190295330e-03, 2.340278390908989096e-03, 2.343457198968316828e-03, 2.346632046396750996e-03, 2.349802928229391148e-03, 2.352969839507868931e-03, 2.356132775280575780e-03, 2.359291730602528902e-03, 2.362446700535671389e-03, 2.365597680148438103e-03, 2.368744664515995066e-03, 2.371887648720444157e-03, 2.375026627850418057e-03, 2.378161597001281907e-03, 2.381292551275311555e-03, 2.384419485781592504e-03, 2.387542395635574959e-03, 2.390661275959962435e-03, 2.393776121883898177e-03, 2.396886928543595727e-03, 2.399993691081846268e-03, 2.403096404648257141e-03, 2.406195064399460019e-03, 2.409289665498686762e-03, 2.412380203116000574e-03, 2.415466672428520645e-03, 2.418549068619981098e-03, 2.421627386880988598e-03, 2.424701622409195390e-03, 2.427771770408921129e-03, 2.430837826091358875e-03, 2.433899784674788472e-03, 2.436957641384095586e-03, 2.440011391451353279e-03, 2.443061030115307661e-03, 2.446106552621629855e-03, 2.449147954223183151e-03, 2.452185230179272733e-03, 2.455218375756539929e-03, 2.458247386228507719e-03, 2.461272256875513074e-03, 2.464292982984822751e-03, 2.467309559850900443e-03, 2.470321982774950978e-03, 2.473330247065174455e-03, 2.476334348036935383e-03, 2.479334281012407493e-03, 2.482330041320814865e-03, 2.485321624298324379e-03, 2.488309025288258647e-03, 2.491292239641009279e-03, 2.494271262713607974e-03, 2.497246089870523190e-03, 2.500216716483173555e-03, 2.503183137929924831e-03, 2.506145349596243434e-03, 2.509103346874603201e-03, 2.512057125164737781e-03, 2.515006679873264643e-03, 2.517952006413887167e-03, 2.520893100207592837e-03, 2.523829956682275503e-03, 2.526762571272927506e-03, 2.529690939421796233e-03, 2.532615056578294780e-03, 2.535534918198588221e-03, 2.538450519746428876e-03, 2.541361856692443775e-03, 2.544268924514416982e-03, 2.547171718697457000e-03, 2.550070234733617727e-03, 2.552964468122333012e-03, 2.555854414370056261e-03, 2.558740068990405288e-03, 2.561621427504379156e-03, 2.564498485439987378e-03, 2.567371238332445942e-03, 2.570239681724362062e-03, 2.573103811165377251e-03, 2.575963622212345139e-03, 2.578819110429558283e-03, 2.581670271388349612e-03, 2.584517100667288458e-03, 2.587359593852399560e-03, 2.590197746536692953e-03, 2.593031554320786736e-03, 2.595861012812106933e-03, 2.598686117625739669e-03, 2.601506864384008771e-03, 2.604323248716385562e-03, 2.607135266259646717e-03, 2.609942912658067254e-03, 2.612746183563046266e-03, 2.615545074633349350e-03, 2.618339581535035314e-03, 2.621129699941643094e-03, 2.623915425533909426e-03, 2.626696753999873801e-03, 2.629473681035083589e-03, 2.632246202342492999e-03, 2.635014313632042839e-03, 2.637778010621432030e-03, 2.640537289035745083e-03, 2.643292144607047468e-03, 2.646042573075274660e-03, 2.648788570187412053e-03, 2.651530131698113819e-03, 2.654267253369271395e-03, 2.656999930970171779e-03, 2.659728160277733018e-03, 2.662451937076100884e-03, 2.665171257156874821e-03, 2.667886116319272746e-03, 2.670596510369781067e-03, 2.673302435122354177e-03, 2.676003886398560169e-03, 2.678700860027308488e-03, 2.681393351844937097e-03, 2.684081357695462713e-03, 2.686764873430160135e-03, 2.689443894908032789e-03, 2.692118417995404637e-03, 2.694788438566111423e-03, 2.697453952501674152e-03, 2.700114955690966888e-03, 2.702771444030392396e-03, 2.705423413424055176e-03, 2.708070859783423198e-03, 2.710713779027515685e-03, 2.713352167083072242e-03, 2.715986019884240616e-03, 2.718615333372754062e-03, 2.721240103497881042e-03, 2.723860326216588287e-03, 2.726475997493472275e-03, 2.729087113300360679e-03, 2.731693669617063502e-03, 2.734295662430953275e-03, 2.736893087736680993e-03, 2.739485941536855696e-03, 2.742074219841649386e-03, 2.744657918668753655e-03, 2.747237034043532779e-03, 2.749811561998937847e-03, 2.752381498575757861e-03, 2.754946839822233328e-03, 2.757507581794271800e-03, 2.760063720555620045e-03, 2.762615252177511894e-03, 2.765162172738867309e-03, 2.767704478326395590e-03, 2.770242165034553315e-03, 2.772775228965142311e-03, 2.775303666228072941e-03, 2.777827472940662401e-03, 2.780346645228171185e-03, 2.782861179223408872e-03, 2.785371071066909763e-03, 2.787876316907096381e-03, 2.790376912899970255e-03, 2.792872855209257640e-03, 2.795364140006611174e-03, 2.797850763471267273e-03, 2.800332721790210495e-03, 2.802810011158369131e-03, 2.805282627778258719e-03, 2.807750567860185006e-03, 2.810213827622396170e-03, 2.812672403290750623e-03, 2.815126291098915632e-03, 2.817575487288515642e-03, 2.820019988108754105e-03, 2.822459789816929993e-03, 2.824894888677752149e-03, 2.827325280964110808e-03, 2.829750962956643912e-03, 2.832171930943713258e-03, 2.834588181221534605e-03, 2.836999710094318620e-03, 2.839406513873967298e-03, 2.841808588880289071e-03, 2.844205931440888218e-03, 2.846598537891426809e-03, 2.848986404575250871e-03, 2.851369527843589883e-03, 2.853747904055664759e-03, 2.856121529578639715e-03, 2.858490400787251466e-03, 2.860854514064456282e-03, 2.863213865801060489e-03, 2.865568452395673635e-03, 2.867918270254884994e-03, 2.870263315793129995e-03, 2.872603585432951297e-03, 2.874939075604654448e-03, 2.877269782746493931e-03, 2.879595703304802835e-03, 2.881916833733717473e-03, 2.884233170495343040e-03, 2.886544710059869411e-03, 2.888851448905323076e-03, 2.891153383517685097e-03, 2.893450510391068053e-03, 2.895742826027415066e-03, 2.898030326936648117e-03, 2.900313009636848460e-03, 2.902590870653866308e-03, 2.904863906521778800e-03, 2.907132113782504024e-03, 2.909395488985971456e-03, 2.911654028690302803e-03, 2.913907729461452482e-03, 2.916156587873432269e-03, 2.918400600508422749e-03, 2.920639763956505743e-03, 2.922874074815787031e-03, 2.925103529692581542e-03, 2.927328125201115842e-03, 2.929547857963706384e-03, 2.931762724610699651e-03, 2.933972721780602269e-03, 2.936177846120035465e-03, 2.938378094283426289e-03, 2.940573462933567493e-03, 2.942763948741281867e-03, 2.944949548385403151e-03, 2.947130258552851500e-03, 2.949306075938818664e-03, 2.951476997246429285e-03, 2.953643019186995462e-03, 2.955804138479881452e-03, 2.957960351852737847e-03, 2.960111656041189768e-03, 2.962258047788989945e-03, 2.964399523848131046e-03, 2.966536080978801875e-03, 2.968667715949045195e-03, 2.970794425535393506e-03, 2.972916206522351664e-03, 2.975033055702572087e-03, 2.977144969877036466e-03, 2.979251945854687143e-03, 2.981353980452866852e-03, 2.983451070496925383e-03, 2.985543212820407355e-03, 2.987630404265197073e-03, 2.989712641681228824e-03, 2.991789921926648211e-03, 2.993862241867914498e-03, 2.995929598379607622e-03, 2.997991988344482408e-03, 3.000049408653662850e-03, 3.002101856206371502e-03, 3.004149327910027052e-03, 3.006191820680464630e-03, 3.008229331441545067e-03, 3.010261857125601584e-03, 3.012289394672894652e-03, 3.014311941032227389e-03, 3.016329493160594278e-03, 3.018342048023167721e-03, 3.020349602593390415e-03, 3.022352153853097648e-03, 3.024349698792267501e-03, 3.026342234409182610e-03, 3.028329757710497387e-03, 3.030312265711055438e-03, 3.032289755434024441e-03, 3.034262223910831526e-03, 3.036229668181325472e-03, 3.038192085293540349e-03, 3.040149472303818254e-03, 3.042101826276882599e-03, 3.044049144285854592e-03, 3.045991423411904559e-03, 3.047928660744812692e-03, 3.049860853382494168e-03, 3.051787998431380357e-03, 3.053710093006091388e-03, 3.055627134229615266e-03, 3.057539119233399806e-03, 3.059446045157126256e-03, 3.061347909148820316e-03, 3.063244708365013037e-03, 3.065136439970478008e-03, 3.067023101138342377e-03, 3.068904689050243415e-03, 3.070781200896067001e-03, 3.072652633874072090e-03, 3.074518985191065923e-03, 3.076380252062031057e-03, 3.078236431710542568e-03, 3.080087521368447129e-03, 3.081933518275979233e-03, 3.083774419681931632e-03, 3.085610222843343520e-03, 3.087440925025713902e-03, 3.089266523503065784e-03, 3.091087015557708942e-03, 3.092902398480392150e-03, 3.094712669570433283e-03, 3.096517826135439591e-03, 3.098317865491461223e-03, 3.100112784963128271e-03, 3.101902581883381887e-03, 3.103687253593665971e-03, 3.105466797443825252e-03, 3.107241210792260119e-03, 3.109010491005858526e-03, 3.110774635459745766e-03, 3.112533641537748499e-03, 3.114287506632147130e-03, 3.116036228143589503e-03, 3.117779803481232279e-03, 3.119518230062824637e-03, 3.121251505314493174e-03, 3.122979626670884142e-03, 3.124702591575117053e-03, 3.126420397478926055e-03, 3.128133041842424879e-03, 3.129840522134242145e-03, 3.131542835831592486e-03, 3.133239980420259637e-03, 3.134931953394291555e-03, 3.136618752256536882e-03, 3.138300374518193919e-03, 3.139976817699120272e-03, 3.141648079327609942e-03, 3.143314156940495239e-03, 3.144975048083251297e-03, 3.146630750309789212e-03, 3.148281261182579640e-03, 3.149926578272736494e-03, 3.151566699159832636e-03, 3.153201621432000050e-03, 3.154831342686036967e-03, 3.156455860527199262e-03, 3.158075172569304537e-03, 3.159689276434873070e-03, 3.161298169754873238e-03, 3.162901850168863774e-03, 3.164500315325085699e-03, 3.166093562880226836e-03, 3.167681590499749240e-03, 3.169264395857444676e-03, 3.170841976635932480e-03, 3.172414330526382008e-03, 3.173981455228514371e-03, 3.175543348450628883e-03, 3.177100007909757461e-03, 3.178651431331438668e-03, 3.180197616449827007e-03, 3.181738561007806977e-03, 3.183274262756770161e-03, 3.184804719456767880e-03, 3.186329928876467828e-03, 3.187849888793209581e-03, 3.189364596993032354e-03, 3.190874051270372290e-03, 3.192378249428558593e-03, 3.193877189279494769e-03, 3.195370868643680751e-03, 3.196859285350292686e-03, 3.198342437237142177e-03, 3.199820322150786003e-03, 3.201292937946344404e-03, 3.202760282487608200e-03, 3.204222353647132038e-03, 3.205679149306029686e-03, 3.207130667354110218e-03, 3.208576905689934818e-03, 3.210017862220656323e-03, 3.211453534862109861e-03, 3.212883921538909129e-03, 3.214309020184265980e-03, 3.215728828740080196e-03, 3.217143345157025790e-03, 3.218552567394375799e-03, 3.219956493420205249e-03, 3.221355121211206835e-03, 3.222748448752770292e-03, 3.224136474039104687e-03, 3.225519195073024616e-03, 3.226896609866049519e-03, 3.228268716438534216e-03, 3.229635512819421708e-03, 3.230996997046422722e-03, 3.232353167166037832e-03, 3.233704021233398725e-03, 3.235049557312380530e-03, 3.236389773475686384e-03, 3.237724667804619746e-03, 3.239054238389377140e-03, 3.240378483328695998e-03, 3.241697400730230230e-03, 3.243010988710380658e-03, 3.244319245394120237e-03, 3.245622168915339271e-03, 3.246919757416679743e-03, 3.248212009049459854e-03, 3.249498921973787650e-03, 3.250780494358513316e-03, 3.252056724381335862e-03, 3.253327610228638322e-03, 3.254593150095561917e-03, 3.255853342186115339e-03, 3.257108184712990441e-03, 3.258357675897672820e-03, 3.259601813970463072e-03, 3.260840597170474621e-03, 3.262074023745452876e-03, 3.263302091952111766e-03, 3.264524800055819756e-03, 3.265742146330852247e-03, 3.266954129060191652e-03, 3.268160746535612830e-03, 3.269361997057778496e-03, 3.270557878936070518e-03, 3.271748390488666246e-03, 3.272933530042649967e-03, 3.274113295933792165e-03, 3.275287686506725589e-03, 3.276456700114945258e-03, 3.277620335120686162e-03, 3.278778589894996553e-03, 3.279931462817832488e-03, 3.281078952277855301e-03, 3.282221056672674896e-03, 3.283357774408622500e-03, 3.284489103900879465e-03, 3.285615043573539718e-03, 3.286735591859372540e-03, 3.287850747200125705e-03, 3.288960508046349842e-03, 3.290064872857391496e-03, 3.291163840101438229e-03, 3.292257408255589747e-03, 3.293345575805729959e-03, 3.294428341246578591e-03, 3.295505703081767507e-03, 3.296577659823727094e-03, 3.297644209993761278e-03, 3.298705352121986383e-03, 3.299761084747451691e-03, 3.300811406418059646e-03, 3.301856315690447890e-03, 3.302895811130267690e-03, 3.303929891311993550e-03, 3.304958554818922343e-03, 3.305981800243247039e-03, 3.306999626185998589e-03, 3.308012031257169961e-03, 3.309019014075536592e-03, 3.310020573268766548e-03, 3.311016707473457381e-03, 3.312007415335035086e-03, 3.312992695507786193e-03, 3.313972546654949704e-03, 3.314946967448656381e-03, 3.315915956569776956e-03, 3.316879512708248261e-03, 3.317837634562780490e-03, 3.318790320841067537e-03, 3.319737570259613524e-03, 3.320679381543820835e-03, 3.321615753428069050e-03, 3.322546684655555780e-03, 3.323472173978390780e-03, 3.324392220157631941e-03, 3.325306821963197688e-03, 3.326215978173883026e-03, 3.327119687577487044e-03, 3.328017948970613416e-03, 3.328910761158806585e-03, 3.329798122956571273e-03, 3.330680033187258422e-03, 3.331556490683144130e-03, 3.332427494285465641e-03, 3.333293042844302952e-03, 3.334153135218751417e-03, 3.335007770276700572e-03, 3.335856946895056178e-03, 3.336700663959640475e-03, 3.337538920365156619e-03, 3.338371715015234220e-03, 3.339199046822473142e-03, 3.340020914708369346e-03, 3.340837317603346547e-03, 3.341648254446740601e-03, 3.342453724186880606e-03, 3.343253725780971370e-03, 3.344048258195157167e-03, 3.344837320404535179e-03, 3.345620911393179780e-03, 3.346399030153971235e-03, 3.347171675688860679e-03, 3.347938847008718327e-03, 3.348700543133265820e-03, 3.349456763091280924e-03, 3.350207505920386325e-03, 3.350952770667236114e-03, 3.351692556387390019e-03, 3.352426862145312537e-03, 3.353155687014508675e-03, 3.353879030077353517e-03, 3.354596890425187630e-03, 3.355309267158346122e-03, 3.356016159386067572e-03, 3.356717566226545633e-03, 3.357413486806974569e-03, 3.358103920263458622e-03, 3.358788865741044963e-03, 3.359468322393799593e-03, 3.360142289384681572e-03, 3.360810765885667486e-03, 3.361473751077648665e-03, 3.362131244150479321e-03, 3.362783244303008210e-03, 3.363429750743007068e-03, 3.364070762687233068e-03, 3.364706279361410601e-03, 3.365336300000226506e-03, 3.365960823847302750e-03, 3.366579850155280128e-03, 3.367193378185722851e-03, 3.367801407209190974e-03, 3.368403936505188351e-03, 3.369000965362198199e-03, 3.369592493077724297e-03, 3.370178518958127055e-03, 3.370759042318839053e-03, 3.371334062484256620e-03, 3.371903578787673918e-03, 3.372467590571420846e-03, 3.373026097186823148e-03, 3.373579097994123047e-03, 3.374126592362563376e-03, 3.374668579670345950e-03, 3.375205059304699651e-03, 3.375736030661774609e-03, 3.376261493146708557e-03, 3.376781446173654153e-03, 3.377295889165706118e-03, 3.377804821554938539e-03, 3.378308242782426547e-03, 3.378806152298237647e-03, 3.379298549561352352e-03, 3.379785434039805133e-03, 3.380266805210572524e-03, 3.380742662559639913e-03, 3.381213005581938658e-03, 3.381677833781415905e-03, 3.382137146670983422e-03, 3.382590943772546647e-03, 3.383039224616986914e-03, 3.383481988744173590e-03, 3.383919235702967116e-03, 3.384350965051180406e-03, 3.384777176355669055e-03, 3.385197869192217279e-03, 3.385613043145627252e-03, 3.386022697809681382e-03, 3.386426832787131896e-03, 3.386825447689736836e-03, 3.387218542138239249e-03, 3.387606115762349396e-03, 3.387988168200794202e-03, 3.388364699101255231e-03, 3.388735708120418130e-03, 3.389101194923963955e-03, 3.389461159186549655e-03, 3.389815600591800700e-03, 3.390164518832383071e-03, 3.390507913609896139e-03, 3.390845784634943360e-03, 3.391178131627126200e-03, 3.391504954315035895e-03, 3.391826252436228300e-03, 3.392142025737258145e-03, 3.392452273973689016e-03, 3.392756996910059088e-03, 3.393056194319851639e-03, 3.393349865985595230e-03, 3.393638011698793880e-03, 3.393920631259915357e-03, 3.394197724478437150e-03, 3.394469291172802668e-03, 3.394735331170469807e-03, 3.394995844307849807e-03, 3.395250830430367097e-03, 3.395500289392419831e-03, 3.395744221057402003e-03, 3.395982625297680468e-03, 3.396215501994610548e-03, 3.396442851038552948e-03, 3.396664672328813042e-03, 3.396880965773726741e-03, 3.397091731290572021e-03, 3.397296968805648288e-03, 3.397496678254215662e-03, 3.397690859580524900e-03, 3.397879512737810026e-03, 3.398062637688287028e-03, 3.398240234403156462e-03, 3.398412302862593038e-03, 3.398578843055767747e-03, 3.398739854980812290e-03, 3.398895338644865489e-03, 3.399045294064021675e-03, 3.399189721263367985e-03, 3.399328620276984361e-03, 3.399461991147887611e-03, 3.399589833928119871e-03, 3.399712148678662310e-03, 3.399828935469511454e-03, 3.399940194379616303e-03, 3.400045925496903917e-03, 3.400146128918271615e-03, 3.400240804749616891e-03, 3.400329953105784946e-03, 3.400413574110612049e-03, 3.400491667896892584e-03, 3.400564234606418511e-03, 3.400631274389914749e-03, 3.400692787407109865e-03, 3.400748773826700079e-03, 3.400799233826341025e-03, 3.400844167592647748e-03, 3.400883575321236342e-03, 3.400917457216654123e-03, 3.400945813492441648e-03, 3.400968644371095851e-03, 3.400985950084074814e-03, 3.400997730871806006e-03, 3.401003986983682816e-03, 3.401004718678058043e-03, 3.400999926222252143e-03, 3.400989609892521130e-03, 3.400973769974116427e-03, 3.400952406761242365e-03, 3.400925520557040570e-03, 3.400893111673619889e-03, 3.400855180432055952e-03, 3.400811727162369926e-03, 3.400762752203542825e-03, 3.400708255903498161e-03, 3.400648238619128402e-03, 3.400582700716274151e-03, 3.400511642569706370e-03, 3.400435064563175815e-03, 3.400352967089352325e-03, 3.400265350549881195e-03, 3.400172215355340682e-03, 3.400073561925239830e-03, 3.399969390688057508e-03, 3.399859702081202504e-03, 3.399744496551029577e-03, 3.399623774552815170e-03, 3.399497536550815085e-03, 3.399365783018185993e-03, 3.399228514437046145e-03, 3.399085731298421165e-03, 3.398937434102306931e-03, 3.398783623357598017e-03, 3.398624299582147547e-03, 3.398459463302736829e-03, 3.398289115055061482e-03, 3.398113255383749219e-03, 3.397931884842360275e-03, 3.397745003993398252e-03, 3.397552613408238130e-03, 3.397354713667247259e-03, 3.397151305359648321e-03, 3.396942389083642492e-03, 3.396727965446297119e-03, 3.396508035063628556e-03, 3.396282598560580908e-03, 3.396051656570966623e-03, 3.395815209737557995e-03, 3.395573258712012137e-03, 3.395325804154892668e-03, 3.395072846735700499e-03, 3.394814387132815293e-03, 3.394550426033525817e-03, 3.394280964134055532e-03, 3.394006002139468049e-03, 3.393725540763793333e-03, 3.393439580729933156e-03, 3.393148122769666306e-03, 3.392851167623701491e-03, 3.392548716041621400e-03, 3.392240768781904815e-03, 3.391927326611936157e-03, 3.391608390307967319e-03, 3.391283960655140216e-03, 3.390954038447505006e-03, 3.390618624487977146e-03, 3.390277719588344774e-03, 3.389931324569306435e-03, 3.389579440260417735e-03, 3.389222067500117803e-03, 3.388859207135723212e-03, 3.388490860023396761e-03, 3.388117027028232468e-03, 3.387737709024139354e-03, 3.387352906893909086e-03, 3.386962621529215119e-03, 3.386566853830590140e-03, 3.386165604707401782e-03, 3.385758875077916809e-03, 3.385346665869241271e-03, 3.384928978017343049e-03, 3.384505812467030177e-03, 3.384077170171979464e-03, 3.383643052094723481e-03, 3.383203459206620637e-03, 3.382758392487886841e-03, 3.382307852927606343e-03, 3.381851841523663207e-03, 3.381390359282818517e-03, 3.380923407220648349e-03, 3.380450986361570234e-03, 3.379973097738846622e-03, 3.379489742394571009e-03, 3.379000921379641045e-03, 3.378506635753833996e-03, 3.378006886585690517e-03, 3.377501674952615267e-03, 3.376991001940850019e-03, 3.376474868645387793e-03, 3.375953276170110331e-03, 3.375426225627689656e-03, 3.374893718139588064e-03, 3.374355754836103234e-03, 3.373812336856346541e-03, 3.373263465348201422e-03, 3.372709141468397537e-03, 3.372149366382415359e-03, 3.371584141264608037e-03, 3.371013467298058716e-03, 3.370437345674655565e-03, 3.369855777595091341e-03, 3.369268764268871195e-03, 3.368676306914240252e-03, 3.368078406758252558e-03, 3.367475065036764151e-03, 3.366866282994367566e-03, 3.366252061884454725e-03, 3.365632402969209562e-03, 3.365007307519567257e-03, 3.364376776815243726e-03, 3.363740812144672739e-03, 3.363099414805158574e-03, 3.362452586102673054e-03, 3.361800327351970475e-03, 3.361142639876599746e-03, 3.360479525008810281e-03, 3.359810984089658253e-03, 3.359137018468898173e-03, 3.358457629505064851e-03, 3.357772818565436974e-03, 3.357082587025999806e-03, 3.356386936271522382e-03, 3.355685867695499397e-03, 3.354979382700124316e-03, 3.354267482696354861e-03, 3.353550169103901735e-03, 3.352827443351118902e-03, 3.352099306875161010e-03, 3.351365761121894056e-03, 3.350626807545831632e-03, 3.349882447610304063e-03, 3.349132682787253710e-03, 3.348377514557401499e-03, 3.347616944410179707e-03, 3.346850973843651725e-03, 3.346079604364641732e-03, 3.345302837488670945e-03, 3.344520674739909910e-03, 3.343733117651265241e-03, 3.342940167764332348e-03, 3.342141826629350769e-03, 3.341338095805273124e-03, 3.340528976859756440e-03, 3.339714471369074119e-03, 3.338894580918227387e-03, 3.338069307100819533e-03, 3.337238651519237181e-03, 3.336402615784436927e-03, 3.335561201516018190e-03, 3.334714410342364595e-03, 3.333862243900391140e-03, 3.333004703835699880e-03, 3.332141791802559552e-03, 3.331273509463881718e-03, 3.330399858491239849e-03, 3.329520840564796028e-03, 3.328636457373378588e-03, 3.327746710614482538e-03, 3.326851601994158976e-03, 3.325951133227149532e-03, 3.325045306036812642e-03, 3.324134122155098826e-03, 3.323217583322548088e-03, 3.322295691288446474e-03, 3.321368447810539408e-03, 3.320435854655281495e-03, 3.319497913597660877e-03, 3.318554626421312860e-03, 3.317605994918486519e-03, 3.316652020889959262e-03, 3.315692706145153493e-03, 3.314728052502088473e-03, 3.313758061787307890e-03, 3.312782735835988722e-03, 3.311802076491902631e-03, 3.310816085607303210e-03, 3.309824765043115069e-03, 3.308828116668815437e-03, 3.307826142362363473e-03, 3.306818844010387618e-03, 3.305806223507990003e-03, 3.304788282758878721e-03, 3.303765023675307548e-03, 3.302736448178002215e-03, 3.301702558196381154e-03, 3.300663355668267095e-03, 3.299618842540049703e-03, 3.298569020766679068e-03, 3.297513892311661372e-03, 3.296453459146929214e-03, 3.295387723253030698e-03, 3.294316686619011472e-03, 3.293240351242376126e-03, 3.292158719129203558e-03, 3.291071792294061969e-03, 3.289979572760048758e-03, 3.288882062558691650e-03, 3.287779263730020250e-03, 3.286671178322688337e-03, 3.285557808393682871e-03, 3.284439156008511339e-03, 3.283315223241213034e-03, 3.282186012174275348e-03, 3.281051524898683652e-03, 3.279911763513810273e-03, 3.278766730127581457e-03, 3.277616426856394538e-03, 3.276460855824999546e-03, 3.275300019166693492e-03, 3.274133919023233200e-03, 3.272962557544755943e-03, 3.271785936889811969e-03, 3.270604059225572235e-03, 3.269416926727425950e-03, 3.268224541579342265e-03, 3.267026905973623510e-03, 3.265824022111043102e-03, 3.264615892200817791e-03, 3.263402518460497941e-03, 3.262183903116116276e-03, 3.260960048402107223e-03, 3.259730956561243155e-03, 3.258496629844761898e-03, 3.257257070512313817e-03, 3.256012280831833885e-03, 3.254762263079752881e-03, 3.253507019540852543e-03, 3.252246552508242152e-03, 3.250980864283464777e-03, 3.249709957176449143e-03, 3.248433833505396436e-03, 3.247152495596976763e-03, 3.245865945786099299e-03, 3.244574186416194182e-03, 3.243277219838894190e-03, 3.241975048414194333e-03, 3.240667674510489156e-03, 3.239355100504519823e-03, 3.238037328781251823e-03, 3.236714361734081401e-03, 3.235386201764696348e-03, 3.234052851283127604e-03, 3.232714312707647784e-03, 3.231370588464894337e-03, 3.230021680989866948e-03, 3.228667592725747559e-03, 3.227308326124023099e-03, 3.225943883644650286e-03, 3.224574267755673119e-03, 3.223199480933441885e-03, 3.221819525662764517e-03, 3.220434404436505436e-03, 3.219044119755946377e-03, 3.217648674130532249e-03, 3.216248070078043739e-03, 3.214842310124530530e-03, 3.213431396804196805e-03, 3.212015332659592503e-03, 3.210594120241502293e-03, 3.209167762108873587e-03, 3.207736260828973965e-03, 3.206299618977286221e-03, 3.204857839137449822e-03, 3.203410923901397079e-03, 3.201958875869299805e-03, 3.200501697649437479e-03, 3.199039391858404541e-03, 3.197571961120897460e-03, 3.196099408069892536e-03, 3.194621735346576518e-03, 3.193138945600199584e-03, 3.191651041488306056e-03, 3.190158025676630756e-03, 3.188659900838971498e-03, 3.187156669657397259e-03, 3.185648334822151900e-03, 3.184134899031517991e-03, 3.182616364992055333e-03, 3.181092735418425323e-03, 3.179564013033473781e-03, 3.178030200568132940e-03, 3.176491300761411906e-03, 3.174947316360679419e-03, 3.173398250121210219e-03, 3.171844104806414034e-03, 3.170284883188004277e-03, 3.168720588045608171e-03, 3.167151222167009610e-03, 3.165576788348140914e-03, 3.163997289393012148e-03, 3.162412728113740169e-03, 3.160823107330457127e-03, 3.159228429871458344e-03, 3.157628698573109512e-03, 3.156023916279766459e-03, 3.154414085843946017e-03, 3.152799210126215005e-03, 3.151179291995159868e-03, 3.149554334327347646e-03, 3.147924340007619143e-03, 3.146289311928617948e-03, 3.144649252991189858e-03, 3.143004166104069325e-03, 3.141354054184132289e-03, 3.139698920156261744e-03, 3.138038766953286582e-03, 3.136373597516096956e-03, 3.134703414793643412e-03, 3.133028221742731757e-03, 3.131348021328297145e-03, 3.129662816523238848e-03, 3.127972610308357802e-03, 3.126277405672531380e-03, 3.124577205612609314e-03, 3.122872013133312641e-03, 3.121161831247460956e-03, 3.119446662975685746e-03, 3.117726511346703179e-03, 3.116001379397147133e-03, 3.114271270171465548e-03, 3.112536186722296861e-03, 3.110796132109997295e-03, 3.109051109402873308e-03, 3.107301121677243181e-03, 3.105546172017322522e-03, 3.103786263515152279e-03, 3.102021399270764399e-03, 3.100251582392056070e-03, 3.098476815994881655e-03, 3.096697103202843224e-03, 3.094912447147549900e-03, 3.093122850968499458e-03, 3.091328317812975547e-03, 3.089528850836079782e-03, 3.087724453201024042e-03, 3.085915128078642582e-03, 3.084100878647650073e-03, 3.082281708094694508e-03, 3.080457619614209754e-03, 3.078628616408520067e-03, 3.076794701687646672e-03, 3.074955878669557129e-03, 3.073112150580033924e-03, 3.071263520652565190e-03, 3.069409992128537251e-03, 3.067551568257162204e-03, 3.065688252295319192e-03, 3.063820047507782082e-03, 3.061946957167128395e-03, 3.060068984553588819e-03, 3.058186132955271856e-03, 3.056298405668071878e-03, 3.054405805995497394e-03, 3.052508337249004548e-03, 3.050606002747602036e-03, 3.048698805818203690e-03, 3.046786749795425079e-03, 3.044869838021511520e-03, 3.042948073846539307e-03, 3.041021460628322900e-03, 3.039090001732260536e-03, 3.037153700531575792e-03, 3.035212560407201787e-03, 3.033266584747642842e-03, 3.031315776949216906e-03, 3.029360140415889024e-03, 3.027399678559333351e-03, 3.025434394798826466e-03, 3.023464292561272963e-03, 3.021489375281469995e-03, 3.019509646401630654e-03, 3.017525109371660668e-03, 3.015535767649194388e-03, 3.013541624699496782e-03, 3.011542683995343302e-03, 3.009538949017254508e-03, 3.007530423253326930e-03, 3.005517110199324576e-03, 3.003499013358484210e-03, 3.001476136241759077e-03, 2.999448482367730439e-03, 2.997416055262444069e-03, 2.995378858459500464e-03, 2.993336895500346706e-03, 2.991290169933683192e-03, 2.989238685315954991e-03, 2.987182445211163627e-03, 2.985121453190731338e-03, 2.983055712833798580e-03, 2.980985227726872747e-03, 2.978910001464130878e-03, 2.976830037647271339e-03, 2.974745339885385021e-03, 2.972655911795201670e-03, 2.970561757000973659e-03, 2.968462879134305121e-03, 2.966359281834449017e-03, 2.964250968748138437e-03, 2.962137943529445216e-03, 2.960020209840079613e-03, 2.957897771349195151e-03, 2.955770631733285834e-03, 2.953638794676495798e-03, 2.951502263870165680e-03, 2.949361043013436733e-03, 2.947215135812591633e-03, 2.945064545981391883e-03, 2.942909277241119014e-03, 2.940749333320484375e-03, 2.938584717955473012e-03, 2.936415434889593033e-03, 2.934241487873787569e-03, 2.932062880666224877e-03, 2.929879617032624464e-03, 2.927691700746017697e-03, 2.925499135586882241e-03, 2.923301925342947777e-03, 2.921100073809266683e-03, 2.918893584788541905e-03, 2.916682462090514592e-03, 2.914466709532295870e-03, 2.912246330938604924e-03, 2.910021330141197415e-03, 2.907791710979206346e-03, 2.905557477299186304e-03, 2.903318632954939114e-03, 2.901075181807614891e-03, 2.898827127725524689e-03, 2.896574474584410249e-03, 2.894317226267304789e-03, 2.892055386664359531e-03, 2.889788959673141207e-03, 2.887517949198486339e-03, 2.885242359152336879e-03, 2.882962193454029903e-03, 2.880677456030147562e-03, 2.878388150814367892e-03, 2.876094281747783137e-03, 2.873795852778502063e-03, 2.871492867862026396e-03, 2.869185330961039181e-03, 2.866873246045291597e-03, 2.864556617091872266e-03, 2.862235448085065879e-03, 2.859909743016176686e-03, 2.857579505883840309e-03, 2.855244740693869358e-03, 2.852905451459076050e-03, 2.850561642199571019e-03, 2.848213316942632776e-03, 2.845860479722506480e-03, 2.843503134580741779e-03, 2.841141285565948211e-03, 2.838774936733914900e-03, 2.836404092147447927e-03, 2.834028755876395050e-03, 2.831648931998003924e-03, 2.829264624596334460e-03, 2.826875837762557204e-03, 2.824482575595024022e-03, 2.822084842199178330e-03, 2.819682641687362105e-03, 2.817275978179111656e-03, 2.814864855800992827e-03, 2.812449278686634819e-03, 2.810029250976574071e-03, 2.807604776818515765e-03, 2.805175860367187680e-03, 2.802742505784234801e-03, 2.800304717238246647e-03, 2.797862498905133704e-03, 2.795415854967431366e-03, 2.792964789614934846e-03, 2.790509307044179623e-03, 2.788049411458858647e-03, 2.785585107069624144e-03, 2.783116398093905906e-03, 2.780643288756277746e-03, 2.778165783288215514e-03, 2.775683885928013385e-03, 2.773197600921019357e-03, 2.770706932519530728e-03, 2.768211884982571189e-03, 2.765712462576251640e-03, 2.763208669573570270e-03, 2.760700510254269872e-03, 2.758187988905124507e-03, 2.755671109819807230e-03, 2.753149877298663277e-03, 2.750624295649157624e-03, 2.748094369185313801e-03, 2.745560102228393907e-03, 2.743021499106165686e-03, 2.740478564153302383e-03, 2.737931301711394455e-03, 2.735379716128861095e-03, 2.732823811760763319e-03, 2.730263592969136167e-03, 2.727699064122804384e-03, 2.725130229597228903e-03, 2.722557093774803476e-03, 2.719979661044646512e-03, 2.717397935802704292e-03, 2.714811922451564052e-03, 2.712221625400514698e-03, 2.709627049065911099e-03, 2.707028197870534839e-03, 2.704425076243928156e-03, 2.701817688622478938e-03, 2.699206039449234245e-03, 2.696590133173996148e-03, 2.693969974253106192e-03, 2.691345567149759817e-03, 2.688716916333837650e-03, 2.686084026281735076e-03, 2.683446901476676649e-03, 2.680805546408552599e-03, 2.678159965573790463e-03, 2.675510163475409726e-03, 2.672856144623404328e-03, 2.670197913534012348e-03, 2.667535474730307974e-03, 2.664868832742000714e-03, 2.662197992105207276e-03, 2.659522957362904332e-03, 2.656843733064404630e-03, 2.654160323765795016e-03, 2.651472734029740406e-03, 2.648780968425284727e-03, 2.646085031528226921e-03, 2.643384927920908872e-03, 2.640680662192043237e-03, 2.637972238937058653e-03, 2.635259662757919331e-03, 2.632542938262921219e-03, 2.629822070067070611e-03, 2.627097062791866004e-03, 2.624367921065128961e-03, 2.621634649521418278e-03, 2.618897252801473136e-03, 2.616155735552923040e-03, 2.613410102429511959e-03, 2.610660358091502955e-03, 2.607906507205724582e-03, 2.605148554445462037e-03, 2.602386504490240317e-03, 2.599620362026200653e-03, 2.596850131745853316e-03, 2.594075818348175189e-03, 2.591297426538353467e-03, 2.588514961028164692e-03, 2.585728426535785669e-03, 2.582937827785564914e-03, 2.580143169508430315e-03, 2.577344456441662320e-03, 2.574541693328775104e-03, 2.571734884919566876e-03, 2.568924035970562673e-03, 2.566109151244169544e-03, 2.563290235509439394e-03, 2.560467293541486989e-03, 2.557640330121920599e-03, 2.554809350038652910e-03, 2.551974358085702839e-03, 2.549135359063551577e-03, 2.546292357778971727e-03, 2.543445359044800048e-03, 2.540594367680323873e-03, 2.537739388511092448e-03, 2.534880426368702269e-03, 2.532017486091182618e-03, 2.529150572522771354e-03, 2.526279690513744472e-03, 2.523404844920853693e-03, 2.520526040606785225e-03, 2.517643282440619901e-03, 2.514756575297608533e-03, 2.511865924058947260e-03, 2.508971333612437186e-03, 2.506072808851650402e-03, 2.503170354676390562e-03, 2.500263975992728007e-03, 2.497353677712861424e-03, 2.494439464754939599e-03, 2.491521342043417908e-03, 2.488599314508860554e-03, 2.485673387087742377e-03, 2.482743564722836565e-03, 2.479809852362926254e-03, 2.476872254962943741e-03, 2.473930777483761018e-03, 2.470985424892246582e-03, 2.468036202161714727e-03, 2.465083114271130176e-03, 2.462126166205562579e-03, 2.459165362956235081e-03, 2.456200709520339580e-03, 2.453232210901123891e-03, 2.450259872107662332e-03, 2.447283698155206140e-03, 2.444303694065003054e-03, 2.441319864864070505e-03, 2.438332215585604142e-03, 2.435340751268753184e-03, 2.432345476958488149e-03, 2.429346397705660267e-03, 2.426343518567448607e-03, 2.423336844606502252e-03, 2.420326380891710955e-03, 2.417312132497620534e-03, 2.414294104504860483e-03, 2.411272301999967463e-03, 2.408246730075161088e-03, 2.405217393828739010e-03, 2.402184298364846201e-03, 2.399147448793308851e-03, 2.396106850229994759e-03, 2.393062507796614273e-03, 2.390014426620506918e-03, 2.386962611835029974e-03, 2.383907068579383705e-03, 2.380847801998338571e-03, 2.377784817242689294e-03, 2.374718119469015898e-03, 2.371647713839462098e-03, 2.368573605522240107e-03, 2.365495799690960164e-03, 2.362414301525474908e-03, 2.359329116210986000e-03, 2.356240248938477368e-03, 2.353147704904819722e-03, 2.350051489312588848e-03, 2.346951607369871309e-03, 2.343848064290664310e-03, 2.340740865294589027e-03, 2.337630015607021581e-03, 2.334515520458802472e-03, 2.331397385086652480e-03, 2.328275614732944112e-03, 2.325150214645572803e-03, 2.322021190077995078e-03, 2.318888546289723379e-03, 2.315752288545466515e-03, 2.312612422115563338e-03, 2.309468952276363517e-03, 2.306321884309333291e-03, 2.303171223501867745e-03, 2.300016975146672825e-03, 2.296859144542216791e-03, 2.293697736992561520e-03, 2.290532757807071506e-03, 2.287364212300897846e-03, 2.284192105794705455e-03, 2.281016443614487452e-03, 2.277837231091958074e-03, 2.274654473564344508e-03, 2.271468176374149672e-03, 2.268278344869600633e-03, 2.265084984404379300e-03, 2.261888100337457186e-03, 2.258687698033518248e-03, 2.255483782862441073e-03, 2.252276360199760314e-03, 2.249065435426441176e-03, 2.245851013928660839e-03, 2.242633101098236940e-03, 2.239411702332384270e-03, 2.236186823033518324e-03, 2.232958468609645176e-03, 2.229726644474169361e-03, 2.226491356045641034e-03, 2.223252608748190525e-03, 2.220010408011239937e-03, 2.216764759269613735e-03, 2.213515667963351832e-03, 2.210263139537726063e-03, 2.207007179443777525e-03, 2.203747793137407571e-03, 2.200484986079838390e-03, 2.197218763737993769e-03, 2.193949131583663829e-03, 2.190676095093978173e-03, 2.187399659751463991e-03, 2.184119831043855684e-03, 2.180836614464180725e-03, 2.177550015510500321e-03, 2.174260039686314473e-03, 2.170966692500336890e-03, 2.167669979466282492e-03, 2.164369906103277234e-03, 2.161066477935635628e-03, 2.157759700492712859e-03, 2.154449579308963768e-03, 2.151136119924429869e-03, 2.147819327883816916e-03, 2.144499208737319761e-03, 2.141175768039986580e-03, 2.137849011352206761e-03, 2.134518944239491463e-03, 2.131185572272226419e-03, 2.127848901026132503e-03, 2.124508936082001188e-03, 2.121165683025496781e-03, 2.117819147447564960e-03, 2.114469334944212887e-03, 2.111116251116282837e-03, 2.107759901569871992e-03, 2.104400291916120377e-03, 2.101037427770955854e-03, 2.097671314755629717e-03, 2.094301958496091326e-03, 2.090929364623509389e-03, 2.087553538774039076e-03, 2.084174486588522349e-03, 2.080792213713270316e-03, 2.077406725799118680e-03, 2.074018028501919530e-03, 2.070626127482623306e-03, 2.067231028407087983e-03, 2.063832736945881742e-03, 2.060431258774710582e-03, 2.057026599574097829e-03, 2.053618765029535925e-03, 2.050207760831170272e-03, 2.046793592674248097e-03, 2.043376266258878186e-03, 2.039955787289871297e-03, 2.036532161476805637e-03, 2.033105394534547288e-03, 2.029675492182334701e-03, 2.026242460144298246e-03, 2.022806304149515292e-03, 2.019367029931802473e-03, 2.015924643229816300e-03, 2.012479149786776476e-03, 2.009030555350899572e-03, 2.005578865675148800e-03, 2.002124086517018033e-03, 1.998666223638961587e-03, 1.995205282808168272e-03, 1.991741269796313760e-03, 1.988274190380002939e-03, 1.984804050340566953e-03, 1.981330855463770031e-03, 1.977854611540303016e-03, 1.974375324365527495e-03, 1.970892999739223394e-03, 1.967407643466147996e-03, 1.963919261355380648e-03, 1.960427859220873099e-03, 1.956933442881192333e-03, 1.953436018159288544e-03, 1.949935590882949203e-03, 1.946432166884560968e-03, 1.942925752000852291e-03, 1.939416352073363966e-03, 1.935903972948199974e-03, 1.932388620475791133e-03, 1.928870300511340919e-03, 1.925349018914517115e-03, 1.921824781549581274e-03, 1.918297594285165797e-03, 1.914767462994321646e-03, 1.911234393555072365e-03, 1.907698391849461722e-03, 1.904159463764080627e-03, 1.900617615190145632e-03, 1.897072852023333261e-03, 1.893525180163536719e-03, 1.889974605515311714e-03, 1.886421133987568541e-03, 1.882864771493724526e-03, 1.879305523951352959e-03, 1.875743397282675536e-03, 1.872178397414288493e-03, 1.868610530277025781e-03, 1.865039801806000911e-03, 1.861466217941157948e-03, 1.857889784626246075e-03, 1.854310507809659846e-03, 1.850728393444146889e-03, 1.847143447486504324e-03, 1.843555675898178765e-03, 1.839965084644593681e-03, 1.836371679695693012e-03, 1.832775467025712403e-03, 1.829176452612919865e-03, 1.825574642440070273e-03, 1.821970042494176593e-03, 1.818362658766256405e-03, 1.814752497251784008e-03, 1.811139563950478135e-03, 1.807523864866002064e-03, 1.803905406006475580e-03, 1.800284193384208906e-03, 1.796660233015443149e-03, 1.793033530920917773e-03, 1.789404093125135722e-03, 1.785771925657300609e-03, 1.782137034550285420e-03, 1.778499425841172446e-03, 1.774859105571320725e-03, 1.771216079786209043e-03, 1.767570354535161420e-03, 1.763921935871848659e-03, 1.760270829854018379e-03, 1.756617042543239578e-03, 1.752960580005394429e-03, 1.749301448310323307e-03, 1.745639653531996099e-03, 1.741975201748256546e-03, 1.738308099040872983e-03, 1.734638351496120339e-03, 1.730965965203784193e-03, 1.727290946257641286e-03, 1.723613300755938525e-03, 1.719933034800397685e-03, 1.716250154496788086e-03, 1.712564665954987306e-03, 1.708876575288735067e-03, 1.705185888615778304e-03, 1.701492612057543732e-03, 1.697796751739602105e-03, 1.694098313791436196e-03, 1.690397304346165624e-03, 1.686693729541032145e-03, 1.682987595517146601e-03, 1.679278908419242584e-03, 1.675567674396128337e-03, 1.671853899600473379e-03, 1.668137590188507966e-03, 1.664418752320623090e-03, 1.660697392160682658e-03, 1.656973515876587278e-03, 1.653247129640045060e-03, 1.649518239626274327e-03, 1.645786852014513840e-03, 1.642052972987758253e-03, 1.638316608732509833e-03, 1.634577765439237072e-03, 1.630836449302150480e-03, 1.627092666518915919e-03, 1.623346423291164393e-03, 1.619597725824206474e-03, 1.615846580326807868e-03, 1.612092993011641964e-03, 1.608336970094971724e-03, 1.604578517796792590e-03, 1.600817642340581805e-03, 1.597054349953359138e-03, 1.593288646866280588e-03, 1.589520539313601672e-03, 1.585750033533261374e-03, 1.581977135766976907e-03, 1.578201852260029256e-03, 1.574424189261026822e-03, 1.570644153022390278e-03, 1.566861749800006710e-03, 1.563076985853387472e-03, 1.559289867445317994e-03, 1.555500400842368437e-03, 1.551708592314600746e-03, 1.547914448135421410e-03, 1.544117974581641966e-03, 1.540319177934043214e-03, 1.536518064476296219e-03, 1.532714640495953708e-03, 1.528908912283666625e-03, 1.525100886133786944e-03, 1.521290568344086649e-03, 1.517477965215501424e-03, 1.513663083052626786e-03, 1.509845928163458745e-03, 1.506026506859113210e-03, 1.502204825454339469e-03, 1.498380890267259763e-03, 1.494554707619081971e-03, 1.490726283834616778e-03, 1.486895625242010089e-03, 1.483062738172474804e-03, 1.479227628960787157e-03, 1.475390303945027385e-03, 1.471550769466308667e-03, 1.467709031869370842e-03, 1.463865097501791971e-03, 1.460018972715006191e-03, 1.456170663863193921e-03, 1.452320177303847385e-03, 1.448467519397860816e-03, 1.444612696509353297e-03, 1.440755715005385355e-03, 1.436896581256478936e-03, 1.433035301636335522e-03, 1.429171882521575263e-03, 1.425306330292244609e-03, 1.421438651331458514e-03, 1.417568852025556788e-03, 1.413696938763846916e-03, 1.409822917938666296e-03, 1.405946795945993725e-03, 1.402068579184374093e-03, 1.398188274055547431e-03, 1.394305886964497922e-03, 1.390421424319195206e-03, 1.386534892530755280e-03, 1.382646298013085525e-03, 1.378755647183385830e-03, 1.374862946461894234e-03, 1.370968202271595927e-03, 1.367071421038746704e-03, 1.363172609192599312e-03, 1.359271773165216315e-03, 1.355368919391554449e-03, 1.351464054310049651e-03, 1.347557184361484724e-03, 1.343648315989931941e-03, 1.339737455642401980e-03, 1.335824609768559426e-03, 1.331909784821333834e-03, 1.327992987256205451e-03, 1.324074223531803481e-03, 1.320153500109640674e-03, 1.316230823453831862e-03, 1.312306200031617201e-03, 1.308379636313078322e-03, 1.304451138770882030e-03, 1.300520713880772960e-03, 1.296588368121312073e-03, 1.292654107973605603e-03, 1.288717939921825689e-03, 1.284779870452908970e-03, 1.280839906056316325e-03, 1.276898053224617257e-03, 1.272954318452695823e-03, 1.269008708238788001e-03, 1.265061229083331565e-03, 1.261111887489580613e-03, 1.257160689963664982e-03, 1.253207643014417425e-03, 1.249252753153089332e-03, 1.245296026893877653e-03, 1.241337470753555404e-03, 1.237377091251638415e-03, 1.233414894910020605e-03, 1.229450888253498953e-03, 1.225485077809489653e-03, 1.221517470107759016e-03, 1.217548071680935214e-03, 1.213576889064246550e-03, 1.209603928795311562e-03, 1.205629197414242451e-03, 1.201652701464231638e-03, 1.197674447490406626e-03, 1.193694442040865635e-03, 1.189712691665887213e-03, 1.185729202918533055e-03, 1.181743982354357438e-03, 1.177757036531155901e-03, 1.173768372009466581e-03, 1.169777995352296995e-03, 1.165785913124859491e-03, 1.161792131895077141e-03, 1.157796658233312039e-03, 1.153799498712094031e-03, 1.149800659906634629e-03, 1.145800148394550974e-03, 1.141797970755596518e-03, 1.137794133572261673e-03, 1.133788643429057804e-03, 1.129781506913128718e-03, 1.125772730613968558e-03, 1.121762321123061842e-03, 1.117750285034846891e-03, 1.113736628945548356e-03, 1.109721359453788711e-03, 1.105704483160673901e-03, 1.101686006669594722e-03, 1.097665936585949260e-03, 1.093644279517672199e-03, 1.089621042074962257e-03, 1.085596230869982073e-03, 1.081569852517407036e-03, 1.077541913634041471e-03, 1.073512420838993201e-03, 1.069481380753396424e-03, 1.065448800000481314e-03, 1.061414685206196144e-03, 1.057379042998125244e-03, 1.053341880006098113e-03, 1.049303202862268561e-03, 1.045263018200844095e-03, 1.041221332658242909e-03, 1.037178152872723740e-03, 1.033133485484931868e-03, 1.029087337137594461e-03, 1.025039714475258629e-03, 1.020990624144801863e-03, 1.016940072795175084e-03, 1.012888067077191874e-03, 1.008834613643611305e-03, 1.004779719149769815e-03, 1.000723390252381646e-03, 9.966656336106200116e-04, 9.926064558852946192e-04, 9.885458637394635949e-04, 9.844838638381704556e-04, 9.804204628481344615e-04, 9.763556674383086541e-04, 9.722894842795798583e-04, 9.682219200444999079e-04, 9.641529814078021602e-04, 9.600826750461313123e-04, 9.560110076377612920e-04, 9.519379858631156748e-04, 9.478636164044980427e-04, 9.437879059457987075e-04, 9.397108611730422330e-04, 9.356324887740830997e-04, 9.315527954383422430e-04, 9.274717878574223386e-04, 9.233894727242823990e-04, 9.193058567343082065e-04, 9.152209465841344357e-04, 9.111347489722611314e-04, 9.070472705991354566e-04, 9.029585181669549107e-04, 8.988684983793922669e-04, 8.947772179421250964e-04, 8.906846835624579245e-04, 8.865909019494961360e-04, 8.824958798137751788e-04, 8.783996238677921472e-04, 8.743021408257141327e-04, 8.702034374032005222e-04, 8.661035203174711952e-04, 8.620023962879395886e-04, 8.579000720350968365e-04, 8.537965542811614241e-04, 8.496918497501348066e-04, 8.455859651675306848e-04, 8.414789072605455495e-04, 8.373706827576762836e-04, 8.332612983892642147e-04, 8.291507608872047659e-04, 8.250390769846666474e-04, 8.209262534166244163e-04, 8.168122969195775601e-04, 8.126972142312645928e-04, 8.085810120911950723e-04, 8.044636972403720453e-04, 8.003452764210047332e-04, 7.962257563770427189e-04, 7.921051438538917770e-04, 7.879834455981290543e-04, 7.838606683581381953e-04, 7.797368188833532195e-04, 7.756119039248997185e-04, 7.714859302353048323e-04, 7.673589045682123206e-04, 7.632308336789175082e-04, 7.591017243240884282e-04, 7.549715832614735216e-04, 7.508404172504439542e-04, 7.467082330517050030e-04, 7.425750374270155725e-04, 7.384408371397163098e-04, 7.343056389543658547e-04, 7.301694496368997837e-04, 7.260322759543561986e-04, 7.218941246749471753e-04, 7.177550025686923714e-04, 7.136149164063143330e-04, 7.094738729597632482e-04, 7.053318790027747693e-04, 7.011889413097361539e-04, 6.970450666563388466e-04, 6.929002618196483014e-04, 6.887545335778155840e-04, 6.846078887102563732e-04, 6.804603339972652024e-04, 6.763118762205656918e-04, 6.721625221630126096e-04, 6.680122786083159429e-04, 6.638611523415710721e-04, 6.597091501489793725e-04, 6.555562788176496963e-04, 6.514025451356764357e-04, 6.472479558927858156e-04, 6.430925178791062997e-04, 6.389362378862847771e-04, 6.347791227066321021e-04, 6.306211791337604971e-04, 6.264624139622988405e-04, 6.223028339876025350e-04, 6.181424460062954996e-04, 6.139812568159823142e-04, 6.098192732149641587e-04, 6.056565020027733243e-04, 6.014929499798948994e-04, 5.973286239474727335e-04, 5.931635307078513214e-04, 5.889976770642910923e-04, 5.848310698206817459e-04, 5.806637157821716326e-04, 5.764956217544222553e-04, 5.723267945442427453e-04, 5.681572409593024396e-04, 5.639869678077470737e-04, 5.598159818992093665e-04, 5.556442900435907021e-04, 5.514718990516998334e-04, 5.472988157353381004e-04, 5.431250469070942992e-04, 5.389505993800634397e-04, 5.347754799683912324e-04, 5.305996954868861604e-04, 5.264232527512008666e-04, 5.222461585774426001e-04, 5.180684197827283271e-04, 5.138900431848853834e-04, 5.097110356022622807e-04, 5.055314038538080701e-04, 5.013511547597050829e-04, 4.971702951402552379e-04, 4.929888318165090953e-04, 4.888067716103517259e-04, 4.846241213442136083e-04, 4.804408878412443182e-04, 4.762570779249275283e-04, 4.720726984196298853e-04, 4.678877561503130464e-04, 4.637022579422400226e-04, 4.595162106215215083e-04, 4.553296210148284054e-04, 4.511424959491028286e-04, 4.469548422521018877e-04, 4.427666667521064164e-04, 4.385779762776360977e-04, 4.343887776580845905e-04, 4.301990777229676346e-04, 4.260088833025594234e-04, 4.218182012276062119e-04, 4.176270383290335282e-04, 4.134354014384939119e-04, 4.092432973880790045e-04, 4.050507330100239960e-04, 4.008577151372606762e-04, 3.966642506031224777e-04, 3.924703462410572162e-04, 3.882760088851739083e-04, 3.840812453699502535e-04, 3.798860625299445618e-04, 3.756904672003433298e-04, 3.714944662165756443e-04, 3.672980664144897449e-04, 3.631012746300623490e-04, 3.589040976994804007e-04, 3.547065424597837320e-04, 3.505086157477325590e-04, 3.463103244004498717e-04, 3.421116752555069781e-04, 3.379126751507214080e-04, 3.337133309238662394e-04, 3.295136494132230951e-04, 3.253136374571928601e-04, 3.211133018944732740e-04, 3.169126495636762075e-04, 3.127116873038714986e-04, 3.085104219543034873e-04, 3.043088603541848009e-04, 3.001070093427824935e-04, 2.959048757600658570e-04, 2.917024664454687501e-04, 2.874997882389187772e-04, 2.832968479804444275e-04, 2.790936525098865152e-04, 2.748902086675416526e-04, 2.706865232934005448e-04, 2.664826032277952577e-04, 2.622784553111047489e-04, 2.580740863834640308e-04, 2.538695032853153241e-04, 2.496647128571142398e-04, 2.454597219390392666e-04, 2.412545373715416512e-04, 2.370491659950536400e-04, 2.328436146496974245e-04, 2.286378901758349676e-04, 2.244319994137744284e-04, 2.202259492034820633e-04, 2.160197463852221212e-04, 2.118133977987062336e-04, 2.076069102842045583e-04, 2.034002906813180296e-04, 1.991935458296213441e-04, 1.949866825687476368e-04, 1.907797077381876327e-04, 1.865726281770006530e-04, 1.823654507243624618e-04, 1.781581822192744298e-04, 1.739508295002716390e-04, 1.697433994059738477e-04, 1.655358987746991352e-04, 1.613283344446405721e-04, 1.571207132535738652e-04, 1.529130420389397031e-04, 1.487053276384897506e-04, 1.444975768891495376e-04, 1.402897966275698841e-04, 1.360819936906793287e-04, 1.318741749145479385e-04, 1.276663471350307022e-04, 1.234585171878523416e-04, 1.192506919083137772e-04, 1.150428781314684335e-04, 1.108350826917374281e-04, 1.066273124234595065e-04, 1.024195741605991476e-04, 9.821187473645500798e-05, 9.400422098421033117e-05, 8.979661973664124263e-05, 8.558907782582344614e-05, 8.138160208368518046e-05, 7.717419934171410522e-05, 7.296687643066449860e-05, 6.875964018120310300e-05, 6.455249742314764921e-05, 6.034545498611255303e-05, 5.613851969921603154e-05, 5.193169839078810721e-05, 4.772499788892172135e-05, 4.351842502118116507e-05, 3.931198661430866708e-05, 3.510568949477657782e-05, 3.089954048849515668e-05, 2.669354642051951552e-05, 2.248771411560178930e-05, 1.828205039789861832e-05, 1.407656209067854576e-05, 9.871256016967705865e-06, 5.666138998694445955e-06, 1.461217857803972081e-06, -2.743500584972130049e-06, -6.948009509564138225e-06, -1.115230209601255379e-05, -1.535637152560454519e-05, -1.956021098022851250e-05, -2.376381364229138902e-05, -2.796717269491708080e-05, -3.217028132223920457e-05, -3.637313270884907641e-05, -4.057572004018194183e-05, -4.477803650234074545e-05, -4.898007528248189018e-05, -5.318182956826370352e-05, -5.738329254813894859e-05, -6.158445741155348378e-05, -6.578531734886302999e-05, -6.998586555068815834e-05, -7.418609520914468353e-05, -7.838599951672835177e-05, -8.258557166717111662e-05, -8.678480485479464273e-05, -9.098369227480344705e-05, -9.518222712357677956e-05, -9.938040259811708966e-05, -1.035782118963423677e-04, -1.077756482173783918e-04, -1.119727047610072210e-04, -1.161693747279597813e-04, -1.203656513202074204e-04, -1.245615277404109171e-04, -1.287569971922128355e-04, -1.329520528805291761e-04, -1.371466880109981534e-04, -1.413408957902732019e-04, -1.455346694263141112e-04, -1.497280021277416545e-04, -1.539208871046931061e-04, -1.581133175677091446e-04, -1.623052867289606822e-04, -1.664967878016061222e-04, -1.706878139997076592e-04, -1.748783585384299042e-04, -1.790684146343321861e-04, -1.832579755048165571e-04, -1.874470343684202830e-04, -1.916355844451085512e-04, -1.958236189557216358e-04, -2.000111311223631502e-04, -2.041981141682212625e-04, -2.083845613178615652e-04, -2.125704657971428063e-04, -2.167558208325772091e-04, -2.209406196524590460e-04, -2.251248554862230616e-04, -2.293085215643631577e-04, -2.334916111187201133e-04, -2.376741173823102807e-04, -2.418560335897061405e-04, -2.460373529764893485e-04, -2.502180687795408959e-04, -2.543981742373322167e-04, -2.585776625893754167e-04, -2.627565270765156824e-04, -2.669347609411275215e-04, -2.711123574270324181e-04, -2.752893097788580690e-04, -2.794656112432594664e-04, -2.836412550679068495e-04, -2.878162345018677229e-04, -2.919905427958963389e-04, -2.961641732017962405e-04, -3.003371189731711259e-04, -3.045093733647894515e-04, -3.086809296328694692e-04, -3.128517810353717435e-04, -3.170219208314540150e-04, -3.211913422817555324e-04, -3.253600386486933107e-04, -3.295280031959100554e-04, -3.336952291885650541e-04, -3.378617098936266398e-04, -3.420274385793237474e-04, -3.461924085154324685e-04, -3.503566129735717128e-04, -3.545200452265593553e-04, -3.586826985492584012e-04, -3.628445662174782020e-04, -3.670056415091869722e-04, -3.711659177038769352e-04, -3.753253880824800265e-04, -3.794840459275643512e-04, -3.836418845236243161e-04, -3.877988971565360355e-04, -3.919550771139345790e-04, -3.961104176850453783e-04, -4.002649121610610413e-04, -4.044185538345972455e-04, -4.085713359999852017e-04, -4.127232519535541425e-04, -4.168742949930915524e-04, -4.210244584181293431e-04, -4.251737355301407444e-04, -4.293221196324553028e-04, -4.334696040296304241e-04, -4.376161820286540781e-04, -4.417618469378527366e-04, -4.459065920677323346e-04, -4.500504107303421146e-04, -4.541932962395622657e-04, -4.583352419113922668e-04, -4.624762410634062921e-04, -4.666162870150457830e-04, -4.707553730878983049e-04, -4.748934926051631440e-04, -4.790306388919346632e-04, -4.831668052754903211e-04, -4.873019850847487328e-04, -4.914361716505554660e-04, -4.955693583059732820e-04, -4.997015383856428898e-04, -5.038327052265382557e-04, -5.079628521673248097e-04, -5.120919725486507710e-04, -5.162200597134308832e-04, -5.203471070063113608e-04, -5.244731077739496136e-04, -5.285980553653034028e-04, -5.327219431310905836e-04, -5.368447644240742500e-04, -5.409665125993533014e-04, -5.450871810138131855e-04, -5.492067630264217768e-04, -5.533252519985081257e-04, -5.574426412932291389e-04, -5.615589242759391839e-04, -5.656740943140263749e-04, -5.697881447771885018e-04, -5.739010690373633162e-04, -5.780128604680874428e-04, -5.821235124456099631e-04, -5.862330183482674815e-04, -5.903413715563920767e-04, -5.944485654526075052e-04, -5.985545934216509592e-04, -6.026594488507495007e-04, -6.067631251290857676e-04, -6.108656156480755288e-04, -6.149669138016647559e-04, -6.190670129857776555e-04, -6.231659065986136330e-04, -6.272635880408308469e-04, -6.313600507154744357e-04, -6.354552880273384640e-04, -6.395492933841717730e-04, -6.436420601955893323e-04, -6.477335818739051246e-04, -6.518238518335009229e-04, -6.559128634911155558e-04, -6.600006102661275589e-04, -6.640870855800136158e-04, -6.681722828566418349e-04, -6.722561955225483292e-04, -6.763388170064023796e-04, -6.804201407392945072e-04, -6.845001601550135956e-04, -6.885788686895170409e-04, -6.926562597812114521e-04, -6.967323268712363868e-04, -7.008070634029297304e-04, -7.048804628221096982e-04, -7.089525185773609553e-04, -7.130232241194054549e-04, -7.170925729019329365e-04, -7.211605583805217115e-04, -7.252271740138280329e-04, -7.292924132629619201e-04, -7.333562695914045424e-04, -7.374187364652079295e-04, -7.414798073532681902e-04, -7.455394757267967470e-04, -7.495977350596924344e-04, -7.536545788283706285e-04, -7.577100005121374052e-04, -7.617639935926540529e-04, -7.658165515542218922e-04, -7.698676678839736377e-04, -7.739173360717878543e-04, -7.779655496096763833e-04, -7.820123019928696285e-04, -7.860575867191999704e-04, -7.901013972890213186e-04, -7.941437272054886190e-04, -7.981845699743905613e-04, -8.022239191045189670e-04, -8.062617681071347110e-04, -8.102981104962562282e-04, -8.143329397889378278e-04, -8.183662495047317126e-04, -8.223980331659797374e-04, -8.264282842980881462e-04, -8.304569964289969632e-04, -8.344841630894641628e-04, -8.385097778133425743e-04, -8.425338341370510083e-04, -8.465563255998616787e-04, -8.505772457441613870e-04, -8.545965881148575964e-04, -8.586143462600908608e-04, -8.626305137306156372e-04, -8.666450840800930203e-04, -8.706580508653561550e-04, -8.746694076458970835e-04, -8.786791479841230511e-04, -8.826872654456646358e-04, -8.866937535988279016e-04, -8.906986060148787843e-04, -8.947018162683244421e-04, -8.987033779363830807e-04, -9.027032845993569190e-04, -9.067015298404565481e-04, -9.106981072460890040e-04, -9.146930104057655019e-04, -9.186862329115025230e-04, -9.226777683588865010e-04, -9.266676103465640302e-04, -9.306557524757069202e-04, -9.346421883510963981e-04, -9.386269115805081489e-04, -9.426099157746303499e-04, -9.465911945473515264e-04, -9.505707415155813331e-04, -9.545485502996207006e-04, -9.585246145226425027e-04, -9.624989278109606552e-04, -9.664714837943130929e-04, -9.704422761053360397e-04, -9.744112983798440585e-04, -9.783785442570103533e-04, -9.823440073793007418e-04, -9.863076813918462277e-04, -9.902695599436192510e-04, -9.942296366863777844e-04, -9.981879052754708947e-04, -1.002144359369222916e-03, -1.006098992629222066e-03, -1.010051798720584771e-03, -1.014002771311443493e-03, -1.017951904073213223e-03, -1.021899190680880315e-03, -1.025844624812461466e-03, -1.029788200149302311e-03, -1.033729910376336757e-03, -1.037669749181571342e-03, -1.041607710256359969e-03, -1.045543787295688835e-03, -1.049477973997542824e-03, -1.053410264063652088e-03, -1.057340651198862991e-03, -1.061269129111428247e-03, -1.065195691513350605e-03, -1.069120332119445236e-03, -1.073043044648478361e-03, -1.076963822822572022e-03, -1.080882660367114530e-03, -1.084799551010954535e-03, -1.088714488486679883e-03, -1.092627466530082022e-03, -1.096538478880541108e-03, -1.100447519280839956e-03, -1.104354581477539395e-03, -1.108259659220450040e-03, -1.112162746262913317e-03, -1.116063836361989902e-03, -1.119962923278370161e-03, -1.123860000775776542e-03, -1.127755062622035846e-03, -1.131648102588451044e-03, -1.135539114449754441e-03, -1.139428091984354000e-03, -1.143315028974177441e-03, -1.147199919205040214e-03, -1.151082756466120316e-03, -1.154963534550236060e-03, -1.158842247254108669e-03, -1.162718888377867882e-03, -1.166593451725297199e-03, -1.170465931104132254e-03, -1.174336320325525870e-03, -1.178204613204332550e-03, -1.182070803559373464e-03, -1.185934885212842080e-03, -1.189796851991005216e-03, -1.193656697723603907e-03, -1.197514416244126623e-03, -1.201370001390080974e-03, -1.205223447002484348e-03, -1.209074746926117397e-03, -1.212923895009824582e-03, -1.216770885105967082e-03, -1.220615711070730924e-03, -1.224458366764363771e-03, -1.228298846050685086e-03, -1.232137142797345248e-03, -1.235973250876103982e-03, -1.239807164162312104e-03, -1.243638876535276471e-03, -1.247468381878084768e-03, -1.251295674077890002e-03, -1.255120747025811629e-03, -1.258943594616372414e-03, -1.262764210748508259e-03, -1.266582589325004633e-03, -1.270398724252400514e-03, -1.274212609441180725e-03, -1.278024238806038312e-03, -1.281833606265366703e-03, -1.285640705741625733e-03, -1.289445531161162754e-03, -1.293248076454573238e-03, -1.297048335556200962e-03, -1.300846302404394311e-03, -1.304641970941696014e-03, -1.308435335114763783e-03, -1.312226388873777251e-03, -1.316015126173564025e-03, -1.319801540972674863e-03, -1.323585627233722379e-03, -1.327367378923650140e-03, -1.331146790013158472e-03, -1.334923854477370166e-03, -1.338698566295264732e-03, -1.342470919449947290e-03, -1.346240907928889039e-03, -1.350008525723452599e-03, -1.353773766829133567e-03, -1.357536625245850653e-03, -1.361297094977416801e-03, -1.365055170031828679e-03, -1.368810844421517337e-03, -1.372564112162846014e-03, -1.376314967276386818e-03, -1.380063403787174870e-03, -1.383809415724126949e-03, -1.387552997120814965e-03, -1.391294142014457003e-03, -1.395032844447022984e-03, -1.398769098464666769e-03, -1.402502898117633347e-03, -1.406234237460449003e-03, -1.409963110552179578e-03, -1.413689511455934120e-03, -1.417413434239128559e-03, -1.421134872973740500e-03, -1.424853821735833472e-03, -1.428570274605877417e-03, -1.432284225668604928e-03, -1.435995669013271888e-03, -1.439704598733573121e-03, -1.443411008927085546e-03, -1.447114893696259787e-03, -1.450816247147934234e-03, -1.454515063392856477e-03, -1.458211336546671880e-03, -1.461905060729374543e-03, -1.465596230065209938e-03, -1.469284838682946613e-03, -1.472970880715718332e-03, -1.476654350301358004e-03, -1.480335241581922159e-03, -1.484013548703936626e-03, -1.487689265818667363e-03, -1.491362387081611104e-03, -1.495032906652781369e-03, -1.498700818696941783e-03, -1.502366117383131415e-03, -1.506028796884927154e-03, -1.509688851380674643e-03, -1.513346275052960275e-03, -1.517001062089237424e-03, -1.520653206681293673e-03, -1.524302703025492154e-03, -1.527949545323016361e-03, -1.531593727779411752e-03, -1.535235244604820585e-03, -1.538874090014242775e-03, -1.542510258227060152e-03, -1.546143743467281485e-03, -1.549774539963803778e-03, -1.553402641949925460e-03, -1.557028043663606816e-03, -1.560650739347721081e-03, -1.564270723249494349e-03, -1.567887989621238919e-03, -1.571502532719391615e-03, -1.575114346805602319e-03, -1.578723426146202719e-03, -1.582329765011788016e-03, -1.585933357678153246e-03, -1.589534198425763102e-03, -1.593132281539665204e-03, -1.596727601309670067e-03, -1.600320152030595706e-03, -1.603909928001792749e-03, -1.607496923527485314e-03, -1.611081132916601221e-03, -1.614662550483126312e-03, -1.618241170545610267e-03, -1.621816987427429635e-03, -1.625389995456939405e-03, -1.628960188967435926e-03, -1.632527562296569486e-03, -1.636092109787407479e-03, -1.639653825787492671e-03, -1.643212704649555083e-03, -1.646768740730977917e-03, -1.650321928394033258e-03, -1.653872262006132309e-03, -1.657419735939365257e-03, -1.660964344570739579e-03, -1.664506082282431795e-03, -1.668044943461311717e-03, -1.671580922499207649e-03, -1.675114013793129950e-03, -1.678644211744823034e-03, -1.682171510761003904e-03, -1.685695905253614332e-03, -1.689217389639339475e-03, -1.692735958339869817e-03, -1.696251605782141646e-03, -1.699764326397797771e-03, -1.703274114623892039e-03, -1.706780964901972531e-03, -1.710284871679096808e-03, -1.713785829407300223e-03, -1.717283832543521106e-03, -1.720778875549769686e-03, -1.724270952893365745e-03, -1.727760059046488245e-03, -1.731246188486414714e-03, -1.734729335695749369e-03, -1.738209495161992029e-03, -1.741686661377832160e-03, -1.745160828841017028e-03, -1.748631992054594563e-03, -1.752100145526831179e-03, -1.755565283770688318e-03, -1.759027401304757900e-03, -1.762486492652737789e-03, -1.765942552343336162e-03, -1.769395574910548417e-03, -1.772845554893484566e-03, -1.776292486836697536e-03, -1.779736365289733219e-03, -1.783177184807347099e-03, -1.786614939949780724e-03, -1.790049625282274896e-03, -1.793481235375328367e-03, -1.796909764804853742e-03, -1.800335208152109611e-03, -1.803757560003177310e-03, -1.807176814949947117e-03, -1.810592967589315936e-03, -1.814006012523469409e-03, -1.817415944360143646e-03, -1.820822757712085285e-03, -1.824226447197684021e-03, -1.827627007440420530e-03, -1.831024433069137515e-03, -1.834418718718262191e-03, -1.837809859027339640e-03, -1.841197848641303644e-03, -1.844582682210680735e-03, -1.847964354391179063e-03, -1.851342859843879652e-03, -1.854718193235512435e-03, -1.858090349237986362e-03, -1.861459322528632478e-03, -1.864825107790441146e-03, -1.868187699711543800e-03, -1.871547092985885799e-03, -1.874903282312344972e-03, -1.878256262395720409e-03, -1.881606027946198167e-03, -1.884952573679305951e-03, -1.888295894316040831e-03, -1.891635984583148753e-03, -1.894972839212630787e-03, -1.898306452942021775e-03, -1.901636820514591335e-03, -1.904963936678912787e-03, -1.908287796189183424e-03, -1.911608393805061231e-03, -1.914925724291918806e-03, -1.918239782420759227e-03, -1.921550562967714714e-03, -1.924858060714936762e-03, -1.928162270450173733e-03, -1.931463186966315710e-03, -1.934760805062381989e-03, -1.938055119542630078e-03, -1.941346125217237231e-03, -1.944633816901785882e-03, -1.947918189417501521e-03, -1.951199237591460644e-03, -1.954476956256191982e-03, -1.957751340249861902e-03, -1.961022384416548272e-03, -1.964290083605781632e-03, -1.967554432672759864e-03, -1.970815426478623143e-03, -1.974073059889969953e-03, -1.977327327779122498e-03, -1.980578225024329665e-03, -1.983825746509282600e-03, -1.987069887123698014e-03, -1.990310641762805133e-03, -1.993548005327595938e-03, -1.996781972725036793e-03, -2.000012538867630869e-03, -2.003239698673665772e-03, -2.006463447067432116e-03, -2.009683778978774669e-03, -2.012900689343357329e-03, -2.016114173102854807e-03, -2.019324225204541072e-03, -2.022530840601507486e-03, -2.025734014252901765e-03, -2.028933741123477384e-03, -2.032130016183928811e-03, -2.035322834410707628e-03, -2.038512190786280574e-03, -2.041698080299057545e-03, -2.044880497942887232e-03, -2.048059438717941393e-03, -2.051234897630210482e-03, -2.054406869691433827e-03, -2.057575349919341188e-03, -2.060740333337503141e-03, -2.063901814975627278e-03, -2.067059789869135373e-03, -2.070214253059396263e-03, -2.073365199593937055e-03, -2.076512624526014646e-03, -2.079656522914868563e-03, -2.082796889825835884e-03, -2.085933720330310041e-03, -2.089067009505239918e-03, -2.092196752434061398e-03, -2.095322944205870765e-03, -2.098445579916035763e-03, -2.101564654665748471e-03, -2.104680163562222192e-03, -2.107792101718890514e-03, -2.110900464255049958e-03, -2.114005246296016532e-03, -2.117106442973388115e-03, -2.120204049424598194e-03, -2.123298060793170437e-03, -2.126388472228905608e-03, -2.129475278887470440e-03, -2.132558475930646565e-03, -2.135638058526504422e-03, -2.138714021849023785e-03, -2.141786361078303665e-03, -2.144855071400750528e-03, -2.147920148008659793e-03, -2.150981586100781783e-03, -2.154039380881544140e-03, -2.157093527561936095e-03, -2.160144021359033158e-03, -2.163190857495956351e-03, -2.166234031201979323e-03, -2.169273537712789000e-03, -2.172309372270038886e-03, -2.175341530121658717e-03, -2.178370006521706571e-03, -2.181394796730659440e-03, -2.184415896015022476e-03, -2.187433299647509408e-03, -2.190447002907219918e-03, -2.193457001079548562e-03, -2.196463289455749795e-03, -2.199465863333725096e-03, -2.202464718017577150e-03, -2.205459848817554764e-03, -2.208451251050240656e-03, -2.211438920038439563e-03, -2.214422851111456664e-03, -2.217403039604679514e-03, -2.220379480859821768e-03, -2.223352170225110971e-03, -2.226321103054893467e-03, -2.229286274709836937e-03, -2.232247680557152003e-03, -2.235205315970198014e-03, -2.238159176328680805e-03, -2.241109257018867804e-03, -2.244055553433183837e-03, -2.246998060970436216e-03, -2.249936775036003814e-03, -2.252871691041394286e-03, -2.255802804404769685e-03, -2.258730110550498903e-03, -2.261653604909350662e-03, -2.264573282918719462e-03, -2.267489140022213145e-03, -2.270401171669881452e-03, -2.273309373318397296e-03, -2.276213740430682066e-03, -2.279114268476115524e-03, -2.282010952930725763e-03, -2.284903789276808428e-03, -2.287792773003200376e-03, -2.290677899605152168e-03, -2.293559164584527132e-03, -2.296436563449751490e-03, -2.299310091715361590e-03, -2.302179744902783237e-03, -2.305045518539901046e-03, -2.307907408160978641e-03, -2.310765409306823025e-03, -2.313619517524953279e-03, -2.316469728369256655e-03, -2.319316037400209318e-03, -2.322158440184797414e-03, -2.324996932296759505e-03, -2.327831509316203185e-03, -2.330662166829814558e-03, -2.333488900431058589e-03, -2.336311705719801377e-03, -2.339130578302488390e-03, -2.341945513792314040e-03, -2.344756507809147520e-03, -2.347563555979080910e-03, -2.350366653935279625e-03, -2.353165797317222606e-03, -2.355960981771279984e-03, -2.358752202950282432e-03, -2.361539456513698110e-03, -2.364322738127860781e-03, -2.367102043465553907e-03, -2.369877368206253949e-03, -2.372648708036296464e-03, -2.375416058648507911e-03, -2.378179415742418153e-03, -2.380938775024420920e-03, -2.383694132207456792e-03, -2.386445483011156738e-03, -2.389192823162054197e-03, -2.391936148393167868e-03, -2.394675454444492209e-03, -2.397410737062576330e-03, -2.400141992000700067e-03, -2.402869215019164117e-03, -2.405592401884573597e-03, -2.408311548370685885e-03, -2.411026650257939215e-03, -2.413737703333448340e-03, -2.416444703391107743e-03, -2.419147646231785929e-03, -2.421846527662956799e-03, -2.424541343498962023e-03, -2.427232089560900884e-03, -2.429918761676852328e-03, -2.432601355681541459e-03, -2.435279867416532528e-03, -2.437954292730343427e-03, -2.440624627478380632e-03, -2.443290867522544558e-03, -2.445953008731957274e-03, -2.448611046982529689e-03, -2.451264978156928592e-03, -2.453914798144752728e-03, -2.456560502842410933e-03, -2.459202088153389712e-03, -2.461839549987881581e-03, -2.464472884262979783e-03, -2.467102086902872582e-03, -2.469727153838447310e-03, -2.472348081007551442e-03, -2.474964864355099284e-03, -2.477577499832786610e-03, -2.480185983399209055e-03, -2.482790311020120159e-03, -2.485390478667962554e-03, -2.487986482322379709e-03, -2.490578317969784419e-03, -2.493165981603586052e-03, -2.495749469224311980e-03, -2.498328776839301834e-03, -2.500903900462905262e-03, -2.503474836116599891e-03, -2.506041579828718543e-03, -2.508604127634573265e-03, -2.511162475576686048e-03, -2.513716619704397647e-03, -2.516266556074078786e-03, -2.518812280749314035e-03, -2.521353789800531448e-03, -2.523891079305265375e-03, -2.526424145348041099e-03, -2.528952984020548314e-03, -2.531477591421592982e-03, -2.533997963656703118e-03, -2.536514096838817043e-03, -2.539025987087893937e-03, -2.541533630530863966e-03, -2.544037023301746678e-03, -2.546536161541811897e-03, -2.549031041399277449e-03, -2.551521659029525567e-03, -2.554008010594972355e-03, -2.556490092265344474e-03, -2.558967900217307915e-03, -2.561441430634667921e-03, -2.563910679708463099e-03, -2.566375643636946771e-03, -2.568836318625178448e-03, -2.571292700885754144e-03, -2.573744786638163667e-03, -2.576192572109269399e-03, -2.578636053532942871e-03, -2.581075227150233468e-03, -2.583510089209541030e-03, -2.585940635966279752e-03, -2.588366863683062933e-03, -2.590788768629866037e-03, -2.593206347083700566e-03, -2.595619595328803580e-03, -2.598028509656777341e-03, -2.600433086366273593e-03, -2.602833321763199561e-03, -2.605229212160834178e-03, -2.607620753879550963e-03, -2.610007943246955061e-03, -2.612390776598058021e-03, -2.614769250274930849e-03, -2.617143360627169780e-03, -2.619513104011235351e-03, -2.621878476791222184e-03, -2.624239475338434411e-03, -2.626596096031323224e-03, -2.628948335255676394e-03, -2.631296189404704576e-03, -2.633639654878775892e-03, -2.635978728085549942e-03, -2.638313405440160814e-03, -2.640643683364903970e-03, -2.642969558289453083e-03, -2.645291026650741645e-03, -2.647608084893156386e-03, -2.649920729468461383e-03, -2.652228956835467159e-03, -2.654532763460629163e-03, -2.656832145817772384e-03, -2.659127100387750908e-03, -2.661417623659124033e-03, -2.663703712127729519e-03, -2.665985362296715254e-03, -2.668262570676648970e-03, -2.670535333785414162e-03, -2.672803648148473332e-03, -2.675067510298504130e-03, -2.677326916775607957e-03, -2.679581864127430092e-03, -2.681832348908880399e-03, -2.684078367682289027e-03, -2.686319917017574235e-03, -2.688556993491901959e-03, -2.690789593689897445e-03, -2.693017714203761476e-03, -2.695241351632936440e-03, -2.697460502584529598e-03, -2.699675163672945327e-03, -2.701885331520035606e-03, -2.704091002755278257e-03, -2.706292174015475106e-03, -2.708488841944893359e-03, -2.710681003195436478e-03, -2.712868654426330624e-03, -2.715051792304302904e-03, -2.717230413503730121e-03, -2.719404514706326957e-03, -2.721574092601319016e-03, -2.723739143885593739e-03, -2.725899665263358234e-03, -2.728055653446564283e-03, -2.730207105154371875e-03, -2.732354017113759834e-03, -2.734496386059224841e-03, -2.736634208732526864e-03, -2.738767481883259448e-03, -2.740896202268514915e-03, -2.743020366652849235e-03, -2.745139971808361820e-03, -2.747255014514887218e-03, -2.749365491559658137e-03, -2.751471399737544406e-03, -2.753572735850944985e-03, -2.755669496709987031e-03, -2.757761679132242263e-03, -2.759849279942871384e-03, -2.761932295974734667e-03, -2.764010724068332106e-03, -2.766084561071507648e-03, -2.768153803840019481e-03, -2.770218449237033930e-03, -2.772278494133522276e-03, -2.774333935407927686e-03, -2.776384769946331314e-03, -2.778430994642592383e-03, -2.780472606398081466e-03, -2.782509602121798886e-03, -2.784541978730529967e-03, -2.786569733148603484e-03, -2.788592862307973617e-03, -2.790611363148419889e-03, -2.792625232617244446e-03, -2.794634467669416481e-03, -2.796639065267728791e-03, -2.798639022382479018e-03, -2.800634335991817898e-03, -2.802625003081458694e-03, -2.804611020644819444e-03, -2.806592385683180819e-03, -2.808569095205224690e-03, -2.810541146227616988e-03, -2.812508535774680286e-03, -2.814471260878373404e-03, -2.816429318578373819e-03, -2.818382705922215133e-03, -2.820331419965046819e-03, -2.822275457769736137e-03, -2.824214816407030759e-03, -2.826149492955294662e-03, -2.828079484500675960e-03, -2.830004788137032747e-03, -2.831925400966080978e-03, -2.833841320097326821e-03, -2.835752542647784757e-03, -2.837659065742519256e-03, -2.839560886514302593e-03, -2.841458002103598376e-03, -2.843350409658723307e-03, -2.845238106335712305e-03, -2.847121089298534045e-03, -2.848999355718822950e-03, -2.850872902776019260e-03, -2.852741727657477459e-03, -2.854605827558252904e-03, -2.856465199681208506e-03, -2.858319841237103205e-03, -2.860169749444560743e-03, -2.862014921529789507e-03, -2.863855354727101211e-03, -2.865691046278494129e-03, -2.867521993433787969e-03, -2.869348193450788238e-03, -2.871169643594952744e-03, -2.872986341139781470e-03, -2.874798283366491319e-03, -2.876605467564156624e-03, -2.878407891029842718e-03, -2.880205551068361781e-03, -2.881998444992375612e-03, -2.883786570122570409e-03, -2.885569923787368804e-03, -2.887348503323084684e-03, -2.889122306074032049e-03, -2.890891329392297326e-03, -2.892655570637866873e-03, -2.894415027178738001e-03, -2.896169696390652262e-03, -2.897919575657448895e-03, -2.899664662370602525e-03, -2.901404953929749651e-03, -2.903140447742395477e-03, -2.904871141223884859e-03, -2.906597031797478626e-03, -2.908318116894513181e-03, -2.910034393954106027e-03, -2.911745860423337919e-03, -2.913452513757325713e-03, -2.915154351419022450e-03, -2.916851370879366967e-03, -2.918543569617216248e-03, -2.920230945119446034e-03, -2.921913494880939554e-03, -2.923591216404306057e-03, -2.925264107200350495e-03, -2.926932164787856248e-03, -2.928595386693334020e-03, -2.930253770451560040e-03, -2.931907313605072122e-03, -2.933556013704578195e-03, -2.935199868308628873e-03, -2.936838874983778783e-03, -2.938473031304691518e-03, -2.940102334853915856e-03, -2.941726783222008493e-03, -2.943346374007628583e-03, -2.944961104817337815e-03, -2.946570973265715335e-03, -2.948175976975465733e-03, -2.949776113577190495e-03, -2.951371380709536321e-03, -2.952961776019267983e-03, -2.954547297161036739e-03, -2.956127941797675671e-03, -2.957703707599941643e-03, -2.959274592246646275e-03, -2.960840593424724030e-03, -2.962401708829068715e-03, -2.963957936162622386e-03, -2.965509273136483770e-03, -2.967055717469707903e-03, -2.968597266889388096e-03, -2.970133919130809024e-03, -2.971665671937214273e-03, -2.973192523059907822e-03, -2.974714470258378943e-03, -2.976231511300089262e-03, -2.977743643960592459e-03, -2.979250866023527757e-03, -2.980753175280664163e-03, -2.982250569531896562e-03, -2.983743046585016732e-03, -2.985230604256095856e-03, -2.986713240369299766e-03, -2.988190952756803517e-03, -2.989663739258928855e-03, -2.991131597724075268e-03, -2.992594526008849221e-03, -2.994052521977872035e-03, -2.995505583503879198e-03, -2.996953708467835729e-03, -2.998396894758724538e-03, -2.999835140273651377e-03, -3.001268442917914663e-03, -3.002696800604986831e-03, -3.004120211256288819e-03, -3.005538672801578645e-03, -3.006952183178613139e-03, -3.008360740333431566e-03, -3.009764342220096721e-03, -3.011162986800838912e-03, -3.012556672046144430e-03, -3.013945395934543910e-03, -3.015329156452731165e-03, -3.016707951595664662e-03, -3.018081779366360226e-03, -3.019450637776008566e-03, -3.020814524844064614e-03, -3.022173438598061909e-03, -3.023527377073709742e-03, -3.024876338314989865e-03, -3.026220320373970013e-03, -3.027559321310895838e-03, -3.028893339194314947e-03, -3.030222372100816255e-03, -3.031546418115348748e-03, -3.032865475330839399e-03, -3.034179541848583926e-03, -3.035488615778076348e-03, -3.036792695236919647e-03, -3.038091778350951542e-03, -3.039385863254289583e-03, -3.040674948089176332e-03, -3.041959031006105131e-03, -3.043238110163748109e-03, -3.044512183729085851e-03, -3.045781249877242605e-03, -3.047045306791544388e-03, -3.048304352663626111e-03, -3.049558385693367391e-03, -3.050807404088711275e-03, -3.052051406065998604e-03, -3.053290389849794978e-03, -3.054524353672823534e-03, -3.055753295776108495e-03, -3.056977214408865880e-03, -3.058196107828641420e-03, -3.059409974301167436e-03, -3.060618812100409248e-03, -3.061822619508666223e-03, -3.063021394816436028e-03, -3.064215136322433718e-03, -3.065403842333770841e-03, -3.066587511165679188e-03, -3.067766141141713317e-03, -3.068939730593742317e-03, -3.070108277861828376e-03, -3.071271781294309181e-03, -3.072430239247884217e-03, -3.073583650087426122e-03, -3.074732012186174972e-03, -3.075875323925575649e-03, -3.077013583695381929e-03, -3.078146789893682501e-03, -3.079274940926792544e-03, -3.080398035209314447e-03, -3.081516071164208063e-03, -3.082629047222683154e-03, -3.083736961824193323e-03, -3.084839813416622063e-03, -3.085937600456045097e-03, -3.087030321406880433e-03, -3.088117974741823746e-03, -3.089200558941919070e-03, -3.090278072496549684e-03, -3.091350513903268118e-03, -3.092417881668074135e-03, -3.093480174305293737e-03, -3.094537390337464677e-03, -3.095589528295486503e-03, -3.096636586718645289e-03, -3.097678564154469644e-03, -3.098715459158833500e-03, -3.099747270295940063e-03, -3.100773996138360845e-03, -3.101795635266959335e-03, -3.102812186270888402e-03, -3.103823647747751182e-03, -3.104830018303394220e-03, -3.105831296552005478e-03, -3.106827481116170280e-03, -3.107818570626817972e-03, -3.108804563723099185e-03, -3.109785459052677708e-03, -3.110761255271430378e-03, -3.111731951043685603e-03, -3.112697545042069844e-03, -3.113658035947527124e-03, -3.114613422449464750e-03, -3.115563703245542541e-03, -3.116508877041792094e-03, -3.117448942552684867e-03, -3.118383898500978659e-03, -3.119313743617787866e-03, -3.120238476642658507e-03, -3.121158096323442457e-03, -3.122072601416349055e-03, -3.122981990686055261e-03, -3.123886262905484039e-03, -3.124785416856033782e-03, -3.125679451327402231e-03, -3.126568365117696636e-03, -3.127452157033441989e-03, -3.128330825889416664e-03, -3.129204370508918698e-03, -3.130072789723577133e-03, -3.130936082373388888e-03, -3.131794247306725256e-03, -3.132647283380403467e-03, -3.133495189459572193e-03, -3.134337964417783107e-03, -3.135175607136970501e-03, -3.136008116507512863e-03, -3.136835491428117094e-03, -3.137657730805903065e-03, -3.138474833556399723e-03, -3.139286798603585418e-03, -3.140093624879692746e-03, -3.140895311325481772e-03, -3.141691856890100817e-03, -3.142483260531062170e-03, -3.143269521214284590e-03, -3.144050637914093307e-03, -3.144826609613261218e-03, -3.145597435302929529e-03, -3.146363113982646783e-03, -3.147123644660403986e-03, -3.147879026352563923e-03, -3.148629258083926637e-03, -3.149374338887720760e-03, -3.150114267805554941e-03, -3.150849043887454272e-03, -3.151578666191908427e-03, -3.152303133785773655e-03, -3.153022445744366013e-03, -3.153736601151397190e-03, -3.154445599098982308e-03, -3.155149438687717550e-03, -3.155848119026581286e-03, -3.156541639232957920e-03, -3.157229998432726364e-03, -3.157913195760130368e-03, -3.158591230357847036e-03, -3.159264101377028035e-03, -3.159931807977216320e-03, -3.160594349326379532e-03, -3.161251724600952929e-03, -3.161903932985772603e-03, -3.162550973674118845e-03, -3.163192845867700536e-03, -3.163829548776679861e-03, -3.164461081619671448e-03, -3.165087443623641316e-03, -3.165708634024073410e-03, -3.166324652064905851e-03, -3.166935496998452004e-03, -3.167541168085475506e-03, -3.168141664595242740e-03, -3.168736985805390999e-03, -3.169327131002029532e-03, -3.169912099479707014e-03, -3.170491890541438876e-03, -3.171066503498663064e-03, -3.171635937671233967e-03, -3.172200192387513058e-03, -3.172759266984311651e-03, -3.173313160806791149e-03, -3.173861873208671646e-03, -3.174405403552062795e-03, -3.174943751207564852e-03, -3.175476915554179339e-03, -3.176004895979371492e-03, -3.176527691879111898e-03, -3.177045302657748992e-03, -3.177557727728111837e-03, -3.178064966511518798e-03, -3.178567018437687772e-03, -3.179063882944801675e-03, -3.179555559479526651e-03, -3.180042047496968276e-03, -3.180523346460673723e-03, -3.180999455842673830e-03, -3.181470375123431494e-03, -3.181936103791865086e-03, -3.182396641345389653e-03, -3.182851987289821941e-03, -3.183302141139490119e-03, -3.183747102417121885e-03, -3.184186870653963296e-03, -3.184621445389693335e-03, -3.185050826172443426e-03, -3.185475012558802201e-03, -3.185894004113851066e-03, -3.186307800411102616e-03, -3.186716401032519286e-03, -3.187119805568574930e-03, -3.187518013618156378e-03, -3.187911024788617643e-03, -3.188298838695784263e-03, -3.188681454963963272e-03, -3.189058873225902001e-03, -3.189431093122797618e-03, -3.189798114304330523e-03, -3.190159936428667384e-03, -3.190516559162363125e-03, -3.190867982180504471e-03, -3.191214205166620181e-03, -3.191555227812705765e-03, -3.191891049819209607e-03, -3.192221670895030797e-03, -3.192547090757573772e-03, -3.192867309132674594e-03, -3.193182325754625669e-03, -3.193492140366223017e-03, -3.193796752718683438e-03, -3.194096162571705665e-03, -3.194390369693461251e-03, -3.194679373860561181e-03, -3.194963174858102273e-03, -3.195241772479633785e-03, -3.195515166527165656e-03, -3.195783356811187585e-03, -3.196046343150626533e-03, -3.196304125372888792e-03, -3.196556703313849571e-03, -3.196804076817827845e-03, -3.197046245737616716e-03, -3.197283209934477771e-03, -3.197514969278118530e-03, -3.197741523646714136e-03, -3.197962872926914286e-03, -3.198179017013815049e-03, -3.198389955810967532e-03, -3.198595689230416921e-03, -3.198796217192627876e-03, -3.198991539626565208e-03, -3.199181656469604965e-03, -3.199366567667632447e-03, -3.199546273174969351e-03, -3.199720772954380704e-03, -3.199890066977135149e-03, -3.200054155222908665e-03, -3.200213037679879111e-03, -3.200366714344645997e-03, -3.200515185222290761e-03, -3.200658450326341210e-03, -3.200796509678778892e-03, -3.200929363310046905e-03, -3.201057011259052058e-03, -3.201179453573137559e-03, -3.201296690308112064e-03, -3.201408721528231464e-03, -3.201515547306227078e-03, -3.201617167723247535e-03, -3.201713582868921226e-03, -3.201804792841308166e-03, -3.201890797746948999e-03, -3.201971597700812525e-03, -3.202047192826312609e-03, -3.202117583255325532e-03, -3.202182769128182182e-03, -3.202242750593639435e-03, -3.202297527808923520e-03, -3.202347100939695757e-03, -3.202391470160057332e-03, -3.202430635652592228e-03, -3.202464597608273983e-03, -3.202493356226557199e-03, -3.202516911715328537e-03, -3.202535264290916686e-03, -3.202548414178105814e-03, -3.202556361610089594e-03, -3.202559106828542328e-03, -3.202556650083543052e-03, -3.202548991633628883e-03, -3.202536131745772462e-03, -3.202518070695374586e-03, -3.202494808766274178e-03, -3.202466346250758700e-03, -3.202432683449540733e-03, -3.202393820671757107e-03, -3.202349758234994924e-03, -3.202300496465261201e-03, -3.202246035696980266e-03, -3.202186376273050573e-03, -3.202121518544747553e-03, -3.202051462871808186e-03, -3.201976209622391534e-03, -3.201895759173051855e-03, -3.201810111908824034e-03, -3.201719268223110395e-03, -3.201623228517777413e-03, -3.201521993203078082e-03, -3.201415562697724777e-03, -3.201303937428816825e-03, -3.201187117831885611e-03, -3.201065104350875063e-03, -3.200937897438146853e-03, -3.200805497554479098e-03, -3.200667905169069828e-03, -3.200525120759519209e-03, -3.200377144811834308e-03, -3.200223977820446011e-03, -3.200065620288186034e-03, -3.199902072726306442e-03, -3.199733335654437582e-03, -3.199559409600643157e-03, -3.199380295101382065e-03, -3.199195992701510134e-03, -3.199006502954286190e-03, -3.198811826421375966e-03, -3.198611963672829111e-03, -3.198406915287117791e-03, -3.198196681851088116e-03, -3.197981263959981824e-03, -3.197760662217444087e-03, -3.197534877235525680e-03, -3.197303909634620529e-03, -3.197067760043553319e-03, -3.196826429099534385e-03, -3.196579917448138033e-03, -3.196328225743339402e-03, -3.196071354647482370e-03, -3.195809304831320318e-03, -3.195542076973971902e-03, -3.195269671762908902e-03, -3.194992089894016507e-03, -3.194709332071556454e-03, -3.194421399008126258e-03, -3.194128291424737712e-03, -3.193830010050751397e-03, -3.193526555623897936e-03, -3.193217928890283198e-03, -3.192904130604376587e-03, -3.192585161529027521e-03, -3.192261022435405587e-03, -3.191931714103075999e-03, -3.191597237319963604e-03, -3.191257592882353750e-03, -3.190912781594845878e-03, -3.190562804270457610e-03, -3.190207661730501583e-03, -3.189847354804696035e-03, -3.189481884331045111e-03, -3.189111251155958126e-03, -3.188735456134165428e-03, -3.188354500128732713e-03, -3.187968384011087911e-03, -3.187577108660985623e-03, -3.187180674966508861e-03, -3.186779083824109807e-03, -3.186372336138543464e-03, -3.185960432822912761e-03, -3.185543374798652065e-03, -3.185121162995521119e-03, -3.184693798351607204e-03, -3.184261281813314734e-03, -3.183823614335388238e-03, -3.183380796880872030e-03, -3.182932830421163987e-03, -3.182479715935930542e-03, -3.182021454413199064e-03, -3.181558046849294105e-03, -3.181089494248827421e-03, -3.180615797624751322e-03, -3.180136957998333513e-03, -3.179652976399096817e-03, -3.179163853864917181e-03, -3.178669591441963399e-03, -3.178170190184665019e-03, -3.177665651155801244e-03, -3.177155975426392952e-03, -3.176641164075816749e-03, -3.176121218191681368e-03, -3.175596138869888393e-03, -3.175065927214681689e-03, -3.174530584338539855e-03, -3.173990111362204412e-03, -3.173444509414754394e-03, -3.172893779633505738e-03, -3.172337923164075032e-03, -3.171776941160304921e-03, -3.171210834784362557e-03, -3.170639605206666302e-03, -3.170063253605869685e-03, -3.169481781168917781e-03, -3.168895189091041134e-03, -3.168303478575676835e-03, -3.167706650834514054e-03, -3.167104707087586846e-03, -3.166497648563065988e-03, -3.165885476497453267e-03, -3.165268192135439231e-03, -3.164645796730003804e-03, -3.164018291542360778e-03, -3.163385677841923545e-03, -3.162747956906394441e-03, -3.162105130021693623e-03, -3.161457198481938680e-03, -3.160804163589532676e-03, -3.160146026655077413e-03, -3.159482788997383836e-03, -3.158814451943508465e-03, -3.158141016828729976e-03, -3.157462484996516241e-03, -3.156778857798575068e-03, -3.156090136594829915e-03, -3.155396322753371754e-03, -3.154697417650558378e-03, -3.153993422670873896e-03, -3.153284339207108270e-03, -3.152570168660164332e-03, -3.151850912439146252e-03, -3.151126571961395100e-03, -3.150397148652420761e-03, -3.149662643945895426e-03, -3.148923059283716044e-03, -3.148178396115940570e-03, -3.147428655900834805e-03, -3.146673840104778717e-03, -3.145913950202378767e-03, -3.145148987676420205e-03, -3.144378954017808519e-03, -3.143603850725622349e-03, -3.142823679307165958e-03, -3.142038441277848239e-03, -3.141248138161209600e-03, -3.140452771488999161e-03, -3.139652342801104497e-03, -3.138846853645565951e-03, -3.138036305578525021e-03, -3.137220700164317609e-03, -3.136400038975401157e-03, -3.135574323592354214e-03, -3.134743555603906363e-03, -3.133907736606931279e-03, -3.133066868206385146e-03, -3.132220952015388627e-03, -3.131369989655179153e-03, -3.130513982755084908e-03, -3.129652932952567326e-03, -3.128786841893238871e-03, -3.127915711230734672e-03, -3.127039542626887728e-03, -3.126158337751553697e-03, -3.125272098282744476e-03, -3.124380825906568782e-03, -3.123484522317165370e-03, -3.122583189216841804e-03, -3.121676828315971246e-03, -3.120765441332959498e-03, -3.119849029994358619e-03, -3.118927596034790171e-03, -3.118001141196891004e-03, -3.117069667231436424e-03, -3.116133175897239146e-03, -3.115191668961203933e-03, -3.114245148198270790e-03, -3.113293615391387204e-03, -3.112337072331693329e-03, -3.111375520818273482e-03, -3.110408962658250693e-03, -3.109437399666850448e-03, -3.108460833667351687e-03, -3.107479266490984025e-03, -3.106492699977094277e-03, -3.105501135973031106e-03, -3.104504576334196197e-03, -3.103503022923955780e-03, -3.102496477613738216e-03, -3.101484942283032689e-03, -3.100468418819262145e-03, -3.099446909117848335e-03, -3.098420415082364480e-03, -3.097388938624253373e-03, -3.096352481662934062e-03, -3.095311046125978800e-03, -3.094264633948796452e-03, -3.093213247074902243e-03, -3.092156887455689215e-03, -3.091095557050615138e-03, -3.090029257827111003e-03, -3.088957991760524213e-03, -3.087881760834228304e-03, -3.086800567039575238e-03, -3.085714412375816906e-03, -3.084623298850229164e-03, -3.083527228478045046e-03, -3.082426203282377566e-03, -3.081320225294377144e-03, -3.080209296553124056e-03, -3.079093419105572490e-03, -3.077972595006725747e-03, -3.076846826319408132e-03, -3.075716115114451431e-03, -3.074580463470635069e-03, -3.073439873474546023e-03, -3.072294347220830366e-03, -3.071143886811984660e-03, -3.069988494358383713e-03, -3.068828171978376859e-03, -3.067662921798221601e-03, -3.066492745951991238e-03, -3.065317646581736197e-03, -3.064137625837381248e-03, -3.062952685876764534e-03, -3.061762828865520480e-03, -3.060568056977268012e-03, -3.059368372393478711e-03, -3.058163777303468580e-03, -3.056954273904368552e-03, -3.055739864401367783e-03, -3.054520551007336784e-03, -3.053296335943036025e-03, -3.052067221437132407e-03, -3.050833209726123377e-03, -3.049594303054368582e-03, -3.048350503673994891e-03, -3.047101813845053391e-03, -3.045848235835428314e-03, -3.044589771920740325e-03, -3.043326424384522593e-03, -3.042058195518138834e-03, -3.040785087620684422e-03, -3.039507102999146858e-03, -3.038224243968327271e-03, -3.036936512850743272e-03, -3.035643911976835824e-03, -3.034346443684730714e-03, -3.033044110320403785e-03, -3.031736914237657086e-03, -3.030424857797968819e-03, -3.029107943370704104e-03, -3.027786173332969264e-03, -3.026459550069584507e-03, -3.025128075973221396e-03, -3.023791753444302240e-03, -3.022450584890934606e-03, -3.021104572729065713e-03, -3.019753719382378340e-03, -3.018398027282234025e-03, -3.017037498867812702e-03, -3.015672136585999079e-03, -3.014301942891456799e-03, -3.012926920246494864e-03, -3.011547071121147435e-03, -3.010162397993315208e-03, -3.008772903348462709e-03, -3.007378589679766609e-03, -3.005979459488196393e-03, -3.004575515282417644e-03, -3.003166759578694035e-03, -3.001753194901077282e-03, -3.000334823781283539e-03, -2.998911648758738075e-03, -2.997483672380458607e-03, -2.996050897201218369e-03, -2.994613325783482358e-03, -2.993170960697304553e-03, -2.991723804520363909e-03, -2.990271859838197245e-03, -2.988815129243778575e-03, -2.987353615337866915e-03, -2.985887320728759960e-03, -2.984416248032476654e-03, -2.982940399872666560e-03, -2.981459778880534827e-03, -2.979974387694977501e-03, -2.978484228962530785e-03, -2.976989305337238764e-03, -2.975489619480871980e-03, -2.973985174062783454e-03, -2.972475971759846233e-03, -2.970962015256619054e-03, -2.969443307245263081e-03, -2.967919850425412669e-03, -2.966391647504399137e-03, -2.964858701197120236e-03, -2.963321014225948208e-03, -2.961778589320965705e-03, -2.960231429219655278e-03, -2.958679536667266265e-03, -2.957122914416418849e-03, -2.955561565227328696e-03, -2.953995491867795684e-03, -2.952424697113170508e-03, -2.950849183746240625e-03, -2.949268954557425840e-03, -2.947684012344662513e-03, -2.946094359913300782e-03, -2.944500000076324866e-03, -2.942900935654179598e-03, -2.941297169474858461e-03, -2.939688704373783022e-03, -2.938075543193816811e-03, -2.936457688785554590e-03, -2.934835144006839227e-03, -2.933207911723046627e-03, -2.931575994807091804e-03, -2.929939396139341710e-03, -2.928298118607559290e-03, -2.926652165107043561e-03, -2.925001538540521629e-03, -2.923346241818199423e-03, -2.921686277857638535e-03, -2.920021649583923618e-03, -2.918352359929588229e-03, -2.916678411834485590e-03, -2.914999808246001092e-03, -2.913316552118938672e-03, -2.911628646415385067e-03, -2.909936094104992148e-03, -2.908238898164770044e-03, -2.906537061579044217e-03, -2.904830587339662755e-03, -2.903119478445728360e-03, -2.901403737903830802e-03, -2.899683368727923750e-03, -2.897958373939247580e-03, -2.896228756566501979e-03, -2.894494519645754004e-03, -2.892755666220314919e-03, -2.891012199340945322e-03, -2.889264122065787494e-03, -2.887511437460167640e-03, -2.885754148596894261e-03, -2.883992258556075574e-03, -2.882225770425050557e-03, -2.880454687298627473e-03, -2.878679012278733892e-03, -2.876898748474859911e-03, -2.875113899003593678e-03, -2.873324466988801812e-03, -2.871530455561876593e-03, -2.869731867861268892e-03, -2.867928707032747944e-03, -2.866120976229429972e-03, -2.864308678611714870e-03, -2.862491817347132678e-03, -2.860670395610596418e-03, -2.858844416584236867e-03, -2.857013883457474972e-03, -2.855178799426844483e-03, -2.853339167696231776e-03, -2.851494991476780875e-03, -2.849646273986747302e-03, -2.847793018451589154e-03, -2.845935228104208656e-03, -2.844072906184450401e-03, -2.842206055939535455e-03, -2.840334680623746513e-03, -2.838458783498669456e-03, -2.836578367833078422e-03, -2.834693436902805709e-03, -2.832803993990981595e-03, -2.830910042387903367e-03, -2.829011585390902618e-03, -2.827108626304607186e-03, -2.825201168440782430e-03, -2.823289215118232783e-03, -2.821372769663013820e-03, -2.819451835408304328e-03, -2.817526415694326936e-03, -2.815596513868549779e-03, -2.813662133285414584e-03, -2.811723277306607711e-03, -2.809779949300900571e-03, -2.807832152644009534e-03, -2.805879890719040464e-03, -2.803923166915926225e-03, -2.801961984631726795e-03, -2.799996347270676533e-03, -2.798026258244056680e-03, -2.796051720970111655e-03, -2.794072738874252455e-03, -2.792089315388948233e-03, -2.790101453953601398e-03, -2.788109158014755781e-03, -2.786112431025978241e-03, -2.784111276447890325e-03, -2.782105697748050738e-03, -2.780095698401003051e-03, -2.778081281888539374e-03, -2.776062451699225480e-03, -2.774039211328653207e-03, -2.772011564279507675e-03, -2.769979514061396419e-03, -2.767943064190962147e-03, -2.765902218191705793e-03, -2.763856979594200760e-03, -2.761807351936012688e-03, -2.759753338761515573e-03, -2.757694943622168021e-03, -2.755632170076374038e-03, -2.753565021689386751e-03, -2.751493502033357415e-03, -2.749417614687622077e-03, -2.747337363238118273e-03, -2.745252751277934503e-03, -2.743163782406871781e-03, -2.741070460231796214e-03, -2.738972788366431273e-03, -2.736870770431284929e-03, -2.734764410053869971e-03, -2.732653710868577362e-03, -2.730538676516540073e-03, -2.728419310645872897e-03, -2.726295616911578353e-03, -2.724167598975344145e-03, -2.722035260505867565e-03, -2.719898605178650789e-03, -2.717757636675924987e-03, -2.715612358686874967e-03, -2.713462774907495628e-03, -2.711308889040466193e-03, -2.709150704795462890e-03, -2.706988225888717469e-03, -2.704821456043598332e-03, -2.702650398989969987e-03, -2.700475058464535654e-03, -2.698295438210855483e-03, -2.696111541979268923e-03, -2.693923373526732525e-03, -2.691730936617110076e-03, -2.689534235021000860e-03, -2.687333272515611722e-03, -2.685128052885033759e-03, -2.682918579920038921e-03, -2.680704857418164146e-03, -2.678486889183569544e-03, -2.676264679027086108e-03, -2.674038230766538800e-03, -2.671807548226154579e-03, -2.669572635236843860e-03, -2.667333495636510596e-03, -2.665090133269392217e-03, -2.662842551986630349e-03, -2.660590755645847547e-03, -2.658334748111466049e-03, -2.656074533254567261e-03, -2.653810114952722191e-03, -2.651541497090296323e-03, -2.649268683558275717e-03, -2.646991678254133427e-03, -2.644710485082108365e-03, -2.642425107953052642e-03, -2.640135550784269806e-03, -2.637841817499811913e-03, -2.635543912030331205e-03, -2.633241838312904044e-03, -2.630935600291397797e-03, -2.628625201916041064e-03, -2.626310647143779726e-03, -2.623991939938121257e-03, -2.621669084268977296e-03, -2.619342084112946407e-03, -2.617010943453171399e-03, -2.614675666279175827e-03, -2.612336256587157162e-03, -2.609992718379822857e-03, -2.607645055666255041e-03, -2.605293272462185471e-03, -2.602937372789831168e-03, -2.600577360677770386e-03, -2.598213240161252255e-03, -2.595845015281740120e-03, -2.593472690087546013e-03, -2.591096268633127225e-03, -2.588715754979397255e-03, -2.586331153194019843e-03, -2.583942467350803553e-03, -2.581549701530041780e-03, -2.579152859818553949e-03, -2.576751946309522451e-03, -2.574346965102618408e-03, -2.571937920303755346e-03, -2.569524816025381929e-03, -2.567107656386372234e-03, -2.564686445511799376e-03, -2.562261187533306731e-03, -2.559831886588885465e-03, -2.557398546822785192e-03, -2.554961172385572521e-03, -2.552519767434487108e-03, -2.550074336132726084e-03, -2.547624882650096744e-03, -2.545171411162523885e-03, -2.542713925852422771e-03, -2.540252430908498341e-03, -2.537786930525645461e-03, -2.535317428905171835e-03, -2.532843930254728183e-03, -2.530366438788052372e-03, -2.527884958725346281e-03, -2.525399494293078043e-03, -2.522910049723816380e-03, -2.520416629256563672e-03, -2.517919237136550820e-03, -2.515417877615110185e-03, -2.512912554949959208e-03, -2.510403273405074649e-03, -2.507890037250448418e-03, -2.505372850762539044e-03, -2.502851718223714824e-03, -2.500326643922968529e-03, -2.497797632155105557e-03, -2.495264687221214906e-03, -2.492727813428644457e-03, -2.490187015090942427e-03, -2.487642296527626650e-03, -2.485093662064554940e-03, -2.482541116033676158e-03, -2.479984662773135600e-03, -2.477424306627052514e-03, -2.474860051945824112e-03, -2.472291903085989395e-03, -2.469719864410082136e-03, -2.467143940286670774e-03, -2.464564135090778225e-03, -2.461980453203163697e-03, -2.459392899010744669e-03, -2.456801476906606864e-03, -2.454206191289865033e-03, -2.451607046565746229e-03, -2.449004047145354312e-03, -2.446397197446012126e-03, -2.443786501891092363e-03, -2.441171964909809398e-03, -2.438553590937583143e-03, -2.435931384415856039e-03, -2.433305349791887052e-03, -2.430675491519134184e-03, -2.428041814057020284e-03, -2.425404321870810748e-03, -2.422763019431907125e-03, -2.420117911217671038e-03, -2.417469001711270229e-03, -2.414816295402065407e-03, -2.412159796785113240e-03, -2.409499510361598311e-03, -2.406835440638633618e-03, -2.404167592129085804e-03, -2.401495969351909090e-03, -2.398820576831982646e-03, -2.396141419099887676e-03, -2.393458500692293833e-03, -2.390771826151753213e-03, -2.388081400026524290e-03, -2.385387226870916248e-03, -2.382689311245018374e-03, -2.379987657714876560e-03, -2.377282270852234831e-03, -2.374573155234629019e-03, -2.371860315445789222e-03, -2.369143756074910349e-03, -2.366423481717060649e-03, -2.363699496973246765e-03, -2.360971806450265845e-03, -2.358240414760536408e-03, -2.355505326522450496e-03, -2.352766546360107389e-03, -2.350024078903444145e-03, -2.347277928787975393e-03, -2.344528100655157623e-03, -2.341774599152192729e-03, -2.339017428931900074e-03, -2.336256594652779805e-03, -2.333492100979396664e-03, -2.330723952581698240e-03, -2.327952154135315942e-03, -2.325176710321957482e-03, -2.322397625828599363e-03, -2.319614905348209386e-03, -2.316828553579165090e-03, -2.314038575225727326e-03, -2.311244974997799136e-03, -2.308447757610767020e-03, -2.305646927785825334e-03, -2.302842490249821898e-03, -2.300034449735051129e-03, -2.297222810979605324e-03, -2.294407578727191213e-03, -2.291588757726938270e-03, -2.288766352733758239e-03, -2.285940368508148669e-03, -2.283110809816009477e-03, -2.280277681429054935e-03, -2.277440988124324051e-03, -2.274600734684592129e-03, -2.271756925898191226e-03, -2.268909566558794180e-03, -2.266058661465802752e-03, -2.263204215424153339e-03, -2.260346233244099699e-03, -2.257484719741595022e-03, -2.254619679738089841e-03, -2.251751118060343372e-03, -2.248879039540786946e-03, -2.246003449017269001e-03, -2.243124351333161334e-03, -2.240241751337113205e-03, -2.237355653883418231e-03, -2.234466063831800145e-03, -2.231572986047306983e-03, -2.228676425400340135e-03, -2.225776386767116220e-03, -2.222872875028858702e-03, -2.219965895072278407e-03, -2.217055451789598248e-03, -2.214141550078359798e-03, -2.211224194841564673e-03, -2.208303390987373122e-03, -2.205379143429511257e-03, -2.202451457087048134e-03, -2.199520336884223590e-03, -2.196585787750787375e-03, -2.193647814621833923e-03, -2.190706422437568596e-03, -2.187761616143722287e-03, -2.184813400691313322e-03, -2.181861781036473127e-03, -2.178906762140873400e-03, -2.175948348971199625e-03, -2.172986546499615108e-03, -2.170021359703545004e-03, -2.167052793565462081e-03, -2.164080853073290910e-03, -2.161105543220181481e-03, -2.158126869004332697e-03, -2.155144835429349294e-03, -2.152159447504051453e-03, -2.149170710242270538e-03, -2.146178628663214256e-03, -2.143183207791297517e-03, -2.140184452655909120e-03, -2.137182368291802061e-03, -2.134176959738819015e-03, -2.131168232042046293e-03, -2.128156190251559270e-03, -2.125140839422508254e-03, -2.122122184615577323e-03, -2.119100230896157292e-03, -2.116074983334840544e-03, -2.113046447007427102e-03, -2.110014626994830955e-03, -2.106979528382840229e-03, -2.103941156262523551e-03, -2.100899515729959862e-03, -2.097854611886341199e-03, -2.094806449837719430e-03, -2.091755034695383549e-03, -2.088700371575658021e-03, -2.085642465599773978e-03, -2.082581321893884826e-03, -2.079516945589579297e-03, -2.076449341822964208e-03, -2.073378515735478048e-03, -2.070304472473264747e-03, -2.067227217187660258e-03, -2.064146755034951437e-03, -2.061063091176193029e-03, -2.057976230777572822e-03, -2.054886179010235146e-03, -2.051792941050047548e-03, -2.048696522077998045e-03, -2.045596927279993028e-03, -2.042494161846634352e-03, -2.039388230973635668e-03, -2.036279139861589971e-03, -2.033166893715768371e-03, -2.030051497746508237e-03, -2.026932957169026717e-03, -2.023811277203167464e-03, -2.020686463073910651e-03, -2.017558520010712467e-03, -2.014427453248359475e-03, -2.011293268026010609e-03, -2.008155969587728865e-03, -2.005015563182514695e-03, -2.001872054064149451e-03, -1.998725447490990684e-03, -1.995575748726382843e-03, -1.992422963038439129e-03, -1.989267095699817720e-03, -1.986108151988126395e-03, -1.982946137185647578e-03, -1.979781056579471045e-03, -1.976612915461253665e-03, -1.973441719127306138e-03, -1.970267472879057898e-03, -1.967090182022215774e-03, -1.963909851867244941e-03, -1.960726487729414890e-03, -1.957540094928681470e-03, -1.954350678789433179e-03, -1.951158244640936344e-03, -1.947962797817006384e-03, -1.944764343656188877e-03, -1.941562887501422155e-03, -1.938358434700479006e-03, -1.935150990605735526e-03, -1.931940560573947550e-03, -1.928727149966686944e-03, -1.925510764150089628e-03, -1.922291408494663460e-03, -1.919069088375667054e-03, -1.915843809172936094e-03, -1.912615576270631579e-03, -1.909384395057719258e-03, -1.906150270927417555e-03, -1.902913209277672449e-03, -1.899673215510938248e-03, -1.896430295033958583e-03, -1.893184453258167990e-03, -1.889935695599491774e-03, -1.886684027478109432e-03, -1.883429454318874454e-03, -1.880171981551102692e-03, -1.876911614608329061e-03, -1.873648358928745993e-03, -1.870382219954963825e-03, -1.867113203133811093e-03, -1.863841313916789460e-03, -1.860566557759461359e-03, -1.857288940122271389e-03, -1.854008466469611724e-03, -1.850725142270253634e-03, -1.847438972997760996e-03, -1.844149964129611005e-03, -1.840858121147709173e-03, -1.837563449538437248e-03, -1.834265954792496656e-03, -1.830965642404695998e-03, -1.827662517874368469e-03, -1.824356586705071529e-03, -1.821047854404725689e-03, -1.817736326485313095e-03, -1.814422008463307959e-03, -1.811104905859442591e-03, -1.807785024198567533e-03, -1.804462369009685388e-03, -1.801136945826482079e-03, -1.797808760186362558e-03, -1.794477817631307329e-03, -1.791144123707213032e-03, -1.787807683964390531e-03, -1.784468503957342645e-03, -1.781126589244528451e-03, -1.777781945388805847e-03, -1.774434577957183928e-03, -1.771084492520603538e-03, -1.767731694654376589e-03, -1.764376189937937999e-03, -1.761017983954631235e-03, -1.757657082292140042e-03, -1.754293490542243629e-03, -1.750927214300595711e-03, -1.747558259167250345e-03, -1.744186630746015314e-03, -1.740812334645008537e-03, -1.737435376476405237e-03, -1.734055761856128069e-03, -1.730673496404655076e-03, -1.727288585746058645e-03, -1.723901035508503378e-03, -1.720510851324318947e-03, -1.717118038829826407e-03, -1.713722603665129157e-03, -1.710324551474531017e-03, -1.706923887906319813e-03, -1.703520618612508041e-03, -1.700114749249300155e-03, -1.696706285476777282e-03, -1.693295232959020607e-03, -1.689881597363894960e-03, -1.686465384363108021e-03, -1.683046599632724441e-03, -1.679625248852272034e-03, -1.676201337705217299e-03, -1.672774871879076667e-03, -1.669345857065166047e-03, -1.665914298958724856e-03, -1.662480203258627845e-03, -1.659043575667819423e-03, -1.655604421893064077e-03, -1.652162747644743846e-03, -1.648718558637270312e-03, -1.645271860588862342e-03, -1.641822659221382806e-03, -1.638370960260405150e-03, -1.634916769435734024e-03, -1.631460092480417796e-03, -1.628000935131624152e-03, -1.624539303129985237e-03, -1.621075202220086196e-03, -1.617608638150241831e-03, -1.614139616672272820e-03, -1.610668143541925520e-03, -1.607194224518643634e-03, -1.603717865365341831e-03, -1.600239071848843760e-03, -1.596757849739645916e-03, -1.593274204811668269e-03, -1.589788142842725894e-03, -1.586299669614271365e-03, -1.582808790911157748e-03, -1.579315512522104807e-03, -1.575819840239429687e-03, -1.572321779858830947e-03, -1.568821337179921328e-03, -1.565318518005493539e-03, -1.561813328142476085e-03, -1.558305773400888317e-03, -1.554795859594386865e-03, -1.551283592540329392e-03, -1.547768978059614348e-03, -1.544252021976437461e-03, -1.540732730118739508e-03, -1.537211108317972129e-03, -1.533687162408856920e-03, -1.530160898229833205e-03, -1.526632321622737980e-03, -1.523101438432973966e-03, -1.519568254509229667e-03, -1.516032775703578033e-03, -1.512495007871992756e-03, -1.508954956873417375e-03, -1.505412628570214567e-03, -1.501868028828629758e-03, -1.498321163517758519e-03, -1.494772038510485930e-03, -1.491220659682767095e-03, -1.487667032914155802e-03, -1.484111164087583562e-03, -1.480553059089092681e-03, -1.476992723808300077e-03, -1.473430164138166566e-03, -1.469865385974741421e-03, -1.466298395217612753e-03, -1.462729197769692185e-03, -1.459157799536931659e-03, -1.455584206428823472e-03, -1.452008424358117080e-03, -1.448430459240603345e-03, -1.444850316995649258e-03, -1.441268003545538318e-03, -1.437683524816035395e-03, -1.434096886736134545e-03, -1.430508095237806180e-03, -1.426917156256473675e-03, -1.423324075730739938e-03, -1.419728859602173389e-03, -1.416131513815757463e-03, -1.412532044319637133e-03, -1.408930457064880380e-03, -1.405326758005946133e-03, -1.401720953100423417e-03, -1.398113048308797591e-03, -1.394503049594993539e-03, -1.390890962925638843e-03, -1.387276794271028726e-03, -1.383660549604058976e-03, -1.380042234900709722e-03, -1.376421856140511634e-03, -1.372799419305578824e-03, -1.369174930381144217e-03, -1.365548395355650410e-03, -1.361919820220490332e-03, -1.358289210970149707e-03, -1.354656573601889600e-03, -1.351021914116212622e-03, -1.347385238516616386e-03, -1.343746552809327440e-03, -1.340105863003790898e-03, -1.336463175112410874e-03, -1.332818495150387859e-03, -1.329171829135774446e-03, -1.325523183090045187e-03, -1.321872563037023015e-03, -1.318219975003855895e-03, -1.314565425020258315e-03, -1.310908919119092419e-03, -1.307250463336091318e-03, -1.303590063709622084e-03, -1.299927726281152390e-03, -1.296263457095007217e-03, -1.292597262198106039e-03, -1.288929147640443997e-03, -1.285259119474839928e-03, -1.281587183756676589e-03, -1.277913346544389201e-03, -1.274237613899199817e-03, -1.270559991884868392e-03, -1.266880486568253746e-03, -1.263199104018649602e-03, -1.259515850308352055e-03, -1.255830731512390039e-03, -1.252143753708201369e-03, -1.248454922976521570e-03, -1.244764245400306613e-03, -1.241071727065288025e-03, -1.237377374060060495e-03, -1.233681192475900596e-03, -1.229983188406510693e-03, -1.226283367948497946e-03, -1.222581737201039074e-03, -1.218878302266039300e-03, -1.215173069247784754e-03, -1.211466044253428631e-03, -1.207757233392745726e-03, -1.204046642777931208e-03, -1.200334278523705785e-03, -1.196620146747854338e-03, -1.192904253570243201e-03, -1.189186605113385026e-03, -1.185467207502503405e-03, -1.181746066865281986e-03, -1.178023189332021246e-03, -1.174298581035288511e-03, -1.170572248110419511e-03, -1.166844196695237786e-03, -1.163114432929823099e-03, -1.159382962956973092e-03, -1.155649792921965196e-03, -1.151914928972278202e-03, -1.148178377258099025e-03, -1.144440143932050130e-03, -1.140700235148937999e-03, -1.136958657066235168e-03, -1.133215415843822618e-03, -1.129470517643738027e-03, -1.125723968630737166e-03, -1.121975774971620829e-03, -1.118225942835808159e-03, -1.114474478395085545e-03, -1.110721387823327983e-03, -1.106966677297006050e-03, -1.103210352994920488e-03, -1.099452421097932894e-03, -1.095692887789465097e-03, -1.091931759255245458e-03, -1.088169041683034353e-03, -1.084404741263114659e-03, -1.080638864187962378e-03, -1.076871416652392137e-03, -1.073102404853297845e-03, -1.069331834989728156e-03, -1.065559713263457622e-03, -1.061786045877977742e-03, -1.058010839039072015e-03, -1.054234098954886633e-03, -1.050455831835751374e-03, -1.046676043893923725e-03, -1.042894741344079597e-03, -1.039111930402960302e-03, -1.035327617289544949e-03, -1.031541808224693086e-03, -1.027754509431636713e-03, -1.023965727135730478e-03, -1.020175467564254793e-03, -1.016383736946514923e-03, -1.012590541514391766e-03, -1.008795887501339611e-03, -1.004999781142881842e-03, -1.001202228677094486e-03, -9.974032363435055351e-04, -9.936028103841047700e-04, -9.898009570425605336e-04, -9.859976825648082352e-04, -9.821929931987914437e-04, -9.783868951941836808e-04, -9.745793948028988636e-04, -9.707704982788226394e-04, -9.669602118775449126e-04, -9.631485418568626984e-04, -9.593354944765132997e-04, -9.555210759979136659e-04, -9.517052926846488251e-04, -9.478881508022140613e-04, -9.440696566177609944e-04, -9.402498164006524743e-04, -9.364286364218050128e-04, -9.326061229542569053e-04, -9.287822822728944699e-04, -9.249571206542118963e-04, -9.211306443767852594e-04, -9.173028597210220684e-04, -9.134737729688952035e-04, -9.096433904044342765e-04, -9.058117183134709515e-04, -9.019787629833627991e-04, -8.981445307035022200e-04, -8.943090277649628876e-04, -8.904722604606581495e-04, -8.866342350850752894e-04, -8.827949579343499038e-04, -8.789544353068610202e-04, -8.751126735021822400e-04, -8.712696788215936990e-04, -8.674254575685832937e-04, -8.635800160478070402e-04, -8.597333605656829999e-04, -8.558854974304588251e-04, -8.520364329519506839e-04, -8.481861734417033959e-04, -8.443347252126360072e-04, -8.404820945795433420e-04, -8.366282878588375289e-04, -8.327733113682680597e-04, -8.289171714274327744e-04, -8.250598743575122311e-04, -8.212014264809990895e-04, -8.173418341222008551e-04, -8.134811036069727322e-04, -8.096192412624573067e-04, -8.057562534176592817e-04, -8.018921464027653576e-04, -7.980269265497274243e-04, -7.941606001919890171e-04, -7.902931736642251079e-04, -7.864246533028476692e-04, -7.825550454457320211e-04, -7.786843564319532616e-04, -7.748125926022853254e-04, -7.709397602989429433e-04, -7.670658658653037613e-04, -7.631909156464167232e-04, -7.593149159887399103e-04, -7.554378732398594077e-04, -7.515597937490093965e-04, -7.476806838667069939e-04, -7.438005499449169442e-04, -7.399193983367859887e-04, -7.360372353967142064e-04, -7.321540674809521925e-04, -7.282699009465530690e-04, -7.243847421519652172e-04, -7.204985974571102327e-04, -7.166114732231993693e-04, -7.127233758124654163e-04, -7.088343115886686953e-04, -7.049442869167374306e-04, -7.010533081629399203e-04, -6.971613816945171002e-04, -6.932685138802028527e-04, -6.893747110899431981e-04, -6.854799796947179434e-04, -6.815843260666169020e-04, -6.776877565794350118e-04, -6.737902776075357664e-04, -6.698918955268806652e-04, -6.659926167142404558e-04, -6.620924475477853741e-04, -6.581913944068235262e-04, -6.542894636715238747e-04, -6.503866617234270063e-04, -6.464829949451790687e-04, -6.425784697202550824e-04, -6.386730924334719844e-04, -6.347668694707162777e-04, -6.308598072186788345e-04, -6.269519120653550392e-04, -6.230431903997881576e-04, -6.191336486117792045e-04, -6.152232930924177688e-04, -6.113121302337973023e-04, -6.074001664287497068e-04, -6.034874080714413202e-04, -5.995738615565816658e-04, -5.956595332804527935e-04, -5.917444296397766142e-04, -5.878285570323016698e-04, -5.839119218568895441e-04, -5.799945305133238265e-04, -5.760763894020457833e-04, -5.721575049246549341e-04, -5.682378834836519874e-04, -5.643175314821530448e-04, -5.603964553244122947e-04, -5.564746614154553357e-04, -5.525521561612505884e-04, -5.486289459684302221e-04, -5.447050372443703855e-04, -5.407804363977922885e-04, -5.368551498377029368e-04, -5.329291839739962134e-04, -5.290025452175266046e-04, -5.250752399799333420e-04, -5.211472746733551492e-04, -5.172186557109535862e-04, -5.132893895065509257e-04, -5.093594824747912659e-04, -5.054289410307828516e-04, -5.014977715906153476e-04, -4.975659805710782712e-04, -4.936335743894857851e-04, -4.897005594637451106e-04, -4.857669422129670418e-04, -4.818327290563083429e-04, -4.778979264139317012e-04, -4.739625407066427897e-04, -4.700265783556143383e-04, -4.660900457829920940e-04, -4.621529494111832051e-04, -4.582152956634587119e-04, -4.542770909636777263e-04, -4.503383417360176818e-04, -4.463990544054874865e-04, -4.424592353976575026e-04, -4.385188911383782503e-04, -4.345780280543077635e-04, -4.306366525726247098e-04, -4.266947711207670440e-04, -4.227523901269395227e-04, -4.188095160198428710e-04, -4.148661552284009968e-04, -4.109223141823646749e-04, -4.069779993115072315e-04, -4.030332170466766539e-04, -3.990879738186297481e-04, -3.951422760586508929e-04, -3.911961301986199651e-04, -3.872495426708298140e-04, -3.833025199077102238e-04, -3.793550683423493062e-04, -3.754071944082104694e-04, -3.714589045388693367e-04, -3.675102051685227790e-04, -3.635611027316276050e-04, -3.596116036630705092e-04, -3.556617143978012870e-04, -3.517114413713505407e-04, -3.477607910195587375e-04, -3.438097697783862035e-04, -3.398583840839917818e-04, -3.359066403733385227e-04, -3.319545450830389539e-04, -3.280021046504019862e-04, -3.240493255126275138e-04, -3.200962141074142181e-04, -3.161427768726861862e-04, -3.121890202463138372e-04, -3.082349506666365074e-04, -3.042805745721852747e-04, -3.003258984014108230e-04, -2.963709285931949151e-04, -2.924156715865841669e-04, -2.884601338205111361e-04, -2.845043217343110531e-04, -2.805482417674496319e-04, -2.765919003592464363e-04, -2.726353039494841470e-04, -2.686784589776887054e-04, -2.647213718837400451e-04, -2.607640491075934519e-04, -2.568064970889205839e-04, -2.528487222680637870e-04, -2.488907310848848344e-04, -2.449325299793670384e-04, -2.409741253916958606e-04, -2.370155237620714538e-04, -2.330567315304322713e-04, -2.290977551369765685e-04, -2.251386010218833561e-04, -2.211792756250414310e-04, -2.172197853865648061e-04, -2.132601367464331073e-04, -2.093003361446525235e-04, -2.053403900209868431e-04, -2.013803048150276563e-04, -1.974200869668098289e-04, -1.934597429157354595e-04, -1.894992791011853152e-04, -1.855387019625943999e-04, -1.815780179391771369e-04, -1.776172334700944710e-04, -1.736563549940885469e-04, -1.696953889500039936e-04, -1.657343417765114256e-04, -1.617732199118319199e-04, -1.578120297942564305e-04, -1.538507778618713226e-04, -1.498894705523705611e-04, -1.459281143031334487e-04, -1.419667155518325647e-04, -1.380052807352756745e-04, -1.340438162904543970e-04, -1.300823286537392388e-04, -1.261208242614875337e-04, -1.221593095497670520e-04, -1.181977909540825512e-04, -1.142362749098932119e-04, -1.102747678523382667e-04, -1.063132762159619784e-04, -1.023518064352319027e-04, -9.839036494426444941e-05, -9.442895817654921016e-05, -9.046759256546833231e-05, -8.650627454402165994e-05, -8.254501054455035721e-05, -7.858380699925716277e-05, -7.462267033993127345e-05, -7.066160699767133060e-05, -6.670062340349578530e-05, -6.273972598753485596e-05, -5.877892118008234002e-05, -5.481821541043547017e-05, -5.085761510750303653e-05, -4.689712669988396429e-05, -4.293675661567933327e-05, -3.897651128221760734e-05, -3.501639712657398745e-05, -3.105642057529484822e-05, -2.709658805412279095e-05, -2.313690598851549541e-05, -1.917738080328269503e-05, -1.521801892275200734e-05, -1.125882677049370756e-05, -7.299810769398584450e-06, -3.340977342285773289e-06, 6.176670891674284233e-07, 4.576116103817740618e-06, 8.534363280978056845e-06, 1.249240220069273866e-05, 1.645022644357141007e-05, 2.040782959115255483e-05, 2.436520522538404801e-05, 2.832234692889867554e-05, 3.227924828528904382e-05, 3.623590287858848404e-05, 4.019230429354646663e-05, 4.414844611590335846e-05, 4.810432193187125596e-05, 5.205992532840994849e-05, 5.601524989350070650e-05, 5.997028921562833780e-05, 6.392503688405606671e-05, 6.787948648909972876e-05, 7.183363162152176949e-05, 7.578746587324689237e-05, 7.974098283675458713e-05, 8.369417610535455777e-05, 8.764703927346155423e-05, 9.159956593607654102e-05, 9.555174968906203037e-05, 9.950358412941569415e-05, 1.034550628547540804e-04, 1.074061794635841518e-04, 1.113569275555817629e-04, 1.153073007310700775e-04, 1.192572925912962302e-04, 1.232068967387052092e-04, 1.271561067763333672e-04, 1.311049163086120187e-04, 1.350533189403211167e-04, 1.390013082777437792e-04, 1.429488779281483390e-04, 1.468960214992703114e-04, 1.508427326003803878e-04, 1.547890048416773366e-04, 1.587348318342099950e-04, 1.626802071901529273e-04, 1.666251245226402981e-04, 1.705695774461272909e-04, 1.745135595758737842e-04, 1.784570645282173261e-04, 1.824000859208491456e-04, 1.863426173722945755e-04, 1.902846525021887648e-04, 1.942261849314621863e-04, 1.981672082822633866e-04, 2.021077161773537304e-04, 2.060477022412600433e-04, 2.099871600992304975e-04, 2.139260833780370842e-04, 2.178644657053675662e-04, 2.218023007101039277e-04, 2.257395820225920155e-04, 2.296763032741265705e-04, 2.336124580972256113e-04, 2.375480401259037354e-04, 2.414830429951546288e-04, 2.454174603412248817e-04, 2.493512858018898364e-04, 2.532845130159344714e-04, 2.572171356234277586e-04, 2.611491472659979154e-04, 2.650805415862244924e-04, 2.690113122283561693e-04, 2.729414528377014878e-04, 2.768709570609060276e-04, 2.807998185463107354e-04, 2.847280309429993991e-04, 2.886555879019496364e-04, 2.925824830754250919e-04, 2.965087101169043668e-04, 3.004342626812602922e-04, 3.043591344250370511e-04, 3.082833190059341521e-04, 3.122068100831657347e-04, 3.161296013172976670e-04, 3.200516863706037067e-04, 3.239730589065574983e-04, 3.278937125900995573e-04, 3.318136410878223439e-04, 3.357328380678988684e-04, 3.396512971994754835e-04, 3.435690121537301198e-04, 3.474859766032761918e-04, 3.514021842220803609e-04, 3.553176286857393320e-04, 3.592323036713109896e-04, 3.631462028576750030e-04, 3.670593199250222756e-04, 3.709716485551230679e-04, 3.748831824316013013e-04, 3.787939152394203201e-04, 3.827038406651549186e-04, 3.866129523972633127e-04, 3.905212441255746379e-04, 3.944287095415590239e-04, 3.983353423385995124e-04, 4.022411362114843795e-04, 4.061460848566689165e-04, 4.100501819725573221e-04, 4.139534212588948450e-04, 4.178557964174792368e-04, 4.217573011515617304e-04, 4.256579291661134832e-04, 4.295576741681033490e-04, 4.334565298659828281e-04, 4.373544899699537570e-04, 4.412515481922466769e-04, 4.451476982466025310e-04, 4.490429338485498953e-04, 4.529372487156662708e-04, 4.568306365670802725e-04, 4.607230911237293982e-04, 4.646146061086386687e-04, 4.685051752463194373e-04, 4.723947922635642733e-04, 4.762834508884095422e-04, 4.801711448512805411e-04, 4.840578678843899824e-04, 4.879436137216602572e-04, 4.918283760989118148e-04, 4.957121487541280881e-04, 4.995949254269524235e-04, 5.034766998590349714e-04, 5.073574657938765067e-04, 5.112372169771865413e-04, 5.151159471563664842e-04, 5.189936500807848128e-04, 5.228703195019595434e-04, 5.267459491734834218e-04, 5.306205328504204561e-04, 5.344940642903620379e-04, 5.383665372529195360e-04, 5.422379454992068068e-04, 5.461082827929814249e-04, 5.499775428996141495e-04, 5.538457195868756212e-04, 5.577128066243486164e-04, 5.615787977836871709e-04, 5.654436868388956544e-04, 5.693074675658069432e-04, 5.731701337423737459e-04, 5.770316791489083202e-04, 5.808920975676039062e-04, 5.847513827827829002e-04, 5.886095285811721338e-04, 5.924665287514000204e-04, 5.963223770842602340e-04, 6.001770673729799402e-04, 6.040305934126272798e-04, 6.078829490008133898e-04, 6.117341279370942493e-04, 6.155841240232455243e-04, 6.194329310635261375e-04, 6.232805428641688015e-04, 6.271269532336600687e-04, 6.309721559829920825e-04, 6.348161449251730603e-04, 6.386589138754792620e-04, 6.425004566517356899e-04, 6.463407670738052129e-04, 6.501798389639386550e-04, 6.540176661466198631e-04, 6.578542424488276500e-04, 6.616895616999655385e-04, 6.655236177312624140e-04, 6.693564043768213817e-04, 6.731879154731095416e-04, 6.770181448584528579e-04, 6.808470863740780782e-04, 6.846747338635211918e-04, 6.885010811725524038e-04, 6.923261221494369936e-04, 6.961498506447865624e-04, 6.999722605118996899e-04, 7.037933456062624420e-04, 7.076130997858131330e-04, 7.114315169112156532e-04, 7.152485908453476166e-04, 7.190643154535698942e-04, 7.228786846039948451e-04, 7.266916921669820542e-04, 7.305033320154027694e-04, 7.343135980249068315e-04, 7.381224840733401332e-04, 7.419299840414244132e-04, 7.457360918121851232e-04, 7.495408012712065403e-04, 7.533441063068995651e-04, 7.571460008100070003e-04, 7.609464786738564948e-04, 7.647455337946377748e-04, 7.685431600708916584e-04, 7.723393514037856606e-04, 7.761341016973668291e-04, 7.799274048580723349e-04, 7.837192547949907656e-04, 7.875096454201203824e-04, 7.912985706478778674e-04, 7.950860243954449439e-04, 7.988720005826055286e-04, 8.026564931320177582e-04, 8.064394959691238924e-04, 8.102210030215841428e-04, 8.140010082202964745e-04, 8.177795054988019202e-04, 8.215564887932308045e-04, 8.253319520424687349e-04, 8.291058891884163767e-04, 8.328782941755031883e-04, 8.366491609510308966e-04, 8.404184834650077224e-04, 8.441862556705046492e-04, 8.479524715231550637e-04, 8.517171249814178922e-04, 8.554802100067528071e-04, 8.592417205635523563e-04, 8.630016506185551927e-04, 8.667599941419555382e-04, 8.705167451064015982e-04, 8.742718974877565627e-04, 8.780254452645278821e-04, 8.817773824181258501e-04, 8.855277029331233779e-04, 8.892764007967673447e-04, 8.930234699992275300e-04, 8.967689045338774227e-04, 9.005126983967799833e-04, 9.042548455869665013e-04, 9.079953401066854189e-04, 9.117341759609125977e-04, 9.154713471576172729e-04, 9.192068477080119621e-04, 9.229406716260749825e-04, 9.266728129287959146e-04, 9.304032656364437251e-04, 9.341320237719949590e-04, 9.378590813618805375e-04, 9.415844324350174576e-04, 9.453080710238755385e-04, 9.490299911639223096e-04, 9.527501868935457077e-04, 9.564686522542251634e-04, 9.601853812907907258e-04, 9.639003680509417851e-04, 9.676136065854987157e-04, 9.713250909486637356e-04, 9.750348151975295457e-04, 9.787427733924276840e-04, 9.824489595967635103e-04, 9.861533678772818352e-04, 9.898559923039863644e-04, 9.935568269495754796e-04, 9.972558658904475109e-04, 1.000953103206118086e-03, 1.004648532979162453e-03, 1.008342149295374636e-03, 1.012033946244046516e-03, 1.015723917917453695e-03, 1.019412058411217842e-03, 1.023098361824145578e-03, 1.026782822258559156e-03, 1.030465433819815297e-03, 1.034146190616576670e-03, 1.037825086760962379e-03, 1.041502116368488553e-03, 1.045177273557497833e-03, 1.048850552450244448e-03, 1.052521947171988683e-03, 1.056191451851341227e-03, 1.059859060620521858e-03, 1.063524767614787208e-03, 1.067188566973102529e-03, 1.070850452837570103e-03, 1.074510419353690103e-03, 1.078168460670616028e-03, 1.081824570940669202e-03, 1.085478744319598975e-03, 1.089130974966830362e-03, 1.092781257044984824e-03, 1.096429584720139171e-03, 1.100075952162076235e-03, 1.103720353543806085e-03, 1.107362783041818425e-03, 1.111003234836335004e-03, 1.114641703110752545e-03, 1.118278182052382394e-03, 1.121912665851487745e-03, 1.125545148702340086e-03, 1.129175624802670596e-03, 1.132804088353588177e-03, 1.136430533559763985e-03, 1.140054954629667787e-03, 1.143677345775103707e-03, 1.147297701211457202e-03, 1.150916015157951375e-03, 1.154532281837161245e-03, 1.158146495475355928e-03, 1.161758650302341205e-03, 1.165368740551796277e-03, 1.168976760460792600e-03, 1.172582704270050836e-03, 1.176186566224106302e-03, 1.179788340571241755e-03, 1.183388021562929455e-03, 1.186985603454888049e-03, 1.190581080506128691e-03, 1.194174446979686006e-03, 1.197765697142057781e-03, 1.201354825263472106e-03, 1.204941825618115279e-03, 1.208526692483684675e-03, 1.212109420141614484e-03, 1.215690002877333744e-03, 1.219268434979808163e-03, 1.222844710741768882e-03, 1.226418824459972468e-03, 1.229990770434727116e-03, 1.233560542970147224e-03, 1.237128136374395599e-03, 1.240693544959134854e-03, 1.244256763040174456e-03, 1.247817784936921907e-03, 1.251376604972640133e-03, 1.254933217474756045e-03, 1.258487616774012696e-03, 1.262039797205494933e-03, 1.265589753108101612e-03, 1.269137478824459292e-03, 1.272682968701098309e-03, 1.276226217088693689e-03, 1.279767218341604359e-03, 1.283305966818115360e-03, 1.286842456880690246e-03, 1.290376682895497725e-03, 1.293908639232741907e-03, 1.297438320266506824e-03, 1.300965720375020333e-03, 1.304490833940556531e-03, 1.308013655348916207e-03, 1.311534178990367283e-03, 1.315052399259112464e-03, 1.318568310553213784e-03, 1.322081907274828307e-03, 1.325593183830090600e-03, 1.329102134629393328e-03, 1.332608754086958775e-03, 1.336113036621069776e-03, 1.339614976654317138e-03, 1.343114568613126055e-03, 1.346611806928020441e-03, 1.350106686033774499e-03, 1.353599200369355908e-03, 1.357089344377357919e-03, 1.360577112505061874e-03, 1.364062499203486578e-03, 1.367545498928105169e-03, 1.371026106138306276e-03, 1.374504315297637091e-03, 1.377980120874046886e-03, 1.381453517339426874e-03, 1.384924499169858710e-03, 1.388393060845842606e-03, 1.391859196851857796e-03, 1.395322901676593254e-03, 1.398784169813186221e-03, 1.402242995758777025e-03, 1.405699374014737204e-03, 1.409153299086922991e-03, 1.412604765485211272e-03, 1.416053767723747872e-03, 1.419500300321173501e-03, 1.422944357800109191e-03, 1.426385934687852139e-03, 1.429825025515454786e-03, 1.433261624818745481e-03, 1.436695727137779661e-03, 1.440127327016799087e-03, 1.443556419004369748e-03, 1.446982997653632102e-03, 1.450407057521845922e-03, 1.453828593170637283e-03, 1.457247599166221902e-03, 1.460664070078966040e-03, 1.464078000483693114e-03, 1.467489384959556626e-03, 1.470898218090253319e-03, 1.474304494463971786e-03, 1.477708208672859260e-03, 1.481109355313954025e-03, 1.484507928988651774e-03, 1.487903924302639907e-03, 1.491297335866141474e-03, 1.494688158293760571e-03, 1.498076386204801958e-03, 1.501462014222824156e-03, 1.504845036975865609e-03, 1.508225449096699256e-03, 1.511603245222370223e-03, 1.514978419994438474e-03, 1.518350968059211693e-03, 1.521720884067305967e-03, 1.525088162673865879e-03, 1.528452798538821895e-03, 1.531814786326424812e-03, 1.535174120705495556e-03, 1.538530796349652213e-03, 1.541884807936793082e-03, 1.545236150149702963e-03, 1.548584817675546831e-03, 1.551930805206086679e-03, 1.555274107437934136e-03, 1.558614719072089032e-03, 1.561952634814197001e-03, 1.565287849374754400e-03, 1.568620357468677659e-03, 1.571950153815564796e-03, 1.575277233139879725e-03, 1.578601590170538747e-03, 1.581923219641150589e-03, 1.585242116290226742e-03, 1.588558274860685324e-03, 1.591871690100521777e-03, 1.595182356761922849e-03, 1.598490269602249750e-03, 1.601795423383593851e-03, 1.605097812872334755e-03, 1.608397432840053855e-03, 1.611694278063010221e-03, 1.614988343322078376e-03, 1.618279623402985078e-03, 1.621568113096158404e-03, 1.624853807197040000e-03, 1.628136700505644239e-03, 1.631416787826801308e-03, 1.634694063970363849e-03, 1.637968523750792365e-03, 1.641240161987379213e-03, 1.644508973504394973e-03, 1.647774953131037274e-03, 1.651038095700914929e-03, 1.654298396053018299e-03, 1.657555849030834796e-03, 1.660810449483027598e-03, 1.664062192262929325e-03, 1.667311072228766034e-03, 1.670557084243883602e-03, 1.673800223176329441e-03, 1.677040483899060446e-03, 1.680277861290190413e-03, 1.683512350232544861e-03, 1.686743945613891106e-03, 1.689972642327171792e-03, 1.693198435270066009e-03, 1.696421319345230204e-03, 1.699641289460505260e-03, 1.702858340528435981e-03, 1.706072467466835958e-03, 1.709283665198313993e-03, 1.712491928650483781e-03, 1.715697252756259467e-03, 1.718899632453083255e-03, 1.722099062683856091e-03, 1.725295538396447387e-03, 1.728489054543632351e-03, 1.731679606083247032e-03, 1.734867187978392147e-03, 1.738051795197041033e-03, 1.741233422712316773e-03, 1.744412065502345607e-03, 1.747587718550577861e-03, 1.750760376845354261e-03, 1.753930035380112584e-03, 1.757096689153570023e-03, 1.760260333169628424e-03, 1.763420962436905914e-03, 1.766578571969585829e-03, 1.769733156786934894e-03, 1.772884711913237741e-03, 1.776033232378012444e-03, 1.779178713215882369e-03, 1.782321149466864138e-03, 1.785460536175956280e-03, 1.788596868393350870e-03, 1.791730141174661430e-03, 1.794860349580499432e-03, 1.797987488676695703e-03, 1.801111553534527664e-03, 1.804232539230299316e-03, 1.807350440845544850e-03, 1.810465253467282570e-03, 1.813576972187493606e-03, 1.816685592103712372e-03, 1.819791108318535855e-03, 1.822893515939854334e-03, 1.825992810081043718e-03, 1.829088985860581953e-03, 1.832182038402239846e-03, 1.835271962835324571e-03, 1.838358754294247945e-03, 1.841442407918751937e-03, 1.844522918854124864e-03, 1.847600282250786135e-03, 1.850674493264512421e-03, 1.853745547056652107e-03, 1.856813438793700286e-03, 1.859878163647535549e-03, 1.862939716795627932e-03, 1.865998093420555802e-03, 1.869053288710636638e-03, 1.872105297859123427e-03, 1.875154116065078308e-03, 1.878199738532930008e-03, 1.881242160472380159e-03, 1.884281377098588053e-03, 1.887317383632342808e-03, 1.890350175299683683e-03, 1.893379747332176117e-03, 1.896406094966782705e-03, 1.899429213446141842e-03, 1.902449098018175674e-03, 1.905465743936276364e-03, 1.908479146459484983e-03, 1.911489300852399357e-03, 1.914496202384730408e-03, 1.917499846332106853e-03, 1.920500227975680549e-03, 1.923497342601736184e-03, 1.926491185502559288e-03, 1.929481751975662763e-03, 1.932469037324364113e-03, 1.935453036857350895e-03, 1.938433745888876528e-03, 1.941411159738970840e-03, 1.944385273733053665e-03, 1.947356083202126959e-03, 1.950323583482987955e-03, 1.953287769917851427e-03, 1.956248637854538126e-03, 1.959206182646684030e-03, 1.962160399653358270e-03, 1.965111284239272164e-03, 1.968058831774957898e-03, 1.971003037636346114e-03, 1.973943897205291970e-03, 1.976881405869098957e-03, 1.979815559020756122e-03, 1.982746352059125850e-03, 1.985673780388550955e-03, 1.988597839419071946e-03, 1.991518524566627396e-03, 1.994435831252658851e-03, 1.997349754904331146e-03, 2.000260290954716282e-03, 2.003167434842425664e-03, 2.006071182011861641e-03, 2.008971527913123827e-03, 2.011868468002164356e-03, 2.014761997740776613e-03, 2.017652112596125553e-03, 2.020538808041523558e-03, 2.023422079556079587e-03, 2.026301922624278509e-03, 2.029178332736803359e-03, 2.032051305390059157e-03, 2.034920836086135179e-03, 2.037786920332989703e-03, 2.040649553644345061e-03, 2.043508731539943508e-03, 2.046364449545157345e-03, 2.049216703191219634e-03, 2.052065488015382931e-03, 2.054910799560572768e-03, 2.057752633375574576e-03, 2.060590985015233172e-03, 2.063425850040087606e-03, 2.066257224016540724e-03, 2.069085102517091625e-03, 2.071909481119878129e-03, 2.074730355409188948e-03, 2.077547720975038686e-03, 2.080361573413358652e-03, 2.083171908326192454e-03, 2.085978721321323469e-03, 2.088782008012481269e-03, 2.091581764019515097e-03, 2.094377984968044323e-03, 2.097170666489649692e-03, 2.099959804222060241e-03, 2.102745393808792482e-03, 2.105527430899326903e-03, 2.108305911149347366e-03, 2.111080830220249741e-03, 2.113852183779754267e-03, 2.116619967501148347e-03, 2.119384177064104029e-03, 2.122144808154322829e-03, 2.124901856463138911e-03, 2.127655317688307082e-03, 2.130405187533552201e-03, 2.133151461708529713e-03, 2.135894135928937537e-03, 2.138633205916723803e-03, 2.141368667399707378e-03, 2.144100516111858458e-03, 2.146828747793153285e-03, 2.149553358189835225e-03, 2.152274343054066518e-03, 2.154991698144106092e-03, 2.157705419224430557e-03, 2.160415502065693872e-03, 2.163121942444312749e-03, 2.165824736143251179e-03, 2.168523878951290982e-03, 2.171219366663596894e-03, 2.173911195081312375e-03, 2.176599360011715299e-03, 2.179283857268426560e-03, 2.181964682671057917e-03, 2.184641832045387203e-03, 2.187315301223544811e-03, 2.189985086043677153e-03, 2.192651182350097584e-03, 2.195313585993529260e-03, 2.197972292830689678e-03, 2.200627298724525290e-03, 2.203278599544361994e-03, 2.205926191165577706e-03, 2.208570069469786672e-03, 2.211210230345002099e-03, 2.213846669685245409e-03, 2.216479383391086171e-03, 2.219108367368936938e-03, 2.221733617531808716e-03, 2.224355129798946239e-03, 2.226972900095724323e-03, 2.229586924353818295e-03, 2.232197198511350587e-03, 2.234803718512564600e-03, 2.237406480308002082e-03, 2.240005479854690479e-03, 2.242600713115779510e-03, 2.245192176060815687e-03, 2.247779864665586189e-03, 2.250363774912340041e-03, 2.252943902789720891e-03, 2.255520244292357184e-03, 2.258092795421570795e-03, 2.260661552185002764e-03, 2.263226510596512680e-03, 2.265787666676344347e-03, 2.268345016451271939e-03, 2.270898555954297716e-03, 2.273448281224841119e-03, 2.275994188308680215e-03, 2.278536273258140350e-03, 2.281074532131798383e-03, 2.283608960994623193e-03, 2.286139555918129639e-03, 2.288666312980298760e-03, 2.291189228265205248e-03, 2.293708297863750363e-03, 2.296223517873056084e-03, 2.298734884396684119e-03, 2.301242393544814142e-03, 2.303746041433862163e-03, 2.306245824186949327e-03, 2.308741737933465207e-03, 2.311233778809295911e-03, 2.313721942956988888e-03, 2.316206226525379525e-03, 2.318686625669828371e-03, 2.321163136552339534e-03, 2.323635755341271845e-03, 2.326104478211483712e-03, 2.328569301344534780e-03, 2.331030220928317302e-03, 2.333487233157265171e-03, 2.335940334232531300e-03, 2.338389520361550036e-03, 2.340834787758613086e-03, 2.343276132644151345e-03, 2.345713551245515085e-03, 2.348147039796530302e-03, 2.350576594537509990e-03, 2.353002211715325698e-03, 2.355423887583607025e-03, 2.357841618402396408e-03, 2.360255400438338209e-03, 2.362665229964829635e-03, 2.365071103261724532e-03, 2.367473016615517702e-03, 2.369870966319291561e-03, 2.372264948672839734e-03, 2.374654959982644507e-03, 2.377040996561499090e-03, 2.379423054729146430e-03, 2.381801130811998183e-03, 2.384175221142765221e-03, 2.386545322061214402e-03, 2.388911429913488562e-03, 2.391273541052619991e-03, 2.393631651838148792e-03, 2.395985758636288987e-03, 2.398335857820115425e-03, 2.400681945769215543e-03, 2.403024018869874545e-03, 2.405362073515241068e-03, 2.407696106105015367e-03, 2.410026113045591993e-03, 2.412352090750258856e-03, 2.414674035638863289e-03, 2.416991944137962967e-03, 2.419305812681032779e-03, 2.421615637708060629e-03, 2.423921415665993701e-03, 2.426223143008370692e-03, 2.428520816195483580e-03, 2.430814431694541984e-03, 2.433103985979368725e-03, 2.435389475530551611e-03, 2.437670896835619078e-03, 2.439948246388715363e-03, 2.442221520690786123e-03, 2.444490716249705497e-03, 2.446755829580008097e-03, 2.449016857203026483e-03, 2.451273795647056827e-03, 2.453526641447051869e-03, 2.455775391144832554e-03, 2.458020041289009101e-03, 2.460260588435104600e-03, 2.462497029145532031e-03, 2.464729359989249920e-03, 2.466957577542362983e-03, 2.469181678387771285e-03, 2.471401659115126867e-03, 2.473617516321005051e-03, 2.475829246608792986e-03, 2.478036846588892606e-03, 2.480240312878440479e-03, 2.482439642101456987e-03, 2.484634830888986408e-03, 2.486825875878829768e-03, 2.489012773715682317e-03, 2.491195521051234145e-03, 2.493374114544141991e-03, 2.495548550859670589e-03, 2.497718826670350997e-03, 2.499884938655393823e-03, 2.502046883501122913e-03, 2.504204657900673935e-03, 2.506358258554084156e-03, 2.508507682168505375e-03, 2.510652925457888211e-03, 2.512793985143128243e-03, 2.514930857952236455e-03, 2.517063540620025682e-03, 2.519192029888288852e-03, 2.521316322505934293e-03, 2.523436415228695606e-03, 2.525552304819306433e-03, 2.527663988047609746e-03, 2.529771461690318458e-03, 2.531874722531120801e-03, 2.533973767360881563e-03, 2.536068592977249164e-03, 2.538159196185137481e-03, 2.540245573796149053e-03, 2.542327722629180494e-03, 2.544405639510123694e-03, 2.546479321271786014e-03, 2.548548764754031241e-03, 2.550613966803891904e-03, 2.552674924275316441e-03, 2.554731634029291931e-03, 2.556784092934008892e-03, 2.558832297864575053e-03, 2.560876245703211374e-03, 2.562915933339158809e-03, 2.564951357668828359e-03, 2.566982515595758133e-03, 2.569009404030277686e-03, 2.571032019890103458e-03, 2.573050360099980987e-03, 2.575064421591677106e-03, 2.577074201304089228e-03, 2.579079696183188969e-03, 2.581080903182186078e-03, 2.583077819261280373e-03, 2.585070441387785339e-03, 2.587058766536277747e-03, 2.589042791688326173e-03, 2.591022513832639314e-03, 2.592997929965192190e-03, 2.594969037088974608e-03, 2.596935832214116065e-03, 2.598898312358040134e-03, 2.600856474545193420e-03, 2.602810315807179559e-03, 2.604759833182904074e-03, 2.606705023718261689e-03, 2.608645884466500187e-03, 2.610582412487921170e-03, 2.612514604850001056e-03, 2.614442458627538532e-03, 2.616365970902391307e-03, 2.618285138763622698e-03, 2.620199959307616556e-03, 2.622110429637834837e-03, 2.624016546864954211e-03, 2.625918308106987061e-03, 2.627815710489043825e-03, 2.629708751143454860e-03, 2.631597427209903146e-03, 2.633481735835138497e-03, 2.635361674173344448e-03, 2.637237239385673351e-03, 2.639108428640742944e-03, 2.640975239114406493e-03, 2.642837667989666062e-03, 2.644695712456797410e-03, 2.646549369713442363e-03, 2.648398636964402822e-03, 2.650243511421784305e-03, 2.652083990304909648e-03, 2.653920070840539748e-03, 2.655751750262550902e-03, 2.657579025812139509e-03, 2.659401894737897960e-03, 2.661220354295589126e-03, 2.663034401748282098e-03, 2.664844034366433290e-03, 2.666649249427826152e-03, 2.668450044217336985e-03, 2.670246416027430205e-03, 2.672038362157674787e-03, 2.673825879915145854e-03, 2.675608966614105924e-03, 2.677387619576156261e-03, 2.679161836130355707e-03, 2.680931613612974346e-03, 2.682696949367631856e-03, 2.684457840745415463e-03, 2.686214285104629278e-03, 2.687966279810951285e-03, 2.689713822237526589e-03, 2.691456909764734957e-03, 2.693195539780349982e-03, 2.694929709679608470e-03, 2.696659416864968448e-03, 2.698384658746433122e-03, 2.700105432741259880e-03, 2.701821736274094294e-03, 2.703533566777127119e-03, 2.705240921689671882e-03, 2.706943798458680533e-03, 2.708642194538439865e-03, 2.710336107390595370e-03, 2.712025534484179424e-03, 2.713710473295766548e-03, 2.715390921309221439e-03, 2.717066876015866370e-03, 2.718738334914413100e-03, 2.720405295511117271e-03, 2.722067755319548116e-03, 2.723725711860707291e-03, 2.725379162663113444e-03, 2.727028105262757109e-03, 2.728672537202856112e-03, 2.730312456034304867e-03, 2.731947859315408088e-03, 2.733578744611835695e-03, 2.735205109496794979e-03, 2.736826951550873615e-03, 2.738444268362265170e-03, 2.740057057526521910e-03, 2.741665316646659748e-03, 2.743269043333288783e-03, 2.744868235204384749e-03, 2.746462889885411748e-03, 2.748053005009427636e-03, 2.749638578216880621e-03, 2.751219607155710751e-03, 2.752796089481452258e-03, 2.754368022857016721e-03, 2.755935404952948066e-03, 2.757498233447207899e-03, 2.759056506025244892e-03, 2.760610220380158280e-03, 2.762159374212448931e-03, 2.763703965230125160e-03, 2.765243991148850188e-03, 2.766779449691686259e-03, 2.768310338589256847e-03, 2.769836655579803898e-03, 2.771358398409004813e-03, 2.772875564830092152e-03, 2.774388152603926051e-03, 2.775896159498838969e-03, 2.777399583290696833e-03, 2.778898421763025244e-03, 2.780392672706769215e-03, 2.781882333920624069e-03, 2.783367403210591350e-03, 2.784847878390453273e-03, 2.786323757281523785e-03, 2.787795037712626021e-03, 2.789261717520166457e-03, 2.790723794548222083e-03, 2.792181266648367799e-03, 2.793634131679784832e-03, 2.795082387509217371e-03, 2.796526032011101368e-03, 2.797965063067371552e-03, 2.799399478567557702e-03, 2.800829276408858814e-03, 2.802254454496106231e-03, 2.803675010741565020e-03, 2.805090943065277880e-03, 2.806502249394930270e-03, 2.807908927665607977e-03, 2.809310975820248583e-03, 2.810708391809260253e-03, 2.812101173590795828e-03, 2.813489319130553327e-03, 2.814872826401853146e-03, 2.816251693385745606e-03, 2.817625918070828812e-03, 2.818995498453340156e-03, 2.820360432537255633e-03, 2.821720718334095549e-03, 2.823076353863049424e-03, 2.824427337151027596e-03, 2.825773666232519847e-03, 2.827115339149672158e-03, 2.828452353952374751e-03, 2.829784708698067797e-03, 2.831112401451973438e-03, 2.832435430286897159e-03, 2.833753793283311923e-03, 2.835067488529456614e-03, 2.836376514121155198e-03, 2.837680868161921235e-03, 2.838980548763028137e-03, 2.840275554043351740e-03, 2.841565882129462681e-03, 2.842851531155687114e-03, 2.844132499263987441e-03, 2.845408784604024337e-03, 2.846680385333153710e-03, 2.847947299616469200e-03, 2.849209525626803918e-03, 2.850467061544529213e-03, 2.851719905557889480e-03, 2.852968055862854704e-03, 2.854211510662917495e-03, 2.855450268169473435e-03, 2.856684326601618973e-03, 2.857913684186073802e-03, 2.859138339157358665e-03, 2.860358289757656582e-03, 2.861573534236995422e-03, 2.862784070853022396e-03, 2.863989897871129387e-03, 2.865191013564538387e-03, 2.866387416214115011e-03, 2.867579104108470417e-03, 2.868766075544036762e-03, 2.869948328824921922e-03, 2.871125862262962833e-03, 2.872298674177858630e-03, 2.873466762896917381e-03, 2.874630126755343615e-03, 2.875788764096002832e-03, 2.876942673269513012e-03, 2.878091852634351300e-03, 2.879236300556670559e-03, 2.880376015410400416e-03, 2.881510995577294971e-03, 2.882641239446837381e-03, 2.883766745416245503e-03, 2.884887511890624982e-03, 2.886003537282766720e-03, 2.887114820013234918e-03, 2.888221358510461613e-03, 2.889323151210568003e-03, 2.890420196557583459e-03, 2.891512493003136307e-03, 2.892600039006818988e-03, 2.893682833036007214e-03, 2.894760873565730298e-03, 2.895834159078934829e-03, 2.896902688066388398e-03, 2.897966459026565540e-03, 2.899025470465782604e-03, 2.900079720898211203e-03, 2.901129208845755047e-03, 2.902173932838186116e-03, 2.903213891413015859e-03, 2.904249083115669535e-03, 2.905279506499320111e-03, 2.906305160124956349e-03, 2.907326042561406230e-03, 2.908342152385382483e-03, 2.909353488181253607e-03, 2.910360048541399923e-03, 2.911361832065883972e-03, 2.912358837362713764e-03, 2.913351063047647620e-03, 2.914338507744285676e-03, 2.915321170084118896e-03, 2.916299048706424979e-03, 2.917272142258296990e-03, 2.918240449394753945e-03, 2.919203968778591625e-03, 2.920162699080437654e-03, 2.921116638978825224e-03, 2.922065787160097253e-03, 2.923010142318414190e-03, 2.923949703155878047e-03, 2.924884468382358063e-03, 2.925814436715606492e-03, 2.926739606881252533e-03, 2.927659977612742919e-03, 2.928575547651459873e-03, 2.929486315746508609e-03, 2.930392280654989245e-03, 2.931293441141826373e-03, 2.932189795979798109e-03, 2.933081343949524820e-03, 2.933968083839566705e-03, 2.934850014446295854e-03, 2.935727134573948294e-03, 2.936599443034712889e-03, 2.937466938648568716e-03, 2.938329620243419933e-03, 2.939187486654999942e-03, 2.940040536726981103e-03, 2.940888769310940048e-03, 2.941732183266187670e-03, 2.942570777460081811e-03, 2.943404550767810424e-03, 2.944233502072432767e-03, 2.945057630264878105e-03, 2.945876934244047191e-03, 2.946691412916647036e-03, 2.947501065197316236e-03, 2.948305890008559062e-03, 2.949105886280843896e-03, 2.949901052952464894e-03, 2.950691388969623082e-03, 2.951476893286464516e-03, 2.952257564865028681e-03, 2.953033402675169991e-03, 2.953804405694777663e-03, 2.954570572909546305e-03, 2.955331903313105149e-03, 2.956088395907034098e-03, 2.956840049700733188e-03, 2.957586863711625554e-03, 2.958328836964944919e-03, 2.959065968493870911e-03, 2.959798257339526020e-03, 2.960525702550916190e-03, 2.961248303184945557e-03, 2.961966058306495821e-03, 2.962678966988314781e-03, 2.963387028311067085e-03, 2.964090241363386263e-03, 2.964788605241783660e-03, 2.965482119050683561e-03, 2.966170781902492583e-03, 2.966854592917472170e-03, 2.967533551223897753e-03, 2.968207655957832373e-03, 2.968876906263402497e-03, 2.969541301292615443e-03, 2.970200840205387133e-03, 2.970855522169565943e-03, 2.971505346360985185e-03, 2.972150311963344706e-03, 2.972790418168298927e-03, 2.973425664175459882e-03, 2.974056049192346039e-03, 2.974681572434429572e-03, 2.975302233125099068e-03, 2.975918030495696386e-03, 2.976528963785551353e-03, 2.977135032241799185e-03, 2.977736235119646767e-03, 2.978332571682215223e-03, 2.978924041200490917e-03, 2.979510642953505425e-03, 2.980092376228155125e-03, 2.980669240319340843e-03, 2.981241234529866373e-03, 2.981808358170489649e-03, 2.982370610559934021e-03, 2.982927991024857898e-03, 2.983480498899853013e-03, 2.984028133527492563e-03, 2.984570894258264419e-03, 2.985108780450624905e-03, 2.985641791470994028e-03, 2.986169926693717312e-03, 2.986693185501088782e-03, 2.987211567283403445e-03, 2.987725071438832383e-03, 2.988233697373581920e-03, 2.988737444501754839e-03, 2.989236312245420642e-03, 2.989730300034637231e-03, 2.990219407307369813e-03, 2.990703633509569394e-03, 2.991182978095142421e-03, 2.991657440525941677e-03, 2.992127020271779722e-03, 2.992591716810447545e-03, 2.993051529627677697e-03, 2.993506458217140825e-03, 2.993956502080522865e-03, 2.994401660727420093e-03, 2.994841933675399838e-03, 2.995277320449999617e-03, 2.995707820584727135e-03, 2.996133433621057246e-03, 2.996554159108363435e-03, 2.996969996604054859e-03, 2.997380945673489179e-03, 2.997787005889961717e-03, 2.998188176834744919e-03, 2.998584458097067109e-03, 2.998975849274138072e-03, 2.999362349971129108e-03, 2.999743959801144839e-03, 3.000120678385298240e-03, 3.000492505352646451e-03, 3.000859440340202054e-03, 3.001221482992949986e-03, 3.001578632963868790e-03, 3.001930889913846916e-03, 3.002278253511795041e-03, 3.002620723434541988e-03, 3.002958299366924062e-03, 3.003290981001715664e-03, 3.003618768039663118e-03, 3.003941660189495509e-03, 3.004259657167884356e-03, 3.004572758699477868e-03, 3.004880964516900080e-03, 3.005184274360734806e-03, 3.005482687979513495e-03, 3.005776205129770309e-03, 3.006064825575992250e-03, 3.006348549090604848e-03, 3.006627375454047190e-03, 3.006901304454690817e-03, 3.007170335888880493e-03, 3.007434469560946351e-03, 3.007693705283158783e-03, 3.007948042875782657e-03, 3.008197482167003587e-03, 3.008442022993022043e-03, 3.008681665197993071e-03, 3.008916408634023688e-03, 3.009146253161174185e-03, 3.009371198647512336e-03, 3.009591244969044444e-03, 3.009806392009727050e-03, 3.010016639661522442e-03, 3.010221987824324499e-03, 3.010422436405999456e-03, 3.010617985322389806e-03, 3.010808634497283073e-03, 3.010994383862455187e-03, 3.011175233357613230e-03, 3.011351182930456158e-03, 3.011522232536642703e-03, 3.011688382139771428e-03, 3.011849631711421924e-03, 3.012005981231136165e-03, 3.012157430686410696e-03, 3.012303980072708783e-03, 3.012445629393442192e-03, 3.012582378660006756e-03, 3.012714227891738136e-03, 3.012841177115935243e-03, 3.012963226367858932e-03, 3.013080375690729840e-03, 3.013192625135719706e-03, 3.013299974761979999e-03, 3.013402424636585104e-03, 3.013499974834587397e-03, 3.013592625438994699e-03, 3.013680376540774607e-03, 3.013763228238834115e-03, 3.013841180640047801e-03, 3.013914233859233110e-03, 3.013982388019178105e-03, 3.014045643250615452e-03, 3.014103999692217210e-03, 3.014157457490625625e-03, 3.014206016800425377e-03, 3.014249677784150948e-03, 3.014288440612288358e-03, 3.014322305463281674e-03, 3.014351272523503079e-03, 3.014375341987284972e-03, 3.014394514056914325e-03, 3.014408788942608830e-03, 3.014418166862539022e-03, 3.014422648042820035e-03, 3.014422232717508133e-03, 3.014416921128608515e-03, 3.014406713526073586e-03, 3.014391610167776060e-03, 3.014371611319546264e-03, 3.014346717255151752e-03, 3.014316928256302510e-03, 3.014282244612640979e-03, 3.014242666621750732e-03, 3.014198194589145629e-03, 3.014148828828282830e-03, 3.014094569660552385e-03, 3.014035417415272464e-03, 3.013971372429714510e-03, 3.013902435049038188e-03, 3.013828605626393299e-03, 3.013749884522811794e-03, 3.013666272107278030e-03, 3.013577768756696678e-03, 3.013484374855898359e-03, 3.013386090797658297e-03, 3.013282916982630826e-03, 3.013174853819453481e-03, 3.013061901724652450e-03, 3.012944061122671199e-03, 3.012821332445892591e-03, 3.012693716134608093e-03, 3.012561212637043361e-03, 3.012423822409313577e-03, 3.012281545915466378e-03, 3.012134383627476653e-03, 3.011982336025210115e-03, 3.011825403596465802e-03, 3.011663586836933575e-03, 3.011496886250242689e-03, 3.011325302347890240e-03, 3.011148835649331799e-03, 3.010967486681880370e-03, 3.010781255980796590e-03, 3.010590144089218476e-03, 3.010394151558190481e-03, 3.010193278946677372e-03, 3.009987526821518693e-03, 3.009776895757474736e-03, 3.009561386337194448e-03, 3.009340999151215862e-03, 3.009115734797979547e-03, 3.008885593883835977e-03, 3.008650577023006065e-03, 3.008410684837585936e-03, 3.008165917957612845e-03, 3.007916277020972803e-03, 3.007661762673445680e-03, 3.007402375568708677e-03, 3.007138116368299457e-03, 3.006868985741671663e-03, 3.006594984366125958e-03, 3.006316112926872910e-03, 3.006032372116979219e-03, 3.005743762637389828e-03, 3.005450285196933566e-03, 3.005151940512320978e-03, 3.004848729308107896e-03, 3.004540652316737073e-03, 3.004227710278532977e-03, 3.003909903941656689e-03, 3.003587234062156646e-03, 3.003259701403939146e-03, 3.002927306738775726e-03, 3.002590050846296651e-03, 3.002247934513978343e-03, 3.001900958537188045e-03, 3.001549123719116172e-03, 3.001192430870814470e-03, 3.000830880811195152e-03, 3.000464474367023522e-03, 3.000093212372892826e-03, 2.999717095671271087e-03, 2.999336125112460338e-03, 2.998950301554589252e-03, 2.998559625863659109e-03, 2.998164098913488288e-03, 2.997763721585735251e-03, 2.997358494769906782e-03, 2.996948419363327631e-03, 2.996533496271190384e-03, 2.996113726406470466e-03, 2.995689110690000299e-03, 2.995259650050433736e-03, 2.994825345424259946e-03, 2.994386197755760908e-03, 2.993942207997075597e-03, 2.993493377108146208e-03, 2.993039706056745911e-03, 2.992581195818422909e-03, 2.992117847376586735e-03, 2.991649661722446240e-03, 2.991176639855004388e-03, 2.990698782781050884e-03, 2.990216091515267554e-03, 2.989728567080047507e-03, 2.989236210505620463e-03, 2.988739022830018931e-03, 2.988237005099069962e-03, 2.987730158366406000e-03, 2.987218483693418469e-03, 2.986701982149333676e-03, 2.986180654811152087e-03, 2.985654502763635323e-03, 2.985123527099351696e-03, 2.984587728918675336e-03, 2.984047109329701197e-03, 2.983501669448356940e-03, 2.982951410398321408e-03, 2.982396333311048038e-03, 2.981836439325772237e-03, 2.981271729589494903e-03, 2.980702205256969845e-03, 2.980127867490741517e-03, 2.979548717461079528e-03, 2.978964756346058878e-03, 2.978375985331482324e-03, 2.977782405610909875e-03, 2.977184018385661823e-03, 2.976580824864829156e-03, 2.975972826265201130e-03, 2.975360023811355042e-03, 2.974742418735618933e-03, 2.974120012278006972e-03, 2.973492805686332209e-03, 2.972860800216115072e-03, 2.972223997130639742e-03, 2.971582397700871757e-03, 2.970936003205514823e-03, 2.970284814931071962e-03, 2.969628834171677244e-03, 2.968968062229219822e-03, 2.968302500413352602e-03, 2.967632150041392500e-03, 2.966957012438359905e-03, 2.966277088937038526e-03, 2.965592380877890826e-03, 2.964902889609102692e-03, 2.964208616486526185e-03, 2.963509562873764113e-03, 2.962805730142101072e-03, 2.962097119670484800e-03, 2.961383732845613778e-03, 2.960665571061841389e-03, 2.959942635721197167e-03, 2.959214928233443610e-03, 2.958482450016000284e-03, 2.957745202493939057e-03, 2.957003187100076032e-03, 2.956256405274825406e-03, 2.955504858466328696e-03, 2.954748548130396203e-03, 2.953987475730457998e-03, 2.953221642737655864e-03, 2.952451050630799934e-03, 2.951675700896296689e-03, 2.950895595028269532e-03, 2.950110734528487225e-03, 2.949321120906317917e-03, 2.948526755678839741e-03, 2.947727640370751030e-03, 2.946923776514379003e-03, 2.946115165649721822e-03, 2.945301809324347552e-03, 2.944483709093566326e-03, 2.943660866520231723e-03, 2.942833283174796713e-03, 2.942000960635474550e-03, 2.941163900487978999e-03, 2.940322104325654006e-03, 2.939475573749509695e-03, 2.938624310368152109e-03, 2.937768315797755891e-03, 2.936907591662157955e-03, 2.936042139592765117e-03, 2.935171961228607435e-03, 2.934297058216283130e-03, 2.933417432210006295e-03, 2.932533084871596484e-03, 2.931644017870422766e-03, 2.930750232883426714e-03, 2.929851731595227351e-03, 2.928948515697917324e-03, 2.928040586891234639e-03, 2.927127946882426921e-03, 2.926210597386370241e-03, 2.925288540125499295e-03, 2.924361776829756225e-03, 2.923430309236705119e-03, 2.922494139091466516e-03, 2.921553268146651061e-03, 2.920607698162484400e-03, 2.919657430906733887e-03, 2.918702468154655248e-03, 2.917742811689105330e-03, 2.916778463300480524e-03, 2.915809424786633929e-03, 2.914835697953056630e-03, 2.913857284612669969e-03, 2.912874186585981667e-03, 2.911886405701022071e-03, 2.910893943793259591e-03, 2.909896802705821007e-03, 2.908894984289208275e-03, 2.907888490401481108e-03, 2.906877322908201031e-03, 2.905861483682463907e-03, 2.904840974604795852e-03, 2.903815797563264692e-03, 2.902785954453452211e-03, 2.901751447178333148e-03, 2.900712277648456044e-03, 2.899668447781815310e-03, 2.898619959503911936e-03, 2.897566814747655484e-03, 2.896509015453431739e-03, 2.895446563569212869e-03, 2.894379461050289402e-03, 2.893307709859451946e-03, 2.892231311966964296e-03, 2.891150269350584254e-03, 2.890064583995414441e-03, 2.888974257894086611e-03, 2.887879293046635015e-03, 2.886779691460569699e-03, 2.885675455150761570e-03, 2.884566586139576845e-03, 2.883453086456814161e-03, 2.882334958139650370e-03, 2.881212203232643571e-03, 2.880084823787928267e-03, 2.878952821864867988e-03, 2.877816199530335017e-03, 2.876674958858608036e-03, 2.875529101931305342e-03, 2.874378630837514954e-03, 2.873223547673633277e-03, 2.872063854543518199e-03, 2.870899553558427068e-03, 2.869730646836891365e-03, 2.868557136504928766e-03, 2.867379024695912611e-03, 2.866196313550529399e-03, 2.865009005216868562e-03, 2.863817101850432440e-03, 2.862620605613971914e-03, 2.861419518677675491e-03, 2.860213843219088208e-03, 2.859003581423025329e-03, 2.857788735481744079e-03, 2.856569307594716400e-03, 2.855345299968921249e-03, 2.854116714818534951e-03, 2.852883554365047859e-03, 2.851645820837372773e-03, 2.850403516471709635e-03, 2.849156643511504324e-03, 2.847905204207595246e-03, 2.846649200818127893e-03, 2.845388635608465076e-03, 2.844123510851357794e-03, 2.842853828826827269e-03, 2.841579591822197045e-03, 2.840300802132045277e-03, 2.839017462058176979e-03, 2.837729573909881196e-03, 2.836437140003522043e-03, 2.835140162662739063e-03, 2.833838644218623741e-03, 2.832532587009319210e-03, 2.831221993380365898e-03, 2.829906865684458234e-03, 2.828587206281615082e-03, 2.827263017539100379e-03, 2.825934301831347674e-03, 2.824601061540084595e-03, 2.823263299054314633e-03, 2.821921016770143238e-03, 2.820574217091003765e-03, 2.819222902427552524e-03, 2.817867075197582477e-03, 2.816506737826165920e-03, 2.815141892745587262e-03, 2.813772542395263660e-03, 2.812398689221913290e-03, 2.811020335679324193e-03, 2.809637484228578487e-03, 2.808250137337950023e-03, 2.806858297482769504e-03, 2.805461967145684698e-03, 2.804061148816472220e-03, 2.802655844992012375e-03, 2.801246058176429243e-03, 2.799831790881005238e-03, 2.798413045624095676e-03, 2.796989824931289236e-03, 2.795562131335328597e-03, 2.794129967376010257e-03, 2.792693335600360174e-03, 2.791252238562417359e-03, 2.789806678823558272e-03, 2.788356658952080482e-03, 2.786902181523427755e-03, 2.785443249120315816e-03, 2.783979864332401452e-03, 2.782512029756477236e-03, 2.781039747996499716e-03, 2.779563021663474052e-03, 2.778081853375558539e-03, 2.776596245757871617e-03, 2.775106201442737331e-03, 2.773611723069539185e-03, 2.772112813284642076e-03, 2.770609474741586586e-03, 2.769101710100960612e-03, 2.767589522030355995e-03, 2.766072913204383268e-03, 2.764551886304908012e-03, 2.763026444020608933e-03, 2.761496589047357335e-03, 2.759962324087926987e-03, 2.758423651852248693e-03, 2.756880575057253733e-03, 2.755333096426805777e-03, 2.753781218691886065e-03, 2.752224944590477614e-03, 2.750664276867488024e-03, 2.749099218274913409e-03, 2.747529771571750792e-03, 2.745955939523890121e-03, 2.744377724904305520e-03, 2.742795130492967255e-03, 2.741208159076707722e-03, 2.739616813449453469e-03, 2.738021096412068204e-03, 2.736421010772305956e-03, 2.734816559345003631e-03, 2.733207744951785673e-03, 2.731594570421459148e-03, 2.729977038589566189e-03, 2.728355152298648102e-03, 2.726728914398209372e-03, 2.725098327744710728e-03, 2.723463395201421253e-03, 2.721824119638650407e-03, 2.720180503933593199e-03, 2.718532550970275546e-03, 2.716880263639711267e-03, 2.715223644839799728e-03, 2.713562697475353173e-03, 2.711897424458004774e-03, 2.710227828706243767e-03, 2.708553913145634023e-03, 2.706875680708419833e-03, 2.705193134333742748e-03, 2.703506276967671505e-03, 2.701815111563104447e-03, 2.700119641079821997e-03, 2.698419868484365665e-03, 2.696715796750194169e-03, 2.695007428857633999e-03, 2.693294767793708543e-03, 2.691577816552408707e-03, 2.689856578134528983e-03, 2.688131055547600227e-03, 2.686401251805946473e-03, 2.684667169930900904e-03, 2.682928812950355693e-03, 2.681186183899140606e-03, 2.679439285818865143e-03, 2.677688121757837436e-03, 2.675932694771269386e-03, 2.674173007921013413e-03, 2.672409064275800550e-03, 2.670640866911124216e-03, 2.668868418909116184e-03, 2.667091723358792042e-03, 2.665310783355902876e-03, 2.663525602002834655e-03, 2.661736182408822038e-03, 2.659942527689827807e-03, 2.658144640968439221e-03, 2.656342525374057965e-03, 2.654536184042825559e-03, 2.652725620117470269e-03, 2.650910836747566012e-03, 2.649091837089211868e-03, 2.647268624305461858e-03, 2.645441201565833581e-03, 2.643609572046547174e-03, 2.641773738930606845e-03, 2.639933705407664696e-03, 2.638089474673939623e-03, 2.636241049932409007e-03, 2.634388434392689014e-03, 2.632531631271071895e-03, 2.630670643790378530e-03, 2.628805475180178743e-03, 2.626936128676703695e-03, 2.625062607522657236e-03, 2.623184914967504732e-03, 2.621303054267323449e-03, 2.619417028684730558e-03, 2.617526841488885311e-03, 2.615632495955816893e-03, 2.613733995367844166e-03, 2.611831343014095648e-03, 2.609924542190093181e-03, 2.608013596198084129e-03, 2.606098508346869208e-03, 2.604179281951701005e-03, 2.602255920334518163e-03, 2.600328426823810511e-03, 2.598396804754477245e-03, 2.596461057468109259e-03, 2.594521188312817403e-03, 2.592577200643126235e-03, 2.590629097820206037e-03, 2.588676883211757894e-03, 2.586720560191847155e-03, 2.584760132141245177e-03, 2.582795602447030339e-03, 2.580826974502928479e-03, 2.578854251709133353e-03, 2.576877437472206017e-03, 2.574896535205317694e-03, 2.572911548328108821e-03, 2.570922480266561120e-03, 2.568929334453243923e-03, 2.566932114327176700e-03, 2.564930823333704587e-03, 2.562925464924746891e-03, 2.560916042558614939e-03, 2.558902559700097085e-03, 2.556885019820273521e-03, 2.554863426396779529e-03, 2.552837782913656289e-03, 2.550808092861275422e-03, 2.548774359736355900e-03, 2.546736587042292780e-03, 2.544694778288583877e-03, 2.542648936991173236e-03, 2.540599066672460243e-03, 2.538545170861176894e-03, 2.536487253092463683e-03, 2.534425316907686597e-03, 2.532359365854704690e-03, 2.530289403487710493e-03, 2.528215433367120724e-03, 2.526137459059816983e-03, 2.524055484138996563e-03, 2.521969512184063598e-03, 2.519879546780862817e-03, 2.517785591521547704e-03, 2.515687650004456901e-03, 2.513585725834390893e-03, 2.511479822622263765e-03, 2.509369943985425427e-03, 2.507256093547484670e-03, 2.505138274938214192e-03, 2.503016491793757028e-03, 2.500890747756549792e-03, 2.498761046475138359e-03, 2.496627391604430701e-03, 2.494489786805610156e-03, 2.492348235745938962e-03, 2.490202742099060541e-03, 2.488053309544834262e-03, 2.485899941769190158e-03, 2.483742642464422962e-03, 2.481581415329029480e-03, 2.479416264067566770e-03, 2.477247192390948788e-03, 2.475074204016074718e-03, 2.472897302666335079e-03, 2.470716492071009344e-03, 2.468531775965595101e-03, 2.466343158091844484e-03, 2.464150642197673099e-03, 2.461954232036972241e-03, 2.459753931369953236e-03, 2.457549743962895907e-03, 2.455341673588255259e-03, 2.453129724024471527e-03, 2.450913899056237754e-03, 2.448694202474370127e-03, 2.446470638075673529e-03, 2.444243209663001827e-03, 2.442011921045612616e-03, 2.439776776038527981e-03, 2.437537778462900515e-03, 2.435294932146064937e-03, 2.433048240921362008e-03, 2.430797708628230913e-03, 2.428543339112032313e-03, 2.426285136224299015e-03, 2.424023103822619749e-03, 2.421757245770442702e-03, 2.419487565937417269e-03, 2.417214068199192815e-03, 2.414936756437285545e-03, 2.412655634539357784e-03, 2.410370706399082245e-03, 2.408081975915962909e-03, 2.405789446995656392e-03, 2.403493123549769843e-03, 2.401193009495749923e-03, 2.398889108757211973e-03, 2.396581425263518902e-03, 2.394269962950135514e-03, 2.391954725758478877e-03, 2.389635717635737924e-03, 2.387312942535205641e-03, 2.384986404416094326e-03, 2.382656107243365153e-03, 2.380322054988058631e-03, 2.377984251627114631e-03, 2.375642701143224067e-03, 2.373297407525116424e-03, 2.370948374767351159e-03, 2.368595606870420051e-03, 2.366239107840586303e-03, 2.363878881689922273e-03, 2.361514932436667262e-03, 2.359147264104587399e-03, 2.356775880723326055e-03, 2.354400786328633699e-03, 2.352021984961808442e-03, 2.349639480670012628e-03, 2.347253277506325311e-03, 2.344863379529585692e-03, 2.342469790804491570e-03, 2.340072515401373388e-03, 2.337671557396510391e-03, 2.335266920871959754e-03, 2.332858609915400457e-03, 2.330446628620437728e-03, 2.328030981086427840e-03, 2.325611671418333255e-03, 2.323188703727013197e-03, 2.320762082129075327e-03, 2.318331810746698373e-03, 2.315897893707994249e-03, 2.313460335146587821e-03, 2.311019139201972959e-03, 2.308574310019346869e-03, 2.306125851749443127e-03, 2.303673768548850868e-03, 2.301218064579849121e-03, 2.298758744010215120e-03, 2.296295811013574720e-03, 2.293829269769200735e-03, 2.291359124461873724e-03, 2.288885379282179500e-03, 2.286408038426347364e-03, 2.283927106096065793e-03, 2.281442586498893133e-03, 2.278954483847702925e-03, 2.276462802361394269e-03, 2.273967546264128985e-03, 2.271468719785660773e-03, 2.268966327161688664e-03, 2.266460372633139712e-03, 2.263950860446585327e-03, 2.261437794854283777e-03, 2.258921180114041409e-03, 2.256401020489060428e-03, 2.253877320248261987e-03, 2.251350083666054606e-03, 2.248819315022430442e-03, 2.246285018602737615e-03, 2.243747198698024976e-03, 2.241205859604837418e-03, 2.238661005625122193e-03, 2.236112641066277922e-03, 2.233560770241508047e-03, 2.231005397469126936e-03, 2.228446527073183955e-03, 2.225884163383001595e-03, 2.223318310733505502e-03, 2.220748973465091775e-03, 2.218176155923427470e-03, 2.215599862459788870e-03, 2.213020097430888882e-03, 2.210436865198686218e-03, 2.207850170130741443e-03, 2.205260016600004043e-03, 2.202666408984681017e-03, 2.200069351668522671e-03, 2.197468849040685145e-03, 2.194864905495517472e-03, 2.192257525432990059e-03, 2.189646713258189010e-03, 2.187032473381745040e-03, 2.184414810219636148e-03, 2.181793728192952565e-03, 2.179169231728519517e-03, 2.176541325258153897e-03, 2.173910013219045034e-03, 2.171275300053816283e-03, 2.168637190210390142e-03, 2.165995688141817820e-03, 2.163350798306615339e-03, 2.160702525168585290e-03, 2.158050873196631220e-03, 2.155395846865088092e-03, 2.152737450653519329e-03, 2.150075689046768417e-03, 2.147410566534830537e-03, 2.144742087612872515e-03, 2.142070256781653057e-03, 2.139395078546782892e-03, 2.136716557419162787e-03, 2.134034697915024748e-03, 2.131349504555778065e-03, 2.128660981867864458e-03, 2.125969134383087246e-03, 2.123273966638368482e-03, 2.120575483175858242e-03, 2.117873688542682223e-03, 2.115168587291313840e-03, 2.112460183979366930e-03, 2.109748483169469977e-03, 2.107033489429332909e-03, 2.104315207332145207e-03, 2.101593641455797457e-03, 2.098868796383520155e-03, 2.096140676703646052e-03, 2.093409287009425843e-03, 2.090674631899440590e-03, 2.087936715977096059e-03, 2.085195543851062899e-03, 2.082451120135058939e-03, 2.079703449447690890e-03, 2.076952536412773106e-03, 2.074198385659194004e-03, 2.071441001820648487e-03, 2.068680389536073361e-03, 2.065916553449399697e-03, 2.063149498209397147e-03, 2.060379228470004837e-03, 2.057605748890167004e-03, 2.054829064133626565e-03, 2.052049178869337544e-03, 2.049266097770929915e-03, 2.046479825517419967e-03, 2.043690366792402357e-03, 2.040897726284490732e-03, 2.038101908687345483e-03, 2.035302918699569228e-03, 2.032500761024494743e-03, 2.029695440370558792e-03, 2.026886961451095266e-03, 2.024075328984154334e-03, 2.021260547692875845e-03, 2.018442622305191385e-03, 2.015621557554001658e-03, 2.012797358176924081e-03, 2.009970028916385158e-03, 2.007139574520031174e-03, 2.004305999739977064e-03, 2.001469309333183278e-03, 1.998629508061786249e-03, 1.995786600692332075e-03, 1.992940591996473446e-03, 1.990091486750422342e-03, 1.987239289735365060e-03, 1.984384005737287876e-03, 1.981525639546755438e-03, 1.978664195959296303e-03, 1.975799679775206916e-03, 1.972932095799337371e-03, 1.970061448841482592e-03, 1.967187743716182838e-03, 1.964310985242496022e-03, 1.961431178244416214e-03, 1.958548327550643352e-03, 1.955662437994385491e-03, 1.952773514413817411e-03, 1.949881561651538309e-03, 1.946986584555021734e-03, 1.944088587976426728e-03, 1.941187576772367531e-03, 1.938283555804327755e-03, 1.935376529938420557e-03, 1.932466504045228821e-03, 1.929553483000146690e-03, 1.926637471683195681e-03, 1.923718474978823242e-03, 1.920796497776283739e-03, 1.917871544969422266e-03, 1.914943621456492934e-03, 1.912012732140585831e-03, 1.909078881929044584e-03, 1.906142075734231596e-03, 1.903202318472687997e-03, 1.900259615065506402e-03, 1.897313970438695195e-03, 1.894365389522427185e-03, 1.891413877251462436e-03, 1.888459438565210508e-03, 1.885502078407508622e-03, 1.882541801726788202e-03, 1.879578613475762399e-03, 1.876612518611825301e-03, 1.873643522096861544e-03, 1.870671628897013425e-03, 1.867696843983090516e-03, 1.864719172330342846e-03, 1.861738618918353134e-03, 1.858755188731047630e-03, 1.855768886757199398e-03, 1.852779717989524533e-03, 1.849787687425487066e-03, 1.846792800066687041e-03, 1.843795060919314367e-03, 1.840794474993943464e-03, 1.837791047305338326e-03, 1.834784782872822886e-03, 1.831775686720075449e-03, 1.828763763874940692e-03, 1.825749019369796774e-03, 1.822731458241359966e-03, 1.819711085530478431e-03, 1.816687906282512350e-03, 1.813661925547136594e-03, 1.810633148378126703e-03, 1.807601579833746164e-03, 1.804567224976556025e-03, 1.801530088873182873e-03, 1.798490176594788733e-03, 1.795447493216466945e-03, 1.792402043818029081e-03, 1.789353833483131508e-03, 1.786302867299713413e-03, 1.783249150360096324e-03, 1.780192687760814548e-03, 1.777133484602395072e-03, 1.774071545989785829e-03, 1.771006877032115434e-03, 1.767939482842491522e-03, 1.764869368538406896e-03, 1.761796539241455677e-03, 1.758721000077445844e-03, 1.755642756176208855e-03, 1.752561812671636719e-03, 1.749478174702176828e-03, 1.746391847409990185e-03, 1.743302835941405249e-03, 1.740211145447007708e-03, 1.737116781081414745e-03, 1.734019748003386282e-03, 1.730920051375572791e-03, 1.727817696364893898e-03, 1.724712688142338891e-03, 1.721605031882744675e-03, 1.718494732765190637e-03, 1.715381795972809129e-03, 1.712266226692614381e-03, 1.709148030115575359e-03, 1.706027211437084138e-03, 1.702903775856056019e-03, 1.699777728575680011e-03, 1.696649074803121106e-03, 1.693517819749322311e-03, 1.690383968629469982e-03, 1.687247526662434592e-03, 1.684108499071241497e-03, 1.680966891082863847e-03, 1.677822707928000546e-03, 1.674675954841475019e-03, 1.671526637062044178e-03, 1.668374759832143847e-03, 1.665220328398329822e-03, 1.662063348011050398e-03, 1.658903823924420644e-03, 1.655741761396638517e-03, 1.652577165689769973e-03, 1.649410042069516299e-03, 1.646240395805720867e-03, 1.643068232171705388e-03, 1.639893556445115152e-03, 1.636716373906983366e-03, 1.633536689842244845e-03, 1.630354509539762254e-03, 1.627169838292199036e-03, 1.623982681395794115e-03, 1.620793044150765656e-03, 1.617600931861044346e-03, 1.614406349834370544e-03, 1.611209303382037323e-03, 1.608009797819291405e-03, 1.604807838465104183e-03, 1.601603430642033372e-03, 1.598396579676278307e-03, 1.595187290898170216e-03, 1.591975569641317870e-03, 1.588761421243010041e-03, 1.585544851044647660e-03, 1.582325864390797098e-03, 1.579104466630053185e-03, 1.575880663114363972e-03, 1.572654459199550932e-03, 1.569425860245060459e-03, 1.566194871613748978e-03, 1.562961498672319881e-03, 1.559725746791062670e-03, 1.556487621343674490e-03, 1.553247127707638956e-03, 1.550004271264036849e-03, 1.546759057397288726e-03, 1.543511491495615706e-03, 1.540261578950771672e-03, 1.537009325157860477e-03, 1.533754735515801930e-03, 1.530497815426753267e-03, 1.527238570296607888e-03, 1.523977005534776991e-03, 1.520713126553946502e-03, 1.517446938770521375e-03, 1.514178447604376445e-03, 1.510907658478657586e-03, 1.507634576820185467e-03, 1.504359208059235673e-03, 1.501081557629323172e-03, 1.497801630967608233e-03, 1.494519433514612155e-03, 1.491234970714351918e-03, 1.487948248014035963e-03, 1.484659270864487025e-03, 1.481368044719930284e-03, 1.478074575037822058e-03, 1.474778867278930036e-03, 1.471480926907816830e-03, 1.468180759391967847e-03, 1.464878370202287849e-03, 1.461573764813170560e-03, 1.458266948702267082e-03, 1.454957927350613396e-03, 1.451646706242348686e-03, 1.448333290865132976e-03, 1.445017686709908818e-03, 1.441699899270693997e-03, 1.438379934045001547e-03, 1.435057796533612288e-03, 1.431733492240333050e-03, 1.428407026672452902e-03, 1.425078405340490101e-03, 1.421747633757978069e-03, 1.418414717441963697e-03, 1.415079661912406906e-03, 1.411742472692705409e-03, 1.408403155309429508e-03, 1.405061715292123042e-03, 1.401718158173738144e-03, 1.398372489490368100e-03, 1.395024714781065633e-03, 1.391674839588233868e-03, 1.388322869457432260e-03, 1.384968809937109661e-03, 1.381612666579067712e-03, 1.378254444938218411e-03, 1.374894150572355134e-03, 1.371531789042581108e-03, 1.368167365913083465e-03, 1.364800886750906859e-03, 1.361432357126452419e-03, 1.358061782612808577e-03, 1.354689168786628838e-03, 1.351314521227161636e-03, 1.347937845516753406e-03, 1.344559147240920139e-03, 1.341178431988190823e-03, 1.337795705349866969e-03, 1.334410972920466480e-03, 1.331024240297421163e-03, 1.327635513081200109e-03, 1.324244796875014571e-03, 1.320852097285260974e-03, 1.317457419921273928e-03, 1.314060770395178565e-03, 1.310662154321948648e-03, 1.307261577319929376e-03, 1.303859045009917545e-03, 1.300454563015690209e-03, 1.297048136964059533e-03, 1.293639772484644250e-03, 1.290229475210012992e-03, 1.286817250775363578e-03, 1.283403104818975132e-03, 1.279987042981973024e-03, 1.276569070908088613e-03, 1.273149194244096831e-03, 1.269727418639600425e-03, 1.266303749746770183e-03, 1.262878193220806590e-03, 1.259450754719697828e-03, 1.256021439903976054e-03, 1.252590254437179048e-03, 1.249157203985592829e-03, 1.245722294218035891e-03, 1.242285530806364231e-03, 1.238846919424862678e-03, 1.235406465750766387e-03, 1.231964175464024492e-03, 1.228520054247058757e-03, 1.225074107785213305e-03, 1.221626341766518910e-03, 1.218176761881445804e-03, 1.214725373823369444e-03, 1.211272183288313129e-03, 1.207817195974717059e-03, 1.204360417583896737e-03, 1.200901853819710558e-03, 1.197441510388718312e-03, 1.193979392999927700e-03, 1.190515507364881724e-03, 1.187049859198161320e-03, 1.183582454216476360e-03, 1.180113298139183692e-03, 1.176642396688349365e-03, 1.173169755588607038e-03, 1.169695380566884973e-03, 1.166219277352886340e-03, 1.162741451678764174e-03, 1.159261909279257546e-03, 1.155780655891381270e-03, 1.152297697254874758e-03, 1.148813039111974557e-03, 1.145326687207151974e-03, 1.141838647287581445e-03, 1.138348925102899197e-03, 1.134857526404952147e-03, 1.131364456948261935e-03, 1.127869722489783155e-03, 1.124373328788652680e-03, 1.120875281606730466e-03, 1.117375586707966377e-03, 1.113874249858942071e-03, 1.110371276828612738e-03, 1.106866673388080076e-03, 1.103360445311035937e-03, 1.099852598373535304e-03, 1.096343138353733258e-03, 1.092832071032364197e-03, 1.089319402192480543e-03, 1.085805137619218338e-03, 1.082289283100257163e-03, 1.078771844425573806e-03, 1.075252827387192028e-03, 1.071732237779731171e-03, 1.068210081399686897e-03, 1.064686364046362735e-03, 1.061161091520836401e-03, 1.057634269626438368e-03, 1.054105904169182076e-03, 1.050576000956842792e-03, 1.047044565799483884e-03, 1.043511604509525991e-03, 1.039977122901581579e-03, 1.036441126792209252e-03, 1.032903622000377365e-03, 1.029364614347141145e-03, 1.025824109655782985e-03, 1.022282113751498463e-03, 1.018738632461854308e-03, 1.015193671616537296e-03, 1.011647237047195958e-03, 1.008099334587504985e-03, 1.004549970073710359e-03, 1.000999149343591126e-03, 9.974468782373928886e-04, 9.938931625971267683e-04, 9.903380082670839614e-04, 9.867814210936149983e-04, 9.832234069248628125e-04, 9.796639716112441262e-04, 9.761031210051959641e-04, 9.725408609609180466e-04, 9.689771973348602473e-04, 9.654121359854553374e-04, 9.618456827728816532e-04, 9.582778435595263765e-04, 9.547086242097426725e-04, 9.511380305895917589e-04, 9.475660685673998598e-04, 9.439927440131047577e-04, 9.404180627988103624e-04, 9.368420307985304060e-04, 9.332646538879463402e-04, 9.296859379448688815e-04, 9.261058888490016549e-04, 9.225245124816795761e-04, 9.189418147263380939e-04, 9.153578014682765092e-04, 9.117724785943970072e-04, 9.081858519936776954e-04, 9.045979275569237784e-04, 9.010087111765188424e-04, 8.974182087468939896e-04, 8.938264261641959635e-04, 8.902333693264443586e-04, 8.866390441332727126e-04, 8.830434564860062440e-04, 8.794466122882074223e-04, 8.758485174447112453e-04, 8.722491778621709177e-04, 8.686485994491271317e-04, 8.650467881158455455e-04, 8.614437497740618866e-04, 8.578394903374517372e-04, 8.542340157213008283e-04, 8.506273318426589959e-04, 8.470194446200093917e-04, 8.434103599737318704e-04, 8.398000838258673929e-04, 8.361886220999301339e-04, 8.325759807209946522e-04, 8.289621656162399427e-04, 8.253471827138920145e-04, 8.217310379441855779e-04, 8.181137372386305820e-04, 8.144952865305589776e-04, 8.108756917548778443e-04, 8.072549588478226262e-04, 8.036330937474213875e-04, 8.000101023932499993e-04, 7.963859907261765930e-04, 7.927607646888392605e-04, 7.891344302253956028e-04, 7.855069932812611122e-04, 7.818784598035968467e-04, 7.782488357410448842e-04, 7.746181270434928344e-04, 7.709863396625274683e-04, 7.673534795512015070e-04, 7.637195526637704851e-04, 7.600845649562508986e-04, 7.564485223856877178e-04, 7.528114309111044733e-04, 7.491732964924589528e-04, 7.455341250911821580e-04, 7.418939226702569089e-04, 7.382526951940488174e-04, 7.346104486280530168e-04, 7.309671889393605862e-04, 7.273229220964220858e-04, 7.236776540687807346e-04, 7.200313908275562903e-04, 7.163841383451112228e-04, 7.127359025951935040e-04, 7.090866895527010109e-04, 7.054365051937360603e-04, 7.017853554961703873e-04, 6.981332464386670860e-04, 6.944801840011439976e-04, 6.908261741652664805e-04, 6.871712229133715563e-04, 6.835153362294376202e-04, 6.798585200983384017e-04, 6.762007805064100020e-04, 6.725421234411885175e-04, 6.688825548911660939e-04, 6.652220808462599522e-04, 6.615607072975594445e-04, 6.578984402370815663e-04, 6.542352856582397654e-04, 6.505712495555901302e-04, 6.469063379245837582e-04, 6.432405567620416362e-04, 6.395739120658999613e-04, 6.359064098349565463e-04, 6.322380560694343876e-04, 6.285688567703129294e-04, 6.248988179398980288e-04, 6.212279455815574109e-04, 6.175562456994748792e-04, 6.138837242991264983e-04, 6.102103873870256970e-04, 6.065362409704677226e-04, 6.028612910580104841e-04, 5.991855436592221501e-04, 5.955090047844244098e-04, 5.918316804451714732e-04, 5.881535766539972357e-04, 5.844746994241561532e-04, 5.807950547701959182e-04, 5.771146487071959156e-04, 5.734334872517559073e-04, 5.697515764209084687e-04, 5.660689222326074216e-04, 5.623855307062124729e-04, 5.587014078614864357e-04, 5.550165597191667128e-04, 5.513309923010341427e-04, 5.476447116296602729e-04, 5.439577237285609908e-04, 5.402700346218520730e-04, 5.365816503347391360e-04, 5.328925768932617647e-04, 5.292028203240322195e-04, 5.255123866547224600e-04, 5.218212819138049125e-04, 5.181295121303786718e-04, 5.144370833342470223e-04, 5.107440015564772111e-04, 5.070502728283211250e-04, 5.033559031821972524e-04, 4.996608986509369459e-04, 4.959652652683530860e-04, 4.922690090689778135e-04, 4.885721360878170650e-04, 4.848746523608186781e-04, 4.811765639246299632e-04, 4.774778768163349474e-04, 4.737785970739347304e-04, 4.700787307360990933e-04, 4.663782838419034175e-04, 4.626772624313124551e-04, 4.589756725449309089e-04, 4.552735202237357965e-04, 4.515708115096511862e-04, 4.478675524448786477e-04, 4.441637490724572430e-04, 4.404594074360163817e-04, 4.367545335794289314e-04, 4.330491335477098581e-04, 4.293432133859387463e-04, 4.256367791398194640e-04, 4.219298368557599060e-04, 4.182223925806935342e-04, 4.145144523618224212e-04, 4.108060222471036243e-04, 4.070971082849902229e-04, 4.033877165241758810e-04, 3.996778530140763412e-04, 3.959675238044963580e-04, 3.922567349457752517e-04, 3.885454924885393306e-04, 3.848338024837684077e-04, 3.811216709833646263e-04, 3.774091040391550490e-04, 3.736961077034537076e-04, 3.699826880291429729e-04, 3.662688510694058104e-04, 3.625546028778902003e-04, 3.588399495083641980e-04, 3.551248970152011148e-04, 3.514094514531245135e-04, 3.476936188769501140e-04, 3.439774053420687513e-04, 3.402608169041909918e-04, 3.365438596191742569e-04, 3.328265395430890679e-04, 3.291088627327961127e-04, 3.253908352448534242e-04, 3.216724631364226107e-04, 3.179537524649248925e-04, 3.142347092877824659e-04, 3.105153396629919916e-04, 3.067956496484466433e-04, 3.030756453025109515e-04, 2.993553326837595650e-04, 2.956347178507206749e-04, 2.919138068623616279e-04, 2.881926057778310497e-04, 2.844711206562008585e-04, 2.807493575569542646e-04, 2.770273225397249656e-04, 2.733050216640408410e-04, 2.695824609898109215e-04, 2.658596465770662648e-04, 2.621365844857008313e-04, 2.584132807760451895e-04, 2.546897415081054604e-04, 2.509659727425526520e-04, 2.472419805396338494e-04, 2.435177709597410682e-04, 2.397933500634861191e-04, 2.360687239115250480e-04, 2.323438985642964371e-04, 2.286188800825153403e-04, 2.248936745268241154e-04, 2.211682879579551092e-04, 2.174427264363840921e-04, 2.137169960228218080e-04, 2.099911027779524382e-04, 2.062650527622593964e-04, 2.025388520360978085e-04, 1.988125066602665640e-04, 1.950860226950012284e-04, 1.913594062004627468e-04, 1.876326632372261481e-04, 1.839057998651904343e-04, 1.801788221445659358e-04, 1.764517361351168611e-04, 1.727245478967329151e-04, 1.689972634891695783e-04, 1.652698889717911241e-04, 1.615424304040555823e-04, 1.578148938452593008e-04, 1.540872853542762228e-04, 1.503596109900459936e-04, 1.466318768113165449e-04, 1.429040888763834249e-04, 1.391762532435798035e-04, 1.354483759710152610e-04, 1.317204631163196727e-04, 1.279925207372125773e-04, 1.242645548908298330e-04, 1.205365716342951554e-04, 1.168085770244600707e-04, 1.130805771176469064e-04, 1.093525779701358278e-04, 1.056245856379060393e-04, 1.018966061763768906e-04, 9.816864564089662095e-05, 9.444071008648314061e-05, 9.071280556756548884e-05, 8.698493813847115580e-05, 8.325711385308548051e-05, 7.952933876500740994e-05, 7.580161892720690476e-05, 7.207396039251391445e-05, 6.834636921335995776e-05, 6.461885144160100472e-05, 6.089141312859177159e-05, 5.716406032575656684e-05, 5.343679908358352427e-05, 4.970963545219542863e-05, 4.598257548142326522e-05, 4.225562522054767832e-05, 3.852879071845464906e-05, 3.480207802329368715e-05, 3.107549318296658918e-05, 2.734904224486799589e-05, 2.362273125562689457e-05, 1.989656626159493701e-05, 1.617055330858755229e-05, 1.244469844162472597e-05, 8.719007705419931168e-06, 4.993487144120982224e-06, 1.268142801050910831e-06, -2.457019280720069058e-06, -6.181993059049166639e-06, -9.906772492149135731e-06, -1.363135153884734192e-05, -1.735572415884484705e-05, -2.107988431222751922e-05, -2.480382595972527646e-05, -2.852754306297100614e-05, -3.225102958401185571e-05, -3.597427948556829267e-05, -3.969728673129300188e-05, -4.342004528528232711e-05, -4.714254911233535809e-05, -5.086479217821251954e-05, -5.458676844914758526e-05, -5.830847189210566409e-05, -6.202989647504327290e-05, -6.575103616633616241e-05, -6.947188493553579220e-05, -7.319243675238435332e-05, -7.691268558790231120e-05, -8.063262541381773581e-05, -8.435225020249296894e-05, -8.807155392710038693e-05, -9.179053056188092867e-05, -9.550917408165629952e-05, -9.922747846217011547e-05, -1.029454376799327674e-04, -1.066630457125611152e-04, -1.103802965382926431e-04, -1.140971841362422396e-04, -1.178137024865798032e-04, -1.215298455704546870e-04, -1.252456073694266283e-04, -1.289609818664703023e-04, -1.326759630454036633e-04, -1.363905448908160753e-04, -1.401047213883261353e-04, -1.438184865244251150e-04, -1.475318342868194054e-04, -1.512447586639422466e-04, -1.549572536452112532e-04, -1.586693132212881887e-04, -1.623809313835920234e-04, -1.660921021245536679e-04, -1.698028194378791355e-04, -1.735130773180578031e-04, -1.772228697606237574e-04, -1.809321907624125616e-04, -1.846410343210742855e-04, -1.883493944353306518e-04, -1.920572651052352981e-04, -1.957646403316028909e-04, -1.994715141166797856e-04, -2.031778804635757418e-04, -2.068837333765218011e-04, -2.105890668611287611e-04, -2.142938749238983891e-04, -2.179981515724836315e-04, -2.217018908159437262e-04, -2.254050866642620850e-04, -2.291077331285988855e-04, -2.328098242215523371e-04, -2.365113539566698951e-04, -2.402123163487915195e-04, -2.439127054138914353e-04, -2.476125151693369590e-04, -2.513117396338150167e-04, -2.550103728267626396e-04, -2.587084087693716675e-04, -2.624058414840148529e-04, -2.661026649941770146e-04, -2.697988733246265585e-04, -2.734944605016780710e-04, -2.771894205526991158e-04, -2.808837475064575578e-04, -2.845774353929602881e-04, -2.882704782437963743e-04, -2.919628700916519879e-04, -2.956546049705629153e-04, -2.993456769161785070e-04, -3.030360799652697204e-04, -3.067258081559907381e-04, -3.104148555281352733e-04, -3.141032161226491124e-04, -3.177908839818894019e-04, -3.214778531498808456e-04, -3.251641176717483413e-04, -3.288496715943850122e-04, -3.325345089658863617e-04, -3.362186238358069582e-04, -3.399020102554171745e-04, -3.435846622772150793e-04, -3.472665739551903329e-04, -3.509477393450733903e-04, -3.546281525038549832e-04, -3.583078074900447022e-04, -3.619866983639202546e-04, -3.656648191870509579e-04, -3.693421640225503047e-04, -3.730187269353318880e-04, -3.766945019915468639e-04, -3.803694832593269544e-04, -3.840436648078167977e-04, -3.877170407082426457e-04, -3.913896050334345566e-04, -3.950613518573428402e-04, -3.987322752560285314e-04, -4.024023693071042667e-04, -4.060716280896580106e-04, -4.097400456844273956e-04, -4.134076161740570031e-04, -4.170743336426124240e-04, -4.207401921759219995e-04, -4.244051858614186898e-04, -4.280693087884779660e-04, -4.317325550479400023e-04, -4.353949187323580662e-04, -4.390563939361774668e-04, -4.427169747556607441e-04, -4.463766552883234508e-04, -4.500354296340096805e-04, -4.536932918939192674e-04, -4.573502361713513865e-04, -4.610062565711433159e-04, -4.646613471999251708e-04, -4.683155021663772924e-04, -4.719687155807389422e-04, -4.756209815550803822e-04, -4.792722942035390686e-04, -4.829226476418540409e-04, -4.865720359876087833e-04, -4.902204533604915962e-04, -4.938678938818173540e-04, -4.975143516747776310e-04, -5.011598208646938623e-04, -5.048042955784606605e-04, -5.084477699452047937e-04, -5.120902380957207496e-04, -5.157316941627330042e-04, -5.193721322811430032e-04, -5.230115465875510286e-04, -5.266499312205119620e-04, -5.302872803207886628e-04, -5.339235880308690644e-04, -5.375588484952257325e-04, -5.411930558605647975e-04, -5.448262042753493394e-04, -5.484582878900548259e-04, -5.520893008574151179e-04, -5.557192373319518172e-04, -5.593480914703082008e-04, -5.629758574310889758e-04, -5.666025293751227650e-04, -5.702281014653820925e-04, -5.738525678664301152e-04, -5.774759227454018262e-04, -5.810981602714464494e-04, -5.847192746156516536e-04, -5.883392599512224461e-04, -5.919581104537243593e-04, -5.955758203006199540e-04, -5.991923836715838886e-04, -6.028077947483691289e-04, -6.064220477151274378e-04, -6.100351367579355793e-04, -6.136470560650549846e-04, -6.172577998270886365e-04, -6.208673622369244739e-04, -6.244757374891691127e-04, -6.280829197812111235e-04, -6.316889033122615122e-04, -6.352936822840862070e-04, -6.388972509004559345e-04, -6.424996033673946103e-04, -6.461007338934268620e-04, -6.497006366891120398e-04, -6.532993059672857761e-04, -6.568967359433220375e-04, -6.604929208346471854e-04, -6.640878548609994254e-04, -6.676815322446748129e-04, -6.712739472100583355e-04, -6.748650939838676420e-04, -6.784549667954122747e-04, -6.820435598761141272e-04, -6.856308674597569189e-04, -6.892168837827431513e-04, -6.928016030835360689e-04, -6.963850196033909536e-04, -6.999671275854055805e-04, -7.035479212755669067e-04, -7.071273949222036575e-04, -7.107055427759144438e-04, -7.142823590897327780e-04, -7.178578381193826199e-04, -7.214319741228047977e-04, -7.250047613604075668e-04, -7.285761940953102301e-04, -7.321462665928795332e-04, -7.357149731210541662e-04, -7.392823079501998056e-04, -7.428482653533503496e-04, -7.464128396061402637e-04, -7.499760249862593353e-04, -7.535378157744116508e-04, -7.570982062538518824e-04, -7.606571907099125753e-04, -7.642147634310554995e-04, -7.677709187079163585e-04, -7.713256508340355418e-04, -7.748789541053110368e-04, -7.784308228202420485e-04, -7.819812512801799925e-04, -7.855302337888599032e-04, -7.890777646526489324e-04, -7.926238381807925717e-04, -7.961684486849440008e-04, -7.997115904794194164e-04, -8.032532578814376416e-04, -8.067934452106556532e-04, -8.103321467894200082e-04, -8.138693569430068865e-04, -8.174050699990784716e-04, -8.209392802883304363e-04, -8.244719821439389995e-04, -8.280031699018141960e-04, -8.315328379008407860e-04, -8.350609804824206134e-04, -8.385875919907073359e-04, -8.421126667728638139e-04, -8.456361991785911339e-04, -8.491581835603767819e-04, -8.526786142737334930e-04, -8.561974856767520185e-04, -8.597147921303259889e-04, -8.632305279984086536e-04, -8.667446876474746821e-04, -8.702572654472221858e-04, -8.737682557696589518e-04, -8.772776529901122689e-04, -8.807854514867819113e-04, -8.842916456402664504e-04, -8.877962298345273276e-04, -8.912991984563325499e-04, -8.948005458952041063e-04, -8.983002665436506376e-04, -9.017983547970232373e-04, -9.052948050538321472e-04, -9.087896117152978979e-04, -9.122827691855870140e-04, -9.157742718720568269e-04, -9.192641141847932799e-04, -9.227522905368599690e-04, -9.262387953444554609e-04, -9.297236230268521437e-04, -9.332067680058521745e-04, -9.366882247068175800e-04, -9.401679875577375169e-04, -9.436460509899352806e-04, -9.471224094375476710e-04, -9.505970573377460616e-04, -9.540699891309983426e-04, -9.575411992605956666e-04, -9.610106821729073445e-04, -9.644784323176114555e-04, -9.679444441472453368e-04, -9.714087121174473606e-04, -9.748712306871896039e-04, -9.783319943183369036e-04, -9.817909974758683590e-04, -9.852482346281419851e-04, -9.887037002463394935e-04, -9.921573888051077057e-04, -9.956092947820223069e-04, -9.990594126578281053e-04, -1.002507736916753017e-03, -1.005954262045679736e-03, -1.009398982535142332e-03, -1.012841892878807134e-03, -1.016282987573394452e-03, -1.019722261118852702e-03, -1.023159708018590635e-03, -1.026595322779022199e-03, -1.030029099909814160e-03, -1.033461033924118781e-03, -1.036891119338125607e-03, -1.040319350671370033e-03, -1.043745722446604712e-03, -1.047170229190021607e-03, -1.050592865431185415e-03, -1.054013625702523559e-03, -1.057432504540227816e-03, -1.060849496483747770e-03, -1.064264596075720562e-03, -1.067677797862190978e-03, -1.071089096392490456e-03, -1.074498486219539577e-03, -1.077905961899400071e-03, -1.081311517991512695e-03, -1.084715149058936186e-03, -1.088116849667895370e-03, -1.091516614388018166e-03, -1.094914437792510577e-03, -1.098310314458059329e-03, -1.101704238964337692e-03, -1.105096205894994486e-03, -1.108486209836805373e-03, -1.111874245380024351e-03, -1.115260307118586067e-03, -1.118644389649598196e-03, -1.122026487573958130e-03, -1.125406595495821727e-03, -1.128784708022852450e-03, -1.132160819766443206e-03, -1.135534925341276802e-03, -1.138907019365567727e-03, -1.142277096461289396e-03, -1.145645151253730067e-03, -1.149011178371729842e-03, -1.152375172447914426e-03, -1.155737128118256669e-03, -1.159097040022297968e-03, -1.162454902803401746e-03, -1.165810711108218514e-03, -1.169164459587375632e-03, -1.172516142894593043e-03, -1.175865755687652541e-03, -1.179213292627896443e-03, -1.182558748380149738e-03, -1.185902117612884889e-03, -1.189243394998451466e-03, -1.192582575212638345e-03, -1.195919652934975116e-03, -1.199254622848602196e-03, -1.202587479640565950e-03, -1.205918218001391946e-03, -1.209246832625303532e-03, -1.212573318210389888e-03, -1.215897669458533168e-03, -1.219219881074903910e-03, -1.222539947768850731e-03, -1.225857864253472292e-03, -1.229173625245176017e-03, -1.232487225464655835e-03, -1.235798659635997925e-03, -1.239107922487377427e-03, -1.242415008750526097e-03, -1.245719913160973219e-03, -1.249022630458280657e-03, -1.252323155385599851e-03, -1.255621482689903623e-03, -1.258917607122214070e-03, -1.262211523437176044e-03, -1.265503226393282013e-03, -1.268792710753093239e-03, -1.272079971282819976e-03, -1.275365002752541993e-03, -1.278647799936443417e-03, -1.281928357612297951e-03, -1.285206670562074075e-03, -1.288482733571426776e-03, -1.291756541429914598e-03, -1.295028088931251620e-03, -1.298297370872850348e-03, -1.301564382056072822e-03, -1.304829117286433575e-03, -1.308091571373198479e-03, -1.311351739129579036e-03, -1.314609615372991066e-03, -1.317865194924604114e-03, -1.321118472609653918e-03, -1.324369443257287582e-03, -1.327618101700813813e-03, -1.330864442777625941e-03, -1.334108461328693427e-03, -1.337350152199455900e-03, -1.340589510239389688e-03, -1.343826530301576094e-03, -1.347061207243591087e-03, -1.350293535927001151e-03, -1.353523511217286741e-03, -1.356751127984086227e-03, -1.359976381101051261e-03, -1.363199265446141248e-03, -1.366419775901205492e-03, -1.369637907352197871e-03, -1.372853654689408206e-03, -1.376067012807040066e-03, -1.379277976603428485e-03, -1.382486540981270242e-03, -1.385692700847187793e-03, -1.388896451111970836e-03, -1.392097786690792280e-03, -1.395296702502709296e-03, -1.398493193471240549e-03, -1.401687254523901506e-03, -1.404878880592384631e-03, -1.408068066612813956e-03, -1.411254807525315303e-03, -1.414439098274236162e-03, -1.417620933808366865e-03, -1.420800309080528156e-03, -1.423977219047774375e-03, -1.427151658671646506e-03, -1.430323622917720715e-03, -1.433493106755857069e-03, -1.436660105160391006e-03, -1.439824613109743018e-03, -1.442986625586633979e-03, -1.446146137578281166e-03, -1.449303144075945278e-03, -1.452457640075554939e-03, -1.455609620576870777e-03, -1.458759080584405912e-03, -1.461906015106951510e-03, -1.465050419157509776e-03, -1.468192287753434036e-03, -1.471331615916654468e-03, -1.474468398673274561e-03, -1.477602631053838260e-03, -1.480734308093214179e-03, -1.483863424830875969e-03, -1.486989976310497917e-03, -1.490113957580157904e-03, -1.493235363692506324e-03, -1.496354189704682822e-03, -1.499470430677846827e-03, -1.502584081678019767e-03, -1.505695137775611052e-03, -1.508803594045347385e-03, -1.511909445566487651e-03, -1.515012687422704306e-03, -1.518113314702356593e-03, -1.521211322498088958e-03, -1.524306705907044202e-03, -1.527399460031079450e-03, -1.530489579976352429e-03, -1.533577060853554778e-03, -1.536661897778110464e-03, -1.539744085869760963e-03, -1.542823620252813544e-03, -1.545900496056321896e-03, -1.548974708413693646e-03, -1.552046252462911322e-03, -1.555115123346736397e-03, -1.558181316212232459e-03, -1.561244826211341140e-03, -1.564305648500388581e-03, -1.567363778240305969e-03, -1.570419210596854173e-03, -1.573471940740196360e-03, -1.576521963845139767e-03, -1.579569275091315247e-03, -1.582613869662816662e-03, -1.585655742748370671e-03, -1.588694889541571349e-03, -1.591731305240487709e-03, -1.594764985047917617e-03, -1.597795924171275693e-03, -1.600824117822811877e-03, -1.603849561219534894e-03, -1.606872249582749074e-03, -1.609892178138882472e-03, -1.612909342119008731e-03, -1.615923736758808054e-03, -1.618935357298677356e-03, -1.621944198983973776e-03, -1.624950257064590540e-03, -1.627953526795254029e-03, -1.630954003435388473e-03, -1.633951682249388301e-03, -1.636946558506227611e-03, -1.639938627479666606e-03, -1.642927884448398389e-03, -1.645914324695980447e-03, -1.648897943510384051e-03, -1.651878736184862273e-03, -1.654856698017221402e-03, -1.657831824310104134e-03, -1.660804110371196657e-03, -1.663773551512761793e-03, -1.666740143052182184e-03, -1.669703880311498856e-03, -1.672664758617626972e-03, -1.675622773302556847e-03, -1.678577919702956261e-03, -1.681530193160394454e-03, -1.684479589021531864e-03, -1.687426102637740004e-03, -1.690369729365292931e-03, -1.693310464565593414e-03, -1.696248303604771124e-03, -1.699183241853882784e-03, -1.702115274689140279e-03, -1.705044397491425152e-03, -1.707970605646917227e-03, -1.710893894546290346e-03, -1.713814259585593391e-03, -1.716731696165776054e-03, -1.719646199692649808e-03, -1.722557765577016273e-03, -1.725466389234874085e-03, -1.728372066087032486e-03, -1.731274791559320137e-03, -1.734174561082774645e-03, -1.737071370093274574e-03, -1.739965214031786653e-03, -1.742856088344266023e-03, -1.745743988481918184e-03, -1.748628909900798922e-03, -1.751510848062032234e-03, -1.754389798431944337e-03, -1.757265756482007937e-03, -1.760138717688387736e-03, -1.763008677532797381e-03, -1.765875631501724044e-03, -1.768739575087026035e-03, -1.771600503785473318e-03, -1.774458413098962831e-03, -1.777313298534716679e-03, -1.780165155604892689e-03, -1.783013979826792361e-03, -1.785859766723057974e-03, -1.788702511821299839e-03, -1.791542210654289069e-03, -1.794378858760157505e-03, -1.797212451682026271e-03, -1.800042984968197243e-03, -1.802870454172356227e-03, -1.805694854853132992e-03, -1.808516182574617564e-03, -1.811334432905924380e-03, -1.814149601421373784e-03, -1.816961683700717102e-03, -1.819770675328743733e-03, -1.822576571895483675e-03, -1.825379368996395526e-03, -1.828179062232018022e-03, -1.830975647208133751e-03, -1.833769119535990765e-03, -1.836559474831923758e-03, -1.839346708717547706e-03, -1.842130816819948468e-03, -1.844911794771317195e-03, -1.847689638209221163e-03, -1.850464342776470851e-03, -1.853235904121300999e-03, -1.856004317897351963e-03, -1.858769579763206326e-03, -1.861531685383164105e-03, -1.864290630426798222e-03, -1.867046410568907674e-03, -1.869799021489649150e-03, -1.872548458874739342e-03, -1.875294718415052063e-03, -1.878037795806922899e-03, -1.880777686752004149e-03, -1.883514386957509633e-03, -1.886247892135887484e-03, -1.888978198004964996e-03, -1.891705300288118409e-03, -1.894429194714193328e-03, -1.897149877017103138e-03, -1.899867342936600520e-03, -1.902581588217580090e-03, -1.905292608610630913e-03, -1.908000399871590674e-03, -1.910704957761773150e-03, -1.913406278048118258e-03, -1.916104356502873083e-03, -1.918799188903744972e-03, -1.921490771034108612e-03, -1.924179098682658436e-03, -1.926864167643567135e-03, -1.929545973716708784e-03, -1.932224512707268098e-03, -1.934899780425962043e-03, -1.937571772689192489e-03, -1.940240485318730492e-03, -1.942905914141860929e-03, -1.945568054991608656e-03, -1.948226903706298113e-03, -1.950882456130104744e-03, -1.953534708112348965e-03, -1.956183655508284599e-03, -1.958829294178669311e-03, -1.961471619989727747e-03, -1.964110628813274268e-03, -1.966746316526885984e-03, -1.969378679013567956e-03, -1.972007712161931003e-03, -1.974633411866374283e-03, -1.977255774026744420e-03, -1.979874794548561884e-03, -1.982490469342929919e-03, -1.985102794326703678e-03, -1.987711765422439051e-03, -1.990317378557991939e-03, -1.992919629667236434e-03, -1.995518514689633306e-03, -1.998114029570213085e-03, -2.000706170259731759e-03, -2.003294932714570591e-03, -2.005880312896979410e-03, -2.008462306774723167e-03, -2.011040910321267115e-03, -2.013616119515960253e-03, -2.016187930343695325e-03, -2.018756338795080121e-03, -2.021321340866621789e-03, -2.023882932560389005e-03, -2.026441109884186739e-03, -2.028995868851744475e-03, -2.031547205482361895e-03, -2.034095115801099266e-03, -2.036639595838954809e-03, -2.039180641632462251e-03, -2.041718249224161365e-03, -2.044252414662198983e-03, -2.046783134000526323e-03, -2.049310403299040365e-03, -2.051834218623272039e-03, -2.054354576044564468e-03, -2.056871471640243833e-03, -2.059384901493275036e-03, -2.061894861692460321e-03, -2.064401348332592801e-03, -2.066904357514135968e-03, -2.069403885343398027e-03, -2.071899927932701040e-03, -2.074392481400001449e-03, -2.076881541869393145e-03, -2.079367105470442210e-03, -2.081849168338937173e-03, -2.084327726616529933e-03, -2.086802776450428706e-03, -2.089274313994063294e-03, -2.091742335406715590e-03, -2.094206836853439776e-03, -2.096667814505277869e-03, -2.099125264539108797e-03, -2.101579183137915544e-03, -2.104029566490431703e-03, -2.106476410791321020e-03, -2.108919712241358237e-03, -2.111359467047102534e-03, -2.113795671421042372e-03, -2.116228321581747722e-03, -2.118657413753801105e-03, -2.121082944167427663e-03, -2.123504909059203798e-03, -2.125923304671409678e-03, -2.128338127252540554e-03, -2.130749373056898665e-03, -2.133157038344805738e-03, -2.135561119382736132e-03, -2.137961612443005019e-03, -2.140358513803955736e-03, -2.142751819750099863e-03, -2.145141526571817548e-03, -2.147527630565523610e-03, -2.149910128033831035e-03, -2.152289015285218775e-03, -2.154664288634238183e-03, -2.157035944401641380e-03, -2.159403978914023470e-03, -2.161768388504263592e-03, -2.164129169511151956e-03, -2.166486318279551172e-03, -2.168839831160624364e-03, -2.171189704511251005e-03, -2.173535934694717769e-03, -2.175878518080354672e-03, -2.178217451043500379e-03, -2.180552729965590675e-03, -2.182884351234352753e-03, -2.185212311243462605e-03, -2.187536606392721968e-03, -2.189857233088236127e-03, -2.192174187742076952e-03, -2.194487466772522283e-03, -2.196797066603943180e-03, -2.199102983666971749e-03, -2.201405214398439569e-03, -2.203703755241054590e-03, -2.205998602643980972e-03, -2.208289753062531603e-03, -2.210577202958083961e-03, -2.212860948798253159e-03, -2.215140987056806940e-03, -2.217417314213854327e-03, -2.219689926755561565e-03, -2.221958821174292633e-03, -2.224223993968790520e-03, -2.226485441643872784e-03, -2.228743160710551681e-03, -2.230997147686207636e-03, -2.233247399094478221e-03, -2.235493911464964557e-03, -2.237736681333839760e-03, -2.239975705243299475e-03, -2.242210979741989050e-03, -2.244442501384659623e-03, -2.246670266732350273e-03, -2.248894272352498173e-03, -2.251114514818680547e-03, -2.253330990710769935e-03, -2.255543696615046074e-03, -2.257752629123968222e-03, -2.259957784836269697e-03, -2.262159160357151734e-03, -2.264356752297966464e-03, -2.266550557276391254e-03, -2.268740571916560544e-03, -2.270926792848793063e-03, -2.273109216709741018e-03, -2.275287840142530167e-03, -2.277462659796438034e-03, -2.279633672327326284e-03, -2.281800874397077374e-03, -2.283964262674207778e-03, -2.286123833833549231e-03, -2.288279584556211430e-03, -2.290431511529676147e-03, -2.292579611447931234e-03, -2.294723881011213450e-03, -2.296864316926188442e-03, -2.299000915905874843e-03, -2.301133674669819922e-03, -2.303262589943827661e-03, -2.305387658460126589e-03, -2.307508876957440041e-03, -2.309626242180946257e-03, -2.311739750881976110e-03, -2.313849399818557369e-03, -2.315955185755159702e-03, -2.318057105462406273e-03, -2.320155155717681765e-03, -2.322249333304588978e-03, -2.324339635013372967e-03, -2.326426057640585375e-03, -2.328508597989234052e-03, -2.330587252868956093e-03, -2.332662019095696915e-03, -2.334732893491881563e-03, -2.336799872886561723e-03, -2.338862954115131666e-03, -2.340922134019473959e-03, -2.342977409448101719e-03, -2.345028777255901437e-03, -2.347076234304250070e-03, -2.349119777461175073e-03, -2.351159403601037375e-03, -2.353195109604908249e-03, -2.355226892360219332e-03, -2.357254748760956916e-03, -2.359278675707764290e-03, -2.361298670107690647e-03, -2.363314728874317712e-03, -2.365326848927917607e-03, -2.367335027195183531e-03, -2.369339260609358566e-03, -2.371339546110372287e-03, -2.373335880644607872e-03, -2.375328261165044353e-03, -2.377316684631197632e-03, -2.379301148009254924e-03, -2.381281648272024886e-03, -2.383258182398645744e-03, -2.385230747375108751e-03, -2.387199340194005783e-03, -2.389163957854268695e-03, -2.391124597361694078e-03, -2.393081255728653559e-03, -2.395033929974042623e-03, -2.396982617123423302e-03, -2.398927314208927023e-03, -2.400868018269469717e-03, -2.402804726350444772e-03, -2.404737435503910385e-03, -2.406666142788668923e-03, -2.408590845270063528e-03, -2.410511540020076563e-03, -2.412428224117478363e-03, -2.414340894647576136e-03, -2.416249548702332356e-03, -2.418154183380520888e-03, -2.420054795787405632e-03, -2.421951383035099610e-03, -2.423843942242287844e-03, -2.425732470534315392e-03, -2.427616965043370365e-03, -2.429497422908194655e-03, -2.431373841274233564e-03, -2.433246217293768936e-03, -2.435114548125657218e-03, -2.436978830935464767e-03, -2.438839062895611833e-03, -2.440695241185114085e-03, -2.442547362989697535e-03, -2.444395425501956834e-03, -2.446239425921090723e-03, -2.448079361453039081e-03, -2.449915229310602616e-03, -2.451747026713174422e-03, -2.453574750887098192e-03, -2.455398399065177300e-03, -2.457217968487228170e-03, -2.459033456399790582e-03, -2.460844860056087772e-03, -2.462652176716115769e-03, -2.464455403646766563e-03, -2.466254538121587844e-03, -2.468049577420959075e-03, -2.469840518832006494e-03, -2.471627359648751864e-03, -2.473410097171922957e-03, -2.475188728709018602e-03, -2.476963251574437058e-03, -2.478733663089430477e-03, -2.480499960581802193e-03, -2.482262141386432780e-03, -2.484020202844970833e-03, -2.485774142305809120e-03, -2.487523957124222924e-03, -2.489269644662260323e-03, -2.491011202288936910e-03, -2.492748627379982960e-03, -2.494481917317981339e-03, -2.496211069492464650e-03, -2.497936081299722243e-03, -2.499656950142877410e-03, -2.501373673432046550e-03, -2.503086248584079389e-03, -2.504794673022703831e-03, -2.506498944178623973e-03, -2.508199059489315402e-03, -2.509895016399126683e-03, -2.511586812359398180e-03, -2.513274444828208793e-03, -2.514957911270689940e-03, -2.516637209158733689e-03, -2.518312335971140646e-03, -2.519983289193724902e-03, -2.521650066319095461e-03, -2.523312664846765526e-03, -2.524971082283276966e-03, -2.526625316141970033e-03, -2.528275363943114327e-03, -2.529921223214006386e-03, -2.531562891488762807e-03, -2.533200366308462070e-03, -2.534833645221094226e-03, -2.536462725781644598e-03, -2.538087605552095949e-03, -2.539708282101137918e-03, -2.541324753004631926e-03, -2.542937015845378283e-03, -2.544545068213031197e-03, -2.546148907704214124e-03, -2.547748531922629494e-03, -2.549343938478838400e-03, -2.550935124990401977e-03, -2.552522089081818522e-03, -2.554104828384678744e-03, -2.555683340537440694e-03, -2.557257623185550752e-03, -2.558827673981519096e-03, -2.560393490584868086e-03, -2.561955070661922802e-03, -2.563512411886231281e-03, -2.565065511938225372e-03, -2.566614368505320924e-03, -2.568158979282066968e-03, -2.569699341969874668e-03, -2.571235454277312222e-03, -2.572767313919855931e-03, -2.574294918620006426e-03, -2.575818266107410097e-03, -2.577337354118625773e-03, -2.578852180397236179e-03, -2.580362742693975437e-03, -2.581869038766503553e-03, -2.583371066379537388e-03, -2.584868823304932624e-03, -2.586362307321484703e-03, -2.587851516215053729e-03, -2.589336447778652073e-03, -2.590817099812210179e-03, -2.592293470122894027e-03, -2.593765556524705272e-03, -2.595233356838900617e-03, -2.596696868893782345e-03, -2.598156090524657551e-03, -2.599611019573924448e-03, -2.601061653891141318e-03, -2.602507991332863452e-03, -2.603950029762730316e-03, -2.605387767051572673e-03, -2.606821201077202683e-03, -2.608250329724588670e-03, -2.609675150885740636e-03, -2.611095662459883733e-03, -2.612511862353232312e-03, -2.613923748479140847e-03, -2.615331318758104366e-03, -2.616734571117794016e-03, -2.618133503492792516e-03, -2.619528113825032173e-03, -2.620918400063401103e-03, -2.622304360164040733e-03, -2.623685992090148914e-03, -2.625063293812030223e-03, -2.626436263307233010e-03, -2.627804898560347734e-03, -2.629169197563101506e-03, -2.630529158314463909e-03, -2.631884778820461381e-03, -2.633236057094260046e-03, -2.634582991156286282e-03, -2.635925579034009876e-03, -2.637263818762086275e-03, -2.638597708382400386e-03, -2.639927245943892668e-03, -2.641252429502788119e-03, -2.642573257122387241e-03, -2.643889726873167086e-03, -2.645201836832876234e-03, -2.646509585086337466e-03, -2.647812969725576570e-03, -2.649111988849867441e-03, -2.650406640565599811e-03, -2.651696922986336927e-03, -2.652982834232943486e-03, -2.654264372433370531e-03, -2.655541535722776014e-03, -2.656814322243611533e-03, -2.658082730145427171e-03, -2.659346757585018522e-03, -2.660606402726372471e-03, -2.661861663740711439e-03, -2.663112538806528939e-03, -2.664359026109354520e-03, -2.665601123842094647e-03, -2.666838830204873532e-03, -2.668072143404958112e-03, -2.669301061656860832e-03, -2.670525583182380841e-03, -2.671745706210489936e-03, -2.672961428977423202e-03, -2.674172749726601815e-03, -2.675379666708779195e-03, -2.676582178181881842e-03, -2.677780282411050972e-03, -2.678973977668752237e-03, -2.680163262234717177e-03, -2.681348134395774088e-03, -2.682528592446180651e-03, -2.683704634687325997e-03, -2.684876259427956217e-03, -2.686043464984012603e-03, -2.687206249678682386e-03, -2.688364611842505858e-03, -2.689518549813215472e-03, -2.690668061935804368e-03, -2.691813146562627851e-03, -2.692953802053225151e-03, -2.694090026774428274e-03, -2.695221819100404072e-03, -2.696349177412553626e-03, -2.697472100099532633e-03, -2.698590585557370664e-03, -2.699704632189315907e-03, -2.700814238405899355e-03, -2.701919402625025442e-03, -2.703020123271785129e-03, -2.704116398778709605e-03, -2.705208227585420740e-03, -2.706295608139033977e-03, -2.707378538893919807e-03, -2.708457018311695094e-03, -2.709531044861307209e-03, -2.710600617019074798e-03, -2.711665733268568083e-03, -2.712726392100648330e-03, -2.713782592013580606e-03, -2.714834331512889359e-03, -2.715881609111412635e-03, -2.716924423329312912e-03, -2.717962772694111368e-03, -2.718996655740691781e-03, -2.720026071011115779e-03, -2.721051017054910807e-03, -2.722071492428927882e-03, -2.723087495697296048e-03, -2.724099025431514325e-03, -2.725106080210380581e-03, -2.726108658620128578e-03, -2.727106759254238448e-03, -2.728100380713546422e-03, -2.729089521606297298e-03, -2.730074180548040363e-03, -2.731054356161641532e-03, -2.732030047077405217e-03, -2.733001251932913860e-03, -2.733967969373120744e-03, -2.734930198050384686e-03, -2.735887936624373760e-03, -2.736841183762094790e-03, -2.737789938138015210e-03, -2.738734198433850128e-03, -2.739673963338788275e-03, -2.740609231549300754e-03, -2.741540001769262897e-03, -2.742466272709951237e-03, -2.743388043089963271e-03, -2.744305311635289457e-03, -2.745218077079328821e-03, -2.746126338162828678e-03, -2.747030093633882897e-03, -2.747929342248062439e-03, -2.748824082768233212e-03, -2.749714313964669258e-03, -2.750600034615076610e-03, -2.751481243504474029e-03, -2.752357939425369941e-03, -2.753230121177527821e-03, -2.754097787568226402e-03, -2.754960937412122626e-03, -2.755819569531170118e-03, -2.756673682754827784e-03, -2.757523275919955292e-03, -2.758368347870730243e-03, -2.759208897458803426e-03, -2.760044923543168282e-03, -2.760876424990315291e-03, -2.761703400674051997e-03, -2.762525849475631380e-03, -2.763343770283738839e-03, -2.764157161994438856e-03, -2.764966023511186265e-03, -2.765770353744914731e-03, -2.766570151613966487e-03, -2.767365416044001263e-03, -2.768156145968242617e-03, -2.768942340327205150e-03, -2.769723998068922624e-03, -2.770501118148790531e-03, -2.771273699529641990e-03, -2.772041741181769433e-03, -2.772805242082840467e-03, -2.773564201217955990e-03, -2.774318617579703532e-03, -2.775068490168041031e-03, -2.775813817990361448e-03, -2.776554600061531368e-03, -2.777290835403823342e-03, -2.778022523046917627e-03, -2.778749662028009732e-03, -2.779472251391637821e-03, -2.780190290189860081e-03, -2.780903777482130693e-03, -2.781612712335338432e-03, -2.782317093823868243e-03, -2.783016921029450759e-03, -2.783712193041357457e-03, -2.784402908956285731e-03, -2.785089067878334171e-03, -2.785770668919074992e-03, -2.786447711197559234e-03, -2.787120193840241737e-03, -2.787788115981037953e-03, -2.788451476761349100e-03, -2.789110275329993206e-03, -2.789764510843256284e-03, -2.790414182464859370e-03, -2.791059289366011002e-03, -2.791699830725402880e-03, -2.792335805729072827e-03, -2.792967213570625093e-03, -2.793594053451101990e-03, -2.794216324578983890e-03, -2.794834026170219584e-03, -2.795447157448214572e-03, -2.796055717643857515e-03, -2.796659705995494221e-03, -2.797259121748911156e-03, -2.797853964157410913e-03, -2.798444232481724168e-03, -2.799029925990042210e-03, -2.799611043958051635e-03, -2.800187585668932177e-03, -2.800759550413243516e-03, -2.801326937489113066e-03, -2.801889746202082011e-03, -2.802447975865198990e-03, -2.803001625798961106e-03, -2.803550695331336919e-03, -2.804095183797797666e-03, -2.804635090541266092e-03, -2.805170414912138126e-03, -2.805701156268324090e-03, -2.806227313975159354e-03, -2.806748887405480231e-03, -2.807265875939624414e-03, -2.807778278965375029e-03, -2.808286095878001400e-03, -2.808789326080284639e-03, -2.809287968982438280e-03, -2.809782024002193714e-03, -2.810271490564763327e-03, -2.810756368102809710e-03, -2.811236656056536731e-03, -2.811712353873564198e-03, -2.812183461009038019e-03, -2.812649976925595940e-03, -2.813111901093337183e-03, -2.813569232989857581e-03, -2.814021972100243067e-03, -2.814470117917061004e-03, -2.814913669940367121e-03, -2.815352627677689037e-03, -2.815786990644090874e-03, -2.816216758362074385e-03, -2.816641930361641830e-03, -2.817062506180309858e-03, -2.817478485363083054e-03, -2.817889867462401027e-03, -2.818296652038262441e-03, -2.818698838658147392e-03, -2.819096426896962760e-03, -2.819489416337188793e-03, -2.819877806568739462e-03, -2.820261597189068718e-03, -2.820640787803097189e-03, -2.821015378023210892e-03, -2.821385367469355331e-03, -2.821750755768913637e-03, -2.822111542556772924e-03, -2.822467727475338594e-03, -2.822819310174488807e-03, -2.823166290311594426e-03, -2.823508667551537232e-03, -2.823846441566680004e-03, -2.824179612036872584e-03, -2.824508178649486143e-03, -2.824832141099364174e-03, -2.825151499088859354e-03, -2.825466252327807955e-03, -2.825776400533541993e-03, -2.826081943430900495e-03, -2.826382880752216064e-03, -2.826679212237295791e-03, -2.826970937633469395e-03, -2.827258056695556698e-03, -2.827540569185853746e-03, -2.827818474874179214e-03, -2.828091773537829302e-03, -2.828360464961607659e-03, -2.828624548937786354e-03, -2.828884025266165721e-03, -2.829138893754057013e-03, -2.829389154216193497e-03, -2.829634806474880509e-03, -2.829875850359887465e-03, -2.830112285708461309e-03, -2.830344112365384621e-03, -2.830571330182906666e-03, -2.830793939020774183e-03, -2.831011938746231388e-03, -2.831225329234024306e-03, -2.831434110366391668e-03, -2.831638282033052765e-03, -2.831837844131233906e-03, -2.832032796565656704e-03, -2.832223139248531574e-03, -2.832408872099550796e-03, -2.832589995045931008e-03, -2.832766508022352501e-03, -2.832938410970991302e-03, -2.833105703841543033e-03, -2.833268386591147880e-03, -2.833426459184490345e-03, -2.833579921593702526e-03, -2.833728773798443925e-03, -2.833873015785835087e-03, -2.834012647550504440e-03, -2.834147669094557939e-03, -2.834278080427608988e-03, -2.834403881566744179e-03, -2.834525072536543677e-03, -2.834641653369083386e-03, -2.834753624103920205e-03, -2.834860984788091596e-03, -2.834963735476143335e-03, -2.835061876230076609e-03, -2.835155407119419133e-03, -2.835244328221147962e-03, -2.835328639619750200e-03, -2.835408341407181371e-03, -2.835483433682885798e-03, -2.835553916553797908e-03, -2.835619790134330086e-03, -2.835681054546377883e-03, -2.835737709919317409e-03, -2.835789756390006636e-03, -2.835837194102801880e-03, -2.835880023209499685e-03, -2.835918243869408814e-03, -2.835951856249321196e-03, -2.835980860523478093e-03, -2.836005256873618680e-03, -2.836025045488959218e-03, -2.836040226566194367e-03, -2.836050800309472455e-03, -2.836056766930448395e-03, -2.836058126648225569e-03, -2.836054879689400929e-03, -2.836047026288032909e-03, -2.836034566685644021e-03, -2.836017501131249483e-03, -2.835995829881314285e-03, -2.835969553199793949e-03, -2.835938671358093337e-03, -2.835903184635094401e-03, -2.835863093317142307e-03, -2.835818397698056711e-03, -2.835769098079123952e-03, -2.835715194769073636e-03, -2.835656688084131974e-03, -2.835593578347960636e-03, -2.835525865891697084e-03, -2.835453551053933319e-03, -2.835376634180732363e-03, -2.835295115625604406e-03, -2.835208995749525455e-03, -2.835118274920918682e-03, -2.835022953515686523e-03, -2.834923031917160365e-03, -2.834818510516138711e-03, -2.834709389710877644e-03, -2.834595669907077377e-03, -2.834477351517893096e-03, -2.834354434963932360e-03, -2.834226920673246861e-03, -2.834094809081339796e-03, -2.833958100631162828e-03, -2.833816795773115224e-03, -2.833670894965033445e-03, -2.833520398672207622e-03, -2.833365307367361179e-03, -2.833205621530671212e-03, -2.833041341649737265e-03, -2.832872468219618193e-03, -2.832699001742800936e-03, -2.832520942729199222e-03, -2.832338291696191290e-03, -2.832151049168559614e-03, -2.831959215678536007e-03, -2.831762791765779930e-03, -2.831561777977391076e-03, -2.831356174867881176e-03, -2.831145982999202625e-03, -2.830931202940733301e-03, -2.830711835269277433e-03, -2.830487880569049122e-03, -2.830259339431720911e-03, -2.830026212456348764e-03, -2.829788500249428001e-03, -2.829546203424864684e-03, -2.829299322603995564e-03, -2.829047858415566826e-03, -2.828791811495743203e-03, -2.828531182488075446e-03, -2.828265972043582290e-03, -2.827996180820636831e-03, -2.827721809485048924e-03, -2.827442858710044367e-03, -2.827159329176237579e-03, -2.826871221571645911e-03, -2.826578536591715235e-03, -2.826281274939255756e-03, -2.825979437324519210e-03, -2.825673024465114296e-03, -2.825362037086091675e-03, -2.825046475919865043e-03, -2.824726341706243656e-03, -2.824401635192445338e-03, -2.824072357133078706e-03, -2.823738508290121046e-03, -2.823400089432955614e-03, -2.823057101338357321e-03, -2.822709544790460209e-03, -2.822357420580809493e-03, -2.822000729508312121e-03, -2.821639472379278840e-03, -2.821273650007359579e-03, -2.820903263213604163e-03, -2.820528312826457110e-03, -2.820148799681700385e-03, -2.819764724622491562e-03, -2.819376088499384210e-03, -2.818982892170276283e-03, -2.818585136500449586e-03, -2.818182822362509492e-03, -2.817775950636480353e-03, -2.817364522209714426e-03, -2.816948537976917029e-03, -2.816527998840176027e-03, -2.816102905708917602e-03, -2.815673259499914486e-03, -2.815239061137298545e-03, -2.814800311552577688e-03, -2.814357011684553034e-03, -2.813909162479413893e-03, -2.813456764890690052e-03, -2.812999819879224463e-03, -2.812538328413244793e-03, -2.812072291468261948e-03, -2.811601710027171550e-03, -2.811126585080195826e-03, -2.810646917624845444e-03, -2.810162708666017958e-03, -2.809673959215924516e-03, -2.809180670294062539e-03, -2.808682842927309829e-03, -2.808180478149842167e-03, -2.807673577003136356e-03, -2.807162140536009244e-03, -2.806646169804614694e-03, -2.806125665872369855e-03, -2.805600629810031926e-03, -2.805071062695670830e-03, -2.804536965614671824e-03, -2.803998339659709033e-03, -2.803455185930731584e-03, -2.802907505535068983e-03, -2.802355299587277592e-03, -2.801798569209236478e-03, -2.801237315530123121e-03, -2.800671539686409948e-03, -2.800101242821837009e-03, -2.799526426087464454e-03, -2.798947090641611384e-03, -2.798363237649918733e-03, -2.797774868285239983e-03, -2.797181983727776901e-03, -2.796584585164988476e-03, -2.795982673791586135e-03, -2.795376250809541128e-03, -2.794765317428178197e-03, -2.794149874863992560e-03, -2.793529924340815585e-03, -2.792905467089673403e-03, -2.792276504348913547e-03, -2.791643037364131656e-03, -2.791005067388126811e-03, -2.790362595681025130e-03, -2.789715623510170914e-03, -2.789064152150122315e-03, -2.788408182882741969e-03, -2.787747716997124141e-03, -2.787082755789560030e-03, -2.786413300563619303e-03, -2.785739352630122335e-03, -2.785060913307072124e-03, -2.784377983919740594e-03, -2.783690565800633464e-03, -2.782998660289445151e-03, -2.782302268733143329e-03, -2.781601392485846206e-03, -2.780896032908997725e-03, -2.780186191371153328e-03, -2.779471869248127842e-03, -2.778753067922941269e-03, -2.778029788785850007e-03, -2.777302033234256649e-03, -2.776569802672807993e-03, -2.775833098513373360e-03, -2.775091922174938771e-03, -2.774346275083768281e-03, -2.773596158673278644e-03, -2.772841574384100026e-03, -2.772082523664031340e-03, -2.771319007968003380e-03, -2.770551028758258798e-03, -2.769778587504110115e-03, -2.769001685682064614e-03, -2.768220324775836922e-03, -2.767434506276280921e-03, -2.766644231681462170e-03, -2.765849502496536046e-03, -2.765050320233878711e-03, -2.764246686413035937e-03, -2.763438602560648952e-03, -2.762626070210562855e-03, -2.761809090903771541e-03, -2.760987666188396018e-03, -2.760161797619672692e-03, -2.759331486760091285e-03, -2.758496735179153704e-03, -2.757657544453569632e-03, -2.756813916167182802e-03, -2.755965851910916354e-03, -2.755113353282893831e-03, -2.754256421888284789e-03, -2.753395059339434903e-03, -2.752529267255819125e-03, -2.751659047263969263e-03, -2.750784400997578500e-03, -2.749905330097458019e-03, -2.749021836211455044e-03, -2.748133920994601156e-03, -2.747241586109009509e-03, -2.746344833223839706e-03, -2.745443664015407084e-03, -2.744538080167114626e-03, -2.743628083369383137e-03, -2.742713675319823421e-03, -2.741794857723019434e-03, -2.740871632290759873e-03, -2.739944000741800084e-03, -2.739011964801992601e-03, -2.738075526204300156e-03, -2.737134686688737564e-03, -2.736189448002334431e-03, -2.735239811899240966e-03, -2.734285780140644721e-03, -2.733327354494797905e-03, -2.732364536736949304e-03, -2.731397328649465273e-03, -2.730425732021733894e-03, -2.729449748650145894e-03, -2.728469380338171407e-03, -2.727484628896332652e-03, -2.726495496142127602e-03, -2.725501983900068155e-03, -2.724504094001815868e-03, -2.723501828285895300e-03, -2.722495188597970264e-03, -2.721484176790626985e-03, -2.720468794723530665e-03, -2.719449044263341341e-03, -2.718424927283672691e-03, -2.717396445665200017e-03, -2.716363601295593462e-03, -2.715326396069450785e-03, -2.714284831888430938e-03, -2.713238910661176003e-03, -2.712188634303247439e-03, -2.711134004737257488e-03, -2.710075023892785043e-03, -2.709011693706317534e-03, -2.707944016121413989e-03, -2.706871993088502508e-03, -2.705795626565030750e-03, -2.704714918515422131e-03, -2.703629870910944852e-03, -2.702540485730013306e-03, -2.701446764957814682e-03, -2.700348710586531441e-03, -2.699246324615313559e-03, -2.698139609050268558e-03, -2.697028565904351777e-03, -2.695913197197522069e-03, -2.694793504956681518e-03, -2.693669491215565717e-03, -2.692541158014905966e-03, -2.691408507402333426e-03, -2.690271541432405576e-03, -2.689130262166540292e-03, -2.687984671673049678e-03, -2.686834772027282738e-03, -2.685680565311338724e-03, -2.684522053614228024e-03, -2.683359239031932013e-03, -2.682192123667250395e-03, -2.681020709629924805e-03, -2.679844999036475311e-03, -2.678664994010397735e-03, -2.677480696682035290e-03, -2.676292109188549082e-03, -2.675099233674005719e-03, -2.673902072289354760e-03, -2.672700627192353250e-03, -2.671494900547570928e-03, -2.670284894526596224e-03, -2.669070611307659390e-03, -2.667852053075988987e-03, -2.666629222023520016e-03, -2.665402120349108592e-03, -2.664170750258441304e-03, -2.662935113963952813e-03, -2.661695213684976344e-03, -2.660451051647656946e-03, -2.659202630084878637e-03, -2.657949951236413585e-03, -2.656693017348832776e-03, -2.655431830675434018e-03, -2.654166393476404141e-03, -2.652896708018701900e-03, -2.651622776576002902e-03, -2.650344601428852691e-03, -2.649062184864575242e-03, -2.647775529177188395e-03, -2.646484636667590772e-03, -2.645189509643318046e-03, -2.643890150418861263e-03, -2.642586561315306021e-03, -2.641278744660519821e-03, -2.639966702789181118e-03, -2.638650438042721216e-03, -2.637329952769213240e-03, -2.636005249323584640e-03, -2.634676330067441553e-03, -2.633343197369167679e-03, -2.632005853603775966e-03, -2.630664301153109400e-03, -2.629318542405708736e-03, -2.627968579756774763e-03, -2.626614415608207343e-03, -2.625256052368762829e-03, -2.623893492453740085e-03, -2.622526738285169568e-03, -2.621155792291818103e-03, -2.619780656909123390e-03, -2.618401334579243886e-03, -2.617017827750907442e-03, -2.615630138879622511e-03, -2.614238270427581435e-03, -2.612842224863532077e-03, -2.611442004662983818e-03, -2.610037612308116917e-03, -2.608629050287659349e-03, -2.607216321097084993e-03, -2.605799427238521260e-03, -2.604378371220636337e-03, -2.602953155558830004e-03, -2.601523782775146901e-03, -2.600090255398143386e-03, -2.598652575963136466e-03, -2.597210747011950531e-03, -2.595764771093102968e-03, -2.594314650761721762e-03, -2.592860388579452686e-03, -2.591401987114631041e-03, -2.589939448942206630e-03, -2.588472776643604544e-03, -2.587001972806934631e-03, -2.585527040026920371e-03, -2.584047980904722805e-03, -2.582564798048210281e-03, -2.581077494071772407e-03, -2.579586071596401582e-03, -2.578090533249579805e-03, -2.576590881665325079e-03, -2.575087119484382233e-03, -2.573579249353874238e-03, -2.572067273927434485e-03, -2.570551195865457012e-03, -2.569031017834667169e-03, -2.567506742508331510e-03, -2.565978372566339767e-03, -2.564445910695034841e-03, -2.562909359587325995e-03, -2.561368721942522755e-03, -2.559824000466553919e-03, -2.558275197871836583e-03, -2.556722316877175095e-03, -2.555165360207990472e-03, -2.553604330596157771e-03, -2.552039230779967055e-03, -2.550470063504251331e-03, -2.548896831520343614e-03, -2.547319537585923405e-03, -2.545738184465282539e-03, -2.544152774929016834e-03, -2.542563311754280665e-03, -2.540969797724705864e-03, -2.539372235630214802e-03, -2.537770628267313564e-03, -2.536164978438908927e-03, -2.534555288954254589e-03, -2.532941562629122904e-03, -2.531323802285709041e-03, -2.529702010752506516e-03, -2.528076190864531406e-03, -2.526446345463200481e-03, -2.524812477396231030e-03, -2.523174589517855962e-03, -2.521532684688567501e-03, -2.519886765775366556e-03, -2.518236835651597484e-03, -2.516582897196855285e-03, -2.514924953297361168e-03, -2.513263006845467291e-03, -2.511597060739930842e-03, -2.509927117885932257e-03, -2.508253181195005399e-03, -2.506575253584907449e-03, -2.504893337979860902e-03, -2.503207437310370122e-03, -2.501517554513314583e-03, -2.499823692531771488e-03, -2.498125854315272950e-03, -2.496424042819636851e-03, -2.494718261006936486e-03, -2.493008511845496659e-03, -2.491294798310169506e-03, -2.489577123381878261e-03, -2.487855490047857082e-03, -2.486129901301727379e-03, -2.484400360143316101e-03, -2.482666869578778468e-03, -2.480929432620424934e-03, -2.479188052286933255e-03, -2.477442731603240068e-03, -2.475693473600419896e-03, -2.473940281315902424e-03, -2.472183157793371444e-03, -2.470422106082613509e-03, -2.468657129239775101e-03, -2.466888230327223853e-03, -2.465115412413417580e-03, -2.463338678573170123e-03, -2.461558031887493923e-03, -2.459773475443466449e-03, -2.457985012334549385e-03, -2.456192645660230846e-03, -2.454396378526300330e-03, -2.452596214044733790e-03, -2.450792155333565703e-03, -2.448984205517118051e-03, -2.447172367725875420e-03, -2.445356645096381787e-03, -2.443537040771435239e-03, -2.441713557899992566e-03, -2.439886199637033085e-03, -2.438054969143806702e-03, -2.436219869587634423e-03, -2.434380904142021546e-03, -2.432538075986523645e-03, -2.430691388306753520e-03, -2.428840844294686500e-03, -2.426986447148163015e-03, -2.425128200071173523e-03, -2.423266106273856777e-03, -2.421400168972472500e-03, -2.419530391389235289e-03, -2.417656776752537956e-03, -2.415779328296840511e-03, -2.413898049262685336e-03, -2.412012942896568819e-03, -2.410124012451156025e-03, -2.408231261185171408e-03, -2.406334692363302965e-03, -2.404434309256220023e-03, -2.402530115140899796e-03, -2.400622113300043218e-03, -2.398710307022545053e-03, -2.396794699603308279e-03, -2.394875294343131768e-03, -2.392952094548986969e-03, -2.391025103533675738e-03, -2.389094324616117000e-03, -2.387159761121217944e-03, -2.385221416379756498e-03, -2.383279293728607275e-03, -2.381333396510599762e-03, -2.379383728074420303e-03, -2.377430291774853665e-03, -2.375473090972606525e-03, -2.373512129034233316e-03, -2.371547409332349591e-03, -2.369578935245515803e-03, -2.367606710158073370e-03, -2.365630737460490320e-03, -2.363651020548913732e-03, -2.361667562825733955e-03, -2.359680367698965744e-03, -2.357689438582578727e-03, -2.355694778896523858e-03, -2.353696392066655790e-03, -2.351694281524557666e-03, -2.349688450707844260e-03, -2.347678903059994583e-03, -2.345665642030223073e-03, -2.343648671073746744e-03, -2.341627993651580492e-03, -2.339603613230636404e-03, -2.337575533283588886e-03, -2.335543757288901980e-03, -2.333508288731133383e-03, -2.331469131100397107e-03, -2.329426287892644078e-03, -2.327379762609887645e-03, -2.325329558759650205e-03, -2.323275679855468009e-03, -2.321218129416503882e-03, -2.319156910967833454e-03, -2.317092028040326768e-03, -2.315023484170496051e-03, -2.312951282900756363e-03, -2.310875427779288550e-03, -2.308795922359894830e-03, -2.306712770202277649e-03, -2.304625974871877050e-03, -2.302535539939736236e-03, -2.300441468982784322e-03, -2.298343765583670678e-03, -2.296242433330620072e-03, -2.294137475817782223e-03, -2.292028896644808088e-03, -2.289916699417205055e-03, -2.287800887746180810e-03, -2.285681465248496757e-03, -2.283558435546728660e-03, -2.281431802269147380e-03, -2.279301569049547570e-03, -2.277167739527536511e-03, -2.275030317348374943e-03, -2.272889306162858246e-03, -2.270744709627548017e-03, -2.268596531404665391e-03, -2.266444775161916697e-03, -2.264289444572787496e-03, -2.262130543316335281e-03, -2.259968075077290091e-03, -2.257802043545890144e-03, -2.255632452417936050e-03, -2.253459305395110000e-03, -2.251282606184410243e-03, -2.249102358498449462e-03, -2.246918566055550615e-03, -2.244731232579566093e-03, -2.242540361799809628e-03, -2.240345957451287014e-03, -2.238148023274498348e-03, -2.235946563015562064e-03, -2.233741580425984211e-03, -2.231533079262946855e-03, -2.229321063289161926e-03, -2.227105536272784049e-03, -2.224886501987410111e-03, -2.222663964212466970e-03, -2.220437926732523638e-03, -2.218208393337888461e-03, -2.215975367824185409e-03, -2.213738853992653320e-03, -2.211498855650016662e-03, -2.209255376608318562e-03, -2.207008420685219185e-03, -2.204757991703831799e-03, -2.202504093492586162e-03, -2.200246729885496112e-03, -2.197985904722013408e-03, -2.195721621846878115e-03, -2.193453885110408300e-03, -2.191182698368333067e-03, -2.188908065481652912e-03, -2.186629990316922047e-03, -2.184348476746090974e-03, -2.182063528646364242e-03, -2.179775149900518329e-03, -2.177483344396474903e-03, -2.175188116027866776e-03, -2.172889468693405598e-03, -2.170587406297208848e-03, -2.168281932748839305e-03, -2.165973051963217873e-03, -2.163660767860453582e-03, -2.161345084366146727e-03, -2.159026005411204992e-03, -2.156703534931722448e-03, -2.154377676869264485e-03, -2.152048435170624517e-03, -2.149715813787985309e-03, -2.147379816678697800e-03, -2.145040447805346591e-03, -2.142697711136119006e-03, -2.140351610644164546e-03, -2.138002150307942266e-03, -2.135649334111286695e-03, -2.133293166043222656e-03, -2.130933650098086260e-03, -2.128570790275289854e-03, -2.126204590579640341e-03, -2.123835055021159202e-03, -2.121462187614955863e-03, -2.119085992381481397e-03, -2.116706473346417500e-03, -2.114323634540520372e-03, -2.111937479999704409e-03, -2.109548013765372241e-03, -2.107155239883748594e-03, -2.104759162406428033e-03, -2.102359785390179800e-03, -2.099957112896771311e-03, -2.097551148993331577e-03, -2.095141897751928804e-03, -2.092729363249924267e-03, -2.090313549569806223e-03, -2.087894460799032473e-03, -2.085472101030342185e-03, -2.083046474361572014e-03, -2.080617584895516018e-03, -2.078185436740214928e-03, -2.075750034008808260e-03, -2.073311380819356509e-03, -2.070869481295144286e-03, -2.068424339564541546e-03, -2.065975959760808431e-03, -2.063524346022476905e-03, -2.061069502492865468e-03, -2.058611433320702358e-03, -2.056150142659426885e-03, -2.053685634667562401e-03, -2.051217913508763570e-03, -2.048746983351683228e-03, -2.046272848369842280e-03, -2.043795512741900747e-03, -2.041314980651466951e-03, -2.038831256287184680e-03, -2.036344343842517654e-03, -2.033854247516053097e-03, -2.031360971511364695e-03, -2.028864520036786218e-03, -2.026364897305790117e-03, -2.023862107536781967e-03, -2.021356154953000278e-03, -2.018847043782545994e-03, -2.016334778258769764e-03, -2.013819362619564610e-03, -2.011300801108000403e-03, -2.008779097971822095e-03, -2.006254257463832655e-03, -2.003726283841729145e-03, -2.001195181367908856e-03, -1.998660954309818862e-03, -1.996123606939752184e-03, -1.993583143534718126e-03, -1.991039568376718524e-03, -1.988492885752601164e-03, -1.985943099953904525e-03, -1.983390215277134900e-03, -1.980834236023623282e-03, -1.978275166499366203e-03, -1.975713011015371376e-03, -1.973147773887224017e-03, -1.970579459435472386e-03, -1.968008071985459084e-03, -1.965433615867057376e-03, -1.962856095415324749e-03, -1.960275514969730092e-03, -1.957691878874559185e-03, -1.955105191478962411e-03, -1.952515457136824641e-03, -1.949922680206593291e-03, -1.947326865051627210e-03, -1.944728016039980493e-03, -1.942126137544263487e-03, -1.939521233941961112e-03, -1.936913309615193252e-03, -1.934302368950833583e-03, -1.931688416340308781e-03, -1.929071456179680052e-03, -1.926451492870012629e-03, -1.923828530816685568e-03, -1.921202574429786833e-03, -1.918573628124169020e-03, -1.915941696319267869e-03, -1.913306783439202652e-03, -1.910668893912535271e-03, -1.908028032172629342e-03, -1.905384202657451351e-03, -1.902737409809389380e-03, -1.900087658075611538e-03, -1.897434951907858453e-03, -1.894779295762340264e-03, -1.892120694099778695e-03, -1.889459151385805384e-03, -1.886794672090204468e-03, -1.884127260687594755e-03, -1.881456921656908662e-03, -1.878783659481779921e-03, -1.876107478650375316e-03, -1.873428383655200173e-03, -1.870746378993445305e-03, -1.868061469166811157e-03, -1.865373658681310698e-03, -1.862682952047627202e-03, -1.859989353780920835e-03, -1.857292868400644767e-03, -1.854593500430902746e-03, -1.851891254400254158e-03, -1.849186134841533614e-03, -1.846478146292181415e-03, -1.843767293294093501e-03, -1.841053580393405909e-03, -1.838337012140908939e-03, -1.835617593091510040e-03, -1.832895327804944831e-03, -1.830170220844982596e-03, -1.827442276779838934e-03, -1.824711500182238421e-03, -1.821977895629279306e-03, -1.819241467702232282e-03, -1.816502220986926895e-03, -1.813760160073472037e-03, -1.811015289556387785e-03, -1.808267614034335651e-03, -1.805517138110503692e-03, -1.802763866392390535e-03, -1.800007803491686115e-03, -1.797248954024329142e-03, -1.794487322610915188e-03, -1.791722913875970925e-03, -1.788955732448363955e-03, -1.786185782961352249e-03, -1.783413070052403734e-03, -1.780637598363309267e-03, -1.777859372539919609e-03, -1.775078397232519476e-03, -1.772294677095624573e-03, -1.769508216787798365e-03, -1.766719020972003142e-03, -1.763927094315416357e-03, -1.761132441489233081e-03, -1.758335067169040271e-03, -1.755534976034590173e-03, -1.752732172769656772e-03, -1.749926662062358668e-03, -1.747118448604980615e-03, -1.744307537093778369e-03, -1.741493932229413013e-03, -1.738677638716427075e-03, -1.735858661263690352e-03, -1.733037004584202798e-03, -1.730212673394889399e-03, -1.727385672416970096e-03, -1.724556006375775261e-03, -1.721723680000540775e-03, -1.718888698024766040e-03, -1.716051065186041799e-03, -1.713210786225839374e-03, -1.710367865889879293e-03, -1.707522308927870427e-03, -1.704674120093634462e-03, -1.701823304144912041e-03, -1.698969865843404830e-03, -1.696113809955223945e-03, -1.693255141250097837e-03, -1.690393864501796859e-03, -1.687529984488430777e-03, -1.684663505991749457e-03, -1.681794433797541852e-03, -1.678922772695697800e-03, -1.676048527480001596e-03, -1.673171702948282255e-03, -1.670292303902109945e-03, -1.667410335147204506e-03, -1.664525801493208206e-03, -1.661638707753506630e-03, -1.658749058745597306e-03, -1.655856859290887181e-03, -1.652962114214491822e-03, -1.650064828345619659e-03, -1.647165006517365554e-03, -1.644262653566506104e-03, -1.641357774333954567e-03, -1.638450373664226793e-03, -1.635540456405882269e-03, -1.632628027411334387e-03, -1.629713091536634040e-03, -1.626795653641872072e-03, -1.623875718590941626e-03, -1.620953291251374861e-03, -1.618028376494693582e-03, -1.615100979196222976e-03, -1.612171104234879759e-03, -1.609238756493568774e-03, -1.606303940858955963e-03, -1.603366662221283184e-03, -1.600426925474814901e-03, -1.597484735517300204e-03, -1.594540097250423836e-03, -1.591593015579612557e-03, -1.588643495413747178e-03, -1.585691541665885289e-03, -1.582737159252410597e-03, -1.579780353093461400e-03, -1.576821128113008652e-03, -1.573859489238699835e-03, -1.570895441401667491e-03, -1.567928989536905224e-03, -1.564960138583009874e-03, -1.561988893482281916e-03, -1.559015259180484766e-03, -1.556039240627192163e-03, -1.553060842775631171e-03, -1.550080070582493747e-03, -1.547096929008030634e-03, -1.544111423016486778e-03, -1.541123557575299662e-03, -1.538133337655566389e-03, -1.535140768232092032e-03, -1.532145854283183204e-03, -1.529148600790774040e-03, -1.526149012740151247e-03, -1.523147095120353520e-03, -1.520142852923943863e-03, -1.517136291146819202e-03, -1.514127414788597010e-03, -1.511116228852410178e-03, -1.508102738344682583e-03, -1.505086948275544990e-03, -1.502068863658607804e-03, -1.499048489510766777e-03, -1.496025830852637994e-03, -1.493000892708055234e-03, -1.489973680104486739e-03, -1.486944198072856754e-03, -1.483912451647320880e-03, -1.480878445865657688e-03, -1.477842185769081369e-03, -1.474803676402002776e-03, -1.471762922812440552e-03, -1.468719930051811881e-03, -1.465674703174713045e-03, -1.462627247239325998e-03, -1.459577567307192639e-03, -1.456525668443028323e-03, -1.453471555715090931e-03, -1.450415234194920655e-03, -1.447356708957461000e-03, -1.444295985080843239e-03, -1.441233067646456459e-03, -1.438167961739408342e-03, -1.435100672447694016e-03, -1.432031204862671808e-03, -1.428959564079131973e-03, -1.425885755195124968e-03, -1.422809783311778211e-03, -1.419731653533675558e-03, -1.416651370968596661e-03, -1.413568940727618663e-03, -1.410484367924852737e-03, -1.407397657677851317e-03, -1.404308815107363929e-03, -1.401217845337230077e-03, -1.398124753494422827e-03, -1.395029544709497880e-03, -1.391932224115739443e-03, -1.388832796849865606e-03, -1.385731268051769872e-03, -1.382627642864294555e-03, -1.379521926433703279e-03, -1.376414123909129768e-03, -1.373304240443051424e-03, -1.370192281191058396e-03, -1.367078251311657769e-03, -1.363962155966671900e-03, -1.360844000321015726e-03, -1.357723789542492499e-03, -1.354601528802190169e-03, -1.351477223274271918e-03, -1.348350878135757148e-03, -1.345222498566931314e-03, -1.342092089751119538e-03, -1.338959656874486471e-03, -1.335825205126502492e-03, -1.332688739699305772e-03, -1.329550265788542306e-03, -1.326409788592439361e-03, -1.323267313312291842e-03, -1.320122845152520846e-03, -1.316976389320529241e-03, -1.313827951026473552e-03, -1.310677535483683979e-03, -1.307525147908448863e-03, -1.304370793519782660e-03, -1.301214477539848783e-03, -1.298056205193671205e-03, -1.294895981709252202e-03, -1.291733812317374594e-03, -1.288569702251648368e-03, -1.285403656748988375e-03, -1.282235681048784484e-03, -1.279065780393294060e-03, -1.275893960028064589e-03, -1.272720225201011022e-03, -1.269544581163240199e-03, -1.266367033168428521e-03, -1.263187586473294224e-03, -1.260006246337367318e-03, -1.256823018022792471e-03, -1.253637906794727351e-03, -1.250450917921122965e-03, -1.247262056672517440e-03, -1.244071328322426560e-03, -1.240878738147141447e-03, -1.237684291425511290e-03, -1.234487993439343416e-03, -1.231289849473185148e-03, -1.228089864814116286e-03, -1.224888044752224644e-03, -1.221684394580031417e-03, -1.218478919592978641e-03, -1.215271625089213870e-03, -1.212062516369359676e-03, -1.208851598736938437e-03, -1.205638877498143788e-03, -1.202424357961626817e-03, -1.199208045438903943e-03, -1.195989945244140939e-03, -1.192770062693935445e-03, -1.189548403107719421e-03, -1.186324971807557055e-03, -1.183099774117904934e-03, -1.179872815366116851e-03, -1.176644100881774849e-03, -1.173413635997558758e-03, -1.170181426048290570e-03, -1.166947476371363356e-03, -1.163711792307163670e-03, -1.160474379198195294e-03, -1.157235242389579926e-03, -1.153994387229112691e-03, -1.150751819067121840e-03, -1.147507543256230233e-03, -1.144261565151781859e-03, -1.141013890111555393e-03, -1.137764523495886056e-03, -1.134513470667377006e-03, -1.131260736991317834e-03, -1.128006327835463177e-03, -1.124750248569877020e-03, -1.121492504566994714e-03, -1.118233101202133423e-03, -1.114972043852514383e-03, -1.111709337898153039e-03, -1.108444988721184231e-03, -1.105179001706356164e-03, -1.101911382240811175e-03, -1.098642135713864560e-03, -1.095371267517417872e-03, -1.092098783045735788e-03, -1.088824687695233179e-03, -1.085548986864882546e-03, -1.082271685955993063e-03, -1.078992790371994387e-03, -1.075712305518855593e-03, -1.072430236804854456e-03, -1.069146589640351938e-03, -1.065861369438227384e-03, -1.062574581613644339e-03, -1.059286231583828931e-03, -1.055996324768556033e-03, -1.052704866589508712e-03, -1.049411862471121525e-03, -1.046117317839633789e-03, -1.042821238123594826e-03, -1.039523628753923372e-03, -1.036224495163743211e-03, -1.032923842788178483e-03, -1.029621677064757870e-03, -1.026318003433204481e-03, -1.023012827335198624e-03, -1.019706154214811058e-03, -1.016397989518197896e-03, -1.013088338693742636e-03, -1.009777207191825876e-03, -1.006464600464883428e-03, -1.003150523967926084e-03, -9.998349831576327888e-04, -9.965179834928636869e-04, -9.931995304347271229e-04, -9.898796294463454559e-04, -9.865582859929940534e-04, -9.832355055417996668e-04, -9.799112935621751962e-04, -9.765856555255805153e-04, -9.732585969053034625e-04, -9.699301231768832224e-04, -9.666002398178943520e-04, -9.632689523077717910e-04, -9.599362661278904420e-04, -9.566021867620654213e-04, -9.532667196955849510e-04, -9.499298704160166794e-04, -9.465916444128952148e-04, -9.432520471775017066e-04, -9.399110842033646385e-04, -9.365687609856617824e-04, -9.332250830217323758e-04, -9.298800558108362120e-04, -9.265336848539372332e-04, -9.231859756541226829e-04, -9.198369337163863745e-04, -9.164865645473846368e-04, -9.131348736558860413e-04, -9.097818665525220358e-04, -9.064275487495745487e-04, -9.030719257613985035e-04, -8.997150031041938100e-04, -8.963567862957773575e-04, -8.929972808560855419e-04, -8.896364923065111681e-04, -8.862744261707667997e-04, -8.829110879739248069e-04, -8.795464832429214118e-04, -8.761806175066246677e-04, -8.728134962956767082e-04, -8.694451251422595593e-04, -8.660755095805321808e-04, -8.627046551463297096e-04, -8.593325673772939967e-04, -8.559592518125713322e-04, -8.525847139932532818e-04, -8.492089594621398969e-04, -8.458319937635809874e-04, -8.424538224435476792e-04, -8.390744510501343999e-04, -8.356938851326678810e-04, -8.323121302421339004e-04, -8.289291919316253828e-04, -8.255450757553536075e-04, -8.221597872695469034e-04, -8.187733320317564347e-04, -8.153857156013790027e-04, -8.119969435394212322e-04, -8.086070214082627817e-04, -8.052159547721026009e-04, -8.018237491967206230e-04, -7.984304102492466131e-04, -7.950359434985959086e-04, -7.916403545152419542e-04, -7.882436488709747410e-04, -7.848458321393478234e-04, -7.814469098954469504e-04, -7.780468877156431927e-04, -7.746457711781226836e-04, -7.712435658622681907e-04, -7.678402773491801829e-04, -7.644359112214411250e-04, -7.610304730628770619e-04, -7.576239684590092968e-04, -7.542164029968088197e-04, -7.508077822644649386e-04, -7.473981118518338140e-04, -7.439873973501971152e-04, -7.405756443520224120e-04, -7.371628584514177806e-04, -7.337490452438919777e-04, -7.303342103261101703e-04, -7.269183592963527696e-04, -7.235014977541926644e-04, -7.200836313006418049e-04, -7.166647655379147384e-04, -7.132449060694911677e-04, -7.098240585006505713e-04, -7.064022284375302482e-04, -7.029794214876699133e-04, -6.995556432600650394e-04, -6.961308993649332122e-04, -6.927051954138595214e-04, -6.892785370194798658e-04, -6.858509297959274270e-04, -6.824223793585998919e-04, -6.789928913239185425e-04, -6.755624713097789589e-04, -6.721311249353037129e-04, -6.686988578206956753e-04, -6.652656755872909250e-04, -6.618315838580977059e-04, -6.583965882567787949e-04, -6.549606944085712302e-04, -6.515239079395880855e-04, -6.480862344773372606e-04, -6.446476796504863179e-04, -6.412082490886295959e-04, -6.377679484227318646e-04, -6.343267832848877410e-04, -6.308847593080895615e-04, -6.274418821266711460e-04, -6.239981573760739354e-04, -6.205535906926046719e-04, -6.171081877138874039e-04, -6.136619540786245270e-04, -6.102148954263551155e-04, -6.067670173979073604e-04, -6.033183256351627548e-04, -5.998688257808113900e-04, -5.964185234788831058e-04, -5.929674243740420004e-04, -5.895155341125093030e-04, -5.860628583410478019e-04, -5.826094027074861645e-04, -5.791551728608009030e-04, -5.757001744509373728e-04, -5.722444131285839329e-04, -5.687878945456107229e-04, -5.653306243547651100e-04, -5.618726082098072150e-04, -5.584138517652012393e-04, -5.549543606765558685e-04, -5.514941406003989743e-04, -5.480331971940018664e-04, -5.445715361154537760e-04, -5.411091630241910561e-04, -5.376460835800603213e-04, -5.341823034438523098e-04, -5.307178282773675855e-04, -5.272526637431773633e-04, -5.237868155047678163e-04, -5.203202892262202362e-04, -5.168530905726686749e-04, -5.133852252100579508e-04, -5.099166988048993779e-04, -5.064475170247284075e-04, -5.029776855378653450e-04, -4.995072100131689105e-04, -4.960360961204949648e-04, -4.925643495304497452e-04, -4.890919759141615321e-04, -4.856189809437183960e-04, -4.821453702919393223e-04, -4.786711496321268506e-04, -4.751963246386035379e-04, -4.717209009860793265e-04, -4.682448843501872487e-04, -4.647682804072407817e-04, -4.612910948339912038e-04, -4.578133333080866454e-04, -4.543350015078247823e-04, -4.508561051119169675e-04, -4.473766497999401271e-04, -4.438966412520976390e-04, -4.404160851489726230e-04, -4.369349871719911660e-04, -4.334533530030952727e-04, -4.299711883248969304e-04, -4.264884988204273872e-04, -4.230052901732135346e-04, -4.195215680678027691e-04, -4.160373381888339940e-04, -4.125526062215604216e-04, -4.090673778519254671e-04, -4.055816587663945349e-04, -4.020954546517140006e-04, -3.986087711953697739e-04, -3.951216140852618756e-04, -3.916339890098553583e-04, -3.881459016578616057e-04, -3.846573577186896309e-04, -3.811683628822060891e-04, -3.776789228384962106e-04, -3.741890432783162384e-04, -3.706987298928543072e-04, -3.672079883734843302e-04, -3.637168244122262421e-04, -3.602252437015040056e-04, -3.567332519338999313e-04, -3.532408548026925500e-04, -3.497480580012215417e-04, -3.462548672234304868e-04, -3.427612881636151148e-04, -3.392673265161861890e-04, -3.357729879761244918e-04, -3.322782782387399153e-04, -3.287832029994301720e-04, -3.252877679541330154e-04, -3.217919787990891796e-04, -3.182958412305961562e-04, -3.147993609454675717e-04, -3.113025436407890786e-04, -3.078053950136776088e-04, -3.043079207618153972e-04, -3.008101265828170786e-04, -2.973120181747683196e-04, -2.938136012359808427e-04, -2.903148814646713404e-04, -2.868158645598101338e-04, -2.833165562200995837e-04, -2.798169621445075177e-04, -2.763170880323401971e-04, -2.728169395830717719e-04, -2.693165224961078705e-04, -2.658158424712363027e-04, -2.623149052083138875e-04, -2.588137164074058821e-04, -2.553122817684704243e-04, -2.518106069918130303e-04, -2.483086977778475824e-04, -2.448065598269264886e-04, -2.413041988394121857e-04, -2.378016205162142803e-04, -2.342988305578423355e-04, -2.307958346649437707e-04, -2.272926385383728439e-04, -2.237892478789462456e-04, -2.202856683875910110e-04, -2.167819057650225930e-04, -2.132779657122044561e-04, -2.097738539301023414e-04, -2.062695761194452003e-04, -2.027651379811798004e-04, -1.992605452162300055e-04, -1.957558035252520985e-04, -1.922509186090949976e-04, -1.887458961685552542e-04, -1.852407419041351402e-04, -1.817354615165787859e-04, -1.782300607062392225e-04, -1.747245451736147376e-04, -1.712189206191060402e-04, -1.677131927427721804e-04, -1.642073672447909825e-04, -1.607014498252141781e-04, -1.571954461837239486e-04, -1.536893620200938462e-04, -1.501832030339431958e-04, -1.466769749244949106e-04, -1.431706833910336763e-04, -1.396643341326643908e-04, -1.361579328480663482e-04, -1.326514852359532122e-04, -1.291449969947529590e-04, -1.256384738227524559e-04, -1.221319214178561720e-04, -1.186253454776525453e-04, -1.151187516999542401e-04, -1.116121457818490911e-04, -1.081055334202389920e-04, -1.045989203119093122e-04, -1.010923121533618209e-04, -9.758571464057171714e-05, -9.407913346944825361e-05, -9.057257433551107486e-05, -8.706604293403884796e-05, -8.355954495974654973e-05, -8.005308610724546660e-05, -7.654667207079938465e-05, -7.304030854415926232e-05, -6.953400122063141322e-05, -6.602775579361685597e-05, -6.252157795558446643e-05, -5.901547339892209662e-05, -5.550944781561508178e-05, -5.200350689700194241e-05, -4.849765633431279239e-05, -4.499190181803436914e-05, -4.148624903844819770e-05, -3.798070368538684178e-05, -3.447527144799013445e-05, -3.096995801516508990e-05, -2.746476907534200541e-05, -2.395971031623075979e-05, -2.045478742528069807e-05, -1.695000608943698079e-05, -1.344537199489667744e-05, -9.940890827568559697e-06, -6.436568272829608231e-06, -2.932410015281051130e-06, 5.715782607135131071e-07, 4.075390871740866264e-06, 7.579022134409479251e-06, 1.108246636637472267e-05, 1.458571788580093692e-05, 1.808877101129261549e-05, 2.159162006205983040e-05, 2.509425935816175511e-05, 2.859668322004728122e-05, 3.209888596879841005e-05, 3.560086192637390670e-05, 3.910260541514962547e-05, 4.260411075824045691e-05, 4.610537227935318462e-05, 4.960638430302965151e-05, 5.310714115457844148e-05, 5.660763715953678990e-05, 6.010786664461727506e-05, 6.360782393724875340e-05, 6.710750336511599374e-05, 7.060689925718486497e-05, 7.410600594277440127e-05, 7.760481775226836401e-05, 8.110332901657820934e-05, 8.460153406738596296e-05, 8.809942723738843672e-05, 9.159700285983731003e-05, 9.509425526878246551e-05, 9.859117879931631389e-05, 1.020877677871131844e-04, 1.055840165686736630e-04, 1.090799194815673186e-04, 1.125754708639742883e-04, 1.160706650549275023e-04, 1.195654963945575231e-04, 1.230599592235534674e-04, 1.265540478837982668e-04, 1.300477567178300498e-04, 1.335410800690867378e-04, 1.370340122821489472e-04, 1.405265477022793930e-04, 1.440186806756688673e-04, 1.475104055496768507e-04, 1.510017166723745486e-04, 1.544926083927861528e-04, 1.579830750611341424e-04, 1.614731110283788233e-04, 1.649627106464616772e-04, 1.684518682685488193e-04, 1.719405782484945350e-04, 1.754288349415512969e-04, 1.789166327034438016e-04, 1.824039658913914814e-04, 1.858908288636502385e-04, 1.893772159790535839e-04, 1.928631215979570315e-04, 1.963485400817008492e-04, 1.998334657925425939e-04, 2.033178930938226423e-04, 2.068018163502038540e-04, 2.102852299272172634e-04, 2.137681281915796154e-04, 2.172505055110474320e-04, 2.207323562547399418e-04, 2.242136747926773996e-04, 2.276944554960260076e-04, 2.311746927372623349e-04, 2.346543808901035760e-04, 2.381335143289742588e-04, 2.416120874300240395e-04, 2.450900945702038270e-04, 2.485675301279766125e-04, 2.520443884827820637e-04, 2.555206640152754560e-04, 2.589963511075731354e-04, 2.624714441427961780e-04, 2.659459375053090232e-04, 2.694198255809640693e-04, 2.728931027566441946e-04, 2.763657634205039381e-04, 2.798378019622133907e-04, 2.833092127724994155e-04, 2.867799902433894300e-04, 2.902501287684512861e-04, 2.937196227423375262e-04, 2.971884665610286230e-04, 3.006566546220718842e-04, 3.041241813240518196e-04, 3.075910410672902102e-04, 3.110572282529334271e-04, 3.145227372839626365e-04, 3.179875625646623786e-04, 3.214516985005522621e-04, 3.249151394985506794e-04, 3.283778799672174508e-04, 3.318399143162966704e-04, 3.353012369569562069e-04, 3.387618423020342506e-04, 3.422217247655795036e-04, 3.456808787631710737e-04, 3.491392987117718900e-04, 3.525969790299724859e-04, 3.560539141379195503e-04, 3.595100984567845058e-04, 3.629655264097008012e-04, 3.664201924212328698e-04, 3.698740909173040838e-04, 3.733272163254420010e-04, 3.767795630746311299e-04, 3.802311255956292461e-04, 3.836818983205137618e-04, 3.871318756829250749e-04, 3.905810521183039011e-04, 3.940294220634377523e-04, 3.974769799567013035e-04, 4.009237202382229812e-04, 4.043696373498108579e-04, 4.078147257344268140e-04, 4.112589798371941953e-04, 4.147023941045629232e-04, 4.181449629846223956e-04, 4.215866809273443477e-04, 4.250275423840517560e-04, 4.284675418080425798e-04, 4.319066736540630555e-04, 4.353449323785431313e-04, 4.387823124398414426e-04, 4.422188082977877247e-04, 4.456544144139241558e-04, 4.490891252517472429e-04, 4.525229352762522939e-04, 4.559558389541744903e-04, 4.593878307542260020e-04, 4.628189051466514103e-04, 4.662490566034551190e-04, 4.696782795986512637e-04, 4.731065686077292535e-04, 4.765339181083567141e-04, 4.799603225794621983e-04, 4.833857765022502159e-04, 4.868102743596647167e-04, 4.902338106363256101e-04, 4.936563798186916667e-04, 4.970779763952956273e-04, 5.004985948562962108e-04, 5.039182296937936168e-04, 5.073368754016814239e-04, 5.107545264759684889e-04, 5.141711774143211972e-04, 5.175868227163087087e-04, 5.210014568835553972e-04, 5.244150744196854471e-04, 5.278276698297884508e-04, 5.312392376213441242e-04, 5.346497723037776754e-04, 5.380592683880112709e-04, 5.414677203874578145e-04, 5.448751228171224694e-04, 5.482814701942917771e-04, 5.516867570380111800e-04, 5.550909778693249559e-04, 5.584941272115075865e-04, 5.618961995896233543e-04, 5.652971895307543505e-04, 5.686970915642471308e-04, 5.720959002212580016e-04, 5.754936100349905678e-04, 5.788902155409391369e-04, 5.822857112764343295e-04, 5.856800917808809535e-04, 5.890733515959971790e-04, 5.924654852652916272e-04, 5.958564873346774635e-04, 5.992463523519469919e-04, 6.026350748670186372e-04, 6.060226494321618081e-04, 6.094090706015549766e-04, 6.127943329315260453e-04, 6.161784309807806807e-04, 6.195613593099605007e-04, 6.229431124818815991e-04, 6.263236850617654805e-04, 6.297030716167971399e-04, 6.330812667163556720e-04, 6.364582649322595180e-04, 6.398340608383100165e-04, 6.432086490106126526e-04, 6.465820240274265706e-04, 6.499541804694080856e-04, 6.533251129195332720e-04, 6.566948159625871952e-04, 6.600632841860757261e-04, 6.634305121797030641e-04, 6.667964945353097202e-04, 6.701612258471047537e-04, 6.735247007115222236e-04, 6.768869137275364744e-04, 6.802478594962107833e-04, 6.836075326209413048e-04, 6.869659277076834531e-04, 6.903230393645144259e-04, 6.936788622018643562e-04, 6.970333908326761243e-04, 7.003866198723395463e-04, 7.037385439381767032e-04, 7.070891576504175066e-04, 7.104384556313212773e-04, 7.137864325058487346e-04, 7.171330829011489513e-04, 7.204784014467964688e-04, 7.238223827750250514e-04, 7.271650215202776334e-04, 7.305063123194531927e-04, 7.338462498121242411e-04, 7.371848286401127930e-04, 7.405220434477132775e-04, 7.438578888819233651e-04, 7.471923595920151656e-04, 7.505254502297569472e-04, 7.538571554496509026e-04, 7.571874699084904688e-04, 7.605163882656018875e-04, 7.638439051830594193e-04, 7.671700153251938747e-04, 7.704947133592505082e-04, 7.738179939545208972e-04, 7.771398517833058225e-04, 7.804602815204137161e-04, 7.837792778430876942e-04, 7.870968354311661279e-04, 7.904129489673132527e-04, 7.937276131365800669e-04, 7.970408226267138713e-04, 8.003525721280163466e-04, 8.036628563336475645e-04, 8.069716699391868853e-04, 8.102790076428770119e-04, 8.135848641457607078e-04, 8.168892341516333089e-04, 8.201921123665197044e-04, 8.234934934995811638e-04, 8.267933722625992561e-04, 8.300917433699117739e-04, 8.333886015386426926e-04, 8.366839414885645851e-04, 8.399777579424054508e-04, 8.432700456254033257e-04, 8.465607992655468667e-04, 8.498500135938026005e-04, 8.531376833436813507e-04, 8.564238032514546453e-04, 8.597083680564080940e-04, 8.629913725003953481e-04, 8.662728113280564581e-04, 8.695526792870688672e-04, 8.728309711276969248e-04, 8.761076816030332302e-04, 8.793828054692134129e-04, 8.826563374849305185e-04, 8.859282724120074674e-04, 8.891986050149087301e-04, 8.924673300609657330e-04, 8.957344423205947830e-04, 8.989999365668813842e-04, 9.022638075757961028e-04, 9.055260501264265861e-04, 9.087866590005525555e-04, 9.120456289828614543e-04, 9.153029548611855623e-04, 9.185586314260716766e-04, 9.218126534710765563e-04, 9.250650157926298793e-04, 9.283157131902674544e-04, 9.315647404665612901e-04, 9.348120924266130555e-04, 9.380577638789531006e-04, 9.413017496350224245e-04, 9.445440445091115265e-04, 9.477846433185201092e-04, 9.510235408837805320e-04, 9.542607320282272751e-04, 9.574962115783006242e-04, 9.607299743634059412e-04, 9.639620152162104100e-04, 9.671923289722262696e-04, 9.704209104700216911e-04, 9.736477545514601699e-04, 9.768728560612643507e-04, 9.800962098472447946e-04, 9.833178107605286371e-04, 9.865376536551293766e-04, 9.897557333881723887e-04, 9.929720448201230423e-04, 9.961865828142836294e-04, 9.993993422373866412e-04, 1.002610317959093215e-03, 1.005819504852217350e-03, 1.009026897792947731e-03, 1.012232491660436384e-03, 1.015436281337004894e-03, 1.018638261708381407e-03, 1.021838427663271289e-03, 1.025036774093586976e-03, 1.028233295894660478e-03, 1.031427987964833332e-03, 1.034620845205670193e-03, 1.037811862522191935e-03, 1.041001034822370414e-03, 1.044188357017716536e-03, 1.047373824022788252e-03, 1.050557430755410648e-03, 1.053739172136970194e-03, 1.056919043091638678e-03, 1.060097038547309087e-03, 1.063273153435095788e-03, 1.066447382689288560e-03, 1.069619721247487901e-03, 1.072790164050835314e-03, 1.075958706043586783e-03, 1.079125342173413958e-03, 1.082290067391264952e-03, 1.085452876651658155e-03, 1.088613764912261129e-03, 1.091772727134115691e-03, 1.094929758281787315e-03, 1.098084853323295744e-03, 1.101238007229640107e-03, 1.104389214975641997e-03, 1.107538471539471457e-03, 1.110685771902570869e-03, 1.113831111049885022e-03, 1.116974483969727320e-03, 1.120115885654062110e-03, 1.123255311098099625e-03, 1.126392755300506532e-03, 1.129528213263633401e-03, 1.132661679993090349e-03, 1.135793150497977754e-03, 1.138922619791094860e-03, 1.142050082888534067e-03, 1.145175534809892348e-03, 1.148298970578494598e-03, 1.151420385220909212e-03, 1.154539773767517289e-03, 1.157657131252028430e-03, 1.160772452711702346e-03, 1.163885733187556377e-03, 1.166996967723974311e-03, 1.170106151368899370e-03, 1.173213279174070787e-03, 1.176318346194603999e-03, 1.179421347489204453e-03, 1.182522278120394423e-03, 1.185621133154101010e-03, 1.188717907659855855e-03, 1.191812596711044284e-03, 1.194905195384459492e-03, 1.197995698760619338e-03, 1.201084101923616081e-03, 1.204170399961339288e-03, 1.207254587965411220e-03, 1.210336661030708260e-03, 1.213416614256217869e-03, 1.216494442744529879e-03, 1.219570141601802014e-03, 1.222643705937888044e-03, 1.225715130866571320e-03, 1.228784411505143889e-03, 1.231851542974686650e-03, 1.234916520399957467e-03, 1.237979338909660915e-03, 1.241039993636037586e-03, 1.244098479715099797e-03, 1.247154792286752148e-03, 1.250208926494747073e-03, 1.253260877486208442e-03, 1.256310640412520389e-03, 1.259358210428534108e-03, 1.262403582693167421e-03, 1.265446752368953095e-03, 1.268487714622239422e-03, 1.271526464623410095e-03, 1.274562997546478497e-03, 1.277597308569299777e-03, 1.280629392873782477e-03, 1.283659245645493241e-03, 1.286686862073861508e-03, 1.289712237352393098e-03, 1.292735366678275785e-03, 1.295756245252582687e-03, 1.298774868280486942e-03, 1.301791230970860769e-03, 1.304805328536488406e-03, 1.307817156194278395e-03, 1.310826709164792389e-03, 1.313833982672870737e-03, 1.316838971946810008e-03, 1.319841672219273284e-03, 1.322842078726806612e-03, 1.325840186709787176e-03, 1.328835991412566407e-03, 1.331829488083670354e-03, 1.334820671975419336e-03, 1.337809538344118766e-03, 1.340796082450285316e-03, 1.343780299558239690e-03, 1.346762184936386129e-03, 1.349741733857089251e-03, 1.352718941596876790e-03, 1.355693803436386260e-03, 1.358666314659896356e-03, 1.361636470556145751e-03, 1.364604266417928030e-03, 1.367569697541713746e-03, 1.370532759228510616e-03, 1.373493446783080520e-03, 1.376451755514541660e-03, 1.379407680735913848e-03, 1.382361217764319951e-03, 1.385312361921199262e-03, 1.388261108531911765e-03, 1.391207452925939799e-03, 1.394151390437116172e-03, 1.397092916403201105e-03, 1.400032026166114904e-03, 1.402968715072130512e-03, 1.405902978471492738e-03, 1.408834811718613633e-03, 1.411764210172288675e-03, 1.414691169195229047e-03, 1.417615684154611977e-03, 1.420537750421615834e-03, 1.423457363371630462e-03, 1.426374518384454070e-03, 1.429289210843922870e-03, 1.432201436138088669e-03, 1.435111189659453272e-03, 1.438018466804554972e-03, 1.440923262974196876e-03, 1.443825573573631225e-03, 1.446725394012183825e-03, 1.449622719703459392e-03, 1.452517546065529774e-03, 1.455409868520505688e-03, 1.458299682495114167e-03, 1.461186983419934414e-03, 1.464071766730244781e-03, 1.466954027865644168e-03, 1.469833762269659753e-03, 1.472710965390546054e-03, 1.475585632680837585e-03, 1.478457759597276650e-03, 1.481327341600961224e-03, 1.484194374157551391e-03, 1.487058852736876640e-03, 1.489920772813206054e-03, 1.492780129865127307e-03, 1.495636919375810565e-03, 1.498491136832634648e-03, 1.501342777727375901e-03, 1.504191837556356727e-03, 1.507038311820370130e-03, 1.509882196024265330e-03, 1.512723485677762436e-03, 1.515562176294704124e-03, 1.518398263393632873e-03, 1.521231742497351639e-03, 1.524062609133132896e-03, 1.526890858832900344e-03, 1.529716487132860066e-03, 1.532539489573703272e-03, 1.535359861700802322e-03, 1.538177599063836462e-03, 1.540992697216978305e-03, 1.543805151719107637e-03, 1.546614958133427390e-03, 1.549422112027672464e-03, 1.552226608974287096e-03, 1.555028444550004413e-03, 1.557827614336360555e-03, 1.560624113919240183e-03, 1.563417938889106757e-03, 1.566209084841223504e-03, 1.568997547374990963e-03, 1.571783322094769250e-03, 1.574566404609440686e-03, 1.577346790532354074e-03, 1.580124475481455232e-03, 1.582899455079490175e-03, 1.585671724953631066e-03, 1.588441280735667033e-03, 1.591208118062204099e-03, 1.593972232574292214e-03, 1.596733619917692620e-03, 1.599492275742745362e-03, 1.602248195704571599e-03, 1.605001375463013325e-03, 1.607751810682222018e-03, 1.610499497031381158e-03, 1.613244430184295310e-03, 1.615986605819348925e-03, 1.618726019619671141e-03, 1.621462667273031915e-03, 1.624196544472097025e-03, 1.626927646914073326e-03, 1.629655970300875273e-03, 1.632381510339344591e-03, 1.635104262740859522e-03, 1.637824223221562943e-03, 1.640541387502453003e-03, 1.643255751309347784e-03, 1.645967310372468311e-03, 1.648676060427226118e-03, 1.651381997213571210e-03, 1.654085116476234057e-03, 1.656785413964917495e-03, 1.659482885433877144e-03, 1.662177526642421221e-03, 1.664869333354475778e-03, 1.667558301338788098e-03, 1.670244426369108621e-03, 1.672927704223843137e-03, 1.675608130686228421e-03, 1.678285701544524359e-03, 1.680960412591660062e-03, 1.683632259625418614e-03, 1.686301238448640900e-03, 1.688967344868839635e-03, 1.691630574698405791e-03, 1.694290923754799855e-03, 1.696948387860133757e-03, 1.699602962841703646e-03, 1.702254644531291669e-03, 1.704903428765961121e-03, 1.707549311387611055e-03, 1.710192288242958717e-03, 1.712832355183636478e-03, 1.715469508066401732e-03, 1.718103742752766748e-03, 1.720735055109256931e-03, 1.723363441007286570e-03, 1.725988896323411891e-03, 1.728611416938981077e-03, 1.731230998740304269e-03, 1.733847637618806878e-03, 1.736461329470947827e-03, 1.739072070197830548e-03, 1.741679855705907491e-03, 1.744284681906633832e-03, 1.746886544716138093e-03, 1.749485440055957228e-03, 1.752081363852377215e-03, 1.754674312036946533e-03, 1.757264280546066331e-03, 1.759851265321188624e-03, 1.762435262308994968e-03, 1.765016267461037803e-03, 1.767594276733942555e-03, 1.770169286089568307e-03, 1.772741291494687533e-03, 1.775310288921140046e-03, 1.777876274346044862e-03, 1.780439243751426358e-03, 1.782999193124415287e-03, 1.785556118457424200e-03, 1.788110015747750416e-03, 1.790660880998030512e-03, 1.793208710215866064e-03, 1.795753499413984752e-03, 1.798295244610419912e-03, 1.800833941828190688e-03, 1.803369587095449058e-03, 1.805902176445694498e-03, 1.808431705917404927e-03, 1.810958171554231206e-03, 1.813481569405165630e-03, 1.816001895524217095e-03, 1.818519145970588259e-03, 1.821033316808826248e-03, 1.823544404108469854e-03, 1.826052403944539160e-03, 1.828557312396871578e-03, 1.831059125550864959e-03, 1.833557839497129130e-03, 1.836053450331180800e-03, 1.838545954154105141e-03, 1.841035347072172632e-03, 1.843521625196792866e-03, 1.846004784644683693e-03, 1.848484821537764314e-03, 1.850961732003396625e-03, 1.853435512174045645e-03, 1.855906158187447565e-03, 1.858373666186801656e-03, 1.860838032320417034e-03, 1.863299252741919309e-03, 1.865757323610332113e-03, 1.868212241090045668e-03, 1.870664001350434702e-03, 1.873112600566585956e-03, 1.875558034918633783e-03, 1.878000300592259962e-03, 1.880439393778327679e-03, 1.882875310673033089e-03, 1.885308047478109371e-03, 1.887737600400455924e-03, 1.890163965652352828e-03, 1.892587139451600486e-03, 1.895007118021222554e-03, 1.897423897589603633e-03, 1.899837474390697438e-03, 1.902247844663667057e-03, 1.904655004653089869e-03, 1.907058950609102606e-03, 1.909459678787082384e-03, 1.911857185447828631e-03, 1.914251466857719861e-03, 1.916642519288347651e-03, 1.919030339017007781e-03, 1.921414922326049280e-03, 1.923796265503588052e-03, 1.926174364843146478e-03, 1.928549216643587723e-03, 1.930920817209227187e-03, 1.933289162850031781e-03, 1.935654249881247181e-03, 1.938016074623678852e-03, 1.940374633403556303e-03, 1.942729922552744511e-03, 1.945081938408467015e-03, 1.947430677313423657e-03, 1.949776135615942157e-03, 1.952118309669916311e-03, 1.954457195834428691e-03, 1.956792790474419595e-03, 1.959125089960286545e-03, 1.961454090667871276e-03, 1.963779788978604370e-03, 1.966102181279405069e-03, 1.968421263962908101e-03, 1.970737033427140145e-03, 1.973049486075703282e-03, 1.975358618317914639e-03, 1.977664426568508018e-03, 1.979966907247804331e-03, 1.982266056781859052e-03, 1.984561871602165579e-03, 1.986854348145810061e-03, 1.989143482855637059e-03, 1.991429272179946839e-03, 1.993711712572645862e-03, 1.995990800493419818e-03, 1.998266532407363700e-03, 2.000538904785415482e-03, 2.002807914103991397e-03, 2.005073556845140756e-03, 2.007335829496718991e-03, 2.009594728552077138e-03, 2.011850250510220563e-03, 2.014102391875971596e-03, 2.016351149159665949e-03, 2.018596518877311882e-03, 2.020838497550744590e-03, 2.023077081707329999e-03, 2.025312267880183779e-03, 2.027544052608048607e-03, 2.029772432435480219e-03, 2.031997403912785827e-03, 2.034218963595674570e-03, 2.036437108045872479e-03, 2.038651833830785499e-03, 2.040863137523438783e-03, 2.043071015702588138e-03, 2.045275464952873989e-03, 2.047476481864531246e-03, 2.049674063033592696e-03, 2.051868205061784488e-03, 2.054058904556758155e-03, 2.056246158131754941e-03, 2.058429962405800961e-03, 2.060610314003832096e-03, 2.062787209556427720e-03, 2.064960645699936027e-03, 2.067130619076649675e-03, 2.069297126334507849e-03, 2.071460164127238504e-03, 2.073619729114535310e-03, 2.075775817961696395e-03, 2.077928427340029836e-03, 2.080077553926516255e-03, 2.082223194403967550e-03, 2.084365345461153089e-03, 2.086504003792558591e-03, 2.088639166098486301e-03, 2.090770829085232801e-03, 2.092898989464806250e-03, 2.095023643955072970e-03, 2.097144789279884076e-03, 2.099262422168835657e-03, 2.101376539357372418e-03, 2.103487137586980242e-03, 2.105594213604806281e-03, 2.107697764164095672e-03, 2.109797786023828552e-03, 2.111894275948891786e-03, 2.113987230710195637e-03, 2.116076647084434801e-03, 2.118162521854197265e-03, 2.120244851808138209e-03, 2.122323633740672098e-03, 2.124398864452166098e-03, 2.126470540749039392e-03, 2.128538659443506877e-03, 2.130603217353765639e-03, 2.132664211303923404e-03, 2.134721638124166803e-03, 2.136775494650494656e-03, 2.138825777724876701e-03, 2.140872484195317782e-03, 2.142915610915860011e-03, 2.144955154746224554e-03, 2.146991112552397527e-03, 2.149023481206296070e-03, 2.151052257585732343e-03, 2.153077438574563154e-03, 2.155099021062590204e-03, 2.157117001945753516e-03, 2.159131378125868188e-03, 2.161142146510750157e-03, 2.163149304014385776e-03, 2.165152847556629963e-03, 2.167152774063364502e-03, 2.169149080466645490e-03, 2.171141763704417978e-03, 2.173130820720677731e-03, 2.175116248465590058e-03, 2.177098043895189707e-03, 2.179076203971756862e-03, 2.181050725663471936e-03, 2.183021605944599451e-03, 2.184988841795598626e-03, 2.186952430202857532e-03, 2.188912368158853119e-03, 2.190868652662275248e-03, 2.192821280717757813e-03, 2.194770249336032691e-03, 2.196715555534055515e-03, 2.198657196334752838e-03, 2.200595168767144859e-03, 2.202529469866503723e-03, 2.204460096674078131e-03, 2.206387046237270281e-03, 2.208310315609576021e-03, 2.210229901850696739e-03, 2.212145802026497295e-03, 2.214058013208740176e-03, 2.215966532475570783e-03, 2.217871356911234673e-03, 2.219772483606047200e-03, 2.221669909656477648e-03, 2.223563632165272835e-03, 2.225453648241221619e-03, 2.227339954999310589e-03, 2.229222549560671597e-03, 2.231101429052723129e-03, 2.232976590608943494e-03, 2.234848031368993123e-03, 2.236715748478793932e-03, 2.238579739090531488e-03, 2.240440000362297658e-03, 2.242296529458714677e-03, 2.244149323550369193e-03, 2.245998379814246378e-03, 2.247843695433410314e-03, 2.249685267597147965e-03, 2.251523093501091484e-03, 2.253357170346971441e-03, 2.255187495342754304e-03, 2.257014065702761703e-03, 2.258836878647433634e-03, 2.260655931403454666e-03, 2.262471221203872767e-03, 2.264282745287869887e-03, 2.266090500900884690e-03, 2.267894485294743960e-03, 2.269694695727398487e-03, 2.271491129463090470e-03, 2.273283783772432880e-03, 2.275072655932174406e-03, 2.276857743225541627e-03, 2.278639042941744183e-03, 2.280416552376543764e-03, 2.282190268831963548e-03, 2.283960189616211431e-03, 2.285726312043816644e-03, 2.287488633435727763e-03, 2.289247151119097167e-03, 2.291001862427376017e-03, 2.292752764700449562e-03, 2.294499855284415531e-03, 2.296243131531725944e-03, 2.297982590801138109e-03, 2.299718230457804824e-03, 2.301450047873263537e-03, 2.303178040425164427e-03, 2.304902205497718400e-03, 2.306622540481504096e-03, 2.308339042773208550e-03, 2.310051709776151513e-03, 2.311760538899820978e-03, 2.313465527560224898e-03, 2.315166673179611459e-03, 2.316863973186633445e-03, 2.318557425016389006e-03, 2.320247026110282013e-03, 2.321932773916073663e-03, 2.323614665888049883e-03, 2.325292699486751578e-03, 2.326966872179133793e-03, 2.328637181438648548e-03, 2.330303624745051847e-03, 2.331966199584490848e-03, 2.333624903449655653e-03, 2.335279733839486574e-03, 2.336930688259493318e-03, 2.338577764221499555e-03, 2.340220959243750464e-03, 2.341860270851034171e-03, 2.343495696574457964e-03, 2.345127233951571459e-03, 2.346754880526471555e-03, 2.348378633849587324e-03, 2.349998491477790167e-03, 2.351614450974524352e-03, 2.353226509909582369e-03, 2.354834665859196000e-03, 2.356438916406185507e-03, 2.358039259139685980e-03, 2.359635691655472163e-03, 2.361228211555562503e-03, 2.362816816448643290e-03, 2.364401503949909063e-03, 2.365982271680789392e-03, 2.367559117269443271e-03, 2.369132038350465087e-03, 2.370701032564885048e-03, 2.372266097560229905e-03, 2.373827230990624860e-03, 2.375384430516607089e-03, 2.376937693805242831e-03, 2.378487018530089665e-03, 2.380032402371310123e-03, 2.381573843015492159e-03, 2.383111338155742814e-03, 2.384644885491756742e-03, 2.386174482729805368e-03, 2.387700127582474078e-03, 2.389221817769125820e-03, 2.390739551015496483e-03, 2.392253325054000644e-03, 2.393763137623485665e-03, 2.395268986469367874e-03, 2.396770869343696746e-03, 2.398268784004986207e-03, 2.399762728218311335e-03, 2.401252699755406818e-03, 2.402738696394471785e-03, 2.404220715920274334e-03, 2.405698756124258209e-03, 2.407172814804332470e-03, 2.408642889764998993e-03, 2.410108978817437908e-03, 2.411571079779273406e-03, 2.413029190474857803e-03, 2.414483308735033019e-03, 2.415933432397233786e-03, 2.417379559305635108e-03, 2.418821687310758906e-03, 2.420259814269961045e-03, 2.421693938047149875e-03, 2.423124056512777555e-03, 2.424550167543930695e-03, 2.425972269024385865e-03, 2.427390358844446101e-03, 2.428804434901064499e-03, 2.430214495097883683e-03, 2.431620537345084883e-03, 2.433022559559537123e-03, 2.434420559664683160e-03, 2.435814535590689542e-03, 2.437204485274381983e-03, 2.438590406659048044e-03, 2.439972297694812699e-03, 2.441350156338408482e-03, 2.442723980553176792e-03, 2.444093768309129038e-03, 2.445459517582920187e-03, 2.446821226357946341e-03, 2.448178892624186011e-03, 2.449532514378282514e-03, 2.450882089623646325e-03, 2.452227616370258618e-03, 2.453569092634795296e-03, 2.454906516440648247e-03, 2.456239885817955697e-03, 2.457569198803328126e-03, 2.458894453440289320e-03, 2.460215647778932462e-03, 2.461532779876051107e-03, 2.462845847795222445e-03, 2.464154849606584822e-03, 2.465459783387133948e-03, 2.466760647220455314e-03, 2.468057439196837816e-03, 2.469350157413396918e-03, 2.470638799973854348e-03, 2.471923364988649549e-03, 2.473203850575031188e-03, 2.474480254856888019e-03, 2.475752575964812203e-03, 2.477020812036241117e-03, 2.478284961215230543e-03, 2.479545021652584339e-03, 2.480800991505910380e-03, 2.482052868939463135e-03, 2.483300652124356602e-03, 2.484544339238265072e-03, 2.485783928465777008e-03, 2.487019417998193819e-03, 2.488250806033509045e-03, 2.489478090776486418e-03, 2.490701270438719275e-03, 2.491920343238465761e-03, 2.493135307400793244e-03, 2.494346161157501556e-03, 2.495552902747217965e-03, 2.496755530415274444e-03, 2.497954042413784870e-03, 2.499148437001665404e-03, 2.500338712444658343e-03, 2.501524867015110509e-03, 2.502706898992311524e-03, 2.503884806662332908e-03, 2.505058588317894512e-03, 2.506228242258658548e-03, 2.507393766790956807e-03, 2.508555160228040024e-03, 2.509712420889848028e-03, 2.510865547103138980e-03, 2.512014537201538809e-03, 2.513159389525399402e-03, 2.514300102421886639e-03, 2.515436674245037207e-03, 2.516569103355637601e-03, 2.517697388121271397e-03, 2.518821526916424636e-03, 2.519941518122317120e-03, 2.521057360126996525e-03, 2.522169051325393041e-03, 2.523276590119174958e-03, 2.524379974916931245e-03, 2.525479204133997645e-03, 2.526574276192555119e-03, 2.527665189521682756e-03, 2.528751942557212924e-03, 2.529834533741831884e-03, 2.530912961525126192e-03, 2.531987224363462571e-03, 2.533057320720036483e-03, 2.534123249064973177e-03, 2.535185007875172432e-03, 2.536242595634372737e-03, 2.537296010833257551e-03, 2.538345251969250163e-03, 2.539390317546755694e-03, 2.540431206076884402e-03, 2.541467916077726642e-03, 2.542500446074246172e-03, 2.543528794598142254e-03, 2.544552960188098574e-03, 2.545572941389658353e-03, 2.546588736755190947e-03, 2.547600344843961237e-03, 2.548607764222072820e-03, 2.549610993462581195e-03, 2.550610031145373637e-03, 2.551604875857184807e-03, 2.552595526191727294e-03, 2.553581980749502958e-03, 2.554564238137931736e-03, 2.555542296971346442e-03, 2.556516155871003167e-03, 2.557485813464896972e-03, 2.558451268388097551e-03, 2.559412519282447829e-03, 2.560369564796782533e-03, 2.561322403586760357e-03, 2.562271034314947231e-03, 2.563215455650883542e-03, 2.564155666270946654e-03, 2.565091664858414229e-03, 2.566023450103539251e-03, 2.566951020703430331e-03, 2.567874375362108521e-03, 2.568793512790554148e-03, 2.569708431706623549e-03, 2.570619130835066855e-03, 2.571525608907644644e-03, 2.572427864662951875e-03, 2.573325896846517628e-03, 2.574219704210854547e-03, 2.575109285515330901e-03, 2.575994639526326280e-03, 2.576875765017006079e-03, 2.577752660767611195e-03, 2.578625325565282820e-03, 2.579493758204041629e-03, 2.580357957484878412e-03, 2.581217922215747577e-03, 2.582073651211502958e-03, 2.582925143293950294e-03, 2.583772397291818172e-03, 2.584615412040847365e-03, 2.585454186383653787e-03, 2.586288719169809597e-03, 2.587119009255874416e-03, 2.587945055505357604e-03, 2.588766856788639759e-03, 2.589584411983136651e-03, 2.590397719973215086e-03, 2.591206779650166887e-03, 2.592011589912237082e-03, 2.592812149664632144e-03, 2.593608457819565529e-03, 2.594400513296167901e-03, 2.595188315020511855e-03, 2.595971861925708626e-03, 2.596751152951770180e-03, 2.597526187045679467e-03, 2.598296963161447672e-03, 2.599063480259994081e-03, 2.599825737309212001e-03, 2.600583733284009529e-03, 2.601337467166251870e-03, 2.602086937944731414e-03, 2.602832144615302608e-03, 2.603573086180719330e-03, 2.604309761650784507e-03, 2.605042170042223913e-03, 2.605770310378745583e-03, 2.606494181691112241e-03, 2.607213783016984737e-03, 2.607929113401034373e-03, 2.608640171894970224e-03, 2.609346957557416840e-03, 2.610049469454023101e-03, 2.610747706657435326e-03, 2.611441668247271256e-03, 2.612131353310152577e-03, 2.612816760939678466e-03, 2.613497890236459419e-03, 2.614174740308139802e-03, 2.614847310269252136e-03, 2.615515599241430462e-03, 2.616179606353282849e-03, 2.616839330740387479e-03, 2.617494771545329085e-03, 2.618145927917747522e-03, 2.618792799014211994e-03, 2.619435383998343359e-03, 2.620073682040733893e-03, 2.620707692319040535e-03, 2.621337414017861720e-03, 2.621962846328829318e-03, 2.622583988450598660e-03, 2.623200839588845073e-03, 2.623813398956183207e-03, 2.624421665772317096e-03, 2.625025639263965996e-03, 2.625625318664774176e-03, 2.626220703215505214e-03, 2.626811792163863749e-03, 2.627398584764628186e-03, 2.627981080279545752e-03, 2.628559277977398842e-03, 2.629133177134021070e-03, 2.629702777032212700e-03, 2.630268076961814368e-03, 2.630829076219718364e-03, 2.631385774109800107e-03, 2.631938169942957175e-03, 2.632486263037149207e-03, 2.633030052717331114e-03, 2.633569538315473461e-03, 2.634104719170607574e-03, 2.634635594628755711e-03, 2.635162164043005229e-03, 2.635684426773441356e-03, 2.636202382187158907e-03, 2.636716029658361590e-03, 2.637225368568199817e-03, 2.637730398304888660e-03, 2.638231118263683131e-03, 2.638727527846865609e-03, 2.639219626463721550e-03, 2.639707413530625359e-03, 2.640190888470932834e-03, 2.640670050715070941e-03, 2.641144899700466689e-03, 2.641615434871624323e-03, 2.642081655680049001e-03, 2.642543561584296662e-03, 2.643001152049968827e-03, 2.643454426549709125e-03, 2.643903384563149953e-03, 2.644348025577016557e-03, 2.644788349085077164e-03, 2.645224354588096571e-03, 2.645656041593913779e-03, 2.646083409617375204e-03, 2.646506458180416643e-03, 2.646925186811977838e-03, 2.647339595048039344e-03, 2.647749682431662852e-03, 2.648155448512903593e-03, 2.648556892848881027e-03, 2.648954015003782744e-03, 2.649346814548795507e-03, 2.649735291062173780e-03, 2.650119444129223241e-03, 2.650499273342272165e-03, 2.650874778300729966e-03, 2.651245958611007838e-03, 2.651612813886586838e-03, 2.651975343748002277e-03, 2.652333547822814663e-03, 2.652687425745638757e-03, 2.653036977158149644e-03, 2.653382201709046737e-03, 2.653723099054085006e-03, 2.654059668856083212e-03, 2.654391910784885747e-03, 2.654719824517386920e-03, 2.655043409737550038e-03, 2.655362666136366206e-03, 2.655677593411874277e-03, 2.655988191269155647e-03, 2.656294459420376758e-03, 2.656596397584737920e-03, 2.656894005488434716e-03, 2.657187282864781602e-03, 2.657476229454119963e-03, 2.657760845003835897e-03, 2.658041129268343735e-03, 2.658317082009151091e-03, 2.658588702994779500e-03, 2.658855992000812123e-03, 2.659118948809878133e-03, 2.659377573211667463e-03, 2.659631865002908251e-03, 2.659881823987369880e-03, 2.660127449975879452e-03, 2.660368742786338274e-03, 2.660605702243646394e-03, 2.660838328179794543e-03, 2.661066620433789540e-03, 2.661290578851724549e-03, 2.661510203286709259e-03, 2.661725493598913680e-03, 2.661936449655563815e-03, 2.662143071330921266e-03, 2.662345358506291049e-03, 2.662543311070054118e-03, 2.662736928917615320e-03, 2.662926211951424215e-03, 2.663111160081000229e-03, 2.663291773222883213e-03, 2.663468051300678548e-03, 2.663639994245033723e-03, 2.663807601993649181e-03, 2.663970874491245356e-03, 2.664129811689626860e-03, 2.664284413547614392e-03, 2.664434680031090279e-03, 2.664580611112971585e-03, 2.664722206773224855e-03, 2.664859466998869587e-03, 2.664992391783955247e-03, 2.665120981129576443e-03, 2.665245235043885944e-03, 2.665365153542067784e-03, 2.665480736646343770e-03, 2.665591984385994300e-03, 2.665698896797319330e-03, 2.665801473923692586e-03, 2.665899715815489134e-03, 2.665993622530162151e-03, 2.666083194132186536e-03, 2.666168430693068459e-03, 2.666249332291370077e-03, 2.666325899012688284e-03, 2.666398130949658180e-03, 2.666466028201944834e-03, 2.666529590876252822e-03, 2.666588819086344007e-03, 2.666643712952985069e-03, 2.666694272603990865e-03, 2.666740498174230076e-03, 2.666782389805580095e-03, 2.666819947646961297e-03, 2.666853171854327489e-03, 2.666882062590671121e-03, 2.666906620026006803e-03, 2.666926844337390388e-03, 2.666942735708898154e-03, 2.666954294331648923e-03, 2.666961520403779342e-03, 2.666964414130462962e-03, 2.666962975723898965e-03, 2.666957205403309560e-03, 2.666947103394957767e-03, 2.666932669932118357e-03, 2.666913905255097368e-03, 2.666890809611217796e-03, 2.666863383254845180e-03, 2.666831626447352041e-03, 2.666795539457136096e-03, 2.666755122559616789e-03, 2.666710376037238327e-03, 2.666661300179458405e-03, 2.666607895282764682e-03, 2.666550161650657440e-03, 2.666488099593648277e-03, 2.666421709429266616e-03, 2.666350991482070113e-03, 2.666275946083622103e-03, 2.666196573572492037e-03, 2.666112874294279764e-03, 2.666024848601579976e-03, 2.665932496854018195e-03, 2.665835819418210448e-03, 2.665734816667800124e-03, 2.665629488983411143e-03, 2.665519836752714301e-03, 2.665405860370361792e-03, 2.665287560238003683e-03, 2.665164936764320008e-03, 2.665037990364966559e-03, 2.664906721462637334e-03, 2.664771130486979101e-03, 2.664631217874687246e-03, 2.664486984069427272e-03, 2.664338429521868196e-03, 2.664185554689679075e-03, 2.664028360037533349e-03, 2.663866846037081949e-03, 2.663701013166976279e-03, 2.663530861912872128e-03, 2.663356392767401905e-03, 2.663177606230191126e-03, 2.662994502807855806e-03, 2.662807083014009403e-03, 2.662615347369234626e-03, 2.662419296401119864e-03, 2.662218930644224060e-03, 2.662014250640085383e-03, 2.661805256937245512e-03, 2.661591950091191528e-03, 2.661374330664436141e-03, 2.661152399226425751e-03, 2.660926156353610270e-03, 2.660695602629420137e-03, 2.660460738644231625e-03, 2.660221564995423650e-03, 2.659978082287320529e-03, 2.659730291131247489e-03, 2.659478192145464746e-03, 2.659221785955233428e-03, 2.658961073192762665e-03, 2.658696054497220428e-03, 2.658426730514748711e-03, 2.658153101898464831e-03, 2.657875169308424133e-03, 2.657592933411643838e-03, 2.657306394882102182e-03, 2.657015554400754022e-03, 2.656720412655475330e-03, 2.656420970341124774e-03, 2.656117228159484301e-03, 2.655809186819317689e-03, 2.655496847036327174e-03, 2.655180209533142613e-03, 2.654859275039357040e-03, 2.654534044291526236e-03, 2.654204518033108015e-03, 2.653870697014530742e-03, 2.653532581993169048e-03, 2.653190173733302633e-03, 2.652843473006156593e-03, 2.652492480589942192e-03, 2.652137197269732825e-03, 2.651777623837573306e-03, 2.651413761092433902e-03, 2.651045609840196014e-03, 2.650673170893712901e-03, 2.650296445072693879e-03, 2.649915433203831397e-03, 2.649530136120729906e-03, 2.649140554663868136e-03, 2.648746689680707509e-03, 2.648348542025595002e-03, 2.647946112559774849e-03, 2.647539402151441890e-03, 2.647128411675679551e-03, 2.646713142014488467e-03, 2.646293594056768703e-03, 2.645869768698337968e-03, 2.645441666841913397e-03, 2.645009289397122834e-03, 2.644572637280453217e-03, 2.644131711415370276e-03, 2.643686512732172384e-03, 2.643237042168059079e-03, 2.642783300667140168e-03, 2.642325289180423153e-03, 2.641863008665787643e-03, 2.641396460087999665e-03, 2.640925644418729012e-03, 2.640450562636532331e-03, 2.639971215726809751e-03, 2.639487604681870804e-03, 2.638999730500924453e-03, 2.638507594190010568e-03, 2.638011196762038522e-03, 2.637510539236862656e-03, 2.637005622641141762e-03, 2.636496448008389393e-03, 2.635983016379067102e-03, 2.635465328800405769e-03, 2.634943386326572563e-03, 2.634417190018538673e-03, 2.633886740944172983e-03, 2.633352040178186994e-03, 2.632813088802130486e-03, 2.632269887904424045e-03, 2.631722438580351691e-03, 2.631170741931993223e-03, 2.630614799068321796e-03, 2.630054611105150583e-03, 2.629490179165090268e-03, 2.628921504377638822e-03, 2.628348587879124256e-03, 2.627771430812675998e-03, 2.627190034328289077e-03, 2.626604399582766012e-03, 2.626014527739753673e-03, 2.625420419969732005e-03, 2.624822077449963289e-03, 2.624219501364574107e-03, 2.623612692904503732e-03, 2.623001653267471173e-03, 2.622386383658049762e-03, 2.621766885287630730e-03, 2.621143159374364658e-03, 2.620515207143253415e-03, 2.619883029826098123e-03, 2.619246628661486137e-03, 2.618606004894820111e-03, 2.617961159778265084e-03, 2.617312094570865139e-03, 2.616658810538374704e-03, 2.616001308953337483e-03, 2.615339591095171886e-03, 2.614673658250001899e-03, 2.614003511710742515e-03, 2.613329152777116218e-03, 2.612650582755619150e-03, 2.611967802959531525e-03, 2.611280814708870791e-03, 2.610589619330445834e-03, 2.609894218157874334e-03, 2.609194612531460025e-03, 2.608490803798331481e-03, 2.607782793312371419e-03, 2.607070582434204125e-03, 2.606354172531175073e-03, 2.605633564977495771e-03, 2.604908761153999601e-03, 2.604179762448356923e-03, 2.603446570254932396e-03, 2.602709185974859136e-03, 2.601967611016023536e-03, 2.601221846792998484e-03, 2.600471894727142234e-03, 2.599717756246551579e-03, 2.598959432785984212e-03, 2.598196925786999678e-03, 2.597430236697862230e-03, 2.596659366973512635e-03, 2.595884318075677467e-03, 2.595105091472781501e-03, 2.594321688639914317e-03, 2.593534111058952603e-03, 2.592742360218398823e-03, 2.591946437613535173e-03, 2.591146344746320367e-03, 2.590342083125371422e-03, 2.589533654266093759e-03, 2.588721059690503833e-03, 2.587904300927329742e-03, 2.587083379512007762e-03, 2.586258296986672801e-03, 2.585429054900080341e-03, 2.584595654807725698e-03, 2.583758098271764225e-03, 2.582916386861036466e-03, 2.582070522151013511e-03, 2.581220505723874625e-03, 2.580366339168474726e-03, 2.579508024080287131e-03, 2.578645562061438259e-03, 2.577778954720815179e-03, 2.576908203673852239e-03, 2.576033310542641657e-03, 2.575154276955974719e-03, 2.574271104549266317e-03, 2.573383794964577507e-03, 2.572492349850574733e-03, 2.571596770862612236e-03, 2.570697059662663091e-03, 2.569793217919281916e-03, 2.568885247307714156e-03, 2.567973149509821060e-03, 2.567056926214032839e-03, 2.566136579115450584e-03, 2.565212109915782079e-03, 2.564283520323317953e-03, 2.563350812052979811e-03, 2.562413986826325447e-03, 2.561473046371425238e-03, 2.560527992423057737e-03, 2.559578826722504544e-03, 2.558625551017692547e-03, 2.557668167063154464e-03, 2.556706676619939500e-03, 2.555741081455737383e-03, 2.554771383344828922e-03, 2.553797584068001874e-03, 2.552819685412686685e-03, 2.551837689172870623e-03, 2.550851597149067420e-03, 2.549861411148395332e-03, 2.548867132984531606e-03, 2.547868764477711611e-03, 2.546866307454710189e-03, 2.545859763748800457e-03, 2.544849135199945059e-03, 2.543834423654539427e-03, 2.542815630965512830e-03, 2.541792758992390822e-03, 2.540765809601230624e-03, 2.539734784664553040e-03, 2.538699686061476890e-03, 2.537660515677619705e-03, 2.536617275405139791e-03, 2.535569967142648623e-03, 2.534518592795340954e-03, 2.533463154274924120e-03, 2.532403653499555596e-03, 2.531340092393879419e-03, 2.530272472889187520e-03, 2.529200796923118319e-03, 2.528125066439802868e-03, 2.527045283390007540e-03, 2.525961449730816568e-03, 2.524873567425923483e-03, 2.523781638445400394e-03, 2.522685664765865823e-03, 2.521585648370404473e-03, 2.520481591248508249e-03, 2.519373495396207661e-03, 2.518261362815982490e-03, 2.517145195516705836e-03, 2.516024995513779002e-03, 2.514900764829055158e-03, 2.513772505490750441e-03, 2.512640219533610487e-03, 2.511503908998825429e-03, 2.510363575933917575e-03, 2.509219222392977764e-03, 2.508070850436402554e-03, 2.506918462131103691e-03, 2.505762059550400989e-03, 2.504601644773970289e-03, 2.503437219887962289e-03, 2.502268786984951799e-03, 2.501096348163827157e-03, 2.499919905529987985e-03, 2.498739461195189065e-03, 2.497555017277551179e-03, 2.496366575901618357e-03, 2.495174139198333592e-03, 2.493977709305030595e-03, 2.492777288365348367e-03, 2.491572878529392087e-03, 2.490364481953613856e-03, 2.489152100800815729e-03, 2.487935737240108951e-03, 2.486715393447143808e-03, 2.485491071603757908e-03, 2.484262773898185221e-03, 2.483030502525040463e-03, 2.481794259685268789e-03, 2.480554047586186125e-03, 2.479309868441362946e-03, 2.478061724470785598e-03, 2.476809617900765665e-03, 2.475553550963878816e-03, 2.474293525899073226e-03, 2.473029544951641390e-03, 2.471761610373095219e-03, 2.470489724421348187e-03, 2.469213889360604309e-03, 2.467934107461312605e-03, 2.466650381000309346e-03, 2.465362712260620297e-03, 2.464071103531648502e-03, 2.462775557109086674e-03, 2.461476075294809652e-03, 2.460172660397077354e-03, 2.458865314730411186e-03, 2.457554040615501229e-03, 2.456238840379433921e-03, 2.454919716355510786e-03, 2.453596670883240183e-03, 2.452269706308437061e-03, 2.450938824983199971e-03, 2.449604029265764916e-03, 2.448265321520698770e-03, 2.446922704118784792e-03, 2.445576179437062084e-03, 2.444225749858732789e-03, 2.442871417773216734e-03, 2.441513185576310585e-03, 2.440151055669853922e-03, 2.438785030461933928e-03, 2.437415112366894936e-03, 2.436041303805302864e-03, 2.434663607203813810e-03, 2.433282024995380485e-03, 2.431896559619108663e-03, 2.430507213520334379e-03, 2.429113989150465201e-03, 2.427716888967197499e-03, 2.426315915434378544e-03, 2.424911071021996090e-03, 2.423502358206145423e-03, 2.422089779469270045e-03, 2.420673337299768767e-03, 2.419253034192327904e-03, 2.417828872647677114e-03, 2.416400855172767641e-03, 2.414968984280692517e-03, 2.413533262490594623e-03, 2.412093692327828883e-03, 2.410650276323881604e-03, 2.409203017016263351e-03, 2.407751916948706709e-03, 2.406296978671035747e-03, 2.404838204739112237e-03, 2.403375597714975734e-03, 2.401909160166774190e-03, 2.400438894668661168e-03, 2.398964803800959777e-03, 2.397486890150095449e-03, 2.396005156308461930e-03, 2.394519604874678458e-03, 2.393030238453250618e-03, 2.391537059655004030e-03, 2.390040071096609896e-03, 2.388539275400840874e-03, 2.387034675196587560e-03, 2.385526273118796902e-03, 2.384014071808344265e-03, 2.382498073912265885e-03, 2.380978282083613586e-03, 2.379454698981380185e-03, 2.377927327270687712e-03, 2.376396169622641691e-03, 2.374861228714397927e-03, 2.373322507229054523e-03, 2.371780007855692207e-03, 2.370233733289585538e-03, 2.368683686231822568e-03, 2.367129869389492190e-03, 2.365572285475768272e-03, 2.364010937209757440e-03, 2.362445827316581471e-03, 2.360876958527242421e-03, 2.359304333578804772e-03, 2.357727955214305223e-03, 2.356147826182633000e-03, 2.354563949238747123e-03, 2.352976327143544138e-03, 2.351384962663771380e-03, 2.349789858572214323e-03, 2.348191017647601169e-03, 2.346588442674492694e-03, 2.344982136443470033e-03, 2.343372101751034497e-03, 2.341758341399515202e-03, 2.340140858197279402e-03, 2.338519654958471847e-03, 2.336894734503236395e-03, 2.335266099657620602e-03, 2.333633753253455158e-03, 2.331997698128569860e-03, 2.330357937126674352e-03, 2.328714473097250135e-03, 2.327067308895760037e-03, 2.325416447383530684e-03, 2.323761891427654925e-03, 2.322103643901177010e-03, 2.320441707683013229e-03, 2.318776085657800554e-03, 2.317106780716181574e-03, 2.315433795754439326e-03, 2.313757133674961344e-03, 2.312076797385729209e-03, 2.310392789800570952e-03, 2.308705113839321088e-03, 2.307013772427431598e-03, 2.305318768496199180e-03, 2.303620104982777392e-03, 2.301917784830147164e-03, 2.300211810986942454e-03, 2.298502186407715229e-03, 2.296788914052758524e-03, 2.295071996888183204e-03, 2.293351437885757932e-03, 2.291627240023127749e-03, 2.289899406283710422e-03, 2.288167939656596261e-03, 2.286432843136591928e-03, 2.284694119724480638e-03, 2.282951772426528633e-03, 2.281205804254917129e-03, 2.279456218227405781e-03, 2.277703017367611101e-03, 2.275946204704853808e-03, 2.274185783274072087e-03, 2.272421756116004606e-03, 2.270654126277131968e-03, 2.268882896809478085e-03, 2.267108070770919824e-03, 2.265329651224991421e-03, 2.263547641240804681e-03, 2.261762043893279263e-03, 2.259972862263000433e-03, 2.258180099436096332e-03, 2.256383758504522039e-03, 2.254583842565742544e-03, 2.252780354722980823e-03, 2.250973298085120686e-03, 2.249162675766507285e-03, 2.247348490887430671e-03, 2.245530746573549865e-03, 2.243709445956196865e-03, 2.241884592172410477e-03, 2.240056188364840037e-03, 2.238224237681616605e-03, 2.236388743276612745e-03, 2.234549708309285961e-03, 2.232707135944581988e-03, 2.230861029353131686e-03, 2.229011391711134809e-03, 2.227158226200396871e-03, 2.225301536008207712e-03, 2.223441324327397883e-03, 2.221577594356594944e-03, 2.219710349299735142e-03, 2.217839592366344873e-03, 2.215965326771592286e-03, 2.214087555736123352e-03, 2.212206282486170721e-03, 2.210321510253371140e-03, 2.208433242275000506e-03, 2.206541481793862416e-03, 2.204646232058134203e-03, 2.202747496321641029e-03, 2.200845277843693684e-03, 2.198939579889018330e-03, 2.197030405727792065e-03, 2.195117758635929152e-03, 2.193201641894517231e-03, 2.191282058790333404e-03, 2.189359012615455652e-03, 2.187432506667545164e-03, 2.185502544249724472e-03, 2.183569128670431302e-03, 2.181632263243681816e-03, 2.179691951288921428e-03, 2.177748196130914644e-03, 2.175801001099973622e-03, 2.173850369531828055e-03, 2.171896304767500282e-03, 2.169938810153553780e-03, 2.167977889041953089e-03, 2.166013544789925898e-03, 2.164045780760240605e-03, 2.162074600321028505e-03, 2.160100006845699222e-03, 2.158122003713184873e-03, 2.156140594307596591e-03, 2.154155782018694638e-03, 2.152167570241341529e-03, 2.150175962375804311e-03, 2.148180961827770609e-03, 2.146182572008280103e-03, 2.144180796333575775e-03, 2.142175638225358048e-03, 2.140167101110607845e-03, 2.138155188421663345e-03, 2.136139903596053023e-03, 2.134121250076736337e-03, 2.132099231311976231e-03, 2.130073850755238082e-03, 2.128045111865229603e-03, 2.126013018106221765e-03, 2.123977572947483711e-03, 2.121938779863551637e-03, 2.119896642334505484e-03, 2.117851163845359611e-03, 2.115802347886612707e-03, 2.113750197953840563e-03, 2.111694717547976229e-03, 2.109635910175195524e-03, 2.107573779346772619e-03, 2.105508328579342413e-03, 2.103439561394741808e-03, 2.101367481319897819e-03, 2.099292091887077372e-03, 2.097213396633741157e-03, 2.095131399102414388e-03, 2.093046102840940507e-03, 2.090957511402337637e-03, 2.088865628344681487e-03, 2.086770457231385077e-03, 2.084672001630841383e-03, 2.082570265116744264e-03, 2.080465251267943610e-03, 2.078356963668277508e-03, 2.076245405906883626e-03, 2.074130581578014897e-03, 2.072012494280922861e-03, 2.069891147620113968e-03, 2.067766545205208632e-03, 2.065638690650800288e-03, 2.063507587576723836e-03, 2.061373239607911228e-03, 2.059235650374231438e-03, 2.057094823510848686e-03, 2.054950762657743648e-03, 2.052803471460314545e-03, 2.050652953568748299e-03, 2.048499212638272074e-03, 2.046342252329457715e-03, 2.044182076307649292e-03, 2.042018688243257135e-03, 2.039852091811845871e-03, 2.037682290693951410e-03, 2.035509288575163347e-03, 2.033333089145969268e-03, 2.031153696101994574e-03, 2.028971113143870214e-03, 2.026785343977077856e-03, 2.024596392312242189e-03, 2.022404261864966558e-03, 2.020208956355737124e-03, 2.018010479509959286e-03, 2.015808835058301596e-03, 2.013604026736050441e-03, 2.011396058283677728e-03, 2.009184933446424119e-03, 2.006970655974608247e-03, 2.004753229623477094e-03, 2.002532658153074584e-03, 2.000308945328485317e-03, 1.998082094919740453e-03, 1.995852110701609120e-03, 1.993618996453922366e-03, 1.991382755961404460e-03, 1.989143393013518071e-03, 1.986900911404751793e-03, 1.984655314934486575e-03, 1.982406607406804466e-03, 1.980154792630871123e-03, 1.977899874420493455e-03, 1.975641856594489119e-03, 1.973380742976508714e-03, 1.971116537394855366e-03, 1.968849243683001675e-03, 1.966578865678946138e-03, 1.964305407225569629e-03, 1.962028872170643208e-03, 1.959749264366760901e-03, 1.957466587671149744e-03, 1.955180845946001555e-03, 1.952892043058228116e-03, 1.950600182879565908e-03, 1.948305269286384860e-03, 1.946007306159972623e-03, 1.943706297386367174e-03, 1.941402246856268774e-03, 1.939095158465065560e-03, 1.936785036113196530e-03, 1.934471883705526614e-03, 1.932155705151691449e-03, 1.929836504366161994e-03, 1.927514285268068246e-03, 1.925189051781289870e-03, 1.922860807834259533e-03, 1.920529557360267994e-03, 1.918195304297267215e-03, 1.915858052587761070e-03, 1.913517806179068593e-03, 1.911174569023182815e-03, 1.908828345076598373e-03, 1.906479138300618773e-03, 1.904126952661196583e-03, 1.901771792128767978e-03, 1.899413660678564127e-03, 1.897052562290432731e-03, 1.894688500948701632e-03, 1.892321480642502772e-03, 1.889951505365383613e-03, 1.887578579115638689e-03, 1.885202705896156733e-03, 1.882823889714259347e-03, 1.880442134582002408e-03, 1.878057444516025585e-03, 1.875669823537359348e-03, 1.873279275671769313e-03, 1.870885804949563034e-03, 1.868489415405445156e-03, 1.866090111078811016e-03, 1.863687896013542381e-03, 1.861282774258091362e-03, 1.858874749865331230e-03, 1.856463826892591762e-03, 1.854050009402026782e-03, 1.851633301459972535e-03, 1.849213707137307202e-03, 1.846791230509499697e-03, 1.844365875656502974e-03, 1.841937646662577307e-03, 1.839506547616604057e-03, 1.837072582611880755e-03, 1.834635755746193315e-03, 1.832196071121622175e-03, 1.829753532844846957e-03, 1.827308145026964974e-03, 1.824859911783408830e-03, 1.822408837233949024e-03, 1.819954925503113529e-03, 1.817498180719490878e-03, 1.815038607016078182e-03, 1.812576208530577342e-03, 1.810110989404695950e-03, 1.807642953784781769e-03, 1.805172105821344812e-03, 1.802698449669409278e-03, 1.800221989488355904e-03, 1.797742729441754572e-03, 1.795260673697667009e-03, 1.792775826428496741e-03, 1.790288191810809762e-03, 1.787797774025648738e-03, 1.785304577258378829e-03, 1.782808605698491238e-03, 1.780309863539952103e-03, 1.777808354981007125e-03, 1.775304084224037151e-03, 1.772797055475902953e-03, 1.770287272947524771e-03, 1.767774740854246174e-03, 1.765259463415670129e-03, 1.762741444855474250e-03, 1.760220689401762947e-03, 1.757697201286848639e-03, 1.755170984747124463e-03, 1.752642044023365034e-03, 1.750110383360547551e-03, 1.747576007007711285e-03, 1.745038919218239908e-03, 1.742499124249661776e-03, 1.739956626363738188e-03, 1.737411429826315936e-03, 1.734863538907335757e-03, 1.732312957881245201e-03, 1.729759691026312111e-03, 1.727203742624947936e-03, 1.724645116964055756e-03, 1.722083818334323385e-03, 1.719519851030625610e-03, 1.716953219352066254e-03, 1.714383927601818586e-03, 1.711811980087204685e-03, 1.709237381119482931e-03, 1.706660135014168717e-03, 1.704080246090863360e-03, 1.701497718673079113e-03, 1.698912557088556397e-03, 1.696324765669116139e-03, 1.693734348750447916e-03, 1.691141310672463838e-03, 1.688545655779120523e-03, 1.685947388418238251e-03, 1.683346512941884992e-03, 1.680743033705926238e-03, 1.678136955070403400e-03, 1.675528281399370515e-03, 1.672917017060697800e-03, 1.670303166426426178e-03, 1.667686733872568872e-03, 1.665067723778954414e-03, 1.662446140529543013e-03, 1.659821988512257419e-03, 1.657195272118801212e-03, 1.654565995744997292e-03, 1.651934163790600091e-03, 1.649299780659136197e-03, 1.646662850758217255e-03, 1.644023378499317924e-03, 1.641381368297877355e-03, 1.638736824573126805e-03, 1.636089751748130402e-03, 1.633440154250182831e-03, 1.630788036510116530e-03, 1.628133402962685062e-03, 1.625476258046639659e-03, 1.622816606204574618e-03, 1.620154451882758811e-03, 1.617489799531494346e-03, 1.614822653604838570e-03, 1.612153018560749359e-03, 1.609480898860829456e-03, 1.606806298970659330e-03, 1.604129223359636270e-03, 1.601449676500833448e-03, 1.598767662871056292e-03, 1.596083186951239739e-03, 1.593396253225698184e-03, 1.590706866182790532e-03, 1.588015030314410617e-03, 1.585320750116383376e-03, 1.582624030088271641e-03, 1.579924874733203968e-03, 1.577223288558220931e-03, 1.574519276074076712e-03, 1.571812841795071705e-03, 1.569103990239387528e-03, 1.566392725928907699e-03, 1.563679053389029853e-03, 1.560962977149019408e-03, 1.558244501741813974e-03, 1.555523631703842943e-03, 1.552800371575383974e-03, 1.550074725900358946e-03, 1.547346699226172413e-03, 1.544616296104096495e-03, 1.541883521088743304e-03, 1.539148378738761005e-03, 1.536410873616070533e-03, 1.533671010286243334e-03, 1.530928793318587448e-03, 1.528184227286001357e-03, 1.525437316764784688e-03, 1.522688066335005754e-03, 1.519936480580302710e-03, 1.517182564087690352e-03, 1.514426321447923975e-03, 1.511667757255255639e-03, 1.508906876107525248e-03, 1.506143682605997052e-03, 1.503378181355388482e-03, 1.500610376964312724e-03, 1.497840274044523034e-03, 1.495067877211327329e-03, 1.492293191083664088e-03, 1.489516220283898084e-03, 1.486736969437922303e-03, 1.483955443174928956e-03, 1.481171646127753174e-03, 1.478385582932695633e-03, 1.475597258229310914e-03, 1.472806676660782426e-03, 1.470013842873731796e-03, 1.467218761518077281e-03, 1.464421437247098376e-03, 1.461621874717854760e-03, 1.458820078590368800e-03, 1.456016053528318361e-03, 1.453209804198755993e-03, 1.450401335271936333e-03, 1.447590651421731779e-03, 1.444777757325128344e-03, 1.441962657662650225e-03, 1.439145357118180044e-03, 1.436325860378750464e-03, 1.433504172134911518e-03, 1.430680297080538050e-03, 1.427854239912635650e-03, 1.425026005331714047e-03, 1.422195598041569838e-03, 1.419363022749118653e-03, 1.416528284164741882e-03, 1.413691387002107783e-03, 1.410852335977956160e-03, 1.408011135812548085e-03, 1.405167791229083472e-03, 1.402322306954446353e-03, 1.399474687718387390e-03, 1.396624938253946714e-03, 1.393773063297517245e-03, 1.390919067588702873e-03, 1.388062955870129163e-03, 1.385204732887812627e-03, 1.382344403390957767e-03, 1.379481972131767339e-03, 1.376617443865800136e-03, 1.373750823351737238e-03, 1.370882115351468311e-03, 1.368011324629849401e-03, 1.365138455955072641e-03, 1.362263514098470667e-03, 1.359386503834367210e-03, 1.356507429940157546e-03, 1.353626297196715723e-03, 1.350743110387587044e-03, 1.347857874299730318e-03, 1.344970593722932383e-03, 1.342081273450256755e-03, 1.339189918277843699e-03, 1.336296533004700110e-03, 1.333401122433089609e-03, 1.330503691368315486e-03, 1.327604244618541592e-03, 1.324702786995143834e-03, 1.321799323312538438e-03, 1.318893858387956653e-03, 1.315986397041838101e-03, 1.313076944097614149e-03, 1.310165504381527717e-03, 1.307252082723060456e-03, 1.304336683954412327e-03, 1.301419312910947427e-03, 1.298499974430991459e-03, 1.295578673355568707e-03, 1.292655414529092451e-03, 1.289730202798534259e-03, 1.286803043013855057e-03, 1.283873940028072138e-03, 1.280942898697107592e-03, 1.278009923879605287e-03, 1.275075020437288877e-03, 1.272138193234779438e-03, 1.269199447139384481e-03, 1.266258787021474607e-03, 1.263316217754225897e-03, 1.260371744213731370e-03, 1.257425371278811897e-03, 1.254477103831049163e-03, 1.251526946755263580e-03, 1.248574904938697019e-03, 1.245620983271488336e-03, 1.242665186646701786e-03, 1.239707519960140747e-03, 1.236747988110467643e-03, 1.233786595998933320e-03, 1.230823348529759553e-03, 1.227858250609936740e-03, 1.224891307149020281e-03, 1.221922523059511571e-03, 1.218951903256661976e-03, 1.215979452658313888e-03, 1.213005176184985294e-03, 1.210029078760302152e-03, 1.207051165310143179e-03, 1.204071440763413098e-03, 1.201089910051456955e-03, 1.198106578108499871e-03, 1.195121449871445378e-03, 1.192134530279670293e-03, 1.189145824275410906e-03, 1.186155336803558068e-03, 1.183163072811455096e-03, 1.180169037249271819e-03, 1.177173235069813983e-03, 1.174175671228311823e-03, 1.171176350682804962e-03, 1.168175278393938791e-03, 1.165172459324754573e-03, 1.162167898441081705e-03, 1.159161600711333022e-03, 1.156153571106293592e-03, 1.153143814599577165e-03, 1.150132336167021194e-03, 1.147119140787478293e-03, 1.144104233441937176e-03, 1.141087619113984736e-03, 1.138069302789875871e-03, 1.135049289458360663e-03, 1.132027584110509169e-03, 1.129004191740089159e-03, 1.125979117343285088e-03, 1.122952365918837092e-03, 1.119923942467754112e-03, 1.116893851993710921e-03, 1.113862099502845602e-03, 1.110828690003601467e-03, 1.107793628506804472e-03, 1.104756920026108390e-03, 1.101718569577190545e-03, 1.098678582178213257e-03, 1.095636962849879346e-03, 1.092593716615226354e-03, 1.089548848499742768e-03, 1.086502363531102397e-03, 1.083454266739560965e-03, 1.080404563157726702e-03, 1.077353257820378406e-03, 1.074300355764837333e-03, 1.071245862030765963e-03, 1.068189781659962005e-03, 1.065132119696748057e-03, 1.062072881187762141e-03, 1.059012071181745628e-03, 1.055949694729949604e-03, 1.052885756885909132e-03, 1.049820262705237258e-03, 1.046753217246105096e-03, 1.043684625568666981e-03, 1.040614492735542291e-03, 1.037542823811598387e-03, 1.034469623863746787e-03, 1.031394897961330007e-03, 1.028318651175911440e-03, 1.025240888581078254e-03, 1.022161615252819341e-03, 1.019080836269326907e-03, 1.015998556710780501e-03, 1.012914781659746436e-03, 1.009829516200965067e-03, 1.006742765421137420e-03, 1.003654534409396167e-03, 1.000564828256683084e-03, 9.974736520565561249e-04, 9.943810109042997263e-04, 9.912869098973196760e-04, 9.881913541355479523e-04, 9.850943487206154786e-04, 9.819958987563139931e-04, 9.788960093486736777e-04, 9.757946856057299464e-04, 9.726919326376635240e-04, 9.695877555565157345e-04, 9.664821594765871625e-04, 9.633751495142291611e-04, 9.602667307876290711e-04, 9.571569084172097501e-04, 9.540456875254169598e-04, 9.509330732365747340e-04, 9.478190706769465271e-04, 9.447036849752028309e-04, 9.415869212615238888e-04, 9.384687846684163165e-04, 9.353492803300844823e-04, 9.322284133828969300e-04, 9.291061889651910065e-04, 9.259826122170308673e-04, 9.228576882806355198e-04, 9.197314223001496229e-04, 9.166038194214355369e-04, 9.134748847924766468e-04, 9.103446235631572694e-04, 9.072130408850562211e-04, 9.040801419118463461e-04, 9.009459317990785440e-04, 8.978104157039666633e-04, 8.946735987858692131e-04, 8.915354862057171207e-04, 8.883960831264971778e-04, 8.852553947130321638e-04, 8.821134261316949422e-04, 8.789701825511690280e-04, 8.758256691415300518e-04, 8.726798910747286635e-04, 8.695328535246451759e-04, 8.663845616669495946e-04, 8.632350206788829338e-04, 8.600842357396577213e-04, 8.569322120301849956e-04, 8.537789547331917257e-04, 8.506244690329456404e-04, 8.474687601156552985e-04, 8.443118331692558510e-04, 8.411536933832632155e-04, 8.379943459488326234e-04, 8.348337960592372951e-04, 8.316720489090277495e-04, 8.285091096945057087e-04, 8.253449836137894758e-04, 8.221796758665959014e-04, 8.190131916543671271e-04, 8.158455361799879339e-04, 8.126767146481971970e-04, 8.095067322653606368e-04, 8.063355942392626523e-04, 8.031633057795123549e-04, 7.999898720973251014e-04, 7.968152984053082557e-04, 7.936395899178686321e-04, 7.904627518509929444e-04, 7.872847894220313990e-04, 7.841057078501818996e-04, 7.809255123559097822e-04, 7.777442081614502345e-04, 7.745618004905692293e-04, 7.713782945683562249e-04, 7.681936956216292231e-04, 7.650080088787240004e-04, 7.618212395692666424e-04, 7.586333929245912865e-04, 7.554444741775220894e-04, 7.522544885621478212e-04, 7.490634413142414514e-04, 7.458713376710347440e-04, 7.426781828710028255e-04, 7.394839821542779175e-04, 7.362887407623561675e-04, 7.330924639382328497e-04, 7.298951569261804282e-04, 7.266968249718095980e-04, 7.234974733225605368e-04, 7.202971072268386874e-04, 7.170957319345059016e-04, 7.138933526969416972e-04, 7.106899747668926626e-04, 7.074856033982510626e-04, 7.042802438464738825e-04, 7.010739013682842392e-04, 6.978665812218143869e-04, 6.946582886663051765e-04, 6.914490289625256419e-04, 6.882388073725532324e-04, 6.850276291596201807e-04, 6.818154995881786640e-04, 6.786024239243886947e-04, 6.753884074352550955e-04, 6.721734553890467605e-04, 6.689575730557175423e-04, 6.657407657059646227e-04, 6.625230386120826466e-04, 6.593043970473112499e-04, 6.560848462863215404e-04, 6.528643916050021851e-04, 6.496430382802238128e-04, 6.464207915902738877e-04, 6.431976568146215460e-04, 6.399736392336981532e-04, 6.367487441293232875e-04, 6.335229767844713106e-04, 6.302963424830573466e-04, 6.270688465103545911e-04, 6.238404941527683637e-04, 6.206112906976156895e-04, 6.173812414336177440e-04, 6.141503516503178531e-04, 6.109186266385717694e-04, 6.076860716903302899e-04, 6.044526920984079951e-04, 6.012184931569106421e-04, 5.979834801610095420e-04, 5.947476584067158288e-04, 5.915110331913025392e-04, 5.882736098130849538e-04, 5.850353935711913962e-04, 5.817963897659910594e-04, 5.785566036987889113e-04, 5.753160406719709779e-04, 5.720747059887740585e-04, 5.688326049533478507e-04, 5.655897428712573696e-04, 5.623461250485997567e-04, 5.591017567924378524e-04, 5.558566434112180476e-04, 5.526107902138964164e-04, 5.493642025104392927e-04, 5.461168856118818167e-04, 5.428688448301055656e-04, 5.396200854779733191e-04, 5.363706128690315551e-04, 5.331204323179358903e-04, 5.298695491402229639e-04, 5.266179686520900197e-04, 5.233656961708159014e-04, 5.201127370145368399e-04, 5.168590965020180119e-04, 5.136047799530848350e-04, 5.103497926883931177e-04, 5.070941400291993162e-04, 5.038378272978710857e-04, 5.005808598172861983e-04, 4.973232429113343123e-04, 4.940649819046973121e-04, 4.908060821226177236e-04, 4.875465488913222024e-04, 4.842863875378040982e-04, 4.810256033895855257e-04, 4.777642017751595029e-04, 4.745021880237442705e-04, 4.712395674650742038e-04, 4.679763454298163628e-04, 4.647125272493489358e-04, 4.614481182555325270e-04, 4.581831237811354886e-04, 4.549175491595396146e-04, 4.516513997248717085e-04, 4.483846808117817554e-04, 4.451173977554991924e-04, 4.418495558923444893e-04, 4.385811605588382052e-04, 4.353122170922051970e-04, 4.320427308304354975e-04, 4.287727071121368093e-04, 4.255021512763028650e-04, 4.222310686627397361e-04, 4.189594646117698992e-04, 4.156873444643660815e-04, 4.124147135618557065e-04, 4.091415772463415112e-04, 4.058679408604830242e-04, 4.025938097473352913e-04, 3.993191892504175593e-04, 3.960440847142124429e-04, 3.927685014832091705e-04, 3.894924449027724095e-04, 3.862159203184739641e-04, 3.829389330765961704e-04, 3.796614885239066534e-04, 3.763835920074253319e-04, 3.731052488748582622e-04, 3.698264644743695217e-04, 3.665472441543497859e-04, 3.632675932638496303e-04, 3.599875171523494078e-04, 3.567070211695356867e-04, 3.534261106657225716e-04, 3.501447909916321523e-04, 3.468630674981618340e-04, 3.435809455368159585e-04, 3.402984304594772538e-04, 3.370155276181783393e-04, 3.337322423656068006e-04, 3.304485800544350988e-04, 3.271645460381914015e-04, 3.238801456703017988e-04, 3.205953843045888734e-04, 3.173102672953418486e-04, 3.140247999971572108e-04, 3.107389877647104845e-04, 3.074528359531906725e-04, 3.041663499180679653e-04, 3.008795350148677937e-04, 2.975923965995989256e-04, 2.943049400284546060e-04, 2.910171706579480822e-04, 2.877290938446853551e-04, 2.844407149454302852e-04, 2.811520393176066869e-04, 2.778630723184122644e-04, 2.745738193053223861e-04, 2.712842856361543232e-04, 2.679944766688369118e-04, 2.647043977615533413e-04, 2.614140542724347057e-04, 2.581234515599922200e-04, 2.548325949828884537e-04, 2.515414898997114378e-04, 2.482501416694012975e-04, 2.449585556510247932e-04, 2.416667372036190593e-04, 2.383746916862565751e-04, 2.350824244585482620e-04, 2.317899408796834763e-04, 2.284972463092262748e-04, 2.252043461068150903e-04, 2.219112456319322036e-04, 2.186179502444103367e-04, 2.153244653038341731e-04, 2.120307961700496893e-04, 2.087369482029304815e-04, 2.054429267621521167e-04, 2.021487372076230754e-04, 1.988543848992547656e-04, 1.955598751967337859e-04, 1.922652134599536278e-04, 1.889704050487850959e-04, 1.856754553228474056e-04, 1.823803696419404546e-04, 1.790851533658161649e-04, 1.757898118539478452e-04, 1.724943504660376525e-04, 1.691987745613451996e-04, 1.659030894995614219e-04, 1.626073006398439627e-04, 1.593114133413243907e-04, 1.560154329631695377e-04, 1.527193648644306059e-04, 1.494232144038097111e-04, 1.461269869400946483e-04, 1.428306878319287698e-04, 1.395343224375823266e-04, 1.362378961153837644e-04, 1.329414142234186947e-04, 1.296448821196660435e-04, 1.263483051616975646e-04, 1.230516887071075904e-04, 1.197550381132875177e-04, 1.164583587372658609e-04, 1.131616559357765159e-04, 1.098649350657621149e-04, 1.065682014834117692e-04, 1.032714605450330122e-04, 9.997471760638196596e-05, 9.667797802317011006e-05, 9.338124715083323882e-05, 9.008453034430404958e-05, 8.678783295844292342e-05, 8.349116034781044594e-05, 8.019451786643681107e-05, 7.689791086825447188e-05, 7.360134470686957727e-05, 7.030482473533193133e-05, 6.700835630656777977e-05, 6.371194477315063668e-05, 6.041559548707205028e-05, 5.711931380024711901e-05, 5.382310506391863432e-05, 5.052697462916185808e-05, 4.723092784665613541e-05, 4.393497006638162980e-05, 4.063910663841980984e-05, 3.734334291198869232e-05, 3.404768423594911039e-05, 3.075213595886917617e-05, 2.745670342886867400e-05, 2.416139199339034803e-05, 2.086620699963150614e-05, 1.757115379431545995e-05, 1.427623772346204836e-05, 1.098146413282007669e-05, 7.686838367564612450e-06, 4.392365772435382987e-06, 1.098051691507584608e-06, -2.196098531743243349e-06, -5.490079553935551289e-06, -8.783886032672101190e-06, -1.207751262603444019e-05, -1.537095399251780210e-05, -1.866420479126051438e-05, -2.195725968190544137e-05, -2.525011332490261390e-05, -2.854276038107720015e-05, -3.183519551185818420e-05, -3.512741337950769173e-05, -3.841940864668903034e-05, -4.171117597669515126e-05, -4.500271003360477448e-05, -4.829400548221701131e-05, -5.158505698754674290e-05, -5.487585921578673438e-05, -5.816640683343618029e-05, -6.145669450796996229e-05, -6.474671690733260450e-05, -6.803646870016783984e-05, -7.132594455604772898e-05, -7.461513914503967745e-05, -7.790404713793665247e-05, -8.119266320648520414e-05, -8.448098202295342446e-05, -8.776899826036081177e-05, -9.105670659270608870e-05, -9.434410169453594718e-05, -9.763117824117370676e-05, -1.009179309089479321e-04, -1.042043543747611645e-04, -1.074904433163180922e-04, -1.107761924123551440e-04, -1.140615963421341933e-04, -1.173466497861127856e-04, -1.206313474250716940e-04, -1.239156839410773250e-04, -1.271996540169766294e-04, -1.304832523363323347e-04, -1.337664735835797478e-04, -1.370493124442523640e-04, -1.403317636045531465e-04, -1.436138217516549312e-04, -1.468954815735633030e-04, -1.501767377594181931e-04, -1.534575849990614180e-04, -1.567380179832669372e-04, -1.600180314038954330e-04, -1.632976199538285268e-04, -1.665767783264667933e-04, -1.698555012166145508e-04, -1.731337833199779572e-04, -1.764116193330989273e-04, -1.796890039535853909e-04, -1.829659318799699394e-04, -1.862423978120152459e-04, -1.895183964502802486e-04, -1.927939224963504084e-04, -1.960689706530639818e-04, -1.993435356240837609e-04, -2.026176121141218560e-04, -2.058911948291719854e-04, -2.091642784760753887e-04, -2.124368577627511374e-04, -2.157089273984224361e-04, -2.189804820931871691e-04, -2.222515165582460443e-04, -2.255220255061316577e-04, -2.287920036502012766e-04, -2.320614457052342619e-04, -2.353303463869272640e-04, -2.385987004121223928e-04, -2.418665024990343038e-04, -2.451337473668203123e-04, -2.484004297358101626e-04, -2.516665443277300786e-04, -2.549320858652781357e-04, -2.581970490723443272e-04, -2.614614286742466490e-04, -2.647252193972949252e-04, -2.679884159690228270e-04, -2.712510131184113276e-04, -2.745130055753902394e-04, -2.777743880715006076e-04, -2.810351553390287582e-04, -2.842953021119635397e-04, -2.875548231255665999e-04, -2.908137131159437461e-04, -2.940719668209277574e-04, -2.973295789795759106e-04, -3.005865443321078558e-04, -3.038428576201323769e-04, -3.070985135865060122e-04, -3.103535069756393951e-04, -3.136078325330647664e-04, -3.168614850056608915e-04, -3.201144591418862728e-04, -3.233667496913455227e-04, -3.266183514050179136e-04, -3.298692590354116057e-04, -3.331194673364982692e-04, -3.363689710632143518e-04, -3.396177649724131165e-04, -3.428658438220009118e-04, -3.461132023716010286e-04, -3.493598353820524197e-04, -3.526057376156356473e-04, -3.558509038362992101e-04, -3.590953288092350783e-04, -3.623390073011009552e-04, -3.655819340802487181e-04, -3.688241039162976228e-04, -3.720655115803578653e-04, -3.753061518452608671e-04, -3.785460194851286838e-04, -3.817851092756021215e-04, -3.850234159940647870e-04, -3.882609344191465233e-04, -3.914976593313094751e-04, -3.947335855123510363e-04, -3.979687077456279544e-04, -4.012030208163552456e-04, -4.044365195108195511e-04, -4.076691986173236948e-04, -4.109010529256936959e-04, -4.141320772272149642e-04, -4.173622663147804018e-04, -4.205916149831198745e-04, -4.238201180283735782e-04, -4.270477702483887312e-04, -4.302745664425859456e-04, -4.335005014122529383e-04, -4.367255699601221798e-04, -4.399497668905954866e-04, -4.431730870098967855e-04, -4.463955251260075491e-04, -4.496170760481697434e-04, -4.528377345877607793e-04, -4.560574955577974894e-04, -4.592763537728714561e-04, -4.624943040493740914e-04, -4.657113412053578592e-04, -4.689274600608400690e-04, -4.721426554373719052e-04, -4.753569221582639955e-04, -4.785702550488157739e-04, -4.817826489358829922e-04, -4.849940986481134802e-04, -4.882045990161591612e-04, -4.914141448722617782e-04, -4.946227310504737462e-04, -4.978303523868800881e-04, -5.010370037191079961e-04, -5.042426798869065543e-04, -5.074473757316527766e-04, -5.106510860965773370e-04, -5.138538058269840128e-04, -5.170555297698334590e-04, -5.202562527739606991e-04, -5.234559696903021576e-04, -5.266546753714717363e-04, -5.298523646719892561e-04, -5.330490324484930690e-04, -5.362446735593299043e-04, -5.394392828647718175e-04, -5.426328552272393193e-04, -5.458253855108824394e-04, -5.490168685818749795e-04, -5.522072993082758436e-04, -5.553966725602587804e-04, -5.585849832100405008e-04, -5.617722261313991836e-04, -5.649583962005285016e-04, -5.681434882955527666e-04, -5.713274972964661053e-04, -5.745104180852761162e-04, -5.776922455462305765e-04, -5.808729745653977471e-04, -5.840526000309581318e-04, -5.872311168330728547e-04, -5.904085198641715162e-04, -5.935848040185408465e-04, -5.967599641925375349e-04, -5.999339952847495584e-04, -6.031068921959205050e-04, -6.062786498284686212e-04, -6.094492630873483193e-04, -6.126187268796277723e-04, -6.157870361140749650e-04, -6.189541857020791583e-04, -6.221201705568252683e-04, -6.252849855939225958e-04, -6.284486257309286443e-04, -6.316110858875609736e-04, -6.347723609859271584e-04, -6.379324459501001070e-04, -6.410913357063392380e-04, -6.442490251833203315e-04, -6.474055093117067269e-04, -6.505607830243746205e-04, -6.537148412566383621e-04, -6.568676789458234968e-04, -6.600192910315004101e-04, -6.631696724556909771e-04, -6.663188181623920557e-04, -6.694667230981431747e-04, -6.726133822115443889e-04, -6.757587904534691084e-04, -6.789029427772956841e-04, -6.820458341384781718e-04, -6.851874594947773758e-04, -6.883278138064745453e-04, -6.914668920359579680e-04, -6.946046891479470747e-04, -6.977412001096986545e-04, -7.008764198906077599e-04, -7.040103434624876482e-04, -7.071429657994420621e-04, -7.102742818780808775e-04, -7.134042866774584126e-04, -7.165329751785919337e-04, -7.196603423653144885e-04, -7.227863832238489231e-04, -7.259110927424129072e-04, -7.290344659120566971e-04, -7.321564977261829426e-04, -7.352771831804873811e-04, -7.383965172731714495e-04, -7.415144950048176012e-04, -7.446311113786734754e-04, -7.477463614002337203e-04, -7.508602400774722291e-04, -7.539727424210495481e-04, -7.570838634438974103e-04, -7.601935981614507546e-04, -7.633019415918519896e-04, -7.664088887555503809e-04, -7.695144346755075073e-04, -7.726185743774252688e-04, -7.757213028892643919e-04, -7.788226152417984573e-04, -7.819225064681494279e-04, -7.850209716040009106e-04, -7.881180056878005777e-04, -7.912136037603769009e-04, -7.943077608651268268e-04, -7.974004720482552773e-04, -8.004917323583567558e-04, -8.035815368466254658e-04, -8.066698805670859205e-04, -8.097567585761720555e-04, -8.128421659329493820e-04, -8.159260976993275988e-04, -8.190085489395866874e-04, -8.220895147210073757e-04, -8.251689901130445422e-04, -8.282469701882418491e-04, -8.313234500218151914e-04, -8.343984246912554458e-04, -8.374718892771575596e-04, -8.405438388627525011e-04, -8.436142685338388460e-04, -8.466831733789283859e-04, -8.497505484894734857e-04, -8.528163889594431602e-04, -8.558806898856231816e-04, -8.589434463674683025e-04, -8.620046535074060495e-04, -8.650643064104177873e-04, -8.681224001842529573e-04, -8.711789299395788057e-04, -8.742338907899210778e-04, -8.772872778511861015e-04, -8.803390862425655543e-04, -8.833893110857148545e-04, -8.864379475053854682e-04, -8.894849906289467763e-04, -8.925304355866024806e-04, -8.955742775116063608e-04, -8.986165115398496266e-04, -9.016571328100857815e-04, -9.046961364641374886e-04, -9.077335176464945482e-04, -9.107692715045260764e-04, -9.138033931886927917e-04, -9.168358778521530162e-04, -9.198667206509623853e-04, -9.228959167442901462e-04, -9.259234612940278695e-04, -9.289493494649877494e-04, -9.319735764251264919e-04, -9.349961373450629528e-04, -9.380170273987081678e-04, -9.410362417624598989e-04, -9.440537756160874514e-04, -9.470696241422557095e-04, -9.500837825264855626e-04, -9.530962459572843350e-04, -9.561070096263514593e-04, -9.591160687281927166e-04, -9.621234184603264525e-04, -9.651290540234868645e-04, -9.681329706212365082e-04, -9.711351634602379988e-04, -9.741356277501274840e-04, -9.771343587037274736e-04, -9.801313515369828710e-04, -9.831266014685030065e-04, -9.861201037203641637e-04, -9.891118535176651651e-04, -9.921018460884547304e-04, -9.950900766639422454e-04, -9.980765404783737294e-04, -1.001061232769300934e-03, -1.004044148777206861e-03, -1.007025283745685302e-03, -1.010004632921669612e-03, -1.012982191555033065e-03, -1.015957954898797679e-03, -1.018931918209275153e-03, -1.021904076745999441e-03, -1.024874425771287855e-03, -1.027842960551093691e-03, -1.030809676354292603e-03, -1.033774568452949750e-03, -1.036737632122536855e-03, -1.039698862641466647e-03, -1.042658255291628458e-03, -1.045615805357941533e-03, -1.048571508128550833e-03, -1.051525358895048431e-03, -1.054477352952056532e-03, -1.057427485597469677e-03, -1.060375752132626265e-03, -1.063322147861946870e-03, -1.066266668093119414e-03, -1.069209308137316012e-03, -1.072150063308800272e-03, -1.075088928925133948e-03, -1.078025900307389871e-03, -1.080960972779679459e-03, -1.083894141669763120e-03, -1.086825402308280253e-03, -1.089754750029591455e-03, -1.092682180171335518e-03, -1.095607688074369361e-03, -1.098531269082910497e-03, -1.101452918544735225e-03, -1.104372631810798507e-03, -1.107290404235427173e-03, -1.110206231176542619e-03, -1.113120107995258564e-03, -1.116032030056153621e-03, -1.118941992727155070e-03, -1.121849991379732280e-03, -1.124756021388849652e-03, -1.127660078132507572e-03, -1.130562156992537129e-03, -1.133462253354214572e-03, -1.136360362605877503e-03, -1.139256480139784868e-03, -1.142150601351330473e-03, -1.145042721639650358e-03, -1.147932836407163310e-03, -1.150820941059780330e-03, -1.153707031007101527e-03, -1.156591101662042065e-03, -1.159473148441023203e-03, -1.162353166764180457e-03, -1.165231152054984351e-03, -1.168107099740434921e-03, -1.170981005251267928e-03, -1.173852864021575175e-03, -1.176722671489002477e-03, -1.179590423094947641e-03, -1.182456114284126999e-03, -1.185319740505084551e-03, -1.188181297209766306e-03, -1.191040779853690936e-03, -1.193898183896186568e-03, -1.196753504799986153e-03, -1.199606738031433690e-03, -1.202457879060688699e-03, -1.205306923361348492e-03, -1.208153866410636382e-03, -1.210998703689614847e-03, -1.213841430682805183e-03, -1.216682042878378762e-03, -1.219520535768365416e-03, -1.222356904848271794e-03, -1.225191145617351117e-03, -1.228023253578465045e-03, -1.230853224238304426e-03, -1.233681053107324021e-03, -1.236506735699289964e-03, -1.239330267532078381e-03, -1.242151644127206149e-03, -1.244970861009807913e-03, -1.247787913708798494e-03, -1.250602797756777051e-03, -1.253415508690288588e-03, -1.256226042049434291e-03, -1.259034393378080565e-03, -1.261840558224048767e-03, -1.264644532138755901e-03, -1.267446310677397200e-03, -1.270245889399085337e-03, -1.273043263866787539e-03, -1.275838429646910773e-03, -1.278631382310101020e-03, -1.281422117430519245e-03, -1.284210630586395639e-03, -1.286996917359604182e-03, -1.289780973335866035e-03, -1.292562794104933641e-03, -1.295342375260219057e-03, -1.298119712398998656e-03, -1.300894801122610880e-03, -1.303667637036068317e-03, -1.306438215748275625e-03, -1.309206532872208206e-03, -1.311972584024549433e-03, -1.314736364825887108e-03, -1.317497870900899079e-03, -1.320257097878000654e-03, -1.323014041389524581e-03, -1.325768697071921191e-03, -1.328521060565332739e-03, -1.331271127514145267e-03, -1.334018893566273241e-03, -1.336764354373951025e-03, -1.339507505593319795e-03, -1.342248342884367913e-03, -1.344986861911061241e-03, -1.347723058341533968e-03, -1.350456927847724529e-03, -1.353188466105640156e-03, -1.355917668795225250e-03, -1.358644531600620726e-03, -1.361369050209803189e-03, -1.364091220314772937e-03, -1.366811037611691433e-03, -1.369528497800816041e-03, -1.372243596586077185e-03, -1.374956329675836638e-03, -1.377666692782449076e-03, -1.380374681622211115e-03, -1.383080291915558206e-03, -1.385783519386938646e-03, -1.388484359765075745e-03, -1.391182808782601360e-03, -1.393878862176246933e-03, -1.396572515687037131e-03, -1.399263765059917093e-03, -1.401952606043963641e-03, -1.404639034392496291e-03, -1.407323045863030425e-03, -1.410004636216859219e-03, -1.412683801219840121e-03, -1.415360536641749323e-03, -1.418034838256525048e-03, -1.420706701842442765e-03, -1.423376123181723570e-03, -1.426043098060995407e-03, -1.428707622270908827e-03, -1.431369691606289209e-03, -1.434029301866361628e-03, -1.436686448854369641e-03, -1.439341128377757441e-03, -1.441993336248389946e-03, -1.444643068282169861e-03, -1.447290320299225892e-03, -1.449935088124115496e-03, -1.452577367585464055e-03, -1.455217154516141387e-03, -1.457854444753462755e-03, -1.460489234138764945e-03, -1.463121518517964629e-03, -1.465751293740825880e-03, -1.468378555661772021e-03, -1.471003300139444789e-03, -1.473625523036673542e-03, -1.476245220220591707e-03, -1.478862387562821304e-03, -1.481477020939126225e-03, -1.484089116229649888e-03, -1.486698669318809417e-03, -1.489305676095538508e-03, -1.491910132452940480e-03, -1.494512034288461751e-03, -1.497111377504088073e-03, -1.499708158005983718e-03, -1.502302371704695300e-03, -1.504894014515251958e-03, -1.507483082357133916e-03, -1.510069571153846175e-03, -1.512653476833713661e-03, -1.515234795329155901e-03, -1.517813522577244950e-03, -1.520389654519286888e-03, -1.522963187101017196e-03, -1.525534116272758397e-03, -1.528102437989104336e-03, -1.530668148209081945e-03, -1.533231242896345315e-03, -1.535791718018821592e-03, -1.538349569548903535e-03, -1.540904793463607377e-03, -1.543457385744269241e-03, -1.546007342376687181e-03, -1.548554659351319149e-03, -1.551099332662891385e-03, -1.553641358310847926e-03, -1.556180732298968316e-03, -1.558717450635532190e-03, -1.561251509333583818e-03, -1.563782904410269221e-03, -1.566311631887614634e-03, -1.568837687792121660e-03, -1.571361068154716531e-03, -1.573881769010877611e-03, -1.576399786400800845e-03, -1.578915116369076230e-03, -1.581427754964908564e-03, -1.583937698242022683e-03, -1.586444942258893528e-03, -1.588949483078404843e-03, -1.591451316768036301e-03, -1.593950439399967811e-03, -1.596446847051050458e-03, -1.598940535802389085e-03, -1.601431501740061339e-03, -1.603919740954693959e-03, -1.606405249541428088e-03, -1.608888023600108788e-03, -1.611368059235147128e-03, -1.613845352555775409e-03, -1.616319899675714095e-03, -1.618791696713328589e-03, -1.621260739791828293e-03, -1.623727025038914458e-03, -1.626190548586973822e-03, -1.628651306573230401e-03, -1.631109295139438874e-03, -1.633564510432038543e-03, -1.636016948602348701e-03, -1.638466605806157507e-03, -1.640913478204197515e-03, -1.643357561961740401e-03, -1.645798853248797971e-03, -1.648237348240267665e-03, -1.650673043115619002e-03, -1.653105934059059682e-03, -1.655536017259718164e-03, -1.657963288911297592e-03, -1.660387745212280920e-03, -1.662809382366064277e-03, -1.665228196580660321e-03, -1.667644184068851117e-03, -1.670057341048370066e-03, -1.672467663741582710e-03, -1.674875148375694258e-03, -1.677279791182655685e-03, -1.679681588399344365e-03, -1.682080536267495114e-03, -1.684476631033335250e-03, -1.686869868948250289e-03, -1.689260246268394286e-03, -1.691647759254651887e-03, -1.694032404172751520e-03, -1.696414177293424337e-03, -1.698793074892102810e-03, -1.701169093249130194e-03, -1.703542228649652110e-03, -1.705912477383855937e-03, -1.708279835746644680e-03, -1.710644300037797005e-03, -1.713005866562096035e-03, -1.715364531629264304e-03, -1.717720291553604881e-03, -1.720073142654657966e-03, -1.722423081256804940e-03, -1.724770103689243859e-03, -1.727114206286157290e-03, -1.729455385386584158e-03, -1.731793637334679958e-03, -1.734128958479366767e-03, -1.736461345174510843e-03, -1.738790793779095662e-03, -1.741117300656898391e-03, -1.743440862176662927e-03, -1.745761474712253201e-03, -1.748079134642353946e-03, -1.750393838350625944e-03, -1.752705582225874735e-03, -1.755014362661739234e-03, -1.757320176056856309e-03, -1.759623018815017993e-03, -1.761922887344816516e-03, -1.764219778060068444e-03, -1.766513687379444317e-03, -1.768804611726647975e-03, -1.771092547530566611e-03, -1.773377491224960908e-03, -1.775659439248644797e-03, -1.777938388045618816e-03, -1.780214334064796457e-03, -1.782487273760134487e-03, -1.784757203590814660e-03, -1.787024120020927129e-03, -1.789288019519695312e-03, -1.791548898561369637e-03, -1.793806753625378251e-03, -1.796061581196300994e-03, -1.798313377763503590e-03, -1.800562139821760632e-03, -1.802807863870947453e-03, -1.805050546415748686e-03, -1.807290183966283421e-03, -1.809526773037719661e-03, -1.811760310150275187e-03, -1.813990791829339644e-03, -1.816218214605394956e-03, -1.818442575014210484e-03, -1.820663869596570242e-03, -1.822882094898402782e-03, -1.825097247470950333e-03, -1.827309323870469123e-03, -1.829518320658390712e-03, -1.831724234401462285e-03, -1.833927061671484495e-03, -1.836126799045424219e-03, -1.838323443105596266e-03, -1.840516990439322077e-03, -1.842707437639313746e-03, -1.844894781303355697e-03, -1.847079018034425467e-03, -1.849260144440893414e-03, -1.851438157136186613e-03, -1.853613052738971659e-03, -1.855784827873295821e-03, -1.857953479168290411e-03, -1.860119003258342953e-03, -1.862281396783229239e-03, -1.864440656387845313e-03, -1.866596778722336711e-03, -1.868749760442261522e-03, -1.870899598208268597e-03, -1.873046288686502393e-03, -1.875189828548067374e-03, -1.877330214469636249e-03, -1.879467443133183910e-03, -1.881601511225674530e-03, -1.883732415439682379e-03, -1.885860152473024061e-03, -1.887984719028750272e-03, -1.890106111815203702e-03, -1.892224327546219824e-03, -1.894339362940798601e-03, -1.896451214723330865e-03, -1.898559879623489899e-03, -1.900665354376437650e-03, -1.902767635722542620e-03, -1.904866720407529055e-03, -1.906962605182556088e-03, -1.909055286804214489e-03, -1.911144762034166925e-03, -1.913231027639783737e-03, -1.915314080393568097e-03, -1.917393917073609635e-03, -1.919470534463225356e-03, -1.921543929351146335e-03, -1.923614098531622237e-03, -1.925681038804174768e-03, -1.927744746973728430e-03, -1.929805219850764912e-03, -1.931862454251038162e-03, -1.933916446995726391e-03, -1.935967194911571935e-03, -1.938014694830614108e-03, -1.940058943590322778e-03, -1.942099938033752318e-03, -1.944137675009261238e-03, -1.946172151370669824e-03, -1.948203363977371594e-03, -1.950231309694064200e-03, -1.952255985391113504e-03, -1.954277387944054409e-03, -1.956295514234155514e-03, -1.958310361148141773e-03, -1.960321925578110362e-03, -1.962330204421655361e-03, -1.964335194582007837e-03, -1.966336892967751344e-03, -1.968335296492979350e-03, -1.970330402077434453e-03, -1.972322206646223881e-03, -1.974310707130030700e-03, -1.976295900465009723e-03, -1.978277783592929332e-03, -1.980256353461141983e-03, -1.982231607022263281e-03, -1.984203541234724928e-03, -1.986172153062453361e-03, -1.988137439474843299e-03, -1.990099397446837108e-03, -1.992058023959072249e-03, -1.994013315997628880e-03, -1.995965270554181641e-03, -1.997913884625947614e-03, -1.999859155215857626e-03, -2.001801079332282598e-03, -2.003739653989185330e-03, -2.005674876206215481e-03, -2.007606743008653188e-03, -2.009535251427125007e-03, -2.011460398498163358e-03, -2.013382181263745525e-03, -2.015300596771452384e-03, -2.017215642074620188e-03, -2.019127314232036560e-03, -2.021035610308291770e-03, -2.022940527373472998e-03, -2.024842062503310908e-03, -2.026740212779312364e-03, -2.028634975288483300e-03, -2.030526347123500028e-03, -2.032414325382815926e-03, -2.034298907170407726e-03, -2.036180089595929048e-03, -2.038057869774821413e-03, -2.039932244828074857e-03, -2.041803211882357166e-03, -2.043670768070141378e-03, -2.045534910529421720e-03, -2.047395636404088313e-03, -2.049252942843441446e-03, -2.051106827002720234e-03, -2.052957286042838506e-03, -2.054804317130317585e-03, -2.056647917437410319e-03, -2.058488084142189121e-03, -2.060324814428352112e-03, -2.062158105485285570e-03, -2.063987954508262560e-03, -2.065814358698143689e-03, -2.067637315261577902e-03, -2.069456821410911411e-03, -2.071272874364326038e-03, -2.073085471345791075e-03, -2.074894609584778359e-03, -2.076700286316769672e-03, -2.078502498783015625e-03, -2.080301244230274137e-03, -2.082096519911381602e-03, -2.083888323084726827e-03, -2.085676651014655228e-03, -2.087461500971159178e-03, -2.089242870230029366e-03, -2.091020756072974052e-03, -2.092795155787373611e-03, -2.094566066666398926e-03, -2.096333486009157969e-03, -2.098097411120440799e-03, -2.099857839310858339e-03, -2.101614767896949933e-03, -2.103368194200959992e-03, -2.105118115550960733e-03, -2.106864529280959297e-03, -2.108607432730647512e-03, -2.110346823245721083e-03, -2.112082698177586860e-03, -2.113815054883499446e-03, -2.115543890726673086e-03, -2.117269203076077404e-03, -2.118990989306519801e-03, -2.120709246798793343e-03, -2.122423972939440837e-03, -2.124135165120867585e-03, -2.125842820741481905e-03, -2.127546937205435345e-03, -2.129247511922772312e-03, -2.130944542309535887e-03, -2.132638025787539707e-03, -2.134327959784524525e-03, -2.136014341734100101e-03, -2.137697169075846240e-03, -2.139376439255281578e-03, -2.141052149723608571e-03, -2.142724297938174496e-03, -2.144392881362194338e-03, -2.146057897464731263e-03, -2.147719343720815889e-03, -2.149377217611356077e-03, -2.151031516623316472e-03, -2.152682238249467844e-03, -2.154329379988532793e-03, -2.155972939345287675e-03, -2.157612913830340550e-03, -2.159249300960240040e-03, -2.160882098257573339e-03, -2.162511303250922844e-03, -2.164136913474603349e-03, -2.165758926469159035e-03, -2.167377339780909417e-03, -2.168992150962301916e-03, -2.170603357571642116e-03, -2.172210957173228204e-03, -2.173814947337431632e-03, -2.175415325640516276e-03, -2.177012089664732974e-03, -2.178605236998424916e-03, -2.180194765235840722e-03, -2.181780671977221614e-03, -2.183362954828921114e-03, -2.184941611403194706e-03, -2.186516639318303052e-03, -2.188088036198650339e-03, -2.189655799674524502e-03, -2.191219927382255950e-03, -2.192780416964308209e-03, -2.194337266069015975e-03, -2.195890472350935096e-03, -2.197440033470412796e-03, -2.198985947094047808e-03, -2.200528210894440572e-03, -2.202066822550176762e-03, -2.203601779745878453e-03, -2.205133080172352877e-03, -2.206660721526330048e-03, -2.208184701510652707e-03, -2.209705017834193933e-03, -2.211221668211988105e-03, -2.212734650365052666e-03, -2.214243962020464879e-03, -2.215749600911452472e-03, -2.217251564777365878e-03, -2.218749851363425833e-03, -2.220244458421149689e-03, -2.221735383708114617e-03, -2.223222624987922051e-03, -2.224706180030309143e-03, -2.226186046611067660e-03, -2.227662222512215295e-03, -2.229134705521761475e-03, -2.230603493433827925e-03, -2.232068584048757954e-03, -2.233529975172912629e-03, -2.234987664618770953e-03, -2.236441650204998386e-03, -2.237891929756426895e-03, -2.239338501103826842e-03, -2.240781362084316806e-03, -2.242220510541028788e-03, -2.243655944323245683e-03, -2.245087661286477177e-03, -2.246515659292258518e-03, -2.247939936208400748e-03, -2.249360489908773433e-03, -2.250777318273390962e-03, -2.252190419188545255e-03, -2.253599790546579815e-03, -2.255005430245999882e-03, -2.256407336191586926e-03, -2.257805506294192650e-03, -2.259199938470846103e-03, -2.260590630644840858e-03, -2.261977580745574978e-03, -2.263360786708605663e-03, -2.264740246475793230e-03, -2.266115957995058251e-03, -2.267487919220653476e-03, -2.268856128112832927e-03, -2.270220582638227905e-03, -2.271581280769633619e-03, -2.272938220485999205e-03, -2.274291399772468934e-03, -2.275640816620506240e-03, -2.276986469027688590e-03, -2.278328354997840189e-03, -2.279666472540973435e-03, -2.281000819673419892e-03, -2.282331394417644668e-03, -2.283658194802333161e-03, -2.284981218862507275e-03, -2.286300464639322034e-03, -2.287615930180172258e-03, -2.288927613538751116e-03, -2.290235512775028008e-03, -2.291539625955046899e-03, -2.292839951151294953e-03, -2.294136486442359055e-03, -2.295429229913220279e-03, -2.296718179655006260e-03, -2.298003333765118259e-03, -2.299284690347296652e-03, -2.300562247511473910e-03, -2.301836003373836179e-03, -2.303105956056940382e-03, -2.304372103689519488e-03, -2.305634444406591370e-03, -2.306892976349528192e-03, -2.308147697665910696e-03, -2.309398606509598020e-03, -2.310645701040822241e-03, -2.311888979425986285e-03, -2.313128439837911551e-03, -2.314364080455614571e-03, -2.315595899464430174e-03, -2.316823895056078705e-03, -2.318048065428407987e-03, -2.319268408785734627e-03, -2.320484923338653627e-03, -2.321697607304012371e-03, -2.322906458904976101e-03, -2.324111476371110326e-03, -2.325312657938209942e-03, -2.326510001848426743e-03, -2.327703506350202196e-03, -2.328893169698382365e-03, -2.330078990154079571e-03, -2.331260965984708385e-03, -2.332439095464094482e-03, -2.333613376872419130e-03, -2.334783808496034875e-03, -2.335950388627798177e-03, -2.337113115566900271e-03, -2.338271987618798214e-03, -2.339427003095341084e-03, -2.340578160314692787e-03, -2.341725457601459993e-03, -2.342868893286515625e-03, -2.344008465707096440e-03, -2.345144173206884560e-03, -2.346276014135827495e-03, -2.347403986850258705e-03, -2.348528089712935332e-03, -2.349648321092935848e-03, -2.350764679365683913e-03, -2.351877162913065464e-03, -2.352985770123243968e-03, -2.354090499390859483e-03, -2.355191349116857787e-03, -2.356288317708562802e-03, -2.357381403579782413e-03, -2.358470605150604638e-03, -2.359555920847525561e-03, -2.360637349103516126e-03, -2.361714888357850390e-03, -2.362788537056213084e-03, -2.363858293650763359e-03, -2.364924156599966520e-03, -2.365986124368715023e-03, -2.367044195428370974e-03, -2.368098368256631257e-03, -2.369148641337631180e-03, -2.370195013161897207e-03, -2.371237482226405940e-03, -2.372276047034572836e-03, -2.373310706096114740e-03, -2.374341457927280595e-03, -2.375368301050744761e-03, -2.376391233995538491e-03, -2.377410255297130164e-03, -2.378425363497476894e-03, -2.379436557144921742e-03, -2.380443834794237091e-03, -2.381447195006622039e-03, -2.382446636349779597e-03, -2.383442157397775308e-03, -2.384433756731132222e-03, -2.385421432936846078e-03, -2.386405184608389202e-03, -2.387385010345526633e-03, -2.388360908754650052e-03, -2.389332878448530151e-03, -2.390300918046386024e-03, -2.391265026173883864e-03, -2.392225201463140435e-03, -2.393181442552800263e-03, -2.394133748087887321e-03, -2.395082116719904775e-03, -2.396026547106864472e-03, -2.396967037913205843e-03, -2.397903587809811516e-03, -2.398836195474117472e-03, -2.399764859589953881e-03, -2.400689578847630973e-03, -2.401610351944000622e-03, -2.402527177582312792e-03, -2.403440054472319627e-03, -2.404348981330291062e-03, -2.405253956878920709e-03, -2.406154979847452066e-03, -2.407052048971560550e-03, -2.407945162993401205e-03, -2.408834320661695002e-03, -2.409719520731569246e-03, -2.410600761964669467e-03, -2.411478043129176331e-03, -2.412351362999711531e-03, -2.413220720357407614e-03, -2.414086113989937898e-03, -2.414947542691424972e-03, -2.415805005262510515e-03, -2.416658500510327975e-03, -2.417508027248555045e-03, -2.418353584297382869e-03, -2.419195170483408493e-03, -2.420032784639849967e-03, -2.420866425606448338e-03, -2.421696092229324963e-03, -2.422521783361238253e-03, -2.423343497861455732e-03, -2.424161234595713279e-03, -2.424974992436280605e-03, -2.425784770261949115e-03, -2.426590566958063567e-03, -2.427392381416463088e-03, -2.428190212535497224e-03, -2.428984059220097060e-03, -2.429773920381679379e-03, -2.430559794938178322e-03, -2.431341681814118676e-03, -2.432119579940505288e-03, -2.432893488254876408e-03, -2.433663405701361367e-03, -2.434429331230552208e-03, -2.435191263799653307e-03, -2.435949202372354738e-03, -2.436703145918886915e-03, -2.437453093416075672e-03, -2.438199043847240777e-03, -2.438940996202245380e-03, -2.439678949477548046e-03, -2.440412902676110385e-03, -2.441142854807437819e-03, -2.441868804887642030e-03, -2.442590751939323866e-03, -2.443308694991657044e-03, -2.444022633080398989e-03, -2.444732565247808870e-03, -2.445438490542782041e-03, -2.446140408020658786e-03, -2.446838316743432055e-03, -2.447532215779655521e-03, -2.448222104204350776e-03, -2.448907981099189470e-03, -2.449589845552417426e-03, -2.450267696658771800e-03, -2.450941533519589068e-03, -2.451611355242810236e-03, -2.452277160942892362e-03, -2.452938949740886623e-03, -2.453596720764390175e-03, -2.454250473147627683e-03, -2.454900206031339436e-03, -2.455545918562853768e-03, -2.456187609896085325e-03, -2.456825279191558482e-03, -2.457458925616266832e-03, -2.458088548343906939e-03, -2.458714146554660199e-03, -2.459335719435359370e-03, -2.459953266179365841e-03, -2.460566785986632952e-03, -2.461176278063732445e-03, -2.461781741623771200e-03, -2.462383175886466262e-03, -2.462980580078129658e-03, -2.463573953431633708e-03, -2.464163295186444849e-03, -2.464748604588650957e-03, -2.465329880890892392e-03, -2.465907123352386720e-03, -2.466480331239005470e-03, -2.467049503823134926e-03, -2.467614640383821844e-03, -2.468175740206668932e-03, -2.468732802583866945e-03, -2.469285826814258001e-03, -2.469834812203175120e-03, -2.470379758062647355e-03, -2.470920663711275757e-03, -2.471457528474239017e-03, -2.471990351683314279e-03, -2.472519132676910970e-03, -2.473043870800010081e-03, -2.473564565404185421e-03, -2.474081215847656091e-03, -2.474593821495207555e-03, -2.475102381718243243e-03, -2.475606895894745963e-03, -2.476107363409340342e-03, -2.476603783653266375e-03, -2.477096156024287052e-03, -2.477584479926867034e-03, -2.478068754772042546e-03, -2.478548979977451740e-03, -2.479025154967328184e-03, -2.479497279172563750e-03, -2.479965352030608864e-03, -2.480429372985553608e-03, -2.480889341488071772e-03, -2.481345256995497617e-03, -2.481797118971725696e-03, -2.482244926887282408e-03, -2.482688680219323398e-03, -2.483128378451620114e-03, -2.483564021074505593e-03, -2.483995607584988958e-03, -2.484423137486670846e-03, -2.484846610289747747e-03, -2.485266025511072719e-03, -2.485681382674085563e-03, -2.486092681308862268e-03, -2.486499920952078141e-03, -2.486903101147029931e-03, -2.487302221443651439e-03, -2.487697281398474920e-03, -2.488088280574650597e-03, -2.488475218541970953e-03, -2.488858094876824755e-03, -2.489236909162224377e-03, -2.489611660987824018e-03, -2.489982349949866787e-03, -2.490348975651235450e-03, -2.490711537701442019e-03, -2.491070035716592187e-03, -2.491424469319460360e-03, -2.491774838139389041e-03, -2.492121141812371227e-03, -2.492463379981038271e-03, -2.492801552294611304e-03, -2.493135658408948511e-03, -2.493465697986554670e-03, -2.493791670696521735e-03, -2.494113576214575245e-03, -2.494431414223081695e-03, -2.494745184411030318e-03, -2.495054886474010972e-03, -2.495360520114256637e-03, -2.495662085040624336e-03, -2.495959580968604239e-03, -2.496253007620282804e-03, -2.496542364724398284e-03, -2.496827652016319048e-03, -2.497108869237999341e-03, -2.497386016138072960e-03, -2.497659092471751340e-03, -2.497928098000918532e-03, -2.498193032494037957e-03, -2.498453895726220932e-03, -2.498710687479210619e-03, -2.498963407541364683e-03, -2.499212055707671336e-03, -2.499456631779747601e-03, -2.499697135565828905e-03, -2.499933566880776451e-03, -2.500165925546090229e-03, -2.500394211389881261e-03, -2.500618424246890681e-03, -2.500838563958490603e-03, -2.501054630372674583e-03, -2.501266623344060649e-03, -2.501474542733892175e-03, -2.501678388410037875e-03, -2.501878160247004816e-03, -2.502073858125894619e-03, -2.502265481934455495e-03, -2.502453031567072276e-03, -2.502636506924721307e-03, -2.502815907915030297e-03, -2.502991234452245362e-03, -2.503162486457226246e-03, -2.503329663857459340e-03, -2.503492766587073291e-03, -2.503651794586790862e-03, -2.503806747803990086e-03, -2.503957626192630966e-03, -2.504104429713332244e-03, -2.504247158333335402e-03, -2.504385812026463896e-03, -2.504520390773211629e-03, -2.504650894560661849e-03, -2.504777323382536593e-03, -2.504899677239170227e-03, -2.505017956137505115e-03, -2.505132160091137587e-03, -2.505242289120261992e-03, -2.505348343251677639e-03, -2.505450322518836068e-03, -2.505548226961780336e-03, -2.505642056627181008e-03, -2.505731811568336163e-03, -2.505817491845160980e-03, -2.505899097524155652e-03, -2.505976628678473466e-03, -2.506050085387872672e-03, -2.506119467738724717e-03, -2.506184775824014683e-03, -2.506246009743343019e-03, -2.506303169602929447e-03, -2.506356255515602982e-03, -2.506405267600809311e-03, -2.506450205984607320e-03, -2.506491070799653480e-03, -2.506527862185236547e-03, -2.506560580287239826e-03, -2.506589225258177601e-03, -2.506613797257145268e-03, -2.506634296449871367e-03, -2.506650723008686799e-03, -2.506663077112513977e-03, -2.506671358946919309e-03, -2.506675568704040333e-03, -2.506675706582632557e-03, -2.506671772788056449e-03, -2.506663767532285678e-03, -2.506651691033898437e-03, -2.506635543518055328e-03, -2.506615325216544465e-03, -2.506591036367739837e-03, -2.506562677216621262e-03, -2.506530248014776554e-03, -2.506493749020382005e-03, -2.506453180498220169e-03, -2.506408542719662080e-03, -2.506359835962700643e-03, -2.506307060511892525e-03, -2.506250216658419301e-03, -2.506189304700034547e-03, -2.506124324941106339e-03, -2.506055277692579089e-03, -2.505982163272001736e-03, -2.505904982003508662e-03, -2.505823734217831836e-03, -2.505738420252285204e-03, -2.505649040450773791e-03, -2.505555595163791970e-03, -2.505458084748429966e-03, -2.505356509568351306e-03, -2.505250869993811032e-03, -2.505141166401650497e-03, -2.505027399175287824e-03, -2.504909568704732220e-03, -2.504787675386573129e-03, -2.504661719623977201e-03, -2.504531701826698264e-03, -2.504397622411053473e-03, -2.504259481799955400e-03, -2.504117280422875173e-03, -2.503971018715878908e-03, -2.503820697121601248e-03, -2.503666316089241031e-03, -2.503507876074586441e-03, -2.503345377539975547e-03, -2.503178820954334895e-03, -2.503008206793154358e-03, -2.502833535538498411e-03, -2.502654807678974472e-03, -2.502472023709787115e-03, -2.502285184132693827e-03, -2.502094289456001982e-03, -2.501899340194620441e-03, -2.501700336869957641e-03, -2.501497280010039556e-03, -2.501290170149436404e-03, -2.501079007829245734e-03, -2.500863793597160514e-03, -2.500644528007420989e-03, -2.500421211620792571e-03, -2.500193845004629149e-03, -2.499962428732823219e-03, -2.499726963385818460e-03, -2.499487449550598026e-03, -2.499243887820703190e-03, -2.498996278796227280e-03, -2.498744623083798324e-03, -2.498488921296579488e-03, -2.498229174054308974e-03, -2.497965381983235401e-03, -2.497697545716155102e-03, -2.497425665892407352e-03, -2.497149743157869167e-03, -2.496869778164953133e-03, -2.496585771572596996e-03, -2.496297724046280583e-03, -2.496005636258028827e-03, -2.495709508886359736e-03, -2.495409342616347701e-03, -2.495105138139599218e-03, -2.494796896154227728e-03, -2.494484617364875305e-03, -2.494168302482729135e-03, -2.493847952225461666e-03, -2.493523567317287859e-03, -2.493195148488942629e-03, -2.492862696477664806e-03, -2.492526212027225754e-03, -2.492185695887883835e-03, -2.491841148816441222e-03, -2.491492571576203567e-03, -2.491139964936952677e-03, -2.490783329675022844e-03, -2.490422666573237527e-03, -2.490057976420907617e-03, -2.489689260013872637e-03, -2.489316518154467781e-03, -2.488939751651503534e-03, -2.488558961320319445e-03, -2.488174147982739025e-03, -2.487785312467090133e-03, -2.487392455608159435e-03, -2.486995578247262230e-03, -2.486594681232206887e-03, -2.486189765417247573e-03, -2.485780831663149740e-03, -2.485367880837192293e-03, -2.484950913813085190e-03, -2.484529931471037099e-03, -2.484104934697748887e-03, -2.483675924386401484e-03, -2.483242901436631591e-03, -2.482805866754554235e-03, -2.482364821252762335e-03, -2.481919765850337540e-03, -2.481470701472784750e-03, -2.481017629052108438e-03, -2.480560549526787499e-03, -2.480099463841718005e-03, -2.479634372948306444e-03, -2.479165277804394260e-03, -2.478692179374276071e-03, -2.478215078628722215e-03, -2.477733976544928014e-03, -2.477248874106562776e-03, -2.476759772303742477e-03, -2.476266672133019785e-03, -2.475769574597405740e-03, -2.475268480706354583e-03, -2.474763391475747268e-03, -2.474254307927916188e-03, -2.473741231091638234e-03, -2.473224162002106603e-03, -2.472703101700968534e-03, -2.472178051236300581e-03, -2.471649011662583467e-03, -2.471115984040757156e-03, -2.470578969438177921e-03, -2.470037968928625715e-03, -2.469492983592297235e-03, -2.468944014515785969e-03, -2.468391062792176308e-03, -2.467834129520892188e-03, -2.467273215807784265e-03, -2.466708322765147256e-03, -2.466139451511670938e-03, -2.465566603172431471e-03, -2.464989778878926095e-03, -2.464408979769060985e-03, -2.463824206987143012e-03, -2.463235461683853291e-03, -2.462642745016291844e-03, -2.462046058147956788e-03, -2.461445402248711809e-03, -2.460840778494803940e-03, -2.460232188068937290e-03, -2.459619632160126891e-03, -2.459003111963781966e-03, -2.458382628681722408e-03, -2.457758183522119368e-03, -2.457129777699552063e-03, -2.456497412434914974e-03, -2.455861088955536235e-03, -2.455220808495083961e-03, -2.454576572293578392e-03, -2.453928381597429188e-03, -2.453276237659409841e-03, -2.452620141738619513e-03, -2.451960095100551990e-03, -2.451296099017055349e-03, -2.450628154766285993e-03, -2.449956263632790173e-03, -2.449280426907473208e-03, -2.448600645887533556e-03, -2.447916921876564737e-03, -2.447229256184459481e-03, -2.446537650127481728e-03, -2.445842105028218048e-03, -2.445142622215569841e-03, -2.444439203024801471e-03, -2.443731848797500803e-03, -2.443020560881533233e-03, -2.442305340631146637e-03, -2.441586189406896781e-03, -2.440863108575618695e-03, -2.440136099510506040e-03, -2.439405163591048219e-03, -2.438670302203058138e-03, -2.437931516738634473e-03, -2.437188808596164706e-03, -2.436442179180416633e-03, -2.435691629902381368e-03, -2.434937162179357482e-03, -2.434178777434967481e-03, -2.433416477099123974e-03, -2.432650262607990652e-03, -2.431880135404059472e-03, -2.431106096936081710e-03, -2.430328148659123468e-03, -2.429546292034470267e-03, -2.428760528529738064e-03, -2.427970859618807774e-03, -2.427177286781790136e-03, -2.426379811505111582e-03, -2.425578435281456127e-03, -2.424773159609727637e-03, -2.423963985995140034e-03, -2.423150915949166557e-03, -2.422333950989471671e-03, -2.421513092640054186e-03, -2.420688342431081587e-03, -2.419859701899022310e-03, -2.419027172586587192e-03, -2.418190756042687406e-03, -2.417350453822498645e-03, -2.416506267487451582e-03, -2.415658198605154239e-03, -2.414806248749476990e-03, -2.413950419500544321e-03, -2.413090712444632482e-03, -2.412227129174291350e-03, -2.411359671288297157e-03, -2.410488340391573128e-03, -2.409613138095348644e-03, -2.408734066016936758e-03, -2.407851125780019995e-03, -2.406964319014346775e-03, -2.406073647355880165e-03, -2.405179112446877241e-03, -2.404280715935696970e-03, -2.403378459476886945e-03, -2.402472344731235426e-03, -2.401562373365702385e-03, -2.400648547053383947e-03, -2.399730867473606061e-03, -2.398809336311848606e-03, -2.397883955259788331e-03, -2.396954726015207340e-03, -2.396021650282123203e-03, -2.395084729770713926e-03, -2.394143966197260272e-03, -2.393199361284203009e-03, -2.392250916760243519e-03, -2.391298634360099640e-03, -2.390342515824743757e-03, -2.389382562901195498e-03, -2.388418777342686105e-03, -2.387451160908582101e-03, -2.386479715364333253e-03, -2.385504442481565374e-03, -2.384525344038053007e-03, -2.383542421817617073e-03, -2.382555677610275358e-03, -2.381565113212157515e-03, -2.380570730425445643e-03, -2.379572531058502666e-03, -2.378570516925799464e-03, -2.377564689847848529e-03, -2.376555051651345774e-03, -2.375541604169009637e-03, -2.374524349239717693e-03, -2.373503288708429890e-03, -2.372478424426124801e-03, -2.371449758250009088e-03, -2.370417292043239515e-03, -2.369381027675088180e-03, -2.368340967020936445e-03, -2.367297111962236335e-03, -2.366249464386455895e-03, -2.365198026187178941e-03, -2.364142799264072527e-03, -2.363083785522771593e-03, -2.362020986875052429e-03, -2.360954405238721663e-03, -2.359884042537646175e-03, -2.358809900701706701e-03, -2.357731981666792188e-03, -2.356650287374978479e-03, -2.355564819774221691e-03, -2.354475580818549477e-03, -2.353382572468067958e-03, -2.352285796688887137e-03, -2.351185255453085762e-03, -2.350080950738828861e-03, -2.348972884530264957e-03, -2.347861058817586350e-03, -2.346745475596910286e-03, -2.345626136870445928e-03, -2.344503044646386366e-03, -2.343376200938878263e-03, -2.342245607768042234e-03, -2.341111267160135481e-03, -2.339973181147221321e-03, -2.338831351767444149e-03, -2.337685781064941393e-03, -2.336536471089730761e-03, -2.335383423897918406e-03, -2.334226641551472112e-03, -2.333066126118390430e-03, -2.331901879672654103e-03, -2.330733904294099868e-03, -2.329562202068605637e-03, -2.328386775088008530e-03, -2.327207625449995588e-03, -2.326024755258281149e-03, -2.324838166622533557e-03, -2.323647861658247223e-03, -2.322453842486947757e-03, -2.321256111236086588e-03, -2.320054670038947282e-03, -2.318849521034860653e-03, -2.317640666368912025e-03, -2.316428108192307694e-03, -2.315211848661996759e-03, -2.313991889940852399e-03, -2.312768234197707436e-03, -2.311540883607292318e-03, -2.310309840350155755e-03, -2.309075106612798727e-03, -2.307836684587620708e-03, -2.306594576472831195e-03, -2.305348784472570269e-03, -2.304099310796851787e-03, -2.302846157661565547e-03, -2.301589327288439558e-03, -2.300328821905013588e-03, -2.299064643744843858e-03, -2.297796795047207710e-03, -2.296525278057203346e-03, -2.295250095025953667e-03, -2.293971248210227663e-03, -2.292688739872773048e-03, -2.291402572282059090e-03, -2.290112747712469161e-03, -2.288819268444213569e-03, -2.287522136763242824e-03, -2.286221354961406362e-03, -2.284916925336371446e-03, -2.283608850191525593e-03, -2.282297131836161751e-03, -2.280981772585355134e-03, -2.279662774759908146e-03, -2.278340140686501303e-03, -2.277013872697603893e-03, -2.275683973131376828e-03, -2.274350444331891662e-03, -2.273013288648872976e-03, -2.271672508437910885e-03, -2.270328106060368230e-03, -2.268980083883273893e-03, -2.267628444279514918e-03, -2.266273189627740665e-03, -2.264914322312247888e-03, -2.263551844723188898e-03, -2.262185759256456208e-03, -2.260816068313578880e-03, -2.259442774301937632e-03, -2.258065879634619990e-03, -2.256685386730374315e-03, -2.255301298013770266e-03, -2.253913615914970251e-03, -2.252522342870037775e-03, -2.251127481320589624e-03, -2.249729033713932045e-03, -2.248327002503267176e-03, -2.246921390147307504e-03, -2.245512199110487068e-03, -2.244099431862999188e-03, -2.242683090880685879e-03, -2.241263178645098563e-03, -2.239839697643380111e-03, -2.238412650368436577e-03, -2.236982039318834853e-03, -2.235547866998728074e-03, -2.234110135917999600e-03, -2.232668848592205772e-03, -2.231224007542485701e-03, -2.229775615295594236e-03, -2.228323674384117496e-03, -2.226868187346048300e-03, -2.225409156725188624e-03, -2.223946585070824336e-03, -2.222480474937968929e-03, -2.221010828887269844e-03, -2.219537649484863186e-03, -2.218060939302613985e-03, -2.216580700917993897e-03, -2.215096936913963244e-03, -2.213609649879198695e-03, -2.212118842407953187e-03, -2.210624517099975695e-03, -2.209126676560700751e-03, -2.207625323401141756e-03, -2.206120460237777359e-03, -2.204612089692773932e-03, -2.203100214393846363e-03, -2.201584836974183022e-03, -2.200065960072652635e-03, -2.198543586333524553e-03, -2.197017718406835216e-03, -2.195488358947959243e-03, -2.193955510617865735e-03, -2.192419176083098328e-03, -2.190879358015750469e-03, -2.189336059093324478e-03, -2.187789281998961822e-03, -2.186239029421257508e-03, -2.184685304054374139e-03, -2.183128108597878845e-03, -2.181567445756924135e-03, -2.180003318242178939e-03, -2.178435728769718450e-03, -2.176864680061086580e-03, -2.175290174843505855e-03, -2.173712215849475833e-03, -2.172130805816992541e-03, -2.170545947489611795e-03, -2.168957643616289607e-03, -2.167365896951496673e-03, -2.165770710255047939e-03, -2.164172086292313370e-03, -2.162570027834104323e-03, -2.160964537656569900e-03, -2.159355618541398611e-03, -2.157743273275707346e-03, -2.156127504651969822e-03, -2.154508315468046074e-03, -2.152885708527424880e-03, -2.151259686638759289e-03, -2.149630252616233951e-03, -2.147997409279463199e-03, -2.146361159453333625e-03, -2.144721505968267324e-03, -2.143078451659930894e-03, -2.141431999369479162e-03, -2.139782151943454142e-03, -2.138128912233643215e-03, -2.136472283097333707e-03, -2.134812267397148081e-03, -2.133148868000980195e-03, -2.131482087782173972e-03, -2.129811929619416285e-03, -2.128138396396640677e-03, -2.126461491003220350e-03, -2.124781216333861480e-03, -2.123097575288487859e-03, -2.121410570772490692e-03, -2.119720205696403771e-03, -2.118026482976319378e-03, -2.116329405533418605e-03, -2.114628976294236767e-03, -2.112925198190660370e-03, -2.111218074159881136e-03, -2.109507607144263299e-03, -2.107793800091566951e-03, -2.106076655954784542e-03, -2.104356177692231090e-03, -2.102632368267368101e-03, -2.100905230649038630e-03, -2.099174767811330233e-03, -2.097440982733513384e-03, -2.095703878400081380e-03, -2.093963457800978017e-03, -2.092219723931162609e-03, -2.090472679790828132e-03, -2.088722328385615463e-03, -2.086968672726130253e-03, -2.085211715828377919e-03, -2.083451460713420158e-03, -2.081687910407652511e-03, -2.079921067942654741e-03, -2.078150936355093251e-03, -2.076377518686942699e-03, -2.074600817985361532e-03, -2.072820837302577057e-03, -2.071037579696086671e-03, -2.069251048228585872e-03, -2.067461245967798684e-03, -2.065668175986729634e-03, -2.063871841363534940e-03, -2.062072245181408026e-03, -2.060269390528838424e-03, -2.058463280499294758e-03, -2.056653918191501864e-03, -2.054841306709302012e-03, -2.053025449161544318e-03, -2.051206348662327171e-03, -2.049384008330841240e-03, -2.047558431291271030e-03, -2.045729620673022130e-03, -2.043897579610600649e-03, -2.042062311243467067e-03, -2.040223818716305117e-03, -2.038382105178822724e-03, -2.036537173785853486e-03, -2.034689027697171061e-03, -2.032837670077735064e-03, -2.030983104097559659e-03, -2.029125332931639401e-03, -2.027264359759973957e-03, -2.025400187767829180e-03, -2.023532820145292586e-03, -2.021662260087500173e-03, -2.019788510794702334e-03, -2.017911575472134626e-03, -2.016031457330071108e-03, -2.014148159583695110e-03, -2.012261685453290913e-03, -2.010372038164158319e-03, -2.008479220946463029e-03, -2.006583237035470830e-03, -2.004684089671443081e-03, -2.002781782099489257e-03, -2.000876317569805479e-03, -1.998967699337553510e-03, -1.997055930662745404e-03, -1.995141014810491564e-03, -1.993222955050696736e-03, -1.991301754658327591e-03, -1.989377416913299095e-03, -1.987449945100311886e-03, -1.985519342509137631e-03, -1.983585612434460299e-03, -1.981648758175748228e-03, -1.979708783037514332e-03, -1.977765690329157805e-03, -1.975819483364870451e-03, -1.973870165463855689e-03, -1.971917739950194547e-03, -1.969962210152725966e-03, -1.968003579405299634e-03, -1.966041851046582134e-03, -1.964077028420154955e-03, -1.962109114874357498e-03, -1.960138113762355597e-03, -1.958164028442412139e-03, -1.956186862277374018e-03, -1.954206618634963134e-03, -1.952223300887818242e-03, -1.950236912413414944e-03, -1.948247456593892209e-03, -1.946254936816348364e-03, -1.944259356472650708e-03, -1.942260718959491891e-03, -1.940259027678243112e-03, -1.938254286035192642e-03, -1.936246497441409652e-03, -1.934235665312660293e-03, -1.932221793069426562e-03, -1.930204884137234596e-03, -1.928184941946098916e-03, -1.926161969930829032e-03, -1.924135971531080840e-03, -1.922106950191204613e-03, -1.920074909360331089e-03, -1.918039852492193012e-03, -1.916001783045372543e-03, -1.913960704483182434e-03, -1.911916620273516627e-03, -1.909869533889089642e-03, -1.907819448807343554e-03, -1.905766368510276041e-03, -1.903710296484699502e-03, -1.901651236222110962e-03, -1.899589191218570630e-03, -1.897524164974920052e-03, -1.895456160996680404e-03, -1.893385182793900709e-03, -1.891311233881464229e-03, -1.889234317778712034e-03, -1.887154438009778666e-03, -1.885071598103419104e-03, -1.882985801592894489e-03, -1.880897052016234066e-03, -1.878805352916059759e-03, -1.876710707839494233e-03, -1.874613120338403972e-03, -1.872512593969237731e-03, -1.870409132292905757e-03, -1.868302738875065802e-03, -1.866193417285893054e-03, -1.864081171100187909e-03, -1.861966003897232418e-03, -1.859847919260823688e-03, -1.857726920779604121e-03, -1.855603012046478338e-03, -1.853476196658953180e-03, -1.851346478219157224e-03, -1.849213860333773565e-03, -1.847078346613854416e-03, -1.844939940675125551e-03, -1.842798646137774020e-03, -1.840654466626546809e-03, -1.838507405770561324e-03, -1.836357467203557142e-03, -1.834204654563789541e-03, -1.832048971493828275e-03, -1.829890421640885867e-03, -1.827729008656640668e-03, -1.825564736197102418e-03, -1.823397607922869635e-03, -1.821227627499008399e-03, -1.819054798594887338e-03, -1.816879124884505274e-03, -1.814700610046102430e-03, -1.812519257762508235e-03, -1.810335071720956587e-03, -1.808148055612965712e-03, -1.805958213134606187e-03, -1.803765547986358690e-03, -1.801570063872947464e-03, -1.799371764503644765e-03, -1.797170653592103243e-03, -1.794966734856210874e-03, -1.792760012018379144e-03, -1.790550488805374343e-03, -1.788338168948197656e-03, -1.786123056182382885e-03, -1.783905154247581630e-03, -1.781684466888117536e-03, -1.779460997852366994e-03, -1.777234750893028244e-03, -1.775005729767419526e-03, -1.772773938236891231e-03, -1.770539380067130339e-03, -1.768302059028260820e-03, -1.766061978894668209e-03, -1.763819143444908316e-03, -1.761573556461953991e-03, -1.759325221733021652e-03, -1.757074143049643057e-03, -1.754820324207460825e-03, -1.752563769006540905e-03, -1.750304481251185873e-03, -1.748042464749862942e-03, -1.745777723315217406e-03, -1.743510260764431080e-03, -1.741240080918569173e-03, -1.738967187603164674e-03, -1.736691584647762771e-03, -1.734413275886278203e-03, -1.732132265156802490e-03, -1.729848556301507440e-03, -1.727562153166878030e-03, -1.725273059603594020e-03, -1.722981279466349533e-03, -1.720686816614180924e-03, -1.718389674910263598e-03, -1.716089858221795566e-03, -1.713787370420263943e-03, -1.711482215381308555e-03, -1.709174396984556926e-03, -1.706863919113959073e-03, -1.704550785657396985e-03, -1.702235000507015513e-03, -1.699916567559073407e-03, -1.697595490713733196e-03, -1.695271773875610226e-03, -1.692945420953103708e-03, -1.690616435858748653e-03, -1.688284822509261620e-03, -1.685950584825440758e-03, -1.683613726731979753e-03, -1.681274252157789837e-03, -1.678932165035839112e-03, -1.676587469302992734e-03, -1.674240168900287219e-03, -1.671890267772765211e-03, -1.669537769869529689e-03, -1.667182679143607796e-03, -1.664824999551977724e-03, -1.662464735055954688e-03, -1.660101889620520894e-03, -1.657736467214708260e-03, -1.655368471811642216e-03, -1.652997907388434155e-03, -1.650624777925992345e-03, -1.648249087409373427e-03, -1.645870839827508333e-03, -1.643490039173368597e-03, -1.641106689443688586e-03, -1.638720794639308758e-03, -1.636332358765002189e-03, -1.633941385829363983e-03, -1.631547879844850307e-03, -1.629151844828146583e-03, -1.626753284799485524e-03, -1.624352203783244316e-03, -1.621948605807496625e-03, -1.619542494904353683e-03, -1.617133875109805349e-03, -1.614722750463559210e-03, -1.612309125009336137e-03, -1.609893002794727818e-03, -1.607474387871006376e-03, -1.605053284293462418e-03, -1.602629696121218774e-03, -1.600203627417058974e-03, -1.597775082247764001e-03, -1.595344064683930797e-03, -1.592910578799800088e-03, -1.590474628673584686e-03, -1.588036218387296012e-03, -1.585595352026560219e-03, -1.583152033681018474e-03, -1.580706267443813921e-03, -1.578258057412238510e-03, -1.575807407687016123e-03, -1.573354322372688121e-03, -1.570898805577651287e-03, -1.568440861414047887e-03, -1.565980493997588298e-03, -1.563517707447874315e-03, -1.561052505888232403e-03, -1.558584893445544772e-03, -1.556114874250555348e-03, -1.553642452437660080e-03, -1.551167632145007344e-03, -1.548690417514320128e-03, -1.546210812690941789e-03, -1.543728821824225496e-03, -1.541244449066858343e-03, -1.538757698575189854e-03, -1.536268574509550748e-03, -1.533777081033530420e-03, -1.531283222314632451e-03, -1.528787002523778697e-03, -1.526288425835667720e-03, -1.523787496428629078e-03, -1.521284218484436840e-03, -1.518778596188627037e-03, -1.516270633730333519e-03, -1.513760335302122935e-03, -1.511247705100300697e-03, -1.508732747324753338e-03, -1.506215466178772869e-03, -1.503695865869375753e-03, -1.501173950607131383e-03, -1.498649724605994465e-03, -1.496123192083686658e-03, -1.493594357261226460e-03, -1.491063224363346198e-03, -1.488529797618279738e-03, -1.485994081257618936e-03, -1.483456079516624806e-03, -1.480915796634054912e-03, -1.478373236851994888e-03, -1.475828404416174586e-03, -1.473281303575810653e-03, -1.470731938583424384e-03, -1.468180313695148986e-03, -1.465626433170600556e-03, -1.463070301272655603e-03, -1.460511922267867602e-03, -1.457951300425942235e-03, -1.455388440020400059e-03, -1.452823345327853991e-03, -1.450256020628324597e-03, -1.447686470205579662e-03, -1.445114698346447891e-03, -1.442540709341204232e-03, -1.439964507483623224e-03, -1.437386097070799014e-03, -1.434805482403255731e-03, -1.432222667784717202e-03, -1.429637657522417251e-03, -1.427050455926948992e-03, -1.424461067312081169e-03, -1.421869495995080161e-03, -1.419275746296541933e-03, -1.416679822540274072e-03, -1.414081729053334822e-03, -1.411481470166432066e-03, -1.408879050213172847e-03, -1.406274473530742287e-03, -1.403667744459384482e-03, -1.401058867342781745e-03, -1.398447846527903259e-03, -1.395834686364792786e-03, -1.393219391206930360e-03, -1.390601965411044716e-03, -1.387982413336928114e-03, -1.385360739347786096e-03, -1.382736947810041901e-03, -1.380111043093174483e-03, -1.377483029570042254e-03, -1.374852911616707444e-03, -1.372220693612263061e-03, -1.369586379939217134e-03, -1.366949974983029323e-03, -1.364311483132517279e-03, -1.361670908779654982e-03, -1.359028256319352434e-03, -1.356383530150081455e-03, -1.353736734673106987e-03, -1.351087874292889769e-03, -1.348436953417145963e-03, -1.345783976456712498e-03, -1.343128947825367962e-03, -1.340471871940176942e-03, -1.337812753221246731e-03, -1.335151596091837048e-03, -1.332488404978129318e-03, -1.329823184309547384e-03, -1.327155938518596607e-03, -1.324486672040731160e-03, -1.321815389314400652e-03, -1.319142094781457566e-03, -1.316466792886457522e-03, -1.313789488077033970e-03, -1.311110184803977990e-03, -1.308428887521039235e-03, -1.305745600685046925e-03, -1.303060328755648338e-03, -1.300373076195675270e-03, -1.297683847470953002e-03, -1.294992647050107522e-03, -1.292299479404927006e-03, -1.289604349010161017e-03, -1.286907260343409052e-03, -1.284208217885165646e-03, -1.281507226119230200e-03, -1.278804289531914207e-03, -1.276099412612717371e-03, -1.273392599854055026e-03, -1.270683855751082508e-03, -1.267973184802101937e-03, -1.265260591508084523e-03, -1.262546080373071504e-03, -1.259829655903993732e-03, -1.257111322610487579e-03, -1.254391085005228650e-03, -1.251668947603775447e-03, -1.248944914924348618e-03, -1.246218991488214122e-03, -1.243491181819465514e-03, -1.240761490444866524e-03, -1.238029921894174146e-03, -1.235296480699980565e-03, -1.232561171397499999e-03, -1.229823998524996525e-03, -1.227084966623236129e-03, -1.224344080236183189e-03, -1.221601343910241107e-03, -1.218856762194631994e-03, -1.216110339641481236e-03, -1.213362080805663540e-03, -1.210611990244630544e-03, -1.207860072518758413e-03, -1.205106332191103460e-03, -1.202350773827508832e-03, -1.199593401996358827e-03, -1.196834221268941456e-03, -1.194073236219240055e-03, -1.191310451423825733e-03, -1.188545871461901826e-03, -1.185779500915713292e-03, -1.183011344369823111e-03, -1.180241406411461401e-03, -1.177469691630889494e-03, -1.174696204620592635e-03, -1.171920949976006402e-03, -1.169143932294968964e-03, -1.166365156178125273e-03, -1.163584626228746002e-03, -1.160802347052537157e-03, -1.158018323257994399e-03, -1.155232559456219376e-03, -1.152445060260715460e-03, -1.149655830287764184e-03, -1.146864874156219676e-03, -1.144072196487324776e-03, -1.141277801905067743e-03, -1.138481695035996203e-03, -1.135683880509016355e-03, -1.132884362955819931e-03, -1.130083147010392617e-03, -1.127280237309419980e-03, -1.124475638492109008e-03, -1.121669355199994686e-03, -1.118861392077290847e-03, -1.116051753770710194e-03, -1.113240444929268057e-03, -1.110427470204638015e-03, -1.107612834250971262e-03, -1.104796541724692134e-03, -1.101978597284869986e-03, -1.099159005592952260e-03, -1.096337771312903700e-03, -1.093514899110979970e-03, -1.090690393655812003e-03, -1.087864259618812144e-03, -1.085036501673438195e-03, -1.082207124495539706e-03, -1.079376132763743088e-03, -1.076543531158680959e-03, -1.073709324363424956e-03, -1.070873517063553612e-03, -1.068036113946930956e-03, -1.065197119703849629e-03, -1.062356539026759620e-03, -1.059514376610633636e-03, -1.056670637152785398e-03, -1.053825325352656262e-03, -1.050978445912200982e-03, -1.048130003535670870e-03, -1.045280002929443791e-03, -1.042428448802368290e-03, -1.039575345865585785e-03, -1.036720698832322395e-03, -1.033864512418332382e-03, -1.031006791341365809e-03, -1.028147540321634528e-03, -1.025286764081583847e-03, -1.022424467345716022e-03, -1.019560654840949562e-03, -1.016695331296424507e-03, -1.013828501443315945e-03, -1.010960170015185507e-03, -1.008090341747801396e-03, -1.005219021378929998e-03, -1.002346213648716436e-03, -9.994719232994781453e-04, -9.965961550755140456e-04, -9.937189137234710059e-04, -9.908402039920890560e-04, -9.879600306323132759e-04, -9.850783983971016754e-04, -9.821953120414750674e-04, -9.793107763229631085e-04, -9.764247960008225896e-04, -9.735373758364795731e-04, -9.706485205935878316e-04, -9.677582350378954911e-04, -9.648665239370319852e-04, -9.619733920608998859e-04, -9.590788441814050453e-04, -9.561828850725739067e-04, -9.532855195102853813e-04, -9.503867522726691837e-04, -9.474865881398771743e-04, -9.445850318939651808e-04, -9.416820883189448233e-04, -9.387777622012228327e-04, -9.358720583288244370e-04, -9.329649814918368001e-04, -9.300565364824644240e-04, -9.271467280948223920e-04, -9.242355611250684241e-04, -9.213230403711261890e-04, -9.184091706330746408e-04, -9.154939567129389850e-04, -9.125774034144871734e-04, -9.096595155436205428e-04, -9.067402979081609854e-04, -9.038197553176542751e-04, -9.008978925837484537e-04, -8.979747145199971567e-04, -8.950502259416485192e-04, -8.921244316660296341e-04, -8.891973365123482511e-04, -8.862689453014847190e-04, -8.833392628564390014e-04, -8.804082940018079836e-04, -8.774760435642318382e-04, -8.745425163721809794e-04, -8.716077172557648101e-04, -8.686716510471094574e-04, -8.657343225801563281e-04, -8.627957366904525326e-04, -8.598558982155410889e-04, -8.569148119947592613e-04, -8.539724828690248640e-04, -8.510289156812293927e-04, -8.480841152759639387e-04, -8.451380864996392095e-04, -8.421908342002928666e-04, -8.392423632276326765e-04, -8.362926784334982723e-04, -8.333417846710626390e-04, -8.303896867952771784e-04, -8.274363896629384962e-04, -8.244818981325475636e-04, -8.215262170640986236e-04, -8.185693513194740572e-04, -8.156113057621646595e-04, -8.126520852573977920e-04, -8.096916946718708862e-04, -8.067301388741273359e-04, -8.037674227343586308e-04, -8.008035511242015021e-04, -7.978385289171139238e-04, -7.948723609881807152e-04, -7.919050522139032058e-04, -7.889366074725855365e-04, -7.859670316441312631e-04, -7.829963296098342140e-04, -7.800245062528404685e-04, -7.770515664576002927e-04, -7.740775151103291424e-04, -7.711023570988061095e-04, -7.681260973121579495e-04, -7.651487406412508033e-04, -7.621702919784882103e-04, -7.591907562176030506e-04, -7.562101382540411349e-04, -7.532284429847610615e-04, -7.502456753080201943e-04, -7.472618401237763599e-04, -7.442769423334675378e-04, -7.412909868398152944e-04, -7.383039785472703901e-04, -7.353159223614229734e-04, -7.323268231897751834e-04, -7.293366859408743300e-04, -7.263455155247795347e-04, -7.233533168531090015e-04, -7.203600948388998301e-04, -7.173658543964085222e-04, -7.143706004414921871e-04, -7.113743378914104583e-04, -7.083770716646078935e-04, -7.053788066811130701e-04, -7.023795478622604869e-04, -6.993793001308183915e-04, -6.963780684107076470e-04, -6.933758576274055970e-04, -6.903726727077233710e-04, -6.873685185796772970e-04, -6.843634001725374750e-04, -6.813573224172949586e-04, -6.783502902457805165e-04, -6.753423085914588096e-04, -6.723333823888228648e-04, -6.693235165738503070e-04, -6.663127160837897713e-04, -6.633009858569648793e-04, -6.602883308331562034e-04, -6.572747559533978707e-04, -6.542602661597663599e-04, -6.512448663957786212e-04, -6.482285616061721992e-04, -6.452113567367117036e-04, -6.421932567345695802e-04, -6.391742665481218479e-04, -6.361543911267427505e-04, -6.331336354212574111e-04, -6.301120043834063447e-04, -6.270895029662994138e-04, -6.240661361242101548e-04, -6.210419088122995238e-04, -6.180168259873480580e-04, -6.149908926068657460e-04, -6.119641136295646310e-04, -6.089364940154130216e-04, -6.059080387254950871e-04, -6.028787527217959689e-04, -5.998486409676047782e-04, -5.968177084272982980e-04, -5.937859600661345508e-04, -5.907534008506453880e-04, -5.877200357483642473e-04, -5.846858697279461734e-04, -5.816509077589655059e-04, -5.786151548119649940e-04, -5.755786158589288335e-04, -5.725412958724594324e-04, -5.695031998262467619e-04, -5.664643326951213738e-04, -5.634246994549163817e-04, -5.603843050822525720e-04, -5.573431545549412938e-04, -5.543012528517009393e-04, -5.512586049522835794e-04, -5.482152158372033705e-04, -5.451710904881233982e-04, -5.421262338876534732e-04, -5.390806510192049572e-04, -5.360343468670473576e-04, -5.329873264167744266e-04, -5.299395946544204275e-04, -5.268911565672568069e-04, -5.238420171431824391e-04, -5.207921813711846289e-04, -5.177416542411315955e-04, -5.146904407435531383e-04, -5.116385458700508987e-04, -5.085859746130760991e-04, -5.055327319657254960e-04, -5.024788229221350535e-04, -4.994242524772704757e-04, -4.963690256267171965e-04, -4.933131473670762223e-04, -4.902566226957524951e-04, -4.871994566107460214e-04, -4.841416541110492864e-04, -4.810832201964343707e-04, -4.780241598672421276e-04, -4.749644781248522386e-04, -4.719041799710554604e-04, -4.688432704088713846e-04, -4.657817544416496336e-04, -4.627196370735382367e-04, -4.596569233095464048e-04, -4.565936181553965369e-04, -4.535297266173193061e-04, -4.504652537024417497e-04, -4.474002044185853362e-04, -4.443345837740491256e-04, -4.412683967780130375e-04, -4.382016484402527067e-04, -4.351343437712676897e-04, -4.320664877820777432e-04, -4.289980854842708000e-04, -4.259291418904802349e-04, -4.228596620135541490e-04, -4.197896508669582047e-04, -4.167191134651764559e-04, -4.136480548228168262e-04, -4.105764799554216049e-04, -4.075043938788419163e-04, -4.044318016097122746e-04, -4.013587081652359671e-04, -3.982851185629692967e-04, -3.952110378212265866e-04, -3.921364709588651284e-04, -3.890614229950739252e-04, -3.859858989497723532e-04, -3.829099038434001512e-04, -3.798334426967028572e-04, -3.767565205311322043e-04, -3.736791423686374120e-04, -3.706013132314461768e-04, -3.675230381425392281e-04, -3.644443221250925056e-04, -3.613651702029509021e-04, -3.582855874004110971e-04, -3.552055787420101379e-04, -3.521251492529294132e-04, -3.490443039587767284e-04, -3.459630478853764038e-04, -3.428813860591721648e-04, -3.397993235070090540e-04, -3.367168652559263489e-04, -3.336340163335554639e-04, -3.305507817679059291e-04, -3.274671665871569520e-04, -3.243831758201234624e-04, -3.212988144956313943e-04, -3.182140876433369099e-04, -3.151290002928214696e-04, -3.120435574739986793e-04, -3.089577642175152282e-04, -3.058716255539202815e-04, -3.027851465141398186e-04, -2.996983321295320908e-04, -2.966111874316799957e-04, -2.935237174525123457e-04, -2.904359272240302154e-04, -2.873478217787024040e-04, -2.842594061492565642e-04, -2.811706853684612772e-04, -2.780816644695336044e-04, -2.749923484859238191e-04, -2.719027424511667084e-04, -2.688128513989448899e-04, -2.657226803635637474e-04, -2.626322343790433024e-04, -2.595415184799418828e-04, -2.564505377007250089e-04, -2.533592970762398944e-04, -2.502678016415006658e-04, -2.471760564314733110e-04, -2.440840664814812253e-04, -2.409918368269904848e-04, -2.378993725033946871e-04, -2.348066785464189782e-04, -2.317137599919083903e-04, -2.286206218756086696e-04, -2.255272692335753186e-04, -2.224337071019561601e-04, -2.193399405167785075e-04, -2.162459745144207390e-04, -2.131518141310545023e-04, -2.100574644031199211e-04, -2.069629303671085099e-04, -2.038682170592801435e-04, -2.007733295164135690e-04, -1.976782727749011506e-04, -1.945830518712241301e-04, -1.914876718420131796e-04, -1.883921377239015731e-04, -1.852964545533117616e-04, -1.822006273668589130e-04, -1.791046612010679625e-04, -1.760085610925039878e-04, -1.729123320774867117e-04, -1.698159791924970508e-04, -1.667195074739627144e-04, -1.636229219581098317e-04, -1.605262276810257265e-04, -1.574294296791335548e-04, -1.543325329883549744e-04, -1.512355426445857038e-04, -1.481384636837563456e-04, -1.450413011416182296e-04, -1.419440600538705627e-04, -1.388467454558785360e-04, -1.357493623830790337e-04, -1.326519158707638465e-04, -1.295544109538667615e-04, -1.264568526673668042e-04, -1.233592460460758704e-04, -1.202615961244905021e-04, -1.171639079368525893e-04, -1.140661865176261885e-04, -1.109684369005904116e-04, -1.078706641195911574e-04, -1.047728732082568064e-04, -1.016750691997829530e-04, -9.857725712740716343e-05, -9.547944202384890471e-05, -9.238162892178458728e-05, -8.928382285363231044e-05, -8.618602885133591640e-05, -8.308825194677236560e-05, -7.999049717153569594e-05, -7.689276955672096840e-05, -7.379507413333173725e-05, -7.069741593206448364e-05, -6.759979998309203261e-05, -6.450223131647183652e-05, -6.140471496192861965e-05, -5.830725594864014663e-05, -5.520985930571248242e-05, -5.211253006154984726e-05, -4.901527324467576429e-05, -4.591809388282609732e-05, -4.282099700342567968e-05, -3.972398763364816214e-05, -3.662707080027026229e-05, -3.353025152945628612e-05, -3.043353484716439212e-05, -2.733692577886205938e-05, -2.424042934965626639e-05, -2.114405058400891844e-05, -1.804779450614331840e-05, -1.495166613982850878e-05, -1.185567050823329575e-05, -8.759812633987128759e-06, -5.664097539655126810e-06, -2.568530246901593176e-06, 5.268842231039839185e-07, 3.622140849280737493e-06, 6.717234611542144405e-06, 9.812160489975599821e-06, 1.290691346547206594e-05, 1.600148851925062391e-05, 1.909588063307415259e-05, 2.219008478946407764e-05, 2.528409597129472743e-05, 2.837790916200819653e-05, 3.147151934582983427e-05, 3.456492150736206531e-05, 3.765811063179942762e-05, 4.075108170514420673e-05, 4.384382971380003949e-05, 4.693634964478721628e-05, 5.002863648595769186e-05, 5.312068522552044201e-05, 5.621249085260142679e-05, 5.930404835676860164e-05, 6.239535272824702980e-05, 6.548639895813428624e-05, 6.857718203799423415e-05, 7.166769696007244919e-05, 7.475793871751066787e-05, 7.784790230394189223e-05, 8.093758271370449274e-05, 8.402697494205811353e-05, 8.711607398477721857e-05, 9.020487483843511202e-05, 9.329337250027510786e-05, 9.638156196842396866e-05, 9.946943824183201695e-05, 1.025569963197982683e-04, 1.056442312028066626e-04, 1.087311378921183912e-04, 1.118177113893693993e-04, 1.149039466974024852e-04, 1.179898388197953598e-04, 1.210753827607987933e-04, 1.241605735255508125e-04, 1.272454061199485215e-04, 1.303298755509305496e-04, 1.334139768260720206e-04, 1.364977049537991567e-04, 1.395810549436048999e-04, 1.426640218056424169e-04, 1.457466005509406930e-04, 1.488287861916186348e-04, 1.519105737404801207e-04, 1.549919582112300554e-04, 1.580729346186856806e-04, 1.611534979783056524e-04, 1.642336433067478354e-04, 1.673133656213958594e-04, 1.703926599405720292e-04, 1.734715212837547617e-04, 1.765499446711709796e-04, 1.796279251240121661e-04, 1.827054576646477903e-04, 1.857825373162225256e-04, 1.888591591028677236e-04, 1.919353180499174688e-04, 1.950110091835048751e-04, 1.980862275307749426e-04, 2.011609681200979282e-04, 2.042352259806682452e-04, 2.073089961427843498e-04, 2.103822736377210223e-04, 2.134550534979416539e-04, 2.165273307570402960e-04, 2.195991004492665898e-04, 2.226703576103585425e-04, 2.257410972770701127e-04, 2.288113144871109018e-04, 2.318810042792910579e-04, 2.349501616937338876e-04, 2.380187817714753519e-04, 2.410868595547430041e-04, 2.441543900868282978e-04, 2.472213684123696184e-04, 2.502877895769489865e-04, 2.533536486273036672e-04, 2.564189406114715888e-04, 2.594836605787337715e-04, 2.625478035791401518e-04, 2.656113646643382922e-04, 2.686743388871072830e-04, 2.717367213012894913e-04, 2.747985069620108712e-04, 2.778596909255490167e-04, 2.809202682496139149e-04, 2.839802339929481476e-04, 2.870395832155374426e-04, 2.900983109788249120e-04, 2.931564123453096271e-04, 2.962138823787581997e-04, 2.992707161444186953e-04, 3.023269087086169851e-04, 3.053824551389728811e-04, 3.084373505046105802e-04, 3.114915898757557745e-04, 3.145451683239524916e-04, 3.175980809222706111e-04, 3.206503227448407418e-04, 3.237018888674055386e-04, 3.267527743668505137e-04, 3.298029743214164864e-04, 3.328524838109127911e-04, 3.359012979163154724e-04, 3.389494117199791379e-04, 3.419968203058520637e-04, 3.450435187590704324e-04, 3.480895021661761487e-04, 3.511347656153238138e-04, 3.541793041958855881e-04, 3.572231129987268492e-04, 3.602661871160780399e-04, 3.633085216417515618e-04, 3.663501116710774831e-04, 3.693909523004332653e-04, 3.724310386280746963e-04, 3.754703657536614426e-04, 3.785089287781987747e-04, 3.815467228041843125e-04, 3.845837429358148381e-04, 3.876199842785912658e-04, 3.906554419395935423e-04, 3.936901110273576974e-04, 3.967239866521509611e-04, 3.997570639255746197e-04, 4.027893379607760320e-04, 4.058208038725887620e-04, 4.088514567774785861e-04, 4.118812917930692627e-04, 4.149103040390380291e-04, 4.179384886363753083e-04, 4.209658407076617226e-04, 4.239923553772826032e-04, 4.270180277709616202e-04, 4.300428530163072751e-04, 4.330668262423469105e-04, 4.360899425797430087e-04, 4.391121971609988645e-04, 4.421335851200591111e-04, 4.451541015925272109e-04, 4.481737417158706952e-04, 4.511925006290232621e-04, 4.542103734725999901e-04, 4.572273553891014939e-04, 4.602434415225210634e-04, 4.632586270185561918e-04, 4.662729070248112129e-04, 4.692862766903437791e-04, 4.722987311662677325e-04, 4.753102656049623957e-04, 4.783208751609531613e-04, 4.813305549904404600e-04, 4.843393002512522724e-04, 4.873471061029782995e-04, 4.903539677071821947e-04, 4.933598802270042043e-04, 4.963648388273741042e-04, 4.993688386752170904e-04, 5.023718749390609179e-04, 5.053739427893085782e-04, 5.083750373981170845e-04, 5.113751539396693907e-04, 5.143742875897834273e-04, 5.173724335261151728e-04, 5.203695869283064303e-04, 5.233657429779218356e-04, 5.263608968579909985e-04, 5.293550437538825865e-04, 5.323481788525141582e-04, 5.353402973429533538e-04, 5.383313944159703358e-04, 5.413214652642312115e-04, 5.443105050825184504e-04, 5.472985090673338502e-04, 5.502854724171013902e-04, 5.532713903323859157e-04, 5.562562580154865616e-04, 5.592400706706580384e-04, 5.622228235043107755e-04, 5.652045117246184405e-04, 5.681851305417317437e-04, 5.711646751679782565e-04, 5.741431408174078052e-04, 5.771205227063338139e-04, 5.800968160528717586e-04, 5.830720160771492864e-04, 5.860461180015795425e-04, 5.890191170501363812e-04, 5.919910084492241127e-04, 5.949617874272269090e-04, 5.979314492144427754e-04, 6.008999890432269913e-04, 6.038674021481987581e-04, 6.068336837658519717e-04, 6.097988291347597022e-04, 6.127628334957796507e-04, 6.157256920916699076e-04, 6.186874001673533900e-04, 6.216479529698004224e-04, 6.246073457482321329e-04, 6.275655737540584370e-04, 6.305226322404298284e-04, 6.334785164630322074e-04, 6.364332216796335763e-04, 6.393867431500238662e-04, 6.423390761361639058e-04, 6.452902159023781933e-04, 6.482401577149715221e-04, 6.511888968425038260e-04, 6.541364285556644119e-04, 6.570827481275401914e-04, 6.600278508332268861e-04, 6.629717319500423979e-04, 6.659143867576551796e-04, 6.688558105380375046e-04, 6.717959985750006704e-04, 6.747349461550672389e-04, 6.776726485666842307e-04, 6.806091011008203037e-04, 6.835442990505251337e-04, 6.864782377111178484e-04, 6.894109123804006154e-04, 6.923423183582751595e-04, 6.952724509469374861e-04, 6.982013054510922273e-04, 7.011288771775586433e-04, 7.040551614354801984e-04, 7.069801535365244881e-04, 7.099038487945061532e-04, 7.128262425255746642e-04, 7.157473300484364738e-04, 7.186671066839576570e-04, 7.215855677553753306e-04, 7.245027085884904244e-04, 7.274185245112313979e-04, 7.303330108542391676e-04, 7.332461629500977573e-04, 7.361579761341853967e-04, 7.390684457442249023e-04, 7.419775671202335880e-04, 7.448853356046540196e-04, 7.477917465425533991e-04, 7.506967952812529854e-04, 7.536004771705178285e-04, 7.565027875627695995e-04, 7.594037218126935664e-04, 7.623032752775151747e-04, 7.652014433168740628e-04, 7.680982212930247480e-04, 7.709936045707807897e-04, 7.738875885170670146e-04, 7.767801685017074057e-04, 7.796713398969783030e-04, 7.825610980775470375e-04, 7.854494384206754361e-04, 7.883363563061029445e-04, 7.912218471163065103e-04, 7.941059062361218715e-04, 7.969885290529437000e-04, 7.998697109569333349e-04, 8.027494473406260843e-04, 8.056277335991486079e-04, 8.085045651303985692e-04, 8.113799373346906440e-04, 8.142538456149336782e-04, 8.171262853768473120e-04, 8.199972520285744859e-04, 8.228667409808859213e-04, 8.257347476473790712e-04, 8.286012674440325137e-04, 8.314662957897350423e-04, 8.343298281058342042e-04, 8.371918598163428406e-04, 8.400523863481357614e-04, 8.429114031305737437e-04, 8.457689055957008564e-04, 8.486248891784486156e-04, 8.514793493162517435e-04, 8.543322814492534077e-04, 8.571836810205028714e-04, 8.600335434755822022e-04, 8.628818642627977429e-04, 8.657286388333798209e-04, 8.685738626410551390e-04, 8.714175311426167409e-04, 8.742596397971611659e-04, 8.771001840669467040e-04, 8.799391594169908310e-04, 8.827765613147126392e-04, 8.856123852307001268e-04, 8.884466266382728310e-04, 8.912792810134192696e-04, 8.941103438350022888e-04, 8.969398105846414270e-04, 8.997676767469588123e-04, 9.025939378092235439e-04, 9.054185892615413192e-04, 9.082416265970498070e-04, 9.110630453115455734e-04, 9.138828409036871530e-04, 9.167010088751249364e-04, 9.195175447304477188e-04, 9.223324439767386111e-04, 9.251457021244143203e-04, 9.279573146864684855e-04, 9.307672771790510748e-04, 9.335755851210275494e-04, 9.363822340341809583e-04, 9.391872194434076372e-04, 9.419905368763406648e-04, 9.447921818635546688e-04, 9.475921499387546937e-04, 9.503904366384106081e-04, 9.531870375019477074e-04, 9.559819480719434961e-04, 9.587751638937664321e-04, 9.615666805157556873e-04, 9.643564934894351690e-04, 9.671445983690670455e-04, 9.699309907121587190e-04, 9.727156660790501784e-04, 9.754986200330835683e-04, 9.782798481408859492e-04, 9.810593459716641321e-04, 9.838371090980426587e-04, 9.866131330956260000e-04, 9.893874135429418532e-04, 9.921599460215786183e-04, 9.949307261163697121e-04, 9.976997494150425042e-04, 1.000467011508392005e-03, 1.003232507990492938e-03, 1.005996234458324170e-03, 1.008758186512018944e-03, 1.011518359754768389e-03, 1.014276749792987833e-03, 1.017033352236283847e-03, 1.019788162697009932e-03, 1.022541176791033710e-03, 1.025292390137299767e-03, 1.028041798357771973e-03, 1.030789397077637318e-03, 1.033535181925181873e-03, 1.036279148532041677e-03, 1.039021292532848854e-03, 1.041761609565412675e-03, 1.044500095270923818e-03, 1.047236745293580107e-03, 1.049971555280784915e-03, 1.052704520883273589e-03, 1.055435637755062052e-03, 1.058164901553019415e-03, 1.060892307937679824e-03, 1.063617852572504774e-03, 1.066341531124446237e-03, 1.069063339263529467e-03, 1.071783272663029071e-03, 1.074501326999678695e-03, 1.077217497953295456e-03, 1.079931781206975097e-03, 1.082644172447282593e-03, 1.085354667363899782e-03, 1.088063261649799707e-03, 1.090769951001448277e-03, 1.093474731118443009e-03, 1.096177597703699947e-03, 1.098878546463646216e-03, 1.101577573107856379e-03, 1.104274673349256702e-03, 1.106969842904290601e-03, 1.109663077492517493e-03, 1.112354372837160528e-03, 1.115043724664390584e-03, 1.117731128704114269e-03, 1.120416580689552813e-03, 1.123100076357206288e-03, 1.125781611446959431e-03, 1.128461181702286771e-03, 1.131138782869885737e-03, 1.133814410699931444e-03, 1.136488060945956349e-03, 1.139159729365111324e-03, 1.141829411717792042e-03, 1.144497103767846058e-03, 1.147162801282679929e-03, 1.149826500033221703e-03, 1.152488195793498291e-03, 1.155147884341370997e-03, 1.157805561458168401e-03, 1.160461222928347875e-03, 1.163114864540274037e-03, 1.165766482085505568e-03, 1.168416071359344461e-03, 1.171063628160422081e-03, 1.173709148290882822e-03, 1.176352627556576666e-03, 1.178994061766700093e-03, 1.181633446733986468e-03, 1.184270778274888617e-03, 1.186906052209230370e-03, 1.189539264360390874e-03, 1.192170410555489337e-03, 1.194799486625036352e-03, 1.197426488403115826e-03, 1.200051411727566042e-03, 1.202674252439593682e-03, 1.205295006384218999e-03, 1.207913669409889194e-03, 1.210530237368669451e-03, 1.213144706116408384e-03, 1.215757071512399120e-03, 1.218367329419566426e-03, 1.220975475704638453e-03, 1.223581506237817569e-03, 1.226185416892942338e-03, 1.228787203547693089e-03, 1.231386862083221111e-03, 1.233984388384416243e-03, 1.236579778339772645e-03, 1.239173027841590675e-03, 1.241764132785901217e-03, 1.244353089072094878e-03, 1.246939892603600051e-03, 1.249524539287552886e-03, 1.252107025034451858e-03, 1.254687345758863804e-03, 1.257265497379028620e-03, 1.259841475816787272e-03, 1.262415276997790395e-03, 1.264986896851367105e-03, 1.267556331310776318e-03, 1.270123576312854382e-03, 1.272688627798205683e-03, 1.275251481711377416e-03, 1.277812134000521965e-03, 1.280370580617565170e-03, 1.282926817518407992e-03, 1.285480840662562652e-03, 1.288032646013352340e-03, 1.290582229538071246e-03, 1.293129587207608993e-03, 1.295674714996901877e-03, 1.298217608884536271e-03, 1.300758264852940093e-03, 1.303296678888547170e-03, 1.305832846981467210e-03, 1.308366765125668378e-03, 1.310898429319138194e-03, 1.313427835563568680e-03, 1.315954979864515303e-03, 1.318479858231588883e-03, 1.321002466678113411e-03, 1.323522801221295843e-03, 1.326040857882417349e-03, 1.328556632686432809e-03, 1.331070121662485594e-03, 1.333581320843251188e-03, 1.336090226265650377e-03, 1.338596833970543505e-03, 1.341101140002376371e-03, 1.343603140409884095e-03, 1.346102831245685845e-03, 1.348600208566240379e-03, 1.351095268431969218e-03, 1.353588006907424689e-03, 1.356078420060966190e-03, 1.358566503964981145e-03, 1.361052254695789164e-03, 1.363535668333868637e-03, 1.366016740963516734e-03, 1.368495468673049760e-03, 1.370971847554884474e-03, 1.373445873705527245e-03, 1.375917543225159238e-03, 1.378386852218324229e-03, 1.380853796793543500e-03, 1.383318373063271382e-03, 1.385780577144050301e-03, 1.388240405156435748e-03, 1.390697853225197293e-03, 1.393152917478999823e-03, 1.395605594050580061e-03, 1.398055879076920676e-03, 1.400503768698914409e-03, 1.402949259061546427e-03, 1.405392346314056308e-03, 1.407833026609624921e-03, 1.410271296105531638e-03, 1.412707150963341679e-03, 1.415140587348562426e-03, 1.417571601430830767e-03, 1.420000189384083757e-03, 1.422426347386167864e-03, 1.424850071619294771e-03, 1.427271358269656485e-03, 1.429690203527605096e-03, 1.432106603587805652e-03, 1.434520554648936047e-03, 1.436932052913845320e-03, 1.439341094589715632e-03, 1.441747675887758255e-03, 1.444151793023376205e-03, 1.446553442216315377e-03, 1.448952619690380920e-03, 1.451349321673627620e-03, 1.453743544398270133e-03, 1.456135284100856016e-03, 1.458524537022208708e-03, 1.460911299407060410e-03, 1.463295567504700224e-03, 1.465677337568615721e-03, 1.468056605856420940e-03, 1.470433368630002981e-03, 1.472807622155654491e-03, 1.475179362703778327e-03, 1.477548586549108731e-03, 1.479915289970600966e-03, 1.482279469251656387e-03, 1.484641120679794585e-03, 1.487000240546852226e-03, 1.489356825149056778e-03, 1.491710870786999840e-03, 1.494062373765270247e-03, 1.496411330393148395e-03, 1.498757736984017083e-03, 1.501101589855603942e-03, 1.503442885330118477e-03, 1.505781619733910547e-03, 1.508117789397883440e-03, 1.510451390657137610e-03, 1.512782419851131351e-03, 1.515110873323845166e-03, 1.517436747423474720e-03, 1.519760038502587828e-03, 1.522080742918295549e-03, 1.524398857031936030e-03, 1.526714377209252311e-03, 1.529027299820522002e-03, 1.531337621240287097e-03, 1.533645337847496870e-03, 1.535950446025673329e-03, 1.538252942162545182e-03, 1.540552822650535520e-03, 1.542850083886134491e-03, 1.545144722270583217e-03, 1.547436734209511671e-03, 1.549726116112899862e-03, 1.552012864395183218e-03, 1.554296975475409149e-03, 1.556578445776944739e-03, 1.558857271727621388e-03, 1.561133449759907624e-03, 1.563406976310590139e-03, 1.565677847821017295e-03, 1.567946060736960133e-03, 1.570211611508854580e-03, 1.572474496591484867e-03, 1.574734712444145505e-03, 1.576992255530754910e-03, 1.579247122319795121e-03, 1.581499309283980036e-03, 1.583748812900907452e-03, 1.585995629652460145e-03, 1.588239756025269702e-03, 1.590481188510361544e-03, 1.592719923603323198e-03, 1.594955957804452618e-03, 1.597189287618449617e-03, 1.599419909554603654e-03, 1.601647820126923718e-03, 1.603873015853843863e-03, 1.606095493258399495e-03, 1.608315248868358782e-03, 1.610532279215947911e-03, 1.612746580837981633e-03, 1.614958150276052775e-03, 1.617166984076154942e-03, 1.619373078789103620e-03, 1.621576430970202024e-03, 1.623777037179367300e-03, 1.625974893981313755e-03, 1.628169997945242992e-03, 1.630362345645004372e-03, 1.632551933659243766e-03, 1.634738758571137275e-03, 1.636922816968485340e-03, 1.639104105443941074e-03, 1.641282620594671339e-03, 1.643458359022507021e-03, 1.645631317334129724e-03, 1.647801492140759305e-03, 1.649968880058348165e-03, 1.652133477707512727e-03, 1.654295281713669607e-03, 1.656454288706982062e-03, 1.658610495322059009e-03, 1.660763898198495611e-03, 1.662914493980591820e-03, 1.665062279317261083e-03, 1.667207250862157413e-03, 1.669349405273832165e-03, 1.671488739215427639e-03, 1.673625249354891969e-03, 1.675758932364874824e-03, 1.677889784922940780e-03, 1.680017803711279832e-03, 1.682142985416841844e-03, 1.684265326731462092e-03, 1.686384824351800120e-03, 1.688501474979023581e-03, 1.690615275319421254e-03, 1.692726222083837514e-03, 1.694834311988128355e-03, 1.696939541752795575e-03, 1.699041908103166108e-03, 1.701141407769521038e-03, 1.703238037486829760e-03, 1.705331793994888318e-03, 1.707422674038460786e-03, 1.709510674367023400e-03, 1.711595791734881215e-03, 1.713678022901340709e-03, 1.715757364630413366e-03, 1.717833813690973531e-03, 1.719907366856901531e-03, 1.721978020906801340e-03, 1.724045772624151511e-03, 1.726110618797453266e-03, 1.728172556219910233e-03, 1.730231581689832630e-03, 1.732287692010110996e-03, 1.734340883988806431e-03, 1.736391154438844198e-03, 1.738438500177959516e-03, 1.740482918028804027e-03, 1.742524404819088477e-03, 1.744562957381298436e-03, 1.746598572552863875e-03, 1.748631247176271261e-03, 1.750660978098813767e-03, 1.752687762172775365e-03, 1.754711596255336282e-03, 1.756732477208727827e-03, 1.758750401900177748e-03, 1.760765367201604916e-03, 1.762777369990167287e-03, 1.764786407147957452e-03, 1.766792475561936721e-03, 1.768795572124113149e-03, 1.770795693731420321e-03, 1.772792837285930290e-03, 1.774786999694564745e-03, 1.776778177869250920e-03, 1.778766368727068394e-03, 1.780751569189947901e-03, 1.782733776184850221e-03, 1.784712986643895421e-03, 1.786689197504076404e-03, 1.788662405707435853e-03, 1.790632608201158174e-03, 1.792599801937362842e-03, 1.794563983873197644e-03, 1.796525150970981798e-03, 1.798483300197923620e-03, 1.800438428526466824e-03, 1.802390532933973930e-03, 1.804339610402876104e-03, 1.806285657920824513e-03, 1.808228672480388047e-03, 1.810168651079235250e-03, 1.812105590720248377e-03, 1.814039488411256897e-03, 1.815970341165203377e-03, 1.817898146000238458e-03, 1.819822899939506616e-03, 1.821744600011244389e-03, 1.823663243248941062e-03, 1.825578826691026191e-03, 1.827491347381271199e-03, 1.829400802368260715e-03, 1.831307188705976743e-03, 1.833210503453540190e-03, 1.835110743674952171e-03, 1.837007906439608144e-03, 1.838901988822017313e-03, 1.840792987901754925e-03, 1.842680900763598228e-03, 1.844565724497435836e-03, 1.846447456198462445e-03, 1.848326092966918197e-03, 1.850201631908199480e-03, 1.852074070133031538e-03, 1.853943404757183106e-03, 1.855809632901624486e-03, 1.857672751692591084e-03, 1.859532758261566929e-03, 1.861389649744982396e-03, 1.863243423284769969e-03, 1.865094076027861824e-03, 1.866941605126576451e-03, 1.868786007738320286e-03, 1.870627281025735158e-03, 1.872465422156797824e-03, 1.874300428304613748e-03, 1.876132296647510999e-03, 1.877961024369197238e-03, 1.879786608658481298e-03, 1.881609046709435814e-03, 1.883428335721515834e-03, 1.885244472899307933e-03, 1.887057455452646661e-03, 1.888867280596778905e-03, 1.890673945552043397e-03, 1.892477447544229372e-03, 1.894277783804270820e-03, 1.896074951568404564e-03, 1.897868948078297114e-03, 1.899659770580639168e-03, 1.901447416327652811e-03, 1.903231882576822409e-03, 1.905013166590861220e-03, 1.906791265637788587e-03, 1.908566176991056138e-03, 1.910337897929313602e-03, 1.912106425736540428e-03, 1.913871757702147050e-03, 1.915633891120761953e-03, 1.917392823292398199e-03, 1.919148551522343715e-03, 1.920901073121330637e-03, 1.922650385405468530e-03, 1.924396485695979838e-03, 1.926139371319677586e-03, 1.927879039608696278e-03, 1.929615487900450269e-03, 1.931348713537773621e-03, 1.933078713868813204e-03, 1.934805486247219517e-03, 1.936529028031907292e-03, 1.938249336587164135e-03, 1.939966409282791685e-03, 1.941680243493858855e-03, 1.943390836600831714e-03, 1.945098185989663046e-03, 1.946802289051720791e-03, 1.948503143183580744e-03, 1.950200745787472817e-03, 1.951895094270869472e-03, 1.953586186046802307e-03, 1.955274018533613347e-03, 1.956958589155073647e-03, 1.958639895340500824e-03, 1.960317934524528558e-03, 1.961992704147232352e-03, 1.963664201654242731e-03, 1.965332424496517988e-03, 1.966997370130473856e-03, 1.968659036018088459e-03, 1.970317419626685471e-03, 1.971972518429054248e-03, 1.973624329903554773e-03, 1.975272851533905159e-03, 1.976918080809304812e-03, 1.978560015224534174e-03, 1.980198652279704929e-03, 1.981833989480600872e-03, 1.983466024338235989e-03, 1.985094754369337144e-03, 1.986720177096085605e-03, 1.988342290046094495e-03, 1.989961090752479910e-03, 1.991576576753971081e-03, 1.993188745594696130e-03, 1.994797594824346439e-03, 1.996403121998074296e-03, 1.998005324676681987e-03, 1.999604200426381099e-03, 2.001199746818907010e-03, 2.002791961431609098e-03, 2.004380841847403037e-03, 2.005966385654531833e-03, 2.007548590446996042e-03, 2.009127453824341263e-03, 2.010702973391456910e-03, 2.012275146759026807e-03, 2.013843971543121097e-03, 2.015409445365513690e-03, 2.016971565853438540e-03, 2.018530330639691558e-03, 2.020085737362749875e-03, 2.021637783666569311e-03, 2.023186467200674150e-03, 2.024731785620284205e-03, 2.026273736586092777e-03, 2.027812317764390252e-03, 2.029347526827166449e-03, 2.030879361451895081e-03, 2.032407819321661695e-03, 2.033932898125251267e-03, 2.035454595556918794e-03, 2.036972909316674650e-03, 2.038487837110037389e-03, 2.039999376648136964e-03, 2.041507525647833551e-03, 2.043012281831512421e-03, 2.044513642927174579e-03, 2.046011606668576843e-03, 2.047506170794986379e-03, 2.048997333051318179e-03, 2.050485091188229171e-03, 2.051969442961932167e-03, 2.053450386134296046e-03, 2.054927918472832741e-03, 2.056402037750765330e-03, 2.057872741747008086e-03, 2.059340028245935320e-03, 2.060803895037797290e-03, 2.062264339918499015e-03, 2.063721360689428543e-03, 2.065174955157837288e-03, 2.066625121136634029e-03, 2.068071856444336776e-03, 2.069515158905179016e-03, 2.070955026349053773e-03, 2.072391456611638073e-03, 2.073824447534212533e-03, 2.075253996963748095e-03, 2.076680102753028761e-03, 2.078102762760416534e-03, 2.079521974850017958e-03, 2.080937736891709262e-03, 2.082350046761019275e-03, 2.083758902339169754e-03, 2.085164301513200719e-03, 2.086566242175759249e-03, 2.087964722225333237e-03, 2.089359739566056234e-03, 2.090751292107785944e-03, 2.092139377766212647e-03, 2.093523994462670110e-03, 2.094905140124236204e-03, 2.096282812683828746e-03, 2.097657010080010778e-03, 2.099027730257103756e-03, 2.100394971165284261e-03, 2.101758730760379303e-03, 2.103119007003982979e-03, 2.104475797863535839e-03, 2.105829101312131461e-03, 2.107178915328785773e-03, 2.108525237898071884e-03, 2.109868067010511276e-03, 2.111207400662421137e-03, 2.112543236855697528e-03, 2.113875573598221307e-03, 2.115204408903616565e-03, 2.116529740791241090e-03, 2.117851567286251416e-03, 2.119169886419677417e-03, 2.120484696228263580e-03, 2.121795994754592171e-03, 2.123103780047008639e-03, 2.124408050159768205e-03, 2.125708803152839832e-03, 2.127006037092000774e-03, 2.128299750048904225e-03, 2.129589940101067613e-03, 2.130876605331631472e-03, 2.132159743829746285e-03, 2.133439353690363017e-03, 2.134715433014200588e-03, 2.135987979907842151e-03, 2.137256992483671340e-03, 2.138522468860005413e-03, 2.139784407160910933e-03, 2.141042805516300915e-03, 2.142297662062015492e-03, 2.143548974939664051e-03, 2.144796742296704601e-03, 2.146040962286535712e-03, 2.147281633068333015e-03, 2.148518752807128136e-03, 2.149752319673893259e-03, 2.150982331845391511e-03, 2.152208787504258057e-03, 2.153431684839066888e-03, 2.154651022044167755e-03, 2.155866797319887836e-03, 2.157079008872359992e-03, 2.158287654913584788e-03, 2.159492733661549750e-03, 2.160694243340022507e-03, 2.161892182178673516e-03, 2.163086548413154127e-03, 2.164277340284909666e-03, 2.165464556041291327e-03, 2.166648193935631628e-03, 2.167828252227083953e-03, 2.169004729180730104e-03, 2.170177623067536497e-03, 2.171346932164434397e-03, 2.172512654754281316e-03, 2.173674789125698819e-03, 2.174833333573384340e-03, 2.175988286397924701e-03, 2.177139645905782663e-03, 2.178287410409338130e-03, 2.179431578226979655e-03, 2.180572147682943544e-03, 2.181709117107427046e-03, 2.182842484836530240e-03, 2.183972249212381804e-03, 2.185098408582948192e-03, 2.186220961302158539e-03, 2.187339905729921569e-03, 2.188455240232131671e-03, 2.189566963180464201e-03, 2.190675072952733265e-03, 2.191779567932602025e-03, 2.192880446509682009e-03, 2.193977707079625486e-03, 2.195071348043943753e-03, 2.196161367810209666e-03, 2.197247764791886767e-03, 2.198330537408396072e-03, 2.199409684085209746e-03, 2.200485203253702352e-03, 2.201557093351218502e-03, 2.202625352821136612e-03, 2.203689980112763080e-03, 2.204750973681371753e-03, 2.205808331988289364e-03, 2.206862053500770193e-03, 2.207912136692030333e-03, 2.208958580041371286e-03, 2.210001382033969196e-03, 2.211040541161129851e-03, 2.212076055919980338e-03, 2.213107924813786497e-03, 2.214136146351795061e-03, 2.215160719049199395e-03, 2.216181641427201945e-03, 2.217198912013081460e-03, 2.218212529340052048e-03, 2.219222491947344267e-03, 2.220228798380263248e-03, 2.221231447190061617e-03, 2.222230436934028407e-03, 2.223225766175459996e-03, 2.224217433483701746e-03, 2.225205437434154502e-03, 2.226189776608108930e-03, 2.227170449593003990e-03, 2.228147454982328055e-03, 2.229120791375449346e-03, 2.230090457377927309e-03, 2.231056451601251111e-03, 2.232018772663029588e-03, 2.232977419186847699e-03, 2.233932389802316398e-03, 2.234883683145174119e-03, 2.235831297857127174e-03, 2.236775232585926955e-03, 2.237715485985438020e-03, 2.238652056715517095e-03, 2.239584943442070753e-03, 2.240514144837107459e-03, 2.241439659578645625e-03, 2.242361486350751779e-03, 2.243279623843617756e-03, 2.244194070753411947e-03, 2.245104825782447133e-03, 2.246011887639033904e-03, 2.246915255037559584e-03, 2.247814926698536372e-03, 2.248710901348475143e-03, 2.249603177719979551e-03, 2.250491754551759913e-03, 2.251376630588557744e-03, 2.252257804581196503e-03, 2.253135275286622351e-03, 2.254009041467815253e-03, 2.254879101893821070e-03, 2.255745455339852601e-03, 2.256608100587124358e-03, 2.257467036422965319e-03, 2.258322261640782064e-03, 2.259173775040096942e-03, 2.260021575426558044e-03, 2.260865661611777006e-03, 2.261706032413577511e-03, 2.262542686655874720e-03, 2.263375623168627573e-03, 2.264204840787899502e-03, 2.265030338355916543e-03, 2.265852114720952847e-03, 2.266670168737387053e-03, 2.267484499265710537e-03, 2.268295105172571206e-03, 2.269101985330652937e-03, 2.269905138618770555e-03, 2.270704563921878069e-03, 2.271500260131068243e-03, 2.272292226143429478e-03, 2.273080460862306022e-03, 2.273864963197055541e-03, 2.274645732063244712e-03, 2.275422766382490056e-03, 2.276196065082542082e-03, 2.276965627097323874e-03, 2.277731451366830050e-03, 2.278493536837186608e-03, 2.279251882460696897e-03, 2.280006487195737098e-03, 2.280757350006827350e-03, 2.281504469864656034e-03, 2.282247845746003447e-03, 2.282987476633782133e-03, 2.283723361517091526e-03, 2.284455499391117340e-03, 2.285183889257192714e-03, 2.285908530122822500e-03, 2.286629421001608233e-03, 2.287346560913359594e-03, 2.288059948883930470e-03, 2.288769583945401108e-03, 2.289475465135993541e-03, 2.290177591500048605e-03, 2.290875962088043723e-03, 2.291570575956667927e-03, 2.292261432168706935e-03, 2.292948529793091723e-03, 2.293631867904972685e-03, 2.294311445585598633e-03, 2.294987261922386626e-03, 2.295659316008901146e-03, 2.296327606944894434e-03, 2.296992133836293914e-03, 2.297652895795095507e-03, 2.298309891939555750e-03, 2.298963121394062992e-03, 2.299612583289157783e-03, 2.300258276761548912e-03, 2.300900200954105607e-03, 2.301538355015901333e-03, 2.302172738102137902e-03, 2.302803349374192739e-03, 2.303430187999641436e-03, 2.304053253152200074e-03, 2.304672544011763385e-03, 2.305288059764411257e-03, 2.305899799602433020e-03, 2.306507762724183900e-03, 2.307111948334324841e-03, 2.307712355643604368e-03, 2.308308983868981746e-03, 2.308901832233623084e-03, 2.309490899966812425e-03, 2.310076186304090094e-03, 2.310657690487114349e-03, 2.311235411763753328e-03, 2.311809349388073333e-03, 2.312379502620305442e-03, 2.312945870726855913e-03, 2.313508452980371239e-03, 2.314067248659626257e-03, 2.314622257049596572e-03, 2.315173477441493689e-03, 2.315720909132666129e-03, 2.316264551426655809e-03, 2.316804403633249652e-03, 2.317340465068359889e-03, 2.317872735054164138e-03, 2.318401212918940607e-03, 2.318925897997248936e-03, 2.319446789629817877e-03, 2.319963887163559169e-03, 2.320477189951581851e-03, 2.320986697353222186e-03, 2.321492408733978174e-03, 2.321994323465574606e-03, 2.322492440925913622e-03, 2.322986760499134995e-03, 2.323477281575543271e-03, 2.323964003551638995e-03, 2.324446925830191135e-03, 2.324926047820099172e-03, 2.325401368936492411e-03, 2.325872888600713072e-03, 2.326340606240331465e-03, 2.326804521289045375e-03, 2.327264633186860911e-03, 2.327720941379900817e-03, 2.328173445320573173e-03, 2.328622144467441292e-03, 2.329067038285290072e-03, 2.329508126245134238e-03, 2.329945407824173670e-03, 2.330378882505830269e-03, 2.330808549779741883e-03, 2.331234409141751899e-03, 2.331656460093900138e-03, 2.332074702144492674e-03, 2.332489134807984310e-03, 2.332899757605066179e-03, 2.333306570062680923e-03, 2.333709571713925117e-03, 2.334108762098165927e-03, 2.334504140760939629e-03, 2.334895707254021433e-03, 2.335283461135423747e-03, 2.335667401969323750e-03, 2.336047529326150136e-03, 2.336423842782564889e-03, 2.336796341921422090e-03, 2.337165026331775291e-03, 2.337529895608946029e-03, 2.337890949354450541e-03, 2.338248187176001931e-03, 2.338601608687589529e-03, 2.338951213509362671e-03, 2.339297001267723938e-03, 2.339638971595279712e-03, 2.339977124130880083e-03, 2.340311458519593255e-03, 2.340641974412672587e-03, 2.340968671467632059e-03, 2.341291549348203764e-03, 2.341610607724328372e-03, 2.341925846272166403e-03, 2.342237264674110371e-03, 2.342544862618787822e-03, 2.342848639801018828e-03, 2.343148595921861962e-03, 2.343444730688619502e-03, 2.343737043814782782e-03, 2.344025535020072531e-03, 2.344310204030461420e-03, 2.344591050578130696e-03, 2.344868074401462374e-03, 2.345141275245094751e-03, 2.345410652859876866e-03, 2.345676207002881947e-03, 2.345937937437412180e-03, 2.346195843932984831e-03, 2.346449926265359569e-03, 2.346700184216499001e-03, 2.346946617574597726e-03, 2.347189226134085375e-03, 2.347428009695609261e-03, 2.347662968066037848e-03, 2.347894101058466392e-03, 2.348121408492214769e-03, 2.348344890192830946e-03, 2.348564545992081008e-03, 2.348780375727966500e-03, 2.348992379244698846e-03, 2.349200556392726236e-03, 2.349404907028708901e-03, 2.349605431015554680e-03, 2.349802128222362209e-03, 2.349994998524482931e-03, 2.350184041803480336e-03, 2.350369257947137330e-03, 2.350550646849464045e-03, 2.350728208410699134e-03, 2.350901942537313247e-03, 2.351071849141972165e-03, 2.351237928143588840e-03, 2.351400179467285235e-03, 2.351558603044420510e-03, 2.351713198812558064e-03, 2.351863966715494591e-03, 2.352010906703267887e-03, 2.352154018732087459e-03, 2.352293302764432974e-03, 2.352428758768976627e-03, 2.352560386720634316e-03, 2.352688186600519239e-03, 2.352812158395977456e-03, 2.352932302100574878e-03, 2.353048617714102037e-03, 2.353161105242551968e-03, 2.353269764698157941e-03, 2.353374596099357032e-03, 2.353475599470803998e-03, 2.353572774843390360e-03, 2.353666122254211013e-03, 2.353755641746573327e-03, 2.353841333370012764e-03, 2.353923197180276400e-03, 2.354001233239325520e-03, 2.354075441615349935e-03, 2.354145822382733722e-03, 2.354212375622093383e-03, 2.354275101420257466e-03, 2.354333999870254421e-03, 2.354389071071346859e-03, 2.354440315128998595e-03, 2.354487732154878117e-03, 2.354531322266895446e-03, 2.354571085589140991e-03, 2.354607022251925443e-03, 2.354639132391779782e-03, 2.354667416151436619e-03, 2.354691873679831508e-03, 2.354712505132128958e-03, 2.354729310669677767e-03, 2.354742290460060030e-03, 2.354751444677043865e-03, 2.354756773500609433e-03, 2.354758277116955883e-03, 2.354755955718467516e-03, 2.354749809503740247e-03, 2.354739838677585503e-03, 2.354726043451003774e-03, 2.354708424041207591e-03, 2.354686980671607220e-03, 2.354661713571813697e-03, 2.354632622977647933e-03, 2.354599709131109490e-03, 2.354562972280426023e-03, 2.354522412679999933e-03, 2.354478030590438295e-03, 2.354429826278560661e-03, 2.354377800017356994e-03, 2.354321952086028437e-03, 2.354262282769975165e-03, 2.354198792360780342e-03, 2.354131481156222262e-03, 2.354060349460278256e-03, 2.353985397583118182e-03, 2.353906625841084479e-03, 2.353824034556744205e-03, 2.353737624058808812e-03, 2.353647394682225214e-03, 2.353553346768088618e-03, 2.353455480663705409e-03, 2.353353796722551950e-03, 2.353248295304300602e-03, 2.353138976774812787e-03, 2.353025841506116867e-03, 2.352908889876426796e-03, 2.352788122270147754e-03, 2.352663539077854034e-03, 2.352535140696313323e-03, 2.352402927528457217e-03, 2.352266899983399863e-03, 2.352127058476435797e-03, 2.351983403429026495e-03, 2.351835935268815122e-03, 2.351684654429614385e-03, 2.351529561351420848e-03, 2.351370656480382404e-03, 2.351207940268830367e-03, 2.351041413175261260e-03, 2.350871075664348088e-03, 2.350696928206913883e-03, 2.350518971279970740e-03, 2.350337205366670804e-03, 2.350151630956343139e-03, 2.349962248544491990e-03, 2.349769058632758187e-03, 2.349572061728959042e-03, 2.349371258347062331e-03, 2.349166649007205804e-03, 2.348958234235675509e-03, 2.348746014564914025e-03, 2.348529990533525236e-03, 2.348310162686254813e-03, 2.348086531574008866e-03, 2.347859097753846134e-03, 2.347627861788971482e-03, 2.347392824248733297e-03, 2.347153985708648211e-03, 2.346911346750353393e-03, 2.346664907961642111e-03, 2.346414669936455928e-03, 2.346160633274869955e-03, 2.345902798583104562e-03, 2.345641166473522773e-03, 2.345375737564627666e-03, 2.345106512481042859e-03, 2.344833491853550236e-03, 2.344556676319055691e-03, 2.344276066520594327e-03, 2.343991663107343471e-03, 2.343703466734595783e-03, 2.343411478063790049e-03, 2.343115697762490797e-03, 2.342816126504365746e-03, 2.342512764969240015e-03, 2.342205613843034977e-03, 2.341894673817825068e-03, 2.341579945591768831e-03, 2.341261429869159662e-03, 2.340939127360429275e-03, 2.340613038782097827e-03, 2.340283164856798211e-03, 2.339949506313298601e-03, 2.339612063886473397e-03, 2.339270838317285012e-03, 2.338925830352837649e-03, 2.338577040746315713e-03, 2.338224470257038463e-03, 2.337868119650390181e-03, 2.337507989697888700e-03, 2.337144081177145501e-03, 2.336776394871871356e-03, 2.336404931571844663e-03, 2.336029692073013364e-03, 2.335650677177340557e-03, 2.335267887692932861e-03, 2.334881324433968428e-03, 2.334490988220716892e-03, 2.334096879879546307e-03, 2.333699000242887150e-03, 2.333297350149282634e-03, 2.332891930443353138e-03, 2.332482741975777131e-03, 2.332069785603341043e-03, 2.331653062188913245e-03, 2.331232572601396776e-03, 2.330808317715803071e-03, 2.330380298413233745e-03, 2.329948515580814675e-03, 2.329512970111763653e-03, 2.329073662905388649e-03, 2.328630594867017126e-03, 2.328183766908084509e-03, 2.327733179946049179e-03, 2.327278834904475315e-03, 2.326820732712955690e-03, 2.326358874307127723e-03, 2.325893260628715976e-03, 2.325423892625487488e-03, 2.324950771251243099e-03, 2.324473897465852579e-03, 2.323993272235248125e-03, 2.323508896531359738e-03, 2.323020771332198926e-03, 2.322528897621809266e-03, 2.322033276390291553e-03, 2.321533908633751329e-03, 2.321030795354333577e-03, 2.320523937560266085e-03, 2.320013336265754934e-03, 2.319498992491036537e-03, 2.318980907262439221e-03, 2.318459081612238380e-03, 2.317933516578792649e-03, 2.317404213206436352e-03, 2.316871172545563635e-03, 2.316334395652576861e-03, 2.315793883589868825e-03, 2.315249637425878266e-03, 2.314701658235063415e-03, 2.314149947097842146e-03, 2.313594505100689553e-03, 2.313035333336082005e-03, 2.312472432902470693e-03, 2.311905804904332371e-03, 2.311335450452151139e-03, 2.310761370662369005e-03, 2.310183566657480429e-03, 2.309602039565920861e-03, 2.309016790522146114e-03, 2.308427820666617176e-03, 2.307835131145729093e-03, 2.307238723111897268e-03, 2.306638597723546617e-03, 2.306034756145014433e-03, 2.305427199546673106e-03, 2.304815929104857275e-03, 2.304200946001852546e-03, 2.303582251425942765e-03, 2.302959846571386599e-03, 2.302333732638371568e-03, 2.301703910833086900e-03, 2.301070382367662818e-03, 2.300433148460226916e-03, 2.299792210334824800e-03, 2.299147569221435261e-03, 2.298499226356082170e-03, 2.297847182980659268e-03, 2.297191440343027309e-03, 2.296531999697007127e-03, 2.295868862302370087e-03, 2.295202029424799062e-03, 2.294531502335942202e-03, 2.293857282313378244e-03, 2.293179370640634294e-03, 2.292497768607131177e-03, 2.291812477508253267e-03, 2.291123498645325496e-03, 2.290430833325552210e-03, 2.289734482862066604e-03, 2.289034448573992742e-03, 2.288330731786272516e-03, 2.287623333829846492e-03, 2.286912256041509495e-03, 2.286197499763995607e-03, 2.285479066345949984e-03, 2.284756957141901093e-03, 2.284031173512299749e-03, 2.283301716823507837e-03, 2.282568588447750173e-03, 2.281831789763163077e-03, 2.281091322153804349e-03, 2.280347187009569999e-03, 2.279599385726279685e-03, 2.278847919705645052e-03, 2.278092790355221164e-03, 2.277333999088475454e-03, 2.276571547324761271e-03, 2.275805436489263672e-03, 2.275035668013091796e-03, 2.274262243333152658e-03, 2.273485163892334602e-03, 2.272704431139290025e-03, 2.271920046528544228e-03, 2.271132011520523176e-03, 2.270340327581508826e-03, 2.269544996183578411e-03, 2.268746018804718070e-03, 2.267943396928756919e-03, 2.267137132045328029e-03, 2.266327225649947350e-03, 2.265513679243962106e-03, 2.264696494334572478e-03, 2.263875672434774357e-03, 2.263051215063379730e-03, 2.262223123745141142e-03, 2.261391400010528789e-03, 2.260556045395848476e-03, 2.259717061443261132e-03, 2.258874449700744216e-03, 2.258028211722091280e-03, 2.257178349066864698e-03, 2.256324863300478503e-03, 2.255467755994163253e-03, 2.254607028724909222e-03, 2.253742683075532754e-03, 2.252874720634673224e-03, 2.252003142996727558e-03, 2.251127951761849356e-03, 2.250249148536111101e-03, 2.249366734931233097e-03, 2.248480712564786439e-03, 2.247591083060142703e-03, 2.246697848046382874e-03, 2.245801009158436123e-03, 2.244900568036925417e-03, 2.243996526328314971e-03, 2.243088885684822644e-03, 2.242177647764365730e-03, 2.241262814230704069e-03, 2.240344386753333368e-03, 2.239422367007438356e-03, 2.238496756674045012e-03, 2.237567557439883083e-03, 2.236634770997415148e-03, 2.235698399044876508e-03, 2.234758443286241365e-03, 2.233814905431168174e-03, 2.232867787195128885e-03, 2.231917090299218986e-03, 2.230962816470409907e-03, 2.230004967441260623e-03, 2.229043544950088090e-03, 2.228078550740956836e-03, 2.227109986563651205e-03, 2.226137854173589926e-03, 2.225162155331984401e-03, 2.224182891805712940e-03, 2.223200065367385812e-03, 2.222213677795240733e-03, 2.221223730873279900e-03, 2.220230226391198009e-03, 2.219233166144309825e-03, 2.218232551933680286e-03, 2.217228385566057721e-03, 2.216220668853836114e-03, 2.215209403615047302e-03, 2.214194591673538347e-03, 2.213176234858663625e-03, 2.212154335005563251e-03, 2.211128893954938425e-03, 2.210099913553235321e-03, 2.209067395652544903e-03, 2.208031342110538739e-03, 2.206991754790616021e-03, 2.205948635561822465e-03, 2.204901986298767481e-03, 2.203851808881774656e-03, 2.202798105196817572e-03, 2.201740877135404447e-03, 2.200680126594775892e-03, 2.199615855477769170e-03, 2.198548065692792607e-03, 2.197476759153966109e-03, 2.196401937780928168e-03, 2.195323603498995028e-03, 2.194241758239103435e-03, 2.193156403937691814e-03, 2.192067542536983021e-03, 2.190975175984628300e-03, 2.189879306233928017e-03, 2.188779935243803914e-03, 2.187677064978768311e-03, 2.186570697408853417e-03, 2.185460834509740571e-03, 2.184347478262698219e-03, 2.183230630654481742e-03, 2.182110293677496510e-03, 2.180986469329699012e-03, 2.179859159614626340e-03, 2.178728366541325939e-03, 2.177594092124382485e-03, 2.176456338384084432e-03, 2.175315107346113049e-03, 2.174170401041725445e-03, 2.173022221507771908e-03, 2.171870570786614812e-03, 2.170715450926179787e-03, 2.169556863979847736e-03, 2.168394812006612261e-03, 2.167229297070967769e-03, 2.166060321242874349e-03, 2.164887886597885273e-03, 2.163711995217057656e-03, 2.162532649186919495e-03, 2.161349850599463170e-03, 2.160163601552348399e-03, 2.158973904148565708e-03, 2.157780760496697502e-03, 2.156584172710751535e-03, 2.155384142910275400e-03, 2.154180673220310992e-03, 2.152973765771300837e-03, 2.151763422699240307e-03, 2.150549646145601731e-03, 2.149332438257248526e-03, 2.148111801186584381e-03, 2.146887737091476064e-03, 2.145660248135174055e-03, 2.144429336486447860e-03, 2.143195004319538299e-03, 2.141957253814032614e-03, 2.140716087155057016e-03, 2.139471506533170437e-03, 2.138223514144281263e-03, 2.136972112189842923e-03, 2.135717302876594548e-03, 2.134459088416900546e-03, 2.133197471028368958e-03, 2.131932452934059627e-03, 2.130664036362494174e-03, 2.129392223547606558e-03, 2.128117016728639423e-03, 2.126838418150347500e-03, 2.125556430062810250e-03, 2.124271054721566746e-03, 2.122982294387437859e-03, 2.121690151326733990e-03, 2.120394627811114565e-03, 2.119095726117592362e-03, 2.117793448528496655e-03, 2.116487797331715204e-03, 2.115178774820318693e-03, 2.113866383292770188e-03, 2.112550625052954639e-03, 2.111231502410057439e-03, 2.109909017678669816e-03, 2.108583173178617525e-03, 2.107253971235171618e-03, 2.105921414178927881e-03, 2.104585504345724868e-03, 2.103246244076835154e-03, 2.101903635718830893e-03, 2.100557681623530046e-03, 2.099208384148159873e-03, 2.097855745655241577e-03, 2.096499768512539129e-03, 2.095140455093185035e-03, 2.093777807775625693e-03, 2.092411828943512540e-03, 2.091042520985904145e-03, 2.089669886297024649e-03, 2.088293927276481041e-03, 2.086914646329142593e-03, 2.085532045865078846e-03, 2.084146128299710094e-03, 2.082756896053731925e-03, 2.081364351552997261e-03, 2.079968497228720618e-03, 2.078569335517367091e-03, 2.077166868860549128e-03, 2.075761099705234706e-03, 2.074352030503590766e-03, 2.072939663713045666e-03, 2.071524001796213287e-03, 2.070105047220891295e-03, 2.068682802460297503e-03, 2.067257269992679551e-03, 2.065828452301491855e-03, 2.064396351875595961e-03, 2.062960971208873274e-03, 2.061522312800437989e-03, 2.060080379154651409e-03, 2.058635172781061225e-03, 2.057186696194414095e-03, 2.055734951914567170e-03, 2.054279942466629913e-03, 2.052821670380907716e-03, 2.051360138192772232e-03, 2.049895348442856095e-03, 2.048427303676967921e-03, 2.046956006445963070e-03, 2.045481459305959187e-03, 2.044003664818216503e-03, 2.042522625549051101e-03, 2.041038344070040915e-03, 2.039550822957777228e-03, 2.038060064794075445e-03, 2.036566072165886618e-03, 2.035068847665174718e-03, 2.033568393889136072e-03, 2.032064713440067099e-03, 2.030557808925281468e-03, 2.029047682957293985e-03, 2.027534338153739058e-03, 2.026017777137209801e-03, 2.024498002535526919e-03, 2.022975016981576075e-03, 2.021448823113236766e-03, 2.019919423573595264e-03, 2.018386821010647540e-03, 2.016851018077688712e-03, 2.015312017432881100e-03, 2.013769821739442873e-03, 2.012224433665858389e-03, 2.010675855885441041e-03, 2.009124091076603877e-03, 2.007569141922856560e-03, 2.006011011112757668e-03, 2.004449701339785454e-03, 2.002885215302550349e-03, 2.001317555704649250e-03, 1.999746725254745745e-03, 1.998172726666388403e-03, 1.996595562658258407e-03, 1.995015235954039449e-03, 1.993431749282337066e-03, 1.991845105376721138e-03, 1.990255306975960946e-03, 1.988662356823604066e-03, 1.987066257668205355e-03, 1.985467012263379422e-03, 1.983864623367665760e-03, 1.982259093744606800e-03, 1.980650426162610441e-03, 1.979038623395128725e-03, 1.977423688220593650e-03, 1.975805623422249770e-03, 1.974184431788411805e-03, 1.972560116112315881e-03, 1.970932679192043211e-03, 1.969302123830694428e-03, 1.967668452836299816e-03, 1.966031669021703517e-03, 1.964391775204801186e-03, 1.962748774208261573e-03, 1.961102668859758102e-03, 1.959453461991869563e-03, 1.957801156441957811e-03, 1.956145755052377238e-03, 1.954487260670383260e-03, 1.952825676147985304e-03, 1.951161004342189887e-03, 1.949493248114856844e-03, 1.947822410332630816e-03, 1.946148493867093246e-03, 1.944471501594704490e-03, 1.942791436396650940e-03, 1.941108301159091571e-03, 1.939422098772974282e-03, 1.937732832134120243e-03, 1.936040504143117860e-03, 1.934345117705333402e-03, 1.932646675731188339e-03, 1.930945181135680557e-03, 1.929240636838673410e-03, 1.927533045764903523e-03, 1.925822410843904030e-03, 1.924108735009898976e-03, 1.922392021202009530e-03, 1.920672272364113038e-03, 1.918949491444894200e-03, 1.917223681397713445e-03, 1.915494845180804474e-03, 1.913762985757170394e-03, 1.912028106094506522e-03, 1.910290209165212746e-03, 1.908549297946676932e-03, 1.906805375420760800e-03, 1.905058444574223193e-03, 1.903308508398558752e-03, 1.901555569889864551e-03, 1.899799632049142600e-03, 1.898040697881932292e-03, 1.896278770398622006e-03, 1.894513852614304042e-03, 1.892745947548657957e-03, 1.890975058226180639e-03, 1.889201187676063133e-03, 1.887424338932070520e-03, 1.885644515032760486e-03, 1.883861719021385529e-03, 1.882075953945736187e-03, 1.880287222858404925e-03, 1.878495528816629149e-03, 1.876700874882213793e-03, 1.874903264121741218e-03, 1.873102699606270021e-03, 1.871299184411765468e-03, 1.869492721618594899e-03, 1.867683314311797266e-03, 1.865870965581115223e-03, 1.864055678520917933e-03, 1.862237456230069876e-03, 1.860416301812158535e-03, 1.858592218375389226e-03, 1.856765209032436997e-03, 1.854935276900700983e-03, 1.853102425102120740e-03, 1.851266656763260812e-03, 1.849427975015195159e-03, 1.847586382993519081e-03, 1.845741883838647587e-03, 1.843894480695309297e-03, 1.842044176712793633e-03, 1.840190975045189348e-03, 1.838334878850836351e-03, 1.836475891292834416e-03, 1.834614015538639422e-03, 1.832749254760381464e-03, 1.830881612134695495e-03, 1.829011090842630905e-03, 1.827137694069866846e-03, 1.825261425006583643e-03, 1.823382286847358277e-03, 1.821500282791379058e-03, 1.819615416042333301e-03, 1.817727689808264430e-03, 1.815837107301833701e-03, 1.813943671740163646e-03, 1.812047386344735290e-03, 1.810148254341658550e-03, 1.808246278961337652e-03, 1.806341463438758876e-03, 1.804433811013348527e-03, 1.802523324928862131e-03, 1.800610008433616016e-03, 1.798693864780353093e-03, 1.796774897226124240e-03, 1.794853109032533769e-03, 1.792928503465588503e-03, 1.791001083795588488e-03, 1.789070853297363784e-03, 1.787137815250146528e-03, 1.785201972937425869e-03, 1.783263329647264556e-03, 1.781321888671884334e-03, 1.779377653308189186e-03, 1.777430626857193956e-03, 1.775480812624278268e-03, 1.773528213919451074e-03, 1.771572834056803561e-03, 1.769614676354833551e-03, 1.767653744136454602e-03, 1.765690040728929442e-03, 1.763723569463719913e-03, 1.761754333676745880e-03, 1.759782336708204170e-03, 1.757807581902648582e-03, 1.755830072608820106e-03, 1.753849812179880457e-03, 1.751866803973303223e-03, 1.749881051350766744e-03, 1.747892557678186205e-03, 1.745901326326024586e-03, 1.743907360668714998e-03, 1.741910664085179802e-03, 1.739911239958426411e-03, 1.737909091675860851e-03, 1.735904222629133797e-03, 1.733896636214016761e-03, 1.731886335830651455e-03, 1.729873324883418389e-03, 1.727857606780797443e-03, 1.725839184935616362e-03, 1.723818062764934968e-03, 1.721794243689880790e-03, 1.719767731135930745e-03, 1.717738528532757178e-03, 1.715706639314097974e-03, 1.713672066918007879e-03, 1.711634814786736633e-03, 1.709594886366570463e-03, 1.707552285108148880e-03, 1.705507014466049439e-03, 1.703459077899334168e-03, 1.701408478870936568e-03, 1.699355220848003563e-03, 1.697299307301898541e-03, 1.695240741708125025e-03, 1.693179527546185507e-03, 1.691115668299845781e-03, 1.689049167456990524e-03, 1.686980028509478015e-03, 1.684908254953412050e-03, 1.682833850288953294e-03, 1.680756818020412522e-03, 1.678677161656084516e-03, 1.676594884708315072e-03, 1.674509990693793951e-03, 1.672422483133019283e-03, 1.670332365550585962e-03, 1.668239641475256123e-03, 1.666144314439799330e-03, 1.664046387981063047e-03, 1.661945865639825838e-03, 1.659842750961019846e-03, 1.657737047493614132e-03, 1.655628758790471345e-03, 1.653517888408605110e-03, 1.651404439909041682e-03, 1.649288416856723675e-03, 1.647169822820545183e-03, 1.645048661373680731e-03, 1.642924936092957956e-03, 1.640798650559382142e-03, 1.638669808357936727e-03, 1.636538413077432601e-03, 1.634404468310824039e-03, 1.632267977654852003e-03, 1.630128944710338606e-03, 1.627987373082064601e-03, 1.625843266378597645e-03, 1.623696628212585678e-03, 1.621547462200613595e-03, 1.619395771963034114e-03, 1.617241561124269826e-03, 1.615084833312642769e-03, 1.612925592160242361e-03, 1.610763841303198846e-03, 1.608599584381538222e-03, 1.606432825039017225e-03, 1.604263566923479168e-03, 1.602091813686384696e-03, 1.599917568983413732e-03, 1.597740836473808676e-03, 1.595561619820716134e-03, 1.593379922691235502e-03, 1.591195748756299043e-03, 1.589009101690544608e-03, 1.586819985172566302e-03, 1.584628402884749035e-03, 1.582434358513344413e-03, 1.580237855748259758e-03, 1.578038898283366017e-03, 1.575837489816319737e-03, 1.573633634048492158e-03, 1.571427334684978106e-03, 1.569218595434947704e-03, 1.567007420011060038e-03, 1.564793812129742015e-03, 1.562577775511465048e-03, 1.560359313880126412e-03, 1.558138430963613898e-03, 1.555915130493364541e-03, 1.553689416204689878e-03, 1.551461291836652139e-03, 1.549230761131871036e-03, 1.546997827836843606e-03, 1.544762495701778107e-03, 1.542524768480436166e-03, 1.540284649930428107e-03, 1.538042143813068323e-03, 1.535797253893194866e-03, 1.533549983939480827e-03, 1.531300337724280161e-03, 1.529048319023453570e-03, 1.526793931616736693e-03, 1.524537179287306209e-03, 1.522278065822153673e-03, 1.520016595011899679e-03, 1.517752770650660507e-03, 1.515486596536323944e-03, 1.513218076470411151e-03, 1.510947214257908622e-03, 1.508674013707556787e-03, 1.506398478631708424e-03, 1.504120612846160821e-03, 1.501840420170454582e-03, 1.499557904427713598e-03, 1.497273069444496080e-03, 1.494985919051075801e-03, 1.492696457081253009e-03, 1.490404687372424465e-03, 1.488110613765453345e-03, 1.485814240104687666e-03, 1.483515570238329567e-03, 1.481214608017804519e-03, 1.478911357298118897e-03, 1.476605821937903565e-03, 1.474298005799250157e-03, 1.471987912747816036e-03, 1.469675546652595734e-03, 1.467360911386242969e-03, 1.465044010824898902e-03, 1.462724848848029943e-03, 1.460403429338735229e-03, 1.458079756183582910e-03, 1.455753833272501732e-03, 1.453425664498824831e-03, 1.451095253759639506e-03, 1.448762604955129750e-03, 1.446427721989157825e-03, 1.444090608768826018e-03, 1.441751269204800175e-03, 1.439409707211175473e-03, 1.437065926705296441e-03, 1.434719931608072468e-03, 1.432371725843804757e-03, 1.430021313340033677e-03, 1.427668698027839515e-03, 1.425313883841683752e-03, 1.422956874719238408e-03, 1.420597674601698944e-03, 1.418236287433619460e-03, 1.415872717162750720e-03, 1.413506967740343510e-03, 1.411139043120988174e-03, 1.408768947262454370e-03, 1.406396684126033679e-03, 1.404022257676090313e-03, 1.401645671880657638e-03, 1.399266930710765539e-03, 1.396886038140792569e-03, 1.394502998148518637e-03, 1.392117814714999031e-03, 1.389730491824424981e-03, 1.387341033464409030e-03, 1.384949443625781412e-03, 1.382555726302675276e-03, 1.380159885492326759e-03, 1.377761925195381378e-03, 1.375361849415708852e-03, 1.372959662160317014e-03, 1.370555367439381736e-03, 1.368148969266622279e-03, 1.365740471658643184e-03, 1.363329878635313958e-03, 1.360917194219808538e-03, 1.358502422438438977e-03, 1.356085567320755841e-03, 1.353666632899330931e-03, 1.351245623210072140e-03, 1.348822542292044124e-03, 1.346397394187312828e-03, 1.343970182941260985e-03, 1.341540912602416603e-03, 1.339109587222278184e-03, 1.336676210855645410e-03, 1.334240787560439815e-03, 1.331803321397540853e-03, 1.329363816431095328e-03, 1.326922276728367128e-03, 1.324478706359545968e-03, 1.322033109398135751e-03, 1.319585489920499207e-03, 1.317135852006252970e-03, 1.314684199738069608e-03, 1.312230537201540363e-03, 1.309774868485458340e-03, 1.307317197681679951e-03, 1.304857528884941029e-03, 1.302395866193172989e-03, 1.299932213707341274e-03, 1.297466575531266899e-03, 1.294998955771960603e-03, 1.292529358539373481e-03, 1.290057787946530124e-03, 1.287584248109326741e-03, 1.285108743146609871e-03, 1.282631277180523114e-03, 1.280151854335859641e-03, 1.277670478740449474e-03, 1.275187154525176400e-03, 1.272701885823884077e-03, 1.270214676773210151e-03, 1.267725531512883547e-03, 1.265234454185522588e-03, 1.262741448936723033e-03, 1.260246519914839502e-03, 1.257749671271298376e-03, 1.255250907160449913e-03, 1.252750231739355093e-03, 1.250247649168150345e-03, 1.247743163609855207e-03, 1.245236779230201023e-03, 1.242728500197954255e-03, 1.240218330684750596e-03, 1.237706274864920413e-03, 1.235192336915859335e-03, 1.232676521017590874e-03, 1.230158831353146557e-03, 1.227639272108378785e-03, 1.225117847471808401e-03, 1.222594561634927175e-03, 1.220069418792047540e-03, 1.217542423140113069e-03, 1.215013578879029811e-03, 1.212482890211495417e-03, 1.209950361342819383e-03, 1.207415996481255895e-03, 1.204879799837825591e-03, 1.202341775626144691e-03, 1.199801928062804463e-03, 1.197260261366862302e-03, 1.194716779760510248e-03, 1.192171487468344452e-03, 1.189624388717668317e-03, 1.187075487738862211e-03, 1.184524788764665512e-03, 1.181972296030585562e-03, 1.179418013774940609e-03, 1.176861946238737721e-03, 1.174304097665501050e-03, 1.171744472301600778e-03, 1.169183074396019364e-03, 1.166619908200454327e-03, 1.164054977969097284e-03, 1.161488287958958561e-03, 1.158919842429680710e-03, 1.156349645643432907e-03, 1.153777701864961910e-03, 1.151204015361962860e-03, 1.148628590404411186e-03, 1.146051431264948160e-03, 1.143472542218918614e-03, 1.140891927544213091e-03, 1.138309591521357612e-03, 1.135725538433287295e-03, 1.133139772565675734e-03, 1.130552298206768036e-03, 1.127963119647190648e-03, 1.125372241180288765e-03, 1.122779667101952853e-03, 1.120185401710435420e-03, 1.117589449306692542e-03, 1.114991814194197595e-03, 1.112392500678768435e-03, 1.109791513068957708e-03, 1.107188855675589247e-03, 1.104584532812152289e-03, 1.101978548794621060e-03, 1.099370907941276320e-03, 1.096761614573041246e-03, 1.094150673013304488e-03, 1.091538087587738464e-03, 1.088923862624637624e-03, 1.086308002454741076e-03, 1.083690511411048493e-03, 1.081071393829160111e-03, 1.078450654047101529e-03, 1.075828296405134188e-03, 1.073204325246103182e-03, 1.070578744915191794e-03, 1.067951559760042281e-03, 1.065322774130555289e-03, 1.062692392378952744e-03, 1.060060418860187892e-03, 1.057426857931212166e-03, 1.054791713951406477e-03, 1.052154991282605286e-03, 1.049516694288995990e-03, 1.046876827336919212e-03, 1.044235394795217479e-03, 1.041592401035000819e-03, 1.038947850429745206e-03, 1.036301747355061840e-03, 1.033654096189032170e-03, 1.031004901312032899e-03, 1.028354167106605233e-03, 1.025701897957509738e-03, 1.023048098252129882e-03, 1.020392772379698568e-03, 1.017735924731997654e-03, 1.015077559702825399e-03, 1.012417681688392848e-03, 1.009756295087150570e-03, 1.007093404299591339e-03, 1.004429013728608136e-03, 1.001763127779304848e-03, 9.990957508588171540e-04, 9.964268873766447300e-04, 9.937565417444853624e-04, 9.910847183760421782e-04, 9.884114216873679873e-04, 9.857366560966861722e-04, 9.830604260241994352e-04, 9.803827358924482351e-04, 9.777035901261084752e-04, 9.750229931518326681e-04, 9.723409493986258281e-04, 9.696574632973354625e-04, 9.669725392813258375e-04, 9.642861817857297695e-04, 9.615983952478349269e-04, 9.589091841071393412e-04, 9.562185528052348548e-04, 9.535265057856134830e-04, 9.508330474940178282e-04, 9.481381823782568732e-04, 9.454419148880184153e-04, 9.427442494752234911e-04, 9.400451905937749503e-04, 9.373447426996694542e-04, 9.346429102508157626e-04, 9.319396977070846079e-04, 9.292351095307188483e-04, 9.265291501856131240e-04, 9.238218241376553808e-04, 9.211131358550868255e-04, 9.184030898077210833e-04, 9.156916904676417734e-04, 9.129789423086634437e-04, 9.102648498067455194e-04, 9.075494174398032179e-04, 9.048326496875191147e-04, 9.021145510316943162e-04, 8.993951259560672897e-04, 8.966743789461202249e-04, 8.939523144894311827e-04, 8.912289370754961776e-04, 8.885042511955267572e-04, 8.857782613428201489e-04, 8.830509720125536951e-04, 8.803223877016092122e-04, 8.775925129089906258e-04, 8.748613521353133110e-04, 8.721289098832427610e-04, 8.693951906572979123e-04, 8.666601989636531700e-04, 8.639239393105073612e-04, 8.611864162078880372e-04, 8.584476341674615206e-04, 8.557075977028937280e-04, 8.529663113296529538e-04, 8.502237795648329285e-04, 8.474800069274930408e-04, 8.447349979384850827e-04, 8.419887571202558157e-04, 8.392412889972609199e-04, 8.364925980954154112e-04, 8.337426889428222257e-04, 8.309915660689588509e-04, 8.282392340050473640e-04, 8.254856972844067976e-04, 8.227309604417172920e-04, 8.199750280134392470e-04, 8.172179045378637381e-04, 8.144595945549823034e-04, 8.117001026063057735e-04, 8.089394332352121920e-04, 8.061775909866969068e-04, 8.034145804074967114e-04, 8.006504060458230227e-04, 7.978850724517365812e-04, 7.951185841769431873e-04, 7.923509457746715119e-04, 7.895821617997275232e-04, 7.868122368089082181e-04, 7.840411753602059266e-04, 7.812689820135334260e-04, 7.784956613301619987e-04, 7.757212178731456810e-04, 7.729456562071315272e-04, 7.701689808981629359e-04, 7.673911965140479529e-04, 7.646123076241573930e-04, 7.618323187992423690e-04, 7.590512346117921864e-04, 7.562690596358420062e-04, 7.534857984467767129e-04, 7.507014556217011690e-04, 7.479160357392424571e-04, 7.451295433793599272e-04, 7.423419831237059114e-04, 7.395533595554288318e-04, 7.367636772589928988e-04, 7.339729408205905407e-04, 7.311811548275812212e-04, 7.283883238692370450e-04, 7.255944525359111748e-04, 7.227995454194815952e-04, 7.200036071133943723e-04, 7.172066422125409225e-04, 7.144086553130541816e-04, 7.116096510126825470e-04, 7.088096339105917935e-04, 7.060086086071690496e-04, 7.032065797043952210e-04, 7.004035518055791443e-04, 6.975995295154849805e-04, 6.947945174401306623e-04, 6.919885201868419952e-04, 6.891815423646860134e-04, 6.863735885837146406e-04, 6.835646634553899136e-04, 6.807547715926417706e-04, 6.779439176096737621e-04, 6.751321061220761331e-04, 6.723193417465733127e-04, 6.695056291013918920e-04, 6.666909728060582034e-04, 6.638753774812134649e-04, 6.610588477489699397e-04, 6.582413882327275978e-04, 6.554230035570285081e-04, 6.526036983476288288e-04, 6.497834772319108047e-04, 6.469623448380731933e-04, 6.441403057958086740e-04, 6.413173647360485190e-04, 6.384935262907607146e-04, 6.356687950933886293e-04, 6.328431757783367769e-04, 6.300166729814041721e-04, 6.271892913395893908e-04, 6.243610354908930285e-04, 6.215319100746834018e-04, 6.187019197315123424e-04, 6.158710691029041029e-04, 6.130393628317350446e-04, 6.102068055620353364e-04, 6.073734019387877275e-04, 6.045391566083073431e-04, 6.017040742180329756e-04, 5.988681594163410352e-04, 5.960314168529728344e-04, 5.931938511784635385e-04, 5.903554670448873378e-04, 5.875162691050333456e-04, 5.846762620128372187e-04, 5.818354504234373196e-04, 5.789938389930420100e-04, 5.761514323787304825e-04, 5.733082352388271363e-04, 5.704642522326398499e-04, 5.676194880205733895e-04, 5.647739472638801505e-04, 5.619276346250214136e-04, 5.590805547674760918e-04, 5.562327123556044459e-04, 5.533841120547020780e-04, 5.505347585314388165e-04, 5.476846564530926187e-04, 5.448338104879126703e-04, 5.419822253055035181e-04, 5.391299055759863311e-04, 5.362768559707542645e-04, 5.334230811618920860e-04, 5.305685858226170124e-04, 5.277133746270774818e-04, 5.248574522501556119e-04, 5.220008233678358287e-04, 5.191434926570196850e-04, 5.162854647953130311e-04, 5.134267444614073290e-04, 5.105673363348808098e-04, 5.077072450959989802e-04, 5.048464754260894314e-04, 5.019850320073394184e-04, 4.991229195226046071e-04, 4.962601426558405863e-04, 4.933967060915890645e-04, 4.905326145154137191e-04, 4.876678726137049320e-04, 4.848024850734781272e-04, 4.819364565827477672e-04, 4.790697918303332258e-04, 4.762024955056531699e-04, 4.733345722991058970e-04, 4.704660269018666983e-04, 4.675968640056928647e-04, 4.647270883032973568e-04, 4.618567044881432410e-04, 4.589857172542550915e-04, 4.561141312965901135e-04, 4.532419513107677970e-04, 4.503691819932050086e-04, 4.474958280409025661e-04, 4.446218941515077969e-04, 4.417473850237562966e-04, 4.388723053566918452e-04, 4.359966598501083821e-04, 4.331204532046094746e-04, 4.302436901214042714e-04, 4.273663753024299085e-04, 4.244885134500862595e-04, 4.216101092676175746e-04, 4.187311674589021997e-04, 4.158516927282660935e-04, 4.129716897808483663e-04, 4.100911633224071538e-04, 4.072101180591819231e-04, 4.043285586979514777e-04, 4.014464899464728425e-04, 3.985639165126399230e-04, 3.956808431052492229e-04, 3.927972744334105263e-04, 3.899132152069891975e-04, 3.870286701364092905e-04, 3.841436439324487427e-04, 3.812581413066187916e-04, 3.783721669709645902e-04, 3.754857256378653341e-04, 3.725988220204074983e-04, 3.697114608321907647e-04, 3.668236467871208314e-04, 3.639353845997963101e-04, 3.610466789852971982e-04, 3.581575346589941679e-04, 3.552679563369184413e-04, 3.523779487355693991e-04, 3.494875165717069559e-04, 3.465966645627974380e-04, 3.437053974264281690e-04, 3.408137198810673864e-04, 3.379216366452233349e-04, 3.350291524378879761e-04, 3.321362719785906563e-04, 3.292429999872640450e-04, 3.263493411840422023e-04, 3.234553002896396702e-04, 3.205608820250842707e-04, 3.176660911118419522e-04, 3.147709322715487742e-04, 3.118754102263906493e-04, 3.089795296989007603e-04, 3.060832954118265824e-04, 3.031867120881817082e-04, 3.002897844516941111e-04, 2.973925172260228093e-04, 2.944949151351991361e-04, 2.915969829036890270e-04, 2.886987252561860461e-04, 2.858001469177373155e-04, 2.829012526134736037e-04, 2.800020470689940544e-04, 2.771025350101579115e-04, 2.742027211628903925e-04, 2.713026102535576601e-04, 2.684022070087674914e-04, 2.655015161551650140e-04, 2.626005424198174358e-04, 2.596992905300079374e-04, 2.567977652130373723e-04, 2.538959711966016770e-04, 2.509939132085917818e-04, 2.480915959768928707e-04, 2.451890242298267360e-04, 2.422862026956292740e-04, 2.393831361028929752e-04, 2.364798291803683796e-04, 2.335762866567594879e-04, 2.306725132611059696e-04, 2.277685137225802820e-04, 2.248642927702853851e-04, 2.219598551336381695e-04, 2.190552055421646238e-04, 2.161503487252984708e-04, 2.132452894127637557e-04, 2.103400323343055842e-04, 2.074345822198144537e-04, 2.045289437991215284e-04, 2.016231218020591112e-04, 1.987171209589024283e-04, 1.958109459995877575e-04, 1.929046016541581163e-04, 1.899980926528169569e-04, 1.870914237257954871e-04, 1.841845996031470512e-04, 1.812776250151303418e-04, 1.783705046919416282e-04, 1.754632433638364313e-04, 1.725558457608630271e-04, 1.696483166132441937e-04, 1.667406606511744114e-04, 1.638328826046167651e-04, 1.609249872036863172e-04, 1.580169791784463869e-04, 1.551088632587069153e-04, 1.522006441744053998e-04, 1.492923266554053682e-04, 1.463839154312942560e-04, 1.434754152318281468e-04, 1.405668307864069632e-04, 1.376581668245199666e-04, 1.347494280755442302e-04, 1.318406192685405928e-04, 1.289317451326375472e-04, 1.260228103968276273e-04, 1.231138197897650147e-04, 1.202047780401473267e-04, 1.172956898765133724e-04, 1.143865600270415581e-04, 1.114773932199296841e-04, 1.085681941831947734e-04, 1.056589676444689844e-04, 1.027497183314470610e-04, 9.984045097135936975e-05, 9.693117029141861839e-05, 9.402188101861697425e-05, 9.111258787945954044e-05, 8.820329560067000877e-05, 8.529400890833910027e-05, 8.238473252837244911e-05, 7.947547118654634413e-05, 7.656622960837082125e-05, 7.365701251888777141e-05, 7.074782464305218676e-05, 6.783867070546460666e-05, 6.492955543049393067e-05, 6.202048354200986457e-05, 5.911145976376470858e-05, 5.620248881919062515e-05, 5.329357543126282616e-05, 5.038472432255637834e-05, 4.747594021569284038e-05, 4.456722783255402659e-05, 4.165859189472854914e-05, 3.875003712356905715e-05, 3.584156823998987034e-05, 3.293318996458905346e-05, 3.002490701738135353e-05, 2.711672411817992034e-05, 2.420864598639370295e-05, 2.130067734082541540e-05, 1.839282290005319617e-05, 1.548508738222807585e-05, 1.257747550487185815e-05, 9.669991985258903028e-06, 6.762641540213464770e-06, 3.855428885907813523e-06, 9.483587383084252677e-07, -1.958564187350404379e-06, -4.865335176120316312e-06, -7.771949513541027480e-06, -1.067840248584244343e-05, -1.358468937956340253e-05, -1.649080548175369375e-05, -1.939674608017616042e-05, -2.230250646292548288e-05, -2.520808191863015011e-05, -2.811346773665472271e-05, -3.101865920671829203e-05, -3.392365161909683628e-05, -3.682844026482517356e-05, -3.973302043531550903e-05, -4.263738742262470092e-05, -4.554153651933196928e-05, -4.844546301874101159e-05, -5.134916221482259429e-05, -5.425262940176929803e-05, -5.715585987477962623e-05, -6.005884892961308239e-05, -6.296159186253236857e-05, -6.586408397044034725e-05, -6.876632055108309878e-05, -7.166829690266764532e-05, -7.457000832412930826e-05, -7.747145011500976264e-05, -8.037261757572299189e-05, -8.327350600717585774e-05, -8.617411071096800002e-05, -8.907442698953070938e-05, -9.197445014606844816e-05, -9.487417548411435455e-05, -9.777359830837830561e-05, -1.006727139239786922e-04, -1.035715176370321708e-04, -1.064700047542077853e-04, -1.093681705829295639e-04, -1.122660104315775841e-04, -1.151635196091074450e-04, -1.180606934252525933e-04, -1.209575271907244664e-04, -1.238540162168333338e-04, -1.267501558156902295e-04, -1.296459413004061745e-04, -1.325413679847152265e-04, -1.354364311831725363e-04, -1.383311262113587207e-04, -1.412254483854981141e-04, -1.441193930226595632e-04, -1.470129554409604195e-04, -1.499061309591187639e-04, -1.527989148970448929e-04, -1.556913025750716710e-04, -1.585832893148037589e-04, -1.614748704386714372e-04, -1.643660412698737673e-04, -1.672567971325169081e-04, -1.701471333518136638e-04, -1.730370452537038234e-04, -1.759265281650567705e-04, -1.788155774138700015e-04, -1.817041883288930692e-04, -1.845923562398893100e-04, -1.874800764775179905e-04, -1.903673443735327440e-04, -1.932541552607257068e-04, -1.961405044724836731e-04, -1.990263873435683679e-04, -2.019117992097399581e-04, -2.047967354073731094e-04, -2.076811912743075153e-04, -2.105651621490776807e-04, -2.134486433715042451e-04, -2.163316302822469392e-04, -2.192141182230083335e-04, -2.220961025367329251e-04, -2.249775785672279921e-04, -2.278585416593657429e-04, -2.307389871592832977e-04, -2.336189104140020518e-04, -2.364983067716323461e-04, -2.393771715815706021e-04, -2.422555001941215048e-04, -2.451332879606999619e-04, -2.480105302340291067e-04, -2.508872223677001390e-04, -2.537633597166922541e-04, -2.566389376369315354e-04, -2.595139514854901222e-04, -2.623883966207873832e-04, -2.652622684022119641e-04, -2.681355621903203047e-04, -2.710082733470384089e-04, -2.738803972352851931e-04, -2.767519292191693769e-04, -2.796228646641902779e-04, -2.824931989368642494e-04, -2.853629274049191322e-04, -2.882320454374973800e-04, -2.911005484047131625e-04, -2.939684316782378349e-04, -2.968356906305380689e-04, -2.997023206357161637e-04, -3.025683170691330142e-04, -3.054336753070303759e-04, -3.082983907273096464e-04, -3.111624587090869093e-04, -3.140258746326404587e-04, -3.168886338795438309e-04, -3.197507318328657853e-04, -3.226121638767935986e-04, -3.254729253968979895e-04, -3.283330117800095736e-04, -3.311924184144844933e-04, -3.340511406898278202e-04, -3.369091739968925600e-04, -3.397665137280152323e-04, -3.426231552769573780e-04, -3.454790940384685170e-04, -3.483343254091238032e-04, -3.511888447865611253e-04, -3.540426475700695036e-04, -3.568957291601433201e-04, -3.597480849586871788e-04, -3.625997103692082967e-04, -3.654506007964466834e-04, -3.683007516465719769e-04, -3.711501583273794144e-04, -3.739988162479204433e-04, -3.768467208186954392e-04, -3.796938674518559632e-04, -3.825402515608279479e-04, -3.853858685605128704e-04, -3.882307138674819880e-04, -3.910747828995422772e-04, -3.939180710762493699e-04, -3.967605738184713251e-04, -3.996022865485893139e-04, -4.024432046907542508e-04, -4.052833236701972410e-04, -4.081226389140627355e-04, -4.109611458509744705e-04, -4.137988399109742105e-04, -4.166357165256593872e-04, -4.194717711283773350e-04, -4.223069991538587757e-04, -4.251413960384088555e-04, -4.279749572201036020e-04, -4.308076781384254702e-04, -4.336395542345167740e-04, -4.364705809510627016e-04, -4.393007537324873386e-04, -4.421300680249001629e-04, -4.449585192756586776e-04, -4.477861029341330444e-04, -4.506128144512768483e-04, -4.534386492795629124e-04, -4.562636028731869111e-04, -4.590876706879467532e-04, -4.619108481814968264e-04, -4.647331308129872300e-04, -4.675545140432505820e-04, -4.703749933350033019e-04, -4.731945641524743797e-04, -4.760132219616010742e-04, -4.788309622301589090e-04, -4.816477804277147267e-04, -4.844636720251815692e-04, -4.872786324956562788e-04, -4.900926573137239818e-04, -4.929057419557249112e-04, -4.957178818999449007e-04, -4.985290726261849565e-04, -5.013393096162732177e-04, -5.041485883536275889e-04, -5.069569043234544749e-04, -5.097642530129464300e-04, -5.125706299109075671e-04, -5.153760305079521827e-04, -5.181804502967020821e-04, -5.209838847714118792e-04, -5.237863294281712000e-04, -5.265877797650945265e-04, -5.293882312819549532e-04, -5.321876794803764160e-04, -5.349861198640354625e-04, -5.377835479382230173e-04, -5.405799592104184670e-04, -5.433753491895444883e-04, -5.461697133867893066e-04, -5.489630473151761595e-04, -5.517553464895045331e-04, -5.545466064264848198e-04, -5.573368226449348841e-04, -5.601259906654082899e-04, -5.629141060104559183e-04, -5.657011642045034526e-04, -5.684871607741121295e-04, -5.712720912476087001e-04, -5.740559511552803702e-04, -5.768387360295089156e-04, -5.796204414047159302e-04, -5.824010628169241574e-04, -5.851805958045298763e-04, -5.879590359079176843e-04, -5.907363786691067218e-04, -5.935126196325608968e-04, -5.962877543444566148e-04, -5.990617783532365889e-04, -6.018346872091944822e-04, -6.046064764646631251e-04, -6.073771416742067449e-04, -6.101466783942594918e-04, -6.129150821833159344e-04, -6.156823486021210110e-04, -6.184484732133152789e-04, -6.212134515816171692e-04, -6.239772792740222625e-04, -6.267399518594373711e-04, -6.295014649088715754e-04, -6.322618139956284527e-04, -6.350209946948864913e-04, -6.377790025841925106e-04, -6.405358332430430507e-04, -6.432914822530718313e-04, -6.460459451982429558e-04, -6.487992176644908487e-04, -6.515512952399097734e-04, -6.543021735149432425e-04, -6.570518480820293755e-04, -6.598003145357804423e-04, -6.625475684731915726e-04, -6.652936054932611764e-04, -6.680384211971926054e-04, -6.707820111885825880e-04, -6.735243710729995822e-04, -6.762654964585426828e-04, -6.790053829551095672e-04, -6.817440261752096475e-04, -6.844814217335901292e-04, -6.872175652468848379e-04, -6.899524523343553801e-04, -6.926860786174661357e-04, -6.954184397198324335e-04, -6.981495312674094187e-04, -7.008793488883797301e-04, -7.036078882134013486e-04, -7.063351448752492679e-04, -7.090611145090073989e-04, -7.117857927522580879e-04, -7.145091752447190175e-04, -7.172312576284403142e-04, -7.199520355479284732e-04, -7.226715046500897625e-04, -7.253896605838193110e-04, -7.281064990007906235e-04, -7.308220155547408758e-04, -7.335362059020170264e-04, -7.362490657011631695e-04, -7.389605906131031148e-04, -7.416707763013423741e-04, -7.443796184315912929e-04, -7.470871126719744095e-04, -7.497932546932080475e-04, -7.524980401682403609e-04, -7.552014647724487667e-04, -7.579035241838288136e-04, -7.606042140826256613e-04, -7.633035301515366097e-04, -7.660014680758917265e-04, -7.686980235433022411e-04, -7.713931922438387869e-04, -7.740869698702379422e-04, -7.767793521174665974e-04, -7.794703346832860657e-04, -7.821599132675284864e-04, -7.848480835728868831e-04, -7.875348413045052268e-04, -7.902201821699202143e-04, -7.929041018791944083e-04, -7.955865961450915525e-04, -7.982676606827380844e-04, -8.009472912098606831e-04, -8.036254834466716700e-04, -8.063022331161236872e-04, -8.089775359435527786e-04, -8.116513876568604274e-04, -8.143237839866494061e-04, -8.169947206661587252e-04, -8.196641934308671398e-04, -8.223321980192035193e-04, -8.249987301721399460e-04, -8.276637856331454197e-04, -8.303273601483579210e-04, -8.329894494664848810e-04, -8.356500493390424649e-04, -8.383091555200057002e-04, -8.409667637659931161e-04, -8.436228698364564788e-04, -8.462774694933186681e-04, -8.489305585011749054e-04, -8.515821326274685028e-04, -8.542321876421394731e-04, -8.568807193178176263e-04, -8.595277234299995113e-04, -8.621731957566955082e-04, -8.648171320786364772e-04, -8.674595281794287996e-04, -8.701003798451669921e-04, -8.727396828649056602e-04, -8.753774330302530309e-04, -8.780136261355563510e-04, -8.806482579780873943e-04, -8.832813243576910717e-04, -8.859128210769676853e-04, -8.885427439414678684e-04, -8.911710887593306783e-04, -8.937978513414746333e-04, -8.964230275017835443e-04, -8.990466130567516560e-04, -9.016686038257330131e-04, -9.042889956308311971e-04, -9.069077842970716058e-04, -9.095249656523683853e-04, -9.121405355270951944e-04, -9.147544897548205104e-04, -9.173668241718863081e-04, -9.199775346173650172e-04, -9.225866169331791095e-04, -9.251940669642892082e-04, -9.277998805583398791e-04, -9.304040535659050936e-04, -9.330065818403852299e-04, -9.356074612382363816e-04, -9.382066876186277498e-04, -9.408042568436300775e-04, -9.434001647783369715e-04, -9.459944072908091752e-04, -9.485869802516727622e-04, -9.511778795348881620e-04, -9.537671010171136238e-04, -9.563546405779473200e-04, -9.589404941000960469e-04, -9.615246574689970561e-04, -9.641071265732675637e-04, -9.666878973043192087e-04, -9.692669655565309831e-04, -9.718443272274314860e-04, -9.744199782173609782e-04, -9.769939144296476731e-04, -9.795661317707868472e-04, -9.821366261501083151e-04, -9.847053934799465408e-04, -9.872724296758274461e-04, -9.898377306561201641e-04, -9.924012923422321965e-04, -9.949631106587677066e-04, -9.975231815331480484e-04, -1.000081500896070601e-03, -1.002638064681117156e-03, -1.005192868824929340e-03, -1.007745909267381435e-03, -1.010297181951261411e-03, -1.012846682822426611e-03, -1.015394407829994577e-03, -1.017940352926010195e-03, -1.020484514065613316e-03, -1.023026887207218946e-03, -1.025567468312186571e-03, -1.028106253345046966e-03, -1.030643238273405487e-03, -1.033178419068160213e-03, -1.035711791703186006e-03, -1.038243352155495628e-03, -1.040773096405369627e-03, -1.043301020436296486e-03, -1.045827120234591205e-03, -1.048351391790083766e-03, -1.050873831095712127e-03, -1.053394434147490125e-03, -1.055913196944677050e-03, -1.058430115489667703e-03, -1.060945185788230273e-03, -1.063458403849172184e-03, -1.065969765684506845e-03, -1.068479267309645339e-03, -1.070986904743054897e-03, -1.073492674006431939e-03, -1.075996571124884869e-03, -1.078498592126596670e-03, -1.080998733043001415e-03, -1.083496989908961424e-03, -1.085993358762376735e-03, -1.088487835644646974e-03, -1.090980416600271282e-03, -1.093471097677040007e-03, -1.095959874926199281e-03, -1.098446744402121643e-03, -1.100931702162479290e-03, -1.103414744268424712e-03, -1.105895866784255450e-03, -1.108375065777587355e-03, -1.110852337319528276e-03, -1.113327677484360822e-03, -1.115801082349701526e-03, -1.118272547996675614e-03, -1.120742070509596518e-03, -1.123209645976191821e-03, -1.125675270487497661e-03, -1.128138940138027858e-03, -1.130600651025729471e-03, -1.133060399251601584e-03, -1.135518180920366002e-03, -1.137973992140073679e-03, -1.140427829022074143e-03, -1.142879687681126744e-03, -1.145329564235563055e-03, -1.147777454806970295e-03, -1.150223355520416839e-03, -1.152667262504349218e-03, -1.155109171890814817e-03, -1.157549079815133140e-03, -1.159986982416091189e-03, -1.162422875836024994e-03, -1.164856756220792721e-03, -1.167288619719398027e-03, -1.169718462484691749e-03, -1.172146280672733965e-03, -1.174572070443300094e-03, -1.176995827959481482e-03, -1.179417549387873181e-03, -1.181837230898739616e-03, -1.184254868665686293e-03, -1.186670458865847575e-03, -1.189083997680030237e-03, -1.191495481292411188e-03, -1.193904905890704219e-03, -1.196312267666331530e-03, -1.198717562814083934e-03, -1.201120787532322307e-03, -1.203521938023114192e-03, -1.205921010491943024e-03, -1.208318001147851237e-03, -1.210712906203625233e-03, -1.213105721875420680e-03, -1.215496444383246284e-03, -1.217885069950329748e-03, -1.220271594803821634e-03, -1.222656015174433024e-03, -1.225038327296368301e-03, -1.227418527407452865e-03, -1.229796611749304656e-03, -1.232172576567005205e-03, -1.234546418109269857e-03, -1.236918132628624274e-03, -1.239287716381071809e-03, -1.241655165626335058e-03, -1.244020476627729016e-03, -1.246383645652351891e-03, -1.248744668971022440e-03, -1.251103542857916109e-03, -1.253460263591214255e-03, -1.255814827452733347e-03, -1.258167230727869675e-03, -1.260517469705792117e-03, -1.262865540679302062e-03, -1.265211439945088199e-03, -1.267555163803392362e-03, -1.269896708558179970e-03, -1.272236070517301790e-03, -1.274573245992194261e-03, -1.276908231298033236e-03, -1.279241022753890540e-03, -1.281571616682445789e-03, -1.283900009410130372e-03, -1.286226197267297889e-03, -1.288550176587917534e-03, -1.290871943709734565e-03, -1.293191494974431626e-03, -1.295508826727269011e-03, -1.297823935317515311e-03, -1.300136817098073794e-03, -1.302447468425655883e-03, -1.304755885660940527e-03, -1.307062065168267811e-03, -1.309366003315799417e-03, -1.311667696475681032e-03, -1.313967141023727938e-03, -1.316264333339608019e-03, -1.318559269806982926e-03, -1.320851946813208838e-03, -1.323142360749494754e-03, -1.325430508011075969e-03, -1.327716384996841968e-03, -1.329999988109815436e-03, -1.332281313756536207e-03, -1.334560358347737377e-03, -1.336837118298040208e-03, -1.339111590025659658e-03, -1.341383769953017170e-03, -1.343653654506387230e-03, -1.345921240115851170e-03, -1.348186523215420991e-03, -1.350449500243177487e-03, -1.352710167640969706e-03, -1.354968521854651737e-03, -1.357224559333953043e-03, -1.359478276532701587e-03, -1.361729669908533702e-03, -1.363978735923036551e-03, -1.366225471041860456e-03, -1.368469871734680730e-03, -1.370711934474833169e-03, -1.372951655739992330e-03, -1.375189032011571747e-03, -1.377424059775166727e-03, -1.379656735520219538e-03, -1.381887055740181613e-03, -1.384115016932647773e-03, -1.386340615599084957e-03, -1.388563848244979025e-03, -1.390784711379982209e-03, -1.393003201517630353e-03, -1.395219315175493836e-03, -1.397433048875326321e-03, -1.399644399142786332e-03, -1.401853362507576905e-03, -1.404059935503609293e-03, -1.406264114668651262e-03, -1.408465896544744498e-03, -1.410665277677847261e-03, -1.412862254617998966e-03, -1.415056823919522491e-03, -1.417248982140476661e-03, -1.419438725843312618e-03, -1.421626051594535338e-03, -1.423810955964649634e-03, -1.425993435528275519e-03, -1.428173486864294569e-03, -1.430351106555560661e-03, -1.432526291189052626e-03, -1.434699037356026692e-03, -1.436869341651734154e-03, -1.439037200675614362e-03, -1.441202611031203000e-03, -1.443365569326287776e-03, -1.445526072172862450e-03, -1.447684116186791388e-03, -1.449839697988402395e-03, -1.451992814202144547e-03, -1.454143461456551111e-03, -1.456291636384383524e-03, -1.458437335622552681e-03, -1.460580555812304986e-03, -1.462721293598935688e-03, -1.464859545631955629e-03, -1.466995308565230026e-03, -1.469128579056680310e-03, -1.471259353768472351e-03, -1.473387629367074346e-03, -1.475513402523248368e-03, -1.477636669911688025e-03, -1.479757428211682857e-03, -1.481875674106565175e-03, -1.483991404283924523e-03, -1.486104615435753385e-03, -1.488215304258107621e-03, -1.490323467451509353e-03, -1.492429101720599803e-03, -1.494532203774312550e-03, -1.496632770325998646e-03, -1.498730798093152964e-03, -1.500826283797566203e-03, -1.502919224165470387e-03, -1.505009615927256975e-03, -1.507097455817629295e-03, -1.509182740575737208e-03, -1.511265466944919280e-03, -1.513345631672830070e-03, -1.515423231511598421e-03, -1.517498263217493962e-03, -1.519570723551363607e-03, -1.521640609278070372e-03, -1.523707917167105514e-03, -1.525772643992265440e-03, -1.527834786531615929e-03, -1.529894341567584722e-03, -1.531951305887112877e-03, -1.534005676281364854e-03, -1.536057449545945135e-03, -1.538106622480783520e-03, -1.540153191890341559e-03, -1.542197154583338893e-03, -1.544238507372895294e-03, -1.546277247076615008e-03, -1.548313370516570713e-03, -1.550346874518972618e-03, -1.552377755914708399e-03, -1.554406011539110743e-03, -1.556431638231650519e-03, -1.558454632836559764e-03, -1.560474992202276348e-03, -1.562492713181868774e-03, -1.564507792632711123e-03, -1.566520227416637670e-03, -1.568530014400067781e-03, -1.570537150453752426e-03, -1.572541632452914909e-03, -1.574543457277372948e-03, -1.576542621811299503e-03, -1.578539122943344638e-03, -1.580532957566781888e-03, -1.582524122579235257e-03, -1.584512614882833828e-03, -1.586498431384332324e-03, -1.588481568994827694e-03, -1.590462024630095008e-03, -1.592439795210290375e-03, -1.594414877660092116e-03, -1.596387268908845605e-03, -1.598356965890282248e-03, -1.600323965542671707e-03, -1.602288264808960239e-03, -1.604249860636499216e-03, -1.606208749977189971e-03, -1.608164929787619978e-03, -1.610118397028806325e-03, -1.612069148666329726e-03, -1.614017181670466573e-03, -1.615962493015887748e-03, -1.617905079682069097e-03, -1.619844938652753672e-03, -1.621782066916537196e-03, -1.623716461466607423e-03, -1.625648119300479588e-03, -1.627577037420536348e-03, -1.629503212833731136e-03, -1.631426642551519644e-03, -1.633347323590026573e-03, -1.635265252969956510e-03, -1.637180427716761980e-03, -1.639092844860385841e-03, -1.641002501435420875e-03, -1.642909394481216912e-03, -1.644813521041634712e-03, -1.646714878165185178e-03, -1.648613462905116744e-03, -1.650509272319368968e-03, -1.652402303470295198e-03, -1.654292553425209871e-03, -1.656180019255869837e-03, -1.658064698038898060e-03, -1.659946586855452072e-03, -1.661825682791378146e-03, -1.663701982937334893e-03, -1.665575484388546286e-03, -1.667446184244936961e-03, -1.669314079611247366e-03, -1.671179167596805425e-03, -1.673041445315649267e-03, -1.674900909886656037e-03, -1.676757558433291436e-03, -1.678611388083742217e-03, -1.680462395971055395e-03, -1.682310579232886493e-03, -1.684155935011616640e-03, -1.685998460454492427e-03, -1.687838152713353563e-03, -1.689675008944981115e-03, -1.691509026310630001e-03, -1.693340201976549627e-03, -1.695168533113726060e-03, -1.696994016897816759e-03, -1.698816650509252495e-03, -1.700636431133374388e-03, -1.702453355960161559e-03, -1.704267422184429972e-03, -1.706078627005745913e-03, -1.707886967628581901e-03, -1.709692441262081848e-03, -1.711495045120208945e-03, -1.713294776421792932e-03, -1.715091632390535956e-03, -1.716885610254680799e-03, -1.718676707247561442e-03, -1.720464920607277150e-03, -1.722250247576677515e-03, -1.724032685403484094e-03, -1.725812231340213007e-03, -1.727588882644344286e-03, -1.729362636578072069e-03, -1.731133490408439269e-03, -1.732901441407471354e-03, -1.734666486851926988e-03, -1.736428624023418155e-03, -1.738187850208548942e-03, -1.739944162698662047e-03, -1.741697558789988189e-03, -1.743448035783741077e-03, -1.745195590985903610e-03, -1.746940221707346270e-03, -1.748681925263934891e-03, -1.750420698976284765e-03, -1.752156540170065517e-03, -1.753889446175720731e-03, -1.755619414328606510e-03, -1.757346441969108138e-03, -1.759070526442401772e-03, -1.760791665098586714e-03, -1.762509855292802288e-03, -1.764225094384991701e-03, -1.765937379740026075e-03, -1.767646708727834554e-03, -1.769353078723173581e-03, -1.771056487105765248e-03, -1.772756931260248718e-03, -1.774454408576292769e-03, -1.776148916448546788e-03, -1.777840452276402243e-03, -1.779529013464436560e-03, -1.781214597422151828e-03, -1.782897201563948342e-03, -1.784576823309196167e-03, -1.786253460082370004e-03, -1.787927109312793979e-03, -1.789597768434829416e-03, -1.791265434887780953e-03, -1.792930106116069795e-03, -1.794591779568994322e-03, -1.796250452700856723e-03, -1.797906122971037373e-03, -1.799558787843970548e-03, -1.801208444788867302e-03, -1.802855091280228510e-03, -1.804498724797416612e-03, -1.806139342824830815e-03, -1.807776942851996435e-03, -1.809411522373335262e-03, -1.811043078888445717e-03, -1.812671609901855873e-03, -1.814297112923135774e-03, -1.815919585467027329e-03, -1.817539025053189735e-03, -1.819155429206355387e-03, -1.820768795456417267e-03, -1.822379121338228150e-03, -1.823986404391698827e-03, -1.825590642161926047e-03, -1.827191832198965049e-03, -1.828789972057956632e-03, -1.830385059299223863e-03, -1.831977091488031168e-03, -1.833566066194879888e-03, -1.835151980995255441e-03, -1.836734833469731189e-03, -1.838314621204100059e-03, -1.839891341789141009e-03, -1.841464992820743491e-03, -1.843035571900014571e-03, -1.844603076633069029e-03, -1.846167504631136694e-03, -1.847728853510681273e-03, -1.849287120893182207e-03, -1.850842304405280825e-03, -1.852394401678712039e-03, -1.853943410350464369e-03, -1.855489328062547060e-03, -1.857032152462122568e-03, -1.858571881201566845e-03, -1.860108511938434427e-03, -1.861642042335234651e-03, -1.863172470059836936e-03, -1.864699792785235073e-03, -1.866224008189527059e-03, -1.867745113955995981e-03, -1.869263107773077486e-03, -1.870777987334477964e-03, -1.872289750338985460e-03, -1.873798394490565084e-03, -1.875303917498462010e-03, -1.876806317077019332e-03, -1.878305590945768483e-03, -1.879801736829539612e-03, -1.881294752458256229e-03, -1.882784635567047752e-03, -1.884271383896346649e-03, -1.885754995191659886e-03, -1.887235467203855809e-03, -1.888712797688893745e-03, -1.890186984407967764e-03, -1.891658025127594938e-03, -1.893125917619412155e-03, -1.894590659660293219e-03, -1.896052249032437100e-03, -1.897510683523177767e-03, -1.898965960925096943e-03, -1.900418079036115615e-03, -1.901867035659298008e-03, -1.903312828602961738e-03, -1.904755455680774093e-03, -1.906194914711559045e-03, -1.907631203519433421e-03, -1.909064319933740555e-03, -1.910494261789165427e-03, -1.911921026925681106e-03, -1.913344613188340797e-03, -1.914765018427680736e-03, -1.916182240499464525e-03, -1.917596277264682495e-03, -1.919007126589615227e-03, -1.920414786345914660e-03, -1.921819254410441456e-03, -1.923220528665373205e-03, -1.924618606998159970e-03, -1.926013487301642037e-03, -1.927405167473870582e-03, -1.928793645418214794e-03, -1.930178919043398517e-03, -1.931560986263502859e-03, -1.932939844997733731e-03, -1.934315493170837971e-03, -1.935687928712725818e-03, -1.937057149558764086e-03, -1.938423153649545443e-03, -1.939785938931002903e-03, -1.941145503354493960e-03, -1.942501844876625815e-03, -1.943854961459342114e-03, -1.945204851070025075e-03, -1.946551511681304672e-03, -1.947894941271181802e-03, -1.949235137823075335e-03, -1.950572099325694614e-03, -1.951905823773085209e-03, -1.953236309164768127e-03, -1.954563553505513432e-03, -1.955887554805490949e-03, -1.957208311080303222e-03, -1.958525820350821151e-03, -1.959840080643443765e-03, -1.961151089989732633e-03, -1.962458846426810410e-03, -1.963763347997180431e-03, -1.965064592748637807e-03, -1.966362578734389983e-03, -1.967657304013133070e-03, -1.968948766648857557e-03, -1.970236964710969738e-03, -1.971521896274349827e-03, -1.972803559419208843e-03, -1.974081952231187490e-03, -1.975357072801319294e-03, -1.976628919226105195e-03, -1.977897489607485359e-03, -1.979162782052662668e-03, -1.980424794674417142e-03, -1.981683525590939837e-03, -1.982938972925784270e-03, -1.984191134807972677e-03, -1.985440009371924885e-03, -1.986685594757589719e-03, -1.987927889110263722e-03, -1.989166890580689601e-03, -1.990402597325132555e-03, -1.991635007505244536e-03, -1.992864119288088529e-03, -1.994089930846302920e-03, -1.995312440357872516e-03, -1.996531646006255174e-03, -1.997747545980448156e-03, -1.998960138474825936e-03, -2.000169421689235172e-03, -2.001375393829071033e-03, -2.002578053105095925e-03, -2.003777397733646787e-03, -2.004973425936461186e-03, -2.006166135940753211e-03, -2.007355525979313219e-03, -2.008541594290317884e-03, -2.009724339117438183e-03, -2.010903758709917891e-03, -2.012079851322413557e-03, -2.013252615215066921e-03, -2.014422048653613777e-03, -2.015588149909193581e-03, -2.016750917258457870e-03, -2.017910348983648332e-03, -2.019066443372391668e-03, -2.020219198717971947e-03, -2.021368613318991463e-03, -2.022514685479738939e-03, -2.023657413510004770e-03, -2.024796795724946585e-03, -2.025932830445412343e-03, -2.027065515997733894e-03, -2.028194850713731321e-03, -2.029320832930740261e-03, -2.030443460991727261e-03, -2.031562733245091158e-03, -2.032678648044811826e-03, -2.033791203750380788e-03, -2.034900398726897496e-03, -2.036006231344941395e-03, -2.037108699980631332e-03, -2.038207803015683241e-03, -2.039303538837406241e-03, -2.040395905838487955e-03, -2.041484902417367488e-03, -2.042570526977902350e-03, -2.043652777929623899e-03, -2.044731653687539147e-03, -2.045807152672239615e-03, -2.046879273309929956e-03, -2.047948014032332110e-03, -2.049013373276739082e-03, -2.050075349486078693e-03, -2.051133941108789979e-03, -2.052189146598893451e-03, -2.053240964416062214e-03, -2.054289393025474086e-03, -2.055334430897901802e-03, -2.056376076509763753e-03, -2.057414328342989547e-03, -2.058449184885182207e-03, -2.059480644629475051e-03, -2.060508706074596751e-03, -2.061533367724965871e-03, -2.062554628090440198e-03, -2.063572485686614253e-03, -2.064586939034671401e-03, -2.065597986661361300e-03, -2.066605627099021587e-03, -2.067609858885689766e-03, -2.068610680564945785e-03, -2.069608090685967974e-03, -2.070602087803640173e-03, -2.071592670478395598e-03, -2.072579837276294478e-03, -2.073563586769015376e-03, -2.074543917533901161e-03, -2.075520828153943394e-03, -2.076494317217637050e-03, -2.077464383319228142e-03, -2.078431025058583188e-03, -2.079394241041164493e-03, -2.080354029878089123e-03, -2.081310390186084675e-03, -2.082263320587595095e-03, -2.083212819710638861e-03, -2.084158886188883144e-03, -2.085101518661699755e-03, -2.086040715774059758e-03, -2.086976476176567296e-03, -2.087908798525530286e-03, -2.088837681482933958e-03, -2.089763123716298614e-03, -2.090685123898942867e-03, -2.091603680709739049e-03, -2.092518792833310964e-03, -2.093430458959881241e-03, -2.094338677785346353e-03, -2.095243448011316519e-03, -2.096144768345032435e-03, -2.097042637499380458e-03, -2.097937054193003623e-03, -2.098828017150152891e-03, -2.099715525100739628e-03, -2.100599576780447491e-03, -2.101480170930549417e-03, -2.102357306298004765e-03, -2.103230981635546056e-03, -2.104101195701498124e-03, -2.104967947259880033e-03, -2.105831235080471431e-03, -2.106691057938662494e-03, -2.107547414615619594e-03, -2.108400303898077133e-03, -2.109249724578578667e-03, -2.110095675455359379e-03, -2.110938155332291438e-03, -2.111777163018969429e-03, -2.112612697330730309e-03, -2.113444757088572303e-03, -2.114273341119206080e-03, -2.115098448255050417e-03, -2.115920077334259523e-03, -2.116738227200679664e-03, -2.117552896703823583e-03, -2.118364084699002337e-03, -2.119171790047225546e-03, -2.119976011615131144e-03, -2.120776748275168388e-03, -2.121573998905517192e-03, -2.122367762389967567e-03, -2.123158037618156409e-03, -2.123944823485367141e-03, -2.124728118892664150e-03, -2.125507922746793909e-03, -2.126284233960229215e-03, -2.127057051451232937e-03, -2.127826374143742226e-03, -2.128592200967420554e-03, -2.129354530857737078e-03, -2.130113362755827432e-03, -2.130868695608570482e-03, -2.131620528368642978e-03, -2.132368859994402017e-03, -2.133113689449942299e-03, -2.133855015705177650e-03, -2.134592837735661049e-03, -2.135327154522790628e-03, -2.136057965053649640e-03, -2.136785268321070210e-03, -2.137509063323679310e-03, -2.138229349065819389e-03, -2.138946124557570064e-03, -2.139659388814824006e-03, -2.140369140859186767e-03, -2.141075379718000195e-03, -2.141778104424430472e-03, -2.142477314017346250e-03, -2.143173007541381535e-03, -2.143865184046972981e-03, -2.144553842590262750e-03, -2.145238982233241623e-03, -2.145920602043537365e-03, -2.146598701094657585e-03, -2.147273278465867876e-03, -2.147944333242118517e-03, -2.148611864514204505e-03, -2.149275871378696166e-03, -2.149936352937901855e-03, -2.150593308299908295e-03, -2.151246736578574063e-03, -2.151896636893568197e-03, -2.152543008370309038e-03, -2.153185850139975079e-03, -2.153825161339575651e-03, -2.154460941111858985e-03, -2.155093188605354711e-03, -2.155721902974405083e-03, -2.156347083379138527e-03, -2.156968728985400683e-03, -2.157586838964910096e-03, -2.158201412495105997e-03, -2.158812448759275804e-03, -2.159419946946447132e-03, -2.160023906251442877e-03, -2.160624325874912870e-03, -2.161221205023261017e-03, -2.161814542908687808e-03, -2.162404338749218061e-03, -2.162990591768648892e-03, -2.163573301196558378e-03, -2.164152466268363245e-03, -2.164728086225246439e-03, -2.165300160314183146e-03, -2.165868687787991537e-03, -2.166433667905231283e-03, -2.166995099930319781e-03, -2.167552983133440650e-03, -2.168107316790583196e-03, -2.168658100183586644e-03, -2.169205332600005701e-03, -2.169749013333274919e-03, -2.170289141682636268e-03, -2.170825716953097943e-03, -2.171358738455492470e-03, -2.171888205506482348e-03, -2.172414117428513210e-03, -2.172936473549861094e-03, -2.173455273204579104e-03, -2.173970515732585439e-03, -2.174482200479584907e-03, -2.174990326797074554e-03, -2.175494894042402649e-03, -2.175995901578740930e-03, -2.176493348775006970e-03, -2.176987235006015101e-03, -2.177477559652369297e-03, -2.177964322100475313e-03, -2.178447521742579718e-03, -2.178927157976721755e-03, -2.179403230206807939e-03, -2.179875737842520977e-03, -2.180344680299380923e-03, -2.180810056998746908e-03, -2.181271867367777246e-03, -2.181730110839450246e-03, -2.182184786852606282e-03, -2.182635894851870165e-03, -2.183083434287710987e-03, -2.183527404616428247e-03, -2.183967805300137972e-03, -2.184404635806768812e-03, -2.184837895610132301e-03, -2.185267584189791879e-03, -2.185693701031215120e-03, -2.186116245625644924e-03, -2.186535217470167609e-03, -2.186950616067723317e-03, -2.187362440927060041e-03, -2.187770691562748813e-03, -2.188175367495232698e-03, -2.188576468250743971e-03, -2.188973993361366128e-03, -2.189367942365027381e-03, -2.189758314805469435e-03, -2.190145110232283050e-03, -2.190528328200876378e-03, -2.190907968272511400e-03, -2.191284030014308253e-03, -2.191656512999143325e-03, -2.192025416805805805e-03, -2.192390741018910953e-03, -2.192752485228873210e-03, -2.193110649031973849e-03, -2.193465232030338431e-03, -2.193816233831911208e-03, -2.194163654050475080e-03, -2.194507492305660702e-03, -2.194847748222956887e-03, -2.195184421433655532e-03, -2.195517511574898457e-03, -2.195847018289686942e-03, -2.196172941226860482e-03, -2.196495280041059050e-03, -2.196814034392824584e-03, -2.197129203948489529e-03, -2.197440788380244925e-03, -2.197748787366152548e-03, -2.198053200590055576e-03, -2.198354027741698715e-03, -2.198651268516644934e-03, -2.198944922616273730e-03, -2.199234989747858322e-03, -2.199521469624484554e-03, -2.199804361965077351e-03, -2.200083666494419363e-03, -2.200359382943125816e-03, -2.200631511047669228e-03, -2.200900050550349922e-03, -2.201165001199325948e-03, -2.201426362748583592e-03, -2.201684134957970339e-03, -2.201938317593161911e-03, -2.202188910425693490e-03, -2.202435913232937172e-03, -2.202679325798098057e-03, -2.202919147910250251e-03, -2.203155379364292194e-03, -2.203388019960967909e-03, -2.203617069506890857e-03, -2.203842527814473245e-03, -2.204064394702012764e-03, -2.204282669993639678e-03, -2.204497353519322897e-03, -2.204708445114869544e-03, -2.204915944621945768e-03, -2.205119851888052030e-03, -2.205320166766560827e-03, -2.205516889116636032e-03, -2.205710018803327000e-03, -2.205899555697529105e-03, -2.206085499675941673e-03, -2.206267850621149943e-03, -2.206446608421570865e-03, -2.206621772971456130e-03, -2.206793344170905179e-03, -2.206961321925861742e-03, -2.207125706148122066e-03, -2.207286496755307172e-03, -2.207443693670890165e-03, -2.207597296824191039e-03, -2.207747306150370601e-03, -2.207893721590423967e-03, -2.208036543091208750e-03, -2.208175770605393454e-03, -2.208311404091511249e-03, -2.208443443513933950e-03, -2.208571888842868116e-03, -2.208696740054366323e-03, -2.208817997130318924e-03, -2.208935660058456655e-03, -2.209049728832361038e-03, -2.209160203451435329e-03, -2.209267083920930536e-03, -2.209370370251943685e-03, -2.209470062461403941e-03, -2.209566160572076516e-03, -2.209658664612570468e-03, -2.209747574617336972e-03, -2.209832890626647200e-03, -2.209914612686630486e-03, -2.209992740849238326e-03, -2.210067275172275178e-03, -2.210138215719354652e-03, -2.210205562559949388e-03, -2.210269315769367634e-03, -2.210329475428732867e-03, -2.210386041625014147e-03, -2.210439014451027855e-03, -2.210488394005404728e-03, -2.210534180392618921e-03, -2.210576373722965022e-03, -2.210614974112582766e-03, -2.210649981683441862e-03, -2.210681396563337221e-03, -2.210709218885902397e-03, -2.210733448790590944e-03, -2.210754086422690289e-03, -2.210771131933322170e-03, -2.210784585479429621e-03, -2.210794447223787818e-03, -2.210800717335000606e-03, -2.210803395987498768e-03, -2.210802483361524410e-03, -2.210797979643167824e-03, -2.210789885024334097e-03, -2.210778199702749611e-03, -2.210762923881966387e-03, -2.210744057771363378e-03, -2.210721601586146043e-03, -2.210695555547325091e-03, -2.210665919881745108e-03, -2.210632694822073710e-03, -2.210595880606792876e-03, -2.210555477480201109e-03, -2.210511485692420817e-03, -2.210463905499392232e-03, -2.210412737162865612e-03, -2.210357980950418150e-03, -2.210299637135432725e-03, -2.210237705997116116e-03, -2.210172187820483823e-03, -2.210103082896365274e-03, -2.210030391521396881e-03, -2.209954113998042428e-03, -2.209874250634566179e-03, -2.209790801745033749e-03, -2.209703767649343325e-03, -2.209613148673181867e-03, -2.209518945148049827e-03, -2.209421157411261584e-03, -2.209319785805920287e-03, -2.209214830680952986e-03, -2.209106292391088081e-03, -2.208994171296843612e-03, -2.208878467764556312e-03, -2.208759182166357762e-03, -2.208636314880178721e-03, -2.208509866289748696e-03, -2.208379836784607649e-03, -2.208246226760076508e-03, -2.208109036617291430e-03, -2.207968266763165634e-03, -2.207823917610423660e-03, -2.207675989577578823e-03, -2.207524483088930175e-03, -2.207369398574578114e-03, -2.207210736470413548e-03, -2.207048497218115288e-03, -2.206882681265159591e-03, -2.206713289064792406e-03, -2.206540321076057125e-03, -2.206363777763793721e-03, -2.206183659598612290e-03, -2.205999967056914302e-03, -2.205812700620876556e-03, -2.205621860778473296e-03, -2.205427448023439350e-03, -2.205229462855302219e-03, -2.205027905779371241e-03, -2.204822777306726309e-03, -2.204614077954220042e-03, -2.204401808244477786e-03, -2.204185968705926670e-03, -2.203966559872729686e-03, -2.203743582284840765e-03, -2.203517036487992204e-03, -2.203286923033655632e-03, -2.203053242479109664e-03, -2.202815995387364442e-03, -2.202575182327226686e-03, -2.202330803873245486e-03, -2.202082860605734417e-03, -2.201831353110788019e-03, -2.201576281980244069e-03, -2.201317647811702229e-03, -2.201055451208527077e-03, -2.200789692779840309e-03, -2.200520373140498614e-03, -2.200247492911144853e-03, -2.199971052718160784e-03, -2.199691053193678341e-03, -2.199407494975572259e-03, -2.199120378707485664e-03, -2.198829705038797544e-03, -2.198535474624628821e-03, -2.198237688125847557e-03, -2.197936346209091070e-03, -2.197631449546694812e-03, -2.197322998816773464e-03, -2.197010994703153287e-03, -2.196695437895418088e-03, -2.196376329088890137e-03, -2.196053668984603718e-03, -2.195727458289345891e-03, -2.195397697715640879e-03, -2.195064387981727084e-03, -2.194727529811582242e-03, -2.194387123934913881e-03, -2.194043171087148476e-03, -2.193695672009438394e-03, -2.193344627448679234e-03, -2.192990038157457359e-03, -2.192631904894104533e-03, -2.192270228422656293e-03, -2.191905009512865390e-03, -2.191536248940229546e-03, -2.191163947485911222e-03, -2.190788105936831293e-03, -2.190408725085606165e-03, -2.190025805730537369e-03, -2.189639348675670536e-03, -2.189249354730748998e-03, -2.188855824711202942e-03, -2.188458759438184111e-03, -2.188058159738549314e-03, -2.187654026444830514e-03, -2.187246360395284257e-03, -2.186835162433844407e-03, -2.186420433410171150e-03, -2.186002174179576835e-03, -2.185580385603072377e-03, -2.185155068547407591e-03, -2.184726223884964937e-03, -2.184293852493817637e-03, -2.183857955257753961e-03, -2.183418533066233420e-03, -2.182975586814387206e-03, -2.182529117403038139e-03, -2.182079125738673343e-03, -2.181625612733479377e-03, -2.181168579305283687e-03, -2.180708026377609250e-03, -2.180243954879657227e-03, -2.179776365746284410e-03, -2.179305259917988045e-03, -2.178830638340996471e-03, -2.178352501967144219e-03, -2.177870851753957449e-03, -2.177385688664599736e-03, -2.176897013667908071e-03, -2.176404827738390255e-03, -2.175909131856161149e-03, -2.175409927007042419e-03, -2.174907214182475370e-03, -2.174400994379540892e-03, -2.173891268600998492e-03, -2.173378037855239024e-03, -2.172861303156272111e-03, -2.172341065523783390e-03, -2.171817325983092448e-03, -2.171290085565124196e-03, -2.170759345306465683e-03, -2.170225106249351783e-03, -2.169687369441603616e-03, -2.169146135936712242e-03, -2.168601406793764941e-03, -2.168053183077514167e-03, -2.167501465858292543e-03, -2.166946256212068378e-03, -2.166387555220434386e-03, -2.165825363970614193e-03, -2.165259683555405528e-03, -2.164690515073255678e-03, -2.164117859628214655e-03, -2.163541718329940397e-03, -2.162962092293674917e-03, -2.162378982640299815e-03, -2.161792390496289004e-03, -2.161202316993695270e-03, -2.160608763270169350e-03, -2.160011730469020650e-03, -2.159411219739072827e-03, -2.158807232234760069e-03, -2.158199769116160051e-03, -2.157588831548868172e-03, -2.156974420704116380e-03, -2.156356537758663018e-03, -2.155735183894906017e-03, -2.155110360300805696e-03, -2.154482068169867853e-03, -2.153850308701204044e-03, -2.153215083099504264e-03, -2.152576392574981866e-03, -2.151934238343467670e-03, -2.151288621626349252e-03, -2.150639543650539279e-03, -2.149987005648549242e-03, -2.149331008858451283e-03, -2.148671554523836572e-03, -2.148008643893895529e-03, -2.147342278223321552e-03, -2.146672458772398186e-03, -2.145999186806954451e-03, -2.145322463598324948e-03, -2.144642290423417509e-03, -2.143958668564685446e-03, -2.143271599310090248e-03, -2.142581083953151895e-03, -2.141887123792933674e-03, -2.141189720133980165e-03, -2.140488874286412217e-03, -2.139784587565867098e-03, -2.139076861293478550e-03, -2.138365696795937500e-03, -2.137651095405397952e-03, -2.136933058459618805e-03, -2.136211587301792107e-03, -2.135486683280614188e-03, -2.134758347750393640e-03, -2.134026582070831877e-03, -2.133291387607164948e-03, -2.132552765730157032e-03, -2.131810717816054902e-03, -2.131065245246607006e-03, -2.130316349409027473e-03, -2.129564031696048153e-03, -2.128808293505903438e-03, -2.128049136242258273e-03, -2.127286561314307035e-03, -2.126520570136734064e-03, -2.125751164129658592e-03, -2.124978344718663360e-03, -2.124202113334899139e-03, -2.123422471414880899e-03, -2.122639420400659546e-03, -2.121852961739694420e-03, -2.121063096884954341e-03, -2.120269827294860802e-03, -2.119473154433261074e-03, -2.118673079769481122e-03, -2.117869604778318225e-03, -2.117062730939960318e-03, -2.116252459740085735e-03, -2.115438792669840223e-03, -2.114621731225724624e-03, -2.113801276909756197e-03, -2.112977431229375817e-03, -2.112150195697406769e-03, -2.111319571832173583e-03, -2.110485561157358914e-03, -2.109648165202112832e-03, -2.108807385501028538e-03, -2.107963223594014855e-03, -2.107115681026548639e-03, -2.106264759349411094e-03, -2.105410460118790558e-03, -2.104552784896337580e-03, -2.103691735249110274e-03, -2.102827312749490623e-03, -2.101959518975345369e-03, -2.101088355509898083e-03, -2.100213823941790743e-03, -2.099335925864998301e-03, -2.098454662878944908e-03, -2.097570036588435830e-03, -2.096682048603615810e-03, -2.095790700539997692e-03, -2.094895994018580818e-03, -2.093997930665629850e-03, -2.093096512112779285e-03, -2.092191739997095474e-03, -2.091283615960971235e-03, -2.090372141652187873e-03, -2.089457318723827138e-03, -2.088539148834382252e-03, -2.087617633647700227e-03, -2.086692774832920715e-03, -2.085764574064588334e-03, -2.084833033022585012e-03, -2.083898153392084885e-03, -2.082959936863649705e-03, -2.082018385133183307e-03, -2.081073499901857013e-03, -2.080125282876231496e-03, -2.079173735768193899e-03, -2.078218860294892781e-03, -2.077260658178876895e-03, -2.076299131147925619e-03, -2.075334280935205947e-03, -2.074366109279178819e-03, -2.073394617923557046e-03, -2.072419808617431084e-03, -2.071441683115173623e-03, -2.070460243176400553e-03, -2.069475490566088927e-03, -2.068487427054498898e-03, -2.067496054417120813e-03, -2.066501374434797506e-03, -2.065503388893624552e-03, -2.064502099585003615e-03, -2.063497508305560911e-03, -2.062489616857183638e-03, -2.061478427047158321e-03, -2.060463940687898027e-03, -2.059446159597102394e-03, -2.058425085597782346e-03, -2.057400720518195048e-03, -2.056373066191797064e-03, -2.055342124457343669e-03, -2.054307897158835512e-03, -2.053270386145515571e-03, -2.052229593271821025e-03, -2.051185520397481692e-03, -2.050138169387466687e-03, -2.049087542111919374e-03, -2.048033640446199864e-03, -2.046976466271025960e-03, -2.045916021472165246e-03, -2.044852307940711773e-03, -2.043785327572951189e-03, -2.042715082270335145e-03, -2.041641573939595358e-03, -2.040564804492577943e-03, -2.039484775846405178e-03, -2.038401489923397005e-03, -2.037314948650982560e-03, -2.036225153961871478e-03, -2.035132107793936797e-03, -2.034035812090186340e-03, -2.032936268798866790e-03, -2.031833479873404284e-03, -2.030727447272317240e-03, -2.029618172959379418e-03, -2.028505658903526684e-03, -2.027389907078774606e-03, -2.026270919464407978e-03, -2.025148698044763971e-03, -2.024023244809404314e-03, -2.022894561753040693e-03, -2.021762650875452358e-03, -2.020627514181641375e-03, -2.019489153681745027e-03, -2.018347571390956014e-03, -2.017202769329673809e-03, -2.016054749523429196e-03, -2.014903514002804041e-03, -2.013749064803568335e-03, -2.012591403966583047e-03, -2.011430533537856506e-03, -2.010266455568447252e-03, -2.009099172114504808e-03, -2.007928685237417125e-03, -2.006754997003528697e-03, -2.005578109484279330e-03, -2.004398024756358972e-03, -2.003214744901369877e-03, -2.002028272006049943e-03, -2.000838608162260578e-03, -1.999645755466902992e-03, -1.998449716021990195e-03, -1.997250491934518188e-03, -1.996048085316639437e-03, -1.994842498285558791e-03, -1.993633732963458888e-03, -1.992421791477662785e-03, -1.991206675960542887e-03, -1.989988388549431171e-03, -1.988766931386790060e-03, -1.987542306620136527e-03, -1.986314516401911992e-03, -1.985083562889721712e-03, -1.983849448246081081e-03, -1.982612174638615984e-03, -1.981371744239969566e-03, -1.980128159227719387e-03, -1.978881421784550471e-03, -1.977631534098139073e-03, -1.976378498361104977e-03, -1.975122316771127720e-03, -1.973862991530907132e-03, -1.972600524848041898e-03, -1.971334918935214748e-03, -1.970066176010087065e-03, -1.968794298295216492e-03, -1.967519288018228230e-03, -1.966241147411700550e-03, -1.964959878713193851e-03, -1.963675484165197747e-03, -1.962387966015131935e-03, -1.961097326515535717e-03, -1.959803567923744470e-03, -1.958506692502067891e-03, -1.957206702517822524e-03, -1.955903600243267138e-03, -1.954597387955519464e-03, -1.953288067936707114e-03, -1.951975642473878676e-03, -1.950660113859019763e-03, -1.949341484388970392e-03, -1.948019756365566802e-03, -1.946694932095559922e-03, -1.945367013890567662e-03, -1.944036004067071013e-03, -1.942701904946640213e-03, -1.941364718855533586e-03, -1.940024448125057940e-03, -1.938681095091290135e-03, -1.937334662095282654e-03, -1.935985151482981200e-03, -1.934632565605109772e-03, -1.933276906817360617e-03, -1.931918177480304024e-03, -1.930556379959272100e-03, -1.929191516624573655e-03, -1.927823589851354776e-03, -1.926452602019540711e-03, -1.925078555513993084e-03, -1.923701452724410794e-03, -1.922321296045268867e-03, -1.920938087875942706e-03, -1.919551830620667976e-03, -1.918162526688402909e-03, -1.916770178493056422e-03, -1.915374788453206006e-03, -1.913976358992475028e-03, -1.912574892539093850e-03, -1.911170391526150489e-03, -1.909762858391590191e-03, -1.908352295578163603e-03, -1.906938705533330058e-03, -1.905522090709416963e-03, -1.904102453563565143e-03, -1.902679796557582483e-03, -1.901254122158161199e-03, -1.899825432836736673e-03, -1.898393731069552290e-03, -1.896959019337545382e-03, -1.895521300126393844e-03, -1.894080575926716933e-03, -1.892636849233700347e-03, -1.891190122547310899e-03, -1.889740398372326876e-03, -1.888287679218230049e-03, -1.886831967599279618e-03, -1.885373266034366278e-03, -1.883911577047199136e-03, -1.882446903166228513e-03, -1.880979246924510424e-03, -1.879508610859918424e-03, -1.878034997515042569e-03, -1.876558409437108525e-03, -1.875078849178014873e-03, -1.873596319294542787e-03, -1.872110822347950333e-03, -1.870622360904315934e-03, -1.869130937534399170e-03, -1.867636554813535167e-03, -1.866139215321870526e-03, -1.864638921644096387e-03, -1.863135676369667660e-03, -1.861629482092690699e-03, -1.860120341411845889e-03, -1.858608256930554615e-03, -1.857093231256900763e-03, -1.855575267003489563e-03, -1.854054366787694997e-03, -1.852530533231502158e-03, -1.851003768961444152e-03, -1.849474076608771233e-03, -1.847941458809356039e-03, -1.846405918203593201e-03, -1.844867457436620301e-03, -1.843326079158014077e-03, -1.841781786022195265e-03, -1.840234580687981260e-03, -1.838684465818814446e-03, -1.837131444082791684e-03, -1.835575518152607506e-03, -1.834016690705422272e-03, -1.832454964423088119e-03, -1.830890341992012131e-03, -1.829322826103082188e-03, -1.827752419451847150e-03, -1.826179124738372449e-03, -1.824602944667315547e-03, -1.823023881947785207e-03, -1.821441939293530357e-03, -1.819857119422839918e-03, -1.818269425058470804e-03, -1.816678858927674167e-03, -1.815085423762440205e-03, -1.813489122299023933e-03, -1.811889957278387756e-03, -1.810287931445846718e-03, -1.808683047551344972e-03, -1.807075308349320470e-03, -1.805464716598598933e-03, -1.803851275062616109e-03, -1.802234986509285066e-03, -1.800615853710898833e-03, -1.798993879444336615e-03, -1.797369066490955803e-03, -1.795741417636465345e-03, -1.794110935671155375e-03, -1.792477623389767977e-03, -1.790841483591395058e-03, -1.789202519079722284e-03, -1.787560732662741994e-03, -1.785916127152985646e-03, -1.784268705367424070e-03, -1.782618470127316987e-03, -1.780965424258599628e-03, -1.779309570591410027e-03, -1.777650911960346842e-03, -1.775989451204477597e-03, -1.774325191167291406e-03, -1.772658134696567141e-03, -1.770988284644581376e-03, -1.769315643868010594e-03, -1.767640215227799785e-03, -1.765962001589400096e-03, -1.764281005822596884e-03, -1.762597230801576497e-03, -1.760910679404833687e-03, -1.759221354515177246e-03, -1.757529259020003875e-03, -1.755834395810831764e-03, -1.754136767783575105e-03, -1.752436377838556244e-03, -1.750733228880401587e-03, -1.749027323818107315e-03, -1.747318665564892570e-03, -1.745607257038403297e-03, -1.743893101160601863e-03, -1.742176200857665580e-03, -1.740456559060171238e-03, -1.738734178703021157e-03, -1.737009062725327832e-03, -1.735281214070459902e-03, -1.733550635686310166e-03, -1.731817330524770826e-03, -1.730081301542223116e-03, -1.728342551699152841e-03, -1.726601083960450271e-03, -1.724856901295237534e-03, -1.723110006676812885e-03, -1.721360403082813992e-03, -1.719608093495147028e-03, -1.717853080899835530e-03, -1.716095368287262396e-03, -1.714334958652037610e-03, -1.712571854992889610e-03, -1.710806060312876050e-03, -1.709037577619281455e-03, -1.707266409923485599e-03, -1.705492560241183165e-03, -1.703716031592279441e-03, -1.701936827000764341e-03, -1.700154949494964369e-03, -1.698370402107200012e-03, -1.696583187874253686e-03, -1.694793309836846494e-03, -1.693000771039905811e-03, -1.691205574532609300e-03, -1.689407723368296010e-03, -1.687607220604338439e-03, -1.685804069302379972e-03, -1.683998272528170305e-03, -1.682189833351635045e-03, -1.680378754846727175e-03, -1.678565040091640212e-03, -1.676748692168689592e-03, -1.674929714164238729e-03, -1.673108109168722430e-03, -1.671283880276917952e-03, -1.669457030587472284e-03, -1.667627563203178840e-03, -1.665795481230985045e-03, -1.663960787781899745e-03, -1.662123485971061946e-03, -1.660283578917544139e-03, -1.658441069744630509e-03, -1.656595961579670345e-03, -1.654748257553947510e-03, -1.652897960802930666e-03, -1.651045074466126264e-03, -1.649189601686978576e-03, -1.647331545613091742e-03, -1.645470909396097711e-03, -1.643607696191544355e-03, -1.641741909159120114e-03, -1.639873551462538420e-03, -1.638002626269398918e-03, -1.636129136751473048e-03, -1.634253086084372928e-03, -1.632374477447840616e-03, -1.630493314025587221e-03, -1.628609599005213966e-03, -1.626723335578408218e-03, -1.624834526940842220e-03, -1.622943176292036696e-03, -1.621049286835593963e-03, -1.619152861779079309e-03, -1.617253904333889594e-03, -1.615352417715498713e-03, -1.613448405143320333e-03, -1.611541869840578227e-03, -1.609632815034598569e-03, -1.607721243956431118e-03, -1.605807159841333206e-03, -1.603890565928231537e-03, -1.601971465459955729e-03, -1.600049861683504587e-03, -1.598125757849525258e-03, -1.596199157212582331e-03, -1.594270063031235024e-03, -1.592338478567875215e-03, -1.590404407088817423e-03, -1.588467851864114279e-03, -1.586528816167817168e-03, -1.584587303277853066e-03, -1.582643316475854101e-03, -1.580696859047436625e-03, -1.578747934282076970e-03, -1.576796545472991529e-03, -1.574842695917186416e-03, -1.572886388915759092e-03, -1.570927627773331106e-03, -1.568966415798551386e-03, -1.567002756303707877e-03, -1.565036652605025910e-03, -1.563068108022527044e-03, -1.561097125879910884e-03, -1.559123709504778429e-03, -1.557147862228527770e-03, -1.555169587386198184e-03, -1.553188888316736627e-03, -1.551205768362842264e-03, -1.549220230870868671e-03, -1.547232279191036990e-03, -1.545241916677329028e-03, -1.543249146687325924e-03, -1.541253972582539052e-03, -1.539256397728028377e-03, -1.537256425492713194e-03, -1.535254059249237897e-03, -1.533249302373778126e-03, -1.531242158246540587e-03, -1.529232630251162618e-03, -1.527220721775034628e-03, -1.525206436209308129e-03, -1.523189776948846068e-03, -1.521170747392049365e-03, -1.519149350941122320e-03, -1.517125591001908897e-03, -1.515099470983947592e-03, -1.513070994300315733e-03, -1.511040164367865625e-03, -1.509006984607108104e-03, -1.506971458442093060e-03, -1.504933589300476871e-03, -1.502893380613804083e-03, -1.500850835816975497e-03, -1.498805958348556518e-03, -1.496758751650823340e-03, -1.494709219169601403e-03, -1.492657364354372943e-03, -1.490603190658068827e-03, -1.488546701537356949e-03, -1.486487900452482854e-03, -1.484426790867137032e-03, -1.482363376248712521e-03, -1.480297660068178710e-03, -1.478229645799922828e-03, -1.476159336922017520e-03, -1.474086736916101377e-03, -1.472011849267204370e-03, -1.469934677464077239e-03, -1.467855224998832180e-03, -1.465773495367228433e-03, -1.463689492068554312e-03, -1.461603218605469351e-03, -1.459514678484285111e-03, -1.457423875214812958e-03, -1.455330812310215308e-03, -1.453235493287293812e-03, -1.451137921666326288e-03, -1.449038100970935971e-03, -1.446936034728353235e-03, -1.444831726469277032e-03, -1.442725179727731349e-03, -1.440616398041330614e-03, -1.438505384951092566e-03, -1.436392144001521955e-03, -1.434276678740470032e-03, -1.432158992719173574e-03, -1.430039089492572560e-03, -1.427916972618748555e-03, -1.425792645659239343e-03, -1.423666112179087064e-03, -1.421537375746730232e-03, -1.419406439933869725e-03, -1.417273308315732680e-03, -1.415137984470876686e-03, -1.413000471981299506e-03, -1.410860774432209008e-03, -1.408718895412337368e-03, -1.406574838513764995e-03, -1.404428607331836181e-03, -1.402280205465194010e-03, -1.400129636516109525e-03, -1.397976904089852021e-03, -1.395822011795213365e-03, -1.393664963244309156e-03, -1.391505762052432787e-03, -1.389344411838369219e-03, -1.387180916224027647e-03, -1.385015278834752020e-03, -1.382847503299187032e-03, -1.380677593249116791e-03, -1.378505552319747368e-03, -1.376331384149564324e-03, -1.374155092380176376e-03, -1.371976680656601406e-03, -1.369796152627105563e-03, -1.367613511943072948e-03, -1.365428762259264951e-03, -1.363241907233686458e-03, -1.361052950527433204e-03, -1.358861895805019409e-03, -1.356668746733977931e-03, -1.354473506985210459e-03, -1.352276180232817515e-03, -1.350076770153963790e-03, -1.347875280429147032e-03, -1.345671714742063384e-03, -1.343466076779439118e-03, -1.341258370231321632e-03, -1.339048598790937858e-03, -1.336836766154531194e-03, -1.334622876021637761e-03, -1.332406932094913144e-03, -1.330188938080200485e-03, -1.327968897686383678e-03, -1.325746814625434859e-03, -1.323522692612744221e-03, -1.321296535366531938e-03, -1.319068346608131799e-03, -1.316838130062284156e-03, -1.314605889456528336e-03, -1.312371628521565416e-03, -1.310135350991267116e-03, -1.307897060602552630e-03, -1.305656761095458666e-03, -1.303414456212958821e-03, -1.301170149701226389e-03, -1.298923845309500353e-03, -1.296675546789923189e-03, -1.294425257897835989e-03, -1.292172982391608452e-03, -1.289918724032513555e-03, -1.287662486584985376e-03, -1.285404273816485735e-03, -1.283144089497343949e-03, -1.280881937401092069e-03, -1.278617821304073266e-03, -1.276351744985767525e-03, -1.274083712228653081e-03, -1.271813726818042493e-03, -1.269541792542364534e-03, -1.267267913193033217e-03, -1.264992092564263919e-03, -1.262714334453392782e-03, -1.260434642660704331e-03, -1.258153020989272088e-03, -1.255869473245267145e-03, -1.253584003237791624e-03, -1.251296614778722987e-03, -1.249007311683060116e-03, -1.246716097768468378e-03, -1.244422976855868350e-03, -1.242127952768783995e-03, -1.239831029333625856e-03, -1.237532210380008725e-03, -1.235231499740118907e-03, -1.232928901249069403e-03, -1.230624418744944359e-03, -1.228318056068697373e-03, -1.226009817063974548e-03, -1.223699705577436072e-03, -1.221387725458528964e-03, -1.219073880559590943e-03, -1.216758174735639228e-03, -1.214440611844665001e-03, -1.212121195747485744e-03, -1.209799930307616216e-03, -1.207476819391340014e-03, -1.205151866868034828e-03, -1.202825076609516288e-03, -1.200496452490646846e-03, -1.198165998388862419e-03, -1.195833718184522798e-03, -1.193499615760753359e-03, -1.191163695003289152e-03, -1.188825959800778476e-03, -1.186486414044606811e-03, -1.184145061628753479e-03, -1.181801906450081780e-03, -1.179456952408194361e-03, -1.177110203405243045e-03, -1.174761663346264931e-03, -1.172411336138997435e-03, -1.170059225693731919e-03, -1.167705335923602955e-03, -1.165349670744439360e-03, -1.162992234074597658e-03, -1.160633029835314882e-03, -1.158272061950243017e-03, -1.155909334346050948e-03, -1.153544850951763751e-03, -1.151178615699106379e-03, -1.148810632522544650e-03, -1.146440905359187882e-03, -1.144069438148618894e-03, -1.141696234833197579e-03, -1.139321299357907817e-03, -1.136944635670179013e-03, -1.134566247720208759e-03, -1.132186139460738400e-03, -1.129804314847148664e-03, -1.127420777837308957e-03, -1.125035532391607503e-03, -1.122648582473321924e-03, -1.120259932047977611e-03, -1.117869585083710714e-03, -1.115477545551320183e-03, -1.113083817424091260e-03, -1.110688404677898046e-03, -1.108291311291000969e-03, -1.105892541244333019e-03, -1.103492098521348603e-03, -1.101089987107860702e-03, -1.098686210992336426e-03, -1.096280774165754980e-03, -1.093873680621474309e-03, -1.091464934355281836e-03, -1.089054539365772638e-03, -1.086642499653635817e-03, -1.084228819222239322e-03, -1.081813502077412677e-03, -1.079396552227279140e-03, -1.076977973682617402e-03, -1.074557770456431366e-03, -1.072135946564328974e-03, -1.069712506024331601e-03, -1.067287452856720970e-03, -1.064860791084361585e-03, -1.062432524732516426e-03, -1.060002657828687782e-03, -1.057571194402933627e-03, -1.055138138487694789e-03, -1.052703494117638401e-03, -1.050267265329953448e-03, -1.047829456164207657e-03, -1.045390070662158624e-03, -1.042949112868134373e-03, -1.040506586828538306e-03, -1.038062496592495393e-03, -1.035616846211133771e-03, -1.033169639737962706e-03, -1.030720881228921809e-03, -1.028270574742262428e-03, -1.025818724338376344e-03, -1.023365334080117124e-03, -1.020910408032634897e-03, -1.018453950263202221e-03, -1.015995964841529160e-03, -1.013536455839547309e-03, -1.011075427331505853e-03, -1.008612883393750388e-03, -1.006148828105044718e-03, -1.003683265546390438e-03, -1.001216199800927190e-03, -9.987476349539686597e-04, -9.962775750933781406e-04, -9.938060243088564331e-04, -9.913329866925938826e-04, -9.888584663387577686e-04, -9.863824673438876048e-04, -9.839049938067036694e-04, -9.814260498279558671e-04, -9.789456395107307748e-04, -9.764637669602859761e-04, -9.739804362838806002e-04, -9.714956515910940773e-04, -9.690094169936594969e-04, -9.665217366052799436e-04, -9.640326145419750086e-04, -9.615420549218798869e-04, -9.590500618650969495e-04, -9.565566394940629635e-04, -9.540617919331021834e-04, -9.515655233088088577e-04, -9.490678377498731064e-04, -9.465687393869105922e-04, -9.440682323527821440e-04, -9.415663207824238618e-04, -9.390630088126774395e-04, -9.365583005826117391e-04, -9.340522002333502940e-04, -9.315447119078967527e-04, -9.290358397514659940e-04, -9.265255879113077275e-04, -9.240139605365275998e-04, -9.215009617784276344e-04, -9.189865957902550219e-04, -9.164708667273392716e-04, -9.139537787468785153e-04, -9.114353360080184371e-04, -9.089155426722313105e-04, -9.063944029026238438e-04, -9.038719208643368171e-04, -9.013481007245877996e-04, -8.988229466524984366e-04, -8.962964628191988576e-04, -8.937686533975940312e-04, -8.912395225626987836e-04, -8.887090744914578205e-04, -8.861773133625717135e-04, -8.836442433568294239e-04, -8.811098686569302776e-04, -8.785741934473632929e-04, -8.760372219144610655e-04, -8.734989582467832508e-04, -8.709594066343774631e-04, -8.684185712694518066e-04, -8.658764563458556506e-04, -8.633330660594760141e-04, -8.607884046080449027e-04, -8.582424761909840513e-04, -8.556952850097235708e-04, -8.531468352675253318e-04, -8.505971311693139372e-04, -8.480461769220037178e-04, -8.454939767343226577e-04, -8.429405348166326339e-04, -8.403858553812726742e-04, -8.378299426423726918e-04, -8.352728008156737240e-04, -8.327144341188760703e-04, -8.301548467714432679e-04, -8.275940429944408710e-04, -8.250320270109162473e-04, -8.224688030453868341e-04, -8.199043753245120183e-04, -8.173387480763457964e-04, -8.147719255307326160e-04, -8.122039119193576835e-04, -8.096347114756134982e-04, -8.070643284344379813e-04, -8.044927670326458080e-04, -8.019200315086853293e-04, -7.993461261027519794e-04, -7.967710550565530042e-04, -7.941948226136443228e-04, -7.916174330192456707e-04, -7.890388905201258917e-04, -7.864591993646497751e-04, -7.838783638031751990e-04, -7.812963880873523021e-04, -7.787132764705261565e-04, -7.761290332077790512e-04, -7.735436625557566949e-04, -7.709571687727746845e-04, -7.683695561185816068e-04, -7.657808288546944907e-04, -7.631909912442237090e-04, -7.606000475516931083e-04, -7.580080020433687402e-04, -7.554148589870960133e-04, -7.528206226521048624e-04, -7.502252973093558258e-04, -7.476288872313589838e-04, -7.450313966919909449e-04, -7.424328299668408147e-04, -7.398331913330230634e-04, -7.372324850689989566e-04, -7.346307154549763015e-04, -7.320278867724387944e-04, -7.294240033045395859e-04, -7.268190693359317120e-04, -7.242130891525777082e-04, -7.216060670420864709e-04, -7.189980072935486756e-04, -7.163889141973365246e-04, -7.137787920454588238e-04, -7.111676451313758002e-04, -7.085554777498153300e-04, -7.059422941971144625e-04, -7.033280987710411767e-04, -7.007128957706134286e-04, -6.980966894964904393e-04, -6.954794842504596506e-04, -6.928612843361057864e-04, -6.902420940580650298e-04, -6.876219177223589574e-04, -6.850007596367366051e-04, -6.823786241099759169e-04, -6.797555154522719970e-04, -6.771314379752998861e-04, -6.745063959920269935e-04, -6.718803938168216262e-04, -6.692534357652165245e-04, -6.666255261542515780e-04, -6.639966693022862588e-04, -6.613668695288222460e-04, -6.587361311548474430e-04, -6.561044585026510126e-04, -6.534718558956995613e-04, -6.508383276586882050e-04, -6.482038781179450850e-04, -6.455685116006637525e-04, -6.429322324355948902e-04, -6.402950449525154865e-04, -6.376569534826300985e-04, -6.350179623583887068e-04, -6.323780759133038097e-04, -6.297372984822955256e-04, -6.270956344015087957e-04, -6.244530880081250587e-04, -6.218096636407152667e-04, -6.191653656390531859e-04, -6.165201983439304312e-04, -6.138741660975035198e-04, -6.112272732431106408e-04, -6.085795241250898345e-04, -6.059309230891778706e-04, -6.032814744820378609e-04, -6.006311826516616071e-04, -5.979800519471881052e-04, -5.953280867186587326e-04, -5.926752913176559518e-04, -5.900216700965378635e-04, -5.873672274088352413e-04, -5.847119676093078021e-04, -5.820558950538202818e-04, -5.793990140991496637e-04, -5.767413291033465436e-04, -5.740828444254798000e-04, -5.714235644257528203e-04, -5.687634934652583633e-04, -5.661026359063255032e-04, -5.634409961123399780e-04, -5.607785784476124582e-04, -5.581153872774317817e-04, -5.554514269684744567e-04, -5.527867018880899559e-04, -5.501212164046972086e-04, -5.474549748878508463e-04, -5.447879817080424677e-04, -5.421202412368231541e-04, -5.394517578465550783e-04, -5.367825359107559558e-04, -5.341125798039210188e-04, -5.314418939013327388e-04, -5.287704825794135172e-04, -5.260983502155369262e-04, -5.234255011878435025e-04, -5.207519398755956069e-04, -5.180776706589791235e-04, -5.154026979189289034e-04, -5.127270260375387011e-04, -5.100506593975688389e-04, -5.073736023828628655e-04, -5.046958593781593382e-04, -5.020174347689075091e-04, -4.993383329416141610e-04, -4.966585582836643888e-04, -4.939781151831264434e-04, -4.912970080291104939e-04, -4.886152412115746637e-04, -4.859328191211503660e-04, -4.832497461494796530e-04, -4.805660266890397921e-04, -4.778816651329482177e-04, -4.751966658753253056e-04, -4.725110333110319415e-04, -4.698247718357968067e-04, -4.671378858460247451e-04, -4.644503797388441972e-04, -4.617622579125260271e-04, -4.590735247657560234e-04, -4.563841846980436971e-04, -4.536942421097797445e-04, -4.510037014021046420e-04, -4.483125669767262290e-04, -4.456208432362675199e-04, -4.429285345840231923e-04, -4.402356454240691458e-04, -4.375421801610186105e-04, -4.348481432003752718e-04, -4.321535389483407703e-04, -4.294583718116921868e-04, -4.267626461978359814e-04, -4.240663665152163042e-04, -4.213695371725302498e-04, -4.186721625793813598e-04, -4.159742471460289555e-04, -4.132757952832079437e-04, -4.105768114025336031e-04, -4.078772999160197653e-04, -4.051772652364873419e-04, -4.024767117773824497e-04, -3.997756439525855911e-04, -3.970740661767631526e-04, -3.943719828651850957e-04, -3.916693984335326202e-04, -3.889663172982555164e-04, -3.862627438763808585e-04, -3.835586825853268462e-04, -3.808541378432585864e-04, -3.781491140688973272e-04, -3.754436156813353311e-04, -3.727376471004478710e-04, -3.700312127464040930e-04, -3.673243170400844341e-04, -3.646169644028897480e-04, -3.619091592565550400e-04, -3.592009060235017777e-04, -3.564922091266516796e-04, -3.537830729892393108e-04, -3.510735020351644486e-04, -3.483635006888044614e-04, -3.456530733748285305e-04, -3.429422245185482273e-04, -3.402309585456735129e-04, -3.375192798824230020e-04, -3.348071929553356912e-04, -3.320947021913270660e-04, -3.293818120181003393e-04, -3.266685268634190054e-04, -3.239548511554579051e-04, -3.212407893231608493e-04, -3.185263457955090000e-04, -3.158115250019343846e-04, -3.130963313723740516e-04, -3.103807693370829921e-04, -3.076648433267443485e-04, -3.049485577722248187e-04, -3.022319171049277805e-04, -2.995149257566026351e-04, -2.967975881591611428e-04, -2.940799087450279457e-04, -2.913618919469554945e-04, -2.886435421978351262e-04, -2.859248639310496467e-04, -2.832058615802882573e-04, -2.804865395793549221e-04, -2.777669023625883881e-04, -2.750469543643667045e-04, -2.723267000195256707e-04, -2.696061437631712149e-04, -2.668852900304884666e-04, -2.641641432570977538e-04, -2.614427078788675242e-04, -2.587209883317249893e-04, -2.559989890520094659e-04, -2.532767144762888747e-04, -2.505541690411659935e-04, -2.478313571836348347e-04, -2.451082833408975230e-04, -2.423849519501671066e-04, -2.396613674490901248e-04, -2.369375342751907376e-04, -2.342134568665950811e-04, -2.314891396612313431e-04, -2.287645870971883363e-04, -2.260398036130721730e-04, -2.233147936472713933e-04, -2.205895616383736512e-04, -2.178641120252202226e-04, -2.151384492467763618e-04, -2.124125777419419729e-04, -2.096865019499105621e-04, -2.069602263099151274e-04, -2.042337552613470418e-04, -2.015070932435038677e-04, -1.987802446959453003e-04, -1.960532140583053843e-04, -1.933260057701635204e-04, -1.905986242710970221e-04, -1.878710740011015426e-04, -1.851433593997904993e-04, -1.824154849071202159e-04, -1.796874549628345123e-04, -1.769592740068823939e-04, -1.742309464792286681e-04, -1.715024768196657000e-04, -1.687738694681696541e-04, -1.660451288647101084e-04, -1.633162594490634631e-04, -1.605872656611671227e-04, -1.578581519409312777e-04, -1.551289227280500918e-04, -1.523995824623587019e-04, -1.496701355836428595e-04, -1.469405865314498186e-04, -1.442109397454463125e-04, -1.414811996652294958e-04, -1.387513707301347965e-04, -1.360214573796568579e-04, -1.332914640528950231e-04, -1.305613951892735164e-04, -1.278312552277466145e-04, -1.251010486072145198e-04, -1.223707797665791693e-04, -1.196404531446143067e-04, -1.169100731797749471e-04, -1.141796443105573598e-04, -1.114491709753072184e-04, -1.087186576120314645e-04, -1.059881086587545902e-04, -1.032575285532698139e-04, -1.005269217332522706e-04, -9.779629263606953455e-05, -9.506564569883539509e-05, -9.233498535882933491e-05, -8.960431605275761895e-05, -8.687364221717323311e-05, -8.414296828852877970e-05, -8.141229870298735195e-05, -7.868163789653716126e-05, -7.595099030473975840e-05, -7.322036036308935162e-05, -7.048975250682232589e-05, -6.775917117072745332e-05, -6.502862078950401867e-05, -6.229810579757238216e-05, -5.956763062894429529e-05, -5.683719971727695515e-05, -5.410681749629229923e-05, -5.137648839897797554e-05, -4.864621685824951236e-05, -4.591600730670080934e-05, -4.318586417641287755e-05, -4.045579189937360863e-05, -3.772579490698379199e-05, -3.499587763047508826e-05, -3.226604450072131035e-05, -2.953629994804794274e-05, -2.680664840259036518e-05, -2.407709429410421565e-05, -2.134764205177532625e-05, -1.861829610457798771e-05, -1.588906088108511572e-05, -1.315994080927841899e-05, -1.043094031690635710e-05, -7.702063831294601556e-06, -4.973315779156076887e-06, -2.244700587009850981e-06, 4.837773193737041838e-07, 3.212113514249834720e-06, 5.940303572697705639e-06, 8.668343070201571225e-06, 1.139622758259708934e-05, 1.412395268620020587e-05, 1.685151395799680961e-05, 1.957890697528492607e-05, 2.230612731586425129e-05, 2.503317055822602949e-05, 2.776003228119491739e-05, 3.048670806417987875e-05, 3.321319348705917426e-05, 3.593948413037045939e-05, 3.866557557525691994e-05, 4.139146340304854975e-05, 4.411714319599925908e-05, 4.684261053692910146e-05, 4.956786100886694099e-05, 5.229289019584721217e-05, 5.501769368218818008e-05, 5.774226705304609644e-05, 6.046660589399670434e-05, 6.319070579122464159e-05, 6.591456233171307444e-05, 6.863817110288635134e-05, 7.136152769279913524e-05, 7.408462769032593564e-05, 7.680746668480372850e-05, 7.953004026622143409e-05, 8.225234402540908317e-05, 8.497437355368073501e-05, 8.769612444302335896e-05, 9.041759228628692220e-05, 9.313877267676554886e-05, 9.585966120869168587e-05, 9.858025347681617786e-05, 1.013005450765997779e-04, 1.040205316044006875e-04, 1.067402086571185994e-04, 1.094595718323832672e-04, 1.121786167287435907e-04, 1.148973389453110351e-04, 1.176157340819486885e-04, 1.203337977394606048e-04, 1.230515255192342740e-04, 1.257689130234302224e-04, 1.284859558551706363e-04, 1.312026496181833784e-04, 1.339189899170506893e-04, 1.366349723570956724e-04, 1.393505925445717578e-04, 1.420658460866072996e-04, 1.447807285907903808e-04, 1.474952356659018694e-04, 1.502093629215001417e-04, 1.529231059678642435e-04, 1.556364604161860645e-04, 1.583494218784552501e-04, 1.610619859677076742e-04, 1.637741482976697927e-04, 1.664859044829472686e-04, 1.691972501392143544e-04, 1.719081808828567561e-04, 1.746186923311612328e-04, 1.773287801024420695e-04, 1.800384398159898748e-04, 1.827476670916534051e-04, 1.854564575506346903e-04, 1.881648068147672814e-04, 1.908727105070720390e-04, 1.935801642513368154e-04, 1.962871636723061630e-04, 1.989937043958719368e-04, 2.016997820487149659e-04, 2.044053922584944090e-04, 2.071105306540348340e-04, 2.098151928649747463e-04, 2.125193745219489518e-04, 2.152230712567818429e-04, 2.179262787021301001e-04, 2.206289924916700958e-04, 2.233312082602878740e-04, 2.260329216437220138e-04, 2.287341282787538801e-04, 2.314348238033938352e-04, 2.341350038564667211e-04, 2.368346640781626884e-04, 2.395338001093180725e-04, 2.422324075922089475e-04, 2.449304821701350646e-04, 2.476280194873650719e-04, 2.503250151892680016e-04, 2.530214649224956053e-04, 2.557173643346332412e-04, 2.584127090744453917e-04, 2.611074947917600328e-04, 2.638017171377217418e-04, 2.664953717644317414e-04, 2.691884543251406715e-04, 2.718809604743727842e-04, 2.745728858678713542e-04, 2.772642261621906939e-04, 2.799549770154180148e-04, 2.826451340867629485e-04, 2.853346930365049093e-04, 2.880236495261778956e-04, 2.907119992184607695e-04, 2.933997377774206594e-04, 2.960868608681631428e-04, 2.987733641570156388e-04, 3.014592433117180108e-04, 3.041444940010687914e-04, 3.068291118951091715e-04, 3.095130926653142539e-04, 3.121964319842359704e-04, 3.148791255256933063e-04, 3.175611689649588906e-04, 3.202425579784019143e-04, 3.229232882436826910e-04, 3.256033554399305734e-04, 3.282827552473392761e-04, 3.309614833476462003e-04, 3.336395354237267261e-04, 3.363169071597759785e-04, 3.389935942414981835e-04, 3.416695923557517547e-04, 3.443448971907386489e-04, 3.470195044361884095e-04, 3.496934097830080236e-04, 3.523666089234683504e-04, 3.550390975513875139e-04, 3.577108713617829826e-04, 3.603819260510539324e-04, 3.630522573171727162e-04, 3.657218608592669590e-04, 3.683907323781707654e-04, 3.710588675757090383e-04, 3.737262621554850975e-04, 3.763929118224671648e-04, 3.790588122829357262e-04, 3.817239592446117387e-04, 3.843883484168395350e-04, 3.870519755102400420e-04, 3.897148362369500635e-04, 3.923769263105170591e-04, 3.950382414461381018e-04, 3.976987773603122829e-04, 4.003585297710288756e-04, 4.030174943979478543e-04, 4.056756669620493723e-04, 4.083330431858277253e-04, 4.109896187934057891e-04, 4.136453895104884532e-04, 4.163003510639546353e-04, 4.189544991826330282e-04, 4.216078295965992114e-04, 4.242603380377133609e-04, 4.269120202392144873e-04, 4.295628719359053456e-04, 4.322128888643358828e-04, 4.348620667624533112e-04, 4.375104013697917360e-04, 4.401578884276501806e-04, 4.428045236787477024e-04, 4.454503028674091161e-04, 4.480952217397440505e-04, 4.507392760433055322e-04, 4.533824615272706148e-04, 4.560247739426245839e-04, 4.586662090417522675e-04, 4.613067625789229998e-04, 4.639464303098789493e-04, 4.665852079920221980e-04, 4.692230913846534828e-04, 4.718600762483355520e-04, 4.744961583456615392e-04, 4.771313334408555976e-04, 4.797655972997103956e-04, 4.823989456897223170e-04, 4.850313743802694868e-04, 4.876628791422673204e-04, 4.902934557484071561e-04, 4.929230999730510338e-04, 4.955518075924683760e-04, 4.981795743844938135e-04, 5.008063961287074345e-04, 5.034322686065610935e-04, 5.060571876013256112e-04, 5.086811488976873425e-04, 5.113041482824571366e-04, 5.139261815441685316e-04, 5.165472444730265797e-04, 5.191673328610882593e-04, 5.217864425021495004e-04, 5.244045691919949851e-04, 5.270217087280439387e-04, 5.296378569095387808e-04, 5.322530095377236937e-04, 5.348671624155043993e-04, 5.374803113476248843e-04, 5.400924521408557262e-04, 5.427035806036448716e-04, 5.453136925462997824e-04, 5.479227837811747855e-04, 5.505308501222647144e-04, 5.531378873856779461e-04, 5.557438913892373067e-04, 5.583488579526602654e-04, 5.609527828977399965e-04, 5.635556620480046148e-04, 5.661574912288953095e-04, 5.687582662679540203e-04, 5.713579829944690110e-04, 5.739566372396710022e-04, 5.765542248369030657e-04, 5.791507416212834372e-04, 5.817461834298825671e-04, 5.843405461019126387e-04, 5.869338254783750940e-04, 5.895260174023055555e-04, 5.921171177186645377e-04, 5.947071222745169920e-04, 5.972960269189789631e-04, 5.998838275028218559e-04, 6.024705198791728295e-04, 6.050560999031151608e-04, 6.076405634316384792e-04, 6.102239063237625827e-04, 6.128061244407115608e-04, 6.153872136455791012e-04, 6.179671698035678817e-04, 6.205459887818725847e-04, 6.231236664499248184e-04, 6.257001986790514851e-04, 6.282755813426516142e-04, 6.308498103163244063e-04, 6.334228814778109038e-04, 6.359947907066005332e-04, 6.385655338846896135e-04, 6.411351068958907190e-04, 6.437035056263643723e-04, 6.462707259642164800e-04, 6.488367637996786353e-04, 6.514016150252946013e-04, 6.539652755355672940e-04, 6.565277412271549153e-04, 6.590890079990365099e-04, 6.616490717521780317e-04, 6.642079283897169830e-04, 6.667655738171302492e-04, 6.693220039419058021e-04, 6.718772146737186663e-04, 6.744312019246029820e-04, 6.769839616086266356e-04, 6.795354896420598536e-04, 6.820857819435559386e-04, 6.846348344337597645e-04, 6.871826430357719229e-04, 6.897292036747507127e-04, 6.922745122780917925e-04, 6.948185647756067486e-04, 6.973613570991947985e-04, 6.999028851830015182e-04, 7.024431449636167092e-04, 7.049821323797239841e-04, 7.075198433722894179e-04, 7.100562738847289489e-04, 7.125914198625802991e-04, 7.151252772537334754e-04, 7.176578420083273369e-04, 7.201891100789231757e-04, 7.227190774204510487e-04, 7.252477399898279217e-04, 7.277750937466394157e-04, 7.303011346528025119e-04, 7.328258586722397484e-04, 7.353492617715637857e-04, 7.378713399196792878e-04, 7.403920890877429151e-04, 7.429115052493336525e-04, 7.454295843803503520e-04, 7.479463224592402832e-04, 7.504617154666681257e-04, 7.529757593856892250e-04, 7.554884502019334732e-04, 7.579997839032629175e-04, 7.605097564799533647e-04, 7.630183639248675279e-04, 7.655256022331278143e-04, 7.680314674022851356e-04, 7.705359554324951992e-04, 7.730390623261392544e-04, 7.755407840882673140e-04, 7.780411167262248637e-04, 7.805400562498139745e-04, 7.830375986714763160e-04, 7.855337400059676789e-04, 7.880284762705175696e-04, 7.905218034850187286e-04, 7.930137176716852820e-04, 7.955042148552426929e-04, 7.979932910630794423e-04, 8.004809423249401989e-04, 8.029671646730833544e-04, 8.054519541424699997e-04, 8.079353067703602762e-04, 8.104172185968411659e-04, 8.128976856641510328e-04, 8.153767040174165559e-04, 8.178542697043209627e-04, 8.203303787747794193e-04, 8.228050272816105851e-04, 8.252782112801594194e-04, 8.277499268282328872e-04, 8.302201699862379793e-04, 8.326889368173385955e-04, 8.351562233871351630e-04, 8.376220257638941624e-04, 8.400863400184427430e-04, 8.425491622243866472e-04, 8.450104884578035986e-04, 8.474703147973967161e-04, 8.499286373246268955e-04, 8.523854521236466728e-04, 8.548407552809367997e-04, 8.572945428860239856e-04, 8.597468110308138962e-04, 8.621975558101148233e-04, 8.646467733212407584e-04, 8.670944596641921289e-04, 8.695406109418163691e-04, 8.719852232595048849e-04, 8.744282927253377953e-04, 8.768698154502748603e-04, 8.793097875478243656e-04, 8.817482051342157272e-04, 8.841850643285642910e-04, 8.866203612525602740e-04, 8.890540920306289020e-04, 8.914862527901067004e-04, 8.939168396608612645e-04, 8.963458487757383847e-04, 8.987732762701766123e-04, 9.011991182823948267e-04, 9.036233709535950896e-04, 9.060460304273869336e-04, 9.084670928504932864e-04, 9.108865543723746860e-04, 9.133044111451828770e-04, 9.157206593238793142e-04, 9.181352950664000692e-04, 9.205483145333330638e-04, 9.229597138880914339e-04, 9.253694892970878690e-04, 9.277776369294034970e-04, 9.301841529570182773e-04, 9.325890335547031224e-04, 9.349922749002005260e-04, 9.373938731741607040e-04, 9.397938245597795785e-04, 9.421921252434522272e-04, 9.445887714143946052e-04, 9.469837592645988754e-04, 9.493770849890119769e-04, 9.517687447854141945e-04, 9.541587348546551892e-04, 9.565470514003300388e-04, 9.589336906289560713e-04, 9.613186487501250866e-04, 9.637019219761970698e-04, 9.660835065224695432e-04, 9.684633986072823005e-04, 9.708415944519746890e-04, 9.732180902805221854e-04, 9.755928823202220448e-04, 9.779659668011260465e-04, 9.803373399562631887e-04, 9.827069980217790091e-04, 9.850749372366067458e-04, 9.874411538428684923e-04, 9.898056440855210972e-04, 9.921684042125266008e-04, 9.945294304750031556e-04, 9.968887191269279555e-04, 9.992462664252894575e-04, 1.001602068630259336e-03, 1.003956122004883485e-03, 1.006308422815239230e-03, 1.008658967330598602e-03, 1.011007751823131276e-03, 1.013354772568051364e-03, 1.015700025843795443e-03, 1.018043507931645688e-03, 1.020385215116226870e-03, 1.022725143684866242e-03, 1.025063289928286126e-03, 1.027399650140250467e-03, 1.029734220617504548e-03, 1.032066997659900759e-03, 1.034397977570547349e-03, 1.036727156655509619e-03, 1.039054531223970821e-03, 1.041380097588393916e-03, 1.043703852064208244e-03, 1.046025790970037854e-03, 1.048345910627588532e-03, 1.050664207361821922e-03, 1.052980677500895031e-03, 1.055295317375820000e-03, 1.057608123321081674e-03, 1.059919091674330549e-03, 1.062228218776083968e-03, 1.064535500970401364e-03, 1.066840934604271034e-03, 1.069144516028081547e-03, 1.071446241595262012e-03, 1.073746107662449040e-03, 1.076044110589639401e-03, 1.078340246739894256e-03, 1.080634512479491591e-03, 1.082926904178099260e-03, 1.085217418208452543e-03, 1.087506050946532386e-03, 1.089792798771715889e-03, 1.092077658066477287e-03, 1.094360625216543636e-03, 1.096641696611060915e-03, 1.098920868642232337e-03, 1.101198137705740538e-03, 1.103473500200393906e-03, 1.105746952528285313e-03, 1.108018491094950406e-03, 1.110288112309064032e-03, 1.112555812582605901e-03, 1.114821588331010209e-03, 1.117085435972879843e-03, 1.119347351930126020e-03, 1.121607332628139601e-03, 1.123865374495490108e-03, 1.126121473964082718e-03, 1.128375627469311790e-03, 1.130627831449760754e-03, 1.132878082347430447e-03, 1.135126376607616160e-03, 1.137372710679080681e-03, 1.139617081014006805e-03, 1.141859484067648872e-03, 1.144099916298939703e-03, 1.146338374170152979e-03, 1.148574854146847514e-03, 1.150809352698032705e-03, 1.153041866296064012e-03, 1.155272391416862620e-03, 1.157500924539608175e-03, 1.159727462146899462e-03, 1.161952000724909449e-03, 1.164174536763086477e-03, 1.166395066754326434e-03, 1.168613587195054286e-03, 1.170830094585195453e-03, 1.173044585427827132e-03, 1.175257056229833371e-03, 1.177467503501309189e-03, 1.179675923756023969e-03, 1.181882313511066051e-03, 1.184086669287001464e-03, 1.186288987608036336e-03, 1.188489265001711152e-03, 1.190687497999065765e-03, 1.192883683134795094e-03, 1.195077816946939686e-03, 1.197269895977059843e-03, 1.199459916770385893e-03, 1.201647875875511140e-03, 1.203833769844568158e-03, 1.206017595233363233e-03, 1.208199348601099671e-03, 1.210379026510524387e-03, 1.212556625528077086e-03, 1.214732142223560888e-03, 1.216905573170588579e-03, 1.219076914945985439e-03, 1.221246164130449299e-03, 1.223413317308209023e-03, 1.225578371066967038e-03, 1.227741321998022939e-03, 1.229902166696411180e-03, 1.232060901760625689e-03, 1.234217523792798324e-03, 1.236372029398633606e-03, 1.238524415187591083e-03, 1.240674677772607990e-03, 1.242822813770244747e-03, 1.244968819800784708e-03, 1.247112692488197517e-03, 1.249254428459811673e-03, 1.251394024346874200e-03, 1.253531476784256610e-03, 1.255666782410372068e-03, 1.257799937867356893e-03, 1.259930939800956492e-03, 1.262059784860743942e-03, 1.264186469699812940e-03, 1.266310990974953881e-03, 1.268433345346780270e-03, 1.270553529479456593e-03, 1.272671540040846202e-03, 1.274787373702662664e-03, 1.276901027140185923e-03, 1.279012497032405195e-03, 1.281121780062175310e-03, 1.283228872915933086e-03, 1.285333772283843694e-03, 1.287436474859952884e-03, 1.289536977341855213e-03, 1.291635276431083281e-03, 1.293731368832768151e-03, 1.295825251255814129e-03, 1.297916920413010001e-03, 1.300006373020779881e-03, 1.302093605799319823e-03, 1.304178615472736599e-03, 1.306261398768781851e-03, 1.308341952418993689e-03, 1.310420273158844143e-03, 1.312496357727457701e-03, 1.314570202867764185e-03, 1.316641805326636879e-03, 1.318711161854578540e-03, 1.320778269206142504e-03, 1.322843124139371938e-03, 1.324905723416426508e-03, 1.326966063803250179e-03, 1.329024142069519174e-03, 1.331079954988762535e-03, 1.333133499338500687e-03, 1.335184771899957691e-03, 1.337233769458266589e-03, 1.339280488802374429e-03, 1.341324926725236989e-03, 1.343367080023547076e-03, 1.345406945497865494e-03, 1.347444519952787365e-03, 1.349479800196642671e-03, 1.351512783041666039e-03, 1.353543465304076756e-03, 1.355571843804041256e-03, 1.357597915365364120e-03, 1.359621676816077668e-03, 1.361643124987906581e-03, 1.363662256716675772e-03, 1.365679068842002046e-03, 1.367693558207445882e-03, 1.369705721660627448e-03, 1.371715556052970943e-03, 1.373723058239864191e-03, 1.375728225080766849e-03, 1.377731053438969490e-03, 1.379731540181720678e-03, 1.381729682180371380e-03, 1.383725476310106303e-03, 1.385718919450090476e-03, 1.387710008483608029e-03, 1.389698740297742570e-03, 1.391685111783746466e-03, 1.393669119836747237e-03, 1.395650761355858799e-03, 1.397630033244384642e-03, 1.399606932409327553e-03, 1.401581455761970966e-03, 1.403553600217575387e-03, 1.405523362695337191e-03, 1.407490740118478179e-03, 1.409455729414397368e-03, 1.411418327514386492e-03, 1.413378531353832535e-03, 1.415336337872134679e-03, 1.417291744012864332e-03, 1.419244746723526606e-03, 1.421195342955685649e-03, 1.423143529665068944e-03, 1.425089303811513317e-03, 1.427032662358664397e-03, 1.428973602274529776e-03, 1.430912120531145507e-03, 1.432848214104553769e-03, 1.434781879974942080e-03, 1.436713115126550056e-03, 1.438641916547855676e-03, 1.440568281231310952e-03, 1.442492206173498709e-03, 1.444413688375228858e-03, 1.446332724841319604e-03, 1.448249312580716062e-03, 1.450163448606631416e-03, 1.452075129936270447e-03, 1.453984353590999758e-03, 1.455891116596452067e-03, 1.457795415982244321e-03, 1.459697248782313795e-03, 1.461596612034642704e-03, 1.463493502781372264e-03, 1.465387918068939300e-03, 1.467279854947830132e-03, 1.469169310472713281e-03, 1.471056281702570225e-03, 1.472940765700434971e-03, 1.474822759533545632e-03, 1.476702260273454574e-03, 1.478579264995793802e-03, 1.480453770780410048e-03, 1.482325774711474925e-03, 1.484195273877258765e-03, 1.486062265370291296e-03, 1.487926746287284016e-03, 1.489788713729258774e-03, 1.491648164801521320e-03, 1.493505096613363583e-03, 1.495359506278557630e-03, 1.497211390915101749e-03, 1.499060747645145856e-03, 1.500907573595110971e-03, 1.502751865895783764e-03, 1.504593621682107736e-03, 1.506432838093334789e-03, 1.508269512272945216e-03, 1.510103641368826374e-03, 1.511935222533013776e-03, 1.513764252921848521e-03, 1.515590729696031065e-03, 1.517414650020598678e-03, 1.519236011064652864e-03, 1.521054810001880222e-03, 1.522871044010073657e-03, 1.524684710271501445e-03, 1.526495805972625771e-03, 1.528304328304238690e-03, 1.530110274461570115e-03, 1.531913641644067287e-03, 1.533714427055509703e-03, 1.535512627904143338e-03, 1.537308241402421741e-03, 1.539101264767161071e-03, 1.540891695219646137e-03, 1.542679529985400760e-03, 1.544464766294299666e-03, 1.546247401380715283e-03, 1.548027432483262090e-03, 1.549804856844934310e-03, 1.551579671713221916e-03, 1.553351874339830695e-03, 1.555121461981014879e-03, 1.556888431897312597e-03, 1.558652781353643676e-03, 1.560414507619450582e-03, 1.562173607968457729e-03, 1.563930079678799200e-03, 1.565683920033145811e-03, 1.567435126318452278e-03, 1.569183695826107056e-03, 1.570929625852029478e-03, 1.572672913696459640e-03, 1.574413556664106505e-03, 1.576151552064068749e-03, 1.577886897209971381e-03, 1.579619589419931254e-03, 1.581349626016268894e-03, 1.583077004325991397e-03, 1.584801721680566917e-03, 1.586523775415698504e-03, 1.588243162871775778e-03, 1.589959881393629903e-03, 1.591673928330478291e-03, 1.593385301036071835e-03, 1.595093996868577821e-03, 1.596800013190797195e-03, 1.598503347369876386e-03, 1.600203996777472323e-03, 1.601901958789855862e-03, 1.603597230787681726e-03, 1.605289810156108844e-03, 1.606979694284917451e-03, 1.608666880568297231e-03, 1.610351366404955955e-03, 1.612033149198228337e-03, 1.613712226355824494e-03, 1.615388595290150877e-03, 1.617062253418021000e-03, 1.618733198160786629e-03, 1.620401426944461385e-03, 1.622066937199487854e-03, 1.623729726360857066e-03, 1.625389791868235134e-03, 1.627047131165721902e-03, 1.628701741701986047e-03, 1.630353620930374359e-03, 1.632002766308695337e-03, 1.633649175299312214e-03, 1.635292845369299081e-03, 1.636933773990155959e-03, 1.638571958638144034e-03, 1.640207396793868242e-03, 1.641840085942739566e-03, 1.643470023574770131e-03, 1.645097207184340526e-03, 1.646721634270677725e-03, 1.648343302337562568e-03, 1.649962208893313714e-03, 1.651578351450882186e-03, 1.653191727527931598e-03, 1.654802334646647555e-03, 1.656410170333874480e-03, 1.658015232121059232e-03, 1.659617517544385119e-03, 1.661217024144563941e-03, 1.662813749466962414e-03, 1.664407691061652907e-03, 1.665998846483395012e-03, 1.667587213291386178e-03, 1.669172789049742228e-03, 1.670755571327048501e-03, 1.672335557696703542e-03, 1.673912745736666919e-03, 1.675487133029571760e-03, 1.677058717162824069e-03, 1.678627495728422315e-03, 1.680193466323025514e-03, 1.681756626548100691e-03, 1.683316974009695186e-03, 1.684874506318545734e-03, 1.686429221090201625e-03, 1.687981115944805913e-03, 1.689530188507194948e-03, 1.691076436407034115e-03, 1.692619857278554159e-03, 1.694160448760835243e-03, 1.695698208497589676e-03, 1.697233134137233253e-03, 1.698765223333058294e-03, 1.700294473742844197e-03, 1.701820883029306949e-03, 1.703344448859872313e-03, 1.704865168906624867e-03, 1.706383040846413393e-03, 1.707898062360914838e-03, 1.709410231136472341e-03, 1.710919544864179364e-03, 1.712426001239980957e-03, 1.713929597964497032e-03, 1.715430332743133604e-03, 1.716928203286040289e-03, 1.718423207308204846e-03, 1.719915342529418703e-03, 1.721404606674058159e-03, 1.722890997471478169e-03, 1.724374512655792472e-03, 1.725855149965831951e-03, 1.727332907145256741e-03, 1.728807781942487279e-03, 1.730279772110840907e-03, 1.731748875408355582e-03, 1.733215089597849295e-03, 1.734678412447072287e-03, 1.736138841728478068e-03, 1.737596375219339646e-03, 1.739051010701815657e-03, 1.740502745962913943e-03, 1.741951578794289886e-03, 1.743397506992641708e-03, 1.744840528359377406e-03, 1.746280640700737918e-03, 1.747717841827908791e-03, 1.749152129556780363e-03, 1.750583501708226396e-03, 1.752011956107874229e-03, 1.753437490586196718e-03, 1.754860102978623038e-03, 1.756279791125354593e-03, 1.757696552871441118e-03, 1.759110386066909271e-03, 1.760521288566547528e-03, 1.761929258230022837e-03, 1.763334292921972350e-03, 1.764736390511821703e-03, 1.766135548873867854e-03, 1.767531765887401162e-03, 1.768925039436469683e-03, 1.770315367410168431e-03, 1.771702747702268805e-03, 1.773087178211630146e-03, 1.774468656841980078e-03, 1.775847181501896081e-03, 1.777222750104847553e-03, 1.778595360569328954e-03, 1.779965010818635156e-03, 1.781331698780990250e-03, 1.782695422389629506e-03, 1.784056179582622654e-03, 1.785413968302984686e-03, 1.786768786498643550e-03, 1.788120632122516471e-03, 1.789469503132480252e-03, 1.790815397491176981e-03, 1.792158313166368564e-03, 1.793498248130761521e-03, 1.794835200361830259e-03, 1.796169167842212805e-03, 1.797500148559343916e-03, 1.798828140505751060e-03, 1.800153141678808308e-03, 1.801475150080872724e-03, 1.802794163719350935e-03, 1.804110180606525223e-03, 1.805423198759659349e-03, 1.806733216201067502e-03, 1.808040230957964466e-03, 1.809344241062540862e-03, 1.810645244552060076e-03, 1.811943239468681100e-03, 1.813238223859562183e-03, 1.814530195776930871e-03, 1.815819153277902940e-03, 1.817105094424701197e-03, 1.818388017284464434e-03, 1.819667919929338074e-03, 1.820944800436556784e-03, 1.822218656888290522e-03, 1.823489487371704161e-03, 1.824757289979081530e-03, 1.826022062807623530e-03, 1.827283803959562410e-03, 1.828542511542239615e-03, 1.829798183667936213e-03, 1.831050818453954215e-03, 1.832300414022734530e-03, 1.833546968501622134e-03, 1.834790480023141884e-03, 1.836030946724673697e-03, 1.837268366748796020e-03, 1.838502738243149442e-03, 1.839734059360236982e-03, 1.840962328257801390e-03, 1.842187543098592478e-03, 1.843409702050378832e-03, 1.844628803286002235e-03, 1.845844844983355552e-03, 1.847057825325457972e-03, 1.848267742500341385e-03, 1.849474594701085075e-03, 1.850678380125933033e-03, 1.851879096978134576e-03, 1.853076743465992488e-03, 1.854271317802965585e-03, 1.855462818207623829e-03, 1.856651242903445582e-03, 1.857836590119205534e-03, 1.859018858088624070e-03, 1.860198045050630734e-03, 1.861374149249163217e-03, 1.862547168933270788e-03, 1.863717102357176098e-03, 1.864883947780132493e-03, 1.866047703466484301e-03, 1.867208367685797583e-03, 1.868365938712644378e-03, 1.869520414826720666e-03, 1.870671794312921609e-03, 1.871820075461176538e-03, 1.872965256566539154e-03, 1.874107335929279475e-03, 1.875246311854701685e-03, 1.876382182653247351e-03, 1.877514946640568066e-03, 1.878644602137340049e-03, 1.879771147469515248e-03, 1.880894580968004099e-03, 1.882014900969010331e-03, 1.883132105813860747e-03, 1.884246193848970741e-03, 1.885357163425911307e-03, 1.886465012901487534e-03, 1.887569740637570553e-03, 1.888671345001225474e-03, 1.889769824364638529e-03, 1.890865177105247605e-03, 1.891957401605569213e-03, 1.893046496253295843e-03, 1.894132459441326107e-03, 1.895215289567760619e-03, 1.896294985035730908e-03, 1.897371544253684348e-03, 1.898444965635224342e-03, 1.899515247599086907e-03, 1.900582388569217220e-03, 1.901646386974715401e-03, 1.902707241249942125e-03, 1.903764949834378965e-03, 1.904819511172703428e-03, 1.905870923714845979e-03, 1.906919185915882057e-03, 1.907964296236052890e-03, 1.909006253140916633e-03, 1.910045055101119603e-03, 1.911080700592544162e-03, 1.912113188096335606e-03, 1.913142516098780520e-03, 1.914168683091389172e-03, 1.915191687570936283e-03, 1.916211528039332441e-03, 1.917228203003796703e-03, 1.918241710976702208e-03, 1.919252050475643177e-03, 1.920259220023498884e-03, 1.921263218148323718e-03, 1.922264043383384042e-03, 1.923261694267258161e-03, 1.924256169343684965e-03, 1.925247467161639607e-03, 1.926235586275399205e-03, 1.927220525244416859e-03, 1.928202282633391471e-03, 1.929180857012318491e-03, 1.930156246956363057e-03, 1.931128451046051258e-03, 1.932097467866985630e-03, 1.933063296010171942e-03, 1.934025934071839647e-03, 1.934985380653436466e-03, 1.935941634361659607e-03, 1.936894693808536433e-03, 1.937844557611284168e-03, 1.938791224392419398e-03, 1.939734692779691069e-03, 1.940674961406185436e-03, 1.941612028910192495e-03, 1.942545893935277096e-03, 1.943476555130315602e-03, 1.944404011149477229e-03, 1.945328260652092432e-03, 1.946249302302899015e-03, 1.947167134771900752e-03, 1.948081756734273496e-03, 1.948993166870611722e-03, 1.949901363866704323e-03, 1.950806346413709808e-03, 1.951708113208010372e-03, 1.952606662951278035e-03, 1.953501994350552266e-03, 1.954394106118099907e-03, 1.955282996971483261e-03, 1.956168665633623623e-03, 1.957051110832702841e-03, 1.957930331302179788e-03, 1.958806325780887512e-03, 1.959679093012918309e-03, 1.960548631747657550e-03, 1.961414940739865647e-03, 1.962278018749541442e-03, 1.963137864542062721e-03, 1.963994476888082999e-03, 1.964847854563557972e-03, 1.965697996349825751e-03, 1.966544901033491066e-03, 1.967388567406464731e-03, 1.968228994266074238e-03, 1.969066180414875099e-03, 1.969900124660771846e-03, 1.970730825817055762e-03, 1.971558282702284316e-03, 1.972382494140373539e-03, 1.973203458960548148e-03, 1.974021175997429586e-03, 1.974835644090920227e-03, 1.975646862086254552e-03, 1.976454828834058128e-03, 1.977259543190301207e-03, 1.978061004016200275e-03, 1.978859210178422322e-03, 1.979654160548959940e-03, 1.980445854005123511e-03, 1.981234289429585453e-03, 1.982019465710352889e-03, 1.982801381740847448e-03, 1.983580036419782099e-03, 1.984355428651231844e-03, 1.985127557344674911e-03, 1.985896421414907759e-03, 1.986662019782077602e-03, 1.987424351371753096e-03, 1.988183415114800744e-03, 1.988939209947462958e-03, 1.989691734811403160e-03, 1.990440988653584351e-03, 1.991186970426390111e-03, 1.991929679087544799e-03, 1.992669113600133938e-03, 1.993405272932667095e-03, 1.994138156058981176e-03, 1.994867761958285090e-03, 1.995594089615228273e-03, 1.996317138019768414e-03, 1.997036906167262097e-03, 1.997753393058493854e-03, 1.998466597699566881e-03, 1.999176519101990204e-03, 1.999883156282692993e-03, 2.000586508263949535e-03, 2.001286574073433445e-03, 2.001983352744196414e-03, 2.002676843314719814e-03, 2.003367044828876110e-03, 2.004053956335844714e-03, 2.004737576890297610e-03, 2.005417905552286158e-03, 2.006094941387224183e-03, 2.006768683465929605e-03, 2.007439130864659138e-03, 2.008106282665031092e-03, 2.008770137954074813e-03, 2.009430695824213336e-03, 2.010087955373320630e-03, 2.010741915704629228e-03, 2.011392575926769684e-03, 2.012039935153826960e-03, 2.012683992505303558e-03, 2.013324747106014136e-03, 2.013962198086301485e-03, 2.014596344581840066e-03, 2.015227185733785634e-03, 2.015854720688649467e-03, 2.016478948598372529e-03, 2.017099868620350189e-03, 2.017717479917357625e-03, 2.018331781657584090e-03, 2.018942773014685381e-03, 2.019550453167694940e-03, 2.020154821301068087e-03, 2.020755876604728423e-03, 2.021353618273977627e-03, 2.021948045509547494e-03, 2.022539157517635067e-03, 2.023126953509828910e-03, 2.023711432703136862e-03, 2.024292594320047621e-03, 2.024870437588420155e-03, 2.025444961741600363e-03, 2.026016166018322628e-03, 2.026584049662762729e-03, 2.027148611924566458e-03, 2.027709852058775901e-03, 2.028267769325869333e-03, 2.028822362991795480e-03, 2.029373632327916704e-03, 2.029921576611020285e-03, 2.030466195123382597e-03, 2.031007487152666335e-03, 2.031545451992015916e-03, 2.032080088939978990e-03, 2.032611397300581029e-03, 2.033139376383315353e-03, 2.033664025503029073e-03, 2.034185343980096563e-03, 2.034703331140330120e-03, 2.035217986314953945e-03, 2.035729308840656185e-03, 2.036237298059605412e-03, 2.036741953319371259e-03, 2.037243273973006388e-03, 2.037741259378987070e-03, 2.038235908901280848e-03, 2.038727221909282343e-03, 2.039215197777825405e-03, 2.039699835887250328e-03, 2.040181135623305841e-03, 2.040659096377191173e-03, 2.041133717545613735e-03, 2.041604998530692841e-03, 2.042072938740007414e-03, 2.042537537586627209e-03, 2.042998794489046463e-03, 2.043456708871248511e-03, 2.043911280162656347e-03, 2.044362507798151707e-03, 2.044810391218104123e-03, 2.045254929868327558e-03, 2.045696123200083007e-03, 2.046133970670133573e-03, 2.046568471740684188e-03, 2.046999625879389849e-03, 2.047427432559414603e-03, 2.047851891259348280e-03, 2.048273001463254625e-03, 2.048690762660691257e-03, 2.049105174346644610e-03, 2.049516236021616672e-03, 2.049923947191516129e-03, 2.050328307367774161e-03, 2.050729316067288061e-03, 2.051126972812382637e-03, 2.051521277130895216e-03, 2.051912228556130539e-03, 2.052299826626850354e-03, 2.052684070887280353e-03, 2.053064960887156145e-03, 2.053442496181654732e-03, 2.053816676331433975e-03, 2.054187500902622185e-03, 2.054554969466845880e-03, 2.054919081601178175e-03, 2.055279836888165672e-03, 2.055637234915859250e-03, 2.055991275277778071e-03, 2.056341957572887028e-03, 2.056689281405665263e-03, 2.057033246386045892e-03, 2.057373852129458936e-03, 2.057711098256793155e-03, 2.058044984394421639e-03, 2.058375510174213514e-03, 2.058702675233489276e-03, 2.059026479215055917e-03, 2.059346921767226876e-03, 2.059664002543754816e-03, 2.059977721203889306e-03, 2.060288077412381590e-03, 2.060595070839433846e-03, 2.060898701160728680e-03, 2.061198968057460779e-03, 2.061495871216267525e-03, 2.061789410329306193e-03, 2.062079585094181086e-03, 2.062366395213996017e-03, 2.062649840397354738e-03, 2.062929920358290252e-03, 2.063206634816362392e-03, 2.063479983496615319e-03, 2.063749966129559306e-03, 2.064016582451179849e-03, 2.064279832202970191e-03, 2.064539715131890121e-03, 2.064796230990381155e-03, 2.065049379536386051e-03, 2.065299160533313246e-03, 2.065545573750059410e-03, 2.065788618961000769e-03, 2.066028295946013057e-03, 2.066264604490458071e-03, 2.066497544385142038e-03, 2.066727115426400183e-03, 2.066953317416040780e-03, 2.067176150161336053e-03, 2.067395613475074209e-03, 2.067611707175491358e-03, 2.067824431086344363e-03, 2.068033785036848399e-03, 2.068239768861710771e-03, 2.068442382401134393e-03, 2.068641625500784384e-03, 2.068837498011825374e-03, 2.069029999790905020e-03, 2.069219130700161811e-03, 2.069404890607189941e-03, 2.069587279385100894e-03, 2.069766296912466629e-03, 2.069941943073368151e-03, 2.070114217757343042e-03, 2.070283120859417979e-03, 2.070448652280121316e-03, 2.070610811925450555e-03, 2.070769599706881459e-03, 2.070925015541387557e-03, 2.071077059351417171e-03, 2.071225731064896009e-03, 2.071371030615247119e-03, 2.071512957941360530e-03, 2.071651512987615802e-03, 2.071786695703883765e-03, 2.071918506045493987e-03, 2.072046943973279449e-03, 2.072172009453542713e-03, 2.072293702458077175e-03, 2.072412022964149718e-03, 2.072526970954504614e-03, 2.072638546417374800e-03, 2.072746749346468433e-03, 2.072851579740982771e-03, 2.072953037605574679e-03, 2.073051122950402697e-03, 2.073145835791098419e-03, 2.073237176148751311e-03, 2.073325144049972899e-03, 2.073409739526803526e-03, 2.073490962616793450e-03, 2.073568813362959042e-03, 2.073643291813798833e-03, 2.073714398023293517e-03, 2.073782132050872116e-03, 2.073846493961470534e-03, 2.073907483825491657e-03, 2.073965101718803616e-03, 2.074019347722763640e-03, 2.074070221924192471e-03, 2.074117724415386940e-03, 2.074161855294120397e-03, 2.074202614663644886e-03, 2.074240002632669888e-03, 2.074274019315388348e-03, 2.074304664831459321e-03, 2.074331939306017954e-03, 2.074355842869662469e-03, 2.074376375658474551e-03, 2.074393537813996793e-03, 2.074407329483236601e-03, 2.074417750818676170e-03, 2.074424801978265974e-03, 2.074428483125421302e-03, 2.074428794429036133e-03, 2.074425736063444103e-03, 2.074419308208471421e-03, 2.074409511049399128e-03, 2.074396344776970481e-03, 2.074379809587403086e-03, 2.074359905682360283e-03, 2.074336633268989739e-03, 2.074309992559889189e-03, 2.074279983773109470e-03, 2.074246607132185314e-03, 2.074209862866091547e-03, 2.074169751209277782e-03, 2.074126272401641963e-03, 2.074079426688541210e-03, 2.074029214320797024e-03, 2.073975635554679234e-03, 2.073918690651925089e-03, 2.073858379879720600e-03, 2.073794703510703583e-03, 2.073727661822974064e-03, 2.073657255100075196e-03, 2.073583483631018416e-03, 2.073506347710252651e-03, 2.073425847637678197e-03, 2.073341983718660596e-03, 2.073254756263997675e-03, 2.073164165589951643e-03, 2.073070212018213957e-03, 2.072972895875947828e-03, 2.072872217495737475e-03, 2.072768177215624560e-03, 2.072660775379109484e-03, 2.072550012335107588e-03, 2.072435888437999026e-03, 2.072318404047600576e-03, 2.072197559529161733e-03, 2.072073355253394641e-03, 2.071945791596422476e-03, 2.071814868939829326e-03, 2.071680587670629830e-03, 2.071542948181272648e-03, 2.071401950869637427e-03, 2.071257596139059517e-03, 2.071109884398289209e-03, 2.070958816061509080e-03, 2.070804391548352642e-03, 2.070646611283862275e-03, 2.070485475698529993e-03, 2.070320985228267952e-03, 2.070153140314408453e-03, 2.069981941403724324e-03, 2.069807388948404197e-03, 2.069629483406079402e-03, 2.069448225239790568e-03, 2.069263614917999771e-03, 2.069075652914596601e-03, 2.068884339708898165e-03, 2.068689675785625234e-03, 2.068491661634939971e-03, 2.068290297752397363e-03, 2.068085584638996825e-03, 2.067877522801125391e-03, 2.067666112750596308e-03, 2.067451355004656412e-03, 2.067233250085929747e-03, 2.067011798522467875e-03, 2.066787000847746837e-03, 2.066558857600630291e-03, 2.066327369325390330e-03, 2.066092536571721792e-03, 2.065854359894714071e-03, 2.065612839854866298e-03, 2.065367977018071725e-03, 2.065119771955632039e-03, 2.064868225244255624e-03, 2.064613337466031980e-03, 2.064355109208469447e-03, 2.064093541064462682e-03, 2.063828633632308705e-03, 2.063560387515673070e-03, 2.063288803323667063e-03, 2.063013881670736245e-03, 2.062735623176761065e-03, 2.062454028466989640e-03, 2.062169098172055969e-03, 2.061880832927999885e-03, 2.061589233376215878e-03, 2.061294300163514677e-03, 2.060996033942079451e-03, 2.060694435369455398e-03, 2.060389505108599622e-03, 2.060081243827828652e-03, 2.059769652200839265e-03, 2.059454730906706745e-03, 2.059136480629882287e-03, 2.058814902060179981e-03, 2.058489995892801103e-03, 2.058161762828315464e-03, 2.057830203572644061e-03, 2.057495318837100282e-03, 2.057157109338339160e-03, 2.056815575798409419e-03, 2.056470718944702729e-03, 2.056122539509966721e-03, 2.055771038232319728e-03, 2.055416215855258161e-03, 2.055058073127598826e-03, 2.054696610803537909e-03, 2.054331829642622349e-03, 2.053963730409753743e-03, 2.053592313875169263e-03, 2.053217580814474183e-03, 2.052839532008634074e-03, 2.052458168243923627e-03, 2.052073490311973059e-03, 2.051685499009795865e-03, 2.051294195139702521e-03, 2.050899579509350788e-03, 2.050501652931756985e-03, 2.050100416225266505e-03, 2.049695870213555978e-03, 2.049288015725624166e-03, 2.048876853595834463e-03, 2.048462384663855482e-03, 2.048044609774691410e-03, 2.047623529778674206e-03, 2.047199145531478342e-03, 2.046771457894059221e-03, 2.046340467732740351e-03, 2.045906175919151321e-03, 2.045468583330223473e-03, 2.045027690848226758e-03, 2.044583499360755428e-03, 2.044136009760674257e-03, 2.043685222946218290e-03, 2.043231139820877919e-03, 2.042773761293488217e-03, 2.042313088278193377e-03, 2.041849121694410719e-03, 2.041381862466888804e-03, 2.040911311525685744e-03, 2.040437469806118901e-03, 2.039960338248843815e-03, 2.039479917799804764e-03, 2.038996209410217850e-03, 2.038509214036615235e-03, 2.038018932640820423e-03, 2.037525366189933511e-03, 2.037028515656335963e-03, 2.036528382017721833e-03, 2.036024966257053530e-03, 2.035518269362570059e-03, 2.035008292327770540e-03, 2.034495036151493571e-03, 2.033978501837806641e-03, 2.033458690396036488e-03, 2.032935602840826340e-03, 2.032409240192074341e-03, 2.031879603474937446e-03, 2.031346693719835762e-03, 2.030810511962471629e-03, 2.030271059243804032e-03, 2.029728336610032990e-03, 2.029182345112642491e-03, 2.028633085808376636e-03, 2.028080559759200176e-03, 2.027524768032357930e-03, 2.026965711700350493e-03, 2.026403391840897374e-03, 2.025837809537002054e-03, 2.025268965876875649e-03, 2.024696861953989829e-03, 2.024121498867078976e-03, 2.023542877720064734e-03, 2.022960999622142736e-03, 2.022375865687754421e-03, 2.021787477036519811e-03, 2.021195834793335089e-03, 2.020600940088327063e-03, 2.020002794056805460e-03, 2.019401397839342294e-03, 2.018796752581734130e-03, 2.018188859434958283e-03, 2.017577719555241778e-03, 2.016963334104022315e-03, 2.016345704247962146e-03, 2.015724831158902108e-03, 2.015100716013880702e-03, 2.014473359995229071e-03, 2.013842764290397960e-03, 2.013208930092048356e-03, 2.012571858598084015e-03, 2.011931551011582071e-03, 2.011288008540799109e-03, 2.010641232399209329e-03, 2.009991223805471586e-03, 2.009337983983443265e-03, 2.008681514162132583e-03, 2.008021815575771005e-03, 2.007358889463761210e-03, 2.006692737070679688e-03, 2.006023359646247253e-03, 2.005350758445452203e-03, 2.004674934728355173e-03, 2.003995889760258695e-03, 2.003313624811576231e-03, 2.002628141157932352e-03, 2.001939440080105926e-03, 2.001247522864003231e-03, 2.000552390800738184e-03, 1.999854045186561652e-03, 1.999152487322848875e-03, 1.998447718516175361e-03, 1.997739740078244026e-03, 1.997028553325889098e-03, 1.996314159581108645e-03, 1.995596560171060668e-03, 1.994875756427982438e-03, 1.994151749689309760e-03, 1.993424541297596740e-03, 1.992694132600500607e-03, 1.991960524950857608e-03, 1.991223719706568945e-03, 1.990483718230719613e-03, 1.989740521891502495e-03, 1.988994132062190615e-03, 1.988244550121224304e-03, 1.987491777452153521e-03, 1.986735815443601422e-03, 1.985976665489331151e-03, 1.985214328988232392e-03, 1.984448807344238539e-03, 1.983680101966445088e-03, 1.982908214269016398e-03, 1.982133145671243369e-03, 1.981354897597472752e-03, 1.980573471477126233e-03, 1.979788868744815356e-03, 1.979001090840141162e-03, 1.978210139207809554e-03, 1.977416015297623047e-03, 1.976618720564487282e-03, 1.975818256468309976e-03, 1.975014624474143166e-03, 1.974207826052086067e-03, 1.973397862677319769e-03, 1.972584735830041746e-03, 1.971768446995566040e-03, 1.970948997664262112e-03, 1.970126389331514506e-03, 1.969300623497806119e-03, 1.968471701668676570e-03, 1.967639625354662344e-03, 1.966804396071390910e-03, 1.965966015339552959e-03, 1.965124484684811334e-03, 1.964279805637938938e-03, 1.963431979734688200e-03, 1.962581008515879542e-03, 1.961726893527369290e-03, 1.960869636320001531e-03, 1.960009238449680544e-03, 1.959145701477343470e-03, 1.958279026968887462e-03, 1.957409216495282871e-03, 1.956536271632513830e-03, 1.955660193961521014e-03, 1.954780985068304850e-03, 1.953898646543875649e-03, 1.953013179984191584e-03, 1.952124586990269502e-03, 1.951232869168051560e-03, 1.950338028128594534e-03, 1.949440065487826950e-03, 1.948538982866678980e-03, 1.947634781891161362e-03, 1.946727464192180663e-03, 1.945817031405606924e-03, 1.944903485172354979e-03, 1.943986827138296201e-03, 1.943067058954224893e-03, 1.942144182275951092e-03, 1.941218198764231616e-03, 1.940289110084810181e-03, 1.939356917908329576e-03, 1.938421623910444426e-03, 1.937483229771765894e-03, 1.936541737177806385e-03, 1.935597147819010993e-03, 1.934649463390894324e-03, 1.933698685593762505e-03, 1.932744816132967326e-03, 1.931787856718704356e-03, 1.930827809066172325e-03, 1.929864674895493976e-03, 1.928898455931649493e-03, 1.927929153904620269e-03, 1.926956770549285687e-03, 1.925981307605403392e-03, 1.925002766817684964e-03, 1.924021149935762525e-03, 1.923036458714111547e-03, 1.922048694912175098e-03, 1.921057860294292071e-03, 1.920063956629644922e-03, 1.919066985692387175e-03, 1.918066949261486211e-03, 1.917063849120854459e-03, 1.916057687059291711e-03, 1.915048464870390587e-03, 1.914036184352788496e-03, 1.913020847309850406e-03, 1.912002455549843176e-03, 1.910981010885947273e-03, 1.909956515136210361e-03, 1.908928970123478785e-03, 1.907898377675509242e-03, 1.906864739624937336e-03, 1.905828057809168512e-03, 1.904788334070531795e-03, 1.903745570256187630e-03, 1.902699768218149134e-03, 1.901650929813224634e-03, 1.900599056903052794e-03, 1.899544151354228385e-03, 1.898486215038042504e-03, 1.897425249830641310e-03, 1.896361257613026234e-03, 1.895294240271017767e-03, 1.894224199695260669e-03, 1.893151137781149155e-03, 1.892075056428957867e-03, 1.890995957543765114e-03, 1.889913843035392156e-03, 1.888828714818517477e-03, 1.887740574812631468e-03, 1.886649424941964004e-03, 1.885555267135504386e-03, 1.884458103327183928e-03, 1.883357935455546358e-03, 1.882254765464029707e-03, 1.881148595300765301e-03, 1.880039426918712637e-03, 1.878927262275619696e-03, 1.877812103333913879e-03, 1.876693952060863330e-03, 1.875572810428504733e-03, 1.874448680413542696e-03, 1.873321563997517366e-03, 1.872191463166718349e-03, 1.871058379912097320e-03, 1.869922316229439543e-03, 1.868783274119250899e-03, 1.867641255586716034e-03, 1.866496262641810467e-03, 1.865348297299248333e-03, 1.864197361578383717e-03, 1.863043457503404292e-03, 1.861886587103079790e-03, 1.860726752411081186e-03, 1.859563955465624646e-03, 1.858398198309670372e-03, 1.857229482990931275e-03, 1.856057811561806405e-03, 1.854883186079338232e-03, 1.853705608605322585e-03, 1.852525081206245336e-03, 1.851341605953210189e-03, 1.850155184922068138e-03, 1.848965820193327909e-03, 1.847773513852203880e-03, 1.846578267988524362e-03, 1.845380084696759135e-03, 1.844178966076202896e-03, 1.842974914230640455e-03, 1.841767931268529970e-03, 1.840558019303137382e-03, 1.839345180452179934e-03, 1.838129416838163140e-03, 1.836910730588135537e-03, 1.835689123833845679e-03, 1.834464598711686842e-03, 1.833237157362602046e-03, 1.832006801932243439e-03, 1.830773534570882951e-03, 1.829537357433335537e-03, 1.828298272679105326e-03, 1.827056282472315583e-03, 1.825811388981609176e-03, 1.824563594380326824e-03, 1.823312900846400623e-03, 1.822059310562279240e-03, 1.820802825715118296e-03, 1.819543448496541409e-03, 1.818281181102856820e-03, 1.817016025734943764e-03, 1.815747984598180048e-03, 1.814477059902595358e-03, 1.813203253862799699e-03, 1.811926568697878881e-03, 1.810647006631564736e-03, 1.809364569892152720e-03, 1.808079260712403252e-03, 1.806791081329716482e-03, 1.805500033986042092e-03, 1.804206120927778030e-03, 1.802909344405981707e-03, 1.801609706676110881e-03, 1.800307209998341972e-03, 1.799001856637215098e-03, 1.797693648861792368e-03, 1.796382588945828101e-03, 1.795068679167414073e-03, 1.793751921809198747e-03, 1.792432319158380983e-03, 1.791109873506635660e-03, 1.789784587150180031e-03, 1.788456462389628439e-03, 1.787125501530171644e-03, 1.785791706881503099e-03, 1.784455080757703805e-03, 1.783115625477423808e-03, 1.781773343363783971e-03, 1.780428236744332387e-03, 1.779080307951043513e-03, 1.777729559320533710e-03, 1.776375993193684156e-03, 1.775019611915968276e-03, 1.773660417837196303e-03, 1.772298413311715424e-03, 1.770933600698319137e-03, 1.769565982360155098e-03, 1.768195560664881025e-03, 1.766822337984605721e-03, 1.765446316695768077e-03, 1.764067499179312491e-03, 1.762685887820611245e-03, 1.761301485009364540e-03, 1.759914293139763558e-03, 1.758524314610424542e-03, 1.757131551824256312e-03, 1.755736007188697916e-03, 1.754337683115462111e-03, 1.752936582020737455e-03, 1.751532706325109167e-03, 1.750126058453410583e-03, 1.748716640835076396e-03, 1.747304455903731955e-03, 1.745889506097393412e-03, 1.744471793858514991e-03, 1.743051321633904208e-03, 1.741628091874644667e-03, 1.740202107036241787e-03, 1.738773369578549719e-03, 1.737341881965777206e-03, 1.735907646666385229e-03, 1.734470666153267856e-03, 1.733030942903646425e-03, 1.731588479399008172e-03, 1.730143278125138764e-03, 1.728695341572318968e-03, 1.727244672234965351e-03, 1.725791272611836491e-03, 1.724335145206051844e-03, 1.722876292525011947e-03, 1.721414717080440486e-03, 1.719950421388261128e-03, 1.718483407968781403e-03, 1.717013679346587321e-03, 1.715541238050468341e-03, 1.714066086613558540e-03, 1.712588227573293891e-03, 1.711107663471286063e-03, 1.709624396853393763e-03, 1.708138430269925912e-03, 1.706649766275215776e-03, 1.705158407427976143e-03, 1.703664356291169227e-03, 1.702167615431896723e-03, 1.700668187421632482e-03, 1.699166074835947336e-03, 1.697661280254736784e-03, 1.696153806262125146e-03, 1.694643655446358230e-03, 1.693130830399990246e-03, 1.691615333719787961e-03, 1.690097168006620331e-03, 1.688576335865663415e-03, 1.687052839906295421e-03, 1.685526682741968771e-03, 1.683997866990444292e-03, 1.682466395273650482e-03, 1.680932270217608705e-03, 1.679395494452632894e-03, 1.677856070613055472e-03, 1.676314001337594244e-03, 1.674769289268944516e-03, 1.673221937053972087e-03, 1.671671947343777651e-03, 1.670119322793600950e-03, 1.668564066062723636e-03, 1.667006179814674825e-03, 1.665445666717078237e-03, 1.663882529441717672e-03, 1.662316770664403658e-03, 1.660748393065170775e-03, 1.659177399328166632e-03, 1.657603792141585947e-03, 1.656027574197684211e-03, 1.654448748193038110e-03, 1.652867316828112278e-03, 1.651283282807453155e-03, 1.649696648839919051e-03, 1.648107417638198114e-03, 1.646515591919234635e-03, 1.644921174403912896e-03, 1.643324167817279647e-03, 1.641724574888457589e-03, 1.640122398350517654e-03, 1.638517640940696058e-03, 1.636910305400280687e-03, 1.635300394474492255e-03, 1.633687910912711566e-03, 1.632072857468346797e-03, 1.630455236898736360e-03, 1.628835051965352295e-03, 1.627212305433687733e-03, 1.625587000073148471e-03, 1.623959138657295404e-03, 1.622328723963564799e-03, 1.620695758773487089e-03, 1.619060245872602733e-03, 1.617422188050341445e-03, 1.615781588100220810e-03, 1.614138448819758907e-03, 1.612492773010329667e-03, 1.610844563477399237e-03, 1.609193823030407580e-03, 1.607540554482644662e-03, 1.605884760651476615e-03, 1.604226444358185710e-03, 1.602565608428042345e-03, 1.600902255690198582e-03, 1.599236388977702235e-03, 1.597568011127757951e-03, 1.595897124981298515e-03, 1.594223733383162440e-03, 1.592547839182348324e-03, 1.590869445231544088e-03, 1.589188554387389353e-03, 1.587505169510508183e-03, 1.585819293465383969e-03, 1.584130929120451366e-03, 1.582440079347906779e-03, 1.580746747023960763e-03, 1.579050935028707484e-03, 1.577352646246005458e-03, 1.575651883563698947e-03, 1.573948649873501728e-03, 1.572242948070881087e-03, 1.570534781055272708e-03, 1.568824151729979839e-03, 1.567111063002022591e-03, 1.565395517782428502e-03, 1.563677518985915954e-03, 1.561957069531147869e-03, 1.560234172340616140e-03, 1.558508830340526704e-03, 1.556781046461015944e-03, 1.555050823636040976e-03, 1.553318164803250837e-03, 1.551583072904213741e-03, 1.549845550884301065e-03, 1.548105601692559849e-03, 1.546363228281950018e-03, 1.544618433609208858e-03, 1.542871220634747147e-03, 1.541121592322854941e-03, 1.539369551641565827e-03, 1.537615101562707018e-03, 1.535858245061798083e-03, 1.534098985118070033e-03, 1.532337324714735504e-03, 1.530573266838519512e-03, 1.528806814479932025e-03, 1.527037970633288123e-03, 1.525266738296635798e-03, 1.523493120471634300e-03, 1.521717120163773584e-03, 1.519938740382222736e-03, 1.518157984139898060e-03, 1.516374854453306307e-03, 1.514589354342773435e-03, 1.512801486832308657e-03, 1.511011254949537865e-03, 1.509218661725738545e-03, 1.507423710196092613e-03, 1.505626403399186594e-03, 1.503826744377474364e-03, 1.502024736176909604e-03, 1.500220381847222921e-03, 1.498413684441807789e-03, 1.496604647017575054e-03, 1.494793272635209667e-03, 1.492979564359017599e-03, 1.491163525256837151e-03, 1.489345158400243651e-03, 1.487524466864436484e-03, 1.485701453728108766e-03, 1.483876122073691075e-03, 1.482048474987222647e-03, 1.480218515558211949e-03, 1.478386246879899923e-03, 1.476551672049106027e-03, 1.474714794166122637e-03, 1.472875616334979590e-03, 1.471034141663126729e-03, 1.469190373261698886e-03, 1.467344314245395314e-03, 1.465495967732360644e-03, 1.463645336844409750e-03, 1.461792424706910218e-03, 1.459937234448650941e-03, 1.458079769202075878e-03, 1.456220032103173459e-03, 1.454358026291328702e-03, 1.452493754909576704e-03, 1.450627221104424172e-03, 1.448758428025938554e-03, 1.446887378827605352e-03, 1.445014076666376480e-03, 1.443138524702941312e-03, 1.441260726101240962e-03, 1.439380684028736951e-03, 1.437498401656450665e-03, 1.435613882158888336e-03, 1.433727128713897705e-03, 1.431838144502910019e-03, 1.429946932710784123e-03, 1.428053496525860016e-03, 1.426157839139819859e-03, 1.424259963747898528e-03, 1.422359873548775843e-03, 1.420457571744473567e-03, 1.418553061540403113e-03, 1.416646346145651993e-03, 1.414737428772426314e-03, 1.412826312636512654e-03, 1.410913000957098084e-03, 1.408997496956647865e-03, 1.407079803861186699e-03, 1.405159924899968037e-03, 1.403237863305737982e-03, 1.401313622314644212e-03, 1.399387205166063809e-03, 1.397458615102873660e-03, 1.395527855371307344e-03, 1.393594929220832827e-03, 1.391659839904397936e-03, 1.389722590678296125e-03, 1.387783184802023582e-03, 1.385841625538548330e-03, 1.383897916154162551e-03, 1.381952059918361599e-03, 1.380004060104119377e-03, 1.378053919987517117e-03, 1.376101642848237550e-03, 1.374147231969008714e-03, 1.372190690635900160e-03, 1.370232022138356560e-03, 1.368271229769108368e-03, 1.366308316824029791e-03, 1.364343286602411357e-03, 1.362376142406802057e-03, 1.360406887542887260e-03, 1.358435525319738298e-03, 1.356462059049639212e-03, 1.354486492048157876e-03, 1.352508827633973820e-03, 1.350529069129136495e-03, 1.348547219858926491e-03, 1.346563283151744513e-03, 1.344577262339193566e-03, 1.342589160756325721e-03, 1.340598981741111719e-03, 1.338606728634935805e-03, 1.336612404782200640e-03, 1.334616013530636304e-03, 1.332617558231159998e-03, 1.330617042237725121e-03, 1.328614468907601863e-03, 1.326609841601221517e-03, 1.324603163682053089e-03, 1.322594438516844001e-03, 1.320583669475507106e-03, 1.318570859930951345e-03, 1.316556013259373610e-03, 1.314539132840095029e-03, 1.312520222055439320e-03, 1.310499284291024875e-03, 1.308476322935410007e-03, 1.306451341380403253e-03, 1.304424343020919169e-03, 1.302395331254781446e-03, 1.300364309483237465e-03, 1.298331281110348548e-03, 1.296296249543300253e-03, 1.294259218192450730e-03, 1.292220190471229024e-03, 1.290179169795987188e-03, 1.288136159586294105e-03, 1.286091163264742061e-03, 1.284044184256865869e-03, 1.281995225991361875e-03, 1.279944291899928364e-03, 1.277891385417328877e-03, 1.275836509981278372e-03, 1.273779669032452325e-03, 1.271720866014818289e-03, 1.269660104375082725e-03, 1.267597387563000654e-03, 1.265532719031407533e-03, 1.263466102236092837e-03, 1.261397540635878336e-03, 1.259327037692420338e-03, 1.257254596870493318e-03, 1.255180221637838562e-03, 1.253103915465023435e-03, 1.251025681825703980e-03, 1.248945524196493507e-03, 1.246863446056859165e-03, 1.244779450889156635e-03, 1.242693542178956254e-03, 1.240605723414428064e-03, 1.238515998086900599e-03, 1.236424369690428951e-03, 1.234330841722118500e-03, 1.232235417681980727e-03, 1.230138101072786186e-03, 1.228038895400335563e-03, 1.225937804173320243e-03, 1.223834830903171170e-03, 1.221729979104327303e-03, 1.219623252294110057e-03, 1.217514653992554608e-03, 1.215404187722699371e-03, 1.213291857010429008e-03, 1.211177665384340204e-03, 1.209061616376001878e-03, 1.206943713519825724e-03, 1.204823960352902935e-03, 1.202702360415345726e-03, 1.200578917249831316e-03, 1.198453634402193036e-03, 1.196326515420780652e-03, 1.194197563856784754e-03, 1.192066783264288153e-03, 1.189934177200159190e-03, 1.187799749223905155e-03, 1.185663502897952660e-03, 1.183525441787490647e-03, 1.181385569460338550e-03, 1.179243889487207155e-03, 1.177100405441515799e-03, 1.174955120899475207e-03, 1.172808039439937437e-03, 1.170659164644446189e-03, 1.168508500097551871e-03, 1.166356049386248466e-03, 1.164201816100286866e-03, 1.162045803832219976e-03, 1.159888016177266536e-03, 1.157728456733379862e-03, 1.155567129101073504e-03, 1.153404036883673650e-03, 1.151239183687203550e-03, 1.149072573120203970e-03, 1.146904208794033084e-03, 1.144734094322708180e-03, 1.142562233322757127e-03, 1.140388629413508935e-03, 1.138213286216922240e-03, 1.136036207357460403e-03, 1.133857396462361906e-03, 1.131676857161483364e-03, 1.129494593087164217e-03, 1.127310607874547647e-03, 1.125124905161182468e-03, 1.122937488587381341e-03, 1.120748361796032556e-03, 1.118557528432483376e-03, 1.116364992144806530e-03, 1.114170756583645174e-03, 1.111974825402073678e-03, 1.109777202255873450e-03, 1.107577890803385480e-03, 1.105376894705363978e-03, 1.103174217625245033e-03, 1.100969863229015648e-03, 1.098763835185042215e-03, 1.096556137164422665e-03, 1.094346772840526115e-03, 1.092135745889584193e-03, 1.089923059990044853e-03, 1.087708718822856004e-03, 1.085492726071765395e-03, 1.083275085422707616e-03, 1.081055800564164476e-03, 1.078834875187184962e-03, 1.076612312985245155e-03, 1.074388117654342554e-03, 1.072162292892781411e-03, 1.069934842401473697e-03, 1.067705769883776261e-03, 1.065475079045344895e-03, 1.063242773594412754e-03, 1.061008857241654618e-03, 1.058773333700059388e-03, 1.056536206684992969e-03, 1.054297479914525701e-03, 1.052057157108785522e-03, 1.049815241990556883e-03, 1.047571738284805215e-03, 1.045326649719046427e-03, 1.043079980023161072e-03, 1.040831732929276389e-03, 1.038581912172018267e-03, 1.036330521488385481e-03, 1.034077564617578602e-03, 1.031823045301307699e-03, 1.029566967283610185e-03, 1.027309334310727877e-03, 1.025050150131371317e-03, 1.022789418496582951e-03, 1.020527143159575580e-03, 1.018263327876070632e-03, 1.015997976403897659e-03, 1.013731092503333906e-03, 1.011462679936960549e-03, 1.009192742469431758e-03, 1.006921283868048023e-03, 1.004648307902073542e-03, 1.002373818343097909e-03, 1.000097818965073413e-03, 9.978203135442081321e-04, 9.955413058588087269e-04, 9.932607996895794628e-04, 9.909787988194112239e-04, 9.886953070334751886e-04, 9.864103281190189990e-04, 9.841238658656594959e-04, 9.818359240652270274e-04, 9.795465065116576789e-04, 9.772556170010355571e-04, 9.749632593319449390e-04, 9.726694373048515177e-04, 9.703741547224532501e-04, 9.680774153897279532e-04, 9.657792231137686144e-04, 9.634795817038798848e-04, 9.611784949713765265e-04, 9.588759667298683408e-04, 9.565720007951147765e-04, 9.542666009848540598e-04, 9.519597711191144689e-04, 9.496515150200429212e-04, 9.473418365118078293e-04, 9.450307394206367223e-04, 9.427182275751685037e-04, 9.404043048057844981e-04, 9.380889749451608523e-04, 9.357722418280649225e-04, 9.334541092911903667e-04, 9.311345811735054993e-04, 9.288136613158444379e-04, 9.264913535612570843e-04, 9.241676617548455182e-04, 9.218425897436116666e-04, 9.195161413767464608e-04, 9.171883205054822763e-04, 9.148591309829277006e-04, 9.125285766643605927e-04, 9.101966614070867035e-04, 9.078633890702570959e-04, 9.055287635151916710e-04, 9.031927886051979975e-04, 9.008554682054305826e-04, 8.985168061832268663e-04, 8.961768064076461099e-04, 8.938354727500855482e-04, 8.914928090835932224e-04, 8.891488192832320550e-04, 8.868035072261189894e-04, 8.844568767913179794e-04, 8.821089318596768165e-04, 8.797596763141356940e-04, 8.774091140395066804e-04, 8.750572489225767183e-04, 8.727040848518910010e-04, 8.703496257180589344e-04, 8.679938754135885790e-04, 8.656368378327849522e-04, 8.632785168717851563e-04, 8.609189164289205018e-04, 8.585580404040924407e-04, 8.561958926990616151e-04, 8.538324772177760449e-04, 8.514677978656646617e-04, 8.491018585502737356e-04, 8.467346631807845135e-04, 8.443662156683655849e-04, 8.419965199260274905e-04, 8.396255798684376485e-04, 8.372533994122478927e-04, 8.348799824759109162e-04, 8.325053329795331462e-04, 8.301294548451788619e-04, 8.277523519967020351e-04, 8.253740283595848923e-04, 8.229944878612448526e-04, 8.206137344308744993e-04, 8.182317719992724444e-04, 8.158486044992089214e-04, 8.134642358649978510e-04, 8.110786700328547361e-04, 8.086919109407385850e-04, 8.063039625281826677e-04, 8.039148287366037300e-04, 8.015245135091442425e-04, 7.991330207904981690e-04, 7.967403545272254937e-04, 7.943465186675925183e-04, 7.919515171613930767e-04, 7.895553539602763980e-04, 7.871580330175187738e-04, 7.847595582881220031e-04, 7.823599337286494615e-04, 7.799591632972779258e-04, 7.775572509541562281e-04, 7.751542006607638419e-04, 7.727500163802232406e-04, 7.703447020776110635e-04, 7.679382617193142085e-04, 7.655306992733967256e-04, 7.631220187096470885e-04, 7.607122239994081915e-04, 7.583013191156789392e-04, 7.558893080329001169e-04, 7.534761947272575330e-04, 7.510619831765227503e-04, 7.486466773598826488e-04, 7.462302812582603502e-04, 7.438127988541367577e-04, 7.413942341313939973e-04, 7.389745910756250662e-04, 7.365538736739681664e-04, 7.341320859149372442e-04, 7.317092317887883418e-04, 7.292853152870980597e-04, 7.268603404031136455e-04, 7.244343111315955678e-04, 7.220072314686502239e-04, 7.195791054120425148e-04, 7.171499369610295294e-04, 7.147197301161928177e-04, 7.122884888797543276e-04, 7.098562172554077031e-04, 7.074229192481501245e-04, 7.049885988645994373e-04, 7.025532601128271857e-04, 7.001169070021900183e-04, 6.976795435436434567e-04, 6.952411737495213691e-04, 6.928018016336391855e-04, 6.903614312111251965e-04, 6.879200664984647887e-04, 6.854777115138711331e-04, 6.830343702766397598e-04, 6.805900468075068866e-04, 6.781447451287062316e-04, 6.756984692638517021e-04, 6.732512232377688014e-04, 6.708030110768085051e-04, 6.683538368086315053e-04, 6.659037044623045956e-04, 6.634526180680770007e-04, 6.610005816577065041e-04, 6.585475992642783865e-04, 6.560936749220994992e-04, 6.536388126667400057e-04, 6.511830165354135034e-04, 6.487262905662598235e-04, 6.462686387989869871e-04, 6.438100652743828809e-04, 6.413505740346851867e-04, 6.388901691234123541e-04, 6.364288545851924054e-04, 6.339666344660854855e-04, 6.315035128134094140e-04, 6.290394936755779216e-04, 6.265745811024082393e-04, 6.241087791449663816e-04, 6.216420918553820741e-04, 6.191745232871808443e-04, 6.167060774951057785e-04, 6.142367585349512056e-04, 6.117665704638844881e-04, 6.092955173402709234e-04, 6.068236032235086201e-04, 6.043508321744016799e-04, 6.018772082547114467e-04, 5.994027355275450848e-04, 5.969274180571718059e-04, 5.944512599088613240e-04, 5.919742651491974057e-04, 5.894964378459136142e-04, 5.870177820677214631e-04, 5.845383018846283044e-04, 5.820580013677709033e-04, 5.795768845892403402e-04, 5.770949556224101978e-04, 5.746122185417020488e-04, 5.721286774226960444e-04, 5.696443363419564660e-04, 5.671591993770761777e-04, 5.646732706070661800e-04, 5.621865541116751646e-04, 5.596990539717753817e-04, 5.572107742694095865e-04, 5.547217190876805584e-04, 5.522318925105640765e-04, 5.497412986232468653e-04, 5.472499415118938166e-04, 5.447578252637519641e-04, 5.422649539669228014e-04, 5.397713317106878680e-04, 5.372769625853364688e-04, 5.347818506820463044e-04, 5.322860000929345364e-04, 5.297894149114383425e-04, 5.272920992315842728e-04, 5.247940571485961618e-04, 5.222952927586682051e-04, 5.197958101587805361e-04, 5.172956134470966952e-04, 5.147947067225000246e-04, 5.122930940849818125e-04, 5.097907796354694474e-04, 5.072877674756441635e-04, 5.047840617082806130e-04, 5.022796664370623347e-04, 4.997745857664131607e-04, 4.972688238018265969e-04, 4.947623846496845444e-04, 4.922552724170914168e-04, 4.897474912121988584e-04, 4.872390451440270680e-04, 4.847299383223022768e-04, 4.822201748578277083e-04, 4.797097588619798035e-04, 4.771986944473773366e-04, 4.746869857271378691e-04, 4.721746368152697428e-04, 4.696616518267184297e-04, 4.671480348772500887e-04, 4.646337900832716423e-04, 4.621189215621686135e-04, 4.596034334321212459e-04, 4.570873298119356386e-04, 4.545706148213726392e-04, 4.520532925809121381e-04, 4.495353672118659882e-04, 4.470168428361405107e-04, 4.444977235765706458e-04, 4.419780135567411678e-04, 4.394577169008715973e-04, 4.369368377338612498e-04, 4.344153801816812285e-04, 4.318933483706303912e-04, 4.293707464280106453e-04, 4.268475784816059887e-04, 4.243238486600769423e-04, 4.217995610927800852e-04, 4.192747199095967501e-04, 4.167493292412587720e-04, 4.142233932191758837e-04, 4.116969159752608331e-04, 4.091699016422589816e-04, 4.066423543535726626e-04, 4.041142782430860291e-04, 4.015856774454969278e-04, 3.990565560961384394e-04, 3.965269183308069785e-04, 3.939967682861463720e-04, 3.914661100991928197e-04, 3.889349479077600026e-04, 3.864032858502678878e-04, 3.838711280655043661e-04, 3.813384786932432478e-04, 3.788053418735044570e-04, 3.762717217469378392e-04, 3.737376224548762875e-04, 3.712030481392175640e-04, 3.686680029422433470e-04, 3.661324910069566887e-04, 3.635965164768996524e-04, 3.610600834959829301e-04, 3.585231962088166325e-04, 3.559858587604733371e-04, 3.534480752966004109e-04, 3.509098499632390031e-04, 3.483711869068769544e-04, 3.458320902748369409e-04, 3.432925642145879521e-04, 3.407526128741386389e-04, 3.382122404020873499e-04, 3.356714509474430751e-04, 3.331302486597299091e-04, 3.305886376887602900e-04, 3.280466221849627538e-04, 3.255042062992067817e-04, 3.229613941826264541e-04, 3.204181899869520001e-04, 3.178745978643376805e-04, 3.153306219672339056e-04, 3.127862664484461078e-04, 3.102415354615163808e-04, 3.076964331599861676e-04, 3.051509636980654847e-04, 3.026051312301185217e-04, 3.000589399110531420e-04, 2.975123938961428014e-04, 2.949654973408520468e-04, 2.924182544011669801e-04, 2.898706692334215699e-04, 2.873227459941168601e-04, 2.847744888402584823e-04, 2.822259019291778167e-04, 2.796769894183551586e-04, 2.771277554657527857e-04, 2.745782042296396417e-04, 2.720283398684109804e-04, 2.694781665409267985e-04, 2.669276884063309912e-04, 2.643769096238774460e-04, 2.618258343533161813e-04, 2.592744667543801394e-04, 2.567228109874569579e-04, 2.541708712128461288e-04, 2.516186515911471430e-04, 2.490661562833125075e-04, 2.465133894505245802e-04, 2.439603552540195225e-04, 2.414070578554224804e-04, 2.388535014165690709e-04, 2.362996900993267861e-04, 2.337456280659339157e-04, 2.311913194787594496e-04, 2.286367685004143176e-04, 2.260819792935729838e-04, 2.235269560210219103e-04, 2.209717028460529600e-04, 2.184162239317737357e-04, 2.158605234414972965e-04, 2.133046055387934677e-04, 2.107484743873133356e-04, 2.081921341508925717e-04, 2.056355889933199018e-04, 2.030788430786689529e-04, 2.005219005711254311e-04, 1.979647656348036753e-04, 1.954074424340862830e-04, 1.928499351334439971e-04, 1.902922478972592253e-04, 1.877343848901602183e-04, 1.851763502768435856e-04, 1.826181482218971097e-04, 1.800597828901340605e-04, 1.775012584464169302e-04, 1.749425790554777005e-04, 1.723837488823112721e-04, 1.698247720917123204e-04, 1.672656528486679670e-04, 1.647063953181799971e-04, 1.621470036650859395e-04, 1.595874820543957380e-04, 1.570278346511133735e-04, 1.544680656200585667e-04, 1.519081791262034227e-04, 1.493481793344931044e-04, 1.467880704096692971e-04, 1.442278565166042509e-04, 1.416675418201246797e-04, 1.391071304848319999e-04, 1.365466266754961945e-04, 1.339860345565347993e-04, 1.314253582926916137e-04, 1.288646020482875441e-04, 1.263037699875558661e-04, 1.237428662749792490e-04, 1.211818950745965846e-04, 1.186208605503968509e-04, 1.160597668663688494e-04, 1.134986181863231524e-04, 1.109374186740001846e-04, 1.083761724928344764e-04, 1.058148838062904413e-04, 1.032535567776846216e-04, 1.006921955700078108e-04, 9.813080434625999103e-05, 9.556938726927373016e-05, 9.300794850159174807e-05, 9.044649220551784718e-05, 8.788502254351087078e-05, 8.532354367743359496e-05, 8.276205976923274013e-05, 8.020057498041829652e-05, 7.763909347245524643e-05, 7.507761940658655463e-05, 7.251615694365522375e-05, 6.995471024443957017e-05, 6.739328346947538783e-05, 6.483188077887773243e-05, 6.227050633267729521e-05, 5.970916429064170608e-05, 5.714785881209813104e-05, 5.458659405626844650e-05, 5.202537418209150468e-05, 4.946420334804556160e-05, 4.690308571254048724e-05, 4.434202543345457402e-05, 4.178102666852724162e-05, 3.922009357518162762e-05, 3.665923031028882096e-05, 3.409844103078931305e-05, 3.153772989294427491e-05, 2.897710105272834324e-05, 2.641655866587970717e-05, 2.385610688777974831e-05, 2.129574987327442518e-05, 1.873549177701060967e-05, 1.617533675320068304e-05, 1.361528895573001086e-05, 1.105535253792195402e-05, 8.495531652873659703e-06, 5.935830453277999837e-06, 3.376253091302701157e-06, 8.168037186407268456e-07, -1.742513513096859953e-06, -4.301694453072648250e-06, -6.860734950830018763e-06, -9.419630856242730530e-06, -1.197837801969298258e-05, -1.453697229196392548e-05, -1.709540952447461890e-05, -1.965368556894433303e-05, -2.221179627757071347e-05, -2.476973750320726682e-05, -2.732750509902812197e-05, -2.988509491870541915e-05, -3.244250281653081509e-05, -3.499972464736452891e-05, -3.755675626624304053e-05, -4.011359352912722062e-05, -4.267023229222466363e-05, -4.522666841250951524e-05, -4.778289774733055368e-05, -5.033891615458789429e-05, -5.289471949291193033e-05, -5.545030362132715579e-05, -5.800566439943011682e-05, -6.056079768756733611e-05, -6.311569934649956931e-05, -6.567036523758000728e-05, -6.822479122293131947e-05, -7.077897316511143507e-05, -7.333290692728962421e-05, -7.588658837342570306e-05, -7.844001336793412083e-05, -8.099317777586125401e-05, -8.354607746306420477e-05, -8.609870829581668000e-05, -8.865106614133049249e-05, -9.120314686707774491e-05, -9.375494634153781791e-05, -9.630646043380551244e-05, -9.885768501354066137e-05, -1.014086159510892621e-04, -1.039592491176605129e-04, -1.065095803849916325e-04, -1.090596056255826839e-04, -1.116093207125896453e-04, -1.141587215200574326e-04, -1.167078039225872925e-04, -1.192565637955118614e-04, -1.218049970150173947e-04, -1.243530994580923494e-04, -1.269008670021364200e-04, -1.294482955256499835e-04, -1.319953809078993647e-04, -1.345421190285807204e-04, -1.370885057685691420e-04, -1.396345370092401882e-04, -1.421802086329894085e-04, -1.447255165228408368e-04, -1.472704565626238257e-04, -1.498150246371512072e-04, -1.523592166318838684e-04, -1.549030284331088310e-04, -1.574464559281149199e-04, -1.599894950048601563e-04, -1.625321415521481039e-04, -1.650743914598043493e-04, -1.676162406183432188e-04, -1.701576849191451532e-04, -1.726987202546311840e-04, -1.752393425178759535e-04, -1.777795476030661433e-04, -1.803193314051085348e-04, -1.828586898198100686e-04, -1.853976187440527256e-04, -1.879361140754598643e-04, -1.904741717125738401e-04, -1.930117875550308869e-04, -1.955489575032309780e-04, -1.980856774585103492e-04, -2.006219433233213142e-04, -2.031577510008966496e-04, -2.056930963954855987e-04, -2.082279754122433909e-04, -2.107623839574122230e-04, -2.132963179382666417e-04, -2.158297732627270258e-04, -2.183627458400437451e-04, -2.208952315804672644e-04, -2.234272263949099268e-04, -2.259587261956361301e-04, -2.284897268958701970e-04, -2.310202244097484545e-04, -2.335502146524938980e-04, -2.360796935403100213e-04, -2.386086569906141366e-04, -2.411371009217047688e-04, -2.436650212529365095e-04, -2.461924139048967970e-04, -2.487192747990754236e-04, -2.512455998580379545e-04, -2.537713850056019099e-04, -2.562966261665066531e-04, -2.588213192665858326e-04, -2.613454602329486607e-04, -2.638690449935860772e-04, -2.663920694778296920e-04, -2.689145296159670020e-04, -2.714364213394137248e-04, -2.739577405808896562e-04, -2.764784832740892358e-04, -2.789986453538549648e-04, -2.815182227563543479e-04, -2.840372114187460131e-04, -2.865556072793599062e-04, -2.890734062778677277e-04, -2.915906043549546358e-04, -2.941071974524941826e-04, -2.966231815137238470e-04, -2.991385524828551004e-04, -3.016533063055899214e-04, -3.041674389284510839e-04, -3.066809462995191433e-04, -3.091938243681024599e-04, -3.117060690844033729e-04, -3.142176764002049881e-04, -3.167286422684794018e-04, -3.192389626433407546e-04, -3.217486334801612953e-04, -3.242576507357485395e-04, -3.267660103680158890e-04, -3.292737083362108023e-04, -3.317807406008110361e-04, -3.342871031237548761e-04, -3.367927918681106175e-04, -3.392978027982528023e-04, -3.418021318799801807e-04, -3.443057750804644820e-04, -3.468087283678668786e-04, -3.493109877120719907e-04, -3.518125490840217522e-04, -3.543134084562275343e-04, -3.568135618023809161e-04, -3.593130050975332289e-04, -3.618117343182664807e-04, -3.643097454423647888e-04, -3.668070344489879060e-04, -3.693035973188484879e-04, -3.717994300338796224e-04, -3.742945285774100365e-04, -3.767888889343391952e-04, -3.792825070908088965e-04, -3.817753790343735997e-04, -3.842675007541789390e-04, -3.867588682406305003e-04, -3.892494774855703829e-04, -3.917393244824453054e-04, -3.942284052259304957e-04, -3.967167157123748108e-04, -3.992042519394241925e-04, -4.016910099061873343e-04, -4.041769856134141948e-04, -4.066621750631703577e-04, -4.091465742590036738e-04, -4.116301792061231543e-04, -4.141129859110704572e-04, -4.165949903818909209e-04, -4.190761886283100174e-04, -4.215565766614031047e-04, -4.240361504938265245e-04, -4.265149061397114044e-04, -4.289928396148395156e-04, -4.314699469365877618e-04, -4.339462241235548341e-04, -4.364216671962244175e-04, -4.388962721765916290e-04, -4.413700350881057176e-04, -4.438429519557956148e-04, -4.463150188064357094e-04, -4.487862316682245437e-04, -4.512565865710094605e-04, -4.537260795461849593e-04, -4.561947066269175051e-04, -4.586624638478218404e-04, -4.611293472451331019e-04, -4.635953528568241859e-04, -4.660604767225575004e-04, -4.685247148832983395e-04, -4.709880633820494843e-04, -4.734505182632418809e-04, -4.759120755729664975e-04, -4.783727313591427011e-04, -4.808324816711434481e-04, -4.832913225602340616e-04, -4.857492500792045783e-04, -4.882062602825288007e-04, -4.906623492265496959e-04, -4.931175129691382514e-04, -4.955717475698820720e-04, -4.980250490902462211e-04, -5.004774135932519175e-04, -5.029288371436488152e-04, -5.053793158080866323e-04, -5.078288456547880476e-04, -5.102774227537262928e-04, -5.127250431767876740e-04, -5.151717029974048952e-04, -5.176173982910425636e-04, -5.200621251345596786e-04, -5.225058796069204353e-04, -5.249486577888188730e-04, -5.273904557626274848e-04, -5.298312696125212495e-04, -5.322710954246385280e-04, -5.347099292867619818e-04, -5.371477672884969251e-04, -5.395846055214258228e-04, -5.420204400788030882e-04, -5.444552670557686706e-04, -5.468890825492493928e-04, -5.493218826581278700e-04, -5.517536634831964309e-04, -5.541844211267762379e-04, -5.566141516933871070e-04, -5.590428512894150912e-04, -5.614705160227995802e-04, -5.638971420037488733e-04, -5.663227253440862976e-04, -5.687472621577472059e-04, -5.711707485604162029e-04, -5.735931806696784995e-04, -5.760145546052006498e-04, -5.784348664884090847e-04, -5.808541124426578380e-04, -5.832722885933973572e-04, -5.856893910678561809e-04, -5.881054159952099668e-04, -5.905203595067488919e-04, -5.929342177355583551e-04, -5.953469868166925581e-04, -5.977586628873376778e-04, -6.001692420864375996e-04, -6.025787205551419098e-04, -6.049870944364257744e-04, -6.073943598752574481e-04, -6.098005130187725059e-04, -6.122055500159523768e-04, -6.146094670177939135e-04, -6.170122601774731064e-04, -6.194139256500348937e-04, -6.218144595925537317e-04, -6.242138581643065249e-04, -6.266121175264539791e-04, -6.290092338422077854e-04, -6.314052032770009482e-04, -6.338000219981629584e-04, -6.361936861751511622e-04, -6.385861919794420154e-04, -6.409775355847078084e-04, -6.433677131667537826e-04, -6.457567209031635962e-04, -6.481445549739394373e-04, -6.505312115611383821e-04, -6.529166868488226307e-04, -6.553009770232262566e-04, -6.576840782726511240e-04, -6.600659867876967381e-04, -6.624466987609324911e-04, -6.648262103870769893e-04, -6.672045178631510337e-04, -6.695816173881771879e-04, -6.719575051633340599e-04, -6.743321773920738296e-04, -6.767056302800796399e-04, -6.790778600348902454e-04, -6.814488628666039854e-04, -6.838186349872458266e-04, -6.861871726112473389e-04, -6.885544719550858736e-04, -6.909205292374491448e-04, -6.932853406793976431e-04, -6.956489025040557463e-04, -6.980112109367738078e-04, -7.003722622052985930e-04, -7.027320525394513797e-04, -7.050905781713027315e-04, -7.074478353353335020e-04, -7.098038202681232348e-04, -7.121585292085146372e-04, -7.145119583977780535e-04, -7.168641040793011666e-04, -7.192149624987539047e-04, -7.215645299042516142e-04, -7.239128025459909844e-04, -7.262597766767330595e-04, -7.286054485511768951e-04, -7.309498144266429309e-04, -7.332928705627270215e-04, -7.356346132212312648e-04, -7.379750386662949730e-04, -7.403141431645470037e-04, -7.426519229848013151e-04, -7.449883743982156940e-04, -7.473234936784645772e-04, -7.496572771014173688e-04, -7.519897209453649299e-04, -7.543208214909146283e-04, -7.566505750211583890e-04, -7.589789778216187019e-04, -7.613060261798951711e-04, -7.636317163862946537e-04, -7.659560447334752076e-04, -7.682790075163896046e-04, -7.706006010324651994e-04, -7.729208215814846678e-04, -7.752396654658183506e-04, -7.775571289901089681e-04, -7.798732084614317566e-04, -7.821879001894621944e-04, -7.845012004861661370e-04, -7.868131056659660250e-04, -7.891236120458914802e-04, -7.914327159452899316e-04, -7.937404136859766693e-04, -7.960467015923971493e-04, -7.983515759913256942e-04, -8.006550332120272555e-04, -8.029570695864100697e-04, -8.052576814486835923e-04, -8.075568651357647489e-04, -8.098546169869256768e-04, -8.121509333439603682e-04, -8.144458105513432879e-04, -8.167392449559128954e-04, -8.190312329070517303e-04, -8.213217707568377674e-04, -8.236108548597341180e-04, -8.258984815727632607e-04, -8.281846472556567704e-04, -8.304693482705570538e-04, -8.327525809821735830e-04, -8.350343417579521397e-04, -8.373146269677042347e-04, -8.395934329840930473e-04, -8.418707561820132617e-04, -8.441465929392663083e-04, -8.464209396362027934e-04, -8.486937926556856367e-04, -8.509651483831925283e-04, -8.532350032069733548e-04, -8.555033535177567058e-04, -8.577701957089514271e-04, -8.600355261765539215e-04, -8.622993413193582668e-04, -8.645616375386575188e-04, -8.668224112384009198e-04, -8.690816588253496991e-04, -8.713393767087796761e-04, -8.735955613006417221e-04, -8.758502090156673617e-04, -8.781033162713162976e-04, -8.803548794874452950e-04, -8.826048950869513302e-04, -8.848533594951860136e-04, -8.871002691404073761e-04, -8.893456204534327079e-04, -8.915894098678044414e-04, -8.938316338199314226e-04, -8.960722887488092956e-04, -8.983113710961618823e-04, -9.005488773066096676e-04, -9.027848038273670900e-04, -9.050191471084001850e-04, -9.072519036025883474e-04, -9.094830697654107806e-04, -9.117126420551333044e-04, -9.139406169329346644e-04, -9.161669908625748749e-04, -9.183917603108059146e-04, -9.206149217470145901e-04, -9.228364716433876602e-04, -9.250564064751156659e-04, -9.272747227198446492e-04, -9.294914168583384923e-04, -9.317064853741227571e-04, -9.339199247534566047e-04, -9.361317314854265782e-04, -9.383419020621002350e-04, -9.405504329782453377e-04, -9.427573207315207825e-04, -9.449625618223909474e-04, -9.471661527543264857e-04, -9.493680900335153871e-04, -9.515683701690097777e-04, -9.537669896728406295e-04, -9.559639450599636580e-04, -9.581592328479304841e-04, -9.603528495574752957e-04, -9.625447917121816724e-04, -9.647350558384361818e-04, -9.669236384655825528e-04, -9.691105361258295185e-04, -9.712957453544538875e-04, -9.734792626895048817e-04, -9.756610846719627550e-04, -9.778412078458914494e-04, -9.800196287581511723e-04, -9.821963439585405364e-04, -9.843713499999172303e-04, -9.865446434381376292e-04, -9.887162208317302331e-04, -9.908860787425323099e-04, -9.930542137351111489e-04, -9.952206223772092335e-04, -9.973853012394072719e-04, -9.995482468952720818e-04, -1.001709455921510330e-03, -1.003868924897691629e-03, -1.006026650406383408e-03, -1.008182629033312679e-03, -1.010336857367080243e-03, -1.012489331999304448e-03, -1.014640049524777972e-03, -1.016789006541181806e-03, -1.018936199649236613e-03, -1.021081625452848656e-03, -1.023225280558827041e-03, -1.025367161577040928e-03, -1.027507265120555487e-03, -1.029645587805316179e-03, -1.031782126250577018e-03, -1.033916877078328109e-03, -1.036049836913928391e-03, -1.038181002385781026e-03, -1.040310370125277235e-03, -1.042437936766910361e-03, -1.044563698948420497e-03, -1.046687653310508044e-03, -1.048809796497033198e-03, -1.050930125154929872e-03, -1.053048635934397377e-03, -1.055165325488620701e-03, -1.057280190473916656e-03, -1.059393227549841653e-03, -1.061504433379138138e-03, -1.063613804627416273e-03, -1.065721337963724657e-03, -1.067827030060275375e-03, -1.069930877592158202e-03, -1.072032877237964667e-03, -1.074133025679228828e-03, -1.076231319600851836e-03, -1.078327755690783405e-03, -1.080422330640158418e-03, -1.082515041143456737e-03, -1.084605883898216326e-03, -1.086694855605178532e-03, -1.088781952968447247e-03, -1.090867172695195089e-03, -1.092950511495816924e-03, -1.095031966084084691e-03, -1.097111533176854453e-03, -1.099189209494224467e-03, -1.101264991759673536e-03, -1.103338876699747452e-03, -1.105410861044427411e-03, -1.107480941526815810e-03, -1.109549114883280011e-03, -1.111615377853596978e-03, -1.113679727180670728e-03, -1.115742159610696050e-03, -1.117802671893282102e-03, -1.119861260781195023e-03, -1.121917923030493021e-03, -1.123972655400674696e-03, -1.126025454654398230e-03, -1.128076317557685868e-03, -1.130125240879828723e-03, -1.132172221393523389e-03, -1.134217255874843747e-03, -1.136260341102917010e-03, -1.138301473860477532e-03, -1.140340650933609201e-03, -1.142377869111454438e-03, -1.144413125186790562e-03, -1.146446415955698021e-03, -1.148477738217535240e-03, -1.150507088775057883e-03, -1.152534464434363994e-03, -1.154559862005049035e-03, -1.156583278299957605e-03, -1.158604710135326338e-03, -1.160624154330907503e-03, -1.162641607709722670e-03, -1.164657067098186748e-03, -1.166670529326261068e-03, -1.168681991227183857e-03, -1.170691449637597083e-03, -1.172698901397715814e-03, -1.174704343350984302e-03, -1.176707772344468906e-03, -1.178709185228527835e-03, -1.180708578856967282e-03, -1.182705950087167401e-03, -1.184701295779828608e-03, -1.186694612799099298e-03, -1.188685898012734358e-03, -1.190675148291803513e-03, -1.192662360510858945e-03, -1.194647531548058460e-03, -1.196630658284904411e-03, -1.198611737606381173e-03, -1.200590766401100863e-03, -1.202567741560991088e-03, -1.204542659981695232e-03, -1.206515518562052691e-03, -1.208486314204686943e-03, -1.210455043815720404e-03, -1.212421704304541756e-03, -1.214386292584314873e-03, -1.216348805571698015e-03, -1.218309240186793516e-03, -1.220267593353235825e-03, -1.222223861998338740e-03, -1.224178043052828258e-03, -1.226130133451031013e-03, -1.228080130130781034e-03, -1.230028030033613815e-03, -1.231973830104490276e-03, -1.233917527291952029e-03, -1.235859118548198344e-03, -1.237798600829055802e-03, -1.239735971093669075e-03, -1.241671226305090733e-03, -1.243604363429737410e-03, -1.245535379437810904e-03, -1.247464271302977474e-03, -1.249391036002518761e-03, -1.251315670517462973e-03, -1.253238171832317524e-03, -1.255158536935223855e-03, -1.257076762818076050e-03, -1.258992846476271249e-03, -1.260906784908848643e-03, -1.262818575118616546e-03, -1.264728214111892615e-03, -1.266635698898662581e-03, -1.268541026492686500e-03, -1.270444193911260010e-03, -1.272345198175344220e-03, -1.274244036309695816e-03, -1.276140705342576707e-03, -1.278035202306108996e-03, -1.279927524235954274e-03, -1.281817668171477548e-03, -1.283705631155857615e-03, -1.285591410235842466e-03, -1.287475002461887629e-03, -1.289356404888279770e-03, -1.291235614572897516e-03, -1.293112628577320743e-03, -1.294987443966997978e-03, -1.296860057810955182e-03, -1.298730467182007816e-03, -1.300598669156655682e-03, -1.302464660815221041e-03, -1.304328439241817395e-03, -1.306190001524050459e-03, -1.308049344753532076e-03, -1.309906466025592686e-03, -1.311761362439234921e-03, -1.313614031097232919e-03, -1.315464469106255706e-03, -1.317312673576621950e-03, -1.319158641622469961e-03, -1.321002370361684837e-03, -1.322843856916069982e-03, -1.324683098411082779e-03, -1.326520091975993097e-03, -1.328354834743948566e-03, -1.330187323851951368e-03, -1.332017556440556619e-03, -1.333845529654434413e-03, -1.335671240641907740e-03, -1.337494686555117064e-03, -1.339315864550167344e-03, -1.341134771786827275e-03, -1.342951405428859102e-03, -1.344765762643758411e-03, -1.346577840602859516e-03, -1.348387636481472715e-03, -1.350195147458643167e-03, -1.352000370717272321e-03, -1.353803303444250190e-03, -1.355603942830212270e-03, -1.357402286069666394e-03, -1.359198330361121969e-03, -1.360992072906849065e-03, -1.362783510912999848e-03, -1.364572641589744534e-03, -1.366359462150977793e-03, -1.368143969814704288e-03, -1.369926161802541027e-03, -1.371706035340264232e-03, -1.373483587657512274e-03, -1.375258815987764199e-03, -1.377031717568420830e-03, -1.378802289640928365e-03, -1.380570529450533346e-03, -1.382336434246431199e-03, -1.384100001281861640e-03, -1.385861227813894436e-03, -1.387620111103577509e-03, -1.389376648415876440e-03, -1.391130837019789387e-03, -1.392882674188313484e-03, -1.394632157198169662e-03, -1.396379283330280354e-03, -1.398124049869549183e-03, -1.399866454104609645e-03, -1.401606493328355066e-03, -1.403344164837464587e-03, -1.405079465932768546e-03, -1.406812393918964628e-03, -1.408542946104746670e-03, -1.410271119802934334e-03, -1.411996912330229590e-03, -1.413720321007345742e-03, -1.415441343159121483e-03, -1.417159976114306004e-03, -1.418876217205660263e-03, -1.420590063770095111e-03, -1.422301513148427126e-03, -1.424010562685513494e-03, -1.425717209730360206e-03, -1.427421451635867491e-03, -1.429123285759128408e-03, -1.430822709461178170e-03, -1.432519720107096935e-03, -1.434214315066154651e-03, -1.435906491711549764e-03, -1.437596247420556885e-03, -1.439283579574636299e-03, -1.440968485559206060e-03, -1.442650962763768630e-03, -1.444331008582011924e-03, -1.446008620411610253e-03, -1.447683795654322331e-03, -1.449356531716107293e-03, -1.451026826006920206e-03, -1.452694675940857790e-03, -1.454360078936080139e-03, -1.456023032414929981e-03, -1.457683533803913380e-03, -1.459341580533423267e-03, -1.460997170038198052e-03, -1.462650299757070746e-03, -1.464300967132923853e-03, -1.465949169612816875e-03, -1.467594904647914972e-03, -1.469238169693617762e-03, -1.470878962209386503e-03, -1.472517279658811526e-03, -1.474153119509756657e-03, -1.475786479234134562e-03, -1.477417356308016695e-03, -1.479045748211713085e-03, -1.480671652429742637e-03, -1.482295066450578774e-03, -1.483915987767123450e-03, -1.485534413876279979e-03, -1.487150342279281541e-03, -1.488763770481448326e-03, -1.490374695992283593e-03, -1.491983116325597486e-03, -1.493589028999295614e-03, -1.495192431535487905e-03, -1.496793321460596592e-03, -1.498391696305153686e-03, -1.499987553603897685e-03, -1.501580890895902161e-03, -1.503171705724351982e-03, -1.504759995636661268e-03, -1.506345758184588109e-03, -1.507928990924002535e-03, -1.509509691415025952e-03, -1.511087857222122213e-03, -1.512663485913859525e-03, -1.514236575063239616e-03, -1.515807122247258198e-03, -1.517375125047387436e-03, -1.518940581049323764e-03, -1.520503487842954056e-03, -1.522063843022439765e-03, -1.523621644186313843e-03, -1.525176888937280822e-03, -1.526729574882321324e-03, -1.528279699632807643e-03, -1.529827260804295140e-03, -1.531372256016659940e-03, -1.532914682894039732e-03, -1.534454539064932649e-03, -1.535991822162184042e-03, -1.537526529822725186e-03, -1.539058659688005660e-03, -1.540588209403759377e-03, -1.542115176619953624e-03, -1.543639558990922639e-03, -1.545161354175278706e-03, -1.546680559836067625e-03, -1.548197173640561853e-03, -1.549711193260365884e-03, -1.551222616371525321e-03, -1.552731440654323697e-03, -1.554237663793379184e-03, -1.555741283477744125e-03, -1.557242297400837812e-03, -1.558740703260243742e-03, -1.560236498758130284e-03, -1.561729681600895281e-03, -1.563220249499303960e-03, -1.564708200168591929e-03, -1.566193531328224269e-03, -1.567676240702190220e-03, -1.569156326018740369e-03, -1.570633785010519794e-03, -1.572108615414656097e-03, -1.573580814972560561e-03, -1.575050381430051320e-03, -1.576517312537426430e-03, -1.577981606049289748e-03, -1.579443259724653496e-03, -1.580902271327034973e-03, -1.582358638624248824e-03, -1.583812359388534971e-03, -1.585263431396651858e-03, -1.586711852429633805e-03, -1.588157620273120173e-03, -1.589600732716925152e-03, -1.591041187555504834e-03, -1.592478982587716739e-03, -1.593914115616781434e-03, -1.595346584450364497e-03, -1.596776386900671495e-03, -1.598203520784261498e-03, -1.599627983922166131e-03, -1.601049774139846416e-03, -1.602468889267315288e-03, -1.603885327138950033e-03, -1.605299085593585957e-03, -1.606710162474626977e-03, -1.608118555629848515e-03, -1.609524262911494856e-03, -1.610927282176363067e-03, -1.612327611285745100e-03, -1.613725248105237408e-03, -1.615120190505136893e-03, -1.616512436360078566e-03, -1.617901983549310070e-03, -1.619288829956483725e-03, -1.620672973469746737e-03, -1.622054411981850054e-03, -1.623433143389948000e-03, -1.624809165595711901e-03, -1.626182476505405334e-03, -1.627553074029726909e-03, -1.628920956083885303e-03, -1.630286120587706375e-03, -1.631648565465444950e-03, -1.633008288645886085e-03, -1.634365288062438739e-03, -1.635719561652917856e-03, -1.637071107359802180e-03, -1.638419923130013086e-03, -1.639766006915020823e-03, -1.641109356670963351e-03, -1.642449970358315654e-03, -1.643787845942273548e-03, -1.645122981392575009e-03, -1.646455374683456147e-03, -1.647785023793697833e-03, -1.649111926706747127e-03, -1.650436081410536215e-03, -1.651757485897575655e-03, -1.653076138164945481e-03, -1.654392036214371751e-03, -1.655705178052074974e-03, -1.657015561688869208e-03, -1.658323185140202173e-03, -1.659628046426139206e-03, -1.660930143571174612e-03, -1.662229474604552150e-03, -1.663526037560097417e-03, -1.664819830476178385e-03, -1.666110851395792352e-03, -1.667399098366510648e-03, -1.668684569440607654e-03, -1.669967262674876708e-03, -1.671247176130729629e-03, -1.672524307874282161e-03, -1.673798655976189596e-03, -1.675070218511715524e-03, -1.676338993560825066e-03, -1.677604979208136525e-03, -1.678868173542721887e-03, -1.680128574658495836e-03, -1.681386180653868592e-03, -1.682640989631995930e-03, -1.683892999700608521e-03, -1.685142208972065930e-03, -1.686388615563474578e-03, -1.687632217596504074e-03, -1.688873013197478724e-03, -1.690111000497468603e-03, -1.691346177632115219e-03, -1.692578542741720628e-03, -1.693808093971352173e-03, -1.695034829470648628e-03, -1.696258747393922543e-03, -1.697479845900247636e-03, -1.698698123153293557e-03, -1.699913577321398965e-03, -1.701126206577686885e-03, -1.702336009099832907e-03, -1.703542983070363342e-03, -1.704747126676278571e-03, -1.705948438109456365e-03, -1.707146915566432879e-03, -1.708342557248390507e-03, -1.709535361361216432e-03, -1.710725326115578298e-03, -1.711912449726776548e-03, -1.713096730414839395e-03, -1.714278166404495070e-03, -1.715456755925247280e-03, -1.716632497211254427e-03, -1.717805388501382306e-03, -1.718975428039283245e-03, -1.720142614073358594e-03, -1.721306944856571593e-03, -1.722468418646781090e-03, -1.723627033706560908e-03, -1.724782788303144774e-03, -1.725935680708556635e-03, -1.727085709199516986e-03, -1.728232872057574926e-03, -1.729377167568951377e-03, -1.730518594024611084e-03, -1.731657149720346308e-03, -1.732792832956625909e-03, -1.733925642038681211e-03, -1.735055575276570408e-03, -1.736182630985045857e-03, -1.737306807483605031e-03, -1.738428103096610220e-03, -1.739546516153103566e-03, -1.740662044986902466e-03, -1.741774687936668321e-03, -1.742884443345746933e-03, -1.743991309562350003e-03, -1.745095284939404863e-03, -1.746196367834625812e-03, -1.747294556610566162e-03, -1.748389849634524778e-03, -1.749482245278566241e-03, -1.750571741919625590e-03, -1.751658337939365631e-03, -1.752742031724252407e-03, -1.753822821665605497e-03, -1.754900706159493720e-03, -1.755975683606803223e-03, -1.757047752413209507e-03, -1.758116910989235759e-03, -1.759183157750259787e-03, -1.760246491116300438e-03, -1.761306909512371042e-03, -1.762364411368279272e-03, -1.763418995118515471e-03, -1.764470659202538880e-03, -1.765519402064613490e-03, -1.766565222153777251e-03, -1.767608117923925989e-03, -1.768648087833763535e-03, -1.769685130346894094e-03, -1.770719243931696699e-03, -1.771750427061385491e-03, -1.772778678214086048e-03, -1.773803995872692482e-03, -1.774826378524957220e-03, -1.775845824663531544e-03, -1.776862332785872356e-03, -1.777875901394268413e-03, -1.778886528995934869e-03, -1.779894214102859104e-03, -1.780898955231975927e-03, -1.781900750905009720e-03, -1.782899599648550765e-03, -1.783895499994122462e-03, -1.784888450478048843e-03, -1.785878449641519622e-03, -1.786865496030669558e-03, -1.787849588196433175e-03, -1.788830724694628026e-03, -1.789808904086008035e-03, -1.790784124936146407e-03, -1.791756385815501543e-03, -1.792725685299469737e-03, -1.793692021968261137e-03, -1.794655394407068238e-03, -1.795615801205836890e-03, -1.796573240959529550e-03, -1.797527712267990400e-03, -1.798479213735848861e-03, -1.799427743972761146e-03, -1.800373301593243729e-03, -1.801315885216690262e-03, -1.802255493467396288e-03, -1.803192124974618881e-03, -1.804125778372466481e-03, -1.805056452299984553e-03, -1.805984145401094655e-03, -1.806908856324711309e-03, -1.807830583724599110e-03, -1.808749326259421726e-03, -1.809665082592832328e-03, -1.810577851393411998e-03, -1.811487631334545269e-03, -1.812394421094657348e-03, -1.813298219357101573e-03, -1.814199024810090460e-03, -1.815096836146813447e-03, -1.815991652065361214e-03, -1.816883471268822400e-03, -1.817772292465162165e-03, -1.818658114367283562e-03, -1.819540935693092368e-03, -1.820420755165376306e-03, -1.821297571511865977e-03, -1.822171383465300996e-03, -1.823042189763302706e-03, -1.823909989148444436e-03, -1.824774780368323707e-03, -1.825636562175387027e-03, -1.826495333327138705e-03, -1.827351092585968685e-03, -1.828203838719221494e-03, -1.829053570499271928e-03, -1.829900286703389518e-03, -1.830743986113816382e-03, -1.831584667517804736e-03, -1.832422329707529508e-03, -1.833256971480127801e-03, -1.834088591637767418e-03, -1.834917188987524343e-03, -1.835742762341457338e-03, -1.836565310516652828e-03, -1.837384832335122549e-03, -1.838201326623866870e-03, -1.839014792214857226e-03, -1.839825227945077971e-03, -1.840632632656522905e-03, -1.841437005196052161e-03, -1.842238344415626826e-03, -1.843036649172181659e-03, -1.843831918327602315e-03, -1.844624150748764169e-03, -1.845413345307589771e-03, -1.846199500880947152e-03, -1.846982616350721597e-03, -1.847762690603771190e-03, -1.848539722532007053e-03, -1.849313711032294890e-03, -1.850084655006492941e-03, -1.850852553361509879e-03, -1.851617405009273144e-03, -1.852379208866614894e-03, -1.853137963855489056e-03, -1.853893668902796771e-03, -1.854646322940455352e-03, -1.855395924905445769e-03, -1.856142473739684495e-03, -1.856885968390183756e-03, -1.857626407808919255e-03, -1.858363790952879393e-03, -1.859098116784132712e-03, -1.859829384269717084e-03, -1.860557592381691756e-03, -1.861282740097187655e-03, -1.862004826398320004e-03, -1.862723850272223879e-03, -1.863439810711117316e-03, -1.864152706712196789e-03, -1.864862537277689036e-03, -1.865569301414910690e-03, -1.866272998136140129e-03, -1.866973626458775549e-03, -1.867671185405128534e-03, -1.868365674002668217e-03, -1.869057091283861036e-03, -1.869745436286208680e-03, -1.870430708052232913e-03, -1.871112905629556669e-03, -1.871792028070798667e-03, -1.872468074433629795e-03, -1.873141043780801292e-03, -1.873810935180080135e-03, -1.874477747704297393e-03, -1.875141480431303121e-03, -1.875802132444050283e-03, -1.876459702830557451e-03, -1.877114190683793231e-03, -1.877765595101887680e-03, -1.878413915188027576e-03, -1.879059150050351032e-03, -1.879701298802183632e-03, -1.880340360561819210e-03, -1.880976334452689417e-03, -1.881609219603221474e-03, -1.882239015146933364e-03, -1.882865720222434485e-03, -1.883489333973359077e-03, -1.884109855548416097e-03, -1.884727284101414806e-03, -1.885341618791215547e-03, -1.885952858781716947e-03, -1.886561003241956323e-03, -1.887166051345988676e-03, -1.887768002272953048e-03, -1.888366855207102013e-03, -1.888962609337702147e-03, -1.889555263859161744e-03, -1.890144817970924136e-03, -1.890731270877509538e-03, -1.891314621788559502e-03, -1.891894869918763411e-03, -1.892472014487877989e-03, -1.893046054720803418e-03, -1.893616989847471659e-03, -1.894184819102903705e-03, -1.894749541727243618e-03, -1.895311156965684592e-03, -1.895869664068510580e-03, -1.896425062291134467e-03, -1.896977350894009373e-03, -1.897526529142733610e-03, -1.898072596307917971e-03, -1.898615551665337091e-03, -1.899155394495868725e-03, -1.899692124085401376e-03, -1.900225739724996929e-03, -1.900756240710801742e-03, -1.901283626344034286e-03, -1.901807895931020712e-03, -1.902329048783180099e-03, -1.902847084217072814e-03, -1.903362001554305535e-03, -1.903873800121600639e-03, -1.904382479250822657e-03, -1.904888038278892406e-03, -1.905390476547840113e-03, -1.905889793404826451e-03, -1.906385988202134512e-03, -1.906879060297068332e-03, -1.907369009052127442e-03, -1.907855833834878499e-03, -1.908339534018016872e-03, -1.908820108979328040e-03, -1.909297558101712535e-03, -1.909771880773193089e-03, -1.910243076386905535e-03, -1.910711144341066493e-03, -1.911176084039052734e-03, -1.911637894889324637e-03, -1.912096576305458281e-03, -1.912552127706165610e-03, -1.913004548515251282e-03, -1.913453838161639341e-03, -1.913899996079397505e-03, -1.914343021707679482e-03, -1.914782914490765738e-03, -1.915219673878080196e-03, -1.915653299324115207e-03, -1.916083790288566208e-03, -1.916511146236148707e-03, -1.916935366636767640e-03, -1.917356450965453400e-03, -1.917774398702323238e-03, -1.918189209332629187e-03, -1.918600882346761750e-03, -1.919009417240231680e-03, -1.919414813513654157e-03, -1.919817070672804509e-03, -1.920216188228559455e-03, -1.920612165696927243e-03, -1.921005002599037673e-03, -1.921394698461168773e-03, -1.921781252814724244e-03, -1.922164665196198548e-03, -1.922544935147264518e-03, -1.922922062214708948e-03, -1.923296045950434767e-03, -1.923666885911488140e-03, -1.924034581660036139e-03, -1.924399132763395361e-03, -1.924760538794001571e-03, -1.925118799329417728e-03, -1.925473913952359785e-03, -1.925825882250664168e-03, -1.926174703817285384e-03, -1.926520378250346768e-03, -1.926862905153098413e-03, -1.927202284133874670e-03, -1.927538514806224901e-03, -1.927871596788778607e-03, -1.928201529705310694e-03, -1.928528313184755573e-03, -1.928851946861150340e-03, -1.929172430373703086e-03, -1.929489763366737821e-03, -1.929803945489710080e-03, -1.930114976397235985e-03, -1.930422855749062104e-03, -1.930727583210050920e-03, -1.931029158450242415e-03, -1.931327581144789670e-03, -1.931622850973979894e-03, -1.931914967623267389e-03, -1.932203930783219772e-03, -1.932489740149555919e-03, -1.932772395423138379e-03, -1.933051896309954942e-03, -1.933328242521164609e-03, -1.933601433773022345e-03, -1.933871469786965390e-03, -1.934138350289553183e-03, -1.934402075012491007e-03, -1.934662643692615890e-03, -1.934920056071928263e-03, -1.935174311897546427e-03, -1.935425410921747967e-03, -1.935673352901934405e-03, -1.935918137600676960e-03, -1.936159764785664499e-03, -1.936398234229734115e-03, -1.936633545710876982e-03, -1.936865699012217971e-03, -1.937094693922020204e-03, -1.937320530233696330e-03, -1.937543207745813512e-03, -1.937762726262050924e-03, -1.937979085591257653e-03, -1.938192285547415397e-03, -1.938402325949652562e-03, -1.938609206622239492e-03, -1.938812927394583047e-03, -1.939013488101248937e-03, -1.939210888581934834e-03, -1.939405128681471677e-03, -1.939596208249858575e-03, -1.939784127142226604e-03, -1.939968885218828175e-03, -1.940150482345097968e-03, -1.940328918391587016e-03, -1.940504193233991105e-03, -1.940676306753160970e-03, -1.940845258835078441e-03, -1.941011049370878778e-03, -1.941173678256830938e-03, -1.941333145394340612e-03, -1.941489450689983182e-03, -1.941642594055442142e-03, -1.941792575407562437e-03, -1.941939394668329650e-03, -1.942083051764869782e-03, -1.942223546629444049e-03, -1.942360879199468400e-03, -1.942495049417485541e-03, -1.942626057231191606e-03, -1.942753902593414043e-03, -1.942878585462135032e-03, -1.943000105800457003e-03, -1.943118463576638203e-03, -1.943233658764075564e-03, -1.943345691341309255e-03, -1.943454561291997097e-03, -1.943560268604959881e-03, -1.943662813274157301e-03, -1.943762195298676890e-03, -1.943858414682750509e-03, -1.943951471435738723e-03, -1.944041365572160085e-03, -1.944128097111653183e-03, -1.944211666079004178e-03, -1.944292072504133799e-03, -1.944369316422094518e-03, -1.944443397873086600e-03, -1.944514316902433383e-03, -1.944582073560605128e-03, -1.944646667903201457e-03, -1.944708099990961978e-03, -1.944766369889753058e-03, -1.944821477670587119e-03, -1.944873423409602693e-03, -1.944922207188071140e-03, -1.944967829092402074e-03, -1.945010289214134684e-03, -1.945049587649945108e-03, -1.945085724501633426e-03, -1.945118699876137967e-03, -1.945148513885528157e-03, -1.945175166647004949e-03, -1.945198658282894537e-03, -1.945218988920651175e-03, -1.945236158692868885e-03, -1.945250167737262595e-03, -1.945261016196674639e-03, -1.945268704219082134e-03, -1.945273231957584618e-03, -1.945274599570409688e-03, -1.945272807220913436e-03, -1.945267855077569821e-03, -1.945259743313983462e-03, -1.945248472108885955e-03, -1.945234041646136522e-03, -1.945216452114707046e-03, -1.945195703708690318e-03, -1.945171796627323882e-03, -1.945144731074939948e-03, -1.945114507261007462e-03, -1.945081125400116486e-03, -1.945044585711966931e-03, -1.945004888421388934e-03, -1.944962033758329198e-03, -1.944916021957838418e-03, -1.944866853260108358e-03, -1.944814527910429568e-03, -1.944759046159215020e-03, -1.944700408261996203e-03, -1.944638614479411850e-03, -1.944573665077224418e-03, -1.944505560326294279e-03, -1.944434300502615939e-03, -1.944359885887275534e-03, -1.944282316766482921e-03, -1.944201593431553032e-03, -1.944117716178916065e-03, -1.944030685310099921e-03, -1.943940501131756222e-03, -1.943847163955634508e-03, -1.943750674098584192e-03, -1.943651031882579492e-03, -1.943548237634678232e-03, -1.943442291687067815e-03, -1.943333194377014263e-03, -1.943220946046899300e-03, -1.943105547044200613e-03, -1.942986997721508988e-03, -1.942865298436499471e-03, -1.942740449551953264e-03, -1.942612451435758595e-03, -1.942481304460884481e-03, -1.942347009005411084e-03, -1.942209565452506295e-03, -1.942068974190430501e-03, -1.941925235612555452e-03, -1.941778350117328699e-03, -1.941628318108292242e-03, -1.941475139994080362e-03, -1.941318816188430029e-03, -1.941159347110149895e-03, -1.940996733183140456e-03, -1.940830974836405117e-03, -1.940662072504020482e-03, -1.940490026625141338e-03, -1.940314837644027766e-03, -1.940136506010004588e-03, -1.939955032177500616e-03, -1.939770416605996394e-03, -1.939582659760081878e-03, -1.939391762109412849e-03, -1.939197724128716984e-03, -1.939000546297814462e-03, -1.938800229101604730e-03, -1.938596773030038748e-03, -1.938390178578163012e-03, -1.938180446246090712e-03, -1.937967576539007149e-03, -1.937751569967174946e-03, -1.937532427045908024e-03, -1.937310148295612149e-03, -1.937084734241756095e-03, -1.936856185414854731e-03, -1.936624502350516074e-03, -1.936389685589403773e-03, -1.936151735677225840e-03, -1.935910653164784299e-03, -1.935666438607926837e-03, -1.935419092567549834e-03, -1.935168615609622871e-03, -1.934915008305178753e-03, -1.934658271230279246e-03, -1.934398404966071894e-03, -1.934135410098737108e-03, -1.933869287219530447e-03, -1.933600036924734049e-03, -1.933327659815685688e-03, -1.933052156498789829e-03, -1.932773527585482723e-03, -1.932491773692238254e-03, -1.932206895440605459e-03, -1.931918893457148676e-03, -1.931627768373489831e-03, -1.931333520826281546e-03, -1.931036151457230779e-03, -1.930735660913081905e-03, -1.930432049845589183e-03, -1.930125318911585274e-03, -1.929815468772904481e-03, -1.929502500096435657e-03, -1.929186413554076886e-03, -1.928867209822785356e-03, -1.928544889584527054e-03, -1.928219453526296926e-03, -1.927890902340128427e-03, -1.927559236723067277e-03, -1.927224457377201602e-03, -1.926886565009614015e-03, -1.926545560332430405e-03, -1.926201444062797166e-03, -1.925854216922852358e-03, -1.925503879639786425e-03, -1.925150432945788633e-03, -1.924793877578045553e-03, -1.924434214278786812e-03, -1.924071443795240428e-03, -1.923705566879624568e-03, -1.923336584289206527e-03, -1.922964496786211874e-03, -1.922589305137906417e-03, -1.922211010116563028e-03, -1.921829612499413500e-03, -1.921445113068733336e-03, -1.921057512611784287e-03, -1.920666811920816296e-03, -1.920273011793089844e-03, -1.919876113030851870e-03, -1.919476116441327105e-03, -1.919073022836760784e-03, -1.918666833034367910e-03, -1.918257547856358188e-03, -1.917845168129922147e-03, -1.917429694687235479e-03, -1.917011128365476817e-03, -1.916589470006779816e-03, -1.916164720458247680e-03, -1.915736880572017128e-03, -1.915305951205151496e-03, -1.914871933219690174e-03, -1.914434827482675277e-03, -1.913994634866107844e-03, -1.913551356246935911e-03, -1.913104992507110025e-03, -1.912655544533528595e-03, -1.912203013218073027e-03, -1.911747399457546133e-03, -1.911288704153760393e-03, -1.910826928213462924e-03, -1.910362072548366921e-03, -1.909894138075111762e-03, -1.909423125715357765e-03, -1.908949036395647192e-03, -1.908471871047513107e-03, -1.907991630607438604e-03, -1.907508316016824504e-03, -1.907021928222059608e-03, -1.906532468174423987e-03, -1.906039936830186557e-03, -1.905544335150549141e-03, -1.905045664101615455e-03, -1.904543924654469172e-03, -1.904039117785114293e-03, -1.903531244474467553e-03, -1.903020305708405698e-03, -1.902506302477736640e-03, -1.901989235778151106e-03, -1.901469106610307637e-03, -1.900945915979792688e-03, -1.900419664897076179e-03, -1.899890354377585435e-03, -1.899357985441620621e-03, -1.898822559114467928e-03, -1.898284076426271210e-03, -1.897742538412077948e-03, -1.897197946111891294e-03, -1.896650300570605673e-03, -1.896099602838001354e-03, -1.895545853968773516e-03, -1.894989055022552838e-03, -1.894429207063810967e-03, -1.893866311161957654e-03, -1.893300368391289583e-03, -1.892731379831012490e-03, -1.892159346565197575e-03, -1.891584269682788227e-03, -1.891006150277701071e-03, -1.890424989448658997e-03, -1.889840788299265977e-03, -1.889253547938085122e-03, -1.888663269478474318e-03, -1.888069954038731294e-03, -1.887473602741980864e-03, -1.886874216716253423e-03, -1.886271797094453938e-03, -1.885666345014325954e-03, -1.885057861618504504e-03, -1.884446348054507865e-03, -1.883831805474661669e-03, -1.883214235036201464e-03, -1.882593637901225662e-03, -1.881970015236633523e-03, -1.881343368214239429e-03, -1.880713698010693952e-03, -1.880081005807466297e-03, -1.879445292790925823e-03, -1.878806560152234935e-03, -1.878164809087439716e-03, -1.877520040797422442e-03, -1.876872256487875125e-03, -1.876221457369365003e-03, -1.875567644657282059e-03, -1.874910819571822115e-03, -1.874250983338046021e-03, -1.873588137185851904e-03, -1.872922282349907515e-03, -1.872253420069756912e-03, -1.871581551589758009e-03, -1.870906678159063065e-03, -1.870228801031673972e-03, -1.869547921466352272e-03, -1.868864040726770509e-03, -1.868177160081315336e-03, -1.867487280803190736e-03, -1.866794404170488923e-03, -1.866098531466025548e-03, -1.865399663977416675e-03, -1.864697802997122584e-03, -1.863992949822369924e-03, -1.863285105755210259e-03, -1.862574272102424230e-03, -1.861860450175637557e-03, -1.861143641291263364e-03, -1.860423846770450354e-03, -1.859701067939166291e-03, -1.858975306128173716e-03, -1.858246562672969228e-03, -1.857514838913822738e-03, -1.856780136195851838e-03, -1.856042455868846166e-03, -1.855301799287446081e-03, -1.854558167810971790e-03, -1.853811562803574058e-03, -1.853061985634152234e-03, -1.852309437676331058e-03, -1.851553920308511830e-03, -1.850795434913876094e-03, -1.850033982880291755e-03, -1.849269565600416936e-03, -1.848502184471674178e-03, -1.847731840896161756e-03, -1.846958536280774452e-03, -1.846182272037146964e-03, -1.845403049581592105e-03, -1.844620870335210092e-03, -1.843835735723829130e-03, -1.843047647177960963e-03, -1.842256606132887820e-03, -1.841462614028554004e-03, -1.840665672309735020e-03, -1.839865782425810113e-03, -1.839062945830907550e-03, -1.838257163983886191e-03, -1.837448438348321172e-03, -1.836636770392433438e-03, -1.835822161589218977e-03, -1.835004613416357311e-03, -1.834184127356177458e-03, -1.833360704895763311e-03, -1.832534347526863436e-03, -1.831705056745951132e-03, -1.830872834054126427e-03, -1.830037680957189794e-03, -1.829199598965699841e-03, -1.828358589594807418e-03, -1.827514654364352769e-03, -1.826667794798880490e-03, -1.825818012427596598e-03, -1.824965308784390209e-03, -1.824109685407766758e-03, -1.823251143840939502e-03, -1.822389685631793741e-03, -1.821525312332809409e-03, -1.820658025501177947e-03, -1.819787826698754385e-03, -1.818914717491986865e-03, -1.818038699451968903e-03, -1.817159774154534797e-03, -1.816277943180042787e-03, -1.815393208113555250e-03, -1.814505570544772345e-03, -1.813615032067975421e-03, -1.812721594282143455e-03, -1.811825258790809292e-03, -1.810926027202191266e-03, -1.810023901129126193e-03, -1.809118882189004974e-03, -1.808210972003905081e-03, -1.807300172200501870e-03, -1.806386484410034323e-03, -1.805469910268397635e-03, -1.804550451416103533e-03, -1.803628109498196146e-03, -1.802702886164370827e-03, -1.801774783068937512e-03, -1.800843801870718585e-03, -1.799909944233216066e-03, -1.798973211824419051e-03, -1.798033606317039857e-03, -1.797091129388244920e-03, -1.796145782719806147e-03, -1.795197567998102007e-03, -1.794246486914089335e-03, -1.793292541163231564e-03, -1.792335732445619932e-03, -1.791376062465878730e-03, -1.790413532933229045e-03, -1.789448145561369939e-03, -1.788479902068627631e-03, -1.787508804177870064e-03, -1.786534853616479580e-03, -1.785558052116357694e-03, -1.784578401414069508e-03, -1.783595903250602367e-03, -1.782610559371471679e-03, -1.781622371526844079e-03, -1.780631341471290664e-03, -1.779637470963985404e-03, -1.778640761768564196e-03, -1.777641215653237615e-03, -1.776638834390724354e-03, -1.775633619758205245e-03, -1.774625573537440141e-03, -1.773614697514667516e-03, -1.772600993480601432e-03, -1.771584463230503961e-03, -1.770565108564132713e-03, -1.769542931285680767e-03, -1.768517933203891815e-03, -1.767490116132010508e-03, -1.766459481887687043e-03, -1.765426032293150854e-03, -1.764389769175015452e-03, -1.763350694364442797e-03, -1.762308809697061976e-03, -1.761264117012908709e-03, -1.760216618156546344e-03, -1.759166314977007308e-03, -1.758113209327712449e-03, -1.757057303066600264e-03, -1.755998598056081154e-03, -1.754937096162925963e-03, -1.753872799258432945e-03, -1.752805709218314143e-03, -1.751735827922750247e-03, -1.750663157256287811e-03, -1.749587699107977169e-03, -1.748509455371288291e-03, -1.747428427944083904e-03, -1.746344618728622525e-03, -1.745258029631727810e-03, -1.744168662564485415e-03, -1.743076519442432297e-03, -1.741981602185562351e-03, -1.740883912718237721e-03, -1.739783452969267084e-03, -1.738680224871773806e-03, -1.737574230363349466e-03, -1.736465471385994445e-03, -1.735353949886012321e-03, -1.734239667814161875e-03, -1.733122627125599632e-03, -1.732002829779801141e-03, -1.730880277740607168e-03, -1.729754972976358567e-03, -1.728626917459613090e-03, -1.727496113167406675e-03, -1.726362562081037479e-03, -1.725226266186240210e-03, -1.724087227473113278e-03, -1.722945447936026844e-03, -1.721800929573764644e-03, -1.720653674389464134e-03, -1.719503684390532574e-03, -1.718350961588793182e-03, -1.717195508000385817e-03, -1.716037325645727732e-03, -1.714876416549631537e-03, -1.713712782741223014e-03, -1.712546426253888860e-03, -1.711377349125404188e-03, -1.710205553397852515e-03, -1.709031041117559623e-03, -1.707853814335246433e-03, -1.706673875105826910e-03, -1.705491225488678245e-03, -1.704305867547327956e-03, -1.703117803349617383e-03, -1.701927034967736386e-03, -1.700733564478139207e-03, -1.699537393961514115e-03, -1.698338525502879684e-03, -1.697136961191510196e-03, -1.695932703120985952e-03, -1.694725753389064032e-03, -1.693516114097850470e-03, -1.692303787353703756e-03, -1.691088775267197324e-03, -1.689871079953115434e-03, -1.688650703530664154e-03, -1.687427648123130492e-03, -1.686201915858061718e-03, -1.684973508867311552e-03, -1.683742429286928929e-03, -1.682508679257218275e-03, -1.681272260922646268e-03, -1.680033176431964355e-03, -1.678791427938154321e-03, -1.677547017598327679e-03, -1.676299947573895019e-03, -1.675050220030465178e-03, -1.673797837137782794e-03, -1.672542801069857969e-03, -1.671285114004913801e-03, -1.670024778125274705e-03, -1.668761795617542277e-03, -1.667496168672498143e-03, -1.666227899485027203e-03, -1.664956990254299989e-03, -1.663683443183556262e-03, -1.662407260480281519e-03, -1.661128444356132616e-03, -1.659846997026844960e-03, -1.658562920712392539e-03, -1.657276217636913761e-03, -1.655986890028606504e-03, -1.654694940119899637e-03, -1.653400370147367583e-03, -1.652103182351646838e-03, -1.650803378977582121e-03, -1.649500962274133781e-03, -1.648195934494404470e-03, -1.646888297895587753e-03, -1.645578054738938397e-03, -1.644265207290023477e-03, -1.642949757818339433e-03, -1.641631708597525441e-03, -1.640311061905377291e-03, -1.638987820023794914e-03, -1.637661985238689569e-03, -1.636333559840154502e-03, -1.635002546122334621e-03, -1.633668946383495021e-03, -1.632332762925897815e-03, -1.630993998055965850e-03, -1.629652654084186650e-03, -1.628308733325042803e-03, -1.626962238097174815e-03, -1.625613170723259025e-03, -1.624261533529963155e-03, -1.622907328848095495e-03, -1.621550559012505371e-03, -1.620191226361999883e-03, -1.618829333239544914e-03, -1.617464881992037662e-03, -1.616097874970481201e-03, -1.614728314529916605e-03, -1.613356203029317568e-03, -1.611981542831771898e-03, -1.610604336304384369e-03, -1.609224585818180234e-03, -1.607842293748283028e-03, -1.606457462473823714e-03, -1.605070094377843539e-03, -1.603680191847471192e-03, -1.602287757273823925e-03, -1.600892793051926022e-03, -1.599495301580899399e-03, -1.598095285263695159e-03, -1.596692746507456578e-03, -1.595287687723118391e-03, -1.593880111325570934e-03, -1.592470019733871565e-03, -1.591057415370838741e-03, -1.589642300663285119e-03, -1.588224678042025363e-03, -1.586804549941835812e-03, -1.585381918801331315e-03, -1.583956787063165372e-03, -1.582529157173896781e-03, -1.581099031584039510e-03, -1.579666412747945383e-03, -1.578231303123978860e-03, -1.576793705174425958e-03, -1.575353621365421179e-03, -1.573911054166975262e-03, -1.572466006053203523e-03, -1.571018479501913633e-03, -1.569568476994867351e-03, -1.568116001017757317e-03, -1.566661054060152630e-03, -1.565203638615526817e-03, -1.563743757181140087e-03, -1.562281412258228856e-03, -1.560816606351893418e-03, -1.559349341971009474e-03, -1.557879621628415054e-03, -1.556407447840801005e-03, -1.554932823128616888e-03, -1.553455750016263749e-03, -1.551976231031979405e-03, -1.550494268707755183e-03, -1.549009865579540181e-03, -1.547523024187001444e-03, -1.546033747073710446e-03, -1.544542036787083456e-03, -1.543047895878244284e-03, -1.541551326902232660e-03, -1.540052332417908825e-03, -1.538550914987830585e-03, -1.537047077178464293e-03, -1.535540821560063638e-03, -1.534032150706589196e-03, -1.532521067195885154e-03, -1.531007573609570243e-03, -1.529491672532964659e-03, -1.527973366555251391e-03, -1.526452658269350244e-03, -1.524929550271980931e-03, -1.523404045163572005e-03, -1.521876145548265412e-03, -1.520345854034156315e-03, -1.518813173232894543e-03, -1.517278105759910754e-03, -1.515740654234435303e-03, -1.514200821279438605e-03, -1.512658609521520337e-03, -1.511114021591106107e-03, -1.509567060122327543e-03, -1.508017727753041375e-03, -1.506466027124737277e-03, -1.504911960882707221e-03, -1.503355531675950934e-03, -1.501796742157097617e-03, -1.500235594982435652e-03, -1.498672092812158938e-03, -1.497106238309902412e-03, -1.495538034143154699e-03, -1.493967482982946947e-03, -1.492394587504084196e-03, -1.490819350385040425e-03, -1.489241774307855119e-03, -1.487661861958322141e-03, -1.486079616025899304e-03, -1.484495039203583260e-03, -1.482908134188128070e-03, -1.481318903679923558e-03, -1.479727350382890145e-03, -1.478133477004696123e-03, -1.476537286256621477e-03, -1.474938780853474402e-03, -1.473337963513789064e-03, -1.471734836959701998e-03, -1.470129403916868192e-03, -1.468521667114672724e-03, -1.466911629285934989e-03, -1.465299293167311159e-03, -1.463684661498839031e-03, -1.462067737024181973e-03, -1.460448522490641939e-03, -1.458827020649109589e-03, -1.457203234253936575e-03, -1.455577166063152378e-03, -1.453948818838342013e-03, -1.452318195344550400e-03, -1.450685298350474486e-03, -1.449050130628328588e-03, -1.447412694953908790e-03, -1.445772994106470435e-03, -1.444131030868780162e-03, -1.442486808027338818e-03, -1.440840328371959271e-03, -1.439191594695981733e-03, -1.437540609796466966e-03, -1.435887376473741562e-03, -1.434231897531822088e-03, -1.432574175778072480e-03, -1.430914214023467929e-03, -1.429252015082473244e-03, -1.427587581772935942e-03, -1.425920916916290949e-03, -1.424252023337452830e-03, -1.422580903864693923e-03, -1.420907561329876577e-03, -1.419231998568311554e-03, -1.417554218418673462e-03, -1.415874223723185285e-03, -1.414192017327534252e-03, -1.412507602080729152e-03, -1.410820980835372470e-03, -1.409132156447350306e-03, -1.407441131776089333e-03, -1.405747909684445553e-03, -1.404052493038578315e-03, -1.402354884708175613e-03, -1.400655087566338728e-03, -1.398953104489460359e-03, -1.397248938357437565e-03, -1.395542592053582642e-03, -1.393834068464470033e-03, -1.392123370480174418e-03, -1.390410500994157745e-03, -1.388695462903147358e-03, -1.386978259107384068e-03, -1.385258892510290822e-03, -1.383537366018916569e-03, -1.381813682543441002e-03, -1.380087844997394866e-03, -1.378359856297883736e-03, -1.376629719365125284e-03, -1.374897437122715987e-03, -1.373163012497657801e-03, -1.371426448420245622e-03, -1.369687747824125616e-03, -1.367946913646161857e-03, -1.366203948826631492e-03, -1.364458856309124120e-03, -1.362711639040414726e-03, -1.360962299970702423e-03, -1.359210842053463000e-03, -1.357457268245392543e-03, -1.355701581506426733e-03, -1.353943784800015586e-03, -1.352183881092604333e-03, -1.350421873354107219e-03, -1.348657764557539092e-03, -1.346891557679291869e-03, -1.345123255699011162e-03, -1.343352861599473756e-03, -1.341580378366810959e-03, -1.339805808990399963e-03, -1.338029156462725282e-03, -1.336250423779623353e-03, -1.334469613940147655e-03, -1.332686729946453352e-03, -1.330901774804028664e-03, -1.329114751521564761e-03, -1.327325663110837583e-03, -1.325534512586982799e-03, -1.323741302968162300e-03, -1.321946037275850867e-03, -1.320148718534704330e-03, -1.318349349772393467e-03, -1.316547934020040290e-03, -1.314744474311697409e-03, -1.312938973684612577e-03, -1.311131435179282035e-03, -1.309321861839339487e-03, -1.307510256711455704e-03, -1.305696622845549945e-03, -1.303880963294698448e-03, -1.302063281114967247e-03, -1.300243579365679969e-03, -1.298421861109233305e-03, -1.296598129411193501e-03, -1.294772387340140237e-03, -1.292944637967732542e-03, -1.291114884368959248e-03, -1.289283129621666924e-03, -1.287449376806836356e-03, -1.285613629008607690e-03, -1.283775889314167249e-03, -1.281936160813807379e-03, -1.280094446600774224e-03, -1.278250749771495847e-03, -1.276405073425463613e-03, -1.274557420665093418e-03, -1.272707794595982636e-03, -1.270856198326758123e-03, -1.269002634969012460e-03, -1.267147107637333009e-03, -1.265289619449565814e-03, -1.263430173526308405e-03, -1.261568772991326351e-03, -1.259705420971405591e-03, -1.257840120596213224e-03, -1.255972874998582652e-03, -1.254103687314174443e-03, -1.252232560681768633e-03, -1.250359498243131147e-03, -1.248484503142881534e-03, -1.246607578528734087e-03, -1.244728727551380320e-03, -1.242847953364352789e-03, -1.240965259124261668e-03, -1.239080647990673965e-03, -1.237194123125979518e-03, -1.235305687695636458e-03, -1.233415344868046956e-03, -1.231523097814406741e-03, -1.229628949709018646e-03, -1.227732903728900567e-03, -1.225834963054266624e-03, -1.223935130867999377e-03, -1.222033410355931283e-03, -1.220129804706876573e-03, -1.218224317112544296e-03, -1.216316950767409302e-03, -1.214407708868956185e-03, -1.212496594617509501e-03, -1.210583611216305101e-03, -1.208668761871321221e-03, -1.206752049791540420e-03, -1.204833478188780012e-03, -1.202913050277639589e-03, -1.200990769275525529e-03, -1.199066638402930931e-03, -1.197140660882940353e-03, -1.195212839941460752e-03, -1.193283178807491227e-03, -1.191351680712537551e-03, -1.189418348891146688e-03, -1.187483186580499343e-03, -1.185546197020710289e-03, -1.183607383454690024e-03, -1.181666749128014665e-03, -1.179724297289184423e-03, -1.177780031189470727e-03, -1.175833954082796317e-03, -1.173886069225988727e-03, -1.171936379878635867e-03, -1.169984889302965250e-03, -1.168031600764081425e-03, -1.166076517529840428e-03, -1.164119642870714046e-03, -1.162160980060088179e-03, -1.160200532373907448e-03, -1.158238303090968792e-03, -1.156274295492799387e-03, -1.154308512863511582e-03, -1.152340958490055082e-03, -1.150371635662092266e-03, -1.148400547671850087e-03, -1.146427697814386129e-03, -1.144453089387439861e-03, -1.142476725691313807e-03, -1.140498610029111633e-03, -1.138518745706572702e-03, -1.136537136032144931e-03, -1.134553784316804162e-03, -1.132568693874318275e-03, -1.130581868021102989e-03, -1.128593310076139678e-03, -1.126603023360990769e-03, -1.124611011200133022e-03, -1.122617276920394400e-03, -1.120621823851283014e-03, -1.118624655325001216e-03, -1.116625774676327639e-03, -1.114625185242688974e-03, -1.112622890363975867e-03, -1.110618893382817442e-03, -1.108613197644421275e-03, -1.106605806496456946e-03, -1.104596723289295868e-03, -1.102585951375890938e-03, -1.100573494111670722e-03, -1.098559354854580002e-03, -1.096543536965391592e-03, -1.094526043807108511e-03, -1.092506878745510418e-03, -1.090486045148737933e-03, -1.088463546387591655e-03, -1.086439385835412256e-03, -1.084413566867916973e-03, -1.082386092863486717e-03, -1.080356967203001482e-03, -1.078326193269722819e-03, -1.076293774449544943e-03, -1.074259714130851393e-03, -1.072224015704385369e-03, -1.070186682563507548e-03, -1.068147718104056013e-03, -1.066107125724205084e-03, -1.064064908824729431e-03, -1.062021070808869851e-03, -1.059975615082179960e-03, -1.057928545052851240e-03, -1.055879864131284993e-03, -1.053829575730647018e-03, -1.051777683266250703e-03, -1.049724190155891393e-03, -1.047669099819878696e-03, -1.045612415680927413e-03, -1.043554141164034594e-03, -1.041494279696732802e-03, -1.039432834708908186e-03, -1.037369809632888735e-03, -1.035305207903248689e-03, -1.033239032957080240e-03, -1.031171288233854533e-03, -1.029101977175320842e-03, -1.027031103225543428e-03, -1.024958669831219213e-03, -1.022884680441128952e-03, -1.020809138506440167e-03, -1.018732047480755496e-03, -1.016653410819969797e-03, -1.014573231982349513e-03, -1.012491514428346404e-03, -1.010408261620873802e-03, -1.008323477025155693e-03, -1.006237164108579043e-03, -1.004149326340976348e-03, -1.002059967194476441e-03, -9.999690901433531433e-04, -9.978766986643065016e-04, -9.957827962363123044e-04, -9.936873863404828682e-04, -9.915904724603328852e-04, -9.894920580816423793e-04, -9.873921466922988468e-04, -9.852907417826309733e-04, -9.831878468450239595e-04, -9.810834653742365411e-04, -9.789776008672652474e-04, -9.768702568231852398e-04, -9.747614367434359996e-04, -9.726511441316730089e-04, -9.705393824936185644e-04, -9.684261553373335867e-04, -9.663114661730819871e-04, -9.641953185131746503e-04, -9.620777158722456897e-04, -9.599586617670697588e-04, -9.578381597166357774e-04, -9.557162132420085870e-04, -9.535928258663648382e-04, -9.514680011153224797e-04, -9.493417425163681910e-04, -9.472140535991770052e-04, -9.450849378956593634e-04, -9.429543989398534538e-04, -9.408224402677887099e-04, -9.386890654177550185e-04, -9.365542779301100568e-04, -9.344180813473636433e-04, -9.322804792139958085e-04, -9.301414750767178713e-04, -9.280010724843364795e-04, -9.258592749876038818e-04, -9.237160861394873518e-04, -9.215715094950365904e-04, -9.194255486112215287e-04, -9.172782070472169317e-04, -9.151294883642547293e-04, -9.129793961254772158e-04, -9.108279338962581902e-04, -9.086751052438173061e-04, -9.065209137375573661e-04, -9.043653629489018008e-04, -9.022084564511543723e-04, -9.000501978197707675e-04, -8.978905906322283848e-04, -8.957296384678560064e-04, -8.935673449081194854e-04, -8.914037135364819920e-04, -8.892387479382495149e-04, -8.870724517008452730e-04, -8.849048284136718043e-04, -8.827358816679521311e-04, -8.805656150570616335e-04, -8.783940321760945859e-04, -8.762211366224272914e-04, -8.740469319950970508e-04, -8.718714218950716953e-04, -8.696946099255493685e-04, -8.675164996913531075e-04, -8.653370947992845104e-04, -8.631563988581483467e-04, -8.609744154786623527e-04, -8.587911482733015392e-04, -8.566066008565744469e-04, -8.544207768448407831e-04, -8.522336798563878582e-04, -8.500453135112359714e-04, -8.478556814314255072e-04, -8.456647872408605939e-04, -8.434726345652105491e-04, -8.412792270319433821e-04, -8.390845682706800021e-04, -8.368886619125778499e-04, -8.346915115906908527e-04, -8.324931209399890480e-04, -8.302934935972297809e-04, -8.280926332010275261e-04, -8.258905433916715255e-04, -8.236872278113940198e-04, -8.214826901042328799e-04, -8.192769339158759156e-04, -8.170699628939414672e-04, -8.148617806878309536e-04, -8.126523909485731815e-04, -8.104417973291213077e-04, -8.082300034841837042e-04, -8.060170130700808431e-04, -8.038028297450884466e-04, -8.015874571690236473e-04, -7.993708990035975704e-04, -7.971531589122488005e-04, -7.949342405600014596e-04, -7.927141476137455813e-04, -7.904928837420889011e-04, -7.882704526152015979e-04, -7.860468579051015483e-04, -7.838221032855067659e-04, -7.815961924316810116e-04, -7.793691290207169870e-04, -7.771409167313895333e-04, -7.749115592439991809e-04, -7.726810602406580537e-04, -7.704494234050949294e-04, -7.682166524227385064e-04, -7.659827509805737468e-04, -7.637477227671720173e-04, -7.615115714730432382e-04, -7.592743007900273206e-04, -7.570359144116439298e-04, -7.547964160331244697e-04, -7.525558093513152634e-04, -7.503140980645204520e-04, -7.480712858727957054e-04, -7.458273764777358268e-04, -7.435823735825775353e-04, -7.413362808919888051e-04, -7.390891021123634436e-04, -7.368408409516656165e-04, -7.345915011193232709e-04, -7.323410863262678171e-04, -7.300896002852902888e-04, -7.278370467103690298e-04, -7.255834293172755455e-04, -7.233287518231144766e-04, -7.210730179466676160e-04, -7.188162314082357238e-04, -7.165583959294853297e-04, -7.142995152337436359e-04, -7.120395930458354528e-04, -7.097786330919370491e-04, -7.075166390998643322e-04, -7.052536147989103268e-04, -7.029895639197089987e-04, -7.007244901945015349e-04, -6.984583973570056975e-04, -6.961912891422454954e-04, -6.939231692868439187e-04, -6.916540415288798243e-04, -6.893839096077134876e-04, -6.871127772643506777e-04, -6.848406482409643073e-04, -6.825675262815102595e-04, -6.802934151310537731e-04, -6.780183185361244105e-04, -6.757422402447543297e-04, -6.734651840063740928e-04, -6.711871535716536132e-04, -6.689081526928049738e-04, -6.666281851234104718e-04, -6.643472546182843837e-04, -6.620653649337532309e-04, -6.597825198274546608e-04, -6.574987230584333981e-04, -6.552139783869802411e-04, -6.529282895746792246e-04, -6.506416603847519622e-04, -6.483540945814493008e-04, -6.460655959303432958e-04, -6.437761681986299209e-04, -6.414858151544600064e-04, -6.391945405675430320e-04, -6.369023482086864484e-04, -6.346092418501415389e-04, -6.323152252654475102e-04, -6.300203022292681036e-04, -6.277244765176991830e-04, -6.254277519081000332e-04, -6.231301321789428724e-04, -6.208316211101049366e-04, -6.185322224827154982e-04, -6.162319400789921520e-04, -6.139307776825450418e-04, -6.116287390782122789e-04, -6.093258280519059855e-04, -6.070220483909598893e-04, -6.047174038837148336e-04, -6.024118983198703840e-04, -6.001055354903296786e-04, -5.977983191870306183e-04, -5.954902532032560567e-04, -5.931813413334690015e-04, -5.908715873731517189e-04, -5.885609951191115869e-04, -5.862495683693152125e-04, -5.839373109227326318e-04, -5.816242265796402362e-04, -5.793103191414551061e-04, -5.769955924105802953e-04, -5.746800501907502580e-04, -5.723636962865750501e-04, -5.700465345041379412e-04, -5.677285686503252696e-04, -5.654098025331350062e-04, -5.630902399619706813e-04, -5.607698847470179689e-04, -5.584487406996065930e-04, -5.561268116322470824e-04, -5.538041013584739944e-04, -5.514806136929447950e-04, -5.491563524512204156e-04, -5.468313214500775035e-04, -5.445055245073362506e-04, -5.421789654417123999e-04, -5.398516480731108472e-04, -5.375235762224666973e-04, -5.351947537116392289e-04, -5.328651843634522271e-04, -5.305348720020540464e-04, -5.282038204522357568e-04, -5.258720335400479456e-04, -5.235395150923262712e-04, -5.212062689370497914e-04, -5.188722989031814775e-04, -5.165376088204969105e-04, -5.142022025199023856e-04, -5.118660838332628497e-04, -5.095292565932437161e-04, -5.071917246336165013e-04, -5.048534917890983627e-04, -5.025145618951820962e-04, -5.001749387884514217e-04, -4.978346263064136910e-04, -4.954936282873382333e-04, -4.931519485706150089e-04, -4.908095909963312289e-04, -4.884665594056281654e-04, -4.861228576405422080e-04, -4.837784895437861258e-04, -4.814334589593208215e-04, -4.790877697316663747e-04, -4.767414257062635159e-04, -4.743944307295187282e-04, -4.720467886486944724e-04, -4.696985033117459605e-04, -4.673495785676259786e-04, -4.650000182661254556e-04, -4.626498262577060619e-04, -4.602990063938142487e-04, -4.579475625266597456e-04, -4.555954985093129219e-04, -4.532428181955517514e-04, -4.508895254398914655e-04, -4.485356240979598494e-04, -4.461811180258550154e-04, -4.438260110805064421e-04, -4.414703071197232753e-04, -4.391140100020261687e-04, -4.367571235867524510e-04, -4.343996517338353288e-04, -4.320415983041126125e-04, -4.296829671591654957e-04, -4.273237621611521847e-04, -4.249639871731173833e-04, -4.226036460588303138e-04, -4.202427426826690860e-04, -4.178812809096724688e-04, -4.155192646058964833e-04, -4.131566976377263147e-04, -4.107935838724512101e-04, -4.084299271780429219e-04, -4.060657314229957336e-04, -4.037010004766849514e-04, -4.013357382089444993e-04, -3.989699484904218321e-04, -3.966036351924200759e-04, -3.942368021867320911e-04, -3.918694533459477890e-04, -3.895015925432922612e-04, -3.871332236524613595e-04, -3.847643505479279294e-04, -3.823949771047835703e-04, -3.800251071985692296e-04, -3.776547447055863681e-04, -3.752838935027343298e-04, -3.729125574673427786e-04, -3.705407404775356108e-04, -3.681684464117532555e-04, -3.657956791493744645e-04, -3.634224425700246998e-04, -3.610487405539442203e-04, -3.586745769820280346e-04, -3.562999557357175349e-04, -3.539248806968364573e-04, -3.515493557478980907e-04, -3.491733847718915800e-04, -3.467969716523767402e-04, -3.444201202732706307e-04, -3.420428345191583422e-04, -3.396651182751214216e-04, -3.372869754266359568e-04, -3.349084098596106867e-04, -3.325294254607541120e-04, -3.301500261169348156e-04, -3.277702157154911114e-04, -3.253899981445399869e-04, -3.230093772922869007e-04, -3.206283570476515295e-04, -3.182469412997876294e-04, -3.158651339384440206e-04, -3.134829388538021744e-04, -3.111003599363085952e-04, -3.087174010769897815e-04, -3.063340661672830901e-04, -3.039503590988732926e-04, -3.015662837640056934e-04, -2.991818440553166143e-04, -2.967970438656724447e-04, -2.944118870884785311e-04, -2.920263776175156790e-04, -2.896405193467715055e-04, -2.872543161708104235e-04, -2.848677719843384424e-04, -2.824808906825710384e-04, -2.800936761610648860e-04, -2.777061323155544147e-04, -2.753182630422643302e-04, -2.729300722377412921e-04, -2.705415637986921507e-04, -2.681527416222924030e-04, -2.657636096060233448e-04, -2.633741716475037492e-04, -2.609844316448047181e-04, -2.585943934962310533e-04, -2.562040611004176419e-04, -2.538134383561665552e-04, -2.514225291624952409e-04, -2.490313374189977798e-04, -2.466398670252043391e-04, -2.442481218808928802e-04, -2.418561058864011112e-04, -2.394638229419821451e-04, -2.370712769481711773e-04, -2.346784718058321062e-04, -2.322854114159907557e-04, -2.298920996799366551e-04, -2.274985404990019153e-04, -2.251047377748743741e-04, -2.227106954094337462e-04, -2.203164173045829479e-04, -2.179219073625631668e-04, -2.155271694857859726e-04, -2.131322075767224582e-04, -2.107370255379470674e-04, -2.083416272725090439e-04, -2.059460166832271296e-04, -2.035501976733300846e-04, -2.011541741459629145e-04, -1.987579500045603780e-04, -1.963615291526752218e-04, -1.939649154938160658e-04, -1.915681129317585148e-04, -1.891711253703807659e-04, -1.867739567134943108e-04, -1.843766108651612547e-04, -1.819790917295241233e-04, -1.795814032106435581e-04, -1.771835492128090211e-04, -1.747855336403730212e-04, -1.723873603975852032e-04, -1.699890333889062248e-04, -1.675905565188410336e-04, -1.651919336917722519e-04, -1.627931688123276672e-04, -1.603942657848934797e-04, -1.579952285142487774e-04, -1.555960609048645722e-04, -1.531967668612715342e-04, -1.507973502881069378e-04, -1.483978150900020128e-04, -1.459981651714147607e-04, -1.435984044369443191e-04, -1.411985367911106515e-04, -1.387985661384554057e-04, -1.363984963833226878e-04, -1.339983314301710683e-04, -1.315980751834082960e-04, -1.291977315472797063e-04, -1.267973044259116972e-04, -1.243967977236827983e-04, -1.219962153445734607e-04, -1.195955611925364340e-04, -1.171948391715413275e-04, -1.147940531854096073e-04, -1.123932071379144117e-04, -1.099923049325607149e-04, -1.075913504728995561e-04, -1.051903476623613706e-04, -1.027893004040892261e-04, -1.003882126012534305e-04, -9.798708815688497210e-05, -9.558593097370776583e-05, -9.318474495445456293e-05, -9.078353400169904860e-05, -8.838230201768993203e-05, -8.598105290466479575e-05, -8.357979056468383327e-05, -8.117851889946270578e-05, -7.877724181074066939e-05, -7.637596319984669101e-05, -7.397468696806725039e-05, -7.157341701647931874e-05, -6.917215724578425901e-05, -6.677091155662132288e-05, -6.436968384940214738e-05, -6.196847802414317782e-05, -5.956729798078033039e-05, -5.716614761900230964e-05, -5.476503083808391918e-05, -5.236395153720068357e-05, -4.996291361520800988e-05, -4.756192097074286558e-05, -4.516097750205593723e-05, -4.276008710705961319e-05, -4.035925368369558917e-05, -3.795848112928681349e-05, -3.555777334090570919e-05, -3.315713421542122849e-05, -3.075656764938562813e-05, -2.835607753886760051e-05, -2.595566777976702778e-05, -2.355534226759451605e-05, -2.115510489757223977e-05, -1.875495956441349636e-05, -1.635491016263763975e-05, -1.395496058640297950e-05, -1.155511472939360528e-05, -9.155376484866558194e-06, -6.755749746020102844e-06, -4.356238405291772550e-06, -1.956846354940695586e-06, 4.424225131727705518e-07, 2.841564307753869747e-06, 5.240575137705156809e-06, 7.639451112560913671e-06, 1.003818834211883887e-05, 1.243678293660690336e-05, 1.483523100685022276e-05, 1.723352866395615762e-05, 1.963167201948132123e-05, 2.202965718559828413e-05, 2.442748027478070151e-05, 2.682513739997052259e-05, 2.922262467474436481e-05, 3.161993821299902748e-05, 3.401707412911823185e-05, 3.641402853813926642e-05, 3.881079755538514761e-05, 4.120737729695197544e-05, 4.360376387907356391e-05, 4.599995341882294020e-05, 4.839594203374431215e-05, 5.079172584180572937e-05, 5.318730096151269403e-05, 5.558266351207424031e-05, 5.797780961308908498e-05, 6.037273538471174073e-05, 6.276743694781955105e-05, 6.516191042369764823e-05, 6.755615193426029992e-05, 6.995015760194873674e-05, 7.234392354995209903e-05, 7.473744590189299118e-05, 7.713072078199373046e-05, 7.952374431518987653e-05, 8.191651262708281116e-05, 8.430902184357196331e-05, 8.670126809150280963e-05, 8.909324749829773075e-05, 9.148495619191058322e-05, 9.387639030099204031e-05, 9.626754595478950662e-05, 9.865841928336683165e-05, 1.010490064172903790e-04, 1.034393034877948824e-04, 1.058293066269504667e-04, 1.082190119673486227e-04, 1.106084156422682251e-04, 1.129975137858419987e-04, 1.153863025327426281e-04, 1.177747780183489114e-04, 1.201629363789128634e-04, 1.225507737511909916e-04, 1.249382862728785871e-04, 1.273254700822421394e-04, 1.297123213182860052e-04, 1.320988361209173565e-04, 1.344850106306340386e-04, 1.368708409886901548e-04, 1.392563233372612450e-04, 1.416414538191327125e-04, 1.440262285778640811e-04, 1.464106437579562332e-04, 1.487946955045371536e-04, 1.511783799635285446e-04, 1.535616932818115188e-04, 1.559446316069138612e-04, 1.583271910872285232e-04, 1.607093678719131709e-04, 1.630911581110572610e-04, 1.654725579556342544e-04, 1.678535635571343969e-04, 1.702341710682119609e-04, 1.726143766423162101e-04, 1.749941764336465134e-04, 1.773735665972633944e-04, 1.797525432892560135e-04, 1.821311026664267465e-04, 1.845092408865135812e-04, 1.868869541080857093e-04, 1.892642384907671155e-04, 1.916410901949200992e-04, 1.940175053818117806e-04, 1.963934802137281589e-04, 1.987690108539245373e-04, 2.011440934662628570e-04, 2.035187242159064273e-04, 2.058928992686885129e-04, 2.082666147915972438e-04, 2.106398669524112686e-04, 2.130126519198624396e-04, 2.153849658638043246e-04, 2.177568049548965414e-04, 2.201281653647731889e-04, 2.224990432662063173e-04, 2.248694348327949521e-04, 2.272393362391305434e-04, 2.296087436609591079e-04, 2.319776532748740207e-04, 2.343460612584785912e-04, 2.367139637905500758e-04, 2.390813570507312495e-04, 2.414482372196921417e-04, 2.438146004792973557e-04, 2.461804430122401508e-04, 2.485457610025261586e-04, 2.509105506348424859e-04, 2.532748080952565645e-04, 2.556385295708439175e-04, 2.580017112496493987e-04, 2.603643493207945833e-04, 2.627264399746433252e-04, 2.650879794024922718e-04, 2.674489637967334939e-04, 2.698093893510189055e-04, 2.721692522599523500e-04, 2.745285487193043807e-04, 2.768872749259138153e-04, 2.792454270778509627e-04, 2.816030013743736041e-04, 2.839599940155594486e-04, 2.863164012029519923e-04, 2.886722191391887459e-04, 2.910274440279630699e-04, 2.933820720741821980e-04, 2.957360994838717722e-04, 2.980895224643903530e-04, 3.004423372241206381e-04, 3.027945399726339904e-04, 3.051461269208523091e-04, 3.074970942807414174e-04, 3.098474382654724463e-04, 3.121971550895873918e-04, 3.145462409686876782e-04, 3.168946921196016671e-04, 3.192425047605419210e-04, 3.215896751108054214e-04, 3.239361993909266584e-04, 3.262820738228512109e-04, 3.286272946295656547e-04, 3.309718580355301590e-04, 3.333157602663133811e-04, 3.356589975487575908e-04, 3.380015661111404873e-04, 3.403434621828703216e-04, 3.426846819946435395e-04, 3.450252217786127246e-04, 3.473650777680779801e-04, 3.497042461976467400e-04, 3.520427233033988391e-04, 3.543805053225810935e-04, 3.567175884937651598e-04, 3.590539690570168337e-04, 3.613896432535290476e-04, 3.637246073261035813e-04, 3.660588575185269957e-04, 3.683923900762587213e-04, 3.707252012461204342e-04, 3.730572872759922633e-04, 3.753886444154418437e-04, 3.777192689153674519e-04, 3.800491570279494334e-04, 3.823783050068164653e-04, 3.847067091069433157e-04, 3.870343655848693110e-04, 3.893612706983861390e-04, 3.916874207067057388e-04, 3.940128118706221166e-04, 3.963374404521974705e-04, 3.986613027149346318e-04, 4.009843949238815286e-04, 4.033067133455871126e-04, 4.056282542477390187e-04, 4.079490138998514374e-04, 4.102689885726445171e-04, 4.125881745385172393e-04, 4.149065680711910950e-04, 4.172241654458714146e-04, 4.195409629394099976e-04, 4.218569568299969830e-04, 4.241721433973267316e-04, 4.264865189227540600e-04, 4.288000796889957595e-04, 4.311128219802835230e-04, 4.334247420825355196e-04, 4.357358362830414346e-04, 4.380461008706314414e-04, 4.403555321358326529e-04, 4.426641263705163214e-04, 4.449718798683171541e-04, 4.472787889242702138e-04, 4.495848498349858005e-04, 4.518900588988493785e-04, 4.541944124154626700e-04, 4.564979066863274616e-04, 4.588005380144801197e-04, 4.611023027044537518e-04, 4.634031970623819102e-04, 4.657032173961645296e-04, 4.680023600151590919e-04, 4.703006212303454249e-04, 4.725979973544834536e-04, 4.748944847018101117e-04, 4.771900795882536342e-04, 4.794847783313364127e-04, 4.817785772503304698e-04, 4.840714726662164770e-04, 4.863634609013300870e-04, 4.886545382799809597e-04, 4.909447011281040281e-04, 4.932339457732078363e-04, 4.955222685445393382e-04, 4.978096657729853434e-04, 5.000961337912837200e-04, 5.023816689337207934e-04, 5.046662675362932182e-04, 5.069499259368658375e-04, 5.092326404748694080e-04, 5.115144074914614947e-04, 5.137952233296368435e-04, 5.160750843341756645e-04, 5.183539868512991805e-04, 5.206319272293320755e-04, 5.229089018181046645e-04, 5.251849069694081509e-04, 5.274599390366508257e-04, 5.297339943750137585e-04, 5.320070693416106096e-04, 5.342791602951840529e-04, 5.365502635962729602e-04, 5.388203756073606113e-04, 5.410894926925813092e-04, 5.433576112178796491e-04, 5.456247275511638250e-04, 5.478908380620113767e-04, 5.501559391218253155e-04, 5.524200271039916583e-04, 5.546830983835810552e-04, 5.569451493375077340e-04, 5.592061763446873595e-04, 5.614661757856864027e-04, 5.637251440431865048e-04, 5.659830775013801425e-04, 5.682399725466347022e-04, 5.704958255671447763e-04, 5.727506329528895537e-04, 5.750043910957332175e-04, 5.772570963895914779e-04, 5.795087452301263698e-04, 5.817593340149555033e-04, 5.840088591435629427e-04, 5.862573170174988080e-04, 5.885047040400856726e-04, 5.907510166165756650e-04, 5.929962511542596470e-04, 5.952404040624152811e-04, 5.974834717519702772e-04, 5.997254506361014139e-04, 6.019663371299467918e-04, 6.042061276503065933e-04, 6.064448186163015186e-04, 6.086824064487759327e-04, 6.109188875707591932e-04, 6.131542584071123089e-04, 6.153885153846914372e-04, 6.176216549325021666e-04, 6.198536734814029869e-04, 6.220845674642598968e-04, 6.243143333161040465e-04, 6.265429674738421479e-04, 6.287704663764028413e-04, 6.309968264649004101e-04, 6.332220441823344570e-04, 6.354461159737493899e-04, 6.376690382863888125e-04, 6.398908075693506394e-04, 6.421114202739956235e-04, 6.443308728535979179e-04, 6.465491617635060794e-04, 6.487662834612939900e-04, 6.509822344064703989e-04, 6.531970110606341801e-04, 6.554106098876254704e-04, 6.576230273532368380e-04, 6.598342599253662630e-04, 6.620443040741721789e-04, 6.642531562717812798e-04, 6.664608129924909407e-04, 6.686672707126832408e-04, 6.708725259109663431e-04, 6.730765750681380654e-04, 6.752794146668502110e-04, 6.774810411921966405e-04, 6.796814511314287766e-04, 6.818806409736628696e-04, 6.840786072104815133e-04, 6.862753463355887595e-04, 6.884708548447721716e-04, 6.906651292360470231e-04, 6.928581660095734646e-04, 6.950499616678526560e-04, 6.972405127154421636e-04, 6.994298156591035199e-04, 7.016178670079571559e-04, 7.038046632731958466e-04, 7.059902009682351987e-04, 7.081744766088164320e-04, 7.103574867129643132e-04, 7.125392278006532215e-04, 7.147196963944397801e-04, 7.168988890188910485e-04, 7.190768022010219978e-04, 7.212534324699699248e-04, 7.234287763571333385e-04, 7.256028303963309037e-04, 7.277755911235168386e-04, 7.299470550769270646e-04, 7.321172187972335970e-04, 7.342860788272564726e-04, 7.364536317121194407e-04, 7.386198739993931868e-04, 7.407848022388175595e-04, 7.429484129824509737e-04, 7.451107027848142845e-04, 7.472716682026170256e-04, 7.494313057948962962e-04, 7.515896121231800415e-04, 7.537465837511417343e-04, 7.559022172450468495e-04, 7.580565091731821404e-04, 7.602094561064788375e-04, 7.623610546181903156e-04, 7.645113012838441720e-04, 7.666601926813444668e-04, 7.688077253911239448e-04, 7.709538959958574808e-04, 7.730987010806574531e-04, 7.752421372329966563e-04, 7.773842010428869782e-04, 7.795248891026108429e-04, 7.816641980068642168e-04, 7.838021243528598249e-04, 7.859386647402836741e-04, 7.880738157709665402e-04, 7.902075740494608714e-04, 7.923399361827159620e-04, 7.944708987800312228e-04, 7.966004584532064515e-04, 7.987286118164545548e-04, 8.008553554865921508e-04, 8.029806860827634228e-04, 8.051046002265849688e-04, 8.072270945422954213e-04, 8.093481656564815779e-04, 8.114678101982117581e-04, 8.135860247991983252e-04, 8.157028060935136255e-04, 8.178181507177310428e-04, 8.199320553110789550e-04, 8.220445165151668652e-04, 8.241555309741179988e-04, 8.262650953347293326e-04, 8.283732062461430807e-04, 8.304798603602277923e-04, 8.325850543312496212e-04, 8.346887848160317036e-04, 8.367910484740863223e-04, 8.388918419673442898e-04, 8.409911619603068454e-04, 8.430890051201803126e-04, 8.451853681166067835e-04, 8.472802476218101609e-04, 8.493736403107430676e-04, 8.514655428608048455e-04, 8.535559519520402897e-04, 8.556448642670441305e-04, 8.577322764911196520e-04, 8.598181853122248072e-04, 8.619025874206559567e-04, 8.639854795096084004e-04, 8.660668582748657545e-04, 8.681467204147420543e-04, 8.702250626302004749e-04, 8.723018816249785562e-04, 8.743771741053287536e-04, 8.764509367801993911e-04, 8.785231663611569241e-04, 8.805938595625672181e-04, 8.826630131013291601e-04, 8.847306236970144122e-04, 8.867966880719682426e-04, 8.888612029512668079e-04, 8.909241650624004577e-04, 8.929855711358781773e-04, 8.950454179047238673e-04, 8.971037021046692232e-04, 8.991604204742944650e-04, 9.012155697547094731e-04, 9.032691466899348855e-04, 9.053211480265716329e-04, 9.073715705139634609e-04, 9.094204109043194442e-04, 9.114676659524536704e-04, 9.135133324159342089e-04, 9.155574070552116974e-04, 9.175998866333613018e-04, 9.196407679162154226e-04, 9.216800476725186273e-04, 9.237177226736409874e-04, 9.257537896937397329e-04, 9.277882455098885976e-04, 9.298210869017645933e-04, 9.318523106520710652e-04, 9.338819135459806289e-04, 9.359098923717509974e-04, 9.379362439204029728e-04, 9.399609649856746933e-04, 9.419840523641247404e-04, 9.440055028552733025e-04, 9.460253132613270039e-04, 9.480434803873337294e-04, 9.500600010413120773e-04, 9.520748720339871404e-04, 9.540880901789786138e-04, 9.560996522927160115e-04, 9.581095551946221126e-04, 9.601177957068503677e-04, 9.621243706544194488e-04, 9.641292768653101763e-04, 9.661325111704354872e-04, 9.681340704033143067e-04, 9.701339514006248168e-04, 9.721321510018967596e-04, 9.741286660494698040e-04, 9.761234933886276614e-04, 9.781166298675205654e-04, 9.801080723373478513e-04, 9.820978176520913511e-04, 9.840858626686561222e-04, 9.860722042470079253e-04, 9.880568392499190864e-04, 9.900397645430931808e-04, 9.920209769953144355e-04, 9.940004734781781974e-04, 9.959782508662407691e-04, 9.979543060371404064e-04, 9.999286358713032827e-04, 1.001901237252307997e-03, 1.003872107066564436e-03, 1.005841242203462738e-03, 1.007808639555512944e-03, 1.009774296018068739e-03, 1.011738208489493338e-03, 1.013700373871263783e-03, 1.015660789067733723e-03, 1.017619450986264598e-03, 1.019576356537361169e-03, 1.021531502634410657e-03, 1.023484886193823905e-03, 1.025436504135171989e-03, 1.027386353380921671e-03, 1.029334430856621886e-03, 1.031280733490820252e-03, 1.033225258215194047e-03, 1.035168001964515512e-03, 1.037108961676354345e-03, 1.039048134291597255e-03, 1.040985516754160210e-03, 1.042921106010928373e-03, 1.044854899011876670e-03, 1.046786892710182106e-03, 1.048717084061973103e-03, 1.050645470026520100e-03, 1.052572047566132339e-03, 1.054496813646359091e-03, 1.056419765235711884e-03, 1.058340899305819762e-03, 1.060260212831507995e-03, 1.062177702790761437e-03, 1.064093366164427018e-03, 1.066007199936787504e-03, 1.067919201095032192e-03, 1.069829366629669121e-03, 1.071737693534212171e-03, 1.073644178805322012e-03, 1.075548819442942493e-03, 1.077451612450039571e-03, 1.079352554832747023e-03, 1.081251643600479855e-03, 1.083148875765705755e-03, 1.085044248344058278e-03, 1.086937758354485821e-03, 1.088829402818987727e-03, 1.090719178762751106e-03, 1.092607083214284418e-03, 1.094493113205170266e-03, 1.096377265770187267e-03, 1.098259537947452943e-03, 1.100139926778120805e-03, 1.102018429306783447e-03, 1.103895042580945634e-03, 1.105769763651601742e-03, 1.107642589572923946e-03, 1.109513517402244869e-03, 1.111382544200129139e-03, 1.113249667030515424e-03, 1.115114882960462290e-03, 1.116978189060281994e-03, 1.118839582403673844e-03, 1.120699060067468101e-03, 1.122556619131808353e-03, 1.124412256680066505e-03, 1.126265969798973107e-03, 1.128117755578578966e-03, 1.129967611111977379e-03, 1.131815533495792673e-03, 1.133661519829906985e-03, 1.135505567217415593e-03, 1.137347672764762443e-03, 1.139187833581651026e-03, 1.141026046781229344e-03, 1.142862309479831433e-03, 1.144696618797118315e-03, 1.146528971856193785e-03, 1.148359365783379552e-03, 1.150187797708315633e-03, 1.152014264764126454e-03, 1.153838764087132887e-03, 1.155661292817022684e-03, 1.157481848096955646e-03, 1.159300427073320329e-03, 1.161117026895867399e-03, 1.162931644717842775e-03, 1.164744277695692722e-03, 1.166554922989409063e-03, 1.168363577762233409e-03, 1.170170239180796370e-03, 1.171974904415238120e-03, 1.173777570638966181e-03, 1.175578235028790523e-03, 1.177376894765039782e-03, 1.179173547031332281e-03, 1.180968189014691390e-03, 1.182760817905681916e-03, 1.184551430898156182e-03, 1.186340025189406254e-03, 1.188126597980256093e-03, 1.189911146474820214e-03, 1.191693667880827645e-03, 1.193474159409189115e-03, 1.195252618274485158e-03, 1.197029041694757951e-03, 1.198803426891256090e-03, 1.200575771088930937e-03, 1.202346071516149310e-03, 1.204114325404672227e-03, 1.205880529989736662e-03, 1.207644682510161140e-03, 1.209406780208134320e-03, 1.211166820329368085e-03, 1.212924800123016227e-03, 1.214680716841858759e-03, 1.216434567742040408e-03, 1.218186350083211343e-03, 1.219936061128607842e-03, 1.221683698145014773e-03, 1.223429258402495851e-03, 1.225172739174907981e-03, 1.226914137739432880e-03, 1.228653451376934868e-03, 1.230390677371700223e-03, 1.232125813011539749e-03, 1.233858855587929935e-03, 1.235589802395767713e-03, 1.237318650733501861e-03, 1.239045397903247277e-03, 1.240770041210559251e-03, 1.242492577964558797e-03, 1.244213005478043673e-03, 1.245931321067260053e-03, 1.247647522052033279e-03, 1.249361605755885604e-03, 1.251073569505755170e-03, 1.252783410632329073e-03, 1.254491126469767107e-03, 1.256196714355821897e-03, 1.257900171631994154e-03, 1.259601495643123065e-03, 1.261300683737884157e-03, 1.262997733268522152e-03, 1.264692641590822991e-03, 1.266385406064188864e-03, 1.268076024051762027e-03, 1.269764492920193210e-03, 1.271450810039763272e-03, 1.273134972784512216e-03, 1.274816978531991126e-03, 1.276496824663443446e-03, 1.278174508563716290e-03, 1.279850027621385125e-03, 1.281523379228719298e-03, 1.283194560781420303e-03, 1.284863569679077153e-03, 1.286530403324913753e-03, 1.288195059125742722e-03, 1.289857534492103511e-03, 1.291517826838161796e-03, 1.293175933581884032e-03, 1.294831852144820179e-03, 1.296485579952195207e-03, 1.298137114433064575e-03, 1.299786453020050766e-03, 1.301433593149490956e-03, 1.303078532261498163e-03, 1.304721267799934361e-03, 1.306361797212158291e-03, 1.308000117949512705e-03, 1.309636227466862059e-03, 1.311270123222959627e-03, 1.312901802680174063e-03, 1.314531263304607143e-03, 1.316158502566215855e-03, 1.317783517938588174e-03, 1.319406306899052143e-03, 1.321026866928808139e-03, 1.322645195512689269e-03, 1.324261290139294722e-03, 1.325875148301093858e-03, 1.327486767494213266e-03, 1.329096145218548004e-03, 1.330703278977877612e-03, 1.332308166279651002e-03, 1.333910804635097700e-03, 1.335511191559339518e-03, 1.337109324571149858e-03, 1.338705201193269006e-03, 1.340298818951982584e-03, 1.341890175377598391e-03, 1.343479268004180768e-03, 1.345066094369549948e-03, 1.346650652015323043e-03, 1.348232938487041758e-03, 1.349812951333971165e-03, 1.351390688109220918e-03, 1.352966146369707521e-03, 1.354539323676270338e-03, 1.356110217593489665e-03, 1.357678825689779319e-03, 1.359245145537463619e-03, 1.360809174712756349e-03, 1.362370910795497082e-03, 1.363930351369603512e-03, 1.365487494022842680e-03, 1.367042336346637561e-03, 1.368594875936514615e-03, 1.370145110391697649e-03, 1.371693037315423972e-03, 1.373238654314695674e-03, 1.374781959000408432e-03, 1.376322948987429356e-03, 1.377861621894415061e-03, 1.379397975343915096e-03, 1.380932006962473646e-03, 1.382463714380429819e-03, 1.383993095232024769e-03, 1.385520147155509460e-03, 1.387044867792939758e-03, 1.388567254790282245e-03, 1.390087305797523291e-03, 1.391605018468431180e-03, 1.393120390460840172e-03, 1.394633419436399832e-03, 1.396144103060696032e-03, 1.397652439003351996e-03, 1.399158424937817528e-03, 1.400662058541493485e-03, 1.402163337495825231e-03, 1.403662259486099890e-03, 1.405158822201567565e-03, 1.406653023335520045e-03, 1.408144860585118854e-03, 1.409634331651511479e-03, 1.411121434239794286e-03, 1.412606166059076490e-03, 1.414088524822498805e-03, 1.415568508246956318e-03, 1.417046114053546486e-03, 1.418521339967328439e-03, 1.419994183717160352e-03, 1.421464643036087589e-03, 1.422932715661124128e-03, 1.424398399333199434e-03, 1.425861691797292467e-03, 1.427322590802338875e-03, 1.428781094101397309e-03, 1.430237199451430199e-03, 1.431690904613406971e-03, 1.433142207352432630e-03, 1.434591105437517042e-03, 1.436037596641704826e-03, 1.437481678742133463e-03, 1.438923349520000771e-03, 1.440362606760351534e-03, 1.441799448252489933e-03, 1.443233871789602243e-03, 1.444665875169048701e-03, 1.446095456192138425e-03, 1.447522612664246290e-03, 1.448947342394880586e-03, 1.450369643197520382e-03, 1.451789512889712676e-03, 1.453206949293156742e-03, 1.454621950233525021e-03, 1.456034513540572844e-03, 1.457444637048208903e-03, 1.458852318594339777e-03, 1.460257556020951898e-03, 1.461660347174203707e-03, 1.463060689904227465e-03, 1.464458582065359098e-03, 1.465854021515951072e-03, 1.467247006118441340e-03, 1.468637533739505785e-03, 1.470025602249691110e-03, 1.471411209523855890e-03, 1.472794353440927710e-03, 1.474175031883893190e-03, 1.475553242739853282e-03, 1.476928983900119979e-03, 1.478302253260049565e-03, 1.479673048719139542e-03, 1.481041368180991335e-03, 1.482407209553446032e-03, 1.483770570748376436e-03, 1.485131449681795267e-03, 1.486489844273927155e-03, 1.487845752449167003e-03, 1.489199172135882232e-03, 1.490550101266771652e-03, 1.491898537778657725e-03, 1.493244479612471608e-03, 1.494587924713320802e-03, 1.495928871030462052e-03, 1.497267316517404776e-03, 1.498603259131740199e-03, 1.499936696835233287e-03, 1.501267627593919247e-03, 1.502596049377923114e-03, 1.503921960161552990e-03, 1.505245357923395456e-03, 1.506566240646133644e-03, 1.507884606316646763e-03, 1.509200452926101827e-03, 1.510513778469771504e-03, 1.511824580947134736e-03, 1.513132858361954363e-03, 1.514438608722098881e-03, 1.515741830039754297e-03, 1.517042520331236561e-03, 1.518340677617080253e-03, 1.519636299922129440e-03, 1.520929385275352711e-03, 1.522219931709959187e-03, 1.523507937263467041e-03, 1.524793399977541304e-03, 1.526076317898079513e-03, 1.527356689075308645e-03, 1.528634511563607516e-03, 1.529909783421624751e-03, 1.531182502712236061e-03, 1.532452667502614283e-03, 1.533720275864221142e-03, 1.534985325872597348e-03, 1.536247815607711493e-03, 1.537507743153773785e-03, 1.538765106599199401e-03, 1.540019904036658794e-03, 1.541272133563199778e-03, 1.542521793280035450e-03, 1.543768881292696855e-03, 1.545013395710962941e-03, 1.546255334648975049e-03, 1.547494696225081229e-03, 1.548731478561905621e-03, 1.549965679786432377e-03, 1.551197298029956002e-03, 1.552426331427899644e-03, 1.553652778120188710e-03, 1.554876636250927336e-03, 1.556097903968532833e-03, 1.557316579425803990e-03, 1.558532660779751505e-03, 1.559746146191790320e-03, 1.560957033827584150e-03, 1.562165321857105545e-03, 1.563371008454738026e-03, 1.564574091799097403e-03, 1.565774570073126971e-03, 1.566972441464188149e-03, 1.568167704163882670e-03, 1.569360356368148862e-03, 1.570550396277355099e-03, 1.571737822096110722e-03, 1.572922632033375541e-03, 1.574104824302536816e-03, 1.575284397121219952e-03, 1.576461348711530926e-03, 1.577635677299751415e-03, 1.578807381116669253e-03, 1.579976458397407135e-03, 1.581142907381395289e-03, 1.582306726312430025e-03, 1.583467913438748112e-03, 1.584626467012883663e-03, 1.585782385291734705e-03, 1.586935666536652299e-03, 1.588086309013292440e-03, 1.589234310991719055e-03, 1.590379670746326808e-03, 1.591522386555974892e-03, 1.592662456703928479e-03, 1.593799879477682431e-03, 1.594934653169272250e-03, 1.596066776075146356e-03, 1.597196246495976571e-03, 1.598323062737000725e-03, 1.599447223107832708e-03, 1.600568725922430153e-03, 1.601687569499193539e-03, 1.602803752160902656e-03, 1.603917272234829357e-03, 1.605028128052574717e-03, 1.606136317950172679e-03, 1.607241840268140145e-03, 1.608344693351342969e-03, 1.609444875549076405e-03, 1.610542385215126037e-03, 1.611637220707650905e-03, 1.612729380389225356e-03, 1.613818862626936182e-03, 1.614905665792216310e-03, 1.615989788261022828e-03, 1.617071228413687143e-03, 1.618149984634993481e-03, 1.619226055314231145e-03, 1.620299438845073303e-03, 1.621370133625635312e-03, 1.622438138058577726e-03, 1.623503450550921540e-03, 1.624566069514162903e-03, 1.625625993364322123e-03, 1.626683220521805322e-03, 1.627737749411503100e-03, 1.628789578462828047e-03, 1.629838706109590276e-03, 1.630885130790107797e-03, 1.631928850947140597e-03, 1.632969865027973254e-03, 1.634008171484397373e-03, 1.635043768772542240e-03, 1.636076655353156488e-03, 1.637106829691459568e-03, 1.638134290257108787e-03, 1.639159035524251134e-03, 1.640181063971595486e-03, 1.641200374082272748e-03, 1.642216964343945138e-03, 1.643230833248737668e-03, 1.644241979293355237e-03, 1.645250400978935179e-03, 1.646256096811112750e-03, 1.647259065300095068e-03, 1.648259304960600401e-03, 1.649256814311737601e-03, 1.650251591877288215e-03, 1.651243636185429579e-03, 1.652232945768952960e-03, 1.653219519165106130e-03, 1.654203354915654081e-03, 1.655184451566957303e-03, 1.656162807669834961e-03, 1.657138421779639917e-03, 1.658111292456317500e-03, 1.659081418264285153e-03, 1.660048797772496190e-03, 1.661013429554500940e-03, 1.661975312188334426e-03, 1.662934444256561903e-03, 1.663890824346369928e-03, 1.664844451049419779e-03, 1.665795322961918139e-03, 1.666743438684692349e-03, 1.667688796823037743e-03, 1.668631395986904138e-03, 1.669571234790653618e-03, 1.670508311853323349e-03, 1.671442625798513033e-03, 1.672374175254318562e-03, 1.673302958853412894e-03, 1.674228975233092677e-03, 1.675152223035161585e-03, 1.676072700905997326e-03, 1.676990407496608236e-03, 1.677905341462518135e-03, 1.678817501463840270e-03, 1.679726886165252599e-03, 1.680633494236056331e-03, 1.681537324350140371e-03, 1.682438375185875716e-03, 1.683336645426322317e-03, 1.684232133759121534e-03, 1.685124838876455363e-03, 1.686014759475120165e-03, 1.686901894256483733e-03, 1.687786241926575925e-03, 1.688667801195952931e-03, 1.689546570779778363e-03, 1.690422549397872483e-03, 1.691295735774599011e-03, 1.692166128638920419e-03, 1.693033726724461029e-03, 1.693898528769457795e-03, 1.694760533516642556e-03, 1.695619739713500728e-03, 1.696476146112048822e-03, 1.697329751468915114e-03, 1.698180554545414452e-03, 1.699028554107388875e-03, 1.699873748925393889e-03, 1.700716137774535824e-03, 1.701555719434550773e-03, 1.702392492689860535e-03, 1.703226456329446194e-03, 1.704057609146933557e-03, 1.704885949940621774e-03, 1.705711477513400295e-03, 1.706534190672778350e-03, 1.707354088230964538e-03, 1.708171169004755801e-03, 1.708985431815571469e-03, 1.709796875489544982e-03, 1.710605498857368416e-03, 1.711411300754473331e-03, 1.712214280020805902e-03, 1.713014435501075206e-03, 1.713811766044617043e-03, 1.714606270505385482e-03, 1.715397947741978879e-03, 1.716186796617712521e-03, 1.716972816000506301e-03, 1.717756004762923750e-03, 1.718536361782253353e-03, 1.719313885940382562e-03, 1.720088576123881717e-03, 1.720860431223977371e-03, 1.721629450136591107e-03, 1.722395631762279038e-03, 1.723158975006259348e-03, 1.723919478778446765e-03, 1.724677141993458855e-03, 1.725431963570470736e-03, 1.726183942433457286e-03, 1.726933077510990405e-03, 1.727679367736367592e-03, 1.728422812047535626e-03, 1.729163409387108122e-03, 1.729901158702436877e-03, 1.730636058945508437e-03, 1.731368109072990063e-03, 1.732097308046277656e-03, 1.732823654831424634e-03, 1.733547148399154940e-03, 1.734267787724941539e-03, 1.734985571788900819e-03, 1.735700499575834870e-03, 1.736412570075298060e-03, 1.737121782281464541e-03, 1.737828135193284591e-03, 1.738531627814349527e-03, 1.739232259152958269e-03, 1.739930028222165265e-03, 1.740624934039619381e-03, 1.741316975627780301e-03, 1.742006152013777804e-03, 1.742692462229436046e-03, 1.743375905311272695e-03, 1.744056480300571789e-03, 1.744734186243275748e-03, 1.745409022190048259e-03, 1.746080987196298347e-03, 1.746750080322115317e-03, 1.747416300632313865e-03, 1.748079647196411953e-03, 1.748740119088681988e-03, 1.749397715388116559e-03, 1.750052435178358181e-03, 1.750704277547852385e-03, 1.751353241589750139e-03, 1.751999326401899393e-03, 1.752642531086892131e-03, 1.753282854752032062e-03, 1.753920296509389265e-03, 1.754554855475730802e-03, 1.755186530772545215e-03, 1.755815321526098694e-03, 1.756441226867349421e-03, 1.757064245931985519e-03, 1.757684377860465816e-03, 1.758301621797996647e-03, 1.758915976894434921e-03, 1.759527442304469622e-03, 1.760136017187480424e-03, 1.760741700707618360e-03, 1.761344492033753342e-03, 1.761944390339486742e-03, 1.762541394803218177e-03, 1.763135504608041425e-03, 1.763726718941794518e-03, 1.764315036997113296e-03, 1.764900457971343376e-03, 1.765482981066565302e-03, 1.766062605489662415e-03, 1.766639330452225232e-03, 1.767213155170600011e-03, 1.767784078865932123e-03, 1.768352100764068692e-03, 1.768917220095617788e-03, 1.769479436095991150e-03, 1.770038748005296411e-03, 1.770595155068469592e-03, 1.771148656535122008e-03, 1.771699251659683821e-03, 1.772246939701360236e-03, 1.772791719924075122e-03, 1.773333591596521321e-03, 1.773872553992191436e-03, 1.774408606389309313e-03, 1.774941748070884466e-03, 1.775471978324661988e-03, 1.775999296443213837e-03, 1.776523701723826520e-03, 1.777045193468574378e-03, 1.777563770984312216e-03, 1.778079433582686799e-03, 1.778592180580036231e-03, 1.779102011297553675e-03, 1.779608925061187171e-03, 1.780112921201655249e-03, 1.780613999054433266e-03, 1.781112157959782900e-03, 1.781607397262776433e-03, 1.782099716313227363e-03, 1.782589114465724664e-03, 1.783075591079673989e-03, 1.783559145519237818e-03, 1.784039777153342615e-03, 1.784517485355744098e-03, 1.784992269504945706e-03, 1.785464128984224188e-03, 1.785933063181690747e-03, 1.786399071490202359e-03, 1.786862153307397115e-03, 1.787322308035736934e-03, 1.787779535082426041e-03, 1.788233833859503765e-03, 1.788685203783769301e-03, 1.789133644276799055e-03, 1.789579154765005408e-03, 1.790021734679544344e-03, 1.790461383456384836e-03, 1.790898100536305595e-03, 1.791331885364847148e-03, 1.791762737392343496e-03, 1.792190656073966134e-03, 1.792615640869634711e-03, 1.793037691244085555e-03, 1.793456806666835889e-03, 1.793872986612220265e-03, 1.794286230559382755e-03, 1.794696537992205394e-03, 1.795103908399431347e-03, 1.795508341274590965e-03, 1.795909836115969693e-03, 1.796308392426710634e-03, 1.796704009714734755e-03, 1.797096687492760834e-03, 1.797486425278310013e-03, 1.797873222593700812e-03, 1.798257078966080573e-03, 1.798637993927370594e-03, 1.799015967014300178e-03, 1.799390997768434385e-03, 1.799763085736106379e-03, 1.800132230468456246e-03, 1.800498431521457658e-03, 1.800861688455888824e-03, 1.801222000837286947e-03, 1.801579368236059901e-03, 1.801933790227373258e-03, 1.802285266391245692e-03, 1.802633796312468756e-03, 1.802979379580648724e-03, 1.803322015790221559e-03, 1.803661704540413880e-03, 1.803998445435266813e-03, 1.804332238083638596e-03, 1.804663082099191782e-03, 1.804990977100402348e-03, 1.805315922710561865e-03, 1.805637918557769688e-03, 1.805956964274932092e-03, 1.806273059499784823e-03, 1.806586203874859702e-03, 1.806896397047521056e-03, 1.807203638669924737e-03, 1.807507928399047174e-03, 1.807809265896708796e-03, 1.808107650829486428e-03, 1.808403082868822141e-03, 1.808695561690964928e-03, 1.808985086976957687e-03, 1.809271658412674958e-03, 1.809555275688812725e-03, 1.809835938500869990e-03, 1.810113646549168500e-03, 1.810388399538846033e-03, 1.810660197179856821e-03, 1.810929039186983270e-03, 1.811194925279794969e-03, 1.811457855182720903e-03, 1.811717828624987868e-03, 1.811974845340613097e-03, 1.812228905068490135e-03, 1.812480007552286915e-03, 1.812728152540502360e-03, 1.812973339786455324e-03, 1.813215569048279600e-03, 1.813454840088936934e-03, 1.813691152676199896e-03, 1.813924506582662716e-03, 1.814154901585747362e-03, 1.814382337467675783e-03, 1.814606814015499395e-03, 1.814828331021108628e-03, 1.815046888281181530e-03, 1.815262485597232559e-03, 1.815475122775599788e-03, 1.815684799627431461e-03, 1.815891515968701391e-03, 1.816095271620200065e-03, 1.816296066407543106e-03, 1.816493900161165846e-03, 1.816688772716320080e-03, 1.816880683913071892e-03, 1.817069633596324211e-03, 1.817255621615792302e-03, 1.817438647825997053e-03, 1.817618712086307032e-03, 1.817795814260893825e-03, 1.817969954218737671e-03, 1.818141131833675385e-03, 1.818309346984327496e-03, 1.818474599554151380e-03, 1.818636889431415448e-03, 1.818796216509224739e-03, 1.818952580685492945e-03, 1.819105981862944145e-03, 1.819256419949136661e-03, 1.819403894856446574e-03, 1.819548406502062522e-03, 1.819689954807993072e-03, 1.819828539701072142e-03, 1.819964161112952493e-03, 1.820096818980098795e-03, 1.820226513243787189e-03, 1.820353243850138464e-03, 1.820477010750073607e-03, 1.820597813899322692e-03, 1.820715653258456537e-03, 1.820830528792856352e-03, 1.820942440472704408e-03, 1.821051388273022204e-03, 1.821157372173634256e-03, 1.821260392159188696e-03, 1.821360448219151848e-03, 1.821457540347798257e-03, 1.821551668544228904e-03, 1.821642832812354939e-03, 1.821731033160898768e-03, 1.821816269603410100e-03, 1.821898542158242960e-03, 1.821977850848574988e-03, 1.822054195702387273e-03, 1.822127576752485172e-03, 1.822197994036488982e-03, 1.822265447596818329e-03, 1.822329937480726865e-03, 1.822391463740263015e-03, 1.822450026432301858e-03, 1.822505625618521270e-03, 1.822558261365413634e-03, 1.822607933744275653e-03, 1.822654642831241737e-03, 1.822698388707224811e-03, 1.822739171457962932e-03, 1.822776991174011266e-03, 1.822811847950716506e-03, 1.822843741888255245e-03, 1.822872673091595168e-03, 1.822898641670522586e-03, 1.822921647739625308e-03, 1.822941691418306955e-03, 1.822958772830771340e-03, 1.822972892106033971e-03, 1.822984049377912932e-03, 1.822992244785026509e-03, 1.822997478470812912e-03, 1.822999750583506866e-03, 1.822999061276138954e-03, 1.822995410706561856e-03, 1.822988799037415656e-03, 1.822979226436149741e-03, 1.822966693075014129e-03, 1.822951199131065108e-03, 1.822932744786150052e-03, 1.822911330226932580e-03, 1.822886955644856992e-03, 1.822859621236185132e-03, 1.822829327201960174e-03, 1.822796073748041319e-03, 1.822759861085074739e-03, 1.822720689428504849e-03, 1.822678558998572359e-03, 1.822633470020319909e-03, 1.822585422723577110e-03, 1.822534417342974635e-03, 1.822480454117930129e-03, 1.822423533292661865e-03, 1.822363655116176172e-03, 1.822300819842277621e-03, 1.822235027729556239e-03, 1.822166279041390101e-03, 1.822094574045950328e-03, 1.822019913016204333e-03, 1.821942296229903894e-03, 1.821861723969577570e-03, 1.821778196522560837e-03, 1.821691714180960963e-03, 1.821602277241677822e-03, 1.821509886006385248e-03, 1.821414540781561174e-03, 1.821316241878456841e-03, 1.821214989613097884e-03, 1.821110784306304497e-03, 1.821003626283673434e-03, 1.820893515875575625e-03, 1.820780453417177860e-03, 1.820664439248409613e-03, 1.820545473713985809e-03, 1.820423557163398801e-03, 1.820298689950913817e-03, 1.820170872435577852e-03, 1.820040104981205135e-03, 1.819906387956388844e-03, 1.819769721734496547e-03, 1.819630106693664786e-03, 1.819487543216793219e-03, 1.819342031691575847e-03, 1.819193572510446584e-03, 1.819042166070635423e-03, 1.818887812774120077e-03, 1.818730513027651784e-03, 1.818570267242756392e-03, 1.818407075835709423e-03, 1.818240939227560140e-03, 1.818071857844125259e-03, 1.817899832115962930e-03, 1.817724862478420442e-03, 1.817546949371594322e-03, 1.817366093240327298e-03, 1.817182294534234544e-03, 1.816995553707692612e-03, 1.816805871219823610e-03, 1.816613247534502136e-03, 1.816417683120382385e-03, 1.816219178450830061e-03, 1.816017734004005861e-03, 1.815813350262793051e-03, 1.815606027714845600e-03, 1.815395766852545036e-03, 1.815182568173034916e-03, 1.814966432178207823e-03, 1.814747359374696686e-03, 1.814525350273877170e-03, 1.814300405391874394e-03, 1.814072525249560766e-03, 1.813841710372537551e-03, 1.813607961291153949e-03, 1.813371278540497778e-03, 1.813131662660401973e-03, 1.812889114195430059e-03, 1.812643633694865312e-03, 1.812395221712768218e-03, 1.812143878807897981e-03, 1.811889605543746777e-03, 1.811632402488557976e-03, 1.811372270215290360e-03, 1.811109209301648478e-03, 1.810843220330034947e-03, 1.810574303887607260e-03, 1.810302460566246777e-03, 1.810027690962534228e-03, 1.809749995677802613e-03, 1.809469375318094059e-03, 1.809185830494172394e-03, 1.808899361821509700e-03, 1.808609969920321010e-03, 1.808317655415520725e-03, 1.808022418936736705e-03, 1.807724261118329786e-03, 1.807423182599347594e-03, 1.807119184023578320e-03, 1.806812266039487186e-03, 1.806502429300281499e-03, 1.806189674463865111e-03, 1.805874002192833653e-03, 1.805555413154505753e-03, 1.805233908020902880e-03, 1.804909487468734589e-03, 1.804582152179429536e-03, 1.804251902839115740e-03, 1.803918740138598471e-03, 1.803582664773397759e-03, 1.803243677443734519e-03, 1.802901778854505612e-03, 1.802556969715319625e-03, 1.802209250740453503e-03, 1.801858622648910445e-03, 1.801505086164349864e-03, 1.801148642015123818e-03, 1.800789290934279611e-03, 1.800427033659556973e-03, 1.800061870933351415e-03, 1.799693803502765621e-03, 1.799322832119576703e-03, 1.798948957540222977e-03, 1.798572180525838653e-03, 1.798192501842234324e-03, 1.797809922259896529e-03, 1.797424442553949373e-03, 1.797036063504239747e-03, 1.796644785895260997e-03, 1.796250610516168106e-03, 1.795853538160765333e-03, 1.795453569627583406e-03, 1.795050705719762434e-03, 1.794644947245121287e-03, 1.794236295016133102e-03, 1.793824749849937854e-03, 1.793410312568339106e-03, 1.792992983997776036e-03, 1.792572764969357262e-03, 1.792149656318850872e-03, 1.791723658886648857e-03, 1.791294773517810700e-03, 1.790863001062057303e-03, 1.790428342373720895e-03, 1.789990798311807269e-03, 1.789550369739960215e-03, 1.789107057526443528e-03, 1.788660862544196517e-03, 1.788211785670753770e-03, 1.787759827788323874e-03, 1.787304989783737802e-03, 1.786847272548434170e-03, 1.786386676978539466e-03, 1.785923203974751610e-03, 1.785456854442413893e-03, 1.784987629291514112e-03, 1.784515529436654212e-03, 1.784040555797040961e-03, 1.783562709296526499e-03, 1.783081990863579500e-03, 1.782598401431254812e-03, 1.782111941937269137e-03, 1.781622613323917328e-03, 1.781130416538136141e-03, 1.780635352531446339e-03, 1.780137422259965704e-03, 1.779636626684474518e-03, 1.779132966770309099e-03, 1.778626443487407770e-03, 1.778117057810338396e-03, 1.777604810718250465e-03, 1.777089703194913032e-03, 1.776571736228643164e-03, 1.776050910812396362e-03, 1.775527227943715387e-03, 1.775000688624696864e-03, 1.774471293862072384e-03, 1.773939044667140631e-03, 1.773403942055776271e-03, 1.772865987048415212e-03, 1.772325180670158247e-03, 1.771781523950585226e-03, 1.771235017923925058e-03, 1.770685663628932547e-03, 1.770133462108958644e-03, 1.769578414411939393e-03, 1.769020521590341719e-03, 1.768459784701225876e-03, 1.767896204806234609e-03, 1.767329782971522895e-03, 1.766760520267848149e-03, 1.766188417770524254e-03, 1.765613476559396407e-03, 1.765035697718883622e-03, 1.764455082337980244e-03, 1.763871631510177240e-03, 1.763285346333554569e-03, 1.762696227910749529e-03, 1.762104277348896901e-03, 1.761509495759731522e-03, 1.760911884259456226e-03, 1.760311443968918133e-03, 1.759708176013407644e-03, 1.759102081522774443e-03, 1.758493161631423385e-03, 1.757881417478286950e-03, 1.757266850206794890e-03, 1.756649460964930824e-03, 1.756029250905201660e-03, 1.755406221184646490e-03, 1.754780372964779341e-03, 1.754151707411675696e-03, 1.753520225695932595e-03, 1.752885928992623096e-03, 1.752248818481335095e-03, 1.751608895346221627e-03, 1.750966160775887029e-03, 1.750320615963442666e-03, 1.749672262106527964e-03, 1.749021100407274635e-03, 1.748367132072326403e-03, 1.747710358312781981e-03, 1.747050780344276168e-03, 1.746388399386928671e-03, 1.745723216665316354e-03, 1.745055233408544793e-03, 1.744384450850196451e-03, 1.743710870228300540e-03, 1.743034492785415631e-03, 1.742355319768572851e-03, 1.741673352429228602e-03, 1.740988592023372554e-03, 1.740301039811453917e-03, 1.739610697058353254e-03, 1.738917565033474850e-03, 1.738221645010633526e-03, 1.737522938268143110e-03, 1.736821446088783255e-03, 1.736117169759748271e-03, 1.735410110572726487e-03, 1.734700269823863600e-03, 1.733987648813710859e-03, 1.733272248847318514e-03, 1.732554071234173590e-03, 1.731833117288161502e-03, 1.731109388327666454e-03, 1.730382885675490340e-03, 1.729653610658879416e-03, 1.728921564609493290e-03, 1.728186748863409262e-03, 1.727449164761217298e-03, 1.726708813647846123e-03, 1.725965696872652777e-03, 1.725219815789507186e-03, 1.724471171756606757e-03, 1.723719766136578083e-03, 1.722965600296497536e-03, 1.722208675607834897e-03, 1.721448993446497580e-03, 1.720686555192734802e-03, 1.719921362231260735e-03, 1.719153415951191199e-03, 1.718382717745986629e-03, 1.717609269013565913e-03, 1.716833071156230938e-03, 1.716054125580653792e-03, 1.715272433697869608e-03, 1.714487996923404938e-03, 1.713700816677065676e-03, 1.712910894383098829e-03, 1.712118231470091245e-03, 1.711322829371045295e-03, 1.710524689523328350e-03, 1.709723813368652394e-03, 1.708920202353136691e-03, 1.708113857927258134e-03, 1.707304781545821099e-03, 1.706492974668045266e-03, 1.705678438757492329e-03, 1.704861175282050816e-03, 1.704041185714001358e-03, 1.703218471529978307e-03, 1.702393034210912060e-03, 1.701564875242156123e-03, 1.700733996113325784e-03, 1.699900398318442965e-03, 1.699064083355859020e-03, 1.698225052728189041e-03, 1.697383307942511993e-03, 1.696538850510127209e-03, 1.695691681946677118e-03, 1.694841803772171532e-03, 1.693989217510926499e-03, 1.693133924691552156e-03, 1.692275926846996100e-03, 1.691415225514527340e-03, 1.690551822235728712e-03, 1.689685718556451768e-03, 1.688816916026892679e-03, 1.687945416201561220e-03, 1.687071220639230467e-03, 1.686194330902945470e-03, 1.685314748560162680e-03, 1.684432475182521616e-03, 1.683547512345960661e-03, 1.682659861630748065e-03, 1.681769524621424920e-03, 1.680876502906815785e-03, 1.679980798079975992e-03, 1.679082411738289874e-03, 1.678181345483417426e-03, 1.677277600921231416e-03, 1.676371179661922126e-03, 1.675462083319953326e-03, 1.674550313513980312e-03, 1.673635871866990203e-03, 1.672718760006209346e-03, 1.671798979563066242e-03, 1.670876532173322078e-03, 1.669951419476892055e-03, 1.669023643118009966e-03, 1.668093204745137994e-03, 1.667160106010927246e-03, 1.666224348572310559e-03, 1.665285934090470626e-03, 1.664344864230745888e-03, 1.663401140662762803e-03, 1.662454765060368631e-03, 1.661505739101592615e-03, 1.660554064468708433e-03, 1.659599742848226825e-03, 1.658642775930805604e-03, 1.657683165411365451e-03, 1.656720912989020304e-03, 1.655756020367108155e-03, 1.654788489253106263e-03, 1.653818321358698591e-03, 1.652845518399863843e-03, 1.651870082096653205e-03, 1.650892014173329985e-03, 1.649911316358382415e-03, 1.648927990384476371e-03, 1.647942037988396613e-03, 1.646953460911165616e-03, 1.645962260897958348e-03, 1.644968439698135665e-03, 1.643971999065172969e-03, 1.642972940756760175e-03, 1.641971266534749448e-03, 1.640966978165110755e-03, 1.639960077417950725e-03, 1.638950566067648613e-03, 1.637938445892576358e-03, 1.636923718675347729e-03, 1.635906386202720967e-03, 1.634886450265509231e-03, 1.633863912658765774e-03, 1.632838775181582290e-03, 1.631811039637241995e-03, 1.630780707833160434e-03, 1.629747781580804600e-03, 1.628712262695826722e-03, 1.627674152998004851e-03, 1.626633454311149406e-03, 1.625590168463263846e-03, 1.624544297286445796e-03, 1.623495842616829365e-03, 1.622444806294726528e-03, 1.621391190164538651e-03, 1.620334996074692746e-03, 1.619276225877799760e-03, 1.618214881430451177e-03, 1.617150964593467308e-03, 1.616084477231627750e-03, 1.615015421213802579e-03, 1.613943798412988996e-03, 1.612869610706248657e-03, 1.611792859974650865e-03, 1.610713548103390310e-03, 1.609631676981727443e-03, 1.608547248502917347e-03, 1.607460264564326618e-03, 1.606370727067357685e-03, 1.605278637917486977e-03, 1.604183999024188590e-03, 1.603086812300949255e-03, 1.601987079665437687e-03, 1.600884803039220525e-03, 1.599779984347891350e-03, 1.598672625521220742e-03, 1.597562728492852050e-03, 1.596450295200476819e-03, 1.595335327585860156e-03, 1.594217827594752480e-03, 1.593097797176937442e-03, 1.591975238286140416e-03, 1.590850152880161211e-03, 1.589722542920798606e-03, 1.588592410373786167e-03, 1.587459757208908905e-03, 1.586324585399955791e-03, 1.585186896924629767e-03, 1.584046693764684134e-03, 1.582903977905858808e-03, 1.581758751337799650e-03, 1.580611016054218497e-03, 1.579460774052701254e-03, 1.578308027334878339e-03, 1.577152777906342708e-03, 1.575995027776572015e-03, 1.574834778959071724e-03, 1.573672033471306374e-03, 1.572506793334612404e-03, 1.571339060574351680e-03, 1.570168837219822590e-03, 1.568996125304189353e-03, 1.567820926864631420e-03, 1.566643243942256094e-03, 1.565463078582025012e-03, 1.564280432832929795e-03, 1.563095308747748094e-03, 1.561907708383359966e-03, 1.560717633800408300e-03, 1.559525087063446920e-03, 1.558330070241084131e-03, 1.557132585405683698e-03, 1.555932634633533981e-03, 1.554730220004872220e-03, 1.553525343603829895e-03, 1.552318007518348588e-03, 1.551108213840333722e-03, 1.549895964665545280e-03, 1.548681262093654391e-03, 1.547464108228120607e-03, 1.546244505176361901e-03, 1.545022455049654270e-03, 1.543797959963094874e-03, 1.542571022035612010e-03, 1.541341643390141403e-03, 1.540109826153299643e-03, 1.538875572455677141e-03, 1.537638884431609789e-03, 1.536399764219350053e-03, 1.535158213960992162e-03, 1.533914235802381247e-03, 1.532667831893278583e-03, 1.531419004387270938e-03, 1.530167755441689485e-03, 1.528914087217762450e-03, 1.527658001880545947e-03, 1.526399501598807310e-03, 1.525138588545220690e-03, 1.523875264896267087e-03, 1.522609532832128101e-03, 1.521341394536888892e-03, 1.520070852198410465e-03, 1.518797908008274154e-03, 1.517522564161948159e-03, 1.516244822858547501e-03, 1.514964686301166225e-03, 1.513682156696504865e-03, 1.512397236255054976e-03, 1.511109927191141419e-03, 1.509820231722845598e-03, 1.508528152071931085e-03, 1.507233690463995624e-03, 1.505936849128395672e-03, 1.504637630298145999e-03, 1.503336036210094900e-03, 1.502032069104797338e-03, 1.500725731226586939e-03, 1.499417024823456943e-03, 1.498105952147107478e-03, 1.496792515453145489e-03, 1.495476717000709596e-03, 1.494158559052696919e-03, 1.492838043875781935e-03, 1.491515173740300690e-03, 1.490189950920341871e-03, 1.488862377693600438e-03, 1.487532456341560420e-03, 1.486200189149392784e-03, 1.484865578405889733e-03, 1.483528626403600231e-03, 1.482189335438757576e-03, 1.480847707811221289e-03, 1.479503745824496848e-03, 1.478157451785933659e-03, 1.476808828006335615e-03, 1.475457876800301315e-03, 1.474104600486080517e-03, 1.472749001385488055e-03, 1.471391081824112218e-03, 1.470030844131065603e-03, 1.468668290639197618e-03, 1.467303423684994303e-03, 1.465936245608482702e-03, 1.464566758753421899e-03, 1.463194965467190913e-03, 1.461820868100701092e-03, 1.460444469008570240e-03, 1.459065770549045418e-03, 1.457684775083880214e-03, 1.456301484978526645e-03, 1.454915902602048209e-03, 1.453528030327008854e-03, 1.452137870529695033e-03, 1.450745425589822094e-03, 1.449350697890918740e-03, 1.447953689819908314e-03, 1.446554403767313923e-03, 1.445152842127307670e-03, 1.443749007297626293e-03, 1.442342901679478148e-03, 1.440934527677734242e-03, 1.439523887700818513e-03, 1.438110984160613504e-03, 1.436695819472649663e-03, 1.435278396055969822e-03, 1.433858716333197064e-03, 1.432436782730418063e-03, 1.431012597677226456e-03, 1.429586163606936427e-03, 1.428157482956197814e-03, 1.426726558165179563e-03, 1.425293391677755770e-03, 1.423857985941093685e-03, 1.422420343406027984e-03, 1.420980466526781689e-03, 1.419538357761147883e-03, 1.418094019570435935e-03, 1.416647454419350501e-03, 1.415198664776168465e-03, 1.413747653112663481e-03, 1.412294421903984541e-03, 1.410838973628854168e-03, 1.409381310769462596e-03, 1.407921435811376916e-03, 1.406459351243715197e-03, 1.404995059559064957e-03, 1.403528563253360643e-03, 1.402059864826119126e-03, 1.400588966780172114e-03, 1.399115871621896875e-03, 1.397640581861095020e-03, 1.396163100010918779e-03, 1.394683428588031461e-03, 1.393201570112528745e-03, 1.391717527107829387e-03, 1.390231302100868212e-03, 1.388742897621977716e-03, 1.387252316204813044e-03, 1.385759560386526324e-03, 1.384264632707668226e-03, 1.382767535712085827e-03, 1.381268271947106926e-03, 1.379766843963429242e-03, 1.378263254315148815e-03, 1.376757505559674790e-03, 1.375249600257764547e-03, 1.373739540973735549e-03, 1.372227330275073084e-03, 1.370712970732646235e-03, 1.369196464920759268e-03, 1.367677815417029340e-03, 1.366157024802449379e-03, 1.364634095661256463e-03, 1.363109030581128277e-03, 1.361581832153072741e-03, 1.360052502971324144e-03, 1.358521045633546975e-03, 1.356987462740729452e-03, 1.355451756897092016e-03, 1.353913930710153686e-03, 1.352373986790925044e-03, 1.350831927753493207e-03, 1.349287756215410616e-03, 1.347741474797385392e-03, 1.346193086123519426e-03, 1.344642592821196055e-03, 1.343089997520977496e-03, 1.341535302856813883e-03, 1.339978511465910339e-03, 1.338419625988643280e-03, 1.336858649068762509e-03, 1.335295583353263279e-03, 1.333730431492303244e-03, 1.332163196139377666e-03, 1.330593879951241570e-03, 1.329022485587777469e-03, 1.327449015712211990e-03, 1.325873472990996395e-03, 1.324295860093713121e-03, 1.322716179693297607e-03, 1.321134434465732555e-03, 1.319550627090461869e-03, 1.317964760249920987e-03, 1.316376836629792099e-03, 1.314786858919017370e-03, 1.313194829809737150e-03, 1.311600751997187182e-03, 1.310004628179881189e-03, 1.308406461059485101e-03, 1.306806253340874304e-03, 1.305204007731994645e-03, 1.303599726944061057e-03, 1.301993413691454127e-03, 1.300385070691644201e-03, 1.298774700665208297e-03, 1.297162306336104628e-03, 1.295547890431207475e-03, 1.293931455680573037e-03, 1.292313004817464365e-03, 1.290692540578238824e-03, 1.289070065702414662e-03, 1.287445582932524859e-03, 1.285819095014330716e-03, 1.284190604696700639e-03, 1.282560114731503675e-03, 1.280927627873825261e-03, 1.279293146881844935e-03, 1.277656674516723352e-03, 1.276018213542829110e-03, 1.274377766727607985e-03, 1.272735336841479504e-03, 1.271090926658045980e-03, 1.269444538953983870e-03, 1.267796176508922783e-03, 1.266145842105696360e-03, 1.264493538530057134e-03, 1.262839268570910495e-03, 1.261183035020216467e-03, 1.259524840672864368e-03, 1.257864688326883369e-03, 1.256202580783354235e-03, 1.254538520846257754e-03, 1.252872511322717817e-03, 1.251204555022874783e-03, 1.249534654759771419e-03, 1.247862813349571477e-03, 1.246189033611411591e-03, 1.244513318367453754e-03, 1.242835670442798794e-03, 1.241156092665478576e-03, 1.239474587866749812e-03, 1.237791158880622222e-03, 1.236105808544121776e-03, 1.234418539697307391e-03, 1.232729355183227347e-03, 1.231038257847759908e-03, 1.229345250539860953e-03, 1.227650336111397013e-03, 1.225953517417227882e-03, 1.224254797315035967e-03, 1.222554178665555919e-03, 1.220851664332454727e-03, 1.219147257182217649e-03, 1.217440960084364846e-03, 1.215732775911333415e-03, 1.214022707538401713e-03, 1.212310757843717765e-03, 1.210596929708560770e-03, 1.208881226016839984e-03, 1.207163649655562014e-03, 1.205444203514453297e-03, 1.203722890486252613e-03, 1.201999713466571883e-03, 1.200274675353787740e-03, 1.198547779049259025e-03, 1.196819027457210992e-03, 1.195088423484612578e-03, 1.193355970041404517e-03, 1.191621670040380514e-03, 1.189885526397062342e-03, 1.188147542029928611e-03, 1.186407719860294420e-03, 1.184666062812190362e-03, 1.182922573812624032e-03, 1.181177255791276666e-03, 1.179430111680755114e-03, 1.177681144416484931e-03, 1.175930356936536261e-03, 1.174177752182055130e-03, 1.172423333096757553e-03, 1.170667102627174138e-03, 1.168909063722719252e-03, 1.167149219335574147e-03, 1.165387572420592630e-03, 1.163624125935505118e-03, 1.161858882840779419e-03, 1.160091846099681450e-03, 1.158323018678116727e-03, 1.156552403544859999e-03, 1.154780003671429479e-03, 1.153005822032020060e-03, 1.151229861603510467e-03, 1.149452125365751660e-03, 1.147672616301096066e-03, 1.145891337394635895e-03, 1.144108291634283146e-03, 1.142323482010610238e-03, 1.140536911516936086e-03, 1.138748583149163046e-03, 1.136958499906017819e-03, 1.135166664788908987e-03, 1.133373080801824018e-03, 1.131577750951539381e-03, 1.129780678247516894e-03, 1.127981865701770808e-03, 1.126181316329100471e-03, 1.124379033146963910e-03, 1.122575019175366161e-03, 1.120769277437114924e-03, 1.118961810957502020e-03, 1.117152622764598950e-03, 1.115341715889090141e-03, 1.113529093364192283e-03, 1.111714758225857292e-03, 1.109898713512659334e-03, 1.108080962265674480e-03, 1.106261507528706872e-03, 1.104440352348165554e-03, 1.102617499772943262e-03, 1.100792952854650827e-03, 1.098966714647485552e-03, 1.097138788208112383e-03, 1.095309176595898968e-03, 1.093477882872746733e-03, 1.091644910103168947e-03, 1.089810261354162355e-03, 1.087973939695246637e-03, 1.086135948198738719e-03, 1.084296289939260536e-03, 1.082454967994017463e-03, 1.080611985442846016e-03, 1.078767345368108468e-03, 1.076921050854573805e-03, 1.075073104989662971e-03, 1.073223510863274962e-03, 1.071372271567863806e-03, 1.069519390198262268e-03, 1.067664869851942932e-03, 1.065808713628864238e-03, 1.063950924631404784e-03, 1.062091505964388042e-03, 1.060230460735364470e-03, 1.058367792054077869e-03, 1.056503503032910985e-03, 1.054637596786708138e-03, 1.052770076432661597e-03, 1.050900945090571352e-03, 1.049030205882541759e-03, 1.047157861933235021e-03, 1.045283916369759087e-03, 1.043408372321536458e-03, 1.041531232920542066e-03, 1.039652501301177286e-03, 1.037772180600141569e-03, 1.035890273956670965e-03, 1.034006784512417343e-03, 1.032121715411306795e-03, 1.030235069799791603e-03, 1.028346850826723823e-03, 1.026457061643211953e-03, 1.024565705402924074e-03, 1.022672785261690819e-03, 1.020778304378009956e-03, 1.018882265912501688e-03, 1.016984673028185774e-03, 1.015085528890525548e-03, 1.013184836667335546e-03, 1.011282599528656170e-03, 1.009378820646991996e-03, 1.007473503197183623e-03, 1.005566650356280170e-03, 1.003658265303779967e-03, 1.001748351221461207e-03, 9.998369112934600046e-04, 9.979239487061381236e-04, 9.960094666481213600e-04, 9.940934683105862035e-04, 9.921759568867502630e-04, 9.902569355721240179e-04, 9.883364075647512945e-04, 9.864143760647001245e-04, 9.844908442743548291e-04, 9.825658153984554843e-04, 9.806392926439582748e-04, 9.787112792201204964e-04, 9.767817783383227464e-04, 9.748507932123201330e-04, 9.729183270581077264e-04, 9.709843830937934898e-04, 9.690489645398369127e-04, 9.671120746189240018e-04, 9.651737165558383702e-04, 9.632338935776979180e-04, 9.612926089138368714e-04, 9.593498657956561629e-04, 9.574056674569340550e-04, 9.554600171334659683e-04, 9.535129180633653478e-04, 9.515643734869290047e-04, 9.496143866464981220e-04, 9.476629607867132583e-04, 9.457100991543863043e-04, 9.437558049983560664e-04, 9.418000815697486925e-04, 9.398429321218379181e-04, 9.378843599099121429e-04, 9.359243681915313876e-04, 9.339629602263875389e-04, 9.320001392761666573e-04, 9.300359086048574312e-04, 9.280702714783435180e-04, 9.261032311649313332e-04, 9.241347909347657737e-04, 9.221649540600961731e-04, 9.201937238155275109e-04, 9.182211034774945746e-04, 9.162470963245581638e-04, 9.142717056374516024e-04, 9.122949346989737279e-04, 9.103167867938674607e-04, 9.083372652090675441e-04, 9.063563732335189410e-04, 9.043741141582702916e-04, 9.023904912762774561e-04, 9.004055078826744569e-04, 8.984191672746275449e-04, 8.964314727512484636e-04, 8.944424276136262158e-04, 8.924520351651354108e-04, 8.904602987108570841e-04, 8.884672215580960777e-04, 8.864728070159913790e-04, 8.844770583958013735e-04, 8.824799790107896785e-04, 8.804815721760615374e-04, 8.784818412088419171e-04, 8.764807894283300083e-04, 8.744784201555609897e-04, 8.724747367136693804e-04, 8.704697424277475521e-04, 8.684634406247066256e-04, 8.664558346335402570e-04, 8.644469277851855350e-04, 8.624367234123829018e-04, 8.604252248499324584e-04, 8.584124354345677634e-04, 8.563983585048051293e-04, 8.543829974012524028e-04, 8.523663554662039071e-04, 8.503484360441785316e-04, 8.483292424813105182e-04, 8.463087781256839384e-04, 8.442870463273520996e-04, 8.422640504382548216e-04, 8.402397938120680565e-04, 8.382142798044773255e-04, 8.361875117730336281e-04, 8.341594930770065324e-04, 8.321302270776599966e-04, 8.300997171380585134e-04, 8.280679666231550388e-04, 8.260349788996487449e-04, 8.240007573360278456e-04, 8.219653053028728486e-04, 8.199286261723156459e-04, 8.178907233183511146e-04, 8.158516001168693169e-04, 8.138112599455211678e-04, 8.117697061837993167e-04, 8.097269422128531820e-04, 8.076829714157584845e-04, 8.056377971773644826e-04, 8.035914228841701569e-04, 8.015438519245721670e-04, 7.994950876887359399e-04, 7.974451335684940804e-04, 7.953939929573850768e-04, 7.933416692509706472e-04, 7.912881658462360673e-04, 7.892334861420817471e-04, 7.871776335391432542e-04, 7.851206114396413679e-04, 7.830624232477002931e-04, 7.810030723689751278e-04, 7.789425622109694266e-04, 7.768808961828811352e-04, 7.748180776954768229e-04, 7.727541101613497228e-04, 7.706889969947750994e-04, 7.686227416115738557e-04, 7.665553474293792472e-04, 7.644868178674912732e-04, 7.624171563467393086e-04, 7.603463662897426379e-04, 7.582744511207795916e-04, 7.562014142656274095e-04, 7.541272591518959588e-04, 7.520519892085987144e-04, 7.499756078666959449e-04, 7.478981185585015451e-04, 7.458195247179896488e-04, 7.437398297808386471e-04, 7.416590371843356701e-04, 7.395771503672281602e-04, 7.374941727700011019e-04, 7.354101078347236075e-04, 7.333249590049153435e-04, 7.312387297258086906e-04, 7.291514234441651881e-04, 7.270630436083590177e-04, 7.249735936682324793e-04, 7.228830770751370821e-04, 7.207914972822520834e-04, 7.186988577440243898e-04, 7.166051619164365716e-04, 7.145104132572826844e-04, 7.124146152255637172e-04, 7.103177712820266587e-04, 7.082198848887539091e-04, 7.061209595094744464e-04, 7.040209986094221216e-04, 7.019200056551909168e-04, 6.998179841150064303e-04, 6.977149374585822194e-04, 6.956108691569687710e-04, 6.935057826828394060e-04, 6.913996815103330695e-04, 6.892925691149131683e-04, 6.871844489736399220e-04, 6.850753245650320188e-04, 6.829651993689077804e-04, 6.808540768667202883e-04, 6.787419605411666376e-04, 6.766288538765165587e-04, 6.745147603584618215e-04, 6.723996834739749641e-04, 6.702836267115769818e-04, 6.681665935612001762e-04, 6.660485875140384265e-04, 6.639296120628144452e-04, 6.618096707016473974e-04, 6.596887669258960163e-04, 6.575669042324403879e-04, 6.554440861195318969e-04, 6.533203160866449082e-04, 6.511955976347625621e-04, 6.490699342661668736e-04, 6.469433294845420559e-04, 6.448157867948229498e-04, 6.426873097032297175e-04, 6.405579017176015605e-04, 6.384275663468200320e-04, 6.362963071011338645e-04, 6.341641274921999520e-04, 6.320310310329385010e-04, 6.298970212376180317e-04, 6.277621016216654260e-04, 6.256262757019404475e-04, 6.234895469965866634e-04, 6.213519190248860532e-04, 6.192133953075390582e-04, 6.170739793665126847e-04, 6.149336747249396730e-04, 6.127924849071679373e-04, 6.106504134390760685e-04, 6.085074638474579408e-04, 6.063636396605832446e-04, 6.042189444077658653e-04, 6.020733816196907704e-04, 5.999269548282635221e-04, 5.977796675664628261e-04, 5.956315233686244838e-04, 5.934825257702842916e-04, 5.913326783080347093e-04, 5.891819845198070782e-04, 5.870304479447170133e-04, 5.848780721229208555e-04, 5.827248605958914923e-04, 5.805708169062705811e-04, 5.784159445977254347e-04, 5.762602472152193126e-04, 5.741037283048709087e-04, 5.719463914137996353e-04, 5.697882400904611842e-04, 5.676292778842010516e-04, 5.654695083458338278e-04, 5.633089350270052524e-04, 5.611475614805308109e-04, 5.589853912604295615e-04, 5.568224279218297011e-04, 5.546586750208127659e-04, 5.524941361146998601e-04, 5.503288147618488023e-04, 5.481627145217540884e-04, 5.459958389548359063e-04, 5.438281916227312440e-04, 5.416597760881450285e-04, 5.394905959147418143e-04, 5.373206546671932711e-04, 5.351499559115038785e-04, 5.329785032144322872e-04, 5.308063001438212414e-04, 5.286333502686394294e-04, 5.264596571588321889e-04, 5.242852243854066166e-04, 5.221100555202448689e-04, 5.199341541363707670e-04, 5.177575238078173077e-04, 5.155801681094596958e-04, 5.134020906173132831e-04, 5.112232949083715889e-04, 5.090437845604618835e-04, 5.068635631525275154e-04, 5.046826342644762306e-04, 5.025010014770309869e-04, 5.003186683720126050e-04, 4.981356385321901491e-04, 4.959519155411285960e-04, 4.937675029835225530e-04, 4.915824044448026918e-04, 4.893966235114702258e-04, 4.872101637709431695e-04, 4.850230288114070441e-04, 4.828352222220982882e-04, 4.806467475931563180e-04, 4.784576085154674022e-04, 4.762678085809544698e-04, 4.740773513824194665e-04, 4.718862405133998606e-04, 4.696944795684485302e-04, 4.675020721429329687e-04, 4.653090218331340554e-04, 4.631153322360812572e-04, 4.609210069496085188e-04, 4.587260495726825055e-04, 4.565304637048136637e-04, 4.543342529463891260e-04, 4.521374208987193315e-04, 4.499399711639330752e-04, 4.477419073448233883e-04, 4.455432330451369123e-04, 4.433439518693731043e-04, 4.411440674228722203e-04, 4.389435833116185322e-04, 4.367425031425245519e-04, 4.345408305232824949e-04, 4.323385690622039818e-04, 4.301357223685158622e-04, 4.279322940522030600e-04, 4.257282877239064412e-04, 4.235237069949625505e-04, 4.213185554777470316e-04, 4.191128367850260579e-04, 4.169065545305404466e-04, 4.146997123285588584e-04, 4.124923137942153642e-04, 4.102843625433540793e-04, 4.080758621923784584e-04, 4.058668163585400735e-04, 4.036572286597859042e-04, 4.014471027146009107e-04, 3.992364421422996850e-04, 3.970252505628756381e-04, 3.948135315968438449e-04, 3.926012888655309595e-04, 3.903885259909224519e-04, 3.881752465955088673e-04, 3.859614543026252363e-04, 3.837471527360484017e-04, 3.815323455203397350e-04, 3.793170362806894450e-04, 3.771012286427119888e-04, 3.748849262329869802e-04, 3.726681326784060124e-04, 3.704508516065177048e-04, 3.682330866455675480e-04, 3.660148414243933864e-04, 3.637961195722757440e-04, 3.615769247192211809e-04, 3.593572604957657275e-04, 3.571371305330612407e-04, 3.549165384626778628e-04, 3.526954879168909553e-04, 3.504739825285258415e-04, 3.482520259308590892e-04, 3.460296217576529893e-04, 3.438067736435040174e-04, 3.415834852232397471e-04, 3.393597601322574458e-04, 3.371356020065718884e-04, 3.349110144826572262e-04, 3.326860011975422884e-04, 3.304605657886061014e-04, 3.282347118938665036e-04, 3.260084431518310132e-04, 3.237817632013385350e-04, 3.215546756818499262e-04, 3.193271842332947989e-04, 3.170992924959186473e-04, 3.148710041105718424e-04, 3.126423227185562708e-04, 3.104132519614669875e-04, 3.081837954815402447e-04, 3.059539569212458860e-04, 3.037237399236284363e-04, 3.014931481321561266e-04, 2.992621851905612998e-04, 2.970308547431355301e-04, 2.947991604345746365e-04, 2.925671059098217445e-04, 2.903346948143597497e-04, 2.881019307940592585e-04, 2.858688174950199689e-04, 2.836353585638654116e-04, 2.814015576475866615e-04, 2.791674183933863214e-04, 2.769329444489725036e-04, 2.746981394623545115e-04, 2.724630070819347260e-04, 2.702275509563527517e-04, 2.679917747345333923e-04, 2.657556820660225911e-04, 2.635192766003910652e-04, 2.612825619875722518e-04, 2.590455418779069770e-04, 2.568082199220380170e-04, 2.545705997707567924e-04, 2.523326850752935545e-04, 2.500944794871142601e-04, 2.478559866580100184e-04, 2.456172102398987899e-04, 2.433781538851137038e-04, 2.411388212462466606e-04, 2.388992159760470958e-04, 2.366593417274626371e-04, 2.344192021539812782e-04, 2.321788009089808310e-04, 2.299381416463189211e-04, 2.276972280198783275e-04, 2.254560636839102953e-04, 2.232146522928793865e-04, 2.209729975013085201e-04, 2.187311029640695115e-04, 2.164889723362318260e-04, 2.142466092729025781e-04, 2.120040174295228163e-04, 2.097612004617109105e-04, 2.075181620251063182e-04, 2.052749057756648673e-04, 2.030314353695005436e-04, 2.007877544627325369e-04, 1.985438667117770273e-04, 1.962997757731905720e-04, 1.940554853035178560e-04, 1.918109989596313730e-04, 1.895663203982786080e-04, 1.873214532766740120e-04, 1.850764012518452009e-04, 1.828311679809746146e-04, 1.805857571214453247e-04, 1.783401723307344842e-04, 1.760944172662567964e-04, 1.738484955856598509e-04, 1.716024109466678636e-04, 1.693561670069241144e-04, 1.671097674242867995e-04, 1.648632158566232762e-04, 1.626165159619019499e-04, 1.603696713980388316e-04, 1.581226858229398222e-04, 1.558755628948464104e-04, 1.536283062717276517e-04, 1.513809196115756142e-04, 1.491334065726995762e-04, 1.468857708131192255e-04, 1.446380159909092192e-04, 1.423901457642434188e-04, 1.401421637912382502e-04, 1.378940737300475170e-04, 1.356458792386561858e-04, 1.333975839751735807e-04, 1.311491915976800780e-04, 1.289007057640670503e-04, 1.266521301323349951e-04, 1.244034683604348078e-04, 1.221547241061132012e-04, 1.199059010272063351e-04, 1.176570027814838397e-04, 1.154080330264935038e-04, 1.131589954199041542e-04, 1.109098936191003801e-04, 1.086607312815267545e-04, 1.064115120645323049e-04, 1.041622396252128843e-04, 1.019129176207074559e-04, 9.966354970803980033e-05, 9.741413954396510046e-05, 9.516469078526190381e-05, 9.291520708857731192e-05, 9.066569211027061131e-05, 8.841614950670737688e-05, 8.616658293410422770e-05, 8.391699604837130598e-05, 8.166739250545817824e-05, 7.941777596089650529e-05, 7.716815007039539115e-05, 7.491851848918366539e-05, 7.266888487230582967e-05, 7.041925287491506336e-05, 6.816962615166776438e-05, 6.592000835706661791e-05, 6.367040314550626837e-05, 6.142081417116647131e-05, 5.917124508785567692e-05, 5.692169954930627860e-05, 5.467218120896799794e-05, 5.242269372010204085e-05, 5.017324073557479424e-05, 4.792382590815287812e-05, 4.567445289034653932e-05, 4.342512533430342004e-05, 4.117584689185311176e-05, 3.892662121485205353e-05, 3.667745195452561097e-05, 3.442834276206394023e-05, 3.217929728816513232e-05, 2.993031918337960649e-05, 2.768141209795447647e-05, 2.543257968167678495e-05, 2.318382558416848789e-05, 2.093515345473026505e-05, 1.868656694218508315e-05, 1.643806969517305145e-05, 1.418966536199536270e-05, 1.194135759045759878e-05, 9.693150028164872629e-06, 7.445046322365564999e-06, 5.197050119794799577e-06, 2.949165067019651254e-06, 7.013948100320638902e-07, -1.546257005406025367e-06, -3.793786733919072722e-06, -6.041190730724320645e-06, -8.288465351086275938e-06, -1.053560695097426702e-05, -1.278261188671748978e-05, -1.502947651496070221e-05, -1.727619719277052708e-05, -1.952277027779154991e-05, -2.176919212795154983e-05, -2.401545910161776871e-05, -2.626156755775326492e-05, -2.850751385562176981e-05, -3.075329435499450946e-05, -3.299890541605542165e-05, -3.524434339955771468e-05, -3.748960466677950319e-05, -3.973468557917894710e-05, -4.197958249900131004e-05, -4.422429178893439307e-05, -4.646880981206406207e-05, -4.871313293203039321e-05, -5.095725751293388942e-05, -5.320117991954085543e-05, -5.544489651698959927e-05, -5.768840367094581201e-05, -5.993169774775941117e-05, -6.217477511416934634e-05, -6.441763213746027315e-05, -6.666026518556789711e-05, -6.890267062703523955e-05, -7.114484483066822729e-05, -7.338678416619160783e-05, -7.562848500370512709e-05, -7.786994371388882312e-05, -8.011115666815935444e-05, -8.235212023832596921e-05, -8.459283079699576641e-05, -8.683328471723011216e-05, -8.907347837270037185e-05, -9.131340813784335759e-05, -9.355307038756825483e-05, -9.579246149741094498e-05, -9.803157784369129603e-05, -1.002704158032177853e-04, -1.025089717534450879e-04, -1.047472420726273295e-04, -1.069852231395268955e-04, -1.092229113335675217e-04, -1.114603030349924919e-04, -1.136973946245186968e-04, -1.159341824837932316e-04, -1.181706629947999314e-04, -1.204068325405140800e-04, -1.226426875045579044e-04, -1.248782242711583184e-04, -1.271134392252513718e-04, -1.293483287526377113e-04, -1.315828892396897379e-04, -1.338171170735067284e-04, -1.360510086420701212e-04, -1.382845603339499135e-04, -1.405177685385115003e-04, -1.427506296458197228e-04, -1.449831400467948845e-04, -1.472152961331706035e-04, -1.494470942971466774e-04, -1.516785309319978634e-04, -1.539096024317766439e-04, -1.561403051910225520e-04, -1.583706356054142379e-04, -1.606005900711785785e-04, -1.628301649855438472e-04, -1.650593567463974577e-04, -1.672881617524415207e-04, -1.695165764033462036e-04, -1.717445970994603034e-04, -1.739722202419620044e-04, -1.761994422330177682e-04, -1.784262594754877835e-04, -1.806526683730797324e-04, -1.828786653305082229e-04, -1.851042467531972835e-04, -1.873294090474371116e-04, -1.895541486205406872e-04, -1.917784618805001070e-04, -1.940023452363882819e-04, -1.962257950980202592e-04, -1.984488078761061764e-04, -2.006713799824071153e-04, -2.028935078294398194e-04, -2.051151878306359093e-04, -2.073364164004939145e-04, -2.095571899542876505e-04, -2.117775049082205820e-04, -2.139973576795823273e-04, -2.162167446864534303e-04, -2.184356623478627866e-04, -2.206541070839409765e-04, -2.228720753155795278e-04, -2.250895634648816183e-04, -2.273065679545760106e-04, -2.295230852086631551e-04, -2.317391116521254910e-04, -2.339546437106370432e-04, -2.361696778111613867e-04, -2.383842103816120742e-04, -2.405982378508101900e-04, -2.428117566486350269e-04, -2.450247632059330129e-04, -2.472372539547226800e-04, -2.494492253279014145e-04, -2.516606737594000100e-04, -2.538715956843372746e-04, -2.560819875387289769e-04, -2.582918457596421278e-04, -2.605011667852987932e-04, -2.627099470550321833e-04, -2.649181830089494122e-04, -2.671258710885752964e-04, -2.693330077362684582e-04, -2.715395893956680171e-04, -2.737456125113593296e-04, -2.759510735290233931e-04, -2.781559688955898262e-04, -2.803602950589506940e-04, -2.825640484681103985e-04, -2.847672255733433222e-04, -2.869698228258981657e-04, -2.891718366781561331e-04, -2.913732635837840753e-04, -2.935740999974419726e-04, -2.957743423749369452e-04, -2.979739871733810591e-04, -3.001730308508953932e-04, -3.023714698667674108e-04, -3.045693006816022064e-04, -3.067665197569865651e-04, -3.089631235559328897e-04, -3.111591085422998025e-04, -3.133544711814318252e-04, -3.155492079398276124e-04, -3.177433152850889404e-04, -3.199367896860302657e-04, -3.221296276128279108e-04, -3.243218255367354618e-04, -3.265133799302812555e-04, -3.287042872671798541e-04, -3.308945440225295872e-04, -3.330841466725278943e-04, -3.352730916946232214e-04, -3.374613755676160692e-04, -3.396489947716193648e-04, -3.418359457877191069e-04, -3.440222250985676411e-04, -3.462078291880463644e-04, -3.483927545412261522e-04, -3.505769976445123701e-04, -3.527605549855590051e-04, -3.549434230534698935e-04, -3.571255983385065286e-04, -3.593070773322437519e-04, -3.614878565277195358e-04, -3.636679324191535246e-04, -3.658473015020884144e-04, -3.680259602735535597e-04, -3.702039052317703948e-04, -3.723811328763062829e-04, -3.745576397082279844e-04, -3.767334222298122839e-04, -3.789084769446991871e-04, -3.810828003580439809e-04, -3.832563889761817812e-04, -3.854292393070214229e-04, -3.876013478597108218e-04, -3.897727111447919063e-04, -3.919433256743455217e-04, -3.941131879617108379e-04, -3.962822945216338318e-04, -3.984506418704222190e-04, -4.006182265256536413e-04, -4.027850450063333635e-04, -4.049510938330397737e-04, -4.071163695276446589e-04, -4.092808686134575126e-04, -4.114445876153839362e-04, -4.136075230595848205e-04, -4.157696714739225492e-04, -4.179310293873861543e-04, -4.200915933307214009e-04, -4.222513598361033035e-04, -4.244103254370866322e-04, -4.265684866687161222e-04, -4.287258400676705094e-04, -4.308823821719799880e-04, -4.330381095212276548e-04, -4.351930186564561599e-04, -4.373471061203657896e-04, -4.395003684570299184e-04, -4.416528022120497243e-04, -4.438044039326980621e-04, -4.459551701676420709e-04, -4.481050974670869390e-04, -4.502541823828826433e-04, -4.524024214684803109e-04, -4.545498112785983382e-04, -4.566963483698588183e-04, -4.588420293002061371e-04, -4.609868506293576221e-04, -4.631308089184619104e-04, -4.652739007302548568e-04, -4.674161226292083407e-04, -4.695574711812451206e-04, -4.716979429538896472e-04, -4.738375345164168155e-04, -4.759762424395748426e-04, -4.781140632957249135e-04, -4.802509936589993656e-04, -4.823870301050147010e-04, -4.845221692110212599e-04, -4.866564075560576115e-04, -4.887897417206096265e-04, -4.909221682870121197e-04, -4.930536838391099286e-04, -4.951842849624119242e-04, -4.973139682442336918e-04, -4.994427302734268060e-04, -5.015705676405183677e-04, -5.036974769378588885e-04, -5.058234547593523254e-04, -5.079484977005912800e-04, -5.100726023590169186e-04, -5.121957653336285145e-04, -5.143179832251873864e-04, -5.164392526361217053e-04, -5.185595701707263134e-04, -5.206789324348785539e-04, -5.227973360361928791e-04, -5.249147775841096460e-04, -5.270312536898687705e-04, -5.291467609661702634e-04, -5.312612960277524358e-04, -5.333748554910683727e-04, -5.354874359742401802e-04, -5.375990340972103395e-04, -5.397096464816468400e-04, -5.418192697511439726e-04, -5.439279005309403297e-04, -5.460355354480664726e-04, -5.481421711314920587e-04, -5.502478042118481762e-04, -5.523524313215767484e-04, -5.544560490950716956e-04, -5.565586541684066930e-04, -5.586602431794796941e-04, -5.607608127681607078e-04, -5.628603595759652366e-04, -5.649588802464362413e-04, -5.670563714248286376e-04, -5.691528297582407019e-04, -5.712482518957717140e-04, -5.733426344882425587e-04, -5.754359741883406827e-04, -5.775282676507681977e-04, -5.796195115319637816e-04, -5.817097024902494803e-04, -5.837988371859781584e-04, -5.858869122812532335e-04, -5.879739244400813318e-04, -5.900598703285099816e-04, -5.921447466143610078e-04, -5.942285499674150638e-04, -5.963112770593282557e-04, -5.983929245637756907e-04, -6.004734891564093022e-04, -6.025529675145418042e-04, -6.046313563177029959e-04, -6.067086522473240416e-04, -6.087848519866970306e-04, -6.108599522210735305e-04, -6.129339496378023895e-04, -6.150068409260643241e-04, -6.170786227770616540e-04, -6.191492918839286387e-04, -6.212188449419186109e-04, -6.232872786481389975e-04, -6.253545897016945425e-04, -6.274207748037769709e-04, -6.294858306576311610e-04, -6.315497539682384497e-04, -6.336125414429145692e-04, -6.356741897907664625e-04, -6.377346957231143625e-04, -6.397940559531688090e-04, -6.418522671961795090e-04, -6.439093261695729223e-04, -6.459652295926883664e-04, -6.480199741869141928e-04, -6.500735566758340453e-04, -6.521259737849600382e-04, -6.541772222418692573e-04, -6.562272987763517534e-04, -6.582762001201345045e-04, -6.603239230070335293e-04, -6.623704641730874610e-04, -6.644158203562906167e-04, -6.664599882967394730e-04, -6.685029647367712272e-04, -6.705447464206485114e-04, -6.725853300949775687e-04, -6.746247125081665866e-04, -6.766628904110183213e-04, -6.786998605564263046e-04, -6.807356196993233442e-04, -6.827701645967824626e-04, -6.848034920081651081e-04, -6.868355986948403461e-04, -6.888664814203363223e-04, -6.908961369504782813e-04, -6.929245620531212027e-04, -6.949517534983362839e-04, -6.969777080583261552e-04, -6.990024225075701630e-04, -7.010258936227713525e-04, -7.030481181825590708e-04, -7.050690929680302008e-04, -7.070888147624842905e-04, -7.091072803511523940e-04, -7.111244865217563032e-04, -7.131404300641849131e-04, -7.151551077704619130e-04, -7.171685164348803355e-04, -7.191806528539248199e-04, -7.211915138264534319e-04, -7.232010961534261805e-04, -7.252093966380596243e-04, -7.272164120859509048e-04, -7.292221393048214408e-04, -7.312265751046626450e-04, -7.332297162978616920e-04, -7.352315596989483565e-04, -7.372321021247259850e-04, -7.392313403944232846e-04, -7.412292713293709050e-04, -7.432258917533774399e-04, -7.452211984924138159e-04, -7.472151883747533713e-04, -7.492078582311144288e-04, -7.511992048943943404e-04, -7.531892251998082658e-04, -7.551779159850283835e-04, -7.571652740899245497e-04, -7.591512963566966797e-04, -7.611359796300243676e-04, -7.631193207567862945e-04, -7.651013165862183057e-04, -7.670819639700410210e-04, -7.690612597621550653e-04, -7.710392008190503554e-04, -7.730157839992696364e-04, -7.749910061639976372e-04, -7.769648641767999946e-04, -7.789373549033568652e-04, -7.809084752120076280e-04, -7.828782219734321292e-04, -7.848465920606304078e-04, -7.868135823490002160e-04, -7.887791897164786155e-04, -7.907434110432903351e-04, -7.927062432121164716e-04, -7.946676831080196806e-04, -7.966277276186218767e-04, -7.985863736338480370e-04, -8.005436180460583648e-04, -8.024994577501464105e-04, -8.044538896434980883e-04, -8.064069106256851723e-04, -8.083585175990472965e-04, -8.103087074681661166e-04, -8.122574771402680908e-04, -8.142048235249159166e-04, -8.161507435341558729e-04, -8.180952340826420704e-04, -8.200382920873888195e-04, -8.219799144678983493e-04, -8.239200981463068495e-04, -8.258588400471126613e-04, -8.277961370973263306e-04, -8.297319862266015799e-04, -8.316663843669734732e-04, -8.335993284530027235e-04, -8.355308154219009183e-04, -8.374608422132419046e-04, -8.393894057693077580e-04, -8.413165030347873746e-04, -8.432421309569182845e-04, -8.451662864856589316e-04, -8.470889665732234423e-04, -8.490101681746423752e-04, -8.509298882474697692e-04, -8.528481237517388002e-04, -8.547648716500622860e-04, -8.566801289077552017e-04, -8.585938924925916012e-04, -8.605061593749324450e-04, -8.624169265278627513e-04, -8.643261909269338815e-04, -8.662339495503437346e-04, -8.681401993788576002e-04, -8.700449373959364199e-04, -8.719481605877028516e-04, -8.738498659426412705e-04, -8.757500504521244754e-04, -8.776487111101114119e-04, -8.795458449131091181e-04, -8.814414488603145373e-04, -8.833355199535209519e-04, -8.852280551973024060e-04, -8.871190515987683505e-04, -8.890085061676730391e-04, -8.908964159165730628e-04, -8.927827778605644310e-04, -8.946675890174173376e-04, -8.965508464076651744e-04, -8.984325470545664752e-04, -9.003126879838181445e-04, -9.021912662240975586e-04, -9.040682788066193437e-04, -9.059437227652948621e-04, -9.078175951368700142e-04, -9.096898929606362988e-04, -9.115606132787647470e-04, -9.134297531360265239e-04, -9.152973095799142502e-04, -9.171632796607776363e-04, -9.190276604315780187e-04, -9.208904489480127182e-04, -9.227516422686494807e-04, -9.246112374546803635e-04, -9.264692315700472861e-04, -9.283256216815849275e-04, -9.301804048587539045e-04, -9.320335781737893073e-04, -9.338851387018187690e-04, -9.357350835205838257e-04, -9.375834097108085453e-04, -9.394301143557223701e-04, -9.412751945415853043e-04, -9.431186473574098162e-04, -9.449604698949334077e-04, -9.468006592486890877e-04, -9.486392125161479446e-04, -9.504761267974667438e-04, -9.523113991956205261e-04, -9.541450268165328199e-04, -9.559770067688263834e-04, -9.578073361640015559e-04, -9.596360121163458349e-04, -9.614630317430787262e-04, -9.632883921642972080e-04, -9.651120905027074995e-04, -9.669341238841139274e-04, -9.687544894371743305e-04, -9.705731842931759543e-04, -9.723902055865450266e-04, -9.742055504543875978e-04, -9.760192160368457012e-04, -9.778311994768163276e-04, -9.796414979200852163e-04, -9.814501085154494781e-04, -9.832570284144816729e-04, -9.850622547716480961e-04, -9.868657847444425694e-04, -9.886676154931496509e-04, -9.904677441809582594e-04, -9.922661679741021871e-04, -9.940628840416079141e-04, -9.958578895554362053e-04, -9.976511816905937833e-04, -9.994427576248611934e-04, -1.001232614539120016e-03, -1.003020749617074010e-03, -1.004807160045375746e-03, -1.006591843013749992e-03, -1.008374795714754753e-03, -1.010156015343916577e-03, -1.011935499099839413e-03, -1.013713244183983868e-03, -1.015489247800776271e-03, -1.017263507157753532e-03, -1.019036019465304225e-03, -1.020806781936811495e-03, -1.022575791788765589e-03, -1.024343046240498451e-03, -1.026108542514537385e-03, -1.027872277836134945e-03, -1.029634249433797810e-03, -1.031394454539038717e-03, -1.033152890386153985e-03, -1.034909554212700561e-03, -1.036664443259221937e-03, -1.038417554769214754e-03, -1.040168885989242210e-03, -1.041918434168879201e-03, -1.043666196560856735e-03, -1.045412170420832948e-03, -1.047156353007523862e-03, -1.048898741582819172e-03, -1.050639333411550018e-03, -1.052378125761609324e-03, -1.054115115904048078e-03, -1.055850301113018955e-03, -1.057583678665528250e-03, -1.059315245841927020e-03, -1.061044999925466999e-03, -1.062772938202645153e-03, -1.064499057962929379e-03, -1.066223356498900319e-03, -1.067945831106345252e-03, -1.069666479084051443e-03, -1.071385297733910011e-03, -1.073102284361057094e-03, -1.074817436273622527e-03, -1.076530750782862767e-03, -1.078242225203281677e-03, -1.079951856852400666e-03, -1.081659643050872106e-03, -1.083365581122615502e-03, -1.085069668394572683e-03, -1.086771902196834866e-03, -1.088472279862769945e-03, -1.090170798728745801e-03, -1.091867456134480935e-03, -1.093562249422595388e-03, -1.095255175939114029e-03, -1.096946233033189435e-03, -1.098635418057080206e-03, -1.100322728366232711e-03, -1.102008161319388861e-03, -1.103691714278369485e-03, -1.105373384608228284e-03, -1.107053169677183532e-03, -1.108731066856766820e-03, -1.110407073521602322e-03, -1.112081187049534505e-03, -1.113753404821691889e-03, -1.115423724222458415e-03, -1.117092142639230373e-03, -1.118758657462834904e-03, -1.120423266087317059e-03, -1.122085965909869112e-03, -1.123746754330963047e-03, -1.125405628754280740e-03, -1.127062586586864224e-03, -1.128717625238893213e-03, -1.130370742123807401e-03, -1.132021934658417701e-03, -1.133671200262684415e-03, -1.135318536359840617e-03, -1.136963940376505130e-03, -1.138607409742453756e-03, -1.140248941890750897e-03, -1.141888534257853426e-03, -1.143526184283397747e-03, -1.145161889410309299e-03, -1.146795647084922903e-03, -1.148427454756725374e-03, -1.150057309878661045e-03, -1.151685209906860071e-03, -1.153311152300777855e-03, -1.154935134523290023e-03, -1.156557154040480139e-03, -1.158177208321764387e-03, -1.159795294839986984e-03, -1.161411411071219812e-03, -1.163025554494871499e-03, -1.164637722593801902e-03, -1.166247912854094862e-03, -1.167856122765194163e-03, -1.169462349820001544e-03, -1.171066591514622127e-03, -1.172668845348709844e-03, -1.174269108825023783e-03, -1.175867379449910223e-03, -1.177463654733046762e-03, -1.179057932187420419e-03, -1.180650209329387043e-03, -1.182240483678800988e-03, -1.183828752758796969e-03, -1.185415014095923206e-03, -1.186999265220104122e-03, -1.188581503664755271e-03, -1.190161726966595772e-03, -1.191739932665742633e-03, -1.193316118305800741e-03, -1.194890281433816023e-03, -1.196462419600052970e-03, -1.198032530358388416e-03, -1.199600611266144140e-03, -1.201166659883845305e-03, -1.202730673775702711e-03, -1.204292650509186484e-03, -1.205852587655342019e-03, -1.207410482788557737e-03, -1.208966333486670257e-03, -1.210520137331071513e-03, -1.212071891906498205e-03, -1.213621594801153223e-03, -1.215169243606802150e-03, -1.216714835918574194e-03, -1.218258369335064976e-03, -1.219799841458450588e-03, -1.221339249894283106e-03, -1.222876592251584058e-03, -1.224411866142978205e-03, -1.225945069184434209e-03, -1.227476198995545434e-03, -1.229005253199302698e-03, -1.230532229422202049e-03, -1.232057125294330193e-03, -1.233579938449190158e-03, -1.235100666523794967e-03, -1.236619307158767170e-03, -1.238135857998150626e-03, -1.239650316689505909e-03, -1.241162680884025675e-03, -1.242672948236326919e-03, -1.244181116404588028e-03, -1.245687183050493913e-03, -1.247191145839377392e-03, -1.248693002439994542e-03, -1.250192750524669553e-03, -1.251690387769324644e-03, -1.253185911853485273e-03, -1.254679320460023182e-03, -1.256170611275575760e-03, -1.257659781990310777e-03, -1.259146830297892990e-03, -1.260631753895603401e-03, -1.262114550484253828e-03, -1.263595217768338254e-03, -1.265073753455834638e-03, -1.266550155258302710e-03, -1.268024420891001930e-03, -1.269496548072667928e-03, -1.270966534525649113e-03, -1.272434377975979530e-03, -1.273900076153209509e-03, -1.275363626790484376e-03, -1.276825027624672176e-03, -1.278284276396111701e-03, -1.279741370848896985e-03, -1.281196308730642467e-03, -1.282649087792583605e-03, -1.284099705789681174e-03, -1.285548160480442376e-03, -1.286994449626993045e-03, -1.288438570995202766e-03, -1.289880522354486681e-03, -1.291320301477894613e-03, -1.292757906142233577e-03, -1.294193334127860485e-03, -1.295626583218785141e-03, -1.297057651202777797e-03, -1.298486535871170092e-03, -1.299913235018996431e-03, -1.301337746444919830e-03, -1.302760067951345968e-03, -1.304180197344386762e-03, -1.305598132433637886e-03, -1.307013871032574291e-03, -1.308427410958320786e-03, -1.309838750031625584e-03, -1.311247886076939446e-03, -1.312654816922489845e-03, -1.314059540400121587e-03, -1.315462054345399373e-03, -1.316862356597578530e-03, -1.318260444999702153e-03, -1.319656317398441078e-03, -1.321049971644173678e-03, -1.322441405591074986e-03, -1.323830617097057497e-03, -1.325217604023575359e-03, -1.326602364236036807e-03, -1.327984895603419920e-03, -1.329365195998563186e-03, -1.330743263297953219e-03, -1.332119095381812356e-03, -1.333492690134210987e-03, -1.334864045442865675e-03, -1.336233159199246056e-03, -1.337600029298677620e-03, -1.338964653640138105e-03, -1.340327030126374150e-03, -1.341687156663990636e-03, -1.343045031163261384e-03, -1.344400651538231939e-03, -1.345754015706822349e-03, -1.347105121590626590e-03, -1.348453967115030095e-03, -1.349800550209283908e-03, -1.351144868806301511e-03, -1.352486920842955890e-03, -1.353826704259680118e-03, -1.355164217000896483e-03, -1.356499457014793139e-03, -1.357832422253297871e-03, -1.359163110672147482e-03, -1.360491520230983856e-03, -1.361817648893147090e-03, -1.363141494625826414e-03, -1.364463055400090118e-03, -1.365782329190749159e-03, -1.367099313976470349e-03, -1.368414007739710437e-03, -1.369726408466827349e-03, -1.371036514148029880e-03, -1.372344322777194463e-03, -1.373649832352205179e-03, -1.374953040874770738e-03, -1.376253946350375259e-03, -1.377552546788361754e-03, -1.378848840202002600e-03, -1.380142824608347535e-03, -1.381434498028318416e-03, -1.382723858486684066e-03, -1.384010904012159589e-03, -1.385295632637233978e-03, -1.386578042398269213e-03, -1.387858131335592635e-03, -1.389135897493308297e-03, -1.390411338919409065e-03, -1.391684453665851650e-03, -1.392955239788391374e-03, -1.394223695346672809e-03, -1.395489818404317163e-03, -1.396753607028714764e-03, -1.398015059291282452e-03, -1.399274173267237194e-03, -1.400530947035707975e-03, -1.401785378679808658e-03, -1.403037466286474050e-03, -1.404287207946552929e-03, -1.405534601754894562e-03, -1.406779645810178701e-03, -1.408022338215000153e-03, -1.409262677075967659e-03, -1.410500660503520879e-03, -1.411736286612044235e-03, -1.412969553519919600e-03, -1.414200459349358252e-03, -1.415429002226653056e-03, -1.416655180281826965e-03, -1.417878991649027670e-03, -1.419100434466338736e-03, -1.420319506875629108e-03, -1.421536207022884666e-03, -1.422750533058011330e-03, -1.423962483134823785e-03, -1.425172055411087768e-03, -1.426379248048628267e-03, -1.427584059213135885e-03, -1.428786487074305183e-03, -1.429986529805764642e-03, -1.431184185585216958e-03, -1.432379452594233693e-03, -1.433572329018384947e-03, -1.434762813047269501e-03, -1.435950902874489872e-03, -1.437136596697482322e-03, -1.438319892717862059e-03, -1.439500789141094075e-03, -1.440679284176752924e-03, -1.441855376038326695e-03, -1.443029062943300715e-03, -1.444200343113249702e-03, -1.445369214773669720e-03, -1.446535676154063173e-03, -1.447699725488036607e-03, -1.448861361013107718e-03, -1.450020580970830253e-03, -1.451177383606845183e-03, -1.452331767170738676e-03, -1.453483729916125794e-03, -1.454633270100715112e-03, -1.455780385986151729e-03, -1.456925075838219142e-03, -1.458067337926637584e-03, -1.459207170525188280e-03, -1.460344571911783478e-03, -1.461479540368194972e-03, -1.462612074180398656e-03, -1.463742171638393466e-03, -1.464869831036170805e-03, -1.465995050671784362e-03, -1.467117828847413000e-03, -1.468238163869211134e-03, -1.469356054047406962e-03, -1.470471497696359056e-03, -1.471584493134413252e-03, -1.472695038684018222e-03, -1.473803132671653270e-03, -1.474908773427936531e-03, -1.476011959287575320e-03, -1.477112688589207398e-03, -1.478210959675702605e-03, -1.479306770893989379e-03, -1.480400120595025274e-03, -1.481491007133887809e-03, -1.482579428869714409e-03, -1.483665384165814075e-03, -1.484748871389514509e-03, -1.485829888912235412e-03, -1.486908435109579986e-03, -1.487984508361171222e-03, -1.489058107050748175e-03, -1.490129229566188301e-03, -1.491197874299523933e-03, -1.492264039646733469e-03, -1.493327724008096553e-03, -1.494388925787874670e-03, -1.495447643394554006e-03, -1.496503875240668075e-03, -1.497557619742865371e-03, -1.498608875322007816e-03, -1.499657640403003573e-03, -1.500703913414893134e-03, -1.501747692790919792e-03, -1.502788976968402138e-03, -1.503827764388780902e-03, -1.504864053497717612e-03, -1.505897842744944974e-03, -1.506929130584333011e-03, -1.507957915473979267e-03, -1.508984195876055499e-03, -1.510007970256884010e-03, -1.511029237087009418e-03, -1.512047994841045134e-03, -1.513064241997873509e-03, -1.514077977040379766e-03, -1.515089198455748642e-03, -1.516097904735304357e-03, -1.517104094374499123e-03, -1.518107765872943717e-03, -1.519108917734500941e-03, -1.520107548467131663e-03, -1.521103656582980254e-03, -1.522097240598424247e-03, -1.523088299033964824e-03, -1.524076830414310092e-03, -1.525062833268323904e-03, -1.526046306129105658e-03, -1.527027247533957553e-03, -1.528005656024259470e-03, -1.528981530145697310e-03, -1.529954868448159559e-03, -1.530925669485605880e-03, -1.531893931816345105e-03, -1.532859654002775244e-03, -1.533822834611591216e-03, -1.534783472213626775e-03, -1.535741565383925413e-03, -1.536697112701804983e-03, -1.537650112750727372e-03, -1.538600564118376354e-03, -1.539548465396713963e-03, -1.540493815181848440e-03, -1.541436612074127471e-03, -1.542376854678163996e-03, -1.543314541602747950e-03, -1.544249671460888552e-03, -1.545182242869889110e-03, -1.546112254451201089e-03, -1.547039704830593032e-03, -1.547964592638001154e-03, -1.548886916507603070e-03, -1.549806675077876773e-03, -1.550723866991480940e-03, -1.551638490895308276e-03, -1.552550545440578317e-03, -1.553460029282668952e-03, -1.554366941081228087e-03, -1.555271279500204228e-03, -1.556173043207742393e-03, -1.557072230876243527e-03, -1.557968841182419796e-03, -1.558862872807169255e-03, -1.559754324435746933e-03, -1.560643194757529561e-03, -1.561529482466274699e-03, -1.562413186260012314e-03, -1.563294304840915326e-03, -1.564172836915555045e-03, -1.565048781194743749e-03, -1.565922136393534895e-03, -1.566792901231272347e-03, -1.567661074431561967e-03, -1.568526654722345341e-03, -1.569389640835786807e-03, -1.570250031508335035e-03, -1.571107825480780058e-03, -1.571963021498143766e-03, -1.572815618309724144e-03, -1.573665614669166393e-03, -1.574513009334418045e-03, -1.575357801067597992e-03, -1.576199988635266233e-03, -1.577039570808175598e-03, -1.577876546361467545e-03, -1.578710914074509105e-03, -1.579542672730982868e-03, -1.580371821118927312e-03, -1.581198358030632507e-03, -1.582022282262695624e-03, -1.582843592616079266e-03, -1.583662287896004783e-03, -1.584478366911994769e-03, -1.585291828477963707e-03, -1.586102671412060322e-03, -1.586910894536769281e-03, -1.587716496678950439e-03, -1.588519476669703751e-03, -1.589319833344527777e-03, -1.590117565543193489e-03, -1.590912672109796736e-03, -1.591705151892832196e-03, -1.592495003744997780e-03, -1.593282226523439014e-03, -1.594066819089603321e-03, -1.594848780309250863e-03, -1.595628109052461266e-03, -1.596404804193720349e-03, -1.597178864611795233e-03, -1.597950289189807626e-03, -1.598719076815206938e-03, -1.599485226379843139e-03, -1.600248736779855087e-03, -1.601009606915726252e-03, -1.601767835692329174e-03, -1.602523422018907462e-03, -1.603276364808937232e-03, -1.604026662980370188e-03, -1.604774315455485085e-03, -1.605519321160883608e-03, -1.606261679027543715e-03, -1.607001387990790366e-03, -1.607738446990353200e-03, -1.608472854970277848e-03, -1.609204610878970168e-03, -1.609933713669256094e-03, -1.610660162298279286e-03, -1.611383955727546018e-03, -1.612105092922983072e-03, -1.612823572854845582e-03, -1.613539394497754114e-03, -1.614252556830753863e-03, -1.614963058837224231e-03, -1.615670899504907014e-03, -1.616376077825987072e-03, -1.617078592796953327e-03, -1.617778443418745136e-03, -1.618475628696632159e-03, -1.619170147640271390e-03, -1.619861999263755943e-03, -1.620551182585508801e-03, -1.621237696628351124e-03, -1.621921540419538890e-03, -1.622602712990659467e-03, -1.623281213377711623e-03, -1.623957040621118973e-03, -1.624630193765660155e-03, -1.625300671860512632e-03, -1.625968473959290206e-03, -1.626633599119946521e-03, -1.627296046404914497e-03, -1.627955814880921795e-03, -1.628612903619187056e-03, -1.629267311695309969e-03, -1.629919038189285140e-03, -1.630568082185499066e-03, -1.631214442772788023e-03, -1.631858119044366949e-03, -1.632499110097856759e-03, -1.633137415035288689e-03, -1.633773032963155031e-03, -1.634405962992298549e-03, -1.635036204237994657e-03, -1.635663755819954240e-03, -1.636288616862327776e-03, -1.636910786493589540e-03, -1.637530263846726257e-03, -1.638147048059144508e-03, -1.638761138272576629e-03, -1.639372533633296890e-03, -1.639981233291920061e-03, -1.640587236403544952e-03, -1.641190542127660091e-03, -1.641791149628170614e-03, -1.642389058073468302e-03, -1.642984266636313183e-03, -1.643576774493915940e-03, -1.644166580827956118e-03, -1.644753684824494088e-03, -1.645338085674035887e-03, -1.645919782571559015e-03, -1.646498774716439366e-03, -1.647075061312490690e-03, -1.647648641568003839e-03, -1.648219514695654832e-03, -1.648787679912618910e-03, -1.649353136440469703e-03, -1.649915883505223037e-03, -1.650475920337381164e-03, -1.651033246171842127e-03, -1.651587860247967195e-03, -1.652139761809588671e-03, -1.652688950104955895e-03, -1.653235424386760187e-03, -1.653779183912188833e-03, -1.654320227942841174e-03, -1.654858555744772837e-03, -1.655394166588486631e-03, -1.655927059748976997e-03, -1.656457234505648258e-03, -1.656984690142366884e-03, -1.657509425947485335e-03, -1.658031441213811494e-03, -1.658550735238551203e-03, -1.659067307323434243e-03, -1.659581156774644082e-03, -1.660092282902800092e-03, -1.660600685022988561e-03, -1.661106362454757047e-03, -1.661609314522147565e-03, -1.662109540553631743e-03, -1.662607039882137714e-03, -1.663101811845112566e-03, -1.663593855784425198e-03, -1.664083171046404699e-03, -1.664569756981901716e-03, -1.665053612946191738e-03, -1.665534738299011969e-03, -1.666013132404622898e-03, -1.666488794631696422e-03, -1.666961724353433144e-03, -1.667431920947463290e-03, -1.667899383795907195e-03, -1.668364112285369892e-03, -1.668826105806919206e-03, -1.669285363756092908e-03, -1.669741885532936452e-03, -1.670195670541940952e-03, -1.670646718192080483e-03, -1.671095027896837663e-03, -1.671540599074145764e-03, -1.671983431146414727e-03, -1.672423523540566507e-03, -1.672860875687981735e-03, -1.673295487024532239e-03, -1.673727356990557412e-03, -1.674156485030898252e-03, -1.674582870594911463e-03, -1.675006513136353438e-03, -1.675427412113542893e-03, -1.675845566989270013e-03, -1.676260977230796230e-03, -1.676673642309863335e-03, -1.677083561702735976e-03, -1.677490734890145930e-03, -1.677895161357313572e-03, -1.678296840593947225e-03, -1.678695772094268308e-03, -1.679091955356969276e-03, -1.679485389885231831e-03, -1.679876075186745787e-03, -1.680264010773710372e-03, -1.680649196162757250e-03, -1.681031630875078455e-03, -1.681411314436320791e-03, -1.681788246376656523e-03, -1.682162426230729164e-03, -1.682533853537675379e-03, -1.682902527841162498e-03, -1.683268448689329965e-03, -1.683631615634805824e-03, -1.683992028234746613e-03, -1.684349686050787926e-03, -1.684704588649060461e-03, -1.685056735600221458e-03, -1.685406126479395720e-03, -1.685752760866222454e-03, -1.686096638344862638e-03, -1.686437758503948718e-03, -1.686776120936614096e-03, -1.687111725240536065e-03, -1.687444571017840834e-03, -1.687774657875217585e-03, -1.688101985423785768e-03, -1.688426553279228888e-03, -1.688748361061725555e-03, -1.689067408395936252e-03, -1.689383694911038465e-03, -1.689697220240732106e-03, -1.690007984023203730e-03, -1.690315985901132178e-03, -1.690621225521748419e-03, -1.690923702536757060e-03, -1.691223416602370168e-03, -1.691520367379310092e-03, -1.691814554532822040e-03, -1.692105977732666919e-03, -1.692394636653059324e-03, -1.692680530972783762e-03, -1.692963660375112686e-03, -1.693244024547825360e-03, -1.693521623183200488e-03, -1.693796455978050040e-03, -1.694068522633681738e-03, -1.694337822855919440e-03, -1.694604356355081673e-03, -1.694868122846034325e-03, -1.695129122048113016e-03, -1.695387353685186846e-03, -1.695642817485647127e-03, -1.695895513182370945e-03, -1.696145440512755644e-03, -1.696392599218731184e-03, -1.696636989046712649e-03, -1.696878609747636251e-03, -1.697117461076963875e-03, -1.697353542794653378e-03, -1.697586854665192411e-03, -1.697817396457560694e-03, -1.698045167945260153e-03, -1.698270168906323161e-03, -1.698492399123273724e-03, -1.698711858383157407e-03, -1.698928546477535472e-03, -1.699142463202476432e-03, -1.699353608358571436e-03, -1.699561981750920617e-03, -1.699767583189146962e-03, -1.699970412487361842e-03, -1.700170469464227022e-03, -1.700367753942895249e-03, -1.700562265751047117e-03, -1.700754004720849213e-03, -1.700942970689019390e-03, -1.701129163496778842e-03, -1.701312582989840177e-03, -1.701493229018467054e-03, -1.701671101437410207e-03, -1.701846200105943448e-03, -1.702018524887856724e-03, -1.702188075651463487e-03, -1.702354852269572947e-03, -1.702518854619513699e-03, -1.702680082583138280e-03, -1.702838536046809076e-03, -1.702994214901398101e-03, -1.703147119042294159e-03, -1.703297248369406739e-03, -1.703444602787156483e-03, -1.703589182204458263e-03, -1.703730986534776701e-03, -1.703870015696062412e-03, -1.704006269610787569e-03, -1.704139748205950235e-03, -1.704270451413035991e-03, -1.704398379168068668e-03, -1.704523531411571103e-03, -1.704645908088583571e-03, -1.704765509148661396e-03, -1.704882334545868667e-03, -1.704996384238781706e-03, -1.705107658190493621e-03, -1.705216156368611052e-03, -1.705321878745237260e-03, -1.705424825297008123e-03, -1.705524996005058306e-03, -1.705622390855044031e-03, -1.705717009837119874e-03, -1.705808852945953080e-03, -1.705897920180739821e-03, -1.705984211545160745e-03, -1.706067727047423915e-03, -1.706148466700246370e-03, -1.706226430520846977e-03, -1.706301618530949677e-03, -1.706374030756817534e-03, -1.706443667229182908e-03, -1.706510527983309692e-03, -1.706574613058971408e-03, -1.706635922500434515e-03, -1.706694456356492012e-03, -1.706750214680423112e-03, -1.706803197530031620e-03, -1.706853404967630322e-03, -1.706900837060016914e-03, -1.706945493878512165e-03, -1.706987375498941490e-03, -1.707026482001631693e-03, -1.707062813471411618e-03, -1.707096369997619959e-03, -1.707127151674102004e-03, -1.707155158599201177e-03, -1.707180390875767066e-03, -1.707202848611147177e-03, -1.707222531917199516e-03, -1.707239440910276107e-03, -1.707253575711240772e-03, -1.707264936445448966e-03, -1.707273523242762523e-03, -1.707279336237535342e-03, -1.707282375568639409e-03, -1.707282641379425552e-03, -1.707280133817751840e-03, -1.707274853035981857e-03, -1.707266799190967346e-03, -1.707255972444058842e-03, -1.707242372961111088e-03, -1.707226000912471110e-03, -1.707206856472971278e-03, -1.707184939821957065e-03, -1.707160251143260152e-03, -1.707132790625206240e-03, -1.707102558460617215e-03, -1.707069554846803346e-03, -1.707033779985578023e-03, -1.706995234083232178e-03, -1.706953917350564204e-03, -1.706909830002850898e-03, -1.706862972259863293e-03, -1.706813344345865357e-03, -1.706760946489607050e-03, -1.706705778924323680e-03, -1.706647841887753893e-03, -1.706587135622103686e-03, -1.706523660374076757e-03, -1.706457416394856295e-03, -1.706388403940123626e-03, -1.706316623270026124e-03, -1.706242074649217321e-03, -1.706164758346814629e-03, -1.706084674636424055e-03, -1.706001823796146274e-03, -1.705916206108539120e-03, -1.705827821860664197e-03, -1.705736671344053931e-03, -1.705642754854713511e-03, -1.705546072693134990e-03, -1.705446625164289479e-03, -1.705344412577618901e-03, -1.705239435247044239e-03, -1.705131693490963794e-03, -1.705021187632245168e-03, -1.704907917998239354e-03, -1.704791884920763825e-03, -1.704673088736107520e-03, -1.704551529785034098e-03, -1.704427208412778250e-03, -1.704300124969051122e-03, -1.704170279808011257e-03, -1.704037673288310781e-03, -1.703902305773063964e-03, -1.703764177629834425e-03, -1.703623289230676114e-03, -1.703479640952089511e-03, -1.703333233175050466e-03, -1.703184066284996754e-03, -1.703032140671820269e-03, -1.702877456729886543e-03, -1.702720014858014790e-03, -1.702559815459486585e-03, -1.702396858942038273e-03, -1.702231145717872244e-03, -1.702062676203645007e-03, -1.701891450820459169e-03, -1.701717469993894874e-03, -1.701540734153964051e-03, -1.701361243735145540e-03, -1.701178999176364932e-03, -1.700994000921004752e-03, -1.700806249416897094e-03, -1.700615745116312123e-03, -1.700422488475993206e-03, -1.700226479957110508e-03, -1.700027720025276169e-03, -1.699826209150579869e-03, -1.699621947807517268e-03, -1.699414936475056792e-03, -1.699205175636599304e-03, -1.698992665779977670e-03, -1.698777407397486896e-03, -1.698559400985838594e-03, -1.698338647046204785e-03, -1.698115146084181685e-03, -1.697888898609799030e-03, -1.697659905137528097e-03, -1.697428166186284310e-03, -1.697193682279394059e-03, -1.696956453944636987e-03, -1.696716481714215198e-03, -1.696473766124751955e-03, -1.696228307717320954e-03, -1.695980107037401438e-03, -1.695729164634910725e-03, -1.695475481064194880e-03, -1.695219056884010285e-03, -1.694959892657556168e-03, -1.694697988952442074e-03, -1.694433346340690249e-03, -1.694165965398758628e-03, -1.693895846707521753e-03, -1.693622990852264049e-03, -1.693347398422686114e-03, -1.693069070012911872e-03, -1.692788006221468845e-03, -1.692504207651309616e-03, -1.692217674909778438e-03, -1.691928408608667613e-03, -1.691636409364133571e-03, -1.691341677796757374e-03, -1.691044214531539506e-03, -1.690744020197877760e-03, -1.690441095429562248e-03, -1.690135440864797738e-03, -1.689827057146192158e-03, -1.689515944920757682e-03, -1.689202104839878423e-03, -1.688885537559364422e-03, -1.688566243739415872e-03, -1.688244224044626153e-03, -1.687919479143960150e-03, -1.687592009710828407e-03, -1.687261816422978063e-03, -1.686928899962570911e-03, -1.686593261016153689e-03, -1.686254900274662422e-03, -1.685913818433420466e-03, -1.685570016192123981e-03, -1.685223494254863182e-03, -1.684874253330113664e-03, -1.684522294130710168e-03, -1.684167617373883005e-03, -1.683810223781250035e-03, -1.683450114078773301e-03, -1.683087288996818441e-03, -1.682721749270119126e-03, -1.682353495637755594e-03, -1.681982528843213630e-03, -1.681608849634333609e-03, -1.681232458763303990e-03, -1.680853356986722032e-03, -1.680471545065497733e-03, -1.680087023764944253e-03, -1.679699793854729341e-03, -1.679309856108857340e-03, -1.678917211305716020e-03, -1.678521860228047741e-03, -1.678123803662932324e-03, -1.677723042401819140e-03, -1.677319577240517137e-03, -1.676913408979156892e-03, -1.676504538422249595e-03, -1.676092966378647797e-03, -1.675678693661525895e-03, -1.675261721088437163e-03, -1.674842049481243492e-03, -1.674419679666193893e-03, -1.673994612473840354e-03, -1.673566848739069506e-03, -1.673136389301129725e-03, -1.672703235003605978e-03, -1.672267386694384047e-03, -1.671828845225712757e-03, -1.671387611454161048e-03, -1.670943686240636186e-03, -1.670497070450346466e-03, -1.670047764952851304e-03, -1.669595770622030444e-03, -1.669141088336081576e-03, -1.668683718977497345e-03, -1.668223663433153394e-03, -1.667760922594188882e-03, -1.667295497356044648e-03, -1.666827388618553635e-03, -1.666356597285774356e-03, -1.665883124266139209e-03, -1.665406970472335874e-03, -1.664928136821406833e-03, -1.664446624234679336e-03, -1.663962433637774076e-03, -1.663475565960627085e-03, -1.662986022137486483e-03, -1.662493803106861743e-03, -1.661998909811591334e-03, -1.661501343198811941e-03, -1.661001104219918126e-03, -1.660498193830624780e-03, -1.659992612990943703e-03, -1.659484362665140673e-03, -1.658973443821807866e-03, -1.658459857433774304e-03, -1.657943604478189338e-03, -1.657424685936490774e-03, -1.656903102794346971e-03, -1.656378856041741416e-03, -1.655851946672944096e-03, -1.655322375686445798e-03, -1.654790144085056119e-03, -1.654255252875846439e-03, -1.653717703070129320e-03, -1.653177495683513798e-03, -1.652634631735853130e-03, -1.652089112251289458e-03, -1.651540938258193748e-03, -1.650990110789179012e-03, -1.650436630881190738e-03, -1.649880499575363986e-03, -1.649321717917070010e-03, -1.648760286956018391e-03, -1.648196207746084867e-03, -1.647629481345415196e-03, -1.647060108816408028e-03, -1.646488091225701243e-03, -1.645913429644191685e-03, -1.645336125146966422e-03, -1.644756178813400974e-03, -1.644173591727085375e-03, -1.643588364975827202e-03, -1.643000499651689310e-03, -1.642409996850964895e-03, -1.641816857674134990e-03, -1.641221083225953472e-03, -1.640622674615390027e-03, -1.640021632955587002e-03, -1.639417959363973897e-03, -1.638811654962142681e-03, -1.638202720875926504e-03, -1.637591158235380184e-03, -1.636976968174733366e-03, -1.636360151832456878e-03, -1.635740710351229988e-03, -1.635118644877899853e-03, -1.634493956563546789e-03, -1.633866646563464321e-03, -1.633236716037093266e-03, -1.632604166148111068e-03, -1.631968998064401875e-03, -1.631331212957986285e-03, -1.630690812005121523e-03, -1.630047796386235523e-03, -1.629402167285960322e-03, -1.628753925893081100e-03, -1.628103073400547244e-03, -1.627449611005577510e-03, -1.626793539909475710e-03, -1.626134861317739787e-03, -1.625473576440065277e-03, -1.624809686490315177e-03, -1.624143192686491096e-03, -1.623474096250785738e-03, -1.622802398409548420e-03, -1.622128100393308492e-03, -1.621451203436708116e-03, -1.620771708778589440e-03, -1.620089617661941029e-03, -1.619404931333893105e-03, -1.618717651045692820e-03, -1.618027778052834580e-03, -1.617335313614852313e-03, -1.616640258995494673e-03, -1.615942615462598623e-03, -1.615242384288174439e-03, -1.614539566748383155e-03, -1.613834164123458068e-03, -1.613126177697820317e-03, -1.612415608760025534e-03, -1.611702458602700316e-03, -1.610986728522641534e-03, -1.610268419820774918e-03, -1.609547533802104316e-03, -1.608824071775783468e-03, -1.608098035055099094e-03, -1.607369424957390443e-03, -1.606638242804160534e-03, -1.605904489921021082e-03, -1.605168167637642616e-03, -1.604429277287860740e-03, -1.603687820209540819e-03, -1.602943797744742997e-03, -1.602197211239539398e-03, -1.601448062044115179e-03, -1.600696351512770257e-03, -1.599942081003904787e-03, -1.599185251879944999e-03, -1.598425865507455742e-03, -1.597663923257092557e-03, -1.596899426503525787e-03, -1.596132376625562224e-03, -1.595362775006067477e-03, -1.594590623031991996e-03, -1.593815922094317513e-03, -1.593038673588093902e-03, -1.592258878912519195e-03, -1.591476539470757217e-03, -1.590691656670056853e-03, -1.589904231921743802e-03, -1.589114266641213210e-03, -1.588321762247851821e-03, -1.587526720165147913e-03, -1.586729141820629723e-03, -1.585929028645872594e-03, -1.585126382076451493e-03, -1.584321203552030346e-03, -1.583513494516311732e-03, -1.582703256416996117e-03, -1.581890490705801589e-03, -1.581075198838578994e-03, -1.580257382275081874e-03, -1.579437042479154250e-03, -1.578614180918668604e-03, -1.577788799065463861e-03, -1.576960898395463138e-03, -1.576130480388528241e-03, -1.575297546528599745e-03, -1.574462098303608306e-03, -1.573624137205447771e-03, -1.572783664730067555e-03, -1.571940682377414959e-03, -1.571095191651387252e-03, -1.570247194059921220e-03, -1.569396691114958043e-03, -1.568543684332365665e-03, -1.567688175232056103e-03, -1.566830165337927986e-03, -1.565969656177806490e-03, -1.565106649283563682e-03, -1.564241146190968688e-03, -1.563373148439880242e-03, -1.562502657574023346e-03, -1.561629675141113730e-03, -1.560754202692859810e-03, -1.559876241784944901e-03, -1.558995793976946558e-03, -1.558112860832459520e-03, -1.557227443919030445e-03, -1.556339544808111501e-03, -1.555449165075150145e-03, -1.554556306299523195e-03, -1.553660970064576520e-03, -1.552763157957526372e-03, -1.551862871569603154e-03, -1.550960112495953624e-03, -1.550054882335626149e-03, -1.549147182691586536e-03, -1.548237015170831222e-03, -1.547324381384157857e-03, -1.546409282946367616e-03, -1.545491721476116012e-03, -1.544571698596020233e-03, -1.543649215932620111e-03, -1.542724275116301577e-03, -1.541796877781418740e-03, -1.540867025566226020e-03, -1.539934720112821334e-03, -1.538999963067266006e-03, -1.538062756079509310e-03, -1.537123100803333394e-03, -1.536180998896476222e-03, -1.535236452020552218e-03, -1.534289461841017348e-03, -1.533340030027268873e-03, -1.532388158252510468e-03, -1.531433848193881030e-03, -1.530477101532399815e-03, -1.529517919952851079e-03, -1.528556305144054914e-03, -1.527592258798559765e-03, -1.526625782612786846e-03, -1.525656878287066356e-03, -1.524685547525584783e-03, -1.523711792036313781e-03, -1.522735613531131819e-03, -1.521757013725766935e-03, -1.520775994339730597e-03, -1.519792557096430246e-03, -1.518806703723089065e-03, -1.517818435950789996e-03, -1.516827755514403098e-03, -1.515834664152596826e-03, -1.514839163608003260e-03, -1.513841255626936430e-03, -1.512840941959562322e-03, -1.511838224359890633e-03, -1.510833104585732924e-03, -1.509825584398730809e-03, -1.508815665564260979e-03, -1.507803349851571809e-03, -1.506788639033709637e-03, -1.505771534887457609e-03, -1.504752039193454080e-03, -1.503730153736126908e-03, -1.502705880303646614e-03, -1.501679220687950024e-03, -1.500650176684891618e-03, -1.499618750093934536e-03, -1.498584942718441358e-03, -1.497548756365455749e-03, -1.496510192845854461e-03, -1.495469253974272958e-03, -1.494425941569060097e-03, -1.493380257452371802e-03, -1.492332203450130084e-03, -1.491281781391947791e-03, -1.490228993111242673e-03, -1.489173840445182735e-03, -1.488116325234619666e-03, -1.487056449324204851e-03, -1.485994214562331474e-03, -1.484929622801054068e-03, -1.483862675896232717e-03, -1.482793375707444367e-03, -1.481721724097935554e-03, -1.480647722934750124e-03, -1.479571374088550989e-03, -1.478492679433862124e-03, -1.477411640848787754e-03, -1.476328260215162627e-03, -1.475242539418575869e-03, -1.474154480348310479e-03, -1.473064084897282838e-03, -1.471971354962171939e-03, -1.470876292443354990e-03, -1.469778899244815256e-03, -1.468679177274302521e-03, -1.467577128443220977e-03, -1.466472754666671516e-03, -1.465366057863396430e-03, -1.464257039955768136e-03, -1.463145702869991056e-03, -1.462032048535772018e-03, -1.460916078886515413e-03, -1.459797795859329268e-03, -1.458677201394952168e-03, -1.457554297437802264e-03, -1.456429085935866466e-03, -1.455301568840853535e-03, -1.454171748108117968e-03, -1.453039625696572832e-03, -1.451905203568844586e-03, -1.450768483691188514e-03, -1.449629468033412395e-03, -1.448488158569029164e-03, -1.447344557275168867e-03, -1.446198666132508413e-03, -1.445050487125406876e-03, -1.443900022241839144e-03, -1.442747273473316775e-03, -1.441592242815055176e-03, -1.440434932265756982e-03, -1.439275343827817622e-03, -1.438113479507213644e-03, -1.436949341313439182e-03, -1.435782931259652322e-03, -1.434614251362594873e-03, -1.433443303642514084e-03, -1.432270090123307716e-03, -1.431094612832447925e-03, -1.429916873800895832e-03, -1.428736875063269136e-03, -1.427554618657726976e-03, -1.426370106625931980e-03, -1.425183341013188179e-03, -1.423994323868237608e-03, -1.422803057243543284e-03, -1.421609543194955923e-03, -1.420413783781874616e-03, -1.419215781067389081e-03, -1.418015537117971745e-03, -1.416813054003644061e-03, -1.415608333798013593e-03, -1.414401378578184236e-03, -1.413192190424800675e-03, -1.411980771421962296e-03, -1.410767123657339630e-03, -1.409551249222123831e-03, -1.408333150210933863e-03, -1.407112828721968946e-03, -1.405890286856923332e-03, -1.404665526720942073e-03, -1.403438550422623837e-03, -1.402209360074224524e-03, -1.400977957791293624e-03, -1.399744345692995572e-03, -1.398508525901863420e-03, -1.397270500543990306e-03, -1.396030271748930360e-03, -1.394787841649632780e-03, -1.393543212382578663e-03, -1.392296386087718552e-03, -1.391047364908375075e-03, -1.389796150991397120e-03, -1.388542746487087627e-03, -1.387287153549117717e-03, -1.386029374334663304e-03, -1.384769411004350232e-03, -1.383507265722156484e-03, -1.382242940655601477e-03, -1.380976437975501257e-03, -1.379707759856197260e-03, -1.378436908475442688e-03, -1.377163886014293442e-03, -1.375888694657409310e-03, -1.374611336592695748e-03, -1.373331814011482556e-03, -1.372050129108559656e-03, -1.370766284082114211e-03, -1.369480281133637163e-03, -1.368192122468092154e-03, -1.366901810293803853e-03, -1.365609346822502842e-03, -1.364314734269213509e-03, -1.363017974852416244e-03, -1.361719070793961355e-03, -1.360418024319013991e-03, -1.359114837656062160e-03, -1.357809513037131627e-03, -1.356502052697429201e-03, -1.355192458875536599e-03, -1.353880733813449038e-03, -1.352566879756463133e-03, -1.351250898953256473e-03, -1.349932793655743424e-03, -1.348612566119266167e-03, -1.347290218602483674e-03, -1.345965753367309257e-03, -1.344639172679043494e-03, -1.343310478806316113e-03, -1.341979674020974756e-03, -1.340646760598266469e-03, -1.339311740816743600e-03, -1.337974616958162530e-03, -1.336635391307704635e-03, -1.335294066153721931e-03, -1.333950643787946543e-03, -1.332605126505386622e-03, -1.331257516604254787e-03, -1.329907816386118394e-03, -1.328556028155825162e-03, -1.327202154221399089e-03, -1.325846196894227584e-03, -1.324488158488941556e-03, -1.323128041323360987e-03, -1.321765847718633707e-03, -1.320401579999165359e-03, -1.319035240492510757e-03, -1.317666831529560592e-03, -1.316296355444446882e-03, -1.314923814574438026e-03, -1.313549211260152611e-03, -1.312172547845294425e-03, -1.310793826676986615e-03, -1.309413050105403490e-03, -1.308030220483947029e-03, -1.306645340169301089e-03, -1.305258411521357251e-03, -1.303869436903107911e-03, -1.302478418680838405e-03, -1.301085359224004060e-03, -1.299690260905271176e-03, -1.298293126100407086e-03, -1.296893957188447128e-03, -1.295492756551609205e-03, -1.294089526575222015e-03, -1.292684269647749766e-03, -1.291276988161009671e-03, -1.289867684509795514e-03, -1.288456361092062174e-03, -1.287043020309096937e-03, -1.285627664565118337e-03, -1.284210296267655847e-03, -1.282790917827248463e-03, -1.281369531657662207e-03, -1.279946140175804896e-03, -1.278520745801611444e-03, -1.277093350958242047e-03, -1.275663958071971164e-03, -1.274232569572101431e-03, -1.272799187891138000e-03, -1.271363815464698335e-03, -1.269926454731404872e-03, -1.268487108133079747e-03, -1.267045778114637457e-03, -1.265602467123987064e-03, -1.264157177612260530e-03, -1.262709912033540150e-03, -1.261260672845084712e-03, -1.259809462507222597e-03, -1.258356283483269165e-03, -1.256901138239693719e-03, -1.255444029246027349e-03, -1.253984958974770558e-03, -1.252523929901565650e-03, -1.251060944505116715e-03, -1.249596005267064299e-03, -1.248129114672199202e-03, -1.246660275208306577e-03, -1.245189489366245504e-03, -1.243716759639836023e-03, -1.242242088525891651e-03, -1.240765478524439485e-03, -1.239286932138330749e-03, -1.237806451873427497e-03, -1.236324040238797337e-03, -1.234839699746310970e-03, -1.233353432910875083e-03, -1.231865242250457931e-03, -1.230375130285985040e-03, -1.228883099541398620e-03, -1.227389152543529845e-03, -1.225893291822282303e-03, -1.224395519910537232e-03, -1.222895839344041637e-03, -1.221394252661614933e-03, -1.219890762405032719e-03, -1.218385371118924651e-03, -1.216878081350977183e-03, -1.215368895651827751e-03, -1.213857816574950279e-03, -1.212344846676900864e-03, -1.210829988517023951e-03, -1.209313244657711029e-03, -1.207794617664272041e-03, -1.206274110104836291e-03, -1.204751724550558655e-03, -1.203227463575499891e-03, -1.201701329756538596e-03, -1.200173325673551620e-03, -1.198643453909316054e-03, -1.197111717049410785e-03, -1.195578117682407097e-03, -1.194042658399759819e-03, -1.192505341795702372e-03, -1.190966170467456457e-03, -1.189425147015084382e-03, -1.187882274041542410e-03, -1.186337554152597923e-03, -1.184790989956836359e-03, -1.183242584065907549e-03, -1.181692339094106772e-03, -1.180140257658617194e-03, -1.178586342379529806e-03, -1.177030595879775777e-03, -1.175473020785018901e-03, -1.173913619723857688e-03, -1.172352395327676180e-03, -1.170789350230718329e-03, -1.169224487069949218e-03, -1.167657808485241325e-03, -1.166089317119275862e-03, -1.164519015617470352e-03, -1.162946906628008767e-03, -1.161372992802079621e-03, -1.159797276793409762e-03, -1.158219761258699352e-03, -1.156640448857277964e-03, -1.155059342251365650e-03, -1.153476444105952601e-03, -1.151891757088693543e-03, -1.150305283870104844e-03, -1.148717027123474311e-03, -1.147126989524725879e-03, -1.145535173752651849e-03, -1.143941582488781266e-03, -1.142346218417282771e-03, -1.140749084225163232e-03, -1.139150182602170595e-03, -1.137549516240663134e-03, -1.135947087835836910e-03, -1.134342900085602178e-03, -1.132736955690481035e-03, -1.131129257353841611e-03, -1.129519807781584513e-03, -1.127908609682555692e-03, -1.126295665768087826e-03, -1.124680978752236240e-03, -1.123064551351817941e-03, -1.121446386286327913e-03, -1.119826486277838507e-03, -1.118204854051194595e-03, -1.116581492333914476e-03, -1.114956403856071912e-03, -1.113329591350509283e-03, -1.111701057552685586e-03, -1.110070805200744299e-03, -1.108438837035408218e-03, -1.106805155800000707e-03, -1.105169764240697232e-03, -1.103532665106096234e-03, -1.101893861147445726e-03, -1.100253355118704012e-03, -1.098611149776435600e-03, -1.096967247879716877e-03, -1.095321652190336904e-03, -1.093674365472656904e-03, -1.092025390493670759e-03, -1.090374730022859078e-03, -1.088722386832402999e-03, -1.087068363697067967e-03, -1.085412663394129786e-03, -1.083755288703399126e-03, -1.082096242407480863e-03, -1.080435527291294428e-03, -1.078773146142456962e-03, -1.077109101751155384e-03, -1.075443396910016067e-03, -1.073776034414354206e-03, -1.072107017061890624e-03, -1.070436347652989209e-03, -1.068764028990547852e-03, -1.067090063879891533e-03, -1.065414455128970957e-03, -1.063737205548259766e-03, -1.062058317950642650e-03, -1.060377795151615059e-03, -1.058695639969189526e-03, -1.057011855223758843e-03, -1.055326443738328077e-03, -1.053639408338399430e-03, -1.051950751851844085e-03, -1.050260477109163067e-03, -1.048568586943155693e-03, -1.046875084189346746e-03, -1.045179971685517451e-03, -1.043483252271935760e-03, -1.041784928791413380e-03, -1.040085004089214048e-03, -1.038383481012934055e-03, -1.036680362412726892e-03, -1.034975651141197212e-03, -1.033269350053255334e-03, -1.031561462006362053e-03, -1.029851989860371434e-03, -1.028140936477587837e-03, -1.026428304722619336e-03, -1.024714097462603229e-03, -1.022998317567078977e-03, -1.021280967907912300e-03, -1.019562051359326846e-03, -1.017841570798167427e-03, -1.016119529103402808e-03, -1.014395929156569360e-03, -1.012670773841428239e-03, -1.010944066044232098e-03, -1.009215808653599099e-03, -1.007486004560393224e-03, -1.005754656657958240e-03, -1.004021767841982394e-03, -1.002287341010394978e-03, -1.000551379063578184e-03, -9.988138849042591146e-04, -9.970748614373775142e-04, -9.953343115703258085e-04, -9.935922382128081591e-04, -9.918486442767457043e-04, -9.901035326765183359e-04, -9.883569063286710976e-04, -9.866087681521602988e-04, -9.848591210682444436e-04, -9.831079680003289734e-04, -9.813553118743743604e-04, -9.796011556183936882e-04, -9.778455021627234858e-04, -9.760883544400509411e-04, -9.743297153853333441e-04, -9.725695879356788254e-04, -9.708079750305690508e-04, -9.690448796117495005e-04, -9.672803046230955696e-04, -9.655142530108411182e-04, -9.637467277234330800e-04, -9.619777317115839376e-04, -9.602072679281641694e-04, -9.584353393282329329e-04, -9.566619488693012003e-04, -9.548870995108669612e-04, -9.531107942146718531e-04, -9.513330359447552632e-04, -9.495538276673041664e-04, -9.477731723507556907e-04, -9.459910729656090082e-04, -9.442075324846773039e-04, -9.424225538829525753e-04, -9.406361401374855030e-04, -9.388482942276193130e-04, -9.370590191348605403e-04, -9.352683178428042180e-04, -9.334761933371598991e-04, -9.316826486060256337e-04, -9.298876866393754673e-04, -9.280913104295171901e-04, -9.262935229707392132e-04, -9.244943272595893165e-04, -9.226937262947321845e-04, -9.208917230768388180e-04, -9.190883206088210468e-04, -9.172835218956997992e-04, -9.154773299444842133e-04, -9.136697477644053914e-04, -9.118607783667941015e-04, -9.100504247649529501e-04, -9.082386899743917627e-04, -9.064255770126986717e-04, -9.046110888994294197e-04, -9.027952286563220314e-04, -9.009779993071853578e-04, -8.991594038777758020e-04, -8.973394453960592630e-04, -8.955181268918589862e-04, -8.936954513973227468e-04, -8.918714219464037333e-04, -8.900460415751310561e-04, -8.882193133216440082e-04, -8.863912402261143282e-04, -8.845618253306068799e-04, -8.827310716793323802e-04, -8.808989823185110063e-04, -8.790655602962458692e-04, -8.772308086627708624e-04, -8.753947304702651552e-04, -8.735573287729500114e-04, -8.717186066269471930e-04, -8.698785670903221110e-04, -8.680372132233586712e-04, -8.661945480880654195e-04, -8.643505747484674095e-04, -8.625052962706231162e-04, -8.606587157225085343e-04, -8.588108361740982768e-04, -8.569616606971793091e-04, -8.551111923656097482e-04, -8.532594342551820359e-04, -8.514063894434968464e-04, -8.495520610102026953e-04, -8.476964520368689788e-04, -8.458395656068552195e-04, -8.439814048055582643e-04, -8.421219727202769760e-04, -8.402612724400903687e-04, -8.383993070560922297e-04, -8.365360796612675200e-04, -8.346715933503620535e-04, -8.328058512201664491e-04, -8.309388563691832812e-04, -8.290706118979038761e-04, -8.272011209086861227e-04, -8.253303865056186217e-04, -8.234584117947776416e-04, -8.215851998840809686e-04, -8.197107538831621383e-04, -8.178350769036268507e-04, -8.159581720589098542e-04, -8.140800424641451679e-04, -8.122006912364207595e-04, -8.103201214946411778e-04, -8.084383363593965807e-04, -8.065553389532524337e-04, -8.046711324003636432e-04, -8.027857198269855400e-04, -8.008991043609014213e-04, -7.990112891316916493e-04, -7.971222772709613338e-04, -7.952320719118472370e-04, -7.933406761892961966e-04, -7.914480932401056750e-04, -7.895543262027889930e-04, -7.876593782176611984e-04, -7.857632524266604983e-04, -7.838659519735956737e-04, -7.819674800040140239e-04, -7.800678396650763576e-04, -7.781670341057959515e-04, -7.762650664769058439e-04, -7.743619399307844582e-04, -7.724576576214740344e-04, -7.705522227049834468e-04, -7.686456383387233349e-04, -7.667379076820227254e-04, -7.648290338957254922e-04, -7.629190201424961015e-04, -7.610078695866797499e-04, -7.590955853941726934e-04, -7.571821707326710721e-04, -7.552676287715337586e-04, -7.533519626816594095e-04, -7.514351756357282421e-04, -7.495172708080705213e-04, -7.475982513745368886e-04, -7.456781205127457771e-04, -7.437568814019489705e-04, -7.418345372229044263e-04, -7.399110911581620710e-04, -7.379865463917235783e-04, -7.360609061093289227e-04, -7.341341734983363593e-04, -7.322063517475232552e-04, -7.302774440475777755e-04, -7.283474535905162328e-04, -7.264163835699903506e-04, -7.244842371813209813e-04, -7.225510176214009622e-04, -7.206167280885719499e-04, -7.186813717828703174e-04, -7.167449519058473936e-04, -7.148074716606604272e-04, -7.128689342518823103e-04, -7.109293428857665562e-04, -7.089887007701016920e-04, -7.070470111141305934e-04, -7.051042771285779154e-04, -7.031605020259546444e-04, -7.012156890200315013e-04, -6.992698413261366633e-04, -6.973229621611947955e-04, -6.953750547435865381e-04, -6.934261222932387118e-04, -6.914761680314378354e-04, -6.895251951810869731e-04, -6.875732069665770399e-04, -6.856202066136384823e-04, -6.836661973496084262e-04, -6.817111824032868030e-04, -6.797551650048085222e-04, -6.777981483858887182e-04, -6.758401357796970906e-04, -6.738811304207164166e-04, -6.719211355450414652e-04, -6.699601543900304259e-04, -6.679981901945953671e-04, -6.660352461990799375e-04, -6.640713256451077949e-04, -6.621064317758505128e-04, -6.601405678358851156e-04, -6.581737370710599635e-04, -6.562059427287525752e-04, -6.542371880577323683e-04, -6.522674763080184117e-04, -6.502968107311501511e-04, -6.483251945800356207e-04, -6.463526311088228565e-04, -6.443791235731568525e-04, -6.424046752300455534e-04, -6.404292893377093671e-04, -6.384529691559051243e-04, -6.364757179455036735e-04, -6.344975389690246095e-04, -6.325184354900572009e-04, -6.305384107735595217e-04, -6.285574680859030115e-04, -6.265756106947704528e-04, -6.245928418690258662e-04, -6.226091648789729843e-04, -6.206245829961672513e-04, -6.186390994935066787e-04, -6.166527176450449293e-04, -6.146654407262508750e-04, -6.126772720138746976e-04, -6.106882147858478174e-04, -6.086982723213295136e-04, -6.067074479010026947e-04, -6.047157448065449163e-04, -6.027231663208836021e-04, -6.007297157284580960e-04, -5.987353963146401555e-04, -5.967402113662561040e-04, -5.947441641711854587e-04, -5.927472580186674347e-04, -5.907494961991581559e-04, -5.887508820041949123e-04, -5.867514187266572364e-04, -5.847511096606249808e-04, -5.827499581012466961e-04, -5.807479673449930093e-04, -5.787451406895223992e-04, -5.767414814335399247e-04, -5.747369928770612287e-04, -5.727316783212715911e-04, -5.707255410683896449e-04, -5.687185844219686762e-04, -5.667108116865371024e-04, -5.647022261679122404e-04, -5.626928311730483015e-04, -5.606826300099043356e-04, -5.586716259877068250e-04, -5.566598224168111233e-04, -5.546472226085555216e-04, -5.526338298755319742e-04, -5.506196475314424415e-04, -5.486046788909585943e-04, -5.465889272699863593e-04, -5.445723959854825800e-04, -5.425550883555355737e-04, -5.405370076992299308e-04, -5.385181573366804508e-04, -5.364985405893442838e-04, -5.344781607794798052e-04, -5.324570212304014036e-04, -5.304351252667530246e-04, -5.284124762139577212e-04, -5.263890773985297963e-04, -5.243649321481120987e-04, -5.223400437913363779e-04, -5.203144156579114299e-04, -5.182880510784300008e-04, -5.162609533846403793e-04, -5.142331259093017642e-04, -5.122045719860457034e-04, -5.101752949496429160e-04, -5.081452981358539978e-04, -5.061145848813012682e-04, -5.040831585237237752e-04, -5.020510224018402516e-04, -5.000181798552074102e-04, -4.979846342245342538e-04, -4.959503888513099772e-04, -4.939154470781165424e-04, -4.918798122484900094e-04, -4.898434877067734099e-04, -4.878064767983920262e-04, -4.857687828697028498e-04, -4.837304092678579174e-04, -4.816913593410727598e-04, -4.796516364384758604e-04, -4.776112439099812609e-04, -4.755701851065408559e-04, -4.735284633800126617e-04, -4.714860820830137447e-04, -4.694430445692363745e-04, -4.673993541930310941e-04, -4.653550143099467610e-04, -4.633100282761351031e-04, -4.612643994486184630e-04, -4.592181311855529332e-04, -4.571712268456865806e-04, -4.551236897886602587e-04, -4.530755233750570466e-04, -4.510267309662988706e-04, -4.489773159245110334e-04, -4.469272816127865962e-04, -4.448766313949966441e-04, -4.428253686358767506e-04, -4.407734967008456991e-04, -4.387210189562646616e-04, -4.366679387692975534e-04, -4.346142595078177377e-04, -4.325599845404429905e-04, -4.305051172368536605e-04, -4.284496609671919662e-04, -4.263936191026040435e-04, -4.243369950148244787e-04, -4.222797920764894265e-04, -4.202220136609933869e-04, -4.181636631423493429e-04, -4.161047438954546072e-04, -4.140452592959525859e-04, -4.119852127200815872e-04, -4.099246075449530812e-04, -4.078634471484049537e-04, -4.058017349088537291e-04, -4.037394742055745657e-04, -4.016766684185496300e-04, -3.996133209283272048e-04, -3.975494351162927936e-04, -3.954850143645249764e-04, -3.934200620556509934e-04, -3.913545815731679406e-04, -3.892885763010588531e-04, -3.872220496241218150e-04, -3.851550049278174665e-04, -3.830874455981289790e-04, -3.810193750218319672e-04, -3.789507965863507240e-04, -3.768817136796146178e-04, -3.748121296903287637e-04, -3.727420480078324811e-04, -3.706714720219503778e-04, -3.686004051232689310e-04, -3.665288507029431189e-04, -3.644568121527836995e-04, -3.623842928651144755e-04, -3.603112962328121381e-04, -3.582378256496224754e-04, -3.561638845096042841e-04, -3.540894762074427594e-04, -3.520146041384937291e-04, -3.499392716986825529e-04, -3.478634822843634463e-04, -3.457872392925888513e-04, -3.437105461209193752e-04, -3.416334061675104189e-04, -3.395558228309229830e-04, -3.374777995103948273e-04, -3.353993396056942117e-04, -3.333204465170256790e-04, -3.312411236450704417e-04, -3.291613743912966800e-04, -3.270812021573656168e-04, -3.250006103456250456e-04, -3.229196023589227401e-04, -3.208381816004590020e-04, -3.187563514741097539e-04, -3.166741153840470138e-04, -3.145914767350586807e-04, -3.125084389324049865e-04, -3.104250053816699057e-04, -3.083411794890390909e-04, -3.062569646611523126e-04, -3.041723643049588270e-04, -3.020873818279917874e-04, -3.000020206382190578e-04, -2.979162841439055194e-04, -2.958301757538786460e-04, -2.937436988773903224e-04, -2.916568569239667364e-04, -2.895696533037294112e-04, -2.874820914269736677e-04, -2.853941747047185860e-04, -2.833059065480971958e-04, -2.812172903686783760e-04, -2.791283295785036635e-04, -2.770390275899922770e-04, -2.749493878157975146e-04, -2.728594136690746055e-04, -2.707691085633394390e-04, -2.686784759123239316e-04, -2.665875191302477824e-04, -2.644962416316268402e-04, -2.624046468313624963e-04, -2.603127381445933110e-04, -2.582205189867400083e-04, -2.561279927738228761e-04, -2.540351629218970050e-04, -2.519420328473291940e-04, -2.498486059670695426e-04, -2.477548856980401237e-04, -2.456608754576891738e-04, -2.435665786635676029e-04, -2.414719987336463143e-04, -2.393771390861736039e-04, -2.372820031395285500e-04, -2.351865943124963726e-04, -2.330909160241196817e-04, -2.309949716935581266e-04, -2.288987647403580104e-04, -2.268022985843099067e-04, -2.247055766453009377e-04, -2.226086023435909739e-04, -2.205113790996646953e-04, -2.184139103340899675e-04, -2.163161994678337234e-04, -2.142182499218883479e-04, -2.121200651175891047e-04, -2.100216484764697478e-04, -2.079230034201160187e-04, -2.058241333704432564e-04, -2.037250417495471298e-04, -2.016257319795590052e-04, -1.995262074829219840e-04, -1.974264716822442104e-04, -1.953265280001517180e-04, -1.932263798595666357e-04, -1.911260306835575956e-04, -1.890254838951976207e-04, -1.869247429178357716e-04, -1.848238111749061108e-04, -1.827226920900163897e-04, -1.806213890868003534e-04, -1.785199055889602417e-04, -1.764182450205889323e-04, -1.743164108056009787e-04, -1.722144063680567869e-04, -1.701122351322039230e-04, -1.680099005223284155e-04, -1.659074059628451231e-04, -1.638047548781055055e-04, -1.617019506926704094e-04, -1.595989968311668718e-04, -1.574958967181390424e-04, -1.553926537783260106e-04, -1.532892714365156547e-04, -1.511857531174433508e-04, -1.490821022458359367e-04, -1.469783222467313890e-04, -1.448744165448665204e-04, -1.427703885652321990e-04, -1.406662417326465253e-04, -1.385619794720775451e-04, -1.364576052084966922e-04, -1.343531223667326923e-04, -1.322485343717480076e-04, -1.301438446484906261e-04, -1.280390566217501336e-04, -1.259341737164324242e-04, -1.238291993574129255e-04, -1.217241369693919530e-04, -1.196189899771687423e-04, -1.175137618054961791e-04, -1.154084558789345949e-04, -1.133030756221271136e-04, -1.111976244596535551e-04, -1.090921058158842853e-04, -1.069865231153037280e-04, -1.048808797820803161e-04, -1.027751792406268077e-04, -1.006694249149826429e-04, -9.856362022913757828e-05, -9.645776860707376739e-05, -9.435187347266497070e-05, -9.224593824953109629e-05, -9.013996636131398022e-05, -8.803396123153123612e-05, -8.592792628342961676e-05, -8.382186494026088938e-05, -8.171578062508976924e-05, -7.960967676087993749e-05, -7.750355677035023535e-05, -7.539742407601415612e-05, -7.329128210050398103e-05, -7.118513426600108515e-05, -6.907898399455963956e-05, -6.697283470814804137e-05, -6.486668982850178752e-05, -6.276055277721250133e-05, -6.065442697553434818e-05, -5.854831584466038512e-05, -5.644222280557575309e-05, -5.433615127891160102e-05, -5.223010468522116439e-05, -5.012408644483340464e-05, -4.801809997775334396e-05, -4.591214870370383415e-05, -4.380623604244837779e-05, -4.170036541317538278e-05, -3.959454023500884182e-05, -3.748876392681537161e-05, -3.538303990705738469e-05, -3.327737159411675772e-05, -3.117176240591294838e-05, -2.906621576022682955e-05, -2.696073507455370885e-05, -2.485532376595748645e-05, -2.274998525134642869e-05, -2.064472294732673979e-05, -1.853954027005662148e-05, -1.643444063552187379e-05, -1.432942745938999361e-05, -1.222450415686342627e-05, -1.011967414295598963e-05, -8.014940832346366181e-06, -5.910307639231698505e-06, -3.805777977650816173e-06, -1.701355261056101266e-06, 4.029570971287313866e-07, 2.507155684124336045e-06, 4.611237087472715917e-06, 6.715197894995823471e-06, 8.819034694894929734e-06, 1.092274407589699810e-05, 1.302632262697855072e-05, 1.512976693755894031e-05, 1.723307359741205194e-05, 1.933623919685952661e-05, 2.143926032649457931e-05, 2.354213357732845102e-05, 2.564485554093679808e-05, 2.774742280918338658e-05, 2.984983197436647665e-05, 3.195207962931834541e-05, 3.405416236736374513e-05, 3.615607678199684818e-05, 3.825781946749692825e-05, 4.035938701837101601e-05, 4.246077602978089182e-05, 4.456198309722101672e-05, 4.666300481666474381e-05, 4.876383778470953366e-05, 5.086447859830265110e-05, 5.296492385488581135e-05, 5.506517015254238083e-05, 5.716521408972125115e-05, 5.926505226538257624e-05, 6.136468127914468851e-05, 6.346409773100783057e-05, 6.556329822150022441e-05, 6.766227935182477068e-05, 6.976103772353536695e-05, 7.185956993891847908e-05, 7.395787260067014385e-05, 7.605594231204156378e-05, 7.815377567703267784e-05, 8.025136929988235606e-05, 8.234871978568247808e-05, 8.444582374005504420e-05, 8.654267776911229028e-05, 8.863927847955449632e-05, 9.073562247881652998e-05, 9.283170637479232364e-05, 9.492752677602761850e-05, 9.702308029163179178e-05, 9.911836353147020781e-05, 1.012133731058900232e-04, 1.033081056258646841e-04, 1.054025577030936588e-04, 1.074967259499611438e-04, 1.095906069792135674e-04, 1.116841974045278065e-04, 1.137774938401866581e-04, 1.158704929010407296e-04, 1.179631912026510922e-04, 1.200555853612037243e-04, 1.221476719937008323e-04, 1.242394477176853008e-04, 1.263309091513876287e-04, 1.284220529138707656e-04, 1.305128756247553746e-04, 1.326033739043660370e-04, 1.346935443738754784e-04, 1.367833836550312685e-04, 1.388728883703004534e-04, 1.409620551430148389e-04, 1.430508805970518284e-04, 1.451393613572094215e-04, 1.472274940488890304e-04, 1.493152752982374292e-04, 1.514027017322950729e-04, 1.534897699787201133e-04, 1.555764766659335741e-04, 1.576628184232650948e-04, 1.597487918806791691e-04, 1.618343936689196970e-04, 1.639196204196548333e-04, 1.660044687652043928e-04, 1.680889353386839675e-04, 1.701730167741493424e-04, 1.722567097063240626e-04, 1.743400107707440119e-04, 1.764229166039019635e-04, 1.785054238429278222e-04, 1.805875291260121678e-04, 1.826692290918549653e-04, 1.847505203802726368e-04, 1.868313996318817730e-04, 1.889118634880550057e-04, 1.909919085910208899e-04, 1.930715315840077781e-04, 1.951507291109718745e-04, 1.972294978167874315e-04, 1.993078343471586583e-04, 2.013857353488124921e-04, 2.034631974692235629e-04, 2.055402173567616453e-04, 2.076167916607864715e-04, 2.096929170316091343e-04, 2.117685901201712170e-04, 2.138438075786092834e-04, 2.159185660599312979e-04, 2.179928622179806025e-04, 2.200666927075762668e-04, 2.221400541844299303e-04, 2.242129433053308206e-04, 2.262853567278785795e-04, 2.283572911106263232e-04, 2.304287431132213992e-04, 2.324997093961382382e-04, 2.345701866208188134e-04, 2.366401714498189799e-04, 2.387096605465337923e-04, 2.407786505753446043e-04, 2.428471382017614508e-04, 2.449151200921518353e-04, 2.469825929138824076e-04, 2.490495533354666327e-04, 2.511159980262449233e-04, 2.531819236567587174e-04, 2.552473268984326981e-04, 2.573122044237218659e-04, 2.593765529062507500e-04, 2.614403690205437136e-04, 2.635036494421707782e-04, 2.655663908478881371e-04, 2.676285899153687305e-04, 2.696902433233447100e-04, 2.717513477517529926e-04, 2.738118998814611745e-04, 2.758718963944609527e-04, 2.779313339737768894e-04, 2.799902093036138635e-04, 2.820485190693135399e-04, 2.841062599570408180e-04, 2.861634286543366127e-04, 2.882200218498501645e-04, 2.902760362330692357e-04, 2.923314684948762521e-04, 2.943863153272288972e-04, 2.964405734231256341e-04, 2.984942394767416108e-04, 3.005473101833490792e-04, 3.025997822395015474e-04, 3.046516523427661438e-04, 3.067029171918632629e-04, 3.087535734868147755e-04, 3.108036179286697794e-04, 3.128530472196501544e-04, 3.149018580632910740e-04, 3.169500471641721238e-04, 3.189976112280611749e-04, 3.210445469620576615e-04, 3.230908510742722529e-04, 3.251365202742050237e-04, 3.271815512724267523e-04, 3.292259407807218729e-04, 3.312696855122316446e-04, 3.333127821811830466e-04, 3.353552275030355248e-04, 3.373970181946187941e-04, 3.394381509738647151e-04, 3.414786225599541493e-04, 3.435184296734523218e-04, 3.455575690360454142e-04, 3.475960373706802643e-04, 3.496338314017073180e-04, 3.516709478545683790e-04, 3.537073834562060579e-04, 3.557431349345298028e-04, 3.577781990190079275e-04, 3.598125724404048552e-04, 3.618462519305049182e-04, 3.638792342226727277e-04, 3.659115160515353940e-04, 3.679430941529423572e-04, 3.699739652640607421e-04, 3.720041261235205879e-04, 3.740335734711443933e-04, 3.760623040481335996e-04, 3.780903145969852154e-04, 3.801176018616792755e-04, 3.821441625874061093e-04, 3.841699935207149854e-04, 3.861950914096057806e-04, 3.882194530034883766e-04, 3.902430750528749093e-04, 3.922659543099678943e-04, 3.942880875281267990e-04, 3.963094714622787933e-04, 3.983301028686081794e-04, 4.003499785046941940e-04, 4.023690951296560203e-04, 4.043874495038851527e-04, 4.064050383891849340e-04, 4.084218585489119888e-04, 4.104379067477116247e-04, 4.124531797516575314e-04, 4.144676743283905044e-04, 4.164813872468580737e-04, 4.184943152774478611e-04, 4.205064551921343808e-04, 4.225178037642112958e-04, 4.245283577684303583e-04, 4.265381139811436030e-04, 4.285470691799925062e-04, 4.305552201442723863e-04, 4.325625636546279597e-04, 4.345690964931838785e-04, 4.365748154436916405e-04, 4.385797172912659649e-04, 4.405837988225176074e-04, 4.425870568257032510e-04, 4.445894880904508232e-04, 4.465910894079076526e-04, 4.485918575708755063e-04, 4.505917893735476702e-04, 4.525908816116939689e-04, 4.545891310825769566e-04, 4.565865345850899900e-04, 4.585830889197155410e-04, 4.605787908882242763e-04, 4.625736372942081055e-04, 4.645676249427776886e-04, 4.665607506405240008e-04, 4.685530111956045813e-04, 4.705444034178952128e-04, 4.725349241187159436e-04, 4.745245701110203896e-04, 4.765133382093099195e-04, 4.785012252298186737e-04, 4.804882279902490195e-04, 4.824743433099112498e-04, 4.844595680098168254e-04, 4.864438989126437882e-04, 4.884273328424215297e-04, 4.904098666251228197e-04, 4.923914970881745597e-04, 4.943722210606419894e-04, 4.963520353733665968e-04, 4.983309368586635174e-04, 5.003089223506757433e-04, 5.022859886850741242e-04, 5.042621326991912666e-04, 5.062373512321647565e-04, 5.082116411246691452e-04, 5.101849992190614488e-04, 5.121574223595133125e-04, 5.141289073917551392e-04, 5.160994511632055427e-04, 5.180690505231220523e-04, 5.200377023223300621e-04, 5.220054034133632349e-04, 5.239721506506039069e-04, 5.259379408899745234e-04, 5.279027709893480092e-04, 5.298666378080096797e-04, 5.318295382072491060e-04, 5.337914690500509011e-04, 5.357524272010501590e-04, 5.377124095266404410e-04, 5.396714128950932552e-04, 5.416294341763120508e-04, 5.435864702419622137e-04, 5.455425179656120133e-04, 5.474975742224697916e-04, 5.494516358895694700e-04, 5.514046998456841389e-04, 5.533567629714610404e-04, 5.553078221493909939e-04, 5.572578742634963630e-04, 5.592069161998674100e-04, 5.611549448464058822e-04, 5.631019570925616590e-04, 5.650479498299087891e-04, 5.669929199516321201e-04, 5.689368643529147925e-04, 5.708797799306442045e-04, 5.728216635835481872e-04, 5.747625122123258684e-04, 5.767023227193983055e-04, 5.786410920090357714e-04, 5.805788169875002180e-04, 5.825154945627853938e-04, 5.844511216447550788e-04, 5.863856951452750326e-04, 5.883192119779562549e-04, 5.902516690583004856e-04, 5.921830633038178407e-04, 5.941133916337466543e-04, 5.960426509693910998e-04, 5.979708382338287794e-04, 5.998979503520462508e-04, 6.018239842510733585e-04, 6.037489368597224841e-04, 6.056728051087345880e-04, 6.075955859309030253e-04, 6.095172762608249382e-04, 6.114378730350350467e-04, 6.133573731921384631e-04, 6.152757736725574227e-04, 6.171930714186675678e-04, 6.191092633749263174e-04, 6.210243464876282708e-04, 6.229383177050709826e-04, 6.248511739774866578e-04, 6.267629122571628233e-04, 6.286735294984161990e-04, 6.305830226572878196e-04, 6.324913886920660545e-04, 6.343986245629956071e-04, 6.363047272322323042e-04, 6.382096936639774284e-04, 6.401135208244049680e-04, 6.420162056818273918e-04, 6.439177452064486678e-04, 6.458181363704998965e-04, 6.477173761483649705e-04, 6.496154615163357614e-04, 6.515123894527408144e-04, 6.534081569380433604e-04, 6.553027609547871059e-04, 6.571961984873212793e-04, 6.590884665223477193e-04, 6.609795620484200818e-04, 6.628694820563264551e-04, 6.647582235388016124e-04, 6.666457834906566824e-04, 6.685321589089092539e-04, 6.704173467925413814e-04, 6.723013441426218834e-04, 6.741841479624426266e-04, 6.760657552572708938e-04, 6.779461630344798140e-04, 6.798253683036774905e-04, 6.817033680764612120e-04, 6.835801593665502681e-04, 6.854557391899083552e-04, 6.873301045645085214e-04, 6.892032525104557902e-04, 6.910751800501165054e-04, 6.929458842078378483e-04, 6.948153620103208030e-04, 6.966836104861257603e-04, 6.985506266662269790e-04, 7.004164075837102012e-04, 7.022809502737510775e-04, 7.041442517736963731e-04, 7.060063091231903861e-04, 7.078671193639386999e-04, 7.097266795398283123e-04, 7.115849866970624027e-04, 7.134420378839153015e-04, 7.152978301509023851e-04, 7.171523605507004956e-04, 7.190056261382793456e-04, 7.208576239708660649e-04, 7.227083511076543097e-04, 7.245578046103113429e-04, 7.264059815426887699e-04, 7.282528789707901204e-04, 7.300984939628930382e-04, 7.319428235894821690e-04, 7.337858649234085383e-04, 7.356276150396453889e-04, 7.374680710154330300e-04, 7.393072299303860657e-04, 7.411450888662622421e-04, 7.429816449070910343e-04, 7.448168951392575635e-04, 7.466508366514651917e-04, 7.484834665344537383e-04, 7.503147818815424476e-04, 7.521447797881734322e-04, 7.539734573520907824e-04, 7.558008116734575522e-04, 7.576268398545843831e-04, 7.594515390002542230e-04, 7.612749062174436858e-04, 7.630969386154489277e-04, 7.649176333060107641e-04, 7.667369874030810235e-04, 7.685549980229406178e-04, 7.703716622843368019e-04, 7.721869773082317475e-04, 7.740009402179374174e-04, 7.758135481392411164e-04, 7.776247982001598114e-04, 7.794346875310794506e-04, 7.812432132648637097e-04, 7.830503725365932409e-04, 7.848561624839179305e-04, 7.866605802465913419e-04, 7.884636229669864712e-04, 7.902652877898255638e-04, 7.920655718621467207e-04, 7.938644723333788174e-04, 7.956619863554801730e-04, 7.974581110826891835e-04, 7.992528436716998547e-04, 8.010461812815743068e-04, 8.028381210739215590e-04, 8.046286602126522837e-04, 8.064177958641032722e-04, 8.082055251971694909e-04, 8.099918453830546065e-04, 8.117767535954176781e-04, 8.135602470104279097e-04, 8.153423228067639998e-04, 8.171229781653005899e-04, 8.189022102696690139e-04, 8.206800163057535779e-04, 8.224563934620736328e-04, 8.242313389294968033e-04, 8.260048499013742957e-04, 8.277769235736525712e-04, 8.295475571446495663e-04, 8.313167478151737384e-04, 8.330844927886457132e-04, 8.348507892708664823e-04, 8.366156344701445799e-04, 8.383790255974120928e-04, 8.401409598660002304e-04, 8.419014344917512141e-04, 8.436604466931521768e-04, 8.454179936910543539e-04, 8.471740727090039825e-04, 8.489286809729563966e-04, 8.506818157114083003e-04, 8.524334741555612653e-04, 8.541836535388851225e-04, 8.559323510976375119e-04, 8.576795640705972773e-04, 8.594252896990240255e-04, 8.611695252267385740e-04, 8.629122679002565249e-04, 8.646535149685456202e-04, 8.663932636831896735e-04, 8.681315112983189640e-04, 8.698682550707658194e-04, 8.716034922598400779e-04, 8.733372201274439053e-04, 8.750694359381588558e-04, 8.768001369592071667e-04, 8.785293204601886223e-04, 8.802569837135503384e-04, 8.819831239943164711e-04, 8.837077385800526548e-04, 8.854308247509906854e-04, 8.871523797899563126e-04, 8.888724009825200523e-04, 8.905908856167800208e-04, 8.923078309834757763e-04, 8.940232343761063882e-04, 8.957370930907096939e-04, 8.974494044259803682e-04, 8.991601656833844150e-04, 9.008693741669410258e-04, 9.025770271833329517e-04, 9.042831220420364993e-04, 9.059876560550444080e-04, 9.076906265371855820e-04, 9.093920308058648814e-04, 9.110918661811698077e-04, 9.127901299859989817e-04, 9.144868195458348949e-04, 9.161819321888576423e-04, 9.178754652460768696e-04, 9.195674160510897794e-04, 9.212577819402101515e-04, 9.229465602525881466e-04, 9.246337483299787215e-04, 9.263193435168668539e-04, 9.280033431605787817e-04, 9.296857446110681983e-04, 9.313665452210249983e-04, 9.330457423459954068e-04, 9.347233333441250236e-04, 9.363993155764980701e-04, 9.380736864066905895e-04, 9.397464432012693969e-04, 9.414175833295226545e-04, 9.430871041634352608e-04, 9.447550030777629015e-04, 9.464212774501521786e-04, 9.480859246609172654e-04, 9.497489420931975491e-04, 9.514103271328798938e-04, 9.530700771687565000e-04, 9.547281895923114253e-04, 9.563846617978206564e-04, 9.580394911824474105e-04, 9.596926751462011521e-04, 9.613442110916802039e-04, 9.629940964245200640e-04, 9.646423285531475090e-04, 9.662889048887369006e-04, 9.679338228453320501e-04, 9.695770798397703241e-04, 9.712186732918402874e-04, 9.728586006240650796e-04, 9.744968592618040047e-04, 9.761334466333904418e-04, 9.777683601698888751e-04, 9.794015973052302027e-04, 9.810331554763122418e-04, 9.826630321227985011e-04, 9.842912246872082774e-04, 9.859177306150582534e-04, 9.875425473546226712e-04, 9.891656723570666897e-04, 9.907871030765487332e-04, 9.924068369699678722e-04, 9.940248714972689179e-04, 9.956412041211770095e-04, 9.972558323073296704e-04, 9.988687535243713500e-04, 1.000479965243753931e-03, 1.002089464939838427e-03, 1.003697250090013812e-03, 1.005303318174481696e-03, 1.006907666676374723e-03, 1.008510293081852196e-03, 1.010111194879912072e-03, 1.011710369562518041e-03, 1.013307814624539015e-03, 1.014903527563864715e-03, 1.016497505881370968e-03, 1.018089747080664059e-03, 1.019680248668535438e-03, 1.021269008154720168e-03, 1.022856023051717808e-03, 1.024441290875206150e-03, 1.026024809143799869e-03, 1.027606575379021690e-03, 1.029186587105402131e-03, 1.030764841850431148e-03, 1.032341337144684554e-03, 1.033916070521629510e-03, 1.035489039517725578e-03, 1.037060241672542677e-03, 1.038629674528540126e-03, 1.040197335631193277e-03, 1.041763222529085240e-03, 1.043327332773720181e-03, 1.044889663919612013e-03, 1.046450213524402137e-03, 1.048008979148623739e-03, 1.049565958355978476e-03, 1.051121148713095787e-03, 1.052674547789640008e-03, 1.054226153158429203e-03, 1.055775962395216587e-03, 1.057323973078804586e-03, 1.058870182791155643e-03, 1.060414589117184697e-03, 1.061957189644861755e-03, 1.063497981965334837e-03, 1.065036963672704893e-03, 1.066574132364150928e-03, 1.068109485640031256e-03, 1.069643021103642601e-03, 1.071174736361537759e-03, 1.072704629023115992e-03, 1.074232696701074487e-03, 1.075758937011200194e-03, 1.077283347572175094e-03, 1.078805926005991459e-03, 1.080326669937703129e-03, 1.081845576995413803e-03, 1.083362644810332122e-03, 1.084877871016893310e-03, 1.086391253252541470e-03, 1.087902789157889610e-03, 1.089412476376630306e-03, 1.090920312555698985e-03, 1.092426295345057946e-03, 1.093930422397813027e-03, 1.095432691370275182e-03, 1.096933099921939452e-03, 1.098431645715238630e-03, 1.099928326416003835e-03, 1.101423139693048607e-03, 1.102916083218485064e-03, 1.104407154667482989e-03, 1.105896351718383460e-03, 1.107383672052797289e-03, 1.108869113355410302e-03, 1.110352673314083955e-03, 1.111834349619960499e-03, 1.113314139967275847e-03, 1.114792042053445878e-03, 1.116268053579179843e-03, 1.117742172248285858e-03, 1.119214395767770221e-03, 1.120684721847939758e-03, 1.122153148202182813e-03, 1.123619672547217967e-03, 1.125084292602885868e-03, 1.126547006092246160e-03, 1.128007810741675065e-03, 1.129466704280670869e-03, 1.130923684441967553e-03, 1.132378748961619793e-03, 1.133831895578828620e-03, 1.135283122036023599e-03, 1.136732426078979280e-03, 1.138179805456614830e-03, 1.139625257921102241e-03, 1.141068781227960001e-03, 1.142510373135866616e-03, 1.143950031406787892e-03, 1.145387753805924679e-03, 1.146823538101810229e-03, 1.148257382066271166e-03, 1.149689283474219104e-03, 1.151119240104042478e-03, 1.152547249737358691e-03, 1.153973310159019756e-03, 1.155397419157160651e-03, 1.156819574523299497e-03, 1.158239774052155415e-03, 1.159658015541773640e-03, 1.161074296793470663e-03, 1.162488615611958695e-03, 1.163900969805165475e-03, 1.165311357184321654e-03, 1.166719775564047535e-03, 1.168126222762302111e-03, 1.169530696600177937e-03, 1.170933194902315511e-03, 1.172333715496551125e-03, 1.173732256214056295e-03, 1.175128814889425796e-03, 1.176523389360474483e-03, 1.177915977468479069e-03, 1.179306577057957816e-03, 1.180695185976792612e-03, 1.182081802076297063e-03, 1.183466423211048876e-03, 1.184849047238982662e-03, 1.186229672021489471e-03, 1.187608295423228785e-03, 1.188984915312224153e-03, 1.190359529559970085e-03, 1.191732136041239072e-03, 1.193102732634173735e-03, 1.194471317220395252e-03, 1.195837887684789332e-03, 1.197202441915774015e-03, 1.198564977804946873e-03, 1.199925493247480310e-03, 1.201283986141918380e-03, 1.202640454390131904e-03, 1.203994895897407373e-03, 1.205347308572525446e-03, 1.206697690327576851e-03, 1.208046039078074707e-03, 1.209392352743037793e-03, 1.210736629244803632e-03, 1.212078866509173338e-03, 1.213419062465335508e-03, 1.214757215045975721e-03, 1.216093322187232310e-03, 1.217427381828505104e-03, 1.218759391912807577e-03, 1.220089350386596629e-03, 1.221417255199592827e-03, 1.222743104305174184e-03, 1.224066895660019024e-03, 1.225388627224384408e-03, 1.226708296961882133e-03, 1.228025902839599082e-03, 1.229341442828164009e-03, 1.230654914901586211e-03, 1.231966317037344648e-03, 1.233275647216479668e-03, 1.234582903423418667e-03, 1.235888083646068461e-03, 1.237191185875898989e-03, 1.238492208107787405e-03, 1.239791148340093534e-03, 1.241088004574752469e-03, 1.242382774817085049e-03, 1.243675457076017952e-03, 1.244966049363893310e-03, 1.246254549696559129e-03, 1.247540956093450394e-03, 1.248825266577433587e-03, 1.250107479174877812e-03, 1.251387591915757149e-03, 1.252665602833481729e-03, 1.253941509964978836e-03, 1.255215311350787446e-03, 1.256487005034885628e-03, 1.257756589064784429e-03, 1.259024061491613965e-03, 1.260289420369926959e-03, 1.261552663757948547e-03, 1.262813789717261203e-03, 1.264072796313156239e-03, 1.265329681614470094e-03, 1.266584443693427120e-03, 1.267837080625967231e-03, 1.269087590491563321e-03, 1.270335971373194161e-03, 1.271582221357424628e-03, 1.272826338534361473e-03, 1.274068320997759785e-03, 1.275308166844864484e-03, 1.276545874176497706e-03, 1.277781441097136867e-03, 1.279014865714758102e-03, 1.280246146140920187e-03, 1.281475280490828499e-03, 1.282702266883295993e-03, 1.283927103440568422e-03, 1.285149788288676926e-03, 1.286370319557110379e-03, 1.287588695379069965e-03, 1.288804913891281609e-03, 1.290018973234062765e-03, 1.291230871551444495e-03, 1.292440606990960484e-03, 1.293648177703785821e-03, 1.294853581844774724e-03, 1.296056817572326103e-03, 1.297257883048460536e-03, 1.298456776438910044e-03, 1.299653495912951118e-03, 1.300848039643489945e-03, 1.302040405807148703e-03, 1.303230592584101854e-03, 1.304418598158168727e-03, 1.305604420716893104e-03, 1.306788058451344376e-03, 1.307969509556385990e-03, 1.309148772230342385e-03, 1.310325844675346149e-03, 1.311500725097163684e-03, 1.312673411705162678e-03, 1.313843902712376723e-03, 1.315012196335577088e-03, 1.316178290795130259e-03, 1.317342184315066457e-03, 1.318503875123167891e-03, 1.319663361450815892e-03, 1.320820641533085446e-03, 1.321975713608717880e-03, 1.323128575920186562e-03, 1.324279226713666758e-03, 1.325427664238881245e-03, 1.326573886749385671e-03, 1.327717892502410912e-03, 1.328859679758829246e-03, 1.329999246783236319e-03, 1.331136591843904739e-03, 1.332271713212889895e-03, 1.333404609165876652e-03, 1.334535277982253944e-03, 1.335663717945202375e-03, 1.336789927341541133e-03, 1.337913904461806485e-03, 1.339035647600303166e-03, 1.340155155055080096e-03, 1.341272425127765580e-03, 1.342387456123890835e-03, 1.343500246352612865e-03, 1.344610794126820715e-03, 1.345719097763211150e-03, 1.346825155582128406e-03, 1.347928965907744603e-03, 1.349030527067910778e-03, 1.350129837394208488e-03, 1.351226895222050646e-03, 1.352321698890529729e-03, 1.353414246742480013e-03, 1.354504537124569296e-03, 1.355592568387155999e-03, 1.356678338884340562e-03, 1.357761846974079928e-03, 1.358843091018006703e-03, 1.359922069381528254e-03, 1.360998780433894575e-03, 1.362073222548026768e-03, 1.363145394100745596e-03, 1.364215293472477875e-03, 1.365282919047571767e-03, 1.366348269214139998e-03, 1.367411342364029071e-03, 1.368472136892859813e-03, 1.369530651200140565e-03, 1.370586883689068995e-03, 1.371640832766684312e-03, 1.372692496843785958e-03, 1.373741874335047009e-03, 1.374788963658867165e-03, 1.375833763237453841e-03, 1.376876271496863587e-03, 1.377916486866992765e-03, 1.378954407781390196e-03, 1.379990032677575048e-03, 1.381023359996876379e-03, 1.382054388184293702e-03, 1.383083115688825719e-03, 1.384109540963152866e-03, 1.385133662463895136e-03, 1.386155478651418440e-03, 1.387174987989919610e-03, 1.388192188947493617e-03, 1.389207079996006506e-03, 1.390219659611153721e-03, 1.391229926272539476e-03, 1.392237878463543606e-03, 1.393243514671383375e-03, 1.394246833387188930e-03, 1.395247833105871466e-03, 1.396246512326193481e-03, 1.397242869550829707e-03, 1.398236903286229635e-03, 1.399228612042781447e-03, 1.400217994334659790e-03, 1.401205048679912734e-03, 1.402189773600507738e-03, 1.403172167622207403e-03, 1.404152229274654691e-03, 1.405129957091417808e-03, 1.406105349609868558e-03, 1.407078405371262574e-03, 1.408049122920788107e-03, 1.409017500807449585e-03, 1.409983537584145021e-03, 1.410947231807650835e-03, 1.411908582038675199e-03, 1.412867586841754820e-03, 1.413824244785311752e-03, 1.414778554441709557e-03, 1.415730514387220996e-03, 1.416680123201877325e-03, 1.417627379469753226e-03, 1.418572281778782704e-03, 1.419514828720768417e-03, 1.420455018891435229e-03, 1.421392850890391621e-03, 1.422328323321221839e-03, 1.423261434791344305e-03, 1.424192183912097913e-03, 1.425120569298801666e-03, 1.426046589570616543e-03, 1.426970243350626170e-03, 1.427891529265899913e-03, 1.428810445947363214e-03, 1.429726992029865026e-03, 1.430641166152237659e-03, 1.431552966957167980e-03, 1.432462393091346814e-03, 1.433369443205337324e-03, 1.434274115953640925e-03, 1.435176409994749335e-03, 1.436076323991031592e-03, 1.436973856608800412e-03, 1.437869006518365097e-03, 1.438761772393923333e-03, 1.439652152913615613e-03, 1.440540146759588342e-03, 1.441425752617881296e-03, 1.442308969178478359e-03, 1.443189795135384505e-03, 1.444068229186493742e-03, 1.444944270033665223e-03, 1.445817916382764225e-03, 1.446689166943541808e-03, 1.447558020429819342e-03, 1.448424475559233508e-03, 1.449288531053509726e-03, 1.450150185638322299e-03, 1.451009438043275547e-03, 1.451866287001943485e-03, 1.452720731251939002e-03, 1.453572769534780497e-03, 1.454422400595995531e-03, 1.455269623185064670e-03, 1.456114436055513418e-03, 1.456956837964782335e-03, 1.457796827674303144e-03, 1.458634403949531696e-03, 1.459469565559934736e-03, 1.460302311278843541e-03, 1.461132639883703501e-03, 1.461960550155938380e-03, 1.462786040880924721e-03, 1.463609110848048019e-03, 1.464429758850687964e-03, 1.465247983686267024e-03, 1.466063784156165220e-03, 1.466877159065760024e-03, 1.467688107224491417e-03, 1.468496627445754332e-03, 1.469302718546948525e-03, 1.470106379349544285e-03, 1.470907608678963816e-03, 1.471706405364651060e-03, 1.472502768240113984e-03, 1.473296696142826134e-03, 1.474088187914280408e-03, 1.474877242400045654e-03, 1.475663858449641772e-03, 1.476448034916679570e-03, 1.477229770658753218e-03, 1.478009064537469516e-03, 1.478785915418530730e-03, 1.479560322171610560e-03, 1.480332283670417670e-03, 1.481101798792741012e-03, 1.481868866420363307e-03, 1.482633485439100287e-03, 1.483395654738852961e-03, 1.484155373213518489e-03, 1.484912639761050467e-03, 1.485667453283425962e-03, 1.486419812686706450e-03, 1.487169716881016780e-03, 1.487917164780423089e-03, 1.488662155303149652e-03, 1.489404687371443563e-03, 1.490144759911594691e-03, 1.490882371853919849e-03, 1.491617522132856252e-03, 1.492350209686850926e-03, 1.493080433458418175e-03, 1.493808192394121583e-03, 1.494533485444631037e-03, 1.495256311564640986e-03, 1.495976669712904914e-03, 1.496694558852282178e-03, 1.497409977949664068e-03, 1.498122925976010664e-03, 1.498833401906397248e-03, 1.499541404719920623e-03, 1.500246933399752890e-03, 1.500949986933195011e-03, 1.501650564311549085e-03, 1.502348664530273395e-03, 1.503044286588849478e-03, 1.503737429490836991e-03, 1.504428092243931822e-03, 1.505116273859863525e-03, 1.505801973354439771e-03, 1.506485189747616390e-03, 1.507165922063378538e-03, 1.507844169329802288e-03, 1.508519930579103191e-03, 1.509193204847540009e-03, 1.509863991175465665e-03, 1.510532288607376256e-03, 1.511198096191798072e-03, 1.511861412981430281e-03, 1.512522238032966903e-03, 1.513180570407292834e-03, 1.513836409169395155e-03, 1.514489753388267509e-03, 1.515140602137104173e-03, 1.515788954493179925e-03, 1.516434809537856769e-03, 1.517078166356595646e-03, 1.517719024039017360e-03, 1.518357381678806526e-03, 1.518993238373768590e-03, 1.519626593225812273e-03, 1.520257445341002475e-03, 1.520885793829479180e-03, 1.521511637805488459e-03, 1.522134976387431917e-03, 1.522755808697838931e-03, 1.523374133863275364e-03, 1.523989951014531347e-03, 1.524603259286443037e-03, 1.525214057818023369e-03, 1.525822345752374676e-03, 1.526428122236724244e-03, 1.527031386422464431e-03, 1.527632137465075686e-03, 1.528230374524170787e-03, 1.528826096763527802e-03, 1.529419303351018744e-03, 1.530009993458648389e-03, 1.530598166262596774e-03, 1.531183820943139186e-03, 1.531766956684679987e-03, 1.532347572675807259e-03, 1.532925668109190454e-03, 1.533501242181695753e-03, 1.534074294094291092e-03, 1.534644823052076085e-03, 1.535212828264341219e-03, 1.535778308944474183e-03, 1.536341264310017111e-03, 1.536901693582685014e-03, 1.537459595988313740e-03, 1.538014970756874066e-03, 1.538567817122534149e-03, 1.539118134323564551e-03, 1.539665921602394617e-03, 1.540211178205634591e-03, 1.540753903384025096e-03, 1.541294096392454476e-03, 1.541831756489966390e-03, 1.542366882939776940e-03, 1.542899475009281395e-03, 1.543429531969950103e-03, 1.543957053097483540e-03, 1.544482037671736406e-03, 1.545004484976699854e-03, 1.545524394300520346e-03, 1.546041764935551484e-03, 1.546556596178265755e-03, 1.547068887329312858e-03, 1.547578637693504313e-03, 1.548085846579845114e-03, 1.548590513301469985e-03, 1.549092637175686522e-03, 1.549592217523999924e-03, 1.550089253672079156e-03, 1.550583744949717707e-03, 1.551075690690937019e-03, 1.551565090233901489e-03, 1.552051942920947523e-03, 1.552536248098606306e-03, 1.553018005117553059e-03, 1.553497213332677516e-03, 1.553973872103013446e-03, 1.554447980791770966e-03, 1.554919538766371453e-03, 1.555388545398380968e-03, 1.555855000063550379e-03, 1.556318902141834654e-03, 1.556780251017349497e-03, 1.557239046078380020e-03, 1.557695286717428879e-03, 1.558148972331161418e-03, 1.558600102320417810e-03, 1.559048676090250569e-03, 1.559494693049866222e-03, 1.559938152612709442e-03, 1.560379054196324054e-03, 1.560817397222526073e-03, 1.561253181117288344e-03, 1.561686405310769386e-03, 1.562117069237312951e-03, 1.562545172335479907e-03, 1.562970714047993157e-03, 1.563393693821773199e-03, 1.563814111107959381e-03, 1.564231965361849615e-03, 1.564647256042957625e-03, 1.565059982614968497e-03, 1.565470144545795268e-03, 1.565877741307544670e-03, 1.566282772376473547e-03, 1.566685237233084909e-03, 1.567085135362087170e-03, 1.567482466252319772e-03, 1.567877229396897167e-03, 1.568269424293079794e-03, 1.568659050442377297e-03, 1.569046107350456371e-03, 1.569430594527197569e-03, 1.569812511486702459e-03, 1.570191857747250258e-03, 1.570568632831329707e-03, 1.570942836265652731e-03, 1.571314467581113672e-03, 1.571683526312806856e-03, 1.572050012000061068e-03, 1.572413924186387727e-03, 1.572775262419495420e-03, 1.573134026251338680e-03, 1.573490215238030395e-03, 1.573843828939935907e-03, 1.574194866921601026e-03, 1.574543328751778484e-03, 1.574889214003458507e-03, 1.575232522253814391e-03, 1.575573253084227437e-03, 1.575911406080317528e-03, 1.576246980831888262e-03, 1.576579976932956017e-03, 1.576910393981782038e-03, 1.577238231580799363e-03, 1.577563489336662912e-03, 1.577886166860268139e-03, 1.578206263766684025e-03, 1.578523779675239163e-03, 1.578838714209423316e-03, 1.579151066996980221e-03, 1.579460837669874849e-03, 1.579768025864235941e-03, 1.580072631220464643e-03, 1.580374653383158834e-03, 1.580674092001128081e-03, 1.580970946727397334e-03, 1.581265217219205614e-03, 1.581556903138036383e-03, 1.581846004149557033e-03, 1.582132519923668337e-03, 1.582416450134497719e-03, 1.582697794460378657e-03, 1.582976552583861959e-03, 1.583252724191729424e-03, 1.583526308974994275e-03, 1.583797306628840227e-03, 1.584065716852727955e-03, 1.584331539350300336e-03, 1.584594773829452055e-03, 1.584855420002273009e-03, 1.585113477585075193e-03, 1.585368946298418508e-03, 1.585621825867053079e-03, 1.585872116019964575e-03, 1.586119816490370307e-03, 1.586364927015697325e-03, 1.586607447337590659e-03, 1.586847377201939559e-03, 1.587084716358836724e-03, 1.587319464562590883e-03, 1.587551621571771246e-03, 1.587781187149135296e-03, 1.588008161061665218e-03, 1.588232543080598472e-03, 1.588454332981353639e-03, 1.588673530543619535e-03, 1.588890135551258723e-03, 1.589104147792392077e-03, 1.589315567059371463e-03, 1.589524393148745475e-03, 1.589730625861297169e-03, 1.589934265002048829e-03, 1.590135310380233350e-03, 1.590333761809301820e-03, 1.590529619106955186e-03, 1.590722882095096111e-03, 1.590913550599864753e-03, 1.591101624451611660e-03, 1.591287103484938757e-03, 1.591469987538658573e-03, 1.591650276455792296e-03, 1.591827970083607279e-03, 1.592003068273604256e-03, 1.592175570881488493e-03, 1.592345477767197551e-03, 1.592512788794892171e-03, 1.592677503832969511e-03, 1.592839622754044053e-03, 1.592999145434948697e-03, 1.593156071756755138e-03, 1.593310401604752834e-03, 1.593462134868455079e-03, 1.593611271441601820e-03, 1.593757811222175054e-03, 1.593901754112343316e-03, 1.594043100018538439e-03, 1.594181848851401783e-03, 1.594318000525787480e-03, 1.594451554960794534e-03, 1.594582512079736674e-03, 1.594710871810161006e-03, 1.594836634083823942e-03, 1.594959798836712451e-03, 1.595080366009046227e-03, 1.595198335545263161e-03, 1.595313707394015439e-03, 1.595426481508199898e-03, 1.595536657844914222e-03, 1.595644236365492945e-03, 1.595749217035497469e-03, 1.595851599824700236e-03, 1.595951384707101645e-03, 1.596048571660931134e-03, 1.596143160668633300e-03, 1.596235151716878312e-03, 1.596324544796551498e-03, 1.596411339902767228e-03, 1.596495537034866305e-03, 1.596577136196405131e-03, 1.596656137395152881e-03, 1.596732540643119262e-03, 1.596806345956517000e-03, 1.596877553355784607e-03, 1.596946162865587465e-03, 1.597012174514806336e-03, 1.597075588336536057e-03, 1.597136404368096818e-03, 1.597194622651031126e-03, 1.597250243231100987e-03, 1.597303266158268172e-03, 1.597353691486736935e-03, 1.597401519274921269e-03, 1.597446749585444041e-03, 1.597489382485160628e-03, 1.597529418045128772e-03, 1.597566856340632219e-03, 1.597601697451163372e-03, 1.597633941460440852e-03, 1.597663588456395408e-03, 1.597690638531159939e-03, 1.597715091781101802e-03, 1.597736948306794844e-03, 1.597756208213018964e-03, 1.597772871608776598e-03, 1.597786938607282520e-03, 1.597798409325971005e-03, 1.597807283886470021e-03, 1.597813562414627251e-03, 1.597817245040518115e-03, 1.597818331898410646e-03, 1.597816823126786733e-03, 1.597812718868339525e-03, 1.597806019269972129e-03, 1.597796724482809533e-03, 1.597784834662156544e-03, 1.597770349967555679e-03, 1.597753270562740765e-03, 1.597733596615659056e-03, 1.597711328298460172e-03, 1.597686465787501739e-03, 1.597659009263351776e-03, 1.597628958910783051e-03, 1.597596314918761379e-03, 1.597561077480469903e-03, 1.597523246793291314e-03, 1.597482823058811105e-03, 1.597439806482814969e-03, 1.597394197275299856e-03, 1.597345995650450339e-03, 1.597295201826656177e-03, 1.597241816026517521e-03, 1.597185838476825178e-03, 1.597127269408571458e-03, 1.597066109056939544e-03, 1.597002357661325396e-03, 1.596936015465309344e-03, 1.596867082716677336e-03, 1.596795559667402945e-03, 1.596721446573662112e-03, 1.596644743695824036e-03, 1.596565451298447708e-03, 1.596483569650290800e-03, 1.596399099024300560e-03, 1.596312039697617710e-03, 1.596222391951575802e-03, 1.596130156071694488e-03, 1.596035332347689071e-03, 1.595937921073460955e-03, 1.595837922547100468e-03, 1.595735337070886429e-03, 1.595630164951285712e-03, 1.595522406498951296e-03, 1.595412062028717277e-03, 1.595299131859611880e-03, 1.595183616314841627e-03, 1.595065515721792639e-03, 1.594944830412044516e-03, 1.594821560721355154e-03, 1.594695706989658363e-03, 1.594567269561063651e-03, 1.594436248783881807e-03, 1.594302645010581970e-03, 1.594166458597822637e-03, 1.594027689906430409e-03, 1.593886339301414526e-03, 1.593742407151957320e-03, 1.593595893831425926e-03, 1.593446799717343444e-03, 1.593295125191418644e-03, 1.593140870639531441e-03, 1.592984036451732671e-03, 1.592824623022233042e-03, 1.592662630749432616e-03, 1.592498060035885468e-03, 1.592330911288320503e-03, 1.592161184917624973e-03, 1.591988881338873103e-03, 1.591814000971277085e-03, 1.591636544238226973e-03, 1.591456511567282016e-03, 1.591273903390155904e-03, 1.591088720142727836e-03, 1.590900962265034057e-03, 1.590710630201266559e-03, 1.590517724399797802e-03, 1.590322245313123247e-03, 1.590124193397924679e-03, 1.589923569115035294e-03, 1.589720372929425167e-03, 1.589514605310232915e-03, 1.589306266730755503e-03, 1.589095357668427431e-03, 1.588881878604846533e-03, 1.588665830025749910e-03, 1.588447212421032796e-03, 1.588226026284735113e-03, 1.588002272115031279e-03, 1.587775950414268373e-03, 1.587547061688924501e-03, 1.587315606449605327e-03, 1.587081585211082236e-03, 1.586844998492272603e-03, 1.586605846816203143e-03, 1.586364130710067816e-03, 1.586119850705191604e-03, 1.585873007337035290e-03, 1.585623601145191982e-03, 1.585371632673401431e-03, 1.585117102469530944e-03, 1.584860011085581022e-03, 1.584600359077665199e-03, 1.584338147006074437e-03, 1.584073375435185189e-03, 1.583806044933511875e-03, 1.583536156073714471e-03, 1.583263709432567281e-03, 1.582988705590960025e-03, 1.582711145133922775e-03, 1.582431028650599500e-03, 1.582148356734260205e-03, 1.581863129982283593e-03, 1.581575348996182425e-03, 1.581285014381587266e-03, 1.580992126748225011e-03, 1.580696686709958786e-03, 1.580398694884767134e-03, 1.580098151894718641e-03, 1.579795058366015954e-03, 1.579489414928974969e-03, 1.579181222217994687e-03, 1.578870480871612291e-03, 1.578557191532446334e-03, 1.578241354847237940e-03, 1.577922971466832807e-03, 1.577602042046162122e-03, 1.577278567244280076e-03, 1.576952547724333508e-03, 1.576623984153552793e-03, 1.576292877203289578e-03, 1.575959227548992493e-03, 1.575623035870178743e-03, 1.575284302850476180e-03, 1.574943029177622430e-03, 1.574599215543407869e-03, 1.574252862643751080e-03, 1.573903971178616671e-03, 1.573552541852113289e-03, 1.573198575372388016e-03, 1.572842072451673644e-03, 1.572483033806322279e-03, 1.572121460156744198e-03, 1.571757352227410014e-03, 1.571390710746905107e-03, 1.571021536447882129e-03, 1.570649830067051035e-03, 1.570275592345215512e-03, 1.569898824027249123e-03, 1.569519525862104201e-03, 1.569137698602774333e-03, 1.568753343006356162e-03, 1.568366459834001679e-03, 1.567977049850922998e-03, 1.567585113826380858e-03, 1.567190652533746861e-03, 1.566793666750412178e-03, 1.566394157257850871e-03, 1.565992124841569582e-03, 1.565587570291164131e-03, 1.565180494400270073e-03, 1.564770897966565304e-03, 1.564358781791795215e-03, 1.563944146681772686e-03, 1.563526993446314991e-03, 1.563107322899321208e-03, 1.562685135858744899e-03, 1.562260433146548571e-03, 1.561833215588761354e-03, 1.561403484015464697e-03, 1.560971239260744653e-03, 1.560536482162768216e-03, 1.560099213563702651e-03, 1.559659434309769704e-03, 1.559217145251234980e-03, 1.558772347242364789e-03, 1.558325041141482526e-03, 1.557875227810941133e-03, 1.557422908117097726e-03, 1.556968082930354795e-03, 1.556510753125146546e-03, 1.556050919579899001e-03, 1.555588583177084424e-03, 1.555123744803194865e-03, 1.554656405348715060e-03, 1.554186565708177504e-03, 1.553714226780107807e-03, 1.553239389467062212e-03, 1.552762054675584438e-03, 1.552282223316224768e-03, 1.551799896303587747e-03, 1.551315074556238079e-03, 1.550827758996745510e-03, 1.550337950551704345e-03, 1.549845650151708510e-03, 1.549350858731318812e-03, 1.548853577229131889e-03, 1.548353806587723838e-03, 1.547851547753667989e-03, 1.547346801677517564e-03, 1.546839569313820419e-03, 1.546329851621143113e-03, 1.545817649561989160e-03, 1.545302964102856927e-03, 1.544785796214282782e-03, 1.544266146870707738e-03, 1.543744017050613197e-03, 1.543219407736407542e-03, 1.542692319914513305e-03, 1.542162754575323799e-03, 1.541630712713171680e-03, 1.541096195326396162e-03, 1.540559203417298786e-03, 1.540019737992123685e-03, 1.539477800061101820e-03, 1.538933390638441874e-03, 1.538386510742259993e-03, 1.537837161394683657e-03, 1.537285343621796379e-03, 1.536731058453586320e-03, 1.536174306924043866e-03, 1.535615090071112618e-03, 1.535053408936641259e-03, 1.534489264566484164e-03, 1.533922658010368695e-03, 1.533353590322066072e-03, 1.532782062559204239e-03, 1.532208075783371730e-03, 1.531631631060115933e-03, 1.531052729458923364e-03, 1.530471372053169568e-03, 1.529887559920209980e-03, 1.529301294141329837e-03, 1.528712575801698201e-03, 1.528121405990448848e-03, 1.527527785800637762e-03, 1.526931716329249858e-03, 1.526333198677150846e-03, 1.525732233949145776e-03, 1.525128823253998770e-03, 1.524522967704331541e-03, 1.523914668416672183e-03, 1.523303926511531932e-03, 1.522690743113251427e-03, 1.522075119350134930e-03, 1.521457056354341046e-03, 1.520836555261965766e-03, 1.520213617213008643e-03, 1.519588243351336363e-03, 1.518960434824730013e-03, 1.518330192784887690e-03, 1.517697518387346213e-03, 1.517062412791575022e-03, 1.516424877160935623e-03, 1.515784912662625000e-03, 1.515142520467774269e-03, 1.514497701751395991e-03, 1.513850457692327576e-03, 1.513200789473360952e-03, 1.512548698281084491e-03, 1.511894185306017881e-03, 1.511237251742543388e-03, 1.510577898788873549e-03, 1.509916127647127062e-03, 1.509251939523288677e-03, 1.508585335627163002e-03, 1.507916317172453219e-03, 1.507244885376726393e-03, 1.506571041461362290e-03, 1.505894786651630797e-03, 1.505216122176658089e-03, 1.504535049269373941e-03, 1.503851569166613856e-03, 1.503165683108987011e-03, 1.502477392341038456e-03, 1.501786698111080192e-03, 1.501093601671248633e-03, 1.500398104277612813e-03, 1.499700207189979444e-03, 1.498999911672010878e-03, 1.498297218991217735e-03, 1.497592130418927241e-03, 1.496884647230309687e-03, 1.496174770704303617e-03, 1.495462502123720344e-03, 1.494747842775183888e-03, 1.494030793949090640e-03, 1.493311356939693718e-03, 1.492589533045058942e-03, 1.491865323567029278e-03, 1.491138729811232857e-03, 1.490409753087207660e-03, 1.489678394708167765e-03, 1.488944655991215199e-03, 1.488208538257182944e-03, 1.487470042830741192e-03, 1.486729171040360046e-03, 1.485985924218242733e-03, 1.485240303700441833e-03, 1.484492310826774708e-03, 1.483741946940808328e-03, 1.482989213389929737e-03, 1.482234111525313966e-03, 1.481476642701845970e-03, 1.480716808278251381e-03, 1.479954609617007387e-03, 1.479190048084322350e-03, 1.478423125050238804e-03, 1.477653841888484487e-03, 1.476882199976604828e-03, 1.476108200695905055e-03, 1.475331845431370392e-03, 1.474553135571867292e-03, 1.473772072509904911e-03, 1.472988657641766293e-03, 1.472202892367504906e-03, 1.471414778090917534e-03, 1.470624316219503076e-03, 1.469831508164536060e-03, 1.469036355341036279e-03, 1.468238859167695937e-03, 1.467439021067002379e-03, 1.466636842465146367e-03, 1.465832324792060463e-03, 1.465025469481370671e-03, 1.464216277970406413e-03, 1.463404751700317190e-03, 1.462590892115860509e-03, 1.461774700665535243e-03, 1.460956178801576209e-03, 1.460135327979911884e-03, 1.459312149660195630e-03, 1.458486645305729149e-03, 1.457658816383564397e-03, 1.456828664364462171e-03, 1.455996190722812526e-03, 1.455161396936757506e-03, 1.454324284488128912e-03, 1.453484854862414043e-03, 1.452643109548757425e-03, 1.451799050040102198e-03, 1.450952677832940746e-03, 1.450103994427516356e-03, 1.449253001327748197e-03, 1.448399700041169517e-03, 1.447544092079053411e-03, 1.446686178956275558e-03, 1.445825962191420698e-03, 1.444963443306736001e-03, 1.444098623828079684e-03, 1.443231505285014031e-03, 1.442362089210753352e-03, 1.441490377142112377e-03, 1.440616370619600579e-03, 1.439740071187381194e-03, 1.438861480393199008e-03, 1.437980599788498326e-03, 1.437097430928361381e-03, 1.436211975371433315e-03, 1.435324234680083718e-03, 1.434434210420207790e-03, 1.433541904161462913e-03, 1.432647317477013212e-03, 1.431750451943663129e-03, 1.430851309141871518e-03, 1.429949890655714999e-03, 1.429046198072819436e-03, 1.428140232984483537e-03, 1.427231996985591899e-03, 1.426321491674650789e-03, 1.425408718653706393e-03, 1.424493679528466682e-03, 1.423576375908235277e-03, 1.422656809405864605e-03, 1.421734981637778460e-03, 1.420810894224110122e-03, 1.419884548788449309e-03, 1.418955946957977049e-03, 1.418025090363570200e-03, 1.417091980639530397e-03, 1.416156619423850332e-03, 1.415219008357993013e-03, 1.414279149087067618e-03, 1.413337043259730620e-03, 1.412392692528151089e-03, 1.411446098548111740e-03, 1.410497262978951255e-03, 1.409546187483501183e-03, 1.408592873728202379e-03, 1.407637323383046464e-03, 1.406679538121499273e-03, 1.405719519620637036e-03, 1.404757269561073300e-03, 1.403792789626890193e-03, 1.402826081505786958e-03, 1.401857146888917105e-03, 1.400885987471006374e-03, 1.399912604950315437e-03, 1.398937001028563139e-03, 1.397959177411042505e-03, 1.396979135806570432e-03, 1.395996877927399875e-03, 1.395012405489367505e-03, 1.394025720211803949e-03, 1.393036823817489110e-03, 1.392045718032765365e-03, 1.391052404587441718e-03, 1.390056885214849530e-03, 1.389059161651769224e-03, 1.388059235638437229e-03, 1.387057108918720531e-03, 1.386052783239825458e-03, 1.385046260352437979e-03, 1.384037542010850986e-03, 1.383026629972703434e-03, 1.382013525999119122e-03, 1.380998231854738785e-03, 1.379980749307644847e-03, 1.378961080129384627e-03, 1.377939226094924367e-03, 1.376915188982727727e-03, 1.375888970574720444e-03, 1.374860572656212265e-03, 1.373829997016014041e-03, 1.372797245446381138e-03, 1.371762319742951845e-03, 1.370725221704856018e-03, 1.369685953134660216e-03, 1.368644515838285522e-03, 1.367600911625179707e-03, 1.366555142308118398e-03, 1.365507209703369649e-03, 1.364457115630606345e-03, 1.363404861912863699e-03, 1.362350450376643117e-03, 1.361293882851859942e-03, 1.360235161171758017e-03, 1.359174287173061258e-03, 1.358111262695883880e-03, 1.357046089583665129e-03, 1.355978769683310881e-03, 1.354909304845115792e-03, 1.353837696922680469e-03, 1.352763947773064123e-03, 1.351688059256710194e-03, 1.350610033237357663e-03, 1.349529871582213223e-03, 1.348447576161740944e-03, 1.347363148849933757e-03, 1.346276591524002723e-03, 1.345187906064537709e-03, 1.344097094355548808e-03, 1.343004158284378949e-03, 1.341909099741666169e-03, 1.340811920621459838e-03, 1.339712622821117661e-03, 1.338611208241382656e-03, 1.337507678786248495e-03, 1.336402036363116283e-03, 1.335294282882716057e-03, 1.334184420259065373e-03, 1.333072450409471471e-03, 1.331958375254710392e-03, 1.330842196718729463e-03, 1.329723916728816875e-03, 1.328603537215612305e-03, 1.327481060113048800e-03, 1.326356487358374900e-03, 1.325229820892080473e-03, 1.324101062658011212e-03, 1.322970214603317891e-03, 1.321837278678365726e-03, 1.320702256836875105e-03, 1.319565151035858707e-03, 1.318425963235522833e-03, 1.317284695399439801e-03, 1.316141349494446460e-03, 1.314995927490574370e-03, 1.313848431361205708e-03, 1.312698863082973743e-03, 1.311547224635707751e-03, 1.310393518002588064e-03, 1.309237745169948520e-03, 1.308079908127447993e-03, 1.306920008867995140e-03, 1.305758049387659939e-03, 1.304594031685836096e-03, 1.303427957765147154e-03, 1.302259829631371253e-03, 1.301089649293599637e-03, 1.299917418764145365e-03, 1.298743140058463948e-03, 1.297566815195315545e-03, 1.296388446196644834e-03, 1.295208035087628282e-03, 1.294025583896612130e-03, 1.292841094655111742e-03, 1.291654569398006762e-03, 1.290466010163213465e-03, 1.289275418991872330e-03, 1.288082797928360394e-03, 1.286888149020256125e-03, 1.285691474318231440e-03, 1.284492775876222353e-03, 1.283292055751316871e-03, 1.282089316003800095e-03, 1.280884558697049490e-03, 1.279677785897688838e-03, 1.278468999675502586e-03, 1.277258202103360388e-03, 1.276045395257364556e-03, 1.274830581216765922e-03, 1.273613762063894022e-03, 1.272394939884292399e-03, 1.271174116766656155e-03, 1.269951294802737192e-03, 1.268726476087518335e-03, 1.267499662719018391e-03, 1.266270856798463237e-03, 1.265040060430193663e-03, 1.263807275721606175e-03, 1.262572504783273123e-03, 1.261335749728896083e-03, 1.260097012675206758e-03, 1.258856295742109225e-03, 1.257613601052626814e-03, 1.256368930732788478e-03, 1.255122286911801617e-03, 1.253873671721970331e-03, 1.252623087298598706e-03, 1.251370535780192477e-03, 1.250116019308189714e-03, 1.248859540027304725e-03, 1.247601100085163990e-03, 1.246340701632453821e-03, 1.245078346823096007e-03, 1.243814037813910410e-03, 1.242547776764805351e-03, 1.241279565838794303e-03, 1.240009407201943421e-03, 1.238737303023285889e-03, 1.237463255474977389e-03, 1.236187266732192026e-03, 1.234909338973163087e-03, 1.233629474379077228e-03, 1.232347675134228210e-03, 1.231063943425945127e-03, 1.229778281444505452e-03, 1.228490691383195971e-03, 1.227201175438475192e-03, 1.225909735809617516e-03, 1.224616374699046299e-03, 1.223321094312070176e-03, 1.222023896857088628e-03, 1.220724784545492011e-03, 1.219423759591580468e-03, 1.218120824212719829e-03, 1.216815980629272443e-03, 1.215509231064486155e-03, 1.214200577744675366e-03, 1.212890022899122374e-03, 1.211577568760002126e-03, 1.210263217562527289e-03, 1.208946971544886664e-03, 1.207628832948128743e-03, 1.206308804016380069e-03, 1.204986886996596953e-03, 1.203663084138767349e-03, 1.202337397695828680e-03, 1.201009829923557672e-03, 1.199680383080766171e-03, 1.198349059429191414e-03, 1.197015861233406264e-03, 1.195680790761006985e-03, 1.194343850282493123e-03, 1.193005042071204613e-03, 1.191664368403470972e-03, 1.190321831558542771e-03, 1.188977433818471947e-03, 1.187631177468312154e-03, 1.186283064795975442e-03, 1.184933098092292962e-03, 1.183581279650939731e-03, 1.182227611768428988e-03, 1.180872096744345085e-03, 1.179514736880960977e-03, 1.178155534483461787e-03, 1.176794491859954779e-03, 1.175431611321418185e-03, 1.174066895181596903e-03, 1.172700345757185731e-03, 1.171331965367696437e-03, 1.169961756335533443e-03, 1.168589720985846372e-03, 1.167215861646716960e-03, 1.165840180649069940e-03, 1.164462680326598882e-03, 1.163083363015799364e-03, 1.161702231056173677e-03, 1.160319286789837255e-03, 1.158934532561866704e-03, 1.157547970720042415e-03, 1.156159603615036129e-03, 1.154769433600332440e-03, 1.153377463032120593e-03, 1.151983694269484220e-03, 1.150588129674304195e-03, 1.149190771611148260e-03, 1.147791622447476810e-03, 1.146390684553513653e-03, 1.144987960302191804e-03, 1.143583452069294642e-03, 1.142177162233375901e-03, 1.140769093175672934e-03, 1.139359247280268689e-03, 1.137947626934006059e-03, 1.136534234526390087e-03, 1.135119072449804157e-03, 1.133702143099214656e-03, 1.132283448872552179e-03, 1.130862992170298667e-03, 1.129440775395695569e-03, 1.128016800954786351e-03, 1.126591071256332136e-03, 1.125163588711722154e-03, 1.123734355735163046e-03, 1.122303374743570869e-03, 1.120870648156476130e-03, 1.119436178396211127e-03, 1.117999967887776816e-03, 1.116562019058904391e-03, 1.115122334339953367e-03, 1.113680916163941725e-03, 1.112237766966758410e-03, 1.110792889186792542e-03, 1.109346285265099289e-03, 1.107897957645602839e-03, 1.106447908774672471e-03, 1.104996141101501810e-03, 1.103542657077811323e-03, 1.102087459158084893e-03, 1.100630549799443613e-03, 1.099171931461574237e-03, 1.097711606606896137e-03, 1.096249577700468504e-03, 1.094785847209892764e-03, 1.093320417605492126e-03, 1.091853291360223325e-03, 1.090384470949566902e-03, 1.088913958851714771e-03, 1.087441757547484567e-03, 1.085967869520194744e-03, 1.084492297255905922e-03, 1.083015043243151137e-03, 1.081536109973155711e-03, 1.080055499939743154e-03, 1.078573215639225214e-03, 1.077089259570600949e-03, 1.075603634235440054e-03, 1.074116342137805026e-03, 1.072627385784420944e-03, 1.071136767684582880e-03, 1.069644490350050731e-03, 1.068150556295244377e-03, 1.066654968037142629e-03, 1.065157728095168744e-03, 1.063658838991433280e-03, 1.062158303250423149e-03, 1.060656123399389547e-03, 1.059152301967928797e-03, 1.057646841488160813e-03, 1.056139744494934011e-03, 1.054631013525418951e-03, 1.053120651119336237e-03, 1.051608659818984706e-03, 1.050095042169142331e-03, 1.048579800717125855e-03, 1.047062938012647236e-03, 1.045544456608020738e-03, 1.044024359058047568e-03, 1.042502647919918510e-03, 1.040979325753413863e-03, 1.039454395120778963e-03, 1.037927858586681906e-03, 1.036399718718218317e-03, 1.034869978085154645e-03, 1.033338639259487324e-03, 1.031805704815828102e-03, 1.030271177331119978e-03, 1.028735059384847756e-03, 1.027197353558943933e-03, 1.025658062437677896e-03, 1.024117188607859318e-03, 1.022574734658727785e-03, 1.021030703181848714e-03, 1.019485096771313715e-03, 1.017937918023627611e-03, 1.016389169537614988e-03, 1.014838853914604936e-03, 1.013286973758341066e-03, 1.011733531674855304e-03, 1.010178530272721597e-03, 1.008621972162766214e-03, 1.007063859958304318e-03, 1.005504196275039137e-03, 1.003942983730910605e-03, 1.002380224946477225e-03, 1.000815922544463733e-03, 9.992500791499926878e-04, 9.976826973906150441e-04, 9.961137798962444497e-04, 9.945433292990377670e-04, 9.929713482336097446e-04, 9.913978393369185255e-04, 9.898228052481511559e-04, 9.882462486089473638e-04, 9.866681720632284724e-04, 9.850885782572852203e-04, 9.835074698396602342e-04, 9.819248494611762176e-04, 9.803407197751816318e-04, 9.787550834371213510e-04, 9.771679431047782232e-04, 9.755793014383111255e-04, 9.739891611001342923e-04, 9.723975247549862706e-04, 9.708043950697947200e-04, 9.692097747138663649e-04, 9.676136663587864891e-04, 9.660160726783153943e-04, 9.644169963485778102e-04, 9.628164400479705207e-04, 9.612144064570735677e-04, 9.596108982586902579e-04, 9.580059181380878560e-04, 9.563994687825296426e-04, 9.547915528816595899e-04, 9.531821731273644504e-04, 9.515713322136573138e-04, 9.499590328369163488e-04, 9.483452776956055119e-04, 9.467300694905111209e-04, 9.451134109246418910e-04, 9.434953047031004571e-04, 9.418757535333072617e-04, 9.402547601248833521e-04, 9.386323271895397925e-04, 9.370084574412836619e-04, 9.353831535963127780e-04, 9.337564183729043501e-04, 9.321282544916112195e-04, 9.304986646751713282e-04, 9.288676516483764228e-04, 9.272352181383310696e-04, 9.256013668741172032e-04, 9.239661005872292160e-04, 9.223294220110928986e-04, 9.206913338813187088e-04, 9.190518389357282261e-04, 9.174109399142837875e-04, 9.157686395589733448e-04, 9.141249406140180894e-04, 9.124798458257280366e-04, 9.108333579425731494e-04, 9.091854797150221174e-04, 9.075362138957672204e-04, 9.058855632396028978e-04, 9.042335305033551672e-04, 9.025801184459119816e-04, 9.009253298284647903e-04, 8.992691674140776761e-04, 8.976116339678954148e-04, 8.959527322573654102e-04, 8.942924650517438409e-04, 8.926308351225466882e-04, 8.909678452431996467e-04, 8.893034981893045135e-04, 8.876377967385156971e-04, 8.859707436704264850e-04, 8.843023417667861003e-04, 8.826325938113877044e-04, 8.809615025899463154e-04, 8.792890708903205272e-04, 8.776153015023981270e-04, 8.759401972179752058e-04, 8.742637608309815648e-04, 8.725859951373533211e-04, 8.709069029349299088e-04, 8.692264870236980244e-04, 8.675447502055016026e-04, 8.658616952842799076e-04, 8.641773250659726645e-04, 8.624916423583876791e-04, 8.608046499714271105e-04, 8.591163507169651730e-04, 8.574267474087441613e-04, 8.557358428625727511e-04, 8.540436398962309144e-04, 8.523501413293366712e-04, 8.506553499835806022e-04, 8.489592686825537865e-04, 8.472619002518367052e-04, 8.455632475188687045e-04, 8.438633133129865927e-04, 8.421621004656780181e-04, 8.404596118101360794e-04, 8.387558501814644562e-04, 8.370508184169176682e-04, 8.353445193554260868e-04, 8.336369558378653585e-04, 8.319281307070895823e-04, 8.302180468078081436e-04, 8.285067069866620428e-04, 8.267941140920627820e-04, 8.250802709744177715e-04, 8.233651804860119341e-04, 8.216488454808906121e-04, 8.199312688150760817e-04, 8.182124533464557722e-04, 8.164924019346625700e-04, 8.147711174412937190e-04, 8.130486027297978468e-04, 8.113248606653513653e-04, 8.095998941151225830e-04, 8.078737059479605383e-04, 8.061462990346598707e-04, 8.044176762478410158e-04, 8.026878404618257397e-04, 8.009567945528683983e-04, 7.992245413990333152e-04, 7.974910838800755184e-04, 7.957564248776678815e-04, 7.940205672752739460e-04, 7.922835139580389598e-04, 7.905452678130085601e-04, 7.888058317290086441e-04, 7.870652085965270826e-04, 7.853234013079385834e-04, 7.835804127573901996e-04, 7.818362458406661296e-04, 7.800909034554717779e-04, 7.783443885010696804e-04, 7.765967038787405068e-04, 7.748478524912734856e-04, 7.730978372432416833e-04, 7.713466610410231461e-04, 7.695943267927244638e-04, 7.678408374080663863e-04, 7.660861957986016399e-04, 7.643304048775553328e-04, 7.625734675599058366e-04, 7.608153867622169516e-04, 7.590561654028703600e-04, 7.572958064019431109e-04, 7.555343126811219683e-04, 7.537716871637451530e-04, 7.520079327750582143e-04, 7.502430524417559544e-04, 7.484770490922383005e-04, 7.467099256566499862e-04, 7.449416850667600967e-04, 7.431723302560293981e-04, 7.414018641594548624e-04, 7.396302897137995184e-04, 7.378576098574648415e-04, 7.360838275303726837e-04, 7.343089456741962087e-04, 7.325329672322321729e-04, 7.307558951492845907e-04, 7.289777323718924168e-04, 7.271984818482059472e-04, 7.254181465278664726e-04, 7.236367293622359125e-04, 7.218542333042732165e-04, 7.200706613084113068e-04, 7.182860163308312732e-04, 7.165003013291397146e-04, 7.147135192626357780e-04, 7.129256730921981842e-04, 7.111367657801505706e-04, 7.093468002905019667e-04, 7.075557795888171237e-04, 7.057637066420983365e-04, 7.039705844190154030e-04, 7.021764158897818081e-04, 7.003812040260292814e-04, 6.985849518010461053e-04, 6.967876621896074369e-04, 6.949893381680561895e-04, 6.931899827141685920e-04, 6.913895988072021100e-04, 6.895881894281594496e-04, 6.877857575593103153e-04, 6.859823061844628946e-04, 6.841778382889998535e-04, 6.823723568597935517e-04, 6.805658648850841782e-04, 6.787583653547086269e-04, 6.769498612599396002e-04, 6.751403555935631302e-04, 6.733298513497031545e-04, 6.715183515240713162e-04, 6.697058591138288367e-04, 6.678923771175148500e-04, 6.660779085350644006e-04, 6.642624563680989006e-04, 6.624460236193944378e-04, 6.606286132933159982e-04, 6.588102283956566788e-04, 6.569908719335072582e-04, 6.551705469155360293e-04, 6.533492563516618036e-04, 6.515270032533276726e-04, 6.497037906333792516e-04, 6.478796215059358767e-04, 6.460544988866310807e-04, 6.442284257924791278e-04, 6.424014052417617148e-04, 6.405734402542499067e-04, 6.387445338510893203e-04, 6.369146890546690436e-04, 6.350839088888603776e-04, 6.332521963788942127e-04, 6.314195545512257205e-04, 6.295859864338193904e-04, 6.277514950557794250e-04, 6.259160834478296083e-04, 6.240797546417798779e-04, 6.222425116708057242e-04, 6.204043575694898234e-04, 6.185652953737259775e-04, 6.167253281205987677e-04, 6.148844588486194768e-04, 6.130426905976022736e-04, 6.112000264085322649e-04, 6.093564693238110678e-04, 6.075120223870848551e-04, 6.056666886433175389e-04, 6.038204711386296582e-04, 6.019733729205356022e-04, 6.001253970378135063e-04, 5.982765465404249125e-04, 5.964268244795367787e-04, 5.945762339078229956e-04, 5.927247778789102505e-04, 5.908724594478729662e-04, 5.890192816708559979e-04, 5.871652476053589118e-04, 5.853103603101068560e-04, 5.834546228449207818e-04, 5.815980382709612807e-04, 5.797406096506009738e-04, 5.778823400472922391e-04, 5.760232325258112657e-04, 5.741632901521314183e-04, 5.723025159932893392e-04, 5.704409131176375663e-04, 5.685784845946997932e-04, 5.667152334950569187e-04, 5.648511628906225431e-04, 5.629862758543121778e-04, 5.611205754603232950e-04, 5.592540647840090178e-04, 5.573867469017484500e-04, 5.555186248911879107e-04, 5.536497018311162515e-04, 5.517799808013307402e-04, 5.499094648828833920e-04, 5.480381571579486964e-04, 5.461660607096999100e-04, 5.442931786225446537e-04, 5.424195139820043492e-04, 5.405450698745753327e-04, 5.386698493879821248e-04, 5.367938556110010305e-04, 5.349170916335338651e-04, 5.330395605464885835e-04, 5.311612654418112643e-04, 5.292822094127646411e-04, 5.274023955534370674e-04, 5.255218269590181211e-04, 5.236405067258435983e-04, 5.217584379512951167e-04, 5.198756237336849733e-04, 5.179920671724903315e-04, 5.161077713681853875e-04, 5.142227394223180224e-04, 5.123369744373400172e-04, 5.104504795168527320e-04, 5.085632577654712562e-04, 5.066753122887409245e-04, 5.047866461931768906e-04, 5.028972625865424416e-04, 5.010071645773060299e-04, 4.991163552751424993e-04, 4.972248377905397372e-04, 4.953326152350979138e-04, 4.934396907213916801e-04, 4.915460673628406062e-04, 4.896517482739600651e-04, 4.877567365702263581e-04, 4.858610353679431956e-04, 4.839646477844947495e-04, 4.820675769382104536e-04, 4.801698259482343025e-04, 4.782713979347719417e-04, 4.763722960189616475e-04, 4.744725233227377716e-04, 4.725720829690867753e-04, 4.706709780819052537e-04, 4.687692117858762819e-04, 4.668667872067577048e-04, 4.649637074709938298e-04, 4.630599757062202858e-04, 4.611555950407124349e-04, 4.592505686036663440e-04, 4.573448995252480070e-04, 4.554385909364948998e-04, 4.535316459691866343e-04, 4.516240677560949220e-04, 4.497158594308497829e-04, 4.478070241278088990e-04, 4.458975649823056805e-04, 4.439874851304735160e-04, 4.420767877093264913e-04, 4.401654758566299905e-04, 4.382535527109324082e-04, 4.363410214118596192e-04, 4.344278850996048072e-04, 4.325141469152082429e-04, 4.305998100006103559e-04, 4.286848774985086742e-04, 4.267693525524399525e-04, 4.248532383066056157e-04, 4.229365379061235646e-04, 4.210192544968895069e-04, 4.191013912254528697e-04, 4.171829512392580892e-04, 4.152639376865190600e-04, 4.133443537160810073e-04, 4.114242024776732691e-04, 4.095034871217787041e-04, 4.075822107994942628e-04, 4.056603766627849082e-04, 4.037379878643565468e-04, 4.018150475575119388e-04, 3.998915588964505334e-04, 3.979675250359231511e-04, 3.960429491315210857e-04, 3.941178343395458378e-04, 3.921921838168752157e-04, 3.902660007212151953e-04, 3.883392882109642326e-04, 3.864120494450830508e-04, 3.844842875833423264e-04, 3.825560057861929100e-04, 3.806272072146308976e-04, 3.786978950304476475e-04, 3.767680723960982123e-04, 3.748377424745661930e-04, 3.729069084296611904e-04, 3.709755734256225284e-04, 3.690437406276356061e-04, 3.671114132012643716e-04, 3.651785943127029655e-04, 3.632452871290317554e-04, 3.613114948176946958e-04, 3.593772205467946654e-04, 3.574424674851323894e-04, 3.555072388020698304e-04, 3.535715376676162197e-04, 3.516353672522428211e-04, 3.496987307271452001e-04, 3.477616312640995121e-04, 3.458240720353377112e-04, 3.438860562137912246e-04, 3.419475869729649681e-04, 3.400086674868404188e-04, 3.380693009299137242e-04, 3.361294904774974907e-04, 3.341892393051488662e-04, 3.322485505891858374e-04, 3.303074275062907916e-04, 3.283658732338099731e-04, 3.264238909496182828e-04, 3.244814838319827780e-04, 3.225386550598187060e-04, 3.205954078125548465e-04, 3.186517452699965769e-04, 3.167076706125808764e-04, 3.147631870212411805e-04, 3.128182976772758673e-04, 3.108730057625978946e-04, 3.089273144596004135e-04, 3.069812269510256882e-04, 3.050347464202579390e-04, 3.030878760509749339e-04, 3.011406190274455480e-04, 2.991929785343930455e-04, 2.972449577568180294e-04, 2.952965598804697446e-04, 2.933477880912772505e-04, 2.913986455756464389e-04, 2.894491355205017756e-04, 2.874992611131895891e-04, 2.855490255413460155e-04, 2.835984319931514059e-04, 2.816474836571940970e-04, 2.796961837223362404e-04, 2.777445353779690786e-04, 2.757925418138312866e-04, 2.738402062200947867e-04, 2.718875317872262412e-04, 2.699345217060279819e-04, 2.679811791679318281e-04, 2.660275073644787240e-04, 2.640735094876140213e-04, 2.621191887297264563e-04, 2.601645482835127326e-04, 2.582095913420597586e-04, 2.562543210986630428e-04, 2.542987407470870655e-04, 2.523428534814240072e-04, 2.503866624959635899e-04, 2.484301709854434739e-04, 2.464733821449189904e-04, 2.445162991696657267e-04, 2.425589252552215111e-04, 2.406012635976844608e-04, 2.386433173931416882e-04, 2.366850898381872516e-04, 2.347265841295245238e-04, 2.327678034642653780e-04, 2.308087510397960178e-04, 2.288494300536392018e-04, 2.268898437037114167e-04, 2.249299951881866203e-04, 2.229698877053609869e-04, 2.210095244539070445e-04, 2.190489086327407516e-04, 2.170880434408846437e-04, 2.151269320777214015e-04, 2.131655777428611979e-04, 2.112039836360055231e-04, 2.092421529572007790e-04, 2.072800889067044888e-04, 2.053177946848497445e-04, 2.033552734923433085e-04, 2.013925285298697170e-04, 1.994295629986078482e-04, 1.974663800996604693e-04, 1.955029830343524462e-04, 1.935393750042702630e-04, 1.915755592111699187e-04, 1.896115388568397756e-04, 1.876473171433581662e-04, 1.856828972729122765e-04, 1.837182824478818472e-04, 1.817534758706585178e-04, 1.797884807439022680e-04, 1.778233002704054043e-04, 1.758579376530009723e-04, 1.738923960945993209e-04, 1.719266787984911915e-04, 1.699607889678154558e-04, 1.679947298058179152e-04, 1.660285045161082832e-04, 1.640621163020851252e-04, 1.620955683674578200e-04, 1.601288639158458663e-04, 1.581620061510799111e-04, 1.561949982770663599e-04, 1.542278434976497375e-04, 1.522605450168711073e-04, 1.502931060388310557e-04, 1.483255297675524042e-04, 1.463578194072398769e-04, 1.443899781621408337e-04, 1.424220092364099626e-04, 1.404539158343680782e-04, 1.384857011603628837e-04, 1.365173684186342308e-04, 1.345489208136153663e-04, 1.325803615495768249e-04, 1.306116938309271605e-04, 1.286429208620785318e-04, 1.266740458473076809e-04, 1.247050719910151927e-04, 1.227360024975880724e-04, 1.207668405712628788e-04, 1.187975894163844823e-04, 1.168282522372684394e-04, 1.148588322380644371e-04, 1.128893326230142653e-04, 1.109197565962718801e-04, 1.089501073619844341e-04, 1.069803881241567514e-04, 1.050106020866895049e-04, 1.030407524536808549e-04, 1.010708424288957728e-04, 9.910087521602240065e-05, 9.713085401893217861e-05, 9.516078204114610548e-05, 9.319066248613801728e-05, 9.122049855737294089e-05, 8.925029345816968499e-05, 8.728005039178449978e-05, 8.530977256122948668e-05, 8.333946316953066557e-05, 8.136912541959212422e-05, 7.939876251405738954e-05, 7.742837765556943278e-05, 7.545797404663250150e-05, 7.348755488947626908e-05, 7.151712338631280416e-05, 6.954668273920074724e-05, 6.757623614990780668e-05, 6.560578682021346803e-05, 6.363533795155134276e-05, 6.166489274531297530e-05, 5.969445440270962762e-05, 5.772402612463599494e-05, 5.575361111192848987e-05, 5.378321256522780618e-05, 5.181283368484232969e-05, 4.984247767100665946e-05, 4.787214772374438852e-05, 4.590184704273098608e-05, 4.393157882755256959e-05, 4.196134627756860401e-05, 3.999115259177524493e-05, 3.802100096906326350e-05, 3.605089460808157923e-05, 3.408083670709998646e-05, 3.211083046431143672e-05, 3.014087907743182579e-05, 2.817098574422143738e-05, 2.620115366190917754e-05, 2.423138602749472825e-05, 2.226168603778715861e-05, 2.029205688931200530e-05, 1.832250177817432426e-05, 1.635302390031706629e-05, 1.438362645134011522e-05, 1.241431262658308874e-05, 1.044508562094437830e-05, 8.475948629139506044e-06, 6.506904845564221363e-06, 4.537957464201476393e-06, 2.569109678660213323e-06, 6.003646824775062486e-07, -1.368274331413500359e-06, -3.336804170381396974e-06, -5.305221642057767636e-06, -7.273523554474121192e-06, -9.241706715979155552e-06, -1.120976793541964306e-05, -1.317770402188214429e-05, -1.514551178482982850e-05, -1.711318803423943452e-05, -1.908072958034293427e-05, -2.104813323376448437e-05, -2.301539580565726436e-05, -2.498251410744512484e-05, -2.694948495095961707e-05, -2.891630514857676851e-05, -3.088297151295885969e-05, -3.284948085719126748e-05, -3.481582999491927448e-05, -3.678201574004606110e-05, -3.874803490708881855e-05, -4.071388431087713056e-05, -4.267956076668894590e-05, -4.464506109038814330e-05, -4.661038209816638968e-05, -4.857552060667924142e-05, -5.054047343318349242e-05, -5.250523739527910015e-05, -5.446980931104572054e-05, -5.643418599917915482e-05, -5.839836427873423781e-05, -6.036234096930457146e-05, -6.232611289094026105e-05, -6.428967686428465342e-05, -6.625302971053515660e-05, -6.821616825114257699e-05, -7.017908930834134166e-05, -7.214178970484784622e-05, -7.410426626382208757e-05, -7.606651580896063428e-05, -7.802853516463272108e-05, -7.999032115562283208e-05, -8.195187060731065132e-05, -8.391318034558924611e-05, -8.587424719704473287e-05, -8.783506798869929416e-05, -8.979563954814694788e-05, -9.175595870364688347e-05, -9.371602228408414613e-05, -9.567582711866920431e-05, -9.763537003751112677e-05, -9.959464787114217349e-05, -1.015536574506974615e-04, -1.035123956080509104e-04, -1.054708591755154060e-04, -1.074290449861963316e-04, -1.093869498736920712e-04, -1.113445706722282600e-04, -1.133019042167969287e-04, -1.152589473428961323e-04, -1.172156968866694464e-04, -1.191721496850384562e-04, -1.211283025754494196e-04, -1.230841523960069493e-04, -1.250396959856112859e-04, -1.269949301837005836e-04, -1.289498518303878853e-04, -1.309044577665962412e-04, -1.328587448337596049e-04, -1.348127098742192174e-04, -1.367663497307053313e-04, -1.387196612469110792e-04, -1.406726412671903067e-04, -1.426252866365197605e-04, -1.445775942005910559e-04, -1.465295608059474764e-04, -1.484811832997268003e-04, -1.504324585297973959e-04, -1.523833833448927973e-04, -1.543339545943582731e-04, -1.562841691283273335e-04, -1.582340237976399822e-04, -1.601835154540246181e-04, -1.621326409498383418e-04, -1.640813971382048392e-04, -1.660297808731057794e-04, -1.679777890093433828e-04, -1.699254184022384439e-04, -1.718726659082034402e-04, -1.738195283842251782e-04, -1.757660026882601478e-04, -1.777120856789363395e-04, -1.796577742156868723e-04, -1.816030651588897203e-04, -1.835479553696066639e-04, -1.854924417097223116e-04, -1.874365210420778365e-04, -1.893801902302157006e-04, -1.913234461385168608e-04, -1.932662856323323912e-04, -1.952087055777317038e-04, -1.971507028416353093e-04, -1.990922742919512913e-04, -2.010334167972762016e-04, -2.029741272272478055e-04, -2.049144024522453001e-04, -2.068542393435251375e-04, -2.087936347733561706e-04, -2.107325856147653539e-04, -2.126710887416706931e-04, -2.146091410290180718e-04, -2.165467393525269521e-04, -2.184838805888217794e-04, -2.204205616155717094e-04, -2.223567793112323778e-04, -2.242925305551819954e-04, -2.262278122278567371e-04, -2.281626212104944371e-04, -2.300969543853147831e-04, -2.320308086354371609e-04, -2.339641808450126828e-04, -2.358970678991906050e-04, -2.378294666838184641e-04, -2.397613740859640661e-04, -2.416927869936210988e-04, -2.436237022956687988e-04, -2.455541168819644891e-04, -2.474840276434773145e-04, -2.494134314720353250e-04, -2.513423252605006555e-04, -2.532707059026915444e-04, -2.551985702935572701e-04, -2.571259153289271577e-04, -2.590527379056406293e-04, -2.609790349216422885e-04, -2.629048032759431059e-04, -2.648300398683212336e-04, -2.667547415998903441e-04, -2.686789053725861516e-04, -2.706025280895590023e-04, -2.725256066548768568e-04, -2.744481379736613577e-04, -2.763701189522202646e-04, -2.782915464977928836e-04, -2.802124175186900381e-04, -2.821327289244196729e-04, -2.840524776254396569e-04, -2.859716605332911395e-04, -2.878902745607299558e-04, -2.898083166214765016e-04, -2.917257836303469758e-04, -2.936426725033896646e-04, -2.955589801576297745e-04, -2.974747035112058793e-04, -2.993898394835026807e-04, -3.013043849948518764e-04, -3.032183369669311473e-04, -3.051316923222465046e-04, -3.070444479846979181e-04, -3.089566008792867988e-04, -3.108681479320721426e-04, -3.127790860702674039e-04, -3.146894122223686482e-04, -3.165991233179065952e-04, -3.185082162875774820e-04, -3.204166880633760404e-04, -3.223245355783469434e-04, -3.242317557667576274e-04, -3.261383455640201210e-04, -3.280443019068203362e-04, -3.299496217330835364e-04, -3.318543019816816561e-04, -3.337583395929455865e-04, -3.356617315083752057e-04, -3.375644746706020277e-04, -3.394665660235174093e-04, -3.413680025121989333e-04, -3.432687810830785673e-04, -3.451688986836982313e-04, -3.470683522628395220e-04, -3.489671387706550637e-04, -3.508652551584199013e-04, -3.527626983786655073e-04, -3.546594653853091814e-04, -3.565555531334050634e-04, -3.584509585792751592e-04, -3.603456786806470886e-04, -3.622397103963942021e-04, -3.641330506866804302e-04, -3.660256965130797083e-04, -3.679176448382935963e-04, -3.698088926264919891e-04, -3.716994368430170752e-04, -3.735892744545252588e-04, -3.754784024291062052e-04, -3.773668177360474602e-04, -3.792545173459532792e-04, -3.811414982308866032e-04, -3.830277573641156265e-04, -3.849132917202410819e-04, -3.867980982753401148e-04, -3.886821740067046105e-04, -3.905655158929817071e-04, -3.924481209142969065e-04, -3.943299860519763021e-04, -3.962111082889158576e-04, -3.980914846090903721e-04, -3.999711119981059896e-04, -4.018499874429449776e-04, -4.037281079317265524e-04, -4.056054704542115747e-04, -4.074820720015119298e-04, -4.093579095660610369e-04, -4.112329801417333283e-04, -4.131072807237733428e-04, -4.149808083089673544e-04, -4.168535598953934640e-04, -4.187255324825550650e-04, -4.205967230715084533e-04, -4.224671286646198036e-04, -4.243367462656935933e-04, -4.262055728800600435e-04, -4.280736055145409661e-04, -4.299408411771596860e-04, -4.318072768776879669e-04, -4.336729096271545419e-04, -4.355377364382185135e-04, -4.374017543248900626e-04, -4.392649603026531260e-04, -4.411273513885980487e-04, -4.429889246011792106e-04, -4.448496769603395469e-04, -4.467096054876432544e-04, -4.485687072060320088e-04, -4.504269791399506239e-04, -4.522844183154785106e-04, -4.541410217600882256e-04, -4.559967865027698833e-04, -4.578517095741619107e-04, -4.597057880062683415e-04, -4.615590188327900944e-04, -4.634113990888437851e-04, -4.652629258110894451e-04, -4.671135960378997119e-04, -4.689634068089120530e-04, -4.708123551655684280e-04, -4.726604381508326368e-04, -4.745076528091505294e-04, -4.763539961865423801e-04, -4.781994653307271369e-04, -4.800440572908829754e-04, -4.818877691177690008e-04, -4.837305978638647302e-04, -4.855725405831176362e-04, -4.874135943311174324e-04, -4.892537561650161680e-04, -4.910930231436592529e-04, -4.929313923275458311e-04, -4.947688607785463450e-04, -4.966054255604039798e-04, -4.984410837384487588e-04, -5.002758323795548261e-04, -5.021096685522856212e-04, -5.039425893267965176e-04, -5.057745917750175110e-04, -5.076056729704032022e-04, -5.094358299880708159e-04, -5.112650599049131748e-04, -5.130933597993726433e-04, -5.149207267515562699e-04, -5.167471578433324979e-04, -5.185726501582860627e-04, -5.203972007814426041e-04, -5.222208067998014439e-04, -5.240434653018532238e-04, -5.258651733779460408e-04, -5.276859281200126615e-04, -5.295057266216872914e-04, -5.313245659784463035e-04, -5.331424432873516084e-04, -5.349593556471932262e-04, -5.367753001586058389e-04, -5.385902739238309159e-04, -5.404042740468499627e-04, -5.422172976335009643e-04, -5.440293417912470163e-04, -5.458404036292976470e-04, -5.476504802587416326e-04, -5.494595687922991479e-04, -5.512676663444576177e-04, -5.530747700315884847e-04, -5.548808769716777854e-04, -5.566859842846866475e-04, -5.584900890920748914e-04, -5.602931885173328313e-04, -5.620952796856965635e-04, -5.638963597241203199e-04, -5.656964257613529036e-04, -5.674954749280739733e-04, -5.692935043566433760e-04, -5.710905111812786305e-04, -5.728864925379774072e-04, -5.746814455646730027e-04, -5.764753674010096932e-04, -5.782682551884617793e-04, -5.800601060704184799e-04, -5.818509171921506466e-04, -5.836406857005349428e-04, -5.854294087445319770e-04, -5.872170834749649085e-04, -5.890037070442665033e-04, -5.907892766070184159e-04, -5.925737893194687198e-04, -5.943572423398943557e-04, -5.961396328283306238e-04, -5.979209579466959745e-04, -5.997012148589133318e-04, -6.014804007306702666e-04, -6.032585127295590766e-04, -6.050355480251824953e-04, -6.068115037889288289e-04, -6.085863771940992414e-04, -6.103601654160186688e-04, -6.121328656318170266e-04, -6.139044750205407746e-04, -6.156749907632854063e-04, -6.174444100429162668e-04, -6.192127300443908862e-04, -6.209799479544886877e-04, -6.227460609619322020e-04, -6.245110662575134846e-04, -6.262749610338571096e-04, -6.280377424855408414e-04, -6.297994078092298588e-04, -6.315599542034323758e-04, -6.333193788686294207e-04, -6.350776790073926889e-04, -6.368348518241567519e-04, -6.385908945253812542e-04, -6.403458043194708987e-04, -6.420995784169044674e-04, -6.438522140301967652e-04, -6.456037083736268110e-04, -6.473540586637194401e-04, -6.491032621190058038e-04, -6.508513159597973134e-04, -6.525982174086612797e-04, -6.543439636901485614e-04, -6.560885520307590873e-04, -6.578319796590663231e-04, -6.595742438056396420e-04, -6.613153417032068470e-04, -6.630552705864256212e-04, -6.647940276920020304e-04, -6.665316102588166166e-04, -6.682680155276866322e-04, -6.700032407414988544e-04, -6.717372831453154039e-04, -6.734701399861637346e-04, -6.752018085131427771e-04, -6.769322859775452365e-04, -6.786615696325995527e-04, -6.803896567337756451e-04, -6.821165445385184156e-04, -6.838422303063760102e-04, -6.855667112991127923e-04, -6.872899847804807933e-04, -6.890120480163468893e-04, -6.907328982748064256e-04, -6.924525328259624728e-04, -6.941709489420377173e-04, -6.958881438975013118e-04, -6.976041149688385918e-04, -6.993188594346716382e-04, -7.010323745758782147e-04, -7.027446576753312336e-04, -7.044557060182028750e-04, -7.061655168917077390e-04, -7.078740875852152772e-04, -7.095814153904144838e-04, -7.112874976008926823e-04, -7.129923315126338252e-04, -7.146959144237653326e-04, -7.163982436345150496e-04, -7.180993164472912601e-04, -7.197991301668135505e-04, -7.214976820998709236e-04, -7.231949695554946208e-04, -7.248909898448734459e-04, -7.265857402815159615e-04, -7.282792181810326731e-04, -7.299714208612380524e-04, -7.316623456422496332e-04, -7.333519898464414995e-04, -7.350403507981862448e-04, -7.367274258243118558e-04, -7.384132122538506100e-04, -7.400977074179931068e-04, -7.417809086502109980e-04, -7.434628132861886840e-04, -7.451434186639746679e-04, -7.468227221237586436e-04, -7.485007210079924929e-04, -7.501774126615028257e-04, -7.518527944312777172e-04, -7.535268636665723094e-04, -7.551996177190328438e-04, -7.568710539424765684e-04, -7.585411696930033018e-04, -7.602099623291131781e-04, -7.618774292114944679e-04, -7.635435677031286381e-04, -7.652083751694106978e-04, -7.668718489778921345e-04, -7.685339864985881765e-04, -7.701947851037158500e-04, -7.718542421678040253e-04, -7.735123550678228710e-04, -7.751691211829596405e-04, -7.768245378947241653e-04, -7.784786025870810188e-04, -7.801313126462160880e-04, -7.817826654606664606e-04, -7.834326584214201718e-04, -7.850812889217115070e-04, -7.867285543571621645e-04, -7.883744521257227090e-04, -7.900189796277769802e-04, -7.916621342661168308e-04, -7.933039134456833274e-04, -7.949443145740120323e-04, -7.965833350609879742e-04, -7.982209723188055323e-04, -7.998572237620432462e-04, -8.014920868077860059e-04, -8.031255588754041995e-04, -8.047576373867070193e-04, -8.063883197658702545e-04, -8.080176034395879702e-04, -8.096454858368600047e-04, -8.112719643890972448e-04, -8.128970365302136750e-04, -8.145206996965743355e-04, -8.161429513267627611e-04, -8.177637888620487060e-04, -8.193832097459879645e-04, -8.210012114245846763e-04, -8.226177913463916152e-04, -8.242329469622703634e-04, -8.258466757256788422e-04, -8.274589750924194517e-04, -8.290698425207613685e-04, -8.306792754715449549e-04, -8.322872714079710982e-04, -8.338938277957124497e-04, -8.354989421030322534e-04, -8.371026118005593739e-04, -8.387048343614144979e-04, -8.403056072613109646e-04, -8.419049279783474664e-04, -8.435027939931211312e-04, -8.450992027888394121e-04, -8.466941518510668176e-04, -8.482876386680600388e-04, -8.498796607303312324e-04, -8.514702155311342857e-04, -8.530593005661996206e-04, -8.546469133337119672e-04, -8.562330513343891858e-04, -8.578177120715826639e-04, -8.594008930510785814e-04, -8.609825917811987422e-04, -8.625628057729186433e-04, -8.641415325396550797e-04, -8.657187695974090423e-04, -8.672945144647084721e-04, -8.688687646627042118e-04, -8.704415177151519000e-04, -8.720127711481634718e-04, -8.735825224906254441e-04, -8.751507692740117823e-04, -8.767175090321537240e-04, -8.782827393017171537e-04, -8.798464576217796549e-04, -8.814086615341460134e-04, -8.829693485831157642e-04, -8.845285163155821792e-04, -8.860861622811482766e-04, -8.876422840319186545e-04, -8.891968791226053086e-04, -8.907499451106426665e-04, -8.923014795559734572e-04, -8.938514800211685160e-04, -8.953999440715202426e-04, -8.969468692748504800e-04, -8.984922532016151406e-04, -9.000360934250080727e-04, -9.015783875207271977e-04, -9.031191330672518492e-04, -9.046583276456054415e-04, -9.061959688394649734e-04, -9.077320542352650037e-04, -9.092665814219962062e-04, -9.107995479913132478e-04, -9.123309515376410404e-04, -9.138607896579721036e-04, -9.153890599519734668e-04, -9.169157600220925958e-04, -9.184408874733558398e-04, -9.199644399134782611e-04, -9.214864149529640317e-04, -9.230068102049080250e-04, -9.245256232851370871e-04, -9.260428518121460685e-04, -9.275584934072007154e-04, -9.290725456943120823e-04, -9.305850062999919360e-04, -9.320958728536768954e-04, -9.336051429874893653e-04, -9.351128143362041423e-04, -9.366188845373278875e-04, -9.381233512311899824e-04, -9.396262120607611415e-04, -9.411274646717782046e-04, -9.426271067126887337e-04, -9.441251358347849121e-04, -9.456215496920077372e-04, -9.471163459410509959e-04, -9.486095222414289187e-04, -9.501010762554536280e-04, -9.515910056479944456e-04, -9.530793080869255597e-04, -9.545659812427218340e-04, -9.560510227887697573e-04, -9.575344304011317378e-04, -9.590162017586507286e-04, -9.604963345430550699e-04, -9.619748264387644170e-04, -9.634516751329902460e-04, -9.649268783158324557e-04, -9.664004336801049200e-04, -9.678723389214115985e-04, -9.693425917382699191e-04, -9.708111898319065139e-04, -9.722781309063604355e-04, -9.737434126685907097e-04, -9.752070328282745658e-04, -9.766689890979185669e-04, -9.781292791929520683e-04, -9.795879008315060404e-04, -9.810448517347104651e-04, -9.825001296263097695e-04, -9.839537322330811110e-04, -9.854056572846153685e-04, -9.868559025132883026e-04, -9.883044656543338476e-04, -9.897513444459317151e-04, -9.911965366290328375e-04, -9.926400399474424180e-04, -9.940818521479420113e-04, -9.955219709800711657e-04, -9.969603941962922218e-04, -9.983971195519009741e-04, -9.998321448051435481e-04, -1.001265467717183657e-03, -1.002697086051876872e-03, -1.004126997576167005e-03, -1.005555200059859511e-03, -1.006981691275593083e-03, -1.008406468998938096e-03, -1.009829531008343481e-03, -1.011250875085264013e-03, -1.012670499013960381e-03, -1.014088400581622355e-03, -1.015504577578446197e-03, -1.016919027797459673e-03, -1.018331749034614205e-03, -1.019742739088850799e-03, -1.021151995762082905e-03, -1.022559516858965924e-03, -1.023965300187314187e-03, -1.025369343557766804e-03, -1.026771644783898256e-03, -1.028172201682335703e-03, -1.029571012072533470e-03, -1.030968073777020029e-03, -1.032363384621205011e-03, -1.033756942433442958e-03, -1.035148745045164293e-03, -1.036538790290669971e-03, -1.037927076007229494e-03, -1.039313600035195184e-03, -1.040698360217794018e-03, -1.042081354401243852e-03, -1.043462580434837122e-03, -1.044842036170771709e-03, -1.046219719464230305e-03, -1.047595628173487309e-03, -1.048969760159699583e-03, -1.050342113287175329e-03, -1.051712685423016741e-03, -1.053081474437518551e-03, -1.054448478203962687e-03, -1.055813694598583576e-03, -1.057177121500632762e-03, -1.058538756792484076e-03, -1.059898598359438043e-03, -1.061256644089863263e-03, -1.062612891875121821e-03, -1.063967339609715648e-03, -1.065319985191083996e-03, -1.066670826519715764e-03, -1.068019861499232325e-03, -1.069367088036215357e-03, -1.070712504040304425e-03, -1.072056107424245331e-03, -1.073397896103882310e-03, -1.074737867997934034e-03, -1.076076021028400621e-03, -1.077412353120197610e-03, -1.078746862201433515e-03, -1.080079546203202524e-03, -1.081410403059676010e-03, -1.082739430708195985e-03, -1.084066627089102933e-03, -1.085391990145820372e-03, -1.086715517824957643e-03, -1.088037208076124288e-03, -1.089357058852028935e-03, -1.090675068108570584e-03, -1.091991233804662752e-03, -1.093305553902326711e-03, -1.094618026366778012e-03, -1.095928649166230890e-03, -1.097237420272134190e-03, -1.098544337658967970e-03, -1.099849399304331753e-03, -1.101152603189072465e-03, -1.102453947296954621e-03, -1.103753429615055839e-03, -1.105051048133556075e-03, -1.106346800845717671e-03, -1.107640685747942168e-03, -1.108932700839860078e-03, -1.110222844124170204e-03, -1.111511113606712935e-03, -1.112797507296571725e-03, -1.114082023205903525e-03, -1.115364659350048500e-03, -1.116645413747484718e-03, -1.117924284419908373e-03, -1.119201269392220343e-03, -1.120476366692312606e-03, -1.121749574351432526e-03, -1.123020890403968186e-03, -1.124290312887439060e-03, -1.125557839842572776e-03, -1.126823469313252861e-03, -1.128087199346644283e-03, -1.129349027993014568e-03, -1.130608953305831804e-03, -1.131866973341842924e-03, -1.133123086160913676e-03, -1.134377289826116230e-03, -1.135629582403780780e-03, -1.136879961963489479e-03, -1.138128426577856124e-03, -1.139374974322912137e-03, -1.140619603277770672e-03, -1.141862311524877724e-03, -1.143103097149821088e-03, -1.144341958241414277e-03, -1.145578892891792582e-03, -1.146813899196235482e-03, -1.148046975253259232e-03, -1.149278119164710539e-03, -1.150507329035592224e-03, -1.151734602974149521e-03, -1.152959939091961804e-03, -1.154183335503778871e-03, -1.155404790327604642e-03, -1.156624301684784552e-03, -1.157841867699837927e-03, -1.159057486500545591e-03, -1.160271156218049176e-03, -1.161482874986633851e-03, -1.162692640944004794e-03, -1.163900452230941978e-03, -1.165106306991674657e-03, -1.166310203373681223e-03, -1.167512139527668823e-03, -1.168712113607628866e-03, -1.169910123770927885e-03, -1.171106168178139267e-03, -1.172300244993154271e-03, -1.173492352383145171e-03, -1.174682488518653941e-03, -1.175870651573452611e-03, -1.177056839724613087e-03, -1.178241051152571339e-03, -1.179423284041103978e-03, -1.180603536577137010e-03, -1.181781806951075859e-03, -1.182958093356618022e-03, -1.184132393990733985e-03, -1.185304707053733576e-03, -1.186475030749246885e-03, -1.187643363284293435e-03, -1.188809702869159882e-03, -1.189974047717468975e-03, -1.191136396046253276e-03, -1.192296746075815301e-03, -1.193455096029795177e-03, -1.194611444135262792e-03, -1.195765788622560810e-03, -1.196918127725376006e-03, -1.198068459680835763e-03, -1.199216782729346526e-03, -1.200363095114673163e-03, -1.201507395084015946e-03, -1.202649680887849003e-03, -1.203789950780105285e-03, -1.204928203018020873e-03, -1.206064435862203715e-03, -1.207198647576706706e-03, -1.208330836428896278e-03, -1.209461000689514851e-03, -1.210589138632763668e-03, -1.211715248536154475e-03, -1.212839328680594088e-03, -1.213961377350451613e-03, -1.215081392833417722e-03, -1.216199373420599620e-03, -1.217315317406489177e-03, -1.218429223089022339e-03, -1.219541088769567853e-03, -1.220650912752751409e-03, -1.221758693346760303e-03, -1.222864428863190776e-03, -1.223968117616910109e-03, -1.225069757926346538e-03, -1.226169348113326403e-03, -1.227266886503053551e-03, -1.228362371424173522e-03, -1.229455801208739719e-03, -1.230547174192309686e-03, -1.231636488713798959e-03, -1.232723743115561946e-03, -1.233808935743457630e-03, -1.234892064946719031e-03, -1.235973129078020210e-03, -1.237052126493549346e-03, -1.238129055552872337e-03, -1.239203914619006319e-03, -1.240276702058498151e-03, -1.241347416241244447e-03, -1.242416055540698436e-03, -1.243482618333706683e-03, -1.244547103000573493e-03, -1.245609507925140051e-03, -1.246669831494649988e-03, -1.247728072099803806e-03, -1.248784228134857321e-03, -1.249838297997469443e-03, -1.250890280088765927e-03, -1.251940172813439554e-03, -1.252987974579579042e-03, -1.254033683798761421e-03, -1.255077298886129880e-03, -1.256118818260210969e-03, -1.257158240343125366e-03, -1.258195563560411158e-03, -1.259230786341105149e-03, -1.260263907117841744e-03, -1.261294924326582332e-03, -1.262323836406941194e-03, -1.263350641802011166e-03, -1.264375338958343255e-03, -1.265397926326000634e-03, -1.266418402358638652e-03, -1.267436765513346112e-03, -1.268453014250753253e-03, -1.269467147034992506e-03, -1.270479162333787177e-03, -1.271489058618307686e-03, -1.272496834363264374e-03, -1.273502488046926581e-03, -1.274506018151130241e-03, -1.275507423161106142e-03, -1.276506701565751842e-03, -1.277503851857480751e-03, -1.278498872532208468e-03, -1.279491762089406343e-03, -1.280482519032074369e-03, -1.281471141866828136e-03, -1.282457629103752250e-03, -1.283441979256501591e-03, -1.284424190842340351e-03, -1.285404262382020598e-03, -1.286382192399856440e-03, -1.287357979423791243e-03, -1.288331621985259936e-03, -1.289303118619257969e-03, -1.290272467864428700e-03, -1.291239668262903146e-03, -1.292204718360388891e-03, -1.293167616706237524e-03, -1.294128361853279403e-03, -1.295086952358015563e-03, -1.296043386780466140e-03, -1.296997663684219164e-03, -1.297949781636530521e-03, -1.298899739208159154e-03, -1.299847534973463340e-03, -1.300793167510456419e-03, -1.301736635400673869e-03, -1.302677937229253539e-03, -1.303617071584988124e-03, -1.304554037060202867e-03, -1.305488832250858988e-03, -1.306421455756479099e-03, -1.307351906180253230e-03, -1.308280182128991999e-03, -1.309206282212981324e-03, -1.310130205046255644e-03, -1.311051949246434855e-03, -1.311971513434723223e-03, -1.312888896235922401e-03, -1.313804096278536372e-03, -1.314717112194624003e-03, -1.315627942619876454e-03, -1.316536586193600049e-03, -1.317443041558791954e-03, -1.318347307362013757e-03, -1.319249382253456738e-03, -1.320149264886993912e-03, -1.321046953920145765e-03, -1.321942448013954706e-03, -1.322835745833239856e-03, -1.323726846046387141e-03, -1.324615747325418686e-03, -1.325502448346069142e-03, -1.326386947787638014e-03, -1.327269244333152296e-03, -1.328149336669232463e-03, -1.329027223486151446e-03, -1.329902903477897091e-03, -1.330776375342059177e-03, -1.331647637779878428e-03, -1.332516689496318499e-03, -1.333383529199954525e-03, -1.334248155603014966e-03, -1.335110567421463577e-03, -1.335970763374864749e-03, -1.336828742186460918e-03, -1.337684502583220709e-03, -1.338538043295716849e-03, -1.339389363058280562e-03, -1.340238460608799689e-03, -1.341085334688951573e-03, -1.341929984044072524e-03, -1.342772407423152830e-03, -1.343612603578862126e-03, -1.344450571267612497e-03, -1.345286309249455478e-03, -1.346119816288122604e-03, -1.346951091151105421e-03, -1.347780132609527771e-03, -1.348606939438228838e-03, -1.349431510415728458e-03, -1.350253844324278288e-03, -1.351073939949856825e-03, -1.351891796082035175e-03, -1.352707411514195200e-03, -1.353520785043424999e-03, -1.354331915470415688e-03, -1.355140801599695379e-03, -1.355947442239409731e-03, -1.356751836201496942e-03, -1.357553982301550706e-03, -1.358353879358884832e-03, -1.359151526196587237e-03, -1.359946921641406970e-03, -1.360740064523821439e-03, -1.361530953678088008e-03, -1.362319587942119109e-03, -1.363105966157580895e-03, -1.363890087169900836e-03, -1.364671949828192687e-03, -1.365451552985304413e-03, -1.366228895497864377e-03, -1.367003976226170312e-03, -1.367776794034330709e-03, -1.368547347790132753e-03, -1.369315636365108250e-03, -1.370081658634590433e-03, -1.370845413477591451e-03, -1.371606899776878045e-03, -1.372366116419012749e-03, -1.373123062294260210e-03, -1.373877736296620373e-03, -1.374630137323914775e-03, -1.375380264277662520e-03, -1.376128116063130794e-03, -1.376873691589398626e-03, -1.377616989769251711e-03, -1.378358009519253758e-03, -1.379096749759714177e-03, -1.379833209414737302e-03, -1.380567387412210247e-03, -1.381299282683676709e-03, -1.382028894164567248e-03, -1.382756220794044899e-03, -1.383481261515016447e-03, -1.384204015274173192e-03, -1.384924481022011770e-03, -1.385642657712763889e-03, -1.386358544304447729e-03, -1.387072139758856659e-03, -1.387783443041595019e-03, -1.388492453122014154e-03, -1.389199168973239513e-03, -1.389903589572218795e-03, -1.390605713899688550e-03, -1.391305540940095684e-03, -1.392003069681768982e-03, -1.392698299116759512e-03, -1.393391228240968560e-03, -1.394081856054043113e-03, -1.394770181559417928e-03, -1.395456203764382100e-03, -1.396139921679967607e-03, -1.396821334321005255e-03, -1.397500440706173682e-03, -1.398177239857904168e-03, -1.398851730802431375e-03, -1.399523912569840831e-03, -1.400193784193974611e-03, -1.400861344712485759e-03, -1.401526593166876238e-03, -1.402189528602411058e-03, -1.402850150068176392e-03, -1.403508456617099959e-03, -1.404164447305871009e-03, -1.404818121195074978e-03, -1.405469477348988798e-03, -1.406118514835825051e-03, -1.406765232727566527e-03, -1.407409630100013489e-03, -1.408051706032772618e-03, -1.408691459609322932e-03, -1.409328889916922761e-03, -1.409963996046650079e-03, -1.410596777093461700e-03, -1.411227232156090283e-03, -1.411855360337116970e-03, -1.412481160742937994e-03, -1.413104632483801323e-03, -1.413725774673817073e-03, -1.414344586430828481e-03, -1.414961066876608588e-03, -1.415575215136751159e-03, -1.416187030340650306e-03, -1.416796511621565323e-03, -1.417403658116574931e-03, -1.418008468966642762e-03, -1.418610943316525206e-03, -1.419211080314837330e-03, -1.419808879114062847e-03, -1.420404338870501215e-03, -1.420997458744294954e-03, -1.421588237899463689e-03, -1.422176675503888758e-03, -1.422762770729217368e-03, -1.423346522751048858e-03, -1.423927930748777274e-03, -1.424506993905648618e-03, -1.425083711408807897e-03, -1.425658082449203718e-03, -1.426230106221685646e-03, -1.426799781924932217e-03, -1.427367108761480857e-03, -1.427932085937753904e-03, -1.428494712664016113e-03, -1.429054988154381802e-03, -1.429612911626873409e-03, -1.430168482303334964e-03, -1.430721699409478066e-03, -1.431272562174915487e-03, -1.431821069833101763e-03, -1.432367221621348588e-03, -1.432911016780873169e-03, -1.433452454556723632e-03, -1.433991534197875083e-03, -1.434528254957093867e-03, -1.435062616091086103e-03, -1.435594616860430680e-03, -1.436124256529548032e-03, -1.436651534366740904e-03, -1.437176449644228396e-03, -1.437699001638063131e-03, -1.438219189628201508e-03, -1.438737012898455569e-03, -1.439252470736563467e-03, -1.439765562434110538e-03, -1.440276287286562911e-03, -1.440784644593305023e-03, -1.441290633657571311e-03, -1.441794253786492621e-03, -1.442295504291090345e-03, -1.442794384486310692e-03, -1.443290893690893492e-03, -1.443785031227566920e-03, -1.444276796422887905e-03, -1.444766188607350980e-03, -1.445253207115306752e-03, -1.445737851284999197e-03, -1.446220120458605127e-03, -1.446700013982157211e-03, -1.447177531205585824e-03, -1.447652671482756994e-03, -1.448125434171391741e-03, -1.448595818633115076e-03, -1.449063824233482248e-03, -1.449529450341918886e-03, -1.449992696331748763e-03, -1.450453561580230871e-03, -1.450912045468486780e-03, -1.451368147381576533e-03, -1.451821866708437716e-03, -1.452273202841912123e-03, -1.452722155178791299e-03, -1.453168723119693806e-03, -1.453612906069212890e-03, -1.454054703435840373e-03, -1.454494114631954722e-03, -1.454931139073841655e-03, -1.455365776181728830e-03, -1.455798025379724482e-03, -1.456227886095852768e-03, -1.456655357762070896e-03, -1.457080439814228577e-03, -1.457503131692094262e-03, -1.457923432839343001e-03, -1.458341342703581159e-03, -1.458756860736345118e-03, -1.459169986393026898e-03, -1.459580719132997110e-03, -1.459989058419527107e-03, -1.460395003719798523e-03, -1.460798554504907617e-03, -1.461199710249875671e-03, -1.461598470433663095e-03, -1.461994834539126920e-03, -1.462388802053045302e-03, -1.462780372466148749e-03, -1.463169545273051812e-03, -1.463556319972311856e-03, -1.463940696066413005e-03, -1.464322673061778726e-03, -1.464702250468707424e-03, -1.465079427801473273e-03, -1.465454204578248588e-03, -1.465826580321160418e-03, -1.466196554556236341e-03, -1.466564126813428527e-03, -1.466929296626657327e-03, -1.467292063533728440e-03, -1.467652427076390591e-03, -1.468010386800348973e-03, -1.468365942255203888e-03, -1.468719092994495191e-03, -1.469069838575719211e-03, -1.469418178560277137e-03, -1.469764112513496273e-03, -1.470107640004682508e-03, -1.470448760607027082e-03, -1.470787473897674667e-03, -1.471123779457711661e-03, -1.471457676872144288e-03, -1.471789165729946516e-03, -1.472118245623973759e-03, -1.472444916151058715e-03, -1.472769176911976462e-03, -1.473091027511416046e-03, -1.473410467558004984e-03, -1.473727496664331603e-03, -1.474042114446901886e-03, -1.474354320526170261e-03, -1.474664114526521392e-03, -1.474971496076299231e-03, -1.475276464807768421e-03, -1.475579020357138367e-03, -1.475879162364567357e-03, -1.476176890474165809e-03, -1.476472204333944670e-03, -1.476765103595896510e-03, -1.477055587915949986e-03, -1.477343656953962036e-03, -1.477629310373744986e-03, -1.477912547843046164e-03, -1.478193369033566767e-03, -1.478471773620948200e-03, -1.478747761284762751e-03, -1.479021331708558692e-03, -1.479292484579798487e-03, -1.479561219589901715e-03, -1.479827536434243562e-03, -1.480091434812132916e-03, -1.480352914426817787e-03, -1.480611974985516317e-03, -1.480868616199379484e-03, -1.481122837783490449e-03, -1.481374639456913998e-03, -1.481624020942629971e-03, -1.481870981967591590e-03, -1.482115522262684049e-03, -1.482357641562736432e-03, -1.482597339606545571e-03, -1.482834616136846553e-03, -1.483069470900307951e-03, -1.483301903647580395e-03, -1.483531914133243233e-03, -1.483759502115816666e-03, -1.483984667357790164e-03, -1.484207409625590800e-03, -1.484427728689606671e-03, -1.484645624324153505e-03, -1.484861096307522801e-03, -1.485074144421955370e-03, -1.485284768453612719e-03, -1.485492968192634287e-03, -1.485698743433120760e-03, -1.485902093973080719e-03, -1.486103019614511524e-03, -1.486301520163356383e-03, -1.486497595429492422e-03, -1.486691245226763863e-03, -1.486882469372956435e-03, -1.487071267689818628e-03, -1.487257640003041741e-03, -1.487441586142262484e-03, -1.487623105941089218e-03, -1.487802199237068992e-03, -1.487978865871695134e-03, -1.488153105690425033e-03, -1.488324918542668646e-03, -1.488494304281771366e-03, -1.488661262765044596e-03, -1.488825793853746022e-03, -1.488987897413095217e-03, -1.489147573312253701e-03, -1.489304821424328835e-03, -1.489459641626398115e-03, -1.489612033799476640e-03, -1.489761997828535980e-03, -1.489909533602500058e-03, -1.490054641014244927e-03, -1.490197319960596825e-03, -1.490337570342332605e-03, -1.490475392064193397e-03, -1.490610785034844274e-03, -1.490743749166930634e-03, -1.490874284377030276e-03, -1.491002390585692864e-03, -1.491128067717393960e-03, -1.491251315700575786e-03, -1.491372134467633566e-03, -1.491490523954897528e-03, -1.491606484102669982e-03, -1.491720014855192579e-03, -1.491831116160658886e-03, -1.491939787971209401e-03, -1.492046030242944127e-03, -1.492149842935903276e-03, -1.492251226014085913e-03, -1.492350179445429579e-03, -1.492446703201842813e-03, -1.492540797259158097e-03, -1.492632461597169806e-03, -1.492721696199629435e-03, -1.492808501054224569e-03, -1.492892876152592538e-03, -1.492974821490327579e-03, -1.493054337066968039e-03, -1.493131422886001796e-03, -1.493206078954859971e-03, -1.493278305284921051e-03, -1.493348101891524759e-03, -1.493415468793940840e-03, -1.493480406015396372e-03, -1.493542913583063196e-03, -1.493602991528061386e-03, -1.493660639885447967e-03, -1.493715858694235135e-03, -1.493768647997384619e-03, -1.493819007841790114e-03, -1.493866938278304605e-03, -1.493912439361710226e-03, -1.493955511150755555e-03, -1.493996153708112900e-03, -1.494034367100402364e-03, -1.494070151398202255e-03, -1.494103506676017429e-03, -1.494134433012298153e-03, -1.494162930489448130e-03, -1.494188999193804546e-03, -1.494212639215646747e-03, -1.494233850649195590e-03, -1.494252633592619292e-03, -1.494268988148015438e-03, -1.494282914421435479e-03, -1.494294412522860450e-03, -1.494303482566215497e-03, -1.494310124669358166e-03, -1.494314338954103342e-03, -1.494316125546183783e-03, -1.494315484575280692e-03, -1.494312416175008111e-03, -1.494306920482920721e-03, -1.494298997640511675e-03, -1.494288647793202843e-03, -1.494275871090359987e-03, -1.494260667685276935e-03, -1.494243037735190757e-03, -1.494222981401267889e-03, -1.494200498848608904e-03, -1.494175590246242654e-03, -1.494148255767145357e-03, -1.494118495588209368e-03, -1.494086309890273103e-03, -1.494051698858095889e-03, -1.494014662680373138e-03, -1.493975201549725944e-03, -1.493933315662714523e-03, -1.493889005219818048e-03, -1.493842270425450479e-03, -1.493793111487954923e-03, -1.493741528619595832e-03, -1.493687522036575045e-03, -1.493631091959012709e-03, -1.493572238610953997e-03, -1.493510962220378222e-03, -1.493447263019179096e-03, -1.493381141243181002e-03, -1.493312597132132047e-03, -1.493241630929702983e-03, -1.493168242883481135e-03, -1.493092433244988179e-03, -1.493014202269653257e-03, -1.492933550216832489e-03, -1.492850477349805076e-03, -1.492764983935763535e-03, -1.492677070245826279e-03, -1.492586736555022008e-03, -1.492493983142295340e-03, -1.492398810290519393e-03, -1.492301218286473880e-03, -1.492201207420852703e-03, -1.492098777988269806e-03, -1.491993930287252666e-03, -1.491886664620241431e-03, -1.491776981293583279e-03, -1.491664880617546733e-03, -1.491550362906300838e-03, -1.491433428477929478e-03, -1.491314077654435060e-03, -1.491192310761717699e-03, -1.491068128129583240e-03, -1.490941530091763204e-03, -1.490812516985870343e-03, -1.490681089153446338e-03, -1.490547246939920821e-03, -1.490410990694637176e-03, -1.490272320770843649e-03, -1.490131237525683591e-03, -1.489987741320210205e-03, -1.489841832519371795e-03, -1.489693511492020447e-03, -1.489542778610905083e-03, -1.489389634252679491e-03, -1.489234078797890392e-03, -1.489076112630976795e-03, -1.488915736140287343e-03, -1.488752949718052769e-03, -1.488587753760407806e-03, -1.488420148667373615e-03, -1.488250134842871233e-03, -1.488077712694707913e-03, -1.487902882634583408e-03, -1.487725645078090408e-03, -1.487546000444712156e-03, -1.487363949157813553e-03, -1.487179491644651571e-03, -1.486992628336365491e-03, -1.486803359667990135e-03, -1.486611686078435262e-03, -1.486417608010507469e-03, -1.486221125910870081e-03, -1.486022240230096920e-03, -1.485820951422624605e-03, -1.485617259946785725e-03, -1.485411166264782824e-03, -1.485202670842683190e-03, -1.484991774150457022e-03, -1.484778476661940353e-03, -1.484562778854834611e-03, -1.484344681210725920e-03, -1.484124184215080550e-03, -1.483901288357214335e-03, -1.483675994130331495e-03, -1.483448302031511404e-03, -1.483218212561691679e-03, -1.482985726225673814e-03, -1.482750843532136846e-03, -1.482513564993634316e-03, -1.482273891126560227e-03, -1.482031822451180484e-03, -1.481787359491646338e-03, -1.481540502775941914e-03, -1.481291252835932994e-03, -1.481039610207323222e-03, -1.480785575429698336e-03, -1.480529149046495374e-03, -1.480270331604993357e-03, -1.480009123656342990e-03, -1.479745525755544978e-03, -1.479479538461450465e-03, -1.479211162336760378e-03, -1.478940397948039307e-03, -1.478667245865686666e-03, -1.478391706663955340e-03, -1.478113780920953420e-03, -1.477833469218625120e-03, -1.477550772142762056e-03, -1.477265690283013433e-03, -1.476978224232842465e-03, -1.476688374589589688e-03, -1.476396141954392080e-03, -1.476101526932286278e-03, -1.475804530132093870e-03, -1.475505152166486878e-03, -1.475203393651988194e-03, -1.474899255208949678e-03, -1.474592737461536546e-03, -1.474283841037777676e-03, -1.473972566569516172e-03, -1.473658914692417381e-03, -1.473342886045986245e-03, -1.473024481273554724e-03, -1.472703701022286564e-03, -1.472380545943150626e-03, -1.472055016690944958e-03, -1.471727113924316092e-03, -1.471396838305697894e-03, -1.471064190501351465e-03, -1.470729171181366004e-03, -1.470391781019647539e-03, -1.470052020693915452e-03, -1.469709890885687736e-03, -1.469365392280319160e-03, -1.469018525566969822e-03, -1.468669291438593665e-03, -1.468317690591969260e-03, -1.467963723727693740e-03, -1.467607391550151573e-03, -1.467248694767514993e-03, -1.466887634091810578e-03, -1.466524210238827081e-03, -1.466158423928166183e-03, -1.465790275883240316e-03, -1.465419766831231683e-03, -1.465046897503151022e-03, -1.464671668633776022e-03, -1.464294080961699900e-03, -1.463914135229311009e-03, -1.463531832182755552e-03, -1.463147172572009345e-03, -1.462760157150820367e-03, -1.462370786676709397e-03, -1.461979061911007106e-03, -1.461584983618821089e-03, -1.461188552569024808e-03, -1.460789769534289687e-03, -1.460388635291074919e-03, -1.459985150619587998e-03, -1.459579316303839802e-03, -1.459171133131596017e-03, -1.458760601894430048e-03, -1.458347723387653193e-03, -1.457932498410347824e-03, -1.457514927765390369e-03, -1.457095012259411850e-03, -1.456672752702799179e-03, -1.456248149909717716e-03, -1.455821204698091531e-03, -1.455391917889620104e-03, -1.454960290309727580e-03, -1.454526322787631299e-03, -1.454090016156304056e-03, -1.453651371252446351e-03, -1.453210388916514580e-03, -1.452767069992770034e-03, -1.452321415329164414e-03, -1.451873425777408348e-03, -1.451423102193006090e-03, -1.450970445435145577e-03, -1.450515456366806202e-03, -1.450058135854677714e-03, -1.449598484769202287e-03, -1.449136503984590129e-03, -1.448672194378730366e-03, -1.448205556833295771e-03, -1.447736592233692674e-03, -1.447265301469024970e-03, -1.446791685432152665e-03, -1.446315745019683416e-03, -1.445837481131905531e-03, -1.445356894672870582e-03, -1.444873986550354811e-03, -1.444388757675826819e-03, -1.443901208964516519e-03, -1.443411341335336428e-03, -1.442919155710940425e-03, -1.442424653017703590e-03, -1.441927834185685988e-03, -1.441428700148681243e-03, -1.440927251844208732e-03, -1.440423490213459806e-03, -1.439917416201355691e-03, -1.439409030756537509e-03, -1.438898334831315321e-03, -1.438385329381727763e-03, -1.437870015367515584e-03, -1.437352393752088908e-03, -1.436832465502589900e-03, -1.436310231589835954e-03, -1.435785692988358724e-03, -1.435258850676354031e-03, -1.434729705635697048e-03, -1.434198258852022309e-03, -1.433664511314574740e-03, -1.433128464016301387e-03, -1.432590117953857914e-03, -1.432049474127561122e-03, -1.431506533541423206e-03, -1.430961297203100146e-03, -1.430413766123953510e-03, -1.429863941319019878e-03, -1.429311823806978530e-03, -1.428757414610205660e-03, -1.428200714754750307e-03, -1.427641725270296404e-03, -1.427080447190194655e-03, -1.426516881551517183e-03, -1.425951029394915276e-03, -1.425382891764762940e-03, -1.424812469709040887e-03, -1.424239764279419587e-03, -1.423664776531219150e-03, -1.423087507523377671e-03, -1.422507958318528420e-03, -1.421926129982932410e-03, -1.421342023586474488e-03, -1.420755640202711698e-03, -1.420166980908846386e-03, -1.419576046785679148e-03, -1.418982838917694483e-03, -1.418387358393000293e-03, -1.417789606303302731e-03, -1.417189583743987949e-03, -1.416587291814058345e-03, -1.415982731616112402e-03, -1.415375904256426431e-03, -1.414766810844828590e-03, -1.414155452494872140e-03, -1.413541830323634214e-03, -1.412925945451839853e-03, -1.412307799003843572e-03, -1.411687392107621774e-03, -1.411064725894719835e-03, -1.410439801500321501e-03, -1.409812620063226763e-03, -1.409183182725835381e-03, -1.408551490634118259e-03, -1.407917544937686621e-03, -1.407281346789748854e-03, -1.406642897347087960e-03, -1.406002197770064594e-03, -1.405359249222714853e-03, -1.404714052872579411e-03, -1.404066609890811503e-03, -1.403416921452174107e-03, -1.402764988734995274e-03, -1.402110812921201306e-03, -1.401454395196267966e-03, -1.400795736749272085e-03, -1.400134838772883542e-03, -1.399471702463298255e-03, -1.398806329020321022e-03, -1.398138719647334721e-03, -1.397468875551235697e-03, -1.396796797942545651e-03, -1.396122488035333575e-03, -1.395445947047192986e-03, -1.394767176199317822e-03, -1.394086176716462103e-03, -1.393402949826886162e-03, -1.392717496762463760e-03, -1.392029818758561523e-03, -1.391339917054130234e-03, -1.390647792891676858e-03, -1.389953447517198190e-03, -1.389256882180289927e-03, -1.388558098134065784e-03, -1.387857096635153158e-03, -1.387153878943744954e-03, -1.386448446323572045e-03, -1.385740800041847113e-03, -1.385030941369362438e-03, -1.384318871580410976e-03, -1.383604591952830153e-03, -1.382888103767951783e-03, -1.382169408310597938e-03, -1.381448506869213449e-03, -1.380725400735658380e-03, -1.380000091205319922e-03, -1.379272579577125405e-03, -1.378542867153513887e-03, -1.377810955240376094e-03, -1.377076845147160887e-03, -1.376340538186788956e-03, -1.375602035675706821e-03, -1.374861338933804859e-03, -1.374118449284514017e-03, -1.373373368054756375e-03, -1.372626096574892235e-03, -1.371876636178823118e-03, -1.371124988203929317e-03, -1.370371153991038890e-03, -1.369615134884448254e-03, -1.368856932232024107e-03, -1.368096547384994172e-03, -1.367333981698139970e-03, -1.366569236529653055e-03, -1.365802313241227389e-03, -1.365033213198035703e-03, -1.364261937768658809e-03, -1.363488488325183398e-03, -1.362712866243164737e-03, -1.361935072901544926e-03, -1.361155109682792323e-03, -1.360372977972803101e-03, -1.359588679160883681e-03, -1.358802214639838555e-03, -1.358013585805905015e-03, -1.357222794058720629e-03, -1.356429840801416913e-03, -1.355634727440508747e-03, -1.354837455385977203e-03, -1.354038026051251984e-03, -1.353236440853105389e-03, -1.352432701211873272e-03, -1.351626808551197002e-03, -1.350818764298161809e-03, -1.350008569883301987e-03, -1.349196226740575957e-03, -1.348381736307291889e-03, -1.347565100024232174e-03, -1.346746319335560393e-03, -1.345925395688869894e-03, -1.345102330535094017e-03, -1.344277125328638151e-03, -1.343449781527289097e-03, -1.342620300592198149e-03, -1.341788683987893676e-03, -1.340954933182399514e-03, -1.340119049647020295e-03, -1.339281034856463961e-03, -1.338440890288855644e-03, -1.337598617425687355e-03, -1.336754217751839457e-03, -1.335907692755514305e-03, -1.335059043928349225e-03, -1.334208272765338666e-03, -1.333355380764793654e-03, -1.332500369428450855e-03, -1.331643240261400594e-03, -1.330783994772041746e-03, -1.329922634472179314e-03, -1.329059160876980197e-03, -1.328193575504900978e-03, -1.327325879877822154e-03, -1.326456075520895690e-03, -1.325584163962676646e-03, -1.324710146735048801e-03, -1.323834025373195377e-03, -1.322955801415674065e-03, -1.322075476404384938e-03, -1.321193051884500405e-03, -1.320308529404572336e-03, -1.319421910516481097e-03, -1.318533196775366172e-03, -1.317642389739753870e-03, -1.316749490971473634e-03, -1.315854502035622691e-03, -1.314957424500657560e-03, -1.314058259938330302e-03, -1.313157009923708466e-03, -1.312253676035140398e-03, -1.311348259854236160e-03, -1.310440762966029720e-03, -1.309531186958729160e-03, -1.308619533423859135e-03, -1.307705803956260657e-03, -1.306790000154079171e-03, -1.305872123618661770e-03, -1.304952175954715056e-03, -1.304030158770191732e-03, -1.303106073676343945e-03, -1.302179922287634599e-03, -1.301251706221856182e-03, -1.300321427100067017e-03, -1.299389086546553313e-03, -1.298454686188836972e-03, -1.297518227657820005e-03, -1.296579712587518250e-03, -1.295639142615279300e-03, -1.294696519381708993e-03, -1.293751844530582722e-03, -1.292805119709020427e-03, -1.291856346567285801e-03, -1.290905526758950655e-03, -1.289952661940817289e-03, -1.288997753772860378e-03, -1.288040803918347752e-03, -1.287081814043774912e-03, -1.286120785818793038e-03, -1.285157720916342344e-03, -1.284192621012575320e-03, -1.283225487786803388e-03, -1.282256322921610523e-03, -1.281285128102785387e-03, -1.280311905019269935e-03, -1.279336655363282147e-03, -1.278359380830144075e-03, -1.277380083118514727e-03, -1.276398763930135065e-03, -1.275415424969938809e-03, -1.274430067946107732e-03, -1.273442694570005307e-03, -1.272453306556107968e-03, -1.271461905622142370e-03, -1.270468493489008846e-03, -1.269473071880717653e-03, -1.268475642524518211e-03, -1.267476207150801523e-03, -1.266474767493146365e-03, -1.265471325288250112e-03, -1.264465882275953891e-03, -1.263458440199372685e-03, -1.262449000804657679e-03, -1.261437565841098821e-03, -1.260424137061267940e-03, -1.259408716220729264e-03, -1.258391305078297240e-03, -1.257371905395838563e-03, -1.256350518938412902e-03, -1.255327147474220428e-03, -1.254301792774518975e-03, -1.253274456613756756e-03, -1.252245140769513371e-03, -1.251213847022414598e-03, -1.250180577156266831e-03, -1.249145332957999179e-03, -1.248108116217572401e-03, -1.247068928728132858e-03, -1.246027772285927945e-03, -1.244984648690231717e-03, -1.243939559743515539e-03, -1.242892507251252502e-03, -1.241843493022073757e-03, -1.240792518867697616e-03, -1.239739586602869046e-03, -1.238684698045471565e-03, -1.237627855016477365e-03, -1.236569059339860579e-03, -1.235508312842742342e-03, -1.234445617355309482e-03, -1.233380974710747294e-03, -1.232314386745375287e-03, -1.231245855298572370e-03, -1.230175382212710935e-03, -1.229102969333298019e-03, -1.228028618508790774e-03, -1.226952331590846481e-03, -1.225874110434026134e-03, -1.224793956895943404e-03, -1.223711872837381521e-03, -1.222627860122019617e-03, -1.221541920616589505e-03, -1.220454056190913190e-03, -1.219364268717816786e-03, -1.218272560073096903e-03, -1.217178932135626031e-03, -1.216083386787276651e-03, -1.214985925912959175e-03, -1.213886551400520037e-03, -1.212785265140874612e-03, -1.211682069027957128e-03, -1.210576964958643906e-03, -1.209469954832781977e-03, -1.208361040553364296e-03, -1.207250224026197973e-03, -1.206137507160203511e-03, -1.205022891867179539e-03, -1.203906380061982567e-03, -1.202787973662453264e-03, -1.201667674589322133e-03, -1.200545484766363897e-03, -1.199421406120327466e-03, -1.198295440580848760e-03, -1.197167590080594913e-03, -1.196037856555194016e-03, -1.194906241943152064e-03, -1.193772748186000413e-03, -1.192637377228218795e-03, -1.191500131017152707e-03, -1.190361011503168016e-03, -1.189220020639568127e-03, -1.188077160382503775e-03, -1.186932432691175775e-03, -1.185785839527568088e-03, -1.184637382856777200e-03, -1.183487064646665185e-03, -1.182334886868032084e-03, -1.181180851494649086e-03, -1.180024960503196730e-03, -1.178867215873180118e-03, -1.177707619587095664e-03, -1.176546173630327232e-03, -1.175382879991090403e-03, -1.174217740660562148e-03, -1.173050757632787371e-03, -1.171881932904731164e-03, -1.170711268476173862e-03, -1.169538766349766980e-03, -1.168364428531183923e-03, -1.167188257028815759e-03, -1.166010253853955745e-03, -1.164830421020805404e-03, -1.163648760546414458e-03, -1.162465274450707716e-03, -1.161279964756400289e-03, -1.160092833489120541e-03, -1.158903882677365200e-03, -1.157713114352380964e-03, -1.156520530548348817e-03, -1.155326133302278860e-03, -1.154129924653971278e-03, -1.152931906646025668e-03, -1.151732081324030555e-03, -1.150530450736219701e-03, -1.149327016933742070e-03, -1.148121781970573140e-03, -1.146914747903424268e-03, -1.145705916791920059e-03, -1.144495290698386517e-03, -1.143282871688031891e-03, -1.142068661828870560e-03, -1.140852663191630660e-03, -1.139634877849908913e-03, -1.138415307880098629e-03, -1.137193955361296251e-03, -1.135970822375460734e-03, -1.134745911007335696e-03, -1.133519223344347940e-03, -1.132290761476791334e-03, -1.131060527497719037e-03, -1.129828523502867397e-03, -1.128594751590850011e-03, -1.127359213862896663e-03, -1.126121912423184426e-03, -1.124882849378475115e-03, -1.123642026838312172e-03, -1.122399446915026307e-03, -1.121155111723692128e-03, -1.119909023382047696e-03, -1.118661184010635683e-03, -1.117411595732700378e-03, -1.116160260674245799e-03, -1.114907180963912742e-03, -1.113652358733139029e-03, -1.112395796116081876e-03, -1.111137495249556097e-03, -1.109877458273053619e-03, -1.108615687328934080e-03, -1.107352184562093288e-03, -1.106086952120126929e-03, -1.104819992153484309e-03, -1.103551306815117507e-03, -1.102280898260792757e-03, -1.101008768648858429e-03, -1.099734920140418067e-03, -1.098459354899249075e-03, -1.097182075091722919e-03, -1.095903082886956481e-03, -1.094622380456729228e-03, -1.093339969975404930e-03, -1.092055853620078247e-03, -1.090770033570505988e-03, -1.089482512009000642e-03, -1.088193291120609710e-03, -1.086902373093023974e-03, -1.085609760116481226e-03, -1.084315454383974215e-03, -1.083019458091006269e-03, -1.081721773435794041e-03, -1.080422402619184022e-03, -1.079121347844549115e-03, -1.077818611317964918e-03, -1.076514195248123428e-03, -1.075208101846230474e-03, -1.073900333326191980e-03, -1.072590891904510102e-03, -1.071279779800196055e-03, -1.069966999234943589e-03, -1.068652552433033360e-03, -1.067336441621250312e-03, -1.066018669029044361e-03, -1.064699236888410694e-03, -1.063378147433957860e-03, -1.062055402902795445e-03, -1.060731005534581561e-03, -1.059404957571708243e-03, -1.058077261258947568e-03, -1.056747918843663507e-03, -1.055416932575823849e-03, -1.054084304707919540e-03, -1.052750037495012820e-03, -1.051414133194623381e-03, -1.050076594066883190e-03, -1.048737422374474912e-03, -1.047396620382503533e-03, -1.046054190358698460e-03, -1.044710134573311605e-03, -1.043364455299043659e-03, -1.042017154811092665e-03, -1.040668235387331607e-03, -1.039317699307937184e-03, -1.037965548855739788e-03, -1.036611786315943997e-03, -1.035256413976341295e-03, -1.033899434127210542e-03, -1.032540849061233191e-03, -1.031180661073655266e-03, -1.029818872462212338e-03, -1.028455485527015028e-03, -1.027090502570737881e-03, -1.025723925898529157e-03, -1.024355757817905230e-03, -1.022986000638926012e-03, -1.021614656674123831e-03, -1.020241728238373974e-03, -1.018867217649102206e-03, -1.017491127226176351e-03, -1.016113459291808708e-03, -1.014734216170774415e-03, -1.013353400190126737e-03, -1.011971013679561354e-03, -1.010587058971011091e-03, -1.009201538398867308e-03, -1.007814454299992262e-03, -1.006425809013664465e-03, -1.005035604881483269e-03, -1.003643844247534321e-03, -1.002250529458283308e-03, -1.000855662862616723e-03, -9.994592468117245547e-04, -9.980612836592826515e-04, -9.966617757613432157e-04, -9.952607254762855810e-04, -9.938581351648272718e-04, -9.924540071902540703e-04, -9.910483439180275359e-04, -9.896411477160120367e-04, -9.882324209544871094e-04, -9.868221660060650605e-04, -9.854103852457395379e-04, -9.839970810507630162e-04, -9.825822558008226546e-04, -9.811659118779500911e-04, -9.797480516664199609e-04, -9.783286775529335608e-04, -9.769077919265210536e-04, -9.754853971784438905e-04, -9.740614957023794500e-04, -9.726360898943243278e-04, -9.712091821524915540e-04, -9.697807748774961000e-04, -9.683508704722640229e-04, -9.669194713419187320e-04, -9.654865798940177792e-04, -9.640521985382806153e-04, -9.626163296868039130e-04, -9.611789757539811185e-04, -9.597401391563864428e-04, -9.582998223129617771e-04, -9.568580276449268132e-04, -9.554147575756775619e-04, -9.539700145309639454e-04, -9.525238009387979651e-04, -9.510761192293535216e-04, -9.496269718351566923e-04, -9.481763611909416406e-04, -9.467242897337237997e-04, -9.452707599026979575e-04, -9.438157741392561462e-04, -9.423593348872186855e-04, -9.409014445924439784e-04, -9.394421057030392800e-04, -9.379813206694033066e-04, -9.365190919441455713e-04, -9.350554219819926004e-04, -9.335903132399737655e-04, -9.321237681772946487e-04, -9.306557892553821458e-04, -9.291863789377719255e-04, -9.277155396902803846e-04, -9.262432739809167183e-04, -9.247695842797704893e-04, -9.232944730592077594e-04, -9.218179427937742707e-04, -9.203399959601158645e-04, -9.188606350370131766e-04, -9.173798625056033560e-04, -9.158976808489565757e-04, -9.144140925524578889e-04, -9.129291001035113500e-04, -9.114427059917622762e-04, -9.099549127090012955e-04, -9.084657227490567939e-04, -9.069751386079856264e-04, -9.054831627839756477e-04, -9.039897977772446639e-04, -9.024950460902180253e-04, -9.009989102274498047e-04, -8.995013926955013669e-04, -8.980024960031411868e-04, -8.965022226612401161e-04, -8.950005751826733708e-04, -8.934975560825399741e-04, -8.919931678778994033e-04, -8.904874130879963457e-04, -8.889802942341596499e-04, -8.874718138396601877e-04, -8.859619744300821931e-04, -8.844507785328728847e-04, -8.829382286775867361e-04, -8.814243273958964273e-04, -8.799090772215389586e-04, -8.783924806902022441e-04, -8.768745403397255802e-04, -8.753552587099543624e-04, -8.738346383428131610e-04, -8.723126817821603290e-04, -8.707893915739850022e-04, -8.692647702663034489e-04, -8.677388204090933678e-04, -8.662115445543140538e-04, -8.646829452561368996e-04, -8.631530250705552994e-04, -8.616217865555876121e-04, -8.600892322713319131e-04, -8.585553647798456478e-04, -8.570201866452151294e-04, -8.554837004334131826e-04, -8.539459087125038416e-04, -8.524068140525217861e-04, -8.508664190253897256e-04, -8.493247262050911128e-04, -8.477817381675875272e-04, -8.462374574906956180e-04, -8.446918867542973315e-04, -8.431450285402281291e-04, -8.415968854321688930e-04, -8.400474600158906301e-04, -8.384967548789608706e-04, -8.369447726109950940e-04, -8.353915158035358406e-04, -8.338369870499562179e-04, -8.322811889456583094e-04, -8.307241240879580319e-04, -8.291657950759909190e-04, -8.276062045109033741e-04, -8.260453549957514057e-04, -8.244832491353887381e-04, -8.229198895366750862e-04, -8.213552788083624233e-04, -8.197894195609856929e-04, -8.182223144070734696e-04, -8.166539659610031095e-04, -8.150843768390586466e-04, -8.135135496593298536e-04, -8.119414870417398893e-04, -8.103681916082836056e-04, -8.087936659826080706e-04, -8.072179127902506584e-04, -8.056409346586670224e-04, -8.040627342171604046e-04, -8.024833140967741916e-04, -8.009026769304877216e-04, -7.993208253530892154e-04, -7.977377620012181692e-04, -7.961534895132435985e-04, -7.945680105294559417e-04, -7.929813276919617845e-04, -7.913934436446082906e-04, -7.898043610330152944e-04, -7.882140825048181620e-04, -7.866226107091978982e-04, -7.850299482973136346e-04, -7.834360979219684787e-04, -7.818410622378544348e-04, -7.802448439014491883e-04, -7.786474455708976023e-04, -7.770488699062215107e-04, -7.754491195692111895e-04, -7.738481972233167199e-04, -7.722461055338467224e-04, -7.706428471678678513e-04, -7.690384247940909536e-04, -7.674328410830750071e-04, -7.658260987071222785e-04, -7.642182003401662167e-04, -7.626091486579735478e-04, -7.609989463380433363e-04, -7.593875960594911921e-04, -7.577751005032867110e-04, -7.561614623519467534e-04, -7.545466842899352985e-04, -7.529307690032164277e-04, -7.513137191794874280e-04, -7.496955375082121854e-04, -7.480762266805490853e-04, -7.464557893892343528e-04, -7.448342283287963991e-04, -7.432115461954381854e-04, -7.415877456869345496e-04, -7.399628295028318073e-04, -7.383368003443098416e-04, -7.367096609142437941e-04, -7.350814139170920667e-04, -7.334520620589270049e-04, -7.318216080476887091e-04, -7.301900545927386688e-04, -7.285574044050788798e-04, -7.269236601975617457e-04, -7.252888246844134629e-04, -7.236529005816704115e-04, -7.220158906068415349e-04, -7.203777974791556469e-04, -7.187386239194589735e-04, -7.170983726500927474e-04, -7.154570463951103734e-04, -7.138146478801618523e-04, -7.121711798323778798e-04, -7.105266449805950355e-04, -7.088810460552256781e-04, -7.072343857881554889e-04, -7.055866669129551077e-04, -7.039378921647644486e-04, -7.022880642801799427e-04, -7.006371859975048808e-04, -6.989852600564563532e-04, -6.973322891984085449e-04, -6.956782761662860500e-04, -6.940232237044455851e-04, -6.923671345588951068e-04, -6.907100114771721642e-04, -6.890518572082379722e-04, -6.873926745026859037e-04, -6.857324661126333945e-04, -6.840712347915966097e-04, -6.824089832947230049e-04, -6.807457143786566686e-04, -6.790814308014396592e-04, -6.774161353227584450e-04, -6.757498307036084511e-04, -6.740825197067268739e-04, -6.724142050961194259e-04, -6.707448896372669852e-04, -6.690745760973504591e-04, -6.674032672447966115e-04, -6.657309658495357777e-04, -6.640576746830334151e-04, -6.623833965182080287e-04, -6.607081341293244859e-04, -6.590318902922039177e-04, -6.573546677840692203e-04, -6.556764693836245267e-04, -6.539972978708918179e-04, -6.523171560274355690e-04, -6.506360466362437044e-04, -6.489539724816472581e-04, -6.472709363493589713e-04, -6.455869410267243936e-04, -6.439019893022313902e-04, -6.422160839659609528e-04, -6.405292278092345089e-04, -6.388414236248831290e-04, -6.371526742071223015e-04, -6.354629823514405850e-04, -6.337723508548127622e-04, -6.320807825155925043e-04, -6.303882801333846519e-04, -6.286948465092772340e-04, -6.270004844457110387e-04, -6.253051967463722771e-04, -6.236089862164122428e-04, -6.219118556623253391e-04, -6.202138078918356711e-04, -6.185148457141528095e-04, -6.168149719396687561e-04, -6.151141893802170675e-04, -6.134125008489517503e-04, -6.117099091601924370e-04, -6.100064171298408278e-04, -6.083020275748775123e-04, -6.065967433136252142e-04, -6.048905671657812087e-04, -6.031835019523404525e-04, -6.014755504954709007e-04, -5.997667156187409723e-04, -5.980570001469988784e-04, -5.963464069062556373e-04, -5.946349387239087446e-04, -5.929225984285830132e-04, -5.912093888502028887e-04, -5.894953128198755733e-04, -5.877803731699227921e-04, -5.860645727341413274e-04, -5.843479143473450516e-04, -5.826304008456216661e-04, -5.809120350663718414e-04, -5.791928198481867017e-04, -5.774727580309182984e-04, -5.757518524555273881e-04, -5.740301059643025498e-04, -5.723075214007431995e-04, -5.705841016094405447e-04, -5.688598494362997375e-04, -5.671347677284265757e-04, -5.654088593340393567e-04, -5.636821271025037891e-04, -5.619545738846024171e-04, -5.602262025320208167e-04, -5.584970158977783494e-04, -5.567670168360570751e-04, -5.550362082020901880e-04, -5.533045928524236339e-04, -5.515721736446026679e-04, -5.498389534374373755e-04, -5.481049350908834099e-04, -5.463701214659217546e-04, -5.446345154247822853e-04, -5.428981198308278694e-04, -5.411609375484296817e-04, -5.394229714431975986e-04, -5.376842243818571402e-04, -5.359446992321298831e-04, -5.342043988629601673e-04, -5.324633261443935568e-04, -5.307214839474619144e-04, -5.289788751444380807e-04, -5.272355026084973861e-04, -5.254913692141610897e-04, -5.237464778368020914e-04, -5.220008313529064413e-04, -5.202544326401054324e-04, -5.185072845770938516e-04, -5.167593900435112596e-04, -5.150107519201692395e-04, -5.132613730888899595e-04, -5.115112564325795729e-04, -5.097604048350686239e-04, -5.080088211813431993e-04, -5.062565083574168843e-04, -5.045034692502542179e-04, -5.027497067478006168e-04, -5.009952237392557026e-04, -4.992400231145935428e-04, -4.974841077647993316e-04, -4.957274805820945790e-04, -4.939701444594229822e-04, -4.922121022909199933e-04, -4.904533569715514548e-04, -4.886939113973856261e-04, -4.869337684654682832e-04, -4.851729310737037276e-04, -4.834114021210826856e-04, -4.816491845075587634e-04, -4.798862811339315703e-04, -4.781226949020708772e-04, -4.763584287147973545e-04, -4.745934854757628222e-04, -4.728278680896712098e-04, -4.710615794621670466e-04, -4.692946224997103987e-04, -4.675270001098404929e-04, -4.657587152008636831e-04, -4.639897706821207064e-04, -4.622201694638640055e-04, -4.604499144571367318e-04, -4.586790085740038970e-04, -4.569074547274244377e-04, -4.551352558311343925e-04, -4.533624147998794088e-04, -4.515889345492829585e-04, -4.498148179957348275e-04, -4.480400680566120762e-04, -4.462646876501641141e-04, -4.444886796953843844e-04, -4.427120471122873236e-04, -4.409347928215404371e-04, -4.391569197449403730e-04, -4.373784308048914746e-04, -4.355993289246379080e-04, -4.338196170284977417e-04, -4.320392980413815067e-04, -4.302583748890678544e-04, -4.284768504982307703e-04, -4.266947277963272509e-04, -4.249120097116606209e-04, -4.231286991732244622e-04, -4.213447991109345249e-04, -4.195603124555016589e-04, -4.177752421383087024e-04, -4.159895910916498198e-04, -4.142033622485987170e-04, -4.124165585429276511e-04, -4.106291829091449444e-04, -4.088412382827610468e-04, -4.070527275997777149e-04, -4.052636537971487972e-04, -4.034740198124260797e-04, -4.016838285840295775e-04, -3.998930830511237189e-04, -3.981017861534905480e-04, -3.963099408317705260e-04, -3.945175500273292286e-04, -3.927246166821417154e-04, -3.909311437390197252e-04, -3.891371341414940396e-04, -3.873425908336831317e-04, -3.855475167605315829e-04, -3.837519148676853988e-04, -3.819557881013679770e-04, -3.801591394086120180e-04, -3.783619717371364678e-04, -3.765642880352237866e-04, -3.747660912519926255e-04, -3.729673843370326131e-04, -3.711681702408802658e-04, -3.693684519144972700e-04, -3.675682323095392557e-04, -3.657675143783955325e-04, -3.639663010741054435e-04, -3.621645953502275559e-04, -3.603624001610821435e-04, -3.585597184615807497e-04, -3.567565532073016478e-04, -3.549529073543320357e-04, -3.531487838594934417e-04, -3.513441856802218652e-04, -3.495391157744836977e-04, -3.477335771008092241e-04, -3.459275726185673055e-04, -3.441211052874831259e-04, -3.423141780679093515e-04, -3.405067939208641318e-04, -3.386989558079084219e-04, -3.368906666912137998e-04, -3.350819295334059615e-04, -3.332727472977949513e-04, -3.314631229482501535e-04, -3.296530594490773981e-04, -3.278425597652556960e-04, -3.260316268623076230e-04, -3.242202637061764254e-04, -3.224084732634658994e-04, -3.205962585013057880e-04, -3.187836223872370718e-04, -3.169705678894399773e-04, -3.151570979766139011e-04, -3.133432156178475223e-04, -3.115289237828998284e-04, -3.097142254418706257e-04, -3.078991235654770110e-04, -3.060836211249297182e-04, -3.042677210918064297e-04, -3.024514264382899753e-04, -3.006347401370386614e-04, -2.988176651610650577e-04, -2.970002044839712145e-04, -2.951823610798223535e-04, -2.933641379230203950e-04, -2.915455379885436757e-04, -2.897265642517793307e-04, -2.879072196885973443e-04, -2.860875072752280357e-04, -2.842674299882945845e-04, -2.824469908050922674e-04, -2.806261927030998080e-04, -2.788050386602544391e-04, -2.769835316549908253e-04, -2.751616746661515625e-04, -2.733394706728664515e-04, -2.715169226547840841e-04, -2.696940335919101881e-04, -2.678708064646791848e-04, -2.660472442537930226e-04, -2.642233499404534128e-04, -2.623991265062393147e-04, -2.605745769329795422e-04, -2.587497042029902037e-04, -2.569245112989489350e-04, -2.550990012038087591e-04, -2.532731769008353287e-04, -2.514470413738825847e-04, -2.496205976068638279e-04, -2.477938485842313705e-04, -2.459667972906075814e-04, -2.441394467110650720e-04, -2.423117998309977025e-04, -2.404838596359966309e-04, -2.386556291120855576e-04, -2.368271112455981023e-04, -2.349983090230480247e-04, -2.331692254313685896e-04, -2.313398634577885883e-04, -2.295102260897006888e-04, -2.276803163149046505e-04, -2.258501371214784929e-04, -2.240196914976515089e-04, -2.221889824320863471e-04, -2.203580129135449147e-04, -2.185267859311714085e-04, -2.166953044743642981e-04, -2.148635715326501514e-04, -2.130315900959208852e-04, -2.111993631543082693e-04, -2.093668936980579414e-04, -2.075341847177667668e-04, -2.057012392042565285e-04, -2.038680601484479428e-04, -2.020346505415984522e-04, -2.002010133751352581e-04, -1.983671516407330040e-04, -1.965330683301427155e-04, -1.946987664354360166e-04, -1.928642489488739957e-04, -1.910295188628222313e-04, -1.891945791697875734e-04, -1.873594328626973797e-04, -1.855240829344055804e-04, -1.836885323779744350e-04, -1.818527841867087936e-04, -1.800168413540292986e-04, -1.781807068735503127e-04, -1.763443837389102676e-04, -1.745078749440123029e-04, -1.726711834828972521e-04, -1.708343123496150560e-04, -1.689972645384675695e-04, -1.671600430438778886e-04, -1.653226508602647997e-04, -1.634850909822825778e-04, -1.616473664046938366e-04, -1.598094801222425419e-04, -1.579714351299332201e-04, -1.561332344227007378e-04, -1.542948809956921940e-04, -1.524563778441372227e-04, -1.506177279632222254e-04, -1.487789343483309553e-04, -1.469399999949152537e-04, -1.451009278983691737e-04, -1.432617210542682100e-04, -1.414223824582438560e-04, -1.395829151058526597e-04, -1.377433219928202233e-04, -1.359036061149110721e-04, -1.340637704678025884e-04, -1.322238180473250813e-04, -1.303837518492929220e-04, -1.285435748695819833e-04, -1.267032901040022726e-04, -1.248629005483331415e-04, -1.230224091986052053e-04, -1.211818190506049986e-04, -1.193411331001555798e-04, -1.175003543431531503e-04, -1.156594857754808878e-04, -1.138185303928796545e-04, -1.119774911911907236e-04, -1.101363711661854778e-04, -1.082951733136435125e-04, -1.064539006291835414e-04, -1.046125561085041157e-04, -1.027711427472561905e-04, -1.009296635409562390e-04, -9.908812148502239717e-05, -9.724651957505634305e-05, -9.540486080630520692e-05, -9.356314817415009935e-05, -9.172138467373017765e-05, -8.987957330022598853e-05, -8.803771704873246742e-05, -8.619581891412860376e-05, -8.435388189132103415e-05, -8.251190897511485964e-05, -8.066990316008619782e-05, -7.882786744082302471e-05, -7.698580481179772683e-05, -7.514371826723888073e-05, -7.330161080137284038e-05, -7.145948540829494744e-05, -6.961734508184323528e-05, -6.777519281583784796e-05, -6.593303160395433762e-05, -6.409086443959515942e-05, -6.224869431617263476e-05, -6.040652422673402063e-05, -5.856435716444953607e-05, -5.672219612207424558e-05, -5.488004409222948409e-05, -5.303790406744028228e-05, -5.119577904004790533e-05, -4.935367200208138852e-05, -4.751158594549993096e-05, -4.566952386206385520e-05, -4.382748874320759974e-05, -4.198548358028043220e-05, -4.014351136437766616e-05, -3.830157508641819522e-05, -3.645967773701581168e-05, -3.461782230651587293e-05, -3.277601178527804108e-05, -3.093424916317833595e-05, -2.909253742985069537e-05, -2.725087957492860653e-05, -2.540927858750662683e-05, -2.356773745662792249e-05, -2.172625917090998502e-05, -1.988484671882750294e-05, -1.804350308858390756e-05, -1.620223126798367428e-05, -1.436103424467362025e-05, -1.251991500601507866e-05, -1.067887653895570025e-05, -8.837921830271138957e-06, -6.997053866436889892e-06, -5.156275633500380578e-06, -3.315590117322430827e-06, -1.475000303449256534e-06, 3.654908230155255251e-07, 2.205880277128358793e-06, 4.046165074438997322e-06, 5.886342230707981434e-06, 7.726408762034613645e-06, 9.566361684984968803e-06, 1.140619801635036730e-05, 1.324591477327539308e-05, 1.508550897338592268e-05, 1.692497763454751079e-05, 1.876431777499357680e-05, 2.060352641345305268e-05, 2.244260056890927675e-05, 2.428153726072789734e-05, 2.612033350878435465e-05, 2.795898633318223551e-05, 2.979749275462680811e-05, 3.163584979393744618e-05, 3.347405447258623685e-05, 3.531210381245638316e-05, 3.714999483560077259e-05, 3.898772456473932765e-05, 4.082529002297662546e-05, 4.266268823376536014e-05, 4.449991622099351942e-05, 4.633697100911240182e-05, 4.817384962289475827e-05, 5.001054908760430706e-05, 5.184706642891801019e-05, 5.368339867309520881e-05, 5.551954284673626635e-05, 5.735549597691069404e-05, 5.919125509124343313e-05, 6.102681721787854086e-05, 6.286217938519835500e-05, 6.469733862235948953e-05, 6.653229195880697654e-05, 6.836703642464692684e-05, 7.020156905036591133e-05, 7.203588686695674200e-05, 7.386998690604806123e-05, 7.570386619966222586e-05, 7.753752178034322947e-05, 7.937095068128457054e-05, 8.120414993608790900e-05, 8.303711657889140867e-05, 8.486984764449648048e-05, 8.670234016812769951e-05, 8.853459118555992761e-05, 9.036659773324604602e-05, 9.219835684803508993e-05, 9.402986556750504428e-05, 9.586112092968026004e-05, 9.769211997315970181e-05, 9.952285973728508040e-05, 1.013533372616954762e-04, 1.031835495868644800e-04, 1.050134937538180430e-04, 1.068431668040984404e-04, 1.086725657798514417e-04, 1.105016877239527824e-04, 1.123305296797684878e-04, 1.141590886912812776e-04, 1.159873618032198023e-04, 1.178153460608159856e-04, 1.196430385099744040e-04, 1.214704361971959313e-04, 1.232975361697033847e-04, 1.251243354754069518e-04, 1.269508311626224746e-04, 1.287770202805661572e-04, 1.306028998790732831e-04, 1.324284670085630600e-04, 1.342537187201652276e-04, 1.360786520656426181e-04, 1.379032640975601568e-04, 1.397275518690446836e-04, 1.415515124339117238e-04, 1.433751428467915535e-04, 1.451984401628921386e-04, 1.470214014381234120e-04, 1.488440237291843618e-04, 1.506663040935278758e-04, 1.524882395890797982e-04, 1.543098272747720856e-04, 1.561310642101014013e-04, 1.579519474552957300e-04, 1.597724740714417176e-04, 1.615926411202030222e-04, 1.634124456641522971e-04, 1.652318847664914665e-04, 1.670509554911767342e-04, 1.688696549030454077e-04, 1.706879800675793800e-04, 1.725059280510279696e-04, 1.743234959205378347e-04, 1.761406807439117657e-04, 1.779574795897359975e-04, 1.797738895275076572e-04, 1.815899076273944784e-04, 1.834055309603607308e-04, 1.852207565982972974e-04, 1.870355816137373426e-04, 1.888500030802306602e-04, 1.906640180718579777e-04, 1.924776236637657119e-04, 1.942908169318853778e-04, 1.961035949528977551e-04, 1.979159548043197333e-04, 1.997278935646287508e-04, 2.015394083130260592e-04, 2.033504961296023629e-04, 2.051611540952635231e-04, 2.069713792918936770e-04, 2.087811688021208871e-04, 2.105905197094398186e-04, 2.123994290983000478e-04, 2.142078940540690908e-04, 2.160159116627540074e-04, 2.178234790114908100e-04, 2.196305931883091647e-04, 2.214372512818895571e-04, 2.232434503820991862e-04, 2.250491875795078141e-04, 2.268544599657566926e-04, 2.286592646332820378e-04, 2.304635986754387917e-04, 2.322674591866283951e-04, 2.340708432620602095e-04, 2.358737479978762809e-04, 2.376761704912792763e-04, 2.394781078402929834e-04, 2.412795571438904627e-04, 2.430805155021174846e-04, 2.448809800158544383e-04, 2.466809477869459752e-04, 2.484804159183221688e-04, 2.502793815137237775e-04, 2.520778416780286167e-04, 2.538757935169739491e-04, 2.556732341372808964e-04, 2.574701606467826465e-04, 2.592665701541854413e-04, 2.610624597691947775e-04, 2.628578266026384636e-04, 2.646526677662350345e-04, 2.664469803727137183e-04, 2.682407615359419929e-04, 2.700340083706900970e-04, 2.718267179927537618e-04, 2.736188875190821474e-04, 2.754105140674981177e-04, 2.772015947570662738e-04, 2.789921267076171511e-04, 2.807821070402706726e-04, 2.825715328772003890e-04, 2.843604013414002666e-04, 2.861487095571681877e-04, 2.879364546498288822e-04, 2.897236337457025405e-04, 2.915102439722240210e-04, 2.932962824578727026e-04, 2.950817463323339223e-04, 2.968666327262642997e-04, 2.986509387714170703e-04, 3.004346616007655228e-04, 3.022177983482683228e-04, 3.040003461489940878e-04, 3.057823021392069309e-04, 3.075636634563282427e-04, 3.093444272386627674e-04, 3.111245906259262300e-04, 3.129041507587640588e-04, 3.146831047791217488e-04, 3.164614498299632406e-04, 3.182391830554036805e-04, 3.200163016008242376e-04, 3.217928026126469152e-04, 3.235686832384492050e-04, 3.253439406270972815e-04, 3.271185719285036827e-04, 3.288925742937582274e-04, 3.306659448752458682e-04, 3.324386808264169491e-04, 3.342107793019091777e-04, 3.359822374576706288e-04, 3.377530524507290255e-04, 3.395232214393115980e-04, 3.412927415829713389e-04, 3.430616100423130254e-04, 3.448298239793546921e-04, 3.465973805570573044e-04, 3.483642769398404048e-04, 3.501305102933171339e-04, 3.518960777842506456e-04, 3.536609765806445296e-04, 3.554252038518617481e-04, 3.571887567683940806e-04, 3.589516325020235070e-04, 3.607138282257500543e-04, 3.624753411139492224e-04, 3.642361683421467414e-04, 3.659963070871358280e-04, 3.677557545270621325e-04, 3.695145078413890447e-04, 3.712725642106285404e-04, 3.730299208168143818e-04, 3.747865748432330723e-04, 3.765425234743889453e-04, 3.782977638961285225e-04, 3.800522932955614211e-04, 3.818061088612277544e-04, 3.835592077828630232e-04, 3.853115872515204131e-04, 3.870632444596980803e-04, 3.888141766011003557e-04, 3.905643808707671451e-04, 3.923138544651895042e-04, 3.940625945820858600e-04, 3.958105984205191044e-04, 3.975578631810190006e-04, 3.993043860653545550e-04, 4.010501642766519780e-04, 4.027951950195201268e-04, 4.045394754997802132e-04, 4.062830029247805480e-04, 4.080257745031309110e-04, 4.097677874448225725e-04, 4.115090389613484771e-04, 4.132495262654785968e-04, 4.149892465713748025e-04, 4.167281970947143001e-04, 4.184663750524661224e-04, 4.202037776630026394e-04, 4.219404021462292830e-04, 4.236762457233500339e-04, 4.254113056170305942e-04, 4.271455790513219511e-04, 4.288790632517859277e-04, 4.306117554454575607e-04, 4.323436528605771405e-04, 4.340747527270627602e-04, 4.358050522762412708e-04, 4.375345487408126115e-04, 4.392632393549403941e-04, 4.409911213543590770e-04, 4.427181919761557691e-04, 4.444444484589254877e-04, 4.461698880427023115e-04, 4.478945079691113319e-04, 4.496183054811482343e-04, 4.513412778232941155e-04, 4.530634222416033037e-04, 4.547847359836610748e-04, 4.565052162983264253e-04, 4.582248604361922081e-04, 4.599436656493621658e-04, 4.616616291912236281e-04, 4.633787483169526412e-04, 4.650950202830532367e-04, 4.668104423477137540e-04, 4.685250117705369284e-04, 4.702387258126634363e-04, 4.719515817368876874e-04, 4.736635768074357804e-04, 4.753747082900804826e-04, 4.770849734522674855e-04, 4.787943695628804576e-04, 4.805028938923686555e-04, 4.822105437128617949e-04, 4.839173162979453499e-04, 4.856232089227818208e-04, 4.873282188642265810e-04, 4.890323434005674520e-04, 4.907355798118304482e-04, 4.924379253795235258e-04, 4.941393773867489058e-04, 4.958399331183274868e-04, 4.975395898605673673e-04, 4.992383449013913484e-04, 5.009361955304466544e-04, 5.026331390388882013e-04, 5.043291727194912453e-04, 5.060242938667742227e-04, 5.077184997767721520e-04, 5.094117877471956860e-04, 5.111041550773539168e-04, 5.127955990683181987e-04, 5.144861170226932732e-04, 5.161757062447360975e-04, 5.178643640404380268e-04, 5.195520877174895783e-04, 5.212388745850197883e-04, 5.229247219540550471e-04, 5.246096271372609502e-04, 5.262935874489009904e-04, 5.279766002049634090e-04, 5.296586627230850854e-04, 5.313397723227078788e-04, 5.330199263248547401e-04, 5.346991220522512517e-04, 5.363773568294386007e-04, 5.380546279825537031e-04, 5.397309328394491162e-04, 5.414062687298016761e-04, 5.430806329849025959e-04, 5.447540229377656690e-04, 5.464264359232479410e-04, 5.480978692777891759e-04, 5.497683203397196608e-04, 5.514377864489980463e-04, 5.531062649473301746e-04, 5.547737531782866074e-04, 5.564402484870797135e-04, 5.581057482206783779e-04, 5.597702497279342026e-04, 5.614337503593471021e-04, 5.630962474671945403e-04, 5.647577384056390835e-04, 5.664182205305138369e-04, 5.680776911994344421e-04, 5.697361477719190990e-04, 5.713935876091665207e-04, 5.730500080742107578e-04, 5.747054065318487736e-04, 5.763597803487577548e-04, 5.780131268934624771e-04, 5.796654435360803007e-04, 5.813167276487648258e-04, 5.829669766054595623e-04, 5.846161877818578136e-04, 5.862643585554863776e-04, 5.879114863058125572e-04, 5.895575684140371862e-04, 5.912026022632404544e-04, 5.928465852383081819e-04, 5.944895147260945579e-04, 5.961313881151938075e-04, 5.977722027960623817e-04, 5.994119561610946343e-04, 6.010506456045873686e-04, 6.026882685224914469e-04, 6.043248223128899234e-04, 6.059603043755630624e-04, 6.075947121123206462e-04, 6.092280429267548855e-04, 6.108602942243468881e-04, 6.124914634125866800e-04, 6.141215479007543047e-04, 6.157505451000347494e-04, 6.173784524236348211e-04, 6.190052672865617531e-04, 6.206309871057379135e-04, 6.222556093001244040e-04, 6.238791312904915344e-04, 6.255015504995402537e-04, 6.271228643520174000e-04, 6.287430702744969090e-04, 6.303621656954940889e-04, 6.319801480455800036e-04, 6.335970147571290704e-04, 6.352127632646531030e-04, 6.368273910043654616e-04, 6.384408954146637404e-04, 6.400532739358709682e-04, 6.416645240102091538e-04, 6.432746430818773488e-04, 6.448836285971601759e-04, 6.464914780042134825e-04, 6.480981887531826269e-04, 6.497037582963113324e-04, 6.513081840877286413e-04, 6.529114635835989687e-04, 6.545135942420537978e-04, 6.561145735233004251e-04, 6.577143988895991925e-04, 6.593130678050013269e-04, 6.609105777357967160e-04, 6.625069261502639995e-04, 6.641021105186300198e-04, 6.656961283131945057e-04, 6.672889770082546116e-04, 6.688806540802507425e-04, 6.704711570075612068e-04, 6.720604832706112862e-04, 6.736486303519824154e-04, 6.752355957362041238e-04, 6.768213769098647319e-04, 6.784059713617207480e-04, 6.799893765824920619e-04, 6.815715900649645109e-04, 6.831526093041068648e-04, 6.847324317968599486e-04, 6.863110550422477736e-04, 6.878884765414873667e-04, 6.894646937977400546e-04, 6.910397043164081014e-04, 6.926135056048814392e-04, 6.941860951726560626e-04, 6.957574705314361610e-04, 6.973276291949338660e-04, 6.988965686789709499e-04, 7.004642865015980879e-04, 7.020307801828769333e-04, 7.035960472449966693e-04, 7.051600852123811282e-04, 7.067228916114824677e-04, 7.082844639708900250e-04, 7.098447998214401462e-04, 7.114038966959749513e-04, 7.129617521296556688e-04, 7.145183636595584453e-04, 7.160737288251214699e-04, 7.176278451679449395e-04, 7.191807102315838675e-04, 7.207323215619699467e-04, 7.222826767071766031e-04, 7.238317732173783379e-04, 7.253796086449305252e-04, 7.269261805444809758e-04, 7.284714864727562418e-04, 7.300155239887121030e-04, 7.315582906534634196e-04, 7.330997840304299571e-04, 7.346400016851280029e-04, 7.361789411852823640e-04, 7.377166001008981415e-04, 7.392529760042286383e-04, 7.407880664695395447e-04, 7.423218690735597499e-04, 7.438543813950722729e-04, 7.453856010152261867e-04, 7.469155255173019975e-04, 7.484441524868182217e-04, 7.499714795116381796e-04, 7.514975041817631299e-04, 7.530222240894507727e-04, 7.545456368293056723e-04, 7.560677399980941836e-04, 7.575885311948355252e-04, 7.591080080209216922e-04, 7.606261680799060367e-04, 7.621430089776142901e-04, 7.636585283222515740e-04, 7.651727237241635502e-04, 7.666855927961147357e-04, 7.681971331530570253e-04, 7.697073424122293298e-04, 7.712162181933034013e-04, 7.727237581180085909e-04, 7.742299598105820092e-04, 7.757348208975281588e-04, 7.772383390075979009e-04, 7.787405117718488451e-04, 7.802413368237673223e-04, 7.817408117990420034e-04, 7.832389343357001833e-04, 7.847357020741921318e-04, 7.862311126571960461e-04, 7.877251637297634414e-04, 7.892178529392485705e-04, 7.907091779354164093e-04, 7.921991363704078545e-04, 7.936877258985194136e-04, 7.951749441765955774e-04, 7.966607888638075350e-04, 7.981452576216197794e-04, 7.996283481138940835e-04, 8.011100580068300850e-04, 8.025903849690951743e-04, 8.040693266716353012e-04, 8.055468807877716854e-04, 8.070230449933147665e-04, 8.084978169663551697e-04, 8.099711943873774385e-04, 8.114431749393228102e-04, 8.129137563075686159e-04, 8.143829361796887803e-04, 8.158507122458959595e-04, 8.173170821986446141e-04, 8.187820437329366464e-04, 8.202455945460871041e-04, 8.217077323378308654e-04, 8.231684548104226031e-04, 8.246277596684498676e-04, 8.260856446189216665e-04, 8.275421073713865342e-04, 8.289971456377301113e-04, 8.304507571322752163e-04, 8.319029395718920009e-04, 8.333536906757954207e-04, 8.348030081656554989e-04, 8.362508897656938198e-04, 8.376973332024913003e-04, 8.391423362050944414e-04, 8.405858965051088948e-04, 8.420280118364828394e-04, 8.434686799357949457e-04, 8.449078985418824938e-04, 8.463456653962433962e-04, 8.477819782428371378e-04, 8.492168348280431430e-04, 8.506502329007300557e-04, 8.520821702123541853e-04, 8.535126445167795289e-04, 8.549416535703987683e-04, 8.563691951320747233e-04, 8.577952669632794543e-04, 8.592198668278984560e-04, 8.606429924923334395e-04, 8.620646417255634813e-04, 8.634848122991265916e-04, 8.649035019868936587e-04, 8.663207085654537742e-04, 8.677364298139341467e-04, 8.691506635137965977e-04, 8.705634074492744944e-04, 8.719746594069792932e-04, 8.733844171762014056e-04, 8.747926785486788296e-04, 8.761994413187075212e-04, 8.776047032832351782e-04, 8.790084622416694448e-04, 8.804107159959878495e-04, 8.818114623508234570e-04, 8.832106991132913964e-04, 8.846084240930749461e-04, 8.860046351025349307e-04, 8.873993299565104435e-04, 8.887925064724294362e-04, 8.901841624704048871e-04, 8.915742957730054923e-04, 8.929629042055304026e-04, 8.943499855957727594e-04, 8.957355377741322341e-04, 8.971195585737063187e-04, 8.985020458301040593e-04, 8.998829973815478632e-04, 9.012624110689673902e-04, 9.026402847358156725e-04, 9.040166162281681019e-04, 9.053914033948172978e-04, 9.067646440870919368e-04, 9.081363361589503197e-04, 9.095064774670772985e-04, 9.108750658706771947e-04, 9.122420992317405121e-04, 9.136075754146985107e-04, 9.149714922868053876e-04, 9.163338477179692500e-04, 9.176946395805689934e-04, 9.190538657498301947e-04, 9.204115241035974292e-04, 9.217676125223299346e-04, 9.231221288891786969e-04, 9.244750710899397221e-04, 9.258264370131716716e-04, 9.271762245500189204e-04, 9.285244315943093525e-04, 9.298710560426434821e-04, 9.312160957942201139e-04, 9.325595487509301265e-04, 9.339014128174148027e-04, 9.352416859010453378e-04, 9.365803659117142395e-04, 9.379174507622239053e-04, 9.392529383679381607e-04, 9.405868266470469126e-04, 9.419191135203693662e-04, 9.432497969114337147e-04, 9.445788747465826314e-04, 9.459063449547937263e-04, 9.472322054677655232e-04, 9.485564542200224103e-04, 9.498790891487246882e-04, 9.512001081937753637e-04, 9.525195092979022241e-04, 9.538372904064842559e-04, 9.551534494676534523e-04, 9.564679844323721158e-04, 9.577808932542371603e-04, 9.590921738897214546e-04, 9.604018242979676066e-04, 9.617098424408762180e-04, 9.630162262832353375e-04, 9.643209737923898878e-04, 9.656240829386351227e-04, 9.669255516950083515e-04, 9.682253780372682313e-04, 9.695235599439535300e-04, 9.708200953964694294e-04, 9.721149823789281474e-04, 9.734082188782541053e-04, 9.746998028841382831e-04, 9.759897323891517356e-04, 9.772780053885843712e-04, 9.785646198805200875e-04, 9.798495738659119061e-04, 9.811328653485458691e-04, 9.824144923348500022e-04, 9.836944528342375735e-04, 9.849727448589095519e-04, 9.862493664238327056e-04, 9.875243155468274234e-04, 9.887975902485059143e-04, 9.900691885524025293e-04, 9.913391084847940002e-04, 9.926073480747981022e-04, 9.938739053544519333e-04, 9.951387783585544881e-04, 9.964019651247458045e-04, 9.976634636935991212e-04, 9.989232721084565121e-04, 1.000181388415513671e-03, 1.001437810663906216e-03, 1.002692536905547271e-03, 1.003945565195210306e-03, 1.005196893590625841e-03, 1.006446520152272633e-03, 1.007694442943620101e-03, 1.008940660030927753e-03, 1.010185169483332783e-03, 1.011427969372935293e-03, 1.012669057774638701e-03, 1.013908432766231701e-03, 1.015146092428478039e-03, 1.016382034844949978e-03, 1.017616258102113300e-03, 1.018848760289427268e-03, 1.020079539499151641e-03, 1.021308593826491954e-03, 1.022535921369534468e-03, 1.023761520229322930e-03, 1.024985388509844914e-03, 1.026207524317845768e-03, 1.027427925763149327e-03, 1.028646590958471859e-03, 1.029863518019408838e-03, 1.031078705064475496e-03, 1.032292150215206351e-03, 1.033503851595981736e-03, 1.034713807334150960e-03, 1.035922015559972683e-03, 1.037128474406737427e-03, 1.038333182010587382e-03, 1.039536136510620708e-03, 1.040737336048942491e-03, 1.041936778770633735e-03, 1.043134462823572467e-03, 1.044330386358760087e-03, 1.045524547530156780e-03, 1.046716944494534068e-03, 1.047907575411807009e-03, 1.049096438444743632e-03, 1.050283531759178303e-03, 1.051468853523853438e-03, 1.052652401910479782e-03, 1.053834175093843958e-03, 1.055014171251626547e-03, 1.056192388564500088e-03, 1.057368825216206936e-03, 1.058543479393407680e-03, 1.059716349285752058e-03, 1.060887433085972407e-03, 1.062056728989725380e-03, 1.063224235195667179e-03, 1.064389949905544417e-03, 1.065553871324007853e-03, 1.066715997658827493e-03, 1.067876327120705028e-03, 1.069034857923365986e-03, 1.070191588283636065e-03, 1.071346516421280452e-03, 1.072499640559093593e-03, 1.073650958922984198e-03, 1.074800469741805670e-03, 1.075948171247448912e-03, 1.077094061674923210e-03, 1.078238139262197503e-03, 1.079380402250307725e-03, 1.080520848883312346e-03, 1.081659477408398193e-03, 1.082796286075718472e-03, 1.083931273138485354e-03, 1.085064436853019421e-03, 1.086195775478717785e-03, 1.087325287277896013e-03, 1.088452970516084117e-03, 1.089578823461845921e-03, 1.090702844386775379e-03, 1.091825031565554901e-03, 1.092945383275921532e-03, 1.094063897798764956e-03, 1.095180573417974196e-03, 1.096295408420532805e-03, 1.097408401096570257e-03, 1.098519549739237480e-03, 1.099628852644776462e-03, 1.100736308112591376e-03, 1.101841914445111752e-03, 1.102945669947867288e-03, 1.104047572929560926e-03, 1.105147621701894293e-03, 1.106245814579780856e-03, 1.107342149881168983e-03, 1.108436625927113495e-03, 1.109529241041860457e-03, 1.110619993552697986e-03, 1.111708881790030414e-03, 1.112795904087459384e-03, 1.113881058781635318e-03, 1.114964344212338509e-03, 1.116045758722548518e-03, 1.117125300658303004e-03, 1.118202968368775790e-03, 1.119278760206345383e-03, 1.120352674526463354e-03, 1.121424709687739120e-03, 1.122494864051913057e-03, 1.123563135983908111e-03, 1.124629523851826754e-03, 1.125694026026779473e-03, 1.126756640883169258e-03, 1.127817366798535264e-03, 1.128876202153533724e-03, 1.129933145331968531e-03, 1.130988194720888591e-03, 1.132041348710438643e-03, 1.133092605693945777e-03, 1.134141964067893844e-03, 1.135189422232011931e-03, 1.136234978589124736e-03, 1.137278631545248853e-03, 1.138320379509611627e-03, 1.139360220894663741e-03, 1.140398154115894458e-03, 1.141434177592138893e-03, 1.142468289745313679e-03, 1.143500489000618845e-03, 1.144530773786381263e-03, 1.145559142534119043e-03, 1.146585593678626537e-03, 1.147610125657831008e-03, 1.148632736912860719e-03, 1.149653425888122775e-03, 1.150672191031161312e-03, 1.151689030792735994e-03, 1.152703943626886413e-03, 1.153716927990799815e-03, 1.154727982344887867e-03, 1.155737105152843461e-03, 1.156744294881519508e-03, 1.157749550000992467e-03, 1.158752868984636074e-03, 1.159754250308965215e-03, 1.160753692453837587e-03, 1.161751193902186988e-03, 1.162746753140321034e-03, 1.163740368657767638e-03, 1.164732038947246607e-03, 1.165721762504724930e-03, 1.166709537829478151e-03, 1.167695363423970232e-03, 1.168679237793914059e-03, 1.169661159448336703e-03, 1.170641126899457348e-03, 1.171619138662778354e-03, 1.172595193257032140e-03, 1.173569289204268997e-03, 1.174541425029813294e-03, 1.175511599262129029e-03, 1.176479810433078742e-03, 1.177446057077779313e-03, 1.178410337734571607e-03, 1.179372650945069044e-03, 1.180332995254237396e-03, 1.181291369210249291e-03, 1.182247771364582653e-03, 1.183202200271972785e-03, 1.184154654490517967e-03, 1.185105132581530272e-03, 1.186053633109614277e-03, 1.187000154642732768e-03, 1.187944695752077501e-03, 1.188887255012138376e-03, 1.189827831000769137e-03, 1.190766422299058356e-03, 1.191703027491397516e-03, 1.192637645165549754e-03, 1.193570273912502406e-03, 1.194500912326631374e-03, 1.195429559005562999e-03, 1.196356212550238243e-03, 1.197280871564981863e-03, 1.198203534657364070e-03, 1.199124200438280753e-03, 1.200042867522013766e-03, 1.200959534526100823e-03, 1.201874200071413774e-03, 1.202786862782210002e-03, 1.203697521286014238e-03, 1.204606174213686222e-03, 1.205512820199483581e-03, 1.206417457880910697e-03, 1.207320085898920363e-03, 1.208220702897664853e-03, 1.209119307524749408e-03, 1.210015898431139429e-03, 1.210910474271009772e-03, 1.211803033702016016e-03, 1.212693575385142891e-03, 1.213582097984683460e-03, 1.214468600168287912e-03, 1.215353080607020153e-03, 1.216235537975246571e-03, 1.217115970950712360e-03, 1.217994378214504875e-03, 1.218870758451138202e-03, 1.219745110348427388e-03, 1.220617432597561084e-03, 1.221487723893134288e-03, 1.222355982933138584e-03, 1.223222208418815781e-03, 1.224086399054924619e-03, 1.224948553549506805e-03, 1.225808670614054628e-03, 1.226666748963387574e-03, 1.227522787315708710e-03, 1.228376784392668864e-03, 1.229228738919236306e-03, 1.230078649623784787e-03, 1.230926515238128230e-03, 1.231772334497413177e-03, 1.232616106140182761e-03, 1.233457828908443273e-03, 1.234297501547530589e-03, 1.235135122806188014e-03, 1.235970691436617244e-03, 1.236804206194342835e-03, 1.237635665838380476e-03, 1.238465069131090834e-03, 1.239292414838245697e-03, 1.240117701729102125e-03, 1.240940928576206000e-03, 1.241762094155619270e-03, 1.242581197246810662e-03, 1.243398236632628148e-03, 1.244213211099340355e-03, 1.245026119436696633e-03, 1.245836960437806708e-03, 1.246645732899215060e-03, 1.247452435620944071e-03, 1.248257067406392763e-03, 1.249059627062407704e-03, 1.249860113399253519e-03, 1.250658525230661242e-03, 1.251454861373817694e-03, 1.252249120649242316e-03, 1.253041301881000109e-03, 1.253831403896584103e-03, 1.254619425526884565e-03, 1.255405365606263599e-03, 1.256189222972509383e-03, 1.256970996466915324e-03, 1.257750684934164261e-03, 1.258528287222395684e-03, 1.259303802183257348e-03, 1.260077228671791861e-03, 1.260848565546510841e-03, 1.261617811669404248e-03, 1.262384965905955338e-03, 1.263150027124988880e-03, 1.263912994198930495e-03, 1.264673866003573769e-03, 1.265432641418248521e-03, 1.266189319325702846e-03, 1.266943898612162304e-03, 1.267696378167361155e-03, 1.268446756884469926e-03, 1.269195033660119052e-03, 1.269941207394481054e-03, 1.270685276991149765e-03, 1.271427241357191065e-03, 1.272167099403216607e-03, 1.272904850043260656e-03, 1.273640492194841670e-03, 1.274374024779020625e-03, 1.275105446720292170e-03, 1.275834756946638828e-03, 1.276561954389582179e-03, 1.277287037984074433e-03, 1.278010006668646101e-03, 1.278730859385196310e-03, 1.279449595079228509e-03, 1.280166212699732076e-03, 1.280880711199147617e-03, 1.281593089533432242e-03, 1.282303346662089054e-03, 1.283011481548074553e-03, 1.283717493157870634e-03, 1.284421380461450105e-03, 1.285123142432341306e-03, 1.285822778047533135e-03, 1.286520286287528821e-03, 1.287215666136380188e-03, 1.287908916581660332e-03, 1.288600036614368860e-03, 1.289289025229118811e-03, 1.289975881424040155e-03, 1.290660604200688727e-03, 1.291343192564248102e-03, 1.292023645523360459e-03, 1.292701962090240424e-03, 1.293378141280582695e-03, 1.294052182113622756e-03, 1.294724083612155963e-03, 1.295393844802469668e-03, 1.296061464714386591e-03, 1.296726942381293875e-03, 1.297390276840083454e-03, 1.298051467131177208e-03, 1.298710512298570981e-03, 1.299367411389769095e-03, 1.300022163455804517e-03, 1.300674767551300223e-03, 1.301325222734363600e-03, 1.301973528066701366e-03, 1.302619682613520482e-03, 1.303263685443580835e-03, 1.303905535629228856e-03, 1.304545232246319018e-03, 1.305182774374254173e-03, 1.305818161096033471e-03, 1.306451391498162154e-03, 1.307082464670709454e-03, 1.307711379707332229e-03, 1.308338135705205355e-03, 1.308962731765066830e-03, 1.309585166991249867e-03, 1.310205440491594205e-03, 1.310823551377572095e-03, 1.311439498764118295e-03, 1.312053281769821975e-03, 1.312664899516837597e-03, 1.313274351130789717e-03, 1.313881635740973570e-03, 1.314486752480227994e-03, 1.315089700484934135e-03, 1.315690478895067267e-03, 1.316289086854150392e-03, 1.316885523509334251e-03, 1.317479788011291942e-03, 1.318071879514282670e-03, 1.318661797176182105e-03, 1.319249540158395212e-03, 1.319835107625917832e-03, 1.320418498747352948e-03, 1.320999712694892253e-03, 1.321578748644236566e-03, 1.322155605774762372e-03, 1.322730283269371978e-03, 1.323302780314591530e-03, 1.323873096100512898e-03, 1.324441229820807120e-03, 1.325007180672780780e-03, 1.325570947857286890e-03, 1.326132530578773673e-03, 1.326691928045323600e-03, 1.327249139468573589e-03, 1.327804164063752738e-03, 1.328357001049734146e-03, 1.328907649648937775e-03, 1.329456109087395928e-03, 1.330002378594767349e-03, 1.330546457404273688e-03, 1.331088344752776693e-03, 1.331628039880712730e-03, 1.332165542032114893e-03, 1.332700850454678499e-03, 1.333233964399612543e-03, 1.333764883121810576e-03, 1.334293605879758975e-03, 1.334820131935537382e-03, 1.335344460554826074e-03, 1.335866591006953886e-03, 1.336386522564829470e-03, 1.336904254504990520e-03, 1.337419786107571030e-03, 1.337933116656348778e-03, 1.338444245438696325e-03, 1.338953171745598794e-03, 1.339459894871681189e-03, 1.339964414115195606e-03, 1.340466728777949890e-03, 1.340966838165441643e-03, 1.341464741586778642e-03, 1.341960438354665832e-03, 1.342453927785443703e-03, 1.342945209199067911e-03, 1.343434281919152207e-03, 1.343921145272906426e-03, 1.344405798591158602e-03, 1.344888241208414817e-03, 1.345368472462756199e-03, 1.345846491695907015e-03, 1.346322298253259386e-03, 1.346795891483785253e-03, 1.347267270740109667e-03, 1.347736435378511875e-03, 1.348203384758879563e-03, 1.348668118244729028e-03, 1.349130635203248541e-03, 1.349590935005213783e-03, 1.350049017025096477e-03, 1.350504880640959662e-03, 1.350958525234507990e-03, 1.351409950191125031e-03, 1.351859154899792172e-03, 1.352306138753144125e-03, 1.352750901147481725e-03, 1.353193441482722272e-03, 1.353633759162420564e-03, 1.354071853593818335e-03, 1.354507724187754489e-03, 1.354941370358742070e-03, 1.355372791524921215e-03, 1.355801987108103601e-03, 1.356228956533755536e-03, 1.356653699230936589e-03, 1.357076214632410831e-03, 1.357496502174589158e-03, 1.357914561297512805e-03, 1.358330391444870699e-03, 1.358743992064037837e-03, 1.359155362606014571e-03, 1.359564502525454363e-03, 1.359971411280671595e-03, 1.360376088333655441e-03, 1.360778533150021515e-03, 1.361178745199050468e-03, 1.361576723953691458e-03, 1.361972468890565620e-03, 1.362365979489890385e-03, 1.362757255235605685e-03, 1.363146295615309768e-03, 1.363533100120204117e-03, 1.363917668245217922e-03, 1.364299999488892065e-03, 1.364680093353478002e-03, 1.365057949344844522e-03, 1.365433566972541713e-03, 1.365806945749805301e-03, 1.366178085193500919e-03, 1.366546984824174417e-03, 1.366913644166050344e-03, 1.367278062746999203e-03, 1.367640240098566074e-03, 1.368000175755974520e-03, 1.368357869258104900e-03, 1.368713320147498490e-03, 1.369066527970395431e-03, 1.369417492276668374e-03, 1.369766212619894690e-03, 1.370112688557299872e-03, 1.370456919649781606e-03, 1.370798905461930589e-03, 1.371138645561989326e-03, 1.371476139521869914e-03, 1.371811386917185047e-03, 1.372144387327197497e-03, 1.372475140334841791e-03, 1.372803645526753059e-03, 1.373129902493216287e-03, 1.373453910828205567e-03, 1.373775670129356993e-03, 1.374095179998003355e-03, 1.374412440039160044e-03, 1.374727449861475612e-03, 1.375040209077323496e-03, 1.375350717302752579e-03, 1.375658974157445555e-03, 1.375964979264816075e-03, 1.376268732251936322e-03, 1.376570232749560864e-03, 1.376869480392124701e-03, 1.377166474817728518e-03, 1.377461215668188566e-03, 1.377753702588976371e-03, 1.378043935229244545e-03, 1.378331913241846512e-03, 1.378617636283309845e-03, 1.378901104013830620e-03, 1.379182316097316355e-03, 1.379461272201338955e-03, 1.379737971997152925e-03, 1.380012415159711636e-03, 1.380284601367640432e-03, 1.380554530303264608e-03, 1.380822201652579483e-03, 1.381087615105263192e-03, 1.381350770354704662e-03, 1.381611667097955689e-03, 1.381870305035759125e-03, 1.382126683872557773e-03, 1.382380803316467927e-03, 1.382632663079291085e-03, 1.382882262876538454e-03, 1.383129602427385189e-03, 1.383374681454698808e-03, 1.383617499685052847e-03, 1.383858056848692166e-03, 1.384096352679555723e-03, 1.384332386915266590e-03, 1.384566159297146055e-03, 1.384797669570212754e-03, 1.385026917483146670e-03, 1.385253902788340531e-03, 1.385478625241885926e-03, 1.385701084603537317e-03, 1.385921280636757784e-03, 1.386139213108701466e-03, 1.386354881790203804e-03, 1.386568286455805606e-03, 1.386779426883716620e-03, 1.386988302855866927e-03, 1.387194914157859884e-03, 1.387399260578987955e-03, 1.387601341912249840e-03, 1.387801157954336381e-03, 1.387998708505602157e-03, 1.388193993370133569e-03, 1.388387012355680322e-03, 1.388577765273704212e-03, 1.388766251939349203e-03, 1.388952472171443159e-03, 1.389136425792531458e-03, 1.389318112628836876e-03, 1.389497532510269341e-03, 1.389674685270446105e-03, 1.389849570746671354e-03, 1.390022188779934048e-03, 1.390192539214936537e-03, 1.390360621900057917e-03, 1.390526436687369426e-03, 1.390689983432653312e-03, 1.390851261995367264e-03, 1.391010272238665238e-03, 1.391167014029408072e-03, 1.391321487238132704e-03, 1.391473691739089028e-03, 1.391623627410192411e-03, 1.391771294133074431e-03, 1.391916691793060540e-03, 1.392059820279159229e-03, 1.392200679484073078e-03, 1.392339269304207656e-03, 1.392475589639654383e-03, 1.392609640394195736e-03, 1.392741421475309589e-03, 1.392870932794179400e-03, 1.392998174265665376e-03, 1.393123145808318128e-03, 1.393245847344400578e-03, 1.393366278799860417e-03, 1.393484440104325334e-03, 1.393600331191133159e-03, 1.393713951997308659e-03, 1.393825302463563972e-03, 1.393934382534308585e-03, 1.394041192157648244e-03, 1.394145731285372164e-03, 1.394247999872968860e-03, 1.394347997879612049e-03, 1.394445725268176478e-03, 1.394541182005222101e-03, 1.394634368060997543e-03, 1.394725283409451811e-03, 1.394813928028227788e-03, 1.394900301898634046e-03, 1.394984405005708595e-03, 1.395066237338145592e-03, 1.395145798888353236e-03, 1.395223089652413871e-03, 1.395298109630110223e-03, 1.395370858824914340e-03, 1.395441337243990198e-03, 1.395509544898175048e-03, 1.395575481802014545e-03, 1.395639147973735429e-03, 1.395700543435252679e-03, 1.395759668212178837e-03, 1.395816522333796035e-03, 1.395871105833092641e-03, 1.395923418746738759e-03, 1.395973461115093380e-03, 1.396021232982191159e-03, 1.396066734395774072e-03, 1.396109965407257153e-03, 1.396150926071748448e-03, 1.396189616448032097e-03, 1.396226036598588937e-03, 1.396260186589583707e-03, 1.396292066490865697e-03, 1.396321676375962030e-03, 1.396349016322094138e-03, 1.396374086410166705e-03, 1.396396886724757692e-03, 1.396417417354146309e-03, 1.396435678390281140e-03, 1.396451669928799443e-03, 1.396465392069016088e-03, 1.396476844913934834e-03, 1.396486028570242044e-03, 1.396492943148295836e-03, 1.396497588762143438e-03, 1.396499965529516413e-03, 1.396500073571809841e-03, 1.396497913014118752e-03, 1.396493483985209068e-03, 1.396486786617522806e-03, 1.396477821047188489e-03, 1.396466587413997072e-03, 1.396453085861439677e-03, 1.396437316536669210e-03, 1.396419279590520096e-03, 1.396398975177501767e-03, 1.396376403455803442e-03, 1.396351564587282844e-03, 1.396324458737484200e-03, 1.396295086075615690e-03, 1.396263446774562026e-03, 1.396229541010885963e-03, 1.396193368964815948e-03, 1.396154930820266930e-03, 1.396114226764810437e-03, 1.396071256989696264e-03, 1.396026021689849867e-03, 1.395978521063857185e-03, 1.395928755313983072e-03, 1.395876724646159589e-03, 1.395822429269983830e-03, 1.395765869398727689e-03, 1.395707045249330912e-03, 1.395645957042391996e-03, 1.395582605002184231e-03, 1.395516989356645511e-03, 1.395449110337380503e-03, 1.395378968179658260e-03, 1.395306563122411785e-03, 1.395231895408231750e-03, 1.395154965283386004e-03, 1.395075772997793773e-03, 1.394994318805044958e-03, 1.394910602962380619e-03, 1.394824625730710756e-03, 1.394736387374604985e-03, 1.394645888162290154e-03, 1.394553128365653158e-03, 1.394458108260235524e-03, 1.394360828125247934e-03, 1.394261288243544422e-03, 1.394159488901645146e-03, 1.394055430389721205e-03, 1.393949113001598109e-03, 1.393840537034755130e-03, 1.393729702790335494e-03, 1.393616610573120357e-03, 1.393501260691554829e-03, 1.393383653457730192e-03, 1.393263789187388886e-03, 1.393141668199925380e-03, 1.393017290818381396e-03, 1.392890657369451985e-03, 1.392761768183472951e-03, 1.392630623594435591e-03, 1.392497223939966966e-03, 1.392361569561354189e-03, 1.392223660803517098e-03, 1.392083498015024090e-03, 1.391941081548094070e-03, 1.391796411758568263e-03, 1.391649489005956615e-03, 1.391500313653394431e-03, 1.391348886067659066e-03, 1.391195206619162553e-03, 1.391039275681967436e-03, 1.390881093633772455e-03, 1.390720660855906910e-03, 1.390557977733332395e-03, 1.390393044654658411e-03, 1.390225862012123932e-03, 1.390056430201597627e-03, 1.389884749622588697e-03, 1.389710820678234518e-03, 1.389534643775303027e-03, 1.389356219324188596e-03, 1.389175547738926136e-03, 1.388992629437172223e-03, 1.388807464840214646e-03, 1.388620054372947249e-03, 1.388430398463935201e-03, 1.388238497545330645e-03, 1.388044352052912166e-03, 1.387847962426097580e-03, 1.387649329107918132e-03, 1.387448452545039096e-03, 1.387245333187720527e-03, 1.387039971489868653e-03, 1.386832367908993370e-03, 1.386622522906220826e-03, 1.386410436946305339e-03, 1.386196110497608805e-03, 1.385979544032107848e-03, 1.385760738025399244e-03, 1.385539692956692763e-03, 1.385316409308794258e-03, 1.385090887568139924e-03, 1.384863128224771579e-03, 1.384633131772324303e-03, 1.384400898708071327e-03, 1.384166429532859626e-03, 1.383929724751162618e-03, 1.383690784871062160e-03, 1.383449610404219928e-03, 1.383206201865930327e-03, 1.382960559775072568e-03, 1.382712684654125194e-03, 1.382462577029167821e-03, 1.382210237429898477e-03, 1.381955666389577016e-03, 1.381698864445090377e-03, 1.381439832136910958e-03, 1.381178570009097047e-03, 1.380915078609314508e-03, 1.380649358488803598e-03, 1.380381410202426249e-03, 1.380111234308601656e-03, 1.379838831369346614e-03, 1.379564201950284627e-03, 1.379287346620606874e-03, 1.379008265953089122e-03, 1.378726960524101703e-03, 1.378443430913595634e-03, 1.378157677705106089e-03, 1.377869701485737869e-03, 1.377579502846188603e-03, 1.377287082380735089e-03, 1.376992440687212259e-03, 1.376695578367055899e-03, 1.376396496025275324e-03, 1.376095194270432996e-03, 1.375791673714668812e-03, 1.375485934973724169e-03, 1.375177978666874967e-03, 1.374867805416987764e-03, 1.374555415850482265e-03, 1.374240810597355611e-03, 1.373923990291177604e-03, 1.373604955569056882e-03, 1.373283707071687757e-03, 1.372960245443328097e-03, 1.372634571331775039e-03, 1.372306685388402937e-03, 1.371976588268148615e-03, 1.371644280629479712e-03, 1.371309763134448021e-03, 1.370973036448652847e-03, 1.370634101241230592e-03, 1.370292958184895528e-03, 1.369949607955878645e-03, 1.369604051233991619e-03, 1.369256288702588647e-03, 1.368906321048545850e-03, 1.368554148962323504e-03, 1.368199773137896433e-03, 1.367843194272782637e-03, 1.367484413068057814e-03, 1.367123430228335415e-03, 1.366760246461747345e-03, 1.366394862479987328e-03, 1.366027278998271661e-03, 1.365657496735367838e-03, 1.365285516413541856e-03, 1.364911338758623268e-03, 1.364534964499973090e-03, 1.364156394370458431e-03, 1.363775629106472875e-03, 1.363392669447983539e-03, 1.363007516138426984e-03, 1.362620169924781861e-03, 1.362230631557562839e-03, 1.361838901790786340e-03, 1.361444981382008276e-03, 1.361048871092280241e-03, 1.360650571686182909e-03, 1.360250083931816706e-03, 1.359847408600776009e-03, 1.359442546468191647e-03, 1.359035498312692949e-03, 1.358626264916408836e-03, 1.358214847064990799e-03, 1.357801245547604662e-03, 1.357385461156891985e-03, 1.356967494689024492e-03, 1.356547346943657445e-03, 1.356125018723954370e-03, 1.355700510836593126e-03, 1.355273824091711042e-03, 1.354844959302976479e-03, 1.354413917287547410e-03, 1.353980698866046701e-03, 1.353545304862618709e-03, 1.353107736104898267e-03, 1.352667993423977083e-03, 1.352226077654463798e-03, 1.351781989634450159e-03, 1.351335730205485003e-03, 1.350887300212628029e-03, 1.350436700504409901e-03, 1.349983931932846777e-03, 1.349528995353415587e-03, 1.349071891625057938e-03, 1.348612621610248852e-03, 1.348151186174881841e-03, 1.347687586188318996e-03, 1.347221822523425247e-03, 1.346753896056520012e-03, 1.346283807667371336e-03, 1.345811558239231025e-03, 1.345337148658811224e-03, 1.344860579816296777e-03, 1.344381852605292102e-03, 1.343900967922898168e-03, 1.343417926669668479e-03, 1.342932729749591724e-03, 1.342445378070103272e-03, 1.341955872542144801e-03, 1.341464214080048505e-03, 1.340970403601596510e-03, 1.340474442028075303e-03, 1.339976330284149090e-03, 1.339476069297971042e-03, 1.338973660001095689e-03, 1.338469103328553296e-03, 1.337962400218802375e-03, 1.337453551613712772e-03, 1.336942558458619010e-03, 1.336429421702292099e-03, 1.335914142296888794e-03, 1.335396721198042671e-03, 1.334877159364807747e-03, 1.334355457759635929e-03, 1.333831617348420163e-03, 1.333305639100497040e-03, 1.332777523988574585e-03, 1.332247272988829187e-03, 1.331714887080816907e-03, 1.331180367247528995e-03, 1.330643714475375624e-03, 1.330104929754148376e-03, 1.329564014077077487e-03, 1.329020968440805181e-03, 1.328475793845341427e-03, 1.327928491294138973e-03, 1.327379061794046501e-03, 1.326827506355282614e-03, 1.326273825991506521e-03, 1.325718021719749081e-03, 1.325160094560458128e-03, 1.324600045537446423e-03, 1.324037875677905752e-03, 1.323473586012499517e-03, 1.322907177575188180e-03, 1.322338651403334427e-03, 1.321768008537746973e-03, 1.321195250022551325e-03, 1.320620376905258953e-03, 1.320043390236792227e-03, 1.319464291071427171e-03, 1.318883080466835096e-03, 1.318299759484018417e-03, 1.317714329187390232e-03, 1.317126790644729002e-03, 1.316537144927144073e-03, 1.315945393109152657e-03, 1.315351536268622151e-03, 1.314755575486757991e-03, 1.314157511848152229e-03, 1.313557346440759029e-03, 1.312955080355847175e-03, 1.312350714688094618e-03, 1.311744250535466609e-03, 1.311135688999333230e-03, 1.310525031184403251e-03, 1.309912278198685108e-03, 1.309297431153584471e-03, 1.308680491163840501e-03, 1.308061459347492237e-03, 1.307440336825950152e-03, 1.306817124723974252e-03, 1.306191824169605558e-03, 1.305564436294262814e-03, 1.304934962232687625e-03, 1.304303403122919524e-03, 1.303669760106354082e-03, 1.303034034327699760e-03, 1.302396226935001108e-03, 1.301756339079589977e-03, 1.301114371916109154e-03, 1.300470326602590860e-03, 1.299824204300304960e-03, 1.299176006173837676e-03, 1.298525733391118478e-03, 1.297873387123384516e-03, 1.297218968545129671e-03, 1.296562478834191500e-03, 1.295903919171706572e-03, 1.295243290742107648e-03, 1.294580594733093322e-03, 1.293915832335693723e-03, 1.293249004744229753e-03, 1.292580113156284894e-03, 1.291909158772719520e-03, 1.291236142797759371e-03, 1.290561066438822724e-03, 1.289883930906668722e-03, 1.289204737415288078e-03, 1.288523487181984827e-03, 1.287840181427343366e-03, 1.287154821375175763e-03, 1.286467408252606756e-03, 1.285777943290027352e-03, 1.285086427721059263e-03, 1.284392862782622342e-03, 1.283697249714905097e-03, 1.282999589761309178e-03, 1.282299884168535895e-03, 1.281598134186541331e-03, 1.280894341068501002e-03, 1.280188506070865581e-03, 1.279480630453356778e-03, 1.278770715478881473e-03, 1.278058762413656615e-03, 1.277344772527064156e-03, 1.276628747091832329e-03, 1.275910687383840277e-03, 1.275190594682205436e-03, 1.274468470269323221e-03, 1.273744315430810209e-03, 1.273018131455465546e-03, 1.272289919635367006e-03, 1.271559681265812007e-03, 1.270827417645268610e-03, 1.270093130075476348e-03, 1.269356819861377703e-03, 1.268618488311139573e-03, 1.267878136736115546e-03, 1.267135766450844811e-03, 1.266391378773183349e-03, 1.265644975024080151e-03, 1.264896556527719687e-03, 1.264146124611505856e-03, 1.263393680606047023e-03, 1.262639225845103982e-03, 1.261882761665665195e-03, 1.261124289407909932e-03, 1.260363810415217594e-03, 1.259601326034098757e-03, 1.258836837614305112e-03, 1.258070346508767014e-03, 1.257301854073562689e-03, 1.256531361667930597e-03, 1.255758870654379153e-03, 1.254984382398485277e-03, 1.254207898269044672e-03, 1.253429419638036908e-03, 1.252648947880546492e-03, 1.251866484374889290e-03, 1.251082030502480248e-03, 1.250295587647933578e-03, 1.249507157199030230e-03, 1.248716740546639177e-03, 1.247924339084842968e-03, 1.247129954210870291e-03, 1.246333587325038289e-03, 1.245535239830863807e-03, 1.244734913135004620e-03, 1.243932608647203278e-03, 1.243128327780388797e-03, 1.242322071950631348e-03, 1.241513842577069392e-03, 1.240703641082044556e-03, 1.239891468890940741e-03, 1.239077327432381442e-03, 1.238261218138008790e-03, 1.237443142442600213e-03, 1.236623101784087948e-03, 1.235801097603515244e-03, 1.234977131344981716e-03, 1.234151204455748293e-03, 1.233323318386184315e-03, 1.232493474589708765e-03, 1.231661674522896302e-03, 1.230827919645397905e-03, 1.229992211419981413e-03, 1.229154551312457372e-03, 1.228314940791770541e-03, 1.227473381329962374e-03, 1.226629874402125489e-03, 1.225784421486408437e-03, 1.224937024064159247e-03, 1.224087683619670859e-03, 1.223236401640399916e-03, 1.222383179616809337e-03, 1.221528019042482371e-03, 1.220670921414070999e-03, 1.219811888231240845e-03, 1.218950920996770930e-03, 1.218088021216495991e-03, 1.217223190399260293e-03, 1.216356430057013256e-03, 1.215487741704761315e-03, 1.214617126860497234e-03, 1.213744587045320449e-03, 1.212870123783372882e-03, 1.211993738601786904e-03, 1.211115433030799824e-03, 1.210235208603610991e-03, 1.209353066856520354e-03, 1.208469009328843897e-03, 1.207583037562860295e-03, 1.206695153104001515e-03, 1.205805357500606056e-03, 1.204913652304059673e-03, 1.204020039068796465e-03, 1.203124519352265264e-03, 1.202227094714873904e-03, 1.201327766720092227e-03, 1.200426536934398082e-03, 1.199523406927217048e-03, 1.198618378271033239e-03, 1.197711452541304301e-03, 1.196802631316511503e-03, 1.195891916178084711e-03, 1.194979308710426239e-03, 1.194064810501036617e-03, 1.193148423140297535e-03, 1.192230148221578093e-03, 1.191309987341276216e-03, 1.190387942098734960e-03, 1.189464014096302136e-03, 1.188538204939234254e-03, 1.187610516235807325e-03, 1.186680949597277400e-03, 1.185749506637788194e-03, 1.184816188974510730e-03, 1.183880998227572652e-03, 1.182943936020012902e-03, 1.182005003977807745e-03, 1.181064203729996530e-03, 1.180121536908423658e-03, 1.179177005147976449e-03, 1.178230610086411240e-03, 1.177282353364469394e-03, 1.176332236625833062e-03, 1.175380261517054714e-03, 1.174426429687675530e-03, 1.173470742790164688e-03, 1.172513202479852574e-03, 1.171553810415044842e-03, 1.170592568256973625e-03, 1.169629477669719688e-03, 1.168664540320339500e-03, 1.167697757878793235e-03, 1.166729132017886887e-03, 1.165758664413396725e-03, 1.164786356743992973e-03, 1.163812210691183647e-03, 1.162836227939452677e-03, 1.161858410176073216e-03, 1.160878759091351796e-03, 1.159897276378354242e-03, 1.158913963733052043e-03, 1.157928822854336444e-03, 1.156941855443976378e-03, 1.155953063206555369e-03, 1.154962447849582768e-03, 1.153970011083421112e-03, 1.152975754621321037e-03, 1.151979680179322611e-03, 1.150981789476399541e-03, 1.149982084234375248e-03, 1.148980566177888393e-03, 1.147977237034399382e-03, 1.146972098534354079e-03, 1.145965152410905168e-03, 1.144956400400072398e-03, 1.143945844240762530e-03, 1.142933485674681084e-03, 1.141919326446406069e-03, 1.140903368303268495e-03, 1.139885612995493762e-03, 1.138866062276128795e-03, 1.137844717900977866e-03, 1.136821581628732038e-03, 1.135796655220890896e-03, 1.134769940441700525e-03, 1.133741439058281444e-03, 1.132711152840565295e-03, 1.131679083561216125e-03, 1.130645232995755502e-03, 1.129609602922515034e-03, 1.128572195122547021e-03, 1.127533011379779938e-03, 1.126492053480845825e-03, 1.125449323215221885e-03, 1.124404822375175625e-03, 1.123358552755670745e-03, 1.122310516154527600e-03, 1.121260714372334082e-03, 1.120209149212371890e-03, 1.119155822480768321e-03, 1.118100735986401724e-03, 1.117043891540852717e-03, 1.115985290958514554e-03, 1.114924936056545203e-03, 1.113862828654777360e-03, 1.112798970575886934e-03, 1.111733363645171432e-03, 1.110666009690841182e-03, 1.109596910543693199e-03, 1.108526068037272517e-03, 1.107453484007984946e-03, 1.106379160294828409e-03, 1.105303098739552530e-03, 1.104225301186668399e-03, 1.103145769483388937e-03, 1.102064505479661422e-03, 1.100981511028079453e-03, 1.099896787984016525e-03, 1.098810338205550349e-03, 1.097722163553389776e-03, 1.096632265891019000e-03, 1.095540647084612554e-03, 1.094447309002997580e-03, 1.093352253517667055e-03, 1.092255482502938087e-03, 1.091156997835647036e-03, 1.090056801395438780e-03, 1.088954895064528187e-03, 1.087851280727884003e-03, 1.086745960273141675e-03, 1.085638935590538300e-03, 1.084530208573041866e-03, 1.083419781116285114e-03, 1.082307655118485736e-03, 1.081193832480587544e-03, 1.080078315106189780e-03, 1.078961104901467963e-03, 1.077842203775305954e-03, 1.076721613639244988e-03, 1.075599336407379817e-03, 1.074475373996540851e-03, 1.073349728326101604e-03, 1.072222401318126796e-03, 1.071093394897312942e-03, 1.069962710990878191e-03, 1.068830351528833817e-03, 1.067696318443660253e-03, 1.066560613670469726e-03, 1.065423239147043986e-03, 1.064284196813758843e-03, 1.063143488613524975e-03, 1.062001116491927783e-03, 1.060857082397118978e-03, 1.059711388279874038e-03, 1.058564036093480104e-03, 1.057415027793882781e-03, 1.056264365339618701e-03, 1.055112050691743965e-03, 1.053958085813870571e-03, 1.052802472672340322e-03, 1.051645213235899998e-03, 1.050486309475902151e-03, 1.049325763366300551e-03, 1.048163576883590119e-03, 1.046999752006849867e-03, 1.045834290717624496e-03, 1.044667195000098525e-03, 1.043498466840989819e-03, 1.042328108229491259e-03, 1.041156121157405185e-03, 1.039982507619079859e-03, 1.038807269611308204e-03, 1.037630409133494334e-03, 1.036451928187566386e-03, 1.035271828777902144e-03, 1.034090112911498389e-03, 1.032906782597760569e-03, 1.031721839848692094e-03, 1.030535286678800014e-03, 1.029347125105017826e-03, 1.028157357146860509e-03, 1.026965984826345600e-03, 1.025773010167901683e-03, 1.024578435198529505e-03, 1.023382261947717187e-03, 1.022184492447364770e-03, 1.020985128731924938e-03, 1.019784172838332113e-03, 1.018581626805913120e-03, 1.017377492676549595e-03, 1.016171772494561332e-03, 1.014964468306759834e-03, 1.013755582162365922e-03, 1.012545116113027291e-03, 1.011333072213005000e-03, 1.010119452518855147e-03, 1.008904259089604075e-03, 1.007687493986772443e-03, 1.006469159274328822e-03, 1.005249257018587779e-03, 1.004027789288385736e-03, 1.002804758154955851e-03, 1.001580165691985267e-03, 1.000354013975504955e-03, 9.991263050840462710e-04, 9.978970410985488031e-04, 9.966662241023170003e-04, 9.954338561810355691e-04, 9.941999394229563899e-04, 9.929644759185663177e-04, 9.917274677607526307e-04, 9.904889170449624088e-04, 9.892488258688365062e-04, 9.880071963325458718e-04, 9.867640305385328575e-04, 9.855193305916981356e-04, 9.842730985993243704e-04, 9.830253366709847118e-04, 9.817760469186997876e-04, 9.805252314568605083e-04, 9.792728924021352598e-04, 9.780190318736320994e-04, 9.767636519928161402e-04, 9.755067548834223806e-04, 9.742483426716142154e-04, 9.729884174859017949e-04, 9.717269814570493255e-04, 9.704640367182713109e-04, 9.691995854050048688e-04, 9.679336296551028281e-04, 9.666661716087372345e-04, 9.653972134083283353e-04, 9.641267571986889950e-04, 9.628548051269598604e-04, 9.615813593424974706e-04, 9.603064219970590051e-04, 9.590299952447001522e-04, 9.577520812416995396e-04, 9.564726821467143180e-04, 9.551918001206658859e-04, 9.539094373267971352e-04, 9.526255959305778009e-04, 9.513402780997348186e-04, 9.500534860044413006e-04, 9.487652218169789157e-04, 9.474754877119000857e-04, 9.461842858661953862e-04, 9.448916184589492041e-04, 9.435974876715337014e-04, 9.423018956876429673e-04, 9.410048446931804783e-04, 9.397063368763467015e-04, 9.384063744274916434e-04, 9.371049595392924418e-04, 9.358020944066693407e-04, 9.344977812266917977e-04, 9.331920221987465361e-04, 9.318848195244438691e-04, 9.305761754075369272e-04, 9.292660920540841800e-04, 9.279545716723557611e-04, 9.266416164727589834e-04, 9.253272286680140884e-04, 9.240114104729389233e-04, 9.226941641046348822e-04, 9.213754917824063494e-04, 9.200553957276626877e-04, 9.187338781640893258e-04, 9.174109413175562510e-04, 9.160865874160365862e-04, 9.147608186897687862e-04, 9.134336373711615534e-04, 9.121050456947071014e-04, 9.107750458971637349e-04, 9.094436402174433092e-04, 9.081108308965354448e-04, 9.067766201777019246e-04, 9.054410103062134497e-04, 9.041040035296917052e-04, 9.027656020977322749e-04, 9.014258082620688972e-04, 9.000846242767469385e-04, 8.987420523977813266e-04, 8.973980948833312158e-04, 8.960527539937502943e-04, 8.947060319915171780e-04, 8.933579311411324114e-04, 8.920084537093098294e-04, 8.906576019648361530e-04, 8.893053781786426550e-04, 8.879517846236718035e-04, 8.865968235750539862e-04, 8.852404973100212087e-04, 8.838828081078291396e-04, 8.825237582498026475e-04, 8.811633500195246689e-04, 8.798015857024484975e-04, 8.784384675862571970e-04, 8.770739979605862626e-04, 8.757081791172285348e-04, 8.743410133500476803e-04, 8.729725029548737834e-04, 8.716026502296856000e-04, 8.702314574745204610e-04, 8.688589269913685621e-04, 8.674850610843624823e-04, 8.661098620596747273e-04, 8.647333322254265476e-04, 8.633554738918619532e-04, 8.619762893712620616e-04, 8.605957809778354848e-04, 8.592139510279139195e-04, 8.578308018398414503e-04, 8.564463357338895477e-04, 8.550605550324612237e-04, 8.536734620598186805e-04, 8.522850591424342660e-04, 8.508953486086017880e-04, 8.495043327886453314e-04, 8.481120140149320513e-04, 8.467183946218243603e-04, 8.453234769455758449e-04, 8.439272633245098335e-04, 8.425297560989336359e-04, 8.411309576110224256e-04, 8.397308702050235033e-04, 8.383294962271110136e-04, 8.369268380254559847e-04, 8.355228979501192095e-04, 8.341176783530858310e-04, 8.327111815884773042e-04, 8.313034100121731180e-04, 8.298943659820224314e-04, 8.284840518578762743e-04, 8.270724700015194596e-04, 8.256596227765681259e-04, 8.242455125486650028e-04, 8.228301416853333683e-04, 8.214135125560533771e-04, 8.199956275321199214e-04, 8.185764889868337758e-04, 8.171560992954005499e-04, 8.157344608348624914e-04, 8.143115759841326393e-04, 8.128874471242025562e-04, 8.114620766377313079e-04, 8.100354669093959856e-04, 8.086076203257509766e-04, 8.071785392751349396e-04, 8.057482261478846096e-04, 8.043166833360825040e-04, 8.028839132337704017e-04, 8.014499182368517655e-04, 8.000147007429936211e-04, 7.985782631518119562e-04, 7.971406078647694802e-04, 7.957017372850844423e-04, 7.942616538179093086e-04, 7.928203598702309070e-04, 7.913778578507828232e-04, 7.899341501702139947e-04, 7.884892392410067447e-04, 7.870431274773656517e-04, 7.855958172954420875e-04, 7.841473111130397482e-04, 7.826976113499945582e-04, 7.812467204277606138e-04, 7.797946407696204098e-04, 7.783413748007234371e-04, 7.768869249480059519e-04, 7.754312936401045646e-04, 7.739744833075294954e-04, 7.725164963825790305e-04, 7.710573352992290425e-04, 7.695970024933256525e-04, 7.681355004024516568e-04, 7.666728314659893018e-04, 7.652089981250109968e-04, 7.637440028223212727e-04, 7.622778480026689597e-04, 7.608105361123553576e-04, 7.593420695994276565e-04, 7.578724509138697572e-04, 7.564016825071742276e-04, 7.549297668327240507e-04, 7.534567063455095389e-04, 7.519825035023349835e-04, 7.505071607617275816e-04, 7.490306805838321596e-04, 7.475530654306089323e-04, 7.460743177657160833e-04, 7.445944400544272576e-04, 7.431134347638052506e-04, 7.416313043626153803e-04, 7.401480513212125136e-04, 7.386636781117416435e-04, 7.371781872080232891e-04, 7.356915810854653499e-04, 7.342038622212797294e-04, 7.327150330942187656e-04, 7.312250961847997690e-04, 7.297340539752020239e-04, 7.282419089491633550e-04, 7.267486635921807051e-04, 7.252543203913938002e-04, 7.237588818354950522e-04, 7.222623504149159332e-04, 7.207647286217256028e-04, 7.192660189495261739e-04, 7.177662238936545914e-04, 7.162653459510672730e-04, 7.147633876202433983e-04, 7.132603514013811496e-04, 7.117562397962582830e-04, 7.102510553082926276e-04, 7.087448004424415793e-04, 7.072374777052289896e-04, 7.057290896049762084e-04, 7.042196386513962679e-04, 7.027091273558244916e-04, 7.011975582312435402e-04, 6.996849337921856159e-04, 6.981712565547917686e-04, 6.966565290366735514e-04, 6.951407537571073101e-04, 6.936239332369364963e-04, 6.921060699984630301e-04, 6.905871665656408307e-04, 6.890672254639757443e-04, 6.875462492204511677e-04, 6.860242403635632849e-04, 6.845012014235425700e-04, 6.829771349319241174e-04, 6.814520434219318830e-04, 6.799259294281894198e-04, 6.783987954869360668e-04, 6.768706441359317568e-04, 6.753414779143472949e-04, 6.738112993629609242e-04, 6.722801110240564110e-04, 6.707479154413162510e-04, 6.692147151600227883e-04, 6.676805127269426401e-04, 6.661453106902388756e-04, 6.646091115996496934e-04, 6.630719180063963719e-04, 6.615337324630733316e-04, 6.599945575238467610e-04, 6.584543957443490152e-04, 6.569132496815724724e-04, 6.553711218941019869e-04, 6.538280149418090360e-04, 6.522839313862495133e-04, 6.507388737902200732e-04, 6.491928447179965474e-04, 6.476458467353519424e-04, 6.460978824094995186e-04, 6.445489543089733117e-04, 6.429990650038330466e-04, 6.414482170655272028e-04, 6.398964130669506940e-04, 6.383436555823095594e-04, 6.367899471873179635e-04, 6.352352904590923780e-04, 6.336796879760770969e-04, 6.321231423180786058e-04, 6.305656560664999865e-04, 6.290072318039204632e-04, 6.274478721143351197e-04, 6.258875795831886184e-04, 6.243263567972595152e-04, 6.227642063447295408e-04, 6.212011308150441717e-04, 6.196371327991086544e-04, 6.180722148891841386e-04, 6.165063796787815338e-04, 6.149396297628617614e-04, 6.133719677377246242e-04, 6.118033962009425614e-04, 6.102339177513895971e-04, 6.086635349894699981e-04, 6.070922505166780883e-04, 6.055200669359629738e-04, 6.039469868515947529e-04, 6.023730128690477472e-04, 6.007981475952461816e-04, 5.992223936382775219e-04, 5.976457536076344680e-04, 5.960682301141031732e-04, 5.944898257696585100e-04, 5.929105431876639971e-04, 5.913303849827686916e-04, 5.897493537707910712e-04, 5.881674521689308870e-04, 5.865846827956558646e-04, 5.850010482705946934e-04, 5.834165512147393385e-04, 5.818311942503425838e-04, 5.802449800007983358e-04, 5.786579110908951105e-04, 5.770699901464827492e-04, 5.754812197948989440e-04, 5.738916026645071505e-04, 5.723011413849327274e-04, 5.707098385870983896e-04, 5.691176969031502657e-04, 5.675247189663455748e-04, 5.659309074112561311e-04, 5.643362648736335776e-04, 5.627407939904628372e-04, 5.611444973998296233e-04, 5.595473777411147289e-04, 5.579494376548921114e-04, 5.563506797828189545e-04, 5.547511067678384143e-04, 5.531507212540729334e-04, 5.515495258867463956e-04, 5.499475233122180610e-04, 5.483447161782252109e-04, 5.467411071334161814e-04, 5.451366988277738532e-04, 5.435314939122883309e-04, 5.419254950392102125e-04, 5.403187048619262313e-04, 5.387111260348591843e-04, 5.371027612136724128e-04, 5.354936130551576955e-04, 5.338836842171275875e-04, 5.322729773586209849e-04, 5.306614951397969817e-04, 5.290492402218158240e-04, 5.274362152670548833e-04, 5.258224229389945985e-04, 5.242078659021100553e-04, 5.225925468221127640e-04, 5.209764683656590081e-04, 5.193596332006019224e-04, 5.177420439958761332e-04, 5.161237034213477046e-04, 5.145046141482094394e-04, 5.128847788485079492e-04, 5.112642001953860826e-04, 5.096428808631215225e-04, 5.080208235270459050e-04, 5.063980308634348807e-04, 5.047745055497181253e-04, 5.031502502643299358e-04, 5.015252676867813309e-04, 4.998995604975057681e-04, 4.982731313780764185e-04, 4.966459830110871209e-04, 4.950181180800824511e-04, 4.933895392695871037e-04, 4.917602492653511386e-04, 4.901302507539159747e-04, 4.884995464228640821e-04, 4.868681389608402318e-04, 4.852360310574565746e-04, 4.836032254033448990e-04, 4.819697246900119447e-04, 4.803355316100579235e-04, 4.787006488570542755e-04, 4.770650791254385016e-04, 4.754288251107212458e-04, 4.737918895093783090e-04, 4.721542750187327419e-04, 4.705159843371697339e-04, 4.688770201640252112e-04, 4.672373851994696104e-04, 4.655970821447603350e-04, 4.639561137019442504e-04, 4.623144825741083513e-04, 4.606721914652680346e-04, 4.590292430802520658e-04, 4.573856401249138900e-04, 4.557413853060236449e-04, 4.540964813311502003e-04, 4.524509309088757753e-04, 4.508047367486833442e-04, 4.491579015608431749e-04, 4.475104280566259284e-04, 4.458623189481884385e-04, 4.442135769484617676e-04, 4.425642047713628435e-04, 4.409142051316463024e-04, 4.392635807449736074e-04, 4.376123343277959002e-04, 4.359604685973887499e-04, 4.343079862721054224e-04, 4.326548900709241722e-04, 4.310011827137137088e-04, 4.293468669212542306e-04, 4.276919454151661927e-04, 4.260364209177908276e-04, 4.243802961524100218e-04, 4.227235738430930095e-04, 4.210662567147658696e-04, 4.194083474930596837e-04, 4.177498489045266172e-04, 4.160907636765255905e-04, 4.144310945371450293e-04, 4.127708442152317045e-04, 4.111100154406474171e-04, 4.094486109438239332e-04, 4.077866334560104533e-04, 4.061240857093110709e-04, 4.044609704365686553e-04, 4.027972903714319630e-04, 4.011330482482081323e-04, 3.994682468020741028e-04, 3.978028887689647798e-04, 3.961369768854576751e-04, 3.944705138889883383e-04, 3.928035025177364068e-04, 3.911359455105102470e-04, 3.894678456069637943e-04, 3.877992055474809778e-04, 3.861300280730612820e-04, 3.844603159255341484e-04, 3.827900718474496877e-04, 3.811192985819552973e-04, 3.794479988730565753e-04, 3.777761754653149897e-04, 3.761038311040982760e-04, 3.744309685354720702e-04, 3.727575905060804846e-04, 3.710836997633619179e-04, 3.694092990554357562e-04, 3.677343911309884235e-04, 3.660589787394885955e-04, 3.643830646310712985e-04, 3.627066515564228758e-04, 3.610297422670011888e-04, 3.593523395148787874e-04, 3.576744460528162020e-04, 3.559960646341424643e-04, 3.543171980127913742e-04, 3.526378489435535220e-04, 3.509580201816304111e-04, 3.492777144828480992e-04, 3.475969346038789180e-04, 3.459156833017880601e-04, 3.442339633342929740e-04, 3.425517774597941012e-04, 3.408691284372576203e-04, 3.391860190262864071e-04, 3.375024519869674342e-04, 3.358184300800909957e-04, 3.341339560670312289e-04, 3.324490327096327603e-04, 3.307636627704290647e-04, 3.290778490125279183e-04, 3.273915941994898606e-04, 3.257049010955532196e-04, 3.240177724655133869e-04, 3.223302110746103849e-04, 3.206422196887821372e-04, 3.189538010743615966e-04, 3.172649579983358691e-04, 3.155756932282284153e-04, 3.138860095319813068e-04, 3.121959096781771071e-04, 3.105053964359205860e-04, 3.088144725747221674e-04, 3.071231408647172637e-04, 3.054314040765530847e-04, 3.037392649812663400e-04, 3.020467263505084276e-04, 3.003537909564245995e-04, 2.986604615715379523e-04, 2.969667409690109365e-04, 2.952726319222970025e-04, 2.935781372055917913e-04, 2.918832595933386841e-04, 2.901880018604461849e-04, 2.884923667825178254e-04, 2.867963571353846571e-04, 2.850999756953731036e-04, 2.834032252393357517e-04, 2.817061085445694401e-04, 2.800086283886987076e-04, 2.783107875498982715e-04, 2.766125888067376068e-04, 2.749140349382499021e-04, 2.732151287237802166e-04, 2.715158729432036217e-04, 2.698162703768091373e-04, 2.681163238052199885e-04, 2.664160360094262403e-04, 2.647154097710448977e-04, 2.630144478718235033e-04, 2.613131530940914372e-04, 2.596115282204106405e-04, 2.579095760338409203e-04, 2.562072993178192231e-04, 2.545047008560402104e-04, 2.528017834326827485e-04, 2.510985498322878271e-04, 2.493950028396430918e-04, 2.476911452400045095e-04, 2.459869798189777564e-04, 2.442825093624009076e-04, 2.425777366565664271e-04, 2.408726644881041827e-04, 2.391672956438613707e-04, 2.374616329111265930e-04, 2.357556790775130887e-04, 2.340494369308352980e-04, 2.323429092593766053e-04, 2.306360988515375162e-04, 2.289290084962904799e-04, 2.272216409826799909e-04, 2.255139991000829330e-04, 2.238060856382456860e-04, 2.220979033871987450e-04, 2.203894551371419033e-04, 2.186807436786658359e-04, 2.169717718026343558e-04, 2.152625423000660999e-04, 2.135530579623571158e-04, 2.118433215811228666e-04, 2.101333359482751280e-04, 2.084231038558973588e-04, 2.067126280962796399e-04, 2.050019114621842492e-04, 2.032909567463794549e-04, 2.015797667419040335e-04, 1.998683442421003383e-04, 1.981566920405337159e-04, 1.964448129308728370e-04, 1.947327097071151843e-04, 1.930203851634294896e-04, 1.913078420942255847e-04, 1.895950832940006606e-04, 1.878821115575610688e-04, 1.861689296799044139e-04, 1.844555404561376154e-04, 1.827419466815127943e-04, 1.810281511516867502e-04, 1.793141566622224450e-04, 1.775999660090042795e-04, 1.758855819880788781e-04, 1.741710073955389168e-04, 1.724562450277836027e-04, 1.707412976812095135e-04, 1.690261681524727038e-04, 1.673108592383704997e-04, 1.655953737357221010e-04, 1.638797144415930925e-04, 1.621638841531755041e-04, 1.604478856676705271e-04, 1.587317217825111012e-04, 1.570153952952442239e-04, 1.552989090034113636e-04, 1.535822657047720486e-04, 1.518654681971870176e-04, 1.501485192784970057e-04, 1.484314217467862327e-04, 1.467141784000345912e-04, 1.449967920365709511e-04, 1.432792654545713914e-04, 1.415616014523241246e-04, 1.398438028282601253e-04, 1.381258723808752038e-04, 1.364078129086084934e-04, 1.346896272100693201e-04, 1.329713180839152842e-04, 1.312528883287359793e-04, 1.295343407432749284e-04, 1.278156781262749500e-04, 1.260969032765481973e-04, 1.243780189928570857e-04, 1.226590280739485266e-04, 1.209399333188172527e-04, 1.192207375262410886e-04, 1.175014434950071696e-04, 1.157820540241369947e-04, 1.140625719123826795e-04, 1.123429999586841096e-04, 1.106233409618182423e-04, 1.089035977206629741e-04, 1.071837730340776345e-04, 1.054638697007841304e-04, 1.037438905195909694e-04, 1.020238382892756372e-04, 1.003037158084629912e-04, 9.858352587585264429e-05, 9.686327129009739904e-05, 9.514295484968576073e-05, 9.342257935316627233e-05, 9.170214759902716806e-05, 8.998166238557906273e-05, 8.826112651121685430e-05, 8.654054277410908643e-05, 8.481991397246173487e-05, 8.309924290439904006e-05, 8.137853236784309296e-05, 7.965778516074027064e-05, 7.793700408094118804e-05, 7.621619192608078516e-05, 7.449535149380483048e-05, 7.277448558164918149e-05, 7.105359698692134912e-05, 6.933268850692503608e-05, 6.761176293884132180e-05, 6.589082307960835664e-05, 6.416987172614770270e-05, 6.244891167520559300e-05, 6.072794572342599324e-05, 5.900697666723020782e-05, 5.728600730285101874e-05, 5.556504042659671591e-05, 5.384407883438621835e-05, 5.212312532201277926e-05, 5.040218268517845013e-05, 4.868125371937368683e-05, 4.696034121994989630e-05, 4.523944798196204430e-05, 4.351857680039305132e-05, 4.179773047003518092e-05, 4.007691178536995755e-05, 3.835612354079417523e-05, 3.663536853049980188e-05, 3.491464954839302329e-05, 3.319396938812816506e-05, 3.147333084337131641e-05, 2.975273670729756525e-05, 2.803218977304634281e-05, 2.631169283337213434e-05, 2.459124868090810286e-05, 2.287086010804655588e-05, 2.115052990681953068e-05, 1.943026086912418981e-05, 1.771005578660337924e-05, 1.598991745052584439e-05, 1.426984865201214225e-05, 1.254985218191483029e-05, 1.082993083069891281e-05, 9.110087388667448217e-06, 7.390324645842074979e-06, 5.670645391843277609e-06, 3.951052416116109088e-06, 2.231548507810512306e-06, 5.121364556618389709e-07, -1.207180951745257382e-06, -2.926400926326479767e-06, -4.645520680042201175e-06, -6.364537425400541052e-06, -8.083448375193380388e-06, -9.802250742462585427e-06, -1.152094174058120468e-05, -1.323951858337297339e-05, -1.495797848488680036e-05, -1.667631865955464303e-05, -1.839453632211930466e-05, -2.011262868779233994e-05, -2.183059297202852739e-05, -2.354842639064533147e-05, -2.526612615990417033e-05, -2.698368949647637864e-05, -2.870111361717971933e-05, -3.041839573944272031e-05, -3.213553308104056958e-05, -3.385252286006177941e-05, -3.556936229502725543e-05, -3.728604860481840729e-05, -3.900257900883496103e-05, -4.071895072676918754e-05, -4.243516097872574756e-05, -4.415120698534094037e-05, -4.586708596755733204e-05, -4.758279514674315316e-05, -4.929833174477357341e-05, -5.101369298399661690e-05, -5.272887608696978239e-05, -5.444387827696246931e-05, -5.615869677753880393e-05, -5.787332881271564823e-05, -5.958777160708188247e-05, -6.130202238553506607e-05, -6.301607837359142451e-05, -6.472993679712381126e-05, -6.644359488247930982e-05, -6.815704985660001383e-05, -6.987029894679649663e-05, -7.158333938086901141e-05, -7.329616838722440898e-05, -7.500878319465298177e-05, -7.672118103244633018e-05, -7.843335913051810210e-05, -8.014531471917761139e-05, -8.185704502924912734e-05, -8.356854729219220746e-05, -8.527981873983726065e-05, -8.699085660473501258e-05, -8.870165811970198114e-05, -9.041222051832086275e-05, -9.212254103467944297e-05, -9.383261690333489916e-05, -9.554244535939572546e-05, -9.725202363864102217e-05, -9.896134897729468353e-05, -1.006704186121839216e-04, -1.023792297806662589e-04, -1.040877797207874017e-04, -1.057960656710562410e-04, -1.075040848705643043e-04, -1.092118345591040291e-04, -1.109193119769448201e-04, -1.126265143649517566e-04, -1.143334389646665276e-04, -1.160400830182728866e-04, -1.177464437683357792e-04, -1.194525184583000217e-04, -1.211583043320375110e-04, -1.228637986341953893e-04, -1.245689986099334369e-04, -1.262739015050420464e-04, -1.279785045660623258e-04, -1.296828050400605976e-04, -1.313868001747484201e-04, -1.330904872186002778e-04, -1.347938634206298557e-04, -1.364969260305085703e-04, -1.381996722986847501e-04, -1.399020994761595584e-04, -1.416042048146040600e-04, -1.433059855664805431e-04, -1.450074389847788147e-04, -1.467085623233241949e-04, -1.484093528365186098e-04, -1.501098077794557606e-04, -1.518099244080801491e-04, -1.535096999787718551e-04, -1.552091317488456495e-04, -1.569082169762896467e-04, -1.586069529197305561e-04, -1.603053368385164341e-04, -1.620033659928319888e-04, -1.637010376434774026e-04, -1.653983490520234006e-04, -1.670952974807417800e-04, -1.687918801927573340e-04, -1.704880944518300358e-04, -1.721839375224692862e-04, -1.738794066700155539e-04, -1.755744991606065489e-04, -1.772692122609170675e-04, -1.789635432386170141e-04, -1.806574893621112465e-04, -1.823510479005063453e-04, -1.840442161237281144e-04, -1.857369913024497251e-04, -1.874293707082494138e-04, -1.891213516133854826e-04, -1.908129312909156159e-04, -1.925041070148152751e-04, -1.941948760597523747e-04, -1.958852357012095798e-04, -1.975751832155971176e-04, -1.992647158800347443e-04, -2.009538309724669147e-04, -2.026425257717804447e-04, -2.043307975575459024e-04, -2.060186436103239225e-04, -2.077060612114031539e-04, -2.093930476429213387e-04, -2.110796001879799121e-04, -2.127657161304235568e-04, -2.144513927549565385e-04, -2.161366273472625906e-04, -2.178214171937793199e-04, -2.195057595818203139e-04, -2.211896517996868143e-04, -2.228730911364521774e-04, -2.245560748820744955e-04, -2.262386003275165369e-04, -2.279206647645231319e-04, -2.296022654857757803e-04, -2.312833997848236960e-04, -2.329640649561981361e-04, -2.346442582953807692e-04, -2.363239770985454458e-04, -2.380032186630128585e-04, -2.396819802869904414e-04, -2.413602592695421756e-04, -2.430380529106647815e-04, -2.447153585114078479e-04, -2.463921733736501888e-04, -2.480684948002566999e-04, -2.497443200950041453e-04, -2.514196465627409685e-04, -2.530944715091604778e-04, -2.547687922409223307e-04, -2.564426060657300005e-04, -2.581159102922966778e-04, -2.597887022300897786e-04, -2.614609791897824602e-04, -2.631327384829974781e-04, -2.648039774222720041e-04, -2.664746933211771052e-04, -2.681448834942434215e-04, -2.698145452571199475e-04, -2.714836759263491149e-04, -2.731522728194867586e-04, -2.748203332552174227e-04, -2.764878545531328571e-04, -2.781548340338511178e-04, -2.798212690191307327e-04, -2.814871568316524523e-04, -2.831524947951345544e-04, -2.848172802344505882e-04, -2.864815104754057581e-04, -2.881451828448599803e-04, -2.898082946708368450e-04, -2.914708432822718108e-04, -2.931328260093129081e-04, -2.947942401830626986e-04, -2.964550831356993271e-04, -2.981153522005856459e-04, -2.997750447120547598e-04, -3.014341580055256565e-04, -3.030926894176182401e-04, -3.047506362859305818e-04, -3.064079959491648503e-04, -3.080647657472324248e-04, -3.097209430210405784e-04, -3.113765251126451882e-04, -3.130315093651770634e-04, -3.146858931229647312e-04, -3.163396737314928581e-04, -3.179928485371544006e-04, -3.196454148876956710e-04, -3.212973701319978156e-04, -3.229487116198620348e-04, -3.245994367024542687e-04, -3.262495427320545832e-04, -3.278990270620195488e-04, -3.295478870469016651e-04, -3.311961200423797552e-04, -3.328437234054047907e-04, -3.344906944939908034e-04, -3.361370306673232516e-04, -3.377827292858806129e-04, -3.394277877112090330e-04, -3.410722033060438647e-04, -3.427159734344235637e-04, -3.443590954614674264e-04, -3.460015667534981055e-04, -3.476433846781500840e-04, -3.492845466041207426e-04, -3.509250499014648830e-04, -3.525648919413449278e-04, -3.542040700961412926e-04, -3.558425817395740329e-04, -3.574804242464774389e-04, -3.591175949929210865e-04, -3.607540913563219440e-04, -3.623899107152293202e-04, -3.640250504494372966e-04, -3.656595079400988936e-04, -3.672932805695143803e-04, -3.689263657212394775e-04, -3.705587607802041865e-04, -3.721904631324569716e-04, -3.738214701655024892e-04, -3.754517792678632444e-04, -3.770813878295581584e-04, -3.787102932418950517e-04, -3.803384928972451304e-04, -3.819659841894927133e-04, -3.835927645137799020e-04, -3.852188312664781749e-04, -3.868441818452616251e-04, -3.884688136492229159e-04, -3.900927240786577414e-04, -3.917159105352141209e-04, -3.933383704218256665e-04, -3.949601011428599561e-04, -3.965811001039041325e-04, -3.982013647118801537e-04, -3.998208923751159173e-04, -4.014396805033225999e-04, -4.030577265073358043e-04, -4.046750277995952647e-04, -4.062915817937156108e-04, -4.079073859048120624e-04, -4.095224375492549662e-04, -4.111367341447795705e-04, -4.127502731106008974e-04, -4.143630518672003710e-04, -4.159750678364380872e-04, -4.175863184416638897e-04, -4.191968011075093660e-04, -4.208065132599939366e-04, -4.224154523266419490e-04, -4.240236157362683848e-04, -4.256310009190915626e-04, -4.272376053068461664e-04, -4.288434263325334450e-04, -4.304484614307136758e-04, -4.320527080372596712e-04, -4.336561635894704576e-04, -4.352588255262119501e-04, -4.368606912875338502e-04, -4.384617583151363403e-04, -4.400620240521246201e-04, -4.416614859429750261e-04, -4.432601414336128764e-04, -4.448579879715247945e-04, -4.464550230055451758e-04, -4.480512439859656915e-04, -4.496466483646559069e-04, -4.512412335948440549e-04, -4.528349971312635664e-04, -4.544279364300946858e-04, -4.560200489490660067e-04, -4.576113321474276378e-04, -4.592017834857043844e-04, -4.607914004261282363e-04, -4.623801804323929049e-04, -4.639681209696197789e-04, -4.655552195044384265e-04, -4.671414735050913834e-04, -4.687268804412293472e-04, -4.703114377840561891e-04, -4.718951430062592943e-04, -4.734779935821575554e-04, -4.750599869874961873e-04, -4.766411206995504308e-04, -4.782213921972044827e-04, -4.798007989609191868e-04, -4.813793384724880881e-04, -4.829570082155028809e-04, -4.845338056749648849e-04, -4.861097283374352616e-04, -4.876847736911403444e-04, -4.892589392257295361e-04, -4.908322224325677727e-04, -4.924046208044810611e-04, -4.939761318358779638e-04, -4.955467530228487493e-04, -4.971164818629670917e-04, -4.986853158553966473e-04, -5.002532525009950300e-04, -5.018202893021158359e-04, -5.033864237627119678e-04, -5.049516533884475245e-04, -5.065159756864894176e-04, -5.080793881656172012e-04, -5.096418883363361537e-04, -5.112034737106263939e-04, -5.127641418022723697e-04, -5.143238901264408870e-04, -5.158827162001411362e-04, -5.174406175419861680e-04, -5.189975916721565729e-04, -5.205536361124789768e-04, -5.221087483865346785e-04, -5.236629260194507239e-04, -5.252161665380093020e-04, -5.267684674707628868e-04, -5.283198263478181564e-04, -5.298702407009865884e-04, -5.314197080637174560e-04, -5.329682259712059233e-04, -5.345157919603609527e-04, -5.360624035695664555e-04, -5.376080583391041300e-04, -5.391527538109454039e-04, -5.406964875285503146e-04, -5.422392570373189705e-04, -5.437810598841853011e-04, -5.453218936179263796e-04, -5.468617557889271508e-04, -5.484006439492857075e-04, -5.499385556529274568e-04, -5.514754884553907735e-04, -5.530114399139453947e-04, -5.545464075876932507e-04, -5.560803890373673458e-04, -5.576133818254392022e-04, -5.591453835162243534e-04, -5.606763916756828505e-04, -5.622064038715249724e-04, -5.637354176733153088e-04, -5.652634306522410666e-04, -5.667904403813870231e-04, -5.683164444355004712e-04, -5.698414403910955200e-04, -5.713654258265682363e-04, -5.728883983219795880e-04, -5.744103554591803440e-04, -5.759312948219011711e-04, -5.774512139955642002e-04, -5.789701105673786524e-04, -5.804879821264540300e-04, -5.820048262635976960e-04, -5.835206405714223185e-04, -5.850354226444439906e-04, -5.865491700788610539e-04, -5.880618804728527955e-04, -5.895735514261797030e-04, -5.910841805406284212e-04, -5.925937654198135595e-04, -5.941023036689755971e-04, -5.956097928953909279e-04, -5.971162307081414678e-04, -5.986216147180828872e-04, -6.001259425379485866e-04, -6.016292117822878965e-04, -6.031314200676061565e-04, -6.046325650121615360e-04, -6.061326442360739962e-04, -6.076316553614263382e-04, -6.091295960120726239e-04, -6.106264638137346703e-04, -6.121222563940792449e-04, -6.136169713826832624e-04, -6.151106064108078373e-04, -6.166031591118358674e-04, -6.180946271208705546e-04, -6.195850080750446185e-04, -6.210742996132892534e-04, -6.225624993764326820e-04, -6.240496050073149727e-04, -6.255356141505812820e-04, -6.270205244527908171e-04, -6.285043335625196178e-04, -6.299870391301611722e-04, -6.314686388080360292e-04, -6.329491302504933886e-04, -6.344285111137083549e-04, -6.359067790557958871e-04, -6.373839317369093529e-04, -6.388599668190411435e-04, -6.403348819661347805e-04, -6.418086748441797834e-04, -6.432813431209861554e-04, -6.447528844664882856e-04, -6.462232965523492150e-04, -6.476925770523960521e-04, -6.491607236423912065e-04, -6.506277339999987780e-04, -6.520936058048629452e-04, -6.535583367387042420e-04, -6.550219244851300396e-04, -6.564843667297283296e-04, -6.579456611601785295e-04, -6.594058054660589287e-04, -6.608647973389748407e-04, -6.623226344724981052e-04, -6.637793145622749658e-04, -6.652348353059902913e-04, -6.666891944031443388e-04, -6.681423895554520652e-04, -6.695944184666100234e-04, -6.710452788422764138e-04, -6.724949683901677942e-04, -6.739434848199985818e-04, -6.753908258436107240e-04, -6.768369891747916603e-04, -6.782819725293656125e-04, -6.797257736253025468e-04, -6.811683901825171632e-04, -6.826098199229801338e-04, -6.840500605707843483e-04, -6.854891098521087014e-04, -6.869269654950023365e-04, -6.883636252298116045e-04, -6.897990867888132782e-04, -6.912333479063657990e-04, -6.926664063189981804e-04, -6.940982597651892657e-04, -6.955289059856360669e-04, -6.969583427230189275e-04, -6.983865677221139535e-04, -6.998135787298872309e-04, -7.012393734953056325e-04, -7.026639497694391664e-04, -7.040873053055593132e-04, -7.055094378589469055e-04, -7.069303451870008730e-04, -7.083500250493246541e-04, -7.097684752075506627e-04, -7.111856934254327713e-04, -7.126016774689433470e-04, -7.140164251060628076e-04, -7.154299341070615142e-04, -7.168422022441212765e-04, -7.182532272917589505e-04, -7.196630070266023336e-04, -7.210715392273605662e-04, -7.224788216748994837e-04, -7.238848521523266180e-04, -7.252896284448183753e-04, -7.266931483397407084e-04, -7.280954096265949060e-04, -7.294964100971432523e-04, -7.308961475452255795e-04, -7.322946197668587977e-04, -7.336918245603003211e-04, -7.350877597260190108e-04, -7.364824230664798526e-04, -7.378758123865338360e-04, -7.392679254932134738e-04, -7.406587601955623651e-04, -7.420483143050492529e-04, -7.434365856351812882e-04, -7.448235720017995845e-04, -7.462092712228596660e-04, -7.475936811185330579e-04, -7.489767995112983591e-04, -7.503586242257626743e-04, -7.517391530887558310e-04, -7.531183839294257895e-04, -7.544963145790599662e-04, -7.558729428711776074e-04, -7.572482666416292113e-04, -7.586222837284111288e-04, -7.599949919717643347e-04, -7.613663892142686447e-04, -7.627364733006301032e-04, -7.641052420779366385e-04, -7.654726933954346087e-04, -7.668388251046342943e-04, -7.682036350594035733e-04, -7.695671211157800295e-04, -7.709292811320777455e-04, -7.722901129689744735e-04, -7.736496144893292718e-04, -7.750077835582906000e-04, -7.763646180433772005e-04, -7.777201158143027832e-04, -7.790742747431038525e-04, -7.804270927040805102e-04, -7.817785675739212471e-04, -7.831286972315222063e-04, -7.844774795580906164e-04, -7.858249124371924962e-04, -7.871709937547389938e-04, -7.885157213987731241e-04, -7.898590932598387225e-04, -7.912011072307662072e-04, -7.925417612066524122e-04, -7.938810530849489504e-04, -7.952189807654101716e-04, -7.965555421502119914e-04, -7.978907351437805866e-04, -7.992245576528781564e-04, -8.005570075867041863e-04, -8.018880828567102664e-04, -8.032177813767042837e-04, -8.045461010629323872e-04, -8.058730398339079013e-04, -8.071985956105094456e-04, -8.085227663160580221e-04, -8.098455498761322671e-04, -8.111669442187963500e-04, -8.124869472743899640e-04, -8.138055569756418419e-04, -8.151227712577381688e-04, -8.164385880581662407e-04, -8.177530053167917680e-04, -8.190660209759687048e-04, -8.203776329803404068e-04, -8.216878392769574836e-04, -8.229966378153527173e-04, -8.243040265473716016e-04, -8.256100034272647161e-04, -8.269145664117835692e-04, -8.282177134599953087e-04, -8.295194425334139095e-04, -8.308197515959471566e-04, -8.321186386139740572e-04, -8.334161015563312878e-04, -8.347121383941065453e-04, -8.360067471009924311e-04, -8.372999256530840300e-04, -8.385916720288621052e-04, -8.398819842092396107e-04, -8.411708601776604621e-04, -8.424582979199321357e-04, -8.437442954243358235e-04, -8.450288506815784029e-04, -8.463119616849077960e-04, -8.475936264299449184e-04, -8.488738429147735590e-04, -8.501526091399937233e-04, -8.514299231087116586e-04, -8.527057828263264827e-04, -8.539801863008810324e-04, -8.552531315428738620e-04, -8.565246165652205378e-04, -8.577946393833550112e-04, -8.590631980151626143e-04, -8.603302904811046354e-04, -8.615959148040560137e-04, -8.628600690093779805e-04, -8.641227511250258297e-04, -8.653839591813660120e-04, -8.666436912112671000e-04, -8.679019452501978002e-04, -8.691587193360457821e-04, -8.704140115092217625e-04, -8.716678198127269421e-04, -8.729201422920090242e-04, -8.741709769950322534e-04, -8.754203219723747775e-04, -8.766681752770277445e-04, -8.779145349646326349e-04, -8.791593990932787322e-04, -8.804027657235930036e-04, -8.816446329188274865e-04, -8.828849987446991520e-04, -8.841238612694662328e-04, -8.853612185640271021e-04, -8.865970687017437658e-04, -8.878314097585403080e-04, -8.890642398129808451e-04, -8.902955569461066783e-04, -8.915253592415556651e-04, -8.927536447855047557e-04, -8.939804116667577055e-04, -8.952056579767205717e-04, -8.964293818092081839e-04, -8.976515812607830649e-04, -8.988722544305658042e-04, -9.000913994202047004e-04, -9.013090143339360424e-04, -9.025250972786735566e-04, -9.037396463638411141e-04, -9.049526597014900418e-04, -9.061641354062440444e-04, -9.073740715954100103e-04, -9.085824663888215609e-04, -9.097893179089222094e-04, -9.109946242808503614e-04, -9.121983836322782035e-04, -9.134005940934899819e-04, -9.146012537974781715e-04, -9.158003608797791106e-04, -9.169979134785519312e-04, -9.181939097346682220e-04, -9.193883477915245706e-04, -9.205812257952581019e-04, -9.217725418945681279e-04, -9.229622942407929081e-04, -9.241504809879913995e-04, -9.253371002927963463e-04, -9.265221503144852955e-04, -9.277056292150715616e-04, -9.288875351591361750e-04, -9.300678663139307729e-04, -9.312466208494360378e-04, -9.324237969382260637e-04, -9.335993927555352517e-04, -9.347734064793545867e-04, -9.359458362902263982e-04, -9.371166803715193141e-04, -9.382859369090837008e-04, -9.394536040916097756e-04, -9.406196801104743004e-04, -9.417841631595797944e-04, -9.429470514356791443e-04, -9.441083431381842427e-04, -9.452680364691575313e-04, -9.464261296333574287e-04, -9.475826208383109723e-04, -9.487375082941836056e-04, -9.498907902138671068e-04, -9.510424648129286312e-04, -9.521925303097381055e-04, -9.533409849252885747e-04, -9.544878268832988769e-04, -9.556330544102579864e-04, -9.567766657353981262e-04, -9.579186590905230296e-04, -9.590590327103503321e-04, -9.601977848321901045e-04, -9.613349136961971478e-04, -9.624704175451761611e-04, -9.636042946246807300e-04, -9.647365431830715477e-04, -9.658671614713868533e-04, -9.669961477434007614e-04, -9.681235002557236598e-04, -9.692492172676327481e-04, -9.703732970411663638e-04, -9.714957378411954309e-04, -9.726165379352671178e-04, -9.737356955937004647e-04, -9.748532090896527358e-04, -9.759690766989446466e-04, -9.770832967002764449e-04, -9.781958673750375255e-04, -9.793067870073957678e-04, -9.804160538844012944e-04, -9.815236662957043615e-04, -9.826296225338942807e-04, -9.837339208943181399e-04, -9.848365596750651915e-04, -9.859375371770136894e-04, -9.870368517039102528e-04, -9.881345015622269683e-04, -9.892304850612348988e-04, -9.903248005130765082e-04, -9.914174462326286186e-04, -9.925084205376017224e-04, -9.935977217484881583e-04, -9.946853481886399565e-04, -9.957712981842582137e-04, -9.968555700642003220e-04, -9.979381621603002420e-04, -9.990190728071850559e-04, -1.000098300342267812e-03, -1.001175843105775063e-03, -1.002251699440846397e-03, -1.003325867693378309e-03, -1.004398346212123736e-03, -1.005469133348656924e-03, -1.006538227457454094e-03, -1.007605626895775918e-03, -1.008671330023716084e-03, -1.009735335204269393e-03, -1.010797640803301175e-03, -1.011858245189395291e-03, -1.012917146734146215e-03, -1.013974343811918340e-03, -1.015029834799935533e-03, -1.016083618078354213e-03, -1.017135692030101584e-03, -1.018186055041067324e-03, -1.019234705499939223e-03, -1.020281641798283191e-03, -1.021326862330602242e-03, -1.022370365494210728e-03, -1.023412149689305025e-03, -1.024452213319030540e-03, -1.025490554789352041e-03, -1.026527172509116318e-03, -1.027562064890131990e-03, -1.028595230347031800e-03, -1.029626667297337895e-03, -1.030656374161545517e-03, -1.031684349362953874e-03, -1.032710591327878642e-03, -1.033735098485377875e-03, -1.034757869267553853e-03, -1.035778902109399987e-03, -1.036798195448769165e-03, -1.037815747726431211e-03, -1.038831557386137071e-03, -1.039845622874494132e-03, -1.040857942641023898e-03, -1.041868515138239838e-03, -1.042877338821519015e-03, -1.043884412149183186e-03, -1.044889733582462154e-03, -1.045893301585567713e-03, -1.046895114625668926e-03, -1.047895171172723424e-03, -1.048893469699783152e-03, -1.049890008682829567e-03, -1.050884786600657633e-03, -1.051877801935166166e-03, -1.052869053171085270e-03, -1.053858538796195775e-03, -1.054846257301152515e-03, -1.055832207179577134e-03, -1.056816386928110564e-03, -1.057798795046284435e-03, -1.058779430036601091e-03, -1.059758290404586500e-03, -1.060735374658671425e-03, -1.061710681310254522e-03, -1.062684208873771949e-03, -1.063655955866567695e-03, -1.064625920808963400e-03, -1.065594102224319724e-03, -1.066560498638898435e-03, -1.067525108582024389e-03, -1.068487930585944583e-03, -1.069448963185893210e-03, -1.070408204920158873e-03, -1.071365654329956658e-03, -1.072321309959495131e-03, -1.073275170356046164e-03, -1.074227234069813092e-03, -1.075177499653992954e-03, -1.076125965664865604e-03, -1.077072630661634993e-03, -1.078017493206526308e-03, -1.078960551864822622e-03, -1.079901805204745843e-03, -1.080841251797632361e-03, -1.081778890217685628e-03, -1.082714719042252851e-03, -1.083648736851705943e-03, -1.084580942229306216e-03, -1.085511333761467190e-03, -1.086439910037611698e-03, -1.087366669650144998e-03, -1.088291611194523072e-03, -1.089214733269214036e-03, -1.090136034475789424e-03, -1.091055513418787582e-03, -1.091973168705785225e-03, -1.092888998947471159e-03, -1.093803002757505125e-03, -1.094715178752596937e-03, -1.095625525552545304e-03, -1.096534041780221347e-03, -1.097440726061413340e-03, -1.098345577025121615e-03, -1.099248593303289246e-03, -1.100149773531000456e-03, -1.101049116346341410e-03, -1.101946620390457671e-03, -1.102842284307616006e-03, -1.103736106745096613e-03, -1.104628086353238873e-03, -1.105518221785515729e-03, -1.106406511698416160e-03, -1.107292954751492014e-03, -1.108177549607447130e-03, -1.109060294931985989e-03, -1.109941189393902393e-03, -1.110820231665132383e-03, -1.111697420420633886e-03, -1.112572754338446131e-03, -1.113446232099766413e-03, -1.114317852388790496e-03, -1.115187613892915574e-03, -1.116055515302486140e-03, -1.116921555311066981e-03, -1.117785732615292262e-03, -1.118648045914864440e-03, -1.119508493912587440e-03, -1.120367075314417614e-03, -1.121223788829374185e-03, -1.122078633169566785e-03, -1.122931607050283278e-03, -1.123782709189861386e-03, -1.124631938309769794e-03, -1.125479293134576267e-03, -1.126324772391998396e-03, -1.127168374812897089e-03, -1.128010099131138231e-03, -1.128849944083821230e-03, -1.129687908411155638e-03, -1.130523990856433826e-03, -1.131358190166098423e-03, -1.132190505089701550e-03, -1.133020934379990255e-03, -1.133849476792775975e-03, -1.134676131087019538e-03, -1.135500896024864989e-03, -1.136323770371543964e-03, -1.137144752895428166e-03, -1.137963842368072079e-03, -1.138781037564189774e-03, -1.139596337261529783e-03, -1.140409740241125122e-03, -1.141221245287076663e-03, -1.142030851186642045e-03, -1.142838556730287275e-03, -1.143644360711559664e-03, -1.144448261927237444e-03, -1.145250259177204655e-03, -1.146050351264500796e-03, -1.146848536995390003e-03, -1.147644815179240481e-03, -1.148439184628588039e-03, -1.149231644159192690e-03, -1.150022192589930659e-03, -1.150810828742840353e-03, -1.151597551443201729e-03, -1.152382359519404454e-03, -1.153165251803017939e-03, -1.153946227128848810e-03, -1.154725284334800605e-03, -1.155502422262060479e-03, -1.156277639754865879e-03, -1.157050935660751097e-03, -1.157822308830413474e-03, -1.158591758117710367e-03, -1.159359282379687555e-03, -1.160124880476629764e-03, -1.160888551271967639e-03, -1.161650293632348870e-03, -1.162410106427587452e-03, -1.163167988530764297e-03, -1.163923938818095180e-03, -1.164677956169005114e-03, -1.165430039466153938e-03, -1.166180187595426991e-03, -1.166928399445806962e-03, -1.167674673909596802e-03, -1.168419009882300892e-03, -1.169161406262538526e-03, -1.169901861952259668e-03, -1.170640375856542422e-03, -1.171376946883755446e-03, -1.172111573945423075e-03, -1.172844255956297316e-03, -1.173574991834406634e-03, -1.174303780500939942e-03, -1.175030620880320115e-03, -1.175755511900239110e-03, -1.176478452491574707e-03, -1.177199441588423897e-03, -1.177918478128173792e-03, -1.178635561051381278e-03, -1.179350689301853460e-03, -1.180063861826669567e-03, -1.180775077576084022e-03, -1.181484335503655029e-03, -1.182191634566130949e-03, -1.182896973723501690e-03, -1.183600351939049231e-03, -1.184301768179251996e-03, -1.185001221413832994e-03, -1.185698710615808822e-03, -1.186394234761400761e-03, -1.187087792830076628e-03, -1.187779383804611491e-03, -1.188469006670972959e-03, -1.189156660418412255e-03, -1.189842344039412827e-03, -1.190526056529765588e-03, -1.191207796888475896e-03, -1.191887564117799113e-03, -1.192565357223302402e-03, -1.193241175213815078e-03, -1.193915017101342515e-03, -1.194586881901255233e-03, -1.195256768632172676e-03, -1.195924676315949326e-03, -1.196590603977725669e-03, -1.197254550645903901e-03, -1.197916515352201059e-03, -1.198576497131563154e-03, -1.199234495022220674e-03, -1.199890508065709193e-03, -1.200544535306819491e-03, -1.201196575793601895e-03, -1.201846628577447592e-03, -1.202494692712984111e-03, -1.203140767258115227e-03, -1.203784851274081451e-03, -1.204426943825348583e-03, -1.205067043979733904e-03, -1.205705150808298850e-03, -1.206341263385384780e-03, -1.206975380788687146e-03, -1.207607502099138823e-03, -1.208237626400974303e-03, -1.208865752781759827e-03, -1.209491880332324003e-03, -1.210116008146793149e-03, -1.210738135322629453e-03, -1.211358260960562891e-03, -1.211976384164617244e-03, -1.212592504042175369e-03, -1.213206619703864923e-03, -1.213818730263652255e-03, -1.214428834838783642e-03, -1.215036932549855113e-03, -1.215643022520771898e-03, -1.216247103878678173e-03, -1.216849175754111667e-03, -1.217449237280907167e-03, -1.218047287596191099e-03, -1.218643325840403861e-03, -1.219237351157347092e-03, -1.219829362694093908e-03, -1.220419359601056762e-03, -1.221007341031952543e-03, -1.221593306143866318e-03, -1.222177254097162004e-03, -1.222759184055526591e-03, -1.223339095186001379e-03, -1.223916986658972429e-03, -1.224492857648066266e-03, -1.225066707330323135e-03, -1.225638534886106142e-03, -1.226208339499067429e-03, -1.226776120356221035e-03, -1.227341876647897135e-03, -1.227905607567797343e-03, -1.228467312312918379e-03, -1.229026990083602810e-03, -1.229584640083565506e-03, -1.230140261519820999e-03, -1.230693853602724897e-03, -1.231245415546014651e-03, -1.231794946566733013e-03, -1.232342445885261642e-03, -1.232887912725374232e-03, -1.233431346314138501e-03, -1.233972745881989699e-03, -1.234512110662726271e-03, -1.235049439893463668e-03, -1.235584732814706778e-03, -1.236117988670283347e-03, -1.236649206707361986e-03, -1.237178386176515264e-03, -1.237705526331619966e-03, -1.238230626429919976e-03, -1.238753685732047307e-03, -1.239274703501950766e-03, -1.239793679006947992e-03, -1.240310611517741286e-03, -1.240825500308362101e-03, -1.241338344656222649e-03, -1.241849143842072532e-03, -1.242357897150058810e-03, -1.242864603867695206e-03, -1.243369263285804428e-03, -1.243871874698630709e-03, -1.244372437403787552e-03, -1.244870950702219340e-03, -1.245367413898254040e-03, -1.245861826299615553e-03, -1.246354187217363872e-03, -1.246844495965950808e-03, -1.247332751863178355e-03, -1.247818954230267650e-03, -1.248303102391772230e-03, -1.248785195675623360e-03, -1.249265233413171007e-03, -1.249743214939096243e-03, -1.250219139591466754e-03, -1.250693006711757222e-03, -1.251164815644802272e-03, -1.251634565738798856e-03, -1.252102256345368489e-03, -1.252567886819478098e-03, -1.253031456519510499e-03, -1.253492964807205630e-03, -1.253952411047692646e-03, -1.254409794609509434e-03, -1.254865114864555991e-03, -1.255318371188124784e-03, -1.255769562958915274e-03, -1.256218689558997494e-03, -1.256665750373820497e-03, -1.257110744792269610e-03, -1.257553672206580559e-03, -1.257994532012383058e-03, -1.258433323608737020e-03, -1.258870046398047121e-03, -1.259304699786172087e-03, -1.259737283182292642e-03, -1.260167795999043994e-03, -1.260596237652462492e-03, -1.261022607561923612e-03, -1.261446905150258833e-03, -1.261869129843685598e-03, -1.262289281071813382e-03, -1.262707358267640230e-03, -1.263123360867605006e-03, -1.263537288311517362e-03, -1.263949140042595464e-03, -1.264358915507458837e-03, -1.264766614156154819e-03, -1.265172235442108039e-03, -1.265575778822159228e-03, -1.265977243756560887e-03, -1.266376629708989210e-03, -1.266773936146473826e-03, -1.267169162539514898e-03, -1.267562308361982071e-03, -1.267953373091181913e-03, -1.268342356207816492e-03, -1.268729257195988589e-03, -1.269114075543246794e-03, -1.269496810740524144e-03, -1.269877462282169344e-03, -1.270256029665963035e-03, -1.270632512393086999e-03, -1.271006909968131968e-03, -1.271379221899127327e-03, -1.271749447697501437e-03, -1.272117586878091389e-03, -1.272483638959185075e-03, -1.272847603462449627e-03, -1.273209479913004058e-03, -1.273569267839373296e-03, -1.273926966773481677e-03, -1.274282576250731006e-03, -1.274636095809866983e-03, -1.274987524993119285e-03, -1.275336863346123069e-03, -1.275684110417927208e-03, -1.276029265760999501e-03, -1.276372328931262880e-03, -1.276713299488029061e-03, -1.277052176994046464e-03, -1.277388961015501079e-03, -1.277723651121991750e-03, -1.278056246886551204e-03, -1.278386747885623719e-03, -1.278715153699105022e-03, -1.279041463910320390e-03, -1.279365678105983230e-03, -1.279687795876276613e-03, -1.280007816814809256e-03, -1.280325740518602944e-03, -1.280641566588112262e-03, -1.280955294627240211e-03, -1.281266924243305025e-03, -1.281576455047062513e-03, -1.281883886652684370e-03, -1.282189218677818460e-03, -1.282492450743497958e-03, -1.282793582474212263e-03, -1.283092613497882704e-03, -1.283389543445878373e-03, -1.283684371952963001e-03, -1.283977098657384727e-03, -1.284267723200784592e-03, -1.284556245228277637e-03, -1.284842664388387420e-03, -1.285126980333083091e-03, -1.285409192717777010e-03, -1.285689301201311304e-03, -1.285967305445963500e-03, -1.286243205117463444e-03, -1.286516999884968577e-03, -1.286788689421068492e-03, -1.287058273401810518e-03, -1.287325751506668498e-03, -1.287591123418555146e-03, -1.287854388823838530e-03, -1.288115547412312361e-03, -1.288374598877208141e-03, -1.288631542915215757e-03, -1.288886379226447925e-03, -1.289139107514487891e-03, -1.289389727486310935e-03, -1.289638238852383470e-03, -1.289884641326601673e-03, -1.290128934626287582e-03, -1.290371118472219240e-03, -1.290611192588626355e-03, -1.290849156703165147e-03, -1.291085010546935696e-03, -1.291318753854507097e-03, -1.291550386363870618e-03, -1.291779907816461388e-03, -1.292007317957168588e-03, -1.292232616534320921e-03, -1.292455803299712202e-03, -1.292676878008537818e-03, -1.292895840419482556e-03, -1.293112690294668556e-03, -1.293327427399635363e-03, -1.293540051503401728e-03, -1.293750562378415299e-03, -1.293958959800586232e-03, -1.294165243549252279e-03, -1.294369413407204595e-03, -1.294571469160693154e-03, -1.294771410599404420e-03, -1.294969237516465678e-03, -1.295164949708474313e-03, -1.295358546975453138e-03, -1.295550029120882268e-03, -1.295739395951690017e-03, -1.295926647278254629e-03, -1.296111782914390184e-03, -1.296294802677384981e-03, -1.296475706387944507e-03, -1.296654493870252585e-03, -1.296831164951915650e-03, -1.297005719464001559e-03, -1.297178157241032654e-03, -1.297348478120974704e-03, -1.297516681945230397e-03, -1.297682768558676859e-03, -1.297846737809617724e-03, -1.298008589549810897e-03, -1.298168323634476574e-03, -1.298325939922268619e-03, -1.298481438275294079e-03, -1.298634818559121209e-03, -1.298786080642744560e-03, -1.298935224398640705e-03, -1.299082249702692565e-03, -1.299227156434270289e-03, -1.299369944476182030e-03, -1.299510613714673080e-03, -1.299649164039452754e-03, -1.299785595343680086e-03, -1.299919907523952329e-03, -1.300052100480324473e-03, -1.300182174116294937e-03, -1.300310128338817489e-03, -1.300435963058297782e-03, -1.300559678188574269e-03, -1.300681273646958971e-03, -1.300800749354191072e-03, -1.300918105234470309e-03, -1.301033341215441152e-03, -1.301146457228206238e-03, -1.301257453207300572e-03, -1.301366329090720801e-03, -1.301473084819903961e-03, -1.301577720339747862e-03, -1.301680235598583549e-03, -1.301780630548201321e-03, -1.301878905143837939e-03, -1.301975059344167521e-03, -1.302069093111327559e-03, -1.302161006410900920e-03, -1.302250799211905445e-03, -1.302338471486815625e-03, -1.302424023211561739e-03, -1.302507454365507515e-03, -1.302588764931462929e-03, -1.302667954895700680e-03, -1.302745024247920196e-03, -1.302819972981284716e-03, -1.302892801092396784e-03, -1.302963508581300419e-03, -1.303032095451499327e-03, -1.303098561709920911e-03, -1.303162907366961802e-03, -1.303225132436450348e-03, -1.303285236935663961e-03, -1.303343220885321962e-03, -1.303399084309597939e-03, -1.303452827236091993e-03, -1.303504449695870853e-03, -1.303553951723428845e-03, -1.303601333356707841e-03, -1.303646594637097910e-03, -1.303689735609426257e-03, -1.303730756321968935e-03, -1.303769656826441088e-03, -1.303806437178000851e-03, -1.303841097435246748e-03, -1.303873637660225718e-03, -1.303904057918418369e-03, -1.303932358278752420e-03, -1.303958538813593596e-03, -1.303982599598748010e-03, -1.304004540713463904e-03, -1.304024362240430559e-03, -1.304042064265773741e-03, -1.304057646879061344e-03, -1.304071110173295146e-03, -1.304082454244923821e-03, -1.304091679193835349e-03, -1.304098785123338150e-03, -1.304103772140203805e-03, -1.304106640354619779e-03, -1.304107389880221303e-03, -1.304106020834079008e-03, -1.304102533336697414e-03, -1.304096927512018609e-03, -1.304089203487420953e-03, -1.304079361393714522e-03, -1.304067401365147181e-03, -1.304053323539393090e-03, -1.304037128057575472e-03, -1.304018815064237995e-03, -1.303998384707363628e-03, -1.303975837138356651e-03, -1.303951172512075830e-03, -1.303924390986789961e-03, -1.303895492724206932e-03, -1.303864477889467213e-03, -1.303831346651138654e-03, -1.303796099181222341e-03, -1.303758735655141752e-03, -1.303719256251755767e-03, -1.303677661153352816e-03, -1.303633950545642637e-03, -1.303588124617763430e-03, -1.303540183562285982e-03, -1.303490127575203470e-03, -1.303437956855933852e-03, -1.303383671607322462e-03, -1.303327272035640933e-03, -1.303268758350577651e-03, -1.303208130765256189e-03, -1.303145389496214489e-03, -1.303080534763418523e-03, -1.303013566790247333e-03, -1.302944485803516662e-03, -1.302873292033449471e-03, -1.302799985713695230e-03, -1.302724567081321467e-03, -1.302647036376821787e-03, -1.302567393844096359e-03, -1.302485639730471215e-03, -1.302401774286691310e-03, -1.302315797766913797e-03, -1.302227710428713022e-03, -1.302137512533083985e-03, -1.302045204344426301e-03, -1.301950786130568697e-03, -1.301854258162741043e-03, -1.301755620715593217e-03, -1.301654874067186213e-03, -1.301552018498993227e-03, -1.301447054295890330e-03, -1.301339981746182711e-03, -1.301230801141568024e-03, -1.301119512777164366e-03, -1.301006116951494230e-03, -1.300890613966481030e-03, -1.300773004127468192e-03, -1.300653287743201800e-03, -1.300531465125829081e-03, -1.300407536590904474e-03, -1.300281502457391802e-03, -1.300153363047656463e-03, -1.300023118687454590e-03, -1.299890769705966441e-03, -1.299756316435761710e-03, -1.299619759212808411e-03, -1.299481098376476353e-03, -1.299340334269547545e-03, -1.299197467238185190e-03, -1.299052497631953632e-03, -1.298905425803829634e-03, -1.298756252110166596e-03, -1.298604976910722533e-03, -1.298451600568648577e-03, -1.298296123450498087e-03, -1.298138545926208866e-03, -1.297978868369107286e-03, -1.297817091155923242e-03, -1.297653214666770211e-03, -1.297487239285153486e-03, -1.297319165397965626e-03, -1.297148993395494691e-03, -1.296976723671407119e-03, -1.296802356622761164e-03, -1.296625892650001260e-03, -1.296447332156956287e-03, -1.296266675550839572e-03, -1.296083923242243897e-03, -1.295899075645151480e-03, -1.295712133176927247e-03, -1.295523096258302141e-03, -1.295331965313407377e-03, -1.295138740769744522e-03, -1.294943423058183326e-03, -1.294746012612987525e-03, -1.294546509871792291e-03, -1.294344915275601193e-03, -1.294141229268797912e-03, -1.293935452299145366e-03, -1.293727584817762517e-03, -1.293517627279158625e-03, -1.293305580141204409e-03, -1.293091443865148965e-03, -1.292875218915596341e-03, -1.292656905760523976e-03, -1.292436504871294183e-03, -1.292214016722606886e-03, -1.291989441792541467e-03, -1.291762780562545924e-03, -1.291534033517429932e-03, -1.291303201145352266e-03, -1.291070283937851594e-03, -1.290835282389815467e-03, -1.290598196999502437e-03, -1.290359028268507798e-03, -1.290117776701803047e-03, -1.289874442807719193e-03, -1.289629027097930923e-03, -1.289381530087452482e-03, -1.289131952294697960e-03, -1.288880294241393030e-03, -1.288626556452617672e-03, -1.288370739456825252e-03, -1.288112843785795469e-03, -1.287852869974679890e-03, -1.287590818561945788e-03, -1.287326690089431874e-03, -1.287060485102321187e-03, -1.286792204149117243e-03, -1.286521847781688923e-03, -1.286249416555248137e-03, -1.285974911028325536e-03, -1.285698331762814318e-03, -1.285419679323940734e-03, -1.285138954280253465e-03, -1.284856157203654193e-03, -1.284571288669377658e-03, -1.284284349255982761e-03, -1.283995339545379458e-03, -1.283704260122782350e-03, -1.283411111576759911e-03, -1.283115894499206513e-03, -1.282818609485332452e-03, -1.282519257133685631e-03, -1.282217838046145275e-03, -1.281914352827896340e-03, -1.281608802087465726e-03, -1.281301186436703196e-03, -1.280991506490753188e-03, -1.280679762868117046e-03, -1.280365956190593606e-03, -1.280050087083305435e-03, -1.279732156174688638e-03, -1.279412164096485052e-03, -1.279090111483783014e-03, -1.278765998974951005e-03, -1.278439827211674297e-03, -1.278111596838962978e-03, -1.277781308505135469e-03, -1.277448962861795542e-03, -1.277114560563876551e-03, -1.276778102269608478e-03, -1.276439588640538095e-03, -1.276099020341487983e-03, -1.275756398040609006e-03, -1.275411722409345618e-03, -1.275064994122424369e-03, -1.274716213857890771e-03, -1.274365382297086525e-03, -1.274012500124629358e-03, -1.273657568028447283e-03, -1.273300586699771010e-03, -1.272941556833085807e-03, -1.272580479126213249e-03, -1.272217354280218192e-03, -1.271852182999486406e-03, -1.271484965991685973e-03, -1.271115703967747122e-03, -1.270744397641907549e-03, -1.270371047731683363e-03, -1.269995654957857805e-03, -1.269618220044499467e-03, -1.269238743718973999e-03, -1.268857226711890985e-03, -1.268473669757157066e-03, -1.268088073591953392e-03, -1.267700438956716105e-03, -1.267310766595185993e-03, -1.266919057254314168e-03, -1.266525311684398893e-03, -1.266129530638947665e-03, -1.265731714874743143e-03, -1.265331865151842925e-03, -1.264929982233578250e-03, -1.264526066886506074e-03, -1.264120119880473691e-03, -1.263712141988585337e-03, -1.263302133987181160e-03, -1.262890096655876031e-03, -1.262476030777532005e-03, -1.262059937138279358e-03, -1.261641816527458906e-03, -1.261221669737703751e-03, -1.260799497564882689e-03, -1.260375300808105848e-03, -1.259949080269703653e-03, -1.259520836755323751e-03, -1.259090571073774459e-03, -1.258658284037159417e-03, -1.258223976460785213e-03, -1.257787649163224272e-03, -1.257349302966281673e-03, -1.256908938694975423e-03, -1.256466557177575482e-03, -1.256022159245589456e-03, -1.255575745733731804e-03, -1.255127317479965256e-03, -1.254676875325481944e-03, -1.254224420114675000e-03, -1.253769952695187994e-03, -1.253313473917887612e-03, -1.252854984636827011e-03, -1.252394485709323879e-03, -1.251931977995877606e-03, -1.251467462360222188e-03, -1.251000939669316692e-03, -1.250532410793287570e-03, -1.250061876605547710e-03, -1.249589337982653318e-03, -1.249114795804378945e-03, -1.248638250953737440e-03, -1.248159704316933322e-03, -1.247679156783347608e-03, -1.247196609245599178e-03, -1.246712062599503136e-03, -1.246225517744037640e-03, -1.245736975581418059e-03, -1.245246437017037558e-03, -1.244753902959496589e-03, -1.244259374320567327e-03, -1.243762852015197146e-03, -1.243264336961587540e-03, -1.242763830081066844e-03, -1.242261332298154200e-03, -1.241756844540578206e-03, -1.241250367739245688e-03, -1.240741902828215249e-03, -1.240231450744752996e-03, -1.239719012429289389e-03, -1.239204588825443525e-03, -1.238688180879980423e-03, -1.238169789542859379e-03, -1.237649415767217700e-03, -1.237127060509335364e-03, -1.236602724728646293e-03, -1.236076409387816847e-03, -1.235548115452603365e-03, -1.235017843891972507e-03, -1.234485595678007147e-03, -1.233951371785984219e-03, -1.233415173194339154e-03, -1.232877000884620563e-03, -1.232336855841565477e-03, -1.231794739053066389e-03, -1.231250651510119431e-03, -1.230704594206919779e-03, -1.230156568140794437e-03, -1.229606574312180987e-03, -1.229054613724695237e-03, -1.228500687385095666e-03, -1.227944796303240488e-03, -1.227386941492159423e-03, -1.226827123968017488e-03, -1.226265344750077698e-03, -1.225701604860778482e-03, -1.225135905325631545e-03, -1.224568247173357183e-03, -1.223998631435727720e-03, -1.223427059147656195e-03, -1.222853531347194633e-03, -1.222278049075517991e-03, -1.221700613376885134e-03, -1.221121225298701062e-03, -1.220539885891491327e-03, -1.219956596208854761e-03, -1.219371357307536333e-03, -1.218784170247376409e-03, -1.218195036091337426e-03, -1.217603955905457915e-03, -1.217010930758871375e-03, -1.216415961723880858e-03, -1.215819049875821282e-03, -1.215220196293116672e-03, -1.214619402057365597e-03, -1.214016668253171168e-03, -1.213411995968287620e-03, -1.212805386293518400e-03, -1.212196840322773625e-03, -1.211586359153069004e-03, -1.210973943884454274e-03, -1.210359595620096691e-03, -1.209743315466252182e-03, -1.209125104532208323e-03, -1.208504963930367819e-03, -1.207882894776210556e-03, -1.207258898188247201e-03, -1.206632975288095310e-03, -1.206005127200440730e-03, -1.205375355053001606e-03, -1.204743659976601237e-03, -1.204110043105078307e-03, -1.203474505575371448e-03, -1.202837048527474577e-03, -1.202197673104397641e-03, -1.201556380452246421e-03, -1.200913171720172871e-03, -1.200268048060344327e-03, -1.199621010628012033e-03, -1.198972060581473187e-03, -1.198321199082028445e-03, -1.197668427294058032e-03, -1.197013746384987263e-03, -1.196357157525229512e-03, -1.195698661888293119e-03, -1.195038260650651283e-03, -1.194375954991901871e-03, -1.193711746094589833e-03, -1.193045635144282437e-03, -1.192377623329666202e-03, -1.191707711842353041e-03, -1.191035901876999741e-03, -1.190362194631305361e-03, -1.189686591305966126e-03, -1.189009093104713595e-03, -1.188329701234247440e-03, -1.187648416904316540e-03, -1.186965241327684511e-03, -1.186280175720065512e-03, -1.185593221300230721e-03, -1.184904379289949570e-03, -1.184213650913957215e-03, -1.183521037399979910e-03, -1.182826539978820441e-03, -1.182130159884168391e-03, -1.181431898352785321e-03, -1.180731756624356886e-03, -1.180029735941600386e-03, -1.179325837550216196e-03, -1.178620062698841576e-03, -1.177912412639137195e-03, -1.177202888625750263e-03, -1.176491491916244712e-03, -1.175778223771207446e-03, -1.175063085454197166e-03, -1.174346078231698620e-03, -1.173627203373201313e-03, -1.172906462151163294e-03, -1.172183855840956300e-03, -1.171459385720975037e-03, -1.170733053072510986e-03, -1.170004859179850408e-03, -1.169274805330241173e-03, -1.168542892813810791e-03, -1.167809122923747040e-03, -1.167073496956100211e-03, -1.166336016209860733e-03, -1.165596681987009480e-03, -1.164855495592453157e-03, -1.164112458333998274e-03, -1.163367571522429212e-03, -1.162620836471456396e-03, -1.161872254497688106e-03, -1.161121826920690110e-03, -1.160369555062945764e-03, -1.159615440249883766e-03, -1.158859483809810721e-03, -1.158101687073943235e-03, -1.157342051376503318e-03, -1.156580578054537331e-03, -1.155817268448016593e-03, -1.155052123899850611e-03, -1.154285145755844146e-03, -1.153516335364718030e-03, -1.152745694078052136e-03, -1.151973223250368642e-03, -1.151198924239093006e-03, -1.150422798404491078e-03, -1.149644847109769930e-03, -1.148865071721034926e-03, -1.148083473607239410e-03, -1.147300054140206176e-03, -1.146514814694740659e-03, -1.145727756648413876e-03, -1.144938881381746959e-03, -1.144148190278123332e-03, -1.143355684723758574e-03, -1.142561366107808403e-03, -1.141765235822225343e-03, -1.140967295261878858e-03, -1.140167545824506343e-03, -1.139365988910648721e-03, -1.138562625923762337e-03, -1.137757458270159325e-03, -1.136950487358949491e-03, -1.136141714602154594e-03, -1.135331141414635267e-03, -1.134518769214057192e-03, -1.133704599420972195e-03, -1.132888633458780953e-03, -1.132070872753669893e-03, -1.131251318734730017e-03, -1.130429972833795794e-03, -1.129606836485666120e-03, -1.128781911127855597e-03, -1.127955198200726811e-03, -1.127126699147498788e-03, -1.126296415414214467e-03, -1.125464348449681500e-03, -1.124630499705581979e-03, -1.123794870636387428e-03, -1.122957462699406949e-03, -1.122118277354696141e-03, -1.121277316065181140e-03, -1.120434580296580766e-03, -1.119590071517389401e-03, -1.118743791198876982e-03, -1.117895740815220192e-03, -1.117045921843281067e-03, -1.116194335762712812e-03, -1.115340984056066489e-03, -1.114485868208552489e-03, -1.113628989708251738e-03, -1.112770350045960222e-03, -1.111909950715302825e-03, -1.111047793212684978e-03, -1.110183879037221098e-03, -1.109318209690863611e-03, -1.108450786678321417e-03, -1.107581611507023464e-03, -1.106710685687208300e-03, -1.105838010731885045e-03, -1.104963588156754892e-03, -1.104087419480335357e-03, -1.103209506223896529e-03, -1.102329849911400789e-03, -1.101448452069632693e-03, -1.100565314228050661e-03, -1.099680437918898208e-03, -1.098793824677177710e-03, -1.097905476040554997e-03, -1.097015393549495522e-03, -1.096123578747196063e-03, -1.095230033179517065e-03, -1.094334758395111877e-03, -1.093437755945353678e-03, -1.092539027384279099e-03, -1.091638574268696208e-03, -1.090736398158115988e-03, -1.089832500614774241e-03, -1.088926883203588216e-03, -1.088019547492149889e-03, -1.087110495050885341e-03, -1.086199727452797151e-03, -1.085287246273588429e-03, -1.084373053091779908e-03, -1.083457149488461450e-03, -1.082539537047442742e-03, -1.081620217355254389e-03, -1.080699192001094346e-03, -1.079776462576864790e-03, -1.078852030677086241e-03, -1.077925897899015967e-03, -1.076998065842590079e-03, -1.076068536110352846e-03, -1.075137310307577691e-03, -1.074204390042205392e-03, -1.073269776924781196e-03, -1.072333472568569096e-03, -1.071395478589490897e-03, -1.070455796606067673e-03, -1.069514428239548781e-03, -1.068571375113754008e-03, -1.067626638855210825e-03, -1.066680221093090205e-03, -1.065732123459148077e-03, -1.064782347587833527e-03, -1.063830895116234373e-03, -1.062877767684011678e-03, -1.061922966933510123e-03, -1.060966494509713986e-03, -1.060008352060161059e-03, -1.059048541235078607e-03, -1.058087063687306820e-03, -1.057123921072240704e-03, -1.056159115047956929e-03, -1.055192647275114953e-03, -1.054224519417005807e-03, -1.053254733139482278e-03, -1.052283290110977336e-03, -1.051310192002648768e-03, -1.050335440488130460e-03, -1.049359037243657736e-03, -1.048380983948110721e-03, -1.047401282282950591e-03, -1.046419933932161463e-03, -1.045436940582370518e-03, -1.044452303922765611e-03, -1.043466025645132991e-03, -1.042478107443760380e-03, -1.041488551015579437e-03, -1.040497358060081838e-03, -1.039504530279281762e-03, -1.038510069377739098e-03, -1.037513977062691495e-03, -1.036516255043812588e-03, -1.035516905033344922e-03, -1.034515928746125102e-03, -1.033513327899512457e-03, -1.032509104213436089e-03, -1.031503259410298601e-03, -1.030495795215107934e-03, -1.029486713355399303e-03, -1.028476015561189012e-03, -1.027463703565074417e-03, -1.026449779102181882e-03, -1.025434243910102166e-03, -1.024417099729004908e-03, -1.023398348301583554e-03, -1.022377991372969488e-03, -1.021356030690882301e-03, -1.020332468005541535e-03, -1.019307305069615732e-03, -1.018280543638352097e-03, -1.017252185469419727e-03, -1.016222232323042967e-03, -1.015190685961940694e-03, -1.014157548151260399e-03, -1.013122820658697229e-03, -1.012086505254437179e-03, -1.011048603711071003e-03, -1.010009117803750342e-03, -1.008968049310085590e-03, -1.007925400010100574e-03, -1.006881171686357240e-03, -1.005835366123854170e-03, -1.004787985110085560e-03, -1.003739030434951020e-03, -1.002688503890788313e-03, -1.001636407272526227e-03, -1.000582742377410057e-03, -9.995275110051473223e-04, -9.984707149579474458e-04, -9.974123560404523671e-04, -9.963524360596812471e-04, -9.952909568251505981e-04, -9.942279201487916676e-04, -9.931633278449873009e-04, -9.920971817304726284e-04, -9.910294836244862033e-04, -9.899602353486739413e-04, -9.888894387270648345e-04, -9.878170955860653135e-04, -9.867432077546437787e-04, -9.856677770640088088e-04, -9.845908053478678520e-04, -9.835122944423294305e-04, -9.824322461858270294e-04, -9.813506624192921361e-04, -9.802675449859408682e-04, -9.791828957314613249e-04, -9.780967165039266328e-04, -9.770090091537142821e-04, -9.759197755336549871e-04, -9.748290174989624303e-04, -9.737367369071427310e-04, -9.726429356181516550e-04, -9.715476154943070109e-04, -9.704507784002222972e-04, -9.693524262029399501e-04, -9.682525607718614133e-04, -9.671511839786728695e-04, -9.660482976975070038e-04, -9.649439038047209587e-04, -9.638380041791880931e-04, -9.627306007019792271e-04, -9.616216952565253802e-04, -9.605112897286455275e-04, -9.593993860064836069e-04, -9.582859859804504065e-04, -9.571710915433425011e-04, -9.560547045902914034e-04, -9.549368270186612152e-04, -9.538174607282232922e-04, -9.526966076210185508e-04, -9.515742696014363976e-04, -9.504504485760862514e-04, -9.493251464539702571e-04, -9.481983651463739976e-04, -9.470701065668444846e-04, -9.459403726311854969e-04, -9.448091652576504594e-04, -9.436764863665989683e-04, -9.425423378808002592e-04, -9.414067217252061748e-04, -9.402696398271179158e-04, -9.391310941161131820e-04, -9.379910865239621471e-04, -9.368496189847837999e-04, -9.357066934349522703e-04, -9.345623118130374140e-04, -9.334164760599328575e-04, -9.322691881187913790e-04, -9.311204499349413173e-04, -9.299702634560348897e-04, -9.288186306319652511e-04, -9.276655534147947198e-04, -9.265110337589221780e-04, -9.253550736208836875e-04, -9.241976749595138185e-04, -9.230388397358866692e-04, -9.218785699131924836e-04, -9.207168674570197610e-04, -9.195537343350284774e-04, -9.183891725171108725e-04, -9.172231839754297223e-04, -9.160557706843487332e-04, -9.148869346203653214e-04, -9.137166777622513425e-04, -9.125450020909779561e-04, -9.113719095896333352e-04, -9.101974022435784656e-04, -9.090214820403277754e-04, -9.078441509696126696e-04, -9.066654110232952269e-04, -9.054852641953839215e-04, -9.043037124822236828e-04, -9.031207578821678168e-04, -9.019364023957718605e-04, -9.007506480258004131e-04, -8.995634967771835508e-04, -8.983749506569281389e-04, -8.971850116742767760e-04, -8.959936818405943868e-04, -8.948009631694185282e-04, -8.936068576763547648e-04, -8.924113673792298659e-04, -8.912144942980046360e-04, -8.900162404547204637e-04, -8.888166078735268601e-04, -8.876155985808544977e-04, -8.864132146050753133e-04, -8.852094579768150827e-04, -8.840043307287079582e-04, -8.827978348955800234e-04, -8.815899725143736161e-04, -8.803807456240499672e-04, -8.791701562657599622e-04, -8.779582064827501408e-04, -8.767448983202827915e-04, -8.755302338257980399e-04, -8.743142150488223416e-04, -8.730968440408868421e-04, -8.718781228556859953e-04, -8.706580535489951648e-04, -8.694366381785836699e-04, -8.682138788043735136e-04, -8.669897774883567661e-04, -8.657643362945056844e-04, -8.645375572889677602e-04, -8.633094425398087643e-04, -8.620799941173433196e-04, -8.608492140937722354e-04, -8.596171045433696409e-04, -8.583836675425122586e-04, -8.571489051696161952e-04, -8.559128195050499889e-04, -8.546754126313038527e-04, -8.534366866328920971e-04, -8.521966435962782110e-04, -8.509552856100321798e-04, -8.497126147647090545e-04, -8.484686331529177989e-04, -8.472233428692195912e-04, -8.459767460101560131e-04, -8.447288446744440982e-04, -8.434796409626328564e-04, -8.422291369773009240e-04, -8.409773348230808500e-04, -8.397242366065584820e-04, -8.384698444363473425e-04, -8.372141604229560311e-04, -8.359571866789583354e-04, -8.346989253189053028e-04, -8.334393784592415396e-04, -8.321785482184606859e-04, -8.309164367170276781e-04, -8.296530460772825804e-04, -8.283883784236164421e-04, -8.271224358823678650e-04, -8.258552205817487352e-04, -8.245867346520075044e-04, -8.233169802253269493e-04, -8.220459594357606373e-04, -8.207736744194042309e-04, -8.195001273141772373e-04, -8.182253202600191407e-04, -8.169492553987917158e-04, -8.156719348741981465e-04, -8.143933608319482579e-04, -8.131135354196671180e-04, -8.118324607868060254e-04, -8.105501390848147882e-04, -8.092665724670485916e-04, -8.079817630886773584e-04, -8.066957131068574864e-04, -8.054084246806398001e-04, -8.041198999708795616e-04, -8.028301411404363975e-04, -8.015391503539131147e-04, -8.002469297779889841e-04, -7.989534815810497024e-04, -7.976588079333577202e-04, -7.963629110072135715e-04, -7.950657929766132654e-04, -7.937674560174442021e-04, -7.924679023075106507e-04, -7.911671340264441951e-04, -7.898651533557533898e-04, -7.885619624787112199e-04, -7.872575635805205505e-04, -7.859519588482248966e-04, -7.846451504706185428e-04, -7.833371406384154623e-04, -7.820279315441608457e-04, -7.807175253821653981e-04, -7.794059243485323366e-04, -7.780931306413647972e-04, -7.767791464603673911e-04, -7.754639740072121227e-04, -7.741476154852527025e-04, -7.728300730997393272e-04, -7.715113490577199095e-04, -7.701914455679568106e-04, -7.688703648410843755e-04, -7.675481090895350982e-04, -7.662246805274304431e-04, -7.649000813707709052e-04, -7.635743138373260724e-04, -7.622473801465590561e-04, -7.609192825197886884e-04, -7.595900231800963888e-04, -7.582596043522492942e-04, -7.569280282628821884e-04, -7.555952971402737223e-04, -7.542614132145385349e-04, -7.529263787175419264e-04, -7.515901958827768013e-04, -7.502528669456828576e-04, -7.489143941432602853e-04, -7.475747797142704527e-04, -7.462340258992681066e-04, -7.448921349405255871e-04, -7.435491090819563911e-04, -7.422049505692797540e-04, -7.408596616499281678e-04, -7.395132445729568496e-04, -7.381657015892187325e-04, -7.368170349512383720e-04, -7.354672469132696264e-04, -7.341163397312055593e-04, -7.327643156626001235e-04, -7.314111769668719910e-04, -7.300569259049525129e-04, -7.287015647394767554e-04, -7.273450957348193873e-04, -7.259875211570006792e-04, -7.246288432737373530e-04, -7.232690643543220185e-04, -7.219081866698023918e-04, -7.205462124928821996e-04, -7.191831440978305396e-04, -7.178189837606578465e-04, -7.164537337590160372e-04, -7.150873963721497218e-04, -7.137199738809042260e-04, -7.123514685679467693e-04, -7.109818827173598884e-04, -7.096112186150106086e-04, -7.082394785482673582e-04, -7.068666648062069428e-04, -7.054927796795242316e-04, -7.041178254604382649e-04, -7.027418044428641007e-04, -7.013647189223229340e-04, -6.999865711958508071e-04, -6.986073635621639502e-04, -6.972270983215799606e-04, -6.958457777759105740e-04, -6.944634042286438116e-04, -6.930799799848549663e-04, -6.916955073510988334e-04, -6.903099886356043246e-04, -6.889234261481660482e-04, -6.875358222000533441e-04, -6.861471791042212699e-04, -6.847574991750343459e-04, -6.833667847286205473e-04, -6.819750380824819670e-04, -6.805822615556944176e-04, -6.791884574689377885e-04, -6.777936281444370660e-04, -6.763977759058561893e-04, -6.750009030784847501e-04, -6.736030119891096238e-04, -6.722041049660761177e-04, -6.708041843391512535e-04, -6.694032524397158877e-04, -6.680013116006623631e-04, -6.665983641563298905e-04, -6.651944124425321955e-04, -6.637894587967670948e-04, -6.623835055578497109e-04, -6.609765550660830170e-04, -6.595686096634449701e-04, -6.581596716931881154e-04, -6.567497435001963969e-04, -6.553388274307071684e-04, -6.539269258325292261e-04, -6.525140410549365574e-04, -6.511001754485785682e-04, -6.496853313656590851e-04, -6.482695111598397531e-04, -6.468527171861463603e-04, -6.454349518011449124e-04, -6.440162173628475239e-04, -6.425965162306212369e-04, -6.411758507653557470e-04, -6.397542233293878342e-04, -6.383316362863774391e-04, -6.369080920015482471e-04, -6.354835928414131682e-04, -6.340581411740059230e-04, -6.326317393687707789e-04, -6.312043897964689839e-04, -6.297760948293648154e-04, -6.283468568411233399e-04, -6.269166782067196655e-04, -6.254855613026120888e-04, -6.240535085066580695e-04, -6.226205221980015813e-04, -6.211866047572690277e-04, -6.197517585664308977e-04, -6.183159860088714797e-04, -6.168792894692749123e-04, -6.154416713336702868e-04, -6.140031339896335257e-04, -6.125636798259158269e-04, -6.111233112326201712e-04, -6.096820306013933351e-04, -6.082398403250436009e-04, -6.067967427977480560e-04, -6.053527404150910824e-04, -6.039078355739630919e-04, -6.024620306726174469e-04, -6.010153281105352603e-04, -5.995677302886256478e-04, -5.981192396091127537e-04, -5.966698584754426184e-04, -5.952195892924687934e-04, -5.937684344663551970e-04, -5.923163964044715971e-04, -5.908634775155849729e-04, -5.894096802097590097e-04, -5.879550068982532674e-04, -5.864994599937465268e-04, -5.850430419100680155e-04, -5.835857550624274758e-04, -5.821276018673127075e-04, -5.806685847423850508e-04, -5.792087061066683628e-04, -5.777479683804543666e-04, -5.762863739852003026e-04, -5.748239253437107494e-04, -5.733606248800481768e-04, -5.718964750194211648e-04, -5.704314781883867156e-04, -5.689656368147352197e-04, -5.674989533273994916e-04, -5.660314301566751879e-04, -5.645630697339537683e-04, -5.630938744919502864e-04, -5.616238468646004992e-04, -5.601529892869231732e-04, -5.586813041953826416e-04, -5.572087940274513288e-04, -5.557354612218380835e-04, -5.542613082185204876e-04, -5.527863374586703717e-04, -5.513105513845532012e-04, -5.498339524397220400e-04, -5.483565430688785557e-04, -5.468783257179403489e-04, -5.453993028339001146e-04, -5.439194768650226428e-04, -5.424388502607372644e-04, -5.409574254715772456e-04, -5.394752049491958329e-04, -5.379921911466041280e-04, -5.365083865177651618e-04, -5.350237935178240711e-04, -5.335384146031337937e-04, -5.320522522311541295e-04, -5.305653088605116969e-04, -5.290775869508714544e-04, -5.275890889631175461e-04, -5.260998173592601685e-04, -5.246097746023304026e-04, -5.231189631565717930e-04, -5.216273854873420103e-04, -5.201350440610010700e-04, -5.186419413451159215e-04, -5.171480798083515941e-04, -5.156534619203645116e-04, -5.141580901520075150e-04, -5.126619669752156957e-04, -5.111650948629059988e-04, -5.096674762892117357e-04, -5.081691137292025347e-04, -5.066700096591192880e-04, -5.051701665562727782e-04, -5.036695868989310302e-04, -5.021682731665214061e-04, -5.006662278395263054e-04, -4.991634533993766958e-04, -4.976599523286521489e-04, -4.961557271109688421e-04, -4.946507802308859917e-04, -4.931451141740913601e-04, -4.916387314272713683e-04, -4.901316344781698597e-04, -4.886238258154858597e-04, -4.871153079289027954e-04, -4.856060833093169362e-04, -4.840961544484305478e-04, -4.825855238389868381e-04, -4.810741939747960869e-04, -4.795621673506628960e-04, -4.780494464622875262e-04, -4.765360338064559046e-04, -4.750219318809061585e-04, -4.735071431843881928e-04, -4.719916702165299536e-04, -4.704755154780296570e-04, -4.689586814705544709e-04, -4.674411706966663548e-04, -4.659229856598567552e-04, -4.644041288647691372e-04, -4.628846028167649790e-04, -4.613644100222900695e-04, -4.598435529887279238e-04, -4.583220342243057833e-04, -4.567998562383148169e-04, -4.552770215408455758e-04, -4.537535326430140498e-04, -4.522293920568601854e-04, -4.507046022952400084e-04, -4.491791658720245745e-04, -4.476530853019961031e-04, -4.461263631007400987e-04, -4.445990017848431642e-04, -4.430710038717955305e-04, -4.415423718798720657e-04, -4.400131083283425563e-04, -4.384832157373611179e-04, -4.369526966278606487e-04, -4.354215535217869086e-04, -4.338897889417876784e-04, -4.323574054116180346e-04, -4.308244054556931157e-04, -4.292907915993211723e-04, -4.277565663687359293e-04, -4.262217322910230783e-04, -4.246862918940122358e-04, -4.231502477064797438e-04, -4.216136022580422010e-04, -4.200763580790461450e-04, -4.185385177007763281e-04, -4.170000836553051753e-04, -4.154610584755665100e-04, -4.139214446952065854e-04, -4.123812448487901359e-04, -4.108404614716922834e-04, -4.092990971000265996e-04, -4.077571542706726450e-04, -4.062146355215125963e-04, -4.046715433909864519e-04, -4.031278804184889046e-04, -4.015836491440700476e-04, -4.000388521086560632e-04, -3.984934918539560908e-04, -3.969475709223470837e-04, -3.954010918570761220e-04, -3.938540572021558407e-04, -3.923064695022571483e-04, -3.907583313029081235e-04, -3.892096451503900402e-04, -3.876604135916256405e-04, -3.861106391743902291e-04, -3.845603244471927900e-04, -3.830094719591761320e-04, -3.814580842603525397e-04, -3.799061639013224232e-04, -3.783537134335123006e-04, -3.768007354090662691e-04, -3.752472323807404578e-04, -3.736932069021041479e-04, -3.721386615274305384e-04, -3.705835988115941814e-04, -3.690280213102686314e-04, -3.674719315798193812e-04, -3.659153321772003740e-04, -3.643582256601517080e-04, -3.628006145870950111e-04, -3.612425015170239902e-04, -3.596838890097102132e-04, -3.581247796255559285e-04, -3.565651759256638874e-04, -3.550050804717266471e-04, -3.534444958260567660e-04, -3.518834245518270083e-04, -3.503218692126491320e-04, -3.487598323728111657e-04, -3.471973165973116704e-04, -3.456343244517807545e-04, -3.440708585023754488e-04, -3.425069213159858674e-04, -3.409425154600843953e-04, -3.393776435027976248e-04, -3.378123080127639461e-04, -3.362465115593323353e-04, -3.346802567124559404e-04, -3.331135460426219328e-04, -3.315463821208777459e-04, -3.299787675190713875e-04, -3.284107048093973767e-04, -3.268421965648062467e-04, -3.252732453586881746e-04, -3.237038537651166017e-04, -3.221340243587334710e-04, -3.205637597146443842e-04, -3.189930624086217818e-04, -3.174219350169965766e-04, -3.158503801165506554e-04, -3.142784002847193539e-04, -3.127059980994841199e-04, -3.111331761392650700e-04, -3.095599369831221622e-04, -3.079862832106505712e-04, -3.064122174018682021e-04, -3.048377421374243992e-04, -3.032628599984871893e-04, -3.016875735666375716e-04, -3.001118854241079884e-04, -2.985357981534635151e-04, -2.969593143380191698e-04, -2.953824365613780430e-04, -2.938051674076743217e-04, -2.922275094616035387e-04, -2.906494653083463529e-04, -2.890710375334636529e-04, -2.874922287230971345e-04, -2.859130414638640246e-04, -2.843334783427465466e-04, -2.827535419472965638e-04, -2.811732348654931153e-04, -2.795925596858073051e-04, -2.780115189970930691e-04, -2.764301153886183460e-04, -2.748483514503056069e-04, -2.732662297723064695e-04, -2.716837529452457512e-04, -2.701009235602481952e-04, -2.685177442088308632e-04, -2.669342174829713861e-04, -2.653503459749594821e-04, -2.637661322776050699e-04, -2.621815789841289808e-04, -2.605966886880539419e-04, -2.590114639834085151e-04, -2.574259074646201946e-04, -2.558400217264050346e-04, -2.542538093639720763e-04, -2.526672729729186680e-04, -2.510804151491145093e-04, -2.494932384889139926e-04, -2.479057455890417653e-04, -2.463179390464866406e-04, -2.447298214587416399e-04, -2.431413954235188478e-04, -2.415526635389914870e-04, -2.399636284036838721e-04, -2.383742926163610919e-04, -2.367846587762384501e-04, -2.351947294828681933e-04, -2.336045073360312806e-04, -2.320139949359453335e-04, -2.304231948831525023e-04, -2.288321097784112900e-04, -2.272407422229039326e-04, -2.256490948181248896e-04, -2.240571701657720978e-04, -2.224649708679884779e-04, -2.208724995270412814e-04, -2.192797587457411619e-04, -2.176867511269780825e-04, -2.160934792739303497e-04, -2.144999457902706935e-04, -2.129061532797403924e-04, -2.113121043463888553e-04, -2.097178015946078548e-04, -2.081232476290206682e-04, -2.065284450545477250e-04, -2.049333964762595900e-04, -2.033381044995890869e-04, -2.017425717302162103e-04, -2.001468007739614946e-04, -1.985507942369914432e-04, -1.969545547257100810e-04, -1.953580848466818405e-04, -1.937613872066643050e-04, -1.921644644128521809e-04, -1.905673190724103592e-04, -1.889699537928974857e-04, -1.873723711819412160e-04, -1.857745738474814558e-04, -1.841765643976626726e-04, -1.825783454407189162e-04, -1.809799195851863763e-04, -1.793812894397907884e-04, -1.777824576133367907e-04, -1.761834267149168772e-04, -1.745841993538006461e-04, -1.729847781393239949e-04, -1.713851656810977744e-04, -1.697853645888980681e-04, -1.681853774725535432e-04, -1.665852069421908598e-04, -1.649848556079461649e-04, -1.633843260802100676e-04, -1.617836209695162105e-04, -1.601827428863940078e-04, -1.585816944417571420e-04, -1.569804782464362999e-04, -1.553790969114230639e-04, -1.537775530479028178e-04, -1.521758492671784182e-04, -1.505739881805585499e-04, -1.489719723995691170e-04, -1.473698045358386979e-04, -1.457674872009923745e-04, -1.441650230068561582e-04, -1.425624145653131168e-04, -1.409596644883705674e-04, -1.393567753880474555e-04, -1.377537498764062570e-04, -1.361505905657986861e-04, -1.345473000684337486e-04, -1.329438809966216879e-04, -1.313403359628074324e-04, -1.297366675794574319e-04, -1.281328784591286669e-04, -1.265289712143195442e-04, -1.249249484576814512e-04, -1.233208128019073276e-04, -1.217165668596186505e-04, -1.201122132435776399e-04, -1.185077545665744208e-04, -1.169031934413518873e-04, -1.152985324806365757e-04, -1.136937742973860251e-04, -1.120889215043180441e-04, -1.104839767143364360e-04, -1.088789425402050473e-04, -1.072738215947937999e-04, -1.056686164909664090e-04, -1.040633298414695497e-04, -1.024579642591438438e-04, -1.008525223568103969e-04, -9.924700674716076634e-05, -9.764142004296766191e-05, -9.603576485697144349e-05, -9.443004380177092837e-05, -9.282425949003191045e-05, -9.121841453437659869e-05, -8.961251154727183587e-05, -8.800655314123939318e-05, -8.640054192874444645e-05, -8.479448052208387622e-05, -8.318837153363304573e-05, -8.158221757551880552e-05, -7.997602126004462267e-05, -7.836978519922217833e-05, -7.676351200501619417e-05, -7.515720428937728366e-05, -7.355086466416521770e-05, -7.194449574103788873e-05, -7.033810013166118518e-05, -6.873168044756243445e-05, -6.712523930019679674e-05, -6.551877930080070799e-05, -6.391230306060202541e-05, -6.230581319070835464e-05, -6.069931230203104715e-05, -5.909280300531749596e-05, -5.748628791139637537e-05, -5.587976963074513915e-05, -5.427325077369948842e-05, -5.266673395066424895e-05, -5.106022177164389812e-05, -4.945371684666788380e-05, -4.784722178546411693e-05, -4.624073919770558004e-05, -4.463427169289817335e-05, -4.302782188026965855e-05, -4.142139236897976365e-05, -3.981498576800881508e-05, -3.820860468604622749e-05, -3.660225173170068993e-05, -3.499592951338879112e-05, -3.338964063922336700e-05, -3.178338771722407312e-05, -3.017717335520582361e-05, -2.857100016066678631e-05, -2.696487074103527936e-05, -2.535878770337894746e-05, -2.375275365465093344e-05, -2.214677120157848995e-05, -2.054084295055129316e-05, -1.893497150783198123e-05, -1.732915947944472544e-05, -1.572340947106317790e-05, -1.411772408822148946e-05, -1.251210593620253020e-05, -1.090655761992616234e-05, -9.301081744159924515e-06, -7.695680913371722497e-06, -6.090357731796953227e-06, -4.485114803327080149e-06, -2.879954731541173757e-06, -1.274880119952271973e-06, 3.301064284264316919e-07, 1.935002310870982186e-06, 3.539804924736105560e-06, 5.144511667888999736e-06, 6.749119938462926806e-06, 8.353627134825694823e-06, 9.958030655691222209e-06, 1.156232790005212918e-05, 1.316651626732714095e-05, 1.477059315715061531e-05, 1.637455596948400198e-05, 1.797840210472750866e-05, 1.958212896350946768e-05, 2.118573394679816802e-05, 2.278921445601297081e-05, 2.439256789281434682e-05, 2.599579165921486824e-05, 2.759888315769126776e-05, 2.920183979093785712e-05, 3.080465896215704924e-05, 3.240733807481306817e-05, 3.400987453274364558e-05, 3.561226574027120912e-05, 3.721450910199305880e-05, 3.881660202289201659e-05, 4.041854190844868200e-05, 4.202032616443049379e-05, 4.362195219700377546e-05, 4.522341741284462206e-05, 4.682471921892898507e-05, 4.842585502264379636e-05, 5.002682223189882396e-05, 5.162761825487996865e-05, 5.322824050034006730e-05, 5.482868637735290772e-05, 5.642895329542373600e-05, 5.802903866463773115e-05, 5.962893989526967209e-05, 6.122865439825389176e-05, 6.282817958493786513e-05, 6.442751286704992029e-05, 6.602665165677657595e-05, 6.762559336687209326e-05, 6.922433541044949591e-05, 7.082287520112691024e-05, 7.242121015296140187e-05, 7.401933768059452978e-05, 7.561725519904306824e-05, 7.721496012381031369e-05, 7.881244987096214152e-05, 8.040972185709366685e-05, 8.200677349908622063e-05, 8.360360221453720870e-05, 8.520020542151620691e-05, 8.679658053853259777e-05, 8.839272498464760910e-05, 8.998863617940621265e-05, 9.158431154298393858e-05, 9.317974849597807172e-05, 9.477494445951806397e-05, 9.636989685537633978e-05, 9.796460310575968208e-05, 9.955906063341880450e-05, 1.011532668617611761e-04, 1.027472192146394666e-04, 1.043409151164643436e-04, 1.059343519923143165e-04, 1.075275272677269050e-04, 1.091204383688086996e-04, 1.107130827223481453e-04, 1.123054577555675443e-04, 1.138975608964153975e-04, 1.154893895733185015e-04, 1.170809412152949632e-04, 1.186722132520637041e-04, 1.202632031138359416e-04, 1.218539082314251670e-04, 1.234443260363596729e-04, 1.250344539606708350e-04, 1.266242894370066285e-04, 1.282138298987400751e-04, 1.298030727797620386e-04, 1.313920155146256949e-04, 1.329806555384811003e-04, 1.345689902871856174e-04, 1.361570171972710909e-04, 1.377447337057020166e-04, 1.393321372503028793e-04, 1.409192252695160236e-04, 1.425059952023695613e-04, 1.440924444885515040e-04, 1.456785705685216255e-04, 1.472643708833025900e-04, 1.488498428746251004e-04, 1.504349839848617611e-04, 1.520197916571733917e-04, 1.536042633352987456e-04, 1.551883964636675925e-04, 1.567721884874735769e-04, 1.583556368526434265e-04, 1.599387390055931151e-04, 1.615214923936932295e-04, 1.631038944648823430e-04, 1.646859426678138163e-04, 1.662676344519648409e-04, 1.678489672673935782e-04, 1.694299385650273944e-04, 1.710105457964160151e-04, 1.725907864138466127e-04, 1.741706578704493814e-04, 1.757501576199914839e-04, 1.773292831169888330e-04, 1.789080318168121807e-04, 1.804864011754833697e-04, 1.820643886497825062e-04, 1.836419916973596063e-04, 1.852192077765265645e-04, 1.867960343463662240e-04, 1.883724688668428305e-04, 1.899485087985600649e-04, 1.915241516030812084e-04, 1.930993947425110467e-04, 1.946742356799581746e-04, 1.962486718792908055e-04, 1.978227008051088270e-04, 1.993963199228144633e-04, 2.009695266987245716e-04, 2.025423185998629901e-04, 2.041146930940710184e-04, 2.056866476501135067e-04, 2.072581797374766790e-04, 2.088292868265102450e-04, 2.103999663883602070e-04, 2.119702158950812637e-04, 2.135400328196028485e-04, 2.151094146354895205e-04, 2.166783588173653479e-04, 2.182468628407061755e-04, 2.198149241816372309e-04, 2.213825403173867821e-04, 2.229497087258756850e-04, 2.245164268860336731e-04, 2.260826922775581763e-04, 2.276485023810240964e-04, 2.292138546779934197e-04, 2.307787466508075930e-04, 2.323431757826978675e-04, 2.339071395578943972e-04, 2.354706354614196978e-04, 2.370336609791978265e-04, 2.385962135981634796e-04, 2.401582908060561022e-04, 2.417198900915286343e-04, 2.432810089442565265e-04, 2.448416448546988640e-04, 2.464017953143767892e-04, 2.479614578156399377e-04, 2.495206298517706027e-04, 2.510793089170923996e-04, 2.526374925067684956e-04, 2.541951781169045550e-04, 2.557523632446647485e-04, 2.573090453880611471e-04, 2.588652220460612211e-04, 2.604208907187020058e-04, 2.619760489068817186e-04, 2.635306941124672571e-04, 2.650848238384045713e-04, 2.666384355885123938e-04, 2.681915268676278484e-04, 2.697440951815383080e-04, 2.712961380370902480e-04, 2.728476529421591606e-04, 2.743986374054113546e-04, 2.759490889367213740e-04, 2.774990050469358042e-04, 2.790483832478426432e-04, 2.805972210522427509e-04, 2.821455159740596783e-04, 2.836932655281335070e-04, 2.852404672303671075e-04, 2.867871185976563170e-04, 2.883332171480361438e-04, 2.898787604004744440e-04, 2.914237458749824555e-04, 2.929681710926850002e-04, 2.945120335757911022e-04, 2.960553308473575776e-04, 2.975980604317392491e-04, 2.991402198541803651e-04, 3.006818066411285294e-04, 3.022228183199986173e-04, 3.037632524192770750e-04, 3.053031064686339180e-04, 3.068423779987148898e-04, 3.083810645412512368e-04, 3.099191636291673160e-04, 3.114566727963782281e-04, 3.129935895778954732e-04, 3.145299115099354256e-04, 3.160656361297155574e-04, 3.176007609755632927e-04, 3.191352835870210126e-04, 3.206692015046469415e-04, 3.222025122701178751e-04, 3.237352134263395522e-04, 3.252673025172090520e-04, 3.267987770879282367e-04, 3.283296346845942485e-04, 3.298598728546514591e-04, 3.313894891466539214e-04, 3.329184811102341981e-04, 3.344468462961803948e-04, 3.359745822565369361e-04, 3.375016865444049646e-04, 3.390281567140534169e-04, 3.405539903210170896e-04, 3.420791849219034894e-04, 3.436037380745279781e-04, 3.451276473378528950e-04, 3.466509102720910984e-04, 3.481735244386774506e-04, 3.496954874000339801e-04, 3.512167967199823120e-04, 3.527374499635082335e-04, 3.542574446967336672e-04, 3.557767784870200498e-04, 3.572954489029071291e-04, 3.588134535142498984e-04, 3.603307898920212176e-04, 3.618474556084160594e-04, 3.633634482369561347e-04, 3.648787653522934894e-04, 3.663934045303122024e-04, 3.679073633482053641e-04, 3.694206393844379427e-04, 3.709332302185190471e-04, 3.724451334314440106e-04, 3.739563466053275509e-04, 3.754668673235391331e-04, 3.769766931708132870e-04, 3.784858217330117330e-04, 3.799942505974028355e-04, 3.815019773524242711e-04, 3.830089995877903643e-04, 3.845153148945985020e-04, 3.860209208651274723e-04, 3.875258150929437699e-04, 3.890299951730094748e-04, 3.905334587014790723e-04, 3.920362032758068979e-04, 3.935382264948515457e-04, 3.950395259586783267e-04, 3.965400992686637861e-04, 3.980399440275989736e-04, 3.995390578394611100e-04, 4.010374383097158632e-04, 4.025350830449210180e-04, 4.040319896531675294e-04, 4.055281557438433836e-04, 4.070235789276101246e-04, 4.085182568164685032e-04, 4.100121870238665174e-04, 4.115053671645013829e-04, 4.129977948544558174e-04, 4.144894677111365662e-04, 4.159803833534094397e-04, 4.174705394014070303e-04, 4.189599334766278080e-04, 4.204485632020441618e-04, 4.219364262019017673e-04, 4.234235201018290377e-04, 4.249098425289005491e-04, 4.263953911116153024e-04, 4.278801634796583616e-04, 4.293641572643479786e-04, 4.308473700982315109e-04, 4.323297996153901371e-04, 4.338114434512134509e-04, 4.352922992425006170e-04, 4.367723646275627745e-04, 4.382516372460303739e-04, 4.397301147389518394e-04, 4.412077947489035073e-04, 4.426846749197886144e-04, 4.441607528969411653e-04, 4.456360263272344602e-04, 4.471104928588796510e-04, 4.485841501415302034e-04, 4.500569958263889625e-04, 4.515290275659745610e-04, 4.530002430143945298e-04, 4.544706398271155558e-04, 4.559402156610650714e-04, 4.574089681747696532e-04, 4.588768950279946868e-04, 4.603439938821757174e-04, 4.618102624001909837e-04, 4.632756982463374028e-04, 4.647402990863928039e-04, 4.662040625877236972e-04, 4.676669864190899015e-04, 4.691290682507469464e-04, 4.705903057545450063e-04, 4.720506966037434473e-04, 4.735102384731375161e-04, 4.749689290390022331e-04, 4.764267659791899699e-04, 4.778837469731072479e-04, 4.793398697014793577e-04, 4.807951318467619767e-04, 4.822495310928976570e-04, 4.837030651253036283e-04, 4.851557316309585343e-04, 4.866075282983550526e-04, 4.880584528176236565e-04, 4.895085028803435306e-04, 4.909576761796484966e-04, 4.924059704103193880e-04, 4.938533832686022289e-04, 4.952999124523010423e-04, 4.967455556608530928e-04, 4.981903105952961448e-04, 4.996341749580433811e-04, 5.010771464533180604e-04, 5.025192227867545302e-04, 5.039604016657046230e-04, 5.054006807990078049e-04, 5.068400578970958014e-04, 5.082785306720933195e-04, 5.097160968376216990e-04, 5.111527541089097180e-04, 5.125885002028858582e-04, 5.140233328379881358e-04, 5.154572497342736065e-04, 5.168902486135058599e-04, 5.183223271989759098e-04, 5.197534832155959773e-04, 5.211837143900054179e-04, 5.226130184503730708e-04, 5.240413931265061132e-04, 5.254688361499423258e-04, 5.268953452537368303e-04, 5.283209181727466924e-04, 5.297455526432555710e-04, 5.311692464033912443e-04, 5.325919971929025899e-04, 5.340138027531382255e-04, 5.354346608271071161e-04, 5.368545691595827656e-04, 5.382735254969095787e-04, 5.396915275871408792e-04, 5.411085731799746175e-04, 5.425246600268843417e-04, 5.439397858809342330e-04, 5.453539484968728890e-04, 5.467671456312088929e-04, 5.481793750421762269e-04, 5.495906344895123367e-04, 5.510009217348539731e-04, 5.524102345415079921e-04, 5.538185706744282611e-04, 5.552259279003142131e-04, 5.566323039875464449e-04, 5.580376967063259289e-04, 5.594421038284754953e-04, 5.608455231275505295e-04, 5.622479523789283102e-04, 5.636493893596275983e-04, 5.650498318484028538e-04, 5.664492776258461511e-04, 5.678477244741961423e-04, 5.692451701774437671e-04, 5.706416125214219164e-04, 5.720370492936288154e-04, 5.734314782833138929e-04, 5.748248972815930315e-04, 5.762173040812100435e-04, 5.776086964768154192e-04, 5.789990722647280191e-04, 5.803884292430504330e-04, 5.817767652117507293e-04, 5.831640779724948367e-04, 5.845503653287271008e-04, 5.859356250857783791e-04, 5.873198550506841115e-04, 5.887030530322691054e-04, 5.900852168412536788e-04, 5.914663442900741164e-04, 5.928464331929958605e-04, 5.942254813660702512e-04, 5.956034866272253824e-04, 5.969804467962321667e-04, 5.983563596945016974e-04, 5.997312231454539865e-04, 6.011050349743344082e-04, 6.024777930080380591e-04, 6.038494950754778445e-04, 6.052201390073729502e-04, 6.065897226362241233e-04, 6.079582437964081059e-04, 6.093257003241170280e-04, 6.106920900574895963e-04, 6.120574108364259126e-04, 6.134216605026841839e-04, 6.147848368999792772e-04, 6.161469378737973205e-04, 6.175079612714932812e-04, 6.188679049423870260e-04, 6.202267667375808502e-04, 6.215845445100590073e-04, 6.229412361147756375e-04, 6.242968394084503960e-04, 6.256513522498153256e-04, 6.270047724994044129e-04, 6.283570980196403252e-04, 6.297083266749451064e-04, 6.310584563315472986e-04, 6.324074848575829888e-04, 6.337554101231864488e-04, 6.351022300003172048e-04, 6.364479423628490503e-04, 6.377925450866653474e-04, 6.391360360494801338e-04, 6.404784131309372184e-04, 6.418196742126972432e-04, 6.431598171782351540e-04, 6.444988399130795924e-04, 6.458367403046137278e-04, 6.471735162421550546e-04, 6.485091656170933029e-04, 6.498436863225572633e-04, 6.511770762538060748e-04, 6.525093333080258292e-04, 6.538404553843025742e-04, 6.551704403836840045e-04, 6.564992862092741124e-04, 6.578269907660540781e-04, 6.591535519610113979e-04, 6.604789677030783015e-04, 6.618032359032522067e-04, 6.631263544744277769e-04, 6.644483213314817055e-04, 6.657691343913437311e-04, 6.670887915729573894e-04, 6.684072907970948314e-04, 6.697246299866935768e-04, 6.710408070666717658e-04, 6.723558199638885857e-04, 6.736696666072441260e-04, 6.749823449276188799e-04, 6.762938528579970181e-04, 6.776041883332921574e-04, 6.789133492904448307e-04, 6.802213336684982724e-04, 6.815281394084450042e-04, 6.828337644533032710e-04, 6.841382067482145108e-04, 6.854414642402730266e-04, 6.867435348786087111e-04, 6.880444166144887444e-04, 6.893441074011065007e-04, 6.906426051938264685e-04, 6.919399079499729405e-04, 6.932360136289348555e-04, 6.945309201922437526e-04, 6.958246256034085388e-04, 6.971171278280054780e-04, 6.984084248337665531e-04, 6.996985145904069696e-04, 7.009873950697219748e-04, 7.022750642456763049e-04, 7.035615200942201952e-04, 7.048467605933954154e-04, 7.061307837234233071e-04, 7.074135874665213363e-04, 7.086951698070359084e-04, 7.099755287313846887e-04, 7.112546622281416039e-04, 7.125325682880136397e-04, 7.138092449036425409e-04, 7.150846900699582608e-04, 7.163589017839681926e-04, 7.176318780447455683e-04, 7.189036168534808499e-04, 7.201741162135760549e-04, 7.214433741304715009e-04, 7.227113886117652848e-04, 7.239781576671648188e-04, 7.252436793085922147e-04, 7.265079515500277255e-04, 7.277709724075908434e-04, 7.290327398996064362e-04, 7.302932520465718960e-04, 7.315525068709681630e-04, 7.328105023976288959e-04, 7.340672366534327755e-04, 7.353227076674169124e-04, 7.365769134708700884e-04, 7.378298520971302270e-04, 7.390815215818241114e-04, 7.403319199626608432e-04, 7.415810452795302881e-04, 7.428288955745833075e-04, 7.440754688920670672e-04, 7.453207632784187133e-04, 7.465647767823450605e-04, 7.478075074546581191e-04, 7.490489533483673601e-04, 7.502891125187624403e-04, 7.515279830232502465e-04, 7.527655629214379451e-04, 7.540018502752294767e-04, 7.552368431486203163e-04, 7.564705396079591995e-04, 7.577029377216186337e-04, 7.589340355603517094e-04, 7.601638311971120133e-04, 7.613923227070136220e-04, 7.626195081674062371e-04, 7.638453856579478264e-04, 7.650699532604500171e-04, 7.662932090589597359e-04, 7.675151511398456200e-04, 7.687357775916389647e-04, 7.699550865051394332e-04, 7.711730759733707126e-04, 7.723897440916639972e-04, 7.736050889576308841e-04, 7.748191086709748298e-04, 7.760318013338247597e-04, 7.772431650505740638e-04, 7.784531979277179662e-04, 7.796618980742116376e-04, 7.808692636011450427e-04, 7.820752926219944751e-04, 7.832799832524290273e-04, 7.844833336104043743e-04, 7.856853418162367160e-04, 7.868860059924495795e-04, 7.880853242638557847e-04, 7.892832947576426629e-04, 7.904799156032121365e-04, 7.916751849322630104e-04, 7.928691008788799847e-04, 7.940616615793660371e-04, 7.952528651723349057e-04, 7.964427097987924033e-04, 7.976311936019439726e-04, 7.988183147274293067e-04, 8.000040713231106049e-04, 8.011884615391883652e-04, 8.023714835282548356e-04, 8.035531354451567543e-04, 8.047334154470688582e-04, 8.059123216935772582e-04, 8.070898523465313374e-04, 8.082660055701090199e-04, 8.094407795309168426e-04, 8.106141723978236386e-04, 8.117861823420470567e-04, 8.129568075372337922e-04, 8.141260461593020524e-04, 8.152938963865596260e-04, 8.164603563996349284e-04, 8.176254243815804339e-04, 8.187890985178340785e-04, 8.199513769960471970e-04, 8.211122580063960142e-04, 8.222717397414060041e-04, 8.234298203959220745e-04, 8.245864981671676558e-04, 8.257417712548282933e-04, 8.268956378608970396e-04, 8.280480961897769120e-04, 8.291991444482318865e-04, 8.303487808455020398e-04, 8.314970035931381004e-04, 8.326438109050960995e-04, 8.337892009977826901e-04, 8.349331720900264164e-04, 8.360757224029154080e-04, 8.372168501601270863e-04, 8.383565535876169985e-04, 8.394948309138595098e-04, 8.406316803696694531e-04, 8.417671001882843108e-04, 8.429010886054397840e-04, 8.440336438592163778e-04, 8.451647641901267882e-04, 8.462944478411911454e-04, 8.474226930577843583e-04, 8.485494980877206824e-04, 8.496748611813252769e-04, 8.507987805912926079e-04, 8.519212545727578977e-04, 8.530422813833879805e-04, 8.541618592832130345e-04, 8.552799865347197146e-04, 8.563966614029280226e-04, 8.575118821552118716e-04, 8.586256470615320812e-04, 8.597379543941389805e-04, 8.608488024278986451e-04, 8.619581894401177977e-04, 8.630661137105262448e-04, 8.641725735213283757e-04, 8.652775671572800328e-04, 8.663810929055388915e-04, 8.674831490557483775e-04, 8.685837339001071643e-04, 8.696828457332279015e-04, 8.707804828522394550e-04, 8.718766435567385517e-04, 8.729713261488585181e-04, 8.740645289332655936e-04, 8.751562502169752669e-04, 8.762464883096484801e-04, 8.773352415234316002e-04, 8.784225081729308323e-04, 8.795082865752835597e-04, 8.805925750501166025e-04, 8.816753719196499754e-04, 8.827566755085454247e-04, 8.838364841439880692e-04, 8.849147961557544875e-04, 8.859916098760780602e-04, 8.870669236397235634e-04, 8.881407357840301027e-04, 8.892130446488981030e-04, 8.902838485766187632e-04, 8.913531459121916195e-04, 8.924209350030585901e-04, 8.934872141992067579e-04, 8.945519818532481678e-04, 8.956152363202378973e-04, 8.966769759578830908e-04, 8.977371991263762094e-04, 8.987959041884580232e-04, 8.998530895095099846e-04, 9.009087534573981043e-04, 9.019628944025529643e-04, 9.030155107180433361e-04, 9.040666007794379445e-04, 9.051161629648759406e-04, 9.061641956551387848e-04, 9.072106972335187329e-04, 9.082556660858836714e-04, 9.092991006007566978e-04, 9.103409991691487199e-04, 9.113813601847726943e-04, 9.124201820437726840e-04, 9.134574631450149669e-04, 9.144932018899503421e-04, 9.155273966825665331e-04, 9.165600459294546499e-04, 9.175911480398816133e-04, 9.186207014256378249e-04, 9.196487045011530678e-04, 9.206751556834378517e-04, 9.217000533921853277e-04, 9.227233960496287156e-04, 9.237451820806243542e-04, 9.247654099127055856e-04, 9.257840779759683725e-04, 9.268011847031239897e-04, 9.278167285295590896e-04, 9.288307078933106566e-04, 9.298431212349051117e-04, 9.308539669976664431e-04, 9.318632436274365896e-04, 9.328709495727891378e-04, 9.338770832848644144e-04, 9.348816432174468982e-04, 9.358846278270365610e-04, 9.368860355727083545e-04, 9.378858649161911408e-04, 9.388841143219267809e-04, 9.398807822569483789e-04, 9.408758671909421903e-04, 9.418693675963238409e-04, 9.428612819481005250e-04, 9.438516087239411535e-04, 9.448403464042527894e-04, 9.458274934720122722e-04, 9.468130484129671197e-04, 9.477970097154611888e-04, 9.487793758705195682e-04, 9.497601453719254488e-04, 9.507393167159935250e-04, 9.517168884018523210e-04, 9.526928589312893669e-04, 9.536672268087371040e-04, 9.546399905413143015e-04, 9.556111486388980470e-04, 9.565806996139896313e-04, 9.575486419817917432e-04, 9.585149742602658242e-04, 9.594796949700104202e-04, 9.604428026343432567e-04, 9.614042957792690372e-04, 9.623641729335439534e-04, 9.633224326286521583e-04, 9.642790733986561459e-04, 9.652340937804663925e-04, 9.661874923136882674e-04, 9.671392675405968793e-04, 9.680894180062095010e-04, 9.690379422582484897e-04, 9.699848388472242285e-04, 9.709301063263042634e-04, 9.718737432513923410e-04, 9.728157481811782826e-04, 9.737561196770310812e-04, 9.746948563030497512e-04, 9.756319566261111411e-04, 9.765674192158608265e-04, 9.775012426445496127e-04, 9.784334254873319064e-04, 9.793639663219905461e-04, 9.802928637291509310e-04, 9.812201162921196929e-04, 9.821457225969564692e-04, 9.830696812325458948e-04, 9.839919907904575228e-04, 9.849126498650280070e-04, 9.858316570534079396e-04, 9.867490109554627551e-04, 9.876647101738078582e-04, 9.885787533139022993e-04, 9.894911389839039246e-04, 9.904018657947463548e-04, 9.913109323601955805e-04, 9.922183372967376385e-04, 9.931240792236317380e-04, 9.940281567629826853e-04, 9.949305685395871436e-04, 9.958313131811437520e-04, 9.967303893179779543e-04, 9.976277955833386373e-04, 9.985235306132365842e-04, 9.994175930464433907e-04, 1.000309981524514450e-03, 1.001200694691872220e-03, 1.002089731195669828e-03, 1.002977089685890607e-03, 1.003862768815288672e-03, 1.004746767239496916e-03, 1.005629083616882804e-03, 1.006509716608627739e-03, 1.007388664878766313e-03, 1.008265927094164401e-03, 1.009141501924381255e-03, 1.010015388041916699e-03, 1.010887584122063896e-03, 1.011758088842904359e-03, 1.012626900885357393e-03, 1.013494018933147134e-03, 1.014359441672887550e-03, 1.015223167793959493e-03, 1.016085195988580088e-03, 1.016945524951845883e-03, 1.017804153381643949e-03, 1.018661079978689168e-03, 1.019516303446598186e-03, 1.020369822491766021e-03, 1.021221635823433291e-03, 1.022071742153742588e-03, 1.022920140197625073e-03, 1.023766828672858370e-03, 1.024611806300132055e-03, 1.025455071802910392e-03, 1.026296623907583692e-03, 1.027136461343344494e-03, 1.027974582842244378e-03, 1.028810987139253163e-03, 1.029645672972143763e-03, 1.030478639081547267e-03, 1.031309884211024496e-03, 1.032139407106945003e-03, 1.032967206518548226e-03, 1.033793281197997911e-03, 1.034617629900279551e-03, 1.035440251383270421e-03, 1.036261144407703153e-03, 1.037080307737226446e-03, 1.037897740138395966e-03, 1.038713440380528187e-03, 1.039527407235938056e-03, 1.040339639479831869e-03, 1.041150135890186058e-03, 1.041958895247978127e-03, 1.042765916337067608e-03, 1.043571197944155940e-03, 1.044374738858869743e-03, 1.045176537873707470e-03, 1.045976593784127663e-03, 1.046774905388424054e-03, 1.047571471487806875e-03, 1.048366290886432574e-03, 1.049159362391315770e-03, 1.049950684812375442e-03, 1.050740256962496080e-03, 1.051528077657419048e-03, 1.052314145715795924e-03, 1.053098459959253986e-03, 1.053881019212256137e-03, 1.054661822302260712e-03, 1.055440868059590726e-03, 1.056218155317491985e-03, 1.056993682912184913e-03, 1.057767449682764371e-03, 1.058539454471247579e-03, 1.059309696122641333e-03, 1.060078173484820148e-03, 1.060844885408601494e-03, 1.061609830747776810e-03, 1.062373008359028450e-03, 1.063134417101972620e-03, 1.063894055839222910e-03, 1.064651923436254338e-03, 1.065408018761557522e-03, 1.066162340686517248e-03, 1.066914888085461260e-03, 1.067665659835732254e-03, 1.068414654817504642e-03, 1.069161871914005519e-03, 1.069907310011395394e-03, 1.070650967998752149e-03, 1.071392844768114623e-03, 1.072132939214525977e-03, 1.072871250235937855e-03, 1.073607776733280852e-03, 1.074342517610426357e-03, 1.075075471774260922e-03, 1.075806638134591724e-03, 1.076536015604184510e-03, 1.077263603098812389e-03, 1.077989399537233927e-03, 1.078713403841072369e-03, 1.079435614935036385e-03, 1.080156031746781937e-03, 1.080874653206915321e-03, 1.081591478249032410e-03, 1.082306505809692851e-03, 1.083019734828485989e-03, 1.083731164247940439e-03, 1.084440793013560734e-03, 1.085148620073890643e-03, 1.085854644380407135e-03, 1.086558864887585216e-03, 1.087261280552929369e-03, 1.087961890336895275e-03, 1.088660693202921472e-03, 1.089357688117499612e-03, 1.090052874050046741e-03, 1.090746249973047330e-03, 1.091437814861931192e-03, 1.092127567695134202e-03, 1.092815507454138841e-03, 1.093501633123385294e-03, 1.094185943690316118e-03, 1.094868438145435441e-03, 1.095549115482195553e-03, 1.096227974697076054e-03, 1.096905014789594261e-03, 1.097580234762251866e-03, 1.098253633620549247e-03, 1.098925210373060497e-03, 1.099594964031320662e-03, 1.100262893609909665e-03, 1.100928998126401558e-03, 1.101593276601426762e-03, 1.102255728058652764e-03, 1.102916351524676564e-03, 1.103575146029222654e-03, 1.104232110605010957e-03, 1.104887244287774397e-03, 1.105540546116267134e-03, 1.106192015132318558e-03, 1.106841650380753495e-03, 1.107489450909437088e-03, 1.108135415769259191e-03, 1.108779544014189874e-03, 1.109421834701190953e-03, 1.110062286890265868e-03, 1.110700899644488301e-03, 1.111337672029985915e-03, 1.111972603115843426e-03, 1.112605691974295373e-03, 1.113236937680558720e-03, 1.113866339312901159e-03, 1.114493895952680140e-03, 1.115119606684250282e-03, 1.115743470595068759e-03, 1.116365486775604873e-03, 1.116985654319381689e-03, 1.117603972323023744e-03, 1.118220439886165752e-03, 1.118835056111498142e-03, 1.119447820104818234e-03, 1.120058730974938729e-03, 1.120667787833729782e-03, 1.121274989796176673e-03, 1.121880335980279851e-03, 1.122483825507102854e-03, 1.123085457500824780e-03, 1.123685231088629487e-03, 1.124283145400849140e-03, 1.124879199570779243e-03, 1.125473392734876402e-03, 1.126065724032653155e-03, 1.126656192606669080e-03, 1.127244797602561157e-03, 1.127831538169084746e-03, 1.128416413458027722e-03, 1.128999422624257527e-03, 1.129580564825765406e-03, 1.130159839223585094e-03, 1.130737244981839650e-03, 1.131312781267727148e-03, 1.131886447251553201e-03, 1.132458242106736167e-03, 1.133028165009681166e-03, 1.133596215139977617e-03, 1.134162391680293641e-03, 1.134726693816320332e-03, 1.135289120736927013e-03, 1.135849671634001426e-03, 1.136408345702595015e-03, 1.136965142140804316e-03, 1.137520060149825596e-03, 1.138073098933989769e-03, 1.138624257700687368e-03, 1.139173535660413863e-03, 1.139720932026797202e-03, 1.140266446016532540e-03, 1.140810076849420188e-03, 1.141351823748397269e-03, 1.141891685939473754e-03, 1.142429662651764551e-03, 1.142965753117522682e-03, 1.143499956572071197e-03, 1.144032272253888826e-03, 1.144562699404521721e-03, 1.145091237268629431e-03, 1.145617885094032820e-03, 1.146142642131612157e-03, 1.146665507635377147e-03, 1.147186480862479301e-03, 1.147705561073156201e-03, 1.148222747530765978e-03, 1.148738039501814856e-03, 1.149251436255897731e-03, 1.149762937065728751e-03, 1.150272541207184029e-03, 1.150780247959203853e-03, 1.151286056603926687e-03, 1.151789966426523077e-03, 1.152291976715363485e-03, 1.152792086761943256e-03, 1.153290295860819308e-03, 1.153786603309744571e-03, 1.154281008409592741e-03, 1.154773510464341150e-03, 1.155264108781104380e-03, 1.155752802670154643e-03, 1.156239591444874724e-03, 1.156724474421790298e-03, 1.157207450920544551e-03, 1.157688520263957816e-03, 1.158167681777954065e-03, 1.158644934791595166e-03, 1.159120278637098015e-03, 1.159593712649840611e-03, 1.160065236168269674e-03, 1.160534848534048105e-03, 1.161002549091938105e-03, 1.161468337189877718e-03, 1.161932212178922721e-03, 1.162394173413271560e-03, 1.162854220250303080e-03, 1.163312352050515155e-03, 1.163768568177542912e-03, 1.164222867998215751e-03, 1.164675250882467360e-03, 1.165125716203395346e-03, 1.165574263337269909e-03, 1.166020891663487220e-03, 1.166465600564595660e-03, 1.166908389426332248e-03, 1.167349257637547832e-03, 1.167788204590258696e-03, 1.168225229679667378e-03, 1.168660332304084608e-03, 1.169093511865039459e-03, 1.169524767767145777e-03, 1.169954099418236840e-03, 1.170381506229291194e-03, 1.170806987614442414e-03, 1.171230542990968695e-03, 1.171652171779357689e-03, 1.172071873403217378e-03, 1.172489647289322486e-03, 1.172905492867651334e-03, 1.173319409571309084e-03, 1.173731396836580863e-03, 1.174141454102907260e-03, 1.174549580812919020e-03, 1.174955776412422298e-03, 1.175360040350335996e-03, 1.175762372078814058e-03, 1.176162771053157431e-03, 1.176561236731825345e-03, 1.176957768576465451e-03, 1.177352366051880863e-03, 1.177745028626082631e-03, 1.178135755770219053e-03, 1.178524546958626415e-03, 1.178911401668830509e-03, 1.179296319381516710e-03, 1.179679299580543416e-03, 1.180060341752960486e-03, 1.180439445389013138e-03, 1.180816609982067574e-03, 1.181191835028730461e-03, 1.181565120028757422e-03, 1.181936464485079923e-03, 1.182305867903840841e-03, 1.182673329794331138e-03, 1.183038849669057523e-03, 1.183402427043681948e-03, 1.183764061437054789e-03, 1.184123752371236309e-03, 1.184481499371438330e-03, 1.184837301966068903e-03, 1.185191159686741630e-03, 1.185543072068237502e-03, 1.185893038648517259e-03, 1.186241058968759985e-03, 1.186587132573308900e-03, 1.186931259009692177e-03, 1.187273437828657635e-03, 1.187613668584104653e-03, 1.187951950833168735e-03, 1.188288284136122417e-03, 1.188622668056471109e-03, 1.188955102160911244e-03, 1.189285586019310113e-03, 1.189614119204735788e-03, 1.189940701293465365e-03, 1.190265331864958287e-03, 1.190588010501867191e-03, 1.190908736790035520e-03, 1.191227510318523765e-03, 1.191544330679573027e-03, 1.191859197468613267e-03, 1.192172110284291054e-03, 1.192483068728457645e-03, 1.192792072406121708e-03, 1.193099120925525435e-03, 1.193404213898119175e-03, 1.193707350938507435e-03, 1.194008531664543645e-03, 1.194307755697246237e-03, 1.194605022660865648e-03, 1.194900332182830763e-03, 1.195193683893773420e-03, 1.195485077427543797e-03, 1.195774512421184836e-03, 1.196061988514932018e-03, 1.196347505352251097e-03, 1.196631062579787356e-03, 1.196912659847392283e-03, 1.197192296808145470e-03, 1.197469973118304304e-03, 1.197745688437343433e-03, 1.198019442427951083e-03, 1.198291234755998261e-03, 1.198561065090593186e-03, 1.198828933104032933e-03, 1.199094838471809936e-03, 1.199358780872660781e-03, 1.199620759988497248e-03, 1.199880775504444039e-03, 1.200138827108854396e-03, 1.200394914493272151e-03, 1.200649037352449940e-03, 1.200901195384364382e-03, 1.201151388290192662e-03, 1.201399615774315132e-03, 1.201645877544341547e-03, 1.201890173311073121e-03, 1.202132502788537871e-03, 1.202372865693956570e-03, 1.202611261747783301e-03, 1.202847690673680952e-03, 1.203082152198502132e-03, 1.203314646052333625e-03, 1.203545171968474492e-03, 1.203773729683428042e-03, 1.204000318936912679e-03, 1.204224939471860599e-03, 1.204447591034424510e-03, 1.204668273373964192e-03, 1.204886986243047797e-03, 1.205103729397476566e-03, 1.205318502596252955e-03, 1.205531305601586708e-03, 1.205742138178918276e-03, 1.205951000096913391e-03, 1.206157891127411464e-03, 1.206362811045507116e-03, 1.206565759629493794e-03, 1.206766736660887414e-03, 1.206965741924416599e-03, 1.207162775208022246e-03, 1.207357836302875524e-03, 1.207550925003348817e-03, 1.207742041107031554e-03, 1.207931184414751244e-03, 1.208118354730527933e-03, 1.208303551861605006e-03, 1.208486775618455682e-03, 1.208668025814756998e-03, 1.208847302267406941e-03, 1.209024604796531599e-03, 1.209199933225456975e-03, 1.209373287380730889e-03, 1.209544667092143141e-03, 1.209714072192667180e-03, 1.209881502518522127e-03, 1.210046957909117690e-03, 1.210210438207112282e-03, 1.210371943258366613e-03, 1.210531472911958659e-03, 1.210689027020188857e-03, 1.210844605438582498e-03, 1.210998208025868255e-03, 1.211149834644005292e-03, 1.211299485158167646e-03, 1.211447159436756810e-03, 1.211592857351376142e-03, 1.211736578776861440e-03, 1.211878323591263377e-03, 1.212018091675855962e-03, 1.212155882915119621e-03, 1.212291697196765054e-03, 1.212425534411721737e-03, 1.212557394454136630e-03, 1.212687277221372213e-03, 1.212815182614004981e-03, 1.212941110535852539e-03, 1.213065060893923517e-03, 1.213187033598462456e-03, 1.213307028562930073e-03, 1.213425045704003913e-03, 1.213541084941581819e-03, 1.213655146198776291e-03, 1.213767229401923166e-03, 1.213877334480572287e-03, 1.213985461367500952e-03, 1.214091609998695261e-03, 1.214195780313360963e-03, 1.214297972253931476e-03, 1.214398185766043387e-03, 1.214496420798568755e-03, 1.214592677303576737e-03, 1.214686955236375003e-03, 1.214779254555478508e-03, 1.214869575222617950e-03, 1.214957917202744760e-03, 1.215044280464033484e-03, 1.215128664977867690e-03, 1.215211070718847340e-03, 1.215291497664800716e-03, 1.215369945796759702e-03, 1.215446415098979729e-03, 1.215520905558930892e-03, 1.215593417167302927e-03, 1.215663949917998934e-03, 1.215732503808132766e-03, 1.215799078838046814e-03, 1.215863675011290539e-03, 1.215926292334635651e-03, 1.215986930818053341e-03, 1.216045590474747673e-03, 1.216102271321128914e-03, 1.216156973376830014e-03, 1.216209696664681235e-03, 1.216260441210747882e-03, 1.216309207044295824e-03, 1.216355994197807324e-03, 1.216400802706985376e-03, 1.216443632610734842e-03, 1.216484483951183696e-03, 1.216523356773665902e-03, 1.216560251126732684e-03, 1.216595167062146021e-03, 1.216628104634876698e-03, 1.216659063903111461e-03, 1.216688044928252149e-03, 1.216715047774898995e-03, 1.216740072510877953e-03, 1.216763119207219879e-03, 1.216784187938161612e-03, 1.216803278781153569e-03, 1.216820391816859307e-03, 1.216835527129146634e-03, 1.216848684805094550e-03, 1.216859864934992375e-03, 1.216869067612338885e-03, 1.216876292933829519e-03, 1.216881540999388035e-03, 1.216884811912127698e-03, 1.216886105778379034e-03, 1.216885422707673133e-03, 1.216882762812749458e-03, 1.216878126209562129e-03, 1.216871513017253039e-03, 1.216862923358184813e-03, 1.216852357357922371e-03, 1.216839815145226216e-03, 1.216825296852072592e-03, 1.216808802613634187e-03, 1.216790332568293579e-03, 1.216769886857622853e-03, 1.216747465626415040e-03, 1.216723069022651160e-03, 1.216696697197520386e-03, 1.216668350305413543e-03, 1.216638028503916162e-03, 1.216605731953819330e-03, 1.216571460819118817e-03, 1.216535215266999898e-03, 1.216496995467851883e-03, 1.216456801595260529e-03, 1.216414633826014540e-03, 1.216370492340097332e-03, 1.216324377320686812e-03, 1.216276288954161455e-03, 1.216226227430097914e-03, 1.216174192941261696e-03, 1.216120185683618226e-03, 1.216064205856327634e-03, 1.216006253661744115e-03, 1.215946329305414835e-03, 1.215884432996078854e-03, 1.215820564945672760e-03, 1.215754725369321779e-03, 1.215686914485339127e-03, 1.215617132515236848e-03, 1.215545379683716058e-03, 1.215471656218658925e-03, 1.215395962351152300e-03, 1.215318298315459095e-03, 1.215238664349034981e-03, 1.215157060692527956e-03, 1.215073487589766630e-03, 1.214987945287765219e-03, 1.214900434036731997e-03, 1.214810954090057588e-03, 1.214719505704312148e-03, 1.214626089139255773e-03, 1.214530704657830040e-03, 1.214433352526165383e-03, 1.214334033013565479e-03, 1.214232746392518957e-03, 1.214129492938699397e-03, 1.214024272930959479e-03, 1.213917086651327077e-03, 1.213807934385014364e-03, 1.213696816420417601e-03, 1.213583733049095233e-03, 1.213468684565797160e-03, 1.213351671268445659e-03, 1.213232693458138204e-03, 1.213111751439150928e-03, 1.212988845518925621e-03, 1.212863976008094445e-03, 1.212737143220445242e-03, 1.212608347472947119e-03, 1.212477589085745461e-03, 1.212344868382145887e-03, 1.212210185688640269e-03, 1.212073541334867917e-03, 1.211934935653660467e-03, 1.211794368981005234e-03, 1.211651841656058003e-03, 1.211507354021143252e-03, 1.211360906421760000e-03, 1.211212499206551670e-03, 1.211062132727345987e-03, 1.210909807339134161e-03, 1.210755523400055492e-03, 1.210599281271423607e-03, 1.210441081317716267e-03, 1.210280923906559974e-03, 1.210118809408754041e-03, 1.209954738198251722e-03, 1.209788710652161736e-03, 1.209620727150757368e-03, 1.209450788077457827e-03, 1.209278893818859467e-03, 1.209105044764693070e-03, 1.208929241307852252e-03, 1.208751483844381757e-03, 1.208571772773490679e-03, 1.208390108497521889e-03, 1.208206491421979795e-03, 1.208020921955526433e-03, 1.207833400509955666e-03, 1.207643927500227227e-03, 1.207452503344438530e-03, 1.207259128463840066e-03, 1.207063803282825212e-03, 1.206866528228920038e-03, 1.206667303732829495e-03, 1.206466130228370194e-03, 1.206263008152504233e-03, 1.206057937945361749e-03, 1.205850920050179987e-03, 1.205641954913362493e-03, 1.205431042984431850e-03, 1.205218184716063496e-03, 1.205003380564067953e-03, 1.204786630987382144e-03, 1.204567936448088265e-03, 1.204347297411405976e-03, 1.204124714345673752e-03, 1.203900187722375991e-03, 1.203673718016129999e-03, 1.203445305704670598e-03, 1.203214951268873761e-03, 1.202982655192745770e-03, 1.202748417963406084e-03, 1.202512240071122035e-03, 1.202274122009265025e-03, 1.202034064274350427e-03, 1.201792067366011562e-03, 1.201548131786993844e-03, 1.201302258043183187e-03, 1.201054446643572832e-03, 1.200804698100277216e-03, 1.200553012928539135e-03, 1.200299391646716084e-03, 1.200043834776267238e-03, 1.199786342841788374e-03, 1.199526916370985841e-03, 1.199265555894669629e-03, 1.199002261946773527e-03, 1.198737035064326292e-03, 1.198469875787499779e-03, 1.198200784659546499e-03, 1.197929762226826499e-03, 1.197656809038839679e-03, 1.197381925648154663e-03, 1.197105112610460410e-03, 1.196826370484558840e-03, 1.196545699832349654e-03, 1.196263101218821880e-03, 1.195978575212079675e-03, 1.195692122383331052e-03, 1.195403743306875950e-03, 1.195113438560100596e-03, 1.194821208723509170e-03, 1.194527054380694090e-03, 1.194230976118333632e-03, 1.193932974526195831e-03, 1.193633050197173825e-03, 1.193331203727209964e-03, 1.193027435715368232e-03, 1.192721746763773533e-03, 1.192414137477660696e-03, 1.192104608465354961e-03, 1.191793160338232944e-03, 1.191479793710790948e-03, 1.191164509200599419e-03, 1.190847307428291677e-03, 1.190528189017605329e-03, 1.190207154595356682e-03, 1.189884204791411470e-03, 1.189559340238746004e-03, 1.189232561573400114e-03, 1.188903869434476289e-03, 1.188573264464170675e-03, 1.188240747307748365e-03, 1.187906318613520407e-03, 1.187569979032906042e-03, 1.187231729220348782e-03, 1.186891569833413342e-03, 1.186549501532685241e-03, 1.186205524981829348e-03, 1.185859640847574704e-03, 1.185511849799723199e-03, 1.185162152511117038e-03, 1.184810549657671491e-03, 1.184457041918365134e-03, 1.184101629975212091e-03, 1.183744314513303668e-03, 1.183385096220781248e-03, 1.183023975788838897e-03, 1.182660953911716419e-03, 1.182296031286694804e-03, 1.181929208614146756e-03, 1.181560486597446266e-03, 1.181189865943029329e-03, 1.180817347360388521e-03, 1.180442931562045465e-03, 1.180066619263588122e-03, 1.179688411183608780e-03, 1.179308308043766065e-03, 1.178926310568766296e-03, 1.178542419486320767e-03, 1.178156635527196705e-03, 1.177768959425209028e-03, 1.177379391917179798e-03, 1.176987933742962289e-03, 1.176594585645477416e-03, 1.176199348370633941e-03, 1.175802222667388965e-03, 1.175403209287732322e-03, 1.175002308986647761e-03, 1.174599522522187106e-03, 1.174194850655376366e-03, 1.173788294150301817e-03, 1.173379853774061217e-03, 1.172969530296748839e-03, 1.172557324491489954e-03, 1.172143237134442347e-03, 1.171727269004742104e-03, 1.171309420884563248e-03, 1.170889693559090412e-03, 1.170468087816498677e-03, 1.170044604447987397e-03, 1.169619244247766107e-03, 1.169192008013029147e-03, 1.168762896544000337e-03, 1.168331910643866187e-03, 1.167899051118876947e-03, 1.167464318778226257e-03, 1.167027714434113166e-03, 1.166589238901754276e-03, 1.166148892999360536e-03, 1.165706677548106890e-03, 1.165262593372189083e-03, 1.164816641298781815e-03, 1.164368822158060859e-03, 1.163919136783156871e-03, 1.163467586010218926e-03, 1.163014170678376572e-03, 1.162558891629725732e-03, 1.162101749709329142e-03, 1.161642745765294193e-03, 1.161181880648644565e-03, 1.160719155213376166e-03, 1.160254570316523711e-03, 1.159788126818022151e-03, 1.159319825580835267e-03, 1.158849667470852668e-03, 1.158377653356955275e-03, 1.157903784110999928e-03, 1.157428060607783174e-03, 1.156950483725079646e-03, 1.156471054343642495e-03, 1.155989773347143330e-03, 1.155506641622250493e-03, 1.155021660058586563e-03, 1.154534829548702112e-03, 1.154046150988124499e-03, 1.153555625275347676e-03, 1.153063253311772561e-03, 1.152569036001795935e-03, 1.152072974252723063e-03, 1.151575068974828404e-03, 1.151075321081346725e-03, 1.150573731488403056e-03, 1.150070301115109408e-03, 1.149565030883516409e-03, 1.149057921718574932e-03, 1.148548974548206777e-03, 1.148038190303268032e-03, 1.147525569917515892e-03, 1.147011114327669157e-03, 1.146494824473378096e-03, 1.145976701297188229e-03, 1.145456745744600612e-03, 1.144934958764031721e-03, 1.144411341306832749e-03, 1.143885894327254914e-03, 1.143358618782446641e-03, 1.142829515632557422e-03, 1.142298585840571725e-03, 1.141765830372406566e-03, 1.141231250196912380e-03, 1.140694846285833335e-03, 1.140156619613842464e-03, 1.139616571158481818e-03, 1.139074701900227296e-03, 1.138531012822467832e-03, 1.137985504911452703e-03, 1.137438179156373711e-03, 1.136889036549307503e-03, 1.136338078085217087e-03, 1.135785304761939042e-03, 1.135230717580278494e-03, 1.134674317543851035e-03, 1.134116105659213483e-03, 1.133556082935768469e-03, 1.132994250385838163e-03, 1.132430609024623726e-03, 1.131865159870186228e-03, 1.131297903943484159e-03, 1.130728842268369531e-03, 1.130157975871530626e-03, 1.129585305782561389e-03, 1.129010833033932586e-03, 1.128434558660953643e-03, 1.127856483701833142e-03, 1.127276609197647812e-03, 1.126694936192305886e-03, 1.126111465732618656e-03, 1.125526198868252335e-03, 1.124939136651697483e-03, 1.124350280138358563e-03, 1.123759630386428386e-03, 1.123167188457039039e-03, 1.122572955414107053e-03, 1.121976932324406703e-03, 1.121379120257588432e-03, 1.120779520286145896e-03, 1.120178133485387993e-03, 1.119574960933495452e-03, 1.118970003711477687e-03, 1.118363262903203370e-03, 1.117754739595334295e-03, 1.117144434877407775e-03, 1.116532349841791545e-03, 1.115918485583665106e-03, 1.115302843201014527e-03, 1.114685423794743030e-03, 1.114066228468494051e-03, 1.113445258328745130e-03, 1.112822514484829162e-03, 1.112197998048880185e-03, 1.111571710135864609e-03, 1.110943651863527219e-03, 1.110313824352462736e-03, 1.109682228726078948e-03, 1.109048866110551182e-03, 1.108413737634908382e-03, 1.107776844430977603e-03, 1.107138187633359069e-03, 1.106497768379484511e-03, 1.105855587809594608e-03, 1.105211647066679358e-03, 1.104565947296572408e-03, 1.103918489647896621e-03, 1.103269275272023096e-03, 1.102618305323178937e-03, 1.101965580958307826e-03, 1.101311103337189717e-03, 1.100654873622392265e-03, 1.099996892979214448e-03, 1.099337162575776336e-03, 1.098675683582986569e-03, 1.098012457174473181e-03, 1.097347484526685520e-03, 1.096680766818846102e-03, 1.096012305232902696e-03, 1.095342100953612240e-03, 1.094670155168482291e-03, 1.093996469067797048e-03, 1.093321043844575286e-03, 1.092643880694576641e-03, 1.091964980816407431e-03, 1.091284345411338511e-03, 1.090601975683408702e-03, 1.089917872839439974e-03, 1.089232038088993422e-03, 1.088544472644343035e-03, 1.087855177720542478e-03, 1.087164154535377389e-03, 1.086471404309385328e-03, 1.085776928265794845e-03, 1.085080727630621323e-03, 1.084382803632607997e-03, 1.083683157503184539e-03, 1.082981790476556395e-03, 1.082278703789655563e-03, 1.081573898682089852e-03, 1.080867376396240677e-03, 1.080159138177208414e-03, 1.079449185272758193e-03, 1.078737518933443277e-03, 1.078024140412463900e-03, 1.077309050965772437e-03, 1.076592251852044775e-03, 1.075873744332602909e-03, 1.075153529671526824e-03, 1.074431609135602025e-03, 1.073707983994263808e-03, 1.072982655519692016e-03, 1.072255624986760518e-03, 1.071526893673000998e-03, 1.070796462858670389e-03, 1.070064333826723771e-03, 1.069330507862752133e-03, 1.068594986255095572e-03, 1.067857770294710794e-03, 1.067118861275291033e-03, 1.066378260493196228e-03, 1.065635969247403364e-03, 1.064891988839680162e-03, 1.064146320574363902e-03, 1.063398965758477000e-03, 1.062649925701740234e-03, 1.061899201716543471e-03, 1.061146795117884952e-03, 1.060392707223475157e-03, 1.059636939353665033e-03, 1.058879492831476567e-03, 1.058120368982537517e-03, 1.057359569135170319e-03, 1.056597094620353484e-03, 1.055832946771673901e-03, 1.055067126925348514e-03, 1.054299636420329925e-03, 1.053530476598116879e-03, 1.052759648802855958e-03, 1.051987154381368687e-03, 1.051212994683078245e-03, 1.050437171060073643e-03, 1.049659684867007385e-03, 1.048880537461212986e-03, 1.048099730202641661e-03, 1.047317264453817868e-03, 1.046533141579938627e-03, 1.045747362948809978e-03, 1.044959929930802103e-03, 1.044170843898952752e-03, 1.043380106228897859e-03, 1.042587718298840747e-03, 1.041793681489644506e-03, 1.040997997184713161e-03, 1.040200666770100743e-03, 1.039401691634452311e-03, 1.038601073168964484e-03, 1.037798812767466976e-03, 1.036994911826390068e-03, 1.036189371744685676e-03, 1.035382193923956593e-03, 1.034573379768379073e-03, 1.033762930684656431e-03, 1.032950848082126154e-03, 1.032137133372697246e-03, 1.031321787970801646e-03, 1.030504813293487256e-03, 1.029686210760361780e-03, 1.028865981793607902e-03, 1.028044127817937100e-03, 1.027220650260606558e-03, 1.026395550551532140e-03, 1.025568830123082826e-03, 1.024740490410195421e-03, 1.023910532850397107e-03, 1.023078958883756433e-03, 1.022245769952838217e-03, 1.021410967502799387e-03, 1.020574552981326532e-03, 1.019736527838651730e-03, 1.018896893527497906e-03, 1.018055651503172723e-03, 1.017212803223509167e-03, 1.016368350148836707e-03, 1.015522293741987804e-03, 1.014674635468432564e-03, 1.013825376796028289e-03, 1.012974519195246510e-03, 1.012122064138995178e-03, 1.011268013102752886e-03, 1.010412367564505337e-03, 1.009555129004698721e-03, 1.008696298906329057e-03, 1.007835878754899904e-03, 1.006973870038361651e-03, 1.006110274247208874e-03, 1.005245092874444560e-03, 1.004378327415495972e-03, 1.003509979368339767e-03, 1.002640050233442144e-03, 1.001768541513692930e-03, 1.000895454714525274e-03, 1.000020791343849509e-03, 9.991445529119915691e-04, 9.982667409318358911e-04, 9.973873569186332902e-04, 9.965064023902488102e-04, 9.956238788668898051e-04, 9.947397878712481867e-04, 9.938541309285197235e-04, 9.929669095663504804e-04, 9.920781253147941021e-04, 9.911877797064070055e-04, 9.902958742762024095e-04, 9.894024105615794283e-04, 9.885073901024460201e-04, 9.876108144411248780e-04, 9.867126851224037373e-04, 9.858130036934655525e-04, 9.849117717039160367e-04, 9.840089907059027061e-04, 9.831046622538839458e-04, 9.821987879047515239e-04, 9.812913692179370609e-04, 9.803824077551496520e-04, 9.794719050806215480e-04, 9.785598627609234067e-04, 9.776462823650956986e-04, 9.767311654645879915e-04, 9.758145136332026801e-04, 9.748963284472025393e-04, 9.739766114852581400e-04, 9.730553643283741238e-04, 9.721325885600152952e-04, 9.712082857660418950e-04, 9.702824575346469336e-04, 9.693551054564663455e-04, 9.684262311245270564e-04, 9.674958361341796540e-04, 9.665639220832365156e-04, 9.656304905718041901e-04, 9.646955432024270551e-04, 9.637590815800247583e-04, 9.628211073118203350e-04, 9.618816220074716131e-04, 9.609406272789921752e-04, 9.599981247407077733e-04, 9.590541160093534736e-04, 9.581086027040255177e-04, 9.571615864461124759e-04, 9.562130688594129915e-04, 9.552630515700754991e-04, 9.543115362065287275e-04, 9.533585243996321864e-04, 9.524040177824746141e-04, 9.514480179906301734e-04, 9.504905266618829569e-04, 9.495315454363452727e-04, 9.485710759565866646e-04, 9.476091198673729449e-04, 9.466456788158161394e-04, 9.456807544513886905e-04, 9.447143484258800888e-04, 9.437464623933363751e-04, 9.427770980101682352e-04, 9.418062569350823697e-04, 9.408339408291068644e-04, 9.398601513555171396e-04, 9.388848901799403584e-04, 9.379081589703148775e-04, 9.369299593968166305e-04, 9.359502931319042297e-04, 9.349691618504436504e-04, 9.339865672294468289e-04, 9.330025109483057423e-04, 9.320169946886168759e-04, 9.310300201343066654e-04, 9.300415889715874787e-04, 9.290517028888714210e-04, 9.280603635769085714e-04, 9.270675727287119557e-04, 9.260733320394931448e-04, 9.250776432067894317e-04, 9.240805079303949848e-04, 9.230819279122933017e-04, 9.220819048567841696e-04, 9.210804404704168785e-04, 9.200775364619193141e-04, 9.190731945423521315e-04, 9.180674164249282357e-04, 9.170602038251576306e-04, 9.160515584607895230e-04, 9.150414820517151779e-04, 9.140299763202085030e-04, 9.130170429906372172e-04, 9.120026837896098686e-04, 9.109869004460022885e-04, 9.099696946909052253e-04, 9.089510682575562559e-04, 9.079310228814694564e-04, 9.069095603003676396e-04, 9.058866822541148094e-04, 9.048623904848347721e-04, 9.038366867368380613e-04, 9.028095727566427548e-04, 9.017810502929273116e-04, 9.007511210965235245e-04, 8.997197869205982327e-04, 8.986870495203573344e-04, 8.976529106532196928e-04, 8.966173720788136667e-04, 8.955804355589362361e-04, 8.945421028575649284e-04, 8.935023757407862611e-04, 8.924612559769184734e-04, 8.914187453364448479e-04, 8.903748455919367321e-04, 8.893295585181934006e-04, 8.882828858921644260e-04, 8.872348294929147680e-04, 8.861853911016236889e-04, 8.851345725017548648e-04, 8.840823754787568208e-04, 8.830288018203088281e-04, 8.819738533162241930e-04, 8.809175317583779405e-04, 8.798598389408736732e-04, 8.788007766598386573e-04, 8.777403467136072690e-04, 8.766785509026221159e-04, 8.756153910293817781e-04, 8.745508688985672262e-04, 8.734849863169675535e-04, 8.724177450934163334e-04, 8.713491470389161941e-04, 8.702791939665761520e-04, 8.692078876915344159e-04, 8.681352300310960814e-04, 8.670612228046559351e-04, 8.659858678336306926e-04, 8.649091669416213027e-04, 8.638311219541877596e-04, 8.627517346991420534e-04, 8.616710070062312586e-04, 8.605889407072972366e-04, 8.595055376363074269e-04, 8.584207996292882777e-04, 8.573347285242694090e-04, 8.562473261614098139e-04, 8.551585943829048339e-04, 8.540685350330293104e-04, 8.529771499580382716e-04, 8.518844410063098303e-04, 8.507904100282686396e-04, 8.496950588763369948e-04, 8.485983894049482779e-04, 8.475004034707240078e-04, 8.464011029321687456e-04, 8.453004896498218833e-04, 8.441985654863977222e-04, 8.430953323064624893e-04, 8.419907919767266385e-04, 8.408849463658196613e-04, 8.397777973444624754e-04, 8.386693467853876269e-04, 8.375595965632625295e-04, 8.364485485548359394e-04, 8.353362046388559904e-04, 8.342225666959947328e-04, 8.331076366090050178e-04, 8.319914162626212929e-04, 8.308739075434987782e-04, 8.297551123403549547e-04, 8.286350325438862977e-04, 8.275136700467032244e-04, 8.263910267434845932e-04, 8.252671045307892689e-04, 8.241419053072181027e-04, 8.230154309733421578e-04, 8.218876834316198770e-04, 8.207586645865496289e-04, 8.196283763445839487e-04, 8.184968206140585218e-04, 8.173639993053324806e-04, 8.162299143307148947e-04, 8.150945676043858416e-04, 8.139579610425437496e-04, 8.128200965633188783e-04, 8.116809760867115192e-04, 8.105406015347486632e-04, 8.093989748312602206e-04, 8.082560979021814057e-04, 8.071119726752190192e-04, 8.059666010799946710e-04, 8.048199850482040500e-04, 8.036721265132953495e-04, 8.025230274106626887e-04, 8.013726896776484981e-04, 8.002211152534780339e-04, 7.990683060792984089e-04, 7.979142640980774366e-04, 7.967589912547539018e-04, 7.956024894961589555e-04, 7.944447607709292708e-04, 7.932858070296650108e-04, 7.921256302248434180e-04, 7.909642323107699165e-04, 7.898016152436007718e-04, 7.886377809815107087e-04, 7.874727314843648317e-04, 7.863064687140189487e-04, 7.851389946340898290e-04, 7.839703112101256395e-04, 7.828004204095308097e-04, 7.816293242014821143e-04, 7.804570245570773175e-04, 7.792835234492646998e-04, 7.781088228527507922e-04, 7.769329247441593206e-04, 7.757558311019501071e-04, 7.745775439063284310e-04, 7.733980651394142727e-04, 7.722173967851459278e-04, 7.710355408292060651e-04, 7.698524992591725385e-04, 7.686682740644352292e-04, 7.674828672361237291e-04, 7.662962807672721397e-04, 7.651085166525885706e-04, 7.639195768887719435e-04, 7.627294634741509528e-04, 7.615381784088826912e-04, 7.603457236949637092e-04, 7.591521013361784065e-04, 7.579573133380212947e-04, 7.567613617078363178e-04, 7.555642484547254534e-04, 7.543659755895905632e-04, 7.531665451250261654e-04, 7.519659590754666691e-04, 7.507642194571157931e-04, 7.495613282878851999e-04, 7.483572875874132521e-04, 7.471520993772534473e-04, 7.459457656805504582e-04, 7.447382885222218448e-04, 7.435296699289800637e-04, 7.423199119292560322e-04, 7.411090165532388096e-04, 7.398969858327728152e-04, 7.386838218015116765e-04, 7.374695264948389738e-04, 7.362541019497763004e-04, 7.350375502051480605e-04, 7.338198733014926738e-04, 7.326010732809846212e-04, 7.313811521875857990e-04, 7.301601120669617105e-04, 7.289379549664061139e-04, 7.277146829349874979e-04, 7.264902980234737295e-04, 7.252648022842397889e-04, 7.240381977714596727e-04, 7.228104865408867350e-04, 7.215816706500352909e-04, 7.203517521580989763e-04, 7.191207331258620602e-04, 7.178886156158687968e-04, 7.166554016923257393e-04, 7.154210934210242191e-04, 7.141856928694996151e-04, 7.129492021069434252e-04, 7.117116232041229267e-04, 7.104729582335338319e-04, 7.092332092692941450e-04, 7.079923783871981549e-04, 7.067504676646158219e-04, 7.055074791805328923e-04, 7.042634150157356474e-04, 7.030182772524712223e-04, 7.017720679746427626e-04, 7.005247892678323008e-04, 6.992764432192375475e-04, 6.980270319175975154e-04, 6.967765574533384522e-04, 6.955250219184749621e-04, 6.942724274066502292e-04, 6.930187760130293324e-04, 6.917640698344563457e-04, 6.905083109693760596e-04, 6.892515015177625316e-04, 6.879936435811573586e-04, 6.867347392628501968e-04, 6.854747906675132769e-04, 6.842137999015179915e-04, 6.829517690728001281e-04, 6.816887002907867947e-04, 6.804245956665860460e-04, 6.791594573127516122e-04, 6.778932873434884631e-04, 6.766260878745534958e-04, 6.753578610231736768e-04, 6.740886089082105161e-04, 6.728183336500719210e-04, 6.715470373706211235e-04, 6.702747221933499358e-04, 6.690013902432791117e-04, 6.677270436468829952e-04, 6.664516845322441272e-04, 6.651753150289724725e-04, 6.638979372681146724e-04, 6.626195533823460567e-04, 6.613401655057459970e-04, 6.600597757739859071e-04, 6.587783863242457601e-04, 6.574959992951250748e-04, 6.562126168268094493e-04, 6.549282410609754768e-04, 6.536428741407143087e-04, 6.523565182106859373e-04, 6.510691754170380968e-04, 6.497808479073168171e-04, 6.484915378306302467e-04, 6.472012473375310165e-04, 6.459099785800764132e-04, 6.446177337117051055e-04, 6.433245148874007502e-04, 6.420303242636120865e-04, 6.407351639981866912e-04, 6.394390362503960239e-04, 6.381419431811349201e-04, 6.368438869525716107e-04, 6.355448697283465646e-04, 6.342448936735921132e-04, 6.329439609548548210e-04, 6.316420737401363603e-04, 6.303392341987822719e-04, 6.290354445016482820e-04, 6.277307068210116140e-04, 6.264250233304829519e-04, 6.251183962051669015e-04, 6.238108276215855548e-04, 6.225023197575768998e-04, 6.211928747924676426e-04, 6.198824949069869049e-04, 6.185711822831727654e-04, 6.172589391045668747e-04, 6.159457675559886153e-04, 6.146316698237250546e-04, 6.133166480954477858e-04, 6.120007045601173019e-04, 6.106838414081528898e-04, 6.093660608313504479e-04, 6.080473650227778606e-04, 6.067277561769585537e-04, 6.054072364897731574e-04, 6.040858081583715773e-04, 6.027634733813423467e-04, 6.014402343586215541e-04, 6.001160932914053475e-04, 5.987910523823151672e-04, 5.974651138352866150e-04, 5.961382798556076178e-04, 5.948105526498490394e-04, 5.934819344258743289e-04, 5.921524273930422674e-04, 5.908220337618606734e-04, 5.894907557441791740e-04, 5.881585955532166350e-04, 5.868255554035038072e-04, 5.854916375107853139e-04, 5.841568440921943162e-04, 5.828211773661317327e-04, 5.814846395523237026e-04, 5.801472328716953840e-04, 5.788089595465474623e-04, 5.774698218004616079e-04, 5.761298218582413871e-04, 5.747889619459355722e-04, 5.734472442910389361e-04, 5.721046711221106128e-04, 5.707612446691173562e-04, 5.694169671631724638e-04, 5.680718408367301745e-04, 5.667258679235008837e-04, 5.653790506583543244e-04, 5.640313912774934726e-04, 5.626828920183632584e-04, 5.613335551195587332e-04, 5.599833828209982173e-04, 5.586323773638304921e-04, 5.572805409903406910e-04, 5.559278759441282176e-04, 5.545743844700098176e-04, 5.532200688139327343e-04, 5.518649312231402662e-04, 5.505089739460865489e-04, 5.491521992323435304e-04, 5.477946093327980791e-04, 5.464362064993874384e-04, 5.450769929854540861e-04, 5.437169710453470736e-04, 5.423561429346301921e-04, 5.409945109101150411e-04, 5.396320772297864355e-04, 5.382688441527164278e-04, 5.369048139392359380e-04, 5.355399888508473663e-04, 5.341743711501222448e-04, 5.328079631008815400e-04, 5.314407669680781257e-04, 5.300727850178400423e-04, 5.287040195173899407e-04, 5.273344727350589602e-04, 5.259641469405059539e-04, 5.245930444043426805e-04, 5.232211673983443558e-04, 5.218485181954775169e-04, 5.204750990698059137e-04, 5.191009122965432009e-04, 5.177259601519323745e-04, 5.163502449134198952e-04, 5.149737688595653739e-04, 5.135965342699439938e-04, 5.122185434253268129e-04, 5.108397986075801506e-04, 5.094603020995797180e-04, 5.080800561853827902e-04, 5.066990631501343137e-04, 5.053173252799726895e-04, 5.039348448622107263e-04, 5.025516241852365446e-04, 5.011676655384165405e-04, 4.997829712123162378e-04, 4.983975434984379109e-04, 4.970113846894399189e-04, 4.956244970790386938e-04, 4.942368829619148488e-04, 4.928485446338873007e-04, 4.914594843918243658e-04, 4.900697045335466150e-04, 4.886792073580041411e-04, 4.872879951651791432e-04, 4.858960702560003288e-04, 4.845034349325102606e-04, 4.831100914977792707e-04, 4.817160422558030035e-04, 4.803212895117164372e-04, 4.789258355715152985e-04, 4.775296827424193235e-04, 4.761328333324659542e-04, 4.747352896506960070e-04, 4.733370540073315912e-04, 4.719381287134042811e-04, 4.705385160809649097e-04, 4.691382184231123538e-04, 4.677372380539269103e-04, 4.663355772883761869e-04, 4.649332384424948090e-04, 4.635302238332537190e-04, 4.621265357786254451e-04, 4.607221765974513954e-04, 4.593171486096238950e-04, 4.579114541359929989e-04, 4.565050954982942302e-04, 4.550980750191853884e-04, 4.536903950224481573e-04, 4.522820578325913946e-04, 4.508730657752146116e-04, 4.494634211767219059e-04, 4.480531263645445481e-04, 4.466421836670349471e-04, 4.452305954133737882e-04, 4.438183639337510943e-04, 4.424054915592723347e-04, 4.409919806218569435e-04, 4.395778334544239892e-04, 4.381630523907948673e-04, 4.367476397655936085e-04, 4.353315979144327104e-04, 4.339149291738137707e-04, 4.324976358810339204e-04, 4.310797203743930149e-04, 4.296611849929500137e-04, 4.282420320767256722e-04, 4.268222639666179735e-04, 4.254018830042621043e-04, 4.239808915323785917e-04, 4.225592918943571865e-04, 4.211370864344753844e-04, 4.197142774979255309e-04, 4.182908674307453780e-04, 4.168668585797244094e-04, 4.154422532925860947e-04, 4.140170539178909077e-04, 4.125912628049328932e-04, 4.111648823039350405e-04, 4.097379147659069819e-04, 4.083103625427170918e-04, 4.068822279869827659e-04, 4.054535134521039226e-04, 4.040242212924785971e-04, 4.025943538631220607e-04, 4.011639135198796498e-04, 3.997329026194620027e-04, 3.983013235193353925e-04, 3.968691785777928504e-04, 3.954364701538150631e-04, 3.940032006072612461e-04, 3.925693722987677711e-04, 3.911349875896503168e-04, 3.897000488420889960e-04, 3.882645584190333259e-04, 3.868285186841281765e-04, 3.853919320017463513e-04, 3.839548007372080838e-04, 3.825171272563593914e-04, 3.810789139259206462e-04, 3.796401631133576636e-04, 3.782008771867762637e-04, 3.767610585151485981e-04, 3.753207094680478459e-04, 3.738798324158731316e-04, 3.724384297297429476e-04, 3.709965037814049490e-04, 3.695540569434140337e-04, 3.681110915890401848e-04, 3.666676100921618399e-04, 3.652236148274621858e-04, 3.637791081703213342e-04, 3.623340924967205327e-04, 3.608885701834276178e-04, 3.594425436079029599e-04, 3.579960151481931577e-04, 3.565489871831536246e-04, 3.551014620921542821e-04, 3.536534422554676502e-04, 3.522049300538372262e-04, 3.507559278687076066e-04, 3.493064380822471474e-04, 3.478564630772802550e-04, 3.464060052371909469e-04, 3.449550669461077623e-04, 3.435036505887712724e-04, 3.420517585505984280e-04, 3.405993932175458956e-04, 3.391465569763004438e-04, 3.376932522141789248e-04, 3.362394813190615426e-04, 3.347852466794147292e-04, 3.333305506845179057e-04, 3.318753957240744160e-04, 3.304197841883938901e-04, 3.289637184685859366e-04, 3.275072009561390382e-04, 3.260502340433011617e-04, 3.245928201227843120e-04, 3.231349615879879869e-04, 3.216766608329012732e-04, 3.202179202519954025e-04, 3.187587422404204794e-04, 3.172991291938990674e-04, 3.158390835086294780e-04, 3.143786075814743674e-04, 3.129177038098581169e-04, 3.114563745916678456e-04, 3.099946223254446630e-04, 3.085324494102785562e-04, 3.070698582457124376e-04, 3.056068512319583892e-04, 3.041434307696440679e-04, 3.026795992600256422e-04, 3.012153591048917327e-04, 2.997507127064635022e-04, 2.982856624675816267e-04, 2.968202107916062776e-04, 2.953543600823179717e-04, 2.938881127441061677e-04, 2.924214711818669721e-04, 2.909544378009049103e-04, 2.894870150071215779e-04, 2.880192052069148099e-04, 2.865510108070783374e-04, 2.850824342150224235e-04, 2.836134778384811280e-04, 2.821441440858955731e-04, 2.806744353659895328e-04, 2.792043540879574873e-04, 2.777339026616594542e-04, 2.762630834972251465e-04, 2.747918990052765592e-04, 2.733203515969581643e-04, 2.718484436838345081e-04, 2.703761776779530944e-04, 2.689035559917072335e-04, 2.674305810380296264e-04, 2.659572552302904495e-04, 2.644835809821950061e-04, 2.630095607079750339e-04, 2.615351968222895005e-04, 2.600604917401514197e-04, 2.585854478769592391e-04, 2.571100676487218122e-04, 2.556343534716279701e-04, 2.541583077624349368e-04, 2.526819329381724505e-04, 2.512052314163637783e-04, 2.497282056149288968e-04, 2.482508579520763432e-04, 2.467731908465007565e-04, 2.452952067172786861e-04, 2.438169079837635323e-04, 2.423382970657844975e-04, 2.408593763835388708e-04, 2.393801483574924170e-04, 2.379006154085710361e-04, 2.364207799580581709e-04, 2.349406444274939492e-04, 2.334602112388674668e-04, 2.319794828145126228e-04, 2.304984615770082649e-04, 2.290171499494029442e-04, 2.275355503549148894e-04, 2.260536652173232412e-04, 2.245714969605360249e-04, 2.230890480088174802e-04, 2.216063207868142725e-04, 2.201233177194902228e-04, 2.186400412320194608e-04, 2.171564937499812821e-04, 2.156726776992265481e-04, 2.141885955059362869e-04, 2.127042495964878482e-04, 2.112196423976485425e-04, 2.097347763364722348e-04, 2.082496538402303621e-04, 2.067642773364394186e-04, 2.052786492530901555e-04, 2.037927720182450980e-04, 2.023066480602675834e-04, 2.008202798078497062e-04, 1.993336696899099421e-04, 1.978468201356557341e-04, 1.963597335744445786e-04, 1.948724124359825700e-04, 1.933848591502182034e-04, 1.918970761472399986e-04, 1.904090658574711143e-04, 1.889208307115661592e-04, 1.874323731403085725e-04, 1.859436955748038284e-04, 1.844548004463769251e-04, 1.829656901864692769e-04, 1.814763672268332744e-04, 1.799868339994294749e-04, 1.784970929363212725e-04, 1.770071464699061038e-04, 1.755169970326435304e-04, 1.740266470572841406e-04, 1.725360989767664693e-04, 1.710453552241149474e-04, 1.695544182326305042e-04, 1.680632904357927187e-04, 1.665719742671523205e-04, 1.650804721605272679e-04, 1.635887865499000742e-04, 1.620969198693137780e-04, 1.606048745530669374e-04, 1.591126530355770746e-04, 1.576202577514432886e-04, 1.561276911353420903e-04, 1.546349556220570013e-04, 1.531420536467074022e-04, 1.516489876443452361e-04, 1.501557600501847510e-04, 1.486623732996306894e-04, 1.471688298282075168e-04, 1.456751320714566665e-04, 1.441812824651328613e-04, 1.426872834450651462e-04, 1.411931374472203684e-04, 1.396988469075664591e-04, 1.382044142622672648e-04, 1.367098419475799821e-04, 1.352151323997832202e-04, 1.337202880552077660e-04, 1.322253113504648348e-04, 1.307302047220082160e-04, 1.292349706064989715e-04, 1.277396114406667386e-04, 1.262441296612059726e-04, 1.247485277050049840e-04, 1.232528080088764872e-04, 1.217569730097858930e-04, 1.202610251447471982e-04, 1.187649668507201892e-04, 1.172688005648052194e-04, 1.157725287241398844e-04, 1.142761537657954675e-04, 1.127796781269716755e-04, 1.112831042448942769e-04, 1.097864345567099882e-04, 1.082896714996823623e-04, 1.067928175110889925e-04, 1.052958750281166430e-04, 1.037988464880910050e-04, 1.023017343282056461e-04, 1.008045409857520510e-04, 9.930726889801471129e-05, 9.780992050216819381e-05, 9.631249823547269047e-05, 9.481500453516988035e-05, 9.331744183837923940e-05, 9.181981258229376605e-05, 9.032211920407661604e-05, 8.882436414075692418e-05, 8.732654982942501495e-05, 8.582867870709640285e-05, 8.433075321077386304e-05, 8.283277577730988668e-05, 8.133474884360327394e-05, 7.983667484649464396e-05, 7.833855622269640900e-05, 7.684039540882150576e-05, 7.534219484161349019e-05, 7.384395695754170997e-05, 7.234568419303164324e-05, 7.084737898449323696e-05, 6.934904376821813805e-05, 6.785068098044118128e-05, 6.635229305720410497e-05, 6.485388243455081586e-05, 6.335545154842417306e-05, 6.185700283456134897e-05, 6.035853872869048322e-05, 5.886006166642636887e-05, 5.736157408316609800e-05, 5.586307841428625091e-05, 5.436457709503815543e-05, 5.286607256044348509e-05, 5.136756724552488915e-05, 4.986906358503423063e-05, 4.837056401368278273e-05, 4.687207096603685403e-05, 4.537358687641366445e-05, 4.387511417907777556e-05, 4.237665530813730533e-05, 4.087821269743942461e-05, 3.937978878076650959e-05, 3.788138599173298681e-05, 3.638300676367991473e-05, 3.488465352987257968e-05, 3.338632872339558568e-05, 3.188803477704918438e-05, 3.038977412354546150e-05, 2.889154919537070747e-05, 2.739336242484870099e-05, 2.589521624403609706e-05, 2.439711308475219848e-05, 2.289905537880860685e-05, 2.140104555760473381e-05, 1.990308605235732327e-05, 1.840517929413016868e-05, 1.690732771376336890e-05, 1.540953374176906178e-05, 1.391179980852789178e-05, 1.241412834415166186e-05, 1.091652177854595638e-05, 9.418982541272740406e-06, 7.921513061746813847e-06, 6.424115769131618716e-06, 4.926793092268600844e-06, 3.429547459706590910e-06, 1.932381299931695952e-06, 4.352970409291931807e-07, -1.061702889419640592e-06, -2.558616063642011041e-06, -4.055440054443782571e-06, -5.552172434813608737e-06, -7.048810778126988121e-06, -8.545352657949892454e-06, -1.004179564814286103e-05, -1.153813732296502652e-05, -1.303437525687782186e-05, -1.453050702464901116e-05, -1.602653020145668498e-05, -1.752244236269304180e-05, -1.901824108406839858e-05, -2.051392394171516403e-05, -2.200948851199163023e-05, -2.350493237158591709e-05, -2.500025309761995417e-05, -2.649544826742014815e-05, -2.799051545882112209e-05, -2.948545224976952765e-05, -3.098025621876184925e-05, -3.247492494461434325e-05, -3.396945600643384568e-05, -3.546384698368861140e-05, -3.695809545631187571e-05, -3.845219900450593220e-05, -3.994615520884602647e-05, -4.143996165038424980e-05, -4.293361591045342728e-05, -4.442711557080437782e-05, -4.592045821354322693e-05, -4.741364142123526653e-05, -4.890666277687557304e-05, -5.039951986365914978e-05, -5.189221026538581546e-05, -5.338473156622967571e-05, -5.487708135071039852e-05, -5.636925720379676227e-05, -5.786125671084423283e-05, -5.935307745773218290e-05, -6.084471703066663496e-05, -6.233617301628626914e-05, -6.382744300176463638e-05, -6.531852457461470389e-05, -6.680941532279262686e-05, -6.830011283480149980e-05, -6.979061469949588846e-05, -7.128091850618477484e-05, -7.277102184473596583e-05, -7.426092230538025921e-05, -7.575061747881489010e-05, -7.724010495630719421e-05, -7.872938232946619357e-05, -8.021844719051181749e-05, -8.170729713204644758e-05, -8.319592974715871658e-05, -8.468434262952604676e-05, -8.617253337322148578e-05, -8.766049957281398181e-05, -8.914823882347459470e-05, -9.063574872078043157e-05, -9.212302686081709035e-05, -9.361007084028377320e-05, -9.509687825629634117e-05, -9.658344670649210233e-05, -9.806977378913247221e-05, -9.955585710287510155e-05, -1.010416942470759486e-04, -1.025272828213947787e-04, -1.040126204262315960e-04, -1.054977046625293598e-04, -1.069825331315811453e-04, -1.084671034354300922e-04, -1.099514131766427390e-04, -1.114354599582782719e-04, -1.129192413839592965e-04, -1.144027550579759751e-04, -1.158859985850894069e-04, -1.173689695706695111e-04, -1.188516656206313981e-04, -1.203340843415736186e-04, -1.218162233405801614e-04, -1.232980802253272063e-04, -1.247796526041502639e-04, -1.262609380860169343e-04, -1.277419342802981004e-04, -1.292226387972017032e-04, -1.307030492473812368e-04, -1.321831632422347709e-04, -1.336629783936797082e-04, -1.351424923142536692e-04, -1.366217026172200123e-04, -1.381006069163704547e-04, -1.395792028261302940e-04, -1.410574879616608660e-04, -1.425354599386646044e-04, -1.440131163734882300e-04, -1.454904548832255061e-04, -1.469674730855243861e-04, -1.484441685986869223e-04, -1.499205390417753013e-04, -1.513965820343823453e-04, -1.528722951969010177e-04, -1.543476761502958190e-04, -1.558227225162072500e-04, -1.572974319170848429e-04, -1.587718019758316247e-04, -1.602458303162339760e-04, -1.617195145627365238e-04, -1.631928523404113228e-04, -1.646658412750287624e-04, -1.661384789931601050e-04, -1.676107631219826005e-04, -1.690826912893836787e-04, -1.705542611240621319e-04, -1.720254702553361569e-04, -1.734963163132763602e-04, -1.749667969286463156e-04, -1.764369097330031248e-04, -1.779066523586688483e-04, -1.793760224385054249e-04, -1.808450176063109208e-04, -1.823136354965948557e-04, -1.837818737445480889e-04, -1.852497299861457917e-04, -1.867172018580860813e-04, -1.881842869979233779e-04, -1.896509830438767447e-04, -1.911172876349319383e-04, -1.925831984109439474e-04, -1.940487130124425141e-04, -1.955138290807348887e-04, -1.969785442579770893e-04, -1.984428561871423244e-04, -1.999067625117969421e-04, -2.013702608765286634e-04, -2.028333489265596572e-04, -2.042960243080423923e-04, -2.057582846678363724e-04, -2.072201276536092117e-04, -2.086815509139381428e-04, -2.101425520981178689e-04, -2.116031288562632924e-04, -2.130632788394097490e-04, -2.145229996993231099e-04, -2.159822890885978476e-04, -2.174411446607628004e-04, -2.188995640700861238e-04, -2.203575449716789134e-04, -2.218150850215947617e-04, -2.232721818766403212e-04, -2.247288331944752673e-04, -2.261850366337138070e-04, -2.276407898537009811e-04, -2.290960905148094098e-04, -2.305509362780514470e-04, -2.320053248055086597e-04, -2.334592537601038202e-04, -2.349127208055758339e-04, -2.363657236065466348e-04, -2.378182598286219618e-04, -2.392703271382028705e-04, -2.407219232026154576e-04, -2.421730456900529106e-04, -2.436236922697075365e-04, -2.450738606115803755e-04, -2.465235483865814360e-04, -2.479727532666005201e-04, -2.494214729244744258e-04, -2.508697050337687522e-04, -2.523174472691662061e-04, -2.537646973062778421e-04, -2.552114528214545746e-04, -2.566577114922066012e-04, -2.581034709968238776e-04, -2.595487290146672801e-04, -2.609934832259489467e-04, -2.624377313118315350e-04, -2.638814709545263975e-04, -2.653246998371104051e-04, -2.667674156436181045e-04, -2.682096160591485121e-04, -2.696512987696715840e-04, -2.710924614621316488e-04, -2.725331018245449855e-04, -2.739732175458119861e-04, -2.754128063158166849e-04, -2.768518658255286194e-04, -2.782903937667771535e-04, -2.797283878325185712e-04, -2.811658457166082850e-04, -2.826027651139077931e-04, -2.840391437203770527e-04, -2.854749792328926603e-04, -2.869102693493431520e-04, -2.883450117687296724e-04, -2.897792041909810095e-04, -2.912128443170468360e-04, -2.926459298490040155e-04, -2.940784584898635599e-04, -2.955104279436725451e-04, -2.969418359156129894e-04, -2.983726801117827371e-04, -2.998029582394846145e-04, -3.012326680068489653e-04, -3.026618071232516647e-04, -3.040903732991261728e-04, -3.055183642457765642e-04, -3.069457776757587874e-04, -3.083726113026715224e-04, -3.097988628411184504e-04, -3.112245300068116325e-04, -3.126496105165104691e-04, -3.140741020881544061e-04, -3.154980024406709772e-04, -3.169213092940822182e-04, -3.183440203695981794e-04, -3.197661333894285998e-04, -3.211876460768883996e-04, -3.226085561564586671e-04, -3.240288613537622097e-04, -3.254485593953431355e-04, -3.268676480090828619e-04, -3.282861249238248728e-04, -3.297039878696618161e-04, -3.311212345777195839e-04, -3.325378627802519100e-04, -3.339538702107428805e-04, -3.353692546037202889e-04, -3.367840136948522926e-04, -3.381981452210455329e-04, -3.396116469202627728e-04, -3.410245165316168423e-04, -3.424367517954720664e-04, -3.438483504532571311e-04, -3.452593102475641799e-04, -3.466696289222451991e-04, -3.480793042221975086e-04, -3.494883338936178446e-04, -3.508967156837852481e-04, -3.523044473411605947e-04, -3.537115266155135547e-04, -3.551179512575835628e-04, -3.565237190194895929e-04, -3.579288276545146180e-04, -3.593332749170779095e-04, -3.607370585627998178e-04, -3.621401763486014106e-04, -3.635426260325215139e-04, -3.649444053738398774e-04, -3.663455121330244277e-04, -3.677459440718570905e-04, -3.691456989532467653e-04, -3.705447745413344390e-04, -3.719431686015509195e-04, -3.733408789005954230e-04, -3.747379032062152639e-04, -3.761342392875894453e-04, -3.775298849151083498e-04, -3.789248378603528680e-04, -3.803190958961814600e-04, -3.817126567966828846e-04, -3.831055183372965994e-04, -3.844976782946299648e-04, -3.858891344465609718e-04, -3.872798845723263877e-04, -3.886699264523464951e-04, -3.900592578683171404e-04, -3.914478766033094260e-04, -3.928357804415838245e-04, -3.942229671686916593e-04, -3.956094345715623290e-04, -3.969951804383358525e-04, -3.983802025584420696e-04, -3.997644987227109590e-04, -4.011480667231520571e-04, -4.025309043532079986e-04, -4.039130094075402242e-04, -4.052943796821269922e-04, -4.066750129743588430e-04, -4.080549070828555849e-04, -4.094340598075634939e-04, -4.108124689498510477e-04, -4.121901323123310090e-04, -4.135670476989471069e-04, -4.149432129150815358e-04, -4.163186257673636478e-04, -4.176932840638040685e-04, -4.190671856137312716e-04, -4.204403282278914330e-04, -4.218127097184181285e-04, -4.231843278986220517e-04, -4.245551805833621371e-04, -4.259252655888370138e-04, -4.272945807325541595e-04, -4.286631238333967419e-04, -4.300308927117173479e-04, -4.313978851891603372e-04, -4.327640990887863626e-04, -4.341295322350123055e-04, -4.354941824537407295e-04, -4.368580475721812041e-04, -4.382211254189367694e-04, -4.395834138240795053e-04, -4.409449106191158912e-04, -4.423056136367797234e-04, -4.436655207114320772e-04, -4.450246296787259089e-04, -4.463829383757381662e-04, -4.477404446410598849e-04, -4.490971463145842818e-04, -4.504530412377588861e-04, -4.518081272533742824e-04, -4.531624022056564304e-04, -4.545158639403653819e-04, -4.558685103046114539e-04, -4.572203391469561139e-04, -4.585713483174983906e-04, -4.599215356677038955e-04, -4.612708990504944860e-04, -4.626194363203430795e-04, -4.639671453330988251e-04, -4.653140239460783938e-04, -4.666600700181579731e-04, -4.680052814095701417e-04, -4.693496559821451041e-04, -4.706931915991039881e-04, -4.720358861251535494e-04, -4.733777374265794673e-04, -4.747187433710674514e-04, -4.760589018277986513e-04, -4.773982106675438738e-04, -4.787366677624855572e-04, -4.800742709863078678e-04, -4.814110182142983989e-04, -4.827469073231660784e-04, -4.840819361911600518e-04, -4.854161026980232784e-04, -4.867494047250789965e-04, -4.880818401552058949e-04, -4.894134068726314641e-04, -4.907441027632937405e-04, -4.920739257146703816e-04, -4.934028736155908826e-04, -4.947309443566147999e-04, -4.960581358298100322e-04, -4.973844459287391591e-04, -4.987098725485416238e-04, -5.000344135858872212e-04, -5.013580669390893963e-04, -5.026808305079383862e-04, -5.040027021937880641e-04, -5.053236798996489643e-04, -5.066437615300178453e-04, -5.079629449909628001e-04, -5.092812281902232190e-04, -5.105986090370293789e-04, -5.119150854421968769e-04, -5.132306553182213902e-04, -5.145453165790699664e-04, -5.158590671404197654e-04, -5.171719049194656130e-04, -5.184838278349986063e-04, -5.197948338075052089e-04, -5.211049207589904184e-04, -5.224140866130725248e-04, -5.237223292950722326e-04, -5.250296467318409229e-04, -5.263360368518510760e-04, -5.276414975852875607e-04, -5.289460268638774155e-04, -5.302496226209735481e-04, -5.315522827916610961e-04, -5.328540053125649812e-04, -5.341547881219858677e-04, -5.354546291598391225e-04, -5.367535263677445864e-04, -5.380514776890043486e-04, -5.393484810683979403e-04, -5.406445344525389295e-04, -5.419396357896702227e-04, -5.432337830296398882e-04, -5.445269741239679422e-04, -5.458192070259271222e-04, -5.471104796903755946e-04, -5.484007900738831556e-04, -5.496901361346652037e-04, -5.509785158327114339e-04, -5.522659271296069452e-04, -5.535523679886300346e-04, -5.548378363748079261e-04, -5.561223302548936763e-04, -5.574058475971654892e-04, -5.586883863718074879e-04, -5.599699445505629865e-04, -5.612505201070030472e-04, -5.625301110163213490e-04, -5.638087152554272126e-04, -5.650863308030372152e-04, -5.663629556395002006e-04, -5.676385877468926883e-04, -5.689132251091026833e-04, -5.701868657116672618e-04, -5.714595075418510677e-04, -5.727311485887509384e-04, -5.740017868431119153e-04, -5.752714202974266652e-04, -5.765400469460190726e-04, -5.778076647848773804e-04, -5.790742718117438542e-04, -5.803398660262029272e-04, -5.816044454294846348e-04, -5.828680080247252565e-04, -5.841305518166240579e-04, -5.853920748118254715e-04, -5.866525750187139661e-04, -5.879120504473946390e-04, -5.891704991097506793e-04, -5.904279190195308629e-04, -5.916843081921858375e-04, -5.929396646449505226e-04, -5.941939863969402779e-04, -5.954472714689793824e-04, -5.966995178837116234e-04, -5.979507236655610481e-04, -5.992008868408078576e-04, -6.004500054375652056e-04, -6.016980774855919560e-04, -6.029451010166230395e-04, -6.041910740641855734e-04, -6.054359946635653588e-04, -6.066798608519044598e-04, -6.079226706681349580e-04, -6.091644221531063467e-04, -6.104051133494137931e-04, -6.116447423014870427e-04, -6.128833070556772645e-04, -6.141208056600925766e-04, -6.153572361646823981e-04, -6.165925966213294971e-04, -6.178268850836843252e-04, -6.190600996072440554e-04, -6.202922382494505940e-04, -6.215232990695205781e-04, -6.227532801285295093e-04, -6.239821794895032605e-04, -6.252099952172273647e-04, -6.264367253784653734e-04, -6.276623680417725906e-04, -6.288869212775841100e-04, -6.301103831582959133e-04, -6.313327517581040832e-04, -6.325540251530911056e-04, -6.337742014213137987e-04, -6.349932786426361287e-04, -6.362112548988177897e-04, -6.374281282735971442e-04, -6.386438968525398694e-04, -6.398585587231041174e-04, -6.410721119747472005e-04, -6.422845546987224121e-04, -6.434958849883341391e-04, -6.447061009386097826e-04, -6.459152006466660012e-04, -6.471231822115074833e-04, -6.483300437340124185e-04, -6.495357833169894185e-04, -6.507403990652554709e-04, -6.519438890854836093e-04, -6.531462514862849868e-04, -6.543474843782860718e-04, -6.555475858739835812e-04, -6.567465540878399989e-04, -6.579443871362456288e-04, -6.591410831376168233e-04, -6.603366402122518930e-04, -6.615310564824001703e-04, -6.627243300723292298e-04, -6.639164591082965909e-04, -6.651074417183670297e-04, -6.662972760327565960e-04, -6.674859601835276277e-04, -6.686734923048205529e-04, -6.698598705326734787e-04, -6.710450930051074098e-04, -6.722291578622064789e-04, -6.734120632459663757e-04, -6.745938073003621095e-04, -6.757743881714551280e-04, -6.769538040072116056e-04, -6.781320529576024062e-04, -6.793091331746791946e-04, -6.804850428124136494e-04, -6.816597800267909209e-04, -6.828333429758836823e-04, -6.840057298196722604e-04, -6.851769387202557302e-04, -6.863469678416764903e-04, -6.875158153499973503e-04, -6.886834794134123359e-04, -6.898499582019533040e-04, -6.910152498878484881e-04, -6.921793526453270170e-04, -6.933422646506043861e-04, -6.945039840819313554e-04, -6.956645091196856723e-04, -6.968238379462041296e-04, -6.979819687458740712e-04, -6.991388997052123229e-04, -7.002946290127088497e-04, -7.014491548589361523e-04, -7.026024754364980926e-04, -7.037545889401153288e-04, -7.049054935665964756e-04, -7.060551875146622467e-04, -7.072036689852555366e-04, -7.083509361813740196e-04, -7.094969873080297093e-04, -7.106418205723472959e-04, -7.117854341835006112e-04, -7.129278263528292898e-04, -7.140689952936780894e-04, -7.152089392214842781e-04, -7.163476563538561303e-04, -7.174851449104169103e-04, -7.186214031128866208e-04, -7.197564291851402249e-04, -7.208902213531815165e-04, -7.220227778449674798e-04, -7.231540968907368026e-04, -7.242841767227222371e-04, -7.254130155753633208e-04, -7.265406116851484079e-04, -7.276669632906826489e-04, -7.287920686327647524e-04, -7.299159259542516761e-04, -7.310385335001245467e-04, -7.321598895175701919e-04, -7.332799922558342308e-04, -7.343988399662996786e-04, -7.355164309025604558e-04, -7.366327633202830434e-04, -7.377478354772726201e-04, -7.388616456335600144e-04, -7.399741920512511095e-04, -7.410854729946027373e-04, -7.421954867301013914e-04, -7.433042315262919234e-04, -7.444117056540090196e-04, -7.455179073860686376e-04, -7.466228349976090960e-04, -7.477264867659103378e-04, -7.488288609703702952e-04, -7.499299558925685318e-04, -7.510297698163268497e-04, -7.521283010275822212e-04, -7.532255478144673447e-04, -7.543215084672842989e-04, -7.554161812785934469e-04, -7.565095645430653347e-04, -7.576016565575754503e-04, -7.586924556212319790e-04, -7.597819600353750450e-04, -7.608701681033915292e-04, -7.619570781310182122e-04, -7.630426884262071167e-04, -7.641269972989601662e-04, -7.652100030616664807e-04, -7.662917040288087745e-04, -7.673720985171826907e-04, -7.684511848457270143e-04, -7.695289613356072651e-04, -7.706054263102798821e-04, -7.716805780953568065e-04, -7.727544150186849538e-04, -7.738269354104109410e-04, -7.748981376028410070e-04, -7.759680199305252560e-04, -7.770365807303212993e-04, -7.781038183412549358e-04, -7.791697311046037440e-04, -7.802343173639583393e-04, -7.812975754650665740e-04, -7.823595037560226225e-04, -7.834201005871063023e-04, -7.844793643108546313e-04, -7.855372932821329517e-04, -7.865938858580055846e-04, -7.876491403977924251e-04, -7.887030552631587145e-04, -7.897556288179696489e-04, -7.908068594283571657e-04, -7.918567454628080895e-04, -7.929052852920095247e-04, -7.939524772889304961e-04, -7.949983198288966503e-04, -7.960428112894213371e-04, -7.970859500504252687e-04, -7.981277344939557115e-04, -7.991681630044928817e-04, -8.002072339688116008e-04, -8.012449457758462042e-04, -8.022812968169708075e-04, -8.033162854858385193e-04, -8.043499101783610581e-04, -8.053821692927846465e-04, -8.064130612296391623e-04, -8.074425843918356079e-04, -8.084707371845366568e-04, -8.094975180152178028e-04, -8.105229252937449884e-04, -8.115469574322382125e-04, -8.125696128451417866e-04, -8.135908899492780028e-04, -8.146107871638147164e-04, -8.156293029101190865e-04, -8.166464356120543226e-04, -8.176621836957034296e-04, -8.186765455895850729e-04, -8.196895197244825990e-04, -8.207011045335363018e-04, -8.217112984522960059e-04, -8.227200999185864090e-04, -8.237275073725959865e-04, -8.247335192569239370e-04, -8.257381340164679680e-04, -8.267413500984781803e-04, -8.277431659526369740e-04, -8.287435800309214630e-04, -8.297425907876750323e-04, -8.307401966796766190e-04, -8.317363961659894655e-04, -8.327311877081376278e-04, -8.337245697699503929e-04, -8.347165408176391481e-04, -8.357070993198862860e-04, -8.366962437475952957e-04, -8.376839725741915205e-04, -8.386702842754669004e-04, -8.396551773295588298e-04, -8.406386502169896227e-04, -8.416207014207528151e-04, -8.426013294261670145e-04, -8.435805327209702255e-04, -8.445583097952841798e-04, -8.455346591416969520e-04, -8.465095792551406619e-04, -8.474830686329498045e-04, -8.484551257749173032e-04, -8.494257491832730425e-04, -8.503949373625263337e-04, -8.513626888197347968e-04, -8.523290020643596197e-04, -8.532938756082366098e-04, -8.542573079656471009e-04, -8.552192976532784884e-04, -8.561798431903125915e-04, -8.571389430982986933e-04, -8.580965959012140393e-04, -8.590528001255456946e-04, -8.600075543001430923e-04, -8.609608569563044446e-04, -8.619127066278336633e-04, -8.628631018509091716e-04, -8.638120411641629420e-04, -8.647595231087379592e-04, -8.657055462281626696e-04, -8.666501090684241649e-04, -8.675932101780233678e-04, -8.685348481078370136e-04, -8.694750214112915553e-04, -8.704137286442019438e-04, -8.713509683648553274e-04, -8.722867391340723099e-04, -8.732210395150691480e-04, -8.741538680735422111e-04, -8.750852233777200225e-04, -8.760151039982467082e-04, -8.769435085082394592e-04, -8.778704354833669196e-04, -8.787958835017078063e-04, -8.797198511438533665e-04, -8.806423369928528420e-04, -8.815633396342968447e-04, -8.824828576562772408e-04, -8.834008896492592149e-04, -8.843174342063269506e-04, -8.852324899230421418e-04, -8.861460553974250193e-04, -8.870581292299907798e-04, -8.879687100238324192e-04, -8.888777963844753409e-04, -8.897853869199805719e-04, -8.906914802408971666e-04, -8.915960749603448225e-04, -8.924991696939031834e-04, -8.934007630596570507e-04, -8.943008536782638207e-04, -8.951994401729132609e-04, -8.960965211691979473e-04, -8.969920952953762926e-04, -8.978861611821580902e-04, -8.987787174627739038e-04, -8.996697627730512866e-04, -9.005592957512710160e-04, -9.014473150383244112e-04, -9.023338192775864821e-04, -9.032188071149663440e-04, -9.041022771989748723e-04, -9.049842281806130297e-04, -9.058646587134192452e-04, -9.067435674535399967e-04, -9.076209530596186792e-04, -9.084968141928430937e-04, -9.093711495170170040e-04, -9.102439576984421759e-04, -9.111152374059728037e-04, -9.119849873110882606e-04, -9.128532060877473818e-04, -9.137198924125521787e-04, -9.145850449646101459e-04, -9.154486624255990957e-04, -9.163107434798236457e-04, -9.171712868141028950e-04, -9.180302911178285378e-04, -9.188877550830241688e-04, -9.197436774042370804e-04, -9.205980567785925807e-04, -9.214508919058570944e-04, -9.223021814883164068e-04, -9.231519242308683631e-04, -9.240001188409776569e-04, -9.248467640287358956e-04, -9.256918585068439273e-04, -9.265354009904817369e-04, -9.273773901975401399e-04, -9.282178248485080255e-04, -9.290567036663598165e-04, -9.298940253767800073e-04, -9.307297887080445524e-04, -9.315639923909888823e-04, -9.323966351590779432e-04, -9.332277157483706348e-04, -9.340572328975857300e-04, -9.348851853480001769e-04, -9.357115718435118738e-04, -9.365363911306804354e-04, -9.373596419586357944e-04, -9.381813230791254728e-04, -9.390014332465742132e-04, -9.398199712179774014e-04, -9.406369357529534335e-04, -9.414523256138036724e-04, -9.422661395653888486e-04, -9.430783763752685969e-04, -9.438890348135910852e-04, -9.446981136531219618e-04, -9.455056116693397661e-04, -9.463115276402919458e-04, -9.471158603466704263e-04, -9.479186085718699405e-04, -9.487197711018648637e-04, -9.495193467252817463e-04, -9.503173342334494044e-04, -9.511137324202887646e-04, -9.519085400823799762e-04, -9.527017560190011169e-04, -9.534933790320335428e-04, -9.542834079260420098e-04, -9.550718415082182959e-04, -9.558586785884601311e-04, -9.566439179793456097e-04, -9.574275584960031948e-04, -9.582095989563426536e-04, -9.589900381809113999e-04, -9.597688749929078307e-04, -9.605461082181820844e-04, -9.613217366853255962e-04, -9.620957592255427286e-04, -9.628681746727398927e-04, -9.636389818634745908e-04, -9.644081796370409599e-04, -9.651757668353649292e-04, -9.659417423030523591e-04, -9.667061048874283974e-04, -9.674688534385265286e-04, -9.682299868089621567e-04, -9.689895038541575766e-04, -9.697474034321500701e-04, -9.705036844037292750e-04, -9.712583456323405822e-04, -9.720113859841132166e-04, -9.727628043279334209e-04, -9.735125995353385289e-04, -9.742607704805620683e-04, -9.750073160405970784e-04, -9.757522350950881230e-04, -9.764955265263887537e-04, -9.772371892196130092e-04, -9.779772220625316571e-04, -9.787156239456254285e-04, -9.794523937621470340e-04, -9.801875304080098165e-04, -9.809210327818404431e-04, -9.816528997850391871e-04, -9.823831303216600148e-04, -9.831117232985571702e-04, -9.838386776251999925e-04, -9.845639922138717595e-04, -9.852876659795788312e-04, -9.860096978400096669e-04, -9.867300867155927215e-04, -9.874488315295322245e-04, -9.881659312077162392e-04, -9.888813846787702228e-04, -9.895951908741047309e-04, -9.903073487278158879e-04, -9.910178571767580286e-04, -9.917267151605118226e-04, -9.924339216214274253e-04, -9.931394755046244784e-04, -9.938433757578607041e-04, -9.945456213317472281e-04, -9.952462111796199929e-04, -9.959451442575386736e-04, -9.966424195243283116e-04, -9.973380359415517753e-04, -9.980319924735787159e-04, -9.987242880874801828e-04, -9.994149217530893387e-04, -1.000103892443049598e-03, -1.000791199132710979e-03, -1.001476840800188863e-03, -1.002160816426395009e-03, -1.002843124995026489e-03, -1.003523765492443610e-03, -1.004202736907894343e-03, -1.004880038233327191e-03, -1.005555668463465344e-03, -1.006229626595853957e-03, -1.006901911630745869e-03, -1.007572522571235831e-03, -1.008241458423144278e-03, -1.008908718195074793e-03, -1.009574300898457688e-03, -1.010238205547458069e-03, -1.010900431159023104e-03, -1.011560976752931898e-03, -1.012219841351698563e-03, -1.012877023980636405e-03, -1.013532523667882860e-03, -1.014186339444321430e-03, -1.014838470343629824e-03, -1.015488915402325927e-03, -1.016137673659659379e-03, -1.016784744157748187e-03, -1.017430125941410669e-03, -1.018073818058345438e-03, -1.018715819559040756e-03, -1.019356129496753940e-03, -1.019994746927550605e-03, -1.020631670910336327e-03, -1.021266900506788118e-03, -1.021900434781382186e-03, -1.022532272801447923e-03, -1.023162413637083989e-03, -1.023790856361215347e-03, -1.024417600049561811e-03, -1.025042643780700504e-03, -1.025665986635980855e-03, -1.026287627699568614e-03, -1.026907566058479033e-03, -1.027525800802555614e-03, -1.028142331024379033e-03, -1.028757155819454714e-03, -1.029370274286032626e-03, -1.029981685525248455e-03, -1.030591388641024283e-03, -1.031199382740103721e-03, -1.031805666932102648e-03, -1.032410240329422043e-03, -1.033013102047298289e-03, -1.033614251203840472e-03, -1.034213686919943642e-03, -1.034811408319347148e-03, -1.035407414528658702e-03, -1.036001704677288896e-03, -1.036594277897478957e-03, -1.037185133324359512e-03, -1.037774270095840430e-03, -1.038361687352732906e-03, -1.038947384238647111e-03, -1.039531359900039680e-03, -1.040113613486267491e-03, -1.040694144149441076e-03, -1.041272951044595278e-03, -1.041850033329604465e-03, -1.042425390165167788e-03, -1.042999020714834761e-03, -1.043570924145046904e-03, -1.044141099625060538e-03, -1.044709546326987992e-03, -1.045276263425840967e-03, -1.045841250099446189e-03, -1.046404505528497880e-03, -1.046966028896548434e-03, -1.047525819390026638e-03, -1.048083876198242868e-03, -1.048640198513291948e-03, -1.049194785530213614e-03, -1.049747636446895149e-03, -1.050298750464065097e-03, -1.050848126785341617e-03, -1.051395764617190200e-03, -1.051941663168991107e-03, -1.052485821652953931e-03, -1.053028239284162270e-03, -1.053568915280610153e-03, -1.054107848863132871e-03, -1.054645039255440149e-03, -1.055180485684138487e-03, -1.055714187378731369e-03, -1.056246143571523645e-03, -1.056776353497792609e-03, -1.057304816395627112e-03, -1.057831531506054409e-03, -1.058356498072940410e-03, -1.058879715343047151e-03, -1.059401182566051649e-03, -1.059920898994480640e-03, -1.060438863883751996e-03, -1.060955076492205726e-03, -1.061469536081040884e-03, -1.061982241914337897e-03, -1.062493193259116467e-03, -1.063002389385246009e-03, -1.063509829565490762e-03, -1.064015513075545994e-03, -1.064519439193973823e-03, -1.065021607202219474e-03, -1.065522016384675254e-03, -1.066020666028576896e-03, -1.066517555424126946e-03, -1.067012683864339501e-03, -1.067506050645200674e-03, -1.067997655065594216e-03, -1.068487496427281786e-03, -1.068975574034925066e-03, -1.069461887196132815e-03, -1.069946435221386712e-03, -1.070429217424081472e-03, -1.070910233120510747e-03, -1.071389481629917654e-03, -1.071866962274418012e-03, -1.072342674379036555e-03, -1.072816617271735769e-03, -1.073288790283406357e-03, -1.073759192747778977e-03, -1.074227824001575170e-03, -1.074694683384409127e-03, -1.075159770238806123e-03, -1.075623083910205767e-03, -1.076084623746962655e-03, -1.076544389100383232e-03, -1.077002379324665292e-03, -1.077458593776919882e-03, -1.077913031817220304e-03, -1.078365692808529045e-03, -1.078816576116729863e-03, -1.079265681110665957e-03, -1.079713007162074259e-03, -1.080158553645619917e-03, -1.080602319938924263e-03, -1.081044305422509738e-03, -1.081484509479823525e-03, -1.081922931497277885e-03, -1.082359570864171224e-03, -1.082794426972779169e-03, -1.083227499218270863e-03, -1.083658786998763831e-03, -1.084088289715322241e-03, -1.084516006771931319e-03, -1.084941937575501251e-03, -1.085366081535911421e-03, -1.085788438065954029e-03, -1.086209006581351005e-03, -1.086627786500798032e-03, -1.087044777245900354e-03, -1.087459978241202925e-03, -1.087873388914225746e-03, -1.088285008695384940e-03, -1.088694837018090115e-03, -1.089102873318632250e-03, -1.089509117036296026e-03, -1.089913567613316238e-03, -1.090316224494815344e-03, -1.090717087128920343e-03, -1.091116154966697942e-03, -1.091513427462132216e-03, -1.091908904072182943e-03, -1.092302584256738115e-03, -1.092694467478666628e-03, -1.093084553203761255e-03, -1.093472840900763582e-03, -1.093859330041403472e-03, -1.094244020100323391e-03, -1.094626910555128929e-03, -1.095008000886396821e-03, -1.095387290577661942e-03, -1.095764779115372418e-03, -1.096140465988980047e-03, -1.096514350690863107e-03, -1.096886432716383166e-03, -1.097256711563842583e-03, -1.097625186734493179e-03, -1.097991857732579608e-03, -1.098356724065274737e-03, -1.098719785242718893e-03, -1.099081040778035912e-03, -1.099440490187286517e-03, -1.099798132989490869e-03, -1.100153968706665862e-03, -1.100507996863760510e-03, -1.100860216988688248e-03, -1.101210628612357949e-03, -1.101559231268609083e-03, -1.101906024494272432e-03, -1.102251007829133230e-03, -1.102594180815934417e-03, -1.102935543000428242e-03, -1.103275093931273482e-03, -1.103612833160146252e-03, -1.103948760241684271e-03, -1.104282874733484047e-03, -1.104615176196109116e-03, -1.104945664193114543e-03, -1.105274338291014832e-03, -1.105601198059291733e-03, -1.105926243070400744e-03, -1.106249472899792797e-03, -1.106570887125868288e-03, -1.106890485330000061e-03, -1.107208267096559213e-03, -1.107524232012889942e-03, -1.107838379669273763e-03, -1.108150709659012131e-03, -1.108461221578375695e-03, -1.108769915026599313e-03, -1.109076789605897883e-03, -1.109381844921465471e-03, -1.109685080581494180e-03, -1.109986496197127312e-03, -1.110286091382499049e-03, -1.110583865754738789e-03, -1.110879818933933200e-03, -1.111173950543158529e-03, -1.111466260208482772e-03, -1.111756747558949624e-03, -1.112045412226569810e-03, -1.112332253846367268e-03, -1.112617272056320170e-03, -1.112900466497415350e-03, -1.113181836813608187e-03, -1.113461382651833882e-03, -1.113739103662036295e-03, -1.114014999497121329e-03, -1.114289069812984681e-03, -1.114561314268525940e-03, -1.114831732525613022e-03, -1.115100324249095835e-03, -1.115367089106839450e-03, -1.115632026769673366e-03, -1.115895136911408854e-03, -1.116156419208876472e-03, -1.116415873341869685e-03, -1.116673498993176958e-03, -1.116929295848576118e-03, -1.117183263596836741e-03, -1.117435401929735977e-03, -1.117685710541995890e-03, -1.117934189131373655e-03, -1.118180837398606705e-03, -1.118425655047411860e-03, -1.118668641784497471e-03, -1.118909797319586619e-03, -1.119149121365371584e-03, -1.119386613637547451e-03, -1.119622273854792597e-03, -1.119856101738799263e-03, -1.120088097014231270e-03, -1.120318259408755466e-03, -1.120546588653034128e-03, -1.120773084480732127e-03, -1.120997746628483310e-03, -1.121220574835943848e-03, -1.121441568845753418e-03, -1.121660728403533471e-03, -1.121878053257935803e-03, -1.122093543160569262e-03, -1.122307197866071089e-03, -1.122519017132055964e-03, -1.122729000719131830e-03, -1.122937148390925483e-03, -1.123143459914040070e-03, -1.123347935058076341e-03, -1.123550573595650430e-03, -1.123751375302360677e-03, -1.123950339956799986e-03, -1.124147467340571660e-03, -1.124342757238274652e-03, -1.124536209437498793e-03, -1.124727823728841926e-03, -1.124917599905884752e-03, -1.125105537765235496e-03, -1.125291637106470280e-03, -1.125475897732180607e-03, -1.125658319447957320e-03, -1.125838902062388427e-03, -1.126017645387053252e-03, -1.126194549236548669e-03, -1.126369613428460483e-03, -1.126542837783368846e-03, -1.126714222124866474e-03, -1.126883766279541087e-03, -1.127051470076976484e-03, -1.127217333349758840e-03, -1.127381355933483641e-03, -1.127543537666740071e-03, -1.127703878391111449e-03, -1.127862377951188667e-03, -1.128019036194580606e-03, -1.128173852971854499e-03, -1.128326828136616816e-03, -1.128477961545467723e-03, -1.128627253057997186e-03, -1.128774702536804913e-03, -1.128920309847483662e-03, -1.129064074858641357e-03, -1.129205997441876585e-03, -1.129346077471789223e-03, -1.129484314825990191e-03, -1.129620709385080858e-03, -1.129755261032664533e-03, -1.129887969655361856e-03, -1.130018835142774592e-03, -1.130147857387513817e-03, -1.130275036285199918e-03, -1.130400371734440693e-03, -1.130523863636858674e-03, -1.130645511897072041e-03, -1.130765316422691590e-03, -1.130883277124352607e-03, -1.130999393915668684e-03, -1.131113666713261636e-03, -1.131226095436766062e-03, -1.131336680008801585e-03, -1.131445420354997575e-03, -1.131552316403988592e-03, -1.131657368087399208e-03, -1.131760575339862225e-03, -1.131861938099016068e-03, -1.131961456305485055e-03, -1.132059129902916262e-03, -1.132154958837935498e-03, -1.132248943060180056e-03, -1.132341082522296321e-03, -1.132431377179911151e-03, -1.132519826991666570e-03, -1.132606431919208059e-03, -1.132691191927165039e-03, -1.132774106983179064e-03, -1.132855177057892973e-03, -1.132934402124946126e-03, -1.133011782160974834e-03, -1.133087317145612576e-03, -1.133161007061507563e-03, -1.133232851894292598e-03, -1.133302851632602424e-03, -1.133371006268075456e-03, -1.133437315795350533e-03, -1.133501780212051082e-03, -1.133564399518818952e-03, -1.133625173719276895e-03, -1.133684102820060663e-03, -1.133741186830795585e-03, -1.133796425764100691e-03, -1.133849819635606273e-03, -1.133901368463926347e-03, -1.133951072270681206e-03, -1.133998931080483323e-03, -1.134044944920945810e-03, -1.134089113822675261e-03, -1.134131437819276521e-03, -1.134171916947348353e-03, -1.134210551246491025e-03, -1.134247340759292648e-03, -1.134282285531342839e-03, -1.134315385611224481e-03, -1.134346641050515457e-03, -1.134376051903788433e-03, -1.134403618228610857e-03, -1.134429340085542793e-03, -1.134453217538141691e-03, -1.134475250652955663e-03, -1.134495439499525436e-03, -1.134513784150388907e-03, -1.134530284681072899e-03, -1.134544941170100756e-03, -1.134557753698983446e-03, -1.134568722352227157e-03, -1.134577847217327221e-03, -1.134585128384776789e-03, -1.134590565948045363e-03, -1.134594160003610241e-03, -1.134595910650932444e-03, -1.134595817992455416e-03, -1.134593882133623022e-03, -1.134590103182868273e-03, -1.134584481251601183e-03, -1.134577016454233920e-03, -1.134567708908159559e-03, -1.134556558733760320e-03, -1.134543566054409302e-03, -1.134528730996463329e-03, -1.134512053689264470e-03, -1.134493534265145018e-03, -1.134473172859424249e-03, -1.134450969610402557e-03, -1.134426924659365796e-03, -1.134401038150592003e-03, -1.134373310231333830e-03, -1.134343741051832642e-03, -1.134312330765315912e-03, -1.134279079527992021e-03, -1.134243987499047217e-03, -1.134207054840657763e-03, -1.134168281717978224e-03, -1.134127668299145372e-03, -1.134085214755277968e-03, -1.134040921260471776e-03, -1.133994787991807803e-03, -1.133946815129339720e-03, -1.133897002856108175e-03, -1.133845351358130169e-03, -1.133791860824394501e-03, -1.133736531446878464e-03, -1.133679363420531582e-03, -1.133620356943273446e-03, -1.133559512216014958e-03, -1.133496829442628192e-03, -1.133432308829968732e-03, -1.133365950587867862e-03, -1.133297754929126063e-03, -1.133227722069516047e-03, -1.133155852227792082e-03, -1.133082145625678716e-03, -1.133006602487865140e-03, -1.132929223042022969e-03, -1.132850007518787809e-03, -1.132768956151766196e-03, -1.132686069177537983e-03, -1.132601346835654171e-03, -1.132514789368626934e-03, -1.132426397021941977e-03, -1.132336170044055288e-03, -1.132244108686386412e-03, -1.132150213203317584e-03, -1.132054483852208042e-03, -1.131956920893373861e-03, -1.131857524590098142e-03, -1.131756295208627113e-03, -1.131653233018175110e-03, -1.131548338290913960e-03, -1.131441611301981648e-03, -1.131333052329476464e-03, -1.131222661654461992e-03, -1.131110439560953666e-03, -1.130996386335935680e-03, -1.130880502269346463e-03, -1.130762787654084750e-03, -1.130643242786008714e-03, -1.130521867963930546e-03, -1.130398663489622308e-03, -1.130273629667813981e-03, -1.130146766806180460e-03, -1.130018075215364530e-03, -1.129887555208960613e-03, -1.129755207103501965e-03, -1.129621031218497546e-03, -1.129485027876395804e-03, -1.129347197402593133e-03, -1.129207540125442329e-03, -1.129066056376245002e-03, -1.128922746489253309e-03, -1.128777610801664100e-03, -1.128630649653626942e-03, -1.128481863388233926e-03, -1.128331252351526173e-03, -1.128178816892494050e-03, -1.128024557363062428e-03, -1.127868474118113445e-03, -1.127710567515454419e-03, -1.127550837915859260e-03, -1.127389285683029008e-03, -1.127225911183599855e-03, -1.127060714787160274e-03, -1.126893696866238014e-03, -1.126724857796297490e-03, -1.126554197955736318e-03, -1.126381717725892040e-03, -1.126207417491044502e-03, -1.126031297638399381e-03, -1.125853358558106393e-03, -1.125673600643246289e-03, -1.125492024289830202e-03, -1.125308629896797259e-03, -1.125123417866040606e-03, -1.124936388602351895e-03, -1.124747542513481347e-03, -1.124556880010091570e-03, -1.124364401505773816e-03, -1.124170107417064683e-03, -1.123973998163400141e-03, -1.123776074167159552e-03, -1.123576335853651575e-03, -1.123374783651092269e-03, -1.123171417990632840e-03, -1.122966239306346205e-03, -1.122759248035222219e-03, -1.122550444617170925e-03, -1.122339829495032316e-03, -1.122127403114547926e-03, -1.121913165924394440e-03, -1.121697118376160929e-03, -1.121479260924340606e-03, -1.121259594026358802e-03, -1.121038118142538053e-03, -1.120814833736141032e-03, -1.120589741273313308e-03, -1.120362841223125844e-03, -1.120134134057561553e-03, -1.119903620251512695e-03, -1.119671300282772423e-03, -1.119437174632051694e-03, -1.119201243782963224e-03, -1.118963508222032546e-03, -1.118723968438675026e-03, -1.118482624925224269e-03, -1.118239478176916287e-03, -1.117994528691883651e-03, -1.117747776971146807e-03, -1.117499223518663093e-03, -1.117248868841258427e-03, -1.116996713448658316e-03, -1.116742757853501737e-03, -1.116487002571310127e-03, -1.116229448120513185e-03, -1.115970095022415266e-03, -1.115708943801227253e-03, -1.115445994984060486e-03, -1.115181249100892285e-03, -1.114914706684612357e-03, -1.114646368270997417e-03, -1.114376234398691250e-03, -1.114104305609249805e-03, -1.113830582447112140e-03, -1.113555065459581345e-03, -1.113277755196862050e-03, -1.112998652212046982e-03, -1.112717757061087477e-03, -1.112435070302845086e-03, -1.112150592499029341e-03, -1.111864324214251317e-03, -1.111576266015996961e-03, -1.111286418474617113e-03, -1.110994782163347676e-03, -1.110701357658300291e-03, -1.110406145538445858e-03, -1.110109146385641204e-03, -1.109810360784615427e-03, -1.109509789322949075e-03, -1.109207432591109710e-03, -1.108903291182433692e-03, -1.108597365693102547e-03, -1.108289656722186546e-03, -1.107980164871593320e-03, -1.107668890746138978e-03, -1.107355834953456606e-03, -1.107040998104038762e-03, -1.106724380811289522e-03, -1.106405983691417577e-03, -1.106085807363500415e-03, -1.105763852449490612e-03, -1.105440119574178535e-03, -1.105114609365221183e-03, -1.104787322453108789e-03, -1.104458259471198436e-03, -1.104127421055701042e-03, -1.103794807845653609e-03, -1.103460420482962803e-03, -1.103124259612383706e-03, -1.102786325881498133e-03, -1.102446619940724822e-03, -1.102105142443375596e-03, -1.101761894045544124e-03, -1.101416875406208270e-03, -1.101070087187149427e-03, -1.100721530053016270e-03, -1.100371204671284206e-03, -1.100019111712249734e-03, -1.099665251849063193e-03, -1.099309625757709892e-03, -1.098952234116983223e-03, -1.098593077608524780e-03, -1.098232156916809392e-03, -1.097869472729121054e-03, -1.097505025735586327e-03, -1.097138816629159149e-03, -1.096770846105595042e-03, -1.096401114863503794e-03, -1.096029623604285064e-03, -1.095656373032181073e-03, -1.095281363854254050e-03, -1.094904596780348939e-03, -1.094526072523187288e-03, -1.094145791798256879e-03, -1.093763755323859648e-03, -1.093379963821134457e-03, -1.092994418014031285e-03, -1.092607118629275887e-03, -1.092218066396438746e-03, -1.091827262047878480e-03, -1.091434706318776971e-03, -1.091040399947085368e-03, -1.090644343673588491e-03, -1.090246538241874475e-03, -1.089846984398308962e-03, -1.089445682892053102e-03, -1.089042634475111690e-03, -1.088637839902238192e-03, -1.088231299930985047e-03, -1.087823015321720370e-03, -1.087412986837589133e-03, -1.087001215244537888e-03, -1.086587701311281804e-03, -1.086172445809338713e-03, -1.085755449513023472e-03, -1.085336713199398090e-03, -1.084916237648345452e-03, -1.084494023642525087e-03, -1.084070071967345840e-03, -1.083644383411028981e-03, -1.083216958764572201e-03, -1.082787798821720129e-03, -1.082356904379030461e-03, -1.081924276235792870e-03, -1.081489915194104893e-03, -1.081053822058824446e-03, -1.080615997637557465e-03, -1.080176442740702790e-03, -1.079735158181423325e-03, -1.079292144775622839e-03, -1.078847403341991066e-03, -1.078400934701983539e-03, -1.077952739679783212e-03, -1.077502819102362473e-03, -1.077051173799448234e-03, -1.076597804603500030e-03, -1.076142712349753821e-03, -1.075685897876189033e-03, -1.075227362023547855e-03, -1.074767105635303800e-03, -1.074305129557663000e-03, -1.073841434639638591e-03, -1.073376021732932745e-03, -1.072908891692000424e-03, -1.072440045374055666e-03, -1.071969483639046870e-03, -1.071497207349644864e-03, -1.071023217371278469e-03, -1.070547514572097640e-03, -1.070070099823008372e-03, -1.069590973997609600e-03, -1.069110137972263458e-03, -1.068627592626060800e-03, -1.068143338840798649e-03, -1.067657377500998844e-03, -1.067169709493955313e-03, -1.066680335709619580e-03, -1.066189257040709619e-03, -1.065696474382654127e-03, -1.065201988633572572e-03, -1.064705800694344803e-03, -1.064207911468523010e-03, -1.063708321862400679e-03, -1.063207032784980067e-03, -1.062704045147954421e-03, -1.062199359865740721e-03, -1.061692977855475343e-03, -1.061184900036961582e-03, -1.060675127332738827e-03, -1.060163660668045262e-03, -1.059650500970794667e-03, -1.059135649171622602e-03, -1.058619106203867108e-03, -1.058100873003523608e-03, -1.057580950509327952e-03, -1.057059339662669252e-03, -1.056536041407643220e-03, -1.056011056691052606e-03, -1.055484386462337588e-03, -1.054956031673669019e-03, -1.054425993279893775e-03, -1.053894272238507660e-03, -1.053360869509720231e-03, -1.052825786056420113e-03, -1.052289022844135526e-03, -1.051750580841107150e-03, -1.051210461018234777e-03, -1.050668664349098998e-03, -1.050125191809929978e-03, -1.049580044379612659e-03, -1.049033223039767641e-03, -1.048484728774611539e-03, -1.047934562571020082e-03, -1.047382725418597935e-03, -1.046829218309544259e-03, -1.046274042238723185e-03, -1.045717198203681159e-03, -1.045158687204600974e-03, -1.044598510244331910e-03, -1.044036668328344412e-03, -1.043473162464775197e-03, -1.042907993664423782e-03, -1.042341162940696756e-03, -1.041772671309667631e-03, -1.041202519790065560e-03, -1.040630709403213110e-03, -1.040057241173112344e-03, -1.039482116126391915e-03, -1.038905335292289716e-03, -1.038326899702713812e-03, -1.037746810392163946e-03, -1.037165068397795072e-03, -1.036581674759393936e-03, -1.035996630519333325e-03, -1.035409936722642100e-03, -1.034821594416983738e-03, -1.034231604652584551e-03, -1.033639968482337771e-03, -1.033046686961752812e-03, -1.032451761148904090e-03, -1.031855192104527740e-03, -1.031256980891961115e-03, -1.030657128577113944e-03, -1.030055636228556807e-03, -1.029452504917392113e-03, -1.028847735717423667e-03, -1.028241329704972576e-03, -1.027633287958958346e-03, -1.027023611560976511e-03, -1.026412301595138171e-03, -1.025799359148159111e-03, -1.025184785309376937e-03, -1.024568581170712690e-03, -1.023950747826636804e-03, -1.023331286374245218e-03, -1.022710197913201261e-03, -1.022087483545763625e-03, -1.021463144376734975e-03, -1.020837181513527649e-03, -1.020209596066130485e-03, -1.019580389147086699e-03, -1.018949561871489769e-03, -1.018317115357083398e-03, -1.017683050724088037e-03, -1.017047369095355498e-03, -1.016410071596246870e-03, -1.015771159354725110e-03, -1.015130633501316448e-03, -1.014488495169054219e-03, -1.013844745493581870e-03, -1.013199385613085734e-03, -1.012552416668266843e-03, -1.011903839802415521e-03, -1.011253656161372567e-03, -1.010601866893479171e-03, -1.009948473149665377e-03, -1.009293476083400433e-03, -1.008636876850648552e-03, -1.007978676609962371e-03, -1.007318876522420937e-03, -1.006657477751597175e-03, -1.005994481463656992e-03, -1.005329888827214855e-03, -1.004663701013522011e-03, -1.003995919196265909e-03, -1.003326544551668429e-03, -1.002655578258500628e-03, -1.001983021498063439e-03, -1.001308875454118719e-03, -1.000633141312991595e-03, -9.999558202635234084e-04, -9.992769134970201118e-04, -9.985964222073383505e-04, -9.979143475908269171e-04, -9.972306908463575426e-04, -9.965454531752748063e-04, -9.958586357814011233e-04, -9.951702398711575245e-04, -9.944802666533613441e-04, -9.937887173393476509e-04, -9.930955931429692480e-04, -9.924008952805550392e-04, -9.917046249709345323e-04, -9.910067834353786416e-04, -9.903073718976905439e-04, -9.896063915841497340e-04, -9.889038437234706075e-04, -9.881997295468954862e-04, -9.874940502881308663e-04, -9.867868071833370107e-04, -9.860780014711233946e-04, -9.853676343926601622e-04, -9.846557071914788500e-04, -9.839422211136332821e-04, -9.832271774076423252e-04, -9.825105773244404480e-04, -9.817924221174713969e-04, -9.810727130425832450e-04, -9.803514513581222840e-04, -9.796286383248781638e-04, -9.789042752060541849e-04, -9.781783632673377721e-04, -9.774509037768659963e-04, -9.767218980051702807e-04, -9.759913472252663893e-04, -9.752592527126125767e-04, -9.745256157450533181e-04, -9.737904376029119001e-04, -9.730537195689500886e-04, -9.723154629282984140e-04, -9.715756689685914804e-04, -9.708343389798004559e-04, -9.700914742544357100e-04, -9.693470760873242270e-04, -9.686011457757342895e-04, -9.678536846193805734e-04, -9.671046939203875028e-04, -9.663541749832464233e-04, -9.656021291149040732e-04, -9.648485576247128187e-04, -9.640934618243831656e-04, -9.633368430280747239e-04, -9.625787025523286624e-04, -9.618190417161069563e-04, -9.610578618407262510e-04, -9.602951642498861601e-04, -9.595309502697673852e-04, -9.587652212288490282e-04, -9.579979784579901233e-04, -9.572292232905389242e-04, -9.564589570621018612e-04, -9.556871811107510569e-04, -9.549138967768700447e-04, -9.541391054032688024e-04, -9.533628083351194590e-04, -9.525850069199255036e-04, -9.518057025076032086e-04, -9.510248964504316484e-04, -9.502425901030117162e-04, -9.494587848223436446e-04, -9.486734819677897093e-04, -9.478866829010241385e-04, -9.470983889861182229e-04, -9.463086015894966226e-04, -9.455173220798782779e-04, -9.447245518284058631e-04, -9.439302922084865169e-04, -9.431345445959305124e-04, -9.423373103688805668e-04, -9.415385909077666300e-04, -9.407383875954069326e-04, -9.399367018169544263e-04, -9.391335349598314060e-04, -9.383288884138449781e-04, -9.375227635711295970e-04, -9.367151618260840737e-04, -9.359060845754838985e-04, -9.350955332184248629e-04, -9.342835091562603925e-04, -9.334700137927110517e-04, -9.326550485337910344e-04, -9.318386147878437260e-04, -9.310207139654773020e-04, -9.302013474795910739e-04, -9.293805167454834756e-04, -9.285582231806541968e-04, -9.277344682049111935e-04, -9.269092532403951914e-04, -9.260825797115191868e-04, -9.252544490449984794e-04, -9.244248626697871380e-04, -9.235938220171754703e-04, -9.227613285207300663e-04, -9.219273836162499968e-04, -9.210919887418598379e-04, -9.202551453379617490e-04, -9.194168548471887440e-04, -9.185771187144277849e-04, -9.177359383869403446e-04, -9.168933153141267016e-04, -9.160492509477383355e-04, -9.152037467417115015e-04, -9.143568041522953833e-04, -9.135084246379953895e-04, -9.126586096595070167e-04, -9.118073606798374978e-04, -9.109546791642397735e-04, -9.101005665801468981e-04, -9.092450243973024693e-04, -9.083880540876767109e-04, -9.075296571254282000e-04, -9.066698349870040479e-04, -9.058085891510801605e-04, -9.049459210985112559e-04, -9.040818323124250825e-04, -9.032163242781847965e-04, -9.023493984833072133e-04, -9.014810564176161138e-04, -9.006112995730422089e-04, -8.997401294438729397e-04, -8.988675475264938956e-04, -8.979935553195099191e-04, -8.971181543237762230e-04, -8.962413460423492755e-04, -8.953631319804332411e-04, -8.944835136454801607e-04, -8.936024925471268508e-04, -8.927200701972170215e-04, -8.918362481097292854e-04, -8.909510278008899147e-04, -8.900644107891048616e-04, -8.891763985949298343e-04, -8.882869927410816813e-04, -8.873961947525668692e-04, -8.865040061564547760e-04, -8.856104284819995556e-04, -8.847154632606754826e-04, -8.838191120260934690e-04, -8.829213763140570086e-04, -8.820222576624650330e-04, -8.811217576114437500e-04, -8.802198777032670639e-04, -8.793166194823087613e-04, -8.784119844951538596e-04, -8.775059742905327951e-04, -8.765985904192845606e-04, -8.756898344343750284e-04, -8.747797078910239102e-04, -8.738682123464543063e-04, -8.729553493601014151e-04, -8.720411204935386981e-04, -8.711255273104042633e-04, -8.702085713765454972e-04, -8.692902542598541582e-04, -8.683705775304086235e-04, -8.674495427604026572e-04, -8.665271515240854537e-04, -8.656034053978842614e-04, -8.646783059603383543e-04, -8.637518547920334383e-04, -8.628240534757177687e-04, -8.618949035962513014e-04, -8.609644067405305577e-04, -8.600325644976096213e-04, -8.590993784586380133e-04, -8.581648502168013866e-04, -8.572289813674477269e-04, -8.562917735079202770e-04, -8.553532282377841354e-04, -8.544133471585660475e-04, -8.534721318738879795e-04, -8.525295839894957411e-04, -8.515857051132024987e-04, -8.506404968548361917e-04, -8.496939608263509884e-04, -8.487460986417468380e-04, -8.477969119171092612e-04, -8.468464022705170843e-04, -8.458945713221717845e-04, -8.449414206943282098e-04, -8.439869520112297432e-04, -8.430311668992348292e-04, -8.420740669867447662e-04, -8.411156539041641329e-04, -8.401559292839140157e-04, -8.391948947605841220e-04, -8.382325519706485028e-04, -8.372689025527196892e-04, -8.363039481473560303e-04, -8.353376903972063250e-04, -8.343701309469406507e-04, -8.334012714431897556e-04, -8.324311135346660565e-04, -8.314596588720986944e-04, -8.304869091081599174e-04, -8.295128658976040755e-04, -8.285375308971857635e-04, -8.275609057656050684e-04, -8.265829921636211938e-04, -8.256037917540024786e-04, -8.246233062014395520e-04, -8.236415371727060127e-04, -8.226584863364791011e-04, -8.216741553634892116e-04, -8.206885459264481181e-04, -8.197016596999674417e-04, -8.187134983607842736e-04, -8.177240635874901244e-04, -8.167333570606587516e-04, -8.157413804628901779e-04, -8.147481354787454227e-04, -8.137536237946874128e-04, -8.127578470992027383e-04, -8.117608070827215302e-04, -8.107625054376470589e-04, -8.097629438582712750e-04, -8.087621240409017696e-04, -8.077600476837963964e-04, -8.067567164871105798e-04, -8.057521321529208420e-04, -8.047462963853769169e-04, -8.037392108904275545e-04, -8.027308773759826103e-04, -8.017212975519213925e-04, -8.007104731300319477e-04, -7.996984058240478145e-04, -7.986850973495539154e-04, -7.976705494241297795e-04, -7.966547637672615053e-04, -7.956377421002847321e-04, -7.946194861465146354e-04, -7.935999976311691653e-04, -7.925792782813061632e-04, -7.915573298259501048e-04, -7.905341539960260722e-04, -7.895097525242852693e-04, -7.884841271454634233e-04, -7.874572795960932186e-04, -7.864292116146633484e-04, -7.853999249415451146e-04, -7.843694213189242315e-04, -7.833377024909304962e-04, -7.823047702035700263e-04, -7.812706262046539190e-04, -7.802352722439261871e-04, -7.791987100730015259e-04, -7.781609414452861665e-04, -7.771219681161173039e-04, -7.760817918426878535e-04, -7.750404143839766287e-04, -7.739978375008834321e-04, -7.729540629561308272e-04, -7.719090925143129271e-04, -7.708629279418188502e-04, -7.698155710068540786e-04, -7.687670234795970173e-04, -7.677172871319228476e-04, -7.666663637375612786e-04, -7.656142550721147617e-04, -7.645609629130100272e-04, -7.635064890394225147e-04, -7.624508352324239338e-04, -7.613940032748692894e-04, -7.603359949514555379e-04, -7.592768120486151177e-04, -7.582164563546605826e-04, -7.571549296597053459e-04, -7.560922337556150001e-04, -7.550283704360356146e-04, -7.539633414965418376e-04, -7.528971487343367889e-04, -7.518297939485317841e-04, -7.507612789399248322e-04, -7.496916055111737826e-04, -7.486207754667104563e-04, -7.475487906126704980e-04, -7.464756527570427791e-04, -7.454013637095751807e-04, -7.443259252817172392e-04, -7.432493392867557799e-04, -7.421716075397327347e-04, -7.410927318573814994e-04, -7.400127140582597480e-04, -7.389315559626771172e-04, -7.378492593926216968e-04, -7.367658261718969650e-04, -7.356812581260535914e-04, -7.345955570823009670e-04, -7.335087248696909755e-04, -7.324207633189065746e-04, -7.313316742624354850e-04, -7.302414595344902844e-04, -7.291501209709419463e-04, -7.280576604094487515e-04, -7.269640796893877665e-04, -7.258693806517798166e-04, -7.247735651394305407e-04, -7.236766349968536301e-04, -7.225785920701966684e-04, -7.214794382073832710e-04, -7.203791752580070498e-04, -7.192778050733875583e-04, -7.181753295064884340e-04, -7.170717504119404921e-04, -7.159670696462009949e-04, -7.148612890672723010e-04, -7.137544105348345722e-04, -7.126464359103900801e-04, -7.115373670569765437e-04, -7.104272058393160984e-04, -7.093159541238603987e-04, -7.082036137786910891e-04, -7.070901866735838795e-04, -7.059756746798958975e-04, -7.048600796707163918e-04, -7.037434035207854174e-04, -7.026256481064183752e-04, -7.015068153056538969e-04, -7.003869069981687352e-04, -6.992659250652115193e-04, -6.981438713897358947e-04, -6.970207478563368803e-04, -6.958965563511604465e-04, -6.947712987620763368e-04, -6.936449769784861635e-04, -6.925175928914848464e-04, -6.913891483937831999e-04, -6.902596453796359423e-04, -6.891290857449785222e-04, -6.879974713873596810e-04, -6.868648042058598125e-04, -6.857310861012288735e-04, -6.845963189758238251e-04, -6.834605047335179937e-04, -6.823236452798523170e-04, -6.811857425219614015e-04, -6.800467983684835337e-04, -6.789068147297481386e-04, -6.777657935175323764e-04, -6.766237366453682969e-04, -6.754806460282141095e-04, -6.743365235825913347e-04, -6.731913712267439650e-04, -6.720451908803302260e-04, -6.708979844645870504e-04, -6.697497539023679163e-04, -6.686005011180759516e-04, -6.674502280375861976e-04, -6.662989365884037932e-04, -6.651466286995495920e-04, -6.639933063016114452e-04, -6.628389713266394671e-04, -6.616836257082920779e-04, -6.605272713817655298e-04, -6.593699102837262535e-04, -6.582115443523440341e-04, -6.570521755274651588e-04, -6.558918057502727359e-04, -6.547304369635942832e-04, -6.535680711116667813e-04, -6.524047101403119891e-04, -6.512403559968621761e-04, -6.500750106300663385e-04, -6.489086759902591185e-04, -6.477413540292622498e-04, -6.465730467003201563e-04, -6.454037559582404644e-04, -6.442334837593152903e-04, -6.430622320612476225e-04, -6.418900028232912922e-04, -6.407167980061801750e-04, -6.395426195720418884e-04, -6.383674694845798293e-04, -6.371913497088572010e-04, -6.360142622114792676e-04, -6.348362089605111714e-04, -6.336571919253718979e-04, -6.324772130771158431e-04, -6.312962743880877123e-04, -6.301143778321093274e-04, -6.289315253844963245e-04, -6.277477190220049187e-04, -6.265629607227490719e-04, -6.253772524663558582e-04, -6.241905962338828483e-04, -6.230029940077339750e-04, -6.218144477718159837e-04, -6.206249595114315303e-04, -6.194345312133288373e-04, -6.182431648656092115e-04, -6.170508624577658585e-04, -6.158576259808542109e-04, -6.146634574271740399e-04, -6.134683587904557218e-04, -6.122723320658765003e-04, -6.110753792499818825e-04, -6.098775023407336689e-04, -6.086787033374022916e-04, -6.074789842407217477e-04, -6.062783470528057897e-04, -6.050767937770696464e-04, -6.038743264183747640e-04, -6.026709469829573569e-04, -6.014666574783679096e-04, -6.002614599134960044e-04, -5.990553562987454205e-04, -5.978483486456955378e-04, -5.966404389673871317e-04, -5.954316292782071236e-04, -5.942219215938121437e-04, -5.930113179313076417e-04, -5.917998203090351662e-04, -5.905874307467534265e-04, -5.893741512655522067e-04, -5.881599838877724605e-04, -5.869449306371625442e-04, -5.857289935387950588e-04, -5.845121746189840166e-04, -5.832944759054356542e-04, -5.820758994271731882e-04, -5.808564472144526819e-04, -5.796361212989089781e-04, -5.784149237134872867e-04, -5.771928564923502680e-04, -5.759699216710647326e-04, -5.747461212863540095e-04, -5.735214573764253754e-04, -5.722959319806045697e-04, -5.710695471395306260e-04, -5.698423048951756047e-04, -5.686142072907895148e-04, -5.673852563708091335e-04, -5.661554541810286589e-04, -5.649248027685038667e-04, -5.636933041814727466e-04, -5.624609604695154225e-04, -5.612277736834374916e-04, -5.599937458753305236e-04, -5.587588790984710126e-04, -5.575231754073641790e-04, -5.562866368579153821e-04, -5.550492655071046421e-04, -5.538110634131511141e-04, -5.525720326356657434e-04, -5.513321752352991168e-04, -5.500914932740644464e-04, -5.488499888150853842e-04, -5.476076639227874920e-04, -5.463645206628089035e-04, -5.451205611019204183e-04, -5.438757873081813020e-04, -5.426302013508551517e-04, -5.413838053003241363e-04, -5.401366012282519512e-04, -5.388885912074953483e-04, -5.376397773120226032e-04, -5.363901616170656294e-04, -5.351397461990461436e-04, -5.338885331354830755e-04, -5.326365245051778571e-04, -5.313837223880011609e-04, -5.301301288650753707e-04, -5.288757460186867612e-04, -5.276205759322047254e-04, -5.263646206902407179e-04, -5.251078823785618448e-04, -5.238503630840064037e-04, -5.225920648946456469e-04, -5.213329898996935758e-04, -5.200731401894271438e-04, -5.188125178553459589e-04, -5.175511249900815363e-04, -5.162889636873183681e-04, -5.150260360419488563e-04, -5.137623441499666269e-04, -5.124978901085132594e-04, -5.112326760157936099e-04, -5.099667039710971709e-04, -5.086999760749961541e-04, -5.074324944290009316e-04, -5.061642611357528064e-04, -5.048952782990514436e-04, -5.036255480237655313e-04, -5.023550724158874249e-04, -5.010838535824139930e-04, -4.998118936315141267e-04, -4.985391946724385343e-04, -4.972657588154348477e-04, -4.959915881719143731e-04, -4.947166848543549465e-04, -4.934410509762534452e-04, -4.921646886521410759e-04, -4.908875999977835173e-04, -4.896097871298065460e-04, -4.883312521660321389e-04, -4.870519972252207040e-04, -4.857720244272685137e-04, -4.844913358931153308e-04, -4.832099337446576180e-04, -4.819278201049132285e-04, -4.806449970979383016e-04, -4.793614668487299556e-04, -4.780772314834031214e-04, -4.767922931290919882e-04, -4.755066539138695018e-04, -4.742203159669077721e-04, -4.729332814183951858e-04, -4.716455523994428399e-04, -4.703571310422536233e-04, -4.690680194800341245e-04, -4.677782198469036682e-04, -4.664877342780944037e-04, -4.651965649096817187e-04, -4.639047138789362257e-04, -4.626121833239385983e-04, -4.613189753837813423e-04, -4.600250921985907498e-04, -4.587305359094705215e-04, -4.574353086584059228e-04, -4.561394125884370935e-04, -4.548428498435418458e-04, -4.535456225686832063e-04, -4.522477329096968759e-04, -4.509491830134587935e-04, -4.496499750277938457e-04, -4.483501111014143929e-04, -4.470495933839513858e-04, -4.457484240261404686e-04, -4.444466051794864728e-04, -4.431441389964520142e-04, -4.418410276304869828e-04, -4.405372732359356816e-04, -4.392328779680941802e-04, -4.379278439830899144e-04, -4.366221734380515808e-04, -4.353158684910163291e-04, -4.340089313008444892e-04, -4.327013640273848043e-04, -4.313931688313886155e-04, -4.300843478744410700e-04, -4.287749033189966821e-04, -4.274648373285711293e-04, -4.261541520673602632e-04, -4.248428497005621719e-04, -4.235309323942504909e-04, -4.222184023152910281e-04, -4.209052616315329628e-04, -4.195915125115779105e-04, -4.182771571249802836e-04, -4.169621976421565980e-04, -4.156466362342893582e-04, -4.143304750735061137e-04, -4.130137163327813926e-04, -4.116963621858496947e-04, -4.103784148073771746e-04, -4.090598763728683462e-04, -4.077407490585743593e-04, -4.064210350416693450e-04, -4.051007365001539759e-04, -4.037798556127645015e-04, -4.024583945591793431e-04, -4.011363555197462543e-04, -3.998137406758310000e-04, -3.984905522094372358e-04, -3.971667923034029649e-04, -3.958424631414276976e-04, -3.945175669080120610e-04, -3.931921057883647208e-04, -3.918660819685737388e-04, -3.905394976354887747e-04, -3.892123549767726939e-04, -3.878846561807823600e-04, -3.865564034367428110e-04, -3.852275989346499530e-04, -3.838982448651868050e-04, -3.825683434198891113e-04, -3.812378967910567615e-04, -3.799069071716917748e-04, -3.785753767555239411e-04, -3.772433077372114524e-04, -3.759107023119556863e-04, -3.745775626758511318e-04, -3.732438910256169408e-04, -3.719096895588004333e-04, -3.705749604736808742e-04, -3.692397059691828994e-04, -3.679039282450468447e-04, -3.665676295017359374e-04, -3.652308119403464164e-04, -3.638934777627796492e-04, -3.625556291716495951e-04, -3.612172683701930873e-04, -3.598783975624399991e-04, -3.585390189531210319e-04, -3.571991347475817922e-04, -3.558587471519746416e-04, -3.545178583730316645e-04, -3.531764706182568972e-04, -3.518345860958406218e-04, -3.504922070145351167e-04, -3.491493355839769895e-04, -3.478059740142963228e-04, -3.464621245163266835e-04, -3.451177893016238798e-04, -3.437729705824069809e-04, -3.424276705714640991e-04, -3.410818914823286817e-04, -3.397356355291559658e-04, -3.383889049267776766e-04, -3.370417018905826566e-04, -3.356940286366876273e-04, -3.343458873818474174e-04, -3.329972803433888266e-04, -3.316482097392410913e-04, -3.302986777881372757e-04, -3.289486867092536113e-04, -3.275982387224147369e-04, -3.262473360481212372e-04, -3.248959809074551544e-04, -3.235441755221348491e-04, -3.221919221143947076e-04, -3.208392229071577477e-04, -3.194860801239457915e-04, -3.181324959887834062e-04, -3.167784727263747908e-04, -3.154240125620091256e-04, -3.140691177214680898e-04, -3.127137904312036706e-04, -3.113580329182416692e-04, -3.100018474100883509e-04, -3.086452361349386665e-04, -3.072882013214333361e-04, -3.059307451988594814e-04, -3.045728699970633472e-04, -3.032145779463551625e-04, -3.018558712776832093e-04, -3.004967522225417196e-04, -2.991372230128766583e-04, -2.977772858812628275e-04, -2.964169430608104626e-04, -2.950561967850702559e-04, -2.936950492882100280e-04, -2.923335028049227325e-04, -2.909715595703294745e-04, -2.896092218201585665e-04, -2.882464917906223632e-04, -2.868833717184714714e-04, -2.855198638409025928e-04, -2.841559703955812382e-04, -2.827916936208558032e-04, -2.814270357553860119e-04, -2.800619990383528186e-04, -2.786965857094854588e-04, -2.773307980089953668e-04, -2.759646381774847777e-04, -2.745981084561214462e-04, -2.732312110865156443e-04, -2.718639483107773529e-04, -2.704963223713897349e-04, -2.691283355113899809e-04, -2.677599899742706463e-04, -2.663912880039202911e-04, -2.650222318446456525e-04, -2.636528237413837141e-04, -2.622830659393005515e-04, -2.609129606841551906e-04, -2.595425102220193952e-04, -2.581717167994900626e-04, -2.568005826635903440e-04, -2.554291100616768915e-04, -2.540573012416216239e-04, -2.526851584517105171e-04, -2.513126839405530185e-04, -2.499398799572605614e-04, -2.485667487513508293e-04, -2.471932925726506121e-04, -2.458195136714804991e-04, -2.444454142985543203e-04, -2.430709967048858228e-04, -2.416962631419693804e-04, -2.403212158616828496e-04, -2.389458571161923487e-04, -2.375701891581655483e-04, -2.361942142405175338e-04, -2.348179346166280796e-04, -2.334413525402398155e-04, -2.320644702653686174e-04, -2.306872900464773505e-04, -2.293098141383872362e-04, -2.279320447961761262e-04, -2.265539842753615436e-04, -2.251756348318054081e-04, -2.237969987216181659e-04, -2.224180782013370048e-04, -2.210388755278020118e-04, -2.196593929582133647e-04, -2.182796327500341330e-04, -2.168995971610194432e-04, -2.155192884494255671e-04, -2.141387088736385828e-04, -2.127578606923566558e-04, -2.113767461647674147e-04, -2.099953675501780215e-04, -2.086137271082253710e-04, -2.072318270989043890e-04, -2.058496697824713478e-04, -2.044672574195005436e-04, -2.030845922707590436e-04, -2.017016765973882631e-04, -2.003185126608063597e-04, -1.989351027226122007e-04, -1.975514490447670749e-04, -1.961675538894992559e-04, -1.947834195192069660e-04, -1.933990481966392212e-04, -1.920144421848000418e-04, -1.906296037468532866e-04, -1.892445351463336656e-04, -1.878592386468959103e-04, -1.864737165125284694e-04, -1.850879710074566627e-04, -1.837020043960450215e-04, -1.823158189429811425e-04, -1.809294169131778381e-04, -1.795428005716772659e-04, -1.781559721838322889e-04, -1.767689340152103609e-04, -1.753816883314974931e-04, -1.739942373986789635e-04, -1.726065834829438803e-04, -1.712187288505880912e-04, -1.698306757682273922e-04, -1.684424265025153637e-04, -1.670539833205107792e-04, -1.656653484892705967e-04, -1.642765242760355461e-04, -1.628875129484073968e-04, -1.614983167739767237e-04, -1.601089380205361157e-04, -1.587193789561050581e-04, -1.573296418488666424e-04, -1.559397289670709909e-04, -1.545496425792149088e-04, -1.531593849539166863e-04, -1.517689583599738865e-04, -1.503783650662351382e-04, -1.489876073417829329e-04, -1.475966874558361274e-04, -1.462056076776851359e-04, -1.448143702767191435e-04, -1.434229775226392330e-04, -1.420314316850504000e-04, -1.406397350338330001e-04, -1.392478898388567368e-04, -1.378558983701956857e-04, -1.364637628980318004e-04, -1.350714856925563315e-04, -1.336790690241558761e-04, -1.322865151633107329e-04, -1.308938263805021769e-04, -1.295010049463934118e-04, -1.281080531317321824e-04, -1.267149732072553369e-04, -1.253217674438696452e-04, -1.239284381125568498e-04, -1.225349874842760877e-04, -1.211414178301767461e-04, -1.197477314213469412e-04, -1.183539305290277975e-04, -1.169600174245162349e-04, -1.155659943790357188e-04, -1.141718636640767402e-04, -1.127776275509871358e-04, -1.113832883111866794e-04, -1.099888482161950404e-04, -1.085943095375640756e-04, -1.071996745467840046e-04, -1.058049455154625205e-04, -1.044101247152307352e-04, -1.030152144176451132e-04, -1.016202168943699022e-04, -1.002251344170503223e-04, -9.882996925736937802e-05, -9.743472368695217732e-05, -9.603939997739306407e-05, -9.464400040046965293e-05, -9.324852722776507980e-05, -9.185298273088352765e-05, -9.045736918147659973e-05, -8.906168885114589050e-05, -8.766594401150307745e-05, -8.627013693404065719e-05, -8.487426989031468766e-05, -8.347834515184848390e-05, -8.208236499003535155e-05, -8.068633167632183060e-05, -7.929024748210983253e-05, -7.789411467869168312e-05, -7.649793553727680733e-05, -7.510171232920661818e-05, -7.370544732554516266e-05, -7.230914279741929018e-05, -7.091280101588919884e-05, -6.951642425185165677e-05, -6.812001477625472846e-05, -6.672357485984435599e-05, -6.532710677337909885e-05, -6.393061278753315202e-05, -6.253409517279799536e-05, -6.113755619966784629e-05, -5.974099813854020466e-05, -5.834442325962021250e-05, -5.694783383310306429e-05, -5.555123212907765528e-05, -5.415462041742848825e-05, -5.275800096801990663e-05, -5.136137605059787250e-05, -4.996474793469406894e-05, -4.856811888983904063e-05, -4.717149118527897312e-05, -4.577486709034563615e-05, -4.437824887404749039e-05, -4.298163880528450853e-05, -4.158503915287519223e-05, -4.018845218549065267e-05, -3.879188017155825880e-05, -3.739532537944328868e-05, -3.599879007735356032e-05, -3.460227653324106747e-05, -3.320578701498562988e-05, -3.180932379026669998e-05, -3.041288912662176068e-05, -2.901648529134951294e-05, -2.762011455153702821e-05, -2.622377917427432223e-05, -2.482748142627666643e-05, -2.343122357406823822e-05, -2.203500788416469725e-05, -2.063883662266541356e-05, -1.924271205562269268e-05, -1.784663644875841935e-05, -1.645061206767816712e-05, -1.505464117777403354e-05, -1.365872604412767350e-05, -1.226286893169343792e-05, -1.086707210520125972e-05, -9.471337829059600798e-06, -8.075668367538541592e-06, -6.680065984672785628e-06, -5.284532944164575158e-06, -3.889071509566806123e-06, -2.493683944185934042e-06, -1.098372510985011392e-06, 2.968605272021780082e-07, 1.692012907923725618e-06, 3.087082368895415939e-06, 4.482066648097761971e-06, 5.876963483873008489e-06, 7.271770614742103256e-06, 8.666485779501678269e-06, 1.006110671732109730e-05, 1.145563116755938070e-05, 1.285005686986220854e-05, 1.424438156425904637e-05, 1.563860299097985588e-05, 1.703271889055238164e-05, 1.842672700389893481e-05, 1.982062507212238516e-05, 2.121441083678966811e-05, 2.260808203956237331e-05, 2.400163642260464184e-05, 2.539507172839992926e-05, 2.678838569956871395e-05, 2.818157607924462717e-05, 2.957464061086070942e-05, 3.096757703812234598e-05, 3.236038310510335435e-05, 3.375305655618834877e-05, 3.514559513619998826e-05, 3.653799659021666124e-05, 3.793025866366899309e-05, 3.932237910243715329e-05, 4.071435565266740843e-05, 4.210618606086958518e-05, 4.349786807398267131e-05, 4.488939943934722952e-05, 4.628077790449165377e-05, 4.767200121753992415e-05, 4.906306712684172454e-05, 5.045397338125691015e-05, 5.184471772994030017e-05, 5.323529792243943213e-05, 5.462571170879111014e-05, 5.601595683933860838e-05, 5.740603106482878849e-05, 5.879593213650828192e-05, 6.018565780594137775e-05, 6.157520582510636771e-05, 6.296457394649325305e-05, 6.435375992291967413e-05, 6.574276150762858352e-05, 6.713157645438507198e-05, 6.852020251729334162e-05, 6.990863745089326764e-05, 7.129687901025808492e-05, 7.268492495077996001e-05, 7.407277302845249347e-05, 7.546042099950360906e-05, 7.684786662080061168e-05, 7.823510764963825294e-05, 7.962214184370985069e-05, 8.100896696117448252e-05, 8.239558076075236838e-05, 8.378198100154298216e-05, 8.516816544315291974e-05, 8.655413184563653895e-05, 8.793987796962519650e-05, 8.932540157614302838e-05, 9.071070042670532777e-05, 9.209577228338249933e-05, 9.348061490877374025e-05, 9.486522606579358789e-05, 9.624960351804702670e-05, 9.763374502961585965e-05, 9.901764836503305336e-05, 1.004013112893774025e-04, 1.017847315682156740e-04, 1.031679069677302990e-04, 1.045508352545377147e-04, 1.059335141957840727e-04, 1.073159415592411087e-04, 1.086981151131258678e-04, 1.100800326261960324e-04, 1.114616918678148388e-04, 1.128430906079247583e-04, 1.142242266168344924e-04, 1.156050976656238405e-04, 1.169857015258077873e-04, 1.183660359694635304e-04, 1.197460987693272998e-04, 1.211258876985804990e-04, 1.225054005311017411e-04, 1.238846350412526785e-04, 1.252635890039770987e-04, 1.266422601948929462e-04, 1.280206463901142151e-04, 1.293987453663459795e-04, 1.307765549009797489e-04, 1.321540727719128943e-04, 1.335312967576447090e-04, 1.349082246373723597e-04, 1.362848541908086059e-04, 1.376611831982791604e-04, 1.390372094408182080e-04, 1.404129306999566068e-04, 1.417883447580017473e-04, 1.431634493976720681e-04, 1.445382424025014908e-04, 1.459127215566267532e-04, 1.472868846447610090e-04, 1.486607294522575252e-04, 1.500342537652069887e-04, 1.514074553702551439e-04, 1.527803320547314056e-04, 1.541528816065885512e-04, 1.555251018145307367e-04, 1.568969904678325174e-04, 1.582685453564336604e-04, 1.596397642710055799e-04, 1.610106450029226053e-04, 1.623811853440522424e-04, 1.637513830871257267e-04, 1.651212360255579104e-04, 1.664907419532669322e-04, 1.678598986650759687e-04, 1.692287039563505143e-04, 1.705971556232746902e-04, 1.719652514626430779e-04, 1.733329892719545563e-04, 1.747003668495093385e-04, 1.760673819942266082e-04, 1.774340325057420444e-04, 1.788003161845012521e-04, 1.801662308315814384e-04, 1.815317742487854939e-04, 1.828969442387379176e-04, 1.842617386047047038e-04, 1.856261551506881017e-04, 1.869901916815225936e-04, 1.883538460026648045e-04, 1.897171159204393172e-04, 1.910799992418317256e-04, 1.924424937745803309e-04, 1.938045973272740181e-04, 1.951663077091714651e-04, 1.965276227302944383e-04, 1.978885402015271059e-04, 1.992490579344331054e-04, 2.006091737413506282e-04, 2.019688854354897815e-04, 2.033281908307499536e-04, 2.046870877418485095e-04, 2.060455739842611319e-04, 2.074036473743478062e-04, 2.087613057291740895e-04, 2.101185468666042432e-04, 2.114753686053687796e-04, 2.128317687650342659e-04, 2.141877451657952939e-04, 2.155432956288439209e-04, 2.168984179761576008e-04, 2.182531100304755203e-04, 2.196073696153912449e-04, 2.209611945552950117e-04, 2.223145826755002559e-04, 2.236675318020656664e-04, 2.250200397618853368e-04, 2.263721043827888644e-04, 2.277237234933584729e-04, 2.290748949230265628e-04, 2.304256165021681944e-04, 2.317758860619230615e-04, 2.331257014342904947e-04, 2.344750604522238412e-04, 2.358239609494204277e-04, 2.371724007605699512e-04, 2.385203777211423277e-04, 2.398678896674862732e-04, 2.412149344369190487e-04, 2.425615098675540718e-04, 2.439076137983886561e-04, 2.452532440694024565e-04, 2.465983985213789824e-04, 2.479430749959982160e-04, 2.492872713359319675e-04, 2.506309853846660661e-04, 2.519742149865933844e-04, 2.533169579871094113e-04, 2.546592122324333580e-04, 2.560009755697329500e-04, 2.573422458470664767e-04, 2.586830209134791223e-04, 2.600232986189726083e-04, 2.613630768143017434e-04, 2.627023533513371425e-04, 2.640411260828558139e-04, 2.653793928625200168e-04, 2.667171515449348325e-04, 2.680543999857469897e-04, 2.693911360414643990e-04, 2.707273575695796431e-04, 2.720630624285173935e-04, 2.733982484777532931e-04, 2.747329135776407547e-04, 2.760670555894993239e-04, 2.774006723756869408e-04, 2.787337617995624267e-04, 2.800663217252889184e-04, 2.813983500182206028e-04, 2.827298445445486710e-04, 2.840608031715749710e-04, 2.853912237675047077e-04, 2.867211042015398474e-04, 2.880504423439718712e-04, 2.893792360660078149e-04, 2.907074832398612329e-04, 2.920351817388452779e-04, 2.933623294371986317e-04, 2.946889242101763612e-04, 2.960149639341428892e-04, 2.973404464863997686e-04, 2.986653697452751831e-04, 2.999897315902154003e-04, 3.013135299016162318e-04, 3.026367625609057582e-04, 3.039594274506468943e-04, 3.052815224543251570e-04, 3.066030454565953751e-04, 3.079239943430718421e-04, 3.092443670004242683e-04, 3.105641613164716180e-04, 3.118833751800012110e-04, 3.132020064808688480e-04, 3.145200531100848427e-04, 3.158375129596434762e-04, 3.171543839226120647e-04, 3.184706638932275073e-04, 3.197863507667179353e-04, 3.211014424394255514e-04, 3.224159368087521496e-04, 3.237298317732500248e-04, 3.250431252325949763e-04, 3.263558150873865980e-04, 3.276678992395000477e-04, 3.289793755918882885e-04, 3.302902420485515143e-04, 3.316004965146045875e-04, 3.329101368963631783e-04, 3.342191611011736539e-04, 3.355275670375341837e-04, 3.368353526150383065e-04, 3.381425157444972827e-04, 3.394490543377618515e-04, 3.407549663078218694e-04, 3.420602495688931000e-04, 3.433649020362434709e-04, 3.446689216262875080e-04, 3.459723062566731795e-04, 3.472750538461168266e-04, 3.485771623144868635e-04, 3.498786295828962604e-04, 3.511794535735057060e-04, 3.524796322097566029e-04, 3.537791634161703276e-04, 3.550780451184404416e-04, 3.563762752435230058e-04, 3.576738517194634330e-04, 3.589707724754907596e-04, 3.602670354421035146e-04, 3.615626385509042697e-04, 3.628575797346822560e-04, 3.641518569275140863e-04, 3.654454680645819343e-04, 3.667384110822733355e-04, 3.680306839182640203e-04, 3.693222845113238958e-04, 3.706132108015775797e-04, 3.719034607301616299e-04, 3.731930322396033103e-04, 3.744819232736516725e-04, 3.757701317771057091e-04, 3.770576556961657442e-04, 3.783444929782334523e-04, 3.796306415718876258e-04, 3.809160994269420179e-04, 3.822008644945408605e-04, 3.834849347269812716e-04, 3.847683080778398906e-04, 3.860509825019135723e-04, 3.873329559553387032e-04, 3.886142263954214695e-04, 3.898947917807292561e-04, 3.911746500711506020e-04, 3.924537992278672826e-04, 3.937322372131603463e-04, 3.950099619907829706e-04, 3.962869715256231678e-04, 3.975632637839611200e-04, 3.988388367332744563e-04, 4.001136883423276995e-04, 4.013878165812592735e-04, 4.026612194214132349e-04, 4.039338948354301837e-04, 4.052058407973368722e-04, 4.064770552823731664e-04, 4.077475362670870225e-04, 4.090172817294185663e-04, 4.102862896485343731e-04, 4.115545580049166435e-04, 4.128220847804501561e-04, 4.140888679582272196e-04, 4.153549055227792044e-04, 4.166201954598782961e-04, 4.178847357566296524e-04, 4.191485244015854617e-04, 4.204115593844345356e-04, 4.216738386963786900e-04, 4.229353603299332515e-04, 4.241961222789056990e-04, 4.254561225384522589e-04, 4.267153591051662674e-04, 4.279738299769142939e-04, 4.292315331529211416e-04, 4.304884666338614093e-04, 4.317446284216875361e-04, 4.330000165197515037e-04, 4.342546289327479697e-04, 4.355084636668051239e-04, 4.367615187294561193e-04, 4.380137921294480360e-04, 4.392652818770809652e-04, 4.405159859840145878e-04, 4.417659024632437253e-04, 4.430150293291872988e-04, 4.442633645976308662e-04, 4.455109062858472399e-04, 4.467576524124269172e-04, 4.480036009973668225e-04, 4.492487500621619224e-04, 4.504930976296315907e-04, 4.517366417240152891e-04, 4.529793803710243922e-04, 4.542213115978216420e-04, 4.554624334328309242e-04, 4.567027439060973863e-04, 4.579422410489586534e-04, 4.591809228942989106e-04, 4.604187874763597641e-04, 4.616558328308198217e-04, 4.628920569948876090e-04, 4.641274580071362284e-04, 4.653620339075887941e-04, 4.665957827378048434e-04, 4.678287025407191157e-04, 4.690607913607227047e-04, 4.702920472437588481e-04, 4.715224682371457689e-04, 4.727520523896781564e-04, 4.739807977517024101e-04, 4.752087023749581294e-04, 4.764357643126617054e-04, 4.776619816195961472e-04, 4.788873523519177142e-04, 4.801118745674082104e-04, 4.813355463251467957e-04, 4.825583656858714056e-04, 4.837803307117929724e-04, 4.850014394665600804e-04, 4.862216900153317162e-04, 4.874410804248511023e-04, 4.886596087632881632e-04, 4.898772731003265320e-04, 4.910940715072464923e-04, 4.923100020567666843e-04, 4.935250628231500859e-04, 4.947392518821593435e-04, 4.959525673111381955e-04, 4.971650071889901134e-04, 4.983765695959847721e-04, 4.995872526140950195e-04, 5.007970543268320781e-04, 5.020059728190855164e-04, 5.032140061774817950e-04, 5.044211524900598731e-04, 5.056274098465194907e-04, 5.068327763380329511e-04, 5.080372500573299057e-04, 5.092408290987819218e-04, 5.104435115582438634e-04, 5.116452955331362911e-04, 5.128461791225306802e-04, 5.140461604269905846e-04, 5.152452375486564224e-04, 5.164434085913233207e-04, 5.176406716602927971e-04, 5.188370248624477868e-04, 5.200324663063421969e-04, 5.212269941020091120e-04, 5.224206063611845727e-04, 5.236133011971231535e-04, 5.248050767246739646e-04, 5.259959310603725931e-04, 5.271858623222783636e-04, 5.283748686300607494e-04, 5.295629481050770013e-04, 5.307500988702237204e-04, 5.319363190500093911e-04, 5.331216067706479479e-04, 5.343059601598939765e-04, 5.354893773471264143e-04, 5.366718564634360457e-04, 5.378533956414384767e-04, 5.390339930155165632e-04, 5.402136467215072927e-04, 5.413923548970445013e-04, 5.425701156814063258e-04, 5.437469272153629823e-04, 5.449227876414878234e-04, 5.460976951039834323e-04, 5.472716477486531082e-04, 5.484446437229864102e-04, 5.496166811761076573e-04, 5.507877582588843485e-04, 5.519578731237714721e-04, 5.531270239248950969e-04, 5.542952088181311941e-04, 5.554624259609569929e-04, 5.566286735125223215e-04, 5.577939496337183450e-04, 5.589582524871395102e-04, 5.601215802369171205e-04, 5.612839310490516436e-04, 5.624453030911066419e-04, 5.636056945324491394e-04, 5.647651035440645487e-04, 5.659235282986378778e-04, 5.670809669706435019e-04, 5.682374177361785217e-04, 5.693928787730530771e-04, 5.705473482608699283e-04, 5.717008243808698476e-04, 5.728533053160092493e-04, 5.740047892510496356e-04, 5.751552743723942077e-04, 5.763047588681778546e-04, 5.774532409283404449e-04, 5.786007187444803515e-04, 5.797471905099282853e-04, 5.808926544198377180e-04, 5.820371086709931951e-04, 5.831805514620585097e-04, 5.843229809932610911e-04, 5.854643954667355888e-04, 5.866047930863403171e-04, 5.877441720576437019e-04, 5.888825305879687340e-04, 5.900198668864768854e-04, 5.911561791640200080e-04, 5.922914656332382366e-04, 5.934257245085217168e-04, 5.945589540061050390e-04, 5.956911523439245570e-04, 5.968223177416950419e-04, 5.979524484209600968e-04, 5.990815426050777369e-04, 6.002095985190344495e-04, 6.013366143897640572e-04, 6.024625884459660057e-04, 6.035875189180799939e-04, 6.047114040383730349e-04, 6.058342420408866554e-04, 6.069560311615401120e-04, 6.080767696379854332e-04, 6.091964557096811450e-04, 6.103150876179742369e-04, 6.114326636059520597e-04, 6.125491819185146418e-04, 6.136646408024361635e-04, 6.147790385063382854e-04, 6.158923732805148335e-04, 6.170046433772667085e-04, 6.181158470506221622e-04, 6.192259825564463017e-04, 6.203350481525115624e-04, 6.214430420983360539e-04, 6.225499626553709096e-04, 6.236558080868430777e-04, 6.247605766578244934e-04, 6.258642666353111169e-04, 6.269668762880807947e-04, 6.280684038867613474e-04, 6.291688477039177399e-04, 6.302682060138967146e-04, 6.313664770929119019e-04, 6.324636592191172201e-04, 6.335597506724575815e-04, 6.346547497347558445e-04, 6.357486546897760235e-04, 6.368414638230658620e-04, 6.379331754221731314e-04, 6.390237877763560405e-04, 6.401132991769042675e-04, 6.412017079169721016e-04, 6.422890122915569759e-04, 6.433752105975441360e-04, 6.444603011337908830e-04, 6.455442822009779293e-04, 6.466271521017136984e-04, 6.477089091404829345e-04, 6.487895516237528453e-04, 6.498690778598232654e-04, 6.509474861589066704e-04, 6.520247748331780505e-04, 6.531009421967546354e-04, 6.541759865655262171e-04, 6.552499062574503779e-04, 6.563226995924072073e-04, 6.573943648920647529e-04, 6.584649004801821628e-04, 6.595343046823362500e-04, 6.606025758261324784e-04, 6.616697122410454763e-04, 6.627357122584836549e-04, 6.638005742118741016e-04, 6.648642964365190314e-04, 6.659268772696668023e-04, 6.669883150505874839e-04, 6.680486081204344050e-04, 6.691077548223146269e-04, 6.701657535013667887e-04, 6.712226025046209204e-04, 6.722783001810656630e-04, 6.733328448817304515e-04, 6.743862349595178968e-04, 6.754384687693965571e-04, 6.764895446682386328e-04, 6.775394610148908732e-04, 6.785882161702504710e-04, 6.796358084971248744e-04, 6.806822363603085490e-04, 6.817274981266498732e-04, 6.827715921649170220e-04, 6.838145168458673560e-04, 6.848562705423287371e-04, 6.858968516290500162e-04, 6.869362584828033825e-04, 6.879744894823411035e-04, 6.890115430084886583e-04, 6.900474174440111635e-04, 6.910821111736781003e-04, 6.921156225843193678e-04, 6.931479500648062009e-04, 6.941790920058811673e-04, 6.952090468004473245e-04, 6.962378128434113357e-04, 6.972653885316481247e-04, 6.982917722640941171e-04, 6.993169624416831643e-04, 7.003409574674514942e-04, 7.013637557464044627e-04, 7.023853556855808467e-04, 7.034057556941277628e-04, 7.044249541831653586e-04, 7.054429495658604303e-04, 7.064597402574894144e-04, 7.074753246753154399e-04, 7.084897012386489343e-04, 7.095028683689256870e-04, 7.105148244895422667e-04, 7.115255680260495520e-04, 7.125350974059922694e-04, 7.135434110589715514e-04, 7.145505074167323237e-04, 7.155563849130136848e-04, 7.165610419836270775e-04, 7.175644770665260026e-04, 7.185666886016722288e-04, 7.195676750311066992e-04, 7.205674347990136076e-04, 7.215659663515984262e-04, 7.225632681371507889e-04, 7.235593386061145308e-04, 7.245541762109557410e-04, 7.255477794062591482e-04, 7.265401466486764038e-04, 7.275312763970070724e-04, 7.285211671121693579e-04, 7.295098172570521101e-04, 7.304972252967827312e-04, 7.314833896985673640e-04, 7.324683089316856880e-04, 7.334519814675239877e-04, 7.344344057796505041e-04, 7.354155803436811028e-04, 7.363955036373791285e-04, 7.373741741405980508e-04, 7.383515903353882583e-04, 7.393277507058574130e-04, 7.403026537382396228e-04, 7.412762979209453146e-04, 7.422486817445406344e-04, 7.432198037015927319e-04, 7.441896622869611936e-04, 7.451582559975372926e-04, 7.461255833324388197e-04, 7.470916427928642580e-04, 7.480564328821601118e-04, 7.490199521058838990e-04, 7.499821989716845636e-04, 7.509431719893585287e-04, 7.519028696709281930e-04, 7.528612905305071641e-04, 7.538184330843694311e-04, 7.547742958510166933e-04, 7.557288773510516169e-04, 7.566821761072459228e-04, 7.576341906446040298e-04, 7.585849194902347927e-04, 7.595343611734270721e-04, 7.604825142257051361e-04, 7.614293771806920517e-04, 7.623749485742724232e-04, 7.633192269444542648e-04, 7.642622108314260296e-04, 7.652038987776319618e-04, 7.661442893276429683e-04, 7.670833810282187432e-04, 7.680211724283788916e-04, 7.689576620792794390e-04, 7.698928485342670415e-04, 7.708267303489637701e-04, 7.717593060811223701e-04, 7.726905742907269831e-04, 7.736205335399484783e-04, 7.745491823932095041e-04, 7.754765194171624795e-04, 7.764025431805559110e-04, 7.773272522544735687e-04, 7.782506452122013455e-04, 7.791727206292008026e-04, 7.800934770831612118e-04, 7.810129131540536566e-04, 7.819310274240219615e-04, 7.828478184774573939e-04, 7.837632849009573558e-04, 7.846774252834236123e-04, 7.855902382159265498e-04, 7.865017222917778175e-04, 7.874118761065888742e-04, 7.883206982581572554e-04, 7.892281873465193743e-04, 7.901343419740228377e-04, 7.910391607452037146e-04, 7.919426422668493113e-04, 7.928447851480609470e-04, 7.937455880001143080e-04, 7.946450494366221872e-04, 7.955431680734013434e-04, 7.964399425285246517e-04, 7.973353714223940705e-04, 7.982294533776130305e-04, 7.991221870190583177e-04, 8.000135709739360180e-04, 8.009036038716610623e-04, 8.017922843439240135e-04, 8.026796110247579616e-04, 8.035655825504066851e-04, 8.044501975593985931e-04, 8.053334546926080913e-04, 8.062153525931080224e-04, 8.070958899063650389e-04, 8.079750652799879600e-04, 8.088528773640025083e-04, 8.097293248107265183e-04, 8.106044062746511078e-04, 8.114781204126871169e-04, 8.123504658840226440e-04, 8.132214413501114448e-04, 8.140910454747054582e-04, 8.149592769239257135e-04, 8.158261343661377552e-04, 8.166916164720420656e-04, 8.175557219146260346e-04, 8.184184493692519971e-04, 8.192797975135408979e-04, 8.201397650274256344e-04, 8.209983505932054839e-04, 8.218555528955142275e-04, 8.227113706211970938e-04, 8.235658024595621848e-04, 8.244188471021386992e-04, 8.252705032428776181e-04, 8.261207695779907009e-04, 8.269696448060341858e-04, 8.278171276279489054e-04, 8.286632167469624912e-04, 8.295079108686340434e-04, 8.303512087009333855e-04, 8.311931089541041298e-04, 8.320336103407456434e-04, 8.328727115758557649e-04, 8.337104113767268305e-04, 8.345467084630038947e-04, 8.353816015567413263e-04, 8.362150893822703187e-04, 8.370471706663573999e-04, 8.378778441380741121e-04, 8.387071085288460171e-04, 8.395349625725477809e-04, 8.403614050052751663e-04, 8.411864345656135892e-04, 8.420100499944919688e-04, 8.428322500351763304e-04, 8.436530334333033074e-04, 8.444723989369394470e-04, 8.452903452964747417e-04, 8.461068712646759721e-04, 8.469219755967441693e-04, 8.477356570502084720e-04, 8.485479143850020202e-04, 8.493587463634184789e-04, 8.501681517501877153e-04, 8.509761293124362257e-04, 8.517826778195794740e-04, 8.525877960435319014e-04, 8.533914827585853879e-04, 8.541937367413977595e-04, 8.549945567710318193e-04, 8.557939416289467825e-04, 8.565918900990477161e-04, 8.573884009675992362e-04, 8.581834730232645392e-04, 8.589771050571733818e-04, 8.597692958628084560e-04, 8.605600442360675142e-04, 8.613493489752942689e-04, 8.621372088812663580e-04, 8.629236227570768417e-04, 8.637085894083537533e-04, 8.644921076430648341e-04, 8.652741762716640098e-04, 8.660547941069810180e-04, 8.668339599642744262e-04, 8.676116726612765175e-04, 8.683879310181012419e-04, 8.691627338572913792e-04, 8.699360800038807720e-04, 8.707079682852785331e-04, 8.714783975313366996e-04, 8.722473665743945767e-04, 8.730148742491783409e-04, 8.737809193928647907e-04, 8.745455008451134393e-04, 8.753086174479883432e-04, 8.760702680459968089e-04, 8.768304514861460959e-04, 8.775891666178239382e-04, 8.783464122929644270e-04, 8.791021873658261829e-04, 8.798564906932287120e-04, 8.806093211344367217e-04, 8.813606775511402796e-04, 8.821105588074825690e-04, 8.828589637701286276e-04, 8.836058913081518314e-04, 8.843513402930978625e-04, 8.850953095990229816e-04, 8.858377981024079424e-04, 8.865788046822207667e-04, 8.873183282198854110e-04, 8.880563675993329411e-04, 8.887929217069879791e-04, 8.895279894316521522e-04, 8.902615696647080308e-04, 8.909936613000237187e-04, 8.917242632338395541e-04, 8.924533743650053330e-04, 8.931809935947709498e-04, 8.939071198269438233e-04, 8.946317519677658399e-04, 8.953548889259717921e-04, 8.960765296128449979e-04, 8.967966729421054115e-04, 8.975153178299683865e-04, 8.982324631952065845e-04, 8.989481079590324469e-04, 8.996622510451629225e-04, 9.003748913798680390e-04, 9.010860278918702898e-04, 9.017956595123986265e-04, 9.025037851752386580e-04, 9.032104038166180503e-04, 9.039155143753440031e-04, 9.046191157926813855e-04, 9.053212070124136684e-04, 9.060217869808832565e-04, 9.067208546469089810e-04, 9.074184089618171070e-04, 9.081144488795063864e-04, 9.088089733563557921e-04, 9.095019813512569351e-04, 9.101934718256787923e-04, 9.108834437435660075e-04, 9.115718960713989566e-04, 9.122588277782224791e-04, 9.129442378355549130e-04, 9.136281252175294755e-04, 9.143104889006946605e-04, 9.149913278642359590e-04, 9.156706410898690640e-04, 9.163484275617613754e-04, 9.170246862667041704e-04, 9.176994161940255426e-04, 9.183726163355565748e-04, 9.190442856856883679e-04, 9.197144232413484053e-04, 9.203830280020549801e-04, 9.210500989698239532e-04, 9.217156351492286018e-04, 9.223796355474357233e-04, 9.230420991741185733e-04, 9.237030250415108595e-04, 9.243624121644244138e-04, 9.250202595602475663e-04, 9.256765662488379174e-04, 9.263313312527185787e-04, 9.269845535968973278e-04, 9.276362323090085304e-04, 9.282863664192024435e-04, 9.289349549601997507e-04, 9.295819969673274489e-04, 9.302274914784427378e-04, 9.308714375339694489e-04, 9.315138341769498703e-04, 9.321546804529519392e-04, 9.327939754101242107e-04, 9.334317180992276249e-04, 9.340679075735652511e-04, 9.347025428890061395e-04, 9.353356231040620833e-04, 9.359671472797469974e-04, 9.365971144797302248e-04, 9.372255237702181415e-04, 9.378523742200014276e-04, 9.384776649005164336e-04, 9.391013948856876455e-04, 9.397235632521144929e-04, 9.403441690789735539e-04, 9.409632114480064122e-04, 9.415806894435434010e-04, 9.421966021525611740e-04, 9.428109486645824171e-04, 9.434237280717468633e-04, 9.440349394687745383e-04, 9.446445819530341738e-04, 9.452526546244477976e-04, 9.458591565855437510e-04, 9.464640869414833605e-04, 9.470674448000493363e-04, 9.476692292715403884e-04, 9.482694394689525049e-04, 9.488680745078762781e-04, 9.494651335064879056e-04, 9.500606155855849692e-04, 9.506545198685658346e-04, 9.512468454814886325e-04, 9.518375915529819200e-04, 9.524267572142927109e-04, 9.530143415993282173e-04, 9.536003438445742096e-04, 9.541847630891344811e-04, 9.547675984747689033e-04, 9.553488491458704416e-04, 9.559285142493702866e-04, 9.565065929349306261e-04, 9.570830843547776775e-04, 9.576579876637722694e-04, 9.582313020194442111e-04, 9.588030265818963402e-04, 9.593731605139207497e-04, 9.599417029809051123e-04, 9.605086531508614123e-04, 9.610740101944917563e-04, 9.616377732850833141e-04, 9.621999415985628542e-04, 9.627605143135439065e-04, 9.633194906112349304e-04, 9.638768696754877784e-04, 9.644326506928313069e-04, 9.649868328524071909e-04, 9.655394153459956200e-04, 9.660903973680651713e-04, 9.666397781156820619e-04, 9.671875567886216050e-04, 9.677337325892178309e-04, 9.682783047225376099e-04, 9.688212723962869770e-04, 9.693626348207943274e-04, 9.699023912090431587e-04, 9.704405407767159814e-04, 9.709770827421083418e-04, 9.715120163261866098e-04, 9.720453407525671621e-04, 9.725770552475639791e-04, 9.731071590401076544e-04, 9.736356513617960276e-04, 9.741625314469150006e-04, 9.746877985324228170e-04, 9.752114518578778538e-04, 9.757334906655675336e-04, 9.762539142004583422e-04, 9.767727217101021542e-04, 9.772899124448123070e-04, 9.778054856575066085e-04, 9.783194406038288760e-04, 9.788317765420547194e-04, 9.793424927331368605e-04, 9.798515884407344063e-04, 9.803590629311540860e-04, 9.808649154733741025e-04, 9.813691453390868506e-04, 9.818717518026303954e-04, 9.823727341410196968e-04, 9.828720916339880268e-04, 9.833698235639167125e-04, 9.838659292158657109e-04, 9.843604078776243497e-04, 9.848532588396078941e-04, 9.853444813949692200e-04, 9.858340748395174984e-04, 9.863220384717476859e-04, 9.868083715928726175e-04, 9.872930735067703134e-04, 9.877761435200028452e-04, 9.882575809418631726e-04, 9.887373850842990329e-04, 9.892155552619526226e-04, 9.896920907921991951e-04, 9.901669909950724675e-04, 9.906402551933136263e-04, 9.911118827123559325e-04, 9.915818728803440195e-04, 9.920502250281434346e-04, 9.925169384892469637e-04, 9.929820125999181801e-04, 9.934454466991222716e-04, 9.939072401284620734e-04, 9.943673922323105572e-04, 9.948259023577338527e-04, 9.952827698544856102e-04, 9.957379940750323705e-04, 9.961915743745425062e-04, 9.966435101109215669e-04, 9.970938006447543824e-04, 9.975424453393378060e-04, 9.979894435607115054e-04, 9.984347946775920437e-04, 9.988784980614106093e-04, 9.993205530863505295e-04, 9.997609591292715928e-04, 1.000199715569746696e-03, 1.000636821790105643e-03, 1.001072277175347981e-03, 1.001506081113234716e-03, 1.001938232994211125e-03, 1.002368732211452503e-03, 1.002797578160876529e-03, 1.003224770241091003e-03, 1.003650307853432228e-03, 1.004074190401987995e-03, 1.004496417293541640e-03, 1.004916987937595459e-03, 1.005335901746411478e-03, 1.005753158134950302e-03, 1.006168756520899304e-03, 1.006582696324696911e-03, 1.006994976969489671e-03, 1.007405597881155888e-03, 1.007814558488303669e-03, 1.008221858222280252e-03, 1.008627496517185878e-03, 1.009031472809787059e-03, 1.009433786539642563e-03, 1.009834437149047031e-03, 1.010233424082991951e-03, 1.010630746789220082e-03, 1.011026404718230005e-03, 1.011420397323237533e-03, 1.011812724060193701e-03, 1.012203384387791926e-03, 1.012592377767484271e-03, 1.012979703663438721e-03, 1.013365361542563695e-03, 1.013749350874523433e-03, 1.014131671131741040e-03, 1.014512321789321284e-03, 1.014891302325169643e-03, 1.015268612219926607e-03, 1.015644250956960299e-03, 1.016018218022392066e-03, 1.016390512905083685e-03, 1.016761135096665982e-03, 1.017130084091492654e-03, 1.017497359386667364e-03, 1.017862960482069767e-03, 1.018226886880298481e-03, 1.018589138086704480e-03, 1.018949713609419499e-03, 1.019308612959295320e-03, 1.019665835649941716e-03, 1.020021381197739035e-03, 1.020375249121803279e-03, 1.020727438943998472e-03, 1.021077950188975037e-03, 1.021426782384103008e-03, 1.021773935059534051e-03, 1.022119407748162644e-03, 1.022463199985636706e-03, 1.022805311310378846e-03, 1.023145741263561427e-03, 1.023484489389099843e-03, 1.023821555233704562e-03, 1.024156938346810217e-03, 1.024490638280626349e-03, 1.024822654590136755e-03, 1.025152986833067830e-03, 1.025481634569915240e-03, 1.025808597363928086e-03, 1.026133874781137538e-03, 1.026457466390347283e-03, 1.026779371763074118e-03, 1.027099590473650945e-03, 1.027418122099164107e-03, 1.027734966219454038e-03, 1.028050122417128055e-03, 1.028363590277582259e-03, 1.028675369388957952e-03, 1.028985459342171777e-03, 1.029293859730901622e-03, 1.029600570151619149e-03, 1.029905590203539266e-03, 1.030208919488652224e-03, 1.030510557611727948e-03, 1.030810504180320816e-03, 1.031108758804706984e-03, 1.031405321097988038e-03, 1.031700190676014019e-03, 1.031993367157400983e-03, 1.032284850163562012e-03, 1.032574639318659289e-03, 1.032862734249649856e-03, 1.033149134586254817e-03, 1.033433839960962381e-03, 1.033716850009059945e-03, 1.033998164368590518e-03, 1.034277782680378954e-03, 1.034555704588033037e-03, 1.034831929737936107e-03, 1.035106457779234271e-03, 1.035379288363879983e-03, 1.035650421146582607e-03, 1.035919855784829232e-03, 1.036187591938909826e-03, 1.036453629271862596e-03, 1.036717967449542720e-03, 1.036980606140539734e-03, 1.037241545016259932e-03, 1.037500783750891454e-03, 1.037758322021385638e-03, 1.038014159507473716e-03, 1.038268295891698039e-03, 1.038520730859352663e-03, 1.038771464098527369e-03, 1.039020495300103757e-03, 1.039267824157732913e-03, 1.039513450367855795e-03, 1.039757373629696070e-03, 1.039999593645271397e-03, 1.040240110119374992e-03, 1.040478922759580181e-03, 1.040716031276262953e-03, 1.040951435382585482e-03, 1.041185134794465113e-03, 1.041417129230646794e-03, 1.041647418412631945e-03, 1.041876002064731806e-03, 1.042102879914029922e-03, 1.042328051690397540e-03, 1.042551517126512036e-03, 1.042773275957816154e-03, 1.042993327922550747e-03, 1.043211672761752175e-03, 1.043428310219242979e-03, 1.043643240041619309e-03, 1.043856461978293635e-03, 1.044067975781450084e-03, 1.044277781206065037e-03, 1.044485878009917754e-03, 1.044692265953553511e-03, 1.044896944800341497e-03, 1.045099914316412150e-03, 1.045301174270700951e-03, 1.045500724434943662e-03, 1.045698564583641410e-03, 1.045894694494110344e-03, 1.046089113946458869e-03, 1.046281822723574414e-03, 1.046472820611142086e-03, 1.046662107397646401e-03, 1.046849682874358709e-03, 1.047035546835336757e-03, 1.047219699077451367e-03, 1.047402139400347397e-03, 1.047582867606474321e-03, 1.047761883501062375e-03, 1.047939186892155082e-03, 1.048114777590585835e-03, 1.048288655409959462e-03, 1.048460820166700804e-03, 1.048631271680026305e-03, 1.048800009771936638e-03, 1.048967034267231889e-03, 1.049132344993503963e-03, 1.049295941781151547e-03, 1.049457824463356261e-03, 1.049617992876095010e-03, 1.049776446858150187e-03, 1.049933186251087976e-03, 1.050088210899277445e-03, 1.050241520649880349e-03, 1.050393115352865657e-03, 1.050542994860972044e-03, 1.050691159029759928e-03, 1.050837607717570489e-03, 1.050982340785548870e-03, 1.051125358097633770e-03, 1.051266659520556793e-03, 1.051406244923852205e-03, 1.051544114179846960e-03, 1.051680267163662436e-03, 1.051814703753217468e-03, 1.051947423829233119e-03, 1.052078427275214686e-03, 1.052207713977481402e-03, 1.052335283825128710e-03, 1.052461136710063170e-03, 1.052585272526984899e-03, 1.052707691173385618e-03, 1.052828392549557757e-03, 1.052947376558590990e-03, 1.053064643106369847e-03, 1.053180192101578049e-03, 1.053294023455683334e-03, 1.053406137082969329e-03, 1.053516532900506926e-03, 1.053625210828159058e-03, 1.053732170788588282e-03, 1.053837412707258085e-03, 1.053940936512426808e-03, 1.054042742135136374e-03, 1.054142829509246981e-03, 1.054241198571402192e-03, 1.054337849261038039e-03, 1.054432781520391700e-03, 1.054525995294496726e-03, 1.054617490531188032e-03, 1.054707267181084762e-03, 1.054795325197603953e-03, 1.054881664536972243e-03, 1.054966285158197899e-03, 1.055049187023083396e-03, 1.055130370096233217e-03, 1.055209834345048224e-03, 1.055287579739722396e-03, 1.055363606253236332e-03, 1.055437913861383267e-03, 1.055510502542738064e-03, 1.055581372278667626e-03, 1.055650523053346937e-03, 1.055717954853735863e-03, 1.055783667669584792e-03, 1.055847661493453712e-03, 1.055909936320682287e-03, 1.055970492149403304e-03, 1.056029328980556551e-03, 1.056086446817860840e-03, 1.056141845667839816e-03, 1.056195525539804607e-03, 1.056247486445858162e-03, 1.056297728400899805e-03, 1.056346251422618510e-03, 1.056393055531495073e-03, 1.056438140750812519e-03, 1.056481507106629648e-03, 1.056523154627807921e-03, 1.056563083345999103e-03, 1.056601293295643526e-03, 1.056637784513974210e-03, 1.056672557041018817e-03, 1.056705610919587502e-03, 1.056736946195290698e-03, 1.056766562916519386e-03, 1.056794461134463519e-03, 1.056820640903098586e-03, 1.056845102279186472e-03, 1.056867845322283271e-03, 1.056888870094733861e-03, 1.056908176661670602e-03, 1.056925765091014206e-03, 1.056941635453473739e-03, 1.056955787822546180e-03, 1.056968222274513826e-03, 1.056978938888455564e-03, 1.056987937746226274e-03, 1.056995218932471788e-03, 1.057000782534627155e-03, 1.057004628642910574e-03, 1.057006757350327075e-03, 1.057007168752667004e-03, 1.057005862948507324e-03, 1.057002840039206627e-03, 1.056998100128913589e-03, 1.056991643324556350e-03, 1.056983469735847713e-03, 1.056973579475287963e-03, 1.056961972658155115e-03, 1.056948649402512713e-03, 1.056933609829207883e-03, 1.056916854061871113e-03, 1.056898382226912356e-03, 1.056878194453520371e-03, 1.056856290873671184e-03, 1.056832671622117466e-03, 1.056807336836393081e-03, 1.056780286656815258e-03, 1.056751521226474613e-03, 1.056721040691242959e-03, 1.056688845199777859e-03, 1.056654934903504409e-03, 1.056619309956632370e-03, 1.056581970516150314e-03, 1.056542916741818900e-03, 1.056502148796177381e-03, 1.056459666844543170e-03, 1.056415471055008369e-03, 1.056369561598439772e-03, 1.056321938648483632e-03, 1.056272602381551785e-03, 1.056221552976838781e-03, 1.056168790616310174e-03, 1.056114315484703607e-03, 1.056058127769531193e-03, 1.056000227661071066e-03, 1.055940615352387755e-03, 1.055879291039301835e-03, 1.055816254920413340e-03, 1.055751507197085935e-03, 1.055685048073462962e-03, 1.055616877756453348e-03, 1.055546996455726831e-03, 1.055475404383729573e-03, 1.055402101755679610e-03, 1.055327088789550800e-03, 1.055250365706092777e-03, 1.055171932728821193e-03, 1.055091790084013593e-03, 1.055009938000712241e-03, 1.054926376710728451e-03, 1.054841106448639121e-03, 1.054754127451774806e-03, 1.054665439960244871e-03, 1.054575044216904964e-03, 1.054482940467385858e-03, 1.054389128960068730e-03, 1.054293609946105759e-03, 1.054196383679408206e-03, 1.054097450416634912e-03, 1.053996810417219846e-03, 1.053894463943348030e-03, 1.053790411259961611e-03, 1.053684652634764851e-03, 1.053577188338216753e-03, 1.053468018643526072e-03, 1.053357143826666713e-03, 1.053244564166371227e-03, 1.053130279944107170e-03, 1.053014291444117657e-03, 1.052896598953382331e-03, 1.052777202761646849e-03, 1.052656103161401634e-03, 1.052533300447887734e-03, 1.052408794919098981e-03, 1.052282586875783518e-03, 1.052154676621425361e-03, 1.052025064462273896e-03, 1.051893750707316982e-03, 1.051760735668295053e-03, 1.051626019659685721e-03, 1.051489602998720903e-03, 1.051351486005386174e-03, 1.051211669002389973e-03, 1.051070152315198300e-03, 1.050926936272025825e-03, 1.050782021203821789e-03, 1.050635407444267628e-03, 1.050487095329812309e-03, 1.050337085199623110e-03, 1.050185377395615764e-03, 1.050031972262441445e-03, 1.049876870147494140e-03, 1.049720071400904583e-03, 1.049561576375537212e-03, 1.049401385426995377e-03, 1.049239498913620691e-03, 1.049075917196483701e-03, 1.048910640639389314e-03, 1.048743669608884601e-03, 1.048575004474237328e-03, 1.048404645607452007e-03, 1.048232593383269674e-03, 1.048058848179152713e-03, 1.047883410375298084e-03, 1.047706280354627779e-03, 1.047527458502795546e-03, 1.047346945208182554e-03, 1.047164740861893919e-03, 1.046980845857756973e-03, 1.046795260592337093e-03, 1.046607985464904304e-03, 1.046419020877465376e-03, 1.046228367234749729e-03, 1.046036024944197286e-03, 1.045841994415978859e-03, 1.045646276062985091e-03, 1.045448870300823849e-03, 1.045249777547815244e-03, 1.045048998224997481e-03, 1.044846532756140084e-03, 1.044642381567714197e-03, 1.044436545088899080e-03, 1.044229023751615726e-03, 1.044019817990469827e-03, 1.043808928242786907e-03, 1.043596354948614705e-03, 1.043382098550699319e-03, 1.043166159494506679e-03, 1.042948538228200429e-03, 1.042729235202656882e-03, 1.042508250871469798e-03, 1.042285585690913736e-03, 1.042061240119994143e-03, 1.041835214620414393e-03, 1.041607509656568200e-03, 1.041378125695563688e-03, 1.041147063207211246e-03, 1.040914322664014853e-03, 1.040679904541187478e-03, 1.040443809316628741e-03, 1.040206037470942264e-03, 1.039966589487437186e-03, 1.039725465852103228e-03, 1.039482667053633460e-03, 1.039238193583418447e-03, 1.038992045935532155e-03, 1.038744224606747346e-03, 1.038494730096532976e-03, 1.038243562907034461e-03, 1.037990723543090379e-03, 1.037736212512245688e-03, 1.037480030324705767e-03, 1.037222177493378255e-03, 1.036962654533851160e-03, 1.036701461964406297e-03, 1.036438600305994570e-03, 1.036174070082241608e-03, 1.035907871819497861e-03, 1.035640006046749037e-03, 1.035370473295670318e-03, 1.035099274100621585e-03, 1.034826408998653496e-03, 1.034551878529461942e-03, 1.034275683235440745e-03, 1.033997823661649993e-03, 1.033718300355834048e-03, 1.033437113868384671e-03, 1.033154264752390904e-03, 1.032869753563599603e-03, 1.032583580860426493e-03, 1.032295747203945116e-03, 1.032006253157927806e-03, 1.031715099288782597e-03, 1.031422286165585523e-03, 1.031127814360084964e-03, 1.030831684446693181e-03, 1.030533897002484586e-03, 1.030234452607176011e-03, 1.029933351843162698e-03, 1.029630595295498137e-03, 1.029326183551874984e-03, 1.029020117202657800e-03, 1.028712396840871131e-03, 1.028403023062168277e-03, 1.028091996464875748e-03, 1.027779317649976784e-03, 1.027464987221077958e-03, 1.027149005784459054e-03, 1.026831373949047693e-03, 1.026512092326395051e-03, 1.026191161530727678e-03, 1.025868582178893077e-03, 1.025544354890395261e-03, 1.025218480287383481e-03, 1.024890958994631191e-03, 1.024561791639568790e-03, 1.024230978852265841e-03, 1.023898521265403320e-03, 1.023564419514334106e-03, 1.023228674237032683e-03, 1.022891286074091447e-03, 1.022552255668756922e-03, 1.022211583666897449e-03, 1.021869270717025739e-03, 1.021525317470259623e-03, 1.021179724580347425e-03, 1.020832492703702436e-03, 1.020483622499317265e-03, 1.020133114628825419e-03, 1.019780969756486780e-03, 1.019427188549191501e-03, 1.019071771676427702e-03, 1.018714719810317462e-03, 1.018356033625607065e-03, 1.017995713799653120e-03, 1.017633761012411066e-03, 1.017270175946478113e-03, 1.016904959287057890e-03, 1.016538111721956763e-03, 1.016169633941575159e-03, 1.015799526638981728e-03, 1.015427790509784538e-03, 1.015054426252238627e-03, 1.014679434567205673e-03, 1.014302816158125804e-03, 1.013924571731070071e-03, 1.013544701994682556e-03, 1.013163207660230892e-03, 1.012780089441584798e-03, 1.012395348055182684e-03, 1.012008984220089764e-03, 1.011620998657957729e-03, 1.011231392093014762e-03, 1.010840165252105665e-03, 1.010447318864658673e-03, 1.010052853662678088e-03, 1.009656770380774633e-03, 1.009259069756149188e-03, 1.008859752528557235e-03, 1.008458819440379755e-03, 1.008056271236534981e-03, 1.007652108664585083e-03, 1.007246332474613865e-03, 1.006838943419303099e-03, 1.006429942253922547e-03, 1.006019329736315866e-03, 1.005607106626884781e-03, 1.005193273688620957e-03, 1.004777831687097330e-03, 1.004360781390420832e-03, 1.003942123569300264e-03, 1.003521858997005961e-03, 1.003099988449374135e-03, 1.002676512704791037e-03, 1.002251432544224189e-03, 1.001824748751206553e-03, 1.001396462111815494e-03, 1.000966573414677121e-03, 1.000535083451028952e-03, 1.000101993014603039e-03, 9.996673029017302640e-04, 9.992310139112611962e-04, 9.987931268446224690e-04, 9.983536425057931447e-04, 9.979125617012769584e-04, 9.974698852401493732e-04, 9.970256139340328595e-04, 9.965797485970645866e-04, 9.961322900459582217e-04, 9.956832390999696691e-04, 9.952325965808584730e-04, 9.947803633129606755e-04, 9.943265401231441477e-04, 9.938711278407882065e-04, 9.934141272978458479e-04, 9.929555393287528911e-04, 9.924953647705236047e-04, 9.920336044626899916e-04, 9.915702592472755515e-04, 9.911053299689006647e-04, 9.906388174746553078e-04, 9.901707226141536963e-04, 9.897010462395639929e-04, 9.892297892055662394e-04, 9.887569523693356607e-04, 9.882825365905927549e-04, 9.878065427315720678e-04, 9.873289716569950882e-04, 9.868498242341298791e-04, 9.863691013327388190e-04, 9.858868038251122120e-04, 9.854029325860199327e-04, 9.849174884927380975e-04, 9.844304724250995883e-04, 9.839418852653882344e-04, 9.834517278983954079e-04, 9.829600012114362868e-04, 9.824667060943088719e-04, 9.819718434393293321e-04, 9.814754141412702047e-04, 9.809774190974284835e-04, 9.804778592075987301e-04, 9.799767353740381631e-04, 9.794740485015163145e-04, 9.789697994972922611e-04, 9.784639892710951092e-04, 9.779566187351259460e-04, 9.774476888041311318e-04, 9.769372003952583178e-04, 9.764251544282012956e-04, 9.759115518250820361e-04, 9.753963935105269085e-04, 9.748796804116416359e-04, 9.743614134579729139e-04, 9.738415935815710779e-04, 9.733202217169531316e-04, 9.727972988010750999e-04, 9.722728257733935031e-04, 9.717468035758227481e-04, 9.712192331527157206e-04, 9.706901154509133337e-04, 9.701594514197204580e-04, 9.696272420108616868e-04, 9.690934881785558206e-04, 9.685581908794773775e-04, 9.680213510727183213e-04, 9.674829697198631968e-04, 9.669430477848955626e-04, 9.664015862343214823e-04, 9.658585860370322643e-04, 9.653140481643612738e-04, 9.647679735901224223e-04, 9.642203632905613784e-04, 9.636712182443346424e-04, 9.631205394325608295e-04, 9.625683278388086350e-04, 9.620145844490328663e-04, 9.614593102516638895e-04, 9.609025062375477818e-04, 9.603441733999724603e-04, 9.597843127346251816e-04, 9.592229252396112984e-04, 9.586600119155328642e-04, 9.580955737653328334e-04, 9.575296117943978436e-04, 9.569621270105441212e-04, 9.563931204240065306e-04, 9.558225930474340210e-04, 9.552505458958595935e-04, 9.546769799867605832e-04, 9.541018963400266749e-04, 9.535252959779121984e-04, 9.529471799251211300e-04, 9.523675492087564599e-04, 9.517864048582895097e-04, 9.512037479056258517e-04, 9.506195793850710481e-04, 9.500339003332918366e-04, 9.494467117893845435e-04, 9.488580147948373535e-04, 9.482678103934976755e-04, 9.476760996316439161e-04, 9.470828835578986356e-04, 9.464881632233082369e-04, 9.458919396812956936e-04, 9.452942139876336627e-04, 9.446949872005131138e-04, 9.440942603805003953e-04, 9.434920345905038405e-04, 9.428883108958389285e-04, 9.422830903641997696e-04, 9.416763740656060875e-04, 9.410681630724951601e-04, 9.404584584596587188e-04, 9.398472613042248422e-04, 9.392345726857323322e-04, 9.386203936860140545e-04, 9.380047253893628208e-04, 9.373875688823382927e-04, 9.367689252538638012e-04, 9.361487955952932415e-04, 9.355271810002532135e-04, 9.349040825647342030e-04, 9.342795013870957860e-04, 9.336534385680388733e-04, 9.330258952106204552e-04, 9.323968724201900675e-04, 9.317663713044908392e-04, 9.311343929735941150e-04, 9.305009385398724589e-04, 9.298660091180721869e-04, 9.292296058252724929e-04, 9.285917297808558499e-04, 9.279523821065155994e-04, 9.273115639263641548e-04, 9.266692763667314483e-04, 9.260255205563446912e-04, 9.253802976261924157e-04, 9.247336087096331113e-04, 9.240854549423273539e-04, 9.234358374622244703e-04, 9.227847574096166398e-04, 9.221322159271122228e-04, 9.214782141595828516e-04, 9.208227532542558047e-04, 9.201658343606566523e-04, 9.195074586305743451e-04, 9.188476272181417704e-04, 9.181863412797854453e-04, 9.175236019741943999e-04, 9.168594104624044200e-04, 9.161937679076864825e-04, 9.155266754756491042e-04, 9.148581343341843485e-04, 9.141881456534162176e-04, 9.135167106058554760e-04, 9.128438303662100243e-04, 9.121695061114757546e-04, 9.114937390209660413e-04, 9.108165302762590487e-04, 9.101378810611763723e-04, 9.094577925618467897e-04, 9.087762659666574717e-04, 9.080933024662801115e-04, 9.074089032536050052e-04, 9.067230695238345101e-04, 9.060358024744343637e-04, 9.053471033050918340e-04, 9.046569732177485706e-04, 9.039654134166808354e-04, 9.032724251083396917e-04, 9.025780095014341621e-04, 9.018821678069570327e-04, 9.011849012381314018e-04, 9.004862110104460251e-04, 8.997860983415783371e-04, 8.990845644514979928e-04, 8.983816105624166685e-04, 8.976772378987302745e-04, 8.969714476871233633e-04, 8.962642411565026682e-04, 8.955556195379860444e-04, 8.948455840648961808e-04, 8.941341359728768260e-04, 8.934212764996895010e-04, 8.927070068853947774e-04, 8.919913283722088375e-04, 8.912742422046149304e-04, 8.905557496293086198e-04, 8.898358518951562587e-04, 8.891145502532780400e-04, 8.883918459570065793e-04, 8.876677402618303198e-04, 8.869422344254957727e-04, 8.862153297079482109e-04, 8.854870273712826638e-04, 8.847573286798478915e-04, 8.840262349001799238e-04, 8.832937473009697506e-04, 8.825598671531400836e-04, 8.818245957298078428e-04, 8.810879343062287539e-04, 8.803498841599039252e-04, 8.796104465704407448e-04, 8.788696228197403386e-04, 8.781274141917832241e-04, 8.773838219727453196e-04, 8.766388474510030402e-04, 8.758924919171133484e-04, 8.751447566637426305e-04, 8.743956429857862840e-04, 8.736451521802800300e-04, 8.728932855464398115e-04, 8.721400443855971754e-04, 8.713854300012875264e-04, 8.706294436992012293e-04, 8.698720867871546610e-04, 8.691133605750947641e-04, 8.683532663752186343e-04, 8.675918055017740275e-04, 8.668289792711479386e-04, 8.660647890019745887e-04, 8.652992360149103441e-04, 8.645323216328307161e-04, 8.637640471806833434e-04, 8.629944139856022666e-04, 8.622234233768440691e-04, 8.614510766857517727e-04, 8.606773752458415742e-04, 8.599023203927549236e-04, 8.591259134642085420e-04, 8.583481558000822425e-04, 8.575690487423815248e-04, 8.567885936351690539e-04, 8.560067918246773086e-04, 8.552236446592441799e-04, 8.544391534892666756e-04, 8.536533196673156288e-04, 8.528661445480013653e-04, 8.520776294880821238e-04, 8.512877758464159174e-04, 8.504965849839058898e-04, 8.497040582636036397e-04, 8.489101970506503485e-04, 8.481150027122210527e-04, 8.473184766176408700e-04, 8.465206201383107315e-04, 8.457214346476636885e-04, 8.449209215212678033e-04, 8.441190821367511223e-04, 8.433159178738319252e-04, 8.425114301142682012e-04, 8.417056202418718523e-04, 8.408984896426319666e-04, 8.400900397044883290e-04, 8.392802718174536105e-04, 8.384691873737044410e-04, 8.376567877673716167e-04, 8.368430743946583860e-04, 8.360280486538561708e-04, 8.352117119452961026e-04, 8.343940656713700558e-04, 8.335751112364684148e-04, 8.327548500470766763e-04, 8.319332835117225402e-04, 8.311104130409222414e-04, 8.302862400472802969e-04, 8.294607659454370299e-04, 8.286339921520119748e-04, 8.278059200857138152e-04, 8.269765511672647063e-04, 8.261458868193725198e-04, 8.253139284668319997e-04, 8.244806775363896709e-04, 8.236461354568623420e-04, 8.228103036590845220e-04, 8.219731835758472714e-04, 8.211347766420067302e-04, 8.202950842944295830e-04, 8.194541079719312596e-04, 8.186118491153844632e-04, 8.177683091676640932e-04, 8.169234895735919509e-04, 8.160773917800335587e-04, 8.152300172358526234e-04, 8.143813673918470688e-04, 8.135314437008820667e-04, 8.126802476177049641e-04, 8.118277805991863010e-04, 8.109740441040639387e-04, 8.101190395930536487e-04, 8.092627685289551474e-04, 8.084052323764381832e-04, 8.075464326021565943e-04, 8.066863706747682584e-04, 8.058250480649057105e-04, 8.049624662450971047e-04, 8.040986266898971857e-04, 8.032335308757983846e-04, 8.023671802812646454e-04, 8.014995763866597598e-04, 8.006307206743542692e-04, 7.997606146286681105e-04, 7.988892597358290912e-04, 7.980166574839877430e-04, 7.971428093633546900e-04, 7.962677168659543182e-04, 7.953913814857767805e-04, 7.945138047187801653e-04, 7.936349880628314072e-04, 7.927549330177461858e-04, 7.918736410852104295e-04, 7.909911137688891694e-04, 7.901073525743672332e-04, 7.892223590090908071e-04, 7.883361345824787831e-04, 7.874486808058619352e-04, 7.865599991924286010e-04, 7.856700912573219347e-04, 7.847789585176038031e-04, 7.838866024921711936e-04, 7.829930247018817647e-04, 7.820982266694895529e-04, 7.812022099195871849e-04, 7.803049759787368490e-04, 7.794065263753116764e-04, 7.785068626396293148e-04, 7.776059863038962006e-04, 7.767038989021362184e-04, 7.758006019703150586e-04, 7.748960970462729974e-04, 7.739903856696686265e-04, 7.730834693820871645e-04, 7.721753497269825614e-04, 7.712660282496206854e-04, 7.703555064971854670e-04, 7.694437860187045225e-04, 7.685308683650803789e-04, 7.676167550890365893e-04, 7.667014477451229368e-04, 7.657849478898683072e-04, 7.648672570815218900e-04, 7.639483768802016054e-04, 7.630283088479060307e-04, 7.621070545484752608e-04, 7.611846155475276987e-04, 7.602609934125697773e-04, 7.593361897129310154e-04, 7.584102060197776786e-04, 7.574830439060549914e-04, 7.565547049465807042e-04, 7.556251907180000981e-04, 7.546945027987374136e-04, 7.537626427690101612e-04, 7.528296122109712609e-04, 7.518954127084420029e-04, 7.509600458471343094e-04, 7.500235132145618294e-04, 7.490858163999864882e-04, 7.481469569945411102e-04, 7.472069365910855455e-04, 7.462657567843271247e-04, 7.453234191707657982e-04, 7.443799253486336380e-04, 7.434352769180107385e-04, 7.424894754807531173e-04, 7.415425226404419746e-04, 7.405944200024993773e-04, 7.396451691741194124e-04, 7.386947717642101821e-04, 7.377432293835103558e-04, 7.367905436445257436e-04, 7.358367161614641364e-04, 7.348817485503799382e-04, 7.339256424289817204e-04, 7.329683994168822384e-04, 7.320100211353189248e-04, 7.310505092073031836e-04, 7.300898652576396893e-04, 7.291280909128706588e-04, 7.281651878012271708e-04, 7.272011575527379109e-04, 7.262360017991712760e-04, 7.252697221739637075e-04, 7.243023203123514228e-04, 7.233337978512726198e-04, 7.223641564294196269e-04, 7.213933976871606240e-04, 7.204215232665645788e-04, 7.194485348115475061e-04, 7.184744339676130175e-04, 7.174992223819729939e-04, 7.165229017036832187e-04, 7.155454735833506434e-04, 7.145669396733984749e-04, 7.135873016278611531e-04, 7.126065611025396082e-04, 7.116247197549280777e-04, 7.106417792441489453e-04, 7.096577412310811107e-04, 7.086726073782898417e-04, 7.076863793499617219e-04, 7.066990588120268405e-04, 7.057106474320928727e-04, 7.047211468793866413e-04, 7.037305588248658978e-04, 7.027388849411619681e-04, 7.017461269025054849e-04, 7.007522863848841387e-04, 6.997573650658556535e-04, 6.987613646247051039e-04, 6.977642867423737918e-04, 6.967661331013888818e-04, 6.957669053859953483e-04, 6.947666052820882128e-04, 6.937652344771388186e-04, 6.927627946603256938e-04, 6.917592875224725345e-04, 6.907547147559624451e-04, 6.897490780548927621e-04, 6.887423791149795355e-04, 6.877346196335078730e-04, 6.867258013094478409e-04, 6.857159258433773771e-04, 6.847049949375093965e-04, 6.836930102956340028e-04, 6.826799736231297646e-04, 6.816658866271179968e-04, 6.806507510162001671e-04, 6.796345685005979751e-04, 6.786173407921834927e-04, 6.775990696044104263e-04, 6.765797566523414379e-04, 6.755594036525746368e-04, 6.745380123233591556e-04, 6.735155843845356269e-04, 6.724921215574623497e-04, 6.714676255651472365e-04, 6.704420981321750636e-04, 6.694155409846632354e-04, 6.683879558502806495e-04, 6.673593444583988347e-04, 6.663297085398061552e-04, 6.652990498269594540e-04, 6.642673700537927994e-04, 6.632346709558655873e-04, 6.622009542702904416e-04, 6.611662217356705472e-04, 6.601304750922229242e-04, 6.590937160817126163e-04, 6.580559464473797245e-04, 6.570171679340767752e-04, 6.559773822881928259e-04, 6.549365912575857030e-04, 6.538947965917095038e-04, 6.528520000415545315e-04, 6.518082033595643541e-04, 6.507634082997759912e-04, 6.497176166177485741e-04, 6.486708300704886439e-04, 6.476230504166122399e-04, 6.465742794161283844e-04, 6.455245188307193486e-04, 6.444737704234341493e-04, 6.434220359588485767e-04, 6.423693172030826501e-04, 6.413156159237545393e-04, 6.402609338899110675e-04, 6.392052728721560806e-04, 6.381486346425783475e-04, 6.370910209746888939e-04, 6.360324336435493713e-04, 6.349728744256756714e-04, 6.339123450990824873e-04, 6.328508474432151167e-04, 6.317883832389627977e-04, 6.307249542688220982e-04, 6.296605623166188180e-04, 6.285952091676575001e-04, 6.275288966087497287e-04, 6.264616264281444146e-04, 6.253934004155569607e-04, 6.243242203620914159e-04, 6.232540880603617975e-04, 6.221830053044286653e-04, 6.211109738897249623e-04, 6.200379956131870946e-04, 6.189640722731889035e-04, 6.178892056694644704e-04, 6.168133976032480871e-04, 6.157366498771973864e-04, 6.146589642953226513e-04, 6.135803426631253766e-04, 6.125007867875247600e-04, 6.114202984767788803e-04, 6.103388795406528575e-04, 6.092565317902262981e-04, 6.081732570380516973e-04, 6.070890570980836407e-04, 6.060039337856041024e-04, 6.049178889173611150e-04, 6.038309243114975368e-04, 6.027430417874706046e-04, 6.016542431661953735e-04, 6.005645302699748941e-04, 5.994739049224135849e-04, 5.983823689485693459e-04, 5.972899241748757127e-04, 5.961965724290596742e-04, 5.951023155403167711e-04, 5.940071553390854735e-04, 5.929110936573325427e-04, 5.918141323282454435e-04, 5.907162731863848911e-04, 5.896175180677124981e-04, 5.885178688095462143e-04, 5.874173272504707713e-04, 5.863158952304927231e-04, 5.852135745909281235e-04, 5.841103671744610724e-04, 5.830062748250338864e-04, 5.819012993879917311e-04, 5.807954427100142083e-04, 5.796887066390229819e-04, 5.785810930243427816e-04, 5.774726037166156428e-04, 5.763632405677484314e-04, 5.752530054309359367e-04, 5.741419001608325011e-04, 5.730299266132253501e-04, 5.719170866453272177e-04, 5.708033821155558208e-04, 5.696888148836975726e-04, 5.685733868108315808e-04, 5.674570997592567889e-04, 5.663399555926340069e-04, 5.652219561759067642e-04, 5.641031033752291019e-04, 5.629833990581039173e-04, 5.618628450933146586e-04, 5.607414433508373965e-04, 5.596191957019958649e-04, 5.584961040193792787e-04, 5.573721701767645961e-04, 5.562473960492861965e-04, 5.551217835132410492e-04, 5.539953344462497176e-04, 5.528680507271846933e-04, 5.517399342360671801e-04, 5.506109868543366268e-04, 5.494812104645223219e-04, 5.483506069504195772e-04, 5.472191781971072911e-04, 5.460869260908940643e-04, 5.449538525192475094e-04, 5.438199593709284758e-04, 5.426852485359005178e-04, 5.415497219053701195e-04, 5.404133813716845624e-04, 5.392762288284781843e-04, 5.381382661705977864e-04, 5.369994952940432189e-04, 5.358599180959950281e-04, 5.347195364749825078e-04, 5.335783523305860860e-04, 5.324363675635995210e-04, 5.312935840760615609e-04, 5.301500037711717002e-04, 5.290056285533403790e-04, 5.278604603280832733e-04, 5.267145010021690712e-04, 5.255677524835431456e-04, 5.244202166812437452e-04, 5.232718955055587701e-04, 5.221227908679377345e-04, 5.209729046809428695e-04, 5.198222388582709151e-04, 5.186707953149254004e-04, 5.175185759668849859e-04, 5.163655827314073653e-04, 5.152118175267921506e-04, 5.140572822725600908e-04, 5.129019788893711060e-04, 5.117459092989465504e-04, 5.105890754242183981e-04, 5.094314791892470612e-04, 5.082731225191448442e-04, 5.071140073402251314e-04, 5.059541355799225884e-04, 5.047935091667107637e-04, 5.036321300302571292e-04, 5.024700001013379701e-04, 5.013071213117625997e-04, 5.001434955945235211e-04, 4.989791248837109920e-04, 4.978140111144387569e-04, 4.966481562230204471e-04, 4.954815621467297546e-04, 4.943142308241122492e-04, 4.931461641946420114e-04, 4.919773641989054046e-04, 4.908078327786152785e-04, 4.896375718765625046e-04, 4.884665834365320598e-04, 4.872948694034589341e-04, 4.861224317233141267e-04, 4.849492723431630850e-04, 4.837753932110477970e-04, 4.826007962761481754e-04, 4.814254834886984649e-04, 4.802494567999256603e-04, 4.790727181620847968e-04, 4.778952695286255918e-04, 4.767171128538856702e-04, 4.755382500932366606e-04, 4.743586832032437896e-04, 4.731784141413153595e-04, 4.719974448660245393e-04, 4.708157773368591855e-04, 4.696334135144093541e-04, 4.684503553602808903e-04, 4.672666048370170406e-04, 4.660821639082510541e-04, 4.648970345386230240e-04, 4.637112186937009041e-04, 4.625247183401302365e-04, 4.613375354455590709e-04, 4.601496719785476506e-04, 4.589611299087280067e-04, 4.577719112067217219e-04, 4.565820178440562296e-04, 4.553914517933453881e-04, 4.542002150280776275e-04, 4.530083095227955474e-04, 4.518157372530136806e-04, 4.506225001951364730e-04, 4.494286003266130536e-04, 4.482340396258559733e-04, 4.470388200721565290e-04, 4.458429436458420810e-04, 4.446464123281908352e-04, 4.434492281013524247e-04, 4.422513929485022465e-04, 4.410529088537301677e-04, 4.398537778020941398e-04, 4.386540017795352510e-04, 4.374535827728988141e-04, 4.362525227701199819e-04, 4.350508237599016309e-04, 4.338484877318688599e-04, 4.326455166767279341e-04, 4.314419125859388017e-04, 4.302376774519047213e-04, 4.290328132679887413e-04, 4.278273220284358001e-04, 4.266212057284204310e-04, 4.254144663639373666e-04, 4.242071059319585846e-04, 4.229991264303477653e-04, 4.217905298577810896e-04, 4.205813182138990283e-04, 4.193714934992258934e-04, 4.181610577150892284e-04, 4.169500128637709997e-04, 4.157383609484262277e-04, 4.145261039730019424e-04, 4.133132439424155890e-04, 4.120997828623488668e-04, 4.108857227394140999e-04, 4.096710655810892397e-04, 4.084558133956203404e-04, 4.072399681921862495e-04, 4.060235319808140945e-04, 4.048065067722920042e-04, 4.035888945783290289e-04, 4.023706974114743128e-04, 4.011519172850280812e-04, 3.999325562132009099e-04, 3.987126162110328975e-04, 3.974920992943065503e-04, 3.962710074797304999e-04, 3.950493427846986480e-04, 3.938271072276071870e-04, 3.926043028274984938e-04, 3.913809316042248443e-04, 3.901569955786054057e-04, 3.889324967720929533e-04, 3.877074372069699479e-04, 3.864818189063639860e-04, 3.852556438941937521e-04, 3.840289141950841258e-04, 3.828016318345244212e-04, 3.815737988387594786e-04, 3.803454172348365563e-04, 3.791164890504957179e-04, 3.778870163143283425e-04, 3.766570010556964600e-04, 3.754264453046668860e-04, 3.741953510920434226e-04, 3.729637204495484621e-04, 3.717315554094950160e-04, 3.704988580049746070e-04, 3.692656302698797124e-04, 3.680318742388194670e-04, 3.667975919471710001e-04, 3.655627854309671126e-04, 3.643274567270541903e-04, 3.630916078730119737e-04, 3.618552409070623760e-04, 3.606183578682364507e-04, 3.593809607962807702e-04, 3.581430517315814781e-04, 3.569046327153178660e-04, 3.556657057893794320e-04, 3.544262729962818553e-04, 3.531863363793265906e-04, 3.519458979825125598e-04, 3.507049598504561379e-04, 3.494635240285747630e-04, 3.482215925628688482e-04, 3.469791675001042538e-04, 3.457362508877337903e-04, 3.444928447738057663e-04, 3.432489512071270525e-04, 3.420045722371792187e-04, 3.407597099140310384e-04, 3.395143662884995473e-04, 3.382685434120656924e-04, 3.370222433367857525e-04, 3.357754681154576006e-04, 3.345282198015033935e-04, 3.332805004490222637e-04, 3.320323121127037461e-04, 3.307836568478538528e-04, 3.295345367105844835e-04, 3.282849537574755879e-04, 3.270349100457695091e-04, 3.257844076333928302e-04, 3.245334485788956046e-04, 3.232820349413714506e-04, 3.220301687806132970e-04, 3.207778521570043661e-04, 3.195250871315661505e-04, 3.182718757658473357e-04, 3.170182201220843711e-04, 3.157641222631161972e-04, 3.145095842523267285e-04, 3.132546081536659419e-04, 3.119991960318426469e-04, 3.107433499519608993e-04, 3.094870719798196198e-04, 3.082303641818003796e-04, 3.069732286247813685e-04, 3.057156673763265884e-04, 3.044576825044578456e-04, 3.031992760778514794e-04, 3.019404501657489150e-04, 3.006812068378681389e-04, 2.994215481645707199e-04, 2.981614762167708447e-04, 2.969009930658519968e-04, 2.956401007838273102e-04, 2.943788014432586336e-04, 2.931170971171606328e-04, 2.918549898791722571e-04, 2.905924818034654497e-04, 2.893295749646605255e-04, 2.880662714380179666e-04, 2.868025732991780511e-04, 2.855384826245028649e-04, 2.842740014907023599e-04, 2.830091319750271798e-04, 2.817438761552952227e-04, 2.804782361098315767e-04, 2.792122139173815122e-04, 2.779458116572743054e-04, 2.766790314093360678e-04, 2.754118752538013844e-04, 2.741443452714816356e-04, 2.728764435436435666e-04, 2.716081721520688104e-04, 2.703395331789593451e-04, 2.690705287069673638e-04, 2.678011608193866361e-04, 2.665314315998113101e-04, 2.652613431323021741e-04, 2.639908975015514562e-04, 2.627200967925133815e-04, 2.614489430907395709e-04, 2.601774384821214882e-04, 2.589055850530838079e-04, 2.576333848904974080e-04, 2.563608400815903569e-04, 2.550879527141142840e-04, 2.538147248762566139e-04, 2.525411586565519872e-04, 2.512672561440483054e-04, 2.499930194282186944e-04, 2.487184505988740088e-04, 2.474435517463266553e-04, 2.461683249613054827e-04, 2.448927723348652509e-04, 2.436168959585820312e-04, 2.423406979243236269e-04, 2.410641803244436448e-04, 2.397873452516942989e-04, 2.385101947991356353e-04, 2.372327310603059686e-04, 2.359549561291291288e-04, 2.346768720998289987e-04, 2.333984810670945297e-04, 2.321197851259930597e-04, 2.308407863718799178e-04, 2.295614869005650120e-04, 2.282818888082276923e-04, 2.270019941913232651e-04, 2.257218051467545141e-04, 2.244413237717502157e-04, 2.231605521639226826e-04, 2.218794924211760678e-04, 2.205981466417329543e-04, 2.193165169243296473e-04, 2.180346053678717502e-04, 2.167524140716281013e-04, 2.154699451352577429e-04, 2.141872006587216138e-04, 2.129041827423329642e-04, 2.116208934866437041e-04, 2.103373349926095819e-04, 2.090535093615014965e-04, 2.077694186948174327e-04, 2.064850650944486700e-04, 2.052004506625928560e-04, 2.039155775016917465e-04, 2.026304477144573078e-04, 2.013450634040668454e-04, 2.000594266737901747e-04, 1.987735396273276748e-04, 1.974874043685497275e-04, 1.962010230016939341e-04, 1.949143976312753160e-04, 1.936275303619983319e-04, 1.923404232989227064e-04, 1.910530785473769379e-04, 1.897654982128661955e-04, 1.884776844012432976e-04, 1.871896392186179103e-04, 1.859013647712673173e-04, 1.846128631658046338e-04, 1.833241365090904713e-04, 1.820351869081420003e-04, 1.807460164703028713e-04, 1.794566273031532539e-04, 1.781670215144199015e-04, 1.768772012121740459e-04, 1.755871685045701312e-04, 1.742969255001852779e-04, 1.730064743076443925e-04, 1.717158170358170049e-04, 1.704249557938413643e-04, 1.691338926910660281e-04, 1.678426298369582465e-04, 1.665511693412737222e-04, 1.652595133139662411e-04, 1.639676638650994190e-04, 1.626756231050137771e-04, 1.613833931442110571e-04, 1.600909760934050982e-04, 1.587983740634338803e-04, 1.575055891652854913e-04, 1.562126235102939068e-04, 1.549194792097928854e-04, 1.536261583753114777e-04, 1.523326631186011583e-04, 1.510389955515455932e-04, 1.497451577862133048e-04, 1.484511519347423943e-04, 1.471569801095056113e-04, 1.458626444230243767e-04, 1.445681469878762728e-04, 1.432734899168658328e-04, 1.419786753229346059e-04, 1.406837053190990866e-04, 1.393885820184769257e-04, 1.380933075344852577e-04, 1.367978839804618804e-04, 1.355023134699806227e-04, 1.342065981167293170e-04, 1.329107400344241210e-04, 1.316147413370039412e-04, 1.303186041383987126e-04, 1.290223305527272112e-04, 1.277259226942069022e-04, 1.264293826770639519e-04, 1.251327126157035009e-04, 1.238359146246185917e-04, 1.225389908183009929e-04, 1.212419433114104972e-04, 1.199447742186856376e-04, 1.186474856548520857e-04, 1.173500797347941724e-04, 1.160525585734643032e-04, 1.147549242857915188e-04, 1.134571789868822221e-04, 1.121593247917556865e-04, 1.108613638156879112e-04, 1.095632981738309031e-04, 1.082651299814141625e-04, 1.069668613537683730e-04, 1.056684944062638050e-04, 1.043700312542215740e-04, 1.030714740130828436e-04, 1.017728247982896178e-04, 1.004740857253398590e-04, 9.917525890966695176e-05, 9.787634646681184702e-05, 9.657735051233095919e-05, 9.527827316170697693e-05, 9.397911653051850014e-05, 9.267988273435048482e-05, 9.138057388873187443e-05, 9.008119210916235248e-05, 8.878173951131037211e-05, 8.748221821063413258e-05, 8.618263032272505445e-05, 8.488297796304439984e-05, 8.358326324712176271e-05, 8.228348829046573058e-05, 8.098365520847176805e-05, 7.968376611659554003e-05, 7.838382313025930447e-05, 7.708382836476345497e-05, 7.578378393545680833e-05, 7.448369195764570772e-05, 7.318355454650425076e-05, 7.188337381724377740e-05, 7.058315188502368076e-05, 6.928289086486007665e-05, 6.798259287182601503e-05, 6.668226002081512397e-05, 6.538189442674240386e-05, 6.408149820445301894e-05, 6.278107346860260134e-05, 6.148062233397352642e-05, 6.018014691509433072e-05, 5.887964932643871048e-05, 5.757913168245191516e-05, 5.627859609748867015e-05, 5.497804468572305240e-05, 5.367747956131881863e-05, 5.237690283831044122e-05, 5.107631663065705406e-05, 4.977572305212370527e-05, 4.847512421645113655e-05, 4.717452223726620769e-05, 4.587391922801975827e-05, 4.457331730201264205e-05, 4.327271857259494233e-05, 4.197212515281477179e-05, 4.067153915561797574e-05, 3.937096269387345502e-05, 3.807039788028260122e-05, 3.676984682743429287e-05, 3.546931164768529434e-05, 3.416879445333054341e-05, 3.286829735651327760e-05, 3.156782246913419844e-05, 3.026737190302195883e-05, 2.896694776984332672e-05, 2.766655218104106375e-05, 2.636618724785996299e-05, 2.506585508154619989e-05, 2.376555779296704156e-05, 2.246529749295535881e-05, 2.116507629204525019e-05, 1.986489630067155216e-05, 1.856475962907951151e-05, 1.726466838723422732e-05, 1.596462468499140270e-05, 1.466463063200681047e-05, 1.336468833764594189e-05, 1.206479991115451435e-05, 1.076496746156812689e-05, 9.465193097621800401e-06, 8.165478927920602316e-06, 6.865827060849177516e-06, 5.566239604481413133e-06, 4.266718666750919170e-06, 2.967266355360685667e-06, 1.667884777692707244e-06, 3.685760410074457051e-07, -9.306577478204046435e-07, -2.229814481957572582e-06, -3.528892054992357519e-06, -4.827888360735157783e-06, -6.126801293192944651e-06, -7.425628746630623214e-06, -8.724368615661287973e-06, -1.002301879507587647e-05, -1.132157717996244845e-05, -1.262004166565166324e-05, -1.391841014783590894e-05, -1.521668052239919117e-05, -1.651485068550717262e-05, -1.781291853366860837e-05, -1.911088196370978922e-05, -2.040873887257516536e-05, -2.170648715767841953e-05, -2.300412471670295009e-05, -2.430164944757643968e-05, -2.559905924856102700e-05, -2.689635201819901876e-05, -2.819352565543168434e-05, -2.949057805942945280e-05, -3.078750712968178986e-05, -3.208431076608760004e-05, -3.338098686878469856e-05, -3.467753333824060314e-05, -3.597394807534205183e-05, -3.727022898122532536e-05, -3.856637395736602585e-05, -3.986238090566959416e-05, -4.115824772830096139e-05, -4.245397232777459862e-05, -4.374955260704518336e-05, -4.504498646930775398e-05, -4.634027181823324580e-05, -4.763540655776872691e-05, -4.893038859222809166e-05, -5.022521582638209684e-05, -5.151988616528786416e-05, -5.281439751437952629e-05, -5.410874777955808015e-05, -5.540293486702116714e-05, -5.669695668335343462e-05, -5.799081113561682963e-05, -5.928449613117980996e-05, -6.057800957783700615e-05, -6.187134938375477423e-05, -6.316451345756080504e-05, -6.445749970831878776e-05, -6.575030604533005515e-05, -6.704293037848298121e-05, -6.833537061808300545e-05, -6.962762467468351082e-05, -7.091969045943461163e-05, -7.221156588388535436e-05, -7.350324885995777814e-05, -7.479473730003664605e-05, -7.608602911691617011e-05, -7.737712222391722710e-05, -7.866801453471868380e-05, -7.995870396344725026e-05, -8.124918842476706198e-05, -8.253946583370956862e-05, -8.382953410576485091e-05, -8.511939115696991534e-05, -8.640903490373995170e-05, -8.769846326295779328e-05, -8.898767415206451550e-05, -9.027666548885940063e-05, -9.156543519173573821e-05, -9.285398117948141317e-05, -9.414230137136863708e-05, -9.543039368724384210e-05, -9.671825604735923660e-05, -9.800588637246109990e-05, -9.929328258387963547e-05, -1.005804426033607841e-04, -1.018673643531548440e-04, -1.031540457561061746e-04, -1.044404847354851051e-04, -1.057266792150761067e-04, -1.070126271192678766e-04, -1.082983263728556201e-04, -1.095837749013032375e-04, -1.108689706304016924e-04, -1.121539114866454737e-04, -1.134385953970639478e-04, -1.147230202890520335e-04, -1.160071840907190573e-04, -1.172910847306897215e-04, -1.185747201380801835e-04, -1.198580882425575109e-04, -1.211411869744296162e-04, -1.224240142644770156e-04, -1.237065680440700992e-04, -1.249888462451147848e-04, -1.262708468001725128e-04, -1.275525676422889281e-04, -1.288340067050843028e-04, -1.301151619228159320e-04, -1.313960312303495920e-04, -1.326766125629648451e-04, -1.339569038567004118e-04, -1.352369030481582828e-04, -1.365166080744782402e-04, -1.377960168734260031e-04, -1.390751273833397764e-04, -1.403539375432498384e-04, -1.416324452927071283e-04, -1.429106485718741569e-04, -1.441885453216142088e-04, -1.454661334833228035e-04, -1.467434109990160850e-04, -1.480203758114207293e-04, -1.492970258638060281e-04, -1.505733591000720352e-04, -1.518493734648379827e-04, -1.531250669032488865e-04, -1.544004373612030390e-04, -1.556754827851581269e-04, -1.569502011222197017e-04, -1.582245903202296510e-04, -1.594986483275986618e-04, -1.607723730933951253e-04, -1.620457625674329031e-04, -1.633188147001061216e-04, -1.645915274424749057e-04, -1.658638987463561805e-04, -1.671359265641552403e-04, -1.684076088489556294e-04, -1.696789435546049022e-04, -1.709499286355513153e-04, -1.722205620469570181e-04, -1.734908417446476649e-04, -1.747607656851981749e-04, -1.760303318259099639e-04, -1.772995381246130235e-04, -1.785683825400130283e-04, -1.798368630314924662e-04, -1.811049775590888185e-04, -1.823727240835511828e-04, -1.836401005664315084e-04, -1.849071049699170055e-04, -1.861737352569450984e-04, -1.874399893911524401e-04, -1.887058653369905702e-04, -1.899713610595581885e-04, -1.912364745246909541e-04, -1.925012036990206288e-04, -1.937655465499496521e-04, -1.950295010454574220e-04, -1.962930651544693027e-04, -1.975562368465531295e-04, -1.988190140920287948e-04, -2.000813948620622207e-04, -2.013433771284694443e-04, -2.026049588639428631e-04, -2.038661380418608224e-04, -2.051269126363730773e-04, -2.063872806224886401e-04, -2.076472399759127165e-04, -2.089067886731293760e-04, -2.101659246914949286e-04, -2.114246460090679494e-04, -2.126829506046996193e-04, -2.139408364581200006e-04, -2.151983015497715577e-04, -2.164553438609005556e-04, -2.177119613736398383e-04, -2.189681520708187143e-04, -2.202239139362173101e-04, -2.214792449542349133e-04, -2.227341431102545892e-04, -2.239886063904529036e-04, -2.252426327817750944e-04, -2.264962202719919928e-04, -2.277493668497899569e-04, -2.290020705046045830e-04, -2.302543292267080649e-04, -2.315061410072966346e-04, -2.327575038383263332e-04, -2.340084157126256863e-04, -2.352588746238486498e-04, -2.365088785665535938e-04, -2.377584255361857117e-04, -2.390075135288812673e-04, -2.402561405418060286e-04, -2.415043045729929356e-04, -2.427520036211740489e-04, -2.439992356861503712e-04, -2.452459987684580756e-04, -2.464922908696251633e-04, -2.477381099919743557e-04, -2.489834541387163629e-04, -2.502283213140320392e-04, -2.514727095229100776e-04, -2.527166167712338552e-04, -2.539600410658689276e-04, -2.552029804144956824e-04, -2.564454328257008463e-04, -2.576873963090609140e-04, -2.589288688749794096e-04, -2.601698485347732977e-04, -2.614103333007597191e-04, -2.626503211860654430e-04, -2.638898102048499407e-04, -2.651287983721160846e-04, -2.663672837037980227e-04, -2.676052642168440113e-04, -2.688427379290544354e-04, -2.700797028591693039e-04, -2.713161570269549856e-04, -2.725520984530384891e-04, -2.737875251589961503e-04, -2.750224351674379294e-04, -2.762568265018470028e-04, -2.774906971866640060e-04, -2.787240452473729022e-04, -2.799568687103114097e-04, -2.811891656029235124e-04, -2.824209339534311091e-04, -2.836521717911936438e-04, -2.848828771465473182e-04, -2.861130480506444669e-04, -2.873426825357856492e-04, -2.885717786352285578e-04, -2.898003343831680157e-04, -2.910283478148155563e-04, -2.922558169663521527e-04, -2.934827398750423292e-04, -2.947091145790668699e-04, -2.959349391176140532e-04, -2.971602115309608053e-04, -2.983849298603141894e-04, -2.996090921478956480e-04, -3.008326964369988457e-04, -3.020557407719652739e-04, -3.032782231979969556e-04, -3.045001417615128764e-04, -3.057214945098260550e-04, -3.069422794913935059e-04, -3.081624947556237397e-04, -3.093821383529669683e-04, -3.106012083349953359e-04, -3.118197027542486373e-04, -3.130376196643114587e-04, -3.142549571199045760e-04, -3.154717131767198306e-04, -3.166878858915088716e-04, -3.179034733221662058e-04, -3.191184735275666212e-04, -3.203328845676546338e-04, -3.215467045035253694e-04, -3.227599313972670829e-04, -3.239725633120432865e-04, -3.251845983121791068e-04, -3.263960344629737720e-04, -3.276068698309488395e-04, -3.288171024835233693e-04, -3.300267304893729579e-04, -3.312357519182392972e-04, -3.324441648409083290e-04, -3.336519673292691703e-04, -3.348591574563933152e-04, -3.360657332963806233e-04, -3.372716929244413400e-04, -3.384770344169786582e-04, -3.396817558514335150e-04, -3.408858553063913856e-04, -3.420893308615330060e-04, -3.432921805977224650e-04, -3.444944025969753280e-04, -3.456959949422794731e-04, -3.468969557179180747e-04, -3.480972830092876743e-04, -3.492969749028685279e-04, -3.504960294863143774e-04, -3.516944448483976448e-04, -3.528922190791232189e-04, -3.540893502695654452e-04, -3.552858365119589829e-04, -3.564816758997745895e-04, -3.576768665275654362e-04, -3.588714064910515124e-04, -3.600652938871741612e-04, -3.612585268140719019e-04, -3.624511033708973620e-04, -3.636430216581673668e-04, -3.648342797774726978e-04, -3.660248758315886274e-04, -3.672148079245554750e-04, -3.684040741614962445e-04, -3.695926726488318382e-04, -3.707806014941023259e-04, -3.719678588060422973e-04, -3.731544426946708506e-04, -3.743403512711289080e-04, -3.755255826477658433e-04, -3.767101349382227489e-04, -3.778940062572718112e-04, -3.790771947209031550e-04, -3.802596984464067550e-04, -3.814415155522140341e-04, -3.826226441579810757e-04, -3.838030823846742758e-04, -3.849828283543832094e-04, -3.861618801905654982e-04, -3.873402360177291928e-04, -3.885178939617848137e-04, -3.896948521498552905e-04, -3.908711087102600241e-04, -3.920466617725667114e-04, -3.932215094676752630e-04, -3.943956499276584792e-04, -3.955690812858776804e-04, -3.967418016769258407e-04, -3.979138092367417003e-04, -3.990851021024494115e-04, -4.002556784124439745e-04, -4.014255363064724979e-04, -4.025946739254794831e-04, -4.037630894116886276e-04, -4.049307809086544869e-04, -4.060977465612468080e-04, -4.072639845154625831e-04, -4.084294929187748369e-04, -4.095942699198179917e-04, -4.107583136686280721e-04, -4.119216223164614264e-04, -4.130841940158766924e-04, -4.142460269208176845e-04, -4.154071191864556968e-04, -4.165674689692743958e-04, -4.177270744271499429e-04, -4.188859337191951407e-04, -4.200440450058468196e-04, -4.212014064489370694e-04, -4.223580162115505047e-04, -4.235138724580972858e-04, -4.246689733543976318e-04, -4.258233170675037411e-04, -4.269769017659072528e-04, -4.281297256193615465e-04, -4.292817867989643581e-04, -4.304330834772374147e-04, -4.315836138279738332e-04, -4.327333760263156947e-04, -4.338823682488399678e-04, -4.350305886734025457e-04, -4.361780354792217846e-04, -4.373247068469521205e-04, -4.384706009585411716e-04, -4.396157159973296475e-04, -4.407600501480041862e-04, -4.419036015967034979e-04, -4.430463685308673352e-04, -4.441883491393160198e-04, -4.453295416123031884e-04, -4.464699441414949764e-04, -4.476095549197946482e-04, -4.487483721416485045e-04, -4.498863940028723020e-04, -4.510236187006307074e-04, -4.521600444335115111e-04, -4.532956694014820425e-04, -4.544304918059927654e-04, -4.555645098498250557e-04, -4.566977217371714329e-04, -4.578301256737190433e-04, -4.589617198664936977e-04, -4.600925025239409696e-04, -4.612224718559828447e-04, -4.623516260739913208e-04, -4.634799633906122791e-04, -4.646074820201076582e-04, -4.657341801780403852e-04, -4.668600560815149600e-04, -4.679851079490002968e-04, -4.691093340004078406e-04, -4.702327324571690340e-04, -4.713553015420911176e-04, -4.724770394794305310e-04, -4.735979444949734688e-04, -4.747180148158888628e-04, -4.758372486708038968e-04, -4.769556442898855385e-04, -4.780731999046885887e-04, -4.791899137482367251e-04, -4.803057840551013240e-04, -4.814208090612490760e-04, -4.825349870041267700e-04, -4.836483161227324713e-04, -4.847607946574493138e-04, -4.858724208502677067e-04, -4.869831929444898354e-04, -4.880931091850615358e-04, -4.892021678183949189e-04, -4.903103670923477167e-04, -4.914177052562756489e-04, -4.925241805611138470e-04, -4.936297912592232766e-04, -4.947345356044987241e-04, -4.958384118523172972e-04, -4.969414182596466282e-04, -4.980435530848928687e-04, -4.991448145879810293e-04, -5.002452010304038769e-04, -5.013447106752064305e-04, -5.024433417868069598e-04, -5.035410926313034887e-04, -5.046379614763016244e-04, -5.057339465908902709e-04, -5.068290462457183910e-04, -5.079232587129548903e-04, -5.090165822663800157e-04, -5.101090151812489627e-04, -5.112005557343622403e-04, -5.122912022041462270e-04, -5.133809528705058278e-04, -5.144698060149028619e-04, -5.155577599204327162e-04, -5.166448128716747247e-04, -5.177309631547748940e-04, -5.188162090575207126e-04, -5.199005488691938077e-04, -5.209839808806485508e-04, -5.220665033843855654e-04, -5.231481146743905070e-04, -5.242288130463200035e-04, -5.253085967973459636e-04, -5.263874642262242071e-04, -5.274654136333701421e-04, -5.285424433207194447e-04, -5.296185515918003760e-04, -5.306937367518094585e-04, -5.317679971074719403e-04, -5.328413309671117251e-04, -5.339137366407318208e-04, -5.349852124398675381e-04, -5.360557566776886227e-04, -5.371253676689550192e-04, -5.381940437300860441e-04, -5.392617831791452062e-04, -5.403285843356712883e-04, -5.413944455209694553e-04, -5.424593650579701996e-04, -5.435233412710881781e-04, -5.445863724865136453e-04, -5.456484570320449447e-04, -5.467095932370685590e-04, -5.477697794326342453e-04, -5.488290139514074390e-04, -5.498872951277708433e-04, -5.509446212976804470e-04, -5.520009907987419610e-04, -5.530564019702836768e-04, -5.541108531532174713e-04, -5.551643426901110151e-04, -5.562168689252624740e-04, -5.572684302045618392e-04, -5.583190248755648703e-04, -5.593686512875615082e-04, -5.604173077914193163e-04, -5.614649927397744088e-04, -5.625117044868639411e-04, -5.635574413886030882e-04, -5.646022018026580118e-04, -5.656459840883092506e-04, -5.666887866065185072e-04, -5.677306077200085536e-04, -5.687714457931232611e-04, -5.698112991918941701e-04, -5.708501662841221303e-04, -5.718880454392374392e-04, -5.729249350283673872e-04, -5.739608334244137786e-04, -5.749957390018917104e-04, -5.760296501371386067e-04, -5.770625652080439271e-04, -5.780944825943451536e-04, -5.791254006774969277e-04, -5.801553178405362840e-04, -5.811842324683551102e-04, -5.822121429475496596e-04, -5.832390476663920371e-04, -5.842649450148867940e-04, -5.852898333848363058e-04, -5.863137111697071984e-04, -5.873365767647255407e-04, -5.883584285668327181e-04, -5.893792649747807335e-04, -5.903990843889949476e-04, -5.914178852116478043e-04, -5.924356658467063190e-04, -5.934524246999083345e-04, -5.944681601786122507e-04, -5.954828706920669906e-04, -5.964965546512563093e-04, -5.975092104688818802e-04, -5.985208365594284555e-04, -5.995314313391280877e-04, -6.005409932260455646e-04, -6.015495206399463536e-04, -6.025570120023786757e-04, -6.035634657367234873e-04, -6.045688802680780367e-04, -6.055732540233169049e-04, -6.065765854311712607e-04, -6.075788729220843367e-04, -6.085801149282875399e-04, -6.095803098838756956e-04, -6.105794562246400804e-04, -6.115775523882605426e-04, -6.125745968141451487e-04, -6.135705879435062945e-04, -6.145655242194242394e-04, -6.155594040867132070e-04, -6.165522259920006411e-04, -6.175439883837862938e-04, -6.185346897123189525e-04, -6.195243284296599734e-04, -6.205129029897549480e-04, -6.215004118483037068e-04, -6.224868534628235283e-04, -6.234722262927287198e-04, -6.244565287991901041e-04, -6.254397594452296713e-04, -6.264219166956807878e-04, -6.274029990172522728e-04, -6.283830048785139788e-04, -6.293619327497403408e-04, -6.303397811031811017e-04, -6.313165484129025853e-04, -6.322922331547795646e-04, -6.332668338065286550e-04, -6.342403488477890879e-04, -6.352127767599818724e-04, -6.361841160264061811e-04, -6.371543651322014029e-04, -6.381235225644247720e-04, -6.390915868119374180e-04, -6.400585563654623712e-04, -6.410244297176316162e-04, -6.419892053629701551e-04, -6.429528817977443267e-04, -6.439154575202459766e-04, -6.448769310305572933e-04, -6.458373008306367855e-04, -6.467965654243912734e-04, -6.477547233175241000e-04, -6.487117730177095797e-04, -6.496677130344456546e-04, -6.506225418791215494e-04, -6.515762580650833651e-04, -6.525288601075050592e-04, -6.534803465234632555e-04, -6.544307158319915630e-04, -6.553799665539656498e-04, -6.563280972121647181e-04, -6.572751063313380738e-04, -6.582209924380794672e-04, -6.591657540608919291e-04, -6.601093897302598695e-04, -6.610518979784925191e-04, -6.619932773399294940e-04, -6.629335263506749495e-04, -6.638726435488883628e-04, -6.648106274746310102e-04, -6.657474766698451502e-04, -6.666831896784067161e-04, -6.676177650461864645e-04, -6.685512013209205223e-04, -6.694834970522861714e-04, -6.704146507919582281e-04, -6.713446610934909733e-04, -6.722735265124016356e-04, -6.732012456061309269e-04, -6.741278169341093952e-04, -6.750532390577372588e-04, -6.759775105402396648e-04, -6.769006299469220193e-04, -6.778225958450447616e-04, -6.787434068037050778e-04, -6.796630613941010129e-04, -6.805815581892915361e-04, -6.814988957643817232e-04, -6.824150726963884236e-04, -6.833300875642873149e-04, -6.842439389490926997e-04, -6.851566254337350999e-04, -6.860681456031079853e-04, -6.869784980441597140e-04, -6.878876813457469484e-04, -6.887956940987110914e-04, -6.897025348959411701e-04, -6.906082023322489358e-04, -6.915126950044367350e-04, -6.924160115113602845e-04, -6.933181504537827382e-04, -6.942191104345459907e-04, -6.951188900584316828e-04, -6.960174879322164956e-04, -6.969149026647426240e-04, -6.978111328667917918e-04, -6.987061771511563759e-04, -6.996000341326952428e-04, -7.004927024282148109e-04, -7.013841806565386571e-04, -7.022744674385619432e-04, -7.031635613971367075e-04, -7.040514611571338814e-04, -7.049381653455071483e-04, -7.058236725911504802e-04, -7.067079815250860292e-04, -7.075910907802187731e-04, -7.084729989916073488e-04, -7.093537047963417545e-04, -7.102332068334194252e-04, -7.111115037440040318e-04, -7.119885941712668625e-04, -7.128644767603845456e-04, -7.137391501585734193e-04, -7.146126130151546916e-04, -7.154848639814372383e-04, -7.163559017107947987e-04, -7.172257248586329063e-04, -7.180943320824707474e-04, -7.189617220418179945e-04, -7.198278933982465815e-04, -7.206928448154210605e-04, -7.215565749590893870e-04, -7.224190824969411052e-04, -7.232803660988724364e-04, -7.241404244367435255e-04, -7.249992561845650324e-04, -7.258568600183570776e-04, -7.267132346162133178e-04, -7.275683786583629631e-04, -7.284222908270483699e-04, -7.292749698065960568e-04, -7.301264142834679866e-04, -7.309766229461545561e-04, -7.318255944852272883e-04, -7.326733275934036674e-04, -7.335198209654328642e-04, -7.343650732981543911e-04, -7.352090832905599019e-04, -7.360518496436743632e-04, -7.368933710606247927e-04, -7.377336462466895905e-04, -7.385726739091753737e-04, -7.394104527575839437e-04, -7.402469815033907831e-04, -7.410822588602905200e-04, -7.419162835440685578e-04, -7.427490542725823184e-04, -7.435805697658053699e-04, -7.444108287458750224e-04, -7.452398299369950756e-04, -7.460675720654866673e-04, -7.468940538598446525e-04, -7.477192740506343870e-04, -7.485432313705629595e-04, -7.493659245544402690e-04, -7.501873523392477627e-04, -7.510075134641135000e-04, -7.518264066701860595e-04, -7.526440307008605947e-04, -7.534603843016458033e-04, -7.542754662201543855e-04, -7.550892752061579049e-04, -7.559018100115485160e-04, -7.567130693904182198e-04, -7.575230520989492504e-04, -7.583317568954738149e-04, -7.591391825405242920e-04, -7.599453277967284977e-04, -7.607501914288725695e-04, -7.615537722039291552e-04, -7.623560688910492817e-04, -7.631570802614300823e-04, -7.639568050885609104e-04, -7.647552421480138720e-04, -7.655523902175328382e-04, -7.663482480770757296e-04, -7.671428145087041441e-04, -7.679360882967124855e-04, -7.687280682275186763e-04, -7.695187530897115366e-04, -7.703081416741108496e-04, -7.710962327736574232e-04, -7.718830251834735883e-04, -7.726685177009165418e-04, -7.734527091254683002e-04, -7.742355982587985829e-04, -7.750171839048166375e-04, -7.757974648695698666e-04, -7.765764399612871960e-04, -7.773541079904501983e-04, -7.781304677696598447e-04, -7.789055181137984844e-04, -7.796792578398300264e-04, -7.804516857670132021e-04, -7.812228007167995418e-04, -7.819926015127975959e-04, -7.827610869808318073e-04, -7.835282559489730857e-04, -7.842941072474595527e-04, -7.850586397087450053e-04, -7.858218521674874236e-04, -7.865837434606027471e-04, -7.873443124271751027e-04, -7.881035579085012574e-04, -7.888614787481334437e-04, -7.896180737918596275e-04, -7.903733418875878236e-04, -7.911272818855541542e-04, -7.918798926382139948e-04, -7.926311730001566478e-04, -7.933811218283113404e-04, -7.941297379817585742e-04, -7.948770203218728054e-04, -7.956229677122198798e-04, -7.963675790185970396e-04, -7.971108531090858327e-04, -7.978527888539638582e-04, -7.985933851257453163e-04, -7.993326407992404218e-04, -8.000705547514470927e-04, -8.008071258616164360e-04, -8.015423530112936222e-04, -8.022762350842241015e-04, -8.030087709664040195e-04, -8.037399595461342102e-04, -8.044697997138991995e-04, -8.051982903625083676e-04, -8.059254303869829760e-04, -8.066512186845951980e-04, -8.073756541549353396e-04, -8.080987356998037448e-04, -8.088204622232657640e-04, -8.095408326317009772e-04, -8.102598458337117960e-04, -8.109775007401624942e-04, -8.116937962642440437e-04, -8.124087313213682960e-04, -8.131223048292366123e-04, -8.138345157078112407e-04, -8.145453628793838377e-04, -8.152548452684695414e-04, -8.159629618018708315e-04, -8.166697114086992129e-04, -8.173750930203704454e-04, -8.180791055704894014e-04, -8.187817479950404518e-04, -8.194830192322841416e-04, -8.201829182227368068e-04, -8.208814439092291214e-04, -8.215785952368579587e-04, -8.222743711530749707e-04, -8.229687706075700365e-04, -8.236617925523433614e-04, -8.243534359417283540e-04, -8.250436997323247305e-04, -8.257325828830267044e-04, -8.264200843550736182e-04, -8.271062031120135147e-04, -8.277909381196201953e-04, -8.284742883460790523e-04, -8.291562527618102354e-04, -8.298368303396094900e-04, -8.305160200545393025e-04, -8.311938208839732452e-04, -8.318702318076571242e-04, -8.325452518075976329e-04, -8.332188798681306558e-04, -8.338911149759549880e-04, -8.345619561200464656e-04, -8.352314022917057797e-04, -8.358994524846083494e-04, -8.365661056947062014e-04, -8.372313609202829392e-04, -8.378952171619964608e-04, -8.385576734227953664e-04, -8.392187287079563634e-04, -8.398783820251415127e-04, -8.405366323842816765e-04, -8.411934787977283067e-04, -8.418489202800608908e-04, -8.425029558482932755e-04, -8.431555845217684987e-04, -8.438068053221376482e-04, -8.444566172733994347e-04, -8.451050194019442104e-04, -8.457520107364695098e-04, -8.463975903080277544e-04, -8.470417571500158446e-04, -8.476845102982244907e-04, -8.483258487907520190e-04, -8.489657716680558712e-04, -8.496042779729767822e-04, -8.502413667507275046e-04, -8.508770370487914354e-04, -8.515112879171096412e-04, -8.521441184079586685e-04, -8.527755275759534709e-04, -8.534055144780924038e-04, -8.540340781737220961e-04, -8.546612177246042368e-04, -8.552869321948195153e-04, -8.559112206508238908e-04, -8.565340821614891419e-04, -8.571555157980163472e-04, -8.577755206339804459e-04, -8.583940957453752322e-04, -8.590112402105303056e-04, -8.596269531101549807e-04, -8.602412335273769937e-04, -8.608540805476679091e-04, -8.614654932588796570e-04, -8.620754707512912627e-04, -8.626840121175115934e-04, -8.632911164525933082e-04, -8.638967828539299669e-04, -8.645010104213119752e-04, -8.651037982569574842e-04, -8.657051454654369300e-04, -8.663050511537152094e-04, -8.669035144311916866e-04, -8.675005344096200707e-04, -8.680961102031535190e-04, -8.686902409283839928e-04, -8.692829257042633279e-04, -8.698741636521566860e-04, -8.704639538958175091e-04, -8.710522955614333814e-04, -8.716391877776088993e-04, -8.722246296752753569e-04, -8.728086203878490396e-04, -8.733911590511464398e-04, -8.739722448033617050e-04, -8.745518767851075126e-04, -8.751300541394444518e-04, -8.757067760118091406e-04, -8.762820415500648585e-04, -8.768558499044787780e-04, -8.774282002277794274e-04, -8.779990916750683282e-04, -8.785685234038698686e-04, -8.791364945741730452e-04, -8.797030043483424497e-04, -8.802680518911754071e-04, -8.808316363699262609e-04, -8.813937569542377439e-04, -8.819544128161843459e-04, -8.825136031303079838e-04, -8.830713270735229175e-04, -8.836275838252279644e-04, -8.841823725672203057e-04, -8.847356924837262776e-04, -8.852875427614466906e-04, -8.858379225894808277e-04, -8.863868311593634149e-04, -8.869342676651047370e-04, -8.874802313031192975e-04, -8.880247212722593196e-04, -8.885677367738591993e-04, -8.891092770116565749e-04, -8.896493411918336355e-04, -8.901879285230563689e-04, -8.907250382163841391e-04, -8.912606694853885151e-04, -8.917948215460012656e-04, -8.923274936166812176e-04, -8.928586849183338088e-04, -8.933883946742470113e-04, -8.939166221102289164e-04, -8.944433664545386716e-04, -8.949686269378573150e-04, -8.954924027933285416e-04, -8.960146932565872177e-04, -8.965354975656925941e-04, -8.970548149611724332e-04, -8.975726446860038182e-04, -8.980889859856659545e-04, -8.986038381080597211e-04, -8.991172003035541836e-04, -8.996290718250042661e-04, -9.001394519277456556e-04, -9.006483398695080663e-04, -9.011557349105583535e-04, -9.016616363136289568e-04, -9.021660433438902530e-04, -9.026689552690033563e-04, -9.031703713590813042e-04, -9.036702908867567116e-04, -9.041687131270897222e-04, -9.046656373576308918e-04, -9.051610628584243331e-04, -9.056549889119737797e-04, -9.061474148032531029e-04, -9.066383398197484875e-04, -9.071277632513993425e-04, -9.076156843906219365e-04, -9.081021025323548265e-04, -9.085870169739631219e-04, -9.090704270153579644e-04, -9.095523319588889747e-04, -9.100327311093971616e-04, -9.105116237742500503e-04, -9.109890092632639451e-04, -9.114648868887487067e-04, -9.119392559655316050e-04, -9.124121158109046266e-04, -9.128834657446528809e-04, -9.133533050890844159e-04, -9.138216331689716712e-04, -9.142884493115790165e-04, -9.147537528467034095e-04, -9.152175431066053319e-04, -9.156798194260512905e-04, -9.161405811423062274e-04, -9.165998275951444708e-04, -9.170575581268554811e-04, -9.175137720821753291e-04, -9.179684688083939240e-04, -9.184216476553055735e-04, -9.188733079751796023e-04, -9.193234491227985153e-04, -9.197720704554744782e-04, -9.202191713330020459e-04, -9.206647511176920982e-04, -9.211088091743592629e-04, -9.215513448703532493e-04, -9.219923575755021444e-04, -9.224318466621529624e-04, -9.228698115051818356e-04, -9.233062514819897863e-04, -9.237411659724310614e-04, -9.241745543589452959e-04, -9.246064160264383597e-04, -9.250367503623768998e-04, -9.254655567567055072e-04, -9.258928346019017945e-04, -9.263185832929823589e-04, -9.267428022274572458e-04, -9.271654908053579211e-04, -9.275866484292667616e-04, -9.280062745042640376e-04, -9.284243684379466692e-04, -9.288409296404697519e-04, -9.292559575244828049e-04, -9.296694515051663089e-04, -9.300814110002493789e-04, -9.304918354299631430e-04, -9.309007242170690404e-04, -9.313080767868848423e-04, -9.317138925672218764e-04, -9.321181709884679683e-04, -9.325209114834765280e-04, -9.329221134876887391e-04, -9.333217764390766384e-04, -9.337198997781173118e-04, -9.341164829478344192e-04, -9.345115253937996041e-04, -9.349050265641093999e-04, -9.352969859093857724e-04, -9.356874028828224147e-04, -9.360762769401186111e-04, -9.364636075395280264e-04, -9.368493941418324679e-04, -9.372336362103719180e-04, -9.376163332110349930e-04, -9.379974846122059260e-04, -9.383770898848558563e-04, -9.387551485025077014e-04, -9.391316599411702378e-04, -9.395066236794599648e-04, -9.398800391985002740e-04, -9.402519059819871520e-04, -9.406222235161438606e-04, -9.409909912897396938e-04, -9.413582087941176242e-04, -9.417238755231460571e-04, -9.420879909732385619e-04, -9.424505546433926875e-04, -9.428115660351233914e-04, -9.431710246525023969e-04, -9.435289300021784675e-04, -9.438852815933253650e-04, -9.442400789376778451e-04, -9.445933215495381629e-04, -9.449450089457415948e-04, -9.452951406457072879e-04, -9.456437161713867603e-04, -9.459907350472872116e-04, -9.463361968005007960e-04, -9.466801009606522557e-04, -9.470224470599220143e-04, -9.473632346330771847e-04, -9.477024632174224552e-04, -9.480401323528171113e-04, -9.483762415817158014e-04, -9.487107904490986064e-04, -9.490437785025186354e-04, -9.493752052921087484e-04, -9.497050703705341764e-04, -9.500333732930708007e-04, -9.503601136174998770e-04, -9.506852909042094084e-04, -9.510089047161610770e-04, -9.513309546188338656e-04, -9.516514401803185998e-04, -9.519703609712668827e-04, -9.522877165648852395e-04, -9.526035065369444421e-04, -9.529177304658108423e-04, -9.532303879323975829e-04, -9.535414785201960395e-04, -9.538510018152539195e-04, -9.541589574062229670e-04, -9.544653448842974888e-04, -9.547701638432481812e-04, -9.550734138794280932e-04, -9.553750945917758794e-04, -9.556752055817585535e-04, -9.559737464534691755e-04, -9.562707168135362121e-04, -9.565661162711949859e-04, -9.568599444382361752e-04, -9.571522009290235958e-04, -9.574428853605214135e-04, -9.577319973522507770e-04, -9.580195365263057547e-04, -9.583055025073836932e-04, -9.585898949227401140e-04, -9.588727134022062776e-04, -9.591539575782184572e-04, -9.594336270857665473e-04, -9.597117215624240963e-04, -9.599882406483629428e-04, -9.602631839863170040e-04, -9.605365512216204387e-04, -9.608083420021708938e-04, -9.610785559784555242e-04, -9.613471928035603178e-04, -9.616142521331153426e-04, -9.618797336253717255e-04, -9.621436369411612115e-04, -9.624059617438817434e-04, -9.626667076995208813e-04, -9.629258744766693544e-04, -9.631834617464843070e-04, -9.634394691827076213e-04, -9.636938964616893364e-04, -9.639467432623466652e-04, -9.641980092661901237e-04, -9.644476941573111714e-04, -9.646957976224005337e-04, -9.649423193507476607e-04, -9.651872590341907445e-04, -9.654306163671904457e-04, -9.656723910468009448e-04, -9.659125827726443552e-04, -9.661511912469406471e-04, -9.663882161744984317e-04, -9.666236572627282973e-04, -9.668575142216250277e-04, -9.670897867637626155e-04, -9.673204746043319920e-04, -9.675495774610960329e-04, -9.677770950544088572e-04, -9.680030271072323066e-04, -9.682273733451203339e-04, -9.684501334961980769e-04, -9.686713072912085882e-04, -9.688908944634769477e-04, -9.691088947489176356e-04, -9.693253078860633717e-04, -9.695401336160074362e-04, -9.697533716824654690e-04, -9.699650218317388238e-04, -9.701750838127137008e-04, -9.703835573768931303e-04, -9.705904422783587010e-04, -9.707957382737928938e-04, -9.709994451224833109e-04, -9.712015625863037018e-04, -9.714020904297216612e-04, -9.716010284198165186e-04, -9.717983763262549434e-04, -9.719941339212976672e-04, -9.721883009798183489e-04, -9.723808772792671452e-04, -9.725718625997223192e-04, -9.727612567238192245e-04, -9.729490594368254410e-04, -9.731352705266069474e-04, -9.733198897836068710e-04, -9.735029170008784472e-04, -9.736843519740858875e-04, -9.738641945014766231e-04, -9.740424443839027727e-04, -9.742191014248121434e-04, -9.743941654302720832e-04, -9.745676362089264379e-04, -9.747395135720233073e-04, -9.749097973334281634e-04, -9.750784873096014077e-04, -9.752455833195788557e-04, -9.754110851850307171e-04, -9.755749927302202881e-04, -9.757373057819937598e-04, -9.758980241698194660e-04, -9.760571477257567671e-04, -9.762146762844754570e-04, -9.763706096832392833e-04, -9.765249477619091997e-04, -9.766776903629636412e-04, -9.768288373314729361e-04, -9.769783885151045108e-04, -9.771263437641458747e-04, -9.772727029314697087e-04, -9.774174658725520801e-04, -9.775606324454878381e-04, -9.777022025109572204e-04, -9.778421759322475371e-04, -9.779805525752553394e-04, -9.781173323084723249e-04, -9.782525150030022508e-04, -9.783861005325403346e-04, -9.785180887733869147e-04, -9.786484796044576419e-04, -9.787772729072607113e-04, -9.789044685659031506e-04, -9.790300664671064326e-04, -9.791540665001912964e-04, -9.792764685570734106e-04, -9.793972725322867921e-04, -9.795164783229595197e-04, -9.796340858288213240e-04, -9.797500949522072733e-04, -9.798645055980601589e-04, -9.799773176739242069e-04, -9.800885310899364045e-04, -9.801981457588562069e-04, -9.803061615960379990e-04, -9.804125785194282763e-04, -9.805173964495871117e-04, -9.806206153096862048e-04, -9.807222350254832938e-04, -9.808222555253542484e-04, -9.809206767402598934e-04, -9.810174986037880750e-04, -9.811127210521085589e-04, -9.812063440240064230e-04, -9.812983674608664452e-04, -9.813887913066739709e-04, -9.814776155080194662e-04, -9.815648400140946153e-04, -9.816504647767029454e-04, -9.817344897502322879e-04, -9.818169148916914245e-04, -9.818977401606745255e-04, -9.819769655193988801e-04, -9.820545909326658645e-04, -9.821306163678837110e-04, -9.822050417950714107e-04, -9.822778671868413660e-04, -9.823490925184056796e-04, -9.824187177675876466e-04, -9.824867429148054915e-04, -9.825531679430784399e-04, -9.826179928380325730e-04, -9.826812175878906364e-04, -9.827428421834794123e-04, -9.828028666182229978e-04, -9.828612908881519117e-04, -9.829181149918890005e-04, -9.829733389306700379e-04, -9.830269627083142343e-04, -9.830789863312639192e-04, -9.831294098085383536e-04, -9.831782331517684246e-04, -9.832254563751881889e-04, -9.832710794956231633e-04, -9.833151025325033347e-04, -9.833575255078547041e-04, -9.833983484463040565e-04, -9.834375713750763588e-04, -9.834751943239990971e-04, -9.835112173254923016e-04, -9.835456404145767866e-04, -9.835784636288721992e-04, -9.836096870085920315e-04, -9.836393105965601010e-04, -9.836673344381814937e-04, -9.836937585814629469e-04, -9.837185830770150182e-04, -9.837418079780414597e-04, -9.837634333403385677e-04, -9.837834592223010377e-04, -9.838018856849223975e-04, -9.838187127917889362e-04, -9.838339406090851249e-04, -9.838475692055894967e-04, -9.838595986526711776e-04, -9.838700290243007282e-04, -9.838788603970397353e-04, -9.838860928500423302e-04, -9.838917264650612598e-04, -9.838957613264383457e-04, -9.838981975211127246e-04, -9.838990351386123906e-04, -9.838982742710628698e-04, -9.838959150131750767e-04, -9.838919574622585415e-04, -9.838864017182112186e-04, -9.838792478835268595e-04, -9.838704960632809176e-04, -9.838601463651528833e-04, -9.838481988994011301e-04, -9.838346537788798286e-04, -9.838195111190324409e-04, -9.838027710378880342e-04, -9.837844336560753761e-04, -9.837644990967984310e-04, -9.837429674858569600e-04, -9.837198389516415339e-04, -9.836951136251250762e-04, -9.836687916398711030e-04, -9.836408731320224474e-04, -9.836113582403235942e-04, -9.835802471060929239e-04, -9.835475398732361572e-04, -9.835132366882504747e-04, -9.834773377002123743e-04, -9.834398430607848261e-04, -9.834007529242157555e-04, -9.833600674473371751e-04, -9.833177867895638840e-04, -9.832739111128949855e-04, -9.832284405819099841e-04, -9.831813753637718215e-04, -9.831327156282277432e-04, -9.830824615475993247e-04, -9.830306132967996015e-04, -9.829771710533092167e-04, -9.829221349972074289e-04, -9.828655053111309131e-04, -9.828072821803121410e-04, -9.827474657925533603e-04, -9.826860563382424241e-04, -9.826230540103393467e-04, -9.825584590043834592e-04, -9.824922715184890732e-04, -9.824244917533524191e-04, -9.823551199122384191e-04, -9.822841562009919630e-04, -9.822116008280340049e-04, -9.821374540043576601e-04, -9.820617159435292894e-04, -9.819843868616908843e-04, -9.819054669775559470e-04, -9.818249565124103576e-04, -9.817428556901121577e-04, -9.816591647370956700e-04, -9.815738838823604394e-04, -9.814870133574725344e-04, -9.813985533965805929e-04, -9.813085042363939216e-04, -9.812168661161898685e-04, -9.811236392778157744e-04, -9.810288239656922253e-04, -9.809324204267972237e-04, -9.808344289106831013e-04, -9.807348496694632926e-04, -9.806336829578242605e-04, -9.805309290330079322e-04, -9.804265881548251439e-04, -9.803206605856560740e-04, -9.802131465904328957e-04, -9.801040464366540892e-04, -9.799933603943896451e-04, -9.798810887362621996e-04, -9.797672317374533230e-04, -9.796517896757082899e-04, -9.795347628313349955e-04, -9.794161514872035210e-04, -9.792959559287231497e-04, -9.791741764438859508e-04, -9.790508133232266649e-04, -9.789258668598402671e-04, -9.787993373493767638e-04, -9.786712250900437941e-04, -9.785415303826001249e-04, -9.784102535303625895e-04, -9.782773948392034860e-04, -9.781429546175347475e-04, -9.780069331763415526e-04, -9.778693308291396078e-04, -9.777301478920083239e-04, -9.775893846835797575e-04, -9.774470415250221308e-04, -9.773031187400610820e-04, -9.771576166549733773e-04, -9.770105355985791041e-04, -9.768618759022427555e-04, -9.767116378998810366e-04, -9.765598219279502876e-04, -9.764064283254526638e-04, -9.762514574339449178e-04, -9.760949095975071741e-04, -9.759367851627795756e-04, -9.757770844789355035e-04, -9.756158078976976235e-04, -9.754529557733185871e-04, -9.752885284625901390e-04, -9.751225263248612229e-04, -9.749549497220025285e-04, -9.747857990184192849e-04, -9.746150745810649215e-04, -9.744427767794278409e-04, -9.742689059855261062e-04, -9.740934625739114524e-04, -9.739164469216794783e-04, -9.737378594084511061e-04, -9.735577004163754010e-04, -9.733759703301438819e-04, -9.731926695369769696e-04, -9.730077984266127106e-04, -9.728213573913235823e-04, -9.726333468259296122e-04, -9.724437671277516484e-04, -9.722526186966542940e-04, -9.720599019350154415e-04, -9.718656172477496908e-04, -9.716697650422951226e-04, -9.714723457286015889e-04, -9.712733597191549988e-04, -9.710728074289637661e-04, -9.708706892755433054e-04, -9.706670056789415109e-04, -9.704617570617281308e-04, -9.702549438489753604e-04, -9.700465664682892840e-04, -9.698366253497906842e-04, -9.696251209261082119e-04, -9.694120536323923721e-04, -9.691974239063131389e-04, -9.689812321880364281e-04, -9.687634789202648634e-04, -9.685441645481848673e-04, -9.683232895195239068e-04, -9.681008542844992109e-04, -9.678768592958411892e-04, -9.676513050087907214e-04, -9.674241918811007836e-04, -9.671955203730179087e-04, -9.669652909473067971e-04, -9.667335040692368736e-04, -9.665001602065686256e-04, -9.662652598295799495e-04, -9.660288034110411058e-04, -9.657907914262345598e-04, -9.655512243529305871e-04, -9.653101026713930199e-04, -9.650674268644156761e-04, -9.648231974172583915e-04, -9.645774148176824731e-04, -9.643300795559634929e-04, -9.640811921248494372e-04, -9.638307530195963776e-04, -9.635787627379446179e-04, -9.633252217801269342e-04, -9.630701306488829950e-04, -9.628134898494130657e-04, -9.625552998894283153e-04, -9.622955612791282655e-04, -9.620342745311805154e-04, -9.617714401607596652e-04, -9.615070586855183673e-04, -9.612411306255828815e-04, -9.609736565035746506e-04, -9.607046368446030358e-04, -9.604340721762328996e-04, -9.601619630285409841e-04, -9.598883099340514008e-04, -9.596131134277934190e-04, -9.593363740472639518e-04, -9.590580923324240874e-04, -9.587782688257241335e-04, -9.584969040720896314e-04, -9.582139986189019487e-04, -9.579295530160330824e-04, -9.576435678158224567e-04, -9.573560435730669484e-04, -9.570669808450384510e-04, -9.567763801914915727e-04, -9.564842421746214607e-04, -9.561905673591135661e-04, -9.558953563120840130e-04, -9.555986096031634071e-04, -9.553003278044025102e-04, -9.550005114903139820e-04, -9.546991612379075081e-04, -9.543962776266163997e-04, -9.540918612383371671e-04, -9.537859126574321214e-04, -9.534784324707281820e-04, -9.531694212674815319e-04, -9.528588796394213108e-04, -9.525468081807228352e-04, -9.522332074880226691e-04, -9.519180781603863144e-04, -9.516014207993456165e-04, -9.512832360088847774e-04, -9.509635243954187803e-04, -9.506422865678043404e-04, -9.503195231373787188e-04, -9.499952347178794920e-04, -9.496694219255193614e-04, -9.493420853789241373e-04, -9.490132256991815280e-04, -9.486828435098212985e-04, -9.483509394367804681e-04, -9.480175141084670612e-04, -9.476825681557134867e-04, -9.473461022117684064e-04, -9.470081169123399948e-04, -9.466686128955602688e-04, -9.463275908019769559e-04, -9.459850512745882978e-04, -9.456409949588160530e-04, -9.452954225024886919e-04, -9.449483345558994021e-04, -9.445997317717253145e-04, -9.442496148050928814e-04, -9.438979843135522890e-04, -9.435448409570439555e-04, -9.431901853979837496e-04, -9.428340183011564134e-04, -9.424763403337751934e-04, -9.421171521654824908e-04, -9.417564544683386949e-04, -9.413942479167923668e-04, -9.410305331877298965e-04, -9.406653109604479635e-04, -9.402985819166304439e-04, -9.399303467403931876e-04, -9.395606061182514923e-04, -9.391893607391370172e-04, -9.388166112943700271e-04, -9.384423584776636212e-04, -9.380666029851843397e-04, -9.376893455154512247e-04, -9.373105867693924155e-04, -9.369303274503508949e-04, -9.365485682640584683e-04, -9.361653099186470397e-04, -9.357805531246284449e-04, -9.353942985949225330e-04, -9.350065470448503356e-04, -9.346172991920937345e-04, -9.342265557567502139e-04, -9.338343174613054302e-04, -9.334405850306162983e-04, -9.330453591919183644e-04, -9.326486406748794736e-04, -9.322504302114938439e-04, -9.318507285361669586e-04, -9.314495363856897629e-04, -9.310468544992071133e-04, -9.306426836182704696e-04, -9.302370244867772886e-04, -9.298298778510252337e-04, -9.294212444596903827e-04, -9.290111250637827752e-04, -9.285995204167210061e-04, -9.281864312742909174e-04, -9.277718583946194687e-04, -9.273558025382266706e-04, -9.269382644679945767e-04, -9.265192449491489604e-04, -9.260987447493026830e-04, -9.256767646384279381e-04, -9.252533053888340256e-04, -9.248283677752203689e-04, -9.244019525746033318e-04, -9.239740605664135790e-04, -9.235446925323870064e-04, -9.231138492566150471e-04, -9.226815315255667898e-04, -9.222477401280533083e-04, -9.218124758552134583e-04, -9.213757395005588722e-04, -9.209375318599341683e-04, -9.204978537315448156e-04, -9.200567059159062838e-04, -9.196140892159067109e-04, -9.191700044367693894e-04, -9.187244523860424667e-04, -9.182774338736013299e-04, -9.178289497117130078e-04, -9.173790007149200528e-04, -9.169275877001015814e-04, -9.164747114865211958e-04, -9.160203728957127091e-04, -9.155645727515762059e-04, -9.151073118803100623e-04, -9.146485911104600608e-04, -9.141884112728974887e-04, -9.137267732007944192e-04, -9.132636777296606820e-04, -9.127991256973337804e-04, -9.123331179439407275e-04, -9.118656553119491122e-04, -9.113967386461480167e-04, -9.109263687936035650e-04, -9.104545466037288533e-04, -9.099812729282457865e-04, -9.095065486211569971e-04, -9.090303745388090542e-04, -9.085527515398166779e-04, -9.080736804851283336e-04, -9.075931622380007530e-04, -9.071111976639518798e-04, -9.066277876308355714e-04, -9.061429330088046274e-04, -9.056566346702751196e-04, -9.051688934899936121e-04, -9.046797103449965042e-04, -9.041890861145802146e-04, -9.036970216803641735e-04, -9.032035179262486472e-04, -9.027085757384330613e-04, -9.022121960053748006e-04, -9.017143796178075325e-04, -9.012151274688127642e-04, -9.007144404536914731e-04, -9.002123194700204856e-04, -8.997087654177156855e-04, -8.992037791989141620e-04, -8.986973617180293947e-04, -8.981895138817747818e-04, -8.976802365991187532e-04, -8.971695307813210918e-04, -8.966573973418657129e-04, -8.961438371965413287e-04, -8.956288512634018751e-04, -8.951124404627288896e-04, -8.945946057171039363e-04, -8.940753479513618767e-04, -8.935546680925803530e-04, -8.930325670700755593e-04, -8.925090458154938573e-04, -8.919841052626499046e-04, -8.914577463476723715e-04, -8.909299700088930268e-04, -8.904007771869207897e-04, -8.898701688246175509e-04, -8.893381458670562151e-04, -8.888047092615855354e-04, -8.882698599577953111e-04, -8.877335989074844032e-04, -8.871959270647219922e-04, -8.866568453858163527e-04, -8.861163548292723532e-04, -8.855744563558681087e-04, -8.850311509286104203e-04, -8.844864395127019236e-04, -8.839403230756096106e-04, -8.833928025870254729e-04, -8.828438790188318074e-04, -8.822935533451852419e-04, -8.817418265423970390e-04, -8.811886995890884627e-04, -8.806341734660254371e-04, -8.800782491561968263e-04, -8.795209276448412135e-04, -8.789622099193996306e-04, -8.784020969694983187e-04, -8.778405897869949156e-04, -8.772776893659580723e-04, -8.767133967026639841e-04, -8.761477127955616959e-04, -8.755806386453394551e-04, -8.750121752548821030e-04, -8.744423236292554616e-04, -8.738710847757028650e-04, -8.732984597037421947e-04, -8.727244494250084540e-04, -8.721490549533453826e-04, -8.715722773048039393e-04, -8.709941174976162806e-04, -8.704145765522152767e-04, -8.698336554911775906e-04, -8.692513553392998979e-04, -8.686676771235620235e-04, -8.680826218730867180e-04, -8.674961906192081790e-04, -8.669083843954398507e-04, -8.663192042374297545e-04, -8.657286511830386598e-04, -8.651367262722927049e-04, -8.645434305473496776e-04, -8.639487650525792470e-04, -8.633527308345088610e-04, -8.627553289417905702e-04, -8.621565604252909082e-04, -8.615564263379862659e-04, -8.609549277350473512e-04, -8.603520656737995067e-04, -8.597478412136853052e-04, -8.591422554163366488e-04, -8.585353093455377980e-04, -8.579270040671784251e-04, -8.573173406493394839e-04, -8.567063201622386734e-04, -8.560939436782058270e-04, -8.554802122717462300e-04, -8.548651270194899867e-04, -8.542486890002215115e-04, -8.536308992948314980e-04, -8.530117589863300386e-04, -8.523912691599401905e-04, -8.517694309029341529e-04, -8.511462453047257499e-04, -8.505217134568796456e-04, -8.498958364530861910e-04, -8.492686153891170799e-04, -8.486400513629044958e-04, -8.480101454744824567e-04, -8.473788988260224850e-04, -8.467463125217599904e-04, -8.461123876680893543e-04, -8.454771253735174179e-04, -8.448405267486283534e-04, -8.442025929060968919e-04, -8.435633249607929485e-04, -8.429227240295846229e-04, -8.422807912315035403e-04, -8.416375276876728604e-04, -8.409929345212795214e-04, -8.403470128576524117e-04, -8.396997638241612133e-04, -8.390511885503134379e-04, -8.384012881676973982e-04, -8.377500638099517416e-04, -8.370975166128442717e-04, -8.364436477142203402e-04, -8.357884582539694537e-04, -8.351319493740980236e-04, -8.344741222186929366e-04, -8.338149779338763440e-04, -8.331545176678794955e-04, -8.324927425710098878e-04, -8.318296537956036685e-04, -8.311652524961168171e-04, -8.304995398290027390e-04, -8.298325169528725101e-04, -8.291641850283204291e-04, -8.284945452180107533e-04, -8.278235986866938536e-04, -8.271513466011746639e-04, -8.264777901302709394e-04, -8.258029304448927287e-04, -8.251267687180000900e-04, -8.244493061245582047e-04, -8.237705438416192353e-04, -8.230904830482643200e-04, -8.224091249256304612e-04, -8.217264706568527376e-04, -8.210425214271416076e-04, -8.203572784237482150e-04, -8.196707428359242733e-04, -8.189829158549370280e-04, -8.182937986741756166e-04, -8.176033924889603574e-04, -8.169116984966585428e-04, -8.162187178966853057e-04, -8.155244518904604693e-04, -8.148289016814431324e-04, -8.141320684750579439e-04, -8.134339534787927897e-04, -8.127345579021463167e-04, -8.120338829565823969e-04, -8.113319298556191401e-04, -8.106286998147814058e-04, -8.099241940515471356e-04, -8.092184137854488337e-04, -8.085113602380152378e-04, -8.078030346327296852e-04, -8.070934381951286665e-04, -8.063825721526809379e-04, -8.056704377348984343e-04, -8.049570361732736028e-04, -8.042423687012477439e-04, -8.035264365542872309e-04, -8.028092409698478395e-04, -8.020907831873126236e-04, -8.013710644480938295e-04, -8.006500859955823727e-04, -7.999278490750911337e-04, -7.992043549339564396e-04, -7.984796048214838540e-04, -7.977535999888979781e-04, -7.970263416894358011e-04, -7.962978311782876106e-04, -7.955680697126154242e-04, -7.948370585515129828e-04, -7.941047989560090026e-04, -7.933712921891908831e-04, -7.926365395159964316e-04, -7.919005422033350769e-04, -7.911633015200932907e-04, -7.904248187371040128e-04, -7.896850951270998134e-04, -7.889441319647986540e-04, -7.882019305268456654e-04, -7.874584920918366749e-04, -7.867138179402578162e-04, -7.859679093545754100e-04, -7.852207676191840305e-04, -7.844723940203788583e-04, -7.837227898463652214e-04, -7.829719563873662564e-04, -7.822198949354170188e-04, -7.814666067845532421e-04, -7.807120932306616098e-04, -7.799563555715953314e-04, -7.791993951071209080e-04, -7.784412131388645725e-04, -7.776818109704132292e-04, -7.769211899072591592e-04, -7.761593512567467861e-04, -7.753962963281800123e-04, -7.746320264327555402e-04, -7.738665428835182032e-04, -7.730998469954614713e-04, -7.723319400854698801e-04, -7.715628234722719759e-04, -7.707924984765295463e-04, -7.700209664207959860e-04, -7.692482286294559076e-04, -7.684742864288425599e-04, -7.676991411470854981e-04, -7.669227941143126788e-04, -7.661452466624214764e-04, -7.653665001251978373e-04, -7.645865558383356866e-04, -7.638054151393977890e-04, -7.630230793677602371e-04, -7.622395498647130656e-04, -7.614548279734091856e-04, -7.606689150388062709e-04, -7.598818124077751784e-04, -7.590935214290195007e-04, -7.583040434531171988e-04, -7.575133798324557672e-04, -7.567215319212563032e-04, -7.559285010756909258e-04, -7.551342886536645260e-04, -7.543388960149467141e-04, -7.535423245211756143e-04, -7.527445755358121117e-04, -7.519456504241618612e-04, -7.511455505533181504e-04, -7.503442772922485271e-04, -7.495418320117491545e-04, -7.487382160843889748e-04, -7.479334308846123831e-04, -7.471274777886801385e-04, -7.463203581746200325e-04, -7.455120734223296720e-04, -7.447026249135137036e-04, -7.438920140316390359e-04, -7.430802421620315507e-04, -7.422673106918250370e-04, -7.414532210098976565e-04, -7.406379745070054092e-04, -7.398215725756273091e-04, -7.390040166100967896e-04, -7.381853080065363263e-04, -7.373654481628069126e-04, -7.365444384786164807e-04, -7.357222803554524636e-04, -7.348989751965416799e-04, -7.340745244069357689e-04, -7.332489293934764960e-04, -7.324221915647204009e-04, -7.315943123310604448e-04, -7.307652931046528270e-04, -7.299351352993766525e-04, -7.291038403309488573e-04, -7.282714096167602772e-04, -7.274378445760898860e-04, -7.266031466298735354e-04, -7.257673172007955698e-04, -7.249303577134144855e-04, -7.240922695939287432e-04, -7.232530542703023181e-04, -7.224127131722889866e-04, -7.215712477313851632e-04, -7.207286593807776419e-04, -7.198849495554470292e-04, -7.190401196920956448e-04, -7.181941712291796138e-04, -7.173471056068322135e-04, -7.164989242669753296e-04, -7.156496286532580903e-04, -7.147992202110202203e-04, -7.139477003873052679e-04, -7.130950706309882158e-04, -7.122413323925368481e-04, -7.113864871242241454e-04, -7.105305362799667389e-04, -7.096734813154442810e-04, -7.088153236880494635e-04, -7.079560648568213391e-04, -7.070957062825627406e-04, -7.062342494277771806e-04, -7.053716957566095449e-04, -7.045080467349590673e-04, -7.036433038304183967e-04, -7.027774685122164600e-04, -7.019105422513267738e-04, -7.010425265204113911e-04, -7.001734227937562831e-04, -6.993032325474085988e-04, -6.984319572590170708e-04, -6.975595984079641793e-04, -6.966861574753090147e-04, -6.958116359436991322e-04, -6.949360352975934635e-04, -6.940593570229998312e-04, -6.931816026076054876e-04, -6.923027735408036768e-04, -6.914228713136427859e-04, -6.905418974187710508e-04, -6.896598533505515901e-04, -6.887767406049925822e-04, -6.878925606797004280e-04, -6.870073150739809068e-04, -6.861210052887672939e-04, -6.852336328266509348e-04, -6.843451991918282282e-04, -6.834557058901050705e-04, -6.825651544290459345e-04, -6.816735463177234179e-04, -6.807808830668637436e-04, -6.798871661888520723e-04, -6.789923971976806775e-04, -6.780965776089881939e-04, -6.771997089399610630e-04, -6.763017927094694924e-04, -6.754028304379981751e-04, -6.745028236475735395e-04, -6.736017738618998172e-04, -6.726996826062806543e-04, -6.717965514075888633e-04, -6.708923817942716262e-04, -6.699871752964991394e-04, -6.690809334458917195e-04, -6.681736577757658091e-04, -6.672653498209486864e-04, -6.663560111179136656e-04, -6.654456432047178632e-04, -6.645342476209460366e-04, -6.636218259078158601e-04, -6.627083796081276179e-04, -6.617939102661914543e-04, -6.608784194279550923e-04, -6.599619086409305420e-04, -6.590443794541418418e-04, -6.581258334182293586e-04, -6.572062720854064200e-04, -6.562856970093744208e-04, -6.553641097454568311e-04, -6.544415118505278548e-04, -6.535179048829575701e-04, -6.525932904027415991e-04, -6.516676699713178783e-04, -6.507410451518133142e-04, -6.498134175087750099e-04, -6.488847886083037300e-04, -6.479551600180773197e-04, -6.470245333073113480e-04, -6.460929100466826719e-04, -6.451602918084617085e-04, -6.442266801664225549e-04, -6.432920766958809353e-04, -6.423564829736114765e-04, -6.414199005779645845e-04, -6.404823310888119094e-04, -6.395437760874857387e-04, -6.386042371568142334e-04, -6.376637158812497978e-04, -6.367222138466299046e-04, -6.357797326402915864e-04, -6.348362738511885298e-04, -6.338918390696326012e-04, -6.329464298875273846e-04, -6.320000478981878779e-04, -6.310526946964747181e-04, -6.301043718787329231e-04, -6.291550810427313936e-04, -6.282048237877767543e-04, -6.272536017146577341e-04, -6.263014164255691638e-04, -6.253482695242426224e-04, -6.243941626158783492e-04, -6.234390973070748788e-04, -6.224830752059661932e-04, -6.215260979221395388e-04, -6.205681670665809998e-04, -6.196092842518129747e-04, -6.186494510917276432e-04, -6.176886692017313817e-04, -6.167269401986739648e-04, -6.157642657007903440e-04, -6.148006473278180666e-04, -6.138360867009348253e-04, -6.128705854426898291e-04, -6.119041451771300034e-04, -6.109367675297338544e-04, -6.099684541273422966e-04, -6.089992065982863722e-04, -6.080290265722993219e-04, -6.070579156805530141e-04, -6.060858755555958207e-04, -6.051129078313714814e-04, -6.041390141433585327e-04, -6.031641961283183391e-04, -6.021884554244155479e-04, -6.012117936713555662e-04, -6.002342125101064628e-04, -5.992557135830581293e-04, -5.982762985340424463e-04, -5.972959690082558712e-04, -5.963147266523109377e-04, -5.953325731141439906e-04, -5.943495100431319539e-04, -5.933655390900413737e-04, -5.923806619069476448e-04, -5.913948801473707531e-04, -5.904081954661994898e-04, -5.894206095196542631e-04, -5.884321239652967475e-04, -5.874427404621866602e-04, -5.864524606705926032e-04, -5.854612862522517308e-04, -5.844692188701676536e-04, -5.834762601887690577e-04, -5.824824118738292566e-04, -5.814876755924054761e-04, -5.804920530129697174e-04, -5.794955458053329712e-04, -5.784981556405785399e-04, -5.774998841911979956e-04, -5.765007331310096489e-04, -5.755007041351053142e-04, -5.744997988799653435e-04, -5.734980190433987789e-04, -5.724953663044675661e-04, -5.714918423436257666e-04, -5.704874488426408445e-04, -5.694821874845257953e-04, -5.684760599537025351e-04, -5.674690679357826751e-04, -5.664612131178424752e-04, -5.654524971881277244e-04, -5.644429218362060708e-04, -5.634324887529883804e-04, -5.624211996306808159e-04, -5.614090561627126282e-04, -5.603960600438712483e-04, -5.593822129702052514e-04, -5.583675166390701097e-04, -5.573519727490365777e-04, -5.563355830000199292e-04, -5.553183490932072069e-04, -5.543002727310153725e-04, -5.532813556171074613e-04, -5.522615994565481653e-04, -5.512410059555303971e-04, -5.502195768215295719e-04, -5.491973137633269185e-04, -5.481742184909303315e-04, -5.471502927156281487e-04, -5.461255381498881026e-04, -5.450999565074903528e-04, -5.440735495034629754e-04, -5.430463188540020575e-04, -5.420182662766109090e-04, -5.409893934900318656e-04, -5.399597022141645409e-04, -5.389291941702099159e-04, -5.378978710805963973e-04, -5.368657346689051152e-04, -5.358327866600053405e-04, -5.347990287799881315e-04, -5.337644627560880544e-04, -5.327290903168419110e-04, -5.316929131919081097e-04, -5.306559331122144433e-04, -5.296181518098984570e-04, -5.285795710182242908e-04, -5.275401924717243842e-04, -5.265000179061262928e-04, -5.254590490582792877e-04, -5.244172876662915074e-04, -5.233747354694577494e-04, -5.223313942081843353e-04, -5.212872656241289730e-04, -5.202423514601018772e-04, -5.191966534601133660e-04, -5.181501733692972077e-04, -5.171029129339337147e-04, -5.160548739016042417e-04, -5.150060580209211113e-04, -5.139564670416715960e-04, -5.129061027148499024e-04, -5.118549667926070804e-04, -5.108030610281713351e-04, -5.097503871759911410e-04, -5.086969469916360377e-04, -5.076427422318405399e-04, -5.065877746544095953e-04, -5.055320460183563864e-04, -5.044755580838241596e-04, -5.034183126120431824e-04, -5.023603113653458139e-04, -5.013015561073314117e-04, -5.002420486025555999e-04, -4.991817906167880922e-04, -4.981207839169134871e-04, -4.970590302708600364e-04, -4.959965314477597816e-04, -4.949332892177577339e-04, -4.938693053521732044e-04, -4.928045816234283543e-04, -4.917391198049704580e-04, -4.906729216714151263e-04, -4.896059889984711710e-04, -4.885383235628636264e-04, -4.874699271424748044e-04, -4.864008015162740923e-04, -4.853309484642373420e-04, -4.842603697674885757e-04, -4.831890672082300546e-04, -4.821170425696626443e-04, -4.810442976361512099e-04, -4.799708341930057696e-04, -4.788966540267678329e-04, -4.778217589248965236e-04, -4.767461506759284456e-04, -4.756698310695075529e-04, -4.745928018963238375e-04, -4.735150649480437241e-04, -4.724366220174550275e-04, -4.713574748983828189e-04, -4.702776253856209040e-04, -4.691970752750711433e-04, -4.681158263636465782e-04, -4.670338804493113843e-04, -4.659512393309857867e-04, -4.648679048086879818e-04, -4.637838786834554789e-04, -4.626991627572952267e-04, -4.616137588332093087e-04, -4.605276687153517191e-04, -4.594408942087434885e-04, -4.583534371194368864e-04, -4.572652992545328228e-04, -4.561764824221125974e-04, -4.550869884312748709e-04, -4.539968190920410686e-04, -4.529059762154987118e-04, -4.518144616137215121e-04, -4.507222770996944529e-04, -4.496294244874623255e-04, -4.485359055920436970e-04, -4.474417222293645578e-04, -4.463468762163939549e-04, -4.452513693710734104e-04, -4.441552035122383170e-04, -4.430583804597853928e-04, -4.419609020344736762e-04, -4.408627700580960464e-04, -4.397639863533994264e-04, -4.386645527440076963e-04, -4.375644710545713669e-04, -4.364637431106830668e-04, -4.353623707388069603e-04, -4.342603557664216998e-04, -4.331577000219394356e-04, -4.320544053346377284e-04, -4.309504735347936106e-04, -4.298459064536163114e-04, -4.287407059231622018e-04, -4.276348737764877747e-04, -4.265284118475407373e-04, -4.254213219712095050e-04, -4.243136059832466563e-04, -4.232052657202898041e-04, -4.220963030200309478e-04, -4.209867197209176673e-04, -4.198765176623239933e-04, -4.187656986845686219e-04, -4.176542646288677516e-04, -4.165422173372517627e-04, -4.154295586527155960e-04, -4.143162904191138017e-04, -4.132024144812101421e-04, -4.120879326845694967e-04, -4.109728468757123062e-04, -4.098571589020281081e-04, -4.087408706117278312e-04, -4.076239838538662933e-04, -4.065065004785108484e-04, -4.053884223364134158e-04, -4.042697512793105873e-04, -4.031504891596961616e-04, -4.020306378309835031e-04, -4.009101991474428757e-04, -3.997891749641098273e-04, -3.986675671369383335e-04, -3.975453775227260418e-04, -3.964226079790253128e-04, -3.952992603643032486e-04, -3.941753365378502941e-04, -3.930508383597180588e-04, -3.919257676908494744e-04, -3.908001263930116292e-04, -3.896739163287152655e-04, -3.885471393613614184e-04, -3.874197973551597751e-04, -3.862918921750577140e-04, -3.851634256869066754e-04, -3.840343997572339373e-04, -3.829048162535445650e-04, -3.817746770439876401e-04, -3.806439839975339612e-04, -3.795127389839885661e-04, -3.783809438739498573e-04, -3.772486005387228124e-04, -3.761157108504677355e-04, -3.749822766821247978e-04, -3.738482999073312039e-04, -3.727137824005748233e-04, -3.715787260370831142e-04, -3.704431326928774417e-04, -3.693070042446907871e-04, -3.681703425699880223e-04, -3.670331495471439360e-04, -3.658954270551334226e-04, -3.647571769737097255e-04, -3.636184011834203743e-04, -3.624791015655331344e-04, -3.613392800020814345e-04, -3.601989383757607174e-04, -3.590580785700762706e-04, -3.579167024692657601e-04, -3.567748119582193249e-04, -3.556324089226271367e-04, -3.544894952489038853e-04, -3.533460728241038314e-04, -3.522021435360770942e-04, -3.510577092733825361e-04, -3.499127719252171807e-04, -3.487673333815574303e-04, -3.476213955330842019e-04, -3.464749602711031840e-04, -3.453280294877174956e-04, -3.441806050756251035e-04, -3.430326889282884996e-04, -3.418842829398604328e-04, -3.407353890050996131e-04, -3.395860090195271068e-04, -3.384361448793380290e-04, -3.372857984813281427e-04, -3.361349717230421776e-04, -3.349836665026950633e-04, -3.338318847190887163e-04, -3.326796282717684361e-04, -3.315268990609339470e-04, -3.303736989873701712e-04, -3.292200299526157141e-04, -3.280658938587305198e-04, -3.269112926086037299e-04, -3.257562281056121606e-04, -3.246007022537747465e-04, -3.234447169579037873e-04, -3.222882741232904204e-04, -3.211313756558838942e-04, -3.199740234623129264e-04, -3.188162194498320905e-04, -3.176579655262400125e-04, -3.164992636000334364e-04, -3.153401155802978278e-04, -3.141805233767578438e-04, -3.130204888996704305e-04, -3.118600140599754188e-04, -3.106991007692181663e-04, -3.095377509394907941e-04, -3.083759664834572313e-04, -3.072137493145314581e-04, -3.060511013465356568e-04, -3.048880244940089385e-04, -3.037245206719732635e-04, -3.025605917961083236e-04, -3.013962397826726661e-04, -3.002314665484215653e-04, -2.990662740107600040e-04, -2.979006640876622793e-04, -2.967346386975900372e-04, -2.955681997596456873e-04, -2.944013491934909790e-04, -2.932340889192649818e-04, -2.920664208577387465e-04, -2.908983469302330689e-04, -2.897298690585370113e-04, -2.885609891650877182e-04, -2.873917091727570990e-04, -2.862220310050359257e-04, -2.850519565859453079e-04, -2.838814878399358618e-04, -2.827106266921653745e-04, -2.815393750681625387e-04, -2.803677348940025933e-04, -2.791957080963312302e-04, -2.780232966023094628e-04, -2.768505023395314972e-04, -2.756773272361792856e-04, -2.745037732209395305e-04, -2.733298422229235624e-04, -2.721555361718209164e-04, -2.709808569977905333e-04, -2.698058066315100361e-04, -2.686303870040954991e-04, -2.674546000471226441e-04, -2.662784476928086613e-04, -2.651019318736932908e-04, -2.639250545228191800e-04, -2.627478175737556817e-04, -2.615702229605177558e-04, -2.603922726176118854e-04, -2.592139684799330771e-04, -2.580353124829144816e-04, -2.568563065624473790e-04, -2.556769526548004060e-04, -2.544972526967711275e-04, -2.533172086256073232e-04, -2.521368223789481155e-04, -2.509560958948503701e-04, -2.497750311119657459e-04, -2.485936299691990088e-04, -2.474118944060181135e-04, -2.462298263622163838e-04, -2.450474277780916770e-04, -2.438647005943662342e-04, -2.426816467521010284e-04, -2.414982681928547084e-04, -2.403145668585989771e-04, -2.391305446916373303e-04, -2.379462036347582273e-04, -2.367615456311558360e-04, -2.355765726243451126e-04, -2.343912865583191736e-04, -2.332056893774627491e-04, -2.320197830264763162e-04, -2.308335694505251766e-04, -2.296470505951610957e-04, -2.284602284062368135e-04, -2.272731048300909824e-04, -2.260856818133053869e-04, -2.248979613030172215e-04, -2.237099452465765364e-04, -2.225216355917235863e-04, -2.213330342866158269e-04, -2.201441432797694221e-04, -2.189549645199776850e-04, -2.177654999564659563e-04, -2.165757515387833193e-04, -2.153857212168526361e-04, -2.141954109408597149e-04, -2.130048226614114409e-04, -2.118139583294506665e-04, -2.106228198962019739e-04, -2.094314093131939829e-04, -2.082397285324419573e-04, -2.070477795061260410e-04, -2.058555641867484672e-04, -2.046630845272887349e-04, -2.034703424808536015e-04, -2.022773400009961631e-04, -2.010840790414707168e-04, -1.998905615564167495e-04, -1.986967895002754274e-04, -1.975027648277082265e-04, -1.963084894937505373e-04, -1.951139654537312976e-04, -1.939191946631877480e-04, -1.927241790780238602e-04, -1.915289206544266911e-04, -1.903334213487821675e-04, -1.891376831178333251e-04, -1.879417079185968526e-04, -1.867454977082778998e-04, -1.855490544444569944e-04, -1.843523800848707081e-04, -1.831554765875964585e-04, -1.819583459109685108e-04, -1.807609900134957951e-04, -1.795634108540173810e-04, -1.783656103916206749e-04, -1.771675905855575291e-04, -1.759693533954009099e-04, -1.747709007809617116e-04, -1.735722347022062488e-04, -1.723733571194119480e-04, -1.711742699930850838e-04, -1.699749752838769425e-04, -1.687754749527680829e-04, -1.675757709608242279e-04, -1.663758652695133662e-04, -1.651757598403560707e-04, -1.639754566350824360e-04, -1.627749576157885565e-04, -1.615742647446132983e-04, -1.603733799839220174e-04, -1.591723052963294361e-04, -1.579710426446176506e-04, -1.567695939917850012e-04, -1.555679613009366220e-04, -1.543661465354419216e-04, -1.531641516588496624e-04, -1.519619786348076220e-04, -1.507596294272162780e-04, -1.495571060001469514e-04, -1.483544103177863766e-04, -1.471515443444574634e-04, -1.459485100448059704e-04, -1.447453093834483282e-04, -1.435419443252894194e-04, -1.423384168352781454e-04, -1.411347288785935294e-04, -1.399308824205584411e-04, -1.387268794265584171e-04, -1.375227218621975420e-04, -1.363184116932162119e-04, -1.351139508854059157e-04, -1.339093414047689656e-04, -1.327045852174328991e-04, -1.314996842895678085e-04, -1.302946405875438486e-04, -1.290894560778475906e-04, -1.278841327269985651e-04, -1.266786725017332788e-04, -1.254730773687880217e-04, -1.242673492950828560e-04, -1.230614902476387829e-04, -1.218555021934659212e-04, -1.206493870998571766e-04, -1.194431469340342228e-04, -1.182367836633335775e-04, -1.170302992552302383e-04, -1.158236956772801788e-04, -1.146169748970364728e-04, -1.134101388822073567e-04, -1.122031896005467119e-04, -1.109961290199026370e-04, -1.097889591081087292e-04, -1.085816818331401150e-04, -1.073742991630317688e-04, -1.061668130658199524e-04, -1.049592255095660269e-04, -1.037515384625427458e-04, -1.025437538929065275e-04, -1.013358737688840200e-04, -1.001279000587952206e-04, -9.891983473096922070e-05, -9.771167975379570496e-05, -9.650343709561270934e-05, -9.529510872486655448e-05, -9.408669661002707469e-05, -9.287820271950300945e-05, -9.166962902180185555e-05, -9.046097748544433700e-05, -8.925225007888181600e-05, -8.804344877065338026e-05, -8.683457552930263048e-05, -8.562563232329389862e-05, -8.441662112116964697e-05, -8.320754389146759443e-05, -8.199840260263576927e-05, -8.078919922321844982e-05, -7.957993572163781968e-05, -7.837061406637794330e-05, -7.716123622590220397e-05, -7.595180416856853276e-05, -7.474231986278800021e-05, -7.353278527694100748e-05, -7.232320237929296255e-05, -7.111357313815296673e-05, -6.990389952178921982e-05, -6.869418349834609217e-05, -6.748442703600171348e-05, -6.627463210285711311e-05, -6.506480066698710986e-05, -6.385493469635624558e-05, -6.264503615884258348e-05, -6.143510702242272717e-05, -6.022514925484616024e-05, -5.901516482381957419e-05, -5.780515569703129682e-05, -5.659512384209421581e-05, -5.538507122646139387e-05, -5.417499981758510768e-05, -5.296491158280495820e-05, -5.175480848939965488e-05, -5.054469250447526154e-05, -4.933456559512386255e-05, -4.812442972833995056e-05, -4.691428687096253005e-05, -4.570413898969957289e-05, -4.449398805131337629e-05, -4.328383602226656393e-05, -4.207368486901588451e-05, -4.086353655790095222e-05, -3.965339305506023463e-05, -3.844325632661663427e-05, -3.723312833845835774e-05, -3.602301105642487678e-05, -3.481290644622253664e-05, -3.360281647334071339e-05, -3.239274310321007356e-05, -3.118268830111874497e-05, -2.997265403212829107e-05, -2.876264226123210609e-05, -2.755265495327156896e-05, -2.634269407285164493e-05, -2.513276158449991095e-05, -2.392285945258202173e-05, -2.271298964121798230e-05, -2.150315411446754652e-05, -2.029335483608448606e-05, -1.908359376983678244e-05, -1.787387287915308222e-05, -1.666419412730819720e-05, -1.545455947744686545e-05, -1.424497089252676117e-05, -1.303543033523423361e-05, -1.182593976814304775e-05, -1.061650115363030280e-05, -9.407116453792323482e-06, -8.197787630603266937e-06, -6.988516645804147893e-06, -5.779305460953496296e-06, -4.570156037343366371e-06, -3.361070336023072186e-06, -2.152050317984833550e-06, -9.430979438369438027e-07, 2.657848260375545538e-07, 1.474596031322292368e-06, 2.683333712094302824e-06, 3.891995908638440227e-06, 5.100580661423607072e-06, 6.309086011186789875e-06, 7.517509998882344560e-06, 8.725850665792928549e-06, 9.934106053371037843e-06, 1.114227420332293782e-05, 1.235035315769275327e-05, 1.355834095870390893e-05, 1.476623564884311786e-05, 1.597403527094441221e-05, 1.718173786803067689e-05, 1.838934148339764648e-05, 1.959684416069772754e-05, 2.080424394375480002e-05, 2.201153887678282962e-05, 2.321872700420040488e-05, 2.442580637071463748e-05, 2.563277502140539119e-05, 2.683963100156664278e-05, 2.804637235679039586e-05, 2.925299713305082175e-05, 3.045950337654565427e-05, 3.166588913378028992e-05, 3.287215245165163739e-05, 3.407829137728960719e-05, 3.528430395814122542e-05, 3.649018824205467975e-05, 3.769594227712058545e-05, 3.890156411178280444e-05, 4.010705179478844318e-05, 4.131240337527081451e-05, 4.251761690272643223e-05, 4.372269042682909072e-05, 4.492762199775682648e-05, 4.613240966600588936e-05, 4.733705148236718824e-05, 4.854154549798359112e-05, 4.974588976443336806e-05, 5.095008233357233810e-05, 5.215412125764404451e-05, 5.335800458922986119e-05, 5.456173038135878170e-05, 5.576529668735016247e-05, 5.696870156089689469e-05, 5.817194305612249434e-05, 5.937501922755752075e-05, 6.057792812995408999e-05, 6.178066781863938571e-05, 6.298323634919500641e-05, 6.418563177770287599e-05, 6.538785216055997395e-05, 6.658989555456240172e-05, 6.779176001698821569e-05, 6.899344360544086845e-05, 7.019494437793114732e-05, 7.139626039296237913e-05, 7.259738970937162168e-05, 7.379833038641378431e-05, 7.499908048384485392e-05, 7.619963806176408938e-05, 7.740000118069835890e-05, 7.860016790168453940e-05, 7.980013628611248334e-05, 8.099990439580897670e-05, 8.219947029312002983e-05, 8.339883204072740344e-05, 8.459798770189278438e-05, 8.579693534013893542e-05, 8.699567301960153235e-05, 8.819419880484472766e-05, 8.939251076083720325e-05, 9.059060695300883348e-05, 9.178848544733479221e-05, 9.298614431017723217e-05, 9.418358160836899889e-05, 9.538079540929752089e-05, 9.657778378074598755e-05, 9.777454479100586228e-05, 9.897107650882340415e-05, 1.001673770034859298e-04, 1.013634443447960771e-04, 1.025592766028891173e-04, 1.037548718485562909e-04, 1.049502281530601818e-04, 1.061453435881131146e-04, 1.073402162259573175e-04, 1.085348441393176923e-04, 1.097292254015098814e-04, 1.109233580862840083e-04, 1.121172402679068860e-04, 1.133108700212469787e-04, 1.145042454216144818e-04, 1.156973645448479491e-04, 1.168902254673684495e-04, 1.180828262661560936e-04, 1.192751650185677249e-04, 1.204672398026847188e-04, 1.216590486970252892e-04, 1.228505897806518110e-04, 1.240418611332555780e-04, 1.252328608349723117e-04, 1.264235869665989343e-04, 1.276140376094096068e-04, 1.288042108452403238e-04, 1.299941047565690902e-04, 1.311837174263616934e-04, 1.323730469381541840e-04, 1.335620913761344892e-04, 1.347508488249879140e-04, 1.359393173699777787e-04, 1.371274950970303660e-04, 1.383153800925765735e-04, 1.395029704436366439e-04, 1.406902642379009383e-04, 1.418772595635490910e-04, 1.430639545094906213e-04, 1.442503471650494575e-04, 1.454364356203134841e-04, 1.466222179659500374e-04, 1.478076922931840045e-04, 1.489928566938521963e-04, 1.501777092604877526e-04, 1.513622480861635832e-04, 1.525464712645734392e-04, 1.537303768901175107e-04, 1.549139630577432930e-04, 1.560972278630568259e-04, 1.572801694022718717e-04, 1.584627857723190127e-04, 1.596450750706901770e-04, 1.608270353955204687e-04, 1.620086648456448442e-04, 1.631899615205740703e-04, 1.643709235203125781e-04, 1.655515489457065463e-04, 1.667318358981282895e-04, 1.679117824797177650e-04, 1.690913867932000464e-04, 1.702706469419693232e-04, 1.714495610301686429e-04, 1.726281271625365512e-04, 1.738063434444882987e-04, 1.749842079821992699e-04, 1.761617188824484250e-04, 1.773388742526998312e-04, 1.785156722011877189e-04, 1.796921108367576458e-04, 1.808681882689518780e-04, 1.820439026080896479e-04, 1.832192519650859030e-04, 1.843942344516648661e-04, 1.855688481801801937e-04, 1.867430912636952340e-04, 1.879169618160932630e-04, 1.890904579517871896e-04, 1.902635777860704844e-04, 1.914363194349304263e-04, 1.926086810150283424e-04, 1.937806606437546589e-04, 1.949522564393086439e-04, 1.961234665205464564e-04, 1.972942890070608624e-04, 1.984647220192658297e-04, 1.996347636782386953e-04, 2.008044121058301845e-04, 2.019736654246134539e-04, 2.031425217579691195e-04, 2.043109792300574741e-04, 2.054790359656408682e-04, 2.066466900904004864e-04, 2.078139397307567223e-04, 2.089807830138440251e-04, 2.101472180675946543e-04, 2.113132430206887517e-04, 2.124788560026599164e-04, 2.136440551437439035e-04, 2.148088385749597504e-04, 2.159732044281900069e-04, 2.171371508360272671e-04, 2.183006759318557009e-04, 2.194637778499070534e-04, 2.206264547252357352e-04, 2.217887046935405795e-04, 2.229505258915069621e-04, 2.241119164564969366e-04, 2.252728745267847772e-04, 2.264333982413798199e-04, 2.275934857401067210e-04, 2.287531351636875850e-04, 2.299123446535867069e-04, 2.310711123520942459e-04, 2.322294364024038264e-04, 2.333873149484627294e-04, 2.345447461350514719e-04, 2.357017281078639030e-04, 2.368582590133574484e-04, 2.380143369988280285e-04, 2.391699602124981229e-04, 2.403251268033586665e-04, 2.414798349212523166e-04, 2.426340827169535478e-04, 2.437878683419898945e-04, 2.449411899488776836e-04, 2.460940456908168312e-04, 2.472464337220265664e-04, 2.483983521975697628e-04, 2.495497992733298727e-04, 2.507007731060641067e-04, 2.518512718534851830e-04, 2.530012936741093759e-04, 2.541508367273616299e-04, 2.552998991735279627e-04, 2.564484791738605245e-04, 2.575965748904278699e-04, 2.587441844861925323e-04, 2.598913061250675651e-04, 2.610379379718922557e-04, 2.621840781922556715e-04, 2.633297249528086933e-04, 2.644748764210863687e-04, 2.656195307654848729e-04, 2.667636861553417398e-04, 2.679073407608879940e-04, 2.690504927533537527e-04, 2.701931403048144311e-04, 2.713352815882748227e-04, 2.724769147777480831e-04, 2.736180380481009603e-04, 2.747586495751384709e-04, 2.758987475356807157e-04, 2.770383301074128262e-04, 2.781773954689660089e-04, 2.793159417999947400e-04, 2.804539672810274172e-04, 2.815914700935478370e-04, 2.827284484200713599e-04, 2.838649004439708964e-04, 2.850008243496837180e-04, 2.861362183225372806e-04, 2.872710805488243595e-04, 2.884054092158878338e-04, 2.895392025119658086e-04, 2.906724586262757486e-04, 2.918051757490887463e-04, 2.929373520715831546e-04, 2.940689857859236792e-04, 2.952000750853373814e-04, 2.963306181639683949e-04, 2.974606132169538199e-04, 2.985900584405033580e-04, 2.997189520317267608e-04, 3.008472921888613507e-04, 3.019750771109754365e-04, 3.031023049982934118e-04, 3.042289740520548089e-04, 3.053550824743597996e-04, 3.064806284684773799e-04, 3.076056102386712471e-04, 3.087300259901781157e-04, 3.098538739292850210e-04, 3.109771522632804762e-04, 3.120998592005633254e-04, 3.132219929504884625e-04, 3.143435517234481461e-04, 3.154645337309508208e-04, 3.165849371854711721e-04, 3.177047603005311166e-04, 3.188240012907492954e-04, 3.199426583718209083e-04, 3.210607297603457048e-04, 3.221782136741562267e-04, 3.232951083320176463e-04, 3.244114119538590271e-04, 3.255271227605988755e-04, 3.266422389742260762e-04, 3.277567588178740524e-04, 3.288706805156736929e-04, 3.299840022928343967e-04, 3.310967223757207262e-04, 3.322088389917034375e-04, 3.333203503692389524e-04, 3.344312547379451445e-04, 3.355415503284575737e-04, 3.366512353725048382e-04, 3.377603081029873422e-04, 3.388687667538033891e-04, 3.399766095600553978e-04, 3.410838347578723636e-04, 3.421904405844949687e-04, 3.432964252783709917e-04, 3.444017870788887025e-04, 3.455065242267002794e-04, 3.466106349635542463e-04, 3.477141175322683670e-04, 3.488169701767855906e-04, 3.499191911422530350e-04, 3.510207786748691149e-04, 3.521217310219939135e-04, 3.532220464320943217e-04, 3.543217231548532716e-04, 3.554207594410189238e-04, 3.565191535424823508e-04, 3.576169037123340237e-04, 3.587140082048348639e-04, 3.598104652752518785e-04, 3.609062731801549601e-04, 3.620014301772462879e-04, 3.630959345253402157e-04, 3.641897844844375399e-04, 3.652829783156817515e-04, 3.663755142814597047e-04, 3.674673906452530269e-04, 3.685586056717211141e-04, 3.696491576267725261e-04, 3.707390447774198657e-04, 3.718282653918616901e-04, 3.729168177395541768e-04, 3.740047000910680635e-04, 3.750919107181644330e-04, 3.761784478938700661e-04, 3.772643098923372535e-04, 3.783494949889155707e-04, 3.794340014602312411e-04, 3.805178275840146937e-04, 3.816009716393036345e-04, 3.826834319062702786e-04, 3.837652066663013099e-04, 3.848462942020697101e-04, 3.859266927973963057e-04, 3.870064007373207830e-04, 3.880854163081794259e-04, 3.891637377974627057e-04, 3.902413634938884106e-04, 3.913182916874808465e-04, 3.923945206694244158e-04, 3.934700487321641767e-04, 3.945448741693633431e-04, 3.956189952759736487e-04, 3.966924103482157775e-04, 3.977651176834166792e-04, 3.988371155802935761e-04, 3.999084023387977291e-04, 4.009789762600848937e-04, 4.020488356465708310e-04, 4.031179788020039490e-04, 4.041864040313261999e-04, 4.052541096407661042e-04, 4.063210939378033518e-04, 4.073873552312572729e-04, 4.084528918311516378e-04, 4.095177020487862142e-04, 4.105817841967907065e-04, 4.116451365891003072e-04, 4.127077575407911685e-04, 4.137696453683969901e-04, 4.148307983896452325e-04, 4.158912149235555623e-04, 4.169508932905168852e-04, 4.180098318121227099e-04, 4.190680288113582267e-04, 4.201254826124468391e-04, 4.211821915409142943e-04, 4.222381539236707030e-04, 4.232933680888623833e-04, 4.243478323659532841e-04, 4.254015450857954583e-04, 4.264545045804884961e-04, 4.275067091834544434e-04, 4.285581572295119610e-04, 4.296088470547381431e-04, 4.306587769965357381e-04, 4.317079453937158187e-04, 4.327563505863293511e-04, 4.338039909158817589e-04, 4.348508647250563428e-04, 4.358969703580202427e-04, 4.369423061602630541e-04, 4.379868704785760112e-04, 4.390306616611002345e-04, 4.400736780574053346e-04, 4.411159180183425038e-04, 4.421573798961232283e-04, 4.431980620443923095e-04, 4.442379628180869724e-04, 4.452770805735350936e-04, 4.463154136684115082e-04, 4.473529604618096760e-04, 4.483897193142171236e-04, 4.494256885873653372e-04, 4.504608666445013548e-04, 4.514952518502542470e-04, 4.525288425704988870e-04, 4.535616371726381140e-04, 4.545936340254416209e-04, 4.556248314990240535e-04, 4.566552279649189528e-04, 4.576848217960351704e-04, 4.587136113667509229e-04, 4.597415950527776159e-04, 4.607687712312315102e-04, 4.617951382807075557e-04, 4.628206945811420229e-04, 4.638454385138817836e-04, 4.648693684617625902e-04, 4.658924828089675333e-04, 4.669147799410974060e-04, 4.679362582452490922e-04, 4.689569161098526106e-04, 4.699767519248575979e-04, 4.709957640815756112e-04, 4.720139509727521734e-04, 4.730313109926379510e-04, 4.740478425368505186e-04, 4.750635440024537763e-04, 4.760784137880172016e-04, 4.770924502934940936e-04, 4.781056519202810952e-04, 4.791180170712983164e-04, 4.801295441508483873e-04, 4.811402315646904010e-04, 4.821500777201123927e-04, 4.831590810257932120e-04, 4.841672398918981496e-04, 4.851745527300372501e-04, 4.861810179533322066e-04, 4.871866339764014536e-04, 4.881913992151963979e-04, 4.891953120872881899e-04, 4.901983710116953902e-04, 4.912005744088783314e-04, 4.922019207007760893e-04, 4.932024083108858467e-04, 4.942020356641231398e-04, 4.952008011869177013e-04, 4.961987033071697676e-04, 4.971957404543436449e-04, 4.981919110593334855e-04, 4.991872135545354951e-04, 5.001816463738918434e-04, 5.011752079528750516e-04, 5.021678967283314332e-04, 5.031597111387729618e-04, 5.041506496241131589e-04, 5.051407106258725506e-04, 5.061298925870196148e-04, 5.071181939520446160e-04, 5.081056131670292101e-04, 5.090921486795113539e-04, 5.100777989385549098e-04, 5.110625623948260830e-04, 5.120464375004526916e-04, 5.130294227090974584e-04, 5.140115164760308700e-04, 5.149927172579914225e-04, 5.159730235132642265e-04, 5.169524337017441075e-04, 5.179309462848044176e-04, 5.189085597253720620e-04, 5.198852724879888653e-04, 5.208610830386644448e-04, 5.218359898450736440e-04, 5.228099913762983839e-04, 5.237830861031125915e-04, 5.247552724978325799e-04, 5.257265490342976407e-04, 5.266969141879133042e-04, 5.276663664357269081e-04, 5.286349042562854582e-04, 5.296025261297208474e-04, 5.305692305378027643e-04, 5.315350159638180215e-04, 5.324998808926587014e-04, 5.334638238107785712e-04, 5.344268432062630140e-04, 5.353889375688111393e-04, 5.363501053895813929e-04, 5.373103451614611977e-04, 5.382696553789098528e-04, 5.392280345379420539e-04, 5.401854811361985831e-04, 5.411419936729031576e-04, 5.420975706489479734e-04, 5.430522105667719493e-04, 5.440059119304237190e-04, 5.449586732456305864e-04, 5.459104930196713489e-04, 5.468613697614417828e-04, 5.478113019815046255e-04, 5.487602881920621446e-04, 5.497083269068155174e-04, 5.506554166412443380e-04, 5.516015559123705865e-04, 5.525467432388504610e-04, 5.534909771410355265e-04, 5.544342561408319853e-04, 5.553765787618676446e-04, 5.563179435293509698e-04, 5.572583489701301738e-04, 5.581977936127659667e-04, 5.591362759874038369e-04, 5.600737946258380192e-04, 5.610103480615792572e-04, 5.619459348297318546e-04, 5.628805534670572102e-04, 5.638142025120361587e-04, 5.647468805047527445e-04, 5.656785859869522268e-04, 5.666093175021122029e-04, 5.675390735952932052e-04, 5.684678528133302799e-04, 5.693956537045882825e-04, 5.703224748192306515e-04, 5.712483147090810639e-04, 5.721731719275969814e-04, 5.730970450299220165e-04, 5.740199325729450222e-04, 5.749418331151790948e-04, 5.758627452168260837e-04, 5.767826674398432701e-04, 5.777015983478196596e-04, 5.786195365060569718e-04, 5.795364804815374398e-04, 5.804524288430042579e-04, 5.813673801608437285e-04, 5.822813330071424003e-04, 5.831942859557386755e-04, 5.841062375821985241e-04, 5.850171864636752967e-04, 5.859271311791850031e-04, 5.868360703093496817e-04, 5.877440024365959172e-04, 5.886509261450068465e-04, 5.895568400203900303e-04, 5.904617426503355661e-04, 5.913656326241036564e-04, 5.922685085326786017e-04, 5.931703689688411175e-04, 5.940712125270428915e-04, 5.949710378034693591e-04, 5.958698433961057313e-04, 5.967676279046179493e-04, 5.976643899304119904e-04, 5.985601280766984864e-04, 5.994548409483536205e-04, 6.003485271520862029e-04, 6.012411852962908695e-04, 6.021328139911176882e-04, 6.030234118485507631e-04, 6.039129774821920451e-04, 6.048015095075225155e-04, 6.056890065417640592e-04, 6.065754672038651532e-04, 6.074608901145340427e-04, 6.083452738963127928e-04, 6.092286171734514122e-04, 6.101109185719701946e-04, 6.109921767197276990e-04, 6.118723902462949813e-04, 6.127515577830420059e-04, 6.136296779631037097e-04, 6.145067494214343212e-04, 6.153827707947899040e-04, 6.162577407216012892e-04, 6.171316578422014320e-04, 6.180045207986973677e-04, 6.188763282349524306e-04, 6.197470787966380791e-04, 6.206167711312100431e-04, 6.214854038879792306e-04, 6.223529757180020069e-04, 6.232194852741355972e-04, 6.240849312111042225e-04, 6.249493121853808139e-04, 6.258126268552441493e-04, 6.266748738808323050e-04, 6.275360519241113223e-04, 6.283961596487466208e-04, 6.292551957203595210e-04, 6.301131588062968509e-04, 6.309700475757992148e-04, 6.318258606998814050e-04, 6.326805968513777223e-04, 6.335342547050130989e-04, 6.343868329372831863e-04, 6.352383302265189732e-04, 6.360887452529390444e-04, 6.369380766985489667e-04, 6.377863232471834643e-04, 6.386334835845824216e-04, 6.394795563982692355e-04, 6.403245403776115308e-04, 6.411684342138819839e-04, 6.420112366001446986e-04, 6.428529462313136442e-04, 6.436935618042156481e-04, 6.445330820174511839e-04, 6.453715055715803124e-04, 6.462088311688797115e-04, 6.470450575136102575e-04, 6.478801833118701158e-04, 6.487142072715884524e-04, 6.495471281025583937e-04, 6.503789445164999102e-04, 6.512096552269499867e-04, 6.520392589493312525e-04, 6.528677544009278038e-04, 6.536951403009542668e-04, 6.545214153704500886e-04, 6.553465783323314704e-04, 6.561706279114395057e-04, 6.569935628345137260e-04, 6.578153818300740314e-04, 6.586360836286362297e-04, 6.594556669625889793e-04, 6.602741305661792614e-04, 6.610914731755616024e-04, 6.619076935287727037e-04, 6.627227903658031074e-04, 6.635367624284853067e-04, 6.643496084605554370e-04, 6.651613272077108469e-04, 6.659719174174977751e-04, 6.667813778393690298e-04, 6.675897072247470891e-04, 6.683969043269066823e-04, 6.692029679010378903e-04, 6.700078967043017648e-04, 6.708116894957232099e-04, 6.716143450362424810e-04, 6.724158620887802371e-04, 6.732162394181045095e-04, 6.740154757909846582e-04, 6.748135699760590992e-04, 6.756105207438955866e-04, 6.764063268670497588e-04, 6.772009871199533579e-04, 6.779945002789737520e-04, 6.787868651224670613e-04, 6.795780804306777610e-04, 6.803681449857848680e-04, 6.811570575719685114e-04, 6.819448169752935973e-04, 6.827314219837768124e-04, 6.835168713874328113e-04, 6.843011639781540869e-04, 6.850842985498752265e-04, 6.858662738983559637e-04, 6.866470888214227380e-04, 6.874267421188562637e-04, 6.882052325922852773e-04, 6.889825590454149795e-04, 6.897587202838881488e-04, 6.905337151152767926e-04, 6.913075423491395026e-04, 6.920802007969816634e-04, 6.928516892723338410e-04, 6.936220065906449888e-04, 6.943911515693348144e-04, 6.951591230278540614e-04, 6.959259197875747880e-04, 6.966915406718520581e-04, 6.974559845060512636e-04, 6.982192501175406426e-04, 6.989813363355655128e-04, 6.997422419914801819e-04, 7.005019659185431416e-04, 7.012605069520654955e-04, 7.020178639293004784e-04, 7.027740356894952812e-04, 7.035290210739424425e-04, 7.042828189258792341e-04, 7.050354280905403535e-04, 7.057868474152130013e-04, 7.065370757491360506e-04, 7.072861119435485105e-04, 7.080339548517493743e-04, 7.087806033289920180e-04, 7.095260562325373267e-04, 7.102703124217105059e-04, 7.110133707577773752e-04, 7.117552301040888912e-04, 7.124958893259577663e-04, 7.132353472907183162e-04, 7.139736028677885846e-04, 7.147106549284888482e-04, 7.154465023462651787e-04, 7.161811439965668196e-04, 7.169145787568439098e-04, 7.176468055065642884e-04, 7.183778231272820161e-04, 7.191076305025296059e-04, 7.198362265178907728e-04, 7.205636100609651975e-04, 7.212897800214367224e-04, 7.220147352909828207e-04, 7.227384747633170976e-04, 7.234609973342269115e-04, 7.241823019015580874e-04, 7.249023873651079053e-04, 7.256212526268112587e-04, 7.263388965906396062e-04, 7.270553181625770108e-04, 7.277705162506818313e-04, 7.284844897650405351e-04, 7.291972376178461942e-04, 7.299087587233039432e-04, 7.306190519976689260e-04, 7.313281163593110231e-04, 7.320359507286095749e-04, 7.327425540280046654e-04, 7.334479251820531743e-04, 7.341520631173271885e-04, 7.348549667624660426e-04, 7.355566350482282533e-04, 7.362570669073786531e-04, 7.369562612748158928e-04, 7.376542170874689002e-04, 7.383509332843402485e-04, 7.390464088065549445e-04, 7.397406425972743440e-04, 7.404336336017371340e-04, 7.411253807673100734e-04, 7.418158830433987634e-04, 7.425051393814936177e-04, 7.431931487352185428e-04, 7.438799100602400821e-04, 7.445654223143119768e-04, 7.452496844573260146e-04, 7.459326954512258360e-04, 7.466144542600600597e-04, 7.472949598499569130e-04, 7.479742111891787663e-04, 7.486522072480994742e-04, 7.493289469991024597e-04, 7.500044294167634027e-04, 7.506786534777495174e-04, 7.513516181607997118e-04, 7.520233224467630763e-04, 7.526937653186411680e-04, 7.533629457615032259e-04, 7.540308627625384296e-04, 7.546975153110396361e-04, 7.553629023984568310e-04, 7.560270230183153799e-04, 7.566898761662534329e-04, 7.573514608400600890e-04, 7.580117760396618432e-04, 7.586708207670134077e-04, 7.593285940262998069e-04, 7.599850948237729881e-04, 7.606403221678115613e-04, 7.612942750689642756e-04, 7.619469525398542839e-04, 7.625983535952892984e-04, 7.632484772521710590e-04, 7.638973225295319800e-04, 7.645448884485852399e-04, 7.651911740326358766e-04, 7.658361783071293604e-04, 7.664799002996927927e-04, 7.671223390400538087e-04, 7.677634935600779814e-04, 7.684033628938257430e-04, 7.690419460774519872e-04, 7.696792421492640746e-04, 7.703152501497599960e-04, 7.709499691215305778e-04, 7.715833981093864419e-04, 7.722155361601960259e-04, 7.728463823230641511e-04, 7.734759356492398657e-04, 7.741041951920971456e-04, 7.747311600071709985e-04, 7.753568291521989887e-04, 7.759812016870406811e-04, 7.766042766737086493e-04, 7.772260531764315760e-04, 7.778465302615585183e-04, 7.784657069976176711e-04, 7.790835824552931653e-04, 7.797001557074676771e-04, 7.803154258292055142e-04, 7.809293918976630607e-04, 7.815420529922547689e-04, 7.821534081945657720e-04, 7.827634565882789176e-04, 7.833721972593377233e-04, 7.839796292958485817e-04, 7.845857517880699180e-04, 7.851905638284629313e-04, 7.857940645116492017e-04, 7.863962529344838744e-04, 7.869971281959645864e-04, 7.875966893972716903e-04, 7.881949356418200799e-04, 7.887918660351746214e-04, 7.893874796850891854e-04, 7.899817757015510991e-04, 7.905747531966999392e-04, 7.911664112848732855e-04, 7.917567490826455355e-04, 7.923457657087311931e-04, 7.929334602841049988e-04, 7.935198319318953518e-04, 7.941048797774317991e-04, 7.946886029482921974e-04, 7.952710005742183626e-04, 7.958520717871514147e-04, 7.964318157212882648e-04, 7.970102315129879399e-04, 7.975873183008205889e-04, 7.981630752256068393e-04, 7.987375014303413606e-04, 7.993105960602292937e-04, 7.998823582627301613e-04, 8.004527871874697218e-04, 8.010218819863511005e-04, 8.015896418134138427e-04, 8.021560658249813659e-04, 8.027211531796097851e-04, 8.032849030379933704e-04, 8.038473145631311887e-04, 8.044083869202274658e-04, 8.049681192766951644e-04, 8.055265108021650907e-04, 8.060835606685430327e-04, 8.066392680499198794e-04, 8.071936321226310350e-04, 8.077466520652315908e-04, 8.082983270585508608e-04, 8.088486562856081388e-04, 8.093976389316643065e-04, 8.099452741842371210e-04, 8.104915612330962273e-04, 8.110364992701743622e-04, 8.115800874897375738e-04, 8.121223250882219410e-04, 8.126632112643597744e-04, 8.132027452190924467e-04, 8.137409261556053037e-04, 8.142777532793591061e-04, 8.148132257980352780e-04, 8.153473429215607341e-04, 8.158801038621430086e-04, 8.164115078342106240e-04, 8.169415540544367263e-04, 8.174702417417925365e-04, 8.179975701174598554e-04, 8.185235384048774676e-04, 8.190481458297797389e-04, 8.195713916201174693e-04, 8.200932750061020208e-04, 8.206137952202419627e-04, 8.211329514972578536e-04, 8.216507430741910954e-04, 8.221671691902617939e-04, 8.226822290870264027e-04, 8.231959220082955397e-04, 8.237082472001223867e-04, 8.242192039108269756e-04, 8.247287913910317497e-04, 8.252370088935947774e-04, 8.257438556736471568e-04, 8.262493309886209886e-04, 8.267534340981914790e-04, 8.272561642643174893e-04, 8.277575207512186594e-04, 8.282575028254176913e-04, 8.287561097557252787e-04, 8.292533408131568407e-04, 8.297491952710804065e-04, 8.302436724051343248e-04, 8.307367714932082899e-04, 8.312284918154888786e-04, 8.317188326544407932e-04, 8.322077932948347256e-04, 8.326953730237050735e-04, 8.331815711303655527e-04, 8.336663869064523487e-04, 8.341498196458558114e-04, 8.346318686447577522e-04, 8.351125332016504175e-04, 8.355918126173295492e-04, 8.360697061948215271e-04, 8.365462132395136896e-04, 8.370213330590515512e-04, 8.374950649633720878e-04, 8.379674082647426596e-04, 8.384383622776876103e-04, 8.389079263190675224e-04, 8.393760997080113462e-04, 8.398428817659535882e-04, 8.403082718166549102e-04, 8.407722691861496548e-04, 8.412348732027754433e-04, 8.416960831972073289e-04, 8.421558985023899248e-04, 8.426143184535754603e-04, 8.430713423883569573e-04, 8.435269696465989495e-04, 8.439811995704811758e-04, 8.444340315045180964e-04, 8.448854647955016464e-04, 8.453354987925774553e-04, 8.457841328471367524e-04, 8.462313663129460367e-04, 8.466771985460758458e-04, 8.471216289048905633e-04, 8.475646567500692364e-04, 8.480062814446434139e-04, 8.484465023539297093e-04, 8.488853188455577729e-04, 8.493227302895201654e-04, 8.497587360580882232e-04, 8.501933355258719073e-04, 8.506265280697877101e-04, 8.510583130691018071e-04, 8.514886899054101071e-04, 8.519176579625750440e-04, 8.523452166268453804e-04, 8.527713652867996126e-04, 8.531961033332761480e-04, 8.536194301595169615e-04, 8.540413451610446476e-04, 8.544618477357490477e-04, 8.548809372838229569e-04, 8.552986132077897716e-04, 8.557148749125349308e-04, 8.561297218052505136e-04, 8.565431532954624529e-04, 8.569551687950556886e-04, 8.573657677182298237e-04, 8.577749494815167970e-04, 8.581827135038176376e-04, 8.585890592063384966e-04, 8.589939860126278356e-04, 8.593974933486074348e-04, 8.597995806424919450e-04, 8.602002473248803946e-04, 8.605994928286918961e-04, 8.609973165891782231e-04, 8.613937180439703222e-04, 8.617886966330106594e-04, 8.621822517985924675e-04, 8.625743829853825149e-04, 8.629650896403639679e-04, 8.633543712128680494e-04, 8.637422271546032039e-04, 8.641286569196030562e-04, 8.645136599642415896e-04, 8.648972357472825860e-04, 8.652793837298087187e-04, 8.656601033752624273e-04, 8.660393941494331236e-04, 8.664172555204786592e-04, 8.667936869589238074e-04, 8.671686879375957533e-04, 8.675422579317244908e-04, 8.679143964188945756e-04, 8.682851028790303802e-04, 8.686543767944145253e-04, 8.690222176496909152e-04, 8.693886249318806764e-04, 8.697535981303434506e-04, 8.701171367367992963e-04, 8.704792402453549261e-04, 8.708399081524517736e-04, 8.711991399568950502e-04, 8.715569351598756453e-04, 8.719132932649498527e-04, 8.722682137779898216e-04, 8.726216962072964227e-04, 8.729737400634909363e-04, 8.733243448595953912e-04, 8.736735101109732596e-04, 8.740212353353610068e-04, 8.743675200528870650e-04, 8.747123637860185989e-04, 8.750557660596007536e-04, 8.753977264008680394e-04, 8.757382443394071429e-04, 8.760773194071712388e-04, 8.764149511385156601e-04, 8.767511390701421704e-04, 8.770858827411260683e-04, 8.774191816929399323e-04, 8.777510354694100349e-04, 8.780814436167394370e-04, 8.784104056835278281e-04, 8.787379212207206778e-04, 8.790639897816819853e-04, 8.793886109220967013e-04, 8.797117842000804497e-04, 8.800335091761107885e-04, 8.803537854130385944e-04, 8.806726124760899058e-04, 8.809899899328970394e-04, 8.813059173534511020e-04, 8.816203943101303970e-04, 8.819334203776899072e-04, 8.822449951332898095e-04, 8.825551181564521069e-04, 8.828637890290842640e-04, 8.831710073354871217e-04, 8.834767726623628118e-04, 8.837810845987493797e-04, 8.840839427361191216e-04, 8.843853466683185196e-04, 8.846852959915717110e-04, 8.849837903044965350e-04, 8.852808292080904373e-04, 8.855764123057616958e-04, 8.858705392032900638e-04, 8.861632095088411900e-04, 8.864544228329951326e-04, 8.867441787886967035e-04, 8.870324769912936317e-04, 8.873193170585291908e-04, 8.876046986105336342e-04, 8.878886212698219177e-04, 8.881710846613250334e-04, 8.884520884123465329e-04, 8.887316321525870304e-04, 8.890097155141585142e-04, 8.892863381315411955e-04, 8.895614996416421633e-04, 8.898351996837413919e-04, 8.901074378995119064e-04, 8.903782139330506827e-04, 8.906475274308256300e-04, 8.909153780417090928e-04, 8.911817654169855484e-04, 8.914466892103216833e-04, 8.917101490777802706e-04, 8.919721446778462997e-04, 8.922326756713868604e-04, 8.924917417216612263e-04, 8.927493424943586933e-04, 8.930054776575371053e-04, 8.932601468816896411e-04, 8.935133498396684868e-04, 8.937650862067652831e-04, 8.940153556606676493e-04, 8.942641578814508347e-04, 8.945114925515987520e-04, 8.947573593560170964e-04, 8.950017579819930132e-04, 8.952446881192292500e-04, 8.954861494598223646e-04, 8.957261416982955759e-04, 8.959646645315627687e-04, 8.962017176589376008e-04, 8.964373007821596325e-04, 8.966714136053593066e-04, 8.969040558350748621e-04, 8.971352271802599237e-04, 8.973649273522830679e-04, 8.975931560648880330e-04, 8.978199130342656015e-04, 8.980451979789859460e-04, 8.982690106200532732e-04, 8.984913506808602868e-04, 8.987122178872142091e-04, 8.989316119673442613e-04, 8.991495326518759686e-04, 8.993659796738439531e-04, 8.995809527687124258e-04, 8.997944516743363718e-04, 9.000064761309854028e-04, 9.002170258813568761e-04, 9.004261006705431515e-04, 9.006337002460464451e-04, 9.008398243578013805e-04, 9.010444727581306450e-04, 9.012476452017930198e-04, 9.014493414459430476e-04, 9.016495612501520662e-04, 9.018483043764256640e-04, 9.020455705891394955e-04, 9.022413596551271016e-04, 9.024356713436202781e-04, 9.026285054262591593e-04, 9.028198616771003493e-04, 9.030097398726283061e-04, 9.031981397917292122e-04, 9.033850612157107076e-04, 9.035705039282897460e-04, 9.037544677156133036e-04, 9.039369523662315990e-04, 9.041179576711104535e-04, 9.042974834236431085e-04, 9.044755294196407929e-04, 9.046520954573078954e-04, 9.048271813372901025e-04, 9.050007868626496789e-04, 9.051729118388551678e-04, 9.053435560737932083e-04, 9.055127193777742821e-04, 9.056804015635292436e-04, 9.058466024461999961e-04, 9.060113218433458885e-04, 9.061745595749569424e-04, 9.063363154634280485e-04, 9.064965893335755545e-04, 9.066553810126470230e-04, 9.068126903302932591e-04, 9.069685171185857663e-04, 9.071228612120310576e-04, 9.072757224475336843e-04, 9.074271006644368939e-04, 9.075769957044937898e-04, 9.077254074118723190e-04, 9.078723356331720772e-04, 9.080177802174093466e-04, 9.081617410160071216e-04, 9.083042178828330555e-04, 9.084452106741577188e-04, 9.085847192486719466e-04, 9.087227434674964880e-04, 9.088592831941661766e-04, 9.089943382946340505e-04, 9.091279086372862058e-04, 9.092599940929144749e-04, 9.093905945347411464e-04, 9.095197098384025930e-04, 9.096473398819629333e-04, 9.097734845459131640e-04, 9.098981437131400431e-04, 9.100213172689765057e-04, 9.101430051011726073e-04, 9.102632070998912953e-04, 9.103819231577166488e-04, 9.104991531696676483e-04, 9.106148970331706368e-04, 9.107291546480750406e-04, 9.108419259166545623e-04, 9.109532107436118424e-04, 9.110630090360555830e-04, 9.111713207035217980e-04, 9.112781456579777161e-04, 9.113834838138043255e-04, 9.114873350877934462e-04, 9.115896993991815574e-04, 9.116905766696024177e-04, 9.117899668231278310e-04, 9.118878697862444448e-04, 9.119842854878572195e-04, 9.120792138593039567e-04, 9.121726548343330734e-04, 9.122646083491144434e-04, 9.123550743422446018e-04, 9.124440527547394812e-04, 9.125315435300295321e-04, 9.126175466139779379e-04, 9.127020619548627256e-04, 9.127850895033786088e-04, 9.128666292126511907e-04, 9.129466810382161476e-04, 9.130252449380363592e-04, 9.131023208724964877e-04, 9.131779088043950627e-04, 9.132520086989629133e-04, 9.133246205238332435e-04, 9.133957442490752430e-04, 9.134653798471765226e-04, 9.135335272930359589e-04, 9.136001865639800656e-04, 9.136653576397525851e-04, 9.137290405025209937e-04, 9.137912351368619734e-04, 9.138519415297856980e-04, 9.139111596707107880e-04, 9.139688895514837177e-04, 9.140251311663595167e-04, 9.140798845120196589e-04, 9.141331495875731471e-04, 9.141849263945239865e-04, 9.142352149368175888e-04, 9.142840152208082461e-04, 9.143313272552667202e-04, 9.143771510513878324e-04, 9.144214866227788618e-04, 9.144643339854690873e-04, 9.145056931579038234e-04, 9.145455641609430116e-04, 9.145839470178696766e-04, 9.146208417543810363e-04, 9.146562483985911035e-04, 9.146901669810310114e-04, 9.147225975346460862e-04, 9.147535400948011595e-04, 9.147829946992806771e-04, 9.148109613882747125e-04, 9.148374402043978320e-04, 9.148624311926785782e-04, 9.148859344005593613e-04, 9.149079498778974352e-04, 9.149284776769652221e-04, 9.149475178524517230e-04, 9.149650704614588305e-04, 9.149811355635019796e-04, 9.149957132205101479e-04, 9.150088034968288913e-04, 9.150204064592179585e-04, 9.150305221768434850e-04, 9.150391507212905697e-04, 9.150462921665588299e-04, 9.150519465890493906e-04, 9.150561140675904717e-04, 9.150587946834125600e-04, 9.150599885201605522e-04, 9.150596956638902850e-04, 9.150579162030664758e-04, 9.150546502285695528e-04, 9.150498978336856805e-04, 9.150436591141130477e-04, 9.150359341679631690e-04, 9.150267230957518858e-04, 9.150160260004061965e-04, 9.150038429872640400e-04, 9.149901741640671399e-04, 9.149750196409718464e-04, 9.149583795305375354e-04, 9.149402539477330051e-04, 9.149206430099376692e-04, 9.148995468369319067e-04, 9.148769655509049773e-04, 9.148528992764571894e-04, 9.148273481405863475e-04, 9.148003122727058588e-04, 9.147717918046276023e-04, 9.147417868705658324e-04, 9.147102976071504058e-04, 9.146773241534029292e-04, 9.146428666507564918e-04, 9.146069252430471001e-04, 9.145695000765134610e-04, 9.145305912997925366e-04, 9.144901990639304947e-04, 9.144483235223706740e-04, 9.144049648309594391e-04, 9.143601231479454210e-04, 9.143137986339768073e-04, 9.142659914521009080e-04, 9.142167017677690346e-04, 9.141659297488275012e-04, 9.141136755655268403e-04, 9.140599393905118279e-04, 9.140047213988234352e-04, 9.139480217679107552e-04, 9.138898406776080167e-04, 9.138301783101563779e-04, 9.137690348501858193e-04, 9.137064104847290218e-04, 9.136423054032095491e-04, 9.135767197974472686e-04, 9.135096538616621457e-04, 9.134411077924577647e-04, 9.133710817888403017e-04, 9.132995760522085501e-04, 9.132265907863524029e-04, 9.131521261974536114e-04, 9.130761824940813402e-04, 9.129987598872096226e-04, 9.129198585901903643e-04, 9.128394788187739429e-04, 9.127576207910940292e-04, 9.126742847276830915e-04, 9.125894708514538552e-04, 9.125031793877089528e-04, 9.124154105641429837e-04, 9.123261646108414297e-04, 9.122354417602627661e-04, 9.121432422472670843e-04, 9.120495663090919143e-04, 9.119544141853618740e-04, 9.118577861180830312e-04, 9.117596823516599261e-04, 9.116601031328614184e-04, 9.115590487108545144e-04, 9.114565193371801897e-04, 9.113525152657681342e-04, 9.112470367529237414e-04, 9.111400840573353728e-04, 9.110316574400731653e-04, 9.109217571645926090e-04, 9.108103834967155735e-04, 9.106975367046529681e-04, 9.105832170589906469e-04, 9.104674248326928782e-04, 9.103501603010995258e-04, 9.102314237419296267e-04, 9.101112154352715249e-04, 9.099895356636002186e-04, 9.098663847117571942e-04, 9.097417628669571482e-04, 9.096156704187956851e-04, 9.094881076592262236e-04, 9.093590748825978358e-04, 9.092285723856122041e-04, 9.090966004673459557e-04, 9.089631594292505541e-04, 9.088282495751460110e-04, 9.086918712112178505e-04, 9.085540246460196024e-04, 9.084147101904855963e-04, 9.082739281578972425e-04, 9.081316788639161005e-04, 9.079879626265644713e-04, 9.078427797662394928e-04, 9.076961306056852748e-04, 9.075480154700191378e-04, 9.073984346867309614e-04, 9.072473885856605254e-04, 9.070948774990050985e-04, 9.069409017613433996e-04, 9.067854617095950486e-04, 9.066285576830521165e-04, 9.064701900233550561e-04, 9.063103590745118926e-04, 9.061490651828872731e-04, 9.059863086971945518e-04, 9.058220899685123784e-04, 9.056564093502787348e-04, 9.054892671982680587e-04, 9.053206638706285401e-04, 9.051505997278570760e-04, 9.049790751327925487e-04, 9.048060904506374010e-04, 9.046316460489451684e-04, 9.044557422976100703e-04, 9.042783795688925973e-04, 9.040995582373789622e-04, 9.039192786800288046e-04, 9.037375412761343169e-04, 9.035543464073336880e-04, 9.033696944576209698e-04, 9.031835858133305727e-04, 9.029960208631352065e-04, 9.028069999980593233e-04, 9.026165236114742398e-04, 9.024245920990779700e-04, 9.022312058589239576e-04, 9.020363652914051376e-04, 9.018400707992435279e-04, 9.016423227875095285e-04, 9.014431216636149824e-04, 9.012424678372999483e-04, 9.010403617206485301e-04, 9.008368037280671927e-04, 9.006317942763203237e-04, 9.004253337844918530e-04, 9.002174226739938180e-04, 9.000080613685813250e-04, 8.997972502943389975e-04, 8.995849898796883480e-04, 8.993712805553581800e-04, 8.991561227544360869e-04, 8.989395169123246508e-04, 8.987214634667444781e-04, 8.985019628577565337e-04, 8.982810155277489144e-04, 8.980586219214227537e-04, 8.978347824858043651e-04, 8.976094976702655168e-04, 8.973827679264680286e-04, 8.971545937084215603e-04, 8.969249754724364487e-04, 8.966939136771599197e-04, 8.964614087835485502e-04, 8.962274612548758570e-04, 8.959920715567325136e-04, 8.957552401570413126e-04, 8.955169675260120626e-04, 8.952772541361916784e-04, 8.950361004624380517e-04, 8.947935069819072575e-04, 8.945494741740778405e-04, 8.943040025207489715e-04, 8.940570925060042353e-04, 8.938087446162593357e-04, 8.935589593402304366e-04, 8.933077371689334030e-04, 8.930550785957027749e-04, 8.928009841161598913e-04, 8.925454542282616798e-04, 8.922884894322396154e-04, 8.920300902306314882e-04, 8.917702571282875830e-04, 8.915089906323591870e-04, 8.912462912522814591e-04, 8.909821594998009690e-04, 8.907165958889604095e-04, 8.904496009361010907e-04, 8.901811751598473271e-04, 8.899113190811318080e-04, 8.896400332231837798e-04, 8.893673181115086630e-04, 8.890931742739008456e-04, 8.888176022404839071e-04, 8.885406025436310383e-04, 8.882621757180098184e-04, 8.879823223005899133e-04, 8.877010428306234512e-04, 8.874183378496458899e-04, 8.871342079014717889e-04, 8.868486535322060845e-04, 8.865616752902418136e-04, 8.862732737262357186e-04, 8.859834493931418578e-04, 8.856922028461938247e-04, 8.853995346428846901e-04, 8.851054453430060335e-04, 8.848099355086251746e-04, 8.845130057040619716e-04, 8.842146564959325146e-04, 8.839148884531312358e-04, 8.836137021467957821e-04, 8.833110981503666456e-04, 8.830070770395289422e-04, 8.827016393922518765e-04, 8.823947857887772493e-04, 8.820865168115923525e-04, 8.817768330454703015e-04, 8.814657350774459657e-04, 8.811532234968025247e-04, 8.808392988951017173e-04, 8.805239618661687712e-04, 8.802072130060686591e-04, 8.798890529131480568e-04, 8.795694821880047694e-04, 8.792485014334835026e-04, 8.789261112547021000e-04, 8.786023122590058991e-04, 8.782771050560371192e-04, 8.779504902576523544e-04, 8.776224684779673508e-04, 8.772930403333577655e-04, 8.769622064424497342e-04, 8.766299674261031740e-04, 8.762963239074331428e-04, 8.759612765118025748e-04, 8.756248258668261836e-04, 8.752869726023346838e-04, 8.749477173504297597e-04, 8.746070607454495879e-04, 8.742650034239472616e-04, 8.739215460247463018e-04, 8.735766891888967472e-04, 8.732304335596803579e-04, 8.728827797825992321e-04, 8.725337285054377131e-04, 8.721832803781591741e-04, 8.718314360529963317e-04, 8.714781961843850013e-04, 8.711235614290101757e-04, 8.707675324457840160e-04, 8.704101098958226491e-04, 8.700512944424952828e-04, 8.696910867513923298e-04, 8.693294874903019888e-04, 8.689664973292604436e-04, 8.686021169405268175e-04, 8.682363469985536833e-04, 8.678691881800342260e-04, 8.675006411638803419e-04, 8.671307066311959673e-04, 8.667593852653317221e-04, 8.663866777518197497e-04, 8.660125847784296612e-04, 8.656371070351380698e-04, 8.652602452141009435e-04, 8.648820000097405579e-04, 8.645023721186379439e-04, 8.641213622395857961e-04, 8.637389710735966048e-04, 8.633551993238926811e-04, 8.629700476958670173e-04, 8.625835168971411832e-04, 8.621956076375265118e-04, 8.618063206290411211e-04, 8.614156565858794483e-04, 8.610236162244467271e-04, 8.606302002633550849e-04, 8.602354094233828847e-04, 8.598392444274965182e-04, 8.594417060009008208e-04, 8.590427948709431199e-04, 8.586425117671606143e-04, 8.582408574213028175e-04, 8.578378325672864546e-04, 8.574334379412273379e-04, 8.570276742813949392e-04, 8.566205423282672498e-04, 8.562120428245028085e-04, 8.558021765149077418e-04, 8.553909441464978888e-04, 8.549783464684629136e-04, 8.545643842321388756e-04, 8.541490581910604878e-04, 8.537323691009397579e-04, 8.533143177196269571e-04, 8.528949048071807681e-04, 8.524741311257892466e-04, 8.520519974398338978e-04, 8.516285045158628964e-04, 8.512036531225602954e-04, 8.507774440307972006e-04, 8.503498780136106282e-04, 8.499209558461665341e-04, 8.494906783058153244e-04, 8.490590461720634499e-04, 8.486260602265506374e-04, 8.481917212530935835e-04, 8.477560300376608005e-04, 8.473189873683467047e-04, 8.468805940354235491e-04, 8.464408508312985975e-04, 8.459997585505397120e-04, 8.455573179898394657e-04, 8.451135299480238162e-04, 8.446683952261224704e-04, 8.442219146272436593e-04, 8.437740889566474299e-04, 8.433249190217528011e-04, 8.428744056321120677e-04, 8.424225495993892254e-04, 8.419693517374053984e-04, 8.415148128621081566e-04, 8.410589337915850682e-04, 8.406017153460244515e-04, 8.401431583477720786e-04, 8.396832636212942045e-04, 8.392220319931782170e-04, 8.387594642921063996e-04, 8.382955613489563281e-04, 8.378303239966506007e-04, 8.373637530702841229e-04, 8.368958494070275053e-04, 8.364266138461998136e-04, 8.359560472292283445e-04, 8.354841503996356155e-04, 8.350109242030744928e-04, 8.345363694873171329e-04, 8.340604871022046750e-04, 8.335832778997284481e-04, 8.331047427339739178e-04, 8.326248824611050736e-04, 8.321436979394227591e-04, 8.316611900293242312e-04, 8.311773595932745373e-04, 8.306922074958741692e-04, 8.302057346038148279e-04, 8.297179417858566554e-04, 8.292288299128893836e-04, 8.287383998578476581e-04, 8.282466524958273730e-04, 8.277535887039533984e-04, 8.272592093614451747e-04, 8.267635153496300481e-04, 8.262665075519209359e-04, 8.257681868537805484e-04, 8.252685541427851393e-04, 8.247676103085901369e-04, 8.242653562428977265e-04, 8.237617928395214685e-04, 8.232569209943326307e-04, 8.227507416052907627e-04, 8.222432555724062909e-04, 8.217344637977464818e-04, 8.212243671855135041e-04, 8.207129666419150840e-04, 8.202002630752171968e-04, 8.196862573958180100e-04, 8.191709505161155020e-04, 8.186543433505771763e-04, 8.181364368157475423e-04, 8.176172318302250223e-04, 8.170967293146658541e-04, 8.165749301917581788e-04, 8.160518353862657344e-04, 8.155274458250096406e-04, 8.150017624368245976e-04, 8.144747861526249137e-04, 8.139465179053747982e-04, 8.134169586300432587e-04, 8.128861092636850911e-04, 8.123539707453877531e-04, 8.118205440162458864e-04, 8.112858300194399205e-04, 8.107498297001412054e-04, 8.102125440055857374e-04, 8.096739738850431507e-04, 8.091341202897864683e-04, 8.085929841731452281e-04, 8.080505664904771845e-04, 8.075068681991376266e-04, 8.069618902585338040e-04, 8.064156336301007500e-04, 8.058680992772596476e-04, 8.053192881654800631e-04, 8.047692012622591293e-04, 8.042178395370651670e-04, 8.036652039614365639e-04, 8.031112955088545984e-04, 8.025561151549071535e-04, 8.019996638771112333e-04, 8.014419426549931934e-04, 8.008829524701608412e-04, 8.003226943061480690e-04, 7.997611691485074451e-04, 7.991983779848140087e-04, 7.986343218046435856e-04, 7.980690015995314801e-04, 7.975024183630473936e-04, 7.969345730907378533e-04, 7.963654667801574371e-04, 7.957951004308174911e-04, 7.952234750442444596e-04, 7.946505916239631883e-04, 7.940764511754505204e-04, 7.935010547061569809e-04, 7.929244032255883083e-04, 7.923464977451492213e-04, 7.917673392782760165e-04, 7.911869288403332442e-04, 7.906052674487017455e-04, 7.900223561227315977e-04, 7.894381958837053603e-04, 7.888527877549186308e-04, 7.882661327616243170e-04, 7.876782319310124706e-04, 7.870890862922705691e-04, 7.864986968765461106e-04, 7.859070647169160394e-04, 7.853141908484436665e-04, 7.847200763081578533e-04, 7.841247221350001019e-04, 7.835281293699166046e-04, 7.829302990557532923e-04, 7.823312322373444146e-04, 7.817309299614701472e-04, 7.811293932768096455e-04, 7.805266232340718003e-04, 7.799226208858317392e-04, 7.793173872866153949e-04, 7.787109234929170693e-04, 7.781032305631675576e-04, 7.774943095576882868e-04, 7.768841615387795697e-04, 7.762727875706706233e-04, 7.756601887194758752e-04, 7.750463660532822419e-04, 7.744313206420883056e-04, 7.738150535578268647e-04, 7.731975658743292642e-04, 7.725788586673316841e-04, 7.719589330145695729e-04, 7.713377899956150177e-04, 7.707154306919634804e-04, 7.700918561870543971e-04, 7.694670675662248832e-04, 7.688410659167323928e-04, 7.682138523276974733e-04, 7.675854278901952715e-04, 7.669557936971968786e-04, 7.663249508435346358e-04, 7.656929004259819312e-04, 7.650596435432112418e-04, 7.644251812957625824e-04, 7.637895147860536979e-04, 7.631526451184808936e-04, 7.625145733992291916e-04, 7.618753007364292146e-04, 7.612348282400958205e-04, 7.605931570220913476e-04, 7.599502881962113751e-04, 7.593062228780758692e-04, 7.586609621852270866e-04, 7.580145072370824116e-04, 7.573668591548955416e-04, 7.567180190618266354e-04, 7.560679880829146654e-04, 7.554167673450233166e-04, 7.547643579769196991e-04, 7.541107611092414970e-04, 7.534559778744474206e-04, 7.528000094068974368e-04, 7.521428568428067995e-04, 7.514845213202098369e-04, 7.508250039790553615e-04, 7.501643059610700603e-04, 7.495024284099266552e-04, 7.488393724710715139e-04, 7.481751392918067249e-04, 7.475097300213087454e-04, 7.468431458105999950e-04, 7.461753878124921524e-04, 7.455064571816939246e-04, 7.448363550747389480e-04, 7.441650826499564058e-04, 7.434926410675551630e-04, 7.428190314895571954e-04, 7.421442550798308755e-04, 7.414683130040409902e-04, 7.407912064296628355e-04, 7.401129365260868424e-04, 7.394335044644280821e-04, 7.387529114176304579e-04, 7.380711585605381547e-04, 7.373882470697086132e-04, 7.367041781235855692e-04, 7.360189529023669977e-04, 7.353325725881020404e-04, 7.346450383646464452e-04, 7.339563514176196315e-04, 7.332665129344869814e-04, 7.325755241045143031e-04, 7.318833861187216440e-04, 7.311901001699758814e-04, 7.304956674529283810e-04, 7.298000891639887591e-04, 7.291033665013944886e-04, 7.284055006651794567e-04, 7.277064928571111901e-04, 7.270063442808097917e-04, 7.263050561416102471e-04, 7.256026296466788674e-04, 7.248990660049602726e-04, 7.241943664271246984e-04, 7.234885321256679606e-04, 7.227815643148552925e-04, 7.220734642106764597e-04, 7.213642330309369410e-04, 7.206538719952061038e-04, 7.199423823247703665e-04, 7.192297652427283913e-04, 7.185160219739331880e-04, 7.178011537449549258e-04, 7.170851617841741748e-04, 7.163680473216548373e-04, 7.156498115893130665e-04, 7.149304558207290492e-04, 7.142099812512236589e-04, 7.134883891179591778e-04, 7.127656806597475019e-04, 7.120418571171530315e-04, 7.113169197325161985e-04, 7.105908697498932933e-04, 7.098637084150945199e-04, 7.091354369756123306e-04, 7.084060566807141249e-04, 7.076755687814027850e-04, 7.069439745303543335e-04, 7.062112751820161629e-04, 7.054774719925592215e-04, 7.047425662198406092e-04, 7.040065591234198400e-04, 7.032694519646644432e-04, 7.025312460065478689e-04, 7.017919425138308739e-04, 7.010515427529198174e-04, 7.003100479919757313e-04, 6.995674595008637966e-04, 6.988237785511034698e-04, 6.980790064159619413e-04, 6.973331443704045875e-04, 6.965861936910443383e-04, 6.958381556562374124e-04, 6.950890315460265048e-04, 6.943388226421018643e-04, 6.935875302278800064e-04, 6.928351555884747649e-04, 6.920817000106216149e-04, 6.913271647827949834e-04, 6.905715511951373425e-04, 6.898148605394290684e-04, 6.890570941091796230e-04, 6.882982531994979915e-04, 6.875383391072689742e-04, 6.867773531309523914e-04, 6.860152965706830478e-04, 6.852521707282971863e-04, 6.844879769072906382e-04, 6.837227164127639622e-04, 6.829563905515264200e-04, 6.821890006320261530e-04, 6.814205479643771794e-04, 6.806510338602932576e-04, 6.798804596331850308e-04, 6.791088265981105876e-04, 6.783361360717363219e-04, 6.775623893723495099e-04, 6.767875878199786565e-04, 6.760117327361896654e-04, 6.752348254441940421e-04, 6.744568672688720963e-04, 6.736778595367163463e-04, 6.728978035758612260e-04, 6.721167007160155395e-04, 6.713345522885652431e-04, 6.705513596265116460e-04, 6.697671240644266326e-04, 6.689818469385453619e-04, 6.681955295867202972e-04, 6.674081733483581058e-04, 6.666197795645343671e-04, 6.658303495779228833e-04, 6.650398847327561053e-04, 6.642483863749172905e-04, 6.634558558518897616e-04, 6.626622945127013959e-04, 6.618677037080499589e-04, 6.610720847901488222e-04, 6.602754391128596700e-04, 6.594777680316309164e-04, 6.586790729034446880e-04, 6.578793550869198228e-04, 6.570786159422548414e-04, 6.562768568311766644e-04, 6.554740791170433943e-04, 6.546702841647813239e-04, 6.538654733408426518e-04, 6.530596480132990498e-04, 6.522528095517925477e-04, 6.514449593274724334e-04, 6.506360987131260074e-04, 6.498262290830119411e-04, 6.490153518130706116e-04, 6.482034682806924082e-04, 6.473905798648367776e-04, 6.465766879460532572e-04, 6.457617939064396254e-04, 6.449458991295833540e-04, 6.441290050006764261e-04, 6.433111129064288157e-04, 6.424922242351109895e-04, 6.416723403764734582e-04, 6.408514627218622446e-04, 6.400295926641485188e-04, 6.392067315976842539e-04, 6.383828809184029490e-04, 6.375580420237606481e-04, 6.367322163127031977e-04, 6.359054051856761125e-04, 6.350776100447574988e-04, 6.342488322934093387e-04, 6.334190733366981251e-04, 6.325883345811328818e-04, 6.317566174347816069e-04, 6.309239233072221585e-04, 6.300902536094809972e-04, 6.292556097541393296e-04, 6.284199931552795484e-04, 6.275834052284267944e-04, 6.267458473906503289e-04, 6.259073210605208167e-04, 6.250678276580360574e-04, 6.242273686047394897e-04, 6.233859453236577407e-04, 6.225435592392484759e-04, 6.217002117775180352e-04, 6.208559043658818961e-04, 6.200106384332825264e-04, 6.191644154101374510e-04, 6.183172367282774523e-04, 6.174691038210595442e-04, 6.166200181233027870e-04, 6.157699810712393904e-04, 6.149189941026129416e-04, 6.140670586566271232e-04, 6.132141761738854309e-04, 6.123603480965057744e-04, 6.115055758680295120e-04, 6.106498609334723004e-04, 6.097932047392360571e-04, 6.089356087332285479e-04, 6.080770743647905289e-04, 6.072176030846734114e-04, 6.063571963450375274e-04, 6.054958555995956782e-04, 6.046335823033791631e-04, 6.037703779128644147e-04, 6.029062438859951164e-04, 6.020411816821184510e-04, 6.011751927620244580e-04, 6.003082785878624409e-04, 5.994404406232596875e-04, 5.985716803332552256e-04, 5.977019991842426848e-04, 5.968313986440830542e-04, 5.959598801820459183e-04, 5.950874452687463564e-04, 5.942140953762580250e-04, 5.933398319780592732e-04, 5.924646565489588741e-04, 5.915885705652455372e-04, 5.907115755045206154e-04, 5.898336728458314620e-04, 5.889548640696144017e-04, 5.880751506576321723e-04, 5.871945340930862477e-04, 5.863130158605599175e-04, 5.854305974459536686e-04, 5.845472803366041220e-04, 5.836630660212149694e-04, 5.827779559898075331e-04, 5.818919517338231153e-04, 5.810050547460720400e-04, 5.801172665206656741e-04, 5.792285885531349302e-04, 5.783390223403473253e-04, 5.774485693805442776e-04, 5.765572311732835350e-04, 5.756650092194513183e-04, 5.747719050213956783e-04, 5.738779200826940423e-04, 5.729830559082866800e-04, 5.720873140044913400e-04, 5.711906958789608572e-04, 5.702932030406267748e-04, 5.693948369998129682e-04, 5.684955992681467408e-04, 5.675954913586077214e-04, 5.666945147854393931e-04, 5.657926710642646696e-04, 5.648899617120279985e-04, 5.639863882469488493e-04, 5.630819521885426383e-04, 5.621766550577541937e-04, 5.612704983767003667e-04, 5.603634836689023752e-04, 5.594556124591061521e-04, 5.585468862734192796e-04, 5.576373066392458291e-04, 5.567268750852308497e-04, 5.558155931413699810e-04, 5.549034623389493886e-04, 5.539904842104870003e-04, 5.530766602898436364e-04, 5.521619921121657644e-04, 5.512464812138171940e-04, 5.503301291325061453e-04, 5.494129374072135837e-04, 5.484949075781314198e-04, 5.475760411867828560e-04, 5.466563397759638399e-04, 5.457358048896703137e-04, 5.448144380732444737e-04, 5.438922408732059597e-04, 5.429692148373921508e-04, 5.420453615149013532e-04, 5.411206824560161471e-04, 5.401951792123342502e-04, 5.392688533367014049e-04, 5.383417063831413395e-04, 5.374137399069877155e-04, 5.364849554648105099e-04, 5.355553546143556254e-04, 5.346249389146654537e-04, 5.336937099259914889e-04, 5.327616692098368278e-04, 5.318288183288892752e-04, 5.308951588470412928e-04, 5.299606923295282351e-04, 5.290254203426802840e-04, 5.280893444540447467e-04, 5.271524662325067275e-04, 5.262147872480370508e-04, 5.252763090718346167e-04, 5.243370332763483020e-04, 5.233969614352038851e-04, 5.224560951232557621e-04, 5.215144359164852490e-04, 5.205719853921384919e-04, 5.196287451286469954e-04, 5.186847167055762308e-04, 5.177399017037363337e-04, 5.167943017051249664e-04, 5.158479182928572783e-04, 5.149007530512913480e-04, 5.139528075659598790e-04, 5.130040834235090504e-04, 5.120545822118372946e-04, 5.111043055199333178e-04, 5.101532549380055539e-04, 5.092014320574354347e-04, 5.082488384706942324e-04, 5.072954757714799937e-04, 5.063413455546425133e-04, 5.053864494161218598e-04, 5.044307889530732754e-04, 5.034743657637949683e-04, 5.025171814476717342e-04, 5.015592376052889056e-04, 5.006005358383740222e-04, 4.996410777497280924e-04, 4.986808649433692496e-04, 4.977198990243412828e-04, 4.967581815989637615e-04, 4.957957142745591421e-04, 4.948324986595673686e-04, 4.938685363636821559e-04, 4.929038289975837348e-04, 4.919383781730902062e-04, 4.909721855031732619e-04, 4.900052526019159013e-04, 4.890375810844455355e-04, 4.880691725670548218e-04, 4.871000286671194274e-04, 4.861301510031333195e-04, 4.851595411946247943e-04, 4.841882008622804012e-04, 4.832161316278739817e-04, 4.822433351142285055e-04, 4.812698129452285391e-04, 4.802955667459726840e-04, 4.793205981424880527e-04, 4.783449087619860859e-04, 4.773685002326680466e-04, 4.763913741838712249e-04, 4.754135322460030185e-04, 4.744349760504704052e-04, 4.734557072298119446e-04, 4.724757274176259497e-04, 4.714950382485046218e-04, 4.705136413581605765e-04, 4.695315383833585936e-04, 4.685487309618500767e-04, 4.675652207324991461e-04, 4.665810093352149848e-04, 4.655960984108816359e-04, 4.646104896015103335e-04, 4.636241845500639700e-04, 4.626371849006021626e-04, 4.616494922982171769e-04, 4.606611083889412274e-04, 4.596720348199865745e-04, 4.586822732394563672e-04, 4.576918252964956731e-04, 4.567006926413114815e-04, 4.557088769251261369e-04, 4.547163798001055109e-04, 4.537232029194944731e-04, 4.527293479375403464e-04, 4.517348165094315412e-04, 4.507396102914225096e-04, 4.497437309407420220e-04, 4.487471801156397338e-04, 4.477499594753103448e-04, 4.467520706799204340e-04, 4.457535153907532001e-04, 4.447542952699448920e-04, 4.437544119806346456e-04, 4.427538671869878486e-04, 4.417526625541191615e-04, 4.407507997481422833e-04, 4.397482804360762759e-04, 4.387451062859695967e-04, 4.377412789668392755e-04, 4.367368001485990854e-04, 4.357316715021870997e-04, 4.347258946994963028e-04, 4.337194714133365886e-04, 4.327124033174364957e-04, 4.317046920866147823e-04, 4.306963393964784214e-04, 4.296873469236616675e-04, 4.286777163457448502e-04, 4.276674493411764194e-04, 4.266565475894276076e-04, 4.256450127708141318e-04, 4.246328465666464108e-04, 4.236200506591605006e-04, 4.226066267314509831e-04, 4.215925764675990096e-04, 4.205779015526026955e-04, 4.195626036723087071e-04, 4.185466845135442089e-04, 4.175301457640442763e-04, 4.165129891123846751e-04, 4.154952162481104477e-04, 4.144768288616695060e-04, 4.134578286443417244e-04, 4.124382172883880177e-04, 4.114179964868546423e-04, 4.103971679338307491e-04, 4.093757333241607437e-04, 4.083536943535936905e-04, 4.073310527188066222e-04, 4.063078101173540706e-04, 4.052839682475994367e-04, 4.042595288088467751e-04, 4.032344935012699958e-04, 4.022088640258420660e-04, 4.011826420844707519e-04, 4.001558293798981674e-04, 3.991284276157542254e-04, 3.981004384964747264e-04, 3.970718637273268911e-04, 3.960427050145670582e-04, 3.950129640651596583e-04, 3.939826425869178902e-04, 3.929517422886277529e-04, 3.919202648797598647e-04, 3.908882120707335753e-04, 3.898555855727109669e-04, 3.888223870977504859e-04, 3.877886183587433543e-04, 3.867542810693325801e-04, 3.857193769440550417e-04, 3.846839076982649431e-04, 3.836478750480644254e-04, 3.826112807104406640e-04, 3.815741264031869925e-04, 3.805364138448405617e-04, 3.794981447548096245e-04, 3.784593208533053397e-04, 3.774199438612699437e-04, 3.763800155005337430e-04, 3.753395374936286310e-04, 3.742985115639473038e-04, 3.732569394356693169e-04, 3.722148228336907751e-04, 3.711721634837600748e-04, 3.701289631124028766e-04, 3.690852234468561862e-04, 3.680409462151954772e-04, 3.669961331462703435e-04, 3.659507859696275209e-04, 3.649049064156508577e-04, 3.638584962154822766e-04, 3.628115571009567220e-04, 3.617640908047585024e-04, 3.607160990602092747e-04, 3.596675836015432687e-04, 3.586185461636040355e-04, 3.575689884819806242e-04, 3.565189122931444613e-04, 3.554683193341649111e-04, 3.544172113428727187e-04, 3.533655900578783335e-04, 3.523134572184997548e-04, 3.512608145648082859e-04, 3.502076638375264017e-04, 3.491540067781715145e-04, 3.480998451289810548e-04, 3.470451806328364152e-04, 3.459900150334054686e-04, 3.449343500750634214e-04, 3.438781875028494995e-04, 3.428215290624835911e-04, 3.417643765005280092e-04, 3.407067315640805545e-04, 3.396485960010526130e-04, 3.385899715599537249e-04, 3.375308599900570883e-04, 3.364712630413210087e-04, 3.354111824643203773e-04, 3.343506200103813831e-04, 3.332895774315085464e-04, 3.322280564803127274e-04, 3.311660589101489286e-04, 3.301035864750422977e-04, 3.290406409296149984e-04, 3.279772240292239040e-04, 3.269133375298860587e-04, 3.258489831882117817e-04, 3.247841627615320617e-04, 3.237188780078337214e-04, 3.226531306856838480e-04, 3.215869225543885757e-04, 3.205202553737824243e-04, 3.194531309045045542e-04, 3.183855509076947022e-04, 3.173175171451475172e-04, 3.162490313793397197e-04, 3.151800953733772470e-04, 3.141107108909226117e-04, 3.130408796963336793e-04, 3.119706035545644096e-04, 3.108998842312114775e-04, 3.098287234924146892e-04, 3.087571231049999879e-04, 3.076850848364000909e-04, 3.066126104546070008e-04, 3.055397017281948286e-04, 3.044663604264790085e-04, 3.033925883192301770e-04, 3.023183871768380499e-04, 3.012437587703327814e-04, 3.001687048713092866e-04, 2.990932272519708263e-04, 2.980173276850353863e-04, 2.969410079438704439e-04, 2.958642698024213560e-04, 2.947871150351385008e-04, 2.937095454171119360e-04, 2.926315627240033647e-04, 2.915531687319667721e-04, 2.904743652177909437e-04, 2.893951539588253603e-04, 2.883155367329047372e-04, 2.872355153184883987e-04, 2.861550914945881785e-04, 2.850742670406916581e-04, 2.839930437369259900e-04, 2.829114233638690837e-04, 2.818294077027057309e-04, 2.807469985351595176e-04, 2.796641976434144903e-04, 2.785810068102581626e-04, 2.774974278190061629e-04, 2.764134624534264487e-04, 2.753291124978796568e-04, 2.742443797372469492e-04, 2.731592659568528726e-04, 2.720737729426070633e-04, 2.709879024809296543e-04, 2.699016563586751098e-04, 2.688150363632992468e-04, 2.677280442826376785e-04, 2.666406819051942117e-04, 2.655529510198223627e-04, 2.644648534158940589e-04, 2.633763908833171492e-04, 2.622875652124868309e-04, 2.611983781942106781e-04, 2.601088316198466597e-04, 2.590189272812097360e-04, 2.579286669706114320e-04, 2.568380524807640478e-04, 2.557470856049200332e-04, 2.546557681368000507e-04, 2.535641018705381148e-04, 2.524720886007032219e-04, 2.513797301224687569e-04, 2.502870282313169941e-04, 2.491939847231793384e-04, 2.481006013945833972e-04, 2.470068800423314069e-04, 2.459128224637890090e-04, 2.448184304566653206e-04, 2.437237058191788440e-04, 2.426286503499802444e-04, 2.415332658480793019e-04, 2.404375541129863728e-04, 2.393415169446362514e-04, 2.382451561433137125e-04, 2.371484735097927228e-04, 2.360514708452660494e-04, 2.349541499512648117e-04, 2.338565126298040083e-04, 2.327585606833050243e-04, 2.316602959145213627e-04, 2.305617201267032811e-04, 2.294628351234036918e-04, 2.283636427086432863e-04, 2.272641446868343702e-04, 2.261643428627065132e-04, 2.250642390414474964e-04, 2.239638350286300467e-04, 2.228631326301331510e-04, 2.217621336522864720e-04, 2.206608399017956194e-04, 2.195592531856625697e-04, 2.184573753113328465e-04, 2.173552080865920333e-04, 2.162527533196133430e-04, 2.151500128188563535e-04, 2.140469883932116400e-04, 2.129436818519222249e-04, 2.118400950045344362e-04, 2.107362296609157964e-04, 2.096320876314286855e-04, 2.085276707266282272e-04, 2.074229807574341626e-04, 2.063180195351511784e-04, 2.052127888713912518e-04, 2.041072905781236857e-04, 2.030015264675688027e-04, 2.018954983523463731e-04, 2.007892080453960876e-04, 1.996826573599036155e-04, 1.985758481094423370e-04, 1.974687821078983431e-04, 1.963614611693945415e-04, 1.952538871084322539e-04, 1.941460617398165411e-04, 1.930379868785810679e-04, 1.919296643401526307e-04, 1.908210959401557846e-04, 1.897122834945804066e-04, 1.886032288197043104e-04, 1.874939337320174614e-04, 1.863844000483667440e-04, 1.852746295858777911e-04, 1.841646241618797404e-04, 1.830543855940487013e-04, 1.819439157003325657e-04, 1.808332162988728368e-04, 1.797222892081495329e-04, 1.786111362469037210e-04, 1.774997592340622191e-04, 1.763881599888823099e-04, 1.752763403308486877e-04, 1.741643020797206210e-04, 1.730520470554560309e-04, 1.719395770782308991e-04, 1.708268939686106525e-04, 1.697139995472516012e-04, 1.686008956350687731e-04, 1.674875840532591160e-04, 1.663740666232493468e-04, 1.652603451666164803e-04, 1.641464215052370961e-04, 1.630322974611813313e-04, 1.619179748567624820e-04, 1.608034555144338424e-04, 1.596887412569335534e-04, 1.585738339072091153e-04, 1.574587352883629612e-04, 1.563434472236750620e-04, 1.552279715367745289e-04, 1.541123100513119403e-04, 1.529964645912567115e-04, 1.518804369806683006e-04, 1.507642290438692475e-04, 1.496478426053655388e-04, 1.485312794897703892e-04, 1.474145415219512312e-04, 1.462976305269497019e-04, 1.451805483299059378e-04, 1.440632967562046447e-04, 1.429458776313970614e-04, 1.418282927811223830e-04, 1.407105440312573261e-04, 1.395926332078345424e-04, 1.384745621369670504e-04, 1.373563326449949817e-04, 1.362379465584069495e-04, 1.351194057037620943e-04, 1.340007119078629599e-04, 1.328818669975517178e-04, 1.317628727998819860e-04, 1.306437311420423927e-04, 1.295244438512760203e-04, 1.284050127550301335e-04, 1.272854396808761651e-04, 1.261657264564330905e-04, 1.250458749095134420e-04, 1.239258868680463037e-04, 1.228057641599980836e-04, 1.216855086135213332e-04, 1.205651220568495808e-04, 1.194446063183455506e-04, 1.183239632264244831e-04, 1.172031946095732031e-04, 1.160823022965244597e-04, 1.149612881159527936e-04, 1.138401538966476984e-04, 1.127189014675345722e-04, 1.115975326576214294e-04, 1.104760492959227353e-04, 1.093544532116041745e-04, 1.082327462338812776e-04, 1.071109301920664624e-04, 1.059890069154645434e-04, 1.048669782335214580e-04, 1.037448459757448345e-04, 1.026226119716279895e-04, 1.015002780507946425e-04, 1.003778460429218417e-04, 9.925531777766308141e-05, 9.813269508479414017e-05, 9.700997979413457123e-05, 9.588717373547178127e-05, 9.476427873873051824e-05, 9.364129663377229404e-05, 9.251822925056529248e-05, 9.139507841910796018e-05, 9.027184596935070005e-05, 8.914853373134179134e-05, 8.802514353515083145e-05, 8.690167721079017187e-05, 8.577813658836177342e-05, 8.465452349797987551e-05, 8.353083976969174096e-05, 8.240708723362642210e-05, 8.128326771991523450e-05, 8.015938305861473802e-05, 7.903543507987791875e-05, 7.791142561372776693e-05, 7.678735649035220705e-05, 7.566322953977779367e-05, 7.453904659201584832e-05, 7.341480947721011423e-05, 7.229052002533304429e-05, 7.116618006635820268e-05, 7.004179143028284337e-05, 6.891735594707378140e-05, 6.779287544659067194e-05, 6.666835175873155094e-05, 6.554378671333162482e-05, 6.441918214020894251e-05, 6.329453986906150465e-05, 6.216986172961571798e-05, 6.104514955154616437e-05, 5.992040516442469076e-05, 5.879563039774140880e-05, 5.767082708107635117e-05, 5.654599704377280821e-05, 5.542114211523315928e-05, 5.429626412469143427e-05, 5.317136490138523413e-05, 5.204644627447781743e-05, 5.092151007298007848e-05, 4.979655812589748378e-05, 4.867159226215244993e-05, 4.754661431050585422e-05, 4.642162609970451316e-05, 4.529662945840331648e-05, 4.417162621508638530e-05, 4.304661819821497084e-05, 4.192160723614969680e-05, 4.079659515707140585e-05, 3.967158378915432024e-05, 3.854657496036272002e-05, 3.742157049862259257e-05, 3.629657223174452552e-05, 3.517158198731956231e-05, 3.404660159299267191e-05, 3.292163287613340881e-05, 3.179667766400865359e-05, 3.067173778380488642e-05, 2.954681506257448523e-05, 2.842191132715837128e-05, 2.729702840433290495e-05, 2.617216812073179950e-05, 2.504733230276802124e-05, 2.392252277678134269e-05, 2.279774136893503500e-05, 2.167298990526278008e-05, 2.054827021159098409e-05, 1.942358411356053265e-05, 1.829893343679943308e-05, 1.717432000661912940e-05, 1.604974564818671088e-05, 1.492521218654744989e-05, 1.380072144654631247e-05, 1.267627525287528201e-05, 1.155187542997007042e-05, 1.042752380215763903e-05, 9.303222193578010693e-06, 8.178972428106056461e-06, 7.054776329499024157e-06, 5.930635721318384334e-06, 4.806552426876660329e-06, 3.682528269259623065e-06, 2.558565071498800743e-06, 1.434664656242601789e-06, 3.108288460542378299e-07, -8.129405368168781089e-07, -1.936641670262587816e-06, -3.060272732394162048e-06, -4.183831901620403423e-06, -5.307317356500240564e-06, -6.430727275820884247e-06, -7.554059838675873445e-06, -8.677313224317771635e-06, -9.800485612236221737e-06, -1.092357518223605017e-05, -1.204658011428993140e-05, -1.316949858861649285e-05, -1.429232878575830970e-05, -1.541506888643468377e-05, -1.653771707161965019e-05, -1.766027152262012633e-05, -1.878273042090342204e-05, -1.990509194832564883e-05, -2.102735428683422499e-05, -2.214951561879614826e-05, -2.327157412682588216e-05, -2.439352799376316366e-05, -2.551537540272586491e-05, -2.663711453718819463e-05, -2.775874358083367014e-05, -2.888026071763249896e-05, -3.000166413192027827e-05, -3.112295200825035369e-05, -3.224412253149694390e-05, -3.336517388680823528e-05, -3.448610425968401080e-05, -3.560691183595380676e-05, -3.672759480160476858e-05, -3.784815134308459043e-05, -3.896857964715440254e-05, -4.008887790074176018e-05, -4.120904429126847252e-05, -4.232907700635380225e-05, -4.344897423404191092e-05, -4.456873416263037877e-05, -4.568835498074741349e-05, -4.680783487743072594e-05, -4.792717204197948909e-05, -4.904636466403261748e-05, -5.016541093364724980e-05, -5.128430904115071476e-05, -5.240305717721898657e-05, -5.352165353295482885e-05, -5.464009629973996368e-05, -5.575838366931371688e-05, -5.687651383385082987e-05, -5.799448498578865140e-05, -5.911229531803115727e-05, -6.022994302377618272e-05, -6.134742629659330204e-05, -6.246474333050195890e-05, -6.358189231982455691e-05, -6.469887145926386492e-05, -6.581567894398152681e-05, -6.693231296945014916e-05, -6.804877173153244809e-05, -6.916505342655775320e-05, -7.028115625117614174e-05, -7.139707840243529505e-05, -7.251281807785921153e-05, -7.362837347527583214e-05, -7.474374279304472283e-05, -7.585892422976069430e-05, -7.697391598458068896e-05, -7.808871625707674961e-05, -7.920332324709068207e-05, -8.031773515503462318e-05, -8.143195018172011629e-05, -8.254596652833599358e-05, -8.365978239652611329e-05, -8.477339598834241386e-05, -8.588680550634716763e-05, -8.700000915346660011e-05, -8.811300513306938613e-05, -8.922579164904242206e-05, -9.033836690564584090e-05, -9.145072910758959752e-05, -9.256287646008743493e-05, -9.367480716883322151e-05, -9.478651943983128691e-05, -9.589801147972138460e-05, -9.700928149548393789e-05, -9.812032769466638076e-05, -9.923114828521203002e-05, -1.003417414755376058e-04, -1.014521054746111994e-04, -1.025622384918047807e-04, -1.036721387369724917e-04, -1.047818044205286271e-04, -1.058912337533000480e-04, -1.070004249466047994e-04, -1.081093762123285065e-04, -1.092180857627793078e-04, -1.103265518107641562e-04, -1.114347725696673152e-04, -1.125427462532780791e-04, -1.136504710759934510e-04, -1.147579452526470965e-04, -1.158651669985855494e-04, -1.169721345297716991e-04, -1.180788460625146341e-04, -1.191852998137936425e-04, -1.202914940010886970e-04, -1.213974268423588656e-04, -1.225030965560930526e-04, -1.236085013613896192e-04, -1.247136394778076041e-04, -1.258185091254714711e-04, -1.269231085250232280e-04, -1.280274358977238805e-04, -1.291314894653084475e-04, -1.302352674500633733e-04, -1.313387680748772410e-04, -1.324419895632213378e-04, -1.335449301389771322e-04, -1.346475880267370036e-04, -1.357499614516339691e-04, -1.368520486393197822e-04, -1.379538478160416946e-04, -1.390553572085959978e-04, -1.401565750444293962e-04, -1.412574995514942120e-04, -1.423581289583256615e-04, -1.434584614941169362e-04, -1.445584953885758171e-04, -1.456582288720016801e-04, -1.467576601753600349e-04, -1.478567875301401693e-04, -1.489556091684303657e-04, -1.500541233229943643e-04, -1.511523282271279506e-04, -1.522502221147348494e-04, -1.533478032204021850e-04, -1.544450697792330537e-04, -1.555420200270451222e-04, -1.566386522002016551e-04, -1.577349645356881133e-04, -1.588309552711878315e-04, -1.599266226449385785e-04, -1.610219648958080986e-04, -1.621169802633728790e-04, -1.632116669877693162e-04, -1.643060233097744076e-04, -1.654000474708803984e-04, -1.664937377131506919e-04, -1.675870922792954448e-04, -1.686801094127489528e-04, -1.697727873575013817e-04, -1.708651243583194843e-04, -1.719571186604589073e-04, -1.730487685099829198e-04, -1.741400721535949305e-04, -1.752310278386168317e-04, -1.763216338130396579e-04, -1.774118883256009711e-04, -1.785017896256409328e-04, -1.795913359632015629e-04, -1.806805255889826938e-04, -1.817693567544412291e-04, -1.828578277116464841e-04, -1.839459367133589800e-04, -1.850336820130789621e-04, -1.861210618650277514e-04, -1.872080745239763054e-04, -1.882947182455443219e-04, -1.893809912860548207e-04, -1.904668919023904598e-04, -1.915524183523131308e-04, -1.926375688941765643e-04, -1.937223417871449048e-04, -1.948067352910276139e-04, -1.958907476663545243e-04, -1.969743771744504601e-04, -1.980576220772951304e-04, -1.991404806375946326e-04, -2.002229511188613855e-04, -2.013050317852671653e-04, -2.023867209017229300e-04, -2.034680167339505399e-04, -2.045489175483419461e-04, -2.056294216120348954e-04, -2.067095271929877943e-04, -2.077892325598123353e-04, -2.088685359819718518e-04, -2.099474357296118572e-04, -2.110259300736391644e-04, -2.121040172857924678e-04, -2.131816956385051368e-04, -2.142589634049764488e-04, -2.153358188592482958e-04, -2.164122602760644822e-04, -2.174882859309428245e-04, -2.185638941002531052e-04, -2.196390830610742020e-04, -2.207138510912907991e-04, -2.217881964695542197e-04, -2.228621174753744752e-04, -2.239356123889817314e-04, -2.250086794914029069e-04, -2.260813170645089177e-04, -2.271535233909964080e-04, -2.282252967542208917e-04, -2.292966354384869663e-04, -2.303675377288857365e-04, -2.314380019112697695e-04, -2.325080262723316449e-04, -2.335776090995553289e-04, -2.346467486813175738e-04, -2.357154433067445054e-04, -2.367836912657888182e-04, -2.378514908493018745e-04, -2.389188403488931383e-04, -2.399857380570070173e-04, -2.410521822669952610e-04, -2.421181712729765566e-04, -2.431837033699099291e-04, -2.442487768536713132e-04, -2.453133900208884026e-04, -2.463775411691336917e-04, -2.474412285967598395e-04, -2.485044506029761876e-04, -2.495672054879187452e-04, -2.506294915525158562e-04, -2.516913070985561792e-04, -2.527526504287666413e-04, -2.538135198466723590e-04, -2.548739136566685755e-04, -2.559338301640972594e-04, -2.569932676751038271e-04, -2.580522244967150972e-04, -2.591106989369099806e-04, -2.601686893044818406e-04, -2.612261939091342828e-04, -2.622832110614393584e-04, -2.633397390729065200e-04, -2.643957762559676051e-04, -2.654513209238085680e-04, -2.665063713906595582e-04, -2.675609259716303385e-04, -2.686149829826889259e-04, -2.696685407407144468e-04, -2.707215975635662007e-04, -2.717741517699483514e-04, -2.728262016795050121e-04, -2.738777456127789367e-04, -2.749287818913023762e-04, -2.759793088374644810e-04, -2.770293247745824242e-04, -2.780788280269485646e-04, -2.791278169198145088e-04, -2.801762897792246321e-04, -2.812242449323270818e-04, -2.822716807070943783e-04, -2.833185954325357020e-04, -2.843649874385362143e-04, -2.854108550559314884e-04, -2.864561966165773315e-04, -2.875010104532146394e-04, -2.885452948995420922e-04, -2.895890482902873319e-04, -2.906322689610706242e-04, -2.916749552484762531e-04, -2.927171054901277648e-04, -2.937587180245475088e-04, -2.947997911912329664e-04, -2.958403233307245668e-04, -2.968803127844733608e-04, -2.979197578949086206e-04, -2.989586570055149267e-04, -2.999970084606700792e-04, -3.010348106058334246e-04, -3.020720617873838749e-04, -3.031087603526981338e-04, -3.041449046502168866e-04, -3.051804930293092752e-04, -3.062155238403494969e-04, -3.072499954347832117e-04, -3.082839061649951615e-04, -3.093172543843802393e-04, -3.103500384474131490e-04, -3.113822567095159708e-04, -3.124139075271500465e-04, -3.134449892577766236e-04, -3.144755002599217988e-04, -3.155054388931637782e-04, -3.165348035179682421e-04, -3.175635924959728388e-04, -3.185918041898203263e-04, -3.196194369631479471e-04, -3.206464891806295493e-04, -3.216729592080482284e-04, -3.226988454121632413e-04, -3.237241461608025969e-04, -3.247488598228196344e-04, -3.257729847681887581e-04, -3.267965193678693155e-04, -3.278194619938755287e-04, -3.288418110193532017e-04, -3.298635648184372561e-04, -3.308847217663295768e-04, -3.319052802393666120e-04, -3.329252386148862878e-04, -3.339445952712966916e-04, -3.349633485881524549e-04, -3.359814969459906588e-04, -3.369990387265208950e-04, -3.380159723124671889e-04, -3.390322960876370633e-04, -3.400480084369963485e-04, -3.410631077465283985e-04, -3.420775924033141592e-04, -3.430914607955949983e-04, -3.441047113126402698e-04, -3.451173423448236958e-04, -3.461293522836863049e-04, -3.471407395218086586e-04, -3.481515024528778553e-04, -3.491616394717614183e-04, -3.501711489743452080e-04, -3.511800293577481478e-04, -3.521882790200466201e-04, -3.531958963605730554e-04, -3.542028797797843105e-04, -3.552092276791269016e-04, -3.562149384613096819e-04, -3.572200105301520526e-04, -3.582244422905602192e-04, -3.592282321485752218e-04, -3.602313785114456303e-04, -3.612338797874914235e-04, -3.622357343862023802e-04, -3.632369407181860912e-04, -3.642374971952697126e-04, -3.652374022303635725e-04, -3.662366542375295841e-04, -3.672352516320328544e-04, -3.682331928303169636e-04, -3.692304762498539120e-04, -3.702271003094345235e-04, -3.712230634289034664e-04, -3.722183640293663903e-04, -3.732130005330277296e-04, -3.742069713632684407e-04, -3.752002749447130056e-04, -3.761929097030961293e-04, -3.771848740653319662e-04, -3.781761664595881711e-04, -3.791667853151502654e-04, -3.801567290624891828e-04, -3.811459961333359711e-04, -3.821345849605505495e-04, -3.831224939781847005e-04, -3.841097216215561211e-04, -3.850962663270952250e-04, -3.860821265325243613e-04, -3.870673006767036948e-04, -3.880517871997035228e-04, -3.890355845428905232e-04, -3.900186911486941085e-04, -3.910011054608869639e-04, -3.919828259244394382e-04, -3.929638509854980772e-04, -3.939441790914340871e-04, -3.949238086909083868e-04, -3.959027382337432384e-04, -3.968809661709909314e-04, -3.978584909550047979e-04, -3.988353110393036329e-04, -3.998114248786697068e-04, -4.007868309291015476e-04, -4.017615276478824632e-04, -4.027355134935642778e-04, -4.037087869258144056e-04, -4.046813464056816427e-04, -4.056531903954446500e-04, -4.066243173585923831e-04, -4.075947257598923974e-04, -4.085644140653519794e-04, -4.095333807423042860e-04, -4.105016242592803011e-04, -4.114691430860797417e-04, -4.124359356938348095e-04, -4.134020005548847483e-04, -4.143673361428429564e-04, -4.153319409326412760e-04, -4.162958134005151399e-04, -4.172589520238461996e-04, -4.182213552814561977e-04, -4.191830216533404176e-04, -4.201439496208728142e-04, -4.211041376666480453e-04, -4.220635842745588300e-04, -4.230222879298552543e-04, -4.239802471190226357e-04, -4.249374603298438648e-04, -4.258939260514715049e-04, -4.268496427742965492e-04, -4.278046089900182977e-04, -4.287588231917109811e-04, -4.297122838736951752e-04, -4.306649895316061048e-04, -4.316169386624614610e-04, -4.325681297645316763e-04, -4.335185613374110481e-04, -4.344682318820814360e-04, -4.354171399007627499e-04, -4.363652838971137445e-04, -4.373126623759748463e-04, -4.382592738436447881e-04, -4.392051168077377109e-04, -4.401501897771669010e-04, -4.410944912621800806e-04, -4.420380197744355733e-04, -4.429807738268708986e-04, -4.439227519337737328e-04, -4.448639526108413779e-04, -4.458043743750632337e-04, -4.467440157448005953e-04, -4.476828752397541268e-04, -4.486209513810226254e-04, -4.495582426910884385e-04, -4.504947476936737531e-04, -4.514304649139881729e-04, -4.523653928786134683e-04, -4.532995301153744470e-04, -4.542328751536156973e-04, -4.551654265239527637e-04, -4.560971827584623154e-04, -4.570281423905380022e-04, -4.579583039549564279e-04, -4.588876659879388958e-04, -4.598162270270351819e-04, -4.607439856111795887e-04, -4.616709402807625561e-04, -4.625970895775064666e-04, -4.635224320445260893e-04, -4.644469662264031186e-04, -4.653706906690502159e-04, -4.662936039197889087e-04, -4.672157045274019584e-04, -4.681369910420026047e-04, -4.690574620151919923e-04, -4.699771159999235372e-04, -4.708959515505641296e-04, -4.718139672229598367e-04, -4.727311615743108402e-04, -4.736475331632423970e-04, -4.745630805498594288e-04, -4.754778022956362591e-04, -4.763916969634701183e-04, -4.773047631177527008e-04, -4.782169993242471628e-04, -4.791284041501463436e-04, -4.800389761641463290e-04, -4.809487139362972645e-04, -4.818576160381942840e-04, -4.827656810427333471e-04, -4.836729075243739956e-04, -4.845792940590309332e-04, -4.854848392239414817e-04, -4.863895415979173332e-04, -4.872933997612076689e-04, -4.881964122954759577e-04, -4.890985777838647913e-04, -4.899998948109566361e-04, -4.909003619628618705e-04, -4.917999778270910113e-04, -4.926987409926250790e-04, -4.935966500499765295e-04, -4.944937035910674985e-04, -4.953899002092960460e-04, -4.962852384995748625e-04, -4.971797170583189089e-04, -4.980733344833012180e-04, -4.989660893739191741e-04, -4.998579803309566392e-04, -5.007490059567616539e-04, -5.016391648551162246e-04, -5.025284556312928103e-04, -5.034168768921157971e-04, -5.043044272458477653e-04, -5.051911053022492288e-04, -5.060769096726448800e-04, -5.069618389697969551e-04, -5.078458918079742975e-04, -5.087290668030158922e-04, -5.096113625722044479e-04, -5.104927777343392552e-04, -5.113733109097913726e-04, -5.122529607203673424e-04, -5.131317257894699776e-04, -5.140096047419678241e-04, -5.148865962042459016e-04, -5.157626988042937404e-04, -5.166379111714915770e-04, -5.175122319368651415e-04, -5.183856597329514334e-04, -5.192581931937815913e-04, -5.201298309549190566e-04, -5.210005716535275532e-04, -5.218704139282490063e-04, -5.227393564192843152e-04, -5.236073977683624540e-04, -5.244745366188137631e-04, -5.253407716154594696e-04, -5.262061014046684991e-04, -5.270705246344037712e-04, -5.279340399541969375e-04, -5.287966460150264093e-04, -5.296583414695375585e-04, -5.305191249719229136e-04, -5.313789951778951628e-04, -5.322379507447531823e-04, -5.330959903313391016e-04, -5.339531125981277502e-04, -5.348093162071004564e-04, -5.356645998218183399e-04, -5.365189621074688232e-04, -5.373724017307618742e-04, -5.382249173599864926e-04, -5.390765076650712090e-04, -5.399271713174675323e-04, -5.407769069902155449e-04, -5.416257133579957268e-04, -5.424735890970279082e-04, -5.433205328851149632e-04, -5.441665434017164266e-04, -5.450116193278106919e-04, -5.458557593460457158e-04, -5.466989621406168282e-04, -5.475412263973194246e-04, -5.483825508036096813e-04, -5.492229340484916901e-04, -5.500623748225779569e-04, -5.509008718181513092e-04, -5.517384237290412973e-04, -5.525750292507003057e-04, -5.534106870802499561e-04, -5.542453959163693268e-04, -5.550791544593652090e-04, -5.559119614112165587e-04, -5.567438154754543672e-04, -5.575747153573276530e-04, -5.584046597635858615e-04, -5.592336474027150050e-04, -5.600616769848195927e-04, -5.608887472215971521e-04, -5.617148568263860423e-04, -5.625400045142131588e-04, -5.633641890016926690e-04, -5.641874090071013646e-04, -5.650096632503336666e-04, -5.658309504529967105e-04, -5.666512693382801330e-04, -5.674706186310292562e-04, -5.682889970577756616e-04, -5.691064033467262400e-04, -5.699228362276292925e-04, -5.707382944320051402e-04, -5.715527766930318491e-04, -5.723662817454376779e-04, -5.731788083257474079e-04, -5.739903551720541191e-04, -5.748009210241966736e-04, -5.756105046236273349e-04, -5.764191047134686885e-04, -5.772267200385714295e-04, -5.780333493454097374e-04, -5.788389913821312578e-04, -5.796436448986205282e-04, -5.804473086463873052e-04, -5.812499813786259784e-04, -5.820516618502663119e-04, -5.828523488178762989e-04, -5.836520410397099757e-04, -5.844507372757657511e-04, -5.852484362876640006e-04, -5.860451368387929998e-04, -5.868408376941802295e-04, -5.876355376205518984e-04, -5.884292353863947427e-04, -5.892219297618344872e-04, -5.900136195187063179e-04, -5.908043034306076835e-04, -5.915939802727854290e-04, -5.923826488221972707e-04, -5.931703078575701260e-04, -5.939569561592829110e-04, -5.947425925094572885e-04, -5.955272156919083366e-04, -5.963108244922087336e-04, -5.970934176976672907e-04, -5.978749940972124003e-04, -5.986555524816028050e-04, -5.994350916433224298e-04, -6.002136103764780335e-04, -6.009911074770163744e-04, -6.017675817425928051e-04, -6.025430319725670440e-04, -6.033174569680496875e-04, -6.040908555318721777e-04, -6.048632264686560830e-04, -6.056345685847168208e-04, -6.064048806881085435e-04, -6.071741615886866970e-04, -6.079424100979972153e-04, -6.087096250293386451e-04, -6.094758051978108266e-04, -6.102409494202131954e-04, -6.110050565151004020e-04, -6.117681253028364134e-04, -6.125301546054711310e-04, -6.132911432468861074e-04, -6.140510900526709474e-04, -6.148099938501792525e-04, -6.155678534685800124e-04, -6.163246677387624120e-04, -6.170804354933772480e-04, -6.178351555669001375e-04, -6.185888267955333983e-04, -6.193414480172442123e-04, -6.200930180718314125e-04, -6.208435358008231346e-04, -6.215930000475194256e-04, -6.223414096570616333e-04, -6.230887634763162880e-04, -6.238350603539540322e-04, -6.245802991404156854e-04, -6.253244786879615753e-04, -6.260675978506654660e-04, -6.268096554842821772e-04, -6.275506504464683274e-04, -6.282905815966585185e-04, -6.290294477960465787e-04, -6.297672479076297982e-04, -6.305039807962534897e-04, -6.312396453285151450e-04, -6.319742403728351252e-04, -6.327077647994194722e-04, -6.334402174803359115e-04, -6.341715972894081425e-04, -6.349019031022718916e-04, -6.356311337964077636e-04, -6.363592882511294241e-04, -6.370863653474658547e-04, -6.378123639683797117e-04, -6.385372829985694592e-04, -6.392611213246234339e-04, -6.399838778349026432e-04, -6.407055514195880361e-04, -6.414261409707447967e-04, -6.421456453822094786e-04, -6.428640635496525634e-04, -6.435813943706224791e-04, -6.442976367444525759e-04, -6.450127895723119752e-04, -6.457268517572512141e-04, -6.464398222041167026e-04, -6.471516998195894288e-04, -6.478624835122401456e-04, -6.485721721924380800e-04, -6.492807647723937599e-04, -6.499882601662140911e-04, -6.506946572897900341e-04, -6.513999550609234556e-04, -6.521041523992234792e-04, -6.528072482261508287e-04, -6.535092414650674848e-04, -6.542101310411451787e-04, -6.549099158814120124e-04, -6.556085949148056933e-04, -6.563061670720753051e-04, -6.570026312858361691e-04, -6.576979864906094169e-04, -6.583922316227431692e-04, -6.590853656204585060e-04, -6.597773874238396005e-04, -6.604682959748692803e-04, -6.611580902174158010e-04, -6.618467690971333158e-04, -6.625343315616419619e-04, -6.632207765604216081e-04, -6.639061030448036157e-04, -6.645903099679967502e-04, -6.652733962851447528e-04, -6.659553609532208474e-04, -6.666362029310999486e-04, -6.673159211795339418e-04, -6.679945146612043753e-04, -6.686719823406381095e-04, -6.693483231842539379e-04, -6.700235361603952208e-04, -6.706976202393118884e-04, -6.713705743930611274e-04, -6.720423975957071994e-04, -6.727130888231453668e-04, -6.733826470531783289e-04, -6.740510712655576383e-04, -6.747183604418698598e-04, -6.753845135656769746e-04, -6.760495296223995032e-04, -6.767134075993607410e-04, -6.773761464858507261e-04, -6.780377452730158676e-04, -6.786982029539222628e-04, -6.793575185235908257e-04, -6.800156909789174895e-04, -6.806727193187136473e-04, -6.813286025437587361e-04, -6.819833396567001648e-04, -6.826369296621163062e-04, -6.832893715665501076e-04, -6.839406643784102114e-04, -6.845908071081065888e-04, -6.852397987678732726e-04, -6.858876383719624296e-04, -6.865343249365453730e-04, -6.871798574796964074e-04, -6.878242350214175491e-04, -6.884674565837013011e-04, -6.891095211904253769e-04, -6.897504278674077786e-04, -6.903901756424517906e-04, -6.910287635452564249e-04, -6.916661906074825575e-04, -6.923024558627151976e-04, -6.929375583465332026e-04, -6.935714970964186382e-04, -6.942042711518024234e-04, -6.948358795540910023e-04, -6.954663213466635244e-04, -6.960955955747585465e-04, -6.967237012856775363e-04, -6.973506375285993663e-04, -6.979764033547221271e-04, -6.986009978171591524e-04, -6.992244199709823872e-04, -6.998466688732692250e-04, -7.004677435830189165e-04, -7.010876431611932262e-04, -7.017063666707619701e-04, -7.023239131766226750e-04, -7.029402817456396110e-04, -7.035554714466895438e-04, -7.041694813505811794e-04, -7.047823105300914841e-04, -7.053939580600171845e-04, -7.060044230170757799e-04, -7.066137044800134201e-04, -7.072218015295165432e-04, -7.078287132482515573e-04, -7.084344387209194844e-04, -7.090389770341080748e-04, -7.096423272764727612e-04, -7.102444885386375618e-04, -7.108454599131903105e-04, -7.114452404947059667e-04, -7.120438293797833702e-04, -7.126412256669815981e-04, -7.132374284568429503e-04, -7.138324368519490025e-04, -7.144262499568360385e-04, -7.150188668780455741e-04, -7.156102867241061422e-04, -7.162005086055696140e-04, -7.167895316350079461e-04, -7.173773549269047605e-04, -7.179639775978330449e-04, -7.185493987663568163e-04, -7.191336175530133393e-04, -7.197166330803641925e-04, -7.202984444729678380e-04, -7.208790508574273266e-04, -7.214584513623172220e-04, -7.220366451182243673e-04, -7.226136312577913614e-04, -7.231894089156328583e-04, -7.237639772283775263e-04, -7.243373353347025249e-04, -7.249094823753116047e-04, -7.254804174928544420e-04, -7.260501398320880770e-04, -7.266186485397296791e-04, -7.271859427645688701e-04, -7.277520216573844574e-04, -7.283168843709822730e-04, -7.288805300602276991e-04, -7.294429578819836522e-04, -7.300041669951366037e-04, -7.305641565606441762e-04, -7.311229257414616350e-04, -7.316804737025707278e-04, -7.322367996110328101e-04, -7.327919026359041698e-04, -7.333457819482757083e-04, -7.338984367213189112e-04, -7.344498661302045327e-04, -7.350000693521452052e-04, -7.355490455664332773e-04, -7.360967939543532111e-04, -7.366433136992966155e-04, -7.371886039866136020e-04, -7.377326640037791018e-04, -7.382754929402970219e-04, -7.388170899876998115e-04, -7.393574543395698209e-04, -7.398965851915806097e-04, -7.404344817414172577e-04, -7.409711431888173477e-04, -7.415065687356194295e-04, -7.420407575856734651e-04, -7.425737089449011095e-04, -7.431054220212697991e-04, -7.436358960248335174e-04, -7.441651301677203265e-04, -7.446931236640425954e-04, -7.452198757300548598e-04, -7.457453855840555932e-04, -7.462696524463970733e-04, -7.467926755394971999e-04, -7.473144540878386274e-04, -7.478349873180047602e-04, -7.483542744586155681e-04, -7.488723147403639072e-04, -7.493891073960433835e-04, -7.499046516604946852e-04, -7.504189467706290015e-04, -7.509319919654654273e-04, -7.514437864860700313e-04, -7.519543295755848041e-04, -7.524636204792648463e-04, -7.529716584444135332e-04, -7.534784427204129810e-04, -7.539839725587623191e-04, -7.544882472129983263e-04, -7.549912659387904073e-04, -7.554930279938560245e-04, -7.559935326380046085e-04, -7.564927791331590252e-04, -7.569907667433044014e-04, -7.574874947345146877e-04, -7.579829623749859439e-04, -7.584771689349745390e-04, -7.589701136868300026e-04, -7.594617959050285272e-04, -7.599522148661100839e-04, -7.604413698487079128e-04, -7.609292601335888558e-04, -7.614158850035739924e-04, -7.619012437436367604e-04, -7.623853356407749114e-04, -7.628681599841546012e-04, -7.633497160650452298e-04, -7.638300031767517864e-04, -7.643090206147485320e-04, -7.647867676766089600e-04, -7.652632436619862802e-04, -7.657384478726599313e-04, -7.662123796124955741e-04, -7.666850381875124198e-04, -7.671564229058011565e-04, -7.676265330775655822e-04, -7.680953680151578417e-04, -7.685629270330055678e-04, -7.690292094476541655e-04, -7.694942145777871950e-04, -7.699579417442141199e-04, -7.704203902698003766e-04, -7.708815594795972613e-04, -7.713414487007325343e-04, -7.718000572624906510e-04, -7.722573844962460831e-04, -7.727134297354988808e-04, -7.731681923159005850e-04, -7.736216715751960057e-04, -7.740738668532553147e-04, -7.745247774921116667e-04, -7.749744028358862818e-04, -7.754227422308337643e-04, -7.758697950253650886e-04, -7.763155605699919790e-04, -7.767600382173601948e-04, -7.772032273222700223e-04, -7.776451272416234732e-04, -7.780857373344924818e-04, -7.785250569620474556e-04, -7.789630854876072570e-04, -7.793998222766521057e-04, -7.798352666967434555e-04, -7.802694181176323069e-04, -7.807022759111988163e-04, -7.811338394514492607e-04, -7.815641081145268797e-04, -7.819930812787428834e-04, -7.824207583245299403e-04, -7.828471386344684150e-04, -7.832722215932714062e-04, -7.836960065878328854e-04, -7.841184930071590665e-04, -7.845396802424044018e-04, -7.849595676868912058e-04, -7.853781547361009816e-04, -7.857954407876030804e-04, -7.862114252411809027e-04, -7.866261074987552452e-04, -7.870394869643771449e-04, -7.874515630442703801e-04, -7.878623351467917884e-04, -7.882718026824898135e-04, -7.886799650640351168e-04, -7.890868217062534280e-04, -7.894923720261617581e-04, -7.898966154429033467e-04, -7.902995513777789959e-04, -7.907011792542760183e-04, -7.911014984980224837e-04, -7.915005085367973021e-04, -7.918982088005756519e-04, -7.922945987214575310e-04, -7.926896777337377959e-04, -7.930834452738592163e-04, -7.934759007804169199e-04, -7.938670436942091334e-04, -7.942568734581705037e-04, -7.946453895173988778e-04, -7.950325913191947681e-04, -7.954184783129989019e-04, -7.958030499504140142e-04, -7.961863056852501669e-04, -7.965682449734600226e-04, -7.969488672731616123e-04, -7.973281720446810531e-04, -7.977061587504857615e-04, -7.980828268552207739e-04, -7.984581758257292385e-04, -7.988322051310002645e-04, -7.992049142422359264e-04, -7.995763026327601906e-04, -7.999463697781261434e-04, -8.003151151560563593e-04, -8.006825382464353123e-04, -8.010486385313254215e-04, -8.014134154949993606e-04, -8.017768686238854140e-04, -8.021389974066011957e-04, -8.024998013339386871e-04, -8.028592798988992566e-04, -8.032174325966457383e-04, -8.035742589245206463e-04, -8.039297583820716533e-04, -8.042839304710459533e-04, -8.046367746953179446e-04, -8.049882905610108779e-04, -8.053384775764252986e-04, -8.056873352520109660e-04, -8.060348631004589023e-04, -8.063810606366105362e-04, -8.067259273775356570e-04, -8.070694628424647608e-04, -8.074116665528239612e-04, -8.077525380322571075e-04, -8.080920768065772124e-04, -8.084302824037899789e-04, -8.087671543541220982e-04, -8.091026921899724606e-04, -8.094368954459325383e-04, -8.097697636588160929e-04, -8.101012963676139638e-04, -8.104314931135146683e-04, -8.107603534399217488e-04, -8.110878768924150665e-04, -8.114140630187986151e-04, -8.117389113690627904e-04, -8.120624214953887270e-04, -8.123845929521903656e-04, -8.127054252960553638e-04, -8.130249180857800073e-04, -8.133430708823796186e-04, -8.136598832490599337e-04, -8.139753547512216560e-04, -8.142894849564984031e-04, -8.146022734347097612e-04, -8.149137197578838364e-04, -8.152238235002497732e-04, -8.155325842382616080e-04, -8.158400015505862333e-04, -8.161460750180539589e-04, -8.164508042237507771e-04, -8.167541887529721758e-04, -8.170562281931781443e-04, -8.173569221340852217e-04, -8.176562701676125039e-04, -8.179542718878781739e-04, -8.182509268912164157e-04, -8.185462347761709090e-04, -8.188401951435184643e-04, -8.191328075962317273e-04, -8.194240717394889358e-04, -8.197139871807151198e-04, -8.200025535295244221e-04, -8.202897703977440587e-04, -8.205756373994472792e-04, -8.208601541508924338e-04, -8.211433202705650412e-04, -8.214251353791835342e-04, -8.217055990996591447e-04, -8.219847110571490293e-04, -8.222624708790093233e-04, -8.225388781948166084e-04, -8.228139326363873192e-04, -8.230876338377367610e-04, -8.233599814351056723e-04, -8.236309750669737776e-04, -8.239006143740234666e-04, -8.241688989991571412e-04, -8.244358285875247544e-04, -8.247014027864774067e-04, -8.249656212455905475e-04, -8.252284836166862017e-04, -8.254899895537833130e-04, -8.257501387131434972e-04, -8.260089307532366733e-04, -8.262663653347847564e-04, -8.265224421207285899e-04, -8.267771607762058276e-04, -8.270305209686222743e-04, -8.272825223675931219e-04, -8.275331646449639832e-04, -8.277824474747985314e-04, -8.280303705334104850e-04, -8.282769334993271776e-04, -8.285221360533073396e-04, -8.287659778783367610e-04, -8.290084586596507344e-04, -8.292495780846949154e-04, -8.294893358431450550e-04, -8.297277316269275997e-04, -8.299647651301971397e-04, -8.302004360493100629e-04, -8.304347440828995820e-04, -8.306676889317959368e-04, -8.308992702990888445e-04, -8.311294878900909620e-04, -8.313583414123368017e-04, -8.315858305756215459e-04, -8.318119550919543179e-04, -8.320367146755809499e-04, -8.322601090430020894e-04, -8.324821379129295059e-04, -8.327028010063170990e-04, -8.329220980463713066e-04, -8.331400287585191211e-04, -8.333565928704219673e-04, -8.335717901119950009e-04, -8.337856202153805458e-04, -8.339980829149502622e-04, -8.342091779473361553e-04, -8.344189050513868815e-04, -8.346272639682066714e-04, -8.348342544411280078e-04, -8.350398762157249617e-04, -8.352441290398173119e-04, -8.354470126634576431e-04, -8.356485268389348157e-04, -8.358486713207978177e-04, -8.360474458658149989e-04, -8.362448502330006340e-04, -8.364408841836225121e-04, -8.366355474811789511e-04, -8.368288398914080139e-04, -8.370207611822933630e-04, -8.372113111240630677e-04, -8.374004894891963263e-04, -8.375882960523877959e-04, -8.377747305906022360e-04, -8.379597928830374290e-04, -8.381434827111348051e-04, -8.383257998585731544e-04, -8.385067441112918282e-04, -8.386863152574581051e-04, -8.388645130874916936e-04, -8.390413373940444576e-04, -8.392167879720387972e-04, -8.393908646186156071e-04, -8.395635671331731992e-04, -8.397348953173522325e-04, -8.399048489750530599e-04, -8.400734279123903006e-04, -8.402406319377534469e-04, -8.404064608617644715e-04, -8.405709144972921395e-04, -8.407339926594600311e-04, -8.408956951656264842e-04, -8.410560218354077959e-04, -8.412149724906570810e-04, -8.413725469554768485e-04, -8.415287450562269162e-04, -8.416835666215015345e-04, -8.418370114821418539e-04, -8.419890794712517551e-04, -8.421397704241695512e-04, -8.422890841784822988e-04, -8.424370205740312192e-04, -8.425835794529005314e-04, -8.427287606594203789e-04, -8.428725640401804912e-04, -8.430149894440053552e-04, -8.431560367219843562e-04, -8.432957057274304696e-04, -8.434339963159308935e-04, -8.435709083453126790e-04, -8.437064416756480433e-04, -8.438405961692545861e-04, -8.439733716907168656e-04, -8.441047681068504028e-04, -8.442347852867249916e-04, -8.443634231016682772e-04, -8.444906814252479748e-04, -8.446165601332854224e-04, -8.447410591038414856e-04, -8.448641782172507109e-04, -8.449859173560729693e-04, -8.451062764051259831e-04, -8.452252552514818561e-04, -8.453428537844662064e-04, -8.454590718956350726e-04, -8.455739094788166559e-04, -8.456873664300725056e-04, -8.457994426477298284e-04, -8.459101380323536239e-04, -8.460194524867614306e-04, -8.461273859160245176e-04, -8.462339382274650665e-04, -8.463391093306446783e-04, -8.464428991373920208e-04, -8.465453075617739888e-04, -8.466463345201060038e-04, -8.467459799309675185e-04, -8.468442437151742610e-04, -8.469411257957982922e-04, -8.470366260981610678e-04, -8.471307445498305099e-04, -8.472234810806325003e-04, -8.473148356226393877e-04, -8.474048081101665181e-04, -8.474933984797952203e-04, -8.475806066703388698e-04, -8.476664326228723796e-04, -8.477508762807213580e-04, -8.478339375894530013e-04, -8.479156164968882367e-04, -8.479959129531075774e-04, -8.480748269104232580e-04, -8.481523583234066655e-04, -8.482285071488835683e-04, -8.483032733459226239e-04, -8.483766568758451367e-04, -8.484486577022170347e-04, -8.485192757908596034e-04, -8.485885111098454741e-04, -8.486563636294822523e-04, -8.487228333223403821e-04, -8.487879201632414364e-04, -8.488516241292468414e-04, -8.489139451996673092e-04, -8.489748833560658734e-04, -8.490344385822558293e-04, -8.490926108642953126e-04, -8.491494001904923957e-04, -8.492048065514020512e-04, -8.492588299398326577e-04, -8.493114703508338565e-04, -8.493627277817055506e-04, -8.494126022319994224e-04, -8.494610937035065737e-04, -8.495082022002764998e-04, -8.495539277285946459e-04, -8.495982702970040915e-04, -8.496412299162892871e-04, -8.496828065994776807e-04, -8.497230003618554389e-04, -8.497618112209463044e-04, -8.497992391965181018e-04, -8.498352843105949888e-04, -8.498699465874431447e-04, -8.499032260535665422e-04, -8.499351227377284143e-04, -8.499656366709284865e-04, -8.499947678864118667e-04, -8.500225164196763099e-04, -8.500488823084562801e-04, -8.500738655927360691e-04, -8.500974663147444843e-04, -8.501196845189515957e-04, -8.501405202520754580e-04, -8.501599735630727865e-04, -8.501780445031515343e-04, -8.501947331257592904e-04, -8.502100394865839310e-04, -8.502239636435634856e-04, -8.502365056568726926e-04, -8.502476655889349257e-04, -8.502574435044074489e-04, -8.502658394701994140e-04, -8.502728535554539713e-04, -8.502784858315631236e-04, -8.502827363721529802e-04, -8.502856052530966598e-04, -8.502870925525070258e-04, -8.502871983507366864e-04, -8.502859227303745252e-04, -8.502832657762605549e-04, -8.502792275754659677e-04, -8.502738082173001829e-04, -8.502670077933190866e-04, -8.502588263973147320e-04, -8.502492641253160980e-04, -8.502383210755903907e-04, -8.502259973486467294e-04, -8.502122930472269307e-04, -8.501972082763158091e-04, -8.501807431431358635e-04, -8.501628977571379538e-04, -8.501436722300169131e-04, -8.501230666757064519e-04, -8.501010812103670152e-04, -8.500777159524047560e-04, -8.500529710224538626e-04, -8.500268465433859916e-04, -8.499993426403118935e-04, -8.499704594405671021e-04, -8.499401970737301484e-04, -8.499085556716080327e-04, -8.498755353682442473e-04, -8.498411362999134643e-04, -8.498053586051240293e-04, -8.497682024246161177e-04, -8.497296679013605428e-04, -8.496897551805632004e-04, -8.496484644096580219e-04, -8.496057957383090341e-04, -8.495617493184152384e-04, -8.495163253041012859e-04, -8.494695238517222489e-04, -8.494213451198665476e-04, -8.493717892693444576e-04, -8.493208564632000364e-04, -8.492685468667050515e-04, -8.492148606473564872e-04, -8.491597979748795799e-04, -8.491033590212293362e-04, -8.490455439605822932e-04, -8.489863529693463841e-04, -8.489257862261502053e-04, -8.488638439118504969e-04, -8.488005262095275893e-04, -8.487358333044860538e-04, -8.486697653842574128e-04, -8.486023226385918999e-04, -8.485335052594680013e-04, -8.484633134410779270e-04, -8.483917473798518972e-04, -8.483188072744216046e-04, -8.482444933256569689e-04, -8.481688057366402241e-04, -8.480917447126749180e-04, -8.480133104612879716e-04, -8.479335031922182950e-04, -8.478523231174322919e-04, -8.477697704511130174e-04, -8.476858454096549735e-04, -8.476005482116752768e-04, -8.475138790780108395e-04, -8.474258382317073103e-04, -8.473364258980307841e-04, -8.472456423044680187e-04, -8.471534876807099547e-04, -8.470599622586702558e-04, -8.469650662724704550e-04, -8.468687999584514469e-04, -8.467711635551652483e-04, -8.466721573033735883e-04, -8.465717814460531126e-04, -8.464700362283926732e-04, -8.463669218977848711e-04, -8.462624387038424284e-04, -8.461565868983824670e-04, -8.460493667354309537e-04, -8.459407784712223754e-04, -8.458308223642029911e-04, -8.457194986750249778e-04, -8.456068076665466471e-04, -8.454927496038286503e-04, -8.453773247541493743e-04, -8.452605333869792461e-04, -8.451423757739960196e-04, -8.450228521890967024e-04, -8.449019629083628609e-04, -8.447797082100828468e-04, -8.446560883747554829e-04, -8.445311036850772701e-04, -8.444047544259445552e-04, -8.442770408844540737e-04, -8.441479633499067436e-04, -8.440175221137995350e-04, -8.438857174698275289e-04, -8.437525497138855446e-04, -8.436180191440673798e-04, -8.434821260606620167e-04, -8.433448707661537298e-04, -8.432062535652279410e-04, -8.430662747647581006e-04, -8.429249346738175051e-04, -8.427822336036695392e-04, -8.426381718677732058e-04, -8.424927497817823662e-04, -8.423459676635350075e-04, -8.421978258330679867e-04, -8.420483246126124781e-04, -8.418974643265720714e-04, -8.417452453015587680e-04, -8.415916678663659840e-04, -8.414367323519729956e-04, -8.412804390915433125e-04, -8.411227884204450613e-04, -8.409637806762053401e-04, -8.408034161985592251e-04, -8.406416953294199544e-04, -8.404786184128748084e-04, -8.403141857952083115e-04, -8.401483978248748020e-04, -8.399812548525277056e-04, -8.398127572309853827e-04, -8.396429053152506443e-04, -8.394716994625067404e-04, -8.392991400321261420e-04, -8.391252273856404003e-04, -8.389499618867737570e-04, -8.387733439014235202e-04, -8.385953737976620161e-04, -8.384160519457334445e-04, -8.382353787180626611e-04, -8.380533544892510575e-04, -8.378699796360645265e-04, -8.376852545374384494e-04, -8.374991795744992718e-04, -8.373117551305270983e-04, -8.371229815909718474e-04, -8.369328593434682134e-04, -8.367413887778035742e-04, -8.365485702859434694e-04, -8.363544042620123025e-04, -8.361588911023076515e-04, -8.359620312052936557e-04, -8.357638249715899567e-04, -8.355642728039889373e-04, -8.353633751074487825e-04, -8.351611322890764577e-04, -8.349575447581529704e-04, -8.347526129261224198e-04, -8.345463372065758424e-04, -8.343387180152733295e-04, -8.341297557701363294e-04, -8.339194508912314927e-04, -8.337078038007960431e-04, -8.334948149232126232e-04, -8.332804846850238234e-04, -8.330648135149331572e-04, -8.328478018437817515e-04, -8.326294501045792456e-04, -8.324097587324817823e-04, -8.321887281647927671e-04, -8.319663588409666622e-04, -8.317426512026191788e-04, -8.315176056934943166e-04, -8.312912227594986252e-04, -8.310635028486843988e-04, -8.308344464112495673e-04, -8.306040538995289151e-04, -8.303723257680023203e-04, -8.301392624733141623e-04, -8.299048644742262676e-04, -8.296691322316405688e-04, -8.294320662086342340e-04, -8.291936668703884334e-04, -8.289539346842317085e-04, -8.287128701196373693e-04, -8.284704736482167726e-04, -8.282267457437211648e-04, -8.279816868820125174e-04, -8.277352975411175198e-04, -8.274875782011884397e-04, -8.272385293444945581e-04, -8.269881514554545867e-04, -8.267364450206182366e-04, -8.264834105286493048e-04, -8.262290484703553812e-04, -8.259733593386694170e-04, -8.257163436286459306e-04, -8.254580018374785711e-04, -8.251983344644622798e-04, -8.249373420110432719e-04, -8.246750249807813064e-04, -8.244113838793454578e-04, -8.241464192145460995e-04, -8.238801314963124615e-04, -8.236125212366725724e-04, -8.233435889497959766e-04, -8.230733351519659794e-04, -8.228017603615706476e-04, -8.225288650991237349e-04, -8.222546498872568754e-04, -8.219791152507051639e-04, -8.217022617163275387e-04, -8.214240898130767497e-04, -8.211446000720466288e-04, -8.208637930264190731e-04, -8.205816692114730436e-04, -8.202982291646362814e-04, -8.200134734254071371e-04, -8.197274025353959871e-04, -8.194400170383327143e-04, -8.191513174800436154e-04, -8.188613044084479308e-04, -8.185699783735815886e-04, -8.182773399275747621e-04, -8.179833896246648797e-04, -8.176881280211686530e-04, -8.173915556755188307e-04, -8.170936731482492370e-04, -8.167944810019687508e-04, -8.164939798013824473e-04, -8.161921701133243411e-04, -8.158890525066765046e-04, -8.155846275524426857e-04, -8.152788958236936636e-04, -8.149718578956079065e-04, -8.146635143454532485e-04, -8.143538657525639050e-04, -8.140429126983834062e-04, -8.137306557664338068e-04, -8.134170955423113483e-04, -8.131022326137052163e-04, -8.127860675703923359e-04, -8.124686010042087491e-04, -8.121498335090903808e-04, -8.118297656810516795e-04, -8.115083981181671867e-04, -8.111857314206049295e-04, -8.108617661906051708e-04, -8.105365030324734703e-04, -8.102099425526032355e-04, -8.098820853594411364e-04, -8.095529320635206066e-04, -8.092224832774467733e-04, -8.088907396158753153e-04, -8.085577016955430374e-04, -8.082233701352611486e-04, -8.078877455558825188e-04, -8.075508285803406020e-04, -8.072126198336409793e-04, -8.068731199428243878e-04, -8.065323295370109558e-04, -8.061902492473800369e-04, -8.058468797071710772e-04, -8.055022215516703882e-04, -8.051562754182136402e-04, -8.048090419462289053e-04, -8.044605217771607633e-04, -8.041107155545121517e-04, -8.037596239238496785e-04, -8.034072475327958159e-04, -8.030535870309950730e-04, -8.026986430701625683e-04, -8.023424163040559489e-04, -8.019849073884840638e-04, -8.016261169812758476e-04, -8.012660457423317114e-04, -8.009046943335876561e-04, -8.005420634190054058e-04, -8.001781536645899721e-04, -7.998129657384145906e-04, -7.994465003105480794e-04, -7.990787580531185904e-04, -7.987097396402951773e-04, -7.983394457482522345e-04, -7.979678770552320550e-04, -7.975950342414720807e-04, -7.972209179892696292e-04, -7.968455289829428625e-04, -7.964688679088186441e-04, -7.960909354552755815e-04, -7.957117323127111752e-04, -7.953312591735270734e-04, -7.949495167321740663e-04, -7.945665056851164160e-04, -7.941822267308212314e-04, -7.937966805697955477e-04, -7.934098679045625824e-04, -7.930217894396413524e-04, -7.926324458815950293e-04, -7.922418379389610087e-04, -7.918499663223471869e-04, -7.914568317443219144e-04, -7.910624349194716760e-04, -7.906667765644074869e-04, -7.902698573977519911e-04, -7.898716781401025986e-04, -7.894722395140920919e-04, -7.890715422443519804e-04, -7.886695870574907076e-04, -7.882663746821504634e-04, -7.878619058489564437e-04, -7.874561812905423288e-04, -7.870492017415227446e-04, -7.866409679384990094e-04, -7.862314806201175718e-04, -7.858207405269699393e-04, -7.854087484016314923e-04, -7.849955049887278376e-04, -7.845810110348098000e-04, -7.841652672884551201e-04, -7.837482745001999327e-04, -7.833300334225895079e-04, -7.829105448101496278e-04, -7.824898094193628428e-04, -7.820678280087239821e-04, -7.816446013387002558e-04, -7.812201301717167264e-04, -7.807944152721976163e-04, -7.803674574065460343e-04, -7.799392573431081959e-04, -7.795098158522325129e-04, -7.790791337062419461e-04, -7.786472116793968171e-04, -7.782140505479651733e-04, -7.777796510901448333e-04, -7.773440140861264877e-04, -7.769071403180714732e-04, -7.764690305700671031e-04, -7.760296856281946468e-04, -7.755891062804984304e-04, -7.751472933169468050e-04, -7.747042475295021864e-04, -7.742599697120766027e-04, -7.738144606605099020e-04, -7.733677211726273232e-04, -7.729197520481997062e-04, -7.724705540889258192e-04, -7.720201280984773529e-04, -7.715684748824676959e-04, -7.711155952484648364e-04, -7.706614900059595950e-04, -7.702061599663818882e-04, -7.697496059431569978e-04, -7.692918287515930313e-04, -7.688328292089502023e-04, -7.683726081344410472e-04, -7.679111663492084157e-04, -7.674485046763370724e-04, -7.669846239408165079e-04, -7.665195249695988360e-04, -7.660532085915635562e-04, -7.655856756374924011e-04, -7.651169269401193176e-04, -7.646469633341139872e-04, -7.641757856560393251e-04, -7.637033947443762003e-04, -7.632297914395879453e-04, -7.627549765839869997e-04, -7.622789510218537382e-04, -7.618017155993455063e-04, -7.613232711645664431e-04, -7.608436185675344129e-04, -7.603627586601470695e-04, -7.598806922962491857e-04, -7.593974203315861406e-04, -7.589129436237905839e-04, -7.584272630324247200e-04, -7.579403794189623102e-04, -7.574522936467423771e-04, -7.569630065810427138e-04, -7.564725190890417197e-04, -7.559808320397803450e-04, -7.554879463042313715e-04, -7.549938627552667779e-04, -7.544985822676159980e-04, -7.540021057179460435e-04, -7.535044339847608895e-04, -7.530055679485304953e-04, -7.525055084915482310e-04, -7.520042564980028692e-04, -7.515018128539969079e-04, -7.509981784475038523e-04, -7.504933541683573737e-04, -7.499873409083017244e-04, -7.494801395609580188e-04, -7.489717510217921417e-04, -7.484621761881801250e-04, -7.479514159593617442e-04, -7.474394712364563478e-04, -7.469263429224356435e-04, -7.464120319221294450e-04, -7.458965391423027580e-04, -7.453798654915146180e-04, -7.448620118802091626e-04, -7.443429792207081506e-04, -7.438227684271859173e-04, -7.433013804156895403e-04, -7.427788161040886411e-04, -7.422550764121446654e-04, -7.417301622614717437e-04, -7.412040745755080684e-04, -7.406768142795742233e-04, -7.401483823008405500e-04, -7.396187795683050294e-04, -7.390880070128013051e-04, -7.385560655670767461e-04, -7.380229561656408751e-04, -7.374886797448907023e-04, -7.369532372430684418e-04, -7.364166296002178178e-04, -7.358788577582615854e-04, -7.353399226609175048e-04, -7.347998252537719585e-04, -7.342585664842399447e-04, -7.337161473015351527e-04, -7.331725686567367502e-04, -7.326278315027418952e-04, -7.320819367942517494e-04, -7.315348854878170153e-04, -7.309866785418136495e-04, -7.304373169164041571e-04, -7.298868015736040531e-04, -7.293351334772467344e-04, -7.287823135929434723e-04, -7.282283428881715587e-04, -7.276732223321555858e-04, -7.271169528960203183e-04, -7.265595355526223171e-04, -7.260009712766399281e-04, -7.254412610445816305e-04, -7.248804058347589315e-04, -7.243184066272447333e-04, -7.237552644039590933e-04, -7.231909801486011364e-04, -7.226255548466764848e-04, -7.220589894854598538e-04, -7.214912850540438401e-04, -7.209224425433242859e-04, -7.203524629459411889e-04, -7.197813472563683668e-04, -7.192090964708584876e-04, -7.186357115874296257e-04, -7.180611936058679725e-04, -7.174855435278156566e-04, -7.169087623566133176e-04, -7.163308510974329213e-04, -7.157518107571783379e-04, -7.151716423445652476e-04, -7.145903468700821101e-04, -7.140079253459476628e-04, -7.134243787861916947e-04, -7.128397082066099434e-04, -7.122539146247251719e-04, -7.116669990598656651e-04, -7.110789625331168746e-04, -7.104898060672886753e-04, -7.098995306869914767e-04, -7.093081374185898191e-04, -7.087156272901613905e-04, -7.081220013315940630e-04, -7.075272605744751956e-04, -7.069314060521771775e-04, -7.063344387998249027e-04, -7.057363598542365718e-04, -7.051371702540621452e-04, -7.045368710396210377e-04, -7.039354632529836505e-04, -7.033329479379879599e-04, -7.027293261402059064e-04, -7.021245989069090261e-04, -7.015187672871423929e-04, -7.009118323316665053e-04, -7.003037950929840664e-04, -6.996946566252922788e-04, -6.990844179845515831e-04, -6.984730802284443499e-04, -6.978606444163536291e-04, -6.972471116093681377e-04, -6.966324828703752839e-04, -6.960167592639011393e-04, -6.953999418561968493e-04, -6.947820317152606428e-04, -6.941630299107832969e-04, -6.935429375141806624e-04, -6.929217555985378281e-04, -6.922994852386859903e-04, -6.916761275111604941e-04, -6.910516834941578994e-04, -6.904261542676163200e-04, -6.897995409131761754e-04, -6.891718445141278241e-04, -6.885430661555022027e-04, -6.879132069240227959e-04, -6.872822679080642198e-04, -6.866502501977425361e-04, -6.860171548848074822e-04, -6.853829830627416759e-04, -6.847477358267021769e-04, -6.841114142734919723e-04, -6.834740195016364124e-04, -6.828355526113349646e-04, -6.821960147044284694e-04, -6.815554068844677715e-04, -6.809137302566785907e-04, -6.802709859279166367e-04, -6.796271750067469719e-04, -6.789822986034007527e-04, -6.783363578297332700e-04, -6.776893537993075416e-04, -6.770412876273423789e-04, -6.763921604306761745e-04, -6.757419733278625289e-04, -6.750907274390392787e-04, -6.744384238860953555e-04, -6.737850637924847367e-04, -6.731306482833312880e-04, -6.724751784854304977e-04, -6.718186555272220471e-04, -6.711610805387509954e-04, -6.705024546517476857e-04, -6.698427789995606329e-04, -6.691820547171977232e-04, -6.685202829412621381e-04, -6.678574648100248871e-04, -6.671936014633966187e-04, -6.665286940428890227e-04, -6.658627436916245883e-04, -6.651957515544409038e-04, -6.645277187777091617e-04, -6.638586465094474575e-04, -6.631885358993122245e-04, -6.625173880985680934e-04, -6.618452042601126115e-04, -6.611719855384143351e-04, -6.604977330895952289e-04, -6.598224480713880567e-04, -6.591461316430931219e-04, -6.584687849656583897e-04, -6.577904092016400228e-04, -6.571110055151478451e-04, -6.564305750719424872e-04, -6.557491190393779229e-04, -6.550666385863621131e-04, -6.543831348834456933e-04, -6.536986091027671133e-04, -6.530130624180129550e-04, -6.523264960045182213e-04, -6.516389110391457729e-04, -6.509503087003856410e-04, -6.502606901683127437e-04, -6.495700566245366870e-04, -6.488784092522927299e-04, -6.481857492363881160e-04, -6.474920777631641266e-04, -6.467973960205782632e-04, -6.461017051981586025e-04, -6.454050064869546821e-04, -6.447073010796335610e-04, -6.440085901704045756e-04, -6.433088749550590216e-04, -6.426081566309183295e-04, -6.419064363968419789e-04, -6.412037154533435082e-04, -6.404999950023982855e-04, -6.397952762475306787e-04, -6.390895603939077303e-04, -6.383828486481563612e-04, -6.376751422184602979e-04, -6.369664423145798057e-04, -6.362567501478034408e-04, -6.355460669309740719e-04, -6.348343938784237195e-04, -6.341217322060662548e-04, -6.334080831313575015e-04, -6.326934478732281235e-04, -6.319778276521904187e-04, -6.312612236902823745e-04, -6.305436372110206130e-04, -6.298250694394945002e-04, -6.291055216023119356e-04, -6.283849949275511050e-04, -6.276634906448759488e-04, -6.269410099853970578e-04, -6.262175541817893102e-04, -6.254931244682339743e-04, -6.247677220803775095e-04, -6.240413482554189525e-04, -6.233140042320598276e-04, -6.225856912504607781e-04, -6.218564105523263514e-04, -6.211261633808627149e-04, -6.203949509807209521e-04, -6.196627745980968095e-04, -6.189296354806747514e-04, -6.181955348775853513e-04, -6.174604740395056883e-04, -6.167244542185236055e-04, -6.159874766683170371e-04, -6.152495426439538641e-04, -6.145106534019770250e-04, -6.137708102005068637e-04, -6.130300142990367579e-04, -6.122882669585536820e-04, -6.115455694415467729e-04, -6.108019230119710085e-04, -6.100573289352004790e-04, -6.093117884781228209e-04, -6.085653029090698279e-04, -6.078178734978525793e-04, -6.070695015156858708e-04, -6.063201882352925150e-04, -6.055699349308507574e-04, -6.048187428779503664e-04, -6.040666133536206055e-04, -6.033135476364316066e-04, -6.025595470062876120e-04, -6.018046127446129157e-04, -6.010487461342092904e-04, -6.002919484593642998e-04, -5.995342210058043518e-04, -5.987755650606384292e-04, -5.980159819124553425e-04, -5.972554728512753739e-04, -5.964940391684957427e-04, -5.957316821569903515e-04, -5.949684031110529740e-04, -5.942042033263505258e-04, -5.934390841000160895e-04, -5.926730467306029438e-04, -5.919060925180258002e-04, -5.911382227636613083e-04, -5.903694387702950385e-04, -5.895997418420745361e-04, -5.888291332846152474e-04, -5.880576144048673803e-04, -5.872851865112401534e-04, -5.865118509135317567e-04, -5.857376089228949825e-04, -5.849624618519212510e-04, -5.841864110145976756e-04, -5.834094577262492753e-04, -5.826316033036379625e-04, -5.818528490649158133e-04, -5.810731963295629431e-04, -5.802926464184902889e-04, -5.795112006539764006e-04, -5.787288603596884738e-04, -5.779456268606352962e-04, -5.771615014831803659e-04, -5.763764855551609372e-04, -5.755905804056752999e-04, -5.748037873652083298e-04, -5.740161077656426563e-04, -5.732275429402178962e-04, -5.724380942234831657e-04, -5.716477629513957428e-04, -5.708565504612491846e-04, -5.700644580917041187e-04, -5.692714871827227576e-04, -5.684776390756658259e-04, -5.676829151132349897e-04, -5.668873166394446670e-04, -5.660908449996310265e-04, -5.652935015405708167e-04, -5.644952876102587785e-04, -5.636962045580887074e-04, -5.628962537347904612e-04, -5.620954364923671847e-04, -5.612937541842177164e-04, -5.604912081650016047e-04, -5.596877997907469867e-04, -5.588835304188040755e-04, -5.580784014077892156e-04, -5.572724141176876650e-04, -5.564655699097943980e-04, -5.556578701466639066e-04, -5.548493161922134166e-04, -5.540399094116679182e-04, -5.532296511714993427e-04, -5.524185428395371510e-04, -5.516065857849065338e-04, -5.507937813779816829e-04, -5.499801309905007164e-04, -5.491656359954053251e-04, -5.483502977670478553e-04, -5.475341176809694812e-04, -5.467170971140096003e-04, -5.458992374443257835e-04, -5.450805400513602725e-04, -5.442610063157766629e-04, -5.434406376195710349e-04, -5.426194353460112377e-04, -5.417974008795864741e-04, -5.409745356061053129e-04, -5.401508409126259741e-04, -5.393263181874914571e-04, -5.385009688202704523e-04, -5.376747942017702422e-04, -5.368477957241695169e-04, -5.360199747807888482e-04, -5.351913327662042056e-04, -5.343618710763525575e-04, -5.335315911082878174e-04, -5.327004942604029970e-04, -5.318685819322643230e-04, -5.310358555247306081e-04, -5.302023164398969807e-04, -5.293679660810493483e-04, -5.285328058527525436e-04, -5.276968371608106419e-04, -5.268600614121965973e-04, -5.260224800151700950e-04, -5.251840943792133662e-04, -5.243449059149744851e-04, -5.235049160343792580e-04, -5.226641261505717007e-04, -5.218225376778516970e-04, -5.209801520318091145e-04, -5.201369706291715826e-04, -5.192929948879247302e-04, -5.184482262272680593e-04, -5.176026660675395923e-04, -5.167563158303433747e-04, -5.159091769384739059e-04, -5.150612508158722291e-04, -5.142125388877249190e-04, -5.133630425804121484e-04, -5.125127633214480571e-04, -5.116617025395857029e-04, -5.108098616647664290e-04, -5.099572421280554628e-04, -5.091038453617535882e-04, -5.082496727993213604e-04, -5.073947258754106559e-04, -5.065390060258086191e-04, -5.056825146874545764e-04, -5.048252532985677546e-04, -5.039672232984198155e-04, -5.031084261274631174e-04, -5.022488632273475195e-04, -5.013885360408628115e-04, -5.005274460119730822e-04, -4.996655945857408259e-04, -4.988029832084282062e-04, -4.979396133274546646e-04, -4.970754863913247118e-04, -4.962106038497415524e-04, -4.953449671535501645e-04, -4.944785777546995692e-04, -4.936114371062506369e-04, -4.927435466625148652e-04, -4.918749078788007840e-04, -4.910055222116417465e-04, -4.901353911186194208e-04, -4.892645160584971472e-04, -4.883928984911623666e-04, -4.875205398775603219e-04, -4.866474416798118019e-04, -4.857736053611534568e-04, -4.848990323858727450e-04, -4.840237242194259494e-04, -4.831476823283761064e-04, -4.822709081803308812e-04, -4.813934032440605288e-04, -4.805151689894331677e-04, -4.796362068873556901e-04, -4.787565184098886337e-04, -4.778761050301821053e-04, -4.769949682224205946e-04, -4.761131094619512898e-04, -4.752305302251101714e-04, -4.743472319894515379e-04, -4.734632162334902368e-04, -4.725784844368407134e-04, -4.716930380802293707e-04, -4.708068786454565140e-04, -4.699200076153325998e-04, -4.690324264737943537e-04, -4.681441367058426458e-04, -4.672551397974828054e-04, -4.663654372358387330e-04, -4.654750305090718022e-04, -4.645839211064186985e-04, -4.636921105181296193e-04, -4.627996002354832906e-04, -4.619063917509246605e-04, -4.610124865578274045e-04, -4.601178861506240842e-04, -4.592225920248299456e-04, -4.583266056769771078e-04, -4.574299286046505588e-04, -4.565325623064100924e-04, -4.556345082819045840e-04, -4.547357680318121959e-04, -4.538363430577742417e-04, -4.529362348625147190e-04, -4.520354449497784020e-04, -4.511339748242867683e-04, -4.502318259917560510e-04, -4.493289999590382934e-04, -4.484254982338510033e-04, -4.475213223250021789e-04, -4.466164737423017296e-04, -4.457109539965061276e-04, -4.448047645994494879e-04, -4.438979070638831605e-04, -4.429903829036138034e-04, -4.420821936334394693e-04, -4.411733407690909500e-04, -4.402638258273438828e-04, -4.393536503259585233e-04, -4.384428157836199515e-04, -4.375313237200499617e-04, -4.366191756559487862e-04, -4.357063731129321577e-04, -4.347929176136468309e-04, -4.338788106817111144e-04, -4.329640538416479204e-04, -4.320486486190254949e-04, -4.311325965402732657e-04, -4.302158991329248661e-04, -4.292985579253438323e-04, -4.283805744468736562e-04, -4.274619502278471104e-04, -4.265426867995475955e-04, -4.256227856941419748e-04, -4.247022484448056902e-04, -4.237810765856351593e-04, -4.228592716516820903e-04, -4.219368351788802983e-04, -4.210137687041530952e-04, -4.200900737653562615e-04, -4.191657519012158121e-04, -4.182408046514454161e-04, -4.173152335566782545e-04, -4.163890401584322172e-04, -4.154622259991215582e-04, -4.145347926221984382e-04, -4.136067415718891385e-04, -4.126780743934279228e-04, -4.117487926328801504e-04, -4.108188978372764454e-04, -4.098883915545507351e-04, -4.089572753334756857e-04, -4.080255507237839159e-04, -4.070932192761056554e-04, -4.061602825419001147e-04, -4.052267420735783800e-04, -4.042925994244411791e-04, -4.033578561486118787e-04, -4.024225138011581311e-04, -4.014865739380267138e-04, -4.005500381159835736e-04, -3.996129078927471287e-04, -3.986751848268291622e-04, -3.977368704776735459e-04, -3.967979664055879354e-04, -3.958584741716651115e-04, -3.949183953380018259e-04, -3.939777314674336060e-04, -3.930364841236708216e-04, -3.920946548713187432e-04, -3.911522452758388357e-04, -3.902092569034732979e-04, -3.892656913213774438e-04, -3.883215500975270573e-04, -3.873768348007632241e-04, -3.864315470006988193e-04, -3.854856882678489366e-04, -3.845392601735594940e-04, -3.835922642899682565e-04, -3.826447021900182262e-04, -3.816965754476021660e-04, -3.807478856373133964e-04, -3.797986343345860364e-04, -3.788488231157112127e-04, -3.778984535577780248e-04, -3.769475272387065048e-04, -3.759960457371638084e-04, -3.750440106326886815e-04, -3.740914235056244565e-04, -3.731382859370513437e-04, -3.721845995089148010e-04, -3.712303658039560906e-04, -3.702755864056470102e-04, -3.693202628983145762e-04, -3.683643968670755379e-04, -3.674079898977685062e-04, -3.664510435771018934e-04, -3.654935594924777300e-04, -3.645355392321443749e-04, -3.635769843851214341e-04, -3.626178965411420811e-04, -3.616582772907706391e-04, -3.606981282253418110e-04, -3.597374509368893390e-04, -3.587762470182760547e-04, -3.578145180631241650e-04, -3.568522656657477062e-04, -3.558894914212818892e-04, -3.549261969256116509e-04, -3.539623837753103964e-04, -3.529980535677590446e-04, -3.520332079010854757e-04, -3.510678483740938406e-04, -3.501019765864128806e-04, -3.491355941383007160e-04, -3.481687026308988753e-04, -3.472013036659512154e-04, -3.462333988459525658e-04, -3.452649897741647206e-04, -3.442960780545731791e-04, -3.433266652918199788e-04, -3.423567530913287590e-04, -3.413863430592162349e-04, -3.404154368023356203e-04, -3.394440359281815432e-04, -3.384721420450234565e-04, -3.374997567618333760e-04, -3.365268816882432718e-04, -3.355535184345635530e-04, -3.345796686119271047e-04, -3.336053338320347172e-04, -3.326305157072978751e-04, -3.316552158508615259e-04, -3.306794358765332274e-04, -3.297031773988260816e-04, -3.287264420328684755e-04, -3.277492313945322877e-04, -3.267715471003643669e-04, -3.257933907675185522e-04, -3.248147640138833924e-04, -3.238356684580163351e-04, -3.228561057190719517e-04, -3.218760774169329643e-04, -3.208955851721421028e-04, -3.199146306058322283e-04, -3.189332153398551366e-04, -3.179513409967140661e-04, -3.169690091994949600e-04, -3.159862215720191754e-04, -3.150029797386600912e-04, -3.140192853245003172e-04, -3.130351399552576430e-04, -3.120505452572219915e-04, -3.110655028573787472e-04, -3.100800143833442463e-04, -3.090940814632957365e-04, -3.081077057261015907e-04, -3.071208888012507245e-04, -3.061336323187856473e-04, -3.051459379094306149e-04, -3.041578072045029958e-04, -3.031692418359497004e-04, -3.021802434362855986e-04, -3.011908136386081563e-04, -3.002009540767470010e-04, -2.992106663850038219e-04, -2.982199521982748305e-04, -2.972288131521847137e-04, -2.962372508828166676e-04, -2.952452670268676006e-04, -2.942528632216625541e-04, -2.932600411050895954e-04, -2.922668023156406924e-04, -2.912731484923192313e-04, -2.902790812747714218e-04, -2.892846023032167452e-04, -2.882897132183772650e-04, -2.872944156616119050e-04, -2.862987112748419647e-04, -2.853026017004866091e-04, -2.843060885815899917e-04, -2.833091735617538709e-04, -2.823118582850676255e-04, -2.813141443962601505e-04, -2.803160335405216691e-04, -2.793175273636545452e-04, -2.783186275120044361e-04, -2.773193356323914462e-04, -2.763196533722394178e-04, -2.753195823795093612e-04, -2.743191243026257831e-04, -2.733182807906115613e-04, -2.723170534930164960e-04, -2.713154440598468365e-04, -2.703134541416999932e-04, -2.693110853896886437e-04, -2.683083394553784995e-04, -2.673052179909361369e-04, -2.663017226489277690e-04, -2.652978550825842250e-04, -2.642936169455072939e-04, -2.632890098918022137e-04, -2.622840355762086437e-04, -2.612786956538270654e-04, -2.602729917802784859e-04, -2.592669256117172312e-04, -2.582604988047885542e-04, -2.572537130165559387e-04, -2.562465699046355947e-04, -2.552390711270990432e-04, -2.542312183425220131e-04, -2.532230132098857792e-04, -2.522144573887133380e-04, -2.512055525389971997e-04, -2.501963003211513038e-04, -2.491867023960338419e-04, -2.481767604250975276e-04, -2.471664760700985428e-04, -2.461558509933609745e-04, -2.451448868575722799e-04, -2.441335853259402793e-04, -2.431219480621182373e-04, -2.421099767301392687e-04, -2.410976729945466868e-04, -2.400850385203235303e-04, -2.390720749728215478e-04, -2.380587840178969943e-04, -2.370451673218357128e-04, -2.360312265512859410e-04, -2.350169633733900415e-04, -2.340023794557136768e-04, -2.329874764661758778e-04, -2.319722560732040309e-04, -2.309567199455505118e-04, -2.299408697524487298e-04, -2.289247071635404590e-04, -2.279082338488088344e-04, -2.268914514787091069e-04, -2.258743617240961373e-04, -2.248569662561578260e-04, -2.238392667465451092e-04, -2.228212648673040064e-04, -2.218029622908023011e-04, -2.207843606898630604e-04, -2.197654617376955985e-04, -2.187462671078232957e-04, -2.177267784742180400e-04, -2.167069975112048707e-04, -2.156869258935068109e-04, -2.146665652961733640e-04, -2.136459173945987283e-04, -2.126249838646799282e-04, -2.116037663825423749e-04, -2.105822666246932547e-04, -2.095604862680425890e-04, -2.085384269898570746e-04, -2.075160904676866562e-04, -2.064934783794991841e-04, -2.054705924035867123e-04, -2.044474342186075925e-04, -2.034240055034938831e-04, -2.024003079375843539e-04, -2.013763432005532541e-04, -2.003521129723629323e-04, -1.993276189332828104e-04, -1.983028627640462675e-04, -1.972778461455538125e-04, -1.962525707591168125e-04, -1.952270382863666100e-04, -1.942012504091837784e-04, -1.931752088098530004e-04, -1.921489151708796479e-04, -1.911223711751442540e-04, -1.900955785058344250e-04, -1.890685388463717107e-04, -1.880412538805450702e-04, -1.870137252924427835e-04, -1.859859547663774793e-04, -1.849579439870227440e-04, -1.839296946393411585e-04, -1.829012084085122251e-04, -1.818724869800697366e-04, -1.808435320398256647e-04, -1.798143452738028313e-04, -1.787849283683898684e-04, -1.777552830101347041e-04, -1.767254108860144210e-04, -1.756953136831352843e-04, -1.746649930888920384e-04, -1.736344507909851184e-04, -1.726036884773744632e-04, -1.715727078362069553e-04, -1.705415105559519460e-04, -1.695100983253283971e-04, -1.684784728332349498e-04, -1.674466357688830375e-04, -1.664145888217036988e-04, -1.653823336813901868e-04, -1.643498720378270346e-04, -1.633172055811093278e-04, -1.622843360016998587e-04, -1.612512649901537941e-04, -1.602179942372505947e-04, -1.591845254341312215e-04, -1.581508602719952910e-04, -1.571170004423742665e-04, -1.560829476369226957e-04, -1.550487035475757176e-04, -1.540142698664779663e-04, -1.529796482859100619e-04, -1.519448404984263313e-04, -1.509098481967812995e-04, -1.498746730738581318e-04, -1.488393168228042680e-04, -1.478037811369601630e-04, -1.467680677097861844e-04, -1.457321782349985443e-04, -1.446961144064979861e-04, -1.436598779182977936e-04, -1.426234704646814875e-04, -1.415868937400156932e-04, -1.405501494389103576e-04, -1.395132392561451869e-04, -1.384761648865981160e-04, -1.374389280253810234e-04, -1.364015303677676048e-04, -1.353639736091224121e-04, -1.343262594450350775e-04, -1.332883895712485666e-04, -1.322503656835878106e-04, -1.312121894780959364e-04, -1.301738626509600530e-04, -1.291353868984415100e-04, -1.280967639170341101e-04, -1.270579954032525539e-04, -1.260190830539078817e-04, -1.249800285658038152e-04, -1.239408336358736656e-04, -1.229014999613148827e-04, -1.218620292393091548e-04, -1.208224231671823148e-04, -1.197826834424238696e-04, -1.187428117626154018e-04, -1.177028098254738838e-04, -1.166626793287560919e-04, -1.156224219703943211e-04, -1.145820394484263997e-04, -1.135415334609198501e-04, -1.125009057061118311e-04, -1.114601578823335972e-04, -1.104192916879638363e-04, -1.093783088214479694e-04, -1.083372109814574597e-04, -1.072959998665864127e-04, -1.062546771756261912e-04, -1.052132446073549303e-04, -1.041717038606960213e-04, -1.031300566346469338e-04, -1.020883046282057333e-04, -1.010464495405082334e-04, -1.000044930707550696e-04, -9.896243691814065658e-05, -9.792028278198737197e-05, -9.687803236167531371e-05, -9.583568735656889943e-05, -9.479324946615324556e-05, -9.375072038996277264e-05, -9.270810182750667994e-05, -9.166539547840819771e-05, -9.062260304233048193e-05, -8.957972621890423028e-05, -8.853676670788760198e-05, -8.749372620895561146e-05, -8.645060642197395723e-05, -8.540740904669597380e-05, -8.436413578292209069e-05, -8.332078833051934812e-05, -8.227736838937400377e-05, -8.123387765931719721e-05, -8.019031784026260288e-05, -7.914669063213363950e-05, -7.810299773479177719e-05, -7.705924084817192721e-05, -7.601542167218719480e-05, -7.497154190677322307e-05, -7.392760325181483314e-05, -7.288360740716711187e-05, -7.183955607281507423e-05, -7.079545094859215014e-05, -6.975129373433992818e-05, -6.870708612992849787e-05, -6.766282983518436380e-05, -6.661852654993411188e-05, -6.557417797390819995e-05, -6.452978580687844816e-05, -6.348535174858476046e-05, -6.244087749866306580e-05, -6.139636475678192764e-05, -6.035181522257015985e-05, -5.930723059556732615e-05, -5.826261257524431960e-05, -5.721796286116374321e-05, -5.617328315267405652e-05, -5.512857514916344150e-05, -5.408384054996340348e-05, -5.303908105427663778e-05, -5.199429836133707830e-05, -5.094949417022056194e-05, -4.990467018000567675e-05, -4.885982808970055119e-05, -4.781496959817046333e-05, -4.677009640427515501e-05, -4.572521020679541106e-05, -4.468031270436146127e-05, -4.363540559558876320e-05, -4.259049057900664807e-05, -4.154556935298471705e-05, -4.050064361587023672e-05, -3.945571506591557208e-05, -3.841078540120523334e-05, -3.736585631981649363e-05, -3.632092951960703449e-05, -3.527600669849141065e-05, -3.423108955413552184e-05, -3.318617978411719669e-05, -3.214127908594650119e-05, -3.109638915701643463e-05, -3.005151169453028120e-05, -2.900664839563875827e-05, -2.796180095734393569e-05, -2.691697107654311208e-05, -2.587216044993300533e-05, -2.482737077414651103e-05, -2.378260374568032191e-05, -2.273786106084539670e-05, -2.169314441578776664e-05, -2.064845550664850613e-05, -1.960379602928172837e-05, -1.855916767939143200e-05, -1.751457215266867299e-05, -1.647001114448587721e-05, -1.542548635017357969e-05, -1.438099946480819882e-05, -1.333655218337219496e-05, -1.229214620068158994e-05, -1.124778321131313569e-05, -1.020346490974156579e-05, -9.159192990266784562e-06, -8.114969146941322019e-06, -7.070795073707387225e-06, -6.026672464324144578e-06, -4.982603012295195928e-06, -3.938588411005524632e-06, -2.894630353648898478e-06, -1.850730533155289122e-06, -8.068906423511008680e-07, 2.368876262298256778e-07, 1.280602580162693331e-06, 2.324252527344019658e-06, 3.367835775715012314e-06, 4.411350633590239436e-06, 5.454795409380957757e-06, 6.498168411807446617e-06, 7.541467949761987679e-06, 8.584692332288400187e-06, 9.627839868770951339e-06, 1.067090886879741308e-05, 1.171389764211527897e-05, 1.275680449877414534e-05, 1.379962774908187564e-05, 1.484236570346770467e-05, 1.588501667267121673e-05, 1.692757896769836763e-05, 1.797005089980108986e-05, 1.901243078045676053e-05, 2.005471692132426232e-05, 2.109690763443297691e-05, 2.213900123204585026e-05, 2.318099602661566870e-05, 2.422289033095051164e-05, 2.526468245805365553e-05, 2.630637072121955625e-05, 2.734795343398984408e-05, 2.838942891024900787e-05, 2.943079546406455322e-05, 3.047205140989895378e-05, 3.151319506233314248e-05, 3.255422473639512976e-05, 3.359513874728343042e-05, 3.463593541055556233e-05, 3.567661304206175082e-05, 3.671716995792371899e-05, 3.775760447449123835e-05, 3.879791490853071894e-05, 3.983809957708830854e-05, 4.087815679744672781e-05, 4.191808488731289155e-05, 4.295788216454281944e-05, 4.399754694746885506e-05, 4.503707755462431919e-05, 4.607647230493123943e-05, 4.711572951765713793e-05, 4.815484751227848295e-05, 4.919382460866862850e-05, 5.023265912707809542e-05, 5.127134938799716231e-05, 5.230989371232167392e-05, 5.334829042130892767e-05, 5.438653783644147076e-05, 5.542463427961539900e-05, 5.646257807309617552e-05, 5.750036753949882380e-05, 5.853800100176710419e-05, 5.957547678312973926e-05, 6.061279320728879392e-05, 6.164994859828343862e-05, 6.268694128044555809e-05, 6.372376957854247975e-05, 6.476043181773292123e-05, 6.579692632343025213e-05, 6.683325142149102328e-05, 6.786940543817159856e-05, 6.890538670010702661e-05, 6.994119353429080683e-05, 7.097682426803099279e-05, 7.201227722913954813e-05, 7.304755074579411076e-05, 7.408264314649534309e-05, 7.511755276023219152e-05, 7.615227791634447739e-05, 7.718681694450377434e-05, 7.822116817490041966e-05, 7.925532993810690478e-05, 8.028930056503569984e-05, 8.132307838712581776e-05, 8.235666173606822650e-05, 8.339004894413323745e-05, 8.442323834389372215e-05, 8.545622826841472574e-05, 8.648901705120894687e-05, 8.752160302610076522e-05, 8.855398452741432345e-05, 8.958615988992926467e-05, 9.061812744886056626e-05, 9.164988553979289143e-05, 9.268143249886602846e-05, 9.371276666250243071e-05, 9.474388636773182668e-05, 9.577478995191775722e-05, 9.680547575296750409e-05, 9.783594210917315951e-05, 9.886618735930649386e-05, 9.989620984257690215e-05, 1.009260078987232496e-04, 1.019555798678587491e-04, 1.029849240906327248e-04, 1.040140389081876092e-04, 1.050429226620235132e-04, 1.060715736941856034e-04, 1.070999903472197713e-04, 1.081281709641531726e-04, 1.091561138884733419e-04, 1.101838174640849610e-04, 1.112112800354965849e-04, 1.122384999476858217e-04, 1.132654755460544194e-04, 1.142922051765709197e-04, 1.153186871857260162e-04, 1.163449199203976387e-04, 1.173709017280375990e-04, 1.183966309566508414e-04, 1.194221059546609481e-04, 1.204473250711187799e-04, 1.214722866554305718e-04, 1.224969890576804970e-04, 1.235214306283590878e-04, 1.245456097185491354e-04, 1.255695246798594722e-04, 1.265931738644049550e-04, 1.276165556247625817e-04, 1.286396683141578388e-04, 1.296625102863306937e-04, 1.306850798954910340e-04, 1.317073754965049066e-04, 1.327293954446233588e-04, 1.337511380958047709e-04, 1.347726018064421532e-04, 1.357937849335511188e-04, 1.368146858347231822e-04, 1.378353028679957628e-04, 1.388556343920331116e-04, 1.398756787660858977e-04, 1.408954343499718004e-04, 1.419148995040066632e-04, 1.429340725891921414e-04, 1.439529519669656042e-04, 1.449715359994108762e-04, 1.459898230492114545e-04, 1.470078114796334319e-04, 1.480254996545038676e-04, 1.490428859381677713e-04, 1.500599686956745587e-04, 1.510767462926410629e-04, 1.520932170952119065e-04, 1.531093794701958942e-04, 1.541252317850252745e-04, 1.551407724076206201e-04, 1.561559997065759019e-04, 1.571709120511157712e-04, 1.581855078110740382e-04, 1.591997853568757556e-04, 1.602137430594925769e-04, 1.612273792906286965e-04, 1.622406924225847829e-04, 1.632536808282189196e-04, 1.642663428811038425e-04, 1.652786769553735516e-04, 1.662906814258157122e-04, 1.673023546678297239e-04, 1.683136950575186606e-04, 1.693247009715332534e-04, 1.703353707872807903e-04, 1.713457028826526551e-04, 1.723556956363458210e-04, 1.733653474275936705e-04, 1.743746566363491978e-04, 1.753836216432430508e-04, 1.763922408294486561e-04, 1.774005125768680512e-04, 1.784084352680887062e-04, 1.794160072863611080e-04, 1.804232270155369606e-04, 1.814300928402501117e-04, 1.824366031456504077e-04, 1.834427563177181938e-04, 1.844485507430021270e-04, 1.854539848088191572e-04, 1.864590569031018439e-04, 1.874637654144921406e-04, 1.884681087322957760e-04, 1.894720852465784776e-04, 1.904756933480083829e-04, 1.914789314280166094e-04, 1.924817978787556484e-04, 1.934842910929662795e-04, 1.944864094641615053e-04, 1.954881513865807708e-04, 1.964895152551744326e-04, 1.974904994655802041e-04, 1.984911024140826881e-04, 1.994913224977950617e-04, 2.004911581145276984e-04, 2.014906076627440677e-04, 2.024896695416993780e-04, 2.034883421513989971e-04, 2.044866238924637671e-04, 2.054845131663144548e-04, 2.064820083751285184e-04, 2.074791079218198879e-04, 2.084758102100196385e-04, 2.094721136440345476e-04, 2.104680166290479428e-04, 2.114635175708816925e-04, 2.124586148761705459e-04, 2.134533069523273025e-04, 2.144475922074050376e-04, 2.154414690502832325e-04, 2.164349358906212078e-04, 2.174279911388422404e-04, 2.184206332060676162e-04, 2.194128605042969336e-04, 2.204046714461429884e-04, 2.213960644451479275e-04, 2.223870379155184866e-04, 2.233775902723038266e-04, 2.243677199313560142e-04, 2.253574253091988064e-04, 2.263467048232084685e-04, 2.273355568915688338e-04, 2.283239799332569106e-04, 2.293119723679731142e-04, 2.302995326163255539e-04, 2.312866590995646746e-04, 2.322733502398955339e-04, 2.332596044602162932e-04, 2.342454201843178997e-04, 2.352307958367334372e-04, 2.362157298428273016e-04, 2.372002206287572535e-04, 2.381842666215590949e-04, 2.391678662490010333e-04, 2.401510179397361208e-04, 2.411337201232620299e-04, 2.421159712297942836e-04, 2.430977696904387244e-04, 2.440791139371563867e-04, 2.450600024027389389e-04, 2.460404335207938575e-04, 2.470204057256975894e-04, 2.479999174527793785e-04, 2.489789671381875832e-04, 2.499575532188521090e-04, 2.509356741326129411e-04, 2.519133283181863164e-04, 2.528905142150285486e-04, 2.538672302635187157e-04, 2.548434749049364881e-04, 2.558192465813357653e-04, 2.567945437357404279e-04, 2.577693648118867318e-04, 2.587437082545342030e-04, 2.597175725091997907e-04, 2.606909560223402310e-04, 2.616638572413106296e-04, 2.626362746142321355e-04, 2.636082065901707255e-04, 2.645796516191015343e-04, 2.655506081518787674e-04, 2.665210746401820881e-04, 2.674910495366891131e-04, 2.684605312948178070e-04, 2.694295183690325517e-04, 2.703980092145863781e-04, 2.713660022876981785e-04, 2.723334960455095553e-04, 2.733004889459595419e-04, 2.742669794479575323e-04, 2.752329660113459310e-04, 2.761984470968772217e-04, 2.771634211661564502e-04, 2.781278866818100897e-04, 2.790918421072573273e-04, 2.800552859069008844e-04, 2.810182165460919424e-04, 2.819806324911076456e-04, 2.829425322091314770e-04, 2.839039141682152571e-04, 2.848647768374516407e-04, 2.858251186868480780e-04, 2.867849381872872956e-04, 2.877442338106569130e-04, 2.887030040298100859e-04, 2.896612473184374619e-04, 2.906189621512437430e-04, 2.915761470039063773e-04, 2.925328003530556641e-04, 2.934889206762567558e-04, 2.944445064519676455e-04, 2.953995561597139944e-04, 2.963540682799650446e-04, 2.973080412940894385e-04, 2.982614736845315634e-04, 2.992143639345555182e-04, 3.001667105285480927e-04, 3.011185119517651191e-04, 3.020697666905234301e-04, 3.030204732320369268e-04, 3.039706300646057729e-04, 3.049202356773685453e-04, 3.058692885605969751e-04, 3.068177872054476106e-04, 3.077657301041319829e-04, 3.087131157498785509e-04, 3.096599426368035180e-04, 3.106062092600885330e-04, 3.115519141159366718e-04, 3.124970557015547103e-04, 3.134416325150910540e-04, 3.143856430558117040e-04, 3.153290858238423796e-04, 3.162719593204712273e-04, 3.172142620478960937e-04, 3.181559925094189223e-04, 3.190971492092963512e-04, 3.200377306528306770e-04, 3.209777353463274087e-04, 3.219171617971844433e-04, 3.228560085137422288e-04, 3.237942740054394557e-04, 3.247319567827689846e-04, 3.256690553571571739e-04, 3.266055682411298173e-04, 3.275414939482786960e-04, 3.284768309932383228e-04, 3.294115778916677272e-04, 3.303457331602122917e-04, 3.312792953166741883e-04, 3.322122628798875326e-04, 3.331446343696797862e-04, 3.340764083070396455e-04, 3.350075832138713614e-04, 3.359381576132879077e-04, 3.368681300293632948e-04, 3.377974989873025187e-04, 3.387262630133775388e-04, 3.396544206349134541e-04, 3.405819703802475209e-04, 3.415089107789186164e-04, 3.424352403614402615e-04, 3.433609576594717078e-04, 3.442860612057719672e-04, 3.452105495340883562e-04, 3.461344211793137594e-04, 3.470576746774569222e-04, 3.479803085656162673e-04, 3.489023213819246547e-04, 3.498237116657173249e-04, 3.507444779572809596e-04, 3.516646187981546027e-04, 3.525841327308736257e-04, 3.535030182991460729e-04, 3.544212740478060414e-04, 3.553388985227006521e-04, 3.562558902708475852e-04, 3.571722478404054809e-04, 3.580879697806486233e-04, 3.590030546419112670e-04, 3.599175009757535739e-04, 3.608313073347165834e-04, 3.617444722726135382e-04, 3.626569943442825225e-04, 3.635688721057789632e-04, 3.644801041142506750e-04, 3.653906889279185072e-04, 3.663006251062479192e-04, 3.672099112098208278e-04, 3.681185458003075257e-04, 3.690265274405779756e-04, 3.699338546946763853e-04, 3.708405261276922962e-04, 3.717465403059310738e-04, 3.726518957968702147e-04, 3.735565911691456856e-04, 3.744606249925341423e-04, 3.753639958379106998e-04, 3.762667022774167673e-04, 3.771687428843386713e-04, 3.780701162330709015e-04, 3.789708208992795539e-04, 3.798708554596627769e-04, 3.807702184922341269e-04, 3.816689085760836646e-04, 3.825669242915613480e-04, 3.834642642201196061e-04, 3.843609269444950511e-04, 3.852569110484683817e-04, 3.861522151171513178e-04, 3.870468377367431421e-04, 3.879407774947003242e-04, 3.888340329796928811e-04, 3.897266027814845187e-04, 3.906184854911027432e-04, 3.915096797007964146e-04, 3.924001840040159056e-04, 3.932899969953618734e-04, 3.941791172707394329e-04, 3.950675434271267339e-04, 3.959552740628533300e-04, 3.968423077773647984e-04, 3.977286431713847195e-04, 3.986142788468738569e-04, 3.994992134069158280e-04, 4.003834454558793552e-04, 4.012669735993971780e-04, 4.021497964442512902e-04, 4.030319125985149160e-04, 4.039133206715115275e-04, 4.047940192737029008e-04, 4.056740070168428011e-04, 4.065532825139505833e-04, 4.074318443792812670e-04, 4.083096912283155086e-04, 4.091868216777217620e-04, 4.100632343455144638e-04, 4.109389278509354760e-04, 4.118139008144244329e-04, 4.126881518577694453e-04, 4.135616796038816948e-04, 4.144344826770651833e-04, 4.153065597027889963e-04, 4.161779093078419103e-04, 4.170485301202791041e-04, 4.179184207694059501e-04, 4.187875798857328027e-04, 4.196560061011438093e-04, 4.205236980487772136e-04, 4.213906543629874634e-04, 4.222568736795049671e-04, 4.231223546352232113e-04, 4.239870958683757021e-04, 4.248510960185028973e-04, 4.257143537264271066e-04, 4.265768676342072269e-04, 4.274386363852846751e-04, 4.282996586242610189e-04, 4.291599329971659371e-04, 4.300194581512343074e-04, 4.308782327350530622e-04, 4.317362553985334864e-04, 4.325935247927942869e-04, 4.334500395703145734e-04, 4.343057983849035004e-04, 4.351607998916784750e-04, 4.360150427470119768e-04, 4.368685256086865445e-04, 4.377212471356668223e-04, 4.385732059883707193e-04, 4.394244008284394496e-04, 4.402748303189150708e-04, 4.411244931241037662e-04, 4.419733879096619843e-04, 4.428215133425523120e-04, 4.436688680911267412e-04, 4.445154508249952638e-04, 4.453612602151969585e-04, 4.462062949339731213e-04, 4.470505536550412984e-04, 4.478940350533629406e-04, 4.487367378052988789e-04, 4.495786605885589084e-04, 4.504198020821779361e-04, 4.512601609664845391e-04, 4.520997359232553549e-04, 4.529385256355999935e-04, 4.537765287879273724e-04, 4.546137440661005415e-04, 4.554501701572060183e-04, 4.562858057498295010e-04, 4.571206495338239035e-04, 4.579547002004634199e-04, 4.587879564423935435e-04, 4.596204169536079187e-04, 4.604520804294173330e-04, 4.612829455666206412e-04, 4.621130110632979001e-04, 4.629422756189630777e-04, 4.637707379345295763e-04, 4.645983967122014322e-04, 4.654252506556210930e-04, 4.662512984698355899e-04, 4.670765388612823353e-04, 4.679009705377327978e-04, 4.687245922084415806e-04, 4.695474025839325625e-04, 4.703694003762500528e-04, 4.711905842987475354e-04, 4.720109530662358241e-04, 4.728305053949444117e-04, 4.736492400024151631e-04, 4.744671556076522612e-04, 4.752842509310870782e-04, 4.761005246945612082e-04, 4.769159756212718775e-04, 4.777306024359264974e-04, 4.785444038645167170e-04, 4.793573786345829680e-04, 4.801695254749948597e-04, 4.809808431161151105e-04, 4.817913302896973077e-04, 4.826009857288653072e-04, 4.834098081682609025e-04, 4.842177963439414754e-04, 4.850249489933393388e-04, 4.858312648554133622e-04, 4.866367426704284994e-04, 4.874413811802197913e-04, 4.882451791279684246e-04, 4.890481352583535193e-04, 4.898502483174952630e-04, 4.906515170529478090e-04, 4.914519402136529810e-04, 4.922515165500944466e-04, 4.930502448141903813e-04, 4.938481237592596412e-04, 4.946451521401657456e-04, 4.954413287131020959e-04, 4.962366522358499076e-04, 4.970311214675634300e-04, 4.978247351689282394e-04, 4.986174921020252804e-04, 4.994093910304932792e-04, 5.002004307193141800e-04, 5.009906099350660896e-04, 5.017799274457108820e-04, 5.025683820207382888e-04, 5.033559724311345660e-04, 5.041426974492745072e-04, 5.049285558490652090e-04, 5.057135464059175564e-04, 5.064976678967242135e-04, 5.072809190998148459e-04, 5.080632987950887188e-04, 5.088448057638194320e-04, 5.096254387888914930e-04, 5.104051966545955108e-04, 5.111840781467736966e-04, 5.119620820527814821e-04, 5.127392071613846294e-04, 5.135154522629044056e-04, 5.142908161492028372e-04, 5.150652976135730978e-04, 5.158388954509048486e-04, 5.166116084574759633e-04, 5.173834354311941967e-04, 5.181543751713942221e-04, 5.189244264789786860e-04, 5.196935881563655157e-04, 5.204618590074719820e-04, 5.212292378376871598e-04, 5.219957234540055025e-04, 5.227613146649280704e-04, 5.235260102804335835e-04, 5.242898091121101509e-04, 5.250527099729539356e-04, 5.258147116776197127e-04, 5.265758130422002348e-04, 5.273360128843802971e-04, 5.280953100233815511e-04, 5.288537032799452663e-04, 5.296111914763014300e-04, 5.303677734363072003e-04, 5.311234479853485686e-04, 5.318782139503055572e-04, 5.326320701596911050e-04, 5.333850154434619829e-04, 5.341370486331841350e-04, 5.348881685619849731e-04, 5.356383740645560875e-04, 5.363876639770870022e-04, 5.371360371374162045e-04, 5.378834923848166893e-04, 5.386300285602500966e-04, 5.393756445061512802e-04, 5.401203390665761930e-04, 5.408641110871601453e-04, 5.416069594150256473e-04, 5.423488828989169591e-04, 5.430898803891694073e-04, 5.438299507376882433e-04, 5.445690927979424632e-04, 5.453073054249270779e-04, 5.460445874753008062e-04, 5.467809378072853530e-04, 5.475163552806411229e-04, 5.482508387567732551e-04, 5.489843870986285158e-04, 5.497169991707572066e-04, 5.504486738392835648e-04, 5.511794099719741777e-04, 5.519092064381224058e-04, 5.526380621086998462e-04, 5.533659758561602004e-04, 5.540929465546732451e-04, 5.548189730799226284e-04, 5.555440543092490932e-04, 5.562681891215931224e-04, 5.569913763974901691e-04, 5.577136150190270709e-04, 5.584349038699887432e-04, 5.591552418357487826e-04, 5.598746278032521199e-04, 5.605930606611310299e-04, 5.613105392995276473e-04, 5.620270626103092892e-04, 5.627426294868890198e-04, 5.634572388243581399e-04, 5.641708895193737550e-04, 5.648835804702929996e-04, 5.655953105769880723e-04, 5.663060787410746774e-04, 5.670158838657153502e-04, 5.677247248557512962e-04, 5.684326006176749612e-04, 5.691395100595342954e-04, 5.698454520910601478e-04, 5.705504256236361253e-04, 5.712544295702897020e-04, 5.719574628456702099e-04, 5.726595243660253121e-04, 5.733606130493257942e-04, 5.740607278151730816e-04, 5.747598675847669309e-04, 5.754580312810099463e-04, 5.761552178284678983e-04, 5.768514261532811443e-04, 5.775466551832931063e-04, 5.782409038480187209e-04, 5.789341710786312118e-04, 5.796264558079499470e-04, 5.803177569704040095e-04, 5.810080735021829011e-04, 5.816974043410618779e-04, 5.823857484265291271e-04, 5.830731046997409892e-04, 5.837594721035050446e-04, 5.844448495822582128e-04, 5.851292360821844967e-04, 5.858126305511278126e-04, 5.864950319385600066e-04, 5.871764391957110668e-04, 5.878568512753778704e-04, 5.885362671321465533e-04, 5.892146857222142677e-04, 5.898921060035022639e-04, 5.905685269356179433e-04, 5.912439474798419567e-04, 5.919183665990982801e-04, 5.925917832580780307e-04, 5.932641964231451411e-04, 5.939356050623152174e-04, 5.946060081453736091e-04, 5.952754046436946724e-04, 5.959437935304598031e-04, 5.966111737804719300e-04, 5.972775443702987375e-04, 5.979429042781449471e-04, 5.986072524840013948e-04, 5.992705879694557296e-04, 5.999329097179100130e-04, 6.005942167143975968e-04, 6.012545079457108426e-04, 6.019137824003677282e-04, 6.025720390685268459e-04, 6.032292769421010274e-04, 6.038854950147442245e-04, 6.045406922818199590e-04, 6.051948677403995881e-04, 6.058480203892360662e-04, 6.065001492288725829e-04, 6.071512532615636320e-04, 6.078013314912470398e-04, 6.084503829236336285e-04, 6.090984065661741477e-04, 6.097454014279775261e-04, 6.103913665199291573e-04, 6.110363008546789744e-04, 6.116802034465503761e-04, 6.123230733116783548e-04, 6.129649094678299524e-04, 6.136057109346203416e-04, 6.142454767333271025e-04, 6.148842058870171825e-04, 6.155218974204988659e-04, 6.161585503603131007e-04, 6.167941637347033575e-04, 6.174287365737356507e-04, 6.180622679092080077e-04, 6.186947567746294355e-04, 6.193262022053325688e-04, 6.199566032383037762e-04, 6.205859589123853635e-04, 6.212142682681047034e-04, 6.218415303477913296e-04, 6.224677441955350863e-04, 6.230929088571714918e-04, 6.237170233802603794e-04, 6.243400868141900893e-04, 6.249620982101059116e-04, 6.255830566208771260e-04, 6.262029611012119275e-04, 6.268218107075018437e-04, 6.274396044979568257e-04, 6.280563415325675185e-04, 6.286720208731080796e-04, 6.292866415831024603e-04, 6.299002027278187681e-04, 6.305127033743721573e-04, 6.311241425916428631e-04, 6.317345194502474708e-04, 6.323438330226341083e-04, 6.329520823830439569e-04, 6.335592666074339480e-04, 6.341653847735934232e-04, 6.347704359611129089e-04, 6.353744192513680706e-04, 6.359773337275190621e-04, 6.365791784744725783e-04, 6.371799525789976484e-04, 6.377796551296496331e-04, 6.383782852167347709e-04, 6.389758419324145875e-04, 6.395723243706048474e-04, 6.401677316270450516e-04, 6.407620627992526843e-04, 6.413553169865968302e-04, 6.419474932901923564e-04, 6.425385908130307753e-04, 6.431286086598169641e-04, 6.437175459371578161e-04, 6.443054017534026456e-04, 6.448921752187534518e-04, 6.454778654452279470e-04, 6.460624715466390658e-04, 6.466459926385797856e-04, 6.472284278385243917e-04, 6.478097762657547510e-04, 6.483900370413276781e-04, 6.489692092881927873e-04, 6.495472921310253096e-04, 6.501242846964188629e-04, 6.507001861127239065e-04, 6.512749955101686293e-04, 6.518487120207745993e-04, 6.524213347784006732e-04, 6.529928629187247823e-04, 6.535632955792943476e-04, 6.541326318994360742e-04, 6.547008710203500604e-04, 6.552680120850895226e-04, 6.558340542384722164e-04, 6.563989966271965544e-04, 6.569628383998121161e-04, 6.575255787067080466e-04, 6.580872167001032991e-04, 6.586477515340212648e-04, 6.592071823643903860e-04, 6.597655083489762859e-04, 6.603227286473524948e-04, 6.608788424209733085e-04, 6.614338488331602357e-04, 6.619877470490217672e-04, 6.625405362355507371e-04, 6.630922155616126136e-04, 6.636427841979214296e-04, 6.641922413170357710e-04, 6.647405860933335150e-04, 6.652878177031268641e-04, 6.658339353245212909e-04, 6.663789381375225494e-04, 6.669228253239966675e-04, 6.674655960676609484e-04, 6.680072495540561065e-04, 6.685477849706567477e-04, 6.690872015067846328e-04, 6.696254983535948006e-04, 6.701626747041728198e-04, 6.706987297533879887e-04, 6.712336626980646391e-04, 6.717674727368423823e-04, 6.723001590702679412e-04, 6.728317209007632750e-04, 6.733621574326139779e-04, 6.738914678719436918e-04, 6.744196514268238282e-04, 6.749467073071814104e-04, 6.754726347247957128e-04, 6.759974328933852136e-04, 6.765211010284672994e-04, 6.770436383475293522e-04, 6.775650440698797799e-04, 6.780853174167659776e-04, 6.786044576112972406e-04, 6.791224638784341397e-04, 6.796393354450868578e-04, 6.801550715400482951e-04, 6.806696713939639279e-04, 6.811831342394101966e-04, 6.816954593108674005e-04, 6.822066458446563808e-04, 6.827166930790262321e-04, 6.832256002541366299e-04, 6.837333666120468806e-04, 6.842399913967011759e-04, 6.847454738539175342e-04, 6.852498132314667305e-04, 6.857530087790134239e-04, 6.862550597480958836e-04, 6.867559653921959193e-04, 6.872557249666775159e-04, 6.877543377288172994e-04, 6.882518029377870808e-04, 6.887481198547107776e-04, 6.892432877425734485e-04, 6.897373058663266781e-04, 6.902301734927592317e-04, 6.907218898906518790e-04, 6.912124543306458809e-04, 6.917018660853324358e-04, 6.921901244292153832e-04, 6.926772286387144562e-04, 6.931631779921264671e-04, 6.936479717697309087e-04, 6.941316092537161203e-04, 6.946140897281580370e-04, 6.950954124791165756e-04, 6.955755767944910017e-04, 6.960545819641908005e-04, 6.965324272799967896e-04, 6.970091120356475311e-04, 6.974846355268208989e-04, 6.979589970510744487e-04, 6.984321959079261904e-04, 6.989042313988493840e-04, 6.993751028272049940e-04, 6.998448094983230044e-04, 7.003133507194782411e-04, 7.007807257998278135e-04, 7.012469340504975251e-04, 7.017119747845640930e-04, 7.021758473170379086e-04, 7.026385509648699771e-04, 7.031000850469061635e-04, 7.035604488839962639e-04, 7.040196417989223396e-04, 7.044776631163776831e-04, 7.049345121630300279e-04, 7.053901882675078869e-04, 7.058446907603305133e-04, 7.062980189739958290e-04, 7.067501722429674147e-04, 7.072011499036521751e-04, 7.076509512944003386e-04, 7.080995757554827980e-04, 7.085470226291726422e-04, 7.089932912596917051e-04, 7.094383809931776056e-04, 7.098822911777727613e-04, 7.103250211635494691e-04, 7.107665703025120747e-04, 7.112069379486685291e-04, 7.116461234579822505e-04, 7.120841261883402483e-04, 7.125209454996466905e-04, 7.129565807536936660e-04, 7.133910313143097207e-04, 7.138242965472344154e-04, 7.142563758202018090e-04, 7.146872685029262559e-04, 7.151169739670343176e-04, 7.155454915861513910e-04, 7.159728207358814333e-04, 7.163989607937970962e-04, 7.168239111394143553e-04, 7.172476711542669948e-04, 7.176702402217923328e-04, 7.180916177274709747e-04, 7.185118030587045153e-04, 7.189307956049134423e-04, 7.193485947574605917e-04, 7.197651999096963587e-04, 7.201806104569401581e-04, 7.205948257965165285e-04, 7.210078453276885617e-04, 7.214196684517342308e-04, 7.218302945719177674e-04, 7.222397230934365355e-04, 7.226479534234997448e-04, 7.230549849713125126e-04, 7.234608171480562400e-04, 7.238654493668983695e-04, 7.242688810429525953e-04, 7.246711115933768743e-04, 7.250721404373014359e-04, 7.254719669958151207e-04, 7.258705906920285894e-04, 7.262680109510484105e-04, 7.266642271999263197e-04, 7.270592388677344633e-04, 7.274530453855550987e-04, 7.278456461864266005e-04, 7.282370407054251015e-04, 7.286272283795607345e-04, 7.290162086479019896e-04, 7.294039809514680540e-04, 7.297905447333040549e-04, 7.301758994384467986e-04, 7.305600445139318186e-04, 7.309429794087593307e-04, 7.313247035739806447e-04, 7.317052164626337623e-04, 7.320845175297365469e-04, 7.324626062323511249e-04, 7.328394820294796943e-04, 7.332151443821926769e-04, 7.335895927535231176e-04, 7.339628266085302180e-04, 7.343348454142926149e-04, 7.347056486398529773e-04, 7.350752357562840341e-04, 7.354436062366783832e-04, 7.358107595561366732e-04, 7.361766951917453772e-04, 7.365414126226429298e-04, 7.369049113299218226e-04, 7.372671907967415792e-04, 7.376282505082386570e-04, 7.379880899515894399e-04, 7.383467086159754356e-04, 7.387041059925628919e-04, 7.390602815745764146e-04, 7.394152348572497445e-04, 7.397689653378105787e-04, 7.401214725155224206e-04, 7.404727558916868570e-04, 7.408228149695708078e-04, 7.411716492544957562e-04, 7.415192582538074990e-04, 7.418656414768708346e-04, 7.422107984350719478e-04, 7.425547286417879438e-04, 7.428974316124620919e-04, 7.432389068645547112e-04, 7.435791539175225706e-04, 7.439181722928877357e-04, 7.442559615141657947e-04, 7.445925211069100939e-04, 7.449278505986952573e-04, 7.452619495191464610e-04, 7.455948173998813190e-04, 7.459264537745916327e-04, 7.462568581789449451e-04, 7.465860301506869979e-04, 7.469139692295605247e-04, 7.472406749573642318e-04, 7.475661468779358845e-04, 7.478903845371026506e-04, 7.482133874827549347e-04, 7.485351552648230678e-04, 7.488556874352689588e-04, 7.491749835480711328e-04, 7.494930431592806757e-04, 7.498098658269312456e-04, 7.501254511111464084e-04, 7.504397985740522518e-04, 7.507529077798328959e-04, 7.510647782947197596e-04, 7.513754096869458077e-04, 7.516848015268096268e-04, 7.519929533866593794e-04, 7.522998648408620124e-04, 7.526055354658435894e-04, 7.529099648400789909e-04, 7.532131525440530998e-04, 7.535150981603144695e-04, 7.538158012734607954e-04, 7.541152614701376140e-04, 7.544134783390285450e-04, 7.547104514708374021e-04, 7.550061804583564976e-04, 7.553006648964096133e-04, 7.555939043818510250e-04, 7.558858985136058346e-04, 7.561766468926490450e-04, 7.564661491219774794e-04, 7.567544048066493544e-04, 7.570414135537841720e-04, 7.573271749725558888e-04, 7.576116886741726415e-04, 7.578949542718827100e-04, 7.581769713810141992e-04, 7.584577396189447901e-04, 7.587372586050840665e-04, 7.590155279609262081e-04, 7.592925473099819021e-04, 7.595683162778350470e-04, 7.598428344921316939e-04, 7.601161015825722402e-04, 7.603881171808944076e-04, 7.606588809209231155e-04, 7.609283924384967548e-04, 7.611966513715564186e-04, 7.614636573600657788e-04, 7.617294100460684407e-04, 7.619939090736742825e-04, 7.622571540890133758e-04, 7.625191447403045081e-04, 7.627798806778269929e-04, 7.630393615539165500e-04, 7.632975870229624865e-04, 7.635545567414369706e-04, 7.638102703678333397e-04, 7.640647275627505605e-04, 7.643179279888210210e-04, 7.645698713107585602e-04, 7.648205571953315806e-04, 7.650699853113700948e-04, 7.653181553297667018e-04, 7.655650669234951265e-04, 7.658107197675740078e-04, 7.660551135390969305e-04, 7.662982479172387139e-04, 7.665401225832051049e-04, 7.667807372202869879e-04, 7.670200915138513861e-04, 7.672581851513298606e-04, 7.674950178222147154e-04, 7.677305892180512998e-04, 7.679648990324854964e-04, 7.681979469612180761e-04, 7.684297327020103360e-04, 7.686602559547064343e-04, 7.688895164212261255e-04, 7.691175138055324515e-04, 7.693442478136738091e-04, 7.695697181537875268e-04, 7.697939245360515105e-04, 7.700168666727469097e-04, 7.702385442781907888e-04, 7.704589570688077926e-04, 7.706781047630698652e-04, 7.708959870815377743e-04, 7.711126037468508118e-04, 7.713279544836966527e-04, 7.715420390188529884e-04, 7.717548570811744082e-04, 7.719664084015939167e-04, 7.721766927131034188e-04, 7.723857097507916660e-04, 7.725934592517934079e-04, 7.727999409553537938e-04, 7.730051546027657053e-04, 7.732090999374148597e-04, 7.734117767047694013e-04, 7.736131846523540976e-04, 7.738133235297773357e-04, 7.740121930887382783e-04, 7.742097930830060468e-04, 7.744061232684230824e-04, 7.746011834029270472e-04, 7.747949732465062630e-04, 7.749874925612498019e-04, 7.751787411113222242e-04, 7.753687186629695414e-04, 7.755574249845188914e-04, 7.757448598463523000e-04, 7.759310230209684814e-04, 7.761159142829325303e-04, 7.762995334088806931e-04, 7.764818801775427021e-04, 7.766629543697348365e-04, 7.768427557683333599e-04, 7.770212841583075880e-04, 7.771985393267143594e-04, 7.773745210626931568e-04, 7.775492291574605773e-04, 7.777226634043024178e-04, 7.778948235986121642e-04, 7.780657095378583571e-04, 7.782353210215827485e-04, 7.784036578514288160e-04, 7.785707198310992628e-04, 7.787365067664007946e-04, 7.789010184652150632e-04, 7.790642547375142791e-04, 7.792262153953485263e-04, 7.793869002528603989e-04, 7.795463091262619078e-04, 7.797044418338695002e-04, 7.798612981960671969e-04, 7.800168780353382509e-04, 7.801711811762528960e-04, 7.803242074454486144e-04, 7.804759566716577834e-04, 7.806264286857062668e-04, 7.807756233205024633e-04, 7.809235404110363319e-04, 7.810701797943931605e-04, 7.812155413097251599e-04, 7.813596247982960248e-04, 7.815024301034375655e-04, 7.816439570705802824e-04, 7.817842055472369947e-04, 7.819231753830045749e-04, 7.820608664295714300e-04, 7.821972785407134898e-04, 7.823324115722890028e-04, 7.824662653822500287e-04, 7.825988398306428723e-04, 7.827301347795774002e-04, 7.828601500932725775e-04, 7.829888856380318564e-04, 7.831163412822446943e-04, 7.832425168963896974e-04, 7.833674123530213942e-04, 7.834910275268017850e-04, 7.836133622944783331e-04, 7.837344165348704124e-04, 7.838541901289120244e-04, 7.839726829595952034e-04, 7.840898949120261776e-04, 7.842058258733849291e-04, 7.843204757329499130e-04, 7.844338443820851560e-04, 7.845459317142422073e-04, 7.846567376249534171e-04, 7.847662620118609931e-04, 7.848745047746714639e-04, 7.849814658152005648e-04, 7.850871450373515543e-04, 7.851915423470968904e-04, 7.852946576525180215e-04, 7.853964908637782807e-04, 7.854970418931357884e-04, 7.855963106549271888e-04, 7.856942970655942131e-04, 7.857910010436461659e-04, 7.858864225097034022e-04, 7.859805613864571027e-04, 7.860734175987029934e-04, 7.861649910733217207e-04, 7.862552817392757078e-04, 7.863442895276178280e-04, 7.864320143715020301e-04, 7.865184562061617625e-04, 7.866036149689191893e-04, 7.866874905991915867e-04, 7.867700830384756223e-04, 7.868513922303702317e-04, 7.869314181205491884e-04, 7.870101606567885336e-04, 7.870876197889455431e-04, 7.871637954689625219e-04, 7.872386876508810074e-04, 7.873122962908276744e-04, 7.873846213470108660e-04, 7.874556627797391333e-04, 7.875254205514039966e-04, 7.875938946264828726e-04, 7.876610849715427612e-04, 7.877269915552432807e-04, 7.877916143483307048e-04, 7.878549533236414324e-04, 7.879170084560894105e-04, 7.879777797226868424e-04, 7.880372671025362733e-04, 7.880954705768209410e-04, 7.881523901288172438e-04, 7.882080257438832480e-04, 7.882623774094686632e-04, 7.883154451151109382e-04, 7.883672288524345029e-04, 7.884177286151496837e-04, 7.884669443990600761e-04, 7.885148762020429206e-04, 7.885615240240766415e-04, 7.886068878672212231e-04, 7.886509677356185345e-04, 7.886937636355069664e-04, 7.887352755752010487e-04, 7.887755035651083631e-04, 7.888144476177201114e-04, 7.888521077476141506e-04, 7.888884839714539092e-04, 7.889235763079884955e-04, 7.889573847780519383e-04, 7.889899094045656810e-04, 7.890211502125347868e-04, 7.890511072290471795e-04, 7.890797804832813418e-04, 7.891071700064943885e-04, 7.891332758320314996e-04, 7.891580979953223421e-04, 7.891816365338811786e-04, 7.892038914872990607e-04, 7.892248628972656221e-04, 7.892445508075365520e-04, 7.892629552639651453e-04, 7.892800763144762824e-04, 7.892959140090899557e-04, 7.893104683999016460e-04, 7.893237395410867673e-04, 7.893357274889103168e-04, 7.893464323017142974e-04, 7.893558540399224889e-04, 7.893639927660474950e-04, 7.893708485446733958e-04, 7.893764214424716860e-04, 7.893807115281909750e-04, 7.893837188726645759e-04, 7.893854435488067110e-04, 7.893858856316091511e-04, 7.893850451981389380e-04, 7.893829223275552988e-04, 7.893795171010838411e-04, 7.893748296020411653e-04, 7.893688599158149143e-04, 7.893616081298715807e-04, 7.893530743337614933e-04, 7.893432586191087346e-04, 7.893321610796171037e-04, 7.893197818110640447e-04, 7.893061209113150668e-04, 7.892911784802973977e-04, 7.892749546200277400e-04, 7.892574494345947064e-04, 7.892386630301613136e-04, 7.892185955149678012e-04, 7.891972469993338004e-04, 7.891746175956477084e-04, 7.891507074183768799e-04, 7.891255165840625318e-04, 7.890990452113208270e-04, 7.890712934208392966e-04, 7.890422613353844294e-04, 7.890119490797881194e-04, 7.889803567809673982e-04, 7.889474845678988478e-04, 7.889133325716392005e-04, 7.888779009253140632e-04, 7.888411897641238804e-04, 7.888031992253378630e-04, 7.887639294482960478e-04, 7.887233805744117915e-04, 7.886815527471659161e-04, 7.886384461121116957e-04, 7.885940608168695446e-04, 7.885483970111300525e-04, 7.885014548466527922e-04, 7.884532344772642596e-04, 7.884037360588668723e-04, 7.883529597494172859e-04, 7.883009057089503547e-04, 7.882475740995634108e-04, 7.881929650854195167e-04, 7.881370788327542957e-04, 7.880799155098588017e-04, 7.880214752871009861e-04, 7.879617583369039058e-04, 7.879007648337597088e-04, 7.878384949542213949e-04, 7.877749488769156087e-04, 7.877101267825208477e-04, 7.876440288537844836e-04, 7.875766552755140894e-04, 7.875080062345776559e-04, 7.874380819199107472e-04, 7.873668825225058759e-04, 7.872944082354180325e-04, 7.872206592537590473e-04, 7.871456357747055052e-04, 7.870693379974874702e-04, 7.869917661234037722e-04, 7.869129203557995644e-04, 7.868328009000883326e-04, 7.867514079637354151e-04, 7.866687417562634238e-04, 7.865848024892553884e-04, 7.864995903763495524e-04, 7.864131056332382885e-04, 7.863253484776674485e-04, 7.862363191294417840e-04, 7.861460178104165983e-04, 7.860544447445067450e-04, 7.859616001576738347e-04, 7.858674842779383779e-04, 7.857720973353643891e-04, 7.856754395620771684e-04, 7.855775111922530009e-04, 7.854783124621122180e-04, 7.853778436099274375e-04, 7.852761048760272498e-04, 7.851730965027756181e-04, 7.850688187346073314e-04, 7.849632718179861551e-04, 7.848564560014317185e-04, 7.847483715355091068e-04, 7.846390186728302704e-04, 7.845283976680490377e-04, 7.844165087778800886e-04, 7.843033522610659948e-04, 7.841889283783994458e-04, 7.840732373927229238e-04, 7.839562795689076699e-04, 7.838380551738913064e-04, 7.837185644766280716e-04, 7.835978077481345729e-04, 7.834757852614549845e-04, 7.833524972916840320e-04, 7.832279441159425981e-04, 7.831021260134120917e-04, 7.829750432652922724e-04, 7.828466961548344273e-04, 7.827170849673213129e-04, 7.825862099900714923e-04, 7.824540715124479002e-04, 7.823206698258466756e-04, 7.821860052236930417e-04, 7.820500780014499800e-04, 7.819128884566220244e-04, 7.817744368887321682e-04, 7.816347235993568836e-04, 7.814937488920867649e-04, 7.813515130725532006e-04, 7.812080164484152536e-04, 7.810632593293585779e-04, 7.809172420271139579e-04, 7.807699648554292278e-04, 7.806214281300768608e-04, 7.804716321688704491e-04, 7.803205772916335875e-04, 7.801682638202396634e-04, 7.800146920785659948e-04, 7.798598623925306937e-04, 7.797037750900675124e-04, 7.795464305011323486e-04, 7.793878289577128946e-04, 7.792279707938206150e-04, 7.790668563454828310e-04, 7.789044859507430465e-04, 7.787408599496810054e-04, 7.785759786843764792e-04, 7.784098424989567555e-04, 7.782424517395358137e-04, 7.780738067542727638e-04, 7.779039078933263100e-04, 7.777327555088764345e-04, 7.775603499551165913e-04, 7.773866915882723548e-04, 7.772117807665649900e-04, 7.770356178502278244e-04, 7.768582032015260890e-04, 7.766795371847130076e-04, 7.764996201660795622e-04, 7.763184525139148109e-04, 7.761360345985121763e-04, 7.759523667921792035e-04, 7.757674494692394030e-04, 7.755812830060100247e-04, 7.753938677808383789e-04, 7.752052041740527212e-04, 7.750152925680073562e-04, 7.748241333470475087e-04, 7.746317268975215758e-04, 7.744380736078011838e-04, 7.742431738682476871e-04, 7.740470280712232268e-04, 7.738496366110859601e-04, 7.736509998842028540e-04, 7.734511182889513116e-04, 7.732499922256904409e-04, 7.730476220967778594e-04, 7.728440083065824884e-04, 7.726391512614549538e-04, 7.724330513697512217e-04, 7.722257090418224073e-04, 7.720171246900128228e-04, 7.718072987286541233e-04, 7.715962315740805934e-04, 7.713839236446016091e-04, 7.711703753605491252e-04, 7.709555871442151176e-04, 7.707395594198960349e-04, 7.705222926138723073e-04, 7.703037871544096476e-04, 7.700840434717624123e-04, 7.698630619981870456e-04, 7.696408431679044575e-04, 7.694173874171242019e-04, 7.691926951840516316e-04, 7.689667669088530964e-04, 7.687396030337085261e-04, 7.685112040027495227e-04, 7.682815702621071741e-04, 7.680507022598850571e-04, 7.678186004461558765e-04, 7.675852652729845587e-04, 7.673506971944197945e-04, 7.671148966664641158e-04, 7.668778641471143357e-04, 7.666396000963333597e-04, 7.664001049760442224e-04, 7.661593792501739976e-04, 7.659174233846053345e-04, 7.656742378471883843e-04, 7.654298231077389563e-04, 7.651841796380602027e-04, 7.649373079119004427e-04, 7.646892084050054212e-04, 7.644398815950579186e-04, 7.641893279617297929e-04, 7.639375479866394782e-04, 7.636845421533656466e-04, 7.634303109474783241e-04, 7.631748548564932458e-04, 7.629181743698795542e-04, 7.626602699790694479e-04, 7.624011421774577486e-04, 7.621407914604144771e-04, 7.618792183252425703e-04, 7.616164232712015160e-04, 7.613524067995283869e-04, 7.610871694133914366e-04, 7.608207116179188309e-04, 7.605530339202172963e-04, 7.602841368293110792e-04, 7.600140208561803265e-04, 7.597426865137776745e-04, 7.594701343169731706e-04, 7.591963647826221453e-04, 7.589213784294887750e-04, 7.586451757783176401e-04, 7.583677573517751775e-04, 7.580891236744710399e-04, 7.578092752729692627e-04, 7.575282126757877221e-04, 7.572459364133639825e-04, 7.569624470180736199e-04, 7.566777450242554836e-04, 7.563918309681515227e-04, 7.561047053879898366e-04, 7.558163688238843858e-04, 7.555268218179248723e-04, 7.552360649141021468e-04, 7.549440986583678395e-04, 7.546509235985774397e-04, 7.543565402845580584e-04, 7.540609492680277635e-04, 7.537641511026590057e-04, 7.534661463440367685e-04, 7.531669355496714699e-04, 7.528665192790255254e-04, 7.525648980934662941e-04, 7.522620725562887377e-04, 7.519580432326989413e-04, 7.516528106898398088e-04, 7.513463754967894363e-04, 7.510387382245188289e-04, 7.507298994459219322e-04, 7.504198597358294025e-04, 7.501086196709700086e-04, 7.497961798299820164e-04, 7.494825407934498345e-04, 7.491677031438569601e-04, 7.488516674655795822e-04, 7.485344343449386231e-04, 7.482160043701231939e-04, 7.478963781312907748e-04, 7.475755562204504465e-04, 7.472535392315555894e-04, 7.469303277604484809e-04, 7.466059224048710290e-04, 7.462803237644809271e-04, 7.459535324408562073e-04, 7.456255490374438495e-04, 7.452963741596003305e-04, 7.449660084145988881e-04, 7.446344524115783466e-04, 7.443017067616230229e-04, 7.439677720776700269e-04, 7.436326489745750728e-04, 7.432963380690810369e-04, 7.429588399798143800e-04, 7.426201553273030368e-04, 7.422802847339869323e-04, 7.419392288241623626e-04, 7.415969882240171229e-04, 7.412535635616511074e-04, 7.409089554670170033e-04, 7.405631645719848010e-04, 7.402161915103024374e-04, 7.398680369175821350e-04, 7.395187014313212188e-04, 7.391681856909048266e-04, 7.388164903376209791e-04, 7.384636160145968296e-04, 7.381095633668445250e-04, 7.377543330412773609e-04, 7.373979256866551374e-04, 7.370403419536090961e-04, 7.366815824946803008e-04, 7.363216479642525252e-04, 7.359605390185810928e-04, 7.355982563157821433e-04, 7.352348005158511725e-04, 7.348701722806719227e-04, 7.345043722739564261e-04, 7.341374011612872893e-04, 7.337692596101340640e-04, 7.333999482897978449e-04, 7.330294678714589741e-04, 7.326578190281563333e-04, 7.322850024347899453e-04, 7.319110187680933277e-04, 7.315358687066895451e-04, 7.311595529310167254e-04, 7.307820721234172890e-04, 7.304034269680375517e-04, 7.300236181509055710e-04, 7.296426463598837658e-04, 7.292605122846774817e-04, 7.288772166168463757e-04, 7.284927600498271837e-04, 7.281071432788517551e-04, 7.277203670010131895e-04, 7.273324319152608486e-04, 7.269433387223501585e-04, 7.265530881249369346e-04, 7.261616808274477114e-04, 7.257691175361973782e-04, 7.253753989592983233e-04, 7.249805258067238594e-04, 7.245844987902733125e-04, 7.241873186235839484e-04, 7.237889860220995302e-04, 7.233895017031309257e-04, 7.229888663857865017e-04, 7.225870807909982527e-04, 7.221841456415586643e-04, 7.217800616620689965e-04, 7.213748295789381999e-04, 7.209684501203982021e-04, 7.205609240165109560e-04, 7.201522519991865453e-04, 7.197424348021018697e-04, 7.193314731607690577e-04, 7.189193678125329733e-04, 7.185061194965340278e-04, 7.180917289537106733e-04, 7.176761969268570822e-04, 7.172595241605560354e-04, 7.168417114011859693e-04, 7.164227593969296499e-04, 7.160026688977966149e-04, 7.155814406556139590e-04, 7.151590754239708220e-04, 7.147355739582929822e-04, 7.143109370157856106e-04, 7.138851653554533286e-04, 7.134582597381064961e-04, 7.130302209263808359e-04, 7.126010496846595880e-04, 7.121707467791337908e-04, 7.117393129778079195e-04, 7.113067490504357011e-04, 7.108730557686290764e-04, 7.104382339057167123e-04, 7.100022842368641307e-04, 7.095652075389986824e-04, 7.091270045908260261e-04, 7.086876761728466093e-04, 7.082472230673720389e-04, 7.078056460584466938e-04, 7.073629459319019349e-04, 7.069191234753767050e-04, 7.064741794782393577e-04, 7.060281147316984631e-04, 7.055809300286682581e-04, 7.051326261638869329e-04, 7.046832039338194863e-04, 7.042326641367221279e-04, 7.037810075726508427e-04, 7.033282350433740044e-04, 7.028743473524367777e-04, 7.024193453051820425e-04, 7.019632297086771024e-04, 7.015060013717468613e-04, 7.010476611050217447e-04, 7.005882097208603965e-04, 7.001276480333712545e-04, 6.996659768584146104e-04, 6.992031970136139939e-04, 6.987393093183775312e-04, 6.982743145938135948e-04, 6.978082136627869643e-04, 6.973410073499463659e-04, 6.968726964816399040e-04, 6.964032818859963768e-04, 6.959327643928739935e-04, 6.954611448338874789e-04, 6.949884240423568997e-04, 6.945146028533867024e-04, 6.940396821037645575e-04, 6.935636626320869098e-04, 6.930865452786144545e-04, 6.926083308853920499e-04, 6.921290202961663182e-04, 6.916486143564114491e-04, 6.911671139133423189e-04, 6.906845198159327053e-04, 6.902008329148327792e-04, 6.897160540624213635e-04, 6.892301841128379170e-04, 6.887432239218848479e-04, 6.882551743471668334e-04, 6.877660362479228774e-04, 6.872758104851671478e-04, 6.867844979216005058e-04, 6.862920994216213481e-04, 6.857986158513960798e-04, 6.853040480787689088e-04, 6.848083969732850478e-04, 6.843116634061962439e-04, 6.838138482504935211e-04, 6.833149523808161076e-04, 6.828149766735773117e-04, 6.823139220068513309e-04, 6.818117892604098982e-04, 6.813085793157183786e-04, 6.808042930559525746e-04, 6.802989313660145554e-04, 6.797924951324491732e-04, 6.792849852435003336e-04, 6.787764025891411361e-04, 6.782667480609963538e-04, 6.777560225523695386e-04, 6.772442269583081815e-04, 6.767313621755055922e-04, 6.762174291023320162e-04, 6.757024286388420070e-04, 6.751863616867707397e-04, 6.746692291495780302e-04, 6.741510319323355772e-04, 6.736317709418067606e-04, 6.731114470864590004e-04, 6.725900612763895982e-04, 6.720676144233983778e-04, 6.715441074409454021e-04, 6.710195412441663683e-04, 6.704939167498324927e-04, 6.699672348764222846e-04, 6.694394965440206074e-04, 6.689107026744523605e-04, 6.683808541911237522e-04, 6.678499520191560901e-04, 6.673179970852886368e-04, 6.667849903179107023e-04, 6.662509326471163958e-04, 6.657158250046197332e-04, 6.651796683237723093e-04, 6.646424635395747904e-04, 6.641042115887053204e-04, 6.635649134094356036e-04, 6.630245699417561299e-04, 6.624831821272212425e-04, 6.619407509090821694e-04, 6.613972772321822895e-04, 6.608527620430373634e-04, 6.603072062897852269e-04, 6.597606109222113775e-04, 6.592129768916951986e-04, 6.586643051512956109e-04, 6.581145966556641198e-04, 6.575638523610680174e-04, 6.570120732254580362e-04, 6.564592602083729397e-04, 6.559054142709632666e-04, 6.553505363759968595e-04, 6.547946274878772973e-04, 6.542376885726535439e-04, 6.536797205979386332e-04, 6.531207245329655057e-04, 6.525607013486150890e-04, 6.519996520173474515e-04, 6.514375775132134026e-04, 6.508744788119346161e-04, 6.503103568907997629e-04, 6.497452127286929176e-04, 6.491790473060950759e-04, 6.486118616051015024e-04, 6.480436566094444984e-04, 6.474744333043783683e-04, 6.469041926768108247e-04, 6.463329357152134335e-04, 6.457606634096423222e-04, 6.451873767517606224e-04, 6.446130767348521315e-04, 6.440377643537336001e-04, 6.434614406048078583e-04, 6.428841064861080508e-04, 6.423057629971809773e-04, 6.417264111392434337e-04, 6.411460519150005005e-04, 6.405646863287971140e-04, 6.399823153865148500e-04, 6.393989400955974031e-04, 6.388145614651208424e-04, 6.382291805056910464e-04, 6.376427982294714586e-04, 6.370554156501916521e-04, 6.364670337831843019e-04, 6.358776536452739447e-04, 6.352872762549439467e-04, 6.346959026321426483e-04, 6.341035337984410065e-04, 6.335101707769114901e-04, 6.329158145922075514e-04, 6.323204662705755527e-04, 6.317241268397440690e-04, 6.311267973290041189e-04, 6.305284787692313911e-04, 6.299291721928076395e-04, 6.293288786336483304e-04, 6.287275991272694292e-04, 6.281253347106917741e-04, 6.275220864224580978e-04, 6.269178553026487485e-04, 6.263126423928884121e-04, 6.257064487363775537e-04, 6.250992753777815042e-04, 6.244911233633021258e-04, 6.238819937407140241e-04, 6.232718875592612243e-04, 6.226608058697482434e-04, 6.220487497244934702e-04, 6.214357201773451026e-04, 6.208217182836311661e-04, 6.202067451002475510e-04, 6.195908016855367984e-04, 6.189738890994506224e-04, 6.183560084033534526e-04, 6.177371606601928704e-04, 6.171173469343734083e-04, 6.164965682918017607e-04, 6.158748257999467407e-04, 6.152521205277444120e-04, 6.146284535456145691e-04, 6.140038259254740729e-04, 6.133782387407756649e-04, 6.127516930664047515e-04, 6.121241899788282649e-04, 6.114957305559086138e-04, 6.108663158770689158e-04, 6.102359470231752533e-04, 6.096046250765656217e-04, 6.089723511211316779e-04, 6.083391262422012131e-04, 6.077049515265589693e-04, 6.070698280625186306e-04, 6.064337569398305572e-04, 6.057967392497023854e-04, 6.051587760848883661e-04, 6.045198685395651150e-04, 6.038800177093679332e-04, 6.032392246913967707e-04, 6.025974905842316218e-04, 6.019548164879555104e-04, 6.013112035040419495e-04, 6.006666527354399430e-04, 6.000211652865954527e-04, 5.993747422633687819e-04, 5.987273847730592959e-04, 5.980790939244861942e-04, 5.974298708278799825e-04, 5.967797165949004700e-04, 5.961286323386558519e-04, 5.954766191737099730e-04, 5.948236782161161551e-04, 5.941698105832917548e-04, 5.935150173941065258e-04, 5.928592997689122179e-04, 5.922026588294237483e-04, 5.915450956988689297e-04, 5.908866115018702927e-04, 5.902272073644589633e-04, 5.895668844140961300e-04, 5.889056437797080641e-04, 5.882434865915766144e-04, 5.875804139815010794e-04, 5.869164270825983883e-04, 5.862515270294779831e-04, 5.855857149581204964e-04, 5.849189920059012782e-04, 5.842513593116850472e-04, 5.835828180156990390e-04, 5.829133692595629300e-04, 5.822430141863033657e-04, 5.815717539403951605e-04, 5.808995896676375902e-04, 5.802265225153374053e-04, 5.795525536320928579e-04, 5.788776841679703182e-04, 5.782019152743738451e-04, 5.775252481041440655e-04, 5.768476838114932302e-04, 5.761692235520389331e-04, 5.754898684827388419e-04, 5.748096197619956488e-04, 5.741284785495471329e-04, 5.734464460064982519e-04, 5.727635232954050599e-04, 5.720797115801565290e-04, 5.713950120259989442e-04, 5.707094257995497808e-04, 5.700229540688181960e-04, 5.693355980032168469e-04, 5.686473587734563974e-04, 5.679582375516248815e-04, 5.672682355112161103e-04, 5.665773538270420673e-04, 5.658855936752542684e-04, 5.651929562334381948e-04, 5.644994426804887189e-04, 5.638050541966199702e-04, 5.631097919634602033e-04, 5.624136571639067311e-04, 5.617166509823120829e-04, 5.610187746042651037e-04, 5.603200292167745096e-04, 5.596204160081406269e-04, 5.589199361679897610e-04, 5.582185908873586559e-04, 5.575163813585725216e-04, 5.568133087752756083e-04, 5.561093743324403140e-04, 5.554045792264112030e-04, 5.546989246547865023e-04, 5.539924118165928755e-04, 5.532850419120727021e-04, 5.525768161428648139e-04, 5.518677357118800288e-04, 5.511578018233274966e-04, 5.504470156828121692e-04, 5.497353784972000340e-04, 5.490228914746541093e-04, 5.483095558246406246e-04, 5.475953727579864830e-04, 5.468803434867341952e-04, 5.461644692243291209e-04, 5.454477511854672472e-04, 5.447301905861250040e-04, 5.440117886435757435e-04, 5.432925465763996072e-04, 5.425724656045193038e-04, 5.418515469490628499e-04, 5.411297918324659180e-04, 5.404072014784949305e-04, 5.396837771121499152e-04, 5.389595199596993076e-04, 5.382344312487684227e-04, 5.375085122082098920e-04, 5.367817640681374911e-04, 5.360541880599393669e-04, 5.353257854162846510e-04, 5.345965573711648766e-04, 5.338665051597532487e-04, 5.331356300185076435e-04, 5.324039331851927260e-04, 5.316714158987533153e-04, 5.309380793995095412e-04, 5.302039249289174517e-04, 5.294689537297742532e-04, 5.287331670460597996e-04, 5.279965661230726602e-04, 5.272591522072712835e-04, 5.265209265464809718e-04, 5.257818903896513451e-04, 5.250420449870572435e-04, 5.243013915901633109e-04, 5.235599314516540268e-04, 5.228176658255295501e-04, 5.220745959669778917e-04, 5.213307231323984414e-04, 5.205860485794185566e-04, 5.198405735669431099e-04, 5.190942993550184221e-04, 5.183472272050299121e-04, 5.175993583794631387e-04, 5.168506941421088232e-04, 5.161012357579219034e-04, 5.153509844930578539e-04, 5.145999416149597480e-04, 5.138481083922360679e-04, 5.130954860946681855e-04, 5.123420759933080496e-04, 5.115878793603626093e-04, 5.108328974692203771e-04, 5.100771315945546456e-04, 5.093205830121830821e-04, 5.085632529991043760e-04, 5.078051428335040923e-04, 5.070462537947812353e-04, 5.062865871635677641e-04, 5.055261442216019575e-04, 5.047649262518172104e-04, 5.040029345383845345e-04, 5.032401703665689017e-04, 5.024766350229262430e-04, 5.017123297950747910e-04, 5.009472559718872002e-04, 5.001814148433578406e-04, 4.994148077006480089e-04, 4.986474358361040349e-04, 4.978793005432849287e-04, 4.971104031168304327e-04, 4.963407448525544805e-04, 4.955703270474788071e-04, 4.947991509996989409e-04, 4.940272180085635316e-04, 4.932545293745228864e-04, 4.924810863991575935e-04, 4.917068903851969531e-04, 4.909319426365631048e-04, 4.901562444582384295e-04, 4.893797971564627656e-04, 4.886026020384973785e-04, 4.878246604128208216e-04, 4.870459735889966636e-04, 4.862665428777023825e-04, 4.854863695908304133e-04, 4.847054550413486653e-04, 4.839238005433319639e-04, 4.831414074119786393e-04, 4.823582769636602908e-04, 4.815744105157763414e-04, 4.807898093869691436e-04, 4.800044748968685954e-04, 4.792184083663060534e-04, 4.784316111171505641e-04, 4.776440844724323003e-04, 4.768558297562682392e-04, 4.760668482938946880e-04, 4.752771414115975705e-04, 4.744867104368311462e-04, 4.736955566980913766e-04, 4.729036815249524077e-04, 4.721110862481658291e-04, 4.713177721995213541e-04, 4.705237407118778819e-04, 4.697289931191816581e-04, 4.689335307564745686e-04, 4.681373549599336052e-04, 4.673404670667271536e-04, 4.665428684151164758e-04, 4.657445603444893196e-04, 4.649455441952169668e-04, 4.641458213088615328e-04, 4.633453930279325087e-04, 4.625442606960893446e-04, 4.617424256579845117e-04, 4.609398892594000568e-04, 4.601366528470896889e-04, 4.593327177689852654e-04, 4.585280853739484011e-04, 4.577227570119804783e-04, 4.569167340340793697e-04, 4.561100177922710968e-04, 4.553026096397159192e-04, 4.544945109305625094e-04, 4.536857230199795575e-04, 4.528762472641766415e-04, 4.520660850204506862e-04, 4.512552376470438235e-04, 4.504437065033513429e-04, 4.496314929496742765e-04, 4.488185983474274571e-04, 4.480050240589993310e-04, 4.471907714477799849e-04, 4.463758418782663674e-04, 4.455602367159229690e-04, 4.447439573272098491e-04, 4.439270050795987360e-04, 4.431093813416255023e-04, 4.422910874827453158e-04, 4.414721248735269826e-04, 4.406524948854875518e-04, 4.398321988911297210e-04, 4.390112382639506719e-04, 4.381896143784676581e-04, 4.373673286102417487e-04, 4.365443823357393217e-04, 4.357207769324312682e-04, 4.348965137788335963e-04, 4.340715942543533113e-04, 4.332460197395097555e-04, 4.324197916156746714e-04, 4.315929112652885534e-04, 4.307653800717149315e-04, 4.299371994192887269e-04, 4.291083706933362008e-04, 4.282788952802049328e-04, 4.274487745671204353e-04, 4.266180099422892612e-04, 4.257866027949360832e-04, 4.249545545151526649e-04, 4.241218664941167065e-04, 4.232885401238317994e-04, 4.224545767973470855e-04, 4.216199779085910487e-04, 4.207847448525087750e-04, 4.199488790249009487e-04, 4.191123818226435115e-04, 4.182752546434208405e-04, 4.174374988859490937e-04, 4.165991159498280542e-04, 4.157601072355698066e-04, 4.149204741447120367e-04, 4.140802180796677068e-04, 4.132393404437553048e-04, 4.123978426412221003e-04, 4.115557260772906571e-04, 4.107129921580100263e-04, 4.098696422904795798e-04, 4.090256778825823508e-04, 4.081811003432089758e-04, 4.073359110820855777e-04, 4.064901115098998579e-04, 4.056437030382315455e-04, 4.047966870795805861e-04, 4.039490650472920608e-04, 4.031008383556841765e-04, 4.022520084198792927e-04, 4.014025766560252615e-04, 4.005525444810292563e-04, 3.997019133127844236e-04, 3.988506845700121321e-04, 3.979988596723188932e-04, 3.971464400402148465e-04, 3.962934270951428708e-04, 3.954398222593333550e-04, 3.945856269559083361e-04, 3.937308426089206385e-04, 3.928754706431998090e-04, 3.920195124845731317e-04, 3.911629695596041721e-04, 3.903058432958152017e-04, 3.894481351215297715e-04, 3.885898464659334273e-04, 3.877309787590844437e-04, 3.868715334319537767e-04, 3.860115119162499104e-04, 3.851509156446250191e-04, 3.842897460505213889e-04, 3.834280045682055709e-04, 3.825656926328863420e-04, 3.817028116805467621e-04, 3.808393631479969205e-04, 3.799753484728751827e-04, 3.791107690937132969e-04, 3.782456264497773956e-04, 3.773799219812931302e-04, 3.765136571291812883e-04, 3.756468333352777243e-04, 3.747794520421830343e-04, 3.739115146932979017e-04, 3.730430227329328721e-04, 3.721739776061560234e-04, 3.713043807588262504e-04, 3.704342336376094196e-04, 3.695635376900404398e-04, 3.686922943643563492e-04, 3.678205051097338096e-04, 3.669481713760125809e-04, 3.660752946139243964e-04, 3.652018762749201404e-04, 3.643279178112790819e-04, 3.634534206761296914e-04, 3.625783863232886909e-04, 3.617028162073790691e-04, 3.608267117838630960e-04, 3.599500745088844624e-04, 3.590729058395029016e-04, 3.581952072334134893e-04, 3.573169801491846262e-04, 3.564382260460949195e-04, 3.555589463841897784e-04, 3.546791426243003334e-04, 3.537988162280788357e-04, 3.529179686578411222e-04, 3.520366013766783970e-04, 3.511547158484982687e-04, 3.502723135378631495e-04, 3.493893959102223833e-04, 3.485059644316374546e-04, 3.476220205690127066e-04, 3.467375657899190501e-04, 3.458526015627442877e-04, 3.449671293565200760e-04, 3.440811506411483602e-04, 3.431946668871293485e-04, 3.423076795657915795e-04, 3.414201901491343335e-04, 3.405322001098625979e-04, 3.396437109215053539e-04, 3.387547240582520786e-04, 3.378652409949929147e-04, 3.369752632073339579e-04, 3.360847921716551530e-04, 3.351938293649499951e-04, 3.343023762650569521e-04, 3.334104343503868965e-04, 3.325180051001503539e-04, 3.316250899942032216e-04, 3.307316905130790229e-04, 3.298378081381082784e-04, 3.289434443512570137e-04, 3.280486006351634597e-04, 3.271532784731546410e-04, 3.262574793492655661e-04, 3.253612047482751690e-04, 3.244644561555267651e-04, 3.235672350571407716e-04, 3.226695429398570647e-04, 3.217713812910894065e-04, 3.208727515989448519e-04, 3.199736553522600159e-04, 3.190740940404395809e-04, 3.181740691535716020e-04, 3.172735821824698450e-04, 3.163726346185062230e-04, 3.154712279538494837e-04, 3.145693636811870025e-04, 3.136670432939552846e-04, 3.127642682861835142e-04, 3.118610401525474395e-04, 3.109573603883891593e-04, 3.100532304897538776e-04, 3.091486519532258095e-04, 3.082436262760482565e-04, 3.073381549561601984e-04, 3.064322394920323623e-04, 3.055258813829074809e-04, 3.046190821285168289e-04, 3.037118432293145183e-04, 3.028041661862996355e-04, 3.018960525011736670e-04, 3.009875036761535836e-04, 3.000785212142122616e-04, 2.991691066187968616e-04, 2.982592613940650218e-04, 2.973489870447223364e-04, 2.964382850760602481e-04, 2.955271569940746599e-04, 2.946156043052992933e-04, 2.937036285168489482e-04, 2.927912311364343559e-04, 2.918784136723770874e-04, 2.909651776336523248e-04, 2.900515245297208104e-04, 2.891374558706525538e-04, 2.882229731671582737e-04, 2.873080779304500241e-04, 2.863927716723789420e-04, 2.854770559053523057e-04, 2.845609321423705064e-04, 2.836444018969436730e-04, 2.827274666832318051e-04, 2.818101280158600251e-04, 2.808923874101578616e-04, 2.799742463818749171e-04, 2.790557064474192303e-04, 2.781367691236957297e-04, 2.772174359281604980e-04, 2.762977083788438113e-04, 2.753775879943819063e-04, 2.744570762938581990e-04, 2.735361747969178303e-04, 2.726148850238096252e-04, 2.716932084952177699e-04, 2.707711467325061910e-04, 2.698487012574278272e-04, 2.689258735923698209e-04, 2.680026652601864975e-04, 2.670790777842568819e-04, 2.661551126885046479e-04, 2.652307714974372040e-04, 2.643060557359537890e-04, 2.633809669295758657e-04, 2.624555066042742984e-04, 2.615296762865107700e-04, 2.606034775033589952e-04, 2.596769117823351518e-04, 2.587499806514389177e-04, 2.578226856391717934e-04, 2.568950282745936439e-04, 2.559670100871571405e-04, 2.550386326069540373e-04, 2.541098973644217323e-04, 2.531808058905877547e-04, 2.522513597169046950e-04, 2.513215603752878813e-04, 2.503914093982350210e-04, 2.494609083186621066e-04, 2.485300586699380559e-04, 2.475988619859058543e-04, 2.466673198008994140e-04, 2.457354336497832013e-04, 2.448032050677830473e-04, 2.438706355906092586e-04, 2.429377267544933453e-04, 2.420044800960443904e-04, 2.410708971523647622e-04, 2.401369794610756195e-04, 2.392027285601415422e-04, 2.382681459879984400e-04, 2.373332332835880842e-04, 2.363979919861913576e-04, 2.354624236356752352e-04, 2.345265297721987495e-04, 2.335903119364597809e-04, 2.326537716695278749e-04, 2.317169105128996708e-04, 2.307797300085235952e-04, 2.298422316988332282e-04, 2.289044171265822874e-04, 2.279662878349632943e-04, 2.270278453676505086e-04, 2.260890912686281903e-04, 2.251500270824391805e-04, 2.242106543538883990e-04, 2.232709746282960056e-04, 2.223309894513002651e-04, 2.213907003690263303e-04, 2.204501089278948262e-04, 2.195092166748694004e-04, 2.185680251571614952e-04, 2.176265359224809873e-04, 2.166847505188627433e-04, 2.157426704947087949e-04, 2.148002973989092271e-04, 2.138576327806739107e-04, 2.129146781895711806e-04, 2.119714351755462676e-04, 2.110279052889390519e-04, 2.100840900805245586e-04, 2.091399911013420868e-04, 2.081956099028191612e-04, 2.072509480368091002e-04, 2.063060070554644345e-04, 2.053607885112763726e-04, 2.044152939571959333e-04, 2.034695249464672762e-04, 2.025234830326419326e-04, 2.015771697697053312e-04, 2.006305867118845696e-04, 1.996837354138962625e-04, 1.987366174306517475e-04, 1.977892343175068578e-04, 1.968415876300892361e-04, 1.958936789243608933e-04, 1.949455097566350401e-04, 1.939970816836177482e-04, 1.930483962622345858e-04, 1.920994550497561685e-04, 1.911502596038361877e-04, 1.902008114823430069e-04, 1.892511122436062090e-04, 1.883011634461225880e-04, 1.873509666488033202e-04, 1.864005234108060207e-04, 1.854498352915922069e-04, 1.844989038509494968e-04, 1.835477306490269271e-04, 1.825963172461671463e-04, 1.816446652030285493e-04, 1.806927760806265049e-04, 1.797406514401596388e-04, 1.787882928432418263e-04, 1.778357018517083912e-04, 1.768828800276562479e-04, 1.759298289334617097e-04, 1.749765501317996524e-04, 1.740230451856837645e-04, 1.730693156582941328e-04, 1.721153631131008138e-04, 1.711611891139055216e-04, 1.702067952247107913e-04, 1.692521830097596888e-04, 1.682973540336608453e-04, 1.673423098612161514e-04, 1.663870520574608450e-04, 1.654315821876818345e-04, 1.644759018174365907e-04, 1.635200125125928564e-04, 1.625639158391559592e-04, 1.616076133633945525e-04, 1.606511066518798636e-04, 1.596943972713341759e-04, 1.587374867887779558e-04, 1.577803767714415983e-04, 1.568230687868047292e-04, 1.558655644025108244e-04, 1.549078651865106230e-04, 1.539499727068697349e-04, 1.529918885320226700e-04, 1.520336142304691530e-04, 1.510751513710297781e-04, 1.501165015226711274e-04, 1.491576662545688443e-04, 1.481986471361252517e-04, 1.472394457370094676e-04, 1.462800636269854777e-04, 1.453205023760355177e-04, 1.443607635544015436e-04, 1.434008487324117871e-04, 1.424407594807344042e-04, 1.414804973700755795e-04, 1.405200639714332292e-04, 1.395594608559241521e-04, 1.385986895948237388e-04, 1.376377517596914953e-04, 1.366766489221977055e-04, 1.357153826541425683e-04, 1.347539545275809885e-04, 1.337923661146718187e-04, 1.328306189877162405e-04, 1.318687147192847782e-04, 1.309066548820439621e-04, 1.299444410487944927e-04, 1.289820747924923553e-04, 1.280195576862672515e-04, 1.270568913034606548e-04, 1.260940772174556717e-04, 1.251311170017990152e-04, 1.241680122302448602e-04, 1.232047644766207550e-04, 1.222413753148699595e-04, 1.212778463191770226e-04, 1.203141790637924806e-04, 1.193503751230749104e-04, 1.183864360715085481e-04, 1.174223634837228992e-04, 1.164581589345332202e-04, 1.154938239987652167e-04, 1.145293602513816237e-04, 1.135647692675244356e-04, 1.126000526223588623e-04, 1.116352118912024305e-04, 1.106702486495414635e-04, 1.097051644728591136e-04, 1.087399609367596112e-04, 1.077746396170099931e-04, 1.068092020893654650e-04, 1.058436499298234026e-04, 1.048779847143218485e-04, 1.039122080189936901e-04, 1.029463214199923877e-04, 1.019803264935537329e-04, 1.010142248160151749e-04, 1.000480179638554753e-04, 9.908170751352169607e-05, 9.811529504155391032e-05, 9.714878212462613074e-05, 9.618217033937244431e-05, 9.521546126264200302e-05, 9.424865647119508142e-05, 9.328175754195877211e-05, 9.231476605183142276e-05, 9.134768357782966752e-05, 9.038051169700094542e-05, 8.941325198646253168e-05, 8.844590602331413743e-05, 8.747847538478586266e-05, 8.651096164808376519e-05, 8.554336639043242914e-05, 8.457569118919891634e-05, 8.360793762172068991e-05, 8.264010726534410343e-05, 8.167220169744452644e-05, 8.070422249544443704e-05, 7.973617123685500111e-05, 7.876804949909982161e-05, 7.779985885964282031e-05, 7.683160089602831253e-05, 7.586327718574904626e-05, 7.489488930628691388e-05, 7.392643883523957349e-05, 7.295792735014556705e-05, 7.198935642850319908e-05, 7.102072764789740182e-05, 7.005204258580311524e-05, 6.908330281984152461e-05, 6.811450992747531839e-05, 6.714566548626550865e-05, 6.617677107369541079e-05, 6.520782826723404231e-05, 6.423883864435361911e-05, 6.326980378257140568e-05, 6.230072525927415569e-05, 6.133160465184459768e-05, 6.036244353770249928e-05, 5.939324349412945331e-05, 5.842400609852508832e-05, 5.745473292810250945e-05, 5.648542556014431919e-05, 5.551608557182823023e-05, 5.454671454026676085e-05, 5.357731404263471674e-05, 5.260788565599399747e-05, 5.163843095733373911e-05, 5.066895152358991795e-05, 4.969944893170697380e-05, 4.872992475846305699e-05, 4.776038058070461581e-05, 4.679081797514964767e-05, 4.582123851842832287e-05, 4.485164378710224266e-05, 4.388203535768263357e-05, 4.291241480667233311e-05, 4.194278371038918680e-05, 4.097314364509365873e-05, 4.000349618702973994e-05, 3.903384291229205225e-05, 3.806418539686719709e-05, 3.709452521676046482e-05, 3.612486394782028884e-05, 3.515520316577951983e-05, 3.418554444627377586e-05, 3.321588936486082928e-05, 3.224623949706125078e-05, 3.127659641818307350e-05, 3.030696170344862782e-05, 2.933733692803536830e-05, 2.836772366692232017e-05, 2.739812349503813055e-05, 2.642853798717267883e-05, 2.545896871801756484e-05, 2.448941726207690619e-05, 2.351988519381648034e-05, 2.255037408746621015e-05, 2.158088551727724850e-05, 2.061142105721684655e-05, 1.964198228122495050e-05, 1.867257076303906568e-05, 1.770318807623453804e-05, 1.673383579435212750e-05, 1.576451549072211303e-05, 1.479522873850527727e-05, 1.382597711071191725e-05, 1.285676218026400991e-05, 1.188758551981987622e-05, 1.091844870203095757e-05, 9.949353299236699208e-06, 8.980300883721362208e-06, 8.011293027516873131e-06, 7.042331302551712099e-06, 6.073417280561833729e-06, 5.104552533131326405e-06, 4.135738631603488222e-06, 3.166977147229526156e-06, 2.198269651014712441e-06, 1.229617713759139975e-06, 2.610229061847335950e-07, -7.075132012400826266e-07, -1.675989038259737749e-06, -2.644403034812451381e-06, -3.612753621011153472e-06, -4.581039227102837370e-06, -5.549258283643933015e-06, -6.517409221373173016e-06, -7.485490471171024003e-06, -8.453500464191708572e-06, -9.421437631822660361e-06, -1.038930040555736661e-05, -1.135708721717081242e-05, -1.232479649867872997e-05, -1.329242668231844713e-05, -1.425997620053009515e-05, -1.522744348591568516e-05, -1.619482697143617543e-05, -1.716212509017632149e-05, -1.812933627552012713e-05, -1.909645896108836050e-05, -2.006349158071977874e-05, -2.103043256843025699e-05, -2.199728035858820548e-05, -2.296403338578733506e-05, -2.393069008480630113e-05, -2.489724889078367693e-05, -2.586370823896160754e-05, -2.683006656499046722e-05, -2.779632230467240500e-05, -2.876247389413644670e-05, -2.972851976979795256e-05, -3.069445836823171133e-05, -3.166028812634700510e-05, -3.262600748134695166e-05, -3.359161487070940567e-05, -3.455710873212510485e-05, -3.552248750367217916e-05, -3.648774962356053652e-05, -3.745289353043569701e-05, -3.841791766312286683e-05, -3.938282046082348394e-05, -4.034760036298835277e-05, -4.131225580929856229e-05, -4.227678523984056434e-05, -4.324118709497915935e-05, -4.420545981531719110e-05, -4.516960184182712145e-05, -4.613361161581046760e-05, -4.709748757877139772e-05, -4.806122817259092154e-05, -4.902483183948712044e-05, -4.998829702199529307e-05, -5.095162216294990331e-05, -5.191480570544281821e-05, -5.287784609299931463e-05, -5.384074176945031955e-05, -5.480349117889295874e-05, -5.576609276584247371e-05, -5.672854497508547503e-05, -5.769084625176705794e-05, -5.865299504135179816e-05, -5.961498978971086757e-05, -6.057682894297493505e-05, -6.153851094772997343e-05, -6.250003425076167910e-05, -6.346139729935891993e-05, -6.442259854105848694e-05, -6.538363642381911551e-05, -6.634450939598149192e-05, -6.730521590614164560e-05, -6.826575440332534306e-05, -6.922612333694713217e-05, -7.018632115679237149e-05, -7.114634631295471245e-05, -7.210619725601007319e-05, -7.306587243676214915e-05, -7.402537030654482420e-05, -7.498468931696777612e-05, -7.594382792008981347e-05, -7.690278456837936990e-05, -7.786155771458755771e-05, -7.882014581192261593e-05, -7.977854731403108586e-05, -8.073676067487105430e-05, -8.169478434886522935e-05, -8.265261679086044542e-05, -8.361025645600155703e-05, -8.456770179990530411e-05, -8.552495127861987130e-05, -8.648200334860623969e-05, -8.743885646671892861e-05, -8.839550909016570404e-05, -8.935195967668172856e-05, -9.030820668440307558e-05, -9.126424857182674944e-05, -9.222008379794110133e-05, -9.317571082218628305e-05, -9.413112810432769351e-05, -9.508633410462988473e-05, -9.604132728381651414e-05, -9.699610610305035461e-05, -9.795066902391592011e-05, -9.890501450837821179e-05, -9.985914101895605483e-05, -1.008130470185971848e-04, -1.017667309706369802e-04, -1.027201913389730461e-04, -1.036734265878096406e-04, -1.046264351819614413e-04, -1.055792155865969143e-04, -1.065317662674363170e-04, -1.074840856905801635e-04, -1.084361723227057094e-04, -1.093880246308131669e-04, -1.103396410825255005e-04, -1.112910201458373795e-04, -1.122421602892853309e-04, -1.131930599819104283e-04, -1.141437176931303025e-04, -1.150941318929138874e-04, -1.160443010517407219e-04, -1.169942236405816785e-04, -1.179438981308376239e-04, -1.188933229945129597e-04, -1.198424967039623932e-04, -1.207914177321899740e-04, -1.217400845525981959e-04, -1.226884956391809849e-04, -1.236366494663769663e-04, -1.245845445091570407e-04, -1.255321792429857732e-04, -1.264795521439063947e-04, -1.274266616883958439e-04, -1.283735063535170980e-04, -1.293200846168762925e-04, -1.302663949565005042e-04, -1.312124358510083778e-04, -1.321582057795710132e-04, -1.331037032218919077e-04, -1.340489266581897446e-04, -1.349938745691581145e-04, -1.359385454361364948e-04, -1.368829377409861076e-04, -1.378270499660505641e-04, -1.387708805942852903e-04, -1.397144281092160031e-04, -1.406576909948158963e-04, -1.416006677356775685e-04, -1.425433568169709019e-04, -1.434857567244275851e-04, -1.444278659443193748e-04, -1.453696829634197423e-04, -1.463112062691961297e-04, -1.472524343495813998e-04, -1.481933656931420777e-04, -1.491339987890410806e-04, -1.500743321269139567e-04, -1.510143641970369908e-04, -1.519540934902909642e-04, -1.528935184981403659e-04, -1.538326377125728936e-04, -1.547714496262713271e-04, -1.557099527323619660e-04, -1.566481455247131652e-04, -1.575860264976831763e-04, -1.585235941462932404e-04, -1.594608469661859551e-04, -1.603977834535032470e-04, -1.613344021050552640e-04, -1.622707014182824003e-04, -1.632066798912348328e-04, -1.641423360225136756e-04, -1.650776683114406850e-04, -1.660126752578078627e-04, -1.669473553621757473e-04, -1.678817071256214996e-04, -1.688157290499319178e-04, -1.697494196374799743e-04, -1.706827773912053265e-04, -1.716158008147846998e-04, -1.725484884125084236e-04, -1.734808386892418340e-04, -1.744128501505521798e-04, -1.753445213026698618e-04, -1.762758506523646172e-04, -1.772068367071160104e-04, -1.781374779750737243e-04, -1.790677729650385318e-04, -1.799977201864445429e-04, -1.809273181493197393e-04, -1.818565653644550284e-04, -1.827854603432797504e-04, -1.837140015978276067e-04, -1.846421876408989380e-04, -1.855700169858186222e-04, -1.864974881467265048e-04, -1.874245996383322877e-04, -1.883513499761033951e-04, -1.892777376761020983e-04, -1.902037612551754956e-04, -1.911294192307053325e-04, -1.920547101209061573e-04, -1.929796324445737590e-04, -1.939041847212570407e-04, -1.948283654712175514e-04, -1.957521732153065107e-04, -1.966756064751341068e-04, -1.975986637730309530e-04, -1.985213436320283284e-04, -1.994436445757992785e-04, -2.003655651288257177e-04, -2.012871038161549719e-04, -2.022082591636876884e-04, -2.031290296979353538e-04, -2.040494139461873158e-04, -2.049694104364705859e-04, -2.058890176974288700e-04, -2.068082342584911886e-04, -2.077270586498529035e-04, -2.086454894023519289e-04, -2.095635250476200046e-04, -2.104811641180403040e-04, -2.113984051466273042e-04, -2.123152466671938347e-04, -2.132316872143119374e-04, -2.141477253232951402e-04, -2.150633595301806487e-04, -2.159785883716885534e-04, -2.168934103853909650e-04, -2.178078241095892287e-04, -2.187218280832764646e-04, -2.196354208463043186e-04, -2.205486009391370919e-04, -2.214613669031432021e-04, -2.223737172803508038e-04, -2.232856506136136985e-04, -2.241971654465525440e-04, -2.251082603235374528e-04, -2.260189337896475787e-04, -2.269291843908397097e-04, -2.278390106738236668e-04, -2.287484111860296418e-04, -2.296573844757675482e-04, -2.305659290920105873e-04, -2.314740435845768791e-04, -2.323817265040931687e-04, -2.332889764019767203e-04, -2.341957918303746826e-04, -2.351021713423313549e-04, -2.360081134915461112e-04, -2.369136168326588980e-04, -2.378186799210097314e-04, -2.387233013128041729e-04, -2.396274795650731872e-04, -2.405312132355553708e-04, -2.414345008828605306e-04, -2.423373410664315475e-04, -2.432397323465275711e-04, -2.441416732841629792e-04, -2.450431624412749681e-04, -2.459441983804803392e-04, -2.468447796653612135e-04, -2.477449048602263439e-04, -2.486445725302949424e-04, -2.495437812415553539e-04, -2.504425295608509253e-04, -2.513408160558393474e-04, -2.522386392950792290e-04, -2.531359978478858980e-04, -2.540328902844800449e-04, -2.549293151759471745e-04, -2.558252710941185597e-04, -2.567207566117364744e-04, -2.576157703024129940e-04, -2.585103107406174720e-04, -2.594043765016519837e-04, -2.602979661616188541e-04, -2.611910782975816617e-04, -2.620837114874462474e-04, -2.629758643099242856e-04, -2.638675353446951551e-04, -2.647587231721673607e-04, -2.656494263737621607e-04, -2.665396435316741202e-04, -2.674293732290561310e-04, -2.683186140498584611e-04, -2.692073645790135032e-04, -2.700956234021967078e-04, -2.709833891061085845e-04, -2.718706602782380746e-04, -2.727574355070244228e-04, -2.736437133818176576e-04, -2.745294924927645336e-04, -2.754147714309675837e-04, -2.762995487884486361e-04, -2.771838231581291896e-04, -2.780675931337771257e-04, -2.789508573101626707e-04, -2.798336142828280028e-04, -2.807158626483629649e-04, -2.815976010041690335e-04, -2.824788279486248766e-04, -2.833595420810432566e-04, -2.842397420015582731e-04, -2.851194263112850663e-04, -2.859985936122807311e-04, -2.868772425075291383e-04, -2.877553716008828216e-04, -2.886329794972228432e-04, -2.895100648022445552e-04, -2.903866261226357884e-04, -2.912626620660429709e-04, -2.921381712410507452e-04, -2.930131522571640789e-04, -2.938876037247734074e-04, -2.947615242553135780e-04, -2.956349124611464853e-04, -2.965077669555256173e-04, -2.973800863527559755e-04, -2.982518692679567976e-04, -2.991231143173432865e-04, -2.999938201179911225e-04, -3.008639852879955697e-04, -3.017336084464155850e-04, -3.026026882132545198e-04, -3.034712232094248291e-04, -3.043392120569091293e-04, -3.052066533786390937e-04, -3.060735457984620580e-04, -3.069398879413017000e-04, -3.078056784329217914e-04, -3.086709159002021274e-04, -3.095355989709111153e-04, -3.103997262738774580e-04, -3.112632964388392328e-04, -3.121263080966217010e-04, -3.129887598789054507e-04, -3.138506504185005377e-04, -3.147119783491150627e-04, -3.155727423055154700e-04, -3.164329409234849688e-04, -3.172925728397137037e-04, -3.181516366919534696e-04, -3.190101311189825844e-04, -3.198680547605881074e-04, -3.207254062575097867e-04, -3.215821842515962921e-04, -3.224383873855780208e-04, -3.232940143033353835e-04, -3.241490636496736693e-04, -3.250035340704767860e-04, -3.258574242126714270e-04, -3.267107327241156696e-04, -3.275634582537499499e-04, -3.284155994515860046e-04, -3.292671549685905353e-04, -3.301181234568596030e-04, -3.309685035693919752e-04, -3.318182939603597434e-04, -3.326674932848799351e-04, -3.335161001991685794e-04, -3.343641133604888824e-04, -3.352115314271288918e-04, -3.360583530583729291e-04, -3.369045769146479562e-04, -3.377502016574177035e-04, -3.385952259491442347e-04, -3.394396484534418492e-04, -3.402834678348505928e-04, -3.411266827591062775e-04, -3.419692918929153475e-04, -3.428112939041057456e-04, -3.436526874615727033e-04, -3.444934712352635620e-04, -3.453336438961438371e-04, -3.461732041163439653e-04, -3.470121505690546785e-04, -3.478504819284875395e-04, -3.486881968700303617e-04, -3.495252940700393682e-04, -3.503617722060133684e-04, -3.511976299565568952e-04, -3.520328660013622075e-04, -3.528674790211582782e-04, -3.537014676978608480e-04, -3.545348307143480495e-04, -3.553675667547286933e-04, -3.561996745041161577e-04, -3.570311526487819111e-04, -3.578619998761207641e-04, -3.586922148745377327e-04, -3.595217963336028080e-04, -3.603507429440141476e-04, -3.611790533975818671e-04, -3.620067263871752389e-04, -3.628337606068713912e-04, -3.636601547517340216e-04, -3.644859075180805993e-04, -3.653110176032544113e-04, -3.661354837057993901e-04, -3.669593045253290338e-04, -3.677824787626038177e-04, -3.686050051194960124e-04, -3.694268822990658487e-04, -3.702481090054349374e-04, -3.710686839439519347e-04, -3.718886058209753230e-04, -3.727078733441351911e-04, -3.735264852221096719e-04, -3.743444401647777605e-04, -3.751617368831634239e-04, -3.759783740894241080e-04, -3.767943504968100806e-04, -3.776096648198168154e-04, -3.784243157740772227e-04, -3.792383020763239734e-04, -3.800516224445416123e-04, -3.808642755977467904e-04, -3.816762602562460342e-04, -3.824875751414212361e-04, -3.832982189758935856e-04, -3.841081904833783950e-04, -3.849174883888546684e-04, -3.857261114183460930e-04, -3.865340582991778863e-04, -3.873413277597622870e-04, -3.881479185297448680e-04, -3.889538293399679987e-04, -3.897590589223697433e-04, -3.905636060101232349e-04, -3.913674693376097331e-04, -3.921706476403976445e-04, -3.929731396551921076e-04, -3.937749441199813057e-04, -3.945760597738208735e-04, -3.953764853570915574e-04, -3.961762196112811286e-04, -3.969752612791302079e-04, -3.977736091046042395e-04, -3.985712618327793785e-04, -3.993682182099946043e-04, -4.001644769838142075e-04, -4.009600369030119605e-04, -4.017548967175585406e-04, -4.025490551785832036e-04, -4.033425110385402629e-04, -4.041352630510115481e-04, -4.049273099708538561e-04, -4.057186505541456631e-04, -4.065092835581715657e-04, -4.072992077413880208e-04, -4.080884218635686279e-04, -4.088769246857029737e-04, -4.096647149699533179e-04, -4.104517914798074658e-04, -4.112381529798653430e-04, -4.120237982360875489e-04, -4.128087260155856178e-04, -4.135929350867662176e-04, -4.143764242192794333e-04, -4.151591921840026129e-04, -4.159412377530082201e-04, -4.167225596997052692e-04, -4.175031567987365962e-04, -4.182830278259457371e-04, -4.190621715585187953e-04, -4.198405867747750280e-04, -4.206182722544166467e-04, -4.213952267783186985e-04, -4.221714491286872512e-04, -4.229469380889243021e-04, -4.237216924437872635e-04, -4.244957109791753754e-04, -4.252689924823836254e-04, -4.260415357418919800e-04, -4.268133395475037827e-04, -4.275844026903182697e-04, -4.283547239626237218e-04, -4.291243021580427473e-04, -4.298931360714955820e-04, -4.306612244991827958e-04, -4.314285662385772160e-04, -4.321951600883860880e-04, -4.329610048486898536e-04, -4.337260993208457110e-04, -4.344904423074489631e-04, -4.352540326124602487e-04, -4.360168690410845993e-04, -4.367789503998413710e-04, -4.375402754965363795e-04, -4.383008431403257604e-04, -4.390606521416015313e-04, -4.398197013121490180e-04, -4.405779894649401512e-04, -4.413355154143756777e-04, -4.420922779760807337e-04, -4.428482759670494774e-04, -4.436035082055858917e-04, -4.443579735112996101e-04, -4.451116707050609763e-04, -4.458645986091525613e-04, -4.466167560471570575e-04, -4.473681418439331547e-04, -4.481187548257501980e-04, -4.488685938200879903e-04, -4.496176576558694616e-04, -4.503659451632711507e-04, -4.511134551738503278e-04, -4.518601865204994040e-04, -4.526061380374299934e-04, -4.533513085601439106e-04, -4.540956969255838206e-04, -4.548393019719506594e-04, -4.555821225388396469e-04, -4.563241574672093873e-04, -4.570654055992824476e-04, -4.578058657786807204e-04, -4.585455368503947951e-04, -4.592844176607675322e-04, -4.600225070574485813e-04, -4.607598038895260027e-04, -4.614963070073295395e-04, -4.622320152626688164e-04, -4.629669275086283715e-04, -4.637010425997096868e-04, -4.644343593917944876e-04, -4.651668767420512850e-04, -4.658985935090634734e-04, -4.666295085528078643e-04, -4.673596207346298573e-04, -4.680889289172327069e-04, -4.688174319646499296e-04, -4.695451287423722635e-04, -4.702720181172555117e-04, -4.709980989574851971e-04, -4.717233701327017874e-04, -4.724478305138916793e-04, -4.731714789733817766e-04, -4.738943143849692159e-04, -4.746163356238255224e-04, -4.753375415664656562e-04, -4.760579310908781168e-04, -4.767775030763344484e-04, -4.774962564036170851e-04, -4.782141899548275014e-04, -4.789313026135138228e-04, -4.796475932646287045e-04, -4.803630607945130683e-04, -4.810777040908638478e-04, -4.817915220428675076e-04, -4.825045135411043626e-04, -4.832166774775170279e-04, -4.839280127455395470e-04, -4.846385182399109634e-04, -4.853481928568959014e-04, -4.860570354941000891e-04, -4.867650450506116303e-04, -4.874722204268752365e-04, -4.881785605248374561e-04, -4.888840642477635529e-04, -4.895887305004495210e-04, -4.902925581890441682e-04, -4.909955462211742323e-04, -4.916976935059112590e-04, -4.923989989536822634e-04, -4.930994614763975579e-04, -4.937990799874168160e-04, -4.944978534015418087e-04, -4.951957806349974308e-04, -4.958928606054017769e-04, -4.965890922318941855e-04, -4.972844744350449252e-04, -4.979790061368231024e-04, -4.986726862606956487e-04, -4.993655137315911085e-04, -5.000574874758120358e-04, -5.007486064211643393e-04, -5.014388694969218289e-04, -5.021282756338141815e-04, -5.028168237640177245e-04, -5.035045128211172727e-04, -5.041913417402540129e-04, -5.048773094579576699e-04, -5.055624149122640333e-04, -5.062466570426795050e-04, -5.069300347901625585e-04, -5.076125470970916471e-04, -5.082941929073974763e-04, -5.089749711664678109e-04, -5.096548808211172257e-04, -5.103339208197134151e-04, -5.110120901119967821e-04, -5.116893876492908813e-04, -5.123658123843278633e-04, -5.130413632713643748e-04, -5.137160392661449136e-04, -5.143898393258830712e-04, -5.150627624092324764e-04, -5.157348074764160325e-04, -5.164059734891267121e-04, -5.170762594105098855e-04, -5.177456642052771611e-04, -5.184141868395290105e-04, -5.190818262809730179e-04, -5.197485814987354465e-04, -5.204144514635035933e-04, -5.210794351474407884e-04, -5.217435315241633013e-04, -5.224067395688696859e-04, -5.230690582582517680e-04, -5.237304865704602757e-04, -5.243910234852056703e-04, -5.250506679837200910e-04, -5.257094190486775575e-04, -5.263672756643078109e-04, -5.270242368163739798e-04, -5.276803014921546903e-04, -5.283354686804338750e-04, -5.289897373714729087e-04, -5.296431065571264012e-04, -5.302955752307602320e-04, -5.309471423872199995e-04, -5.315978070229398752e-04, -5.322475681358314727e-04, -5.328964247253573571e-04, -5.335443757924950492e-04, -5.341914203397975236e-04, -5.348375573712954145e-04, -5.354827858926272275e-04, -5.361271049108673860e-04, -5.367705134347320120e-04, -5.374130104744029605e-04, -5.380545950416488164e-04, -5.386952661497827191e-04, -5.393350228136467497e-04, -5.399738640495864526e-04, -5.406117888755703144e-04, -5.412487963110969563e-04, -5.418848853771771360e-04, -5.425200550964441202e-04, -5.431543044929858493e-04, -5.437876325925449731e-04, -5.444200384223493901e-04, -5.450515210112308589e-04, -5.456820793895782694e-04, -5.463117125893303784e-04, -5.469404196439416575e-04, -5.475681995885212875e-04, -5.481950514596733472e-04, -5.488209742956084861e-04, -5.494459671361196385e-04, -5.500700290225061292e-04, -5.506931589976725525e-04, -5.513153561061169550e-04, -5.519366193939105603e-04, -5.525569479086872527e-04, -5.531763406996145207e-04, -5.537947968175095746e-04, -5.544123153147582483e-04, -5.550288952452829072e-04, -5.556445356646340632e-04, -5.562592356299602336e-04, -5.568729941999257587e-04, -5.574858104348257275e-04, -5.580976833965569208e-04, -5.587086121486053427e-04, -5.593185957560416676e-04, -5.599276332854788473e-04, -5.605357238052009142e-04, -5.611428663850729932e-04, -5.617490600965131115e-04, -5.623543040125974753e-04, -5.629585972079746009e-04, -5.635619387588513282e-04, -5.641643277431083970e-04, -5.647657632402173968e-04, -5.653662443312130114e-04, -5.659657700988090286e-04, -5.665643396272297466e-04, -5.671619520024053472e-04, -5.677586063118106752e-04, -5.683543016445751763e-04, -5.689490370914425648e-04, -5.695428117447552110e-04, -5.701356246984356016e-04, -5.707274750480924828e-04, -5.713183618909392202e-04, -5.719082843257710302e-04, -5.724972414530717741e-04, -5.730852323748580500e-04, -5.736722561948614466e-04, -5.742583120183792494e-04, -5.748433989523837277e-04, -5.754275161054414698e-04, -5.760106625877611970e-04, -5.765928375111693685e-04, -5.771740399891694875e-04, -5.777542691368427880e-04, -5.783335240709479817e-04, -5.789118039098952373e-04, -5.794891077736661657e-04, -5.800654347839236504e-04, -5.806407840639834410e-04, -5.812151547388037451e-04, -5.817885459349783975e-04, -5.823609567807004313e-04, -5.829323864058796054e-04, -5.835028339420618481e-04, -5.840722985223979237e-04, -5.846407792817335299e-04, -5.852082753565776389e-04, -5.857747858850249770e-04, -5.863403100068696489e-04, -5.869048468635822613e-04, -5.874683955982391240e-04, -5.880309553556434645e-04, -5.885925252821668082e-04, -5.891531045259271139e-04, -5.897126922366455496e-04, -5.902712875657452644e-04, -5.908288896663126816e-04, -5.913854976930878497e-04, -5.919411108024384216e-04, -5.924957281524680748e-04, -5.930493489029341116e-04, -5.936019722152310885e-04, -5.941535972524837313e-04, -5.947042231794083750e-04, -5.952538491624807977e-04, -5.958024743697886609e-04, -5.963500979711394961e-04, -5.968967191380283952e-04, -5.974423370435702485e-04, -5.979869508625979728e-04, -5.985305597716374668e-04, -5.990731629489013223e-04, -5.996147595742490344e-04, -6.001553488292863140e-04, -6.006949298972342251e-04, -6.012335019630372793e-04, -6.017710642133468476e-04, -6.023076158365002356e-04, -6.028431560225156957e-04, -6.033776839630721530e-04, -6.039111988516007116e-04, -6.044436998832155910e-04, -6.049751862546930928e-04, -6.055056571645459768e-04, -6.060351118129953798e-04, -6.065635494019058728e-04, -6.070909691348780508e-04, -6.076173702172272834e-04, -6.081427518559754742e-04, -6.086671132598343642e-04, -6.091904536391920880e-04, -6.097127722061980665e-04, -6.102340681747043518e-04, -6.107543407602332095e-04, -6.112735891800677576e-04, -6.117918126531691342e-04, -6.123090104002213829e-04, -6.128251816436128046e-04, -6.133403256074833375e-04, -6.138544415176435667e-04, -6.143675286016809763e-04, -6.148795860888197620e-04, -6.153906132100856298e-04, -6.159006091981696204e-04, -6.164095732875192902e-04, -6.169175047143212560e-04, -6.174244027164241082e-04, -6.179302665334391329e-04, -6.184350954067201461e-04, -6.189388885793463630e-04, -6.194416452960906311e-04, -6.199433648035186347e-04, -6.204440463498430694e-04, -6.209436891850934285e-04, -6.214422925609735388e-04, -6.219398557309709563e-04, -6.224363779502731578e-04, -6.229318584758187149e-04, -6.234262965662686713e-04, -6.239196914820623789e-04, -6.244120424853359663e-04, -6.249033488399968229e-04, -6.253936098117057101e-04, -6.258828246678196233e-04, -6.263709926774661688e-04, -6.268581131115306612e-04, -6.273441852426528713e-04, -6.278292083452020889e-04, -6.283131816952669318e-04, -6.287961045707411061e-04, -6.292779762512591126e-04, -6.297587960181780329e-04, -6.302385631546384608e-04, -6.307172769455449872e-04, -6.311949366775054847e-04, -6.316715416389210962e-04, -6.321470911199544677e-04, -6.326215844125325678e-04, -6.330950208103298818e-04, -6.335673996087501977e-04, -6.340387201050101977e-04, -6.345089815980852485e-04, -6.349781833886775258e-04, -6.354463247792966783e-04, -6.359134050742009563e-04, -6.363794235793821408e-04, -6.368443796026539063e-04, -6.373082724535853588e-04, -6.377711014434878090e-04, -6.382328658854989059e-04, -6.386935650944484131e-04, -6.391531983870172608e-04, -6.396117650816067913e-04, -6.400692644984257119e-04, -6.405256959594688446e-04, -6.409810587884581454e-04, -6.414353523109212005e-04, -6.418885758541798426e-04, -6.423407287473335619e-04, -6.427918103212299080e-04, -6.432418199085566468e-04, -6.436907568437072111e-04, -6.441386204629328139e-04, -6.445854101042171151e-04, -6.450311251073754257e-04, -6.454757648139724168e-04, -6.459193285673780647e-04, -6.463618157127354498e-04, -6.468032255970133405e-04, -6.472435575689246615e-04, -6.476828109790106272e-04, -6.481209851796127701e-04, -6.485580795248161281e-04, -6.489940933705281743e-04, -6.494290260744662409e-04, -6.498628769961393038e-04, -6.502956454968510189e-04, -6.507273309396664372e-04, -6.511579326895035108e-04, -6.515874501130699929e-04, -6.520158825788435969e-04, -6.524432294571362893e-04, -6.528694901200678352e-04, -6.532946639415201538e-04, -6.537187502972049719e-04, -6.541417485646576447e-04, -6.545636581231864147e-04, -6.549844783539523173e-04, -6.554042086398564242e-04, -6.558228483656767778e-04, -6.562403969179552007e-04, -6.566568536850729727e-04, -6.570722180572339177e-04, -6.574864894264026037e-04, -6.578996671863915130e-04, -6.583117507328333949e-04, -6.587227394631777963e-04, -6.591326327766615714e-04, -6.595414300743887874e-04, -6.599491307592112452e-04, -6.603557342358682336e-04, -6.607612399108714948e-04, -6.611656471925818779e-04, -6.615689554911905823e-04, -6.619711642186624535e-04, -6.623722727888172986e-04, -6.627722806173080936e-04, -6.631711871216071060e-04, -6.635689917209921249e-04, -6.639656938366064179e-04, -6.643612928913721028e-04, -6.647557883100632236e-04, -6.651491795192913297e-04, -6.655414659474999470e-04, -6.659326470249521098e-04, -6.663227221837184338e-04, -6.667116908577435785e-04, -6.670995524827975660e-04, -6.674863064964588677e-04, -6.678719523381636269e-04, -6.682564894491959014e-04, -6.686399172726306336e-04, -6.690222352534046669e-04, -6.694034428383053605e-04, -6.697835394759547607e-04, -6.701625246168086249e-04, -6.705403977131351714e-04, -6.709171582190851186e-04, -6.712928055906467991e-04, -6.716673392856235001e-04, -6.720407587637014426e-04, -6.724130634863559981e-04, -6.727842529169652044e-04, -6.731543265207060077e-04, -6.735232837646424079e-04, -6.738911241176488058e-04, -6.742578470504888245e-04, -6.746234520357165384e-04, -6.749879385477948685e-04, -6.753513060629930164e-04, -6.757135540594575883e-04, -6.760746820171936212e-04, -6.764346894180187217e-04, -6.767935757456282255e-04, -6.771513404855796945e-04, -6.775079831252815319e-04, -6.778635031539779121e-04, -6.782179000628055926e-04, -6.785711733447044678e-04, -6.789233224945245794e-04, -6.792743470089387297e-04, -6.796242463865037392e-04, -6.799730201276198973e-04, -6.803206677345499361e-04, -6.806671887114095973e-04, -6.810125825642054714e-04, -6.813568488007672348e-04, -6.816999869308147620e-04, -6.820419964659404531e-04, -6.823828769195583845e-04, -6.827226278069755414e-04, -6.830612486453695913e-04, -6.833987389537842221e-04, -6.837350982531230706e-04, -6.840703260661337845e-04, -6.844044219174693884e-04, -6.847373853336492528e-04, -6.850692158430354579e-04, -6.853999129758819083e-04, -6.857294762643233827e-04, -6.860579052423291298e-04, -6.863851994457592469e-04, -6.867113584123575240e-04, -6.870363816817440716e-04, -6.873602687953984068e-04, -6.876830192966557672e-04, -6.880046327307746566e-04, -6.883251086448447962e-04, -6.886444465878634527e-04, -6.889626461107080076e-04, -6.892797067660939988e-04, -6.895956281086429917e-04, -6.899104096948615455e-04, -6.902240510831334072e-04, -6.905365518337007544e-04, -6.908479115087280556e-04, -6.911581296722034071e-04, -6.914672058900543259e-04, -6.917751397300483289e-04, -6.920819307618634054e-04, -6.923875785570642732e-04, -6.926920826890672509e-04, -6.929954427331930580e-04, -6.932976582666581416e-04, -6.935987288685614488e-04, -6.938986541198659957e-04, -6.941974336034638111e-04, -6.944950669040812850e-04, -6.947915536083813012e-04, -6.950868933048835480e-04, -6.953810855840226318e-04, -6.956741300381091538e-04, -6.959660262613279755e-04, -6.962567738497846227e-04, -6.965463724014690728e-04, -6.968348215162494669e-04, -6.971221207958992142e-04, -6.974082698440949328e-04, -6.976932682663777429e-04, -6.979771156701931661e-04, -6.982598116648979555e-04, -6.985413558617391706e-04, -6.988217478738549364e-04, -6.991009873162591561e-04, -6.993790738058948539e-04, -6.996560069615981791e-04, -6.999317864040811681e-04, -7.002064117559873629e-04, -7.004798826418155927e-04, -7.007521986880070348e-04, -7.010233595228719224e-04, -7.012933647766457067e-04, -7.015622140814394003e-04, -7.018299070712994249e-04, -7.020964433821243449e-04, -7.023618226517628791e-04, -7.026260445199382235e-04, -7.028891086282875161e-04, -7.031510146203635717e-04, -7.034117621415938992e-04, -7.036713508393216843e-04, -7.039297803628098010e-04, -7.041870503632202119e-04, -7.044431604936068122e-04, -7.046981104089582561e-04, -7.049518997661278086e-04, -7.052045282239169377e-04, -7.054559954430106956e-04, -7.057063010860120883e-04, -7.059554448174464123e-04, -7.062034263037106222e-04, -7.064502452131344798e-04, -7.066959012159684111e-04, -7.069403939843480530e-04, -7.071837231923396808e-04, -7.074258885159234039e-04, -7.076668896329655180e-04, -7.079067262232550430e-04, -7.081453979685119627e-04, -7.083829045523529645e-04, -7.086192456603146407e-04, -7.088544209798259502e-04, -7.090884302002534298e-04, -7.093212730128805937e-04, -7.095529491108829977e-04, -7.097834581893822320e-04, -7.100127999453745807e-04, -7.102409740778107107e-04, -7.104679802875306198e-04, -7.106938182773074380e-04, -7.109184877518342008e-04, -7.111419884177107298e-04, -7.113643199834413563e-04, -7.115854821594725429e-04, -7.118054746581689227e-04, -7.120242971937941088e-04, -7.122419494825552554e-04, -7.124584312425542680e-04, -7.126737421938197882e-04, -7.128878820583127223e-04, -7.131008505599110633e-04, -7.133126474244005661e-04, -7.135232723795115022e-04, -7.137327251548593538e-04, -7.139410054820195155e-04, -7.141481130944621336e-04, -7.143540477275936310e-04, -7.145588091187531294e-04, -7.147623970071738516e-04, -7.149648111340273574e-04, -7.151660512424141102e-04, -7.153661170773585988e-04, -7.155650083857950259e-04, -7.157627249166069894e-04, -7.159592664205696949e-04, -7.161546326504115382e-04, -7.163488233607708455e-04, -7.165418383082256893e-04, -7.167336772512627715e-04, -7.169243399503096243e-04, -7.171138261677046863e-04, -7.173021356677332979e-04, -7.174892682165894290e-04, -7.176752235824040852e-04, -7.178600015352444401e-04, -7.180436018470793581e-04, -7.182260242918215697e-04, -7.184072686453176967e-04, -7.185873346853391451e-04, -7.187662221915844902e-04, -7.189439309456664663e-04, -7.191204607311522988e-04, -7.192958113335270586e-04, -7.194699825402026605e-04, -7.196429741405331506e-04, -7.198147859257804457e-04, -7.199854176891578098e-04, -7.201548692257966769e-04, -7.203231403327673603e-04, -7.204902308090711371e-04, -7.206561404556387305e-04, -7.208208690753180586e-04, -7.209844164729135906e-04, -7.211467824551417863e-04, -7.213079668306609116e-04, -7.214679694100696291e-04, -7.216267900058753390e-04, -7.217844284325337532e-04, -7.219408845064324148e-04, -7.220961580458969869e-04, -7.222502488711693511e-04, -7.224031568044489166e-04, -7.225548816698359154e-04, -7.227054232933997078e-04, -7.228547815031145969e-04, -7.230029561289077512e-04, -7.231499470026416399e-04, -7.232957539580911564e-04, -7.234403768309823242e-04, -7.235838154589748416e-04, -7.237260696816683698e-04, -7.238671393405809572e-04, -7.240070242791840594e-04, -7.241457243428642667e-04, -7.242832393789640699e-04, -7.244195692367449979e-04, -7.245547137674165656e-04, -7.246886728241209866e-04, -7.248214462619236324e-04, -7.249530339378404626e-04, -7.250834357108223039e-04, -7.252126514417441168e-04, -7.253406809934427255e-04, -7.254675242306538258e-04, -7.255931810200826754e-04, -7.257176512303511844e-04, -7.258409347320275143e-04, -7.259630313976195726e-04, -7.260839411015629786e-04, -7.262036637202284352e-04, -7.263221991319288853e-04, -7.264395472169249326e-04, -7.265557078573932912e-04, -7.266706809374673349e-04, -7.267844663431982828e-04, -7.268970639625928210e-04, -7.270084736855833953e-04, -7.271186954040469684e-04, -7.272277290117909248e-04, -7.273355744045743214e-04, -7.274422314800680972e-04, -7.275477001379066812e-04, -7.276519802796497204e-04, -7.277550718087948730e-04, -7.278569746307875666e-04, -7.279576886529942181e-04, -7.280572137847284714e-04, -7.281555499372456683e-04, -7.282526970237340660e-04, -7.283486549593168975e-04, -7.284434236610685259e-04, -7.285370030479790997e-04, -7.286293930409957521e-04, -7.287205935629965806e-04, -7.288106045387971518e-04, -7.288994258951600426e-04, -7.289870575607686025e-04, -7.290734994662553597e-04, -7.291587515441919380e-04, -7.292428137290821177e-04, -7.293256859573760392e-04, -7.294073681674487350e-04, -7.294878602996262597e-04, -7.295671622961630298e-04, -7.296452741012603637e-04, -7.297221956610503270e-04, -7.297979269236092850e-04, -7.298724678389367608e-04, -7.299458183589878531e-04, -7.300179784376489497e-04, -7.300889480307382702e-04, -7.301587270960249471e-04, -7.302273155931967175e-04, -7.302947134838951590e-04, -7.303609207316904281e-04, -7.304259373020975232e-04, -7.304897631625626234e-04, -7.305523982824725215e-04, -7.306138426331451911e-04, -7.306740961878431225e-04, -7.307331589217652993e-04, -7.307910308120404768e-04, -7.308477118377453962e-04, -7.309032019798812575e-04, -7.309575012213945363e-04, -7.310106095471666839e-04, -7.310625269440164040e-04, -7.311132534006927136e-04, -7.311627889078922910e-04, -7.312111334582357307e-04, -7.312582870462871684e-04, -7.313042496685449563e-04, -7.313490213234451328e-04, -7.313926020113590372e-04, -7.314349917345900568e-04, -7.314761904973767718e-04, -7.315161983059000018e-04, -7.315550151682721812e-04, -7.315926410945393105e-04, -7.316290760966863774e-04, -7.316643201886255388e-04, -7.316983733862120589e-04, -7.317312357072315154e-04, -7.317629071714069552e-04, -7.317933878003905464e-04, -7.318226776177729018e-04, -7.318507766490797185e-04, -7.318776849217662481e-04, -7.319034024652225009e-04, -7.319279293107783420e-04, -7.319512654916841918e-04, -7.319734110431363973e-04, -7.319943660022573901e-04, -7.320141304081024093e-04, -7.320327043016621035e-04, -7.320500877258599281e-04, -7.320662807255485681e-04, -7.320812833475130819e-04, -7.320950956404751299e-04, -7.321077176550805062e-04, -7.321191494439132329e-04, -7.321293910614837426e-04, -7.321384425642356005e-04, -7.321463040105453957e-04, -7.321529754607165614e-04, -7.321584569769845792e-04, -7.321627486235178462e-04, -7.321658504664059659e-04, -7.321677625736783962e-04, -7.321684850152907886e-04, -7.321680178631246629e-04, -7.321663611909958640e-04, -7.321635150746437200e-04, -7.321594795917406914e-04, -7.321542548218857574e-04, -7.321478408466036572e-04, -7.321402377493536721e-04, -7.321314456155124948e-04, -7.321214645323952629e-04, -7.321102945892339836e-04, -7.320979358771962904e-04, -7.320843884893704807e-04, -7.320696525207731056e-04, -7.320537280683469096e-04, -7.320366152309580121e-04, -7.320183141094004607e-04, -7.319988248063961228e-04, -7.319781474265856869e-04, -7.319562820765384203e-04, -7.319332288647444713e-04, -7.319089879016218081e-04, -7.318835592995119902e-04, -7.318569431726763743e-04, -7.318291396373012092e-04, -7.318001488114960103e-04, -7.317699708152957273e-04, -7.317386057706502279e-04, -7.317060538014373084e-04, -7.316723150334522845e-04, -7.316373895944164492e-04, -7.316012776139672056e-04, -7.315639792236642474e-04, -7.315254945569886914e-04, -7.314858237493425354e-04, -7.314449669380416108e-04, -7.314029242623256658e-04, -7.313596958633535950e-04, -7.313152818842000779e-04, -7.312696824698605670e-04, -7.312228977672444565e-04, -7.311749279251855997e-04, -7.311257730944276719e-04, -7.310754334276355548e-04, -7.310239090793854699e-04, -7.309712002061775557e-04, -7.309173069664204716e-04, -7.308622295204414811e-04, -7.308059680304831995e-04, -7.307485226606983894e-04, -7.306898935771606943e-04, -7.306300809478482672e-04, -7.305690849426631781e-04, -7.305069057334155841e-04, -7.304435434938263321e-04, -7.303789983995282592e-04, -7.303132706280672775e-04, -7.302463603589079031e-04, -7.301782677734122229e-04, -7.301089930548598436e-04, -7.300385363884416036e-04, -7.299668979612562118e-04, -7.298940779623087297e-04, -7.298200765825204380e-04, -7.297448940147148498e-04, -7.296685304536234574e-04, -7.295909860958886594e-04, -7.295122611400573637e-04, -7.294323557865856501e-04, -7.293512702378345414e-04, -7.292690046980680523e-04, -7.291855593734601279e-04, -7.291009344720840186e-04, -7.290151302039224717e-04, -7.289281467808632863e-04, -7.288399844166933497e-04, -7.287506433271021076e-04, -7.286601237296873096e-04, -7.285684258439389634e-04, -7.284755498912595011e-04, -7.283814960949471905e-04, -7.282862646802031829e-04, -7.281898558741255493e-04, -7.280922699057117749e-04, -7.279935070058585417e-04, -7.278935674073698601e-04, -7.277924513449397217e-04, -7.276901590551580626e-04, -7.275866907765162926e-04, -7.274820467494003563e-04, -7.273762272160956121e-04, -7.272692324207831460e-04, -7.271610626095352178e-04, -7.270517180303158033e-04, -7.269411989329957729e-04, -7.268295055693236185e-04, -7.267166381929578709e-04, -7.266025970594335980e-04, -7.264873824261899437e-04, -7.263709945525495277e-04, -7.262534336997270110e-04, -7.261347001308340833e-04, -7.260147941108679700e-04, -7.258937159067145768e-04, -7.257714657871448035e-04, -7.256480440228211572e-04, -7.255234508863037156e-04, -7.253976866520251907e-04, -7.252707515963089258e-04, -7.251426459973656438e-04, -7.250133701352942054e-04, -7.248829242920717432e-04, -7.247513087515658047e-04, -7.246185237995274135e-04, -7.244845697235834797e-04, -7.243494468132521957e-04, -7.242131553599256890e-04, -7.240756956568888871e-04, -7.239370679992939307e-04, -7.237972726841837004e-04, -7.236563100104765299e-04, -7.235141802789639290e-04, -7.233708837923226182e-04, -7.232264208551135529e-04, -7.230807917737614322e-04, -7.229339968565729130e-04, -7.227860364137330329e-04, -7.226369107572964273e-04, -7.224866202012016417e-04, -7.223351650612493385e-04, -7.221825456551269088e-04, -7.220287623023814759e-04, -7.218738153244427715e-04, -7.217177050445983079e-04, -7.215604317880288309e-04, -7.214019958817645189e-04, -7.212423976547159901e-04, -7.210816374376584738e-04, -7.209197155632311596e-04, -7.207566323659515091e-04, -7.205923881822038713e-04, -7.204269833502286412e-04, -7.202604182101327761e-04, -7.200926931038946748e-04, -7.199238083753608164e-04, -7.197537643702341592e-04, -7.195825614360743579e-04, -7.194101999223189055e-04, -7.192366801802545099e-04, -7.190620025630268522e-04, -7.188861674256593432e-04, -7.187091751250204892e-04, -7.185310260198399376e-04, -7.183517204707017554e-04, -7.181712588400516930e-04, -7.179896414922052076e-04, -7.178068687933060466e-04, -7.176229411113790478e-04, -7.174378588162893741e-04, -7.172516222797512952e-04, -7.170642318753461851e-04, -7.168756879785097291e-04, -7.166859909665154434e-04, -7.164951412184914804e-04, -7.163031391154240984e-04, -7.161099850401344592e-04, -7.159156793773163588e-04, -7.157202225134861370e-04, -7.155236148370253948e-04, -7.153258567381545405e-04, -7.151269486089330057e-04, -7.149268908432759428e-04, -7.147256838369507549e-04, -7.145233279875477144e-04, -7.143198236945094530e-04, -7.141151713591262998e-04, -7.139093713845150310e-04, -7.137024241756548650e-04, -7.134943301393420348e-04, -7.132850896842319634e-04, -7.130747032207975216e-04, -7.128631711613610126e-04, -7.126504939200917861e-04, -7.124366719129747970e-04, -7.122217055578367343e-04, -7.120055952743455877e-04, -7.117883414839957937e-04, -7.115699446101046580e-04, -7.113504050778505193e-04, -7.111297233142225508e-04, -7.109078997480363727e-04, -7.106849348099435930e-04, -7.104608289324202070e-04, -7.102355825497906660e-04, -7.100091960981798475e-04, -7.097816700155431960e-04, -7.095530047416766977e-04, -7.093232007181841372e-04, -7.090922583885018180e-04, -7.088601781978885871e-04, -7.086269605934307145e-04, -7.083926060240152214e-04, -7.081571149403759593e-04, -7.079204877950386401e-04, -7.076827250423812273e-04, -7.074438271385667144e-04, -7.072037945415965768e-04, -7.069626277112783536e-04, -7.067203271092322618e-04, -7.064768931988975927e-04, -7.062323264455414940e-04, -7.059866273162196133e-04, -7.057397962798069978e-04, -7.054918338069989621e-04, -7.052427403702807296e-04, -7.049925164439789331e-04, -7.047411625041961284e-04, -7.044886790288624025e-04, -7.042350664977063170e-04, -7.039803253922551247e-04, -7.037244561958491901e-04, -7.034674593936483854e-04, -7.032093354725833020e-04, -7.029500849214131465e-04, -7.026897082306842162e-04, -7.024282058927327176e-04, -7.021655784017255325e-04, -7.019018262536072007e-04, -7.016369499461226882e-04, -7.013709499788058944e-04, -7.011038268529919040e-04, -7.008355810718312979e-04, -7.005662131402360521e-04, -7.002957235649220381e-04, -7.000241128544092400e-04, -6.997513815189924805e-04, -6.994775300707521551e-04, -6.992025590235846980e-04, -6.989264688931607315e-04, -6.986492601969273436e-04, -6.983709334541230492e-04, -6.980914891857731286e-04, -6.978109279147064322e-04, -6.975292501655068087e-04, -6.972464564645440045e-04, -6.969625473399880837e-04, -6.966775233217686620e-04, -6.963913849416017952e-04, -6.961041327330025558e-04, -6.958157672312342921e-04, -6.955262889733403956e-04, -6.952356984981611062e-04, -6.949439963462785428e-04, -6.946511830600905378e-04, -6.943572591837280207e-04, -6.940622252631224558e-04, -6.937660818459544503e-04, -6.934688294816798845e-04, -6.931704687215262247e-04, -6.928710001185043417e-04, -6.925704242273679609e-04, -6.922687416046345880e-04, -6.919659528086103371e-04, -6.916620583993326847e-04, -6.913570589386475564e-04, -6.910509549901101226e-04, -6.907437471190752210e-04, -6.904354358926310031e-04, -6.901260218796434953e-04, -6.898155056507256988e-04, -6.895038877782548288e-04, -6.891911688363479196e-04, -6.888773494008990127e-04, -6.885624300495369818e-04, -6.882464113616322543e-04, -6.879292939183464682e-04, -6.876110783025661186e-04, -6.872917650989223987e-04, -6.869713548937949948e-04, -6.866498482753126279e-04, -6.863272458333758222e-04, -6.860035481595932625e-04, -6.856787558473277644e-04, -6.853528694916975750e-04, -6.850258896895500271e-04, -6.846978170394599130e-04, -6.843686521417808753e-04, -6.840383955985792708e-04, -6.837070480136587820e-04, -6.833746099925516347e-04, -6.830410821425355120e-04, -6.827064650726437454e-04, -6.823707593935989619e-04, -6.820339657178922307e-04, -6.816960846597239741e-04, -6.813571168350218569e-04, -6.810170628614517366e-04, -6.806759233584273134e-04, -6.803336989470517996e-04, -6.799903902501622634e-04, -6.796459978923420978e-04, -6.793005224998575941e-04, -6.789539647007524848e-04, -6.786063251247355117e-04, -6.782576044032759439e-04, -6.779078031695370083e-04, -6.775569220583905258e-04, -6.772049617064637489e-04, -6.768519227520744183e-04, -6.764978058352515795e-04, -6.761426115977308120e-04, -6.757863406829849127e-04, -6.754289937361561327e-04, -6.750705714041555991e-04, -6.747110743355443779e-04, -6.743505031806273659e-04, -6.739888585913887805e-04, -6.736261412215279387e-04, -6.732623517264783386e-04, -6.728974907633278628e-04, -6.725315589908800349e-04, -6.721645570696560806e-04, -6.717964856618578468e-04, -6.714273454313722479e-04, -6.710571370438294866e-04, -6.706858611665201132e-04, -6.703135184684306950e-04, -6.699401096202335171e-04, -6.695656352943037126e-04, -6.691900961647325981e-04, -6.688134929072562249e-04, -6.684358261993094807e-04, -6.680570967200381242e-04, -6.676773051502402382e-04, -6.672964521724242346e-04, -6.669145384707684133e-04, -6.665315647311491516e-04, -6.661475316410933080e-04, -6.657624398898422981e-04, -6.653762901682737070e-04, -6.649890831689994099e-04, -6.646008195862498870e-04, -6.642115001159737539e-04, -6.638211254557646861e-04, -6.634296963048814770e-04, -6.630372133642959591e-04, -6.626436773366252420e-04, -6.622490889261436380e-04, -6.618534488387946974e-04, -6.614567577822135424e-04, -6.610590164656555273e-04, -6.606602256001020560e-04, -6.602603858981313453e-04, -6.598594980740335675e-04, -6.594575628437255232e-04, -6.590545809247776382e-04, -6.586505530364576569e-04, -6.582454798996666741e-04, -6.578393622369401112e-04, -6.574322007725030099e-04, -6.570239962322054145e-04, -6.566147493435380922e-04, -6.562044608356879362e-04, -6.557931314394613125e-04, -6.553807618873055268e-04, -6.549673529133096927e-04, -6.545529052532153558e-04, -6.541374196444387206e-04, -6.537208968259910699e-04, -6.533033375385292885e-04, -6.528847425243815587e-04, -6.524651125274823086e-04, -6.520444482933973650e-04, -6.516227505693679726e-04, -6.512000201042482351e-04, -6.507762576485089101e-04, -6.503514639542582257e-04, -6.499256397752398206e-04, -6.494987858668526933e-04, -6.490709029860785607e-04, -6.486419918915350925e-04, -6.482120533434893549e-04, -6.477810881037966619e-04, -6.473490969359525088e-04, -6.469160806051016789e-04, -6.464820398779585553e-04, -6.460469755228668599e-04, -6.456108883098146158e-04, -6.451737790103591200e-04, -6.447356483977351475e-04, -6.442964972467220275e-04, -6.438563263337644237e-04, -6.434151364368828879e-04, -6.429729283356957602e-04, -6.425297028114793432e-04, -6.420854606470847428e-04, -6.416402026269584684e-04, -6.411939295371524078e-04, -6.407466421653425833e-04, -6.402983413007646424e-04, -6.398490277343116522e-04, -6.393987022584145122e-04, -6.389473656671431105e-04, -6.384950187561275019e-04, -6.380416623226142867e-04, -6.375872971654359279e-04, -6.371319240850260380e-04, -6.366755438833742765e-04, -6.362181573641017022e-04, -6.357597653323803248e-04, -6.353003685949604271e-04, -6.348399679602262933e-04, -6.343785642381108815e-04, -6.339161582401215203e-04, -6.334527507793394742e-04, -6.329883426704408693e-04, -6.325229347297013551e-04, -6.320565277749234630e-04, -6.315891226254958038e-04, -6.311207201024061865e-04, -6.306513210281824208e-04, -6.301809262269133507e-04, -6.297095365243067511e-04, -6.292371527476025911e-04, -6.287637757255881048e-04, -6.282894062886537363e-04, -6.278140452686997892e-04, -6.273376934992615445e-04, -6.268603518153598566e-04, -6.263820210536209581e-04, -6.259027020522050112e-04, -6.254223956508079500e-04, -6.249411026907331470e-04, -6.244588240148080376e-04, -6.239755604673948540e-04, -6.234913128944073214e-04, -6.230060821433364626e-04, -6.225198690631698244e-04, -6.220326745045107403e-04, -6.215444993194280598e-04, -6.210553443615917822e-04, -6.205652104861758035e-04, -6.200740985498832871e-04, -6.195820094110042345e-04, -6.190889439293385072e-04, -6.185949029662042836e-04, -6.180998873844521530e-04, -6.176038980484967753e-04, -6.171069358242312281e-04, -6.166090015791386800e-04, -6.161100961821947041e-04, -6.156102205038924309e-04, -6.151093754162467774e-04, -6.146075617928053970e-04, -6.141047805086672197e-04, -6.136010324404010284e-04, -6.130963184660995604e-04, -6.125906394654036854e-04, -6.120839963194386543e-04, -6.115763899108291697e-04, -6.110678211237670398e-04, -6.105582908439215152e-04, -6.100477999584582624e-04, -6.095363493560503141e-04, -6.090239399268838156e-04, -6.085105725626869730e-04, -6.079962481566331253e-04, -6.074809676034031948e-04, -6.069647317992130087e-04, -6.064475416417239610e-04, -6.059293980301653105e-04, -6.054103018651860787e-04, -6.048902540489803836e-04, -6.043692554851947405e-04, -6.038473070790067749e-04, -6.033244097370224403e-04, -6.028005643674214098e-04, -6.022757718797812181e-04, -6.017500331852231954e-04, -6.012233491963186842e-04, -6.006957208271002059e-04, -6.001671489931446196e-04, -5.996376346114660029e-04, -5.991071786005459010e-04, -5.985757818803374465e-04, -5.980434453723005965e-04, -5.975101699993104086e-04, -5.969759566857900726e-04, -5.964408063575492563e-04, -5.959047199419239670e-04, -5.953676983676660719e-04, -5.948297425650238539e-04, -5.942908534656978848e-04, -5.937510320028607574e-04, -5.932102791111026592e-04, -5.926685957265217944e-04, -5.921259827866351541e-04, -5.915824412303980319e-04, -5.910379719982818700e-04, -5.904925760321639953e-04, -5.899462542753700122e-04, -5.893990076726592737e-04, -5.888508371702579503e-04, -5.883017437158661852e-04, -5.877517282585686476e-04, -5.872007917489000190e-04, -5.866489351388715556e-04, -5.860961593818920503e-04, -5.855424654327981903e-04, -5.849878542479177660e-04, -5.844323267849733938e-04, -5.838758840031069109e-04, -5.833185268628895666e-04, -5.827602563263304791e-04, -5.822010733569021141e-04, -5.816409789194267694e-04, -5.810799739802087385e-04, -5.805180595069367325e-04, -5.799552364687080583e-04, -5.793915058360950797e-04, -5.788268685810488319e-04, -5.782613256769248257e-04, -5.776948780984874927e-04, -5.771275268219523604e-04, -5.765592728248764400e-04, -5.759901170863157603e-04, -5.754200605866422466e-04, -5.748491043076916053e-04, -5.742772492326693240e-04, -5.737044963461641152e-04, -5.731308466342299908e-04, -5.725563010842748060e-04, -5.719808606850948452e-04, -5.714045264268766654e-04, -5.708272993012361270e-04, -5.702491803011175637e-04, -5.696701704209430764e-04, -5.690902706564299543e-04, -5.685094820047465825e-04, -5.679278054643923128e-04, -5.673452420352879944e-04, -5.667617927187190534e-04, -5.661774585173641157e-04, -5.655922404352392791e-04, -5.650061394777861502e-04, -5.644191566517823980e-04, -5.638312929653622454e-04, -5.632425494280945315e-04, -5.626529270508773273e-04, -5.620624268459633059e-04, -5.614710498269665732e-04, -5.608787970088818580e-04, -5.602856694080964386e-04, -5.596916680422998284e-04, -5.590967939305445996e-04, -5.585010480932858486e-04, -5.579044315522594397e-04, -5.573069453306518997e-04, -5.567085904529052616e-04, -5.561093679448728642e-04, -5.555092788337106071e-04, -5.549083241479655293e-04, -5.543065049174645707e-04, -5.537038221734674444e-04, -5.531002769484856833e-04, -5.524958702764291157e-04, -5.518906031925067696e-04, -5.512844767332517005e-04, -5.506774919365934164e-04, -5.500696498417526016e-04, -5.494609514892676797e-04, -5.488513979210039211e-04, -5.482409901801933412e-04, -5.476297293113207513e-04, -5.470176163602965798e-04, -5.464046523742449113e-04, -5.457908384016871501e-04, -5.451761754924145179e-04, -5.445606646975244833e-04, -5.439443070694911266e-04, -5.433271036620612726e-04, -5.427090555302796450e-04, -5.420901637304955875e-04, -5.414704293204105527e-04, -5.408498533589542858e-04, -5.402284369064477799e-04, -5.396061810244703535e-04, -5.389830867758859962e-04, -5.383591552248557285e-04, -5.377343874368482272e-04, -5.371087844786705083e-04, -5.364823474183471469e-04, -5.358550773252131931e-04, -5.352269752699287007e-04, -5.345980423243713907e-04, -5.339682795618010168e-04, -5.333376880566618235e-04, -5.327062688847509228e-04, -5.320740231230993572e-04, -5.314409518500180698e-04, -5.308070561451057106e-04, -5.301723370892756334e-04, -5.295367957646456318e-04, -5.289004332546148098e-04, -5.282632506438925298e-04, -5.276252490183859804e-04, -5.269864294653626990e-04, -5.263467930732547645e-04, -5.257063409318277159e-04, -5.250650741320442684e-04, -5.244229937661860691e-04, -5.237801009277170874e-04, -5.231363967114516667e-04, -5.224918822133575247e-04, -5.218465585307248888e-04, -5.212004267620452824e-04, -5.205534880070448100e-04, -5.199057433667613522e-04, -5.192571939434360373e-04, -5.186078408405332988e-04, -5.179576851627580060e-04, -5.173067280160888572e-04, -5.166549705076763565e-04, -5.160024137459950358e-04, -5.153490588406553453e-04, -5.146949069025661761e-04, -5.140399590438095257e-04, -5.133842163777300538e-04, -5.127276800188828232e-04, -5.120703510830619228e-04, -5.114122306872363917e-04, -5.107533199496480138e-04, -5.100936199897131975e-04, -5.094331319280468286e-04, -5.087718568865495479e-04, -5.081097959882851286e-04, -5.074469503575148449e-04, -5.067833211197030020e-04, -5.061189094015359092e-04, -5.054537163309449736e-04, -5.047877430369851611e-04, -5.041209906499294303e-04, -5.034534603012901996e-04, -5.027851531237006273e-04, -5.021160702510901437e-04, -5.014462128184744415e-04, -5.007755819621338266e-04, -5.001041788194890772e-04, -4.994320045291526181e-04, -4.987590602309244009e-04, -4.980853470658380905e-04, -4.974108661760148070e-04, -4.967356187048285743e-04, -4.960596057967838054e-04, -4.953828285975429499e-04, -4.947052882540151813e-04, -4.940269859142347496e-04, -4.933479227273877615e-04, -4.926680998438280092e-04, -4.919875184151157850e-04, -4.913061795939008963e-04, -4.906240845340957037e-04, -4.899412343906681469e-04, -4.892576303198145670e-04, -4.885732734788426120e-04, -4.878881650261954151e-04, -4.872023061215428300e-04, -4.865156979256564764e-04, -4.858283416004416161e-04, -4.851402383089439829e-04, -4.844513892154027465e-04, -4.837617954851173175e-04, -4.830714582846304156e-04, -4.823803787815202819e-04, -4.816885581445716578e-04, -4.809959975436439456e-04, -4.803026981497530664e-04, -4.796086611350943362e-04, -4.789138876729110610e-04, -4.782183789375864767e-04, -4.775221361046715594e-04, -4.768251603507631066e-04, -4.761274528536840397e-04, -4.754290147922662934e-04, -4.747298473465322560e-04, -4.740299516975719839e-04, -4.733293290275841845e-04, -4.726279805198967620e-04, -4.719259073589858445e-04, -4.712231107303567392e-04, -4.705195918206345716e-04, -4.698153518175885715e-04, -4.691103919100130817e-04, -4.684047132879050964e-04, -4.676983171422476916e-04, -4.669912046651963455e-04, -4.662833770499336008e-04, -4.655748354907934231e-04, -4.648655811831194410e-04, -4.641556153234495863e-04, -4.634449391092911757e-04, -4.627335537393176940e-04, -4.620214604132275764e-04, -4.613086603317841615e-04, -4.605951546969018311e-04, -4.598809447115228448e-04, -4.591660315796423312e-04, -4.584504165063251467e-04, -4.577341006977507076e-04, -4.570170853610808258e-04, -4.562993717046554616e-04, -4.555809609377605416e-04, -4.548618542708210552e-04, -4.541420529152713297e-04, -4.534215580835820273e-04, -4.527003709893591865e-04, -4.519784928472093477e-04, -4.512559248727553282e-04, -4.505326682827305476e-04, -4.498087242948342872e-04, -4.490840941279149201e-04, -4.483587790017559975e-04, -4.476327801372541673e-04, -4.469060987562963332e-04, -4.461787360818019387e-04, -4.454506933377411280e-04, -4.447219717491576762e-04, -4.439925725420459869e-04, -4.432624969434425990e-04, -4.425317461814567066e-04, -4.418003214851329535e-04, -4.410682240846560765e-04, -4.403354552111105914e-04, -4.396020160966803954e-04, -4.388679079745102596e-04, -4.381331320787601479e-04, -4.373976896446128606e-04, -4.366615819083085118e-04, -4.359248101070123654e-04, -4.351873754789048238e-04, -4.344492792632212723e-04, -4.337105227001120003e-04, -4.329711070308196849e-04, -4.322310334975364935e-04, -4.314903033434302668e-04, -4.307489178126580717e-04, -4.300068781504165624e-04, -4.292641856028045033e-04, -4.285208414170201484e-04, -4.277768468411326372e-04, -4.270322031242680433e-04, -4.262869115164846377e-04, -4.255409732688001019e-04, -4.247943896332881841e-04, -4.240471618629419281e-04, -4.232992912117130289e-04, -4.225507789345170915e-04, -4.218016262872845883e-04, -4.210518345268280446e-04, -4.203014049110381160e-04, -4.195503386986465283e-04, -4.187986371494250822e-04, -4.180463015240361421e-04, -4.172933330841424116e-04, -4.165397330923442123e-04, -4.157855028122022520e-04, -4.150306435081782108e-04, -4.142751564457421306e-04, -4.135190428912246391e-04, -4.127623041120106421e-04, -4.120049413763110990e-04, -4.112469559533521619e-04, -4.104883491132458847e-04, -4.097291221270334279e-04, -4.089692762667068520e-04, -4.082088128052298792e-04, -4.074477330164148368e-04, -4.066860381750071708e-04, -4.059237295567289221e-04, -4.051608084381331186e-04, -4.043972760968117248e-04, -4.036331338111481728e-04, -4.028683828605287274e-04, -4.021030245251938423e-04, -4.013370600862948634e-04, -4.005704908259079614e-04, -3.998033180270604771e-04, -3.990355429735818445e-04, -3.982671669502862240e-04, -3.974981912428344837e-04, -3.967286171377645571e-04, -3.959584459225934665e-04, -3.951876788856789786e-04, -3.944163173162500168e-04, -3.936443625044222191e-04, -3.928718157412481910e-04, -3.920986783185761255e-04, -3.913249515292563439e-04, -3.905506366668933926e-04, -3.897757350260598478e-04, -3.890002479021451237e-04, -3.882241765913964013e-04, -3.874475223910143627e-04, -3.866702865990176668e-04, -3.858924705142705415e-04, -3.851140754365025166e-04, -3.843351026663210002e-04, -3.835555535052408778e-04, -3.827754292555520768e-04, -3.819947312204125911e-04, -3.812134607038862653e-04, -3.804316190108167567e-04, -3.796492074469311846e-04, -3.788662273188535745e-04, -3.780826799339651045e-04, -3.772985666005079721e-04, -3.765138886276101133e-04, -3.757286473251548824e-04, -3.749428440039800025e-04, -3.741564799756338911e-04, -3.733695565525827972e-04, -3.725820750480686081e-04, -3.717940367761619750e-04, -3.710054430517704992e-04, -3.702162951906787930e-04, -3.694265945094017873e-04, -3.686363423252926098e-04, -3.678455399565677382e-04, -3.670541887221725596e-04, -3.662622899419824352e-04, -3.654698449365629295e-04, -3.646768550273690322e-04, -3.638833215365932616e-04, -3.630892457872993465e-04, -3.622946291032607888e-04, -3.614994728091749931e-04, -3.607037782304102144e-04, -3.599075466932144833e-04, -3.591107795245765031e-04, -3.583134780522543813e-04, -3.575156436048817729e-04, -3.567172775118226512e-04, -3.559183811032062199e-04, -3.551189557099426329e-04, -3.543190026637350843e-04, -3.535185232971176463e-04, -3.527175189433071133e-04, -3.519159909363101749e-04, -3.511139406109564849e-04, -3.503113693027872584e-04, -3.495082783480908347e-04, -3.487046690840070310e-04, -3.479005428483820765e-04, -3.470959009797844959e-04, -3.462907448176101143e-04, -3.454850757019181802e-04, -3.446788949736423512e-04, -3.438722039743433330e-04, -3.430650040464168840e-04, -3.422572965329477189e-04, -3.414490827777646401e-04, -3.406403641254526272e-04, -3.398311419213904581e-04, -3.390214175116000594e-04, -3.382111922428569328e-04, -3.374004674627188857e-04, -3.365892445193850312e-04, -3.357775247619060690e-04, -3.349653095399300401e-04, -3.341526002039192211e-04, -3.333393981049993121e-04, -3.325257045950152186e-04, -3.317115210265441164e-04, -3.308968487529309046e-04, -3.300816891281418389e-04, -3.292660435068685059e-04, -3.284499132445636567e-04, -3.276332996972933210e-04, -3.268162042219346745e-04, -3.259986281760102102e-04, -3.251805729177209689e-04, -3.243620398059631816e-04, -3.235430302003806371e-04, -3.227235454612175009e-04, -3.219035869495315240e-04, -3.210831560269424532e-04, -3.202622540558419336e-04, -3.194408823992494172e-04, -3.186190424208468035e-04, -3.177967354850817099e-04, -3.169739629570247365e-04, -3.161507262023976008e-04, -3.153270265875951473e-04, -3.145028654796967857e-04, -3.136782442465037334e-04, -3.128531642563876607e-04, -3.120276268784017673e-04, -3.112016334823115198e-04, -3.103751854384660105e-04, -3.095482841179239423e-04, -3.087209308923789266e-04, -3.078931271341910883e-04, -3.070648742163139904e-04, -3.062361735124202386e-04, -3.054070263967331592e-04, -3.045774342442452115e-04, -3.037473984304588093e-04, -3.029169203316056007e-04, -3.020860013244954932e-04, -3.012546427865698878e-04, -3.004228460959164782e-04, -2.995906126313087163e-04, -2.987579437720491986e-04, -2.979248408980851343e-04, -2.970913053900362086e-04, -2.962573386290485956e-04, -2.954229419970151593e-04, -2.945881168763114506e-04, -2.937528646500167217e-04, -2.929171867017447365e-04, -2.920810844157904090e-04, -2.912445591769613181e-04, -2.904076123707945481e-04, -2.895702453832989741e-04, -2.887324596011722646e-04, -2.878942564116533220e-04, -2.870556372025531819e-04, -2.862166033623684755e-04, -2.853771562801256834e-04, -2.845372973454216850e-04, -2.836970279484355762e-04, -2.828563494799452580e-04, -2.820152633313655456e-04, -2.811737708945947004e-04, -2.803318735621216566e-04, -2.794895727270663545e-04, -2.786468697830616703e-04, -2.778037661242896829e-04, -2.769602631455900937e-04, -2.761163622423099570e-04, -2.752720648103394036e-04, -2.744273722461253564e-04, -2.735822859466900160e-04, -2.727368073096662600e-04, -2.718909377331257967e-04, -2.710446786157824531e-04, -2.701980313568401698e-04, -2.693509973560503012e-04, -2.685035780137210479e-04, -2.676557747307604452e-04, -2.668075889085177988e-04, -2.659590219488984475e-04, -2.651100752543956388e-04, -2.642607502279388488e-04, -2.634110482731198384e-04, -2.625609707939229043e-04, -2.617105191949499585e-04, -2.608596948812693371e-04, -2.600084992584671909e-04, -2.591569337326653753e-04, -2.583049997105570116e-04, -2.574526985992541027e-04, -2.566000318063954653e-04, -2.557470007401851648e-04, -2.548936068092378542e-04, -2.540398514228024989e-04, -2.531857359904979396e-04, -2.523312619225346666e-04, -2.514764306295431896e-04, -2.506212435226858742e-04, -2.497657020136733125e-04, -2.489098075146100415e-04, -2.480535614381052943e-04, -2.471969651973115437e-04, -2.463400202058046431e-04, -2.454827278776211780e-04, -2.446250896273701922e-04, -2.437671068700789881e-04, -2.429087810212284166e-04, -2.420501134967685715e-04, -2.411911057131383861e-04, -2.403317590872981323e-04, -2.394720750365765755e-04, -2.386120549787823758e-04, -2.377517003322404904e-04, -2.368910125156738330e-04, -2.360299929482422780e-04, -2.351686430496493455e-04, -2.343069642399949132e-04, -2.334449579397839978e-04, -2.325826255700440390e-04, -2.317199685521499088e-04, -2.308569883080488570e-04, -2.299936862599927126e-04, -2.291300638307640217e-04, -2.282661224435204644e-04, -2.274018635218521818e-04, -2.265372884897934585e-04, -2.256723987718642474e-04, -2.248071957929120661e-04, -2.239416809782238322e-04, -2.230758557535639458e-04, -2.222097215450168637e-04, -2.213432797792156217e-04, -2.204765318830708657e-04, -2.196094792839987779e-04, -2.187421234097646535e-04, -2.178744656885389273e-04, -2.170065075489133275e-04, -2.161382504199384712e-04, -2.152696957309655434e-04, -2.144008449117598941e-04, -2.135316993925400158e-04, -2.126622606038151299e-04, -2.117925299766024064e-04, -2.109225089422443029e-04, -2.100521989324492496e-04, -2.091816013793060692e-04, -2.083107177153023537e-04, -2.074395493733604331e-04, -2.065680977866790548e-04, -2.056963643888504775e-04, -2.048243506138920211e-04, -2.039520578961320633e-04, -2.030794876702431075e-04, -2.022066413713576570e-04, -2.013335204349106262e-04, -2.004601262966742789e-04, -1.995864603927777984e-04, -1.987125241597207585e-04, -1.978383190344132933e-04, -1.969638464540164483e-04, -1.960891078560562928e-04, -1.952141046784617315e-04, -1.943388383594238020e-04, -1.934633103375315254e-04, -1.925875220516918922e-04, -1.917114749411636895e-04, -1.908351704454811729e-04, -1.899586100045840627e-04, -1.890817950586429056e-04, -1.882047270482902000e-04, -1.873274074143415659e-04, -1.864498375980336189e-04, -1.855720190408590364e-04, -1.846939531846283834e-04, -1.838156414714832052e-04, -1.829370853439340550e-04, -1.820582862447031223e-04, -1.811792456168368815e-04, -1.802999649037452046e-04, -1.794204455490393810e-04, -1.785406889967682844e-04, -1.776606966911390003e-04, -1.767804700767516108e-04, -1.759000105984181864e-04, -1.750193197013003444e-04, -1.741383988308247896e-04, -1.732572494327255710e-04, -1.723758729529568034e-04, -1.714942708378332074e-04, -1.706124445338868861e-04, -1.697303954879066275e-04, -1.688481251470502005e-04, -1.679656349586885556e-04, -1.670829263704394615e-04, -1.662000008301882685e-04, -1.653168597861011347e-04, -1.644335046866656305e-04, -1.635499369805281885e-04, -1.626661581166124993e-04, -1.617821695441530670e-04, -1.608979727125788202e-04, -1.600135690715466410e-04, -1.591289600710592180e-04, -1.582441471613037708e-04, -1.573591317926901058e-04, -1.564739154158676922e-04, -1.555884994817426027e-04, -1.547028854415146207e-04, -1.538170747464982920e-04, -1.529310688483359170e-04, -1.520448691988386333e-04, -1.511584772500433095e-04, -1.502718944542292146e-04, -1.493851222639547998e-04, -1.484981621318983477e-04, -1.476110155109739276e-04, -1.467236838543680420e-04, -1.458361686153792725e-04, -1.449484712476531727e-04, -1.440605932049032214e-04, -1.431725359411463656e-04, -1.422843009105408238e-04, -1.413958895674243042e-04, -1.405073033664307463e-04, -1.396185437623288284e-04, -1.387296122100586688e-04, -1.378405101647516928e-04, -1.369512390817843287e-04, -1.360618004166200658e-04, -1.351721956250426671e-04, -1.342824261628779083e-04, -1.333924934862282805e-04, -1.325023990512920642e-04, -1.316121443144810193e-04, -1.307217307324355367e-04, -1.298311597618664263e-04, -1.289404328596698154e-04, -1.280495514829647159e-04, -1.271585170889712960e-04, -1.262673311350494233e-04, -1.253759950788140237e-04, -1.244845103779746473e-04, -1.235928784903723575e-04, -1.227011008739973771e-04, -1.218091789870072889e-04, -1.209171142877626248e-04, -1.200249082346676645e-04, -1.191325622862855093e-04, -1.182400779013766129e-04, -1.173474565387567500e-04, -1.164546996574337349e-04, -1.155618087165261059e-04, -1.146687851752992160e-04, -1.137756304930850150e-04, -1.128823461294177380e-04, -1.119889335438526399e-04, -1.110953941962025145e-04, -1.102017295462573329e-04, -1.093079410540191091e-04, -1.084140301795421564e-04, -1.075199983829690828e-04, -1.066258471246486571e-04, -1.057315778649738162e-04, -1.048371920644189744e-04, -1.039426911835582252e-04, -1.030480766831220037e-04, -1.021533500238355004e-04, -1.012585126666556133e-04, -1.003635660724895568e-04, -9.946851170243056729e-05, -9.857335101759908118e-05, -9.767808547917585708e-05, -9.678271654852294579e-05, -9.588724568701998926e-05, -9.499167435608224551e-05, -9.409600401727735719e-05, -9.320023613218417484e-05, -9.230437216243031105e-05, -9.140841356980789248e-05, -9.051236181611353173e-05, -8.961621836318479711e-05, -8.871998467291841370e-05, -8.782366220728670260e-05, -8.692725242837634112e-05, -8.603075679822546143e-05, -8.513417677894185567e-05, -8.423751383273986597e-05, -8.334076942181845233e-05, -8.244394500839825879e-05, -8.154704205484006253e-05, -8.065006202348170986e-05, -7.975300637667653760e-05, -7.885587657680955486e-05, -7.795867408631701283e-05, -7.706140036772189889e-05, -7.616405688347366440e-05, -7.526664509606404460e-05, -7.436916646806579175e-05, -7.347162246199011608e-05, -7.257401454040353567e-05, -7.167634416594691779e-05, -7.077861280117164235e-05, -6.988082190865820009e-05, -6.898297295105340783e-05, -6.808506739090833379e-05, -6.718710669091522284e-05, -6.628909231362588859e-05, -6.539102572168911296e-05, -6.449290837768813787e-05, -6.359474174417820570e-05, -6.269652728380434433e-05, -6.179826645913921116e-05, -6.089996073272025410e-05, -6.000161156706761449e-05, -5.910322042474164402e-05, -5.820478876818059290e-05, -5.730631805993831437e-05, -5.640780976240180298e-05, -5.550926533802858740e-05, -5.461068624916478096e-05, -5.371207395818240944e-05, -5.281342992739704556e-05, -5.191475561910565442e-05, -5.101605249550418737e-05, -5.011732201882493685e-05, -4.921856565119416709e-05, -4.831978485467002736e-05, -4.742098109136029624e-05, -4.652215582325964973e-05, -4.562331051228686964e-05, -4.472444662030366136e-05, -4.382556560913134370e-05, -4.292666894058899934e-05, -4.202775807633036333e-05, -4.112883447796224511e-05, -4.022989960708200799e-05, -3.933095492515479007e-05, -3.843200189355124800e-05, -3.753304197366576889e-05, -3.663407662675332503e-05, -3.573510731394752580e-05, -3.483613549637813847e-05, -3.393716263498870500e-05, -3.303819019077431442e-05, -3.213921962449901225e-05, -3.124025239693354575e-05, -3.034128996869295719e-05, -2.944233380027434460e-05, -2.854338535217435874e-05, -2.764444608472683035e-05, -2.674551745814040206e-05, -2.584660093251636018e-05, -2.494769796790593811e-05, -2.404881002414823159e-05, -2.314993856110765245e-05, -2.225108503839168033e-05, -2.135225091558851641e-05, -2.045343765210444627e-05, -1.955464670720179042e-05, -1.865587954011646224e-05, -1.775713760989561552e-05, -1.685842237543507655e-05, -1.595973529549719953e-05, -1.506107782876856141e-05, -1.416245143369722992e-05, -1.326385756873094919e-05, -1.236529769203424607e-05, -1.146677326172642598e-05, -1.056828573569900687e-05, -9.669836571733461856e-06, -8.771427227518939157e-06, -7.873059160489680899e-06, -6.974733827942731047e-06, -6.076452687075786763e-06, -5.178217194864565829e-06, -4.280028808100522477e-06, -3.381888983508703557e-06, -2.483799177585074164e-06, -1.585760846634314365e-06, -6.877754467874324064e-07, 2.101555659805405892e-07, 1.108030735812864296e-06, 2.005848607133658154e-06, 2.903607724530097459e-06, 3.801306632714717773e-06, 4.698943876687930030e-06, 5.596518001500180669e-06, 6.494027552534520979e-06, 7.391471075268770840e-06, 8.288847115458005188e-06, 9.186154218976835638e-06, 1.008339093200176990e-05, 1.098055580077352840e-05, 1.187764737187954758e-05, 1.277466419201613807e-05, 1.367160480815088640e-05, 1.456846776748516354e-05, 1.546525161733618750e-05, 1.636195490529960276e-05, 1.725857617921177720e-05, 1.815511398713207875e-05, 1.905156687728531444e-05, 1.994793339822398799e-05, 2.084421209859066307e-05, 2.174040152740046910e-05, 2.263650023380307821e-05, 2.353250676724556257e-05, 2.442841967743418304e-05, 2.532423751421719371e-05, 2.621995882774687589e-05, 2.711558216846206892e-05, 2.801110608697045967e-05, 2.890652913419089088e-05, 2.980184986131566481e-05, 3.069706681969292081e-05, 3.159217856098914712e-05, 3.248718363715113550e-05, 3.338208060038875597e-05, 3.427686800315675919e-05, 3.517154439811799485e-05, 3.606610833830464611e-05, 3.696055837700135263e-05, 3.785489306770733120e-05, 3.874911096425849761e-05, 3.964321062079007523e-05, 4.053719059161899968e-05, 4.143104943140589192e-05, 4.232478569511763291e-05, 4.321839793800963012e-05, 4.411188471560808410e-05, 4.500524458367288836e-05, 4.589847609835885709e-05, 4.679157781609878712e-05, 4.768454829356608008e-05, 4.857738608783597001e-05, 4.947008975616940804e-05, 5.036265785619379204e-05, 5.125508894586626647e-05, 5.214738158345581939e-05, 5.303953432748567752e-05, 5.393154573689527245e-05, 5.482341437080325442e-05, 5.571513878878891048e-05, 5.660671755065547643e-05, 5.749814921659136444e-05, 5.838943234713353736e-05, 5.928056550304913416e-05, 6.017154724549826286e-05, 6.106237613599580958e-05, 6.195305073639407090e-05, 6.284356960882516243e-05, 6.373393131586278858e-05, 6.462413442028556792e-05, 6.551417748535839729e-05, 6.640405907459516054e-05, 6.729377775194069833e-05, 6.818333208163387341e-05, 6.907272062828948207e-05, 6.996194195686003601e-05, 7.085099463271871741e-05, 7.173987722152184781e-05, 7.262858828935030880e-05, 7.351712640267244869e-05, 7.440549012822740885e-05, 7.529367803318497577e-05, 7.618168868511012760e-05, 7.706952065194378962e-05, 7.795717250198672024e-05, 7.884464280386037133e-05, 7.973193012667029102e-05, 8.061903303988669886e-05, 8.150595011330938474e-05, 8.239267991722747965e-05, 8.327922102218403473e-05, 8.416557199925608424e-05, 8.505173141981888581e-05, 8.593769785572676534e-05, 8.682346987915608388e-05, 8.770904606278747849e-05, 8.859442497956878781e-05, 8.947960520299587405e-05, 9.036458530687575190e-05, 9.124936386548967960e-05, 9.213393945355362628e-05, 9.301831064610234360e-05, 9.390247601865072216e-05, 9.478643414715610190e-05, 9.567018360800059963e-05, 9.655372297793361920e-05, 9.743705083423398038e-05, 9.832016575447276318e-05, 9.920306631679454991e-05, 1.000857510996802153e-04, 1.009682186821098143e-04, 1.018504676435227511e-04, 1.027324965637039790e-04, 1.036143040229420086e-04, 1.044958886019941056e-04, 1.053772488820663817e-04, 1.062583834447588800e-04, 1.071392908722244646e-04, 1.080199697469543386e-04, 1.089004186519581841e-04, 1.097806361707272179e-04, 1.106606208872157467e-04, 1.115403713858243351e-04, 1.124198862513627793e-04, 1.132991640692097976e-04, 1.141782034251976431e-04, 1.150570029055739000e-04, 1.159355610971621347e-04, 1.168138765871275459e-04, 1.176919479632554687e-04, 1.185697738137158046e-04, 1.194473527272253542e-04, 1.203246832929882122e-04, 1.212017641006805625e-04, 1.220785937404125136e-04, 1.229551708028873546e-04, 1.238314938792871853e-04, 1.247075615612346306e-04, 1.255833724409530716e-04, 1.264589251110324040e-04, 1.273342181647068379e-04, 1.282092501956217398e-04, 1.290840197980118215e-04, 1.299585255665465598e-04, 1.308327660965097946e-04, 1.317067399835661107e-04, 1.325804458240372277e-04, 1.334538822146690592e-04, 1.343270477527915517e-04, 1.351999410362807099e-04, 1.360725606634443491e-04, 1.369449052331806057e-04, 1.378169733449401797e-04, 1.386887635987103426e-04, 1.395602745949576650e-04, 1.404315049347864446e-04, 1.413024532197080163e-04, 1.421731180519141327e-04, 1.430434980340470057e-04, 1.439135917693758681e-04, 1.447833978616626686e-04, 1.456529149152439558e-04, 1.465221415349917116e-04, 1.473910763263948018e-04, 1.482597178954254838e-04, 1.491280648486765852e-04, 1.499961157933259691e-04, 1.508638693370206870e-04, 1.517313240880362754e-04, 1.525984786552394591e-04, 1.534653316480705330e-04, 1.543318816765265839e-04, 1.551981273511250886e-04, 1.560640672830608793e-04, 1.569297000840927901e-04, 1.577950243665053305e-04, 1.586600387432688763e-04, 1.595247418278058073e-04, 1.603891322342678458e-04, 1.612532085773022220e-04, 1.621169694722107528e-04, 1.629804135348946836e-04, 1.638435393818340341e-04, 1.647063456300565084e-04, 1.655688308973092061e-04, 1.664309938018494522e-04, 1.672928329626024947e-04, 1.681543469991254001e-04, 1.690155345314908817e-04, 1.698763941804468124e-04, 1.707369245673777359e-04, 1.715971243142898773e-04, 1.724569920437524337e-04, 1.733165263790573585e-04, 1.741757259439878571e-04, 1.750345893630921750e-04, 1.758931152614526359e-04, 1.767513022648437991e-04, 1.776091489996944862e-04, 1.784666540929762157e-04, 1.793238161723575399e-04, 1.801806338661694859e-04, 1.810371058033872593e-04, 1.818932306135747333e-04, 1.827490069270418206e-04, 1.836044333746142431e-04, 1.844595085879060191e-04, 1.853142311990911301e-04, 1.861685998410762344e-04, 1.870226131473917046e-04, 1.878762697521710280e-04, 1.887295682903088558e-04, 1.895825073973458072e-04, 1.904350857094344520e-04, 1.912873018634940806e-04, 1.921391544969828591e-04, 1.929906422481665758e-04, 1.938417637558955667e-04, 1.946925176597540639e-04, 1.955429026000100249e-04, 1.963929172175946135e-04, 1.972425601540688607e-04, 1.980918300517769167e-04, 1.989407255537341886e-04, 1.997892453035912631e-04, 2.006373879457886496e-04, 2.014851521253300463e-04, 2.023325364880526861e-04, 2.031795396803974313e-04, 2.040261603495867727e-04, 2.048723971434715779e-04, 2.057182487107054030e-04, 2.065637137005182477e-04, 2.074087907629857351e-04, 2.082534785488017004e-04, 2.090977757094333942e-04, 2.099416808970855418e-04, 2.107851927645889678e-04, 2.116283099655532794e-04, 2.124710311543316296e-04, 2.133133549860048337e-04, 2.141552801163255058e-04, 2.149968052018719883e-04, 2.158379288998240578e-04, 2.166786498682290963e-04, 2.175189667657766320e-04, 2.183588782519542469e-04, 2.191983829870093050e-04, 2.200374796318391223e-04, 2.208761668481427009e-04, 2.217144432983883117e-04, 2.225523076457930566e-04, 2.233897585543078801e-04, 2.242267946885819255e-04, 2.250634147141342459e-04, 2.258996172971493505e-04, 2.267354011046272854e-04, 2.275707648043330013e-04, 2.284057070647775426e-04, 2.292402265551824316e-04, 2.300743219456330825e-04, 2.309079919069676444e-04, 2.317412351107412760e-04, 2.325740502293796423e-04, 2.334064359359535083e-04, 2.342383909044465373e-04, 2.350699138095307527e-04, 2.359010033267176212e-04, 2.367316581323047648e-04, 2.375618769033611066e-04, 2.383916583176893308e-04, 2.392210010539773998e-04, 2.400499037916901880e-04, 2.408783652110336223e-04, 2.417063839931053314e-04, 2.425339588196738483e-04, 2.433610883734409062e-04, 2.441877713378209653e-04, 2.450140063971098883e-04, 2.458397922363375968e-04, 2.466651275414407578e-04, 2.474900109990380557e-04, 2.483144412966931114e-04, 2.491384171226962321e-04, 2.499619371662121343e-04, 2.507850001172468209e-04, 2.516076046665365593e-04, 2.524297495056995072e-04, 2.532514333272022100e-04, 2.540726548243386765e-04, 2.548934126911815896e-04, 2.557137056227305706e-04, 2.565335323146901892e-04, 2.573528914637356470e-04, 2.581717817672892152e-04, 2.589902019236883942e-04, 2.598081506320619352e-04, 2.606256265924026443e-04, 2.614426285055355069e-04, 2.622591550731889201e-04, 2.630752049978720688e-04, 2.638907769830407010e-04, 2.647058697328811541e-04, 2.655204819525637874e-04, 2.663346123480307497e-04, 2.671482596261417499e-04, 2.679614224946222866e-04, 2.687740996620459214e-04, 2.695862898378008311e-04, 2.703979917322392652e-04, 2.712092040565670654e-04, 2.720199255228123868e-04, 2.728301548439704383e-04, 2.736398907337888654e-04, 2.744491319070260066e-04, 2.752578770792301504e-04, 2.760661249668915399e-04, 2.768738742873890846e-04, 2.776811237589710615e-04, 2.784878721007231312e-04, 2.792941180327357929e-04, 2.800998602759026683e-04, 2.809050975520706642e-04, 2.817098285840038681e-04, 2.825140520952774590e-04, 2.833177668104273276e-04, 2.841209714549097981e-04, 2.849236647550916534e-04, 2.857258454381946780e-04, 2.865275122324419175e-04, 2.873286638668460418e-04, 2.881292990714599041e-04, 2.889294165771662064e-04, 2.897290151158200713e-04, 2.905280934202166790e-04, 2.913266502239869669e-04, 2.921246842617397145e-04, 2.929221942690315647e-04, 2.937191789823468584e-04, 2.945156371390872797e-04, 2.953115674775304397e-04, 2.961069687369838332e-04, 2.969018396576715937e-04, 2.976961789807068461e-04, 2.984899854482137883e-04, 2.992832578032266974e-04, 3.000759947896713357e-04, 3.008681951525109385e-04, 3.016598576376403962e-04, 3.024509809918532943e-04, 3.032415639629861665e-04, 3.040316052997064250e-04, 3.048211037517648166e-04, 3.056100580697803716e-04, 3.063984670053910534e-04, 3.071863293111954285e-04, 3.079736437407416079e-04, 3.087604090484910341e-04, 3.095466239899646323e-04, 3.103322873216358534e-04, 3.111173978009003165e-04, 3.119019541862145866e-04, 3.126859552368930497e-04, 3.134693997133492557e-04, 3.142522863768927393e-04, 3.150346139898859039e-04, 3.158163813156052440e-04, 3.165975871184028363e-04, 3.173782301634968188e-04, 3.181583092172218406e-04, 3.189378230468136312e-04, 3.197167704205580241e-04, 3.204951501077548531e-04, 3.212729608786151696e-04, 3.220502015044046282e-04, 3.228268707574067872e-04, 3.236029674109115609e-04, 3.243784902391973310e-04, 3.251534380174989623e-04, 3.259278095221491826e-04, 3.267016035304753669e-04, 3.274748188207666859e-04, 3.282474541723814964e-04, 3.290195083657140016e-04, 3.297909801820899517e-04, 3.305618684039106792e-04, 3.313321718146362404e-04, 3.321018891986811687e-04, 3.328710193415777559e-04, 3.336395610297644156e-04, 3.344075130508314723e-04, 3.351748741933189570e-04, 3.359416432468520248e-04, 3.367078190020943878e-04, 3.374734002507301009e-04, 3.382383857854350472e-04, 3.390027744000121920e-04, 3.397665648892921075e-04, 3.405297560491022356e-04, 3.412923466764032805e-04, 3.420543355690861920e-04, 3.428157215262159479e-04, 3.435765033478245262e-04, 3.443366798350523390e-04, 3.450962497900980338e-04, 3.458552120162023931e-04, 3.466135653176173267e-04, 3.473713084997442154e-04, 3.481284403690322127e-04, 3.488849597329469663e-04, 3.496408654001100999e-04, 3.503961561801100747e-04, 3.511508308836607537e-04, 3.519048883225677914e-04, 3.526583273097153525e-04, 3.534111466590111970e-04, 3.541633451855325594e-04, 3.549149217053192292e-04, 3.556658750356141889e-04, 3.564162039946587547e-04, 3.571659074018371000e-04, 3.579149840776389051e-04, 3.586634328435601526e-04, 3.594112525222428267e-04, 3.601584419374384300e-04, 3.609049999139983880e-04, 3.616509252778544797e-04, 3.623962168559904311e-04, 3.631408734765757059e-04, 3.638848939688685237e-04, 3.646282771631822496e-04, 3.653710218910051445e-04, 3.661131269848871199e-04, 3.668545912785055492e-04, 3.675954136066343679e-04, 3.683355928052148721e-04, 3.690751277112371605e-04, 3.698140171628947967e-04, 3.705522599993865077e-04, 3.712898550611494508e-04, 3.720268011896614544e-04, 3.727630972275793628e-04, 3.734987420186854762e-04, 3.742337344078769802e-04, 3.749680732411332022e-04, 3.757017573656502699e-04, 3.764347856297419609e-04, 3.771671568828124346e-04, 3.778988699754838977e-04, 3.786299237594070309e-04, 3.793603170874895389e-04, 3.800900488137013192e-04, 3.808191177932083071e-04, 3.815475228823225480e-04, 3.822752629384928188e-04, 3.830023368202688499e-04, 3.837287433874507817e-04, 3.844544815009146629e-04, 3.851795500227396269e-04, 3.859039478161837688e-04, 3.866276737455809831e-04, 3.873507266764773566e-04, 3.880731054755996181e-04, 3.887948090108417484e-04, 3.895158361512451937e-04, 3.902361857669757179e-04, 3.909558567294517720e-04, 3.916748479112458861e-04, 3.923931581860564798e-04, 3.931107864288106994e-04, 3.938277315156265244e-04, 3.945439923237232128e-04, 3.952595677315491282e-04, 3.959744566187527919e-04, 3.966886578661668909e-04, 3.974021703557959178e-04, 3.981149929707855422e-04, 3.988271245955507093e-04, 3.995385641156838077e-04, 4.002493104179223604e-04, 4.009593623902634081e-04, 4.016687189218695088e-04, 4.023773789030549142e-04, 4.030853412254144274e-04, 4.037926047817299983e-04, 4.044991684659395535e-04, 4.052050311732647149e-04, 4.059101918000275694e-04, 4.066146492438678351e-04, 4.073184024035589801e-04, 4.080214501791320928e-04, 4.087237914718369592e-04, 4.094254251841208123e-04, 4.101263502196027450e-04, 4.108265654831985019e-04, 4.115260698810348271e-04, 4.122248623204082104e-04, 4.129229417099231233e-04, 4.136203069592969163e-04, 4.143169569795881525e-04, 4.150128906830047575e-04, 4.157081069830513629e-04, 4.164026047944167116e-04, 4.170963830330429926e-04, 4.177894406160883277e-04, 4.184817764620013102e-04, 4.191733894904071641e-04, 4.198642786222167599e-04, 4.205544427796039557e-04, 4.212438808859059582e-04, 4.219325918657566257e-04, 4.226205746450529123e-04, 4.233078281509410437e-04, 4.239943513118027483e-04, 4.246801430572307544e-04, 4.253652023181450702e-04, 4.260495280267109644e-04, 4.267331191163034046e-04, 4.274159745216054478e-04, 4.280980931785772331e-04, 4.287794740243630652e-04, 4.294601159974215186e-04, 4.301400180375059760e-04, 4.308191790855770255e-04, 4.314975980839462250e-04, 4.321752739760823555e-04, 4.328522057068402967e-04, 4.335283922222712364e-04, 4.342038324697487643e-04, 4.348785253979248525e-04, 4.355524699567153279e-04, 4.362256650972723871e-04, 4.368981097721084126e-04, 4.375698029350035987e-04, 4.382407435409791719e-04, 4.389109305464205558e-04, 4.395803629088970688e-04, 4.402490395873733973e-04, 4.409169595420335216e-04, 4.415841217343996527e-04, 4.422505251272902736e-04, 4.429161686848071835e-04, 4.435810513723056816e-04, 4.442451721565163778e-04, 4.449085300054569383e-04, 4.455711238884072574e-04, 4.462329527760230279e-04, 4.468940156401820011e-04, 4.475543114541098082e-04, 4.482138391923634266e-04, 4.488725978308096042e-04, 4.495305863466104394e-04, 4.501878037182035944e-04, 4.508442489254134260e-04, 4.514999209493714052e-04, 4.521548187724823984e-04, 4.528089413785158488e-04, 4.534622877525811111e-04, 4.541148568810391426e-04, 4.547666477516178088e-04, 4.554176593533877594e-04, 4.560678906767539720e-04, 4.567173407134328205e-04, 4.573660084564276813e-04, 4.580138929001527489e-04, 4.586609930403440769e-04, 4.593073078740254802e-04, 4.599528363996227011e-04, 4.605975776168549896e-04, 4.612415305267988539e-04, 4.618846941318608475e-04, 4.625270674358312366e-04, 4.631686494437939577e-04, 4.638094391622508126e-04, 4.644494355989511945e-04, 4.650886377630963518e-04, 4.657270446651682466e-04, 4.663646553170472994e-04, 4.670014687319685867e-04, 4.676374839245070426e-04, 4.682726999105570206e-04, 4.689071157074416359e-04, 4.695407303338323718e-04, 4.701735428097225710e-04, 4.708055521565389454e-04, 4.714367573969736338e-04, 4.720671575551893323e-04, 4.726967516566435998e-04, 4.733255387282230280e-04, 4.739535177981437654e-04, 4.745806878960075713e-04, 4.752070480527797514e-04, 4.758325973008435314e-04, 4.764573346739022614e-04, 4.770812592070829573e-04, 4.777043699369078406e-04, 4.783266659012093370e-04, 4.789481461392466281e-04, 4.795688096916787086e-04, 4.801886556005525693e-04, 4.808076829092872585e-04, 4.814258906626505720e-04, 4.820432779068729487e-04, 4.826598436895618727e-04, 4.832755870596763944e-04, 4.838905070676151137e-04, 4.845046027651869064e-04, 4.851178732055285792e-04, 4.857303174432194698e-04, 4.863419345342566728e-04, 4.869527235360355784e-04, 4.875626835073461319e-04, 4.881718135083391689e-04, 4.887801126006582550e-04, 4.893875798472852945e-04, 4.899942143126554024e-04, 4.906000150626134816e-04, 4.912049811644034897e-04, 4.918091116866437186e-04, 4.924124056994367334e-04, 4.930148622742885987e-04, 4.936164804840813400e-04, 4.942172594031878693e-04, 4.948171981073063190e-04, 4.954162956736530296e-04, 4.960145511808008957e-04, 4.966119637087876770e-04, 4.972085323390936645e-04, 4.978042561545592808e-04, 4.983991342394972950e-04, 4.989931656796633324e-04, 4.995863495622436231e-04, 5.001786849758254033e-04, 5.007701710104899397e-04, 5.013608067576680056e-04, 5.019505913103195329e-04, 5.025395237627771619e-04, 5.031276032108701656e-04, 5.037148287518411829e-04, 5.043011994843385210e-04, 5.048867145085204552e-04, 5.054713729259805279e-04, 5.060551738397207682e-04, 5.066381163542297552e-04, 5.072201995754615838e-04, 5.078014226107555257e-04, 5.083817845689467263e-04, 5.089612845603345460e-04, 5.095399216966755131e-04, 5.101176950911729150e-04, 5.106946038584464411e-04, 5.112706471146443972e-04, 5.118458239773595719e-04, 5.124201335656123225e-04, 5.129935749999372033e-04, 5.135661474022992648e-04, 5.141378498961357959e-04, 5.147086816063456980e-04, 5.152786416593345886e-04, 5.158477291829266552e-04, 5.164159433064843515e-04, 5.169832831607530307e-04, 5.175497478780390808e-04, 5.181153365920685436e-04, 5.186800484380749360e-04, 5.192438825527798422e-04, 5.198068380743636405e-04, 5.203689141424530347e-04, 5.209301098982250296e-04, 5.214904244843206280e-04, 5.220498570448344226e-04, 5.226084067254079457e-04, 5.231660726730824346e-04, 5.237228540364789178e-04, 5.242787499656423062e-04, 5.248337596121501391e-04, 5.253878821290852621e-04, 5.259411166709597159e-04, 5.264934623938206633e-04, 5.270449184552268617e-04, 5.275954840142302316e-04, 5.281451582313502697e-04, 5.286939402686660974e-04, 5.292418292896844054e-04, 5.297888244594538363e-04, 5.303349249445403740e-04, 5.308801299130136821e-04, 5.314244385344408161e-04, 5.319678499798559737e-04, 5.325103634218698910e-04, 5.330519780345877685e-04, 5.335926929935937667e-04, 5.341325074760188774e-04, 5.346714206605228175e-04, 5.352094317272186770e-04, 5.357465398577749421e-04, 5.362827442353882822e-04, 5.368180440447780201e-04, 5.373524384721694355e-04, 5.378859267052747912e-04, 5.384185079333905864e-04, 5.389501813473236138e-04, 5.394809461393732875e-04, 5.400108015034103554e-04, 5.405397466348006805e-04, 5.410677807304507770e-04, 5.415949029887847169e-04, 5.421211126097961715e-04, 5.426464087949611336e-04, 5.431707907473503488e-04, 5.436942576714915137e-04, 5.442168087735239912e-04, 5.447384432610683815e-04, 5.452591603433243166e-04, 5.457789592310376093e-04, 5.462978391364407306e-04, 5.468157992733386780e-04, 5.473328388571001941e-04, 5.478489571046295768e-04, 5.483641532343482483e-04, 5.488784264662807319e-04, 5.493917760219196693e-04, 5.499042011243882337e-04, 5.504157009983022195e-04, 5.509262748698753182e-04, 5.514359219668397549e-04, 5.519446415184939931e-04, 5.524524327556796415e-04, 5.529592949108302425e-04, 5.534652272178916923e-04, 5.539702289124006284e-04, 5.544742992314679502e-04, 5.549774374137058514e-04, 5.554796426993242062e-04, 5.559809143301070421e-04, 5.564812515494074437e-04, 5.569806536021255439e-04, 5.574791197346988742e-04, 5.579766491951905103e-04, 5.584732412332153468e-04, 5.589688950999316397e-04, 5.594636100480989034e-04, 5.599573853320596959e-04, 5.604502202076770603e-04, 5.609421139324190925e-04, 5.614330657653432205e-04, 5.619230749670837358e-04, 5.624121407998394339e-04, 5.629002625273565917e-04, 5.633874394150276306e-04, 5.638736707297716368e-04, 5.643589557401218568e-04, 5.648432937162085670e-04, 5.653266839296871909e-04, 5.658091256538375037e-04, 5.662906181635311061e-04, 5.667711607352325090e-04, 5.672507526469583667e-04, 5.677293931783718032e-04, 5.682070816106503559e-04, 5.686838172266402581e-04, 5.691595993107234066e-04, 5.696344271489139650e-04, 5.701083000288288726e-04, 5.705812172396278886e-04, 5.710531780720985934e-04, 5.715241818186408843e-04, 5.719942277732554831e-04, 5.724633152315037124e-04, 5.729314434906114702e-04, 5.733986118493255733e-04, 5.738648196080754120e-04, 5.743300660688411110e-04, 5.747943505352481799e-04, 5.752576723125108100e-04, 5.757200307074165869e-04, 5.761814250284202736e-04, 5.766418545855675915e-04, 5.771013186904906667e-04, 5.775598166564618061e-04, 5.780173477983772349e-04, 5.784739114326938872e-04, 5.789295068775171180e-04, 5.793841334525778267e-04, 5.798377904792229162e-04, 5.802904772804079198e-04, 5.807421931806746674e-04, 5.811929375062393219e-04, 5.816427095849266773e-04, 5.820915087461523774e-04, 5.825393343210082423e-04, 5.829861856421347669e-04, 5.834320620438755104e-04, 5.838769628621402709e-04, 5.843208874345128543e-04, 5.847638351001630376e-04, 5.852058051999387261e-04, 5.856467970762450643e-04, 5.860868100731948154e-04, 5.865258435364765219e-04, 5.869638968134422178e-04, 5.874009692530910570e-04, 5.878370602060003581e-04, 5.882721690244207971e-04, 5.887062950622450747e-04, 5.891394376750026026e-04, 5.895715962198333753e-04, 5.900027700555662488e-04, 5.904329585425989197e-04, 5.908621610430427745e-04, 5.912903769206005918e-04, 5.917176055406451465e-04, 5.921438462702080432e-04, 5.925690984779135792e-04, 5.929933615340587591e-04, 5.934166348106148124e-04, 5.938389176811534678e-04, 5.942602095209318465e-04, 5.946805097068563577e-04, 5.950998176174455111e-04, 5.955181326328925833e-04, 5.959354541350556436e-04, 5.963517815074412904e-04, 5.967671141352060612e-04, 5.971814514051293271e-04, 5.975947927056965599e-04, 5.980071374270375323e-04, 5.984184849609124404e-04, 5.988288347007689324e-04, 5.992381860417253037e-04, 5.996465383805085888e-04, 6.000538911155373946e-04, 6.004602436469032517e-04, 6.008655953763581466e-04, 6.012699457073098592e-04, 6.016732940448033147e-04, 6.020756397955940925e-04, 6.024769823680949750e-04, 6.028773211723592509e-04, 6.032766556201543326e-04, 6.036749851248600579e-04, 6.040723091015549927e-04, 6.044686269669960477e-04, 6.048639381396146838e-04, 6.052582420394842780e-04, 6.056515380883969926e-04, 6.060438257097551388e-04, 6.064351043287043164e-04, 6.068253733720136095e-04, 6.072146322681585282e-04, 6.076028804473019261e-04, 6.079901173412393571e-04, 6.083763423834719335e-04, 6.087615550091883283e-04, 6.091457546552589203e-04, 6.095289407602104241e-04, 6.099111127642917012e-04, 6.102922701093793255e-04, 6.106724122390890398e-04, 6.110515385986792615e-04, 6.114296486351302297e-04, 6.118067417970825305e-04, 6.121828175348692979e-04, 6.125578753005074322e-04, 6.129319145477214520e-04, 6.133049347319004512e-04, 6.136769353101379984e-04, 6.140479157412377740e-04, 6.144178754856471089e-04, 6.147868140055285421e-04, 6.151547307647530979e-04, 6.155216252288827228e-04, 6.158874968651643217e-04, 6.162523451425166391e-04, 6.166161695315971547e-04, 6.169789695047486321e-04, 6.173407445359897945e-04, 6.177014941010818948e-04, 6.180612176774209461e-04, 6.184199147441645731e-04, 6.187775847821306392e-04, 6.191342272738699967e-04, 6.194898417036042533e-04, 6.198444275572966792e-04, 6.201979843225592908e-04, 6.205505114887643068e-04, 6.209020085469475455e-04, 6.212524749898782478e-04, 6.216019103120388025e-04, 6.219503140095760654e-04, 6.222976855803729170e-04, 6.226440245240262529e-04, 6.229893303418444902e-04, 6.233336025368204627e-04, 6.236768406136976653e-04, 6.240190440788782053e-04, 6.243602124405288377e-04, 6.247003452084914097e-04, 6.250394418943435761e-04, 6.253775020113874154e-04, 6.257145250745981468e-04, 6.260505106006921099e-04, 6.263854581081086583e-04, 6.267193671170067986e-04, 6.270522371492361340e-04, 6.273840677284053856e-04, 6.277148583797965238e-04, 6.280446086304325307e-04, 6.283733180090655826e-04, 6.287009860461689184e-04, 6.290276122739310929e-04, 6.293531962262367873e-04, 6.296777374387343539e-04, 6.300012354487884375e-04, 6.303236897954628444e-04, 6.306451000195866788e-04, 6.309654656636620772e-04, 6.312847862719657985e-04, 6.316030613904701852e-04, 6.319202905668909768e-04, 6.322364733506774439e-04, 6.325516092929964499e-04, 6.328656979467246453e-04, 6.331787388665049542e-04, 6.334907316087012548e-04, 6.338016757313899227e-04, 6.341115707944134988e-04, 6.344204163592949289e-04, 6.347282119893471767e-04, 6.350349572495721760e-04, 6.353406517067408448e-04, 6.356452949293269492e-04, 6.359488864875767087e-04, 6.362514259534245544e-04, 6.365529129005870201e-04, 6.368533469044861985e-04, 6.371527275423003725e-04, 6.374510543929555592e-04, 6.377483270370788888e-04, 6.380445450570609465e-04, 6.383397080370356060e-04, 6.386338155628841495e-04, 6.389268672221995980e-04, 6.392188626043574006e-04, 6.395098013004244701e-04, 6.397996829032609901e-04, 6.400885070074325937e-04, 6.403762732092721640e-04, 6.406629811068641125e-04, 6.409486303000023122e-04, 6.412332203902486446e-04, 6.415167509809223748e-04, 6.417992216770627457e-04, 6.420806320854804787e-04, 6.423609818147342455e-04, 6.426402704751019374e-04, 6.429184976786301046e-04, 6.431956630391186692e-04, 6.434717661721199491e-04, 6.437468066949280331e-04, 6.440207842265710829e-04, 6.442936983878584959e-04, 6.445655488013482710e-04, 6.448363350913265167e-04, 6.451060568838668657e-04, 6.453747138067542554e-04, 6.456423054895687368e-04, 6.459088315636130496e-04, 6.461742916619666157e-04, 6.464386854194596266e-04, 6.467020124726785731e-04, 6.469642724599415249e-04, 6.472254650213544016e-04, 6.474855897987802887e-04, 6.477446464358153693e-04, 6.480026345778461695e-04, 6.482595538719841807e-04, 6.485154039671151916e-04, 6.487701845138915896e-04, 6.490238951647256394e-04, 6.492765355737743034e-04, 6.495281053969819600e-04, 6.497786042920137249e-04, 6.500280319183413197e-04, 6.502763879371659854e-04, 6.505236720114679220e-04, 6.507698838059998913e-04, 6.510150229872499212e-04, 6.512590892234838055e-04, 6.515020821847389244e-04, 6.517440015428184984e-04, 6.519848469712749995e-04, 6.522246181454500503e-04, 6.524633147424188043e-04, 6.527009364410591178e-04, 6.529374829219857391e-04, 6.531729538676057109e-04, 6.534073489620786891e-04, 6.536406678913345061e-04, 6.538729103430690514e-04, 6.541040760067620523e-04, 6.543341645736406448e-04, 6.545631757367297889e-04, 6.547911091907892764e-04, 6.550179646323818191e-04, 6.552437417598177541e-04, 6.554684402731963521e-04, 6.556920598743842419e-04, 6.559146002670166028e-04, 6.561360611564876237e-04, 6.563564422499886669e-04, 6.565757432564785613e-04, 6.567939638866765548e-04, 6.570111038530980930e-04, 6.572271628699983322e-04, 6.574421406534458655e-04, 6.576560369212540924e-04, 6.578688513930392237e-04, 6.580805837901623854e-04, 6.582912338357934778e-04, 6.585008012548447141e-04, 6.587092857740336127e-04, 6.589166871218346414e-04, 6.591230050285157554e-04, 6.593282392261222424e-04, 6.595323894484570989e-04, 6.597354554311160493e-04, 6.599374369114755119e-04, 6.601383336286945503e-04, 6.603381453236962248e-04, 6.605368717392034799e-04, 6.607345126196915476e-04, 6.609310677114451932e-04, 6.611265367625077582e-04, 6.613209195227180226e-04, 6.615142157436976287e-04, 6.617064251788295050e-04, 6.618975475832906095e-04, 6.620875827140459665e-04, 6.622765303298418357e-04, 6.624643901912017014e-04, 6.626511620604205255e-04, 6.628368457016006353e-04, 6.630214408806086798e-04, 6.632049473651051210e-04, 6.633873649245371857e-04, 6.635686933301287831e-04, 6.637489323548793115e-04, 6.639280817735916315e-04, 6.641061413628472371e-04, 6.642831109010072319e-04, 6.644589901682302182e-04, 6.646337789464396625e-04, 6.648074770193685649e-04, 6.649800841725175002e-04, 6.651516001931860600e-04, 6.653220248704577820e-04, 6.654913579952039448e-04, 6.656595993600668715e-04, 6.658267487594980933e-04, 6.659928059897333042e-04, 6.661577708487822786e-04, 6.663216431364624810e-04, 6.664844226543548307e-04, 6.666461092058537921e-04, 6.668067025961229221e-04, 6.669662026321318419e-04, 6.671246091226215418e-04, 6.672819218781436299e-04, 6.674381407110123021e-04, 6.675932654353560576e-04, 6.677472958670771508e-04, 6.679002318238751179e-04, 6.680520731252492708e-04, 6.682028195924650865e-04, 6.683524710485925883e-04, 6.685010273184970216e-04, 6.686484882288313723e-04, 6.687948536080328982e-04, 6.689401232863449211e-04, 6.690842970957793130e-04, 6.692273748701610576e-04, 6.693693564450939890e-04, 6.695102416579873546e-04, 6.696500303480253493e-04, 6.697887223561960635e-04, 6.699263175252733772e-04, 6.700628156998331142e-04, 6.701982167262290815e-04, 6.703325204526292816e-04, 6.704657267289676655e-04, 6.705978354069951986e-04, 6.707288463402395285e-04, 6.708587593840320898e-04, 6.709875743954967203e-04, 6.711152912335486848e-04, 6.712419097588866526e-04, 6.713674298340193683e-04, 6.714918513232448352e-04, 6.716151740926500991e-04, 6.717373980101265345e-04, 6.718585229453404636e-04, 6.719785487697735966e-04, 6.720974753566888796e-04, 6.722153025811481667e-04, 6.723320303200139552e-04, 6.724476584519360495e-04, 6.725621868573535131e-04, 6.726756154185123404e-04, 6.727879440194446409e-04, 6.728991725459843596e-04, 6.730093008857638073e-04, 6.731183289281926279e-04, 6.732262565644910827e-04, 6.733330836876704265e-04, 6.734388101925429908e-04, 6.735434359757041861e-04, 6.736469609355612330e-04, 6.737493849722953239e-04, 6.738507079879047738e-04, 6.739509298861688083e-04, 6.740500505726716328e-04, 6.741480699547923493e-04, 6.742449879416970420e-04, 6.743408044443523295e-04, 6.744355193755247144e-04, 6.745291326497778730e-04, 6.746216441834648487e-04, 6.747130538947302206e-04, 6.748033617035264749e-04, 6.748925675315978505e-04, 6.749806713024819648e-04, 6.750676729415159942e-04, 6.751535723758317949e-04, 6.752383695343476631e-04, 6.753220643477946808e-04, 6.754046567486940563e-04, 6.754861466713535465e-04, 6.755665340518929350e-04, 6.756458188282112899e-04, 6.757240009400168872e-04, 6.758010803288048767e-04, 6.758770569378717017e-04, 6.759519307123131471e-04, 6.760257015990155582e-04, 6.760983695466526956e-04, 6.761699345057100219e-04, 6.762403964284623668e-04, 6.763097552689768550e-04, 6.763780109831259157e-04, 6.764451635285637565e-04, 6.765112128647526001e-04, 6.765761589529414345e-04, 6.766400017561847698e-04, 6.767027412393210621e-04, 6.767643773689962410e-04, 6.768249101136375803e-04, 6.768843394434816705e-04, 6.769426653305514333e-04, 6.769998877486684821e-04, 6.770560066734504110e-04, 6.771110220823083016e-04, 6.771649339544444455e-04, 6.772177422708614523e-04, 6.772694470143599725e-04, 6.773200481695292648e-04, 6.773695457227496899e-04, 6.774179396622025768e-04, 6.774652299778679459e-04, 6.775114166615092215e-04, 6.775564997066917724e-04, 6.776004791087769479e-04, 6.776433548649100436e-04, 6.776851269740380825e-04, 6.777257954369022251e-04, 6.777653602560351678e-04, 6.778038214357663465e-04, 6.778411789822103364e-04, 6.778774329032854996e-04, 6.779125832086965297e-04, 6.779466299099457275e-04, 6.779795730203247613e-04, 6.780114125549229062e-04, 6.780421485306155523e-04, 6.780717809660756967e-04, 6.781003098817678723e-04, 6.781277352999479308e-04, 6.781540572446679216e-04, 6.781792757417622140e-04, 6.782033908188672298e-04, 6.782264025054066982e-04, 6.782483108325974017e-04, 6.782691158334476587e-04, 6.782888175427538536e-04, 6.783074159971047741e-04, 6.783249112348817191e-04, 6.783413032962587160e-04, 6.783565922231944972e-04, 6.783707780594435592e-04, 6.783838608505473808e-04, 6.783958406438365908e-04, 6.784067174884347634e-04, 6.784164914352557073e-04, 6.784251625369999966e-04, 6.784327308481568133e-04, 6.784391964250050325e-04, 6.784445593256150644e-04, 6.784488196098437595e-04, 6.784519773393364681e-04, 6.784540325775266067e-04, 6.784549853896358748e-04, 6.784548358426750140e-04, 6.784535840054379532e-04, 6.784512299485130843e-04, 6.784477737442691676e-04, 6.784432154668666075e-04, 6.784375551922484536e-04, 6.784307929981479900e-04, 6.784229289640812547e-04, 6.784139631713530022e-04, 6.784038957030510660e-04, 6.783927266440532974e-04, 6.783804560810163982e-04, 6.783670841023863290e-04, 6.783526107983944061e-04, 6.783370362610520975e-04, 6.783203605841593709e-04, 6.783025838632969961e-04, 6.782837061958312073e-04, 6.782637276809105583e-04, 6.782426484194710187e-04, 6.782204685142218794e-04, 6.781971880696648341e-04, 6.781728071920785838e-04, 6.781473259895253423e-04, 6.781207445718475833e-04, 6.780930630506715098e-04, 6.780642815394034763e-04, 6.780344001532294471e-04, 6.780034190091170556e-04, 6.779713382258161468e-04, 6.779381579238498868e-04, 6.779038782255292911e-04, 6.778684992549409731e-04, 6.778320211379494208e-04, 6.777944440021963467e-04, 6.777557679771091439e-04, 6.777159931938852742e-04, 6.776751197855036520e-04, 6.776331478867217168e-04, 6.775900776340695788e-04, 6.775459091658584754e-04, 6.775006426221719894e-04, 6.774542781448771077e-04, 6.774068158776082836e-04, 6.773582559657781704e-04, 6.773085985565746939e-04, 6.772578437989636548e-04, 6.772059918436772359e-04, 6.771530428432293979e-04, 6.770989969519051457e-04, 6.770438543257626968e-04, 6.769876151226306626e-04, 6.769302795021124933e-04, 6.768718476255874538e-04, 6.768123196561996735e-04, 6.767516957588667111e-04, 6.766899761002808560e-04, 6.766271608488999122e-04, 6.765632501749543545e-04, 6.764982442504480871e-04, 6.764321432491487941e-04, 6.763649473465930357e-04, 6.762966567200936205e-04, 6.762272715487196561e-04, 6.761567920133226784e-04, 6.760852182965090048e-04, 6.760125505826584903e-04, 6.759387890579156375e-04, 6.758639339101919817e-04, 6.757879853291634889e-04, 6.757109435062759765e-04, 6.756328086347342717e-04, 6.755535809095124028e-04, 6.754732605273443833e-04, 6.753918476867293080e-04, 6.753093425879348223e-04, 6.752257454329853043e-04, 6.751410564256703217e-04, 6.750552757715369339e-04, 6.749684036778983657e-04, 6.748804403538306461e-04, 6.747913860101658863e-04, 6.747012408594970506e-04, 6.746100051161809915e-04, 6.745176789963274995e-04, 6.744242627178072182e-04, 6.743297565002522942e-04, 6.742341605650539922e-04, 6.741374751353551055e-04, 6.740397004360552686e-04, 6.739408366938139930e-04, 6.738408841370520765e-04, 6.737398429959363163e-04, 6.736377135023888327e-04, 6.735344958900947674e-04, 6.734301903944839600e-04, 6.733247972527414650e-04, 6.732183167038155750e-04, 6.731107489883974377e-04, 6.730020943489266935e-04, 6.728923530296092564e-04, 6.727815252763800179e-04, 6.726696113369504430e-04, 6.725566114607628172e-04, 6.724425258990148575e-04, 6.723273549046574361e-04, 6.722110987323790757e-04, 6.720937576386249238e-04, 6.719753318815908970e-04, 6.718558217212127317e-04, 6.717352274191705367e-04, 6.716135492388992023e-04, 6.714907874455671496e-04, 6.713669423061036524e-04, 6.712420140891658775e-04, 6.711160030651647972e-04, 6.709889095062529377e-04, 6.708607336863188497e-04, 6.707314758809979505e-04, 6.706011363676734997e-04, 6.704697154254605530e-04, 6.703372133352153948e-04, 6.702036303795391161e-04, 6.700689668427635198e-04, 6.699332230109706363e-04, 6.697963991719762438e-04, 6.696584956153259650e-04, 6.695195126323090365e-04, 6.693794505159486596e-04, 6.692383095610146852e-04, 6.690960900639940151e-04, 6.689527923231194419e-04, 6.688084166383555544e-04, 6.686629633113989543e-04, 6.685164326456754375e-04, 6.683688249463549556e-04, 6.682201405203345946e-04, 6.680703796762314187e-04, 6.679195427244015524e-04, 6.677676299769296636e-04, 6.676146417476386133e-04, 6.674605783520653861e-04, 6.673054401074773531e-04, 6.671492273328792112e-04, 6.669919403489907566e-04, 6.668335794782631479e-04, 6.666741450448734852e-04, 6.665136373747271954e-04, 6.663520567954404677e-04, 6.661894036363716961e-04, 6.660256782285801707e-04, 6.658608809048711811e-04, 6.656950119997523223e-04, 6.655280718494654794e-04, 6.653600607919631918e-04, 6.651909791669175431e-04, 6.650208273157227640e-04, 6.648496055815048813e-04, 6.646773143090835539e-04, 6.645039538450051410e-04, 6.643295245375397751e-04, 6.641540267366566417e-04, 6.639774607940636614e-04, 6.637998270631587008e-04, 6.636211258990708803e-04, 6.634413576586317349e-04, 6.632605227003798756e-04, 6.630786213845849507e-04, 6.628956540732168544e-04, 6.627116211299494131e-04, 6.625265229201761060e-04, 6.623403598109904415e-04, 6.621531321711930044e-04, 6.619648403713050081e-04, 6.617754847835487795e-04, 6.615850657818441805e-04, 6.613935837418167402e-04, 6.612010390408028584e-04, 6.610074320578520832e-04, 6.608127631736997881e-04, 6.606170327707830024e-04, 6.604202412332573239e-04, 6.602223889469650440e-04, 6.600234762994425198e-04, 6.598235036799497731e-04, 6.596224714794303749e-04, 6.594203800905204440e-04, 6.592172299075581884e-04, 6.590130213265771829e-04, 6.588077547453225239e-04, 6.586014305632094130e-04, 6.583940491813577425e-04, 6.581856110025870003e-04, 6.579761164313959951e-04, 6.577655658739821548e-04, 6.575539597382478157e-04, 6.573412984337642260e-04, 6.571275823717953992e-04, 6.569128119653081964e-04, 6.566969876289365481e-04, 6.564801097790277495e-04, 6.562621788335902019e-04, 6.560431952123378652e-04, 6.558231593366572977e-04, 6.556020716296098250e-04, 6.553799325159690532e-04, 6.551567424221751154e-04, 6.549325017763422616e-04, 6.547072110082711094e-04, 6.544808705494509216e-04, 6.542534808330309828e-04, 6.540250422938690637e-04, 6.537955553684677776e-04, 6.535650204950337787e-04, 6.533334381134278885e-04, 6.531008086651966457e-04, 6.528671325935666691e-04, 6.526324103434311043e-04, 6.523966423613485402e-04, 6.521598290955674029e-04, 6.519219709959919121e-04, 6.516830685141919476e-04, 6.514431221034313463e-04, 6.512021322186265946e-04, 6.509600993163596220e-04, 6.507170238548754156e-04, 6.504729062940941631e-04, 6.502277470956151564e-04, 6.499815467226735316e-04, 6.497343056401753969e-04, 6.494860243147040132e-04, 6.492367032144919295e-04, 6.489863428094238022e-04, 6.487349435710721736e-04, 6.484825059726506344e-04, 6.482290304890228226e-04, 6.479745175967311548e-04, 6.477189677739460857e-04, 6.474623815005337620e-04, 6.472047592579743824e-04, 6.469461015294307189e-04, 6.466864087997008454e-04, 6.464256815552368949e-04, 6.461639202841483118e-04, 6.459011254762068392e-04, 6.456372976228112823e-04, 6.453724372170129876e-04, 6.451065447535228896e-04, 6.448396207286763828e-04, 6.445716656404931700e-04, 6.443026799885947543e-04, 6.440326642742798995e-04, 6.437616190004677094e-04, 6.434895446717203964e-04, 6.432164417942625801e-04, 6.429423108759470262e-04, 6.426671524262590925e-04, 6.423909669563207395e-04, 6.421137549789123237e-04, 6.418355170084160018e-04, 6.415562535608917332e-04, 6.412759651540096261e-04, 6.409946523070710793e-04, 6.407123155410116011e-04, 6.404289553784023271e-04, 6.401445723434610793e-04, 6.398591669620100819e-04, 6.395727397615061025e-04, 6.392852912710469569e-04, 6.389968220213454887e-04, 6.387073325447285930e-04, 6.384168233751861144e-04, 6.381252950483051441e-04, 6.378327481012971249e-04, 6.375391830729928641e-04, 6.372446005038474122e-04, 6.369490009359613132e-04, 6.366523849130179382e-04, 6.363547529803240338e-04, 6.360561056848290217e-04, 6.357564435750684027e-04, 6.354557672012110282e-04, 6.351540771150401268e-04, 6.348513738699491839e-04, 6.345476580209318592e-04, 6.342429301246178732e-04, 6.339371907392127260e-04, 6.336304404245774943e-04, 6.333226797421362408e-04, 6.330139092549507155e-04, 6.327041295276761203e-04, 6.323933411265568807e-04, 6.320815446194830243e-04, 6.317687405759201411e-04, 6.314549295669385489e-04, 6.311401121651983312e-04, 6.308242889449894525e-04, 6.305074604821629116e-04, 6.301896273542158516e-04, 6.298707901401963665e-04, 6.295509494207784202e-04, 6.292301057782072023e-04, 6.289082597963416288e-04, 6.285854120606260446e-04, 6.282615631581041013e-04, 6.279367136773887246e-04, 6.276108642087091689e-04, 6.272840153438648302e-04, 6.269561676762347869e-04, 6.266273218008180240e-04, 6.262974783141795482e-04, 6.259666378144629643e-04, 6.256348009013909094e-04, 6.253019681762780630e-04, 6.249681402420436153e-04, 6.246333177031452395e-04, 6.242975011656318922e-04, 6.239606912371515116e-04, 6.236228885269048299e-04, 6.232840936456612033e-04, 6.229443072058031723e-04, 6.226035298212631445e-04, 6.222617621075375973e-04, 6.219190046816983541e-04, 6.215752581623916083e-04, 6.212305231698536439e-04, 6.208848003258474104e-04, 6.205380902537397173e-04, 6.201903935784377001e-04, 6.198417109264077940e-04, 6.194920429257182344e-04, 6.191413902059772576e-04, 6.187897533983430752e-04, 6.184371331355369931e-04, 6.180835300518655291e-04, 6.177289447831485307e-04, 6.173733779668177284e-04, 6.170168302418123276e-04, 6.166593022486578299e-04, 6.163007946294133408e-04, 6.159413080276818697e-04, 6.155808430886547822e-04, 6.152194004590541207e-04, 6.148569807871394344e-04, 6.144935847227166702e-04, 6.141292129171660365e-04, 6.137638660233715304e-04, 6.133975446958154793e-04, 6.130302495904716396e-04, 6.126619813648910649e-04, 6.122927406781354274e-04, 6.119225281908248319e-04, 6.115513445651319605e-04, 6.111791904647414153e-04, 6.108060665548699928e-04, 6.104319735022983428e-04, 6.100569119753148067e-04, 6.096808826437342824e-04, 6.093038861789408338e-04, 6.089259232538274088e-04, 6.085469945428046215e-04, 6.081671007218135460e-04, 6.077862424683289685e-04, 6.074044204613730487e-04, 6.070216353814550381e-04, 6.066378879106142140e-04, 6.062531787324341916e-04, 6.058675085319801482e-04, 6.054808779958945585e-04, 6.050932878122790163e-04, 6.047047386707911625e-04, 6.043152312625778982e-04, 6.039247662803256915e-04, 6.035333444181986695e-04, 6.031409663719291495e-04, 6.027476328387015208e-04, 6.023533445172536173e-04, 6.019581021078015829e-04, 6.015619063120658918e-04, 6.011647578333117895e-04, 6.007666573762859754e-04, 6.003676056472267942e-04, 5.999676033538787643e-04, 5.995666512055091660e-04, 5.991647499128452663e-04, 5.987619001881699455e-04, 5.983581027452072052e-04, 5.979533582992141091e-04, 5.975476675669212602e-04, 5.971410312665434254e-04, 5.967334501178273498e-04, 5.963249248419914741e-04, 5.959154561617179121e-04, 5.955050448012188039e-04, 5.950936914861636737e-04, 5.946813969437005727e-04, 5.942681619025054094e-04, 5.938539870927101762e-04, 5.934388732459240905e-04, 5.930228210952279578e-04, 5.926058313752017095e-04, 5.921879048219223438e-04, 5.917690421729040768e-04, 5.913492441671411694e-04, 5.909285115451339476e-04, 5.905068450488228831e-04, 5.900842454216151563e-04, 5.896607134084346381e-04, 5.892362497556435019e-04, 5.888108552110637994e-04, 5.883845305239841826e-04, 5.879572764451671679e-04, 5.875290937268698443e-04, 5.870999831227598480e-04, 5.866699453879808479e-04, 5.862389812791610026e-04, 5.858070915543398850e-04, 5.853742769730746259e-04, 5.849405382963447208e-04, 5.845058762865776173e-04, 5.840702917076560875e-04, 5.836337853249389364e-04, 5.831963579051910708e-04, 5.827580102166891006e-04, 5.823187430290989322e-04, 5.818785571135731303e-04, 5.814374532426829379e-04, 5.809954321904344313e-04, 5.805524947323255488e-04, 5.801086416452633666e-04, 5.796638737075876253e-04, 5.792181916990768020e-04, 5.787715964009734803e-04, 5.783240885959068300e-04, 5.778756690680151220e-04, 5.774263386027910123e-04, 5.769760979872169595e-04, 5.765249480096594058e-04, 5.760728894599505268e-04, 5.756199231293313099e-04, 5.751660498104882013e-04, 5.747112702974945583e-04, 5.742555853858919649e-04, 5.737989958726122776e-04, 5.733415025559989841e-04, 5.728831062358634733e-04, 5.724238077134059972e-04, 5.719636077912328012e-04, 5.715025072733663156e-04, 5.710405069652497089e-04, 5.705776076737722590e-04, 5.701138102071801224e-04, 5.696491153751438805e-04, 5.691835239887682975e-04, 5.687170368605163175e-04, 5.682496548043243154e-04, 5.677813786354658126e-04, 5.673122091706651014e-04, 5.668421472280163638e-04, 5.663711936270137033e-04, 5.658993491885619875e-04, 5.654266147349896413e-04, 5.649529910899619110e-04, 5.644784790785906939e-04, 5.640030795273443323e-04, 5.635267932640748278e-04, 5.630496211180768210e-04, 5.625715639200000971e-04, 5.620926225018723537e-04, 5.616127976971051639e-04, 5.611320903405250934e-04, 5.606505012682901079e-04, 5.601680313180128472e-04, 5.596846813286095960e-04, 5.592004521404306044e-04, 5.587153445951690157e-04, 5.582293595358813572e-04, 5.577424978070546525e-04, 5.572547602545123132e-04, 5.567661477254416767e-04, 5.562766610683967175e-04, 5.557863011333321994e-04, 5.552950687715153127e-04, 5.548029648356552369e-04, 5.543099901797453885e-04, 5.538161456591990557e-04, 5.533214321307461814e-04, 5.528258504524948382e-04, 5.523294014839462982e-04, 5.518320860859024426e-04, 5.513339051205288621e-04, 5.508348594513790344e-04, 5.503349499433044445e-04, 5.498341774625805679e-04, 5.493325428767563846e-04, 5.488300470547814464e-04, 5.483266908669208765e-04, 5.478224751847818232e-04, 5.473174008813252783e-04, 5.468114688308875438e-04, 5.463046799090862321e-04, 5.457970349928934492e-04, 5.452885349606457696e-04, 5.447791806919631379e-04, 5.442689730678750698e-04, 5.437579129706670211e-04, 5.432460012840068051e-04, 5.427332388928512432e-04, 5.422196266835279136e-04, 5.417051655436333447e-04, 5.411898563621681067e-04, 5.406737000293745064e-04, 5.401566974368789435e-04, 5.396388494775848990e-04, 5.391201570457126177e-04, 5.386006210368480054e-04, 5.380802423478602296e-04, 5.375590218769237287e-04, 5.370369605235225489e-04, 5.365140591884867737e-04, 5.359903187738965713e-04, 5.354657401832225994e-04, 5.349403243211582788e-04, 5.344140720937613906e-04, 5.338869844083583404e-04, 5.333590621735620485e-04, 5.328303062993454582e-04, 5.323007176969452589e-04, 5.317702972788722945e-04, 5.312390459589756394e-04, 5.307069646523655121e-04, 5.301740542754344171e-04, 5.296403157459189442e-04, 5.291057499828107557e-04, 5.285703579063817398e-04, 5.280341404381837939e-04, 5.274970985010656293e-04, 5.269592330191952148e-04, 5.264205449179641498e-04, 5.258810351240510899e-04, 5.253407045654521048e-04, 5.247995541713764865e-04, 5.242575848723938755e-04, 5.237147976002610051e-04, 5.231711932880680690e-04, 5.226267728701400588e-04, 5.220815372820664709e-04, 5.215354874607199551e-04, 5.209886243442684575e-04, 5.204409488720883759e-04, 5.198924619848290700e-04, 5.193431646244327021e-04, 5.187930577340445736e-04, 5.182421422581354230e-04, 5.176904191423973428e-04, 5.171378893337625357e-04, 5.165845537804196865e-04, 5.160304134318359709e-04, 5.154754692386753073e-04, 5.149197221529283521e-04, 5.143631731277500865e-04, 5.138058231175979436e-04, 5.132476730781337969e-04, 5.126887239662523662e-04, 5.121289767401449684e-04, 5.115684323592054094e-04, 5.110070917840515590e-04, 5.104449559765321821e-04, 5.098820258997699808e-04, 5.093183025180545841e-04, 5.087537867969891322e-04, 5.081884797033243929e-04, 5.076223822050913602e-04, 5.070554952715011819e-04, 5.064878198730232229e-04, 5.059193569813339982e-04, 5.053501075693430863e-04, 5.047800726111427135e-04, 5.042092530820872255e-04, 5.036376499586840173e-04, 5.030652642187415265e-04, 5.024920968411915323e-04, 5.019181488062372581e-04, 5.013434210952537329e-04, 5.007679146908192332e-04, 5.001916305767293777e-04, 4.996145697380252083e-04, 4.990367331608780476e-04, 4.984581218326763433e-04, 4.978787367420444256e-04, 4.972985788787353872e-04, 4.967176492337878595e-04, 4.961359487993466854e-04, 4.955534785688059255e-04, 4.949702395367007630e-04, 4.943862326988070341e-04, 4.938014590520175195e-04, 4.932159195945045758e-04, 4.926296153255281226e-04, 4.920425472455962129e-04, 4.914547163563558543e-04, 4.908661236606189212e-04, 4.902767701624384826e-04, 4.896866568670010323e-04, 4.890957847806550038e-04, 4.885041549109159741e-04, 4.879117682665096525e-04, 4.873186258572632977e-04, 4.867247286942597288e-04, 4.861300777896572934e-04, 4.855346741568375901e-04, 4.849385188103056679e-04, 4.843416127657104633e-04, 4.837439570399263864e-04, 4.831455526509383959e-04, 4.825464006178769097e-04, 4.819465019610210581e-04, 4.813458577018141877e-04, 4.807444688628857081e-04, 4.801423364679349736e-04, 4.795394615418695737e-04, 4.789358451107003276e-04, 4.783314882015822131e-04, 4.777263918428203298e-04, 4.771205570638980880e-04, 4.765139848953679758e-04, 4.759066763689308679e-04, 4.752986325174590114e-04, 4.746898543748899360e-04, 4.740803429763834468e-04, 4.734700993581316721e-04, 4.728591245575206633e-04, 4.722474196130207287e-04, 4.716349855642195006e-04, 4.710218234518447587e-04, 4.704079343177785242e-04, 4.697933192049538981e-04, 4.691779791574323105e-04, 4.685619152204277527e-04, 4.679451284402003086e-04, 4.673276198642104906e-04, 4.667093905409368769e-04, 4.660904415200281710e-04, 4.654707738521845356e-04, 4.648503885892641156e-04, 4.642292867841519579e-04, 4.636074694909362486e-04, 4.629849377647017724e-04, 4.623616926616953620e-04, 4.617377352392215977e-04, 4.611130665556578776e-04, 4.604876876705432686e-04, 4.598615996444649899e-04, 4.592348035390797717e-04, 4.586073004171300105e-04, 4.579790913424835585e-04, 4.573501773800191781e-04, 4.567205595957937259e-04, 4.560902390568392440e-04, 4.554592168313390346e-04, 4.548274939885056331e-04, 4.541950715986104066e-04, 4.535619507330625926e-04, 4.529281324643004447e-04, 4.522936178658024001e-04, 4.516584080121619979e-04, 4.510225039789710023e-04, 4.503859068429784548e-04, 4.497486176818942167e-04, 4.491106375745565872e-04, 4.484719676008171066e-04, 4.478326088415830568e-04, 4.471925623788249428e-04, 4.465518292956060912e-04, 4.459104106759711941e-04, 4.452683076050212275e-04, 4.446255211689456523e-04, 4.439820524549099282e-04, 4.433379025512140781e-04, 4.426930725471025737e-04, 4.420475635329246342e-04, 4.414013766000256440e-04, 4.407545128407829309e-04, 4.401069733486214874e-04, 4.394587592180364678e-04, 4.388098715444817863e-04, 4.381603114244534379e-04, 4.375100799555122128e-04, 4.368591782361712101e-04, 4.362076073660509871e-04, 4.355553684457457689e-04, 4.349024625768551072e-04, 4.342488908619938004e-04, 4.335946544048321178e-04, 4.329397543099787601e-04, 4.322841916831548191e-04, 4.316279676309883761e-04, 4.309710832611853720e-04, 4.303135396824130012e-04, 4.296553380043231850e-04, 4.289964793376463545e-04, 4.283369647940623768e-04, 4.276767954862368756e-04, 4.270159725278282244e-04, 4.263544970335034299e-04, 4.256923701189649118e-04, 4.250295929008280423e-04, 4.243661664967142790e-04, 4.237020920252719818e-04, 4.230373706060753104e-04, 4.223720033597227249e-04, 4.217059914077791972e-04, 4.210393358728034790e-04, 4.203720378782826702e-04, 4.197040985487393377e-04, 4.190355190095939306e-04, 4.183663003873419389e-04, 4.176964438093404134e-04, 4.170259504039910341e-04, 4.163548213006126614e-04, 4.156830576294890962e-04, 4.150106605218775897e-04, 4.143376311100412622e-04, 4.136639705271233890e-04, 4.129896799072404253e-04, 4.123147603855042325e-04, 4.116392130979041708e-04, 4.109630391814842040e-04, 4.102862397741306125e-04, 4.096088160147495316e-04, 4.089307690431324559e-04, 4.082521000000719782e-04, 4.075728100272251256e-04, 4.068929002672907352e-04, 4.062123718638023713e-04, 4.055312259612999545e-04, 4.048494637052099578e-04, 4.041670862418767396e-04, 4.034840947186471116e-04, 4.028004902837476072e-04, 4.021162740863170075e-04, 4.014314472764146354e-04, 4.007460110050367814e-04, 4.000599664241416943e-04, 3.993733146865318913e-04, 3.986860569459397554e-04, 3.979981943570515507e-04, 3.973097280754241015e-04, 3.966206592575061509e-04, 3.959309890607319278e-04, 3.952407186433897412e-04, 3.945498491646601985e-04, 3.938583817846270474e-04, 3.931663176642822720e-04, 3.924736579655671294e-04, 3.917804038512238312e-04, 3.910865564849657088e-04, 3.903921170313510124e-04, 3.896970866558277968e-04, 3.890014665247479081e-04, 3.883052578053934915e-04, 3.876084616658549654e-04, 3.869110792751197627e-04, 3.862131118031025259e-04, 3.855145604205146778e-04, 3.848154262990579515e-04, 3.841157106111941599e-04, 3.834154145303372624e-04, 3.827145392307248323e-04, 3.820130858874618051e-04, 3.813110556765366321e-04, 3.806084497748450798e-04, 3.799052693600713459e-04, 3.792015156107728991e-04, 3.784971897064126796e-04, 3.777922928272337650e-04, 3.770868261544396737e-04, 3.763807908699793128e-04, 3.756741881567291787e-04, 3.749670191983534408e-04, 3.742592851794227155e-04, 3.735509872852746925e-04, 3.728421267022006169e-04, 3.721327046172206434e-04, 3.714227222182730831e-04, 3.707121806940858713e-04, 3.700010812342039443e-04, 3.692894250290854074e-04, 3.685772132699712683e-04, 3.678644471489155780e-04, 3.671511278587982242e-04, 3.664372565933397309e-04, 3.657228345471312363e-04, 3.650078629155047139e-04, 3.642923428946275152e-04, 3.635762756815299080e-04, 3.628596624739956265e-04, 3.621425044706651957e-04, 3.614248028709769506e-04, 3.607065588751934911e-04, 3.599877736843344611e-04, 3.592684485002889264e-04, 3.585485845256700913e-04, 3.578281829640004804e-04, 3.571072450194934180e-04, 3.563857718972354444e-04, 3.556637648030613625e-04, 3.549412249435981472e-04, 3.542181535262801787e-04, 3.534945517593762938e-04, 3.527704208518640718e-04, 3.520457620135219383e-04, 3.513205764549559443e-04, 3.505948653874756799e-04, 3.498686300232800518e-04, 3.491418715752316070e-04, 3.484145912570497374e-04, 3.476867902831763473e-04, 3.469584698688232328e-04, 3.462296312299898088e-04, 3.455002755834848472e-04, 3.447704041467899755e-04, 3.440400181382275661e-04, 3.433091187768322035e-04, 3.425777072823797415e-04, 3.418457848754843931e-04, 3.411133527774649942e-04, 3.403804122103762288e-04, 3.396469643970246211e-04, 3.389130105609801900e-04, 3.381785519266060488e-04, 3.374435897189300890e-04, 3.367081251637378970e-04, 3.359721594876043040e-04, 3.352356939177911460e-04, 3.344987296822835303e-04, 3.337612680098777642e-04, 3.330233101300567804e-04, 3.322848572730134468e-04, 3.315459106696712214e-04, 3.308064715516945598e-04, 3.300665411515190566e-04, 3.293261207022215036e-04, 3.285852114376165462e-04, 3.278438145922815119e-04, 3.271019314014454423e-04, 3.263595631010837435e-04, 3.256167109279327148e-04, 3.248733761193540234e-04, 3.241295599134355891e-04, 3.233852635490164131e-04, 3.226404882655595631e-04, 3.218952353033428305e-04, 3.211495059032268198e-04, 3.204033013068537366e-04, 3.196566227565096402e-04, 3.189094714951724733e-04, 3.181618487665288132e-04, 3.174137558150041754e-04, 3.166651938856258073e-04, 3.159161642241234110e-04, 3.151666680769581999e-04, 3.144167066911899753e-04, 3.136662813146704398e-04, 3.129153931958151896e-04, 3.121640435837935040e-04, 3.114122337283816528e-04, 3.106599648800765752e-04, 3.099072382900245389e-04, 3.091540552100560516e-04, 3.084004168926152796e-04, 3.076463245908737801e-04, 3.068917795586138960e-04, 3.061367830502572697e-04, 3.053813363209656202e-04, 3.046254406265041874e-04, 3.038690972232726867e-04, 3.031123073683185897e-04, 3.023550723193546346e-04, 3.015973933347886418e-04, 3.008392716735878254e-04, 3.000807085953762637e-04, 2.993217053604689971e-04, 2.985622632297643664e-04, 2.978023834647808765e-04, 2.970420673277529848e-04, 2.962813160814946551e-04, 2.955201309894324251e-04, 2.947585133156175501e-04, 2.939964643247440002e-04, 2.932339852821770837e-04, 2.924710774538011164e-04, 2.917077421062032479e-04, 2.909439805065349555e-04, 2.901797939225613746e-04, 2.894151836226772911e-04, 2.886501508759369570e-04, 2.878846969519165589e-04, 2.871188231208159710e-04, 2.863525306534867813e-04, 2.855858208213006696e-04, 2.848186948963426124e-04, 2.840511541511791887e-04, 2.832831998590541701e-04, 2.825148332937550558e-04, 2.817460557296577414e-04, 2.809768684417447335e-04, 2.802072727056367546e-04, 2.794372697974513626e-04, 2.786668609939073056e-04, 2.778960475723539578e-04, 2.771248308106311325e-04, 2.763532119872777362e-04, 2.755811923812838122e-04, 2.748087732722967014e-04, 2.740359559404663805e-04, 2.732627416665419566e-04, 2.724891317318917788e-04, 2.717151274183591853e-04, 2.709407300083668574e-04, 2.701659407849470694e-04, 2.693907610316385263e-04, 2.686151920325155289e-04, 2.678392350722927622e-04, 2.670628914361812588e-04, 2.662861624099245573e-04, 2.655090492798133387e-04, 2.647315533326969738e-04, 2.639536758560203852e-04, 2.631754181376799034e-04, 2.623967814661294098e-04, 2.616177671304074416e-04, 2.608383764200190142e-04, 2.600586106250498959e-04, 2.592784710360990078e-04, 2.584979589443094864e-04, 2.577170756412972886e-04, 2.569358224192694242e-04, 2.561542005708679934e-04, 2.553722113893733660e-04, 2.545898561684630012e-04, 2.538071362024130000e-04, 2.530240527859605208e-04, 2.522406072143526762e-04, 2.514568007833603569e-04, 2.506726347893135226e-04, 2.498881105289586834e-04, 2.491032292995600558e-04, 2.483179923989341491e-04, 2.475324011253067589e-04, 2.467464567775208627e-04, 2.459601606547896389e-04, 2.451735140569047421e-04, 2.443865182840938388e-04, 2.435991746370527538e-04, 2.428114844170489576e-04, 2.420234489257804575e-04, 2.412350694653893227e-04, 2.404463473385655512e-04, 2.396572838484217901e-04, 2.388678802985270543e-04, 2.380781379930086957e-04, 2.372880582364118634e-04, 2.364976423337291841e-04, 2.357068915904201147e-04, 2.349158073124226246e-04, 2.341243908061892999e-04, 2.333326433785418163e-04, 2.325405663367773534e-04, 2.317481609886981120e-04, 2.309554286425064722e-04, 2.301623706068370041e-04, 2.293689881908590874e-04, 2.285752827041354508e-04, 2.277812554566543989e-04, 2.269869077588454259e-04, 2.261922409215940950e-04, 2.253972562562754601e-04, 2.246019550746126579e-04, 2.238063386887768989e-04, 2.230104084114240047e-04, 2.222141655555667707e-04, 2.214176114346791575e-04, 2.206207473627129338e-04, 2.198235746539525012e-04, 2.190260946231190053e-04, 2.182283085854049487e-04, 2.174302178563287447e-04, 2.166318237519453246e-04, 2.158331275885987490e-04, 2.150341306831282607e-04, 2.142348343527266069e-04, 2.134352399149738657e-04, 2.126353486879406897e-04, 2.118351619900445950e-04, 2.110346811400834357e-04, 2.102339074572499053e-04, 2.094328422611849063e-04, 2.086314868718301804e-04, 2.078298426096421129e-04, 2.070279107953391679e-04, 2.062256927501146899e-04, 2.054231897954718344e-04, 2.046204032533480881e-04, 2.038173344460429530e-04, 2.030139846962479241e-04, 2.022103553269756645e-04, 2.014064476616830347e-04, 2.006022630241408803e-04, 1.997978027384719518e-04, 1.989930681292515185e-04, 1.981880605213651755e-04, 1.973827812400424811e-04, 1.965772316108707531e-04, 1.957714129598104647e-04, 1.949653266132334354e-04, 1.941589738977713678e-04, 1.933523561404249999e-04, 1.925454746685966313e-04, 1.917383308099801303e-04, 1.909309258925949784e-04, 1.901232612448923865e-04, 1.893153381956081955e-04, 1.885071580737788144e-04, 1.876987222088477699e-04, 1.868900319305020737e-04, 1.860810885688838311e-04, 1.852718934543383540e-04, 1.844624479176257975e-04, 1.836527532897775836e-04, 1.828428109021448930e-04, 1.820326220864191831e-04, 1.812221881746606754e-04, 1.804115104991550517e-04, 1.796005903925210873e-04, 1.787894291877394103e-04, 1.779780282180109044e-04, 1.771663888169684265e-04, 1.763545123184232931e-04, 1.755424000565778927e-04, 1.747300533658808629e-04, 1.739174735810616228e-04, 1.731046620372328026e-04, 1.722916200697487013e-04, 1.714783490142347496e-04, 1.706648502066059417e-04, 1.698511249831180091e-04, 1.690371746802209185e-04, 1.682230006347551390e-04, 1.674086041837876565e-04, 1.665939866646447710e-04, 1.657791494149275465e-04, 1.649640937725312454e-04, 1.641488210756736257e-04, 1.633333326627532905e-04, 1.625176298724532564e-04, 1.617017140437750241e-04, 1.608855865159296706e-04, 1.600692486283690204e-04, 1.592527017208947965e-04, 1.584359471335092999e-04, 1.576189862064517836e-04, 1.568018202802120057e-04, 1.559844506955474408e-04, 1.551668787935175681e-04, 1.543491059153361488e-04, 1.535311334024767730e-04, 1.527129625967104277e-04, 1.518945948399711636e-04, 1.510760314744853867e-04, 1.502572738426957472e-04, 1.494383232872933942e-04, 1.486191811511452805e-04, 1.477998487774188723e-04, 1.469803275094154807e-04, 1.461606186907869395e-04, 1.453407236652786761e-04, 1.445206437769455221e-04, 1.437003803700042347e-04, 1.428799347888675135e-04, 1.420593083782511199e-04, 1.412385024830262897e-04, 1.404175184482535604e-04, 1.395963576191989802e-04, 1.387750213413861493e-04, 1.379535109604484978e-04, 1.371318278223469388e-04, 1.363099732731104464e-04, 1.354879486590534381e-04, 1.346657553266105692e-04, 1.338433946224603050e-04, 1.330208678934513848e-04, 1.321981764866362696e-04, 1.313753217491956543e-04, 1.305523050285650754e-04, 1.297291276723040482e-04, 1.289057910281304084e-04, 1.280822964440284887e-04, 1.272586452680996613e-04, 1.264348388485978187e-04, 1.256108785339447962e-04, 1.247867656727460388e-04, 1.239625016138257835e-04, 1.231380877060782525e-04, 1.223135252985750165e-04, 1.214888157405999734e-04, 1.206639603815363071e-04, 1.198389605709017917e-04, 1.190138176584561679e-04, 1.181885329940524722e-04, 1.173631079276713109e-04, 1.165375438094368930e-04, 1.157118419896338622e-04, 1.148860038187407448e-04, 1.140600306472631720e-04, 1.132339238259342677e-04, 1.124076847055635787e-04, 1.115813146370740050e-04, 1.107548149716077265e-04, 1.099281870603789006e-04, 1.091014322547061475e-04, 1.082745519060308598e-04, 1.074475473659686480e-04, 1.066204199861606823e-04, 1.057931711184913876e-04, 1.049658021148299283e-04, 1.041383143272486757e-04, 1.033107091078719884e-04, 1.024829878089130483e-04, 1.016551517827813593e-04, 1.008272023819320701e-04, 9.999914095890253900e-05, 9.917096886632760782e-05, 9.834268745699184652e-05, 9.751429808368160051e-05, 9.668580209940288810e-05, 9.585720085712094805e-05, 9.502849570998023773e-05, 9.419968801113525695e-05, 9.337077911387823984e-05, 9.254177037156243401e-05, 9.171266313763752685e-05, 9.088345876557323640e-05, 9.005415860898635270e-05, 8.922476402150873623e-05, 8.839527635682366572e-05, 8.756569696877233400e-05, 8.673602721120563745e-05, 8.590626843801782702e-05, 8.507642200316342174e-05, 8.424648926067297033e-05, 8.341647156468794892e-05, 8.258637026931138513e-05, 8.175618672871541094e-05, 8.092592229717679735e-05, 8.009557832896356045e-05, 7.926515617836975074e-05, 7.843465719982457807e-05, 7.760408274774151780e-05, 7.677343417653527857e-05, 7.594271284073012766e-05, 7.511192009479131107e-05, 7.428105729334521438e-05, 7.345012579091751432e-05, 7.261912694215388170e-05, 7.178806210166830152e-05, 7.095693262407981388e-05, 7.012573986411959248e-05, 6.929448517648155513e-05, 6.846316991585708531e-05, 6.763179543695148495e-05, 6.680036309453669377e-05, 6.596887424330154736e-05, 6.513733023807197870e-05, 6.430573243354841082e-05, 6.347408218452731349e-05, 6.264238084574975376e-05, 6.181062977193642924e-05, 6.097883031789696920e-05, 6.014698383837923051e-05, 5.931509168810420894e-05, 5.848315522178256643e-05, 5.765117579416769605e-05, 5.681915475990526184e-05, 5.598709347373521277e-05, 5.515499329032228128e-05, 5.432285556429184326e-05, 5.349068165024470389e-05, 5.265847290277489207e-05, 5.182623067650330459e-05, 5.099395632592856734e-05, 5.016165120553466272e-05, 4.932931666982701320e-05, 4.849695407321809125e-05, 4.766456477006262882e-05, 4.683215011476727757e-05, 4.599971146163910518e-05, 4.516725016492096750e-05, 4.433476757880790023e-05, 4.350226505746305003e-05, 4.266974395505346664e-05, 4.183720562559848407e-05, 4.100465142307948923e-05, 4.017208270147431826e-05, 3.933950081460737240e-05, 3.850690711636916885e-05, 3.767430296045512267e-05, 3.684168970058583625e-05, 3.600906869033727268e-05, 3.517644128328807840e-05, 3.434380883284959395e-05, 3.351117269248653647e-05, 3.267853421545511070e-05, 3.184589475502342727e-05, 3.101325566432083249e-05, 3.018061829637281627e-05, 2.934798400421028615e-05, 2.851535414071874796e-05, 2.768273005867331885e-05, 2.685011311075506817e-05, 2.601750464960462118e-05, 2.518490602767107541e-05, 2.435231859743320165e-05, 2.351974371113682986e-05, 2.268718272101555208e-05, 2.185463697912160040e-05, 2.102210783745356266e-05, 2.018959664787977332e-05, 1.935710476217338409e-05, 1.852463353193595810e-05, 1.769218430872505684e-05, 1.685975844392227917e-05, 1.602735728876819634e-05, 1.519498219447131263e-05, 1.436263451205772209e-05, 1.353031559240569457e-05, 1.269802678626227929e-05, 1.186576944425970843e-05, 1.103354491695010012e-05, 1.020135455465495421e-05, 9.369199707574367016e-06, 8.537081725821818955e-06, 7.705001959273668656e-06, 6.872961757789489093e-06, 6.040962470950275964e-06, 5.209005448278762653e-06, 4.377092039088942284e-06, 3.545223592539439270e-06, 2.713401457649938785e-06, 1.881626983336067584e-06, 1.049901518240273070e-06, 2.182264109337051070e-07, -6.133969902343927706e-07, -1.444967337101748485e-06, -2.276483281583936418e-06, -3.107943475824985290e-06, -3.939346572162430935e-06, -4.770691223110953635e-06, -5.601976081308892433e-06, -6.433199799668884442e-06, -7.264361031157399952e-06, -8.095458429056562858e-06, -8.926490646743866190e-06, -9.757456337842583137e-06, -1.058835415618700143e-05, -1.141918275571317812e-05, -1.224994079060971821e-05, -1.308062691528242458e-05, -1.391123978433843138e-05, -1.474177805253242251e-05, -1.557224037491720188e-05, -1.640262540662352586e-05, -1.723293180312160435e-05, -1.806315822000094336e-05, -1.889330331313941280e-05, -1.972336573859404023e-05, -2.055334415258480878e-05, -2.138323721164495808e-05, -2.221304357251193385e-05, -2.304276189209280865e-05, -2.387239082761423038e-05, -2.470192903640271214e-05, -2.553137517614580295e-05, -2.636072790467204556e-05, -2.718998588010148064e-05, -2.801914776079218205e-05, -2.884821220532381763e-05, -2.967717787246274469e-05, -3.050604342131260226e-05, -3.133480751120510147e-05, -3.216346880166507359e-05, -3.299202595256108938e-05, -3.382047762388533222e-05, -3.464882247601468076e-05, -3.547705916949106308e-05, -3.630518636519015181e-05, -3.713320272417515943e-05, -3.796110690786607550e-05, -3.878889757781928219e-05, -3.961657339598896902e-05, -4.044413302450737183e-05, -4.127157512583475181e-05, -4.209889836272458588e-05, -4.292610139811497023e-05, -4.375318289527817251e-05, -4.458014151778651331e-05, -4.540697592949565593e-05, -4.623368479449114159e-05, -4.706026677723863962e-05, -4.788672054236471490e-05, -4.871304475491671122e-05, -4.953923808014395921e-05, -5.036529918364759278e-05, -5.119122673134549550e-05, -5.201701938936396171e-05, -5.284267582418747904e-05, -5.366819470264198427e-05, -5.449357469178701908e-05, -5.531881445904668137e-05, -5.614391267217447675e-05, -5.696886799914542690e-05, -5.779367910830552680e-05, -5.861834466833686736e-05, -5.944286334824175181e-05, -6.026723381732573473e-05, -6.109145474516336125e-05, -6.191552480174801736e-05, -6.273944265738247970e-05, -6.356320698264573217e-05, -6.438681644854092568e-05, -6.521026972627749416e-05, -6.603356548753094293e-05, -6.685670240422375858e-05, -6.767967914867483912e-05, -6.850249439354669332e-05, -6.932514681182900152e-05, -7.014763507680428706e-05, -7.096995786219650621e-05, -7.179211384206330554e-05, -7.261410169076130039e-05, -7.343592008309565407e-05, -7.425756769411921590e-05, -7.507904319930061316e-05, -7.590034527448963797e-05, -7.672147259590079451e-05, -7.754242384006048480e-05, -7.836319768395572061e-05, -7.918379280481641568e-05, -8.000420788037429314e-05, -8.082444158864494736e-05, -8.164449260807601374e-05, -8.246435961751353129e-05, -8.328404129609371222e-05, -8.410353632339138269e-05, -8.492284337938611511e-05, -8.574196114444565336e-05, -8.656088829927271913e-05, -8.737962352505436079e-05, -8.819816550324371702e-05, -8.901651291581908691e-05, -8.983466444506573432e-05, -9.065261877374316667e-05, -9.147037458495885253e-05, -9.228793056224407509e-05, -9.310528538951846520e-05, -9.392243775116620725e-05, -9.473938633190986513e-05, -9.555612981697710539e-05, -9.637266689188296240e-05, -9.718899624268824433e-05, -9.800511655578266563e-05, -9.882102651803242052e-05, -9.963672481672822257e-05, -1.004522101395680117e-04, -1.012674811746243467e-04, -1.020825366104906914e-04, -1.028973751361749730e-04, -1.037119954410653755e-04, -1.045263962150775607e-04, -1.053405761484387903e-04, -1.061545339319446918e-04, -1.069682682567432583e-04, -1.077817778144815955e-04, -1.085950612972546117e-04, -1.094081173975880228e-04, -1.102209448084048914e-04, -1.110335422231903846e-04, -1.118459083357948019e-04, -1.126580418405810397e-04, -1.134699414323890707e-04, -1.142816058064308573e-04, -1.150930336584360007e-04, -1.159042236846196078e-04, -1.167151745816638326e-04, -1.175258850466674477e-04, -1.183363537772915601e-04, -1.191465794715459704e-04, -1.199565608280426854e-04, -1.207662965457822628e-04, -1.215757853243007479e-04, -1.223850258636346403e-04, -1.231940168642149127e-04, -1.240027570270136497e-04, -1.248112450535105052e-04, -1.256194796456761682e-04, -1.264274595059556661e-04, -1.272351833372367333e-04, -1.280426498429932780e-04, -1.288498577271814344e-04, -1.296568056942046514e-04, -1.304634924490414660e-04, -1.312699166971409588e-04, -1.320760771444055154e-04, -1.328819724973372206e-04, -1.336876014629325554e-04, -1.344929627486471878e-04, -1.352980550625438032e-04, -1.361028771130764299e-04, -1.369074276093450095e-04, -1.377117052608830834e-04, -1.385157087778012323e-04, -1.393194368707366881e-04, -1.401228882508371795e-04, -1.409260616297274026e-04, -1.417289557196538437e-04, -1.425315692333801261e-04, -1.433339008841522891e-04, -1.441359493858448027e-04, -1.449377134527479554e-04, -1.457391917998199042e-04, -1.465403831424742526e-04, -1.473412861967427889e-04, -1.481418996791353531e-04, -1.489422223068020338e-04, -1.497422527973207189e-04, -1.505419898689499040e-04, -1.513414322404153486e-04, -1.521405786310563353e-04, -1.529394277607910835e-04, -1.537379783500118801e-04, -1.545362291197294950e-04, -1.553341787915406280e-04, -1.561318260876116460e-04, -1.569291697306259990e-04, -1.577262084439306686e-04, -1.585229409513229056e-04, -1.593193659773030390e-04, -1.601154822468612942e-04, -1.609112884856230496e-04, -1.617067834198162560e-04, -1.625019657761638838e-04, -1.632968342820324045e-04, -1.640913876654115432e-04, -1.648856246548133122e-04, -1.656795439794308742e-04, -1.664731443689309166e-04, -1.672664245537010676e-04, -1.680593832646408610e-04, -1.688520192333048246e-04, -1.696443311918513865e-04, -1.704363178730274259e-04, -1.712279780101348518e-04, -1.720193103371736641e-04, -1.728103135887400926e-04, -1.736009864999888395e-04, -1.743913278067814798e-04, -1.751813362454726565e-04, -1.759710105531611820e-04, -1.767603494674797296e-04, -1.775493517267388703e-04, -1.783380160698750034e-04, -1.791263412364343650e-04, -1.799143259665417487e-04, -1.807019690010414244e-04, -1.814892690813952236e-04, -1.822762249496476554e-04, -1.830628353485694272e-04, -1.838490990214668153e-04, -1.846350147123403107e-04, -1.854205811658535838e-04, -1.862057971273142396e-04, -1.869906613426278749e-04, -1.877751725584369917e-04, -1.885593295219139414e-04, -1.893431309810077439e-04, -1.901265756842357847e-04, -1.909096623808279329e-04, -1.916923898206897867e-04, -1.924747567543024927e-04, -1.932567619328650482e-04, -1.940384041082578170e-04, -1.948196820330319861e-04, -1.956005944603891823e-04, -1.963811401441521178e-04, -1.971613178389049128e-04, -1.979411262998902860e-04, -1.987205642829763784e-04, -1.994996305447824388e-04, -2.002783238425550087e-04, -2.010566429342454148e-04, -2.018345865784702776e-04, -2.026121535345893840e-04, -2.033893425625811122e-04, -2.041661524232036803e-04, -2.049425818777871142e-04, -2.057186296884787931e-04, -2.064942946180375590e-04, -2.072695754299745544e-04, -2.080444708885019131e-04, -2.088189797585185566e-04, -2.095931008055775598e-04, -2.103668327960249830e-04, -2.111401744969012640e-04, -2.119131246759053575e-04, -2.126856821015362786e-04, -2.134578455428875912e-04, -2.142296137698918696e-04, -2.150009855531137234e-04, -2.157719596639098261e-04, -2.165425348742893515e-04, -2.173127099570747872e-04, -2.180824836856936873e-04, -2.188518548344252194e-04, -2.196208221781909139e-04, -2.203893844927002179e-04, -2.211575405544121960e-04, -2.219252891404388192e-04, -2.226926290286812494e-04, -2.234595589977999967e-04, -2.242260778271963249e-04, -2.249921842970011932e-04, -2.257578771880402091e-04, -2.265231552819725689e-04, -2.272880173611918533e-04, -2.280524622087920646e-04, -2.288164886086728488e-04, -2.295800953455090021e-04, -2.303432812046455475e-04, -2.311060449722412014e-04, -2.318683854352324874e-04, -2.326303013813205893e-04, -2.333917915989551430e-04, -2.341528548773030112e-04, -2.349134900064040561e-04, -2.356736957769821903e-04, -2.364334709805884641e-04, -2.371928144095482110e-04, -2.379517248569480638e-04, -2.387102011166024264e-04, -2.394682419831911397e-04, -2.402258462521632862e-04, -2.409830127196985379e-04, -2.417397401828513012e-04, -2.424960274393448269e-04, -2.432518732878111709e-04, -2.440072765275925148e-04, -2.447622359588743322e-04, -2.455167503826408831e-04, -2.462708186006552910e-04, -2.470244394154335493e-04, -2.477776116303752763e-04, -2.485303340496691185e-04, -2.492826054782591402e-04, -2.500344247219808908e-04, -2.507857905873620203e-04, -2.515367018818604784e-04, -2.522871574136629613e-04, -2.530371559918381092e-04, -2.537866964262078121e-04, -2.545357775274928718e-04, -2.552843981071219116e-04, -2.560325569774602513e-04, -2.567802529516173527e-04, -2.575274848435780083e-04, -2.582742514681725800e-04, -2.590205516409796915e-04, -2.597663841784583934e-04, -2.605117478979196476e-04, -2.612566416175118541e-04, -2.620010641562023649e-04, -2.627450143337508128e-04, -2.634884909708389987e-04, -2.642314928889788429e-04, -2.649740189104759559e-04, -2.657160678585332881e-04, -2.664576385572202844e-04, -2.671987298313742215e-04, -2.679393405067341072e-04, -2.686794694099287539e-04, -2.694191153683747012e-04, -2.701582772104329914e-04, -2.708969537652058273e-04, -2.716351438627766148e-04, -2.723728463340072711e-04, -2.731100600106777616e-04, -2.738467837254328113e-04, -2.745830163117727435e-04, -2.753187566040188393e-04, -2.760540034374473449e-04, -2.767887556481953091e-04, -2.775230120732246415e-04, -2.782567715504593729e-04, -2.789900329185893602e-04, -2.797227950173019262e-04, -2.804550566870867576e-04, -2.811868167693676898e-04, -2.819180741064568449e-04, -2.826488275415410252e-04, -2.833790759186471811e-04, -2.841088180827797799e-04, -2.848380528798214926e-04, -2.855667791565009387e-04, -2.862949957605302178e-04, -2.870227015404232512e-04, -2.877498953456433957e-04, -2.884765760265774778e-04, -2.892027424345166567e-04, -2.899283934216444441e-04, -2.906535278410047750e-04, -2.913781445466346047e-04, -2.921022423934689334e-04, -2.928258202373068705e-04, -2.935488769349153381e-04, -2.942714113439957326e-04, -2.949934223230888395e-04, -2.957149087317049378e-04, -2.964358694302975626e-04, -2.971563032802435013e-04, -2.978762091438330898e-04, -2.985955858842355187e-04, -2.993144323656342495e-04, -3.000327474531286776e-04, -3.007505300127038292e-04, -3.014677789113485930e-04, -3.021844930169382474e-04, -3.029006711983070477e-04, -3.036163123252152659e-04, -3.043314152684137557e-04, -3.050459788995354775e-04, -3.057600020912402939e-04, -3.064734837170263724e-04, -3.071864226514535315e-04, -3.078988177699547519e-04, -3.086106679489649795e-04, -3.093219720658766194e-04, -3.100327289990227305e-04, -3.107429376276481313e-04, -3.114525968320409682e-04, -3.121617054934349204e-04, -3.128702624939787877e-04, -3.135782667168724499e-04, -3.142857170461697586e-04, -3.149926123670074665e-04, -3.156989515654135946e-04, -3.164047335284541794e-04, -3.171099571441236592e-04, -3.178146213014092225e-04, -3.185187248902605580e-04, -3.192222668016565334e-04, -3.199252459274957452e-04, -3.206276611607056432e-04, -3.213295113952184079e-04, -3.220307955258746180e-04, -3.227315124485494527e-04, -3.234316610601285129e-04, -3.241312402584868428e-04, -3.248302489424807434e-04, -3.255286860119133499e-04, -3.262265503676680420e-04, -3.269238409116092398e-04, -3.276205565465569250e-04, -3.283166961763805871e-04, -3.290122587059724976e-04, -3.297072430411496983e-04, -3.304016480887893639e-04, -3.310954727567905838e-04, -3.317887159540649296e-04, -3.324813765905237700e-04, -3.331734535770439556e-04, -3.338649458256164092e-04, -3.345558522491698340e-04, -3.352461717617014688e-04, -3.359359032782302502e-04, -3.366250457147839650e-04, -3.373135979883675915e-04, -3.380015590170930241e-04, -3.386889277200836094e-04, -3.393757030174484506e-04, -3.400618838304051935e-04, -3.407474690810965252e-04, -3.414324576928118391e-04, -3.421168485897958735e-04, -3.428006406973839112e-04, -3.434838329419479495e-04, -3.441664242508888933e-04, -3.448484135526053845e-04, -3.455297997766177808e-04, -3.462105818534788712e-04, -3.468907587147441150e-04, -3.475703292930978428e-04, -3.482492925221680204e-04, -3.489276473367431439e-04, -3.496053926725941588e-04, -3.502825274666072214e-04, -3.509590506566982629e-04, -3.516349611817992204e-04, -3.523102579819777872e-04, -3.529849399983539830e-04, -3.536590061730650802e-04, -3.543324554493617186e-04, -3.550052867715808541e-04, -3.556774990850523010e-04, -3.563490913362242279e-04, -3.570200624726319332e-04, -3.576904114428896587e-04, -3.583601371966717254e-04, -3.590292386846869995e-04, -3.596977148587983180e-04, -3.603655646719372703e-04, -3.610327870780747619e-04, -3.616993810323245557e-04, -3.623653454908465073e-04, -3.630306794108989314e-04, -3.636953817508201711e-04, -3.643594514700814520e-04, -3.650228875291913646e-04, -3.656856888898256429e-04, -3.663478545146536380e-04, -3.670093833675467558e-04, -3.676702744134041178e-04, -3.683305266182658054e-04, -3.689901389492813099e-04, -3.696491103746870352e-04, -3.703074398637814699e-04, -3.709651263870447201e-04, -3.716221689160525326e-04, -3.722785664234492435e-04, -3.729343178830625961e-04, -3.735894222697342792e-04, -3.742438785595229443e-04, -3.748976857295326310e-04, -3.755508427580311610e-04, -3.762033486244209198e-04, -3.768552023091533126e-04, -3.775064027938480264e-04, -3.781569490612801286e-04, -3.788068400952917039e-04, -3.794560748809007087e-04, -3.801046524042669267e-04, -3.807525716526103830e-04, -3.813998316143263237e-04, -3.820464312789644532e-04, -3.826923696372058954e-04, -3.833376456808589646e-04, -3.839822584028253932e-04, -3.846262067972229005e-04, -3.852694898592968304e-04, -3.859121065853944555e-04, -3.865540559730507920e-04, -3.871953370209639880e-04, -3.878359487289094552e-04, -3.884758900978549563e-04, -3.891151601299369699e-04, -3.897537578284459452e-04, -3.903916821978098764e-04, -3.910289322435732688e-04, -3.916655069725102759e-04, -3.923014053925434922e-04, -3.929366265127079037e-04, -3.935711693432645121e-04, -3.942050328956064431e-04, -3.948382161822524953e-04, -3.954707182169603851e-04, -3.961025380146418538e-04, -3.967336745913355080e-04, -3.973641269643260281e-04, -3.979938941519693945e-04, -3.986229751739010004e-04, -3.992513690508562706e-04, -3.998790748047937726e-04, -4.005060914588696292e-04, -4.011324180373448739e-04, -4.017580535657089410e-04, -4.023829970706499048e-04, -4.030072475800408724e-04, -4.036308041228990552e-04, -4.042536657295036219e-04, -4.048758314312247736e-04, -4.054973002607190633e-04, -4.061180712517735414e-04, -4.067381434394199769e-04, -4.073575158598476327e-04, -4.079761875504565546e-04, -4.085941575498324720e-04, -4.092114248978037726e-04, -4.098279886353461466e-04, -4.104438478046790271e-04, -4.110590014492439053e-04, -4.116734486136155351e-04, -4.122871883436225499e-04, -4.129002196863160753e-04, -4.135125416899574236e-04, -4.141241534040067634e-04, -4.147350538790979665e-04, -4.153452421671495216e-04, -4.159547173212812675e-04, -4.165634783957929805e-04, -4.171715244462449843e-04, -4.177788545294309369e-04, -4.183854677033009605e-04, -4.189913630270704955e-04, -4.195965395612063142e-04, -4.202009963673508978e-04, -4.208047325084392047e-04, -4.214077470485459611e-04, -4.220100390530689451e-04, -4.226116075885745960e-04, -4.232124517229010684e-04, -4.238125705251238624e-04, -4.244119630655428135e-04, -4.250106284156548791e-04, -4.256085656482680338e-04, -4.262057738374114431e-04, -4.268022520583253810e-04, -4.273979993875562594e-04, -4.279930149028045696e-04, -4.285872976831113100e-04, -4.291808468086986635e-04, -4.297736613610819408e-04, -4.303657404230392769e-04, -4.309570830785329726e-04, -4.315476884128252870e-04, -4.321375555124422796e-04, -4.327266834651713706e-04, -4.333150713600154250e-04, -4.339027182873049135e-04, -4.344896233385412993e-04, -4.350757856065779914e-04, -4.356612041854680687e-04, -4.362458781705849512e-04, -4.368298066585377245e-04, -4.374129887471713018e-04, -4.379954235356595571e-04, -4.385771101244387011e-04, -4.391580476151764898e-04, -4.397382351108550572e-04, -4.403176717157428893e-04, -4.408963565353223447e-04, -4.414742886763905940e-04, -4.420514672470391825e-04, -4.426278913566402610e-04, -4.432035601158337921e-04, -4.437784726365062997e-04, -4.443526280318920254e-04, -4.449260254165014793e-04, -4.454986639060899440e-04, -4.460705426177578718e-04, -4.466416606698534689e-04, -4.472120171820313512e-04, -4.477816112752272277e-04, -4.483504420717079907e-04, -4.489185086949843296e-04, -4.494858102699329739e-04, -4.500523459226328711e-04, -4.506181147805568728e-04, -4.511831159724124661e-04, -4.517473486282499225e-04, -4.523108118794352470e-04, -4.528735048585753680e-04, -4.534354266996218959e-04, -4.539965765378479751e-04, -4.545569535098346772e-04, -4.551165567534361440e-04, -4.556753854078817194e-04, -4.562334386136244861e-04, -4.567907155125187500e-04, -4.573472152476760577e-04, -4.579029369635602810e-04, -4.584578798059638191e-04, -4.590120429219392392e-04, -4.595654254598960961e-04, -4.601180265695923124e-04, -4.606698454020572548e-04, -4.612208811096838910e-04, -4.617711328462060214e-04, -4.623205997666172355e-04, -4.628692810272814996e-04, -4.634171757859033964e-04, -4.639642832015193966e-04, -4.645106024344853365e-04, -4.650561326464552761e-04, -4.656008730004781559e-04, -4.661448226609290579e-04, -4.666879807934818845e-04, -4.672303465651871492e-04, -4.677719191444490465e-04, -4.683126977009487981e-04, -4.688526814057515017e-04, -4.693918694312734416e-04, -4.699302609512803547e-04, -4.704678551408707330e-04, -4.710046511764522971e-04, -4.715406482358470552e-04, -4.720758454982108550e-04, -4.726102421440176631e-04, -4.731438373551534568e-04, -4.736766303147852525e-04, -4.742086202074720196e-04, -4.747398062191421830e-04, -4.752701875370802880e-04, -4.757997633498939317e-04, -4.763285328476131301e-04, -4.768564952215434633e-04, -4.773836496644366743e-04, -4.779099953703492892e-04, -4.784355315347417676e-04, -4.789602573544460306e-04, -4.794841720276081607e-04, -4.800072747537750839e-04, -4.805295647338767343e-04, -4.810510411702170015e-04, -4.815717032664332351e-04, -4.820915502275946365e-04, -4.826105812600665706e-04, -4.831287955716688054e-04, -4.836461923715429682e-04, -4.841627708702556532e-04, -4.846785302797130949e-04, -4.851934698132213952e-04, -4.857075886854538894e-04, -4.862208861124984170e-04, -4.867333613117862524e-04, -4.872450135021664272e-04, -4.877558419038866477e-04, -4.882658457385257497e-04, -4.887750242290835783e-04, -4.892833765999645085e-04, -4.897909020769632962e-04, -4.902975998872578138e-04, -4.908034692593799941e-04, -4.913085094233204551e-04, -4.918127196104517393e-04, -4.923160990535087973e-04, -4.928186469866583774e-04, -4.933203626454816778e-04, -4.938212452669013802e-04, -4.943212940892752162e-04, -4.948205083523909802e-04, -4.953188872973893339e-04, -4.958164301668787320e-04, -4.963131362047913317e-04, -4.968090046565465986e-04, -4.973040347689171910e-04, -4.977982257901206837e-04, -4.982915769697940887e-04, -4.987840875589302130e-04, -4.992757568099722007e-04, -4.997665839767881629e-04, -5.002565683146594682e-04, -5.007457090802515777e-04, -5.012340055317034918e-04, -5.017214569284973204e-04, -5.022080625316119144e-04, -5.026938216033882082e-04, -5.031787334076280984e-04, -5.036627972095643032e-04, -5.041460122758002977e-04, -5.046283778743990015e-04, -5.051098932748587095e-04, -5.055905577481073455e-04, -5.060703705664688521e-04, -5.065493310037488426e-04, -5.070274383351237955e-04, -5.075046918372306095e-04, -5.079810907881526175e-04, -5.084566344674053837e-04, -5.089313221559321494e-04, -5.094051531360775957e-04, -5.098781266916783744e-04, -5.103502421080001157e-04, -5.108214986717144433e-04, -5.112918956709682546e-04, -5.117614323953573749e-04, -5.122301081358709377e-04, -5.126979221849708567e-04, -5.131648738365772976e-04, -5.136309623860543664e-04, -5.140961871302043634e-04, -5.145605473672447980e-04, -5.150240423968976185e-04, -5.154866715203197149e-04, -5.159484340400947869e-04, -5.164093292603029505e-04, -5.168693564864128591e-04, -5.173285150254134344e-04, -5.177868041857032781e-04, -5.182442232771746968e-04, -5.187007716111363990e-04, -5.191564485004100974e-04, -5.196112532592039824e-04, -5.200651852032567041e-04, -5.205182436497196282e-04, -5.209704279172363076e-04, -5.214217373259250271e-04, -5.218721711973168956e-04, -5.223217288544397627e-04, -5.227704096217981617e-04, -5.232182128253661533e-04, -5.236651377925523061e-04, -5.241111838522893602e-04, -5.245563503349073755e-04, -5.250006365722794483e-04, -5.254440418977027747e-04, -5.258865656459865787e-04, -5.263282071533855432e-04, -5.267689657576380812e-04, -5.272088407979519170e-04, -5.276478316150426829e-04, -5.280859375510616035e-04, -5.285231579496712812e-04, -5.289594921560265058e-04, -5.293949395167115877e-04, -5.298294993798231909e-04, -5.302631710949514679e-04, -5.306959540131718197e-04, -5.311278474870375233e-04, -5.315588508705528436e-04, -5.319889635192612872e-04, -5.324181847901887903e-04, -5.328465140418159633e-04, -5.332739506341634171e-04, -5.337004939286751036e-04, -5.341261432883570928e-04, -5.345508980776590702e-04, -5.349747576625494714e-04, -5.353977214104984608e-04, -5.358197886904571142e-04, -5.362409588728475531e-04, -5.366612313296450186e-04, -5.370806054342767153e-04, -5.374990805616984644e-04, -5.379166560883749714e-04, -5.383333313922256157e-04, -5.387491058527004535e-04, -5.391639788507594008e-04, -5.395779497688726672e-04, -5.399910179909806407e-04, -5.404031829025820327e-04, -5.408144438906134239e-04, -5.412248003435846805e-04, -5.416342516514699923e-04, -5.420427972057789961e-04, -5.424504363995405129e-04, -5.428571686272513734e-04, -5.432629932849452649e-04, -5.436679097701801544e-04, -5.440719174820266880e-04, -5.444750158210450970e-04, -5.448772041893533945e-04, -5.452784819905257853e-04, -5.456788486297151812e-04, -5.460783035135496595e-04, -5.464768460502118265e-04, -5.468744756493855831e-04, -5.472711917222497285e-04, -5.476669936815500590e-04, -5.480618809415451582e-04, -5.484558529179904595e-04, -5.488489090282117544e-04, -5.492410486909970980e-04, -5.496322713267219259e-04, -5.500225763572435611e-04, -5.504119632059775421e-04, -5.508004312978635785e-04, -5.511879800593657685e-04, -5.515746089184479870e-04, -5.519603173046544421e-04, -5.523451046490488511e-04, -5.527289703842001292e-04, -5.531119139442586090e-04, -5.534939347648483790e-04, -5.538750322831826429e-04, -5.542552059379752486e-04, -5.546344551695097519e-04, -5.550127794195667749e-04, -5.553901781315188739e-04, -5.557666507502091085e-04, -5.561421967220842900e-04, -5.565168154950913323e-04, -5.568905065187386167e-04, -5.572632692440923066e-04, -5.576351031237164989e-04, -5.580060076117426132e-04, -5.583759821638578993e-04, -5.587450262372956793e-04, -5.591131392908107360e-04, -5.594803207847456666e-04, -5.598465701809324365e-04, -5.602118869428116422e-04, -5.605762705353314630e-04, -5.609397204250154241e-04, -5.613022360799445071e-04, -5.616638169697155169e-04, -5.620244625654947489e-04, -5.623841723400186407e-04, -5.627429457675714366e-04, -5.631007823239716353e-04, -5.634576814866324888e-04, -5.638136427344747235e-04, -5.641686655480007001e-04, -5.645227494092816198e-04, -5.648758938019433212e-04, -5.652280982111653048e-04, -5.655793621236644697e-04, -5.659296850277545279e-04, -5.662790664133063225e-04, -5.666275057717289629e-04, -5.669750025960336838e-04, -5.673215563807387611e-04, -5.676671666219843286e-04, -5.680118328174363178e-04, -5.683555544663503175e-04, -5.686983310695475045e-04, -5.690401621294092225e-04, -5.693810471498607188e-04, -5.697209856364382572e-04, -5.700599770962364249e-04, -5.703980210378979416e-04, -5.707351169716746997e-04, -5.710712644093377758e-04, -5.714064628642849834e-04, -5.717407118514442705e-04, -5.720740108873526497e-04, -5.724063594900902783e-04, -5.727377571793485465e-04, -5.730682034763434499e-04, -5.733976979039195638e-04, -5.737262399864586455e-04, -5.740538292499484810e-04, -5.743804652219582736e-04, -5.747061474316014556e-04, -5.750308754095910914e-04, -5.753546486882284931e-04, -5.756774668014004014e-04, -5.759993292845486286e-04, -5.763202356747369531e-04, -5.766401855105573364e-04, -5.769591783322397527e-04, -5.772772136815641515e-04, -5.775942911019180288e-04, -5.779104101382603236e-04, -5.782255703371390896e-04, -5.785397712466808706e-04, -5.788530124166256117e-04, -5.791652933982726660e-04, -5.794766137445425940e-04, -5.797869730098967160e-04, -5.800963707504372922e-04, -5.804048065238215457e-04, -5.807122798893204259e-04, -5.810187904077925881e-04, -5.813243376416884047e-04, -5.816289211550270885e-04, -5.819325405134550232e-04, -5.822351952842084663e-04, -5.825368850361007560e-04, -5.828376093395675221e-04, -5.831373677666001161e-04, -5.834361598908286610e-04, -5.837339852874528796e-04, -5.840308435332864376e-04, -5.843267342067416572e-04, -5.846216568878271312e-04, -5.849156111581253889e-04, -5.852085966008631519e-04, -5.855006128008345733e-04, -5.857916593444551217e-04, -5.860817358197486799e-04, -5.863708418163085133e-04, -5.866589769253486610e-04, -5.869461407397002497e-04, -5.872323328537905687e-04, -5.875175528636384075e-04, -5.878018003668976409e-04, -5.880850749627822022e-04, -5.883673762521596500e-04, -5.886487038374708285e-04, -5.889290573227865715e-04, -5.892084363137875362e-04, -5.894868404177364477e-04, -5.897642692435183225e-04, -5.900407224016413366e-04, -5.903161995042177429e-04, -5.905907001649695091e-04, -5.908642239992050078e-04, -5.911367706238837430e-04, -5.914083396575636579e-04, -5.916789307204020024e-04, -5.919485434341926295e-04, -5.922171774223332526e-04, -5.924848323098111337e-04, -5.927515077232670517e-04, -5.930172032909477057e-04, -5.932819186426959573e-04, -5.935456534100039564e-04, -5.938084072259380061e-04, -5.940701797252232385e-04, -5.943309705441753108e-04, -5.945907793207407368e-04, -5.948496056944920082e-04, -5.951074493066120909e-04, -5.953643097998830404e-04, -5.956201868187406458e-04, -5.958750800092356154e-04, -5.961289890190223009e-04, -5.963819134974026074e-04, -5.966338530952652788e-04, -5.968848074651576709e-04, -5.971347762612253625e-04, -5.973837591392601844e-04, -5.976317557566506724e-04, -5.978787657724437578e-04, -5.981247888472701743e-04, -5.983698246434251229e-04, -5.986138728247999670e-04, -5.988569330569335153e-04, -5.990990050069956501e-04, -5.993400883437507900e-04, -5.995801827376147017e-04, -5.998192878606320574e-04, -6.000574033864805546e-04, -6.002945289904439196e-04, -6.005306643494694781e-04, -6.007658091420931294e-04, -6.009999630485182752e-04, -6.012331257505508769e-04, -6.014652969316495448e-04, -6.016964762769052644e-04, -6.019266634730143992e-04, -6.021558582083243356e-04, -6.023840601728231835e-04, -6.026112690581112612e-04, -6.028374845574517278e-04, -6.030627063656993515e-04, -6.032869341793870282e-04, -6.035101676966482618e-04, -6.037324066172757107e-04, -6.039536506426909385e-04, -6.041738994759489681e-04, -6.043931528217235359e-04, -6.046114103863560983e-04, -6.048286718778144149e-04, -6.050449370056903801e-04, -6.052602054812379704e-04, -6.054744770173148055e-04, -6.056877513284543565e-04, -6.059000281307990506e-04, -6.061113071421498190e-04, -6.063215880819474487e-04, -6.065308706712605477e-04, -6.067391546327934601e-04, -6.069464396909071907e-04, -6.071527255716053107e-04, -6.073580120025122734e-04, -6.075622987129223121e-04, -6.077655854337414348e-04, -6.079678718975328527e-04, -6.081691578385062464e-04, -6.083694429925163563e-04, -6.085687270970446599e-04, -6.087670098912377524e-04, -6.089642911158599670e-04, -6.091605705133478019e-04, -6.093558478277604808e-04, -6.095501228048134544e-04, -6.097433951918768830e-04, -6.099356647379405080e-04, -6.101269311936509485e-04, -6.103171943113125690e-04, -6.105064538448690473e-04, -6.106947095499097719e-04, -6.108819611836569397e-04, -6.110682085050017686e-04, -6.112534512744824877e-04, -6.114376892542646054e-04, -6.116209222081869876e-04, -6.118031499017170804e-04, -6.119843721019815929e-04, -6.121645885777468729e-04, -6.123437990994460125e-04, -6.125220034391390574e-04, -6.126992013705610373e-04, -6.128753926690679726e-04, -6.130505771116914098e-04, -6.132247544770962457e-04, -6.133979245456111940e-04, -6.135700870992126304e-04, -6.137412419215261105e-04, -6.139113887978170456e-04, -6.140805275150235543e-04, -6.142486578617291403e-04, -6.144157796281584641e-04, -6.145818926062100859e-04, -6.147469965894058336e-04, -6.149110913729529272e-04, -6.150741767536827215e-04, -6.152362525301009050e-04, -6.153973185023628879e-04, -6.155573744722740194e-04, -6.157164202432821067e-04, -6.158744556205128680e-04, -6.160314804107296007e-04, -6.161874944223589851e-04, -6.163424974654862056e-04, -6.164964893518332665e-04, -6.166494698947915182e-04, -6.168014389094065870e-04, -6.169523962123868313e-04, -6.171023416220859951e-04, -6.172512749585050505e-04, -6.173991960433223387e-04, -6.175461046998659232e-04, -6.176920007531100116e-04, -6.178368840296994584e-04, -6.179807543579357793e-04, -6.181236115677619719e-04, -6.182654554907902715e-04, -6.184062859602927186e-04, -6.185461028111974725e-04, -6.186849058800906543e-04, -6.188226950052001926e-04, -6.189594700264386493e-04, -6.190952307853652727e-04, -6.192299771251918517e-04, -6.193637088908010395e-04, -6.194964259287265122e-04, -6.196281280871538365e-04, -6.197588152159444301e-04, -6.198884871666100835e-04, -6.200171437923170797e-04, -6.201447849479089624e-04, -6.202714104898617584e-04, -6.203970202763359112e-04, -6.205216141671377915e-04, -6.206451920237391045e-04, -6.207677537092767817e-04, -6.208892990885392111e-04, -6.210098280279689482e-04, -6.211293403956861343e-04, -6.212478360614668129e-04, -6.213653148967371830e-04, -6.214817767746020055e-04, -6.215972215698049213e-04, -6.217116491587704099e-04, -6.218250594195688782e-04, -6.219374522319489696e-04, -6.220488274773005926e-04, -6.221591850386963378e-04, -6.222685248008494102e-04, -6.223768466501499504e-04, -6.224841504746397728e-04, -6.225904361640303628e-04, -6.226957036096990826e-04, -6.227999527046652103e-04, -6.229031833436240919e-04, -6.230053954229360829e-04, -6.231065888406196089e-04, -6.232067634963569126e-04, -6.233059192914812592e-04, -6.234040561290007899e-04, -6.235011739135870286e-04, -6.235972725515646908e-04, -6.236923519509231760e-04, -6.237864120213281686e-04, -6.238794526740845583e-04, -6.239714738221720019e-04, -6.240624753802391771e-04, -6.241524572645840499e-04, -6.242414193931808712e-04, -6.243293616856483014e-04, -6.244162840632877911e-04, -6.245021864490500792e-04, -6.245870687675534076e-04, -6.246709309450826537e-04, -6.247537729095793560e-04, -6.248355945906439906e-04, -6.249163959195474637e-04, -6.249961768292298112e-04, -6.250749372542750443e-04, -6.251526771309503985e-04, -6.252293963971635067e-04, -6.253050949925106471e-04, -6.253797728582267609e-04, -6.254534299372267606e-04, -6.255260661740807016e-04, -6.255976815150262509e-04, -6.256682759079518815e-04, -6.257378493024211589e-04, -6.258064016496585379e-04, -6.258739329025476278e-04, -6.259404430156384567e-04, -6.260059319451369546e-04, -6.260703996489166631e-04, -6.261338460865130970e-04, -6.261962712191279732e-04, -6.262576750096199947e-04, -6.263180574225079948e-04, -6.263774184239809121e-04, -6.264357579818844541e-04, -6.264930760657311812e-04, -6.265493726466894470e-04, -6.266046476975999872e-04, -6.266589011929508740e-04, -6.267121331089034290e-04, -6.267643434232796464e-04, -6.268155321155611083e-04, -6.268656991668951654e-04, -6.269148445600784565e-04, -6.269629682795862906e-04, -6.270100703115447831e-04, -6.270561506437466849e-04, -6.271012092656424921e-04, -6.271452461683455415e-04, -6.271882613446314687e-04, -6.272302547889346304e-04, -6.272712264973547176e-04, -6.273111764676465646e-04, -6.273501046992316409e-04, -6.273880111931858005e-04, -6.274248959522540263e-04, -6.274607589808328667e-04, -6.274956002849845296e-04, -6.275294198724348229e-04, -6.275622177525623123e-04, -6.275939939364056936e-04, -6.276247484366698649e-04, -6.276544812677189869e-04, -6.276831924455707375e-04, -6.277108819879065023e-04, -6.277375499140682314e-04, -6.277631962450549693e-04, -6.277878210035245897e-04, -6.278114242137982411e-04, -6.278340059018485287e-04, -6.278555660953144763e-04, -6.278761048234882992e-04, -6.278956221173241864e-04, -6.279141180094310361e-04, -6.279315925340802620e-04, -6.279480457271979874e-04, -6.279634776263688396e-04, -6.279778882708344319e-04, -6.279912777014960744e-04, -6.280036459609105457e-04, -6.280149930932929113e-04, -6.280253191445140304e-04, -6.280346241621015315e-04, -6.280429081952402463e-04, -6.280501712947735102e-04, -6.280564135131953569e-04, -6.280616349046627689e-04, -6.280658355249814752e-04, -6.280690154316183110e-04, -6.280711746836935196e-04, -6.280723133419827044e-04, -6.280724314689173707e-04, -6.280715291285805888e-04, -6.280696063867133912e-04, -6.280666633107127124e-04, -6.280626999696247749e-04, -6.280577164341537635e-04, -6.280517127766542355e-04, -6.280446890711383848e-04, -6.280366453932678021e-04, -6.280275818203613896e-04, -6.280174984313861451e-04, -6.280063953069636674e-04, -6.279942725293727584e-04, -6.279811301825347861e-04, -6.279669683520311407e-04, -6.279517871250914164e-04, -6.279355865905963388e-04, -6.279183668390806924e-04, -6.279001279627257313e-04, -6.278808700553691535e-04, -6.278605932124915485e-04, -6.278392975312304921e-04, -6.278169831103707884e-04, -6.277936500503488067e-04, -6.277692984532435910e-04, -6.277439284227924726e-04, -6.277175400643753489e-04, -6.276901334850219479e-04, -6.276617087934133459e-04, -6.276322660998753539e-04, -6.276018055163815534e-04, -6.275703271565545973e-04, -6.275378311356628490e-04, -6.275043175706211413e-04, -6.274697865799940292e-04, -6.274342382839889591e-04, -6.273976728044619068e-04, -6.273600902649092460e-04, -6.273214907904809757e-04, -6.272818745079639146e-04, -6.272412415457978563e-04, -6.271995920340593059e-04, -6.271569261044730812e-04, -6.271132438904051566e-04, -6.270685455268705782e-04, -6.270228311505194772e-04, -6.269761008996517070e-04, -6.269283549142061094e-04, -6.268795933357658272e-04, -6.268298163075493052e-04, -6.267790239744280715e-04, -6.267272164829052698e-04, -6.266743939811282365e-04, -6.266205566188856818e-04, -6.265657045476023769e-04, -6.265098379203472853e-04, -6.264529568918286847e-04, -6.263950616183925398e-04, -6.263361522580196839e-04, -6.262762289703378534e-04, -6.262152919166029310e-04, -6.261533412597198710e-04, -6.260903771642172206e-04, -6.260263997962730318e-04, -6.259614093236963222e-04, -6.258954059159272916e-04, -6.258283897440532597e-04, -6.257603609807876324e-04, -6.256913198004826959e-04, -6.256212663791235447e-04, -6.255502008943317682e-04, -6.254781235253586199e-04, -6.254050344530944503e-04, -6.253309338600601414e-04, -6.252558219304076492e-04, -6.251796988499206537e-04, -6.251025648060169445e-04, -6.250244199877496134e-04, -6.249452645857935017e-04, -6.248650987924603793e-04, -6.247839228016913550e-04, -6.247017368090568767e-04, -6.246185410117512018e-04, -6.245343356086082267e-04, -6.244491208000853321e-04, -6.243628967882650094e-04, -6.242756637768606068e-04, -6.241874219712078729e-04, -6.240981715782825201e-04, -6.240079128066699761e-04, -6.239166458665922716e-04, -6.238243709698919944e-04, -6.237310883300371681e-04, -6.236367981621233122e-04, -6.235415006828682379e-04, -6.234451961106149756e-04, -6.233478846653237515e-04, -6.232495665685877087e-04, -6.231502420436081874e-04, -6.230499113152254079e-04, -6.229485746098854023e-04, -6.228462321556675532e-04, -6.227428841822618254e-04, -6.226385309209800422e-04, -6.225331726047591370e-04, -6.224268094681528057e-04, -6.223194417473271699e-04, -6.222110696800728109e-04, -6.221016935057981567e-04, -6.219913134655192903e-04, -6.218799298018828263e-04, -6.217675427591410828e-04, -6.216541525831695367e-04, -6.215397595214453572e-04, -6.214243638230777626e-04, -6.213079657387774466e-04, -6.211905655208734911e-04, -6.210721634233051271e-04, -6.209527597016297569e-04, -6.208323546130100528e-04, -6.207109484162179683e-04, -6.205885413716489413e-04, -6.204651337413006435e-04, -6.203407257887806787e-04, -6.202153177792988845e-04, -6.200889099796866311e-04, -6.199615026583829439e-04, -6.198330960854258297e-04, -6.197036905324600827e-04, -6.195732862727500786e-04, -6.194418835811520184e-04, -6.193094827341295416e-04, -6.191760840097616401e-04, -6.190416876877276970e-04, -6.189062940493028240e-04, -6.187699033773704383e-04, -6.186325159564167332e-04, -6.184941320725377252e-04, -6.183547520134185464e-04, -6.182143760683511159e-04, -6.180730045282330568e-04, -6.179306376855459026e-04, -6.177872758343841550e-04, -6.176429192704465006e-04, -6.174975682910147784e-04, -6.173512231949729529e-04, -6.172038842828101498e-04, -6.170555518565944185e-04, -6.169062262200161002e-04, -6.167559076783345933e-04, -6.166045965384209628e-04, -6.164522931087306184e-04, -6.162989976993119880e-04, -6.161447106218187692e-04, -6.159894321894865106e-04, -6.158331627171455139e-04, -6.156759025212076063e-04, -6.155176519196919448e-04, -6.153584112321912976e-04, -6.151981807799047864e-04, -6.150369608856018919e-04, -6.148747518736562799e-04, -6.147115540700127338e-04, -6.145473678022106813e-04, -6.143821933993865803e-04, -6.142160311922459457e-04, -6.140488815130802636e-04, -6.138807446957754476e-04, -6.137116210757929740e-04, -6.135415109901710745e-04, -6.133704147775506481e-04, -6.131983327781382904e-04, -6.130252653337236405e-04, -6.128512127876740686e-04, -6.126761754849386872e-04, -6.125001537720593022e-04, -6.123231479971350671e-04, -6.121451585098476372e-04, -6.119661856614671321e-04, -6.117862298048238386e-04, -6.116052912943342312e-04, -6.114233704859899131e-04, -6.112404677373552316e-04, -6.110565834075607720e-04, -6.108717178573202719e-04, -6.106858714489078526e-04, -6.104990445461883769e-04, -6.103112375145737555e-04, -6.101224507210690259e-04, -6.099326845342294178e-04, -6.097419393241805194e-04, -6.095502154626335645e-04, -6.093575133228550751e-04, -6.091638332796768356e-04, -6.089691757094901469e-04, -6.087735409902708715e-04, -6.085769295015348726e-04, -6.083793416243912485e-04, -6.081807777414830266e-04, -6.079812382370371453e-04, -6.077807234968283503e-04, -6.075792339081899276e-04, -6.073767698600313764e-04, -6.071733317428165081e-04, -6.069689199485540140e-04, -6.067635348708283645e-04, -6.065571769047682594e-04, -6.063498464470560602e-04, -6.061415438959520761e-04, -6.059322696512532561e-04, -6.057220241143118373e-04, -6.055108076880329595e-04, -6.052986207768755325e-04, -6.050854637868668734e-04, -6.048713371255612890e-04, -6.046562412020691337e-04, -6.044401764270643978e-04, -6.042231432127539168e-04, -6.040051419728920080e-04, -6.037861731227980346e-04, -6.035662370793271319e-04, -6.033453342608777973e-04, -6.031234650873913477e-04, -6.029006299803554977e-04, -6.026768293628172613e-04, -6.024520636593476072e-04, -6.022263332960549028e-04, -6.019996387006124527e-04, -6.017719803022033133e-04, -6.015433585315803572e-04, -6.013137738210217126e-04, -6.010832266043390033e-04, -6.008517173168793002e-04, -6.006192463955404084e-04, -6.003858142787354144e-04, -6.001514214064394143e-04, -5.999160682201332443e-04, -5.996797551628523784e-04, -5.994424826791493058e-04, -5.992042512151046990e-04, -5.989650612183549522e-04, -5.987249131380487045e-04, -5.984838074248609351e-04, -5.982417445309927461e-04, -5.979987249101912034e-04, -5.977547490177000057e-04, -5.975098173103273553e-04, -5.972639302463686548e-04, -5.970170882856701495e-04, -5.967692918895805719e-04, -5.965205415209848608e-04, -5.962708376442842116e-04, -5.960201807254087618e-04, -5.957685712317897266e-04, -5.955160096323981050e-04, -5.952624963977079259e-04, -5.950080319997063305e-04, -5.947526169119206774e-04, -5.944962516093795120e-04, -5.942389365686201550e-04, -5.939806722676917389e-04, -5.937214591861660496e-04, -5.934612978051386108e-04, -5.932001886071909535e-04, -5.929381320764194564e-04, -5.926751286984469460e-04, -5.924111789603869185e-04, -5.921462833508553576e-04, -5.918804423600042362e-04, -5.916136564794717513e-04, -5.913459262023919739e-04, -5.910772520234254231e-04, -5.908076344387039889e-04, -5.905370739459053081e-04, -5.902655710441663539e-04, -5.899931262341566191e-04, -5.897197400180203284e-04, -5.894454128994015916e-04, -5.891701453834677143e-04, -5.888939379768659381e-04, -5.886167911877328730e-04, -5.883387055257020869e-04, -5.880596815019149479e-04, -5.877797196289798578e-04, -5.874988204210361119e-04, -5.872169843936743188e-04, -5.869342120640058972e-04, -5.866505039506097335e-04, -5.863658605735520227e-04, -5.860802824544110966e-04, -5.857937701162389344e-04, -5.855063240835612715e-04, -5.852179448823938623e-04, -5.849286330402533223e-04, -5.846383890861038936e-04, -5.843472135504338815e-04, -5.840551069651907104e-04, -5.837620698637949104e-04, -5.834681027811487904e-04, -5.831732062536366555e-04, -5.828773808191379255e-04, -5.825806270169796471e-04, -5.822829453879645742e-04, -5.819843364743959970e-04, -5.816848008200232057e-04, -5.813843389700668616e-04, -5.810829514712479446e-04, -5.807806388717392902e-04, -5.804774017211762139e-04, -5.801732405706626914e-04, -5.798681559727740693e-04, -5.795621484815751713e-04, -5.792552186525584982e-04, -5.789473670426918250e-04, -5.786385942104227539e-04, -5.783289007156286248e-04, -5.780182871196951197e-04, -5.777067539854211778e-04, -5.773943018770983596e-04, -5.770809313604494811e-04, -5.767666430026814140e-04, -5.764514373724214432e-04, -5.761353150398015096e-04, -5.758182765763604147e-04, -5.755003225551227506e-04, -5.751814535505450155e-04, -5.748616701385294908e-04, -5.745409728964575267e-04, -5.742193624031461741e-04, -5.738968392388466662e-04, -5.735734039852635009e-04, -5.732490572255609460e-04, -5.729237995443175026e-04, -5.725976315276052686e-04, -5.722705537628879156e-04, -5.719425668391022203e-04, -5.716136713466144804e-04, -5.712838678772140088e-04, -5.709531570241679942e-04, -5.706215393821572083e-04, -5.702890155472916181e-04, -5.699555861171349972e-04, -5.696212516906712072e-04, -5.692860128683074504e-04, -5.689498702519195893e-04, -5.686128244447928408e-04, -5.682748760516346783e-04, -5.679360256785817703e-04, -5.675962739332072451e-04, -5.672556214245307732e-04, -5.669140687629605629e-04, -5.665716165603420411e-04, -5.662282654299591539e-04, -5.658840159864861200e-04, -5.655388688460685287e-04, -5.651928246262202327e-04, -5.648458839459117101e-04, -5.644980474255109756e-04, -5.641493156867991932e-04, -5.637996893529826021e-04, -5.634491690487067198e-04, -5.630977553999916155e-04, -5.627454490342756032e-04, -5.623922505804344321e-04, -5.620381606687139577e-04, -5.616831799308149263e-04, -5.613273089998238033e-04, -5.609705485102286018e-04, -5.606128990979183414e-04, -5.602543614002156820e-04, -5.598949360558020056e-04, -5.595346237048218251e-04, -5.591734249887591853e-04, -5.588113405505467333e-04, -5.584483710344841870e-04, -5.580845170862668491e-04, -5.577197793530216030e-04, -5.573541584832509676e-04, -5.569876551268444819e-04, -5.566202699350824993e-04, -5.562520035606628591e-04, -5.558828566576321482e-04, -5.555128298814877245e-04, -5.551419238890557438e-04, -5.547701393385927500e-04, -5.543974768897064198e-04, -5.540239372034167116e-04, -5.536495209421179184e-04, -5.532742287695964489e-04, -5.528980613509978676e-04, -5.525210193528755755e-04, -5.521431034431436473e-04, -5.517643142910846378e-04, -5.513846525673955518e-04, -5.510041189441310322e-04, -5.506227140947070461e-04, -5.502404386939162804e-04, -5.498572934179311780e-04, -5.494732789443184653e-04, -5.490883959519776789e-04, -5.487026451211791120e-04, -5.483160271335929797e-04, -5.479285426722101636e-04, -5.475401924214430430e-04, -5.471509770670159901e-04, -5.467608972960523233e-04, -5.463699537970057854e-04, -5.459781472597254872e-04, -5.455854783753742677e-04, -5.451919478365350536e-04, -5.447975563370882363e-04, -5.444023045723085999e-04, -5.440061932388067737e-04, -5.436092230345302085e-04, -5.432113946588264936e-04, -5.428127088123663787e-04, -5.424131661971617717e-04, -5.420127675165722437e-04, -5.416115134753303993e-04, -5.412094047794728134e-04, -5.408064421364406444e-04, -5.404026262549561444e-04, -5.399979578451298860e-04, -5.395924376183851940e-04, -5.391860662874771188e-04, -5.387788445665420926e-04, -5.383707731710266975e-04, -5.379618528177078319e-04, -5.375520842246943364e-04, -5.371414681114561589e-04, -5.367300051987504124e-04, -5.363176962087187359e-04, -5.359045418648044614e-04, -5.354905428917733226e-04, -5.350757000157164902e-04, -5.346600139640568603e-04, -5.342434854655752925e-04, -5.338261152503253910e-04, -5.334079040496953047e-04, -5.329888525964192195e-04, -5.325689616245058008e-04, -5.321482318693458551e-04, -5.317266640675835264e-04, -5.313042589572246083e-04, -5.308810172775606500e-04, -5.304569397691973618e-04, -5.300320271740602534e-04, -5.296062802354148001e-04, -5.291796996977871873e-04, -5.287522863070232915e-04, -5.283240408103029914e-04, -5.278949639560622138e-04, -5.274650564941098111e-04, -5.270343191754908426e-04, -5.266027527525960795e-04, -5.261703579790838340e-04, -5.257371356099441433e-04, -5.253030864014214671e-04, -5.248682111111187699e-04, -5.244325104978700197e-04, -5.239959853218495835e-04, -5.235586363444949239e-04, -5.231204643285269820e-04, -5.226814700380022190e-04, -5.222416542382378067e-04, -5.218010176958259383e-04, -5.213595611786473816e-04, -5.209172854558955477e-04, -5.204741912979959353e-04, -5.200302794767277777e-04, -5.195855507650782180e-04, -5.191400059373661247e-04, -5.186936457691457064e-04, -5.182464710372785026e-04, -5.177984825198922924e-04, -5.173496809963951896e-04, -5.169000672474394296e-04, -5.164496420549885905e-04, -5.159984062022267368e-04, -5.155463604736730196e-04, -5.150935056550455006e-04, -5.146398425333772704e-04, -5.141853718969366513e-04, -5.137300945352527839e-04, -5.132740112391296142e-04, -5.128171228006552168e-04, -5.123594300131322984e-04, -5.119009336711275284e-04, -5.114416345704953914e-04, -5.109815335082925356e-04, -5.105206312829015883e-04, -5.100589286938861985e-04, -5.095964265421080216e-04, -5.091331256296519102e-04, -5.086690267598454294e-04, -5.082041307372780472e-04, -5.077384383678095912e-04, -5.072719504584853557e-04, -5.068046678176418114e-04, -5.063365912548288680e-04, -5.058677215808219090e-04, -5.053980596076867353e-04, -5.049276061486943469e-04, -5.044563620183424102e-04, -5.039843280323604621e-04, -5.035115050077428695e-04, -5.030378937626623108e-04, -5.025634951165923979e-04, -5.020883098901641290e-04, -5.016123389052873187e-04, -5.011355829850629943e-04, -5.006580429538096339e-04, -5.001797196371179184e-04, -4.997006138617665974e-04, -4.992207264557482933e-04, -4.987400582482690676e-04, -4.982586100697659849e-04, -4.977763827519195812e-04, -4.972933771275745004e-04, -4.968095940307959814e-04, -4.963250342968954449e-04, -4.958396987623473352e-04, -4.953535882648586177e-04, -4.948667036433732243e-04, -4.943790457379875934e-04, -4.938906153900144216e-04, -4.934014134419974088e-04, -4.929114407376297257e-04, -4.924206981218802156e-04, -4.919291864408381360e-04, -4.914369065418449983e-04, -4.909438592734041446e-04, -4.904500454852139249e-04, -4.899554660281734428e-04, -4.894601217544065170e-04, -4.889640135171732099e-04, -4.884671421709300011e-04, -4.879695085713545611e-04, -4.874711135752522392e-04, -4.869719580406906131e-04, -4.864720428268446101e-04, -4.859713687941182633e-04, -4.854699368040565118e-04, -4.849677477194238055e-04, -4.844648024041053338e-04, -4.839611017232366965e-04, -4.834566465430533626e-04, -4.829514377310162743e-04, -4.824454761557193114e-04, -4.819387626869190517e-04, -4.814312981955921802e-04, -4.809230835538498366e-04, -4.804141196349531739e-04, -4.799044073133275075e-04, -4.793939474645958162e-04, -4.788827409654798097e-04, -4.783707886939407659e-04, -4.778580915290182017e-04, -4.773446503509610615e-04, -4.768304660411417403e-04, -4.763155394820711534e-04, -4.757998715574654155e-04, -4.752834631521619230e-04, -4.747663151521291664e-04, -4.742484284444820172e-04, -4.737298039174958771e-04, -4.732104424606171944e-04, -4.726903449643718490e-04, -4.721695123204780182e-04, -4.716479454217605786e-04, -4.711256451621812467e-04, -4.706026124368494217e-04, -4.700788481420396401e-04, -4.695543531751064127e-04, -4.690291284345430960e-04, -4.685031748200079132e-04, -4.679764932322300628e-04, -4.674490845731449178e-04, -4.669209497457328596e-04, -4.663920896541542071e-04, -4.658625052036577635e-04, -4.653321973006099821e-04, -4.648011668525112291e-04, -4.642694147680117211e-04, -4.637369419568162241e-04, -4.632037493297623326e-04, -4.626698377988270835e-04, -4.621352082770472671e-04, -4.615998616786449234e-04, -4.610637989188721389e-04, -4.605270209141432646e-04, -4.599895285819307787e-04, -4.594513228408596121e-04, -4.589124046105931445e-04, -4.583727748119820655e-04, -4.578324343668889506e-04, -4.572913841983347908e-04, -4.567496252303997889e-04, -4.562071583882446090e-04, -4.556639845981827475e-04, -4.551201047875822500e-04, -4.545755198848890760e-04, -4.540302308196346882e-04, -4.534842385224511227e-04, -4.529375439250878490e-04, -4.523901479603174435e-04, -4.518420515620084487e-04, -4.512932556651402805e-04, -4.507437612057274968e-04, -4.501935691208909756e-04, -4.496426803488196965e-04, -4.490910958287852692e-04, -4.485388165010960717e-04, -4.479858433071754213e-04, -4.474321771894592802e-04, -4.468778190915310760e-04, -4.463227699579557645e-04, -4.457670307344240826e-04, -4.452106023676503628e-04, -4.446534858054110220e-04, -4.440956819965505785e-04, -4.435371918910097338e-04, -4.429780164397243238e-04, -4.424181565946922693e-04, -4.418576133090039329e-04, -4.412963875367385781e-04, -4.407344802331107907e-04, -4.401718923542942419e-04, -4.396086248575718498e-04, -4.390446787012350577e-04, -4.384800548446143539e-04, -4.379147542480954264e-04, -4.373487778731403050e-04, -4.367821266821750922e-04, -4.362148016387223438e-04, -4.356468037073040335e-04, -4.350781338534597670e-04, -4.345087930438243026e-04, -4.339387822460249317e-04, -4.333681024287005601e-04, -4.327967545615230677e-04, -4.322247396151950309e-04, -4.316520585614832249e-04, -4.310787123731111246e-04, -4.305047020238363174e-04, -4.299300284884699096e-04, -4.293546927428026384e-04, -4.287786957636280740e-04, -4.282020385288153150e-04, -4.276247220172066398e-04, -4.270467472086411967e-04, -4.264681150839673635e-04, -4.258888266250525595e-04, -4.253088828148036829e-04, -4.247282846370734901e-04, -4.241470330767239667e-04, -4.235651291196560354e-04, -4.229825737527191870e-04, -4.223993679637829302e-04, -4.218155127417520778e-04, -4.212310090764568638e-04, -4.206458579587382695e-04, -4.200600603804583778e-04, -4.194736173344082160e-04, -4.188865298144511416e-04, -4.182987988153486110e-04, -4.177104253329097993e-04, -4.171214103638824756e-04, -4.165317549059979426e-04, -4.159414599579775427e-04, -4.153505265195571059e-04, -4.147589555913817286e-04, -4.141667481750838358e-04, -4.135739052733051362e-04, -4.129804278895931897e-04, -4.123863170285541166e-04, -4.117915736956666577e-04, -4.111961988974422561e-04, -4.106001936413014044e-04, -4.100035589356791372e-04, -4.094062957899030045e-04, -4.088084052143499013e-04, -4.082098882202627832e-04, -4.076107458199022923e-04, -4.070109790264444627e-04, -4.064105888540016451e-04, -4.058095763177004076e-04, -4.052079424335765299e-04, -4.046056882185989647e-04, -4.040028146906780773e-04, -4.033993228686824509e-04, -4.027952137724600287e-04, -4.021904884227303439e-04, -4.015851478411657264e-04, -4.009791930504102227e-04, -4.003726250740061946e-04, -3.997654449364109082e-04, -3.991576536630798543e-04, -3.985492522803573529e-04, -3.979402418154871779e-04, -3.973306232966925173e-04, -3.967203977530519947e-04, -3.961095662146618657e-04, -3.954981297124404282e-04, -3.948860892782942301e-04, -3.942734459450050960e-04, -3.936602007462708386e-04, -3.930463547167129023e-04, -3.924319088919074258e-04, -3.918168643082690157e-04, -3.912012220031381329e-04, -3.905849830147969221e-04, -3.899681483823685979e-04, -3.893507191459690702e-04, -3.887326963465244194e-04, -3.881140810259255569e-04, -3.874948742269173664e-04, -3.868750769931460286e-04, -3.862546903691604309e-04, -3.856337154004425795e-04, -3.850121531332997751e-04, -3.843900046149388810e-04, -3.837672708934929946e-04, -3.831439530179147615e-04, -3.825200520381217130e-04, -3.818955690048717998e-04, -3.812705049697854014e-04, -3.806448609853656543e-04, -3.800186381050021391e-04, -3.793918373830023759e-04, -3.787644598744758693e-04, -3.781365066354182964e-04, -3.775079787227339501e-04, -3.768788771941543152e-04, -3.762492031082633847e-04, -3.756189575245744757e-04, -3.749881415034247360e-04, -3.743567561059974250e-04, -3.737248023943319964e-04, -3.730922814313410120e-04, -3.724591942808319883e-04, -3.718255420073955067e-04, -3.711913256764874506e-04, -3.705565463544571942e-04, -3.699212051084437361e-04, -3.692853030064741993e-04, -3.686488411174062055e-04, -3.680118205109531916e-04, -3.673742422576284643e-04, -3.667361074288386590e-04, -3.660974170967580261e-04, -3.654581723344926336e-04, -3.648183742158865117e-04, -3.641780238156820605e-04, -3.635371222094131477e-04, -3.628956704734375804e-04, -3.622536696849568377e-04, -3.616111209220357488e-04, -3.609680252634936393e-04, -3.603243837889839114e-04, -3.596801975790207156e-04, -3.590354677148650006e-04, -3.583901952786935408e-04, -3.577443813533953774e-04, -3.570980270227410076e-04, -3.564511333712725555e-04, -3.558037014843226913e-04, -3.551557324481012046e-04, -3.545072273495816512e-04, -3.538581872765108401e-04, -3.532086133174921539e-04, -3.525585065618868871e-04, -3.519078680998382063e-04, -3.512566990223549052e-04, -3.506050004212006533e-04, -3.499527733889111806e-04, -3.493000190188155817e-04, -3.486467384050430927e-04, -3.479929326425551831e-04, -3.473386028270215777e-04, -3.466837500549133891e-04, -3.460283754235219289e-04, -3.453724800308760915e-04, -3.447160649757668028e-04, -3.440591313578329432e-04, -3.434016802774427358e-04, -3.427437128357213939e-04, -3.420852301345646729e-04, -3.414262332766494963e-04, -3.407667233654636078e-04, -3.401067015051838162e-04, -3.394461688007675013e-04, -3.387851263579731058e-04, -3.381235752832609850e-04, -3.374615166838766190e-04, -3.367989516678642197e-04, -3.361358813439484445e-04, -3.354723068216199935e-04, -3.348082292111624982e-04, -3.341436496235335304e-04, -3.334785691705393750e-04, -3.328129889646277311e-04, -3.321469101190606421e-04, -3.314803337477966968e-04, -3.308132609655343981e-04, -3.301456928877190473e-04, -3.294776306305794984e-04, -3.288090753110015237e-04, -3.281400280466153629e-04, -3.274704899558252133e-04, -3.268004621576901304e-04, -3.261299457720953318e-04, -3.254589419195468491e-04, -3.247874517213473317e-04, -3.241154762994586237e-04, -3.234430167766041671e-04, -3.227700742762093164e-04, -3.220966499224292025e-04, -3.214227448400838434e-04, -3.207483601547656969e-04, -3.200734969927287467e-04, -3.193981564809202697e-04, -3.187223397470673007e-04, -3.180460479195516246e-04, -3.173692821274427898e-04, -3.166920435005113896e-04, -3.160143331692377906e-04, -3.153361522648407008e-04, -3.146575019191625699e-04, -3.139783832647468384e-04, -3.132987974348743669e-04, -3.126187455634680807e-04, -3.119382287851222972e-04, -3.112572482351892451e-04, -3.105758050496590437e-04, -3.098939003651706532e-04, -3.092115353191028388e-04, -3.085287110494346345e-04, -3.078454286949253204e-04, -3.071616893949010514e-04, -3.064774942894334261e-04, -3.057928445192196814e-04, -3.051077412256202612e-04, -3.044221855506793611e-04, -3.037361786371481852e-04, -3.030497216283627019e-04, -3.023628156683339039e-04, -3.016754619017762143e-04, -3.009876614739830200e-04, -3.002994155310065956e-04, -2.996107252194467915e-04, -2.989215916866281935e-04, -2.982320160804769566e-04, -2.975419995495492118e-04, -2.968515432431245238e-04, -2.961606483110760580e-04, -2.954693159039025645e-04, -2.947775471727416053e-04, -2.940853432694114588e-04, -2.933927053462908816e-04, -2.926996345564809800e-04, -2.920061320536684922e-04, -2.913121989921534896e-04, -2.906178365268623871e-04, -2.899230458133625799e-04, -2.892278280078901449e-04, -2.885321842672242901e-04, -2.878361157487818430e-04, -2.871396236106389882e-04, -2.864427090114443153e-04, -2.857453731104429417e-04, -2.850476170675678026e-04, -2.843494420433174074e-04, -2.836508491987789330e-04, -2.829518396956495286e-04, -2.822524146962421699e-04, -2.815525753635189990e-04, -2.808523228609646890e-04, -2.801516583526785474e-04, -2.794505830034009161e-04, -2.787490979784044802e-04, -2.780472044436019296e-04, -2.773449035654775453e-04, -2.766421965111231411e-04, -2.759390844481686748e-04, -2.752355685448896918e-04, -2.745316499700684401e-04, -2.738273298931748223e-04, -2.731226094841499898e-04, -2.724174899135888136e-04, -2.717119723526137376e-04, -2.710060579729060577e-04, -2.702997479467936334e-04, -2.695930434471283197e-04, -2.688859456473122580e-04, -2.681784557213137601e-04, -2.674705748437094838e-04, -2.667623041895599663e-04, -2.660536449345954563e-04, -2.653445982549911051e-04, -2.646351653275593580e-04, -2.639253473296002800e-04, -2.632151454390141507e-04, -2.625045608342334844e-04, -2.617935946942555564e-04, -2.610822481985753990e-04, -2.603705225272947643e-04, -2.596584188610092585e-04, -2.589459383808384281e-04, -2.582330822685198154e-04, -2.575198517062773896e-04, -2.568062478768550492e-04, -2.560922719635266506e-04, -2.553779251501137352e-04, -2.546632086210119292e-04, -2.539481235610647428e-04, -2.532326711556541553e-04, -2.525168525907329239e-04, -2.518006690527258137e-04, -2.510841217285602256e-04, -2.503672118057589501e-04, -2.496499404723115812e-04, -2.489323089167031931e-04, -2.482143183279307119e-04, -2.474959698955144080e-04, -2.467772648095283082e-04, -2.460582042604561592e-04, -2.453387894393631655e-04, -2.446190215377670773e-04, -2.438989017476852182e-04, -2.431784312616461403e-04, -2.424576112727217165e-04, -2.417364429743957079e-04, -2.410149275606589573e-04, -2.402930662260399901e-04, -2.395708601654722816e-04, -2.388483105744859160e-04, -2.381254186489841060e-04, -2.374021855854279947e-04, -2.366786125807112133e-04, -2.359547008321873931e-04, -2.352304515377656832e-04, -2.345058658957795898e-04, -2.337809451050173602e-04, -2.330556903647367558e-04, -2.323301028747099645e-04, -2.316041838350933616e-04, -2.308779344466207410e-04, -2.301513559103717302e-04, -2.294244494279672176e-04, -2.286972162014201660e-04, -2.279696574332303993e-04, -2.272417743264002420e-04, -2.265135680843008371e-04, -2.257850399107696972e-04, -2.250561910101397608e-04, -2.243270225871396464e-04, -2.235975358469266387e-04, -2.228677319951783580e-04, -2.221376122379632256e-04, -2.214071777817721220e-04, -2.206764298335295272e-04, -2.199453696006099736e-04, -2.192139982908667230e-04, -2.184823171125036955e-04, -2.177503272741649969e-04, -2.170180299849712132e-04, -2.162854264543996054e-04, -2.155525178923978701e-04, -2.148193055093172710e-04, -2.140857905159417767e-04, -2.133519741234224127e-04, -2.126178575433876057e-04, -2.118834419877962743e-04, -2.111487286691312237e-04, -2.104137188001672888e-04, -2.096784135941665180e-04, -2.089428142647453039e-04, -2.082069220259050938e-04, -2.074707380921277718e-04, -2.067342636782443894e-04, -2.059974999994638426e-04, -2.052604482713892974e-04, -2.045231097100630219e-04, -2.037854855318356581e-04, -2.030475769535602406e-04, -2.023093851923583333e-04, -2.015709114658190896e-04, -2.008321569918615859e-04, -2.000931229887699218e-04, -1.993538106752851887e-04, -1.986142212704763673e-04, -1.978743559937517669e-04, -1.971342160649566572e-04, -1.963938027042563914e-04, -1.956531171321674147e-04, -1.949121605696537037e-04, -1.941709342379918917e-04, -1.934294393588045812e-04, -1.926876771540727846e-04, -1.919456488461515099e-04, -1.912033556578008231e-04, -1.904607988120501872e-04, -1.897179795322978567e-04, -1.889748990423403135e-04, -1.882315585662710838e-04, -1.874879593285138605e-04, -1.867441025539167201e-04, -1.859999894676186581e-04, -1.852556212950819516e-04, -1.845109992621076910e-04, -1.837661245948446162e-04, -1.830209985198281476e-04, -1.822756222638390608e-04, -1.815299970540051031e-04, -1.807841241178305923e-04, -1.800380046830607830e-04, -1.792916399778813870e-04, -1.785450312306827321e-04, -1.777981796702559486e-04, -1.770510865256436474e-04, -1.763037530262693739e-04, -1.755561804017862805e-04, -1.748083698822751558e-04, -1.740603226980088551e-04, -1.733120400796501397e-04, -1.725635232581168566e-04, -1.718147734646130822e-04, -1.710657919307257248e-04, -1.703165798882923330e-04, -1.695671385694292579e-04, -1.688174692065471576e-04, -1.680675730324009782e-04, -1.673174512799508243e-04, -1.665671051825634574e-04, -1.658165359737756421e-04, -1.650657448874909012e-04, -1.643147331578297067e-04, -1.635635020192421278e-04, -1.628120527064415323e-04, -1.620603864544322066e-04, -1.613085044984447099e-04, -1.605564080740475475e-04, -1.598040984170308082e-04, -1.590515767634349776e-04, -1.582988443496501692e-04, -1.575459024122826323e-04, -1.567927521881818569e-04, -1.560393949144589509e-04, -1.552858318284993527e-04, -1.545320641679955194e-04, -1.537780931708094233e-04, -1.530239200750728131e-04, -1.522695461192171383e-04, -1.515149725418721760e-04, -1.507602005818965783e-04, -1.500052314784772938e-04, -1.492500664709916840e-04, -1.484947067990420285e-04, -1.477391537024678840e-04, -1.469834084213605865e-04, -1.462274721960965898e-04, -1.454713462671835091e-04, -1.447150318754425382e-04, -1.439585302618714329e-04, -1.432018426676785825e-04, -1.424449703343780673e-04, -1.416879145036571144e-04, -1.409306764174042602e-04, -1.401732573177269145e-04, -1.394156584469973307e-04, -1.386578810477177035e-04, -1.378999263627199608e-04, -1.371417956349269679e-04, -1.363834901075533762e-04, -1.356250110239692029e-04, -1.348663596277302164e-04, -1.341075371626780893e-04, -1.333485448728032464e-04, -1.325893840022769577e-04, -1.318300557954649990e-04, -1.310705614969773084e-04, -1.303109023515302385e-04, -1.295510796041476757e-04, -1.287910944999229497e-04, -1.280309482842180012e-04, -1.272706422025104013e-04, -1.265101775004928535e-04, -1.257495554240872890e-04, -1.249887772193080402e-04, -1.242278441323621020e-04, -1.234667574096784328e-04, -1.227055182978072589e-04, -1.219441280434504322e-04, -1.211825878935602962e-04, -1.204208990952045262e-04, -1.196590628955950100e-04, -1.188970805421054390e-04, -1.181349532822845356e-04, -1.173726823638880098e-04, -1.166102690347415298e-04, -1.158477145428406718e-04, -1.150850201363816302e-04, -1.143221870636246620e-04, -1.135592165730946103e-04, -1.127961099133419461e-04, -1.120328683331447007e-04, -1.112694930813529372e-04, -1.105059854070222563e-04, -1.097423465592603953e-04, -1.089785777874278461e-04, -1.082146803408973521e-04, -1.074506554692579007e-04, -1.066865044221749158e-04, -1.059222284494221601e-04, -1.051578288009834061e-04, -1.043933067269125879e-04, -1.036286634773665846e-04, -1.028639003026202094e-04, -1.020990184531144157e-04, -1.013340191793195798e-04, -1.005689037319366333e-04, -9.980367336165651981e-05, -9.903832931936356373e-05, -9.827287285599583893e-05, -9.750730522257850777e-05, -9.674162767032289014e-05, -9.597584145048917634e-05, -9.520994781439996604e-05, -9.444394801354202070e-05, -9.367784329944419590e-05, -9.291163492370943890e-05, -9.214532413811502313e-05, -9.137891219447451566e-05, -9.061240034466902938e-05, -8.984578984066389257e-05, -8.907908193452092750e-05, -8.831227787843355149e-05, -8.754537892458615588e-05, -8.677838632525520786e-05, -8.601130133284119381e-05, -8.524412519973035640e-05, -8.447685917849683055e-05, -8.370950452166256038e-05, -8.294206248189897439e-05, -8.217453431188945440e-05, -8.140692126437792139e-05, -8.063922459218339088e-05, -7.987144554823350190e-05, -7.910358538542457357e-05, -7.833564535672242241e-05, -7.756762671519502384e-05, -7.679953071387273151e-05, -7.603135860593489552e-05, -7.526311164455436078e-05, -7.449479108292870555e-05, -7.372639817429594883e-05, -7.295793417198332591e-05, -7.218940032926920167e-05, -7.142079789958524717e-05, -7.065212813627584165e-05, -6.988339229280091320e-05, -6.911459162259693046e-05, -6.834572737910918480e-05, -6.757680081589253975e-05, -6.680781318647230078e-05, -6.603876574437668717e-05, -6.526965974315150935e-05, -6.450049643640967635e-05, -6.373127707769248561e-05, -6.296200292067257213e-05, -6.219267521891229400e-05, -6.142329522606735910e-05, -6.065386419573053740e-05, -5.988438338154924940e-05, -5.911485403715587234e-05, -5.834527741619866697e-05, -5.757565477227234805e-05, -5.680598735903553048e-05, -5.603627643008844488e-05, -5.526652323900592444e-05, -5.449672903943729381e-05, -5.372689508496799780e-05, -5.295702262915150403e-05, -5.218711292552444112e-05, -5.141716722762138447e-05, -5.064718678900776181e-05, -4.987717286314022151e-05, -4.910712670346774800e-05, -4.833704956346323233e-05, -4.756694269648520260e-05, -4.679680735598103046e-05, -4.602664479524480173e-05, -4.525645626762122089e-05, -4.448624302634909979e-05, -4.371600632469686929e-05, -4.294574741580568848e-05, -4.217546755289351863e-05, -4.140516798901296662e-05, -4.063484997725489811e-05, -3.986451477060932086e-05, -3.909416362199771426e-05, -3.832379778437390762e-05, -3.755341851058454326e-05, -3.678302705340176531e-05, -3.601262466553778181e-05, -3.524221259969521241e-05, -3.447179210842674514e-05, -3.370136444433963050e-05, -3.293093085985340296e-05, -3.216049260740354152e-05, -3.139005093930237337e-05, -3.061960710777100362e-05, -2.984916236504091866e-05, -2.907871796321370386e-05, -2.830827515429436254e-05, -2.753783519020568837e-05, -2.676739932283817258e-05, -2.599696880391031467e-05, -2.522654488515568792e-05, -2.445612881816632982e-05, -2.368572185442498009e-05, -2.291532524532025956e-05, -2.214494024216178458e-05, -2.137456809621271345e-05, -2.060421005854984030e-05, -1.983386738016519154e-05, -1.906354131199790151e-05, -1.829323310479498727e-05, -1.752294400931538198e-05, -1.675267527608754109e-05, -1.598242815561325887e-05, -1.521220389822863978e-05, -1.444200375415321791e-05, -1.367182897350535773e-05, -1.290168080633437188e-05, -1.213156050248138079e-05, -1.136146931168008586e-05, -1.059140848358911766e-05, -9.821379267652809104e-06, -9.051382913305042421e-06, -8.281420669726894388e-06, -7.511493786050730609e-06, -6.741603511203526447e-06, -5.971751094042293188e-06, -5.201937783197514171e-06, -4.432164827277156901e-06, -3.662433474624221310e-06, -2.892744973520855212e-06, -2.123100572048906845e-06, -1.353501518122266073e-06, -5.839490595878549596e-07, 1.855555559137512422e-07, 9.550110809159769029e-07, 1.724416268111110282e-06, 2.493769870300841460e-06, 3.263070640535567869e-06, 4.032317331910483125e-06, 4.801508697807832472e-06, 5.570643491693016076e-06, 6.339720467253887399e-06, 7.108738378368419839e-06, 7.877695979003816629e-06, 8.646592023355730025e-06, 9.415425265833223082e-06, 1.018419446095771015e-05, 1.095289836351945045e-05, 1.172153572837367741e-05, 1.249010531068284160e-05, 1.325860586571261812e-05, 1.402703614897132313e-05, 1.479539491616036581e-05, 1.556368092315906781e-05, 1.633189292599256922e-05, 1.710002968097073010e-05, 1.786808994458757746e-05, 1.863607247348878434e-05, 1.940397602461090167e-05, 2.017179935497764683e-05, 2.093954122194198908e-05, 2.170720038298232634e-05, 2.247477559584170007e-05, 2.324226561847837606e-05, 2.400966920905060458e-05, 2.477698512588458557e-05, 2.554421212761339224e-05, 2.631134897307593361e-05, 2.707839442128539398e-05, 2.784534723156741122e-05, 2.861220616337441044e-05, 2.937896997644121754e-05, 3.014563743075325146e-05, 3.091220728653090819e-05, 3.167867830418058880e-05, 3.244504924443360265e-05, 3.321131886814244577e-05, 3.397748593652302523e-05, 3.474354921095061227e-05, 3.550950745309923001e-05, 3.627535942490908000e-05, 3.704110388848613831e-05, 3.780673960624091306e-05, 3.857226534085641981e-05, 3.933767985527256226e-05, 4.010298191267163109e-05, 4.086817027644572362e-05, 4.163324371033563694e-05, 4.239820097833019971e-05, 4.316304084463420010e-05, 4.392776207379010106e-05, 4.469236343056001812e-05, 4.545684367999659232e-05, 4.622120158741022702e-05, 4.698543591844006243e-05, 4.774954543893566208e-05, 4.851352891511358516e-05, 4.927738511335340744e-05, 5.004111280043972194e-05, 5.080471074335883076e-05, 5.156817770943709597e-05, 5.233151246629204215e-05, 5.309471378181719110e-05, 5.385778042414992878e-05, 5.462071116180983600e-05, 5.538350476359867747e-05, 5.614615999856763186e-05, 5.690867563615657787e-05, 5.767105044599032520e-05, 5.843328319812075080e-05, 5.919537266282283330e-05, 5.995731761075076462e-05, 6.071911681280323781e-05, 6.148076904027959249e-05, 6.224227306467601875e-05, 6.300362765792695476e-05, 6.376483159220270008e-05, 6.452588364004706192e-05, 6.528678257434589974e-05, 6.604752716822618599e-05, 6.680811619519524481e-05, 6.756854842910753475e-05, 6.832882264415036445e-05, 6.908893761479461561e-05, 6.984889211593250447e-05, 7.060868492267617766e-05, 7.136831481059687367e-05, 7.212778055552345098e-05, 7.288708093368040700e-05, 7.364621472165537911e-05, 7.440518069629931672e-05, 7.516397763486479841e-05, 7.592260431497364133e-05, 7.668105951460126165e-05, 7.743934201206337947e-05, 7.819745058598244925e-05, 7.895538401544272781e-05, 7.971314107980605483e-05, 8.047072055884931614e-05, 8.122812123271496343e-05, 8.198534188189689252e-05, 8.274238128720809351e-05, 8.349923822991827662e-05, 8.425591149165362424e-05, 8.501239985436572844e-05, 8.576870210046852580e-05, 8.652481701263735401e-05, 8.728074337404762549e-05, 8.803647996817362651e-05, 8.879202557892627867e-05, 8.954737899060383481e-05, 9.030253898787721516e-05, 9.105750435575825374e-05, 9.181227387973645699e-05, 9.256684634568027351e-05, 9.332122053980383626e-05, 9.407539524880601141e-05, 9.482936925966782874e-05, 9.558314135989255114e-05, 9.633671033730321334e-05, 9.709007498019819144e-05, 9.784323407721669404e-05, 9.859618641749380314e-05, 9.934893079045875835e-05, 1.001014659860744843e-04, 1.008537907946354951e-04, 1.016059040069062526e-04, 1.023578044140880571e-04, 1.031094908077213743e-04, 1.038609619798210086e-04, 1.046122167228454605e-04, 1.053632538296813006e-04, 1.061140720936286548e-04, 1.068646703083700201e-04, 1.076150472681050715e-04, 1.083652017674538426e-04, 1.091151326014233732e-04, 1.098648385655284212e-04, 1.106143184556743827e-04, 1.113635710682281171e-04, 1.121125951999850422e-04, 1.128613896482392001e-04, 1.136099532106666109e-04, 1.143582846854787551e-04, 1.151063828712231481e-04, 1.158542465670202656e-04, 1.166018745723642805e-04, 1.173492656872585343e-04, 1.180964187121675879e-04, 1.188433324480023685e-04, 1.195900056960891067e-04, 1.203364372583038186e-04, 1.210826259369749851e-04, 1.218285705348518791e-04, 1.225742698552398477e-04, 1.233197227018018754e-04, 1.240649278787946152e-04, 1.248098841908692341e-04, 1.255545904432072910e-04, 1.262990454414736547e-04, 1.270432479917991302e-04, 1.277871969007513475e-04, 1.285308909754866581e-04, 1.292743290235662821e-04, 1.300175098530950311e-04, 1.307604322726867770e-04, 1.315030950913684455e-04, 1.322454971187134545e-04, 1.329876371648129824e-04, 1.337295140402580793e-04, 1.344711265561269271e-04, 1.352124735239530187e-04, 1.359535537558595713e-04, 1.366943660644627078e-04, 1.374349092628390659e-04, 1.381751821646281738e-04, 1.389151835840005480e-04, 1.396549123355600062e-04, 1.403943672344792469e-04, 1.411335470964670798e-04, 1.418724507377551436e-04, 1.426110769750825111e-04, 1.433494246256638129e-04, 1.440874925073250073e-04, 1.448252794384049884e-04, 1.455627842377256085e-04, 1.463000057247067925e-04, 1.470369427192713728e-04, 1.477735940418310485e-04, 1.485099585134174653e-04, 1.492460349555879988e-04, 1.499818221903936346e-04, 1.507173190405120000e-04, 1.514525243290516386e-04, 1.521874368797864147e-04, 1.529220555169572124e-04, 1.536563790654065940e-04, 1.543904063505322605e-04, 1.551241361982705715e-04, 1.558575674350674075e-04, 1.565906988880096291e-04, 1.573235293847299930e-04, 1.580560577533755742e-04, 1.587882828227411770e-04, 1.595202034220734202e-04, 1.602518183813032165e-04, 1.609831265308509418e-04, 1.617141267017748352e-04, 1.624448177256429548e-04, 1.631751984346812255e-04, 1.639052676615798004e-04, 1.646350242397239417e-04, 1.653644670029994336e-04, 1.660935947859242044e-04, 1.668224064236197848e-04, 1.675509007517131876e-04, 1.682790766064699937e-04, 1.690069328247636689e-04, 1.697344682440610089e-04, 1.704616817024082339e-04, 1.711885720383985983e-04, 1.719151380913069946e-04, 1.726413787009921309e-04, 1.733672927078660380e-04, 1.740928789529952523e-04, 1.748181362780682900e-04, 1.755430635252996680e-04, 1.762676595375637755e-04, 1.769919231583627281e-04, 1.777158532318123265e-04, 1.784394486026274476e-04, 1.791627081160919845e-04, 1.798856306182061357e-04, 1.806082149555103848e-04, 1.813304599752159569e-04, 1.820523645251590926e-04, 1.827739274537874413e-04, 1.834951476101266677e-04, 1.842160238439143234e-04, 1.849365550055047359e-04, 1.856567399458358312e-04, 1.863765775165634943e-04, 1.870960665698671985e-04, 1.878152059586798289e-04, 1.885339945364929333e-04, 1.892524311574902680e-04, 1.899705146765017741e-04, 1.906882439489864737e-04, 1.914056178310031425e-04, 1.921226351793417963e-04, 1.928392948514299349e-04, 1.935555957052977657e-04, 1.942715365997140550e-04, 1.949871163939917570e-04, 1.957023339482158323e-04, 1.964171881230509099e-04, 1.971316777798902029e-04, 1.978458017807594750e-04, 1.985595589883024038e-04, 1.992729482659111458e-04, 1.999859684776328242e-04, 2.006986184881379240e-04, 2.014108971628187652e-04, 2.021228033677585753e-04, 2.028343359696393869e-04, 2.035454938358702444e-04, 2.042562758345564124e-04, 2.049666808344852002e-04, 2.056767077051149567e-04, 2.063863553165404036e-04, 2.070956225396255307e-04, 2.078045082459069402e-04, 2.085130113075669847e-04, 2.092211305975434621e-04, 2.099288649894232278e-04, 2.106362133575051055e-04, 2.113431745767714815e-04, 2.120497475229535462e-04, 2.127559310724202177e-04, 2.134617241023250786e-04, 2.141671254904166128e-04, 2.148721341152611995e-04, 2.155767488560564132e-04, 2.162809685927590138e-04, 2.169847922060380281e-04, 2.176882185772622809e-04, 2.183912465884694414e-04, 2.190938751224951245e-04, 2.197961030628786466e-04, 2.204979292938350800e-04, 2.211993527003805059e-04, 2.219003721681484041e-04, 2.226009865836080118e-04, 2.233011948338796296e-04, 2.240009958068612291e-04, 2.247003883912002641e-04, 2.253993714761980431e-04, 2.260979439519413524e-04, 2.267961047092842950e-04, 2.274938526397592240e-04, 2.281911866356858669e-04, 2.288881055901435704e-04, 2.295846083968778152e-04, 2.302806939504282058e-04, 2.309763611460973539e-04, 2.316716088799396570e-04, 2.323664360487440596e-04, 2.330608415500073276e-04, 2.337548242820593821e-04, 2.344483831439714673e-04, 2.351415170355274737e-04, 2.358342248573181820e-04, 2.365265055107126132e-04, 2.372183578977650584e-04, 2.379097809213445323e-04, 2.386007734851007837e-04, 2.392913344934538599e-04, 2.399814628515789820e-04, 2.406711574653788710e-04, 2.413604172416056388e-04, 2.420492410877751906e-04, 2.427376279121329101e-04, 2.434255766237663891e-04, 2.441130861325130266e-04, 2.448001553489478855e-04, 2.454867831845084576e-04, 2.461729685514010965e-04, 2.468587103625769484e-04, 2.475440075318526782e-04, 2.482288589737280523e-04, 2.489132636036064114e-04, 2.495972203376081331e-04, 2.502807280926945023e-04, 2.509637857866293302e-04, 2.516463923379578128e-04, 2.523285466659832199e-04, 2.530102476908887058e-04, 2.536914943336468866e-04, 2.543722855159914883e-04, 2.550526201605424637e-04, 2.557324971906222203e-04, 2.564119155304731110e-04, 2.570908741050749631e-04, 2.577693718402837477e-04, 2.584474076627267915e-04, 2.591249804998662027e-04, 2.598020892799699768e-04, 2.604787329321724956e-04, 2.611549103863725573e-04, 2.618306205733398999e-04, 2.625058624246877164e-04, 2.631806348727812024e-04, 2.638549368508617517e-04, 2.645287672930198507e-04, 2.652021251341790328e-04, 2.658750093100835724e-04, 2.665474187572695907e-04, 2.672193524131883302e-04, 2.678908092161177371e-04, 2.685617881051307492e-04, 2.692322880201921146e-04, 2.699023079021265164e-04, 2.705718466925296681e-04, 2.712409033338931594e-04, 2.719094767695903617e-04, 2.725775659437837286e-04, 2.732451698015683989e-04, 2.739122872887886947e-04, 2.745789173522516016e-04, 2.752450589395490132e-04, 2.759107109991768849e-04, 2.765758724804958778e-04, 2.772405423337137402e-04, 2.779047195098608585e-04, 2.785684029609083816e-04, 2.792315916396826228e-04, 2.798942844998355693e-04, 2.805564804959658799e-04, 2.812181785834417256e-04, 2.818793777186121008e-04, 2.825400768586281471e-04, 2.832002749615650716e-04, 2.838599709863920059e-04, 2.845191638928882519e-04, 2.851778526417605921e-04, 2.858360361946153173e-04, 2.864937135139468969e-04, 2.871508835630938515e-04, 2.878075453063587744e-04, 2.884636977088470022e-04, 2.891193397366034409e-04, 2.897744703565824256e-04, 2.904290885366338964e-04, 2.910831932454929359e-04, 2.917367834527503879e-04, 2.923898581289715768e-04, 2.930424162456113065e-04, 2.936944567749848580e-04, 2.943459786903587371e-04, 2.949969809659211840e-04, 2.956474625766987441e-04, 2.962974224986702717e-04, 2.969468597087464930e-04, 2.975957731847492433e-04, 2.982441619054029564e-04, 2.988920248503061498e-04, 2.995393610000509038e-04, 3.001861693361341740e-04, 3.008324488409318785e-04, 3.014781984978041744e-04, 3.021234172909906691e-04, 3.027681042056749308e-04, 3.034122582279552148e-04, 3.040558783449009506e-04, 3.046989635444602050e-04, 3.053415128155840944e-04, 3.059835251480587338e-04, 3.066249995327077651e-04, 3.072659349612221380e-04, 3.079063304262750892e-04, 3.085461849214966097e-04, 3.091854974413882806e-04, 3.098242669814389575e-04, 3.104624925380978281e-04, 3.111001731087647084e-04, 3.117373076917411456e-04, 3.123738952863560768e-04, 3.130099348927886161e-04, 3.136454255122730775e-04, 3.142803661469264782e-04, 3.149147557998817327e-04, 3.155485934751892075e-04, 3.161818781778710937e-04, 3.168146089138980967e-04, 3.174467846902491756e-04, 3.180784045148093574e-04, 3.187094673964747417e-04, 3.193399723451222517e-04, 3.199699183715275057e-04, 3.205993044874827784e-04, 3.212281297057639328e-04, 3.218563930401229932e-04, 3.224840935052749181e-04, 3.231112301168662668e-04, 3.237378018915970635e-04, 3.243638078471313508e-04, 3.249892470020741505e-04, 3.256141183760566274e-04, 3.262384209897066533e-04, 3.268621538645723168e-04, 3.274853160232295301e-04, 3.281079064892589896e-04, 3.287299242872327863e-04, 3.293513684426998232e-04, 3.299722379821643480e-04, 3.305925319331948610e-04, 3.312122493243432344e-04, 3.318313891851182025e-04, 3.324499505460851091e-04, 3.330679324387830743e-04, 3.336853338957124172e-04, 3.343021539504502869e-04, 3.349183916375637633e-04, 3.355340459925858416e-04, 3.361491160521314428e-04, 3.367636008537265428e-04, 3.373774994360076115e-04, 3.379908108385555133e-04, 3.386035341020086973e-04, 3.392156682680352799e-04, 3.398272123792550354e-04, 3.404381654793452150e-04, 3.410485266130222778e-04, 3.416582948260232962e-04, 3.422674691650684975e-04, 3.428760486779745625e-04, 3.434840324134861948e-04, 3.440914194214762106e-04, 3.446982087527775953e-04, 3.453043994593092713e-04, 3.459099905939844286e-04, 3.465149812107641927e-04, 3.471193703646288393e-04, 3.477231571116425209e-04, 3.483263405088501052e-04, 3.489289196143806077e-04, 3.495308934874157502e-04, 3.501322611881165056e-04, 3.507330217777260978e-04, 3.513331743185497263e-04, 3.519327178739412856e-04, 3.525316515082879145e-04, 3.531299742869892884e-04, 3.537276852765631118e-04, 3.543247835445701463e-04, 3.549212681595829305e-04, 3.555171381912727337e-04, 3.561123927103812038e-04, 3.567070307886434431e-04, 3.573010514988956155e-04, 3.578944539150620443e-04, 3.584872371120796978e-04, 3.590794001660147406e-04, 3.596709421539077641e-04, 3.602618621539627089e-04, 3.608521592453836917e-04, 3.614418325084876003e-04, 3.620308810246761211e-04, 3.626193038763578388e-04, 3.632071001470590422e-04, 3.637942689213927703e-04, 3.643808092850523610e-04, 3.649667203247710648e-04, 3.655520011284272121e-04, 3.661366507848910702e-04, 3.667206683842074767e-04, 3.673040530174416117e-04, 3.678868037767856836e-04, 3.684689197555310650e-04, 3.690504000479939706e-04, 3.696312437496199741e-04, 3.702114499569609152e-04, 3.707910177676612381e-04, 3.713699462804244899e-04, 3.719482345951111700e-04, 3.725258818126030418e-04, 3.731028870349223413e-04, 3.736792493652020151e-04, 3.742549679076790530e-04, 3.748300417676788212e-04, 3.754044700515933781e-04, 3.759782518669890273e-04, 3.765513863225205572e-04, 3.771238725279160622e-04, 3.776957095940534871e-04, 3.782668966329346609e-04, 3.788374327576094565e-04, 3.794073170822805791e-04, 3.799765487222796592e-04, 3.805451267940557062e-04, 3.811130504151643205e-04, 3.816803187042396668e-04, 3.822469307811038699e-04, 3.828128857666886274e-04, 3.833781827830100557e-04, 3.839428209532730991e-04, 3.845067994017213131e-04, 3.850701172538158667e-04, 3.856327736360802300e-04, 3.861947676762254541e-04, 3.867560985030377390e-04, 3.873167652465045268e-04, 3.878767670376553401e-04, 3.884361030087483740e-04, 3.889947722931129067e-04, 3.895527740252570695e-04, 3.901101073408402538e-04, 3.906667713766002526e-04, 3.912227652704563141e-04, 3.917780881614850181e-04, 3.923327391899050429e-04, 3.928867174970481087e-04, 3.934400222254540083e-04, 3.939926525187246726e-04, 3.945446075217013846e-04, 3.950958863803138575e-04, 3.956464882416962990e-04, 3.961964122540982897e-04, 3.967456575669403487e-04, 3.972942233307852561e-04, 3.978421086973916673e-04, 3.983893128196320382e-04, 3.989358348515720980e-04, 3.994816739484565913e-04, 4.000268292666305653e-04, 4.005712999636400380e-04, 4.011150851982126452e-04, 4.016581841302404557e-04, 4.022005959207746589e-04, 4.027423197319981887e-04, 4.032833547273277468e-04, 4.038237000713411611e-04, 4.043633549297509858e-04, 4.049023184694857617e-04, 4.054405898586600928e-04, 4.059781682665056365e-04, 4.065150528634719888e-04, 4.070512428211981695e-04, 4.075867373125072559e-04, 4.081215355113936970e-04, 4.086556365929970764e-04, 4.091890397337181757e-04, 4.097217441110822026e-04, 4.102537489038405975e-04, 4.107850532919437659e-04, 4.113156564564733153e-04, 4.118455575797408809e-04, 4.123747558452595563e-04, 4.129032504377404787e-04, 4.134310405430519542e-04, 4.139581253483204512e-04, 4.144845040417849381e-04, 4.150101758129700843e-04, 4.155351398525391885e-04, 4.160593953523937624e-04, 4.165829415056506542e-04, 4.171057775065726593e-04, 4.176279025506606781e-04, 4.181493158346362600e-04, 4.186700165564309238e-04, 4.191900039151459883e-04, 4.197092771111537828e-04, 4.202278353459565374e-04, 4.207456778223504779e-04, 4.212628037442904083e-04, 4.217792123169888073e-04, 4.222949027468534864e-04, 4.228098742414762600e-04, 4.233241260097234224e-04, 4.238376572616722672e-04, 4.243504672085854465e-04, 4.248625550629832868e-04, 4.253739200386215630e-04, 4.258845613504220009e-04, 4.263944782145693679e-04, 4.269036698484854515e-04, 4.274121354708225549e-04, 4.279198743014479920e-04, 4.284268855614293430e-04, 4.289331684731214614e-04, 4.294387222601020178e-04, 4.299435461471480817e-04, 4.304476393603302300e-04, 4.309510011268751785e-04, 4.314536306753296050e-04, 4.319555272354188777e-04, 4.324566900381580773e-04, 4.329571183157564251e-04, 4.334568113017217453e-04, 4.339557682307297647e-04, 4.344539883387767685e-04, 4.349514708630509052e-04, 4.354482150420209289e-04, 4.359442201154169541e-04, 4.364394853241599292e-04, 4.369340099104555277e-04, 4.374277931177749583e-04, 4.379208341908429839e-04, 4.384131323756012221e-04, 4.389046869193056685e-04, 4.393954970703922562e-04, 4.398855620786270714e-04, 4.403748811949852486e-04, 4.408634536717327733e-04, 4.413512787624088098e-04, 4.418383557217565828e-04, 4.423246838058206309e-04, 4.428102622719278327e-04, 4.432950903786305407e-04, 4.437791673857765119e-04, 4.442624925544959519e-04, 4.447450651471327224e-04, 4.452268844273319986e-04, 4.457079496600240063e-04, 4.461882601114085722e-04, 4.466678150489489436e-04, 4.471466137413514599e-04, 4.476246554586518550e-04, 4.481019394721506388e-04, 4.485784650543965090e-04, 4.490542314792693467e-04, 4.495292380218526601e-04, 4.500034839585891132e-04, 4.504769685671490662e-04, 4.509496911265181793e-04, 4.514216509169657540e-04, 4.518928472200374686e-04, 4.523632793185334232e-04, 4.528329464965933585e-04, 4.533018480396382708e-04, 4.537699832343448252e-04, 4.542373513687337724e-04, 4.547039517320550228e-04, 4.551697836148832195e-04, 4.556348463090976260e-04, 4.560991391078747536e-04, 4.565626613056529082e-04, 4.570254121982217452e-04, 4.574873910825953097e-04, 4.579485972571619812e-04, 4.584090300215583813e-04, 4.588686886767531282e-04, 4.593275725250287847e-04, 4.597856808699171856e-04, 4.602430130162900768e-04, 4.606995682703329321e-04, 4.611553459395379057e-04, 4.616103453326768358e-04, 4.620645657598809871e-04, 4.625180065325151758e-04, 4.629706669633343818e-04, 4.634225463663487659e-04, 4.638736440569263980e-04, 4.643239593517183928e-04, 4.647734915686974532e-04, 4.652222400271471912e-04, 4.656702040476958459e-04, 4.661173829522500937e-04, 4.665637760640689363e-04, 4.670093827077359452e-04, 4.674542022091119904e-04, 4.678982338954052259e-04, 4.683414770951624699e-04, 4.687839311382492016e-04, 4.692255953558511876e-04, 4.696664690804460752e-04, 4.701065516458934903e-04, 4.705458423873673285e-04, 4.709843406413433955e-04, 4.714220457456767105e-04, 4.718589570394855510e-04, 4.722950738632864898e-04, 4.727303955588840778e-04, 4.731649214694444070e-04, 4.735986509394683850e-04, 4.740315833147864220e-04, 4.744637179425317060e-04, 4.748950541712398401e-04, 4.753255913507327250e-04, 4.757553288322035603e-04, 4.761842659681967327e-04, 4.766124021125491602e-04, 4.770397366204697106e-04, 4.774662688485217452e-04, 4.778919981546149876e-04, 4.783169238979724015e-04, 4.787410454392160048e-04, 4.791643621402448430e-04, 4.795868733643772908e-04, 4.800085784762311934e-04, 4.804294768418041514e-04, 4.808495678284569331e-04, 4.812688508048519999e-04, 4.816873251410364477e-04, 4.821049902084224912e-04, 4.825218453797728820e-04, 4.829378900291819883e-04, 4.833531235321488167e-04, 4.837675452654636044e-04, 4.841811546073425312e-04, 4.845939509373111136e-04, 4.850059336362992895e-04, 4.854171020865766912e-04, 4.858274556717472243e-04, 4.862369937768271848e-04, 4.866457157881875248e-04, 4.870536210935341747e-04, 4.874607090819923941e-04, 4.878669791439811665e-04, 4.882724306713616814e-04, 4.886770630573105366e-04, 4.890808756964069078e-04, 4.894838679845999688e-04, 4.898860393191988623e-04, 4.902873890988607196e-04, 4.906879167236620010e-04, 4.910876215950425510e-04, 4.914865031157932386e-04, 4.918845606901245870e-04, 4.922817937235614977e-04, 4.926782016230704274e-04, 4.930737837969505341e-04, 4.934685396549183534e-04, 4.938624686080339641e-04, 4.942555700687851225e-04, 4.946478434509783001e-04, 4.950392881698670528e-04, 4.954299036420411074e-04, 4.958196892855076766e-04, 4.962086445196628361e-04, 4.965967687652482650e-04, 4.969840614444193333e-04, 4.973705219807286228e-04, 4.977561497991188789e-04, 4.981409443258946051e-04, 4.985249049887962225e-04, 4.989080312168939256e-04, 4.992903224407150772e-04, 4.996717780921313421e-04, 5.000523976044379424e-04, 5.004321804123359856e-04, 5.008111259518759767e-04, 5.011892336605314364e-04, 5.015665029771921787e-04, 5.019429333421112933e-04, 5.023185241969854850e-04, 5.026932749848489305e-04, 5.030671851501986123e-04, 5.034402541388907767e-04, 5.038124813982070710e-04, 5.041838663768357862e-04, 5.045544085248594973e-04, 5.049241072937395592e-04, 5.052929621363883147e-04, 5.056609725071119568e-04, 5.060281378616022889e-04, 5.063944576569989579e-04, 5.067599313517927436e-04, 5.071245584059449292e-04, 5.074883382807808324e-04, 5.078512704390684106e-04, 5.082133543449800965e-04, 5.085745894641001711e-04, 5.089349752633962488e-04, 5.092945112112959305e-04, 5.096531967776299918e-04, 5.100110314336241428e-04, 5.103680146519594179e-04, 5.107241459066844645e-04, 5.110794246732941470e-04, 5.114338504287097064e-04, 5.117874226512682430e-04, 5.121401408207080803e-04, 5.124920044182262272e-04, 5.128430129263857875e-04, 5.131931658292308851e-04, 5.135424626121873511e-04, 5.138909027621294022e-04, 5.142384857673654381e-04, 5.145852111175876252e-04, 5.149310783039417203e-04, 5.152760868190047350e-04, 5.156202361567864545e-04, 5.159635258127128485e-04, 5.163059552836200003e-04, 5.166475240678089671e-04, 5.169882316650081583e-04, 5.173280775763511091e-04, 5.176670613044364374e-04, 5.180051823532727659e-04, 5.183424402283103808e-04, 5.186788344364232344e-04, 5.190143644859496024e-04, 5.193490298866263810e-04, 5.196828301496696440e-04, 5.200157647876785813e-04, 5.203478333147437034e-04, 5.206790352463541412e-04, 5.210093700994656261e-04, 5.213388373924683974e-04, 5.216674366451920812e-04, 5.219951673788803198e-04, 5.223220291162588604e-04, 5.226480213814893670e-04, 5.229731437001520740e-04, 5.232973955993113803e-04, 5.236207766074214148e-04, 5.239432862544400951e-04, 5.242649240717264531e-04, 5.245856895921210830e-04, 5.249055823498824987e-04, 5.252246018807525110e-04, 5.255427477218730693e-04, 5.258600194118819970e-04, 5.261764164908370968e-04, 5.264919385002650486e-04, 5.268065849831508928e-04, 5.271203554838997576e-04, 5.274332495483860820e-04, 5.277452667239504718e-04, 5.280564065593817014e-04, 5.283666686049060890e-04, 5.286760524122397550e-04, 5.289845575345058972e-04, 5.292921835263322610e-04, 5.295989299437710166e-04, 5.299047963443523183e-04, 5.302097822870693433e-04, 5.305138873323434878e-04, 5.308171110420776021e-04, 5.311194529796348486e-04, 5.314209127098480255e-04, 5.317214897989986418e-04, 5.320211838148143158e-04, 5.323199943265235264e-04, 5.326179209047841650e-04, 5.329149631217411061e-04, 5.332111205510035477e-04, 5.335063927676355787e-04, 5.338007793481492399e-04, 5.340942798705601438e-04, 5.343868939143404202e-04, 5.346786210604080906e-04, 5.349694608911889767e-04, 5.352594129905241093e-04, 5.355484769437765221e-04, 5.358366523377421304e-04, 5.361239387607101212e-04, 5.364103358024385586e-04, 5.366958430541512396e-04, 5.369804601085250090e-04, 5.372641865597426684e-04, 5.375470220034543785e-04, 5.378289660367611795e-04, 5.381100182582791757e-04, 5.383901782680436919e-04, 5.386694456676194287e-04, 5.389478200600117744e-04, 5.392253010497281710e-04, 5.395018882427282409e-04, 5.397775812464848276e-04, 5.400523796698981265e-04, 5.403262831233955404e-04, 5.405992912188535083e-04, 5.408714035696460774e-04, 5.411426197906336281e-04, 5.414129394981279618e-04, 5.416823623099365371e-04, 5.419508878453634451e-04, 5.422185157251880510e-04, 5.424852455716717156e-04, 5.427510770085371963e-04, 5.430160096610240489e-04, 5.432800431558524159e-04, 5.435431771212048116e-04, 5.438054111867733935e-04, 5.440667449837375191e-04, 5.443271781447371832e-04, 5.445867103039144343e-04, 5.448453410969152175e-04, 5.451030701608429712e-04, 5.453598971343300754e-04, 5.456158216574459119e-04, 5.458708433717980200e-04, 5.461249619204532751e-04, 5.463781769479854854e-04, 5.466304881004607546e-04, 5.468818950254300017e-04, 5.471323973719216961e-04, 5.473819947904830577e-04, 5.476306869331494824e-04, 5.478784734534346756e-04, 5.481253540063727196e-04, 5.483713282484526958e-04, 5.486163958376980487e-04, 5.488605564336028345e-04, 5.491038096971684757e-04, 5.493461552908975812e-04, 5.495875928787822369e-04, 5.498281221262929465e-04, 5.500677427004288305e-04, 5.503064542696840160e-04, 5.505442565040263858e-04, 5.507811490749589447e-04, 5.510171316554455514e-04, 5.512522039199700078e-04, 5.514863655445213135e-04, 5.517196162065883536e-04, 5.519519555851543687e-04, 5.521833833606916431e-04, 5.524138992151992342e-04, 5.526435028321746755e-04, 5.528721938965993395e-04, 5.530999720949787701e-04, 5.533268371153250102e-04, 5.535527886471250511e-04, 5.537778263813913568e-04, 5.540019500106447333e-04, 5.542251592289102087e-04, 5.544474537317146479e-04, 5.546688332160739591e-04, 5.548892973805401481e-04, 5.551088459251634797e-04, 5.553274785514875989e-04, 5.555451949625824903e-04, 5.557619948630148797e-04, 5.559778779588638465e-04, 5.561928439577077049e-04, 5.564068925686568553e-04, 5.566200235023048863e-04, 5.568322364707863634e-04, 5.570435311877036449e-04, 5.572539073682111245e-04, 5.574633647289493118e-04, 5.576719029880803941e-04, 5.578795218652840083e-04, 5.580862210817419530e-04, 5.582920003601399240e-04, 5.584968594246942936e-04, 5.587007980011342214e-04, 5.589038158166888606e-04, 5.591059126001208602e-04, 5.593070880816786595e-04, 5.595073419931548189e-04, 5.597066740678359291e-04, 5.599050840405427271e-04, 5.601025716475913898e-04, 5.602991366268382034e-04, 5.604947787176217753e-04, 5.606894976608341576e-04, 5.608832931988563374e-04, 5.610761650756027974e-04, 5.612681130365117579e-04, 5.614591368285128678e-04, 5.616492362000717652e-04, 5.618384109011740311e-04, 5.620266606833264908e-04, 5.622139852995486483e-04, 5.624003845043686750e-04, 5.625858580538522493e-04, 5.627704057055872696e-04, 5.629540272186633627e-04, 5.631367223537067949e-04, 5.633184908728695222e-04, 5.634993325398007834e-04, 5.636792471196855900e-04, 5.638582343792360521e-04, 5.640362940866863913e-04, 5.642134260117868689e-04, 5.643896299257980401e-04, 5.645649056015335796e-04, 5.647392528133041200e-04, 5.649126713369564999e-04, 5.650851609498640064e-04, 5.652567214309207368e-04, 5.654273525605278293e-04, 5.655970541206355303e-04, 5.657658258947147883e-04, 5.659336676677476042e-04, 5.661005792262616175e-04, 5.662665603582857626e-04, 5.664316108533976480e-04, 5.665957305026831162e-04, 5.667589190987677933e-04, 5.669211764358014771e-04, 5.670825023094579198e-04, 5.672428965169271304e-04, 5.674023588569443227e-04, 5.675608891297695326e-04, 5.677184871371771012e-04, 5.678751526824908028e-04, 5.680308855705351644e-04, 5.681856856076904346e-04, 5.683395526018449875e-04, 5.684924863624294744e-04, 5.686444867004016458e-04, 5.687955534282317137e-04, 5.689456863599423597e-04, 5.690948853110798945e-04, 5.692431500987090538e-04, 5.693904805414363090e-04, 5.695368764594032534e-04, 5.696823376742614483e-04, 5.698268640092060341e-04, 5.699704552889665139e-04, 5.701131113398014410e-04, 5.702548319894989613e-04, 5.703956170673684647e-04, 5.705354664042656303e-04, 5.706743798325765969e-04, 5.708123571862088559e-04, 5.709493983006164045e-04, 5.710855030127741589e-04, 5.712206711611938917e-04, 5.713549025859142576e-04, 5.714881971285206341e-04, 5.716205546321148721e-04, 5.717519749413487980e-04, 5.718824579023858330e-04, 5.720120033629456620e-04, 5.721406111722623835e-04, 5.722682811811176861e-04, 5.723950132418262121e-04, 5.725208072082289433e-04, 5.726456629356979720e-04, 5.727695802811523301e-04, 5.728925591030398830e-04, 5.730145992613372213e-04, 5.731357006175721034e-04, 5.732558630347807382e-04, 5.733750863775595018e-04, 5.734933705120236289e-04, 5.736107153058322581e-04, 5.737271206281831194e-04, 5.738425863497939941e-04, 5.739571123429268928e-04, 5.740706984813871878e-04, 5.741833446405026882e-04, 5.742950506971453237e-04, 5.744058165297266996e-04, 5.745156420181799905e-04, 5.746245270439830338e-04, 5.747324714901521497e-04, 5.748394752412408406e-04, 5.749455381833355619e-04, 5.750506602040525786e-04, 5.751548411925566130e-04, 5.752580810395440400e-04, 5.753603796372481994e-04, 5.754617368794367940e-04, 5.755621526614232734e-04, 5.756616268800452589e-04, 5.757601594336822157e-04, 5.758577502222554526e-04, 5.759543991472224848e-04, 5.760501061115761660e-04, 5.761448710198369908e-04, 5.762386937780787904e-04, 5.763315742939081323e-04, 5.764235124764607431e-04, 5.765145082364233004e-04, 5.766045614860110984e-04, 5.766936721389703249e-04, 5.767818401106016967e-04, 5.768690653177327042e-04, 5.769553476787302963e-04, 5.770406871135041332e-04, 5.771250835434893478e-04, 5.772085368916741923e-04, 5.772910470825713073e-04, 5.773726140422402731e-04, 5.774532376982776348e-04, 5.775329179798161438e-04, 5.776116548175195533e-04, 5.776894481435995319e-04, 5.777662978918054722e-04, 5.778422039974184191e-04, 5.779171663972641889e-04, 5.779911850296948293e-04, 5.780642598346159410e-04, 5.781363907534610913e-04, 5.782075777292037394e-04, 5.782778207063578877e-04, 5.783471196309706002e-04, 5.784154744506291588e-04, 5.784828851144642068e-04, 5.785493515731337036e-04, 5.786148737788418973e-04, 5.786794516853318443e-04, 5.787430852478758683e-04, 5.788057744232883535e-04, 5.788675191699253113e-04, 5.789283194476783087e-04, 5.789881752179758777e-04, 5.790470864437799372e-04, 5.791050530895943587e-04, 5.791620751214668090e-04, 5.792181525069717285e-04, 5.792732852152252931e-04, 5.793274732168855225e-04, 5.793807164841412215e-04, 5.794330149907205452e-04, 5.794843687118889390e-04, 5.795347776244551014e-04, 5.795842417067561311e-04, 5.796327609386672840e-04, 5.796803353016078287e-04, 5.797269647785277102e-04, 5.797726493539149227e-04, 5.798173890137977866e-04, 5.798611837457407197e-04, 5.799040335388376240e-04, 5.799459383837253295e-04, 5.799868982725794745e-04, 5.800269131991058315e-04, 5.800659831585553783e-04, 5.801041081477021797e-04, 5.801412881648685413e-04, 5.801775232099075537e-04, 5.802128132842094893e-04, 5.802471583907016939e-04, 5.802805585338432744e-04, 5.803130137196307360e-04, 5.803445239555985249e-04, 5.803750892508181608e-04, 5.804047096158885871e-04, 5.804333850629538440e-04, 5.804611156056819262e-04, 5.804879012592888523e-04, 5.805137420405121016e-04, 5.805386379676358765e-04, 5.805625890604726707e-04, 5.805855953403689070e-04, 5.806076568302053712e-04, 5.806287735544048015e-04, 5.806489455389120475e-04, 5.806681728112141278e-04, 5.806864554003318820e-04, 5.807037933368135738e-04, 5.807201866527470337e-04, 5.807356353817507691e-04, 5.807501395589794932e-04, 5.807636992211166445e-04, 5.807763144063787233e-04, 5.807879851545194117e-04, 5.807987115068249115e-04, 5.808084935061050540e-04, 5.808173311967132491e-04, 5.808252246245295715e-04, 5.808321738369653150e-04, 5.808381788829634256e-04, 5.808432398130020796e-04, 5.808473566790864438e-04, 5.808505295347575655e-04, 5.808527584350813141e-04, 5.808540434366603073e-04, 5.808543845976261045e-04, 5.808537819776371470e-04, 5.808522356378884076e-04, 5.808497456410998978e-04, 5.808463120515212214e-04, 5.808419349349351526e-04, 5.808366143586550338e-04, 5.808303503915161021e-04, 5.808231431038909931e-04, 5.808149925676753212e-04, 5.808058988562953776e-04, 5.807958620447066121e-04, 5.807848822093918985e-04, 5.807729594283617515e-04, 5.807600937811541100e-04, 5.807462853488378060e-04, 5.807315342140032411e-04, 5.807158404607733367e-04, 5.806992041747930169e-04, 5.806816254432366903e-04, 5.806631043548056469e-04, 5.806436409997240474e-04, 5.806232354697473796e-04, 5.806018878581494479e-04, 5.805795982597350587e-04, 5.805563667708324308e-04, 5.805321934892948219e-04, 5.805070785144985767e-04, 5.804810219473463800e-04, 5.804540238902651961e-04, 5.804260844472021496e-04, 5.803972037236336317e-04, 5.803673818265539172e-04, 5.803366188644836204e-04, 5.803049149474637323e-04, 5.802722701870613670e-04, 5.802386846963626058e-04, 5.802041585899747741e-04, 5.801686919840293687e-04, 5.801322849961785882e-04, 5.800949377455947914e-04, 5.800566503529695208e-04, 5.800174229405194665e-04, 5.799772556319795266e-04, 5.799361485526005307e-04, 5.798941018291587811e-04, 5.798511155899432586e-04, 5.798071899647716694e-04, 5.797623250849688690e-04, 5.797165210833862695e-04, 5.796697780943907809e-04, 5.796220962538648110e-04, 5.795734756992103852e-04, 5.795239165693483879e-04, 5.794734190047147676e-04, 5.794219831472576096e-04, 5.793696091404497124e-04, 5.793162971292703739e-04, 5.792620472602224126e-04, 5.792068596813195911e-04, 5.791507345420897606e-04, 5.790936719935768119e-04, 5.790356721883392664e-04, 5.789767352804479992e-04, 5.789168614254865640e-04, 5.788560507805542293e-04, 5.787943035042612079e-04, 5.787316197567298490e-04, 5.786679996995932294e-04, 5.786034434960001405e-04, 5.785379513106082578e-04, 5.784715233095852251e-04, 5.784041596606084379e-04, 5.783358605328678620e-04, 5.782666260970650580e-04, 5.781964565254057000e-04, 5.781253519916064064e-04, 5.780533126708938723e-04, 5.779803387400040023e-04, 5.779064303771749714e-04, 5.778315877621599105e-04, 5.777558110762167146e-04, 5.776791005021034891e-04, 5.776014562240954636e-04, 5.775228784279625490e-04, 5.774433673009917800e-04, 5.773629230319653064e-04, 5.772815458111769807e-04, 5.771992358304214085e-04, 5.771159932829937307e-04, 5.770318183637012256e-04, 5.769467112688521403e-04, 5.768606721962500541e-04, 5.767737013452052617e-04, 5.766857989165344485e-04, 5.765969651125469209e-04, 5.765072001370633633e-04, 5.764165041953940452e-04, 5.763248774943592048e-04, 5.762323202422710506e-04, 5.761388326489429775e-04, 5.760444149256916269e-04, 5.759490672853296222e-04, 5.758527899421649185e-04, 5.757555831120024286e-04, 5.756574470121526973e-04, 5.755583818614091324e-04, 5.754583878800735922e-04, 5.753574652899420740e-04, 5.752556143142977755e-04, 5.751528351779224783e-04, 5.750491281070948136e-04, 5.749444933295896117e-04, 5.748389310746705293e-04, 5.747324415730888569e-04, 5.746250250571018417e-04, 5.745166817604481849e-04, 5.744074119183567150e-04, 5.742972157675578808e-04, 5.741860935462686803e-04, 5.740740454941894088e-04, 5.739610718525154764e-04, 5.738471728639271078e-04, 5.737323487726071237e-04, 5.736165998242091736e-04, 5.734999262658788772e-04, 5.733823283462556684e-04, 5.732638063154593504e-04, 5.731443604250998540e-04, 5.730239909282689977e-04, 5.729026980795477514e-04, 5.727804821349970210e-04, 5.726573433521664307e-04, 5.725332819900814203e-04, 5.724082983092649299e-04, 5.722823925717073672e-04, 5.721555650408908936e-04, 5.720278159817743539e-04, 5.718991456607947941e-04, 5.717695543458780867e-04, 5.716390423064288476e-04, 5.715076098133246895e-04, 5.713752571389229444e-04, 5.712419845570661930e-04, 5.711077923430643750e-04, 5.709726807737169072e-04, 5.708366501272904570e-04, 5.706997006835340131e-04, 5.705618327236641404e-04, 5.704230465303801586e-04, 5.702833423878527581e-04, 5.701427205817316980e-04, 5.700011813991273744e-04, 5.698587251286376006e-04, 5.697153520603233205e-04, 5.695710624857139217e-04, 5.694258566978241485e-04, 5.692797349911314425e-04, 5.691326976615783276e-04, 5.689847450065798912e-04, 5.688358773250203147e-04, 5.686860949172617636e-04, 5.685353980851207524e-04, 5.683837871318784445e-04, 5.682312623622994083e-04, 5.680778240825999593e-04, 5.679234726004586762e-04, 5.677682082250380853e-04, 5.676120312669485565e-04, 5.674549420382680358e-04, 5.672969408525339137e-04, 5.671380280247500724e-04, 5.669782038713900305e-04, 5.668174687103708130e-04, 5.666558228610855865e-04, 5.664932666443785051e-04, 5.663298003825468791e-04, 5.661654243993677381e-04, 5.660001390200614015e-04, 5.658339445713063322e-04, 5.656668413812342578e-04, 5.654988297794468670e-04, 5.653299100969797061e-04, 5.651600826663514014e-04, 5.649893478215096661e-04, 5.648177058978717411e-04, 5.646451572322989162e-04, 5.644717021630995656e-04, 5.642973410300547357e-04, 5.641220741743819319e-04, 5.639459019387486720e-04, 5.637688246672692329e-04, 5.635908427055214562e-04, 5.634119564005098850e-04, 5.632321661007163964e-04, 5.630514721560389438e-04, 5.628698749178457673e-04, 5.626873747389322424e-04, 5.625039719735524298e-04, 5.623196669774010786e-04, 5.621344601076195885e-04, 5.619483517227796387e-04, 5.617613421829156057e-04, 5.615734318494841225e-04, 5.613846210853884727e-04, 5.611949102549844458e-04, 5.610042997240591951e-04, 5.608127898598352489e-04, 5.606203810309702941e-04, 5.604270736075697527e-04, 5.602328679611807104e-04, 5.600377644647712080e-04, 5.598417634927480230e-04, 5.596448654209648004e-04, 5.594470706266885512e-04, 5.592483794886474657e-04, 5.590487923869776792e-04, 5.588483097032644715e-04, 5.586469318205083317e-04, 5.584446591231557490e-04, 5.582414919970678799e-04, 5.580374308295578444e-04, 5.578324760093403105e-04, 5.576266279265806088e-04, 5.574198869728557012e-04, 5.572122535411668659e-04, 5.570037280259587794e-04, 5.567943108230928454e-04, 5.565840023298462185e-04, 5.563728029449232972e-04, 5.561607130684608196e-04, 5.559477331019952286e-04, 5.557338634485184002e-04, 5.555191045124081460e-04, 5.553034566994874107e-04, 5.550869204169816629e-04, 5.548694960735307130e-04, 5.546511840792153845e-04, 5.544319848455211931e-04, 5.542118987853394312e-04, 5.539909263129815875e-04, 5.537690678441849852e-04, 5.535463237960791712e-04, 5.533226945872325372e-04, 5.530981806376133970e-04, 5.528727823685919375e-04, 5.526465002029564821e-04, 5.524193345649027571e-04, 5.521912858800556842e-04, 5.519623545754184226e-04, 5.517325410794119431e-04, 5.515018458218735094e-04, 5.512702692340252369e-04, 5.510378117485285193e-04, 5.508044737994120376e-04, 5.505702558221326924e-04, 5.503351582535375482e-04, 5.500991815318759769e-04, 5.498623260967994402e-04, 5.496245923893781872e-04, 5.493859808520533319e-04, 5.491464919286745839e-04, 5.489061260645013325e-04, 5.486648837061639406e-04, 5.484227653017255443e-04, 5.481797713006099533e-04, 5.479359021536614992e-04, 5.476911583130924513e-04, 5.474455402325360343e-04, 5.471990483669875562e-04, 5.469516831728698939e-04, 5.467034451079602012e-04, 5.464543346314523591e-04, 5.462043522039112219e-04, 5.459534982872871461e-04, 5.457017733449414688e-04, 5.454491778416051999e-04, 5.451957122433940921e-04, 5.449413770178021359e-04, 5.446861726337284479e-04, 5.444300995614241448e-04, 5.441731582725622745e-04, 5.439153492401584524e-04, 5.436566729386355882e-04, 5.433971298437761813e-04, 5.431367204327533288e-04, 5.428754451841147875e-04, 5.426133045777931660e-04, 5.423502990950761085e-04, 5.420864292186503139e-04, 5.418216954325614197e-04, 5.415560982222198576e-04, 5.412896380744384745e-04, 5.410223154773851533e-04, 5.407541309205895347e-04, 5.404850848949575457e-04, 5.402151778927618588e-04, 5.399444104076671531e-04, 5.396727829346728697e-04, 5.394002959701487722e-04, 5.391269500118535960e-04, 5.388527455588742240e-04, 5.385776831117076524e-04, 5.383017631721686170e-04, 5.380249862434646193e-04, 5.377473528301483308e-04, 5.374688634381290849e-04, 5.371895185746807921e-04, 5.369093187484565762e-04, 5.366282644694289269e-04, 5.363463562489571368e-04, 5.360635945997378618e-04, 5.357799800358156381e-04, 5.354955130726181184e-04, 5.352101942269097768e-04, 5.349240240167978718e-04, 5.346370029617436136e-04, 5.343491315825721387e-04, 5.340604104014323944e-04, 5.337708399418570953e-04, 5.334804207286902985e-04, 5.331891532881475769e-04, 5.328970381477739519e-04, 5.326040758364509412e-04, 5.323102668844346139e-04, 5.320156118233062593e-04, 5.317201111859806272e-04, 5.314237655067122158e-04, 5.311265753211154381e-04, 5.308285411661109541e-04, 5.305296635800022149e-04, 5.302299431023825473e-04, 5.299293802742136494e-04, 5.296279756377685619e-04, 5.293257297366634351e-04, 5.290226431158696722e-04, 5.287187163216541894e-04, 5.284139499016243021e-04, 5.281083444047369405e-04, 5.278019003812415124e-04, 5.274946183827652294e-04, 5.271864989622123852e-04, 5.268775426738515249e-04, 5.265677500732495256e-04, 5.262571217173028218e-04, 5.259456581642323091e-04, 5.256333599736050287e-04, 5.253202277062755119e-04, 5.250062619244202575e-04, 5.246914631915590909e-04, 5.243758320724969425e-04, 5.240593691333975731e-04, 5.237420749416986810e-04, 5.234239500661836764e-04, 5.231049950769229174e-04, 5.227852105453305222e-04, 5.224645970440925952e-04, 5.221431551472581912e-04, 5.218208854301355573e-04, 5.214977884693789778e-04, 5.211738648429263239e-04, 5.208491151300203041e-04, 5.205235399112373039e-04, 5.201971397684430421e-04, 5.198699152847992928e-04, 5.195418670447674633e-04, 5.192129956341336389e-04, 5.188833016399505785e-04, 5.185527856506165359e-04, 5.182214482557842951e-04, 5.178892900464321858e-04, 5.175563116148193055e-04, 5.172225135544902905e-04, 5.168878964603222615e-04, 5.165524609284608557e-04, 5.162162075563334540e-04, 5.158791369426842010e-04, 5.155412496875114462e-04, 5.152025463921564323e-04, 5.148630276591930309e-04, 5.145226940925213101e-04, 5.141815462973063850e-04, 5.138395848799944638e-04, 5.134968104483256419e-04, 5.131532236113455023e-04, 5.128088249793410396e-04, 5.124636151638900993e-04, 5.121175947778702688e-04, 5.117707644354017394e-04, 5.114231247519336089e-04, 5.110746763441393649e-04, 5.107254198300034036e-04, 5.103753558287632422e-04, 5.100244849609300102e-04, 5.096728078482920272e-04, 5.093203251139324754e-04, 5.089670373821660824e-04, 5.086129452785836816e-04, 5.082580494300684756e-04, 5.079023504647264299e-04, 5.075458490119792981e-04, 5.071885457024903534e-04, 5.068304411681755564e-04, 5.064715360422140716e-04, 5.061118309590682167e-04, 5.057513265544227475e-04, 5.053900234652756052e-04, 5.050279223298267863e-04, 5.046650237875702823e-04, 5.043013284792350996e-04, 5.039368370467942580e-04, 5.035715501335131464e-04, 5.032054683838867474e-04, 5.028385924436521055e-04, 5.024709229597951578e-04, 5.021024605805753452e-04, 5.017332059554592593e-04, 5.013631597352168111e-04, 5.009923225718039205e-04, 5.006206951184630216e-04, 5.002482780296482528e-04, 4.998750719610752218e-04, 4.995010775696958521e-04, 4.991262955137103089e-04, 4.987507264525284020e-04, 4.983743710468336620e-04, 4.979972299585009405e-04, 4.976193038507010363e-04, 4.972405933877783969e-04, 4.968610992353521662e-04, 4.964808220602474464e-04, 4.960997625305211016e-04, 4.957179213154627338e-04, 4.953352990856198365e-04, 4.949518965127235265e-04, 4.945677142697365745e-04, 4.941827530308727035e-04, 4.937970134715283926e-04, 4.934104962683781787e-04, 4.930232020992583210e-04, 4.926351316432703428e-04, 4.922462855807036193e-04, 4.918566645930697468e-04, 4.914662693631036269e-04, 4.910751005747772359e-04, 4.906831589132273084e-04, 4.902904450648471694e-04, 4.898969597172143095e-04, 4.895027035591066481e-04, 4.891076772805576104e-04, 4.887118815727774148e-04, 4.883153171281781179e-04, 4.879179846403739395e-04, 4.875198848042129217e-04, 4.871210183156992994e-04, 4.867213858721015419e-04, 4.863209881718257173e-04, 4.859198259145250517e-04, 4.855178998010178546e-04, 4.851152105333166303e-04, 4.847117588146697647e-04, 4.843075453494958779e-04, 4.839025708433963998e-04, 4.834968360031644072e-04, 4.830903415367940020e-04, 4.826830881534942969e-04, 4.822750765636187259e-04, 4.818663074787159478e-04, 4.814567816115481141e-04, 4.810464996760255470e-04, 4.806354623872598100e-04, 4.802236704615704308e-04, 4.798111246164162166e-04, 4.793978255704400317e-04, 4.789837740434930839e-04, 4.785689707565587590e-04, 4.781534164318571381e-04, 4.777371117927207479e-04, 4.773200575637030351e-04, 4.769022544704985692e-04, 4.764837032399754603e-04, 4.760644046001790992e-04, 4.756443592803504265e-04, 4.752235680108541044e-04, 4.748020315232250824e-04, 4.743797505501957576e-04, 4.739567258256117857e-04, 4.735329580845483075e-04, 4.731084480631732856e-04, 4.726831964988631343e-04, 4.722572041301151160e-04, 4.718304716966186278e-04, 4.714029999391748616e-04, 4.709747895998014303e-04, 4.705458414216074129e-04, 4.701161561488965707e-04, 4.696857345270973624e-04, 4.692545773027794235e-04, 4.688226852237036566e-04, 4.683900590387530594e-04, 4.679566994979418863e-04, 4.675226073524342964e-04, 4.670877833545443534e-04, 4.666522282577514219e-04, 4.662159428166348435e-04, 4.657789277869182811e-04, 4.653411839254927582e-04, 4.649027119903564311e-04, 4.644635127406328040e-04, 4.640235869366264566e-04, 4.635829353397461199e-04, 4.631415587125141636e-04, 4.626994578186191249e-04, 4.622566334228289187e-04, 4.618130862911067384e-04, 4.613688171904773740e-04, 4.609238268891324339e-04, 4.604781161563630161e-04, 4.600316857625797113e-04, 4.595845364793204636e-04, 4.591366690792782722e-04, 4.586880843362084372e-04, 4.582387830249980035e-04, 4.577887659216744879e-04, 4.573380338033325334e-04, 4.568865874482472083e-04, 4.564344276357363119e-04, 4.559815551462764933e-04, 4.555279707614230743e-04, 4.550736752638385638e-04, 4.546186694373021450e-04, 4.541629540667256669e-04, 4.537065299380763409e-04, 4.532493978384316015e-04, 4.527915585559985677e-04, 4.523330128800360345e-04, 4.518737616009579059e-04, 4.514138055102461335e-04, 4.509531454004659496e-04, 4.504917820652808830e-04, 4.500297162994498323e-04, 4.495669488988557967e-04, 4.491034806604248864e-04, 4.486393123821755453e-04, 4.481744448632464690e-04, 4.477088789038297101e-04, 4.472426153051947467e-04, 4.467756548697401453e-04, 4.463079984009195094e-04, 4.458396467032510208e-04, 4.453706005823380933e-04, 4.449008608448651444e-04, 4.444304282986268149e-04, 4.439593037524414490e-04, 4.434874880162078528e-04, 4.430149819009287669e-04, 4.425417862186384419e-04, 4.420679017824661727e-04, 4.415933294066027963e-04, 4.411180699063118054e-04, 4.406421240978952497e-04, 4.401654927987539096e-04, 4.396881768273039749e-04, 4.392101770030922415e-04, 4.387314941466521293e-04, 4.382521290796272811e-04, 4.377720826246870494e-04, 4.372913556055527335e-04, 4.368099488470141142e-04, 4.363278631749406750e-04, 4.358450994162013713e-04, 4.353616583987265378e-04, 4.348775409515227429e-04, 4.343927479045954303e-04, 4.339072800890618931e-04, 4.334211383370160193e-04, 4.329343234816422420e-04, 4.324468363571244657e-04, 4.319586777987302010e-04, 4.314698486427098962e-04, 4.309803497264250898e-04, 4.304901818881984657e-04, 4.299993459674408673e-04, 4.295078428045602244e-04, 4.290156732409860564e-04, 4.285228381192322474e-04, 4.280293382828071662e-04, 4.275351745762348619e-04, 4.270403478450643885e-04, 4.265448589358788577e-04, 4.260487086963179906e-04, 4.255518979749847133e-04, 4.250544276215157389e-04, 4.245562984865957701e-04, 4.240575114218930980e-04, 4.235580672800829663e-04, 4.230579669149046548e-04, 4.225572111810786463e-04, 4.220558009343260337e-04, 4.215537370313763264e-04, 4.210510203299768286e-04, 4.205476516889145944e-04, 4.200436319679139163e-04, 4.195389620277623099e-04, 4.190336427302090321e-04, 4.185276749380105097e-04, 4.180210595149277367e-04, 4.175137973257544641e-04, 4.170058892362272650e-04, 4.164973361130840817e-04, 4.159881388240909512e-04, 4.154782982379515285e-04, 4.149678152244356730e-04, 4.144566906542231067e-04, 4.139449253990379633e-04, 4.134325203315559810e-04, 4.129194763254373534e-04, 4.124057942553363792e-04, 4.118914749969196766e-04, 4.113765194267809651e-04, 4.108609284225011303e-04, 4.103447028626725098e-04, 4.098278436268056523e-04, 4.093103515954648426e-04, 4.087922276501055794e-04, 4.082734726732135163e-04, 4.077540875481940356e-04, 4.072340731594482508e-04, 4.067134303923737116e-04, 4.061921601332766371e-04, 4.056702632694385410e-04, 4.051477406891364512e-04, 4.046245932815748219e-04, 4.041008219369014720e-04, 4.035764275462831534e-04, 4.030514110018051542e-04, 4.025257731964972108e-04, 4.019995150243391461e-04, 4.014726373802769699e-04, 4.009451411602392499e-04, 4.004170272610429494e-04, 3.998882965804665562e-04, 3.993589500172656410e-04, 3.988289884711080226e-04, 3.982984128425878074e-04, 3.977672240333006881e-04, 3.972354229457438174e-04, 3.967030104833327753e-04, 3.961699875504605503e-04, 3.956363550524006115e-04, 3.951021138954379885e-04, 3.945672649867091350e-04, 3.940318092343373995e-04, 3.934957475473410313e-04, 3.929590808356633208e-04, 3.924218100101841463e-04, 3.918839359827451280e-04, 3.913454596660482544e-04, 3.908063819737283618e-04, 3.902667038203768237e-04, 3.897264261214406660e-04, 3.891855497933673080e-04, 3.886440757534349389e-04, 3.881020049198938434e-04, 3.875593382118720765e-04, 3.870160765493914010e-04, 3.864722208534447537e-04, 3.859277720458945474e-04, 3.853827310494965775e-04, 3.848370987879099424e-04, 3.842908761857333102e-04, 3.837440641684022446e-04, 3.831966636623257059e-04, 3.826486755947735110e-04, 3.821001008938998606e-04, 3.815509404887513080e-04, 3.810011953092787393e-04, 3.804508662863641537e-04, 3.798999543517142486e-04, 3.793484604379371815e-04, 3.787963854785648499e-04, 3.782437304079745580e-04, 3.776904961614175856e-04, 3.771366836750868960e-04, 3.765822938860180946e-04, 3.760273277321129017e-04, 3.754717861521506450e-04, 3.749156700857979091e-04, 3.743589804736308156e-04, 3.738017182570371744e-04, 3.732438843782888535e-04, 3.726854797805598859e-04, 3.721265054078445032e-04, 3.715669622050406739e-04, 3.710068511178962183e-04, 3.704461730930345043e-04, 3.698849290779040316e-04, 3.693231200208595849e-04, 3.687607468710532165e-04, 3.681978105785812107e-04, 3.676343120943045936e-04, 3.670702523700006509e-04, 3.665056323582630178e-04, 3.659404530125325797e-04, 3.653747152871092353e-04, 3.648084201371805196e-04, 3.642415685187141592e-04, 3.636741613885348889e-04, 3.631061997043468392e-04, 3.625376844246299421e-04, 3.619686165087903631e-04, 3.613989969169854573e-04, 3.608288266102701908e-04, 3.602581065504805347e-04, 3.596868377003238334e-04, 3.591150210233260039e-04, 3.585426574838533826e-04, 3.579697480470625266e-04, 3.573962936789834804e-04, 3.568222953464352627e-04, 3.562477540170444598e-04, 3.556726706593243189e-04, 3.550970462425649178e-04, 3.545208817368647155e-04, 3.539441781131364611e-04, 3.533669363431203667e-04, 3.527891573994059544e-04, 3.522108422553319297e-04, 3.516319918850568721e-04, 3.510526072635870441e-04, 3.504726893666962697e-04, 3.498922391709478343e-04, 3.493112576537734152e-04, 3.487297457933684016e-04, 3.481477045687117900e-04, 3.475651349595838564e-04, 3.469820379465700594e-04, 3.463984145110913441e-04, 3.458142656352847710e-04, 3.452295923021407218e-04, 3.446443954954031530e-04, 3.440586761996009295e-04, 3.434724354000646290e-04, 3.428856740829469801e-04, 3.422983932351190495e-04, 3.417105938442452145e-04, 3.411222768988112441e-04, 3.405334433880132222e-04, 3.399440943019149198e-04, 3.393542306312645647e-04, 3.387638533676483646e-04, 3.381729635033842011e-04, 3.375815620315467287e-04, 3.369896499460439199e-04, 3.363972282415109757e-04, 3.358042979133345034e-04, 3.352108599576642260e-04, 3.346169153714515258e-04, 3.340224651523398310e-04, 3.334275102988238856e-04, 3.328320518100615858e-04, 3.322360906860327072e-04, 3.316396279274168237e-04, 3.310426645356712074e-04, 3.304452015130415082e-04, 3.298472398624564231e-04, 3.292487805876023982e-04, 3.286498246929529018e-04, 3.280503731836820680e-04, 3.274504270656940783e-04, 3.268499873456963455e-04, 3.262490550310970022e-04, 3.256476311300254465e-04, 3.250457166513463282e-04, 3.244433126046693608e-04, 3.238404200003765893e-04, 3.232370398495125062e-04, 3.226331731638624393e-04, 3.220288209559774343e-04, 3.214239842390804710e-04, 3.208186640271554766e-04, 3.202128613348959344e-04, 3.196065771777271644e-04, 3.189998125717519498e-04, 3.183925685338420989e-04, 3.177848460815177185e-04, 3.171766462331032307e-04, 3.165679700075422999e-04, 3.159588184245529273e-04, 3.153491925045207663e-04, 3.147390932685242208e-04, 3.141285217384126712e-04, 3.135174789366961022e-04, 3.129059658865732379e-04, 3.122939836119417874e-04, 3.116815331374351997e-04, 3.110686154883154897e-04, 3.104552316906349476e-04, 3.098413827710407107e-04, 3.092270697569378282e-04, 3.086122936763818162e-04, 3.079970555580984447e-04, 3.073813564315692809e-04, 3.067651973269155713e-04, 3.061485792749163480e-04, 3.055315033070815037e-04, 3.049139704555613151e-04, 3.042959817531675306e-04, 3.036775382334546856e-04, 3.030586409306100558e-04, 3.024392908794791904e-04, 3.018194891155752358e-04, 3.011992366750948741e-04, 3.005785345949419578e-04, 2.999573839126147535e-04, 2.993357856662895336e-04, 2.987137408948436156e-04, 2.980912506377731254e-04, 2.974683159352178256e-04, 2.968449378280417256e-04, 2.962211173577219514e-04, 2.955968555663740071e-04, 2.949721534967635929e-04, 2.943470121923200491e-04, 2.937214326971596123e-04, 2.930954160559769411e-04, 2.924689633141224192e-04, 2.918420755176314297e-04, 2.912147537131223852e-04, 2.905869989478799403e-04, 2.899588122698688159e-04, 2.893301947276177887e-04, 2.887011473703033921e-04, 2.880716712477729554e-04, 2.874417674104390568e-04, 2.868114369094340219e-04, 2.861806807964220861e-04, 2.855495001237609402e-04, 2.849178959443892452e-04, 2.842858693118521102e-04, 2.836534212803841428e-04, 2.830205529047949030e-04, 2.823872652404961709e-04, 2.817535593435136019e-04, 2.811194362705267879e-04, 2.804848970787553620e-04, 2.798499428261271038e-04, 2.792145745710769827e-04, 2.785787933727151551e-04, 2.779426002907001126e-04, 2.773059963853346339e-04, 2.766689827175039854e-04, 2.760315603487103445e-04, 2.753937303410055248e-04, 2.747554937570956019e-04, 2.741168516602343359e-04, 2.734778051142551015e-04, 2.728383551836490047e-04, 2.721985029334529388e-04, 2.715582494292762016e-04, 2.709175957373103076e-04, 2.702765429243447087e-04, 2.696350920577910803e-04, 2.689932442055682337e-04, 2.683510004361877675e-04, 2.677083618187775407e-04, 2.670653294229956959e-04, 2.664219043190593902e-04, 2.657780875778247009e-04, 2.651338802706749531e-04, 2.644892834695287964e-04, 2.638442982469286222e-04, 2.631989256759079110e-04, 2.625531668301590133e-04, 2.619070227838345231e-04, 2.612604946117165223e-04, 2.606135833890984026e-04, 2.599662901918135425e-04, 2.593186160963195500e-04, 2.586705621795799218e-04, 2.580221295190936420e-04, 2.573733191929039100e-04, 2.567241322796446528e-04, 2.560745698584192568e-04, 2.554246330089733901e-04, 2.547743228114906838e-04, 2.541236403467659341e-04, 2.534725866960853518e-04, 2.528211629412550226e-04, 2.521693701646862337e-04, 2.515172094492757783e-04, 2.508646818784364212e-04, 2.502117885361063859e-04, 2.495585305067934815e-04, 2.489049088754555152e-04, 2.482509247276734935e-04, 2.475965791494475214e-04, 2.469418732273670220e-04, 2.462868080484795479e-04, 2.456313847003762708e-04, 2.449756042712043411e-04, 2.443194678495486561e-04, 2.436629765245185413e-04, 2.430061313857727421e-04, 2.423489335234325513e-04, 2.416913840281079931e-04, 2.410334839909823365e-04, 2.403752345036970614e-04, 2.397166366583758737e-04, 2.390576915476393962e-04, 2.383984002646164716e-04, 2.377387639029719451e-04, 2.370787835567907359e-04, 2.364184603206586103e-04, 2.357577952896944371e-04, 2.350967895594291630e-04, 2.344354442259773878e-04, 2.337737603858363537e-04, 2.331117391360538603e-04, 2.324493815740994080e-04, 2.317866887979749217e-04, 2.311236619060856492e-04, 2.304603019974115743e-04, 2.297966101712999541e-04, 2.291325875276418544e-04, 2.284682351667510173e-04, 2.278035541893913996e-04, 2.271385456968645872e-04, 2.264732107908896648e-04, 2.258075505736307825e-04, 2.251415661477102739e-04, 2.244752586162513470e-04, 2.238086290827575209e-04, 2.231416786512888085e-04, 2.224744084262523299e-04, 2.218068195125774114e-04, 2.211389130155981932e-04, 2.204706900410768314e-04, 2.198021516952947607e-04, 2.191332990849301796e-04, 2.184641333170719282e-04, 2.177946554993061702e-04, 2.171248667396093819e-04, 2.164547681463802823e-04, 2.157843608285209042e-04, 2.151136458953230236e-04, 2.144426244564897634e-04, 2.137712976221525600e-04, 2.130996665028838766e-04, 2.124277322097213529e-04, 2.117554958540529076e-04, 2.110829585476991642e-04, 2.104101214029442429e-04, 2.097369855324424646e-04, 2.090635520492495217e-04, 2.083898220669057723e-04, 2.077157966993192545e-04, 2.070414770607904333e-04, 2.063668642660274608e-04, 2.056919594301583195e-04, 2.050167636687587401e-04, 2.043412780977319908e-04, 2.036655038333942853e-04, 2.029894419925058454e-04, 2.023130936921468405e-04, 2.016364600498824584e-04, 2.009595421836235843e-04, 2.002823412116576200e-04, 1.996048582526608977e-04, 1.989270944257395812e-04, 1.982490508503111364e-04, 1.975707286462797814e-04, 1.968921289338277237e-04, 1.962132528335890124e-04, 1.955341014665321726e-04, 1.948546759539847902e-04, 1.941749774177247746e-04, 1.934950069798549433e-04, 1.928147657628347892e-04, 1.921342548894915396e-04, 1.914534754830625213e-04, 1.907724286670764403e-04, 1.900911155655281553e-04, 1.894095373026694811e-04, 1.887276950031854252e-04, 1.880455897920572537e-04, 1.873632227946691220e-04, 1.866805951367399871e-04, 1.859977079443584378e-04, 1.853145623439156364e-04, 1.846311594622120046e-04, 1.839475004263480440e-04, 1.832635863637528781e-04, 1.825794184022745117e-04, 1.818949976700553106e-04, 1.812103252955604617e-04, 1.805254024075930708e-04, 1.798402301353056818e-04, 1.791548096082290356e-04, 1.784691419561493112e-04, 1.777832283091966233e-04, 1.770970697978750013e-04, 1.764106675529380575e-04, 1.757240227055676914e-04, 1.750371363871628869e-04, 1.743500097295191205e-04, 1.736626438646866292e-04, 1.729750399250952291e-04, 1.722871990434118785e-04, 1.715991223527226070e-04, 1.709108109863176806e-04, 1.702222660778727450e-04, 1.695334887613231668e-04, 1.688444801708959084e-04, 1.681552414411961564e-04, 1.674657737070853756e-04, 1.667760781037091458e-04, 1.660861557665097119e-04, 1.653960078312718181e-04, 1.647056354339981605e-04, 1.640150397110888222e-04, 1.633242217991283905e-04, 1.626331828350655821e-04, 1.619419239560893184e-04, 1.612504462996586501e-04, 1.605587510035911462e-04, 1.598668392059395124e-04, 1.591747120450199150e-04, 1.584823706594256699e-04, 1.577898161880711251e-04, 1.570970497700674656e-04, 1.564040725448890569e-04, 1.557108856522346674e-04, 1.550174902320537328e-04, 1.543238874245636766e-04, 1.536300783702596680e-04, 1.529360642099456837e-04, 1.522418460846091206e-04, 1.515474251355108926e-04, 1.508528025042143246e-04, 1.501579793324608219e-04, 1.494629567623523682e-04, 1.487677359361334927e-04, 1.480723179963755302e-04, 1.473767040858495799e-04, 1.466808953475734240e-04, 1.459848929248223968e-04, 1.452886979611598241e-04, 1.445923116003121226e-04, 1.438957349862585449e-04, 1.431989692632605886e-04, 1.425020155757356056e-04, 1.418048750684432029e-04, 1.411075488862634968e-04, 1.404100381743821860e-04, 1.397123440781505540e-04, 1.390144677432058966e-04, 1.383164103153306575e-04, 1.376181729406370674e-04, 1.369197567653472950e-04, 1.362211629359787375e-04, 1.355223925992169245e-04, 1.348234469019456594e-04, 1.341243269913369534e-04, 1.334250340147278061e-04, 1.327255691196450068e-04, 1.320259334538226444e-04, 1.313261281652452312e-04, 1.306261544020212038e-04, 1.299260133125680237e-04, 1.292257060453933307e-04, 1.285252337492782005e-04, 1.278245975731365236e-04, 1.271237986661209317e-04, 1.264228381775599143e-04, 1.257217172569868478e-04, 1.250204370540739678e-04, 1.243189987187419551e-04, 1.236174034010480453e-04, 1.229156522512157639e-04, 1.222137464197243454e-04, 1.215116870571854188e-04, 1.208094753143704517e-04, 1.201071123422246687e-04, 1.194045992918806037e-04, 1.187019373146879837e-04, 1.179991275620871069e-04, 1.172961711856991844e-04, 1.165930693373579987e-04, 1.158898231689804497e-04, 1.151864338327545560e-04, 1.144829024809170708e-04, 1.137792302659403309e-04, 1.130754183404046191e-04, 1.123714678570433075e-04, 1.116673799687563964e-04, 1.109631558286407638e-04, 1.102587965898464543e-04, 1.095543034057478609e-04, 1.088496774298154641e-04, 1.081449198156464876e-04, 1.074400317170561204e-04, 1.067350142879509362e-04, 1.060298686823576926e-04, 1.053245960544376558e-04, 1.046191975585311076e-04, 1.039136743490316317e-04, 1.032080275805694796e-04, 1.025022584077932395e-04, 1.017963679855547467e-04, 1.010903574687811208e-04, 1.003842280125049474e-04, 9.967798077195708529e-05, 9.897161690243820240e-05, 9.826513755934880817e-05, 9.755854389820291445e-05, 9.685183707467334160e-05, 9.614501824446448734e-05, 9.543808856349795579e-05, 9.473104918769216618e-05, 9.402390127314764307e-05, 9.331664597600444375e-05, 9.260928445253469488e-05, 9.190181785915567067e-05, 9.119424735230328006e-05, 9.048657408852297710e-05, 8.977879922450090458e-05, 8.907092391693579561e-05, 8.836294932272425020e-05, 8.765487659874094035e-05, 8.694670690202455077e-05, 8.623844138964915180e-05, 8.553008121877092855e-05, 8.482162754664148948e-05, 8.411308153063703141e-05, 8.340444432813066120e-05, 8.269571709658584042e-05, 8.198690099358504890e-05, 8.127799717670198447e-05, 8.056900680368910277e-05, 7.985993103225498991e-05, 7.915077102025167195e-05, 7.844152792553021273e-05, 7.773220290606615605e-05, 7.702279711981444585e-05, 7.631331172489811809e-05, 7.560374787938406059e-05, 7.489410674147181331e-05, 7.418438946936476515e-05, 7.347459722129988813e-05, 7.276473115564064005e-05, 7.205479243074858133e-05, 7.134478220501365138e-05, 7.063470163686746365e-05, 6.992455188482886918e-05, 6.921433410737577686e-05, 6.850404946313366902e-05, 6.779369911065053465e-05, 6.708328420858690293e-05, 6.637280591558601000e-05, 6.566226539030385850e-05, 6.495166379150254024e-05, 6.424100227792129748e-05, 6.353028200830696188e-05, 6.281950414142718178e-05, 6.210866983608492344e-05, 6.139778025114789350e-05, 6.068683654540435370e-05, 5.997583987773515667e-05, 5.926479140698555928e-05, 5.855369229201031877e-05, 5.784254369168868176e-05, 5.713134676495264811e-05, 5.642010267065969230e-05, 5.570881256768514430e-05, 5.499747761495260139e-05, 5.428609897130450153e-05, 5.357467779569137088e-05, 5.286321524694704156e-05, 5.215171248397782459e-05, 5.144017066563324591e-05, 5.072859095075213175e-05, 5.001697449817608661e-05, 4.930532246677999319e-05, 4.859363601534258582e-05, 4.788191630264018646e-05, 4.717016448747628313e-05, 4.645838172855294349e-05, 4.574656918465923566e-05, 4.503472801444701520e-05, 4.432285937661995575e-05, 4.361096442978815754e-05, 4.289904433259370475e-05, 4.218710024356621592e-05, 4.147513332131036348e-05, 4.076314472428307022e-05, 4.005113561098113046e-05, 3.933910713981282018e-05, 3.862706046912777358e-05, 3.791499675730981790e-05, 3.720291716264903753e-05, 3.649082284337076967e-05, 3.577871495764992256e-05, 3.506659466365692534e-05, 3.435446311942847082e-05, 3.364232148305635635e-05, 3.293017091246356904e-05, 3.221801256559221860e-05, 3.150584760025960273e-05, 3.079367717426689165e-05, 3.008150244533400476e-05, 2.936932457112931106e-05, 2.865714470920449229e-05, 2.794496401710348151e-05, 2.723278365221804741e-05, 2.652060477197611344e-05, 2.580842853361789036e-05, 2.509625609438423949e-05, 2.438408861138800494e-05, 2.367192724165974668e-05, 2.295977314216160811e-05, 2.224762746981717571e-05, 2.153549138138285198e-05, 2.082336603354105616e-05, 2.011125258292997884e-05, 1.939915218601500233e-05, 1.868706599927704351e-05, 1.797499517898868305e-05, 1.726294088140247436e-05, 1.655090426262245890e-05, 1.583888647864959418e-05, 1.512688868539588064e-05, 1.441491203871430255e-05, 1.370295769425395825e-05, 1.299102680763288200e-05, 1.227912053430919163e-05, 1.156724002961091089e-05, 1.085538644882937341e-05, 1.014356094709033317e-05, 9.431764679383893482e-06, 8.719998800578459378e-06, 8.008264465466553584e-06, 7.296562828635849838e-06, 6.584895044657924866e-06, 5.873262267864003017e-06, 5.161665652533732805e-06, 4.450106352766217671e-06, 3.738585522509912858e-06, 3.027104315656046370e-06, 2.315663885909698439e-06, 1.604265386819756630e-06, 8.929099717928568460e-07, 1.815987941074313899e-07, -5.296669930564630063e-07, -1.240886236745917219e-06, -1.952057784141840835e-06, -2.663180482529104110e-06, -3.374253179409464747e-06, -4.085274722408202200e-06, -4.796243959260189709e-06, -5.507159737938606878e-06, -6.218020906561632647e-06, -6.928826313362593310e-06, -7.639574806818729308e-06, -8.350265235462710919e-06, -9.060896448106542099e-06, -9.771467293653154096e-06, -1.048197662122498844e-05, -1.119242328011847740e-05, -1.190280611978991207e-05, -1.261312398982569458e-05, -1.332337574007088382e-05, -1.403356022053612516e-05, -1.474367628136761125e-05, -1.545372277297590220e-05, -1.616369854584745228e-05, -1.687360245076852136e-05, -1.758343333863665250e-05, -1.829319006060530793e-05, -1.900287146795890455e-05, -1.971247641225726691e-05, -2.042200374514735559e-05, -2.113145231858689057e-05, -2.184082098465613380e-05, -2.255010859568659754e-05, -2.325931400423090689e-05, -2.396843606296991761e-05, -2.467747362484114658e-05, -2.538642554300903420e-05, -2.609529067085063632e-05, -2.680406786194209877e-05, -2.751275597002871990e-05, -2.822135384915307272e-05, -2.892986035356240050e-05, -2.963827433767852340e-05, -3.034659465619472885e-05, -3.105482016404567143e-05, -3.176294971631502250e-05, -3.247098216836298936e-05, -3.317891637581295923e-05, -3.388675119445832222e-05, -3.459448548040627722e-05, -3.530211808989059693e-05, -3.600964787949437722e-05, -3.671707370596183996e-05, -3.742439442632761057e-05, -3.813160889787019220e-05, -3.883871597809844707e-05, -3.954571452472199777e-05, -4.025260339577901403e-05, -4.095938144954341177e-05, -4.166604754449553227e-05, -4.237260053944965781e-05, -4.307903929336680390e-05, -4.378536266557768545e-05, -4.449156951559438404e-05, -4.519765870323944258e-05, -4.590362908859985439e-05, -4.660947953201298222e-05, -4.731520889403712887e-05, -4.802081603557943921e-05, -4.872629981780326862e-05, -4.943165910209784567e-05, -5.013689275020725831e-05, -5.084199962405845197e-05, -5.154697858590418836e-05, -5.225182849829444293e-05, -5.295654822406207297e-05, -5.366113662630837751e-05, -5.436559256837456916e-05, -5.506991491396825311e-05, -5.577410252707210340e-05, -5.647815427191277347e-05, -5.718206901305871825e-05, -5.788584561538911825e-05, -5.858948294400242708e-05, -5.929297986434324346e-05, -5.999633524217331556e-05, -6.069954794355695850e-05, -6.140261683484793550e-05, -6.210554078265898502e-05, -6.280831865399010222e-05, -6.351094931613602938e-05, -6.421343163665590504e-05, -6.491576448348577706e-05, -6.561794672483049415e-05, -6.631997722922786348e-05, -6.702185486551944502e-05, -6.772357850291491250e-05, -6.842514701088435144e-05, -6.912655925930084530e-05, -6.982781411825438576e-05, -7.052891045827306348e-05, -7.122984715013704613e-05, -7.193062306500537582e-05, -7.263123707437087987e-05, -7.333168805004676731e-05, -7.403197486413623063e-05, -7.473209638916034092e-05, -7.543205149796579584e-05, -7.613183906369479237e-05, -7.683145795991303038e-05, -7.753090706042275559e-05, -7.823018523948443818e-05, -7.892929137163020876e-05, -7.962822433179127918e-05, -8.032698299525254163e-05, -8.102556623763874498e-05, -8.172397293488539759e-05, -8.242220196338068930e-05, -8.312025219979582739e-05, -8.381812252121160361e-05, -8.451581180508897166e-05, -8.521331892917732365e-05, -8.591064277164128760e-05, -8.660778221103046460e-05, -8.730473612626675722e-05, -8.800150339663024776e-05, -8.869808290172901679e-05, -8.939447352162657756e-05, -9.009067413674985432e-05, -9.078668362786009862e-05, -9.148250087614726912e-05, -9.217812476320188294e-05, -9.287355417092246551e-05, -9.356878798164190074e-05, -9.426382507809913337e-05, -9.495866434342380038e-05, -9.565330466112412862e-05, -9.634774491505645512e-05, -9.704198398955142827e-05, -9.773602076932331431e-05, -9.842985413944020884e-05, -9.912348298543444927e-05, -9.981690619321158253e-05, -1.005101226490362839e-04, -1.012031312396581383e-04, -1.018959308522210952e-04, -1.025885203742341148e-04, -1.032808986936957691e-04, -1.039730646989111613e-04, -1.046650172787112054e-04, -1.053567553222664691e-04, -1.060482777192149601e-04, -1.067395833596159800e-04, -1.074306711339375475e-04, -1.081215399330265559e-04, -1.088121886482340523e-04, -1.095026161713251271e-04, -1.101928213944486108e-04, -1.108828032102642365e-04, -1.115725605117565920e-04, -1.122620921924554014e-04, -1.129513971462505205e-04, -1.136404742675336415e-04, -1.143293224510909571e-04, -1.150179405921678195e-04, -1.157063275864386812e-04, -1.163944823300711034e-04, -1.170824037196190298e-04, -1.177700906521341476e-04, -1.184575420251340801e-04, -1.191447567365134684e-04, -1.198317336846695488e-04, -1.205184717684713484e-04, -1.212049698872472029e-04, -1.218912269407706350e-04, -1.225772418292318399e-04, -1.232630134533630188e-04, -1.239485407143449348e-04, -1.246338225137820705e-04, -1.253188577537942298e-04, -1.260036453369865327e-04, -1.266881841663623537e-04, -1.273724731454445086e-04, -1.280565111782641413e-04, -1.287402971692682958e-04, -1.294238300234616483e-04, -1.301071086462231416e-04, -1.307901319435229067e-04, -1.314728988217388705e-04, -1.321554081877828477e-04, -1.328376589490553846e-04, -1.335196500134320976e-04, -1.342013802892352131e-04, -1.348828486853573293e-04, -1.355640541111715898e-04, -1.362449954765033858e-04, -1.369256716917521940e-04, -1.376060816677137668e-04, -1.382862243157916059e-04, -1.389660985478190182e-04, -1.396457032761801392e-04, -1.403250374137829642e-04, -1.410040998739686539e-04, -1.416828895706351613e-04, -1.423614054182099095e-04, -1.430396463316350195e-04, -1.437176112263225053e-04, -1.443952990182802317e-04, -1.450727086239432658e-04, -1.457498389603160711e-04, -1.464266889449404683e-04, -1.471032574958840080e-04, -1.477795435317258487e-04, -1.484555459715290824e-04, -1.491312637349620572e-04, -1.498066957422114237e-04, -1.504818409139506939e-04, -1.511566981714354335e-04, -1.518312664364741512e-04, -1.525055446313371176e-04, -1.531795316788823764e-04, -1.538532265025252782e-04, -1.545266280262243047e-04, -1.551997351744701997e-04, -1.558725468722547980e-04, -1.565450620451958172e-04, -1.572172796194460287e-04, -1.578891985216664779e-04, -1.585608176791333053e-04, -1.592321360196316028e-04, -1.599031524715215774e-04, -1.605738659637074889e-04, -1.612442754256997201e-04, -1.619143797875110462e-04, -1.625841779797952225e-04, -1.632536689336663296e-04, -1.639228515809123339e-04, -1.645917248538158691e-04, -1.652602876852753957e-04, -1.659285390087636219e-04, -1.665964777583122975e-04, -1.672641028684849194e-04, -1.679314132744995987e-04, -1.685984079121376352e-04, -1.692650857177178492e-04, -1.699314456282171443e-04, -1.705974865810932952e-04, -1.712632075144946591e-04, -1.719286073670842638e-04, -1.725936850781742220e-04, -1.732584395876238703e-04, -1.739228698359017314e-04, -1.745869747640558340e-04, -1.752507533137755938e-04, -1.759142044272900339e-04, -1.765773270474724915e-04, -1.772401201178139198e-04, -1.779025825823341456e-04, -1.785647133857027312e-04, -1.792265114732105407e-04, -1.798879757907583562e-04, -1.805491052848414010e-04, -1.812098989025228844e-04, -1.818703555915531834e-04, -1.825304743002838649e-04, -1.831902539776392798e-04, -1.838496935732059827e-04, -1.845087920372058164e-04, -1.851675483204094739e-04, -1.858259613742549747e-04, -1.864840301508202344e-04, -1.871417536028113554e-04, -1.877991306835465263e-04, -1.884561603469316277e-04, -1.891128415475918539e-04, -1.897691732407135552e-04, -1.904251543821610607e-04, -1.910807839284373217e-04, -1.917360608366677299e-04, -1.923909840645746929e-04, -1.930455525705950805e-04, -1.936997653137963887e-04, -1.943536212538452977e-04, -1.950071193511301328e-04, -1.956602585665846543e-04, -1.963130378618947877e-04, -1.969654561993258290e-04, -1.976175125418407313e-04, -1.982692058530705602e-04, -1.989205350972324195e-04, -1.995714992392429404e-04, -2.002220972446955944e-04, -2.008723280798441321e-04, -2.015221907115634706e-04, -2.021716841074639142e-04, -2.028208072357224256e-04, -2.034695590652857509e-04, -2.041179385656968390e-04, -2.047659447072286865e-04, -2.054135764607992545e-04, -2.060608327979558023e-04, -2.067077126909964535e-04, -2.073542151128822126e-04, -2.080003390372091017e-04, -2.086460834382994768e-04, -2.092914472911718601e-04, -2.099364295714572668e-04, -2.105810292555170579e-04, -2.112252453204131785e-04, -2.118690767438982919e-04, -2.125125225044012783e-04, -2.131555815809987474e-04, -2.137982529535372008e-04, -2.144405356025409564e-04, -2.150824285091894339e-04, -2.157239306554200730e-04, -2.163650410238268792e-04, -2.170057585977204072e-04, -2.176460823611006288e-04, -2.182860112987163742e-04, -2.189255443959659648e-04, -2.195646806390278598e-04, -2.202034190146914935e-04, -2.208417585105572020e-04, -2.214796981148682261e-04, -2.221172368166253930e-04, -2.227543736055600382e-04, -2.233911074720513351e-04, -2.240274374072400278e-04, -2.246633624030038468e-04, -2.252988814519416797e-04, -2.259339935473373047e-04, -2.265686976832692200e-04, -2.272029928544452490e-04, -2.278368780564022234e-04, -2.284703522853368473e-04, -2.291034145382205684e-04, -2.297360638127740997e-04, -2.303682991073818212e-04, -2.310001194212091724e-04, -2.316315237541745440e-04, -2.322625111069350748e-04, -2.328930804808501144e-04, -2.335232308780918389e-04, -2.341529613014927032e-04, -2.347822707546753289e-04, -2.354111582420236916e-04, -2.360396227686732814e-04, -2.366676633404940272e-04, -2.372952789640712414e-04, -2.379224686468105979e-04, -2.385492313968632413e-04, -2.391755662230937479e-04, -2.398014721351698442e-04, -2.404269481435334309e-04, -2.410519932593177777e-04, -2.416766064944636679e-04, -2.423007868616914803e-04, -2.429245333744885584e-04, -2.435478450470952242e-04, -2.441707208944816844e-04, -2.447931599324605981e-04, -2.454151611776023189e-04, -2.460367236472112053e-04, -2.466578463594234702e-04, -2.472785283331109573e-04, -2.478987685879406643e-04, -2.485185661443439515e-04, -2.491379200235794796e-04, -2.497568292476330838e-04, -2.503752928393456552e-04, -2.509933098222485049e-04, -2.516108792207581409e-04, -2.522280000600127703e-04, -2.528446713659845144e-04, -2.534608921654509482e-04, -2.540766614859172007e-04, -2.546919783557249710e-04, -2.553068418040286766e-04, -2.559212508607826048e-04, -2.565352045566977619e-04, -2.571487019233604306e-04, -2.577617419930627635e-04, -2.583743237989985357e-04, -2.589864463751000265e-04, -2.595981087561643292e-04, -2.602093099777557728e-04, -2.608200490762639808e-04, -2.614303250888809407e-04, -2.620401370536503348e-04, -2.626494840093797204e-04, -2.632583649957359389e-04, -2.638667790532176318e-04, -2.644747252230749009e-04, -2.650822025474222285e-04, -2.656892100692115886e-04, -2.662957468322206295e-04, -2.669018118810381453e-04, -2.675074042610421209e-04, -2.681125230185083148e-04, -2.687171672005285103e-04, -2.693213358549881265e-04, -2.699250280306469919e-04, -2.705282427771139192e-04, -2.711309791447667457e-04, -2.717332361848643859e-04, -2.723350129495179369e-04, -2.729363084916807043e-04, -2.735371218651352454e-04, -2.741374521244677826e-04, -2.747372983251933202e-04, -2.753366595236059699e-04, -2.759355347768893772e-04, -2.765339231430910798e-04, -2.771318236810446623e-04, -2.777292354504750315e-04, -2.783261575119764619e-04, -2.789225889270027293e-04, -2.795185287578203816e-04, -2.801139760676250195e-04, -2.807089299203811600e-04, -2.813033893810045990e-04, -2.818973535152127915e-04, -2.824908213896264414e-04, -2.830837920717440225e-04, -2.836762646298706010e-04, -2.842682381332167145e-04, -2.848597116518791273e-04, -2.854506842568265736e-04, -2.860411550198624061e-04, -2.866311230137312278e-04, -2.872205873119627125e-04, -2.878095469890558649e-04, -2.883980011203255518e-04, -2.889859487820187829e-04, -2.895733890512398466e-04, -2.901603210059382210e-04, -2.907467437250126573e-04, -2.913326562882396771e-04, -2.919180577762397447e-04, -2.925029472705669852e-04, -2.930873238536776341e-04, -2.936711866088566368e-04, -2.942545346203199433e-04, -2.948373669731960763e-04, -2.954196827535069954e-04, -2.960014810481615376e-04, -2.965827609449297217e-04, -2.971635215325482411e-04, -2.977437619006424556e-04, -2.983234811397032977e-04, -2.989026783411934162e-04, -2.994813525973890451e-04, -3.000595030015688718e-04, -3.006371286478544424e-04, -3.012142286313317010e-04, -3.017908020479451712e-04, -3.023668479946216639e-04, -3.029423655691106825e-04, -3.035173538701692797e-04, -3.040918119974079376e-04, -3.046657390513981753e-04, -3.052391341336415406e-04, -3.058119963465014677e-04, -3.063843247933010182e-04, -3.069561185783034195e-04, -3.075273768066982415e-04, -3.080980985845634492e-04, -3.086682830189727391e-04, -3.092379292178383835e-04, -3.098070362900962505e-04, -3.103756033455532556e-04, -3.109436294949869469e-04, -3.115111138501263136e-04, -3.120780555235724233e-04, -3.126444536289056490e-04, -3.132103072806722796e-04, -3.137756155943074868e-04, -3.143403776862295431e-04, -3.149045926738172152e-04, -3.154682596753256309e-04, -3.160313778099995774e-04, -3.165939461980456920e-04, -3.171559639606189094e-04, -3.177174302198137882e-04, -3.182783440986398449e-04, -3.188387047211252586e-04, -3.193985112122396750e-04, -3.199577626978731193e-04, -3.205164583049109682e-04, -3.210745971612119954e-04, -3.216321783955311759e-04, -3.221892011376264260e-04, -3.227456645182290589e-04, -3.233015676690392847e-04, -3.238569097227085385e-04, -3.244116898128181757e-04, -3.249659070739838802e-04, -3.255195606417772775e-04, -3.260726496527058759e-04, -3.266251732443108623e-04, -3.271771305550349378e-04, -3.277285207243337732e-04, -3.282793428926535670e-04, -3.288295962014167869e-04, -3.293792797929906207e-04, -3.299283928107851500e-04, -3.304769343991049231e-04, -3.310249037033278488e-04, -3.315722998697535700e-04, -3.321191220457039698e-04, -3.326653693795041979e-04, -3.332110410204053665e-04, -3.337561361186848941e-04, -3.343006538256263383e-04, -3.348445932935059524e-04, -3.353879536755586415e-04, -3.359307341260736428e-04, -3.364729338002534170e-04, -3.370145518543847356e-04, -3.375555874456912290e-04, -3.380960397324505890e-04, -3.386359078739000265e-04, -3.391751910302982873e-04, -3.397138883628936690e-04, -3.402519990339779592e-04, -3.407895222068019225e-04, -3.413264570456632290e-04, -3.418628027158778318e-04, -3.423985583837162150e-04, -3.429337232164966364e-04, -3.434682963825632794e-04, -3.440022770512757917e-04, -3.445356643929984967e-04, -3.450684575790764329e-04, -3.456006557819358595e-04, -3.461322581750103135e-04, -3.466632639327176251e-04, -3.471936722305619949e-04, -3.477234822449843743e-04, -3.482526931535375098e-04, -3.487813041347398468e-04, -3.493093143681864974e-04, -3.498367230344534519e-04, -3.503635293152075158e-04, -3.508897323930640637e-04, -3.514153314517536259e-04, -3.519403256759832195e-04, -3.524647142515310535e-04, -3.529884963652222965e-04, -3.535116712048638624e-04, -3.540342379593344529e-04, -3.545561958185665602e-04, -3.550775439735363837e-04, -3.555982816162261539e-04, -3.561184079397213312e-04, -3.566379221380706899e-04, -3.571568234064519294e-04, -3.576751109410344150e-04, -3.581927839390684071e-04, -3.587098415988685274e-04, -3.592262831197452376e-04, -3.597421077020909242e-04, -3.602573145473700876e-04, -3.607719028581002590e-04, -3.612858718378187707e-04, -3.617992206911833149e-04, -3.623119486238378286e-04, -3.628240548425228649e-04, -3.633355385550516323e-04, -3.638463989703014838e-04, -3.643566352982005813e-04, -3.648662467497103311e-04, -3.653752325369117953e-04, -3.658835918729465481e-04, -3.663913239719892461e-04, -3.668984280493428206e-04, -3.674049033212993748e-04, -3.679107490053058500e-04, -3.684159643198230247e-04, -3.689205484844247738e-04, -3.694245007197575190e-04, -3.699278202475375730e-04, -3.704305062905215401e-04, -3.709325580726055213e-04, -3.714339748187535026e-04, -3.719347557549786522e-04, -3.724349001084336893e-04, -3.729344071072759003e-04, -3.734332759808300407e-04, -3.739315059594486897e-04, -3.744290962746190440e-04, -3.749260461588707605e-04, -3.754223548458818292e-04, -3.759180215703431557e-04, -3.764130455681162046e-04, -3.769074260761008893e-04, -3.774011623323249645e-04, -3.778942535759260285e-04, -3.783866990470798573e-04, -3.788784979870972783e-04, -3.793696496383978239e-04, -3.798601532445046902e-04, -3.803500080500063019e-04, -3.808392133006524268e-04, -3.813277682432200059e-04, -3.818156721256665679e-04, -3.823029241970037030e-04, -3.827895237073814677e-04, -3.832754699080728267e-04, -3.837607620514036136e-04, -3.842453993908449047e-04, -3.847293811810018516e-04, -3.852127066775491715e-04, -3.856953751373108359e-04, -3.861773858182352965e-04, -3.866587379793344449e-04, -3.871394308807710530e-04, -3.876194637838375231e-04, -3.880988359509483527e-04, -3.885775466456264731e-04, -3.890555951324870952e-04, -3.895329806773204884e-04, -3.900097025470350052e-04, -3.904857600096287300e-04, -3.909611523342825575e-04, -3.914358787912301427e-04, -3.919099386519103939e-04, -3.923833311888374228e-04, -3.928560556756906957e-04, -3.933281113872817486e-04, -3.937994975995458930e-04, -3.942702135895185807e-04, -3.947402586354280480e-04, -3.952096320166272828e-04, -3.956783330135751594e-04, -3.961463609079251256e-04, -3.966137149824053992e-04, -3.970803945209170878e-04, -3.975463988085157032e-04, -3.980117271314012411e-04, -3.984763787768841369e-04, -3.989403530334753091e-04, -3.994036491907584398e-04, -3.998662665395393782e-04, -4.003282043717189091e-04, -4.007894619803819831e-04, -4.012500386597726170e-04, -4.017099337052351302e-04, -4.021691464133023987e-04, -4.026276760816671781e-04, -4.030855220091793386e-04, -4.035426834958160498e-04, -4.039991598427614692e-04, -4.044549503522885101e-04, -4.049100543278986498e-04, -4.053644710742059735e-04, -4.058181998970268383e-04, -4.062712401033088038e-04, -4.067235910011737289e-04, -4.071752518998978765e-04, -4.076262221099573421e-04, -4.080765009429512379e-04, -4.085260877116973191e-04, -4.089749817301144025e-04, -4.094231823133601686e-04, -4.098706887777152060e-04, -4.103175004406606403e-04, -4.107636166208506498e-04, -4.112090366381059058e-04, -4.116537598133910214e-04, -4.120977854688970049e-04, -4.125411129279846103e-04, -4.129837415151586962e-04, -4.134256705561578887e-04, -4.138668993778289772e-04, -4.143074273082705166e-04, -4.147472536767156251e-04, -4.151863778136176365e-04, -4.156247990505788133e-04, -4.160625167204328552e-04, -4.164995301571311655e-04, -4.169358386958865628e-04, -4.173714416730436643e-04, -4.178063384261729405e-04, -4.182405282940419291e-04, -4.186740106165610801e-04, -4.191067847348646904e-04, -4.195388499912878111e-04, -4.199702057293611514e-04, -4.204008512937825641e-04, -4.208307860304959756e-04, -4.212600092865708226e-04, -4.216885204103483649e-04, -4.221163187513165692e-04, -4.225434036601945676e-04, -4.229697744889142266e-04, -4.233954305905597028e-04, -4.238203713194482161e-04, -4.242445960311096121e-04, -4.246681040822827846e-04, -4.250908948309003337e-04, -4.255129676360725746e-04, -4.259343218581790975e-04, -4.263549568587576377e-04, -4.267748720005871792e-04, -4.271940666476568382e-04, -4.276125401651565934e-04, -4.280302919194666606e-04, -4.284473212782205932e-04, -4.288636276102658716e-04, -4.292792102856302929e-04, -4.296940686756111467e-04, -4.301082021526541092e-04, -4.305216100904899076e-04, -4.309342918640249234e-04, -4.313462468494112865e-04, -4.317574744240244324e-04, -4.321679739664513378e-04, -4.325777448564755595e-04, -4.329867864751516101e-04, -4.333950982047491221e-04, -4.338026794287373430e-04, -4.342095295318591872e-04, -4.346156479000191832e-04, -4.350210339204163969e-04, -4.354256869814350354e-04, -4.358296064727238653e-04, -4.362327917851300217e-04, -4.366352423107777215e-04, -4.370369574429588131e-04, -4.374379365762682474e-04, -4.378381791064852495e-04, -4.382376844306560431e-04, -4.386364519470729796e-04, -4.390344810552206534e-04, -4.394317711558488686e-04, -4.398283216509565928e-04, -4.402241319437838799e-04, -4.406192014387878548e-04, -4.410135295417093380e-04, -4.414071156594715265e-04, -4.417999592003041894e-04, -4.421920595736379580e-04, -4.425834161901843946e-04, -4.429740284618769570e-04, -4.433638958019040671e-04, -4.437530176246953415e-04, -4.441413933459561775e-04, -4.445290223826063331e-04, -4.449159041528623804e-04, -4.453020380761286349e-04, -4.456874235731269349e-04, -4.460720600657881664e-04, -4.464559469773229537e-04, -4.468390837322016012e-04, -4.472214697561361502e-04, -4.476031044760753370e-04, -4.479839873202650920e-04, -4.483641177182046827e-04, -4.487434951006274704e-04, -4.491221188995678584e-04, -4.494999885482644738e-04, -4.498771034812754717e-04, -4.502534631343835594e-04, -4.506290669446566034e-04, -4.510039143504319622e-04, -4.513780047912993565e-04, -4.517513377080926290e-04, -4.521239125429634700e-04, -4.524957287392915371e-04, -4.528667857417441409e-04, -4.532370829962748351e-04, -4.536066199500612918e-04, -4.539753960515775094e-04, -4.543434107505814530e-04, -4.547106634981013386e-04, -4.550771537464151965e-04, -4.554428809491189588e-04, -4.558078445610220511e-04, -4.561720440382713705e-04, -4.565354788382495880e-04, -4.568981484196414471e-04, -4.572600522424175550e-04, -4.576211897677906352e-04, -4.579815604582717975e-04, -4.583411637776692912e-04, -4.586999991910676341e-04, -4.590580661648274502e-04, -4.594153641665700192e-04, -4.597718926652381551e-04, -4.601276511310553857e-04, -4.604826390355047563e-04, -4.608368558513875938e-04, -4.611903010527789999e-04, -4.615429741150147325e-04, -4.618948745147616244e-04, -4.622460017299715590e-04, -4.625963552398548533e-04, -4.629459345249589165e-04, -4.632947390670666063e-04, -4.636427683493075762e-04, -4.639900218560670943e-04, -4.643364990730454575e-04, -4.646821994872430838e-04, -4.650271225869433817e-04, -4.653712678617049985e-04, -4.657146348024225895e-04, -4.660572229012815526e-04, -4.663990316517397055e-04, -4.667400605485978130e-04, -4.670803090878992980e-04, -4.674197767670457094e-04, -4.677584630846973006e-04, -4.680963675408502246e-04, -4.684334896367740842e-04, -4.687698288750790439e-04, -4.691053847596252991e-04, -4.694401567956343153e-04, -4.697741444895955324e-04, -4.701073473493238815e-04, -4.704397648839548523e-04, -4.707713966038902824e-04, -4.711022420208656864e-04, -4.714323006479319332e-04, -4.717615719994524811e-04, -4.720900555910927522e-04, -4.724177509398062012e-04, -4.727446575639004511e-04, -4.730707749829843301e-04, -4.733961027179591440e-04, -4.737206402910660013e-04, -4.740443872258640209e-04, -4.743673430471937943e-04, -4.746895072812359331e-04, -4.750108794554923114e-04, -4.753314590987861208e-04, -4.756512457412490221e-04, -4.759702389143124720e-04, -4.762884381507700646e-04, -4.766058429846982761e-04, -4.769224529515198908e-04, -4.772382675879804199e-04, -4.775532864321369335e-04, -4.778675090233486288e-04, -4.781809349023393883e-04, -4.784935636111446538e-04, -4.788053946931067101e-04, -4.791164276929294375e-04, -4.794266621565940688e-04, -4.797360976314579608e-04, -4.800447336661691584e-04, -4.803525698107287910e-04, -4.806596056164667320e-04, -4.809658406360339008e-04, -4.812712744233892527e-04, -4.815759065338638006e-04, -4.818797365241074895e-04, -4.821827639520859438e-04, -4.824849883771290936e-04, -4.827864093598544675e-04, -4.830870264622605967e-04, -4.833868392476488979e-04, -4.836858472806791309e-04, -4.839840501273283066e-04, -4.842814473549347061e-04, -4.845780385321330451e-04, -4.848738232289400720e-04, -4.851688010166799745e-04, -4.854629714680352829e-04, -4.857563341570332637e-04, -4.860488886590101946e-04, -4.863406345506651415e-04, -4.866315714100406592e-04, -4.869216988165278332e-04, -4.872110163508487700e-04, -4.874995235950504708e-04, -4.877872201325575787e-04, -4.880741055481344309e-04, -4.883601794278681456e-04, -4.886454413592205550e-04, -4.889298909309778987e-04, -4.892135277332806389e-04, -4.894963513576099622e-04, -4.897783613968162940e-04, -4.900595574450715940e-04, -4.903399390979300710e-04, -4.906195059522496871e-04, -4.908982576062845314e-04, -4.911761936596095767e-04, -4.914533137131656734e-04, -4.917296173692509847e-04, -4.920051042315053743e-04, -4.922797739049089962e-04, -4.925536259958204592e-04, -4.928266601119515649e-04, -4.930988758623464909e-04, -4.933702728574403378e-04, -4.936408507089769465e-04, -4.939106090301022484e-04, -4.941795474352867444e-04, -4.944476655403793903e-04, -4.947149629625834186e-04, -4.949814393204590495e-04, -4.952470942339047338e-04, -4.955119273242147241e-04, -4.957759382140170586e-04, -4.960391265273146524e-04, -4.963014918894795508e-04, -4.965630339272138986e-04, -4.968237522686044750e-04, -4.970836465431005763e-04, -4.973427163815219302e-04, -4.976009614160399391e-04, -4.978583812801754037e-04, -4.981149756088464444e-04, -4.983707440383252415e-04, -4.986256862062367345e-04, -4.988798017515870282e-04, -4.991330903147576459e-04, -4.993855515374642220e-04, -4.996371850628142895e-04, -4.998879905352813678e-04, -5.001379676007159129e-04, -5.003871159063273200e-04, -5.006354351006798032e-04, -5.008829248337340291e-04, -5.011295847568179515e-04, -5.013754145226119582e-04, -5.016204137851948408e-04, -5.018645822000019447e-04, -5.021079194238277713e-04, -5.023504251148646835e-04, -5.025920989326772108e-04, -5.028329405381830753e-04, -5.030729495937065346e-04, -5.033121257629043308e-04, -5.035504687108508003e-04, -5.037879781039657744e-04, -5.040246536100648862e-04, -5.042604948983384289e-04, -5.044955016393501629e-04, -5.047296735050247393e-04, -5.049630101686894412e-04, -5.051955113050498984e-04, -5.054271765901721973e-04, -5.056580057015276587e-04, -5.058879983179329900e-04, -5.061171541196189151e-04, -5.063454727881721695e-04, -5.065729540065853735e-04, -5.067995974592120383e-04, -5.070254028317955136e-04, -5.072503698114552186e-04, -5.074744980867109279e-04, -5.076977873474437407e-04, -5.079202372849352196e-04, -5.081418475918536223e-04, -5.083626179622312410e-04, -5.085825480914935677e-04, -5.088016376764635225e-04, -5.090198864153474678e-04, -5.092372940077311960e-04, -5.094538601545732081e-04, -5.096695845582461300e-04, -5.098844669225006086e-04, -5.100985069524647695e-04, -5.103117043546674192e-04, -5.105240588370311061e-04, -5.107355701088444732e-04, -5.109462378807983624e-04, -5.111560618649829951e-04, -5.113650417748596749e-04, -5.115731773253062156e-04, -5.117804682325547078e-04, -5.119869142142637270e-04, -5.121925149894604370e-04, -5.123972702785765856e-04, -5.126011798034370119e-04, -5.128042432872543339e-04, -5.130064604546196241e-04, -5.132078310315418748e-04, -5.134083547454198083e-04, -5.136080313250313608e-04, -5.138068605005713038e-04, -5.140048420035977931e-04, -5.142019755670974206e-04, -5.143982609254277522e-04, -5.145936978143559248e-04, -5.147882859710502983e-04, -5.149820251340557356e-04, -5.151749150433248279e-04, -5.153669554402098710e-04, -5.155581460674653598e-04, -5.157484866692265205e-04, -5.159379769910508355e-04, -5.161266167798673034e-04, -5.163144057840193726e-04, -5.165013437532484618e-04, -5.166874304387014411e-04, -5.168726655929191394e-04, -5.170570489698240926e-04, -5.172405803247702005e-04, -5.174232594144975153e-04, -5.176050859971443848e-04, -5.177860598322576438e-04, -5.179661806807897952e-04, -5.181454483050752661e-04, -5.183238624688629335e-04, -5.185014229373099449e-04, -5.186781294769758632e-04, -5.188539818558171373e-04, -5.190289798431822234e-04, -5.192031232098449781e-04, -5.193764117279788548e-04, -5.195488451711488802e-04, -5.197204233143395188e-04, -5.198911459339304944e-04, -5.200610128077079583e-04, -5.202300237148631875e-04, -5.203981784360002831e-04, -5.205654767531171963e-04, -5.207319184496359780e-04, -5.208975033103573505e-04, -5.210622311215167609e-04, -5.212261016707370014e-04, -5.213891147470610605e-04, -5.215512701409357518e-04, -5.217125676442161590e-04, -5.218730070501502406e-04, -5.220325881534125479e-04, -5.221913107500890470e-04, -5.223491746376546750e-04, -5.225061796150156247e-04, -5.226623254824616389e-04, -5.228176120417187033e-04, -5.229720390959009075e-04, -5.231256064495438387e-04, -5.232783139086002447e-04, -5.234301612804104350e-04, -5.235811483737371928e-04, -5.237312749987656658e-04, -5.238805409670705153e-04, -5.240289460916535379e-04, -5.241764901869288120e-04, -5.243231730687052420e-04, -5.244689945542142058e-04, -5.246139544621014226e-04, -5.247580526124284717e-04, -5.249012888266615159e-04, -5.250436629276687001e-04, -5.251851747397514843e-04, -5.253258240886207915e-04, -5.254656108013875749e-04, -5.256045347065888386e-04, -5.257425956341750615e-04, -5.258797934154983787e-04, -5.260161278833340491e-04, -5.261515988718692884e-04, -5.262862062167130263e-04, -5.264199497548800776e-04, -5.265528293247943945e-04, -5.266848447663054385e-04, -5.268159959206789641e-04, -5.269462826305854183e-04, -5.270757047401231424e-04, -5.272042620947972298e-04, -5.273319545415219118e-04, -5.274587819286427831e-04, -5.275847441059156604e-04, -5.277098409245048471e-04, -5.278340722370083960e-04, -5.279574378974145237e-04, -5.280799377611546282e-04, -5.282015716850566684e-04, -5.283223395273770398e-04, -5.284422411477936350e-04, -5.285612764073827508e-04, -5.286794451686483614e-04, -5.287967472955175646e-04, -5.289131826533310411e-04, -5.290287511088404525e-04, -5.291434525302266554e-04, -5.292572867870755241e-04, -5.293702537504015862e-04, -5.294823532926300246e-04, -5.295935852876113145e-04, -5.297039496106097306e-04, -5.298134461383076843e-04, -5.299220747488057231e-04, -5.300298353216289279e-04, -5.301367277377122761e-04, -5.302427518794169048e-04, -5.303479076305238219e-04, -5.304521948762238237e-04, -5.305556135031306133e-04, -5.306581633992821017e-04, -5.307598444541371556e-04, -5.308606565585665977e-04, -5.309605996048573275e-04, -5.310596734867271745e-04, -5.311578780993102614e-04, -5.312552133391559199e-04, -5.313516791042355216e-04, -5.314472752939483320e-04, -5.315420018090966829e-04, -5.316358585519151371e-04, -5.317288454260579115e-04, -5.318209623365952998e-04, -5.319122091900252728e-04, -5.320025858942519035e-04, -5.320920923586138808e-04, -5.321807284938631514e-04, -5.322684942121726171e-04, -5.323553894271433997e-04, -5.324414140537844569e-04, -5.325265680085293886e-04, -5.326108512092401224e-04, -5.326942635751926022e-04, -5.327768050270825350e-04, -5.328584754870348229e-04, -5.329392748785785183e-04, -5.330192031266835781e-04, -5.330982601577247603e-04, -5.331764458995077527e-04, -5.332537602812577890e-04, -5.333302032336149868e-04, -5.334057746886422622e-04, -5.334804745798294497e-04, -5.335543028420836531e-04, -5.336272594117324975e-04, -5.336993442265262986e-04, -5.337705572256328575e-04, -5.338408983496420153e-04, -5.339103675405686882e-04, -5.339789647418478804e-04, -5.340466898983315400e-04, -5.341135429562935463e-04, -5.341795238634324200e-04, -5.342446325688665534e-04, -5.343088690231321495e-04, -5.343722331781910291e-04, -5.344347249874254260e-04, -5.344963444056336508e-04, -5.345570913890376795e-04, -5.346169658952808776e-04, -5.346759678834343962e-04, -5.347340973139786324e-04, -5.347913541488175408e-04, -5.348477383512813439e-04, -5.349032498861178587e-04, -5.349578887194956405e-04, -5.350116548190049590e-04, -5.350645481536554131e-04, -5.351165686938779906e-04, -5.351677164115233335e-04, -5.352179912798662922e-04, -5.352673932735944320e-04, -5.353159223688288507e-04, -5.353635785430950131e-04, -5.354103617753511570e-04, -5.354562720459700789e-04, -5.355013093367472655e-04, -5.355454736308993755e-04, -5.355887649130583851e-04, -5.356311831692782020e-04, -5.356727283870353152e-04, -5.357134005552260849e-04, -5.357531996641637069e-04, -5.357921257055836333e-04, -5.358301786726375011e-04, -5.358673585599022394e-04, -5.359036653633682517e-04, -5.359390990804497159e-04, -5.359736597099798135e-04, -5.360073472522104048e-04, -5.360401617088079084e-04, -5.360721030828662038e-04, -5.361031713788916688e-04, -5.361333666028125040e-04, -5.361626887619767813e-04, -5.361911378651473478e-04, -5.362187139225075725e-04, -5.362454169456588524e-04, -5.362712469476251659e-04, -5.362962039428427734e-04, -5.363202879471678066e-04, -5.363434989778757258e-04, -5.363658370536596946e-04, -5.363873021946300368e-04, -5.364078944223127192e-04, -5.364276137596590008e-04, -5.364464602310267845e-04, -5.364644338621972052e-04, -5.364815346803676914e-04, -5.364977627141545666e-04, -5.365131179935876292e-04, -5.365276005501152471e-04, -5.365412104166008894e-04, -5.365539476273259445e-04, -5.365658122179872268e-04, -5.365768042257014220e-04, -5.365869236889941364e-04, -5.365961706478116064e-04, -5.366045451435144100e-04, -5.366120472188786600e-04, -5.366186769180975209e-04, -5.366244342867786078e-04, -5.366293193719392151e-04, -5.366333322220209539e-04, -5.366364728868721875e-04, -5.366387414177599575e-04, -5.366401378673656478e-04, -5.366406622897827066e-04, -5.366403147405189242e-04, -5.366390952764959988e-04, -5.366370039560512716e-04, -5.366340408389337147e-04, -5.366302059863053411e-04, -5.366254994607413129e-04, -5.366199213262308086e-04, -5.366134716481743127e-04, -5.366061504933844831e-04, -5.365979579300895119e-04, -5.365888940279240184e-04, -5.365789588579394573e-04, -5.365681524925982639e-04, -5.365564750057698427e-04, -5.365439264727415178e-04, -5.365305069702056310e-04, -5.365162165762714678e-04, -5.365010553704501872e-04, -5.364850234336718433e-04, -5.364681208482730262e-04, -5.364503476980005472e-04, -5.364317040680103557e-04, -5.364121900448678634e-04, -5.363918057165487042e-04, -5.363705511724375409e-04, -5.363484265033262224e-04, -5.363254318014147592e-04, -5.363015671603155524e-04, -5.362768326750454780e-04, -5.362512284420291406e-04, -5.362247545591009327e-04, -5.361974111254979875e-04, -5.361691982418715632e-04, -5.361401160102727314e-04, -5.361101645341626769e-04, -5.360793439184095540e-04, -5.360476542692855584e-04, -5.360150956944682290e-04, -5.359816683030421821e-04, -5.359473722054988948e-04, -5.359122075137280313e-04, -5.358761743410322964e-04, -5.358392728021112812e-04, -5.358015030130769667e-04, -5.357628650914380035e-04, -5.357233591561082761e-04, -5.356829853274069041e-04, -5.356417437270542294e-04, -5.355996344781724676e-04, -5.355566577052926465e-04, -5.355128135343386686e-04, -5.354681020926408633e-04, -5.354225235089319756e-04, -5.353760779133426122e-04, -5.353287654374074217e-04, -5.352805862140619505e-04, -5.352315403776401487e-04, -5.351816280638739369e-04, -5.351308494098992773e-04, -5.350792045542501025e-04, -5.350266936368598333e-04, -5.349733167990574755e-04, -5.349190741835744504e-04, -5.348639659345361379e-04, -5.348079921974700085e-04, -5.347511531192984668e-04, -5.346934488483444901e-04, -5.346348795343202438e-04, -5.345754453283407424e-04, -5.345151463829138751e-04, -5.344539828519492960e-04, -5.343919548907444380e-04, -5.343290626559958970e-04, -5.342653063057935768e-04, -5.342006859996202561e-04, -5.341352018983595027e-04, -5.340688541642798440e-04, -5.340016429610489708e-04, -5.339335684537248458e-04, -5.338646308087593908e-04, -5.337948301939965346e-04, -5.337241667786726471e-04, -5.336526407334131776e-04, -5.335802522302371008e-04, -5.335070014425555068e-04, -5.334328885451617352e-04, -5.333579137142524084e-04, -5.332820771274054223e-04, -5.332053789635887286e-04, -5.331278194031570817e-04, -5.330493986278611466e-04, -5.329701168208293921e-04, -5.328899741665904261e-04, -5.328089708510479498e-04, -5.327271070615026589e-04, -5.326443829866327282e-04, -5.325607988165115920e-04, -5.324763547425903805e-04, -5.323910509577148330e-04, -5.323048876561049152e-04, -5.322178650333712988e-04, -5.321299832865108081e-04, -5.320412426138949272e-04, -5.319516432152913759e-04, -5.318611852918441602e-04, -5.317698690460764994e-04, -5.316776946818957059e-04, -5.315846624045936176e-04, -5.314907724208454065e-04, -5.313960249387011210e-04, -5.313004201675916496e-04, -5.312039583183340331e-04, -5.311066396031116242e-04, -5.310084642355076970e-04, -5.309094324304643566e-04, -5.308095444043146307e-04, -5.307088003747617621e-04, -5.306072005608892909e-04, -5.305047451831554177e-04, -5.304014344634037361e-04, -5.302972686248416580e-04, -5.301922478920615550e-04, -5.300863724910226523e-04, -5.299796426490619794e-04, -5.298720585948978393e-04, -5.297636205586148464e-04, -5.296543287716706490e-04, -5.295441834668962542e-04, -5.294331848784990637e-04, -5.293213332420496466e-04, -5.292086287945038572e-04, -5.290950717741748624e-04, -5.289806624207558016e-04, -5.288654009753022229e-04, -5.287492876802404309e-04, -5.286323227793718240e-04, -5.285145065178654131e-04, -5.283958391422502324e-04, -5.282763209004284581e-04, -5.281559520416712885e-04, -5.280347328166062589e-04, -5.279126634772468400e-04, -5.277897442769508051e-04, -5.276659754704551408e-04, -5.275413573138502434e-04, -5.274158900645983502e-04, -5.272895739815303953e-04, -5.271624093248283372e-04, -5.270343963560399038e-04, -5.269055353380804356e-04, -5.267758265352153217e-04, -5.266452702130893816e-04, -5.265138666386891351e-04, -5.263816160803757617e-04, -5.262485188078592970e-04, -5.261145750922100166e-04, -5.259797852058570268e-04, -5.258441494226007325e-04, -5.257076680175800949e-04, -5.255703412672951824e-04, -5.254321694496115079e-04, -5.252931528437344410e-04, -5.251532917302463967e-04, -5.250125863910641176e-04, -5.248710371094685977e-04, -5.247286441700900125e-04, -5.245854078589170426e-04, -5.244413284632798520e-04, -5.242964062718769762e-04, -5.241506415747446395e-04, -5.240040346632756198e-04, -5.238565858302113342e-04, -5.237082953696360925e-04, -5.235591635769979140e-04, -5.234091907490855426e-04, -5.232583771840347347e-04, -5.231067231813256576e-04, -5.229542290417936229e-04, -5.228008950676061011e-04, -5.226467215623004526e-04, -5.224917088307298252e-04, -5.223358571791172564e-04, -5.221791669150138227e-04, -5.220216383473126262e-04, -5.218632717862621302e-04, -5.217040675434492453e-04, -5.215440259317919575e-04, -5.213831472655612283e-04, -5.212214318603628892e-04, -5.210588800331335214e-04, -5.208954921021707049e-04, -5.207312683870959392e-04, -5.205662092088693882e-04, -5.204003148897858684e-04, -5.202335857534810294e-04, -5.200660221249362326e-04, -5.198976243304523131e-04, -5.197283926976668193e-04, -5.195583275555636614e-04, -5.193874292344414535e-04, -5.192156980659580739e-04, -5.190431343830760212e-04, -5.188697385201096858e-04, -5.186955108126924986e-04, -5.185204515977912421e-04, -5.183445612137010635e-04, -5.181678400000630383e-04, -5.179902882978228628e-04, -5.178119064492620787e-04, -5.176326947979993740e-04, -5.174526536889577323e-04, -5.172717834684159317e-04, -5.170900844839591056e-04, -5.169075570844998847e-04, -5.167242016202703734e-04, -5.165400184428383052e-04, -5.163550079050771178e-04, -5.161691703612080210e-04, -5.159825061667443766e-04, -5.157950156785427644e-04, -5.156066992547661196e-04, -5.154175572548947912e-04, -5.152275900397459496e-04, -5.150367979714417111e-04, -5.148451814134222563e-04, -5.146527407304382412e-04, -5.144594762885742155e-04, -5.142653884552049297e-04, -5.140704775990526890e-04, -5.138747440901223016e-04, -5.136781882997505178e-04, -5.134808106005767569e-04, -5.132826113665580692e-04, -5.130835909729613295e-04, -5.128837497963695258e-04, -5.126830882146596411e-04, -5.124816066070369148e-04, -5.122793053539937509e-04, -5.120761848373591579e-04, -5.118722454402395514e-04, -5.116674875470686272e-04, -5.114619115435725585e-04, -5.112555178167852831e-04, -5.110483067550461184e-04, -5.108402787480107116e-04, -5.106314341866190556e-04, -5.104217734631125115e-04, -5.102112969710511552e-04, -5.100000051052714940e-04, -5.097878982619415437e-04, -5.095749768384969696e-04, -5.093612412336947538e-04, -5.091466918475708037e-04, -5.089313290814764888e-04, -5.087151533380350563e-04, -5.084981650212005034e-04, -5.082803645361863446e-04, -5.080617522895258939e-04, -5.078423286890275954e-04, -5.076220941437921538e-04, -5.074010490642311827e-04, -5.071791938620379310e-04, -5.069565289501876083e-04, -5.067330547429454079e-04, -5.065087716558803847e-04, -5.062836801058255565e-04, -5.060577805109340655e-04, -5.058310732906116328e-04, -5.056035588655739127e-04, -5.053752376578099547e-04, -5.051461100905805775e-04, -5.049161765884637972e-04, -5.046854375772971473e-04, -5.044538934842021823e-04, -5.042215447375749358e-04, -5.039883917671002331e-04, -5.037544350037572198e-04, -5.035196748797735001e-04, -5.032841118286779380e-04, -5.030477462852657455e-04, -5.028105786856018437e-04, -5.025726094670386439e-04, -5.023338390682138789e-04, -5.020942679290140657e-04, -5.018538964906064893e-04, -5.016127251954438648e-04, -5.013707544872273662e-04, -5.011279848109612698e-04, -5.008844166128853005e-04, -5.006400503405361059e-04, -5.003948864426996596e-04, -5.001489253694326202e-04, -4.999021675720595123e-04, -4.996546135031915917e-04, -4.994062636166745868e-04, -4.991571183676270793e-04, -4.989071782124432147e-04, -4.986564436087581164e-04, -4.984049150154991684e-04, -4.981525928928228061e-04, -4.978994777021714373e-04, -4.976455699062236771e-04, -4.973908699689396674e-04, -4.971353783555087103e-04, -4.968790955324157294e-04, -4.966220219673621230e-04, -4.963641581293343945e-04, -4.961055044885537366e-04, -4.958460615164917524e-04, -4.955858296858989698e-04, -4.953248094707616905e-04, -4.950630013463097959e-04, -4.948004057890247704e-04, -4.945370232766530373e-04, -4.942728542881626988e-04, -4.940078993038057691e-04, -4.937421588050464006e-04, -4.934756332746176961e-04, -4.932083231964813760e-04, -4.929402290558410060e-04, -4.926713513391668253e-04, -4.924016905341580159e-04, -4.921312471297407520e-04, -4.918600216161073384e-04, -4.915880144846584239e-04, -4.913152262280766173e-04, -4.910416573402393188e-04, -4.907673083162889752e-04, -4.904921796525903632e-04, -4.902162718467408887e-04, -4.899395853975785017e-04, -4.896621208051931892e-04, -4.893838785708743908e-04, -4.891048591971545838e-04, -4.888250631878116688e-04, -4.885444910478222401e-04, -4.882631432834367213e-04, -4.879810204020870994e-04, -4.876981229124701918e-04, -4.874144513244819976e-04, -4.871300061492508742e-04, -4.868447878991309782e-04, -4.865587970877202628e-04, -4.862720342298102252e-04, -4.859844998414145838e-04, -4.856961944397930760e-04, -4.854071185433897679e-04, -4.851172726719064541e-04, -4.848266573462451409e-04, -4.845352730885158529e-04, -4.842431204220475289e-04, -4.839501998713997312e-04, -4.836565119623199285e-04, -4.833620572218083307e-04, -4.830668361780347309e-04, -4.827708493604136947e-04, -4.824740972995487779e-04, -4.821765805272478140e-04, -4.818782995765589095e-04, -4.815792549817182397e-04, -4.812794472781646853e-04, -4.809788770025400493e-04, -4.806775446926987608e-04, -4.803754508877176865e-04, -4.800725961278448487e-04, -4.797689809545362333e-04, -4.794646059104684210e-04, -4.791594715394932678e-04, -4.788535783866786164e-04, -4.785469269982885643e-04, -4.782395179217839511e-04, -4.779313517058076137e-04, -4.776224289002217369e-04, -4.773127500560514751e-04, -4.770023157255575395e-04, -4.766911264621524974e-04, -4.763791828204697824e-04, -4.760664853563110013e-04, -4.757530346266720099e-04, -4.754388311897415572e-04, -4.751238756049154348e-04, -4.748081684327407482e-04, -4.744917102349602072e-04, -4.741745015745187390e-04, -4.738565430155131271e-04, -4.735378351232667131e-04, -4.732183784642412508e-04, -4.728981736061063494e-04, -4.725772211176909013e-04, -4.722555215690253660e-04, -4.719330755312841448e-04, -4.716098835768667871e-04, -4.712859462793000335e-04, -4.709612642133178292e-04, -4.706358379548092287e-04, -4.703096680808277735e-04, -4.699827551696320418e-04, -4.696550998006319261e-04, -4.693267025543983368e-04, -4.689975640126721468e-04, -4.686676847583645168e-04, -4.683370653755807478e-04, -4.680057064495480733e-04, -4.676736085666705739e-04, -4.673407723145383392e-04, -4.670071982818766181e-04, -4.666728870585663651e-04, -4.663378392356874453e-04, -4.660020554054552090e-04, -4.656655361612340436e-04, -4.653282820975485957e-04, -4.649902938100865897e-04, -4.646515718957070678e-04, -4.643121169523872099e-04, -4.639719295792871690e-04, -4.636310103766998181e-04, -4.632893599460689653e-04, -4.629469788899945575e-04, -4.626038678122460163e-04, -4.622600273177062389e-04, -4.619154580124095453e-04, -4.615701605035602180e-04, -4.612241353994676668e-04, -4.608773833096359296e-04, -4.605299048446625707e-04, -4.601817006163211343e-04, -4.598327712375042237e-04, -4.594831173222405237e-04, -4.591327394857091116e-04, -4.587816383442432523e-04, -4.584298145152786272e-04, -4.580772686173912819e-04, -4.577240012703132381e-04, -4.573700130948709112e-04, -4.570153047130774302e-04, -4.566598767480200974e-04, -4.563037298239582375e-04, -4.559468645662441053e-04, -4.555892816013895098e-04, -4.552309815569942570e-04, -4.548719650618362467e-04, -4.545122327457650044e-04, -4.541517852397905313e-04, -4.537906231760181980e-04, -4.534287471876717298e-04, -4.530661579091290391e-04, -4.527028559758648177e-04, -4.523388420244617574e-04, -4.519741166926213383e-04, -4.516086806191656720e-04, -4.512425344440545234e-04, -4.508756788083234028e-04, -4.505081143541221633e-04, -4.501398417247407511e-04, -4.497708615645448034e-04, -4.494011745190295334e-04, -4.490307812347952817e-04, -4.486596823595489798e-04, -4.482878785420865860e-04, -4.479153704323330385e-04, -4.475421586812788292e-04, -4.471682439410731369e-04, -4.467936268649084683e-04, -4.464183081071154170e-04, -4.460422883231018941e-04, -4.456655681693692285e-04, -4.452881483035247981e-04, -4.449100293842947148e-04, -4.445312120714595312e-04, -4.441516970258972295e-04, -4.437714849096046884e-04, -4.433905763856258006e-04, -4.430089721181536592e-04, -4.426266727724084216e-04, -4.422436790147392795e-04, -4.418599915125588098e-04, -4.414756109343599970e-04, -4.410905379497300025e-04, -4.407047732293632833e-04, -4.403183174449836921e-04, -4.399311712694369599e-04, -4.395433353766235837e-04, -4.391548104415117829e-04, -4.387655971401895408e-04, -4.383756961497923426e-04, -4.379851081485246428e-04, -4.375938338156596481e-04, -4.372018738315542252e-04, -4.368092288776595261e-04, -4.364158996364523040e-04, -4.360218867914874966e-04, -4.356271910274141105e-04, -4.352318130299172153e-04, -4.348357534857413636e-04, -4.344390130827354758e-04, -4.340415925097865419e-04, -4.336434924568305718e-04, -4.332447136148671234e-04, -4.328452566759609832e-04, -4.324451223332609773e-04, -4.320443112809294441e-04, -4.316428242141903725e-04, -4.312406618293490265e-04, -4.308378248237282478e-04, -4.304343138957203896e-04, -4.300301297447923577e-04, -4.296252730714182817e-04, -4.292197445771294968e-04, -4.288135449645270121e-04, -4.284066749372165668e-04, -4.279991351999058290e-04, -4.275909264582887655e-04, -4.271820494191417021e-04, -4.267725047902555611e-04, -4.263622932804608519e-04, -4.259514155996348811e-04, -4.255398724587188832e-04, -4.251276645696455410e-04, -4.247147926453904315e-04, -4.243012573999873130e-04, -4.238870595484610132e-04, -4.234721998069250069e-04, -4.230566788924647022e-04, -4.226404975232346930e-04, -4.222236564183834071e-04, -4.218061562981083464e-04, -4.213879978836268677e-04, -4.209691818971864280e-04, -4.205497090620282643e-04, -4.201295801024540174e-04, -4.197087957437559635e-04, -4.192873567122332775e-04, -4.188652637352530735e-04, -4.184425175411645901e-04, -4.180191188593282469e-04, -4.175950684201145606e-04, -4.171703669549146616e-04, -4.167450151961632249e-04, -4.163190138772513002e-04, -4.158923637325927193e-04, -4.154650654976347755e-04, -4.150371199088010322e-04, -4.146085277035131689e-04, -4.141792896202402588e-04, -4.137494063984253683e-04, -4.133188787785063191e-04, -4.128877075019166641e-04, -4.124558933110996197e-04, -4.120234369495221058e-04, -4.115903391615920214e-04, -4.111566006927564192e-04, -4.107222222894287554e-04, -4.102872046990147480e-04, -4.098515486699205084e-04, -4.094152549515672865e-04, -4.089783242943175281e-04, -4.085407574495319039e-04, -4.081025551695845427e-04, -4.076637182077844264e-04, -4.072242473184915627e-04, -4.067841432569798332e-04, -4.063434067795524611e-04, -4.059020386434612922e-04, -4.054600396069275034e-04, -4.050174104291968426e-04, -4.045741518704596145e-04, -4.041302646918715517e-04, -4.036857496555602658e-04, -4.032406075246554962e-04, -4.027948390632053017e-04, -4.023484450362970572e-04, -4.019014262099149357e-04, -4.014537833510601456e-04, -4.010055172276568770e-04, -4.005566286086157811e-04, -4.001071182638344043e-04, -3.996569869641255763e-04, -3.992062354812707533e-04, -3.987548645880375814e-04, -3.983028750581218925e-04, -3.978502676661645632e-04, -3.973970431878105498e-04, -3.969432023996277356e-04, -3.964887460791254167e-04, -3.960336750047639513e-04, -3.955779899559608856e-04, -3.951216917131112282e-04, -3.946647810575081407e-04, -3.942072587713979070e-04, -3.937491256380012917e-04, -3.932903824414401943e-04, -3.928310299668087723e-04, -3.923710690001281222e-04, -3.919105003283708901e-04, -3.914493247394138387e-04, -3.909875430221101630e-04, -3.905251559661982006e-04, -3.900621643624166282e-04, -3.895985690023680693e-04, -3.891343706786340732e-04, -3.886695701846942883e-04, -3.882041683149563857e-04, -3.877381658647641909e-04, -3.872715636304186089e-04, -3.868043624090880149e-04, -3.863365629988773720e-04, -3.858681661988425972e-04, -3.853991728089049633e-04, -3.849295836299774631e-04, -3.844593994638180077e-04, -3.839886211131496654e-04, -3.835172493815795628e-04, -3.830452850736162864e-04, -3.825727289947322782e-04, -3.820995819512771003e-04, -3.816258447504881132e-04, -3.811515182005528724e-04, -3.806766031105317705e-04, -3.802011002903785282e-04, -3.797250105510027534e-04, -3.792483347041855353e-04, -3.787710735625951660e-04, -3.782932279397997711e-04, -3.778147986502759835e-04, -3.773357865094251521e-04, -3.768561923334940323e-04, -3.763760169396315443e-04, -3.758952611459099691e-04, -3.754139257712609803e-04, -3.749320116354928835e-04, -3.744495195593555595e-04, -3.739664503644554629e-04, -3.734828048732697714e-04, -3.729985839091614014e-04, -3.725137882963850257e-04, -3.720284188601081610e-04, -3.715424764263238356e-04, -3.710559618219152621e-04, -3.705688758746711244e-04, -3.700812194132152675e-04, -3.695929932670647560e-04, -3.691041982666433191e-04, -3.686148352431883250e-04, -3.681249050288203876e-04, -3.676344084565599541e-04, -3.671433463602372625e-04, -3.666517195746277582e-04, -3.661595289352916863e-04, -3.656667752787071774e-04, -3.651734594421811807e-04, -3.646795822638682744e-04, -3.641851445828345798e-04, -3.636901472389731933e-04, -3.631945910730196366e-04, -3.626984769265631319e-04, -3.622018056420788033e-04, -3.617045780628369285e-04, -3.612067950330362419e-04, -3.607084573976458036e-04, -3.602095660025346154e-04, -3.597101216943750191e-04, -3.592101253207169637e-04, -3.587095777299384577e-04, -3.582084797712719692e-04, -3.577068322947562877e-04, -3.572046361513122009e-04, -3.567018921926636736e-04, -3.561986012713598570e-04, -3.556947642408388936e-04, -3.551903819553341884e-04, -3.546854552699065552e-04, -3.541799850404394462e-04, -3.536739721236590098e-04, -3.531674173771506787e-04, -3.526603216592672841e-04, -3.521526858291989864e-04, -3.516445107469927367e-04, -3.511357972734783345e-04, -3.506265462702980260e-04, -3.501167585999651597e-04, -3.496064351257772876e-04, -3.490955767118242422e-04, -3.485841842230537856e-04, -3.480722585251710488e-04, -3.475598004847670649e-04, -3.470468109691668716e-04, -3.465332908465579894e-04, -3.460192409859007040e-04, -3.455046622569479613e-04, -3.449895555303129132e-04, -3.444739216773762183e-04, -3.439577615703087016e-04, -3.434410760820782939e-04, -3.429238660864860808e-04, -3.424061324580714356e-04, -3.418878760722481405e-04, -3.413690978051419733e-04, -3.408497985337289433e-04, -3.403299791357404232e-04, -3.398096404896835325e-04, -3.392887834749106889e-04, -3.387674089715263129e-04, -3.382455178604059092e-04, -3.377231110232098909e-04, -3.372001893424101423e-04, -3.366767537012053425e-04, -3.361528049836380594e-04, -3.356283440744945151e-04, -3.351033718593240474e-04, -3.345778892244512530e-04, -3.340518970569808662e-04, -3.335253962448268155e-04, -3.329983876766134531e-04, -3.324708722417417449e-04, -3.319428508304169182e-04, -3.314143243335724589e-04, -3.308852936428941264e-04, -3.303557596508878793e-04, -3.298257232507837062e-04, -3.292951853365602916e-04, -3.287641468029515210e-04, -3.282326085454596539e-04, -3.277005714603766287e-04, -3.271680364446897908e-04, -3.266350043961456983e-04, -3.261014762132798833e-04, -3.255674527953258328e-04, -3.250329350423008580e-04, -3.244979238549558411e-04, -3.239624201347945345e-04, -3.234264247840321440e-04, -3.228899387056665066e-04, -3.223529628033785068e-04, -3.218154979816696616e-04, -3.212775451456920096e-04, -3.207391052013942607e-04, -3.202001790554216709e-04, -3.196607676151389725e-04, -3.191208717886988961e-04, -3.185804924849500131e-04, -3.180396306134533786e-04, -3.174982870844957040e-04, -3.169564628091251900e-04, -3.164141586990504794e-04, -3.158713756667864275e-04, -3.153281146254816058e-04, -3.147843764890643440e-04, -3.142401621721301356e-04, -3.136954725900243626e-04, -3.131503086587946448e-04, -3.126046712952123066e-04, -3.120585614167218540e-04, -3.115119799415263548e-04, -3.109649277884971789e-04, -3.104174058772001823e-04, -3.098694151279666130e-04, -3.093209564617922813e-04, -3.087720308003626037e-04, -3.082226390660617113e-04, -3.076727821819844294e-04, -3.071224610719574741e-04, -3.065716766604419823e-04, -3.060204298726038768e-04, -3.054687216343372302e-04, -3.049165528721896183e-04, -3.043639245133864597e-04, -3.038108374858983457e-04, -3.032572927183460089e-04, -3.027032911400223333e-04, -3.021488336809006483e-04, -3.015939212716501781e-04, -3.010385548436524681e-04, -3.004827353289077634e-04, -2.999264636601034766e-04, -2.993697407706396663e-04, -2.988125675945266344e-04, -2.982549450665201258e-04, -2.976968741220084634e-04, -2.971383556970356413e-04, -2.965793907283141182e-04, -2.960199801532557720e-04, -2.954601249098769231e-04, -2.948998259369396604e-04, -2.943390841737816756e-04, -2.937779005604618178e-04, -2.932162760376563347e-04, -2.926542115466874419e-04, -2.920917080295929282e-04, -2.915287664290244036e-04, -2.909653876882733201e-04, -2.904015727512810545e-04, -2.898373225626713263e-04, -2.892726380676558721e-04, -2.887075202121743619e-04, -2.881419699427255885e-04, -2.875759882065081433e-04, -2.870095759513154108e-04, -2.864427341256123847e-04, -2.858754636784912695e-04, -2.853077655596901832e-04, -2.847396407195429587e-04, -2.841710901090683194e-04, -2.836021146798733852e-04, -2.830327153841846809e-04, -2.824628931749188798e-04, -2.818926490055777452e-04, -2.813219838302776746e-04, -2.807508986037555001e-04, -2.801793942813817699e-04, -2.796074718191850889e-04, -2.790351321737469508e-04, -2.784623763022795297e-04, -2.778892051626462257e-04, -2.773156197132602922e-04, -2.767416209132340758e-04, -2.761672097222016959e-04, -2.755923871004683384e-04, -2.750171540088960356e-04, -2.744415114090011901e-04, -2.738654602628402455e-04, -2.732890015331601195e-04, -2.727121361832185518e-04, -2.721348651769373017e-04, -2.715571894787941073e-04, -2.709791100538505495e-04, -2.704006278678247480e-04, -2.698217438869895545e-04, -2.692424590781966761e-04, -2.686627744088825303e-04, -2.680826908471125886e-04, -2.675022093614734986e-04, -2.669213309212236794e-04, -2.663400564961164885e-04, -2.657583870565482153e-04, -2.651763235734571960e-04, -2.645938670183453894e-04, -2.640110183633556261e-04, -2.634277785811654110e-04, -2.628441486450134321e-04, -2.622601295287085052e-04, -2.616757222066675207e-04, -2.610909276538109810e-04, -2.605057468457036758e-04, -2.599201807584336846e-04, -2.593342303686414340e-04, -2.587478966535284794e-04, -2.581611805908675880e-04, -2.575740831590301694e-04, -2.569866053368773670e-04, -2.563987481038404524e-04, -2.558105124399405027e-04, -2.552218993257116398e-04, -2.546329097422263461e-04, -2.540435446711688649e-04, -2.534538050947311174e-04, -2.528636919956376390e-04, -2.522732063571571262e-04, -2.516823491631107849e-04, -2.510911213979006283e-04, -2.504995240464014897e-04, -2.499075580940385982e-04, -2.493152245268102918e-04, -2.487225243311843139e-04, -2.481294584942519868e-04, -2.475360280035425963e-04, -2.469422338471790831e-04, -2.463480770137605694e-04, -2.457535584924623226e-04, -2.451586792729183359e-04, -2.445634403453770199e-04, -2.439678427005153704e-04, -2.433718873295936025e-04, -2.427755752243513656e-04, -2.421789073770285600e-04, -2.415818847804464080e-04, -2.409845084278988713e-04, -2.403867793131757985e-04, -2.397886984305771282e-04, -2.391902667749488032e-04, -2.385914853415785515e-04, -2.379923551263469161e-04, -2.373928771255476018e-04, -2.367930523360394271e-04, -2.361928817551262212e-04, -2.355923663806506075e-04, -2.349915072109385467e-04, -2.343903052448203703e-04, -2.337887614815807721e-04, -2.331868769210487964e-04, -2.325846525635008567e-04, -2.319820894096886804e-04, -2.313791884609158541e-04, -2.307759507189313815e-04, -2.301723771859513410e-04, -2.295684688646738468e-04, -2.289642267582890785e-04, -2.283596518705039737e-04, -2.277547452054365991e-04, -2.271495077676899312e-04, -2.265439405623812647e-04, -2.259380445950311903e-04, -2.253318208717222952e-04, -2.247252703989129237e-04, -2.241183941835922456e-04, -2.235111932331749259e-04, -2.229036685555355751e-04, -2.222958211590251752e-04, -2.216876520524945252e-04, -2.210791622451692602e-04, -2.204703527467993893e-04, -2.198612245675481928e-04, -2.192517787180174561e-04, -2.186420162093284875e-04, -2.180319380530100926e-04, -2.174215452610246495e-04, -2.168108388457813630e-04, -2.161998198201736698e-04, -2.155884891974690562e-04, -2.149768479914715262e-04, -2.143648972163284504e-04, -2.137526378866927087e-04, -2.131400710176119663e-04, -2.125271976245548297e-04, -2.119140187234896412e-04, -2.113005353307747039e-04, -2.106867484631834615e-04, -2.100726591379165336e-04, -2.094582683726420205e-04, -2.088435771853825839e-04, -2.082285865946789714e-04, -2.076132976193978419e-04, -2.069977112788911700e-04, -2.063818285928749514e-04, -2.057656505815068316e-04, -2.051491782654010136e-04, -2.045324126655133866e-04, -2.039153548032255519e-04, -2.032980057003679433e-04, -2.026803663791101602e-04, -2.020624378621227034e-04, -2.014442211723840685e-04, -2.008257173333428611e-04, -2.002069273688073436e-04, -1.995878523029843586e-04, -1.989684931604913086e-04, -1.983488509663810389e-04, -1.977289267460335530e-04, -1.971087215252313913e-04, -1.964882363301907753e-04, -1.958674721874473592e-04, -1.952464301240190237e-04, -1.946251111672129142e-04, -1.940035163447879365e-04, -1.933816466848304249e-04, -1.927595032158613438e-04, -1.921370869667101398e-04, -1.915143989666805982e-04, -1.908914402453547917e-04, -1.902682118327557383e-04, -1.896447147592379505e-04, -1.890209500555113426e-04, -1.883969187527226806e-04, -1.877726218823443170e-04, -1.871480604761988553e-04, -1.865232355664723509e-04, -1.858981481857531796e-04, -1.852727993669203103e-04, -1.846471901433079143e-04, -1.840213215485089076e-04, -1.833951946165399399e-04, -1.827688103817287179e-04, -1.821421698787411116e-04, -1.815152741426602999e-04, -1.808881242088763183e-04, -1.802607211130973885e-04, -1.796330658914313419e-04, -1.790051595802864695e-04, -1.783770032163993046e-04, -1.777485978369138235e-04, -1.771199444792692851e-04, -1.764910441812280134e-04, -1.758618979808858329e-04, -1.752325069166841035e-04, -1.746028720274382347e-04, -1.739729943522208089e-04, -1.733428749304462301e-04, -1.727125148018967724e-04, -1.720819150066083859e-04, -1.714510765850364173e-04, -1.708200005778589626e-04, -1.701886880261426686e-04, -1.695571399712290819e-04, -1.689253574547743843e-04, -1.682933415187637589e-04, -1.676610932055335346e-04, -1.670286135576626578e-04, -1.663959036180507006e-04, -1.657629644299468902e-04, -1.651297970368339910e-04, -1.644964024825836435e-04, -1.638627818113260436e-04, -1.632289360674766133e-04, -1.625948662957492558e-04, -1.619605735411967957e-04, -1.613260588490954034e-04, -1.606913232651131340e-04, -1.600563678351106783e-04, -1.594211936053078148e-04, -1.587858016221709782e-04, -1.581501929324378433e-04, -1.575143685832001040e-04, -1.568783296217910416e-04, -1.562420770958096482e-04, -1.556056120531348029e-04, -1.549689355419637063e-04, -1.543320486107006687e-04, -1.536949523081209605e-04, -1.530576476831737849e-04, -1.524201357851499774e-04, -1.517824176635521451e-04, -1.511444943681915676e-04, -1.505063669491324147e-04, -1.498680364567154361e-04, -1.492295039415004175e-04, -1.485907704543645445e-04, -1.479518370463729767e-04, -1.473127047689463563e-04, -1.466733746736606373e-04, -1.460338478124162756e-04, -1.453941252373225986e-04, -1.447542080007382459e-04, -1.441140971552856980e-04, -1.434737937538742606e-04, -1.428332988495884740e-04, -1.421926134957686146e-04, -1.415517387460399953e-04, -1.409106756541949506e-04, -1.402694252743641402e-04, -1.396279886608145352e-04, -1.389863668681172253e-04, -1.383445609510345806e-04, -1.377025719645588221e-04, -1.370604009639260620e-04, -1.364180490046418368e-04, -1.357755171423522499e-04, -1.351328064329978466e-04, -1.344899179326993941e-04, -1.338468526977831699e-04, -1.332036117848654755e-04, -1.325601962507370066e-04, -1.319166071523890360e-04, -1.312728455470263433e-04, -1.306289124921086037e-04, -1.299848090452332405e-04, -1.293405362643067831e-04, -1.286960952073423108e-04, -1.280514869326281275e-04, -1.274067124986132159e-04, -1.267617729639344511e-04, -1.261166693874982408e-04, -1.254714028283671718e-04, -1.248259743457847846e-04, -1.241803849991896132e-04, -1.235346358482267322e-04, -1.228887279527754038e-04, -1.222426623728319029e-04, -1.215964401685951010e-04, -1.209500624004915655e-04, -1.203035301290755288e-04, -1.196568444151108266e-04, -1.190100063195864564e-04, -1.183630169035965424e-04, -1.177158772284284273e-04, -1.170685883555864029e-04, -1.164211513466772719e-04, -1.157735672635800398e-04, -1.151258371682423420e-04, -1.144779621228537807e-04, -1.138299431897257953e-04, -1.131817814313352475e-04, -1.125334779103366996e-04, -1.118850336895889369e-04, -1.112364498320384432e-04, -1.105877274008040904e-04, -1.099388674592043791e-04, -1.092898710706397485e-04, -1.086407392987641244e-04, -1.079914732072821459e-04, -1.073420738601189791e-04, -1.066925423212898870e-04, -1.060428796550137866e-04, -1.053930869255808542e-04, -1.047431651975251436e-04, -1.040931155354196723e-04, -1.034429390040489041e-04, -1.027926366682904767e-04, -1.021422095931433498e-04, -1.014916588438115872e-04, -1.008409854855886993e-04, -1.001901905838828238e-04, -9.953927520423098280e-05, -9.888824041233990341e-05, -9.823708727396901833e-05, -9.758581685510193265e-05, -9.693443022174274290e-05, -9.628292844008674465e-05, -9.563131257640427381e-05, -9.497958369706756775e-05, -9.432774286863473674e-05, -9.367579115773388987e-05, -9.302372963107468176e-05, -9.237155935553399168e-05, -9.171928139802388127e-05, -9.106689682566315594e-05, -9.041440670557318257e-05, -8.976181210505056217e-05, -8.910911409144809813e-05, -8.845631373221739171e-05, -8.780341209492217782e-05, -8.715041024726407476e-05, -8.649730925696660173e-05, -8.584411019185856750e-05, -8.519081411990297797e-05, -8.453742210907822115e-05, -8.388393522755090257e-05, -8.323035454347097167e-05, -8.257668112514364922e-05, -8.192291604091219792e-05, -8.126906035919914922e-05, -8.061511514851957120e-05, -7.996108147750801104e-05, -7.930696041480110299e-05, -7.865275302912214973e-05, -7.799846038930905411e-05, -7.734408356419624950e-05, -7.668962362277228866e-05, -7.603508163404830282e-05, -7.538045866708452402e-05, -7.472575579100307873e-05, -7.407097407503063756e-05, -7.341611458837935639e-05, -7.276117840042014542e-05, -7.210616658047753807e-05, -7.145108019800161840e-05, -7.079592032245130668e-05, -7.014068802332024480e-05, -6.948538437022342394e-05, -6.883001043277858647e-05, -6.817456728063326320e-05, -6.751905598347824461e-05, -6.686347761106000852e-05, -6.620783323320844854e-05, -6.555212391971819463e-05, -6.489635074043407527e-05, -6.424051476527940167e-05, -6.358461706415172165e-05, -6.292865870702266118e-05, -6.227264076387842870e-05, -6.161656430474746237e-05, -6.096043039963957915e-05, -6.030424011864696151e-05, -5.964799453181094958e-05, -5.899169470929491047e-05, -5.833534172117920205e-05, -5.767893663763378473e-05, -5.702248052879957586e-05, -5.636597446483172292e-05, -5.570941951591051335e-05, -5.505281675227083094e-05, -5.439616724408238537e-05, -5.373947206153535742e-05, -5.308273227486914387e-05, -5.242594895425253961e-05, -5.176912316995813834e-05, -5.111225599215548710e-05, -5.045534849108482294e-05, -4.979840173692405482e-05, -4.914141679990366874e-05, -4.848439475017355380e-05, -4.782733665797659657e-05, -4.717024359344241835e-05, -4.651311662676114572e-05, -4.585595682806426344e-05, -4.519876526745263438e-05, -4.454154301508213108e-05, -4.388429114104515962e-05, -4.322701071539817121e-05, -4.256970280817409666e-05, -4.191236848939580402e-05, -4.125500882910350858e-05, -4.059762489723563937e-05, -3.994021776371538561e-05, -3.928278849847758491e-05, -3.862533817138005587e-05, -3.796786785223024236e-05, -3.731037861087186833e-05, -3.665287151706604158e-05, -3.599534764051839258e-05, -3.533780805089262032e-05, -3.468025381782263532e-05, -3.402268601094076247e-05, -3.336510569974408596e-05, -3.270751395375331885e-05, -3.204991184239465885e-05, -3.139230043504142171e-05, -3.073468080102694324e-05, -3.007705400967268384e-05, -2.941942113016875280e-05, -2.876178323166026844e-05, -2.810414138327501537e-05, -2.744649665400425344e-05, -2.678885011287719637e-05, -2.613120282875369530e-05, -2.547355587049865311e-05, -2.481591030686291119e-05, -2.415826720652564859e-05, -2.350062763810697224e-05, -2.284299267019595722e-05, -2.218536337123127263e-05, -2.152774080958761625e-05, -2.087012605360314489e-05, -2.021252017146057801e-05, -1.955492423136133756e-05, -1.889733930131858397e-05, -1.823976644933144738e-05, -1.758220674325134558e-05, -1.692466125089740067e-05, -1.626713103992301785e-05, -1.560961717798983546e-05, -1.495212073256082199e-05, -1.429464277107460215e-05, -1.363718436082627945e-05, -1.297974656899513237e-05, -1.232233046273082545e-05, -1.166493710903432151e-05, -1.100756757478548984e-05, -1.035022292675626232e-05, -9.692904231623181385e-06, -9.035612555995377486e-06, -8.378348966295203542e-06, -7.721114528844820330e-06, -7.063910309893510761e-06, -6.406737375528120544e-06, -5.749596791700667223e-06, -5.092489624314496982e-06, -4.435416939105344279e-06, -3.778379801654244015e-06, -3.121379277473765419e-06, -2.464416431874386247e-06, -1.807492330138581766e-06, -1.150608037313997103e-06, -4.937646183875518967e-07, 1.630368618335205530e-07, 8.197953386794206895e-07, 1.476509747604858670e-06, 2.133179024161496891e-06, 2.789802104116833335e-06, 3.446377923368052131e-06, 4.102905417914440453e-06, 4.759383523976287806e-06, 5.415811177820861412e-06, 6.072187315969119943e-06, 6.728510875021776152e-06, 7.384780791778094094e-06, 8.040996003193704337e-06, 8.697155446367668081e-06, 9.353258058514924022e-06, 1.000930277708518298e-05, 1.066528853967667113e-05, 1.132121428400871497e-05, 1.197707894804046820e-05, 1.263288146981167124e-05, 1.328862078757599960e-05, 1.394429583977372510e-05, 1.459990556501847499e-05, 1.525544890208462984e-05, 1.591092478987958487e-05, 1.656633216756253280e-05, 1.722166997445840188e-05, 1.787693715003051031e-05, 1.853213263396957076e-05, 1.918725536616672759e-05, 1.984230428662703079e-05, 2.049727833558845423e-05, 2.115217645349430951e-05, 2.180699758098012371e-05, 2.246174065886093055e-05, 2.311640462810374855e-05, 2.377098842994616564e-05, 2.442549100581031116e-05, 2.507991129727535432e-05, 2.573424824618161479e-05, 2.638850079452999950e-05, 2.704266788454173204e-05, 2.769674845863152882e-05, 2.835074145946711837e-05, 2.900464582986918646e-05, 2.965846051294400106e-05, 3.031218445191041780e-05, 3.096581659030568179e-05, 3.161935587181205698e-05, 3.227280124037514649e-05, 3.292615164016204573e-05, 3.357940601554830837e-05, 3.423256331109041426e-05, 3.488562247164444223e-05, 3.553858244227991661e-05, 3.619144216825250572e-05, 3.684420059512237604e-05, 3.749685666858105192e-05, 3.814940933465683800e-05, 3.880185753954205164e-05, 3.945420022972545815e-05, 4.010643635189249033e-05, 4.075856485298460179e-05, 4.141058468017246681e-05, 4.206249478091522519e-05, 4.271429410286094576e-05, 4.336598159394982206e-05, 4.401755620238691821e-05, 4.466901687655617137e-05, 4.532036256513938293e-05, 4.597159221708767008e-05, 4.662270478160934311e-05, 4.727369920815707792e-05, 4.792457444639997748e-05, 4.857532944634223101e-05, 4.922596315823730615e-05, 4.987647453256008491e-05, 5.052686252009683899e-05, 5.117712607191671518e-05, 5.182726413928697112e-05, 5.247727567379076709e-05, 5.312715962729929522e-05, 5.377691495195995492e-05, 5.442654060018232602e-05, 5.507603552461197172e-05, 5.572539867826157965e-05, 5.637462901435411164e-05, 5.702372548643974177e-05, 5.767268704835467019e-05, 5.832151265420764514e-05, 5.897020125835330514e-05, 5.961875181550921186e-05, 6.026716328067120097e-05, 6.091543460908534880e-05, 6.156356475636642141e-05, 6.221155267832471393e-05, 6.285939733117158821e-05, 6.350709767134648837e-05, 6.415465265563482741e-05, 6.480206124114089577e-05, 6.544932238520230418e-05, 6.609643504550749766e-05, 6.674339818006881306e-05, 6.739021074720922470e-05, 6.803687170552104985e-05, 6.868338001398336778e-05, 6.932973463178919795e-05, 6.997593451855103766e-05, 7.062197863412820282e-05, 7.126786593875847722e-05, 7.191359539297351763e-05, 7.255916595758587053e-05, 7.320457659380630983e-05, 7.384982626315815784e-05, 7.449491392745164386e-05, 7.513983854887073524e-05, 7.578459908994610006e-05, 7.642919451347112217e-05, 7.707362378261777523e-05, 7.771788586091085943e-05, 7.836197971221321560e-05, 7.900590430071516789e-05, 7.964965859090604981e-05, 8.029324154769147432e-05, 8.093665213630867115e-05, 8.157988932229864995e-05, 8.222295207160987707e-05, 8.286583935049831218e-05, 8.350855012558649722e-05, 8.415108336383723747e-05, 8.479343803261248720e-05, 8.543561309957319657e-05, 8.607760753281213989e-05, 8.671942030068232709e-05, 8.736105037199941076e-05, 8.800249671587127658e-05, 8.864375830181523211e-05, 8.928483409971549247e-05, 8.992572307981111859e-05, 9.056642421266893929e-05, 9.120693646929962863e-05, 9.184725882107408685e-05, 9.248739023969460059e-05, 9.312732969731428131e-05, 9.376707616636287463e-05, 9.440662861975317893e-05, 9.504598603070643452e-05, 9.568514737287229068e-05, 9.632411162029980319e-05, 9.696287774735306989e-05, 9.760144472882896147e-05, 9.823981153994259315e-05, 9.887797715624412574e-05, 9.951594055372084326e-05, 1.001537007087692754e-04, 1.007912565981113886e-04, 1.014286071989110025e-04, 1.020657514887458850e-04, 1.027026884455972222e-04, 1.033394170478335990e-04, 1.039759362741875129e-04, 1.046122451038686188e-04, 1.052483425164811939e-04, 1.058842274919971144e-04, 1.065198990108420085e-04, 1.071553560538696424e-04, 1.077905976022774606e-04, 1.084256226377224740e-04, 1.090604301422938837e-04, 1.096950190985004496e-04, 1.103293884892593644e-04, 1.109635372978666138e-04, 1.115974645081155341e-04, 1.122311691042105776e-04, 1.128646500707423624e-04, 1.134979063927875136e-04, 1.141309370558258034e-04, 1.147637410457267475e-04, 1.153963173488656556e-04, 1.160286649520400935e-04, 1.166607828424421137e-04, 1.172926700077746450e-04, 1.179243254360818824e-04, 1.185557481159502032e-04, 1.191869370363389638e-04, 1.198178911866961842e-04, 1.204486095569311580e-04, 1.210790911373311860e-04, 1.217093349186778570e-04, 1.223393398922181395e-04, 1.229691050496525243e-04, 1.235986293830961143e-04, 1.242279118851899455e-04, 1.248569515489362830e-04, 1.254857473678958914e-04, 1.261142983360211221e-04, 1.267426034477839032e-04, 1.273706616980791915e-04, 1.279984720822829772e-04, 1.286260335962254226e-04, 1.292533452362485422e-04, 1.298804059991101416e-04, 1.305072148820824807e-04, 1.311337708829278244e-04, 1.317600729998136039e-04, 1.323861202314274507e-04, 1.330119115769507149e-04, 1.336374460360461322e-04, 1.342627226088446242e-04, 1.348877402959194937e-04, 1.355124980984003750e-04, 1.361369950178898855e-04, 1.367612300564382557e-04, 1.373852022166282486e-04, 1.380089105015482997e-04, 1.386323539147112549e-04, 1.392555314601679145e-04, 1.398784421424787892e-04, 1.405010849667040983e-04, 1.411234589383900009e-04, 1.417455630635424931e-04, 1.423673963487543683e-04, 1.429889578010542963e-04, 1.436102464280189842e-04, 1.442312612377467213e-04, 1.448520012387769320e-04, 1.454724654402011705e-04, 1.460926528516376692e-04, 1.467125624832204156e-04, 1.473321933455557572e-04, 1.479515444498386272e-04, 1.485706148076852532e-04, 1.491894034313299663e-04, 1.498079093334601583e-04, 1.504261315273278197e-04, 1.510440690267254426e-04, 1.516617208459024833e-04, 1.522790859996789867e-04, 1.528961635034189689e-04, 1.535129523730173527e-04, 1.541294516248613701e-04, 1.547456602759432920e-04, 1.553615773436936240e-04, 1.559772018461775905e-04, 1.565925328019318000e-04, 1.572075692300886032e-04, 1.578223101502949943e-04, 1.584367545827021755e-04, 1.590509015480744658e-04, 1.596647500677106412e-04, 1.602782991634168846e-04, 1.608915478575911092e-04, 1.615044951731968567e-04, 1.621171401336821713e-04, 1.627294817630927097e-04, 1.633415190860427113e-04, 1.639532511277058907e-04, 1.645646769138014249e-04, 1.651757954705686910e-04, 1.657866058248785867e-04, 1.663971070041529471e-04, 1.670072980363375209e-04, 1.676171779500019066e-04, 1.682267457742413512e-04, 1.688360005387380073e-04, 1.694449412737297355e-04, 1.700535670100714698e-04, 1.706618767791371792e-04, 1.712698696129460682e-04, 1.718775445440001097e-04, 1.724849006054772493e-04, 1.730919368310672034e-04, 1.736986522550848662e-04, 1.743050459124421752e-04, 1.749111168385688285e-04, 1.755168640695240661e-04, 1.761222866419678032e-04, 1.767273835931519566e-04, 1.773321539608787298e-04, 1.779365967836131263e-04, 1.785407111003183402e-04, 1.791444959506507506e-04, 1.797479503747959355e-04, 1.803510734135804533e-04, 1.809538641084460387e-04, 1.815563215013677183e-04, 1.821584446349668116e-04, 1.827602325524971618e-04, 1.833616842977651756e-04, 1.839627989152271305e-04, 1.845635754499629641e-04, 1.851640129475963417e-04, 1.857641104544057321e-04, 1.863638670172974659e-04, 1.869632816837930498e-04, 1.875623535020207373e-04, 1.881610815206846829e-04, 1.887594647891803013e-04, 1.893575023575095641e-04, 1.899551932762588279e-04, 1.905525365966798243e-04, 1.911495313706654817e-04, 1.917461766506687194e-04, 1.923424714898132521e-04, 1.929384149418671363e-04, 1.935340060612316835e-04, 1.941292439029291823e-04, 1.947241275225770126e-04, 1.953186559764974483e-04, 1.959128283216376705e-04, 1.965066436155457250e-04, 1.971001009164777501e-04, 1.976931992832523411e-04, 1.982859377753750979e-04, 1.988783154530086470e-04, 1.994703313769651605e-04, 2.000619846086655899e-04, 2.006532742102481136e-04, 2.012441992444094908e-04, 2.018347587745942823e-04, 2.024249518648348219e-04, 2.030147775798599619e-04, 2.036042349850711937e-04, 2.041933231464611428e-04, 2.047820411307261904e-04, 2.053703880052352754e-04, 2.059583628380238227e-04, 2.065459646977519206e-04, 2.071331926538132824e-04, 2.077200457761760593e-04, 2.083065231355736319e-04, 2.088926238033415200e-04, 2.094783468515433390e-04, 2.100636913528762040e-04, 2.106486563807269722e-04, 2.112332410091448127e-04, 2.118174443128993743e-04, 2.124012653673867576e-04, 2.129847032487236513e-04, 2.135677570337235877e-04, 2.141504257998187721e-04, 2.147327086251666056e-04, 2.153146045886259407e-04, 2.158961127697433396e-04, 2.164772322487427470e-04, 2.170579621065015289e-04, 2.176383014246545834e-04, 2.182182492855191784e-04, 2.187978047720694186e-04, 2.193769669680416842e-04, 2.199557349577808095e-04, 2.205341078264229338e-04, 2.211120846597404877e-04, 2.216896645442634065e-04, 2.222668465671717134e-04, 2.228436298164177898e-04, 2.234200133805708743e-04, 2.239959963490001837e-04, 2.245715778117208486e-04, 2.251467568594973186e-04, 2.257215325838228981e-04, 2.262959040768390280e-04, 2.268698704314428376e-04, 2.274434307412615311e-04, 2.280165841006426839e-04, 2.285893296046145602e-04, 2.291616663489930161e-04, 2.297335934302252656e-04, 2.303051099455752251e-04, 2.308762149929674426e-04, 2.314469076710938913e-04, 2.320171870793874883e-04, 2.325870523179473929e-04, 2.331565024876440116e-04, 2.337255366900936279e-04, 2.342941540276464757e-04, 2.348623536033509884e-04, 2.354301345210578543e-04, 2.359974958852783394e-04, 2.365644368013037659e-04, 2.371309563751806298e-04, 2.376970537136959916e-04, 2.382627279243712147e-04, 2.388279781154342099e-04, 2.393928033959248202e-04, 2.399572028756171370e-04, 2.405211756649997684e-04, 2.410847208753492932e-04, 2.416478376187086588e-04, 2.422105250078105006e-04, 2.427727821561841799e-04, 2.433346081781256431e-04, 2.438960021886904831e-04, 2.444569633036824193e-04, 2.450174906396274392e-04, 2.455775833138785060e-04, 2.461372404445396635e-04, 2.466964611504413171e-04, 2.472552445512451839e-04, 2.478135897672931014e-04, 2.483714959197840227e-04, 2.489289621306250478e-04, 2.494859875225465657e-04, 2.500425712190015317e-04, 2.505987123442815858e-04, 2.511544100233659149e-04, 2.517096633821010675e-04, 2.522644715470490572e-04, 2.528188336455903075e-04, 2.533727488058989323e-04, 2.539262161568720997e-04, 2.544792348282263637e-04, 2.550318039504789617e-04, 2.555839226549342074e-04, 2.561355900736462490e-04, 2.566868053395238028e-04, 2.572375675861784190e-04, 2.577878759481025623e-04, 2.583377295605203709e-04, 2.588871275595013900e-04, 2.594360690818744313e-04, 2.599845532652788564e-04, 2.605325792481436508e-04, 2.610801461697318773e-04, 2.616272531700628836e-04, 2.621738993899952984e-04, 2.627200839712051845e-04, 2.632658060561131265e-04, 2.638110647879854951e-04, 2.643558593109085345e-04, 2.649001887697797976e-04, 2.654440523102952437e-04, 2.659874490789292893e-04, 2.665303782230297298e-04, 2.670728388907491640e-04, 2.676148302310200574e-04, 2.681563513936542176e-04, 2.686974015291982158e-04, 2.692379797891043662e-04, 2.697780853255877186e-04, 2.703177172917222825e-04, 2.708568748414063860e-04, 2.713955571293554664e-04, 2.719337633110733925e-04, 2.724714925429673365e-04, 2.730087439822124107e-04, 2.735455167868537456e-04, 2.740818101157806858e-04, 2.746176231286570754e-04, 2.751529549860164516e-04, 2.756878048492429623e-04, 2.762221718805598736e-04, 2.767560552429908639e-04, 2.772894541004626979e-04, 2.778223676176609191e-04, 2.783547949601957328e-04, 2.788867352944643667e-04, 2.794181877877448001e-04, 2.799491516081750015e-04, 2.804796259246827264e-04, 2.810096099070770242e-04, 2.815391027260354443e-04, 2.820681035530868516e-04, 2.825966115605740760e-04, 2.831246259217607602e-04, 2.836521458106780534e-04, 2.841791704023006321e-04, 2.847056988724035848e-04, 2.852317303976675800e-04, 2.857572641556003156e-04, 2.862822993245838984e-04, 2.868068350838523474e-04, 2.873308706135414121e-04, 2.878544050946055775e-04, 2.883774377089254543e-04, 2.888999676391689462e-04, 2.894219940689577841e-04, 2.899435161827257118e-04, 2.904645331658135712e-04, 2.909850442044397572e-04, 2.915050484856812445e-04, 2.920245451974614443e-04, 2.925435335286378623e-04, 2.930620126689364503e-04, 2.935799818089284579e-04, 2.940974401401254637e-04, 2.946143868548395666e-04, 2.951308211463511124e-04, 2.956467422087640071e-04, 2.961621492371184733e-04, 2.966770414272954784e-04, 2.971914179761237450e-04, 2.977052780812408650e-04, 2.982186209412577183e-04, 2.987314457556198579e-04, 2.992437517247027029e-04, 2.997555380497872522e-04, 3.002668039329952493e-04, 3.007775485773802552e-04, 3.012877711869063981e-04, 3.017974709664392120e-04, 3.023066471217109963e-04, 3.028152988594137317e-04, 3.033234253870644229e-04, 3.038310259131646925e-04, 3.043380996470666116e-04, 3.048446457990639348e-04, 3.053506635803709046e-04, 3.058561522030547051e-04, 3.063611108801294084e-04, 3.068655388255311467e-04, 3.073694352541135036e-04, 3.078727993816068030e-04, 3.083756304247182892e-04, 3.088779276010034862e-04, 3.093796901289691970e-04, 3.098809172280562107e-04, 3.103816081186247739e-04, 3.108817620219475977e-04, 3.113813781601857886e-04, 3.118804557564823607e-04, 3.123789940348960996e-04, 3.128769922203781433e-04, 3.133744495388646276e-04, 3.138713652171428413e-04, 3.143677384830090315e-04, 3.148635685651367819e-04, 3.153588546931643450e-04, 3.158535960976676998e-04, 3.163477920101442887e-04, 3.168414416629954534e-04, 3.173345442896181043e-04, 3.178270991243338679e-04, 3.183191054023764015e-04, 3.188105623599721120e-04, 3.193014692342130336e-04, 3.197918252632159339e-04, 3.202816296859831028e-04, 3.207708817425106097e-04, 3.212595806736962011e-04, 3.217477257214415402e-04, 3.222353161285214525e-04, 3.227223511387380993e-04, 3.232088299967920118e-04, 3.236947519483685020e-04, 3.241801162401192313e-04, 3.246649221195965079e-04, 3.251491688353430587e-04, 3.256328556368685021e-04, 3.261159817746441978e-04, 3.265985465000664388e-04, 3.270805490655505051e-04, 3.275619887243938380e-04, 3.280428647309368271e-04, 3.285231763404308628e-04, 3.290029228091348305e-04, 3.294821033942433902e-04, 3.299607173539294237e-04, 3.304387639473253314e-04, 3.309162424345666177e-04, 3.313931520767168099e-04, 3.318694921358668250e-04, 3.323452618750050830e-04, 3.328204605581715713e-04, 3.332950874503287707e-04, 3.337691418174471448e-04, 3.342426229264792818e-04, 3.347155300453430351e-04, 3.351878624429061276e-04, 3.356596193890734841e-04, 3.361308001547189811e-04, 3.366014040116720564e-04, 3.370714302327980491e-04, 3.375408780918760635e-04, 3.380097468637461504e-04, 3.384780358241840266e-04, 3.389457442499889503e-04, 3.394128714189466409e-04, 3.398794166098281951e-04, 3.403453791023643366e-04, 3.408107581773435371e-04, 3.412755531164978493e-04, 3.417397632025859027e-04, 3.422033877193745265e-04, 3.426664259515777087e-04, 3.431288771849393755e-04, 3.435907407062152846e-04, 3.440520158031635384e-04, 3.445127017645126547e-04, 3.449727978800488449e-04, 3.454323034404886195e-04, 3.458912177376304150e-04, 3.463495400642248138e-04, 3.468072697140643168e-04, 3.472644059819600870e-04, 3.477209481636835652e-04, 3.481768955560459421e-04, 3.486322474568847142e-04, 3.490870031650500772e-04, 3.495411619803946257e-04, 3.499947232037599093e-04, 3.504476861370524354e-04, 3.509000500831898381e-04, 3.513518143460743698e-04, 3.518029782306737285e-04, 3.522535410429519938e-04, 3.527035020898676757e-04, 3.531528606794543789e-04, 3.536016161207560220e-04, 3.540497677238177844e-04, 3.544973147997566333e-04, 3.549442566606490009e-04, 3.553905926196683691e-04, 3.558363219909716998e-04, 3.562814440897732688e-04, 3.567259582323203254e-04, 3.571698637358836060e-04, 3.576131599187358122e-04, 3.580558461002375341e-04, 3.584979216007733909e-04, 3.589393857417343581e-04, 3.593802378456018476e-04, 3.598204772358242170e-04, 3.602601032369611312e-04, 3.606991151745631073e-04, 3.611375123752632384e-04, 3.615752941666969624e-04, 3.620124598775936232e-04, 3.624490088376611653e-04, 3.628849403777189490e-04, 3.633202538295869448e-04, 3.637549485261626575e-04, 3.641890238014016648e-04, 3.646224789902625940e-04, 3.650553134287843173e-04, 3.654875264540661107e-04, 3.659191174042625045e-04, 3.663500856185531417e-04, 3.667804304372198113e-04, 3.672101512015356968e-04, 3.676392472538977572e-04, 3.680677179377125604e-04, 3.684955625974740750e-04, 3.689227805787494130e-04, 3.693493712281165965e-04, 3.697753338932446799e-04, 3.702006679228887092e-04, 3.706253726668246149e-04, 3.710494474759448930e-04, 3.714728917021418368e-04, 3.718957046984391044e-04, 3.723178858188820519e-04, 3.727394344186180184e-04, 3.731603498538568070e-04, 3.735806314818769730e-04, 3.740002786609972012e-04, 3.744192907506587050e-04, 3.748376671113655412e-04, 3.752554071046684554e-04, 3.756725100932448960e-04, 3.760889754407784513e-04, 3.765048025121010963e-04, 3.769199906730733886e-04, 3.773345392906657294e-04, 3.777484477329309874e-04, 3.781617153689901330e-04, 3.785743415690224806e-04, 3.789863257043377879e-04, 3.793976671473185767e-04, 3.798083652714078265e-04, 3.802184194511821591e-04, 3.806278290622455858e-04, 3.810365934813225871e-04, 3.814447120862373493e-04, 3.818521842558997791e-04, 3.822590093702858249e-04, 3.826651868105122325e-04, 3.830707159587207525e-04, 3.834755961982130152e-04, 3.838798269133411340e-04, 3.842834074895774745e-04, 3.846863373135050047e-04, 3.850886157727552244e-04, 3.854902422560876917e-04, 3.858912161533680678e-04, 3.862915368555683879e-04, 3.866912037547468408e-04, 3.870902162440392042e-04, 3.874885737177313229e-04, 3.878862755712037067e-04, 3.882833212009136948e-04, 3.886797100044613214e-04, 3.890754413805270280e-04, 3.894705147289074425e-04, 3.898649294505023141e-04, 3.902586849473418896e-04, 3.906517806225374197e-04, 3.910442158803516320e-04, 3.914359901260998516e-04, 3.918271027662733295e-04, 3.922175532084309305e-04, 3.926073408612760032e-04, 3.929964651346255886e-04, 3.933849254394052161e-04, 3.937727211876325861e-04, 3.941598517924872844e-04, 3.945463166682595534e-04, 3.949321152303354385e-04, 3.953172468952642800e-04, 3.957017110806552258e-04, 3.960855072053044625e-04, 3.964686346890878795e-04, 3.968510929530293736e-04, 3.972328814192829056e-04, 3.976139995111168876e-04, 3.979944466529024738e-04, 3.983742222701908641e-04, 3.987533257896181110e-04, 3.991317566389775986e-04, 3.995095142472021533e-04, 3.998865980443118396e-04, 4.002630074614864386e-04, 4.006387419310473421e-04, 4.010138008864494214e-04, 4.013881837622740333e-04, 4.017618899942134087e-04, 4.021349190191390649e-04, 4.025072702750515530e-04, 4.028789432010655507e-04, 4.032499372374585963e-04, 4.036202518256577537e-04, 4.039898864081876246e-04, 4.043588404287416348e-04, 4.047271133321638198e-04, 4.050947045644395545e-04, 4.054616135726927888e-04, 4.058278398051673452e-04, 4.061933827112913201e-04, 4.065582417416369141e-04, 4.069224163478928394e-04, 4.072859059829340338e-04, 4.076487101007651736e-04, 4.080108281565163371e-04, 4.083722596065122849e-04, 4.087330039082189546e-04, 4.090930605202294746e-04, 4.094524289023337158e-04, 4.098111085154151835e-04, 4.101690988215708224e-04, 4.105263992840137090e-04, 4.108830093671352848e-04, 4.112389285364864916e-04, 4.115941562587667663e-04, 4.119486920018107599e-04, 4.123025352346519797e-04, 4.126556854274771448e-04, 4.130081420516101397e-04, 4.133599045795789098e-04, 4.137109724850115402e-04, 4.140613452427624030e-04, 4.144110223288080194e-04, 4.147600032203218700e-04, 4.151082873956086919e-04, 4.154558743341837338e-04, 4.158027635166725760e-04, 4.161489544249232907e-04, 4.164944465419161287e-04, 4.168392393518205474e-04, 4.171833323399864297e-04, 4.175267249928976796e-04, 4.178694167982300103e-04, 4.182114072448403735e-04, 4.185526958227637063e-04, 4.188932820231946086e-04, 4.192331653384827892e-04, 4.195723452621948112e-04, 4.199108212890605867e-04, 4.202485929149680642e-04, 4.205856596370049702e-04, 4.209220209534439015e-04, 4.212576763637026979e-04, 4.215926253683980555e-04, 4.219268674693449307e-04, 4.222604021695091606e-04, 4.225932289730766349e-04, 4.229253473853631989e-04, 4.232567569129217183e-04, 4.235874570634536084e-04, 4.239174473458642910e-04, 4.242467272702480697e-04, 4.245752963478776677e-04, 4.249031540911906205e-04, 4.252303000138502628e-04, 4.255567336307018180e-04, 4.258824544577566231e-04, 4.262074620122540368e-04, 4.265317558125719384e-04, 4.268553353783332508e-04, 4.271782002303147049e-04, 4.275003498905084222e-04, 4.278217838821006644e-04, 4.281425017294663042e-04, 4.284625029581502851e-04, 4.287817870949324028e-04, 4.291003536677826359e-04, 4.294182022058418472e-04, 4.297353322394906845e-04, 4.300517433002611100e-04, 4.303674349209071987e-04, 4.306824066353910976e-04, 4.309966579788746780e-04, 4.313101884877140594e-04, 4.316229976994464374e-04, 4.319350851528464073e-04, 4.322464503878859030e-04, 4.325570929457190727e-04, 4.328670123687260261e-04, 4.331762082005004202e-04, 4.334846799858040859e-04, 4.337924272706296944e-04, 4.340994496021818925e-04, 4.344057465288748087e-04, 4.347113176003231626e-04, 4.350161623673312605e-04, 4.353202803819472056e-04, 4.356236711974254927e-04, 4.359263343682049990e-04, 4.362282694499702417e-04, 4.365294759995944573e-04, 4.368299535751725068e-04, 4.371297017360041256e-04, 4.374287200426284000e-04, 4.377270080567667392e-04, 4.380245653413935105e-04, 4.383213914606527185e-04, 4.386174859799495660e-04, 4.389128484658759151e-04, 4.392074784862596182e-04, 4.395013756101517790e-04, 4.397945394078120614e-04, 4.400869694507005578e-04, 4.403786653115354145e-04, 4.406696265642427962e-04, 4.409598527839563974e-04, 4.412493435470652564e-04, 4.415380984311317891e-04, 4.418261170149916442e-04, 4.421133988786711956e-04, 4.423999436034476069e-04, 4.426857507718040541e-04, 4.429708199674555293e-04, 4.432551507753397881e-04, 4.435387427816403342e-04, 4.438215955737394194e-04, 4.441037087402747476e-04, 4.443850818711118813e-04, 4.446657145573184385e-04, 4.449456063912101702e-04, 4.452247569663403902e-04, 4.455031658774938493e-04, 4.457808327206824522e-04, 4.460577570931281276e-04, 4.463339385933209956e-04, 4.466093768209780592e-04, 4.468840713770312243e-04, 4.471580218636651382e-04, 4.474312278843098171e-04, 4.477036890435948384e-04, 4.479754049474092971e-04, 4.482463752028845129e-04, 4.485165994183887175e-04, 4.487860772035236396e-04, 4.490548081691101388e-04, 4.493227919272461024e-04, 4.495900280912381404e-04, 4.498565162756518925e-04, 4.501222560962959821e-04, 4.503872471702106322e-04, 4.506514891156643580e-04, 4.509149815521946796e-04, 4.511777241005772215e-04, 4.514397163828170936e-04, 4.517009580221880306e-04, 4.519614486431708638e-04, 4.522211878715325052e-04, 4.524801753342532515e-04, 4.527384106595833254e-04, 4.529958934770133856e-04, 4.532526234172802181e-04, 4.535086001123486850e-04, 4.537638231954621397e-04, 4.540182923011088704e-04, 4.542720070650050788e-04, 4.545249671241498486e-04, 4.547771721167502275e-04, 4.550286216823056862e-04, 4.552793154615368326e-04, 4.555292530964413561e-04, 4.557784342302575445e-04, 4.560268585074578329e-04, 4.562745255737988398e-04, 4.565214350762864556e-04, 4.567675866631585495e-04, 4.570129799839319157e-04, 4.572576146893796135e-04, 4.575014904315050546e-04, 4.577446068635845043e-04, 4.579869636401542876e-04, 4.582285604170134455e-04, 4.584693968512079058e-04, 4.587094726010281518e-04, 4.589487873260509102e-04, 4.591873406871049444e-04, 4.594251323462665007e-04, 4.596621619668840824e-04, 4.598984292135749265e-04, 4.601339337521897664e-04, 4.603686752498547369e-04, 4.606026533749734342e-04, 4.608358677971863661e-04, 4.610683181874276025e-04, 4.613000042178530546e-04, 4.615309255619247180e-04, 4.617610818943377053e-04, 4.619904728910704996e-04, 4.622190982293669019e-04, 4.624469575877291467e-04, 4.626740506459129146e-04, 4.629003770849645749e-04, 4.631259365871906648e-04, 4.633507288361539867e-04, 4.635747535167091156e-04, 4.637980103149398950e-04, 4.640204989182387463e-04, 4.642422190152396648e-04, 4.644631702958629434e-04, 4.646833524513036798e-04, 4.649027651740014733e-04, 4.651214081576807028e-04, 4.653392810973428287e-04, 4.655563836892646586e-04, 4.657727156309747116e-04, 4.659882766213018987e-04, 4.662030663603173013e-04, 4.664170845493792201e-04, 4.666303308911279703e-04, 4.668428050894739560e-04, 4.670545068495989167e-04, 4.672654358779465490e-04, 4.674755918822563337e-04, 4.676849745715410929e-04, 4.678935836560761479e-04, 4.681014188474259905e-04, 4.683084798584377781e-04, 4.685147664032086987e-04, 4.687202781971337305e-04, 4.689250149568867767e-04, 4.691289764004196892e-04, 4.693321622469601010e-04, 4.695345722170000415e-04, 4.697362060323331248e-04, 4.699370634160320525e-04, 4.701371440924305076e-04, 4.703364477871656009e-04, 4.705349742271392735e-04, 4.707327231405404144e-04, 4.709296942568338019e-04, 4.711258873067801609e-04, 4.713213020224082451e-04, 4.715159381370454114e-04, 4.717097953852751732e-04, 4.719028735029943923e-04, 4.720951722273623212e-04, 4.722866912968343763e-04, 4.724774304511571502e-04, 4.726673894313368073e-04, 4.728565679796788200e-04, 4.730449658397808672e-04, 4.732325827565228051e-04, 4.734194184760605415e-04, 4.736054727458579119e-04, 4.737907453146322518e-04, 4.739752359324216177e-04, 4.741589443505272159e-04, 4.743418703215592099e-04, 4.745240135993983939e-04, 4.747053739392189612e-04, 4.748859510974838419e-04, 4.750657448319532141e-04, 4.752447549016608139e-04, 4.754229810669444558e-04, 4.756004230894335101e-04, 4.757770807320265685e-04, 4.759529537589276020e-04, 4.761280419356357695e-04, 4.763023450289385332e-04, 4.764758628069113333e-04, 4.766485950389108116e-04, 4.768205414956051152e-04, 4.769917019489518326e-04, 4.771620761721846586e-04, 4.773316639398489012e-04, 4.775004650277806656e-04, 4.776684792130940602e-04, 4.778357062742062417e-04, 4.780021459908327533e-04, 4.781677981439848681e-04, 4.783326625159634092e-04, 4.784967388903506183e-04, 4.786600270520514639e-04, 4.788225267872425750e-04, 4.789842378834088875e-04, 4.791451601293377893e-04, 4.793052933150896300e-04, 4.794646372320337710e-04, 4.796231916728420255e-04, 4.797809564314811778e-04, 4.799379313032046891e-04, 4.800941160845815917e-04, 4.802495105734529580e-04, 4.804041145689816653e-04, 4.805579278716151539e-04, 4.807109502831030993e-04, 4.808631816065026161e-04, 4.810146216461529968e-04, 4.811652702076974495e-04, 4.813151270980865672e-04, 4.814641921255684623e-04, 4.816124650996809597e-04, 4.817599458312806534e-04, 4.819066341324972622e-04, 4.820525298167882729e-04, 4.821976326988916149e-04, 4.823419425948610598e-04, 4.824854593220460550e-04, 4.826281826990841883e-04, 4.827701125459345276e-04, 4.829112486838508947e-04, 4.830515909353825165e-04, 4.831911391243883360e-04, 4.833298930760358196e-04, 4.834678526167736357e-04, 4.836050175743668907e-04, 4.837413877778862876e-04, 4.838769630577028670e-04, 4.840117432454925069e-04, 4.841457281742200932e-04, 4.842789176781736181e-04, 4.844113115929399478e-04, 4.845429097554015160e-04, 4.846737120037556768e-04, 4.848037181774974658e-04, 4.849329281174267559e-04, 4.850613416656471191e-04, 4.851889586655758007e-04, 4.853157789619218731e-04, 4.854418024007162136e-04, 4.855670288292737204e-04, 4.856914580962352706e-04, 4.858150900515315084e-04, 4.859379245464092454e-04, 4.860599614334256595e-04, 4.861812005664280212e-04, 4.863016418005762444e-04, 4.864212849923427238e-04, 4.865401299995071312e-04, 4.866581766811449764e-04, 4.867754248976537915e-04, 4.868918745107175144e-04, 4.870075253833489352e-04, 4.871223773798548937e-04, 4.872364303658533553e-04, 4.873496842082761758e-04, 4.874621387753510495e-04, 4.875737939366157664e-04, 4.876846495629272109e-04, 4.877947055264377266e-04, 4.879039617006158242e-04, 4.880124179602388632e-04, 4.881200741813838907e-04, 4.882269302414408139e-04, 4.883329860191115875e-04, 4.884382413944092375e-04, 4.885426962486502179e-04, 4.886463504644538141e-04, 4.887492039257614962e-04, 4.888512565178208726e-04, 4.889525081271804859e-04, 4.890529586417068347e-04, 4.891526079505786277e-04, 4.892514559442717129e-04, 4.893495025145785937e-04, 4.894467475546040915e-04, 4.895431909587630694e-04, 4.896388326227804318e-04, 4.897336724436777890e-04, 4.898277103198050075e-04, 4.899209461508160319e-04, 4.900133798376720296e-04, 4.901050112826509314e-04, 4.901958403893310603e-04, 4.902858670626081532e-04, 4.903750912086878803e-04, 4.904635127350895308e-04, 4.905511315506350632e-04, 4.906379475654698129e-04, 4.907239606910319182e-04, 4.908091708400876647e-04, 4.908935779267030799e-04, 4.909771818662619306e-04, 4.910599825754611691e-04, 4.911419799722961882e-04, 4.912231739760832645e-04, 4.913035645074517515e-04, 4.913831514883372498e-04, 4.914619348419864853e-04, 4.915399144929665258e-04, 4.916170903671369160e-04, 4.916934623916912033e-04, 4.917690304951140030e-04, 4.918437946072191621e-04, 4.919177546591207029e-04, 4.919909105832462673e-04, 4.920632623133344057e-04, 4.921348097844420585e-04, 4.922055529329273172e-04, 4.922754916964668798e-04, 4.923446260140523648e-04, 4.924129558259756744e-04, 4.924804810738475343e-04, 4.925472017005904464e-04, 4.926131176504399897e-04, 4.926782288689413513e-04, 4.927425353029436881e-04, 4.928060369006230035e-04, 4.928687336114573195e-04, 4.929306253862375184e-04, 4.929917121770697281e-04, 4.930519939373629625e-04, 4.931114706218505880e-04, 4.931701421865648458e-04, 4.932280085888610284e-04, 4.932850697873967724e-04, 4.933413257421501641e-04, 4.933967764143997901e-04, 4.934514217667465303e-04, 4.935052617630945838e-04, 4.935582963686654554e-04, 4.936105255499916673e-04, 4.936619492749127472e-04, 4.937125675125804327e-04, 4.937623802334640925e-04, 4.938113874093387999e-04, 4.938595890132884770e-04, 4.939069850197195556e-04, 4.939535754043336557e-04, 4.939993601441570754e-04, 4.940443392175194320e-04, 4.940885126040661310e-04, 4.941318802847527274e-04, 4.941744422418424326e-04, 4.942161984589093669e-04, 4.942571489208426793e-04, 4.942972936138423194e-04, 4.943366325254143750e-04, 4.943751656443798543e-04, 4.944128929608647112e-04, 4.944498144663140487e-04, 4.944859301534749877e-04, 4.945212400164094614e-04, 4.945557440504923718e-04, 4.945894422523972782e-04, 4.946223346201227434e-04, 4.946544211529684812e-04, 4.946857018515446805e-04, 4.947161767177752582e-04, 4.947458457548918956e-04, 4.947747089674338220e-04, 4.948027663612496576e-04, 4.948300179435030513e-04, 4.948564637226629233e-04, 4.948821037085095360e-04, 4.949069379121265799e-04, 4.949309663459136414e-04, 4.949541890235782888e-04, 4.949766059601323851e-04, 4.949982171719037984e-04, 4.950190226765202465e-04, 4.950390224929271865e-04, 4.950582166413704677e-04, 4.950766051434115104e-04, 4.950941880219131026e-04, 4.951109653010510011e-04, 4.951269370063062338e-04, 4.951421031644690027e-04, 4.951564638036370578e-04, 4.951700189532155880e-04, 4.951827686439175475e-04, 4.951947129077611609e-04, 4.952058517780740443e-04, 4.952161852894903854e-04, 4.952257134779521367e-04, 4.952344363807050041e-04, 4.952423540363041924e-04, 4.952494664846093103e-04, 4.952557737667880565e-04, 4.952612759253131837e-04, 4.952659730039649924e-04, 4.952698650478263437e-04, 4.952729521032875381e-04, 4.952752342180455564e-04, 4.952767114411023254e-04, 4.952773838227629826e-04, 4.952772514146394547e-04, 4.952763142696483970e-04, 4.952745724420114107e-04, 4.952720259872511396e-04, 4.952686749622009195e-04, 4.952645194249926351e-04, 4.952595594350644179e-04, 4.952537950531575020e-04, 4.952472263413188261e-04, 4.952398533628952874e-04, 4.952316761825398131e-04, 4.952226948662069150e-04, 4.952129094811540989e-04, 4.952023200959425157e-04, 4.951909267804335997e-04, 4.951787296057923215e-04, 4.951657286444885973e-04, 4.951519239702886158e-04, 4.951373156582632943e-04, 4.951219037847860022e-04, 4.951056884275289831e-04, 4.950886696654653064e-04, 4.950708475788721200e-04, 4.950522222493250121e-04, 4.950327937596971442e-04, 4.950125621941681413e-04, 4.949915276382120576e-04, 4.949696901786047485e-04, 4.949470499034209440e-04, 4.949236069020373921e-04, 4.948993612651246196e-04, 4.948743130846566893e-04, 4.948484624539023101e-04, 4.948218094674319920e-04, 4.947943542211139271e-04, 4.947660968121116035e-04, 4.947370373388874920e-04, 4.947071759012026124e-04, 4.946765126001128471e-04, 4.946450475379697001e-04, 4.946127808184292958e-04, 4.945797125464330805e-04, 4.945458428282271208e-04, 4.945111717713477923e-04, 4.944756994846312122e-04, 4.944394260782046741e-04, 4.944023516634954299e-04, 4.943644763532207154e-04, 4.943258002613952311e-04, 4.942863235033259379e-04, 4.942460461956153100e-04, 4.942049684561604676e-04, 4.941630904041486227e-04, 4.941204121600641271e-04, 4.940769338456777382e-04, 4.940326555840609309e-04, 4.939875774995746219e-04, 4.939416997178665671e-04, 4.938950223658837221e-04, 4.938475455718603158e-04, 4.937992694653212111e-04, 4.937501941770843991e-04, 4.937003198392590471e-04, 4.936496465852401863e-04, 4.935981745497165177e-04, 4.935459038686669433e-04, 4.934928346793541684e-04, 4.934389671203391224e-04, 4.933843013314624182e-04, 4.933288374538571464e-04, 4.932725756299461643e-04, 4.932155160034349404e-04, 4.931576587193220711e-04, 4.930990039238912579e-04, 4.930395517647117405e-04, 4.929793023906381888e-04, 4.929182559518138470e-04, 4.928564125996676062e-04, 4.927937724869154140e-04, 4.927303357675534437e-04, 4.926661025968685033e-04, 4.926010731314259998e-04, 4.925352475290775299e-04, 4.924686259489646735e-04, 4.924012085515037072e-04, 4.923329954983994821e-04, 4.922639869526344728e-04, 4.921941830784811378e-04, 4.921235840414837047e-04, 4.920521900084796375e-04, 4.919800011475814220e-04, 4.919070176281827456e-04, 4.918332396209574133e-04, 4.917586672978606485e-04, 4.916833008321307196e-04, 4.916071403982814588e-04, 4.915301861721041053e-04, 4.914524383306740274e-04, 4.913738970523382540e-04, 4.912945625167339063e-04, 4.912144349047615263e-04, 4.911335143986081701e-04, 4.910518011817358074e-04, 4.909692954388792611e-04, 4.908859973560527126e-04, 4.908019071205513284e-04, 4.907170249209349966e-04, 4.906313509470458913e-04, 4.905448853899997989e-04, 4.904576284421815644e-04, 4.903695802972601620e-04, 4.902807411501667939e-04, 4.901911111971166829e-04, 4.901006906355846781e-04, 4.900094796643321426e-04, 4.899174784833781144e-04, 4.898246872940263024e-04, 4.897311062988417762e-04, 4.896367357016652780e-04, 4.895415757076076926e-04, 4.894456265230392056e-04, 4.893488883556171678e-04, 4.892513614142598565e-04, 4.891530459091482114e-04, 4.890539420517359169e-04, 4.889540500547486434e-04, 4.888533701321676759e-04, 4.887519024992581030e-04, 4.886496473725341228e-04, 4.885466049697885331e-04, 4.884427755100703965e-04, 4.883381592137006535e-04, 4.882327563022614966e-04, 4.881265669986011415e-04, 4.880195915268279176e-04, 4.879118301123183460e-04, 4.878032829817043449e-04, 4.876939503628926380e-04, 4.875838324850394916e-04, 4.874729295785684420e-04, 4.873612418751649281e-04, 4.872487696077684857e-04, 4.871355130105834807e-04, 4.870214723190798142e-04, 4.869066477699784479e-04, 4.867910396012553619e-04, 4.866746480521574381e-04, 4.865574733631737830e-04, 4.864395157760688501e-04, 4.863207755338488296e-04, 4.862012528807840373e-04, 4.860809480623963920e-04, 4.859598613254652701e-04, 4.858379929180204043e-04, 4.857153430893590678e-04, 4.855919120900179940e-04, 4.854677001717961444e-04, 4.853427075877389876e-04, 4.852169345921441917e-04, 4.850903814405719237e-04, 4.849630483898238710e-04, 4.848349356979563592e-04, 4.847060436242712459e-04, 4.845763724293293637e-04, 4.844459223749274278e-04, 4.843146937241304528e-04, 4.841826867412322879e-04, 4.840499016917886857e-04, 4.839163388425952918e-04, 4.837819984616906275e-04, 4.836468808183736531e-04, 4.835109861831801865e-04, 4.833743148278909813e-04, 4.832368670255298825e-04, 4.830986430503659418e-04, 4.829596431779251261e-04, 4.828198676849591474e-04, 4.826793168494628635e-04, 4.825379909506874519e-04, 4.823958902691118404e-04, 4.822530150864581030e-04, 4.821093656857044704e-04, 4.819649423510489008e-04, 4.818197453679348837e-04, 4.816737750230511692e-04, 4.815270316043131736e-04, 4.813795154008908977e-04, 4.812312267031750457e-04, 4.810821658028055937e-04, 4.809323329926478287e-04, 4.807817285668066604e-04, 4.806303528206232602e-04, 4.804782060506803732e-04, 4.803252885547837250e-04, 4.801716006319690683e-04, 4.800171425825228372e-04, 4.798619147079401345e-04, 4.797059173109734123e-04, 4.795491506955838453e-04, 4.793916151669765134e-04, 4.792333110315789347e-04, 4.790742385970553222e-04, 4.789143981722853338e-04, 4.787537900673989296e-04, 4.785924145937299674e-04, 4.784302720638569694e-04, 4.782673627915750409e-04, 4.781036870918996652e-04, 4.779392452810909356e-04, 4.777740376766208665e-04, 4.776080645971851569e-04, 4.774413263626997215e-04, 4.772738232943166277e-04, 4.771055557143902693e-04, 4.769365239465228482e-04, 4.767667283155116280e-04, 4.765961691473934408e-04, 4.764248467694128116e-04, 4.762527615100291679e-04, 4.760799136989427526e-04, 4.759063036670560260e-04, 4.757319317464860260e-04, 4.755567982705711984e-04, 4.753809035738620729e-04, 4.752042479921417002e-04, 4.750268318623841811e-04, 4.748486555227936440e-04, 4.746697193127825606e-04, 4.744900235729696317e-04, 4.743095686451937192e-04, 4.741283548725167734e-04, 4.739463825991901144e-04, 4.737636521706819169e-04, 4.735801639336816005e-04, 4.733959182360658949e-04, 4.732109154269483874e-04, 4.730251558566253133e-04, 4.728386398766163757e-04, 4.726513678396386704e-04, 4.724633400996134085e-04, 4.722745570116730174e-04, 4.720850189321627128e-04, 4.718947262186150206e-04, 4.717036792297688583e-04, 4.715118783255773413e-04, 4.713193238671762870e-04, 4.711260162169293177e-04, 4.709319557383747344e-04, 4.707371427962690476e-04, 4.705415777565511988e-04, 4.703452609863783391e-04, 4.701481928540819730e-04, 4.699503737292194585e-04, 4.697518039825185495e-04, 4.695524839859211439e-04, 4.693524141125530883e-04, 4.691515947367289486e-04, 4.689500262339810124e-04, 4.687477089810186313e-04, 4.685446433557424240e-04, 4.683408297372414035e-04, 4.681362685058025716e-04, 4.679309600429154732e-04, 4.677249047312376641e-04, 4.675181029546199730e-04, 4.673105550981145246e-04, 4.671022615479425389e-04, 4.668932226915270740e-04, 4.666834389174716129e-04, 4.664729106155702013e-04, 4.662616381767878231e-04, 4.660496219932898365e-04, 4.658368624584066837e-04, 4.656233599666782341e-04, 4.654091149137967016e-04, 4.651941276966580895e-04, 4.649783987133250572e-04, 4.647619283630405264e-04, 4.645447170462294159e-04, 4.643267651645093756e-04, 4.641080731206533808e-04, 4.638886413186126640e-04, 4.636684701635343324e-04, 4.634475600617107903e-04, 4.632259114206474472e-04, 4.630035246489864445e-04, 4.627804001565679671e-04, 4.625565383543916997e-04, 4.623319396546264224e-04, 4.621066044706185756e-04, 4.618805332168965426e-04, 4.616537263091342750e-04, 4.614261841641916244e-04, 4.611979072000870752e-04, 4.609688958359994251e-04, 4.607391504922985219e-04, 4.605086715905033052e-04, 4.602774595532955213e-04, 4.600455148045170129e-04, 4.598128377691832716e-04, 4.595794288734814863e-04, 4.593452885447401311e-04, 4.591104172114518424e-04, 4.588748153032837728e-04, 4.586384832510483176e-04, 4.584014214867102163e-04, 4.581636304434194042e-04, 4.579251105554663971e-04, 4.576858622582938925e-04, 4.574458859884977997e-04, 4.572051821838378103e-04, 4.569637512832375615e-04, 4.567215937267521636e-04, 4.564787099555923239e-04, 4.562351004121396880e-04, 4.559907655398990809e-04, 4.557457057835426336e-04, 4.554999215888998632e-04, 4.552534134029317600e-04, 4.550061816737448282e-04, 4.547582268506098965e-04, 4.545095493839180459e-04, 4.542601497252439805e-04, 4.540100283272662852e-04, 4.537591856438357297e-04, 4.535076221299303291e-04, 4.532553382416673778e-04, 4.530023344363132078e-04, 4.527486111722907780e-04, 4.524941689091334330e-04, 4.522390081075192722e-04, 4.519831292292812871e-04, 4.517265327373619333e-04, 4.514692190958776948e-04, 4.512111887700417804e-04, 4.509524422262291754e-04, 4.506929799319279073e-04, 4.504328023557811669e-04, 4.501719099675327183e-04, 4.499103032380997037e-04, 4.496479826394911110e-04, 4.493849486448717417e-04, 4.491212017285168916e-04, 4.488567423658278545e-04, 4.485915710333565880e-04, 4.483256882087680918e-04, 4.480590943708435514e-04, 4.477917899994928613e-04, 4.475237755757495287e-04, 4.472550515817921954e-04, 4.469856185008871203e-04, 4.467154768174344754e-04, 4.464446270169640085e-04, 4.461730695861150400e-04, 4.459008050126315298e-04, 4.456278337854096736e-04, 4.453541563944439638e-04, 4.450797733308305506e-04, 4.448046850868063820e-04, 4.445288921556922283e-04, 4.442523950319620719e-04, 4.439751942111631465e-04, 4.436972901899816947e-04, 4.434186834661988405e-04, 4.431393745387006184e-04, 4.428593639074928268e-04, 4.425786520737058530e-04, 4.422972395395458837e-04, 4.420151268083318766e-04, 4.417323143845063482e-04, 4.414488027735836029e-04, 4.411645924822270911e-04, 4.408796840181584444e-04, 4.405940778902315809e-04, 4.403077746083826154e-04, 4.400207746836484529e-04, 4.397330786281704209e-04, 4.394446869552046781e-04, 4.391556001790767856e-04, 4.388658188152107643e-04, 4.385753433801481221e-04, 4.382841743914940775e-04, 4.379923123679798475e-04, 4.376997578294147795e-04, 4.374065112966925859e-04, 4.371125732917972525e-04, 4.368179443378070507e-04, 4.365226249589122635e-04, 4.362266156803560973e-04, 4.359299170284763685e-04, 4.356325295307148285e-04, 4.353344537155806257e-04, 4.350356901126616353e-04, 4.347362392526582324e-04, 4.344361016673353704e-04, 4.341352778895336936e-04, 4.338337684531717062e-04, 4.335315738932579688e-04, 4.332286947458973878e-04, 4.329251315482368959e-04, 4.326208848385103387e-04, 4.323159551560475816e-04, 4.320103430412231189e-04, 4.317040490355083865e-04, 4.313970736814409161e-04, 4.310894175226324672e-04, 4.307810811037539561e-04, 4.304720649705661936e-04, 4.301623696698670838e-04, 4.298519957495712594e-04, 4.295409437586127739e-04, 4.292292142470257124e-04, 4.289168077658886261e-04, 4.286037248673446988e-04, 4.282899661046065710e-04, 4.279755320319709772e-04, 4.276604232047601442e-04, 4.273446401793651599e-04, 4.270281835132559473e-04, 4.267110537649288437e-04, 4.263932514939811937e-04, 4.260747772610247756e-04, 4.257556316277543774e-04, 4.254358151569051331e-04, 4.251153284122546373e-04, 4.247941719586683187e-04, 4.244723463620458806e-04, 4.241498521893191328e-04, 4.238266900084972566e-04, 4.235028603886211059e-04, 4.231783638997699292e-04, 4.228532011131040875e-04, 4.225273726008084039e-04, 4.222008789361076687e-04, 4.218737206932675061e-04, 4.215458984476045659e-04, 4.212174127754976364e-04, 4.208882642543303448e-04, 4.205584534625356630e-04, 4.202279809796029557e-04, 4.198968473860407915e-04, 4.195650532633851291e-04, 4.192325991942434443e-04, 4.188994857622375381e-04, 4.185657135520149752e-04, 4.182312831492537462e-04, 4.178961951406732177e-04, 4.175604501140459503e-04, 4.172240486581323213e-04, 4.168869913627346806e-04, 4.165492788187016328e-04, 4.162109116178771889e-04, 4.158718903531489586e-04, 4.155322156184484755e-04, 4.151918880086946022e-04, 4.148509081198354883e-04, 4.145092765488639667e-04, 4.141669938937532058e-04, 4.138240607535496256e-04, 4.134804777282642067e-04, 4.131362454189658399e-04, 4.127913644277111244e-04, 4.124458353575771101e-04, 4.120996588126585878e-04, 4.117528353980871164e-04, 4.114053657199693323e-04, 4.110572503854281485e-04, 4.107084900026205360e-04, 4.103590851806731220e-04, 4.100090365297738050e-04, 4.096583446610637682e-04, 4.093070101867281188e-04, 4.089550337199238431e-04, 4.086024158748384071e-04, 4.082491572666481234e-04, 4.078952585115423832e-04, 4.075407202266880403e-04, 4.071855430302793923e-04, 4.068297275414849471e-04, 4.064732743804666667e-04, 4.061161841684168849e-04, 4.057584575275010610e-04, 4.054000950808712240e-04, 4.050410974526698761e-04, 4.046814652680414846e-04, 4.043211991531439750e-04, 4.039602997350830822e-04, 4.035987676419629288e-04, 4.032366035028984931e-04, 4.028738079479656821e-04, 4.025103816082193286e-04, 4.021463251157366683e-04, 4.017816391035541304e-04, 4.014163242056736805e-04, 4.010503810571112841e-04, 4.006838102938211753e-04, 4.003166125527919173e-04, 3.999487884719335907e-04, 3.995803386901741251e-04, 3.992112638473906691e-04, 3.988415645844347983e-04, 3.984712415431398329e-04, 3.981002953663343369e-04, 3.977287266977767941e-04, 3.973565361822060243e-04, 3.969837244653505611e-04, 3.966102921938669066e-04, 3.962362400154349957e-04, 3.958615685786429994e-04, 3.954862785330833853e-04, 3.951103705292875398e-04, 3.947338452187407307e-04, 3.943567032539282394e-04, 3.939789452882726402e-04, 3.936005719761443713e-04, 3.932215839728749073e-04, 3.928419819347713426e-04, 3.924617665190578437e-04, 3.920809383839623315e-04, 3.916994981886402620e-04, 3.913174465931887748e-04, 3.909347842586586739e-04, 3.905515118470554575e-04, 3.901676300213586710e-04, 3.897831394454550659e-04, 3.893980407841829438e-04, 3.890123347033528647e-04, 3.886260218696914307e-04, 3.882391029508629166e-04, 3.878515786155120409e-04, 3.874634495331987514e-04, 3.870747163744156808e-04, 3.866853798105907491e-04, 3.862954405140996855e-04, 3.859048991582761661e-04, 3.855137564173486591e-04, 3.851220129664878044e-04, 3.847296694818185024e-04, 3.843367266403661920e-04, 3.839431851201090544e-04, 3.835490455999476019e-04, 3.831543087597157364e-04, 3.827589752801506084e-04, 3.823630458429482372e-04, 3.819665211306850681e-04, 3.815694018269210805e-04, 3.811716886160757553e-04, 3.807733821835353563e-04, 3.803744832155774155e-04, 3.799749923993892735e-04, 3.795749104231182234e-04, 3.791742379758033144e-04, 3.787729757473867905e-04, 3.783711244287266129e-04, 3.779686847116160838e-04, 3.775656572887201501e-04, 3.771620428536699991e-04, 3.767578421009487848e-04, 3.763530557259874162e-04, 3.759476844250904523e-04, 3.755417288954932941e-04, 3.751351898353243457e-04, 3.747280679436265898e-04, 3.743203639203154668e-04, 3.739120784662450106e-04, 3.735032122831388399e-04, 3.730937660736116787e-04, 3.726837405412176583e-04, 3.722731363903818494e-04, 3.718619543264129476e-04, 3.714501950555128685e-04, 3.710378592847854754e-04, 3.706249477222521918e-04, 3.702114610767768665e-04, 3.697974000581233443e-04, 3.693827653769683143e-04, 3.689675577448472618e-04, 3.685517778741706236e-04, 3.681354264782783769e-04, 3.677185042713664769e-04, 3.673010119685007338e-04, 3.668829502856271133e-04, 3.664643199395802475e-04, 3.660451216480982341e-04, 3.656253561297431102e-04, 3.652050241039934433e-04, 3.647841262911754841e-04, 3.643626634124812733e-04, 3.639406361900177013e-04, 3.635180453467328366e-04, 3.630948916064365801e-04, 3.626711756938048935e-04, 3.622468983344090182e-04, 3.618220602546365458e-04, 3.613966621818066687e-04, 3.609707048440340040e-04, 3.605441889703413509e-04, 3.601171152905850974e-04, 3.596894845354685561e-04, 3.592612974366008903e-04, 3.588325547264194313e-04, 3.584032571382082181e-04, 3.579734054061028763e-04, 3.575430002651201625e-04, 3.571120424510822872e-04, 3.566805327007284247e-04, 3.562484717515761526e-04, 3.558158603420434780e-04, 3.553826992113522901e-04, 3.549489890995908095e-04, 3.545147307477191181e-04, 3.540799248974932107e-04, 3.536445722915174160e-04, 3.532086736732667313e-04, 3.527722297870248603e-04, 3.523352413779048671e-04, 3.518977091919024106e-04, 3.514596339758217476e-04, 3.510210164772869547e-04, 3.505818574447593832e-04, 3.501421576275379850e-04, 3.497019177757807254e-04, 3.492611386404272252e-04, 3.488198209732521577e-04, 3.483779655268880171e-04, 3.479355730547518261e-04, 3.474926443111110014e-04, 3.470491800510484425e-04, 3.466051810304770597e-04, 3.461606480060994422e-04, 3.457155817354764333e-04, 3.452699829769361123e-04, 3.448238524896912131e-04, 3.443771910336999127e-04, 3.439299993697834132e-04, 3.434822782595466865e-04, 3.430340284653907797e-04, 3.425852507505799819e-04, 3.421359458791556297e-04, 3.416861146159550812e-04, 3.412357577266220154e-04, 3.407848759776328871e-04, 3.403334701362200568e-04, 3.398815409704825964e-04, 3.394290892492539077e-04, 3.389761157422146965e-04, 3.385226212198131214e-04, 3.380686064532835498e-04, 3.376140722147072198e-04, 3.371590192769265875e-04, 3.367034484135681500e-04, 3.362473603990492757e-04, 3.357907560086043335e-04, 3.353336360182118344e-04, 3.348760012046919556e-04, 3.344178523456239785e-04, 3.339591902193595700e-04, 3.335000156050364978e-04, 3.330403292825815579e-04, 3.325801320327322042e-04, 3.321194246369566969e-04, 3.316582078775114030e-04, 3.311964825374572757e-04, 3.307342494006027173e-04, 3.302715092515182702e-04, 3.298082628755983617e-04, 3.293445110589781461e-04, 3.288802545885530747e-04, 3.284154942519868100e-04, 3.279502308377200623e-04, 3.274844651349912436e-04, 3.270181979337505448e-04, 3.265514300247241743e-04, 3.260841621994289949e-04, 3.256163952500916426e-04, 3.251481299697701194e-04, 3.246793671522093779e-04, 3.242101075919610171e-04, 3.237403520842914505e-04, 3.232701014252617575e-04, 3.227993564116339001e-04, 3.223281178409939424e-04, 3.218563865116061168e-04, 3.213841632225327371e-04, 3.209114487735551056e-04, 3.204382439651878790e-04, 3.199645495987426028e-04, 3.194903664762429804e-04, 3.190156954004435760e-04, 3.185405371748409819e-04, 3.180648926037000558e-04, 3.175887624919727144e-04, 3.171121476454193100e-04, 3.166350488704637806e-04, 3.161574669743135086e-04, 3.156794027648681398e-04, 3.152008570507894053e-04, 3.147218306414560737e-04, 3.142423243469900799e-04, 3.137623389782047000e-04, 3.132818753466817471e-04, 3.128009342646954601e-04, 3.123195165452343500e-04, 3.118376230020577415e-04, 3.113552544496152709e-04, 3.108724117030643957e-04, 3.103890955782793396e-04, 3.099053068918617717e-04, 3.094210464611583705e-04, 3.089363151041776660e-04, 3.084511136396477730e-04, 3.079654428870421410e-04, 3.074793036664871262e-04, 3.069926967988941555e-04, 3.065056231058037100e-04, 3.060180834095175975e-04, 3.055300785330040850e-04, 3.050416092999386100e-04, 3.045526765347048113e-04, 3.040632810624200612e-04, 3.035734237088320874e-04, 3.030831053004436559e-04, 3.025923266644151011e-04, 3.021010886285934371e-04, 3.016093920215710670e-04, 3.011172376725981792e-04, 3.006246264116038355e-04, 3.001315590692063789e-04, 2.996380364767424909e-04, 2.991440594661801838e-04, 2.986496288702481460e-04, 2.981547455222794004e-04, 2.976594102563465041e-04, 2.971636239071645124e-04, 2.966673873101201980e-04, 2.961707013013277793e-04, 2.956735667175480926e-04, 2.951759843962036087e-04, 2.946779551753888411e-04, 2.941794798939034142e-04, 2.936805593911614781e-04, 2.931811945073234935e-04, 2.926813860831394020e-04, 2.921811349600803021e-04, 2.916804419802368053e-04, 2.911793079863858233e-04, 2.906777338219968562e-04, 2.901757203311475328e-04, 2.896732683585814534e-04, 2.891703787497348606e-04, 2.886670523506654619e-04, 2.881632900080760107e-04, 2.876590925693756724e-04, 2.871544608825932882e-04, 2.866493957963954812e-04, 2.861438981600999921e-04, 2.856379688236793655e-04, 2.851316086377886513e-04, 2.846248184536697237e-04, 2.841175991232203994e-04, 2.836099514990116218e-04, 2.831018764341993702e-04, 2.825933747826566604e-04, 2.820844473988167161e-04, 2.815750951378024215e-04, 2.810653188553269006e-04, 2.805551194077829098e-04, 2.800444976521373986e-04, 2.795334544460645419e-04, 2.790219906477907526e-04, 2.785101071162257623e-04, 2.779978047108703555e-04, 2.774850842918390290e-04, 2.769719467199254241e-04, 2.764583928565109280e-04, 2.759444235635855991e-04, 2.754300397037582498e-04, 2.749152421402890813e-04, 2.744000317369973637e-04, 2.738844093583944674e-04, 2.733683758695276841e-04, 2.728519321361108185e-04, 2.723350790244343628e-04, 2.718178174013856081e-04, 2.713001481345152146e-04, 2.707820720919462470e-04, 2.702635901423823604e-04, 2.697447031551770263e-04, 2.692254120002486400e-04, 2.687057175481049145e-04, 2.681856206699101560e-04, 2.676651222373890946e-04, 2.671442231228518755e-04, 2.666229241992021902e-04, 2.661012263399481189e-04, 2.655791304192224589e-04, 2.650566373116908388e-04, 2.645337478926182884e-04, 2.640104630378915730e-04, 2.634867836239229168e-04, 2.629627105277930086e-04, 2.624382446270789935e-04, 2.619133868000011111e-04, 2.613881379253227321e-04, 2.608624988823832094e-04, 2.603364705511122443e-04, 2.598100538120486970e-04, 2.592832495462456645e-04, 2.587560586353419303e-04, 2.582284819615809370e-04, 2.577005204077157025e-04, 2.571721748571376229e-04, 2.566434461937710338e-04, 2.561143353020890398e-04, 2.555848430671327589e-04, 2.550549703745358257e-04, 2.545247181104366252e-04, 2.539940871616132214e-04, 2.534630784153185049e-04, 2.529316927594200547e-04, 2.523999310823047282e-04, 2.518677942728996953e-04, 2.513352832207435073e-04, 2.508023988158883020e-04, 2.502691419489232226e-04, 2.497355135109853683e-04, 2.492015143937896093e-04, 2.486671454895383816e-04, 2.481324076910582425e-04, 2.475973018916345831e-04, 2.470618289851502446e-04, 2.465259898659798079e-04, 2.459897854290699331e-04, 2.454532165698895406e-04, 2.449162841844527961e-04, 2.443789891692708634e-04, 2.438413324214336807e-04, 2.433033148384988840e-04, 2.427649373186370355e-04, 2.422262007604588838e-04, 2.416871060631622459e-04, 2.411476541264291704e-04, 2.406078458504663244e-04, 2.400676821360088963e-04, 2.395271638843494901e-04, 2.389862919972371858e-04, 2.384450673769467120e-04, 2.379034909263060655e-04, 2.373615635485923467e-04, 2.368192861476806207e-04, 2.362766596278691709e-04, 2.357336848940262729e-04, 2.351903628514769495e-04, 2.346466944061012809e-04, 2.341026804642202652e-04, 2.335583219327430529e-04, 2.330136197189950741e-04, 2.324685747308591474e-04, 2.319231878766809640e-04, 2.313774600652906911e-04, 2.308313922060713306e-04, 2.302849852088642308e-04, 2.297382399839891984e-04, 2.291911574422567772e-04, 2.286437384950013431e-04, 2.280959840539842310e-04, 2.275478950315368493e-04, 2.269994723403890777e-04, 2.264507168938143336e-04, 2.259016296055313703e-04, 2.253522113897241455e-04, 2.248024631611164950e-04, 2.242523858348721970e-04, 2.237019803266163034e-04, 2.231512475524485297e-04, 2.226001884289759440e-04, 2.220488038732159849e-04, 2.214970948027265927e-04, 2.209450621354975457e-04, 2.203927067899708427e-04, 2.198400296850530633e-04, 2.192870317401259114e-04, 2.187337138750686044e-04, 2.181800770101588309e-04, 2.176261220661441999e-04, 2.170718499642659578e-04, 2.165172616261591871e-04, 2.159623579739967079e-04, 2.154071399303198332e-04, 2.148516084181798847e-04, 2.142957643610398017e-04, 2.137396086828119250e-04, 2.131831423078648822e-04, 2.126263661610490387e-04, 2.120692811675952880e-04, 2.115118882531894819e-04, 2.109541883439922170e-04, 2.103961823665420974e-04, 2.098378712479000954e-04, 2.092792559154755920e-04, 2.087203372971734754e-04, 2.081611163212809508e-04, 2.076015939165659586e-04, 2.070417710121612732e-04, 2.064816485377161557e-04, 2.059212274232181386e-04, 2.053605085991402597e-04, 2.047994929963428343e-04, 2.042381815460918857e-04, 2.036765751801384011e-04, 2.031146748306124317e-04, 2.025524814300486262e-04, 2.019899959113963131e-04, 2.014272192080565811e-04, 2.008641522537790356e-04, 2.003007959828109036e-04, 1.997371513297222065e-04, 1.991732192295511510e-04, 1.986090006177061175e-04, 1.980444964299839022e-04, 1.974797076026504352e-04, 1.969146350723330655e-04, 1.963492797760327854e-04, 1.957836426512008291e-04, 1.952177246356208743e-04, 1.946515266675597465e-04, 1.940850496855891214e-04, 1.935182946287364737e-04, 1.929512624363806405e-04, 1.923839540482898233e-04, 1.918163704046314810e-04, 1.912485124459969955e-04, 1.906803811132981032e-04, 1.901119773478417054e-04, 1.895433020913545876e-04, 1.889743562858784960e-04, 1.884051408739216278e-04, 1.878356567982804423e-04, 1.872659050021888746e-04, 1.866958864292159865e-04, 1.861256020233029921e-04, 1.855550527287730162e-04, 1.849842394903561654e-04, 1.844131632530854727e-04, 1.838418249623734689e-04, 1.832702255640322405e-04, 1.826983660041748756e-04, 1.821262472293489561e-04, 1.815538701864252377e-04, 1.809812358226184934e-04, 1.804083450854987350e-04, 1.798351989230300547e-04, 1.792617982834638583e-04, 1.786881441154930929e-04, 1.781142373680713478e-04, 1.775400789905634774e-04, 1.769656699326427915e-04, 1.763910111443150975e-04, 1.758161035759936192e-04, 1.752409481783947771e-04, 1.746655459025621502e-04, 1.740898976998781844e-04, 1.735140045220763907e-04, 1.729378673212629742e-04, 1.723614870498142693e-04, 1.717848646604528231e-04, 1.712080011062698114e-04, 1.706308973406334508e-04, 1.700535543172799905e-04, 1.694759729902581193e-04, 1.688981543139539843e-04, 1.683200992430380102e-04, 1.677418087325539397e-04, 1.671632837378007907e-04, 1.665845252144863798e-04, 1.660055341185435226e-04, 1.654263114062872971e-04, 1.648468580343048079e-04, 1.642671749594978490e-04, 1.636872631390894636e-04, 1.631071235306508324e-04, 1.625267570919962953e-04, 1.619461647812584870e-04, 1.613653475569125687e-04, 1.607843063776726326e-04, 1.602030422026430839e-04, 1.596215559911373075e-04, 1.590398487028318690e-04, 1.584579212976476863e-04, 1.578757747358507785e-04, 1.572934099779374224e-04, 1.567108279847843953e-04, 1.561280297174691065e-04, 1.555450161374201379e-04, 1.549617882063163328e-04, 1.543783468861067445e-04, 1.537946931390894582e-04, 1.532108279278059895e-04, 1.526267522150643783e-04, 1.520424669639528761e-04, 1.514579731378743431e-04, 1.508732717004435467e-04, 1.502883636156394920e-04, 1.497032498476232217e-04, 1.491179313608909053e-04, 1.485324091201696746e-04, 1.479466840904416656e-04, 1.473607572370192354e-04, 1.467746295254403633e-04, 1.461883019214938048e-04, 1.456017753912286863e-04, 1.450150509009683834e-04, 1.444281294173314185e-04, 1.438410119071163458e-04, 1.432536993374410983e-04, 1.426661926756383624e-04, 1.420784928892927931e-04, 1.414906009462521812e-04, 1.409025178146509807e-04, 1.403142444628076616e-04, 1.397257818592969453e-04, 1.391371309729782103e-04, 1.385482927728871265e-04, 1.379592682283915090e-04, 1.373700583090067600e-04, 1.367806639845519669e-04, 1.361910862250414274e-04, 1.356013260007251449e-04, 1.350113842820981254e-04, 1.344212620399260459e-04, 1.338309602451381625e-04, 1.332404798689061046e-04, 1.326498218826659115e-04, 1.320589872580133796e-04, 1.314679769668583716e-04, 1.308767919812424808e-04, 1.302854332734906838e-04, 1.296939018160952767e-04, 1.291021985818169228e-04, 1.285103245435666912e-04, 1.279182806745609083e-04, 1.273260679481350000e-04, 1.267336873379023275e-04, 1.261411398176437340e-04, 1.255484263613357884e-04, 1.249555479432248092e-04, 1.243625055377228891e-04, 1.237693001194310164e-04, 1.231759326631507291e-04, 1.225824041438961778e-04, 1.219887155369189937e-04, 1.213948678175996249e-04, 1.208008619615281906e-04, 1.202066989445255553e-04, 1.196123797425516325e-04, 1.190179053317951566e-04, 1.184232766886204755e-04, 1.178284947895911052e-04, 1.172335606114154245e-04, 1.166384751310382497e-04, 1.160432393255201222e-04, 1.154478541721938942e-04, 1.148523206484782866e-04, 1.142566397320346922e-04, 1.136608124006609097e-04, 1.130648396323275461e-04, 1.124687224051905394e-04, 1.118724616976161354e-04, 1.112760584880734033e-04, 1.106795137552118503e-04, 1.100828284778854101e-04, 1.094860036350471397e-04, 1.088890402059043412e-04, 1.082919391697327436e-04, 1.076947015060331292e-04, 1.070973281944247022e-04, 1.064998202146822363e-04, 1.059021785467485836e-04, 1.053044041707582561e-04, 1.047064980669186376e-04, 1.041084612156516757e-04, 1.035102945974889578e-04, 1.029119991930937207e-04, 1.023135759833413523e-04, 1.017150259492100365e-04, 1.011163500718064757e-04, 1.005175493323774515e-04, 9.991862471232101852e-05, 9.931957719321186158e-05, 9.872040775669372920e-05, 9.812111738455713016e-05, 9.752170705876375527e-05, 9.692217776136662576e-05, 9.632253047453357992e-05, 9.572276618062629781e-05, 9.512288586209203015e-05, 9.452289050148868406e-05, 9.392278108149634266e-05, 9.332255858492887965e-05, 9.272222399475984458e-05, 9.212177829401325664e-05, 9.152122246584189756e-05, 9.092055749355382036e-05, 9.031978436051557081e-05, 8.971890405023175423e-05, 8.911791754635629771e-05, 8.851682583258442289e-05, 8.791562989273100665e-05, 8.731433071075504347e-05, 8.671292927065248556e-05, 8.611142655661385877e-05, 8.550982355283605861e-05, 8.490812124368077936e-05, 8.430632061356650036e-05, 8.370442264700663642e-05, 8.310242832862107100e-05, 8.250033864316194665e-05, 8.189815457540468920e-05, 8.129587711022609735e-05, 8.069350723263083792e-05, 8.009104592764160256e-05, 7.948849418045830935e-05, 7.888585297627002078e-05, 7.828312330041230216e-05, 7.768030613824695649e-05, 7.707740247526597235e-05, 7.647441329697048627e-05, 7.587133958902925245e-05, 7.526818233709011352e-05, 7.466494252693842962e-05, 7.406162114438852263e-05, 7.345821917530968349e-05, 7.285473760570302857e-05, 7.225117742159526139e-05, 7.164753960906153579e-05, 7.104382515423891353e-05, 7.044003504333694885e-05, 6.983617026266383126e-05, 6.923223179851682697e-05, 6.862822063726153399e-05, 6.802413776535729320e-05, 6.741998416927435524e-05, 6.681576083551937285e-05, 6.621146875071522522e-05, 6.560710890149051074e-05, 6.500268227450619121e-05, 6.439818985646633904e-05, 6.379363263413037513e-05, 6.318901159433876452e-05, 6.258432772388972901e-05, 6.197958200968606171e-05, 6.137477543862558194e-05, 6.076990899763992936e-05, 6.016498367370681544e-05, 5.956000045387460098e-05, 5.895496032515390976e-05, 5.834986427459587407e-05, 5.774471328931819622e-05, 5.713950835639539338e-05, 5.653425046301893426e-05, 5.592894059630688707e-05, 5.532357974346450345e-05, 5.471816889167419224e-05, 5.411270902813450335e-05, 5.350720114007253506e-05, 5.290164621476837608e-05, 5.229604523944649550e-05, 5.169039920135424588e-05, 5.108470908778793828e-05, 5.047897588598314133e-05, 4.987320058327436389e-05, 4.926738416690575333e-05, 4.866152762419005315e-05, 4.805563194238681319e-05, 4.744969810878057413e-05, 4.684372711069354590e-05, 4.623771993537621847e-05, 4.563167757008571577e-05, 4.502560100211197916e-05, 4.441949121869546974e-05, 4.381334920705142057e-05, 4.320717595445042002e-05, 4.260097244810786378e-05, 4.199473967521021289e-05, 4.138847862292608650e-05, 4.078219027841879118e-05, 4.017587562887130496e-05, 3.956953566137688818e-05, 3.896317136301845379e-05, 3.835678372089374122e-05, 3.775037372201959487e-05, 3.714394235342463629e-05, 3.653749060209351583e-05, 3.593101945499270315e-05, 3.532452989901452203e-05, 3.471802292107024944e-05, 3.411149950796691635e-05, 3.350496064656781700e-05, 3.289840732360173006e-05, 3.229184052582348213e-05, 3.168526123990421975e-05, 3.107867045247046097e-05, 3.047206915011580478e-05, 2.986545831942663342e-05, 2.925883894687212011e-05, 2.865221201888369767e-05, 2.804557852188089304e-05, 2.743893944216121633e-05, 2.683229576606071092e-05, 2.622564847976360474e-05, 2.561899856946226744e-05, 2.501234702124805148e-05, 2.440569482113629323e-05, 2.379904295514606615e-05, 2.319239240919034436e-05, 2.258574416908804404e-05, 2.197909922064329898e-05, 2.137245854954939681e-05, 2.076582314141431205e-05, 2.015919398184001202e-05, 1.955257205631271192e-05, 1.894595835022861447e-05, 1.833935384890544984e-05, 1.773275953759458149e-05, 1.712617640150661027e-05, 1.651960542570116188e-05, 1.591304759516686709e-05, 1.530650389484667449e-05, 1.469997530955493615e-05, 1.409346282400317941e-05, 1.348696742287929769e-05, 1.288049009073808165e-05, 1.227403181202648621e-05, 1.166759357109560585e-05, 1.106117635221262460e-05, 1.045478113958623883e-05, 9.848408917256890339e-06, 9.242060669176333141e-06, 8.635737379233063158e-06, 8.029440031156035956e-06, 7.423169608594299708e-06, 6.816927095128824858e-06, 6.210713474162763371e-06, 5.604529729001043580e-06, 4.998376842875788797e-06, 4.392255798836498638e-06, 3.786167579910796827e-06, 3.180113168913521821e-06, 2.574093548607339507e-06, 1.968109701593053704e-06, 1.362162610348542578e-06, 7.562532572406948094e-07, 1.503826245508483855e-07, -4.554483056349211910e-07, -1.061238551346301245e-06, -1.666987130703296107e-06, -2.272693062025919096e-06, -2.878355363673650188e-06, -3.483973054236165805e-06, -4.089545152372808712e-06, -4.695070676935743645e-06, -5.300548646877000945e-06, -5.905978081304117309e-06, -6.511357999454615958e-06, -7.116687420751717687e-06, -7.721965364711376456e-06, -8.327190851038338861e-06, -8.932362899600684858e-06, -9.537480530350601389e-06, -1.014254276343371061e-05, -1.074754861916386221e-05, -1.135249711801111230e-05, -1.195738728058980226e-05, -1.256221812763315288e-05, -1.316698868010295168e-05, -1.377169795910993356e-05, -1.437634498588852393e-05, -1.498092878187933975e-05, -1.558544836870383611e-05, -1.618990276808475123e-05, -1.679429100195590902e-05, -1.739861209245009127e-05, -1.800286506181964354e-05, -1.860704893255970153e-05, -1.921116272724766140e-05, -1.981520546873372150e-05, -2.041917617998043405e-05, -2.102307388417254830e-05, -2.162689760467770151e-05, -2.223064636503474336e-05, -2.283431918892832503e-05, -2.343791510029831550e-05, -2.404143312326045490e-05, -2.464487228208106547e-05, -2.524823160128625787e-05, -2.585151010550196048e-05, -2.645470681964416984e-05, -2.705782076875866486e-05, -2.766085097813060612e-05, -2.826379647325874542e-05, -2.886665627977666527e-05, -2.946942942356192078e-05, -3.007211493071042875e-05, -3.067471182752488706e-05, -3.127721914047585180e-05, -3.187963589631104857e-05, -3.248196112190875447e-05, -3.308419384440053655e-05, -3.368633309114594924e-05, -3.428837788972072335e-05, -3.489032726790466363e-05, -3.549218025365646819e-05, -3.609393587522291444e-05, -3.669559316105975297e-05, -3.729715113980593068e-05, -3.789860884036666772e-05, -3.849996529188751799e-05, -3.910121952367524948e-05, -3.970237056530728770e-05, -4.030341744660618949e-05, -4.090435919762787945e-05, -4.150519484864946616e-05, -4.210592343014452922e-05, -4.270654397289147845e-05, -4.330705550789496275e-05, -4.390745706636036430e-05, -4.450774767978948616e-05, -4.510792637988807657e-05, -4.570799219862118430e-05, -4.630794416818741557e-05, -4.690778132107483150e-05, -4.750750268996821490e-05, -4.810710730787146993e-05, -4.870659420794800726e-05, -4.930596242371011344e-05, -4.990521098886032542e-05, -5.050433893739872588e-05, -5.110334530359935507e-05, -5.170222912193000694e-05, -5.230098942716199782e-05, -5.289962525434407106e-05, -5.349813563879125009e-05, -5.409651961604584094e-05, -5.469477622198601520e-05, -5.529290449266710983e-05, -5.589090346451024453e-05, -5.648877217414318791e-05, -5.708650965850940793e-05, -5.768411495484230856e-05, -5.828158710058718749e-05, -5.887892513350903302e-05, -5.947612809168104499e-05, -6.007319501340603694e-05, -6.067012493731156129e-05, -6.126691690232471520e-05, -6.186356994759294636e-05, -6.246008311259363874e-05, -6.305645543710788165e-05, -6.365268596120887560e-05, -6.424877372525073784e-05, -6.484471776984254937e-05, -6.544051713595735781e-05, -6.603617086485256992e-05, -6.663167799804642442e-05, -6.722703757739835841e-05, -6.782224864508417923e-05, -6.841731024351714802e-05, -6.901222141545763325e-05, -6.960698120398624961e-05, -7.020158865249292112e-05, -7.079604280466511752e-05, -7.139034270446264661e-05, -7.198448739622541033e-05, -7.257847592459589793e-05, -7.317230733449298888e-05, -7.376598067120734912e-05, -7.435949498032301617e-05, -7.495284930770578456e-05, -7.554604269961010823e-05, -7.613907420260304366e-05, -7.673194286353675190e-05, -7.732464772965754211e-05, -7.791718784844809309e-05, -7.850956226781478984e-05, -7.910177003592933521e-05, -7.969381020133735978e-05, -8.028568181293271281e-05, -8.087738391987976552e-05, -8.146891557172122151e-05, -8.206027581835205519e-05, -8.265146371000921190e-05, -8.324247829723244109e-05, -8.383331863097206603e-05, -8.442398376243185579e-05, -8.501447274325525053e-05, -8.560478462536864007e-05, -8.619491846110191363e-05, -8.678487330309660078e-05, -8.737464820436170786e-05, -8.796424221824742610e-05, -8.855365439849999221e-05, -8.914288379917187583e-05, -8.973192947471305574e-05, -9.032079047994924102e-05, -9.090946587000165357e-05, -9.149795470039558392e-05, -9.208625602703533254e-05, -9.267436890619144341e-05, -9.326229239449079713e-05, -9.385002554889058999e-05, -9.443756742678501958e-05, -9.502491708592888909e-05, -9.561207358441155941e-05, -9.619903598073864374e-05, -9.678580333380564795e-05, -9.737237470282244232e-05, -9.795874914741818521e-05, -9.854492572763109092e-05, -9.913090350383002829e-05, -9.971668153683508403e-05, -1.003022588877607057e-04, -1.008876346182016425e-04, -1.014728077900763455e-04, -1.020577774657346025e-04, -1.026425427079309606e-04, -1.032271025797489277e-04, -1.038114561447075492e-04, -1.043956024667354955e-04, -1.049795406101599357e-04, -1.055632696396694575e-04, -1.061467886204195063e-04, -1.067300966178770321e-04, -1.073131926980048449e-04, -1.078960759271072647e-04, -1.084787453719350726e-04, -1.090612000996606280e-04, -1.096434391778022458e-04, -1.102254616743291875e-04, -1.108072666576379311e-04, -1.113888531965391603e-04, -1.119702203602213628e-04, -1.125513672183559840e-04, -1.131322928409561558e-04, -1.137129962984952537e-04, -1.142934766618814319e-04, -1.148737330024471472e-04, -1.154537643919375714e-04, -1.160335699024856143e-04, -1.166131486067170501e-04, -1.171924995776753422e-04, -1.177716218887962996e-04, -1.183505146139867222e-04, -1.189291768276012261e-04, -1.195076076043657530e-04, -1.200858060194813016e-04, -1.206637711486024055e-04, -1.212415020678214402e-04, -1.218189978536615887e-04, -1.223962575830492760e-04, -1.229732803334202852e-04, -1.235500651826441888e-04, -1.241266112089987883e-04, -1.247029174912759328e-04, -1.252789831086272368e-04, -1.258548071407463885e-04, -1.264303886677168199e-04, -1.270057267701280143e-04, -1.275808205289739980e-04, -1.281556690257716537e-04, -1.287302713424064659e-04, -1.293046265613154795e-04, -1.298787337653326663e-04, -1.304525920377952843e-04, -1.310262004625177763e-04, -1.315995581237169323e-04, -1.321726641061173556e-04, -1.327455174949244662e-04, -1.333181173758160435e-04, -1.338904628349023827e-04, -1.344625529588326814e-04, -1.350343868346417608e-04, -1.356059635499303688e-04, -1.361772821927143126e-04, -1.367483418515398998e-04, -1.373191416153957383e-04, -1.378896805737664312e-04, -1.384599578166075321e-04, -1.390299724343984267e-04, -1.395997235180548922e-04, -1.401692101590186251e-04, -1.407384314492342021e-04, -1.413073864810739447e-04, -1.418760743474405388e-04, -1.424444941417446736e-04, -1.430126449578914341e-04, -1.435805258902712216e-04, -1.441481360337334885e-04, -1.447154744836923125e-04, -1.452825403360504756e-04, -1.458493326871748523e-04, -1.464158506339999785e-04, -1.469820932738776181e-04, -1.475480597047554938e-04, -1.481137490250259868e-04, -1.486791603336297320e-04, -1.492442927300189996e-04, -1.498091453141458770e-04, -1.503737171864390123e-04, -1.509380074479186218e-04, -1.515020152000585247e-04, -1.520657395448891697e-04, -1.526291795849733757e-04, -1.531923344233328233e-04, -1.537552031635496441e-04, -1.543177849097421620e-04, -1.548800787665552436e-04, -1.554420838391227307e-04, -1.560037992331699517e-04, -1.565652240548635324e-04, -1.571263574109905872e-04, -1.576871984088070941e-04, -1.582477461561414896e-04, -1.588079997613700035e-04, -1.593679583333434751e-04, -1.599276209814885091e-04, -1.604869868157845179e-04, -1.610460549467509009e-04, -1.616048244854141657e-04, -1.621632945434055338e-04, -1.627214642328158743e-04, -1.632793326663687153e-04, -1.638368989572739850e-04, -1.643941622193425037e-04, -1.649511215669092763e-04, -1.655077761148260112e-04, -1.660641249785591055e-04, -1.666201672741200387e-04, -1.671759021180366418e-04, -1.677313286274349812e-04, -1.682864459200112783e-04, -1.688412531139610838e-04, -1.693957493280798645e-04, -1.699499336817384190e-04, -1.705038052948737979e-04, -1.710573632879759133e-04, -1.716106067820656112e-04, -1.721635348987953396e-04, -1.727161467603759376e-04, -1.732684414895528918e-04, -1.738204182097070579e-04, -1.743720760447071017e-04, -1.749234141190845429e-04, -1.754744315578883097e-04, -1.760251274867928877e-04, -1.765755010320059189e-04, -1.771255513203773540e-04, -1.776752774792553073e-04, -1.782246786366563579e-04, -1.787737539211241972e-04, -1.793225024618248483e-04, -1.798709233885249824e-04, -1.804190158315209307e-04, -1.809667789217373466e-04, -1.815142117907026214e-04, -1.820613135705410510e-04, -1.826080833939342928e-04, -1.831545203942228192e-04, -1.837006237052588194e-04, -1.842463924615810262e-04, -1.847918257982666956e-04, -1.853369228510334137e-04, -1.858816827562136988e-04, -1.864261046506840945e-04, -1.869701876719651067e-04, -1.875139309582087076e-04, -1.880573336481272662e-04, -1.886003948810811794e-04, -1.891431137970526609e-04, -1.896854895365790363e-04, -1.902275212408473118e-04, -1.907692080516727078e-04, -1.913105491114875452e-04, -1.918515435633315152e-04, -1.923921905508270945e-04, -1.929324892182783437e-04, -1.934724387106017080e-04, -1.940120381733001042e-04, -1.945512867525624786e-04, -1.950901835951198240e-04, -1.956287278484162401e-04, -1.961669186604645993e-04, -1.967047551799441243e-04, -1.972422365561680524e-04, -1.977793619390692966e-04, -1.983161304791808486e-04, -1.988525413277299691e-04, -1.993885936365711296e-04, -1.999242865581622145e-04, -2.004596192456590631e-04, -2.009945908527765025e-04, -2.015292005339556667e-04, -2.020634474442229692e-04, -2.025973307392967882e-04, -2.031308495754945783e-04, -2.036640031098437562e-04, -2.041967904999348465e-04, -2.047292109040942489e-04, -2.052612634812412318e-04, -2.057929473909829356e-04, -2.063242617935946949e-04, -2.068552058499468539e-04, -2.073857787216046224e-04, -2.079159795708028675e-04, -2.084458075604357869e-04, -2.089752618540253039e-04, -2.095043416158137402e-04, -2.100330460106247126e-04, -2.105613742040312653e-04, -2.110893253622122948e-04, -2.116168986520629487e-04, -2.121440932411120905e-04, -2.126709082975707912e-04, -2.131973429903099128e-04, -2.137233964889096024e-04, -2.142490679635768657e-04, -2.147743565852536078e-04, -2.152992615254769064e-04, -2.158237819565428622e-04, -2.163479170513708837e-04, -2.168716659835948687e-04, -2.173950279275318706e-04, -2.179180020581707416e-04, -2.184405875511500966e-04, -2.189627835828518519e-04, -2.194845893303369870e-04, -2.200060039713171655e-04, -2.205270266842533156e-04, -2.210476566482170427e-04, -2.215678930430527442e-04, -2.220877350492424099e-04, -2.226071818479965863e-04, -2.231262326212219587e-04, -2.236448865515130308e-04, -2.241631428221284880e-04, -2.246810006170946313e-04, -2.251984591210845152e-04, -2.257155175195069065e-04, -2.262321749984870132e-04, -2.267484307447975556e-04, -2.272642839459529569e-04, -2.277797337901864662e-04, -2.282947794664420544e-04, -2.288094201643373884e-04, -2.293236550742623581e-04, -2.298374833872373713e-04, -2.303509042950784231e-04, -2.308639169902605953e-04, -2.313765206660075300e-04, -2.318887145162761693e-04, -2.324004977356830027e-04, -2.329118695196004255e-04, -2.334228290641345396e-04, -2.339333755661139862e-04, -2.344435082230583419e-04, -2.349532262332698412e-04, -2.354625287956970119e-04, -2.359714151100979825e-04, -2.364798843769013522e-04, -2.369879357973141230e-04, -2.374955685732519045e-04, -2.380027819073286409e-04, -2.385095750029498523e-04, -2.390159470642466341e-04, -2.395218972960515334e-04, -2.400274249039926306e-04, -2.405325290943588815e-04, -2.410372090742579230e-04, -2.415414640514838005e-04, -2.420452932346069293e-04, -2.425486958329427071e-04, -2.430516710565407265e-04, -2.435542181161637679e-04, -2.440563362233788731e-04, -2.445580245904925912e-04, -2.450592824305247676e-04, -2.455601089573078845e-04, -2.460605033853453284e-04, -2.465604649299755384e-04, -2.470599928072344208e-04, -2.475590862339606250e-04, -2.480577444277070730e-04, -2.485559666068401638e-04, -2.490537519904091265e-04, -2.495510997983017669e-04, -2.500480092511150128e-04, -2.505444795702425182e-04, -2.510405099778534126e-04, -2.515360996968293633e-04, -2.520312479508507149e-04, -2.525259539643808773e-04, -2.530202169626511463e-04, -2.535140361716313223e-04, -2.540074108181201865e-04, -2.545003401296108973e-04, -2.549928233344512358e-04, -2.554848596617086760e-04, -2.559764483412601036e-04, -2.564675886037748472e-04, -2.569582796806438264e-04, -2.574485208040737144e-04, -2.579383112070760963e-04, -2.584276501233990012e-04, -2.589165367876334798e-04, -2.594049704350769405e-04, -2.598929503018910093e-04, -2.603804756249725638e-04, -2.608675456420381385e-04, -2.613541595915947597e-04, -2.618403167129325186e-04, -2.623260162460993639e-04, -2.628112574319938009e-04, -2.632960395122962613e-04, -2.637803617294537622e-04, -2.642642233267632266e-04, -2.647476235482446321e-04, -2.652305616387946418e-04, -2.657130368440555252e-04, -2.661950484105065013e-04, -2.666765955854274723e-04, -2.671576776168956631e-04, -2.676382937537570518e-04, -2.681184432457229725e-04, -2.685981253433002386e-04, -2.690773392977718979e-04, -2.695560843612868963e-04, -2.700343597867406529e-04, -2.705121648278732346e-04, -2.709894987392491897e-04, -2.714663607762491456e-04, -2.719427501950372281e-04, -2.724186662526494247e-04, -2.728941082068647261e-04, -2.733690753163551808e-04, -2.738435668405630541e-04, -2.743175820397830114e-04, -2.747911201751444994e-04, -2.752641805085463147e-04, -2.757367623027466466e-04, -2.762088648213398756e-04, -2.766804873287483329e-04, -2.771516290902138442e-04, -2.776222893717737142e-04, -2.780924674403528296e-04, -2.785621625636937283e-04, -2.790313740103448356e-04, -2.795001010497288234e-04, -2.799683429520737630e-04, -2.804360989884532407e-04, -2.809033684307712334e-04, -2.813701505517997303e-04, -2.818364446251095065e-04, -2.823022499251673758e-04, -2.827675657272059242e-04, -2.832323913073762738e-04, -2.836967259426232367e-04, -2.841605689107661969e-04, -2.846239194904739566e-04, -2.850867769612510749e-04, -2.855491406034209008e-04, -2.860110096982094899e-04, -2.864723835276832085e-04, -2.869332613747304110e-04, -2.873936425231451400e-04, -2.878535262575024432e-04, -2.883129118633062584e-04, -2.887717986268674951e-04, -2.892301858353935897e-04, -2.896880727769112558e-04, -2.901454587403607017e-04, -2.906023430154671522e-04, -2.910587248928953475e-04, -2.915146036641188968e-04, -2.919699786215078276e-04, -2.924248490583079862e-04, -2.928792142685815686e-04, -2.933330735472876229e-04, -2.937864261902667622e-04, -2.942392714942291838e-04, -2.946916087567234984e-04, -2.951434372762251472e-04, -2.955947563520080318e-04, -2.960455652842940806e-04, -2.964958633741294320e-04, -2.969456499234677019e-04, -2.973949242351488415e-04, -2.978436856128423250e-04, -2.982919333611270553e-04, -2.987396667854743423e-04, -2.991868851922348379e-04, -2.996335878886350669e-04, -3.000797741827528151e-04, -3.005254433836140036e-04, -3.009705948010787382e-04, -3.014152277459254984e-04, -3.018593415298197495e-04, -3.023029354653086298e-04, -3.027460088657974780e-04, -3.031885610456350514e-04, -3.036305913200518887e-04, -3.040720990051412826e-04, -3.045130834179433595e-04, -3.049535438763215892e-04, -3.053934796991093683e-04, -3.058328902059838741e-04, -3.062717747175548060e-04, -3.067101325553308840e-04, -3.071479630417088980e-04, -3.075852654999632453e-04, -3.080220392543166750e-04, -3.084582836298877038e-04, -3.088939979526711551e-04, -3.093291815496155162e-04, -3.097638337485086098e-04, -3.101979538781161005e-04, -3.106315412680620155e-04, -3.110645952489224202e-04, -3.114971151521431811e-04, -3.119291003101322857e-04, -3.123605500561432366e-04, -3.127914637244110646e-04, -3.132218406500399512e-04, -3.136516801690771169e-04, -3.140809816184980761e-04, -3.145097443361490118e-04, -3.149379676608223444e-04, -3.153656509322437756e-04, -3.157927934910593863e-04, -3.162193946788266919e-04, -3.166454538380000057e-04, -3.170709703120049776e-04, -3.174959434451843842e-04, -3.179203725827774748e-04, -3.183442570709807949e-04, -3.187675962569287789e-04, -3.191903894886374804e-04, -3.196126361150818758e-04, -3.200343354861894668e-04, -3.204554869527802708e-04, -3.208760898666552911e-04, -3.212961435804850070e-04, -3.217156474479416464e-04, -3.221346008235857240e-04, -3.225530030629431282e-04, -3.229708535224815936e-04, -3.233881515595958480e-04, -3.238048965325925955e-04, -3.242210878007696639e-04, -3.246367247243549638e-04, -3.250518066644940201e-04, -3.254663329833223972e-04, -3.258803030438565734e-04, -3.262937162101229075e-04, -3.267065718470507358e-04, -3.271188693205444179e-04, -3.275306079974576404e-04, -3.279417872455850152e-04, -3.283524064336434847e-04, -3.287624649313510353e-04, -3.291719621093687465e-04, -3.295808973392811672e-04, -3.299892699936789317e-04, -3.303970794460487671e-04, -3.308043250708647296e-04, -3.312110062435665741e-04, -3.316171223405541164e-04, -3.320226727391775842e-04, -3.324276568177189682e-04, -3.328320739554699228e-04, -3.332359235326750073e-04, -3.336392049305129297e-04, -3.340419175311572079e-04, -3.344440607177539973e-04, -3.348456338743721096e-04, -3.352466363860729433e-04, -3.356470676388963355e-04, -3.360469270198525381e-04, -3.364462139169102921e-04, -3.368449277189831123e-04, -3.372430678160036094e-04, -3.376406335988668943e-04, -3.380376244594142615e-04, -3.384340397904995416e-04, -3.388298789859230738e-04, -3.392251414404735019e-04, -3.396198265499055478e-04, -3.400139337109811576e-04, -3.404074623214029308e-04, -3.408004117799039471e-04, -3.411927814861306181e-04, -3.415845708407768029e-04, -3.419757792454735453e-04, -3.423664061028638831e-04, -3.427564508165734667e-04, -3.431459127912071978e-04, -3.435347914323297683e-04, -3.439230861465359702e-04, -3.443107963414016363e-04, -3.446979214254653704e-04, -3.450844608082992383e-04, -3.454704139004064725e-04, -3.458557801133420903e-04, -3.462405588596117372e-04, -3.466247495527477983e-04, -3.470083516072465144e-04, -3.473913644386381842e-04, -3.477737874633909953e-04, -3.481556200990335937e-04, -3.485368617640448741e-04, -3.489175118779329647e-04, -3.492975698612132713e-04, -3.496770351353571953e-04, -3.500559071228662384e-04, -3.504341852472518367e-04, -3.508118689330292348e-04, -3.511889576057102219e-04, -3.515654506917835075e-04, -3.519413476187896938e-04, -3.523166478152673373e-04, -3.526913507107358719e-04, -3.530654557357495484e-04, -3.534389623218810628e-04, -3.538118699016708701e-04, -3.541841779086950552e-04, -3.545558857775519429e-04, -3.549269929438530992e-04, -3.552974988442136276e-04, -3.556674029162389420e-04, -3.560367045986010943e-04, -3.564054033309449368e-04, -3.567734985539597337e-04, -3.571409897093503214e-04, -3.575078762398356449e-04, -3.578741575891243630e-04, -3.582398332019923149e-04, -3.586049025242250572e-04, -3.589693650026074012e-04, -3.593332200849881945e-04, -3.596964672201814414e-04, -3.600591058580830716e-04, -3.604211354495766143e-04, -3.607825554465942395e-04, -3.611433653020952898e-04, -3.615035644700588004e-04, -3.618631524054700000e-04, -3.622221285643809725e-04, -3.625804924038701074e-04, -3.629382433820213917e-04, -3.632953809579903296e-04, -3.636519045919087492e-04, -3.640078137450007581e-04, -3.643631078794831593e-04, -3.647177864586393400e-04, -3.650718489467746561e-04, -3.654252948092058615e-04, -3.657781235123301177e-04, -3.661303345235714340e-04, -3.664819273113713435e-04, -3.668329013452362283e-04, -3.671832560957191596e-04, -3.675329910343778299e-04, -3.678821056338313117e-04, -3.682305993677562625e-04, -3.685784717108700655e-04, -3.689257221389274683e-04, -3.692723501287039950e-04, -3.696183551580630583e-04, -3.699637367059079290e-04, -3.703084942521626542e-04, -3.706526272778348872e-04, -3.709961352649580445e-04, -3.713390176966214476e-04, -3.716812740569593173e-04, -3.720229038311816745e-04, -3.723639065055186657e-04, -3.727042815672933131e-04, -3.730440285048284362e-04, -3.733831468075578903e-04, -3.737216359659267665e-04, -3.740594954714671766e-04, -3.743967248167630714e-04, -3.747333234954520836e-04, -3.750692910022034639e-04, -3.754046268327890972e-04, -3.757393304840299418e-04, -3.760734014537866522e-04, -3.764068392410184504e-04, -3.767396433456957397e-04, -3.770718132689029412e-04, -3.774033485127514863e-04, -3.777342485804392313e-04, -3.780645129762409706e-04, -3.783941412054543890e-04, -3.787231327744708604e-04, -3.790514871907614070e-04, -3.793792039628371263e-04, -3.797062826002997149e-04, -3.800327226138305718e-04, -3.803585235151401667e-04, -3.806836848170355855e-04, -3.810082060334029123e-04, -3.813320866791999105e-04, -3.816553262704515783e-04, -3.819779243242335054e-04, -3.822998803587339444e-04, -3.826211938932092493e-04, -3.829418644479684803e-04, -3.832618915444235483e-04, -3.835812747050668797e-04, -3.839000134534355300e-04, -3.842181073141655019e-04, -3.845355558129822044e-04, -3.848523584766885266e-04, -3.851685148331650006e-04, -3.854840244113501768e-04, -3.857988867413007436e-04, -3.861131013541497310e-04, -3.864266677820933919e-04, -3.867395855584415633e-04, -3.870518542175736473e-04, -3.873634732949343294e-04, -3.876744423270903897e-04, -3.879847608516907506e-04, -3.882944284074489128e-04, -3.886034445342022607e-04, -3.889118087728285792e-04, -3.892195206653474267e-04, -3.895265797548299832e-04, -3.898329855854642113e-04, -3.901387377025249863e-04, -3.904438356523783787e-04, -3.907482789824593739e-04, -3.910520672413335635e-04, -3.913551999786524216e-04, -3.916576767451442520e-04, -3.919594970926665550e-04, -3.922606605741264471e-04, -3.925611667435750947e-04, -3.928610151561293270e-04, -3.931602053680306155e-04, -3.934587369365989966e-04, -3.937566094202617478e-04, -3.940538223785401066e-04, -3.943503753720777852e-04, -3.946462679625928859e-04, -3.949414997129250095e-04, -3.952360701870237633e-04, -3.955299789499117894e-04, -3.958232255677319273e-04, -3.961158096077429321e-04, -3.964077306383070594e-04, -3.966989882288865423e-04, -3.969895819500314483e-04, -3.972795113734309074e-04, -3.975687760718774966e-04, -3.978573756192516813e-04, -3.981453095905636654e-04, -3.984325775619405440e-04, -3.987191791105872173e-04, -3.990051138148377279e-04, -3.992903812541465330e-04, -3.995749810090815112e-04, -3.998589126613154516e-04, -4.001421757936142356e-04, -4.004247699898992878e-04, -4.007066948351746083e-04, -4.009879499155789232e-04, -4.012685348183650850e-04, -4.015484491318984457e-04, -4.018276924456426545e-04, -4.021062643502099098e-04, -4.023841644373237175e-04, -4.026613922998098375e-04, -4.029379475316462655e-04, -4.032138297278827855e-04, -4.034890384847396316e-04, -4.037635733995217284e-04, -4.040374340706792970e-04, -4.043106200977872561e-04, -4.045831310815163270e-04, -4.048549666236787880e-04, -4.051261263272140536e-04, -4.053966097961927951e-04, -4.056664166357875040e-04, -4.059355464523273531e-04, -4.062039988532290240e-04, -4.064717734470766675e-04, -4.067388698435515926e-04, -4.070052876534890245e-04, -4.072710264888392364e-04, -4.075360859626657060e-04, -4.078004656891893510e-04, -4.080641652837592556e-04, -4.083271843628339141e-04, -4.085895225440237854e-04, -4.088511794460769817e-04, -4.091121546888438695e-04, -4.093724478933274849e-04, -4.096320586816679750e-04, -4.098909866771425440e-04, -4.101492315041554786e-04, -4.104067927882287694e-04, -4.106636701560525808e-04, -4.109198632354431292e-04, -4.111753716553400817e-04, -4.114301950458423883e-04, -4.116843330381694138e-04, -4.119377852646850607e-04, -4.121905513588872529e-04, -4.124426309554278308e-04, -4.126940236900818139e-04, -4.129447291997881127e-04, -4.131947471225887593e-04, -4.134440770977072951e-04, -4.136927187654794360e-04, -4.139406717674054938e-04, -4.141879357461294509e-04, -4.144345103454114758e-04, -4.146803952101764412e-04, -4.149255899864963599e-04, -4.151700943215893549e-04, -4.154139078638022578e-04, -4.156570302626559285e-04, -4.158994611687799321e-04, -4.161412002339885414e-04, -4.163822471112182868e-04, -4.166226014545675298e-04, -4.168622629192908252e-04, -4.171012311617646601e-04, -4.173395058395288162e-04, -4.175770866112879422e-04, -4.178139731368715466e-04, -4.180501650772800760e-04, -4.182856620946701163e-04, -4.185204638523219744e-04, -4.187545700146845648e-04, -4.189879802473660850e-04, -4.192206942171291368e-04, -4.194527115918824322e-04, -4.196840320406745048e-04, -4.199146552337361025e-04, -4.201445808424450587e-04, -4.203738085393234742e-04, -4.206023379980615147e-04, -4.208301688935126949e-04, -4.210573009016609189e-04, -4.212837336996656367e-04, -4.215094669658456359e-04, -4.217345003796813181e-04, -4.219588336218068388e-04, -4.221824663739978559e-04, -4.224053983192163067e-04, -4.226276291415803220e-04, -4.228491585263527875e-04, -4.230699861599778811e-04, -4.232901117300520710e-04, -4.235095349253165261e-04, -4.237282554357017848e-04, -4.239462729522952837e-04, -4.241635871673333342e-04, -4.243801977742409667e-04, -4.245961044675726796e-04, -4.248113069430798218e-04, -4.250258048976565456e-04, -4.252395980293758020e-04, -4.254526860374825649e-04, -4.256650686223627678e-04, -4.258767454855818483e-04, -4.260877163298797056e-04, -4.262979808591619191e-04, -4.265075387784894481e-04, -4.267163897941108871e-04, -4.269245336134167663e-04, -4.271319699449937081e-04, -4.273386984985783478e-04, -4.275447189850918660e-04, -4.277500311166149973e-04, -4.279546346064030471e-04, -4.281585291688759162e-04, -4.283617145196408696e-04, -4.285641903754574622e-04, -4.287659564542702821e-04, -4.289670124752027703e-04, -4.291673581585266463e-04, -4.293669932257017526e-04, -4.295659173993655921e-04, -4.297641304033299669e-04, -4.299616319625775094e-04, -4.301584218032484543e-04, -4.303544996526830857e-04, -4.305498652393947401e-04, -4.307445182930569045e-04, -4.309384585445307555e-04, -4.311316857258624480e-04, -4.313241995702487468e-04, -4.315159998120815868e-04, -4.317070861869338159e-04, -4.318974584315445043e-04, -4.320871162838496810e-04, -4.322760594829316481e-04, -4.324642877690878270e-04, -4.326518008837669537e-04, -4.328385985696151569e-04, -4.330246805704611045e-04, -4.332100466312912299e-04, -4.333946964982873535e-04, -4.335786299188164371e-04, -4.337618466414270061e-04, -4.339443464158338078e-04, -4.341261289929580899e-04, -4.343071941248737695e-04, -4.344875415648629443e-04, -4.346671710673753980e-04, -4.348460823880536449e-04, -4.350242752837285933e-04, -4.352017495123918444e-04, -4.353785048332365661e-04, -4.355545410066423147e-04, -4.357298577941721616e-04, -4.359044549585632065e-04, -4.360783322637591035e-04, -4.362514894748643077e-04, -4.364239263581825646e-04, -4.365956426812068808e-04, -4.367666382126163802e-04, -4.369369127222754909e-04, -4.371064659812209344e-04, -4.372752977616998897e-04, -4.374434078371428882e-04, -4.376107959821556826e-04, -4.377774619725440745e-04, -4.379434055853084393e-04, -4.381086265986181396e-04, -4.382731247918391715e-04, -4.384368999455392070e-04, -4.385999518414707881e-04, -4.387622802625723573e-04, -4.389238849929624569e-04, -4.390847658179686231e-04, -4.392449225241090629e-04, -4.394043548990767705e-04, -4.395630627317782336e-04, -4.397210458122849689e-04, -4.398783039318861069e-04, -4.400348368830451313e-04, -4.401906444594334356e-04, -4.403457264558978510e-04, -4.405000826685008162e-04, -4.406537128944681731e-04, -4.408066169322472799e-04, -4.409587945814623963e-04, -4.411102456429397286e-04, -4.412609699187036889e-04, -4.414109672119593858e-04, -4.415602373271132778e-04, -4.417087800697705176e-04, -4.418565952467326747e-04, -4.420036826659858639e-04, -4.421500421367333795e-04, -4.422956734693436536e-04, -4.424405764754089118e-04, -4.425847509676997444e-04, -4.427281967601999642e-04, -4.428709136680745138e-04, -4.430129015076936434e-04, -4.431541600966193580e-04, -4.432946892536223857e-04, -4.434344887986578368e-04, -4.435735585528874847e-04, -4.437118983386749947e-04, -4.438495079795677645e-04, -4.439863873003169269e-04, -4.441225361268833134e-04, -4.442579542864193479e-04, -4.443926416072775578e-04, -4.445265979189991896e-04, -4.446598230523409346e-04, -4.447923168392569314e-04, -4.449240791128903087e-04, -4.450551097075995319e-04, -4.451854084589263101e-04, -4.453149752036286648e-04, -4.454438097796541499e-04, -4.455719120261579578e-04, -4.456992817834988540e-04, -4.458259188932307739e-04, -4.459518231981017935e-04, -4.460769945420775475e-04, -4.462014327703230153e-04, -4.463251377291898897e-04, -4.464481092662560963e-04, -4.465703472302791181e-04, -4.466918514712271129e-04, -4.468126218402772320e-04, -4.469326581898036945e-04, -4.470519603733833706e-04, -4.471705282458037509e-04, -4.472883616630380635e-04, -4.474054604822824623e-04, -4.475218245619237180e-04, -4.476374537615594924e-04, -4.477523479419942727e-04, -4.478665069652241928e-04, -4.479799306944554646e-04, -4.480926189941047575e-04, -4.482045717297885191e-04, -4.483157887683244386e-04, -4.484262699777452166e-04, -4.485360152272699417e-04, -4.486450243873455076e-04, -4.487532973296051416e-04, -4.488608339268988713e-04, -4.489676340532790504e-04, -4.490736975840009006e-04, -4.491790243955243547e-04, -4.492836143655237605e-04, -4.493874673728683652e-04, -4.494905832976408546e-04, -4.495929620211338846e-04, -4.496946034258313780e-04, -4.497955073954339493e-04, -4.498956738148485505e-04, -4.499951025701914528e-04, -4.500937935487804402e-04, -4.501917466391337254e-04, -4.502889617309905495e-04, -4.503854387152909076e-04, -4.504811774841786928e-04, -4.505761779310135141e-04, -4.506704399503464104e-04, -4.507639634379556831e-04, -4.508567482908098709e-04, -4.509487944070981070e-04, -4.510401016862083815e-04, -4.511306700287448339e-04, -4.512204993365057440e-04, -4.513095895125125343e-04, -4.513979404609821228e-04, -4.514855520873479024e-04, -4.515724242982542655e-04, -4.516585570015396365e-04, -4.517439501062586434e-04, -4.518286035226787571e-04, -4.519125171622730814e-04, -4.519956909377171000e-04, -4.520781247629046149e-04, -4.521598185529279593e-04, -4.522407722240959953e-04, -4.523209856939206159e-04, -4.524004588811261773e-04, -4.524791917056498244e-04, -4.525571840886259863e-04, -4.526344359524041034e-04, -4.527109472205443448e-04, -4.527867178178176621e-04, -4.528617476701965743e-04, -4.529360367048703459e-04, -4.530095848502304050e-04, -4.530823920358797757e-04, -4.531544581926337284e-04, -4.532257832525164731e-04, -4.532963671487581780e-04, -4.533662098157957825e-04, -4.534353111892824840e-04, -4.535036712060785762e-04, -4.535712898042504738e-04, -4.536381669230797652e-04, -4.537043025030480878e-04, -4.537696964858548552e-04, -4.538343488144061435e-04, -4.538982594328181612e-04, -4.539614282864176827e-04, -4.540238553217370069e-04, -4.540855404865167216e-04, -4.541464837297134018e-04, -4.542066850014905019e-04, -4.542661442532173804e-04, -4.543248614374811715e-04, -4.543828365080653723e-04, -4.544400694199744544e-04, -4.544965601294182508e-04, -4.545523085938150466e-04, -4.546073147717920120e-04, -4.546615786231926839e-04, -4.547151001090578293e-04, -4.547678791916491352e-04, -4.548199158344298017e-04, -4.548712100020756545e-04, -4.549217616604743866e-04, -4.549715707767174261e-04, -4.550206373191062795e-04, -4.550689612571559464e-04, -4.551165425615878181e-04, -4.551633812043327136e-04, -4.552094771585321804e-04, -4.552548303985309050e-04, -4.552994408998911331e-04, -4.553433086393768943e-04, -4.553864335949679341e-04, -4.554288157458452396e-04, -4.554704550724051346e-04, -4.555113515562489793e-04, -4.555515051801897297e-04, -4.555909159282445654e-04, -4.556295837856468153e-04, -4.556675087388292614e-04, -4.557046907754416483e-04, -4.557411298843342035e-04, -4.557768260555737920e-04, -4.558117792804305263e-04, -4.558459895513847053e-04, -4.558794568621222609e-04, -4.559121812075395824e-04, -4.559441625837416735e-04, -4.559754009880394418e-04, -4.560058964189557160e-04, -4.560356488762140788e-04, -4.560646583607535576e-04, -4.560929248747157229e-04, -4.561204484214507592e-04, -4.561472290055210437e-04, -4.561732666326897070e-04, -4.561985613099290367e-04, -4.562231130454221569e-04, -4.562469218485550601e-04, -4.562699877299235458e-04, -4.562923107013302929e-04, -4.563138907757806860e-04, -4.563347279674932777e-04, -4.563548222918893259e-04, -4.563741737655976731e-04, -4.563927824064514392e-04, -4.564106482334963160e-04, -4.564277712669763095e-04, -4.564441515283474554e-04, -4.564597890402683866e-04, -4.564746838266051576e-04, -4.564888359124303773e-04, -4.565022453240213658e-04, -4.565149120888596125e-04, -4.565268362356333779e-04, -4.565380177942373143e-04, -4.565484567957691048e-04, -4.565581532725327156e-04, -4.565671072580369328e-04, -4.565753187869947658e-04, -4.565827878953241520e-04, -4.565895146201480112e-04, -4.565954989997928360e-04, -4.566007410737885292e-04, -4.566052408828718732e-04, -4.566089984689825727e-04, -4.566120138752595143e-04, -4.566142871460532890e-04, -4.566158183269100916e-04, -4.566166074645857070e-04, -4.566166546070351564e-04, -4.566159598034175756e-04, -4.566145231040951856e-04, -4.566123445606345391e-04, -4.566094242257997442e-04, -4.566057621535631441e-04, -4.566013583990947999e-04, -4.565962130187681831e-04, -4.565903260701602837e-04, -4.565836976120473279e-04, -4.565763277044097650e-04, -4.565682164084264674e-04, -4.565593637864773864e-04, -4.565497699021483775e-04, -4.565394348202178642e-04, -4.565283586066715832e-04, -4.565165413286947785e-04, -4.565039830546690569e-04, -4.564906838541797607e-04, -4.564766437980113598e-04, -4.564618629581459878e-04, -4.564463414077673999e-04, -4.564300792212584246e-04, -4.564130764741997168e-04, -4.563953332433706798e-04, -4.563768496067526631e-04, -4.563576256435183378e-04, -4.563376614340470920e-04, -4.563169570599107192e-04, -4.562955126038807912e-04, -4.562733281499240499e-04, -4.562504037832091296e-04, -4.562267395900995097e-04, -4.562023356581534602e-04, -4.561771920761279451e-04, -4.561513089339767251e-04, -4.561246863228497609e-04, -4.560973243350908827e-04, -4.560692230642446202e-04, -4.560403826050469871e-04, -4.560108030534271075e-04, -4.559804845065152388e-04, -4.559494270626344775e-04, -4.559176308212990248e-04, -4.558850958832212337e-04, -4.558518223503055375e-04, -4.558178103256530032e-04, -4.557830599135552063e-04, -4.557475712194974287e-04, -4.557113443501620200e-04, -4.556743794134190191e-04, -4.556366765183335809e-04, -4.555982357751615854e-04, -4.555590572953553295e-04, -4.555191411915562633e-04, -4.554784875775930923e-04, -4.554370965684947340e-04, -4.553949682804723197e-04, -4.553521028309346448e-04, -4.553085003384772182e-04, -4.552641609228886047e-04, -4.552190847051422397e-04, -4.551732718074079213e-04, -4.551267223530389085e-04, -4.550794364665830885e-04, -4.550314142737717552e-04, -4.549826559015294754e-04, -4.549331614779656861e-04, -4.548829311323795196e-04, -4.548319649952576888e-04, -4.547802631982754635e-04, -4.547278258742926582e-04, -4.546746531573570482e-04, -4.546207451827025798e-04, -4.545661020867518645e-04, -4.545107240071117878e-04, -4.544546110825730214e-04, -4.543977634531150105e-04, -4.543401812598981673e-04, -4.542818646452718946e-04, -4.542228137527675922e-04, -4.541630287271017472e-04, -4.541025097141714343e-04, -4.540412568610654835e-04, -4.539792703160433918e-04, -4.539165502285612904e-04, -4.538530967492454354e-04, -4.537889100299141091e-04, -4.537239902235607066e-04, -4.536583374843620835e-04, -4.535919519676766590e-04, -4.535248338300479397e-04, -4.534569832291925388e-04, -4.533884003240099339e-04, -4.533190852745829554e-04, -4.532490382421674861e-04, -4.531782593892070437e-04, -4.531067488793163013e-04, -4.530345068772929592e-04, -4.529615335491105348e-04, -4.528878290619209649e-04, -4.528133935840527625e-04, -4.527382272850172511e-04, -4.526623303354928977e-04, -4.525857029073426601e-04, -4.525083451736037414e-04, -4.524302573084807593e-04, -4.523514394873684062e-04, -4.522718918868266747e-04, -4.521916146845929470e-04, -4.521106080595740798e-04, -4.520288721918581140e-04, -4.519464072627002340e-04, -4.518632134545361037e-04, -4.517792909509666332e-04, -4.516946399367697965e-04, -4.516092605978940184e-04, -4.515231531214552465e-04, -4.514363176957493658e-04, -4.513487545102375618e-04, -4.512604637555533136e-04, -4.511714456234960512e-04, -4.510817003070373356e-04, -4.509912280003243825e-04, -4.509000288986659676e-04, -4.508081031985370344e-04, -4.507154510975883437e-04, -4.506220727946324330e-04, -4.505279684896505558e-04, -4.504331383837968010e-04, -4.503375826793845952e-04, -4.502413015798917436e-04, -4.501442952899706220e-04, -4.500465640154263842e-04, -4.499481079632458016e-04, -4.498489273415641953e-04, -4.497490223596923241e-04, -4.496483932280970317e-04, -4.495470401584080226e-04, -4.494449633634221451e-04, -4.493421630571026323e-04, -4.492386394545644108e-04, -4.491343927720889005e-04, -4.490294232271205993e-04, -4.489237310382561863e-04, -4.488173164252684294e-04, -4.487101796090732790e-04, -4.486023208117570818e-04, -4.484937402565570110e-04, -4.483844381678766242e-04, -4.482744147712672701e-04, -4.481636702934522652e-04, -4.480522049622986513e-04, -4.479400190068408847e-04, -4.478271126572576886e-04, -4.477134861448886960e-04, -4.475991397022364006e-04, -4.474840735629530383e-04, -4.473682879618403707e-04, -4.472517831348568401e-04, -4.471345593191148053e-04, -4.470166167528865590e-04, -4.468979556755888231e-04, -4.467785763277867068e-04, -4.466584789512100234e-04, -4.465376637887291666e-04, -4.464161310843628634e-04, -4.462938810832943275e-04, -4.461709140318462696e-04, -4.460472301774886486e-04, -4.459228297688467495e-04, -4.457977130556860582e-04, -4.456718802889334582e-04, -4.455453317206492579e-04, -4.454180676040489289e-04, -4.452900881934895535e-04, -4.451613937444737819e-04, -4.450319845136531936e-04, -4.449018607588279173e-04, -4.447710227389340006e-04, -4.446394707140537638e-04, -4.445072049454171551e-04, -4.443742256953872225e-04, -4.442405332274866224e-04, -4.441061278063603772e-04, -4.439710096978101905e-04, -4.438351791687706487e-04, -4.436986364873156722e-04, -4.435613819226606291e-04, -4.434234157451710638e-04, -4.432847382263349406e-04, -4.431453496387830274e-04, -4.430052502562940452e-04, -4.428644403537644191e-04, -4.427229202072485020e-04, -4.425806900939300063e-04, -4.424377502921208105e-04, -4.422941010812701758e-04, -4.421497427419645286e-04, -4.420046755559350503e-04, -4.418588998060286746e-04, -4.417124157762303683e-04, -4.415652237516671966e-04, -4.414173240185869100e-04, -4.412687168643671066e-04, -4.411194025775312774e-04, -4.409693814477244666e-04, -4.408186537657172283e-04, -4.406672198234106688e-04, -4.405150799138370424e-04, -4.403622343311660941e-04, -4.402086833706807733e-04, -4.400544273287919795e-04, -4.398994665030470726e-04, -4.397438011921086230e-04, -4.395874316957712707e-04, -4.394303583149545157e-04, -4.392725813517025005e-04, -4.391141011091759879e-04, -4.389549178916680810e-04, -4.387950320045806425e-04, -4.386344437544594226e-04, -4.384731534489517209e-04, -4.383111613968383702e-04, -4.381484679080121071e-04, -4.379850732934832095e-04, -4.378209778653889832e-04, -4.376561819369895342e-04, -4.374906858226509086e-04, -4.373244898378563688e-04, -4.371575942992196205e-04, -4.369899995244508231e-04, -4.368217058324000120e-04, -4.366527135430084178e-04, -4.364830229773487445e-04, -4.363126344575962755e-04, -4.361415483070473051e-04, -4.359697648500985385e-04, -4.357972844122811359e-04, -4.356241073202154470e-04, -4.354502339016459223e-04, -4.352756644854214891e-04, -4.351003994014900219e-04, -4.349244389809355849e-04, -4.347477835559314320e-04, -4.345704334597603894e-04, -4.343923890268095432e-04, -4.342136505925770699e-04, -4.340342184936781997e-04, -4.338540930678147500e-04, -4.336732746537957255e-04, -4.334917635915484855e-04, -4.333095602220884946e-04, -4.331266648875332003e-04, -4.329430779311187302e-04, -4.327587996971745754e-04, -4.325738305311242955e-04, -4.323881707794938667e-04, -4.322018207899098389e-04, -4.320147809111103405e-04, -4.318270514929116845e-04, -4.316386328862442559e-04, -4.314495254431225334e-04, -4.312597295166612985e-04, -4.310692454610717318e-04, -4.308780736316729061e-04, -4.306862143848586098e-04, -4.304936680781210902e-04, -4.303004350700577224e-04, -4.301065157203362056e-04, -4.299119103897442742e-04, -4.297166194401381436e-04, -4.295206432344772594e-04, -4.293239821368027755e-04, -4.291266365122444392e-04, -4.289286067270245482e-04, -4.287298931484649980e-04, -4.285304961449552439e-04, -4.283304160859743100e-04, -4.281296533420998968e-04, -4.279282082849735782e-04, -4.277260812873520299e-04, -4.275232727230447965e-04, -4.273197829669667666e-04, -4.271156123950977865e-04, -4.269107613845073254e-04, -4.267052303133616318e-04, -4.264990195608802563e-04, -4.262921295073723730e-04, -4.260845605342349898e-04, -4.258763130239344636e-04, -4.256673873600078551e-04, -4.254577839270894373e-04, -4.252475031108807180e-04, -4.250365452981507645e-04, -4.248249108767440641e-04, -4.246126002355865960e-04, -4.243996137646863730e-04, -4.241859518551066078e-04, -4.239716148989838189e-04, -4.237566032895399197e-04, -4.235409174210529992e-04, -4.233245576888691394e-04, -4.231075244894231787e-04, -4.228898182202084615e-04, -4.226714392797721229e-04, -4.224523880677510837e-04, -4.222326649848228818e-04, -4.220122704327648158e-04, -4.217912048143844473e-04, -4.215694685335783648e-04, -4.213470619952903876e-04, -4.211239856055307021e-04, -4.209002397713719587e-04, -4.206758249009660226e-04, -4.204507414034985998e-04, -4.202249896892206252e-04, -4.199985701694578574e-04, -4.197714832565672396e-04, -4.195437293640006510e-04, -4.193153089062300423e-04, -4.190862222988084220e-04, -4.188564699583310967e-04, -4.186260523024397905e-04, -4.183949697498571228e-04, -4.181632227203426985e-04, -4.179308116347045456e-04, -4.176977369148013384e-04, -4.174639989835570884e-04, -4.172295982649233594e-04, -4.169945351839261598e-04, -4.167588101666289710e-04, -4.165224236401388730e-04, -4.162853760326043224e-04, -4.160476677732311435e-04, -4.158092992922825834e-04, -4.155702710210409305e-04, -4.153305833918398242e-04, -4.150902368380684831e-04, -4.148492317941451964e-04, -4.146075686955224735e-04, -4.143652479787210343e-04, -4.141222700812876331e-04, -4.138786354418002634e-04, -4.136343444998757468e-04, -4.133893976961749376e-04, -4.131437954724102575e-04, -4.128975382713053095e-04, -4.126506265366225792e-04, -4.124030607131766077e-04, -4.121548412467930631e-04, -4.119059685843460368e-04, -4.116564431737379320e-04, -4.114062654639086790e-04, -4.111554359048097689e-04, -4.109039549474441519e-04, -4.106518230438208636e-04, -4.103990406470101569e-04, -4.101456082110747632e-04, -4.098915261911283852e-04, -4.096367950432963949e-04, -4.093814152247278676e-04, -4.091253871936026843e-04, -4.088687114091383613e-04, -4.086113883315487427e-04, -4.083534184220756046e-04, -4.080948021429967325e-04, -4.078355399575829326e-04, -4.075756323301617831e-04, -4.073150797260431492e-04, -4.070538826115781641e-04, -4.067920414541155894e-04, -4.065295567220365098e-04, -4.062664288847302099e-04, -4.060026584126071297e-04, -4.057382457770732239e-04, -4.054731914505685592e-04, -4.052074959065307225e-04, -4.049411596193997539e-04, -4.046741830646570699e-04, -4.044065667187745597e-04, -4.041383110592248313e-04, -4.038694165644921615e-04, -4.035998837140692980e-04, -4.033297129884750231e-04, -4.030589048692020579e-04, -4.027874598387547926e-04, -4.025153783806580143e-04, -4.022426609794198813e-04, -4.019693081205457470e-04, -4.016953202905715532e-04, -4.014206979770120051e-04, -4.011454416683800329e-04, -4.008695518541833766e-04, -4.005930290249346145e-04, -4.003158736721578316e-04, -4.000380862883390711e-04, -3.997596673669899774e-04, -3.994806174025963504e-04, -3.992009368906366314e-04, -3.989206263275863482e-04, -3.986396862109350828e-04, -3.983581170391283042e-04, -3.980759193116074836e-04, -3.977930935288213703e-04, -3.975096401921775278e-04, -3.972255598041097712e-04, -3.969408528679976649e-04, -3.966555198882346653e-04, -3.963695613701829633e-04, -3.960829778201773333e-04, -3.957957697455703446e-04, -3.955079376546739769e-04, -3.952194820567771303e-04, -3.949304034621458964e-04, -3.946407023820465432e-04, -3.943503793286896788e-04, -3.940594348153104824e-04, -3.937678693560691745e-04, -3.934756834661412767e-04, -3.931828776616457834e-04, -3.928894524596881501e-04, -3.925954083783671244e-04, -3.923007459367215655e-04, -3.920054656547653014e-04, -3.917095680535016573e-04, -3.914130536548863213e-04, -3.911159229818328745e-04, -3.908181765582551285e-04, -3.905198149090145961e-04, -3.902208385599305741e-04, -3.899212480377887632e-04, -3.896210438703425686e-04, -3.893202265863266527e-04, -3.890187967154057065e-04, -3.887167547882136977e-04, -3.884141013363595629e-04, -3.881108368923876341e-04, -3.878069619898205189e-04, -3.875024771631279297e-04, -3.871973829477451693e-04, -3.868916798800412014e-04, -3.865853684973663551e-04, -3.862784493379888451e-04, -3.859709229411785263e-04, -3.856627898471086651e-04, -3.853540505969355739e-04, -3.850447057327448350e-04, -3.847347557975659910e-04, -3.844242013354056678e-04, -3.841130428912020917e-04, -3.838012810108264996e-04, -3.834889162410998892e-04, -3.831759491298032650e-04, -3.828623802256297167e-04, -3.825482100782597169e-04, -3.822334392382664161e-04, -3.819180682571992887e-04, -3.816020976875246105e-04, -3.812855280826382524e-04, -3.809683599969110540e-04, -3.806505939856258316e-04, -3.803322306049906594e-04, -3.800132704121690652e-04, -3.796937139652428956e-04, -3.793735618232175750e-04, -3.790528145460605948e-04, -3.787314726946555427e-04, -3.784095368308029164e-04, -3.780870075172342178e-04, -3.777638853176131461e-04, -3.774401707965520771e-04, -3.771158645195536794e-04, -3.767909670530522766e-04, -3.764654789644251228e-04, -3.761394008219517992e-04, -3.758127331948265745e-04, -3.754854766531982488e-04, -3.751576317681148596e-04, -3.748291991115360955e-04, -3.745001792563375795e-04, -3.741705727763187288e-04, -3.738403802462179882e-04, -3.735096022416500546e-04, -3.731782393391506547e-04, -3.728462921161910734e-04, -3.725137611511235639e-04, -3.721806470232256374e-04, -3.718469503127059725e-04, -3.715126716006466267e-04, -3.711778114690423387e-04, -3.708423705008182013e-04, -3.705063492797663980e-04, -3.701697483906351616e-04, -3.698325684190269681e-04, -3.694948099514803390e-04, -3.691564735754138972e-04, -3.688175598791411120e-04, -3.684780694519110104e-04, -3.681380028838444809e-04, -3.677973607659605106e-04, -3.674561436901682709e-04, -3.671143522492946562e-04, -3.667719870370258453e-04, -3.664290486479930076e-04, -3.660855376776667560e-04, -3.657414547224470814e-04, -3.653968003795918500e-04, -3.650515752472729644e-04, -3.647057799245421029e-04, -3.643594150113448689e-04, -3.640124811084915167e-04, -3.636649788177074216e-04, -3.633169087415764843e-04, -3.629682714835611888e-04, -3.626190676480445067e-04, -3.622692978402627852e-04, -3.619189626663279189e-04, -3.615680627332312530e-04, -3.612165986488470528e-04, -3.608645710219502301e-04, -3.605119804621535144e-04, -3.601588275799520668e-04, -3.598051129867352446e-04, -3.594508372947439914e-04, -3.590960011170830348e-04, -3.587406050677645797e-04, -3.583846497616480263e-04, -3.580281358144526559e-04, -3.576710638427647859e-04, -3.573134344640457394e-04, -3.569552482966440420e-04, -3.565965059597256534e-04, -3.562372080733581018e-04, -3.558773552584486841e-04, -3.555169481367575308e-04, -3.551559873309411363e-04, -3.547944734644943544e-04, -3.544324071617587467e-04, -3.540697890479352133e-04, -3.537066197491007440e-04, -3.533428998921507385e-04, -3.529786301048878027e-04, -3.526138110159091543e-04, -3.522484432547043636e-04, -3.518825274515905181e-04, -3.515160642377236069e-04, -3.511490542451479601e-04, -3.507814981067324434e-04, -3.504133964561801078e-04, -3.500447499280430973e-04, -3.496755591577362554e-04, -3.493058247814815058e-04, -3.489355474363945342e-04, -3.485647277603771813e-04, -3.481933663922090580e-04, -3.478214639714772888e-04, -3.474490211386222112e-04, -3.470760385349418208e-04, -3.467025168025319776e-04, -3.463284565843261420e-04, -3.459538585241186308e-04, -3.455787232665090522e-04, -3.452030514569178095e-04, -3.448268437416387392e-04, -3.444501007677667407e-04, -3.440728231832167498e-04, -3.436950116367280751e-04, -3.433166667778758370e-04, -3.429377892570803998e-04, -3.425583797255458431e-04, -3.421784388353060953e-04, -3.417979672392377263e-04, -3.414169655909983113e-04, -3.410354345451192923e-04, -3.406533747568914324e-04, -3.402707868824649960e-04, -3.398876715787688672e-04, -3.395040295035801556e-04, -3.391198613154483023e-04, -3.387351676737894598e-04, -3.383499492387735718e-04, -3.379642066714229820e-04, -3.375779406335396838e-04, -3.371911517877260829e-04, -3.368038407974311300e-04, -3.364160083268860819e-04, -3.360276550411137172e-04, -3.356387816059412384e-04, -3.352493886880224976e-04, -3.348594769547683374e-04, -3.344690470744467702e-04, -3.340780997160674570e-04, -3.336866355494766292e-04, -3.332946552452910609e-04, -3.329021594749139519e-04, -3.325091489105835006e-04, -3.321156242253059539e-04, -3.317215860928590773e-04, -3.313270351878473403e-04, -3.309319721856355634e-04, -3.305363977623697888e-04, -3.301403125950244438e-04, -3.297437173613320836e-04, -3.293466127398037208e-04, -3.289489994097294758e-04, -3.285508780511932131e-04, -3.281522493450827332e-04, -3.277531139730237449e-04, -3.273534726174289790e-04, -3.269533259615131507e-04, -3.265526746892408096e-04, -3.261515194853430904e-04, -3.257498610353683449e-04, -3.253477000256114527e-04, -3.249450371431301921e-04, -3.245418730757499565e-04, -3.241382085120774153e-04, -3.237340441415101637e-04, -3.233293806541712363e-04, -3.229242187409554028e-04, -3.225185590935500390e-04, -3.221124024043589074e-04, -3.217057493666050476e-04, -3.212986006742413300e-04, -3.208909570219729531e-04, -3.204828191052647070e-04, -3.200741876203636342e-04, -3.196650632642274712e-04, -3.192554467346336660e-04, -3.188453387300495441e-04, -3.184347399497393198e-04, -3.180236510936915628e-04, -3.176120728626363287e-04, -3.172000059580976886e-04, -3.167874510823195694e-04, -3.163744089382841858e-04, -3.159608802297182739e-04, -3.155468656611209012e-04, -3.151323659376878438e-04, -3.147173817654202229e-04, -3.143019138509968945e-04, -3.138859629018801592e-04, -3.134695296262351516e-04, -3.130526147329906099e-04, -3.126352189318019588e-04, -3.122173429330690362e-04, -3.117989874478961946e-04, -3.113801531881575701e-04, -3.109608408664304036e-04, -3.105410511960130936e-04, -3.101207848909766948e-04, -3.097000426660930362e-04, -3.092788252368509840e-04, -3.088571333194654401e-04, -3.084349676308821130e-04, -3.080123288887959493e-04, -3.075892178115815275e-04, -3.071656351183368059e-04, -3.067415815289096853e-04, -3.063170577638203804e-04, -3.058920645443671295e-04, -3.054666025925005892e-04, -3.050406726309311711e-04, -3.046142753830446905e-04, -3.041874115729749535e-04, -3.037600819255205451e-04, -3.033322871662547668e-04, -3.029040280213921173e-04, -3.024753052178992064e-04, -3.020461194834226553e-04, -3.016164715463026495e-04, -3.011863621356293172e-04, -3.007557919811645582e-04, -3.003247618133637279e-04, -2.998932723633809501e-04, -2.994613243630947583e-04, -2.990289185450345868e-04, -2.985960556424910881e-04, -2.981627363893834810e-04, -2.977289615203700850e-04, -2.972947317707737812e-04, -2.968600478765976792e-04, -2.964249105745816039e-04, -2.959893206021261473e-04, -2.955532786973077389e-04, -2.951167855988869396e-04, -2.946798420463415101e-04, -2.942424487797807588e-04, -2.938046065400536913e-04, -2.933663160686622736e-04, -2.929275781077785089e-04, -2.924883934002491534e-04, -2.920487626896117088e-04, -2.916086867201054806e-04, -2.911681662365961723e-04, -2.907272019846326430e-04, -2.902857947104630081e-04, -2.898439451609598292e-04, -2.894016540837314076e-04, -2.889589222269854456e-04, -2.885157503396477128e-04, -2.880721391712756890e-04, -2.876280894720942348e-04, -2.871836019930011749e-04, -2.867386774855831821e-04, -2.862933167020404249e-04, -2.858475203952406149e-04, -2.854012893187387939e-04, -2.849546242266981868e-04, -2.845075258740063740e-04, -2.840599950161350499e-04, -2.836120324092579296e-04, -2.831636388101620616e-04, -2.827148149763237216e-04, -2.822655616658167432e-04, -2.818158796374347079e-04, -2.813657696505471794e-04, -2.809152324652175025e-04, -2.804642688421245234e-04, -2.800128795425793952e-04, -2.795610653285826065e-04, -2.791088269627474915e-04, -2.786561652083138904e-04, -2.782030808291606721e-04, -2.777495745898303460e-04, -2.772956472554540886e-04, -2.768412995918635797e-04, -2.763865323654537422e-04, -2.759313463433005404e-04, -2.754757422930684437e-04, -2.750197209830843145e-04, -2.745632831822862347e-04, -2.741064296602523987e-04, -2.736491611871548187e-04, -2.731914785338283337e-04, -2.727333824716785069e-04, -2.722748737728033813e-04, -2.718159532098498774e-04, -2.713566215561325130e-04, -2.708968795855520883e-04, -2.704367280726269651e-04, -2.699761677924969157e-04, -2.695151995209473547e-04, -2.690538240343226572e-04, -2.685920421095890965e-04, -2.681298545243518123e-04, -2.676672620567724652e-04, -2.672042654856900709e-04, -2.667408655904786449e-04, -2.662770631511658138e-04, -2.658128589483509585e-04, -2.653482537632355712e-04, -2.648832483776296528e-04, -2.644178435739736135e-04, -2.639520401352431342e-04, -2.634858388450610558e-04, -2.630192404876139506e-04, -2.625522458476719080e-04, -2.620848557106469196e-04, -2.616170708625120515e-04, -2.611488920898188460e-04, -2.606803201797068081e-04, -2.602113559199333297e-04, -2.597420000987892843e-04, -2.592722535052215962e-04, -2.588021169286881741e-04, -2.583315911592786915e-04, -2.578606769876339217e-04, -2.573893752049607542e-04, -2.569176866030974094e-04, -2.564456119744244257e-04, -2.559731521118899754e-04, -2.555003078090129008e-04, -2.550270798599163784e-04, -2.545534690592427549e-04, -2.540794762022753573e-04, -2.536051020847933726e-04, -2.531303475031963139e-04, -2.526552132544051415e-04, -2.521797001359370725e-04, -2.517038089458622672e-04, -2.512275404828217726e-04, -2.507508955459850216e-04, -2.502738749351243719e-04, -2.497964794505146548e-04, -2.493187098930614359e-04, -2.488405670641508538e-04, -2.483620517657765796e-04, -2.478831648004505873e-04, -2.474039069712363303e-04, -2.469242790817583908e-04, -2.464442819362186346e-04, -2.459639163393153834e-04, -2.454831830963019623e-04, -2.450020830130065401e-04, -2.445206168957476706e-04, -2.440387855514595172e-04, -2.435565897875410139e-04, -2.430740304119841805e-04, -2.425911082332752428e-04, -2.421078240604786864e-04, -2.416241787031401926e-04, -2.411401729714138969e-04, -2.406558076759096523e-04, -2.401710836278230789e-04, -2.396860016388456028e-04, -2.392005625211853534e-04, -2.387147670876325683e-04, -2.382286161514686018e-04, -2.377421105264870664e-04, -2.372552510270065996e-04, -2.367680384678970743e-04, -2.362804736644937573e-04, -2.357925574327276845e-04, -2.353042905889689122e-04, -2.348156739501599285e-04, -2.343267083337215715e-04, -2.338373945575793482e-04, -2.333477334402238518e-04, -2.328577258006217759e-04, -2.323673724582388451e-04, -2.318766742330483261e-04, -2.313856319455410027e-04, -2.308942464167424954e-04, -2.304025184681186920e-04, -2.299104489216913239e-04, -2.294180385999488713e-04, -2.289252883258803366e-04, -2.284321989229820744e-04, -2.279387712152810479e-04, -2.274450060272444063e-04, -2.269509041838423146e-04, -2.264564665105716702e-04, -2.259616938333649757e-04, -2.254665869787210941e-04, -2.249711467735503428e-04, -2.244753740453037853e-04, -2.239792696218868471e-04, -2.234828343316866645e-04, -2.229860690035861525e-04, -2.224889744669811351e-04, -2.219915515516928501e-04, -2.214938010880317814e-04, -2.209957239068187471e-04, -2.204973208392952625e-04, -2.199985927172541330e-04, -2.194995403728842770e-04, -2.190001646389010202e-04, -2.185004663484457798e-04, -2.180004463351735867e-04, -2.175001054331497609e-04, -2.169994444769861959e-04, -2.164984643016797583e-04, -2.159971657427460512e-04, -2.154955496361293983e-04, -2.149936168182247991e-04, -2.144913681259395387e-04, -2.139888043966076711e-04, -2.134859264680065807e-04, -2.129827351783707243e-04, -2.124792313663966729e-04, -2.119754158712673978e-04, -2.114712895325626338e-04, -2.109668531903200557e-04, -2.104621076850601608e-04, -2.099570538577057936e-04, -2.094516925496563869e-04, -2.089460246027467077e-04, -2.084400508592628223e-04, -2.079337721618990261e-04, -2.074271893538344696e-04, -2.069203032786297801e-04, -2.064131147803610416e-04, -2.059056247034608236e-04, -2.053978338928521890e-04, -2.048897431938571326e-04, -2.043813534522284300e-04, -2.038726655141602625e-04, -2.033636802263092509e-04, -2.028543984356999668e-04, -2.023448209897980626e-04, -2.018349487365239865e-04, -2.013247825241657580e-04, -2.008143232015111327e-04, -2.003035716176895255e-04, -1.997925286223042017e-04, -1.992811950653433997e-04, -1.987695717972081408e-04, -1.982576596687278688e-04, -1.977454595311772009e-04, -1.972329722361752325e-04, -1.967201986358068321e-04, -1.962071395825321920e-04, -1.956937959292071841e-04, -1.951801685291494148e-04, -1.946662582360485076e-04, -1.941520659039839647e-04, -1.936375923874378529e-04, -1.931228385413257030e-04, -1.926078052209058704e-04, -1.920924932819125669e-04, -1.915769035803971062e-04, -1.910610369728618846e-04, -1.905448943161678710e-04, -1.900284764675568060e-04, -1.895117842847174740e-04, -1.889948186256922718e-04, -1.884775803489013054e-04, -1.879600703131488948e-04, -1.874422893776362320e-04, -1.869242384019820355e-04, -1.864059182461291460e-04, -1.858873297704116657e-04, -1.853684738355778619e-04, -1.848493513027064667e-04, -1.843299630332767168e-04, -1.838103098891746411e-04, -1.832903927326033709e-04, -1.827702124261497093e-04, -1.822497698328035389e-04, -1.817290658158675885e-04, -1.812081012390917394e-04, -1.806868769665115055e-04, -1.801653938625842101e-04, -1.796436527920967463e-04, -1.791216546201963421e-04, -1.785994002124025406e-04, -1.780768904346290463e-04, -1.775541261530881804e-04, -1.770311082343600795e-04, -1.765078375454149490e-04, -1.759843149535169216e-04, -1.754605413263636213e-04, -1.749365175319213641e-04, -1.744122444385635842e-04, -1.738877229149651783e-04, -1.733629538301920060e-04, -1.728379380535972952e-04, -1.723126764549587386e-04, -1.717871699043135327e-04, -1.712614192720986737e-04, -1.707354254290531894e-04, -1.702091892462424252e-04, -1.696827115951266202e-04, -1.691559933474644944e-04, -1.686290353753364503e-04, -1.681018385511541958e-04, -1.675744037476715857e-04, -1.670467318380064144e-04, -1.665188236955441930e-04, -1.659906801940093813e-04, -1.654623022074843612e-04, -1.649336906103401564e-04, -1.644048462772574389e-04, -1.638757700832949146e-04, -1.633464629037960554e-04, -1.628169256143963898e-04, -1.622871590910953321e-04, -1.617571642101463790e-04, -1.612269418481998182e-04, -1.606964928821336743e-04, -1.601658181891947358e-04, -1.596349186469039048e-04, -1.591037951330881537e-04, -1.585724485258918008e-04, -1.580408797037991160e-04, -1.575090895455378540e-04, -1.569770789301486700e-04, -1.564448487370069670e-04, -1.559123998457286509e-04, -1.553797331363083122e-04, -1.548468494889525845e-04, -1.543137497842224999e-04, -1.537804349029353417e-04, -1.532469057261995826e-04, -1.527131631354248327e-04, -1.521792080123446616e-04, -1.516450412389203756e-04, -1.511106636974104067e-04, -1.505760762703911560e-04, -1.500412798406640239e-04, -1.495062752913813400e-04, -1.489710635059387828e-04, -1.484356453679991784e-04, -1.479000217615020684e-04, -1.473641935706726004e-04, -1.468281616800465458e-04, -1.462919269743707972e-04, -1.457554903386763898e-04, -1.452188526582984501e-04, -1.446820148188045847e-04, -1.441449777060160766e-04, -1.436077422060797132e-04, -1.430703092053687447e-04, -1.425326795905072243e-04, -1.419948542483797662e-04, -1.414568340661410593e-04, -1.409186199312402888e-04, -1.403802127313220406e-04, -1.398416133542980204e-04, -1.393028226883691724e-04, -1.387638416219397013e-04, -1.382246710437004479e-04, -1.376853118425784464e-04, -1.371457649077610478e-04, -1.366060311286449900e-04, -1.360661113949186880e-04, -1.355260065964548715e-04, -1.349857176234504463e-04, -1.344452453662595007e-04, -1.339045907155337093e-04, -1.333637545621263812e-04, -1.328227377971260973e-04, -1.322815413118677964e-04, -1.317401659979555706e-04, -1.311986127471639213e-04, -1.306568824515093438e-04, -1.301149760032732313e-04, -1.295728942949026972e-04, -1.290306382191553974e-04, -1.284882086689276574e-04, -1.279456065374000805e-04, -1.274028327179362291e-04, -1.268598881041198398e-04, -1.263167735897651237e-04, -1.257734900689389652e-04, -1.252300384358506584e-04, -1.246864195849829878e-04, -1.241426344109961401e-04, -1.235986838087472746e-04, -1.230545686733640863e-04, -1.225102899001459533e-04, -1.219658483845858788e-04, -1.214212450223817397e-04, -1.208764807094471689e-04, -1.203315563419336056e-04, -1.197864728161329202e-04, -1.192412310285473050e-04, -1.186958318759133430e-04, -1.181502762551267917e-04, -1.176045650632662594e-04, -1.170586991976633394e-04, -1.165126795558058312e-04, -1.159665070353585307e-04, -1.154201825341750337e-04, -1.148737069503091070e-04, -1.143270811820355456e-04, -1.137803061277529467e-04, -1.132333826860554705e-04, -1.126863117557538196e-04, -1.121390942357905084e-04, -1.115917310253106750e-04, -1.110442230236730727e-04, -1.104965711303501738e-04, -1.099487762450014486e-04, -1.094008392674946425e-04, -1.088527610978077100e-04, -1.083045426361735423e-04, -1.077561847829075655e-04, -1.072076884385527660e-04, -1.066590545037806762e-04, -1.061102838794257297e-04, -1.055613774664974588e-04, -1.050123361662023410e-04, -1.044631608798449201e-04, -1.039138525088997969e-04, -1.033644119550343433e-04, -1.028148401200091726e-04, -1.022651379058241682e-04, -1.017153062145449564e-04, -1.011653459484491659e-04, -1.006152580099138198e-04, -1.000650433015001333e-04, -9.951470272590259738e-05, -9.896423718597344068e-05, -9.841364758466943617e-05, -9.786293482513931479e-05, -9.731209981063362760e-05, -9.676114344453022457e-05, -9.621006663040444307e-05, -9.565887027193098761e-05, -9.510755527290564099e-05, -9.455612253725767839e-05, -9.400457296905864941e-05, -9.345290747254697593e-05, -9.290112695202800222e-05, -9.234923231194587751e-05, -9.179722445690666308e-05, -9.124510429160333257e-05, -9.069287272083854023e-05, -9.014053064959733021e-05, -8.958807898294714601e-05, -8.903551862604837440e-05, -8.848285048422697334e-05, -8.793007546286233842e-05, -8.737719446753306027e-05, -8.682420840384379103e-05, -8.627111817757048679e-05, -8.571792469456177227e-05, -8.516462886077294416e-05, -8.461123158227819546e-05, -8.405773376529263833e-05, -8.350413631607280147e-05, -8.295044014098936652e-05, -8.239664614654950260e-05, -8.184275523929778384e-05, -8.128876832596148596e-05, -8.073468631327771026e-05, -8.018051010813893778e-05, -7.962624061749340465e-05, -7.907187874836804652e-05, -7.851742540794088264e-05, -7.796288150344158089e-05, -7.740824794217404995e-05, -7.685352563152701016e-05, -7.629871547901002980e-05, -7.574381839215304656e-05, -7.518883527864181153e-05, -7.463376704620286895e-05, -7.407861460262872317e-05, -7.352337885578892466e-05, -7.296806071363913667e-05, -7.241266108424594986e-05, -7.185718087568591602e-05, -7.130162099611851484e-05, -7.074598235380881374e-05, -7.019026585705246822e-05, -6.963447241419872045e-05, -6.907860293372298664e-05, -6.852265832412656832e-05, -6.796663949395989493e-05, -6.741054735183339296e-05, -6.685438280642843636e-05, -6.629814676652065692e-05, -6.574184014087907279e-05, -6.518546383833931281e-05, -6.462901876782675063e-05, -6.407250583826842687e-05, -6.351592595867809122e-05, -6.295928003810512296e-05, -6.240256898565826145e-05, -6.184579371045421492e-05, -6.128895512170256707e-05, -6.073205412859373158e-05, -6.017509164044523802e-05, -5.961806856652719568e-05, -5.906098581620952145e-05, -5.850384429886154266e-05, -5.794664492388669160e-05, -5.738938860073492638e-05, -5.683207623892468601e-05, -5.627470874794303541e-05, -5.571728703731823243e-05, -5.515981201664344472e-05, -5.460228459547542429e-05, -5.404470568348246047e-05, -5.348707619026873234e-05, -5.292939702552213973e-05, -5.237166909890094986e-05, -5.181389332011894109e-05, -5.125607059889512309e-05, -5.069820184497576642e-05, -5.014028796808459699e-05, -4.958232987800722836e-05, -4.902432848450327354e-05, -4.846628469732972315e-05, -4.790819942631348527e-05, -4.735007358125142883e-05, -4.679190807193261650e-05, -4.623370380815054260e-05, -4.567546169971261992e-05, -4.511718265646483175e-05, -4.455886758819016920e-05, -4.400051740468188946e-05, -4.344213301576674475e-05, -4.288371533122931187e-05, -4.232526526083490943e-05, -4.176678371440300521e-05, -4.120827160170610745e-05, -4.064972983249340728e-05, -4.009115931650133612e-05, -3.953256096346485494e-05, -3.897393568314094081e-05, -3.841528438519454912e-05, -3.785660797933474195e-05, -3.729790737521314581e-05, -3.673918348246010292e-05, -3.618043721069552686e-05, -3.562166946955202992e-05, -3.506288116857462085e-05, -3.450407321729304148e-05, -3.394524652524570727e-05, -3.338640200187872740e-05, -3.282754055669322076e-05, -3.226866309907037994e-05, -3.170977053841866520e-05, -3.115086378407298725e-05, -3.059194374531831571e-05, -3.003301133146264599e-05, -2.947406745173616500e-05, -2.891511301531432104e-05, -2.835614893132907231e-05, -2.779717610890485878e-05, -2.723819545705722923e-05, -2.667920788484085860e-05, -2.612021430117394109e-05, -2.556121561498591951e-05, -2.500221273510396929e-05, -2.444320657032656162e-05, -2.388419802943388194e-05, -2.332518802108714143e-05, -2.276617745390171324e-05, -2.220716723647049028e-05, -2.164815827728792667e-05, -2.108915148477313124e-05, -2.053014776734332904e-05, -1.997114803331281706e-05, -1.941215319091620681e-05, -1.885316414831956450e-05, -1.829418181363123277e-05, -1.773520709492542558e-05, -1.717624090014113655e-05, -1.661728413715524470e-05, -1.605833771380597044e-05, -1.549940253781685950e-05, -1.494047951681994415e-05, -1.438156955842927586e-05, -1.382267357013967941e-05, -1.326379245933769830e-05, -1.270492713337494778e-05, -1.214607849945448536e-05, -1.158724746477886375e-05, -1.102843493637417663e-05, -1.046964182123820142e-05, -9.910869026239216007e-06, -9.352117458139402366e-06, -8.793388023668128388e-06, -8.234681629420951098e-06, -7.675999181882845672e-06, -7.117341587439428627e-06, -6.558709752412630616e-06, -6.000104582959774990e-06, -5.441526985221490928e-06, -4.882977865145852454e-06, -4.324458128636411850e-06, -3.765968681451093139e-06, -3.207510429225618053e-06, -2.649084277546776925e-06, -2.090691131851342507e-06, -1.532331897449473490e-06, -9.740074795357593886e-07, -4.157187832250748640e-07, 1.425332865484925074e-07, 7.007478248961299078e-07, 1.258923927087837956e-06, 1.817060688528978694e-06, 2.375157204749292032e-06, 2.933212571391903193e-06, 3.491225884189908182e-06, 4.049196239067390507e-06, 4.607122732066232247e-06, 5.165004459322627937e-06, 5.722840517143295939e-06, 6.280630001981976667e-06, 6.838372010366291286e-06, 7.396065638998679247e-06, 7.953709984733037960e-06, 8.511304144563697818e-06, 9.068847215614464973e-06, 9.626338295115191565e-06, 1.018377648050270901e-05, 1.074116086934778834e-05, 1.129849055933148938e-05, 1.185576464833392806e-05, 1.241298223434847711e-05, 1.297014241553314704e-05, 1.352724429018703186e-05, 1.408428695680150375e-05, 1.464126951397474069e-05, 1.519819106052501028e-05, 1.575505069534286254e-05, 1.631184751756686551e-05, 1.686858062643557777e-05, 1.742524912138865878e-05, 1.798185210204339757e-05, 1.853838866812154945e-05, 1.909485791955039719e-05, 1.965125895643903749e-05, 2.020759087906766430e-05, 2.076385278785172582e-05, 2.132004378344247743e-05, 2.187616296657992999e-05, 2.243220943826749794e-05, 2.298818229962499494e-05, 2.354408065200155360e-05, 2.409990359689018354e-05, 2.465565023597899655e-05, 2.521131967112773704e-05, 2.576691100441887161e-05, 2.632242333807212012e-05, 2.687785577453295362e-05, 2.743320741644902656e-05, 2.798847736659729803e-05, 2.854366472798464577e-05, 2.909876860382457271e-05, 2.965378809752626673e-05, 3.020872231268339949e-05, 3.076357035305115489e-05, 3.131833132264670073e-05, 3.187300432567597797e-05, 3.242758846651091890e-05, 3.298208284976477213e-05, 3.353648658026879223e-05, 3.409079876299967268e-05, 3.464501850317983463e-05, 3.519914490625408266e-05, 3.575317707787872205e-05, 3.630711412391065586e-05, 3.686095515038417613e-05, 3.741469926362343639e-05, 3.796834557010811894e-05, 3.852189317657358808e-05, 3.907534118998789145e-05, 3.962868871747857635e-05, 4.018193486643365615e-05, 4.073507874447756123e-05, 4.128811945946087979e-05, 4.184105611942430812e-05, 4.239388783269915610e-05, 4.294661370776037008e-05, 4.349923285340110297e-05, 4.405174437858554057e-05, 4.460414739254992889e-05, 4.515644100477815928e-05, 4.570862432493013651e-05, 4.626069646294148476e-05, 4.681265652900053539e-05, 4.736450363353701741e-05, 4.791623688718671240e-05, 4.846785540089187206e-05, 4.901935828575435618e-05, 4.957074465320925407e-05, 5.012201361487928983e-05, 5.067316428268621724e-05, 5.122419576877963520e-05, 5.177510718552441095e-05, 5.232589764560171414e-05, 5.287656626193665992e-05, 5.342711214767449716e-05, 5.397753441625633992e-05, 5.452783218139543024e-05, 5.507800455700581795e-05, 5.562805065730081980e-05, 5.617796959677065776e-05, 5.672776049017196260e-05, 5.727742245251588157e-05, 5.782695459904549308e-05, 5.837635604533568883e-05, 5.892562590722034933e-05, 5.947476330076979247e-05, 6.002376734238995093e-05, 6.057263714867672314e-05, 6.112137183658932372e-05, 6.166997052330416005e-05, 6.221843232632658647e-05, 6.276675636339475585e-05, 6.331494175259085196e-05, 6.386298761219583349e-05, 6.441089306086171377e-05, 6.495865721746660294e-05, 6.550627920121454941e-05, 6.605375813161076587e-05, 6.660109312839165754e-05, 6.714828331162233266e-05, 6.769532780167478289e-05, 6.824222571921663471e-05, 6.878897618517598061e-05, 6.933557832084028547e-05, 6.988203124771122539e-05, 7.042833408767764508e-05, 7.097448596286939383e-05, 7.152048599575785818e-05, 7.206633330913174353e-05, 7.261202702602501536e-05, 7.315756626981767584e-05, 7.370295016422305154e-05, 7.424817783321703568e-05, 7.479324840112478367e-05, 7.533816099259711815e-05, 7.588291473253970347e-05, 7.642750874621113890e-05, 7.697194215920059694e-05, 7.751621409741680515e-05, 7.806032368707679751e-05, 7.860427005468409488e-05, 7.914805232712599859e-05, 7.969166963160364582e-05, 8.023512109560726273e-05, 8.077840584699228898e-05, 8.132152301395518645e-05, 8.186447172496258667e-05, 8.240725110884935688e-05, 8.294986029479627901e-05, 8.349229841231946519e-05, 8.403456459125763190e-05, 8.457665796175253012e-05, 8.511857765434477526e-05, 8.566032279990329270e-05, 8.620189252960294257e-05, 8.674328597502186755e-05, 8.728450226801038572e-05, 8.782554054080124039e-05, 8.836639992598676403e-05, 8.890707955650783306e-05, 8.944757856561917327e-05, 8.998789608698806296e-05, 9.052803125454929377e-05, 9.106798320267746392e-05, 9.160775106604143769e-05, 9.214733397970474246e-05, 9.268673107910030688e-05, 9.322594149996107189e-05, 9.376496437841731139e-05, 9.430379885097405380e-05, 9.484244405450068720e-05, 9.538089912619500453e-05, 9.591916320368251649e-05, 9.645723542487184604e-05, 9.699511492812652031e-05, 9.753280085211999914e-05, 9.807029233594597914e-05, 9.860758851903650933e-05, 9.914468854120970956e-05, 9.968159154264889961e-05, 1.002182966639506565e-04, 1.007548030460427946e-04, 1.012911098302701665e-04, 1.018272161583710412e-04, 1.023631211724066039e-04, 1.028988240148591573e-04, 1.034343238286087707e-04, 1.039696197569235089e-04, 1.045047109434470855e-04, 1.050395965321778975e-04, 1.055742756675661015e-04, 1.061087474944418944e-04, 1.066430111579945200e-04, 1.071770658038678011e-04, 1.077109105780196265e-04, 1.082445446268888510e-04, 1.087779670972553514e-04, 1.093111771363466581e-04, 1.098441738917456352e-04, 1.103769565114986838e-04, 1.109095241439729258e-04, 1.114418759380261792e-04, 1.119740110428636947e-04, 1.125059286081367909e-04, 1.130376277839179717e-04, 1.135691077206325947e-04, 1.141003675691552025e-04, 1.146314064807860497e-04, 1.151622236072420360e-04, 1.156928181006212941e-04, 1.162231891134999132e-04, 1.167533357987913189e-04, 1.172832573099127652e-04, 1.178129528006447953e-04, 1.183424214252286571e-04, 1.188716623383411088e-04, 1.194006746950275374e-04, 1.199294576507964604e-04, 1.204580103615981941e-04, 1.209863319838128733e-04, 1.215144216742179522e-04, 1.220422785900834108e-04, 1.225699018890301719e-04, 1.230972907291998737e-04, 1.236244442691109143e-04, 1.241513616677682142e-04, 1.246780420845937051e-04, 1.252044846794144579e-04, 1.257306886125602067e-04, 1.262566530447925507e-04, 1.267823771372828901e-04, 1.273078600517094897e-04, 1.278331009501147979e-04, 1.283580989950742568e-04, 1.288828533495548683e-04, 1.294073631770106575e-04, 1.299316276413497952e-04, 1.304556459069235923e-04, 1.309794171385031901e-04, 1.315029405013765692e-04, 1.320262151612793769e-04, 1.325492402843705605e-04, 1.330720150373307853e-04, 1.335945385872202413e-04, 1.341168101016460988e-04, 1.346388287486214533e-04, 1.351605936966735291e-04, 1.356821041147502477e-04, 1.362033591723285403e-04, 1.367243580392724794e-04, 1.372450998860016286e-04, 1.377655838833492016e-04, 1.382858092026585835e-04, 1.388057750157608065e-04, 1.393254804949052420e-04, 1.398449248128559596e-04, 1.403641071428674675e-04, 1.408830266586757953e-04, 1.414016825344651816e-04, 1.419200739449608009e-04, 1.424382000652921806e-04, 1.429560600711564280e-04, 1.434736531386806722e-04, 1.439909784445156848e-04, 1.445080351658138435e-04, 1.450248224801616948e-04, 1.455413395656733036e-04, 1.460575856009801706e-04, 1.465735597651632793e-04, 1.470892612378576407e-04, 1.476046891991168492e-04, 1.481198428295730292e-04, 1.486347213103033434e-04, 1.491493238229198994e-04, 1.496636495495390405e-04, 1.501776976727704760e-04, 1.506914673756945403e-04, 1.512049578419559764e-04, 1.517181682556992088e-04, 1.522310978015409949e-04, 1.527437456646679216e-04, 1.532561110306985489e-04, 1.537681930858458780e-04, 1.542799910167798468e-04, 1.547915040107208972e-04, 1.553027312554083428e-04, 1.558136719390878740e-04, 1.563243252504906600e-04, 1.568346903789273486e-04, 1.573447665142199789e-04, 1.578545528466795381e-04, 1.583640485671991755e-04, 1.588732528671315256e-04, 1.593821649383896739e-04, 1.598907839734285631e-04, 1.603991091652329855e-04, 1.609071397072845690e-04, 1.614148747936557506e-04, 1.619223136188737897e-04, 1.624294553780792250e-04, 1.629362992668943874e-04, 1.634428444815136871e-04, 1.639490902186808725e-04, 1.644550356756246284e-04, 1.649606800501489986e-04, 1.654660225406121628e-04, 1.659710623459182506e-04, 1.664757986654809936e-04, 1.669802306993195692e-04, 1.674843576479203373e-04, 1.679881787123996338e-04, 1.684916930943669165e-04, 1.689948999960300959e-04, 1.694977986201151956e-04, 1.700003881699141384e-04, 1.705026678492644178e-04, 1.710046368625936042e-04, 1.715062944148420144e-04, 1.720076397115664424e-04, 1.725086719588049869e-04, 1.730093903632381363e-04, 1.735097941320508310e-04, 1.740098824730285782e-04, 1.745096545945217816e-04, 1.750091097054362545e-04, 1.755082470152132164e-04, 1.760070657339189563e-04, 1.765055650721790491e-04, 1.770037442411580536e-04, 1.775016024526501518e-04, 1.779991389189438408e-04, 1.784963528529842647e-04, 1.789932434682350328e-04, 1.794898099787854478e-04, 1.799860515992571014e-04, 1.804819675449089063e-04, 1.809775570315042817e-04, 1.814728192754677661e-04, 1.819677534937516876e-04, 1.824623589039282129e-04, 1.829566347241667413e-04, 1.834505801731701536e-04, 1.839441944702636359e-04, 1.844374768353737538e-04, 1.849304264890195084e-04, 1.854230426522782377e-04, 1.859153245468790204e-04, 1.864072713950675581e-04, 1.868988824197636818e-04, 1.873901568444302996e-04, 1.878810938931623007e-04, 1.883716927906662275e-04, 1.888619527621955747e-04, 1.893518730336384481e-04, 1.898414528314987530e-04, 1.903306913828859759e-04, 1.908195879155043966e-04, 1.913081416576326780e-04, 1.917963518382258085e-04, 1.922842176867925327e-04, 1.927717384334865056e-04, 1.932589133090739837e-04, 1.937457415449231725e-04, 1.942322223729852531e-04, 1.947183550258821481e-04, 1.952041387368411444e-04, 1.956895727396783051e-04, 1.961746562688797843e-04, 1.966593885594795834e-04, 1.971437688472089001e-04, 1.976277963683681924e-04, 1.981114703599144570e-04, 1.985947900594321454e-04, 1.990777547051194218e-04, 1.995603635357720085e-04, 2.000426157908688919e-04, 2.005245107105081107e-04, 2.010060475353871048e-04, 2.014872255068912406e-04, 2.019680438669625136e-04, 2.024485018582552944e-04, 2.029285987240071461e-04, 2.034083337081349656e-04, 2.038877060551518255e-04, 2.043667150102656095e-04, 2.048453598192488808e-04, 2.053236397285917547e-04, 2.058015539853765106e-04, 2.062791018373599100e-04, 2.067562825329567712e-04, 2.072330953211749165e-04, 2.077095394517034540e-04, 2.081856141748902531e-04, 2.086613187417351136e-04, 2.091366524038790328e-04, 2.096116144135832800e-04, 2.100862040238168915e-04, 2.105604204881940313e-04, 2.110342630609533094e-04, 2.115077309970332968e-04, 2.119808235520002904e-04, 2.124535399820907055e-04, 2.129258795441905027e-04, 2.133978414958823241e-04, 2.138694250953685145e-04, 2.143406296015685369e-04, 2.148114542739948862e-04, 2.152818983729004045e-04, 2.157519611591537879e-04, 2.162216418943230700e-04, 2.166909398406498179e-04, 2.171598542610335197e-04, 2.176283844190180319e-04, 2.180965295788711057e-04, 2.185642890055255962e-04, 2.190316619645610579e-04, 2.194986477222848973e-04, 2.199652455456095059e-04, 2.204314547022021237e-04, 2.208972744603575811e-04, 2.213627040890832733e-04, 2.218277428580708627e-04, 2.222923900376857619e-04, 2.227566448989460191e-04, 2.232205067136217665e-04, 2.236839747541157137e-04, 2.241470482935521073e-04, 2.246097266057555883e-04, 2.250720089651899077e-04, 2.255338946470410849e-04, 2.259953829272011449e-04, 2.264564730822538063e-04, 2.269171643894502769e-04, 2.273774561267876142e-04, 2.278373475728907101e-04, 2.282968380071532101e-04, 2.287559267096206091e-04, 2.292146129610673924e-04, 2.296728960429826973e-04, 2.301307752375061552e-04, 2.305882498275153869e-04, 2.310453190966013095e-04, 2.315019823290642611e-04, 2.319582388098987129e-04, 2.324140878247815873e-04, 2.328695286601491275e-04, 2.333245606031371041e-04, 2.337791829415667745e-04, 2.342333949640111276e-04, 2.346871959597382885e-04, 2.351405852187014899e-04, 2.355935620316211186e-04, 2.360461256899264398e-04, 2.364982754857346725e-04, 2.369500107119334152e-04, 2.374013306620620888e-04, 2.378522346304522324e-04, 2.383027219121086474e-04, 2.387527918027907130e-04, 2.392024435989841154e-04, 2.396516765978908459e-04, 2.401004900974101192e-04, 2.405488833962203662e-04, 2.409968557937220964e-04, 2.414444065900143706e-04, 2.418915350859798027e-04, 2.423382405831629662e-04, 2.427845223839151894e-04, 2.432303797912709834e-04, 2.436758121090420429e-04, 2.441208186417392911e-04, 2.445653986946604843e-04, 2.450095515737733885e-04, 2.454532765858578099e-04, 2.458965730383846525e-04, 2.463394402395991029e-04, 2.467818774984965619e-04, 2.472238841247740172e-04, 2.476654594288985652e-04, 2.481066027220991716e-04, 2.485473133163497569e-04, 2.489875905243670289e-04, 2.494274336595850034e-04, 2.498668420362415779e-04, 2.503058149693160274e-04, 2.507443517745129580e-04, 2.511824517683202578e-04, 2.516201142679916412e-04, 2.520573385914885896e-04, 2.524941240575607451e-04, 2.529304699857260158e-04, 2.533663756962624978e-04, 2.538018405102000731e-04, 2.542368637493005686e-04, 2.546714447361481245e-04, 2.551055827940424542e-04, 2.555392772470780455e-04, 2.559725274201159716e-04, 2.564053326387738074e-04, 2.568376922294096924e-04, 2.572696055192002303e-04, 2.577010718360813997e-04, 2.581320905087328339e-04, 2.585626608666540937e-04, 2.589927822400531579e-04, 2.594224539599772317e-04, 2.598516753582028093e-04, 2.602804457673124345e-04, 2.607087645206656451e-04, 2.611366309523925210e-04, 2.615640443973715670e-04, 2.619910041913119493e-04, 2.624175096706962500e-04, 2.628435601727598667e-04, 2.632691550355698885e-04, 2.636942935979122850e-04, 2.641189751994259672e-04, 2.645431991804879715e-04, 2.649669648823034475e-04, 2.653902716468467863e-04, 2.658131188168526759e-04, 2.662355057358968742e-04, 2.666574317483352222e-04, 2.670788961992915018e-04, 2.674998984347087719e-04, 2.679204378013372257e-04, 2.683405136466733673e-04, 2.687601253190427899e-04, 2.691792721675757816e-04, 2.695979535422038018e-04, 2.700161687936475006e-04, 2.704339172734014315e-04, 2.708511983338090785e-04, 2.712680113280084831e-04, 2.716843556099125118e-04, 2.721002305342783536e-04, 2.725156354566384020e-04, 2.729305697333464964e-04, 2.733450327215513590e-04, 2.737590237792390953e-04, 2.741725422651702026e-04, 2.745855875389639203e-04, 2.749981589609828167e-04, 2.754102558924700493e-04, 2.758218776954380713e-04, 2.762330237327387250e-04, 2.766436933680422629e-04, 2.770538859658270474e-04, 2.774636008913599814e-04, 2.778728375107739198e-04, 2.782815951910135141e-04, 2.786898732998153170e-04, 2.790976712057851401e-04, 2.795049882782868153e-04, 2.799118238875717020e-04, 2.803181774046708099e-04, 2.807240482014683068e-04, 2.811294356506761493e-04, 2.815343391258231316e-04, 2.819387580012403037e-04, 2.823426916521439662e-04, 2.827461394545340272e-04, 2.831491007852705464e-04, 2.835515750220530813e-04, 2.839535615433726569e-04, 2.843550597285794202e-04, 2.847560689578688162e-04, 2.851565886122733482e-04, 2.855566180736523324e-04, 2.859561567246776941e-04, 2.863552039489041163e-04, 2.867537591307193828e-04, 2.871518216553246459e-04, 2.875493909087887450e-04, 2.879464662780345996e-04, 2.883430471507828310e-04, 2.887391329156266807e-04, 2.891347229620134704e-04, 2.895298166802375006e-04, 2.899244134614319731e-04, 2.903185126975521861e-04, 2.907121137814462782e-04, 2.911052161068064395e-04, 2.914978190681480948e-04, 2.918899220608732210e-04, 2.922815244812215036e-04, 2.926726257262586822e-04, 2.930632251939521726e-04, 2.934533222831130629e-04, 2.938429163933870599e-04, 2.942320069253182946e-04, 2.946205932802495211e-04, 2.950086748604441983e-04, 2.953962510689847371e-04, 2.957833213098387450e-04, 2.961698849878354996e-04, 2.965559415086638879e-04, 2.969414902788442717e-04, 2.973265307058107240e-04, 2.977110621978541088e-04, 2.980950841641031072e-04, 2.984785960146011416e-04, 2.988615971601971968e-04, 2.992440870126726171e-04, 2.996260649846345294e-04, 3.000075304895974296e-04, 3.003884829419219788e-04, 3.007689217568488855e-04, 3.011488463504865989e-04, 3.015282561398441069e-04, 3.019071505427717381e-04, 3.022855289780220943e-04, 3.026633908652346001e-04, 3.030407356248823779e-04, 3.034175626783476533e-04, 3.037938714478987702e-04, 3.041696613566852040e-04, 3.045449318287313267e-04, 3.049196822889184096e-04, 3.052939121630540123e-04, 3.056676208778224884e-04, 3.060408078607678014e-04, 3.064134725403462709e-04, 3.067856143459088457e-04, 3.071572327076537248e-04, 3.075283270566935771e-04, 3.078988968250482780e-04, 3.082689414455926503e-04, 3.086384603521381050e-04, 3.090074529793277987e-04, 3.093759187627570344e-04, 3.097438571388750868e-04, 3.101112675450508512e-04, 3.104781494195488819e-04, 3.108445022015209904e-04, 3.112103253309946981e-04, 3.115756182489338977e-04, 3.119403803971981955e-04, 3.123046112185175953e-04, 3.126683101565684466e-04, 3.130314766558690365e-04, 3.133941101618989596e-04, 3.137562101210009439e-04, 3.141177759804450356e-04, 3.144788071884156971e-04, 3.148393031939634512e-04, 3.151992634470687413e-04, 3.155586873986288119e-04, 3.159175745004507156e-04, 3.162759242052238292e-04, 3.166337359665908138e-04, 3.169910092390555126e-04, 3.173477434780580314e-04, 3.177039381399609694e-04, 3.180595926820370054e-04, 3.184147065624694933e-04, 3.187692792403295323e-04, 3.191233101756467644e-04, 3.194767988293579293e-04, 3.198297446632941254e-04, 3.201821471402292729e-04, 3.205340057238640142e-04, 3.208853198787789841e-04, 3.212360890705007839e-04, 3.215863127654843630e-04, 3.219359904311084653e-04, 3.222851215356670098e-04, 3.226337055483530984e-04, 3.229817419393248273e-04, 3.233292301796599128e-04, 3.236761697413352546e-04, 3.240225600972918246e-04, 3.243684007213710791e-04, 3.247136910883510622e-04, 3.250584306739337753e-04, 3.254026189547754261e-04, 3.257462554084289657e-04, 3.260893395134239407e-04, 3.264318707491619211e-04, 3.267738485960383654e-04, 3.271152725353400543e-04, 3.274561420493141009e-04, 3.277964566211436100e-04, 3.281362157349411186e-04, 3.284754188757315740e-04, 3.288140655295196087e-04, 3.291521551832393960e-04, 3.294896873247418019e-04, 3.298266614428577571e-04, 3.301630770273056661e-04, 3.304989335687983634e-04, 3.308342305589556730e-04, 3.311689674903631176e-04, 3.315031438565568486e-04, 3.318367591519821749e-04, 3.321698128720531403e-04, 3.325023045131435782e-04, 3.328342335725467259e-04, 3.331655995485251513e-04, 3.334964019402999655e-04, 3.338266402480026844e-04, 3.341563139727379492e-04, 3.344854226165695950e-04, 3.348139656825148500e-04, 3.351419426745332769e-04, 3.354693530975176108e-04, 3.357961964573510602e-04, 3.361224722608655642e-04, 3.364481800158251510e-04, 3.367733192309733709e-04, 3.370978894160184432e-04, 3.374218900815891290e-04, 3.377453207392939831e-04, 3.380681809017095358e-04, 3.383904700823735169e-04, 3.387121877957752604e-04, 3.390333335573441579e-04, 3.393539068835082595e-04, 3.396739072916515564e-04, 3.399933343001005910e-04, 3.403121874281728122e-04, 3.406304661961406344e-04, 3.409481701252177217e-04, 3.412652987376195955e-04, 3.415818515565250367e-04, 3.418978281060556482e-04, 3.422132279113402568e-04, 3.425280504984262796e-04, 3.428422953943802295e-04, 3.431559621272056953e-04, 3.434690502258973353e-04, 3.437815592204307934e-04, 3.440934886417173805e-04, 3.444048380216643552e-04, 3.447156068931611552e-04, 3.450257947900702352e-04, 3.453354012472095572e-04, 3.456444258004098369e-04, 3.459528679864270475e-04, 3.462607273430479138e-04, 3.465680034089972119e-04, 3.468746957240130134e-04, 3.471808038287885179e-04, 3.474863272650027899e-04, 3.477912655753128985e-04, 3.480956183033783661e-04, 3.483993849938110785e-04, 3.487025651922285728e-04, 3.490051584452385342e-04, 3.493071643003983003e-04, 3.496085823062729746e-04, 3.499094120124173206e-04, 3.502096529693770623e-04, 3.505093047286736516e-04, 3.508083668427986845e-04, 3.511068388652669727e-04, 3.514047203505724169e-04, 3.517020108541810673e-04, 3.519987099325710771e-04, 3.522948171432158430e-04, 3.525903320445469250e-04, 3.528852541960102629e-04, 3.531795831580565267e-04, 3.534733184921062593e-04, 3.537664597606040326e-04, 3.540590065269452638e-04, 3.543509583555682100e-04, 3.546423148118738457e-04, 3.549330754622764946e-04, 3.552232398741998732e-04, 3.555128076160311195e-04, 3.558017782571740823e-04, 3.560901513680414065e-04, 3.563779265200441785e-04, 3.566651032855764768e-04, 3.569516812380640522e-04, 3.572376599518917954e-04, 3.575230390024896048e-04, 3.578078179662610471e-04, 3.580919964206319287e-04, 3.583755739440393998e-04, 3.586585501158924896e-04, 3.589409245166275087e-04, 3.592226967276903227e-04, 3.595038663315377071e-04, 3.597844329116113809e-04, 3.600643960523953069e-04, 3.603437553393427787e-04, 3.606225103589368649e-04, 3.609006606986760982e-04, 3.611782059470714933e-04, 3.614551456936353257e-04, 3.617314795288753852e-04, 3.620072070443443074e-04, 3.622823278325991870e-04, 3.625568414871929040e-04, 3.628307476027124506e-04, 3.631040457747632100e-04, 3.633767355999387616e-04, 3.636488166758621889e-04, 3.639202886011838026e-04, 3.641911509755699737e-04, 3.644614033996974411e-04, 3.647310454752428492e-04, 3.650000768049351690e-04, 3.652684969925135768e-04, 3.655363056427198649e-04, 3.658035023613415387e-04, 3.660700867551678521e-04, 3.663360584320188101e-04, 3.666014170007268454e-04, 3.668661620711686404e-04, 3.671302932542172591e-04, 3.673938101618036758e-04, 3.676567124068374115e-04, 3.679189996032983115e-04, 3.681806713661596214e-04, 3.684417273114404625e-04, 3.687021670561928212e-04, 3.689619902184643608e-04, 3.692211964173524154e-04, 3.694797852729839855e-04, 3.697377564065174732e-04, 3.699951094401246303e-04, 3.702518439970339803e-04, 3.705079597014652787e-04, 3.707634561787111530e-04, 3.710183330550639196e-04, 3.712725899578749435e-04, 3.715262265155085597e-04, 3.717792423573697204e-04, 3.720316371138908222e-04, 3.722834104165572387e-04, 3.725345618978634105e-04, 3.727850911913592490e-04, 3.730349979316358792e-04, 3.732842817542916499e-04, 3.735329422959784290e-04, 3.737809791943947735e-04, 3.740283920882729184e-04, 3.742751806173818131e-04, 3.745213444225093942e-04, 3.747668831455150612e-04, 3.750117964292890189e-04, 3.752560839177486451e-04, 3.754997452558654332e-04, 3.757427800896622817e-04, 3.759851880661746796e-04, 3.762269688334967310e-04, 3.764681220407735114e-04, 3.767086473381902256e-04, 3.769485443769739967e-04, 3.771878128093795546e-04, 3.774264522887385673e-04, 3.776644624694023948e-04, 3.779018430067831807e-04, 3.781385935573478886e-04, 3.783747137785818736e-04, 3.786102033290332253e-04, 3.788450618683059383e-04, 3.790792890570516714e-04, 3.793128845569541897e-04, 3.795458480307751180e-04, 3.797781791422881296e-04, 3.800098775563550573e-04, 3.802409429388607328e-04, 3.804713749567591738e-04, 3.807011732780618204e-04, 3.809303375718028407e-04, 3.811588675080888953e-04, 3.813867627580852060e-04, 3.816140229940087787e-04, 3.818406478891153938e-04, 3.820666371177421062e-04, 3.822919903552462052e-04, 3.825167072780750370e-04, 3.827407875637057772e-04, 3.829642308906962798e-04, 3.831870369386459379e-04, 3.834092053882025676e-04, 3.836307359210901647e-04, 3.838516282200934537e-04, 3.840718819690346866e-04, 3.842914968528134871e-04, 3.845104725573941654e-04, 3.847288087697756315e-04, 3.849465051780322157e-04, 3.851635614713052659e-04, 3.853799773397946905e-04, 3.855957524747618864e-04, 3.858108865685108192e-04, 3.860253793144360532e-04, 3.862392304069906055e-04, 3.864524395416765127e-04, 3.866650064150800137e-04, 3.868769307248230856e-04, 3.870882121696228042e-04, 3.872988504492401690e-04, 3.875088452645187556e-04, 3.877181963173512136e-04, 3.879269033107186774e-04, 3.881349659486373689e-04, 3.883423839362238131e-04, 3.885491569796371033e-04, 3.887552847861203728e-04, 3.889607670639891931e-04, 3.891656035226061499e-04, 3.893697938724147785e-04, 3.895733378249336006e-04, 3.897762350927539560e-04, 3.899784853895217878e-04, 3.901800884299755899e-04, 3.903810439298951778e-04, 3.905813516061634348e-04, 3.907810111767134561e-04, 3.909800223605634610e-04, 3.911783848778094741e-04, 3.913760984495973528e-04, 3.915731627981619274e-04, 3.917695776468149119e-04, 3.919653427199433320e-04, 3.921604577429944004e-04, 3.923549224425151448e-04, 3.925487365461000403e-04, 3.927418997824318843e-04, 3.929344118812744236e-04, 3.931262725734704574e-04, 3.933174815909328383e-04, 3.935080386666386714e-04, 3.936979435346665032e-04, 3.938871959301674811e-04, 3.940757955893573849e-04, 3.942637422495457377e-04, 3.944510356491242047e-04, 3.946376755275424154e-04, 3.948236616253420622e-04, 3.950089936841537559e-04, 3.951936714466813588e-04, 3.953776946567109300e-04, 3.955610630590961421e-04, 3.957437763997912958e-04, 3.959258344258304485e-04, 3.961072368853171691e-04, 3.962879835274571178e-04, 3.964680741025116426e-04, 3.966475083618532359e-04, 3.968262860579183180e-04, 3.970044069442418768e-04, 3.971818707754275982e-04, 3.973586773071874400e-04, 3.975348262962814577e-04, 3.977103175005946754e-04, 3.978851506790673708e-04, 3.980593255917451120e-04, 3.982328419997594577e-04, 3.984056996653086049e-04, 3.985778983516909992e-04, 3.987494378232954136e-04, 3.989203178456002990e-04, 3.990905381851561108e-04, 3.992600986096247746e-04, 3.994289988877259634e-04, 3.995972387892975965e-04, 3.997648180852466163e-04, 3.999317365475847132e-04, 4.000979939494001361e-04, 4.002635900648778043e-04, 4.004285246692860264e-04, 4.005927975389973706e-04, 4.007564084514574944e-04, 4.009193571852171824e-04, 4.010816435199200951e-04, 4.012432672362843916e-04, 4.014042281161294551e-04, 4.015645259423733450e-04, 4.017241604990239067e-04, 4.018831315711786085e-04, 4.020414389450177660e-04, 4.021990824078319716e-04, 4.023560617480048565e-04, 4.025123767549988870e-04, 4.026680272193913063e-04, 4.028230129328276760e-04, 4.029773336880723461e-04, 4.031309892789685019e-04, 4.032839795004654858e-04, 4.034363041486053536e-04, 4.035879630205242295e-04, 4.037389559144441203e-04, 4.038892826297021889e-04, 4.040389429667163852e-04, 4.041879367270117380e-04, 4.043362637132128195e-04, 4.044839237290238508e-04, 4.046309165792573784e-04, 4.047772420698280403e-04, 4.049229000077462235e-04, 4.050678902011129140e-04, 4.052122124591417602e-04, 4.053558665921232944e-04, 4.054988524114686260e-04, 4.056411697296730665e-04, 4.057828183603417170e-04, 4.059237981181797097e-04, 4.060641088189780598e-04, 4.062037502796362709e-04, 4.063427223181579435e-04, 4.064810247536462221e-04, 4.066186574062989156e-04, 4.067556200974232431e-04, 4.068919126494136072e-04, 4.070275348857833072e-04, 4.071624866311300073e-04, 4.072967677111714608e-04, 4.074303779527159658e-04, 4.075633171836651842e-04, 4.076955852330413550e-04, 4.078271819309633875e-04, 4.079581071086462113e-04, 4.080883605984211046e-04, 4.082179422337020298e-04, 4.083468518490275382e-04, 4.084750892800241779e-04, 4.086026543634313220e-04, 4.087295469370925494e-04, 4.088557668399543979e-04, 4.089813139120558475e-04, 4.091061879945566177e-04, 4.092303889297167849e-04, 4.093539165608955899e-04, 4.094767707325687846e-04, 4.095989512902988711e-04, 4.097204580807741869e-04, 4.098412909517710123e-04, 4.099614497521883189e-04, 4.100809343320142679e-04, 4.101997445423628016e-04, 4.103178802354270774e-04, 4.104353412645349243e-04, 4.105521274840979941e-04, 4.106682387496510094e-04, 4.107836749178344162e-04, 4.108984358463818078e-04, 4.110125213941420957e-04, 4.111259314210762039e-04, 4.112386657882524058e-04, 4.113507243578343447e-04, 4.114621069931143722e-04, 4.115728135584673076e-04, 4.116828439193991182e-04, 4.117921979425090266e-04, 4.119008754955113031e-04, 4.120088764472349947e-04, 4.121162006676007232e-04, 4.122228480276494164e-04, 4.123288183995328757e-04, 4.124341116565044519e-04, 4.125387276729387777e-04, 4.126426663243009762e-04, 4.127459274871834701e-04, 4.128485110392789842e-04, 4.129504168593921471e-04, 4.130516448274416052e-04, 4.131521948244531377e-04, 4.132520667325513086e-04, 4.133512604349905291e-04, 4.134497758161242119e-04, 4.135476127614162636e-04, 4.136447711574505717e-04, 4.137412508919027614e-04, 4.138370518535802018e-04, 4.139321739323874208e-04, 4.140266170193451323e-04, 4.141203810065879594e-04, 4.142134657873572249e-04, 4.143058712560005168e-04, 4.143975973079858923e-04, 4.144886438398948840e-04, 4.145790107494082971e-04, 4.146686979353353202e-04, 4.147577052975792646e-04, 4.148460327371636933e-04, 4.149336801562271090e-04, 4.150206474580175864e-04, 4.151069345468927189e-04, 4.151925413283297011e-04, 4.152774677089026692e-04, 4.153617135963162026e-04, 4.154452788993745873e-04, 4.155281635280004635e-04, 4.156103673932329289e-04, 4.156918904072116547e-04, 4.157727324831969433e-04, 4.158528935355624103e-04, 4.159323734797947133e-04, 4.160111722324885100e-04, 4.160892897113602825e-04, 4.161667258352247552e-04, 4.162434805240259575e-04, 4.163195536988103357e-04, 4.163949452817448048e-04, 4.164696551961042802e-04, 4.165436833662775865e-04, 4.166170297177666988e-04, 4.166896941771928140e-04, 4.167616766722793834e-04, 4.168329771318787834e-04, 4.169035954859387060e-04, 4.169735316655357143e-04, 4.170427856028512278e-04, 4.171113572311827976e-04, 4.171792464849455166e-04, 4.172464532996635620e-04, 4.173129776119709547e-04, 4.173788193596239190e-04, 4.174439784814906371e-04, 4.175084549175477251e-04, 4.175722486088950867e-04, 4.176353594977312480e-04, 4.176977875273861539e-04, 4.177595326422907027e-04, 4.178205947879991885e-04, 4.178809739111690271e-04, 4.179406699595858009e-04, 4.179996828821313831e-04, 4.180580126288174401e-04, 4.181156591507609820e-04, 4.181726224001946091e-04, 4.182289023304697640e-04, 4.182844988960431249e-04, 4.183394120524897789e-04, 4.183936417565004571e-04, 4.184471879658783360e-04, 4.185000506395396887e-04, 4.185522297375166489e-04, 4.186037252209511396e-04, 4.186545370521045227e-04, 4.187046651943478952e-04, 4.187541096121684316e-04, 4.188028702711692219e-04, 4.188509471380608140e-04, 4.188983401806704843e-04, 4.189450493679422374e-04, 4.189910746699325775e-04, 4.190364160578124064e-04, 4.190810735038588914e-04, 4.191250469814739510e-04, 4.191683364651647937e-04, 4.192109419305587717e-04, 4.192528633543933514e-04, 4.192941007145182283e-04, 4.193346539898981456e-04, 4.193745231606117556e-04, 4.194137082078530296e-04, 4.194522091139236681e-04, 4.194900258622465453e-04, 4.195271584373489577e-04, 4.195636068248786705e-04, 4.195993710115917749e-04, 4.196344509853619574e-04, 4.196688467351740491e-04, 4.197025582511258691e-04, 4.197355855244247545e-04, 4.197679285473970476e-04, 4.197995873134773622e-04, 4.198305618172153055e-04, 4.198608520542763457e-04, 4.198904580214285844e-04, 4.199193797165648749e-04, 4.199476171386799989e-04, 4.199751702878898037e-04, 4.200020391654175401e-04, 4.200282237735989050e-04, 4.200537241158834503e-04, 4.200785401968329565e-04, 4.201026720221201320e-04, 4.201261195985295347e-04, 4.201488829339597940e-04, 4.201709620374171066e-04, 4.201923569190232585e-04, 4.202130675900102590e-04, 4.202330940627232135e-04, 4.202524363506160952e-04, 4.202710944682531004e-04, 4.202890684313142318e-04, 4.203063582565890648e-04, 4.203229639619729526e-04, 4.203388855664830183e-04, 4.203541230902358198e-04, 4.203686765544660531e-04, 4.203825459815141918e-04, 4.203957313948352152e-04, 4.204082328189931873e-04, 4.204200502796611480e-04, 4.204311838036230110e-04, 4.204416334187734551e-04, 4.204513991541170025e-04, 4.204604810397662303e-04, 4.204688791069458357e-04, 4.204765933879891127e-04, 4.204836239163358921e-04, 4.204899707265396429e-04, 4.204956338542622683e-04, 4.205006133362725875e-04, 4.205049092104496972e-04, 4.205085215157800438e-04, 4.205114502923612183e-04, 4.205136955813974027e-04, 4.205152574252009421e-04, 4.205161358671933203e-04, 4.205163309519045637e-04, 4.205158427249709101e-04, 4.205146712331362183e-04, 4.205128165242551664e-04, 4.205102786472866383e-04, 4.205070576522955666e-04, 4.205031535904598175e-04, 4.204985665140584272e-04, 4.204932964764806548e-04, 4.204873435322195856e-04, 4.204807077368779319e-04, 4.204733891471634788e-04, 4.204653878208881087e-04, 4.204567038169733308e-04, 4.204473371954437757e-04, 4.204372880174296894e-04, 4.204265563451707274e-04, 4.204151422420066854e-04, 4.204030457723840044e-04, 4.203902670018565832e-04, 4.203768059970792201e-04, 4.203626628258141712e-04, 4.203478375569283322e-04, 4.203323302603903110e-04, 4.203161410072739509e-04, 4.202992698697580057e-04, 4.202817169211237004e-04, 4.202634822357550560e-04, 4.202445658891413292e-04, 4.202249679578730010e-04, 4.202046885196442159e-04, 4.201837276532530531e-04, 4.201620854385962681e-04, 4.201397619566780745e-04, 4.201167572895999529e-04, 4.200930715205685112e-04, 4.200687047338872988e-04, 4.200436570149710096e-04, 4.200179284503227140e-04, 4.199915191275571690e-04, 4.199644291353848264e-04, 4.199366585636168741e-04, 4.199082075031651280e-04, 4.198790760460422485e-04, 4.198492642853614157e-04, 4.198187723153340521e-04, 4.197876002312704189e-04, 4.197557481295833030e-04, 4.197232161077799387e-04, 4.196900042644688389e-04, 4.196561126993588191e-04, 4.196215415132520041e-04, 4.195862908080543450e-04, 4.195503606867655362e-04, 4.195137512534815086e-04, 4.194764626134013150e-04, 4.194384948728169921e-04, 4.193998481391181688e-04, 4.193605225207893013e-04, 4.193205181274153111e-04, 4.192798350696737785e-04, 4.192384734593389544e-04, 4.191964334092806218e-04, 4.191537150334652341e-04, 4.191103184469521206e-04, 4.190662437658949501e-04, 4.190214911075449832e-04, 4.189760605902476034e-04, 4.189299523334387930e-04, 4.188831664576496872e-04, 4.188357030845045134e-04, 4.187875623367250371e-04, 4.187387443381192318e-04, 4.186892492135934219e-04, 4.186390770891417119e-04, 4.185882280918532504e-04, 4.185367023499057251e-04, 4.184844999925740904e-04, 4.184316211502201051e-04, 4.183780659542960727e-04, 4.183238345373481481e-04, 4.182689270330084232e-04, 4.182133435760051186e-04, 4.181570843021521202e-04, 4.181001493483516365e-04, 4.180425388525988058e-04, 4.179842529539741611e-04, 4.179252917926480214e-04, 4.178656555098834188e-04, 4.178053442480246602e-04, 4.177443581505058384e-04, 4.176826973618527291e-04, 4.176203620276682633e-04, 4.175573522946550778e-04, 4.174936683105918262e-04, 4.174293102243490619e-04, 4.173642781858800770e-04, 4.172985723462240460e-04, 4.172321928575094415e-04, 4.171651398729438968e-04, 4.170974135468228251e-04, 4.170290140345246492e-04, 4.169599414925114519e-04, 4.168901960783295726e-04, 4.168197779506103116e-04, 4.167486872690653226e-04, 4.166769241944901902e-04, 4.166044888887603646e-04, 4.165313815148351728e-04, 4.164576022367592824e-04, 4.163831512196514259e-04, 4.163080286297145380e-04, 4.162322346342336955e-04, 4.161557694015696122e-04, 4.160786331011692642e-04, 4.160008259035532043e-04, 4.159223479803272720e-04, 4.158431995041669805e-04, 4.157633806488376287e-04, 4.156828915891708828e-04, 4.156017325010880319e-04, 4.155199035615778167e-04, 4.154374049487128545e-04, 4.153542368416378761e-04, 4.152703994205745501e-04, 4.151858928668201824e-04, 4.151007173627551967e-04, 4.150148730918259499e-04, 4.149283602385540025e-04, 4.148411789885419728e-04, 4.147533295284578161e-04, 4.146648120460538528e-04, 4.145756267301456801e-04, 4.144857737706293568e-04, 4.143952533584685017e-04, 4.143040656856998225e-04, 4.142122109454309475e-04, 4.141196893318485031e-04, 4.140265010401995198e-04, 4.139326462668089417e-04, 4.138381252090688389e-04, 4.137429380654384617e-04, 4.136470850354535106e-04, 4.135505663197159990e-04, 4.134533821198945781e-04, 4.133555326387235076e-04, 4.132570180800100817e-04, 4.131578386486326241e-04, 4.130579945505281274e-04, 4.129574859927029871e-04, 4.128563131832310501e-04, 4.127544763312520964e-04, 4.126519756469644671e-04, 4.125488113416458805e-04, 4.124449836276299053e-04, 4.123404927183120863e-04, 4.122353388281526005e-04, 4.121295221726782631e-04, 4.120230429684809551e-04, 4.119159014332086249e-04, 4.118080977855727689e-04, 4.116996322453501120e-04, 4.115905050333739886e-04, 4.114807163715393295e-04, 4.113702664828111188e-04, 4.112591555912008669e-04, 4.111473839217820599e-04, 4.110349517006939551e-04, 4.109218591551245039e-04, 4.108081065133348015e-04, 4.106936940046276982e-04, 4.105786218593750138e-04, 4.104628903089972626e-04, 4.103464995859728692e-04, 4.102294499238380056e-04, 4.101117415571910369e-04, 4.099933747216730597e-04, 4.098743496539844901e-04, 4.097546665918852808e-04, 4.096343257741761105e-04, 4.095133274407285239e-04, 4.093916718324516475e-04, 4.092693591913152285e-04, 4.091463897603365703e-04, 4.090227637835857364e-04, 4.088984815061849545e-04, 4.087735431743082909e-04, 4.086479490351731941e-04, 4.085216993370533963e-04, 4.083947943292685055e-04, 4.082672342621812946e-04, 4.081390193872146154e-04, 4.080101499568353522e-04, 4.078806262245504100e-04, 4.077504484449156054e-04, 4.076196168735332268e-04, 4.074881317670628225e-04, 4.073559933831924149e-04, 4.072232019806585040e-04, 4.070897578192520308e-04, 4.069556611597939825e-04, 4.068209122641536072e-04, 4.066855113952473838e-04, 4.065494588170340891e-04, 4.064127547945054191e-04, 4.062753995936979157e-04, 4.061373934816893882e-04, 4.059987367266078588e-04, 4.058594295976036435e-04, 4.057194723648789515e-04, 4.055788652996689114e-04, 4.054376086742435227e-04, 4.052957027619138357e-04, 4.051531478370410592e-04, 4.050099441750015404e-04, 4.048660920522179356e-04, 4.047215917461511876e-04, 4.045764435352839370e-04, 4.044306476991576019e-04, 4.042842045183219629e-04, 4.041371142743783681e-04, 4.039893772499506767e-04, 4.038409937286937157e-04, 4.036919639953059111e-04, 4.035422883355128075e-04, 4.033919670360641414e-04, 4.032410003847412675e-04, 4.030893886703624716e-04, 4.029371321827628582e-04, 4.027842312128259014e-04, 4.026306860524411064e-04, 4.024764969945454260e-04, 4.023216643330835250e-04, 4.021661883630361857e-04, 4.020100693804220431e-04, 4.018533076822645707e-04, 4.016959035666183724e-04, 4.015378573325722729e-04, 4.013791692802269823e-04, 4.012198397107027948e-04, 4.010598689261612722e-04, 4.008992572297761332e-04, 4.007380049257376988e-04, 4.005761123192553858e-04, 4.004135797165682235e-04, 4.002504074249400292e-04, 4.000865957526381035e-04, 3.999221450089535048e-04, 3.997570555042023505e-04, 3.995913275497077650e-04, 3.994249614578188534e-04, 3.992579575418972568e-04, 3.990903161163239293e-04, 3.989220374964849345e-04, 3.987531219987960028e-04, 3.985835699406666444e-04, 3.984133816405468240e-04, 3.982425574178740518e-04, 3.980710975931141499e-04, 3.978990024877372363e-04, 3.977262724242209245e-04, 3.975529077260606223e-04, 3.973789087177693156e-04, 3.972042757248520897e-04, 3.970290090738277586e-04, 3.968531090922316302e-04, 3.966765761085918164e-04, 3.964994104524652827e-04, 3.963216124543912817e-04, 3.961431824459337998e-04, 3.959641207596496814e-04, 3.957844277290978991e-04, 3.956041036888568465e-04, 3.954231489745010280e-04, 3.952415639225982939e-04, 3.950593488707330428e-04, 3.948765041574795495e-04, 3.946930301224108560e-04, 3.945089271061174197e-04, 3.943241954501799538e-04, 3.941388354971710542e-04, 3.939528475906633846e-04, 3.937662320752326585e-04, 3.935789892964615421e-04, 3.933911196009094594e-04, 3.932026233361365529e-04, 3.930135008507084542e-04, 3.928237524941754675e-04, 3.926333786170750086e-04, 3.924423795709627220e-04, 3.922507557083686246e-04, 3.920585073828156998e-04, 3.918656349488150187e-04, 3.916721387618743596e-04, 3.914780191785026528e-04, 3.912832765561787018e-04, 3.910879112533735720e-04, 3.908919236295587221e-04, 3.906953140451767848e-04, 3.904980828616665578e-04, 3.903002304414623534e-04, 3.901017571479667304e-04, 3.899026633455682754e-04, 3.897029493996547215e-04, 3.895026156765767902e-04, 3.893016625436940530e-04, 3.891000903693208842e-04, 3.888978995227746534e-04, 3.886950903743412481e-04, 3.884916632952798983e-04, 3.882876186578541303e-04, 3.880829568352912179e-04, 3.878776782017937289e-04, 3.876717831325405010e-04, 3.874652720036999231e-04, 3.872581451923963252e-04, 3.870504030767589845e-04, 3.868420460358614637e-04, 3.866330744497738703e-04, 3.864234886995223609e-04, 3.862132891671180360e-04, 3.860024762355397546e-04, 3.857910502887432419e-04, 3.855790117116401645e-04, 3.853663608901309267e-04, 3.851530982110724162e-04, 3.849392240622844007e-04, 3.847247388325774459e-04, 3.845096429117156735e-04, 3.842939366904257054e-04, 3.840776205603998084e-04, 3.838606949142986044e-04, 3.836431601457621294e-04, 3.834250166493734040e-04, 3.832062648206770281e-04, 3.829869050562004305e-04, 3.827669377534137539e-04, 3.825463633107466601e-04, 3.823251821276101221e-04, 3.821033946043609166e-04, 3.818810011423056359e-04, 3.816580021437286597e-04, 3.814343980118459145e-04, 3.812101891508648836e-04, 3.809853759659141887e-04, 3.807599588631020281e-04, 3.805339382494771997e-04, 3.803073145330366903e-04, 3.800800881227550036e-04, 3.798522594285430685e-04, 3.796238288612615208e-04, 3.793947968327172340e-04, 3.791651637556845691e-04, 3.789349300438636875e-04, 3.787040961119359536e-04, 3.784726623754953046e-04, 3.782406292511093456e-04, 3.780079971562763067e-04, 3.777747665094351799e-04, 3.775409377299935297e-04, 3.773065112382909545e-04, 3.770714874556014727e-04, 3.768358668041453942e-04, 3.765996497070973979e-04, 3.763628365885494519e-04, 3.761254278735641564e-04, 3.758874239881267675e-04, 3.756488253591578285e-04, 3.754096324145175605e-04, 3.751698455830039113e-04, 3.749294652943717995e-04, 3.746884919792834584e-04, 3.744469260693422089e-04, 3.742047679971007533e-04, 3.739620181960297339e-04, 3.737186771005264604e-04, 3.734747451459484121e-04, 3.732302227685668338e-04, 3.729851104055806137e-04, 3.727394084951137355e-04, 3.724931174762291020e-04, 3.722462377889296735e-04, 3.719987698741223639e-04, 3.717507141736440071e-04, 3.715020711302738257e-04, 3.712528411876959717e-04, 3.710030247905309140e-04, 3.707526223843222654e-04, 3.705016344155380838e-04, 3.702500613315520611e-04, 3.699979035806828798e-04, 3.697451616121401113e-04, 3.694918358760936050e-04, 3.692379268235907635e-04, 3.689834349066249014e-04, 3.687283605780920944e-04, 3.684727042917956786e-04, 3.682164665024848481e-04, 3.679596476658048357e-04, 3.677022482383125257e-04, 3.674442686774735808e-04, 3.671857094416855895e-04, 3.669265709902298192e-04, 3.666668537833331245e-04, 3.664065582820997505e-04, 3.661456849485648381e-04, 3.658842342456594589e-04, 3.656222066372130544e-04, 3.653596025879914371e-04, 3.650964225636499534e-04, 3.648326670307367359e-04, 3.645683364567251753e-04, 3.643034313099780333e-04, 3.640379520597519965e-04, 3.637718991762360567e-04, 3.635052731305021259e-04, 3.632380743945165828e-04, 3.629703034411437966e-04, 3.627019607441540417e-04, 3.624330467782316831e-04, 3.621635620189266589e-04, 3.618935069426956253e-04, 3.616228820269035290e-04, 3.613516877497931407e-04, 3.610799245904941631e-04, 3.608075930290605268e-04, 3.605346935464163430e-04, 3.602612266243740099e-04, 3.599871927456338330e-04, 3.597125923937932951e-04, 3.594374260533543747e-04, 3.591616942096757326e-04, 3.588853973490112011e-04, 3.586085359585158014e-04, 3.583311105262024297e-04, 3.580531215410004040e-04, 3.577745694927074883e-04, 3.574954548719956929e-04, 3.572157781704201653e-04, 3.569355398804319830e-04, 3.566547404953345152e-04, 3.563733805093514018e-04, 3.560914604175422567e-04, 3.558089807158724364e-04, 3.555259419011684791e-04, 3.552423444711236343e-04, 3.549581889243375444e-04, 3.546734757602640407e-04, 3.543882054792261049e-04, 3.541023785824145686e-04, 3.538159955719134830e-04, 3.535290569506454217e-04, 3.532415632224439046e-04, 3.529535148919700775e-04, 3.526649124647820467e-04, 3.523757564472799640e-04, 3.520860473467476060e-04, 3.517957856713289553e-04, 3.515049719300385547e-04, 3.512136066327333178e-04, 3.509216902901590956e-04, 3.506292234139049232e-04, 3.503362065164109342e-04, 3.500426401110123798e-04, 3.497485247118810271e-04, 3.494538608340406636e-04, 3.491586489933751745e-04, 3.488628897066255608e-04, 3.485665834914123827e-04, 3.482697308661746104e-04, 3.479723323502119619e-04, 3.476743884636962880e-04, 3.473758997276195836e-04, 3.470768666638680399e-04, 3.467772897951321089e-04, 3.464771696449853795e-04, 3.461765067378226699e-04, 3.458753015989101168e-04, 3.455735547543285812e-04, 3.452712667310517099e-04, 3.449684380568459729e-04, 3.446650692603608684e-04, 3.443611608710640880e-04, 3.440567134192602729e-04, 3.437517274361260341e-04, 3.434462034536588863e-04, 3.431401420046883608e-04, 3.428335436228806678e-04, 3.425264088427607597e-04, 3.422187381996560614e-04, 3.419105322297742613e-04, 3.416017914701097993e-04, 3.412925164585262658e-04, 3.409827077336982887e-04, 3.406723658351235137e-04, 3.403614913031681411e-04, 3.400500846790005722e-04, 3.397381465046179182e-04, 3.394256773228407418e-04, 3.391126776773365848e-04, 3.387991481125677629e-04, 3.384850891738592376e-04, 3.381705014073390389e-04, 3.378553853599547451e-04, 3.375397415794726156e-04, 3.372235706144874573e-04, 3.369068730144350924e-04, 3.365896493295364141e-04, 3.362719001108362008e-04, 3.359536259102175902e-04, 3.356348272803601749e-04, 3.353155047747502482e-04, 3.349956589477246058e-04, 3.346752903544118361e-04, 3.343543995507446804e-04, 3.340329870934706036e-04, 3.337110535401510898e-04, 3.333885994491803985e-04, 3.330656253797253377e-04, 3.327421318917674390e-04, 3.324181195461161850e-04, 3.320935889043515467e-04, 3.317685405289068704e-04, 3.314429749829715709e-04, 3.311168928305698988e-04, 3.307902946365030980e-04, 3.304631809663999297e-04, 3.301355523866538431e-04, 3.298074094645051034e-04, 3.294787527679456530e-04, 3.291495828657974455e-04, 3.288199003276568800e-04, 3.284897057239098716e-04, 3.281589996257704492e-04, 3.278277826052244850e-04, 3.274960552350428679e-04, 3.271638180887880627e-04, 3.268310717408335177e-04, 3.264978167663056593e-04, 3.261640537411688396e-04, 3.258297832421266742e-04, 3.254950058467015678e-04, 3.251597221331735659e-04, 3.248239326806290350e-04, 3.244876380689299257e-04, 3.241508388787265661e-04, 3.238135356914298522e-04, 3.234757290892591695e-04, 3.231374196551916526e-04, 3.227986079729751410e-04, 3.224592946271707884e-04, 3.221194802030937030e-04, 3.217791652868272042e-04, 3.214383504652288943e-04, 3.210970363259370557e-04, 3.207552234573820887e-04, 3.204129124487313800e-04, 3.200701038899288219e-04, 3.197267983717089071e-04, 3.193829964855370430e-04, 3.190386988236982397e-04, 3.186939059791919424e-04, 3.183486185458186046e-04, 3.180028371181195155e-04, 3.176565622914034707e-04, 3.173097946617432492e-04, 3.169625348259980015e-04, 3.166147833817404460e-04, 3.162665409273410027e-04, 3.159178080619041507e-04, 3.155685853852845286e-04, 3.152188734981299775e-04, 3.148686730018202288e-04, 3.145179844984820837e-04, 3.141668085909933160e-04, 3.138151458830082592e-04, 3.134629969788917787e-04, 3.131103624838132721e-04, 3.127572430036379783e-04, 3.124036391450136585e-04, 3.120495515153154657e-04, 3.116949807226532623e-04, 3.113399273759215476e-04, 3.109843920847342978e-04, 3.106283754594399817e-04, 3.102718781111305597e-04, 3.099149006516589938e-04, 3.095574436935786948e-04, 3.091995078502374141e-04, 3.088410937356641617e-04, 3.084822019646631520e-04, 3.081228331527432768e-04, 3.077629879161613105e-04, 3.074026668719333482e-04, 3.070418706377646585e-04, 3.066805998321018331e-04, 3.063188550741428699e-04, 3.059566369837768917e-04, 3.055939461816752729e-04, 3.052307832891794793e-04, 3.048671489283983206e-04, 3.045030437221403507e-04, 3.041384682939360395e-04, 3.037734232680481270e-04, 3.034079092694828990e-04, 3.030419269239289842e-04, 3.026754768578007759e-04, 3.023085596982549666e-04, 3.019411760731254956e-04, 3.015733266110171159e-04, 3.012050119411958894e-04, 3.008362326936799350e-04, 3.004669894991676541e-04, 3.000972829891014821e-04, 2.997271137955966557e-04, 2.993564825515314734e-04, 2.989853898904363269e-04, 2.986138364465908460e-04, 2.982418228549562440e-04, 2.978693497511896294e-04, 2.974964177716943130e-04, 2.971230275535520450e-04, 2.967491797345361338e-04, 2.963748749531255953e-04, 2.960001138485183797e-04, 2.956248970605730958e-04, 2.952492252299037702e-04, 2.948730989977615068e-04, 2.944965190061350465e-04, 2.941194858976839801e-04, 2.937420003157504038e-04, 2.933640629044115028e-04, 2.929856743084101084e-04, 2.926068351731633170e-04, 2.922275461448084607e-04, 2.918478078701478126e-04, 2.914676209966602966e-04, 2.910869861725538538e-04, 2.907059040466949159e-04, 2.903243752686242882e-04, 2.899424004885648473e-04, 2.895599803574313538e-04, 2.891771155268414565e-04, 2.887938066490503691e-04, 2.884100543770009065e-04, 2.880258593643348687e-04, 2.876412222653316206e-04, 2.872561437349998160e-04, 2.868706244289662122e-04, 2.864846650035696163e-04, 2.860982661157951282e-04, 2.857114284232999449e-04, 2.853241525844146071e-04, 2.849364392581675565e-04, 2.845482891042081029e-04, 2.841597027828615023e-04, 2.837706809551422378e-04, 2.833812242826851189e-04, 2.829913334278488768e-04, 2.826010090535908850e-04, 2.822102518235746036e-04, 2.818190624020841441e-04, 2.814274414540985920e-04, 2.810353896452105283e-04, 2.806429076417264810e-04, 2.802499961105492897e-04, 2.798566557192766588e-04, 2.794628871361327991e-04, 2.790686910299847450e-04, 2.786740680703923899e-04, 2.782790189275379054e-04, 2.778835442722429796e-04, 2.774876447759757562e-04, 2.770913211108751747e-04, 2.766945739496819612e-04, 2.762974039658402177e-04, 2.758998118333738777e-04, 2.755017982269944215e-04, 2.751033638220134895e-04, 2.747045092944111868e-04, 2.743052353207948838e-04, 2.739055425784173224e-04, 2.735054317451382348e-04, 2.731049034994892334e-04, 2.727039585205894598e-04, 2.723025974882498307e-04, 2.719008210828521496e-04, 2.714986299854513468e-04, 2.710960248777024586e-04, 2.706930064418899546e-04, 2.702895753609308826e-04, 2.698857323183950340e-04, 2.694814779984304053e-04, 2.690768130858167575e-04, 2.686717382659823674e-04, 2.682662542249294882e-04, 2.678603616493442879e-04, 2.674540612264651187e-04, 2.670473536441942981e-04, 2.666402395910211849e-04, 2.662327197560501518e-04, 2.658247948290072527e-04, 2.654164655002577331e-04, 2.650077324607242810e-04, 2.645985964019836293e-04, 2.641890580161935891e-04, 2.637791179961101258e-04, 2.633687770351424910e-04, 2.629580358272752137e-04, 2.625468950670890801e-04, 2.621353554497680180e-04, 2.617234176711230576e-04, 2.613110824275208829e-04, 2.608983504159910591e-04, 2.604852223340976629e-04, 2.600716988800468900e-04, 2.596577807526119193e-04, 2.592434686511543265e-04, 2.588287632756708671e-04, 2.584136653267255510e-04, 2.579981755054633580e-04, 2.575822945136187485e-04, 2.571660230535246627e-04, 2.567493618281281326e-04, 2.563323115409156896e-04, 2.559148728959699049e-04, 2.554970465979844603e-04, 2.550788333521976326e-04, 2.546602338644477501e-04, 2.542412488411824084e-04, 2.538218789893806251e-04, 2.534021250166085129e-04, 2.529819876310387418e-04, 2.525614675413711207e-04, 2.521405654569439992e-04, 2.517192820876061696e-04, 2.512976181438236604e-04, 2.508755743366048179e-04, 2.504531513775276282e-04, 2.500303499787492586e-04, 2.496071708530199886e-04, 2.491836147136111657e-04, 2.487596822743661082e-04, 2.483353742497207048e-04, 2.479106913546281175e-04, 2.474856343046654122e-04, 2.470602038159049182e-04, 2.466344006050264436e-04, 2.462082253892270691e-04, 2.457816788862989942e-04, 2.453547618145432885e-04, 2.449274748928789627e-04, 2.444998188407140026e-04, 2.440717943780527596e-04, 2.436434022254229564e-04, 2.432146431038928447e-04, 2.427855177351233827e-04, 2.423560268412962434e-04, 2.419261711451269070e-04, 2.414959513698766681e-04, 2.410653682393593307e-04, 2.406344224779573629e-04, 2.402031148105479542e-04, 2.397714459625578762e-04, 2.393394166599774960e-04, 2.389070276293094389e-04, 2.384742795975789971e-04, 2.380411732923959562e-04, 2.376077094418740118e-04, 2.371738887746412865e-04, 2.367397120198915580e-04, 2.363051799073041912e-04, 2.358702931671511217e-04, 2.354350525301663179e-04, 2.349994587276565321e-04, 2.345635124914249728e-04, 2.341272145537982472e-04, 2.336905656476355767e-04, 2.332535665063448433e-04, 2.328162178638064784e-04, 2.323785204544280526e-04, 2.319404750131660680e-04, 2.315020822754409568e-04, 2.310633429772594608e-04, 2.306242578550725733e-04, 2.301848276458923627e-04, 2.297450530872122826e-04, 2.293049349170372324e-04, 2.288644738738899260e-04, 2.284236706968293784e-04, 2.279825261253723813e-04, 2.275410408995506687e-04, 2.270992157599302421e-04, 2.266570514475284564e-04, 2.262145487039243915e-04, 2.257717082711665059e-04, 2.253285308917947266e-04, 2.248850173088432955e-04, 2.244411682658757623e-04, 2.239969845068983561e-04, 2.235524667764832597e-04, 2.231076158196232720e-04, 2.226624323818535915e-04, 2.222169172091703648e-04, 2.217710710480480074e-04, 2.213248946454977233e-04, 2.208783887489876806e-04, 2.204315541064615785e-04, 2.199843914663478629e-04, 2.195369015775660421e-04, 2.190890851895468526e-04, 2.186409430521527334e-04, 2.181924759157339059e-04, 2.177436845311487841e-04, 2.172945696496922006e-04, 2.168451320231639008e-04, 2.163953724038275876e-04, 2.159452915444289457e-04, 2.154948901981564480e-04, 2.150441691187078986e-04, 2.145931290601994952e-04, 2.141417707772862568e-04, 2.136900950250186109e-04, 2.132381025589620625e-04, 2.127857941351170713e-04, 2.123331705099449642e-04, 2.118802324403796990e-04, 2.114269806838442629e-04, 2.109734159981719323e-04, 2.105195391416626513e-04, 2.100653508731015445e-04, 2.096108519516808272e-04, 2.091560431371149208e-04, 2.087009251895009158e-04, 2.082454988694378071e-04, 2.077897649379340384e-04, 2.073337241564866221e-04, 2.068773772869905540e-04, 2.064207250918562869e-04, 2.059637683338686755e-04, 2.055065077763082448e-04, 2.050489441828652669e-04, 2.045910783176628544e-04, 2.041329109453126885e-04, 2.036744428308368481e-04, 2.032156747396820400e-04, 2.027566074377326090e-04, 2.022972416913172873e-04, 2.018375782672284392e-04, 2.013776179326390650e-04, 2.009173614551656040e-04, 2.004568096028823269e-04, 1.999959631442617858e-04, 1.995348228481936799e-04, 1.990733894840440797e-04, 1.986116638215731087e-04, 1.981496466309538092e-04, 1.976873386827811133e-04, 1.972247407480814117e-04, 1.967618535983296020e-04, 1.962986780053589382e-04, 1.958352147414690436e-04, 1.953714645793458156e-04, 1.949074282920885580e-04, 1.944431066532191694e-04, 1.939785004367032312e-04, 1.935136104168647890e-04, 1.930484373684463091e-04, 1.925829820666304711e-04, 1.921172452869541092e-04, 1.916512278054313776e-04, 1.911849303984078168e-04, 1.907183538426840885e-04, 1.902514989154305671e-04, 1.897843663942175893e-04, 1.893169570570253472e-04, 1.888492716822610734e-04, 1.883813110486778062e-04, 1.879130759354333442e-04, 1.874445671221096799e-04, 1.869757853886301125e-04, 1.865067315153803537e-04, 1.860374062830642198e-04, 1.855678104728257407e-04, 1.850979448661539120e-04, 1.846278102449442780e-04, 1.841574073915088795e-04, 1.836867370884901949e-04, 1.832158001189231294e-04, 1.827445972662552088e-04, 1.822731293142806322e-04, 1.818013970471623090e-04, 1.813294012494918962e-04, 1.808571427062039027e-04, 1.803846222025981593e-04, 1.799118405243464594e-04, 1.794387984575025340e-04, 1.789654967885222171e-04, 1.784919363041765478e-04, 1.780181177916166592e-04, 1.775440420383900416e-04, 1.770697098323771167e-04, 1.765951219618135451e-04, 1.761202792153480413e-04, 1.756451823819594864e-04, 1.751698322509651681e-04, 1.746942296120836916e-04, 1.742183752553372929e-04, 1.737422699711782840e-04, 1.732659145503392972e-04, 1.727893097839592153e-04, 1.723124564634974658e-04, 1.718353553807635647e-04, 1.713580073279263600e-04, 1.708804130975353629e-04, 1.704025734824335240e-04, 1.699244892758193309e-04, 1.694461612712679229e-04, 1.689675902626432439e-04, 1.684887770442253273e-04, 1.680097224105600801e-04, 1.675304271565847519e-04, 1.670508920775429066e-04, 1.665711179690135605e-04, 1.660911056269214544e-04, 1.656108558475570037e-04, 1.651303694274891824e-04, 1.646496471636285154e-04, 1.641686898532474881e-04, 1.636874982938927268e-04, 1.632060732835028511e-04, 1.627244156203088896e-04, 1.622425261028559104e-04, 1.617604055300129410e-04, 1.612780547009794738e-04, 1.607954744153086680e-04, 1.603126654728189327e-04, 1.598296286736564857e-04, 1.593463648183165494e-04, 1.588628747075776211e-04, 1.583791591425205009e-04, 1.578952189245920695e-04, 1.574110548555180105e-04, 1.569266677373235181e-04, 1.564420583723415375e-04, 1.559572275632232000e-04, 1.554721761129572845e-04, 1.549869048247836170e-04, 1.545014145022562254e-04, 1.540157059492619875e-04, 1.535297799699464718e-04, 1.530436373687852779e-04, 1.525572789505427556e-04, 1.520707055202883762e-04, 1.515839178833564818e-04, 1.510969168454173001e-04, 1.506097032123793937e-04, 1.501222777905180023e-04, 1.496346413863234714e-04, 1.491467948066277783e-04, 1.486587388585178509e-04, 1.481704743493660872e-04, 1.476820020868415231e-04, 1.471933228789269353e-04, 1.467044375338346805e-04, 1.462153468600661907e-04, 1.457260516664362325e-04, 1.452365527619834870e-04, 1.447468509560967788e-04, 1.442569470583666481e-04, 1.437668418787102780e-04, 1.432765362272749195e-04, 1.427860309145103973e-04, 1.422953267511263380e-04, 1.418044245481107099e-04, 1.413133251166866721e-04, 1.408220292683873569e-04, 1.403305378149766419e-04, 1.398388515684711867e-04, 1.393469713412030992e-04, 1.388548979457332813e-04, 1.383626321948699142e-04, 1.378701749016803305e-04, 1.373775268794968419e-04, 1.368846889419418926e-04, 1.363916619028362543e-04, 1.358984465762639704e-04, 1.354050437765921420e-04, 1.349114543184063103e-04, 1.344176790165283180e-04, 1.339237186860819581e-04, 1.334295741424045847e-04, 1.329352462010661940e-04, 1.324407356778795357e-04, 1.319460433889108725e-04, 1.314511701504993612e-04, 1.309561167791571700e-04, 1.304608840916884156e-04, 1.299654729051016682e-04, 1.294698840366402548e-04, 1.289741183037912582e-04, 1.284781765243074993e-04, 1.279820595161179002e-04, 1.274857680973920219e-04, 1.269893030865602032e-04, 1.264926653022243577e-04, 1.259958555632901926e-04, 1.254988746888097010e-04, 1.250017234981121877e-04, 1.245044028107169100e-04, 1.240069134463510749e-04, 1.235092562250159217e-04, 1.230114319668973292e-04, 1.225134414923863344e-04, 1.220152856220884296e-04, 1.215169651768557764e-04, 1.210184809776974343e-04, 1.205198338459098303e-04, 1.200210246029223012e-04, 1.195220540704275094e-04, 1.190229230702793381e-04, 1.185236324245600849e-04, 1.180241829555890267e-04, 1.175245754858330005e-04, 1.170248108379706015e-04, 1.165248898349130675e-04, 1.160248132997382782e-04, 1.155245820557094036e-04, 1.150241969263409586e-04, 1.145236587353085436e-04, 1.140229683064704336e-04, 1.135221264638759127e-04, 1.130211340317762792e-04, 1.125199918346448215e-04, 1.120187006970875212e-04, 1.115172614439075894e-04, 1.110156749001261892e-04, 1.105139418909044949e-04, 1.100120632416184746e-04, 1.095100397778148719e-04, 1.090078723252300031e-04, 1.085055617097463622e-04, 1.080031087574661973e-04, 1.075005142946139597e-04, 1.069977791476638872e-04, 1.064949041431859664e-04, 1.059918901079778797e-04, 1.054887378689735669e-04, 1.049854482532752221e-04, 1.044820220881642175e-04, 1.039784602011215947e-04, 1.034747634197365446e-04, 1.029709325717737494e-04, 1.024669684851918690e-04, 1.019628719880558420e-04, 1.014586439086671664e-04, 1.009542850754076797e-04, 1.004497963168706929e-04, 9.994517846177215390e-05, 9.944043233897042046e-05, 9.893555877753129895e-05, 9.843055860663960045e-05, 9.792543265560635076e-05, 9.742018175393656651e-05, 9.691480673124772322e-05, 9.640930841729279460e-05, 9.590368764202483027e-05, 9.539794523550557115e-05, 9.489208202792796018e-05, 9.438609884962459906e-05, 9.387999653107853614e-05, 9.337377590294377130e-05, 9.286743779595438633e-05, 9.236098304099088453e-05, 9.185441246909996382e-05, 9.134772691142789254e-05, 9.084092719923926617e-05, 9.033401416398517648e-05, 8.982698863721045809e-05, 8.931985145057512855e-05, 8.881260343586521680e-05, 8.830524542500127418e-05, 8.779777825006042434e-05, 8.729020274318480244e-05, 8.678251973664740683e-05, 8.627473006287347140e-05, 8.576683455436034302e-05, 8.525883404374365857e-05, 8.475072936380729247e-05, 8.424252134739210749e-05, 8.373421082746104760e-05, 8.322579863712190615e-05, 8.271728560953445046e-05, 8.220867257804596059e-05, 8.169996037602947998e-05, 8.119114983702085855e-05, 8.068224179462449492e-05, 8.017323708253594201e-05, 7.966413653460817888e-05, 7.915494098475944003e-05, 7.864565126699476388e-05, 7.813626821541579126e-05, 7.762679266425364386e-05, 7.711722544777660439e-05, 7.660756740042484227e-05, 7.609781935665035826e-05, 7.558798215105184569e-05, 7.507805661827101360e-05, 7.456804359307045958e-05, 7.405794391028826880e-05, 7.354775840485685201e-05, 7.303748791175864233e-05, 7.252713326610254509e-05, 7.201669530304393720e-05, 7.150617485780628351e-05, 7.099557276574624306e-05, 7.048488986226399209e-05, 6.997412698282188582e-05, 6.946328496295710298e-05, 6.895236463828943849e-05, 6.844136684454359739e-05, 6.793029241745709187e-05, 6.741914219284686548e-05, 6.690791700663042149e-05, 6.639661769475674574e-05, 6.588524509322720454e-05, 6.537380003816258911e-05, 6.486228336571097188e-05, 6.435069591206879426e-05, 6.383903851349088195e-05, 6.332731200630097523e-05, 6.281551722691226108e-05, 6.230365501172408936e-05, 6.179172619724624944e-05, 6.127973162000545783e-05, 6.076767211656767913e-05, 6.025554852360440471e-05, 5.974336167780139675e-05, 5.923111241587804125e-05, 5.871880157459989088e-05, 5.820642999080901590e-05, 5.769399850133333094e-05, 5.718150794312115129e-05, 5.666895915308019563e-05, 5.615635296821330785e-05, 5.564369022552607621e-05, 5.513097176204767038e-05, 5.461819841489858372e-05, 5.410537102119718184e-05, 5.359249041808201688e-05, 5.307955744272149036e-05, 5.256657293234644711e-05, 5.205353772415811968e-05, 5.154045265546325382e-05, 5.102731856351321287e-05, 5.051413628563936075e-05, 5.000090665914908695e-05, 4.948763052139291187e-05, 4.897430870977461059e-05, 4.846094206165862196e-05, 4.794753141443667963e-05, 4.743407760554993653e-05, 4.692058147241869503e-05, 4.640704385246391481e-05, 4.589346558317452824e-05, 4.537984750201458524e-05, 4.486619044644470696e-05, 4.435249525393226370e-05, 4.383876276196138345e-05, 4.332499380805464952e-05, 4.281118922967953384e-05, 4.229734986431681694e-05, 4.178347654948099803e-05, 4.126957012263976591e-05, 4.075563142129174976e-05, 4.024166128292049483e-05, 3.972766054501506225e-05, 3.921363004502339476e-05, 3.869957062043088752e-05, 3.818548310865606753e-05, 3.767136834718650513e-05, 3.715722717341736275e-05, 3.664306042478727933e-05, 3.612886893868557617e-05, 3.561465355247339887e-05, 3.510041510355158158e-05, 3.458615442926722271e-05, 3.407187236693568063e-05, 3.355756975385018923e-05, 3.304324742731523098e-05, 3.252890622455325491e-05, 3.201454698284119120e-05, 3.150017053934809871e-05, 3.098577773127201158e-05, 3.047136939574615239e-05, 2.995694636986103633e-05, 2.944250949073179673e-05, 2.892805959540488951e-05, 2.841359752086861329e-05, 2.789912410411995726e-05, 2.738464018208349606e-05, 2.687014659163276893e-05, 2.635564416965760858e-05, 2.584113375297134716e-05, 2.532661617833202583e-05, 2.481209228245279645e-05, 2.429756290201199101e-05, 2.378302887367444998e-05, 2.326849103399873829e-05, 2.275395021950444381e-05, 2.223940726669375296e-05, 2.172486301198130960e-05, 2.121031829171587539e-05, 2.069577394224757740e-05, 2.018123079983499197e-05, 1.966668970066667635e-05, 1.915215148087123136e-05, 1.863761697652754041e-05, 1.812308702368605371e-05, 1.760856245827617704e-05, 1.709404411617323824e-05, 1.657953283322038805e-05, 1.606502944513533163e-05, 1.555053478763513379e-05, 1.503604969633182217e-05, 1.452157500675378667e-05, 1.400711155435585748e-05, 1.349266017455262564e-05, 1.297822170262502884e-05, 1.246379697385682372e-05, 1.194938682337260265e-05, 1.143499208627406607e-05, 1.092061359754691497e-05, 1.040625219208244850e-05, 9.891908704745014947e-06, 9.377583970278990512e-06, 8.863278823330178802e-06, 8.348994098456100562e-06, 7.834730630159009334e-06, 7.320489252792738156e-06, 6.806270800699002415e-06, 6.292076108045524225e-06, 5.777906008962236170e-06, 5.263761337436795560e-06, 4.749642927393446581e-06, 4.235551612645808376e-06, 3.721488226918498524e-06, 3.207453603799881308e-06, 2.693448576820993822e-06, 2.179473979373947048e-06, 1.665530644733512711e-06, 1.151619406124524432e-06, 6.377410966288449334e-07, 1.238965492069625673e-07, -3.899134032919202024e-07, -9.036879281197577157e-07, -1.417426192608091423e-06, -1.931127364261090470e-06, -2.444790610688113373e-06, -2.958415099582142610e-06, -3.471999998812817217e-06, -3.985544476290257204e-06, -4.499047700126850236e-06, -5.012508838501051279e-06, -5.525927059761895875e-06, -6.039301532338658999e-06, -6.552631424845310310e-06, -7.065915905944415445e-06, -7.579154144508795638e-06, -8.092345309485461199e-06, -8.605488569988597097e-06, -9.118583095277894160e-06, -9.631628054691373435e-06, -1.014462261773813121e-05, -1.065756595407693282e-05, -1.117045723350596857e-05, -1.168329562592994998e-05, -1.219608030145306819e-05, -1.270881043024277925e-05, -1.322148518269164326e-05, -1.373410372928114020e-05, -1.424666524067458595e-05, -1.475916888769561096e-05, -1.527161384126092273e-05, -1.578399927247303052e-05, -1.629632435259876968e-05, -1.680858825305927277e-05, -1.732079014539684211e-05, -1.783292920136791672e-05, -1.834500459281846363e-05, -1.885701549178848477e-05, -1.936896107049010935e-05, -1.988084050129793764e-05, -2.039265295673848359e-05, -2.090439760946905659e-05, -2.141607363237029135e-05, -2.192768019847895445e-05, -2.243921648096652800e-05, -2.295068165320881539e-05, -2.346207488876485357e-05, -2.397339536130932997e-05, -2.448464224472542749e-05, -2.499581471308349960e-05, -2.550691194063057051e-05, -2.601793310178061462e-05, -2.652887737109288943e-05, -2.703974392336462126e-05, -2.755053193356388298e-05, -2.806124057680796754e-05, -2.857186902845616861e-05, -2.908241646397422141e-05, -2.959288205909498486e-05, -3.010326498968344484e-05, -3.061356443184022163e-05, -3.112377956181186576e-05, -3.163390955609492444e-05, -3.214395359130013506e-05, -3.265391084431357497e-05, -3.316378049216113613e-05, -3.367356171210113638e-05, -3.418325368160274373e-05, -3.469285557827887789e-05, -3.520236657997880106e-05, -3.571178586476648814e-05, -3.622111261091107219e-05, -3.673034599685309184e-05, -3.723948520129780727e-05, -3.774852940307923439e-05, -3.825747778132140646e-05, -3.876632951530263192e-05, -3.927508378455946939e-05, -3.978373976880840082e-05, -4.029229664799255389e-05, -4.080075360226039058e-05, -4.130910981201251766e-05, -4.181736445782304812e-05, -4.232551672052125517e-05, -4.283356578116931894e-05, -4.334151082099593950e-05, -4.384935102148879892e-05, -4.435708556437213185e-05, -4.486471363159802482e-05, -4.537223440533523538e-05, -4.587964706794861257e-05, -4.638695080209071886e-05, -4.689414479063509062e-05, -4.740122821665528600e-05, -4.790820026351655419e-05, -4.841506011474079125e-05, -4.892180695416756449e-05, -4.942843996581813994e-05, -4.993495833398851370e-05, -5.044136124321622856e-05, -5.094764787827031800e-05, -5.145381742413020497e-05, -5.195986906607739144e-05, -5.246580198962888167e-05, -5.297161538051613509e-05, -5.347730842477641715e-05, -5.398288030862970845e-05, -5.448833021858241548e-05, -5.499365734140576113e-05, -5.549886086412510525e-05, -5.600393997398822501e-05, -5.650889385855669957e-05, -5.701372170557150965e-05, -5.751842270311301837e-05, -5.802299603946557471e-05, -5.852744090321072780e-05, -5.903175648320479747e-05, -5.953594196851260241e-05, -6.003999654849933275e-05, -6.054391941280949619e-05, -6.104770975135623864e-05, -6.155136675428943477e-05, -6.205488961208665936e-05, -6.255827751542002017e-05, -6.306152965531405840e-05, -6.356464522301306951e-05, -6.406762341008285556e-05, -6.457046340833378750e-05, -6.507316440986646365e-05, -6.557572560705142157e-05, -6.607814619257494561e-05, -6.658042535936111274e-05, -6.708256230067502219e-05, -6.758455620998920815e-05, -6.808640628114198754e-05, -6.858811170820318154e-05, -6.908967168556730276e-05, -6.959108540791918607e-05, -7.009235207022448825e-05, -7.059347086770939984e-05, -7.109444099595074241e-05, -7.159526165081065883e-05, -7.209593202841449563e-05, -7.259645132524312279e-05, -7.309681873799847910e-05, -7.359703346376273304e-05, -7.409709469986416701e-05, -7.459700164398040689e-05, -7.509675349404854169e-05, -7.559634944836884105e-05, -7.609578870547095111e-05, -7.659507046427155112e-05, -7.709419392394190453e-05, -7.759315828399832211e-05, -7.809196274428153507e-05, -7.859060650488993523e-05, -7.908908876627116305e-05, -7.958740872920104699e-05, -8.008556559477307318e-05, -8.058355856436613045e-05, -8.108138683973639639e-05, -8.157904962288311320e-05, -8.207654611620705733e-05, -8.257387552237729108e-05, -8.307103704442197806e-05, -8.356802988570778332e-05, -8.406485324987297814e-05, -8.456150634092017993e-05, -8.505798836319260821e-05, -8.555429852136580402e-05, -8.605043602041533425e-05, -8.654640006570706501e-05, -8.704218986287582587e-05, -8.753780461792640328e-05, -8.803324353721441798e-05, -8.852850582743358558e-05, -8.902359069560841179e-05, -8.951849734907153257e-05, -9.001322499555512594e-05, -9.050777284312500602e-05, -9.100214010015892545e-05, -9.149632597543800076e-05, -9.199032967801380268e-05, -9.248415041736580944e-05, -9.297778740326859202e-05, -9.347123984588206038e-05, -9.396450695572034688e-05, -9.445758794364061191e-05, -9.495048202082318942e-05, -9.544318839886138596e-05, -9.593570628969529015e-05, -9.642803490559189112e-05, -9.692017345923491819e-05, -9.741212116359274445e-05, -9.790387723207453889e-05, -9.839544087839945748e-05, -9.888681131669632197e-05, -9.937798776141810347e-05, -9.986896942744089652e-05, -1.003597555299334489e-04, -1.008503452845125958e-04, -1.013407379071131007e-04, -1.018309326140759104e-04, -1.023209286221277712e-04, -1.028107251483171257e-04, -1.033003214101016487e-04, -1.037897166253296801e-04, -1.042789100122291663e-04, -1.047679007893757163e-04, -1.052566881757820898e-04, -1.057452713907687292e-04, -1.062336496541172425e-04, -1.067218221859400683e-04, -1.072097882067812256e-04, -1.076975469375402296e-04, -1.081850975995172896e-04, -1.086724394143929665e-04, -1.091595716042726794e-04, -1.096464933916114755e-04, -1.101332039993147119e-04, -1.106197026506054574e-04, -1.111059885691822986e-04, -1.115920609790868227e-04, -1.120779191047930240e-04, -1.125635621711756044e-04, -1.130489894035012184e-04, -1.135342000274069382e-04, -1.140191932689883585e-04, -1.145039683547367402e-04, -1.149885245115176650e-04, -1.154728609666591944e-04, -1.159569769478224570e-04, -1.164408716831564046e-04, -1.169245444011666915e-04, -1.174079943308055954e-04, -1.178912207014389495e-04, -1.183742227428382141e-04, -1.188569996851591585e-04, -1.193395507590397239e-04, -1.198218751954842711e-04, -1.203039722259495985e-04, -1.207858410823251823e-04, -1.212674809968689380e-04, -1.217488912022964090e-04, -1.222300709317588393e-04, -1.227110194188340653e-04, -1.231917358974958607e-04, -1.236722196022001577e-04, -1.241524697677587232e-04, -1.246324856294895927e-04, -1.251122664230902180e-04, -1.255918113847237429e-04, -1.260711197509996502e-04, -1.265501907589096852e-04, -1.270290236459158660e-04, -1.275076176499291244e-04, -1.279859720093015814e-04, -1.284640859628143495e-04, -1.289419587496598335e-04, -1.294195896095271111e-04, -1.298969777825396456e-04, -1.303741225092348486e-04, -1.308510230306400828e-04, -1.313276785882099137e-04, -1.318040884238159450e-04, -1.322802517798353711e-04, -1.327561678990849762e-04, -1.332318360248039223e-04, -1.337072554007391579e-04, -1.341824252710187553e-04, -1.346573448803010161e-04, -1.351320134736504924e-04, -1.356064302966227442e-04, -1.360805945952328979e-04, -1.365545056159474604e-04, -1.370281626056642341e-04, -1.375015648117983483e-04, -1.379747114822186713e-04, -1.384476018652285110e-04, -1.389202352096540318e-04, -1.393926107647128221e-04, -1.398647277801690980e-04, -1.403365855062039245e-04, -1.408081831935136603e-04, -1.412795200932250386e-04, -1.417505954569942624e-04, -1.422214085368776596e-04, -1.426919585854832275e-04, -1.431622448558443226e-04, -1.436322666015055574e-04, -1.441020230765029857e-04, -1.445715135353015449e-04, -1.450407372328800840e-04, -1.455096934247132037e-04, -1.459783813667609560e-04, -1.464468003154584090e-04, -1.469149495276972155e-04, -1.473828282609105874e-04, -1.478504357730120379e-04, -1.483177713223732101e-04, -1.487848341678905549e-04, -1.492516235689651653e-04, -1.497181387854387539e-04, -1.501843790776825850e-04, -1.506503437065843823e-04, -1.511160319334882917e-04, -1.515814430202911311e-04, -1.520465762293162436e-04, -1.525114308234621957e-04, -1.529760060660787988e-04, -1.534403012210504844e-04, -1.539043155527670850e-04, -1.543680483261144554e-04, -1.548314988064548219e-04, -1.552946662597115123e-04, -1.557575499523069671e-04, -1.562201491511435759e-04, -1.566824631236874864e-04, -1.571444911378463603e-04, -1.576062324621141961e-04, -1.580676863654494372e-04, -1.585288521173578867e-04, -1.589897289878638401e-04, -1.594503162475007342e-04, -1.599106131672895176e-04, -1.603706190188260638e-04, -1.608303330742173937e-04, -1.612897546060645991e-04, -1.617488828875438597e-04, -1.622077171922953393e-04, -1.626662567945195449e-04, -1.631245009689525792e-04, -1.635824489908618850e-04, -1.640401001360144247e-04, -1.644974536807602169e-04, -1.649545089019094704e-04, -1.654112650768791402e-04, -1.658677214835699526e-04, -1.663238774004493462e-04, -1.667797321065334201e-04, -1.672352848813236437e-04, -1.676905350048939181e-04, -1.681454817578679703e-04, -1.686001244214123331e-04, -1.690544622772253405e-04, -1.695084946075205666e-04, -1.699622206951066498e-04, -1.704156398233287457e-04, -1.708687512760487953e-04, -1.713215543377194668e-04, -1.717740482933114603e-04, -1.722262324283569573e-04, -1.726781060289308092e-04, -1.731296683816909788e-04, -1.735809187738092320e-04, -1.740318564930630517e-04, -1.744824808277164834e-04, -1.749327910666619219e-04, -1.753827864992995483e-04, -1.758324664156210300e-04, -1.762818301061774558e-04, -1.767308768620736977e-04, -1.771796059749459681e-04, -1.776280167370468215e-04, -1.780761084411834627e-04, -1.785238803806999395e-04, -1.789713318495577527e-04, -1.794184621422171904e-04, -1.798652705537797649e-04, -1.803117563798670804e-04, -1.807579189167022292e-04, -1.812037574610829850e-04, -1.816492713103706627e-04, -1.820944597624725816e-04, -1.825393221159328126e-04, -1.829838576698221051e-04, -1.834280657238206657e-04, -1.838719455781995368e-04, -1.843154965337592040e-04, -1.847587178919128897e-04, -1.852016089546674440e-04, -1.856441690246131264e-04, -1.860863974049172084e-04, -1.865282933993012062e-04, -1.869698563121260709e-04, -1.874110854483302540e-04, -1.878519801134128210e-04, -1.882925396134933532e-04, -1.887327632552927305e-04, -1.891726503460769155e-04, -1.896122001937331728e-04, -1.900514121067559202e-04, -1.904902853942344772e-04, -1.909288193658472104e-04, -1.913670133318398224e-04, -1.918048666031082388e-04, -1.922423784911376490e-04, -1.926795483079865687e-04, -1.931163753663547107e-04, -1.935528589795270130e-04, -1.939889984613631221e-04, -1.944247931263777052e-04, -1.948602422896830689e-04, -1.952953452669698602e-04, -1.957301013745879755e-04, -1.961645099294271352e-04, -1.965985702490586978e-04, -1.970322816516171019e-04, -1.974656434558789866e-04, -1.978986549812353809e-04, -1.983313155476844943e-04, -1.987636244758106288e-04, -1.991955810868655484e-04, -1.996271847027096340e-04, -2.000584346457935875e-04, -2.004893302392378495e-04, -2.009198708067169421e-04, -2.013500556725973526e-04, -2.017798841618187585e-04, -2.022093555999875407e-04, -2.026384693133058759e-04, -2.030672246286122323e-04, -2.034956208733641032e-04, -2.039236573756789356e-04, -2.043513334642635491e-04, -2.047786484684866956e-04, -2.052056017183592730e-04, -2.056321925444766995e-04, -2.060584202780988197e-04, -2.064842842511297653e-04, -2.069097837961104741e-04, -2.073349182462115071e-04, -2.077596869352116629e-04, -2.081840891975782627e-04, -2.086081243684099584e-04, -2.090317917834181661e-04, -2.094550907789862360e-04, -2.098780206921508316e-04, -2.103005808605457679e-04, -2.107227706224807241e-04, -2.111445893169293722e-04, -2.115660362834769555e-04, -2.119871108624050461e-04, -2.124078123945783542e-04, -2.128281402215806601e-04, -2.132480936855982623e-04, -2.136676721295012926e-04, -2.140868748968122203e-04, -2.145057013317015423e-04, -2.149241507789659365e-04, -2.153422225841067036e-04, -2.157599160932748526e-04, -2.161772306532518020e-04, -2.165941656115274690e-04, -2.170107203161856428e-04, -2.174268941160405666e-04, -2.178426863605201962e-04, -2.182580963997475965e-04, -2.186731235845091475e-04, -2.190877672662506137e-04, -2.195020267970548909e-04, -2.199159015297212345e-04, -2.203293908177095045e-04, -2.207424940151206220e-04, -2.211552104767755544e-04, -2.215675395581096050e-04, -2.219794806152613445e-04, -2.223910330050523916e-04, -2.228021960849793615e-04, -2.232129692132070367e-04, -2.236233517485499073e-04, -2.240333430505464670e-04, -2.244429424794058424e-04, -2.248521493959893349e-04, -2.252609631618690761e-04, -2.256693831393076174e-04, -2.260774086912041266e-04, -2.264850391811709597e-04, -2.268922739735157717e-04, -2.272991124332316229e-04, -2.277055539259893356e-04, -2.281115978181213935e-04, -2.285172434766958574e-04, -2.289224902694607724e-04, -2.293273375648289354e-04, -2.297317847319419978e-04, -2.301358311406079618e-04, -2.305394761613367965e-04, -2.309427191653250959e-04, -2.313455595244942706e-04, -2.317479966114255763e-04, -2.321500297994434625e-04, -2.325516584625083986e-04, -2.329528819753449455e-04, -2.333536997133331186e-04, -2.337541110525810293e-04, -2.341541153699020893e-04, -2.345537120428026786e-04, -2.349529004494673996e-04, -2.353516799688327218e-04, -2.357500499805325006e-04, -2.361480098648818229e-04, -2.365455590029476697e-04, -2.369426967764468386e-04, -2.373394225678675641e-04, -2.377357357603655157e-04, -2.381316357378443266e-04, -2.385271218848960444e-04, -2.389221935868342532e-04, -2.393168502296790846e-04, -2.397110912001962758e-04, -2.401049158858302207e-04, -2.404983236747718946e-04, -2.408913139559408295e-04, -2.412838861189312565e-04, -2.416760395540868615e-04, -2.420677736524797787e-04, -2.424590878059069315e-04, -2.428499814068808436e-04, -2.432404538486109913e-04, -2.436305045250779623e-04, -2.440201328309785415e-04, -2.444093381617133773e-04, -2.447981199134371001e-04, -2.451864774830417597e-04, -2.455744102681071701e-04, -2.459619176669702433e-04, -2.463489990787097027e-04, -2.467356539031376802e-04, -2.471218815407907172e-04, -2.475076813929150197e-04, -2.478930528615456053e-04, -2.482779953494102421e-04, -2.486625082600012237e-04, -2.490465909975489141e-04, -2.494302429670163272e-04, -2.498134635740786348e-04, -2.501962522251992239e-04, -2.505786083275726673e-04, -2.509605312891115508e-04, -2.513420205185166751e-04, -2.517230754251743277e-04, -2.521036954192755995e-04, -2.524838799117159333e-04, -2.528636283141651089e-04, -2.532429400390513057e-04, -2.536218144995074889e-04, -2.540002511094442673e-04, -2.543782492835325467e-04, -2.547558084371957777e-04, -2.551329279865839346e-04, -2.555096073486445851e-04, -2.558858459410225474e-04, -2.562616431821761165e-04, -2.566369984912785646e-04, -2.570119112882953902e-04, -2.573863809939336321e-04, -2.577604070296350930e-04, -2.581339888176426380e-04, -2.585071257809561768e-04, -2.588798173433070216e-04, -2.592520629292202833e-04, -2.596238619639890132e-04, -2.599952138736332744e-04, -2.603661180849613449e-04, -2.607365740255568700e-04, -2.611065811237733326e-04, -2.614761388087218563e-04, -2.618452465102586281e-04, -2.622139036590529870e-04, -2.625821096865349480e-04, -2.629498640248834388e-04, -2.633171661070742215e-04, -2.636840153668643344e-04, -2.640504112387455794e-04, -2.644163531580094660e-04, -2.647818405607402182e-04, -2.651468728837666359e-04, -2.655114495647353866e-04, -2.658755700420158672e-04, -2.662392337548146956e-04, -2.666024401430776986e-04, -2.669651886475566988e-04, -2.673274787097859877e-04, -2.676893097720751697e-04, -2.680506812774933328e-04, -2.684115926699344261e-04, -2.687720433940708558e-04, -2.691320328953377642e-04, -2.694915606199968353e-04, -2.698506260150425112e-04, -2.702092285283142067e-04, -2.705673676084017674e-04, -2.709250427047104129e-04, -2.712822532674427395e-04, -2.716389987475569239e-04, -2.719952785968263002e-04, -2.723510922678266206e-04, -2.727064392139301463e-04, -2.730613188892788137e-04, -2.734157307488528643e-04, -2.737696742483826449e-04, -2.741231488444185386e-04, -2.744761539943195807e-04, -2.748286891562455440e-04, -2.751807537891478857e-04, -2.755323473527555443e-04, -2.758834693076416184e-04, -2.762341191151714329e-04, -2.765842962374945703e-04, -2.769340001375854743e-04, -2.772832302792362395e-04, -2.776319861270018052e-04, -2.779802671462717838e-04, -2.783280728032506740e-04, -2.786754025649496752e-04, -2.790222558991871209e-04, -2.793686322745621872e-04, -2.797145311605304615e-04, -2.800599520273491360e-04, -2.804048943460645937e-04, -2.807493575885690036e-04, -2.810933412275475746e-04, -2.814368447365050096e-04, -2.817798675897586211e-04, -2.821224092624625632e-04, -2.824644692305601263e-04, -2.828060469708526927e-04, -2.831471419609041099e-04, -2.834877536791550199e-04, -2.838278816048270150e-04, -2.841675252179881248e-04, -2.845066839995354134e-04, -2.848453574311510706e-04, -2.851835449953671374e-04, -2.855212461755442027e-04, -2.858584604558708601e-04, -2.861951873213391517e-04, -2.865314262578077219e-04, -2.868671767519069505e-04, -2.872024382911533900e-04, -2.875372103638526209e-04, -2.878714924591711344e-04, -2.882052840670850497e-04, -2.885385846784091165e-04, -2.888713937847840296e-04, -2.892037108787064614e-04, -2.895355354534770746e-04, -2.898668670032537560e-04, -2.901977050230404500e-04, -2.905280490086355498e-04, -2.908578984567011241e-04, -2.911872528647430763e-04, -2.915161117311083254e-04, -2.918444745549719039e-04, -2.921723408363312117e-04, -2.924997100760607684e-04, -2.928265817758672184e-04, -2.931529554382810375e-04, -2.934788305666966479e-04, -2.938042066653603836e-04, -2.941290832393253876e-04, -2.944534597945153089e-04, -2.947773358377048952e-04, -2.951007108765179329e-04, -2.954235844194181941e-04, -2.957459559756949624e-04, -2.960678250555322049e-04, -2.963891911699278537e-04, -2.967100538307513766e-04, -2.970304125507322308e-04, -2.973502668434150850e-04, -2.976696162232190168e-04, -2.979884602054254784e-04, -2.983067983061700023e-04, -2.986246300424208423e-04, -2.989419549320394723e-04, -2.992587724936937414e-04, -2.995750822469583257e-04, -2.998908837122311356e-04, -3.002061764107892615e-04, -3.005209598647788356e-04, -3.008352335971662436e-04, -3.011489971318057784e-04, -3.014622499934169805e-04, -3.017749917075831742e-04, -3.020872218007290789e-04, -3.023989398001793562e-04, -3.027101452340731744e-04, -3.030208376314642805e-04, -3.033310165222383842e-04, -3.036406814371747404e-04, -3.039498319079067925e-04, -3.042584674669160470e-04, -3.045665876475843318e-04, -3.048741919841595899e-04, -3.051812800117384775e-04, -3.054878512663088109e-04, -3.057939052847352549e-04, -3.060994416047240320e-04, -3.064044597648723622e-04, -3.067089593046583794e-04, -3.070129397644358739e-04, -3.073164006854256177e-04, -3.076193416097033851e-04, -3.079217620802569811e-04, -3.082236616409434154e-04, -3.085250398364774104e-04, -3.088258962124802980e-04, -3.091262303154306348e-04, -3.094260416926938547e-04, -3.097253298925105596e-04, -3.100240944640211848e-04, -3.103223349572219267e-04, -3.106200509230264335e-04, -3.109172419131817251e-04, -3.112139074803678862e-04, -3.115100471781155579e-04, -3.118056605608590637e-04, -3.121007471839287663e-04, -3.123953066035052594e-04, -3.126893383766766684e-04, -3.129828420614278622e-04, -3.132758172166292860e-04, -3.135682634020229751e-04, -3.138601801782725368e-04, -3.141515671068868766e-04, -3.144424237503109457e-04, -3.147327496718489801e-04, -3.150225444357191438e-04, -3.153118076070375369e-04, -3.156005387517810080e-04, -3.158887374368413094e-04, -3.161764032300168033e-04, -3.164635356999792311e-04, -3.167501344163119853e-04, -3.170361989495030629e-04, -3.173217288709064129e-04, -3.176067237527947372e-04, -3.178911831683432819e-04, -3.181751066916289157e-04, -3.184584938976208054e-04, -3.187413443621707671e-04, -3.190236576620638438e-04, -3.193054333749803042e-04, -3.195866710794837166e-04, -3.198673703550607389e-04, -3.201475307821077289e-04, -3.204271519418949114e-04, -3.207062334166139203e-04, -3.209847747893716189e-04, -3.212627756441803961e-04, -3.215402355659522033e-04, -3.218171541404881461e-04, -3.220935309545296587e-04, -3.223693655957199063e-04, -3.226446576525938102e-04, -3.229194067146262952e-04, -3.231936123721653397e-04, -3.234672742164901435e-04, -3.237403918397971955e-04, -3.240129648351962083e-04, -3.242849927966909816e-04, -3.245564753192276496e-04, -3.248274119986276770e-04, -3.250978024316665722e-04, -3.253676462160069380e-04, -3.256369429502447123e-04, -3.259056922338999531e-04, -3.261738936673765055e-04, -3.264415468520175134e-04, -3.267086513900891559e-04, -3.269752068847751728e-04, -3.272412129401624983e-04, -3.275066691612892912e-04, -3.277715751540693665e-04, -3.280359305253831054e-04, -3.282997348829996636e-04, -3.285629878356370365e-04, -3.288256889929163057e-04, -3.290878379653893403e-04, -3.293494343645269251e-04, -3.296104778027404442e-04, -3.298709678933439346e-04, -3.301309042505955562e-04, -3.303902864896846362e-04, -3.306491142266991426e-04, -3.309073870786697572e-04, -3.311651046635647258e-04, -3.314222666002797205e-04, -3.316788725086317687e-04, -3.319349220093522051e-04, -3.321904147241312331e-04, -3.324453502755851273e-04, -3.326997282872424101e-04, -3.329535483835931284e-04, -3.332068101900203866e-04, -3.334595133328793846e-04, -3.337116574394299266e-04, -3.339632421378862397e-04, -3.342142670573938811e-04, -3.344647318280283277e-04, -3.347146360807848938e-04, -3.349639794476293089e-04, -3.352127615614352673e-04, -3.354609820560311038e-04, -3.357086405661884087e-04, -3.359557367275888516e-04, -3.362022701768700435e-04, -3.364482405516153987e-04, -3.366936474903480642e-04, -3.369384906325141680e-04, -3.371827696185301991e-04, -3.374264840897138354e-04, -3.376696336883647709e-04, -3.379122180576967362e-04, -3.381542368418841192e-04, -3.383956896860490634e-04, -3.386365762362323565e-04, -3.388768961394347389e-04, -3.391166490436074710e-04, -3.393558345976480507e-04, -3.395944524513846551e-04, -3.398325022556166895e-04, -3.400699836620540723e-04, -3.403068963233937252e-04, -3.405432398932535455e-04, -3.407790140262203279e-04, -3.410142183778179970e-04, -3.412488526045083124e-04, -3.414829163637267016e-04, -3.417164093138542330e-04, -3.419493311142092679e-04, -3.421816814250754329e-04, -3.424134599076952769e-04, -3.426446662242364988e-04, -3.428753000378363994e-04, -3.431053610125921237e-04, -3.433348488135512283e-04, -3.435637631067159099e-04, -3.437921035590232183e-04, -3.440198698383947133e-04, -3.442470616137001437e-04, -3.444736785547546283e-04, -3.446997203323508025e-04, -3.449251866182050964e-04, -3.451500770850283702e-04, -3.453743914064624884e-04, -3.455981292571304645e-04, -3.458212903125939598e-04, -3.460438742493990370e-04, -3.462658807450159871e-04, -3.464873094779117538e-04, -3.467081601274893269e-04, -3.469284323741285620e-04, -3.471481258991772909e-04, -3.473672403849178188e-04, -3.475857755146123532e-04, -3.478037309724925949e-04, -3.480211064437522032e-04, -3.482379016145345984e-04, -3.484541161719722103e-04, -3.486697498041305327e-04, -3.488848022000725800e-04, -3.490992730498031042e-04, -3.493131620443089280e-04, -3.495264688755496743e-04, -3.497391932364246440e-04, -3.499513348208177022e-04, -3.501628933235920735e-04, -3.503738684405578708e-04, -3.505842598685093370e-04, -3.507940673052157383e-04, -3.510032904493919277e-04, -3.512119290007363463e-04, -3.514199826599248436e-04, -3.516274511286039011e-04, -3.518343341093866749e-04, -3.520406313058443764e-04, -3.522463424225431351e-04, -3.524514671650184113e-04, -3.526560052397644256e-04, -3.528599563542740569e-04, -3.530633202169787240e-04, -3.532660965373193461e-04, -3.534682850256870373e-04, -3.536698853934632761e-04, -3.538708973530046184e-04, -3.540713206176399866e-04, -3.542711549016598280e-04, -3.544703999203534651e-04, -3.546690553899865448e-04, -3.548671210277862384e-04, -3.550645965519813032e-04, -3.552614816817503663e-04, -3.554577761372659426e-04, -3.556534796396853279e-04, -3.558485919111431181e-04, -3.560431126747402582e-04, -3.562370416545848086e-04, -3.564303785757297663e-04, -3.566231231642422368e-04, -3.568152751471490068e-04, -3.570068342524704806e-04, -3.571978002092166676e-04, -3.573881727473561206e-04, -3.575779515978544246e-04, -3.577671364926641681e-04, -3.579557271647223950e-04, -3.581437233479379742e-04, -3.583311247772253717e-04, -3.585179311884522844e-04, -3.587041423185038241e-04, -3.588897579052271157e-04, -3.590747776874780254e-04, -3.592592014050781726e-04, -3.594430287988444744e-04, -3.596262596105770024e-04, -3.598088935830738903e-04, -3.599909304601058013e-04, -3.601723699864521405e-04, -3.603532119078509642e-04, -3.605334559710575816e-04, -3.607131019237984760e-04, -3.608921495148004156e-04, -3.610705984937786898e-04, -3.612484486114368927e-04, -3.614256996194549964e-04, -3.616023512705249135e-04, -3.617784033183264812e-04, -3.619538555175184089e-04, -3.621287076237718339e-04, -3.623029593937202855e-04, -3.624766105850196958e-04, -3.626496609562969539e-04, -3.628221102671902931e-04, -3.629939582783150293e-04, -3.631652047512980933e-04, -3.633358494487356929e-04, -3.635058921342431857e-04, -3.636753325724150724e-04, -3.638441705288474395e-04, -3.640124057701399113e-04, -3.641800380638667012e-04, -3.643470671786100596e-04, -3.645134928839517631e-04, -3.646793149504703492e-04, -3.648445331497310882e-04, -3.650091472543140090e-04, -3.651731570377699356e-04, -3.653365622746762684e-04, -3.654993627405871658e-04, -3.656615582120682382e-04, -3.658231484666866823e-04, -3.659841332829887289e-04, -3.661445124405345009e-04, -3.663042857198853816e-04, -3.664634529026017926e-04, -3.666220137712341404e-04, -3.667799681093533368e-04, -3.669373157015065634e-04, -3.670940563332528335e-04, -3.672501897911587096e-04, -3.674057158627915269e-04, -3.675606343367149483e-04, -3.677149450024853319e-04, -3.678686476506796499e-04, -3.680217420728741293e-04, -3.681742280616362288e-04, -3.683261054105560267e-04, -3.684773739141992748e-04, -3.686280333681639398e-04, -3.687780835690316304e-04, -3.689275243144012084e-04, -3.690763554028736091e-04, -3.692245766340531972e-04, -3.693721878085367075e-04, -3.695191887279457711e-04, -3.696655791949033884e-04, -3.698113590130274234e-04, -3.699565279869587394e-04, -3.701010859223226551e-04, -3.702450326257724755e-04, -3.703883679049537131e-04, -3.705310915685297297e-04, -3.706732034261602687e-04, -3.708147032885281808e-04, -3.709555909672997967e-04, -3.710958662751756131e-04, -3.712355290258447025e-04, -3.713745790340174015e-04, -3.715130161154130053e-04, -3.716508400867451307e-04, -3.717880507657486048e-04, -3.719246479711656953e-04, -3.720606315227507725e-04, -3.721960012412623949e-04, -3.723307569484778914e-04, -3.724648984671694008e-04, -3.725984256211367228e-04, -3.727313382351772858e-04, -3.728636361351117339e-04, -3.729953191477611047e-04, -3.731263871009635256e-04, -3.732568398235633724e-04, -3.733866771454282365e-04, -3.735158988974220909e-04, -3.736445049114390637e-04, -3.737724950203647855e-04, -3.738998690581165599e-04, -3.740266268596114871e-04, -3.741527682607884739e-04, -3.742782930985973371e-04, -3.744032012110009178e-04, -3.745274924369660285e-04, -3.746511666164882267e-04, -3.747742235905727874e-04, -3.748966632012334563e-04, -3.750184852915096887e-04, -3.751396897054362373e-04, -3.752602762880847317e-04, -3.753802448855241588e-04, -3.754995953448492154e-04, -3.756183275141699533e-04, -3.757364412426078223e-04, -3.758539363802938815e-04, -3.759708127783877181e-04, -3.760870702890559809e-04, -3.762027087654875039e-04, -3.763177280618872360e-04, -3.764321280334680000e-04, -3.765459085364649132e-04, -3.766590694281325138e-04, -3.767716105667429723e-04, -3.768835318115780139e-04, -3.769948330229493019e-04, -3.771055140621672663e-04, -3.772155747915793768e-04, -3.773250150745351768e-04, -3.774338347754131176e-04, -3.775420337596125894e-04, -3.776496118935359779e-04, -3.777565690446119204e-04, -3.778629050812922158e-04, -3.779686198730441808e-04, -3.780737132903559086e-04, -3.781781852047227162e-04, -3.782820354886732195e-04, -3.783852640157538290e-04, -3.784878706605202935e-04, -3.785898552985617689e-04, -3.786912178064737134e-04, -3.787919580618809810e-04, -3.788920759434199321e-04, -3.789915713307574069e-04, -3.790904441045706138e-04, -3.791886941465662112e-04, -3.792863213394592737e-04, -3.793833255669980123e-04, -3.794797067139413314e-04, -3.795754646660769887e-04, -3.796705993102093986e-04, -3.797651105341667333e-04, -3.798589982267876956e-04, -3.799522622779474314e-04, -3.800449025785362250e-04, -3.801369190204604751e-04, -3.802283114966596082e-04, -3.803190799010793531e-04, -3.804092241287028030e-04, -3.804987440755240699e-04, -3.805876396385655773e-04, -3.806759107158661881e-04, -3.807635572064961126e-04, -3.808505790105335981e-04, -3.809369760290934434e-04, -3.810227481643011405e-04, -3.811078953193156428e-04, -3.811924173983147830e-04, -3.812763143064935379e-04, -3.813595859500714010e-04, -3.814422322362960691e-04, -3.815242530734373706e-04, -3.816056483707804892e-04, -3.816864180386484611e-04, -3.817665619883670470e-04, -3.818460801323050641e-04, -3.819249723838397462e-04, -3.820032386573794033e-04, -3.820808788683610906e-04, -3.821578929332319061e-04, -3.822342807694676932e-04, -3.823100422955737990e-04, -3.823851774310755344e-04, -3.824596860965216423e-04, -3.825335682134807210e-04, -3.826068237045535288e-04, -3.826794524933570469e-04, -3.827514545045372727e-04, -3.828228296637649916e-04, -3.828935778977319280e-04, -3.829636991341512330e-04, -3.830331933017666461e-04, -3.831020603303452311e-04, -3.831703001506725514e-04, -3.832379126945685533e-04, -3.833048978948648522e-04, -3.833712556854288020e-04, -3.834369860011452259e-04, -3.835020887779269877e-04, -3.835665639527118475e-04, -3.836304114634608896e-04, -3.836936312491557579e-04, -3.837562232498079257e-04, -3.838181874064551177e-04, -3.838795236611535042e-04, -3.839402319569925541e-04, -3.840003122380753029e-04, -3.840597644495381390e-04, -3.841185885375387153e-04, -3.841767844492615866e-04, -3.842343521329131140e-04, -3.842912915377302472e-04, -3.843476026139657246e-04, -3.844032853129054753e-04, -3.844583395868539279e-04, -3.845127653891455030e-04, -3.845665626741423364e-04, -3.846197313972180161e-04, -3.846722715147825734e-04, -3.847241829842688757e-04, -3.847754657641344698e-04, -3.848261198138627206e-04, -3.848761450939532157e-04, -3.849255415659421481e-04, -3.849743091923869213e-04, -3.850224479368651725e-04, -3.850699577639862662e-04, -3.851168386393794213e-04, -3.851630905297003253e-04, -3.852087134026288572e-04, -3.852537072268713645e-04, -3.852980719721558383e-04, -3.853418076092407496e-04, -3.853849141099017681e-04, -3.854273914469449349e-04, -3.854692395941973384e-04, -3.855104585265146499e-04, -3.855510482197749430e-04, -3.855910086508801036e-04, -3.856303397977555044e-04, -3.856690416393548297e-04, -3.857071141556549254e-04, -3.857445573276552567e-04, -3.857813711373827875e-04, -3.858175555678840110e-04, -3.858531106032352500e-04, -3.858880362285317602e-04, -3.859223324298975970e-04, -3.859559991944808990e-04, -3.859890365104513398e-04, -3.860214443670019176e-04, -3.860532227543523156e-04, -3.860843716637450533e-04, -3.861148910874468419e-04, -3.861447810187505899e-04, -3.861740414519675970e-04, -3.862026723824362275e-04, -3.862306738065190374e-04, -3.862580457216028824e-04, -3.862847881260951239e-04, -3.863109010194278568e-04, -3.863363844020567713e-04, -3.863612382754629958e-04, -3.863854626421477307e-04, -3.864090575056372350e-04, -3.864320228704811464e-04, -3.864543587422512340e-04, -3.864760651275389049e-04, -3.864971420339648536e-04, -3.865175894701718519e-04, -3.865374074458206833e-04, -3.865565959715970817e-04, -3.865751550592102679e-04, -3.865930847213917029e-04, -3.866103849718927564e-04, -3.866270558254918631e-04, -3.866430972979862822e-04, -3.866585094061954046e-04, -3.866732921679605904e-04, -3.866874456021471740e-04, -3.867009697286392066e-04, -3.867138645683467196e-04, -3.867261301431962383e-04, -3.867377664761383711e-04, -3.867487735911470507e-04, -3.867591515132128119e-04, -3.867689002683520074e-04, -3.867780198836006278e-04, -3.867865103870119165e-04, -3.867943718076653141e-04, -3.868016041756575140e-04, -3.868082075221077748e-04, -3.868141818791555353e-04, -3.868195272799582456e-04, -3.868242437586975478e-04, -3.868283313505712522e-04, -3.868317900917997887e-04, -3.868346200196230082e-04, -3.868368211722995323e-04, -3.868383935891058314e-04, -3.868393373103444109e-04, -3.868396523773286319e-04, -3.868393388323985950e-04, -3.868383967189087803e-04, -3.868368260812323845e-04, -3.868346269647627298e-04, -3.868317994159146738e-04, -3.868283434821158276e-04, -3.868242592118167466e-04, -3.868195466544830166e-04, -3.868142058605992108e-04, -3.868082368816702448e-04, -3.868016397702148178e-04, -3.867944145797710498e-04, -3.867865613648963736e-04, -3.867780801811623848e-04, -3.867689710851573894e-04, -3.867592341344908494e-04, -3.867488693877839498e-04, -3.867378769046796822e-04, -3.867262567458317314e-04, -3.867140089729147754e-04, -3.867011336486172752e-04, -3.866876308366441316e-04, -3.866735006017150587e-04, -3.866587430095684325e-04, -3.866433581269544065e-04, -3.866273460216404956e-04, -3.866107067624076723e-04, -3.865934404190534573e-04, -3.865755470623886123e-04, -3.865570267642408266e-04, -3.865378795974488621e-04, -3.865181056358678118e-04, -3.864977049543654678e-04, -3.864766776288238392e-04, -3.864550237361387723e-04, -3.864327433542205474e-04, -3.864098365619900296e-04, -3.863863034393820299e-04, -3.863621440673461181e-04, -3.863373585278400096e-04, -3.863119469038381304e-04, -3.862859092793274971e-04, -3.862592457393014826e-04, -3.862319563697714717e-04, -3.862040412577562353e-04, -3.861755004912878942e-04, -3.861463341594093164e-04, -3.861165423521728166e-04, -3.860861251606444926e-04, -3.860550826768989127e-04, -3.860234149940191704e-04, -3.859911222061020880e-04, -3.859582044082528500e-04, -3.859246616965841359e-04, -3.858904941682210531e-04, -3.858557019212947945e-04, -3.858202850549504988e-04, -3.857842436693355954e-04, -3.857475778656118391e-04, -3.857102877459436005e-04, -3.856723734135070821e-04, -3.856338349724857642e-04, -3.855946725280680744e-04, -3.855548861864549221e-04, -3.855144760548485320e-04, -3.854734422414617676e-04, -3.854317848555102711e-04, -3.853895040072214079e-04, -3.853465998078238583e-04, -3.853030723695545566e-04, -3.852589218056533781e-04, -3.852141482303693735e-04, -3.851687517589509027e-04, -3.851227325076605427e-04, -3.850760905937559509e-04, -3.850288261355020629e-04, -3.849809392521698998e-04, -3.849324300640307676e-04, -3.848832986923645511e-04, -3.848335452594486557e-04, -3.847831698885673850e-04, -3.847321727040054363e-04, -3.846805538310502310e-04, -3.846283133959932702e-04, -3.845754515261259063e-04, -3.845219683497408066e-04, -3.844678639961351518e-04, -3.844131385956029378e-04, -3.843577922794386083e-04, -3.843018251799436681e-04, -3.842452374304130766e-04, -3.841880291651448968e-04, -3.841302005194334110e-04, -3.840717516295756259e-04, -3.840126826328693751e-04, -3.839529936676069227e-04, -3.838926848730788658e-04, -3.838317563895776588e-04, -3.837702083583910536e-04, -3.837080409218016660e-04, -3.836452542230963541e-04, -3.835818484065549425e-04, -3.835178236174552097e-04, -3.834531800020657866e-04, -3.833879177076573780e-04, -3.833220368824988592e-04, -3.832555376758462720e-04, -3.831884202379562138e-04, -3.831206847200789535e-04, -3.830523312744584853e-04, -3.829833600543323122e-04, -3.829137712139374632e-04, -3.828435649084974829e-04, -3.827727412942304543e-04, -3.827013005283518726e-04, -3.826292427690625012e-04, -3.825565681755652321e-04, -3.824832769080431841e-04, -3.824093691276831222e-04, -3.823348449966522552e-04, -3.822597046781126017e-04, -3.821839483362218033e-04, -3.821075761361227160e-04, -3.820305882439476927e-04, -3.819529848268204270e-04, -3.818747660528542176e-04, -3.817959320911464938e-04, -3.817164831117946986e-04, -3.816364192858711355e-04, -3.815557407854450861e-04, -3.814744477835671434e-04, -3.813925404542808668e-04, -3.813100189726125909e-04, -3.812268835145785810e-04, -3.811431342571760888e-04, -3.810587713783933263e-04, -3.809737950572025279e-04, -3.808882054735546912e-04, -3.808020028083977378e-04, -3.807151872436553711e-04, -3.806277589622367803e-04, -3.805397181480337128e-04, -3.804510649859220461e-04, -3.803617996617665586e-04, -3.802719223624047751e-04, -3.801814332756597056e-04, -3.800903325903409301e-04, -3.799986204962327806e-04, -3.799062971840998703e-04, -3.798133628456976650e-04, -3.797198176737534548e-04, -3.796256618619732936e-04, -3.795308956050489919e-04, -3.794355190986446183e-04, -3.793395325394102150e-04, -3.792429361249681908e-04, -3.791457300539229709e-04, -3.790479145258528106e-04, -3.789494897413131567e-04, -3.788504559018381654e-04, -3.787508132099449846e-04, -3.786505618691145638e-04, -3.785497020838085136e-04, -3.784482340594673162e-04, -3.783461580024970444e-04, -3.782434741202915333e-04, -3.781401826212065225e-04, -3.780362837145788456e-04, -3.779317776107148845e-04, -3.778266645208889964e-04, -3.777209446573605908e-04, -3.776146182333531493e-04, -3.775076854630614364e-04, -3.774001465616500894e-04, -3.772920017452602325e-04, -3.771832512309935387e-04, -3.770738952369336429e-04, -3.769639339821298247e-04, -3.768533676865947857e-04, -3.767421965713105042e-04, -3.766304208582309460e-04, -3.765180407702826602e-04, -3.764050565313503596e-04, -3.762914683662855401e-04, -3.761772765009151545e-04, -3.760624811620236142e-04, -3.759470825773610840e-04, -3.758310809756496072e-04, -3.757144765865742158e-04, -3.755972696407784304e-04, -3.754794603698728803e-04, -3.753610490064305865e-04, -3.752420357839965034e-04, -3.751224209370642619e-04, -3.750022047010961737e-04, -3.748813873125184061e-04, -3.747599690087103567e-04, -3.746379500280212424e-04, -3.745153306097567629e-04, -3.743921109941841970e-04, -3.742682914225234033e-04, -3.741438721369629212e-04, -3.740188533806377441e-04, -3.738932353976566416e-04, -3.737670184330711513e-04, -3.736402027329007868e-04, -3.735127885441134128e-04, -3.733847761146319140e-04, -3.732561656933462290e-04, -3.731269575300955152e-04, -3.729971518756681494e-04, -3.728667489818095334e-04, -3.727357491012264854e-04, -3.726041524875637668e-04, -3.724719593954396984e-04, -3.723391700804048522e-04, -3.722057847989757159e-04, -3.720718038086089975e-04, -3.719372273677205441e-04, -3.718020557356751512e-04, -3.716662891727882424e-04, -3.715299279403165458e-04, -3.713929723004779347e-04, -3.712554225164296350e-04, -3.711172788522757067e-04, -3.709785415730770721e-04, -3.708392109448400780e-04, -3.706992872345084180e-04, -3.705587707099749508e-04, -3.704176616400803985e-04, -3.702759602946174128e-04, -3.701336669443110595e-04, -3.699907818608336174e-04, -3.698473053168055001e-04, -3.697032375857853899e-04, -3.695585789422697496e-04, -3.694133296617115795e-04, -3.692674900204971069e-04, -3.691210602959503939e-04, -3.689740407663350723e-04, -3.688264317108578671e-04, -3.686782334096743428e-04, -3.685294461438609853e-04, -3.683800701954471316e-04, -3.682301058473907377e-04, -3.680795533835832579e-04, -3.679284130888704069e-04, -3.677766852490236453e-04, -3.676243701507450590e-04, -3.674714680816759237e-04, -3.673179793303980607e-04, -3.671639041864125318e-04, -3.670092429401774245e-04, -3.668539958830593331e-04, -3.666981633073749928e-04, -3.665417455063626020e-04, -3.663847427741900625e-04, -3.662271554059694538e-04, -3.660689836977372999e-04, -3.659102279464510467e-04, -3.657508884500035892e-04, -3.655909655072219172e-04, -3.654304594178453764e-04, -3.652693704825668683e-04, -3.651076990029795077e-04, -3.649454452816215623e-04, -3.647826096219432767e-04, -3.646191923283256288e-04, -3.644551937060875940e-04, -3.642906140614528060e-04, -3.641254537015716744e-04, -3.639597129345317934e-04, -3.637933920693278548e-04, -3.636264914158766101e-04, -3.634590112850319952e-04, -3.632909519885588385e-04, -3.631223138391386071e-04, -3.629530971503722257e-04, -3.627833022367839256e-04, -3.626129294138265573e-04, -3.624419789978540517e-04, -3.622704513061397432e-04, -3.620983466568858562e-04, -3.619256653691995990e-04, -3.617524077630992888e-04, -3.615785741595376628e-04, -3.614041648803726042e-04, -3.612291802483641608e-04, -3.610536205872042523e-04, -3.608774862214781808e-04, -3.607007774767076740e-04, -3.605234946793015537e-04, -3.603456381565982910e-04, -3.601672082368351062e-04, -3.599882052491555043e-04, -3.598086295236293869e-04, -3.596284813912263806e-04, -3.594477611838188731e-04, -3.592664692341865124e-04, -3.590846058760272658e-04, -3.589021714439270621e-04, -3.587191662734031598e-04, -3.585355907008517260e-04, -3.583514450635907162e-04, -3.581667296998327699e-04, -3.579814449486883542e-04, -3.577955911501897249e-04, -3.576091686452580751e-04, -3.574221777757154617e-04, -3.572346188842820945e-04, -3.570464923145912441e-04, -3.568577984111539515e-04, -3.566685375194058650e-04, -3.564787099856677214e-04, -3.562883161571539113e-04, -3.560973563819749724e-04, -3.559058310091457213e-04, -3.557137403885833019e-04, -3.555210848710825739e-04, -3.553278648083362792e-04, -3.551340805529439319e-04, -3.549397324583847138e-04, -3.547448208790259308e-04, -3.545493461701505517e-04, -3.543533086879153580e-04, -3.541567087893676951e-04, -3.539595468324428697e-04, -3.537618231759696256e-04, -3.535635381796787082e-04, -3.533646922041676830e-04, -3.531652856109255461e-04, -3.529653187623411274e-04, -3.527647920216668239e-04, -3.525637057530714544e-04, -3.523620603215781889e-04, -3.521598560931159944e-04, -3.519570934344803319e-04, -3.517537727133661710e-04, -3.515498942983278740e-04, -3.513454585588355206e-04, -3.511404658652048680e-04, -3.509349165886567110e-04, -3.507288111012766586e-04, -3.505221497760254335e-04, -3.503149329867642965e-04, -3.501071611082177504e-04, -3.498988345159830264e-04, -3.496899535865349634e-04, -3.494805186972348978e-04, -3.492705302262972709e-04, -3.490599885528429709e-04, -3.488488940568346065e-04, -3.486372471191290907e-04, -3.484250481214393137e-04, -3.482122974463616825e-04, -3.479989954773577972e-04, -3.477851425987665401e-04, -3.475707391957805485e-04, -3.473557856544800962e-04, -3.471402823617985613e-04, -3.469242297055348946e-04, -3.467076280743747077e-04, -3.464904778578567165e-04, -3.462727794463801140e-04, -3.460545332312103166e-04, -3.458357396044780424e-04, -3.456163989591934057e-04, -3.453965116892052599e-04, -3.451760781892292238e-04, -3.449550988548546202e-04, -3.447335740825084810e-04, -3.445115042695113291e-04, -3.442888898140086026e-04, -3.440657311150266537e-04, -3.438420285724368619e-04, -3.436177825869672349e-04, -3.433929935602060947e-04, -3.431676618946110226e-04, -3.429417879934667916e-04, -3.427153722609347524e-04, -3.424884151020170546e-04, -3.422609169225608204e-04, -3.420328781292907255e-04, -3.418042991297690460e-04, -3.415751803324018382e-04, -3.413455221464458235e-04, -3.411153249820210193e-04, -3.408845892500695935e-04, -3.406533153624187482e-04, -3.404215037317053676e-04, -3.401891547714384683e-04, -3.399562688959561563e-04, -3.397228465204374988e-04, -3.394888880609294129e-04, -3.392543939343085012e-04, -3.390193645582859853e-04, -3.387838003514161622e-04, -3.385477017331096862e-04, -3.383110691235930736e-04, -3.380739029439648645e-04, -3.378362036161284025e-04, -3.375979715628509232e-04, -3.373592072077150907e-04, -3.371199109751509817e-04, -3.368800832904396089e-04, -3.366397245796717212e-04, -3.363988352697766439e-04, -3.361574157885328495e-04, -3.359154665645365154e-04, -3.356729880272097104e-04, -3.354299806068308061e-04, -3.351864447344963128e-04, -3.349423808421242411e-04, -3.346977893624614739e-04, -3.344526707290902180e-04, -3.342070253764344544e-04, -3.339608537397185765e-04, -3.337141562549977478e-04, -3.334669333591675508e-04, -3.332191854899256068e-04, -3.329709130858250266e-04, -3.327221165862057268e-04, -3.324727964312591561e-04, -3.322229530619728389e-04, -3.319725869201781338e-04, -3.317216984484981927e-04, -3.314702880904155059e-04, -3.312183562901896655e-04, -3.309659034929261041e-04, -3.307129301445307749e-04, -3.304594366917183376e-04, -3.302054235820491295e-04, -3.299508912638766901e-04, -3.296958401863668976e-04, -3.294402707994966133e-04, -3.291841835540697822e-04, -3.289275789016750948e-04, -3.286704572947499550e-04, -3.284128191865043150e-04, -3.281546650309809026e-04, -3.278959952830159193e-04, -3.276368103982480926e-04, -3.273771108331491970e-04, -3.271168970449781920e-04, -3.268561694917903292e-04, -3.265949286324657213e-04, -3.263331749266711241e-04, -3.260709088348700733e-04, -3.258081308183551398e-04, -3.255448413392044533e-04, -3.252810408602876111e-04, -3.250167298452768454e-04, -3.247519087586438246e-04, -3.244865780656794947e-04, -3.242207382324393812e-04, -3.239543897257828910e-04, -3.236875330133808480e-04, -3.234201685636695772e-04, -3.231522968459175828e-04, -3.228839183301501423e-04, -3.226150334872073650e-04, -3.223456427887068420e-04, -3.220757467070548127e-04, -3.218053457154546222e-04, -3.215344402879123046e-04, -3.212630308991948412e-04, -3.209911180248606810e-04, -3.207187021412730762e-04, -3.204457837255497753e-04, -3.201723632556295390e-04, -3.198984412102157614e-04, -3.196240180687901313e-04, -3.193490943116138246e-04, -3.190736704197488630e-04, -3.187977468750078616e-04, -3.185213241600217912e-04, -3.182444027581623493e-04, -3.179669831536060371e-04, -3.176890658312884054e-04, -3.174106512769173365e-04, -3.171317399770016672e-04, -3.168523324188114525e-04, -3.165724290903804594e-04, -3.162920304805161959e-04, -3.160111370788163364e-04, -3.157297493756200412e-04, -3.154478678620778877e-04, -3.151654930300663263e-04, -3.148826253722623826e-04, -3.145992653820859773e-04, -3.143154135537397711e-04, -3.140310703821894860e-04, -3.137462363631693808e-04, -3.134609119931610005e-04, -3.131750977694323706e-04, -3.128887941899845997e-04, -3.126020017536212687e-04, -3.123147209598665193e-04, -3.120269523090317865e-04, -3.117386963021712924e-04, -3.114499534410966283e-04, -3.111607242283816882e-04, -3.108710091673779017e-04, -3.105808087621576927e-04, -3.102901235175567094e-04, -3.099989539391832566e-04, -3.097073005333646277e-04, -3.094151638072263600e-04, -3.091225442686006196e-04, -3.088294424261004692e-04, -3.085358587890644653e-04, -3.082417938676025745e-04, -3.079472481725428301e-04, -3.076522222155035949e-04, -3.073567165088035721e-04, -3.070607315655403012e-04, -3.067642678995354606e-04, -3.064673260253454384e-04, -3.061699064583036701e-04, -3.058720097144649111e-04, -3.055736363106165122e-04, -3.052747867642868762e-04, -3.049754615937634561e-04, -3.046756613180361052e-04, -3.043753864568791512e-04, -3.040746375307577212e-04, -3.037734150609033650e-04, -3.034717195692614709e-04, -3.031695515785083964e-04, -3.028669116120794947e-04, -3.025638001941284030e-04, -3.022602178495271508e-04, -3.019561651038816098e-04, -3.016516424835434746e-04, -3.013466505155609309e-04, -3.010411897277548757e-04, -3.007352606486258921e-04, -3.004288638074338299e-04, -3.001219997341342174e-04, -2.998146689594216835e-04, -2.995068720147300119e-04, -2.991986094321851951e-04, -2.988898817446380691e-04, -2.985806894856795463e-04, -2.982710331895851584e-04, -2.979609133913974561e-04, -2.976503306268265875e-04, -2.973392854323337817e-04, -2.970277783450744826e-04, -2.967158099029184063e-04, -2.964033806444551795e-04, -2.960904911090074575e-04, -2.957771418365754139e-04, -2.954633333678761509e-04, -2.951490662443566554e-04, -2.948343410081386679e-04, -2.945191582021001054e-04, -2.942035183697765620e-04, -2.938874220554439252e-04, -2.935708698040563050e-04, -2.932538621612991599e-04, -2.929363996735251125e-04, -2.926184828878392215e-04, -2.923001123519982053e-04, -2.919812886144933293e-04, -2.916620122244951117e-04, -2.913422837318645447e-04, -2.910221036871966254e-04, -2.907014726417586647e-04, -2.903803911475103991e-04, -2.900588597571043164e-04, -2.897368790239044658e-04, -2.894144495019388623e-04, -2.890915717459702845e-04, -2.887682463114082921e-04, -2.884444737543827883e-04, -2.881202546316953940e-04, -2.877955895008243265e-04, -2.874704789199743812e-04, -2.871449234480126381e-04, -2.868189236444774071e-04, -2.864924800696204573e-04, -2.861655932843400673e-04, -2.858382638502659731e-04, -2.855104923296614638e-04, -2.851822792855041554e-04, -2.848536252814283650e-04, -2.845245308817509152e-04, -2.841949966514674473e-04, -2.838650231562765453e-04, -2.835346109625135991e-04, -2.832037606371965040e-04, -2.828724727480381291e-04, -2.825407478633874445e-04, -2.822085865523166919e-04, -2.818759893845156745e-04, -2.815429569303833719e-04, -2.812094897609627802e-04, -2.808755884479660105e-04, -2.805412535637791141e-04, -2.802064856814749302e-04, -2.798712853747550812e-04, -2.795356532179929607e-04, -2.791995897862448476e-04, -2.788630956551939061e-04, -2.785261714012283031e-04, -2.781888176013715477e-04, -2.778510348333021701e-04, -2.775128236753532872e-04, -2.771741847065390036e-04, -2.768351185064916358e-04, -2.764956256555519180e-04, -2.761557067346587929e-04, -2.758153623254452555e-04, -2.754745930101724872e-04, -2.751333993717438968e-04, -2.747917819937524997e-04, -2.744497414604146193e-04, -2.741072783565912997e-04, -2.737643932677874927e-04, -2.734210867801625203e-04, -2.730773594805429769e-04, -2.727332119563620136e-04, -2.723886447957034654e-04, -2.720436585873163798e-04, -2.716982539205578789e-04, -2.713524313854520859e-04, -2.710061915726509857e-04, -2.706595350734529101e-04, -2.703124624797722890e-04, -2.699649743841867045e-04, -2.696170713798734108e-04, -2.692687540606950947e-04, -2.689200230210954672e-04, -2.685708788561883302e-04, -2.682213221616936089e-04, -2.678713535339626137e-04, -2.675209735699827563e-04, -2.671701828673935420e-04, -2.668189820244210833e-04, -2.664673716399254262e-04, -2.661153523134155655e-04, -2.657629246449862907e-04, -2.654100892354068191e-04, -2.650568466860152490e-04, -2.647031975988101203e-04, -2.643491425763771227e-04, -2.639946822219527926e-04, -2.636398171393521963e-04, -2.632845479330615758e-04, -2.629288752081278139e-04, -2.625727995702523262e-04, -2.622163216257247624e-04, -2.618594419814425215e-04, -2.615021612449516808e-04, -2.611444800243851961e-04, -2.607863989284782977e-04, -2.604279185665749410e-04, -2.600690395486494368e-04, -2.597097624852430248e-04, -2.593500879875573328e-04, -2.589900166673445459e-04, -2.586295491369981553e-04, -2.582686860094896399e-04, -2.579074278983868986e-04, -2.575457754178929557e-04, -2.571837291827898538e-04, -2.568212898084484656e-04, -2.564584579108361920e-04, -2.560952341065249305e-04, -2.557316190127063632e-04, -2.553676132471164955e-04, -2.550032174281251576e-04, -2.546384321746693801e-04, -2.542732581062776259e-04, -2.539076958430753735e-04, -2.535417460058023566e-04, -2.531754092157439875e-04, -2.528086860947806888e-04, -2.524415772654031807e-04, -2.520740833506459103e-04, -2.517062049741837634e-04, -2.513379427602165420e-04, -2.509692973335658382e-04, -2.506002693196104155e-04, -2.502308593443070255e-04, -2.498610680341996782e-04, -2.494908960164327603e-04, -2.491203439186860376e-04, -2.487494123692232813e-04, -2.483781019969063630e-04, -2.480064134311286300e-04, -2.476343473019123752e-04, -2.472619042397942914e-04, -2.468890848759210436e-04, -2.465158898419750550e-04, -2.461423197702391260e-04, -2.457683752935211903e-04, -2.453940570452525435e-04, -2.450193656593704244e-04, -2.446443017704185742e-04, -2.442688660134753002e-04, -2.438930590241737229e-04, -2.435168814387474482e-04, -2.431403338939649192e-04, -2.427634170271432119e-04, -2.423861314761567370e-04, -2.420084778794445301e-04, -2.416304568760239404e-04, -2.412520691054252263e-04, -2.408733152077390969e-04, -2.404941958236333284e-04, -2.401147115942915331e-04, -2.397348631614724924e-04, -2.393546511674745139e-04, -2.389740762551517759e-04, -2.385931390678781687e-04, -2.382118402496077663e-04, -2.378301804447950293e-04, -2.374481602984969094e-04, -2.370657804562521776e-04, -2.366830415641845049e-04, -2.362999442689287910e-04, -2.359164892176601660e-04, -2.355326770580997917e-04, -2.351485084385280069e-04, -2.347639840077219591e-04, -2.343791044149979154e-04, -2.339938703102316180e-04, -2.336082823437893297e-04, -2.332223411666253029e-04, -2.328360474301668004e-04, -2.324494017864089631e-04, -2.320624048878515736e-04, -2.316750573875196566e-04, -2.312873599389722330e-04, -2.308993131963169845e-04, -2.305109178141366631e-04, -2.301221744475747430e-04, -2.297330837522718863e-04, -2.293436463843813932e-04, -2.289538630006153616e-04, -2.285637342581784965e-04, -2.281732608147853765e-04, -2.277824433286632175e-04, -2.273912824585641796e-04, -2.269997788637778343e-04, -2.266079332040643244e-04, -2.262157461397011464e-04, -2.258232183315042932e-04, -2.254303504407707912e-04, -2.250371431292962640e-04, -2.246435970594280317e-04, -2.242497128939904090e-04, -2.238554912963058201e-04, -2.234609329301971844e-04, -2.230660384600009261e-04, -2.226708085505785489e-04, -2.222752438672480325e-04, -2.218793450758364165e-04, -2.214831128426922422e-04, -2.210865478346271131e-04, -2.206896507189653523e-04, -2.202924221635505072e-04, -2.198948628366771262e-04, -2.194969734071397917e-04, -2.190987545442497084e-04, -2.187002069177650435e-04, -2.183013311979936546e-04, -2.179021280556694095e-04, -2.175025981620557272e-04, -2.171027421888755663e-04, -2.167025608083367671e-04, -2.163020546931376635e-04, -2.159012245164859201e-04, -2.155000709520250510e-04, -2.150985946738880603e-04, -2.146967963567114287e-04, -2.142946766755661036e-04, -2.138922363060615287e-04, -2.134894759242178975e-04, -2.130863962065767422e-04, -2.126829978301147668e-04, -2.122792814723083025e-04, -2.118752478110939516e-04, -2.114708975248887264e-04, -2.110662312925491203e-04, -2.106612497934359438e-04, -2.102559537073487022e-04, -2.098503437145421847e-04, -2.094444204957813518e-04, -2.090381847322650617e-04, -2.086316371056458840e-04, -2.082247782980362256e-04, -2.078176089920174381e-04, -2.074101298706543456e-04, -2.070023416174256669e-04, -2.065942449162730746e-04, -2.061858404516209013e-04, -2.057771289083198149e-04, -2.053681109716640576e-04, -2.049587873274432163e-04, -2.045491586618702049e-04, -2.041392256615990448e-04, -2.037289890137304756e-04, -2.033184494058201414e-04, -2.029076075258976180e-04, -2.024964640623819266e-04, -2.020850197041805215e-04, -2.016732751406157811e-04, -2.012612310614505953e-04, -2.008488881568974184e-04, -2.004362471176333123e-04, -2.000233086347283893e-04, -1.996100733996980438e-04, -1.991965421045194858e-04, -1.987827154415578530e-04, -1.983685941036767450e-04, -1.979541787841056796e-04, -1.975394701765509256e-04, -1.971244689751215054e-04, -1.967091758743525875e-04, -1.962935915692176289e-04, -1.958777167551424428e-04, -1.954615521279310937e-04, -1.950450983838209200e-04, -1.946283562195007765e-04, -1.942113263320307214e-04, -1.937940094189596256e-04, -1.933764061781882921e-04, -1.929585173080811827e-04, -1.925403435073843716e-04, -1.921218854752747404e-04, -1.917031439113744528e-04, -1.912841195156701540e-04, -1.908648129885703794e-04, -1.904452250309221430e-04, -1.900253563439543417e-04, -1.896052076292940999e-04, -1.891847795890235818e-04, -1.887640729256024436e-04, -1.883430883418850995e-04, -1.879218265411311572e-04, -1.875002882270112453e-04, -1.870784741036248487e-04, -1.866563848754254715e-04, -1.862340212472756871e-04, -1.858113839244626426e-04, -1.853884736126341448e-04, -1.849652910178600806e-04, -1.845418368465958519e-04, -1.841181118056994792e-04, -1.836941166023938171e-04, -1.832698519443276758e-04, -1.828453185394941544e-04, -1.824205170963409846e-04, -1.819954483236359548e-04, -1.815701129305808867e-04, -1.811445116267340334e-04, -1.807186451220369134e-04, -1.802925141268241769e-04, -1.798661193518380258e-04, -1.794394615081552197e-04, -1.790125413072419364e-04, -1.785853594609681648e-04, -1.781579166815344944e-04, -1.777302136815825677e-04, -1.773022511740628354e-04, -1.768740298723459308e-04, -1.764455504901449594e-04, -1.760168137415358549e-04, -1.755878203410099361e-04, -1.751585710034000726e-04, -1.747290664438848589e-04, -1.742993073780498177e-04, -1.738692945218137012e-04, -1.734390285914510154e-04, -1.730085103036469081e-04, -1.725777403754173982e-04, -1.721467195241297864e-04, -1.717154484675102169e-04, -1.712839279236520805e-04, -1.708521586110337681e-04, -1.704201412484406897e-04, -1.699878765550220320e-04, -1.695553652503092174e-04, -1.691226080541558387e-04, -1.686896056867562266e-04, -1.682563588687027223e-04, -1.678228683209059889e-04, -1.673891347646147435e-04, -1.669551589214225338e-04, -1.665209415132784716e-04, -1.660864832625021949e-04, -1.656517848917081091e-04, -1.652168471238607626e-04, -1.647816706822928718e-04, -1.643462562906391577e-04, -1.639106046728877641e-04, -1.634747165533950296e-04, -1.630385926568011644e-04, -1.626022337080917782e-04, -1.621656404326123004e-04, -1.617288135559926548e-04, -1.612917538042593396e-04, -1.608544619037001998e-04, -1.604169385809794339e-04, -1.599791845630589354e-04, -1.595412005772157483e-04, -1.591029873510995567e-04, -1.586645456126529422e-04, -1.582258760901316579e-04, -1.577869795121114864e-04, -1.573478566075159953e-04, -1.569085081055395588e-04, -1.564689347357599519e-04, -1.560291372280035575e-04, -1.555891163124584209e-04, -1.551488727195884357e-04, -1.547084071801973386e-04, -1.542677204253912776e-04, -1.538268131865945325e-04, -1.533856861955105652e-04, -1.529443401841893487e-04, -1.525027758849582219e-04, -1.520609940304381257e-04, -1.516189953536026648e-04, -1.511767805876990697e-04, -1.507343504662652181e-04, -1.502917057231391491e-04, -1.498488470924676285e-04, -1.494057753087233060e-04, -1.489624911066268699e-04, -1.485189952212036691e-04, -1.480752883878017653e-04, -1.476313713420331693e-04, -1.471872448197908087e-04, -1.467429095573069932e-04, -1.462983662910732929e-04, -1.458536157578499426e-04, -1.454086586947230615e-04, -1.449634958390133360e-04, -1.445181279283962845e-04, -1.440725557007596581e-04, -1.436267798943237600e-04, -1.431808012475587204e-04, -1.427346204992136077e-04, -1.422882383883258611e-04, -1.418416556542390170e-04, -1.413948730365231017e-04, -1.409478912750313081e-04, -1.405007111099211645e-04, -1.400533332815712411e-04, -1.396057585307003575e-04, -1.391579875982275317e-04, -1.387100212253895609e-04, -1.382618601536606830e-04, -1.378135051247697605e-04, -1.373649568807613485e-04, -1.369162161639121298e-04, -1.364672837167526804e-04, -1.360181602820719686e-04, -1.355688466029503962e-04, -1.351193434226763694e-04, -1.346696514848546916e-04, -1.342197715333165475e-04, -1.337697043121385311e-04, -1.333194505656499910e-04, -1.328690110384413787e-04, -1.324183864753870985e-04, -1.319675776215582829e-04, -1.315165852222867067e-04, -1.310654100231803995e-04, -1.306140527700633367e-04, -1.301625142089955247e-04, -1.297107950863296501e-04, -1.292588961486309032e-04, -1.288068181426956535e-04, -1.283545618155609088e-04, -1.279021279145111734e-04, -1.274495171870995626e-04, -1.269967303810648344e-04, -1.265437682443906135e-04, -1.260906315253251515e-04, -1.256373209723084955e-04, -1.251838373340418494e-04, -1.247301813594471338e-04, -1.242763537976847939e-04, -1.238223553981131415e-04, -1.233681869103564705e-04, -1.229138490842145799e-04, -1.224593426697807895e-04, -1.220046684173016168e-04, -1.215498270772948872e-04, -1.210948194004681210e-04, -1.206396461377382792e-04, -1.201843080402902427e-04, -1.197288058594952803e-04, -1.192731403469291548e-04, -1.188173122543825181e-04, -1.183613223338892897e-04, -1.179051713376430652e-04, -1.174488600181194681e-04, -1.169923891279327373e-04, -1.165357594199551653e-04, -1.160789716472347531e-04, -1.156220265630153899e-04, -1.151649249207959016e-04, -1.147076674742467838e-04, -1.142502549772204614e-04, -1.137926881838104045e-04, -1.133349678482782564e-04, -1.128770947250747726e-04, -1.124190695688960631e-04, -1.119608931346050159e-04, -1.115025661772478977e-04, -1.110440894520637738e-04, -1.105854637144935878e-04, -1.101266897201998537e-04, -1.096677682249828196e-04, -1.092086999848414409e-04, -1.087494857559912018e-04, -1.082901262948032778e-04, -1.078306223578225472e-04, -1.073709747018282250e-04, -1.069111840837504336e-04, -1.064512512606896507e-04, -1.059911769899254914e-04, -1.055309620289261540e-04, -1.050706071353673261e-04, -1.046101130670487009e-04, -1.041494805819550315e-04, -1.036887104382744535e-04, -1.032278033943160998e-04, -1.027667602086208918e-04, -1.023055816398681903e-04, -1.018442684468955680e-04, -1.013828213887077548e-04, -1.009212412245045690e-04, -1.004595287136003477e-04, -9.999768461554337201e-05, -9.953570968997272467e-05, -9.907360469673885380e-05, -9.861137039582086160e-05, -9.814900754734591168e-05, -9.768651691164888717e-05, -9.722389924919027607e-05, -9.676115532057475170e-05, -9.629828588655870792e-05, -9.583529170808278519e-05, -9.537217354618632704e-05, -9.490893216212989490e-05, -9.444556831724998500e-05, -9.398208277308241058e-05, -9.351847629126645845e-05, -9.305474963361724588e-05, -9.259090356208225770e-05, -9.212693883876194609e-05, -9.166285622586584753e-05, -9.119865648578427567e-05, -9.073434038101481239e-05, -9.026990867418202677e-05, -8.980536212809693000e-05, -8.934070150567461667e-05, -8.887592756995256070e-05, -8.841104108410109143e-05, -8.794604281143014279e-05, -8.748093351541091022e-05, -8.701571395959098476e-05, -8.655038490765517678e-05, -8.608494712344466572e-05, -8.561940137089467200e-05, -8.515374841405260386e-05, -8.468798901713978913e-05, -8.422212394446692099e-05, -8.375615396044380225e-05, -8.329007982963931530e-05, -8.282390231668790965e-05, -8.235762218641208966e-05, -8.189124020367610150e-05, -8.142475713350877321e-05, -8.095817374102072235e-05, -8.049149079142200135e-05, -8.002470905008424943e-05, -7.955782928245592155e-05, -7.909085225408237320e-05, -7.862377873061393780e-05, -7.815660947783709741e-05, -7.768934526158953555e-05, -7.722198684788289600e-05, -7.675453500275735059e-05, -7.628699049240385657e-05, -7.581935408308114737e-05, -7.535162654113348644e-05, -7.488380863305352383e-05, -7.441590112539640030e-05, -7.394790478480030651e-05, -7.347982037799533279e-05, -7.301164867183313563e-05, -7.254339043320325085e-05, -7.207504642914496970e-05, -7.160661742675367733e-05, -7.113810419319989409e-05, -7.066950749573849128e-05, -7.020082810171778486e-05, -6.973206677859886138e-05, -6.926322429387183688e-05, -6.879430141511628767e-05, -6.832529891002107761e-05, -6.785621754632108140e-05, -6.738705809181527717e-05, -6.691782131443015883e-05, -6.644850798213346058e-05, -6.597911886295411985e-05, -6.550965472499230616e-05, -6.504011633642729513e-05, -6.457050446553790567e-05, -6.410081988061744438e-05, -6.363106335003543724e-05, -6.316123564225669805e-05, -6.269133752575719437e-05, -6.222136976914734835e-05, -6.175133314102535778e-05, -6.128122841010098484e-05, -6.081105634509967198e-05, -6.034081771484586288e-05, -5.987051328816707087e-05, -5.940014383401806070e-05, -5.892971012133402052e-05, -5.845921291915351039e-05, -5.798865299653444336e-05, -5.751803112257355369e-05, -5.704734806646776950e-05, -5.657660459742925191e-05, -5.610580148470535800e-05, -5.563493949758768027e-05, -5.516401940544188255e-05, -5.469304197762341009e-05, -5.422200798360097336e-05, -5.375091819280950996e-05, -5.327977337477419697e-05, -5.280857429901504796e-05, -5.233732173511856521e-05, -5.186601645269556422e-05, -5.139465922139996432e-05, -5.092325081088561704e-05, -5.045179199087940176e-05, -4.998028353110526369e-05, -4.950872620130491542e-05, -4.903712077129893169e-05, -4.856546801090216810e-05, -4.809376868994296497e-05, -4.762202357827232925e-05, -4.715023344577385495e-05, -4.667839906238257467e-05, -4.620652119800051384e-05, -4.573460062255785329e-05, -4.526263810603313600e-05, -4.479063441836745257e-05, -4.431859032958988337e-05, -4.384650660966855630e-05, -4.337438402863591952e-05, -4.290222335650311665e-05, -4.243002536329078484e-05, -4.195779081903745056e-05, -4.148552049381986522e-05, -4.101321515765740558e-05, -4.054087558062583369e-05, -4.006850253277226834e-05, -3.959609678413491076e-05, -3.912365910480491868e-05, -3.865119026484093053e-05, -3.817869103428890636e-05, -3.770616218319149940e-05, -3.723360448161828497e-05, -3.676101869958005433e-05, -3.628840560715436523e-05, -3.581576597433652515e-05, -3.534310057116478275e-05, -3.487041016763520445e-05, -3.439769553372066830e-05, -3.392495743943382223e-05, -3.345219665474043598e-05, -3.297941394958019747e-05, -3.250661009387562355e-05, -3.203378585756237702e-05, -3.156094201050360111e-05, -3.108807932261534136e-05, -3.061519856371792855e-05, -3.014230050366065525e-05, -2.966938591222617282e-05, -2.919645555919205386e-05, -2.872351021434054995e-05, -2.825055064737271948e-05, -2.777757762797039659e-05, -2.730459192581615743e-05, -2.683159431052882364e-05, -2.635858555168322200e-05, -2.588556641887214654e-05, -2.541253768162089633e-05, -2.493950010940708924e-05, -2.446645447166983703e-05, -2.399340153781909322e-05, -2.352034207725565317e-05, -2.304727685928541748e-05, -2.257420665318126939e-05, -2.210113222820315963e-05, -2.162805435351243755e-05, -2.115497379829702219e-05, -2.068189133162262272e-05, -2.020880772255803485e-05, -1.973572374007907045e-05, -1.926264015315141761e-05, -1.878955773063466510e-05, -1.831647724140767337e-05, -1.784339945421952727e-05, -1.737032513781493418e-05, -1.689725506084848055e-05, -1.642418999190474048e-05, -1.595113069956009220e-05, -1.547807795229705249e-05, -1.500503251852439378e-05, -1.453199516658610740e-05, -1.405896666479208314e-05, -1.358594778133237427e-05, -1.311293928440249232e-05, -1.263994194205452244e-05, -1.216695652232246394e-05, -1.169398379313660370e-05, -1.122102452234340455e-05, -1.074807947776738945e-05, -1.027514942712569623e-05, -9.802235138047926948e-06, -9.329337378085270427e-06, -8.856456914741130977e-06, -8.383594515385334119e-06, -7.910750947368991025e-06, -7.437926977928266264e-06, -6.965123374204341516e-06, -6.492340903252609273e-06, -6.019580332052052875e-06, -5.546842427525011184e-06, -5.074127956451662133e-06, -4.601437685532016221e-06, -4.128772381405776050e-06, -3.656132810566711879e-06, -3.183519739487950079e-06, -2.710933934473209163e-06, -2.238376161781934925e-06, -1.765847187543850487e-06, -1.293347777789267160e-06, -8.208786984584148310e-07, -3.484407154212652866e-07, 1.239654056079981571e-07, 5.963388990090000242e-07, 1.068678999235333897e-06, 1.540984940900096331e-06, 2.013255958650684323e-06, 2.485491287317539960e-06, 2.957690161788961915e-06, 3.429851817107143313e-06, 3.901975488385146829e-06, 4.374060410902951030e-06, 4.846105819982284735e-06, 5.318110951135262243e-06, 5.790075039939361689e-06, 6.261997322122766159e-06, 6.733877033544643067e-06, 7.205713410133120164e-06, 7.677505687970873991e-06, 8.149253103275130573e-06, 8.620954892388537803e-06, 9.092610291748671398e-06, 9.564218537973670788e-06, 1.003577886773690703e-05, 1.050729051791581497e-05, 1.097875272546664248e-05, 1.145016472752054127e-05, 1.192152576131104900e-05, 1.239283506421740825e-05, 1.286409187374479846e-05, 1.333529542756765657e-05, 1.380644496345716762e-05, 1.427753971937730476e-05, 1.474857893335971906e-05, 1.521956184365235821e-05, 1.569048768859431577e-05, 1.616135570670131365e-05, 1.663216513663528183e-05, 1.710291521719530696e-05, 1.757360518729745769e-05, 1.804423428606048751e-05, 1.851480175274366588e-05, 1.898530682672737782e-05, 1.945574874759788481e-05, 1.992612675502300739e-05, 2.039644008890001721e-05, 2.086668798923112987e-05, 2.133686969620851324e-05, 2.180698445018418042e-05, 2.227703149166049290e-05, 2.274701006127062791e-05, 2.321691939987423898e-05, 2.368675874844291672e-05, 2.415652734814600347e-05, 2.462622444033001371e-05, 2.509584926645767828e-05, 2.556540106819251546e-05, 2.603487908737938989e-05, 2.650428256603519183e-05, 2.697361074631853710e-05, 2.744286287061484646e-05, 2.791203818141189271e-05, 2.838113592144752331e-05, 2.885015533358550559e-05, 2.931909566090032840e-05, 2.978795614665726626e-05, 3.025673603425108130e-05, 3.072543456729100782e-05, 3.119405098958086389e-05, 3.166258454510986953e-05, 3.213103447802242123e-05, 3.259940003270307300e-05, 3.306768045365227331e-05, 3.353587498563393853e-05, 3.400398287355098652e-05, 3.447200336254122754e-05, 3.493993569791499553e-05, 3.540777912514678617e-05, 3.587553288995939780e-05, 3.634319623826301953e-05, 3.681076841613502445e-05, 3.727824866990512014e-05, 3.774563624603086197e-05, 3.821293039124559922e-05, 3.868013035243385284e-05, 3.914723537671649985e-05, 3.961424471142022596e-05, 4.008115760406870284e-05, 4.054797330236242200e-05, 4.101469105426421122e-05, 4.148131010793686580e-05, 4.194782971172416827e-05, 4.241424911423525966e-05, 4.288056756422091843e-05, 4.334678431072046994e-05, 4.381289860293791625e-05, 4.427890969033739345e-05, 4.474481682256024369e-05, 4.521061924952064179e-05, 4.567631622128173199e-05, 4.614190698820204938e-05, 4.660739080081276794e-05, 4.707276690990102821e-05, 4.753803456649130938e-05, 4.800319302178371783e-05, 4.846824152723836518e-05, 4.893317933455608302e-05, 4.939800569566899717e-05, 4.986271986271057654e-05, 5.032732108809996380e-05, 5.079180862441855921e-05, 5.125618172455646251e-05, 5.172043964158959216e-05, 5.218458162886297234e-05, 5.264860693997219993e-05, 5.311251482870184146e-05, 5.357630454910954011e-05, 5.403997535551712526e-05, 5.450352650244951087e-05, 5.496695724472908893e-05, 5.543026683735269950e-05, 5.589345453563772706e-05, 5.635651959509899606e-05, 5.681946127153305410e-05, 5.728227882098827509e-05, 5.774497149975515558e-05, 5.820753856434734806e-05, 5.866997927158584244e-05, 5.913229287853727497e-05, 5.959447864249513765e-05, 6.005653582106339054e-05, 6.051846367203393337e-05, 6.098026145353159050e-05, 6.144192842389261246e-05, 6.190346384174738028e-05, 6.236486696599119982e-05, 6.282613705577503856e-05, 6.328727337048609808e-05, 6.374827516983125699e-05, 6.420914171377708742e-05, 6.466987226252944490e-05, 6.513046607661776512e-05, 6.559092241678288963e-05, 6.605124054407029370e-05, 6.651141971981223760e-05, 6.697145920561669425e-05, 6.743135826333867199e-05, 6.789111615516403705e-05, 6.835073214348622614e-05, 6.881020549105262732e-05, 6.926953546084133333e-05, 6.972872131614501817e-05, 7.018776232055190935e-05, 7.064665773788416454e-05, 7.110540683228287306e-05, 7.156400886818733401e-05, 7.202246311032628782e-05, 7.248076882370922908e-05, 7.293892527360693154e-05, 7.339693172563409144e-05, 7.385478744569027915e-05, 7.431249169993875653e-05, 7.477004375488131404e-05, 7.522744287728617128e-05, 7.568468833423114175e-05, 7.614177939308360227e-05, 7.659871532154352222e-05, 7.705549538757213660e-05, 7.751211885948514676e-05, 7.796858500583213000e-05, 7.842489309553964073e-05, 7.888104239779089111e-05, 7.933703218210763543e-05, 7.979286171832096443e-05, 8.024853027656333635e-05, 8.070403712724739443e-05, 8.115938154115065657e-05, 8.161456278935362097e-05, 8.206958014322240534e-05, 8.252443287449018404e-05, 8.297912025513639440e-05, 8.343364155753120665e-05, 8.388799605431264319e-05, 8.434218301848216452e-05, 8.479620172332134832e-05, 8.525005144248710954e-05, 8.570373144988909062e-05, 8.615724101983438898e-05, 8.661057942690569269e-05, 8.706374594604506217e-05, 8.751673985253352009e-05, 8.796956042193123054e-05, 8.842220693016110454e-05, 8.887467865348864745e-05, 8.932697486851309560e-05, 8.977909485213835970e-05, 9.023103788165547838e-05, 9.068280323462148574e-05, 9.113439018900310875e-05, 9.158579802305596008e-05, 9.203702601540628689e-05, 9.248807344503365074e-05, 9.293893959120873500e-05, 9.338962373357754675e-05, 9.384012515214127769e-05, 9.429044312724802358e-05, 9.474057693958313478e-05, 9.519052587015035120e-05, 9.564028920036416273e-05, 9.608986621193991182e-05, 9.653925618697483757e-05, 9.698845840791990006e-05, 9.743747215757064589e-05, 9.788629671904828893e-05, 9.833493137588045620e-05, 9.878337541194319666e-05, 9.923162811144139778e-05, 9.967968875898999229e-05, 1.001275566394960648e-04, 1.005752310382985646e-04, 1.010227112410499789e-04, 1.014699965337978509e-04, 1.019170862029557099e-04, 1.023639795352940859e-04, 1.028106758179215359e-04, 1.032571743383660270e-04, 1.037034743845160508e-04, 1.041495752446018391e-04, 1.045954762072759614e-04, 1.050411765614947670e-04, 1.054866755966603478e-04, 1.059319726025001647e-04, 1.063770668691589881e-04, 1.068219576871207404e-04, 1.072666443472974413e-04, 1.077111261409131573e-04, 1.081554023596425763e-04, 1.085994722954943480e-04, 1.090433352408900401e-04, 1.094869904886469815e-04, 1.099304373319186440e-04, 1.103736750642760804e-04, 1.108167029796883673e-04, 1.112595203725141895e-04, 1.117021265374935999e-04, 1.121445207697281514e-04, 1.125867023647617921e-04, 1.130286706185237280e-04, 1.134704248273075110e-04, 1.139119642878330148e-04, 1.143532882972283832e-04, 1.147943961529691517e-04, 1.152352871529615147e-04, 1.156759605955319438e-04, 1.161164157793689259e-04, 1.165566520036138189e-04, 1.169966685677427691e-04, 1.174364647717061660e-04, 1.178760399158118203e-04, 1.183153933008038118e-04, 1.187545242278357100e-04, 1.191934319984600167e-04, 1.196321159146110353e-04, 1.200705752786843295e-04, 1.205088093934782173e-04, 1.209468175621755285e-04, 1.213845990884243110e-04, 1.218221532762187845e-04, 1.222594794300404500e-04, 1.226965768547400200e-04, 1.231334448556162264e-04, 1.235700827383907484e-04, 1.240064898091949852e-04, 1.244426653745546332e-04, 1.248786087414691852e-04, 1.253143192173527057e-04, 1.257497961100154809e-04, 1.261850387277461472e-04, 1.266200463792002077e-04, 1.270548183734944935e-04, 1.274893540201846667e-04, 1.279236526292587691e-04, 1.283577135111275188e-04, 1.287915359766069086e-04, 1.292251193369952928e-04, 1.296584629040187166e-04, 1.300915659898105325e-04, 1.305244279069713031e-04, 1.309570479685514264e-04, 1.313894254879923449e-04, 1.318215597792060450e-04, 1.322534501565572488e-04, 1.326850959348547675e-04, 1.331164964293414727e-04, 1.335476509556773558e-04, 1.339785588300180239e-04, 1.344092193689568580e-04, 1.348396318895081535e-04, 1.352697957091742863e-04, 1.356997101458794143e-04, 1.361293745180111375e-04, 1.365587881443998169e-04, 1.369879503443589342e-04, 1.374168604376198224e-04, 1.378455177444181854e-04, 1.382739215853794979e-04, 1.387020712816559940e-04, 1.391299661548115255e-04, 1.395576055268999761e-04, 1.399849887204365848e-04, 1.404121150583900854e-04, 1.408389838641651963e-04, 1.412655944616791383e-04, 1.416919461753058252e-04, 1.421180383298582188e-04, 1.425438702506648728e-04, 1.429694412634575289e-04, 1.433947506945046086e-04, 1.438197978704992971e-04, 1.442445821186445168e-04, 1.446691027665891228e-04, 1.450933591424657682e-04, 1.455173505748731503e-04, 1.459410763929163974e-04, 1.463645359261397938e-04, 1.467877285045949762e-04, 1.472106534588237491e-04, 1.476333101198010016e-04, 1.480556978190121736e-04, 1.484778158884362067e-04, 1.488996636605355696e-04, 1.493212404682490481e-04, 1.497425456449725275e-04, 1.501635785246381127e-04, 1.505843384416552012e-04, 1.510048247308950608e-04, 1.514250367277490781e-04, 1.518449737681075895e-04, 1.522646351883078127e-04, 1.526840203252090625e-04, 1.531031285161733987e-04, 1.535219590990604213e-04, 1.539405114122157779e-04, 1.543587847944554706e-04, 1.547767785851505041e-04, 1.551944921241260556e-04, 1.556119247517346313e-04, 1.560290758088311565e-04, 1.564459446367657386e-04, 1.568625305773627425e-04, 1.572788329729991506e-04, 1.576948511665497027e-04, 1.581105845013669193e-04, 1.585260323213580802e-04, 1.589411939708757469e-04, 1.593560687948474062e-04, 1.597706561386655051e-04, 1.601849553482618269e-04, 1.605989657700831238e-04, 1.610126867510796244e-04, 1.614261176386907494e-04, 1.618392577809180783e-04, 1.622521065262711934e-04, 1.626646632237498450e-04, 1.630769272229213901e-04, 1.634888978738075480e-04, 1.639005745270166996e-04, 1.643119565336339225e-04, 1.647230432453041220e-04, 1.651338340141795830e-04, 1.655443281929092362e-04, 1.659545251347160704e-04, 1.663644241933405368e-04, 1.667740247230246658e-04, 1.671833260785677677e-04, 1.675923276153093292e-04, 1.680010286890740992e-04, 1.684094286562475213e-04, 1.688175268737577910e-04, 1.692253226990678594e-04, 1.696328154901672746e-04, 1.700400046055557015e-04, 1.704468894043150763e-04, 1.708534692460582144e-04, 1.712597434909089158e-04, 1.716657114995701614e-04, 1.720713726332571904e-04, 1.724767262537391067e-04, 1.728817717233188753e-04, 1.732865084048715136e-04, 1.736909356617815324e-04, 1.740950528580266911e-04, 1.744988593580667038e-04, 1.749023545269762442e-04, 1.753055377303323512e-04, 1.757084083342905668e-04, 1.761109657055600535e-04, 1.765132092113909097e-04, 1.769151382195617280e-04, 1.773167520984506376e-04, 1.777180502169823956e-04, 1.781190319446101719e-04, 1.785196966513927718e-04, 1.789200437078816892e-04, 1.793200724852535960e-04, 1.797197823551990490e-04, 1.801191726899978687e-04, 1.805182428625026053e-04, 1.809169922460818897e-04, 1.813154202146979529e-04, 1.817135261428971132e-04, 1.821113094057542914e-04, 1.825087693789400960e-04, 1.829059054387032867e-04, 1.833027169618154793e-04, 1.836992033256467695e-04, 1.840953639081471924e-04, 1.844911980878407058e-04, 1.848867052438128570e-04, 1.852818847556999681e-04, 1.856767360037555432e-04, 1.860712583688023467e-04, 1.864654512322124543e-04, 1.868593139759637122e-04, 1.872528459826217398e-04, 1.876460466352874816e-04, 1.880389153176702276e-04, 1.884314514140706461e-04, 1.888236543093708085e-04, 1.892155233890295551e-04, 1.896070580390634395e-04, 1.899982576461189097e-04, 1.903891215974205103e-04, 1.907796492807556496e-04, 1.911698400845330647e-04, 1.915596933977367709e-04, 1.919492086099116679e-04, 1.923383851112405460e-04, 1.927272222924899029e-04, 1.931157195449921624e-04, 1.935038762607200244e-04, 1.938916918321786128e-04, 1.942791656525311085e-04, 1.946662971154953972e-04, 1.950530856154116693e-04, 1.954395305472299250e-04, 1.958256313064559535e-04, 1.962113872892238663e-04, 1.965967978922767713e-04, 1.969818625129618939e-04, 1.973665805492040950e-04, 1.977509513995774561e-04, 1.981349744631981597e-04, 1.985186491398532925e-04, 1.989019748298920460e-04, 1.992849509343083594e-04, 1.996675768546787681e-04, 2.000498519931989141e-04, 2.004317757526679331e-04, 2.008133475365222011e-04, 2.011945667487777354e-04, 2.015754327940893922e-04, 2.019559450777377754e-04, 2.023361030055745920e-04, 2.027159059840949690e-04, 2.030953534204212713e-04, 2.034744447222929919e-04, 2.038531792980618454e-04, 2.042315565566749905e-04, 2.046095759077418976e-04, 2.049872367614891111e-04, 2.053645385287381040e-04, 2.057414806209613856e-04, 2.061180624502659947e-04, 2.064942834293403192e-04, 2.068701429715280116e-04, 2.072456404908066846e-04, 2.076207754017851193e-04, 2.079955471196908237e-04, 2.083699550603600040e-04, 2.087439986403076314e-04, 2.091176772766409765e-04, 2.094909903871256917e-04, 2.098639373901614710e-04, 2.102365177047751379e-04, 2.106087307506043012e-04, 2.109805759479648738e-04, 2.113520527178033132e-04, 2.117231604816790581e-04, 2.120938986618336184e-04, 2.124642666810903414e-04, 2.128342639629718846e-04, 2.132038899316028276e-04, 2.135731440117754286e-04, 2.139420256289335516e-04, 2.143105342091260993e-04, 2.146786691790720115e-04, 2.150464299661447609e-04, 2.154138159983669861e-04, 2.157808267043849590e-04, 2.161474615135337450e-04, 2.165137198557428504e-04, 2.168796011616502806e-04, 2.172451048625050432e-04, 2.176102303902425540e-04, 2.179749771774349538e-04, 2.183393446572839795e-04, 2.187033322636895672e-04, 2.190669394311988403e-04, 2.194301655949920692e-04, 2.197930101909329240e-04, 2.201554726555519134e-04, 2.205175524259983544e-04, 2.208792489401061564e-04, 2.212405616363822744e-04, 2.216014899539927229e-04, 2.219620333327615728e-04, 2.223221912131501078e-04, 2.226819630363282459e-04, 2.230413482441224711e-04, 2.234003462790011964e-04, 2.237589565841352349e-04, 2.241171786033368412e-04, 2.244750117810994738e-04, 2.248324555625744582e-04, 2.251895093936128909e-04, 2.255461727207027831e-04, 2.259024449910469875e-04, 2.262583256524644006e-04, 2.266138141535067039e-04, 2.269689099433594307e-04, 2.273236124719082377e-04, 2.276779211897256511e-04, 2.280318355480210029e-04, 2.283853549987071370e-04, 2.287384789943829803e-04, 2.290912069883303717e-04, 2.294435384344874174e-04, 2.297954727875148719e-04, 2.301470095026995075e-04, 2.304981480360692304e-04, 2.308488878442965320e-04, 2.311992283847624297e-04, 2.315491691155446494e-04, 2.318987094953650684e-04, 2.322478489836609478e-04, 2.325965870405724101e-04, 2.329449231268973357e-04, 2.332928567041493413e-04, 2.336403872345411373e-04, 2.339875141809367141e-04, 2.343342370069188341e-04, 2.346805551767700308e-04, 2.350264681554691936e-04, 2.353719754086823794e-04, 2.357170764027487718e-04, 2.360617706047435111e-04, 2.364060574824303684e-04, 2.367499365042525573e-04, 2.370934071393730118e-04, 2.374364688576635716e-04, 2.377791211296586594e-04, 2.381213634266179208e-04, 2.384631952205127801e-04, 2.388046159840168450e-04, 2.391456251905012449e-04, 2.394862223140192619e-04, 2.398264068293685914e-04, 2.401661782120471608e-04, 2.405055359382354840e-04, 2.408444794848635839e-04, 2.411830083295223048e-04, 2.415211219505371731e-04, 2.418588198269527856e-04, 2.421961014385247857e-04, 2.425329662656969330e-04, 2.428694137896667514e-04, 2.432054434922917730e-04, 2.435410548561974973e-04, 2.438762473646879719e-04, 2.442110205018045558e-04, 2.445453737523157556e-04, 2.448793066016691135e-04, 2.452128185360536307e-04, 2.455459090423862956e-04, 2.458785776083045492e-04, 2.462108237221429202e-04, 2.465426468729975894e-04, 2.468740465506335277e-04, 2.472050222455926451e-04, 2.475355734491028808e-04, 2.478656996531486759e-04, 2.481954003504158960e-04, 2.485246750343263634e-04, 2.488535231990206178e-04, 2.491819443393908221e-04, 2.495099379510285040e-04, 2.498375035302760551e-04, 2.501646405742145342e-04, 2.504913485806194314e-04, 2.508176270480194322e-04, 2.511434754756849247e-04, 2.514688933636184047e-04, 2.517938802125513852e-04, 2.521184355239273209e-04, 2.524425587999607509e-04, 2.527662495435985929e-04, 2.530895072584999229e-04, 2.534123314490873118e-04, 2.537347216205261720e-04, 2.540566772786882191e-04, 2.543781979302045439e-04, 2.546992830824651791e-04, 2.550199322435690082e-04, 2.553401449223977634e-04, 2.556599206285231087e-04, 2.559792588723133256e-04, 2.562981591648444630e-04, 2.566166210179595883e-04, 2.569346439442573497e-04, 2.572522274570442167e-04, 2.575693710704001285e-04, 2.578860742991565392e-04, 2.582023366588981524e-04, 2.585181576659353279e-04, 2.588335368373668576e-04, 2.591484736909918196e-04, 2.594629677454130651e-04, 2.597770185199484768e-04, 2.600906255346939065e-04, 2.604037883105051777e-04, 2.607165063689569399e-04, 2.610287792324027874e-04, 2.613406064239598642e-04, 2.616519874675008947e-04, 2.619629218876384628e-04, 2.622734092097760779e-04, 2.625834489600366176e-04, 2.628930406653233139e-04, 2.632021838533091284e-04, 2.635108780524254759e-04, 2.638191227918631468e-04, 2.641269176015511103e-04, 2.644342620122206453e-04, 2.647411555553580691e-04, 2.650475977631950339e-04, 2.653535881687495092e-04, 2.656591263058141273e-04, 2.659642117089137904e-04, 2.662688439133611821e-04, 2.665730224552465217e-04, 2.668767468714271012e-04, 2.671800166995265272e-04, 2.674828314779162885e-04, 2.677851907457737073e-04, 2.680870940430446427e-04, 2.683885409104222941e-04, 2.686895308894124705e-04, 2.689900635222449029e-04, 2.692901383519729903e-04, 2.695897549223908048e-04, 2.698889127780977094e-04, 2.701876114644413294e-04, 2.704858505275828211e-04, 2.707836295144126835e-04, 2.710809479726489332e-04, 2.713778054507549214e-04, 2.716742014979950078e-04, 2.719701356644226345e-04, 2.722656075008380964e-04, 2.725606165588438895e-04, 2.728551623908348446e-04, 2.731492445499872313e-04, 2.734428625902433625e-04, 2.737360160663637439e-04, 2.740287045338479278e-04, 2.743209275490279169e-04, 2.746126846689917822e-04, 2.749039754516334824e-04, 2.751947994556439730e-04, 2.754851562404682179e-04, 2.757750453663627066e-04, 2.760644663943870509e-04, 2.763534188863649545e-04, 2.766419024049336520e-04, 2.769299165135285135e-04, 2.772174607763437421e-04, 2.775045347583888610e-04, 2.777911380254754320e-04, 2.780772701442075687e-04, 2.783629306819805811e-04, 2.786481192069652007e-04, 2.789328352881629289e-04, 2.792170784953671141e-04, 2.795008483991477189e-04, 2.797841445709091618e-04, 2.800669665828076473e-04, 2.803493140078461960e-04, 2.806311864197951183e-04, 2.809125833932495315e-04, 2.811935045036014955e-04, 2.814739493270435370e-04, 2.817539174405504342e-04, 2.820334084219331566e-04, 2.823124218498031940e-04, 2.825909573035548846e-04, 2.828690143634239617e-04, 2.831465926104113884e-04, 2.834236916263471089e-04, 2.837003109938740562e-04, 2.839764502964432194e-04, 2.842521091182968924e-04, 2.845272870445177886e-04, 2.848019836609556941e-04, 2.850761985543159393e-04, 2.853499313120816611e-04, 2.856231815225695309e-04, 2.858959487749144135e-04, 2.861682326590326121e-04, 2.864400327656748866e-04, 2.867113486864111111e-04, 2.869821800136277269e-04, 2.872525263405085517e-04, 2.875223872610832977e-04, 2.877917623701582370e-04, 2.880606512633978960e-04, 2.883290535372546367e-04, 2.885969687890269325e-04, 2.888643966168101453e-04, 2.891313366195300276e-04, 2.893977883969241281e-04, 2.896637515495717702e-04, 2.899292256788471600e-04, 2.901942103869662782e-04, 2.904587052769766887e-04, 2.907227099527149835e-04, 2.909862240188641909e-04, 2.912492470809352908e-04, 2.915117787452664003e-04, 2.917738186190151311e-04, 2.920353663101469882e-04, 2.922964214274853512e-04, 2.925569835806751543e-04, 2.928170523801722062e-04, 2.930766274372908413e-04, 2.933357083641321451e-04, 2.935942947736701488e-04, 2.938523862796785908e-04, 2.941099824967884340e-04, 2.943670830404358243e-04, 2.946236875269204743e-04, 2.948797955733332391e-04, 2.951354067976404670e-04, 2.953905208186111955e-04, 2.956451372558694096e-04, 2.958992557298770198e-04, 2.961528758619044266e-04, 2.964059972740758393e-04, 2.966586195893571335e-04, 2.969107424315522731e-04, 2.971623654252854210e-04, 2.974134881960484268e-04, 2.976641103701314927e-04, 2.979142315747045967e-04, 2.981638514377495130e-04, 2.984129695881049152e-04, 2.986615856554584612e-04, 2.989096992703094971e-04, 2.991573100640171410e-04, 2.994044176687880865e-04, 2.996510217176735660e-04, 2.998971218445525464e-04, 3.001427176841742835e-04, 3.003878088721021605e-04, 3.006323950447596042e-04, 3.008764758394215193e-04, 3.011200508942122830e-04, 3.013631198480949029e-04, 3.016056823408642409e-04, 3.018477380131915190e-04, 3.020892865065911981e-04, 3.023303274634102974e-04, 3.025708605268724680e-04, 3.028108853410135370e-04, 3.030504015507590816e-04, 3.032894088018580226e-04, 3.035279067409281059e-04, 3.037658950154386640e-04, 3.040033732737061167e-04, 3.042403411648863815e-04, 3.044767983390133086e-04, 3.047127444469711964e-04, 3.049481791404842204e-04, 3.051831020721561152e-04, 3.054175128954104350e-04, 3.056514112645669894e-04, 3.058847968347708831e-04, 3.061176692620503573e-04, 3.063500282032682724e-04, 3.065818733161724142e-04, 3.068132042593323941e-04, 3.070440206922161390e-04, 3.072743222751223458e-04, 3.075041086692275900e-04, 3.077333795365754291e-04, 3.079621345400411123e-04, 3.081903733433820499e-04, 3.084180956112191649e-04, 3.086453010090396579e-04, 3.088719892031759192e-04, 3.090981598608514994e-04, 3.093238126501173576e-04, 3.095489472399262925e-04, 3.097735633000697872e-04, 3.099976605012252267e-04, 3.102212385149215280e-04, 3.104442970135588733e-04, 3.106668356704014996e-04, 3.108888541595952086e-04, 3.111103521561312630e-04, 3.113313293358983738e-04, 3.115517853756181359e-04, 3.117717199529153934e-04, 3.119911327462605594e-04, 3.122100234350100030e-04, 3.124283916993916290e-04, 3.126462372204985357e-04, 3.128635596802797447e-04, 3.130803587615846534e-04, 3.132966341481269851e-04, 3.135123855244807776e-04, 3.137276125761172458e-04, 3.139423149893496505e-04, 3.141564924513970489e-04, 3.143701446503309525e-04, 3.145832712751108883e-04, 3.147958720155761593e-04, 3.150079465624336470e-04, 3.152194946072535832e-04, 3.154305158425131346e-04, 3.156410099615434401e-04, 3.158509766585670150e-04, 3.160604156286895661e-04, 3.162693265678721811e-04, 3.164777091729706858e-04, 3.166855631417245850e-04, 3.168928881727517497e-04, 3.170996839655412076e-04, 3.173059502204829039e-04, 3.175116866388157143e-04, 3.177168929226939064e-04, 3.179215687751323332e-04, 3.181257139000400976e-04, 3.183293280022151317e-04, 3.185324107873166032e-04, 3.187349619619006405e-04, 3.189369812334132853e-04, 3.191384683101842579e-04, 3.193394229014169831e-04, 3.195398447172208994e-04, 3.197397334685606095e-04, 3.199390888673198487e-04, 3.201379106262462987e-04, 3.203361984589931668e-04, 3.205339520800912678e-04, 3.207311712049478857e-04, 3.209278555498794620e-04, 3.211240048320887193e-04, 3.213196187696526810e-04, 3.215146970815626780e-04, 3.217092394876661814e-04, 3.219032457087343487e-04, 3.220967154664053193e-04, 3.222896484832244932e-04, 3.224820444826276169e-04, 3.226739031889381279e-04, 3.228652243273561493e-04, 3.230560076240027254e-04, 3.232462528058820377e-04, 3.234359596008825428e-04, 3.236251277378050534e-04, 3.238137569463175815e-04, 3.240018469570125838e-04, 3.241893975013530231e-04, 3.243764083117205610e-04, 3.245628791213696959e-04, 3.247488096644763895e-04, 3.249341996760814720e-04, 3.251190488921523324e-04, 3.253033570495351056e-04, 3.254871238859840003e-04, 3.256703491401563111e-04, 3.258530325515861812e-04, 3.260351738607195136e-04, 3.262167728089072492e-04, 3.263978291383979398e-04, 3.265783425923274481e-04, 3.267583129147536426e-04, 3.269377398506051685e-04, 3.271166231457428683e-04, 3.272949625469054628e-04, 3.274727578017459263e-04, 3.276500086588264994e-04, 3.278267148675877889e-04, 3.280028761783863357e-04, 3.281784923424899527e-04, 3.283535631120562573e-04, 3.285280882401628126e-04, 3.287020674807640845e-04, 3.288755005887499341e-04, 3.290483873198904322e-04, 3.292207274308773298e-04, 3.293925206793040547e-04, 3.295637668236681508e-04, 3.297344656233602736e-04, 3.299046168386983425e-04, 3.300742202309017367e-04, 3.302432755620855493e-04, 3.304117825952934380e-04, 3.305797410944458009e-04, 3.307471508244013043e-04, 3.309140115509087449e-04, 3.310803230406339915e-04, 3.312460850611530466e-04, 3.314112973809486850e-04, 3.315759597693992869e-04, 3.317400719968151041e-04, 3.319036338344104504e-04, 3.320666450543006119e-04, 3.322291054295292765e-04, 3.323910147340266305e-04, 3.325523727426579301e-04, 3.327131792311850667e-04, 3.328734339762932926e-04, 3.330331367555680730e-04, 3.331922873475252271e-04, 3.333508855315672347e-04, 3.335089310880360366e-04, 3.336664237981680947e-04, 3.338233634441272434e-04, 3.339797498089907028e-04, 3.341355826767372617e-04, 3.342908618322662506e-04, 3.344455870613990598e-04, 3.345997581508711703e-04, 3.347533748883303652e-04, 3.349064370623291401e-04, 3.350589444623547353e-04, 3.352108968788053921e-04, 3.353622941029875339e-04, 3.355131359271390219e-04, 3.356634221444027011e-04, 3.358131525488425003e-04, 3.359623269354380113e-04, 3.361109451000959814e-04, 3.362590068396290087e-04, 3.364065119517845991e-04, 3.365534602352049419e-04, 3.366998514894756992e-04, 3.368456855150857819e-04, 3.369909621134525033e-04, 3.371356810869136100e-04, 3.372798422387241922e-04, 3.374234453730486061e-04, 3.375664902949887720e-04, 3.377089768105659049e-04, 3.378509047267109740e-04, 3.379922738512940302e-04, 3.381330839930803502e-04, 3.382733349617858391e-04, 3.384130265680274823e-04, 3.385521586233560887e-04, 3.386907309402459364e-04, 3.388287433320909779e-04, 3.389661956131953535e-04, 3.391030875988107962e-04, 3.392394191050942392e-04, 3.393751899491345963e-04, 3.395103999489512974e-04, 3.396450489234691898e-04, 3.397791366925500341e-04, 3.399126630769814454e-04, 3.400456278984766764e-04, 3.401780309796645341e-04, 3.403098721441159976e-04, 3.404411512163038308e-04, 3.405718680216515888e-04, 3.407020223864905750e-04, 3.408316141380891688e-04, 3.409606431046459407e-04, 3.410891091152686190e-04, 3.412170120000030922e-04, 3.413443515898258738e-04, 3.414711277166388977e-04, 3.415973402132699527e-04, 3.417229889134657428e-04, 3.418480736519162824e-04, 3.419725942642355427e-04, 3.420965505869585249e-04, 3.422199424575593659e-04, 3.423427697144366478e-04, 3.424650321969075970e-04, 3.425867297452350269e-04, 3.427078622006066297e-04, 3.428284294051331328e-04, 3.429484312018673273e-04, 3.430678674347721374e-04, 3.431867379487627966e-04, 3.433050425896684121e-04, 3.434227812042584200e-04, 3.435399536402329894e-04, 3.436565597462196077e-04, 3.437725993717693942e-04, 3.438880723673794345e-04, 3.440029785844733734e-04, 3.441173178753998969e-04, 3.442310900934517602e-04, 3.443442950928369477e-04, 3.444569327287134758e-04, 3.445690028571578431e-04, 3.446805053351897495e-04, 3.447914400207510634e-04, 3.449018067727323300e-04, 3.450116054509328183e-04, 3.451208359161103407e-04, 3.452294980299376137e-04, 3.453375916550315851e-04, 3.454451166549448154e-04, 3.455520728941495934e-04, 3.456584602380622772e-04, 3.457642785530333734e-04, 3.458695277063493262e-04, 3.459742075662291020e-04, 3.460783180018173590e-04, 3.461818588832056435e-04, 3.462848300814192165e-04, 3.463872314684106031e-04, 3.464890629170750964e-04, 3.465903243012441438e-04, 3.466910154956760770e-04, 3.467911363760674964e-04, 3.468906868190595053e-04, 3.469896667022180311e-04, 3.470880759040551847e-04, 3.471859143040058413e-04, 3.472831817824555589e-04, 3.473798782207162378e-04, 3.474760035010401068e-04, 3.475715575066203739e-04, 3.476665401215817933e-04, 3.477609512309800697e-04, 3.478547907208190426e-04, 3.479480584780371335e-04, 3.480407543905051238e-04, 3.481328783470406829e-04, 3.482244302373832144e-04, 3.483154099522274127e-04, 3.484058173831914413e-04, 3.484956524228398638e-04, 3.485849149646766507e-04, 3.486736049031373733e-04, 3.487617221335948415e-04, 3.488492665523668557e-04, 3.489362380567073707e-04, 3.490226365448061705e-04, 3.491084619157979211e-04, 3.491937140697457453e-04, 3.492783929076575394e-04, 3.493624983314809322e-04, 3.494460302441051817e-04, 3.495289885493543455e-04, 3.496113731519859789e-04, 3.496931839577062601e-04, 3.497744208731620209e-04, 3.498550838059283330e-04, 3.499351726645305713e-04, 3.500146873584330837e-04, 3.500936277980310602e-04, 3.501719938946641392e-04, 3.502497855606152692e-04, 3.503270027091058298e-04, 3.504036452542974209e-04, 3.504797131112825925e-04, 3.505552061961072336e-04, 3.506301244257547427e-04, 3.507044677181389266e-04, 3.507782359921283403e-04, 3.508514291675222181e-04, 3.509240471650619661e-04, 3.509960899064280175e-04, 3.510675573142486156e-04, 3.511384493120838206e-04, 3.512087658244447013e-04, 3.512785067767678552e-04, 3.513476720954477185e-04, 3.514162617078065332e-04, 3.514842755421148388e-04, 3.515517135275826903e-04, 3.516185755943629105e-04, 3.516848616735404110e-04, 3.517505716971513824e-04, 3.518157055981711509e-04, 3.518802633105124985e-04, 3.519442447690365587e-04, 3.520076499095348729e-04, 3.520704786687506413e-04, 3.521327309843620256e-04, 3.521944067949935877e-04, 3.522555060402069111e-04, 3.523160286605110636e-04, 3.523759745973457924e-04, 3.524353437931049423e-04, 3.524941361911136878e-04, 3.525523517356475610e-04, 3.526099903719206335e-04, 3.526670520460837275e-04, 3.527235367052331981e-04, 3.527794442974087645e-04, 3.528347747715927514e-04, 3.528895280777052099e-04, 3.529437041666055983e-04, 3.529973029901035150e-04, 3.530503245009466648e-04, 3.531027686528207497e-04, 3.531546354003577636e-04, 3.532059246991336608e-04, 3.532566365056590864e-04, 3.533067707773886461e-04, 3.533563274727233999e-04, 3.534053065510050617e-04, 3.534537079725133969e-04, 3.535015316984707764e-04, 3.535487776910439654e-04, 3.535954459133410876e-04, 3.536415363294086438e-04, 3.536870489042422453e-04, 3.537319836037737118e-04, 3.537763403948739451e-04, 3.538201192453627945e-04, 3.538633201239988119e-04, 3.539059430004808235e-04, 3.539479878454530252e-04, 3.539894546304947921e-04, 3.540303433281365608e-04, 3.540706539118411824e-04, 3.541103863560202927e-04, 3.541495406360240677e-04, 3.541881167281462099e-04, 3.542261146096160884e-04, 3.542635342586109904e-04, 3.543003756542492905e-04, 3.543366387765876317e-04, 3.543723236066291114e-04, 3.544074301263111927e-04, 3.544419583185197983e-04, 3.544759081670758672e-04, 3.545092796567476598e-04, 3.545420727732433316e-04, 3.545742875032061080e-04, 3.546059238342288132e-04, 3.546369817548427564e-04, 3.546674612545176785e-04, 3.546973623236669010e-04, 3.547266849536462427e-04, 3.547554291367470804e-04, 3.547835948662065946e-04, 3.548111821362022402e-04, 3.548381909418500658e-04, 3.548646212792124117e-04, 3.548904731452811050e-04, 3.549157465380014739e-04, 3.549404414562509899e-04, 3.549645578998514642e-04, 3.549880958695631936e-04, 3.550110553670901103e-04, 3.550334363950714335e-04, 3.550552389570898006e-04, 3.550764630576680155e-04, 3.550971087022687764e-04, 3.551171758972936467e-04, 3.551366646500853856e-04, 3.551555749689267556e-04, 3.551739068630392214e-04, 3.551916603425856606e-04, 3.552088354186673275e-04, 3.552254321033246668e-04, 3.552414504095380179e-04, 3.552568903512288078e-04, 3.552717519432545094e-04, 3.552860352014147131e-04, 3.552997401424477114e-04, 3.553128667840275718e-04, 3.553254151447725936e-04, 3.553373852442355497e-04, 3.553487771029095960e-04, 3.553595907422286504e-04, 3.553698261845614301e-04, 3.553794834532158966e-04, 3.553885625724401772e-04, 3.553970635674212641e-04, 3.554049864642800272e-04, 3.554123312900801584e-04, 3.554190980728205284e-04, 3.554252868414365957e-04, 3.554308976258058281e-04, 3.554359304567411971e-04, 3.554403853659917744e-04, 3.554442623862433823e-04, 3.554475615511226596e-04, 3.554502828951912612e-04, 3.554524264539477008e-04, 3.554539922638261587e-04, 3.554549803622035291e-04, 3.554553907873842411e-04, 3.554552235786155459e-04, 3.554544787760786809e-04, 3.554531564208940732e-04, 3.554512565551139138e-04, 3.554487792217279028e-04, 3.554457244646641719e-04, 3.554420923287827786e-04, 3.554378828598815611e-04, 3.554330961046942407e-04, 3.554277321108876035e-04, 3.554217909270654570e-04, 3.554152726027667332e-04, 3.554081771884632117e-04, 3.554005047355635310e-04, 3.553922552964099905e-04, 3.553834289242783877e-04, 3.553740256733811079e-04, 3.553640455988620289e-04, 3.553534887568012370e-04, 3.553423552042110157e-04, 3.553306449990376341e-04, 3.553183582001619980e-04, 3.553054948673984030e-04, 3.552920550614900889e-04, 3.552780388441185641e-04, 3.552634462778969378e-04, 3.552482774263680224e-04, 3.552325323540120859e-04, 3.552162111262366600e-04, 3.551993138093844011e-04, 3.551818404707288612e-04, 3.551637911784763860e-04, 3.551451660017651384e-04, 3.551259650106623885e-04, 3.551061882761690131e-04, 3.550858358702172726e-04, 3.550649078656670167e-04, 3.550434043363129484e-04, 3.550213253568780644e-04, 3.549986710030157699e-04, 3.549754413513110164e-04, 3.549516364792765070e-04, 3.549272564653582263e-04, 3.549023013889279592e-04, 3.548767713302883320e-04, 3.548506663706722710e-04, 3.548239865922405627e-04, 3.547967320780818536e-04, 3.547689029122166621e-04, 3.547404991795920118e-04, 3.547115209660811055e-04, 3.546819683584881509e-04, 3.546518414445442940e-04, 3.546211403129095711e-04, 3.545898650531670001e-04, 3.545580157558328796e-04, 3.545255925123455142e-04, 3.544925954150726405e-04, 3.544590245573062235e-04, 3.544248800332690697e-04, 3.543901619381052866e-04, 3.543548703678862455e-04, 3.543190054196113949e-04, 3.542825671912020803e-04, 3.542455557815079952e-04, 3.542079712903007304e-04, 3.541698138182796285e-04, 3.541310834670667964e-04, 3.540917803392088403e-04, 3.540519045381783293e-04, 3.540114561683694043e-04, 3.539704353351001633e-04, 3.539288421446133660e-04, 3.538866767040731815e-04, 3.538439391215662182e-04, 3.538006295061074864e-04, 3.537567479676271176e-04, 3.537122946169814772e-04, 3.536672695659461713e-04, 3.536216729272213593e-04, 3.535755048144299112e-04, 3.535287653421104680e-04, 3.534814546257264412e-04, 3.534335727816622177e-04, 3.533851199272199615e-04, 3.533360961806240592e-04, 3.532865016610194932e-04, 3.532363364884709206e-04, 3.531856007839597454e-04, 3.531342946693880221e-04, 3.530824182675762870e-04, 3.530299717022671903e-04, 3.529769550981181779e-04, 3.529233685807045811e-04, 3.528692122765216227e-04, 3.528144863129791583e-04, 3.527591908184087781e-04, 3.527033259220544283e-04, 3.526468917540815187e-04, 3.525898884455669477e-04, 3.525323161285098361e-04, 3.524741749358165652e-04, 3.524154650013191538e-04, 3.523561864597582905e-04, 3.522963394467926580e-04, 3.522359240989924277e-04, 3.521749405538446265e-04, 3.521133889497531913e-04, 3.520512694260332222e-04, 3.519885821229129345e-04, 3.519253271815321951e-04, 3.518615047439503283e-04, 3.517971149531306661e-04, 3.517321579529586006e-04, 3.516666338882236940e-04, 3.516005429046330688e-04, 3.515338851488021381e-04, 3.514666607682550388e-04, 3.513988699114341187e-04, 3.513305127276900161e-04, 3.512615893672781358e-04, 3.511920999813713347e-04, 3.511220447220480493e-04, 3.510514237422943562e-04, 3.509802371960120491e-04, 3.509084852380082303e-04, 3.508361680239964497e-04, 3.507632857105996314e-04, 3.506898384553484480e-04, 3.506158264166860908e-04, 3.505412497539573194e-04, 3.504661086274118227e-04, 3.503904031982137059e-04, 3.503141336284264196e-04, 3.502373000810204582e-04, 3.501599027198766664e-04, 3.500819417097777281e-04, 3.500034172164100100e-04, 3.499243294063659462e-04, 3.498446784471407863e-04, 3.497644645071392084e-04, 3.496836877556639355e-04, 3.496023483629199092e-04, 3.495204465000219880e-04, 3.494379823389766782e-04, 3.493549560527060946e-04, 3.492713678150262771e-04, 3.491872178006548877e-04, 3.491025061852111571e-04, 3.490172331452166972e-04, 3.489313988580905685e-04, 3.488450035021605010e-04, 3.487580472566429455e-04, 3.486705303016611251e-04, 3.485824528182348441e-04, 3.484938149882792408e-04, 3.484046169946156840e-04, 3.483148590209608764e-04, 3.482245412519245241e-04, 3.481336638730169798e-04, 3.480422270706471288e-04, 3.479502310321151790e-04, 3.478576759456264845e-04, 3.477645620002720842e-04, 3.476708893860471872e-04, 3.475766582938355606e-04, 3.474818689154188537e-04, 3.473865214434735077e-04, 3.472906160715708099e-04, 3.471941529941697385e-04, 3.470971324066319239e-04, 3.469995545052021336e-04, 3.469014194870204690e-04, 3.468027275501254559e-04, 3.467034788934445031e-04, 3.466036737167905958e-04, 3.465033122208701017e-04, 3.464023946072816327e-04, 3.463009210785197856e-04, 3.461988918379588242e-04, 3.460963070898643353e-04, 3.459931670393982155e-04, 3.458894718926007277e-04, 3.457852218564049212e-04, 3.456804171386360352e-04, 3.455750579480032589e-04, 3.454691444941000570e-04, 3.453626769874068255e-04, 3.452556556392917054e-04, 3.451480806620163826e-04, 3.450399522687126698e-04, 3.449312706734102615e-04, 3.448220360910160803e-04, 3.447122487373192098e-04, 3.446019088290025499e-04, 3.444910165836274755e-04, 3.443795722196346491e-04, 3.442675759563472741e-04, 3.441550280139789547e-04, 3.440419286136109822e-04, 3.439282779772235600e-04, 3.438140763276623015e-04, 3.436993238886624624e-04, 3.435840208848346287e-04, 3.434681675416653137e-04, 3.433517640855320821e-04, 3.432348107436855524e-04, 3.431173077442483126e-04, 3.429992553162248409e-04, 3.428806536895031860e-04, 3.427615030948351804e-04, 3.426418037638665815e-04, 3.425215559291028104e-04, 3.424007598239365451e-04, 3.422794156826261991e-04, 3.421575237403097448e-04, 3.420350842330066653e-04, 3.419120973975975711e-04, 3.417885634718400840e-04, 3.416644826943730654e-04, 3.415398553046969919e-04, 3.414146815431847435e-04, 3.412889616510938009e-04, 3.411626958705428806e-04, 3.410358844445194704e-04, 3.409085276168831360e-04, 3.407806256323651960e-04, 3.406521787365727875e-04, 3.405231871759689709e-04, 3.403936511978905110e-04, 3.402635710505468470e-04, 3.401329469830025824e-04, 3.400017792452093607e-04, 3.398700680879661296e-04, 3.397378137629498778e-04, 3.396050165226942763e-04, 3.394716766206078932e-04, 3.393377943109513167e-04, 3.392033698488665372e-04, 3.390684034903427408e-04, 3.389328954922448236e-04, 3.387968461122925750e-04, 3.386602556090643102e-04, 3.385231242420158972e-04, 3.383854522714536527e-04, 3.382472399585446411e-04, 3.381084875653138019e-04, 3.379691953546576648e-04, 3.378293635903144255e-04, 3.376889925369042241e-04, 3.375480824598825784e-04, 3.374066336255810415e-04, 3.372646463011757059e-04, 3.371221207547005390e-04, 3.369790572550572494e-04, 3.368354560719986446e-04, 3.366913174761232636e-04, 3.365466417388985254e-04, 3.364014291326369302e-04, 3.362556799305014264e-04, 3.361093944065255226e-04, 3.359625728355828756e-04, 3.358152154934004635e-04, 3.356673226565559296e-04, 3.355188946024792083e-04, 3.353699316094637469e-04, 3.352204339566364731e-04, 3.350704019239755761e-04, 3.349198357923202640e-04, 3.347687358433449061e-04, 3.346171023595890105e-04, 3.344649356244220424e-04, 3.343122359220749738e-04, 3.341590035376149678e-04, 3.340052387569577381e-04, 3.338509418668676038e-04, 3.336961131549616086e-04, 3.335407529096885422e-04, 3.333848614203412998e-04, 3.332284389770691336e-04, 3.330714858708466990e-04, 3.329140023935101586e-04, 3.327559888377292093e-04, 3.325974454970109318e-04, 3.324383726657036391e-04, 3.322787706390079357e-04, 3.321186397129433782e-04, 3.319579801843958546e-04, 3.317967923510661940e-04, 3.316350765115092512e-04, 3.314728329651066936e-04, 3.313100620120778433e-04, 3.311467639534905190e-04, 3.309829390912425503e-04, 3.308185877280626452e-04, 3.306537101675120164e-04, 3.304883067140015115e-04, 3.303223776727545334e-04, 3.301559233498532276e-04, 3.299889440521892045e-04, 3.298214400875027342e-04, 3.296534117643530387e-04, 3.294848593921388918e-04, 3.293157832810862055e-04, 3.291461837422588713e-04, 3.289760610875318183e-04, 3.288054156296324297e-04, 3.286342476820963070e-04, 3.284625575592892794e-04, 3.282903455764209569e-04, 3.281176120495158896e-04, 3.279443572954217540e-04, 3.277705816318114132e-04, 3.275962853771864939e-04, 3.274214688508839469e-04, 3.272461323730446042e-04, 3.270702762646384961e-04, 3.268939008474688619e-04, 3.267170064441396785e-04, 3.265395933781062385e-04, 3.263616619736157899e-04, 3.261832125557562710e-04, 3.260042454504195018e-04, 3.258247609843314876e-04, 3.256447594850166399e-04, 3.254642412808455361e-04, 3.252832067009800042e-04, 3.251016560754145393e-04, 3.249195897349522891e-04, 3.247370080112041858e-04, 3.245539112366181657e-04, 3.243702997444436616e-04, 3.241861738687406018e-04, 3.240015339443822829e-04, 3.238163803070636098e-04, 3.236307132932755089e-04, 3.234445332403468863e-04, 3.232578404863874363e-04, 3.230706353703381110e-04, 3.228829182319394617e-04, 3.226946894117332649e-04, 3.225059492510929889e-04, 3.223166980921849246e-04, 3.221269362779813589e-04, 3.219366641522582433e-04, 3.217458820596109156e-04, 3.215545903454197839e-04, 3.213627893558935870e-04, 3.211704794380330192e-04, 3.209776609396388074e-04, 3.207843342093130668e-04, 3.205904995964658057e-04, 3.203961574513191539e-04, 3.202013081248765718e-04, 3.200059519689456180e-04, 3.198100893361465694e-04, 3.196137205798757204e-04, 3.194168460543593221e-04, 3.192194661145918372e-04, 3.190215811163854337e-04, 3.188231914163341518e-04, 3.186242973718320646e-04, 3.184248993410674234e-04, 3.182249976830414141e-04, 3.180245927575220790e-04, 3.178236849250806913e-04, 3.176222745470894788e-04, 3.174203619856933800e-04, 3.172179476038589421e-04, 3.170150317653129546e-04, 3.168116148345919434e-04, 3.166076971770079101e-04, 3.164032791586766295e-04, 3.161983611464808412e-04, 3.159929435081215319e-04, 3.157870266120562991e-04, 3.155806108275486274e-04, 3.153736965246368811e-04, 3.151662840741397786e-04, 3.149583738476793783e-04, 3.147499662176518587e-04, 3.145410615572288198e-04, 3.143316602403661191e-04, 3.141217626418132502e-04, 3.139113691370794073e-04, 3.137004801024835749e-04, 3.134890959150939756e-04, 3.132772169527801116e-04, 3.130648435941733540e-04, 3.128519762186925839e-04, 3.126386152065317248e-04, 3.124247609386648916e-04, 3.122104137968283394e-04, 3.119955741635502245e-04, 3.117802424221104347e-04, 3.115644189565959922e-04, 3.113481041518319356e-04, 3.111312983934420352e-04, 3.109140020678041781e-04, 3.106962155620690709e-04, 3.104779392641599683e-04, 3.102591735627868762e-04, 3.100399188474027502e-04, 3.098201755082341784e-04, 3.095999439362886454e-04, 3.093792245233179948e-04, 3.091580176618707420e-04, 3.089363237452290821e-04, 3.087141431674650513e-04, 3.084914763233961832e-04, 3.082683236086094158e-04, 3.080446854194519835e-04, 3.078205621530522886e-04, 3.075959542072735512e-04, 3.073708619807446552e-04, 3.071452858728698516e-04, 3.069192262837864204e-04, 3.066926836144203989e-04, 3.064656582664394727e-04, 3.062381506422649563e-04, 3.060101611450742327e-04, 3.057816901788131133e-04, 3.055527381481594083e-04, 3.053233054585774626e-04, 3.050933925162534286e-04, 3.048629997281492596e-04, 3.046321275019631906e-04, 3.044007762461401465e-04, 3.041689463699009076e-04, 3.039366382832019934e-04, 3.037038523967410843e-04, 3.034705891219668873e-04, 3.032368488710900328e-04, 3.030026320570418743e-04, 3.027679390935371557e-04, 3.025327703949993096e-04, 3.022971263766211728e-04, 3.020610074543226479e-04, 3.018244140447768329e-04, 3.015873465653992874e-04, 3.013498054343494961e-04, 3.011117910705145523e-04, 3.008733038935402192e-04, 3.006343443237878338e-04, 3.003949127823933953e-04, 3.001550096911956831e-04, 2.999146354727935562e-04, 2.996737905505111508e-04, 2.994324753484062826e-04, 2.991906902912777654e-04, 2.989484358046732714e-04, 2.987057123148500288e-04, 2.984625202488013851e-04, 2.982188600342706303e-04, 2.979747320997055689e-04, 2.977301368743202653e-04, 2.974850747880243540e-04, 2.972395462714808815e-04, 2.969935517560606613e-04, 2.967470916738842871e-04, 2.965001664577710666e-04, 2.962527765413074349e-04, 2.960049223587639584e-04, 2.957566043451637485e-04, 2.955078229362387678e-04, 2.952585785684383956e-04, 2.950088716789610863e-04, 2.947587027057098092e-04, 2.945080720873052209e-04, 2.942569802630866957e-04, 2.940054276731298897e-04, 2.937534147582013667e-04, 2.935009419598232170e-04, 2.932480097201968917e-04, 2.929946184822696106e-04, 2.927407686896830790e-04, 2.924864607867926243e-04, 2.922316952186921322e-04, 2.919764724311747447e-04, 2.917207928707383352e-04, 2.914646569845933148e-04, 2.912080652206665895e-04, 2.909510180276120230e-04, 2.906935158547583947e-04, 2.904355591521727174e-04, 2.901771483706118275e-04, 2.899182839615387563e-04, 2.896589663771305910e-04, 2.893991960702837324e-04, 2.891389734945744847e-04, 2.888782991042858892e-04, 2.886171733544227406e-04, 2.883555967006626352e-04, 2.880935695994253057e-04, 2.878310925077902762e-04, 2.875681658835665217e-04, 2.873047901852448724e-04, 2.870409658720144384e-04, 2.867766934037662969e-04, 2.865119732411069899e-04, 2.862468058453103859e-04, 2.859811916783503143e-04, 2.857151312029120038e-04, 2.854486248823468169e-04, 2.851816731807378983e-04, 2.849142765628201609e-04, 2.846464354940492409e-04, 2.843781504405472338e-04, 2.841094218691503446e-04, 2.838402502473506123e-04, 2.835706360433740809e-04, 2.833005797260886960e-04, 2.830300817650804705e-04, 2.827591426306020391e-04, 2.824877627935849637e-04, 2.822159427256742113e-04, 2.819436828991810995e-04, 2.816709837870916451e-04, 2.813978458630746952e-04, 2.811242696014837708e-04, 2.808502554773709982e-04, 2.805758039664392424e-04, 2.803009155450731683e-04, 2.800255906903526860e-04, 2.797498298800129429e-04, 2.794736335924793980e-04, 2.791970023068477097e-04, 2.789199365028940903e-04, 2.786424366610498814e-04, 2.783645032624411809e-04, 2.780861367888369648e-04, 2.778073377227201018e-04, 2.775281065471985574e-04, 2.772484437460807460e-04, 2.769683498038251696e-04, 2.766878252055581444e-04, 2.764068704370783005e-04, 2.761254859848679116e-04, 2.758436723360431302e-04, 2.755614299783911759e-04, 2.752787594003801470e-04, 2.749956610911109909e-04, 2.747121355403872719e-04, 2.744281832386318508e-04, 2.741438046769577915e-04, 2.738590003471168613e-04, 2.735737707415224077e-04, 2.732881163532473526e-04, 2.730020376760426237e-04, 2.727155352042766020e-04, 2.724286094330022876e-04, 2.721412608579092704e-04, 2.718534899753339206e-04, 2.715652972822954394e-04, 2.712766832764456596e-04, 2.709876484560804302e-04, 2.706981933201455253e-04, 2.704083183682550210e-04, 2.701180241006374654e-04, 2.698273110182149701e-04, 2.695361796225092654e-04, 2.692446304157214421e-04, 2.689526639006754654e-04, 2.686602805808355220e-04, 2.683674809603368654e-04, 2.680742655439402253e-04, 2.677806348370402102e-04, 2.674865893456720837e-04, 2.671921295765140414e-04, 2.668972560369059673e-04, 2.666019692347895861e-04, 2.663062696787522107e-04, 2.660101578780350905e-04, 2.657136343424892845e-04, 2.654166995826117109e-04, 2.651193541095530075e-04, 2.648215984350638097e-04, 2.645234330715302037e-04, 2.642248585319920498e-04, 2.639258753300838928e-04, 2.636264839801147602e-04, 2.633266849969766545e-04, 2.630264788962218578e-04, 2.627258661940070402e-04, 2.624248474071170590e-04, 2.621234230529644700e-04, 2.618215936496070921e-04, 2.615193597156926586e-04, 2.612167217704957343e-04, 2.609136803339332194e-04, 2.606102359265075378e-04, 2.603063890693868673e-04, 2.600021402843113571e-04, 2.596974900936714604e-04, 2.593924390204479786e-04, 2.590869875882629647e-04, 2.587811363213197123e-04, 2.584748857444829325e-04, 2.581682363831825310e-04, 2.578611887634940018e-04, 2.575537434120843796e-04, 2.572459008562225395e-04, 2.569376616238216440e-04, 2.566290262433815173e-04, 2.563199952440053421e-04, 2.560105691553993886e-04, 2.557007485078848321e-04, 2.553905338324062102e-04, 2.550799256604789470e-04, 2.547689245242281677e-04, 2.544575309564007875e-04, 2.541457454903255043e-04, 2.538335686599219065e-04, 2.535210009997464426e-04, 2.532080430449299715e-04, 2.528946953311889839e-04, 2.525809583948637662e-04, 2.522668327728564927e-04, 2.519523190027102635e-04, 2.516374176225149965e-04, 2.513221291709878745e-04, 2.510064541874174006e-04, 2.506903932116826429e-04, 2.503739467842601191e-04, 2.500571154462364817e-04, 2.497398997392507843e-04, 2.494223002055376325e-04, 2.491043173879391105e-04, 2.487859518298462342e-04, 2.484672040752856329e-04, 2.481480746688169295e-04, 2.478285641556179594e-04, 2.475086730814280659e-04, 2.471884019925665865e-04, 2.468677514359402794e-04, 2.465467219590548702e-04, 2.462253141099616550e-04, 2.459035284372934420e-04, 2.455813654902809767e-04, 2.452588258186958587e-04, 2.449359099729257858e-04, 2.446126185039109108e-04, 2.442889519631566897e-04, 2.439649109027397359e-04, 2.436404958753150851e-04, 2.433157074341283645e-04, 2.429905461329583583e-04, 2.426650125261591007e-04, 2.423391071686716134e-04, 2.420128306159834912e-04, 2.416861834241384706e-04, 2.413591661497798519e-04, 2.410317793500941477e-04, 2.407040235828220064e-04, 2.403758994062649341e-04, 2.400474073792917458e-04, 2.397185480613527682e-04, 2.393893220124207238e-04, 2.390597297930316866e-04, 2.387297719643019956e-04, 2.383994490878717676e-04, 2.380687617259601651e-04, 2.377377104413311889e-04, 2.374062957973082884e-04, 2.370745183577460907e-04, 2.367423786870778615e-04, 2.364098773502515643e-04, 2.360770149128135612e-04, 2.357437919408071039e-04, 2.354102090008599105e-04, 2.350762666601237210e-04, 2.347419654862945449e-04, 2.344073060476190040e-04, 2.340722889129102696e-04, 2.337369146514858300e-04, 2.334011838332121860e-04, 2.330650970285185668e-04, 2.327286548083348046e-04, 2.323918577441824891e-04, 2.320547064080680927e-04, 2.317172013725703563e-04, 2.313793432107836407e-04, 2.310411324963330775e-04, 2.307025698033883391e-04, 2.303636557066712548e-04, 2.300243907813914366e-04, 2.296847756033258594e-04, 2.293448107487588235e-04, 2.290044967944956423e-04, 2.286638343179070681e-04, 2.283228238968669228e-04, 2.279814661097682256e-04, 2.276397615355270961e-04, 2.272977107535932714e-04, 2.269553143439590229e-04, 2.266125728871022367e-04, 2.262694869640287506e-04, 2.259260571562871545e-04, 2.255822840459208135e-04, 2.252381682154850804e-04, 2.248937102480881426e-04, 2.245489107273324482e-04, 2.242037702373276349e-04, 2.238582893626967104e-04, 2.235124686885832889e-04, 2.231663088006645478e-04, 2.228198102850930328e-04, 2.224729737285367737e-04, 2.221257997181963061e-04, 2.217782888417489434e-04, 2.214304416873945846e-04, 2.210822588438621109e-04, 2.207337409003462579e-04, 2.203848884465552127e-04, 2.200357020727210754e-04, 2.196861823695402019e-04, 2.193363299282638697e-04, 2.189861453405893971e-04, 2.186356291987513788e-04, 2.182847820954597509e-04, 2.179336046239204448e-04, 2.175820973778446030e-04, 2.172302609514594753e-04, 2.168780959394491675e-04, 2.165256029369975750e-04, 2.161727825398045925e-04, 2.158196353440220100e-04, 2.154661619463450197e-04, 2.151123629439047173e-04, 2.147582389343581448e-04, 2.144037905158192002e-04, 2.140490182869089167e-04, 2.136939228467275452e-04, 2.133385047948666154e-04, 2.129827647313760309e-04, 2.126267032568199050e-04, 2.122703209722199115e-04, 2.119136184790692710e-04, 2.115565963793789104e-04, 2.111992552756144440e-04, 2.108415957707110270e-04, 2.104836184680782343e-04, 2.101253239716097370e-04, 2.097667128856966926e-04, 2.094077858151620417e-04, 2.090485433653097860e-04, 2.086889861419376181e-04, 2.083291147512894884e-04, 2.079689298000705672e-04, 2.076084318954921841e-04, 2.072476216452103816e-04, 2.068864996573291674e-04, 2.065250665404493578e-04, 2.061633229035967491e-04, 2.058012693563138413e-04, 2.054389065085502253e-04, 2.050762349707546315e-04, 2.047132553538129405e-04, 2.043499682690680787e-04, 2.039863743283292061e-04, 2.036224741438850798e-04, 2.032582683284418475e-04, 2.028937574951648708e-04, 2.025289422577007073e-04, 2.021638232301039813e-04, 2.017984010269400033e-04, 2.014326762631671341e-04, 2.010666495542324931e-04, 2.007003215160083152e-04, 2.003336927648050698e-04, 1.999667639174203856e-04, 1.995995355910715316e-04, 1.992320084034136590e-04, 1.988641829725431079e-04, 1.984960599170241331e-04, 1.981276398558197318e-04, 1.977589234083827708e-04, 1.973899111945797401e-04, 1.970206038347083980e-04, 1.966510019495008616e-04, 1.962811061601349633e-04, 1.959109170882473972e-04, 1.955404353558679346e-04, 1.951696615854664246e-04, 1.947985963999687860e-04, 1.944272404227081639e-04, 1.940555942774368017e-04, 1.936836585883795737e-04, 1.933114339801614246e-04, 1.929389210778266689e-04, 1.925661205068449533e-04, 1.921930328931171659e-04, 1.918196588629941118e-04, 1.914459990432057957e-04, 1.910720540609137075e-04, 1.906978245437219359e-04, 1.903233111196216294e-04, 1.899485144170463726e-04, 1.895734350648397410e-04, 1.891980736922669562e-04, 1.888224309289857484e-04, 1.884465074050992650e-04, 1.880703037510824533e-04, 1.876938205978799642e-04, 1.873170585767884079e-04, 1.869400183195566692e-04, 1.865627004583162753e-04, 1.861851056255978479e-04, 1.858072344543806246e-04, 1.854290875780237205e-04, 1.850506656302827160e-04, 1.846719692453154308e-04, 1.842929990577083779e-04, 1.839137557024055319e-04, 1.835342398148105962e-04, 1.831544520306680119e-04, 1.827743929861611863e-04, 1.823940633178379813e-04, 1.820134636626648966e-04, 1.816325946579973078e-04, 1.812514569415915556e-04, 1.808700511515714442e-04, 1.804883779264858661e-04, 1.801064379052484666e-04, 1.797242317271558853e-04, 1.793417600319324799e-04, 1.789590234596663576e-04, 1.785760226508228195e-04, 1.781927582462531430e-04, 1.778092308871993517e-04, 1.774254412153128640e-04, 1.770413898725857005e-04, 1.766570775013978092e-04, 1.762725047445342231e-04, 1.758876722451348891e-04, 1.755025806467070001e-04, 1.751172305931778775e-04, 1.747316227288243083e-04, 1.743457576982894582e-04, 1.739596361465897028e-04, 1.735732587191225415e-04, 1.731866260616809095e-04, 1.727997388203783677e-04, 1.724125976417391457e-04, 1.720252031726302434e-04, 1.716375560602856364e-04, 1.712496569523129974e-04, 1.708615064967111794e-04, 1.704731053417999590e-04, 1.700844541362693681e-04, 1.696955535291973390e-04, 1.693064041699792312e-04, 1.689170067084291231e-04, 1.685273617946609021e-04, 1.681374700791870083e-04, 1.677473322128507263e-04, 1.673569488468419327e-04, 1.669663206327472681e-04, 1.665754482224796366e-04, 1.661843322682969083e-04, 1.657929734228054972e-04, 1.654013723389895262e-04, 1.650095296701365323e-04, 1.646174460699425255e-04, 1.642251221923895826e-04, 1.638325586918483315e-04, 1.634397562229979910e-04, 1.630467154408797136e-04, 1.626534370009019256e-04, 1.622599215587698803e-04, 1.618661697705381613e-04, 1.614721822926259965e-04, 1.610779597817629122e-04, 1.606835028950087641e-04, 1.602888122898001413e-04, 1.598938886238825217e-04, 1.594987325553262646e-04, 1.591033447425337663e-04, 1.587077258442464529e-04, 1.583118765195628598e-04, 1.579157974278664505e-04, 1.575194892288768456e-04, 1.571229525826668444e-04, 1.567261881496087030e-04, 1.563291965903899363e-04, 1.559319785660661728e-04, 1.555345347379875377e-04, 1.551368657678097113e-04, 1.547389723175415799e-04, 1.543408550494684199e-04, 1.539425146262550330e-04, 1.535439517108204389e-04, 1.531451669664441275e-04, 1.527461610566934987e-04, 1.523469346454411010e-04, 1.519474883969145049e-04, 1.515478229756278897e-04, 1.511479390463957859e-04, 1.507478372743428058e-04, 1.503475183249266287e-04, 1.499469828638684489e-04, 1.495462315572565720e-04, 1.491452650714233843e-04, 1.487440840730473767e-04, 1.483426892290838368e-04, 1.479410812067810579e-04, 1.475392606737306188e-04, 1.471372282977976697e-04, 1.467349847471359210e-04, 1.463325306901960463e-04, 1.459298667957524890e-04, 1.455269937328272428e-04, 1.451239121707919568e-04, 1.447206227792832863e-04, 1.443171262282192367e-04, 1.439134231878094370e-04, 1.435095143285609128e-04, 1.431054003212956503e-04, 1.427010818370782260e-04, 1.422965595472678213e-04, 1.418918341235349192e-04, 1.414869062378067686e-04, 1.410817765622848134e-04, 1.406764457694960563e-04, 1.402709145322209050e-04, 1.398651835235097335e-04, 1.394592534166919627e-04, 1.390531248853822937e-04, 1.386467986034976764e-04, 1.382402752451856163e-04, 1.378335554848758094e-04, 1.374266399972979777e-04, 1.370195294574066524e-04, 1.366122245404918713e-04, 1.362047259220477730e-04, 1.357970342778824812e-04, 1.353891502840352172e-04, 1.349810746168466106e-04, 1.345728079528764082e-04, 1.341643509690119214e-04, 1.337557043423389790e-04, 1.333468687502503745e-04, 1.329378448703719237e-04, 1.325286333805788088e-04, 1.321192349590500866e-04, 1.317096502841945296e-04, 1.312998800346668342e-04, 1.308899248893769180e-04, 1.304797855275148836e-04, 1.300694626284781060e-04, 1.296589568719791106e-04, 1.292482689379155503e-04, 1.288373995064812007e-04, 1.284263492580801187e-04, 1.280151188733905825e-04, 1.276037090333276606e-04, 1.271921204190596094e-04, 1.267803537119716886e-04, 1.263684095937259004e-04, 1.259562887462000575e-04, 1.255439918515014711e-04, 1.251315195920222180e-04, 1.247188726503652525e-04, 1.243060517093599914e-04, 1.238930574520719368e-04, 1.234798905618106715e-04, 1.230665517221447944e-04, 1.226530416168308780e-04, 1.222393609298642631e-04, 1.218255103454986017e-04, 1.214114905481880282e-04, 1.209973022226061063e-04, 1.205829460536967995e-04, 1.201684227266041878e-04, 1.197537329266855057e-04, 1.193388773395218886e-04, 1.189238566509253259e-04, 1.185086715469562248e-04, 1.180933227138394794e-04, 1.176778108380646106e-04, 1.172621366063104410e-04, 1.168463007054633635e-04, 1.164303038226709825e-04, 1.160141466452666806e-04, 1.155978298607886868e-04, 1.151813541569847384e-04, 1.147647202218430489e-04, 1.143479287435143538e-04, 1.139309804104224176e-04, 1.135138759111327102e-04, 1.130966159344647299e-04, 1.126792011694129520e-04, 1.122616323051685121e-04, 1.118439100311700016e-04, 1.114260350370304466e-04, 1.110080080125538417e-04, 1.105898296477432274e-04, 1.101715006328279038e-04, 1.097530216581879293e-04, 1.093343934144632725e-04, 1.089156165924240336e-04, 1.084966918830810597e-04, 1.080776199775999272e-04, 1.076584015673554500e-04, 1.072390373439415320e-04, 1.068195279990941891e-04, 1.063998742247460706e-04, 1.059800767130454060e-04, 1.055601361562975664e-04, 1.051400532469833467e-04, 1.047198286778129589e-04, 1.042994631416513309e-04, 1.038789573315351686e-04, 1.034583119406803697e-04, 1.030375276624917539e-04, 1.026166051905794347e-04, 1.021955452186831418e-04, 1.017743484407278412e-04, 1.013530155508398484e-04, 1.009315472432727374e-04, 1.005099442125170615e-04, 1.000882071531683249e-04, 9.966633676003899421e-05, 9.924433372807212809e-05, 9.882219875241659397e-05, 9.839993252833922042e-05, 9.797753575133861137e-05, 9.755500911701094893e-05, 9.713235332116260134e-05, 9.670956905973329373e-05, 9.628665702881349596e-05, 9.586361792470043529e-05, 9.544045244382156517e-05, 9.501716128275146530e-05, 9.459374513822077274e-05, 9.417020470714362575e-05, 9.374654068653995363e-05, 9.332275377364836926e-05, 9.289884466579335432e-05, 9.247481406049632227e-05, 9.205066265539934471e-05, 9.162639114828359640e-05, 9.120200023712321297e-05, 9.077749062001063004e-05, 9.035286299516310203e-05, 8.992811806097964985e-05, 8.950325651597259354e-05, 8.907827905878639026e-05, 8.865318638825202063e-05, 8.822797920331167728e-05, 8.780265820303456714e-05, 8.737722408662763147e-05, 8.695167755344137346e-05, 8.652601930299013279e-05, 8.610025003487274914e-05, 8.567437044883025531e-05, 8.524838124476215382e-05, 8.482228312265053627e-05, 8.439607678267263709e-05, 8.396976292506583685e-05, 8.354334225024140858e-05, 8.311681545870729549e-05, 8.269018325109536510e-05, 8.226344632816926970e-05, 8.183660539084245766e-05, 8.140966114010265878e-05, 8.098261427706456288e-05, 8.055546550299092119e-05, 8.012821551921319623e-05, 7.970086502723560458e-05, 7.927341472864865178e-05, 7.884586532514729267e-05, 7.841821751853815493e-05, 7.799047201076804003e-05, 7.756262950384582001e-05, 7.713469069995663107e-05, 7.670665630132596886e-05, 7.627852701033399044e-05, 7.585030352943737046e-05, 7.542198656118813914e-05, 7.499357680828863779e-05, 7.456507497351459463e-05, 7.413648175973361050e-05, 7.370779786991242294e-05, 7.327902400714554274e-05, 7.285016087457622910e-05, 7.242120917551191658e-05, 7.199216961328745647e-05, 7.156304289138005581e-05, 7.113382971332109109e-05, 7.070453078276235301e-05, 7.027514680343675769e-05, 6.984567847917585656e-05, 6.941612651387119807e-05, 6.898649161153900037e-05, 6.855677447625318827e-05, 6.812697581216283535e-05, 6.769709632354787838e-05, 6.726713671474296571e-05, 6.683709769015377445e-05, 6.640697995426630756e-05, 6.597678421165535060e-05, 6.554651116700166988e-05, 6.511616152501568467e-05, 6.468573599049216513e-05, 6.425523526832959895e-05, 6.382466006345155951e-05, 6.339401108092089954e-05, 6.296328902580388700e-05, 6.253249460328519826e-05, 6.210162851858881206e-05, 6.167069147700641552e-05, 6.123968418390584743e-05, 6.080860734474865555e-05, 6.037746166500262854e-05, 5.994624785024699751e-05, 5.951496660609331636e-05, 5.908361863820455048e-05, 5.865220465235098095e-05, 5.822072535433214200e-05, 5.778918144999546245e-05, 5.735757364524414660e-05, 5.692590264606487549e-05, 5.649416915845019844e-05, 5.606237388851224548e-05, 5.563051754234754766e-05, 5.519860082615058697e-05, 5.476662444613621480e-05, 5.433458910855746681e-05, 5.390249551976246319e-05, 5.347034438611568879e-05, 5.303813641401691927e-05, 5.260587230990856650e-05, 5.217355278030491822e-05, 5.174117853171252365e-05, 5.130875027074517316e-05, 5.087626870398837979e-05, 5.044373453811275965e-05, 5.001114847978735677e-05, 4.957851123573541174e-05, 4.914582351274313695e-05, 4.871308601758157954e-05, 4.828029945706327090e-05, 4.784746453806010253e-05, 4.741458196742551412e-05, 4.698165245210832809e-05, 4.654867669901772569e-05, 4.611565541513643773e-05, 4.568258930744335290e-05, 4.524947908294134108e-05, 4.481632544866533742e-05, 4.438312911170032657e-05, 4.394989077910382895e-05, 4.351661115796175079e-05, 4.308329095540725597e-05, 4.264993087854165312e-05, 4.221653163454974804e-05, 4.178309393056326804e-05, 4.134961847377541466e-05, 4.091610597135332799e-05, 4.048255713051343184e-05, 4.004897265843394545e-05, 3.961535326236953112e-05, 3.918169964951458980e-05, 3.874801252711868803e-05, 3.831429260240734337e-05, 3.788054058260078113e-05, 3.744675717497039419e-05, 3.701294308676043648e-05, 3.657909902520637313e-05, 3.614522569754326269e-05, 3.571132381103311290e-05, 3.527739407288749579e-05, 3.484343719038128045e-05, 3.440945387071676220e-05, 3.397544482113840504e-05, 3.354141074885429798e-05, 3.310735236105445776e-05, 3.267327036496745125e-05, 3.223916546778208902e-05, 3.180503837665601757e-05, 3.137088979877236217e-05, 3.093672044125153376e-05, 3.050253101126657791e-05, 3.006832221590613507e-05, 2.963409476228921348e-05, 2.919984935748755358e-05, 2.876558670855257718e-05, 2.833130752252416610e-05, 2.789701250644912074e-05, 2.746270236730235888e-05, 2.702837781204396508e-05, 2.659403954763722567e-05, 2.615968828097022740e-05, 2.572532471897090144e-05, 2.529094956846993282e-05, 2.485656353631644137e-05, 2.442216732929885196e-05, 2.398776165417301255e-05, 2.355334721767076618e-05, 2.311892472651796569e-05, 2.268449488735604862e-05, 2.225005840679906621e-05, 2.181561599145165751e-05, 2.138116834783053614e-05, 2.094671618246989847e-05, 2.051226020183316283e-05, 2.007780111233105190e-05, 1.964333962033027993e-05, 1.920887643218143029e-05, 1.877441225414017121e-05, 1.833994779248258441e-05, 1.790548375336821005e-05, 1.747102084295524998e-05, 1.703655976732190887e-05, 1.660210123248458507e-05, 1.616764594445490647e-05, 1.573319460916111563e-05, 1.529874793246608451e-05, 1.486430662017620658e-05, 1.442987137806897119e-05, 1.399544291181457231e-05, 1.356102192709090175e-05, 1.312660912944674149e-05, 1.269220522441703805e-05, 1.225781091743431814e-05, 1.182342691389564656e-05, 1.138905391912246504e-05, 1.095469263837901685e-05, 1.052034377683236347e-05, 1.008600803961906644e-05, 9.651686131756980684e-06, 9.217378758260036007e-06, 8.783086624001890151e-06, 8.348810433830696702e-06, 7.914550892490674911e-06, 7.480308704649938971e-06, 7.046084574909072522e-06, 6.611879207819323772e-06, 6.177693307804006767e-06, 5.743527579215486379e-06, 5.309382726353403066e-06, 4.875259453386050429e-06, 4.441158464465386191e-06, 4.007080463590452371e-06, 3.573026154722316807e-06, 3.138996241695847049e-06, 2.704991428296004315e-06, 2.271012418169613148e-06, 1.837059914940331104e-06, 1.403134622072032293e-06, 9.692372429838185673e-07, 5.353684809714324419e-07, 1.015290392255042759e-07, -3.322803791115407990e-07, -7.660590710240332202e-07, -1.199806333604834392e-06, -1.633521464046797560e-06, -2.067203759614886269e-06, -2.500852517724696907e-06, -2.934467035827524914e-06, -3.368046611546882986e-06, -3.801590542563636843e-06, -4.235098126694432858e-06, -4.668568661873546986e-06, -5.102001446095996762e-06, -5.535395777495979092e-06, -5.968750954328722576e-06, -6.402066274961957031e-06, -6.835341037867304256e-06, -7.268574541602158301e-06, -7.701766084897783667e-06, -8.134914966554118054e-06, -8.568020485518217769e-06, -9.001081940856437785e-06, -9.434098631745860608e-06, -9.867069857456130811e-06, -1.029999491742784115e-05, -1.073287311121569499e-05, -1.116570373847042039e-05, -1.159848609901702756e-05, -1.203121949274015442e-05, -1.246390321972028308e-05, -1.289653658011916507e-05, -1.332911887425796691e-05, -1.376164940258967548e-05, -1.419412746569040573e-05, -1.462655236424123526e-05, -1.505892339910663447e-05, -1.549123987127761030e-05, -1.592350108185358823e-05, -1.635570633212074418e-05, -1.678785492343719932e-05, -1.721994615736942126e-05, -1.765197933557743405e-05, -1.808395375990294016e-05, -1.851586873229292148e-05, -1.894772355488810343e-05, -1.937951752990777884e-05, -1.981124995978638011e-05, -2.024292014705877742e-05, -2.067452739443825660e-05, -2.110607100479876529e-05, -2.153755028111802621e-05, -2.196896452655565057e-05, -2.240031304443521141e-05, -2.283159513823563441e-05, -2.326281011158253103e-05, -2.369395726823028545e-05, -2.412503591214007308e-05, -2.455604534742346850e-05, -2.498698487832374637e-05, -2.541785380928514160e-05, -2.584865144488588634e-05, -2.627937708987824073e-05, -2.671003004917030542e-05, -2.714060962786563221e-05, -2.757111513119671505e-05, -2.800154586461318985e-05, -2.843190113366705140e-05, -2.886218024414875116e-05, -2.929238250197291904e-05, -2.972250721325581267e-05, -3.015255368428852067e-05, -3.058252122152780450e-05, -3.101240913157817870e-05, -3.144221672126989206e-05, -3.187194329760249155e-05, -3.230158816772658740e-05, -3.273115063902190883e-05, -3.316063001898300887e-05, -3.359002561535503356e-05, -3.401933673601960286e-05, -3.444856268907239892e-05, -3.487770278279599324e-05, -3.530675632565073257e-05, -3.573572262625752049e-05, -3.616460099348411982e-05, -3.659339073634215348e-05, -3.702209116406349329e-05, -3.745070158608333283e-05, -3.787922131198305682e-05, -3.830764965156856791e-05, -3.873598591485176716e-05, -3.916422941204222602e-05, -3.959237945351970180e-05, -4.002043534991185463e-05, -4.044839641198018262e-05, -4.087626195075533031e-05, -4.130403127742379629e-05, -4.173170370340433558e-05, -4.215927854033146621e-05, -4.258675509999800652e-05, -4.301413269443329354e-05, -4.344141063588526655e-05, -4.386858823681119042e-05, -4.429566480987014068e-05, -4.472263966790447046e-05, -4.514951212401779174e-05, -4.557628149151793953e-05, -4.600294708389986859e-05, -4.642950821491311788e-05, -4.685596419849627736e-05, -4.728231434881598536e-05, -4.770855798024926963e-05, -4.813469440742264641e-05, -4.856072294514651261e-05, -4.898664290850201754e-05, -4.941245361272772311e-05, -4.983815437335422787e-05, -5.026374450609080686e-05, -5.068922332690312186e-05, -5.111459015198497788e-05, -5.153984429775063889e-05, -5.196498508081637605e-05, -5.239001181807809659e-05, -5.281492382665510760e-05, -5.323972042387204373e-05, -5.366440092733650962e-05, -5.408896465482589599e-05, -5.451341092442106849e-05, -5.493773905439399698e-05, -5.536194836329414609e-05, -5.578603816987384143e-05, -5.621000779317428074e-05, -5.663385655241306147e-05, -5.705758376711834399e-05, -5.748118875701559312e-05, -5.790467084210480049e-05, -5.832802934264264254e-05, -5.875126357908671876e-05, -5.917437287217211658e-05, -5.959735654289420652e-05, -6.002021391249948065e-05, -6.044294430247802415e-05, -6.086554703454454180e-05, -6.128802143071644085e-05, -6.171036681325727631e-05, -6.213258250465909880e-05, -6.255466782770024254e-05, -6.297662210542766638e-05, -6.339844466110153753e-05, -6.382013481827149162e-05, -6.424169190075870273e-05, -6.466311523264795511e-05, -6.508440413827906452e-05, -6.550555794222916498e-05, -6.592657596939857764e-05, -6.634745754490840787e-05, -6.676820199417671047e-05, -6.718880864289147946e-05, -6.760927681700205580e-05, -6.802960584270207830e-05, -6.844979504650510675e-05, -6.886984375518912427e-05, -6.928975129577984063e-05, -6.970951699562600364e-05, -7.012914018228805159e-05, -7.054862018367075182e-05, -7.096795632791131107e-05, -7.138714794345610987e-05, -7.180619435903281146e-05, -7.222509490364285368e-05, -7.264384890654320727e-05, -7.306245569732274436e-05, -7.348091460584721521e-05, -7.389922496224080322e-05, -7.431738609696321169e-05, -7.473539734069734053e-05, -7.515325802448231778e-05, -7.557096747960169133e-05, -7.598852503766885048e-05, -7.640593003057184003e-05, -7.682318179046556761e-05, -7.724027964984674912e-05, -7.765722294150024076e-05, -7.807401099847957756e-05, -7.849064315416588624e-05, -7.890711874224967063e-05, -7.932343709667508363e-05, -7.973959755171652615e-05, -8.015559944196078482e-05, -8.057144210229902250e-05, -8.098712486791783359e-05, -8.140264707428241178e-05, -8.181800805721168527e-05, -8.223320715282378141e-05, -8.264824369751832709e-05, -8.306311702804230048e-05, -8.347782648142686266e-05, -8.389237139502474911e-05, -8.430675110649277334e-05, -8.472096495383073624e-05, -8.513501227531728192e-05, -8.554889240959346263e-05, -8.596260469555426433e-05, -8.637614847247750474e-05, -8.678952307991539964e-05, -8.720272785776845116e-05, -8.761576214625976583e-05, -8.802862528592579811e-05, -8.844131661759965378e-05, -8.885383548248621151e-05, -8.926618122210642201e-05, -8.967835317828229185e-05, -9.009035069320905063e-05, -9.050217310934721867e-05, -9.091381976955261639e-05, -9.132529001696622296e-05, -9.173658319508889135e-05, -9.214769864775592377e-05, -9.255863571912730035e-05, -9.296939375367125344e-05, -9.337997209624796804e-05, -9.379037009200968608e-05, -9.420058708647466262e-05, -9.461062242551044200e-05, -9.502047545527915983e-05, -9.543014552231322031e-05, -9.583963197349595680e-05, -9.624893415605591262e-05, -9.665805141755679864e-05, -9.706698310588121668e-05, -9.747572856930462925e-05, -9.788428715644112226e-05, -9.829265821622720984e-05, -9.870084109797668133e-05, -9.910883515136355228e-05, -9.951663972636883005e-05, -9.992425417335354843e-05, -1.003316778430436701e-04, -1.007389100865189465e-04, -1.011459502552072392e-04, -1.015527977008661835e-04, -1.019594517756578899e-04, -1.023659118320943408e-04, -1.027721772230212903e-04, -1.031782473016818391e-04, -1.035841214216641487e-04, -1.039897989368916296e-04, -1.043952792016993774e-04, -1.048005615707779567e-04, -1.052056453991571656e-04, -1.056105300422808591e-04, -1.060152148558971599e-04, -1.064196991961881153e-04, -1.068239824196611420e-04, -1.072280638832220874e-04, -1.076319429441501300e-04, -1.080356189600892422e-04, -1.084390912890304627e-04, -1.088423592893866527e-04, -1.092454223199385027e-04, -1.096482797398171035e-04, -1.100509309085777809e-04, -1.104533751860925560e-04, -1.108556119326779187e-04, -1.112576405089862446e-04, -1.116594602760898752e-04, -1.120610705954185862e-04, -1.124624708287946887e-04, -1.128636603384180809e-04, -1.132646384869037069e-04, -1.136654046372168302e-04, -1.140659581527399426e-04, -1.144662983972544271e-04, -1.148664247348870802e-04, -1.152663365301845148e-04, -1.156660331480955018e-04, -1.160655139539616996e-04, -1.164647783135123283e-04, -1.168638255928444643e-04, -1.172626551584980128e-04, -1.176612663774021753e-04, -1.180596586168573299e-04, -1.184578312445916945e-04, -1.188557836287431528e-04, -1.192535151378070905e-04, -1.196510251407087119e-04, -1.200483130067950298e-04, -1.204453781057827704e-04, -1.208422198078391320e-04, -1.212388374834763740e-04, -1.216352305036765675e-04, -1.220313982397861976e-04, -1.224273400635897673e-04, -1.228230553472819465e-04, -1.232185434634598610e-04, -1.236138037851079545e-04, -1.240088356856696675e-04, -1.244036385389934172e-04, -1.247982117193169847e-04, -1.251925546013404010e-04, -1.255866665601194508e-04, -1.259805469711897596e-04, -1.263741952104640112e-04, -1.267676106543021229e-04, -1.271607926794944131e-04, -1.275537406632097225e-04, -1.279464539830681093e-04, -1.283389320171218762e-04, -1.287311741438511520e-04, -1.291231797421350249e-04, -1.295149481913249428e-04, -1.299064788711482466e-04, -1.302977711617883737e-04, -1.306888244438687851e-04, -1.310796380984441292e-04, -1.314702115069928958e-04, -1.318605440514012891e-04, -1.322506351140339447e-04, -1.326404840776824296e-04, -1.330300903255488443e-04, -1.334194532412982977e-04, -1.338085722090439993e-04, -1.341974466132951366e-04, -1.345860758390265348e-04, -1.349744592716638843e-04, -1.353625962970762331e-04, -1.357504863015653344e-04, -1.361381286718526900e-04, -1.365255227951480993e-04, -1.369126680590991357e-04, -1.372995638517744493e-04, -1.376862095617255939e-04, -1.380726045779272063e-04, -1.384587482898135436e-04, -1.388446400872598620e-04, -1.392302793606206893e-04, -1.396156655006690556e-04, -1.400007978986741487e-04, -1.403856759463004025e-04, -1.407702990357280329e-04, -1.411546665595517192e-04, -1.415387779108498575e-04, -1.419226324831587296e-04, -1.423062296704664042e-04, -1.426895688671959051e-04, -1.430726494682743285e-04, -1.434554708690831870e-04, -1.438380324654413062e-04, -1.442203336536760836e-04, -1.446023738305190532e-04, -1.449841523932288883e-04, -1.453656687394877783e-04, -1.457469222674735829e-04, -1.461279123758406416e-04, -1.465086384636704153e-04, -1.468890999305424473e-04, -1.472692961765242805e-04, -1.476492266021231558e-04, -1.480288906083453452e-04, -1.484082875966804584e-04, -1.487874169690515415e-04, -1.491662781278838977e-04, -1.495448704760892844e-04, -1.499231934170578361e-04, -1.503012463546510714e-04, -1.506790286931846540e-04, -1.510565398374989472e-04, -1.514337791929089782e-04, -1.518107461651857623e-04, -1.521874401606108929e-04, -1.525638605859607117e-04, -1.529400068484535087e-04, -1.533158783558211872e-04, -1.536914745162911041e-04, -1.540667947385810819e-04, -1.544418384318889468e-04, -1.548166050058777561e-04, -1.551910938707463797e-04, -1.555653044371756426e-04, -1.559392361163155041e-04, -1.563128883198447428e-04, -1.566862604599195119e-04, -1.570593519491678093e-04, -1.574321622007560475e-04, -1.578046906283415930e-04, -1.581769366460549311e-04, -1.585488996685685125e-04, -1.589205791109971153e-04, -1.592919743890159690e-04, -1.596630849187611972e-04, -1.600339101168971197e-04, -1.604044494006019413e-04, -1.607747021875165769e-04, -1.611446678958140138e-04, -1.615143459441832922e-04, -1.618837357518204526e-04, -1.622528367384059298e-04, -1.626216483241729120e-04, -1.629901699298055883e-04, -1.633584009765597122e-04, -1.637263408861617706e-04, -1.640939890808846885e-04, -1.644613449834910163e-04, -1.648284080172669741e-04, -1.651951776060079779e-04, -1.655616531740501348e-04, -1.659278341462152207e-04, -1.662937199478691723e-04, -1.666593100049052281e-04, -1.670246037436976330e-04, -1.673896005911650097e-04, -1.677542999747589476e-04, -1.681187013224532149e-04, -1.684828040627387444e-04, -1.688466076246065842e-04, -1.692101114376144677e-04, -1.695733149318399220e-04, -1.699362175378641131e-04, -1.702988186868204727e-04, -1.706611178103812536e-04, -1.710231143407086327e-04, -1.713848077105198440e-04, -1.717461973530820562e-04, -1.721072827021625259e-04, -1.724680631921029475e-04, -1.728285382577243409e-04, -1.731887073344395920e-04, -1.735485698581579889e-04, -1.739081252653510866e-04, -1.742673729930378269e-04, -1.746263124787345022e-04, -1.749849431605228435e-04, -1.753432644770347600e-04, -1.757012758674424732e-04, -1.760589767714389197e-04, -1.764163666292995782e-04, -1.767734448817893087e-04, -1.771302109702745683e-04, -1.774866643366278382e-04, -1.778428044232933534e-04, -1.781986306732715180e-04, -1.785541425300714432e-04, -1.789093394377761360e-04, -1.792642208410284580e-04, -1.796187861850219100e-04, -1.799730349154784873e-04, -1.803269664787141653e-04, -1.806805803215509436e-04, -1.810338758913894062e-04, -1.813868526361955488e-04, -1.817395100044899093e-04, -1.820918474453457516e-04, -1.824438644083676263e-04, -1.827955603437615446e-04, -1.831469347022859190e-04, -1.834979869352348122e-04, -1.838487164944898158e-04, -1.841991228325021612e-04, -1.845492054022471293e-04, -1.848989636572889392e-04, -1.852483970517651091e-04, -1.855975050403785146e-04, -1.859462870783916422e-04, -1.862947426216113290e-04, -1.866428711264532460e-04, -1.869906720498934070e-04, -1.873381448494555377e-04, -1.876852889832733085e-04, -1.880321039099994249e-04, -1.883785890889110926e-04, -1.887247439798237696e-04, -1.890705680431560554e-04, -1.894160607398726352e-04, -1.897612215315531536e-04, -1.901060498802984041e-04, -1.904505452488435468e-04, -1.907947071004632953e-04, -1.911385348990342033e-04, -1.914820281090223058e-04, -1.918251861954355759e-04, -1.921680086238869987e-04, -1.925104948605819402e-04, -1.928526443723070887e-04, -1.931944566264134054e-04, -1.935359310908735600e-04, -1.938770672341936499e-04, -1.942178645255199666e-04, -1.945583224345491156e-04, -1.948984404315978660e-04, -1.952382179875469348e-04, -1.955776545738781476e-04, -1.959167496626541913e-04, -1.962555027265551521e-04, -1.965939132388218921e-04, -1.969319806733120493e-04, -1.972697045044847228e-04, -1.976070842073585142e-04, -1.979441192575674452e-04, -1.982808091313540734e-04, -1.986171533055553970e-04, -1.989531512576005515e-04, -1.992888024654956034e-04, -1.996241064078835064e-04, -1.999590625640024959e-04, -2.002936704136680361e-04, -2.006279294373215013e-04, -2.009618391160160810e-04, -2.012953989313694819e-04, -2.016286083656278411e-04, -2.019614669016516861e-04, -2.022939740229063395e-04, -2.026261292134585578e-04, -2.029579319579593471e-04, -2.032893817417147613e-04, -2.036204780506023916e-04, -2.039512203711334637e-04, -2.042816081904368466e-04, -2.046116409962175811e-04, -2.049413182768149394e-04, -2.052706395211900106e-04, -2.055996042189186265e-04, -2.059282118601684578e-04, -2.062564619357614099e-04, -2.065843539370837965e-04, -2.069118873561913723e-04, -2.072390616857218643e-04, -2.075658764189540072e-04, -2.078923310497932044e-04, -2.082184250727300845e-04, -2.085441579828982352e-04, -2.088695292760609217e-04, -2.091945384486037412e-04, -2.095191849975157035e-04, -2.098434684204460437e-04, -2.101673882156185693e-04, -2.104909438819342268e-04, -2.108141349188839581e-04, -2.111369608266173850e-04, -2.114594211058955925e-04, -2.117815152580886616e-04, -2.121032427852325363e-04, -2.124246031899873629e-04, -2.127455959756225008e-04, -2.130662206460603514e-04, -2.133864767058664110e-04, -2.137063636602017818e-04, -2.140258810148828040e-04, -2.143450282763709181e-04, -2.146638049517633404e-04, -2.149822105487853659e-04, -2.153002445757787125e-04, -2.156179065417612067e-04, -2.159351959563805693e-04, -2.162521123299041969e-04, -2.165686551732751337e-04, -2.168848239980282087e-04, -2.172006183163898362e-04, -2.175160376411952373e-04, -2.178310814859497511e-04, -2.181457493647758991e-04, -2.184600407924764038e-04, -2.187739552844505974e-04, -2.190874923567930023e-04, -2.194006515262118264e-04, -2.197134323100840138e-04, -2.200258342264411224e-04, -2.203378567939298595e-04, -2.206494995318695714e-04, -2.209607619602352486e-04, -2.212716435996562789e-04, -2.215821439713920528e-04, -2.218922625973906190e-04, -2.222019990002041436e-04, -2.225113527030909608e-04, -2.228203232299259633e-04, -2.231289101052657360e-04, -2.234371128543260587e-04, -2.237449310029508709e-04, -2.240523640776572660e-04, -2.243594116056338381e-04, -2.246660731147259098e-04, -2.249723481334185639e-04, -2.252782361908949201e-04, -2.255837368169559846e-04, -2.258888495420878983e-04, -2.261935738974464323e-04, -2.264979094148511605e-04, -2.268018556267807433e-04, -2.271054120663576947e-04, -2.274085782674050858e-04, -2.277113537644073510e-04, -2.280137380924942691e-04, -2.283157307875004313e-04, -2.286173313858796171e-04, -2.289185394248045673e-04, -2.292193544420830127e-04, -2.295197759762158691e-04, -2.298198035663757694e-04, -2.301194367524000712e-04, -2.304186750747792009e-04, -2.307175180747142527e-04, -2.310159652940699606e-04, -2.313140162753696033e-04, -2.316116705618446873e-04, -2.319089276973567218e-04, -2.322057872264922764e-04, -2.325022486944813404e-04, -2.327983116472612907e-04, -2.330939756314211913e-04, -2.333892401942644595e-04, -2.336841048837276329e-04, -2.339785692484769438e-04, -2.342726328378270592e-04, -2.345662952017949106e-04, -2.348595558910894759e-04, -2.351524144570689802e-04, -2.354448704517981964e-04, -2.357369234280337806e-04, -2.360285729392191771e-04, -2.363198185394631507e-04, -2.366106597835983337e-04, -2.369010962270972547e-04, -2.371911274261689136e-04, -2.374807529376790388e-04, -2.377699723192092573e-04, -2.380587851290146483e-04, -2.383471909260455356e-04, -2.386351892699424462e-04, -2.389227797210544059e-04, -2.392099618404011554e-04, -2.394967351897151625e-04, -2.397830993314303740e-04, -2.400690538286452712e-04, -2.403545982451727977e-04, -2.406397321455304927e-04, -2.409244550949336068e-04, -2.412087666592898434e-04, -2.414926664051855894e-04, -2.417761538999390139e-04, -2.420592287115638016e-04, -2.423418904087548957e-04, -2.426241385609408108e-04, -2.429059727382069521e-04, -2.431873925113871228e-04, -2.434683974519877649e-04, -2.437489871322377245e-04, -2.440291611250712837e-04, -2.443089190041216555e-04, -2.445882603437089494e-04, -2.448671847189000188e-04, -2.451456917054348986e-04, -2.454237808797829663e-04, -2.457014518191284139e-04, -2.459787041013323009e-04, -2.462555373049856800e-04, -2.465319510093966411e-04, -2.468079447945841854e-04, -2.470835182412590893e-04, -2.473586709308808794e-04, -2.476334024455730475e-04, -2.479077123682199243e-04, -2.481816002823881832e-04, -2.484550657723782856e-04, -2.487281084232133136e-04, -2.490007278206011858e-04, -2.492729235509858312e-04, -2.495446952015341249e-04, -2.498160423601326354e-04, -2.500869646153677296e-04, -2.503574615565752289e-04, -2.506275327737699367e-04, -2.508971778577280911e-04, -2.511663963999177600e-04, -2.514351879925544602e-04, -2.517035522285632643e-04, -2.519714887015727842e-04, -2.522389970059681877e-04, -2.525060767368524930e-04, -2.527727274900338291e-04, -2.530389488620776945e-04, -2.533047404502330687e-04, -2.535701018525193654e-04, -2.538350326676516765e-04, -2.540995324950914586e-04, -2.543636009350300534e-04, -2.546272375883796885e-04, -2.548904420567665386e-04, -2.551532139425764247e-04, -2.554155528489206618e-04, -2.556774583796241323e-04, -2.559389301392733167e-04, -2.561999677331459825e-04, -2.564605707672955900e-04, -2.567207388484788128e-04, -2.569804715842114828e-04, -2.572397685827213193e-04, -2.574986294530004580e-04, -2.577570538047357918e-04, -2.580150412483933208e-04, -2.582725913951466499e-04, -2.585297038569256151e-04, -2.587863782464049534e-04, -2.590426141769667351e-04, -2.592984112627538156e-04, -2.595537691186542762e-04, -2.598086873602952992e-04, -2.600631656040307532e-04, -2.603172034669842361e-04, -2.605708005669809873e-04, -2.608239565226313172e-04, -2.610766709532607839e-04, -2.613289434789553512e-04, -2.615807737205523347e-04, -2.618321612996050572e-04, -2.620831058384321256e-04, -2.623336069601077273e-04, -2.625836642884317061e-04, -2.628332774479805742e-04, -2.630824460640399662e-04, -2.633311697626809669e-04, -2.635794481706998840e-04, -2.638272809156571707e-04, -2.640746676258644158e-04, -2.643216079303806025e-04, -2.645681014589959545e-04, -2.648141478422844108e-04, -2.650597467115642153e-04, -2.653048976988928750e-04, -2.655496004371083602e-04, -2.657938545597625878e-04, -2.660376597012038217e-04, -2.662810154965065241e-04, -2.665239215815190066e-04, -2.667663775928457034e-04, -2.670083831678409913e-04, -2.672499379446022509e-04, -2.674910415620119879e-04, -2.677316936597065535e-04, -2.679718938780635681e-04, -2.682116418582498971e-04, -2.684509372421574661e-04, -2.686897796724571456e-04, -2.689281687925865541e-04, -2.691661042467447993e-04, -2.694035856798765406e-04, -2.696406127377174171e-04, -2.698771850667280197e-04, -2.701133023141713573e-04, -2.703489641280473711e-04, -2.705841701571373866e-04, -2.708189200509941936e-04, -2.710532134599093028e-04, -2.712870500349558807e-04, -2.715204294279805093e-04, -2.717533512915993915e-04, -2.719858152791773177e-04, -2.722178210448756956e-04, -2.724493682435883660e-04, -2.726804565310152737e-04, -2.729110855636011023e-04, -2.731412549985803222e-04, -2.733709644939449359e-04, -2.736002137084629637e-04, -2.738290023016686859e-04, -2.740573299338854105e-04, -2.742851962661886113e-04, -2.745126009604537403e-04, -2.747395436792940491e-04, -2.749660240861318754e-04, -2.751920418451417219e-04, -2.754175966212877701e-04, -2.756426880803101108e-04, -2.758673158887206241e-04, -2.760914797137930588e-04, -2.763151792236034194e-04, -2.765384140870020472e-04, -2.767611839736009360e-04, -2.769834885538184546e-04, -2.772053274988158129e-04, -2.774267004805699207e-04, -2.776476071718126716e-04, -2.778680472460765341e-04, -2.780880203776578516e-04, -2.783075262416552227e-04, -2.785265645139196281e-04, -2.787451348711168266e-04, -2.789632369906717350e-04, -2.791808705508087071e-04, -2.793980352305402027e-04, -2.796147307096387077e-04, -2.798309566686775539e-04, -2.800467127890207816e-04, -2.802619987528170140e-04, -2.804768142429882902e-04, -2.806911589432666563e-04, -2.809050325381401729e-04, -2.811184347129155815e-04, -2.813313651536661548e-04, -2.815438235472675290e-04, -2.817558095813897895e-04, -2.819673229444687938e-04, -2.821783633257441727e-04, -2.823889304152528250e-04, -2.825990239038215991e-04, -2.828086434830635529e-04, -2.830177888453702011e-04, -2.832264596839497339e-04, -2.834346556927985566e-04, -2.836423765666907723e-04, -2.838496220012151541e-04, -2.840563916927437565e-04, -2.842626853384280674e-04, -2.844685026362425923e-04, -2.846738432849481542e-04, -2.848787069840895631e-04, -2.850830934340316107e-04, -2.852870023359026382e-04, -2.854904333916595885e-04, -2.856933863040367772e-04, -2.858958607765792323e-04, -2.860978565136294122e-04, -2.862993732203246585e-04, -2.865004106025902564e-04, -2.867009683671702266e-04, -2.869010462216079176e-04, -2.871006438742312612e-04, -2.872997610341928871e-04, -2.874983974114149921e-04, -2.876965527166547168e-04, -2.878942266614464666e-04, -2.880914189581477189e-04, -2.882881293198992869e-04, -2.884843574606695557e-04, -2.886801030951978864e-04, -2.888753659390611863e-04, -2.890701457086174218e-04, -2.892644421210432948e-04, -2.894582548943269240e-04, -2.896515837472381379e-04, -2.898444283993674517e-04, -2.900367885711173941e-04, -2.902286639836969230e-04, -2.904200543591175230e-04, -2.906109594201862121e-04, -2.908013788905408864e-04, -2.909913124946237033e-04, -2.911807599576713237e-04, -2.913697210057442392e-04, -2.915581953657182617e-04, -2.917461827652555748e-04, -2.919336829328428437e-04, -2.921206955977886130e-04, -2.923072204901929491e-04, -2.924932573409902122e-04, -2.926788058818975019e-04, -2.928638658454741262e-04, -2.930484369650700476e-04, -2.932325189748632879e-04, -2.934161116098457254e-04, -2.935992146058158305e-04, -2.937818276993773106e-04, -2.939639506279693591e-04, -2.941455831298416109e-04, -2.943267249440451429e-04, -2.945073758104708550e-04, -2.946875354697948805e-04, -2.948672036635411448e-04, -2.950463801340269922e-04, -2.952250646244015128e-04, -2.954032568786323153e-04, -2.955809566414983706e-04, -2.957581636585882782e-04, -2.959348776763262860e-04, -2.961110984419558652e-04, -2.962868257035246940e-04, -2.964620592099212492e-04, -2.966367987108316554e-04, -2.968110439567726985e-04, -2.969847946990876518e-04, -2.971580506899397706e-04, -2.973308116823045947e-04, -2.975030774299956978e-04, -2.976748476876245721e-04, -2.978461222106522908e-04, -2.980169007553417487e-04, -2.981871830787931701e-04, -2.983569689389327243e-04, -2.985262580944919803e-04, -2.986950503050391317e-04, -2.988633453309696725e-04, -2.990311429335046085e-04, -2.991984428746875292e-04, -2.993652449173740920e-04, -2.995315488252672039e-04, -2.996973543628914344e-04, -2.998626612955866732e-04, -3.000274693895355602e-04, -3.001917784117356762e-04, -3.003555881300167267e-04, -3.005188983130328449e-04, -3.006817087302769568e-04, -3.008440191520565495e-04, -3.010058293495254927e-04, -3.011671390946438686e-04, -3.013279481602224789e-04, -3.014882563198874993e-04, -3.016480633481052540e-04, -3.018073690201709394e-04, -3.019661731122101969e-04, -3.021244754011644215e-04, -3.022822756648296848e-04, -3.024395736818259977e-04, -3.025963692315974192e-04, -3.027526620944348784e-04, -3.029084520514412635e-04, -3.030637388845738140e-04, -3.032185223766064447e-04, -3.033728023111615670e-04, -3.035265784726801650e-04, -3.036798506464555682e-04, -3.038326186185896500e-04, -3.039848821760450862e-04, -3.041366411066014986e-04, -3.042878951988841328e-04, -3.044386442423566478e-04, -3.045888880273027932e-04, -3.047386263448511831e-04, -3.048878589869715014e-04, -3.050365857464682677e-04, -3.051848064169816505e-04, -3.053325207929777634e-04, -3.054797286697760956e-04, -3.056264298435337908e-04, -3.057726241112336671e-04, -3.059183112707051415e-04, -3.060634911206236886e-04, -3.062081634604833010e-04, -3.063523280906296667e-04, -3.064959848122495432e-04, -3.066391334273705954e-04, -3.067817737388563539e-04, -3.069239055503999807e-04, -3.070655286665550606e-04, -3.072066428927018827e-04, -3.073472480350684195e-04, -3.074873439007251769e-04, -3.076269302975802073e-04, -3.077660070343749346e-04, -3.079045739207074655e-04, -3.080426307670160548e-04, -3.081801773845697272e-04, -3.083172135855003155e-04, -3.084537391827557313e-04, -3.085897539901510315e-04, -3.087252578223311753e-04, -3.088602504947903231e-04, -3.089947318238697228e-04, -3.091287016267499571e-04, -3.092621597214476373e-04, -3.093951059268387131e-04, -3.095275400626422641e-04, -3.096594619494098745e-04, -3.097908714085589182e-04, -3.099217682623276186e-04, -3.100521523338221029e-04, -3.101820234469783466e-04, -3.103113814265924227e-04, -3.104402260983013659e-04, -3.105685572885753657e-04, -3.106963748247531664e-04, -3.108236785350132806e-04, -3.109504682483732311e-04, -3.110767437947084156e-04, -3.112025050047432704e-04, -3.113277517100369591e-04, -3.114524837430048400e-04, -3.115767009369147791e-04, -3.117004031258823805e-04, -3.118235901448685463e-04, -3.119462618296767664e-04, -3.120684180169720919e-04, -3.121900585442671490e-04, -3.123111832499160675e-04, -3.124317919731335082e-04, -3.125518845539762319e-04, -3.126714608333540498e-04, -3.127905206530241853e-04, -3.129090638556040137e-04, -3.130270902845492696e-04, -3.131445997841818566e-04, -3.132615921996530933e-04, -3.133780673769896827e-04, -3.134940251630533806e-04, -3.136094654055653899e-04, -3.137243879530995840e-04, -3.138387926550817485e-04, -3.139526793617767328e-04, -3.140660479243221693e-04, -3.141788981946999041e-04, -3.142912300257407680e-04, -3.144030432711394300e-04, -3.145143377854266414e-04, -3.146251134240058279e-04, -3.147353700431188288e-04, -3.148451074998715382e-04, -3.149543256522221958e-04, -3.150630243589809532e-04, -3.151712034798060790e-04, -3.152788628752230954e-04, -3.153860024066025515e-04, -3.154926219361756904e-04, -3.155987213270313591e-04, -3.157043004431003960e-04, -3.158093591491784534e-04, -3.159138973109187876e-04, -3.160179147948283555e-04, -3.161214114682700917e-04, -3.162243871994531506e-04, -3.163268418574577347e-04, -3.164287753122150366e-04, -3.165301874345077273e-04, -3.166310780959817736e-04, -3.167314471691413426e-04, -3.168312945273364959e-04, -3.169306200447816755e-04, -3.170294235965495774e-04, -3.171277050585718030e-04, -3.172254643076340879e-04, -3.173227012213737002e-04, -3.174194156782964623e-04, -3.175156075577632527e-04, -3.176112767399882171e-04, -3.177064231060506400e-04, -3.178010465378845371e-04, -3.178951469182749682e-04, -3.179887241308777704e-04, -3.180817780602056256e-04, -3.181743085916217181e-04, -3.182663156113593587e-04, -3.183577990064968854e-04, -3.184487586649875873e-04, -3.185391944756301059e-04, -3.186291063280915830e-04, -3.187184941128996373e-04, -3.188073577214367267e-04, -3.188956970459401485e-04, -3.189835119795161877e-04, -3.190708024161329078e-04, -3.191575682506080070e-04, -3.192438093786322375e-04, -3.193295256967403485e-04, -3.194147171023443716e-04, -3.194993834937057023e-04, -3.195835247699531519e-04, -3.196671408310724312e-04, -3.197502315779097819e-04, -3.198327969121727361e-04, -3.199148367364349952e-04, -3.199963509541225515e-04, -3.200773394695304399e-04, -3.201578021878154733e-04, -3.202377390149881110e-04, -3.203171498579229759e-04, -3.203960346243596132e-04, -3.204743932229025985e-04, -3.205522255630121600e-04, -3.206295315550068887e-04, -3.207063111100743095e-04, -3.207825641402671946e-04, -3.208582905584887648e-04, -3.209334902785146437e-04, -3.210081632149834802e-04, -3.210823092833854555e-04, -3.211559284000803350e-04, -3.212290204822929149e-04, -3.213015854481091733e-04, -3.213736232164757819e-04, -3.214451337071972336e-04, -3.215161168409536225e-04, -3.215865725392754370e-04, -3.216565007245643219e-04, -3.217259013200840252e-04, -3.217947742499595852e-04, -3.218631194391739152e-04, -3.219309368135812475e-04, -3.219982262999003032e-04, -3.220649878257025823e-04, -3.221312213194373010e-04, -3.221969267104023344e-04, -3.222621039287706718e-04, -3.223267529055717675e-04, -3.223908735727029802e-04, -3.224544658629265904e-04, -3.225175297098617239e-04, -3.225800650479941092e-04, -3.226420718126783000e-04, -3.227035499401281348e-04, -3.227644993674208562e-04, -3.228249200325035081e-04, -3.228848118741765643e-04, -3.229441748321152869e-04, -3.230030088468498857e-04, -3.230613138597844916e-04, -3.231190898131807310e-04, -3.231763366501619545e-04, -3.232330543147217470e-04, -3.232892427517167731e-04, -3.233449019068655836e-04, -3.234000317267531695e-04, -3.234546321588296610e-04, -3.235087031514057737e-04, -3.235622446536574165e-04, -3.236152566156275351e-04, -3.236677389882243764e-04, -3.237196917232187791e-04, -3.237711147732395107e-04, -3.238220080917903984e-04, -3.238723716332370475e-04, -3.239222053528036972e-04, -3.239715092065869359e-04, -3.240202831515422025e-04, -3.240685271454929483e-04, -3.241162411471229933e-04, -3.241634251159856875e-04, -3.242100790124954543e-04, -3.242562027979348921e-04, -3.243017964344455583e-04, -3.243468598850389201e-04, -3.243913931135857290e-04, -3.244353960848277846e-04, -3.244788687643676887e-04, -3.245218111186734533e-04, -3.245642231150731882e-04, -3.246061047217669183e-04, -3.246474559078157420e-04, -3.246882766431438911e-04, -3.247285668985445311e-04, -3.247683266456675641e-04, -3.248075558570351871e-04, -3.248462545060300743e-04, -3.248844225669000928e-04, -3.249220600147608514e-04, -3.249591668255858877e-04, -3.249957429762151797e-04, -3.250317884443581270e-04, -3.250673032085820043e-04, -3.251022872483212852e-04, -3.251367405438778052e-04, -3.251706630764106243e-04, -3.252040548279473567e-04, -3.252369157813794548e-04, -3.252692459204641062e-04, -3.253010452298201144e-04, -3.253323136949284942e-04, -3.253630513021395199e-04, -3.253932580386651894e-04, -3.254229338925793873e-04, -3.254520788528227635e-04, -3.254806929092005107e-04, -3.255087760523775399e-04, -3.255363282738846058e-04, -3.255633495661180358e-04, -3.255898399223374536e-04, -3.256157993366645860e-04, -3.256412278040834258e-04, -3.256661253204447856e-04, -3.256904918824625027e-04, -3.257143274877117049e-04, -3.257376321346331467e-04, -3.257604058225309872e-04, -3.257826485515683446e-04, -3.258043603227774878e-04, -3.258255411380512711e-04, -3.258461910001442729e-04, -3.258663099126770778e-04, -3.258858978801295551e-04, -3.259049549078488271e-04, -3.259234810020404335e-04, -3.259414761697753240e-04, -3.259589404189889910e-04, -3.259758737584743144e-04, -3.259922761978890958e-04, -3.260081477477549212e-04, -3.260234884194556423e-04, -3.260382982252357504e-04, -3.260525771782041174e-04, -3.260663252923282486e-04, -3.260795425824406261e-04, -3.260922290642350222e-04, -3.261043847542679087e-04, -3.261160096699553673e-04, -3.261271038295787271e-04, -3.261376672522755659e-04, -3.261476999580502812e-04, -3.261572019677656874e-04, -3.261661733031472987e-04, -3.261746139867820280e-04, -3.261825240421146630e-04, -3.261899034934565402e-04, -3.261967523659756239e-04, -3.262030706857033373e-04, -3.262088584795290328e-04, -3.262141157752061716e-04, -3.262188426013440303e-04, -3.262230389874188675e-04, -3.262267049637611305e-04, -3.262298405615645085e-04, -3.262324458128835472e-04, -3.262345207506294202e-04, -3.262360654085763264e-04, -3.262370798213578031e-04, -3.262375640244649915e-04, -3.262375180542505942e-04, -3.262369419479256225e-04, -3.262358357435616186e-04, -3.262341994800879458e-04, -3.262320331972928182e-04, -3.262293369358261735e-04, -3.262261107371920840e-04, -3.262223546437583517e-04, -3.262180686987459373e-04, -3.262132529462395312e-04, -3.262079074311785001e-04, -3.262020321993617665e-04, -3.261956272974461820e-04, -3.261886927729460935e-04, -3.261812286742326933e-04, -3.261732350505367828e-04, -3.261647119519466053e-04, -3.261556594294047007e-04, -3.261460775347140863e-04, -3.261359663205328353e-04, -3.261253258403774922e-04, -3.261141561486196575e-04, -3.261024573004870719e-04, -3.260902293520677366e-04, -3.260774723603024859e-04, -3.260641863829876440e-04, -3.260503714787787652e-04, -3.260360277071845084e-04, -3.260211551285699979e-04, -3.260057538041565527e-04, -3.259898237960193548e-04, -3.259733651670900520e-04, -3.259563779811552940e-04, -3.259388623028557563e-04, -3.259208181976876043e-04, -3.259022457320015715e-04, -3.258831449730007911e-04, -3.258635159887450245e-04, -3.258433588481475713e-04, -3.258226736209746187e-04, -3.258014603778482230e-04, -3.257797191902399672e-04, -3.257574501304783877e-04, -3.257346532717422523e-04, -3.257113286880680410e-04, -3.256874764543383994e-04, -3.256630966462944988e-04, -3.256381893405270911e-04, -3.256127546144788943e-04, -3.255867925464448636e-04, -3.255603032155745223e-04, -3.255332867018647519e-04, -3.255057430861662431e-04, -3.254776724501820865e-04, -3.254490748764631101e-04, -3.254199504484142223e-04, -3.253902992502917015e-04, -3.253601213671978827e-04, -3.253294168850883687e-04, -3.252981858907699145e-04, -3.252664284718964714e-04, -3.252341447169745524e-04, -3.252013347153575955e-04, -3.251679985572512215e-04, -3.251341363337060240e-04, -3.250997481366252675e-04, -3.250648340587588159e-04, -3.250293941937065475e-04, -3.249934286359157528e-04, -3.249569374806811893e-04, -3.249199208241467613e-04, -3.248823787633019428e-04, -3.248443113959863303e-04, -3.248057188208857402e-04, -3.247666011375318295e-04, -3.247269584463025288e-04, -3.246867908484241030e-04, -3.246460984459701750e-04, -3.246048813418587987e-04, -3.245631396398506157e-04, -3.245208734445582878e-04, -3.244780828614350046e-04, -3.244347679967806092e-04, -3.243909289577403513e-04, -3.243465658523061340e-04, -3.243016787893108761e-04, -3.242562678784297048e-04, -3.242103332301872736e-04, -3.241638749559516372e-04, -3.241168931679299140e-04, -3.240693879791747378e-04, -3.240213595035845284e-04, -3.239728078558935711e-04, -3.239237331516865996e-04, -3.238741355073863275e-04, -3.238240150402594652e-04, -3.237733718684089688e-04, -3.237222061107878084e-04, -3.236705178871827058e-04, -3.236183073182288795e-04, -3.235655745253946487e-04, -3.235123196309944442e-04, -3.234585427581800261e-04, -3.234042440309426521e-04, -3.233494235741159509e-04, -3.232940815133742958e-04, -3.232382179752257573e-04, -3.231818330870205600e-04, -3.231249269769484261e-04, -3.230674997740345098e-04, -3.230095516081467701e-04, -3.229510826099859415e-04, -3.228920929110952378e-04, -3.228325826438503232e-04, -3.227725519414684197e-04, -3.227120009379993624e-04, -3.226509297683334597e-04, -3.225893385681946092e-04, -3.225272274741438749e-04, -3.224645966235774276e-04, -3.224014461547239428e-04, -3.223377762066547921e-04, -3.222735869192699487e-04, -3.222088784333059560e-04, -3.221436508903314285e-04, -3.220779044327497080e-04, -3.220116392038036338e-04, -3.219448553475617739e-04, -3.218775530089283449e-04, -3.218097323336409897e-04, -3.217413934682678499e-04, -3.216725365602146679e-04, -3.216031617577121008e-04, -3.215332692098269969e-04, -3.214628590664551856e-04, -3.213919314783257055e-04, -3.213204865969942450e-04, -3.212485245748543643e-04, -3.211760455651206355e-04, -3.211030497218449057e-04, -3.210295371999034495e-04, -3.209555081550008720e-04, -3.208809627436787280e-04, -3.208059011233006146e-04, -3.207303234520589470e-04, -3.206542298889717606e-04, -3.205776205938908963e-04, -3.205004957274890987e-04, -3.204228554512720509e-04, -3.203446999275668273e-04, -3.202660293195314350e-04, -3.201868437911461942e-04, -3.201071435072143888e-04, -3.200269286333736504e-04, -3.199461993360827854e-04, -3.198649557826197150e-04, -3.197831981410929132e-04, -3.197009265804330049e-04, -3.196181412703919520e-04, -3.195348423815501555e-04, -3.194510300853099500e-04, -3.193667045538928933e-04, -3.192818659603418804e-04, -3.191965144785248844e-04, -3.191106502831373955e-04, -3.190242735496861583e-04, -3.189373844545005015e-04, -3.188499831747365664e-04, -3.187620698883629955e-04, -3.186736447741769784e-04, -3.185847080117872846e-04, -3.184952597816272189e-04, -3.184053002649471953e-04, -3.183148296438133816e-04, -3.182238481011114939e-04, -3.181323558205532477e-04, -3.180403529866577097e-04, -3.179478397847603508e-04, -3.178548164010232377e-04, -3.177612830224126983e-04, -3.176672398367238787e-04, -3.175726870325576499e-04, -3.174776247993353531e-04, -3.173820533272874692e-04, -3.172859728074697199e-04, -3.171893834317363416e-04, -3.170922853927741840e-04, -3.169946788840676899e-04, -3.168965640999253501e-04, -3.167979412354601874e-04, -3.166988104865984307e-04, -3.165991720500864535e-04, -3.164990261234752701e-04, -3.163983729051296425e-04, -3.162972125942193529e-04, -3.161955453907351415e-04, -3.160933714954643117e-04, -3.159906911100214674e-04, -3.158875044368137102e-04, -3.157838116790682862e-04, -3.156796130408120950e-04, -3.155749087268886030e-04, -3.154696989429427189e-04, -3.153639838954336956e-04, -3.152577637916181082e-04, -3.151510388395687735e-04, -3.150438092481578907e-04, -3.149360752270616488e-04, -3.148278369867727497e-04, -3.147190947385823017e-04, -3.146098486945823674e-04, -3.145000990676711139e-04, -3.143898460715516740e-04, -3.142790899207372965e-04, -3.141678308305342698e-04, -3.140560690170511376e-04, -3.139438046972086198e-04, -3.138310380887148377e-04, -3.137177694100970276e-04, -3.136039988806677134e-04, -3.134897267205485590e-04, -3.133749531506589301e-04, -3.132596783927137259e-04, -3.131439026692308595e-04, -3.130276262035367883e-04, -3.129108492197375650e-04, -3.127935719427523938e-04, -3.126757945982901036e-04, -3.125575174128546771e-04, -3.124387406137569601e-04, -3.123194644290990495e-04, -3.121996890877766777e-04, -3.120794148194790509e-04, -3.119586418546996362e-04, -3.118373704247134480e-04, -3.117156007616062128e-04, -3.115933330982421142e-04, -3.114705676682885129e-04, -3.113473047062006050e-04, -3.112235444472220727e-04, -3.110992871274015641e-04, -3.109745329835713885e-04, -3.108492822533533173e-04, -3.107235351751578786e-04, -3.105972919881966636e-04, -3.104705529324548957e-04, -3.103433182487268845e-04, -3.102155881785785660e-04, -3.100873629643765054e-04, -3.099586428492632313e-04, -3.098294280771762637e-04, -3.096997188928468127e-04, -3.095695155417804798e-04, -3.094388182702715153e-04, -3.093076273254075342e-04, -3.091759429550478867e-04, -3.090437654078555881e-04, -3.089110949332608889e-04, -3.087779317814889771e-04, -3.086442762035411665e-04, -3.085101284512014566e-04, -3.083754887770413572e-04, -3.082403574344199423e-04, -3.081047346774648771e-04, -3.079686207610886264e-04, -3.078320159409905690e-04, -3.076949204736381324e-04, -3.075573346162983434e-04, -3.074192586269968992e-04, -3.072806927645514523e-04, -3.071416372885484090e-04, -3.070020924593624989e-04, -3.068620585381315129e-04, -3.067215357867900767e-04, -3.065805244680293177e-04, -3.064390248453298252e-04, -3.062970371829412133e-04, -3.061545617458820119e-04, -3.060115987999615142e-04, -3.058681486117551646e-04, -3.057242114486067273e-04, -3.055797875786335450e-04, -3.054348772707346157e-04, -3.052894807945679334e-04, -3.051435984205801946e-04, -3.049972304199708036e-04, -3.048503770647232594e-04, -3.047030386275829299e-04, -3.045552153820625272e-04, -3.044069076024559311e-04, -3.042581155638200284e-04, -3.041088395419740630e-04, -3.039590798135056527e-04, -3.038088366557722530e-04, -3.036581103469086383e-04, -3.035069011657943756e-04, -3.033552093920920969e-04, -3.032030353062191473e-04, -3.030503791893574515e-04, -3.028972413234561154e-04, -3.027436219912366848e-04, -3.025895214761698351e-04, -3.024349400624893030e-04, -3.022798780351995305e-04, -3.021243356800554442e-04, -3.019683132835904280e-04, -3.018118111330768578e-04, -3.016548295165645370e-04, -3.014973687228500671e-04, -3.013394290414919728e-04, -3.011810107628080458e-04, -3.010221141778851020e-04, -3.008627395785496003e-04, -3.007028872573885132e-04, -3.005425575077552897e-04, -3.003817506237414499e-04, -3.002204669002180547e-04, -3.000587066327861045e-04, -2.998964701178183888e-04, -2.997337576524264184e-04, -2.995705695344905118e-04, -2.994069060626240709e-04, -2.992427675362176534e-04, -2.990781542553880702e-04, -2.989130665210216445e-04, -2.987475046347425533e-04, -2.985814688989232358e-04, -2.984149596167015236e-04, -2.982479770919540781e-04, -2.980805216293018109e-04, -2.979125935341125951e-04, -2.977441931125129741e-04, -2.975753206713573160e-04, -2.974059765182708029e-04, -2.972361609615991771e-04, -2.970658743104523272e-04, -2.968951168746663941e-04, -2.967238889648364064e-04, -2.965521908922928609e-04, -2.963800229691147337e-04, -2.962073855081109939e-04, -2.960342788228494441e-04, -2.958607032276156824e-04, -2.956866590374650368e-04, -2.955121465681649932e-04, -2.953371661362417079e-04, -2.951617180589478613e-04, -2.949858026542762101e-04, -2.948094202409564974e-04, -2.946325711384721493e-04, -2.944552556670183168e-04, -2.942774741475358649e-04, -2.940992269017064938e-04, -2.939205142519307843e-04, -2.937413365213686380e-04, -2.935616940338888620e-04, -2.933815871141085799e-04, -2.932010160873695418e-04, -2.930199812797415937e-04, -2.928384830180330318e-04, -2.926565216297920659e-04, -2.924740974432745106e-04, -2.922912107874838460e-04, -2.921078619921419449e-04, -2.919240513876951437e-04, -2.917397793053360354e-04, -2.915550460769730573e-04, -2.913698520352364543e-04, -2.911841975134828327e-04, -2.909980828458059478e-04, -2.908115083670041777e-04, -2.906244744126279577e-04, -2.904369813189238347e-04, -2.902490294228796792e-04, -2.900606190621955738e-04, -2.898717505752881505e-04, -2.896824243013144430e-04, -2.894926405801406615e-04, -2.893023997523501076e-04, -2.891117021592436078e-04, -2.889205481428447722e-04, -2.887289380459085592e-04, -2.885368722118857683e-04, -2.883443509849494403e-04, -2.881513747100001156e-04, -2.879579437326368319e-04, -2.877640583991845544e-04, -2.875697190566920075e-04, -2.873749260529037566e-04, -2.871796797362782057e-04, -2.869839804560016922e-04, -2.867878285619508108e-04, -2.865912244047423411e-04, -2.863941683356754594e-04, -2.861966607067787933e-04, -2.859987018707789257e-04, -2.858002921811103689e-04, -2.856014319919218539e-04, -2.854021216580793110e-04, -2.852023615351384402e-04, -2.850021519793616786e-04, -2.848014933477320239e-04, -2.846003859979155757e-04, -2.843988302883128177e-04, -2.841968265779993121e-04, -2.839943752267719951e-04, -2.837914765951168134e-04, -2.835881310442365339e-04, -2.833843389360145315e-04, -2.831801006330647162e-04, -2.829754164986701681e-04, -2.827702868968361540e-04, -2.825647121922528313e-04, -2.823586927503040299e-04, -2.821522289370932191e-04, -2.819453211194068612e-04, -2.817379696647238441e-04, -2.815301749412185716e-04, -2.813219373177641073e-04, -2.811132571639402521e-04, -2.809041348500002588e-04, -2.806945707468930045e-04, -2.804845652262731278e-04, -2.802741186604757666e-04, -2.800632314225174257e-04, -2.798519038861330024e-04, -2.796401364257292740e-04, -2.794279294163952519e-04, -2.792152832339254379e-04, -2.790021982547793837e-04, -2.787886748561360629e-04, -2.785747134158277896e-04, -2.783603143123963256e-04, -2.781454779250536863e-04, -2.779302046336972658e-04, -2.777144948189120047e-04, -2.774983488619794979e-04, -2.772817671448414567e-04, -2.770647500501248624e-04, -2.768472979611524831e-04, -2.766294112619038965e-04, -2.764110903370693749e-04, -2.761923355719884650e-04, -2.759731473526998071e-04, -2.757535260659066032e-04, -2.755334720989885975e-04, -2.753129858400082562e-04, -2.750920676777152672e-04, -2.748707180015110322e-04, -2.746489372014776151e-04, -2.744267256683829460e-04, -2.742040837936450971e-04, -2.739810119693833479e-04, -2.737575105883721617e-04, -2.735335800440543579e-04, -2.733092207305414922e-04, -2.730844330426280045e-04, -2.728592173757561461e-04, -2.726335741260667734e-04, -2.724075036903358688e-04, -2.721810064660305935e-04, -2.719540828512678169e-04, -2.717267332448270725e-04, -2.714989580461743567e-04, -2.712707576554273799e-04, -2.710421324733604449e-04, -2.708130829014104650e-04, -2.705836093416818969e-04, -2.703537121969546006e-04, -2.701233918706444294e-04, -2.698926487668305515e-04, -2.696614832902686229e-04, -2.694298958463492086e-04, -2.691978868411389276e-04, -2.689654566813535650e-04, -2.687326057743716248e-04, -2.684993345282118320e-04, -2.682656433515664181e-04, -2.680315326537573736e-04, -2.677970028447969461e-04, -2.675620543353114753e-04, -2.673266875366061743e-04, -2.670909028606234417e-04, -2.668547007199538663e-04, -2.666180815278440877e-04, -2.663810456982045483e-04, -2.661435936455689984e-04, -2.659057257851232272e-04, -2.656674425327162307e-04, -2.654287443048164094e-04, -2.651896315185733682e-04, -2.649501045917477138e-04, -2.647101639427671630e-04, -2.644698099906832821e-04, -2.642290431552098682e-04, -2.639878638566784969e-04, -2.637462725160950091e-04, -2.635042695550732120e-04, -2.632618553958897939e-04, -2.630190304614444803e-04, -2.627757951752720676e-04, -2.625321499615684991e-04, -2.622880952451528088e-04, -2.620436314514728139e-04, -2.617987590066127583e-04, -2.615534783372970530e-04, -2.613077898708966729e-04, -2.610616940353934325e-04, -2.608151912594040009e-04, -2.605682819721930749e-04, -2.603209666036395515e-04, -2.600732455842487802e-04, -2.598251193451798298e-04, -2.595765883182057530e-04, -2.593276529357215550e-04, -2.590783136307491267e-04, -2.588285708369430995e-04, -2.585784249885981090e-04, -2.583278765206012536e-04, -2.580769258684930800e-04, -2.578255734684181981e-04, -2.575738197571466942e-04, -2.573216651720727213e-04, -2.570691101512291902e-04, -2.568161551332433169e-04, -2.565628005573654630e-04, -2.563090468634812236e-04, -2.560548944920687108e-04, -2.558003438842587803e-04, -2.555453954817638539e-04, -2.552900497269354908e-04, -2.550343070627266568e-04, -2.547781679327032717e-04, -2.545216327810506597e-04, -2.542647020525834163e-04, -2.540073761927006302e-04, -2.537496556474166747e-04, -2.534915408633738390e-04, -2.532330322877965204e-04, -2.529741303685564932e-04, -2.527148355540943586e-04, -2.524551482934861684e-04, -2.521950690363930644e-04, -2.519345982330964601e-04, -2.516737363344789596e-04, -2.514124837920327050e-04, -2.511508410578346031e-04, -2.508888085845904520e-04, -2.506263868255863693e-04, -2.503635762347073313e-04, -2.501003772664661760e-04, -2.498367903759563316e-04, -2.495728160188667786e-04, -2.493084546514833509e-04, -2.490437067306944274e-04, -2.487785727140016663e-04, -2.485130530594751187e-04, -2.482471482257841825e-04, -2.479808586722099628e-04, -2.477141848586084084e-04, -2.474471272454247862e-04, -2.471796862937211117e-04, -2.469118624651355453e-04, -2.466436562218842356e-04, -2.463750680267966101e-04, -2.461060983432594306e-04, -2.458367476352887838e-04, -2.455670163674470319e-04, -2.452969050049132313e-04, -2.450264140134308737e-04, -2.447555438593307636e-04, -2.444842950095313426e-04, -2.442126679315540319e-04, -2.439406630934698342e-04, -2.436682809639390706e-04, -2.433955220122199726e-04, -2.431223867081198117e-04, -2.428488755220672697e-04, -2.425749889250275459e-04, -2.423007273885714752e-04, -2.420260913848302348e-04, -2.417510813865098463e-04, -2.414756978668968130e-04, -2.411999412998700734e-04, -2.409238121598519680e-04, -2.406473109218415518e-04, -2.403704380614314260e-04, -2.400931940547497878e-04, -2.398155793785349693e-04, -2.395375945100743965e-04, -2.392592399272177629e-04, -2.389805161083839681e-04, -2.387014235325619037e-04, -2.384219626793272046e-04, -2.381421340287893668e-04, -2.378619380616261438e-04, -2.375813752591004330e-04, -2.373004461030168803e-04, -2.370191510757361109e-04, -2.367374906602113475e-04, -2.364554653399370194e-04, -2.361730755989609328e-04, -2.358903219218884721e-04, -2.356072047938897822e-04, -2.353237247007089581e-04, -2.350398821286181006e-04, -2.347556775644468892e-04, -2.344711114956000368e-04, -2.341861844100110487e-04, -2.339008967961854826e-04, -2.336152491431712412e-04, -2.333292419405762989e-04, -2.330428756785388861e-04, -2.327561508477729178e-04, -2.324690679395078740e-04, -2.321816274455648296e-04, -2.318938298582697455e-04, -2.316056756705231012e-04, -2.313171653757539791e-04, -2.310282994679345111e-04, -2.307390784415861405e-04, -2.304495027917935533e-04, -2.301595730141501434e-04, -2.298692896047973958e-04, -2.295786530604350514e-04, -2.292876638782713147e-04, -2.289963225560957664e-04, -2.287046295921929800e-04, -2.284125854854139701e-04, -2.281201907351218473e-04, -2.278274458412330177e-04, -2.275343513041916226e-04, -2.272409076249815735e-04, -2.269471153051005581e-04, -2.266529748466017012e-04, -2.263584867520521203e-04, -2.260636515245397567e-04, -2.257684696677165267e-04, -2.254729416857404790e-04, -2.251770680832930341e-04, -2.248808493655794175e-04, -2.245842860383386616e-04, -2.242873786078535534e-04, -2.239901275808984843e-04, -2.236925334647767735e-04, -2.233945967673349529e-04, -2.230963179969187209e-04, -2.227976976623890159e-04, -2.224987362731599633e-04, -2.221994343391429038e-04, -2.218997923707619513e-04, -2.215998108789577609e-04, -2.212994903751929767e-04, -2.209988313714654864e-04, -2.206978343802480853e-04, -2.203964999145609823e-04, -2.200948284879158284e-04, -2.197928206143365596e-04, -2.194904768083643038e-04, -2.191877975850700926e-04, -2.188847834600020337e-04, -2.185814349492213335e-04, -2.182777525693178824e-04, -2.179737368373540389e-04, -2.176693882709444274e-04, -2.173647073881629398e-04, -2.170596947076181157e-04, -2.167543507484046505e-04, -2.164486760301103621e-04, -2.161426710728586373e-04, -2.158363363972525407e-04, -2.155296725243882594e-04, -2.152226799758610659e-04, -2.149153592737830445e-04, -2.146077109407308603e-04, -2.142997354998220870e-04, -2.139914334746249468e-04, -2.136828053892330390e-04, -2.133738517682071459e-04, -2.130645731366151039e-04, -2.127549700200343245e-04, -2.124450429445009722e-04, -2.121347924365459871e-04, -2.118242190232115106e-04, -2.115133232320055661e-04, -2.112021055909161799e-04, -2.108905666284529613e-04, -2.105787068735894224e-04, -2.102665268557774524e-04, -2.099540271049510852e-04, -2.096412081515347666e-04, -2.093280705264547381e-04, -2.090146147610845017e-04, -2.087008413872834176e-04, -2.083867509374100126e-04, -2.080723439442745465e-04, -2.077576209411840060e-04, -2.074425824619171416e-04, -2.071272290407311350e-04, -2.068115612123399151e-04, -2.064955795119583122e-04, -2.061792844752372499e-04, -2.058626766383501289e-04, -2.055457565378915623e-04, -2.052285247109616182e-04, -2.049109816951073543e-04, -2.045931280283446916e-04, -2.042749642491640248e-04, -2.039564908965425284e-04, -2.036377085098881035e-04, -2.033186176290794657e-04, -2.029992187944810534e-04, -2.026795125468844262e-04, -2.023594994275914780e-04, -2.020391799783170751e-04, -2.017185547412692331e-04, -2.013976242590962893e-04, -2.010763890748950883e-04, -2.007548497322577113e-04, -2.004330067752091611e-04, -2.001108607482163075e-04, -1.997884121962290049e-04, -1.994656616646290541e-04, -1.991426096992440255e-04, -1.988192568463891365e-04, -1.984956036528072682e-04, -1.981716506656868001e-04, -1.978473984326623697e-04, -1.975228475018253615e-04, -1.971979984217356980e-04, -1.968728517413623712e-04, -1.965474080101281659e-04, -1.962216677779210711e-04, -1.958956315950507218e-04, -1.955693000122623313e-04, -1.952426735807792190e-04, -1.949157528522425559e-04, -1.945885383787264347e-04, -1.942610307127442127e-04, -1.939332304072534992e-04, -1.936051380156704937e-04, -1.932767540918119272e-04, -1.929480791899370207e-04, -1.926191138647587880e-04, -1.922898586713973337e-04, -1.919603141654165806e-04, -1.916304809028353826e-04, -1.913003594400662676e-04, -1.909699503339591577e-04, -1.906392541418122926e-04, -1.903082714213169080e-04, -1.899770027306408010e-04, -1.896454486283270108e-04, -1.893136096733797420e-04, -1.889814864252049235e-04, -1.886490794436240586e-04, -1.883163892889166177e-04, -1.879834165217625483e-04, -1.876501617032532798e-04, -1.873166253948992316e-04, -1.869828081586521204e-04, -1.866487105568431608e-04, -1.863143331522710481e-04, -1.859796765080996101e-04, -1.856447411879430249e-04, -1.853095277557991426e-04, -1.849740367761009308e-04, -1.846382688136854664e-04, -1.843022244338077861e-04, -1.839659042021099056e-04, -1.836293086846729696e-04, -1.832924384479630415e-04, -1.829552940588459844e-04, -1.826178760846297990e-04, -1.822801850930067273e-04, -1.819422216520634168e-04, -1.816039863302905974e-04, -1.812654796965892066e-04, -1.809267023202825603e-04, -1.805876547710565582e-04, -1.802483376190055467e-04, -1.799087514346422111e-04, -1.795688967888558346e-04, -1.792287742529230586e-04, -1.788883843985540698e-04, -1.785477277978319666e-04, -1.782068050232241423e-04, -1.778656166475910680e-04, -1.775241632441920388e-04, -1.771824453867006772e-04, -1.768404636491335391e-04, -1.764982186059335157e-04, -1.761557108319098774e-04, -1.758129409022497660e-04, -1.754699093925647343e-04, -1.751266168788277538e-04, -1.747830639373885292e-04, -1.744392511449795429e-04, -1.740951790787378202e-04, -1.737508483161429127e-04, -1.734062594351083242e-04, -1.730614130138729547e-04, -1.727163096310919022e-04, -1.723709498657747445e-04, -1.720253342972983060e-04, -1.716794635054540369e-04, -1.713333380703841542e-04, -1.709869585725964946e-04, -1.706403255929707765e-04, -1.702934397127812049e-04, -1.699463015136350251e-04, -1.695989115775594475e-04, -1.692512704868997337e-04, -1.689033788244049563e-04, -1.685552371731602632e-04, -1.682068461166313304e-04, -1.678582062386720054e-04, -1.675093181234604204e-04, -1.671601823555458031e-04, -1.668107995198606737e-04, -1.664611702016761485e-04, -1.661112949866145173e-04, -1.657611744606955111e-04, -1.654108092102733914e-04, -1.650601998220508552e-04, -1.647093468830862994e-04, -1.643582509808017348e-04, -1.640069127029942250e-04, -1.636553326377761740e-04, -1.633035113736182873e-04, -1.629514494993666482e-04, -1.625991476041854995e-04, -1.622466062776104227e-04, -1.618938261095172497e-04, -1.615408076901380535e-04, -1.611875516100251537e-04, -1.608340584601076573e-04, -1.604803288316204160e-04, -1.601263633161944763e-04, -1.597721625057488216e-04, -1.594177269925823128e-04, -1.590630573693097743e-04, -1.587081542288784196e-04, -1.583530181646102442e-04, -1.579976497701435321e-04, -1.576420496394426683e-04, -1.572862183668075444e-04, -1.569301565468954589e-04, -1.565738647746576378e-04, -1.562173436454324484e-04, -1.558605937548340791e-04, -1.555036156988452657e-04, -1.551464100737555733e-04, -1.547889774761738643e-04, -1.544313185030756787e-04, -1.540734337517386419e-04, -1.537153238197500548e-04, -1.533569893050524841e-04, -1.529984308058876280e-04, -1.526396489208127689e-04, -1.522806442487433551e-04, -1.519214173888933973e-04, -1.515619689407872049e-04, -1.512022995042668668e-04, -1.508424096794999496e-04, -1.504823000669938086e-04, -1.501219712675300752e-04, -1.497614238822148828e-04, -1.494006585124888137e-04, -1.490396757600819866e-04, -1.486784762270272565e-04, -1.483170605157072691e-04, -1.479554292287899237e-04, -1.475935829692437147e-04, -1.472315223403433963e-04, -1.468692479456784941e-04, -1.465067603891666130e-04, -1.461440602749907434e-04, -1.457811482076434970e-04, -1.454180247919449143e-04, -1.450546906329750277e-04, -1.446911463361626302e-04, -1.443273925072108992e-04, -1.439634297521140394e-04, -1.435992586771618900e-04, -1.432348798889655393e-04, -1.428702939943898875e-04, -1.425055016006513602e-04, -1.421405033152022511e-04, -1.417752997458270265e-04, -1.414098915005777878e-04, -1.410442791877871739e-04, -1.406784634161179631e-04, -1.403124447944970184e-04, -1.399462239321294362e-04, -1.395798014385060269e-04, -1.392131779234281712e-04, -1.388463539969386469e-04, -1.384793302694214306e-04, -1.381121073514849555e-04, -1.377446858540591482e-04, -1.373770663883212145e-04, -1.370092495657519640e-04, -1.366412359981012509e-04, -1.362730262974050507e-04, -1.359046210759494097e-04, -1.355360209463278814e-04, -1.351672265213848493e-04, -1.347982384142271280e-04, -1.344290572382754359e-04, -1.340596836071960901e-04, -1.336901181349177848e-04, -1.333203614356372559e-04, -1.329504141238264101e-04, -1.325802768142500781e-04, -1.322099501218958943e-04, -1.318394346620260945e-04, -1.314687310501894959e-04, -1.310978399021575571e-04, -1.307267618340199225e-04, -1.303554974620702294e-04, -1.299840474029021950e-04, -1.296124122733344815e-04, -1.292405926904773472e-04, -1.288685892716556953e-04, -1.284964026345071671e-04, -1.281240333968672166e-04, -1.277514821768644391e-04, -1.273787495928567384e-04, -1.270058362634433891e-04, -1.266327428075161832e-04, -1.262594698441915869e-04, -1.258860179928252682e-04, -1.255123878730209877e-04, -1.251385801046529876e-04, -1.247645953077999360e-04, -1.243904341028412590e-04, -1.240160971103433261e-04, -1.236415849511546163e-04, -1.232668982463403949e-04, -1.228920376171976480e-04, -1.225170036853040620e-04, -1.221417970724503958e-04, -1.217664184006553486e-04, -1.213908682921742465e-04, -1.210151473695226918e-04, -1.206392562554076082e-04, -1.202631955728190855e-04, -1.198869659449538897e-04, -1.195105679952321461e-04, -1.191340023473025838e-04, -1.187572696250518875e-04, -1.183803704526184390e-04, -1.180033054543264256e-04, -1.176260752547339918e-04, -1.172486804786490822e-04, -1.168711217510604727e-04, -1.164933996972392386e-04, -1.161155149426179470e-04, -1.157374681128934120e-04, -1.153592598339550293e-04, -1.149808907319118539e-04, -1.146023614330976011e-04, -1.142236725640885628e-04, -1.138448247516336088e-04, -1.134658186227047920e-04, -1.130866548045122831e-04, -1.127073339244363776e-04, -1.123278566101281508e-04, -1.119482234893882840e-04, -1.115684351902708097e-04, -1.111884923410026227e-04, -1.108083955700515412e-04, -1.104281455060500465e-04, -1.100477427778934984e-04, -1.096671880146228784e-04, -1.092864818455241031e-04, -1.089056249000591091e-04, -1.085246178078831734e-04, -1.081434611988927675e-04, -1.077621557031579298e-04, -1.073807019509382310e-04, -1.069991005726895637e-04, -1.066173521990887945e-04, -1.062354574609652964e-04, -1.058534169894011565e-04, -1.054712314156115748e-04, -1.050889013710456545e-04, -1.047064274873177038e-04, -1.043238103962222527e-04, -1.039410507297852134e-04, -1.035581491201943016e-04, -1.031751061998064772e-04, -1.027919226011972479e-04, -1.024085989571013095e-04, -1.020251359004285786e-04, -1.016415340643123577e-04, -1.012577940820425085e-04, -1.008739165870796813e-04, -1.004899022130639215e-04, -1.001057515938214590e-04, -9.972146536338118812e-05, -9.933704415590487223e-05, -9.895248860573766750e-05, -9.856779934742472473e-05, -9.818297701564024187e-05, -9.779802224529000247e-05, -9.741293567139147646e-05, -9.702771792917347187e-05, -9.664236965400807404e-05, -9.625689148143463361e-05, -9.587128404716784382e-05, -9.548554798711310907e-05, -9.509968393729737281e-05, -9.471369253391966850e-05, -9.432757441336698959e-05, -9.394133021214423650e-05, -9.355496056696848805e-05, -9.316846611468970556e-05, -9.278184749230755158e-05, -9.239510533697884375e-05, -9.200824028604135307e-05, -9.162125297694640716e-05, -9.123414404735764752e-05, -9.084691413503216033e-05, -9.045956387792197133e-05, -9.007209391410358622e-05, -8.968450488179484999e-05, -8.929679741940476604e-05, -8.890897216546528629e-05, -8.852102975864493148e-05, -8.813297083775858964e-05, -8.774479604179079935e-05, -8.735650600982695706e-05, -8.696810138115474429e-05, -8.657958279514295439e-05, -8.619095089134354314e-05, -8.580220630941357972e-05, -8.541334968917376651e-05, -8.502438167057333807e-05, -8.463530289370601244e-05, -8.424611399877506631e-05, -8.385681562615189544e-05, -8.346740841629734229e-05, -8.307789300986550835e-05, -8.268827004757969433e-05, -8.229854017033665970e-05, -8.190870401913612252e-05, -8.151876223510486931e-05, -8.112871545950521188e-05, -8.073856433375130456e-05, -8.034830949933734288e-05, -7.995795159789120452e-05, -7.956749127118792049e-05, -7.917692916108076055e-05, -7.878626590960421884e-05, -7.839550215885132288e-05, -7.800463855107598221e-05, -7.761367572861512919e-05, -7.722261433395652224e-05, -7.683145500965900276e-05, -7.644019839845659216e-05, -7.604884514313517733e-05, -7.565739588663605202e-05, -7.526585127198486089e-05, -7.487421194230891967e-05, -7.448247854088698003e-05, -7.409065171108022009e-05, -7.369873209634665080e-05, -7.330672034025058912e-05, -7.291461708648644272e-05, -7.252242297880896868e-05, -7.213013866113592032e-05, -7.173776477742531551e-05, -7.134530197177901866e-05, -7.095275088837206426e-05, -7.056011217146931295e-05, -7.016738646547510800e-05, -6.977457441486488920e-05, -6.938167666419950441e-05, -6.898869385813442519e-05, -6.859562664142614368e-05, -6.820247565894934358e-05, -6.780924155561710292e-05, -6.741592497647597854e-05, -6.702252656663474696e-05, -6.662904697128962559e-05, -6.623548683573271599e-05, -6.584184680536716910e-05, -6.544812752563717293e-05, -6.505432964207885584e-05, -6.466045380033726782e-05, -6.426650064609444374e-05, -6.387247082517405591e-05, -6.347836498341797771e-05, -6.308418376678930984e-05, -6.268992782130273394e-05, -6.229559779304812107e-05, -6.190119432819950348e-05, -6.150671807303082265e-05, -6.111216967384504957e-05, -6.071754977702580633e-05, -6.032285902905339196e-05, -5.992809807643444483e-05, -5.953326756580494864e-05, -5.913836814380741262e-05, -5.874340045719482619e-05, -5.834836515274987239e-05, -5.795326287735512314e-05, -5.755809427791264566e-05, -5.716286000144782842e-05, -5.676756069498626993e-05, -5.637219700565708290e-05, -5.597676958062257699e-05, -5.558127906709393223e-05, -5.518572611238340342e-05, -5.479011136383278309e-05, -5.439443546882975262e-05, -5.399869907481597990e-05, -5.360290282931218469e-05, -5.320704737984685237e-05, -5.281113337406039183e-05, -5.241516145958165170e-05, -5.201913228413139380e-05, -5.162304649544313971e-05, -5.122690474132278145e-05, -5.083070766961335178e-05, -5.043445592821019620e-05, -5.003815016502619718e-05, -4.964179102805103935e-05, -4.924537916527185272e-05, -4.884891522477720794e-05, -4.845239985463325300e-05, -4.805583370298809482e-05, -4.765921741800005214e-05, -4.726255164786345952e-05, -4.686583704081631103e-05, -4.646907424515642833e-05, -4.607226390917073687e-05, -4.567540668118591843e-05, -4.527850320958628014e-05, -4.488155414274105871e-05, -4.448456012910998109e-05, -4.408752181711810008e-05, -4.369043985526115847e-05, -4.329331489203355055e-05, -4.289614757595378058e-05, -4.249893855557262137e-05, -4.210168847948922151e-05, -4.170439799627082011e-05, -4.130706775454857682e-05, -4.090969840294660396e-05, -4.051229059009750451e-05, -4.011484496469507109e-05, -3.971736217542243052e-05, -3.931984287096844909e-05, -3.892228770003568791e-05, -3.852469731136586137e-05, -3.812707235366783251e-05, -3.772941347572302461e-05, -3.733172132626019584e-05, -3.693399655406091176e-05, -3.653623980788727653e-05, -3.613845173649896840e-05, -3.574063298870509847e-05, -3.534278421329234161e-05, -3.494490605904140959e-05, -3.454699917473528424e-05, -3.414906420916670519e-05, -3.375110181115486662e-05, -3.335311262947366338e-05, -3.295509731290356328e-05, -3.255705651024826320e-05, -3.215899087027190693e-05, -3.176090104175086944e-05, -3.136278767348172573e-05, -3.096465141420934791e-05, -3.056649291267900790e-05, -3.016831281765272176e-05, -2.977011177783785498e-05, -2.937189044199189030e-05, -2.897364945879773090e-05, -2.857538947696877654e-05, -2.817711114517678684e-05, -2.777881511207789874e-05, -2.738050202631996859e-05, -2.698217253655960427e-05, -2.658382729138989299e-05, -2.618546693939264284e-05, -2.578709212915529641e-05, -2.538870350919857717e-05, -2.499030172808191122e-05, -2.459188743427871696e-05, -2.419346127628091872e-05, -2.379502390251885482e-05, -2.339657596143068332e-05, -2.299811810138173445e-05, -2.259965097076986108e-05, -2.220117521790011854e-05, -2.180269149109029478e-05, -2.140420043859884476e-05, -2.100570270864140764e-05, -2.060719894944333295e-05, -2.020868980916724913e-05, -1.981017593593011262e-05, -1.941165797781079722e-05, -1.901313658285799869e-05, -1.861461239910703301e-05, -1.821608607450760149e-05, -1.781755825697600522e-05, -1.741902959441196040e-05, -1.702050073464438819e-05, -1.662197232544778962e-05, -1.622344501459471071e-05, -1.582491944978361604e-05, -1.542639627864671523e-05, -1.502787614880212328e-05, -1.462935970777298926e-05, -1.423084760309295358e-05, -1.383234048218079219e-05, -1.343383899244590950e-05, -1.303534378121625751e-05, -1.263685549576400435e-05, -1.223837478331321511e-05, -1.183990229105665197e-05, -1.144143866608370689e-05, -1.104298455543261442e-05, -1.064454060610708066e-05, -1.024610746500435831e-05, -9.847685779020639592e-06, -9.449276194925656383e-06, -9.050879359468323891e-06, -8.652495919304578517e-06, -8.254126521022949777e-06, -7.855771811152422466e-06, -7.457432436179164710e-06, -7.059109042474387867e-06, -6.660802276346693158e-06, -6.262512784058611682e-06, -5.864241211754700638e-06, -5.465988205566920149e-06, -5.067754411489331681e-06, -4.669540475483623949e-06, -4.271347043398097600e-06, -3.873174761037715689e-06, -3.475024274083091328e-06, -3.076896228196019100e-06, -2.678791268894145517e-06, -2.280710041656422935e-06, -1.882653191851082104e-06, -1.484621364752321469e-06, -1.086615205592529294e-06, -6.886353594902317570e-07, -2.906824714667969156e-07, 1.072428135457262279e-07, 5.051398506967759404e-07, 9.030079952005729188e-07, 1.300846602408159304e-06, 1.698655027755193987e-06, 2.096432626745245775e-06, 2.494178755012948481e-06, 2.891892768262935358e-06, 3.289574022306359343e-06, 3.687221873044202491e-06, 4.084835676503803841e-06, 4.482414788777770559e-06, 4.879958566104926752e-06, 5.277466364764804934e-06, 5.674937541202962005e-06, 6.072371451925526188e-06, 6.469767453571230413e-06, 6.867124902885770079e-06, 7.264443156714051016e-06, 7.661721571983501239e-06, 8.058959505775959478e-06, 8.456156315275590281e-06, 8.853311357752170356e-06, 9.250423990633016070e-06, 9.647493571397697251e-06, 1.004451945770310838e-05, 1.044150100727818579e-05, 1.083843757799591392e-05, 1.123532852784761619e-05, 1.163217321493522328e-05, 1.202897099745461537e-05, 1.242572123377632744e-05, 1.282242328234918744e-05, 1.321907650177216157e-05, 1.361568025077776097e-05, 1.401223388817984073e-05, 1.440873677294550115e-05, 1.480518826417853838e-05, 1.520158772111138917e-05, 1.559793450309749063e-05, 1.599422796959454283e-05, 1.639046748023640331e-05, 1.678665239478099110e-05, 1.718278207309349690e-05, 1.757885587520076933e-05, 1.797487316127436752e-05, 1.837083329157874299e-05, 1.876673562654283090e-05, 1.916257952674356340e-05, 1.955836435289798206e-05, 1.995408946585545531e-05, 2.034975422658097835e-05, 2.074535799622692026e-05, 2.114090013608103307e-05, 2.153638000754987703e-05, 2.193179697222160949e-05, 2.232715039181403129e-05, 2.272243962816680756e-05, 2.311766404331316743e-05, 2.351282299942783179e-05, 2.390791585881041822e-05, 2.430294198395735073e-05, 2.469790073745650578e-05, 2.509279148211203105e-05, 2.548761358083983174e-05, 2.588236639673840289e-05, 2.627704929306404853e-05, 2.667166163322292976e-05, 2.706620278075401567e-05, 2.746067209940146741e-05, 2.785506895306191202e-05, 2.824939270576856573e-05, 2.864364272176219491e-05, 2.903781836538677860e-05, 2.943191900121342605e-05, 2.982594399393652705e-05, 3.021989270845294614e-05, 3.061376450980237459e-05, 3.100755876320281763e-05, 3.140127483403478206e-05, 3.179491208787647220e-05, 3.218846989044441622e-05, 3.258194760765504883e-05, 3.297534460560864480e-05, 3.336866025053750759e-05, 3.376189390887732346e-05, 3.415504494725068833e-05, 3.454811273245884077e-05, 3.494109663147470276e-05, 3.533399601142549179e-05, 3.572681023966473902e-05, 3.611953868372016623e-05, 3.651218071127711786e-05, 3.690473569023269661e-05, 3.729720298867860589e-05, 3.768958197484986034e-05, 3.808187201719613981e-05, 3.847407248437367827e-05, 3.886618274519398772e-05, 3.925820216870338450e-05, 3.965013012407910236e-05, 4.004196598075294571e-05, 4.043370910830752470e-05, 4.082535887654642346e-05, 4.121691465546966997e-05, 4.160837581526588243e-05, 4.199974172629572836e-05, 4.239101175916276367e-05, 4.278218528466223121e-05, 4.317326167376431663e-05, 4.356424029768540080e-05, 4.395512052778392895e-05, 4.434590173568367768e-05, 4.473658329317059990e-05, 4.512716457226234932e-05, 4.551764494518476000e-05, 4.590802378436285429e-05, 4.629830046240510831e-05, 4.668847435217362017e-05, 4.707854482673343708e-05, 4.746851125933582475e-05, 4.785837302348872697e-05, 4.824812949286263656e-05, 4.863778004136920676e-05, 4.902732404314526606e-05, 4.941676087254535753e-05, 4.980608990413326170e-05, 5.019531051266628240e-05, 5.058442207316582836e-05, 5.097342396086537145e-05, 5.136231555119551861e-05, 5.175109621983569442e-05, 5.213976534269888091e-05, 5.252832229587973853e-05, 5.291676645572556038e-05, 5.330509719881946709e-05, 5.369331390197324430e-05, 5.408141594221931958e-05, 5.446940269679461456e-05, 5.485727354321023885e-05, 5.524502785920195550e-05, 5.563266502271191225e-05, 5.602018441195212828e-05, 5.640758540534335881e-05, 5.679486738155188342e-05, 5.718202971947228757e-05, 5.756907179826368848e-05, 5.795599299729010403e-05, 5.834279269619869828e-05, 5.872947027481762252e-05, 5.911602511327802189e-05, 5.950245659191100226e-05, 5.988876409131788661e-05, 6.027494699234543416e-05, 6.066100467607781052e-05, 6.104693652382070415e-05, 6.143274191717109473e-05, 6.181842023796668196e-05, 6.220397086826960891e-05, 6.258939319043628469e-05, 6.297468658701473759e-05, 6.335985044086677755e-05, 6.374488413506547132e-05, 6.412978705297327274e-05, 6.451455857818248654e-05, 6.489919809455251063e-05, 6.528370498619053735e-05, 6.566807863749013745e-05, 6.605231843306992145e-05, 6.643642375783495959e-05, 6.682039399696184702e-05, 6.720422853584660783e-05, 6.758792676017527667e-05, 6.797148805590744593e-05, 6.835491180926859503e-05, 6.873819740674285339e-05, 6.912134423505620880e-05, 6.950435168124638431e-05, 6.988721913261293777e-05, 7.026994597669984687e-05, 7.065253160134939397e-05, 7.103497539468456138e-05, 7.141727674505995765e-05, 7.179943504113027138e-05, 7.218144967183415727e-05, 7.256332002638759540e-05, 7.294504549427555638e-05, 7.332662546523572482e-05, 7.370805932933690067e-05, 7.408934647688585268e-05, 7.447048629849651767e-05, 7.485147818506556524e-05, 7.523232152776414435e-05, 7.561301571802232497e-05, 7.599356014759917825e-05, 7.637395420853051791e-05, 7.675419729311475146e-05, 7.713428879398107649e-05, 7.751422810398835169e-05, 7.789401461634518585e-05, 7.827364772450909347e-05, 7.865312682225513829e-05, 7.903245130366059188e-05, 7.941162056305388123e-05, 7.979063399508390993e-05, 8.016949099470509622e-05, 8.054819095716792682e-05, 8.092673327799557886e-05, 8.130511735305333591e-05, 8.168334257844622574e-05, 8.206140835064004442e-05, 8.243931406635956322e-05, 8.281705912266703847e-05, 8.319464291691083390e-05, 8.357206484671899673e-05, 8.394932431006781992e-05, 8.432642070523111506e-05, 8.470335343076545369e-05, 8.508012188556101632e-05, 8.545672546882676602e-05, 8.583316358003854223e-05, 8.620943561901015732e-05, 8.658554098587546656e-05, 8.696147908108239151e-05, 8.733724930538398887e-05, 8.771285105982350205e-05, 8.808828374580295051e-05, 8.846354676503268726e-05, 8.883863951951543399e-05, 8.921356141159917654e-05, 8.958831184395988549e-05, 8.996289021955218492e-05, 9.033729594167805017e-05, 9.071152841397896096e-05, 9.108558704038699028e-05, 9.145947122520060369e-05, 9.183318037298527866e-05, 9.220671388869137086e-05, 9.258007117755589902e-05, 9.295325164516846442e-05, 9.332625469744887565e-05, 9.369907974063861056e-05, 9.407172618128571868e-05, 9.444419342631209604e-05, 9.481648088296441141e-05, 9.518858795879853445e-05, 9.556051406174739327e-05, 9.593225860002106513e-05, 9.630382098222549662e-05, 9.667520061726278416e-05, 9.704639691439885529e-05, 9.741740928324746319e-05, 9.778823713372187187e-05, 9.815887987610175146e-05, 9.852933692101779612e-05, 9.889960767944398550e-05, 9.926969156267457259e-05, 9.963958798238977278e-05, 1.000092963505668051e-04, 1.003788160795550274e-04, 1.007481465820605002e-04, 1.011172872711380987e-04, 1.014862375601846285e-04, 1.018549968629229826e-04, 1.022235645934690772e-04, 1.025919401662842961e-04, 1.029601229961578856e-04, 1.033281124982594033e-04, 1.036959080881220074e-04, 1.040635091815933966e-04, 1.044309151949049960e-04, 1.047981255446538509e-04, 1.051651396477966497e-04, 1.055319569216415929e-04, 1.058985767838345558e-04, 1.062649986524231646e-04, 1.066312219458107318e-04, 1.069972460827397760e-04, 1.073630704823500947e-04, 1.077286945641234696e-04, 1.080941177479154342e-04, 1.084593394539418566e-04, 1.088243591028114249e-04, 1.091891761154691737e-04, 1.095537899132717550e-04, 1.099181999178895755e-04, 1.102824055514233615e-04, 1.106464062363048600e-04, 1.110102013953649262e-04, 1.113737904518173285e-04, 1.117371728292112739e-04, 1.121003479514966498e-04, 1.124633152430092248e-04, 1.128260741284637503e-04, 1.131886240329293763e-04, 1.135509643818974411e-04, 1.139130946011820500e-04, 1.142750141170376029e-04, 1.146367223560606331e-04, 1.149982187452645090e-04, 1.153595027120218360e-04, 1.157205736841009530e-04, 1.160814310896479218e-04, 1.164420743572205973e-04, 1.168025029157329680e-04, 1.171627161945132010e-04, 1.175227136232873251e-04, 1.178824946321330842e-04, 1.182420586515431734e-04, 1.186014051124125677e-04, 1.189605334460294819e-04, 1.193194430840693946e-04, 1.196781334585793810e-04, 1.200366040020423654e-04, 1.203948541473316529e-04, 1.207528833276948693e-04, 1.211106909768030213e-04, 1.214682765287345182e-04, 1.218256394179295134e-04, 1.221827790792539669e-04, 1.225396949479850769e-04, 1.228963864598030665e-04, 1.232528530507850310e-04, 1.236090941573901928e-04, 1.239651092165312417e-04, 1.243208976654890357e-04, 1.246764589419758909e-04, 1.250317924841219208e-04, 1.253868977304265994e-04, 1.257417741198243284e-04, 1.260964210916695294e-04, 1.264508380857291088e-04, 1.268050245421592558e-04, 1.271589799015709280e-04, 1.275127036049339001e-04, 1.278661950936900893e-04, 1.282194538096593389e-04, 1.285724791951020033e-04, 1.289252706927057211e-04, 1.292778277455383608e-04, 1.296301497971120693e-04, 1.299822362913676877e-04, 1.303340866726691123e-04, 1.306857003857787110e-04, 1.310370768759234051e-04, 1.313882155886992871e-04, 1.317391159701831300e-04, 1.320897774668393907e-04, 1.324401995255912250e-04, 1.327903815937748696e-04, 1.331403231191314023e-04, 1.334900235498724446e-04, 1.338394823346311289e-04, 1.341886989224509307e-04, 1.345376727628295522e-04, 1.348864033057074025e-04, 1.352348900014200010e-04, 1.355831323007606986e-04, 1.359311296549681278e-04, 1.362788815157171774e-04, 1.366263873351130287e-04, 1.369736465656762477e-04, 1.373206586604053985e-04, 1.376674230727327529e-04, 1.380139392565077566e-04, 1.383602066660533265e-04, 1.387062247561120741e-04, 1.390519929818787774e-04, 1.393975107989843347e-04, 1.397427776635289413e-04, 1.400877930320283671e-04, 1.404325563614842673e-04, 1.407770671092920521e-04, 1.411213247333502558e-04, 1.414653286919693282e-04, 1.418090784439330547e-04, 1.421525734484844615e-04, 1.424958131652803608e-04, 1.428387970544542883e-04, 1.431815245766008637e-04, 1.435239951927703701e-04, 1.438662083644456869e-04, 1.442081635536046592e-04, 1.445498602226279671e-04, 1.448912978344100131e-04, 1.452324758522649214e-04, 1.455733937399896654e-04, 1.459140509618505970e-04, 1.462544469825357955e-04, 1.465945812672209603e-04, 1.469344532815585955e-04, 1.472740624916364584e-04, 1.476134083640281373e-04, 1.479524903657828598e-04, 1.482913079643771650e-04, 1.486298606277779220e-04, 1.489681478244285343e-04, 1.493061690232413768e-04, 1.496439236935909385e-04, 1.499814113053004325e-04, 1.503186313287015359e-04, 1.506555832345924306e-04, 1.509922664942205106e-04, 1.513286805793303039e-04, 1.516648249621495943e-04, 1.520006991153434244e-04, 1.523363025120765728e-04, 1.526716346259982936e-04, 1.530066949312365436e-04, 1.533414829023910697e-04, 1.536759980145177974e-04, 1.540102397431923642e-04, 1.543442075644639328e-04, 1.546779009548409072e-04, 1.550113193913535176e-04, 1.553444623514700662e-04, 1.556773293131665599e-04, 1.560099197549119382e-04, 1.563422331556616764e-04, 1.566742689948359929e-04, 1.570060267523810255e-04, 1.573375059086789781e-04, 1.576687059446538035e-04, 1.579996263416836807e-04, 1.583302665816590745e-04, 1.586606261469710258e-04, 1.589907045204657233e-04, 1.593205011855058971e-04, 1.596500156259561814e-04, 1.599792473261757149e-04, 1.603081957709989508e-04, 1.606368604457930106e-04, 1.609652408363714091e-04, 1.612933364290985170e-04, 1.616211467107998975e-04, 1.619486711688325356e-04, 1.622759092910308989e-04, 1.626028605657379728e-04, 1.629295244817944460e-04, 1.632559005285635380e-04, 1.635819881958846232e-04, 1.639077869741252449e-04, 1.642332963541629279e-04, 1.645585158273476113e-04, 1.648834448855574571e-04, 1.652080830211864911e-04, 1.655324297271369585e-04, 1.658564844968146354e-04, 1.661802468241119419e-04, 1.665037162034711240e-04, 1.668268921298378231e-04, 1.671497740986496912e-04, 1.674723616058926344e-04, 1.677946541480181966e-04, 1.681166512220421403e-04, 1.684383523254607195e-04, 1.687597569563091180e-04, 1.690808646131389248e-04, 1.694016747950135811e-04, 1.697221870014937431e-04, 1.700424007327026865e-04, 1.703623154892493555e-04, 1.706819307722844429e-04, 1.710012460834890605e-04, 1.713202609250309369e-04, 1.716389747996224227e-04, 1.719573872105086996e-04, 1.722754976614593780e-04, 1.725933056567487372e-04, 1.729108107012140285e-04, 1.732280123001694438e-04, 1.735449099595077322e-04, 1.738615031856157952e-04, 1.741777914854300080e-04, 1.744937743664267597e-04, 1.748094513365764833e-04, 1.751248219044033950e-04, 1.754398855789716981e-04, 1.757546418698807038e-04, 1.760690902872416293e-04, 1.763832303417361177e-04, 1.766970615445322124e-04, 1.770105834073850792e-04, 1.773237954425514902e-04, 1.776366971628536289e-04, 1.779492880816403299e-04, 1.782615677127788933e-04, 1.785735355707105960e-04, 1.788851911704120667e-04, 1.791965340273811371e-04, 1.795075636576931935e-04, 1.798182795779170698e-04, 1.801286813052163931e-04, 1.804387683572635523e-04, 1.807485402522984350e-04, 1.810579965091072582e-04, 1.813671366470163341e-04, 1.816759601858783553e-04, 1.819844666461305888e-04, 1.822926555487521861e-04, 1.826005264152520398e-04, 1.829080787677242134e-04, 1.832153121287660572e-04, 1.835222260215764369e-04, 1.838288199698708946e-04, 1.841350934979483274e-04, 1.844410461306344735e-04, 1.847466773933436842e-04, 1.850519868119991000e-04, 1.853569739131289817e-04, 1.856616382237836875e-04, 1.859659792715938136e-04, 1.862699965847550425e-04, 1.865736896919879459e-04, 1.868770581225942008e-04, 1.871801014064457475e-04, 1.874828190739733782e-04, 1.877852106561513686e-04, 1.880872756845514712e-04, 1.883890136912618710e-04, 1.886904242089823514e-04, 1.889915067709453645e-04, 1.892922609109692379e-04, 1.895926861634463032e-04, 1.898927820633025090e-04, 1.901925481460516043e-04, 1.904919839477924547e-04, 1.907910890051638315e-04, 1.910898628553975103e-04, 1.913883050363008697e-04, 1.916864150862218987e-04, 1.919841925441004792e-04, 1.922816369494562431e-04, 1.925787478423833683e-04, 1.928755247635436938e-04, 1.931719672541550644e-04, 1.934680748560435354e-04, 1.937638471116072685e-04, 1.940592835638009733e-04, 1.943543837561908497e-04, 1.946491472328759555e-04, 1.949435735385812317e-04, 1.952376622185785448e-04, 1.955314128187418188e-04, 1.958248248855256224e-04, 1.961178979659612383e-04, 1.964106316076430568e-04, 1.967030253587811594e-04, 1.969950787681657843e-04, 1.972867913851508736e-04, 1.975781627597105871e-04, 1.978691924423642756e-04, 1.981598799842409369e-04, 1.984502249370630070e-04, 1.987402268531400984e-04, 1.990298852853540114e-04, 1.993191997872079298e-04, 1.996081699127506348e-04, 1.998967952166670907e-04, 2.001850752542031462e-04, 2.004730095812163302e-04, 2.007605977541641960e-04, 2.010478393300657780e-04, 2.013347338665544739e-04, 2.016212809218667417e-04, 2.019074800548332637e-04, 2.021933308248637941e-04, 2.024788327919971418e-04, 2.027639855168258715e-04, 2.030487885605857510e-04, 2.033332414850806701e-04, 2.036173438527403743e-04, 2.039010952265749824e-04, 2.041844951702043143e-04, 2.044675432478431731e-04, 2.047502390243291276e-04, 2.050325820650765690e-04, 2.053145719361373998e-04, 2.055962082041223741e-04, 2.058774904362936349e-04, 2.061584182004869224e-04, 2.064389910651651876e-04, 2.067192085993967187e-04, 2.069990703728535148e-04, 2.072785759557974083e-04, 2.075577249191296666e-04, 2.078365168343570299e-04, 2.081149512735783755e-04, 2.083930278095336695e-04, 2.086707460155329784e-04, 2.089481054655423112e-04, 2.092251057341088091e-04, 2.095017463964208378e-04, 2.097780270282543190e-04, 2.100539472060332022e-04, 2.103295065067531367e-04, 2.106047045080702135e-04, 2.108795407882264265e-04, 2.111540149261014973e-04, 2.114281265011989431e-04, 2.117018750936098376e-04, 2.119752602840644729e-04, 2.122482816539204061e-04, 2.125209387851559003e-04, 2.127932312603519264e-04, 2.130651586627433378e-04, 2.133367205761450087e-04, 2.136079165850381914e-04, 2.138787462744968983e-04, 2.141492092302402694e-04, 2.144193050386179354e-04, 2.146890332865752417e-04, 2.149583935617034201e-04, 2.152273854522262803e-04, 2.154960085469961439e-04, 2.157642624354885860e-04, 2.160321467077879886e-04, 2.162996609546484993e-04, 2.165668047674221221e-04, 2.168335777381104606e-04, 2.170999794593479943e-04, 2.173660095243945165e-04, 2.176316675271253761e-04, 2.178969530620787219e-04, 2.181618657244224616e-04, 2.184264051099397334e-04, 2.186905708150812459e-04, 2.189543624368899531e-04, 2.192177795730883868e-04, 2.194808218220057445e-04, 2.197434887826277348e-04, 2.200057800545789056e-04, 2.202676952381156777e-04, 2.205292339341185387e-04, 2.207903957441349231e-04, 2.210511802703512131e-04, 2.213115871155734663e-04, 2.215716158832826293e-04, 2.218312661775598087e-04, 2.220905376031702969e-04, 2.223494297654944813e-04, 2.226079422705811871e-04, 2.228660747251006498e-04, 2.231238267363975603e-04, 2.233811979124222715e-04, 2.236381878618137135e-04, 2.238947961938282964e-04, 2.241510225183877239e-04, 2.244068664460691542e-04, 2.246623275880701802e-04, 2.249174055562543116e-04, 2.251720999631420578e-04, 2.254264104219053978e-04, 2.256803365463494579e-04, 2.259338779509618153e-04, 2.261870342508412934e-04, 2.264398050617814722e-04, 2.266921900001996732e-04, 2.269441886831918473e-04, 2.271958007284924049e-04, 2.274470257544951952e-04, 2.276978633802454832e-04, 2.279483132254637480e-04, 2.281983749105033444e-04, 2.284480480564047677e-04, 2.286973322848274298e-04, 2.289462272181288875e-04, 2.291947324792985438e-04, 2.294428476920033733e-04, 2.296905724805696275e-04, 2.299379064699817222e-04, 2.301848492858665990e-04, 2.304314005545442213e-04, 2.306775599029887601e-04, 2.309233269588244198e-04, 2.311687013503656892e-04, 2.314136827065539431e-04, 2.316582706570333356e-04, 2.319024648320879445e-04, 2.321462648626818049e-04, 2.323896703804499643e-04, 2.326326810176865571e-04, 2.328752964073376212e-04, 2.331175161830460112e-04, 2.333593399791178424e-04, 2.336007674305125162e-04, 2.338417981728873078e-04, 2.340824318425371116e-04, 2.343226680764439081e-04, 2.345625065122685239e-04, 2.348019467883439909e-04, 2.350409885436580907e-04, 2.352796314179007072e-04, 2.355178750513988828e-04, 2.357557190851891616e-04, 2.359931631609595579e-04, 2.362302069210866899e-04, 2.364668500086307922e-04, 2.367030920673024040e-04, 2.369389327415019424e-04, 2.371743716763179946e-04, 2.374094085175139552e-04, 2.376440429115269151e-04, 2.378782745054583642e-04, 2.381121029471160687e-04, 2.383455278849829005e-04, 2.385785489682056969e-04, 2.388111658466354845e-04, 2.390433781707882583e-04, 2.392751855918689692e-04, 2.395065877617586771e-04, 2.397375843330388904e-04, 2.399681749589536192e-04, 2.401983592934582730e-04, 2.404281369911556927e-04, 2.406575077073725593e-04, 2.408864710980938818e-04, 2.411150268200072590e-04, 2.413431745304879181e-04, 2.415709138875930492e-04, 2.417982445500529965e-04, 2.420251661773110486e-04, 2.422516784294971733e-04, 2.424777809674138421e-04, 2.427034734525790457e-04, 2.429287555471653075e-04, 2.431536269140740060e-04, 2.433780872168713253e-04, 2.436021361198353907e-04, 2.438257732879182678e-04, 2.440489983867890863e-04, 2.442718110827752222e-04, 2.444942110429348578e-04, 2.447161979349953454e-04, 2.449377714273920478e-04, 2.451589311892639214e-04, 2.453796768904181161e-04, 2.456000082013762168e-04, 2.458199247933602572e-04, 2.460394263382896843e-04, 2.462585125087776716e-04, 2.464771829781201690e-04, 2.466954374203380240e-04, 2.469132755101461902e-04, 2.471306969229442410e-04, 2.473477013348472143e-04, 2.475642884226762893e-04, 2.477804578639296209e-04, 2.479962093368213169e-04, 2.482115425202733065e-04, 2.484264570939102444e-04, 2.486409527380538734e-04, 2.488550291337172232e-04, 2.490686859626455940e-04, 2.492819229072647854e-04, 2.494947396507204529e-04, 2.497071358768628751e-04, 2.499191112702455982e-04, 2.501306655161123177e-04, 2.503417983004387819e-04, 2.505525093099037902e-04, 2.507627982318786763e-04, 2.509726647544672606e-04, 2.511821085664495807e-04, 2.513911293573475934e-04, 2.515997268173686342e-04, 2.518079006374465082e-04, 2.520156505092244138e-04, 2.522229761250510943e-04, 2.524298771779743319e-04, 2.526363533617757514e-04, 2.528424043709469131e-04, 2.530480299006766820e-04, 2.532532296468907465e-04, 2.534580033061963793e-04, 2.536623505759470548e-04, 2.538662711541884564e-04, 2.540697647397003808e-04, 2.542728310319575984e-04, 2.544754697311760942e-04, 2.546776805382542502e-04, 2.548794631548407705e-04, 2.550808172832796580e-04, 2.552817426266436622e-04, 2.554822388887303215e-04, 2.556823057740330155e-04, 2.558819429877758761e-04, 2.560811502359089625e-04, 2.562799272251013228e-04, 2.564782736627393132e-04, 2.566761892569134791e-04, 2.568736737164614898e-04, 2.570707267509346364e-04, 2.572673480705960970e-04, 2.574635373864472832e-04, 2.576592944101987830e-04, 2.578546188542910696e-04, 2.580495104318819783e-04, 2.582439688568669272e-04, 2.584379938438486680e-04, 2.586315851081773471e-04, 2.588247423658954281e-04, 2.590174653338053463e-04, 2.592097537294102568e-04, 2.594016072709555594e-04, 2.595930256774125274e-04, 2.597840086684758678e-04, 2.599745559645533677e-04, 2.601646672868060091e-04, 2.603543423571159313e-04, 2.605435808980822022e-04, 2.607323826330559466e-04, 2.609207472860865695e-04, 2.611086745819837730e-04, 2.612961642462676283e-04, 2.614832160052007765e-04, 2.616698295857778039e-04, 2.618560047157208505e-04, 2.620417411234700691e-04, 2.622270385382266685e-04, 2.624118966898997328e-04, 2.625963153091476383e-04, 2.627802941273646637e-04, 2.629638328766586552e-04, 2.631469312898852874e-04, 2.633295891006379803e-04, 2.635118060432471948e-04, 2.636935818527722463e-04, 2.638749162649976191e-04, 2.640558090164646789e-04, 2.642362598444486337e-04, 2.644162684869461196e-04, 2.645958346827069680e-04, 2.647749581712217914e-04, 2.649536386926978058e-04, 2.651318759880948801e-04, 2.653096697991149115e-04, 2.654870198681990060e-04, 2.656639259385256899e-04, 2.658403877539976278e-04, 2.660164050592820641e-04, 2.661919775997813320e-04, 2.663671051216265654e-04, 2.665417873717072436e-04, 2.667160240976457664e-04, 2.668898150477963158e-04, 2.670631599712742382e-04, 2.672360586179324082e-04, 2.674085107383596571e-04, 2.675805160839041913e-04, 2.677520744066323928e-04, 2.679231854593814026e-04, 2.680938489957153739e-04, 2.682640647699517092e-04, 2.684338325371575366e-04, 2.686031520531401693e-04, 2.687720230744398411e-04, 2.689404453583632082e-04, 2.691084186629612318e-04, 2.692759427470202329e-04, 2.694430173700915459e-04, 2.696096422924485836e-04, 2.697758172751394215e-04, 2.699415420799420738e-04, 2.701068164693985383e-04, 2.702716402067869314e-04, 2.704360130561405165e-04, 2.705999347822382714e-04, 2.707634051506196873e-04, 2.709264239275599407e-04, 2.710889908800975410e-04, 2.712511057760242468e-04, 2.714127683838652252e-04, 2.715739784729082171e-04, 2.717347358131975738e-04, 2.718950401755294323e-04, 2.720548913314485714e-04, 2.722142890532414723e-04, 2.723732331139691164e-04, 2.725317232874394460e-04, 2.726897593482041659e-04, 2.728473410715805364e-04, 2.730044682336442712e-04, 2.731611406112073115e-04, 2.733173579818475333e-04, 2.734731201239066871e-04, 2.736284268164676839e-04, 2.737832778393860917e-04, 2.739376729732500193e-04, 2.740916119994291230e-04, 2.742450947000330268e-04, 2.743981208579376690e-04, 2.745506902567787966e-04, 2.747028026809446473e-04, 2.748544579155722629e-04, 2.750056557465749740e-04, 2.751563959606199571e-04, 2.753066783451247647e-04, 2.754565026882828047e-04, 2.756058687790228449e-04, 2.757547764070588324e-04, 2.759032253628467967e-04, 2.760512154376142850e-04, 2.761987464233492504e-04, 2.763458181127972858e-04, 2.764924302994563668e-04, 2.766385827776005404e-04, 2.767842753422657771e-04, 2.769295077892383692e-04, 2.770742799150838253e-04, 2.772185915171110370e-04, 2.773624423934012819e-04, 2.775058323428038318e-04, 2.776487611649305323e-04, 2.777912286601527127e-04, 2.779332346295994511e-04, 2.780747788751782826e-04, 2.782158611995581778e-04, 2.783564814061625491e-04, 2.784966392991940253e-04, 2.786363346836185674e-04, 2.787755673651543019e-04, 2.789143371502958609e-04, 2.790526438463066840e-04, 2.791904872612158747e-04, 2.793278672038173325e-04, 2.794647834836617301e-04, 2.796012359110838352e-04, 2.797372242971813143e-04, 2.798727484538126187e-04, 2.800078081936152531e-04, 2.801424033299851216e-04, 2.802765336770907849e-04, 2.804101990498670096e-04, 2.805433992640256097e-04, 2.806761341360367447e-04, 2.808084034831547773e-04, 2.809402071233819530e-04, 2.810715448755136112e-04, 2.812024165590984491e-04, 2.813328219944654100e-04, 2.814627610027150640e-04, 2.815922334057151082e-04, 2.817212390260940245e-04, 2.818497776872713289e-04, 2.819778492134298155e-04, 2.821054534295195141e-04, 2.822325901612745495e-04, 2.823592592351823502e-04, 2.824854604785230049e-04, 2.826111937193357608e-04, 2.827364587864404362e-04, 2.828612555094333551e-04, 2.829855837186714095e-04, 2.831094432452910324e-04, 2.832328339212108006e-04, 2.833557555791109427e-04, 2.834782080524561078e-04, 2.836001911754852277e-04, 2.837217047832017052e-04, 2.838427487113897316e-04, 2.839633227966128766e-04, 2.840834268762100229e-04, 2.842030607882924391e-04, 2.843222243717400928e-04, 2.844409174662208958e-04, 2.845591399121786148e-04, 2.846768915508234390e-04, 2.847941722241523633e-04, 2.849109817749398096e-04, 2.850273200467256466e-04, 2.851431868838329164e-04, 2.852585821313678889e-04, 2.853735056352124720e-04, 2.854879572420248083e-04, 2.856019367992325528e-04, 2.857154441550540150e-04, 2.858284791584853653e-04, 2.859410416592924492e-04, 2.860531315080307906e-04, 2.861647485560292752e-04, 2.862758926553880356e-04, 2.863865636590013286e-04, 2.864967614205372599e-04, 2.866064857944404954e-04, 2.867157366359446746e-04, 2.868245138010459567e-04, 2.869328171465413465e-04, 2.870406465299919947e-04, 2.871480018097518749e-04, 2.872548828449536886e-04, 2.873612894955023607e-04, 2.874672216220888082e-04, 2.875726790861885310e-04, 2.876776617500605821e-04, 2.877821694767350447e-04, 2.878862021300389448e-04, 2.879897595745631290e-04, 2.880928416756965249e-04, 2.881954482996009880e-04, 2.882975793132283777e-04, 2.883992345843066794e-04, 2.885004139813489494e-04, 2.886011173736496827e-04, 2.887013446312934324e-04, 2.888010956251380046e-04, 2.889003702268322393e-04, 2.889991683088100473e-04, 2.890974897442789176e-04, 2.891953344072368311e-04, 2.892927021724664600e-04, 2.893895929155380410e-04, 2.894860065128018940e-04, 2.895819428413852242e-04, 2.896774017792121255e-04, 2.897723832049897566e-04, 2.898668869982035708e-04, 2.899609130391293506e-04, 2.900544612088330450e-04, 2.901475313891512539e-04, 2.902401234627162733e-04, 2.903322373129473672e-04, 2.904238728240432867e-04, 2.905150298809990213e-04, 2.906057083695776631e-04, 2.906959081763490593e-04, 2.907856291886532201e-04, 2.908748712946274237e-04, 2.909636343831914170e-04, 2.910519183440523489e-04, 2.911397230676976140e-04, 2.912270484454102491e-04, 2.913138943692592832e-04, 2.914002607320964307e-04, 2.914861474275678012e-04, 2.915715543500955217e-04, 2.916564813949005055e-04, 2.917409284579851043e-04, 2.918248954361406982e-04, 2.919083822269524656e-04, 2.919913887287819824e-04, 2.920739148407852192e-04, 2.921559604629078255e-04, 2.922375254958844786e-04, 2.923186098412315658e-04, 2.923992134012637183e-04, 2.924793360790730484e-04, 2.925589777785468225e-04, 2.926381384043624193e-04, 2.927168178619845109e-04, 2.927950160576684238e-04, 2.928727328984495138e-04, 2.929499682921636572e-04, 2.930267221474331025e-04, 2.931029943736643555e-04, 2.931787848810593470e-04, 2.932540935806115297e-04, 2.933289203840944398e-04, 2.934032652040752492e-04, 2.934771279539159046e-04, 2.935505085477664589e-04, 2.936234069005648007e-04, 2.936958229280342688e-04, 2.937677565466976387e-04, 2.938392076738648162e-04, 2.939101762276328383e-04, 2.939806621268937332e-04, 2.940506652913269848e-04, 2.941201856414019187e-04, 2.941892230983790568e-04, 2.942577775843138038e-04, 2.943258490220458223e-04, 2.943934373352134521e-04, 2.944605424482348455e-04, 2.945271642863297600e-04, 2.945933027755023186e-04, 2.946589578425511482e-04, 2.947241294150684571e-04, 2.947888174214303861e-04, 2.948530217908075794e-04, 2.949167424531636667e-04, 2.949799793392552088e-04, 2.950427323806241084e-04, 2.951050015096125722e-04, 2.951667866593424565e-04, 2.952280877637386862e-04, 2.952889047575106064e-04, 2.953492375761651014e-04, 2.954090861559947228e-04, 2.954684504340878261e-04, 2.955273303483221749e-04, 2.955857258373704695e-04, 2.956436368406934628e-04, 2.957010632985485792e-04, 2.957580051519837351e-04, 2.958144623428351702e-04, 2.958704348137329771e-04, 2.959259225081033238e-04, 2.959809253701615149e-04, 2.960354433449162198e-04, 2.960894763781630763e-04, 2.961430244164966704e-04, 2.961960874073036524e-04, 2.962486652987576406e-04, 2.963007580398300633e-04, 2.963523655802849550e-04, 2.964034878706715836e-04, 2.964541248623369729e-04, 2.965042765074224875e-04, 2.965539427588593873e-04, 2.966031235703739236e-04, 2.966518188964765513e-04, 2.967000286924816608e-04, 2.967477529144873041e-04, 2.967949915193902107e-04, 2.968417444648794451e-04, 2.968880117094299014e-04, 2.969337932123150971e-04, 2.969790889335998546e-04, 2.970238988341438249e-04, 2.970682228755939526e-04, 2.971120610203961850e-04, 2.971554132317818652e-04, 2.971982794737829657e-04, 2.972406597112163670e-04, 2.972825539096977357e-04, 2.973239620356348564e-04, 2.973648840562243250e-04, 2.974053199394548013e-04, 2.974452696541134600e-04, 2.974847331697780218e-04, 2.975237104568143141e-04, 2.975622014863890641e-04, 2.976002062304515224e-04, 2.976377246617522730e-04, 2.976747567538294646e-04, 2.977113024810166164e-04, 2.977473618184396371e-04, 2.977829347420119996e-04, 2.978180212284463422e-04, 2.978526212552468251e-04, 2.978867348007057151e-04, 2.979203618439113543e-04, 2.979535023647457751e-04, 2.979861563438799296e-04, 2.980183237627769964e-04, 2.980500046036963380e-04, 2.980811988496877545e-04, 2.981119064845932183e-04, 2.981421274930447598e-04, 2.981718618604697261e-04, 2.982011095730891545e-04, 2.982298706179120260e-04, 2.982581449827416084e-04, 2.982859326561746968e-04, 2.983132336275970062e-04, 2.983400478871873996e-04, 2.983663754259195688e-04, 2.983922162355546613e-04, 2.984175703086503883e-04, 2.984424376385520794e-04, 2.984668182193992423e-04, 2.984907120461217683e-04, 2.985141191144448109e-04, 2.985370394208815758e-04, 2.985594729627372786e-04, 2.985814197381089817e-04, 2.986028797458877091e-04, 2.986238529857528079e-04, 2.986443394581766650e-04, 2.986643391644237312e-04, 2.986838521065461301e-04, 2.987028782873916272e-04, 2.987214177105965824e-04, 2.987394703805902325e-04, 2.987570363025924690e-04, 2.987741154826119403e-04, 2.987907079274505513e-04, 2.988068136447009156e-04, 2.988224326427458676e-04, 2.988375649307588419e-04, 2.988522105187054996e-04, 2.988663694173392831e-04, 2.988800416382058614e-04, 2.988932271936417203e-04, 2.989059260967734583e-04, 2.989181383615183824e-04, 2.989298640025807676e-04, 2.989411030354589046e-04, 2.989518554764407626e-04, 2.989621213426022547e-04, 2.989719006518113580e-04, 2.989811934227240477e-04, 2.989899996747858151e-04, 2.989983194282339442e-04, 2.990061527040928499e-04, 2.990134995241784687e-04, 2.990203599110955487e-04, 2.990267338882362938e-04, 2.990326214797832914e-04, 2.990380227107108132e-04, 2.990429376067769551e-04, 2.990473661945336112e-04, 2.990513085013175301e-04, 2.990547645552565480e-04, 2.990577343852665539e-04, 2.990602180210510551e-04, 2.990622154931035087e-04, 2.990637268327047196e-04, 2.990647520719223523e-04, 2.990652912436151051e-04, 2.990653443814265304e-04, 2.990649115197905098e-04, 2.990639926939275676e-04, 2.990625879398446543e-04, 2.990606972943389411e-04, 2.990583207949922364e-04, 2.990554584801745634e-04, 2.990521103890441063e-04, 2.990482765615451498e-04, 2.990439570384091097e-04, 2.990391518611536107e-04, 2.990338610720837879e-04, 2.990280847142906063e-04, 2.990218228316508060e-04, 2.990150754688292341e-04, 2.990078426712765129e-04, 2.990001244852280105e-04, 2.989919209577065508e-04, 2.989832321365176434e-04, 2.989740580702575064e-04, 2.989643988083024958e-04, 2.989542544008171824e-04, 2.989436248987526173e-04, 2.989325103538424287e-04, 2.989209108186048820e-04, 2.989088263463454817e-04, 2.988962569911522552e-04, 2.988832028078990057e-04, 2.988696638522429262e-04, 2.988556401806259557e-04, 2.988411318502749410e-04, 2.988261389191988185e-04, 2.988106614461918660e-04, 2.987946994908303425e-04, 2.987782531134761739e-04, 2.987613223752714239e-04, 2.987439073381463711e-04, 2.987260080648090465e-04, 2.987076246187530398e-04, 2.986887570642544096e-04, 2.986694054663694602e-04, 2.986495698909409765e-04, 2.986292504045917726e-04, 2.986084470747248001e-04, 2.985871599695290031e-04, 2.985653891579708613e-04, 2.985431347098007867e-04, 2.985203966955516058e-04, 2.984971751865331388e-04, 2.984734702548416858e-04, 2.984492819733491312e-04, 2.984246104157121590e-04, 2.983994556563654768e-04, 2.983738177705259355e-04, 2.983476968341885723e-04, 2.983210929241299713e-04, 2.982940061179050655e-04, 2.982664364938502808e-04, 2.982383841310787113e-04, 2.982098491094873293e-04, 2.981808315097470648e-04, 2.981513314133104491e-04, 2.981213489024070072e-04, 2.980908840600488409e-04, 2.980599369700199499e-04, 2.980285077168878327e-04, 2.979965963859956260e-04, 2.979642030634643271e-04, 2.979313278361936618e-04, 2.978979707918580182e-04, 2.978641320189119221e-04, 2.978298116065852125e-04, 2.977950096448839083e-04, 2.977597262245908595e-04, 2.977239614372686745e-04, 2.976877153752515879e-04, 2.976509881316509367e-04, 2.976137798003544548e-04, 2.975760904760243759e-04, 2.975379202541004694e-04, 2.974992692307957577e-04, 2.974601375030983051e-04, 2.974205251687706756e-04, 2.973804323263506380e-04, 2.973398590751488886e-04, 2.972988055152520873e-04, 2.972572717475196590e-04, 2.972152578735842818e-04, 2.971727639958523745e-04, 2.971297902175020910e-04, 2.970863366424882535e-04, 2.970424033755348172e-04, 2.969979905221399119e-04, 2.969530981885716678e-04, 2.969077264818742868e-04, 2.968618755098580142e-04, 2.968155453811116063e-04, 2.967687362049896459e-04, 2.967214480916203481e-04, 2.966736811519020368e-04, 2.966254354975018980e-04, 2.965767112408626473e-04, 2.965275084951916342e-04, 2.964778273744691356e-04, 2.964276679934450495e-04, 2.963770304676368889e-04, 2.963259149133302701e-04, 2.962743214475860678e-04, 2.962222501882278390e-04, 2.961697012538491410e-04, 2.961166747638120677e-04, 2.960631708382452441e-04, 2.960091895980510902e-04, 2.959547311648908592e-04, 2.958997956611961839e-04, 2.958443832101689147e-04, 2.957884939357725536e-04, 2.957321279627422839e-04, 2.956752854165749407e-04, 2.956179664235368174e-04, 2.955601711106556426e-04, 2.955018996057283322e-04, 2.954431520373133999e-04, 2.953839285347408775e-04, 2.953242292280978953e-04, 2.952640542482394700e-04, 2.952034037267849262e-04, 2.951422777961137771e-04, 2.950806765893760784e-04, 2.950186002404798515e-04, 2.949560488840966672e-04, 2.948930226556607239e-04, 2.948295216913713419e-04, 2.947655461281842347e-04, 2.947010961038261465e-04, 2.946361717567767455e-04, 2.945707732262826646e-04, 2.945049006523473641e-04, 2.944385541757354140e-04, 2.943717339379768312e-04, 2.943044400813587310e-04, 2.942366727489274954e-04, 2.941684320844876891e-04, 2.940997182326068296e-04, 2.940305313386076900e-04, 2.939608715485776767e-04, 2.938907390093553856e-04, 2.938201338685440464e-04, 2.937490562744997586e-04, 2.936775063763387558e-04, 2.936054843239337738e-04, 2.935329902679182246e-04, 2.934600243596743787e-04, 2.933865867513481100e-04, 2.933126775958354521e-04, 2.932382970467969636e-04, 2.931634452586387007e-04, 2.930881223865297808e-04, 2.930123285863899690e-04, 2.929360640148916291e-04, 2.928593288294644402e-04, 2.927821231882977277e-04, 2.927044472503244712e-04, 2.926263011752341524e-04, 2.925476851234736224e-04, 2.924685992562337119e-04, 2.923890437354688550e-04, 2.923090187238761646e-04, 2.922285243849109902e-04, 2.921475608827743412e-04, 2.920661283824215067e-04, 2.919842270495578811e-04, 2.919018570506435716e-04, 2.918190185528807138e-04, 2.917357117242290292e-04, 2.916519367333924900e-04, 2.915676937498225718e-04, 2.914829829437267099e-04, 2.913978044860598970e-04, 2.913121585485192624e-04, 2.912260453035520947e-04, 2.911394649243561673e-04, 2.910524175848709563e-04, 2.909649034597926024e-04, 2.908769227245510888e-04, 2.907884755553347437e-04, 2.906995621290682855e-04, 2.906101826234229056e-04, 2.905203372168230452e-04, 2.904300260884315412e-04, 2.903392494181552099e-04, 2.902480073866443053e-04, 2.901563001752959880e-04, 2.900641279662545969e-04, 2.899714909423995596e-04, 2.898783892873535786e-04, 2.897848231854884319e-04, 2.896907928219091973e-04, 2.895962983824680766e-04, 2.895013400537644493e-04, 2.894059180231271463e-04, 2.893100324786272975e-04, 2.892136836090851079e-04, 2.891168716040485535e-04, 2.890195966538190221e-04, 2.889218589494229618e-04, 2.888236586826373057e-04, 2.887249960459688713e-04, 2.886258712326653119e-04, 2.885262844367124596e-04, 2.884262358528386083e-04, 2.883257256765018824e-04, 2.882247541038941946e-04, 2.881233213319545267e-04, 2.880214275583463249e-04, 2.879190729814804840e-04, 2.878162578004910075e-04, 2.877129822152564207e-04, 2.876092464263804716e-04, 2.875050506352104540e-04, 2.874003950438153068e-04, 2.872952798550126646e-04, 2.871897052723396929e-04, 2.870836715000739045e-04, 2.869771787432203120e-04, 2.868702272075118070e-04, 2.867628170994252065e-04, 2.866549486261610867e-04, 2.865466219956469811e-04, 2.864378374165424770e-04, 2.863285950982430634e-04, 2.862188952508627304e-04, 2.861087380852573333e-04, 2.859981238129980841e-04, 2.858870526463968133e-04, 2.857755247984835809e-04, 2.856635404830137242e-04, 2.855510999144840662e-04, 2.854382033081067868e-04, 2.853248508798187462e-04, 2.852110428462903218e-04, 2.850967794249057298e-04, 2.849820608337909431e-04, 2.848668872917807862e-04, 2.847512590184443052e-04, 2.846351762340672037e-04, 2.845186391596604084e-04, 2.844016480169591471e-04, 2.842842030284267979e-04, 2.841663044172381379e-04, 2.840479524072931131e-04, 2.839291472232177054e-04, 2.838098890903491332e-04, 2.836901782347607342e-04, 2.835700148832277583e-04, 2.834493992632581595e-04, 2.833283316030738930e-04, 2.832068121316109154e-04, 2.830848410785306228e-04, 2.829624186742162734e-04, 2.828395451497592175e-04, 2.827162207369674093e-04, 2.825924456683742963e-04, 2.824682201772171363e-04, 2.823435444974638307e-04, 2.822184188637888555e-04, 2.820928435115815014e-04, 2.819668186769429459e-04, 2.818403445966981258e-04, 2.817134215083707464e-04, 2.815860496502173792e-04, 2.814582292611883226e-04, 2.813299605809578509e-04, 2.812012438499071382e-04, 2.810720793091251259e-04, 2.809424672004224004e-04, 2.808124077663156346e-04, 2.806819012500269377e-04, 2.805509478954873242e-04, 2.804195479473412141e-04, 2.802877016509493593e-04, 2.801554092523671062e-04, 2.800226709983602786e-04, 2.798894871364098402e-04, 2.797558579146943304e-04, 2.796217835821045009e-04, 2.794872643882352929e-04, 2.793523005833911492e-04, 2.792168924185721370e-04, 2.790810401454943846e-04, 2.789447440165637357e-04, 2.788080042849100642e-04, 2.786708212043456406e-04, 2.785331950294011281e-04, 2.783951260153000491e-04, 2.782566144179687059e-04, 2.781176604940345542e-04, 2.779782645008404608e-04, 2.778384266964084907e-04, 2.776981473394685845e-04, 2.775574266894568240e-04, 2.774162650064943437e-04, 2.772746625514197491e-04, 2.771326195857523080e-04, 2.769901363717202475e-04, 2.768472131722401011e-04, 2.767038502509341089e-04, 2.765600478721073961e-04, 2.764158063007819081e-04, 2.762711258026527171e-04, 2.761260066441260236e-04, 2.759804490922924849e-04, 2.758344534149322568e-04, 2.756880198805367857e-04, 2.755411487582781261e-04, 2.753938403180196740e-04, 2.752460948303176846e-04, 2.750979125664172070e-04, 2.749492937982717078e-04, 2.748002387985025766e-04, 2.746507478404269353e-04, 2.745008211980608367e-04, 2.743504591460997491e-04, 2.741996619599231639e-04, 2.740484299156153037e-04, 2.738967632899383430e-04, 2.737446623603373951e-04, 2.735921274049453911e-04, 2.734391587025822670e-04, 2.732857565327648838e-04, 2.731319211756736884e-04, 2.729776529121909863e-04, 2.728229520238745404e-04, 2.726678187929619632e-04, 2.725122535023804735e-04, 2.723562564357467886e-04, 2.721998278773449524e-04, 2.720429681121420561e-04, 2.718856774257970743e-04, 2.717279561046322968e-04, 2.715698044356729015e-04, 2.714112227066015808e-04, 2.712522112057930189e-04, 2.710927702222929673e-04, 2.709329000458248577e-04, 2.707726009667896401e-04, 2.706118732762798225e-04, 2.704507172660436387e-04, 2.702891332285094423e-04, 2.701271214567898269e-04, 2.699646822446570690e-04, 2.698018158865799908e-04, 2.696385226776773936e-04, 2.694748029137568725e-04, 2.693106568912870063e-04, 2.691460849074207222e-04, 2.689810872599655888e-04, 2.688156642474235519e-04, 2.686498161689439886e-04, 2.684835433243617630e-04, 2.683168460141714760e-04, 2.681497245395324529e-04, 2.679821792022918370e-04, 2.678142103049511416e-04, 2.676458181506763878e-04, 2.674770030433008686e-04, 2.673077652873268300e-04, 2.671381051879320842e-04, 2.669680230509439349e-04, 2.667975191828547352e-04, 2.666265938908324046e-04, 2.664552474826957095e-04, 2.662834802669347537e-04, 2.661112925526986197e-04, 2.659386846498027401e-04, 2.657656568687107382e-04, 2.655922095205635923e-04, 2.654183429171427192e-04, 2.652440573709158897e-04, 2.650693531949823681e-04, 2.648942307031192621e-04, 2.647186902097500264e-04, 2.645427320299561721e-04, 2.643663564794780261e-04, 2.641895638747239461e-04, 2.640123545327410478e-04, 2.638347287712311420e-04, 2.636566869085657516e-04, 2.634782292637497360e-04, 2.632993561564663399e-04, 2.631200679070275369e-04, 2.629403648364137111e-04, 2.627602472662498591e-04, 2.625797155188063490e-04, 2.623987699170124725e-04, 2.622174107844559032e-04, 2.620356384453519593e-04, 2.618534532245843697e-04, 2.616708554476722057e-04, 2.614878454407789884e-04, 2.613044235307349691e-04, 2.611205900450044946e-04, 2.609363453116935426e-04, 2.607516896595545464e-04, 2.605666234179876959e-04, 2.603811469170490690e-04, 2.601952604874198946e-04, 2.600089644604262310e-04, 2.598222591680491027e-04, 2.596351449429013534e-04, 2.594476221182294342e-04, 2.592596910279428403e-04, 2.590713520065796331e-04, 2.588826053893111562e-04, 2.586934515119486497e-04, 2.585038907109461228e-04, 2.583139233234067506e-04, 2.581235496870500231e-04, 2.579327701402374948e-04, 2.577415850219768505e-04, 2.575499946718961012e-04, 2.573579994302698220e-04, 2.571655996380028887e-04, 2.569727956366371462e-04, 2.567795877683355784e-04, 2.565859763759091431e-04, 2.563919618027800168e-04, 2.561975443930316850e-04, 2.560027244913475769e-04, 2.558075024430617509e-04, 2.556118785941268574e-04, 2.554158532911214021e-04, 2.552194268812586373e-04, 2.550225997123895970e-04, 2.548253721329731187e-04, 2.546277444920977450e-04, 2.544297171394904506e-04, 2.542312904254802677e-04, 2.540324647010532011e-04, 2.538332403177874464e-04, 2.536336176279053783e-04, 2.534335969842356029e-04, 2.532331787402416893e-04, 2.530323632500035757e-04, 2.528311508682264054e-04, 2.526295419502225291e-04, 2.524275368519409953e-04, 2.522251359299356745e-04, 2.520223395413753969e-04, 2.518191480440692682e-04, 2.516155617964271505e-04, 2.514115811574737570e-04, 2.512072064868478929e-04, 2.510024381448084730e-04, 2.507972764922415687e-04, 2.505917218906257679e-04, 2.503857747020566240e-04, 2.501794352892542446e-04, 2.499727040155400363e-04, 2.497655812448406612e-04, 2.495580673417149256e-04, 2.493501626713194108e-04, 2.491418675994150323e-04, 2.489331824923722981e-04, 2.487241077171731523e-04, 2.485146436414196482e-04, 2.483047906332963811e-04, 2.480945490616152114e-04, 2.478839192957782932e-04, 2.476729017057948800e-04, 2.474614966622823539e-04, 2.472497045364745747e-04, 2.470375257001859379e-04, 2.468249605258386972e-04, 2.466120093864685478e-04, 2.463986726556916126e-04, 2.461849507077535563e-04, 2.459708439174704427e-04, 2.457563526602774689e-04, 2.455414773121963857e-04, 2.453262182498468810e-04, 2.451105758504488574e-04, 2.448945504918337073e-04, 2.446781425524041436e-04, 2.444613524111643402e-04, 2.442441804477244859e-04, 2.440266270422675806e-04, 2.438086925756010432e-04, 2.435903774290923646e-04, 2.433716819847250520e-04, 2.431526066250526050e-04, 2.429331517332310414e-04, 2.427133176930180297e-04, 2.424931048887396859e-04, 2.422725137053119047e-04, 2.420515445282541290e-04, 2.418301977436595888e-04, 2.416084737382025649e-04, 2.413863728991651420e-04, 2.411638956144033271e-04, 2.409410422723501941e-04, 2.407178132620242585e-04, 2.404942089730301830e-04, 2.402702297955714892e-04, 2.400458761204076776e-04, 2.398211483388852357e-04, 2.395960468429451462e-04, 2.393705720250890599e-04, 2.391447242784097618e-04, 2.389185039965779705e-04, 2.386919115738433148e-04, 2.384649474050192625e-04, 2.382376118855146171e-04, 2.380099054112894174e-04, 2.377818283789139724e-04, 2.375533811854956782e-04, 2.373245642287438522e-04, 2.370953779069227883e-04, 2.368658226188699709e-04, 2.366358987640003572e-04, 2.364056067423135339e-04, 2.361749469543533838e-04, 2.359439198012408295e-04, 2.357125256846777091e-04, 2.354807650069098317e-04, 2.352486381707872328e-04, 2.350161455796882521e-04, 2.347832876375846676e-04, 2.345500647489987879e-04, 2.343164773190093341e-04, 2.340825257532865142e-04, 2.338482104580488980e-04, 2.336135318400661015e-04, 2.333784903066902280e-04, 2.331430862658190328e-04, 2.329073201259055997e-04, 2.326711922959883729e-04, 2.324347031856490093e-04, 2.321978532050224611e-04, 2.319606427648014755e-04, 2.317230722762399827e-04, 2.314851421511643446e-04, 2.312468528019296613e-04, 2.310082046414519720e-04, 2.307691980832157091e-04, 2.305298335412426082e-04, 2.302901114301043395e-04, 2.300500321649474715e-04, 2.298095961614561469e-04, 2.295688038358576670e-04, 2.293276556049302702e-04, 2.290861518860077401e-04, 2.288442930969840133e-04, 2.286020796562784852e-04, 2.283595119828599434e-04, 2.281165904962604186e-04, 2.278733156165352585e-04, 2.276296877642956546e-04, 2.273857073607118127e-04, 2.271413748274725669e-04, 2.268966905868115356e-04, 2.266516550615224634e-04, 2.264062686749135757e-04, 2.261605318508681317e-04, 2.259144450137746019e-04, 2.256680085885848079e-04, 2.254212230007748916e-04, 2.251740886763507906e-04, 2.249266060418811971e-04, 2.246787755244596661e-04, 2.244305975517036928e-04, 2.241820725517681306e-04, 2.239332009533574687e-04, 2.236839831856822481e-04, 2.234344196785217006e-04, 2.231845108621505929e-04, 2.229342571674006732e-04, 2.226836590256117199e-04, 2.224327168686700848e-04, 2.221814311289838377e-04, 2.219298022394956143e-04, 2.216778306336578152e-04, 2.214255167454720976e-04, 2.211728610094475527e-04, 2.209198638606151520e-04, 2.206665257345552598e-04, 2.204128470673545354e-04, 2.201588282956199469e-04, 2.199044698564776596e-04, 2.196497721875810051e-04, 2.193947357271199136e-04, 2.191393609137775461e-04, 2.188836481867610585e-04, 2.186275979858105735e-04, 2.183712107511693917e-04, 2.181144869235910125e-04, 2.178574269443712529e-04, 2.176000312553059914e-04, 2.173423002986937694e-04, 2.170842345173691580e-04, 2.168258343546518817e-04, 2.165671002544119247e-04, 2.163080326609919291e-04, 2.160486320192730059e-04, 2.157888987746289821e-04, 2.155288333729442351e-04, 2.152684362606153740e-04, 2.150077078845634632e-04, 2.147466486921891914e-04, 2.144852591314037166e-04, 2.142235396506417581e-04, 2.139614906988124819e-04, 2.136991127253692695e-04, 2.134364061802295951e-04, 2.131733715138397253e-04, 2.129100091771317848e-04, 2.126463196215310750e-04, 2.123823032989938036e-04, 2.121179606619561279e-04, 2.118532921633464597e-04, 2.115882982565921611e-04, 2.113229793956346411e-04, 2.110573360348814347e-04, 2.107913686292696822e-04, 2.105250776342155246e-04, 2.102584635056201751e-04, 2.099915266998810318e-04, 2.097242676738904853e-04, 2.094566868850513146e-04, 2.091887847912270030e-04, 2.089205618507772191e-04, 2.086520185225679812e-04, 2.083831552659350106e-04, 2.081139725406973664e-04, 2.078444708071891035e-04, 2.075746505262112155e-04, 2.073045121590466513e-04, 2.070340561674613715e-04, 2.067632830137092551e-04, 2.064921931605468168e-04, 2.062207870711817625e-04, 2.059490652093092010e-04, 2.056770280391228113e-04, 2.054046760252709058e-04, 2.051320096328995539e-04, 2.048590293276268866e-04, 2.045857355755524207e-04, 2.043121288432365134e-04, 2.040382095977377936e-04, 2.037639783065602268e-04, 2.034894354377225030e-04, 2.032145814596775625e-04, 2.029394168413766993e-04, 2.026639420522283338e-04, 2.023881575621036782e-04, 2.021120638413744668e-04, 2.018356613608649256e-04, 2.015589505918589550e-04, 2.012819320061111621e-04, 2.010046060758591117e-04, 2.007269732737775730e-04, 2.004490340730462285e-04, 2.001707889472708788e-04, 1.998922383705484143e-04, 1.996133828174196517e-04, 1.993342227628845133e-04, 1.990547586824321675e-04, 1.987749910519946521e-04, 1.984949203479507778e-04, 1.982145470471636411e-04, 1.979338716269355217e-04, 1.976528945650185077e-04, 1.973716163396546923e-04, 1.970900374295202022e-04, 1.968081583137415956e-04, 1.965259794718991423e-04, 1.962435013840314315e-04, 1.959607245306489243e-04, 1.956776493926823998e-04, 1.953942764515187881e-04, 1.951106061890150480e-04, 1.948266390874578890e-04, 1.945423756295743694e-04, 1.942578162985732313e-04, 1.939729615780881426e-04, 1.936878119521943400e-04, 1.934023679054106882e-04, 1.931166299227080020e-04, 1.928305984895174209e-04, 1.925442740916825696e-04, 1.922576572154944413e-04, 1.919707483477034872e-04, 1.916835479754698784e-04, 1.913960565864294256e-04, 1.911082746686383659e-04, 1.908202027105836086e-04, 1.905318412011896472e-04, 1.902431906298341984e-04, 1.899542514863006878e-04, 1.896650242608494271e-04, 1.893755094441298753e-04, 1.890857075272568038e-04, 1.887956190017571164e-04, 1.885052443595820466e-04, 1.882145840931450504e-04, 1.879236386952706859e-04, 1.876324086592031791e-04, 1.873408944786168588e-04, 1.870490966476307665e-04, 1.867570156607581053e-04, 1.864646520129815651e-04, 1.861720061996649327e-04, 1.858790787166255710e-04, 1.855858700600784470e-04, 1.852923807266797977e-04, 1.849986112135001883e-04, 1.847045620180364108e-04, 1.844102336381865203e-04, 1.841156265722905744e-04, 1.838207413190889449e-04, 1.835255783777308563e-04, 1.832301382478144472e-04, 1.829344214293336169e-04, 1.826384284226887321e-04, 1.823421597286960054e-04, 1.820456158485881726e-04, 1.817487972840304308e-04, 1.814517045370656317e-04, 1.811543381101535569e-04, 1.808566985061827630e-04, 1.805587862284305201e-04, 1.802606017805743858e-04, 1.799621456667320225e-04, 1.796634183914066617e-04, 1.793644204594939623e-04, 1.790651523763193607e-04, 1.787656146475778435e-04, 1.784658077794142874e-04, 1.781657322783280757e-04, 1.778653886512532485e-04, 1.775647774055022596e-04, 1.772638990487805048e-04, 1.769627540892257866e-04, 1.766613430353514212e-04, 1.763596663960612272e-04, 1.760577246806545673e-04, 1.757555183988450235e-04, 1.754530480607082203e-04, 1.751503141767572031e-04, 1.748473172578519355e-04, 1.745440578152761680e-04, 1.742405363606843404e-04, 1.739367534061138051e-04, 1.736327094640238049e-04, 1.733284050472416423e-04, 1.730238406689738463e-04, 1.727190168428145212e-04, 1.724139340827617181e-04, 1.721085929031652029e-04, 1.718029938187980144e-04, 1.714971373447954502e-04, 1.711910239966687552e-04, 1.708846542903091870e-04, 1.705780287419951990e-04, 1.702711478684039599e-04, 1.699640121865579839e-04, 1.696566222138637826e-04, 1.693489784681239264e-04, 1.690410814674976072e-04, 1.687329317305112089e-04, 1.684245297760989110e-04, 1.681158761235482344e-04, 1.678069712925111005e-04, 1.674978158030120438e-04, 1.671884101754515458e-04, 1.668787549306208890e-04, 1.665688505896457776e-04, 1.662586976740268062e-04, 1.659482967056514395e-04, 1.656376482067394506e-04, 1.653267526999238830e-04, 1.650156107081543401e-04, 1.647042227547762679e-04, 1.643925893634727868e-04, 1.640807110583152972e-04, 1.637685883637010837e-04, 1.634562218044355785e-04, 1.631436119056359224e-04, 1.628307591928112490e-04, 1.625176641918071201e-04, 1.622043274288194575e-04, 1.618907494304335198e-04, 1.615769307235685270e-04, 1.612628718354909422e-04, 1.609485732938195396e-04, 1.606340356265466556e-04, 1.603192593619808340e-04, 1.600042450288286563e-04, 1.596889931560986544e-04, 1.593735042731814601e-04, 1.590577789097884665e-04, 1.587418175959983129e-04, 1.584256208622279098e-04, 1.581091892392465605e-04, 1.577925232581468503e-04, 1.574756234503919719e-04, 1.571584903477668820e-04, 1.568411244823912848e-04, 1.565235263867589615e-04, 1.562056965936829364e-04, 1.558876356363083520e-04, 1.555693440481184324e-04, 1.552508223629396871e-04, 1.549320711149550027e-04, 1.546130908386484032e-04, 1.542938820688455987e-04, 1.539744453407252344e-04, 1.536547811897644091e-04, 1.533348901518206411e-04, 1.530147727630329075e-04, 1.526944295599040439e-04, 1.523738610792472927e-04, 1.520530678582012656e-04, 1.517320504342403243e-04, 1.514108093451850979e-04, 1.510893451291391650e-04, 1.507676583245668182e-04, 1.504457494702342464e-04, 1.501236191052226804e-04, 1.498012677689703517e-04, 1.494786960012159513e-04, 1.491559043420101493e-04, 1.488328933317227510e-04, 1.485096635110628625e-04, 1.481862154210219433e-04, 1.478625496029570188e-04, 1.475386665984898765e-04, 1.472145669495934772e-04, 1.468902511985332993e-04, 1.465657198878786958e-04, 1.462409735605480247e-04, 1.459160127597483125e-04, 1.455908380289895935e-04, 1.452654499120911431e-04, 1.449398489532015906e-04, 1.446140356967406970e-04, 1.442880106874856033e-04, 1.439617744704675337e-04, 1.436353275910587748e-04, 1.433086705949064045e-04, 1.429818040279754701e-04, 1.426547284365519157e-04, 1.423274443671888867e-04, 1.419999523667462497e-04, 1.416722529824032228e-04, 1.413443467616174473e-04, 1.410162342521349894e-04, 1.406879160020351718e-04, 1.403593925596709159e-04, 1.400306644736827816e-04, 1.397017322930033860e-04, 1.393725965668667272e-04, 1.390432578448203005e-04, 1.387137166766653042e-04, 1.383839736125005776e-04, 1.380540292027359630e-04, 1.377238839980324042e-04, 1.373935385493900375e-04, 1.370629934080425908e-04, 1.367322491255475072e-04, 1.364013062537157710e-04, 1.360701653446724053e-04, 1.357388269507876256e-04, 1.354072916247648229e-04, 1.350755599195367239e-04, 1.347436323883531030e-04, 1.344115095847194712e-04, 1.340791920624134466e-04, 1.337466803755254943e-04, 1.334139750783999180e-04, 1.330810767256498765e-04, 1.327479858721620457e-04, 1.324147030731190073e-04, 1.320812288839387234e-04, 1.317475638603624109e-04, 1.314137085583499162e-04, 1.310796635341680231e-04, 1.307454293443308221e-04, 1.304110065456111757e-04, 1.300763956950873389e-04, 1.297415973500806990e-04, 1.294066120681702228e-04, 1.290714404071996392e-04, 1.287360829252973344e-04, 1.284005401808169375e-04, 1.280648127324190966e-04, 1.277289011390011413e-04, 1.273928059597135892e-04, 1.270565277539649441e-04, 1.267200670814285532e-04, 1.263834245020577587e-04, 1.260466005760236380e-04, 1.257095958637600519e-04, 1.253724109259768448e-04, 1.250350463236000239e-04, 1.246975026178588478e-04, 1.243597803701829087e-04, 1.240218801422882447e-04, 1.236838024961180074e-04, 1.233455479938645792e-04, 1.230071171979736666e-04, 1.226685106711611589e-04, 1.223297289763506789e-04, 1.219907726767178313e-04, 1.216516423357046908e-04, 1.213123385169577581e-04, 1.209728617844191962e-04, 1.206332127022187618e-04, 1.202933918347635239e-04, 1.199533997466697613e-04, 1.196132370028219307e-04, 1.192729041683041443e-04, 1.189324018084891019e-04, 1.185917304889324084e-04, 1.182508907754611796e-04, 1.179098832341134498e-04, 1.175687084311530516e-04, 1.172273669331119137e-04, 1.168858593067302945e-04, 1.165441861189703342e-04, 1.162023479370239424e-04, 1.158603453283321651e-04, 1.155181788605255802e-04, 1.151758491015138799e-04, 1.148333566193777489e-04, 1.144907019824615630e-04, 1.141478857593004095e-04, 1.138049085186757740e-04, 1.134617708295816458e-04, 1.131184732612408622e-04, 1.127750163830724603e-04, 1.124314007647431635e-04, 1.120876269761012580e-04, 1.117436955872628282e-04, 1.113996071685066023e-04, 1.110553622903648628e-04, 1.107109615235603729e-04, 1.103664054390277217e-04, 1.100216946079217542e-04, 1.096768296016308795e-04, 1.093318109917150682e-04, 1.089866393499511042e-04, 1.086413152483462727e-04, 1.082958392590768049e-04, 1.079502119545791268e-04, 1.076044339074404228e-04, 1.072585056904911451e-04, 1.069124278767412221e-04, 1.065662010394038159e-04, 1.062198257518999977e-04, 1.058733025878750791e-04, 1.055266321211281114e-04, 1.051798149256938787e-04, 1.048328515757829412e-04, 1.044857426457937921e-04, 1.041384887103597221e-04, 1.037910903442853123e-04, 1.034435481225619654e-04, 1.030958626203724729e-04, 1.027480344131160195e-04, 1.024000640763436730e-04, 1.020519521858503383e-04, 1.017036993175659713e-04, 1.013553060476473971e-04, 1.010067729524156299e-04, 1.006581006083691674e-04, 1.003092895922316421e-04, 9.996034048088695890e-05, 9.961125385139498834e-05, 9.926203028099772000e-05, 9.891267034712662135e-05, 9.856317462741632574e-05, 9.821354369964299560e-05, 9.786377814176881534e-05, 9.751387853195637057e-05, 9.716384544851469553e-05, 9.681367946994348141e-05, 9.646338117494084193e-05, 9.611295114233923704e-05, 9.576238995115267632e-05, 9.541169818058956682e-05, 9.506087640999108968e-05, 9.470992521892228669e-05, 9.435884518706303022e-05, 9.400763689429990930e-05, 9.365630092066392872e-05, 9.330483784635159672e-05, 9.295324825173282614e-05, 9.260153271736473084e-05, 9.224969182392955521e-05, 9.189772615227874690e-05, 9.154563628344931480e-05, 9.119342279859925118e-05, 9.084108627910077313e-05, 9.048862730642976099e-05, 9.013604646225906755e-05, 8.978334432838723175e-05, 8.943052148679848923e-05, 8.907757851959388488e-05, 8.872451600908226447e-05, 8.837133453767109553e-05, 8.801803468795767584e-05, 8.766461704266821479e-05, 8.731108218466988164e-05, 8.695743069701796825e-05, 8.660366316289307316e-05, 8.624978016561409846e-05, 8.589578228864655745e-05, 8.554167011562427230e-05, 8.518744423028611079e-05, 8.483310521656920063e-05, 8.447865365849801557e-05, 8.412409014027704757e-05, 8.376941524622803152e-05, 8.341462956080393141e-05, 8.305973366863579144e-05, 8.270472815446773811e-05, 8.234961360316543698e-05, 8.199439059976101928e-05, 8.163905972938210738e-05, 8.128362157734481217e-05, 8.092807672904306316e-05, 8.057242577004117225e-05, 8.021666928601137007e-05, 7.986080786275464986e-05, 7.950484208620973916e-05, 7.914877254246617804e-05, 7.879259981770087972e-05, 7.843632449822513072e-05, 7.807994717049766907e-05, 7.772346842106306092e-05, 7.736688883664319372e-05, 7.701020900402728386e-05, 7.665342951016490124e-05, 7.629655094210186579e-05, 7.593957388700324615e-05, 7.558249893216042049e-05, 7.522532666500556420e-05, 7.486805767304719405e-05, 7.451069254391756139e-05, 7.415323186538705846e-05, 7.379567622529941025e-05, 7.343802621165842418e-05, 7.308028241255548412e-05, 7.272244541618481050e-05, 7.236451581085041277e-05, 7.200649418498721781e-05, 7.164838112709975826e-05, 7.129017722585404514e-05, 7.093188306996558328e-05, 7.057349924829563496e-05, 7.021502634978389092e-05, 6.985646496346588537e-05, 6.949781567851805815e-05, 6.913907908419416627e-05, 6.878025576983982578e-05, 6.842134632489949128e-05, 6.806235133892358461e-05, 6.770327140158292824e-05, 6.734410710260538724e-05, 6.698485903182105339e-05, 6.662552777917825071e-05, 6.626611393468685880e-05, 6.590661808847196731e-05, 6.554704083074263732e-05, 6.518738275180613155e-05, 6.482764444203412786e-05, 6.446782649191949081e-05, 6.410792949200190896e-05, 6.374795403296331818e-05, 6.338790070551555121e-05, 6.302777010049437866e-05, 6.266756280879512094e-05, 6.230727942139551139e-05, 6.194692052936281133e-05, 6.158648672386894825e-05, 6.122597859612527395e-05, 6.086539673742961888e-05, 6.050474173918186406e-05, 6.014401419281821125e-05, 5.978321468990646404e-05, 5.942234382203348764e-05, 5.906140218089960225e-05, 5.870039035824612447e-05, 5.833930894591812902e-05, 5.797815853579165818e-05, 5.761693971986823706e-05, 5.725565309016304494e-05, 5.689429923879861745e-05, 5.653287875794039751e-05, 5.617139223981230044e-05, 5.580984027674302969e-05, 5.544822346110160068e-05, 5.508654238531182173e-05, 5.472479764185972080e-05, 5.436298982330074866e-05, 5.400111952227438855e-05, 5.363918733143930049e-05, 5.327719384352048418e-05, 5.291513965132434931e-05, 5.255302534768959446e-05, 5.219085152550200651e-05, 5.182861877774229420e-05, 5.146632769742033131e-05, 5.110397887759024065e-05, 5.074157291135803763e-05, 5.037911039188783057e-05, 5.001659191241786690e-05, 4.965401806619464754e-05, 4.929138944652011002e-05, 4.892870664676717322e-05, 4.856597026032240342e-05, 4.820318088063280440e-05, 4.784033910121346107e-05, 4.747744551558224336e-05, 4.711450071730651504e-05, 4.675150530001884788e-05, 4.638845985735127152e-05, 4.602536498303136771e-05, 4.566222127076788019e-05, 4.529902931434721545e-05, 4.493578970756750292e-05, 4.457250304426162748e-05, 4.420916991830495441e-05, 4.384579092362995257e-05, 4.348236665416093896e-05, 4.311889770386146515e-05, 4.275538466674961809e-05, 4.239182813683200574e-05, 4.202822870820047466e-05, 4.166458697491717106e-05, 4.130090353111129229e-05, 4.093717897090498836e-05, 4.057341388847709275e-05, 4.020960887798936950e-05, 3.984576453368266847e-05, 3.948188144976279941e-05, 3.911796022049656525e-05, 3.875400144014578158e-05, 3.839000570298315346e-05, 3.802597360333897738e-05, 3.766190573553631959e-05, 3.729780269390571378e-05, 3.693366507279229646e-05, 3.656949346656318637e-05, 3.620528846962235833e-05, 3.584105067634536074e-05, 3.547678068112649193e-05, 3.511247907839438554e-05, 3.474814646256217112e-05, 3.438378342804266654e-05, 3.401939056929660459e-05, 3.365496848076585974e-05, 3.329051775688147800e-05, 3.292603899211100910e-05, 3.256153278088442160e-05, 3.219699971769067145e-05, 3.183244039696295273e-05, 3.146785541317557110e-05, 3.110324536077729927e-05, 3.073861083421549370e-05, 3.037395242794272180e-05, 3.000927073643234734e-05, 2.964456635411254318e-05, 2.927983987541383354e-05, 2.891509189478469298e-05, 2.855032300662547440e-05, 2.818553380538481160e-05, 2.782072488544494115e-05, 2.745589684121848439e-05, 2.709105026708207053e-05, 2.672618575740016539e-05, 2.636130390653184427e-05, 2.599640530884650272e-05, 2.563149055865740174e-05, 2.526656025026993168e-05, 2.490161497799637096e-05, 2.453665533609056289e-05, 2.417168191883574963e-05, 2.380669532047080233e-05, 2.344169613520536273e-05, 2.307668495722711073e-05, 2.271166238070888957e-05, 2.234662899982388132e-05, 2.198158540867977206e-05, 2.161653220136656184e-05, 2.125146997197171637e-05, 2.088639931453049366e-05, 2.052132082304140062e-05, 2.015623509151372183e-05, 1.979114271390176267e-05, 1.942604428411986547e-05, 1.906094039604994139e-05, 1.869583164354840250e-05, 1.833071862046136094e-05, 1.796560192055899745e-05, 1.760048213758299180e-05, 1.723535986526202686e-05, 1.687023569725379401e-05, 1.650511022720115814e-05, 1.613998404869839497e-05, 1.577485775530666458e-05, 1.540973194052049270e-05, 1.504460719782370532e-05, 1.467948412061533197e-05, 1.431436330230611832e-05, 1.394924533620390743e-05, 1.358413081560997274e-05, 1.321902033375329853e-05, 1.285391448381384111e-05, 1.248881385892978791e-05, 1.212371905221272951e-05, 1.175863065668183504e-05, 1.139354926531150964e-05, 1.102847547104673760e-05, 1.066340986673718659e-05, 1.029835304523369827e-05, 9.933305599273489916e-06, 9.568268121576861858e-06, 9.203241204772985541e-06, 8.838225441455865294e-06, 8.473221424150853429e-06, 8.108229745330001860e-06, 7.743250997378534848e-06, 7.378285772650803998e-06, 7.013334663412439297e-06, 6.648398261855616032e-06, 6.283477160146936720e-06, 5.918571950361362537e-06, 5.553683224497566635e-06, 5.188811574485067008e-06, 4.823957592191434745e-06, 4.459121869437604993e-06, 4.094304997931818553e-06, 3.729507569317488984e-06, 3.364730175188512722e-06, 2.999973407039506318e-06, 2.635237856281112748e-06, 2.270524114287873597e-06, 1.905832772332159639e-06, 1.541164421599510611e-06, 1.176519653195815715e-06, 8.118990581544741216e-07, 4.473032274517156246e-07, 8.273275193244935152e-08, -2.818117776012327153e-07, -6.463297704560713949e-07, -1.010820636024193827e-06, -1.375283783775939277e-06, -1.739718623244564615e-06, -2.104124564092215693e-06, -2.468501016062118896e-06, -2.832847388963279921e-06, -3.197163092736440107e-06, -3.561447537357550260e-06, -3.925700132952426302e-06, -4.289920289700247655e-06, -4.654107417899489013e-06, -5.018260927944514706e-06, -5.382380230318368331e-06, -5.746464735577499901e-06, -6.110513854417745478e-06, -6.474526997626474045e-06, -6.838503576067320583e-06, -7.202443000746140294e-06, -7.566344682714428211e-06, -7.930208033184046418e-06, -8.294032463430669921e-06, -8.657817384867857986e-06, -9.021562208999290793e-06, -9.385266347411495125e-06, -9.748929211839912930e-06, -1.011255021412103041e-05, -1.047612876617702301e-05, -1.083966428006565752e-05, -1.120315616796470665e-05, -1.156660384212444576e-05, -1.193000671493329957e-05, -1.229336419890280736e-05, -1.265667570666027410e-05, -1.301994065094163332e-05, -1.338315844457619042e-05, -1.374632850055253022e-05, -1.410945023197069696e-05, -1.447252305202695270e-05, -1.483554637407148065e-05, -1.519851961155258940e-05, -1.556144217805012836e-05, -1.592431348726009550e-05, -1.628713295302817982e-05, -1.664989998929374202e-05, -1.701261401016395018e-05, -1.737527442981728578e-05, -1.773788066261801512e-05, -1.810043212301998332e-05, -1.846292822563208995e-05, -1.882536838519526331e-05, -1.918775201657517594e-05, -1.955007853474680150e-05, -1.991234735486049353e-05, -2.027455789219406029e-05, -2.063670956213763341e-05, -2.099880178025938745e-05, -2.136083396220924579e-05, -2.172280552383325724e-05, -2.208471588107723414e-05, -2.244656445005282431e-05, -2.280835064702169192e-05, -2.317007388834841221e-05, -2.353173359056587945e-05, -2.389332917036823248e-05, -2.425486004456315321e-05, -2.461632563012972237e-05, -2.497772534420275955e-05, -2.533905860402543340e-05, -2.570032482701527601e-05, -2.606152343074804182e-05, -2.642265383295151076e-05, -2.678371545149761760e-05, -2.714470770438786264e-05, -2.750563000981832661e-05, -2.786648178613243670e-05, -2.822726245180565559e-05, -2.858797142549490073e-05, -2.894860812602335540e-05, -2.930917197233291960e-05, -2.966966238354963831e-05, -3.003007877896870557e-05, -3.039042057804710215e-05, -3.075068720039677515e-05, -3.111087806576895778e-05, -3.147099259411999738e-05, -3.183103020556375890e-05, -3.219099032035672054e-05, -3.255087235895465041e-05, -3.291067574196590453e-05, -3.327039989014404748e-05, -3.363004422445295194e-05, -3.398960816601987985e-05, -3.434909113611990381e-05, -3.470849255624152839e-05, -3.506781184799069080e-05, -3.542704843320487317e-05, -3.578620173385687963e-05, -3.614527117212059992e-05, -3.650425617035567473e-05, -3.686315615106013636e-05, -3.722197053693550154e-05, -3.758069875087206017e-05, -3.793934021594146881e-05, -3.829789435537335907e-05, -3.865636059262109447e-05, -3.901473835126580494e-05, -3.937302705513004517e-05, -3.973122612818211371e-05, -4.008933499460950767e-05, -4.044735307876338450e-05, -4.080527980519178599e-05, -4.116311459862451362e-05, -4.152085688400602059e-05, -4.187850608644020560e-05, -4.223606163124749604e-05, -4.259352294394973699e-05, -4.295088945022310968e-05, -4.330816057596297361e-05, -4.366533574726895196e-05, -4.402241439043773520e-05, -4.437939593195592539e-05, -4.473627979848501991e-05, -4.509306541692670761e-05, -4.544975221437474376e-05, -4.580633961810111967e-05, -4.616282705560431648e-05, -4.651921395459427544e-05, -4.687549974294532315e-05, -4.723168384876108821e-05, -4.758776570035960020e-05, -4.794374472626585610e-05, -4.829962035520503051e-05, -4.865539201608746621e-05, -4.901105913808111918e-05, -4.936662115052497829e-05, -4.972207748299383286e-05, -5.007742756527470474e-05, -5.043267082736052615e-05, -5.078780669943475069e-05, -5.114283461193615482e-05, -5.149775399551147854e-05, -5.185256428100133751e-05, -5.220726489950368955e-05, -5.256185528228028833e-05, -5.291633486086801060e-05, -5.327070306698531663e-05, -5.362495933259606910e-05, -5.397910308989438812e-05, -5.433313377125906728e-05, -5.468705080931633548e-05, -5.504085363692639242e-05, -5.539454168717512127e-05, -5.574811439335231652e-05, -5.610157118901522500e-05, -5.645491150789468110e-05, -5.680813478400706417e-05, -5.716124045155965446e-05, -5.751422794502348472e-05, -5.786709669908586572e-05, -5.821984614864456542e-05, -5.857247572887065880e-05, -5.892498487516292365e-05, -5.927737302313285822e-05, -5.962963960865256229e-05, -5.998178406783990395e-05, -6.033380583701268497e-05, -6.068570435275174809e-05, -6.103747905188650297e-05, -6.138912937148863777e-05, -6.174065474886374376e-05, -6.209205462153768139e-05, -6.244332842731974869e-05, -6.279447560425662975e-05, -6.314549559061770378e-05, -6.349638782495040719e-05, -6.384715174602713481e-05, -6.419778679287609893e-05, -6.454829240476788528e-05, -6.489866802124754535e-05, -6.524891308207941051e-05, -6.559902702732008594e-05, -6.594900929722415214e-05, -6.629885933235520079e-05, -6.664857657349304056e-05, -6.699816046169667575e-05, -6.734761043828973732e-05, -6.769692594481448557e-05, -6.804610642309553417e-05, -6.839515131522444090e-05, -6.874406006355322958e-05, -6.909283211067168955e-05, -6.944146689947133008e-05, -6.978996387305133934e-05, -7.013832247483032503e-05, -7.048654214845159575e-05, -7.083462233784845708e-05, -7.118256248722850418e-05, -7.153036204102757034e-05, -7.187802044397320698e-05, -7.222553714107805649e-05, -7.257291157759347547e-05, -7.292014319906543892e-05, -7.326723145131956467e-05, -7.361417578041533295e-05, -7.396097563270887529e-05, -7.430763045483924575e-05, -7.465413969372026233e-05, -7.500050279653504531e-05, -7.534671921071984906e-05, -7.569278838402809773e-05, -7.603870976448474039e-05, -7.638448280037065199e-05, -7.673010694027115148e-05, -7.707558163306042992e-05, -7.742090632785709819e-05, -7.776608047408539021e-05, -7.811110352146230160e-05, -7.845597491998952591e-05, -7.880069411994677323e-05, -7.914526057187787887e-05, -7.948967372665248087e-05, -7.983393303542136445e-05, -8.017803794960173043e-05, -8.052198792093944195e-05, -8.086578240142535117e-05, -8.120942084336498640e-05, -8.155290269936540611e-05, -8.189622742232676930e-05, -8.223939446542111219e-05, -8.258240328215460857e-05, -8.292525332627545325e-05, -8.326794405188339362e-05, -8.361047491333773504e-05, -8.395284536531960118e-05, -8.429505486281802917e-05, -8.463710286108420261e-05, -8.497898881569377976e-05, -8.532071218253283948e-05, -8.566227241779075265e-05, -8.600366897793749522e-05, -8.634490131978754838e-05, -8.668596890040637258e-05, -8.702687117722063021e-05, -8.736760760792589291e-05, -8.770817765055725023e-05, -8.804858076343580425e-05, -8.838881640520093817e-05, -8.872888403479479861e-05, -8.906878311149501147e-05, -8.940851309486094614e-05, -8.974807344478891494e-05, -9.008746362149673678e-05, -9.042668308548032843e-05, -9.076573129757413525e-05, -9.110460771893686034e-05, -9.144331181104632818e-05, -9.178184303568987586e-05, -9.212020085495314513e-05, -9.245838473127936119e-05, -9.279639412742576128e-05, -9.313422850644884955e-05, -9.347188733175094998e-05, -9.380937006706608467e-05, -9.414667617641488454e-05, -9.448380512416594166e-05, -9.482075637502956152e-05, -9.515752939401363598e-05, -9.549412364649133820e-05, -9.583053859811204182e-05, -9.616677371490766767e-05, -9.650282846320326418e-05, -9.683870230967808865e-05, -9.717439472135102469e-05, -9.750990516553595378e-05, -9.784523310990461188e-05, -9.818037802246987915e-05, -9.851533937158110437e-05, -9.885011662590137730e-05, -9.918470925446881323e-05, -9.951911672660678106e-05, -9.985333851203031770e-05, -1.001873740807577385e-04, -1.005212229031695367e-04, -1.008548844499955352e-04, -1.011883581922708142e-04, -1.015216436013959927e-04, -1.018547401491227814e-04, -1.021876473075487108e-04, -1.025203645490933737e-04, -1.028528913465621085e-04, -1.031852271730609977e-04, -1.035173715020678697e-04, -1.038493238074164826e-04, -1.041810835632909956e-04, -1.045126502442186362e-04, -1.048440233250555112e-04, -1.051752022810479453e-04, -1.055061865877878391e-04, -1.058369757211986286e-04, -1.061675691575807406e-04, -1.064979663735984194e-04, -1.068281668462346375e-04, -1.071581700528523534e-04, -1.074879754711800778e-04, -1.078175825793051246e-04, -1.081469908556673766e-04, -1.084761997790452046e-04, -1.088052088286150577e-04, -1.091340174839089763e-04, -1.094626252247993454e-04, -1.097910315315592169e-04, -1.101192358847755056e-04, -1.104472377654517988e-04, -1.107750366549213492e-04, -1.111026320349140374e-04, -1.114300233874981102e-04, -1.117572101951478346e-04, -1.120841919406551486e-04, -1.124109681072347480e-04, -1.127375381784348696e-04, -1.130639016381983865e-04, -1.133900579708483334e-04, -1.137160066610449187e-04, -1.140417471938447348e-04, -1.143672790546867724e-04, -1.146926017293864436e-04, -1.150177147041144807e-04, -1.153426174654553879e-04, -1.156673095003213293e-04, -1.159917902960549106e-04, -1.163160593403424838e-04, -1.166401161212732090e-04, -1.169639601273251498e-04, -1.172875908473232874e-04, -1.176110077704969155e-04, -1.179342103864747476e-04, -1.182571981852410619e-04, -1.185799706571877689e-04, -1.189025272931005617e-04, -1.192248675841166316e-04, -1.195469910217832288e-04, -1.198688970980432830e-04, -1.201905853052295895e-04, -1.205120551360590087e-04, -1.208333060836172735e-04, -1.211543376414193527e-04, -1.214751493033648628e-04, -1.217957405637261012e-04, -1.221161109172066745e-04, -1.224362598588541796e-04, -1.227561868841631893e-04, -1.230758914889892072e-04, -1.233953731696068082e-04, -1.237146314226897706e-04, -1.240336657453033236e-04, -1.243524756348914897e-04, -1.246710605893357670e-04, -1.249894201069110835e-04, -1.253075536862738705e-04, -1.256254608265197702e-04, -1.259431410271054093e-04, -1.262605937879138858e-04, -1.265778186092400234e-04, -1.268948149917874170e-04, -1.272115824366425478e-04, -1.275281204453379915e-04, -1.278444285197636774e-04, -1.281605061622694800e-04, -1.284763528755802182e-04, -1.287919681628520879e-04, -1.291073515276618469e-04, -1.294225024739629321e-04, -1.297374205061420274e-04, -1.300521051290088996e-04, -1.303665558477881041e-04, -1.306807721680973823e-04, -1.309947535960078889e-04, -1.313084996379578623e-04, -1.316220098008535097e-04, -1.319352835919838972e-04, -1.322483205190864628e-04, -1.325611200902977933e-04, -1.328736818141827084e-04, -1.331860051997209792e-04, -1.334980897563355713e-04, -1.338099349938458890e-04, -1.341215404225157509e-04, -1.344329055530419791e-04, -1.347440298965103529e-04, -1.350549129644557284e-04, -1.353655542688473744e-04, -1.356759533220810846e-04, -1.359861096369761153e-04, -1.362960227267592469e-04, -1.366056921051237653e-04, -1.369151172861856594e-04, -1.372242977844725898e-04, -1.375332331149793999e-04, -1.378419227930860144e-04, -1.381503663346545299e-04, -1.384585632559485774e-04, -1.387665130736930616e-04, -1.390742153050229866e-04, -1.393816694675456352e-04, -1.396888750792559463e-04, -1.399958316586375092e-04, -1.403025387245777510e-04, -1.406089957964264028e-04, -1.409152023939795617e-04, -1.412211580374406054e-04, -1.415268622474769500e-04, -1.418323145452051153e-04, -1.421375144521868489e-04, -1.424424614904054630e-04, -1.427471551823272550e-04, -1.430515950508139578e-04, -1.433557806192232997e-04, -1.436597114113263342e-04, -1.439633869513628692e-04, -1.442668067640292162e-04, -1.445699703744363670e-04, -1.448728773081670224e-04, -1.451755270912621757e-04, -1.454779192502147155e-04, -1.457800533119496121e-04, -1.460819288038801064e-04, -1.463835452538320050e-04, -1.466849021901072965e-04, -1.469859991414699206e-04, -1.472868356371408627e-04, -1.475874112067915398e-04, -1.478877253805306548e-04, -1.481877776889591383e-04, -1.484875676631314701e-04, -1.487870948345412856e-04, -1.490863587351768337e-04, -1.493853588974412871e-04, -1.496840948542476105e-04, -1.499825661389364323e-04, -1.502807722853341846e-04, -1.505787128277312026e-04, -1.508763873008758154e-04, -1.511737952399631521e-04, -1.514709361806872915e-04, -1.517678096592045621e-04, -1.520644152121180376e-04, -1.523607523765332114e-04, -1.526568206899794184e-04, -1.529526196905020465e-04, -1.532481489165835259e-04, -1.535434079072068626e-04, -1.538383962017981490e-04, -1.541331133402922395e-04, -1.544275588630497815e-04, -1.547217323109526801e-04, -1.550156332253262517e-04, -1.553092611479896397e-04, -1.556026156212466261e-04, -1.558956961878454612e-04, -1.561885023910319090e-04, -1.564810337745372931e-04, -1.567732898825717751e-04, -1.570652702598068719e-04, -1.573569744514283913e-04, -1.576484020030560664e-04, -1.579395524608396151e-04, -1.582304253713783470e-04, -1.585210202817819325e-04, -1.588113367396241623e-04, -1.591013742929710544e-04, -1.593911324903678174e-04, -1.596806108808660092e-04, -1.599698090139777570e-04, -1.602587264397369873e-04, -1.605473627086194930e-04, -1.608357173716361212e-04, -1.611237899802562005e-04, -1.614115800864582013e-04, -1.616990872427126588e-04, -1.619863110019755599e-04, -1.622732509176763626e-04, -1.625599065437700105e-04, -1.628462774347004766e-04, -1.631323631453855303e-04, -1.634181632312715438e-04, -1.637036772482570015e-04, -1.639889047527803747e-04, -1.642738453017472905e-04, -1.645584984525799439e-04, -1.648428637632010790e-04, -1.651269407920254780e-04, -1.654107290979487397e-04, -1.656942282404063411e-04, -1.659774377793043305e-04, -1.662603572750699589e-04, -1.665429862886387243e-04, -1.668253243814198398e-04, -1.671073711153445889e-04, -1.673891260528570014e-04, -1.676705887569061827e-04, -1.679517587909288580e-04, -1.682326357189002490e-04, -1.685132191052592901e-04, -1.687935085149991062e-04, -1.690735035135876210e-04, -1.693532036670231502e-04, -1.696326085418222850e-04, -1.699117177049780966e-04, -1.701905307240165685e-04, -1.704690471669815534e-04, -1.707472666024312496e-04, -1.710251885994304216e-04, -1.713028127275390976e-04, -1.715801385568651530e-04, -1.718571656580252524e-04, -1.721338936021334651e-04, -1.724103219608469914e-04, -1.726864503063269690e-04, -1.729622782112360873e-04, -1.732378052487862656e-04, -1.735130309927024133e-04, -1.737879550172126723e-04, -1.740625768970959593e-04, -1.743368962076103268e-04, -1.746109125245798083e-04, -1.748846254243196889e-04, -1.751580344836880870e-04, -1.754311392800677119e-04, -1.757039393913593863e-04, -1.759764343959718000e-04, -1.762486238728707061e-04, -1.765205074015415159e-04, -1.767920845619804892e-04, -1.770633549347418168e-04, -1.773343181008658453e-04, -1.776049736419651093e-04, -1.778753211401528007e-04, -1.781453601780957864e-04, -1.784150903389687193e-04, -1.786845112065093329e-04, -1.789536223649451760e-04, -1.792224233990785600e-04, -1.794909138942175767e-04, -1.797590934362212553e-04, -1.800269616114917831e-04, -1.802945180069350406e-04, -1.805617622100121555e-04, -1.808286938087289312e-04, -1.810953123916277162e-04, -1.813616175477711400e-04, -1.816276088667917975e-04, -1.818932859388186312e-04, -1.821586483545645078e-04, -1.824236957052515168e-04, -1.826884275826627679e-04, -1.829528435791297875e-04, -1.832169432874954118e-04, -1.834807263011651506e-04, -1.837441922140943128e-04, -1.840073406207823684e-04, -1.842701711162682862e-04, -1.845326832961202614e-04, -1.847948767564878113e-04, -1.850567510940370481e-04, -1.853183059060018270e-04, -1.855795407901622508e-04, -1.858404553448430988e-04, -1.861010491689001382e-04, -1.863613218617686149e-04, -1.866212730234302673e-04, -1.868809022543996918e-04, -1.871402091557728613e-04, -1.873991933291569226e-04, -1.876578543767541143e-04, -1.879161919012915100e-04, -1.881742055060676663e-04, -1.884318947949364682e-04, -1.886892593723013827e-04, -1.889462988431050777e-04, -1.892030128128766389e-04, -1.894594008876957370e-04, -1.897154626741843879e-04, -1.899711977795503202e-04, -1.902266058115214902e-04, -1.904816863784262581e-04, -1.907364390891239179e-04, -1.909908635530584739e-04, -1.912449593802121011e-04, -1.914987261811593286e-04, -1.917521635669948042e-04, -1.920052711494198681e-04, -1.922580485406693424e-04, -1.925104953535606721e-04, -1.927626112014818366e-04, -1.930143956983590133e-04, -1.932658484587006231e-04, -1.935169690975885759e-04, -1.937677572306719005e-04, -1.940182124741633837e-04, -1.942683344448261533e-04, -1.945181227600218169e-04, -1.947675770376759024e-04, -1.950166968962679112e-04, -1.952654819548706470e-04, -1.955139318331116998e-04, -1.957620461511963496e-04, -1.960098245298977002e-04, -1.962572665905797456e-04, -1.965043719551553842e-04, -1.967511402461428517e-04, -1.969975710865955187e-04, -1.972436641001810379e-04, -1.974894189111156952e-04, -1.977348351442094314e-04, -1.979799124248497418e-04, -1.982246503789962283e-04, -1.984690486331710580e-04, -1.987131068145019249e-04, -1.989568245506923700e-04, -1.992002014700078490e-04, -1.994432372013233291e-04, -1.996859313740572339e-04, -1.999282836182464970e-04, -2.001702935644845732e-04, -2.004119608439633969e-04, -2.006532850884603172e-04, -2.008942659303284491e-04, -2.011349030024925529e-04, -2.013751959384923215e-04, -2.016151443724285494e-04, -2.018547479390035194e-04, -2.020940062735116513e-04, -2.023329190118087378e-04, -2.025714857903528185e-04, -2.028097062461995997e-04, -2.030475800169892812e-04, -2.032851067409504589e-04, -2.035222860568831850e-04, -2.037591176042063469e-04, -2.039956010229248434e-04, -2.042317359536184715e-04, -2.044675220374762956e-04, -2.047029589162854802e-04, -2.049380462323989807e-04, -2.051727836287819203e-04, -2.054071707489975220e-04, -2.056412072372047512e-04, -2.058748927381528397e-04, -2.061082268971704443e-04, -2.063412093602109119e-04, -2.065738397738191843e-04, -2.068061177851207393e-04, -2.070380430418626008e-04, -2.072696151923779395e-04, -2.075008338855851512e-04, -2.077316987710269697e-04, -2.079622094988444999e-04, -2.081923657197597621e-04, -2.084221670851262704e-04, -2.086516132468612425e-04, -2.088807038575201931e-04, -2.091094385702366523e-04, -2.093378170387630939e-04, -2.095658389174563261e-04, -2.097935038612726397e-04, -2.100208115257567489e-04, -2.102477615670864336e-04, -2.104743536420390106e-04, -2.107005874079840419e-04, -2.109264625229236132e-04, -2.111519786454308322e-04, -2.113771354347243137e-04, -2.116019325506047263e-04, -2.118263696535027955e-04, -2.120504464044388091e-04, -2.122741624650681261e-04, -2.124975174976210038e-04, -2.127205111649756457e-04, -2.129431431305959415e-04, -2.131654130585733170e-04, -2.133873206136161090e-04, -2.136088654610225146e-04, -2.138300472667188906e-04, -2.140508656972494532e-04, -2.142713204197751130e-04, -2.144914111020662379e-04, -2.147111374124933557e-04, -2.149304990200688690e-04, -2.151494955944176462e-04, -2.153681268057653394e-04, -2.155863923249709102e-04, -2.158042918235162754e-04, -2.160218249734784709e-04, -2.162389914475662696e-04, -2.164557909191196130e-04, -2.166722230620797681e-04, -2.168882875510300123e-04, -2.171039840611443234e-04, -2.173193122682496670e-04, -2.175342718487716510e-04, -2.177488624797741532e-04, -2.179630838389421364e-04, -2.181769356045797244e-04, -2.183904174556020972e-04, -2.186035290715715950e-04, -2.188162701326712368e-04, -2.190286403196948812e-04, -2.192406393140860674e-04, -2.194522667978819630e-04, -2.196635224537789571e-04, -2.198744059650783154e-04, -2.200849170157222841e-04, -2.202950552902815668e-04, -2.205048204739518017e-04, -2.207142122525418242e-04, -2.209232303125146775e-04, -2.211318743409603448e-04, -2.213401440255828199e-04, -2.215480390547421474e-04, -2.217555591174020016e-04, -2.219627039031699372e-04, -2.221694731022933237e-04, -2.223758664056508074e-04, -2.225818835047502513e-04, -2.227875240917190857e-04, -2.229927878593438275e-04, -2.231976745010376623e-04, -2.234021837108391437e-04, -2.236063151834331722e-04, -2.238100686141469842e-04, -2.240134436989202273e-04, -2.242164401343445614e-04, -2.244190576176523829e-04, -2.246212958467161467e-04, -2.248231545200394762e-04, -2.250246333367519858e-04, -2.252257319966455209e-04, -2.254264502001471877e-04, -2.256267876483105718e-04, -2.258267440428471525e-04, -2.260263190860971653e-04, -2.262255124810453222e-04, -2.264243239313139548e-04, -2.266227531411827193e-04, -2.268207998155540646e-04, -2.270184636599968176e-04, -2.272157443806913763e-04, -2.274126416844958465e-04, -2.276091552788877658e-04, -2.278052848720035686e-04, -2.280010301726257381e-04, -2.281963908901776025e-04, -2.283913667347156910e-04, -2.285859574169637240e-04, -2.287801626482901694e-04, -2.289739821406969135e-04, -2.291674156068560962e-04, -2.293604627600548168e-04, -2.295531233142635746e-04, -2.297453969840772877e-04, -2.299372834847582822e-04, -2.301287825322070998e-04, -2.303198938429769447e-04, -2.305106171342698618e-04, -2.307009521239498831e-04, -2.308908985305163555e-04, -2.310804560731340011e-04, -2.312696244716235384e-04, -2.314584034464367730e-04, -2.316467927186920779e-04, -2.318347920101668583e-04, -2.320224010432910737e-04, -2.322096195411443918e-04, -2.323964472274508758e-04, -2.325828838266078241e-04, -2.327689290636679627e-04, -2.329545826643240219e-04, -2.331398443549388775e-04, -2.333247138625374191e-04, -2.335091909147797161e-04, -2.336932752399966068e-04, -2.338769665671807806e-04, -2.340602646259839321e-04, -2.342431691467109606e-04, -2.344256798603150372e-04, -2.346077964984349278e-04, -2.347895187933449852e-04, -2.349708464779959956e-04, -2.351517792859976962e-04, -2.353323169516165258e-04, -2.355124592097696879e-04, -2.356922057960554281e-04, -2.358715564467318642e-04, -2.360505108987054400e-04, -2.362290688895673271e-04, -2.364072301575442293e-04, -2.365849944415529451e-04, -2.367623614811564304e-04, -2.369393310165928822e-04, -2.371159027887676071e-04, -2.372920765392443206e-04, -2.374678520102425179e-04, -2.376432289446664761e-04, -2.378182070860839772e-04, -2.379927861787175256e-04, -2.381669659674752752e-04, -2.383407461979076072e-04, -2.385141266162584396e-04, -2.386871069694212089e-04, -2.388596870049737272e-04, -2.390318664711501553e-04, -2.392036451168594346e-04, -2.393750226916752306e-04, -2.395459989458533618e-04, -2.397165736303040983e-04, -2.398867464966210014e-04, -2.400565172970719791e-04, -2.402258857845772767e-04, -2.403948517127410273e-04, -2.405634148358433910e-04, -2.407315749088353779e-04, -2.408993316873396615e-04, -2.410666849276389776e-04, -2.412336343867099513e-04, -2.414001798221987840e-04, -2.415663209924136365e-04, -2.417320576563499997e-04, -2.418973895736819667e-04, -2.420623165047404673e-04, -2.422268382105417285e-04, -2.423909544527870572e-04, -2.425546649938394223e-04, -2.427179695967552481e-04, -2.428808680252437298e-04, -2.430433600437174662e-04, -2.432054454172468956e-04, -2.433671239115927406e-04, -2.435283952931933775e-04, -2.436892593291626133e-04, -2.438497157872818795e-04, -2.440097644360316744e-04, -2.441694050445662192e-04, -2.443286373827102329e-04, -2.444874612209875552e-04, -2.446458763305763961e-04, -2.448038824833606727e-04, -2.449614794518885385e-04, -2.451186670094010608e-04, -2.452754449298232757e-04, -2.454318129877460278e-04, -2.455877709584524250e-04, -2.457433186179130134e-04, -2.458984557427812238e-04, -2.460531821103826384e-04, -2.462074974987454564e-04, -2.463614016865596740e-04, -2.465148944532118331e-04, -2.466679755787756431e-04, -2.468206448440104085e-04, -2.469729020303574512e-04, -2.471247469199321415e-04, -2.472761792955543644e-04, -2.474271989407278113e-04, -2.475778056396298423e-04, -2.477279991771368030e-04, -2.478777793388156213e-04, -2.480271459109036959e-04, -2.481760986803354047e-04, -2.483246374347383646e-04, -2.484727619624269262e-04, -2.486204720524013063e-04, -2.487677674943416248e-04, -2.489146480786318116e-04, -2.490611135963445902e-04, -2.492071638392316115e-04, -2.493527985997470893e-04, -2.494980176710267128e-04, -2.496428208469000064e-04, -2.497872079218840954e-04, -2.499311786911961744e-04, -2.500747329507355099e-04, -2.502178704971056117e-04, -2.503605911275800806e-04, -2.505028946401508558e-04, -2.506447808334813770e-04, -2.507862495069425801e-04, -2.509273004605984229e-04, -2.510679334951916282e-04, -2.512081484121685658e-04, -2.513479450136731812e-04, -2.514873231025425504e-04, -2.516262824822998326e-04, -2.517648229571789356e-04, -2.519029443320860268e-04, -2.520406464126453408e-04, -2.521779290051617741e-04, -2.523147919166467980e-04, -2.524512349548010568e-04, -2.525872579280227163e-04, -2.527228606454054037e-04, -2.528580429167478572e-04, -2.529928045525336512e-04, -2.531271453639537478e-04, -2.532610651629009133e-04, -2.533945637619478171e-04, -2.535276409743775520e-04, -2.536602966141731177e-04, -2.537925304960162820e-04, -2.539243424352862800e-04, -2.540557322480509238e-04, -2.541866997510930024e-04, -2.543172447618934225e-04, -2.544473670986223727e-04, -2.545770665801607357e-04, -2.547063430260925539e-04, -2.548351962566864888e-04, -2.549636260929225473e-04, -2.550916323564844917e-04, -2.552192148697583762e-04, -2.553463734558275057e-04, -2.554731079384696163e-04, -2.555994181421818124e-04, -2.557253038921492331e-04, -2.558507650142674951e-04, -2.559758013351362961e-04, -2.561004126820556740e-04, -2.562245988830192853e-04, -2.563483597667396666e-04, -2.564716951626299117e-04, -2.565946049007991180e-04, -2.567170888120742333e-04, -2.568391467279670416e-04, -2.569607784807136823e-04, -2.570819839032425580e-04, -2.572027628291939584e-04, -2.573231150929174041e-04, -2.574430405294528355e-04, -2.575625389745551702e-04, -2.576816102646893158e-04, -2.578002542370250194e-04, -2.579184707294291160e-04, -2.580362595804929588e-04, -2.581536206294907316e-04, -2.582705537164261774e-04, -2.583870586819949776e-04, -2.585031353676130487e-04, -2.586187836153963225e-04, -2.587340032681623722e-04, -2.588487941694494945e-04, -2.589631561635031025e-04, -2.590770890952660767e-04, -2.591905928104013706e-04, -2.593036671552816563e-04, -2.594163119769757721e-04, -2.595285271232700814e-04, -2.596403124426640814e-04, -2.597516677843653078e-04, -2.598625929982893885e-04, -2.599730879350542435e-04, -2.600831524460016060e-04, -2.601927863831797298e-04, -2.603019895993411120e-04, -2.604107619479604369e-04, -2.605191032832126206e-04, -2.606270134599891286e-04, -2.607344923338890852e-04, -2.608415397612310368e-04, -2.609481555990363099e-04, -2.610543397050487974e-04, -2.611600919377091547e-04, -2.612654121561862959e-04, -2.613703002203495297e-04, -2.614747559907893218e-04, -2.615787793288106814e-04, -2.616823700964189580e-04, -2.617855281563409293e-04, -2.618882533720187297e-04, -2.619905456076091453e-04, -2.620924047279735310e-04, -2.621938305987003620e-04, -2.622948230860754721e-04, -2.623953820571156646e-04, -2.624955073795401427e-04, -2.625951989217887791e-04, -2.626944565530208689e-04, -2.627932801430967521e-04, -2.628916695625994979e-04, -2.629896246828325739e-04, -2.630871453758053713e-04, -2.631842315142488725e-04, -2.632808829716129940e-04, -2.633770996220521671e-04, -2.634728813404430643e-04, -2.635682280023800457e-04, -2.636631394841767312e-04, -2.637576156628570014e-04, -2.638516564161572206e-04, -2.639452616225412525e-04, -2.640384311611873418e-04, -2.641311649119841565e-04, -2.642234627555432565e-04, -2.643153245731987141e-04, -2.644067502469877066e-04, -2.644977396596720379e-04, -2.645882926947357530e-04, -2.646784092363792837e-04, -2.647680891695184725e-04, -2.648573323797814827e-04, -2.649461387535255496e-04, -2.650345081778245656e-04, -2.651224405404631725e-04, -2.652099357299561133e-04, -2.652969936355249227e-04, -2.653836141471157617e-04, -2.654697971553960571e-04, -2.655555425517526578e-04, -2.656408502282851672e-04, -2.657257200778228570e-04, -2.658101519939000011e-04, -2.658941458707861794e-04, -2.659777016034590644e-04, -2.660608190876242074e-04, -2.661434982197061487e-04, -2.662257388968432672e-04, -2.663075410168965623e-04, -2.663889044784526904e-04, -2.664698291808158866e-04, -2.665503150240080741e-04, -2.666303619087799764e-04, -2.667099697365895423e-04, -2.667891384096288338e-04, -2.668678678308023964e-04, -2.669461579037438474e-04, -2.670240085328004801e-04, -2.671014196230450818e-04, -2.671783910802683982e-04, -2.672549228109886749e-04, -2.673310147224396767e-04, -2.674066667225807707e-04, -2.674818787200964384e-04, -2.675566506243812052e-04, -2.676309823455628426e-04, -2.677048737944853459e-04, -2.677783248827227038e-04, -2.678513355225638280e-04, -2.679239056270171066e-04, -2.679960351098226558e-04, -2.680677238854396890e-04, -2.681389718690471127e-04, -2.682097789765487315e-04, -2.682801451245768248e-04, -2.683500702304756681e-04, -2.684195542123173073e-04, -2.684885969888997702e-04, -2.685571984797448979e-04, -2.686253586050931408e-04, -2.686930772859067026e-04, -2.687603544438790814e-04, -2.688271900014209208e-04, -2.688935838816688463e-04, -2.689595360084868743e-04, -2.690250463064537277e-04, -2.690901147008764420e-04, -2.691547411177887933e-04, -2.692189254839465282e-04, -2.692826677268263876e-04, -2.693459677746368945e-04, -2.694088255562988388e-04, -2.694712410014692377e-04, -2.695332140405193810e-04, -2.695947446045529367e-04, -2.696558326253963023e-04, -2.697164780355939422e-04, -2.697766807684203686e-04, -2.698364407578746657e-04, -2.698957579386816285e-04, -2.699546322462843904e-04, -2.700130636168607398e-04, -2.700710519873015451e-04, -2.701285972952320591e-04, -2.701856994789966857e-04, -2.702423584776695513e-04, -2.702985742310477280e-04, -2.703543466796471686e-04, -2.704096757647171797e-04, -2.704645614282326165e-04, -2.705190036128848831e-04, -2.705730022620989549e-04, -2.706265573200243796e-04, -2.706796687315298020e-04, -2.707323364422115834e-04, -2.707845603983952652e-04, -2.708363405471302565e-04, -2.708876768361899424e-04, -2.709385692140690817e-04, -2.709890176299968719e-04, -2.710390220339228546e-04, -2.710885823765205472e-04, -2.711376986091954661e-04, -2.711863706840685929e-04, -2.712345985539975162e-04, -2.712823821725561567e-04, -2.713297214940511392e-04, -2.713766164735102455e-04, -2.714230670666906002e-04, -2.714690732300693464e-04, -2.715146349208558433e-04, -2.715597520969804447e-04, -2.716044247171024674e-04, -2.716486527406075354e-04, -2.716924361276018334e-04, -2.717357748389201844e-04, -2.717786688361263202e-04, -2.718211180815071899e-04, -2.718631225380737184e-04, -2.719046821695685046e-04, -2.719457969404501002e-04, -2.719864668159141519e-04, -2.720266917618740479e-04, -2.720664717449730076e-04, -2.721058067325805570e-04, -2.721446966927883551e-04, -2.721831415944154522e-04, -2.722211414070089945e-04, -2.722586961008399416e-04, -2.722958056469059938e-04, -2.723324700169326221e-04, -2.723686891833646114e-04, -2.724044631193778786e-04, -2.724397917988745929e-04, -2.724746751964809001e-04, -2.725091132875496320e-04, -2.725431060481569461e-04, -2.725766534551077465e-04, -2.726097554859331900e-04, -2.726424121188867288e-04, -2.726746233329520254e-04, -2.727063891078326525e-04, -2.727377094239636941e-04, -2.727685842625019331e-04, -2.727990136053322487e-04, -2.728289974350652305e-04, -2.728585357350356072e-04, -2.728876284893018661e-04, -2.729162756826518377e-04, -2.729444773005986293e-04, -2.729722333293775356e-04, -2.729995437559548199e-04, -2.730264085680158973e-04, -2.730528277539739533e-04, -2.730788013029696731e-04, -2.731043292048675013e-04, -2.731294114502563460e-04, -2.731540480304529405e-04, -2.731782389374949583e-04, -2.732019841641502829e-04, -2.732252837039080094e-04, -2.732481375509846779e-04, -2.732705457003221602e-04, -2.732925081475843523e-04, -2.733140248891617824e-04, -2.733350959221705814e-04, -2.733557212444536746e-04, -2.733759008545743317e-04, -2.733956347518237554e-04, -2.734149229362158777e-04, -2.734337654084916425e-04, -2.734521621701139094e-04, -2.734701132232732006e-04, -2.734876185708816831e-04, -2.735046782165779394e-04, -2.735212921647244737e-04, -2.735374604204068448e-04, -2.735531829894371353e-04, -2.735684598783492353e-04, -2.735832910944043178e-04, -2.735976766455848756e-04, -2.736116165405973232e-04, -2.736251107888744362e-04, -2.736381594005712859e-04, -2.736507623865668654e-04, -2.736629197584641436e-04, -2.736746315285884393e-04, -2.736858977099925166e-04, -2.736967183164475321e-04, -2.737070933624538224e-04, -2.737170228632284361e-04, -2.737265068347180899e-04, -2.737355452935887057e-04, -2.737441382572312117e-04, -2.737522857437577474e-04, -2.737599877720072470e-04, -2.737672443615364408e-04, -2.737740555326290169e-04, -2.737804213062889529e-04, -2.737863417042446902e-04, -2.737918167489473997e-04, -2.737968464635672948e-04, -2.738014308720004082e-04, -2.738055699988645804e-04, -2.738092638694996218e-04, -2.738125125099653075e-04, -2.738153159470484242e-04, -2.738176742082518741e-04, -2.738195873218038910e-04, -2.738210553166543532e-04, -2.738220782224743506e-04, -2.738226560696548832e-04, -2.738227888893115776e-04, -2.738224767132778023e-04, -2.738217195741103052e-04, -2.738205175050882384e-04, -2.738188705402071947e-04, -2.738167787141895077e-04, -2.738142420624741684e-04, -2.738112606212213794e-04, -2.738078344273140179e-04, -2.738039635183536248e-04, -2.737996479326619765e-04, -2.737948877092821688e-04, -2.737896828879760698e-04, -2.737840335092281137e-04, -2.737779396142398804e-04, -2.737714012449337818e-04, -2.737644184439514891e-04, -2.737569912546553973e-04, -2.737491197211255889e-04, -2.737408038881628696e-04, -2.737320438012868715e-04, -2.737228395067355644e-04, -2.737131910514673167e-04, -2.737030984831569373e-04, -2.736925618502002297e-04, -2.736815812017100885e-04, -2.736701565875178550e-04, -2.736582880581745099e-04, -2.736459756649472033e-04, -2.736332194598238088e-04, -2.736200194955056594e-04, -2.736063758254162208e-04, -2.735922885036943153e-04, -2.735777575851960192e-04, -2.735627831254961806e-04, -2.735473651808861969e-04, -2.735315038083736350e-04, -2.735151990656825571e-04, -2.734984510112558513e-04, -2.734812597042523045e-04, -2.734636252045459515e-04, -2.734455475727269429e-04, -2.734270268701040384e-04, -2.734080631586991860e-04, -2.733886565012521837e-04, -2.733688069612173191e-04, -2.733485146027643444e-04, -2.733277794907794530e-04, -2.733066016908622972e-04, -2.732849812693284282e-04, -2.732629182932105427e-04, -2.732404128302521403e-04, -2.732174649489141371e-04, -2.731940747183694449e-04, -2.731702422085081211e-04, -2.731459674899323268e-04, -2.731212506339587127e-04, -2.730960917126166836e-04, -2.730704907986505133e-04, -2.730444479655167421e-04, -2.730179632873881886e-04, -2.729910368391467394e-04, -2.729636686963877947e-04, -2.729358589354218944e-04, -2.729076076332692430e-04, -2.728789148676661063e-04, -2.728497807170569508e-04, -2.728202052606005699e-04, -2.727901885781672644e-04, -2.727597307503371081e-04, -2.727288318584046101e-04, -2.726974919843736184e-04, -2.726657112109599768e-04, -2.726334896215893019e-04, -2.726008273003995312e-04, -2.725677243322371284e-04, -2.725341808026615826e-04, -2.725001967979396623e-04, -2.724657724050502943e-04, -2.724309077116801722e-04, -2.723956028062281482e-04, -2.723598577777986188e-04, -2.723236727162104700e-04, -2.722870477119869394e-04, -2.722499828563622847e-04, -2.722124782412786931e-04, -2.721745339593848183e-04, -2.721361501040421766e-04, -2.720973267693172870e-04, -2.720580640499847065e-04, -2.720183620415252417e-04, -2.719782208401299597e-04, -2.719376405426933581e-04, -2.718966212468213882e-04, -2.718551630508238108e-04, -2.718132660537180456e-04, -2.717709303552257017e-04, -2.717281560557770767e-04, -2.716849432565076336e-04, -2.716412920592589219e-04, -2.715972025665747830e-04, -2.715526748817095361e-04, -2.715077091086171360e-04, -2.714623053519625031e-04, -2.714164637171092177e-04, -2.713701843101282477e-04, -2.713234672377943168e-04, -2.712763126075841153e-04, -2.712287205276798781e-04, -2.711806911069716071e-04, -2.711322244550430855e-04, -2.710833206821881944e-04, -2.710339798994009929e-04, -2.709842022183769645e-04, -2.709339877515196311e-04, -2.708833366119262954e-04, -2.708322489134038164e-04, -2.707807247704538639e-04, -2.707287642982848450e-04, -2.706763676128020376e-04, -2.706235348306178365e-04, -2.705702660690364656e-04, -2.705165614460707836e-04, -2.704624210804282432e-04, -2.704078450915172881e-04, -2.703528335994501717e-04, -2.702973867250353678e-04, -2.702415045897787094e-04, -2.701851873158863152e-04, -2.701284350262655120e-04, -2.700712478445176784e-04, -2.700136258949484367e-04, -2.699555693025550759e-04, -2.698970781930369058e-04, -2.698381526927883726e-04, -2.697787929288983540e-04, -2.697189990291606757e-04, -2.696587711220601257e-04, -2.695981093367783086e-04, -2.695370138031929954e-04, -2.694754846518772557e-04, -2.694135220141046080e-04, -2.693511260218372019e-04, -2.692882968077373648e-04, -2.692250345051589279e-04, -2.691613392481501544e-04, -2.690972111714555817e-04, -2.690326504105168353e-04, -2.689676571014625451e-04, -2.689022313811166944e-04, -2.688363733870000830e-04, -2.687700832573204613e-04, -2.687033611309858658e-04, -2.686362071475908498e-04, -2.685686214474248320e-04, -2.685006041714671087e-04, -2.684321554613878840e-04, -2.683632754595506554e-04, -2.682939643090130263e-04, -2.682242221535174908e-04, -2.681540491374964207e-04, -2.680834454060794926e-04, -2.680124111050775329e-04, -2.679409463809994860e-04, -2.678690513810361509e-04, -2.677967262530734629e-04, -2.677239711456788867e-04, -2.676507862081163244e-04, -2.675771715903287680e-04, -2.675031274429591705e-04, -2.674286539173256717e-04, -2.673537511654419272e-04, -2.672784193400049653e-04, -2.672026585943945362e-04, -2.671264690826857975e-04, -2.670498509596367373e-04, -2.669728043806870901e-04, -2.668953295019637034e-04, -2.668174264802780984e-04, -2.667390954731344390e-04, -2.666603366387096364e-04, -2.665811501358715638e-04, -2.665015361241702204e-04, -2.664214947638386525e-04, -2.663410262157942551e-04, -2.662601306416380125e-04, -2.661788082036543358e-04, -2.660970590648048290e-04, -2.660148833887397810e-04, -2.659322813397829873e-04, -2.658492530829520244e-04, -2.657657987839333129e-04, -2.656819186091016879e-04, -2.655976127255079843e-04, -2.655128813008833196e-04, -2.654277245036405037e-04, -2.653421425028763695e-04, -2.652561354683583288e-04, -2.651697035705349436e-04, -2.650828469805382027e-04, -2.649955658701701319e-04, -2.649078604119210084e-04, -2.648197307789476227e-04, -2.647311771450934991e-04, -2.646421996848717108e-04, -2.645527985734745296e-04, -2.644629739867692514e-04, -2.643727261013066533e-04, -2.642820550943013693e-04, -2.641909611436526529e-04, -2.640994444279280056e-04, -2.640075051263684894e-04, -2.639151434188992439e-04, -2.638223594861119760e-04, -2.637291535092717363e-04, -2.636355256703156727e-04, -2.635414761518550895e-04, -2.634470051371806524e-04, -2.633521128102452578e-04, -2.632567993556753083e-04, -2.631610649587745620e-04, -2.630649098055120975e-04, -2.629683340825242658e-04, -2.628713379771301399e-04, -2.627739216773108065e-04, -2.626760853717163054e-04, -2.625778292496647615e-04, -2.624791535011469388e-04, -2.623800583168259151e-04, -2.622805438880255352e-04, -2.621806104067372955e-04, -2.620802580656267410e-04, -2.619794870580195874e-04, -2.618782975779116416e-04, -2.617766898199704278e-04, -2.616746639795213642e-04, -2.615722202525552439e-04, -2.614693588357363120e-04, -2.613660799263816119e-04, -2.612623837224887407e-04, -2.611582704227044071e-04, -2.610537402263489893e-04, -2.609487933334018431e-04, -2.608434299445039047e-04, -2.607376502609604551e-04, -2.606314544847470834e-04, -2.605248428184895747e-04, -2.604178154654781131e-04, -2.603103726296698297e-04, -2.602025145156717264e-04, -2.600942413287684316e-04, -2.599855532748875596e-04, -2.598764505606270870e-04, -2.597669333932357827e-04, -2.596570019806315310e-04, -2.595466565313779670e-04, -2.594358972547134248e-04, -2.593247243605184115e-04, -2.592131380593415738e-04, -2.591011385623818628e-04, -2.589887260814920577e-04, -2.588759008291937821e-04, -2.587626630186564162e-04, -2.586490128637027887e-04, -2.585349505788110745e-04, -2.584204763791163122e-04, -2.583055904804144160e-04, -2.581902930991439066e-04, -2.580745844523984881e-04, -2.579584647579322523e-04, -2.578419342341452042e-04, -2.577249931000859186e-04, -2.576076415754685080e-04, -2.574898798806505044e-04, -2.573717082366350824e-04, -2.572531268650864547e-04, -2.571341359883059651e-04, -2.570147358292632599e-04, -2.568949266115587199e-04, -2.567747085594555530e-04, -2.566540818978559958e-04, -2.565330468523135650e-04, -2.564116036490277453e-04, -2.562897525148562943e-04, -2.561674936772910657e-04, -2.560448273644704768e-04, -2.559217538051899716e-04, -2.557982732288741025e-04, -2.556743858656136638e-04, -2.555500919461254684e-04, -2.554253917017831389e-04, -2.553002853645964534e-04, -2.551747731672190434e-04, -2.550488553429488821e-04, -2.549225321257383124e-04, -2.547958037501649371e-04, -2.546686704514518926e-04, -2.545411324654727283e-04, -2.544131900287267410e-04, -2.542848433783749702e-04, -2.541560927521966133e-04, -2.540269383886280025e-04, -2.538973805267296996e-04, -2.537674194062099144e-04, -2.536370552674210356e-04, -2.535062883513413616e-04, -2.533751188995883282e-04, -2.532435471544256097e-04, -2.531115733587437663e-04, -2.529791977560688090e-04, -2.528464205905749389e-04, -2.527132421070633515e-04, -2.525796625509672778e-04, -2.524456821683557250e-04, -2.523113012059321754e-04, -2.521765199110443442e-04, -2.520413385316572913e-04, -2.519057573163719613e-04, -2.517697765144306585e-04, -2.516333963756946040e-04, -2.514966171506673545e-04, -2.513594390904765876e-04, -2.512218624468862452e-04, -2.510838874722810831e-04, -2.509455144196860244e-04, -2.508067435427408431e-04, -2.506675750957348590e-04, -2.505280093335641111e-04, -2.503880465117665406e-04, -2.502476868865000353e-04, -2.501069307145467667e-04, -2.499657782533217551e-04, -2.498242297608706470e-04, -2.496822854958523135e-04, -2.495399457175521865e-04, -2.493972106858889800e-04, -2.492540806613912719e-04, -2.491105559052301925e-04, -2.489666366791816942e-04, -2.488223232456567469e-04, -2.486776158676803580e-04, -2.485325148088959098e-04, -2.483870203335828862e-04, -2.482411327066322065e-04, -2.480948521935493704e-04, -2.479481790604704493e-04, -2.478011135741427879e-04, -2.476536560019293410e-04, -2.475058066118256952e-04, -2.473575656724370840e-04, -2.472089334529812611e-04, -2.470599102232945172e-04, -2.469104962538309759e-04, -2.467606918156719717e-04, -2.466104971804959634e-04, -2.464599126206009228e-04, -2.463089384089090514e-04, -2.461575748189454211e-04, -2.460058221248464312e-04, -2.458536806013762884e-04, -2.457011505239029372e-04, -2.455482321684033728e-04, -2.453949258114638578e-04, -2.452412317302871320e-04, -2.450871502026952318e-04, -2.449326815071028183e-04, -2.447778259225393493e-04, -2.446225837286505433e-04, -2.444669552056801106e-04, -2.443109406344835225e-04, -2.441545402965352211e-04, -2.439977544738998613e-04, -2.438405834492521514e-04, -2.436830275058808105e-04, -2.435250869276656648e-04, -2.433667619991129922e-04, -2.432080530053121821e-04, -2.430489602319709170e-04, -2.428894839653915642e-04, -2.427296244924781422e-04, -2.425693821007421749e-04, -2.424087570783062967e-04, -2.422477497138759278e-04, -2.420863602967645906e-04, -2.419245891168922825e-04, -2.417624364647644436e-04, -2.415999026315077884e-04, -2.414369879088255292e-04, -2.412736925890355665e-04, -2.411100169650382886e-04, -2.409459613303442725e-04, -2.407815259790568830e-04, -2.406167112058764737e-04, -2.404515173060912795e-04, -2.402859445755980712e-04, -2.401199933108771098e-04, -2.399536638089987063e-04, -2.397869563676464780e-04, -2.396198712850847678e-04, -2.394524088601670197e-04, -2.392845693923391131e-04, -2.391163531816405011e-04, -2.389477605287151061e-04, -2.387787917347761115e-04, -2.386094471016322524e-04, -2.384397269316916655e-04, -2.382696315279411801e-04, -2.380991611939500320e-04, -2.379283162338954232e-04, -2.377570969525308092e-04, -2.375855036551872545e-04, -2.374135366477985040e-04, -2.372411962368642293e-04, -2.370684827294950500e-04, -2.368953964333607627e-04, -2.367219376567329507e-04, -2.365481067084559811e-04, -2.363739038979568985e-04, -2.361993295352470511e-04, -2.360243839309342337e-04, -2.358490673961865299e-04, -2.356733802427559202e-04, -2.354973227829863054e-04, -2.353208953297837721e-04, -2.351440981966570337e-04, -2.349669316976697796e-04, -2.347893961474794352e-04, -2.346114918613122257e-04, -2.344332191549650189e-04, -2.342545783448327014e-04, -2.340755697478712075e-04, -2.338961936816096347e-04, -2.337164504641515452e-04, -2.335363404141845066e-04, -2.333558638509538273e-04, -2.331750210942966546e-04, -2.329938124646128907e-04, -2.328122382828709666e-04, -2.326302988706089800e-04, -2.324479945499401167e-04, -2.322653256435601042e-04, -2.320822924747127072e-04, -2.318988953672173475e-04, -2.317151346454713538e-04, -2.315310106344281691e-04, -2.313465236596054010e-04, -2.311616740471066143e-04, -2.309764621235899161e-04, -2.307908882162740542e-04, -2.306049526529444893e-04, -2.304186557619529333e-04, -2.302319978722276771e-04, -2.300449793132412269e-04, -2.298576004150309311e-04, -2.296698615082096596e-04, -2.294817629239350126e-04, -2.292933049939378082e-04, -2.291044880505049787e-04, -2.289153124264879462e-04, -2.287257784552831344e-04, -2.285358864708639790e-04, -2.283456368077411655e-04, -2.281550298010097909e-04, -2.279640657862948294e-04, -2.277727450997978607e-04, -2.275810680782629181e-04, -2.273890350589848367e-04, -2.271966463798358435e-04, -2.270039023792255501e-04, -2.268108033961172161e-04, -2.266173497700230870e-04, -2.264235418410224729e-04, -2.262293799497243438e-04, -2.260348644373170405e-04, -2.258399956455124104e-04, -2.256447739165902335e-04, -2.254491995933641235e-04, -2.252532730192086878e-04, -2.250569945380410952e-04, -2.248603644943320814e-04, -2.246633832330856739e-04, -2.244660510998685470e-04, -2.242683684407796910e-04, -2.240703356024605498e-04, -2.238719529321159458e-04, -2.236732207774833428e-04, -2.234741394868384296e-04, -2.232747094089996740e-04, -2.230749308933311953e-04, -2.228748042897523601e-04, -2.226743299487006207e-04, -2.224735082211581059e-04, -2.222723394586592638e-04, -2.220708240132650312e-04, -2.218689622375700436e-04, -2.216667544847280593e-04, -2.214642011084169400e-04, -2.212613024628461861e-04, -2.210580589027618965e-04, -2.208544707834492898e-04, -2.206505384607405917e-04, -2.204462622909774132e-04, -2.202416426310555009e-04, -2.200366798383896090e-04, -2.198313742709278381e-04, -2.196257262871533693e-04, -2.194197362460931656e-04, -2.192134045072837377e-04, -2.190067314307945091e-04, -2.187997173772373834e-04, -2.185923627077295298e-04, -2.183846677839493277e-04, -2.181766329680681431e-04, -2.179682586228092551e-04, -2.177595451114059787e-04, -2.175504927976125609e-04, -2.173411020457320176e-04, -2.171313732205756657e-04, -2.169213066874757544e-04, -2.167109028122853021e-04, -2.165001619613944410e-04, -2.162890845016908709e-04, -2.160776708006159662e-04, -2.158659212260989927e-04, -2.156538361466108834e-04, -2.154414159311240961e-04, -2.152286609491387156e-04, -2.150155715706845679e-04, -2.148021481662873390e-04, -2.145883911069930775e-04, -2.143743007643765974e-04, -2.141598775105151052e-04, -2.139451217179939727e-04, -2.137300337599381790e-04, -2.135146140099687532e-04, -2.132988628422167055e-04, -2.130827806313244377e-04, -2.128663677524486695e-04, -2.126496245812743713e-04, -2.124325514939683871e-04, -2.122151488672144814e-04, -2.119974170782191938e-04, -2.117793565046819423e-04, -2.115609675248035612e-04, -2.113422505173170385e-04, -2.111232058614473460e-04, -2.109038339369141766e-04, -2.106841351239601616e-04, -2.104641098033107542e-04, -2.102437583562262447e-04, -2.100230811644358407e-04, -2.098020786101968108e-04, -2.095807510762505465e-04, -2.093590989458376064e-04, -2.091371226027200500e-04, -2.089148224311465271e-04, -2.086921988158581590e-04, -2.084692521420963179e-04, -2.082459827956121407e-04, -2.080223911626298289e-04, -2.077984776299052227e-04, -2.075742425846537282e-04, -2.073496864146104097e-04, -2.071248095079904162e-04, -2.068996122534965169e-04, -2.066740950403495123e-04, -2.064482582582473878e-04, -2.062221022973738513e-04, -2.059956275484055700e-04, -2.057688344025217122e-04, -2.055417232513668125e-04, -2.053142944871050909e-04, -2.050865485023719887e-04, -2.048584856902872060e-04, -2.046301064444552983e-04, -2.044014111589745396e-04, -2.041724002284410423e-04, -2.039430740479121387e-04, -2.037134330129333499e-04, -2.034834775195488218e-04, -2.032532079642705876e-04, -2.030226247440867268e-04, -2.027917282564935383e-04, -2.025605188994513328e-04, -2.023289970713956537e-04, -2.020971631712419124e-04, -2.018650175983884509e-04, -2.016325607527263541e-04, -2.013997930345999576e-04, -2.011667148448339256e-04, -2.009333265847451774e-04, -2.006996286560989767e-04, -2.004656214611719243e-04, -2.002313054026778525e-04, -1.999966808838295705e-04, -1.997617483082917561e-04, -1.995265080802210436e-04, -1.992909606042204333e-04, -1.990551062853984350e-04, -1.988189455292969682e-04, -1.985824787419524840e-04, -1.983457063298555789e-04, -1.981086286999577165e-04, -1.978712462597034013e-04, -1.976335594169887082e-04, -1.973955685801694136e-04, -1.971572741580647091e-04, -1.969186765599760395e-04, -1.966797761956401295e-04, -1.964405734752937380e-04, -1.962010688095992275e-04, -1.959612626097050080e-04, -1.957211552872014108e-04, -1.954807472541524006e-04, -1.952400389230761143e-04, -1.949990307069552427e-04, -1.947577230192145867e-04, -1.945161162737548040e-04, -1.942742108849200447e-04, -1.940320072675032106e-04, -1.937895058367791040e-04, -1.935467070084598404e-04, -1.933036111987070180e-04, -1.930602188241344562e-04, -1.928165303018136159e-04, -1.925725460492821106e-04, -1.923282664845036725e-04, -1.920836920258958539e-04, -1.918388230923417633e-04, -1.915936601031567805e-04, -1.913482034780996158e-04, -1.911024536374015561e-04, -1.908564110017256445e-04, -1.906100759921733486e-04, -1.903634490302933693e-04, -1.901165305380821829e-04, -1.898693209379968621e-04, -1.896218206529044163e-04, -1.893740301061409620e-04, -1.891259497214685175e-04, -1.888775799230826466e-04, -1.886289211356479930e-04, -1.883799737842508195e-04, -1.881307382944107716e-04, -1.878812150920847808e-04, -1.876314046036839508e-04, -1.873813072560275331e-04, -1.871309234764089553e-04, -1.868802536925184626e-04, -1.866292983325077098e-04, -1.863780578249449836e-04, -1.861265325988257732e-04, -1.858747230836054864e-04, -1.856226297091536422e-04, -1.853702529057641162e-04, -1.851175931041625403e-04, -1.848646507355179854e-04, -1.846114262314016256e-04, -1.843579200238495139e-04, -1.841041325452873656e-04, -1.838500642285932250e-04, -1.835957155070493541e-04, -1.833410868143724550e-04, -1.830861785847215839e-04, -1.828309912526498505e-04, -1.825755252531381092e-04, -1.823197810216068587e-04, -1.820637589938788904e-04, -1.818074596061934113e-04, -1.815508832952359396e-04, -1.812940304980939347e-04, -1.810369016522687773e-04, -1.807794971956760673e-04, -1.805218175666561953e-04, -1.802638632039804678e-04, -1.800056345468087425e-04, -1.797471320347186741e-04, -1.794883561077192133e-04, -1.792293072062053135e-04, -1.789699857710204899e-04, -1.787103922433830663e-04, -1.784505270649477580e-04, -1.781903906777573159e-04, -1.779299835242861665e-04, -1.776693060473888571e-04, -1.774083586903668435e-04, -1.771471418968883940e-04, -1.768856561110575991e-04, -1.766239017773640104e-04, -1.763618793406989034e-04, -1.760995892463835752e-04, -1.758370319401270337e-04, -1.755742078680327738e-04, -1.753111174766080473e-04, -1.750477612127767648e-04, -1.747841395238335527e-04, -1.745202528575137929e-04, -1.742561016619105724e-04, -1.739916863855429886e-04, -1.737270074773104498e-04, -1.734620653865020536e-04, -1.731968605628323116e-04, -1.729313934563921160e-04, -1.726656645176551910e-04, -1.723996741975113503e-04, -1.721334229472252706e-04, -1.718669112184479839e-04, -1.716001394632496750e-04, -1.713331081340738193e-04, -1.710658176837471308e-04, -1.707982685654847927e-04, -1.705304612328965028e-04, -1.702623961399952004e-04, -1.699940737411510968e-04, -1.697254944911265860e-04, -1.694566588450859760e-04, -1.691875672585484343e-04, -1.689182201874565360e-04, -1.686486180880956542e-04, -1.683787614171600958e-04, -1.681086506317096523e-04, -1.678382861891829626e-04, -1.675676685474039097e-04, -1.672967981645937636e-04, -1.670256754993208206e-04, -1.667543010105363983e-04, -1.664826751575870605e-04, -1.662107984001632525e-04, -1.659386711983679586e-04, -1.656662940126581011e-04, -1.653936673038596374e-04, -1.651207915331700811e-04, -1.648476671621764453e-04, -1.645742946528067790e-04, -1.643006744674006673e-04, -1.640268070686262355e-04, -1.637526929195483999e-04, -1.634783324835826265e-04, -1.632037262245063691e-04, -1.629288746064915959e-04, -1.626537780940582765e-04, -1.623784371520851433e-04, -1.621028522458143261e-04, -1.618270238408692685e-04, -1.615509524032050445e-04, -1.612746383991818945e-04, -1.609980822954770253e-04, -1.607212845591580921e-04, -1.604442456576273619e-04, -1.601669660586644585e-04, -1.598894462304000972e-04, -1.596116866413268458e-04, -1.593336877602767089e-04, -1.590554500564601858e-04, -1.587769739994237162e-04, -1.584982600590612262e-04, -1.582193087056507207e-04, -1.579401204098036511e-04, -1.576606956424759197e-04, -1.573810348749738429e-04, -1.571011385789607649e-04, -1.568210072264660025e-04, -1.565406412898367333e-04, -1.562600412417732866e-04, -1.559792075553411512e-04, -1.556981407039209392e-04, -1.554168411612799703e-04, -1.551353094014886261e-04, -1.548535458989893049e-04, -1.545715511285503704e-04, -1.542893255652796230e-04, -1.540068696846338676e-04, -1.537241839624273166e-04, -1.534412688747775148e-04, -1.531581248981697414e-04, -1.528747525094106331e-04, -1.525911521856352314e-04, -1.523073244043475591e-04, -1.520232696433670332e-04, -1.517389883808423700e-04, -1.514544810952542957e-04, -1.511697482654371491e-04, -1.508847903705252133e-04, -1.505996078900283394e-04, -1.503142013037413063e-04, -1.500285710918219386e-04, -1.497427177347376002e-04, -1.494566417132763621e-04, -1.491703435085862505e-04, -1.488838236021222563e-04, -1.485970824756589661e-04, -1.483101206112958205e-04, -1.480229384914751121e-04, -1.477355365989301873e-04, -1.474479154167621813e-04, -1.471600754283490802e-04, -1.468720171174206664e-04, -1.465837409680026827e-04, -1.462952474644513094e-04, -1.460065370914614860e-04, -1.457176103340128090e-04, -1.454284676774084822e-04, -1.451391096072869721e-04, -1.448495366095692066e-04, -1.445597491705361774e-04, -1.442697477767368637e-04, -1.439795329150648584e-04, -1.436891050727070313e-04, -1.433984647371604150e-04, -1.431076123962400388e-04, -1.428165485380877375e-04, -1.425252736511236067e-04, -1.422337882240809405e-04, -1.419420927460196221e-04, -1.416501877062734311e-04, -1.413580735945261819e-04, -1.410657509007222496e-04, -1.407732201151405400e-04, -1.404804817283374335e-04, -1.401875362311984469e-04, -1.398943841148761360e-04, -1.396010258708698932e-04, -1.393074619909328410e-04, -1.390136929671497866e-04, -1.387197192918836349e-04, -1.384255414577883721e-04, -1.381311599578456304e-04, -1.378365752853147330e-04, -1.375417879337416393e-04, -1.372467983969675911e-04, -1.369516071691446167e-04, -1.366562147446858202e-04, -1.363606216183404357e-04, -1.360648282851031335e-04, -1.357688352402907272e-04, -1.354726429794888859e-04, -1.351762519985659028e-04, -1.348796627937085826e-04, -1.345828758613719887e-04, -1.342858916982819643e-04, -1.339887108014765210e-04, -1.336913336682449347e-04, -1.333937607962043981e-04, -1.330959926832097067e-04, -1.327980298274288821e-04, -1.324998727272909676e-04, -1.322015218815054353e-04, -1.319029777890668755e-04, -1.316042409492671937e-04, -1.313053118616439485e-04, -1.310061910260159679e-04, -1.307068789424993679e-04, -1.304073761114504153e-04, -1.301076830335463549e-04, -1.298078002096908674e-04, -1.295077281410935950e-04, -1.292074673292153628e-04, -1.289070182757874497e-04, -1.286063814828178505e-04, -1.283055574526029575e-04, -1.280045466876746790e-04, -1.277033496908381964e-04, -1.274019669651853270e-04, -1.271003990140403411e-04, -1.267986463410317904e-04, -1.264967094500327410e-04, -1.261945888451720770e-04, -1.258922850308409505e-04, -1.255897985117125962e-04, -1.252871297926868742e-04, -1.249842793789691995e-04, -1.246812477759790634e-04, -1.243780354894263873e-04, -1.240746430252577743e-04, -1.237710708896699256e-04, -1.234673195891486451e-04, -1.231633896304138700e-04, -1.228592815204335761e-04, -1.225549957664272196e-04, -1.222505328758878281e-04, -1.219458933565258118e-04, -1.216410777163485168e-04, -1.213360864635666989e-04, -1.210309201066726679e-04, -1.207255791543800056e-04, -1.204200641156695766e-04, -1.201143754997623423e-04, -1.198085138161302161e-04, -1.195024795744705035e-04, -1.191962732847503002e-04, -1.188898954571459394e-04, -1.185833466021239002e-04, -1.182766272303430535e-04, -1.179697378527376982e-04, -1.176626789804604374e-04, -1.173554511249031980e-04, -1.170480547977013241e-04, -1.167404905107483488e-04, -1.164327587761395619e-04, -1.161248601062119760e-04, -1.158167950135582990e-04, -1.155085640109696345e-04, -1.152001676115180028e-04, -1.148916063284591559e-04, -1.145828806753139195e-04, -1.142739911658064344e-04, -1.139649383139164964e-04, -1.136557226338188949e-04, -1.133463446399637659e-04, -1.130368048469791362e-04, -1.127271037697544876e-04, -1.124172419233824139e-04, -1.121072198231737587e-04, -1.117970379846961858e-04, -1.114866969237195767e-04, -1.111761971562283760e-04, -1.108655391984279213e-04, -1.105547235667635788e-04, -1.102437507778658018e-04, -1.099326213486309710e-04, -1.096213357961247655e-04, -1.093098946376633692e-04, -1.089982983907584340e-04, -1.086865475731295215e-04, -1.083746427027431063e-04, -1.080625842977596813e-04, -1.077503728765441386e-04, -1.074380089576723422e-04, -1.071254930599385013e-04, -1.068128257023657812e-04, -1.065000074041458323e-04, -1.061870386847119194e-04, -1.058739200636839257e-04, -1.055606520608874210e-04, -1.052472351963604246e-04, -1.049336699903659278e-04, -1.046199569633365179e-04, -1.043060966359133290e-04, -1.039920895289608675e-04, -1.036779361635097128e-04, -1.033636370608391193e-04, -1.030491927423784224e-04, -1.027346037297911178e-04, -1.024198705449165048e-04, -1.021049937097904755e-04, -1.017899737466524269e-04, -1.014748111779568751e-04, -1.011595065263178359e-04, -1.008440603145491302e-04, -1.005284730656783428e-04, -1.002127453028892377e-04, -9.989687754960499793e-05, -9.958087032938998332e-05, -9.926472416603215670e-05, -9.894843958347933300e-05, -9.863201710589492076e-05, -9.831545725759292418e-05, -9.799876056312209081e-05, -9.768192754716691030e-05, -9.736495873463004087e-05, -9.704785465057650003e-05, -9.673061582024560434e-05, -9.641324276909375474e-05, -9.609573602273484608e-05, -9.577809610695682833e-05, -9.546032354772509469e-05, -9.514241887118969154e-05, -9.482438260369923690e-05, -9.450621527174193979e-05, -9.418791740198883286e-05, -9.386948952130594250e-05, -9.355093215670411740e-05, -9.323224583538826491e-05, -9.291343108472680358e-05, -9.259448843226728931e-05, -9.227541840570456684e-05, -9.195622153293080570e-05, -9.163689834197157296e-05, -9.131744936106859850e-05, -9.099787511858008259e-05, -9.067817614306561609e-05, -9.035835296322774189e-05, -9.003840610793305624e-05, -8.971833610621704697e-05, -8.939814348729963826e-05, -8.907782878052542398e-05, -8.875739251540677830e-05, -8.843683522163639174e-05, -8.811615742903006600e-05, -8.779535966761080736e-05, -8.747444246750844311e-05, -8.715340635904416224e-05, -8.683225187267321532e-05, -8.651097953900421334e-05, -8.618958988880650023e-05, -8.586808345302298718e-05, -8.554646076271241878e-05, -8.522472234909139949e-05, -8.490286874354726850e-05, -8.458090047758073189e-05, -8.425881808288308492e-05, -8.393662209127151228e-05, -8.361431303470189523e-05, -8.329189144527608928e-05, -8.296935785524672184e-05, -8.264671279703176112e-05, -8.232395680315647069e-05, -8.200109040629451431e-05, -8.167811413928232158e-05, -8.135502853507443238e-05, -8.103183412675794384e-05, -8.070853144759395400e-05, -8.038512103095901489e-05, -8.006160341035993186e-05, -7.973797911943830371e-05, -7.941424869197816628e-05, -7.909041266191888095e-05, -7.876647156329695358e-05, -7.844242593028797966e-05, -7.811827629722115898e-05, -7.779402319852635954e-05, -7.746966716878519695e-05, -7.714520874270035158e-05, -7.682064845511002904e-05, -7.649598684095674876e-05, -7.617122443533878937e-05, -7.584636177344309012e-05, -7.552139939063129588e-05, -7.519633782233805901e-05, -7.487117760415669127e-05, -7.454591927178008844e-05, -7.422056336102233294e-05, -7.389511040782380323e-05, -7.356956094826639324e-05, -7.324391551851378642e-05, -7.291817465485348209e-05, -7.259233889371181166e-05, -7.226640877159390094e-05, -7.194038482516989131e-05, -7.161426759117345839e-05, -7.128805760648709812e-05, -7.096175540807590906e-05, -7.063536153304578701e-05, -7.030887651857560810e-05, -6.998230090200480526e-05, -6.965563522073053165e-05, -6.932888001229342101e-05, -6.900203581431897301e-05, -6.867510316453126842e-05, -6.834808260079613387e-05, -6.802097466106029103e-05, -6.769377988336752478e-05, -6.736649880586307421e-05, -6.703913196680131692e-05, -6.671167990455827796e-05, -6.638414315757354379e-05, -6.605652226439307460e-05, -6.572881776368160497e-05, -6.540103019417965518e-05, -6.507316009471627064e-05, -6.474520800425172587e-05, -6.441717446181924865e-05, -6.408906000653786779e-05, -6.376086517761902681e-05, -6.343259051437359056e-05, -6.310423655622428643e-05, -6.277580384264044898e-05, -6.244729291321684140e-05, -6.211870430761415990e-05, -6.179003856558040611e-05, -6.146129622695725670e-05, -6.113247783169391410e-05, -6.080358391978698748e-05, -6.047461503132480273e-05, -6.014557170649987758e-05, -5.981645448555025270e-05, -5.948726390884605166e-05, -5.915800051678651568e-05, -5.882866484988667874e-05, -5.849925744871786526e-05, -5.816977885392876423e-05, -5.784022960625230720e-05, -5.751061024651867184e-05, -5.718092131559657920e-05, -5.685116335443588935e-05, -5.652133690408138423e-05, -5.619144250561362446e-05, -5.586148070023554997e-05, -5.553145202916890484e-05, -5.520135703374234903e-05, -5.487119625532311298e-05, -5.454097023536103657e-05, -5.421067951539501335e-05, -5.388032463699293247e-05, -5.354990614179545340e-05, -5.321942457152899599e-05, -5.288888046796164734e-05, -5.255827437291638228e-05, -5.222760682831422140e-05, -5.189687837611547407e-05, -5.156608955833204413e-05, -5.123524091703525647e-05, -5.090433299436161009e-05, -5.057336633252665586e-05, -5.024234147376562296e-05, -4.991125896037614315e-05, -4.958011933473263681e-05, -4.924892313923369527e-05, -4.891767091635230644e-05, -4.858636320860608670e-05, -4.825500055857098931e-05, -4.792358350885068919e-05, -4.759211260212778443e-05, -4.726058838109597939e-05, -4.692901138854793224e-05, -4.659738216727144254e-05, -4.626570126013639073e-05, -4.593396921003550006e-05, -4.560218655990518034e-05, -4.527035385273233808e-05, -4.493847163156782063e-05, -4.460654043946660208e-05, -4.427456081953187641e-05, -4.394253331492789175e-05, -4.361045846882040053e-05, -4.327833682446490681e-05, -4.294616892510155288e-05, -4.261395531404329193e-05, -4.228169653461612829e-05, -4.194939313017242592e-05, -4.161704564413504226e-05, -4.128465461993638928e-05, -4.095222060102601613e-05, -4.061974413091341477e-05, -4.028722575311538198e-05, -3.995466601117040538e-05, -3.962206544868127929e-05, -3.928942460925607000e-05, -3.895674403652138365e-05, -3.862402427412900017e-05, -3.829126586576240567e-05, -3.795846935515062272e-05, -3.762563528600851152e-05, -3.729276420207967038e-05, -3.695985664715088277e-05, -3.662691316500658076e-05, -3.629393429944266866e-05, -3.596092059431031798e-05, -3.562787259345569934e-05, -3.529479084073388739e-05, -3.496167588001534564e-05, -3.462852825519276378e-05, -3.429534851019437977e-05, -3.396213718892455877e-05, -3.362889483530671404e-05, -3.329562199329780812e-05, -3.296231920683482034e-05, -3.262898701987936175e-05, -3.229562597642330620e-05, -3.196223662042914566e-05, -3.162881949587317533e-05, -3.129537514675989325e-05, -3.096190411706133914e-05, -3.062840695080567372e-05, -3.029488419197183497e-05, -2.996133638457837488e-05, -2.962776407262278819e-05, -2.929416780010280345e-05, -2.896054811102337947e-05, -2.862690554941012234e-05, -2.829324065924938663e-05, -2.795955398453190099e-05, -2.762584606926649688e-05, -2.729211745742007083e-05, -2.695836869300575383e-05, -2.662460031997796391e-05, -2.629081288232069753e-05, -2.595700692397980415e-05, -2.562318298891412332e-05, -2.528934162106489327e-05, -2.495548336436958459e-05, -2.462160876273161042e-05, -2.428771836007102296e-05, -2.395381270027199753e-05, -2.361989232719651039e-05, -2.328595778472830992e-05, -2.295200961671249273e-05, -2.261804836696936443e-05, -2.228407457930099572e-05, -2.195008879749805965e-05, -2.161609156535347555e-05, -2.128208342660224269e-05, -2.094806492496502850e-05, -2.061403660416233780e-05, -2.027999900786884078e-05, -1.994595267972745062e-05, -1.961189816339302372e-05, -1.927783600247211186e-05, -1.894376674052934207e-05, -1.860969092113115404e-05, -1.827560908777812557e-05, -1.794152178399327404e-05, -1.760742955321708197e-05, -1.727333293889572052e-05, -1.693923248442088988e-05, -1.660512873315105604e-05, -1.627102222841807460e-05, -1.593691351354131592e-05, -1.560280313176698702e-05, -1.526869162631224846e-05, -1.493457954037883127e-05, -1.460046741709296364e-05, -1.426635579959357249e-05, -1.393224523092729372e-05, -1.359813625413695495e-05, -1.326402941220102119e-05, -1.292992524804766400e-05, -1.259582430459864967e-05, -1.226172712470869170e-05, -1.192763425117968088e-05, -1.159354622676704489e-05, -1.125946359420139502e-05, -1.092538689612796163e-05, -1.059131667518767556e-05, -1.025725347394914290e-05, -9.923197834922937795e-06, -9.589150300567870526e-06, -9.255111413297758676e-06, -8.921081715495301532e-06, -8.587061749451747623e-06, -8.253052057410660908e-06, -7.919053181581846003e-06, -7.585065664095887920e-06, -7.251090047018227216e-06, -6.917126872392772019e-06, -6.583176682181598609e-06, -6.249240018278918982e-06, -5.915317422517673315e-06, -5.581409436676058891e-06, -5.247516602491567130e-06, -4.913639461600560496e-06, -4.579778555582025982e-06, -4.245934425971644326e-06, -3.912107614208753047e-06, -3.578298661687579650e-06, -3.244508109726644687e-06, -2.910736499582715769e-06, -2.576984372420182673e-06, -2.243252269362285890e-06, -1.909540731423252348e-06, -1.575850299596733274e-06, -1.242181514750726581e-06, -9.085349177160260594e-07, -5.749110492258002939e-07, -2.413104499296002059e-07, 9.226633956285510010e-08, 4.258187787420949866e-07, 7.593463271848801846e-07, 1.092848444547635933e-06, 1.426324590545001595e-06, 1.759774225010240484e-06, 2.093196807806801940e-06, 2.426591798933389104e-06, 2.759958658435521050e-06, 3.093296846465959480e-06, 3.426605823270639300e-06, 3.759885049144973574e-06, 4.093133984494205044e-06, 4.426352089826828500e-06, 4.759538825710862701e-06, 5.092693652826744619e-06, 5.425816031953349159e-06, 5.758905423924274639e-06, 6.091961289688126967e-06, 6.424983090294591035e-06, 6.757970286887799295e-06, 7.090922340699785046e-06, 7.423838713036544502e-06, 7.756718865338332834e-06, 8.089562259135873415e-06, 8.422368356036455468e-06, 8.755136617769368910e-06, 9.087866506171858008e-06, 9.420557483145485631e-06, 9.753209010716330183e-06, 1.008582055102119421e-05, 1.041839156630076040e-05, 1.075092151889328960e-05, 1.108340987122050255e-05, 1.141585608584786482e-05, 1.174825962544091559e-05, 1.208061995275124238e-05, 1.241293653066954602e-05, 1.274520882218153736e-05, 1.307743629036174879e-05, 1.340961839843363803e-05, 1.374175460972593886e-05, 1.407384438765863928e-05, 1.440588719580330215e-05, 1.473788249779474168e-05, 1.506982975743602160e-05, 1.540172843860995551e-05, 1.573357800533963243e-05, 1.606537792177414260e-05, 1.639712765214521451e-05, 1.672882666082725427e-05, 1.706047441232338310e-05, 1.739207037125902022e-05, 1.772361400236024967e-05, 1.805510477051418996e-05, 1.838654214068085189e-05, 1.871792557799775050e-05, 1.904925454769194234e-05, 1.938052851514731044e-05, 1.971174694585385074e-05, 2.004290930543795179e-05, 2.037401505964867623e-05, 2.070506367438795922e-05, 2.103605461565985420e-05, 2.136698734962303879e-05, 2.169786134257706574e-05, 2.202867606091862891e-05, 2.235943097120192627e-05, 2.269012554012420270e-05, 2.302075923451973944e-05, 2.335133152135287121e-05, 2.368184186770444378e-05, 2.401228974083158740e-05, 2.434267460812422680e-05, 2.467299593709133885e-05, 2.500325319540580809e-05, 2.533344585089086063e-05, 2.566357337147642838e-05, 2.599363522525907161e-05, 2.632363088049542285e-05, 2.665355980555890014e-05, 2.698342146900688693e-05, 2.731321533949296928e-05, 2.764294088587119884e-05, 2.797259757710855030e-05, 2.830218488234418321e-05, 2.863170227087635024e-05, 2.896114921211846667e-05, 2.929052517565918870e-05, 2.961982963124832566e-05, 2.994906204879049739e-05, 3.027822189832382629e-05, 3.060730865007974460e-05, 3.093632177439521811e-05, 3.126526074181725645e-05, 3.159412502301471663e-05, 3.192291408883858128e-05, 3.225162741030772855e-05, 3.258026445856598407e-05, 3.290882470494150143e-05, 3.323730762093309439e-05, 3.356571267820356909e-05, 3.389403934855871758e-05, 3.422228710400688801e-05, 3.455045541667871295e-05, 3.487854375889458072e-05, 3.520655160315053390e-05, 3.553447842211177098e-05, 3.586232368860599198e-05, 3.619008687560998155e-05, 3.651776745630861657e-05, 3.684536490405235194e-05, 3.717287869234269226e-05, 3.750030829487772152e-05, 3.782765318553749350e-05, 3.815491283834154460e-05, 3.848208672750843683e-05, 3.880917432744119568e-05, 3.913617511272142149e-05, 3.946308855810302821e-05, 3.978991413849768122e-05, 4.011665132903465203e-05, 4.044329960501795847e-05, 4.076985844191207347e-05, 4.109632731540165790e-05, 4.142270570130437713e-05, 4.174899307567454397e-05, 4.207518891471558292e-05, 4.240129269484723036e-05, 4.272730389264752296e-05, 4.305322198491974041e-05, 4.337904644860509322e-05, 4.370477676088635894e-05, 4.403041239910078004e-05, 4.435595284079926135e-05, 4.468139756373295987e-05, 4.500674604580983529e-05, 4.533199776515413213e-05, 4.565715220009275937e-05, 4.598220882914856844e-05, 4.630716713101931290e-05, 4.663202658463712374e-05, 4.695678666908157663e-05, 4.728144686368239983e-05, 4.760600664793351042e-05, 4.793046550155860862e-05, 4.825482290446183974e-05, 4.857907833675676953e-05, 4.890323127875394974e-05, 4.922728121098933772e-05, 4.955122761417561579e-05, 4.987506996925312162e-05, 5.019880775737597044e-05, 5.052244045987004900e-05, 5.084596755829155567e-05, 5.116938853441293974e-05, 5.149270287021719578e-05, 5.181591004789070791e-05, 5.213900954981022583e-05, 5.246200085860130329e-05, 5.278488345709553991e-05, 5.310765682831725901e-05, 5.343032045552779052e-05, 5.375287382221134919e-05, 5.407531641203284568e-05, 5.439764770889656887e-05, 5.471986719693253180e-05, 5.504197436048958016e-05, 5.536396868412984251e-05, 5.568584965261460184e-05, 5.600761675096983550e-05, 5.632926946440838990e-05, 5.665080727838796493e-05, 5.697222967859749373e-05, 5.729353615091512978e-05, 5.761472618146606885e-05, 5.793579925660982986e-05, 5.825675486293290949e-05, 5.857759248722892766e-05, 5.889831161655609032e-05, 5.921891173815268936e-05, 5.953939233953753368e-05, 5.985975290842550334e-05, 6.017999293278516142e-05, 6.050011190082528272e-05, 6.082010930095305107e-05, 6.113998462183188793e-05, 6.145973735236768978e-05, 6.177936698170334617e-05, 6.209887299919698107e-05, 6.241825489448099454e-05, 6.273751215737615318e-05, 6.305664427799307151e-05, 6.337565074664771193e-05, 6.369453105392502740e-05, 6.401328469063834452e-05, 6.433191114782242463e-05, 6.465040991679133311e-05, 6.496878048909652138e-05, 6.528702235651365389e-05, 6.560513501108554250e-05, 6.592311794510982725e-05, 6.624097065109548627e-05, 6.655869262182187061e-05, 6.687628335032475869e-05, 6.719374232989017636e-05, 6.751106905404791875e-05, 6.782826301655825528e-05, 6.814532371147008353e-05, 6.846225063307800841e-05, 6.877904327590996869e-05, 6.909570113478406275e-05, 6.941222370472479393e-05, 6.972861048106306114e-05, 7.004486095935134708e-05, 7.036097463542933964e-05, 7.067695100536679437e-05, 7.099278956552900681e-05, 7.130848981249254283e-05, 7.162405124314456513e-05, 7.193947335459929544e-05, 7.225475564425534172e-05, 7.256989760978213209e-05, 7.288489874907801039e-05, 7.319975856032881023e-05, 7.351447654199281167e-05, 7.382905219279560483e-05, 7.414348501170992369e-05, 7.445777449801146898e-05, 7.477192015119654949e-05, 7.508592147108116455e-05, 7.539977795771688352e-05, 7.571348911144791549e-05, 7.602705443289880355e-05, 7.634047342293130071e-05, 7.665374558270347241e-05, 7.696687041365474810e-05, 7.727984741750047314e-05, 7.759267609621114633e-05, 7.790535595207079061e-05, 7.821788648759787411e-05, 7.853026720561189368e-05, 7.884249760921894145e-05, 7.915457720180536230e-05, 7.946650548703168223e-05, 7.977828196881990976e-05, 8.008990615140948064e-05, 8.040137753931679012e-05, 8.071269563732157257e-05, 8.102385995052329359e-05, 8.133486998425914366e-05, 8.164572524420168410e-05, 8.195642523627631217e-05, 8.226696946671726012e-05, 8.257735744204833706e-05, 8.288758866907605779e-05, 8.319766265487663244e-05, 8.350757890685300898e-05, 8.381733693269281978e-05, 8.412693624035611655e-05, 8.443637633813191152e-05, 8.474565673455434144e-05, 8.505477693850240070e-05, 8.536373645911535994e-05, 8.567253480585876693e-05, 8.598117148846645523e-05, 8.628964601700662637e-05, 8.659795790179739049e-05, 8.690610665350603857e-05, 8.721409178306562665e-05, 8.752191280173135437e-05, 8.782956922106853026e-05, 8.813706055290952896e-05, 8.844438630941286669e-05, 8.875154600304784622e-05, 8.905853914658924426e-05, 8.936536525309747060e-05, 8.967202383597399793e-05, 8.997851440888057523e-05, 9.028483648583465109e-05, 9.059098958112961710e-05, 9.089697320939538769e-05, 9.120278688555260606e-05, 9.150843012484069798e-05, 9.181390244280350607e-05, 9.211920335531981012e-05, 9.242433237855348087e-05, 9.272928902900506095e-05, 9.303407282349607102e-05, 9.333868327913071039e-05, 9.364311991335002639e-05, 9.394738224392036770e-05, 9.425146978892572709e-05, 9.455538206676291680e-05, 9.485911859612821925e-05, 9.516267889607243739e-05, 9.546606248596178218e-05, 9.576926888546328999e-05, 9.607229761460147222e-05, 9.637514819367712208e-05, 9.667782014336315807e-05, 9.698031298462299712e-05, 9.728262623876796306e-05, 9.758475942743473526e-05, 9.788671207258143193e-05, 9.818848369647396272e-05, 9.849007382174755718e-05, 9.879148197133435366e-05, 9.909270766851632187e-05, 9.939375043691431246e-05, 9.969460980044641011e-05, 9.999528528338455600e-05, 1.002957764103410766e-04, 1.005960827062618937e-04, 1.008962036964084863e-04, 1.011961389064114093e-04, 1.014958878621903743e-04, 1.017954500900498086e-04, 1.020948251165986647e-04, 1.023940124688049014e-04, 1.026930116739824603e-04, 1.029918222597517053e-04, 1.032904437540944464e-04, 1.035888756853410917e-04, 1.038871175821642776e-04, 1.041851689735598412e-04, 1.044830293889012745e-04, 1.047806983578598047e-04, 1.050781754104985983e-04, 1.053754600771944543e-04, 1.056725518886965408e-04, 1.059694503760897765e-04, 1.062661550707860481e-04, 1.065626655045809687e-04, 1.068589812096125289e-04, 1.071551017183501733e-04, 1.074510265636467748e-04, 1.077467552786616831e-04, 1.080422873969536543e-04, 1.083376224524009861e-04, 1.086327599792569069e-04, 1.089276995121291926e-04, 1.092224405859753287e-04, 1.095169827360885915e-04, 1.098113254981533833e-04, 1.101054684082045885e-04, 1.103994110026167445e-04, 1.106931528181560165e-04, 1.109866933919032456e-04, 1.112800322613458759e-04, 1.115731689643003119e-04, 1.118661030389707367e-04, 1.121588340238990081e-04, 1.124513614580230293e-04, 1.127436848805992830e-04, 1.130358038312959909e-04, 1.133277178501135339e-04, 1.136194264774390819e-04, 1.139109292540337596e-04, 1.142022257209937916e-04, 1.144933154198044954e-04, 1.147841978923260653e-04, 1.150748726807899260e-04, 1.153653393277785942e-04, 1.156555973762787907e-04, 1.159456463696040285e-04, 1.162354858514862816e-04, 1.165251153659992514e-04, 1.168145344576102180e-04, 1.171037426711688868e-04, 1.173927395518673813e-04, 1.176815246452950496e-04, 1.179700974974310377e-04, 1.182584576546068570e-04, 1.185466046635647285e-04, 1.188345380713815122e-04, 1.191222574255597122e-04, 1.194097622739498615e-04, 1.196970521648041495e-04, 1.199841266467570279e-04, 1.202709852688189907e-04, 1.205576275803652844e-04, 1.208440531311880855e-04, 1.211302614714579570e-04, 1.214162521517119360e-04, 1.217020247229062932e-04, 1.219875787363390942e-04, 1.222729137437411910e-04, 1.225580292972012358e-04, 1.228429249492145922e-04, 1.231276002526685356e-04, 1.234120547608333362e-04, 1.236962880273521209e-04, 1.239802996062923737e-04, 1.242640890521073645e-04, 1.245476559196257956e-04, 1.248309997641017287e-04, 1.251141201411460095e-04, 1.253970166067844890e-04, 1.256796887174452574e-04, 1.259621360299544696e-04, 1.262443581015157998e-04, 1.265263544897635942e-04, 1.268081247526870858e-04, 1.270896684487188917e-04, 1.273709851366615321e-04, 1.276520743757367606e-04, 1.279329357255753195e-04, 1.282135687461780972e-04, 1.284939729979689567e-04, 1.287741480417811018e-04, 1.290540934388533087e-04, 1.293338087508097607e-04, 1.296132935397130924e-04, 1.298925473679873031e-04, 1.301715697985095341e-04, 1.304503603945315730e-04, 1.307289187197406229e-04, 1.310072443382132783e-04, 1.312853368144431445e-04, 1.315631957133279095e-04, 1.318408206001955537e-04, 1.321182110407615785e-04, 1.323953666011851138e-04, 1.326722868479949212e-04, 1.329489713481777561e-04, 1.332254196691036940e-04, 1.335016313785772769e-04, 1.337776060448192181e-04, 1.340533432364608723e-04, 1.343288425225320657e-04, 1.346041034725118637e-04, 1.348791256562925211e-04, 1.351539086441661463e-04, 1.354284520068773940e-04, 1.357027553155467844e-04, 1.359768181417612346e-04, 1.362506400574977846e-04, 1.365242206351755037e-04, 1.367975594476366252e-04, 1.370706560681411799e-04, 1.373435100703556658e-04, 1.376161210284092913e-04, 1.378884885168261314e-04, 1.381606121105765457e-04, 1.384324913850634091e-04, 1.387041259160869838e-04, 1.389755152798956598e-04, 1.392466590531727820e-04, 1.395175568130317982e-04, 1.397882081369988306e-04, 1.400586126030613297e-04, 1.403287697895965163e-04, 1.405986792754576034e-04, 1.408683406398999886e-04, 1.411377534626311004e-04, 1.414069173237999090e-04, 1.416758318039594935e-04, 1.419444964841181083e-04, 1.422129109457257660e-04, 1.424810747706704156e-04, 1.427489875412714371e-04, 1.430166488402690708e-04, 1.432840582508725558e-04, 1.435512153567255437e-04, 1.438181197418926820e-04, 1.440847709909061261e-04, 1.443511686887259931e-04, 1.446173124207371906e-04, 1.448832017727982055e-04, 1.451488363312049463e-04, 1.454142156826797923e-04, 1.456793394144200306e-04, 1.459442071140262982e-04, 1.462088183695881807e-04, 1.464731727696116242e-04, 1.467372699030689172e-04, 1.470011093593791480e-04, 1.472646907284056296e-04, 1.475280136004419678e-04, 1.477910775662628559e-04, 1.480538822170877271e-04, 1.483164271445681773e-04, 1.485787119408391130e-04, 1.488407361984454857e-04, 1.491024995104272123e-04, 1.493640014702487834e-04, 1.496252416718527414e-04, 1.498862197096127074e-04, 1.501469351783882961e-04, 1.504073876734534504e-04, 1.506675767905815775e-04, 1.509275021259724476e-04, 1.511871632763036927e-04, 1.514465598387164684e-04, 1.517056914107821960e-04, 1.519645575905504298e-04, 1.522231579765372024e-04, 1.524814921677201452e-04, 1.527395597635319564e-04, 1.529973603638516461e-04, 1.532548935690506418e-04, 1.535121589799566576e-04, 1.537691561978470262e-04, 1.540258848244792193e-04, 1.542823444620840170e-04, 1.545385347133279943e-04, 1.547944551813630154e-04, 1.550501054698193485e-04, 1.553054851827732484e-04, 1.555605939247974804e-04, 1.558154313008942079e-04, 1.560699969165763078e-04, 1.563242903777977376e-04, 1.565783112910013215e-04, 1.568320592631016743e-04, 1.570855339014798346e-04, 1.573387348139725311e-04, 1.575916616089190203e-04, 1.578443138951268797e-04, 1.580966912818617353e-04, 1.583487933788924181e-04, 1.586006197964242323e-04, 1.588521701451791853e-04, 1.591034440363271957e-04, 1.593544410815335812e-04, 1.596051608929429581e-04, 1.598556030831715707e-04, 1.601057672652991056e-04, 1.603556530529137128e-04, 1.606052600600784775e-04, 1.608545879013215530e-04, 1.611036361916795567e-04, 1.613524045466400254e-04, 1.616008925821889308e-04, 1.618490999148023313e-04, 1.620970261614404625e-04, 1.623446709395310412e-04, 1.625920338670165633e-04, 1.628391145622845083e-04, 1.630859126442505249e-04, 1.633324277322876052e-04, 1.635786594462740882e-04, 1.638246074065824920e-04, 1.640702712340458768e-04, 1.643156505500044655e-04, 1.645607449762927959e-04, 1.648055541352373081e-04, 1.650500776496501378e-04, 1.652943151428184099e-04, 1.655382662385490426e-04, 1.657819305611365199e-04, 1.660253077353536760e-04, 1.662683973864878529e-04, 1.665111991403051223e-04, 1.667537126230733788e-04, 1.669959374615494652e-04, 1.672378732830040004e-04, 1.674795197151829720e-04, 1.677208763863564434e-04, 1.679619429252550205e-04, 1.682027189611469647e-04, 1.684432041237702681e-04, 1.686833980433822015e-04, 1.689233003507382535e-04, 1.691629106770901252e-04, 1.694022286541751587e-04, 1.696412539142593532e-04, 1.698799860901066821e-04, 1.701184248149672205e-04, 1.703565697226228992e-04, 1.705944204473220456e-04, 1.708319766238548441e-04, 1.710692378874909404e-04, 1.713062038740271196e-04, 1.715428742197448318e-04, 1.717792485614610964e-04, 1.720153265364611180e-04, 1.722511077825780029e-04, 1.724865919381246169e-04, 1.727217786419406667e-04, 1.729566675333814513e-04, 1.731912582522848211e-04, 1.734255504390163076e-04, 1.736595437344582815e-04, 1.738932377800052364e-04, 1.741266322175592893e-04, 1.743597266895195827e-04, 1.745925208388249749e-04, 1.748250143089243871e-04, 1.750572067437648771e-04, 1.752890977878250329e-04, 1.755206870861046999e-04, 1.757519742840938368e-04, 1.759829590278150712e-04, 1.762136409638133719e-04, 1.764440197391529594e-04, 1.766740950014105294e-04, 1.769038663986658745e-04, 1.771333335795509715e-04, 1.773624961931909193e-04, 1.775913538892482833e-04, 1.778199063179058557e-04, 1.780481531298626721e-04, 1.782760939763260687e-04, 1.785037285090513106e-04, 1.787310563803112069e-04, 1.789580772428887650e-04, 1.791847907501153004e-04, 1.794111965558126218e-04, 1.796372943143627180e-04, 1.798630836806486418e-04, 1.800885643100959266e-04, 1.803137358586556728e-04, 1.805385979828023522e-04, 1.807631503395239962e-04, 1.809873925863617419e-04, 1.812113243813802605e-04, 1.814349453831599782e-04, 1.816582552508365139e-04, 1.818812536440395577e-04, 1.821039402229671382e-04, 1.823263146483222242e-04, 1.825483765813625165e-04, 1.827701256838652657e-04, 1.829915616181275429e-04, 1.832126840470057322e-04, 1.834334926338849559e-04, 1.836539870426699402e-04, 1.838741669378158607e-04, 1.840940319843193979e-04, 1.843135818476867801e-04, 1.845328161939778565e-04, 1.847517346897941163e-04, 1.849703370022745964e-04, 1.851886227990918966e-04, 1.854065917484423677e-04, 1.856242435190874737e-04, 1.858415777803222688e-04, 1.860585942019677536e-04, 1.862752924544056239e-04, 1.864916722085443079e-04, 1.867077331358384822e-04, 1.869234749082798557e-04, 1.871388971984197481e-04, 1.873539996793301945e-04, 1.875687820246537102e-04, 1.877832439085418701e-04, 1.879973850057257826e-04, 1.882112049914570816e-04, 1.884247035415472556e-04, 1.886378803323552884e-04, 1.888507350407812348e-04, 1.890632673442576011e-04, 1.892754769207891899e-04, 1.894873634489245312e-04, 1.896989266077452301e-04, 1.899101660769069496e-04, 1.901210815365808908e-04, 1.903316726675226397e-04, 1.905419391510140544e-04, 1.907518806689021058e-04, 1.909614969035902047e-04, 1.911707875380104732e-04, 1.913797522556602820e-04, 1.915883907406017086e-04, 1.917967026774295531e-04, 1.920046877513076594e-04, 1.922123456479585333e-04, 1.924196760536360214e-04, 1.926266786551634471e-04, 1.928333531399243413e-04, 1.930396991958592437e-04, 1.932457165114599836e-04, 1.934514047757622535e-04, 1.936567636783822544e-04, 1.938617929094896188e-04, 1.940664921597987363e-04, 1.942708611205968075e-04, 1.944748994837359297e-04, 1.946786069416035249e-04, 1.948819831871635667e-04, 1.950850279139430550e-04, 1.952877408160325577e-04, 1.954901215880773752e-04, 1.956921699252741785e-04, 1.958938855234028311e-04, 1.960952680788029972e-04, 1.962963172883638689e-04, 1.964970328495579119e-04, 1.966974144604064965e-04, 1.968974618195027196e-04, 1.970971746259988827e-04, 1.972965525796272000e-04, 1.974955953806691695e-04, 1.976943027299937641e-04, 1.978926743290070707e-04, 1.980907098797140078e-04, 1.982884090846650106e-04, 1.984857716469917005e-04, 1.986827972703963691e-04, 1.988794856591452555e-04, 1.990758365180604421e-04, 1.992718495525585610e-04, 1.994675244686200833e-04, 1.996628609727853351e-04, 1.998578587721864001e-04, 2.000525175744996586e-04, 2.002468370880013527e-04, 2.004408170215205595e-04, 2.006344570844770562e-04, 2.008277569868506648e-04, 2.010207164392001171e-04, 2.012133351526553568e-04, 2.014056128389326639e-04, 2.015975492103067371e-04, 2.017891439796432463e-04, 2.019803968603862835e-04, 2.021713075665359464e-04, 2.023618758126826539e-04, 2.025521013139983096e-04, 2.027419837862325883e-04, 2.029315229457102801e-04, 2.031207185093212881e-04, 2.033095701945567327e-04, 2.034980777194829308e-04, 2.036862408027335350e-04, 2.038740591635360155e-04, 2.040615325217023631e-04, 2.042486605976043962e-04, 2.044354431122100818e-04, 2.046218797870713113e-04, 2.048079703443251741e-04, 2.049937145066858259e-04, 2.051791119974382012e-04, 2.053641625404774773e-04, 2.055488658602613969e-04, 2.057332216818445834e-04, 2.059172297308672916e-04, 2.061008897335500688e-04, 2.062842014166887668e-04, 2.064671645076840596e-04, 2.066497787345203288e-04, 2.068320438257562847e-04, 2.070139595105596612e-04, 2.071955255186549028e-04, 2.073767415803853711e-04, 2.075576074266623867e-04, 2.077381227889983520e-04, 2.079182873994985924e-04, 2.080981009908388865e-04, 2.082775632962973139e-04, 2.084566740497450132e-04, 2.086354329856465067e-04, 2.088138398390431392e-04, 2.089918943455909171e-04, 2.091695962415072193e-04, 2.093469452636321907e-04, 2.095239411493771066e-04, 2.097005836367635127e-04, 2.098768724643983695e-04, 2.100528073714713422e-04, 2.102283880977849954e-04, 2.104036143837355755e-04, 2.105784859702984830e-04, 2.107530025990613670e-04, 2.109271640122071037e-04, 2.111009699524991868e-04, 2.112744201633066910e-04, 2.114475143886010466e-04, 2.116202523729514859e-04, 2.117926338615211130e-04, 2.119646586000576067e-04, 2.121363263349300291e-04, 2.123076368130988746e-04, 2.124785897821154736e-04, 2.126491849901445167e-04, 2.128194221859393081e-04, 2.129893011188584888e-04, 2.131588215388558730e-04, 2.133279831965001526e-04, 2.134967858429441339e-04, 2.136652292299624670e-04, 2.138333131099052153e-04, 2.140010372357515505e-04, 2.141684013610658426e-04, 2.143354052400255776e-04, 2.145020486274159643e-04, 2.146683312786073551e-04, 2.148342529495865798e-04, 2.149998133969483805e-04, 2.151650123778914812e-04, 2.153298496502100226e-04, 2.154943249723238654e-04, 2.156584381032306420e-04, 2.158221888025604537e-04, 2.159855768305334793e-04, 2.161486019479864288e-04, 2.163112639163689119e-04, 2.164735624977179589e-04, 2.166354974546907638e-04, 2.167970685505619737e-04, 2.169582755491975597e-04, 2.171191182150848220e-04, 2.172795963133261827e-04, 2.174397096096117017e-04, 2.175994578702570507e-04, 2.177588408621884697e-04, 2.179178583529455047e-04, 2.180765101106738252e-04, 2.182347959041211038e-04, 2.183927155026627932e-04, 2.185502686762863240e-04, 2.187074551955773627e-04, 2.188642748317471602e-04, 2.190207273566241496e-04, 2.191768125426309067e-04, 2.193325301628155108e-04, 2.194878799908434942e-04, 2.196428618009955383e-04, 2.197974753681631915e-04, 2.199517204678409809e-04, 2.201055968761595350e-04, 2.202591043698592108e-04, 2.204122427262877892e-04, 2.205650117234226747e-04, 2.207174111398502137e-04, 2.208694407547644753e-04, 2.210211003479931632e-04, 2.211723896999811634e-04, 2.213233085917764762e-04, 2.214738568050658870e-04, 2.216240341221301883e-04, 2.217738403258919118e-04, 2.219232751998773817e-04, 2.220723385282406749e-04, 2.222210300957613719e-04, 2.223693496878206767e-04, 2.225172970904311246e-04, 2.226648720902284499e-04, 2.228120744744711531e-04, 2.229589040310273268e-04, 2.231053605484047163e-04, 2.232514438157074321e-04, 2.233971536226891572e-04, 2.235424897597053612e-04, 2.236874520177505423e-04, 2.238320401884306076e-04, 2.239762540639790003e-04, 2.241200934372497339e-04, 2.242635581017295350e-04, 2.244066478515183009e-04, 2.245493624813492113e-04, 2.246917017865836599e-04, 2.248336655631911693e-04, 2.249752536077785018e-04, 2.251164657175786551e-04, 2.252573016904530845e-04, 2.253977613248853065e-04, 2.255378444199756941e-04, 2.256775507754679862e-04, 2.258168801917296090e-04, 2.259558324697454415e-04, 2.260944074111384972e-04, 2.262326048181625244e-04, 2.263704244936832490e-04, 2.265078662412052632e-04, 2.266449298648675801e-04, 2.267816151694267200e-04, 2.269179219602825419e-04, 2.270538500434444702e-04, 2.271893992255721254e-04, 2.273245693139409277e-04, 2.274593601164653532e-04, 2.275937714416944343e-04, 2.277278030987911603e-04, 2.278614548975611267e-04, 2.279947266484425342e-04, 2.281276181625068388e-04, 2.282601292514474490e-04, 2.283922597276052588e-04, 2.285240094039332217e-04, 2.286553780940375768e-04, 2.287863656121427486e-04, 2.289169717731159306e-04, 2.290471963924598756e-04, 2.291770392862969310e-04, 2.293065002713918880e-04, 2.294355791651480519e-04, 2.295642757856024437e-04, 2.296925899514173442e-04, 2.298205214819063955e-04, 2.299480701969997714e-04, 2.300752359172720141e-04, 2.302020184639373994e-04, 2.303284176588455182e-04, 2.304544333244792713e-04, 2.305800652839495022e-04, 2.307053133610183074e-04, 2.308301773800829635e-04, 2.309546571661669819e-04, 2.310787525449423357e-04, 2.312024633427199182e-04, 2.313257893864361801e-04, 2.314487305036724558e-04, 2.315712865226521712e-04, 2.316934572722376454e-04, 2.318152425819271364e-04, 2.319366422818491759e-04, 2.320576562027860696e-04, 2.321782841761565227e-04, 2.322985260340117370e-04, 2.324183816090554953e-04, 2.325378507346138315e-04, 2.326569332446720554e-04, 2.327756289738413327e-04, 2.328939377573863861e-04, 2.330118594312005859e-04, 2.331293938318348979e-04, 2.332465407964601537e-04, 2.333633001629089275e-04, 2.334796717696426579e-04, 2.335956554557731422e-04, 2.337112510610568172e-04, 2.338264584258794448e-04, 2.339412773912777149e-04, 2.340557077989357756e-04, 2.341697494911781593e-04, 2.342834023109666652e-04, 2.343966661019210404e-04, 2.345095407082839879e-04, 2.346220259749625281e-04, 2.347341217474943891e-04, 2.348458278720703951e-04, 2.349571441955276905e-04, 2.350680705653360246e-04, 2.351786068296179445e-04, 2.352887528371460041e-04, 2.353985084373293190e-04, 2.355078734802290715e-04, 2.356168478165564500e-04, 2.357254312976549224e-04, 2.358336237755211074e-04, 2.359414251028032561e-04, 2.360488351327943676e-04, 2.361558537194324869e-04, 2.362624807172946880e-04, 2.363687159816191914e-04, 2.364745593682876913e-04, 2.365800107338225644e-04, 2.366850699354028614e-04, 2.367897368308564737e-04, 2.368940112786470419e-04, 2.369978931378956938e-04, 2.371013822683730487e-04, 2.372044785304992440e-04, 2.373071817853414150e-04, 2.374094918946072707e-04, 2.375114087206666423e-04, 2.376129321265364671e-04, 2.377140619758763703e-04, 2.378147981330073677e-04, 2.379151404628863866e-04, 2.380150888311277873e-04, 2.381146431039987829e-04, 2.382138031484160501e-04, 2.383125688319410952e-04, 2.384109400227976553e-04, 2.385089165898442946e-04, 2.386064984026068227e-04, 2.387036853312513788e-04, 2.388004772466018608e-04, 2.388968740201364010e-04, 2.389928755239728109e-04, 2.390884816308894525e-04, 2.391836922143179736e-04, 2.392785071483422509e-04, 2.393729263076925355e-04, 2.394669495677633148e-04, 2.395605768045840122e-04, 2.396538078948559853e-04, 2.397466427159187802e-04, 2.398390811457781313e-04, 2.399311230630827587e-04, 2.400227683471391682e-04, 2.401140168779061215e-04, 2.402048685360009790e-04, 2.402953232026870689e-04, 2.403853807598887299e-04, 2.404750410901866230e-04, 2.405643040768048286e-04, 2.406531696036284113e-04, 2.407416375552001123e-04, 2.408297078167160677e-04, 2.409173802740265666e-04, 2.410046548136308747e-04, 2.410915313226920603e-04, 2.411780096890292968e-04, 2.412640898011085111e-04, 2.413497715480630650e-04, 2.414350548196680327e-04, 2.415199395063684709e-04, 2.416044254992538319e-04, 2.416885126900799186e-04, 2.417722009712494234e-04, 2.418554902358325002e-04, 2.419383803775410427e-04, 2.420208712907589868e-04, 2.421029628705152336e-04, 2.421846550125037877e-04, 2.422659476130744878e-04, 2.423468405692286967e-04, 2.424273337786274330e-04, 2.425074271395929158e-04, 2.425871205511044180e-04, 2.426664139127930890e-04, 2.427453071249584347e-04, 2.428238000885422421e-04, 2.429018927051594797e-04, 2.429795848770741193e-04, 2.430568765072115770e-04, 2.431337674991607199e-04, 2.432102577571565720e-04, 2.432863471861002101e-04, 2.433620356915530984e-04, 2.434373231797346492e-04, 2.435122095575175337e-04, 2.435866947324439181e-04, 2.436607786127024239e-04, 2.437344611071476711e-04, 2.438077421252946941e-04, 2.438806215773181834e-04, 2.439530993740499369e-04, 2.440251754269773157e-04, 2.440968496482546005e-04, 2.441681219506951044e-04, 2.442389922477667275e-04, 2.443094604536051573e-04, 2.443795264829947051e-04, 2.444491902513918876e-04, 2.445184516749055316e-04, 2.445873106703090258e-04, 2.446557671550347911e-04, 2.447238210471778586e-04, 2.447914722654843771e-04, 2.448587207293727004e-04, 2.449255663589199441e-04, 2.449920090748562381e-04, 2.450580487985858699e-04, 2.451236854521570883e-04, 2.451889189582932751e-04, 2.452537492403734291e-04, 2.453181762224387798e-04, 2.453821998291902937e-04, 2.454458199859955590e-04, 2.455090366188725226e-04, 2.455718496545129088e-04, 2.456342590202613483e-04, 2.456962646441299071e-04, 2.457578664547926646e-04, 2.458190643815772575e-04, 2.458798583544804920e-04, 2.459402483041597787e-04, 2.460002341619358973e-04, 2.460598158597862204e-04, 2.461189933303589705e-04, 2.461777665069533254e-04, 2.462361353235418605e-04, 2.462940997147503833e-04, 2.463516596158752260e-04, 2.464088149628683921e-04, 2.464655656923477479e-04, 2.465219117415906797e-04, 2.465778530485431474e-04, 2.466333895518063482e-04, 2.466885211906494563e-04, 2.467432479050045272e-04, 2.467975696354619440e-04, 2.468514863232762718e-04, 2.469049979103674509e-04, 2.469581043393194951e-04, 2.470108055533754509e-04, 2.470631014964400529e-04, 2.471149921130862842e-04, 2.471664773485487076e-04, 2.472175571487216774e-04, 2.472682314601694765e-04, 2.473185002301089147e-04, 2.473683634064316635e-04, 2.474178209376843608e-04, 2.474668727730806460e-04, 2.475155188624992620e-04, 2.475637591564791226e-04, 2.476115936062198001e-04, 2.476590221635924759e-04, 2.477060447811230809e-04, 2.477526614120081254e-04, 2.477988720101068380e-04, 2.478446765299359075e-04, 2.478900749266789699e-04, 2.479350671561868788e-04, 2.479796531749708217e-04, 2.480238329402037825e-04, 2.480676064097289994e-04, 2.481109735420438636e-04, 2.481539342963180262e-04, 2.481964886323803870e-04, 2.482386365107240285e-04, 2.482803778925094678e-04, 2.483217127395550617e-04, 2.483626410143458972e-04, 2.484031626800322734e-04, 2.484432777004269371e-04, 2.484829860400054619e-04, 2.485222876639111276e-04, 2.485611825379428850e-04, 2.485996706285740045e-04, 2.486377519029332652e-04, 2.486754263288188868e-04, 2.487126938746902355e-04, 2.487495545096689081e-04, 2.487860082035426895e-04, 2.488220549267653901e-04, 2.488576946504497981e-04, 2.488929273463773837e-04, 2.489277529869885408e-04, 2.489621715453923449e-04, 2.489961829953570667e-04, 2.490297873113193872e-04, 2.490629844683776763e-04, 2.490957744422950281e-04, 2.491281572094933522e-04, 2.491601327470664381e-04, 2.491917010327669994e-04, 2.492228620450129620e-04, 2.492536157628863253e-04, 2.492839621661290428e-04, 2.493139012351529966e-04, 2.493434329510297513e-04, 2.493725572954967346e-04, 2.494012742509518700e-04, 2.494295838004617627e-04, 2.494574859277503154e-04, 2.494849806172108717e-04, 2.495120678538977586e-04, 2.495387476235284016e-04, 2.495650199124856551e-04, 2.495908847078154172e-04, 2.496163419972237027e-04, 2.496413917690852623e-04, 2.496660340124359930e-04, 2.496902687169736974e-04, 2.497140958730635586e-04, 2.497375154717278948e-04, 2.497605275046589526e-04, 2.497831319642078484e-04, 2.498053288433912901e-04, 2.498271181358890296e-04, 2.498484998360410978e-04, 2.498694739388545270e-04, 2.498900404399968453e-04, 2.499101993358014435e-04, 2.499299506232625337e-04, 2.499492943000353119e-04, 2.499682303644431137e-04, 2.499867588154674938e-04, 2.500048796527555442e-04, 2.500225928766163712e-04, 2.500398984880217992e-04, 2.500567964886056668e-04, 2.500732868806652357e-04, 2.500893696671614079e-04, 2.501050448517146054e-04, 2.501203124386111132e-04, 2.501351724327972241e-04, 2.501496248398821665e-04, 2.501636696661379416e-04, 2.501773069184992150e-04, 2.501905366045628284e-04, 2.502033587325862285e-04, 2.502157733114889837e-04, 2.502277803508551161e-04, 2.502393798609283846e-04, 2.502505718526149957e-04, 2.502613563374844166e-04, 2.502717333277648215e-04, 2.502817028363484042e-04, 2.502912648767880712e-04, 2.503004194632991227e-04, 2.503091666107571918e-04, 2.503175063347004136e-04, 2.503254386513272564e-04, 2.503329635774976061e-04, 2.503400811307338503e-04, 2.503467913292166500e-04, 2.503530941917914447e-04, 2.503589897379617304e-04, 2.503644779878918787e-04, 2.503695589624080581e-04, 2.503742326829989386e-04, 2.503784991718087534e-04, 2.503823584516486284e-04, 2.503858105459843305e-04, 2.503888554789457008e-04, 2.503914932753210161e-04, 2.503937239605593204e-04, 2.503955475607709123e-04, 2.503969641027235511e-04, 2.503979736138467927e-04, 2.503985761222302011e-04, 2.503987716566212344e-04, 2.503985602464290391e-04, 2.503979419217208183e-04, 2.503969167132242169e-04, 2.503954846523256408e-04, 2.503936457710702573e-04, 2.503914001021640009e-04, 2.503887476789702659e-04, 2.503856885355117503e-04, 2.503822227064713226e-04, 2.503783502271874142e-04, 2.503740711336604162e-04, 2.503693854625473666e-04, 2.503642932511650947e-04, 2.503587945374862096e-04, 2.503528893601449546e-04, 2.503465777584311359e-04, 2.503398597722928873e-04, 2.503327354423369954e-04, 2.503252048098272191e-04, 2.503172679166850486e-04, 2.503089248054907894e-04, 2.503001755194796053e-04, 2.502910201025458550e-04, 2.502814585992412487e-04, 2.502714910547724093e-04, 2.502611175150053712e-04, 2.502503380264616776e-04, 2.502391526363196271e-04, 2.502275613924140026e-04, 2.502155643432361800e-04, 2.502031615379338029e-04, 2.501903530263106194e-04, 2.501771388588263203e-04, 2.501635190865964843e-04, 2.501494937613927411e-04, 2.501350629356429876e-04, 2.501202266624287865e-04, 2.501049849954880763e-04, 2.500893379892138164e-04, 2.500732856986551795e-04, 2.500568281795152205e-04, 2.500399654881510936e-04, 2.500226976815775218e-04, 2.500050248174593695e-04, 2.499869469541195037e-04, 2.499684641505338064e-04, 2.499495764663326922e-04, 2.499302839617996452e-04, 2.499105866978727905e-04, 2.498904847361429972e-04, 2.498699781388562095e-04, 2.498490669689098142e-04, 2.498277512898573033e-04, 2.498060311659005216e-04, 2.497839066618995872e-04, 2.497613778433630796e-04, 2.497384447764560626e-04, 2.497151075279923325e-04, 2.496913661654404895e-04, 2.496672207569203598e-04, 2.496426713712031039e-04, 2.496177180777137106e-04, 2.495923609465263890e-04, 2.495666000483692847e-04, 2.495404354546191129e-04, 2.495138672373074470e-04, 2.494868954691126413e-04, 2.494595202233673660e-04, 2.494317415740530237e-04, 2.494035595958021888e-04, 2.493749743638989870e-04, 2.493459859542737286e-04, 2.493165944435116904e-04, 2.492867999088461766e-04, 2.492566024281583025e-04, 2.492260020799799214e-04, 2.491949989434921069e-04, 2.491635930985273755e-04, 2.491317846255647534e-04, 2.490995736057306982e-04, 2.490669601208033812e-04, 2.490339442532082427e-04, 2.490005260860169074e-04, 2.489667057029522259e-04, 2.489324831883847513e-04, 2.488978586273302997e-04, 2.488628321054539615e-04, 2.488274037090658190e-04, 2.487915735251281023e-04, 2.487553416412440215e-04, 2.487187081456678503e-04, 2.486816731272992339e-04, 2.486442366756824295e-04, 2.486063988810085839e-04, 2.485681598341188230e-04, 2.485295196264947107e-04, 2.484904783502644293e-04, 2.484510360982048393e-04, 2.484111929637325888e-04, 2.483709490409160398e-04, 2.483303044244627457e-04, 2.482892592097277998e-04, 2.482478134927093355e-04, 2.482059673700494481e-04, 2.481637209390343576e-04, 2.481210742975966310e-04, 2.480780275443106287e-04, 2.480345807783911494e-04, 2.479907340997006401e-04, 2.479464876087413895e-04, 2.479018414066605155e-04, 2.478567955952488272e-04, 2.478113502769350236e-04, 2.477655055547915491e-04, 2.477192615325357313e-04, 2.476726183145227340e-04, 2.476255760057526588e-04, 2.475781347118629011e-04, 2.475302945391363906e-04, 2.474820555944921038e-04, 2.474334179854913531e-04, 2.473843818203388706e-04, 2.473349472078773871e-04, 2.472851142575871984e-04, 2.472348830795892015e-04, 2.471842537846468996e-04, 2.471332264841612529e-04, 2.470818012901716538e-04, 2.470299783153551143e-04, 2.469777576730308732e-04, 2.469251394771510184e-04, 2.468721238423113827e-04, 2.468187108837423282e-04, 2.467649007173138421e-04, 2.467106934595299532e-04, 2.466560892275361581e-04, 2.466010881391103148e-04, 2.465456903126725624e-04, 2.464898958672740456e-04, 2.464337049226055345e-04, 2.463771175989917859e-04, 2.463201340173931165e-04, 2.462627542994055645e-04, 2.462049785672648476e-04, 2.461468069438353039e-04, 2.460882395526181317e-04, 2.460292765177507935e-04, 2.459699179640003480e-04, 2.459101640167762437e-04, 2.458500148021118331e-04, 2.457894704466817202e-04, 2.457285310777879909e-04, 2.456671968233717601e-04, 2.456054678119983176e-04, 2.455433441728766984e-04, 2.454808260358364806e-04, 2.454179135313494151e-04, 2.453546067905108320e-04, 2.452909059450503735e-04, 2.452268111273313441e-04, 2.451623224703482163e-04, 2.450974401077198007e-04, 2.450321641737004128e-04, 2.449664948031723922e-04, 2.449004321316529875e-04, 2.448339762952825923e-04, 2.447671274308324974e-04, 2.446998856757052164e-04, 2.446322511679308530e-04, 2.445642240461649332e-04, 2.444958044496977289e-04, 2.444269925184439584e-04, 2.443577883929455509e-04, 2.442881922143700204e-04, 2.442182041245149647e-04, 2.441478242658080659e-04, 2.440770527812979288e-04, 2.440058898146583088e-04, 2.439343355101963255e-04, 2.438623900128364971e-04, 2.437900534681332364e-04, 2.437173260222712571e-04, 2.436442078220505303e-04, 2.435706990148984010e-04, 2.434967997488716746e-04, 2.434225101726418994e-04, 2.433478304355175109e-04, 2.432727606874163749e-04, 2.431973010788908321e-04, 2.431214517611092669e-04, 2.430452128858639680e-04, 2.429685846055682007e-04, 2.428915670732659650e-04, 2.428141604426126696e-04, 2.427363648678873293e-04, 2.426581805039944621e-04, 2.425796075064530033e-04, 2.425006460314098854e-04, 2.424212962356267834e-04, 2.423415582764879212e-04, 2.422614323119937291e-04, 2.421809185007678096e-04, 2.421000170020514352e-04, 2.420187279757068011e-04, 2.419370515822076193e-04, 2.418549879826548674e-04, 2.417725373387612838e-04, 2.416896998128546478e-04, 2.416064755678887027e-04, 2.415228647674297390e-04, 2.414388675756599283e-04, 2.413544841573739622e-04, 2.412697146779873463e-04, 2.411845593035356688e-04, 2.410990182006615354e-04, 2.410130915366227010e-04, 2.409267794792986292e-04, 2.408400821971771837e-04, 2.407529998593581789e-04, 2.406655326355642221e-04, 2.405776806961267542e-04, 2.404894442119856165e-04, 2.404008233547009490e-04, 2.403118182964367384e-04, 2.402224292099810110e-04, 2.401326562687217635e-04, 2.400424996466672374e-04, 2.399519595184304967e-04, 2.398610360592357156e-04, 2.397697294449211065e-04, 2.396780398519376455e-04, 2.395859674573397758e-04, 2.394935124387915875e-04, 2.394006749745709916e-04, 2.393074552435581464e-04, 2.392138534252525066e-04, 2.391198696997489704e-04, 2.390255042477608112e-04, 2.389307572506011910e-04, 2.388356288901904794e-04, 2.387401193490634635e-04, 2.386442288103571773e-04, 2.385479574578124745e-04, 2.384513054757755185e-04, 2.383542730492028787e-04, 2.382568603636485199e-04, 2.381590676052813122e-04, 2.380608949608699603e-04, 2.379623426177830854e-04, 2.378634107639954860e-04, 2.377640995880853190e-04, 2.376644092792405780e-04, 2.375643400272415835e-04, 2.374638920224725564e-04, 2.373630654559273645e-04, 2.372618605191940185e-04, 2.371602774044599031e-04, 2.370583163045222939e-04, 2.369559774127750758e-04, 2.368532609232089326e-04, 2.367501670304143833e-04, 2.366466959295829200e-04, 2.365428478165130524e-04, 2.364386228875899249e-04, 2.363340213397995741e-04, 2.362290433707330483e-04, 2.361236891785681389e-04, 2.360179589620899532e-04, 2.359118529206744345e-04, 2.358053712543000443e-04, 2.356985141635314722e-04, 2.355912818495398836e-04, 2.354836745140799882e-04, 2.353756923595182030e-04, 2.352673355887979030e-04, 2.351586044054695891e-04, 2.350494990136698281e-04, 2.349400196181313080e-04, 2.348301664241779594e-04, 2.347199396377366105e-04, 2.346093394653137856e-04, 2.344983661140103413e-04, 2.343870197915254782e-04, 2.342753007061391772e-04, 2.341632090667371355e-04, 2.340507450827800573e-04, 2.339379089643307580e-04, 2.338247009220311800e-04, 2.337111211671200918e-04, 2.335971699114232488e-04, 2.334828473673581642e-04, 2.333681537479214232e-04, 2.332530892667082265e-04, 2.331376541378934976e-04, 2.330218485762370327e-04, 2.329056727970967283e-04, 2.327891270164108542e-04, 2.326722114506985417e-04, 2.325549263170675624e-04, 2.324372718332105880e-04, 2.323192482174128335e-04, 2.322008556885329759e-04, 2.320820944660137246e-04, 2.319629647698900074e-04, 2.318434668207720298e-04, 2.317236008398498826e-04, 2.316033670489096971e-04, 2.314827656703094939e-04, 2.313617969269881822e-04, 2.312404610424652340e-04, 2.311187582408424739e-04, 2.309966887468112610e-04, 2.308742527856250321e-04, 2.307514505831319632e-04, 2.306282823657490838e-04, 2.305047483604740952e-04, 2.303808487948847739e-04, 2.302565838971430917e-04, 2.301319538959763233e-04, 2.300069590206930655e-04, 2.298815995011826139e-04, 2.297558755679004073e-04, 2.296297874518936962e-04, 2.295033353847689356e-04, 2.293765195987179954e-04, 2.292493403265011384e-04, 2.291217978014489180e-04, 2.289938922574793350e-04, 2.288656239290753414e-04, 2.287369930512897183e-04, 2.286079998597475974e-04, 2.284786445906545921e-04, 2.283489274807737042e-04, 2.282188487674581480e-04, 2.280884086886120210e-04, 2.279576074827244019e-04, 2.278264453888431402e-04, 2.276949226465892217e-04, 2.275630394961620270e-04, 2.274307961783165360e-04, 2.272981929343759319e-04, 2.271652300062416844e-04, 2.270319076363724615e-04, 2.268982260677920176e-04, 2.267641855441036402e-04, 2.266297863094685744e-04, 2.264950286086096277e-04, 2.263599126868153985e-04, 2.262244387899422550e-04, 2.260886071644172891e-04, 2.259524180572195060e-04, 2.258158717158919129e-04, 2.256789683885502466e-04, 2.255417083238592843e-04, 2.254040917710566951e-04, 2.252661189799367507e-04, 2.251277902008583210e-04, 2.249891056847318097e-04, 2.248500656830395639e-04, 2.247106704478092577e-04, 2.245709202316473392e-04, 2.244308152876989151e-04, 2.242903558696820662e-04, 2.241495422318636149e-04, 2.240083746290650886e-04, 2.238668533166795246e-04, 2.237249785506484042e-04, 2.235827505874641999e-04, 2.234401696841759868e-04, 2.232972360983978175e-04, 2.231539500882815362e-04, 2.230103119125560263e-04, 2.228663218304809698e-04, 2.227219801018856884e-04, 2.225772869871422554e-04, 2.224322427471733831e-04, 2.222868476434672769e-04, 2.221411019380544599e-04, 2.219950058935114595e-04, 2.218485597729767179e-04, 2.217017638401287997e-04, 2.215546183591943338e-04, 2.214071235949627856e-04, 2.212592798127635259e-04, 2.211110872784712792e-04, 2.209625462585071269e-04, 2.208136570198440901e-04, 2.206644198300095972e-04, 2.205148349570632839e-04, 2.203649026696121187e-04, 2.202146232368182082e-04, 2.200639969283800415e-04, 2.199130240145348201e-04, 2.197617047660815524e-04, 2.196100394543524300e-04, 2.194580283512189540e-04, 2.193056717290949433e-04, 2.191529698609403023e-04, 2.189999230202642195e-04, 2.188465314811019653e-04, 2.186927955180321308e-04, 2.185387154061828080e-04, 2.183842914212090654e-04, 2.182295238393100239e-04, 2.180744129372353356e-04, 2.179189589922548252e-04, 2.177631622821778982e-04, 2.176070230853634603e-04, 2.174505416806885309e-04, 2.172937183475897129e-04, 2.171365533660171688e-04, 2.169790470164705888e-04, 2.168211995799755555e-04, 2.166630113380883414e-04, 2.165044825729140149e-04, 2.163456135670829947e-04, 2.161864046037529198e-04, 2.160268559666140165e-04, 2.158669679398995608e-04, 2.157067408083541385e-04, 2.155461748572789918e-04, 2.153852703724801405e-04, 2.152240276403119123e-04, 2.150624469476419506e-04, 2.149005285818778315e-04, 2.147382728309517764e-04, 2.145756799833266424e-04, 2.144127503279813940e-04, 2.142494841544361752e-04, 2.140858817527264513e-04, 2.139219434134102186e-04, 2.137576694275856233e-04, 2.135930600868681656e-04, 2.134281156833913503e-04, 2.132628365098128127e-04, 2.130972228593157553e-04, 2.129312750256185966e-04, 2.127649933029412803e-04, 2.125983779860305095e-04, 2.124314293701638670e-04, 2.122641477511281040e-04, 2.120965334252276240e-04, 2.119285866893019657e-04, 2.117603078407000259e-04, 2.115916971772854806e-04, 2.114227549974383570e-04, 2.112534816000613764e-04, 2.110838772845832333e-04, 2.109139423509281031e-04, 2.107436770995530461e-04, 2.105730818314199544e-04, 2.104021568480009729e-04, 2.102309024513016739e-04, 2.100593189438279074e-04, 2.098874066285979448e-04, 2.097151658091400933e-04, 2.095425967895075492e-04, 2.093696998742433245e-04, 2.091964753684311768e-04, 2.090229235776362227e-04, 2.088490448079525878e-04, 2.086748393659737272e-04, 2.085003075587968163e-04, 2.083254496940462508e-04, 2.081502660798429370e-04, 2.079747570248109863e-04, 2.077989228380814019e-04, 2.076227638293019989e-04, 2.074462803086065050e-04, 2.072694725866624545e-04, 2.070923409746130755e-04, 2.069148857841253202e-04, 2.067371073273539773e-04, 2.065590059169641966e-04, 2.063805818661353108e-04, 2.062018354885277133e-04, 2.060227670983091495e-04, 2.058433770101574824e-04, 2.056636655392402816e-04, 2.054836330012195132e-04, 2.053032797122764487e-04, 2.051226059890784079e-04, 2.049416121487870521e-04, 2.047602985090620712e-04, 2.045786653880616983e-04, 2.043967131044542021e-04, 2.042144419773833555e-04, 2.040318523264906072e-04, 2.038489444719246229e-04, 2.036657187343094636e-04, 2.034821754347880627e-04, 2.032983148949698313e-04, 2.031141374369766558e-04, 2.029296433834049237e-04, 2.027448330573585920e-04, 2.025597067824126761e-04, 2.023742648826605485e-04, 2.021885076826555275e-04, 2.020024355074611028e-04, 2.018160486826172436e-04, 2.016293475341459013e-04, 2.014423323885785753e-04, 2.012550035729199108e-04, 2.010673614146576461e-04, 2.008794062417638602e-04, 2.006911383827081992e-04, 2.005025581664239955e-04, 2.003136659223589812e-04, 2.001244619804121605e-04, 1.999349466709878301e-04, 1.997451203249601254e-04, 1.995549832736795263e-04, 1.993645358489982001e-04, 1.991737783832373400e-04, 1.989827112091886285e-04, 1.987913346601395269e-04, 1.985996490698447605e-04, 1.984076547725317123e-04, 1.982153521029260922e-04, 1.980227413962189762e-04, 1.978298229880724995e-04, 1.976365972146254123e-04, 1.974430644124958991e-04, 1.972492249187880026e-04, 1.970550790710592871e-04, 1.968606272073461819e-04, 1.966658696661685894e-04, 1.964708067865076312e-04, 1.962754389078113680e-04, 1.960797663700189497e-04, 1.958837895135291196e-04, 1.956875086792048764e-04, 1.954909242083795184e-04, 1.952940364428581348e-04, 1.950968457249270104e-04, 1.948993523973205583e-04, 1.947015568032410516e-04, 1.945034592863731252e-04, 1.943050601908430906e-04, 1.941063598612705716e-04, 1.939073586427240243e-04, 1.937080568807345883e-04, 1.935084549212946769e-04, 1.933085531108733729e-04, 1.931083517963802705e-04, 1.929078513252160260e-04, 1.927070520452126186e-04, 1.925059543046841993e-04, 1.923045584523916916e-04, 1.921028648375501643e-04, 1.919008738098560178e-04, 1.916985857194492807e-04, 1.914960009169240185e-04, 1.912931197533313964e-04, 1.910899425801900874e-04, 1.908864697494543159e-04, 1.906827016135623210e-04, 1.904786385253781351e-04, 1.902742808382395059e-04, 1.900696289059200300e-04, 1.898646830826595383e-04, 1.896594437231453119e-04, 1.894539111825208641e-04, 1.892480858163652865e-04, 1.890419679807271030e-04, 1.888355580320913104e-04, 1.886288563273854225e-04, 1.884218632240097194e-04, 1.882145790797966442e-04, 1.880070042530227023e-04, 1.877991391024101144e-04, 1.875909839871312619e-04, 1.873825392668171169e-04, 1.871738053015217882e-04, 1.869647824517467808e-04, 1.867554710784505366e-04, 1.865458715430112736e-04, 1.863359842072813584e-04, 1.861258094335236366e-04, 1.859153475844631221e-04, 1.857045990232477489e-04, 1.854935641134830386e-04, 1.852822432191901687e-04, 1.850706367048618635e-04, 1.848587449353945227e-04, 1.846465682761463077e-04, 1.844341070928975685e-04, 1.842213617518598961e-04, 1.840083326197027675e-04, 1.837950200635162488e-04, 1.835814244508211053e-04, 1.833675461495694792e-04, 1.831533855281612341e-04, 1.829389429554055199e-04, 1.827242188005739258e-04, 1.825092134333375967e-04, 1.822939272238207654e-04, 1.820783605425628602e-04, 1.818625137605278555e-04, 1.816463872491311607e-04, 1.814299813802017810e-04, 1.812132965259913710e-04, 1.809963330591771613e-04, 1.807790913528777076e-04, 1.805615717806105243e-04, 1.803437747163490602e-04, 1.801257005344734485e-04, 1.799073496097844112e-04, 1.796887223175030969e-04, 1.794698190332799984e-04, 1.792506401331988284e-04, 1.790311859937406870e-04, 1.788114569918114103e-04, 1.785914535047507864e-04, 1.783711759102930903e-04, 1.781506245866244927e-04, 1.779297999123140501e-04, 1.777087022663724957e-04, 1.774873320282117722e-04, 1.772656895776590982e-04, 1.770437752949617671e-04, 1.768215895607953315e-04, 1.765991327562249527e-04, 1.763764052627327485e-04, 1.761534074622279585e-04, 1.759301397370080207e-04, 1.757066024698135951e-04, 1.754827960437626438e-04, 1.752587208424068914e-04, 1.750343772496869657e-04, 1.748097656499715102e-04, 1.745848864280128137e-04, 1.743597399690041368e-04, 1.741343266585096189e-04, 1.739086468825257247e-04, 1.736827010274373344e-04, 1.734564894800295616e-04, 1.732300126275151291e-04, 1.730032708574960425e-04, 1.727762645579709357e-04, 1.725489941173403562e-04, 1.723214599244203993e-04, 1.720936623684030261e-04, 1.718656018389148269e-04, 1.716372787259462236e-04, 1.714086934199113982e-04, 1.711798463116066056e-04, 1.709507377922206905e-04, 1.707213682533637370e-04, 1.704917380870264385e-04, 1.702618476855845427e-04, 1.700316974418279628e-04, 1.698012877489258113e-04, 1.695706190004349389e-04, 1.693396915903293428e-04, 1.691085059129605666e-04, 1.688770623630655066e-04, 1.686453613357709379e-04, 1.684134032265993696e-04, 1.681811884314769322e-04, 1.679487173466923675e-04, 1.677159903689286603e-04, 1.674830078952694353e-04, 1.672497703231600071e-04, 1.670162780504666044e-04, 1.667825314754050573e-04, 1.665485309966011323e-04, 1.663142770130481409e-04, 1.660797699241233372e-04, 1.658450101295908463e-04, 1.656099980296111228e-04, 1.653747340247015683e-04, 1.651392185157631476e-04, 1.649034519040928036e-04, 1.646674345913404680e-04, 1.644311669795650880e-04, 1.641946494711871379e-04, 1.639578824690003287e-04, 1.637208663761723396e-04, 1.634836015962641174e-04, 1.632460885331831737e-04, 1.630083275912488818e-04, 1.627703191751177204e-04, 1.625320636898436907e-04, 1.622935615408394483e-04, 1.620548131338810191e-04, 1.618158188751430088e-04, 1.615765791711539607e-04, 1.613370944288058701e-04, 1.610973650553604991e-04, 1.608573914584614933e-04, 1.606171740460957836e-04, 1.603767132266515369e-04, 1.601360094088472225e-04, 1.598950630017919206e-04, 1.596538744149386202e-04, 1.594124440581197542e-04, 1.591707723415249998e-04, 1.589288596757129884e-04, 1.586867064715873174e-04, 1.584443131404334132e-04, 1.582016800938706362e-04, 1.579588077439163577e-04, 1.577156965029077884e-04, 1.574723467835676815e-04, 1.572287589989608287e-04, 1.569849335625083449e-04, 1.567408708879928722e-04, 1.564965713895681749e-04, 1.562520354817163953e-04, 1.560072635792790344e-04, 1.557622560974666556e-04, 1.555170134518155979e-04, 1.552715360582525674e-04, 1.550258243330162493e-04, 1.547798786927243118e-04, 1.545336995543217435e-04, 1.542872873351242762e-04, 1.540406424527694868e-04, 1.537937653252795191e-04, 1.535466563709872760e-04, 1.532993160085975961e-04, 1.530517446571445631e-04, 1.528039427360027816e-04, 1.525559106649167858e-04, 1.523076488639596231e-04, 1.520591577535410673e-04, 1.518104377544121988e-04, 1.515614892876827522e-04, 1.513123127747752542e-04, 1.510629086374911333e-04, 1.508132772979315999e-04, 1.505634191785642974e-04, 1.503133347021781458e-04, 1.500630242918935323e-04, 1.498124883711952177e-04, 1.495617273638857154e-04, 1.493107416940981660e-04, 1.490595317862997257e-04, 1.488080980652967437e-04, 1.485564409562437874e-04, 1.483045608845947455e-04, 1.480524582761636246e-04, 1.478001335570771691e-04, 1.475475871537926969e-04, 1.472948194931020022e-04, 1.470418310021416011e-04, 1.467886221083487678e-04, 1.465351932394925961e-04, 1.462815448236853572e-04, 1.460276772893381826e-04, 1.457735910652239477e-04, 1.455192865804027060e-04, 1.452647642642843290e-04, 1.450100245465855173e-04, 1.447550678573447896e-04, 1.444998946269264949e-04, 1.442445052860344998e-04, 1.439889002656620715e-04, 1.437330799971291205e-04, 1.434770449120890035e-04, 1.432207954424859144e-04, 1.429643320206201262e-04, 1.427076550790677060e-04, 1.424507650507496055e-04, 1.421936623688782641e-04, 1.419363474670027117e-04, 1.416788207789577471e-04, 1.414210827389285829e-04, 1.411631337813746266e-04, 1.409049743410932044e-04, 1.406466048531757323e-04, 1.403880257530173926e-04, 1.401292374763508529e-04, 1.398702404591992653e-04, 1.396110351378879492e-04, 1.393516219490489177e-04, 1.390920013296377100e-04, 1.388321737168850896e-04, 1.385721395483685212e-04, 1.383118992619266805e-04, 1.380514532957319881e-04, 1.377908020882351791e-04, 1.375299460782060694e-04, 1.372688857047092150e-04, 1.370076214071153781e-04, 1.367461536250772674e-04, 1.364844827985690575e-04, 1.362226093678346999e-04, 1.359605337734545738e-04, 1.356982564562661769e-04, 1.354357778574301807e-04, 1.351730984183861946e-04, 1.349102185808673487e-04, 1.346471387869059588e-04, 1.343838594788446120e-04, 1.341203810992884623e-04, 1.338567040911406837e-04, 1.335928288976110355e-04, 1.333287559621712743e-04, 1.330644857286212093e-04, 1.328000186410096097e-04, 1.325353551437015605e-04, 1.322704956813311103e-04, 1.320054406988182118e-04, 1.317401906413746848e-04, 1.314747459545134321e-04, 1.312091070839962624e-04, 1.309432744758978577e-04, 1.306772485765578251e-04, 1.304110298325897495e-04, 1.301446186909194116e-04, 1.298780155987335600e-04, 1.296112210034929750e-04, 1.293442353529375378e-04, 1.290770590951008671e-04, 1.288096926782659481e-04, 1.285421365510330577e-04, 1.282743911622355763e-04, 1.280064569610123582e-04, 1.277383343967582110e-04, 1.274700239191352519e-04, 1.272015259781077655e-04, 1.269328410238937941e-04, 1.266639695069775513e-04, 1.263949118781122684e-04, 1.261256685883271878e-04, 1.258562400889388108e-04, 1.255866268315002120e-04, 1.253168292678396635e-04, 1.250468478500682784e-04, 1.247766830305403025e-04, 1.245063352618864258e-04, 1.242358049970193395e-04, 1.239650926890850820e-04, 1.236941987914993871e-04, 1.234231237579571164e-04, 1.231518680423845003e-04, 1.228804320990107765e-04, 1.226088163822821318e-04, 1.223370213469345056e-04, 1.220650474479435278e-04, 1.217928951405423802e-04, 1.215205648802265945e-04, 1.212480571227662630e-04, 1.209753723241559892e-04, 1.207025109406518050e-04, 1.204294734287802775e-04, 1.201562602452911302e-04, 1.198828718472284740e-04, 1.196093086918460779e-04, 1.193355712366772587e-04, 1.190616599394819450e-04, 1.187875752582933519e-04, 1.185133176513620504e-04, 1.182388875772293399e-04, 1.179642854946405804e-04, 1.176895118626170207e-04, 1.174145671404075241e-04, 1.171394517874992347e-04, 1.168641662636530167e-04, 1.165887110288552623e-04, 1.163130865433274590e-04, 1.160372932675335491e-04, 1.157613316621833993e-04, 1.154852021882454854e-04, 1.152089053068968972e-04, 1.149324414795586296e-04, 1.146558111679084704e-04, 1.143790148338419833e-04, 1.141020529394852468e-04, 1.138249259472299012e-04, 1.135476343196831396e-04, 1.132701785196808542e-04, 1.129925590102910649e-04, 1.127147762548209257e-04, 1.124368307168268217e-04, 1.121587228600592103e-04, 1.118804531485285947e-04, 1.116020220464571957e-04, 1.113234300182946047e-04, 1.110446775287247365e-04, 1.107657650426762102e-04, 1.104866930252738720e-04, 1.102074619418732458e-04, 1.099280722580725403e-04, 1.096485244396631692e-04, 1.093688189527031651e-04, 1.090889562634291828e-04, 1.088089368383294799e-04, 1.085287611440951275e-04, 1.082484296476375878e-04, 1.079679428160916418e-04, 1.076873011168308385e-04, 1.074065050174146681e-04, 1.071255549856249361e-04, 1.068444514894785572e-04, 1.065631949971767472e-04, 1.062817859771783688e-04, 1.060002248981126128e-04, 1.057185122288518026e-04, 1.054366484384565195e-04, 1.051546339962228200e-04, 1.048724693716264266e-04, 1.045901550343962636e-04, 1.043076914544271245e-04, 1.040250791018522869e-04, 1.037423184469939234e-04, 1.034594099603753395e-04, 1.031763541127554516e-04, 1.028931513750811090e-04, 1.026098022184959572e-04, 1.023263071143479052e-04, 1.020426665341933814e-04, 1.017588809498095985e-04, 1.014749508331432975e-04, 1.011908766563488171e-04, 1.009066588917977838e-04, 1.006222980120363670e-04, 1.003377944898267227e-04, 1.000531487981225990e-04, 9.976836141008044916e-05, 9.948343279903357336e-05, 9.919836343853442970e-05, 9.891315380229950252e-05, 9.862780436428125275e-05, 9.834231559858188320e-05, 9.805668797952562772e-05, 9.777092198160990794e-05, 9.748501807952142004e-05, 9.719897674814289754e-05, 9.691279846256465799e-05, 9.662648369803308987e-05, 9.634003292998798975e-05, 9.605344663407421751e-05, 9.576672528609119959e-05, 9.547986936206603133e-05, 9.519287933816614449e-05, 9.490575569077391394e-05, 9.461849889643439903e-05, 9.433110943187460185e-05, 9.404358777400854930e-05, 9.375593439994901615e-05, 9.346814978695006223e-05, 9.318023441247525590e-05, 9.289218875414794981e-05, 9.260401328976041531e-05, 9.231570849731359201e-05, 9.202727485496443622e-05, 9.173871284103753544e-05, 9.145002293403183046e-05, 9.116120561262426093e-05, 9.087226135568440214e-05, 9.058319064222005162e-05, 9.029399395141620615e-05, 9.000467176264673056e-05, 8.971522455543464879e-05, 8.942565280946569641e-05, 8.913595700462407221e-05, 8.884613762094153489e-05, 8.855619513860878719e-05, 8.826613003798206242e-05, 8.797594279958739349e-05, 8.768563390413400282e-05, 8.739520383246102738e-05, 8.710465306557612980e-05, 8.681398208466685538e-05, 8.652319137105540737e-05, 8.623228140623602478e-05, 8.594125267188087774e-05, 8.565010564978801227e-05, 8.535884082191782011e-05, 8.506745867040760767e-05, 8.477595967751673544e-05, 8.448434432570481605e-05, 8.419261309753976036e-05, 8.390076647577490493e-05, 8.360880494329630619e-05, 8.331672898314144299e-05, 8.302453907850484082e-05, 8.273223571275035049e-05, 8.243981936935807636e-05, 8.214729053196328568e-05, 8.185464968436756232e-05, 8.156189731048692768e-05, 8.126903389442861577e-05, 8.097605992039982404e-05, 8.068297587278348555e-05, 8.038978223608095536e-05, 8.009647949495490426e-05, 7.980306813420367737e-05, 7.950954863877315263e-05, 7.921592149372974417e-05, 7.892218718430513917e-05, 7.862834619585092402e-05, 7.833439901384925018e-05, 7.804034612395175697e-05, 7.774618801192713694e-05, 7.745192516367299424e-05, 7.715755806522121146e-05, 7.686308720274408895e-05, 7.656851306256694863e-05, 7.627383613111433046e-05, 7.597905689494822415e-05, 7.568417584078183848e-05, 7.538919345543798156e-05, 7.509411022586177302e-05, 7.479892663915985152e-05, 7.450364318254590714e-05, 7.420826034334776933e-05, 7.391277860904468995e-05, 7.361719846720894537e-05, 7.332152040558171714e-05, 7.302574491198321157e-05, 7.272987247438738841e-05, 7.243390358087151832e-05, 7.213783871963312352e-05, 7.184167837899709289e-05, 7.154542304742706610e-05, 7.124907321347210437e-05, 7.095262936580630454e-05, 7.065609199323966822e-05, 7.035946158466635817e-05, 7.006273862914113464e-05, 6.976592361578768601e-05, 6.946901703387633900e-05, 6.917201937277045844e-05, 6.887493112193909177e-05, 6.857775277099566148e-05, 6.828048480964395834e-05, 6.798312772769132795e-05, 6.768568201505406471e-05, 6.738814816177604648e-05, 6.709052665797567649e-05, 6.679281799391731866e-05, 6.649502265995153101e-05, 6.619714114652668015e-05, 6.589917394419582593e-05, 6.560112154362170882e-05, 6.530298443558882522e-05, 6.500476311095139924e-05, 6.470645806067017787e-05, 6.440806977582618680e-05, 6.410959874757984238e-05, 6.381104546718347425e-05, 6.351241042601990928e-05, 6.321369411554927801e-05, 6.291489702732094077e-05, 6.261601965297939666e-05, 6.231706248427053123e-05, 6.201802601305325810e-05, 6.171891073124681319e-05, 6.141971713086814616e-05, 6.112044570404601498e-05, 6.082109694297296263e-05, 6.052167133995086707e-05, 6.022216938736349743e-05, 5.992259157768971414e-05, 5.962293840347550328e-05, 5.932321035737916752e-05, 5.902340793211247424e-05, 5.872353162051732219e-05, 5.842358191547373337e-05, 5.812355930997786140e-05, 5.782346429708791691e-05, 5.752329736994416431e-05, 5.722305902177403109e-05, 5.692274974590436608e-05, 5.662237003570845582e-05, 5.632192038464416145e-05, 5.602140128626705099e-05, 5.572081323417559304e-05, 5.542015672209098107e-05, 5.511943224376302474e-05, 5.481864029304879516e-05, 5.451778136385227553e-05, 5.421685595016980275e-05, 5.391586454606333504e-05, 5.361480764567202583e-05, 5.331368574318531519e-05, 5.301249933288895423e-05, 5.271124890911700882e-05, 5.240993496626453120e-05, 5.210855799882728923e-05, 5.180711850134676340e-05, 5.150561696842341486e-05, 5.120405389472190304e-05, 5.090242977497750281e-05, 5.060074510400837633e-05, 5.029900037666128833e-05, 4.999719608785128120e-05, 4.969533273257354018e-05, 4.939341080586299331e-05, 4.909143080280683395e-05, 4.878939321858361303e-05, 4.848729854840916451e-05, 4.818514728754897877e-05, 4.788293993132417936e-05, 4.758067697511739115e-05, 4.727835891438547981e-05, 4.697598624459800966e-05, 4.667355946131062397e-05, 4.637107906011046202e-05, 4.606854553663528181e-05, 4.576595938657945702e-05, 4.546332110570698744e-05, 4.516063118979631984e-05, 4.485789013468014500e-05, 4.455509843625806929e-05, 4.425225659044211318e-05, 4.394936509323619687e-05, 4.364642444064173330e-05, 4.334343512873711378e-05, 4.304039765362304386e-05, 4.273731251143569605e-05, 4.243418019838551749e-05, 4.213100121070344672e-05, 4.182777604465269088e-05, 4.152450519653532574e-05, 4.122118916271139800e-05, 4.091782843954419342e-05, 4.061442352348031192e-05, 4.031097491095469824e-05, 4.000748309847033761e-05, 3.970394858253731675e-05, 3.940037185971190941e-05, 3.909675342660255980e-05, 3.879309377981600448e-05, 3.848939341599555154e-05, 3.818565283183450432e-05, 3.788187252403523282e-05, 3.757805298932118121e-05, 3.727419472447670548e-05, 3.697029822629257199e-05, 3.666636399157833766e-05, 3.636239251716837410e-05, 3.605838429992803398e-05, 3.575433983676588222e-05, 3.545025962457932323e-05, 3.514614416029394390e-05, 3.484199394087656468e-05, 3.453780946329355200e-05, 3.423359122452393038e-05, 3.392933972159852885e-05, 3.362505545154584541e-05, 3.332073891139722410e-05, 3.301639059822720086e-05, 3.271201100909164301e-05, 3.240760064110793280e-05, 3.210315999135969993e-05, 3.179868955697712023e-05, 3.149418983508190599e-05, 3.118966132280012662e-05, 3.088510451730172107e-05, 3.058051991574627418e-05, 3.027590801529469891e-05, 2.997126931311614817e-05, 2.966660430640688330e-05, 2.936191349233567435e-05, 2.905719736812405814e-05, 2.875245643095065740e-05, 2.844769117803187252e-05, 2.814290210656687866e-05, 2.783808971374990090e-05, 2.753325449681077357e-05, 2.722839695295935122e-05, 2.692351757939855287e-05, 2.661861687333011509e-05, 2.631369533197445662e-05, 2.600875345251517734e-05, 2.570379173217320759e-05, 2.539881066814485955e-05, 2.509381075761453272e-05, 2.478879249776063637e-05, 2.448375638576182035e-05, 2.417870291880943321e-05, 2.387363259405249219e-05, 2.356854590863784952e-05, 2.326344335972257263e-05, 2.295832544443280549e-05, 2.265319265987615220e-05, 2.234804550318193479e-05, 2.204288447144581758e-05, 2.173771006174276003e-05, 2.143252277113283754e-05, 2.112732309666745187e-05, 2.082211153540184693e-05, 2.051688858434011603e-05, 2.021165474047513773e-05, 1.990641050080135932e-05, 1.960115636226630921e-05, 1.929589282181755312e-05, 1.899062037637467076e-05, 1.868533952284177506e-05, 1.838005075807989204e-05, 1.807475457895353751e-05, 1.776945148226869394e-05, 1.746414196485366477e-05, 1.715882652346317002e-05, 1.685350565485886520e-05, 1.654817985575445362e-05, 1.624284962282820547e-05, 1.593751545276323261e-05, 1.563217784219188251e-05, 1.532683728770908071e-05, 1.502149428587771969e-05, 1.471614933324880972e-05, 1.441080292630586103e-05, 1.410545556154588217e-05, 1.380010773538336713e-05, 1.349475994423095827e-05, 1.318941268443764683e-05, 1.288406645233540375e-05, 1.257872174421121576e-05, 1.227337905631992131e-05, 1.196803888485615341e-05, 1.166270172600119756e-05, 1.135736807587453294e-05, 1.105203843054665144e-05, 1.074671328607904943e-05, 1.044139313846898773e-05, 1.013607848366241556e-05, 9.830769817559772796e-06, 9.525467636022152900e-06, 9.220172434884044049e-06, 8.914884709898065294e-06, 8.609604956775082044e-06, 8.304333671196898007e-06, 7.999071348774706530e-06, 7.693818485061870634e-06, 7.388575575593930919e-06, 7.083343115833434073e-06, 6.778121601182612110e-06, 6.472911526989532676e-06, 6.167713388554008793e-06, 5.862527681140420406e-06, 5.557354899915709869e-06, 5.252195540023363500e-06, 4.947050096528255335e-06, 4.641919064429386508e-06, 4.336802938699952445e-06, 4.031702214232088366e-06, 3.726617385849679387e-06, 3.421548948314377421e-06, 3.116497396345182461e-06, 2.811463224563266003e-06, 2.506446927572757668e-06, 2.201448999864722573e-06, 1.896469935897999836e-06, 1.591510230043991267e-06, 1.286570376599444793e-06, 9.816508698264824800e-07, 6.767522038973777989e-07, 3.718748729073760495e-07, 6.701937088068070071e-08, -2.378138082099356928e-07, -5.426241704983303512e-07, -8.474112221441950525e-07, -1.152174469429043984e-06, -1.456913418675415759e-06, -1.761627576308873821e-06, -2.066316448818001709e-06, -2.370979542748401412e-06, -2.675616364757880948e-06, -2.980226421576460858e-06, -3.284809219993575540e-06, -3.589364266899640964e-06, -3.893891069273299206e-06, -4.198389134141363107e-06, -4.502857968634068227e-06, -4.807297079972205576e-06, -5.111705975461149177e-06, -5.416084162484844676e-06, -5.720431148493058958e-06, -6.024746441056462694e-06, -6.329029547826704600e-06, -6.633279976523613615e-06, -6.937497234990322112e-06, -7.241680831112565678e-06, -7.545830272914558777e-06, -7.849945068478275897e-06, -8.154024726005404386e-06, -8.458068753763773006e-06, -8.762076660149267502e-06, -9.066047953605138008e-06, -9.369982142717859456e-06, -9.673878736136463553e-06, -9.977737242627650126e-06, -1.028155717106287496e-05, -1.058533803037865443e-05, -1.088907932963142615e-05, -1.119278057798487566e-05, -1.149644128470397162e-05, -1.180006095913525363e-05, -1.210363911076209273e-05, -1.240717524912398263e-05, -1.271066888391221383e-05, -1.301411952488940549e-05, -1.331752668194452187e-05, -1.362088986508005846e-05, -1.392420858437208573e-05, -1.422748235002548751e-05, -1.453071067236775399e-05, -1.483389306180917110e-05, -1.513702902889109807e-05, -1.544011808427319581e-05, -1.574315973869351982e-05, -1.604615350302345200e-05, -1.634909888825511370e-05, -1.665199540549515528e-05, -1.695484256595898952e-05, -1.725763988095787609e-05, -1.756038686195400572e-05, -1.786308302052047966e-05, -1.816572786832871937e-05, -1.846832091718986606e-05, -1.877086167904191600e-05, -1.907334966590997432e-05, -1.937578438996115631e-05, -1.967816536349183110e-05, -1.998049209892178730e-05, -2.028276410878791751e-05, -2.058498090573181437e-05, -2.088714200255449571e-05, -2.118924691217653972e-05, -2.149129514762561328e-05, -2.179328622209097344e-05, -2.209521964885037527e-05, -2.239709494133112932e-05, -2.269891161309773166e-05, -2.300066917784577528e-05, -2.330236714938252603e-05, -2.360400504168170529e-05, -2.390558236880312008e-05, -2.420709864498819482e-05, -2.450855338457955069e-05, -2.480994610207586280e-05, -2.511127631211914119e-05, -2.541254352945508289e-05, -2.571374726898754970e-05, -2.601488704576641157e-05, -2.631596237498082117e-05, -2.661697277194053171e-05, -2.691791775213005285e-05, -2.721879683112877888e-05, -2.751960952470609021e-05, -2.782035534874130871e-05, -2.812103381928485014e-05, -2.842164445251247083e-05, -2.872218676475213551e-05, -2.902266027247205047e-05, -2.932306449230795157e-05, -2.962339894101691722e-05, -2.992366313552528335e-05, -3.022385659291571767e-05, -3.052397883038798510e-05, -3.082402936531347979e-05, -3.112400771522205880e-05, -3.142391339779686504e-05, -3.172374593086762557e-05, -3.202350483239858306e-05, -3.232318962054278041e-05, -3.262279981360229769e-05, -3.292233493001598706e-05, -3.322179448841377776e-05, -3.352117800753681785e-05, -3.382048500633245709e-05, -3.411971500387412439e-05, -3.441886751941614780e-05, -3.471794207237404914e-05, -3.501693818231898066e-05, -3.531585536896474851e-05, -3.561469315222911761e-05, -3.591345105216075671e-05, -3.621212858899388904e-05, -3.651072528313484809e-05, -3.680924065512394090e-05, -3.710767422568860777e-05, -3.740602551573125217e-05, -3.770429404632378575e-05, -3.800247933868732675e-05, -3.830058091424741972e-05, -3.859859829455396718e-05, -3.889653100137567044e-05, -3.919437855662108612e-05, -3.949214048239220605e-05, -3.978981630097195508e-05, -4.008740553478528854e-05, -4.038490770645313129e-05, -4.068232233877982134e-05, -4.097964895474690954e-05, -4.127688707749440966e-05, -4.157403623037443251e-05, -4.187109593687260840e-05, -4.216806572070121335e-05, -4.246494510572095741e-05, -4.276173361600090042e-05, -4.305843077577969176e-05, -4.335503610945950559e-05, -4.365154914166036621e-05, -4.394796939718035775e-05, -4.424429640098390809e-05, -4.454052967825465723e-05, -4.483666875431774031e-05, -4.513271315473243273e-05, -4.542866240521392494e-05, -4.572451603168684812e-05, -4.602027356026630069e-05, -4.631593451725188516e-05, -4.661149842911496878e-05, -4.690696482255313758e-05, -4.720233322445053489e-05, -4.749760316186556924e-05, -4.779277416208467039e-05, -4.808784575254379995e-05, -4.838281746092120480e-05, -4.867768881505997122e-05, -4.897245934302702582e-05, -4.926712857306163589e-05, -4.956169603363571143e-05, -4.985616125337495651e-05, -5.015052376115232749e-05, -5.044478308600929966e-05, -5.073893875721005695e-05, -5.103299030422808855e-05, -5.132693725670799107e-05, -5.162077914451910268e-05, -5.191451549774245202e-05, -5.220814584666552693e-05, -5.250166972176252843e-05, -5.279508665374908901e-05, -5.308839617350272612e-05, -5.338159781215602253e-05, -5.367469110101886196e-05, -5.396767557163175148e-05, -5.426055075575280431e-05, -5.455331618531951491e-05, -5.484597139250226439e-05, -5.513851590969804566e-05, -5.543094926949225206e-05, -5.572327100470461371e-05, -5.601548064837784722e-05, -5.630757773373833982e-05, -5.659956179424933628e-05, -5.689143236359902619e-05, -5.718318897569439792e-05, -5.747483116465564143e-05, -5.776635846480332757e-05, -5.805777041071212352e-05, -5.834906653717189024e-05, -5.864024637917568855e-05, -5.893130947197211213e-05, -5.922225535098839732e-05, -5.951308355192237698e-05, -5.980379361066464835e-05, -6.009438506335146177e-05, -6.038485744634646544e-05, -6.067521029623443735e-05, -6.096544314980870859e-05, -6.125555554412491261e-05, -6.154554701646204205e-05, -6.183541710430986527e-05, -6.212516534542258072e-05, -6.241479127774746973e-05, -6.270429443948394483e-05, -6.299367436907156936e-05, -6.328293060518455507e-05, -6.357206268671253117e-05, -6.386107015281361596e-05, -6.414995254283689641e-05, -6.443870939641412456e-05, -6.472734025338286110e-05, -6.501584465383849001e-05, -6.530422213812294287e-05, -6.559247224678523382e-05, -6.588059452063584596e-05, -6.616858850073213520e-05, -6.645645372837486083e-05, -6.674418974508792451e-05, -6.703179609267182143e-05, -6.731927231312601144e-05, -6.760661794874075093e-05, -6.789383254202012810e-05, -6.818091563574069113e-05, -6.846786677290683332e-05, -6.875468549677818267e-05, -6.904137135085651022e-05, -6.932792387891278084e-05, -6.961434262494229437e-05, -6.990062713322403218e-05, -7.018677694824347548e-05, -7.047279161478385448e-05, -7.075867067784934628e-05, -7.104441368271765861e-05, -7.133002017492115119e-05, -7.161548970024104880e-05, -7.190082180469582675e-05, -7.218601603459241236e-05, -7.247107193648957954e-05, -7.275598905718450471e-05, -7.304076694376597403e-05, -7.332540514353720173e-05, -7.360990320410748587e-05, -7.389426067331437617e-05, -7.417847709928358975e-05, -7.446255203037780964e-05, -7.474648501525451346e-05, -7.503027560279101438e-05, -7.531392334217390776e-05, -7.559742778282373273e-05, -7.588078847444561790e-05, -7.616400496701857491e-05, -7.644707681075710412e-05, -7.673000355616348025e-05, -7.701278475401478261e-05, -7.729541995535843632e-05, -7.757790871149285931e-05, -7.786025057401972085e-05, -7.814244509476788478e-05, -7.842449182588339827e-05, -7.870639031975374680e-05, -7.898814012905959762e-05, -7.926974080676277875e-05, -7.955119190606811501e-05, -7.983249298047656746e-05, -8.011364358377162675e-05, -8.039464327001469160e-05, -8.067549159353907867e-05, -8.095618810893759484e-05, -8.123673237112081309e-05, -8.151712393524856450e-05, -8.179736235678023164e-05, -8.207744719145677794e-05, -8.235737799529589589e-05, -8.263715432457933541e-05, -8.291677573590379359e-05, -8.319624178614494633e-05, -8.347555203244388217e-05, -8.375470603226037737e-05, -8.403370334329564643e-05, -8.431254352358284591e-05, -8.459122613141215605e-05, -8.486975072538047789e-05, -8.514811686437475009e-05, -8.542632410756574189e-05, -8.570437201439603202e-05, -8.598226014463123724e-05, -8.625998805832293264e-05, -8.653755531579677962e-05, -8.681496147770341562e-05, -8.709220610494406432e-05, -8.736928875875877611e-05, -8.764620900065146910e-05, -8.792296639244836761e-05, -8.819956049624699042e-05, -8.847599087447449446e-05, -8.875225708981203810e-05, -8.902835870528459379e-05, -8.930429528418520294e-05, -8.958006639012575730e-05, -8.985567158702612977e-05, -9.013111043907750131e-05, -9.040638251079070279e-05, -9.068148736698790726e-05, -9.095642457279399704e-05, -9.123119369362017869e-05, -9.150579429521435773e-05, -9.178022594358666757e-05, -9.205448820509723560e-05, -9.232858064638286406e-05, -9.260250283440690333e-05, -9.287625433644781361e-05, -9.314983472006260019e-05, -9.342324355313604976e-05, -9.369648040387745075e-05, -9.396954484078177885e-05, -9.424243643268734945e-05, -9.451515474870243077e-05, -9.478769935829157338e-05, -9.506006983120261636e-05, -9.533226573751715685e-05, -9.560428664763221350e-05, -9.587613213225419564e-05, -9.614780176238910472e-05, -9.641929510939022574e-05, -9.669061174492341916e-05, -9.696175124095489655e-05, -9.723271316980101257e-05, -9.750349710405582673e-05, -9.777410261667678244e-05, -9.804452928091245850e-05, -9.831477667035232041e-05, -9.858484435890790950e-05, -9.885473192080940056e-05, -9.912443893059225261e-05, -9.939396496314728546e-05, -9.966330959368536189e-05, -9.993247239772467530e-05, -1.002014529511412736e-04, -1.004702508301019741e-04, -1.007388656111203492e-04, -1.010072968710452472e-04, -1.012755441870542871e-04, -1.015436071366376499e-04, -1.018114852976469083e-04, -1.020791782482225883e-04, -1.023466855668798216e-04, -1.026140068324361100e-04, -1.028811416240619310e-04, -1.031480895212661146e-04, -1.034148501038639268e-04, -1.036814229520229453e-04, -1.039478076462540195e-04, -1.042140037674037901e-04, -1.044800108966515171e-04, -1.047458286154959211e-04, -1.050114565058047304e-04, -1.052768941497794726e-04, -1.055421411299431000e-04, -1.058071970291838196e-04, -1.060720614307131878e-04, -1.063367339180913592e-04, -1.066012140752141846e-04, -1.068655014863399634e-04, -1.071295957360465909e-04, -1.073934964092862964e-04, -1.076572030913154013e-04, -1.079207153677776121e-04, -1.081840328246340627e-04, -1.084471550482101788e-04, -1.087100816251798218e-04, -1.089728121425593253e-04, -1.092353461876968565e-04, -1.094976833483199180e-04, -1.097598232125003819e-04, -1.100217653686436483e-04, -1.102835094055362275e-04, -1.105450549122766093e-04, -1.108064014783569979e-04, -1.110675486935939230e-04, -1.113284961481822330e-04, -1.115892434326474174e-04, -1.118497901379007927e-04, -1.121101358551688799e-04, -1.123702801760755060e-04, -1.126302226925737971e-04, -1.128899629969918375e-04, -1.131495006820229380e-04, -1.134088353406899531e-04, -1.136679665663940829e-04, -1.139268939529029611e-04, -1.141856170943455855e-04, -1.144441355852069520e-04, -1.147024490203179170e-04, -1.149605569949004898e-04, -1.152184591045357675e-04, -1.154761549451518868e-04, -1.157336441130599924e-04, -1.159909262049411857e-04, -1.162480008178153138e-04, -1.165048675490872509e-04, -1.167615259965337662e-04, -1.170179757583012875e-04, -1.172742164328988135e-04, -1.175302476191877221e-04, -1.177860689164338934e-04, -1.180416799242458019e-04, -1.182970802426202021e-04, -1.185522694719264481e-04, -1.188072472128999340e-04, -1.190620130666331631e-04, -1.193165666346205527e-04, -1.195709075187255415e-04, -1.198250353211697210e-04, -1.200789496445790766e-04, -1.203326500919158046e-04, -1.205861362665591264e-04, -1.208394077722378912e-04, -1.210924642130755844e-04, -1.213453051935750539e-04, -1.215979303186128039e-04, -1.218503391934282079e-04, -1.221025314236704948e-04, -1.223545066153636479e-04, -1.226062643748967963e-04, -1.228578043090708491e-04, -1.231091260250294318e-04, -1.233602291303391712e-04, -1.236111132329240200e-04, -1.238617779411145883e-04, -1.241122228636049377e-04, -1.243624476095035389e-04, -1.246124517882659971e-04, -1.248622350097751746e-04, -1.251117968842735363e-04, -1.253611370224092555e-04, -1.256102550352250740e-04, -1.258591505341259654e-04, -1.261078231309237501e-04, -1.263562724378274461e-04, -1.266044980674373870e-04, -1.268524996327403433e-04, -1.271002767470997641e-04, -1.273478290242998235e-04, -1.275951560785141680e-04, -1.278422575242934482e-04, -1.280891329766064104e-04, -1.283357820508007564e-04, -1.285822043626262375e-04, -1.288283995282235139e-04, -1.290743671641486308e-04, -1.293201068873332284e-04, -1.295656183151352818e-04, -1.298109010652737517e-04, -1.300559547559060770e-04, -1.303007790055631500e-04, -1.305453734331926577e-04, -1.307897376581452305e-04, -1.310338713001676664e-04, -1.312777739793934172e-04, -1.315214453163870132e-04, -1.317648849321120526e-04, -1.320080924479193020e-04, -1.322510674855931548e-04, -1.324938096672856032e-04, -1.327363186155929725e-04, -1.329785939534915465e-04, -1.332206353043817221e-04, -1.334624422920720709e-04, -1.337040145407746234e-04, -1.339453516750942978e-04, -1.341864533200789902e-04, -1.344273191011594829e-04, -1.346679486441938690e-04, -1.349083415754582561e-04, -1.351484975216138602e-04, -1.353884161097498862e-04, -1.356280969673752878e-04, -1.358675397224131298e-04, -1.361067440031957633e-04, -1.363457094384530892e-04, -1.365844356573599379e-04, -1.368229222895005074e-04, -1.370611689648603673e-04, -1.372991753138585243e-04, -1.375369409673370135e-04, -1.377744655565305411e-04, -1.380117487131084155e-04, -1.382487900691651422e-04, -1.384855892572155178e-04, -1.387221459101901574e-04, -1.389584596614244359e-04, -1.391945301447031571e-04, -1.394303569942279193e-04, -1.396659398446078722e-04, -1.399012783308965530e-04, -1.401363720885621250e-04, -1.403712207534800862e-04, -1.406058239619791851e-04, -1.408401813508083260e-04, -1.410742925571275967e-04, -1.413081572185491701e-04, -1.415417749730770499e-04, -1.417751454591803897e-04, -1.420082683157304734e-04, -1.422411431820428914e-04, -1.424737696978646919e-04, -1.427061475033665483e-04, -1.429382762391349525e-04, -1.431701555462146886e-04, -1.434017850660758734e-04, -1.436331644406073425e-04, -1.438642933121558984e-04, -1.440951713234659749e-04, -1.443257981177527662e-04, -1.445561733386401026e-04, -1.447862966302082902e-04, -1.450161676369570861e-04, -1.452457860038297674e-04, -1.454751513761990908e-04, -1.457042633998920664e-04, -1.459331217211535560e-04, -1.461617259866816179e-04, -1.463900758436191313e-04, -1.466181709395222193e-04, -1.468460109224041857e-04, -1.470735954407224508e-04, -1.473009241433774941e-04, -1.475279966797047768e-04, -1.477548126994684269e-04, -1.479813718528999445e-04, -1.482076737906696607e-04, -1.484337181638770067e-04, -1.486595046240803293e-04, -1.488850328232886513e-04, -1.491103024139317198e-04, -1.493353130488990922e-04, -1.495600643815388621e-04, -1.497845560656254043e-04, -1.500087877554056974e-04, -1.502327591055401261e-04, -1.504564697711730089e-04, -1.506799194078732378e-04, -1.509031076716739602e-04, -1.511260342190589450e-04, -1.513486987069584627e-04, -1.515711007927378199e-04, -1.517932401342403479e-04, -1.520151163897571535e-04, -1.522367292180162228e-04, -1.524580782782248135e-04, -1.526791632300090920e-04, -1.528999837334847145e-04, -1.531205394491972510e-04, -1.533408300381632484e-04, -1.535608551618551339e-04, -1.537806144821970403e-04, -1.540001076615551566e-04, -1.542193343627785214e-04, -1.544382942491693157e-04, -1.546569869844728335e-04, -1.548754122329191432e-04, -1.550935696591686599e-04, -1.553114589283557305e-04, -1.555290797060812885e-04, -1.557464316584066736e-04, -1.559635144518514639e-04, -1.561803277533808714e-04, -1.563968712304489750e-04, -1.566131445509671700e-04, -1.568291473832972294e-04, -1.570448793962790591e-04, -1.572603402592214557e-04, -1.574755296418758953e-04, -1.576904472144724750e-04, -1.579050926477141941e-04, -1.581194656127697705e-04, -1.583335657812701450e-04, -1.585473928253003492e-04, -1.587609464174375340e-04, -1.589742262307229160e-04, -1.591872319386520738e-04, -1.593999632152109166e-04, -1.596124197348392545e-04, -1.598246011724536759e-04, -1.600365072034382226e-04, -1.602481375036610058e-04, -1.604594917494445801e-04, -1.606705696176077933e-04, -1.608813707854094357e-04, -1.610918949306155144e-04, -1.613021417314416007e-04, -1.615121108665935965e-04, -1.617218020152517424e-04, -1.619312148570677438e-04, -1.621403490721545803e-04, -1.623492043411255093e-04, -1.625577803450676119e-04, -1.627660767655292697e-04, -1.629740932845631272e-04, -1.631818295846650774e-04, -1.633892853488440582e-04, -1.635964602605655105e-04, -1.638033540037878079e-04, -1.640099662629557783e-04, -1.642162967229708614e-04, -1.644223450692304381e-04, -1.646281109876235208e-04, -1.648335941645023470e-04, -1.650387942867155566e-04, -1.652437110416014421e-04, -1.654483441169570218e-04, -1.656526932010783182e-04, -1.658567579827513320e-04, -1.660605381512466206e-04, -1.662640333963163986e-04, -1.664672434081847794e-04, -1.666701678775851802e-04, -1.668728064957346541e-04, -1.670751589543231015e-04, -1.672772249455428966e-04, -1.674790041620788578e-04, -1.676804962970826073e-04, -1.678817010442085656e-04, -1.680826180976052243e-04, -1.682832471519126523e-04, -1.684835879022555298e-04, -1.686836400442381879e-04, -1.688834032739771620e-04, -1.690828772880783692e-04, -1.692820617836269983e-04, -1.694809564582173522e-04, -1.696795610099307574e-04, -1.698778751373273242e-04, -1.700758985394847068e-04, -1.702736309159714860e-04, -1.704710719668375200e-04, -1.706682213926509701e-04, -1.708650788944454180e-04, -1.710616441737825336e-04, -1.712579169326982167e-04, -1.714538968737391075e-04, -1.716495836999560817e-04, -1.718449771148741366e-04, -1.720400768225323438e-04, -1.722348825274729262e-04, -1.724293939347377883e-04, -1.726236107498560479e-04, -1.728175326788798150e-04, -1.730111594283311469e-04, -1.732044907052645796e-04, -1.733975262172158724e-04, -1.735902656722394398e-04, -1.737827087788804061e-04, -1.739748552461899741e-04, -1.741667047837213594e-04, -1.743582571015436951e-04, -1.745495119102127314e-04, -1.747404689208036869e-04, -1.749311278449018159e-04, -1.751214883945756830e-04, -1.753115502824129958e-04, -1.755013132215135037e-04, -1.756907769254844437e-04, -1.758799411084358791e-04, -1.760688054849728382e-04, -1.762573697702311207e-04, -1.764456336798507345e-04, -1.766335969299689837e-04, -1.768212592372446197e-04, -1.770086203188520947e-04, -1.771956798924541581e-04, -1.773824376762377444e-04, -1.775688933889113161e-04, -1.777550467496759974e-04, -1.779408974782675323e-04, -1.781264452949053007e-04, -1.783116899203507832e-04, -1.784966310758579866e-04, -1.786812684832077042e-04, -1.788656018646993305e-04, -1.790496309431269814e-04, -1.792333554418106922e-04, -1.794167750845924330e-04, -1.795998895958296579e-04, -1.797826987003827012e-04, -1.799652021236509893e-04, -1.801473995915205931e-04, -1.803292908304270298e-04, -1.805108755673007280e-04, -1.806921535296041612e-04, -1.808731244453224156e-04, -1.810537880429397169e-04, -1.812341440514725257e-04, -1.814141922004610806e-04, -1.815939322199660645e-04, -1.817733638405577350e-04, -1.819524867933478549e-04, -1.821313008099440466e-04, -1.823098056224906126e-04, -1.824880009636568260e-04, -1.826658865666354130e-04, -1.828434621651380801e-04, -1.830207274933886566e-04, -1.831976822861557292e-04, -1.833743262787271907e-04, -1.835506592069041133e-04, -1.837266808070254153e-04, -1.839023908159593493e-04, -1.840777889710797587e-04, -1.842528750103009073e-04, -1.844276486720657158e-04, -1.846021096953447864e-04, -1.847762578196335292e-04, -1.849500927849421334e-04, -1.851236143318298825e-04, -1.852968222013806241e-04, -1.854697161351948553e-04, -1.856422958754201343e-04, -1.858145611647201540e-04, -1.859865117462941760e-04, -1.861581473638672726e-04, -1.863294677617087318e-04, -1.865004726846016989e-04, -1.866711618778817204e-04, -1.868415350873906650e-04, -1.870115920595274376e-04, -1.871813325412058577e-04, -1.873507562798855321e-04, -1.875198630235620160e-04, -1.876886525207464569e-04, -1.878571245204959251e-04, -1.880252787724053366e-04, -1.881931150266071006e-04, -1.883606330337548836e-04, -1.885278325450586562e-04, -1.886947133122376659e-04, -1.888612750875754060e-04, -1.890275176238712606e-04, -1.891934406744793726e-04, -1.893590439932790455e-04, -1.895243273346914671e-04, -1.896892904536732582e-04, -1.898539331057299173e-04, -1.900182550468918592e-04, -1.901822560337401919e-04, -1.903459358233994259e-04, -1.905092941735153287e-04, -1.906723308422865839e-04, -1.908350455884551961e-04, -1.909974381713047556e-04, -1.911595083506579184e-04, -1.913212558868661328e-04, -1.914826805408437107e-04, -1.916437820740423488e-04, -1.918045602484468189e-04, -1.919650148265959202e-04, -1.921251455715760551e-04, -1.922849522469985428e-04, -1.924444346170306268e-04, -1.926035924463884825e-04, -1.927624255003324732e-04, -1.929209335446655784e-04, -1.930791163457247744e-04, -1.932369736704159994e-04, -1.933945052861720058e-04, -1.935517109609849668e-04, -1.937085904633966652e-04, -1.938651435624777573e-04, -1.940213700278594592e-04, -1.941772696297232466e-04, -1.943328421387993644e-04, -1.944880873263562550e-04, -1.946430049642289110e-04, -1.947975948247771330e-04, -1.949518566809357823e-04, -1.951057903061715758e-04, -1.952593954745123048e-04, -1.954126719605409805e-04, -1.955656195393723072e-04, -1.957182379866846385e-04, -1.958705270787107077e-04, -1.960224865922359473e-04, -1.961741163045862104e-04, -1.963254159936601341e-04, -1.964763854378829525e-04, -1.966270244162575355e-04, -1.967773327083245985e-04, -1.969273100941911631e-04, -1.970769563545123960e-04, -1.972262712704870560e-04, -1.973752546238875263e-04, -1.975239061970371270e-04, -1.976722257728035295e-04, -1.978202131346220661e-04, -1.979678680664872462e-04, -1.981151903529319131e-04, -1.982621797790575196e-04, -1.984088361305251296e-04, -1.985551591935537917e-04, -1.987011487549169067e-04, -1.988468046019342054e-04, -1.989921265225031083e-04, -1.991371143050742231e-04, -1.992817677386479833e-04, -1.994260866128007509e-04, -1.995700707176456762e-04, -1.997137198438778279e-04, -1.998570337827361649e-04, -2.000000123260341103e-04, -2.001426552661323657e-04, -2.002849623959678318e-04, -2.004269335090175588e-04, -2.005685683993420332e-04, -2.007098668615477999e-04, -2.008508286908135374e-04, -2.009914536828833896e-04, -2.011317416340475050e-04, -2.012716923411706047e-04, -2.014113056016821979e-04, -2.015505812135753351e-04, -2.016895189754000213e-04, -2.018281186862827591e-04, -2.019663801458954045e-04, -2.021043031544954727e-04, -2.022418875128898712e-04, -2.023791330224592128e-04, -2.025160394851557833e-04, -2.026526067034791195e-04, -2.027888344805062041e-04, -2.029247226198834431e-04, -2.030602709258227348e-04, -2.031954792030947216e-04, -2.033303472570540510e-04, -2.034648748936012394e-04, -2.035990619192167971e-04, -2.037329081409510639e-04, -2.038664133664241549e-04, -2.039995774038199706e-04, -2.041324000618828895e-04, -2.042648811499422987e-04, -2.043970204778936472e-04, -2.045288178561933501e-04, -2.046602730958764342e-04, -2.047913860085514963e-04, -2.049221564063820821e-04, -2.050525841021125716e-04, -2.051826689090613756e-04, -2.053124106411171137e-04, -2.054418091127377204e-04, -2.055708641389439935e-04, -2.056995755353442873e-04, -2.058279431181158638e-04, -2.059559667039992555e-04, -2.060836461103230928e-04, -2.062109811549690038e-04, -2.063379716564124069e-04, -2.064646174336863256e-04, -2.065909183064116921e-04, -2.067168740947702152e-04, -2.068424846195330571e-04, -2.069677497020259765e-04, -2.070926691641698781e-04, -2.072172428284452771e-04, -2.073414705179186190e-04, -2.074653520562333886e-04, -2.075888872675955279e-04, -2.077120759767951198e-04, -2.078349180092014007e-04, -2.079574131907606469e-04, -2.080795613479872834e-04, -2.082013623079871677e-04, -2.083228158984224614e-04, -2.084439219475546729e-04, -2.085646802842089061e-04, -2.086850907377971979e-04, -2.088051531383033118e-04, -2.089248673162923879e-04, -2.090442331029048167e-04, -2.091632503298687348e-04, -2.092819188294799669e-04, -2.094002384346226259e-04, -2.095182089787633937e-04, -2.096358302959338215e-04, -2.097531022207551579e-04, -2.098700245884307599e-04, -2.099865972347460382e-04, -2.101028199960623590e-04, -2.102186927093156071e-04, -2.103342152120362166e-04, -2.104493873423322848e-04, -2.105642089388873762e-04, -2.106786798409783848e-04, -2.107927998884472369e-04, -2.109065689217350429e-04, -2.110199867818543420e-04, -2.111330533104073168e-04, -2.112457683495789357e-04, -2.113581317421350011e-04, -2.114701433314161597e-04, -2.115818029613641396e-04, -2.116931104764892518e-04, -2.118040657218951640e-04, -2.119146685432732086e-04, -2.120249187868832735e-04, -2.121348162995793896e-04, -2.122443609288047160e-04, -2.123535525225840321e-04, -2.124623909295225721e-04, -2.125708759988218270e-04, -2.126790075802530362e-04, -2.127867855241897133e-04, -2.128942096815789964e-04, -2.130012799039627354e-04, -2.131079960434703634e-04, -2.132143579528061579e-04, -2.133203654852693521e-04, -2.134260184947482533e-04, -2.135313168357189963e-04, -2.136362603632357038e-04, -2.137408489329551526e-04, -2.138450824011027562e-04, -2.139489606245105393e-04, -2.140524834605853706e-04, -2.141556507673331676e-04, -2.142584624033431757e-04, -2.143609182277866128e-04, -2.144630181004346403e-04, -2.145647618816461110e-04, -2.146661494323624472e-04, -2.147671806141247428e-04, -2.148678552890486110e-04, -2.149681733198570074e-04, -2.150681345698481929e-04, -2.151677389029203172e-04, -2.152669861835608209e-04, -2.153658762768466525e-04, -2.154644090484369773e-04, -2.155625843645934514e-04, -2.156604020921681062e-04, -2.157578620985960301e-04, -2.158549642519158054e-04, -2.159517084207414816e-04, -2.160480944742952918e-04, -2.161441222823794900e-04, -2.162397917153969238e-04, -2.163351026443354223e-04, -2.164300549407864171e-04, -2.165246484769158854e-04, -2.166188831255009151e-04, -2.167127587598993742e-04, -2.168062752540683420e-04, -2.168994324825621305e-04, -2.169922303205147477e-04, -2.170846686436633431e-04, -2.171767473283396698e-04, -2.172684662514688106e-04, -2.173598252905644616e-04, -2.174508243237454122e-04, -2.175414632297081147e-04, -2.176317418877609993e-04, -2.177216601777941978e-04, -2.178112179803013359e-04, -2.179004151763710496e-04, -2.179892516476785824e-04, -2.180777272764989044e-04, -2.181658419457068745e-04, -2.182535955387666969e-04, -2.183409879397417333e-04, -2.184280190332961284e-04, -2.185146887046760000e-04, -2.186009968397341038e-04, -2.186869433249178263e-04, -2.187725280472739282e-04, -2.188577508944416594e-04, -2.189426117546515937e-04, -2.190271105167415665e-04, -2.191112470701444778e-04, -2.191950213048838734e-04, -2.192784331115910763e-04, -2.193614823814794086e-04, -2.194441690063763121e-04, -2.195264928786940471e-04, -2.196084538914512953e-04, -2.196900519382629681e-04, -2.197712869133396649e-04, -2.198521587114861007e-04, -2.199326672281139540e-04, -2.200128123592318651e-04, -2.200925940014402044e-04, -2.201720120519478783e-04, -2.202510664085531112e-04, -2.203297569696569436e-04, -2.204080836342609830e-04, -2.204860463019666175e-04, -2.205636448729696489e-04, -2.206408792480743064e-04, -2.207177493286699356e-04, -2.207942550167603813e-04, -2.208703962149395378e-04, -2.209461728264054171e-04, -2.210215847549591728e-04, -2.210966319049928214e-04, -2.211713141815032290e-04, -2.212456314900907014e-04, -2.213195837369549726e-04, -2.213931708288907597e-04, -2.214663926733035921e-04, -2.215392491781856070e-04, -2.216117402521433589e-04, -2.216838658043759458e-04, -2.217556257446893207e-04, -2.218270199834861003e-04, -2.218980484317711486e-04, -2.219687110011498961e-04, -2.220390076038344929e-04, -2.221089381526309607e-04, -2.221785025609561881e-04, -2.222477007428163274e-04, -2.223165326128315417e-04, -2.223849980862153237e-04, -2.224530970787895121e-04, -2.225208295069762139e-04, -2.225881952877995667e-04, -2.226551943388793415e-04, -2.227218265784479921e-04, -2.227880919253374275e-04, -2.228539902989773317e-04, -2.229195216194094207e-04, -2.229846858072653251e-04, -2.230494827837914179e-04, -2.231139124708288385e-04, -2.231779747908277497e-04, -2.232416696668384473e-04, -2.233049970225165100e-04, -2.233679567821119575e-04, -2.234305488704922086e-04, -2.234927732131166019e-04, -2.235546297360539606e-04, -2.236161183659786346e-04, -2.236772390301597130e-04, -2.237379916564753084e-04, -2.237983761734088433e-04, -2.238583925100472616e-04, -2.239180405960781008e-04, -2.239773203617990060e-04, -2.240362317381012504e-04, -2.240947746564910935e-04, -2.241529490490724614e-04, -2.242107548485554845e-04, -2.242681919882591273e-04, -2.243252604020968221e-04, -2.243819600245932743e-04, -2.244382907908761687e-04, -2.244942526366805870e-04, -2.245498454983425299e-04, -2.246050693128011670e-04, -2.246599240176045558e-04, -2.247144095509050611e-04, -2.247685258514578368e-04, -2.248222728586250004e-04, -2.248756505123735187e-04, -2.249286587532700035e-04, -2.249812975224931260e-04, -2.250335667618264337e-04, -2.250854664136524145e-04, -2.251369964209677839e-04, -2.251881567273636712e-04, -2.252389472770471141e-04, -2.252893680148218406e-04, -2.253394188861029606e-04, -2.253890998369099453e-04, -2.254384108138667627e-04, -2.254873517641995198e-04, -2.255359226357454339e-04, -2.255841233769469243e-04, -2.256319539368468953e-04, -2.256794142651029128e-04, -2.257265043119659263e-04, -2.257732240283037153e-04, -2.258195733655839481e-04, -2.258655522758839130e-04, -2.259111607118821153e-04, -2.259563986268688215e-04, -2.260012659747333199e-04, -2.260457627099766325e-04, -2.260898887877022998e-04, -2.261336441636211238e-04, -2.261770287940540413e-04, -2.262200426359193574e-04, -2.262626856467475720e-04, -2.263049577846731127e-04, -2.263468590084402436e-04, -2.263883892773934975e-04, -2.264295485514898458e-04, -2.264703367912848208e-04, -2.265107539579483723e-04, -2.265508000132506914e-04, -2.265904749195713993e-04, -2.266297786398972704e-04, -2.266687111378174076e-04, -2.267072723775280399e-04, -2.267454623238363714e-04, -2.267832809421498476e-04, -2.268207281984885694e-04, -2.268578040594719037e-04, -2.268945084923309509e-04, -2.269308414649003601e-04, -2.269668029456229090e-04, -2.270023929035481765e-04, -2.270376113083315663e-04, -2.270724581302301331e-04, -2.271069333401149154e-04, -2.271410369094606623e-04, -2.271747688103454546e-04, -2.272081290154589171e-04, -2.272411174980912415e-04, -2.272737342321449496e-04, -2.273059791921238889e-04, -2.273378523531420687e-04, -2.273693536909193508e-04, -2.274004831817800663e-04, -2.274312408026549681e-04, -2.274616265310820706e-04, -2.274916403452079236e-04, -2.275212822237814058e-04, -2.275505521461622079e-04, -2.275794500923108857e-04, -2.276079760427979128e-04, -2.276361299788002385e-04, -2.276639118821009624e-04, -2.276913217350868949e-04, -2.277183595207562551e-04, -2.277450252227061485e-04, -2.277713188251468508e-04, -2.277972403128909122e-04, -2.278227896713592017e-04, -2.278479668865777627e-04, -2.278727719451777319e-04, -2.278972048343970197e-04, -2.279212655420820180e-04, -2.279449540566828023e-04, -2.279682703672559509e-04, -2.279912144634623763e-04, -2.280137863355714996e-04, -2.280359859744591632e-04, -2.280578133716042698e-04, -2.280792685190945288e-04, -2.281003514096216316e-04, -2.281210620364841244e-04, -2.281414003935845086e-04, -2.281613664754341460e-04, -2.281809602771470527e-04, -2.282001817944463761e-04, -2.282190310236562373e-04, -2.282375079617112172e-04, -2.282556126061483881e-04, -2.282733449551109452e-04, -2.282907050073493455e-04, -2.283076927622172962e-04, -2.283243082196734892e-04, -2.283405513802846910e-04, -2.283564222452214606e-04, -2.283719208162587997e-04, -2.283870470957795676e-04, -2.284018010867680851e-04, -2.284161827928162870e-04, -2.284301922181207402e-04, -2.284438293674831053e-04, -2.284570942463101629e-04, -2.284699868606138683e-04, -2.284825072170092370e-04, -2.284946553227174080e-04, -2.285064311855648572e-04, -2.285178348139815005e-04, -2.285288662170035937e-04, -2.285395254042699924e-04, -2.285498123860249975e-04, -2.285597271731184101e-04, -2.285692697770020613e-04, -2.285784402097344747e-04, -2.285872384839765568e-04, -2.285956646129939278e-04, -2.286037186106579515e-04, -2.286114004914420765e-04, -2.286187102704241125e-04, -2.286256479632873693e-04, -2.286322135863166449e-04, -2.286384071564014780e-04, -2.286442286910359586e-04, -2.286496782083167491e-04, -2.286547557269457407e-04, -2.286594612662245509e-04, -2.286637948460639022e-04, -2.286677564869722917e-04, -2.286713462100648008e-04, -2.286745640370590560e-04, -2.286774099902749312e-04, -2.286798840926359297e-04, -2.286819863676688050e-04, -2.286837168395032083e-04, -2.286850755328700079e-04, -2.286860624731057890e-04, -2.286866776861458059e-04, -2.286869211985315716e-04, -2.286867930374045699e-04, -2.286862932305092360e-04, -2.286854218061939060e-04, -2.286841787934060189e-04, -2.286825642216975109e-04, -2.286805781212210742e-04, -2.286782205227318654e-04, -2.286754914575871254e-04, -2.286723909577446890e-04, -2.286689190557647739e-04, -2.286650757848090586e-04, -2.286608611786407374e-04, -2.286562752716238690e-04, -2.286513180987236483e-04, -2.286459896955067041e-04, -2.286402900981402862e-04, -2.286342193433942168e-04, -2.286277774686365537e-04, -2.286209645118372498e-04, -2.286137805115673392e-04, -2.286062255069971764e-04, -2.285982995378987664e-04, -2.285900026446427836e-04, -2.285813348682017975e-04, -2.285722962501468569e-04, -2.285628868326505532e-04, -2.285531066584838759e-04, -2.285429557710180564e-04, -2.285324342142236182e-04, -2.285215420326704324e-04, -2.285102792715288007e-04, -2.284986459765675048e-04, -2.284866421941541040e-04, -2.284742679712558028e-04, -2.284615233554377158e-04, -2.284484083948648471e-04, -2.284349231383000839e-04, -2.284210676351053891e-04, -2.284068419352404194e-04, -2.283922460892635279e-04, -2.283772801483311137e-04, -2.283619441641969710e-04, -2.283462381892144310e-04, -2.283301622763326481e-04, -2.283137164790995815e-04, -2.282969008516596643e-04, -2.282797154487554840e-04, -2.282621603257274298e-04, -2.282442355385114164e-04, -2.282259411436411332e-04, -2.282072771982477462e-04, -2.281882437600568083e-04, -2.281688408873918370e-04, -2.281490686391753173e-04, -2.281289270749214915e-04, -2.281084162547432174e-04, -2.280875362393492301e-04, -2.280662870900424346e-04, -2.280446688687233210e-04, -2.280226816378876607e-04, -2.280003254606267774e-04, -2.279776004006242942e-04, -2.279545065221633983e-04, -2.279310438901196035e-04, -2.279072125699645450e-04, -2.278830126277614802e-04, -2.278584441301723356e-04, -2.278335071444510937e-04, -2.278082017384452018e-04, -2.277825279805982019e-04, -2.277564859399467485e-04, -2.277300756861200129e-04, -2.277032972893423119e-04, -2.276761508204303431e-04, -2.276486363507953538e-04, -2.276207539524403758e-04, -2.275925036979609302e-04, -2.275638856605474941e-04, -2.275348999139808115e-04, -2.275055465326354166e-04, -2.274758255914775742e-04, -2.274457371660663636e-04, -2.274152813325515377e-04, -2.273844581676767750e-04, -2.273532677487739612e-04, -2.273217101537702628e-04, -2.272897854611809448e-04, -2.272574937501144936e-04, -2.272248351002697435e-04, -2.271918095919344403e-04, -2.271584173059889547e-04, -2.271246583239052797e-04, -2.270905327277433165e-04, -2.270560406001523659e-04, -2.270211820243744894e-04, -2.269859570842373798e-04, -2.269503658641635778e-04, -2.269144084491604696e-04, -2.268780849248267656e-04, -2.268413953773487592e-04, -2.268043398935024686e-04, -2.267669185606533387e-04, -2.267291314667538012e-04, -2.266909787003438441e-04, -2.266524603505538579e-04, -2.266135765071003525e-04, -2.265743272602859849e-04, -2.265347127010062535e-04, -2.264947329207389279e-04, -2.264543880115504177e-04, -2.264136780660934965e-04, -2.263726031776072472e-04, -2.263311634399215887e-04, -2.262893589474471927e-04, -2.262471897951821246e-04, -2.262046560787126296e-04, -2.261617578942084702e-04, -2.261184953384249327e-04, -2.260748685087038835e-04, -2.260308775029733089e-04, -2.259865224197442248e-04, -2.259418033581099994e-04, -2.258967204177520719e-04, -2.258512736989380556e-04, -2.258054633025135247e-04, -2.257592893299140222e-04, -2.257127518831537839e-04, -2.256658510648325419e-04, -2.256185869781337898e-04, -2.255709597268264091e-04, -2.255229694152567274e-04, -2.254746161483563789e-04, -2.254259000316401629e-04, -2.253768211712023307e-04, -2.253273796737251505e-04, -2.252775756464642980e-04, -2.252274091972641978e-04, -2.251768804345466934e-04, -2.251259894673140289e-04, -2.250747364051521558e-04, -2.250231213582273176e-04, -2.249711444372850470e-04, -2.249188057536497594e-04, -2.248661054192299842e-04, -2.248130435465079562e-04, -2.247596202485531143e-04, -2.247058356390072475e-04, -2.246516898320962861e-04, -2.245971829426189441e-04, -2.245423150859590254e-04, -2.244870863780775360e-04, -2.244314969355107054e-04, -2.243755468753728325e-04, -2.243192363153591860e-04, -2.242625653737401225e-04, -2.242055341693607884e-04, -2.241481428216502542e-04, -2.240903914506089110e-04, -2.240322801768159238e-04, -2.239738091214231604e-04, -2.239149784061613985e-04, -2.238557881533407591e-04, -2.237962384858410573e-04, -2.237363295271173314e-04, -2.236760614012051019e-04, -2.236154342327089598e-04, -2.235544481468118366e-04, -2.234931032692694748e-04, -2.234313997264131117e-04, -2.233693376451448710e-04, -2.233069171529441870e-04, -2.232441383778581824e-04, -2.231810014485158711e-04, -2.231175064941104045e-04, -2.230536536444132473e-04, -2.229894430297655315e-04, -2.229248747810791127e-04, -2.228599490298398505e-04, -2.227946659081085569e-04, -2.227290255485112112e-04, -2.226630280842459536e-04, -2.225966736490859847e-04, -2.225299623773671794e-04, -2.224628944040070054e-04, -2.223954698644812946e-04, -2.223276888948447075e-04, -2.222595516317157438e-04, -2.221910582122813775e-04, -2.221222087743036976e-04, -2.220530034561102859e-04, -2.219834423965940816e-04, -2.219135257352206449e-04, -2.218432536120204599e-04, -2.217726261675902622e-04, -2.217016435431009810e-04, -2.216303058802858124e-04, -2.215586133214435000e-04, -2.214865660094403668e-04, -2.214141640877080662e-04, -2.213414077002520111e-04, -2.212682969916320757e-04, -2.211948321069785869e-04, -2.211210131919890450e-04, -2.210468403929223503e-04, -2.209723138566002394e-04, -2.208974337304163383e-04, -2.208222001623246975e-04, -2.207466133008384088e-04, -2.206706732950387134e-04, -2.205943802945674391e-04, -2.205177344496366497e-04, -2.204407359110110813e-04, -2.203633848300212879e-04, -2.202856813585641292e-04, -2.202076256490895982e-04, -2.201292178546158907e-04, -2.200504581287253945e-04, -2.199713466255518953e-04, -2.198918834997940213e-04, -2.198120689067144566e-04, -2.197319030021278527e-04, -2.196513859424180674e-04, -2.195705178845195162e-04, -2.194892989859340590e-04, -2.194077294047149266e-04, -2.193258092994742833e-04, -2.192435388293893794e-04, -2.191609181541919805e-04, -2.190779474341683674e-04, -2.189946268301624260e-04, -2.189109565035810413e-04, -2.188269366163775093e-04, -2.187425673310755515e-04, -2.186578488107413160e-04, -2.185727812190059829e-04, -2.184873647200495281e-04, -2.184015994786122163e-04, -2.183154856599862795e-04, -2.182290234300217715e-04, -2.181422129551172985e-04, -2.180550544022317279e-04, -2.179675479388729943e-04, -2.178796937331002408e-04, -2.177914919535347692e-04, -2.177029427693440481e-04, -2.176140463502482724e-04, -2.175248028665170837e-04, -2.174352124889758042e-04, -2.173452753890054909e-04, -2.172549917385296545e-04, -2.171643617100231223e-04, -2.170733854765187064e-04, -2.169820632115925126e-04, -2.168903950893686836e-04, -2.167983812845299433e-04, -2.167060219723033392e-04, -2.166133173284599985e-04, -2.165202675293280302e-04, -2.164268727517730095e-04, -2.163331331732229143e-04, -2.162390489716398275e-04, -2.161446203255413233e-04, -2.160498474139865616e-04, -2.159547304165807067e-04, -2.158592695134822184e-04, -2.157634648853917661e-04, -2.156673167135522554e-04, -2.155708251797525967e-04, -2.154739904663317970e-04, -2.153768127561638630e-04, -2.152792922326810302e-04, -2.151814290798447057e-04, -2.150832234821704869e-04, -2.149846756247102446e-04, -2.148857856930572728e-04, -2.147865538733584052e-04, -2.146869803522943637e-04, -2.145870653170864806e-04, -2.144868089554989479e-04, -2.143862114558403630e-04, -2.142852730069524795e-04, -2.141839937982277172e-04, -2.140823740195944445e-04, -2.139804138615165169e-04, -2.138781135149988883e-04, -2.137754731715859030e-04, -2.136724930233682620e-04, -2.135691732629636970e-04, -2.134655140835299537e-04, -2.133615156787693995e-04, -2.132571782429148208e-04, -2.131525019707332174e-04, -2.130474870575390571e-04, -2.129421336991775245e-04, -2.128364420920262560e-04, -2.127304124329988633e-04, -2.126240449195449065e-04, -2.125173397496578354e-04, -2.124102971218528994e-04, -2.123029172351805914e-04, -2.121952002892335597e-04, -2.120871464841274714e-04, -2.119787560205182791e-04, -2.118700290995915406e-04, -2.117609659230689249e-04, -2.116515666931952284e-04, -2.115418316127564812e-04, -2.114317608850575314e-04, -2.113213547139519688e-04, -2.112106133038056145e-04, -2.110995368595269329e-04, -2.109881255865459979e-04, -2.108763796908212423e-04, -2.107642993788497849e-04, -2.106518848576524681e-04, -2.105391363347732078e-04, -2.104260540182851733e-04, -2.103126381167955844e-04, -2.101988888394270910e-04, -2.100848063958453654e-04, -2.099703909962247065e-04, -2.098556428512797522e-04, -2.097405621722397842e-04, -2.096251491708598139e-04, -2.095094040594288221e-04, -2.093933270507549328e-04, -2.092769183581654673e-04, -2.091601781955186264e-04, -2.090431067771909954e-04, -2.089257043180781125e-04, -2.088079710336098382e-04, -2.086899071397316252e-04, -2.085715128529069579e-04, -2.084527883901212016e-04, -2.083337339688835267e-04, -2.082143498072289958e-04, -2.080946361237026804e-04, -2.079745931373695538e-04, -2.078542210678223790e-04, -2.077335201351653373e-04, -2.076124905600172806e-04, -2.074911325635299462e-04, -2.073694463673631287e-04, -2.072474321936914558e-04, -2.071250902652079938e-04, -2.070024208051227295e-04, -2.068794240371703492e-04, -2.067561001855879586e-04, -2.066324494751312915e-04, -2.065084721310773931e-04, -2.063841683792057009e-04, -2.062595384458249057e-04, -2.061345825577497767e-04, -2.060093009423047124e-04, -2.058836938273282940e-04, -2.057577614411774058e-04, -2.056315040127097249e-04, -2.055049217713121818e-04, -2.053780149468633113e-04, -2.052507837697679742e-04, -2.051232284709309569e-04, -2.049953492817652655e-04, -2.048671464342068983e-04, -2.047386201606933240e-04, -2.046097706941662467e-04, -2.044805982680780027e-04, -2.043511031163942979e-04, -2.042212854735765627e-04, -2.040911455746118486e-04, -2.039606836549743120e-04, -2.038298999506576049e-04, -2.036987946981510763e-04, -2.035673681344571742e-04, -2.034356204970804132e-04, -2.033035520240325251e-04, -2.031711629538203424e-04, -2.030384535254667235e-04, -2.029054239784880290e-04, -2.027720745529024420e-04, -2.026384054892415697e-04, -2.025044170285332317e-04, -2.023701094123021372e-04, -2.022354828825753876e-04, -2.021005376818818804e-04, -2.019652740532605216e-04, -2.018296922402353164e-04, -2.016937924868326081e-04, -2.015575750375862005e-04, -2.014210401375125846e-04, -2.012841880321484243e-04, -2.011470189675067547e-04, -2.010095331901126799e-04, -2.008717309469751832e-04, -2.007336124856128501e-04, -2.005951780540244050e-04, -2.004564279007245171e-04, -2.003173622747029257e-04, -2.001779814254568040e-04, -2.000382856029705113e-04, -1.998982750577180058e-04, -1.997579500406819258e-04, -1.996173108033278407e-04, -1.994763575976109726e-04, -1.993350906759785816e-04, -1.991935102913783685e-04, -1.990516166972333212e-04, -1.989094101474783878e-04, -1.987668908965172442e-04, -1.986240591992583708e-04, -1.984809153110903869e-04, -1.983374594878874718e-04, -1.981936919860278232e-04, -1.980496130623666607e-04, -1.979052229742445741e-04, -1.977605219794892582e-04, -1.976155103364235900e-04, -1.974701883038412070e-04, -1.973245561410391148e-04, -1.971786141077914761e-04, -1.970323624643519967e-04, -1.968858014714593456e-04, -1.967389313903402455e-04, -1.965917524827119937e-04, -1.964442650107604523e-04, -1.962964692371559051e-04, -1.961483654250598065e-04, -1.959999538381063772e-04, -1.958512347404079443e-04, -1.957022083965705530e-04, -1.955528750716733404e-04, -1.954032350312705950e-04, -1.952532885413959857e-04, -1.951030358685642413e-04, -1.949524772797791205e-04, -1.948016130425039751e-04, -1.946504434246843288e-04, -1.944989686947505331e-04, -1.943471891215948100e-04, -1.941951049746060273e-04, -1.940427165236268997e-04, -1.938900240389896865e-04, -1.937370277914888693e-04, -1.935837280524061431e-04, -1.934301250934799502e-04, -1.932762191869431020e-04, -1.931220106054802241e-04, -1.929674996222632095e-04, -1.928126865109248186e-04, -1.926575715455658346e-04, -1.925021550007747692e-04, -1.923464371515998088e-04, -1.921904182735544790e-04, -1.920340986426224159e-04, -1.918774785352660931e-04, -1.917205582283976846e-04, -1.915633379994217814e-04, -1.914058181261857089e-04, -1.912479988870217289e-04, -1.910898805607119384e-04, -1.909314634265170559e-04, -1.907727477641583144e-04, -1.906137338538250786e-04, -1.904544219761603160e-04, -1.902948124122843957e-04, -1.901349054437716419e-04, -1.899747013526540480e-04, -1.898142004214435836e-04, -1.896534029331043033e-04, -1.894923091710571988e-04, -1.893309194191847256e-04, -1.891692339618314801e-04, -1.890072530838134428e-04, -1.888449770703886504e-04, -1.886824062072764137e-04, -1.885195407806655840e-04, -1.883563810771842232e-04, -1.881929273839428902e-04, -1.880291799884843066e-04, -1.878651391788248553e-04, -1.877008052434259026e-04, -1.875361784712039899e-04, -1.873712591515335445e-04, -1.872060475742554444e-04, -1.870405440296411858e-04, -1.868747488084342720e-04, -1.867086622018191517e-04, -1.865422845014298378e-04, -1.863756159993700196e-04, -1.862086569881820546e-04, -1.860414077608583527e-04, -1.858738686108390179e-04, -1.857060398320248588e-04, -1.855379217187489826e-04, -1.853695145658175610e-04, -1.852008186684593063e-04, -1.850318343223687583e-04, -1.848625618236771735e-04, -1.846930014689587049e-04, -1.845231535552506767e-04, -1.843530183800262353e-04, -1.841825962411992824e-04, -1.840118874371279986e-04, -1.838408922666266341e-04, -1.836696110289321967e-04, -1.834980440237529969e-04, -1.833261915512128927e-04, -1.831540539118953084e-04, -1.829816314068117113e-04, -1.828089243374204226e-04, -1.826359330056320383e-04, -1.824626577137781504e-04, -1.822890987646334912e-04, -1.821152564614231706e-04, -1.819411311077901501e-04, -1.817667230078427580e-04, -1.815920324661005872e-04, -1.814170597875364003e-04, -1.812418052775510030e-04, -1.810662692419780142e-04, -1.808904519870917541e-04, -1.807143538196108489e-04, -1.805379750466702313e-04, -1.803613159758413339e-04, -1.801843769151404914e-04, -1.800071581729966591e-04, -1.798296600582976264e-04, -1.796518828803367557e-04, -1.794738269488556457e-04, -1.792954925740122558e-04, -1.791168800664087702e-04, -1.789379897370565239e-04, -1.787588218974254422e-04, -1.785793768593832713e-04, -1.783996549352459126e-04, -1.782196564377453568e-04, -1.780393816800355123e-04, -1.778588309757148371e-04, -1.776780046387975269e-04, -1.774969029837168753e-04, -1.773155263253317258e-04, -1.771338749789350901e-04, -1.769519492602252822e-04, -1.767697494853495027e-04, -1.765872759708501168e-04, -1.764045290337106246e-04, -1.762215089913238665e-04, -1.760382161614987187e-04, -1.758546508624846496e-04, -1.756708134129379749e-04, -1.754867041319302325e-04, -1.753023233389505947e-04, -1.751176713539190691e-04, -1.749327484971520473e-04, -1.747475550894070828e-04, -1.745620914518446459e-04, -1.743763579060382063e-04, -1.741903547739762125e-04, -1.740040823780642052e-04, -1.738175410411344401e-04, -1.736307310864128740e-04, -1.734436528375414175e-04, -1.732563066185859859e-04, -1.730686927540057616e-04, -1.728808115686972669e-04, -1.726926633879403441e-04, -1.725042485374449653e-04, -1.723155673433181918e-04, -1.721266201320763170e-04, -1.719374072306464115e-04, -1.717479289663776797e-04, -1.715581856670042994e-04, -1.713681776606731770e-04, -1.711779052759470645e-04, -1.709873688417759096e-04, -1.707965686875415794e-04, -1.706055051430024568e-04, -1.704141785383410108e-04, -1.702225892041269329e-04, -1.700307374713478205e-04, -1.698386236713745365e-04, -1.696462481360065287e-04, -1.694536111974160209e-04, -1.692607131881965308e-04, -1.690675544413286361e-04, -1.688741352901881334e-04, -1.686804560685705682e-04, -1.684865171106559982e-04, -1.682923187510187513e-04, -1.680978613246297566e-04, -1.679031451668693649e-04, -1.677081706134917057e-04, -1.675129380006767021e-04, -1.673174476649678369e-04, -1.671216999433262820e-04, -1.669256951730871505e-04, -1.667294336919926195e-04, -1.665329158381726306e-04, -1.663361419501533474e-04, -1.661391123668382356e-04, -1.659418274275395325e-04, -1.657442874719384292e-04, -1.655464928401341853e-04, -1.653484438725855816e-04, -1.651501409101616613e-04, -1.649515842941051377e-04, -1.647527743660468684e-04, -1.645537114680070754e-04, -1.643543959424061595e-04, -1.641548281320287322e-04, -1.639550083800464378e-04, -1.637549370300297991e-04, -1.635546144259105675e-04, -1.633540409120339551e-04, -1.631532168330974042e-04, -1.629521425342010026e-04, -1.627508183608143612e-04, -1.625492446587869415e-04, -1.623474217743520935e-04, -1.621453500541366244e-04, -1.619430298451195985e-04, -1.617404614946808014e-04, -1.615376453505627927e-04, -1.613345817608831574e-04, -1.611312710741558650e-04, -1.609277136392593395e-04, -1.607239098054411485e-04, -1.605198599223253762e-04, -1.603155643399218114e-04, -1.601110234085925004e-04, -1.599062374791029211e-04, -1.597012069025606170e-04, -1.594959320304666702e-04, -1.592904132146788379e-04, -1.590846508074225305e-04, -1.588786451613149347e-04, -1.586723966293282051e-04, -1.584659055647996283e-04, -1.582591723214349573e-04, -1.580521972533108232e-04, -1.578449807148845751e-04, -1.576375230609578502e-04, -1.574298246467025679e-04, -1.572218858276677332e-04, -1.570137069597511389e-04, -1.568052883992211038e-04, -1.565966305027246858e-04, -1.563877336272481082e-04, -1.561785981301438921e-04, -1.559692243691399092e-04, -1.557596127023028177e-04, -1.555497634880904825e-04, -1.553396770852882251e-04, -1.551293538530641985e-04, -1.549187941509306003e-04, -1.547079983387573065e-04, -1.544969667767762621e-04, -1.542856998255901825e-04, -1.540741978461339010e-04, -1.538624611997020436e-04, -1.536504902479582987e-04, -1.534382853528976868e-04, -1.532258468769008249e-04, -1.530131751826680885e-04, -1.528002706332759627e-04, -1.525871335921344331e-04, -1.523737644230218702e-04, -1.521601634900446429e-04, -1.519463311576912197e-04, -1.517322677907671715e-04, -1.515179737544490016e-04, -1.513034494142480963e-04, -1.510886951360173387e-04, -1.508737112859808154e-04, -1.506584982306935657e-04, -1.504430563370523152e-04, -1.502273859722986203e-04, -1.500114875040311189e-04, -1.497953613001699966e-04, -1.495790077290102746e-04, -1.493624271591567848e-04, -1.491456199595796812e-04, -1.489285864995755168e-04, -1.487113271487778686e-04, -1.484938422771820853e-04, -1.482761322551094533e-04, -1.480581974532101520e-04, -1.478400382424916327e-04, -1.476216549942741658e-04, -1.474030480802481955e-04, -1.471842178724076073e-04, -1.469651647431053200e-04, -1.467458890650135772e-04, -1.465263912111403727e-04, -1.463066715548306976e-04, -1.460867304697777342e-04, -1.458665683299820636e-04, -1.456461855097817789e-04, -1.454255823838599933e-04, -1.452047593272057008e-04, -1.449837167151718888e-04, -1.447624549234057434e-04, -1.445409743279084695e-04, -1.443192753049943355e-04, -1.440973582313039545e-04, -1.438752234838099498e-04, -1.436528714398254921e-04, -1.434303024769646728e-04, -1.432075169731709095e-04, -1.429845153067261620e-04, -1.427612978562113047e-04, -1.425378650005595233e-04, -1.423142171190116731e-04, -1.420903545911243022e-04, -1.418662777967754241e-04, -1.416419871161780442e-04, -1.414174829298390948e-04, -1.411927656186202592e-04, -1.409678355636654929e-04, -1.407426931464618469e-04, -1.405173387487988377e-04, -1.402917727527767684e-04, -1.400659955408356766e-04, -1.398400074957170355e-04, -1.396138090004711530e-04, -1.393874004384625662e-04, -1.391607821933718570e-04, -1.389339546492099093e-04, -1.387069181902719935e-04, -1.384796732011712951e-04, -1.382522200668448778e-04, -1.380245591725205614e-04, -1.377966909037500168e-04, -1.375686156463890334e-04, -1.373403337866053531e-04, -1.371118457108598586e-04, -1.368831518059391271e-04, -1.366542524589111675e-04, -1.364251480571840487e-04, -1.361958389884352640e-04, -1.359663256406724462e-04, -1.357366084021897554e-04, -1.355066876615846846e-04, -1.352765638077630468e-04, -1.350462372299450194e-04, -1.348157083176271969e-04, -1.345849774606117566e-04, -1.343540450490143996e-04, -1.341229114732251846e-04, -1.338915771239672099e-04, -1.336600423922248667e-04, -1.334283076693062618e-04, -1.331963733467936967e-04, -1.329642398165860329e-04, -1.327319074708514205e-04, -1.324993767020873090e-04, -1.322666479030498114e-04, -1.320337214668120885e-04, -1.318005977867248569e-04, -1.315672772564258487e-04, -1.313337602698675939e-04, -1.311000472212786876e-04, -1.308661385051716232e-04, -1.306320345163470209e-04, -1.303977356499001598e-04, -1.301632423012285406e-04, -1.299285548659905498e-04, -1.296936737401362246e-04, -1.294585993199160346e-04, -1.292233320018507407e-04, -1.289878721827388496e-04, -1.287522202596893834e-04, -1.285163766300783219e-04, -1.282803416915579808e-04, -1.280441158420629480e-04, -1.278076994798133090e-04, -1.275710930033252717e-04, -1.273342968113684766e-04, -1.270973113029958117e-04, -1.268601368775554750e-04, -1.266227739346512105e-04, -1.263852228741735881e-04, -1.261474840963059394e-04, -1.259095580014810980e-04, -1.256714449904108085e-04, -1.254331454640968937e-04, -1.251946598237895132e-04, -1.249559884710470920e-04, -1.247171318076641404e-04, -1.244780902357318605e-04, -1.242388641575983561e-04, -1.239994539758794748e-04, -1.237598600934675900e-04, -1.235200829135384040e-04, -1.232801228395101825e-04, -1.230399802750728922e-04, -1.227996556242000456e-04, -1.225591492911040322e-04, -1.223184616803003574e-04, -1.220775931965309619e-04, -1.218365442448292611e-04, -1.215953152304703250e-04, -1.213539065590133799e-04, -1.211123186362531267e-04, -1.208705518682814196e-04, -1.206286066614159518e-04, -1.203864834222587621e-04, -1.201441825576554418e-04, -1.199017044747066949e-04, -1.196590495807948199e-04, -1.194162182835458981e-04, -1.191732109908354994e-04, -1.189300281107957970e-04, -1.186866700518194440e-04, -1.184431372225689511e-04, -1.181994300319342406e-04, -1.179555488890645488e-04, -1.177114942033757444e-04, -1.174672663845212719e-04, -1.172228658423989415e-04, -1.169782929871838073e-04, -1.167335482292853959e-04, -1.164886319793506333e-04, -1.162435446482963577e-04, -1.159982866472603541e-04, -1.157528583876650242e-04, -1.155072602811409638e-04, -1.152614927395914180e-04, -1.150155561751483717e-04, -1.147694510001880808e-04, -1.145231776273356115e-04, -1.142767364694748973e-04, -1.140301279397048823e-04, -1.137833524513712479e-04, -1.135364104180772550e-04, -1.132893022536385867e-04, -1.130420283721481159e-04, -1.127945891878994150e-04, -1.125469851154516315e-04, -1.122992165695844670e-04, -1.120512839653143856e-04, -1.118031877178989644e-04, -1.115549282428471257e-04, -1.113065059558755520e-04, -1.110579212729397350e-04, -1.108091746102448581e-04, -1.105602663842013576e-04, -1.103111970114839443e-04, -1.100619669089818788e-04, -1.098125764938095701e-04, -1.095630261833105190e-04, -1.093133163950629018e-04, -1.090634475468899516e-04, -1.088134200568145846e-04, -1.085632343430923595e-04, -1.083128908242210459e-04, -1.080623899189077185e-04, -1.078117320460784202e-04, -1.075609176249109865e-04, -1.073099470747899964e-04, -1.070588208153172355e-04, -1.068075392663163169e-04, -1.065561028478376150e-04, -1.063045119801691067e-04, -1.060527670837902391e-04, -1.058008685794055399e-04, -1.055488168879544967e-04, -1.052966124305727564e-04, -1.050442556286283649e-04, -1.047917469037016951e-04, -1.045390866775931050e-04, -1.042862753723019034e-04, -1.040333134100634841e-04, -1.037802012132993715e-04, -1.035269392046825977e-04, -1.032735278070595180e-04, -1.030199674435158390e-04, -1.027662585373307973e-04, -1.025124015119941953e-04, -1.022583967912105206e-04, -1.020042447989098294e-04, -1.017499459592011797e-04, -1.014955006964078676e-04, -1.012409094350761284e-04, -1.009861725999289630e-04, -1.007312906159345782e-04, -1.004762639082263184e-04, -1.002210929021689914e-04, -9.996577802330791141e-05, -9.971031969740763159e-05, -9.945471835042857993e-05, -9.919897440853754872e-05, -9.894308829808504829e-05, -9.868706044564263071e-05, -9.843089127796484782e-05, -9.817458122199742340e-05, -9.791813070491250329e-05, -9.766154015406142488e-05, -9.740480999698584367e-05, -9.714794066142280196e-05, -9.689093257530925535e-05, -9.663378616679246759e-05, -9.637650186418549047e-05, -9.611908009599828048e-05, -9.586152129095018061e-05, -9.560382587793408754e-05, -9.534599428602748338e-05, -9.508802694452566642e-05, -9.482992428289553708e-05, -9.457168673078703621e-05, -9.431331471803608597e-05, -9.405480867467258586e-05, -9.379616903092820540e-05, -9.353739621718648372e-05, -9.327849066404305702e-05, -9.301945280226108425e-05, -9.276028306278623630e-05, -9.250098187675257768e-05, -9.224154967549220248e-05, -9.198198689049089040e-05, -9.172229395341923699e-05, -9.146247129614504061e-05, -9.120251935068571952e-05, -9.094243854927730778e-05, -9.068222932429282842e-05, -9.042189210831096406e-05, -9.016142733406839267e-05, -8.990083543447796154e-05, -8.964011684263175012e-05, -8.937927199181317243e-05, -8.911830131545041061e-05, -8.885720524714890028e-05, -8.859598422070378535e-05, -8.833463867005145415e-05, -8.807316902933955182e-05, -8.781157573284455382e-05, -8.754985921504000290e-05, -8.728801991054505017e-05, -8.702605825415748260e-05, -8.676397468085896784e-05, -8.650176962576760684e-05, -8.623944352417357699e-05, -8.597699681154760242e-05, -8.571442992350769617e-05, -8.545174329582824030e-05, -8.518893736447523608e-05, -8.492601256555901916e-05, -8.466296933534439692e-05, -8.439980811025674708e-05, -8.413652932688620543e-05, -8.387313342199972759e-05, -8.360962083249197461e-05, -8.334599199542125434e-05, -8.308224734802034986e-05, -8.281838732765323271e-05, -8.255441237185750939e-05, -8.229032291831865804e-05, -8.202611940488172427e-05, -8.176180226952722472e-05, -8.149737195041097798e-05, -8.123282888581081606e-05, -8.096817351419689486e-05, -8.070340627414739748e-05, -8.043852760441988828e-05, -8.017353794390237468e-05, -7.990843773163092546e-05, -7.964322740679408890e-05, -7.937790740874481896e-05, -7.911247817695205215e-05, -7.884694015103572724e-05, -7.858129377077722067e-05, -7.831553947607231936e-05, -7.804967770700051469e-05, -7.778370890374215600e-05, -7.751763350664777166e-05, -7.725145195619158398e-05, -7.698516469298126701e-05, -7.671877215779288495e-05, -7.645227479152358026e-05, -7.618567303519603248e-05, -7.591896732999355924e-05, -7.565215811721753424e-05, -7.538524583829951675e-05, -7.511823093483480768e-05, -7.485111384853509705e-05, -7.458389502123945506e-05, -7.431657489491949565e-05, -7.404915391168448576e-05, -7.378163251379232291e-05, -7.351401114360204712e-05, -7.324629024360787132e-05, -7.297847025645082296e-05, -7.271055162488216576e-05, -7.244253479177510907e-05, -7.217442020015847235e-05, -7.190620829316968503e-05, -7.163789951406514061e-05, -7.136949430622640373e-05, -7.110099311316414041e-05, -7.083239637853005783e-05, -7.056370454606822361e-05, -7.029491805965065482e-05, -7.002603736328772625e-05, -6.975706290108617117e-05, -6.948799511728433144e-05, -6.921883445625649431e-05, -6.894958136246541794e-05, -6.868023628049702586e-05, -6.841079965507160135e-05, -6.814127193099510675e-05, -6.787165355323032071e-05, -6.760194496681270408e-05, -6.733214661692099503e-05, -6.706225894882871809e-05, -6.679228240791537858e-05, -6.652221743970201083e-05, -6.625206448980225360e-05, -6.598182400393317855e-05, -6.571149642792156504e-05, -6.544108220772016315e-05, -6.517058178935971778e-05, -6.489999561901948241e-05, -6.462932414294326122e-05, -6.435856780751046495e-05, -6.408772705918046428e-05, -6.381680234453544287e-05, -6.354579411025457984e-05, -6.327470280312510857e-05, -6.300352887001888446e-05, -6.273227275793224285e-05, -6.246093491394394555e-05, -6.218951578522653788e-05, -6.191801581908092111e-05, -6.164643546288889157e-05, -6.137477516412293910e-05, -6.110303537035237278e-05, -6.083121652924869453e-05, -6.055931908859617008e-05, -6.028734349624378523e-05, -6.001529020014009623e-05, -5.974315964834498653e-05, -5.947095228899178075e-05, -5.919866857030024829e-05, -5.892630894061020008e-05, -5.865387384833372942e-05, -5.838136374196633866e-05, -5.810877907009191973e-05, -5.783612028138812095e-05, -5.756338782463790732e-05, -5.729058214867438817e-05, -5.701770370244658087e-05, -5.674475293496972716e-05, -5.647173029534386697e-05, -5.619863623275814132e-05, -5.592547119650254913e-05, -5.565223563591880577e-05, -5.537893000043562705e-05, -5.510555473958064191e-05, -5.483211030293099343e-05, -5.455859714018475391e-05, -5.428501570107618766e-05, -5.401136643544726093e-05, -5.373764979319846656e-05, -5.346386622430035718e-05, -5.319001617882919511e-05, -5.291610010691713334e-05, -5.264211845876456855e-05, -5.236807168464484394e-05, -5.209396023492178615e-05, -5.181978456000040794e-05, -5.154554511039914318e-05, -5.127124233666407289e-05, -5.099687668944100435e-05, -5.072244861942012940e-05, -5.044795857737172172e-05, -5.017340701415132074e-05, -4.989879438065065114e-05, -4.962412112783321855e-05, -4.934938770674548363e-05, -4.907459456848033120e-05, -4.879974216418747184e-05, -4.852483094511029799e-05, -4.824986136253558370e-05, -4.797483386780557353e-05, -4.769974891232292243e-05, -4.742460694755585248e-05, -4.714940842505052632e-05, -4.687415379638042173e-05, -4.659884351318272015e-05, -4.632347802717014479e-05, -4.604805779008673197e-05, -4.577258325375031155e-05, -4.549705487002714331e-05, -4.522147309084359251e-05, -4.494583836816068499e-05, -4.467015115401639107e-05, -4.439441190046972135e-05, -4.411862105967348350e-05, -4.384277908378778998e-05, -4.356688642505290968e-05, -4.329094353573906934e-05, -4.301495086815888125e-05, -4.273890887470234938e-05, -4.246281800778771442e-05, -4.218667871987309535e-05, -4.191049146346125317e-05, -4.163425669111762257e-05, -4.135797485542092646e-05, -4.108164640903518060e-05, -4.080527180462351983e-05, -4.052885149492142238e-05, -4.025238593268595566e-05, -3.997587557070847496e-05, -3.969932086184975841e-05, -3.942272225899068929e-05, -3.914608021503722309e-05, -3.886939518295703347e-05, -3.859266761573531754e-05, -3.831589796638681011e-05, -3.803908668799115586e-05, -3.776223423364384233e-05, -3.748534105646723853e-05, -3.720840760961620564e-05, -3.693143434628345706e-05, -3.665442171971087474e-05, -3.637737018314019156e-05, -3.610028018984858705e-05, -3.582315219316026120e-05, -3.554598664640929383e-05, -3.526878400295056109e-05, -3.499154471619637474e-05, -3.471426923956641235e-05, -3.443695802649910140e-05, -3.415961153045718939e-05, -3.388223020493342233e-05, -3.360481450346132579e-05, -3.332736487956607021e-05, -3.304988178680035119e-05, -3.277236567875583466e-05, -3.249481700901314120e-05, -3.221723623120914797e-05, -3.193962379898063723e-05, -3.166198016597578216e-05, -3.138430578585970336e-05, -3.110660111233228367e-05, -3.082886659907782052e-05, -3.055110269983855517e-05, -3.027330986832754692e-05, -2.999548855830180927e-05, -2.971763922351241296e-05, -2.943976231771599543e-05, -2.916185829471096299e-05, -2.888392760828760062e-05, -2.860597071223932054e-05, -2.832798806036851351e-05, -2.804998010650400789e-05, -2.777194730445114212e-05, -2.749389010806510422e-05, -2.721580897116336216e-05, -2.693770434759982661e-05, -2.665957669120763227e-05, -2.638142645584222803e-05, -2.610325409535571196e-05, -2.582506006360861853e-05, -2.554684481444415535e-05, -2.526860880173106974e-05, -2.499035247931928456e-05, -2.471207630105197692e-05, -2.443378072080141779e-05, -2.415546619241915974e-05, -2.387713316974752266e-05, -2.359878210662516050e-05, -2.332041345689216377e-05, -2.304202767440209417e-05, -2.276362521297157265e-05, -2.248520652641664073e-05, -2.220677206856448694e-05, -2.192832229320313634e-05, -2.164985765415496292e-05, -2.137137860518943834e-05, -2.109288560009646812e-05, -2.081437909263013502e-05, -2.053585953655723750e-05, -2.025732738560120930e-05, -1.997878309351532004e-05, -1.970022711399541053e-05, -1.942165990075349311e-05, -1.914308190746747860e-05, -1.886449358779258747e-05, -1.858589539539818228e-05, -1.830728778391711506e-05, -1.802867120695751126e-05, -1.775004611810837373e-05, -1.747141297095726874e-05, -1.719277221903991397e-05, -1.691412431591407368e-05, -1.663546971507191114e-05, -1.635680887001362624e-05, -1.607814223419711468e-05, -1.579947026104975186e-05, -1.552079340400470010e-05, -1.524211211645061692e-05, -1.496342685174349657e-05, -1.468473806321178438e-05, -1.440604620417454227e-05, -1.412735172789102313e-05, -1.384865508762810658e-05, -1.356995673660378146e-05, -1.329125712799881800e-05, -1.301255671496219050e-05, -1.273385595061660170e-05, -1.245515528807017181e-05, -1.217645518036595704e-05, -1.189775608051859398e-05, -1.161905844152589880e-05, -1.134036271633085588e-05, -1.106166935783336271e-05, -1.078297881892673193e-05, -1.050429155244728444e-05, -1.022560801118598591e-05, -9.946928647894040577e-06, -9.668253915288198773e-06, -9.389584266062652650e-06, -9.110920152838436120e-06, -8.832262028200023465e-06, -8.553610344707052260e-06, -8.274965554843835140e-06, -7.996328111093192265e-06, -7.717698465848818988e-06, -7.439077071488981111e-06, -7.160464380319999998e-06, -6.881860844625048449e-06, -6.603266916607687487e-06, -6.324683048465569229e-06, -6.046109692302799477e-06, -5.767547300203683788e-06, -5.488996324182349348e-06, -5.210457216194439951e-06, -4.931930428173635828e-06, -4.653416411981199279e-06, -4.374915619417735731e-06, -4.096428502228652012e-06, -3.817955512122010962e-06, -3.539497100718161773e-06, -3.261053719623524602e-06, -2.982625820342939604e-06, -2.704213854353393525e-06, -2.425818273053679689e-06, -2.147439527776054017e-06, -1.869078069822756548e-06, -1.590734350415624834e-06, -1.312408820701577212e-06, -1.034101931789116744e-06, -7.558141347041514630e-07, -4.775458804016944382e-07, -1.992976198023587719e-07, 7.893019625801497305e-08, 3.571371170166743246e-07, 6.353226917784788864e-07, 9.134864699104194522e-07, 1.191628000829943933e-06, 1.469746834055313308e-06, 1.747842519169113508e-06, 2.025914605806554397e-06, 2.303962643705869822e-06, 2.581986182634525161e-06, 2.859984772476894336e-06, 3.137957963160453390e-06, 3.415905304706196731e-06, 3.693826347210704600e-06, 3.971720640840709778e-06, 4.249587735821390739e-06, 4.527427182486732003e-06, 4.805238531243024207e-06, 5.083021332557206395e-06, 5.360775137007150128e-06, 5.638499495214251756e-06, 5.916193957899910878e-06, 6.193858075873866701e-06, 6.471491400028710114e-06, 6.749093481322023994e-06, 7.026663870826702051e-06, 7.304202119657309474e-06, 7.581707779057524684e-06, 7.859180400326538948e-06, 8.136619534869316770e-06, 8.414024734184960205e-06, 8.691395549830250862e-06, 8.968731533469953497e-06, 9.246032236865071058e-06, 9.523297211867477879e-06, 9.800526010401974445e-06, 1.007771818451660792e-05, 1.035487328630904805e-05, 1.063199086801405347e-05, 1.090907048192980866e-05, 1.118611168047443623e-05, 1.146311401614337092e-05, 1.174007704153477561e-05, 1.201700030933801660e-05, 1.229388337235896957e-05, 1.257072578347759171e-05, 1.284752709570419011e-05, 1.312428686210594503e-05, 1.340100463589436947e-05, 1.367767997035152239e-05, 1.395431241888050886e-05, 1.423090153498733489e-05, 1.450744687227575411e-05, 1.478394798443545670e-05, 1.506040442529215448e-05, 1.533681574877151764e-05, 1.561318150888715194e-05, 1.588950125979096835e-05, 1.616577455569986055e-05, 1.644200095098259182e-05, 1.671818000008665545e-05, 1.699431125759448387e-05, 1.727039427817476117e-05, 1.754642861663881857e-05, 1.782241382786694934e-05, 1.809834946689594791e-05, 1.837423508884550278e-05, 1.865007024896834080e-05, 1.892585450263863643e-05, 1.920158740531568075e-05, 1.947726851259399199e-05, 1.975289738019151122e-05, 2.002847356394445242e-05, 2.030399661978933183e-05, 2.057946610381286833e-05, 2.085488157217908105e-05, 2.113024258121594420e-05, 2.140554868734243041e-05, 2.168079944711830956e-05, 2.195599441723255111e-05, 2.223113315446726090e-05, 2.250621521574741891e-05, 2.278124015812953577e-05, 2.305620753879593360e-05, 2.333111691503715824e-05, 2.360596784430203887e-05, 2.388075988413037603e-05, 2.415549259220928620e-05, 2.443016552636148909e-05, 2.470477824454003565e-05, 2.497933030482254489e-05, 2.525382126540001628e-05, 2.552825068462648617e-05, 2.580261812098269688e-05, 2.607692313306485827e-05, 2.635116527963440920e-05, 2.662534411954493898e-05, 2.689945921182877438e-05, 2.717351011562412131e-05, 2.744749639022507363e-05, 2.772141759506358487e-05, 2.799527328970423024e-05, 2.826906303383238875e-05, 2.854278638730467900e-05, 2.881644291011186928e-05, 2.909003216236814057e-05, 2.936355370436053295e-05, 2.963700709647610755e-05, 2.991039189928850652e-05, 3.018370767348482699e-05, 3.045695397992207750e-05, 3.073013037957826019e-05, 3.100323643360849177e-05, 3.127627170327220953e-05, 3.154923575001967036e-05, 3.182212813541896357e-05, 3.209494842120569450e-05, 3.236769616927166136e-05, 3.264037094162898170e-05, 3.291297230045901702e-05, 3.318549980810159853e-05, 3.345795302704921987e-05, 3.373033151992972379e-05, 3.400263484955531483e-05, 3.427486257885054119e-05, 3.454701427093828555e-05, 3.481908948906702186e-05, 3.509108779666671272e-05, 3.536300875730653907e-05, 3.563485193472039250e-05, 3.590661689279484736e-05, 3.617830319559467341e-05, 3.644991040732070779e-05, 3.672143809236527804e-05, 3.699288581524027214e-05, 3.726425314066211954e-05, 3.753553963348074890e-05, 3.780674485872771305e-05, 3.807786838159957362e-05, 3.834890976745198535e-05, 3.861986858178827810e-05, 3.889074439030899133e-05, 3.916153675887609542e-05, 3.943224525350117387e-05, 3.970286944039531018e-05, 3.997340888589634460e-05, 4.024386315655477690e-05, 4.051423181906159908e-05, 4.078451444029780284e-05, 4.105471058731634785e-05, 4.132481982733729649e-05, 4.159484172773614502e-05, 4.186477585609881983e-05, 4.213462178015636776e-05, 4.240437906783331152e-05, 4.267404728723699742e-05, 4.294362600662136268e-05, 4.321311479443617175e-05, 4.348251321931605911e-05, 4.375182085007457293e-05, 4.402103725568690237e-05, 4.429016200533924944e-05, 4.455919466835635685e-05, 4.482813481428764112e-05, 4.509698201283436804e-05, 4.536573583389949890e-05, 4.563439584757607596e-05, 4.590296162411163351e-05, 4.617143273395656685e-05, 4.643980874775404240e-05, 4.670808923633366195e-05, 4.697627377070625167e-05, 4.724436192205268807e-05, 4.751235326177284972e-05, 4.778024736144991311e-05, 4.804804379283922604e-05, 4.831574212791067962e-05, 4.858334193881410859e-05, 4.885084279787319954e-05, 4.911824427763443582e-05, 4.938554595083197618e-05, 4.965274739037623677e-05, 4.991984816940236172e-05, 5.018684786119898434e-05, 5.045374603929346567e-05, 5.072054227737949695e-05, 5.098723614936661371e-05, 5.125382722936274018e-05, 5.152031509166865304e-05, 5.178669931076689545e-05, 5.205297946136986146e-05, 5.231915511838564357e-05, 5.258522585690546285e-05, 5.285119125225310848e-05, 5.311705087991342112e-05, 5.338280431561661667e-05, 5.364845113526779289e-05, 5.391399091500065832e-05, 5.417942323113082351e-05, 5.444474766021031609e-05, 5.470996377895622669e-05, 5.497507116433510729e-05, 5.524006939349243036e-05, 5.550495804380029371e-05, 5.576973669284669368e-05, 5.603440491840030893e-05, 5.629896229845842212e-05, 5.656340841123676911e-05, 5.682774283516251872e-05, 5.709196514885900585e-05, 5.735607493119247410e-05, 5.762007176120238192e-05, 5.788395521818474388e-05, 5.814772488162179984e-05, 5.841138033122965205e-05, 5.867492114694781616e-05, 5.893834690890391694e-05, 5.920165719746167768e-05, 5.946485159320989532e-05, 5.972792967695728360e-05, 5.999089102972701828e-05, 6.025373523274534616e-05, 6.051646186749639152e-05, 6.077907051565659580e-05, 6.104156075914346600e-05, 6.130393218009815969e-05, 6.156618436088090430e-05, 6.182831688405835931e-05, 6.209032933245328635e-05, 6.235222128910858071e-05, 6.261399233727637517e-05, 6.287564206046655801e-05, 6.313717004237554096e-05, 6.339857586697067785e-05, 6.365985911841904612e-05, 6.392101938113593773e-05, 6.418205623976787789e-05, 6.444296927918689226e-05, 6.470375808448011225e-05, 6.496442224099654474e-05, 6.522496133431351603e-05, 6.548537495022470497e-05, 6.574566267478860679e-05, 6.600582409425743654e-05, 6.626585879516146648e-05, 6.652576636423848514e-05, 6.678554638848704526e-05, 6.704519845512065619e-05, 6.730472215162142482e-05, 6.756411706566947401e-05, 6.782338278522629066e-05, 6.808251889846507921e-05, 6.834152499381811424e-05, 6.860040065996542407e-05, 6.885914548580104497e-05, 6.911775906047964188e-05, 6.937624097340616778e-05, 6.963459081423000905e-05, 6.989280817284071641e-05, 7.015089263935531973e-05, 7.040884380416802518e-05, 7.066666125791363693e-05, 7.092434459145808396e-05, 7.118189339593868461e-05, 7.143930726272516949e-05, 7.169658578344273437e-05, 7.195372854996133364e-05, 7.221073515441979028e-05, 7.246760518918540935e-05, 7.272433824690704963e-05, 7.298093392044616840e-05, 7.323739180295899041e-05, 7.349371148782660396e-05, 7.374989256870292324e-05, 7.400593463949763930e-05, 7.426183729437093456e-05, 7.451760012772272207e-05, 7.477322273423934757e-05, 7.502870470886012825e-05, 7.528404564676542655e-05, 7.553924514342449058e-05, 7.579430279452592967e-05, 7.604921819606043896e-05, 7.630399094425021787e-05, 7.655862063559797602e-05, 7.681310686686869155e-05, 7.706744923508509809e-05, 7.732164733751646331e-05, 7.757570077173155218e-05, 7.782960913553590586e-05, 7.808337202701747307e-05, 7.833698904453712333e-05, 7.859045978669456235e-05, 7.884378385237392271e-05, 7.909696084073381634e-05, 7.934999035120168310e-05, 7.960287198346967079e-05, 7.985560533748230238e-05, 8.010819001348453328e-05, 8.036062561198636565e-05, 8.061291173375375468e-05, 8.086504797984227309e-05, 8.111703395158662141e-05, 8.136886925056758700e-05, 8.162055347865717389e-05, 8.187208623800917026e-05, 8.212346713105298207e-05, 8.237469576048921484e-05, 8.262577172927842517e-05, 8.287669464068779556e-05, 8.312746409825732088e-05, 8.337807970578895280e-05, 8.362854106738702698e-05, 8.387884778742545240e-05, 8.412899947054162627e-05, 8.437899572168356972e-05, 8.462883614607497583e-05, 8.487852034920627853e-05, 8.512804793687915909e-05, 8.537741851514049109e-05, 8.562663169036076891e-05, 8.587568706916809337e-05, 8.612458425849309836e-05, 8.637332286555362290e-05, 8.662190249784851770e-05, 8.687032276314780594e-05, 8.711858326953821985e-05, 8.736668362538969879e-05, 8.761462343934517069e-05, 8.786240232036602075e-05, 8.811001987766502001e-05, 8.835747572078621749e-05, 8.860476945953723172e-05, 8.885190070404089951e-05, 8.909886906469182647e-05, 8.934567415220520323e-05, 8.959231557755309504e-05, 8.983879295204082378e-05, 9.008510588724239019e-05, 9.033125399504443826e-05, 9.057723688763621279e-05, 9.082305417747731796e-05, 9.106870547734164105e-05, 9.131419040030767595e-05, 9.155950855975402368e-05, 9.180465956935269752e-05, 9.204964304306053062e-05, 9.229445859516333020e-05, 9.253910584024272802e-05, 9.278358439316684273e-05, 9.302789386912300919e-05, 9.327203388360842727e-05, 9.351600405239619915e-05, 9.375980399158142153e-05, 9.400343331757542577e-05, 9.424689164707390234e-05, 9.449017859710680126e-05, 9.473329378497257521e-05, 9.497623682831591685e-05, 9.521900734506333005e-05, 9.546160495346633543e-05, 9.570402927208584423e-05, 9.594627991978818744e-05, 9.618835651573434155e-05, 9.643025867942331018e-05, 9.667198603066115656e-05, 9.691353818955078493e-05, 9.715491477653449544e-05, 9.739611541233146640e-05, 9.763713971801242866e-05, 9.787798731493671414e-05, 9.811865782479570522e-05, 9.835915086959616516e-05, 9.859946607165743268e-05, 9.883960305359879104e-05, 9.907956143838562795e-05, 9.931934084929586594e-05, 9.955894090991099059e-05, 9.979836124415832088e-05, 1.000376014762546713e-04, 1.002766612307520646e-04, 1.005155401325313891e-04, 1.007542378067946738e-04, 1.009927538790607245e-04, 1.012310879751568025e-04, 1.014692397212601903e-04, 1.017072087438675220e-04, 1.019449946697835484e-04, 1.021825971261563197e-04, 1.024200157404642149e-04, 1.026572501404859645e-04, 1.028942999543438417e-04, 1.031311648104932005e-04, 1.033678443377183552e-04, 1.036043381651270646e-04, 1.038406459221406254e-04, 1.040767672385377687e-04, 1.043127017444226486e-04, 1.045484490702140550e-04, 1.047840088466855826e-04, 1.050193807049260041e-04, 1.052545642763632846e-04, 1.054895591927535635e-04, 1.057243650862038420e-04, 1.059589815891338725e-04, 1.061934083343259920e-04, 1.064276449548608828e-04, 1.066616910841935344e-04, 1.068955463560893840e-04, 1.071292104046671020e-04, 1.073626828643847411e-04, 1.075959633700326212e-04, 1.078290515567256047e-04, 1.080619470599444588e-04, 1.082946495155056736e-04, 1.085271585595506478e-04, 1.087594738285886360e-04, 1.089915949594353700e-04, 1.092235215892851984e-04, 1.094552533556502087e-04, 1.096867898964073767e-04, 1.099181308497617986e-04, 1.101492758542700552e-04, 1.103802245488280285e-04, 1.106109765726941710e-04, 1.108415315654530636e-04, 1.110718891670516272e-04, 1.113020490177902601e-04, 1.115320107582918154e-04, 1.117617740295434792e-04, 1.119913384728875137e-04, 1.122207037300161072e-04, 1.124498694429673223e-04, 1.126788352541142397e-04, 1.129076008062086388e-04, 1.131361657423486877e-04, 1.133645297059698094e-04, 1.135926923408773565e-04, 1.138206532912348342e-04, 1.140484122015352235e-04, 1.142759687166414889e-04, 1.145033224817782852e-04, 1.147304731425253296e-04, 1.149574203448154504e-04, 1.151841637349217124e-04, 1.154107029595074791e-04, 1.156370376655670672e-04, 1.158631675004713366e-04, 1.160890921119490964e-04, 1.163148111480841917e-04, 1.165403242573064224e-04, 1.167656310884315377e-04, 1.169907312906327211e-04, 1.172156245134290976e-04, 1.174403104067290210e-04, 1.176647886207682066e-04, 1.178890588061811795e-04, 1.181131206139427961e-04, 1.183369736954062587e-04, 1.185606177022924495e-04, 1.187840522866813524e-04, 1.190072771010049506e-04, 1.192302917980883050e-04, 1.194530960311181395e-04, 1.196756894536346409e-04, 1.198980717195717517e-04, 1.201202424831977143e-04, 1.203422013991849616e-04, 1.205639481225522208e-04, 1.207854823087087622e-04, 1.210068036134192985e-04, 1.212279116928271860e-04, 1.214488062034416724e-04, 1.216694868021609766e-04, 1.218899531462359811e-04, 1.221102048933071088e-04, 1.223302417013945244e-04, 1.225500632288682647e-04, 1.227696691344890587e-04, 1.229890590773982987e-04, 1.232082327171150861e-04, 1.234271897135294819e-04, 1.236459297268950803e-04, 1.238644524178690695e-04, 1.240827574474810072e-04, 1.243008444771262337e-04, 1.245187131685942237e-04, 1.247363631840596150e-04, 1.249537941860532600e-04, 1.251710058375028560e-04, 1.253879978017266843e-04, 1.256047697424062610e-04, 1.258213213236311417e-04, 1.260376522098394800e-04, 1.262537620658876606e-04, 1.264696505569923757e-04, 1.266853173487697917e-04, 1.269007621072218070e-04, 1.271159844987306854e-04, 1.273309841900521712e-04, 1.275457608483517827e-04, 1.277603141411787918e-04, 1.279746437364554629e-04, 1.281887493025173855e-04, 1.284026305080549814e-04, 1.286162870221818904e-04, 1.288297185143782672e-04, 1.290429246545293242e-04, 1.292559051129163331e-04, 1.294686595601869986e-04, 1.296811876673976342e-04, 1.298934891060002058e-04, 1.301055635478408953e-04, 1.303174106651442169e-04, 1.305290301305544608e-04, 1.307404216170798025e-04, 1.309515847981396826e-04, 1.311625193475530701e-04, 1.313732249395351828e-04, 1.315837012486934486e-04, 1.317939479500181003e-04, 1.320039647189207184e-04, 1.322137512312066389e-04, 1.324233071630652220e-04, 1.326326321910991529e-04, 1.328417259923160391e-04, 1.330505882440998150e-04, 1.332592186242487968e-04, 1.334676168109677138e-04, 1.336757824828629926e-04, 1.338837153189382026e-04, 1.340914149985854916e-04, 1.342988812016233696e-04, 1.345061136082697942e-04, 1.347131118991324119e-04, 1.349198757552423861e-04, 1.351264048580218431e-04, 1.353326988893031445e-04, 1.355387575313198067e-04, 1.357445804667266939e-04, 1.359501673785657035e-04, 1.361555179503109233e-04, 1.363606318658110324e-04, 1.365655088093556012e-04, 1.367701484656212599e-04, 1.369745505197064478e-04, 1.371787146571244742e-04, 1.373826405637766299e-04, 1.375863279259888336e-04, 1.377897764305021993e-04, 1.379929857644699733e-04, 1.381959556154448219e-04, 1.383986856714140682e-04, 1.386011756207469726e-04, 1.388034251522580770e-04, 1.390054339551535377e-04, 1.392072017190727577e-04, 1.394087281340555362e-04, 1.396100128905637520e-04, 1.398110556794685975e-04, 1.400118561920739161e-04, 1.402124141200802876e-04, 1.404127291556209157e-04, 1.406128009912509485e-04, 1.408126293199211596e-04, 1.410122138350151358e-04, 1.412115542303406853e-04, 1.414106502001250128e-04, 1.416095014390113857e-04, 1.418081076420504058e-04, 1.420064685047358970e-04, 1.422045837229798601e-04, 1.424024529931021724e-04, 1.426000760118599432e-04, 1.427974524764362917e-04, 1.429945820844170370e-04, 1.431914645338243624e-04, 1.433880995231100121e-04, 1.435844867511508461e-04, 1.437806259172441778e-04, 1.439765167210998867e-04, 1.441721588628815370e-04, 1.443675520431566390e-04, 1.445626959629334586e-04, 1.447575903236477898e-04, 1.449522348271595120e-04, 1.451466291757433748e-04, 1.453407730721252913e-04, 1.455346662194575101e-04, 1.457283083213071226e-04, 1.459216990816948232e-04, 1.461148382050415126e-04, 1.463077253962289856e-04, 1.465003603605500042e-04, 1.466927428037423950e-04, 1.468848724319809455e-04, 1.470767489518514911e-04, 1.472683720703863960e-04, 1.474597414950573702e-04, 1.476508569337692083e-04, 1.478417180948494352e-04, 1.480323246870826755e-04, 1.482226764196572838e-04, 1.484127730022310196e-04, 1.486026141448739649e-04, 1.487921995581122168e-04, 1.489815289529002680e-04, 1.491706020406170221e-04, 1.493594185331019789e-04, 1.495479781426295928e-04, 1.497362805818989464e-04, 1.499243255640644054e-04, 1.501121128027223109e-04, 1.502996420118884275e-04, 1.504869129060341015e-04, 1.506739252000742263e-04, 1.508606786093673509e-04, 1.510471728497085782e-04, 1.512334076373239274e-04, 1.514193826889037272e-04, 1.516050977215765137e-04, 1.517905524529039075e-04, 1.519757466009073938e-04, 1.521606798840415421e-04, 1.523453520212093208e-04, 1.525297627317569475e-04, 1.527139117354878205e-04, 1.528977987526351160e-04, 1.530814235039011715e-04, 1.532647857104050648e-04, 1.534478850937438712e-04, 1.536307213759412454e-04, 1.538132942794831189e-04, 1.539956035273075082e-04, 1.541776488427810423e-04, 1.543594299497340902e-04, 1.545409465724494860e-04, 1.547221984356627450e-04, 1.549031852645472106e-04, 1.550839067847477185e-04, 1.552643627223333799e-04, 1.554445528038544749e-04, 1.556244767562921726e-04, 1.558041343070949876e-04, 1.559835251841674227e-04, 1.561626491158486102e-04, 1.563415058309439978e-04, 1.565200950587225569e-04, 1.566984165288907343e-04, 1.568764699716245718e-04, 1.570542551175596775e-04, 1.572317716977668584e-04, 1.574090194437870855e-04, 1.575859980876218177e-04, 1.577627073617310772e-04, 1.579391469990280557e-04, 1.581153167328726360e-04, 1.582912162971039725e-04, 1.584668454260160155e-04, 1.586422038543501382e-04, 1.588172913173202636e-04, 1.589921075506053015e-04, 1.591666522903234808e-04, 1.593409252730671789e-04, 1.595149262358947092e-04, 1.596886549163257130e-04, 1.598621110523387745e-04, 1.600352943823628283e-04, 1.602082046453102548e-04, 1.603808415805530547e-04, 1.605532049279154497e-04, 1.607252944277053508e-04, 1.608971098206716144e-04, 1.610686508480406605e-04, 1.612399172515082877e-04, 1.614109087732360946e-04, 1.615816251558399065e-04, 1.617520661424220844e-04, 1.619222314765243623e-04, 1.620921209021840899e-04, 1.622617341638860945e-04, 1.624310710065953421e-04, 1.626001311757492671e-04, 1.627689144172347056e-04, 1.629374204774202859e-04, 1.631056491031468881e-04, 1.632736000417265318e-04, 1.634412730409299901e-04, 1.636086678490175259e-04, 1.637757842146943049e-04, 1.639426218871636290e-04, 1.641091806160817530e-04, 1.642754601515927955e-04, 1.644414602443021217e-04, 1.646071806452910618e-04, 1.647726211061114351e-04, 1.649377813788007298e-04, 1.651026612158541839e-04, 1.652672603702540319e-04, 1.654315785954606959e-04, 1.655956156453911553e-04, 1.657593712744491151e-04, 1.659228452375180398e-04, 1.660860372899586595e-04, 1.662489471876033595e-04, 1.664115746867512471e-04, 1.665739195441972350e-04, 1.667359815172107915e-04, 1.668977603635273747e-04, 1.670592558413813386e-04, 1.672204677094578482e-04, 1.673813957269489603e-04, 1.675420396535066232e-04, 1.677023992492742538e-04, 1.678624742748758961e-04, 1.680222644914128598e-04, 1.681817696604550466e-04, 1.683409895440778135e-04, 1.684999239048176557e-04, 1.686585725057054646e-04, 1.688169351102581793e-04, 1.689750114824572656e-04, 1.691328013867780973e-04, 1.692903045881822318e-04, 1.694475208521169761e-04, 1.696044499445012921e-04, 1.697610916317571304e-04, 1.699174456807660619e-04, 1.700735118589210757e-04, 1.702292899340809883e-04, 1.703847796746026447e-04, 1.705399808493314852e-04, 1.706948932275830606e-04, 1.708495165791685643e-04, 1.710038506743923395e-04, 1.711578952840444516e-04, 1.713116501793928554e-04, 1.714651151322119907e-04, 1.716182899147391703e-04, 1.717711742997252936e-04, 1.719237680603944601e-04, 1.720760709704725650e-04, 1.722280828041689222e-04, 1.723798033361733100e-04, 1.725312323416824251e-04, 1.726823695963815601e-04, 1.728332148764354960e-04, 1.729837679585122462e-04, 1.731340286197742475e-04, 1.732839966378591423e-04, 1.734336717909074532e-04, 1.735830538575562404e-04, 1.737321426169350898e-04, 1.738809378486646498e-04, 1.740294393328481470e-04, 1.741776468501002534e-04, 1.743255601815268659e-04, 1.744731791087191159e-04, 1.746205034137789840e-04, 1.747675328792804310e-04, 1.749142672883174552e-04, 1.750607064244628930e-04, 1.752068500717989929e-04, 1.753526980148919644e-04, 1.754982500388207903e-04, 1.756435059291398761e-04, 1.757884654719224721e-04, 1.759331284537252204e-04, 1.760774946616118172e-04, 1.762215638831480797e-04, 1.763653359063812112e-04, 1.765088105198690197e-04, 1.766519875126718140e-04, 1.767948666743484189e-04, 1.769374477949493178e-04, 1.770797306650402885e-04, 1.772217150756665699e-04, 1.773634008183963659e-04, 1.775047876852819224e-04, 1.776458754688888008e-04, 1.777866639622866082e-04, 1.779271529590305658e-04, 1.780673422531888308e-04, 1.782072316393379428e-04, 1.783468209125459647e-04, 1.784861098683924042e-04, 1.786250983029655042e-04, 1.787637860128390402e-04, 1.789021727951028138e-04, 1.790402584473525154e-04, 1.791780427676913773e-04, 1.793155255547213109e-04, 1.794527066075422015e-04, 1.795895857257750561e-04, 1.797261627095433553e-04, 1.798624373594677678e-04, 1.799984094766908429e-04, 1.801340788628406084e-04, 1.802694453200738307e-04, 1.804045086510388531e-04, 1.805392686589013464e-04, 1.806737251473346587e-04, 1.808078779205180269e-04, 1.809417267831292856e-04, 1.810752715403707248e-04, 1.812085119979505506e-04, 1.813414479620768674e-04, 1.814740792394841057e-04, 1.816064056373962944e-04, 1.817384269635580153e-04, 1.818701430262277346e-04, 1.820015536341739544e-04, 1.821326585966668644e-04, 1.822634577235041184e-04, 1.823939508249728606e-04, 1.825241377118932832e-04, 1.826540181955831998e-04, 1.827835920878812751e-04, 1.829128592011426062e-04, 1.830418193482186921e-04, 1.831704723424854334e-04, 1.832988179978331305e-04, 1.834268561286665647e-04, 1.835545865498958639e-04, 1.836820090769590000e-04, 1.838091235257897503e-04, 1.839359297128561872e-04, 1.840624274551261731e-04, 1.841886165700954683e-04, 1.843144968757661286e-04, 1.844400681906588108e-04, 1.845653303338078122e-04, 1.846902831247723199e-04, 1.848149263836165420e-04, 1.849392599309357019e-04, 1.850632835878211811e-04, 1.851869971759033178e-04, 1.853104005173148155e-04, 1.854334934347151370e-04, 1.855562757512814790e-04, 1.856787472907064950e-04, 1.858009078771934435e-04, 1.859227573354777093e-04, 1.860442954908120045e-04, 1.861655221689584533e-04, 1.862864371962144779e-04, 1.864070403993762874e-04, 1.865273316057797801e-04, 1.866473106432688296e-04, 1.867669773402161836e-04, 1.868863315255072819e-04, 1.870053730285599889e-04, 1.871241016792958621e-04, 1.872425173081748468e-04, 1.873606197461678456e-04, 1.874784088247746078e-04, 1.875958843760184983e-04, 1.877130462324339477e-04, 1.878298942270841790e-04, 1.879464281935597171e-04, 1.880626479659730217e-04, 1.881785533789518468e-04, 1.882941442676616293e-04, 1.884094204677731798e-04, 1.885243818154983529e-04, 1.886390281475620477e-04, 1.887533593012192298e-04, 1.888673751142546330e-04, 1.889810754249634335e-04, 1.890944600721734489e-04, 1.892075288952422651e-04, 1.893202817340508667e-04, 1.894327184289998963e-04, 1.895448388210284926e-04, 1.896566427515861825e-04, 1.897681300626566521e-04, 1.898793005967539796e-04, 1.899901541969182162e-04, 1.901006907067138963e-04, 1.902109099702256731e-04, 1.903208118320785661e-04, 1.904303961374221861e-04, 1.905396627319271301e-04, 1.906486114618047680e-04, 1.907572421737767766e-04, 1.908655547151114876e-04, 1.909735489335942071e-04, 1.910812246775448885e-04, 1.911885817958143921e-04, 1.912956201377799038e-04, 1.914023395533403550e-04, 1.915087398929382959e-04, 1.916148210075430364e-04, 1.917205827486461193e-04, 1.918260249682832218e-04, 1.919311475190014116e-04, 1.920359502538986399e-04, 1.921404330265896970e-04, 1.922445956912300377e-04, 1.923484381024987593e-04, 1.924519601156174126e-04, 1.925551615863224902e-04, 1.926580423709002294e-04, 1.927606023261560649e-04, 1.928628413094348761e-04, 1.929647591786181682e-04, 1.930663557921075656e-04, 1.931676310088432968e-04, 1.932685846883044390e-04, 1.933692166905002174e-04, 1.934695268759673752e-04, 1.935695151057896090e-04, 1.936691812415659365e-04, 1.937685251454481828e-04, 1.938675466801083195e-04, 1.939662457087617739e-04, 1.940646220951601118e-04, 1.941626757035784870e-04, 1.942604063988335311e-04, 1.943578140462825675e-04, 1.944548985118079441e-04, 1.945516596618408051e-04, 1.946480973633303807e-04, 1.947442114837783563e-04, 1.948400018912102496e-04, 1.949354684541979347e-04, 1.950306110418453581e-04, 1.951254295237940680e-04, 1.952199237702138899e-04, 1.953140936518237437e-04, 1.954079390398771421e-04, 1.955014598061582064e-04, 1.955946558229997728e-04, 1.956875269632571814e-04, 1.957800731003372517e-04, 1.958722941081762737e-04, 1.959641898612540204e-04, 1.960557602345887340e-04, 1.961470051037344424e-04, 1.962379243447781401e-04, 1.963285178343556717e-04, 1.964187854496406735e-04, 1.965087270683376611e-04, 1.965983425687039578e-04, 1.966876318295201229e-04, 1.967765947301158098e-04, 1.968652311503603879e-04, 1.969535409706638367e-04, 1.970415240719707018e-04, 1.971291803357740806e-04, 1.972165096440951315e-04, 1.973035118795093924e-04, 1.973901869251218171e-04, 1.974765346645848544e-04, 1.975625549820943282e-04, 1.976482477623764541e-04, 1.977336128907054304e-04, 1.978186502528973942e-04, 1.979033597353131854e-04, 1.979877412248495924e-04, 1.980717946089412761e-04, 1.981555197755744584e-04, 1.982389166132752394e-04, 1.983219850111072669e-04, 1.984047248586820087e-04, 1.984871360461501065e-04, 1.985692184642057938e-04, 1.986509720040835621e-04, 1.987323965575675121e-04, 1.988134920169772589e-04, 1.988942582751843850e-04, 1.989746952255906480e-04, 1.990548027621549766e-04, 1.991345807793701880e-04, 1.992140291722794675e-04, 1.992931478364680473e-04, 1.993719366680648327e-04, 1.994503955637358698e-04, 1.995285244207028856e-04, 1.996063231367278920e-04, 1.996837916101132403e-04, 1.997609297397139809e-04, 1.998377374249188626e-04, 1.999142145656718000e-04, 1.999903610624558003e-04, 2.000661768163032085e-04, 2.001416617287862213e-04, 2.002168157020303848e-04, 2.002916386386952691e-04, 2.003661304419972092e-04, 2.004402910156911986e-04, 2.005141202640807832e-04, 2.005876180920193618e-04, 2.006607844048973117e-04, 2.007336191086553237e-04, 2.008061221097836170e-04, 2.008782933153171405e-04, 2.009501326328335140e-04, 2.010216399704653598e-04, 2.010928152368794328e-04, 2.011636583413016922e-04, 2.012341691934961595e-04, 2.013043477037800434e-04, 2.013741937830175054e-04, 2.014437073426139136e-04, 2.015128882945245708e-04, 2.015817365512557709e-04, 2.016502520258608153e-04, 2.017184346319387384e-04, 2.017862842836306756e-04, 2.018538008956377800e-04, 2.019209843831985623e-04, 2.019878346621059400e-04, 2.020543516487000274e-04, 2.021205352598687320e-04, 2.021863854130416288e-04, 2.022519020262069007e-04, 2.023170850178980843e-04, 2.023819343071932297e-04, 2.024464498137267725e-04, 2.025106314576713732e-04, 2.025744791597587613e-04, 2.026379928412623066e-04, 2.027011724240089182e-04, 2.027640178303754669e-04, 2.028265289832845565e-04, 2.028887058062064756e-04, 2.029505482231652692e-04, 2.030120561587350791e-04, 2.030732295380347234e-04, 2.031340682867396495e-04, 2.031945723310646683e-04, 2.032547415977847707e-04, 2.033145760142185941e-04, 2.033740755082388840e-04, 2.034332400082637399e-04, 2.034920694432678907e-04, 2.035505637427664858e-04, 2.036087228368343668e-04, 2.036665466560915122e-04, 2.037240351317101119e-04, 2.037811881954159222e-04, 2.038380057794774239e-04, 2.038944878167170437e-04, 2.039506342405117509e-04, 2.040064449847869583e-04, 2.040619199840185550e-04, 2.041170591732290854e-04, 2.041718624879989966e-04, 2.042263298644569631e-04, 2.042804612392812140e-04, 2.043342565497042768e-04, 2.043877157335071229e-04, 2.044408387290218504e-04, 2.044936254751325252e-04, 2.045460759112770503e-04, 2.045981899774401735e-04, 2.046499676141641120e-04, 2.047014087625342415e-04, 2.047525133641960092e-04, 2.048032813613395926e-04, 2.048537126967124762e-04, 2.049038073136117267e-04, 2.049535651558868660e-04, 2.050029861679338267e-04, 2.050520702947079084e-04, 2.051008174817138573e-04, 2.051492276750059205e-04, 2.051973008211959771e-04, 2.052450368674395796e-04, 2.052924357614533280e-04, 2.053394974514983898e-04, 2.053862218863935921e-04, 2.054326090155092954e-04, 2.054786587887660388e-04, 2.055243711566345397e-04, 2.055697460701448012e-04, 2.056147834808723157e-04, 2.056594833409495300e-04, 2.057038456030622410e-04, 2.057478702204423035e-04, 2.057915571468790696e-04, 2.058349063367146715e-04, 2.058779177448432089e-04, 2.059205913267112096e-04, 2.059629270383152983e-04, 2.060049248362081601e-04, 2.060465846774959110e-04, 2.060879065198345202e-04, 2.061288903214333066e-04, 2.061695360410582725e-04, 2.062098436380218041e-04, 2.062498130721929712e-04, 2.062894443039932173e-04, 2.063287372943992061e-04, 2.063676920049374813e-04, 2.064063083976850363e-04, 2.064445864352779602e-04, 2.064825260809035506e-04, 2.065201272982983890e-04, 2.065573900517568790e-04, 2.065943143061252558e-04, 2.066309000267983070e-04, 2.066671471797295635e-04, 2.067030557314252827e-04, 2.067386256489403009e-04, 2.067738568998889030e-04, 2.068087494524313238e-04, 2.068433032752880324e-04, 2.068775183377263968e-04, 2.069113946095716338e-04, 2.069449320612013344e-04, 2.069781306635438370e-04, 2.070109903880813990e-04, 2.070435112068516061e-04, 2.070756930924445263e-04, 2.071075360180002706e-04, 2.071390399572179916e-04, 2.071702048843428461e-04, 2.072010307741800627e-04, 2.072315176020825549e-04, 2.072616653439615729e-04, 2.072914739762765125e-04, 2.073209434760444562e-04, 2.073500738208315262e-04, 2.073788649887598509e-04, 2.074073169585037698e-04, 2.074354297092904031e-04, 2.074632032209032290e-04, 2.074906374736738173e-04, 2.075177324484887408e-04, 2.075444881267890875e-04, 2.075709044905697559e-04, 2.075969815223763920e-04, 2.076227192053062569e-04, 2.076481175230136746e-04, 2.076731764597056142e-04, 2.076978960001387353e-04, 2.077222761296263268e-04, 2.077463168340337805e-04, 2.077700180997767480e-04, 2.077933799138270764e-04, 2.078164022637087971e-04, 2.078390851374976379e-04, 2.078614285238257117e-04, 2.078834324118721661e-04, 2.079050967913746749e-04, 2.079264216526202776e-04, 2.079474069864499595e-04, 2.079680527842585976e-04, 2.079883590379929821e-04, 2.080083257401508948e-04, 2.080279528837843345e-04, 2.080472404624995441e-04, 2.080661884704521319e-04, 2.080847969023546878e-04, 2.081030657534664835e-04, 2.081209950196049110e-04, 2.081385846971358332e-04, 2.081558347829802513e-04, 2.081727452746109442e-04, 2.081893161700539322e-04, 2.082055474678834082e-04, 2.082214391672307092e-04, 2.082369912677777576e-04, 2.082522037697578194e-04, 2.082670766739592994e-04, 2.082816099817182869e-04, 2.082958036949264979e-04, 2.083096578160256913e-04, 2.083231723480118971e-04, 2.083363472944315135e-04, 2.083491826593815779e-04, 2.083616784475141579e-04, 2.083738346640311200e-04, 2.083856513146862437e-04, 2.083971284057853032e-04, 2.084082659441870698e-04, 2.084190639372995174e-04, 2.084295223930826687e-04, 2.084396413200494895e-04, 2.084494207272642621e-04, 2.084588606243423421e-04, 2.084679610214479621e-04, 2.084767219293009544e-04, 2.084851433591694320e-04, 2.084932253228736652e-04, 2.085009678327852682e-04, 2.085083709018262775e-04, 2.085154345434697481e-04, 2.085221587717404044e-04, 2.085285436012127155e-04, 2.085345890470140392e-04, 2.085402951248193639e-04, 2.085456618508559979e-04, 2.085506892419028912e-04, 2.085553773152875191e-04, 2.085597260888897848e-04, 2.085637355811386317e-04, 2.085674058110129102e-04, 2.085707367980433029e-04, 2.085737285623092611e-04, 2.085763811244412006e-04, 2.085786945056190920e-04, 2.085806687275739519e-04, 2.085823038125837769e-04, 2.085835997834797504e-04, 2.085845566636412829e-04, 2.085851744769966079e-04, 2.085854532480255197e-04, 2.085853930017558225e-04, 2.085849937637640082e-04, 2.085842555601779939e-04, 2.085831784176741675e-04, 2.085817623634763035e-04, 2.085800074253599539e-04, 2.085779136316475964e-04, 2.085754810112118332e-04, 2.085727095934725172e-04, 2.085695994084007371e-04, 2.085661504865141548e-04, 2.085623628588790385e-04, 2.085582365571107507e-04, 2.085537716133729078e-04, 2.085489680603780577e-04, 2.085438259313845087e-04, 2.085383452602012895e-04, 2.085325260811845172e-04, 2.085263684292374515e-04, 2.085198723398114706e-04, 2.085130378489058814e-04, 2.085058649930685427e-04, 2.084983538093926943e-04, 2.084905043355201010e-04, 2.084823166096389652e-04, 2.084737906704870445e-04, 2.084649265573458512e-04, 2.084557243100465334e-04, 2.084461839689643193e-04, 2.084363055750249136e-04, 2.084260891696974231e-04, 2.084155347949991272e-04, 2.084046424934927675e-04, 2.083934123082878214e-04, 2.083818442830405568e-04, 2.083699384619522700e-04, 2.083576948897705055e-04, 2.083451136117891913e-04, 2.083321946738469317e-04, 2.083189381223303136e-04, 2.083053440041685131e-04, 2.082914123668376050e-04, 2.082771432583584755e-04, 2.082625367272974190e-04, 2.082475928227662729e-04, 2.082323115944206024e-04, 2.082166930924617056e-04, 2.082007373676348792e-04, 2.081844444712304754e-04, 2.081678144550833326e-04, 2.081508473715723963e-04, 2.081335432736197699e-04, 2.081159022146940221e-04, 2.080979242488058495e-04, 2.080796094305088361e-04, 2.080609578149022446e-04, 2.080419694576282792e-04, 2.080226444148717603e-04, 2.080029827433615606e-04, 2.079829845003696570e-04, 2.079626497437107781e-04, 2.079419785317420245e-04, 2.079209709233639260e-04, 2.078996269780195201e-04, 2.078779467556942436e-04, 2.078559303169148212e-04, 2.078335777227523012e-04, 2.078108890348182611e-04, 2.077878643152656203e-04, 2.077645036267914054e-04, 2.077408070326308676e-04, 2.077167745965636636e-04, 2.076924063829093824e-04, 2.076677024565294974e-04, 2.076426628828261195e-04, 2.076172877277411024e-04, 2.075915770577579672e-04, 2.075655309399033934e-04, 2.075391494417404693e-04, 2.075124326313731104e-04, 2.074853805774481464e-04, 2.074579933491489789e-04, 2.074302710162024654e-04, 2.074022136488713308e-04, 2.073738213179616204e-04, 2.073450940948154636e-04, 2.073160320513145699e-04, 2.072866352598817471e-04, 2.072569037934784888e-04, 2.072268377256032126e-04, 2.071964371302931847e-04, 2.071657020821260104e-04, 2.071346326562137526e-04, 2.071032289282114696e-04, 2.070714909743092736e-04, 2.070394188712354748e-04, 2.070070126962550363e-04, 2.069742725271707395e-04, 2.069411984423251362e-04, 2.069077905205953980e-04, 2.068740488413949973e-04, 2.068399734846757942e-04, 2.068055645309257865e-04, 2.067708220611675924e-04, 2.067357461569643048e-04, 2.067003369004122271e-04, 2.066645943741433672e-04, 2.066285186613242987e-04, 2.065921098456597661e-04, 2.065553680113901369e-04, 2.065182932432890707e-04, 2.064808856266653618e-04, 2.064431452473634008e-04, 2.064050721917616018e-04, 2.063666665467730533e-04, 2.063279283998460873e-04, 2.062888578389624090e-04, 2.062494549526364736e-04, 2.062097198299189555e-04, 2.061696525603902972e-04, 2.061292532341701966e-04, 2.060885219419057886e-04, 2.060474587747799667e-04, 2.060060638245083742e-04, 2.059643371833361246e-04, 2.059222789440463667e-04, 2.058798891999520989e-04, 2.058371680448961420e-04, 2.057941155732541751e-04, 2.057507318799364434e-04, 2.057070170603795178e-04, 2.056629712105571372e-04, 2.056185944269692581e-04, 2.055738868066494813e-04, 2.055288484471596308e-04, 2.054834794465952292e-04, 2.054377799035796972e-04, 2.053917499172678500e-04, 2.053453895873417502e-04, 2.052986990140178098e-04, 2.052516782980382784e-04, 2.052043275406732498e-04, 2.051566468437269228e-04, 2.051086363095304182e-04, 2.050602960409409934e-04, 2.050116261413459449e-04, 2.049626267146600065e-04, 2.049132978653304450e-04, 2.048636396983271398e-04, 2.048136523191478953e-04, 2.047633358338215583e-04, 2.047126903489005910e-04, 2.046617159714636460e-04, 2.046104128091213125e-04, 2.045587809700077139e-04, 2.045068205627821611e-04, 2.044545316966297219e-04, 2.044019144812632535e-04, 2.043489690269236739e-04, 2.042956954443715320e-04, 2.042420938448977143e-04, 2.041881643403136869e-04, 2.041339070429587597e-04, 2.040793220656951805e-04, 2.040244095219135288e-04, 2.039691695255230392e-04, 2.039136021909583780e-04, 2.038577076331815673e-04, 2.038014859676701672e-04, 2.037449373104360058e-04, 2.036880617780043891e-04, 2.036308594874288466e-04, 2.035733305562825116e-04, 2.035154751026589616e-04, 2.034572932451808374e-04, 2.033987851029882971e-04, 2.033399507957418340e-04, 2.032807904436239308e-04, 2.032213041673414989e-04, 2.031614920881166895e-04, 2.031013543276991994e-04, 2.030408910083531524e-04, 2.029801022528662606e-04, 2.029189881845438884e-04, 2.028575489272124678e-04, 2.027957846052204740e-04, 2.027336953434310802e-04, 2.026712812672271178e-04, 2.026085425025139222e-04, 2.025454791757114723e-04, 2.024820914137563156e-04, 2.024183793441106745e-04, 2.023543430947489217e-04, 2.022899827941639496e-04, 2.022252985713636193e-04, 2.021602905558745559e-04, 2.020949588777458069e-04, 2.020293036675343960e-04, 2.019633250563161373e-04, 2.018970231756863406e-04, 2.018303981577523843e-04, 2.017634501351348540e-04, 2.016961792409784114e-04, 2.016285856089354231e-04, 2.015606693731743899e-04, 2.014924306683791341e-04, 2.014238696297454112e-04, 2.013549863929898814e-04, 2.012857810943334135e-04, 2.012162538705181873e-04, 2.011464048587945216e-04, 2.010762341969246137e-04, 2.010057420231903735e-04, 2.009349284763822286e-04, 2.008637936958010764e-04, 2.007923378212592049e-04, 2.007205609930856605e-04, 2.006484633521125047e-04, 2.005760450396943848e-04, 2.005033061976857652e-04, 2.004302469684587354e-04, 2.003568674948923308e-04, 2.002831679203722888e-04, 2.002091483888033543e-04, 2.001348090445942093e-04, 2.000601500326618370e-04, 1.999851714984313318e-04, 1.999098735878414290e-04, 1.998342564473312504e-04, 1.997583202238588439e-04, 1.996820650648826437e-04, 1.996054911183695751e-04, 1.995285985327925333e-04, 1.994513874571323623e-04, 1.993738580408831401e-04, 1.992960104340354283e-04, 1.992178447870901492e-04, 1.991393612510554965e-04, 1.990605599774430859e-04, 1.989814411182666543e-04, 1.989020048260541757e-04, 1.988222512538322486e-04, 1.987421805551311106e-04, 1.986617928839853160e-04, 1.985810883949344131e-04, 1.985000672430252758e-04, 1.984187295838026434e-04, 1.983370755733131056e-04, 1.982551053681129623e-04, 1.981728191252507955e-04, 1.980902170022898581e-04, 1.980072991572839772e-04, 1.979240657487963924e-04, 1.978405169358841162e-04, 1.977566528781126245e-04, 1.976724737355394857e-04, 1.975879796687343910e-04, 1.975031708387550038e-04, 1.974180474071676142e-04, 1.973326095360328539e-04, 1.972468573879067268e-04, 1.971607911258563294e-04, 1.970744109134386554e-04, 1.969877169147093770e-04, 1.969007092942211105e-04, 1.968133882170292710e-04, 1.967257538486784113e-04, 1.966378063552213856e-04, 1.965495459031967160e-04, 1.964609726596470789e-04, 1.963720867921045325e-04, 1.962828884686015755e-04, 1.961933778576652925e-04, 1.961035551283196851e-04, 1.960134204500775404e-04, 1.959229739929531703e-04, 1.958322159274508917e-04, 1.957411464245653794e-04, 1.956497656557950010e-04, 1.955580737931260696e-04, 1.954660710090359063e-04, 1.953737574764943580e-04, 1.952811333689641229e-04, 1.951881988604077707e-04, 1.950949541252682267e-04, 1.950013993384831377e-04, 1.949075346754853058e-04, 1.948133603121894337e-04, 1.947188764250145949e-04, 1.946240831908555024e-04, 1.945289807871071475e-04, 1.944335693916466657e-04, 1.943378491828421739e-04, 1.942418203395500863e-04, 1.941454830411239239e-04, 1.940488374673906787e-04, 1.939518837986779190e-04, 1.938546222157917526e-04, 1.937570529000246877e-04, 1.936591760331668542e-04, 1.935609917974874094e-04, 1.934625003757401221e-04, 1.933637019511643209e-04, 1.932645967074916979e-04, 1.931651848289274974e-04, 1.930654665001773501e-04, 1.929654419064157772e-04, 1.928651112333126447e-04, 1.927644746670144880e-04, 1.926635323941497434e-04, 1.925622846018404302e-04, 1.924607314776842341e-04, 1.923588732097603895e-04, 1.922567099866283509e-04, 1.921542419973379032e-04, 1.920514694314075861e-04, 1.919483924788527480e-04, 1.918450113301542936e-04, 1.917413261762845422e-04, 1.916373372086864924e-04, 1.915330446192868054e-04, 1.914284486004996268e-04, 1.913235493452050109e-04, 1.912183470467657804e-04, 1.911128418990272004e-04, 1.910070340963084413e-04, 1.909009238334024151e-04, 1.907945113055902234e-04, 1.906877967086233487e-04, 1.905807802387279642e-04, 1.904734620926058829e-04, 1.903658424674367525e-04, 1.902579215608832600e-04, 1.901496995710705046e-04, 1.900411766966011496e-04, 1.899323531365595420e-04, 1.898232290904924954e-04, 1.897138047584344975e-04, 1.896040803408804694e-04, 1.894940560388068537e-04, 1.893837320536549717e-04, 1.892731085873470154e-04, 1.891621858422652582e-04, 1.890509640212804877e-04, 1.889394433277166339e-04, 1.888276239653812892e-04, 1.887155061385453259e-04, 1.886030900519467717e-04, 1.884903759108049316e-04, 1.883773639208016315e-04, 1.882640542880847684e-04, 1.881504472192709130e-04, 1.880365429214523839e-04, 1.879223416021758074e-04, 1.878078434694742372e-04, 1.876930487318286651e-04, 1.875779575982001134e-04, 1.874625702780079509e-04, 1.873468869811350428e-04, 1.872309079179423875e-04, 1.871146332992483269e-04, 1.869980633363304168e-04, 1.868811982409423946e-04, 1.867640382252920615e-04, 1.866465835020506610e-04, 1.865288342843628264e-04, 1.864107907858303717e-04, 1.862924532205142980e-04, 1.861738218029372865e-04, 1.860548967480873310e-04, 1.859356782714197164e-04, 1.858161665888398342e-04, 1.856963619167146748e-04, 1.855762644718791162e-04, 1.854558744716165979e-04, 1.853351921336851419e-04, 1.852142176762862358e-04, 1.850929513180919652e-04, 1.849713932782241158e-04, 1.848495437762638226e-04, 1.847274030322499977e-04, 1.846049712666887903e-04, 1.844822487005286769e-04, 1.843592355551768058e-04, 1.842359320525049601e-04, 1.841123384148259491e-04, 1.839884548649245628e-04, 1.838642816260320923e-04, 1.837398189218302880e-04, 1.836150669764573490e-04, 1.834900260145091706e-04, 1.833646962610244906e-04, 1.832390779415127258e-04, 1.831131712819160525e-04, 1.829869765086428266e-04, 1.828604938485429727e-04, 1.827337235289174704e-04, 1.826066657775288443e-04, 1.824793208225840063e-04, 1.823516888927352857e-04, 1.822237702170851725e-04, 1.820955650251932564e-04, 1.819670735470543799e-04, 1.818382960131303516e-04, 1.817092326543112940e-04, 1.815798837019486306e-04, 1.814502493878309081e-04, 1.813203299442005744e-04, 1.811901256037424320e-04, 1.810596365995914439e-04, 1.809288631653192629e-04, 1.807978055349528795e-04, 1.806664639429504443e-04, 1.805348386242331164e-04, 1.804029298141471434e-04, 1.802707377484958457e-04, 1.801382626635160346e-04, 1.800055047958874722e-04, 1.798724643827352568e-04, 1.797391416616333734e-04, 1.796055368705843107e-04, 1.794716502480329392e-04, 1.793374820328736395e-04, 1.792030324644262873e-04, 1.790683017824693760e-04, 1.789332902272026385e-04, 1.787979980392763208e-04, 1.786624254597712327e-04, 1.785265727302066897e-04, 1.783904400925410006e-04, 1.782540277891791385e-04, 1.781173360629443616e-04, 1.779803651571111459e-04, 1.778431153153806554e-04, 1.777055867818860271e-04, 1.775677798012100439e-04, 1.774296946183621492e-04, 1.772913314787805345e-04, 1.771526906283385353e-04, 1.770137723133510560e-04, 1.768745767805510421e-04, 1.767351042771235243e-04, 1.765953550506652861e-04, 1.764553293492188537e-04, 1.763150274212502155e-04, 1.761744495156497439e-04, 1.760335958817559933e-04, 1.758924667693260199e-04, 1.757510624285442457e-04, 1.756093831100231624e-04, 1.754674290648119517e-04, 1.753252005443739329e-04, 1.751826978006206621e-04, 1.750399210858677500e-04, 1.748968706528752221e-04, 1.747535467548145041e-04, 1.746099496452904320e-04, 1.744660795783408715e-04, 1.743219368084142763e-04, 1.741775215903857874e-04, 1.740328341795635493e-04, 1.738878748316635833e-04, 1.737426438028477074e-04, 1.735971413496765635e-04, 1.734513677291491906e-04, 1.733053231986780070e-04, 1.731590080160945021e-04, 1.730124224396562297e-04, 1.728655667280478109e-04, 1.727184411403607947e-04, 1.725710459361064252e-04, 1.724233813752264557e-04, 1.722754477180635777e-04, 1.721272452254021595e-04, 1.719787741584207039e-04, 1.718300347787310152e-04, 1.716810273483494677e-04, 1.715317521297200179e-04, 1.713822093856868828e-04, 1.712323993795322968e-04, 1.710823223749301355e-04, 1.709319786359855971e-04, 1.707813684272074741e-04, 1.706304920135138180e-04, 1.704793496602535969e-04, 1.703279416331770417e-04, 1.701762681984438595e-04, 1.700243296226243721e-04, 1.698721261727114144e-04, 1.697196581160904656e-04, 1.695669257205813360e-04, 1.694139292543891614e-04, 1.692606689861452505e-04, 1.691071451848807656e-04, 1.689533581200305717e-04, 1.687993080614537281e-04, 1.686449952794084970e-04, 1.684904200445509618e-04, 1.683355826279583098e-04, 1.681804833010963336e-04, 1.680251223358606848e-04, 1.678695000045271363e-04, 1.677136165797938662e-04, 1.675574723347526178e-04, 1.674010675428982953e-04, 1.672444024781325140e-04, 1.670874774147700515e-04, 1.669302926275097372e-04, 1.667728483914563526e-04, 1.666151449821258088e-04, 1.664571826754186377e-04, 1.662989617476566919e-04, 1.661404824755413493e-04, 1.659817451361870414e-04, 1.658227500070984315e-04, 1.656634973661785186e-04, 1.655039874917302366e-04, 1.653442206624659958e-04, 1.651841971574762675e-04, 1.650239172562517024e-04, 1.648633812386896349e-04, 1.647025893850654341e-04, 1.645415419760694472e-04, 1.643802392927769403e-04, 1.642186816166524353e-04, 1.640568692295553475e-04, 1.638948024137478734e-04, 1.637324814518659611e-04, 1.635699066269646028e-04, 1.634070782224631368e-04, 1.632439965221913261e-04, 1.630806618103574561e-04, 1.629170743715569532e-04, 1.627532344907931753e-04, 1.625891424534467282e-04, 1.624247985452835432e-04, 1.622602030524572081e-04, 1.620953562615131413e-04, 1.619302584593944739e-04, 1.617649099334120982e-04, 1.615993109712679781e-04, 1.614334618610587543e-04, 1.612673628912530033e-04, 1.611010143507134087e-04, 1.609344165286852963e-04, 1.607675697147981249e-04, 1.606004741990559991e-04, 1.604331302718597333e-04, 1.602655382239725091e-04, 1.600976983465664423e-04, 1.599296109311677220e-04, 1.597612762697023367e-04, 1.595926946544646869e-04, 1.594238663781287252e-04, 1.592547917337519678e-04, 1.590854710147804275e-04, 1.589159045150201810e-04, 1.587460925286585643e-04, 1.585760353502712748e-04, 1.584057332747912275e-04, 1.582351865975536575e-04, 1.580643956142433468e-04, 1.578933606209390495e-04, 1.577220819140780922e-04, 1.575505597904883312e-04, 1.573787945473499345e-04, 1.572067864822447938e-04, 1.570345358930989811e-04, 1.568620430782301277e-04, 1.566893083363164437e-04, 1.565163319664024909e-04, 1.563431142679221140e-04, 1.561696555406680287e-04, 1.559959560847980556e-04, 1.558220162008391049e-04, 1.556478361896977745e-04, 1.554734163526300735e-04, 1.552987569912844649e-04, 1.551238584076505833e-04, 1.549487209041030904e-04, 1.547733447833707485e-04, 1.545977303485445516e-04, 1.544218779030974854e-04, 1.542457877508571782e-04, 1.540694601960098580e-04, 1.538928955431048792e-04, 1.537160940970588971e-04, 1.535390561631611798e-04, 1.533617820470400256e-04, 1.531842720547034475e-04, 1.530065264925091408e-04, 1.528285456671744577e-04, 1.526503298857798498e-04, 1.524718794557764032e-04, 1.522931946849540442e-04, 1.521142758814645246e-04, 1.519351233538290108e-04, 1.517557374109051787e-04, 1.515761183619353789e-04, 1.513962665164889847e-04, 1.512161821845117227e-04, 1.510358656762908708e-04, 1.508553173024682948e-04, 1.506745373740436204e-04, 1.504935262023813071e-04, 1.503122840991777973e-04, 1.501308113764877265e-04, 1.499491083467268239e-04, 1.497671753226423677e-04, 1.495850126173609170e-04, 1.494026205443301446e-04, 1.492199994173664334e-04, 1.490371495506207780e-04, 1.488540712586074080e-04, 1.486707648561676296e-04, 1.484872306585190485e-04, 1.483034689811973754e-04, 1.481194801401040223e-04, 1.479352644514752842e-04, 1.477508222318874888e-04, 1.475661537982808494e-04, 1.473812594679294323e-04, 1.471961395584451681e-04, 1.470107943877831645e-04, 1.468252242742444983e-04, 1.466394295364856475e-04, 1.464534104934818730e-04, 1.462671674645552174e-04, 1.460807007693788696e-04, 1.458940107279498965e-04, 1.457070976606160775e-04, 1.455199618880600478e-04, 1.453326037313062914e-04, 1.451450235117045533e-04, 1.449572215509576756e-04, 1.447691981710848166e-04, 1.445809536944687762e-04, 1.443924884437995356e-04, 1.442038027421223691e-04, 1.440148969128030683e-04, 1.438257712795426330e-04, 1.436364261663781658e-04, 1.434468618976915725e-04, 1.432570787981770905e-04, 1.430670771928630814e-04, 1.428768574071220864e-04, 1.426864197666355904e-04, 1.424957645974440847e-04, 1.423048922258882490e-04, 1.421138029786576322e-04, 1.419224971827576654e-04, 1.417309751655215072e-04, 1.415392372546130247e-04, 1.413472837780348982e-04, 1.411551150640947942e-04, 1.409627314414303018e-04, 1.407701332390155194e-04, 1.405773207861271733e-04, 1.403842944123927835e-04, 1.401910544477487862e-04, 1.399976012224494245e-04, 1.398039350670719793e-04, 1.396100563125184503e-04, 1.394159652900247984e-04, 1.392216623311253842e-04, 1.390271477676795035e-04, 1.388324219318769171e-04, 1.386374851562138084e-04, 1.384423377735003455e-04, 1.382469801168848054e-04, 1.380514125198197190e-04, 1.378556353160692170e-04, 1.376596488397135564e-04, 1.374634534251526440e-04, 1.372670494071125688e-04, 1.370704371206132931e-04, 1.368736169009917723e-04, 1.366765890839106296e-04, 1.364793540053278243e-04, 1.362819120015256282e-04, 1.360842634090935214e-04, 1.358864085649351590e-04, 1.356883478062521345e-04, 1.354900814705721154e-04, 1.352916098957101100e-04, 1.350929334198196414e-04, 1.348940523813310297e-04, 1.346949671190049783e-04, 1.344956779718940851e-04, 1.342961852793575603e-04, 1.340964893810643978e-04, 1.338965906170014796e-04, 1.336964893274376616e-04, 1.334961858529507971e-04, 1.332956805344331040e-04, 1.330949737130597500e-04, 1.328940657303370721e-04, 1.326929569280423224e-04, 1.324916476482754658e-04, 1.322901382334189290e-04, 1.320884290261729454e-04, 1.318865203695133255e-04, 1.316844126067476999e-04, 1.314821060814478650e-04, 1.312796011375068394e-04, 1.310768981191008349e-04, 1.308739973706967113e-04, 1.306708992370802732e-04, 1.304676040633181067e-04, 1.302641121947675264e-04, 1.300604239770787173e-04, 1.298565397562007518e-04, 1.296524598783869292e-04, 1.294481846901621418e-04, 1.292437145383456968e-04, 1.290390497700625108e-04, 1.288341907327125626e-04, 1.286291377739833615e-04, 1.284238912418721732e-04, 1.282184514846515153e-04, 1.280128188508781561e-04, 1.278069936893956897e-04, 1.276009763493387910e-04, 1.273947671801418360e-04, 1.271883665314982163e-04, 1.269817747534083695e-04, 1.267749921961435400e-04, 1.265680192102595209e-04, 1.263608561465988226e-04, 1.261535033563004849e-04, 1.259459611907634579e-04, 1.257382300016718639e-04, 1.255303101410048367e-04, 1.253222019609986015e-04, 1.251139058142013627e-04, 1.249054220534078451e-04, 1.246967510317149137e-04, 1.244878931024825963e-04, 1.242788486193489915e-04, 1.240696179362331690e-04, 1.238602014073436803e-04, 1.236505993871421299e-04, 1.234408122303693313e-04, 1.232308402920544144e-04, 1.230206839274764451e-04, 1.228103434922208032e-04, 1.225998193421126128e-04, 1.223891118332720638e-04, 1.221782213220717211e-04, 1.219671481651647411e-04, 1.217558927194876500e-04, 1.215444553422240231e-04, 1.213328363908299499e-04, 1.211210362230445237e-04, 1.209090551968604598e-04, 1.206968936705329453e-04, 1.204845520026065681e-04, 1.202720305518775458e-04, 1.200593296774037951e-04, 1.198464497385070193e-04, 1.196333910947780478e-04, 1.194201541060844660e-04, 1.192067391325344846e-04, 1.189931465345024587e-04, 1.187793766726382664e-04, 1.185654299078347688e-04, 1.183513066012592118e-04, 1.181370071143326663e-04, 1.179225318087421311e-04, 1.177078810464177508e-04, 1.174930551895670089e-04, 1.172780546006309260e-04, 1.170628796423402082e-04, 1.168475306776492728e-04, 1.166320080697913128e-04, 1.164163121822404175e-04, 1.162004433787244606e-04, 1.159844020232308738e-04, 1.157681884800132335e-04, 1.155518031135547094e-04, 1.153352462885951017e-04, 1.151185183701388916e-04, 1.149016197234184732e-04, 1.146845507139491901e-04, 1.144673117074623727e-04, 1.142499030699620823e-04, 1.140323251676864596e-04, 1.138145783671161947e-04, 1.135966630350029606e-04, 1.133785795383305308e-04, 1.131603282443186149e-04, 1.129419095204517930e-04, 1.127233237344440759e-04, 1.125045712542488663e-04, 1.122856524480870936e-04, 1.120665676844075732e-04, 1.118473173318964523e-04, 1.116279017594814653e-04, 1.114083213363359592e-04, 1.111885764318877026e-04, 1.109686674157803150e-04, 1.107485946579007924e-04, 1.105283585283892242e-04, 1.103079593976084898e-04, 1.100873976361546125e-04, 1.098666736148832824e-04, 1.096457877048721661e-04, 1.094247402774293506e-04, 1.092035317040968527e-04, 1.089821623566564608e-04, 1.087606326071372697e-04, 1.085389428277765952e-04, 1.083170933910495323e-04, 1.080950846696771543e-04, 1.078729170365910322e-04, 1.076505908649633895e-04, 1.074281065282109237e-04, 1.072054643999548261e-04, 1.069826648540493104e-04, 1.067597082645906249e-04, 1.065365950058786988e-04, 1.063133254524733850e-04, 1.060898999791263592e-04, 1.058663189608395172e-04, 1.056425827728237619e-04, 1.054186917905148869e-04, 1.051946463895763817e-04, 1.049704469459090543e-04, 1.047460938356121080e-04, 1.045215874350102872e-04, 1.042969281206644757e-04, 1.040721162693307678e-04, 1.038471522580195844e-04, 1.036220364639255255e-04, 1.033967692644869875e-04, 1.031713510373392034e-04, 1.029457821603502253e-04, 1.027200630115989013e-04, 1.024941939693853381e-04, 1.022681754122094742e-04, 1.020420077188062899e-04, 1.018156912681093097e-04, 1.015892264392604961e-04, 1.013626136116390893e-04, 1.011358531648220879e-04, 1.009089454785922179e-04, 1.006818909329432182e-04, 1.004546899080836081e-04, 1.002273427844468516e-04, 9.999984994265000908e-05, 9.977221176352372848e-05, 9.954442862812062118e-05, 9.931650091768567663e-05, 9.908842901366519355e-05, 9.886021329773556543e-05, 9.863185415176391050e-05, 9.840335195781128364e-05, 9.817470709816296631e-05, 9.794591995528200844e-05, 9.771699091186899513e-05, 9.748792035079154635e-05, 9.725870865514295879e-05, 9.702935620820298478e-05, 9.679986339345008381e-05, 9.657023059456836141e-05, 9.634045819545460293e-05, 9.611054658017893055e-05, 9.588049613301441552e-05, 9.565030723844438300e-05, 9.541998028112485804e-05, 9.518951564594120150e-05, 9.495891371793910068e-05, 9.472817488238369893e-05, 9.449729952471789456e-05, 9.426628803057274914e-05, 9.403514078579718115e-05, 9.380385817641621058e-05, 9.357244058864043219e-05, 9.334088840887105702e-05, 9.310920202371452206e-05, 9.287738181994073484e-05, 9.264542818453800190e-05, 9.241334150466770907e-05, 9.218112216767303582e-05, 9.194877056108367148e-05, 9.171628707261984034e-05, 9.148367209020271003e-05, 9.125092600191264973e-05, 9.101804919601831384e-05, 9.078504206098744343e-05, 9.055190498545459760e-05, 9.031863835823179224e-05, 9.008524256833733981e-05, 8.985171800495498848e-05, 8.961806505744369347e-05, 8.938428411534133050e-05, 8.915037556836980502e-05, 8.891633980644467455e-05, 8.868217721963282413e-05, 8.844788819818344742e-05, 8.821347313253661182e-05, 8.797893241328830661e-05, 8.774426643122402601e-05, 8.750947557729837271e-05, 8.727456024264497827e-05, 8.703952081855443961e-05, 8.680435769651063981e-05, 8.656907126814265016e-05, 8.633366192528696339e-05, 8.609813005991490630e-05, 8.586247606419181015e-05, 8.562670033043742366e-05, 8.539080325113434275e-05, 8.515478521895908641e-05, 8.491864662673925725e-05, 8.468238786746359740e-05, 8.444600933428693520e-05, 8.420951142054430697e-05, 8.397289451970948624e-05, 8.373615902545639025e-05, 8.349930533158569305e-05, 8.326233383208604222e-05, 8.302524492109302184e-05, 8.278803899289741955e-05, 8.255071644197722403e-05, 8.231327766295399944e-05, 8.207572305059869944e-05, 8.183805299986130659e-05, 8.160026790583405076e-05, 8.136236816376088237e-05, 8.112435416906933435e-05, 8.088622631732623254e-05, 8.064798500424872740e-05, 8.040963062570905093e-05, 8.017116357773762026e-05, 7.993258425653488252e-05, 7.969389305842721491e-05, 7.945509037989827172e-05, 7.921617661759845753e-05, 7.897715216831381060e-05, 7.873801742897456810e-05, 7.849877279668674346e-05, 7.825941866868953080e-05, 7.801995544236431737e-05, 7.778038351524055175e-05, 7.754070328499882033e-05, 7.730091514948263796e-05, 7.706101950665394148e-05, 7.682101675462440962e-05, 7.658090729166633207e-05, 7.634069151617380868e-05, 7.610036982669448940e-05, 7.585994262193415509e-05, 7.561941030071302411e-05, 7.537877326199815650e-05, 7.513803190491216818e-05, 7.489718662869054053e-05, 7.465623783274491065e-05, 7.441518591658826147e-05, 7.417403127989678898e-05, 7.393277432246843155e-05, 7.369141544423148929e-05, 7.344995504527633697e-05, 7.320839352581278781e-05, 7.296673128617868574e-05, 7.272496872684620732e-05, 7.248310624843576670e-05, 7.224114425167355545e-05, 7.199908313745483296e-05, 7.175692330676838458e-05, 7.151466516075950027e-05, 7.127230910068198505e-05, 7.102985552793453401e-05, 7.078730484403872303e-05, 7.054465745064891562e-05, 7.030191374953049762e-05, 7.005907414259664515e-05, 6.981613903186946956e-05, 6.957310881949133378e-05, 6.932998390775529127e-05, 6.908676469906200256e-05, 6.884345159592952020e-05, 6.860004500099831668e-05, 6.835654531703577036e-05, 6.811295294694653317e-05, 6.786926829372838998e-05, 6.762549176050401223e-05, 6.738162375053147462e-05, 6.713766466717088885e-05, 6.689361491389437826e-05, 6.664947489431776362e-05, 6.640524501215804888e-05, 6.616092567123587416e-05, 6.591651727550901761e-05, 6.567202022902240012e-05, 6.542743493597224299e-05, 6.518276180063002471e-05, 6.493800122740650310e-05, 6.469315362080814392e-05, 6.444821938544614685e-05, 6.420319892607025906e-05, 6.395809264752218162e-05, 6.371290095474841731e-05, 6.346762425280315725e-05, 6.322226294686415099e-05, 6.297681744218990756e-05, 6.273128814418236240e-05, 6.248567545831151175e-05, 6.223997979017923147e-05, 6.199420154547551597e-05, 6.174834112998842572e-05, 6.150239894963642365e-05, 6.125637541042328580e-05, 6.101027091844997343e-05, 6.076408587991734343e-05, 6.051782070114354307e-05, 6.027147578851889360e-05, 6.002505154856531807e-05, 5.977854838788659002e-05, 5.953196671317864696e-05, 5.928530693123459802e-05, 5.903856944894918273e-05, 5.879175467332872535e-05, 5.854486301144748217e-05, 5.829789487047957807e-05, 5.805085065770879143e-05, 5.780373078049567568e-05, 5.755653564628724261e-05, 5.730926566264984756e-05, 5.706192123722401884e-05, 5.681450277773529979e-05, 5.656701069199844323e-05, 5.631944538792264956e-05, 5.607180727352228001e-05, 5.582409675687116429e-05, 5.557631424613611602e-05, 5.532846014958602644e-05, 5.508053487554824562e-05, 5.483253883247347872e-05, 5.458447242885781833e-05, 5.433633607330892143e-05, 5.408813017449463857e-05, 5.383985514118763552e-05, 5.359151138221425286e-05, 5.334309930652037798e-05, 5.309461932309308442e-05, 5.284607184102714766e-05, 5.259745726947925789e-05, 5.234877601767878749e-05, 5.210002849496011385e-05, 5.185121511071808572e-05, 5.160233627441812663e-05, 5.135339239560111381e-05, 5.110438388389895682e-05, 5.085531114899058571e-05, 5.060617460066687439e-05, 5.035697464875266621e-05, 5.010771170317280182e-05, 4.985838617390127688e-05, 4.960899847099935179e-05, 4.935954900459327808e-05, 4.911003818488370390e-05, 4.886046642212388150e-05, 4.861083412665688253e-05, 4.836114170887695297e-05, 4.811138957923934552e-05, 4.786157814829308278e-05, 4.761170782663611879e-05, 4.736177902492530684e-05, 4.711179215388160369e-05, 4.686174762429510431e-05, 4.661164584703505722e-05, 4.636148723300497171e-05, 4.611127219317520491e-05, 4.586100113859396647e-05, 4.561067448035194640e-05, 4.536029262959441754e-05, 4.510985599755253507e-05, 4.485936499549887749e-05, 4.460882003475824119e-05, 4.435822152671159099e-05, 4.410756988280119657e-05, 4.385686551454196918e-05, 4.360610883346964349e-05, 4.335530025120168271e-05, 4.310444017939238582e-05, 4.285352902974293675e-05, 4.260256721403417443e-05, 4.235155514408180165e-05, 4.210049323174611580e-05, 4.184938188893760604e-05, 4.159822152763262005e-05, 4.134701255982818667e-05, 4.109575539760821321e-05, 4.084445045306486723e-05, 4.059309813836481454e-05, 4.034169886570342523e-05, 4.009025304731626615e-05, 3.983876109551086808e-05, 3.958722342262204982e-05, 3.933564044102210290e-05, 3.908401256312587379e-05, 3.883234020140695917e-05, 3.858062376835191869e-05, 3.832886367652679082e-05, 3.807706033849871178e-05, 3.782521416690154365e-05, 3.757332557438526925e-05, 3.732139497364880278e-05, 3.706942277744535667e-05, 3.681740939853586148e-05, 3.656535524972315222e-05, 3.631326074386174643e-05, 3.606112629382380029e-05, 3.580895231250967278e-05, 3.555673921288040430e-05, 3.530448740791315601e-05, 3.505219731061079820e-05, 3.479986933400738554e-05, 3.454750389117291397e-05, 3.429510139522381042e-05, 3.404266225927764700e-05, 3.379018689648572127e-05, 3.353767572004379664e-05, 3.328512914314690470e-05, 3.303254757905541375e-05, 3.277993144101606503e-05, 3.252728114232853596e-05, 3.227459709629461137e-05, 3.202187971626189040e-05, 3.176912941557285614e-05, 3.151634660763176407e-05, 3.126353170582489902e-05, 3.101068512358785671e-05, 3.075780727435930927e-05, 3.050489857159199635e-05, 3.025195942878567134e-05, 2.999899025944146994e-05, 2.974599147707235588e-05, 2.949296349520835547e-05, 2.923990672741240735e-05, 2.898682158723473113e-05, 2.873370848828016308e-05, 2.848056784412798619e-05, 2.822740006839920490e-05, 2.797420557471089344e-05, 2.772098477668661427e-05, 2.746773808798935081e-05, 2.721446592227625208e-05, 2.696116869320900721e-05, 2.670784681445847024e-05, 2.645450069972141779e-05, 2.620113076267443320e-05, 2.594773741703571289e-05, 2.569432107651272302e-05, 2.544088215481387507e-05, 2.518742106565277790e-05, 2.493393822275354358e-05, 2.468043403986100939e-05, 2.442690893069560787e-05, 2.417336330898584891e-05, 2.391979758847935481e-05, 2.366621218289692406e-05, 2.341260750599945367e-05, 2.315898397150838926e-05, 2.290534199317294218e-05, 2.265168198472390589e-05, 2.239800435989002065e-05, 2.214430953240320818e-05, 2.189059791600904436e-05, 2.163686992442051803e-05, 2.138312597135199361e-05, 2.112936647052916203e-05, 2.087559183564358559e-05, 2.062180248041960674e-05, 2.036799881853473043e-05, 2.011418126368665483e-05, 1.986035022954168034e-05, 1.960650612977943625e-05, 1.935264937804123884e-05, 1.909878038799715948e-05, 1.884489957326636287e-05, 1.859100734748415476e-05, 1.833710412425629637e-05, 1.808319031716929082e-05, 1.782926633982395606e-05, 1.757533260578928531e-05, 1.732138952861324847e-05, 1.706743752182784035e-05, 1.681347699896495416e-05, 1.655950837351101435e-05, 1.630553205897384821e-05, 1.605154846880291230e-05, 1.579755801645640455e-05, 1.554356111534995442e-05, 1.528955817889516964e-05, 1.503554962047661896e-05, 1.478153585346242683e-05, 1.452751729118086480e-05, 1.427349434695938450e-05, 1.401946743407305195e-05, 1.376543696581159192e-05, 1.351140335539973129e-05, 1.325736701606428737e-05, 1.300332836098826388e-05, 1.274928780332724267e-05, 1.249524575621418984e-05, 1.224120263277022656e-05, 1.198715884605870296e-05, 1.173311480911844251e-05, 1.147907093497435359e-05, 1.122502763659157626e-05, 1.097098532694266551e-05, 1.071694441892765335e-05, 1.046290532544141339e-05, 1.020886845932758558e-05, 9.954834233394993433e-06, 9.700803060422566977e-06, 9.446775353169942525e-06, 9.192751524326052854e-06, 8.938731986570503215e-06, 8.684717152527734991e-06, 8.430707434777620385e-06, 8.176703245888843990e-06, 7.922704998372868241e-06, 7.668713104694584005e-06, 7.414727977277378385e-06, 7.160750028519371490e-06, 6.906779670747526731e-06, 6.652817316284861193e-06, 6.398863377370518761e-06, 6.144918266227120244e-06, 5.890982395014716979e-06, 5.637056175841454119e-06, 5.383140020796945434e-06, 5.129234341906238760e-06, 4.875339551140508941e-06, 4.621456060422029917e-06, 4.367584281640508060e-06, 4.113724626607139100e-06, 3.859877507121847304e-06, 3.606043334893384006e-06, 3.352222521606588798e-06, 3.098415478870771345e-06, 2.844622618253002321e-06, 2.590844351283139700e-06, 2.337081089407844187e-06, 2.083333244023907422e-06, 1.829601226488869538e-06, 1.575885448075131998e-06, 1.322186320037134084e-06, 1.068504253531520892e-06, 8.148396596843571892e-07, 5.611929495452008711e-07, 3.075645341034138475e-07, 5.395482429315562734e-08, -1.996357689959685575e-07, -4.532068349648262422e-07, -7.067579628714766531e-07, -9.602887420205297171e-07, -1.213798761809048160e-06, -1.467287611659346508e-06, -1.720754881098834369e-06, -1.974200159692811889e-06, -2.227623037096023986e-06, -2.481023103008096468e-06, -2.734399947225063371e-06, -2.987753159572219064e-06, -3.241082329983900700e-06, -3.494387048436310460e-06, -3.747666904993433632e-06, -4.000921489796341854e-06, -4.254150393029986458e-06, -4.507353204969065308e-06, -4.760529515967352297e-06, -5.013678916452768040e-06, -5.266800996910987249e-06, -5.519895347931412289e-06, -5.772961560139969588e-06, -6.025999224278877265e-06, -6.279007931139547421e-06, -6.531987271608331844e-06, -6.784936836656043366e-06, -7.037856217304562434e-06, -7.290745004672855566e-06, -7.543602789971755932e-06, -7.796429164470997677e-06, -8.049223719550543582e-06, -8.301986046633437369e-06, -8.554715737265677214e-06, -8.807412383048952018e-06, -9.060075575686609881e-06, -9.312704906967291733e-06, -9.565299968759876240e-06, -9.817860353003129064e-06, -1.007038565175114110e-05, -1.032287545714036702e-05, -1.057532936137893235e-05, -1.082774695679244779e-05, -1.108012783575691571e-05, -1.133247159077835804e-05, -1.158477781442593286e-05, -1.183704609937750137e-05, -1.208927603840347835e-05, -1.234146722436182286e-05, -1.259361925018748752e-05, -1.284573170893801776e-05, -1.309780419376053781e-05, -1.334983629788106453e-05, -1.360182761465025910e-05, -1.385377773748206789e-05, -1.410568625990516114e-05, -1.435755277555224164e-05, -1.460937687815502866e-05, -1.486115816152821511e-05, -1.511289621961486515e-05, -1.536459064641986955e-05, -1.561624103608909249e-05, -1.586784698284254738e-05, -1.611940808102030949e-05, -1.637092392507151468e-05, -1.662239410952164354e-05, -1.687381822901785807e-05, -1.712519587831874912e-05, -1.737652665228893914e-05, -1.762781014589445735e-05, -1.787904595419200616e-05, -1.813023367237463995e-05, -1.838137289573848348e-05, -1.863246321967258778e-05, -1.888350423969831042e-05, -1.913449555143131425e-05, -1.938543675060395952e-05, -1.963632743305540382e-05, -1.988716719475428553e-05, -2.013795563176016699e-05, -2.038869234027474602e-05, -2.063937691657516738e-05, -2.089000895709311188e-05, -2.114058805834830436e-05, -2.139111381699392814e-05, -2.164158582980043319e-05, -2.189200369365056572e-05, -2.214236700552887511e-05, -2.239267536256709800e-05, -2.264292836201141530e-05, -2.289312560121150184e-05, -2.314326667766640838e-05, -2.339335118895764603e-05, -2.364337873282851597e-05, -2.389334890711723112e-05, -2.414326130980280839e-05, -2.439311553898837194e-05, -2.464291119289672492e-05, -2.489264786985950743e-05, -2.514232516836816081e-05, -2.539194268701322249e-05, -2.564150002452950331e-05, -2.589099677978590281e-05, -2.614043255175187353e-05, -2.638980693954362492e-05, -2.663911954241287815e-05, -2.688836995974218711e-05, -2.713755779102884136e-05, -2.738668263593020279e-05, -2.763574409419724393e-05, -2.788474176575342714e-05, -2.813367525062836154e-05, -2.838254414900307187e-05, -2.863134806119935297e-05, -2.888008658764726404e-05, -2.912875932893000782e-05, -2.937736588577369171e-05, -2.962590585904228616e-05, -2.987437884973257639e-05, -3.012278445896405900e-05, -3.037112228802349247e-05, -3.061939193833286240e-05, -3.086759301143819390e-05, -3.111572510904972466e-05, -3.136378783300870803e-05, -3.161178078528278148e-05, -3.185970356801097448e-05, -3.210755578347104019e-05, -3.235533703406886412e-05, -3.260304692238362797e-05, -3.285068505110194431e-05, -3.309825102309591914e-05, -3.334574444135731373e-05, -3.359316490904262032e-05, -3.384051202945721922e-05, -3.408778540604985612e-05, -3.433498464240312828e-05, -3.458210934227747598e-05, -3.482915910957923246e-05, -3.507613354835001227e-05, -3.532303226281139399e-05, -3.556985485729969866e-05, -3.581660093634327985e-05, -3.606327010459756642e-05, -3.630986196689514584e-05, -3.655637612820175240e-05, -3.680281219366742120e-05, -3.704916976856035182e-05, -3.729544845834474728e-05, -3.754164786861559247e-05, -3.778776760514318778e-05, -3.803380727386268653e-05, -3.827976648084173157e-05, -3.852564483232538185e-05, -3.877144193472522980e-05, -3.901715739461496962e-05, -3.926279081872549804e-05, -3.950834181393403165e-05, -3.975380998730958920e-05, -3.999919494607968623e-05, -4.024449629762068568e-05, -4.048971364949115068e-05, -4.073484660942132776e-05, -4.097989478528096639e-05, -4.122485778512404234e-05, -4.146973521718353990e-05, -4.171452668983954251e-05, -4.195923181166850296e-05, -4.220385019137933643e-05, -4.244838143788939595e-05, -4.269282516026019281e-05, -4.293718096774157777e-05, -4.318144846975620305e-05, -4.342562727589397944e-05, -4.366971699590265719e-05, -4.391371723973153297e-05, -4.415762761749953368e-05, -4.440144773948487581e-05, -4.464517721616938906e-05, -4.488881565817366741e-05, -4.513236267633392558e-05, -4.537581788163734666e-05, -4.561918088526624980e-05, -4.586245129858236927e-05, -4.610562873312184004e-05, -4.634871280058517571e-05, -4.659170311288151744e-05, -4.683459928209639933e-05, -4.707740092048135361e-05, -4.732010764049832227e-05, -4.756271905476005304e-05, -4.780523477608061644e-05, -4.804765441746367607e-05, -4.828997759209915469e-05, -4.853220391335706782e-05, -4.877433299477857228e-05, -4.901636445011901583e-05, -4.925829789331631907e-05, -4.950013293848081109e-05, -4.974186919992859579e-05, -4.998350629217062171e-05, -5.022504382988163328e-05, -5.046648142794344397e-05, -5.070781870143514460e-05, -5.094905526562798731e-05, -5.119019073598090637e-05, -5.143122472812995406e-05, -5.167215685793244797e-05, -5.191298674143534622e-05, -5.215371399486426311e-05, -5.239433823466261561e-05, -5.263485907745434712e-05, -5.287527614006582160e-05, -5.311558903951590308e-05, -5.335579739303772785e-05, -5.359590081804241753e-05, -5.383589893216736671e-05, -5.407579135321242416e-05, -5.431557769921619349e-05, -5.455525758839159772e-05, -5.479483063916983684e-05, -5.503429647018483634e-05, -5.527365470026813788e-05, -5.551290494843956160e-05, -5.575204683394959166e-05, -5.599107997624886947e-05, -5.623000399497756857e-05, -5.646881851000861357e-05, -5.670752314138482358e-05, -5.694611750939353238e-05, -5.718460123450388771e-05, -5.742297393741439349e-05, -5.766123523901221158e-05, -5.789938476042069053e-05, -5.813742212293628530e-05, -5.837534694810411941e-05, -5.861315885765403053e-05, -5.885085747354452138e-05, -5.908844241795214802e-05, -5.932591331324009161e-05, -5.956326978200175687e-05, -5.980051144705083129e-05, -6.003763793141576925e-05, -6.027464885833601089e-05, -6.051154385125127557e-05, -6.074832253384488258e-05, -6.098498453001268191e-05, -6.122152946385297123e-05, -6.145795695969847303e-05, -6.169426664210696308e-05, -6.193045813582929320e-05, -6.216653106585347092e-05, -6.240248505739369542e-05, -6.263831973588593945e-05, -6.287403472698350408e-05, -6.310962965654648839e-05, -6.334510415069060567e-05, -6.358045783572951744e-05, -6.381569033821707663e-05, -6.405080128493243342e-05, -6.428579030287628112e-05, -6.452065701925884867e-05, -6.475540106154475950e-05, -6.499002205742070875e-05, -6.522451963478603071e-05, -6.545889342179506403e-05, -6.569314304679516243e-05, -6.592726813840040694e-05, -6.616126832542941331e-05, -6.639514323694722291e-05, -6.662889250225145202e-05, -6.686251575086657266e-05, -6.709601261253420902e-05, -6.732938271725594985e-05, -6.756262569526228607e-05, -6.779574117700290720e-05, -6.802872879318884968e-05, -6.826158817473020946e-05, -6.849431895281100620e-05, -6.872692075882514751e-05, -6.895939322442581443e-05, -6.919173598149382977e-05, -6.942394866213345687e-05, -6.965603089871395164e-05, -6.988798232383947593e-05, -7.011980257033961078e-05, -7.035149127130001223e-05, -7.058304806005361574e-05, -7.081447257015000744e-05, -7.104576443539654257e-05, -7.127692328985005125e-05, -7.150794876781031977e-05, -7.173884050381785441e-05, -7.196959813264176549e-05, -7.220022128932313541e-05, -7.243070960914464750e-05, -7.266106272761959489e-05, -7.289128028053051876e-05, -7.312136190389127482e-05, -7.335130723397057407e-05, -7.358111590728046310e-05, -7.381078756059855032e-05, -7.404032183093237627e-05, -7.426971835556587175e-05, -7.449897677199842565e-05, -7.472809671801766197e-05, -7.495707783163808760e-05, -7.518591975114282051e-05, -7.541462211506870907e-05, -7.564318456220190041e-05, -7.587160673156809611e-05, -7.609988826247392809e-05, -7.632802879447725148e-05, -7.655602796737673624e-05, -7.678388542125453057e-05, -7.701160079641377015e-05, -7.723917373345264275e-05, -7.746660387320204657e-05, -7.769389085676786059e-05, -7.792103432552124095e-05, -7.814803392106787030e-05, -7.837488928529071596e-05, -7.860160006034370094e-05, -7.882816588862317586e-05, -7.905458641280376539e-05, -7.928086127582786499e-05, -7.950699012087715360e-05, -7.973297259141260058e-05, -7.995880833116543983e-05, -8.018449698413265673e-05, -8.041003819457216348e-05, -8.063543160699321744e-05, -8.086067686619844753e-05, -8.108577361725234460e-05, -8.131072150547317056e-05, -8.153552017646362778e-05, -8.176016927610013901e-05, -8.198466845050480720e-05, -8.220901734608471786e-05, -8.243321560952386173e-05, -8.265726288777757824e-05, -8.288115882806911319e-05, -8.310490307787842435e-05, -8.332849528498487189e-05, -8.355193509743603409e-05, -8.377522216353991457e-05, -8.399835613189874229e-05, -8.422133665137579504e-05, -8.444416337111522669e-05, -8.466683594053325812e-05, -8.488935400933803163e-05, -8.511171722749575675e-05, -8.533392524527585370e-05, -8.555597771319190502e-05, -8.577787428207142399e-05, -8.599961460299709089e-05, -8.622119832734762739e-05, -8.644262510678249575e-05, -8.666389459323756205e-05, -8.688500643891623276e-05, -8.710596029632947546e-05, -8.732675581826664015e-05, -8.754739265778557951e-05, -8.776787046825410606e-05, -8.798818890328939885e-05, -8.820834761682928968e-05, -8.842834626307246942e-05, -8.864818449652437683e-05, -8.886786197196198912e-05, -8.908737834445576344e-05, -8.930673326935846968e-05, -8.952592640232699640e-05, -8.974495739928749379e-05, -8.996382591647067797e-05, -9.018253161040208675e-05, -9.040107413787420206e-05, -9.061945315598534572e-05, -9.083766832213039592e-05, -9.105571929399678929e-05, -9.127360572956019758e-05, -9.149132728707519001e-05, -9.170888362511412902e-05, -9.192627440254018715e-05, -9.214349927849597652e-05, -9.236055791243501776e-05, -9.257744996411164341e-05, -9.279417509355242916e-05, -9.301073296109590278e-05, -9.322712322738349101e-05, -9.344334555335423410e-05, -9.365939960024195331e-05, -9.387528502956447667e-05, -9.409100150316895860e-05, -9.430654868317888957e-05, -9.452192623203319510e-05, -9.473713381247191078e-05, -9.495217108753260435e-05, -9.516703772054034690e-05, -9.538173337514820776e-05, -9.559625771530692396e-05, -9.581061040525778517e-05, -9.602479110957059432e-05, -9.623879949308613711e-05, -9.645263522098441902e-05, -9.666629795872840871e-05, -9.687978737210174122e-05, -9.709310312719963770e-05, -9.730624489040166491e-05, -9.751921232840985842e-05, -9.773200510823961535e-05, -9.794462289721584541e-05, -9.815706536295886278e-05, -9.836933217342286166e-05, -9.858142299684016124e-05, -9.879333750178694896e-05, -9.900507535712824375e-05, -9.921663623205997657e-05, -9.942801979608204802e-05, -9.963922571899237876e-05, -9.985025367092813632e-05, -1.000611033223346863e-04, -1.002717743439587346e-04, -1.004822664068769100e-04, -1.006925791824863720e-04, -1.009027123424771909e-04, -1.011126655588700238e-04, -1.013224385040087692e-04, -1.015320308505547527e-04, -1.017414422714824719e-04, -1.019506724400722506e-04, -1.021597210299475625e-04, -1.023685877150467475e-04, -1.025772721696145543e-04, -1.027857740682357917e-04, -1.029940930858027346e-04, -1.032022288975344908e-04, -1.034101811789672564e-04, -1.036179496059758240e-04, -1.038255338547386982e-04, -1.040329336017820468e-04, -1.042401485239242027e-04, -1.044471782983409739e-04, -1.046540226025104305e-04, -1.048606811142509737e-04, -1.050671535117119300e-04, -1.052734394733467586e-04, -1.054795386779502794e-04, -1.056854508046494850e-04, -1.058911755329008567e-04, -1.060967125424754710e-04, -1.063020615134977186e-04, -1.065072221263883433e-04, -1.067121940619324350e-04, -1.069169770012225364e-04, -1.071215706256963864e-04, -1.073259746171281248e-04, -1.075301886576022852e-04, -1.077342124295495323e-04, -1.079380456157432068e-04, -1.081416878992723146e-04, -1.083451389635745412e-04, -1.085483984924266699e-04, -1.087514661699183846e-04, -1.089543416804886856e-04, -1.091570247089179751e-04, -1.093595149403229881e-04, -1.095618120601542993e-04, -1.097639157541858735e-04, -1.099658257085528370e-04, -1.101675416097251583e-04, -1.103690631444985545e-04, -1.105703900000210271e-04, -1.107715218637872511e-04, -1.109724584236082448e-04, -1.111731993676516611e-04, -1.113737443844302138e-04, -1.115740931627988045e-04, -1.117742453919512565e-04, -1.119742007614108956e-04, -1.121739589610671147e-04, -1.123735196811487437e-04, -1.125728826122158902e-04, -1.127720474451925200e-04, -1.129710138713384173e-04, -1.131697815822456333e-04, -1.133683502698759594e-04, -1.135667196265336998e-04, -1.137648893448565919e-04, -1.139628591178534680e-04, -1.141606286388497613e-04, -1.143581976015513242e-04, -1.145555656999910048e-04, -1.147527326285652515e-04, -1.149496980820245321e-04, -1.151464617554487629e-04, -1.153430233442813928e-04, -1.155393825443233596e-04, -1.157355390517266657e-04, -1.159314925629831430e-04, -1.161272427749604621e-04, -1.163227893848475970e-04, -1.165181320902200263e-04, -1.167132705889841946e-04, -1.169082045794204473e-04, -1.171029337601513584e-04, -1.172974578301587249e-04, -1.174917764887770349e-04, -1.176858894357112485e-04, -1.178797963710050438e-04, -1.180734969950742651e-04, -1.182669910086955113e-04, -1.184602781129848181e-04, -1.186533580094282727e-04, -1.188462303998770133e-04, -1.190388949865418757e-04, -1.192313514719896934e-04, -1.194235995591358846e-04, -1.196156389512786450e-04, -1.198074693520732523e-04, -1.199990904655258048e-04, -1.201905019960162883e-04, -1.203817036482933032e-04, -1.205726951274479770e-04, -1.207634761389474924e-04, -1.209540463886327839e-04, -1.211444055826928012e-04, -1.213345534277033102e-04, -1.215244896305762203e-04, -1.217142138986194186e-04, -1.219037259394867881e-04, -1.220930254612113844e-04, -1.222821121721994592e-04, -1.224709857812037209e-04, -1.226596459973579615e-04, -1.228480925301695618e-04, -1.230363250895156156e-04, -1.232243433856301362e-04, -1.234121471291395095e-04, -1.235997360310098832e-04, -1.237871098026097527e-04, -1.239742681556573226e-04, -1.241612108022565838e-04, -1.243479374548875013e-04, -1.245344478263822163e-04, -1.247207416299594962e-04, -1.249068185792154653e-04, -1.250926783881217881e-04, -1.252783207710106536e-04, -1.254637454426123428e-04, -1.256489521180066021e-04, -1.258339405126618100e-04, -1.260187103424278217e-04, -1.262032613235306293e-04, -1.263875931725701662e-04, -1.265717056065112538e-04, -1.267555983427178358e-04, -1.269392710989293148e-04, -1.271227235932504156e-04, -1.273059555441790757e-04, -1.274889666705964169e-04, -1.276717566917439230e-04, -1.278543253272561547e-04, -1.280366722971531884e-04, -1.282187973218368478e-04, -1.284007001220866385e-04, -1.285823804190528363e-04, -1.287638379342890941e-04, -1.289450723897281022e-04, -1.291260835076739441e-04, -1.293068710108363848e-04, -1.294874346222800758e-04, -1.296677740654844299e-04, -1.298478890642935045e-04, -1.300277793429534604e-04, -1.302074446260806861e-04, -1.303868846386986612e-04, -1.305660991061897633e-04, -1.307450877543522697e-04, -1.309238503093524634e-04, -1.311023864977566434e-04, -1.312806960465248641e-04, -1.314587786829859441e-04, -1.316366341348702092e-04, -1.318142621303019840e-04, -1.319916623977965026e-04, -1.321688346662484154e-04, -1.323457786649629331e-04, -1.325224941236094228e-04, -1.326989807722768380e-04, -1.328752383414275582e-04, -1.330512665619280996e-04, -1.332270651650436664e-04, -1.334026338824114257e-04, -1.335779724460760688e-04, -1.337530805884853122e-04, -1.339279580424643375e-04, -1.341026045412470975e-04, -1.342770198184660977e-04, -1.344512036081317152e-04, -1.346251556446616076e-04, -1.347988756628749668e-04, -1.349723633979887786e-04, -1.351456185856134314e-04, -1.353186409617452895e-04, -1.354914302628000599e-04, -1.356639862255876649e-04, -1.358363085873062260e-04, -1.360083970855655358e-04, -1.361802514583789273e-04, -1.363518714441415620e-04, -1.365232567816609239e-04, -1.366944072101494191e-04, -1.368653224692217743e-04, -1.370360022988914854e-04, -1.372064464395618465e-04, -1.373766546320593425e-04, -1.375466266176096348e-04, -1.377163621378311368e-04, -1.378858609347644775e-04, -1.380551227508330361e-04, -1.382241473288761734e-04, -1.383929344121416147e-04, -1.385614837442840407e-04, -1.387297950693525106e-04, -1.388978681318210910e-04, -1.390657026765439966e-04, -1.392332984488098009e-04, -1.394006551942959533e-04, -1.395677726590982429e-04, -1.397346505897256481e-04, -1.399012887330767553e-04, -1.400676868364705504e-04, -1.402338446476389649e-04, -1.403997619147244903e-04, -1.405654383862682522e-04, -1.407308738112414523e-04, -1.408960679389981239e-04, -1.410610205193327032e-04, -1.412257313024311320e-04, -1.413902000389065275e-04, -1.415544264797738395e-04, -1.417184103764638364e-04, -1.418821514808177385e-04, -1.420456495451014750e-04, -1.422089043219800972e-04, -1.423719155645434740e-04, -1.425346830263014668e-04, -1.426972064611590205e-04, -1.428594856234480931e-04, -1.430215202679212044e-04, -1.431833101497459882e-04, -1.433448550245031324e-04, -1.435061546481806592e-04, -1.436672087772001367e-04, -1.438280171683988971e-04, -1.439885795790203063e-04, -1.441488957667458022e-04, -1.443089654896482739e-04, -1.444687885062461092e-04, -1.446283645754597449e-04, -1.447876934566432990e-04, -1.449467749095570044e-04, -1.451056086943991658e-04, -1.452641945717637407e-04, -1.454225323026925700e-04, -1.455806216486296798e-04, -1.457384623714527770e-04, -1.458960542334650635e-04, -1.460533969973756125e-04, -1.462104904263251449e-04, -1.463673342838838344e-04, -1.465239283340443409e-04, -1.466802723412130019e-04, -1.468363660702384007e-04, -1.469922092863691371e-04, -1.471478017553048663e-04, -1.473031432431511957e-04, -1.474582335164513708e-04, -1.476130723421785235e-04, -1.477676594877147737e-04, -1.479219947208781992e-04, -1.480760778099205041e-04, -1.482299085235187254e-04, -1.483834866307685645e-04, -1.485368119012105983e-04, -1.486898841047940120e-04, -1.488427030119064969e-04, -1.489952683933697770e-04, -1.491475800204348123e-04, -1.492996376647782748e-04, -1.494514410984975608e-04, -1.496029900941383574e-04, -1.497542844246735544e-04, -1.499053238634966579e-04, -1.500561081844514158e-04, -1.502066371617872306e-04, -1.503569105702123388e-04, -1.505069281848497116e-04, -1.506566897812653522e-04, -1.508061951354585652e-04, -1.509554440238591107e-04, -1.511044362233209969e-04, -1.512531715111490975e-04, -1.514016496650794465e-04, -1.515498704632739252e-04, -1.516978336843457956e-04, -1.518455391073204245e-04, -1.519929865116828539e-04, -1.521401756773377116e-04, -1.522871063846402472e-04, -1.524337784143682507e-04, -1.525801915477542538e-04, -1.527263455664452246e-04, -1.528722402525490253e-04, -1.530178753885944867e-04, -1.531632507575607090e-04, -1.533083661428677100e-04, -1.534532213283576420e-04, -1.535978160983244981e-04, -1.537421502375031627e-04, -1.538862235310695732e-04, -1.540300357646300685e-04, -1.541735867242484393e-04, -1.543168761964066802e-04, -1.544599039680513936e-04, -1.546026698265539994e-04, -1.547451735597411468e-04, -1.548874149558724885e-04, -1.550293938036535551e-04, -1.551711098922295212e-04, -1.553125630111981074e-04, -1.554537529505883571e-04, -1.555946795008889341e-04, -1.557353424530112597e-04, -1.558757415983329079e-04, -1.560158767286591976e-04, -1.561557476362528997e-04, -1.562953541138195732e-04, -1.564346959545089477e-04, -1.565737729519068460e-04, -1.567125849000608256e-04, -1.568511315934631835e-04, -1.569894128270426354e-04, -1.571274283961909054e-04, -1.572651780967259446e-04, -1.574026617249351366e-04, -1.575398790775382990e-04, -1.576768299517132164e-04, -1.578135141450862620e-04, -1.579499314557303107e-04, -1.580860816821575018e-04, -1.582219646233486480e-04, -1.583575800787186767e-04, -1.584929278481430031e-04, -1.586280077319486938e-04, -1.587628195309005350e-04, -1.588973630462220930e-04, -1.590316380795917027e-04, -1.591656444331395403e-04, -1.592993819094385701e-04, -1.594328503115291019e-04, -1.595660494428826053e-04, -1.596989791074447532e-04, -1.598316391095995883e-04, -1.599640292541927794e-04, -1.600961493465277729e-04, -1.602279991923454092e-04, -1.603595785978508112e-04, -1.604908873697069062e-04, -1.606219253150303872e-04, -1.607526922413850181e-04, -1.608831879568038052e-04, -1.610134122697554418e-04, -1.611433649891854530e-04, -1.612730459244791437e-04, -1.614024548854928231e-04, -1.615315916825305759e-04, -1.616604561263467290e-04, -1.617890480281667493e-04, -1.619173671996714144e-04, -1.620454134529895483e-04, -1.621731866007236362e-04, -1.623006864559137198e-04, -1.624279128320781367e-04, -1.625548655431805064e-04, -1.626815444036527967e-04, -1.628079492283848067e-04, -1.629340798327244110e-04, -1.630599360324702413e-04, -1.631855176438957826e-04, -1.633108244837320263e-04, -1.634358563691620217e-04, -1.635606131178448644e-04, -1.636850945478797545e-04, -1.638093004778484979e-04, -1.639332307267795373e-04, -1.640568851141752473e-04, -1.641802634599889225e-04, -1.643033655846506621e-04, -1.644261913090336248e-04, -1.645487404544937915e-04, -1.646710128428357318e-04, -1.647930082963372153e-04, -1.649147266377420560e-04, -1.650361676902439574e-04, -1.651573312775094979e-04, -1.652782172236733874e-04, -1.653988253533340759e-04, -1.655191554915474116e-04, -1.656392074638486222e-04, -1.657589810962187867e-04, -1.658784762151242461e-04, -1.659976926474833990e-04, -1.661166302206901484e-04, -1.662352887626062303e-04, -1.663536681015490438e-04, -1.664717680663078600e-04, -1.665895884861451771e-04, -1.667071291907891309e-04, -1.668243900104337391e-04, -1.669413707757325582e-04, -1.670580713178238105e-04, -1.671744914683004324e-04, -1.672906310592334395e-04, -1.674064899231613010e-04, -1.675220678930898857e-04, -1.676373648024863361e-04, -1.677523804853005361e-04, -1.678671147759504463e-04, -1.679815675093155453e-04, -1.680957385207592725e-04, -1.682096276460972337e-04, -1.683232347216339015e-04, -1.684365595841317426e-04, -1.685496020708339589e-04, -1.686623620194529409e-04, -1.687748392681724359e-04, -1.688870336556384951e-04, -1.689989450209841660e-04, -1.691105732038103568e-04, -1.692219180441854832e-04, -1.693329793826617053e-04, -1.694437570602463851e-04, -1.695542509184396818e-04, -1.696644607992013479e-04, -1.697743865449758555e-04, -1.698840279986709562e-04, -1.699933850036812900e-04, -1.701024574038592467e-04, -1.702112450435478179e-04, -1.703197477675542232e-04, -1.704279654211668783e-04, -1.705358978501532810e-04, -1.706435449007426091e-04, -1.707509064196484621e-04, -1.708579822540623287e-04, -1.709647722516522588e-04, -1.710712762605597461e-04, -1.711774941293951204e-04, -1.712834257072598553e-04, -1.713890708437273503e-04, -1.714944293888423889e-04, -1.715995011931375916e-04, -1.717042861076138727e-04, -1.718087839837544809e-04, -1.719129946735164344e-04, -1.720169180293446693e-04, -1.721205539041510333e-04, -1.722239021513381383e-04, -1.723269626247718759e-04, -1.724297351788127506e-04, -1.725322196682891815e-04, -1.726344159485165028e-04, -1.727363238752888867e-04, -1.728379433048793704e-04, -1.729392740940320498e-04, -1.730403160999847392e-04, -1.731410691804528173e-04, -1.732415331936251876e-04, -1.733417079981829545e-04, -1.734415934532725621e-04, -1.735411894185385096e-04, -1.736404957540932381e-04, -1.737395123205400069e-04, -1.738382389789622413e-04, -1.739366755909230449e-04, -1.740348220184626785e-04, -1.741326781241151487e-04, -1.742302437708869844e-04, -1.743275188222746927e-04, -1.744245031422585245e-04, -1.745211965952918494e-04, -1.746175990463172292e-04, -1.747137103607634631e-04, -1.748095304045433653e-04, -1.749050590440454707e-04, -1.750002961461552856e-04, -1.750952415782255531e-04, -1.751898952081101346e-04, -1.752842569041352240e-04, -1.753783265351191889e-04, -1.754721039703676917e-04, -1.755655890796589712e-04, -1.756587817332653373e-04, -1.757516818019451204e-04, -1.758442891569431327e-04, -1.759366036699868188e-04, -1.760286252132843045e-04, -1.761203536595402257e-04, -1.762117888819423933e-04, -1.763029307541600851e-04, -1.763937791503578697e-04, -1.764843339451808068e-04, -1.765745950137567516e-04, -1.766645622317102862e-04, -1.767542354751519052e-04, -1.768436146206720525e-04, -1.769326995453597150e-04, -1.770214901267781098e-04, -1.771099862429923583e-04, -1.771981877725446579e-04, -1.772860945944724695e-04, -1.773737065883014975e-04, -1.774610236340436837e-04, -1.775480456121940093e-04, -1.776347724037462966e-04, -1.777212038901815545e-04, -1.778073399534643728e-04, -1.778931804760588336e-04, -1.779787253409027879e-04, -1.780639744314393524e-04, -1.781489276315916198e-04, -1.782335848257799251e-04, -1.783179458989075884e-04, -1.784020107363772317e-04, -1.784857792240685805e-04, -1.785692512483656226e-04, -1.786524266961340296e-04, -1.787353054547343573e-04, -1.788178874120218288e-04, -1.789001724563330799e-04, -1.789821604765010131e-04, -1.790638513618522220e-04, -1.791452450022055554e-04, -1.792263412878686204e-04, -1.793071401096359391e-04, -1.793876413588034230e-04, -1.794678449271569617e-04, -1.795477507069703901e-04, -1.796273585910134298e-04, -1.797066684725517980e-04, -1.797856802453338715e-04, -1.798643938036076546e-04, -1.799428090421166049e-04, -1.800209258560896044e-04, -1.800987441412606378e-04, -1.801762637938403592e-04, -1.802534847105486456e-04, -1.803304067885888194e-04, -1.804070299256639663e-04, -1.804833540199698332e-04, -1.805593789701960756e-04, -1.806351046755198873e-04, -1.807105310356225893e-04, -1.807856579506777030e-04, -1.808604853213473728e-04, -1.809350130487981682e-04, -1.810092410346786677e-04, -1.810831691811454799e-04, -1.811567973908394995e-04, -1.812301255669043927e-04, -1.813031536129779239e-04, -1.813758814331912507e-04, -1.814483089321658883e-04, -1.815204360150283731e-04, -1.815922625873992314e-04, -1.816637885553883981e-04, -1.817350138256118596e-04, -1.818059383051702136e-04, -1.818765619016666124e-04, -1.819468845232019116e-04, -1.820169060783716067e-04, -1.820866264762690048e-04, -1.821560456264764694e-04, -1.822251634390829845e-04, -1.822939798246730417e-04, -1.823624946943211650e-04, -1.824307079596058153e-04, -1.824986195326034277e-04, -1.825662293258794667e-04, -1.826335372525022768e-04, -1.827005432260386374e-04, -1.827672471605538171e-04, -1.828336489706088356e-04, -1.828997485712565341e-04, -1.829655458780572687e-04, -1.830310408070667133e-04, -1.830962332748351277e-04, -1.831611231984159229e-04, -1.832257104953563369e-04, -1.832899950837049697e-04, -1.833539768820057663e-04, -1.834176558093061210e-04, -1.834810317851463606e-04, -1.835441047295734325e-04, -1.836068745631219039e-04, -1.836693412068361340e-04, -1.837315045822526013e-04, -1.837933646114101494e-04, -1.838549212168484961e-04, -1.839161743216032464e-04, -1.839771238492065425e-04, -1.840377697236965783e-04, -1.840981118696097653e-04, -1.841581502119782668e-04, -1.842178846763408394e-04, -1.842773151887255943e-04, -1.843364416756717358e-04, -1.843952640642095031e-04, -1.844537822818770572e-04, -1.845119962567053290e-04, -1.845699059172332252e-04, -1.846275111924901454e-04, -1.846848120120152270e-04, -1.847418083058425457e-04, -1.847985000045089218e-04, -1.848548870390535133e-04, -1.849109693410107150e-04, -1.849667468424180997e-04, -1.850222194758170961e-04, -1.850773871742486792e-04, -1.851322498712537493e-04, -1.851868075008698800e-04, -1.852410599976441385e-04, -1.852950072966213764e-04, -1.853486493333444192e-04, -1.854019860438616560e-04, -1.854550173647251149e-04, -1.855077432329787807e-04, -1.855601635861752917e-04, -1.856122783623678893e-04, -1.856640875001131831e-04, -1.857155909384663800e-04, -1.857667886169821789e-04, -1.858176804757223600e-04, -1.858682664552501200e-04, -1.859185464966267923e-04, -1.859685205414198699e-04, -1.860181885316967174e-04, -1.860675504100242725e-04, -1.861166061194755516e-04, -1.861653556036268304e-04, -1.862137988065518167e-04, -1.862619356728325464e-04, -1.863097661475447198e-04, -1.863572901762766752e-04, -1.864045077051108487e-04, -1.864514186806373001e-04, -1.864980230499475595e-04, -1.865443207606360375e-04, -1.865903117607957146e-04, -1.866359959990269784e-04, -1.866813734244331775e-04, -1.867264439866166918e-04, -1.867712076356881480e-04, -1.868156643222528945e-04, -1.868598139974287546e-04, -1.869036566128287071e-04, -1.869471921205740858e-04, -1.869904204732865567e-04, -1.870333416240919130e-04, -1.870759555266161714e-04, -1.871182621349935142e-04, -1.871602614038578056e-04, -1.872019532883469550e-04, -1.872433377441049776e-04, -1.872844147272735376e-04, -1.873251841945001062e-04, -1.873656461029372846e-04, -1.874058004102407168e-04, -1.874456470745690352e-04, -1.874851860545804724e-04, -1.875244173094428634e-04, -1.875633407988245649e-04, -1.876019564828975187e-04, -1.876402643223371426e-04, -1.876782642783250959e-04, -1.877159563125417705e-04, -1.877533403871739081e-04, -1.877904164649137596e-04, -1.878271845089529864e-04, -1.878636444829924999e-04, -1.878997963512304807e-04, -1.879356400783737627e-04, -1.879711756296306507e-04, -1.880064029707140098e-04, -1.880413220678421333e-04, -1.880759328877352186e-04, -1.881102353976148525e-04, -1.881442295652104892e-04, -1.881779153587557097e-04, -1.882112927469841292e-04, -1.882443616991386667e-04, -1.882771221849588060e-04, -1.883095741746957741e-04, -1.883417176390983115e-04, -1.883735525494236764e-04, -1.884050788774327932e-04, -1.884362965953865663e-04, -1.884672056760514091e-04, -1.884978060927010876e-04, -1.885280978191102420e-04, -1.885580808295569618e-04, -1.885877550988276918e-04, -1.886171206022062275e-04, -1.886461773154848550e-04, -1.886749252149583613e-04, -1.887033642774271509e-04, -1.887314944801950234e-04, -1.887593158010663545e-04, -1.887868282183530351e-04, -1.888140317108728177e-04, -1.888409262579415911e-04, -1.888675118393839795e-04, -1.888937884355274324e-04, -1.889197560272027135e-04, -1.889454145957430867e-04, -1.889707641229885723e-04, -1.889958045912832631e-04, -1.890205359834731564e-04, -1.890449582829067498e-04, -1.890690714734403544e-04, -1.890928755394334052e-04, -1.891163704657462927e-04, -1.891395562377468954e-04, -1.891624328413039392e-04, -1.891850002627924992e-04, -1.892072584890884708e-04, -1.892292075075749120e-04, -1.892508473061359990e-04, -1.892721778731625015e-04, -1.892931991975449794e-04, -1.893139112686815888e-04, -1.893343140764708994e-04, -1.893544076113176948e-04, -1.893741918641305333e-04, -1.893936668263201755e-04, -1.894128324897993948e-04, -1.894316888469876393e-04, -1.894502358908084841e-04, -1.894684736146850232e-04, -1.894864020125486520e-04, -1.895040210788287937e-04, -1.895213308084643113e-04, -1.895383311968919064e-04, -1.895550222400561478e-04, -1.895714039344022347e-04, -1.895874762768796288e-04, -1.896032392649408074e-04, -1.896186928965423203e-04, -1.896338371701419443e-04, -1.896486720847029381e-04, -1.896631976396918472e-04, -1.896774138350753864e-04, -1.896913206713255091e-04, -1.897049181494167504e-04, -1.897182062708276638e-04, -1.897311850375387344e-04, -1.897438544520320804e-04, -1.897562145172950853e-04, -1.897682652368171455e-04, -1.897800066145902121e-04, -1.897914386551075982e-04, -1.898025613633690751e-04, -1.898133747448734452e-04, -1.898238788056225265e-04, -1.898340735521217759e-04, -1.898439589913805063e-04, -1.898535351309075224e-04, -1.898628019787148072e-04, -1.898717595433181454e-04, -1.898804078337342231e-04, -1.898887468594824708e-04, -1.898967766305846030e-04, -1.899044971575654308e-04, -1.899119084514489593e-04, -1.899190105237634019e-04, -1.899258033865393097e-04, -1.899322870523077831e-04, -1.899384615341026127e-04, -1.899443268454588970e-04, -1.899498830004138559e-04, -1.899551300135058002e-04, -1.899600678997757312e-04, -1.899646966747655242e-04, -1.899690163545180105e-04, -1.899730269555778171e-04, -1.899767284949912313e-04, -1.899801209903059839e-04, -1.899832044595700566e-04, -1.899859789213349619e-04, -1.899884443946491018e-04, -1.899906008990657645e-04, -1.899924484546375671e-04, -1.899939870819174323e-04, -1.899952168019618400e-04, -1.899961376363228322e-04, -1.899967496070591524e-04, -1.899970527367258652e-04, -1.899970470483798850e-04, -1.899967325655790547e-04, -1.899961093123807363e-04, -1.899951773133428951e-04, -1.899939365935242352e-04, -1.899923871784821121e-04, -1.899905290942754607e-04, -1.899883623674633040e-04, -1.899858870251023679e-04, -1.899831030947517164e-04, -1.899800106044686587e-04, -1.899766095828102396e-04, -1.899729000588339448e-04, -1.899688820620954236e-04, -1.899645556226506576e-04, -1.899599207710551475e-04, -1.899549775383624762e-04, -1.899497259561255022e-04, -1.899441660563974698e-04, -1.899382978717291100e-04, -1.899321214351704285e-04, -1.899256367802705438e-04, -1.899188439410767922e-04, -1.899117429521350803e-04, -1.899043338484905359e-04, -1.898966166656850408e-04, -1.898885914397596165e-04, -1.898802582072553187e-04, -1.898716170052074635e-04, -1.898626678711534069e-04, -1.898534108431246302e-04, -1.898438459596534346e-04, -1.898339732597680626e-04, -1.898237927829947577e-04, -1.898133045693571413e-04, -1.898025086593771340e-04, -1.897914050940727876e-04, -1.897799939149598294e-04, -1.897682751640507955e-04, -1.897562488838551117e-04, -1.897439151173798257e-04, -1.897312739081273840e-04, -1.897183253000992375e-04, -1.897050693377898777e-04, -1.896915060661932611e-04, -1.896776355307979573e-04, -1.896634577775895339e-04, -1.896489728530497169e-04, -1.896341808041555497e-04, -1.896190816783797190e-04, -1.896036755236922620e-04, -1.895879623885564737e-04, -1.895719423219330811e-04, -1.895556153732780747e-04, -1.895389815925417056e-04, -1.895220410301697597e-04, -1.895047937371023377e-04, -1.894872397647762402e-04, -1.894693791651219325e-04, -1.894512119905652787e-04, -1.894327382940243166e-04, -1.894139581289147872e-04, -1.893948715491445233e-04, -1.893754786091165945e-04, -1.893557793637271655e-04, -1.893357738683682065e-04, -1.893154621789224792e-04, -1.892948443517684964e-04, -1.892739204437781644e-04, -1.892526905123165389e-04, -1.892311546152425296e-04, -1.892093128109059187e-04, -1.891871651581514269e-04, -1.891647117163186044e-04, -1.891419525452344048e-04, -1.891188877052233221e-04, -1.890955172571005057e-04, -1.890718412621722759e-04, -1.890478597822380211e-04, -1.890235728795914714e-04, -1.889989806170147633e-04, -1.889740830577826131e-04, -1.889488802656642688e-04, -1.889233723049145387e-04, -1.888975592402875059e-04, -1.888714411370213226e-04, -1.888450180608491067e-04, -1.888182900779943876e-04, -1.887912572551696971e-04, -1.887639196595789816e-04, -1.887362773589200686e-04, -1.887083304213760747e-04, -1.886800789156224255e-04, -1.886515229108259883e-04, -1.886226624766396240e-04, -1.885934976832112132e-04, -1.885640286011738983e-04, -1.885342553016519380e-04, -1.885041778562588917e-04, -1.884737963370984864e-04, -1.884431108167587351e-04, -1.884121213683251372e-04, -1.883808280653622737e-04, -1.883492309819296640e-04, -1.883173301925742847e-04, -1.882851257723251758e-04, -1.882526177967101106e-04, -1.882198063417373261e-04, -1.881866914839029506e-04, -1.881532733001933073e-04, -1.881195518680810381e-04, -1.880855272655252938e-04, -1.880511995709744711e-04, -1.880165688633605211e-04, -1.879816352221043158e-04, -1.879463987271129378e-04, -1.879108594587799508e-04, -1.878750174979852922e-04, -1.878388729260957869e-04, -1.878024258249606218e-04, -1.877656762769175250e-04, -1.877286243647905166e-04, -1.876912701718870893e-04, -1.876536137820008652e-04, -1.876156552794119208e-04, -1.875773947488802273e-04, -1.875388322756557072e-04, -1.874999679454706714e-04, -1.874608018445420151e-04, -1.874213340595720038e-04, -1.873815646777427706e-04, -1.873414937867243940e-04, -1.873011214746698018e-04, -1.872604478302139041e-04, -1.872194729424758698e-04, -1.871781969010600209e-04, -1.871366197960478372e-04, -1.870947417180084994e-04, -1.870525627579925742e-04, -1.870100830075325019e-04, -1.869673025586426234e-04, -1.869242215038217014e-04, -1.868808399360446257e-04, -1.868371579487730931e-04, -1.867931756359489663e-04, -1.867488930919940302e-04, -1.867043104118144099e-04, -1.866594276907910838e-04, -1.866142450247890996e-04, -1.865687625101594986e-04, -1.865229802437222667e-04, -1.864768983227852806e-04, -1.864305168451366645e-04, -1.863838359090372548e-04, -1.863368556132347217e-04, -1.862895760569523748e-04, -1.862419973398938796e-04, -1.861941195622434471e-04, -1.861459428246574853e-04, -1.860974672282756314e-04, -1.860486928747210494e-04, -1.859996198660841403e-04, -1.859502483049390220e-04, -1.859005782943407101e-04, -1.858506099378122434e-04, -1.858003433393600791e-04, -1.857497786034735239e-04, -1.856989158351048661e-04, -1.856477551396942306e-04, -1.855962966231558911e-04, -1.855445403918728759e-04, -1.854924865527180021e-04, -1.854401352130266611e-04, -1.853874864806171212e-04, -1.853345404637828835e-04, -1.852812972712876134e-04, -1.852277570123725403e-04, -1.851739197967609840e-04, -1.851197857346382970e-04, -1.850653549366719226e-04, -1.850106275140032356e-04, -1.849556035782393842e-04, -1.849002832414767630e-04, -1.848446666162690015e-04, -1.847887538156526871e-04, -1.847325449531342194e-04, -1.846760401426955286e-04, -1.846192394987820689e-04, -1.845621431363276459e-04, -1.845047511707216743e-04, -1.844470637178357675e-04, -1.843890808940119744e-04, -1.843308028160549458e-04, -1.842722296012541065e-04, -1.842133613673647627e-04, -1.841541982326054463e-04, -1.840947403156741502e-04, -1.840349877357364027e-04, -1.839749406124279504e-04, -1.839145990658561406e-04, -1.838539632165914922e-04, -1.837930331856810033e-04, -1.837318090946402375e-04, -1.836702910654440263e-04, -1.836084792205513788e-04, -1.835463736828821983e-04, -1.834839745758183940e-04, -1.834212820232193847e-04, -1.833582961494072182e-04, -1.832950170791741067e-04, -1.832314449377778459e-04, -1.831675798509462601e-04, -1.831034219448664691e-04, -1.830389713461992530e-04, -1.829742281820697833e-04, -1.829091925800689503e-04, -1.828438646682567243e-04, -1.827782445751491725e-04, -1.827123324297369445e-04, -1.826461283614728038e-04, -1.825796325002745555e-04, -1.825128449765245310e-04, -1.824457659210713500e-04, -1.823783954652204338e-04, -1.823107337407491567e-04, -1.822427808798951639e-04, -1.821745370153593805e-04, -1.821060022803104020e-04, -1.820371768083687734e-04, -1.819680607336275353e-04, -1.818986541906389420e-04, -1.818289573144177414e-04, -1.817589702404388710e-04, -1.816886931046435294e-04, -1.816181260434251358e-04, -1.815472691936437233e-04, -1.814761226926282691e-04, -1.814046866781519212e-04, -1.813329612884593471e-04, -1.812609466622544551e-04, -1.811886429386933743e-04, -1.811160502573996606e-04, -1.810431687584536441e-04, -1.809699985823945705e-04, -1.808965398702230408e-04, -1.808227927633893832e-04, -1.807487574038080995e-04, -1.806744339338603054e-04, -1.805998224963671671e-04, -1.805249232346192560e-04, -1.804497362923643787e-04, -1.803742618137970332e-04, -1.802984999435779242e-04, -1.802224508268226880e-04, -1.801461146091003739e-04, -1.800694914364372936e-04, -1.799925814553178342e-04, -1.799153848126697674e-04, -1.798379016558971819e-04, -1.797601321328368715e-04, -1.796820763917924603e-04, -1.796037345815225037e-04, -1.795251068512285079e-04, -1.794461933505727650e-04, -1.793669942296808738e-04, -1.792875096391119243e-04, -1.792077397298897496e-04, -1.791276846534915149e-04, -1.790473445618326201e-04, -1.789667196073050259e-04, -1.788858099427275165e-04, -1.788046157213837547e-04, -1.787231370970060191e-04, -1.786413742237763697e-04, -1.785593272563278675e-04, -1.784769963497463902e-04, -1.783943816595588965e-04, -1.783114833417505558e-04, -1.782283015527571048e-04, -1.781448364494486118e-04, -1.780610881891663119e-04, -1.779770569296866393e-04, -1.778927428292296565e-04, -1.778081460464735826e-04, -1.777232667405383680e-04, -1.776381050709942863e-04, -1.775526611978604438e-04, -1.774669352815924736e-04, -1.773809274831026478e-04, -1.772946379637494146e-04, -1.772080668853237648e-04, -1.771212144100820559e-04, -1.770340807007162506e-04, -1.769466659203557059e-04, -1.768589702325851437e-04, -1.767709938014295264e-04, -1.766827367913593962e-04, -1.765941993672902788e-04, -1.765053816945723569e-04, -1.764162839390084133e-04, -1.763269062668409558e-04, -1.762372488447555791e-04, -1.761473118398787410e-04, -1.760570954197830489e-04, -1.759665997524722430e-04, -1.758758250064020132e-04, -1.757847713504648204e-04, -1.756934389539939077e-04, -1.756018279867635988e-04, -1.755099386189915207e-04, -1.754177710213237226e-04, -1.753253253648566045e-04, -1.752326018211227679e-04, -1.751396005620927776e-04, -1.750463217601800681e-04, -1.749527655882243281e-04, -1.748589322195155421e-04, -1.747648218277752890e-04, -1.746704345871648181e-04, -1.745757706722806865e-04, -1.744808302581608026e-04, -1.743856135202668622e-04, -1.742901206345090688e-04, -1.741943517772283248e-04, -1.740983071252017074e-04, -1.740019868556409504e-04, -1.739053911461966727e-04, -1.738085201749413290e-04, -1.737113741203935775e-04, -1.736139531615025588e-04, -1.735162574776496851e-04, -1.734182872486538440e-04, -1.733200426547545122e-04, -1.732215238766318134e-04, -1.731227310954106923e-04, -1.730236644926217749e-04, -1.729243242502448181e-04, -1.728247105506898441e-04, -1.727248235767864617e-04, -1.726246635118057395e-04, -1.725242305394455967e-04, -1.724235248438329168e-04, -1.723225466095250932e-04, -1.722212960215115465e-04, -1.721197732651940195e-04, -1.720179785264338483e-04, -1.719159119914887262e-04, -1.718135738470615470e-04, -1.717109642802833560e-04, -1.716080834786988757e-04, -1.715049316302875938e-04, -1.714015089234696991e-04, -1.712978155470647732e-04, -1.711938516903360535e-04, -1.710896175429705646e-04, -1.709851132950645635e-04, -1.708803391371688859e-04, -1.707752952602286647e-04, -1.706699818556297612e-04, -1.705643991151824202e-04, -1.704585472311018635e-04, -1.703524263960538800e-04, -1.702460368031124334e-04, -1.701393786457658429e-04, -1.700324521179369212e-04, -1.699252574139708866e-04, -1.698177947286157109e-04, -1.697100642570673859e-04, -1.696020661949287770e-04, -1.694938007382150176e-04, -1.693852680833725908e-04, -1.692764684272648015e-04, -1.691674019671737816e-04, -1.690580689008038245e-04, -1.689484694262646065e-04, -1.688386037420989429e-04, -1.687284720472659284e-04, -1.686180745411234813e-04, -1.685074114234745308e-04, -1.683964828945256817e-04, -1.682852891548892473e-04, -1.681738304056085110e-04, -1.680621068481370729e-04, -1.679501186843434027e-04, -1.678378661165168847e-04, -1.677253493473459980e-04, -1.676125685799478610e-04, -1.674995240178489596e-04, -1.673862158649887797e-04, -1.672726443257197524e-04, -1.671588096048131906e-04, -1.670447119074367913e-04, -1.669303514391849393e-04, -1.668157284060587308e-04, -1.667008430144714215e-04, -1.665856954712456887e-04, -1.664702859836209232e-04, -1.663546147592316529e-04, -1.662386820061360036e-04, -1.661224879327974574e-04, -1.660060327480886199e-04, -1.658893166612945814e-04, -1.657723398820955697e-04, -1.656551026205929438e-04, -1.655376050872915488e-04, -1.654198474931028052e-04, -1.653018300493460377e-04, -1.651835529677508332e-04, -1.650650164604382025e-04, -1.649462207399495829e-04, -1.648271660192273769e-04, -1.647078525116174455e-04, -1.645882804308730120e-04, -1.644684499911529534e-04, -1.643483614070076796e-04, -1.642280148934037985e-04, -1.641074106657082867e-04, -1.639865489396882998e-04, -1.638654299315199547e-04, -1.637440538577654794e-04, -1.636224209353990449e-04, -1.635005313818110742e-04, -1.633783854147615139e-04, -1.632559832524316311e-04, -1.631333251134028722e-04, -1.630104112166403556e-04, -1.628872417815236361e-04, -1.627638170278264027e-04, -1.626401371757212500e-04, -1.625162024457823336e-04, -1.623920130589672102e-04, -1.622675692366403377e-04, -1.621428712005794175e-04, -1.620179191729260906e-04, -1.618927133762404730e-04, -1.617672540334775199e-04, -1.616415413679661009e-04, -1.615155756034619900e-04, -1.613893569640995648e-04, -1.612628856743969291e-04, -1.611361619592808494e-04, -1.610091860440732842e-04, -1.608819581544653355e-04, -1.607544785165801872e-04, -1.606267473568939307e-04, -1.604987649022971482e-04, -1.603705313800711952e-04, -1.602420470178665169e-04, -1.601133120437563703e-04, -1.599843266861890106e-04, -1.598550911739901853e-04, -1.597256057363922446e-04, -1.595958706030156833e-04, -1.594658860038479173e-04, -1.593356521693034295e-04, -1.592051693301444880e-04, -1.590744377175437856e-04, -1.589434575630558981e-04, -1.588122290986206185e-04, -1.586807525565641763e-04, -1.585490281696046318e-04, -1.584170561708274274e-04, -1.582848367937200274e-04, -1.581523702721557094e-04, -1.580196568403672186e-04, -1.578866967330062084e-04, -1.577534901850896273e-04, -1.576200374320064677e-04, -1.574863387095450605e-04, -1.573523942538699281e-04, -1.572182043015260934e-04, -1.570837690894479164e-04, -1.569490888549312298e-04, -1.568141638356698503e-04, -1.566789942697321318e-04, -1.565435803955651675e-04, -1.564079224519959006e-04, -1.562720206782355697e-04, -1.561358753138559921e-04, -1.559994865988240684e-04, -1.558628547734785261e-04, -1.557259800785353954e-04, -1.555888627550858943e-04, -1.554515030446056449e-04, -1.553139011889253726e-04, -1.551760574302710487e-04, -1.550379720112368665e-04, -1.548996451747914217e-04, -1.547610771642828889e-04, -1.546222682234161996e-04, -1.544832185962856765e-04, -1.543439285273541354e-04, -1.542043982614555147e-04, -1.540646280437966639e-04, -1.539246181199603256e-04, -1.537843687358843184e-04, -1.536438801378934400e-04, -1.535031525726772948e-04, -1.533621862872949835e-04, -1.532209815291751842e-04, -1.530795385461211665e-04, -1.529378575862872923e-04, -1.527959388982128692e-04, -1.526537827307997077e-04, -1.525113893333164311e-04, -1.523687589554048453e-04, -1.522258918470534024e-04, -1.520827882586299712e-04, -1.519394484408864178e-04, -1.517958726449017935e-04, -1.516520611221442696e-04, -1.515080141244472582e-04, -1.513637319039884052e-04, -1.512192147133269962e-04, -1.510744628053792900e-04, -1.509294764334238317e-04, -1.507842558511076052e-04, -1.506388013124197690e-04, -1.504931130717234225e-04, -1.503471913837610278e-04, -1.502010365035971902e-04, -1.500546486866815156e-04, -1.499080281888231039e-04, -1.497611752661650707e-04, -1.496140901752452356e-04, -1.494667731729418573e-04, -1.493192245164778084e-04, -1.491714444634516647e-04, -1.490234332718181893e-04, -1.488751911998634507e-04, -1.487267185062740756e-04, -1.485780154500466099e-04, -1.484290822905584258e-04, -1.482799192875407788e-04, -1.481305267010537359e-04, -1.479809047915488967e-04, -1.478310538198120930e-04, -1.476809740469678075e-04, -1.475306657345133254e-04, -1.473801291442965091e-04, -1.472293645384910776e-04, -1.470783721796667279e-04, -1.469271523306978717e-04, -1.467757052548349225e-04, -1.466240312156709283e-04, -1.464721304771484571e-04, -1.463200033035574551e-04, -1.461676499595441917e-04, -1.460150707100799257e-04, -1.458622658205065777e-04, -1.457092355565090284e-04, -1.455559801840940041e-04, -1.454024999696539359e-04, -1.452487951799045639e-04, -1.450948660818957253e-04, -1.449407129430393265e-04, -1.447863360310860600e-04, -1.446317356141287925e-04, -1.444769119606108862e-04, -1.443218653392980906e-04, -1.441665960193180081e-04, -1.440111042701327712e-04, -1.438553903615466057e-04, -1.436994545637032008e-04, -1.435432971470937597e-04, -1.433869183825293254e-04, -1.432303185411796490e-04, -1.430734978945468166e-04, -1.429164567144709417e-04, -1.427591952731313302e-04, -1.426017138430493540e-04, -1.424440126970641916e-04, -1.422860921083716156e-04, -1.421279523504966980e-04, -1.419695936972990955e-04, -1.418110164229820756e-04, -1.416522208020611290e-04, -1.414932071094072833e-04, -1.413339756202180466e-04, -1.411745266100243460e-04, -1.410148603546890103e-04, -1.408549771304151179e-04, -1.406948772137158290e-04, -1.405345608814562630e-04, -1.403740284108259868e-04, -1.402132800793443003e-04, -1.400523161648676088e-04, -1.398911369455602854e-04, -1.397297426999366294e-04, -1.395681337068331378e-04, -1.394063102454125985e-04, -1.392442725951669629e-04, -1.390820210359204633e-04, -1.389195558478042969e-04, -1.387568773112884198e-04, -1.385939857071898139e-04, -1.384308813166081401e-04, -1.382675644209961023e-04, -1.381040353021309333e-04, -1.379402942420902172e-04, -1.377763415232981844e-04, -1.376121774284928606e-04, -1.374478022407352553e-04, -1.372832162434150269e-04, -1.371184197202213986e-04, -1.369534129551784227e-04, -1.367881962326520815e-04, -1.366227698372848561e-04, -1.364571340540669309e-04, -1.362912891683076800e-04, -1.361252354656053356e-04, -1.359589732319265419e-04, -1.357925027535047925e-04, -1.356258243169195497e-04, -1.354589382090583521e-04, -1.352918447171326164e-04, -1.351245441286394195e-04, -1.349570367314411332e-04, -1.347893228136648100e-04, -1.346214026637799479e-04, -1.344532765705678883e-04, -1.342849448230960395e-04, -1.341164077107857204e-04, -1.339476655233494667e-04, -1.337787185507961535e-04, -1.336095670834670454e-04, -1.334402114120146541e-04, -1.332706518273710260e-04, -1.331008886208296261e-04, -1.329309220839406584e-04, -1.327607525085925712e-04, -1.325903801869815902e-04, -1.324198054115819853e-04, -1.322490284752183046e-04, -1.320780496710004313e-04, -1.319068692923286521e-04, -1.317354876329306286e-04, -1.315639049868392251e-04, -1.313921216483623412e-04, -1.312201379121550378e-04, -1.310479540731546209e-04, -1.308755704265860082e-04, -1.307029872679984291e-04, -1.305302048932360434e-04, -1.303572235984435518e-04, -1.301840436800749776e-04, -1.300106654348616561e-04, -1.298370891598567137e-04, -1.296633151524055508e-04, -1.294893437101523736e-04, -1.293151751310405741e-04, -1.291408097133170938e-04, -1.289662477555044784e-04, -1.287914895564448421e-04, -1.286165354152682904e-04, -1.284413856314015122e-04, -1.282660405045737430e-04, -1.280905003347856486e-04, -1.279147654223552674e-04, -1.277388360678873827e-04, -1.275627125722785633e-04, -1.273863952367192782e-04, -1.272098843626993719e-04, -1.270331802519773269e-04, -1.268562832066256921e-04, -1.266791935290004808e-04, -1.265019115217468093e-04, -1.263244374878006305e-04, -1.261467717303932346e-04, -1.259689145530233298e-04, -1.257908662594987305e-04, -1.256126271539083307e-04, -1.254341975406280394e-04, -1.252555777243270969e-04, -1.250767680099384755e-04, -1.248977687027035216e-04, -1.247185801081403787e-04, -1.245392025320520913e-04, -1.243596362805257378e-04, -1.241798816599392068e-04, -1.239999389769300803e-04, -1.238198085384413331e-04, -1.236394906516904329e-04, -1.234589856241760349e-04, -1.232782937636773049e-04, -1.230974153782616709e-04, -1.229163507762451953e-04, -1.227351002662780105e-04, -1.225536641572339198e-04, -1.223720427582952362e-04, -1.221902363789242137e-04, -1.220082453288347360e-04, -1.218260699180333403e-04, -1.216437104568271856e-04, -1.214611672557508698e-04, -1.212784406256454402e-04, -1.210955308776272911e-04, -1.209124383230543632e-04, -1.207291632736136799e-04, -1.205457060412095250e-04, -1.203620669380507213e-04, -1.201782462766099997e-04, -1.199942443696389076e-04, -1.198100615301281942e-04, -1.196256980713947504e-04, -1.194411543069691091e-04, -1.192564305506830217e-04, -1.190715271166373386e-04, -1.188864443191687241e-04, -1.187011824729293318e-04, -1.185157418928142986e-04, -1.183301228939700523e-04, -1.181443257918316354e-04, -1.179583509021013733e-04, -1.177721985407129195e-04, -1.175858690239214204e-04, -1.173993626681891052e-04, -1.172126797902746105e-04, -1.170258207071982854e-04, -1.168387857362108317e-04, -1.166515751948733309e-04, -1.164641894009839254e-04, -1.162766286725852317e-04, -1.160888933280037645e-04, -1.159009836858258813e-04, -1.157129000648650391e-04, -1.155246427842409820e-04, -1.153362121633082384e-04, -1.151476085216612431e-04, -1.149588321791762560e-04, -1.147698834559785646e-04, -1.145807626724478509e-04, -1.143914701492280441e-04, -1.142020062071936152e-04, -1.140123711674964423e-04, -1.138225653515352896e-04, -1.136325890809609577e-04, -1.134424426776779369e-04, -1.132521264638500994e-04, -1.130616407618679971e-04, -1.128709858943985041e-04, -1.126801621843500007e-04, -1.124891699548812365e-04, -1.122980095294083644e-04, -1.121066812315708557e-04, -1.119151853852823222e-04, -1.117235223146949139e-04, -1.115316923442079652e-04, -1.113396957984680221e-04, -1.111475330023754696e-04, -1.109552042810508127e-04, -1.107627099598853902e-04, -1.105700503645057179e-04, -1.103772258207827856e-04, -1.101842366548307290e-04, -1.099910831930145274e-04, -1.097977657619161635e-04, -1.096042846883848212e-04, -1.094106402995021241e-04, -1.092168329225898330e-04, -1.090228628852193596e-04, -1.088287305151746059e-04, -1.086344361405052795e-04, -1.084399800894894617e-04, -1.082453626906440021e-04, -1.080505842727226892e-04, -1.078556451647242194e-04, -1.076605456958588708e-04, -1.074652861955968186e-04, -1.072698669936349852e-04, -1.070742884199054701e-04, -1.068785508045733948e-04, -1.066826544780464305e-04, -1.064865997709301423e-04, -1.062903870141232774e-04, -1.060940165386954121e-04, -1.058974886759813327e-04, -1.057008037575476138e-04, -1.055039621151637660e-04, -1.053069640808464570e-04, -1.051098099868674540e-04, -1.049125001656744087e-04, -1.047150349499781629e-04, -1.045174146727159264e-04, -1.043196396670174360e-04, -1.041217102662986716e-04, -1.039236268041412656e-04, -1.037253896143859881e-04, -1.035269990310981342e-04, -1.033284553885406760e-04, -1.031297590212174953e-04, -1.029309102638811899e-04, -1.027319094514544013e-04, -1.025327569191156017e-04, -1.023334530022656743e-04, -1.021339980364897079e-04, -1.019343923576456851e-04, -1.017346363017849830e-04, -1.015347302051600035e-04, -1.013346744042677036e-04, -1.011344692358222063e-04, -1.009341150367207832e-04, -1.007336121441376519e-04, -1.005329608954017999e-04, -1.003321616280932615e-04, -1.001312146800066621e-04, -9.993012038911496431e-05, -9.972887909365861741e-05, -9.952749113206486495e-05, -9.932595684295487362e-05, -9.912427656518928328e-05, -9.892245063783100523e-05, -9.872047940015386879e-05, -9.851836319165072563e-05, -9.831610235199738658e-05, -9.811369722110624891e-05, -9.791114813908897269e-05, -9.770845544626463944e-05, -9.750561948316079563e-05, -9.730264059052028320e-05, -9.709951910926555572e-05, -9.689625538055172298e-05, -9.669284974573032513e-05, -9.648930254635658323e-05, -9.628561412419095781e-05, -9.608178482120577606e-05, -9.587781497954945317e-05, -9.567370494159932004e-05, -9.546945504992610215e-05, -9.526506564730138698e-05, -9.506053707670601303e-05, -9.485586968129444024e-05, -9.465106380444746927e-05, -9.444611978973522961e-05, -9.424103798092739817e-05, -9.403581872199021769e-05, -9.383046235709641722e-05, -9.362496923058830859e-05, -9.341933968703134599e-05, -9.321357407117769676e-05, -9.300767272797365467e-05, -9.280163600256064274e-05, -9.259546424028198956e-05, -9.238915778664781467e-05, -9.218271698738751750e-05, -9.197614218841315844e-05, -9.176943373582891850e-05, -9.156259197593834991e-05, -9.135561725520839420e-05, -9.114850992032216923e-05, -9.094127031814396305e-05, -9.073389879572546805e-05, -9.052639570030697361e-05, -9.031876137932491480e-05, -9.011099618037529419e-05, -8.990310045126789188e-05, -8.969507453998819648e-05, -8.948691879470789480e-05, -8.927863356379139056e-05, -8.907021919575975472e-05, -8.886167603933555717e-05, -8.865300444345194702e-05, -8.844420475716869461e-05, -8.823527732976422676e-05, -8.802622251069777454e-05, -8.781704064958160418e-05, -8.760773209622557775e-05, -8.739829720064674836e-05, -8.718873631298589011e-05, -8.697904978359823232e-05, -8.676923796301643399e-05, -8.655930120191358541e-05, -8.634923985120333421e-05, -8.613905426191044521e-05, -8.592874478527192934e-05, -8.571831177269894752e-05, -8.550775557574943452e-05, -8.529707654617275459e-05, -8.508627503591925591e-05, -8.487535139705548607e-05, -8.466430598185690484e-05, -8.445313914277005911e-05, -8.424185123237477131e-05, -8.403044260348578338e-05, -8.381891360902159541e-05, -8.360726460210720734e-05, -8.339549593602634632e-05, -8.318360796423949154e-05, -8.297160104033621004e-05, -8.275947551813857598e-05, -8.254723175156864054e-05, -8.233487009475073991e-05, -8.212239090197438849e-05, -8.190979452765478680e-05, -8.169708132642812288e-05, -8.148425165306372479e-05, -8.127130586247509239e-05, -8.105824430976577260e-05, -8.084506735019036884e-05, -8.063177533916429879e-05, -8.041836863227223766e-05, -8.020484758522964254e-05, -7.999121255393937485e-05, -7.977746389445228964e-05, -7.956360196297734572e-05, -7.934962711587980320e-05, -7.913553970969136077e-05, -7.892134010107041970e-05, -7.870702864685947880e-05, -7.849260570404583207e-05, -7.827807162977032363e-05, -7.806342678132790341e-05, -7.784867151617510812e-05, -7.763380619189239875e-05, -7.741883116624053915e-05, -7.720374679712126652e-05, -7.698855344258727969e-05, -7.677325146085028928e-05, -7.655784121024206774e-05, -7.634232304927263037e-05, -7.612669733658987588e-05, -7.591096443098895117e-05, -7.569512469141208874e-05, -7.547917847695759198e-05, -7.526312614683986879e-05, -7.504696806044795136e-05, -7.483070457730512325e-05, -7.461433605707854162e-05, -7.439786285957908818e-05, -7.418128534476924323e-05, -7.396460387272530117e-05, -7.374781880369355933e-05, -7.353093049805131372e-05, -7.331393931631683379e-05, -7.309684561915661294e-05, -7.287964976734809914e-05, -7.266235212182678991e-05, -7.244495304369365913e-05, -7.222745289413053506e-05, -7.200985203449350436e-05, -7.179215082627515474e-05, -7.157434963107469164e-05, -7.135644881065475041e-05, -7.113844872690294784e-05, -7.092034974184028466e-05, -7.070215221763082210e-05, -7.048385651654205425e-05, -7.026546300099235551e-05, -7.004697203356056220e-05, -6.982838397689846387e-05, -6.960969919382633511e-05, -6.939091804729380939e-05, -6.917204090035068687e-05, -6.895306811619402951e-05, -6.873400005817825763e-05, -6.851483708972593370e-05, -6.829557957442534044e-05, -6.807622787599069069e-05, -6.785678235822224227e-05, -6.763724338511371533e-05, -6.741761132071379906e-05, -6.719788652923440930e-05, -6.697806937500994963e-05, -6.675816022246794303e-05, -6.653815943617714338e-05, -6.631806738085612774e-05, -6.609788442128620783e-05, -6.587761092240717860e-05, -6.565724724927796173e-05, -6.543679376703734395e-05, -6.521625084101031014e-05, -6.499561883657095954e-05, -6.477489811924943522e-05, -6.455408905468199650e-05, -6.433319200863083279e-05, -6.411220734693381083e-05, -6.389113543561145830e-05, -6.366997664073015110e-05, -6.344873132850782302e-05, -6.322739986527589672e-05, -6.300598261743824667e-05, -6.278447995156873670e-05, -6.256289223432310144e-05, -6.234121983244706431e-05, -6.211946311282595331e-05, -6.189762244244375884e-05, -6.167569818839340650e-05, -6.145369071788479376e-05, -6.123160039820585356e-05, -6.100942759678064717e-05, -6.078717268113922341e-05, -6.056483601887709660e-05, -6.034241797775432225e-05, -6.011991892560488495e-05, -5.989733923034713375e-05, -5.967467926003154128e-05, -5.945193938280122527e-05, -5.922911996690119810e-05, -5.900622138067693027e-05, -5.878324399258491459e-05, -5.856018817115175786e-05, -5.833705428503273456e-05, -5.811384270297213219e-05, -5.789055379381224335e-05, -5.766718792650276439e-05, -5.744374547006048348e-05, -5.722022679362828148e-05, -5.699663226643458960e-05, -5.677296225780286256e-05, -5.654921713715117208e-05, -5.632539727400103630e-05, -5.610150303793798196e-05, -5.587753479866910874e-05, -5.565349292598411896e-05, -5.542937778976409966e-05, -5.520518975999046720e-05, -5.498092920670544139e-05, -5.475659650007022643e-05, -5.453219201032532236e-05, -5.430771610779938164e-05, -5.408316916290893808e-05, -5.385855154616745995e-05, -5.363386362814500410e-05, -5.340910577951774366e-05, -5.318427837107670266e-05, -5.295938177363786886e-05, -5.273441635814139154e-05, -5.250938249561064601e-05, -5.228428055712194377e-05, -5.205911091386381803e-05, -5.183387393709653550e-05, -5.160856999816136636e-05, -5.138319946848965766e-05, -5.115776271956309055e-05, -5.093226012296219151e-05, -5.070669205037635450e-05, -5.048105887351236811e-05, -5.025536096419517190e-05, -5.002959869432547759e-05, -4.980377243585122746e-05, -4.957788256082505706e-05, -4.935192944136479638e-05, -4.912591344966277365e-05, -4.889983495798463627e-05, -4.867369433867940677e-05, -4.844749196412839661e-05, -4.822122820685485962e-05, -4.799490343938329646e-05, -4.776851803434893872e-05, -4.754207236445673221e-05, -4.731556680245140614e-05, -4.708900172116615388e-05, -4.686237749353274986e-05, -4.663569449249019202e-05, -4.640895309108441450e-05, -4.618215366242824673e-05, -4.595529657965944124e-05, -4.572838221605160785e-05, -4.550141094487248136e-05, -4.527438313949379869e-05, -4.504729917335048540e-05, -4.482015941990042502e-05, -4.459296425272314180e-05, -4.436571404543028627e-05, -4.413840917167351598e-05, -4.391105000519531757e-05, -4.368363691979770033e-05, -4.345617028930136251e-05, -4.322865048764575638e-05, -4.300107788879808300e-05, -4.277345286676241309e-05, -4.254577579562959420e-05, -4.231804704953646436e-05, -4.209026700267519660e-05, -4.186243602930250107e-05, -4.163455450369927239e-05, -4.140662280022982102e-05, -4.117864129331177302e-05, -4.095061035737402341e-05, -4.072253036695847495e-05, -4.049440169662704068e-05, -4.026622472097221496e-05, -4.003799981466670276e-05, -3.980972735242216577e-05, -3.958140770899864824e-05, -3.935304125921458546e-05, -3.912462837790553634e-05, -3.889616943998365869e-05, -3.866766482039749205e-05, -3.843911489414090918e-05, -3.821052003625302797e-05, -3.798188062182693921e-05, -3.775319702596924558e-05, -3.752446962386005191e-05, -3.729569879071167058e-05, -3.706688490177828451e-05, -3.683802833235537796e-05, -3.660912945778897932e-05, -3.638018865343490871e-05, -3.615120629471865976e-05, -3.592218275709447781e-05, -3.569311841605477209e-05, -3.546401364713931117e-05, -3.523486882589469408e-05, -3.500568432793416438e-05, -3.477646052889661382e-05, -3.454719780445576413e-05, -3.431789653032011960e-05, -3.408855708224202695e-05, -3.385917983597659084e-05, -3.362976516734209103e-05, -3.340031345217858618e-05, -3.317082506635763784e-05, -3.294130038578161918e-05, -3.271173978639304599e-05, -3.248214364413361412e-05, -3.225251233500460310e-05, -3.202284623502520215e-05, -3.179314572024259319e-05, -3.156341116674097014e-05, -3.133364295060058987e-05, -3.110384144794801149e-05, -3.087400703496572538e-05, -3.064414008779943357e-05, -3.041424098265981909e-05, -3.018431009578093630e-05, -2.995434780338922641e-05, -2.972435448176355860e-05, -2.949433050719463341e-05, -2.926427625599381218e-05, -2.903419210449294431e-05, -2.880407842905369814e-05, -2.857393560601620704e-05, -2.834376401181034583e-05, -2.811356402281274484e-05, -2.788333601545785287e-05, -2.765308036619698484e-05, -2.742279745146676133e-05, -2.719248764773979845e-05, -2.696215133153411327e-05, -2.673178887932060410e-05, -2.650140066762468770e-05, -2.627098707298489288e-05, -2.604054847191088836e-05, -2.581008524099616183e-05, -2.557959775677340098e-05, -2.534908639582683374e-05, -2.511855153475068644e-05, -2.488799355010740133e-05, -2.465741281852974133e-05, -2.442680971662783665e-05, -2.419618462099847842e-05, -2.396553790827643535e-05, -2.373486995510252394e-05, -2.350418113808226995e-05, -2.327347183388764714e-05, -2.304274241916434078e-05, -2.281199327054131231e-05, -2.258122476468135705e-05, -2.235043727823980629e-05, -2.211963118787378701e-05, -2.188880687025196954e-05, -2.165796470201320192e-05, -2.142710505982700828e-05, -2.119622832036245879e-05, -2.096533486024646507e-05, -2.073442505616598320e-05, -2.050349928477455553e-05, -2.027255792270243100e-05, -2.004160134660702797e-05, -1.981062993313135507e-05, -1.957964405891360302e-05, -1.934864410059685839e-05, -1.911763043478734487e-05, -1.888660343811557904e-05, -1.865556348719446262e-05, -1.842451095862908766e-05, -1.819344622901611992e-05, -1.796236967495343814e-05, -1.773128167299827700e-05, -1.750018259972859979e-05, -1.726907283170107200e-05, -1.703795274546085302e-05, -1.680682271754101338e-05, -1.657568312447212997e-05, -1.634453434274062212e-05, -1.611337674884966013e-05, -1.588221071927774865e-05, -1.565103663048808479e-05, -1.541985485893843447e-05, -1.518866578103918566e-05, -1.495746977321465158e-05, -1.472626721186124584e-05, -1.449505847335703705e-05, -1.426384393406136250e-05, -1.403262397032428110e-05, -1.380139895844501453e-05, -1.357016927473287264e-05, -1.333893529546565394e-05, -1.310769739689921882e-05, -1.287645595526686946e-05, -1.264521134678919070e-05, -1.241396394763200839e-05, -1.218271413396780436e-05, -1.195146228193377136e-05, -1.172020876764151159e-05, -1.148895396718676062e-05, -1.125769825660760325e-05, -1.102644201193527688e-05, -1.079518560920392932e-05, -1.056392942435734350e-05, -1.033267383335123029e-05, -1.010141921211145788e-05, -9.870165936502574354e-06, -9.638914382389036329e-06, -9.407664925593187629e-06, -9.176417941905266144e-06, -8.945173807092819446e-06, -8.713932896859103610e-06, -8.482695586893747647e-06, -8.251462252882729855e-06, -8.020233270414804398e-06, -7.789009015084044803e-06, -7.557789862448009858e-06, -7.326576187985902718e-06, -7.095368367200995829e-06, -6.864166775527277728e-06, -6.632971788339217641e-06, -6.401783781002601859e-06, -6.170603128843031739e-06, -5.939430207104137020e-06, -5.708265391060254930e-06, -5.477109055871603640e-06, -5.245961576697051151e-06, -5.014823328652221044e-06, -4.783694686767682935e-06, -4.552576026091451927e-06, -4.321467721595566813e-06, -4.090370148185837725e-06, -3.859283680752729944e-06, -3.628208694139879268e-06, -3.397145563102223590e-06, -3.166094662418778986e-06, -2.935056366747761081e-06, -2.704031050739339112e-06, -2.473019088983484528e-06, -2.242020856019686888e-06, -2.011036726336338065e-06, -1.780067074380458088e-06, -1.549112274515845576e-06, -1.318172701084291751e-06, -1.087248728374088385e-06, -8.563407305782067175e-07, -6.254490818966944166e-07, -3.945741564433784501e-07, -1.637163282555605674e-07, 6.712402865509826758e-08, 2.979465403443693312e-07, 5.287508329257658976e-07, 7.595365325608508522e-07, 9.903032655010207878e-07, 1.221050658026342933e-06, 1.451778336477029891e-06, 1.682485927295234467e-06, 1.913173056922713481e-06, 2.143839351894065127e-06, 2.374484438827033199e-06, 2.605107944371659706e-06, 2.835709495252055876e-06, 3.066288718256686265e-06, 3.296845240239019280e-06, 3.527378688107800272e-06, 3.757888688868819158e-06, 3.988374869563777512e-06, 4.218836857312055757e-06, 4.449274279301023956e-06, 4.679686762776342441e-06, 4.910073935083724767e-06, 5.140435423607805655e-06, 5.370770855813906489e-06, 5.601079859238324085e-06, 5.831362061488935473e-06, 6.061617090235577297e-06, 6.291844573251657151e-06, 6.522044138353149427e-06, 6.752215413440320997e-06, 6.982358026488044551e-06, 7.212471605536006892e-06, 7.442555778730655701e-06, 7.672610174263859957e-06, 7.902634420414822816e-06, 8.132628145540315322e-06, 8.362590978075335404e-06, 8.592522546523307696e-06, 8.822422479497928665e-06, 9.052290405672271790e-06, 9.282125953769212694e-06, 9.511928752654406267e-06, 9.741698431234198859e-06, 9.971434618497326021e-06, 1.020113694354626119e-05, 1.043080503553624797e-05, 1.066043852371696396e-05, 1.089003703742286459e-05, 1.111960020606344057e-05, 1.134912765916496810e-05, 1.157861902631970218e-05, 1.180807393717630681e-05, 1.203749202153268813e-05, 1.226687290923407937e-05, 1.249621623021464546e-05, 1.272552161453909943e-05, 1.295478869229042991e-05, 1.318401709371418299e-05, 1.341320644910621683e-05, 1.364235638886445706e-05, 1.387146654346913381e-05, 1.410053654353453034e-05, 1.432956601969692565e-05, 1.455855460275853759e-05, 1.478750192357552984e-05, 1.501640761309950637e-05, 1.524527130241904313e-05, 1.547409262265801873e-05, 1.570287120506826120e-05, 1.593160668101979691e-05, 1.616029868195046739e-05, 1.638894683939710523e-05, 1.661755078503704205e-05, 1.684611015057631034e-05, 1.707462456789320539e-05, 1.730309366892661242e-05, 1.753151708572748930e-05, 1.775989445044944752e-05, 1.798822539534927732e-05, 1.821650955277718314e-05, 1.844474655521848472e-05, 1.867293603523268158e-05, 1.890107762548481351e-05, 1.912917095878693136e-05, 1.935721566799649372e-05, 1.958521138610881210e-05, 1.981315774624745911e-05, 2.004105438161395814e-05, 2.026890092552906429e-05, 2.049669701142315230e-05, 2.072444227282653324e-05, 2.095213634341105399e-05, 2.117977885692933450e-05, 2.140736944725611993e-05, 2.163490774837875660e-05, 2.186239339439780189e-05, 2.208982601951734430e-05, 2.231720525808627770e-05, 2.254453074453801969e-05, 2.277180211343152831e-05, 2.299901899944194065e-05, 2.322618103736109798e-05, 2.345328786208767278e-05, 2.368033910866914425e-05, 2.390733441224057821e-05, 2.413427340806627736e-05, 2.436115573153018951e-05, 2.458798101812621412e-05, 2.481474890349965608e-05, 2.504145902338653415e-05, 2.526811101365501776e-05, 2.549470451029587251e-05, 2.572123914942276847e-05, 2.594771456726304077e-05, 2.617413040019872663e-05, 2.640048628470617869e-05, 2.662678185739755270e-05, 2.685301675501071425e-05, 2.707919061440020603e-05, 2.730530307257796640e-05, 2.753135376665349159e-05, 2.775734233387451357e-05, 2.798326841161785896e-05, 2.820913163738977421e-05, 2.843493164881642868e-05, 2.866066808368510760e-05, 2.888634057989388130e-05, 2.911194877544258605e-05, 2.933749230852382588e-05, 2.956297081742296847e-05, 2.978838394055867739e-05, 3.001373131651423199e-05, 3.023901258397739480e-05, 3.046422738178109965e-05, 3.068937534889419529e-05, 3.091445612441182306e-05, 3.113946934759648786e-05, 3.136441465782824920e-05, 3.158929169459457714e-05, 3.181410009758280766e-05, 3.203883950657879004e-05, 3.226350956150847958e-05, 3.248810990247869685e-05, 3.271264016966626121e-05, 3.293710000346074636e-05, 3.316148904435328867e-05, 3.338580693298785632e-05, 3.361005331014190313e-05, 3.383422781677670939e-05, 3.405833009392793167e-05, 3.428235978284644065e-05, 3.450631652488866089e-05, 3.473019996155714707e-05, 3.495400973454139063e-05, 3.517774548561793091e-05, 3.540140685674154333e-05, 3.562499349003537988e-05, 3.584850502774152952e-05, 3.607194111225167405e-05, 3.629530138614817249e-05, 3.651858549209333028e-05, 3.674179307297141610e-05, 3.696492377177854765e-05, 3.718797723166300366e-05, 3.741095309596629474e-05, 3.763385100812359306e-05, 3.785667061175410054e-05, 3.807941155065196187e-05, 3.830207346873626932e-05, 3.852465601008245706e-05, 3.874715881896213213e-05, 3.896958153974393086e-05, 3.919192381698411077e-05, 3.941418529541706382e-05, 3.963636561990593096e-05, 3.985846443548296834e-05, 4.008048138734059590e-05, 4.030241612082139556e-05, 4.052426828145883661e-05, 4.074603751491808498e-05, 4.096772346703650506e-05, 4.118932578381391535e-05, 4.141084411141331356e-05, 4.163227809615180998e-05, 4.185362738454060738e-05, 4.207489162322586464e-05, 4.229607045902932715e-05, 4.251716353893848094e-05, 4.273817051009777741e-05, 4.295909101984858618e-05, 4.317992471567009931e-05, 4.340067124521979910e-05, 4.362133025632399170e-05, 4.384190139697835597e-05, 4.406238431533865998e-05, 4.428277865976091719e-05, 4.450308407874246680e-05, 4.472330022096217733e-05, 4.494342673527108184e-05, 4.516346327069321138e-05, 4.538340947641576268e-05, 4.560326500182949818e-05, 4.582302949647009072e-05, 4.604270261005788666e-05, 4.626228399248887311e-05, 4.648177329382532669e-05, 4.670117016433553598e-05, 4.692047425443597288e-05, 4.713968521472997156e-05, 4.735880269599958335e-05, 4.757782634920580716e-05, 4.779675582547914333e-05, 4.801559077615938392e-05, 4.823433085273762136e-05, 4.845297570689577446e-05, 4.867152499049729814e-05, 4.888997835558800333e-05, 4.910833545438661089e-05, 4.932659593933429962e-05, 4.954475946298728898e-05, 4.976282567815509513e-05, 4.998079423779278161e-05, 5.019866479504129164e-05, 5.041643700325647764e-05, 5.063411051596149122e-05, 5.085168498683711341e-05, 5.106916006981076768e-05, 5.128653541895871815e-05, 5.150381068854628669e-05, 5.172098553306689773e-05, 5.193805960713602978e-05, 5.215503256562712694e-05, 5.237190406356649901e-05, 5.258867375617126862e-05, 5.280534129888016253e-05, 5.302190634730489198e-05, 5.323836855722138416e-05, 5.345472758465762971e-05, 5.367098308579667376e-05, 5.388713471701662972e-05, 5.410318213492970379e-05, 5.431912499628563325e-05, 5.453496295805989301e-05, 5.475069567744447318e-05, 5.496632281179927290e-05, 5.518184401868279681e-05, 5.539725895589034610e-05, 5.561256728134910836e-05, 5.582776865325363543e-05, 5.604286272995942221e-05, 5.625784917002325249e-05, 5.647272763224195921e-05, 5.668749777555600499e-05, 5.690215925913724151e-05, 5.711671174237977513e-05, 5.733115488485209259e-05, 5.754548834632708658e-05, 5.775971178681994192e-05, 5.797382486648445865e-05, 5.818782724574667319e-05, 5.840171858520095793e-05, 5.861549854565710265e-05, 5.882916678813279970e-05, 5.904272297385346777e-05, 5.925616676424281257e-05, 5.946949782096247478e-05, 5.968271580585458760e-05, 5.989582038098088264e-05, 6.010881120861322343e-05, 6.032168795123450666e-05, 6.053445027152990052e-05, 6.074709783242492045e-05, 6.095963029702884065e-05, 6.117204732867422673e-05, 6.138434859090651386e-05, 6.159653374747609206e-05, 6.180860246237691738e-05, 6.202055439978871037e-05, 6.223238922411747809e-05, 6.244410659998483480e-05, 6.265570619222942490e-05, 6.286718766589753106e-05, 6.307855068628209197e-05, 6.328979491886574100e-05, 6.350092002935945809e-05, 6.371192568369365213e-05, 6.392281154801901478e-05, 6.413357728869669490e-05, 6.434422257233789904e-05, 6.455474706574661843e-05, 6.476515043595849766e-05, 6.497543235023111750e-05, 6.518559247603701535e-05, 6.539563048109949103e-05, 6.560554603333831533e-05, 6.581533880090739252e-05, 6.602500845218542262e-05, 6.623455465577729733e-05, 6.644397708050430156e-05, 6.665327539544290076e-05, 6.686244926986897224e-05, 6.707149837329519663e-05, 6.728042237546242492e-05, 6.748922094634097948e-05, 6.769789375612070650e-05, 6.790644047525892487e-05, 6.811486077437796903e-05, 6.832315432439601155e-05, 6.853132079642640850e-05, 6.873935986181315284e-05, 6.894727119216167933e-05, 6.915505445929145782e-05, 6.936270933522731958e-05, 6.957023549228435035e-05, 6.977763260297473028e-05, 6.998490034004555905e-05, 7.019203837651688419e-05, 7.039904638557993523e-05, 7.060592404072734991e-05, 7.081267101565167927e-05, 7.101928698428317216e-05, 7.122577162081827613e-05, 7.143212459967326075e-05, 7.163834559547524580e-05, 7.184443428314786679e-05, 7.205039033781692229e-05, 7.225621343484939165e-05, 7.246190324988997257e-05, 7.266745945876968294e-05, 7.287288173759023881e-05, 7.307816976271345631e-05, 7.328332321071742283e-05, 7.348834175842348005e-05, 7.369322508293472669e-05, 7.389797286153396800e-05, 7.410258477181388775e-05, 7.430706049157609545e-05, 7.451139969886849072e-05, 7.471560207202274952e-05, 7.491966728956228898e-05, 7.512359503028583226e-05, 7.532738497325956164e-05, 7.553103679777007772e-05, 7.573455018336219737e-05, 7.593792480983167607e-05, 7.614116035721455562e-05, 7.634425650582507051e-05, 7.654721293620181735e-05, 7.675002932914408915e-05, 7.695270536570343210e-05, 7.715524072718409282e-05, 7.735763509513475132e-05, 7.755988815138516700e-05, 7.776199957799154845e-05, 7.796396905727532721e-05, 7.816579627181139420e-05, 7.836748090443201636e-05, 7.856902263821558810e-05, 7.877042115652505266e-05, 7.897167614295357008e-05, 7.917278728136049914e-05, 7.937375425586361819e-05, 7.957457675083106144e-05, 7.977525445091675877e-05, 7.997578704100722854e-05, 8.017617420625838625e-05, 8.037641563208700643e-05, 8.057651100417107502e-05, 8.077646000844085827e-05, 8.097626233111641610e-05, 8.117591765865299900e-05, 8.137542567777850718e-05, 8.157478607548407162e-05, 8.177399853902516530e-05, 8.197306275591291610e-05, 8.217197841395075281e-05, 8.237074520118031697e-05, 8.256936280591854261e-05, 8.276783091674919947e-05, 8.296614922251405676e-05, 8.316431741234895996e-05, 8.336233517563126059e-05, 8.356020220201587948e-05, 8.375791818142663315e-05, 8.395548280405677592e-05, 8.415289576036075994e-05, 8.435015674109023077e-05, 8.454726543724091494e-05, 8.474422154008913054e-05, 8.494102474118274762e-05, 8.513767473233311092e-05, 8.533417120565195695e-05, 8.553051385350576906e-05, 8.572670236850828292e-05, 8.592273644360083943e-05, 8.611861577196482185e-05, 8.631434004705557778e-05, 8.650990896263189591e-05, 8.670532221271045595e-05, 8.690057949155859161e-05, 8.709568049377316632e-05, 8.729062491419424356e-05, 8.748541244793918512e-05, 8.768004279043952744e-05, 8.787451563734450122e-05, 8.806883068464416966e-05, 8.826298762857377473e-05, 8.845698616564820125e-05, 8.865082599269093861e-05, 8.884450680678820554e-05, 8.903802830528258032e-05, 8.923139018585123962e-05, 8.942459214641892409e-05, 8.961763388519461155e-05, 8.981051510070516789e-05, 9.000323549170099438e-05, 9.019579475727782425e-05, 9.038819259678250548e-05, 9.058042870985558289e-05, 9.077250279641504863e-05, 9.096441455670110617e-05, 9.115616369117887673e-05, 9.134774990066304187e-05, 9.153917288622054988e-05, 9.173043234920742446e-05, 9.192152799130322879e-05, 9.211245951442464106e-05, 9.230322662080423532e-05, 9.249382901298237706e-05, 9.268426639376430238e-05, 9.287453846625450069e-05, 9.306464493385012827e-05, 9.325458550023116907e-05, 9.344435986939615918e-05, 9.363396774561106673e-05, 9.382340883343486546e-05, 9.401268283775589621e-05, 9.420178946370431753e-05, 9.439072841673179460e-05, 9.457949940260172782e-05, 9.476810212734843258e-05, 9.495653629731020751e-05, 9.514480161912292403e-05, 9.533289779971896932e-05, 9.552082454631977886e-05, 9.570858156647127628e-05, 9.589616856799158774e-05, 9.608358525900622424e-05, 9.627083134794056001e-05, 9.645790654351183650e-05, 9.664481055476189175e-05, 9.683154309100873718e-05, 9.701810386187988328e-05, 9.720449257730464179e-05, 9.739070894751419339e-05, 9.757675268303437786e-05, 9.776262349471876215e-05, 9.794832109369905175e-05, 9.813384519142017814e-05, 9.831919549963062232e-05, 9.850437173037578759e-05, 9.868937359603087802e-05, 9.887420080925247523e-05, 9.905885308301105093e-05, 9.924333013058351301e-05, 9.942763166555492675e-05, 9.961175740180824194e-05, 9.979570705355989544e-05, 9.997948033531821842e-05, 1.001630769618749118e-04, 1.003464966483809677e-04, 1.005297391102639309e-04, 1.007128040632615230e-04, 1.008956912234468907e-04, 1.010784003071790439e-04, 1.012609310311367376e-04, 1.014432831123113698e-04, 1.016254562679972377e-04, 1.018074502158266924e-04, 1.019892646737289671e-04, 1.021708993599217737e-04, 1.023523539929869402e-04, 1.025336282917866824e-04, 1.027147219754995732e-04, 1.028956347636430390e-04, 1.030763663760261433e-04, 1.032569165327824781e-04, 1.034372849543618432e-04, 1.036174713615317910e-04, 1.037974754753681123e-04, 1.039772970172983947e-04, 1.041569357090109491e-04, 1.043363912725695186e-04, 1.045156634303252954e-04, 1.046947519049482408e-04, 1.048736564194537968e-04, 1.050523766971608874e-04, 1.052309124616850880e-04, 1.054092634370125539e-04, 1.055874293474177436e-04, 1.057654099174981535e-04, 1.059432048722062209e-04, 1.061208139367604867e-04, 1.062982368367595455e-04, 1.064754732980941030e-04, 1.066525230469861699e-04, 1.068293858099757129e-04, 1.070060613139592792e-04, 1.071825492861025150e-04, 1.073588494539534508e-04, 1.075349615453549527e-04, 1.077108852884767735e-04, 1.078866204118462090e-04, 1.080621666442724879e-04, 1.082375237149152939e-04, 1.084126913532796834e-04, 1.085876692891748720e-04, 1.087624572527481703e-04, 1.089370549744761880e-04, 1.091114621851578548e-04, 1.092856786159459025e-04, 1.094597039983012746e-04, 1.096335380640154743e-04, 1.098071805452436461e-04, 1.099806311744258900e-04, 1.101538896843584392e-04, 1.103269558081862878e-04, 1.104998292793646066e-04, 1.106725098316894799e-04, 1.108449971992916044e-04, 1.110172911166369388e-04, 1.111893913185172040e-04, 1.113612975400848622e-04, 1.115330095168035686e-04, 1.117045269844809416e-04, 1.118758496792624099e-04, 1.120469773376214410e-04, 1.122179096963930975e-04, 1.123886464927263592e-04, 1.125591874641170150e-04, 1.127295323483993417e-04, 1.128996808837460093e-04, 1.130696328086620498e-04, 1.132393878620153912e-04, 1.134089457829910637e-04, 1.135783063111231022e-04, 1.137474691862852490e-04, 1.139164341486863463e-04, 1.140852009388993387e-04, 1.142537692978168068e-04, 1.144221389666815966e-04, 1.145903096870796496e-04, 1.147582812009401116e-04, 1.149260532505281906e-04, 1.150936255784768556e-04, 1.152609979277481313e-04, 1.154281700416257521e-04, 1.155951416637853509e-04, 1.157619125382175891e-04, 1.159284824092587853e-04, 1.160948510216153369e-04, 1.162610181203174248e-04, 1.164269834507505771e-04, 1.165927467586477275e-04, 1.167583077900826420e-04, 1.169236662914992063e-04, 1.170888220096770157e-04, 1.172537746917206550e-04, 1.174185240851302668e-04, 1.175830699377260771e-04, 1.177474119976784959e-04, 1.179115500135314947e-04, 1.180754837341567453e-04, 1.182392129087867693e-04, 1.184027372870048543e-04, 1.185660566187463831e-04, 1.187291706542928832e-04, 1.188920791443084430e-04, 1.190547818397583559e-04, 1.192172784920139623e-04, 1.193795688527711588e-04, 1.195416526740801592e-04, 1.197035297083686963e-04, 1.198651997084052679e-04, 1.200266624272915063e-04, 1.201879176185296567e-04, 1.203489650359484308e-04, 1.205098044337341918e-04, 1.206704355664599157e-04, 1.208308581890042016e-04, 1.209910720566549890e-04, 1.211510769250298693e-04, 1.213108725501046406e-04, 1.214704586882435841e-04, 1.216298350961264298e-04, 1.217890015308151160e-04, 1.219479577497457662e-04, 1.221067035106932223e-04, 1.222652385717940839e-04, 1.224235626915741383e-04, 1.225816756288779826e-04, 1.227395771429338046e-04, 1.228972669933465524e-04, 1.230547449400628331e-04, 1.232120107433983707e-04, 1.233690641640335334e-04, 1.235259049630045515e-04, 1.236825329017339839e-04, 1.238389477419870243e-04, 1.239951492458935651e-04, 1.241511371759781480e-04, 1.243069112950869978e-04, 1.244624713664548900e-04, 1.246178171536964775e-04, 1.247729484207719486e-04, 1.249278649320155682e-04, 1.250825664521287395e-04, 1.252370527461744466e-04, 1.253913235796041167e-04, 1.255453787182165550e-04, 1.256992179281866495e-04, 1.258528409760589740e-04, 1.260062476287466225e-04, 1.261594376535260054e-04, 1.263124108180650382e-04, 1.264651668903806413e-04, 1.266177056388681759e-04, 1.267700268322938814e-04, 1.269221302397962041e-04, 1.270740156308775026e-04, 1.272256827754350561e-04, 1.273771314437157720e-04, 1.275283614063481427e-04, 1.276793724343336259e-04, 1.278301642990399502e-04, 1.279807367722299544e-04, 1.281310896260208488e-04, 1.282812226329098023e-04, 1.284311355657704462e-04, 1.285808281978513827e-04, 1.287303003027701683e-04, 1.288795516545405539e-04, 1.290285820275325593e-04, 1.291773911965002559e-04, 1.293259789365734994e-04, 1.294743450232608846e-04, 1.296224892324412611e-04, 1.297704113403928990e-04, 1.299181111237499844e-04, 1.300655883595346583e-04, 1.302128428251471501e-04, 1.303598742983598957e-04, 1.305066825573462149e-04, 1.306532673806455353e-04, 1.307996285471578902e-04, 1.309457658362034142e-04, 1.310916790274582397e-04, 1.312373679009779697e-04, 1.313828322372214493e-04, 1.315280718170092674e-04, 1.316730864215506455e-04, 1.318178758324376094e-04, 1.319624398316456134e-04, 1.321067782015268447e-04, 1.322508907248428039e-04, 1.323947771846939133e-04, 1.325384373646109964e-04, 1.326818710484820940e-04, 1.328250780205814672e-04, 1.329680580655880550e-04, 1.331108109685527868e-04, 1.332533365148932958e-04, 1.333956344904532797e-04, 1.335377046814357951e-04, 1.336795468744315821e-04, 1.338211608564443805e-04, 1.339625464148204838e-04, 1.341037033373386196e-04, 1.342446314121398829e-04, 1.343853304277548683e-04, 1.345258001731276039e-04, 1.346660404375535347e-04, 1.348060510107357930e-04, 1.349458316827811864e-04, 1.350853822441664797e-04, 1.352247024857597532e-04, 1.353637921988436318e-04, 1.355026511750493658e-04, 1.356412792064420490e-04, 1.357796760854546991e-04, 1.359178416049165554e-04, 1.360557755580512360e-04, 1.361934777384728613e-04, 1.363309479401836690e-04, 1.364681859575971620e-04, 1.366051915855017872e-04, 1.367419646190788792e-04, 1.368785048539305788e-04, 1.370148120860138318e-04, 1.371508861117001017e-04, 1.372867267277682137e-04, 1.374223337313734553e-04, 1.375577069200727023e-04, 1.376928460918188084e-04, 1.378277510449548587e-04, 1.379624215782388353e-04, 1.380968574908061854e-04, 1.382310585821962755e-04, 1.383650246523459681e-04, 1.384987555015891332e-04, 1.386322509306519863e-04, 1.387655107406768058e-04, 1.388985347331869399e-04, 1.390313227101094666e-04, 1.391638744737711008e-04, 1.392961898268977878e-04, 1.394282685726096346e-04, 1.395601105144444098e-04, 1.396917154563218468e-04, 1.398230832025686068e-04, 1.399542135579121536e-04, 1.400851063274747633e-04, 1.402157613167979999e-04, 1.403461783318074520e-04, 1.404763571788369102e-04, 1.406062976646223499e-04, 1.407359995963016332e-04, 1.408654627814096298e-04, 1.409946870279032082e-04, 1.411236721441233154e-04, 1.412524179388216213e-04, 1.413809242211525497e-04, 1.415091908006763685e-04, 1.416372174873509768e-04, 1.417650040915560824e-04, 1.418925504240604321e-04, 1.420198562960424654e-04, 1.421469215190872791e-04, 1.422737459051790377e-04, 1.424003292667263437e-04, 1.425266714165323678e-04, 1.426527721677897263e-04, 1.427786313341323327e-04, 1.429042487295786943e-04, 1.430296241685541380e-04, 1.431547574659097028e-04, 1.432796484368874994e-04, 1.434042968971431531e-04, 1.435287026627404643e-04, 1.436528655501473426e-04, 1.437767853762575725e-04, 1.439004619583628673e-04, 1.440238951141471508e-04, 1.441470846617391136e-04, 1.442700304196546960e-04, 1.443927322068201821e-04, 1.445151898425896275e-04, 1.446374031467164269e-04, 1.447593719393485702e-04, 1.448810960410795191e-04, 1.450025752728917197e-04, 1.451238094561801842e-04, 1.452447984127737683e-04, 1.453655419648751878e-04, 1.454860399351391080e-04, 1.456062921466108053e-04, 1.457262984227486371e-04, 1.458460585874469726e-04, 1.459655724649811426e-04, 1.460848398800570689e-04, 1.462038606578050569e-04, 1.463226346237541818e-04, 1.464411616038489307e-04, 1.465594414244696672e-04, 1.466774739123742198e-04, 1.467952588947745080e-04, 1.469127961992766672e-04, 1.470300856539072864e-04, 1.471471270871105080e-04, 1.472639203277460761e-04, 1.473804652050860842e-04, 1.474967615488350053e-04, 1.476128091890986844e-04, 1.477286079564013599e-04, 1.478441576817055047e-04, 1.479594581963592967e-04, 1.480745093321463566e-04, 1.481893109212788901e-04, 1.483038627963717754e-04, 1.484181647904644647e-04, 1.485322167370151558e-04, 1.486460184698969438e-04, 1.487595698234185832e-04, 1.488728706322920705e-04, 1.489859207316500183e-04, 1.490987199570667705e-04, 1.492112681445056553e-04, 1.493235651303663925e-04, 1.494356107514805397e-04, 1.495474048450855795e-04, 1.496589472488453574e-04, 1.497702378008457442e-04, 1.498812763395949077e-04, 1.499920627040171866e-04, 1.501025967334763738e-04, 1.502128782677423504e-04, 1.503229071470140973e-04, 1.504326832119128380e-04, 1.505422063034786233e-04, 1.506514762631905790e-04, 1.507604929329361141e-04, 1.508692561550318461e-04, 1.509777657722192101e-04, 1.510860216276635915e-04, 1.511940235649500701e-04, 1.513017714281044812e-04, 1.514092650615628678e-04, 1.515165043101902647e-04, 1.516234890192789096e-04, 1.517302190345411954e-04, 1.518366942021313816e-04, 1.519429143686140443e-04, 1.520488793809853531e-04, 1.521545890866693039e-04, 1.522600433335154419e-04, 1.523652419697967746e-04, 1.524701848442277152e-04, 1.525748718059407726e-04, 1.526793027044808860e-04, 1.527834773898515579e-04, 1.528873957124645745e-04, 1.529910575231595478e-04, 1.530944626732201250e-04, 1.531976110143433054e-04, 1.533005023986610160e-04, 1.534031366787339857e-04, 1.535055137075476796e-04, 1.536076333385319231e-04, 1.537094954255361278e-04, 1.538110998228265540e-04, 1.539124463851269681e-04, 1.540135349675740822e-04, 1.541143654257341148e-04, 1.542149376156241500e-04, 1.543152513936589304e-04, 1.544153066167170199e-04, 1.545151031420907142e-04, 1.546146408275070739e-04, 1.547139195311226395e-04, 1.548129391115421060e-04, 1.549116994277726788e-04, 1.550102003392844091e-04, 1.551084417059625704e-04, 1.552064233881247620e-04, 1.553041452465407765e-04, 1.554016071423856274e-04, 1.554988089372810734e-04, 1.555957504932930710e-04, 1.556924316729067293e-04, 1.557888523390412990e-04, 1.558850123550680074e-04, 1.559809115847621914e-04, 1.560765498923641478e-04, 1.561719271425314828e-04, 1.562670432003607419e-04, 1.563618979313844283e-04, 1.564564912015702438e-04, 1.565508228773161291e-04, 1.566448928254703208e-04, 1.567387009133027560e-04, 1.568322470085198447e-04, 1.569255309792811390e-04, 1.570185526941578896e-04, 1.571113120221698820e-04, 1.572038088327828336e-04, 1.572960429958862496e-04, 1.573880143818110139e-04, 1.574797228613254588e-04, 1.575711683056314077e-04, 1.576623505863807093e-04, 1.577532695756510056e-04, 1.578439251459619406e-04, 1.579343171702709593e-04, 1.580244455219742561e-04, 1.581143100749022212e-04, 1.582039107033370322e-04, 1.582932472819867408e-04, 1.583823196860027294e-04, 1.584711277909752922e-04, 1.585596714729352623e-04, 1.586479506083476410e-04, 1.587359650741300844e-04, 1.588237147476283186e-04, 1.589111995066311831e-04, 1.589984192293690589e-04, 1.590853737945069292e-04, 1.591720630811643291e-04, 1.592584869688885927e-04, 1.593446453376713061e-04, 1.594305380679469518e-04, 1.595161650405889787e-04, 1.596015261369096124e-04, 1.596866212386746273e-04, 1.597714502280791148e-04, 1.598560129877641528e-04, 1.599403094008124148e-04, 1.600243393507453781e-04, 1.601081027215385565e-04, 1.601915993975975942e-04, 1.602748292637755313e-04, 1.603577922053676269e-04, 1.604404881081127141e-04, 1.605229168581873188e-04, 1.606050783422251205e-04, 1.606869724472928561e-04, 1.607685990608912960e-04, 1.608499580709870649e-04, 1.609310493659757793e-04, 1.610118728346963859e-04, 1.610924283664434404e-04, 1.611727158509453420e-04, 1.612527351783782110e-04, 1.613324862393613625e-04, 1.614119689249569000e-04, 1.614911831266823458e-04, 1.615701287364929690e-04, 1.616488056467773400e-04, 1.617272137503925945e-04, 1.618053529406252120e-04, 1.618832231112082279e-04, 1.619608241563342979e-04, 1.620381559706176157e-04, 1.621152184491426746e-04, 1.621920114874260226e-04, 1.622685349814331757e-04, 1.623447888275739561e-04, 1.624207729227173996e-04, 1.624964871641559774e-04, 1.625719314496515660e-04, 1.626471056774017013e-04, 1.627220097460480898e-04, 1.627966435546960157e-04, 1.628710070028743340e-04, 1.629450999905727125e-04, 1.630189224182335551e-04, 1.630924741867370933e-04, 1.631657551974108734e-04, 1.632387653520455046e-04, 1.633115045528537299e-04, 1.633839727025218993e-04, 1.634561697041704770e-04, 1.635280954613675133e-04, 1.635997498781452592e-04, 1.636711328589620848e-04, 1.637422443087374168e-04, 1.638130841328442309e-04, 1.638836522370962310e-04, 1.639539485277547338e-04, 1.640239729115449047e-04, 1.640937252956207657e-04, 1.641632055875957418e-04, 1.642324136955396804e-04, 1.643013495279627232e-04, 1.643700129938272328e-04, 1.644384040025458407e-04, 1.645065224639784664e-04, 1.645743682884441615e-04, 1.646419413867028958e-04, 1.647092416699694076e-04, 1.647762690499068069e-04, 1.648430234386305873e-04, 1.649095047487026083e-04, 1.649757128931460845e-04, 1.650416477854249045e-04, 1.651073093394582133e-04, 1.651726974696143954e-04, 1.652378120907119143e-04, 1.653026531180292065e-04, 1.653672204672866836e-04, 1.654315140546596882e-04, 1.654955337967750249e-04, 1.655592796107116104e-04, 1.656227514139964893e-04, 1.656859491246188477e-04, 1.657488726610095481e-04, 1.658115219420564987e-04, 1.658738968870977412e-04, 1.659359974159248664e-04, 1.659978234487794358e-04, 1.660593749063631194e-04, 1.661206517098224352e-04, 1.661816537807586430e-04, 1.662423810412267408e-04, 1.663028334137314269e-04, 1.663630108212392966e-04, 1.664229131871608448e-04, 1.664825404353629341e-04, 1.665418924901656780e-04, 1.666009692763431723e-04, 1.666597707191185083e-04, 1.667182967441791950e-04, 1.667765472776560178e-04, 1.668345222461363464e-04, 1.668922215766626175e-04, 1.669496451967297595e-04, 1.670067930342853551e-04, 1.670636650177407547e-04, 1.671202610759429409e-04, 1.671765811382123405e-04, 1.672326251343115720e-04, 1.672883929944591339e-04, 1.673438846493359910e-04, 1.673991000300705857e-04, 1.674540390682401926e-04, 1.675087016958907874e-04, 1.675630878455139795e-04, 1.676171974500554696e-04, 1.676710304429262436e-04, 1.677245867579747632e-04, 1.677778663295209551e-04, 1.678308690923326573e-04, 1.678835949816295759e-04, 1.679360439330960522e-04, 1.679882158828667775e-04, 1.680401107675237582e-04, 1.680917285241196799e-04, 1.681430690901522659e-04, 1.681941324035760954e-04, 1.682449184028109786e-04, 1.682954270267155296e-04, 1.683456582146147860e-04, 1.683956119062925388e-04, 1.684452880419821973e-04, 1.684946865623715602e-04, 1.685438074086158798e-04, 1.685926505223088055e-04, 1.686412158455175665e-04, 1.686895033207551613e-04, 1.687375128909917969e-04, 1.687852444996622606e-04, 1.688326980906450225e-04, 1.688798736082810191e-04, 1.689267709973731925e-04, 1.689733902031733987e-04, 1.690197311713907019e-04, 1.690657938481990449e-04, 1.691115781802140204e-04, 1.691570841145236892e-04, 1.692023115986639149e-04, 1.692472605806290156e-04, 1.692919310088715208e-04, 1.693363228323001106e-04, 1.693804360002782610e-04, 1.694242704626333510e-04, 1.694678261696429473e-04, 1.695111030720444539e-04, 1.695541011210323205e-04, 1.695968202682575539e-04, 1.696392604658279897e-04, 1.696814216663133066e-04, 1.697233038227354040e-04, 1.697649068885756388e-04, 1.698062308177714650e-04, 1.698472755647178155e-04, 1.698880410842717645e-04, 1.699285273317429593e-04, 1.699687342628998542e-04, 1.700086618339688980e-04, 1.700483100016335033e-04, 1.700876787230347245e-04, 1.701267679557751610e-04, 1.701655776579102291e-04, 1.702041077879554534e-04, 1.702423583048837021e-04, 1.702803291681257293e-04, 1.703180203375688191e-04, 1.703554317735630206e-04, 1.703925634369115791e-04, 1.704294152888769268e-04, 1.704659872911802761e-04, 1.705022794059978246e-04, 1.705382915959711911e-04, 1.705740238241928595e-04, 1.706094760542156664e-04, 1.706446482500518786e-04, 1.706795403761704293e-04, 1.707141523974968088e-04, 1.707484842794213323e-04, 1.707825359877858580e-04, 1.708163074888934365e-04, 1.708497987495040556e-04, 1.708830097368369168e-04, 1.709159404185677249e-04, 1.709485907628372804e-04, 1.709809607382329667e-04, 1.710130503138116266e-04, 1.710448594590834352e-04, 1.710763881440149350e-04, 1.711076363390373308e-04, 1.711386040150368669e-04, 1.711692911433526317e-04, 1.711996976957933631e-04, 1.712298236446179052e-04, 1.712596689625446686e-04, 1.712892336227568070e-04, 1.713185175988851683e-04, 1.713475208650293551e-04, 1.713762433957416518e-04, 1.714046851660322283e-04, 1.714328461513762959e-04, 1.714607263277024521e-04, 1.714883256713940090e-04, 1.715156441593016510e-04, 1.715426817687290420e-04, 1.715694384774382199e-04, 1.715959142636555048e-04, 1.716221091060568895e-04, 1.716480229837810776e-04, 1.716736558764293472e-04, 1.716990077640554683e-04, 1.717240786271730752e-04, 1.717488684467588652e-04, 1.717733772042400755e-04, 1.717976048815096082e-04, 1.718215514609155949e-04, 1.718452169252633751e-04, 1.718686012578227336e-04, 1.718917044423134261e-04, 1.719145264629185421e-04, 1.719370673042812793e-04, 1.719593269514996855e-04, 1.719813053901319980e-04, 1.720030026061942314e-04, 1.720244185861600692e-04, 1.720455533169648751e-04, 1.720664067859992965e-04, 1.720869789811125714e-04, 1.721072698906131785e-04, 1.721272795032684037e-04, 1.721470078083009252e-04, 1.721664547953969174e-04, 1.721856204546965915e-04, 1.722045047767995082e-04, 1.722231077527634931e-04, 1.722414293741050437e-04, 1.722594696327972965e-04, 1.722772285212752035e-04, 1.722947060324281875e-04, 1.723119021596050476e-04, 1.723288168966133360e-04, 1.723454502377172980e-04, 1.723618021776407720e-04, 1.723778727115644796e-04, 1.723936618351281660e-04, 1.724091695444283511e-04, 1.724243958360205517e-04, 1.724393407069167608e-04, 1.724540041545894050e-04, 1.724683861769665469e-04, 1.724824867724344870e-04, 1.724963059398371135e-04, 1.725098436784775553e-04, 1.725230999881145505e-04, 1.725360748689668640e-04, 1.725487683217093572e-04, 1.725611803474739645e-04, 1.725733109478521591e-04, 1.725851601248896408e-04, 1.725967278810945215e-04, 1.726080142194283537e-04, 1.726190191433116055e-04, 1.726297426566216549e-04, 1.726401847636941994e-04, 1.726503454693198132e-04, 1.726602247787497756e-04, 1.726698226976901881e-04, 1.726791392323052824e-04, 1.726881743892156576e-04, 1.726969281754989042e-04, 1.727054005986914742e-04, 1.727135916667851302e-04, 1.727215013882271624e-04, 1.727291297719257552e-04, 1.727364768272422085e-04, 1.727435425639962767e-04, 1.727503269924647871e-04, 1.727568301233811513e-04, 1.727630519679327638e-04, 1.727689925377676151e-04, 1.727746518449877595e-04, 1.727800299021516734e-04, 1.727851267222766675e-04, 1.727899423188320295e-04, 1.727944767057477786e-04, 1.727987298974077539e-04, 1.728027019086523250e-04, 1.728063927547781480e-04, 1.728098024515384095e-04, 1.728129310151412272e-04, 1.728157784622516558e-04, 1.728183448099894102e-04, 1.728206300759320370e-04, 1.728226342781109023e-04, 1.728243574350136048e-04, 1.728257995655837044e-04, 1.728269606892204240e-04, 1.728278408257777278e-04, 1.728284399955653790e-04, 1.728287582193485054e-04, 1.728287955183476540e-04, 1.728285519142386554e-04, 1.728280274291515940e-04, 1.728272220856730300e-04, 1.728261359068439132e-04, 1.728247689161591756e-04, 1.728231211375694666e-04, 1.728211925954808005e-04, 1.728189833147525780e-04, 1.728164933207001878e-04, 1.728137226390922426e-04, 1.728106712961524486e-04, 1.728073393185591724e-04, 1.728037267334444650e-04, 1.727998335683954170e-04, 1.727956598514523425e-04, 1.727912056111101347e-04, 1.727864708763178860e-04, 1.727814556764781294e-04, 1.727761600414476242e-04, 1.727705840015368686e-04, 1.727647275875092588e-04, 1.727585908305826346e-04, 1.727521737624281137e-04, 1.727454764151701184e-04, 1.727384988213856172e-04, 1.727312410141068622e-04, 1.727237030268168353e-04, 1.727158848934538023e-04, 1.727077866484069213e-04, 1.726994083265195499e-04, 1.726907499630872663e-04, 1.726818115938588726e-04, 1.726725932550347950e-04, 1.726630949832687919e-04, 1.726533168156671406e-04, 1.726432587897874446e-04, 1.726329209436406665e-04, 1.726223033156889055e-04, 1.726114059448465628e-04, 1.726002288704807754e-04, 1.725887721324089494e-04, 1.725770357709020667e-04, 1.725650198266807012e-04, 1.725527243409187854e-04, 1.725401493552407924e-04, 1.725272949117215998e-04, 1.725141610528889565e-04, 1.725007478217215583e-04, 1.724870552616478007e-04, 1.724730834165474869e-04, 1.724588323307525868e-04, 1.724443020490432792e-04, 1.724294926166520994e-04, 1.724144040792617973e-04, 1.723990364830053110e-04, 1.723833898744659831e-04, 1.723674643006762599e-04, 1.723512598091196972e-04, 1.723347764477302282e-04, 1.723180142648904291e-04, 1.723009733094325489e-04, 1.722836536306392413e-04, 1.722660552782422094e-04, 1.722481783024223956e-04, 1.722300227538097102e-04, 1.722115886834841973e-04, 1.721928761429735951e-04, 1.721738851842564261e-04, 1.721546158597561692e-04, 1.721350682223502589e-04, 1.721152423253599747e-04, 1.720951382225571638e-04, 1.720747559681628039e-04, 1.720540956168428292e-04, 1.720331572237134433e-04, 1.720119408443404412e-04, 1.719904465347334903e-04, 1.719686743513526084e-04, 1.719466243511052637e-04, 1.719242965913427696e-04, 1.719016911298703405e-04, 1.718788080249338652e-04, 1.718556473352294200e-04, 1.718322091198995830e-04, 1.718084934385347075e-04, 1.717845003511674204e-04, 1.717602299182843578e-04, 1.717356822008103364e-04, 1.717108572601220413e-04, 1.716857551580405446e-04, 1.716603759568300594e-04, 1.716347197192065043e-04, 1.716087865083275560e-04, 1.715825763877959834e-04, 1.715560894216606232e-04, 1.715293256744176542e-04, 1.715022852110052569e-04, 1.714749680968100651e-04, 1.714473743976585194e-04, 1.714195041798266788e-04, 1.713913575100334448e-04, 1.713629344554395582e-04, 1.713342350836551077e-04, 1.713052594627316959e-04, 1.712760076611626568e-04, 1.712464797478875818e-04, 1.712166757922904767e-04, 1.711865958641979732e-04, 1.711562400338790570e-04, 1.711256083720486465e-04, 1.710947009498604908e-04, 1.710635178389148135e-04, 1.710320591112534337e-04, 1.710003248393616906e-04, 1.709683150961670880e-04, 1.709360299550371533e-04, 1.709034694897844516e-04, 1.708706337746628186e-04, 1.708375228843674683e-04, 1.708041368940356984e-04, 1.707704758792473779e-04, 1.707365399160207188e-04, 1.707023290808184015e-04, 1.706678434505421273e-04, 1.706330831025363855e-04, 1.705980481145857972e-04, 1.705627385649130827e-04, 1.705271545321846989e-04, 1.704912960955064216e-04, 1.704551633344235351e-04, 1.704187563289215096e-04, 1.703820751594279531e-04, 1.703451199068041543e-04, 1.703078906523553015e-04, 1.702703874778295609e-04, 1.702326104654043072e-04, 1.701945596977042841e-04, 1.701562352577915211e-04, 1.701176372291613489e-04, 1.700787656957546785e-04, 1.700396207419452614e-04, 1.700002024525496371e-04, 1.699605109128197338e-04, 1.699205462084434374e-04, 1.698803084255474645e-04, 1.698397976507016723e-04, 1.697990139709034188e-04, 1.697579574735936093e-04, 1.697166282466496489e-04, 1.696750263783813764e-04, 1.696331519575396574e-04, 1.695910050733105830e-04, 1.695485858153155789e-04, 1.695058942736124617e-04, 1.694629305386972289e-04, 1.694196947014936494e-04, 1.693761868533736475e-04, 1.693324070861316609e-04, 1.692883554920056202e-04, 1.692440321636661611e-04, 1.691994371942154589e-04, 1.691545706771928391e-04, 1.691094327065774882e-04, 1.690640233767714586e-04, 1.690183427826181812e-04, 1.689723910193960963e-04, 1.689261681828082987e-04, 1.688796743690054692e-04, 1.688329096745573869e-04, 1.687858741964751283e-04, 1.687385680322025291e-04, 1.686909912796081613e-04, 1.686431440370047944e-04, 1.685950264031315336e-04, 1.685466384771561502e-04, 1.684979803586834576e-04, 1.684490521477498086e-04, 1.683998539448165906e-04, 1.683503858507864339e-04, 1.683006479669884399e-04, 1.682506403951785875e-04, 1.682003632375484608e-04, 1.681498165967194218e-04, 1.680990005757421765e-04, 1.680479152780997294e-04, 1.679965608076999296e-04, 1.679449372688849305e-04, 1.678930447664269343e-04, 1.678408834055198436e-04, 1.677884532917978014e-04, 1.677357545313189549e-04, 1.676827872305649680e-04, 1.676295514964524320e-04, 1.675760474363244094e-04, 1.675222751579517888e-04, 1.674682347695354533e-04, 1.674139263796976069e-04, 1.673593500974942161e-04, 1.673045060324057935e-04, 1.672493942943405155e-04, 1.671940149936340864e-04, 1.671383682410486815e-04, 1.670824541477691522e-04, 1.670262728254102091e-04, 1.669698243860126270e-04, 1.669131089420414563e-04, 1.668561266063876760e-04, 1.667988774923701728e-04, 1.667413617137256576e-04, 1.666835793846222185e-04, 1.666255306196516496e-04, 1.665672155338287195e-04, 1.665086342425949929e-04, 1.664497868618093168e-04, 1.663906735077619152e-04, 1.663312942971625712e-04, 1.662716493471455060e-04, 1.662117387752684301e-04, 1.661515626995130042e-04, 1.660911212382772768e-04, 1.660304145103886676e-04, 1.659694426350945078e-04, 1.659082057320637206e-04, 1.658467039213868755e-04, 1.657849373235799014e-04, 1.657229060595703720e-04, 1.656606102507159907e-04, 1.655980500187920147e-04, 1.655352254859943984e-04, 1.654721367749423960e-04, 1.654087840086671771e-04, 1.653451673106253524e-04, 1.652812868047007081e-04, 1.652171426151808416e-04, 1.651527348667831551e-04, 1.650880636846443117e-04, 1.650231291943105862e-04, 1.649579315217554291e-04, 1.648924707933682992e-04, 1.648267471359566964e-04, 1.647607606767470566e-04, 1.646945115433770806e-04, 1.646279998639059525e-04, 1.645612257668185689e-04, 1.644941893810006285e-04, 1.644268908357642738e-04, 1.643593302608384690e-04, 1.642915077863607597e-04, 1.642234235428891725e-04, 1.641550776614053857e-04, 1.640864702732908772e-04, 1.640176015103516445e-04, 1.639484715048107231e-04, 1.638790803892925204e-04, 1.638094282968565341e-04, 1.637395153609568302e-04, 1.636693417154716143e-04, 1.635989074946944503e-04, 1.635282128333181051e-04, 1.634572578664681862e-04, 1.633860427296732990e-04, 1.633145675588693567e-04, 1.632428324904127532e-04, 1.631708376610727736e-04, 1.630985832080179604e-04, 1.630260692688499137e-04, 1.629532959815597332e-04, 1.628802634845625229e-04, 1.628069719166807486e-04, 1.627334214171474638e-04, 1.626596121256065528e-04, 1.625855441821139513e-04, 1.625112177271267227e-04, 1.624366329015205948e-04, 1.623617898465812325e-04, 1.622866887039897362e-04, 1.622113296158555747e-04, 1.621357127246863628e-04, 1.620598381733925235e-04, 1.619837061053011932e-04, 1.619073166641452706e-04, 1.618306699940633359e-04, 1.617537662396056680e-04, 1.616766055457183337e-04, 1.615991880577656039e-04, 1.615215139215136087e-04, 1.614435832831345936e-04, 1.613653962892073524e-04, 1.612869530867182309e-04, 1.612082538230502572e-04, 1.611292986460001366e-04, 1.610500877037677624e-04, 1.609706211449554562e-04, 1.608908991185710588e-04, 1.608109217740293117e-04, 1.607306892611379799e-04, 1.606502017301192917e-04, 1.605694593315939197e-04, 1.604884622165866730e-04, 1.604072105365276894e-04, 1.603257044432386395e-04, 1.602439440889542475e-04, 1.601619296263069234e-04, 1.600796612083311261e-04, 1.599971389884613038e-04, 1.599143631205371255e-04, 1.598313337587890337e-04, 1.597480510578565673e-04, 1.596645151727769235e-04, 1.595807262589863675e-04, 1.594966844723212890e-04, 1.594123899690202354e-04, 1.593278429057097632e-04, 1.592430434394271515e-04, 1.591579917276025945e-04, 1.590726879280645407e-04, 1.589871321990447622e-04, 1.589013246991587841e-04, 1.588152655874284906e-04, 1.587289550232823688e-04, 1.586423931665249614e-04, 1.585555801773700431e-04, 1.584685162164288573e-04, 1.583812014446966444e-04, 1.582936360235742451e-04, 1.582058201148558215e-04, 1.581177538807288570e-04, 1.580294374837793879e-04, 1.579408710869765532e-04, 1.578520548536917038e-04, 1.577629889476994327e-04, 1.576736735331469186e-04, 1.575841087745876454e-04, 1.574942948369692855e-04, 1.574042318856195514e-04, 1.573139200862669579e-04, 1.572233596050423132e-04, 1.571325506084453522e-04, 1.570414932633830906e-04, 1.569501877371524230e-04, 1.568586341974255948e-04, 1.567668328122929198e-04, 1.566747837502068896e-04, 1.565824871800258397e-04, 1.564899432709974697e-04, 1.563971521927423906e-04, 1.563041141152941588e-04, 1.562108292090623864e-04, 1.561172976448378636e-04, 1.560235195938101504e-04, 1.559294952275574390e-04, 1.558352247180286104e-04, 1.557407082375874966e-04, 1.556459459589563401e-04, 1.555509380552604082e-04, 1.554556847000064990e-04, 1.553601860670868987e-04, 1.552644423307803303e-04, 1.551684536657528210e-04, 1.550722202470456671e-04, 1.549757422500941373e-04, 1.548790198507190696e-04, 1.547820532251087107e-04, 1.546848425498587509e-04, 1.545873880019360839e-04, 1.544896897586836321e-04, 1.543917479978362838e-04, 1.542935628975100246e-04, 1.541951346362003649e-04, 1.540964633927905802e-04, 1.539975493465312734e-04, 1.538983926770669112e-04, 1.537989935644234368e-04, 1.536993521889891878e-04, 1.535994687315578582e-04, 1.534993433732914452e-04, 1.533989762957206832e-04, 1.532983676807700890e-04, 1.531975177107374158e-04, 1.530964265682990474e-04, 1.529950944365094561e-04, 1.528935214988052951e-04, 1.527917079389880793e-04, 1.526896539412479011e-04, 1.525873596901484964e-04, 1.524848253706295211e-04, 1.523820511680111316e-04, 1.522790372679768279e-04, 1.521757838565971157e-04, 1.520722911203148159e-04, 1.519685592459462569e-04, 1.518645884206827384e-04, 1.517603788320938114e-04, 1.516559306681100117e-04, 1.515512441170481224e-04, 1.514463193675942869e-04, 1.513411566088053645e-04, 1.512357560301174687e-04, 1.511301178213243367e-04, 1.510242421726047603e-04, 1.509181292745044253e-04, 1.508117793179397875e-04, 1.507051924941997263e-04, 1.505983689949459236e-04, 1.504913090121974149e-04, 1.503840127383515135e-04, 1.502764803661896654e-04, 1.501687120888335668e-04, 1.500607080997927597e-04, 1.499524685929449000e-04, 1.498439937625216899e-04, 1.497352838031365519e-04, 1.496263389097647340e-04, 1.495171592777498691e-04, 1.494077451028059803e-04, 1.492980965809985352e-04, 1.491882139087698971e-04, 1.490780972829414662e-04, 1.489677469006708810e-04, 1.488571629595000214e-04, 1.487463456573359807e-04, 1.486352951924297067e-04, 1.485240117634301581e-04, 1.484124955693156742e-04, 1.483007468094481307e-04, 1.481887656835458619e-04, 1.480765523916949635e-04, 1.479641071343245728e-04, 1.478514301122588561e-04, 1.477385215266500322e-04, 1.476253815790297093e-04, 1.475120104712914024e-04, 1.473984084056686322e-04, 1.472845755847835517e-04, 1.471705122116047165e-04, 1.470562184894490363e-04, 1.469416946220064135e-04, 1.468269408133272206e-04, 1.467119572677975535e-04, 1.465967441901985910e-04, 1.464813017856321379e-04, 1.463656302595778703e-04, 1.462497298178721400e-04, 1.461336006666874012e-04, 1.460172430125815694e-04, 1.459006570624539207e-04, 1.457838430235489416e-04, 1.456668011034805874e-04, 1.455495315102173746e-04, 1.454320344520620251e-04, 1.453143101377004720e-04, 1.451963587761581121e-04, 1.450781805768028689e-04, 1.449597757493695867e-04, 1.448411445039414643e-04, 1.447222870509532800e-04, 1.446032036011966773e-04, 1.444838943657977760e-04, 1.443643595562506471e-04, 1.442445993843942463e-04, 1.441246140624162628e-04, 1.440044038028558842e-04, 1.438839688186059379e-04, 1.437633093228926433e-04, 1.436424255293062408e-04, 1.435213176517800664e-04, 1.433999859045957019e-04, 1.432784305023868240e-04, 1.431566516601187936e-04, 1.430346495931192308e-04, 1.429124245170566832e-04, 1.427899766479465886e-04, 1.426673062021481585e-04, 1.425444133963731054e-04, 1.424212984476602999e-04, 1.422979615734096248e-04, 1.421744029913605081e-04, 1.420506229195948769e-04, 1.419266215765380796e-04, 1.418023991809643067e-04, 1.416779559519738493e-04, 1.415532921090251650e-04, 1.414284078719130308e-04, 1.413033034607739642e-04, 1.411779790960903975e-04, 1.410524349986695084e-04, 1.409266713896744727e-04, 1.408006884906038098e-04, 1.406744865232941203e-04, 1.405480657099221736e-04, 1.404214262730076176e-04, 1.402945684353936265e-04, 1.401674924202770951e-04, 1.400401984511858713e-04, 1.399126867519860466e-04, 1.397849575468800595e-04, 1.396570110604123055e-04, 1.395288475174460442e-04, 1.394004671431976598e-04, 1.392718701632121852e-04, 1.391430568033698615e-04, 1.390140272898905834e-04, 1.388847818493124588e-04, 1.387553207085163933e-04, 1.386256440947348178e-04, 1.384957522354996200e-04, 1.383656453586959206e-04, 1.382353236925422054e-04, 1.381047874655657410e-04, 1.379740369066633171e-04, 1.378430722450250815e-04, 1.377118937101924363e-04, 1.375805015320316648e-04, 1.374488959407446111e-04, 1.373170771668395145e-04, 1.371850454411928908e-04, 1.370528009949699519e-04, 1.369203440596872723e-04, 1.367876748671879882e-04, 1.366547936496200866e-04, 1.365217006394928373e-04, 1.363883960696247522e-04, 1.362548801731482465e-04, 1.361211531835392107e-04, 1.359872153345986334e-04, 1.358530668604283692e-04, 1.357187079954962723e-04, 1.355841389745528756e-04, 1.354493600326956836e-04, 1.353143714053454288e-04, 1.351791733282219207e-04, 1.350437660374029724e-04, 1.349081497692700279e-04, 1.347723247605145858e-04, 1.346362912481669036e-04, 1.345000494695779191e-04, 1.343635996623957223e-04, 1.342269420646228833e-04, 1.340900769145637601e-04, 1.339530044508305967e-04, 1.338157249123713333e-04, 1.336782385384468921e-04, 1.335405455686350265e-04, 1.334026462428377746e-04, 1.332645408012559263e-04, 1.331262294844244229e-04, 1.329877125331884228e-04, 1.328489901887093191e-04, 1.327100626924633303e-04, 1.325709302862477341e-04, 1.324315932121563374e-04, 1.322920517126150385e-04, 1.321523060303567815e-04, 1.320123564084284685e-04, 1.318722030901956757e-04, 1.317318463193175269e-04, 1.315912863397840989e-04, 1.314505233958908879e-04, 1.313095577322441769e-04, 1.311683895937609812e-04, 1.310270192256740628e-04, 1.308854468735097586e-04, 1.307436727831195577e-04, 1.306016972006591764e-04, 1.304595203725930305e-04, 1.303171425456933947e-04, 1.301745639670463122e-04, 1.300317848840269015e-04, 1.298888055443354059e-04, 1.297456261959719867e-04, 1.296022470872437693e-04, 1.294586684667691271e-04, 1.293148905834528520e-04, 1.291709136865231810e-04, 1.290267380255066690e-04, 1.288823638502333664e-04, 1.287377914108371981e-04, 1.285930209577608701e-04, 1.284480527417311763e-04, 1.283028870137960242e-04, 1.281575240252980617e-04, 1.280119640278822935e-04, 1.278662072734936418e-04, 1.277202540143840205e-04, 1.275741045030807041e-04, 1.274277589924536829e-04, 1.272812177356280605e-04, 1.271344809860538755e-04, 1.269875489974781838e-04, 1.268404220239277656e-04, 1.266931003197389947e-04, 1.265455841395641276e-04, 1.263978737383138131e-04, 1.262499693712207350e-04, 1.261018712938127243e-04, 1.259535797618868192e-04, 1.258050950315810126e-04, 1.256564173592813896e-04, 1.255075470016938212e-04, 1.253584842158181052e-04, 1.252092292589272586e-04, 1.250597823886002329e-04, 1.249101438627262786e-04, 1.247603139394495690e-04, 1.246102928772291026e-04, 1.244600809348164229e-04, 1.243096783712262362e-04, 1.241590854458029549e-04, 1.240083024181601985e-04, 1.238573295481881938e-04, 1.237061670960852707e-04, 1.235548153223372354e-04, 1.234032744876918642e-04, 1.232515448532300547e-04, 1.230996266802732620e-04, 1.229475202304554078e-04, 1.227952257656973755e-04, 1.226427435481776006e-04, 1.224900738404000771e-04, 1.223372169051329381e-04, 1.221841730054158009e-04, 1.220309424045913036e-04, 1.218775253662850611e-04, 1.217239221543792648e-04, 1.215701330330851886e-04, 1.214161582668483346e-04, 1.212619981204237854e-04, 1.211076528588391106e-04, 1.209531227474034337e-04, 1.207984080517052363e-04, 1.206435090376203813e-04, 1.204884259712825958e-04, 1.203331591191247516e-04, 1.201777087478508930e-04, 1.200220751244437858e-04, 1.198662585161622875e-04, 1.197102591905501438e-04, 1.195540774154051691e-04, 1.193977134588234963e-04, 1.192411675891688394e-04, 1.190844400750801099e-04, 1.189275311854778953e-04, 1.187704411895357134e-04, 1.186131703567215655e-04, 1.184557189567701254e-04, 1.182980872596879173e-04, 1.181402755357547659e-04, 1.179822840555284983e-04, 1.178241130898175285e-04, 1.176657629097221643e-04, 1.175072337866058767e-04, 1.173485259921021572e-04, 1.171896397981139895e-04, 1.170305754768203812e-04, 1.168713333006485413e-04, 1.167119135423133310e-04, 1.165523164747914598e-04, 1.163925423713261614e-04, 1.162325915054344982e-04, 1.160724641508789824e-04, 1.159121605817082877e-04, 1.157516810722302667e-04, 1.155910258970166800e-04, 1.154301953309043758e-04, 1.152691896490006023e-04, 1.151080091266548861e-04, 1.149466540395016281e-04, 1.147851246634294068e-04, 1.146234212745898687e-04, 1.144615441494028379e-04, 1.142994935645280451e-04, 1.141372697968997819e-04, 1.139748731237339070e-04, 1.138123038224638108e-04, 1.136495621708097229e-04, 1.134866484467501841e-04, 1.133235629285028019e-04, 1.131603058945547703e-04, 1.129968776236731705e-04, 1.128332783948389695e-04, 1.126695084873176561e-04, 1.125055681806311328e-04, 1.123414577545277514e-04, 1.121771774890610530e-04, 1.120127276644886799e-04, 1.118481085613513593e-04, 1.116833204604425868e-04, 1.115183636427881348e-04, 1.113532383896800556e-04, 1.111879449826846234e-04, 1.110224837035761030e-04, 1.108568548344085242e-04, 1.106910586574870854e-04, 1.105250954553381356e-04, 1.103589655107879274e-04, 1.101926691068614748e-04, 1.100262065268616321e-04, 1.098595780543316756e-04, 1.096927839730711733e-04, 1.095258245670964660e-04, 1.093587001207222396e-04, 1.091914109184586890e-04, 1.090239572450905833e-04, 1.088563393856483986e-04, 1.086885576253777714e-04, 1.085206122498132370e-04, 1.083525035447111044e-04, 1.081842317960560429e-04, 1.080157972900981070e-04, 1.078472003133219864e-04, 1.076784411524547711e-04, 1.075095200944723621e-04, 1.073404374265691136e-04, 1.071711934362025697e-04, 1.070017884110626192e-04, 1.068322226390784342e-04, 1.066624964084187413e-04, 1.064926100074982320e-04, 1.063225637249467712e-04, 1.061523578496545949e-04, 1.059819926707418442e-04, 1.058114684775645964e-04, 1.056407855597154064e-04, 1.054699442070302327e-04, 1.052989447095569684e-04, 1.051277873576010044e-04, 1.049564724416947499e-04, 1.047850002526039482e-04, 1.046133710813348456e-04, 1.044415852191039965e-04, 1.042696429573830276e-04, 1.040975445878670195e-04, 1.039252904024832888e-04, 1.037528806933884476e-04, 1.035803157529782963e-04, 1.034075958738552302e-04, 1.032347213488727050e-04, 1.030616924711067362e-04, 1.028885095338604252e-04, 1.027151728306656674e-04, 1.025416826552880714e-04, 1.023680393016980652e-04, 1.021942430641148062e-04, 1.020202942369756883e-04, 1.018461931149436194e-04, 1.016719399929131201e-04, 1.014975351659811451e-04, 1.013229789294904513e-04, 1.011482715789999176e-04, 1.009734134102911588e-04, 1.007984047193679429e-04, 1.006232458024634412e-04, 1.004479369560094105e-04, 1.002724784766813630e-04, 1.000968706613665829e-04, 9.992111380717370796e-05, 9.974520821143640183e-05, 9.956915417168637138e-05, 9.939295198568675997e-05, 9.921660195144312499e-05, 9.904010436713124360e-05, 9.886345953117516168e-05, 9.868666774221416637e-05, 9.850972929908127817e-05, 9.833264450083986988e-05, 9.815541364679118827e-05, 9.797803703640389447e-05, 9.780051496939251956e-05, 9.762284774568350193e-05, 9.744503566538615779e-05, 9.726707902887569035e-05, 9.708897813668460703e-05, 9.691073328958849336e-05, 9.673234478857312103e-05, 9.655381293481083934e-05, 9.637513802969986405e-05, 9.619632037487094514e-05, 9.601736027211640585e-05, 9.583825802346832717e-05, 9.565901393116604888e-05, 9.547962829762566281e-05, 9.530010142552352355e-05, 9.512043361768858713e-05, 9.494062517718563710e-05, 9.476067640727773049e-05, 9.458058761143996716e-05, 9.440035909331975382e-05, 9.421999115682417713e-05, 9.403948410600765329e-05, 9.385883824515850156e-05, 9.367805387876773280e-05, 9.349713131149621167e-05, 9.331607084825297674e-05, 9.313487279412389994e-05, 9.295353745437953349e-05, 9.277206513451346354e-05, 9.259045614020997386e-05, 9.240871077735258391e-05, 9.222682935203016107e-05, 9.204481217050561423e-05, 9.186265953926237905e-05, 9.168037176498067384e-05, 9.149794915450441791e-05, 9.131539201492070356e-05, 9.113270065348850980e-05, 9.094987537764397426e-05, 9.076691649504172843e-05, 9.058382431352223602e-05, 9.040059914111783746e-05, 9.021724128605394246e-05, 9.003375105675561656e-05, 8.985012876181451297e-05, 8.966637471003837995e-05, 8.948248921041608171e-05, 8.929847257212701747e-05, 8.911432510454712517e-05, 8.893004711721762940e-05, 8.874563891989168914e-05, 8.856110082250229188e-05, 8.837643313516920602e-05, 8.819163616819926551e-05, 8.800671023209337646e-05, 8.782165563751354390e-05, 8.763647269533145754e-05, 8.745116171659541009e-05, 8.726572301253696508e-05, 8.708015689457998282e-05, 8.689446367430724060e-05, 8.670864366350744632e-05, 8.652269717414344432e-05, 8.633662451836007583e-05, 8.615042600848262042e-05, 8.596410195702496818e-05, 8.577765267665642959e-05, 8.559107848024166123e-05, 8.540437968084947499e-05, 8.521755659167703871e-05, 8.503060952613228916e-05, 8.484353879780075539e-05, 8.465634472042017492e-05, 8.446902760792821213e-05, 8.428158777443069116e-05, 8.409402553420858902e-05, 8.390634120172577406e-05, 8.371853509159534151e-05, 8.353060751861994581e-05, 8.334255879780123313e-05, 8.315438924426295795e-05, 8.296609917333399220e-05, 8.277768890051524363e-05, 8.258915874145286240e-05, 8.240050901198907665e-05, 8.221174002812687458e-05, 8.202285210603970809e-05, 8.183384556206943277e-05, 8.164472071273366695e-05, 8.145547787468574396e-05, 8.126611736480392840e-05, 8.107663950007489159e-05, 8.088704459768540785e-05, 8.069733297498667081e-05, 8.050750494947159284e-05, 8.031756083881319943e-05, 8.012750096087400747e-05, 7.993732563363009050e-05, 7.974703517525389817e-05, 7.955662990408042914e-05, 7.936611013857292963e-05, 7.917547619741499641e-05, 7.898472839939207348e-05, 7.879386706348431402e-05, 7.860289250883072034e-05, 7.841180505470489849e-05, 7.822060502055606815e-05, 7.802929272601682824e-05, 7.783786849082705950e-05, 7.764633263491750289e-05, 7.745468547837536331e-05, 7.726292734141059089e-05, 7.707105854443903933e-05, 7.687907940800628708e-05, 7.668699025279547077e-05, 7.649479139966923024e-05, 7.630248316963542067e-05, 7.611006588385456643e-05, 7.591753986364774872e-05, 7.572490543046280550e-05, 7.553216290592434034e-05, 7.533931261180741698e-05, 7.514635487000385417e-05, 7.495329000260585834e-05, 7.476011833182919430e-05, 7.456684018002139808e-05, 7.437345586970376266e-05, 7.417996572353642668e-05, 7.398637006432645170e-05, 7.379266921503600796e-05, 7.359886349874826268e-05, 7.340495323871612846e-05, 7.321093875832977791e-05, 7.301682038112355542e-05, 7.282259843077538086e-05, 7.262827323111540961e-05, 7.243384510609009131e-05, 7.223931437981465878e-05, 7.204468137653694275e-05, 7.184994642064585575e-05, 7.165510983667095846e-05, 7.146017194929036079e-05, 7.126513308329631205e-05, 7.106999356364507422e-05, 7.087475371542317618e-05, 7.067941386385504377e-05, 7.048397433431096868e-05, 7.028843545227195320e-05, 7.009279754338180611e-05, 6.989706093341065932e-05, 6.970122594826403447e-05, 6.950529291398242283e-05, 6.930926215674835969e-05, 6.911313400285288189e-05, 6.891690877874548241e-05, 6.872058681099942946e-05, 6.852416842631992510e-05, 6.832765395154372578e-05, 6.813104371364696213e-05, 6.793433803971028187e-05, 6.773753725696980731e-05, 6.754064169278225116e-05, 6.734365167463326487e-05, 6.714656753014504157e-05, 6.694938958704139129e-05, 6.675211817319064817e-05, 6.655475361661332770e-05, 6.635729624540438938e-05, 6.615974638781856347e-05, 6.596210437223549387e-05, 6.576437052713306674e-05, 6.556654518113919474e-05, 6.536862866299605185e-05, 6.517062130156862508e-05, 6.497252342584419944e-05, 6.477433536494027260e-05, 6.457605744806083450e-05, 6.437769000459057087e-05, 6.417923336397415098e-05, 6.398068785580968577e-05, 6.378205380981481949e-05, 6.358333155579885213e-05, 6.338452142370659540e-05, 6.318562374362654489e-05, 6.298663884571085243e-05, 6.278756706026317354e-05, 6.258840871770295652e-05, 6.238916414852912172e-05, 6.218983368341702981e-05, 6.199041765309416449e-05, 6.179091638843692464e-05, 6.159133022043420866e-05, 6.139165948015221856e-05, 6.119190449882194152e-05, 6.099206560775883765e-05, 6.079214313837167619e-05, 6.059213742220551736e-05, 6.039204879091536628e-05, 6.019187757622989282e-05, 5.999162411003893349e-05, 5.979128872431399913e-05, 5.959087175111642672e-05, 5.939037352264057128e-05, 5.918979437117856933e-05, 5.898913462912807058e-05, 5.878839462900120296e-05, 5.858757470338765548e-05, 5.838667518500792616e-05, 5.818569640668606787e-05, 5.798463870131402489e-05, 5.778350240193874172e-05, 5.758228784168332130e-05, 5.738099535375362509e-05, 5.717962527148330809e-05, 5.697817792829750486e-05, 5.677665365772093393e-05, 5.657505279338626648e-05, 5.637337566899813085e-05, 5.617162261838610289e-05, 5.596979397546816837e-05, 5.576789007425913907e-05, 5.556591124887063927e-05, 5.536385783351861382e-05, 5.516173016248782730e-05, 5.495952857018431231e-05, 5.475725339109960434e-05, 5.455490495981885974e-05, 5.435248361102016452e-05, 5.414998967948317414e-05, 5.394742350005271814e-05, 5.374478540769192606e-05, 5.354207573744568986e-05, 5.333929482444951369e-05, 5.313644300393741501e-05, 5.293352061120577324e-05, 5.273052798166665217e-05, 5.252746545081127591e-05, 5.232433335421822138e-05, 5.212113202755321500e-05, 5.191786180657750145e-05, 5.171452302711115011e-05, 5.151111602508677057e-05, 5.130764113651247355e-05, 5.110409869748093752e-05, 5.090048904416826354e-05, 5.069681251284267599e-05, 5.049306943982842538e-05, 5.028926016155819598e-05, 5.008538501453763212e-05, 4.988144433535327991e-05, 4.967743846068064427e-05, 4.947336772724846444e-05, 4.926923247188256996e-05, 4.906503303151447297e-05, 4.886076974310014795e-05, 4.865644294370866519e-05, 4.845205297048658835e-05, 4.824760016062992068e-05, 4.804308485143717679e-05, 4.783850738027374620e-05, 4.763386808457987582e-05, 4.742916730187869305e-05, 4.722440536974023057e-05, 4.701958262582565506e-05, 4.681469940789608305e-05, 4.660975605373021550e-05, 4.640475290121453660e-05, 4.619969028830645772e-05, 4.599456855300653466e-05, 4.578938803340347566e-05, 4.558414906768206283e-05, 4.537885199404204025e-05, 4.517349715078699147e-05, 4.496808487628860149e-05, 4.476261550894887909e-05, 4.455708938730014738e-05, 4.435150684987699274e-05, 4.414586823531581490e-05, 4.394017388231795732e-05, 4.373442412961236315e-05, 4.352861931604650597e-05, 4.332275978050374645e-05, 4.311684586191178234e-05, 4.291087789928746670e-05, 4.270485623170968927e-05, 4.249878119828114483e-05, 4.229265313822946887e-05, 4.208647239077773649e-05, 4.188023929524493401e-05, 4.167395419099973131e-05, 4.146761741746901993e-05, 4.126122931413691696e-05, 4.105479022055417727e-05, 4.084830047630031417e-05, 4.064176042103838555e-05, 4.043517039448689268e-05, 4.022853073638210419e-05, 4.002184178657008451e-05, 3.981510388492272919e-05, 3.960831737134687896e-05, 3.940148258582947677e-05, 3.919459986840025090e-05, 3.898766955914051733e-05, 3.878069199819168393e-05, 3.857366752571789295e-05, 3.836659648196059702e-05, 3.815947920720152688e-05, 3.795231604177085001e-05, 3.774510732604721805e-05, 3.753785340046555952e-05, 3.733055460548066415e-05, 3.712321128162110164e-05, 3.691582376945240620e-05, 3.670839240958520132e-05, 3.650091754267503031e-05, 3.629339950943077247e-05, 3.608583865057763112e-05, 3.587823530691114718e-05, 3.567058981926047185e-05, 3.546290252849675561e-05, 3.525517377554169987e-05, 3.504740390133035527e-05, 3.483959324686560286e-05, 3.463174215318107435e-05, 3.442385096134937178e-05, 3.421592001248190481e-05, 3.400794964773737469e-05, 3.379994020828437596e-05, 3.359189203535614199e-05, 3.338380547021295019e-05, 3.317568085415127676e-05, 3.296751852850251602e-05, 3.275931883464237225e-05, 3.255108211395285167e-05, 3.234280870787725179e-05, 3.213449895788285810e-05, 3.192615320546938053e-05, 3.171777179217774220e-05, 3.150935505955262711e-05, 3.130090334918784036e-05, 3.109241700273551035e-05, 3.088389636182168365e-05, 3.067534176813872614e-05, 3.046675356340769437e-05, 3.025813208934967539e-05, 3.004947768774134196e-05, 2.984079070037688345e-05, 2.963207146907671679e-05, 2.942332033569663099e-05, 2.921453764208970115e-05, 2.900572373015228241e-05, 2.879687894183256827e-05, 2.858800361904693433e-05, 2.837909810377169223e-05, 2.817016273800580664e-05, 2.796119786374204197e-05, 2.775220382302262257e-05, 2.754318095790112304e-05, 2.733412961045143658e-05, 2.712505012276702967e-05, 2.691594283697002895e-05, 2.670680809516367903e-05, 2.649764623953434217e-05, 2.628845761222099083e-05, 2.607924255541628917e-05, 2.587000141132952356e-05, 2.566073452214852668e-05, 2.545144223013199404e-05, 2.524212487752561406e-05, 2.503278280657028775e-05, 2.482341635954858337e-05, 2.461402587875587632e-05, 2.440461170646300175e-05, 2.419517418501761731e-05, 2.398571365671346871e-05, 2.377623046389251477e-05, 2.356672494889740208e-05, 2.335719745408058930e-05, 2.314764832180343229e-05, 2.293807789444521353e-05, 2.272848651436529667e-05, 2.251887452395832936e-05, 2.230924226562569149e-05, 2.209959008173807322e-05, 2.188991831472752040e-05, 2.168022730700348684e-05, 2.147051740096130119e-05, 2.126078893902839468e-05, 2.105104226362627606e-05, 2.084127771717954748e-05, 2.063149564212442218e-05, 2.042169638087096720e-05, 2.021188027585849256e-05, 2.000204766952722645e-05, 1.979219890427989044e-05, 1.958233432257505945e-05, 1.937245426684231278e-05, 1.916255907949098564e-05, 1.895264910295642053e-05, 1.874272467966195242e-05, 1.853278615202780258e-05, 1.832283386247029254e-05, 1.811286815341103950e-05, 1.790288936723852470e-05, 1.769289784636410607e-05, 1.748289393318359678e-05, 1.727287797008645725e-05, 1.706285029946434342e-05, 1.685281126367329518e-05, 1.664276120508907813e-05, 1.643270046606949399e-05, 1.622262938896296952e-05, 1.601254831610819738e-05, 1.580245758984262679e-05, 1.559235755246479765e-05, 1.538224854628974668e-05, 1.517213091361104171e-05, 1.496200499670970432e-05, 1.475187113786281568e-05, 1.454172967930574567e-05, 1.433158096328751666e-05, 1.412142533203300549e-05, 1.391126312775167639e-05, 1.370109469263698128e-05, 1.349092036887517737e-05, 1.328074049860746822e-05, 1.307055542397603652e-05, 1.286036548713303287e-05, 1.265017103015561496e-05, 1.243997239513913981e-05, 1.222976992415907951e-05, 1.201956395924241860e-05, 1.180935484242326009e-05, 1.159914291570480550e-05, 1.138892852106822505e-05, 1.117871200048134990e-05, 1.096849369586076906e-05, 1.075827394911811475e-05, 1.054805310216871900e-05, 1.033783149684689176e-05, 1.012760947499908604e-05, 9.917387378445722149e-06, 9.707165548943264319e-06, 9.496944328286650714e-06, 9.286724058177696695e-06, 9.076505080327419790e-06, 8.866287736408810829e-06, 8.656072368074945204e-06, 8.445859316911554106e-06, 8.235648924539623931e-06, 8.025441532483531883e-06, 7.815237482273740255e-06, 7.605037115408556272e-06, 7.394840773316277344e-06, 7.184648797448247804e-06, 6.974461529194009071e-06, 6.764279309890093548e-06, 6.554102480866323443e-06, 6.343931383417168349e-06, 6.133766358763718551e-06, 5.923607748156148901e-06, 5.713455892742028917e-06, 5.503311133668867128e-06, 5.293173812046025091e-06, 5.083044268906730496e-06, 4.872922845301161015e-06, 4.662809882211627493e-06, 4.452705720561363620e-06, 4.242610701260859472e-06, 4.032525165179111525e-06, 3.822449453105708607e-06, 3.612383905843887790e-06, 3.402328864125704039e-06, 3.192284668620828339e-06, 2.982251659982844830e-06, 2.772230178811247817e-06, 2.562220565660209416e-06, 2.352223161047440364e-06, 2.142238305416184917e-06, 1.932266339190810356e-06, 1.722307602738841699e-06, 1.512362436379755807e-06, 1.302431180384441192e-06, 1.092514174984009697e-06, 8.826117603317857886e-07, 6.727242765589423292e-07, 4.628520637365106701e-07, 2.529954618841701552e-07, 4.315481097907791656e-08, -1.666695490821310423e-07, -3.764772784277241820e-07, -5.862680372488674858e-07, -7.960414857908037371e-07, -1.005797284353419482e-06, -1.215535093282413892e-06, -1.425254573007296765e-06, -1.634955383985771496e-06, -1.844637186741731388e-06, -2.054299641856441617e-06, -2.263942409969079846e-06, -2.473565151767959695e-06, -2.683167528028444151e-06, -2.892749199557410484e-06, -3.102309827231209182e-06, -3.311849071986823895e-06, -3.521366594813110567e-06, -3.730862056788719955e-06, -3.940335119026533533e-06, -4.149785442711669440e-06, -4.359212689092586938e-06, -4.568616519481701783e-06, -4.777996595246572422e-06, -4.987352577847807260e-06, -5.196684128783567908e-06, -5.405990909627455271e-06, -5.615272582019741067e-06, -5.824528807667937874e-06, -6.033759248337943406e-06, -6.242963565891970647e-06, -6.452141422233052791e-06, -6.661292479342966605e-06, -6.870416399273450387e-06, -7.079512844137316901e-06, -7.288581476146447036e-06, -7.497621957565630746e-06, -7.706633950703727418e-06, -7.915617117998287000e-06, -8.124571121922675380e-06, -8.333495625024053653e-06, -8.542390289961140540e-06, -8.751254779402239787e-06, -8.960088756156247362e-06, -9.168891883070702571e-06, -9.377663823078898335e-06, -9.586404239181836002e-06, -9.795112794495367808e-06, -1.000378915214803963e-05, -1.021243297541245223e-05, -1.042104392760295833e-05, -1.062962167211367235e-05, -1.083816587245617354e-05, -1.104667619216701338e-05, -1.125515229489197333e-05, -1.146359384437726925e-05, -1.167200050442373706e-05, -1.188037193891503048e-05, -1.208870781185561386e-05, -1.229700778726875057e-05, -1.250527152932750349e-05, -1.271349870225276741e-05, -1.292168897035112978e-05, -1.312984199805250772e-05, -1.333795744981785536e-05, -1.354603499022320299e-05, -1.375407428395097167e-05, -1.396207499574414358e-05, -1.417003679043446491e-05, -1.437795933298038102e-05, -1.458584228837442356e-05, -1.479368532172761054e-05, -1.500148809826057453e-05, -1.520925028325754161e-05, -1.541697154210423275e-05, -1.562465154027901568e-05, -1.583228994334412456e-05, -1.603988641698336990e-05, -1.624744062694699666e-05, -1.645495223908927565e-05, -1.666242091935987729e-05, -1.686984633380429852e-05, -1.707722814855523665e-05, -1.728456602986997397e-05, -1.749185964407559506e-05, -1.769910865760641549e-05, -1.790631273699536919e-05, -1.811347154886509085e-05, -1.832058475996572753e-05, -1.852765203711966124e-05, -1.873467304725931715e-05, -1.894164745741831033e-05, -1.914857493473194389e-05, -1.935545514642870470e-05, -1.956228775986750917e-05, -1.976907244248289681e-05, -1.997580886182258428e-05, -2.018249668553873078e-05, -2.038913558138823285e-05, -2.059572521722455893e-05, -2.080226526103463259e-05, -2.100875538088436492e-05, -2.121519524495586978e-05, -2.142158452153895614e-05, -2.162792287902229533e-05, -2.183420998593091738e-05, -2.204044551087140806e-05, -2.224662912256923593e-05, -2.245276048986019385e-05, -2.265883928169084292e-05, -2.286486516710985572e-05, -2.307083781530538746e-05, -2.327675689555038811e-05, -2.348262207723983801e-05, -2.368843302988219617e-05, -2.389418942309988142e-05, -2.409989092662069365e-05, -2.430553721032409231e-05, -2.451112794414082302e-05, -2.471666279818204937e-05, -2.492214144263878650e-05, -2.512756354781915688e-05, -2.533292878417653900e-05, -2.553823682226405455e-05, -2.574348733272611167e-05, -2.594867998638139382e-05, -2.615381445413155980e-05, -2.635889040699870975e-05, -2.656390751616227844e-05, -2.676886545285896350e-05, -2.697376388851158277e-05, -2.717860249462859931e-05, -2.738338094284132644e-05, -2.758809890493210006e-05, -2.779275605278888449e-05, -2.799735205839675803e-05, -2.820188659392056652e-05, -2.840635933161410440e-05, -2.861076994385752649e-05, -2.881511810319379072e-05, -2.901940348223826620e-05, -2.922362575376134599e-05, -2.942778459067995307e-05, -2.963187966601215633e-05, -2.983591065290524462e-05, -3.003987722467287082e-05, -3.024377905469482415e-05, -3.044761581654572159e-05, -3.065138718389491225e-05, -3.085509283054347924e-05, -3.105873243046143448e-05, -3.126230565769687960e-05, -3.146581218645847297e-05, -3.166925169110718308e-05, -3.187262384611118566e-05, -3.207592832607313141e-05, -3.227916480576796429e-05, -3.248233296004258541e-05, -3.268543246394424288e-05, -3.288846299262069715e-05, -3.309142422136640799e-05, -3.329431582561377954e-05, -3.349713748093377703e-05, -3.369988886302740215e-05, -3.390256964776247465e-05, -3.410517951111970006e-05, -3.430771812922932251e-05, -3.451018517836284411e-05, -3.471258033493343151e-05, -3.491490327548737787e-05, -3.511715367674060655e-05, -3.531933121552544355e-05, -3.552143556882659951e-05, -3.572346641377321431e-05, -3.592542342763002769e-05, -3.612730628783425560e-05, -3.632911467194174603e-05, -3.653084825766358441e-05, -3.673250672285756905e-05, -3.693408974552894974e-05, -3.713559700382174740e-05, -3.733702817605546103e-05, -3.753838294067097966e-05, -3.773966097626814989e-05, -3.794086196159603163e-05, -3.814198557555468708e-05, -3.834303149718546350e-05, -3.854399940570866931e-05, -3.874488898046898444e-05, -3.894569990097298732e-05, -3.914643184687973586e-05, -3.934708449799301542e-05, -3.954765753429751726e-05, -3.974815063590513665e-05, -3.994856348309210682e-05, -4.014889575628979678e-05, -4.034914713608579549e-05, -4.054931730321494017e-05, -4.074940593859614519e-05, -4.094941272327888999e-05, -4.114933733847963470e-05, -4.134917946557324815e-05, -4.154893878608478829e-05, -4.174861498172559255e-05, -4.194820773434903562e-05, -4.214771672594242504e-05, -4.234714163870757775e-05, -4.254648215497218656e-05, -4.274573795722589020e-05, -4.294490872814773753e-05, -4.314399415056191143e-05, -4.334299390742934652e-05, -4.354190768192873269e-05, -4.374073515736752915e-05, -4.393947601721821746e-05, -4.413812994515459517e-05, -4.433669662495389954e-05, -4.453517574062275787e-05, -4.473356697629861324e-05, -4.493187001628713625e-05, -4.513008454508823231e-05, -4.532821024735299206e-05, -4.552624680787457727e-05, -4.572419391166916334e-05, -4.592205124388756322e-05, -4.611981848985079608e-05, -4.631749533508695691e-05, -4.651508146523331986e-05, -4.671257656616123835e-05, -4.690998032387925121e-05, -4.710729242457786710e-05, -4.730451255461233918e-05, -4.750164040054698190e-05, -4.769867564905912421e-05, -4.789561798706298650e-05, -4.809246710161285449e-05, -4.828922267993921032e-05, -4.848588440948418596e-05, -4.868245197781391898e-05, -4.887892507269877678e-05, -4.907530338210475747e-05, -4.927158659414965426e-05, -4.946777439713945750e-05, -4.966386647955918645e-05, -4.985986253006555055e-05, -5.005576223752168457e-05, -5.025156529094538469e-05, -5.044727137954507697e-05, -5.064288019271060158e-05, -5.083839142001465617e-05, -5.103380475120389861e-05, -5.122911987623475960e-05, -5.142433648522118405e-05, -5.161945426847058599e-05, -5.181447291647483611e-05, -5.200939211991156282e-05, -5.220421156963524824e-05, -5.239893095671312883e-05, -5.259354997237322146e-05, -5.278806830803901785e-05, -5.298248565532258641e-05, -5.317680170601507859e-05, -5.337101615212257541e-05, -5.356512868581462844e-05, -5.375913899945928637e-05, -5.395304678561425193e-05, -5.414685173702852856e-05, -5.434055354663363158e-05, -5.453415190757859437e-05, -5.472764651317867882e-05, -5.492103705695040866e-05, -5.511432323260395964e-05, -5.530750473404240743e-05, -5.550058125535485646e-05, -5.569355249085078879e-05, -5.588641813500879493e-05, -5.607917788251160033e-05, -5.627183142823809648e-05, -5.646437846725527041e-05, -5.665681869485270262e-05, -5.684915180649169092e-05, -5.704137749784023625e-05, -5.723349546476449784e-05, -5.742550540332993158e-05, -5.761740700979247416e-05, -5.780919998063413197e-05, -5.800088401251109524e-05, -5.819245880228945576e-05, -5.838392404703602500e-05, -5.857527944401136138e-05, -5.876652469070380740e-05, -5.895765948478721936e-05, -5.914868352411314071e-05, -5.933959650678818703e-05, -5.953039813108909200e-05, -5.972108809549673099e-05, -5.991166609872319908e-05, -6.010213183966912730e-05, -6.029248501741519200e-05, -6.048272533130031296e-05, -6.067285248083585907e-05, -6.086286616574129152e-05, -6.105276608597754362e-05, -6.124255194165463328e-05, -6.143222343315110818e-05, -6.162178026102080439e-05, -6.181122212602724265e-05, -6.200054872917005588e-05, -6.218975977164275940e-05, -6.237885495482430780e-05, -6.256783398035641204e-05, -6.275669655005914791e-05, -6.294544236596533876e-05, -6.313407113035465366e-05, -6.332258254566112499e-05, -6.351097631459223444e-05, -6.369925214003606471e-05, -6.388740972510419320e-05, -6.407544877311525282e-05, -6.426336898763752761e-05, -6.445117007239647023e-05, -6.463885173139403203e-05, -6.482641366881510990e-05, -6.501385558906266091e-05, -6.520117719679169202e-05, -6.538837819682531574e-05, -6.557545829423124060e-05, -6.576241719431324658e-05, -6.594925460257044624e-05, -6.613597022473056974e-05, -6.632256376674295815e-05, -6.650903493476932062e-05, -6.669538343521922851e-05, -6.688160897469871058e-05, -6.706771126003729033e-05, -6.725368999832137941e-05, -6.743954489681029262e-05, -6.762527566301330755e-05, -6.781088200468123495e-05, -6.799636362976440587e-05, -6.818172024644761006e-05, -6.836695156314157148e-05, -6.855205728848350391e-05, -6.873703713132937247e-05, -6.892189080078759875e-05, -6.910661800616933661e-05, -6.929121845702290912e-05, -6.947569186312494522e-05, -6.966003793447331888e-05, -6.984425638132025788e-05, -7.002834691412375802e-05, -7.021230924358047511e-05, -7.039614308061790515e-05, -7.057984813639568537e-05, -7.076342412229650052e-05, -7.094687074996070951e-05, -7.113018773123708205e-05, -7.131337477821516203e-05, -7.149643160321861324e-05, -7.167935791879733180e-05, -7.186215343776074477e-05, -7.204481787312830266e-05, -7.222735093816349638e-05, -7.240975234636576633e-05, -7.259202181147105806e-05, -7.277415904744416507e-05, -7.295616376851168862e-05, -7.313803568912197639e-05, -7.331977452393655733e-05, -7.350137998790520907e-05, -7.368285179618416845e-05, -7.386418966416926745e-05, -7.404539330752043613e-05, -7.422646244211413328e-05, -7.440739678407566919e-05, -7.458819604977211769e-05, -7.476885995580365607e-05, -7.494938821903741931e-05, -7.512978055656728972e-05, -7.531003668570533172e-05, -7.549015632405622238e-05, -7.567013918943646476e-05, -7.584998499990664291e-05, -7.602969347379661606e-05, -7.620926432965751556e-05, -7.638869728629433869e-05, -7.656799206275795267e-05, -7.674714837834632796e-05, -7.692616595259625764e-05, -7.710504450532435384e-05, -7.728378375653868521e-05, -7.746238342655249623e-05, -7.764084323589522129e-05, -7.781916290534587812e-05, -7.799734215595716417e-05, -7.817538070901597813e-05, -7.835327828603546457e-05, -7.853103460882840088e-05, -7.870864939942651909e-05, -7.888612238011358756e-05, -7.906345327345780155e-05, -7.924064180222388152e-05, -7.941768768948592500e-05, -7.959459065853953204e-05, -7.977135043293464298e-05, -7.994796673649907915e-05, -8.012443929330022991e-05, -8.030076782763621640e-05, -8.047695206410925136e-05, -8.065299172754554372e-05, -8.082888654302838025e-05, -8.100463623592933714e-05, -8.118024053183029863e-05, -8.135569915659459435e-05, -8.153101183635949112e-05, -8.170617829749778516e-05, -8.188119826664893219e-05, -8.205607147071205436e-05, -8.223079763683845925e-05, -8.240537649246380001e-05, -8.257980776526070927e-05, -8.275409118316277358e-05, -8.292822647439769643e-05, -8.310221336740699954e-05, -8.327605159091877281e-05, -8.344974087394047794e-05, -8.362328094571852121e-05, -8.379667153577124040e-05, -8.396991237388166766e-05, -8.414300319008870689e-05, -8.431594371472055419e-05, -8.448873367834737252e-05, -8.466137281181267929e-05, -8.483386084622647526e-05, -8.500619751296594926e-05, -8.517838254366702142e-05, -8.535041567025682856e-05, -8.552229662490707643e-05, -8.569402514006588809e-05, -8.586560094844983510e-05, -8.603702378304456085e-05, -8.620829337709860068e-05, -8.637940946415272308e-05, -8.655037177799545026e-05, -8.672118005269364624e-05, -8.689183402258606587e-05, -8.706233342227439654e-05, -8.723267798665671944e-05, -8.740286745087961487e-05, -8.757290155037083742e-05, -8.774278002083121157e-05, -8.791250259823568875e-05, -8.808206901882505320e-05, -8.825147901913842096e-05, -8.842073233596633454e-05, -8.858982870638251652e-05, -8.875876786773664602e-05, -8.892754955765431806e-05, -8.909617351403047061e-05, -8.926463947505933563e-05, -8.943294717919058310e-05, -8.960109636515825571e-05, -8.976908677197552398e-05, -8.993691813892572804e-05, -9.010459020559478179e-05, -9.027210271183250744e-05, -9.043945539774587289e-05, -9.060664800376722863e-05, -9.077368027057985023e-05, -9.094055193914717106e-05, -9.110726275073793585e-05, -9.127381244687879391e-05, -9.144020076938724534e-05, -9.160642746036257438e-05, -9.177249226218727244e-05, -9.193839491752023470e-05, -9.210413516933348751e-05, -9.226971276083109001e-05, -9.243512743555455928e-05, -9.260037893729976624e-05, -9.276546701014818774e-05, -9.293039139848993234e-05, -9.309515184698575259e-05, -9.325974810056078372e-05, -9.342417990447195392e-05, -9.358844700423377073e-05, -9.375254914564836698e-05, -9.391648607483598038e-05, -9.408025753815312344e-05, -9.424386328229701919e-05, -9.440730305422518048e-05, -9.457057660118400584e-05, -9.473368367074050595e-05, -9.489662401070691089e-05, -9.505939736920896138e-05, -9.522200349467819732e-05, -9.538444213581594882e-05, -9.554671304161519634e-05, -9.570881596139111812e-05, -9.587075064470756774e-05, -9.603251684144284450e-05, -9.619411430178471966e-05, -9.635554277619212346e-05, -9.651680201542580089e-05, -9.667789177054103404e-05, -9.683881179288146210e-05, -9.699956183410701315e-05, -9.716014164615251474e-05, -9.732055098124913395e-05, -9.748078959195331209e-05, -9.764085723107463811e-05, -9.780075365174226956e-05, -9.796047860739777685e-05, -9.812003185175874114e-05, -9.827941313884832599e-05, -9.843862222298932778e-05, -9.859765885879566471e-05, -9.875652280120341211e-05, -9.891521380542637727e-05, -9.907373162698621311e-05, -9.923207602170522183e-05, -9.939024674570719512e-05, -9.954824355540925560e-05, -9.970606620755331220e-05, -9.986371445916118771e-05, -1.000211880675645835e-04, -1.001784867903982625e-04, -1.003356103856003475e-04, -1.004925586114051788e-04, -1.006493312263735364e-04, -1.008059279893484047e-04, -1.009623486594851671e-04, -1.011185929962441394e-04, -1.012746607593843887e-04, -1.014305517089919372e-04, -1.015862656054381555e-04, -1.017418022094078705e-04, -1.018971612818929281e-04, -1.020523425841930878e-04, -1.022073458779081345e-04, -1.023621709249681829e-04, -1.025168174875888720e-04, -1.026712853283034716e-04, -1.028255742099540727e-04, -1.029796838956917098e-04, -1.031336141489709672e-04, -1.032873647335776931e-04, -1.034409354135870554e-04, -1.035943259533924217e-04, -1.037475361176986915e-04, -1.039005656715153981e-04, -1.040534143801847216e-04, -1.042060820093486102e-04, -1.043585683249392398e-04, -1.045108730932448786e-04, -1.046629960808391708e-04, -1.048149370546092572e-04, -1.049666957817784222e-04, -1.051182720298622376e-04, -1.052696655666992588e-04, -1.054208761604432325e-04, -1.055719035795560628e-04, -1.057227475928367862e-04, -1.058734079693872165e-04, -1.060238844786045177e-04, -1.061741768902446295e-04, -1.063242849743535704e-04, -1.064742085012949620e-04, -1.066239472417706836e-04, -1.067735009667879529e-04, -1.069228694476519399e-04, -1.070720524560281084e-04, -1.072210497638738846e-04, -1.073698611434668865e-04, -1.075184863674319207e-04, -1.076669252086664844e-04, -1.078151774404370421e-04, -1.079632428363037417e-04, -1.081111211701486037e-04, -1.082588122162019483e-04, -1.084063157489765578e-04, -1.085536315433274698e-04, -1.087007593744468003e-04, -1.088476990178287513e-04, -1.089944502492926363e-04, -1.091410128450065296e-04, -1.092873865814175519e-04, -1.094335712353437161e-04, -1.095795665839011362e-04, -1.097253724045380583e-04, -1.098709884750283277e-04, -1.100164145734714978e-04, -1.101616504782876527e-04, -1.103066959682423169e-04, -1.104515508224083997e-04, -1.105962148201869850e-04, -1.107406877413316849e-04, -1.108849693658862034e-04, -1.110290594742411349e-04, -1.111729578471294379e-04, -1.113166642655925398e-04, -1.114601785110087433e-04, -1.116035003650854470e-04, -1.117466296098534401e-04, -1.118895660276937631e-04, -1.120323094012980262e-04, -1.121748595136890365e-04, -1.123172161482469133e-04, -1.124593790886444021e-04, -1.126013481189052046e-04, -1.127431230233988965e-04, -1.128847035868078732e-04, -1.130260895941538987e-04, -1.131672808307915870e-04, -1.133082770824105166e-04, -1.134490781350257026e-04, -1.135896837750069519e-04, -1.137300937890388559e-04, -1.138703079641475567e-04, -1.140103260876939033e-04, -1.141501479473683420e-04, -1.142897733312154602e-04, -1.144292020275979775e-04, -1.145684338252205708e-04, -1.147074685131248463e-04, -1.148463058806891226e-04, -1.149849457176237285e-04, -1.151233878139947464e-04, -1.152616319601876374e-04, -1.153996779469324631e-04, -1.155375255652981250e-04, -1.156751746066858599e-04, -1.158126248628551385e-04, -1.159498761258860030e-04, -1.160869281882051556e-04, -1.162237808425792366e-04, -1.163604338821152580e-04, -1.164968871002547353e-04, -1.166331402907991798e-04, -1.167691932478791988e-04, -1.169050457659479768e-04, -1.170406976398390906e-04, -1.171761486647025281e-04, -1.173113986360313049e-04, -1.174464473496803841e-04, -1.175812946018287561e-04, -1.177159401890056224e-04, -1.178503839080841879e-04, -1.179846255562753867e-04, -1.181186649311531439e-04, -1.182525018306239092e-04, -1.183861360529208295e-04, -1.185195673966593551e-04, -1.186527956607760499e-04, -1.187858206445532703e-04, -1.189186421476381934e-04, -1.190512599700065095e-04, -1.191836739119864506e-04, -1.193158837742536681e-04, -1.194478893578311101e-04, -1.195796904640841567e-04, -1.197112868947493238e-04, -1.198426784518701732e-04, -1.199738649378805392e-04, -1.201048461555401128e-04, -1.202356219079560177e-04, -1.203661919986111212e-04, -1.204965562313007715e-04, -1.206267144101883762e-04, -1.207566663398002932e-04, -1.208864118249954728e-04, -1.210159506709840386e-04, -1.211452826833507465e-04, -1.212744076679914238e-04, -1.214033254311936333e-04, -1.215320357795746982e-04, -1.216605385201103515e-04, -1.217888334601276488e-04, -1.219169204073082877e-04, -1.220447991696810465e-04, -1.221724695556449447e-04, -1.222999313739360668e-04, -1.224271844336450991e-04, -1.225542285442392579e-04, -1.226810635155066291e-04, -1.228076891576071255e-04, -1.229341052810681506e-04, -1.230603116967546470e-04, -1.231863082158941142e-04, -1.233120946500681527e-04, -1.234376708112114329e-04, -1.235630365116314284e-04, -1.236881915639749681e-04, -1.238131357812472910e-04, -1.239378689768326188e-04, -1.240623909644396751e-04, -1.241867015581522903e-04, -1.243108005724234656e-04, -1.244346878220481325e-04, -1.245583631221858667e-04, -1.246818262883552235e-04, -1.248050771364342252e-04, -1.249281154826552384e-04, -1.250509411436268752e-04, -1.251735539363018734e-04, -1.252959536779981841e-04, -1.254181401863951775e-04, -1.255401132795276251e-04, -1.256618727758086577e-04, -1.257834184939955594e-04, -1.259047502532135922e-04, -1.260258678729493556e-04, -1.261467711730529821e-04, -1.262674599737307105e-04, -1.263879340955691448e-04, -1.265081933595006681e-04, -1.266282375868270241e-04, -1.267480665992141130e-04, -1.268676802186849168e-04, -1.269870782676446803e-04, -1.271062605688458638e-04, -1.272252269454113456e-04, -1.273439772208281601e-04, -1.274625112189503985e-04, -1.275808287639909144e-04, -1.276989296805446615e-04, -1.278168137935624014e-04, -1.279344809283440630e-04, -1.280519309105896460e-04, -1.281691635663434112e-04, -1.282861787220170556e-04, -1.284029762044060566e-04, -1.285195558406564955e-04, -1.286359174582885035e-04, -1.287520608851898374e-04, -1.288679859496110283e-04, -1.289836924801875530e-04, -1.290991803059131631e-04, -1.292144492561340843e-04, -1.293294991605982392e-04, -1.294443298494023383e-04, -1.295589411530112599e-04, -1.296733329022828243e-04, -1.297875049284076207e-04, -1.299014570629834645e-04, -1.300151891379577179e-04, -1.301287009856548829e-04, -1.302419924387645124e-04, -1.303550633303696431e-04, -1.304679134938875173e-04, -1.305805427631442027e-04, -1.306929509723174824e-04, -1.308051379559574813e-04, -1.309171035490081609e-04, -1.310288475867543831e-04, -1.311403699048705905e-04, -1.312516703394145455e-04, -1.313627487268026375e-04, -1.314736049038251430e-04, -1.315842387076659851e-04, -1.316946499758496621e-04, -1.318048385463094707e-04, -1.319148042573333498e-04, -1.320245469475846438e-04, -1.321340664561224847e-04, -1.322433626223508082e-04, -1.323524352860642962e-04, -1.324612842874453415e-04, -1.325699094670348553e-04, -1.326783106657521084e-04, -1.327864877249128643e-04, -1.328944404861798310e-04, -1.330021687916068697e-04, -1.331096724836362572e-04, -1.332169514050725832e-04, -1.333240053991041640e-04, -1.334308343092955880e-04, -1.335374379795864421e-04, -1.336438162543087402e-04, -1.337499689781584901e-04, -1.338558959962113327e-04, -1.339615971539408386e-04, -1.340670722971714257e-04, -1.341723212721216470e-04, -1.342773439253989857e-04, -1.343821401039770871e-04, -1.344867096552147324e-04, -1.345910524268509052e-04, -1.346951682669999672e-04, -1.347990570241734503e-04, -1.349027185472483168e-04, -1.350061526854868816e-04, -1.351093592885355653e-04, -1.352123382064200966e-04, -1.353150892895445094e-04, -1.354176123887098997e-04, -1.355199073550845013e-04, -1.356219740402248280e-04, -1.357238122960699271e-04, -1.358254219749411087e-04, -1.359268029295401293e-04, -1.360279550129644521e-04, -1.361288780786826626e-04, -1.362295719805507320e-04, -1.363300365728096586e-04, -1.364302717100797759e-04, -1.365302772473798347e-04, -1.366300530400999251e-04, -1.367295989440184983e-04, -1.368289148153005778e-04, -1.369280005104958349e-04, -1.370268558865349296e-04, -1.371254808007485654e-04, -1.372238751108385954e-04, -1.373220386748991639e-04, -1.374199713514089277e-04, -1.375176729992347692e-04, -1.376151434776247493e-04, -1.377123826462283546e-04, -1.378093903650681458e-04, -1.379061664945579178e-04, -1.380027108955004503e-04, -1.380990234290809752e-04, -1.381951039568861503e-04, -1.382909523408818603e-04, -1.383865684434090965e-04, -1.384819521272239102e-04, -1.385771032554536646e-04, -1.386720216916140301e-04, -1.387667072996281472e-04, -1.388611599437770516e-04, -1.389553794887624495e-04, -1.390493657996578743e-04, -1.391431187419273617e-04, -1.392366381814371594e-04, -1.393299239844359675e-04, -1.394229760175484060e-04, -1.395157941478182475e-04, -1.396083782426602515e-04, -1.397007281698818754e-04, -1.397928437976976677e-04, -1.398847249946892602e-04, -1.399763716298410121e-04, -1.400677835725388707e-04, -1.401589606925472242e-04, -1.402499028600231047e-04, -1.403406099455321800e-04, -1.404310818200031087e-04, -1.405213183547871175e-04, -1.406113194216110276e-04, -1.407010848925943853e-04, -1.407906146402674327e-04, -1.408799085375284446e-04, -1.409689664576806720e-04, -1.410577882744309334e-04, -1.411463738618665750e-04, -1.412347230944689691e-04, -1.413228358471311054e-04, -1.414107119951096695e-04, -1.414983514140872212e-04, -1.415857539801224573e-04, -1.416729195696736574e-04, -1.417598480595948891e-04, -1.418465393271348693e-04, -1.419329932499338207e-04, -1.420192097060396529e-04, -1.421051885738835953e-04, -1.421909297322974356e-04, -1.422764330605085057e-04, -1.423616984381406844e-04, -1.424467257452100336e-04, -1.425315148621415491e-04, -1.426160656697446035e-04, -1.427003780492293447e-04, -1.427844518822039583e-04, -1.428682870506681082e-04, -1.429518834370325879e-04, -1.430352409240924049e-04, -1.431183593950458900e-04, -1.432012387334870805e-04, -1.432838788234100033e-04, -1.433662795492014373e-04, -1.434484407956593721e-04, -1.435303624479680176e-04, -1.436120443917137410e-04, -1.436934865128826821e-04, -1.437746886978593709e-04, -1.438556508334236372e-04, -1.439363728067657902e-04, -1.440168545054652588e-04, -1.440970958175027353e-04, -1.441770966312605007e-04, -1.442568568355160545e-04, -1.443363763194592455e-04, -1.444156549726670639e-04, -1.444946926851219918e-04, -1.445734893472065273e-04, -1.446520448497034834e-04, -1.447303590837932497e-04, -1.448084319410676980e-04, -1.448862633135090125e-04, -1.449638530935044357e-04, -1.450412011738418225e-04, -1.451183074477112127e-04, -1.451951718087005213e-04, -1.452717941508132921e-04, -1.453481743684302899e-04, -1.454243123563593197e-04, -1.455002080097966561e-04, -1.455758612243399455e-04, -1.456512718960002132e-04, -1.457264399211841100e-04, -1.458013651966903886e-04, -1.458760476197422124e-04, -1.459504870879506995e-04, -1.460246834993314839e-04, -1.460986367523158013e-04, -1.461723467457160116e-04, -1.462458133787699157e-04, -1.463190365511070096e-04, -1.463920161627597059e-04, -1.464647521141748264e-04, -1.465372443061968783e-04, -1.466094926400631209e-04, -1.466814970174372575e-04, -1.467532573403724366e-04, -1.468247735113268650e-04, -1.468960454331772782e-04, -1.469670730091846532e-04, -1.470378561430247828e-04, -1.471083947387860798e-04, -1.471786887009515256e-04, -1.472487379344091321e-04, -1.473185423444667687e-04, -1.473881018368134832e-04, -1.474574163175676131e-04, -1.475264856932400313e-04, -1.475953098707487288e-04, -1.476638887574285451e-04, -1.477322222610029791e-04, -1.478003102896106435e-04, -1.478681527518026088e-04, -1.479357495565283083e-04, -1.480031006131421792e-04, -1.480702058314196001e-04, -1.481370651215191880e-04, -1.482036783940300423e-04, -1.482700455599348006e-04, -1.483361665306264442e-04, -1.484020412179062919e-04, -1.484676695339818859e-04, -1.485330513914660702e-04, -1.485981867033885648e-04, -1.486630753831766664e-04, -1.487277173446704818e-04, -1.487921125021158533e-04, -1.488562607701683974e-04, -1.489201620638881381e-04, -1.489838162987526797e-04, -1.490472233906392908e-04, -1.491103832558364776e-04, -1.491732958110407860e-04, -1.492359609733558525e-04, -1.492983786603018642e-04, -1.493605487897995397e-04, -1.494224712801815399e-04, -1.494841460501895143e-04, -1.495455730189749945e-04, -1.496067521060951940e-04, -1.496676832315252587e-04, -1.497283663156426009e-04, -1.497888012792356809e-04, -1.498489880435028958e-04, -1.499089265300527422e-04, -1.499686166609011601e-04, -1.500280583584824828e-04, -1.500872515456319275e-04, -1.501461961455984701e-04, -1.502048920820412130e-04, -1.502633392790267018e-04, -1.503215376610405533e-04, -1.503794871529702439e-04, -1.504371876801169003e-04, -1.504946391681926971e-04, -1.505518415433200713e-04, -1.506087947320301497e-04, -1.506654986612727238e-04, -1.507219532584009084e-04, -1.507781584511817938e-04, -1.508341141677935454e-04, -1.508898203368228019e-04, -1.509452768872762761e-04, -1.510004837485661453e-04, -1.510554408505084521e-04, -1.511101481233471737e-04, -1.511646054977269814e-04, -1.512188129047048956e-04, -1.512727702757579295e-04, -1.513264775427685879e-04, -1.513799346380246505e-04, -1.514331414942414792e-04, -1.514860980445365121e-04, -1.515388042224394282e-04, -1.515912599619019595e-04, -1.516434651972714358e-04, -1.516954198633240706e-04, -1.517471238952407828e-04, -1.517985772286131057e-04, -1.518497797994532974e-04, -1.519007315441827126e-04, -1.519514323996261644e-04, -1.520018823030386507e-04, -1.520520811920758359e-04, -1.521020290048081191e-04, -1.521517256797290634e-04, -1.522011711557268545e-04, -1.522503653721211090e-04, -1.522993082686357970e-04, -1.523479997854091620e-04, -1.523964398629914715e-04, -1.524446284423562115e-04, -1.524925654648731708e-04, -1.525402508723438133e-04, -1.525876846069720318e-04, -1.526348666113765075e-04, -1.526817968286000346e-04, -1.527284752020838785e-04, -1.527749016756912493e-04, -1.528210761937029644e-04, -1.528669987008088836e-04, -1.529126691421131134e-04, -1.529580874631361208e-04, -1.530032536098091772e-04, -1.530481675284843870e-04, -1.530928291659225447e-04, -1.531372384692986370e-04, -1.531813953862100016e-04, -1.532252998646570013e-04, -1.532689518530594495e-04, -1.533123513002578573e-04, -1.533554981554998808e-04, -1.533983923684499704e-04, -1.534410338891884764e-04, -1.534834226682090473e-04, -1.535255586564200387e-04, -1.535674418051493110e-04, -1.536090720661344720e-04, -1.536504493915298965e-04, -1.536915737339054260e-04, -1.537324450462432236e-04, -1.537730632819479392e-04, -1.538134283948321536e-04, -1.538535403391262722e-04, -1.538933990694765460e-04, -1.539330045409433641e-04, -1.539723567090016333e-04, -1.540114555295477982e-04, -1.540503009588861259e-04, -1.540888929537405241e-04, -1.541272314712488760e-04, -1.541653164689633384e-04, -1.542031479048575787e-04, -1.542407257373148218e-04, -1.542780499251367675e-04, -1.543151204275401754e-04, -1.543519372041566749e-04, -1.543885002150334159e-04, -1.544248094206383001e-04, -1.544608647818494914e-04, -1.544966662599625985e-04, -1.545322138166899161e-04, -1.545675074141590155e-04, -1.546025470149121753e-04, -1.546373325819123447e-04, -1.546718640785342525e-04, -1.547061414685693952e-04, -1.547401647162256842e-04, -1.547739337861255211e-04, -1.548074486433131166e-04, -1.548407092532443259e-04, -1.548737155817872177e-04, -1.549064675952355728e-04, -1.549389652602921059e-04, -1.549712085440776272e-04, -1.550031974141324518e-04, -1.550349318384083765e-04, -1.550664117852772455e-04, -1.550976372235238481e-04, -1.551286081223518282e-04, -1.551593244513793201e-04, -1.551897861806461588e-04, -1.552199932805983481e-04, -1.552499457221094472e-04, -1.552796434764619764e-04, -1.553090865153568224e-04, -1.553382748109144039e-04, -1.553672083356691153e-04, -1.553958870625671848e-04, -1.554243109649807429e-04, -1.554524800166917208e-04, -1.554803941918990343e-04, -1.555080534652247088e-04, -1.555354578116957738e-04, -1.555626072067661087e-04, -1.555895016263016443e-04, -1.556161410465851328e-04, -1.556425254443143862e-04, -1.556686547966107869e-04, -1.556945290810003691e-04, -1.557201482754379143e-04, -1.557455123582872467e-04, -1.557706213083293371e-04, -1.557954751047678596e-04, -1.558200737272145281e-04, -1.558444171557015097e-04, -1.558685053706804224e-04, -1.558923383530152335e-04, -1.559159160839878157e-04, -1.559392385452974599e-04, -1.559623057190580558e-04, -1.559851175878031876e-04, -1.560076741344804422e-04, -1.560299753424538216e-04, -1.560520211955079709e-04, -1.560738116778380413e-04, -1.560953467740581200e-04, -1.561166264692013649e-04, -1.561376507487148286e-04, -1.561584195984628729e-04, -1.561789330047260306e-04, -1.561991909542011410e-04, -1.562191934340014584e-04, -1.562389404316590102e-04, -1.562584319351192842e-04, -1.562776679327457284e-04, -1.562966484133179615e-04, -1.563153733660299573e-04, -1.563338427804978508e-04, -1.563520566467480662e-04, -1.563700149552264243e-04, -1.563877176967944831e-04, -1.564051648627298632e-04, -1.564223564447256244e-04, -1.564392924348943857e-04, -1.564559728257623890e-04, -1.564723976102725626e-04, -1.564885667817840324e-04, -1.565044803340714995e-04, -1.565201382613284377e-04, -1.565355405581625946e-04, -1.565506872195968047e-04, -1.565655782410716726e-04, -1.565802136184446514e-04, -1.565945933479860586e-04, -1.566087174263863942e-04, -1.566225858507501066e-04, -1.566361986185954840e-04, -1.566495557278609974e-04, -1.566626571768980902e-04, -1.566755029644747836e-04, -1.566880930897763809e-04, -1.567004275524026217e-04, -1.567125063523689289e-04, -1.567243294901070588e-04, -1.567358969664636649e-04, -1.567472087827030084e-04, -1.567582649405041659e-04, -1.567690654419593766e-04, -1.567796102895804660e-04, -1.567898994862933161e-04, -1.567999330354365379e-04, -1.568097109407697108e-04, -1.568192332064637605e-04, -1.568284998371060007e-04, -1.568375108376997263e-04, -1.568462662136621262e-04, -1.568547659708274008e-04, -1.568630101154455420e-04, -1.568709986541782402e-04, -1.568787315941061488e-04, -1.568862089427226227e-04, -1.568934307079376486e-04, -1.569003968980757849e-04, -1.569071075218766498e-04, -1.569135625884928071e-04, -1.569197621074954580e-04, -1.569257060888675566e-04, -1.569313945430081739e-04, -1.569368274807312778e-04, -1.569420049132643782e-04, -1.569469268522513184e-04, -1.569515933097491856e-04, -1.569560042982299369e-04, -1.569601598305806704e-04, -1.569640599201019174e-04, -1.569677045805087541e-04, -1.569710938259317773e-04, -1.569742276709140683e-04, -1.569771061304144999e-04, -1.569797292198056495e-04, -1.569820969548728774e-04, -1.569842093518173352e-04, -1.569860664272537166e-04, -1.569876681982107719e-04, -1.569890146821295736e-04, -1.569901058968673109e-04, -1.569909418606932512e-04, -1.569915225922911524e-04, -1.569918481107580161e-04, -1.569919184356041416e-04, -1.569917335867547796e-04, -1.569912935845466085e-04, -1.569905984497310138e-04, -1.569896482034717304e-04, -1.569884428673469295e-04, -1.569869824633466433e-04, -1.569852670138750426e-04, -1.569832965417485384e-04, -1.569810710701967046e-04, -1.569785906228625210e-04, -1.569758552238014523e-04, -1.569728648974816375e-04, -1.569696196687829417e-04, -1.569661195629996387e-04, -1.569623646058377557e-04, -1.569583548234151265e-04, -1.569540902422624493e-04, -1.569495708893232054e-04, -1.569447967919528726e-04, -1.569397679779181666e-04, -1.569344844753986674e-04, -1.569289463129856809e-04, -1.569231535196832956e-04, -1.569171061249058894e-04, -1.569108041584808670e-04, -1.569042476506466810e-04, -1.568974366320533475e-04, -1.568903711337630148e-04, -1.568830511872481746e-04, -1.568754768243933696e-04, -1.568676480774952478e-04, -1.568595649792592285e-04, -1.568512275628048693e-04, -1.568426358616591978e-04, -1.568337899097638135e-04, -1.568246897414684639e-04, -1.568153353915350287e-04, -1.568057268951353518e-04, -1.567958642878516744e-04, -1.567857476056776656e-04, -1.567753768850169041e-04, -1.567647521626830951e-04, -1.567538734758992846e-04, -1.567427408623001898e-04, -1.567313543599301127e-04, -1.567197140072429395e-04, -1.567078198431019244e-04, -1.566956719067810169e-04, -1.566832702379634262e-04, -1.566706148767412952e-04, -1.566577058636170559e-04, -1.566445432395025352e-04, -1.566311270457177351e-04, -1.566174573239925672e-04, -1.566035341164656602e-04, -1.565893574656853087e-04, -1.565749274146084158e-04, -1.565602440065990840e-04, -1.565453072854327079e-04, -1.565301172952900653e-04, -1.565146740807632259e-04, -1.564989776868520551e-04, -1.564830281589626147e-04, -1.564668255429112014e-04, -1.564503698849212569e-04, -1.564336612316234493e-04, -1.564166996300583022e-04, -1.563994851276715868e-04, -1.563820177723187403e-04, -1.563642976122610166e-04, -1.563463246961673838e-04, -1.563280990731150935e-04, -1.563096207925877292e-04, -1.562908899044755315e-04, -1.562719064590760215e-04, -1.562526705070943261e-04, -1.562331820996393564e-04, -1.562134412882318303e-04, -1.561934481247927262e-04, -1.561732026616541519e-04, -1.561527049515513217e-04, -1.561319550476279229e-04, -1.561109530034323755e-04, -1.560896988729194314e-04, -1.560681927104481416e-04, -1.560464345707841870e-04, -1.560244245091007458e-04, -1.560021625809712839e-04, -1.559796488423806132e-04, -1.559568833497148362e-04, -1.559338661597653301e-04, -1.559105973297292616e-04, -1.558870769172081511e-04, -1.558633049802083054e-04, -1.558392815771410353e-04, -1.558150067668204327e-04, -1.557904806084663249e-04, -1.557657031617018626e-04, -1.557406744865552813e-04, -1.557153946434572996e-04, -1.556898636932439652e-04, -1.556640816971518841e-04, -1.556380487168243195e-04, -1.556117648143063941e-04, -1.555852300520471230e-04, -1.555584444928982213e-04, -1.555314082001149980e-04, -1.555041212373533481e-04, -1.554765836686741157e-04, -1.554487955585394355e-04, -1.554207569718153346e-04, -1.553924679737691574e-04, -1.553639286300690509e-04, -1.553351390067869188e-04, -1.553060991703958198e-04, -1.552768091877715123e-04, -1.552472691261894730e-04, -1.552174790533292334e-04, -1.551874390372675228e-04, -1.551571491464859385e-04, -1.551266094498657689e-04, -1.550958200166891864e-04, -1.550647809166387861e-04, -1.550334922197994293e-04, -1.550019539966524700e-04, -1.549701663180829650e-04, -1.549381292553755538e-04, -1.549058428802143499e-04, -1.548733072646842426e-04, -1.548405224812668033e-04, -1.548074886028449752e-04, -1.547742057027052956e-04, -1.547406738545255636e-04, -1.547068931323884462e-04, -1.546728636107746210e-04, -1.546385853645602828e-04, -1.546040584690240550e-04, -1.545692829998410807e-04, -1.545342590330859775e-04, -1.544989866452321054e-04, -1.544634659131462271e-04, -1.544276969140973173e-04, -1.543916797257542856e-04, -1.543554144261770594e-04, -1.543189010938271542e-04, -1.542821398075636900e-04, -1.542451306466385928e-04, -1.542078736907035613e-04, -1.541703690198117200e-04, -1.541326167144038771e-04, -1.540946168553224561e-04, -1.540563695238064278e-04, -1.540178748014861326e-04, -1.539791327703959661e-04, -1.539401435129580074e-04, -1.539009071119934577e-04, -1.538614236507218809e-04, -1.538216932127488442e-04, -1.537817158820869784e-04, -1.537414917431372484e-04, -1.537010208806936426e-04, -1.536603033799480514e-04, -1.536193393264880446e-04, -1.535781288062882798e-04, -1.535366719057292310e-04, -1.534949687115734723e-04, -1.534530193109841093e-04, -1.534108237915161052e-04, -1.533683822411176635e-04, -1.533256947481307427e-04, -1.532827614012914088e-04, -1.532395822897237637e-04, -1.531961575029493509e-04, -1.531524871308833605e-04, -1.531085712638249256e-04, -1.530644099924762587e-04, -1.530200034079269036e-04, -1.529753516016540060e-04, -1.529304546655322347e-04, -1.528853126918247010e-04, -1.528399257731875393e-04, -1.527942940026685251e-04, -1.527484174737010303e-04, -1.527022962801150279e-04, -1.526559305161303431e-04, -1.526093202763506356e-04, -1.525624656557801780e-04, -1.525153667498078090e-04, -1.524680236542086420e-04, -1.524204364651528731e-04, -1.523726052791977319e-04, -1.523245301932904896e-04, -1.522762113047666430e-04, -1.522276487113537094e-04, -1.521788425111606012e-04, -1.521297928026913685e-04, -1.520804996848363082e-04, -1.520309632568733467e-04, -1.519811836184712110e-04, -1.519311608696788851e-04, -1.518808951109405986e-04, -1.518303864430848497e-04, -1.517796349673274407e-04, -1.517286407852704206e-04, -1.516774039989065583e-04, -1.516259247106066564e-04, -1.515742030231353543e-04, -1.515222390396413698e-04, -1.514700328636591528e-04, -1.514175845991106741e-04, -1.513648943502977006e-04, -1.513119622219128541e-04, -1.512587883190328892e-04, -1.512053727471183138e-04, -1.511517156120152053e-04, -1.510978170199564572e-04, -1.510436770775526450e-04, -1.509892958918016752e-04, -1.509346735700935833e-04, -1.508798102201881720e-04, -1.508247059502368847e-04, -1.507693608687765176e-04, -1.507137750847177809e-04, -1.506579487073634867e-04, -1.506018818463946980e-04, -1.505455746118761228e-04, -1.504890271142567918e-04, -1.504322394643610320e-04, -1.503752117733990923e-04, -1.503179441529706943e-04, -1.502604367150423448e-04, -1.502026895719714059e-04, -1.501447028364960655e-04, -1.500864766217285069e-04, -1.500280110411680824e-04, -1.499693062086923136e-04, -1.499103622385591689e-04, -1.498511792454063584e-04, -1.497917573442540716e-04, -1.497320966504919130e-04, -1.496721972799048140e-04, -1.496120593486422693e-04, -1.495516829732394782e-04, -1.494910682706124391e-04, -1.494302153580442613e-04, -1.493691243532124053e-04, -1.493077953741633131e-04, -1.492462285393179639e-04, -1.491844239674807652e-04, -1.491223817778341047e-04, -1.490601020899271552e-04, -1.489975850237041191e-04, -1.489348306994673645e-04, -1.488718392379064827e-04, -1.488086107600841929e-04, -1.487451453874395681e-04, -1.486814432417867882e-04, -1.486175044453187991e-04, -1.485533291205956303e-04, -1.484889173905603872e-04, -1.484242693785307941e-04, -1.483593852081878915e-04, -1.482942650036053094e-04, -1.482289088892196959e-04, -1.481633169898385232e-04, -1.480974894306501439e-04, -1.480314263372128675e-04, -1.479651278354597848e-04, -1.478985940516987956e-04, -1.478318251126024710e-04, -1.477648211452234491e-04, -1.476975822769872795e-04, -1.476301086356803069e-04, -1.475624003494774815e-04, -1.474944575469167983e-04, -1.474262803569013848e-04, -1.473578689087150857e-04, -1.472892233320082607e-04, -1.472203437568030148e-04, -1.471512303134909496e-04, -1.470818831328372554e-04, -1.470123023459682431e-04, -1.469424880843877700e-04, -1.468724404799671296e-04, -1.468021596649467860e-04, -1.467316457719373773e-04, -1.466608989339113125e-04, -1.465899192842175713e-04, -1.465187069565694795e-04, -1.464472620850495337e-04, -1.463755848041069078e-04, -1.463036752485619792e-04, -1.462315335535924784e-04, -1.461591598547524085e-04, -1.460865542879594408e-04, -1.460137169894976800e-04, -1.459406480960205642e-04, -1.458673477445380986e-04, -1.457938160724344193e-04, -1.457200532174570599e-04, -1.456460593177183341e-04, -1.455718345116954434e-04, -1.454973789382332425e-04, -1.454226927365317437e-04, -1.453477760461641686e-04, -1.452726290070648595e-04, -1.451972517595314478e-04, -1.451216444442253418e-04, -1.450458072021734073e-04, -1.449697401747569627e-04, -1.448934435037281781e-04, -1.448169173311996121e-04, -1.447401617996456758e-04, -1.446631770519038798e-04, -1.445859632311667295e-04, -1.445085204809925942e-04, -1.444308489453098815e-04, -1.443529487683903659e-04, -1.442748200948775947e-04, -1.441964630697763715e-04, -1.441178778384379295e-04, -1.440390645465957102e-04, -1.439600233403211282e-04, -1.438807543660559885e-04, -1.438012577705990427e-04, -1.437215337011101359e-04, -1.436415823050953260e-04, -1.435614037304410633e-04, -1.434809981253683286e-04, -1.434003656384695233e-04, -1.433195064186942392e-04, -1.432384206153354349e-04, -1.431571083780625855e-04, -1.430755698568925713e-04, -1.429938052021913588e-04, -1.429118145646907784e-04, -1.428295980954784143e-04, -1.427471559459829952e-04, -1.426644882680135605e-04, -1.425815952137087200e-04, -1.424984769355764171e-04, -1.424151335864787227e-04, -1.423315653196170630e-04, -1.422477722885678354e-04, -1.421637546472514005e-04, -1.420795125499327597e-04, -1.419950461512412606e-04, -1.419103556061587247e-04, -1.418254410700054075e-04, -1.417403026984739877e-04, -1.416549406475992642e-04, -1.415693550737598090e-04, -1.414835461336969957e-04, -1.413975139844978954e-04, -1.413112587836018637e-04, -1.412247806888014621e-04, -1.411380798582285805e-04, -1.410511564503757955e-04, -1.409640106240853390e-04, -1.408766425385339735e-04, -1.407890523532688250e-04, -1.407012402281757784e-04, -1.406132063234807785e-04, -1.405249507997694274e-04, -1.404364738179712628e-04, -1.403477755393626591e-04, -1.402588561255727626e-04, -1.401697157385640579e-04, -1.400803545406588218e-04, -1.399907726945207194e-04, -1.399009703631599270e-04, -1.398109477099324538e-04, -1.397207048985436395e-04, -1.396302420930320800e-04, -1.395395594577932366e-04, -1.394486571575629286e-04, -1.393575353574209386e-04, -1.392661942227921236e-04, -1.391746339194480412e-04, -1.390828546134925843e-04, -1.389908564713839088e-04, -1.388986396599185770e-04, -1.388062043462371146e-04, -1.387135506978249861e-04, -1.386206788824980666e-04, -1.385275890684257083e-04, -1.384342814241149380e-04, -1.383407561184134662e-04, -1.382470133205088733e-04, -1.381530531999353053e-04, -1.380588759265527921e-04, -1.379644816705739190e-04, -1.378698706025469403e-04, -1.377750428933595471e-04, -1.376799987142381077e-04, -1.375847382367511923e-04, -1.374892616327937154e-04, -1.373935690746107892e-04, -1.372976607347812432e-04, -1.372015367862209853e-04, -1.371051974021872573e-04, -1.370086427562616403e-04, -1.369118730223706270e-04, -1.368148883747886848e-04, -1.367176889881015830e-04, -1.366202750372469952e-04, -1.365226466974979122e-04, -1.364248041444458630e-04, -1.363267475540452865e-04, -1.362284771025567729e-04, -1.361299929665906762e-04, -1.360312953230910136e-04, -1.359323843493226989e-04, -1.358332602228923052e-04, -1.357339231217513718e-04, -1.356343732241588362e-04, -1.355346107087223423e-04, -1.354346357543809751e-04, -1.353344485403887255e-04, -1.352340492463559622e-04, -1.351334380522112397e-04, -1.350326151382047685e-04, -1.349315806849296379e-04, -1.348303348733089955e-04, -1.347288778845789166e-04, -1.346272099003335615e-04, -1.345253311024662761e-04, -1.344232416732163752e-04, -1.343209417951515242e-04, -1.342184316511492535e-04, -1.341157114244415733e-04, -1.340127812985739098e-04, -1.339096414574103089e-04, -1.338062920851544157e-04, -1.337027333663363558e-04, -1.335989654857943037e-04, -1.334949886287227028e-04, -1.333908029806110890e-04, -1.332864087272910101e-04, -1.331818060549149374e-04, -1.330769951499582722e-04, -1.329719761992215676e-04, -1.328667493898335922e-04, -1.327613149092321933e-04, -1.326556729451919172e-04, -1.325498236858062013e-04, -1.324437673194899488e-04, -1.323375040349799084e-04, -1.322310340213396886e-04, -1.321243574679403776e-04, -1.320174745644876757e-04, -1.319103855010032194e-04, -1.318030904678293524e-04, -1.316955896556325407e-04, -1.315878832553854017e-04, -1.314799714583932946e-04, -1.313718544562765393e-04, -1.312635324409742110e-04, -1.311550056047422973e-04, -1.310462741401612606e-04, -1.309373382401138926e-04, -1.308281980978151580e-04, -1.307188539067915124e-04, -1.306093058608864051e-04, -1.304995541542596556e-04, -1.303895989813917634e-04, -1.302794405370639313e-04, -1.301690790163880982e-04, -1.300585146147854171e-04, -1.299477475279915142e-04, -1.298367779520615841e-04, -1.297256060833501155e-04, -1.296142321185391345e-04, -1.295026562546196106e-04, -1.293908786888955497e-04, -1.292788996189825031e-04, -1.291667192428138560e-04, -1.290543377586195228e-04, -1.289417553649567928e-04, -1.288289722606871283e-04, -1.287159886449844586e-04, -1.286028047173325779e-04, -1.284894206775305666e-04, -1.283758367256668243e-04, -1.282620530621737679e-04, -1.281480698877590391e-04, -1.280338874034580882e-04, -1.279195058106145770e-04, -1.278049253108654438e-04, -1.276901461061652715e-04, -1.275751683987910842e-04, -1.274599923912961611e-04, -1.273446182865609934e-04, -1.272290462877714108e-04, -1.271132765984004482e-04, -1.269973094222595471e-04, -1.268811449634332322e-04, -1.267647834263281180e-04, -1.266482250156561842e-04, -1.265314699364188382e-04, -1.264145183939305783e-04, -1.262973705938249831e-04, -1.261800267420078202e-04, -1.260624870447076787e-04, -1.259447517084561548e-04, -1.258268209400656261e-04, -1.257086949466810490e-04, -1.255903739357325797e-04, -1.254718581149419430e-04, -1.253531476923460959e-04, -1.252342428762820209e-04, -1.251151438753665874e-04, -1.249958508985510059e-04, -1.248763641550504084e-04, -1.247566838543984387e-04, -1.246368102064274381e-04, -1.245167434212471954e-04, -1.243964837092957415e-04, -1.242760312812924578e-04, -1.241553863482438495e-04, -1.240345491214681030e-04, -1.239135198125800150e-04, -1.237922986334680079e-04, -1.236708857963537609e-04, -1.235492815137165864e-04, -1.234274859983514625e-04, -1.233054994633426052e-04, -1.231833221220679682e-04, -1.230609541881991069e-04, -1.229383958757054071e-04, -1.228156473988342170e-04, -1.226927089721398224e-04, -1.225695808104647171e-04, -1.224462631289419340e-04, -1.223227561429963191e-04, -1.221990600683488140e-04, -1.220751751209946904e-04, -1.219511015172358866e-04, -1.218268394736578871e-04, -1.217023892071365527e-04, -1.215777509348412512e-04, -1.214529248742151794e-04, -1.213279112430047446e-04, -1.212027102592390734e-04, -1.210773221412347282e-04, -1.209517471075965874e-04, -1.208259853772200148e-04, -1.207000371692716682e-04, -1.205739027032199799e-04, -1.204475821988136889e-04, -1.203210758760868692e-04, -1.201943839553584688e-04, -1.200675066572371211e-04, -1.199404442025992981e-04, -1.198131968126222023e-04, -1.196857647087596027e-04, -1.195581481127496408e-04, -1.194303472466173112e-04, -1.193023623326545251e-04, -1.191741935934502249e-04, -1.190458412518703664e-04, -1.189173055310616459e-04, -1.187885866544501182e-04, -1.186596848457502628e-04, -1.185306003289375809e-04, -1.184013333282844826e-04, -1.182718840683369627e-04, -1.181422527739196967e-04, -1.180124396701415836e-04, -1.178824449823716769e-04, -1.177522689362690269e-04, -1.176219117577861911e-04, -1.174913736731187915e-04, -1.173606549087607276e-04, -1.172297556914833871e-04, -1.170986762483152083e-04, -1.169674168065723362e-04, -1.168359775938618343e-04, -1.167043588380322451e-04, -1.165725607672276102e-04, -1.164405836098666812e-04, -1.163084275946180097e-04, -1.161760929504633463e-04, -1.160435799066164472e-04, -1.159108886925866493e-04, -1.157780195381549363e-04, -1.156449726733556430e-04, -1.155117483285060672e-04, -1.153783467342110779e-04, -1.152447681213110328e-04, -1.151110127209394984e-04, -1.149770807644987202e-04, -1.148429724836367866e-04, -1.147086881103118541e-04, -1.145742278767079592e-04, -1.144395920153011683e-04, -1.143047807588287593e-04, -1.141697943403011611e-04, -1.140346329929708101e-04, -1.138992969503982867e-04, -1.137637864463687229e-04, -1.136281017149556486e-04, -1.134922429904981420e-04, -1.133562105075750930e-04, -1.132200045010657428e-04, -1.130836252060953110e-04, -1.129470728580403622e-04, -1.128103476925578494e-04, -1.126734499455617900e-04, -1.125363798532276835e-04, -1.123991376519993155e-04, -1.122617235785632517e-04, -1.121241378698851040e-04, -1.119863807631911131e-04, -1.118484524959431441e-04, -1.117103533058994827e-04, -1.115720834310588095e-04, -1.114336431096672742e-04, -1.112950325802467526e-04, -1.111562520815720243e-04, -1.110173018526746622e-04, -1.108781821328439811e-04, -1.107388931616320657e-04, -1.105994351788288071e-04, -1.104598084244986296e-04, -1.103200131389555684e-04, -1.101800495627684457e-04, -1.100399179367670110e-04, -1.098996185020172475e-04, -1.097591514998568396e-04, -1.096185171718719168e-04, -1.094777157599002788e-04, -1.093367475060335643e-04, -1.091956126526216146e-04, -1.090543114422469273e-04, -1.089128441177624000e-04, -1.087712109222660278e-04, -1.086294120991063513e-04, -1.084874478918878914e-04, -1.083453185444465647e-04, -1.082030243008862483e-04, -1.080605654055537756e-04, -1.079179421030440725e-04, -1.077751546381998187e-04, -1.076322032561191725e-04, -1.074890882021274733e-04, -1.073458097218157035e-04, -1.072023680610156333e-04, -1.070587634658045506e-04, -1.069149961825055587e-04, -1.067710664576931471e-04, -1.066269745381677122e-04, -1.064827206709928540e-04, -1.063383051034700737e-04, -1.061937280831435709e-04, -1.060489898578074813e-04, -1.059040906754800583e-04, -1.057590307844333673e-04, -1.056138104332006986e-04, -1.054684298705194030e-04, -1.053228893453924336e-04, -1.051771891070630568e-04, -1.050313294049963671e-04, -1.048853104889151057e-04, -1.047391326087758630e-04, -1.045927960147740248e-04, -1.044463009573428779e-04, -1.042996476871602780e-04, -1.041528364551160018e-04, -1.040058675123819217e-04, -1.038587411103213126e-04, -1.037114575005602734e-04, -1.035640169349597006e-04, -1.034164196655970195e-04, -1.032686659447978157e-04, -1.031207560251413914e-04, -1.029726901594020972e-04, -1.028244686006139227e-04, -1.026760916020449233e-04, -1.025275594171688411e-04, -1.023788722997379227e-04, -1.022300305036911143e-04, -1.020810342832240603e-04, -1.019318838927580956e-04, -1.017825795869509110e-04, -1.016331216206645832e-04, -1.014835102490371858e-04, -1.013337457273894265e-04, -1.011838283112975729e-04, -1.010337582565673368e-04, -1.008835358192046959e-04, -1.007331612554838459e-04, -1.005826348218859023e-04, -1.004319567751054738e-04, -1.002811273720837843e-04, -1.001301468699807685e-04, -9.997901552618248481e-05, -9.982773359830638771e-05, -9.967630134417418170e-05, -9.952471902185245191e-05, -9.937298688963031599e-05, -9.922110520599513792e-05, -9.906907422969565575e-05, -9.891689421968343464e-05, -9.876456543511926366e-05, -9.861208813540500424e-05, -9.845946258015643091e-05, -9.830668902921102395e-05, -9.815376774262558424e-05, -9.800069898068398521e-05, -9.784748300386840090e-05, -9.769412007290123742e-05, -9.754061044871588663e-05, -9.738695439246384123e-05, -9.723315216552079335e-05, -9.707920402945958375e-05, -9.692511024608977516e-05, -9.677087107743035754e-05, -9.661648678571647009e-05, -9.646195763339800535e-05, -9.630728388314691404e-05, -9.615246579782957140e-05, -9.599750364054570012e-05, -9.584239767460287797e-05, -9.568714816352118637e-05, -9.553175537104040672e-05, -9.537621956109226492e-05, -9.522054099783993687e-05, -9.506471994565225811e-05, -9.490875666910812832e-05, -9.475265143299725678e-05, -9.459640450232574592e-05, -9.444001614228914900e-05, -9.428348661830602607e-05, -9.412681619602354124e-05, -9.397000514125613743e-05, -9.381305372005377342e-05, -9.365596219867300268e-05, -9.349873084355730870e-05, -9.334135992137703071e-05, -9.318384969900135064e-05, -9.302620044350502868e-05, -9.286841242217523380e-05, -9.271048590248235158e-05, -9.255242115211489550e-05, -9.239421843898618840e-05, -9.223587803117080106e-05, -9.207740019697427999e-05, -9.191878520490414501e-05, -9.176003332364911322e-05, -9.160114482212046135e-05, -9.144211996942276579e-05, -9.128295903486179021e-05, -9.112366228794307609e-05, -9.096422999837905777e-05, -9.080466243605282305e-05, -9.064495987109597237e-05, -9.048512257378833019e-05, -9.032515081463657672e-05, -9.016504486434376829e-05, -9.000480499378967262e-05, -8.984443147406401319e-05, -8.968392457647358430e-05, -8.952328457247879815e-05, -8.936251173376296537e-05, -8.920160633220439032e-05, -8.904056863984673176e-05, -8.887939892897707894e-05, -8.871809747202682843e-05, -8.855666454164715811e-05, -8.839510041068297927e-05, -8.823340535214873172e-05, -8.807157963926498924e-05, -8.790962354546423291e-05, -8.774753734432749308e-05, -8.758532130965300641e-05, -8.742297571542976143e-05, -8.726050083580682909e-05, -8.709789694516460842e-05, -8.693516431805050628e-05, -8.677230322918517145e-05, -8.660931395349828689e-05, -8.644619676609857802e-05, -8.628295194228157827e-05, -8.611957975753570065e-05, -8.595608048751308624e-05, -8.579245440807291810e-05, -8.562870179525811087e-05, -8.546482292526713512e-05, -8.530081807452519519e-05, -8.513668751961927194e-05, -8.497243153730378769e-05, -8.480805040453810609e-05, -8.464354439845469722e-05, -8.447891379636846172e-05, -8.431415887578146064e-05, -8.414927991435486169e-05, -8.398427718995116892e-05, -8.381915098060471888e-05, -8.365390156452908029e-05, -8.348852922011653905e-05, -8.332303422594383095e-05, -8.315741686074422346e-05, -8.299167740344931174e-05, -8.282581613315979940e-05, -8.265983332915285747e-05, -8.249372927088129777e-05, -8.232750423798029489e-05, -8.216115851023767912e-05, -8.199469236763752133e-05, -8.182810609033029029e-05, -8.166139995863971033e-05, -8.149457425306982211e-05, -8.132762925427458438e-05, -8.116056524310250237e-05, -8.099338250056542998e-05, -8.082608130784666052e-05, -8.065866194629961222e-05, -8.049112469745537692e-05, -8.032346984299194230e-05, -8.015569766477925403e-05, -7.998780844484735381e-05, -7.981980246539559503e-05, -7.965168000878994586e-05, -7.948344135757155445e-05, -7.931508679442563230e-05, -7.914661660222619115e-05, -7.897803106400544143e-05, -7.880933046296037872e-05, -7.864051508246103727e-05, -7.847158520601906168e-05, -7.830254111732465111e-05, -7.813338310025368788e-05, -7.796411143880070671e-05, -7.779472641715191568e-05, -7.762522831965604480e-05, -7.745561743080007339e-05, -7.728589403525551200e-05, -7.711605841784579499e-05, -7.694611086355506260e-05, -7.677605165753423246e-05, -7.660588108507087235e-05, -7.643559943162630697e-05, -7.626520698284208256e-05, -7.609470402447288183e-05, -7.592409084246043948e-05, -7.575336772290292703e-05, -7.558253495203252339e-05, -7.541159281625207445e-05, -7.524054160214182867e-05, -7.506938159639220301e-05, -7.489811308587830826e-05, -7.472673635762831746e-05, -7.455525169879402981e-05, -7.438365939673276857e-05, -7.421195973890163072e-05, -7.404015301293924932e-05, -7.386823950663664207e-05, -7.369621950790463099e-05, -7.352409330485054975e-05, -7.335186118570854303e-05, -7.317952343884741339e-05, -7.300708035280753841e-05, -7.283453221627810242e-05, -7.266187931806553264e-05, -7.248912194717756555e-05, -7.231626039271509768e-05, -7.214329494395739040e-05, -7.197022589032054491e-05, -7.179705352136763960e-05, -7.162377812680596528e-05, -7.145039999649611896e-05, -7.127691942041912540e-05, -7.110333668872315268e-05, -7.092965209169933448e-05, -7.075586591975146665e-05, -7.058197846347072227e-05, -7.040799001356775352e-05, -7.023390086087883094e-05, -7.005971129640433260e-05, -6.988542161127704480e-05, -6.971103209676988695e-05, -6.953654304430252522e-05, -6.936195474541063542e-05, -6.918726749179101936e-05, -6.901248157527154533e-05, -6.883759728781640649e-05, -6.866261492152758456e-05, -6.848753476865074514e-05, -6.831235712154485294e-05, -6.813708227272678676e-05, -6.796171051484133411e-05, -6.778624214066758806e-05, -6.761067744311852711e-05, -6.743501671524872653e-05, -6.725926025022194079e-05, -6.708340834135867285e-05, -6.690746128210284856e-05, -6.673141936603051735e-05, -6.655528288685639811e-05, -6.637905213840274903e-05, -6.620272741464468724e-05, -6.602630900967957370e-05, -6.584979721773411465e-05, -6.567319233316354853e-05, -6.549649465045877456e-05, -6.531970446421503287e-05, -6.514282206917847097e-05, -6.496584776021391587e-05, -6.478878183231239569e-05, -6.461162458059063827e-05, -6.443437630029855210e-05, -6.425703728678737795e-05, -6.407960783555564541e-05, -6.390208824221824612e-05, -6.372447880251307442e-05, -6.354677981230898273e-05, -6.336899156757306575e-05, -6.319111436441046420e-05, -6.301314849907055837e-05, -6.283509426787707770e-05, -6.265695196730495717e-05, -6.247872189394913941e-05, -6.230040434450050536e-05, -6.212199961579215621e-05, -6.194350800476742939e-05, -6.176492980848826049e-05, -6.158626532414114639e-05, -6.140751484900596087e-05, -6.122867868049527052e-05, -6.104975711616002676e-05, -6.087075045362042768e-05, -6.069165899064251686e-05, -6.051248302510686352e-05, -6.033322285498420186e-05, -6.015387877837465882e-05, -5.997445109351487593e-05, -5.979494009870649267e-05, -5.961534609239470365e-05, -5.943566937313604425e-05, -5.925591023956662355e-05, -5.907606899048840644e-05, -5.889614592475743237e-05, -5.871614134137147993e-05, -5.853605553943672080e-05, -5.835588881813656931e-05, -5.817564147680969751e-05, -5.799531381487855921e-05, -5.781490613185695900e-05, -5.763441872738841272e-05, -5.745385190122330465e-05, -5.727320595318491814e-05, -5.709248118325739823e-05, -5.691167789147399080e-05, -5.673079637800371091e-05, -5.654983694311093600e-05, -5.636879988716294107e-05, -5.618768551062998677e-05, -5.600649411409215666e-05, -5.582522599820707507e-05, -5.564388146375694118e-05, -5.546246081162500857e-05, -5.528096434276287622e-05, -5.509939235826874081e-05, -5.491774515931646954e-05, -5.473602304716247127e-05, -5.455422632318469395e-05, -5.437235528885154862e-05, -5.419041024572749987e-05, -5.400839149548224767e-05, -5.382629933985728650e-05, -5.364413408071348825e-05, -5.346189602000726339e-05, -5.327958545975714036e-05, -5.309720270212364425e-05, -5.291474804933755640e-05, -5.273222180370570818e-05, -5.254962426765222809e-05, -5.236695574368515510e-05, -5.218421653440392640e-05, -5.200140694249919448e-05, -5.181852727076007774e-05, -5.163557782204166824e-05, -5.145255889931277731e-05, -5.126947080562342305e-05, -5.108631384411180980e-05, -5.090308831801248688e-05, -5.071979453062342260e-05, -5.053643278535377024e-05, -5.035300338569104379e-05, -5.016950663520906650e-05, -4.998594283756692733e-05, -4.980231229651720061e-05, -4.961861531587265418e-05, -4.943485219955418475e-05, -4.925102325155823079e-05, -4.906712877596433489e-05, -4.888316907694286866e-05, -4.869914445872157834e-05, -4.851505522563446198e-05, -4.833090168208799655e-05, -4.814668413256976412e-05, -4.796240288164711014e-05, -4.777805823397481423e-05, -4.759365049426270632e-05, -4.740917996731524014e-05, -4.722464695803914352e-05, -4.704005177137028225e-05, -4.685539471235385036e-05, -4.667067608611168817e-05, -4.648589619781687136e-05, -4.630105535274287948e-05, -4.611615385622985021e-05, -4.593119201369242623e-05, -4.574617013062785289e-05, -4.556108851258162929e-05, -4.537594746518915523e-05, -4.519074729418282596e-05, -4.500548830531775075e-05, -4.482017080445342043e-05, -4.463479509752038175e-05, -4.444936149049484667e-05, -4.426387028944804396e-05, -4.407832180051198543e-05, -4.389271632988807863e-05, -4.370705418384606295e-05, -4.352133566873176167e-05, -4.333556109092582127e-05, -4.314973075693307684e-05, -4.296384497326762660e-05, -4.277790404654242769e-05, -4.259190828343565200e-05, -4.240585799065754350e-05, -4.221975347503232966e-05, -4.203359504342342511e-05, -4.184738300274107520e-05, -4.166111765998363031e-05, -4.147479932221126062e-05, -4.128842829651353178e-05, -4.110200489009898029e-05, -4.091552941017941557e-05, -4.072900216405991554e-05, -4.054242345910567715e-05, -4.035579360270804693e-05, -4.016911290236718465e-05, -3.998238166561637246e-05, -3.979560020003065462e-05, -3.960876881326706820e-05, -3.942188781303971993e-05, -3.923495750708574231e-05, -3.904797820324791655e-05, -3.886095020939973389e-05, -3.867387383345261231e-05, -3.848674938339758414e-05, -3.829957716727098776e-05, -3.811235749316237560e-05, -3.792509066922293695e-05, -3.773777700363082385e-05, -3.755041680464103119e-05, -3.736301038056010090e-05, -3.717555803971196276e-05, -3.698806009052072011e-05, -3.680051684143535869e-05, -3.661292860093767493e-05, -3.642529567758296739e-05, -3.623761837996667719e-05, -3.604989701673215366e-05, -3.586213189657806754e-05, -3.567432332822496335e-05, -3.548647162046480742e-05, -3.529857708212672034e-05, -3.511064002208529142e-05, -3.492266074925980623e-05, -3.473463957262212733e-05, -3.454657680116283335e-05, -3.435847274394072633e-05, -3.417032771004897075e-05, -3.398214200862313016e-05, -3.379391594884011011e-05, -3.360564983992684528e-05, -3.341734399112557795e-05, -3.322899871174382614e-05, -3.304061431112059039e-05, -3.285219109863403805e-05, -3.266372938370914688e-05, -3.247522947578416937e-05, -3.228669168436015363e-05, -3.209811631896681135e-05, -3.190950368917060869e-05, -3.172085410457401410e-05, -3.153216787482354173e-05, -3.134344530957584304e-05, -3.115468671854716671e-05, -3.096589241147963998e-05, -3.077706269814887161e-05, -3.058819788836364693e-05, -3.039929829197358845e-05, -3.021036421883554893e-05, -3.002139597886273594e-05, -2.983239388199142682e-05, -2.964335823818824644e-05, -2.945428935745826815e-05, -2.926518754981094280e-05, -2.907605312530174221e-05, -2.888688639403966393e-05, -2.869768766611138108e-05, -2.850845725166488182e-05, -2.831919546087492394e-05, -2.812990260390923824e-05, -2.794057899102046888e-05, -2.775122493242793774e-05, -2.756184073840954412e-05, -2.737242671925915218e-05, -2.718298318530316910e-05, -2.699351044685788849e-05, -2.680400881432123760e-05, -2.661447859805488728e-05, -2.642492010847604324e-05, -2.623533365602338520e-05, -2.604571955112296188e-05, -2.585607810427153575e-05, -2.566640962596069894e-05, -2.547671442668466603e-05, -2.528699281698170069e-05, -2.509724510740846752e-05, -2.490747160850606608e-05, -2.471767263089171365e-05, -2.452784848514065198e-05, -2.433799948187817568e-05, -2.414812593174549342e-05, -2.395822814536537903e-05, -2.376830643342605829e-05, -2.357836110660496915e-05, -2.338839247557640200e-05, -2.319840085105336340e-05, -2.300838654376157898e-05, -2.281834986440544604e-05, -2.262829112375178825e-05, -2.243821063255341933e-05, -2.224810870155711874e-05, -2.205798564154525489e-05, -2.186784176330161240e-05, -2.167767737761918488e-05, -2.148749279530825552e-05, -2.129728832716199749e-05, -2.110706428400670632e-05, -2.091682097667593151e-05, -2.072655871597635810e-05, -2.053627781277135795e-05, -2.034597857790478725e-05, -2.015566132220892838e-05, -1.996532635654612320e-05, -1.977497399177441403e-05, -1.958460453875558369e-05, -1.939421830836318537e-05, -1.920381561144806162e-05, -1.901339675888849884e-05, -1.882296206155628841e-05, -1.863251183032409920e-05, -1.844204637606556912e-05, -1.825156600966287414e-05, -1.806107104197234560e-05, -1.787056178387515319e-05, -1.768003854624239371e-05, -1.748950163994346990e-05, -1.729895137584539584e-05, -1.710838806482084044e-05, -1.691781201771367006e-05, -1.672722354538925217e-05, -1.653662295870022165e-05, -1.634601056849427006e-05, -1.615538668562216203e-05, -1.596475162090344054e-05, -1.577410568517659161e-05, -1.558344918926481403e-05, -1.539278244398376458e-05, -1.520210576014140223e-05, -1.501141944854556227e-05, -1.482072381996984292e-05, -1.463001918520383100e-05, -1.443930585501868696e-05, -1.424858414017515107e-05, -1.405785435142303347e-05, -1.386711679950921019e-05, -1.367637179514310485e-05, -1.348561964904723450e-05, -1.329486067192258800e-05, -1.310409517445672535e-05, -1.291332346733176692e-05, -1.272254586118985309e-05, -1.253176266667516225e-05, -1.234097419444185756e-05, -1.215018075507717985e-05, -1.195938265918586285e-05, -1.176858021735564541e-05, -1.157777374012277865e-05, -1.138696353806504034e-05, -1.119614992168219311e-05, -1.100533320148897683e-05, -1.081451368798068517e-05, -1.062369169160702284e-05, -1.043286752281426740e-05, -1.024204149205307392e-05, -1.005121390970168459e-05, -9.860385086150269543e-06, -9.669555331766491537e-06, -9.478724956860943646e-06, -9.287894271771732265e-06, -9.097063586787393726e-06, -8.906233212154969915e-06, -8.715403458121922842e-06, -8.524574634910198499e-06, -8.333747052681661136e-06, -8.142921021631139832e-06, -7.952096851866974824e-06, -7.761274853503838771e-06, -7.570455336628428524e-06, -7.379638611264894329e-06, -7.188824987459236493e-06, -6.998014775202490510e-06, -6.807208284438579051e-06, -6.616405825106383250e-06, -6.425607707113693895e-06, -6.234814240302737190e-06, -6.044025734543167958e-06, -5.853242499612583790e-06, -5.662464845289479282e-06, -5.471693081310309093e-06, -5.280927517377421251e-06, -5.090168463158604843e-06, -4.899416228295067364e-06, -4.708671122366918133e-06, -4.517933454943718363e-06, -4.327203535549923920e-06, -4.136481673672907564e-06, -3.945768178762475298e-06, -3.755063360238844149e-06, -3.564367527458140391e-06, -3.373680989762917870e-06, -3.183004056447639711e-06, -2.992337036766692098e-06, -2.801680239942357822e-06, -2.611033975130365751e-06, -2.420398551470335882e-06, -2.229774278051334744e-06, -2.039161463919812099e-06, -1.848560418079167046e-06, -1.657971449497685780e-06, -1.467394867074106104e-06, -1.276830979688070946e-06, -1.086280096165640775e-06, -8.957425252873136287e-07, -7.052185757874962490e-07, -5.147085563625323621e-07, -3.242127756361883651e-07, -1.337315422101624819e-07, 5.673483537042073130e-08, 2.471860486090012732e-07, 4.376217890495894926e-07, 6.280417483112486016e-07, 8.184456180376118224e-07, 1.008833089931368679e-06, 1.199203855746266943e-06, 1.389557607287605866e-06, 1.579894036404244857e-06, 1.770212835023067547e-06, 1.960513695098533576e-06, 2.150796308647117042e-06, 2.341060367739353707e-06, 2.531305564491818327e-06, 2.721531591101577084e-06, 2.911738139795771332e-06, 3.101924902866038057e-06, 3.292091572660564704e-06, 3.482237841584528367e-06, 3.672363402092138758e-06, 3.862467946721072640e-06, 4.052551168050564330e-06, 4.242612758693354651e-06, 4.432652411372609994e-06, 4.622669818837540470e-06, 4.812664673897856367e-06, 5.002636669458159381e-06, 5.192585498425174718e-06, 5.382510853826956584e-06, 5.572412428720090641e-06, 5.762289916224127595e-06, 5.952143009547522729e-06, 6.141971401945702690e-06, 6.331774786713127099e-06, 6.521552857260010252e-06, 6.711305307028159925e-06, 6.901031829525214452e-06, 7.090732118359194883e-06, 7.280405867145682042e-06, 7.470052769626997442e-06, 7.659672519579453185e-06, 7.849264810856215209e-06, 8.038829337370865776e-06, 8.228365793140233683e-06, 8.417873872191737337e-06, 8.607353268682416594e-06, 8.796803676806304629e-06, 8.986224790828751402e-06, 9.175616305120891123e-06, 9.364977914075255750e-06, 9.554309312182678802e-06, 9.743610194024190948e-06, 9.932880254229295165e-06, 1.012211918750164539e-05, 1.031132668865369185e-05, 1.050050245251380054e-05, 1.068964617404539006e-05, 1.087875754825427981e-05, 1.106783627023142105e-05, 1.125688203514510597e-05, 1.144589453824127761e-05, 1.163487347483565761e-05, 1.182381854034803409e-05, 1.201272943025198004e-05, 1.220160584010927000e-05, 1.239044746556182140e-05, 1.257925400233214851e-05, 1.276802514621559014e-05, 1.295676059311427392e-05, 1.314546003898732771e-05, 1.333412317988474398e-05, 1.352274971193976839e-05, 1.371133933136064965e-05, 1.389989173446511720e-05, 1.408840661763015889e-05, 1.427688367732613778e-05, 1.446532261010910619e-05, 1.465372311262107163e-05, 1.484208488158201101e-05, 1.503040761382436687e-05, 1.521869100624266082e-05, 1.540693475582779323e-05, 1.559513855965927602e-05, 1.578330211490533251e-05, 1.597142511881539112e-05, 1.615950726875392426e-05, 1.634754826215063266e-05, 1.653554779653438765e-05, 1.672350556952556047e-05, 1.691142127882792122e-05, 1.709929462226274379e-05, 1.728712529771898000e-05, 1.747491300318721887e-05, 1.766265743675190063e-05, 1.785035829659170983e-05, 1.803801528097166397e-05, 1.822562808827727949e-05, 1.841319641696441379e-05, 1.860071996559383781e-05, 1.878819843282272838e-05, 1.897563151739723467e-05, 1.916301891818614266e-05, 1.935036033413975001e-05, 1.953765546428175149e-05, 1.972490400778523475e-05, 1.991210566388931197e-05, 2.009926013193330611e-05, 2.028636711138203652e-05, 2.047342630178462604e-05, 2.066043740276664396e-05, 2.084740011410587813e-05, 2.103431413564907506e-05, 2.122117916734582124e-05, 2.140799490928278355e-05, 2.159476106159184691e-05, 2.178147732456786875e-05, 2.196814339857716897e-05, 2.215475898409128931e-05, 2.234132378171272619e-05, 2.252783749213369712e-05, 2.271429981612787033e-05, 2.290071045462646555e-05, 2.308706910863499070e-05, 2.327337547926723160e-05, 2.345962926777890630e-05, 2.364583017547662938e-05, 2.383197790383504303e-05, 2.401807215440536801e-05, 2.420411262885798563e-05, 2.439009902896605624e-05, 2.457603105664726769e-05, 2.476190841387339935e-05, 2.494773080278688403e-05, 2.513349792560981289e-05, 2.531920948467772533e-05, 2.550486518247343601e-05, 2.569046472154422900e-05, 2.587600780457719623e-05, 2.606149413439143124e-05, 2.624692341389689727e-05, 2.643229534612823742e-05, 2.661760963423675833e-05, 2.680286598148276961e-05, 2.698806409126927206e-05, 2.717320366709254512e-05, 2.735828441256749351e-05, 2.754330603146122020e-05, 2.772826822761103026e-05, 2.791317070499879359e-05, 2.809801316774380268e-05, 2.828279532006143746e-05, 2.846751686629682296e-05, 2.865217751091708070e-05, 2.883677695851184363e-05, 2.902131491378531100e-05, 2.920579108158986539e-05, 2.939020516687699223e-05, 2.957455687473068681e-05, 2.975884591035995289e-05, 2.994307197909065770e-05, 3.012723478639914217e-05, 3.031133403786318451e-05, 3.049536943919555965e-05, 3.067934069623617878e-05, 3.086324751495248236e-05, 3.104708960143197610e-05, 3.123086666191512289e-05, 3.141457840274693663e-05, 3.159822453041001642e-05, 3.178180475151694371e-05, 3.196531877280247593e-05, 3.214876630115696710e-05, 3.233214704357748384e-05, 3.251546070720105649e-05, 3.269870699929706937e-05, 3.288188562726767413e-05, 3.306499629863973955e-05, 3.324803872109884805e-05, 3.343101260243988999e-05, 3.361391765060059932e-05, 3.379675357365388971e-05, 3.397952007980801033e-05, 3.416221687739909204e-05, 3.434484367492441199e-05, 3.452740018099354359e-05, 3.470988610436178377e-05, 3.489230115392185212e-05, 3.507464503869701293e-05, 3.525691746787374358e-05, 3.543911815076142253e-05, 3.562124679678457730e-05, 3.580330311555684738e-05, 3.598528681680000785e-05, 3.616719761037684786e-05, 3.634903520631600559e-05, 3.653079931476403979e-05, 3.671248964601785413e-05, 3.689410591051727725e-05, 3.707564781884561841e-05, 3.725711508172182732e-05, 3.743850741004190391e-05, 3.761982451478937032e-05, 3.780106610715023023e-05, 3.798223189842333245e-05, 3.816332160005393373e-05, 3.834433492365814074e-05, 3.852527158098276752e-05, 3.870613128389801031e-05, 3.888691374447048889e-05, 3.906761867488320539e-05, 3.924824578746760953e-05, 3.942879479473712759e-05, 3.960926540929810875e-05, 3.978965734396420844e-05, 3.996997031166704326e-05, 4.015020402548944892e-05, 4.033035819869026781e-05, 4.051043254466432159e-05, 4.069042677693453041e-05, 4.087034060922517108e-05, 4.105017375538203239e-05, 4.122992592940437194e-05, 4.140959684547845186e-05, 4.158918621789660315e-05, 4.176869376113070747e-05, 4.194811918982469580e-05, 4.212746221875422970e-05, 4.230672256285942384e-05, 4.248589993723790717e-05, 4.266499405713643385e-05, 4.284400463798414797e-05, 4.302293139534414001e-05, 4.320177404493861389e-05, 4.338053230268107424e-05, 4.355920588459656298e-05, 4.373779450689466001e-05, 4.391629788596128396e-05, 4.409471573831971508e-05, 4.427304778066262666e-05, 4.445129372984465147e-05, 4.462945330287506338e-05, 4.480752621695003240e-05, 4.498551218940472326e-05, 4.516341093774646519e-05, 4.534122217964657982e-05, 4.551894563294125524e-05, 4.569658101562374655e-05, 4.587412804587669190e-05, 4.605158644202521389e-05, 4.622895592256849704e-05, 4.640623620617244225e-05, 4.658342701167106955e-05, 4.676052805805738365e-05, 4.693753906451712652e-05, 4.711445975038048298e-05, 4.729128983515498621e-05, 4.746802903851742690e-05, 4.764467708030707698e-05, 4.782123368055711120e-05, 4.799769855944796602e-05, 4.817407143733924235e-05, 4.835035203476259041e-05, 4.852654007242147936e-05, 4.870263527118449558e-05, 4.887863735211679807e-05, 4.905454603643360622e-05, 4.923036104553172969e-05, 4.940608210098262280e-05, 4.958170892453247260e-05, 4.975724123809513802e-05, 4.993267876378367978e-05, 5.010802122386347549e-05, 5.028326834078469142e-05, 5.045841983717457122e-05, 5.063347543582976507e-05, 5.080843485974848316e-05, 5.098329783209188445e-05, 5.115806407617588423e-05, 5.133273331554316545e-05, 5.150730527388436400e-05, 5.168177967507043213e-05, 5.185615624317634184e-05, 5.203043470243440320e-05, 5.220461477726629575e-05, 5.237869619227561457e-05, 5.255267867224799910e-05, 5.272656194214431615e-05, 5.290034572713937951e-05, 5.307402975253721955e-05, 5.324761374388054696e-05, 5.342109742686526342e-05, 5.359448052737184249e-05, 5.376776277149004939e-05, 5.394094388547920503e-05, 5.411402359576167396e-05, 5.428700162899335115e-05, 5.445987771198549092e-05, 5.463265157173713144e-05, 5.480532293546678049e-05, 5.497789153052561154e-05, 5.515035708450932630e-05, 5.532271932517057153e-05, 5.549497798045233246e-05, 5.566713277851071458e-05, 5.583918344767648158e-05, 5.601112971644842814e-05, 5.618297131356292476e-05, 5.635470796791713590e-05, 5.652633940860016368e-05, 5.669786536492520124e-05, 5.686928556635155154e-05, 5.704059974255510724e-05, 5.721180762342148636e-05, 5.738290893900721107e-05, 5.755390341957101401e-05, 5.772479079556719079e-05, 5.789557079763738717e-05, 5.806624315664282016e-05, 5.823680760361772511e-05, 5.840726386979293034e-05, 5.857761168662781398e-05, 5.874785078573308846e-05, 5.891798089894020976e-05, 5.908800175829521104e-05, 5.925791309601919022e-05, 5.942771464454113420e-05, 5.959740613648907586e-05, 5.976698730468377858e-05, 5.993645788216993411e-05, 6.010581760216994853e-05, 6.027506619811515365e-05, 6.044420340363913921e-05, 6.061322895257762410e-05, 6.078214257896118547e-05, 6.095094401704656502e-05, 6.111963300127121385e-05, 6.128820926628413804e-05, 6.145667254693856665e-05, 6.162502257829241938e-05, 6.179325909560149635e-05, 6.196138183434979514e-05, 6.212939053020465193e-05, 6.229728491904696361e-05, 6.246506473696531955e-05, 6.263272972024717890e-05, 6.280027960541096298e-05, 6.296771412916013933e-05, 6.313503302841414855e-05, 6.330223604030165514e-05, 6.346932290216018163e-05, 6.363629335153024027e-05, 6.380314712618413220e-05, 6.396988396408259290e-05, 6.413650360340500075e-05, 6.430300578254147595e-05, 6.446939024009471007e-05, 6.463565671487133313e-05, 6.480180494591349094e-05, 6.496783467245398629e-05, 6.513374563394587762e-05, 6.529953757005673278e-05, 6.546521022066025355e-05, 6.563076332586770397e-05, 6.579619662599001746e-05, 6.596150986153134581e-05, 6.612670277325668631e-05, 6.629177510211703114e-05, 6.645672658928038906e-05, 6.662155697615355086e-05, 6.678626600433919551e-05, 6.695085341566486554e-05, 6.711531895217635337e-05, 6.727966235613106057e-05, 6.744388337002725779e-05, 6.760798173656796725e-05, 6.777195719865399676e-05, 6.793580949945071299e-05, 6.809953838231470880e-05, 6.826314359082336124e-05, 6.842662486879799288e-05, 6.858998196026690045e-05, 6.875321460945841602e-05, 6.891632256086797838e-05, 6.907930555918448867e-05, 6.924216334932013946e-05, 6.940489567644077241e-05, 6.956750228588484773e-05, 6.972998292326661955e-05, 6.989233733439665036e-05, 7.005456526531040685e-05, 7.021666646229875305e-05, 7.037864067183465834e-05, 7.054048764063995712e-05, 7.070220711567773235e-05, 7.086379884411707895e-05, 7.102526257335448968e-05, 7.118659805104383335e-05, 7.134780502501705899e-05, 7.150888324338527057e-05, 7.166983245446052894e-05, 7.183065240679152206e-05, 7.199134284915737153e-05, 7.215190353056764611e-05, 7.231233420025539574e-05, 7.247263460770714326e-05, 7.263280450261912333e-05, 7.279284363491975249e-05, 7.295275175479875359e-05, 7.311252861263544929e-05, 7.327217395906428861e-05, 7.343168754496762337e-05, 7.359106912144029549e-05, 7.375031843981858513e-05, 7.390943525167389526e-05, 7.406841930880528422e-05, 7.422727036326922702e-05, 7.438598816733646413e-05, 7.454457247352150534e-05, 7.470302303457567730e-05, 7.486133960348678468e-05, 7.501952193347355370e-05, 7.517756977801387552e-05, 7.533548289080273924e-05, 7.549326102578021789e-05, 7.565090393712657591e-05, 7.580841137926016854e-05, 7.596578310683303726e-05, 7.612301887475829941e-05, 7.628011843816825737e-05, 7.643708155244346872e-05, 7.659390797320568534e-05, 7.675059745631142955e-05, 7.690714975788046797e-05, 7.706356463425331077e-05, 7.721984184202127118e-05, 7.737598113801804939e-05, 7.753198227932129108e-05, 7.768784502324562141e-05, 7.784356912737063101e-05, 7.799915434950057075e-05, 7.815460044769057587e-05, 7.830990718024197683e-05, 7.846507430569450660e-05, 7.862010158285575028e-05, 7.877498877075791257e-05, 7.892973562868780949e-05, 7.908434191617983464e-05, 7.923880739301525443e-05, 7.939313181921701750e-05, 7.954731495507711726e-05, 7.970135656112256150e-05, 7.985525639810866388e-05, 8.000901422708196829e-05, 8.016262980931104971e-05, 8.031610290631498801e-05, 8.046943327988408980e-05, 8.062262069203905463e-05, 8.077566490505864929e-05, 8.092856568147378533e-05, 8.108132278405986190e-05, 8.123393597586639155e-05, 8.138640502018147909e-05, 8.153872968052561449e-05, 8.169090972071421783e-05, 8.184294490478971401e-05, 8.199483499704785178e-05, 8.214657976206075657e-05, 8.229817896463372505e-05, 8.244963236983524394e-05, 8.260093974298984788e-05, 8.275210084967689968e-05, 8.290311545572626704e-05, 8.305398332725240720e-05, 8.320470423057806618e-05, 8.335527793233196540e-05, 8.350570419937347675e-05, 8.365598279882035106e-05, 8.380611349807566047e-05, 8.395609606476117431e-05, 8.410593026677830471e-05, 8.425561587230143883e-05, 8.440515264974504683e-05, 8.455454036778371253e-05, 8.470377879538052595e-05, 8.485286770171128403e-05, 8.500180685626172999e-05, 8.515059602875138815e-05, 8.529923498916924774e-05, 8.544772350776709503e-05, 8.559606135505926940e-05, 8.574424830181633431e-05, 8.589228411909337498e-05, 8.604016857818881224e-05, 8.618790145066534123e-05, 8.633548250837713126e-05, 8.648291152340339136e-05, 8.663018826810889588e-05, 8.677731251513657121e-05, 8.692428403737692132e-05, 8.707110260799217835e-05, 8.721776800041142370e-05, 8.736427998832537031e-05, 8.751063834571055390e-05, 8.765684284679256500e-05, 8.780289326606420931e-05, 8.794878937831440170e-05, 8.809453095856021384e-05, 8.824011778210792830e-05, 8.838554962454677735e-05, 8.853082626171615934e-05, 8.867594746973178155e-05, 8.882091302498007653e-05, 8.896572270411847317e-05, 8.911037628406960978e-05, 8.925487354204627070e-05, 8.939921425551445569e-05, 8.954339820221826239e-05, 8.968742516017470920e-05, 8.983129490766721657e-05, 8.997500722327214282e-05, 9.011856188581948181e-05, 9.026195867442032036e-05, 9.040519736845964189e-05, 9.054827774759696332e-05, 9.069119959176039916e-05, 9.083396268117319725e-05, 9.097656679631430099e-05, 9.111901171794474963e-05, 9.126129722710313817e-05, 9.140342310509672692e-05, 9.154538913353051164e-05, 9.168719509426636271e-05, 9.182884076945094329e-05, 9.197032594150839101e-05, 9.211165039314126661e-05, 9.225281390732487541e-05, 9.239381626733196009e-05, 9.253465725670197704e-05, 9.267533665923507905e-05, 9.281585425904949674e-05, 9.295620984051832956e-05, 9.309640318829510584e-05, 9.323643408733346108e-05, 9.337630232284950256e-05, 9.351600768034663759e-05, 9.365554994561111474e-05, 9.379492890470429885e-05, 9.393414434398935601e-05, 9.407319605009968968e-05, 9.421208380993303184e-05, 9.435080741070886500e-05, 9.448936663990472533e-05, 9.462776128528238616e-05, 9.476599113490776665e-05, 9.490405597711156166e-05, 9.504195560051711933e-05, 9.517968979403256707e-05, 9.531725834685169242e-05, 9.545466104844872539e-05, 9.559189768860911623e-05, 9.572896805736104094e-05, 9.586587194506383152e-05, 9.600260914233931886e-05, 9.613917944009637640e-05, 9.627558262955782185e-05, 9.641181850219682876e-05, 9.654788684979387424e-05, 9.668378746443107399e-05, 9.681952013846133675e-05, 9.695508466452683642e-05, 9.709048083558454497e-05, 9.722570844483852408e-05, 9.736076728582691874e-05, 9.749565715235304273e-05, 9.763037783851248358e-05, 9.776492913871656209e-05, 9.789931084763091220e-05, 9.803352276023269982e-05, 9.816756467180323665e-05, 9.830143637789834083e-05, 9.843513767436683616e-05, 9.856866835737508213e-05, 9.870202822334682782e-05, 9.883521706901796414e-05, 9.896823469143103502e-05, 9.910108088790443252e-05, 9.923375545605767230e-05, 9.936625819380591842e-05, 9.949858889935370848e-05, 9.963074737121857571e-05, 9.976273340819727603e-05, 9.989454680938196984e-05, 1.000261873741867307e-04, 1.001576549022852849e-04, 1.002889491936677970e-04, 1.004200700486335374e-04, 1.005510172677614598e-04, 1.006817906519353012e-04, 1.008123900023371840e-04, 1.009428151204419522e-04, 1.010730658080414023e-04, 1.012031418672088034e-04, 1.013330431003234543e-04, 1.014627693100645848e-04, 1.015923202994114773e-04, 1.017216958716381686e-04, 1.018508958303378708e-04, 1.019799199793862442e-04, 1.021087681229674183e-04, 1.022374400655666596e-04, 1.023659356119718491e-04, 1.024942545672665703e-04, 1.026223967368552494e-04, 1.027503619264280674e-04, 1.028781499419833357e-04, 1.030057605898237149e-04, 1.031331936765492483e-04, 1.032604490090826383e-04, 1.033875263946322878e-04, 1.035144256407178741e-04, 1.036411465551638440e-04, 1.037676889461001316e-04, 1.038940526219561276e-04, 1.040202373914845050e-04, 1.041462430637273776e-04, 1.042720694480379174e-04, 1.043977163540771823e-04, 1.045231835918129375e-04, 1.046484709715135976e-04, 1.047735783037734476e-04, 1.048985053994767967e-04, 1.050232520698223589e-04, 1.051478181263171415e-04, 1.052722033807704948e-04, 1.053964076453189273e-04, 1.055204307323956393e-04, 1.056442724547276905e-04, 1.057679326253847216e-04, 1.058914110577248115e-04, 1.060147075654157552e-04, 1.061378219624590922e-04, 1.062607540631277511e-04, 1.063835036820448581e-04, 1.065060706341228994e-04, 1.066284547345920186e-04, 1.067506557989882402e-04, 1.068726736431827425e-04, 1.069945080833197058e-04, 1.071161589358962185e-04, 1.072376260176989050e-04, 1.073589091458290252e-04, 1.074800081377233723e-04, 1.076009228110983692e-04, 1.077216529840032615e-04, 1.078421984748112271e-04, 1.079625591021946029e-04, 1.080827346851401439e-04, 1.082027250429725784e-04, 1.083225299952929164e-04, 1.084421493620576100e-04, 1.085615829635159271e-04, 1.086808306202351459e-04, 1.087998921531192433e-04, 1.089187673833581820e-04, 1.090374561324739748e-04, 1.091559582223181372e-04, 1.092742734750427121e-04, 1.093924017131176304e-04, 1.095103427593543466e-04, 1.096280964368487695e-04, 1.097456625690320563e-04, 1.098630409796655041e-04, 1.099802314928134174e-04, 1.100972339328651714e-04, 1.102140481245298455e-04, 1.103306738928312226e-04, 1.104471110631295808e-04, 1.105633594610899137e-04, 1.106794189126974066e-04, 1.107952892442805711e-04, 1.109109702824563436e-04, 1.110264618541803653e-04, 1.111417637867399350e-04, 1.112568759077293431e-04, 1.113717980450696992e-04, 1.114865300270051647e-04, 1.116010716820976941e-04, 1.117154228392480415e-04, 1.118295833276642645e-04, 1.119435529768841267e-04, 1.120573316167686466e-04, 1.121709190775034391e-04, 1.122843151895924681e-04, 1.123975197838813296e-04, 1.125105326915238312e-04, 1.126233537440042722e-04, 1.127359827731331886e-04, 1.128484196110456723e-04, 1.129606640901983624e-04, 1.130727160433892589e-04, 1.131845753037270808e-04, 1.132962417046529363e-04, 1.134077150799339125e-04, 1.135189952636598502e-04, 1.136300820902631299e-04, 1.137409753944883554e-04, 1.138516750114134144e-04, 1.139621807764433931e-04, 1.140724925253126635e-04, 1.141826100940792862e-04, 1.142925333191440650e-04, 1.144022620372227240e-04, 1.145117960853656806e-04, 1.146211353009515805e-04, 1.147302795216899546e-04, 1.148392285856151743e-04, 1.149479823311063873e-04, 1.150565405968588539e-04, 1.151649032219033409e-04, 1.152730700456006867e-04, 1.153810409076403245e-04, 1.154888156480554065e-04, 1.155963941072022451e-04, 1.157037761257537803e-04, 1.158109615447451026e-04, 1.159179502055237833e-04, 1.160247419497691866e-04, 1.161313366195149669e-04, 1.162377340570918636e-04, 1.163439341051989329e-04, 1.164499366068490129e-04, 1.165557414053887810e-04, 1.166613483445132145e-04, 1.167667572682422669e-04, 1.168719680209156364e-04, 1.169769804472363509e-04, 1.170817943922233611e-04, 1.171864097012306093e-04, 1.172908262199672089e-04, 1.173950437944474488e-04, 1.174990622710379975e-04, 1.176028814964488089e-04, 1.177065013177139183e-04, 1.178099215822020002e-04, 1.179131421376384859e-04, 1.180161628320522610e-04, 1.181189835138425208e-04, 1.182216040317263890e-04, 1.183240242347592062e-04, 1.184262439723528124e-04, 1.185282630942283974e-04, 1.186300814504600860e-04, 1.187316988914691781e-04, 1.188331152680021665e-04, 1.189343304311438692e-04, 1.190353442323371756e-04, 1.191361565233315468e-04, 1.192367671562485421e-04, 1.193371759835309157e-04, 1.194373828579660488e-04, 1.195373876326812204e-04, 1.196371901611441351e-04, 1.197367902971585866e-04, 1.198361878948829979e-04, 1.199353828088026787e-04, 1.200343748937493955e-04, 1.201331640048953407e-04, 1.202317499977553013e-04, 1.203301327281807765e-04, 1.204283120523790197e-04, 1.205262878268857971e-04, 1.206240599085843350e-04, 1.207216281546996542e-04, 1.208189924227963207e-04, 1.209161525707944915e-04, 1.210131084569440702e-04, 1.211098599398436942e-04, 1.212064068784352727e-04, 1.213027491320041494e-04, 1.213988865601761213e-04, 1.214948190229339994e-04, 1.215905463805917101e-04, 1.216860684938127945e-04, 1.217813852236056781e-04, 1.218764964313227226e-04, 1.219714019786582608e-04, 1.220661017276656858e-04, 1.221605955407298045e-04, 1.222548832805858514e-04, 1.223489648103153957e-04, 1.224428399933423029e-04, 1.225365086934491468e-04, 1.226299707747525438e-04, 1.227232261017202294e-04, 1.228162745391669648e-04, 1.229091159522547542e-04, 1.230017502064886434e-04, 1.230941771677343652e-04, 1.231863967021917491e-04, 1.232784086764145896e-04, 1.233702129573030026e-04, 1.234618094121022868e-04, 1.235531979084191867e-04, 1.236443783141956551e-04, 1.237353504977274470e-04, 1.238261143276589698e-04, 1.239166696729843131e-04, 1.240070164030426954e-04, 1.240971543875355398e-04, 1.241870834965060099e-04, 1.242768036003342937e-04, 1.243663145697763094e-04, 1.244556162759214487e-04, 1.245447085902100053e-04, 1.246335913844484893e-04, 1.247222645307671264e-04, 1.248107279016753693e-04, 1.248989813700170657e-04, 1.249870248089880221e-04, 1.250748580921483917e-04, 1.251624810934006641e-04, 1.252498936869887443e-04, 1.253370957475316442e-04, 1.254240871499860503e-04, 1.255108677696598226e-04, 1.255974374822304521e-04, 1.256837961636999321e-04, 1.257699436904515151e-04, 1.258558799392054512e-04, 1.259416047870395058e-04, 1.260271181113812352e-04, 1.261124197900280713e-04, 1.261975097011026252e-04, 1.262823877231104754e-04, 1.263670537348947397e-04, 1.264515076156535849e-04, 1.265357492449551346e-04, 1.266197785026989804e-04, 1.267035952691512553e-04, 1.267871994249415441e-04, 1.268705908510422834e-04, 1.269537694287814196e-04, 1.270367350398584282e-04, 1.271194875663010540e-04, 1.272020268905208222e-04, 1.272843528952683693e-04, 1.273664654636558321e-04, 1.274483644791515890e-04, 1.275300498255801246e-04, 1.276115213871192107e-04, 1.276927790483142451e-04, 1.277738226940574077e-04, 1.278546522096008604e-04, 1.279352674805549856e-04, 1.280156683928873834e-04, 1.280958548329192662e-04, 1.281758266873409089e-04, 1.282555838431901545e-04, 1.283351261878661563e-04, 1.284144536091259901e-04, 1.284935659950829190e-04, 1.285724632342176964e-04, 1.286511452153611104e-04, 1.287296118277052326e-04, 1.288078629608012491e-04, 1.288858985045597864e-04, 1.289637183492473873e-04, 1.290413223855008769e-04, 1.291187105043059492e-04, 1.291958825970115606e-04, 1.292728385553266492e-04, 1.293495782713206777e-04, 1.294261016374191066e-04, 1.295024085464193319e-04, 1.295784988914679440e-04, 1.296543725660762860e-04, 1.297300294641162254e-04, 1.298054694798171996e-04, 1.298806925077802289e-04, 1.299556984429578324e-04, 1.300304871806661432e-04, 1.301050586165839059e-04, 1.301794126467507959e-04, 1.302535491675659561e-04, 1.303274680757996785e-04, 1.304011692685754886e-04, 1.304746526433804717e-04, 1.305479180980664660e-04, 1.306209655308423643e-04, 1.306937948402914619e-04, 1.307664059253525637e-04, 1.308387986853174097e-04, 1.309109730198607883e-04, 1.309829288290071975e-04, 1.310546660131446141e-04, 1.311261844730348205e-04, 1.311974841097963561e-04, 1.312685648249010744e-04, 1.313394265202053957e-04, 1.314100690979163710e-04, 1.314804924606045302e-04, 1.315506965112187357e-04, 1.316206811530480723e-04, 1.316904462897705824e-04, 1.317599918254146142e-04, 1.318293176643740004e-04, 1.318984237114175179e-04, 1.319673098716716761e-04, 1.320359760506186299e-04, 1.321044221541256970e-04, 1.321726480884121541e-04, 1.322406537600629524e-04, 1.323084390760420257e-04, 1.323760039436564038e-04, 1.324433482706003664e-04, 1.325104719649231608e-04, 1.325773749350426362e-04, 1.326440570897389007e-04, 1.327105183381724817e-04, 1.327767585898474907e-04, 1.328427777546569691e-04, 1.329085757428480861e-04, 1.329741524650347425e-04, 1.330395078322102009e-04, 1.331046417557166478e-04, 1.331695541472723520e-04, 1.332342449189693068e-04, 1.332987139832573738e-04, 1.333629612529569947e-04, 1.334269866412567790e-04, 1.334907900617099538e-04, 1.335543714282464247e-04, 1.336177306551549957e-04, 1.336808676570926113e-04, 1.337437823490966900e-04, 1.338064746465549557e-04, 1.338689444652322723e-04, 1.339311917212679599e-04, 1.339932163311615917e-04, 1.340550182117836197e-04, 1.341165972803742357e-04, 1.341779534545417183e-04, 1.342390866522616465e-04, 1.342999967918861971e-04, 1.343606837921291282e-04, 1.344211475720755915e-04, 1.344813880511809394e-04, 1.345414051492666593e-04, 1.346011987865333573e-04, 1.346607688835415402e-04, 1.347201153612262794e-04, 1.347792381408906249e-04, 1.348381371442091011e-04, 1.348968122932225845e-04, 1.349552635103518832e-04, 1.350134907183783565e-04, 1.350714938404574950e-04, 1.351292728001155050e-04, 1.351868275212460833e-04, 1.352441579281221532e-04, 1.353012639453783823e-04, 1.353581454980247619e-04, 1.354148025114407792e-04, 1.354712349113775319e-04, 1.355274426239554239e-04, 1.355834255756733272e-04, 1.356391836933933484e-04, 1.356947169043521318e-04, 1.357500251361582031e-04, 1.358051083167909935e-04, 1.358599663745997286e-04, 1.359145992383129962e-04, 1.359690068370232423e-04, 1.360231891001982909e-04, 1.360771459576772782e-04, 1.361308773396694056e-04, 1.361843831767633724e-04, 1.362376633999157747e-04, 1.362907179404470399e-04, 1.363435467300665258e-04, 1.363961497008451716e-04, 1.364485267852263398e-04, 1.365006779160356286e-04, 1.365526030264607867e-04, 1.366043020500678682e-04, 1.366557749207944017e-04, 1.367070215729508274e-04, 1.367580419412197648e-04, 1.368088359606652287e-04, 1.368594035667078010e-04, 1.369097446951595960e-04, 1.369598592821946075e-04, 1.370097472643618550e-04, 1.370594085785905333e-04, 1.371088431621792251e-04, 1.371580509527921602e-04, 1.372070318884822547e-04, 1.372557859076671777e-04, 1.373043129491376450e-04, 1.373526129520687763e-04, 1.374006858559917975e-04, 1.374485316008312017e-04, 1.374961501268732805e-04, 1.375435413747807872e-04, 1.375907052855967051e-04, 1.376376418007346520e-04, 1.376843508619747601e-04, 1.377308324114861462e-04, 1.377770863918037372e-04, 1.378231127458365637e-04, 1.378689114168776266e-04, 1.379144823485812914e-04, 1.379598254849830204e-04, 1.380049407704988314e-04, 1.380498281499119881e-04, 1.380944875683830296e-04, 1.381389189714484151e-04, 1.381831223050175963e-04, 1.382270975153802005e-04, 1.382708445491965979e-04, 1.383143633535016150e-04, 1.383576538757136419e-04, 1.384007160636142766e-04, 1.384435498653673795e-04, 1.384861552295160378e-04, 1.385285321049726723e-04, 1.385706804410273313e-04, 1.386126001873462814e-04, 1.386542912939688359e-04, 1.386957537113175194e-04, 1.387369873901826993e-04, 1.387779922817347286e-04, 1.388187683375183084e-04, 1.388593155094557401e-04, 1.388996337498415046e-04, 1.389397230113539449e-04, 1.389795832470402763e-04, 1.390192144103269954e-04, 1.390586164550159493e-04, 1.390977893352863149e-04, 1.391367330056903428e-04, 1.391754474211639016e-04, 1.392139325370127083e-04, 1.392521883089208393e-04, 1.392902146929487790e-04, 1.393280116455326064e-04, 1.393655791234898772e-04, 1.394029170840090255e-04, 1.394400254846577122e-04, 1.394769042833800331e-04, 1.395135534384960854e-04, 1.395499729087023200e-04, 1.395861626530765288e-04, 1.396221226310685477e-04, 1.396578528025059214e-04, 1.396933531275947982e-04, 1.397286235669164059e-04, 1.397636640814285431e-04, 1.397984746324711894e-04, 1.398330551817551217e-04, 1.398674056913712925e-04, 1.399015261237877936e-04, 1.399354164418467941e-04, 1.399690766087742977e-04, 1.400025065881692191e-04, 1.400357063440023548e-04, 1.400686758406337296e-04, 1.401014150427915906e-04, 1.401339239155837096e-04, 1.401662024244986035e-04, 1.401982505353984050e-04, 1.402300682145229559e-04, 1.402616554284909450e-04, 1.402930121442978490e-04, 1.403241383293149286e-04, 1.403550339512979570e-04, 1.403856989783686257e-04, 1.404161333790370143e-04, 1.404463371221855177e-04, 1.404763101770732908e-04, 1.405060525133416157e-04, 1.405355641010073964e-04, 1.405648449104597434e-04, 1.405938949124745834e-04, 1.406227140781992908e-04, 1.406513023791603042e-04, 1.406796597872661623e-04, 1.407077862747939238e-04, 1.407356818144082499e-04, 1.407633463791451139e-04, 1.407907799424194448e-04, 1.408179824780277025e-04, 1.408449539601412366e-04, 1.408716943633056909e-04, 1.408982036624516546e-04, 1.409244818328833063e-04, 1.409505288502817472e-04, 1.409763446907121574e-04, 1.410019293306091044e-04, 1.410272827467893100e-04, 1.410524049164495089e-04, 1.410772958171612444e-04, 1.411019554268743109e-04, 1.411263837239169977e-04, 1.411505806869941648e-04, 1.411745462951927719e-04, 1.411982805279730696e-04, 1.412217833651738849e-04, 1.412450547870170391e-04, 1.412680947740947441e-04, 1.412909033073802818e-04, 1.413134803682277601e-04, 1.413358259383660955e-04, 1.413579399999028081e-04, 1.413798225353232350e-04, 1.414014735274897721e-04, 1.414228929596462103e-04, 1.414440808154103090e-04, 1.414650370787799217e-04, 1.414857617341303128e-04, 1.415062547662144284e-04, 1.415265161601619208e-04, 1.415465459014844337e-04, 1.415663439760674438e-04, 1.415859103701761694e-04, 1.416052450704528333e-04, 1.416243480639178007e-04, 1.416432193379693627e-04, 1.416618588803856605e-04, 1.416802666793190479e-04, 1.416984427233023520e-04, 1.417163870012447268e-04, 1.417340995024335773e-04, 1.417515802165358874e-04, 1.417688291335941547e-04, 1.417858462440289651e-04, 1.418026315386398874e-04, 1.418191850086031693e-04, 1.418355066454716562e-04, 1.418515964411801850e-04, 1.418674543880368291e-04, 1.418830804787286177e-04, 1.418984747063218612e-04, 1.419136370642588168e-04, 1.419285675463583939e-04, 1.419432661468211137e-04, 1.419577328602210592e-04, 1.419719676815115134e-04, 1.419859706060229800e-04, 1.419997416294632112e-04, 1.420132807479191587e-04, 1.420265879578543446e-04, 1.420396632561070458e-04, 1.420525066398969341e-04, 1.420651181068193847e-04, 1.420774976548462348e-04, 1.420896452823287924e-04, 1.421015609879943125e-04, 1.421132447709475151e-04, 1.421246966306706396e-04, 1.421359165670211405e-04, 1.421469045802386535e-04, 1.421576606709350481e-04, 1.421681848401000383e-04, 1.421784770891039473e-04, 1.421885374196902533e-04, 1.421983658339807943e-04, 1.422079623344756863e-04, 1.422173269240512906e-04, 1.422264596059581807e-04, 1.422353603838280816e-04, 1.422440292616678793e-04, 1.422524662438601358e-04, 1.422606713351671549e-04, 1.422686445407235554e-04, 1.422763858660447823e-04, 1.422838953170215228e-04, 1.422911728999195439e-04, 1.422982186213847067e-04, 1.423050324884361090e-04, 1.423116145084702593e-04, 1.423179646892617004e-04, 1.423240830389598650e-04, 1.423299695660902955e-04, 1.423356242795569210e-04, 1.423410471886369343e-04, 1.423462383029866734e-04, 1.423511976326372313e-04, 1.423559251879962710e-04, 1.423604209798468880e-04, 1.423646850193490462e-04, 1.423687173180384941e-04, 1.423725178878274423e-04, 1.423760867410026119e-04, 1.423794238902282433e-04, 1.423825293485439546e-04, 1.423854031293642270e-04, 1.423880452464793532e-04, 1.423904557140574702e-04, 1.423926345466398707e-04, 1.423945817591434687e-04, 1.423962973668634296e-04, 1.423977813854666646e-04, 1.423990338309980377e-04, 1.424000547198769776e-04, 1.424008440688981554e-04, 1.424014018952316743e-04, 1.424017282164224464e-04, 1.424018230503901921e-04, 1.424016864154318261e-04, 1.424013183302160087e-04, 1.424007188137890549e-04, 1.423998878855702456e-04, 1.423988255653551606e-04, 1.423975318733130505e-04, 1.423960068299884622e-04, 1.423942504563006429e-04, 1.423922627735429980e-04, 1.423900438033838230e-04, 1.423875935678645956e-04, 1.423849120894036895e-04, 1.423819993907911969e-04, 1.423788554951925067e-04, 1.423754804261476538e-04, 1.423718742075703978e-04, 1.423680368637481953e-04, 1.423639684193428782e-04, 1.423596688993897588e-04, 1.423551383292980638e-04, 1.423503767348516117e-04, 1.423453841422064002e-04, 1.423401605778932633e-04, 1.423347060688159459e-04, 1.423290206422519447e-04, 1.423231043258521827e-04, 1.423169571476403316e-04, 1.423105791360147906e-04, 1.423039703197442407e-04, 1.422971307279739068e-04, 1.422900603902194040e-04, 1.422827593363706683e-04, 1.422752275966898152e-04, 1.422674652018122781e-04, 1.422594721827454261e-04, 1.422512485708698918e-04, 1.422427943979386500e-04, 1.422341096960773159e-04, 1.422251944977834942e-04, 1.422160488359267797e-04, 1.422066727437496512e-04, 1.421970662548670652e-04, 1.421872294032644501e-04, 1.421771622233008233e-04, 1.421668647497065956e-04, 1.421563370175828937e-04, 1.421455790624042434e-04, 1.421345909200151818e-04, 1.421233726266331570e-04, 1.421119242188459810e-04, 1.421002457336131841e-04, 1.420883372082654193e-04, 1.420761986805058172e-04, 1.420638301884058388e-04, 1.420512317704096940e-04, 1.420384034653337721e-04, 1.420253453123615191e-04, 1.420120573510505392e-04, 1.419985396213283664e-04, 1.419847921634914342e-04, 1.419708150182075700e-04, 1.419566082265157775e-04, 1.419421718298236621e-04, 1.419275058699104937e-04, 1.419126103889239543e-04, 1.418974854293831732e-04, 1.418821310341765592e-04, 1.418665472465619089e-04, 1.418507341101667857e-04, 1.418346916689890624e-04, 1.418184199673944547e-04, 1.418019190501194210e-04, 1.417851889622694008e-04, 1.417682297493172970e-04, 1.417510414571080833e-04, 1.417336241318542512e-04, 1.417159778201353484e-04, 1.416981025689019913e-04, 1.416799984254721507e-04, 1.416616654375331581e-04, 1.416431036531399709e-04, 1.416243131207161753e-04, 1.416052938890533083e-04, 1.415860460073121866e-04, 1.415665695250178100e-04, 1.415468644920685778e-04, 1.415269309587268559e-04, 1.415067689756230155e-04, 1.414863785937555958e-04, 1.414657598644907888e-04, 1.414449128395613554e-04, 1.414238375710677909e-04, 1.414025341114777824e-04, 1.413810025136248000e-04, 1.413592428307099125e-04, 1.413372551163014079e-04, 1.413150394243336281e-04, 1.412925958091076461e-04, 1.412699243252899385e-04, 1.412470250279142551e-04, 1.412238979723805081e-04, 1.412005432144538772e-04, 1.411769608102659483e-04, 1.411531508163151743e-04, 1.411291132894622942e-04, 1.411048482869367300e-04, 1.410803558663323851e-04, 1.410556360856081871e-04, 1.410306890030895777e-04, 1.410055146774634449e-04, 1.409801131677852510e-04, 1.409544845334740454e-04, 1.409286288343130343e-04, 1.409025461304502303e-04, 1.408762364823997815e-04, 1.408496999510358181e-04, 1.408229365976000960e-04, 1.407959464836998830e-04, 1.407687296713006672e-04, 1.407412862227373242e-04, 1.407136162007059047e-04, 1.406857196682644745e-04, 1.406575966888372613e-04, 1.406292473262105895e-04, 1.406006716445332323e-04, 1.405718697083196370e-04, 1.405428415824420648e-04, 1.405135873321386951e-04, 1.404841070230134089e-04, 1.404544007210254883e-04, 1.404244684925011911e-04, 1.403943104041295218e-04, 1.403639265229566753e-04, 1.403333169163959576e-04, 1.403024816522198707e-04, 1.402714207985626877e-04, 1.402401344239210222e-04, 1.402086225971527981e-04, 1.401768853874732924e-04, 1.401449228644667088e-04, 1.401127350980700779e-04, 1.400803221585858330e-04, 1.400476841166767425e-04, 1.400148210433616535e-04, 1.399817330100267411e-04, 1.399484200884148826e-04, 1.399148823506262003e-04, 1.398811198691246474e-04, 1.398471327167340780e-04, 1.398129209666331514e-04, 1.397784846923677462e-04, 1.397438239678348328e-04, 1.397089388672959444e-04, 1.396738294653711060e-04, 1.396384958370344427e-04, 1.396029380576256456e-04, 1.395671562028404306e-04, 1.395311503487293731e-04, 1.394949205717057141e-04, 1.394584669485398037e-04, 1.394217895563557670e-04, 1.393848884726429970e-04, 1.393477637752445805e-04, 1.393104155423581113e-04, 1.392728438525436319e-04, 1.392350487847151771e-04, 1.391970304181451101e-04, 1.391587888324639607e-04, 1.391203241076541090e-04, 1.390816363240595440e-04, 1.390427255623797372e-04, 1.390035919036652250e-04, 1.389642354293310253e-04, 1.389246562211436003e-04, 1.388848543612224010e-04, 1.388448299320470237e-04, 1.388045830164503244e-04, 1.387641136976214013e-04, 1.387234220591052145e-04, 1.386825081847969487e-04, 1.386413721589523399e-04, 1.386000140661776197e-04, 1.385584339914365352e-04, 1.385166320200445218e-04, 1.384746082376748827e-04, 1.384323627303482996e-04, 1.383898955844448130e-04, 1.383472068866960973e-04, 1.383042967241876020e-04, 1.382611651843574133e-04, 1.382178123549992631e-04, 1.381742383242542613e-04, 1.381304431806209523e-04, 1.380864270129495146e-04, 1.380421899104415434e-04, 1.379977319626533036e-04, 1.379530532594877611e-04, 1.379081538912049906e-04, 1.378630339484147220e-04, 1.378176935220784820e-04, 1.377721327035090243e-04, 1.377263515843715226e-04, 1.376803502566783393e-04, 1.376341288127962354e-04, 1.375876873454414642e-04, 1.375410259476806394e-04, 1.374941447129317371e-04, 1.374470437349629309e-04, 1.373997231078880380e-04, 1.373521829261744882e-04, 1.373044232846401525e-04, 1.372564442784496839e-04, 1.372082460031201555e-04, 1.371598285545110854e-04, 1.371111920288359840e-04, 1.370623365226612150e-04, 1.370132621328903563e-04, 1.369639689567842033e-04, 1.369144570919506043e-04, 1.368647266363367903e-04, 1.368147776882525221e-04, 1.367646103463416847e-04, 1.367142247096020467e-04, 1.366636208773790802e-04, 1.366127989493597268e-04, 1.365617590255807461e-04, 1.365105012064324558e-04, 1.364590255926389996e-04, 1.364073322852782692e-04, 1.363554213857746673e-04, 1.363032929958910033e-04, 1.362509472177465179e-04, 1.361983841538006476e-04, 1.361456039068534578e-04, 1.360926065800564853e-04, 1.360393922769057452e-04, 1.359859611012343848e-04, 1.359323131572338808e-04, 1.358784485494249545e-04, 1.358243673826822111e-04, 1.357700697622222130e-04, 1.357155557935978694e-04, 1.356608255827180328e-04, 1.356058792358289867e-04, 1.355507168595145538e-04, 1.354953385607086187e-04, 1.354397444466877009e-04, 1.353839346250616305e-04, 1.353279092037989193e-04, 1.352716682911929327e-04, 1.352152119958886973e-04, 1.351585404268710287e-04, 1.351016536934658053e-04, 1.350445519053398600e-04, 1.349872351725036907e-04, 1.349297036053012688e-04, 1.348719573144239168e-04, 1.348139964109046980e-04, 1.347558210061059749e-04, 1.346974312117453216e-04, 1.346388271398717531e-04, 1.345800089028705493e-04, 1.345209766134723088e-04, 1.344617303847447356e-04, 1.344022703300948079e-04, 1.343425965632697534e-04, 1.342827091983498668e-04, 1.342226083497584843e-04, 1.341622941322566170e-04, 1.341017666609422459e-04, 1.340410260512507829e-04, 1.339800724189582691e-04, 1.339189058801699636e-04, 1.338575265513360102e-04, 1.337959345492404598e-04, 1.337341299910043064e-04, 1.336721129940844025e-04, 1.336098836762767122e-04, 1.335474421557052789e-04, 1.334847885508372691e-04, 1.334219229804732142e-04, 1.333588455637485016e-04, 1.332955564201371149e-04, 1.332320556694381629e-04, 1.331683434317952868e-04, 1.331044198276820504e-04, 1.330402849779075780e-04, 1.329759390036141695e-04, 1.329113820262807423e-04, 1.328466141677110408e-04, 1.327816355500515528e-04, 1.327164462957777671e-04, 1.326510465276979688e-04, 1.325854363689542683e-04, 1.325196159430221956e-04, 1.324535853737027311e-04, 1.323873447851357495e-04, 1.323208943017910484e-04, 1.322542340484690257e-04, 1.321873641503043659e-04, 1.321202847327547102e-04, 1.320529959216132875e-04, 1.319854978430132241e-04, 1.319177906234003574e-04, 1.318498743895617502e-04, 1.317817492686149301e-04, 1.317134153879946624e-04, 1.316448728754863974e-04, 1.315761218591832821e-04, 1.315071624675199873e-04, 1.314379948292587210e-04, 1.313686190734825881e-04, 1.312990353296075979e-04, 1.312292437273872173e-04, 1.311592443968844532e-04, 1.310890374685021826e-04, 1.310186230729698715e-04, 1.309480013413324886e-04, 1.308771724049796162e-04, 1.308061363956179116e-04, 1.307348934452756337e-04, 1.306634436863140809e-04, 1.305917872514217911e-04, 1.305199242736001760e-04, 1.304478548861972664e-04, 1.303755792228654831e-04, 1.303030974175930785e-04, 1.302304096046937281e-04, 1.301575159187932766e-04, 1.300844164948593360e-04, 1.300111114681743710e-04, 1.299376009743384900e-04, 1.298638851492847060e-04, 1.297899641292686091e-04, 1.297158380508561966e-04, 1.296415070509584588e-04, 1.295669712667858156e-04, 1.294922308358843288e-04, 1.294172858961180838e-04, 1.293421365856735805e-04, 1.292667830430579447e-04, 1.291912254071027495e-04, 1.291154638169508969e-04, 1.290394984120754823e-04, 1.289633293322670830e-04, 1.288869567176351941e-04, 1.288103807086105870e-04, 1.287336014459464207e-04, 1.286566190707050955e-04, 1.285794337242779860e-04, 1.285020455483720239e-04, 1.284244546850129502e-04, 1.283466612765476198e-04, 1.282686654656311261e-04, 1.281904673952471031e-04, 1.281120672086925188e-04, 1.280334650495818503e-04, 1.279546610618465679e-04, 1.278756553897382800e-04, 1.277964481778150988e-04, 1.277170395709613729e-04, 1.276374297143739722e-04, 1.275576187535657304e-04, 1.274776068343649025e-04, 1.273973941029180653e-04, 1.273169807056772154e-04, 1.272363667894176585e-04, 1.271555525012271672e-04, 1.270745379885074723e-04, 1.269933233989773520e-04, 1.269119088806586193e-04, 1.268302945818971280e-04, 1.267484806513482446e-04, 1.266664672379799381e-04, 1.265842544910731867e-04, 1.265018425602242817e-04, 1.264192315953313291e-04, 1.263364217466144161e-04, 1.262534131646019496e-04, 1.261702060001329876e-04, 1.260868004043614677e-04, 1.260031965287413801e-04, 1.259193945250474767e-04, 1.258353945453609586e-04, 1.257511967420735699e-04, 1.256668012678860251e-04, 1.255822082758121833e-04, 1.254974179191636256e-04, 1.254124303515684389e-04, 1.253272457269734655e-04, 1.252418641996132405e-04, 1.251562859240434942e-04, 1.250705110551278160e-04, 1.249845397480230992e-04, 1.248983721582180568e-04, 1.248120084414838099e-04, 1.247254487539112646e-04, 1.246386932518986444e-04, 1.245517420921385876e-04, 1.244645954316373382e-04, 1.243772534277170767e-04, 1.242897162379829874e-04, 1.242019840203602299e-04, 1.241140569330783532e-04, 1.240259351346566328e-04, 1.239376187839431550e-04, 1.238491080400660831e-04, 1.237604030624692728e-04, 1.236715040108980149e-04, 1.235824110454029391e-04, 1.234931243263232893e-04, 1.234036440143261180e-04, 1.233139702703540822e-04, 1.232241032556673471e-04, 1.231340431318276218e-04, 1.230437900606814897e-04, 1.229533442044004421e-04, 1.228627057254441787e-04, 1.227718747865664075e-04, 1.226808515508298885e-04, 1.225896361815996571e-04, 1.224982288425235629e-04, 1.224066296975762070e-04, 1.223148389110029156e-04, 1.222228566473642470e-04, 1.221306830715182372e-04, 1.220383183486052484e-04, 1.219457626440880713e-04, 1.218530161237135436e-04, 1.217600789535183784e-04, 1.216669512998480693e-04, 1.215736333293405600e-04, 1.214801252089298356e-04, 1.213864271058459632e-04, 1.212925391876190764e-04, 1.211984616220609847e-04, 1.211041945772930236e-04, 1.210097382217254549e-04, 1.209150927240634299e-04, 1.208202582533099439e-04, 1.207252349787510094e-04, 1.206300230699764326e-04, 1.205346226968668024e-04, 1.204390340295949277e-04, 1.203432572386264600e-04, 1.202472924947228078e-04, 1.201511399689266895e-04, 1.200547998325830718e-04, 1.199582722573250618e-04, 1.198615574150774303e-04, 1.197646554780590518e-04, 1.196675666187672102e-04, 1.195702910100023865e-04, 1.194728288248498275e-04, 1.193751802366848584e-04, 1.192773454191724350e-04, 1.191793245462705871e-04, 1.190811177922126637e-04, 1.189827253315345606e-04, 1.188841473390541336e-04, 1.187853839898786126e-04, 1.186864354594020392e-04, 1.185873019233099835e-04, 1.184879835575621291e-04, 1.183884805384167354e-04, 1.182887930424157566e-04, 1.181889212463850590e-04, 1.180888653274420372e-04, 1.179886254629758819e-04, 1.178882018306686807e-04, 1.177875946085012193e-04, 1.176868039747124451e-04, 1.175858301078421854e-04, 1.174846731867143013e-04, 1.173833333904236639e-04, 1.172818108983602096e-04, 1.171801058901929759e-04, 1.170782185458733941e-04, 1.169761490456351134e-04, 1.168738975699976058e-04, 1.167714642997450783e-04, 1.166688494159733919e-04, 1.165660531000280181e-04, 1.164630755335530716e-04, 1.163599168984732996e-04, 1.162565773769793769e-04, 1.161530571515505250e-04, 1.160493564049596625e-04, 1.159454753202307005e-04, 1.158414140806848791e-04, 1.157371728699213738e-04, 1.156327518717993787e-04, 1.155281512704880070e-04, 1.154233712504013884e-04, 1.153184119962487992e-04, 1.152132736930124637e-04, 1.151079565259550486e-04, 1.150024606805968272e-04, 1.148967863427666772e-04, 1.147909336985362971e-04, 1.146849029342704180e-04, 1.145786942366089280e-04, 1.144723077924486576e-04, 1.143657437889873983e-04, 1.142590024136825672e-04, 1.141520838542566283e-04, 1.140449882987184784e-04, 1.139377159353458283e-04, 1.138302669526879683e-04, 1.137226415395720694e-04, 1.136148398850827872e-04, 1.135068621785899226e-04, 1.133987086097350722e-04, 1.132903793684115167e-04, 1.131818746448111395e-04, 1.130731946293823736e-04, 1.129643395128340501e-04, 1.128553094861583020e-04, 1.127461047406120383e-04, 1.126367254677209550e-04, 1.125271718592790342e-04, 1.124174441073539103e-04, 1.123075424042662573e-04, 1.121974669426185737e-04, 1.120872179152761282e-04, 1.119767955153706048e-04, 1.118661999363053887e-04, 1.117554313717355222e-04, 1.116444900155967742e-04, 1.115333760620843771e-04, 1.114220897056602226e-04, 1.113106311410497722e-04, 1.111990005632492530e-04, 1.110871981675032289e-04, 1.109752241493353780e-04, 1.108630787045277979e-04, 1.107507620291255595e-04, 1.106382743194415995e-04, 1.105256157720367843e-04, 1.104127865837488046e-04, 1.102997869516721303e-04, 1.101866170731624975e-04, 1.100732771458370023e-04, 1.099597673675783706e-04, 1.098460879365152523e-04, 1.097322390510502619e-04, 1.096182209098420479e-04, 1.095040337118079226e-04, 1.093896776561240514e-04, 1.092751529422310232e-04, 1.091604597698122881e-04, 1.090455983388243660e-04, 1.089305688494765316e-04, 1.088153715022350425e-04, 1.087000064978287637e-04, 1.085844740372279442e-04, 1.084687743216688284e-04, 1.083529075526587656e-04, 1.082368739319307274e-04, 1.081206736614931678e-04, 1.080043069436086641e-04, 1.078877739807802426e-04, 1.077710749757795271e-04, 1.076542101316274266e-04, 1.075371796515976590e-04, 1.074199837392177944e-04, 1.073026225982727386e-04, 1.071850964327802024e-04, 1.070674054470441668e-04, 1.069495498455867136e-04, 1.068315298332000399e-04, 1.067133456149279186e-04, 1.065949973960496518e-04, 1.064764853821049669e-04, 1.063578097788985975e-04, 1.062389707924543539e-04, 1.061199686290663108e-04, 1.060008034952767574e-04, 1.058814755978558823e-04, 1.057619851438589920e-04, 1.056423323405520401e-04, 1.055225173954696182e-04, 1.054025405163935435e-04, 1.052824019113367303e-04, 1.051621017885687241e-04, 1.050416403566211353e-04, 1.049210178242395011e-04, 1.048002344004353540e-04, 1.046792902944660423e-04, 1.045581857158119077e-04, 1.044369208742291805e-04, 1.043154959797023564e-04, 1.041939112424487227e-04, 1.040721668729445556e-04, 1.039502630819036936e-04, 1.038282000802821586e-04, 1.037059780792840246e-04, 1.035835972903382835e-04, 1.034610579251318043e-04, 1.033383601955922983e-04, 1.032155043138669327e-04, 1.030924904923743047e-04, 1.029693189437583630e-04, 1.028459898808904000e-04, 1.027225035168976202e-04, 1.025988600651406030e-04, 1.024750597392189941e-04, 1.023511027529740402e-04, 1.022269893204706996e-04, 1.021027196560258718e-04, 1.019782939741887201e-04, 1.018537124897448852e-04, 1.017289754177160661e-04, 1.016040829733655762e-04, 1.014790353721754665e-04, 1.013538328298794724e-04, 1.012284755624408273e-04, 1.011029637860565730e-04, 1.009772977171579934e-04, 1.008514775724157639e-04, 1.007255035687173463e-04, 1.005993759231993114e-04, 1.004730948532248146e-04, 1.003466605763902639e-04, 1.002200733105283964e-04, 1.000933332736874071e-04, 9.996644068416243162e-05, 9.983939576047444497e-05, 9.971219872137396126e-05, 9.958484978584245678e-05, 9.945734917309522957e-05, 9.932969710256100287e-05, 9.920189379391347541e-05, 9.907393946704932562e-05, 9.894583434209317191e-05, 9.881757863939742356e-05, 9.868917257954730872e-05, 9.856061638333845850e-05, 9.843191027180901297e-05, 9.830305446621838427e-05, 9.817404918805148508e-05, 9.804489465902452901e-05, 9.791559110106102918e-05, 9.778613873632113936e-05, 9.765653778720635671e-05, 9.752678847630741235e-05, 9.739689102646149010e-05, 9.726684566072949889e-05, 9.713665260237671977e-05, 9.700631207490895049e-05, 9.687582430204786700e-05, 9.674518950773687814e-05, 9.661440791614569286e-05, 9.648347975164855484e-05, 9.635240523885140178e-05, 9.622118460259670362e-05, 9.608981806791289809e-05, 9.595830586007047104e-05, 9.582664820455913401e-05, 9.569484532706891845e-05, 9.556289745352049270e-05, 9.543080481006913291e-05, 9.529856762305264066e-05, 9.516618611904976792e-05, 9.503366052485454855e-05, 9.490099106745556292e-05, 9.476817797409585367e-05, 9.463522147219547299e-05, 9.450212178941145257e-05, 9.436887915361523861e-05, 9.423549379287602225e-05, 9.410196593548769554e-05, 9.396829580997577674e-05, 9.383448364504341711e-05, 9.370052966963032727e-05, 9.356643411288793541e-05, 9.343219720415636156e-05, 9.329781917302872431e-05, 9.316330024926754887e-05, 9.302864066287034770e-05, 9.289384064403872078e-05, 9.275890042318423736e-05, 9.262382023092781262e-05, 9.248860029810619925e-05, 9.235324085574629193e-05, 9.221774213510209857e-05, 9.208210436763473680e-05, 9.194632778499022138e-05, 9.181041261905635771e-05, 9.167435910191064591e-05, 9.153816746582503776e-05, 9.140183794329526437e-05, 9.126537076701660427e-05, 9.112876616988996846e-05, 9.099202438502690133e-05, 9.085514564572559268e-05, 9.071813018550599231e-05, 9.058097823808626927e-05, 9.044369003738697251e-05, 9.030626581753250809e-05, 9.016870581285520495e-05, 9.003101025787138112e-05, 8.989317938731767807e-05, 8.975521343612541934e-05, 8.961711263942714282e-05, 8.947887723255574697e-05, 8.934050745105003380e-05, 8.920200353063097837e-05, 8.906336570723666726e-05, 8.892459421699779553e-05, 8.878568929624365699e-05, 8.864665118150813440e-05, 8.850748010950407164e-05, 8.836817631716029921e-05, 8.822874004159620971e-05, 8.808917152012744986e-05, 8.794947099026623227e-05, 8.780963868972603808e-05, 8.766967485639798145e-05, 8.752957972838570726e-05, 8.738935354398174194e-05, 8.724899654167245374e-05, 8.710850896013795782e-05, 8.696789103825775414e-05, 8.682714301508564169e-05, 8.668626512988654074e-05, 8.654525762211132578e-05, 8.640412073140219234e-05, 8.626285469759904020e-05, 8.612145976071411662e-05, 8.597993616096210299e-05, 8.583828413876663354e-05, 8.569650393470378132e-05, 8.555459578956353249e-05, 8.541255994432453793e-05, 8.527039664013549207e-05, 8.512810611835154855e-05, 8.498568862050968171e-05, 8.484314438833290143e-05, 8.470047366373868280e-05, 8.455767668881130543e-05, 8.441475370583352567e-05, 8.427170495729266171e-05, 8.412853068582323932e-05, 8.398523113427006526e-05, 8.384180654566152882e-05, 8.369825716319230881e-05, 8.355458323025199648e-05, 8.341078499043237324e-05, 8.326686268747088304e-05, 8.312281656531118510e-05, 8.297864686807993842e-05, 8.283435384005930369e-05, 8.268993772575668460e-05, 8.254539876981664996e-05, 8.240073721708839820e-05, 8.225595331260125438e-05, 8.211104730153848672e-05, 8.196601942930039362e-05, 8.182086994144703064e-05, 8.167559908370323855e-05, 8.153020710199183343e-05, 8.138469424241154314e-05, 8.123906075121356150e-05, 8.109330687486951416e-05, 8.094743285998297420e-05, 8.080143895335832247e-05, 8.065532540196879076e-05, 8.050909245296283150e-05, 8.036274035366283025e-05, 8.021626935157189549e-05, 8.006967969434718732e-05, 7.992297162983856920e-05, 7.977614540606827918e-05, 7.962920127120522076e-05, 7.948213947362939161e-05, 7.933496026187219824e-05, 7.918766388462378789e-05, 7.904025059076377215e-05, 7.889272062933605988e-05, 7.874507424955385813e-05, 7.859731170080662454e-05, 7.844943323263307074e-05, 7.830143909476039693e-05, 7.815332953708342093e-05, 7.800510480963889620e-05, 7.785676516266989988e-05, 7.770831084656649979e-05, 7.755974211187291023e-05, 7.741105920931844588e-05, 7.726226238979121640e-05, 7.711335190434529571e-05, 7.696432800419889236e-05, 7.681519094074158662e-05, 7.666594096550671041e-05, 7.651657833021094780e-05, 7.636710328672777204e-05, 7.621751608709290723e-05, 7.606781698351136210e-05, 7.591800622832957954e-05, 7.576808407407570117e-05, 7.561805077343201507e-05, 7.546790657924135255e-05, 7.531765174450655959e-05, 7.516728652239683948e-05, 7.501681116622108136e-05, 7.486622592946625462e-05, 7.471553106577214691e-05, 7.456472682893532154e-05, 7.441381347291716765e-05, 7.426279125181634792e-05, 7.411166041990819577e-05, 7.396042123161706823e-05, 7.380907394152432834e-05, 7.365761880436537715e-05, 7.350605607503859845e-05, 7.335438600857585481e-05, 7.320260886017723636e-05, 7.305072488521612939e-05, 7.289873433917955811e-05, 7.274663747773390090e-05, 7.259443455669811046e-05, 7.244212583202265326e-05, 7.228971155983019412e-05, 7.213719199638763747e-05, 7.198456739811248336e-05, 7.183183802157925148e-05, 7.167900412349245730e-05, 7.152606596071946351e-05, 7.137302379029652436e-05, 7.121987786936832788e-05, 7.106662845525405089e-05, 7.091327580542173116e-05, 7.075982017746568892e-05, 7.060626182914708955e-05, 7.045260101836759749e-05, 7.029883800317416026e-05, 7.014497304175950992e-05, 6.999100639246827525e-05, 6.983693831376307335e-05, 6.968276906429739508e-05, 6.952849890282186229e-05, 6.937412808825712683e-05, 6.921965687966713141e-05, 6.906508553623115076e-05, 6.891041431731124252e-05, 6.875564348239038000e-05, 6.860077329107989248e-05, 6.844580400315189645e-05, 6.829073587851865505e-05, 6.813556917720587963e-05, 6.798030415942556105e-05, 6.782494108548168469e-05, 6.766948021584383429e-05, 6.751392181111322928e-05, 6.735826613202826774e-05, 6.720251343946533962e-05, 6.704666399444434257e-05, 6.689071805810088570e-05, 6.673467589172751640e-05, 6.657853775675200917e-05, 6.642230391470967782e-05, 6.626597462731246624e-05, 6.610955015638546838e-05, 6.595303076387366381e-05, 6.579641671187659872e-05, 6.563970826261964094e-05, 6.548290567846067490e-05, 6.532600922189628161e-05, 6.516901915553466069e-05, 6.501193574213529861e-05, 6.485475924458863992e-05, 6.469748992588829101e-05, 6.454012804919833550e-05, 6.438267387779232078e-05, 6.422512767505886874e-05, 6.406748970453542157e-05, 6.390976022988112317e-05, 6.375193951488290420e-05, 6.359402782346129613e-05, 6.343602541964358371e-05, 6.327793256760378489e-05, 6.311974953163509853e-05, 6.296147657615598951e-05, 6.280311396571014806e-05, 6.264466196497317117e-05, 6.248612083872315357e-05, 6.232749085188374414e-05, 6.216877226949416772e-05, 6.200996535671707201e-05, 6.185107037883707745e-05, 6.169208760126816335e-05, 6.153301728952443510e-05, 6.137385970926227251e-05, 6.121461512625204571e-05, 6.105528380638376653e-05, 6.089586601567478633e-05, 6.073636202024009569e-05, 6.057677208633527907e-05, 6.041709648032673997e-05, 6.025733546869930385e-05, 6.009748931805528982e-05, 5.993755829512081255e-05, 5.977754266671819609e-05, 5.961744269980625199e-05, 5.945725866145346565e-05, 5.929699081884281419e-05, 5.913663943927272872e-05, 5.897620479016288804e-05, 5.881568713902590739e-05, 5.865508675350929711e-05, 5.849440390136597230e-05, 5.833363885046247924e-05, 5.817279186878365744e-05, 5.801186322440584627e-05, 5.785085318553015649e-05, 5.768976202049010701e-05, 5.752858999768726401e-05, 5.736733738566147684e-05, 5.720600445306191635e-05, 5.704459146862579059e-05, 5.688309870122039153e-05, 5.672152641981408592e-05, 5.655987489348243420e-05, 5.639814439140903077e-05, 5.623633518289135872e-05, 5.607444753730438770e-05, 5.591248172417965969e-05, 5.575043801310357734e-05, 5.558831667379668617e-05, 5.542611797608385231e-05, 5.526384218986603254e-05, 5.510148958519025278e-05, 5.493906043218581633e-05, 5.477655500107038222e-05, 5.461397356218546600e-05, 5.445131638597454566e-05, 5.428858374295388983e-05, 5.412577590379122339e-05, 5.396289313920446979e-05, 5.379993572004074871e-05, 5.363690391724631660e-05, 5.347379800183845187e-05, 5.331061824497607045e-05, 5.314736491789516146e-05, 5.298403829191481135e-05, 5.282063863847384990e-05, 5.265716622910749251e-05, 5.249362133541895435e-05, 5.233000422915090610e-05, 5.216631518212001524e-05, 5.200255446622332930e-05, 5.183872235347495574e-05, 5.167481911597573822e-05, 5.151084502592045294e-05, 5.134680035560462561e-05, 5.118268537739487849e-05, 5.101850036377218327e-05, 5.085424558730953332e-05, 5.068992132064243305e-05, 5.052552783654129547e-05, 5.036106540784551598e-05, 5.019653430746993689e-05, 5.003193480844128339e-05, 4.986726718386802276e-05, 4.970253170694800116e-05, 4.953772865097444747e-05, 4.937285828930679466e-05, 4.920792089541421726e-05, 4.904291674284512470e-05, 4.887784610523508944e-05, 4.871270925630578316e-05, 4.854750646987140744e-05, 4.838223801981047058e-05, 4.821690418010747520e-05, 4.805150522482418010e-05, 4.788604142810657982e-05, 4.772051306418394916e-05, 4.755492040737568048e-05, 4.738926373206226090e-05, 4.722354331272788828e-05, 4.705775942393123837e-05, 4.689191234031210559e-05, 4.672600233659869427e-05, 4.656002968757718644e-05, 4.639399466813574013e-05, 4.622789755323455859e-05, 4.606173861791305961e-05, 4.589551813728848635e-05, 4.572923638656409989e-05, 4.556289364099870630e-05, 4.539649017594986216e-05, 4.523002626684493991e-05, 4.506350218918698928e-05, 4.489691821855528619e-05, 4.473027463061174987e-05, 4.456357170107075463e-05, 4.439680970574353465e-05, 4.422998892050765022e-05, 4.406310962131433314e-05, 4.389617208419519526e-05, 4.372917658523225705e-05, 4.356212340059439713e-05, 4.339501280654456899e-05, 4.322784507937221452e-05, 4.306062049546743024e-05, 4.289333933129061641e-05, 4.272600186334246495e-05, 4.255860836824450211e-05, 4.239115912263579110e-05, 4.222365440325337313e-05, 4.205609448690230957e-05, 4.188847965043291364e-05, 4.172081017077768788e-05, 4.155308632495793099e-05, 4.138530839001661215e-05, 4.121747664309211712e-05, 4.104959136138833779e-05, 4.088165282214385374e-05, 4.071366130270678965e-05, 4.054561708046646986e-05, 4.037752043286099425e-05, 4.020937163741373523e-05, 4.004117097171075917e-05, 3.987291871337028584e-05, 3.970461514012447784e-05, 3.953626052971432052e-05, 3.936785515997161467e-05, 3.919939930878822590e-05, 3.903089325408621484e-05, 3.886233727389151548e-05, 3.869373164626668072e-05, 3.852507664931795005e-05, 3.835637256123181424e-05, 3.818761966025213867e-05, 3.801881822465036137e-05, 3.784996853280650318e-05, 3.768107086310463040e-05, 3.751212549401437320e-05, 3.734313270405312761e-05, 3.717409277179298092e-05, 3.700500597586046768e-05, 3.683587259494365090e-05, 3.666669290776110036e-05, 3.649746719310715799e-05, 3.632819572982876310e-05, 3.615887879679444416e-05, 3.598951667296994191e-05, 3.582010963734905763e-05, 3.565065796896142546e-05, 3.548116194690971410e-05, 3.531162185033850346e-05, 3.514203795844177239e-05, 3.497241055046977664e-05, 3.480273990569868436e-05, 3.463302630347521140e-05, 3.446327002318595191e-05, 3.429347134426439858e-05, 3.412363054619067831e-05, 3.395374790849861992e-05, 3.378382371074507118e-05, 3.361385823255445279e-05, 3.344385175358863781e-05, 3.327380455355338919e-05, 3.310371691219877988e-05, 3.293358910932534564e-05, 3.276342142475403911e-05, 3.259321413837077021e-05, 3.242296753009609589e-05, 3.225268187989169824e-05, 3.208235746776823142e-05, 3.191199457375400850e-05, 3.174159347794031441e-05, 3.157115446045043834e-05, 3.140067780144686340e-05, 3.123016378113102268e-05, 3.105961267974983829e-05, 3.088902477756573647e-05, 3.071840035490101172e-05, 3.054773969210730655e-05, 3.037704306957282819e-05, 3.020631076772171161e-05, 3.003554306702115495e-05, 2.986474024795085855e-05, 2.969390259104760598e-05, 2.952303037687506904e-05, 2.935212388603043832e-05, 2.918118339915178221e-05, 2.901020919688710310e-05, 2.883920155993213879e-05, 2.866816076903696929e-05, 2.849708710493761729e-05, 2.832598084843167120e-05, 2.815484228034666035e-05, 2.798367168151046644e-05, 2.781246933283309950e-05, 2.764123551520079501e-05, 2.746997050955883005e-05, 2.729867459688058965e-05, 2.712734805814436483e-05, 2.695599117437093382e-05, 2.678460422663081936e-05, 2.661318749597515394e-05, 2.644174126351137740e-05, 2.627026581037235413e-05, 2.609876141768566979e-05, 2.592722836664867171e-05, 2.575566693846051644e-05, 2.558407741432809906e-05, 2.541246007550479640e-05, 2.524081520326640457e-05, 2.506914307888055430e-05, 2.489744398368989292e-05, 2.472571819900503637e-05, 2.455396600618807310e-05, 2.438218768662115605e-05, 2.421038352167629413e-05, 2.403855379279031795e-05, 2.386669878139640913e-05, 2.369481876893089008e-05, 2.352291403687117107e-05, 2.335098486671225357e-05, 2.317903153993565766e-05, 2.300705433809321733e-05, 2.283505354269947001e-05, 2.266302943531533327e-05, 2.249098229750933780e-05, 2.231891241086490514e-05, 2.214682005697994448e-05, 2.197470551747385931e-05, 2.180256907395667818e-05, 2.163041100807428283e-05, 2.145823160147765414e-05, 2.128603113582971617e-05, 2.111380989280513284e-05, 2.094156815409742981e-05, 2.076930620138781348e-05, 2.059702431639079899e-05, 2.042472278082307666e-05, 2.025240187641067448e-05, 2.008006188489606307e-05, 1.990770308800740495e-05, 1.973532576750365060e-05, 1.956293020514360143e-05, 1.939051668269323490e-05, 1.921808548192493882e-05, 1.904563688462518209e-05, 1.887317117256285596e-05, 1.870068862753526795e-05, 1.852818953133674742e-05, 1.835567416576587243e-05, 1.818314281262515468e-05, 1.801059575372813084e-05, 1.783803327086830355e-05, 1.766545564586456953e-05, 1.749286316053026553e-05, 1.732025609668019878e-05, 1.714763473613799920e-05, 1.697499936070492147e-05, 1.680235025220535447e-05, 1.662968769245579608e-05, 1.645701196327200899e-05, 1.628432334646850904e-05, 1.611162212386586326e-05, 1.593890857725952927e-05, 1.576618298846537138e-05, 1.559344563928856435e-05, 1.542069681153077285e-05, 1.524793678699747318e-05, 1.507516584746660968e-05, 1.490238427473433284e-05, 1.472959235058383690e-05, 1.455679035679246652e-05, 1.438397857513137454e-05, 1.421115728737269296e-05, 1.403832677525834182e-05, 1.386548732053802709e-05, 1.369263920497638960e-05, 1.351978271028349419e-05, 1.334691811819114562e-05, 1.317404571042166867e-05, 1.300116576865678643e-05, 1.282827857462167650e-05, 1.265538440997686073e-05, 1.248248355640237325e-05, 1.230957629556651675e-05, 1.213666290910232011e-05, 1.196374367864555320e-05, 1.179081888584196054e-05, 1.161788881227761319e-05, 1.144495373955529925e-05, 1.127201394926331239e-05, 1.109906972294433356e-05, 1.092612134217946681e-05, 1.075316908848006133e-05, 1.058021324337204039e-05, 1.040725408835681578e-05, 1.023429190492630068e-05, 1.006132697452394614e-05, 9.888359578628969996e-06, 9.715389998648156928e-06, 9.542418515999973890e-06, 9.369445412083458592e-06, 9.196470968246853875e-06, 9.023495465864228611e-06, 8.850519186265682196e-06, 8.677542410744583287e-06, 8.504565420595640546e-06, 8.331588497091334798e-06, 8.158611921450634714e-06, 7.985635974923315555e-06, 7.812660938681589772e-06, 7.639687093904474880e-06, 7.466714721746470180e-06, 7.293744103306270746e-06, 7.120775519703398499e-06, 6.947809252008399067e-06, 6.774845581250045804e-06, 6.601884788453454573e-06, 6.428927154608829927e-06, 6.255972960678625928e-06, 6.083022487597203094e-06, 5.910076016277993454e-06, 5.737133827582218772e-06, 5.564196202364785335e-06, 5.391263421442860726e-06, 5.218335765603192183e-06, 5.045413515609408877e-06, 4.872496952170630866e-06, 4.699586355987346096e-06, 4.526682007720086274e-06, 4.353784187996691024e-06, 4.180893177411832701e-06, 4.008009256534333909e-06, 3.835132705875792551e-06, 3.662263805936464761e-06, 3.489402837173897154e-06, 3.316550080010248577e-06, 3.143705814839481847e-06, 2.970870321996157782e-06, 2.798043881801162278e-06, 2.625226774530435120e-06, 2.452419280422253198e-06, 2.279621679676755320e-06, 2.106834252463187730e-06, 1.934057278888643938e-06, 1.761291039043855741e-06, 1.588535812971880532e-06, 1.415791880675391294e-06, 1.243059522116217501e-06, 1.070339017222575187e-06, 8.976306458578248703e-07, 7.249346878662281718e-07, 5.522514230416872151e-07, 3.795811311349916819e-07, 2.069240918610749467e-07, 3.428058486774882621e-08, -1.383491102262331222e-07, -3.109647138239323703e-07, -4.835659464199819571e-07, -6.561525285240304003e-07, -8.287241806919971661e-07, -1.001280623549618887e-06, -1.173821577746704345e-06, -1.346346763988386698e-06, -1.518855903027865476e-06, -1.691348715666871380e-06, -1.863824922748402138e-06, -2.036284245195671612e-06, -2.208726403927891011e-06, -2.381151119968460196e-06, -2.553558114360782135e-06, -2.725947108199474796e-06, -2.898317822653908922e-06, -3.070669978930203357e-06, -3.243003298263937598e-06, -3.415317501989918088e-06, -3.587612311465605165e-06, -3.759887448102388907e-06, -3.932142633396833215e-06, -4.104377588846409162e-06, -4.276592036057747499e-06, -4.448785696662417318e-06, -4.620958292355815882e-06, -4.793109544882277780e-06, -4.965239176073963062e-06, -5.137346907766709592e-06, -5.309432461908115303e-06, -5.481495560473449850e-06, -5.653535925496813558e-06, -5.825553279102336190e-06, -5.997547343427839800e-06, -6.169517840694336933e-06, -6.341464493198845247e-06, -6.513387023276459074e-06, -6.685285153323774960e-06, -6.857158605830097207e-06, -7.029007103293393572e-06, -7.200830368328266551e-06, -7.372628123581939577e-06, -7.544400091765354134e-06, -7.716145995684402405e-06, -7.887865558163580806e-06, -8.059558502115501743e-06, -8.231224550533662492e-06, -8.402863426454587910e-06, -8.574474852988803037e-06, -8.746058553313858634e-06, -8.917614250674498890e-06, -9.089141668375712364e-06, -9.260640529813558906e-06, -9.432110558429855084e-06, -9.603551477743207780e-06, -9.774963011341678882e-06, -9.946344882875743056e-06, -1.011769681608928576e-05, -1.028901853477408708e-05, -1.046030976280089938e-05, -1.063157022411228308e-05, -1.080279964272293871e-05, -1.097399774271265959e-05, -1.114516424825725359e-05, -1.131629888358308970e-05, -1.148740137299823999e-05, -1.165847144088514097e-05, -1.182950881169347675e-05, -1.200051320997120764e-05, -1.217148436031909454e-05, -1.234242198742169367e-05, -1.251332581604024651e-05, -1.268419557101312368e-05, -1.285503097724847265e-05, -1.302583175975539540e-05, -1.319659764359845929e-05, -1.336732835392871037e-05, -1.353802361597647528e-05, -1.370868315505185421e-05, -1.387930669653737377e-05, -1.404989396591924755e-05, -1.422044468874166347e-05, -1.439095859063800880e-05, -1.456143539732355516e-05, -1.473187483458840956e-05, -1.490227662832826672e-05, -1.507264050450678561e-05, -1.524296618914863190e-05, -1.541325340840813166e-05, -1.558350188849377365e-05, -1.575371135569899217e-05, -1.592388153642560278e-05, -1.609401215713839622e-05, -1.626410294439613311e-05, -1.643415362484422211e-05, -1.660416392521542811e-05, -1.677413357232240135e-05, -1.694406229309633943e-05, -1.711394981450369007e-05, -1.728379586365313137e-05, -1.745360016771222716e-05, -1.762336245393836403e-05, -1.779308244970209557e-05, -1.796275988244926304e-05, -1.813239447969419200e-05, -1.830198596908835283e-05, -1.847153407834472742e-05, -1.864103853526881060e-05, -1.881049906778932697e-05, -1.897991540387504881e-05, -1.914928727164180012e-05, -1.931861439926915258e-05, -1.948789651503121017e-05, -1.965713334731996348e-05, -1.982632462460765782e-05, -1.999547007543968146e-05, -2.016456942850332104e-05, -2.033362241255227734e-05, -2.050262875643754475e-05, -2.067158818913790102e-05, -2.084050043968489749e-05, -2.100936523723124166e-05, -2.117818231104372283e-05, -2.134695139046584777e-05, -2.151567220494849316e-05, -2.168434448404275321e-05, -2.185296795739275684e-05, -2.202154235476657762e-05, -2.219006740601104285e-05, -2.235854284107493550e-05, -2.252696839003966693e-05, -2.269534378304415869e-05, -2.286366875035333014e-05, -2.303194302235075642e-05, -2.320016632950170393e-05, -2.336833840238314913e-05, -2.353645897167745972e-05, -2.370452776816463244e-05, -2.387254452275308435e-05, -2.404050896643517352e-05, -2.420842083031720084e-05, -2.437627984561265419e-05, -2.454408574364271318e-05, -2.471183825582887663e-05, -2.487953711372361838e-05, -2.504718204896579605e-05, -2.521477279331098165e-05, -2.538230907862445149e-05, -2.554979063688161313e-05, -2.571721720016095463e-05, -2.588458850067435141e-05, -2.605190427072266141e-05, -2.621916424272601834e-05, -2.638636814921687589e-05, -2.655351572283279435e-05, -2.672060669634706938e-05, -2.688764080262385952e-05, -2.705461777464893694e-05, -2.722153734552236565e-05, -2.738839924845896568e-05, -2.755520321678145890e-05, -2.772194898395061998e-05, -2.788863628352085126e-05, -2.805526484917050307e-05, -2.822183441469487052e-05, -2.838834471400665085e-05, -2.855479548112882163e-05, -2.872118645022497804e-05, -2.888751735555486369e-05, -2.905378793150493490e-05, -2.921999791258090347e-05, -2.938614703340104172e-05, -2.955223502872620809e-05, -2.971826163342318420e-05, -2.988422658245745811e-05, -3.005012961096082433e-05, -3.021597045415746154e-05, -3.038174884739379902e-05, -3.054746452616141021e-05, -3.071311722605273324e-05, -3.087870668279174368e-05, -3.104423263222603308e-05, -3.120969481032046981e-05, -3.137509295318731270e-05, -3.154042679704909078e-05, -3.170569607823188788e-05, -3.187090053323268524e-05, -3.203603989864527656e-05, -3.220111391119039528e-05, -3.236612230773867937e-05, -3.253106482527363220e-05, -3.269594120088495479e-05, -3.286075117183548166e-05, -3.302549447548749580e-05, -3.319017084933280847e-05, -3.335478003102284580e-05, -3.351932175828759117e-05, -3.368379576903960082e-05, -3.384820180129313592e-05, -3.401253959319391716e-05, -3.417680888304214373e-05, -3.434100940925525092e-05, -3.450514091036169635e-05, -3.466920312506769258e-05, -3.483319579218324420e-05, -3.499711865065264100e-05, -3.516097143958409060e-05, -3.532475389816944005e-05, -3.548846576578714113e-05, -3.565210678192215493e-05, -3.581567668620271310e-05, -3.597917521839402944e-05, -3.614260211839794078e-05, -3.630595712624672025e-05, -3.646923998213207969e-05, -3.663245042636247239e-05, -3.679558819938442483e-05, -3.695865304181329404e-05, -3.712164469435975202e-05, -3.728456289789631501e-05, -3.744740739345051310e-05, -3.761017792216858293e-05, -3.777287422534522909e-05, -3.793549604441661744e-05, -3.809804312095358531e-05, -3.826051519669115890e-05, -3.842291201348540201e-05, -3.858523331334241173e-05, -3.874747883841252465e-05, -3.890964833098938181e-05, -3.907174153350398589e-05, -3.923375818855414407e-05, -3.939569803886082210e-05, -3.955756082729795315e-05, -3.971934629688526165e-05, -3.988105419078920527e-05, -4.004268425231574462e-05, -4.020423622493969124e-05, -4.036570985226173254e-05, -4.052710487803798308e-05, -4.068842104617283564e-05, -4.084965810071253050e-05, -4.101081578587402238e-05, -4.117189384600245254e-05, -4.133289202560011061e-05, -4.149381006931966503e-05, -4.165464772196486782e-05, -4.181540472848327010e-05, -4.197608083399613250e-05, -4.213667578375461661e-05, -4.229718932317017656e-05, -4.245762119780669173e-05, -4.261797115338147645e-05, -4.277823893575836143e-05, -4.293842429097683843e-05, -4.309852696520928176e-05, -4.325854670478997778e-05, -4.341848325620874840e-05, -4.357833636610406646e-05, -4.373810578129158372e-05, -4.389779124872942293e-05, -4.405739251551072386e-05, -4.421690932892938665e-05, -4.437634143640808076e-05, -4.453568858552743717e-05, -4.469495052404832188e-05, -4.485412699986882703e-05, -4.501321776105338845e-05, -4.517222255582647024e-05, -4.533114113256510406e-05, -4.548997323982833201e-05, -4.564871862632166512e-05, -4.580737704089080857e-05, -4.596594823258555500e-05, -4.612443195058936566e-05, -4.628282794424808816e-05, -4.644113596309195225e-05, -4.659935575679985891e-05, -4.675748707519326137e-05, -4.691552966830016692e-05, -4.707348328628474510e-05, -4.723134767947572023e-05, -4.738912259839558389e-05, -4.754680779368268822e-05, -4.770440301619093828e-05, -4.786190801691261046e-05, -4.801932254700599283e-05, -4.817664635782583764e-05, -4.833387920085124840e-05, -4.849102082775081323e-05, -4.864807099037553052e-05, -4.880502944072373495e-05, -4.896189593096311358e-05, -4.911867021345923392e-05, -4.927535204069761012e-05, -4.943194116538386971e-05, -4.958843734036612468e-05, -4.974484031867016748e-05, -4.990114985349369077e-05, -5.005736569820607064e-05, -5.021348760634180718e-05, -5.036951533162886956e-05, -5.052544862794782166e-05, -5.068128724935196106e-05, -5.083703095009663322e-05, -5.099267948456928006e-05, -5.114823260735289971e-05, -5.130369007321941929e-05, -5.145905163709510888e-05, -5.161431705408885888e-05, -5.176948607948560021e-05, -5.192455846873999566e-05, -5.207953397750406669e-05, -5.223441236158647488e-05, -5.238919337697350799e-05, -5.254387677985706596e-05, -5.269846232656559044e-05, -5.285294977362763291e-05, -5.300733887776428561e-05, -5.316162939585586264e-05, -5.331582108496878142e-05, -5.346991370235040591e-05, -5.362390700542844356e-05, -5.377780075180468405e-05, -5.393159469928326982e-05, -5.408528860582933378e-05, -5.423888222959732410e-05, -5.439237532892348255e-05, -5.454576766232110789e-05, -5.469905898850685455e-05, -5.485224906636044096e-05, -5.500533765495285916e-05, -5.515832451353931389e-05, -5.531120940155981216e-05, -5.546399207863277324e-05, -5.561667230458285197e-05, -5.576924983940001690e-05, -5.592172444326736012e-05, -5.607409587655455134e-05, -5.622636389981178673e-05, -5.637852827379751056e-05, -5.653058875943664638e-05, -5.668254511784977554e-05, -5.683439711034582567e-05, -5.698614449842266016e-05, -5.713778704376068816e-05, -5.728932450825090477e-05, -5.744075665395995941e-05, -5.759208324312495162e-05, -5.774330403821469526e-05, -5.789441880186159677e-05, -5.804542729689004767e-05, -5.819632928633662464e-05, -5.834712453340946579e-05, -5.849781280151679873e-05, -5.864839385425926987e-05, -5.879886745542459115e-05, -5.894923336901440115e-05, -5.909949135921075644e-05, -5.924964119037012789e-05, -5.939968262708437340e-05, -5.954961543411380878e-05, -5.969943937641384527e-05, -5.984915421915662612e-05, -5.999875972769003695e-05, -6.014825566756573920e-05, -6.029764180453187208e-05, -6.044691790453471950e-05, -6.059608373371118168e-05, -6.074513905842361867e-05, -6.089408364518540635e-05, -6.104291726075627164e-05, -6.119163967206801792e-05, -6.134025064625218569e-05, -6.148874995066701537e-05, -6.163713735283115507e-05, -6.178541262048387452e-05, -6.193357552157888505e-05, -6.208162582425146123e-05, -6.222956329683830882e-05, -6.237738770790530682e-05, -6.252509882617406632e-05, -6.267269642061547004e-05, -6.282018026037749158e-05, -6.296755011481141955e-05, -6.311480575349911169e-05, -6.326194694618677726e-05, -6.340897346284524508e-05, -6.355588507366379718e-05, -6.370268154901730388e-05, -6.384936265948569880e-05, -6.399592817588241203e-05, -6.414237786918708189e-05, -6.428871151060597201e-05, -6.443492887156607608e-05, -6.458102972368172433e-05, -6.472701383878195971e-05, -6.487288098890377512e-05, -6.501863094628662469e-05, -6.516426348339828195e-05, -6.530977837289628294e-05, -6.545517538764730628e-05, -6.560045430075529468e-05, -6.574561488549415312e-05, -6.589065691536847766e-05, -6.603558016410756529e-05, -6.618038440563161389e-05, -6.632506941407974885e-05, -6.646963496380279960e-05, -6.661408082935786504e-05, -6.675840678553423950e-05, -6.690261260731488293e-05, -6.704669806990230622e-05, -6.719066294871389559e-05, -6.733450701938016429e-05, -6.747823005774032093e-05, -6.762183183986780245e-05, -6.776531214203171719e-05, -6.790867074072350269e-05, -6.805190741264986482e-05, -6.819502193473467517e-05, -6.833801408411135448e-05, -6.848088363815005904e-05, -6.862363037441855456e-05, -6.876625407070877907e-05, -6.890875450503111026e-05, -6.905113145560731812e-05, -6.919338470089703304e-05, -6.933551401956039508e-05, -6.947751919048271950e-05, -6.961939999276922490e-05, -6.976115620574518223e-05, -6.990278760894978911e-05, -7.004429398216227196e-05, -7.018567510536374919e-05, -7.032693075876303521e-05, -7.046806072279109749e-05, -7.060906477810027044e-05, -7.074994270555968827e-05, -7.089069428628030293e-05, -7.103131930157627295e-05, -7.117181753299273259e-05, -7.131218876229764676e-05, -7.145243277147728448e-05, -7.159254934276162985e-05, -7.173253825859196445e-05, -7.187239930161634074e-05, -7.201213225474619101e-05, -7.215173690109336231e-05, -7.229121302399592048e-05, -7.243056040703712368e-05, -7.256977883400854597e-05, -7.270886808893474288e-05, -7.284782795606806085e-05, -7.298665821988837969e-05, -7.312535866509793550e-05, -7.326392907665185456e-05, -7.340236923969085145e-05, -7.354067893962833115e-05, -7.367885796208196233e-05, -7.381690609289946780e-05, -7.395482311818373736e-05, -7.409260882423032355e-05, -7.423026299758448418e-05, -7.436778542503505668e-05, -7.450517589358389707e-05, -7.464243419046393197e-05, -7.477956010316616877e-05, -7.491655341936929026e-05, -7.505341392702907419e-05, -7.519014141430913989e-05, -7.532673566960675223e-05, -7.546319648157758214e-05, -7.559952363907448980e-05, -7.573571693120253437e-05, -7.587177614731452878e-05, -7.600770107697936743e-05, -7.614349151000211107e-05, -7.627914723644698542e-05, -7.641466804657783137e-05, -7.655005373091349418e-05, -7.668530408022148086e-05, -7.682041888548765674e-05, -7.695539793794196816e-05, -7.709024102905132742e-05, -7.722494795051428659e-05, -7.735951849428681444e-05, -7.749395245254448491e-05, -7.762824961770214180e-05, -7.776240978243769699e-05, -7.789643273963252649e-05, -7.803031828242570759e-05, -7.816406620420930261e-05, -7.829767629859644268e-05, -7.843114835944858191e-05, -7.856448218086702702e-05, -7.869767755718916975e-05, -7.883073428301189210e-05, -7.896365215315650588e-05, -7.909643096269194115e-05, -7.922907050693055848e-05, -7.936157058142718666e-05, -7.949393098197443360e-05, -7.962615150462618637e-05, -7.975823194566226623e-05, -7.989017210161282316e-05, -8.002197176925258959e-05, -8.015363074560107016e-05, -8.028514882791676832e-05, -8.041652581372257021e-05, -8.054776150076779762e-05, -8.067885568705463536e-05, -8.080980817083197845e-05, -8.094061875058881851e-05, -8.107128722507937009e-05, -8.120181339328712939e-05, -8.133219705444971607e-05, -8.146243800805196141e-05, -8.159253605382757533e-05, -8.172249099175235652e-05, -8.185230262206915621e-05, -8.198197074525238415e-05, -8.211149516203106137e-05, -8.224087567338451055e-05, -8.237011208054257282e-05, -8.249920418497869602e-05, -8.262815178843554889e-05, -8.275695469288825315e-05, -8.288561270056968603e-05, -8.301412561396449006e-05, -8.314249323580245941e-05, -8.327071536908407291e-05, -8.339879181705033961e-05, -8.352672238317735071e-05, -8.365450687122962230e-05, -8.378214508520139935e-05, -8.390963682934063014e-05, -8.403698190817271028e-05, -8.416418012643681295e-05, -8.429123128916701433e-05, -8.441813520162904391e-05, -8.454489166934424545e-05, -8.467150049810644977e-05, -8.479796149395335189e-05, -8.492427446316230973e-05, -8.505043921230094920e-05, -8.517645554817056893e-05, -8.530232327782996552e-05, -8.542804220861704989e-05, -8.555361214809405440e-05, -8.567903290409758230e-05, -8.580430428473374241e-05, -8.592942609835021734e-05, -8.605439815355317705e-05, -8.617922025923080605e-05, -8.630389222449071779e-05, -8.642841385873911502e-05, -8.655278497162072497e-05, -8.667700537303931786e-05, -8.680107487318216924e-05, -8.692499328246308513e-05, -8.704876041157434891e-05, -8.717237607148043289e-05, -8.729584007339062223e-05, -8.741915222877603693e-05, -8.754231234939235939e-05, -8.766532024721827886e-05, -8.778817573453504474e-05, -8.791087862386413854e-05, -8.803342872799561219e-05, -8.815582585998345310e-05, -8.827806983314612623e-05, -8.840016046105926930e-05, -8.852209755758049393e-05, -8.864388093681557204e-05, -8.876551041313514615e-05, -8.888698580119686065e-05, -8.900830691589107038e-05, -8.912947357239086297e-05, -8.925048558614587897e-05, -8.937134277285595208e-05, -8.949204494849283395e-05, -8.961259192929503059e-05, -8.973298353176365535e-05, -8.985321957268315070e-05, -8.997329986908952112e-05, -9.009322423829171900e-05, -9.021299249786780925e-05, -9.033260446566397997e-05, -9.045205995978971777e-05, -9.057135879864084706e-05, -9.069050080086526924e-05, -9.080948578538653056e-05, -9.092831357139813007e-05, -9.104698397836366868e-05, -9.116549682601217354e-05, -9.128385193435923999e-05, -9.140204912367530510e-05, -9.152008821450802287e-05, -9.163796902767650443e-05, -9.175569138426599187e-05, -9.187325510565013862e-05, -9.199066001345906614e-05, -9.210790592960095308e-05, -9.222499267625653297e-05, -9.234192007588004289e-05, -9.245868795119412771e-05, -9.257529612521069745e-05, -9.269174442119995974e-05, -9.280803266271129073e-05, -9.292416067356922351e-05, -9.304012827786751214e-05, -9.315593529999054460e-05, -9.327158156458302584e-05, -9.338706689656965600e-05, -9.350239112115143060e-05, -9.361755406380519329e-05, -9.373255555027920421e-05, -9.384739540661425476e-05, -9.396207345911694207e-05, -9.407658953435588784e-05, -9.419094345920792533e-05, -9.430513506080752135e-05, -9.441916416656637319e-05, -9.453303060419559415e-05, -9.464673420164807459e-05, -9.476027478719161140e-05, -9.487365218935332907e-05, -9.498686623693807049e-05, -9.509991675904662508e-05, -9.521280358504886768e-05, -9.532552654457924558e-05, -9.543808546758353469e-05, -9.555048018426735357e-05, -9.566271052511670899e-05, -9.577477632091944959e-05, -9.588667740270938886e-05, -9.599841360183649361e-05, -9.610998474991280945e-05, -9.622139067883743804e-05, -9.633263122078668445e-05, -9.644370620823914286e-05, -9.655461547392162199e-05, -9.666535885087877797e-05, -9.677593617241833505e-05, -9.688634727213163119e-05, -9.699659198391382493e-05, -9.710667014191437442e-05, -9.721658158058113736e-05, -9.732632613465724033e-05, -9.743590363915551880e-05, -9.754531392937364166e-05, -9.765455684091427745e-05, -9.776363220963095197e-05, -9.787253987169762699e-05, -9.798127966355482893e-05, -9.808985142193305407e-05, -9.819825498385083057e-05, -9.830649018661233318e-05, -9.841455686780376476e-05, -9.852245486531422715e-05, -9.863018401730402180e-05, -9.873774416222735027e-05, -9.884513513882545665e-05, -9.895235678612836227e-05, -9.905940894344903813e-05, -9.916629145040415380e-05, -9.927300414688428900e-05, -9.937954687307390996e-05, -9.948591946944743928e-05, -9.959212177676307588e-05, -9.969815363608427582e-05, -9.980401488874947595e-05, -9.990970537639261241e-05, -1.000152249409371711e-04, -1.001205734245986541e-04, -1.002257506698780071e-04, -1.003307565195819069e-04, -1.004355908167941255e-04, -1.005402534048946661e-04, -1.006447441275560493e-04, -1.007490628287422161e-04, -1.008532093527052747e-04, -1.009571835440035254e-04, -1.010609852474746406e-04, -1.011646143082532012e-04, -1.012680705717680679e-04, -1.013713538837361194e-04, -1.014744640901827581e-04, -1.015774010374122157e-04, -1.016801645720284111e-04, -1.017827545409300444e-04, -1.018851707913091326e-04, -1.019874131706493029e-04, -1.020894815267420821e-04, -1.021913757076613232e-04, -1.022930955617804309e-04, -1.023946409377687427e-04, -1.024960116845870435e-04, -1.025972076515059420e-04, -1.026982286880787667e-04, -1.027990746441605929e-04, -1.028997453699024423e-04, -1.030002407157530180e-04, -1.031005605324532835e-04, -1.032007046710562353e-04, -1.033006729829028886e-04, -1.034004653196183735e-04, -1.035000815331537857e-04, -1.035995214757402295e-04, -1.036987849999075476e-04, -1.037978719585021698e-04, -1.038967822046383237e-04, -1.039955155917610135e-04, -1.040940719735962823e-04, -1.041924512041703343e-04, -1.042906531378226000e-04, -1.043886776291838347e-04, -1.044865245331708879e-04, -1.045841937050293930e-04, -1.046816850002861310e-04, -1.047789982747704022e-04, -1.048761333846296389e-04, -1.049730901862815243e-04, -1.050698685364768222e-04, -1.051664682922501812e-04, -1.052628893109425640e-04, -1.053591314501928314e-04, -1.054551945679596162e-04, -1.055510785224738891e-04, -1.056467831722993761e-04, -1.057423083762867373e-04, -1.058376539935885422e-04, -1.059328198836786641e-04, -1.060278059063086265e-04, -1.061226119215464588e-04, -1.062172377897736196e-04, -1.063116833716624049e-04, -1.064059485281894732e-04, -1.065000331206535723e-04, -1.065939370106281059e-04, -1.066876600600216582e-04, -1.067812021310312118e-04, -1.068745630861584909e-04, -1.069677427882288138e-04, -1.070607411003470872e-04, -1.071535578859371900e-04, -1.072461930087383687e-04, -1.073386463327828075e-04, -1.074309177224142225e-04, -1.075230070422823189e-04, -1.076149141573449727e-04, -1.077066389328618611e-04, -1.077981812344138562e-04, -1.078895409278762184e-04, -1.079807178794364307e-04, -1.080717119555894156e-04, -1.081625230231352848e-04, -1.082531509491940032e-04, -1.083435956011820784e-04, -1.084338568468289868e-04, -1.085239345541729448e-04, -1.086138285915615458e-04, -1.087035388276476133e-04, -1.087930651314055722e-04, -1.088824073721075830e-04, -1.089715654193395335e-04, -1.090605391429977323e-04, -1.091493284132842329e-04, -1.092379331007247096e-04, -1.093263530761418267e-04, -1.094145882106748087e-04, -1.095026383757723517e-04, -1.095905034431953075e-04, -1.096781832850118041e-04, -1.097656777736136040e-04, -1.098529867816917230e-04, -1.099401101822538587e-04, -1.100270478486193898e-04, -1.101137996544197285e-04, -1.102003654735951761e-04, -1.102867451804109827e-04, -1.103729386494322891e-04, -1.104589457555426522e-04, -1.105447663739374053e-04, -1.106304003801225188e-04, -1.107158476499281804e-04, -1.108011080594914613e-04, -1.108861814852505695e-04, -1.109710678039827571e-04, -1.110557668927622928e-04, -1.111402786289789621e-04, -1.112246028903481770e-04, -1.113087395548894139e-04, -1.113926885009396714e-04, -1.114764496071520065e-04, -1.115600227524947625e-04, -1.116434078162472314e-04, -1.117266046780206477e-04, -1.118096132177142505e-04, -1.118924333155708217e-04, -1.119750648521340502e-04, -1.120575077082628025e-04, -1.121397617651455559e-04, -1.122218269042782134e-04, -1.123037030074633717e-04, -1.123853899568427115e-04, -1.124668876348601759e-04, -1.125481959242764980e-04, -1.126293147081863316e-04, -1.127102438699735824e-04, -1.127909832933682332e-04, -1.128715328624025016e-04, -1.129518924614261006e-04, -1.130320619751192483e-04, -1.131120412884727329e-04, -1.131918302867844831e-04, -1.132714288556943853e-04, -1.133508368811455365e-04, -1.134300542494006293e-04, -1.135090808470566972e-04, -1.135879165610071404e-04, -1.136665612784766642e-04, -1.137450148870168065e-04, -1.138232772744889027e-04, -1.139013483290728400e-04, -1.139792279392841341e-04, -1.140569159939335019e-04, -1.141344123821768161e-04, -1.142117169934769004e-04, -1.142888297176168248e-04, -1.143657504447152335e-04, -1.144424790651907015e-04, -1.145190154697933531e-04, -1.145953595496019070e-04, -1.146715111960065460e-04, -1.147474703007223343e-04, -1.148232367557862354e-04, -1.148988104535539822e-04, -1.149741912867135746e-04, -1.150493791482651138e-04, -1.151243739315348561e-04, -1.151991755301715536e-04, -1.152737838381468204e-04, -1.153481987497511615e-04, -1.154224201596097210e-04, -1.154964479626594052e-04, -1.155702820541646580e-04, -1.156439223297125004e-04, -1.157173686852149295e-04, -1.157906210169034570e-04, -1.158636792213436369e-04, -1.159365431954156048e-04, -1.160092128363265999e-04, -1.160816880416082276e-04, -1.161539687091132613e-04, -1.162260547370296823e-04, -1.162979460238595112e-04, -1.163696424684336749e-04, -1.164411439699079002e-04, -1.165124504277624968e-04, -1.165835617418005686e-04, -1.166544778121606174e-04, -1.167251985392965530e-04, -1.167957238239916251e-04, -1.168660535673545474e-04, -1.169361876708203377e-04, -1.170061260361467944e-04, -1.170758685654280220e-04, -1.171454151610742646e-04, -1.172147657258262854e-04, -1.172839201627508130e-04, -1.173528783752388473e-04, -1.174216402670172197e-04, -1.174902057421341195e-04, -1.175585747049548782e-04, -1.176267470601916233e-04, -1.176947227128714022e-04, -1.177625015683473361e-04, -1.178300835323124843e-04, -1.178974685107760323e-04, -1.179646564100786469e-04, -1.180316471368900096e-04, -1.180984405982076103e-04, -1.181650367013533596e-04, -1.182314353539912471e-04, -1.182976364640915361e-04, -1.183636399399749448e-04, -1.184294456902789950e-04, -1.184950536239695595e-04, -1.185604636503513241e-04, -1.186256756790517685e-04, -1.186906896200191067e-04, -1.187555053835478606e-04, -1.188201228802520119e-04, -1.188845420210735138e-04, -1.189487627172971574e-04, -1.190127848805159322e-04, -1.190766084226746783e-04, -1.191402332560356086e-04, -1.192036592931912793e-04, -1.192668864470746858e-04, -1.193299146309418886e-04, -1.193927437583716070e-04, -1.194553737432905348e-04, -1.195178044999447041e-04, -1.195800359429111267e-04, -1.196420679871095579e-04, -1.197039005477730739e-04, -1.197655335404750141e-04, -1.198269668811268129e-04, -1.198882004859608828e-04, -1.199492342715456709e-04, -1.200100681547806316e-04, -1.200707020528948707e-04, -1.201311358834564430e-04, -1.201913695643596529e-04, -1.202514030138279418e-04, -1.203112361504303539e-04, -1.203708688930507181e-04, -1.204303011609135060e-04, -1.204895328735822868e-04, -1.205485639509433564e-04, -1.206073943132206309e-04, -1.206660238809694266e-04, -1.207244525750755652e-04, -1.207826803167667444e-04, -1.208407070275949467e-04, -1.208985326294485422e-04, -1.209561570445492792e-04, -1.210135801954523120e-04, -1.210708020050442897e-04, -1.211278223965526395e-04, -1.211846412935309168e-04, -1.212412586198697553e-04, -1.212976742997934522e-04, -1.213538882578594390e-04, -1.214099004189583364e-04, -1.214657107083220175e-04, -1.215213190515089579e-04, -1.215767253744148607e-04, -1.216319296032695801e-04, -1.216869316646354679e-04, -1.217417314854173213e-04, -1.217963289928472310e-04, -1.218507241144936614e-04, -1.219049167782616268e-04, -1.219589069123904146e-04, -1.220126944454522164e-04, -1.220662793063618455e-04, -1.221196614243624790e-04, -1.221728407290344405e-04, -1.222258171502937224e-04, -1.222785906183930570e-04, -1.223311610639173216e-04, -1.223835284177952757e-04, -1.224356926112832701e-04, -1.224876535759769028e-04, -1.225394112438076845e-04, -1.225909655470407351e-04, -1.226423164182849747e-04, -1.226934637904801139e-04, -1.227444075968954875e-04, -1.227951477711517663e-04, -1.228456842471956946e-04, -1.228960169593112310e-04, -1.229461458421260802e-04, -1.229960708305971649e-04, -1.230457918600218203e-04, -1.230953088660334570e-04, -1.231446217845996911e-04, -1.231937305520334298e-04, -1.232426351049795089e-04, -1.232913353804130936e-04, -1.233398313156598713e-04, -1.233881228483756152e-04, -1.234362099165517402e-04, -1.234840924585251150e-04, -1.235317704129648079e-04, -1.235792437188714364e-04, -1.236265123155971433e-04, -1.236735761428223407e-04, -1.237204351405652239e-04, -1.237670892491917190e-04, -1.238135384093901124e-04, -1.238597825622013546e-04, -1.239058216489968606e-04, -1.239516556114856661e-04, -1.239972843917222067e-04, -1.240427079320939846e-04, -1.240879261753216503e-04, -1.241329390644771902e-04, -1.241777465429614832e-04, -1.242223485545152785e-04, -1.242667450432262161e-04, -1.243109359535052175e-04, -1.243549212301179013e-04, -1.243987008181598086e-04, -1.244422746630672455e-04, -1.244856427106168218e-04, -1.245288049069222529e-04, -1.245717611984363928e-04, -1.246145115319559501e-04, -1.246570558546117845e-04, -1.246993941138731623e-04, -1.247415262575578396e-04, -1.247834522338104593e-04, -1.248251719911209286e-04, -1.248666854783229280e-04, -1.249079926445843163e-04, -1.249490934394133104e-04, -1.249899878126594613e-04, -1.250306757145087748e-04, -1.250711570954943642e-04, -1.251114319064815423e-04, -1.251515000986777148e-04, -1.251913616236359039e-04, -1.252310164332390817e-04, -1.252704644797156741e-04, -1.253097057156376908e-04, -1.253487400939123496e-04, -1.253875675677882295e-04, -1.254261880908548910e-04, -1.254646016170422797e-04, -1.255028081006174742e-04, -1.255408074961957444e-04, -1.255785997587256710e-04, -1.256161848434987139e-04, -1.256535627061465554e-04, -1.256907333026406669e-04, -1.257276965892977025e-04, -1.257644525227701482e-04, -1.258010010600525285e-04, -1.258373421584800783e-04, -1.258734757757298275e-04, -1.259094018698169956e-04, -1.259451203991032860e-04, -1.259806313222862340e-04, -1.260159345984061992e-04, -1.260510301868437099e-04, -1.260859180473199235e-04, -1.261205981399012347e-04, -1.261550704249909537e-04, -1.261893348633344025e-04, -1.262233914160185622e-04, -1.262572400444722086e-04, -1.262908807104623347e-04, -1.263243133761033656e-04, -1.263575380038477539e-04, -1.263905545564841630e-04, -1.264233629971521587e-04, -1.264559632893266501e-04, -1.264883553968246125e-04, -1.265205392838080411e-04, -1.265525149147765790e-04, -1.265842822545730191e-04, -1.266158412683814885e-04, -1.266471919217264993e-04, -1.266783341804786952e-04, -1.267092680108471267e-04, -1.267399933793783291e-04, -1.267705102529698754e-04, -1.268008185988548449e-04, -1.268309183846074069e-04, -1.268608095781490548e-04, -1.268904921477389842e-04, -1.269199660619785373e-04, -1.269492312898115019e-04, -1.269782878005236231e-04, -1.270071355637417902e-04, -1.270357745494388613e-04, -1.270642047279218459e-04, -1.270924260698480046e-04, -1.271204385462123003e-04, -1.271482421283505416e-04, -1.271758367879472439e-04, -1.272032224970195014e-04, -1.272303992279317868e-04, -1.272573669533928070e-04, -1.272841256464501091e-04, -1.273106752804923302e-04, -1.273370158292561364e-04, -1.273631472668107999e-04, -1.273890695675780670e-04, -1.274147827063152986e-04, -1.274402866581241715e-04, -1.274655813984482654e-04, -1.274906669030734154e-04, -1.275155431481274956e-04, -1.275402101100828309e-04, -1.275646677657508304e-04, -1.275889160922858909e-04, -1.276129550671887029e-04, -1.276367846682956533e-04, -1.276604048737890707e-04, -1.276838156621953554e-04, -1.277070170123799917e-04, -1.277300089035523730e-04, -1.277527913152641753e-04, -1.277753642274074869e-04, -1.277977276202208801e-04, -1.278198814742825535e-04, -1.278418257705113078e-04, -1.278635604901745147e-04, -1.278850856148746457e-04, -1.279064011265586504e-04, -1.279275070075203418e-04, -1.279484032403908824e-04, -1.279690898081460484e-04, -1.279895666941030042e-04, -1.280098338819219556e-04, -1.280298913556038461e-04, -1.280497390994961575e-04, -1.280693770982843985e-04, -1.280888053369985831e-04, -1.281080238010105473e-04, -1.281270324760328916e-04, -1.281458313481255949e-04, -1.281644204036854438e-04, -1.281827996294545159e-04, -1.282009690125160059e-04, -1.282189285402960690e-04, -1.282366782005623566e-04, -1.282542179814272155e-04, -1.282715478713435944e-04, -1.282886678591054776e-04, -1.283055779338512195e-04, -1.283222780850603727e-04, -1.283387683025558024e-04, -1.283550485765018164e-04, -1.283711188974050318e-04, -1.283869792561146469e-04, -1.284026296438216003e-04, -1.284180700520586255e-04, -1.284333004727030423e-04, -1.284483208979725561e-04, -1.284631313204247151e-04, -1.284777317329644734e-04, -1.284921221288348931e-04, -1.285063025016219699e-04, -1.285202728452557435e-04, -1.285340331540059074e-04, -1.285475834224851966e-04, -1.285609236456491434e-04, -1.285740538187925004e-04, -1.285869739375567746e-04, -1.285996839979222596e-04, -1.286121839962094170e-04, -1.286244739290856262e-04, -1.286365537935566460e-04, -1.286484235869703554e-04, -1.286600833070186234e-04, -1.286715329517330267e-04, -1.286827725194875875e-04, -1.286938020089988541e-04, -1.287046214193244924e-04, -1.287152307498628514e-04, -1.287256300003579239e-04, -1.287358191708892904e-04, -1.287457982618837741e-04, -1.287555672741076348e-04, -1.287651262086675721e-04, -1.287744750670148988e-04, -1.287836138509390095e-04, -1.287925425625728549e-04, -1.288012612043912893e-04, -1.288097697792093621e-04, -1.288180682901837282e-04, -1.288261567408143275e-04, -1.288340351349390189e-04, -1.288417034767398955e-04, -1.288491617707396254e-04, -1.288564100218010178e-04, -1.288634482351303304e-04, -1.288702764162723356e-04, -1.288768945711146036e-04, -1.288833027058860657e-04, -1.288895008271557943e-04, -1.288954889418340605e-04, -1.289012670571736618e-04, -1.289068351807659649e-04, -1.289121933205439688e-04, -1.289173414847832801e-04, -1.289222796820982918e-04, -1.289270079214450287e-04, -1.289315262121206059e-04, -1.289358345637616019e-04, -1.289399329863472846e-04, -1.289438214901957079e-04, -1.289475000859656093e-04, -1.289509687846586319e-04, -1.289542275976137146e-04, -1.289572765365121600e-04, -1.289601156133751139e-04, -1.289627448405640802e-04, -1.289651642307816529e-04, -1.289673737970691036e-04, -1.289693735528088211e-04, -1.289711635117243382e-04, -1.289727436878774862e-04, -1.289741140956714301e-04, -1.289752747498486090e-04, -1.289762256654919013e-04, -1.289769668580231072e-04, -1.289774983432060926e-04, -1.289778201371424794e-04, -1.289779322562743563e-04, -1.289778347173836008e-04, -1.289775275375908766e-04, -1.289770107343578016e-04, -1.289762843254846987e-04, -1.289753483291110564e-04, -1.289742027637171549e-04, -1.289728476481211931e-04, -1.289712830014814299e-04, -1.289695088432949376e-04, -1.289675251933983333e-04, -1.289653320719666408e-04, -1.289629294995152148e-04, -1.289603174968974916e-04, -1.289574960853060457e-04, -1.289544652862720210e-04, -1.289512251216662960e-04, -1.289477756136973971e-04, -1.289441167849135581e-04, -1.289402486582006606e-04, -1.289361712567838329e-04, -1.289318846042261494e-04, -1.289273887244303377e-04, -1.289226836416354992e-04, -1.289177693804212832e-04, -1.289126459657033061e-04, -1.289073134227374884e-04, -1.289017717771156091e-04, -1.288960210547700767e-04, -1.288900612819690768e-04, -1.288838924853194729e-04, -1.288775146917661013e-04, -1.288709279285915816e-04, -1.288641322234153677e-04, -1.288571276041958625e-04, -1.288499140992278153e-04, -1.288424917371442735e-04, -1.288348605469151736e-04, -1.288270205578473404e-04, -1.288189717995865747e-04, -1.288107143021133163e-04, -1.288022480957470080e-04, -1.287935732111435204e-04, -1.287846896792952875e-04, -1.287755975315323098e-04, -1.287662967995210699e-04, -1.287567875152637465e-04, -1.287470697111008165e-04, -1.287371434197086154e-04, -1.287270086740983617e-04, -1.287166655076212528e-04, -1.287061139539613360e-04, -1.286953540471397911e-04, -1.286843858215154458e-04, -1.286732093117807639e-04, -1.286618245529657213e-04, -1.286502315804365320e-04, -1.286384304298936426e-04, -1.286264211373744696e-04, -1.286142037392521526e-04, -1.286017782722333593e-04, -1.285891447733629467e-04, -1.285763032800203026e-04, -1.285632538299180986e-04, -1.285499964611061931e-04, -1.285365312119699779e-04, -1.285228581212281016e-04, -1.285089772279357490e-04, -1.284948885714813074e-04, -1.284805921915888874e-04, -1.284660881283176720e-04, -1.284513764220593694e-04, -1.284364571135432267e-04, -1.284213302438313683e-04, -1.284059958543183892e-04, -1.283904539867355564e-04, -1.283747046831476102e-04, -1.283587479859524662e-04, -1.283425839378830857e-04, -1.283262125820045754e-04, -1.283096339617180361e-04, -1.282928481207557653e-04, -1.282758551031852145e-04, -1.282586549534067125e-04, -1.282412477161542239e-04, -1.282236334364935336e-04, -1.282058121598248759e-04, -1.281877839318819312e-04, -1.281695487987295767e-04, -1.281511068067666781e-04, -1.281324580027253033e-04, -1.281136024336679584e-04, -1.280945401469917608e-04, -1.280752711904251063e-04, -1.280557956120294033e-04, -1.280361134601982326e-04, -1.280162247836555585e-04, -1.279961296314592253e-04, -1.279758280529985181e-04, -1.279553200979941896e-04, -1.279346058164979993e-04, -1.279136852588953700e-04, -1.278925584759003464e-04, -1.278712255185599585e-04, -1.278496864382521619e-04, -1.278279412866862718e-04, -1.278059901159017697e-04, -1.277838329782705808e-04, -1.277614699264925473e-04, -1.277389010136013099e-04, -1.277161262929587789e-04, -1.276931458182588199e-04, -1.276699596435251131e-04, -1.276465678231106921e-04, -1.276229704116981878e-04, -1.275991674643049787e-04, -1.275751590362709392e-04, -1.275509451832707996e-04, -1.275265259613084538e-04, -1.275019014267134360e-04, -1.274770716361510849e-04, -1.274520366466099126e-04, -1.274267965154106039e-04, -1.274013513002033595e-04, -1.273757010589648335e-04, -1.273498458500014129e-04, -1.273237857319511153e-04, -1.272975207637757277e-04, -1.272710510047682614e-04, -1.272443765145507826e-04, -1.272174973530685856e-04, -1.271904135806018745e-04, -1.271631252577554367e-04, -1.271356324454598892e-04, -1.271079352049765850e-04, -1.270800335978941977e-04, -1.270519276861249269e-04, -1.270236175319151774e-04, -1.269951031978313021e-04, -1.269663847467717181e-04, -1.269374622419601841e-04, -1.269083357469446627e-04, -1.268790053256045299e-04, -1.268494710421440156e-04, -1.268197329610899272e-04, -1.267897911472998620e-04, -1.267596456659574641e-04, -1.267292965825670846e-04, -1.266987439629673883e-04, -1.266679878733146570e-04, -1.266370283800952309e-04, -1.266058655501201685e-04, -1.265744994505251658e-04, -1.265429301487714232e-04, -1.265111577126468384e-04, -1.264791822102599619e-04, -1.264470037100478032e-04, -1.264146222807721988e-04, -1.263820379915147978e-04, -1.263492509116883916e-04, -1.263162611110266956e-04, -1.262830686595848098e-04, -1.262496736277459136e-04, -1.262160760862147339e-04, -1.261822761060210683e-04, -1.261482737585182406e-04, -1.261140691153798748e-04, -1.260796622486062921e-04, -1.260450532305195509e-04, -1.260102421337650728e-04, -1.259752290313106125e-04, -1.259400139964486436e-04, -1.259045971027887415e-04, -1.258689784242681276e-04, -1.258331580351442966e-04, -1.257971360099968596e-04, -1.257609124237279237e-04, -1.257244873515620648e-04, -1.256878608690412320e-04, -1.256510330520337190e-04, -1.256140039767270360e-04, -1.255767737196301047e-04, -1.255393423575742887e-04, -1.255017099677078639e-04, -1.254638766275037432e-04, -1.254258424147538934e-04, -1.253876074075713676e-04, -1.253491716843881641e-04, -1.253105353239591024e-04, -1.252716984053538001e-04, -1.252326610079669187e-04, -1.251934232115102486e-04, -1.251539850960159351e-04, -1.251143467418362612e-04, -1.250745082296389043e-04, -1.250344696404140918e-04, -1.249942310554703461e-04, -1.249537925564345110e-04, -1.249131542252516981e-04, -1.248723161441877259e-04, -1.248312783958211781e-04, -1.247900410630520501e-04, -1.247486042291031045e-04, -1.247069679775052609e-04, -1.246651323921137784e-04, -1.246230975571002589e-04, -1.245808635569483377e-04, -1.245384304764694859e-04, -1.244957984007804316e-04, -1.244529674153218354e-04, -1.244099376058508094e-04, -1.243667090584356860e-04, -1.243232818594640137e-04, -1.242796560956458643e-04, -1.242358318539954281e-04, -1.241918092218510718e-04, -1.241475882868653369e-04, -1.241031691369998710e-04, -1.240585518605440488e-04, -1.240137365460896289e-04, -1.239687232825509473e-04, -1.239235121591541837e-04, -1.238781032654432974e-04, -1.238324966912685617e-04, -1.237866925268073812e-04, -1.237406908625384599e-04, -1.236944917892616970e-04, -1.236480953980908951e-04, -1.236015017804458459e-04, -1.235547110280708699e-04, -1.235077232330178214e-04, -1.234605384876479863e-04, -1.234131568846415954e-04, -1.233655785169901812e-04, -1.233178034779914276e-04, -1.232698318612684420e-04, -1.232216637607428398e-04, -1.231732992706558859e-04, -1.231247384855591986e-04, -1.230759815003150198e-04, -1.230270284100978958e-04, -1.229778793103954095e-04, -1.229285342969995603e-04, -1.228789934660206424e-04, -1.228292569138765382e-04, -1.227793247372957811e-04, -1.227291970333170947e-04, -1.226788738992926184e-04, -1.226283554328764960e-04, -1.225776417320397025e-04, -1.225267328950613158e-04, -1.224756290205294930e-04, -1.224243302073427708e-04, -1.223728365547037237e-04, -1.223211481621291820e-04, -1.222692651294428866e-04, -1.222171875567777113e-04, -1.221649155445736577e-04, -1.221124491935818117e-04, -1.220597886048545457e-04, -1.220069338797579188e-04, -1.219538851199643720e-04, -1.219006424274526743e-04, -1.218472059045092504e-04, -1.217935756537296446e-04, -1.217397517780101726e-04, -1.216857343805590071e-04, -1.216315235648897272e-04, -1.215771194348213180e-04, -1.215225220944814914e-04, -1.214677316482972260e-04, -1.214127482010069782e-04, -1.213575718576529844e-04, -1.213022027235832257e-04, -1.212466409044499378e-04, -1.211908865062120906e-04, -1.211349396351272840e-04, -1.210788003977645005e-04, -1.210224689009942395e-04, -1.209659452519903737e-04, -1.209092295582348247e-04, -1.208523219275046067e-04, -1.207952224678872361e-04, -1.207379312877721928e-04, -1.206804484958508804e-04, -1.206227742011180482e-04, -1.205649085128734184e-04, -1.205068515407121173e-04, -1.204486033945358976e-04, -1.203901641845564442e-04, -1.203315340212718343e-04, -1.202727130154926258e-04, -1.202137012783294022e-04, -1.201544989211853734e-04, -1.200951060557816643e-04, -1.200355227941226613e-04, -1.199757492485231306e-04, -1.199157855315987860e-04, -1.198556317562577236e-04, -1.197952880357127135e-04, -1.197347544834845073e-04, -1.196740312133774160e-04, -1.196131183395062933e-04, -1.195520159762840942e-04, -1.194907242384134048e-04, -1.194292432409124630e-04, -1.193675730990811961e-04, -1.193057139285269976e-04, -1.192436658451529499e-04, -1.191814289651638690e-04, -1.191190034050501498e-04, -1.190563892816189637e-04, -1.189935867119556616e-04, -1.189305958134534804e-04, -1.188674167038026067e-04, -1.188040495009791718e-04, -1.187404943232711640e-04, -1.186767512892551187e-04, -1.186128205177985033e-04, -1.185487021280713860e-04, -1.184843962395406083e-04, -1.184199029719569236e-04, -1.183552224453850296e-04, -1.182903547801652551e-04, -1.182253000969440943e-04, -1.181600585166623073e-04, -1.180946301605434278e-04, -1.180290151501212201e-04, -1.179632136072160034e-04, -1.178972256539349226e-04, -1.178310514126876149e-04, -1.177646910061733350e-04, -1.176981445573849531e-04, -1.176314121896070034e-04, -1.175644940264198988e-04, -1.174973901916877473e-04, -1.174301008095746964e-04, -1.173626260045339823e-04, -1.172949659013106002e-04, -1.172271206249432692e-04, -1.171590903007534141e-04, -1.170908750543616723e-04, -1.170224750116769029e-04, -1.169538902988974876e-04, -1.168851210425125506e-04, -1.168161673693036252e-04, -1.167470294063337579e-04, -1.166777072809638120e-04, -1.166082011208410699e-04, -1.165385110539011575e-04, -1.164686372083723406e-04, -1.163985797127622837e-04, -1.163283386958750181e-04, -1.162579142868010483e-04, -1.161873066149175148e-04, -1.161165158098899288e-04, -1.160455420016734461e-04, -1.159743853205016050e-04, -1.159030458969041342e-04, -1.158315238616941458e-04, -1.157598193459710218e-04, -1.156879324811209295e-04, -1.156158633988176206e-04, -1.155436122310137713e-04, -1.154711791099539931e-04, -1.153985641681664297e-04, -1.153257675384650882e-04, -1.152527893539492023e-04, -1.151796297479961849e-04, -1.151062888542719957e-04, -1.150327668067367925e-04, -1.149590637396151569e-04, -1.148851797874282128e-04, -1.148111150849801969e-04, -1.147368697673492149e-04, -1.146624439699048741e-04, -1.145878378282975902e-04, -1.145130514784584787e-04, -1.144380850566022688e-04, -1.143629386992271274e-04, -1.142876125431015942e-04, -1.142121067252972164e-04, -1.141364213831440013e-04, -1.140605566542655176e-04, -1.139845126765666981e-04, -1.139082895882232414e-04, -1.138318875276961132e-04, -1.137553066337370218e-04, -1.136785470453577075e-04, -1.136016089018620899e-04, -1.135244923428325520e-04, -1.134471975081187330e-04, -1.133697245378707721e-04, -1.132920735724941516e-04, -1.132142447526863431e-04, -1.131362382194219944e-04, -1.130580541139435921e-04, -1.129796925777778191e-04, -1.129011537527385500e-04, -1.128224377808962085e-04, -1.127435448046110530e-04, -1.126644749665203961e-04, -1.125852284095235070e-04, -1.125058052768158049e-04, -1.124262057118581760e-04, -1.123464298583810796e-04, -1.122664778603981009e-04, -1.121863498622000692e-04, -1.121060460083366807e-04, -1.120255664436568984e-04, -1.119449113132597835e-04, -1.118640807625313722e-04, -1.117830749371317734e-04, -1.117018939829805048e-04, -1.116205380462904694e-04, -1.115390072735370012e-04, -1.114573018114612942e-04, -1.113754218070870446e-04, -1.112933674077062484e-04, -1.112111387608823854e-04, -1.111287360144550955e-04, -1.110461593165233733e-04, -1.109634088154681195e-04, -1.108804846599372601e-04, -1.107973869988493652e-04, -1.107141159813928492e-04, -1.106306717570300097e-04, -1.105470544754810351e-04, -1.104632642867474645e-04, -1.103793013410952464e-04, -1.102951657890600387e-04, -1.102108577814451884e-04, -1.101263774693265297e-04, -1.100417250040365411e-04, -1.099569005371863682e-04, -1.098719042206518779e-04, -1.097867362065748243e-04, -1.097013966473678900e-04, -1.096158856957004833e-04, -1.095302035045181313e-04, -1.094443502270295109e-04, -1.093583260167080068e-04, -1.092721310272944628e-04, -1.091857654127971277e-04, -1.090992293274789971e-04, -1.090125229258783184e-04, -1.089256463627950384e-04, -1.088385997932922667e-04, -1.087513833726976855e-04, -1.086639972566059075e-04, -1.085764416008643001e-04, -1.084887165615944525e-04, -1.084008222951765495e-04, -1.083127589582537630e-04, -1.082245267077350432e-04, -1.081361257007804012e-04, -1.080475560948186215e-04, -1.079588180475518568e-04, -1.078699117169203912e-04, -1.077808372611404518e-04, -1.076915948386890300e-04, -1.076021846082923208e-04, -1.075126067289475159e-04, -1.074228613599080036e-04, -1.073329486606867033e-04, -1.072428687910556588e-04, -1.071526219110498191e-04, -1.070622081809474013e-04, -1.069716277613115102e-04, -1.068808808129371069e-04, -1.067899674968916129e-04, -1.066988879745008691e-04, -1.066076424073356512e-04, -1.065162309572316598e-04, -1.064246537862924746e-04, -1.063329110568558903e-04, -1.062410029315302370e-04, -1.061489295731803128e-04, -1.060566911449100096e-04, -1.059642878101074021e-04, -1.058717197323860384e-04, -1.057789870756320894e-04, -1.056860900039843180e-04, -1.055930286818243887e-04, -1.054998032737956116e-04, -1.054064139448073595e-04, -1.053128608599970540e-04, -1.052191441847724623e-04, -1.051252640847927103e-04, -1.050312207259546489e-04, -1.049370142744301233e-04, -1.048426448966308989e-04, -1.047481127592125242e-04, -1.046534180290937377e-04, -1.045585608734402321e-04, -1.044635414596681099e-04, -1.043683599554477465e-04, -1.042730165286877839e-04, -1.041775113475584689e-04, -1.040818445804799023e-04, -1.039860163961039741e-04, -1.038900269633575142e-04, -1.037938764514027465e-04, -1.036975650296413951e-04, -1.036010928677365717e-04, -1.035044601355944254e-04, -1.034076670033683983e-04, -1.033107136414633726e-04, -1.032136002205182691e-04, -1.031163269114315664e-04, -1.030188938853435340e-04, -1.029213013136395116e-04, -1.028235493679512509e-04, -1.027256382201600736e-04, -1.026275680423793883e-04, -1.025293390069799388e-04, -1.024309512865727691e-04, -1.023324050540128685e-04, -1.022337004823986839e-04, -1.021348377450772562e-04, -1.020358170156252740e-04, -1.019366384678757718e-04, -1.018373022758995090e-04, -1.017378086140091983e-04, -1.016381576567652249e-04, -1.015383495789555886e-04, -1.014383845556224669e-04, -1.013382627620454911e-04, -1.012379843737448769e-04, -1.011375495664807469e-04, -1.010369585162583620e-04, -1.009362113993097300e-04, -1.008353083921189496e-04, -1.007342496714054591e-04, -1.006330354141274515e-04, -1.005316657974816174e-04, -1.004301409989076575e-04, -1.003284611960696484e-04, -1.002266265668831202e-04, -1.001246372894960422e-04, -1.000224935422939598e-04, -9.992019550390282654e-05, -9.981774335317280893e-05, -9.971513726919805970e-05, -9.961237743132284343e-05, -9.950946401909926628e-05, -9.940639721233359848e-05, -9.930317719106587782e-05, -9.919980413555826799e-05, -9.909627822631975134e-05, -9.899259964408952696e-05, -9.888876856984014137e-05, -9.878478518478160848e-05, -9.868064967034465864e-05, -9.857636220820026785e-05, -9.847192298026627140e-05, -9.836733216866493091e-05, -9.826258995576899933e-05, -9.815769652418216470e-05, -9.805265205672564666e-05, -9.794745673646076142e-05, -9.784211074669316372e-05, -9.773661427093102369e-05, -9.763096749293065824e-05, -9.752517059667788278e-05, -9.741922376636962043e-05, -9.731312718646395151e-05, -9.720688104161469549e-05, -9.710048551672318166e-05, -9.699394079691804225e-05, -9.688724706754263578e-05, -9.678040451417556551e-05, -9.667341332263703561e-05, -9.656627367894639108e-05, -9.645898576936749161e-05, -9.635154978039009042e-05, -9.624396589871140283e-05, -9.613623431128633188e-05, -9.602835520526245691e-05, -9.592032876803054380e-05, -9.581215518720168187e-05, -9.570383465061012989e-05, -9.559536734631412928e-05, -9.548675346260114885e-05, -9.537799318796630929e-05, -9.526908671114229349e-05, -9.516003422108420845e-05, -9.505083590695024578e-05, -9.494149195814903421e-05, -9.483200256429602764e-05, -9.472236791521942750e-05, -9.461258820098125699e-05, -9.450266361185995960e-05, -9.439259433835401768e-05, -9.428238057118679062e-05, -9.417202250128643010e-05, -9.406152031981470621e-05, -9.395087421815262831e-05, -9.384008438788052277e-05, -9.372915102082491116e-05, -9.361807430901722925e-05, -9.350685444469529072e-05, -9.339549162032997204e-05, -9.328398602860298635e-05, -9.317233786241341578e-05, -9.306054731487676277e-05, -9.294861457932851435e-05, -9.283653984930550747e-05, -9.272432331857464679e-05, -9.261196518111245390e-05, -9.249946563111004108e-05, -9.238682486297803093e-05, -9.227404307132622751e-05, -9.216112045099225289e-05, -9.204805719702261423e-05, -9.193485350467617322e-05, -9.182150956942470178e-05, -9.170802558695708329e-05, -9.159440175315909226e-05, -9.148063826414308791e-05, -9.136673531622787508e-05, -9.125269310594285135e-05, -9.113851183003312986e-05, -9.102419168543891240e-05, -9.090973286932495256e-05, -9.079513557906146025e-05, -9.068040001222689352e-05, -9.056552636660904275e-05, -9.045051484020931324e-05, -9.033536563122197631e-05, -9.022007893805940413e-05, -9.010465495935610829e-05, -8.998909389392409787e-05, -8.987339594080212925e-05, -8.975756129923563489e-05, -8.964159016866104297e-05, -8.952548274873510514e-05, -8.940923923931550280e-05, -8.929285984046526523e-05, -8.917634475245688960e-05, -8.905969417575195792e-05, -8.894290831102669712e-05, -8.882598735917612614e-05, -8.870893152126805865e-05, -8.859174099859397919e-05, -8.847441599264806395e-05, -8.835695670511105315e-05, -8.823936333788184210e-05, -8.812163609305482127e-05, -8.800377517292722182e-05, -8.788578077999564613e-05, -8.776765311696369789e-05, -8.764939238671407744e-05, -8.753099879236565144e-05, -8.741247253720083846e-05, -8.729381382472196037e-05, -8.717502285863010041e-05, -8.705609984280458465e-05, -8.693704498135354649e-05, -8.681785847856750922e-05, -8.669854053892469864e-05, -8.657909136711539695e-05, -8.645951116802731956e-05, -8.633980014672284684e-05, -8.621995850849838421e-05, -8.609998645880837312e-05, -8.597988420332425806e-05, -8.585965194790694786e-05, -8.573928989861227736e-05, -8.561879826169039752e-05, -8.549817724359064079e-05, -8.537742705094039273e-05, -8.525654789057611374e-05, -8.513553996952710312e-05, -8.501440349499438424e-05, -8.489313867440265139e-05, -8.477174571535275459e-05, -8.465022482562670051e-05, -8.452857621321322606e-05, -8.440680008628703593e-05, -8.428489665321299031e-05, -8.416286612255151236e-05, -8.404070870303697195e-05, -8.391842460360889706e-05, -8.379601403339571083e-05, -8.367347720169384707e-05, -8.355081431801987329e-05, -8.342802559206204040e-05, -8.330511123368562244e-05, -8.318207145295973700e-05, -8.305890646013454988e-05, -8.293561646564687228e-05, -8.281220168011972714e-05, -8.268866231436771590e-05, -8.256499857937448070e-05, -8.244121068632502710e-05, -8.231729884658379613e-05, -8.219326327169951610e-05, -8.206910417341065067e-05, -8.194482176362271198e-05, -8.182041625444122035e-05, -8.169588785814934262e-05, -8.157123678721237806e-05, -8.144646325427823267e-05, -8.132156747218218971e-05, -8.119654965392454800e-05, -8.107141001270329707e-05, -8.094614876189155223e-05, -8.082076611504308394e-05, -8.069526228589758981e-05, -8.056963748835728933e-05, -8.044389193652083235e-05, -8.031802584466039526e-05, -8.019203942722605847e-05, -8.006593289884713456e-05, -7.993970647433566484e-05, -7.981336036866558913e-05, -7.968689479699783142e-05, -7.956030997468776741e-05, -7.943360611723339956e-05, -7.930678344033135617e-05, -7.917984215985400119e-05, -7.905278249183216824e-05, -7.892560465248852697e-05, -7.879830885821438114e-05, -7.867089532557663457e-05, -7.854336427131963436e-05, -7.841571591234654964e-05, -7.828795046574327828e-05, -7.816006814878644288e-05, -7.803206917889065784e-05, -7.790395377366589726e-05, -7.777572215089286996e-05, -7.764737452850759675e-05, -7.751891112463340789e-05, -7.739033215755862212e-05, -7.726163784574214383e-05, -7.713282840781274480e-05, -7.700390406257359070e-05, -7.687486502897508190e-05, -7.674571152617583976e-05, -7.661644377346286873e-05, -7.648706199031462985e-05, -7.635756639637606335e-05, -7.622795721143758234e-05, -7.609823465549038057e-05, -7.596839894867485159e-05, -7.583845031128660604e-05, -7.570838896380357671e-05, -7.557821512686948445e-05, -7.544792902127022967e-05, -7.531753086799596291e-05, -7.518702088816161286e-05, -7.505639930306876712e-05, -7.492566633418257878e-05, -7.479482220310790035e-05, -7.466386713164785784e-05, -7.453280134174964061e-05, -7.440162505551180618e-05, -7.427033849521130402e-05, -7.413894188328694140e-05, -7.400743544231467718e-05, -7.387581939506641265e-05, -7.374409396445632354e-05, -7.361225937354686378e-05, -7.348031584557774079e-05, -7.334826360394115503e-05, -7.321610287218856272e-05, -7.308383387403550051e-05, -7.295145683333766529e-05, -7.281897197412585260e-05, -7.268637952058809441e-05, -7.255367969704583375e-05, -7.242087272801187535e-05, -7.228795883813789668e-05, -7.215493825221885253e-05, -7.202181119522288542e-05, -7.188857789226748673e-05, -7.175523856862415877e-05, -7.162179344972467601e-05, -7.148824276113677190e-05, -7.135458672859929408e-05, -7.122082557799806735e-05, -7.108695953537182968e-05, -7.095298882691141904e-05, -7.081891367896507247e-05, -7.068473431801534609e-05, -7.055045097071321327e-05, -7.041606386385471366e-05, -7.028157322438566940e-05, -7.014697927940291848e-05, -7.001228225615767570e-05, -6.987748238203308972e-05, -6.974257988457897817e-05, -6.960757499148736537e-05, -6.947246793059839119e-05, -6.933725892990586762e-05, -6.920194821753314167e-05, -6.906653602176795255e-05, -6.893102257103909415e-05, -6.879540809392096872e-05, -6.865969281913379013e-05, -6.852387697554964188e-05, -6.838796079216707968e-05, -6.825194449814719466e-05, -6.811582832278959834e-05, -6.797961249553773522e-05, -6.784329724597808317e-05, -6.770688280384641470e-05, -6.757036939900326687e-05, -6.743375726146932697e-05, -6.729704662140083467e-05, -6.716023770909642602e-05, -6.702333075500099596e-05, -6.688632598968246928e-05, -6.674922364386129089e-05, -6.661202394841548094e-05, -6.647472713432696682e-05, -6.633733343274059082e-05, -6.619984307494013577e-05, -6.606225629233008329e-05, -6.592457331647025407e-05, -6.578679437905282277e-05, -6.564891971190660064e-05, -6.551094954700363560e-05, -6.537288411643426200e-05, -6.523472365243679425e-05, -6.509646838740392361e-05, -6.495811855382669199e-05, -6.481967438435557328e-05, -6.468113611177561792e-05, -6.454250396898138079e-05, -6.440377818903808376e-05, -6.426495900512576567e-05, -6.412604665054554367e-05, -6.398704135874892730e-05, -6.384794336331984783e-05, -6.370875289794969453e-05, -6.356947019650396598e-05, -6.343009549293627928e-05, -6.329062902135533313e-05, -6.315107101600040481e-05, -6.301142171121536999e-05, -6.287168134151116636e-05, -6.273185014150879169e-05, -6.259192834594593099e-05, -6.245191618970669079e-05, -6.231181390780334386e-05, -6.217162173535075559e-05, -6.203133990763433640e-05, -6.189096866002264145e-05, -6.175050822803543143e-05, -6.160995884731213586e-05, -6.146932075361795172e-05, -6.132859418284254238e-05, -6.118777937100713916e-05, -6.104687655423860176e-05, -6.090588596880605756e-05, -6.076480785110229395e-05, -6.062364243761865908e-05, -6.048238996500605500e-05, -6.034105067001944007e-05, -6.019962478952332451e-05, -6.005811256052219580e-05, -5.991651422013567015e-05, -5.977483000560419131e-05, -5.963306015429470911e-05, -5.949120490367537011e-05, -5.934926449135273280e-05, -5.920723915504643798e-05, -5.906512913259452131e-05, -5.892293466195396901e-05, -5.878065598120552895e-05, -5.863829332852914673e-05, -5.849584694224044907e-05, -5.835331706076570554e-05, -5.821070392264787973e-05, -5.806800776654564672e-05, -5.792522883123945102e-05, -5.778236735560651576e-05, -5.763942357865741415e-05, -5.749639773951116674e-05, -5.735329007740058108e-05, -5.721010083167832327e-05, -5.706683024179152731e-05, -5.692347854731893579e-05, -5.678004598794584803e-05, -5.663653280346913455e-05, -5.649293923379727092e-05, -5.634926551895668036e-05, -5.620551189906529275e-05, -5.606167861437050525e-05, -5.591776590522375779e-05, -5.577377401208539164e-05, -5.562970317552594362e-05, -5.548555363623037460e-05, -5.534132563497357998e-05, -5.519701941265675794e-05, -5.505263521028325884e-05, -5.490817326896313888e-05, -5.476363382991978045e-05, -5.461901713446411531e-05, -5.447432342402533454e-05, -5.432955294015796301e-05, -5.418470592448308882e-05, -5.403978261875209407e-05, -5.389478326482120997e-05, -5.374970810462479130e-05, -5.360455738024547779e-05, -5.345933133382470683e-05, -5.331403020763208204e-05, -5.316865424403958962e-05, -5.302320368550213691e-05, -5.287767877458913655e-05, -5.273207975399001556e-05, -5.258640686645685432e-05, -5.244066035486786659e-05, -5.229484046220096526e-05, -5.214894743150844629e-05, -5.200298150597968945e-05, -5.185694292888395310e-05, -5.171083194357618145e-05, -5.156464879352788401e-05, -5.141839372230917846e-05, -5.127206697356092668e-05, -5.112566879106553993e-05, -5.097919941865765412e-05, -5.083265910029277336e-05, -5.068604808002225205e-05, -5.053936660196686737e-05, -5.039261491038069917e-05, -5.024579324959289477e-05, -5.009890186401358457e-05, -4.995194099816591354e-05, -4.980491089666594276e-05, -4.965781180419656757e-05, -4.951064396557853289e-05, -4.936340762567897390e-05, -4.921610302948239746e-05, -4.906873042205803405e-05, -4.892129004856567891e-05, -4.877378215425573271e-05, -4.862620698447432438e-05, -4.847856478463821863e-05, -4.833085580027216672e-05, -4.818308027699006162e-05, -4.803523846046780593e-05, -4.788733059650803869e-05, -4.773935693098160202e-05, -4.759131770983302315e-05, -4.744321317911313532e-05, -4.729504358495249453e-05, -4.714680917356745780e-05, -4.699851019126642415e-05, -4.685014688442268213e-05, -4.670171949951410509e-05, -4.655322828309621562e-05, -4.640467348180833836e-05, -4.625605534237282749e-05, -4.610737411160168716e-05, -4.595863003636999500e-05, -4.580982336365442515e-05, -4.566095434050677340e-05, -4.551202321406033367e-05, -4.536303023152911195e-05, -4.521397564021434508e-05, -4.506485968747740923e-05, -4.491568262077929842e-05, -4.476644468765341106e-05, -4.461714613571263790e-05, -4.446778721265421384e-05, -4.431836816623371063e-05, -4.416888924430458315e-05, -4.401935069479054937e-05, -4.386975276569200067e-05, -4.372009570508623224e-05, -4.357037976113285055e-05, -4.342060518204679027e-05, -4.327077221613878888e-05, -4.312088111178716352e-05, -4.297093211744497355e-05, -4.282092548164521110e-05, -4.267086145297528850e-05, -4.252074028011517505e-05, -4.237056221181085441e-05, -4.222032749688100600e-05, -4.207003638421572428e-05, -4.191968912278362707e-05, -4.176928596160405926e-05, -4.161882714978073702e-05, -4.146831293650729756e-05, -4.131774357100740367e-05, -4.116711930260064296e-05, -4.101644038067573446e-05, -4.086570705466327453e-05, -4.071491957410871041e-05, -4.056407818857866516e-05, -4.041318314773365374e-05, -4.026223470130137102e-05, -4.011123309905581405e-05, -3.996017859085049934e-05, -3.980907142662480543e-05, -3.965791185634323049e-05, -3.950670013006192841e-05, -3.935543649790140049e-05, -3.920412121001991214e-05, -3.905275451668563299e-05, -3.890133666818342261e-05, -3.874986791488777021e-05, -3.859834850722891332e-05, -3.844677869570559071e-05, -3.829515873085137116e-05, -3.814348886330823010e-05, -3.799176934373164807e-05, -3.784000042286443806e-05, -3.768818235150928140e-05, -3.753631538050158873e-05, -3.738439976077619206e-05, -3.723243574330627702e-05, -3.708042357911022017e-05, -3.692836351928427088e-05, -3.677625581498199892e-05, -3.662410071738733176e-05, -3.647189847778795497e-05, -3.631964934748040395e-05, -3.616735357784421655e-05, -3.601501142031411651e-05, -3.586262312635315910e-05, -3.571018894751909793e-05, -3.555770913540371695e-05, -3.540518394163915956e-05, -3.525261361793103064e-05, -3.509999841603102044e-05, -3.494733858774357917e-05, -3.479463438492498193e-05, -3.464188605949013882e-05, -3.448909386338475807e-05, -3.433625804862576643e-05, -3.418337886727377720e-05, -3.403045657143937867e-05, -3.387749141328943596e-05, -3.372448364502001990e-05, -3.357143351889594653e-05, -3.341834128722367199e-05, -3.326520720235779782e-05, -3.311203151670022383e-05, -3.295881448270695835e-05, -3.280555635286011861e-05, -3.265225737970852739e-05, -3.249891781584039112e-05, -3.234553791388889029e-05, -3.219211792653953170e-05, -3.203865810650162715e-05, -3.188515870654936440e-05, -3.173161997949382120e-05, -3.157804217818949757e-05, -3.142442555553382795e-05, -3.127077036447365252e-05, -3.111707685797747517e-05, -3.096334528907605332e-05, -3.080957591083453395e-05, -3.065576897635888422e-05, -3.050192473879575938e-05, -3.034804345133848281e-05, -3.019412536719977494e-05, -3.004017073965195006e-05, -2.988617982199922847e-05, -2.973215286758441455e-05, -2.957809012979497500e-05, -2.942399186203544935e-05, -2.926985831776820574e-05, -2.911568975048538382e-05, -2.896148641371537965e-05, -2.880724856102260853e-05, -2.865297644601388143e-05, -2.849867032231039873e-05, -2.834433044358869238e-05, -2.818995706355259591e-05, -2.803555043593978350e-05, -2.788111081452141423e-05, -2.772663845310847469e-05, -2.757213360551706075e-05, -2.741759652564348232e-05, -2.726302746736791841e-05, -2.710842668462895940e-05, -2.695379443139657997e-05, -2.679913096165029913e-05, -2.664443652941369519e-05, -2.648971138876043998e-05, -2.633495579375244171e-05, -2.618016999850771948e-05, -2.602535425717300677e-05, -2.587050882389513195e-05, -2.571563395289719702e-05, -2.556072989838075883e-05, -2.540579691460216372e-05, -2.525083525583693146e-05, -2.509584517639334506e-05, -2.494082693057795281e-05, -2.478578077277037144e-05, -2.463070695732674472e-05, -2.447560573865509547e-05, -2.432047737118721767e-05, -2.416532210935093438e-05, -2.401014020763823651e-05, -2.385493192054310041e-05, -2.369969750256797954e-05, -2.354443720825772303e-05, -2.338915129217867774e-05, -2.323384000889031260e-05, -2.307850361302102131e-05, -2.292314235917105236e-05, -2.276775650198788480e-05, -2.261234629613835068e-05, -2.245691199628042209e-05, -2.230145385713212916e-05, -2.214597213340853399e-05, -2.199046707982875090e-05, -2.183493895114970915e-05, -2.167938800213825844e-05, -2.152381448757753862e-05, -2.136821866226672217e-05, -2.121260078102735002e-05, -2.105696109867544384e-05, -2.090129987006239399e-05, -2.074561735004700407e-05, -2.058991379350191145e-05, -2.043418945532012628e-05, -2.027844459038699481e-05, -2.012267945362121603e-05, -1.996689429994675749e-05, -1.981108938429947228e-05, -1.965526496162640452e-05, -1.949942128689270110e-05, -1.934355861505309042e-05, -1.918767720109338019e-05, -1.903177730000202089e-05, -1.887585916677684810e-05, -1.871992305643146578e-05, -1.856396922396722640e-05, -1.840799792441420702e-05, -1.825200941280332833e-05, -1.809600394417256852e-05, -1.793998177356688530e-05, -1.778394315604446367e-05, -1.762788834664866556e-05, -1.747181760044922609e-05, -1.731573117251410503e-05, -1.715962931791595130e-05, -1.700351229173177435e-05, -1.684738034904938162e-05, -1.669123374493921636e-05, -1.653507273449575385e-05, -1.637889757280896653e-05, -1.622270851497130696e-05, -1.606650581608371159e-05, -1.591028973122791970e-05, -1.575406051550046994e-05, -1.559781842401925634e-05, -1.544156371186078693e-05, -1.528529663412896275e-05, -1.512901744592716309e-05, -1.497272640233667493e-05, -1.481642375845824496e-05, -1.466010976938376502e-05, -1.450378469020265189e-05, -1.434744877600176772e-05, -1.419110228187165924e-05, -1.403474546287155330e-05, -1.387837857410523576e-05, -1.372200187062362238e-05, -1.356561560750038021e-05, -1.340922003980411107e-05, -1.325281542257688939e-05, -1.309640201086855179e-05, -1.293998005974345307e-05, -1.278354982421720972e-05, -1.262711155932604827e-05, -1.247066552009838219e-05, -1.231421196152673788e-05, -1.215775113864375211e-05, -1.200128330642442956e-05, -1.184480871986221479e-05, -1.168832763394078609e-05, -1.153184030361267804e-05, -1.137534698383378453e-05, -1.121884792956983185e-05, -1.106234339573335258e-05, -1.090583363725280692e-05, -1.074931890904445274e-05, -1.059279946598396991e-05, -1.043627556297572733e-05, -1.027974745488970435e-05, -1.012321539656798076e-05, -9.966679642859212711e-06, -9.810140448597338302e-06, -9.653598068573149475e-06, -9.497052757610802796e-06, -9.340504770469531452e-06, -9.183954361920091666e-06, -9.027401786716439608e-06, -8.870847299567340548e-06, -8.714291155205832330e-06, -8.557733608325936769e-06, -8.401174913589232621e-06, -8.244615325659370488e-06, -8.088055099173703985e-06, -7.931494488749874576e-06, -7.774933748992389634e-06, -7.618373134464324759e-06, -7.461812899728625112e-06, -7.305253299320004244e-06, -7.148694587751341737e-06, -6.992137019513385896e-06, -6.835580849081216614e-06, -6.679026330885973944e-06, -6.522473719356333926e-06, -6.365923268890132974e-06, -6.209375233860940856e-06, -6.052829868617748138e-06, -5.896287427491384151e-06, -5.739748164766274377e-06, -5.583212334721884068e-06, -5.426680191604411262e-06, -5.270151989633302998e-06, -5.113627983007889285e-06, -4.957108425879015119e-06, -4.800593572390510368e-06, -4.644083676650857370e-06, -4.487578992739760516e-06, -4.331079774707750690e-06, -4.174586276582735373e-06, -4.018098752341678096e-06, -3.861617455952053080e-06, -3.705142641343574663e-06, -3.548674562414644072e-06, -3.392213473032065238e-06, -3.235759627037547046e-06, -3.079313278219385758e-06, -2.922874680353938702e-06, -2.766444087177299498e-06, -2.610021752391846888e-06, -2.453607929672843974e-06, -2.297202872640084209e-06, -2.140806834892393593e-06, -1.984420070014186287e-06, -1.828042831512266841e-06, -1.671675372885182720e-06, -1.515317947594912436e-06, -1.358970809045539795e-06, -1.202634210624676993e-06, -1.046308405675158886e-06, -8.899936475016274021e-07, -7.336901893770698965e-07, -5.773982845145384135e-07, -4.211181861015997350e-07, -2.648501473068864919e-07, -1.085944212169574753e-07, 4.764873909440458630e-08, 2.038790805944849069e-07, 3.600963503129528888e-07, 5.163002953074230335e-07, 6.724906626568926071e-07, 8.286671995248761670e-07, 9.848296530901170762e-07, 1.140977770574881262e-06, 1.297111299273218577e-06, 1.453229986474746772e-06, 1.609333579562588416e-06, 1.765421825937142580e-06, 1.921494473044364948e-06, 2.077551268397070053e-06, 2.233591959540512308e-06, 2.389616294045811760e-06, 2.545624019573062067e-06, 2.701614883802103766e-06, 2.857588634460756729e-06, 3.013545019353089885e-06, 3.169483786283257716e-06, 3.325404683153346110e-06, 3.481307457887237230e-06, 3.637191858465777479e-06, 3.793057632920248985e-06, 3.948904529332784231e-06, 4.104732295829799007e-06, 4.260540680610213849e-06, 4.416329431904150180e-06, 4.572098297994180240e-06, 4.727847027243577336e-06, 4.883575368027153903e-06, 5.039283068794229088e-06, 5.194969878062140479e-06, 5.350635544381854565e-06, 5.506279816366162772e-06, 5.661902442683160150e-06, 5.817503172049706288e-06, 5.973081753259578985e-06, 6.128637935142216130e-06, 6.284171466590957470e-06, 6.439682096556425052e-06, 6.595169574046957744e-06, 6.750633648122083160e-06, 6.906074067920691663e-06, 7.061490582619762147e-06, 7.216882941462569929e-06, 7.372250893752093444e-06, 7.527594188851464862e-06, 7.682912576177394580e-06, 7.838205805228429926e-06, 7.993473625543577607e-06, 8.148715786730557334e-06, 8.303932038459230545e-06, 8.459122130455074860e-06, 8.614285812527388588e-06, 8.769422834527914855e-06, 8.924532946379171475e-06, 9.079615898067828843e-06, 9.234671439645113122e-06, 9.389699321220255291e-06, 9.544699292988683792e-06, 9.699671105190804513e-06, 9.854614508140098573e-06, 1.000952925221658830e-05, 1.016441508786733360e-05, 1.031927176559982002e-05, 1.047409903601003958e-05, 1.062889664974140626e-05, 1.078366435751284877e-05, 1.093840191011222901e-05, 1.109310905838985726e-05, 1.124778555328665598e-05, 1.140243114579978554e-05, 1.155704558697622880e-05, 1.171162862797551218e-05, 1.186618002000079954e-05, 1.202069951432705265e-05, 1.217518686232206978e-05, 1.232964181540560621e-05, 1.248406412507718061e-05, 1.263845354290974094e-05, 1.279280982054303048e-05, 1.294713270971170933e-05, 1.310142196221117662e-05, 1.325567732989105517e-05, 1.340989856471772957e-05, 1.356408541870578736e-05, 1.371823764394589490e-05, 1.387235499262595115e-05, 1.402643721699705559e-05, 1.418048406936696573e-05, 1.433449530216242009e-05, 1.448847066786085215e-05, 1.464240991901817634e-05, 1.479631280829670800e-05, 1.495017908839000952e-05, 1.510400851211946055e-05, 1.525780083235902116e-05, 1.541155580206317546e-05, 1.556527317428797698e-05, 1.571895270215692506e-05, 1.587259413885469859e-05, 1.602619723768927392e-05, 1.617976175202355581e-05, 1.633328743530332612e-05, 1.648677404108524330e-05, 1.664022132296137519e-05, 1.679362903465603856e-05, 1.694699692995054534e-05, 1.710032476271777172e-05, 1.725361228691602903e-05, 1.740685925658911793e-05, 1.756006542586005360e-05, 1.771323054895882472e-05, 1.786635438018174940e-05, 1.801943667391220721e-05, 1.817247718464871660e-05, 1.832547566693655221e-05, 1.847843187543000187e-05, 1.863134556488586806e-05, 1.878421649012937663e-05, 1.893704440608244728e-05, 1.908982906775665310e-05, 1.924257023024729128e-05, 1.939526764876083718e-05, 1.954792107857427318e-05, 1.970053027505621368e-05, 1.985309499369448789e-05, 2.000561499002819423e-05, 2.015809001970953374e-05, 2.031051983849766398e-05, 2.046290420222454673e-05, 2.061524286682279156e-05, 2.076753558831935401e-05, 2.091978212283575911e-05, 2.107198222658179275e-05, 2.122413565588306410e-05, 2.137624216714041918e-05, 2.152830151685798443e-05, 2.168031346163618039e-05, 2.183227775816570438e-05, 2.198419416325507597e-05, 2.213606243378995236e-05, 2.228788232676117868e-05, 2.243965359925780844e-05, 2.259137600846816742e-05, 2.274304931167269792e-05, 2.289467326627211754e-05, 2.304624762974682257e-05, 2.319777215968432169e-05, 2.334924661377306960e-05, 2.350067074979592449e-05, 2.365204432565770376e-05, 2.380336709934485507e-05, 2.395463882895296117e-05, 2.410585927268044142e-05, 2.425702818882881600e-05, 2.440814533579626513e-05, 2.455921047210537781e-05, 2.471022335636943319e-05, 2.486118374728598003e-05, 2.501209140369846679e-05, 2.516294608452848585e-05, 2.531374754880365776e-05, 2.546449555567790923e-05, 2.561518986439177440e-05, 2.576583023429920852e-05, 2.591641642486178067e-05, 2.606694819564197882e-05, 2.621742530633055547e-05, 2.636784751671353736e-05, 2.651821458666540519e-05, 2.666852627621035782e-05, 2.681878234545547799e-05, 2.696898255461769166e-05, 2.711912666404477443e-05, 2.726921443417487694e-05, 2.741924562556418896e-05, 2.756921999888048159e-05, 2.771913731490338511e-05, 2.786899733451819885e-05, 2.801879981874979623e-05, 2.816854452868914973e-05, 2.831823122558752774e-05, 2.846785967078344304e-05, 2.861742962572954779e-05, 2.876694085201982331e-05, 2.891639311132304389e-05, 2.906578616544344476e-05, 2.921511977631453867e-05, 2.936439370596569882e-05, 2.951360771654279252e-05, 2.966276157033547939e-05, 2.981185502970364827e-05, 2.996088785717172920e-05, 3.010985981535543190e-05, 3.025877066699531875e-05, 3.040762017495103817e-05, 3.055640810220120607e-05, 3.070513421183720552e-05, 3.085379826709046806e-05, 3.100240003129247333e-05, 3.115093926789544047e-05, 3.129941574049930437e-05, 3.144782921278535575e-05, 3.159617944857672606e-05, 3.174446621183170614e-05, 3.189268926661145725e-05, 3.204084837710641145e-05, 3.218894330763053885e-05, 3.233697382261446296e-05, 3.248493968663291806e-05, 3.263284066436508100e-05, 3.278067652061492706e-05, 3.292844702033801655e-05, 3.307615192857547365e-05, 3.322379101051440361e-05, 3.337136403148132648e-05, 3.351887075690944108e-05, 3.366631095236549958e-05, 3.381368438354387829e-05, 3.396099081625959814e-05, 3.410823001647609378e-05, 3.425540175026497612e-05, 3.440250578383359140e-05, 3.454954188351850924e-05, 3.469650981578560389e-05, 3.484340934722443675e-05, 3.499024024457425010e-05, 3.513700227468560670e-05, 3.528369520454636315e-05, 3.543031880127613375e-05, 3.557687283212574835e-05, 3.572335706447235992e-05, 3.586977126584474032e-05, 3.601611520388517737e-05, 3.616238864637559737e-05, 3.630859136123161551e-05, 3.645472311649627462e-05, 3.660078368036667588e-05, 3.674677282115491368e-05, 3.689269030731471308e-05, 3.703853590743533118e-05, 3.718430939024167911e-05, 3.733001052458850122e-05, 3.747563907948662631e-05, 3.762119482406408542e-05, 3.776667752759279000e-05, 3.791208695948238586e-05, 3.805742288928048349e-05, 3.820268508666626136e-05, 3.834787332147775385e-05, 3.849298736367180360e-05, 3.863802698335197966e-05, 3.878299195076105588e-05, 3.892788203627576605e-05, 3.907269701043306873e-05, 3.921743664389743818e-05, 3.936210070745517237e-05, 3.950668897207358356e-05, 3.965120120883547188e-05, 3.979563718896643367e-05, 3.993999668385383501e-05, 4.008427946500910181e-05, 4.022848530409311047e-05, 4.037261397291091596e-05, 4.051666524341126390e-05, 4.066063888768157617e-05, 4.080453467797941306e-05, 4.094835238666273876e-05, 4.109209178628002532e-05, 4.123575264950000318e-05, 4.137933474913771582e-05, 4.152283785818066265e-05, 4.166626174972452612e-05, 4.180960619703205070e-05, 4.195287097352605650e-05, 4.209605585275871575e-05, 4.223916060843026883e-05, 4.238218501441551940e-05, 4.252512884469353754e-05, 4.266799187343783817e-05, 4.281077387494628067e-05, 4.295347462366643919e-05, 4.309609389422281611e-05, 4.323863146135162728e-05, 4.338108709996029089e-05, 4.352346058512023778e-05, 4.366575169203596428e-05, 4.380796019606398542e-05, 4.395008587273942501e-05, 4.409212849771185791e-05, 4.423408784680340979e-05, 4.437596369600325474e-05, 4.451775582143473013e-05, 4.465946399938266521e-05, 4.480108800628617799e-05, 4.494262761873361336e-05, 4.508408261348771011e-05, 4.522545276744801304e-05, 4.536673785767039534e-05, 4.550793766139252380e-05, 4.564905195597102251e-05, 4.579008051893859000e-05, 4.593102312799850369e-05, 4.607187956099304926e-05, 4.621264959592863349e-05, 4.635333301097086471e-05, 4.649392958443770198e-05, 4.663443909482576733e-05, 4.677486132077197852e-05, 4.691519604108006464e-05, 4.705544303471367456e-05, 4.719560208079768480e-05, 4.733567295861135552e-05, 4.747565544761471045e-05, 4.761554932740999355e-05, 4.775535437776863177e-05, 4.789507037862405218e-05, 4.803469711007254933e-05, 4.817423435236730186e-05, 4.831368188594403415e-05, 4.845303949138316413e-05, 4.859230694943589193e-05, 4.873148404101774203e-05, 4.887057054720283063e-05, 4.900956624924942564e-05, 4.914847092856263660e-05, 4.928728436671929035e-05, 4.942600634546290983e-05, 4.956463664670363950e-05, 4.970317505251196379e-05, 4.984162134514457884e-05, 4.997997530700694011e-05, 5.011823672067892407e-05, 5.025640536890841790e-05, 5.039448103461213258e-05, 5.053246350086944332e-05, 5.067035255094780050e-05, 5.080814796826541285e-05, 5.094584953641699039e-05, 5.108345703916725963e-05, 5.122097026044567804e-05, 5.135838898437111320e-05, 5.149571299522141062e-05, 5.163294207742767455e-05, 5.177007601562987402e-05, 5.190711459461608008e-05, 5.204405759934633858e-05, 5.218090481497272788e-05, 5.231765602680188616e-05, 5.245431102032072730e-05, 5.259086958118982049e-05, 5.272733149523798956e-05, 5.286369654848744611e-05, 5.299996452712271358e-05, 5.313613521748568059e-05, 5.327220840613035990e-05, 5.340818387976261359e-05, 5.354406142526439846e-05, 5.367984082971910932e-05, 5.381552188035025380e-05, 5.395110436457697700e-05, 5.408658807000866087e-05, 5.422197278441380079e-05, 5.435725829574004301e-05, 5.449244439213737977e-05, 5.462753086189253476e-05, 5.476251749351420853e-05, 5.489740407566610865e-05, 5.503219039719236069e-05, 5.516687624714129972e-05, 5.530146141470604245e-05, 5.543594568927809427e-05, 5.557032886044339188e-05, 5.570461071795038713e-05, 5.583879105173020636e-05, 5.597286965191990659e-05, 5.610684630879715228e-05, 5.624072081286487124e-05, 5.637449295478512505e-05, 5.650816252540937184e-05, 5.664172931577312665e-05, 5.677519311709627306e-05, 5.690855372077712723e-05, 5.704181091841678503e-05, 5.717496450178410227e-05, 5.730801426283270992e-05, 5.744095999372641153e-05, 5.757380148677976219e-05, 5.770653853451083532e-05, 5.783917092963738722e-05, 5.797169846504567281e-05, 5.810412093381602596e-05, 5.823643812921618486e-05, 5.836864984469612857e-05, 5.850075587391205138e-05, 5.863275601069141765e-05, 5.876465004905640090e-05, 5.889643778321872707e-05, 5.902811900757964062e-05, 5.915969351672455812e-05, 5.929116110544717811e-05, 5.942252156871412263e-05, 5.955377470168882350e-05, 5.968492029972584384e-05, 5.981595815837186740e-05, 5.994688807335905102e-05, 6.007770984063013074e-05, 6.020842325630200610e-05, 6.033902811669106307e-05, 6.046952421830624870e-05, 6.059991135784480209e-05, 6.073018933221500904e-05, 6.086035793850196166e-05, 6.099041697399063824e-05, 6.112036623616134967e-05, 6.125020552268925153e-05, 6.137993463143871298e-05, 6.150955336048816537e-05, 6.163906150809418802e-05, 6.176845887271500827e-05, 6.189774525300627316e-05, 6.202692044782024978e-05, 6.215598425620067532e-05, 6.228493647740637913e-05, 6.241377691087685931e-05, 6.254250535625506448e-05, 6.267112161338313833e-05, 6.279962548229569750e-05, 6.292801676324453791e-05, 6.305629525666867010e-05, 6.318446076318965710e-05, 6.331251308366415769e-05, 6.344045201912585372e-05, 6.356827737080912642e-05, 6.369598894017238031e-05, 6.382358652883498326e-05, 6.395106993865837838e-05, 6.407843897168271241e-05, 6.420569343015037646e-05, 6.433283311652374624e-05, 6.445985783345598995e-05, 6.458676738378679922e-05, 6.471356157059354991e-05, 6.484024019713417817e-05, 6.496680306687081612e-05, 6.509324998349287172e-05, 6.521958075086012178e-05, 6.534579517305429282e-05, 6.547189305437378919e-05, 6.559787419930582903e-05, 6.572373841254268022e-05, 6.584948549900640729e-05, 6.597511526378539140e-05, 6.610062751221422244e-05, 6.622602204981229259e-05, 6.635129868230618504e-05, 6.647645721565257780e-05, 6.660149745598273254e-05, 6.672641920965243563e-05, 6.685122228323763427e-05, 6.697590648350645046e-05, 6.710047161743547121e-05, 6.722491749223423788e-05, 6.734924391528146806e-05, 6.747345069420634359e-05, 6.759753763682536931e-05, 6.772150455117102318e-05, 6.784535124548731096e-05, 6.796907752822904799e-05, 6.809268320805725132e-05, 6.821616809386140648e-05, 6.833953199472607410e-05, 6.846277471994850815e-05, 6.858589607906092277e-05, 6.870889588177495403e-05, 6.883177393803240052e-05, 6.895453005799954494e-05, 6.907716405203980501e-05, 6.919967573073671863e-05, 6.932206490488750637e-05, 6.944433138549934456e-05, 6.956647498381081894e-05, 6.968849551125873450e-05, 6.981039277950158847e-05, 6.993216660041375629e-05, 7.005381678608523410e-05, 7.017534314881750525e-05, 7.029674550114518362e-05, 7.041802365580333855e-05, 7.053917742574965320e-05, 7.066020662415970822e-05, 7.078111106442715802e-05, 7.090189056015822836e-05, 7.102254492519327850e-05, 7.114307397357629438e-05, 7.126347751957468892e-05, 7.138375537767576481e-05, 7.150390736258058872e-05, 7.162393328922708486e-05, 7.174383297275641112e-05, 7.186360622853593064e-05, 7.198325287215347906e-05, 7.210277271941804215e-05, 7.222216558635445680e-05, 7.234143128922566424e-05, 7.246056964449998068e-05, 7.257958046887291693e-05, 7.269846357926327521e-05, 7.281721879280630516e-05, 7.293584592687670247e-05, 7.305434479905663846e-05, 7.317271522715671232e-05, 7.329095702921130254e-05, 7.340907002347940721e-05, 7.352705402843859957e-05, 7.364490886280711864e-05, 7.376263434551795679e-05, 7.388023029571242229e-05, 7.399769653278998548e-05, 7.411503287635436686e-05, 7.423223914623530240e-05, 7.434931516251037670e-05, 7.446626074544592043e-05, 7.458307571557263335e-05, 7.469975989362732211e-05, 7.481631310057409632e-05, 7.493273515761995397e-05, 7.504902588619019718e-05, 7.516518510792219801e-05, 7.528121264471306269e-05, 7.539710831866821335e-05, 7.551287195212148644e-05, 7.562850336765754853e-05, 7.574400238805337659e-05, 7.585936883635302724e-05, 7.597460253580942864e-05, 7.608970330991092989e-05, 7.620467098237162454e-05, 7.631950537715743923e-05, 7.643420631842841339e-05, 7.654877363061314338e-05, 7.666320713835056075e-05, 7.677750666651257856e-05, 7.689167204022276673e-05, 7.700570308480702089e-05, 7.711959962583918012e-05, 7.723336148913650045e-05, 7.734698850073421677e-05, 7.746048048690087071e-05, 7.757383727415960168e-05, 7.768705868923189034e-05, 7.780014455910900747e-05, 7.791309471099661132e-05, 7.802590897233503567e-05, 7.813858717082072997e-05, 7.825112913435419053e-05, 7.836353469108712328e-05, 7.847580366941802569e-05, 7.858793589796544759e-05, 7.869993120558987855e-05, 7.881178942138809644e-05, 7.892351037469463111e-05, 7.903509389507502880e-05, 7.914653981234878299e-05, 7.925784795655688966e-05, 7.936901815798389729e-05, 7.948005024715283813e-05, 7.959094405481938715e-05, 7.970169941199403392e-05, 7.981231614991050524e-05, 7.992279410004719169e-05, 8.003313309412145554e-05, 8.014333296409169077e-05, 8.025339354214989628e-05, 8.036331466074409175e-05, 8.047309615254768893e-05, 8.058273785048003729e-05, 8.069223958770140959e-05, 8.080160119760823134e-05, 8.091082251385376203e-05, 8.101990337031781872e-05, 8.112884360112744369e-05, 8.123764304065161891e-05, 8.134630152350262133e-05, 8.145481888452993781e-05, 8.156319495884098685e-05, 8.167142958177185880e-05, 8.177952258890719731e-05, 8.188747381607509011e-05, 8.199528309934782789e-05, 8.210295027503744557e-05, 8.221047517971468224e-05, 8.231785765018054799e-05, 8.242509752348582599e-05, 8.253219463692700671e-05, 8.263914882804096181e-05, 8.274595993462475791e-05, 8.285262779470715564e-05, 8.295915224656762383e-05, 8.306553312873251769e-05, 8.317177027997514659e-05, 8.327786353930991935e-05, 8.338381274601420448e-05, 8.348961773959725423e-05, 8.359527835982191572e-05, 8.370079444669796314e-05, 8.380616584048410350e-05, 8.391139238168199993e-05, 8.401647391106168274e-05, 8.412141026960835569e-05, 8.422620129859013157e-05, 8.433084683950471650e-05, 8.443534673409983364e-05, 8.453970082438750755e-05, 8.464390895261996773e-05, 8.474797096128577271e-05, 8.485188669315241910e-05, 8.495565599121915172e-05, 8.505927869873635729e-05, 8.516275465922455148e-05, 8.526608371642270317e-05, 8.536926571435451982e-05, 8.547230049727673105e-05, 8.557518790970300882e-05, 8.567792779639492795e-05, 8.578052000238546614e-05, 8.588296437292707074e-05, 8.598526075355877082e-05, 8.608740899005428457e-05, 8.618940892844049139e-05, 8.629126041501677133e-05, 8.639296329630879101e-05, 8.649451741911061127e-05, 8.659592263047952371e-05, 8.669717877771397358e-05, 8.679828570836768155e-05, 8.689924327026732971e-05, 8.700005131146313557e-05, 8.710070968029296899e-05, 8.720121822533253317e-05, 8.730157679541359272e-05, 8.740178523964186306e-05, 8.750184340735310019e-05, 8.760175114815266055e-05, 8.770150831191262785e-05, 8.780111474874808261e-05, 8.790057030903668559e-05, 8.799987484341352778e-05, 8.809902820277126594e-05, 8.819803023825621951e-05, 8.829688080128705950e-05, 8.839557974352705292e-05, 8.849412691690246714e-05, 8.859252217359899200e-05, 8.869076536605698287e-05, 8.878885634698951263e-05, 8.888679496935579516e-05, 8.898458108637961677e-05, 8.908221455154474190e-05, 8.917969521859472339e-05, 8.927702294152959565e-05, 8.937419757462421123e-05, 8.947121897239946882e-05, 8.956808698964287242e-05, 8.966480148140328651e-05, 8.976136230298613849e-05, 8.985776930997243280e-05, 8.995402235819160530e-05, 9.005012130374021213e-05, 9.014606600297667138e-05, 9.024185631252232016e-05, 9.033749208925702357e-05, 9.043297319033653553e-05, 9.052829947316684382e-05, 9.062347079542234401e-05, 9.071848701504029648e-05, 9.081334799022277801e-05, 9.090805357943063732e-05, 9.100260364140280744e-05, 9.109699803512930907e-05, 9.119123661986980398e-05, 9.128531925514805207e-05, 9.137924580074907881e-05, 9.147301611673722729e-05, 9.156663006343160099e-05, 9.166008750140610447e-05, 9.175338829152526266e-05, 9.184653229490331936e-05, 9.193951937292029700e-05, 9.203234938723634873e-05, 9.212502219976497863e-05, 9.221753767269131056e-05, 9.230989566846745315e-05, 9.240209604981300124e-05, 9.249413867971099728e-05, 9.258602342142907321e-05, 9.267775013847331770e-05, 9.276931869464752779e-05, 9.286072895400736065e-05, 9.295198078087650183e-05, 9.304307403986054295e-05, 9.313400859582554169e-05, 9.322478431389430832e-05, 9.331540105948355325e-05, 9.340585869826328359e-05, 9.349615709617373031e-05, 9.358629611944116401e-05, 9.367627563453288699e-05, 9.376609550821652555e-05, 9.385575560751209469e-05, 9.394525579971209654e-05, 9.403459595239098000e-05, 9.412377593338727851e-05, 9.421279561079729458e-05, 9.430165485301471382e-05, 9.439035352868805002e-05, 9.447889150673732827e-05, 9.456726865637168976e-05, 9.465548484704735177e-05, 9.474353994850598848e-05, 9.483143383077006887e-05, 9.491916636412202650e-05, 9.500673741911789334e-05, 9.509414686660331889e-05, 9.518139457766846732e-05, 9.526848042370603586e-05, 9.535540427636569124e-05, 9.544216600757174211e-05, 9.552876548953841281e-05, 9.561520259473063588e-05, 9.570147719589916664e-05, 9.578758916607830640e-05, 9.587353837856473339e-05, 9.595932470693409105e-05, 9.604494802503792518e-05, 9.613040820699926580e-05, 9.621570512722796861e-05, 9.630083866039815005e-05, 9.638580868146454518e-05, 9.647061506565699179e-05, 9.655525768848250399e-05, 9.663973642572032548e-05, 9.672405115343908708e-05, 9.680820174797078587e-05, 9.689218808593017885e-05, 9.697601004420846747e-05, 9.705966749997416501e-05, 9.714316033067031827e-05, 9.722648841402846669e-05, 9.730965162804689058e-05, 9.739264985100648108e-05, 9.747548296146514297e-05, 9.755815083825683249e-05, 9.764065336050506915e-05, 9.772299040760033014e-05, 9.780516185921692325e-05, 9.788716759530690173e-05, 9.796900749610334405e-05, 9.805068144211395709e-05, 9.813218931413843693e-05, 9.821353099324354574e-05, 9.829470636078146192e-05, 9.837571529838358658e-05, 9.845655768796211565e-05, 9.853723341170616385e-05, 9.861774235209667244e-05, 9.869808439188402051e-05, 9.877825941410350191e-05, 9.885826730207212685e-05, 9.893810793938409543e-05, 9.901778120992631518e-05, 9.909728699786002392e-05, 9.917662518761771327e-05, 9.925579566393547860e-05, 9.933479831181774174e-05, 9.941363301654986841e-05, 9.949229966371247970e-05, 9.957079813915671867e-05, 9.964912832902054053e-05, 9.972729011972583950e-05, 9.980528339797249920e-05, 9.988310805075597035e-05, 9.996076396534752469e-05, 1.000382510292911786e-04, 1.001155691304363680e-04, 1.001927181569024956e-04, 1.002696979970928485e-04, 1.003465085397058472e-04, 1.004231496737176580e-04, 1.004996212883775981e-04, 1.005759232732418275e-04, 1.006520555181367166e-04, 1.007280179131740249e-04, 1.008038103487649684e-04, 1.008794327155816629e-04, 1.009548849046058996e-04, 1.010301668070916718e-04, 1.011052783145783624e-04, 1.011802193189022898e-04, 1.012549897121790089e-04, 1.013295893867994076e-04, 1.014040182354625583e-04, 1.014782761511396139e-04, 1.015523630270887971e-04, 1.016262787568691830e-04, 1.017000232343024269e-04, 1.017735963535219601e-04, 1.018469980089347038e-04, 1.019202280952381047e-04, 1.019932865074184953e-04, 1.020661731407485458e-04, 1.021388878907864375e-04, 1.022114306533886293e-04, 1.022838013246895694e-04, 1.023559998011115891e-04, 1.024280259793798912e-04, 1.024998797564878562e-04, 1.025715610297277247e-04, 1.026430696966875621e-04, 1.027144056552344530e-04, 1.027855688035280134e-04, 1.028565590400175989e-04, 1.029273762634382386e-04, 1.029980203728254754e-04, 1.030684912674940072e-04, 1.031387888470522288e-04, 1.032089130113979762e-04, 1.032788636607206816e-04, 1.033486406954958167e-04, 1.034182440164990556e-04, 1.034876735247878833e-04, 1.035569291217138069e-04, 1.036260107089180868e-04, 1.036949181883339317e-04, 1.037636514621829211e-04, 1.038322104329869583e-04, 1.039005950035500427e-04, 1.039688050769710631e-04, 1.040368405566404364e-04, 1.041047013462379807e-04, 1.041723873497438918e-04, 1.042398984714224268e-04, 1.043072346158317970e-04, 1.043743956878240053e-04, 1.044413815925428137e-04, 1.045081922354216961e-04, 1.045748275221962940e-04, 1.046412873588864316e-04, 1.047075716518070123e-04, 1.047736803075670294e-04, 1.048396132330684275e-04, 1.049053703355035415e-04, 1.049709515223674422e-04, 1.050363567014402105e-04, 1.051015857807982530e-04, 1.051666386688120662e-04, 1.052315152741434718e-04, 1.052962155057576241e-04, 1.053607392729072621e-04, 1.054250864851309205e-04, 1.054892570522803191e-04, 1.055532508844892468e-04, 1.056170678921866527e-04, 1.056807079861048324e-04, 1.057441710772631237e-04, 1.058074570769786137e-04, 1.058705658968626961e-04, 1.059334974488210983e-04, 1.059962516450626364e-04, 1.060588283980862999e-04, 1.061212276206783509e-04, 1.061834492259374645e-04, 1.062454931272480303e-04, 1.063073592382900591e-04, 1.063690474730476395e-04, 1.064305577457971477e-04, 1.064918899711011488e-04, 1.065530440638372224e-04, 1.066140199391676870e-04, 1.066748175125513767e-04, 1.067354366997562860e-04, 1.067958774168269485e-04, 1.068561395801247019e-04, 1.069162231062980347e-04, 1.069761279122913414e-04, 1.070358539153559675e-04, 1.070954010330351665e-04, 1.071547691831604000e-04, 1.072139582838792422e-04, 1.072729682536251443e-04, 1.073317990111301334e-04, 1.073904504754353287e-04, 1.074489225658600291e-04, 1.075072152020422478e-04, 1.075653283039068782e-04, 1.076232617916801946e-04, 1.076810155858875080e-04, 1.077385896073525967e-04, 1.077959837771951717e-04, 1.078531980168429254e-04, 1.079102322480136558e-04, 1.079670863927248610e-04, 1.080237603733039993e-04, 1.080802541123613160e-04, 1.081365675328155524e-04, 1.081927005578898804e-04, 1.082486531110992577e-04, 1.083044251162608906e-04, 1.083600164974922415e-04, 1.084154271792078577e-04, 1.084706570861308371e-04, 1.085257061432753857e-04, 1.085805742759576463e-04, 1.086352614098035183e-04, 1.086897674707238971e-04, 1.087440923849384997e-04, 1.087982360789722323e-04, 1.088521984796440232e-04, 1.089059795140748054e-04, 1.089595791096875703e-04, 1.090129971942068533e-04, 1.090662336956546000e-04, 1.091192885423619837e-04, 1.091721616629540240e-04, 1.092248529863600623e-04, 1.092773624418102519e-04, 1.093296899588340807e-04, 1.093818354672710915e-04, 1.094337988972540629e-04, 1.094855801792201364e-04, 1.095371792439094201e-04, 1.095885960223631458e-04, 1.096398304459225031e-04, 1.096908824462384114e-04, 1.097417519552563813e-04, 1.097924389052276953e-04, 1.098429432287052748e-04, 1.098932648585421347e-04, 1.099434037279015206e-04, 1.099933597702427063e-04, 1.100431329193289485e-04, 1.100927231092275685e-04, 1.101421302743081632e-04, 1.101913543492413718e-04, 1.102403952690081591e-04, 1.102892529688875509e-04, 1.103379273844556170e-04, 1.103864184516051229e-04, 1.104347261065229916e-04, 1.104828502857005493e-04, 1.105307909259389468e-04, 1.105785479643362298e-04, 1.106261213382968669e-04, 1.106735109855285507e-04, 1.107207168440413038e-04, 1.107677388521554474e-04, 1.108145769484913826e-04, 1.108612310719665279e-04, 1.109077011618163659e-04, 1.109539871575718651e-04, 1.110000889990672723e-04, 1.110460066264491117e-04, 1.110917399801616430e-04, 1.111372890009553182e-04, 1.111826536298864425e-04, 1.112278338083145862e-04, 1.112728294779031672e-04, 1.113176405806287346e-04, 1.113622670587572651e-04, 1.114067088548754834e-04, 1.114509659118659925e-04, 1.114950381729178048e-04, 1.115389255815303263e-04, 1.115826280815039915e-04, 1.116261456169388136e-04, 1.116694781322531682e-04, 1.117126255721616486e-04, 1.117555878816848776e-04, 1.117983650061575850e-04, 1.118409568912055681e-04, 1.118833634827744639e-04, 1.119255847271081599e-04, 1.119676205707557601e-04, 1.120094709605810580e-04, 1.120511358437412596e-04, 1.120926151677055228e-04, 1.121339088802540766e-04, 1.121750169294663356e-04, 1.122159392637284083e-04, 1.122566758317406318e-04, 1.122972265824976500e-04, 1.123375914653067638e-04, 1.123777704297853014e-04, 1.124177634258513895e-04, 1.124575704037323015e-04, 1.124971913139606356e-04, 1.125366261073747486e-04, 1.125758747351257219e-04, 1.126149371486648119e-04, 1.126538132997509037e-04, 1.126925031404567453e-04, 1.127310066231513024e-04, 1.127693237005158181e-04, 1.128074543255429724e-04, 1.128453984515262031e-04, 1.128831560320681489e-04, 1.129207270210787521e-04, 1.129581113727735507e-04, 1.129953090416812954e-04, 1.130323199826315487e-04, 1.130691441507640635e-04, 1.131057815015253267e-04, 1.131422319906701861e-04, 1.131784955742585569e-04, 1.132145722086640003e-04, 1.132504618505611471e-04, 1.132861644569354144e-04, 1.133216799850797805e-04, 1.133570083925941748e-04, 1.133921496373855594e-04, 1.134271036776731870e-04, 1.134618704719799956e-04, 1.134964499791372836e-04, 1.135308421582856725e-04, 1.135650469688717997e-04, 1.135990643706547563e-04, 1.136328943236975214e-04, 1.136665367883721262e-04, 1.136999917253599926e-04, 1.137332590956493443e-04, 1.137663388605358579e-04, 1.137992309816288831e-04, 1.138319354208407094e-04, 1.138644521403929760e-04, 1.138967811028171061e-04, 1.139289222709515687e-04, 1.139608756079432342e-04, 1.139926410772508438e-04, 1.140242186426381924e-04, 1.140556082681785336e-04, 1.140868099182535761e-04, 1.141178235575528339e-04, 1.141486491510789386e-04, 1.141792866641397922e-04, 1.142097360623474292e-04, 1.142399973116325988e-04, 1.142700703782283935e-04, 1.142999552286763751e-04, 1.143296518298321578e-04, 1.143591601488551086e-04, 1.143884801532154221e-04, 1.144176118106923442e-04, 1.144465550893736987e-04, 1.144753099576555072e-04, 1.145038763842480203e-04, 1.145322543381607690e-04, 1.145604437887224193e-04, 1.145884447055652678e-04, 1.146162570586298229e-04, 1.146438808181725024e-04, 1.146713159547503190e-04, 1.146985624392332946e-04, 1.147256202428034440e-04, 1.147524893369480931e-04, 1.147791696934640805e-04, 1.148056612844624332e-04, 1.148319640823546918e-04, 1.148580780598702306e-04, 1.148840031900435864e-04, 1.149097394462179547e-04, 1.149352868020513157e-04, 1.149606452315029762e-04, 1.149858147088462417e-04, 1.150107952086660309e-04, 1.150355867058523978e-04, 1.150601891756059659e-04, 1.150846025934410455e-04, 1.151088269351738431e-04, 1.151328621769347400e-04, 1.151567082951653103e-04, 1.151803652666134290e-04, 1.152038330683370393e-04, 1.152271116777046542e-04, 1.152502010723926187e-04, 1.152731012303906529e-04, 1.152958121299939238e-04, 1.153183337498082901e-04, 1.153406660687527550e-04, 1.153628090660498986e-04, 1.153847627212350931e-04, 1.154065270141554054e-04, 1.154281019249644064e-04, 1.154494874341263177e-04, 1.154706835224154026e-04, 1.154916901709140541e-04, 1.155125073610178374e-04, 1.155331350744284285e-04, 1.155535732931590353e-04, 1.155738219995314838e-04, 1.155938811761783868e-04, 1.156137508060405141e-04, 1.156334308723712520e-04, 1.156529213587305583e-04, 1.156722222489898550e-04, 1.156913335273292636e-04, 1.157102551782397600e-04, 1.157289871865197184e-04, 1.157475295372812675e-04, 1.157658822159430266e-04, 1.157840452082339948e-04, 1.158020185001929685e-04, 1.158198020781674029e-04, 1.158373959288178708e-04, 1.158548000391110288e-04, 1.158720143963248487e-04, 1.158890389880465164e-04, 1.159058738021727852e-04, 1.159225188269098663e-04, 1.159389740507755167e-04, 1.159552394625952033e-04, 1.159713150515044480e-04, 1.159872008069485290e-04, 1.160028967186823049e-04, 1.160184027767696186e-04, 1.160337189715862784e-04, 1.160488452938152743e-04, 1.160637817344497728e-04, 1.160785282847933070e-04, 1.160930849364568492e-04, 1.161074516813650852e-04, 1.161216285117491103e-04, 1.161356154201473773e-04, 1.161494123994136115e-04, 1.161630194427071071e-04, 1.161764365434967929e-04, 1.161896636955635361e-04, 1.162027008929953720e-04, 1.162155481301901060e-04, 1.162282054018557202e-04, 1.162406727030080965e-04, 1.162529500289754213e-04, 1.162650373753930627e-04, 1.162769347382045865e-04, 1.162886421136665680e-04, 1.163001594983417746e-04, 1.163114868891027437e-04, 1.163226242831342226e-04, 1.163335716779257680e-04, 1.163443290712779676e-04, 1.163548964613029136e-04, 1.163652738464187415e-04, 1.163754612253541565e-04, 1.163854585971477965e-04, 1.163952659611450880e-04, 1.164048833170025829e-04, 1.164143106646853292e-04, 1.164235480044671693e-04, 1.164325953369324610e-04, 1.164414526629716732e-04, 1.164501199837860340e-04, 1.164585973008868265e-04, 1.164668846160919053e-04, 1.164749819315295863e-04, 1.164828892496373323e-04, 1.164906065731587033e-04, 1.164981339051501195e-04, 1.165054712489739492e-04, 1.165126186083018431e-04, 1.165195759871150459e-04, 1.165263433897020378e-04, 1.165329208206607170e-04, 1.165393082848988060e-04, 1.165455057876307074e-04, 1.165515133343798077e-04, 1.165573309309794942e-04, 1.165629585835693057e-04, 1.165683962985981985e-04, 1.165736440828249806e-04, 1.165787019433144625e-04, 1.165835698874417126e-04, 1.165882479228884795e-04, 1.165927360576460243e-04, 1.165970343000137115e-04, 1.166011426585981546e-04, 1.166050611423153038e-04, 1.166087897603882367e-04, 1.166123285223487029e-04, 1.166156774380356070e-04, 1.166188365175979756e-04, 1.166218057714898623e-04, 1.166245852104757006e-04, 1.166271748456260891e-04, 1.166295746883201499e-04, 1.166317847502448233e-04, 1.166338050433949632e-04, 1.166356355800726187e-04, 1.166372763728877252e-04, 1.166387274347573046e-04, 1.166399887789066177e-04, 1.166410604188684456e-04, 1.166419423684824123e-04, 1.166426346418961770e-04, 1.166431372535642146e-04, 1.166434502182487238e-04, 1.166435735510185562e-04, 1.166435072672507208e-04, 1.166432513826287307e-04, 1.166428059131427111e-04, 1.166421708750913649e-04, 1.166413462850786250e-04, 1.166403321600170830e-04, 1.166391285171248452e-04, 1.166377353739274164e-04, 1.166361527482570761e-04, 1.166343806582530553e-04, 1.166324191223603435e-04, 1.166302681593319926e-04, 1.166279277882268403e-04, 1.166253980284099841e-04, 1.166226788995530393e-04, 1.166197704216349109e-04, 1.166166726149396528e-04, 1.166133855000581210e-04, 1.166099090978877430e-04, 1.166062434296316239e-04, 1.166023885167994403e-04, 1.165983443812059362e-04, 1.165941110449732269e-04, 1.165896885305277498e-04, 1.165850768606035032e-04, 1.165802760582389160e-04, 1.165752861467792597e-04, 1.165701071498745616e-04, 1.165647390914809870e-04, 1.165591819958598498e-04, 1.165534358875784801e-04, 1.165475007915095057e-04, 1.165413767328297680e-04, 1.165350637370236289e-04, 1.165285618298785930e-04, 1.165218710374883710e-04, 1.165149913862516051e-04, 1.165079229028716934e-04, 1.165006656143572641e-04, 1.164932195480212942e-04, 1.164855847314826009e-04, 1.164777611926641742e-04, 1.164697489597928652e-04, 1.164615480614017852e-04, 1.164531585263272424e-04, 1.164445803837100706e-04, 1.164358136629967127e-04, 1.164268583939361045e-04, 1.164177146065833464e-04, 1.164083823312958555e-04, 1.163988615987363734e-04, 1.163891524398715302e-04, 1.163792548859715327e-04, 1.163691689686101506e-04, 1.163588947196658144e-04, 1.163484321713205042e-04, 1.163377813560584486e-04, 1.163269423066694448e-04, 1.163159150562459183e-04, 1.163046996381828137e-04, 1.162932960861797502e-04, 1.162817044342390427e-04, 1.162699247166660134e-04, 1.162579569680694664e-04, 1.162458012233604675e-04, 1.162334575177539306e-04, 1.162209258867667196e-04, 1.162082063662188549e-04, 1.161952989922332966e-04, 1.161822038012356193e-04, 1.161689208299531036e-04, 1.161554501154156449e-04, 1.161417916949566471e-04, 1.161279456062103670e-04, 1.161139118871132688e-04, 1.160996905759058138e-04, 1.160852817111270388e-04, 1.160706853316209532e-04, 1.160559014765323376e-04, 1.160409301853068117e-04, 1.160257714976934768e-04, 1.160104254537410129e-04, 1.159948920938007821e-04, 1.159791714585249313e-04, 1.159632635888669207e-04, 1.159471685260823101e-04, 1.159308863117272811e-04, 1.159144169876573502e-04, 1.158977605960312038e-04, 1.158809171793074596e-04, 1.158638867802450046e-04, 1.158466694419045003e-04, 1.158292652076457530e-04, 1.158116741211297603e-04, 1.157938962263183454e-04, 1.157759315674724356e-04, 1.157577801891536889e-04, 1.157394421362244804e-04, 1.157209174538449746e-04, 1.157022061874771375e-04, 1.156833083828837333e-04, 1.156642240861237980e-04, 1.156449533435583858e-04, 1.156254962018480616e-04, 1.156058527079497841e-04, 1.155860229091249696e-04, 1.155660068529287718e-04, 1.155458045872190671e-04, 1.155254161601521859e-04, 1.155048416201806218e-04, 1.154840810160581683e-04, 1.154631343968383735e-04, 1.154420018118696074e-04, 1.154206833108009026e-04, 1.153991789435809790e-04, 1.153774887604519414e-04, 1.153556128119610433e-04, 1.153335511489467821e-04, 1.153113038225496054e-04, 1.152888708842062871e-04, 1.152662523856526778e-04, 1.152434483789184066e-04, 1.152204589163365977e-04, 1.151972840505322292e-04, 1.151739238344304673e-04, 1.151503783212533060e-04, 1.151266475645171950e-04, 1.151027316180393414e-04, 1.150786305359328314e-04, 1.150543443726045428e-04, 1.150298731827604983e-04, 1.150052170214043205e-04, 1.149803759438307402e-04, 1.149553500056384176e-04, 1.149301392627151961e-04, 1.149047437712480239e-04, 1.148791635877210695e-04, 1.148533987689097721e-04, 1.148274493718902883e-04, 1.148013154540328371e-04, 1.147749970729997488e-04, 1.147484942867522820e-04, 1.147218071535460423e-04, 1.146949357319308472e-04, 1.146678800807527998e-04, 1.146406402591527296e-04, 1.146132163265634149e-04, 1.145856083427153967e-04, 1.145578163676322483e-04, 1.145298404616329480e-04, 1.145016806853298315e-04, 1.144733370996282813e-04, 1.144448097657298566e-04, 1.144160987451282413e-04, 1.143872040996120765e-04, 1.143581258912623993e-04, 1.143288641824562337e-04, 1.142994190358594760e-04, 1.142697905144344161e-04, 1.142399786814368647e-04, 1.142099836004135510e-04, 1.141798053352067441e-04, 1.141494439499471652e-04, 1.141188995090618613e-04, 1.140881720772695979e-04, 1.140572617195800180e-04, 1.140261685012971122e-04, 1.139948924880161555e-04, 1.139634337456219319e-04, 1.139317923402940200e-04, 1.138999683385027138e-04, 1.138679618070100659e-04, 1.138357728128689528e-04, 1.138034014234255817e-04, 1.137708477063127687e-04, 1.137381117294581381e-04, 1.137051935610796364e-04, 1.136720932696854374e-04, 1.136388109240757854e-04, 1.136053465933368020e-04, 1.135717003468499585e-04, 1.135378722542847315e-04, 1.135038623856009736e-04, 1.134696708110487516e-04, 1.134352976011688608e-04, 1.134007428267877569e-04, 1.133660065590251043e-04, 1.133310888692893177e-04, 1.132959898292776432e-04, 1.132607095109766329e-04, 1.132252479866627541e-04, 1.131896053288955055e-04, 1.131537816105336120e-04, 1.131177769047142620e-04, 1.130815912848681242e-04, 1.130452248247144410e-04, 1.130086775982567057e-04, 1.129719496797881238e-04, 1.129350411438950422e-04, 1.128979520654426507e-04, 1.128606825195887928e-04, 1.128232325817794384e-04, 1.127856023277408237e-04, 1.127477918334982487e-04, 1.127098011753519669e-04, 1.126716304298959150e-04, 1.126332796740104627e-04, 1.125947489848573162e-04, 1.125560384398882196e-04, 1.125171481168454966e-04, 1.124780780937480374e-04, 1.124388284489076566e-04, 1.123993992609208123e-04, 1.123597906086636734e-04, 1.123200025713071219e-04, 1.122800352283031601e-04, 1.122398886593851540e-04, 1.121995629445759790e-04, 1.121590581641843467e-04, 1.121183743987961721e-04, 1.120775117292935335e-04, 1.120364702368316742e-04, 1.119952500028565523e-04, 1.119538511090973742e-04, 1.119122736375617149e-04, 1.118705176705503857e-04, 1.118285832906424580e-04, 1.117864705806976492e-04, 1.117441796238635189e-04, 1.117017105035688685e-04, 1.116590633035259643e-04, 1.116162381077317296e-04, 1.115732350004588683e-04, 1.115300540662703658e-04, 1.114866953900075358e-04, 1.114431590567946552e-04, 1.113994451520383813e-04, 1.113555537614282126e-04, 1.113114849709303633e-04, 1.112672388667973445e-04, 1.112228155355623267e-04, 1.111782150640384080e-04, 1.111334375393203483e-04, 1.110884830487854103e-04, 1.110433516800858101e-04, 1.109980435211602645e-04, 1.109525586602250050e-04, 1.109068971857782781e-04, 1.108610591865977966e-04, 1.108150447517370675e-04, 1.107688539705349053e-04, 1.107224869326066234e-04, 1.106759437278479776e-04, 1.106292244464331196e-04, 1.105823291788175111e-04, 1.105352580157295615e-04, 1.104880110481824596e-04, 1.104405883674653235e-04, 1.103929900651453964e-04, 1.103452162330691578e-04, 1.102972669633616593e-04, 1.102491423484206157e-04, 1.102008424809274777e-04, 1.101523674538383785e-04, 1.101037173603873460e-04, 1.100548922940871970e-04, 1.100058923487217175e-04, 1.099567176183551903e-04, 1.099073681973353087e-04, 1.098578441802729286e-04, 1.098081456620639160e-04, 1.097582727378801202e-04, 1.097082255031628693e-04, 1.096580040536354513e-04, 1.096076084852945769e-04, 1.095570388944124929e-04, 1.095062953775359120e-04, 1.094553780314895498e-04, 1.094042869533633314e-04, 1.093530222405381412e-04, 1.093015839906528086e-04, 1.092499723016293297e-04, 1.091981872716648303e-04, 1.091462289992223506e-04, 1.090940975830441667e-04, 1.090417931221517370e-04, 1.089893157158273247e-04, 1.089366654636345842e-04, 1.088838424654104564e-04, 1.088308468212555061e-04, 1.087776786315586009e-04, 1.087243379969657001e-04, 1.086708250184036795e-04, 1.086171397970711703e-04, 1.085632824344320537e-04, 1.085092530322269536e-04, 1.084550516924734939e-04, 1.084006785174479080e-04, 1.083461336097065055e-04, 1.082914170720760912e-04, 1.082365290076460094e-04, 1.081814695197884997e-04, 1.081262387121399135e-04, 1.080708366886023265e-04, 1.080152635533544080e-04, 1.079595194108446987e-04, 1.079036043657817312e-04, 1.078475185231600773e-04, 1.077912619882269419e-04, 1.077348348665077901e-04, 1.076782372637972947e-04, 1.076214692861485206e-04, 1.075645310398979705e-04, 1.075074226316425995e-04, 1.074501441682430136e-04, 1.073926957568343659e-04, 1.073350775048174932e-04, 1.072772895198602442e-04, 1.072193319099009083e-04, 1.071612047831357878e-04, 1.071029082480374670e-04, 1.070444424133409748e-04, 1.069858073880490160e-04, 1.069270032814294237e-04, 1.068680302030194820e-04, 1.068088882626143664e-04, 1.067495775702823898e-04, 1.066900982363548113e-04, 1.066304503714279503e-04, 1.065706340863636475e-04, 1.065106494922905790e-04, 1.064504967005947970e-04, 1.063901758229340551e-04, 1.063296869712281446e-04, 1.062690302576603995e-04, 1.062082057946810572e-04, 1.061472136949957523e-04, 1.060860540715812515e-04, 1.060247270376758988e-04, 1.059632327067792901e-04, 1.059015711926555262e-04, 1.058397426093328058e-04, 1.057777470710939932e-04, 1.057155846924921359e-04, 1.056532555883400292e-04, 1.055907598737114628e-04, 1.055280976639420343e-04, 1.054652690746315071e-04, 1.054022742216324804e-04, 1.053391132210666255e-04, 1.052757861893132741e-04, 1.052122932430132272e-04, 1.051486344990688898e-04, 1.050848100746360316e-04, 1.050208200871341138e-04, 1.049566646542517237e-04, 1.048923438939203506e-04, 1.048278579243399998e-04, 1.047632068639725117e-04, 1.046983908315274667e-04, 1.046334099459836798e-04, 1.045682643265733033e-04, 1.045029540927881832e-04, 1.044374793643802654e-04, 1.043718402613510521e-04, 1.043060369039648292e-04, 1.042400694127521352e-04, 1.041739379084831310e-04, 1.041076425121957892e-04, 1.040411833451859188e-04, 1.039745605289961748e-04, 1.039077741854309793e-04, 1.038408244365599773e-04, 1.037737114046913245e-04, 1.037064352123996197e-04, 1.036389959825151027e-04, 1.035713938381114439e-04, 1.035036289025379044e-04, 1.034357012993772145e-04, 1.033676111524785339e-04, 1.032993585859452268e-04, 1.032309437241266359e-04, 1.031623666916302523e-04, 1.030936276133267982e-04, 1.030247266143225111e-04, 1.029556638199883098e-04, 1.028864393559481385e-04, 1.028170533480668106e-04, 1.027475059224822228e-04, 1.026777972055631122e-04, 1.026079273239428695e-04, 1.025378964045033168e-04, 1.024677045743776485e-04, 1.023973519609503227e-04, 1.023268386918600433e-04, 1.022561648949871823e-04, 1.021853306984716160e-04, 1.021143362307039016e-04, 1.020431816203119687e-04, 1.019718669961926699e-04, 1.019003924874824527e-04, 1.018287582235622796e-04, 1.017569643340703126e-04, 1.016850109488912210e-04, 1.016128981981584032e-04, 1.015406262122567658e-04, 1.014681951218100649e-04, 1.013956050576998394e-04, 1.013228561510545007e-04, 1.012499485332383695e-04, 1.011768823358820597e-04, 1.011036576908532056e-04, 1.010302747302601207e-04, 1.009567335864677086e-04, 1.008830343920832598e-04, 1.008091772799614254e-04, 1.007351623832013714e-04, 1.006609898351523214e-04, 1.005866597693987437e-04, 1.005121723197802060e-04, 1.004375276203777005e-04, 1.003627258055172627e-04, 1.002877670097725328e-04, 1.002126513679518809e-04, 1.001373790151167161e-04, 1.000619500865702790e-04, 9.998636471785800730e-05, 9.991062304476924349e-05, 9.983472520333998615e-05, 9.975867132983868679e-05, 9.968246156078609073e-05, 9.960609603294257909e-05, 9.952957488331029654e-05, 9.945289824913647163e-05, 9.937606626790037928e-05, 9.929907907733189420e-05, 9.922193681539923939e-05, 9.914463962031153403e-05, 9.906718763051825135e-05, 9.898958098471233574e-05, 9.891181982181784284e-05, 9.883390428100449494e-05, 9.875583450169170610e-05, 9.867761062351884790e-05, 9.859923278637738246e-05, 9.852070113039730994e-05, 9.844201579593797992e-05, 9.836317692360702428e-05, 9.828418465424645228e-05, 9.820503912893656731e-05, 9.812574048899866375e-05, 9.804628887598097308e-05, 9.796668443167641765e-05, 9.788692729812393883e-05, 9.780701761757981986e-05, 9.772695553254979182e-05, 9.764674118577567079e-05, 9.756637472022503085e-05, 9.748585627911158711e-05, 9.740518600588068086e-05, 9.732436404421329124e-05, 9.724339053802473411e-05, 9.716226563146852454e-05, 9.708098946891939552e-05, 9.699956219500965936e-05, 9.691798395458143503e-05, 9.683625489272447331e-05, 9.675437515476185881e-05, 9.667234488623920865e-05, 9.659016423294245336e-05, 9.650783334089997818e-05, 9.642535235635173684e-05, 9.634272142578419000e-05, 9.625994069591499089e-05, 9.617701031367951407e-05, 9.609393042626960212e-05, 9.601070118108231001e-05, 9.592732272576105052e-05, 9.584379520817512999e-05, 9.576011877642480333e-05, 9.567629357883994596e-05, 9.559231976398386199e-05, 9.550819748063863401e-05, 9.542392687782606168e-05, 9.533950810479791752e-05, 9.525494131101895200e-05, 9.517022664620470511e-05, 9.508536426028828909e-05, 9.500035430342305834e-05, 9.491519692600090526e-05, 9.482989227863751513e-05, 9.474444051217641833e-05, 9.465884177769045399e-05, 9.457309622646890867e-05, 9.448720401003836010e-05, 9.440116528015119824e-05, 9.431498018877106982e-05, 9.422864888810902298e-05, 9.414217153059054749e-05, 9.405554826885907129e-05, 9.396877925579321289e-05, 9.388186464449278161e-05, 9.379480458828139318e-05, 9.370759924070735068e-05, 9.362024875554567744e-05, 9.353275328678373776e-05, 9.344511298864373414e-05, 9.335732801556641714e-05, 9.326939852221502914e-05, 9.318132466347937013e-05, 9.309310659445987348e-05, 9.300474447048994050e-05, 9.291623844712111396e-05, 9.282758868012532785e-05, 9.273879532549638457e-05, 9.264985853945205559e-05, 9.256077847841936339e-05, 9.247155529905702446e-05, 9.238218915823932179e-05, 9.229268021306064496e-05, 9.220302862083817354e-05, 9.211323453909726748e-05, 9.202329812559294784e-05, 9.193321953829460956e-05, 9.184299893539136117e-05, 9.175263647528862307e-05, 9.166213231661430748e-05, 9.157148661820170164e-05, 9.148069953910922738e-05, 9.138977123862419513e-05, 9.129870187622603596e-05, 9.120749161162694562e-05, 9.111614060475487604e-05, 9.102464901574224617e-05, 9.093301700494784280e-05, 9.084124473294231939e-05, 9.074933236051116404e-05, 9.065728004865831807e-05, 9.056508795859036015e-05, 9.047275625173577804e-05, 9.038028508974866844e-05, 9.028767463447279565e-05, 9.019492504798123271e-05, 9.010203649256009843e-05, 9.000900913069598058e-05, 8.991584312509977479e-05, 8.982253863869058420e-05, 8.972909583459941923e-05, 8.963551487616883172e-05, 8.954179592695654698e-05, 8.944793915071502658e-05, 8.935394471143609681e-05, 8.925981277329305232e-05, 8.916554350068608417e-05, 8.907113705822535270e-05, 8.897659361071739439e-05, 8.888191332318717179e-05, 8.878709636088002511e-05, 8.869214288922650337e-05, 8.859705307388104337e-05, 8.850182708070657395e-05, 8.840646507575730434e-05, 8.831096722532384051e-05, 8.821533369587539718e-05, 8.811956465410395194e-05, 8.802366026690918843e-05, 8.792762070137994290e-05, 8.783144612483639326e-05, 8.773513670479140723e-05, 8.763869260895585495e-05, 8.754211400525805688e-05, 8.744540106183122056e-05, 8.734855394699645934e-05, 8.725157282930430373e-05, 8.715445787749709317e-05, 8.705720926051205245e-05, 8.695982714750326032e-05, 8.686231170782304192e-05, 8.676466311102675280e-05, 8.666688152687687175e-05, 8.656896712532559943e-05, 8.647092007653936127e-05, 8.637274055088697616e-05, 8.627442871892096747e-05, 8.617598475142091764e-05, 8.607740881935482986e-05, 8.597870109388190641e-05, 8.587986174637493738e-05, 8.578089094840264173e-05, 8.568178887173301481e-05, 8.558255568833744828e-05, 8.548319157037464328e-05, 8.538369669021336511e-05, 8.528407122041800983e-05, 8.518431533375032537e-05, 8.508442920317022473e-05, 8.498441300183956710e-05, 8.488426690310453960e-05, 8.478399108052068881e-05, 8.468358570783743018e-05, 8.458305095899877992e-05, 8.448238700814605191e-05, 8.438159402962039206e-05, 8.428067219794522775e-05, 8.417962168785235650e-05, 8.407844267426432762e-05, 8.397713533229793879e-05, 8.387569983726877619e-05, 8.377413636467352838e-05, 8.367244509021504498e-05, 8.357062618978616851e-05, 8.346867983947225511e-05, 8.336660621555129654e-05, 8.326440549449854161e-05, 8.316207785296782077e-05, 8.305962346781882737e-05, 8.295704251609724961e-05, 8.285433517504109965e-05, 8.275150162207887039e-05, 8.264854203483426533e-05, 8.254545659110806529e-05, 8.244224546890401375e-05, 8.233890884641186262e-05, 8.223544690201020472e-05, 8.213185981427167796e-05, 8.202814776194418151e-05, 8.192431092397281739e-05, 8.182034947950479645e-05, 8.171626360784787276e-05, 8.161205348851594790e-05, 8.150771930120973149e-05, 8.140326122580309376e-05, 8.129867944237144459e-05, 8.119397413117056446e-05, 8.108914547264301474e-05, 8.098419364741717553e-05, 8.087911883631099968e-05, 8.077392122030992215e-05, 8.066860098061536455e-05, 8.056315829858239346e-05, 8.045759335576746604e-05, 8.035190633391148935e-05, 8.024609741492053506e-05, 8.014016678091143023e-05, 8.003411461417019165e-05, 7.992794109715651175e-05, 7.982164641252568658e-05, 7.971523074311599841e-05, 7.960869427192779064e-05, 7.950203718217586186e-05, 7.939525965722376319e-05, 7.928836188063403750e-05, 7.918134403614996417e-05, 7.907420630767590794e-05, 7.896694887932465782e-05, 7.885957193537404552e-05, 7.875207566027194633e-05, 7.864446023865925058e-05, 7.853672585535515925e-05, 7.842887269533845430e-05, 7.832090094379902541e-05, 7.821281078607093405e-05, 7.810460240768491596e-05, 7.799627599434387818e-05, 7.788783173192673443e-05, 7.777926980649001783e-05, 7.767059040426996805e-05, 7.756179371166468256e-05, 7.745287991526187223e-05, 7.734384920182431952e-05, 7.723470175827085063e-05, 7.712543777172301050e-05, 7.701605742946227744e-05, 7.690656091893395270e-05, 7.679694842777216488e-05, 7.668722014377847053e-05, 7.657737625492774943e-05, 7.646741694937213491e-05, 7.635734241542148457e-05, 7.624715284157213880e-05, 7.613684841648705277e-05, 7.602642932900068886e-05, 7.591589576811778341e-05, 7.580524792301929628e-05, 7.569448598304133664e-05, 7.558361013770530383e-05, 7.547262057669637948e-05, 7.536151748987019534e-05, 7.525030106724982465e-05, 7.513897149903369678e-05, 7.502752897557242245e-05, 7.491597368740066923e-05, 7.480430582521474569e-05, 7.469252557987880845e-05, 7.458063314242894149e-05, 7.446862870405351854e-05, 7.435651245612154140e-05, 7.424428459016350380e-05, 7.413194529787563332e-05, 7.401949477111947125e-05, 7.390693320192661601e-05, 7.379426078247876026e-05, 7.368147770513685591e-05, 7.356858416242086670e-05, 7.345558034701464708e-05, 7.334246645176554916e-05, 7.322924266968889510e-05, 7.311590919394814973e-05, 7.300246621788427531e-05, 7.288891393499507751e-05, 7.277525253894021984e-05, 7.266148222354589924e-05, 7.254760318278474774e-05, 7.243361561080021338e-05, 7.231951970191076158e-05, 7.220531565056574803e-05, 7.209100365139376062e-05, 7.197658389918318506e-05, 7.186205658886698545e-05, 7.174742191555121874e-05, 7.163268007449600703e-05, 7.151783126111969815e-05, 7.140287567100335160e-05, 7.128781349987053169e-05, 7.117264494361183762e-05, 7.105737019829036515e-05, 7.094198946009527568e-05, 7.082650292539194054e-05, 7.071091079070186973e-05, 7.059521325268182748e-05, 7.047941050817427473e-05, 7.036350275416093820e-05, 7.024749018776859733e-05, 7.013137300629292310e-05, 7.001515140718367878e-05, 6.989882558802397092e-05, 6.978239574658551660e-05, 6.966586208075743844e-05, 6.954922478860189774e-05, 6.943248406833281699e-05, 6.931564011829599830e-05, 6.919869313701918650e-05, 6.908164332316639705e-05, 6.896449087554173789e-05, 6.884723599311549805e-05, 6.872987887500835895e-05, 6.861241972046998143e-05, 6.849485872893581789e-05, 6.837719609995407779e-05, 6.825943203324293281e-05, 6.814156672866368287e-05, 6.802360038622572993e-05, 6.790553320608634755e-05, 6.778736538855568180e-05, 6.766909713407527052e-05, 6.755072864324924119e-05, 6.743226011682780399e-05, 6.731369175568709920e-05, 6.719502376088000559e-05, 6.707625633358922158e-05, 6.695738967513207641e-05, 6.683842398698657808e-05, 6.671935947076979706e-05, 6.660019632824302983e-05, 6.648093476131623054e-05, 6.636157497202784482e-05, 6.624211716257438147e-05, 6.612256153529023266e-05, 6.600290829265202436e-05, 6.588315763727845367e-05, 6.576330977193522195e-05, 6.564336489951378448e-05, 6.552332322306238569e-05, 6.540318494576476821e-05, 6.528295027094465871e-05, 6.516261940206606606e-05, 6.504219254273820093e-05, 6.492166989669318183e-05, 6.480105166781869675e-05, 6.468033806013481475e-05, 6.455952927780101976e-05, 6.443862552511946313e-05, 6.431762700651368623e-05, 6.419653392656117356e-05, 6.407534648997055744e-05, 6.395406490158698479e-05, 6.383268936639215779e-05, 6.371122008950880623e-05, 6.358965727617926094e-05, 6.346800113179712607e-05, 6.334625186188533753e-05, 6.322440967210134005e-05, 6.310247476824249466e-05, 6.298044735622340532e-05, 6.285832764210851271e-05, 6.273611583209007139e-05, 6.261381213249304228e-05, 6.249141674977476738e-05, 6.236892989052993000e-05, 6.224635176146907400e-05, 6.212368256944477373e-05, 6.200092252145690595e-05, 6.187807182460357616e-05, 6.175513068613484077e-05, 6.163209931343081979e-05, 6.150897791397989085e-05, 6.138576669543697854e-05, 6.126246586554873099e-05, 6.113907563221160596e-05, 6.101559620345051882e-05, 6.089202778740226784e-05, 6.076837059234158891e-05, 6.064462482668706445e-05, 6.052079069895135175e-05, 6.039686841779552180e-05, 6.027285819200658924e-05, 6.014876023047590963e-05, 6.002457474225837686e-05, 5.990030193649559389e-05, 5.977594202247577492e-05, 5.965149520960635573e-05, 5.952696170742420551e-05, 5.940234172556791873e-05, 5.927763547383764953e-05, 5.915284316211864157e-05, 5.902796500044052717e-05, 5.890300119895478263e-05, 5.877795196791359985e-05, 5.865281751772319520e-05, 5.852759805889486459e-05, 5.840229380204962515e-05, 5.827690495794567274e-05, 5.815143173746123114e-05, 5.802587435157245471e-05, 5.790023301141359479e-05, 5.777450792819915405e-05, 5.764869931328495410e-05, 5.752280737813920768e-05, 5.739683233434840720e-05, 5.727077439361708081e-05, 5.714463376777216308e-05, 5.701841066874113479e-05, 5.689210530858479292e-05, 5.676571789948045229e-05, 5.663924865369849974e-05, 5.651269778365915881e-05, 5.638606550188038710e-05, 5.625935202098446958e-05, 5.613255755372446632e-05, 5.600568231296249456e-05, 5.587872651167412655e-05, 5.575169036295402059e-05, 5.562457407999319342e-05, 5.549737787611234595e-05, 5.537010196473861383e-05, 5.524274655941168648e-05, 5.511531187378247888e-05, 5.498779812161886434e-05, 5.486020551678306886e-05, 5.473253427326460376e-05, 5.460478460515747715e-05, 5.447695672666606889e-05, 5.434905085210378894e-05, 5.422106719589908787e-05, 5.409300597257201782e-05, 5.396486739676862194e-05, 5.383665168323667548e-05, 5.370835904683224512e-05, 5.357998970252411393e-05, 5.345154386537139256e-05, 5.332302175055652645e-05, 5.319442357336278505e-05, 5.306574954917927628e-05, 5.293699989350074322e-05, 5.280817482193286318e-05, 5.267927455016916093e-05, 5.255029929402468678e-05, 5.242124926941291624e-05, 5.229212469235109653e-05, 5.216292577896572180e-05, 5.203365274546904658e-05, 5.190430580819335336e-05, 5.177488518356737119e-05, 5.164539108812202874e-05, 5.151582373848973597e-05, 5.138618335140987298e-05, 5.125647014370564899e-05, 5.112668433231227810e-05, 5.099682613428208180e-05, 5.086689576673315198e-05, 5.073689344690581756e-05, 5.060681939213955096e-05, 5.047667381984939351e-05, 5.034645694758930671e-05, 5.021616899297086384e-05, 5.008581017372622858e-05, 4.995538070768481756e-05, 4.982488081275583111e-05, 4.969431070695667972e-05, 4.956367060841790362e-05, 4.943296073533150371e-05, 4.930218130600799102e-05, 4.917133253885296783e-05, 4.904041465234374966e-05, 4.890942786509249964e-05, 4.877837239576457461e-05, 4.864724846314264205e-05, 4.851605628609668839e-05, 4.838479608359510495e-05, 4.825346807467633607e-05, 4.812207247851082092e-05, 4.799060951432089131e-05, 4.785907940144305909e-05, 4.772748235930538341e-05, 4.759581860740311009e-05, 4.746408836535683228e-05, 4.733229185285987275e-05, 4.720042928968321027e-05, 4.706850089570496309e-05, 4.693650689089168650e-05, 4.680444749527590948e-05, 4.667232292901832725e-05, 4.654013341232723152e-05, 4.640787916552162459e-05, 4.627556040900724494e-05, 4.614317736325341949e-05, 4.601073024885097358e-05, 4.587821928645913216e-05, 4.574564469681110341e-05, 4.561300670074264072e-05, 4.548030551916894238e-05, 4.534754137308944242e-05, 4.521471448358784450e-05, 4.508182507183740057e-05, 4.494887335907727532e-05, 4.481585956664739648e-05, 4.468278391596445327e-05, 4.454964662852726326e-05, 4.441644792592284384e-05, 4.428318802980195671e-05, 4.414986716191397856e-05, 4.401648554408387528e-05, 4.388304339821645070e-05, 4.374954094629707841e-05, 4.361597841039676368e-05, 4.348235601264783016e-05, 4.334867397527975957e-05, 4.321493252059445834e-05, 4.308113187097230881e-05, 4.294727224887738695e-05, 4.281335387683380642e-05, 4.267937697746020299e-05, 4.254534177344664779e-05, 4.241124848755897737e-05, 4.227709734263979655e-05, 4.214288856161270007e-05, 4.200862236745947720e-05, 4.187429898325407442e-05, 4.173991863213937989e-05, 4.160548153733258352e-05, 4.147098792212470261e-05, 4.133643800988593509e-05, 4.120183202404204426e-05, 4.106717018810925653e-05, 4.093245272567011761e-05, 4.079767986037950304e-05, 4.066285181596966653e-05, 4.052796881622625194e-05, 4.039303108502374676e-05, 4.025803884630102650e-05, 4.012299232406729753e-05, 3.998789174240181246e-05, 3.985273732545849832e-05, 3.971752929744322896e-05, 3.958226788264790293e-05, 3.944695330542690267e-05, 3.931158579020256979e-05, 3.917616556146490012e-05, 3.904069284377693081e-05, 3.890516786174468087e-05, 3.876959084008238624e-05, 3.863396200352861641e-05, 3.849828157691154341e-05, 3.836254978512457437e-05, 3.822676685310834695e-05, 3.809093300587977247e-05, 3.795504846853827677e-05, 3.781911346621098709e-05, 3.768312822411232248e-05, 3.754709296752041921e-05, 3.741100792175134027e-05, 3.727487331222620109e-05, 3.713868936438568695e-05, 3.700245630375634514e-05, 3.686617435592585843e-05, 3.672984374652483720e-05, 3.659346470125626234e-05, 3.645703744590147544e-05, 3.632056220626538593e-05, 3.618403920823646137e-05, 3.604746867776202114e-05, 3.591085084082399102e-05, 3.577418592349885954e-05, 3.563747415190280380e-05, 3.550071575219751707e-05, 3.536391095061975330e-05, 3.522705997346345808e-05, 3.509016304705437803e-05, 3.495322039781675275e-05, 3.481623225218850989e-05, 3.467919883668655446e-05, 3.454212037788277406e-05, 3.440499710237974600e-05, 3.426782923687019222e-05, 3.413061700808265399e-05, 3.399336064278687903e-05, 3.385606036782377941e-05, 3.371871641008111146e-05, 3.358132899649878846e-05, 3.344389835407477591e-05, 3.330642470984013459e-05, 3.316890829089570047e-05, 3.303134932438678213e-05, 3.289374803750921876e-05, 3.275610465750900067e-05, 3.261841941168764963e-05, 3.248069252737801412e-05, 3.234292423197985140e-05, 3.220511475293564988e-05, 3.206726431773597555e-05, 3.192937315391909252e-05, 3.179144148907710909e-05, 3.165346955083064129e-05, 3.151545756686545218e-05, 3.137740576490732539e-05, 3.123931437272820449e-05, 3.110118361815166139e-05, 3.096301372902803423e-05, 3.082480493327083629e-05, 3.068655745883203611e-05, 3.054827153370760729e-05, 3.040994738593711855e-05, 3.027158524360970695e-05, 3.013318533483910739e-05, 2.999474788779986158e-05, 2.985627313070270665e-05, 2.971776129180018247e-05, 2.957921259938622174e-05, 2.944062728180209615e-05, 2.930200556741112392e-05, 2.916334768463567506e-05, 2.902465386193165867e-05, 2.888592432779471650e-05, 2.874715931076565067e-05, 2.860835903940600548e-05, 2.846952374232768302e-05, 2.833065364819938739e-05, 2.819174898569031738e-05, 2.805280998353202018e-05, 2.791383687049248910e-05, 2.777482987535829798e-05, 2.763578922697042389e-05, 2.749671515419959168e-05, 2.735760788595187121e-05, 2.721846765116853163e-05, 2.707929467883164536e-05, 2.694008919793292747e-05, 2.680085143754115266e-05, 2.666158162671577152e-05, 2.652227999457368039e-05, 2.638294677026486752e-05, 2.624358218295331412e-05, 2.610418646184720299e-05, 2.596475983620492224e-05, 2.582530253527940851e-05, 2.568581478837885884e-05, 2.554629682484233955e-05, 2.540674887401438541e-05, 2.526717116531235907e-05, 2.512756392813994191e-05, 2.498792739195464257e-05, 2.484826178624270781e-05, 2.470856734049978645e-05, 2.456884428426238821e-05, 2.442909284711279643e-05, 2.428931325862321479e-05, 2.414950574841784122e-05, 2.400967054614690130e-05, 2.386980788146215540e-05, 2.372991798407808842e-05, 2.359000108371589371e-05, 2.345005741010944644e-05, 2.331008719303563070e-05, 2.317009066229555234e-05, 2.303006804768921608e-05, 2.289001957908363369e-05, 2.274994548632537978e-05, 2.260984599930842209e-05, 2.246972134794922898e-05, 2.232957176216112801e-05, 2.218939747191643071e-05, 2.204919870718988469e-05, 2.190897569796460963e-05, 2.176872867426281070e-05, 2.162845786612053019e-05, 2.148816350359345479e-05, 2.134784581676284481e-05, 2.120750503571007235e-05, 2.106714139055388063e-05, 2.092675511142476629e-05, 2.078634642847114578e-05, 2.064591557185882685e-05, 2.050546277177686661e-05, 2.036498825841227234e-05, 2.022449226198702363e-05, 2.008397501273284094e-05, 1.994343674089691832e-05, 1.980287767674154736e-05, 1.966229805055017172e-05, 1.952169809260177971e-05, 1.938107803320826176e-05, 1.924043810268875890e-05, 1.909977853137580206e-05, 1.895909954962095672e-05, 1.881840138776968968e-05, 1.867768427619834721e-05, 1.853694844528865930e-05, 1.839619412543388915e-05, 1.825542154703833848e-05, 1.811463094052308029e-05, 1.797382253630077143e-05, 1.783299656481271203e-05, 1.769215325650347177e-05, 1.755129284182680555e-05, 1.741041555124507074e-05, 1.726952161523547151e-05, 1.712861126426434965e-05, 1.698768472882447781e-05, 1.684674223940959423e-05, 1.670578402652037942e-05, 1.656481032067027025e-05, 1.642382135236000821e-05, 1.628281735210875610e-05, 1.614179855045967145e-05, 1.600076517792348399e-05, 1.585971746504047134e-05, 1.571865564235529875e-05, 1.557757994039765933e-05, 1.543649058971958412e-05, 1.529538782086986852e-05, 1.515427186440022848e-05, 1.501314295087089433e-05, 1.487200131082537597e-05, 1.473084717482127455e-05, 1.458968077343634889e-05, 1.444850233721151358e-05, 1.430731209671335511e-05, 1.416611028250855817e-05, 1.402489712514474588e-05, 1.388367285518148618e-05, 1.374243770319608558e-05, 1.360119189972695486e-05, 1.345993567533578292e-05, 1.331866926058215128e-05, 1.317739288599806036e-05, 1.303610678215656117e-05, 1.289481117958351992e-05, 1.275350630882630051e-05, 1.261219240042827732e-05, 1.247086968490952792e-05, 1.232953839279812421e-05, 1.218819875463564653e-05, 1.204685100092071543e-05, 1.190549536217104866e-05, 1.176413206889813319e-05, 1.162276135158182270e-05, 1.148138344073883376e-05, 1.133999856683453746e-05, 1.119860696035178937e-05, 1.105720885175900146e-05, 1.091580447151608995e-05, 1.077439405007407720e-05, 1.063297781788107858e-05, 1.049155600535672541e-05, 1.035012884292954627e-05, 1.020869656101760039e-05, 1.006725939000317851e-05, 9.925817560295180044e-06, 9.784371302272124743e-06, 9.642920846288064951e-06, 9.501466422703746270e-06, 9.360008261861016998e-06, 9.218546594088709923e-06, 9.077081649708639320e-06, 8.935613659009971423e-06, 8.794142852286695474e-06, 8.652669459818314757e-06, 8.511193711844269592e-06, 8.369715838626612690e-06, 8.228236070392881864e-06, 8.086754637342074997e-06, 7.945271769675695499e-06, 7.803787697572292184e-06, 7.662302651193327518e-06, 7.520816860682738857e-06, 7.379330556172999811e-06, 7.237843967759449220e-06, 7.096357325537754572e-06, 6.954870859578332456e-06, 6.813384799932274405e-06, 6.671899376637277818e-06, 6.530414819692070652e-06, 6.388931359093824862e-06, 6.247449224812639538e-06, 6.105968646797370182e-06, 5.964489854975354271e-06, 5.823013079258290515e-06, 5.681538549516675397e-06, 5.540066495617213236e-06, 5.398597147397278988e-06, 5.257130734670806817e-06, 5.115667487234280318e-06, 4.974207634841074187e-06, 4.832751407238941366e-06, 4.691299034144433488e-06, 4.549850745248842819e-06, 4.408406770217769421e-06, 4.266967338697116451e-06, 4.125532680287482663e-06, 3.984103024575298490e-06, 3.842678601138798475e-06, 3.701259639490847816e-06, 3.559846369141670662e-06, 3.418439019573241344e-06, 3.277037820219986845e-06, 3.135643000506271820e-06, 2.994254789820786013e-06, 2.852873417522470525e-06, 2.711499112946496594e-06, 2.570132105378620404e-06, 2.428772624086387354e-06, 2.287420898325011736e-06, 2.146077157280304505e-06, 2.004741630131347785e-06, 1.863414546024884195e-06, 1.722096134056052141e-06, 1.580786623305839498e-06, 1.439486242815480554e-06, 1.298195221592410866e-06, 1.156913788609889481e-06, 1.015642172812920547e-06, 8.743806030863990436e-07, 7.331293083240334387e-07, 5.918885173397723993e-07, 4.506584589367455468e-07, 3.094393618816818440e-07, 1.682314548856526719e-07, 2.703496663519429455e-08, -1.141498742017624202e-07, -2.553228390329487488e-07, -3.964836992791410166e-07, -5.376322263997260235e-07, -6.787681919182537919e-07, -8.198913673535431884e-07, -9.610015243082009966e-07, -1.102098434399735216e-06, -1.243181869292393228e-06, -1.384251600691244958e-06, -1.525307400342548154e-06, -1.666349040027824662e-06, -1.807376291589387250e-06, -1.948388926892971475e-06, -2.089386717846965025e-06, -2.230369436427950637e-06, -2.371336854618155037e-06, -2.512288744462435840e-06, -2.653224878062367986e-06, -2.794145027545136881e-06, -2.935048965089100579e-06, -3.075936462917824550e-06, -3.216807293294185069e-06, -3.357661228545901742e-06, -3.498498041028137198e-06, -3.639317503142773863e-06, -3.780119387363883392e-06, -3.920903466175266883e-06, -4.061669512127343731e-06, -4.202417297831315564e-06, -4.343146595928006451e-06, -4.483857179113446677e-06, -4.624548820132927424e-06, -4.765221291781344663e-06, -4.905874366897325831e-06, -5.046507818388675542e-06, -5.187121419195090053e-06, -5.327714942313614829e-06, -5.468288160792768682e-06, -5.608840847726609458e-06, -5.749372776280186524e-06, -5.889883719652273022e-06, -6.030373451100857316e-06, -6.170841743937146853e-06, -6.311288371526020474e-06, -6.451713107280105114e-06, -6.592115724685177475e-06, -6.732495997262962337e-06, -6.872853698596526604e-06, -7.013188602324410217e-06, -7.153500482134703696e-06, -7.293789111790496401e-06, -7.434054265092611313e-06, -7.574295715905072779e-06, -7.714513238149126455e-06, -7.854706605803773786e-06, -7.994875592899620853e-06, -8.135019973544542623e-06, -8.275139521892536701e-06, -8.415234012137949953e-06, -8.555303218572126377e-06, -8.695346915521167121e-06, -8.835364877371465136e-06, -8.975356878588578770e-06, -9.115322693680290959e-06, -9.255262097221877922e-06, -9.395174863850207030e-06, -9.535060768257939715e-06, -9.674919585218832343e-06, -9.814751089556822899e-06, -9.954555056140189850e-06, -1.009433125993811362e-05, -1.023407947595863479e-05, -1.037379947927387541e-05, -1.051349104503924455e-05, -1.065315394845631628e-05, -1.079278796479810853e-05, -1.093239286940323342e-05, -1.107196843767628191e-05, -1.121151444508190123e-05, -1.135103066717645539e-05, -1.149051687953950013e-05, -1.162997285786181848e-05, -1.176939837787692798e-05, -1.190879321538647135e-05, -1.204815714627925097e-05, -1.218748994650044098e-05, -1.232679139204574273e-05, -1.246606125901776327e-05, -1.260529932356411253e-05, -1.274450536190267029e-05, -1.288367915034675661e-05, -1.302282046523732347e-05, -1.316192908302998907e-05, -1.330100478022728200e-05, -1.344004733340385063e-05, -1.357905651923151493e-05, -1.371803211441762622e-05, -1.385697389576129661e-05, -1.399588164014761879e-05, -1.413475512451675619e-05, -1.427359412588316207e-05, -1.441239842136072460e-05, -1.455116778810090635e-05, -1.468990200334908548e-05, -1.482860084443868417e-05, -1.496726408876050260e-05, -1.510589151378794022e-05, -1.524448289707094283e-05, -1.538303801623043762e-05, -1.552155664898324775e-05, -1.566003857310550393e-05, -1.579848356645129610e-05, -1.593689140697804205e-05, -1.607526187268488440e-05, -1.621359474166855078e-05, -1.635188979211787852e-05, -1.649014680228291836e-05, -1.662836555050012179e-05, -1.676654581518659815e-05, -1.690468737483417526e-05, -1.704279000803467825e-05, -1.718085349344286342e-05, -1.731887760980167337e-05, -1.745686213593663301e-05, -1.759480685075575133e-05, -1.773271153324401566e-05, -1.787057596248841645e-05, -1.800839991764105724e-05, -1.814618317794454197e-05, -1.828392552272579502e-05, -1.842162673139661686e-05, -1.855928658344783611e-05, -1.869690485847430047e-05, -1.883448133613825092e-05, -1.897201579619439059e-05, -1.910950801848389788e-05, -1.924695778292886318e-05, -1.938436486955701882e-05, -1.952172905846534715e-05, -1.965905012984496978e-05, -1.979632786397530979e-05, -1.993356204122451189e-05, -2.007075244204364192e-05, -2.020789884699164386e-05, -2.034500103669860226e-05, -2.048205879189091610e-05, -2.061907189338551866e-05, -2.075604012209006718e-05, -2.089296325899715940e-05, -2.102984108520934809e-05, -2.116667338190268135e-05, -2.130345993035142249e-05, -2.144020051192247647e-05, -2.157689490806935230e-05, -2.171354290035724537e-05, -2.185014427043277464e-05, -2.198669880001786372e-05, -2.212320627096576355e-05, -2.225966646519968325e-05, -2.239607916473776398e-05, -2.253244415171189668e-05, -2.266876120833126909e-05, -2.280503011690709580e-05, -2.294125065984710908e-05, -2.307742261964947384e-05, -2.321354577892788013e-05, -2.334961992038104314e-05, -2.348564482678719415e-05, -2.362162028105923249e-05, -2.375754606618412208e-05, -2.389342196524753666e-05, -2.402924776145858976e-05, -2.416502323808950565e-05, -2.430074817853041560e-05, -2.443642236628377421e-05, -2.457204558493440157e-05, -2.470761761816780289e-05, -2.484313824979513221e-05, -2.497860726368635821e-05, -2.511402444385597705e-05, -2.524938957439637808e-05, -2.538470243950243822e-05, -2.551996282349634009e-05, -2.565517051076690743e-05, -2.579032528582484528e-05, -2.592542693329704786e-05, -2.606047523789612236e-05, -2.619546998443975211e-05, -2.633041095787444735e-05, -2.646529794320969694e-05, -2.660013072560312223e-05, -2.673490909029386641e-05, -2.686963282263371452e-05, -2.700430170808084909e-05, -2.713891553220066329e-05, -2.727347408065968265e-05, -2.740797713925035602e-05, -2.754242449385483639e-05, -2.767681593046383932e-05, -2.781115123520077310e-05, -2.794543019426193157e-05, -2.807965259397099891e-05, -2.821381822077362526e-05, -2.834792686120717072e-05, -2.848197830192548616e-05, -2.861597232969330918e-05, -2.874990873138014185e-05, -2.888378729398517034e-05, -2.901760780460113393e-05, -2.915137005043883135e-05, -2.928507381882160490e-05, -2.941871889718554036e-05, -2.955230507307353774e-05, -2.968583213416025473e-05, -2.981929986821597566e-05, -2.995270806313090437e-05, -3.008605650690999398e-05, -3.021934498767265206e-05, -3.035257329364765848e-05, -3.048574121319695684e-05, -3.061884853478035357e-05, -3.075189504697995645e-05, -3.088488053849391680e-05, -3.101780479813151666e-05, -3.115066761483698736e-05, -3.128346877765394768e-05, -3.141620807574993393e-05, -3.154888529841041653e-05, -3.168150023503931497e-05, -3.181405267515356326e-05, -3.194654240840684721e-05, -3.207896922455456433e-05, -3.221133291347782535e-05, -3.234363326517762671e-05, -3.247587006977561616e-05, -3.260804311750823819e-05, -3.274015219875078288e-05, -3.287219710398218330e-05, -3.300417762380907795e-05, -3.313609354896009844e-05, -3.326794467028059750e-05, -3.339973077875613551e-05, -3.353145166548370855e-05, -3.366310712166581908e-05, -3.379469693866450993e-05, -3.392622090794180094e-05, -3.405767882108439517e-05, -3.418907046982141919e-05, -3.432039564598924074e-05, -3.445165414155560574e-05, -3.458284574861384460e-05, -3.471397025937750545e-05, -3.484502746620414553e-05, -3.497601716156628144e-05, -3.510693913804577152e-05, -3.523779318838720612e-05, -3.536857910543904213e-05, -3.549929668217803824e-05, -3.562994571173256524e-05, -3.576052598732458768e-05, -3.589103730232251195e-05, -3.602147945023582623e-05, -3.615185222468617266e-05, -3.628215541942491138e-05, -3.641238882835732535e-05, -3.654255224547811712e-05, -3.667264546495404534e-05, -3.680266828105957738e-05, -3.693262048820095860e-05, -3.706250188093952269e-05, -3.719231225393381565e-05, -3.732205140199248446e-05, -3.745171912006863251e-05, -3.758131520323126440e-05, -3.771083944668240278e-05, -3.784029164578199788e-05, -3.796967159598267215e-05, -3.809897909291249903e-05, -3.822821393231121123e-05, -3.835737591005937256e-05, -3.848646482217293657e-05, -3.861548046480378188e-05, -3.874442263423380327e-05, -3.887329112689888612e-05, -3.900208573935446267e-05, -3.913080626829239841e-05, -3.925945251056563065e-05, -3.938802426312989938e-05, -3.951652132309614813e-05, -3.964494348772518428e-05, -3.977329055439955078e-05, -3.990156232064599626e-05, -4.002975858413080614e-05, -4.015787914265408354e-05, -4.028592379417298498e-05, -4.041389233676774431e-05, -4.054178456866492199e-05, -4.066960028823165884e-05, -4.079733929397674671e-05, -4.092500138454427909e-05, -4.105258635873763911e-05, -4.118009401548498801e-05, -4.130752415386274490e-05, -4.143487657308995569e-05, -4.156215107252891650e-05, -4.168934745167936641e-05, -4.181646551020219758e-05, -4.194350504788480827e-05, -4.207046586466491457e-05, -4.219734776062470928e-05, -4.232415053598563066e-05, -4.245087399113161853e-05, -4.257751792657498904e-05, -4.270408214297971111e-05, -4.283056644115574825e-05, -4.295697062206010891e-05, -4.308329448679007695e-05, -4.320953783660797892e-05, -4.333570047290600169e-05, -4.346178219722997033e-05, -4.358778281127395426e-05, -4.371370211687422954e-05, -4.383953991603328722e-05, -4.396529601088536245e-05, -4.409097020371964998e-05, -4.421656229697510000e-05, -4.434207209324036390e-05, -4.446749939524901024e-05, -4.459284400590189998e-05, -4.471810572823929538e-05, -4.484328436543594720e-05, -4.496837972085195056e-05, -4.509339159797629188e-05, -4.521831980045043031e-05, -4.534316413209032732e-05, -4.546792439682585338e-05, -4.559260039877869464e-05, -4.571719194220137336e-05, -4.584169883150047693e-05, -4.596612087125306998e-05, -4.609045786617893878e-05, -4.621470962113613252e-05, -4.633887594117080944e-05, -4.646295663146209840e-05, -4.658695149734423018e-05, -4.671086034432991554e-05, -4.683468297804843053e-05, -4.695841920432500721e-05, -4.708206882911847166e-05, -4.720563165855099180e-05, -4.732910749889588688e-05, -4.745249615660661633e-05, -4.757579743825519713e-05, -4.769901115061117428e-05, -4.782213710057998403e-05, -4.794517509522612183e-05, -4.806812494179491451e-05, -4.819098644765847279e-05, -4.831375942036437196e-05, -4.843644366763214177e-05, -4.855903899732412173e-05, -4.868154521746364182e-05, -4.880396213625722831e-05, -4.892628956203330567e-05, -4.904852730332104517e-05, -4.917067516878894485e-05, -4.929273296726769261e-05, -4.941470050777219586e-05, -4.953657759944728330e-05, -4.965836405161700226e-05, -4.978005967377970589e-05, -4.990166427558086681e-05, -5.002317766682963827e-05, -5.014459965752163597e-05, -5.026593005778362343e-05, -5.038716867792370375e-05, -5.050831532842604089e-05, -5.062936981992332777e-05, -5.075033196321990003e-05, -5.087120156928558325e-05, -5.099197844925093596e-05, -5.111266241442983496e-05, -5.123325327628600734e-05, -5.135375084645616464e-05, -5.147415493674400587e-05, -5.159446535912123394e-05, -5.171468192572204657e-05, -5.183480444886486097e-05, -5.195483274102058062e-05, -5.207476661483464520e-05, -5.219460588312093877e-05, -5.231435035885808991e-05, -5.243399985521011899e-05, -5.255355418549495565e-05, -5.267301316320639390e-05, -5.279237660200896928e-05, -5.291164431573732862e-05, -5.303081611839258446e-05, -5.314989182416322659e-05, -5.326887124739318550e-05, -5.338775420260409240e-05, -5.350654050448962109e-05, -5.362522996791598933e-05, -5.374382240791741882e-05, -5.386231763971672821e-05, -5.398071547869453499e-05, -5.409901574041045845e-05, -5.421721824059791547e-05, -5.433532279515966177e-05, -5.445332922018871700e-05, -5.457123733193745141e-05, -5.468904694683806374e-05, -5.480675788149884072e-05, -5.492436995270333035e-05, -5.504188297740589671e-05, -5.515929677275336327e-05, -5.527661115605307646e-05, -5.539382594479423048e-05, -5.551094095664380160e-05, -5.562795600944570111e-05, -5.574487092121647238e-05, -5.586168551017158278e-05, -5.597839959466775089e-05, -5.609501299327806817e-05, -5.621152552473197481e-05, -5.632793700793903763e-05, -5.644424726200380365e-05, -5.656045610619948112e-05, -5.667656335996422608e-05, -5.679256884294736326e-05, -5.690847237495787973e-05, -5.702427377598573622e-05, -5.713997286622278548e-05, -5.725556946600539760e-05, -5.737106339588851108e-05, -5.748645447658787868e-05, -5.760174252900646103e-05, -5.771692737422464163e-05, -5.783200883352671533e-05, -5.794698672834294447e-05, -5.806186088032366409e-05, -5.817663111128167016e-05, -5.829129724321382907e-05, -5.840585909832181978e-05, -5.852031649896041060e-05, -5.863466926768492012e-05, -5.874891722724553874e-05, -5.886306020056247329e-05, -5.897709801074114624e-05, -5.909103048109357476e-05, -5.920485743508140949e-05, -5.931857869638896907e-05, -5.943219408886612983e-05, -5.954570343655021309e-05, -5.965910656368564991e-05, -5.977240329467358598e-05, -5.988559345411819063e-05, -5.999867686682196764e-05, -6.011165335775997158e-05, -6.022452275210089551e-05, -6.033728487520228698e-05, -6.044993955261052088e-05, -6.056248661005621194e-05, -6.067492587347480100e-05, -6.078725716897610929e-05, -6.089948032286506696e-05, -6.101159516163734924e-05, -6.112360151197335906e-05, -6.123549920076058197e-05, -6.134728805506147343e-05, -6.145896790213548164e-05, -6.157053856943367400e-05, -6.168199988459870998e-05, -6.179335167546068049e-05, -6.190459377005719276e-05, -6.201572599660331079e-05, -6.212674818351233139e-05, -6.223766015939064780e-05, -6.234846175303314180e-05, -6.245915279344332275e-05, -6.256973310980427103e-05, -6.268020253149744888e-05, -6.279056088809944786e-05, -6.290080800938213786e-05, -6.301094372530627037e-05, -6.312096786604384010e-05, -6.323088026194717169e-05, -6.334068074356927560e-05, -6.345036914165951133e-05, -6.355994528716320789e-05, -6.366940901121819439e-05, -6.377876014517305531e-05, -6.388799852055940200e-05, -6.399712396911073778e-05, -6.410613632275836515e-05, -6.421503541362649325e-05, -6.432382107405253959e-05, -6.443249313655750421e-05, -6.454105143386571570e-05, -6.464949579890076549e-05, -6.475782606478519608e-05, -6.486604206483601520e-05, -6.497414363258532271e-05, -6.508213060174961419e-05, -6.519000280625078731e-05, -6.529776008021149331e-05, -6.540540225795471690e-05, -6.551292917399981891e-05, -6.562034066308682241e-05, -6.572763656012277182e-05, -6.583481670025108118e-05, -6.594188091879733761e-05, -6.604882905128946745e-05, -6.615566093347230523e-05, -6.626237640128399876e-05, -6.636897529085084555e-05, -6.647545743853154187e-05, -6.658182268086898991e-05, -6.668807085460954243e-05, -6.679420179672320953e-05, -6.690021534435041078e-05, -6.700611133486960235e-05, -6.711188960584458477e-05, -6.721754999504450645e-05, -6.732309234045797189e-05, -6.742851648026928406e-05, -6.753382225285435158e-05, -6.763900949682363664e-05, -6.774407805097442303e-05, -6.784902775431103650e-05, -6.795385844606319486e-05, -6.805856996563889943e-05, -6.816316215266754561e-05, -6.826763484699597910e-05, -6.837198788866388451e-05, -6.847622111791895063e-05, -6.858033437523668424e-05, -6.868432750126649813e-05, -6.878820033690100522e-05, -6.889195272322165932e-05, -6.899558450151976159e-05, -6.909909551331433627e-05, -6.920248560030607926e-05, -6.930575460441964195e-05, -6.940890236779900986e-05, -6.951192873278421933e-05, -6.961483354193109005e-05, -6.971761663800588537e-05, -6.982027786398083992e-05, -6.992281706305447490e-05, -7.002523407862216195e-05, -7.012752875429566592e-05, -7.022970093389864542e-05, -7.033175046146764215e-05, -7.043367718124634821e-05, -7.053548093770508102e-05, -7.063716157551370545e-05, -7.073871893955950953e-05, -7.084015287494292192e-05, -7.094146322697860959e-05, -7.104264984119035503e-05, -7.114371256332932504e-05, -7.124465123934781944e-05, -7.134546571541688941e-05, -7.144615583792288159e-05, -7.154672145346211191e-05, -7.164716240886016439e-05, -7.174747855114428467e-05, -7.184766972756208249e-05, -7.194773578557691024e-05, -7.204767657286824248e-05, -7.214749193732831491e-05, -7.224718172707864485e-05, -7.234674579044432215e-05, -7.244618397597223731e-05, -7.254549613242606708e-05, -7.264468210878804978e-05, -7.274374175425272408e-05, -7.284267491824651241e-05, -7.294148145040094111e-05, -7.304016120056994708e-05, -7.313871401882636762e-05, -7.323713975545763073e-05, -7.333543826098344121e-05, -7.343360938613447601e-05, -7.353165298184644830e-05, -7.362956889930316379e-05, -7.372735698989013044e-05, -7.382501710521200062e-05, -7.392254909710905088e-05, -7.401995281762766465e-05, -7.411722811903998333e-05, -7.421437485383955597e-05, -7.431139287473647389e-05, -7.440828203467607317e-05, -7.450504218681646459e-05, -7.460167318452412902e-05, -7.469817488141563210e-05, -7.479454713131065123e-05, -7.489078978825269731e-05, -7.498690270652124431e-05, -7.508288574060977417e-05, -7.517873874522244284e-05, -7.527446157531278632e-05, -7.537005408604098957e-05, -7.546551613279090843e-05, -7.556084757118827072e-05, -7.565604825705294419e-05, -7.575111804645971963e-05, -7.584605679569067374e-05, -7.594086436125342438e-05, -7.603554059989363952e-05, -7.613008536857361077e-05, -7.622449852446883806e-05, -7.631877992500664084e-05, -7.641292942782243762e-05, -7.650694689077954620e-05, -7.660083217198365778e-05, -7.669458512973784255e-05, -7.678820562260231638e-05, -7.688169350934677653e-05, -7.697504864897342742e-05, -7.706827090070706018e-05, -7.716136012401802417e-05, -7.725431617857463052e-05, -7.734713892430298654e-05, -7.743982822134139144e-05, -7.753238393005571849e-05, -7.762480591105922877e-05, -7.771709402516735997e-05, -7.780924813343822132e-05, -7.790126809716847365e-05, -7.799315377787061532e-05, -7.808490503729218618e-05, -7.817652173741078024e-05, -7.826800374042954618e-05, -7.835935090879561887e-05, -7.845056310517338016e-05, -7.854164019246324274e-05, -7.863258203379617486e-05, -7.872338849253497433e-05, -7.881405943226941666e-05, -7.890459471683364300e-05, -7.899499421028138607e-05, -7.908525777690269404e-05, -7.917538528122008154e-05, -7.926537658798848908e-05, -7.935523156219150183e-05, -7.944495006905816833e-05, -7.953453197403806386e-05, -7.962397714281871895e-05, -7.971328544132097091e-05, -7.980245673569527751e-05, -7.989149089233854920e-05, -7.998038777786955133e-05, -8.006914725914512649e-05, -8.015776920325742979e-05, -8.024625347753270915e-05, -8.033459994952831017e-05, -8.042280848704907472e-05, -8.051087895812297345e-05, -8.059881123101745020e-05, -8.068660517423553236e-05, -8.077426065651702354e-05, -8.086177754683254043e-05, -8.094915571440205267e-05, -8.103639502866972935e-05, -8.112349535932025628e-05, -8.121045657627571886e-05, -8.129727854969069612e-05, -8.138396114996939107e-05, -8.147050424774545101e-05, -8.155690771387832190e-05, -8.164317141948895925e-05, -8.172929523592025478e-05, -8.181527903475441070e-05, -8.190112268782268404e-05, -8.198682606718381098e-05, -8.207238904513888757e-05, -8.215781149422848298e-05, -8.224309328722771999e-05, -8.232823429716351377e-05, -8.241323439729412114e-05, -8.249809346110590150e-05, -8.258281136234872958e-05, -8.266738797499669313e-05, -8.275182317326442371e-05, -8.283611683161871118e-05, -8.292026882475892033e-05, -8.300427902761396866e-05, -8.308814731537679044e-05, -8.317187356346632189e-05, -8.325545764754293751e-05, -8.333889944352345269e-05, -8.342219882754019515e-05, -8.350535567599384615e-05, -8.358836986551198341e-05, -8.367124127296499169e-05, -8.375396977547647118e-05, -8.383655525040540236e-05, -8.391899757534213445e-05, -8.400129662814290372e-05, -8.408345228689184572e-05, -8.416546442991647227e-05, -8.424733293580332467e-05, -8.432905768335563555e-05, -8.441063855164767456e-05, -8.449207541998205785e-05, -8.457336816790988717e-05, -8.465451667522654858e-05, -8.473552082197176663e-05, -8.481638048842683969e-05, -8.489709555512916822e-05, -8.497766590284922905e-05, -8.505809141260445316e-05, -8.513837196567085373e-05, -8.521850744354881962e-05, -8.529849772799577687e-05, -8.537834270102215013e-05, -8.545804224487362237e-05, -8.553759624204582579e-05, -8.561700457528103507e-05, -8.569626712756444036e-05, -8.577538378213919062e-05, -8.585435442248419457e-05, -8.593317893232611468e-05, -8.601185719565264864e-05, -8.609038909667852610e-05, -8.616877451987556811e-05, -8.624701334997207734e-05, -8.632510547193254986e-05, -8.640305077097358588e-05, -8.648084913256052868e-05, -8.655850044240642109e-05, -8.663600458647040627e-05, -8.671336145097083303e-05, -8.679057092236384279e-05, -8.686763288735923965e-05, -8.694454723291534040e-05, -8.702131384623715846e-05, -8.709793261478911619e-05, -8.717440342627578672e-05, -8.725072616865516190e-05, -8.732690073013483047e-05, -8.740292699917296738e-05, -8.747880486447498635e-05, -8.755453421500709237e-05, -8.763011493997602069e-05, -8.770554692884286038e-05, -8.778083007131995083e-05, -8.785596425736743936e-05, -8.793094937720756564e-05, -8.800578532130259814e-05, -8.808047198037161215e-05, -8.815500924538462158e-05, -8.822939700756377154e-05, -8.830363515838069561e-05, -8.837772358956894351e-05, -8.845166219310813822e-05, -8.852545086121986950e-05, -8.859908948639959661e-05, -8.867257796138208932e-05, -8.874591617915514308e-05, -8.881910403296972988e-05, -8.889214141632071297e-05, -8.896502822295957271e-05, -8.903776434689161475e-05, -8.911034968237292069e-05, -8.918278412392308748e-05, -8.925506756631025184e-05, -8.932719990454560154e-05, -8.939918103391625379e-05, -8.947101084994955791e-05, -8.954268924842813859e-05, -8.961421612539940984e-05, -8.968559137715661491e-05, -8.975681490025010209e-05, -8.982788659148716200e-05, -8.989880634792977792e-05, -8.996957406689253867e-05, -9.004018964595888813e-05, -9.011065298294578018e-05, -9.018096397594887645e-05, -9.025112252330691671e-05, -9.032112852361505451e-05, -9.039098187573502163e-05, -9.046068247877887857e-05, -9.053023023210559933e-05, -9.059962503535026355e-05, -9.066886678839270949e-05, -9.073795539136981266e-05, -9.080689074468892990e-05, -9.087567274899161927e-05, -9.094430130520125008e-05, -9.101277631448475766e-05, -9.108109767826746983e-05, -9.114926529824591401e-05, -9.121727907635548093e-05, -9.128513891479969806e-05, -9.135284471604638071e-05, -9.142039638281341542e-05, -9.148779381807694568e-05, -9.155503692508478895e-05, -9.162212560732476438e-05, -9.168905976855381721e-05, -9.175583931279402078e-05, -9.182246414431761451e-05, -9.188893416765962134e-05, -9.195524928761544890e-05, -9.202140940923648495e-05, -9.208741443784341954e-05, -9.215326427900812523e-05, -9.221895883856308970e-05, -9.228449802261278628e-05, -9.234988173750423789e-05, -9.241510988985427116e-05, -9.248018238654703632e-05, -9.254509913471732402e-05, -9.260986004176526985e-05, -9.267446501535173294e-05, -9.273891396339558539e-05, -9.280320679408658724e-05, -9.286734341586717185e-05, -9.293132373744380289e-05, -9.299514766778552426e-05, -9.305881511612306561e-05, -9.312232599194609117e-05, -9.318568020501558676e-05, -9.324887766534565876e-05, -9.331191828321657160e-05, -9.337480196917041103e-05, -9.343752863401238507e-05, -9.350009818880735464e-05, -9.356251054489220698e-05, -9.362476561385795273e-05, -9.368686330756140831e-05, -9.374880353812348817e-05, -9.381058621792480034e-05, -9.387221125961909044e-05, -9.393367857611432243e-05, -9.399498808058560765e-05, -9.405613968647166768e-05, -9.411713330747532218e-05, -9.417796885756111720e-05, -9.423864625096592331e-05, -9.429916540218279445e-05, -9.435952622597179650e-05, -9.441972863735801497e-05, -9.447977255163087743e-05, -9.453965788434243232e-05, -9.459938455131741849e-05, -9.465895246863769330e-05, -9.471836155265295275e-05, -9.477761171997886114e-05, -9.483670288749245685e-05, -9.489563497234563703e-05, -9.495440789195034475e-05, -9.501302156397528923e-05, -9.507147590637256306e-05, -9.512977083734868041e-05, -9.518790627537648970e-05, -9.524588213920295279e-05, -9.530369834783349178e-05, -9.536135482054260062e-05, -9.541885147687114821e-05, -9.547618823662694756e-05, -9.553336501988177426e-05, -9.559038174698501387e-05, -9.564723833853383279e-05, -9.570393471541220956e-05, -9.576047079875945234e-05, -9.581684650998316866e-05, -9.587306177076591971e-05, -9.592911650305211509e-05, -9.598501062904637288e-05, -9.604074407123677586e-05, -9.609631675236868795e-05, -9.615172859545504064e-05, -9.620697952378777127e-05, -9.626206946090848187e-05, -9.631699833064481407e-05, -9.637176605708274780e-05, -9.642637256457740262e-05, -9.648081777776145384e-05, -9.653510162152126653e-05, -9.658922402102020587e-05, -9.664318490169478821e-05, -9.669698418924287683e-05, -9.675062180963198968e-05, -9.680409768910892159e-05, -9.685741175417323561e-05, -9.691056393160290433e-05, -9.696355414844983758e-05, -9.701638233202746831e-05, -9.706904840992197408e-05, -9.712155230998903801e-05, -9.717389396035138220e-05, -9.722607328940942003e-05, -9.727809022582632130e-05, -9.732994469853454450e-05, -9.738163663674760044e-05, -9.743316596993332665e-05, -9.748453262783864787e-05, -9.753573654048475130e-05, -9.758677763815678673e-05, -9.763765585141216067e-05, -9.768837111107984516e-05, -9.773892334825686769e-05, -9.778931249431806899e-05, -9.783953848090269959e-05, -9.788960123992316122e-05, -9.793950070356267576e-05, -9.798923680427670823e-05, -9.803880947478872492e-05, -9.808821864810121150e-05, -9.813746425748103637e-05, -9.818654623646877477e-05, -9.823546451887713667e-05, -9.828421903879016718e-05, -9.833280973056216239e-05, -9.838123652882513673e-05, -9.842949936847723564e-05, -9.847759818469065021e-05, -9.852553291290985533e-05, -9.857330348884945487e-05, -9.862090984850254360e-05, -9.866835192812871316e-05, -9.871562966426185835e-05, -9.876274299370855082e-05, -9.880969185354843208e-05, -9.885647618113124551e-05, -9.890309591408632313e-05, -9.894955099030918215e-05, -9.899584134797067289e-05, -9.904196692551498664e-05, -9.908792766165919479e-05, -9.913372349539143283e-05, -9.917935436597938423e-05, -9.922482021295831356e-05, -9.927012097613841196e-05, -9.931525659560379424e-05, -9.936022701170992390e-05, -9.940503216509267981e-05, -9.944967199665701268e-05, -9.949414644757542724e-05, -9.953845545930718611e-05, -9.958259897357674779e-05, -9.962657693238310432e-05, -9.967038927800535135e-05, -9.971403595299047735e-05, -9.975751690016219984e-05, -9.980083206261836331e-05, -9.984398138372854042e-05, -9.988696480714395244e-05, -9.992978227678586830e-05, -9.997243373684336842e-05, -1.000149191317939446e-04, -1.000572384063799590e-04, -1.000993915056201374e-04, -1.001413783748150704e-04, -1.001831989595287290e-04, -1.002248532056058381e-04, -1.002663410591703858e-04, -1.003076624666157169e-04, -1.003488173746101164e-04, -1.003898057301049677e-04, -1.004306274803133539e-04, -1.004712825727377721e-04, -1.005117709551475686e-04, -1.005520925755880735e-04, -1.005922473823884881e-04, -1.006322353241412173e-04, -1.006720563497205857e-04, -1.007117104082803167e-04, -1.007511974492443578e-04, -1.007905174223125042e-04, -1.008296702774681111e-04, -1.008686559649574118e-04, -1.009074744353153356e-04, -1.009461256393462902e-04, -1.009846095281324423e-04, -1.010229260530312378e-04, -1.010610751656776239e-04, -1.010990568179809186e-04, -1.011368709621316553e-04, -1.011745175505917292e-04, -1.012119965360994801e-04, -1.012493078716774714e-04, -1.012864515106132998e-04, -1.013234274064773354e-04, -1.013602355131195911e-04, -1.013968757846622011e-04, -1.014333481755051264e-04, -1.014696526403259514e-04, -1.015057891340770109e-04, -1.015417576119928306e-04, -1.015775580295796913e-04, -1.016131903426232050e-04, -1.016486545071855230e-04, -1.016839504796062033e-04, -1.017190782165005436e-04, -1.017540376747653411e-04, -1.017888288115709509e-04, -1.018234515843657444e-04, -1.018579059508755542e-04, -1.018921918691046493e-04, -1.019263092973317239e-04, -1.019602581941188421e-04, -1.019940385183008532e-04, -1.020276502289914090e-04, -1.020610932855815545e-04, -1.020943676477397821e-04, -1.021274732754154331e-04, -1.021604101288321384e-04, -1.021931781684921013e-04, -1.022257773551764223e-04, -1.022582076499430938e-04, -1.022904690141269182e-04, -1.023225614093455397e-04, -1.023544847974900378e-04, -1.023862391407305794e-04, -1.024178244015158359e-04, -1.024492405425726712e-04, -1.024804875269044074e-04, -1.025115653177976956e-04, -1.025424738788122299e-04, -1.025732131737879432e-04, -1.026037831668429886e-04, -1.026341838223722208e-04, -1.026644151050534851e-04, -1.026944769798405696e-04, -1.027243694119606441e-04, -1.027540923669283682e-04, -1.027836458105315119e-04, -1.028130297088359024e-04, -1.028422440281905335e-04, -1.028712887352189868e-04, -1.029001637968243645e-04, -1.029288691801888428e-04, -1.029574048527721940e-04, -1.029857707823167472e-04, -1.030139669368406390e-04, -1.030419932846373120e-04, -1.030698497942866550e-04, -1.030975364346425210e-04, -1.031250531748372271e-04, -1.031523999842881676e-04, -1.031795768326811309e-04, -1.032065836899911709e-04, -1.032334205264667229e-04, -1.032600873126365289e-04, -1.032865840193072666e-04, -1.033129106175695251e-04, -1.033390670787845514e-04, -1.033650533746015835e-04, -1.033908694769430919e-04, -1.034165153580113256e-04, -1.034419909902936651e-04, -1.034672963465474573e-04, -1.034924313998138119e-04, -1.035173961234167204e-04, -1.035421904909534884e-04, -1.035668144763028122e-04, -1.035912680536264872e-04, -1.036155511973570339e-04, -1.036396638822152894e-04, -1.036636060831968003e-04, -1.036873777755770951e-04, -1.037109789349114399e-04, -1.037344095370347030e-04, -1.037576695580599319e-04, -1.037807589743826086e-04, -1.038036777626748767e-04, -1.038264258998879667e-04, -1.038490033632579428e-04, -1.038714101302922041e-04, -1.038936461787824819e-04, -1.039157114868015190e-04, -1.039376060326978660e-04, -1.039593297951020334e-04, -1.039808827529228738e-04, -1.040022648853484625e-04, -1.040234761718495532e-04, -1.040445165921728834e-04, -1.040653861263466225e-04, -1.040860847546781488e-04, -1.041066124577543075e-04, -1.041269692164405972e-04, -1.041471550118857779e-04, -1.041671698255146474e-04, -1.041870136390330424e-04, -1.042066864344262525e-04, -1.042261881939592782e-04, -1.042455189001755428e-04, -1.042646785359021785e-04, -1.042836670842415690e-04, -1.043024845285777470e-04, -1.043211308525745639e-04, -1.043396060401737929e-04, -1.043579100756006583e-04, -1.043760429433566664e-04, -1.043940046282243889e-04, -1.044117951152654039e-04, -1.044294143898220298e-04, -1.044468624375146152e-04, -1.044641392442462278e-04, -1.044812447961973963e-04, -1.044981790798280214e-04, -1.045149420818787577e-04, -1.045315337893692114e-04, -1.045479541896001904e-04, -1.045642032701512506e-04, -1.045802810188810897e-04, -1.045961874239285358e-04, -1.046119224737125886e-04, -1.046274861569304539e-04, -1.046428784625620163e-04, -1.046580993798646618e-04, -1.046731488983736170e-04, -1.046880270079082097e-04, -1.047027336985644429e-04, -1.047172689607179082e-04, -1.047316327850270247e-04, -1.047458251624239320e-04, -1.047598460841266468e-04, -1.047736955416292507e-04, -1.047873735267055900e-04, -1.048008800314110378e-04, -1.048142150480797021e-04, -1.048273785693224332e-04, -1.048403705880346034e-04, -1.048531910973874196e-04, -1.048658400908326259e-04, -1.048783175621035337e-04, -1.048906235052087335e-04, -1.049027579144409171e-04, -1.049147207843693973e-04, -1.049265121098431566e-04, -1.049381318859914981e-04, -1.049495801082242486e-04, -1.049608567722266764e-04, -1.049719618739682465e-04, -1.049828954096951528e-04, -1.049936573759325408e-04, -1.050042477694881671e-04, -1.050146665874446061e-04, -1.050249138271659727e-04, -1.050349894862974339e-04, -1.050448935627607640e-04, -1.050546260547576102e-04, -1.050641869607707674e-04, -1.050735762795587018e-04, -1.050827940101626537e-04, -1.050918401519010257e-04, -1.051007147043712400e-04, -1.051094176674521505e-04, -1.051179490412987847e-04, -1.051263088263466801e-04, -1.051344970233108409e-04, -1.051425136331844235e-04, -1.051503586572396983e-04, -1.051580320970300154e-04, -1.051655339543837870e-04, -1.051728642314109788e-04, -1.051800229305009828e-04, -1.051870100543202721e-04, -1.051938256058155456e-04, -1.052004695882113834e-04, -1.052069420050111542e-04, -1.052132428599988320e-04, -1.052193721572346186e-04, -1.052253299010591308e-04, -1.052311160960909614e-04, -1.052367307472274518e-04, -1.052421738596445017e-04, -1.052474454387971795e-04, -1.052525454904187056e-04, -1.052574740205202222e-04, -1.052622310353925413e-04, -1.052668165416038816e-04, -1.052712305460021453e-04, -1.052754730557122078e-04, -1.052795440781382482e-04, -1.052834436209624624e-04, -1.052871716921450899e-04, -1.052907282999246305e-04, -1.052941134528190509e-04, -1.052973271596228976e-04, -1.053003694294096419e-04, -1.053032402715305544e-04, -1.053059396956153293e-04, -1.053084677115710807e-04, -1.053108243295836847e-04, -1.053130095601163022e-04, -1.053150234139107609e-04, -1.053168659019858348e-04, -1.053185370356388427e-04, -1.053200368264444831e-04, -1.053213652862553218e-04, -1.053225224272016431e-04, -1.053235082616916937e-04, -1.053243228024107339e-04, -1.053249660623218102e-04, -1.053254380546656872e-04, -1.053257387929606721e-04, -1.053258682910023972e-04, -1.053258265628638339e-04, -1.053256136228945876e-04, -1.053252294857229715e-04, -1.053246741662538382e-04, -1.053239476796692301e-04, -1.053230500414283657e-04, -1.053219812672671386e-04, -1.053207413731994859e-04, -1.053193303755154911e-04, -1.053177482907831049e-04, -1.053159951358458555e-04, -1.053140709278256262e-04, -1.053119756841197960e-04, -1.053097094224031101e-04, -1.053072721606273951e-04, -1.053046639170202308e-04, -1.053018847100870101e-04, -1.052989345586082155e-04, -1.052958134816420882e-04, -1.052925214985224331e-04, -1.052890586288600416e-04, -1.052854248925416615e-04, -1.052816203097305532e-04, -1.052776449008659062e-04, -1.052734986866634494e-04, -1.052691816881151529e-04, -1.052646939264879677e-04, -1.052600354233262648e-04, -1.052552062004492877e-04, -1.052502062799526972e-04, -1.052450356842076770e-04, -1.052396944358613537e-04, -1.052341825578367564e-04, -1.052285000733321524e-04, -1.052226470058213319e-04, -1.052166233790541365e-04, -1.052104292170551582e-04, -1.052040645441249726e-04, -1.051975293848392718e-04, -1.051908237640488775e-04, -1.051839477068801886e-04, -1.051769012387342053e-04, -1.051696843852876134e-04, -1.051622971724914152e-04, -1.051547396265725833e-04, -1.051470117740312414e-04, -1.051391136416444320e-04, -1.051310452564624572e-04, -1.051228066458107354e-04, -1.051143978372897199e-04, -1.051058188587732187e-04, -1.050970697384111588e-04, -1.050881505046260763e-04, -1.050790611861169926e-04, -1.050698018118551718e-04, -1.050603724110873337e-04, -1.050507730133335116e-04, -1.050410036483880147e-04, -1.050310643463200927e-04, -1.050209551374714414e-04, -1.050106760524588325e-04, -1.050002271221715789e-04, -1.049896083777740826e-04, -1.049788198507027451e-04, -1.049678615726696668e-04, -1.049567335756578900e-04, -1.049454358919264682e-04, -1.049339685540051122e-04, -1.049223315946991775e-04, -1.049105250470853956e-04, -1.048985489445147334e-04, -1.048864033206110922e-04, -1.048740882092707923e-04, -1.048616036446628312e-04, -1.048489496612295066e-04, -1.048361262936858200e-04, -1.048231335770193279e-04, -1.048099715464905618e-04, -1.047966402376314968e-04, -1.047831396862470692e-04, -1.047694699284144318e-04, -1.047556310004836306e-04, -1.047416229390753695e-04, -1.047274457810845063e-04, -1.047130995636755670e-04, -1.046985843242864456e-04, -1.046839001006263578e-04, -1.046690469306767353e-04, -1.046540248526901551e-04, -1.046388339051908413e-04, -1.046234741269737295e-04, -1.046079455571080180e-04, -1.045922482349301064e-04, -1.045763822000501963e-04, -1.045603474923502445e-04, -1.045441441519799652e-04, -1.045277722193628062e-04, -1.045112317351939302e-04, -1.044945227404362164e-04, -1.044776452763246789e-04, -1.044605993843664800e-04, -1.044433851063351567e-04, -1.044260024842801895e-04, -1.044084515605166473e-04, -1.043907323776321406e-04, -1.043728449784845714e-04, -1.043547894062000190e-04, -1.043365657041761150e-04, -1.043181739160815413e-04, -1.042996140858515309e-04, -1.042808862576930721e-04, -1.042619904760829570e-04, -1.042429267857650438e-04, -1.042236952317565586e-04, -1.042042958593416581e-04, -1.041847287140724732e-04, -1.041649938417725784e-04, -1.041450912885338474e-04, -1.041250211007151388e-04, -1.041047833249484489e-04, -1.040843780081299397e-04, -1.040638051974266884e-04, -1.040430649402748032e-04, -1.040221572843758188e-04, -1.040010822777036618e-04, -1.039798399684985529e-04, -1.039584304052672091e-04, -1.039368536367865040e-04, -1.039151097121012444e-04, -1.038931986805226933e-04, -1.038711205916315652e-04, -1.038488754952737974e-04, -1.038264634415644535e-04, -1.038038844808862864e-04, -1.037811386638881123e-04, -1.037582260414871010e-04, -1.037351466648675562e-04, -1.037119005854787740e-04, -1.036884878550390818e-04, -1.036649085255325858e-04, -1.036411626492105529e-04, -1.036172502785900288e-04, -1.035931714664564126e-04, -1.035689262658581039e-04, -1.035445147301123844e-04, -1.035199369128020027e-04, -1.034951928677758383e-04, -1.034702826491487663e-04, -1.034452063112997598e-04, -1.034199639088754136e-04, -1.033945554967875997e-04, -1.033689811302132235e-04, -1.033432408645947113e-04, -1.033173347556406882e-04, -1.032912628593213159e-04, -1.032650252318758553e-04, -1.032386219298068791e-04, -1.032120530098815868e-04, -1.031853185291320212e-04, -1.031584185448557872e-04, -1.031313531146118634e-04, -1.031041222962265658e-04, -1.030767261477893597e-04, -1.030491647276538084e-04, -1.030214380944385086e-04, -1.029935463070228617e-04, -1.029654894245520344e-04, -1.029372675064377712e-04, -1.029088806123491795e-04, -1.028803288022228527e-04, -1.028516121362588182e-04, -1.028227306749168512e-04, -1.027936844789230207e-04, -1.027644736092652572e-04, -1.027350981271940854e-04, -1.027055580942241007e-04, -1.026758535721291449e-04, -1.026459846229467243e-04, -1.026159513089812620e-04, -1.025857536927919688e-04, -1.025553918372048505e-04, -1.025248658053073004e-04, -1.024941756604458092e-04, -1.024633214662297459e-04, -1.024323032865354641e-04, -1.024011211854910966e-04, -1.023697752274931022e-04, -1.023382654771978100e-04, -1.023065919995179353e-04, -1.022747548596358212e-04, -1.022427541229860911e-04, -1.022105898552688351e-04, -1.021782621224445145e-04, -1.021457709907299776e-04, -1.021131165266058182e-04, -1.020802987968156845e-04, -1.020473178683559796e-04, -1.020141738084878144e-04, -1.019808666847320613e-04, -1.019473965648644206e-04, -1.019137635169288785e-04, -1.018799676092195332e-04, -1.018460089102951366e-04, -1.018118874889720876e-04, -1.017776034143271700e-04, -1.017431567556904913e-04, -1.017085475826601059e-04, -1.016737759650834214e-04, -1.016388419730714961e-04, -1.016037456769939434e-04, -1.015684871474729689e-04, -1.015330664553966650e-04, -1.014974836719071934e-04, -1.014617388684013001e-04, -1.014258321165382841e-04, -1.013897634882318931e-04, -1.013535330556552432e-04, -1.013171408912387993e-04, -1.012805870676657675e-04, -1.012438716578809716e-04, -1.012069947350840234e-04, -1.011699563727318289e-04, -1.011327566445373424e-04, -1.010953956244712193e-04, -1.010578733867560159e-04, -1.010201900058751203e-04, -1.009823455565657190e-04, -1.009443401138209514e-04, -1.009061737528896253e-04, -1.008678465492779923e-04, -1.008293585787422262e-04, -1.007907099172987230e-04, -1.007519006412174598e-04, -1.007129308270231065e-04, -1.006738005514968415e-04, -1.006345098916692777e-04, -1.005950589248307892e-04, -1.005554477285240303e-04, -1.005156763805463074e-04, -1.004757449589482914e-04, -1.004356535420365519e-04, -1.003954022083664694e-04, -1.003549910367517492e-04, -1.003144201062579430e-04, -1.002736894962039945e-04, -1.002327992861616152e-04, -1.001917495559577243e-04, -1.001505403856663715e-04, -1.001091718556197413e-04, -1.000676440464005776e-04, -1.000259570388441888e-04, -9.998411091403981731e-05, -9.994210575332330721e-05, -9.989994163828632009e-05, -9.985761865077685004e-05, -9.981513687288474956e-05, -9.977249638695791126e-05, -9.972969727559515278e-05, -9.968673962164193423e-05, -9.964362350819916728e-05, -9.960034901861775352e-05, -9.955691623649809657e-05, -9.951332524569373415e-05, -9.946957613030322012e-05, -9.942566897467810692e-05, -9.938160386342606263e-05, -9.933738088139359155e-05, -9.929300011368418096e-05, -9.924846164565063046e-05, -9.920376556289003749e-05, -9.915891195125257939e-05, -9.911390089684201483e-05, -9.906873248600087090e-05, -9.902340680532753286e-05, -9.897792394166876314e-05, -9.893228398211278952e-05, -9.888648701400878016e-05, -9.884053312494117509e-05, -9.879442240274921539e-05, -9.874815493552099367e-05, -9.870173081158541736e-05, -9.865515011952351158e-05, -9.860841294816858173e-05, -9.856151938659009955e-05, -9.851446952411217523e-05, -9.846726345030539873e-05, -9.841990125497930466e-05, -9.837238302820322956e-05, -9.832470886027989802e-05, -9.827687884176506035e-05, -9.822889306345917125e-05, -9.818075161640832502e-05, -9.813245459190376757e-05, -9.808400208148466124e-05, -9.803539417692916716e-05, -9.798663097026679163e-05, -9.793771255377156919e-05, -9.788863901995501534e-05, -9.783941046158450372e-05, -9.779002697166614929e-05, -9.774048864344623134e-05, -9.769079557042108686e-05, -9.764094784632895187e-05, -9.759094556515204855e-05, -9.754078882111776429e-05, -9.749047770869123848e-05, -9.744001232258643489e-05, -9.738939275776078844e-05, -9.733861910940592175e-05, -9.728769147296909871e-05, -9.723660994413315327e-05, -9.718537461881967426e-05, -9.713398559319864119e-05, -9.708244296367923572e-05, -9.703074682691373114e-05, -9.697889727979470064e-05, -9.692689441945904236e-05, -9.687473834327803182e-05, -9.682242914887132174e-05, -9.676996693409586957e-05, -9.671735179705120945e-05, -9.666458383607811049e-05, -9.661166314975161082e-05, -9.655858983689385175e-05, -9.650536399656425228e-05, -9.645198572806262609e-05, -9.639845513092773152e-05, -9.634477230494080868e-05, -9.629093735011526605e-05, -9.623695036670994836e-05, -9.618281145522133036e-05, -9.612852071638370655e-05, -9.607407825117263351e-05, -9.601948416079487394e-05, -9.596473854670287075e-05, -9.590984151058437937e-05, -9.585479315436469039e-05, -9.579959358020702256e-05, -9.574424289051424396e-05, -9.568874118791964275e-05, -9.563308857529824350e-05, -9.557728515576873168e-05, -9.552133103267269117e-05, -9.546522630959741317e-05, -9.540897109036661271e-05, -9.535256547903301543e-05, -9.529600957989209982e-05, -9.523930349747324747e-05, -9.518244733654088142e-05, -9.512544120209786788e-05, -9.506828519937433539e-05, -9.501097943384059037e-05, -9.495352401120871633e-05, -9.489591903741120154e-05, -9.483816461862443908e-05, -9.478026086125896906e-05, -9.472220787195214666e-05, -9.466400575758286023e-05, -9.460565462526032330e-05, -9.454715458232831654e-05, -9.448850573636258568e-05, -9.442970819517558490e-05, -9.437076206680185362e-05, -9.431166745952668012e-05, -9.425242448184987566e-05, -9.419303324251359776e-05, -9.413349385049222650e-05, -9.407380641498463958e-05, -9.401397104542589460e-05, -9.395398785149060360e-05, -9.389385694306956855e-05, -9.383357843029404037e-05, -9.377315242352745185e-05, -9.371257903335229885e-05, -9.365185837060061990e-05, -9.359099054631595427e-05, -9.352997567178290004e-05, -9.346881385851549956e-05, -9.340750521824741390e-05, -9.334604986295687301e-05, -9.328444790484481555e-05, -9.322269945633442805e-05, -9.316080463008648640e-05, -9.309876353899050605e-05, -9.303657629615421168e-05, -9.297424301492832478e-05, -9.291176380888511001e-05, -9.284913879181837520e-05, -9.278636807775776923e-05, -9.272345178095837373e-05, -9.266039001590152980e-05, -9.259718289729890368e-05, -9.253383054008146866e-05, -9.247033305941353186e-05, -9.240669057068698800e-05, -9.234290318950891881e-05, -9.227897103172845417e-05, -9.221489421341226914e-05, -9.215067285084774164e-05, -9.208630706055510916e-05, -9.202179695927785994e-05, -9.195714266398366814e-05, -9.189234429186859509e-05, -9.182740196034437706e-05, -9.176231578705523035e-05, -9.169708588986759206e-05, -9.163171238687058085e-05, -9.156619539637828736e-05, -9.150053503693031626e-05, -9.143473142728168962e-05, -9.136878468641852725e-05, -9.130269493354705552e-05, -9.123646228809637211e-05, -9.117008686971790393e-05, -9.110356879828800916e-05, -9.103690819389667448e-05, -9.097010517686441504e-05, -9.090315986773025341e-05, -9.083607238725490438e-05, -9.076884285642233352e-05, -9.070147139642979609e-05, -9.063395812870311070e-05, -9.056630317488638653e-05, -9.049850665684381224e-05, -9.043056869665942559e-05, -9.036248941664035248e-05, -9.029426893930431154e-05, -9.022590738739732726e-05, -9.015740488388215618e-05, -9.008876155193972337e-05, -9.001997751497016606e-05, -8.995105289659551700e-05, -8.988198782064672114e-05, -8.981278241118187736e-05, -8.974343679247391917e-05, -8.967395108901348789e-05, -8.960432542551238853e-05, -8.953455992688902083e-05, -8.946465471828675647e-05, -8.939460992507347831e-05, -8.932442567281589831e-05, -8.925410208730922407e-05, -8.918363929456469045e-05, -8.911303742080027611e-05, -8.904229659245917563e-05, -8.897141693619668062e-05, -8.890039857888301221e-05, -8.882924164760383609e-05, -8.875794626966267478e-05, -8.868651257256511902e-05, -8.861494068405255994e-05, -8.854323073205937666e-05, -8.847138284474538106e-05, -8.839939715048466401e-05, -8.832727377785559361e-05, -8.825501285565549262e-05, -8.818261451290390456e-05, -8.811007887881474330e-05, -8.803740608282698953e-05, -8.796459625459162614e-05, -8.789164952395926472e-05, -8.781856602101441994e-05, -8.774534587603135540e-05, -8.767198921950753127e-05, -8.759849618215249120e-05, -8.752486689487346959e-05, -8.745110148880759233e-05, -8.737720009529275245e-05, -8.730316284587098471e-05, -8.722898987230367151e-05, -8.715468130656201548e-05, -8.708023728081370379e-05, -8.700565792745551552e-05, -8.693094337908277428e-05, -8.685609376849417291e-05, -8.678110922870573257e-05, -8.670598989293964900e-05, -8.663073589462536321e-05, -8.655534736740360009e-05, -8.647982444511303276e-05, -8.640416726181002855e-05, -8.632837595175729207e-05, -8.625245064941210150e-05, -8.617639148945773701e-05, -8.610019860677401750e-05, -8.602387213644085138e-05, -8.594741221375329344e-05, -8.587081897421005227e-05, -8.579409255351418150e-05, -8.571723308757753853e-05, -8.564024071250795028e-05, -8.556311556462695351e-05, -8.548585778045792274e-05, -8.540846749672836066e-05, -8.533094485036987102e-05, -8.525328997852105889e-05, -8.517550301851488609e-05, -8.509758410789700783e-05, -8.501953338441270804e-05, -8.494135098601063988e-05, -8.486303705084213454e-05, -8.478459171726396596e-05, -8.470601512382496098e-05, -8.462730740928621964e-05, -8.454846871260695282e-05, -8.446949917294810080e-05, -8.439039892967517922e-05, -8.431116812234376438e-05, -8.423180689072093331e-05, -8.415231537477107430e-05, -8.407269371465831277e-05, -8.399294205074642997e-05, -8.391306052360360636e-05, -8.383304927398594177e-05, -8.375290844285926135e-05, -8.367263817138588836e-05, -8.359223860092587744e-05, -8.351170987303815300e-05, -8.343105212948324684e-05, -8.335026551220939327e-05, -8.326935016337318315e-05, -8.318830622532476455e-05, -8.310713384061207108e-05, -8.302583315198315301e-05, -8.294440430237224519e-05, -8.286284743491748029e-05, -8.278116269296353143e-05, -8.269935022003030596e-05, -8.261741015984700289e-05, -8.253534265633892628e-05, -8.245314785361555906e-05, -8.237082589599224703e-05, -8.228837692797556216e-05, -8.220580109426651452e-05, -8.212309853976406239e-05, -8.204026940955032646e-05, -8.195731384890824877e-05, -8.187423200332512991e-05, -8.179102401846030624e-05, -8.170769004017995282e-05, -8.162423021454312424e-05, -8.154064468778698244e-05, -8.145693360636288701e-05, -8.137309711690294764e-05, -8.128913536622398137e-05, -8.120504850134469725e-05, -8.112083666947564038e-05, -8.103650001800362000e-05, -8.095203869453105249e-05, -8.086745284682604748e-05, -8.078274262286130349e-05, -8.069790817079929512e-05, -8.061294963897754138e-05, -8.052786717594484522e-05, -8.044266093042845567e-05, -8.035733105133680552e-05, -8.027187768777851193e-05, -8.018630098905061285e-05, -8.010060110462253438e-05, -8.001477818417860504e-05, -7.992883237756431998e-05, -7.984276383482721547e-05, -7.975657270619850513e-05, -7.967025914209606159e-05, -7.958382329312445704e-05, -7.949726531007831080e-05, -7.941058534392694780e-05, -7.932378354583673316e-05, -7.923686006715960676e-05, -7.914981505941763335e-05, -7.906264867434084122e-05, -7.897536106383203980e-05, -7.888795237997165799e-05, -7.880042277503500998e-05, -7.871277240147828201e-05, -7.862500141194078208e-05, -7.853710995924914119e-05, -7.844909819640201259e-05, -7.836096627659212171e-05, -7.827271435319503113e-05, -7.818434257975305371e-05, -7.809585111001389089e-05, -7.800724009789553157e-05, -7.791850969748947769e-05, -7.782966006308081547e-05, -7.774069134913088176e-05, -7.765160371028260371e-05, -7.756239730135902155e-05, -7.747307227736734082e-05, -7.738362879348322496e-05, -7.729406700507331963e-05, -7.720438706768033136e-05, -7.711458913702543992e-05, -7.702467336901344826e-05, -7.693463991971574701e-05, -7.684448894539344860e-05, -7.675422060248252021e-05, -7.666383504759612826e-05, -7.657333243752522127e-05, -7.648271292924202632e-05, -7.639197667988394873e-05, -7.630112384677677391e-05, -7.621015458741924465e-05, -7.611906905948589356e-05, -7.602786742083140700e-05, -7.593654982947396900e-05, -7.584511644361914085e-05, -7.575356742164361158e-05, -7.566190292209933152e-05, -7.557012310371210282e-05, -7.547822812538664808e-05, -7.538621814618938510e-05, -7.529409332536843042e-05, -7.520185382235762442e-05, -7.510949979673969552e-05, -7.501703140828622663e-05, -7.492444881694247628e-05, -7.483175218281271481e-05, -7.473894166618610968e-05, -7.464601742751940535e-05, -7.455297962744083997e-05, -7.445982842675422466e-05, -7.436656398642175895e-05, -7.427318646758532174e-05, -7.417969603156861268e-05, -7.408609283984118367e-05, -7.399237705405917783e-05, -7.389854883604815843e-05, -7.380460834778666964e-05, -7.371055575145081084e-05, -7.361639120935688230e-05, -7.352211488400646087e-05, -7.342772693806482441e-05, -7.333322753436913744e-05, -7.323861683590854256e-05, -7.314389500586737940e-05, -7.304906220756903650e-05, -7.295411860451983446e-05, -7.285906436039300675e-05, -7.276389963901110861e-05, -7.266862460438775883e-05, -7.257323942068969261e-05, -7.247774425224122040e-05, -7.238213926354336407e-05, -7.228642461926302839e-05, -7.219060048421444768e-05, -7.209466702340546764e-05, -7.199862440197856480e-05, -7.190247278525700638e-05, -7.180621233872326115e-05, -7.170984322802275346e-05, -7.161336561896375482e-05, -7.151677967752180206e-05, -7.142008556982152331e-05, -7.132328346216294356e-05, -7.122637352100703759e-05, -7.112935591295987351e-05, -7.103223080481401580e-05, -7.093499836350998186e-05, -7.083765875614063303e-05, -7.074021214997219462e-05, -7.064265871242583793e-05, -7.054499861108322334e-05, -7.044723201368961729e-05, -7.034935908813642316e-05, -7.025138000248710719e-05, -7.015329492495863154e-05, -7.005510402392771559e-05, -6.995680746792804405e-05, -6.985840542565552541e-05, -6.975989806595059230e-05, -6.966128555782422234e-05, -6.956256807043953384e-05, -6.946374577311600061e-05, -6.936481883533025155e-05, -6.926578742671836105e-05, -6.916665171705993834e-05, -6.906741187630234579e-05, -6.896806807454420555e-05, -6.886862048203870634e-05, -6.876906926919822485e-05, -6.866941460657615185e-05, -6.856965666489325177e-05, -6.846979561501906873e-05, -6.836983162797717129e-05, -6.826976487494381080e-05, -6.816959552725263764e-05, -6.806932375637677127e-05, -6.796894973395430604e-05, -6.786847363177143835e-05, -6.776789562176585471e-05, -6.766721587603079756e-05, -6.756643456679754182e-05, -6.746555186646145642e-05, -6.736456794756387099e-05, -6.726348298279608744e-05, -6.716229714499973231e-05, -6.706101060717028042e-05, -6.695962354243913844e-05, -6.685813612409570840e-05, -6.675654852559142636e-05, -6.665486092049956559e-05, -6.655307348255892991e-05, -6.645118638565661491e-05, -6.634919980380977978e-05, -6.624711391121279656e-05, -6.614492888217703625e-05, -6.604264489117771990e-05, -6.594026211283655783e-05, -6.583778072190785830e-05, -6.573520089330105176e-05, -6.563252280208364538e-05, -6.552974662344221879e-05, -6.542687253272615818e-05, -6.532390070542873687e-05, -6.522083131717006630e-05, -6.511766454374565475e-05, -6.501440056106318470e-05, -6.491103954519153246e-05, -6.480758167233871807e-05, -6.470402711885923734e-05, -6.460037606123268943e-05, -6.449662867611225426e-05, -6.439278514026144289e-05, -6.428884563060315764e-05, -6.418481032420204674e-05, -6.408067939824520546e-05, -6.397645303008783464e-05, -6.387213139721198678e-05, -6.376771467723092994e-05, -6.366320304791064206e-05, -6.355859668715696314e-05, -6.345389577299720451e-05, -6.334910048362868038e-05, -6.324421099735585126e-05, -6.313922749263976353e-05, -6.303415014807892689e-05, -6.292897914239180442e-05, -6.282371465446138690e-05, -6.271835686329422350e-05, -6.261290594802399964e-05, -6.250736208793571471e-05, -6.240172546244897181e-05, -6.229599625110214837e-05, -6.219017463359600821e-05, -6.208426078975347762e-05, -6.197825489952254563e-05, -6.187215714300006220e-05, -6.176596770041215489e-05, -6.165968675211969043e-05, -6.155331447862152743e-05, -6.144685106053603065e-05, -6.134029667862865045e-05, -6.123365151379280013e-05, -6.112691574705488397e-05, -6.102008955957296225e-05, -6.091317313264226716e-05, -6.080616664767512472e-05, -6.069907028622943543e-05, -6.059188422998911119e-05, -6.048460866076917102e-05, -6.037724376051944097e-05, -6.026978971130559406e-05, -6.016224669533755642e-05, -6.005461489494961895e-05, -5.994689449260539075e-05, -5.983908567089737225e-05, -5.973118861255112934e-05, -5.962320350040621825e-05, -5.951513051744495073e-05, -5.940696984677144187e-05, -5.929872167161790526e-05, -5.919038617534333837e-05, -5.908196354143799490e-05, -5.897345395350441801e-05, -5.886485759528550083e-05, -5.875617465064488952e-05, -5.864740530357185537e-05, -5.853854973818545547e-05, -5.842960813871569465e-05, -5.832058068953061025e-05, -5.821146757511828110e-05, -5.810226898009041219e-05, -5.799298508918243633e-05, -5.788361608725766115e-05, -5.777416215928801783e-05, -5.766462349038272464e-05, -5.755500026576812077e-05, -5.744529267079278922e-05, -5.733550089092702147e-05, -5.722562511176737787e-05, -5.711566551901198143e-05, -5.700562229851372501e-05, -5.689549563621214956e-05, -5.678528571818612956e-05, -5.667499273063441158e-05, -5.656461685986084883e-05, -5.645415829229826713e-05, -5.634361721451242906e-05, -5.623299381315915372e-05, -5.612228827503173029e-05, -5.601150078704126683e-05, -5.590063153619725597e-05, -5.578968070966049754e-05, -5.567864849467459731e-05, -5.556753507861981117e-05, -5.545634064899203873e-05, -5.534506539338899297e-05, -5.523370949953428983e-05, -5.512227315528085670e-05, -5.501075654856811320e-05, -5.489915986746935758e-05, -5.478748330017269155e-05, -5.467572703496048143e-05, -5.456389126025855380e-05, -5.445197616459175003e-05, -5.433998193658819527e-05, -5.422790876500328648e-05, -5.411575683870555709e-05, -5.400352634665581971e-05, -5.389121747796124745e-05, -5.377883042180645257e-05, -5.366636536750694442e-05, -5.355382250448924785e-05, -5.344120202227085230e-05, -5.332850411050900087e-05, -5.321572895895667845e-05, -5.310287675746611514e-05, -5.298994769601447498e-05, -5.287694196468238877e-05, -5.276385975365973426e-05, -5.265070125324976285e-05, -5.253746665384877081e-05, -5.242415614597576578e-05, -5.231076992025263941e-05, -5.219730816740799593e-05, -5.208377107827774849e-05, -5.197015884380899519e-05, -5.185647165504049663e-05, -5.174270970313132596e-05, -5.162887317934179373e-05, -5.151496227503698507e-05, -5.140097718168711206e-05, -5.128691809087198607e-05, -5.117278519426083126e-05, -5.105857868364160548e-05, -5.094429875090124749e-05, -5.082994558802997304e-05, -5.071551938712576084e-05, -5.060102034037464034e-05, -5.048644864007972128e-05, -5.037180447864116306e-05, -5.025708804856145342e-05, -5.014229954244359919e-05, -5.002743915299749601e-05, -4.991250707301826456e-05, -4.979750349541670990e-05, -4.968242861319878938e-05, -4.956728261947020695e-05, -4.945206570743598628e-05, -4.933677807040576973e-05, -4.922141990177250707e-05, -4.910599139504315193e-05, -4.899049274381724880e-05, -4.887492414179280128e-05, -4.875928578277010744e-05, -4.864357786063153269e-05, -4.852780056937165736e-05, -4.841195410307655488e-05, -4.829603865592822348e-05, -4.818005442220497919e-05, -4.806400159628573170e-05, -4.794788037262922182e-05, -4.783169094580457572e-05, -4.771543351047051533e-05, -4.759910826137994584e-05, -4.748271539337971183e-05, -4.736625510141565903e-05, -4.724972758050613247e-05, -4.713313302579861917e-05, -4.701647163249733706e-05, -4.689974359591930850e-05, -4.678294911147352333e-05, -4.666608837464567868e-05, -4.654916158102247864e-05, -4.643216892629759745e-05, -4.631511060622441495e-05, -4.619798681666721136e-05, -4.608079775358043861e-05, -4.596354361298784271e-05, -4.584622459103815107e-05, -4.572884088393365748e-05, -4.561139268798587552e-05, -4.549388019959445766e-05, -4.537630361523218577e-05, -4.525866313146946062e-05, -4.514095894498000740e-05, -4.502319125249344873e-05, -4.490536025084713626e-05, -4.478746613696471058e-05, -4.466950910783511512e-05, -4.455148936056462433e-05, -4.443340709232882705e-05, -4.431526250037876583e-05, -4.419705578206545342e-05, -4.407878713482468042e-05, -4.396045675615527020e-05, -4.384206484367675854e-05, -4.372361159505528831e-05, -4.360509720806143142e-05, -4.348652188054845727e-05, -4.336788581043138059e-05, -4.324918919573845426e-05, -4.313043223456458245e-05, -4.301161512507544068e-05, -4.289273806553373374e-05, -4.277380125427774211e-05, -4.265480488972651257e-05, -4.253574917038428305e-05, -4.241663429481953049e-05, -4.229746046169639910e-05, -4.217822786975254878e-05, -4.205893671780469134e-05, -4.193958720474821774e-05, -4.182017952956187381e-05, -4.170071389128676053e-05, -4.158119048905725414e-05, -4.146160952207962705e-05, -4.134197118963713681e-05, -4.122227569108982280e-05, -4.110252322587897857e-05, -4.098271399350613867e-05, -4.086284819356416134e-05, -4.074292602571616114e-05, -4.062294768970007609e-05, -4.050291338533369576e-05, -4.038282331249309231e-05, -4.026267767114434705e-05, -4.014247666132199507e-05, -4.002222048313339598e-05, -3.990190933675934377e-05, -3.978154342245832905e-05, -3.966112294054526839e-05, -3.954064809142290550e-05, -3.942011907556031695e-05, -3.929953609349789946e-05, -3.917889934584701080e-05, -3.905820903329486224e-05, -3.893746535658318007e-05, -3.881666851653965428e-05, -3.869581871405588857e-05, -3.857491615009310597e-05, -3.845396102568695998e-05, -3.833295354192541688e-05, -3.821189389997548127e-05, -3.809078230108815631e-05, -3.796961894655031194e-05, -3.784840403773705181e-05, -3.772713777609073399e-05, -3.760582036310428105e-05, -3.748445200035268964e-05, -3.736303288947206476e-05, -3.724156323216367196e-05, -3.712004323019967006e-05, -3.699847308540114252e-05, -3.687685299966438253e-05, -3.675518317496617173e-05, -3.663346381331501148e-05, -3.651169511680448589e-05, -3.638987728759161166e-05, -3.626801052787999232e-05, -3.614609503994687582e-05, -3.602413102614780986e-05, -3.590211868886806281e-05, -3.578005823057588516e-05, -3.565794985380100167e-05, -3.553579376111262917e-05, -3.541359015517804381e-05, -3.529133923868731028e-05, -3.516904121441188978e-05, -3.504669628518290172e-05, -3.492430465387455577e-05, -3.480186652343073516e-05, -3.467938209687024823e-05, -3.455685157723757862e-05, -3.443427516765713598e-05, -3.431165307131054873e-05, -3.418898549141515620e-05, -3.406627263128328740e-05, -3.394351469424576373e-05, -3.382071188371152338e-05, -3.369786440313989962e-05, -3.357497245605103588e-05, -3.345203624599918054e-05, -3.332905597663096957e-05, -3.320603185160981018e-05, -3.308296407467513247e-05, -3.295985284962015655e-05, -3.283669838027000515e-05, -3.271350087053555462e-05, -3.259026052436468651e-05, -3.246697754574622452e-05, -3.234365213873832034e-05, -3.222028450744496026e-05, -3.209687485602215877e-05, -3.197342338868228173e-05, -3.184993030967226752e-05, -3.172639582330603111e-05, -3.160282013394785541e-05, -3.147920344598974506e-05, -3.135554596390615148e-05, -3.123184789220441129e-05, -3.110810943542972689e-05, -3.098433079819217661e-05, -3.086051218514455636e-05, -3.073665380098767865e-05, -3.061275585046970850e-05, -3.048881853839146593e-05, -3.036484206958424376e-05, -3.024082664894223892e-05, -3.011677248140042786e-05, -2.999267977193940824e-05, -2.986854872559094188e-05, -2.974437954741542033e-05, -2.962017244253454338e-05, -2.949592761610892692e-05, -2.937164527334328672e-05, -2.924732561948638091e-05, -2.912296885983575332e-05, -2.899857519971544637e-05, -2.887414484450917762e-05, -2.874967799963719549e-05, -2.862517487056213391e-05, -2.850063566279384384e-05, -2.837606058186697394e-05, -2.825144983337396428e-05, -2.812680362294246774e-05, -2.800212215624053392e-05, -2.787740563897623980e-05, -2.775265427690308366e-05, -2.762786827579730492e-05, -2.750304784148529752e-05, -2.737819317984855317e-05, -2.725330449677422181e-05, -2.712838199820924708e-05, -2.700342589013853328e-05, -2.687843637856756422e-05, -2.675341366955570515e-05, -2.662835796919327871e-05, -2.650326948360710785e-05, -2.637814841896547272e-05, -2.625299498145576254e-05, -2.612780937731187201e-05, -2.600259181281933774e-05, -2.587734249426486865e-05, -2.575206162799197906e-05, -2.562674942037808493e-05, -2.550140607781757677e-05, -2.537603180675480650e-05, -2.525062681366156309e-05, -2.512519130504236830e-05, -2.499972548743387011e-05, -2.487422956741048064e-05, -2.474870375155571254e-05, -2.462314824652354141e-05, -2.449756325895979781e-05, -2.437194899556321118e-05, -2.424630566306281782e-05, -2.412063346820092870e-05, -2.399493261776041415e-05, -2.386920331857025695e-05, -2.374344577745485235e-05, -2.361766020128949214e-05, -2.349184679697768105e-05, -2.336600577142857523e-05, -2.324013733161783648e-05, -2.311424168450943074e-05, -2.298831903711633331e-05, -2.286236959647265125e-05, -2.273639356963855652e-05, -2.261039116370020465e-05, -2.248436258577477632e-05, -2.235830804298786492e-05, -2.223222774250684967e-05, -2.210612189152336545e-05, -2.197999069723096817e-05, -2.185383436688058840e-05, -2.172765310772990923e-05, -2.160144712704840448e-05, -2.147521663214539914e-05, -2.134896183034686073e-05, -2.122268292900109809e-05, -2.109638013548363356e-05, -2.097005365717466508e-05, -2.084370370149238173e-05, -2.071733047587568421e-05, -2.059093418776161656e-05, -2.046451504464074172e-05, -2.033807325400669908e-05, -2.021160902336134423e-05, -2.008512256024231482e-05, -1.995861407220052321e-05, -1.983208376680516073e-05, -1.970553185164354522e-05, -1.957895853432633533e-05, -1.945236402246468781e-05, -1.932574852370366779e-05, -1.919911224569940947e-05, -1.907245539612439136e-05, -1.894577818267281668e-05, -1.881908081303758086e-05, -1.869236349494398676e-05, -1.856562643612655301e-05, -1.843886984433448236e-05, -1.831209392733136021e-05, -1.818529889290033163e-05, -1.805848494882136363e-05, -1.793165230290460130e-05, -1.780480116296747760e-05, -1.767793173684016828e-05, -1.755104423237066724e-05, -1.742413885740200479e-05, -1.729721581980594259e-05, -1.717027532745951762e-05, -1.704331758825103241e-05, -1.691634281007917408e-05, -1.678935120085870987e-05, -1.666234296849720042e-05, -1.653531832092326026e-05, -1.640827746609148748e-05, -1.628122061193169938e-05, -1.615414796640465706e-05, -1.602705973747952419e-05, -1.589995613311627246e-05, -1.577283736129953234e-05, -1.564570363001528621e-05, -1.551855514725644175e-05, -1.539139212102817850e-05, -1.526421475932482376e-05, -1.513702327015790304e-05, -1.500981786156129840e-05, -1.488259874154032826e-05, -1.475536611812761602e-05, -1.462812019936032514e-05, -1.450086119326276115e-05, -1.437358930788012925e-05, -1.424630475125532395e-05, -1.411900773143444493e-05, -1.399169845646636165e-05, -1.386437713440811915e-05, -1.373704397329614569e-05, -1.360969918120838768e-05, -1.348234296618450227e-05, -1.335497553628798720e-05, -1.322759709958302289e-05, -1.310020786411728960e-05, -1.297280803794988726e-05, -1.284539782915661590e-05, -1.271797744577871324e-05, -1.259054709587918572e-05, -1.246310698751972521e-05, -1.233565732873780181e-05, -1.220819832760852099e-05, -1.208073019216517360e-05, -1.195325313046101334e-05, -1.182576735054632594e-05, -1.169827306044552533e-05, -1.157077046821328994e-05, -1.144325978188332904e-05, -1.131574120947380717e-05, -1.118821495901514541e-05, -1.106068123853281989e-05, -1.093314025602433600e-05, -1.080559221951547988e-05, -1.067803733700908305e-05, -1.055047581649027916e-05, -1.042290786595452040e-05, -1.029533369338463476e-05, -1.016775350675604211e-05, -1.004016751404215654e-05, -9.912575923191355523e-06, -9.784978942160646120e-06, -9.657376778898414286e-06, -9.529769641321175514e-06, -9.402157737370197294e-06, -9.274541274960055413e-06, -9.146920461983812717e-06, -9.019295506341238857e-06, -8.891666615915667658e-06, -8.764033998579394411e-06, -8.636397862198981687e-06, -8.508758414612177694e-06, -8.381115863661748458e-06, -8.253470417172350444e-06, -8.125822282955846531e-06, -7.998171668811092559e-06, -7.870518782529102537e-06, -7.742863831870195696e-06, -7.615207024597500025e-06, -7.487548568454151845e-06, -7.359888671168438986e-06, -7.232227540453577176e-06, -7.104565384012995525e-06, -6.976902409517326024e-06, -6.849238824638067181e-06, -6.721574837024625192e-06, -6.593910654309602810e-06, -6.466246484114186480e-06, -6.338582534024982527e-06, -6.210919011627886615e-06, -6.083256124484976689e-06, -5.955594080139845045e-06, -5.827933086117261216e-06, -5.700273349928550625e-06, -5.572615079048502777e-06, -5.444958480949153475e-06, -5.317303763076649804e-06, -5.189651132856701640e-06, -5.062000797694154741e-06, -4.934352964978413457e-06, -4.806707842060298939e-06, -4.679065636285859308e-06, -4.551426554973301558e-06, -4.423790805418328712e-06, -4.296158594899491378e-06, -4.168530130655062896e-06, -4.040905619911247237e-06, -3.913285269887402651e-06, -3.785669287744629309e-06, -3.658057880642242258e-06, -3.530451255714699943e-06, -3.402849620054216308e-06, -3.275253180744547676e-06, -3.147662144837919143e-06, -3.020076719360343947e-06, -2.892497111317011023e-06, -2.764923527669180057e-06, -2.637356175362315691e-06, -2.509795261331370038e-06, -2.382240992449356353e-06, -2.254693575583805468e-06, -2.127153217573734970e-06, -1.999620125212221919e-06, -1.872094505274533662e-06, -1.744576564523453125e-06, -1.617066509657777943e-06, -1.489564547368851438e-06, -1.362070884317482240e-06, -1.234585727110860523e-06, -1.107109282364780835e-06, -9.796417566236993369e-07, -8.521833564229409637e-07, -7.247342882656367276e-07, -5.972947585996322240e-07, -4.698649738740167571e-07, -3.424451404876198727e-07, -2.150354647943705086e-07, -8.763615313137911527e-08, 3.975258819844682920e-08, 1.671305529494643030e-07, 2.944975348711200742e-07, 4.218533277878365482e-07, 5.491977255368413032e-07, 6.765305219969090424e-07, 8.038515110830076574e-07, 9.311604867466400587e-07, 1.058457242970486111e-06, 1.185741573791465115e-06, 1.313013273266980276e-06, 1.440272135492286478e-06, 1.567517954623554461e-06, 1.694750524821399136e-06, 1.821969640302323072e-06, 1.949175095333371716e-06, 2.076366684204070982e-06, 2.203544201249479039e-06, 2.330707440844825865e-06, 2.457856197400177363e-06, 2.584990265383467032e-06, 2.712109439286771350e-06, 2.839213513649358389e-06, 2.966302283052308734e-06, 3.093375542118887749e-06, 3.220433085509179205e-06, 3.347474707943104667e-06, 3.474500204166728102e-06, 3.601509368975256634e-06, 3.728501997207755060e-06, 3.855477883747394028e-06, 3.982436823516172178e-06, 4.109378611497894025e-06, 4.236303042704508027e-06, 4.363209912199081076e-06, 4.490099015090495232e-06, 4.616970146528073297e-06, 4.743823101724596085e-06, 4.870657675922646417e-06, 4.997473664417568799e-06, 5.124270862552157673e-06, 5.251049065716983528e-06, 5.377808069345058288e-06, 5.504547668934794135e-06, 5.631267660016382234e-06, 5.757967838174767654e-06, 5.884647999044335084e-06, 6.011307938309162093e-06, 6.137947451697776000e-06, 6.264566335006064417e-06, 6.391164384063681927e-06, 6.517741394756991118e-06, 6.644297163023714425e-06, 6.770831484847702001e-06, 6.897344156281735541e-06, 7.023834973419665131e-06, 7.150303732391125459e-06, 7.276750229412629689e-06, 7.403174260731467079e-06, 7.529575622648583037e-06, 7.655954111535919577e-06, 7.782309523802739834e-06, 7.908641655918671591e-06, 8.034950304408238836e-06, 8.161235265845754157e-06, 8.287496336877993807e-06, 8.413733314196442133e-06, 8.539945994531973904e-06, 8.666134174705886347e-06, 8.792297651573859453e-06, 8.918436222048895320e-06, 9.044549683124069458e-06, 9.170637831816572406e-06, 9.296700465218767182e-06, 9.422737380492815707e-06, 9.548748374842918148e-06, 9.674733245532492440e-06, 9.800691789906984880e-06, 9.926623805332258649e-06, 1.005252908927390151e-05, 1.017840743923542626e-05, 1.030425865278116100e-05, 1.043008252755917148e-05, 1.055587886124519941e-05, 1.068164745159375380e-05, 1.080738809643259845e-05, 1.093310059363524879e-05, 1.105878474113786512e-05, 1.118444033696229699e-05, 1.131006717915443442e-05, 1.143566506586328693e-05, 1.156123379527943642e-05, 1.168677316566349237e-05, 1.181228297534081148e-05, 1.193776302270179410e-05, 1.206321310619660214e-05, 1.218863302435781553e-05, 1.231402257576742838e-05, 1.243938155907351863e-05, 1.256470977301341948e-05, 1.269000701635775589e-05, 1.281527308796123949e-05, 1.294050778675746779e-05, 1.306571091173116179e-05, 1.319088226194084620e-05, 1.331602163651373331e-05, 1.344112883464028505e-05, 1.356620365559702868e-05, 1.369124589871316504e-05, 1.381625536338787347e-05, 1.394123184911288688e-05, 1.406617515541674008e-05, 1.419108508191579164e-05, 1.431596142830865380e-05, 1.444080399434857922e-05, 1.456561257986624782e-05, 1.469038698476449657e-05, 1.481512700901852786e-05, 1.493983245267065789e-05, 1.506450311585326617e-05, 1.518913879875505142e-05, 1.531373930164427080e-05, 1.543830442486304443e-05, 1.556283396882230199e-05, 1.568732773402438157e-05, 1.581178552102988021e-05, 1.593620713048026283e-05, 1.606059236309267509e-05, 1.618494101966005855e-05, 1.630925290104614635e-05, 1.643352780820794357e-05, 1.655776554216260136e-05, 1.668196590401006327e-05, 1.680612869492780688e-05, 1.693025371616556504e-05, 1.705434076906798234e-05, 1.717838965504138094e-05, 1.730240017557655588e-05, 1.742637213224331006e-05, 1.755030532669088790e-05, 1.767419956064280166e-05, 1.779805463591915926e-05, 1.792187035440945755e-05, 1.804564651806713079e-05, 1.816938292895997289e-05, 1.829307938921488370e-05, 1.841673570104031539e-05, 1.854035166674351809e-05, 1.866392708869708540e-05, 1.878746176936197003e-05, 1.891095551128193740e-05, 1.903440811707840893e-05, 1.915781938947289480e-05, 1.928118913125975684e-05, 1.940451714530085862e-05, 1.952780323457564202e-05, 1.965104720212638526e-05, 1.977424885108031375e-05, 1.989740798467226678e-05, 2.002052440618394826e-05, 2.014359791902187410e-05, 2.026662832665694151e-05, 2.038961543265189991e-05, 2.051255904065124084e-05, 2.063545895440869595e-05, 2.075831497772689780e-05, 2.088112691453509684e-05, 2.100389456882867983e-05, 2.112661774469150783e-05, 2.124929624631836255e-05, 2.137192987796007897e-05, 2.149451844397361850e-05, 2.161706174881643456e-05, 2.173955959701985536e-05, 2.186201179320544866e-05, 2.198441814210743417e-05, 2.210677844851267982e-05, 2.222909251733769359e-05, 2.235136015356884337e-05, 2.247358116228974660e-05, 2.259575534867642861e-05, 2.271788251799727521e-05, 2.283996247560823848e-05, 2.296199502697484607e-05, 2.308397997763958704e-05, 2.320591713323875088e-05, 2.332780629952485016e-05, 2.344964728231166504e-05, 2.357143988752426227e-05, 2.369318392119372662e-05, 2.381487918942993724e-05, 2.393652549844404117e-05, 2.405812265454287645e-05, 2.417967046412435749e-05, 2.430116873369923705e-05, 2.442261726985870551e-05, 2.454401587929667464e-05, 2.466536436880441079e-05, 2.478666254527107360e-05, 2.490791021567851859e-05, 2.502910718712317778e-05, 2.515025326678404512e-05, 2.527134826194441487e-05, 2.539239197998694838e-05, 2.551338422839399603e-05, 2.563432481474227440e-05, 2.575521354672510269e-05, 2.587605023212001206e-05, 2.599683467881090749e-05, 2.611756669478269076e-05, 2.623824608811638158e-05, 2.635887266701097438e-05, 2.647944623975135954e-05, 2.659996661473000061e-05, 2.672043360044212655e-05, 2.684084700548605026e-05, 2.696120663855781189e-05, 2.708151230847325933e-05, 2.720176382413595580e-05, 2.732196099455893169e-05, 2.744210362885979884e-05, 2.756219153625548879e-05, 2.768222452608421464e-05, 2.780220240777348033e-05, 2.792212499086166300e-05, 2.804199208499337807e-05, 2.816180349991931659e-05, 2.828155904549143747e-05, 2.840125853168483789e-05, 2.852090176856538308e-05, 2.864048856631216963e-05, 2.876001873521181988e-05, 2.887949208565911212e-05, 2.899890842815187466e-05, 2.911826757331266650e-05, 2.923756933185696615e-05, 2.935681351461489973e-05, 2.947599993252617909e-05, 2.959512839663507044e-05, 2.971419871811196658e-05, 2.983321070822710178e-05, 2.995216417834548314e-05, 3.007105893997524598e-05, 3.018989480471437890e-05, 3.030867158427273981e-05, 3.042738909049340799e-05, 3.054604713529444204e-05, 3.066464553074360860e-05, 3.078318408900043842e-05, 3.090166262234269115e-05, 3.102008094315645854e-05, 3.113843886396280874e-05, 3.125673619735940879e-05, 3.137497275609590376e-05, 3.149314835301486842e-05, 3.161126280107404688e-05, 3.172931591336768434e-05, 3.184730750307325205e-05, 3.196523738350057523e-05, 3.208310536808570059e-05, 3.220091127036535654e-05, 3.231865490399312817e-05, 3.243633608276035523e-05, 3.255395462053894045e-05, 3.267151033135514988e-05, 3.278900302933207556e-05, 3.290643252871106890e-05, 3.302379864387297072e-05, 3.314110118928537829e-05, 3.325833997955131933e-05, 3.337551482940313976e-05, 3.349262555367737054e-05, 3.360967196733024534e-05, 3.372665388545940490e-05, 3.384357112325102861e-05, 3.396042349602835934e-05, 3.407721081924601139e-05, 3.419393290846394964e-05, 3.431058957936934298e-05, 3.442718064777128560e-05, 3.454370592959553186e-05, 3.466016524090644458e-05, 3.477655839787534314e-05, 3.489288521680177413e-05, 3.500914551410873413e-05, 3.512533910634296785e-05, 3.524146581016979104e-05, 3.535752544239457128e-05, 3.547351781993153682e-05, 3.558944275982474912e-05, 3.570530007924365085e-05, 3.582108959547773295e-05, 3.593681112595777149e-05, 3.605246448822490749e-05, 3.616804949995181608e-05, 3.628356597893753611e-05, 3.639901374310808687e-05, 3.651439261051137904e-05, 3.662970239933832959e-05, 3.674494292789173160e-05, 3.686011401460790443e-05, 3.697521547805101519e-05, 3.709024713691412231e-05, 3.720520881001361220e-05, 3.732010031631076815e-05, 3.743492147488072818e-05, 3.754967210493311886e-05, 3.766435202580788107e-05, 3.777896105696992353e-05, 3.789349901803020377e-05, 3.800796572871485549e-05, 3.812236100888633726e-05, 3.823668467853856036e-05, 3.835093655779688206e-05, 3.846511646691366034e-05, 3.857922422628871825e-05, 3.869325965643927081e-05, 3.880722257801984048e-05, 3.892111281181838791e-05, 3.903493017875647454e-05, 3.914867449988353670e-05, 3.926234559640393642e-05, 3.937594328962000696e-05, 3.948946740100459270e-05, 3.960291775214447410e-05, 3.971629416476204501e-05, 3.982959646072957666e-05, 3.994282446204531779e-05, 4.005597799082769419e-05, 4.016905686936194969e-05, 4.028206092004945298e-05, 4.039498996542799922e-05, 4.050784382819306727e-05, 4.062062233114130557e-05, 4.073332529724273327e-05, 4.084595254958503936e-05, 4.095850391139349805e-05, 4.107097920604729964e-05, 4.118337825705391584e-05, 4.129570088804464782e-05, 4.140794692282017623e-05, 4.152011618530062015e-05, 4.163220849954558125e-05, 4.174422368977512992e-05, 4.185616158031889517e-05, 4.196802199566254980e-05, 4.207980476044248427e-05, 4.219150969942111399e-05, 4.230313663750218014e-05, 4.241468539975135624e-05, 4.252615581134071672e-05, 4.263754769762000965e-05, 4.274886088406091515e-05, 4.286009519627833648e-05, 4.297125046004984789e-05, 4.308232650126645147e-05, 4.319332314597752417e-05, 4.330424022038644708e-05, 4.341507755082562811e-05, 4.352583496377663430e-05, 4.363651228586593630e-05, 4.374710934385956870e-05, 4.385762596468401444e-05, 4.396806197539605046e-05, 4.407841720320315103e-05, 4.418869147545886634e-05, 4.429888461966281570e-05, 4.440899646345603907e-05, 4.451902683464183401e-05, 4.462897556115491695e-05, 4.473884247108263966e-05, 4.484862739266007645e-05, 4.495833015426977346e-05, 4.506795058443745927e-05, 4.517748851185260410e-05, 4.528694376533781821e-05, 4.539631617387000735e-05, 4.550560556657475529e-05, 4.561481177272289501e-05, 4.572393462174911632e-05, 4.583297394322368172e-05, 4.594192956687158293e-05, 4.605080132256875294e-05, 4.615958904034161877e-05, 4.626829255036290020e-05, 4.637691168297107796e-05, 4.648544626864170983e-05, 4.659389613800698690e-05, 4.670226112185101735e-05, 4.681054105111073440e-05, 4.691873575687005522e-05, 4.702684507038111094e-05, 4.713486882303396353e-05, 4.724280684637737507e-05, 4.735065897211356966e-05, 4.745842503209365271e-05, 4.756610485833781093e-05, 4.767369828300593051e-05, 4.778120513841732278e-05, 4.788862525704636709e-05, 4.799595847152254467e-05, 4.810320461462630514e-05, 4.821036351930797905e-05, 4.831743501865950731e-05, 4.842441894593388227e-05, 4.853131513454062799e-05, 4.863812341804600348e-05, 4.874484363016837456e-05, 4.885147560480302851e-05, 4.895801917596857383e-05, 4.906447417787541439e-05, 4.917084044487265738e-05, 4.927711781146770352e-05, 4.938330611234102610e-05, 4.948940518232206097e-05, 4.959541485638533737e-05, 4.970133496969320221e-05, 4.980716535754825075e-05, 4.991290585541337076e-05, 5.001855629893016717e-05, 5.012411652386749639e-05, 5.022958636618809049e-05, 5.033496566199637321e-05, 5.044025424755819244e-05, 5.054545195931471835e-05, 5.065055863385923467e-05, 5.075557410793284931e-05, 5.086049821846690702e-05, 5.096533080253649064e-05, 5.107007169737920493e-05, 5.117472074041442111e-05, 5.127927776919616158e-05, 5.138374262145613589e-05, 5.148811513509890254e-05, 5.159239514817927689e-05, 5.169658249891535514e-05, 5.180067702570916841e-05, 5.190467856709396336e-05, 5.200858696180112462e-05, 5.211240204870807208e-05, 5.221612366685775617e-05, 5.231975165547738071e-05, 5.242328585393208040e-05, 5.252672610176674383e-05, 5.263007223870242894e-05, 5.273332410461248338e-05, 5.283648153954201277e-05, 5.293954438370275783e-05, 5.304251247746985531e-05, 5.314538566139920560e-05, 5.324816377620107910e-05, 5.335084666275831736e-05, 5.345343416212234178e-05, 5.355592611551256415e-05, 5.365832236431305942e-05, 5.376062275009049578e-05, 5.386282711456759874e-05, 5.396493529964043742e-05, 5.406694714737528712e-05, 5.416886250000818890e-05, 5.427068119994144619e-05, 5.437240308976112115e-05, 5.447402801221034972e-05, 5.457555581020785441e-05, 5.467698632684363453e-05, 5.477831940537463622e-05, 5.487955488924291958e-05, 5.498069262204945487e-05, 5.508173244757125290e-05, 5.518267420975824796e-05, 5.528351775273272859e-05, 5.538426292078544124e-05, 5.548490955839423857e-05, 5.558545751019614765e-05, 5.568590662100670268e-05, 5.578625673581560815e-05, 5.588650769978595957e-05, 5.598665935825115355e-05, 5.608671155673266185e-05, 5.618666414091318389e-05, 5.628651695665515947e-05, 5.638626984999565273e-05, 5.648592266714350606e-05, 5.658547525449672804e-05, 5.668492745862007076e-05, 5.678427912624065238e-05, 5.688353010428975307e-05, 5.698268023985727181e-05, 5.708172938020960891e-05, 5.718067737280400458e-05, 5.727952406526186081e-05, 5.737826930538637995e-05, 5.747691294115880390e-05, 5.757545482073391467e-05, 5.767389479245811347e-05, 5.777223270484775695e-05, 5.787046840658433933e-05, 5.796860174655519058e-05, 5.806663257380913261e-05, 5.816456073757449055e-05, 5.826238608727238777e-05, 5.836010847249538034e-05, 5.845772774300267975e-05, 5.855524374876029550e-05, 5.865265633989773480e-05, 5.874996536672473312e-05, 5.884717067975024131e-05, 5.894427212963333833e-05, 5.904126956724571520e-05, 5.913816284362295364e-05, 5.923495180998303208e-05, 5.933163631773881425e-05, 5.942821621847751040e-05, 5.952469136395511395e-05, 5.962106160613749950e-05, 5.971732679715542174e-05, 5.981348678932359056e-05, 5.990954143515786923e-05, 6.000549058732656665e-05, 6.010133409871339555e-05, 6.019707182236848017e-05, 6.029270361153079243e-05, 6.038822931961976970e-05, 6.048364880025699884e-05, 6.057896190721886369e-05, 6.067416849449757885e-05, 6.076926841625362709e-05, 6.086426152683328280e-05, 6.095914768078595917e-05, 6.105392673282143646e-05, 6.114859853784932017e-05, 6.124316295097389107e-05, 6.133761982747398648e-05, 6.143196902281950725e-05, 6.152621039266804317e-05, 6.162034379285999408e-05, 6.171436907943689287e-05, 6.180828610861504582e-05, 6.190209473679935618e-05, 6.199579482060014286e-05, 6.208938621679024666e-05, 6.218286878234517289e-05, 6.227624237443725019e-05, 6.236950685041559993e-05, 6.246266206782319884e-05, 6.255570788439260993e-05, 6.264864415804649752e-05, 6.274147074689339883e-05, 6.283418750924496283e-05, 6.292679430359089156e-05, 6.301929098861563689e-05, 6.311167742319483619e-05, 6.320395346639105685e-05, 6.329611897747127900e-05, 6.338817381588111866e-05, 6.348011784126254083e-05, 6.357195091344956339e-05, 6.366367289246851460e-05, 6.375528363853392663e-05, 6.384678301206573377e-05, 6.393817087366437642e-05, 6.402944708412721319e-05, 6.412061150444553937e-05, 6.421166399579964022e-05, 6.430260441957623310e-05, 6.439343263734362570e-05, 6.448414851086807390e-05, 6.457475190211073247e-05, 6.466524267322737050e-05, 6.475562068656387190e-05, 6.484588580467393504e-05, 6.493603789029868975e-05, 6.502607680636168287e-05, 6.511600241600687953e-05, 6.520581458255781586e-05, 6.529551316953426858e-05, 6.538509804066445228e-05, 6.547456905986039446e-05, 6.556392609123548609e-05, 6.565316899909975175e-05, 6.574229764795606846e-05, 6.583131190251697087e-05, 6.592021162768466123e-05, 6.600899668854626602e-05, 6.609766695041153909e-05, 6.618622227877197367e-05, 6.627466253931753976e-05, 6.636298759794865101e-05, 6.645119732075248841e-05, 6.653929157401900591e-05, 6.662727022423736603e-05, 6.671513313809614317e-05, 6.680288018247923076e-05, 6.689051122448640043e-05, 6.697802613138918856e-05, 6.706542477068739671e-05, 6.715270701006488335e-05, 6.723987271740655865e-05, 6.732692176080928078e-05, 6.741385400856331602e-05, 6.750066932914790708e-05, 6.758736759126794625e-05, 6.767394866381297902e-05, 6.776041241587517469e-05, 6.784675871676386827e-05, 6.793298743596301907e-05, 6.801909844318631529e-05, 6.810509160833434804e-05, 6.819096680151435737e-05, 6.827672389303641044e-05, 6.836236275341341507e-05, 6.844788325335766390e-05, 6.853328526379700246e-05, 6.861856865585078710e-05, 6.870373330084212282e-05, 6.878877907031432965e-05, 6.887370583599100333e-05, 6.895851346981198373e-05, 6.904320184392949238e-05, 6.912777083068895561e-05, 6.921222030264453581e-05, 6.929655013255545863e-05, 6.938076019338277397e-05, 6.946485035830458898e-05, 6.954882050069292041e-05, 6.963267049412604089e-05, 6.971640021240326477e-05, 6.980000952950761093e-05, 6.988349831964003639e-05, 6.996686645721519448e-05, 7.005011381684416881e-05, 7.013324027334850021e-05, 7.021624570175643263e-05, 7.029912997730416004e-05, 7.038189297543174703e-05, 7.046453457179811797e-05, 7.054705464225891217e-05, 7.062945306288208281e-05, 7.071172970994314005e-05, 7.079388445992313165e-05, 7.087591718952269699e-05, 7.095782777564012549e-05, 7.103961609538663033e-05, 7.112128202608275702e-05, 7.120282544525811236e-05, 7.128424623064884367e-05, 7.136554426021140814e-05, 7.144671941210164773e-05, 7.152777156468889739e-05, 7.160870059655286793e-05, 7.168950638648019015e-05, 7.177018881347952588e-05, 7.185074775675892177e-05, 7.193118309574151660e-05, 7.201149471006143489e-05, 7.209168247956430193e-05, 7.217174628430382847e-05, 7.225168600455631200e-05, 7.233150152080270671e-05, 7.241119271372493721e-05, 7.249075946423980696e-05, 7.257020165346136291e-05, 7.264951916271631825e-05, 7.272871187355558565e-05, 7.280777966773196975e-05, 7.288672242721498011e-05, 7.296554003418723980e-05, 7.304423237104184260e-05, 7.312279932039610888e-05, 7.320124076507415702e-05, 7.327955658810329841e-05, 7.335774667274637384e-05, 7.343581090246665243e-05, 7.351374916094172293e-05, 7.359156133207486435e-05, 7.366924729997334834e-05, 7.374680694896298104e-05, 7.382424016358508088e-05, 7.390154682859637015e-05, 7.397872682896535650e-05, 7.405578004989081856e-05, 7.413270637676202927e-05, 7.420950569521002512e-05, 7.428617789106738221e-05, 7.436272285038336802e-05, 7.443914045943413288e-05, 7.451543060470574220e-05, 7.459159317289038179e-05, 7.466762805091872127e-05, 7.474353512592490792e-05, 7.481931428525967194e-05, 7.489496541650608806e-05, 7.497048840744013768e-05, 7.504588314608024336e-05, 7.512114952064905069e-05, 7.519628741958718412e-05, 7.527129673156812760e-05, 7.534617734546228331e-05, 7.542092915037021600e-05, 7.549555203561734041e-05, 7.557004589073803766e-05, 7.564441060548633472e-05, 7.571864606984913160e-05, 7.579275217401203549e-05, 7.586672880839106007e-05, 7.594057586362841072e-05, 7.601429323057658737e-05, 7.608788080031134073e-05, 7.616133846412873141e-05, 7.623466611354229739e-05, 7.630786364029586123e-05, 7.638093093634444803e-05, 7.645386789386354189e-05, 7.652667440526383100e-05, 7.659935036315633700e-05, 7.667189566038430410e-05, 7.674431019001864539e-05, 7.681659384534289959e-05, 7.688874651986426275e-05, 7.696076810731376447e-05, 7.703265850164044029e-05, 7.710441759702562963e-05, 7.717604528786333818e-05, 7.724754146877366840e-05, 7.731890603459921462e-05, 7.739013888040578129e-05, 7.746123990147937431e-05, 7.753220899333869648e-05, 7.760304605171586224e-05, 7.767375097257012639e-05, 7.774432365208456370e-05, 7.781476398666624513e-05, 7.788507187294230758e-05, 7.795524720777449572e-05, 7.802528988823910429e-05, 7.809519981163994787e-05, 7.816497687550532508e-05, 7.823462097758522680e-05, 7.830413201586450917e-05, 7.837350988854320185e-05, 7.844275449404936929e-05, 7.851186573103760644e-05, 7.858084349838654508e-05, 7.864968769519827105e-05, 7.871839822080992522e-05, 7.878697497477521786e-05, 7.885541785687674786e-05, 7.892372676712325157e-05, 7.899190160575072768e-05, 7.905994227321772093e-05, 7.912784867021932186e-05, 7.919562069766750210e-05, 7.926325825670459916e-05, 7.933076124870028060e-05, 7.939812957524802046e-05, 7.946536313817779789e-05, 7.953246183954154180e-05, 7.959942558160909218e-05, 7.966625426689655199e-05, 7.973294779813602437e-05, 7.979950607828699676e-05, 7.986592901054711516e-05, 7.993221649833274979e-05, 7.999836844529176162e-05, 8.006438475530125258e-05, 8.013026533246313395e-05, 8.019601008111800411e-05, 8.026161890582889904e-05, 8.032709171137974741e-05, 8.039242840280063241e-05, 8.045762888534055120e-05, 8.052269306447673906e-05, 8.058762084592620257e-05, 8.065241213562888739e-05, 8.071706683974629590e-05, 8.078158486468773843e-05, 8.084596611708088363e-05, 8.091021050378390152e-05, 8.097431793189720001e-05, 8.103828830873137314e-05, 8.110212154184780447e-05, 8.116581753902768601e-05, 8.122937620828280599e-05, 8.129279745786808500e-05, 8.135608119625220764e-05, 8.141922733214373824e-05, 8.148223577448878980e-05, 8.154510643245640089e-05, 8.160783921544772417e-05, 8.167043403310705820e-05, 8.173289079529037846e-05, 8.179520941210637443e-05, 8.185738979388473661e-05, 8.191943185118983109e-05, 8.198133549481914097e-05, 8.204310063580265650e-05, 8.210472718540023235e-05, 8.216621505511308014e-05, 8.222756415666770870e-05, 8.228877440202265971e-05, 8.234984570338215501e-05, 8.241077797316653862e-05, 8.247157112403759283e-05, 8.253222506889741335e-05, 8.259273972087255282e-05, 8.265311499332713969e-05, 8.271335079985866340e-05, 8.277344705429618538e-05, 8.283340367071192654e-05, 8.289322056340326945e-05, 8.295289764690555196e-05, 8.301243483598846223e-05, 8.307183204565660791e-05, 8.313108919114687342e-05, 8.319020618793899092e-05, 8.324918295173967028e-05, 8.330801939849380704e-05, 8.336671544438177192e-05, 8.342527100581899064e-05, 8.348368599945403307e-05, 8.354196034217922480e-05, 8.360009395111441129e-05, 8.365808674361869428e-05, 8.371593863728636609e-05, 8.377364954994559498e-05, 8.383121939966921299e-05, 8.388864810475814119e-05, 8.394593558375201489e-05, 8.400308175542765213e-05, 8.406008653879834904e-05, 8.411694985311186045e-05, 8.417367161786087600e-05, 8.423025175276654031e-05, 8.428669017779023007e-05, 8.434298681313085713e-05, 8.439914157922443481e-05, 8.445515439674186880e-05, 8.451102518659973147e-05, 8.456675386994435119e-05, 8.462234036816211223e-05, 8.467778460287799110e-05, 8.473308649595188383e-05, 8.478824596949004427e-05, 8.484326294583115213e-05, 8.489813734754537782e-05, 8.495286909745631047e-05, 8.500745811861588571e-05, 8.506190433431460435e-05, 8.511620766808940632e-05, 8.517036804370900689e-05, 8.522438538518311234e-05, 8.527825961676027873e-05, 8.533199066292665143e-05, 8.538557844841453040e-05, 8.543902289819083691e-05, 8.549232393745417272e-05, 8.554548149165810327e-05, 8.559849548648571958e-05, 8.565136584785985690e-05, 8.570409250195396380e-05, 8.575667537516532240e-05, 8.580911439413978171e-05, 8.586140948576793583e-05, 8.591356057717323838e-05, 8.596556759571938864e-05, 8.601743046902109223e-05, 8.606914912491572280e-05, 8.612072349149888385e-05, 8.617215349709737144e-05, 8.622343907027836280e-05, 8.627458013986009575e-05, 8.632557663488737922e-05, 8.637642848465292499e-05, 8.642713561869603308e-05, 8.647769796679034024e-05, 8.652811545895054202e-05, 8.657838802544261139e-05, 8.662851559675722221e-05, 8.667849810364390160e-05, 8.672833547708384361e-05, 8.677802764830324484e-05, 8.682757454876987571e-05, 8.687697611019406976e-05, 8.692623226452541685e-05, 8.697534294396309018e-05, 8.702430808094135863e-05, 8.707312760813742014e-05, 8.712180145848044124e-05, 8.717032956512747418e-05, 8.721871186148606259e-05, 8.726694828121078556e-05, 8.731503875819222589e-05, 8.736298322656647040e-05, 8.741078162071265695e-05, 8.745843387525054850e-05, 8.750593992505000635e-05, 8.755329970521766802e-05, 8.760051315110385900e-05, 8.764758019831065652e-05, 8.769450078267047660e-05, 8.774127484026659248e-05, 8.778790230743019384e-05, 8.783438312072951756e-05, 8.788071721697900932e-05, 8.792690453323753460e-05, 8.797294500680733517e-05, 8.801883857523310753e-05, 8.806458517631032411e-05, 8.811018474807172146e-05, 8.815563722879742395e-05, 8.820094255701167762e-05, 8.824610067148122388e-05, 8.829111151122353944e-05, 8.833597501549477458e-05, 8.838069112379793885e-05, 8.842525977588094953e-05, 8.846968091173642830e-05, 8.851395447160031896e-05, 8.855808039595989688e-05, 8.860205862554108391e-05, 8.864588910131736591e-05, 8.868957176450746171e-05, 8.873310655657364260e-05, 8.877649341922961993e-05, 8.881973229442855107e-05, 8.886282312437125230e-05, 8.890576585150459957e-05, 8.894856041852057982e-05, 8.899120676835585734e-05, 8.903370484419852291e-05, 8.907605458947836304e-05, 8.911825594786595202e-05, 8.916030886328948414e-05, 8.920221327991593562e-05, 8.924396914215752927e-05, 8.928557639468023182e-05, 8.932703498238925277e-05, 8.936834485043855828e-05, 8.940950594422946167e-05, 8.945051820940678805e-05, 8.949138159186855086e-05, 8.953209603775577391e-05, 8.957266149345024164e-05, 8.961307790559187348e-05, 8.965334522106080742e-05, 8.969346338698297005e-05, 8.973343235074017325e-05, 8.977325205994714263e-05, 8.981292246247996427e-05, 8.985244350645380440e-05, 8.989181514023319574e-05, 8.993103731242832412e-05, 8.997010997190429840e-05, 9.000903306776072684e-05, 9.004780654935746684e-05, 9.008643036629535332e-05, 9.012490446842243283e-05, 9.016322880584206798e-05, 9.020140332889419431e-05, 9.023942798817228802e-05, 9.027730273452159060e-05, 9.031502751903016421e-05, 9.035260229303294379e-05, 9.039002700812175247e-05, 9.042730161612296696e-05, 9.046442606912444642e-05, 9.050140031945441764e-05, 9.053822431969025706e-05, 9.057489802266457588e-05, 9.061142138144754753e-05, 9.064779434936380770e-05, 9.068401687998943212e-05, 9.072008892714425227e-05, 9.075601044489662586e-05, 9.079178138757105338e-05, 9.082740170972984151e-05, 9.086287136618951524e-05, 9.089819031201898825e-05, 9.093335850253135013e-05, 9.096837589328977524e-05, 9.100324244010695352e-05, 9.103795809904294918e-05, 9.107252282641177369e-05, 9.110693657877204810e-05, 9.114119931293260019e-05, 9.117531098595261358e-05, 9.120927155513979814e-05, 9.124308097804980722e-05, 9.127673921249312235e-05, 9.131024621652414342e-05, 9.134360194844898142e-05, 9.137680636682285636e-05, 9.140985943044975840e-05, 9.144276109838777407e-05, 9.147551132993915219e-05, 9.150811008465919440e-05, 9.154055732235168792e-05, 9.157285300307062672e-05, 9.160499708711878849e-05, 9.163698953505264072e-05, 9.166883030767518489e-05, 9.170051936604013069e-05, 9.173205667145161140e-05, 9.176344218546402128e-05, 9.179467586988009108e-05, 9.182575768675750171e-05, 9.185668759839947875e-05, 9.188746556736128413e-05, 9.191809155644831879e-05, 9.194856552871479450e-05, 9.197888744747059146e-05, 9.200905727627044337e-05, 9.203907497892139134e-05, 9.206894051948150994e-05, 9.209865386225886364e-05, 9.212821497181086989e-05, 9.215762381295020795e-05, 9.218688035073541349e-05, 9.221598455047754644e-05, 9.224493637773828003e-05, 9.227373579832972466e-05, 9.230238277831372313e-05, 9.233087728400780024e-05, 9.235921928197455113e-05, 9.238740873903089764e-05, 9.241544562224280289e-05, 9.244332989892685686e-05, 9.247106153665497915e-05, 9.249864050324677533e-05, 9.252606676676904910e-05, 9.255334029554793172e-05, 9.258046105815543800e-05, 9.260742902341418249e-05, 9.263424416040362726e-05, 9.266090643844583814e-05, 9.268741582712197822e-05, 9.271377229626043574e-05, 9.273997581594179795e-05, 9.276602635649650649e-05, 9.279192388851197244e-05, 9.281766838281709940e-05, 9.284325981050261221e-05, 9.286869814290422476e-05, 9.289398335160942979e-05, 9.291911540846320449e-05, 9.294409428555334670e-05, 9.296891995522311937e-05, 9.299359239007060009e-05, 9.301811156294084769e-05, 9.304247744693124197e-05, 9.306669001539484467e-05, 9.309074924192889346e-05, 9.311465510038968252e-05, 9.313840756488153086e-05, 9.316200660975957411e-05, 9.318545220963580893e-05, 9.320874433936689575e-05, 9.323188297406462136e-05, 9.325486808909508568e-05, 9.327769966007265739e-05, 9.330037766286374153e-05, 9.332290207359054707e-05, 9.334527286862120716e-05, 9.336749002457842559e-05, 9.338955351833954461e-05, 9.341146332702990416e-05, 9.343321942802842550e-05, 9.345482179896607980e-05, 9.347627041772370619e-05, 9.349756526243880152e-05, 9.351870631149653511e-05, 9.353969354353560339e-05, 9.356052693744694242e-05, 9.358120647237250819e-05, 9.360173212770668604e-05, 9.362210388309829645e-05, 9.364232171844482169e-05, 9.366238561389740667e-05, 9.368229554985894804e-05, 9.370205150698389092e-05, 9.372165346618100714e-05, 9.374110140860926173e-05, 9.376039531567966964e-05, 9.377953516905654255e-05, 9.379852095065473769e-05, 9.381735264264224640e-05, 9.383603022744041097e-05, 9.385455368772113282e-05, 9.387292300640817351e-05, 9.389113816667894372e-05, 9.390919915196209086e-05, 9.392710594593755332e-05, 9.394485853254055843e-05, 9.396245689595599817e-05, 9.397990102062115324e-05, 9.399719089122592346e-05, 9.401432649271201458e-05, 9.403130781027507963e-05, 9.404813482936137138e-05, 9.406480753566898926e-05, 9.408132591514942428e-05, 9.409768995400610890e-05, 9.411389963869329226e-05, 9.412995495592072924e-05, 9.414585589264748704e-05, 9.416160243608573985e-05, 9.417719457369984727e-05, 9.419263229320684226e-05, 9.420791558257446592e-05, 9.422304443002645308e-05, 9.423801882403297771e-05, 9.425283875332213191e-05, 9.426750420687091353e-05, 9.428201517390849226e-05, 9.429637164391835096e-05, 9.431057360663594111e-05, 9.432462105204457632e-05, 9.433851397038594915e-05, 9.435225235215042748e-05, 9.436583618808030711e-05, 9.437926546917348451e-05, 9.439254018667452570e-05, 9.440566033208545405e-05, 9.441862589715757810e-05, 9.443143687389401238e-05, 9.444409325455256404e-05, 9.445659503164191106e-05, 9.446894219792021990e-05, 9.448113474640211149e-05, 9.449317267035187140e-05, 9.450505596328587579e-05, 9.451678461897455646e-05, 9.452835863143729160e-05, 9.453977799494709495e-05, 9.455104270403016855e-05, 9.456215275346365303e-05, 9.457310813827520749e-05, 9.458390885374878289e-05, 9.459455489541459313e-05, 9.460504625905994357e-05, 9.461538294072126211e-05, 9.462556493668712143e-05, 9.463559224350067843e-05, 9.464546485795261336e-05, 9.465518277708815005e-05, 9.466474599820525338e-05, 9.467415451885202726e-05, 9.468340833682892363e-05, 9.469250745018839013e-05, 9.470145185723409758e-05, 9.471024155652291870e-05, 9.471887654686281385e-05, 9.472735682731230251e-05, 9.473568239718341776e-05, 9.474385325603896862e-05, 9.475186940369331257e-05, 9.475973084021390054e-05, 9.476743756591817338e-05, 9.477498958137604195e-05, 9.478238688740857256e-05, 9.478962948508905760e-05, 9.479671737574114530e-05, 9.480365056094210586e-05, 9.481042904251918587e-05, 9.481705282255145141e-05, 9.482352190336923242e-05, 9.482983628755440729e-05, 9.483599597794113473e-05, 9.484200097761402411e-05, 9.484785128990882671e-05, 9.485354691841366896e-05, 9.485908786696714155e-05, 9.486447413965937007e-05, 9.486970574083238093e-05, 9.487478267507855638e-05, 9.487970494724162383e-05, 9.488447256241681850e-05, 9.488908552595051748e-05, 9.489354384343938595e-05, 9.489784752073303342e-05, 9.490199656393038174e-05, 9.490599097938171144e-05, 9.490983077368879731e-05, 9.491351595370406814e-05, 9.491704652653101327e-05, 9.492042249952439945e-05, 9.492364388028872585e-05, 9.492671067668013497e-05, 9.492962289680572144e-05, 9.493238054902271891e-05, 9.493498364193993656e-05, 9.493743218441587535e-05, 9.493972618556076088e-05, 9.494186565473428010e-05, 9.494385060154745160e-05, 9.494568103586209702e-05, 9.494735696779004147e-05, 9.494887840769291026e-05, 9.495024536618463607e-05, 9.495145785412775915e-05, 9.495251588263592098e-05, 9.495341946307332215e-05, 9.495416860705449200e-05, 9.495476332644293331e-05, 9.495520363335380578e-05, 9.495548954015181175e-05, 9.495562105945191456e-05, 9.495559820411932496e-05, 9.495542098726841688e-05, 9.495508942226488236e-05, 9.495460352272312938e-05, 9.495396330250836900e-05, 9.495316877573519235e-05, 9.495221995676816689e-05, 9.495111686022119951e-05, 9.494985950095920343e-05, 9.494844789409521155e-05, 9.494688205499261259e-05, 9.494516199926451416e-05, 9.494328774277334968e-05, 9.494125930163078357e-05, 9.493907669219855147e-05, 9.493673993108768777e-05, 9.493424903515799702e-05, 9.493160402151915175e-05, 9.492880490752974372e-05, 9.492585171079752793e-05, 9.492274444918037126e-05, 9.491948314078335223e-05, 9.491606780396274546e-05, 9.491249845732221339e-05, 9.490877511971516445e-05, 9.490489781024373658e-05, 9.490086654825882436e-05, 9.489668135336011968e-05, 9.489234224539616592e-05, 9.488784924446424954e-05, 9.488320237091029167e-05, 9.487840164532838731e-05, 9.487344708856164561e-05, 9.486833872170152577e-05, 9.486307656608805388e-05, 9.485766064330899625e-05, 9.485209097520086224e-05, 9.484636758384847066e-05, 9.484049049158523427e-05, 9.483445972099147938e-05, 9.482827529489687164e-05, 9.482193723637853233e-05, 9.481544556876136357e-05, 9.480880031561823807e-05, 9.480200150077069032e-05, 9.479504914828674816e-05, 9.478794328248329093e-05, 9.478068392792366424e-05, 9.477327110942001100e-05, 9.476570485203140114e-05, 9.475798518106427889e-05, 9.475011212207289644e-05, 9.474208570085919194e-05, 9.473390594347086511e-05, 9.472557287620467041e-05, 9.471708652560287994e-05, 9.470844691845665790e-05, 9.469965408180241507e-05, 9.469070804292493938e-05, 9.468160882935497001e-05, 9.467235646887041715e-05, 9.466295098949626709e-05, 9.465339241950375556e-05, 9.464368078741108598e-05, 9.463381612198271120e-05, 9.462379845222908953e-05, 9.461362780740946302e-05, 9.460330421702653134e-05, 9.459282771083068011e-05, 9.458219831881889677e-05, 9.457141607123287317e-05, 9.456048099856189228e-05, 9.454939313154065979e-05, 9.453815250114981910e-05, 9.452675913861608684e-05, 9.451521307541130420e-05, 9.450351434325353470e-05, 9.449166297410752492e-05, 9.447965900018173659e-05, 9.446750245393102988e-05, 9.445519336805627047e-05, 9.444273177550239150e-05, 9.443011770946016894e-05, 9.441735120336695343e-05, 9.440443229090328219e-05, 9.439136100599558946e-05, 9.437813738281548826e-05, 9.436476145577810343e-05, 9.435123325954636775e-05, 9.433755282902469294e-05, 9.432372019936437711e-05, 9.430973540596084004e-05, 9.429559848445294554e-05, 9.428130947072460067e-05, 9.426686840090600259e-05, 9.425227531136797356e-05, 9.423753023872875076e-05, 9.422263321984981216e-05, 9.420758429183434502e-05, 9.419238349203383248e-05, 9.417703085804005753e-05, 9.416152642768969730e-05, 9.414587023906372681e-05, 9.413006233048702590e-05, 9.411410274052575003e-05, 9.409799150799269714e-05, 9.408172867194164262e-05, 9.406531427167048355e-05, 9.404874834672117092e-05, 9.403203093687614530e-05, 9.401516208216466591e-05, 9.399814182285690166e-05, 9.398097019946486633e-05, 9.396364725274519681e-05, 9.394617302369641550e-05, 9.392854755356002804e-05, 9.391077088381989994e-05, 9.389284305620166022e-05, 9.387476411267447682e-05, 9.385653409544995884e-05, 9.383815304697857868e-05, 9.381962100995804748e-05, 9.380093802732529203e-05, 9.378210414225813531e-05, 9.376311939817799342e-05, 9.374398383874719216e-05, 9.372469750787036299e-05, 9.370526044969320972e-05, 9.368567270860345716e-05, 9.366593432922841174e-05, 9.364604535643829535e-05, 9.362600583534440226e-05, 9.360581581129842144e-05, 9.358547532989472699e-05, 9.356498443696533655e-05, 9.354434317858577959e-05, 9.352355160107156016e-05, 9.350260975097836021e-05, 9.348151767510320509e-05, 9.346027542048337934e-05, 9.343888303439473264e-05, 9.341734056435559651e-05, 9.339564805812317929e-05, 9.337380556369536864e-05, 9.335181312931047407e-05, 9.332967080344394721e-05, 9.330737863481372151e-05, 9.328493667237656658e-05, 9.326234496532884719e-05, 9.323960356310556099e-05, 9.321671251538306258e-05, 9.319367187207330371e-05, 9.317048168332998611e-05, 9.314714199954791094e-05, 9.312365287135507773e-05, 9.310001434962303845e-05, 9.307622648546106997e-05, 9.305228933021487297e-05, 9.302820293547085458e-05, 9.300396735305340432e-05, 9.297958263502490762e-05, 9.295504883368734504e-05, 9.293036600157695258e-05, 9.290553419147116055e-05, 9.288055345638689955e-05, 9.285542384957375637e-05, 9.283014542452321691e-05, 9.280471823496332638e-05, 9.277914233485702242e-05, 9.275341777840781358e-05, 9.272754462005553737e-05, 9.270152291447695658e-05, 9.267535271658519007e-05, 9.264903408153227422e-05, 9.262256706470223754e-05, 9.259595172172356906e-05, 9.256918810845357864e-05, 9.254227628099074340e-05, 9.251521629566913756e-05, 9.248800820905650802e-05, 9.246065207795874671e-05, 9.243314795942056817e-05, 9.240549591071671399e-05, 9.237769598936157510e-05, 9.234974825310530218e-05, 9.232165275992964507e-05, 9.229340956805872698e-05, 9.226501873594535649e-05, 9.223648032228083952e-05, 9.220779438599197074e-05, 9.217896098623654761e-05, 9.214998018241304695e-05, 9.212085203415210034e-05, 9.209157660131681944e-05, 9.206215394400733604e-05, 9.203258412255891827e-05, 9.200286719753630567e-05, 9.197300322974536434e-05, 9.194299228022233977e-05, 9.191283441023523923e-05, 9.188252968128936119e-05, 9.185207815512248417e-05, 9.182147989370628976e-05, 9.179073495924601023e-05, 9.175984341417827372e-05, 9.172880532117510220e-05, 9.169762074314181087e-05, 9.166628974321257642e-05, 9.163481238476111647e-05, 9.160318873139043031e-05, 9.157141884693312413e-05, 9.153950279545887848e-05, 9.150744064126745516e-05, 9.147523244889166523e-05, 9.144287828309743678e-05, 9.141037820887862428e-05, 9.137773229146481488e-05, 9.134494059631628683e-05, 9.131200318912430767e-05, 9.127892013581248945e-05, 9.124569150253644993e-05, 9.121231735567885237e-05, 9.117879776185867544e-05, 9.114513278792277001e-05, 9.111132250094999266e-05, 9.107736696824956580e-05, 9.104326625736286667e-05, 9.100902043605671877e-05, 9.097462957233370538e-05, 9.094009373442418710e-05, 9.090541299078917499e-05, 9.087058741012034411e-05, 9.083561706133566963e-05, 9.080050201358640636e-05, 9.076524233625250803e-05, 9.072983809894254593e-05, 9.069428937149480669e-05, 9.065859622397868817e-05, 9.062275872668689326e-05, 9.058677695014659707e-05, 9.055065096511151880e-05, 9.051438084256414429e-05, 9.047796665371565827e-05, 9.044140847000639160e-05, 9.040470636310149802e-05, 9.036786040489722897e-05, 9.033087066751753188e-05, 9.029373722331342678e-05, 9.025646014486516115e-05, 9.021903950497611128e-05, 9.018147537667982956e-05, 9.014376783324167084e-05, 9.010591694814528048e-05, 9.006792279510709564e-05, 9.002978544807012460e-05, 8.999150498119970487e-05, 8.995308146889258334e-05, 8.991451498576966573e-05, 8.987580560667846952e-05, 8.983695340669278523e-05, 8.979795846111393674e-05, 8.975882084546214833e-05, 8.971954063549522011e-05, 8.968011790718478395e-05, 8.964055273673455875e-05, 8.960084520057305917e-05, 8.956099537534989582e-05, 8.952100333794247016e-05, 8.948086916545703164e-05, 8.944059293521620935e-05, 8.940017472477264587e-05, 8.935961461190394220e-05, 8.931891267460453975e-05, 8.927806899110564257e-05, 8.923708363985019944e-05, 8.919595669951155205e-05, 8.915468824898667237e-05, 8.911327836738979294e-05, 8.907172713406777539e-05, 8.903003462858669352e-05, 8.898820093073119626e-05, 8.894622612051471277e-05, 8.890411027817321824e-05, 8.886185348415828148e-05, 8.881945581915462896e-05, 8.877691736406333970e-05, 8.873423820000507078e-05, 8.869141840832738921e-05, 8.864845807059798218e-05, 8.860535726860587673e-05, 8.856211608436410964e-05, 8.851873460010146035e-05, 8.847521289827273735e-05, 8.843155106155494284e-05, 8.838774917283819248e-05, 8.834380731524399779e-05, 8.829972557210964007e-05, 8.825550402698890224e-05, 8.821114276366163695e-05, 8.816664186612558078e-05, 8.812200141859903775e-05, 8.807722150552167880e-05, 8.803230221154714221e-05, 8.798724362155477003e-05, 8.794204582064090738e-05, 8.789670889412136900e-05, 8.785123292753107334e-05, 8.780561800662576373e-05, 8.775986421737408014e-05, 8.771397164596880780e-05, 8.766794037882011446e-05, 8.762177050255537424e-05, 8.757546210402084811e-05, 8.752901527028229378e-05, 8.748243008861776929e-05, 8.743570664652833952e-05, 8.738884503173135413e-05, 8.734184533216054244e-05, 8.729470763596964547e-05, 8.724743203152313250e-05, 8.720001860740791044e-05, 8.715246745242605968e-05, 8.710477865559599958e-05, 8.705695230615246140e-05, 8.700898849354837209e-05, 8.696088730744668210e-05, 8.691264883773253559e-05, 8.686427317450402753e-05, 8.681576040807546996e-05, 8.676711062897611798e-05, 8.671832392795290737e-05, 8.666940039596114404e-05, 8.662034012417735177e-05, 8.657114320399072061e-05, 8.652180972700541082e-05, 8.647233978504129820e-05, 8.642273347012661511e-05, 8.637299087450759987e-05, 8.632311209065061095e-05, 8.627309721122342447e-05, 8.622294632911548168e-05, 8.617265953743002852e-05, 8.612223692947605180e-05, 8.607167859878329550e-05, 8.602098463909121538e-05, 8.597015514435251619e-05, 8.591919020873405976e-05, 8.586808992660889604e-05, 8.581685439256686121e-05, 8.576548370141549925e-05, 8.571397794816182022e-05, 8.566233722803287304e-05, 8.561056163646724800e-05, 8.555865126910815145e-05, 8.550660622181438335e-05, 8.545442659066227527e-05, 8.540211247192605278e-05, 8.534966396209873346e-05, 8.529708115788429349e-05, 8.524436415618780150e-05, 8.519151305414024672e-05, 8.513852794906633819e-05, 8.508540893851007842e-05, 8.503215612022459896e-05, 8.497876959216396110e-05, 8.492524945250405394e-05, 8.487159579962391892e-05, 8.481780873210625134e-05, 8.476388834874957047e-05, 8.470983474856046754e-05, 8.465564803074542000e-05, 8.460132829473453555e-05, 8.454687564014983924e-05, 8.449229016683044047e-05, 8.443757197482041710e-05, 8.438272116437148522e-05, 8.432773783594295857e-05, 8.427262209020295464e-05, 8.421737402801976176e-05, 8.416199375047510702e-05, 8.410648135885739353e-05, 8.405083695465183423e-05, 8.399506063956408742e-05, 8.393915251549861347e-05, 8.388311268456062630e-05, 8.382694124906843978e-05, 8.377063831154319491e-05, 8.371420397471129925e-05, 8.365763834150645982e-05, 8.360094151506008791e-05, 8.354411359871559699e-05, 8.348715469601826543e-05, 8.343006491071783856e-05, 8.337284434676797305e-05, 8.331549310832896094e-05, 8.325801129975721291e-05, 8.320039902561996272e-05, 8.314265639068578050e-05, 8.308478349992576533e-05, 8.302678045851462948e-05, 8.296864737183214848e-05, 8.291038434545284770e-05, 8.285199148516191297e-05, 8.279346889694345413e-05, 8.273481668698416420e-05, 8.267603496167437644e-05, 8.261712382759964831e-05, 8.255808339155392089e-05, 8.249891376052923258e-05, 8.243961504172047598e-05, 8.238018734252119664e-05, 8.232063077052998985e-05, 8.226094543353717852e-05, 8.220113143954188930e-05, 8.214118889674056013e-05, 8.208111791352913568e-05, 8.202091859850615735e-05, 8.196059106046198900e-05, 8.190013540839407712e-05, 8.183955175149651537e-05, 8.177884019916213166e-05, 8.171800086098236619e-05, 8.165703384675078154e-05, 8.159593926645043174e-05, 8.153471723026797042e-05, 8.147336784859633425e-05, 8.141189123201005018e-05, 8.135028749129201528e-05, 8.128855673742247853e-05, 8.122669908157080087e-05, 8.116471463511116256e-05, 8.110260350961268343e-05, 8.104036581683966682e-05, 8.097800166875725094e-05, 8.091551117751698903e-05, 8.085289445547290909e-05, 8.079015161518270647e-05, 8.072728276938325451e-05, 8.066428803101804838e-05, 8.060116751322506199e-05, 8.053792132932745100e-05, 8.047454959286121350e-05, 8.041105241753831361e-05, 8.034742991727598200e-05, 8.028368220618331249e-05, 8.021980939856524645e-05, 8.015581160891044332e-05, 8.009168895191964605e-05, 8.002744154246827608e-05, 7.996306949563566620e-05, 7.989857292669396099e-05, 7.983395195109770851e-05, 7.976920668450989467e-05, 7.970433724277794173e-05, 7.963934374193567341e-05, 7.957422629821731463e-05, 7.950898502804885860e-05, 7.944362004803672331e-05, 7.937813147499789236e-05, 7.931251942592160197e-05, 7.924678401799830274e-05, 7.918092536860716420e-05, 7.911494359531736232e-05, 7.904883881588863515e-05, 7.898261114827334281e-05, 7.891626071060554414e-05, 7.884978762121757148e-05, 7.878319199863077424e-05, 7.871647396154473112e-05, 7.864963362886523608e-05, 7.858267111967789801e-05, 7.851558655325167793e-05, 7.844838004905242798e-05, 7.838105172673139889e-05, 7.831360170612751675e-05, 7.824603010727106936e-05, 7.817833705037027564e-05, 7.811052265583069286e-05, 7.804258704424362923e-05, 7.797453033637644028e-05, 7.790635265320058260e-05, 7.783805411586582339e-05, 7.776963484570148728e-05, 7.770109496423215014e-05, 7.763243459316549605e-05, 7.756365385439437728e-05, 7.749475286999796622e-05, 7.742573176224246015e-05, 7.735659065357147247e-05, 7.728732966662142840e-05, 7.721794892421053320e-05, 7.714844854934141492e-05, 7.707882866520407883e-05, 7.700908939516322232e-05, 7.693923086277624612e-05, 7.686925319178123327e-05, 7.679915650609957830e-05, 7.672894092983552643e-05, 7.665860658727960235e-05, 7.658815360289524747e-05, 7.651758210133792894e-05, 7.644689220744207503e-05, 7.637608404622438197e-05, 7.630515774288594165e-05, 7.623411342280064069e-05, 7.616295121153260253e-05, 7.609167123482399016e-05, 7.602027361859796059e-05, 7.594875848895824466e-05, 7.587712597219197961e-05, 7.580537619475820289e-05, 7.573350928330057805e-05, 7.566152536465307324e-05, 7.558942456581001007e-05, 7.551720701395761397e-05, 7.544487283646135608e-05, 7.537242216085637163e-05, 7.529985511486525442e-05, 7.522717182638653712e-05, 7.515437242349671068e-05, 7.508145703445338198e-05, 7.500842578768258874e-05, 7.493527881179429001e-05, 7.486201623558487342e-05, 7.478863818800931824e-05, 7.471514479821193258e-05, 7.464153619551374948e-05, 7.456781250939946231e-05, 7.449397386955247159e-05, 7.442002040580932140e-05, 7.434595224819565422e-05, 7.427176952690914833e-05, 7.419747237232557574e-05, 7.412306091498434171e-05, 7.404853528562045509e-05, 7.397389561512206831e-05, 7.389914203456450774e-05, 7.382427467519672118e-05, 7.374929366842958203e-05, 7.367419914586592167e-05, 7.359899123927349219e-05, 7.352367008058600993e-05, 7.344823580192038075e-05, 7.337268853556604771e-05, 7.329702841397183160e-05, 7.322125556978225172e-05, 7.314537013579075605e-05, 7.306937224497566264e-05, 7.299326203048697292e-05, 7.291703962563295474e-05, 7.284070516391288528e-05, 7.276425877898682888e-05, 7.268770060467962153e-05, 7.261103077499573796e-05, 7.253424942410996749e-05, 7.245735668635452562e-05, 7.238035269625068559e-05, 7.230323758847945073e-05, 7.222601149788441405e-05, 7.214867455948837359e-05, 7.207122690847976641e-05, 7.199366868021524354e-05, 7.191600001022343755e-05, 7.183822103419124745e-05, 7.176033188798297481e-05, 7.168233270762808587e-05, 7.160422362932241768e-05, 7.152600478942987218e-05, 7.144767632448419158e-05, 7.136923837117594793e-05, 7.129069106637241115e-05, 7.121203454710371185e-05, 7.113326895056560609e-05, 7.105439441412335138e-05, 7.097541107529749011e-05, 7.089631907178423249e-05, 7.081711854144103673e-05, 7.073780962229066118e-05, 7.065839245252002600e-05, 7.057886717048425171e-05, 7.049923391469204966e-05, 7.041949282382607787e-05, 7.033964403672967312e-05, 7.025968769240884318e-05, 7.017962393003371693e-05, 7.009945288894017064e-05, 7.001917470861635678e-05, 6.993878952872333097e-05, 6.985829748908110642e-05, 6.977769872967124246e-05, 6.969699339064077477e-05, 6.961618161228741604e-05, 6.953526353508117223e-05, 6.945423929964894690e-05, 6.937310904677859344e-05, 6.929187291741863044e-05, 6.921053105268106063e-05, 6.912908359382722201e-05, 6.904753068228930933e-05, 6.896587245965500547e-05, 6.888410906767176403e-05, 6.880224064824563032e-05, 6.872026734344488692e-05, 6.863818929548618950e-05, 6.855600664675484137e-05, 6.847371953979090214e-05, 6.839132811729165429e-05, 6.830883252211612973e-05, 6.822623289726978185e-05, 6.814352938592217160e-05, 6.806072213141038272e-05, 6.797781127720686160e-05, 6.789479696695454539e-05, 6.781167934445217114e-05, 6.772845855364047923e-05, 6.764513473864066197e-05, 6.756170804370420567e-05, 6.747817861325185412e-05, 6.739454659185570577e-05, 6.731081212424608481e-05, 6.722697535529313683e-05, 6.714303643004684949e-05, 6.705899549368509209e-05, 6.697485269155415116e-05, 6.689060816915353813e-05, 6.680626207212154229e-05, 6.672181454627103660e-05, 6.663726573755636884e-05, 6.655261579207711567e-05, 6.646786485609595843e-05, 6.638301307602748871e-05, 6.629806059842283984e-05, 6.621300757001061547e-05, 6.612785413764467172e-05, 6.604260044834409712e-05, 6.595724664927909086e-05, 6.587179288775514704e-05, 6.578623931124993104e-05, 6.570058606738017073e-05, 6.561483330390440762e-05, 6.552898116874194330e-05, 6.544302980996065573e-05, 6.535697937576295878e-05, 6.527083001452182488e-05, 6.518458187474758135e-05, 6.509823510509085123e-05, 6.501178985436147268e-05, 6.492524627151313038e-05, 6.483860450564652681e-05, 6.475186470601352934e-05, 6.466502702200123247e-05, 6.457809160315454986e-05, 6.449105859916137435e-05, 6.440392815985477345e-05, 6.431670043521431747e-05, 6.422937557536838348e-05, 6.414195373057942370e-05, 6.405443505126631363e-05, 6.396681968798890213e-05, 6.387910779145142672e-05, 6.379129951250591519e-05, 6.370339500213723723e-05, 6.361539441148534408e-05, 6.352729789182965606e-05, 6.343910559459304697e-05, 6.335081767134109873e-05, 6.326243427378595028e-05, 6.317395555377064442e-05, 6.308538166329193673e-05, 6.299671275448457460e-05, 6.290794897962479382e-05, 6.281909049113064381e-05, 6.273013744156458974e-05, 6.264108998361869957e-05, 6.255194827013724971e-05, 6.246271245410078723e-05, 6.237338268863007365e-05, 6.228395912698944594e-05, 6.219444192257116339e-05, 6.210483122891843335e-05, 6.201512719970958185e-05, 6.192532998876198384e-05, 6.183543975003095191e-05, 6.174545663761442545e-05, 6.165538080573631455e-05, 6.156521240877017636e-05, 6.147495160122288420e-05, 6.138459853773850364e-05, 6.129415337309841445e-05, 6.120361626222404821e-05, 6.111298736015796900e-05, 6.102226682210589977e-05, 6.093145480338240381e-05, 6.084055145945306022e-05, 6.074955694591877009e-05, 6.065847141850383705e-05, 6.056729503307536769e-05, 6.047602794564682914e-05, 6.038467031234159951e-05, 6.029322228943388300e-05, 6.020168403333103736e-05, 6.011005570055812406e-05, 6.001833744780108663e-05, 5.992652943185163250e-05, 5.983463180964911034e-05, 5.974264473826618502e-05, 5.965056837489484466e-05, 5.955840287686761029e-05, 5.946614840166056487e-05, 5.937380510685658525e-05, 5.928137315018630474e-05, 5.918885268951073873e-05, 5.909624388280542145e-05, 5.900354688820051469e-05, 5.891076186394394494e-05, 5.881788896840534715e-05, 5.872492836009584466e-05, 5.863188019765604842e-05, 5.853874463983896049e-05, 5.844552184555473805e-05, 5.835221197381358979e-05, 5.825881518377006561e-05, 5.816533163470646151e-05, 5.807176148601652949e-05, 5.797810489724576242e-05, 5.788436202805433465e-05, 5.779053303822123553e-05, 5.769661808766392736e-05, 5.760261733642217045e-05, 5.750853094466173651e-05, 5.741435907267816268e-05, 5.732010188087994644e-05, 5.722575952981321794e-05, 5.713133218014473160e-05, 5.703681999266614193e-05, 5.694222312829301421e-05, 5.684754174806922903e-05, 5.675277601315008232e-05, 5.665792608482715420e-05, 5.656299212451039259e-05, 5.646797429373318859e-05, 5.637287275415161754e-05, 5.627768766754830153e-05, 5.618241919581521120e-05, 5.608706750097924615e-05, 5.599163274518410843e-05, 5.589611509069522890e-05, 5.580051469990321634e-05, 5.570483173530693709e-05, 5.560906635953799775e-05, 5.551321873534450921e-05, 5.541728902559405466e-05, 5.532127739327409615e-05, 5.522518400149592521e-05, 5.512900901347700383e-05, 5.503275259256645683e-05, 5.493641490222758229e-05, 5.483999610604222899e-05, 5.474349636770999011e-05, 5.464691585105263484e-05, 5.455025471999656465e-05, 5.445351313859814299e-05, 5.435669127102633446e-05, 5.425978928156700778e-05, 5.416280733462615446e-05, 5.406574559471349710e-05, 5.396860422646716169e-05, 5.387138339463666922e-05, 5.377408326408633058e-05, 5.367670399979623591e-05, 5.357924576686455852e-05, 5.348170873049169164e-05, 5.338409305600469044e-05, 5.328639890884035845e-05, 5.318862645454890673e-05, 5.309077585879799934e-05, 5.299284728735592106e-05, 5.289484090611197396e-05, 5.279675688108065838e-05, 5.269859537836319726e-05, 5.260035656418965064e-05, 5.250204060490191402e-05, 5.240364766693993544e-05, 5.230517791686374509e-05, 5.220663152135697900e-05, 5.210800864718779352e-05, 5.200930946125182687e-05, 5.191053413055465534e-05, 5.181168282219425638e-05, 5.171275570340823911e-05, 5.161375294151303414e-05, 5.151467470395123258e-05, 5.141552115827387285e-05, 5.131629247212721341e-05, 5.121698881327409837e-05, 5.111761034959836877e-05, 5.101815724906507240e-05, 5.091862967976339144e-05, 5.081902780988983728e-05, 5.071935180772982592e-05, 5.061960184170553867e-05, 5.051977808031477316e-05, 5.041988069217816037e-05, 5.031990984601780579e-05, 5.021986571066507543e-05, 5.011974845503852546e-05, 5.001955824819229830e-05, 4.991929525925382167e-05, 4.981895965747244184e-05, 4.971855161220080919e-05, 4.961807129287753101e-05, 4.951751886907086487e-05, 4.941689451043879957e-05, 4.931619838673268732e-05, 4.921543066782006613e-05, 4.911459152366542876e-05, 4.901368112433520334e-05, 4.891269964000190040e-05, 4.881164724092562044e-05, 4.871052409748054913e-05, 4.860933038013735938e-05, 4.850806625946674173e-05, 4.840673190613950603e-05, 4.830532749093056585e-05, 4.820385318470117114e-05, 4.810230915842468515e-05, 4.800069558316896610e-05, 4.789901263010054138e-05, 4.779726047048441786e-05, 4.769543927568762579e-05, 4.759354921716206136e-05, 4.749159046646979603e-05, 4.738956319526602747e-05, 4.728746757530271158e-05, 4.718530377843291291e-05, 4.708307197659216314e-05, 4.698077234182592527e-05, 4.687840504627060654e-05, 4.677597026215801719e-05, 4.667346816181509265e-05, 4.657089891766821681e-05, 4.646826270222489220e-05, 4.636555968809977441e-05, 4.626279004799788727e-05, 4.615995395471742826e-05, 4.605705158114974812e-05, 4.595408310028446699e-05, 4.585104868518970802e-05, 4.574794850904055090e-05, 4.564478274509881827e-05, 4.554155156671897106e-05, 4.543825514735147633e-05, 4.533489366052451808e-05, 4.523146727986619633e-05, 4.512797617910960251e-05, 4.502442053205040688e-05, 4.492080051259297771e-05, 4.481711629473170594e-05, 4.471336805253676148e-05, 4.460955596018119146e-05, 4.450568019192292248e-05, 4.440174092210829785e-05, 4.429773832517652278e-05, 4.419367257564184282e-05, 4.408954384811491622e-05, 4.398535231730816035e-05, 4.388109815799348142e-05, 4.377678154504829883e-05, 4.367240265343660553e-05, 4.356796165819519186e-05, 4.346345873445599370e-05, 4.335889405745059185e-05, 4.325426780246866004e-05, 4.314958014490344042e-05, 4.304483126023300038e-05, 4.294002132400176729e-05, 4.283515051187066603e-05, 4.273021899955265640e-05, 4.262522696286271485e-05, 4.252017457769930819e-05, 4.241506202003046157e-05, 4.230988946591601171e-05, 4.220465709151241811e-05, 4.209936507303076370e-05, 4.199401358678269796e-05, 4.188860280916130072e-05, 4.178313291662297599e-05, 4.167760408573729816e-05, 4.157201649312246131e-05, 4.146637031549577594e-05, 4.136066572965006722e-05, 4.125490291246263321e-05, 4.114908204087216494e-05, 4.104320329192903303e-05, 4.093726684273014070e-05, 4.083127287046996260e-05, 4.072522155242117823e-05, 4.061911306591636247e-05, 4.051294758839341369e-05, 4.040672529735451666e-05, 4.030044637036938162e-05, 4.019411098509867658e-05, 4.008771931927535877e-05, 3.998127155070880129e-05, 3.987476785728904193e-05, 3.976820841696784343e-05, 3.966159340778661852e-05, 3.955492300786214553e-05, 3.944819739536720182e-05, 3.934141674857744876e-05, 3.923458124582867353e-05, 3.912769106552158667e-05, 3.902074638614439384e-05, 3.891374738625440503e-05, 3.880669424448166666e-05, 3.869958713952945621e-05, 3.859242625017821927e-05, 3.848521175526649433e-05, 3.837794383371891907e-05, 3.827062266452711456e-05, 3.816324842675396781e-05, 3.805582129953837521e-05, 3.794834146207565906e-05, 3.784080909364583142e-05, 3.773322437359437662e-05, 3.762558748133670324e-05, 3.751789859635777143e-05, 3.741015789821651102e-05, 3.730236556652684126e-05, 3.719452178098520270e-05, 3.708662672135196317e-05, 3.697868056745572747e-05, 3.687068349919722020e-05, 3.676263569653085426e-05, 3.665453733949218832e-05, 3.654638860817894651e-05, 3.643818968275570078e-05, 3.632994074345305776e-05, 3.622164197057249028e-05, 3.611329354446698428e-05, 3.600489564556436957e-05, 3.589644845437183276e-05, 3.578795215143274573e-05, 3.567940691737416718e-05, 3.557081293288745581e-05, 3.546217037871334893e-05, 3.535347943567044313e-05, 3.524474028463636302e-05, 3.513595310655112230e-05, 3.502711808242265311e-05, 3.491823539330671450e-05, 3.480930522033096844e-05, 3.470032774469904559e-05, 3.459130314764736694e-05, 3.448223161049290971e-05, 3.437311331461335290e-05, 3.426394844143273869e-05, 3.415473717244977013e-05, 3.404547968921830230e-05, 3.393617617335191624e-05, 3.382682680652373603e-05, 3.371743177047054876e-05, 3.360799124696893172e-05, 3.349850541788766683e-05, 3.338897446511984924e-05, 3.327939857063578962e-05, 3.316977791646362049e-05, 3.306011268467394802e-05, 3.295040305740432106e-05, 3.284064921686340535e-05, 3.273085134528712755e-05, 3.262100962498715260e-05, 3.251112423833065661e-05, 3.240119536772098060e-05, 3.229122319565071576e-05, 3.218120790463319542e-05, 3.207114967725602076e-05, 3.196104869616093531e-05, 3.185090514402415344e-05, 3.174071920360482422e-05, 3.163049105770089761e-05, 3.152022088915373908e-05, 3.140990888087183300e-05, 3.129955521581632885e-05, 3.118916007698128165e-05, 3.107872364744141785e-05, 3.096824611030866558e-05, 3.085772764873638980e-05, 3.074716844594358361e-05, 3.063656868519506798e-05, 3.052592854980582177e-05, 3.041524822314610460e-05, 3.030452788862095866e-05, 3.019376772969970237e-05, 3.008296792990074482e-05, 2.997212867277170416e-05, 2.986125014193831870e-05, 2.975033252105960160e-05, 2.963937599383290272e-05, 2.952838074401787291e-05, 2.941734695541661288e-05, 2.930627481187814902e-05, 2.919516449730318684e-05, 2.908401619562406011e-05, 2.897283009083419057e-05, 2.886160636696754239e-05, 2.875034520810396517e-05, 2.863904679836820806e-05, 2.852771132193496803e-05, 2.841633896300889314e-05, 2.830492990585340877e-05, 2.819348433477129683e-05, 2.808200243410891061e-05, 2.797048438825591388e-05, 2.785893038165012932e-05, 2.774734059875731476e-05, 2.763571522410030449e-05, 2.752405444223954446e-05, 2.741235843777705300e-05, 2.730062739536143863e-05, 2.718886149966766614e-05, 2.707706093542668584e-05, 2.696522588740505049e-05, 2.685335654040953000e-05, 2.674145307928713173e-05, 2.662951568892937292e-05, 2.651754455425249063e-05, 2.640553986022666096e-05, 2.629350179185592441e-05, 2.618143053418287163e-05, 2.606932627228814538e-05, 2.595718919129561759e-05, 2.584501947635147443e-05, 2.573281731265437408e-05, 2.562058288543492138e-05, 2.550831637996031642e-05, 2.539601798153932825e-05, 2.528368787550170865e-05, 2.517132624722297963e-05, 2.505893328212912269e-05, 2.494650916565145901e-05, 2.483405408327585528e-05, 2.472156822052303194e-05, 2.460905176293284895e-05, 2.449650489609411466e-05, 2.438392780562439243e-05, 2.427132067717425624e-05, 2.415868369642782255e-05, 2.404601704910644001e-05, 2.393332092094420681e-05, 2.382059549774225531e-05, 2.370784096529851949e-05, 2.359505750946240923e-05, 2.348224531611456956e-05, 2.336940457115159009e-05, 2.325653546051058586e-05, 2.314363817017404916e-05, 2.303071288612435031e-05, 2.291775979439359063e-05, 2.280477908104327703e-05, 2.269177093214394241e-05, 2.257873553382992496e-05, 2.246567307222896957e-05, 2.235258373351693600e-05, 2.223946770389765979e-05, 2.212632516958242362e-05, 2.201315631683986105e-05, 2.189996133195037942e-05, 2.178674040121107600e-05, 2.167349371096042053e-05, 2.156022144756282569e-05, 2.144692379738845041e-05, 2.133360094686283267e-05, 2.122025308242169513e-05, 2.110688039051541754e-05, 2.099348305763405127e-05, 2.088006127028656703e-05, 2.076661521500603190e-05, 2.065314507835404106e-05, 2.053965104690036523e-05, 2.042613330725282726e-05, 2.031259204604195383e-05, 2.019902744990039264e-05, 2.008543970551307362e-05, 1.997182899957163183e-05, 1.985819551877896446e-05, 1.974453944987418784e-05, 1.963086097961241029e-05, 1.951716029476899776e-05, 1.940343758214463910e-05, 1.928969302854495967e-05, 1.917592682081004890e-05, 1.906213914579447710e-05, 1.894833019037167292e-05, 1.883450014143371330e-05, 1.872064918589626671e-05, 1.860677751067772232e-05, 1.849288530272956456e-05, 1.837897274901558356e-05, 1.826504003651668967e-05, 1.815108735223067970e-05, 1.803711488317699384e-05, 1.792312281637613276e-05, 1.780911133887957143e-05, 1.769508063774954216e-05, 1.758103090006338492e-05, 1.746696231291872782e-05, 1.735287506341252133e-05, 1.723876933867144341e-05, 1.712464532583112683e-05, 1.701050321204106185e-05, 1.689634318446417264e-05, 1.678216543028160476e-05, 1.666797013667226760e-05, 1.655375749084273126e-05, 1.643952768000675205e-05, 1.632528089139019550e-05, 1.621101731223042642e-05, 1.609673712978129968e-05, 1.598244053129243498e-05, 1.586812770403943899e-05, 1.575379883530328179e-05, 1.563945411237501317e-05, 1.552509372256056694e-05, 1.541071785316025945e-05, 1.529632669149364480e-05, 1.518192042490449210e-05, 1.506749924071457981e-05, 1.495306332627442616e-05, 1.483861286894250139e-05, 1.472414805606961343e-05, 1.460966907502923684e-05, 1.449517611319692309e-05, 1.438066935795480850e-05, 1.426614899669677941e-05, 1.415161521680739296e-05, 1.403706820568733378e-05, 1.392250815075813030e-05, 1.380793523941588810e-05, 1.369334965908215084e-05, 1.357875159718296333e-05, 1.346414124113339283e-05, 1.334951877836288075e-05, 1.323488439631957606e-05, 1.312023828242474968e-05, 1.300558062412294393e-05, 1.289091160886155731e-05, 1.277623142407013118e-05, 1.266154025721598117e-05, 1.254683829573267036e-05, 1.243212572707571351e-05, 1.231740273870188410e-05, 1.220266951804850602e-05, 1.208792625258413834e-05, 1.197317312976243238e-05, 1.185841033702688351e-05, 1.174363806183597450e-05, 1.162885649164761893e-05, 1.151406581389853592e-05, 1.139926621605990356e-05, 1.128445788556572031e-05, 1.116964100986862780e-05, 1.105481577641405603e-05, 1.093998237264503282e-05, 1.082514098600187887e-05, 1.071029180392702906e-05, 1.059543501384429372e-05, 1.048057080318918750e-05, 1.036569935939322703e-05, 1.025082086986344460e-05, 1.013593552203281714e-05, 1.002104350331426215e-05, 9.906145001105289569e-06, 9.791240202813309486e-06, 9.676329295834891652e-06, 9.561412467560502097e-06, 9.446489905379461667e-06, 9.331561796658983645e-06, 9.216628328774722844e-06, 9.101689689095027573e-06, 8.986746064960212738e-06, 8.871797643733441110e-06, 8.756844612754322864e-06, 8.641887159343714865e-06, 8.526925470829123185e-06, 8.411959734523733958e-06, 8.296990137731426122e-06, 8.182016867746310629e-06, 8.067040111857650013e-06, 7.952060057328992585e-06, 7.837076891428679167e-06, 7.722090801409017941e-06, 7.607101974511015975e-06, 7.492110597969368248e-06, 7.377116858991529161e-06, 7.262120944788176920e-06, 7.147123042552462927e-06, 7.032123339464728904e-06, 6.917122022692405248e-06, 6.802119279394542663e-06, 6.687115296701272451e-06, 6.572110261744105731e-06, 6.457104361635194686e-06, 6.342097783472088649e-06, 6.227090714342621485e-06, 6.112083341304098299e-06, 5.997075851413723398e-06, 5.882068431707773446e-06, 5.767061269206483151e-06, 5.652054550913683580e-06, 5.537048463821669211e-06, 5.422043194890348217e-06, 5.307038931072625505e-06, 5.192035859319152872e-06, 5.077034166531942943e-06, 4.962034039615368176e-06, 4.847035665455195104e-06, 4.732039230903129371e-06, 4.617044922807066667e-06, 4.502052927990396324e-06, 4.387063433256819241e-06, 4.272076625395114985e-06, 4.157092691158413198e-06, 4.042111817289430102e-06, 3.927134190525371967e-06, 3.812159997551480018e-06, 3.697189425051965061e-06, 3.582222659689187843e-06, 3.467259888082938929e-06, 3.352301296866400049e-06, 3.237347072614185265e-06, 3.122397401898362458e-06, 3.007452471262549791e-06, 2.892512467231844624e-06, 2.777577576286927185e-06, 2.662647984920095180e-06, 2.547723879563248629e-06, 2.432805446643940157e-06, 2.317892872564582453e-06, 2.202986343681651489e-06, 2.088086046356616073e-06, 1.973192166909541621e-06, 1.858304891623886900e-06, 1.743424406771850857e-06, 1.628550898598671382e-06, 1.513684553301855634e-06, 1.398825557087215928e-06, 1.283974096096861987e-06, 1.169130356465242119e-06, 1.054294524293224647e-06, 9.394667856529455831e-07, 8.246473265874707687e-07, 7.098363331156459852e-07, 5.950339912113003892e-07, 4.802404868336758535e-07, 3.654560059117586575e-07, 2.506807343235082277e-07, 1.359148579467492596e-07, 2.115856261279452923e-08, -9.358796588873074748e-08, -2.083245417845940561e-07, -3.230509793387332686e-07, -4.377670928474350443e-07, -5.524726966345187954e-07, -6.671676050721023616e-07, -7.818516325502026062e-07, -8.965245934923833974e-07, -1.011186302376517815e-06, -1.125836573683928373e-06, -1.240475221945725232e-06, -1.355102061738008282e-06, -1.469716907656548483e-06, -1.584319574337595653e-06, -1.698909876453024121e-06, -1.813487628710652483e-06, -1.928052645849417209e-06, -2.042604742660131087e-06, -2.157143733955108204e-06, -2.271669434588886181e-06, -2.386181659453455044e-06, -2.500680223473407122e-06, -2.615164941626700358e-06, -2.729635628914268039e-06, -2.844092100380797790e-06, -2.958534171109866631e-06, -3.072961656224307752e-06, -3.187374370881312539e-06, -3.301772130293236244e-06, -3.416154749697226775e-06, -3.530522044375919404e-06, -3.644873829652666699e-06, -3.759209920886715519e-06, -3.873530133493910196e-06, -3.987834282916384422e-06, -4.102122184643297889e-06, -4.216393654205930695e-06, -4.330648507178099240e-06, -4.444886559171275619e-06, -4.559107625855327226e-06, -4.673311522933275174e-06, -4.787498066136507705e-06, -4.901667071270997703e-06, -5.015818354166569653e-06, -5.129951730697594349e-06, -5.244067016798612416e-06, -5.358164028434002064e-06, -5.472242581618686500e-06, -5.586302492413339718e-06, -5.700343576919536397e-06, -5.814365651300536387e-06, -5.928368531755959274e-06, -6.042352034517133326e-06, -6.156315975893090222e-06, -6.270260172220057328e-06, -6.384184439882052457e-06, -6.498088595331553167e-06, -6.611972455033815353e-06, -6.725835835538358596e-06, -6.839678553423406727e-06, -6.953500425321501263e-06, -7.067301267909663958e-06, -7.181080897935158470e-06, -7.294839132159781847e-06, -7.408575787431389686e-06, -7.522290680628257922e-06, -7.635983628679725028e-06, -7.749654448586709688e-06, -7.863302957371357232e-06, -7.976928972122945434e-06, -8.090532309993103856e-06, -8.204112788170758616e-06, -8.317670223897661889e-06, -8.431204434488930759e-06, -8.544715237277519134e-06, -8.658202449685619228e-06, -8.771665889169118227e-06, -8.885105373238101566e-06, -8.998520719477581521e-06, -9.111911745496868357e-06, -9.225278268975799686e-06, -9.338620107659634562e-06, -9.451937079334232018e-06, -9.565229001841399310e-06, -9.678495693099625584e-06, -9.791736971053486909e-06, -9.904952653719690985e-06, -1.001814255918232529e-05, -1.013130650556766462e-05, -1.024444431106482854e-05, -1.035755579392103799e-05, -1.047064077243673300e-05, -1.058369906498624703e-05, -1.069673048998759676e-05, -1.080973486592309034e-05, -1.092271201133459251e-05, -1.103566174482372111e-05, -1.114858388504714264e-05, -1.126147825073703997e-05, -1.137434466067110875e-05, -1.148718293369312508e-05, -1.159999288870799539e-05, -1.171277434467722487e-05, -1.182552712063919374e-05, -1.193825103567934843e-05, -1.205094590895052871e-05, -1.216361155966824801e-05, -1.227624780711104409e-05, -1.238885447061571364e-05, -1.250143136959767157e-05, -1.261397832352108629e-05, -1.272649515191931697e-05, -1.283898167439013282e-05, -1.295143771059597237e-05, -1.306386308025932029e-05, -1.317625760318298707e-05, -1.328862109922033583e-05, -1.340095338829554166e-05, -1.351325429039900065e-05, -1.362552362558243412e-05, -1.373776121397950870e-05, -1.384996687577562783e-05, -1.396214043122871788e-05, -1.407428170066412738e-05, -1.418639050447523513e-05, -1.429846666311845784e-05, -1.441050999713371440e-05, -1.452252032711462052e-05, -1.463449747372889373e-05, -1.474644125771336439e-05, -1.485835149987470577e-05, -1.497022802108422318e-05, -1.508207064229864010e-05, -1.519387918452989132e-05, -1.530565346886576342e-05, -1.541739331646503451e-05, -1.552909854855276812e-05, -1.564076898644067924e-05, -1.575240445150220784e-05, -1.586400476516816854e-05, -1.597556974897164668e-05, -1.608709922449845373e-05, -1.619859301340750688e-05, -1.631005093745095116e-05, -1.642147281841952578e-05, -1.653285847821280016e-05, -1.664420773878451994e-05, -1.675552042216292223e-05, -1.686679635046577211e-05, -1.697803534587599185e-05, -1.708923723063675147e-05, -1.720040182709666303e-05, -1.731152895766038848e-05, -1.742261844480852455e-05, -1.753367011111810778e-05, -1.764468377921297494e-05, -1.775565927180890996e-05, -1.786659641170877850e-05, -1.797749502177815379e-05, -1.808835492496034972e-05, -1.819917594429680728e-05, -1.830995790287244054e-05, -1.842070062388560505e-05, -1.853140393059370128e-05, -1.864206764633350349e-05, -1.875269159454097352e-05, -1.886327559870212942e-05, -1.897381948239806703e-05, -1.908432306929990144e-05, -1.919478618314469437e-05, -1.930520864775035850e-05, -1.941559028703578301e-05, -1.952593092496664718e-05, -1.963623038562507700e-05, -1.974648849315534016e-05, -1.985670507178906736e-05, -1.996687994584038690e-05, -2.007701293970631435e-05, -2.018710387786206334e-05, -2.029715258488103897e-05, -2.040715888540560160e-05, -2.051712260416698903e-05, -2.062704356598059013e-05, -2.073692159574651398e-05, -2.084675651844467373e-05, -2.095654815915471217e-05, -2.106629634302702986e-05, -2.117600089530256161e-05, -2.128566164130797213e-05, -2.139527840645155302e-05, -2.150485101624251814e-05, -2.161437929626216386e-05, -2.172386307218372690e-05, -2.183330216976784422e-05, -2.194269641486250899e-05, -2.205204563339886929e-05, -2.216134965141084540e-05, -2.227060829500590380e-05, -2.237982139038534863e-05, -2.248898876383925312e-05, -2.259811024174706600e-05, -2.270718565057255306e-05, -2.281621481688430212e-05, -2.292519756732605991e-05, -2.303413372863685759e-05, -2.314302312764616575e-05, -2.325186559126981843e-05, -2.336066094652910528e-05, -2.346940902052216895e-05, -2.357810964044387646e-05, -2.368676263358077092e-05, -2.379536782731195920e-05, -2.390392504910398566e-05, -2.401243412653090349e-05, -2.412089488724515371e-05, -2.422930715899734166e-05, -2.433767076963182569e-05, -2.444598554708675100e-05, -2.455425131938941813e-05, -2.466246791468128052e-05, -2.477063516116421896e-05, -2.487875288716921222e-05, -2.498682092110303835e-05, -2.509483909146788521e-05, -2.520280722687641745e-05, -2.531072515602760900e-05, -2.541859270770209116e-05, -2.552640971080620506e-05, -2.563417599432400544e-05, -2.574189138733628496e-05, -2.584955571904102160e-05, -2.595716881869955818e-05, -2.606473051570536788e-05, -2.617224063953071150e-05, -2.627969901974606500e-05, -2.638710548603568121e-05, -2.649445986817269380e-05, -2.660176199601520063e-05, -2.670901169954981139e-05, -2.681620880884357004e-05, -2.692335315406381262e-05, -2.703044456549737456e-05, -2.713748287350270624e-05, -2.724446790855387468e-05, -2.735139950123534913e-05, -2.745827748221912109e-05, -2.756510168227824662e-05, -2.767187193230746995e-05, -2.777858806326988407e-05, -2.788524990626470355e-05, -2.799185729247478580e-05, -2.809841005318593657e-05, -2.820490801980653410e-05, -2.831135102381956663e-05, -2.841773889682643766e-05, -2.852407147054205307e-05, -2.863034857677127363e-05, -2.873657004742382961e-05, -2.884273571453324341e-05, -2.894884541020467948e-05, -2.905489896668231396e-05, -2.916089621629679824e-05, -2.926683699148951466e-05, -2.937272112480813463e-05, -2.947854844890652378e-05, -2.958431879654081171e-05, -2.969003200058835200e-05, -2.979568789401927206e-05, -2.990128630991615137e-05, -3.000682708146922733e-05, -3.011231004197691697e-05, -3.021773502484111426e-05, -3.032310186358652958e-05, -3.042841039183236828e-05, -3.053366044331184975e-05, -3.063885185186740641e-05, -3.074398445144643500e-05, -3.084905807612023626e-05, -3.095407256005623897e-05, -3.105902773753667541e-05, -3.116392344295504407e-05, -3.126875951081514070e-05, -3.137353577572746011e-05, -3.147825207242814255e-05, -3.158290823575060836e-05, -3.168750410064537167e-05, -3.179203950217463300e-05, -3.189651427551354644e-05, -3.200092825594498828e-05, -3.210528127887898468e-05, -3.220957317982476627e-05, -3.231380379440977558e-05, -3.241797295837501859e-05, -3.252208050757096500e-05, -3.262612627797658959e-05, -3.273011010567103386e-05, -3.283403182685316912e-05, -3.293789127783663625e-05, -3.304168829505052334e-05, -3.314542271503499499e-05, -3.324909437445966952e-05, -3.335270311009641233e-05, -3.345624875883815351e-05, -3.355973115769435457e-05, -3.366315014378656320e-05, -3.376650555436737323e-05, -3.386979722679764288e-05, -3.397302499854162259e-05, -3.407618870720929312e-05, -3.417928819051053091e-05, -3.428232328627312615e-05, -3.438529383245764995e-05, -3.448819966713428622e-05, -3.459104062847813578e-05, -3.469381655481188647e-05, -3.479652728455917213e-05, -3.489917265626322763e-05, -3.500175250860647911e-05, -3.510426668035886134e-05, -3.520671501044360851e-05, -3.530909733788626965e-05, -3.541141350183346523e-05, -3.551366334156700222e-05, -3.561584669648155981e-05, -3.571796340607909221e-05, -3.582001331001228483e-05, -3.592199624803693749e-05, -3.602391206003201538e-05, -3.612576058601765360e-05, -3.622754166610473494e-05, -3.632925514056014536e-05, -3.643090084975572835e-05, -3.653247863419179181e-05, -3.663398833448834634e-05, -3.673542979140808354e-05, -3.683680284580625878e-05, -3.693810733869513343e-05, -3.703934311119349854e-05, -3.714051000454600068e-05, -3.724160786014092965e-05, -3.734263651946503437e-05, -3.744359582414485130e-05, -3.754448561594269290e-05, -3.764530573673344568e-05, -3.774605602852370640e-05, -3.784673633344701156e-05, -3.794734649375975131e-05, -3.804788635185974322e-05, -3.814835575025872738e-05, -3.824875453159663725e-05, -3.834908253866004462e-05, -3.844933961433663670e-05, -3.854952560165683591e-05, -3.864964034378881932e-05, -3.874968368401704471e-05, -3.884965546575955709e-05, -3.894955553256439055e-05, -3.904938372810966990e-05, -3.914913989619915184e-05, -3.924882388078086655e-05, -3.934843552592002608e-05, -3.944797467581739490e-05, -3.954744117480470908e-05, -3.964683486734107813e-05, -3.974615559803089463e-05, -3.984540321159674278e-05, -3.994457755289808728e-05, -4.004367846692677391e-05, -4.014270579880761911e-05, -4.024165939379358519e-05, -4.034053909728459132e-05, -4.043934475480019159e-05, -4.053807621199837240e-05, -4.063673331467110717e-05, -4.073531590873956561e-05, -4.083382384027326334e-05, -4.093225695546272655e-05, -4.103061510063774715e-05, -4.112889812226338485e-05, -4.122710586693996036e-05, -4.132523818139879988e-05, -4.142329491252062589e-05, -4.152127590731321584e-05, -4.161918101290740409e-05, -4.171701007659699416e-05, -4.181476294579519412e-05, -4.191243946805171984e-05, -4.201003949106716073e-05, -4.210756286266621344e-05, -4.220500943081586940e-05, -4.230237904362077982e-05, -4.239967154931945423e-05, -4.249688679630255638e-05, -4.259402463308963456e-05, -4.269108490832675666e-05, -4.278806747082511457e-05, -4.288497216951790681e-05, -4.298179885347752990e-05, -4.307854737192995761e-05, -4.317521757422749357e-05, -4.327180930986748058e-05, -4.336832242848784856e-05, -4.346475677986687741e-05, -4.356111221391977499e-05, -4.365738858072051024e-05, -4.375358573045370171e-05, -4.384970351347641706e-05, -4.394574178027012940e-05, -4.404170038145849140e-05, -4.413757916782041346e-05, -4.423337799026894892e-05, -4.432909669984688944e-05, -4.442473514776612835e-05, -4.452029318536456361e-05, -4.461577066412353987e-05, -4.471116743568556847e-05, -4.480648335180658184e-05, -4.490171826441775334e-05, -4.499687202557645072e-05, -4.509194448748968194e-05, -4.518693550250488624e-05, -4.528184492313184860e-05, -4.537667260199551659e-05, -4.547141839189672248e-05, -4.556608214576466807e-05, -4.566066371667492247e-05, -4.575516295786622719e-05, -4.584957972269798192e-05, -4.594391386468964168e-05, -4.603816523751574306e-05, -4.613233369498528403e-05, -4.622641909105903058e-05, -4.632042127984521370e-05, -4.641434011559568732e-05, -4.650817545272330260e-05, -4.660192714577637499e-05, -4.669559504945149813e-05, -4.678917901861143999e-05, -4.688267890824217456e-05, -4.697609457349163529e-05, -4.706942586966554094e-05, -4.716267265220675507e-05, -4.725583477671229445e-05, -4.734891209892888386e-05, -4.744190447475404024e-05, -4.753481176023091604e-05, -4.762763381156692705e-05, -4.772037048510706082e-05, -4.781302163735203019e-05, -4.790558712495403813e-05, -4.799806680471252907e-05, -4.809046053359140058e-05, -4.818276816869426998e-05, -4.827498956728103560e-05, -4.836712458676407521e-05, -4.845917308470853747e-05, -4.855113491882824225e-05, -4.864300994700312953e-05, -4.873479802725343504e-05, -4.882649901775750509e-05, -4.891811277684735129e-05, -4.900963916300516083e-05, -4.910107803487930874e-05, -4.919242925126064101e-05, -4.928369267109852076e-05, -4.937486815349758241e-05, -4.946595555771727090e-05, -4.955695474316833835e-05, -4.964786556942941205e-05, -4.973868789622676729e-05, -4.982942158343019385e-05, -4.992006649109033997e-05, -5.001062247939791928e-05, -5.010108940870021773e-05, -5.019146713951368394e-05, -5.028175553249952784e-05, -5.037195444848026153e-05, -5.046206374843576907e-05, -5.055208329349985733e-05, -5.064201294497630221e-05, -5.073185256431877733e-05, -5.082160201312718132e-05, -5.091126115318408729e-05, -5.100082984641512209e-05, -5.109030795490428060e-05, -5.117969534090716658e-05, -5.126899186682661844e-05, -5.135819739522914170e-05, -5.144731178884087708e-05, -5.153633491054819684e-05, -5.162526662339336119e-05, -5.171410679059549757e-05, -5.180285527550609420e-05, -5.189151194166549376e-05, -5.198007665275924748e-05, -5.206854927263392417e-05, -5.215692966530973437e-05, -5.224521769496082504e-05, -5.233341322591059032e-05, -5.242151612266907654e-05, -5.250952624989225684e-05, -5.259744347239883637e-05, -5.268526765518629165e-05, -5.277299866338683163e-05, -5.286063636232372882e-05, -5.294818061746811377e-05, -5.303563129445375415e-05, -5.312298825909497117e-05, -5.321025137734540603e-05, -5.329742051533554683e-05, -5.338449553936756511e-05, -5.347147631589655234e-05, -5.355836271154233773e-05, -5.364515459310537180e-05, -5.373185182752776286e-05, -5.381845428192873042e-05, -5.390496182360088502e-05, -5.399137431999120727e-05, -5.407769163871581331e-05, -5.416391364755767122e-05, -5.425004021446174244e-05, -5.433607120755188177e-05, -5.442200649510618531e-05, -5.450784594557041426e-05, -5.459358942757288913e-05, -5.467923680988578375e-05, -5.476478796146068027e-05, -5.485024275142452379e-05, -5.493560104906089952e-05, -5.502086272382516416e-05, -5.510602764534094938e-05, -5.519109568339693628e-05, -5.527606670796198006e-05, -5.536094058916235527e-05, -5.544571719729720575e-05, -5.553039640283518355e-05, -5.561497807641427955e-05, -5.569946208883875383e-05, -5.578384831109394176e-05, -5.586813661432418374e-05, -5.595232686984753648e-05, -5.603641894915295404e-05, -5.612041272389992871e-05, -5.620430806591513676e-05, -5.628810484720762403e-05, -5.637180293994647139e-05, -5.645540221647623105e-05, -5.653890254931306410e-05, -5.662230381114043078e-05, -5.670560587482653941e-05, -5.678880861339966041e-05, -5.687191190006454523e-05, -5.695491560819835377e-05, -5.703781961135174540e-05, -5.712062378324359344e-05, -5.720332799777840021e-05, -5.728593212902211923e-05, -5.736843605121803212e-05, -5.745083963878361787e-05, -5.753314276631007177e-05, -5.761534530855903926e-05, -5.769744714047767275e-05, -5.777944813717688662e-05, -5.786134817394547218e-05, -5.794314712624746167e-05, -5.802484486971827939e-05, -5.810644128017963589e-05, -5.818793623362153021e-05, -5.826932960619824516e-05, -5.835062127426256061e-05, -5.843181111432814526e-05, -5.851289900308472870e-05, -5.859388481741027157e-05, -5.867476843434748580e-05, -5.875554973111968429e-05, -5.883622858512779259e-05, -5.891680487394540902e-05, -5.899727847533514218e-05, -5.907764926722929190e-05, -5.915791712772701670e-05, -5.923808193512738167e-05, -5.931814356789313929e-05, -5.939810190466480381e-05, -5.947795682427268582e-05, -5.955770820571798648e-05, -5.963735592817034459e-05, -5.971689987099996951e-05, -5.979633991374144926e-05, -5.987567593610912576e-05, -5.995490781801083717e-05, -6.003403543950933379e-05, -6.011305868087246987e-05, -6.019197742253348793e-05, -6.027079154510567581e-05, -6.034950092939797919e-05, -6.042810545637737976e-05, -6.050660500720304082e-05, -6.058499946322213313e-05, -6.066328870595209458e-05, -6.074147261709179077e-05, -6.081955107853576547e-05, -6.089752397233541261e-05, -6.097539118074869372e-05, -6.105315258620158106e-05, -6.113080807130533698e-05, -6.120835751885444727e-05, -6.128580081182515742e-05, -6.136313783337309417e-05, -6.144036846684771248e-05, -6.151749259577039472e-05, -6.159451010384633615e-05, -6.167142087497763669e-05, -6.174822479322955517e-05, -6.182492174286090757e-05, -6.190151160832214265e-05, -6.197799427423688332e-05, -6.205436962541663120e-05, -6.213063754685748687e-05, -6.220679792373642295e-05, -6.228285064142555488e-05, -6.235879558547230005e-05, -6.243463264161179191e-05, -6.251036169576492838e-05, -6.258598263403784335e-05, -6.266149534271904704e-05, -6.273689970829323607e-05, -6.281219561742050386e-05, -6.288738295695070631e-05, -6.296246161392027698e-05, -6.303743147555137323e-05, -6.311229242925029065e-05, -6.318704436261980933e-05, -6.326168716343946144e-05, -6.333622071967988333e-05, -6.341064491949816701e-05, -6.348495965123639650e-05, -6.355916480343375022e-05, -6.363326026480781205e-05, -6.370724592426647045e-05, -6.378112167090696982e-05, -6.385488739401385045e-05, -6.392854298305711898e-05, -6.400208832770599065e-05, -6.407552331780772025e-05, -6.414884784340227949e-05, -6.422206179471849456e-05, -6.429516506217494059e-05, -6.436815753637538796e-05, -6.444103910812417095e-05, -6.451380966840518122e-05, -6.458646910839551530e-05, -6.465901731946193732e-05, -6.473145419315866995e-05, -6.480377962124029645e-05, -6.487599349564494194e-05, -6.494809570849210500e-05, -6.502008615211147039e-05, -6.509196471901083014e-05, -6.516373130188939219e-05, -6.523538579364710453e-05, -6.530692808736603399e-05, -6.537835807632318694e-05, -6.544967565398702634e-05, -6.552088071401495088e-05, -6.559197315026675274e-05, -6.566295285678732448e-05, -6.573381972780446359e-05, -6.580457365775852537e-05, -6.587521454126932772e-05, -6.594574227314931058e-05, -6.601615674841435088e-05, -6.608645786226640176e-05, -6.615664551009193400e-05, -6.622671958748980005e-05, -6.629667999023973793e-05, -6.636652661431546299e-05, -6.643625935589740725e-05, -6.650587811133761842e-05, -6.657538277720517436e-05, -6.664477325025079744e-05, -6.671404942741979724e-05, -6.678321120586483699e-05, -6.685225848291431554e-05, -6.692119115610162727e-05, -6.699000912316151646e-05, -6.705871228201457318e-05, -6.712730053077697759e-05, -6.719577376777327994e-05, -6.726413189150143507e-05, -6.733237480067762063e-05, -6.740050239420203044e-05, -6.746851457117326737e-05, -6.753641123088710996e-05, -6.760419227283561805e-05, -6.767185759670465257e-05, -6.773940710238591026e-05, -6.780684068995888522e-05, -6.787415825970050478e-05, -6.794135971209700148e-05, -6.800844494781355543e-05, -6.807541386772230740e-05, -6.814226637289922815e-05, -6.820900236460904805e-05, -6.827562174431723750e-05, -6.834212441368778430e-05, -6.840851027457979202e-05, -6.847477922905973141e-05, -6.854093117938367310e-05, -6.860696602800678788e-05, -6.867288367759466310e-05, -6.873868403099398850e-05, -6.880436699125958000e-05, -6.886993246165184536e-05, -6.893538034562114454e-05, -6.900071054682086792e-05, -6.906592296910361449e-05, -6.913101751652243865e-05, -6.919599409332660830e-05, -6.926085260397541485e-05, -6.932559295311869823e-05, -6.939021504560989801e-05, -6.945471878650312601e-05, -6.951910408105008989e-05, -6.958337083471222270e-05, -6.964751895314329492e-05, -6.971154834220025655e-05, -6.977545890794247809e-05, -6.983925055662973131e-05, -6.990292319472080681e-05, -6.996647672888487107e-05, -7.002991106598398371e-05, -7.009322611308484749e-05, -7.015642177745672124e-05, -7.021949796656738122e-05, -7.028245458809644324e-05, -7.034529154991670083e-05, -7.040800876010636317e-05, -7.047060612694654787e-05, -7.053308355892132166e-05, -7.059544096471455615e-05, -7.065767825322196252e-05, -7.071979533353669870e-05, -7.078179211494665891e-05, -7.084366850696050802e-05, -7.090542441927880112e-05, -7.096705976180619439e-05, -7.102857444465968497e-05, -7.108996837815160261e-05, -7.115124147280107504e-05, -7.121239363933162922e-05, -7.127342478866888740e-05, -7.133433483195074506e-05, -7.139512368051402166e-05, -7.145579124589256331e-05, -7.151633743984147468e-05, -7.157676217430947185e-05, -7.163706536145118798e-05, -7.169724691363672786e-05, -7.175730674342278750e-05, -7.181724476359060115e-05, -7.187706088711616644e-05, -7.193675502718439320e-05, -7.199632709718235433e-05, -7.205577701071504734e-05, -7.211510468157400673e-05, -7.217431002377621330e-05, -7.223339295153403462e-05, -7.229235337926636523e-05, -7.235119122160983457e-05, -7.240990639339120048e-05, -7.246849880965255692e-05, -7.252696838564824395e-05, -7.258531503683115973e-05, -7.264353867886217948e-05, -7.270163922761980493e-05, -7.275961659917146000e-05, -7.281747070981077388e-05, -7.287520147602821264e-05, -7.293280881452506546e-05, -7.299029264221044955e-05, -7.304765287620129655e-05, -7.310488943382027901e-05, -7.316200223260635428e-05, -7.321899119029892157e-05, -7.327585622484599414e-05, -7.333259725441436372e-05, -7.338921419736399974e-05, -7.344570697227171207e-05, -7.350207549792873865e-05, -7.355831969332681354e-05, -7.361443947767041835e-05, -7.367043477037275715e-05, -7.372630549105396757e-05, -7.378205155955173239e-05, -7.383767289590546378e-05, -7.389316942036416370e-05, -7.394854105339753706e-05, -7.400378771566922540e-05, -7.405890932806129636e-05, -7.411390581167066579e-05, -7.416877708779710376e-05, -7.422352307795348028e-05, -7.427814370386301413e-05, -7.433263888745715868e-05, -7.438700855088565785e-05, -7.444125261650169254e-05, -7.449537100687167912e-05, -7.454936364477354825e-05, -7.460323045319591816e-05, -7.465697135533661748e-05, -7.471058627461226679e-05, -7.476407513464334382e-05, -7.481743785926465952e-05, -7.487067437252271527e-05, -7.492378459867604179e-05, -7.497676846219186514e-05, -7.502962588775776191e-05, -7.508235680026573503e-05, -7.513496112482252721e-05, -7.518743878674678848e-05, -7.523978971156822237e-05, -7.529201382503537864e-05, -7.534411105310261569e-05, -7.539608132193961450e-05, -7.544792455792854612e-05, -7.549964068766502033e-05, -7.555122963795465689e-05, -7.560269133582451031e-05, -7.565402570850648153e-05, -7.570523268344935258e-05, -7.575631218831442267e-05, -7.580726415097722938e-05, -7.585808849952435022e-05, -7.590878516226316048e-05, -7.595935406770811806e-05, -7.600979514458984369e-05, -7.606010832185287115e-05, -7.611029352865369578e-05, -7.616035069437024764e-05, -7.621027974858977558e-05, -7.626008062110720739e-05, -7.630975324194604775e-05, -7.635929754133513570e-05, -7.640871344971791456e-05, -7.645800089776187800e-05, -7.650715981633357922e-05, -7.655619013653056071e-05, -7.660509178965620072e-05, -7.665386470723128715e-05, -7.670250882099007375e-05, -7.675102406289076979e-05, -7.679941036509166049e-05, -7.684766765998212877e-05, -7.689579588015855885e-05, -7.694379495843231868e-05, -7.699166482784039868e-05, -7.703940542162211497e-05, -7.708701667323931614e-05, -7.713449851637496028e-05, -7.718185088492064661e-05, -7.722907371298490969e-05, -7.727616693490141863e-05, -7.732313048520504336e-05, -7.736996429866190060e-05, -7.741666831024715480e-05, -7.746324245515167240e-05, -7.750968666879245734e-05, -7.755600088678999120e-05, -7.760218504498845357e-05, -7.764823907945375692e-05, -7.769416292646171528e-05, -7.773995652250640612e-05, -7.778561980430708216e-05, -7.783115270878776125e-05, -7.787655517309632187e-05, -7.792182713460287684e-05, -7.796696853088859252e-05, -7.801197929975409130e-05, -7.805685937921859785e-05, -7.810160870751664585e-05, -7.814622722310733433e-05, -7.819071486466129019e-05, -7.823507157106970769e-05, -7.827929728144174639e-05, -7.832339193510530365e-05, -7.836735547160384330e-05, -7.841118783070654655e-05, -7.845488895239436636e-05, -7.849845877686894506e-05, -7.854189724455054079e-05, -7.858520429607682134e-05, -7.862837987230972172e-05, -7.867142391432450726e-05, -7.871433636341692935e-05, -7.875711716110281888e-05, -7.879976624911644637e-05, -7.884228356940942422e-05, -7.888466906415890598e-05, -7.892692267575534843e-05, -7.896904434681077862e-05, -7.901103402015659835e-05, -7.905289163884442443e-05, -7.909461714614241597e-05, -7.913621048554603504e-05, -7.917767160076331510e-05, -7.921900043572506608e-05, -7.926019693458156751e-05, -7.930126104170143013e-05, -7.934219270167933440e-05, -7.938299185932452438e-05, -7.942365845966780085e-05, -7.946419244796093853e-05, -7.950459376967596785e-05, -7.954486237050354856e-05, -7.958499819636062698e-05, -7.962500119337888923e-05, -7.966487130791294693e-05, -7.970460848653781647e-05, -7.974421267605009804e-05, -7.978368382346416739e-05, -7.982302187602219117e-05, -7.986222678118131974e-05, -7.990129848662165610e-05, -7.994023694024438562e-05, -7.997904209017012264e-05, -8.001771388474673027e-05, -8.005625227253950838e-05, -8.009465720232922844e-05, -8.013292862313025331e-05, -8.017106648416953078e-05, -8.020907073489753046e-05, -8.024694132499244508e-05, -8.028467820434185393e-05, -8.032228132306779499e-05, -8.035975063150745264e-05, -8.039708608021891743e-05, -8.043428761998899237e-05, -8.047135520182144286e-05, -8.050828877693837909e-05, -8.054508829679364590e-05, -8.058175371305673594e-05, -8.061828497761925423e-05, -8.065468204260241270e-05, -8.069094486033919508e-05, -8.072707338339015913e-05, -8.076306756454231179e-05, -8.079892735679990699e-05, -8.083465271338959566e-05, -8.087024358776745945e-05, -8.090569993360124338e-05, -8.094102170479271750e-05, -8.097620885545969271e-05, -8.101126133994337975e-05, -8.104617911281450143e-05, -8.108096212885698890e-05, -8.111561034308219828e-05, -8.115012371072885641e-05, -8.118450218725307272e-05, -8.121874572833514248e-05, -8.125285428988456135e-05, -8.128682782802294912e-05, -8.132066629910676377e-05, -8.135436965970941215e-05, -8.138793786662958476e-05, -8.142137087688949392e-05, -8.145466864773465696e-05, -8.148783113663304238e-05, -8.152085830128114139e-05, -8.155375009959429141e-05, -8.158650648971323550e-05, -8.161912743000280775e-05, -8.165161287905151315e-05, -8.168396279567018592e-05, -8.171617713889883349e-05, -8.174825586799635017e-05, -8.178019894244760511e-05, -8.181200632196142296e-05, -8.184367796646974363e-05, -8.187521383613275870e-05, -8.190661389133057659e-05, -8.193787809266951097e-05, -8.196900640097974969e-05, -8.199999877731634415e-05, -8.203085518295695955e-05, -8.206157557940865115e-05, -8.209215992839845885e-05, -8.212260819187899082e-05, -8.215292033202830149e-05, -8.218309631124872609e-05, -8.221313609216590482e-05, -8.224303963763446139e-05, -8.227280691073010188e-05, -8.230243787475381603e-05, -8.233193249323282593e-05, -8.236129072991656087e-05, -8.239051254878443657e-05, -8.241959791403611084e-05, -8.244854679009868000e-05, -8.247735914162333142e-05, -8.250603493348695626e-05, -8.253457413078964223e-05, -8.256297669886169383e-05, -8.259124260325402360e-05, -8.261937180974389839e-05, -8.264736428433441080e-05, -8.267521999325395065e-05, -8.270293890295491747e-05, -8.273052098012010378e-05, -8.275796619164915604e-05, -8.278527450467569159e-05, -8.281244588655416617e-05, -8.283948030486441405e-05, -8.286637772741590352e-05, -8.289313812224100128e-05, -8.291976145759371209e-05, -8.294624770196165912e-05, -8.297259682405301942e-05, -8.299880879280176866e-05, -8.302488357737281758e-05, -8.305082114714793092e-05, -8.307662147174346766e-05, -8.310228452099667940e-05, -8.312781026497084681e-05, -8.315319867395880326e-05, -8.317844971847724277e-05, -8.320356336926426697e-05, -8.322853959729230072e-05, -8.325337837375474282e-05, -8.327807967007064163e-05, -8.330264345789037362e-05, -8.332706970908298528e-05, -8.335135839574760435e-05, -8.337550949021150181e-05, -8.339952296502475219e-05, -8.342339879296424511e-05, -8.344713694703684303e-05, -8.347073740046807844e-05, -8.349420012671834911e-05, -8.351752509946848467e-05, -8.354071229262703788e-05, -8.356376168033269694e-05, -8.358667323694374165e-05, -8.360944693704902098e-05, -8.363208275546525606e-05, -8.365458066723248658e-05, -8.367694064761754022e-05, -8.369916267211809839e-05, -8.372124671645007888e-05, -8.374319275656441381e-05, -8.376500076863402572e-05, -8.378667072905899107e-05, -8.380820261446690611e-05, -8.382959640171127420e-05, -8.385085206787139733e-05, -8.387196959025637415e-05, -8.389294894639894712e-05, -8.391379011405958180e-05, -8.393449307122539623e-05, -8.395505779611022866e-05, -8.397548426715378378e-05, -8.399577246302533250e-05, -8.401592236261797931e-05, -8.403593394505283639e-05, -8.405580718967749221e-05, -8.407554207606582179e-05, -8.409513858402084627e-05, -8.411459669357007087e-05, -8.413391638496868323e-05, -8.415309763869855059e-05, -8.417214043546876186e-05, -8.419104475621371668e-05, -8.420981058209837033e-05, -8.422843789451149804e-05, -8.424692667506944910e-05, -8.426527690561590287e-05, -8.428348856822094723e-05, -8.430156164518140386e-05, -8.431949611902348450e-05, -8.433729197249732930e-05, -8.435494918858158755e-05, -8.437246775048141197e-05, -8.438984764162858060e-05, -8.440708884568408539e-05, -8.442419134653334812e-05, -8.444115512828983898e-05, -8.445798017529382968e-05, -8.447466647211324727e-05, -8.449121400354132959e-05, -8.450762275460159899e-05, -8.452389271054184508e-05, -8.454002385683778383e-05, -8.455601617919190568e-05, -8.457186966353328575e-05, -8.458758429602093135e-05, -8.460316006303841515e-05, -8.461859695119430889e-05, -8.463389494732940685e-05, -8.464905403850774056e-05, -8.466407421202132213e-05, -8.467895545539049667e-05, -8.469369775636216688e-05, -8.470830110290732649e-05, -8.472276548322915115e-05, -8.473709088575422988e-05, -8.475127729913688841e-05, -8.476532471226127618e-05, -8.477923311423297742e-05, -8.479300249439054426e-05, -8.480663284229636239e-05, -8.482012414773991719e-05, -8.483347640073988084e-05, -8.484668959154029048e-05, -8.485976371061067019e-05, -8.487269874865162821e-05, -8.488549469658759276e-05, -8.489815154557090490e-05, -8.491066928698307893e-05, -8.492304791242793127e-05, -8.493528741374124335e-05, -8.494738778298295545e-05, -8.495934901244097488e-05, -8.497117109462904827e-05, -8.498285402229120678e-05, -8.499439778839345844e-05, -8.500580238613351881e-05, -8.501706780893353332e-05, -8.502819405044234049e-05, -8.503918110453888724e-05, -8.505002896532461230e-05, -8.506073762712984304e-05, -8.507130708451379547e-05, -8.508173733226016963e-05, -8.509202836538033450e-05, -8.510218017911229795e-05, -8.511219276892076097e-05, -8.512206613049879821e-05, -8.513180025976505255e-05, -8.514139515286383002e-05, -8.515085080617056145e-05, -8.516016721628219370e-05, -8.516934438002540255e-05, -8.517838229445386859e-05, -8.518728095684686779e-05, -8.519604036471134501e-05, -8.520466051578007088e-05, -8.521314140801381019e-05, -8.522148303959819126e-05, -8.522968540894788013e-05, -8.523774851470269096e-05, -8.524567235572930721e-05, -8.525345693112126812e-05, -8.526110224019797931e-05, -8.526860828250774861e-05, -8.527597505782292067e-05, -8.528320256614360391e-05, -8.529029080769619329e-05, -8.529723978293361427e-05, -8.530404949253522794e-05, -8.531071993740775258e-05, -8.531725111868312234e-05, -8.532364303772060150e-05, -8.532989569610549693e-05, -8.533600909564913097e-05, -8.534198323839057622e-05, -8.534781812659391785e-05, -8.535351376275030009e-05, -8.535907014957651675e-05, -8.536448729001648843e-05, -8.536976518723948717e-05, -8.537490384464242678e-05, -8.537990326584751831e-05, -8.538476345470205316e-05, -8.538948441528169638e-05, -8.539406615188707141e-05, -8.539850866904468167e-05, -8.540281197150807605e-05, -8.540697606425610067e-05, -8.541100095249410501e-05, -8.541488664165269515e-05, -8.541863313738888564e-05, -8.542224044558635707e-05, -8.542570857235403303e-05, -8.542903752402598524e-05, -8.543222730716362907e-05, -8.543527792855343315e-05, -8.543818939520752924e-05, -8.544096171436424078e-05, -8.544359489348764920e-05, -8.544608894026684855e-05, -8.544844386261777507e-05, -8.545065966868064578e-05, -8.545273636682219464e-05, -8.545467396563500846e-05, -8.545647247393585997e-05, -8.545813190076873001e-05, -8.545965225540194795e-05, -8.546103354732941144e-05, -8.546227578627118269e-05, -8.546337898217187573e-05, -8.546434314520140181e-05, -8.546516828575563345e-05, -8.546585441445530673e-05, -8.546640154214612964e-05, -8.546680967990001544e-05, -8.546707883901249407e-05, -8.546720903100553108e-05, -8.546720026762592848e-05, -8.546705256084463349e-05, -8.546676592285881214e-05, -8.546634036609008741e-05, -8.546577590318436303e-05, -8.546507254701363957e-05, -8.546423031067365626e-05, -8.546324920748578835e-05, -8.546212925099601712e-05, -8.546087045497427937e-05, -8.545947283341608016e-05, -8.545793640054123242e-05, -8.545626117079430420e-05, -8.545444715884427985e-05, -8.545249437958422119e-05, -8.545040284813244661e-05, -8.544817257983131130e-05, -8.544580359024762743e-05, -8.544329589517213558e-05, -8.544064951062037207e-05, -8.543786445283230310e-05, -8.543494073827124049e-05, -8.543187838362556290e-05, -8.542867740580695397e-05, -8.542533782195173048e-05, -8.542185964942000209e-05, -8.541824290579583397e-05, -8.541448760888724681e-05, -8.541059377672594575e-05, -8.540656142756798447e-05, -8.540239057989258611e-05, -8.539808125240276669e-05, -8.539363346402578236e-05, -8.538904723391188252e-05, -8.538432258143478424e-05, -8.537945952619244465e-05, -8.537445808800608524e-05, -8.536931828691963619e-05, -8.536404014320109158e-05, -8.535862367734164209e-05, -8.535306891005560719e-05, -8.534737586228028608e-05, -8.534154455517689282e-05, -8.533557501012886226e-05, -8.532946724874342212e-05, -8.532322129285025130e-05, -8.531683716450179161e-05, -8.531031488597434547e-05, -8.530365447976600245e-05, -8.529685596859842812e-05, -8.528991937541496675e-05, -8.528284472338275551e-05, -8.527563203589135562e-05, -8.526828133655184436e-05, -8.526079264919876664e-05, -8.525316599788918632e-05, -8.524540140690123606e-05, -8.523749890073746484e-05, -8.522945850412070440e-05, -8.522128024199696950e-05, -8.521296413953473965e-05, -8.520451022212317013e-05, -8.519591851537453150e-05, -8.518718904512355904e-05, -8.517832183742550121e-05, -8.516931691855778659e-05, -8.516017431502085060e-05, -8.515089405353488288e-05, -8.514147616104347294e-05, -8.513192066471046596e-05, -8.512222759192204986e-05, -8.511239697028558982e-05, -8.510242882763002130e-05, -8.509232319200500975e-05, -8.508208009168225167e-05, -8.507169955515426845e-05, -8.506118161113440635e-05, -8.505052628855831374e-05, -8.503973361658051229e-05, -8.502880362457778513e-05, -8.501773634214887868e-05, -8.500653179911095187e-05, -8.499519002550353351e-05, -8.498371105158639453e-05, -8.497209490783910074e-05, -8.496034162496369623e-05, -8.494845123388033948e-05, -8.493642376573149106e-05, -8.492425925187918959e-05, -8.491195772390442830e-05, -8.489951921361085492e-05, -8.488694375302123442e-05, -8.487423137437689338e-05, -8.486138211014097258e-05, -8.484839599299657034e-05, -8.483527305584430303e-05, -8.482201333180725174e-05, -8.480861685422761483e-05, -8.479508365666528491e-05, -8.478141377290184682e-05, -8.476760723693713530e-05, -8.475366408299075287e-05, -8.473958434550257128e-05, -8.472536805912943823e-05, -8.471101525874913472e-05, -8.469652597945854546e-05, -8.468190025657172085e-05, -8.466713812562422735e-05, -8.465223962236920370e-05, -8.463720478277759129e-05, -8.462203364304088534e-05, -8.460672623956776031e-05, -8.459128260898659071e-05, -8.457570278814340460e-05, -8.455998681410239863e-05, -8.454413472414680540e-05, -8.452814655577757887e-05, -8.451202234671438367e-05, -8.449576213489413143e-05, -8.447936595847342026e-05, -8.446283385582365583e-05, -8.444616586553668920e-05, -8.442936202642123899e-05, -8.441242237750396199e-05, -8.439534695802896529e-05, -8.437813580745810445e-05, -8.436078896546935716e-05, -8.434330647195941181e-05, -8.432568836704189210e-05, -8.430793469104722146e-05, -8.429004548452397841e-05, -8.427202078823565741e-05, -8.425386064316455848e-05, -8.423556509050906312e-05, -8.421713417168446105e-05, -8.419856792832224545e-05, -8.417986640227182057e-05, -8.416102963559667994e-05, -8.414205767057864830e-05, -8.412295054971542861e-05, -8.410370831572054780e-05, -8.408433101152421063e-05, -8.406481868027302858e-05, -8.404517136532730943e-05, -8.402538911026542106e-05, -8.400547195888105395e-05, -8.398541995518347860e-05, -8.396523314339816900e-05, -8.394491156796375327e-05, -8.392445527353586260e-05, -8.390386430498814768e-05, -8.388313870740410653e-05, -8.386227852608609695e-05, -8.384128380655112163e-05, -8.382015459452936456e-05, -8.379889093596747064e-05, -8.377749287702637737e-05, -8.375596046408188399e-05, -8.373429374372478706e-05, -8.371249276275821054e-05, -8.369055756820127862e-05, -8.366848820728986101e-05, -8.364628472746907847e-05, -8.362394717640124454e-05, -8.360147560196295178e-05, -8.357887005224207664e-05, -8.355613057554173682e-05, -8.353325722038176847e-05, -8.351025003549044561e-05, -8.348710906981277426e-05, -8.346383437250699594e-05, -8.344042599294170090e-05, -8.341688398070458313e-05, -8.339320838559028369e-05, -8.336939925760991816e-05, -8.334545664698744458e-05, -8.332138060415670894e-05, -8.329717117976893979e-05, -8.327282842468572801e-05, -8.324835238997891837e-05, -8.322374312693586794e-05, -8.319900068705662715e-05, -8.317412512204842390e-05, -8.314911648383887730e-05, -8.312397482455989724e-05, -8.309870019655929895e-05, -8.307329265239589693e-05, -8.304775224484015549e-05, -8.302207902687382287e-05, -8.299627305169173365e-05, -8.297033437269675374e-05, -8.294426304350615003e-05, -8.291805911794817511e-05, -8.289172265005850305e-05, -8.286525369408940438e-05, -8.283865230450119447e-05, -8.281191853596272146e-05, -8.278505244335684140e-05, -8.275805408177579691e-05, -8.273092350652226071e-05, -8.270366077310995899e-05, -8.267626593726051375e-05, -8.264873905490783374e-05, -8.262108018219526848e-05, -8.259328937547590641e-05, -8.256536669131304918e-05, -8.253731218648008977e-05, -8.250912591795727335e-05, -8.248080794293699634e-05, -8.245235831882032345e-05, -8.242377710321757039e-05, -8.239506435394793797e-05, -8.236622012904060988e-05, -8.233724448673080884e-05, -8.230813748546550229e-05, -8.227889918389922816e-05, -8.224952964089539593e-05, -8.222002891552631374e-05, -8.219039706706990865e-05, -8.216063415501505284e-05, -8.213074023905844647e-05, -8.210071537910389942e-05, -8.207055963526361879e-05, -8.204027306785872389e-05, -8.200985573741377099e-05, -8.197930770466531857e-05, -8.194862903055547627e-05, -8.191781977623362610e-05, -8.188688000305669346e-05, -8.185580977258994674e-05, -8.182460914660140015e-05, -8.179327818706982325e-05, -8.176181695617945546e-05, -8.173022551632076499e-05, -8.169850393009273927e-05, -8.166665226029610862e-05, -8.163467056994078662e-05, -8.160255892224635801e-05, -8.157031738063073520e-05, -8.153794600872299252e-05, -8.150544487035782327e-05, -8.147281402957155523e-05, -8.144005355061001113e-05, -8.140716349792300637e-05, -8.137414393616592106e-05, -8.134099493019978136e-05, -8.130771654508731571e-05, -8.127430884609861974e-05, -8.124077189871261998e-05, -8.120710576860455134e-05, -8.117331052165971286e-05, -8.113938622396791125e-05, -8.110533294181869034e-05, -8.107115074170906962e-05, -8.103683969034342223e-05, -8.100239985462225349e-05, -8.096783130165507579e-05, -8.093313409875565166e-05, -8.089830831343460763e-05, -8.086335401341671373e-05, -8.082827126661967375e-05, -8.079306014116960225e-05, -8.075772070539606433e-05, -8.072225302782593632e-05, -8.068665717719670084e-05, -8.065093322244495423e-05, -8.061508123270648787e-05, -8.057910127732351168e-05, -8.054299342584061549e-05, -8.050675774799898206e-05, -8.047039431375143043e-05, -8.043390319324243947e-05, -8.039728445682443804e-05, -8.036053817504959214e-05, -8.032366441867139055e-05, -8.028666325864475327e-05, -8.024953476612763071e-05, -8.021227901247364467e-05, -8.017489606924217140e-05, -8.013738600819392353e-05, -8.009974890128330636e-05, -8.006198482067470809e-05, -8.002409383872849998e-05, -7.998607602800163272e-05, -7.994793146125602542e-05, -7.990966021145233143e-05, -7.987126235175050757e-05, -7.983273795551198255e-05, -7.979408709629293487e-05, -7.975530984785358989e-05, -7.971640628415382879e-05, -7.967737647934543656e-05, -7.963822050778989641e-05, -7.959893844404150338e-05, -7.955953036285134874e-05, -7.951999633917261905e-05, -7.948033644815643553e-05, -7.944055076515135262e-05, -7.940063936570434730e-05, -7.936060232556247252e-05, -7.932043972066505093e-05, -7.928015162715406966e-05, -7.923973812136843407e-05, -7.919919927984335787e-05, -7.915853517931376482e-05, -7.911774589670618430e-05, -7.907683150914953914e-05, -7.903579209396765105e-05, -7.899462772868125996e-05, -7.895333849100806469e-05, -7.891192445886321082e-05, -7.887038571035342245e-05, -7.882872232378650254e-05, -7.878693437766485477e-05, -7.874502195068654067e-05, -7.870298512174716339e-05, -7.866082396993267134e-05, -7.861853857452949545e-05, -7.857612901501793555e-05, -7.853359537107309552e-05, -7.849093772256527627e-05, -7.844815614956135810e-05, -7.840525073231767211e-05, -7.836222155128841631e-05, -7.831906868712790529e-05, -7.827579222067341277e-05, -7.823239223296429422e-05, -7.818886880523309637e-05, -7.814522201890151856e-05, -7.810145195558939810e-05, -7.805755869710916724e-05, -7.801354232546588033e-05, -7.796940292286057479e-05, -7.792514057168064884e-05, -7.788075535451116432e-05, -7.783624735413498220e-05, -7.779161665351624205e-05, -7.774686333581964730e-05, -7.770198748440126306e-05, -7.765698918280274272e-05, -7.761186851477045064e-05, -7.756662556422957674e-05, -7.752126041530409942e-05, -7.747577315230846429e-05, -7.743016385974954932e-05, -7.738443262231818089e-05, -7.733857952490999119e-05, -7.729260465259755423e-05, -7.724650809065236796e-05, -7.720028992453622141e-05, -7.715395023989390336e-05, -7.710748912257163381e-05, -7.706090665860050278e-05, -7.701420293419756807e-05, -7.696737803577542334e-05, -7.692043204993641119e-05, -7.687336506346449162e-05, -7.682617716334689899e-05, -7.677886843674635935e-05, -7.673143897102193420e-05, -7.668388885372191897e-05, -7.663621817257599612e-05, -7.658842701551370723e-05, -7.654051547064699733e-05, -7.649248362627234269e-05, -7.644433157088018332e-05, -7.639605939314909541e-05, -7.634766718193661630e-05, -7.629915502630094202e-05, -7.625052301548154721e-05, -7.620177123890036419e-05, -7.615289978617322127e-05, -7.610390874710085748e-05, -7.605479821167065719e-05, -7.600556827005846628e-05, -7.595621901262047406e-05, -7.590675052990608824e-05, -7.585716291265020997e-05, -7.580745625176517008e-05, -7.575763063836235892e-05, -7.570768616373215506e-05, -7.565762291934609372e-05, -7.560744099686747836e-05, -7.555714048814307301e-05, -7.550672148520388830e-05, -7.545618408026846119e-05, -7.540552836573334106e-05, -7.535475443418599177e-05, -7.530386237839648391e-05, -7.525285229131817245e-05, -7.520172426608936372e-05, -7.515047839603372192e-05, -7.509911477465240875e-05, -7.504763349563647033e-05, -7.499603465285796034e-05, -7.494431834037231172e-05, -7.489248465241780809e-05, -7.484053368341798257e-05, -7.478846552797203614e-05, -7.473628028086872898e-05, -7.468397803707648710e-05, -7.463155889174600448e-05, -7.457902294021224879e-05, -7.452637027798544899e-05, -7.447360100076373982e-05, -7.442071520442504386e-05, -7.436771298502802018e-05, -7.431459443881253870e-05, -7.426135966220217383e-05, -7.420800875179375550e-05, -7.415454180437206009e-05, -7.410095891689964603e-05, -7.404726018651959138e-05, -7.399344571055496537e-05, -7.393951558651111868e-05, -7.388546991206588501e-05, -7.383130878508389254e-05, -7.377703230360706363e-05, -7.372264056585557700e-05, -7.366813367023208263e-05, -7.361351171531037177e-05, -7.355877479984808929e-05, -7.350392302278799402e-05, -7.344895648323693878e-05, -7.339387528049019717e-05, -7.333867951401998461e-05, -7.328336928346742163e-05, -7.322794468866776875e-05, -7.317240582961719562e-05, -7.311675280649804296e-05, -7.306098571966845488e-05, -7.300510466966466923e-05, -7.294910975719086680e-05, -7.289300108314436543e-05, -7.283677874858158964e-05, -7.278044285474573132e-05, -7.272399350305517587e-05, -7.266743079509465242e-05, -7.261075483263950640e-05, -7.255396571763213166e-05, -7.249706355218691722e-05, -7.244004843859920540e-05, -7.238292047934048073e-05, -7.232567977704626753e-05, -7.226832643454408878e-05, -7.221086055481911045e-05, -7.215328224103956603e-05, -7.209559159654858440e-05, -7.203778872485294118e-05, -7.197987372964765663e-05, -7.192184671479410823e-05, -7.186370778432209076e-05, -7.180545704244130877e-05, -7.174709459353510179e-05, -7.168862054214915510e-05, -7.163003499301666670e-05, -7.157133805103575535e-05, -7.151252982127183214e-05, -7.145361040896968947e-05, -7.139457991954317392e-05, -7.133543845857837117e-05, -7.127618613183451396e-05, -7.121682304523526785e-05, -7.115734930488205336e-05, -7.109776501704546719e-05, -7.103807028816650198e-05, -7.097826522485608549e-05, -7.091834993389887533e-05, -7.085832452224149537e-05, -7.079818909700806692e-05, -7.073794376549008501e-05, -7.067758863514843771e-05, -7.061712381361631989e-05, -7.055654940868767299e-05, -7.049586552833386809e-05, -7.043507228069214568e-05, -7.037416977406787890e-05, -7.031315811693580680e-05, -7.025203741794065781e-05, -7.019080778588770357e-05, -7.012946932975799201e-05, -7.006802215869741045e-05, -7.000646638201896241e-05, -6.994480210920360789e-05, -6.988302944990132045e-05, -6.982114851392165467e-05, -6.975915941124826087e-05, -6.969706225202882918e-05, -6.963485714657728501e-05, -6.957254420537624211e-05, -6.951012353906643152e-05, -6.944759525846192112e-05, -6.938495947454011387e-05, -6.932221629844314366e-05, -6.925936584147889181e-05, -6.919640821512235585e-05, -6.913334353100528183e-05, -6.907017190093221054e-05, -6.900689343686909334e-05, -6.894350825094615180e-05, -6.888001645545743042e-05, -6.881641816286376465e-05, -6.875271348578089535e-05, -6.868890253699655847e-05, -6.862498542945834204e-05, -6.856096227627744020e-05, -6.849683319072996776e-05, -6.843259828624661970e-05, -6.836825767642616940e-05, -6.830381147503743384e-05, -6.823925979599485187e-05, -6.817460275338539958e-05, -6.810984046145810062e-05, -6.804497303461170697e-05, -6.798000058742619499e-05, -6.791492323462210785e-05, -6.784974109109291900e-05, -6.778445427189195389e-05, -6.771906289222508527e-05, -6.765356706746326919e-05, -6.758796691314608227e-05, -6.752226254495648683e-05, -6.745645407874729905e-05, -6.739054163053193253e-05, -6.732452531647047989e-05, -6.725840525289944699e-05, -6.719218155630565076e-05, -6.712585434332869934e-05, -6.705942373077480206e-05, -6.699288983560885481e-05, -6.692625277494164643e-05, -6.685951266606223571e-05, -6.679266962639688720e-05, -6.672572377354052669e-05, -6.665867522524537056e-05, -6.659152409940890475e-05, -6.652427051410306333e-05, -6.645691458754668976e-05, -6.638945643811018540e-05, -6.632189618432789656e-05, -6.625423394489049793e-05, -6.618646983863249716e-05, -6.611860398456430017e-05, -6.605063650183114698e-05, -6.598256750974519050e-05, -6.591439712777000606e-05, -6.584612547552431831e-05, -6.577775267278122872e-05, -6.570927883947045179e-05, -6.564070409566748654e-05, -6.557202856161036745e-05, -6.550325235768734522e-05, -6.543437560444023422e-05, -6.536539842256468356e-05, -6.529632093291130195e-05, -6.522714325647511384e-05, -6.515786551441217478e-05, -6.508848782802847195e-05, -6.501901031878159110e-05, -6.494943310828418597e-05, -6.487975631829171331e-05, -6.480998007072022731e-05, -6.474010448763357244e-05, -6.467012969124709691e-05, -6.460005580392683946e-05, -6.452988294819259226e-05, -6.445961124670535124e-05, -6.438924082228528677e-05, -6.431877179790015627e-05, -6.424820429666680847e-05, -6.417753844185184755e-05, -6.410677435687453334e-05, -6.403591216529406908e-05, -6.396495199082738231e-05, -6.389389395733740195e-05, -6.382273818883566039e-05, -6.375148480948454317e-05, -6.368013394358604045e-05, -6.360868571559843011e-05, -6.353714025012500207e-05, -6.346549767191652486e-05, -6.339375810587101522e-05, -6.332192167703586583e-05, -6.324998851059697620e-05, -6.317795873189563914e-05, -6.310583246641630277e-05, -6.303360983978948436e-05, -6.296129097779510427e-05, -6.288887600634929926e-05, -6.281636505151949297e-05, -6.274375823952844813e-05, -6.267105569672464069e-05, -6.259825754961423024e-05, -6.252536392484779213e-05, -6.245237494921088487e-05, -6.237929074963951355e-05, -6.230611145322328764e-05, -6.223283718717648628e-05, -6.215946807886941886e-05, -6.208600425581592961e-05, -6.201244584566000765e-05, -6.193879297621091517e-05, -6.186504577539805752e-05, -6.179120437130621978e-05, -6.171726889216227173e-05, -6.164323946632572170e-05, -6.156911622230355665e-05, -6.149489928875466027e-05, -6.142058879445956370e-05, -6.134618486835274128e-05, -6.127168763950966779e-05, -6.119709723713357774e-05, -6.112241379059057988e-05, -6.104763742936448665e-05, -6.097276828309171874e-05, -6.089780648154576709e-05, -6.082275215464232255e-05, -6.074760543242371753e-05, -6.067236644509407453e-05, -6.059703532297330884e-05, -6.052161219653357806e-05, -6.044609719638499096e-05, -6.037049045326283424e-05, -6.029479209806003079e-05, -6.021900226179731743e-05, -6.014312107562667361e-05, -6.006714867084665617e-05, -5.999108517889371211e-05, -5.991493073132717599e-05, -5.983868545986630218e-05, -5.976234949634377292e-05, -5.968592297274159900e-05, -5.960940602117414515e-05, -5.953279877389152503e-05, -5.945610136328003482e-05, -5.937931392186346791e-05, -5.930243658229135124e-05, -5.922546947735791208e-05, -5.914841273998823414e-05, -5.907126650324204546e-05, -5.899403090031335255e-05, -5.891670606453269684e-05, -5.883929212935529624e-05, -5.876178922837879215e-05, -5.868419749533123519e-05, -5.860651706407343651e-05, -5.852874806860251182e-05, -5.845089064303775963e-05, -5.837294492164072577e-05, -5.829491103880222688e-05, -5.821678912904428157e-05, -5.813857932702074747e-05, -5.806028176752007911e-05, -5.798189658545212103e-05, -5.790342391586706771e-05, -5.782486389394304952e-05, -5.774621665498807745e-05, -5.766748233444099183e-05, -5.758866106787323766e-05, -5.750975299097655220e-05, -5.743075823958174197e-05, -5.735167694964575361e-05, -5.727250925725491299e-05, -5.719325529862680219e-05, -5.711391521009861788e-05, -5.703448912814496584e-05, -5.695497718936601598e-05, -5.687537953048917613e-05, -5.679569628836986451e-05, -5.671592759999428800e-05, -5.663607360246516456e-05, -5.655613443302315654e-05, -5.647611022903154280e-05, -5.639600112798044028e-05, -5.631580726748944678e-05, -5.623552878529395287e-05, -5.615516581926172345e-05, -5.607471850739707191e-05, -5.599418698780777838e-05, -5.591357139874173583e-05, -5.583287187857109354e-05, -5.575208856578184883e-05, -5.567122159899181764e-05, -5.559027111695310792e-05, -5.550923725852094202e-05, -5.542812016268781585e-05, -5.534691996857035967e-05, -5.526563681539321062e-05, -5.518427084252982613e-05, -5.510282218945079460e-05, -5.502129099576342233e-05, -5.493967740119751691e-05, -5.485798154559411827e-05, -5.477620356892283921e-05, -5.469434361128577523e-05, -5.461240181288489040e-05, -5.453037831405728783e-05, -5.444827325526075589e-05, -5.436608677705996492e-05, -5.428381902016403491e-05, -5.420147012537771924e-05, -5.411904023363989387e-05, -5.403652948600513948e-05, -5.395393802365103947e-05, -5.387126598786008057e-05, -5.378851352005886032e-05, -5.370568076176683819e-05, -5.362276785463719641e-05, -5.353977494044054309e-05, -5.345670216105123093e-05, -5.337354965848269546e-05, -5.329031757485538971e-05, -5.320700605239936604e-05, -5.312361523347255840e-05, -5.304014526054607118e-05, -5.295659627620722841e-05, -5.287296842316364638e-05, -5.278926184422749914e-05, -5.270547668233805630e-05, -5.262161308054957393e-05, -5.253767118201752511e-05, -5.245365113003387045e-05, -5.236955306799441002e-05, -5.228537713940241541e-05, -5.220112348788613285e-05, -5.211679225718437688e-05, -5.203238359114953896e-05, -5.194789763374777728e-05, -5.186333452906196435e-05, -5.177869442127715200e-05, -5.169397745470229600e-05, -5.160918377375513152e-05, -5.152431352296560184e-05, -5.143936684697986996e-05, -5.135434389054421817e-05, -5.126924479852808058e-05, -5.118406971590820019e-05, -5.109881878777262015e-05, -5.101349215932026360e-05, -5.092808997586432181e-05, -5.084261238281691952e-05, -5.075705952571193057e-05, -5.067143155018887077e-05, -5.058572860199737697e-05, -5.049995082699970753e-05, -5.041409837115645118e-05, -5.032817138054785191e-05, -5.024217000135960590e-05, -5.015609437988521971e-05, -5.006994466252655913e-05, -4.998372099579729151e-05, -4.989742352630725970e-05, -4.981105240078485054e-05, -4.972460776606224965e-05, -4.963808976907827392e-05, -4.955149855687824960e-05, -4.946483427661800341e-05, -4.937809707554795876e-05, -4.929128710103565319e-05, -4.920440450055065445e-05, -4.911744942166826035e-05, -4.903042201207210757e-05, -4.894332241953981959e-05, -4.885615079196080790e-05, -4.876890727734077823e-05, -4.868159202376644653e-05, -4.859420517944396719e-05, -4.850674689268268352e-05, -4.841921731188424512e-05, -4.833161658556487463e-05, -4.824394486233985011e-05, -4.815620229092696774e-05, -4.806838902014650788e-05, -4.798050519892493496e-05, -4.789255097627488037e-05, -4.780452650133777193e-05, -4.771643192332959671e-05, -4.762826739158263601e-05, -4.754003305553017132e-05, -4.745172906469445650e-05, -4.736335556870607073e-05, -4.727491271730712374e-05, -4.718640066031656806e-05, -4.709781954766834267e-05, -4.700916952939584173e-05, -4.692045075561596335e-05, -4.683166337657177961e-05, -4.674280754257756761e-05, -4.665388340406195387e-05, -4.656489111155101438e-05, -4.647583081565794075e-05, -4.638670266710032651e-05, -4.629750681670537124e-05, -4.620824341537399347e-05, -4.611891261411934026e-05, -4.602951456405142530e-05, -4.594004941636034421e-05, -4.585051732235650513e-05, -4.576091843343425380e-05, -4.567125290107513293e-05, -4.558152087686832615e-05, -4.549172251249393423e-05, -4.540185795972689176e-05, -4.531192737044064663e-05, -4.522193089659092414e-05, -4.513186869023966074e-05, -4.504174090354256280e-05, -4.495154768873259289e-05, -4.486128919816024786e-05, -4.477096558425697383e-05, -4.468057699953892017e-05, -4.459012359662685503e-05, -4.449960552822973281e-05, -4.440902294714840087e-05, -4.431837600627965164e-05, -4.422766485859965473e-05, -4.413688965718772124e-05, -4.404605055521041345e-05, -4.395514770592441796e-05, -4.386418126267760951e-05, -4.377315137891151084e-05, -4.368205820814587663e-05, -4.359090190400197000e-05, -4.349968262018657052e-05, -4.340840051049560627e-05, -4.331705572881382860e-05, -4.322564842911869493e-05, -4.313417876546418701e-05, -4.304264689200416872e-05, -4.295105296297661092e-05, -4.285939713270688474e-05, -4.276767955561188150e-05, -4.267590038618355997e-05, -4.258405977901252778e-05, -4.249215788877226625e-05, -4.240019487022240335e-05, -4.230817087820867303e-05, -4.221608606766665570e-05, -4.212394059360527129e-05, -4.203173461113095694e-05, -4.193946827543108548e-05, -4.184714174177765847e-05, -4.175475516552740792e-05, -4.166230870212531308e-05, -4.156980250708797831e-05, -4.147723673602819706e-05, -4.138461154463792305e-05, -4.129192708869227512e-05, -4.119918352405362326e-05, -4.110638100665453955e-05, -4.101351969251855386e-05, -4.092059973776302021e-05, -4.082762129856328388e-05, -4.073458453119221414e-05, -4.064148959200422580e-05, -4.054833663742256697e-05, -4.045512582396365938e-05, -4.036185730822041524e-05, -4.026853124686589636e-05, -4.017514779665351077e-05, -4.008170711442039395e-05, -3.998820935706674811e-05, -3.989465468160094494e-05, -3.980104324508144627e-05, -3.970737520466217116e-05, -3.961365071757542647e-05, -3.951986994111911331e-05, -3.942603303267769955e-05, -3.933214014972560119e-05, -3.923819144978986546e-05, -3.914418709049114690e-05, -3.905012722952743754e-05, -3.895601202465630633e-05, -3.886184163374101160e-05, -3.876761621469178472e-05, -3.867333592551134631e-05, -3.857900092427812817e-05, -3.848461136912898704e-05, -3.839016741830119034e-05, -3.829566923009389989e-05, -3.820111696287277974e-05, -3.810651077509035210e-05, -3.801185082527266165e-05, -3.791713727200346647e-05, -3.782237027396456367e-05, -3.772754998989848597e-05, -3.763267657861273693e-05, -3.753775019899958438e-05, -3.744277101001989227e-05, -3.734773917070640715e-05, -3.725265484016821696e-05, -3.715751817757315985e-05, -3.706232934217328258e-05, -3.696708849329155907e-05, -3.687179579030526824e-05, -3.677645139268711908e-05, -3.668105545996771025e-05, -3.658560815173909431e-05, -3.649010962767606202e-05, -3.639456004751828684e-05, -3.629895957107496672e-05, -3.620330835822834772e-05, -3.610760656891679691e-05, -3.601185436315978647e-05, -3.591605190104062774e-05, -3.582019934271069966e-05, -3.572429684838895403e-05, -3.562834457836572385e-05, -3.553234269298619595e-05, -3.543629135267475813e-05, -3.534019071791824146e-05, -3.524404094926992506e-05, -3.514784220734876359e-05, -3.505159465284404254e-05, -3.495529844649772610e-05, -3.485895374912978677e-05, -3.476256072162085820e-05, -3.466611952491630087e-05, -3.456963032003027470e-05, -3.447309326802793097e-05, -3.437650853005175846e-05, -3.427987626730303006e-05, -3.418319664104667484e-05, -3.408646981261070891e-05, -3.398969594339007754e-05, -3.389287519482969414e-05, -3.379600772844943118e-05, -3.369909370582698974e-05, -3.360213328860172136e-05, -3.350512663847448572e-05, -3.340807391721191969e-05, -3.331097528662833114e-05, -3.321383090861188247e-05, -3.311664094510668088e-05, -3.301940555811708135e-05, -3.292212490971148809e-05, -3.282479916200527838e-05, -3.272742847718136851e-05, -3.263001301749504526e-05, -3.253255294523438578e-05, -3.243504842276311061e-05, -3.233749961250349401e-05, -3.223990667692262844e-05, -3.214226977855826246e-05, -3.204458908000141961e-05, -3.194686474390026767e-05, -3.184909693296417762e-05, -3.175128580994623413e-05, -3.165343153766444524e-05, -3.155553427900603176e-05, -3.145759419688793517e-05, -3.135961145430017221e-05, -3.126158621428778284e-05, -3.116351863993824679e-05, -3.106540889440203592e-05, -3.096725714089739828e-05, -3.086906354267058823e-05, -3.077082826303922095e-05, -3.067255146537463384e-05, -3.057423331308411238e-05, -3.047587396965871360e-05, -3.037747359861155128e-05, -3.027903236352605647e-05, -3.018055042803774939e-05, -3.008202795581688198e-05, -2.998346511061172805e-05, -2.988486205620874232e-05, -2.978621895643713093e-05, -2.968753597519001034e-05, -2.958881327641125464e-05, -2.949005102407775185e-05, -2.939124938224688523e-05, -2.929240851499557741e-05, -2.919352858646774454e-05, -2.909460976085229039e-05, -2.899565220238723307e-05, -2.889665607535912232e-05, -2.879762154410775573e-05, -2.869854877300788965e-05, -2.859943792649541249e-05, -2.850028916905390062e-05, -2.840110266519678661e-05, -2.830187857951113392e-05, -2.820261707661755868e-05, -2.810331832117470542e-05, -2.800398247790048385e-05, -2.790460971155473183e-05, -2.780520018694304055e-05, -2.770575406892071524e-05, -2.760627152237538732e-05, -2.750675271225288613e-05, -2.740719780354354413e-05, -2.730760696126463959e-05, -2.720798035050406622e-05, -2.710831813638033967e-05, -2.700862048404684287e-05, -2.690888755871342531e-05, -2.680911952562880178e-05, -2.670931655008437753e-05, -2.660947879741401784e-05, -2.650960643299838491e-05, -2.640969962224682822e-05, -2.630975853062371715e-05, -2.620978332363034491e-05, -2.610977416680936367e-05, -2.600973122574841656e-05, -2.590965466606289893e-05, -2.580954465342155565e-05, -2.570940135352880521e-05, -2.560922493212896815e-05, -2.550901555500589772e-05, -2.540877338798700838e-05, -2.530849859692563042e-05, -2.520819134772680039e-05, -2.510785180632983598e-05, -2.500748013871205276e-05, -2.490707651089322299e-05, -2.480664108891723226e-05, -2.470617403887885930e-05, -2.460567552690534450e-05, -2.450514571916076066e-05, -2.440458478184582661e-05, -2.430399288120175272e-05, -2.420337018349258201e-05, -2.410271685502678605e-05, -2.400203306216170684e-05, -2.390131897126310926e-05, -2.380057474874952835e-05, -2.369980056107405132e-05, -2.359899657471061256e-05, -2.349816295618079373e-05, -2.339729987203541272e-05, -2.329640748885871809e-05, -2.319548597327267508e-05, -2.309453549191901870e-05, -2.299355621148089368e-05, -2.289254829868733363e-05, -2.279151192027269491e-05, -2.269044724302103776e-05, -2.258935443374819295e-05, -2.248823365928762647e-05, -2.238708508651746326e-05, -2.228590888234209308e-05, -2.218470521369638192e-05, -2.208347424754537387e-05, -2.198221615088854998e-05, -2.188093109073725655e-05, -2.177961923416349760e-05, -2.167828074823706131e-05, -2.157691580007448190e-05, -2.147552455682092673e-05, -2.137410718563195790e-05, -2.127266385371787621e-05, -2.117119472830353107e-05, -2.106969997663216606e-05, -2.096817976598763154e-05, -2.086663426368075755e-05, -2.076506363703120020e-05, -2.066346805341620030e-05, -2.056184768020776063e-05, -2.046020268482176023e-05, -2.035853323469501684e-05, -2.025683949728969817e-05, -2.015512164009296959e-05, -2.005337983062124957e-05, -1.995161423640189351e-05, -1.984982502499987858e-05, -1.974801236400416658e-05, -1.964617642100936390e-05, -1.954431736366037039e-05, -1.944243535961162684e-05, -1.934053057653156707e-05, -1.923860318212449502e-05, -1.913665334411253621e-05, -1.903468123023974753e-05, -1.893268700827650152e-05, -1.883067084600097016e-05, -1.872863291122602332e-05, -1.862657337178554403e-05, -1.852449239551583787e-05, -1.842239015030065102e-05, -1.832026680403027553e-05, -1.821812252460575061e-05, -1.811595747996114976e-05, -1.801377183804527468e-05, -1.791156576682594804e-05, -1.780933943428950189e-05, -1.770709300844550406e-05, -1.760482665730770676e-05, -1.750254054892158524e-05, -1.740023485134554727e-05, -1.729790973265536819e-05, -1.719556536094830746e-05, -1.709320190432489411e-05, -1.699081953091569633e-05, -1.688841840886285618e-05, -1.678599870632459918e-05, -1.668356059147474302e-05, -1.658110423250700729e-05, -1.647862979761663624e-05, -1.637613745502736830e-05, -1.627362737297285557e-05, -1.617109971970108874e-05, -1.606855466347867966e-05, -1.596599237257214870e-05, -1.586341301527534830e-05, -1.576081675989060121e-05, -1.565820377473316948e-05, -1.555557422813103757e-05, -1.545292828842897815e-05, -1.535026612397023585e-05, -1.524758790311902780e-05, -1.514489379426467384e-05, -1.504218396578046285e-05, -1.493945858606889954e-05, -1.483671782354322905e-05, -1.473396184661338459e-05, -1.463119082371315012e-05, -1.452840492328166118e-05, -1.442560431376770945e-05, -1.432278916363381366e-05, -1.421995964133802019e-05, -1.411711591535626644e-05, -1.401425815418662619e-05, -1.391138652630802687e-05, -1.380850120022569460e-05, -1.370560234445248219e-05, -1.360269012749035466e-05, -1.349976471788042693e-05, -1.339682628413868412e-05, -1.329387499480600566e-05, -1.319091101842497182e-05, -1.308793452354874401e-05, -1.298494567871798480e-05, -1.288194465251088373e-05, -1.277893161347878279e-05, -1.267590673019623266e-05, -1.257287017124253078e-05, -1.246982210518297823e-05, -1.236676270061445011e-05, -1.226369212612402132e-05, -1.216061055029303743e-05, -1.205751814171998120e-05, -1.195441506900622885e-05, -1.185130150073769314e-05, -1.174817760553476281e-05, -1.164504355198797204e-05, -1.154189950870801779e-05, -1.143874564430730635e-05, -1.133558212738127453e-05, -1.123240912655394651e-05, -1.112922681043635469e-05, -1.102603534763097811e-05, -1.092283490675434980e-05, -1.081962565642283845e-05, -1.071640776523434237e-05, -1.061318140181363620e-05, -1.050994673477096459e-05, -1.040670393270621468e-05, -1.030345316423174530e-05, -1.020019459795360321e-05, -1.009692840247595814e-05, -9.993654746405310858e-06, -9.890373798331966851e-06, -9.787085726857209161e-06, -9.683790700579379931e-06, -9.580488888075076274e-06, -9.477180457944868027e-06, -9.373865578771755874e-06, -9.270544419125409890e-06, -9.167217147584873419e-06, -9.063883932719960534e-06, -8.960544943095470873e-06, -8.857200347275677219e-06, -8.753850313805502733e-06, -8.650495011237969908e-06, -8.547134608115359162e-06, -8.443769272973725224e-06, -8.340399174342536293e-06, -8.237024480748919369e-06, -8.133645360699184770e-06, -8.030261982705921023e-06, -7.926874515269548180e-06, -7.823483126882444560e-06, -7.720087986028794288e-06, -7.616689261188894454e-06, -7.513287120820452625e-06, -7.409881733385923142e-06, -7.306473267333835971e-06, -7.203061891103158923e-06, -7.099647773127580253e-06, -6.996231081816832429e-06, -6.892811985584030123e-06, -6.789390652827005838e-06, -6.685967251932654341e-06, -6.582541951276615871e-06, -6.479114919227638360e-06, -6.375686324128868172e-06, -6.272256334325220272e-06, -6.168825118144674897e-06, -6.065392843902627916e-06, -5.961959679901579968e-06, -5.858525794435513928e-06, -5.755091355771153457e-06, -5.651656532175396706e-06, -5.548221491896540133e-06, -5.444786403168647504e-06, -5.341351434215887544e-06, -5.237916753233836536e-06, -5.134482528412228775e-06, -5.031048927939260344e-06, -4.927616119959976081e-06, -4.824184272621889077e-06, -4.720753554056410327e-06, -4.617324132360118290e-06, -4.513896175645128551e-06, -4.410469851974375419e-06, -4.307045329411986675e-06, -4.203622775999956281e-06, -4.100202359767144104e-06, -3.996784248705929153e-06, -3.893368610822611421e-06, -3.789955614072661724e-06, -3.686545426411091365e-06, -3.583138215773836038e-06, -3.479734150058941540e-06, -3.376333397172463207e-06, -3.272936124986650446e-06, -3.169542501344349186e-06, -3.066152694081722263e-06, -2.962766871014171740e-06, -2.859385199917637258e-06, -2.756007848579020760e-06, -2.652634984731374917e-06, -2.549266776104349444e-06, -2.445903390405475486e-06, -2.342544995301457621e-06, -2.239191758463997078e-06, -2.135843847528035547e-06, -2.032501430096099191e-06, -1.929164673761068588e-06, -1.825833746092079014e-06, -1.722508814615826009e-06, -1.619190046866969552e-06, -1.515877610323357426e-06, -1.412571672456454176e-06, -1.309272400708018900e-06, -1.205979962494442484e-06, -1.102694525206482478e-06, -9.994162562135941901e-07, -8.961453228452378316e-07, -7.928818924182529291e-07, -6.896261322181462017e-07, -5.863782095034504983e-07, -4.831382915054341598e-07, -3.799065454324457153e-07, -2.766831384512282825e-07, -1.734682377142707647e-07, -7.026201034112371999e-08, 3.293537657726596761e-08, 1.361237559742218726e-07, 2.393029608260205705e-07, 3.424728241245399911e-07, 4.456331788959437941e-07, 5.487838581963461946e-07, 6.519246951120805260e-07, 7.550555227553651306e-07, 8.581761742829838249e-07, 9.612864828689424048e-07, 1.064386281723143817e-06, 1.167475404087046161e-06, 1.270553683233956401e-06, 1.373620952464668563e-06, 1.476677045126151409e-06, 1.579721794584216368e-06, 1.682755034242165185e-06, 1.785776597536500965e-06, 1.888786317932543300e-06, 1.991784028943140494e-06, 2.094769564101312304e-06, 2.197742756978922148e-06, 2.300703441182361895e-06, 2.403651450352785648e-06, 2.506586618161826294e-06, 2.609508778330200587e-06, 2.712417764600434260e-06, 2.815313410755502259e-06, 2.918195550614492780e-06, 3.021064018032888905e-06, 3.123918646898235608e-06, 3.226759271148777022e-06, 3.329585724746164610e-06, 3.432397841694105444e-06, 3.535195456034019893e-06, 3.637978401840736997e-06, 3.740746513241107597e-06, 3.843499624391338577e-06, 3.946237569472632341e-06, 4.048960182732818481e-06, 4.151667298440644490e-06, 4.254358750904486298e-06, 4.357034374490938103e-06, 4.459694003574557062e-06, 4.562337472602429219e-06, 4.664964616043940456e-06, 4.767575268409389195e-06, 4.870169264264032740e-06, 4.972746438205374096e-06, 5.075306624858921715e-06, 5.177849658919655153e-06, 5.280375375106426742e-06, 5.382883608180676782e-06, 5.485374192964882768e-06, 5.587846964297125390e-06, 5.690301757072472020e-06, 5.792738406238823709e-06, 5.895156746774081722e-06, 5.997556613700303999e-06, 6.099937842102206893e-06, 6.202300267077116540e-06, 6.304643723799256112e-06, 6.406968047469734456e-06, 6.509273073335095264e-06, 6.611558636705823052e-06, 6.713824572910970147e-06, 6.816070717339472410e-06, 6.918296905435920848e-06, 7.020502972677928894e-06, 7.122688754590115231e-06, 7.224854086762639407e-06, 7.326998804801250611e-06, 7.429122744391472446e-06, 7.531225741248538190e-06, 7.633307631140660496e-06, 7.735368249884624271e-06, 7.837407433346048414e-06, 7.939425017435052393e-06, 8.041420838124956194e-06, 8.143394731424924540e-06, 8.245346533398593153e-06, 8.347276080159792924e-06, 8.449183207872776923e-06, 8.551067752747922552e-06, 8.652929551060220580e-06, 8.754768439122214134e-06, 8.856584253302482654e-06, 8.958376830021354210e-06, 9.060146005746560224e-06, 9.161891617011814291e-06, 9.263613500389598703e-06, 9.365311492509846610e-06, 9.466985430055418861e-06, 9.568635149762613922e-06, 9.670260488416617610e-06, 9.771861282870188643e-06, 9.873437370016431615e-06, 9.974988586807491007e-06, 1.007651477024995011e-05, 1.017801575740536973e-05, 1.027949138538589549e-05, 1.038094149137269603e-05, 1.048236591258890539e-05, 1.058376448631813914e-05, 1.068513704990020842e-05, 1.078648344072680683e-05, 1.088780349625990967e-05, 1.098909705400485357e-05, 1.109036395152874585e-05, 1.119160402645606680e-05, 1.129281711646915413e-05, 1.139400305930372046e-05, 1.149516169276735936e-05, 1.159629285471247918e-05, 1.169739638305492937e-05, 1.179847211576951287e-05, 1.189951989088574415e-05, 1.200053954650636541e-05, 1.210153092078474598e-05, 1.220249385192081660e-05, 1.230342817820195399e-05, 1.240433373795796108e-05, 1.250521036957955091e-05, 1.260605791153205336e-05, 1.270687620233308566e-05, 1.280766508054834940e-05, 1.290842438483250494e-05, 1.300915395388418385e-05, 1.310985362646452024e-05, 1.321052324141528745e-05, 1.331116263760950926e-05, 1.341177165401501953e-05, 1.351235012964493114e-05, 1.361289790357607076e-05, 1.371341481496266186e-05, 1.381390070301414768e-05, 1.391435540699079513e-05, 1.401477876624466409e-05, 1.411517062017475530e-05, 1.421553080824515213e-05, 1.431585917000348928e-05, 1.441615554503153009e-05, 1.451641977300861781e-05, 1.461665169366214784e-05, 1.471685114679062235e-05, 1.481701797225476649e-05, 1.491715201000016630e-05, 1.501725310000826440e-05, 1.511732108235945888e-05, 1.521735579718388052e-05, 1.531735708467963451e-05, 1.541732478513112682e-05, 1.551725873886428500e-05, 1.561715878628727329e-05, 1.571702476788617285e-05, 1.581685652420303334e-05, 1.591665389584930357e-05, 1.601641672352411040e-05, 1.611614484796538156e-05, 1.621583811001258373e-05, 1.631549635055777077e-05, 1.641511941056841297e-05, 1.651470713108287388e-05, 1.661425935321084402e-05, 1.671377591812911245e-05, 1.681325666709967975e-05, 1.691270144144317814e-05, 1.701211008255701149e-05, 1.711148243191112358e-05, 1.721081833104830304e-05, 1.731011762157982618e-05, 1.740938014520385118e-05, 1.750860574367849260e-05, 1.760779425884029345e-05, 1.770694553259986474e-05, 1.780605940693753841e-05, 1.790513572392165992e-05, 1.800417432568209304e-05, 1.810317505442806174e-05, 1.820213775244424031e-05, 1.830106226209077028e-05, 1.839994842579923193e-05, 1.849879608609065562e-05, 1.859760508554882669e-05, 1.869637526683882192e-05, 1.879510647270235085e-05, 1.889379854595819963e-05, 1.899245132949815851e-05, 1.909106466630460278e-05, 1.918963839942481084e-05, 1.928817237198823681e-05, 1.938666642720273279e-05, 1.948512040835030014e-05, 1.958353415880504322e-05, 1.968190752200680627e-05, 1.978024034147911705e-05, 1.987853246082507355e-05, 1.997678372372769980e-05, 2.007499397394544644e-05, 2.017316305533039172e-05, 2.027129081180191914e-05, 2.036937708736457289e-05, 2.046742172610398531e-05, 2.056542457218253671e-05, 2.066338546985749204e-05, 2.076130426345900511e-05, 2.085918079738599527e-05, 2.095701491614618831e-05, 2.105480646431210468e-05, 2.115255528653900977e-05, 2.125026122757839192e-05, 2.134792413225627158e-05, 2.144554384546878322e-05, 2.154312021222238224e-05, 2.164065307758979931e-05, 2.173814228672800423e-05, 2.183558768489601728e-05, 2.193298911740678770e-05, 2.203034642968904392e-05, 2.212765946723915843e-05, 2.222492807563884739e-05, 2.232215210056877734e-05, 2.241933138778669482e-05, 2.251646578312354693e-05, 2.261355513252269564e-05, 2.271059928199687490e-05, 2.280759807764571405e-05, 2.290455136567344087e-05, 2.300145899234108516e-05, 2.309832080402780393e-05, 2.319513664718339673e-05, 2.329190636834987114e-05, 2.338862981415346028e-05, 2.348530683132629674e-05, 2.358193726665894482e-05, 2.367852096706147161e-05, 2.377505777951592508e-05, 2.387154755109393878e-05, 2.396799012897424510e-05, 2.406438536039960535e-05, 2.416073309271608838e-05, 2.425703317336923856e-05, 2.435328544988187003e-05, 2.444948976987247434e-05, 2.454564598105076514e-05, 2.464175393121354122e-05, 2.473781346826241660e-05, 2.483382444017792845e-05, 2.492978669503281519e-05, 2.502570008100966860e-05, 2.512156444635769116e-05, 2.521737963943211015e-05, 2.531314550868977648e-05, 2.540886190266828361e-05, 2.550452867000291840e-05, 2.560014565942295451e-05, 2.569571271975186919e-05, 2.579122969990297939e-05, 2.588669644889744970e-05, 2.598211281583800720e-05, 2.607747864992693922e-05, 2.617279380046193271e-05, 2.626805811683167647e-05, 2.636327144853367930e-05, 2.645843364514867947e-05, 2.655354455635779542e-05, 2.664860403193868024e-05, 2.674361192176574192e-05, 2.683856807580612837e-05, 2.693347234413685445e-05, 2.702832457691974337e-05, 2.712312462441849605e-05, 2.721787233699465928e-05, 2.731256756510359383e-05, 2.740721015931208934e-05, 2.750179997027259421e-05, 2.759633684874059331e-05, 2.769082064557063709e-05, 2.778525121171687693e-05, 2.787962839822850128e-05, 2.797395205626722185e-05, 2.806822203708218109e-05, 2.816243819202696061e-05, 2.825660037255540362e-05, 2.835070843022236369e-05, 2.844476221667942897e-05, 2.853876158369176452e-05, 2.863270638311348745e-05, 2.872659646690457365e-05, 2.882043168712684962e-05, 2.891421189593988610e-05, 2.900793694561852145e-05, 2.910160668853150966e-05, 2.919522097713784421e-05, 2.928877966402495929e-05, 2.938228260186642214e-05, 2.947572964343954125e-05, 2.956912064163795320e-05, 2.966245544944651663e-05, 2.975573391995844943e-05, 2.984895590637160175e-05, 2.994212126198833070e-05, 3.003522984021168523e-05, 3.012828149456661932e-05, 3.022127607865411999e-05, 3.031421344620984572e-05, 3.040709345105883392e-05, 3.049991594713183170e-05, 3.059268078847872645e-05, 3.068538782924723447e-05, 3.077803692367933326e-05, 3.087062792614905956e-05, 3.096316069112070991e-05, 3.105563507316627604e-05, 3.114805092698183660e-05, 3.124040810734224431e-05, 3.133270646915946957e-05, 3.142494586743730116e-05, 3.151712615728781257e-05, 3.160924719394459599e-05, 3.170130883274163399e-05, 3.179331092910978257e-05, 3.188525333861431851e-05, 3.197713591691340079e-05, 3.206895851977516041e-05, 3.216072100309460034e-05, 3.225242322285168433e-05, 3.234406503514992775e-05, 3.243564629621160678e-05, 3.252716686235742959e-05, 3.261862659002391748e-05, 3.271002533575882411e-05, 3.280136295621732725e-05, 3.289263930817901686e-05, 3.298385424852315497e-05, 3.307500763424145571e-05, 3.316609932245461259e-05, 3.325712917037136992e-05, 3.334809703532601582e-05, 3.343900277477415386e-05, 3.352984624627248947e-05, 3.362062730749546566e-05, 3.371134581623163771e-05, 3.380200163037945158e-05, 3.389259460796399480e-05, 3.398312460711267651e-05, 3.407359148607178858e-05, 3.416399510320260256e-05, 3.425433531698157967e-05, 3.434461198599657615e-05, 3.443482496896347217e-05, 3.452497412470164858e-05, 3.461505931215077165e-05, 3.470508039036667992e-05, 3.479503721852212283e-05, 3.488492965590205794e-05, 3.497475756192101176e-05, 3.506452079609830572e-05, 3.515421921807485451e-05, 3.524385268760921554e-05, 3.533342106457364515e-05, 3.542292420897082920e-05, 3.551236198090938686e-05, 3.560173424062060125e-05, 3.569104084845451627e-05, 3.578028166488013992e-05, 3.586945655048131074e-05, 3.595856536597369948e-05, 3.604760797218046879e-05, 3.613658423004842098e-05, 3.622549400064456932e-05, 3.631433714515593466e-05, 3.640311352488622516e-05, 3.649182300127169944e-05, 3.658046543585768685e-05, 3.666904069031437621e-05, 3.675754862643336663e-05, 3.684598910612383894e-05, 3.693436199142864255e-05, 3.702266714450471884e-05, 3.711090442761899469e-05, 3.719907370318489305e-05, 3.728717483372265788e-05, 3.737520768187483792e-05, 3.746317211041946653e-05, 3.755106798224553836e-05, 3.763889516036971969e-05, 3.772665350793211994e-05, 3.781434288819694229e-05, 3.790196316454830266e-05, 3.798951420051070759e-05, 3.807699585970512375e-05, 3.816440800590533610e-05, 3.825175050299399704e-05, 3.833902321497885559e-05, 3.842622600600504272e-05, 3.851335874033533891e-05, 3.860042128234630486e-05, 3.868741349656425670e-05, 3.877433524762586203e-05, 3.886118640029445712e-05, 3.894796681947534098e-05, 3.903467637017341691e-05, 3.912131491754784984e-05, 3.920788232686967407e-05, 3.929437846353706011e-05, 3.938080319309177432e-05, 3.946715638117968676e-05, 3.955343789358663800e-05, 3.963964759623461053e-05, 3.972578535516211147e-05, 3.981185103653665444e-05, 3.989784450667001293e-05, 3.998376563197984633e-05, 4.006961427902457057e-05, 4.015539031450019364e-05, 4.024109360522061692e-05, 4.032672401813353237e-05, 4.041228142031682430e-05, 4.049776567897483563e-05, 4.058317666145413630e-05, 4.066851423522028065e-05, 4.075377826786982853e-05, 4.083896862714599845e-05, 4.092408518090018520e-05, 4.100912779712681018e-05, 4.109409634396002131e-05, 4.117899068965426556e-05, 4.126381070259983362e-05, 4.134855625131957346e-05, 4.143322720446506173e-05, 4.151782343083215530e-05, 4.160234479933800614e-05, 4.168679117903716173e-05, 4.177116243911720795e-05, 4.185545844889948736e-05, 4.193967907783525701e-05, 4.202382419552125358e-05, 4.210789367167687089e-05, 4.219188737615977918e-05, 4.227580517896227952e-05, 4.235964695021129022e-05, 4.244341256016514845e-05, 4.252710187922869418e-05, 4.261071477793047487e-05, 4.269425112693883906e-05, 4.277771079705785032e-05, 4.286109365922349926e-05, 4.294439958451957360e-05, 4.302762844415480858e-05, 4.311078010947822842e-05, 4.319385445197574465e-05, 4.327685134327008832e-05, 4.335977065511765230e-05, 4.344261225942316863e-05, 4.352537602821800417e-05, 4.360806183367460758e-05, 4.369066954810388016e-05, 4.377319904395441009e-05, 4.385565019380963998e-05, 4.393802287040276107e-05, 4.402031694659446680e-05, 4.410253229538800963e-05, 4.418466878992601622e-05, 4.426672630348634034e-05, 4.434870470949795997e-05, 4.443060388152173277e-05, 4.451242369324756354e-05, 4.459416401852741820e-05, 4.467582473133902335e-05, 4.475740570580039458e-05, 4.483890681618136966e-05, 4.492032793688170088e-05, 4.500166894244561725e-05, 4.508292970755878873e-05, 4.516411010704476193e-05, 4.524521001587927154e-05, 4.532622930917298121e-05, 4.540716786216761433e-05, 4.548802555026875788e-05, 4.556880224900986014e-05, 4.564949783406695556e-05, 4.573011218127010305e-05, 4.581064516658456829e-05, 4.589109666610797773e-05, 4.597146655610343419e-05, 4.605175471296270816e-05, 4.613196101322143699e-05, 4.621208533357361255e-05, 4.629212755083187905e-05, 4.637208754197884975e-05, 4.645196518412668651e-05, 4.653176035453245480e-05, 4.661147293061274690e-05, 4.669110278990704939e-05, 4.677064981011118405e-05, 4.685011386907353344e-05, 4.692949484477730067e-05, 4.700879261535148015e-05, 4.708800705908518941e-05, 4.716713805438890207e-05, 4.724618547984440927e-05, 4.732514921416563927e-05, 4.740402913621672299e-05, 4.748282512500897180e-05, 4.756153705970051160e-05, 4.764016481959308441e-05, 4.771870828414691550e-05, 4.779716733295902938e-05, 4.787554184577403753e-05, 4.795383170249900562e-05, 4.803203678316792549e-05, 4.811015696797334677e-05, 4.818819213726416783e-05, 4.826614217152648605e-05, 4.834400695139982017e-05, 4.842178635767197393e-05, 4.849948027127690153e-05, 4.857708857330860571e-05, 4.865461114499969769e-05, 4.873204786773326921e-05, 4.880939862305578089e-05, 4.888666329264343852e-05, 4.896384175833267939e-05, 4.904093390211803781e-05, 4.911793960613377463e-05, 4.919485875266904254e-05, 4.927169122416352894e-05, 4.934843690320833004e-05, 4.942509567254274572e-05, 4.950166741506791337e-05, 4.957815201382633678e-05, 4.965454935201568941e-05, 4.973085931298615808e-05, 4.980708178023656016e-05, 4.988321663742870929e-05, 4.995926376836636826e-05, 5.003522305701020426e-05, 5.011109438747321488e-05, 5.018687764402193427e-05, 5.026257271107285532e-05, 5.033817947320608379e-05, 5.041369781514549742e-05, 5.048912762177170218e-05, 5.056446877811997899e-05, 5.063972116937606217e-05, 5.071488468089051189e-05, 5.078995919815787713e-05, 5.086494460683139339e-05, 5.093984079271878147e-05, 5.101464764178311476e-05, 5.108936504013895680e-05, 5.116399287406720809e-05, 5.123853102999678303e-05, 5.131297939450282780e-05, 5.138733785433630553e-05, 5.146160629639112460e-05, 5.153578460771716268e-05, 5.160987267553111547e-05, 5.168387038719631703e-05, 5.175777763023582472e-05, 5.183159429233010851e-05, 5.190532026131298521e-05, 5.197895542518616712e-05, 5.205249967210183346e-05, 5.212595289035953363e-05, 5.219931496843726996e-05, 5.227258579495721653e-05, 5.234576525869996292e-05, 5.241885324861412295e-05, 5.249184965379696810e-05, 5.256475436350789197e-05, 5.263756726716485948e-05, 5.271028825434493547e-05, 5.278291721478100494e-05, 5.285545403837858499e-05, 5.292789861517922621e-05, 5.300025083540768904e-05, 5.307251058943498600e-05, 5.314467776779236791e-05, 5.321675226118403618e-05, 5.328873396045519272e-05, 5.336062275662105587e-05, 5.343241854086413638e-05, 5.350412120451815054e-05, 5.357573063907703262e-05, 5.364724673620979522e-05, 5.371866938772322590e-05, 5.378999848560877221e-05, 5.386123392200620734e-05, 5.393237558922065882e-05, 5.400342337971880035e-05, 5.407437718612951579e-05, 5.414523690124061953e-05, 5.421600241801237505e-05, 5.428667362955764730e-05, 5.435725042915186381e-05, 5.442773271024679756e-05, 5.449812036643731592e-05, 5.456841329149144011e-05, 5.463861137934701128e-05, 5.470871452409582054e-05, 5.477872261999613144e-05, 5.484863556147068778e-05, 5.491845324310245136e-05, 5.498817555964865590e-05, 5.505780240602069513e-05, 5.512733367729481571e-05, 5.519676926872445682e-05, 5.526610907570893028e-05, 5.533535299382169110e-05, 5.540450091880816228e-05, 5.547355274656896363e-05, 5.554250837317370140e-05, 5.561136769485706515e-05, 5.568013060801997301e-05, 5.574879700922571589e-05, 5.581736679521305609e-05, 5.588583986287775512e-05, 5.595421610928479815e-05, 5.602249543166580543e-05, 5.609067772741556965e-05, 5.615876289410550679e-05, 5.622675082946435059e-05, 5.629464143139089867e-05, 5.636243459795160695e-05, 5.643013022738007468e-05, 5.649772821807424582e-05, 5.656522846860908069e-05, 5.663263087771832775e-05, 5.669993534430658544e-05, 5.676714176744682199e-05, 5.683425004637658752e-05, 5.690126008051213580e-05, 5.696817176942850877e-05, 5.703498501287226913e-05, 5.710169971075928455e-05, 5.716831576317450405e-05, 5.723483307036881374e-05, 5.730125153277139003e-05, 5.736757105097559144e-05, 5.743379152573414062e-05, 5.749991285798879088e-05, 5.756593494883834223e-05, 5.763185769955209224e-05, 5.769768101157863840e-05, 5.776340478652733151e-05, 5.782902892618174012e-05, 5.789455333249566606e-05, 5.795997790759092861e-05, 5.802530255376899259e-05, 5.809052717349665008e-05, 5.815565166940291016e-05, 5.822067594430613101e-05, 5.828559990118377751e-05, 5.835042344318570266e-05, 5.841514647364500997e-05, 5.847976889604613048e-05, 5.854429061406600884e-05, 5.860871153154240403e-05, 5.867303155248818720e-05, 5.873725058108565644e-05, 5.880136852170197986e-05, 5.886538527885579539e-05, 5.892930075725990121e-05, 5.899311486178824188e-05, 5.905682749748797676e-05, 5.912043856959095907e-05, 5.918394798348543143e-05, 5.924735564474184338e-05, 5.931066145911041877e-05, 5.937386533250623436e-05, 5.943696717101865242e-05, 5.949996688092286747e-05, 5.956286436864770549e-05, 5.962565954081710140e-05, 5.968835230421781020e-05, 5.975094256581161097e-05, 5.981343023274631159e-05, 5.987581521232753911e-05, 5.993809741204478091e-05, 6.000027673956858618e-05, 6.006235310273613239e-05, 6.012432640956008194e-05, 6.018619656824028471e-05, 6.024796348713557529e-05, 6.030962707478889934e-05, 6.037118723992515200e-05, 6.043264389143669017e-05, 6.049399693839523849e-05, 6.055524629004912455e-05, 6.061639185581999245e-05, 6.067743354531531853e-05, 6.073837126831021713e-05, 6.079920493475786245e-05, 6.085993445479865688e-05, 6.092055973873412877e-05, 6.098108069705161164e-05, 6.104149724042097123e-05, 6.110180927968187964e-05, 6.116201672585492167e-05, 6.122211949013750196e-05, 6.128211748390314021e-05, 6.134201061871171693e-05, 6.140179880629288516e-05, 6.146148195855761717e-05, 6.152105998759537203e-05, 6.158053280567448860e-05, 6.163990032523910916e-05, 6.169916245892067186e-05, 6.175831911952162068e-05, 6.181737022002575951e-05, 6.187631567359678847e-05, 6.193515539357772118e-05, 6.199388929348840463e-05, 6.205251728703623925e-05, 6.211103928810064766e-05, 6.216945521074371348e-05, 6.222776496920705063e-05, 6.228596847791063786e-05, 6.234406565146206154e-05, 6.240205640464168921e-05, 6.245994065241307791e-05, 6.251771830992037214e-05, 6.257538929248843932e-05, 6.263295351562068786e-05, 6.269041089500946196e-05, 6.274776134652002252e-05, 6.280500478620195835e-05, 6.286214113028587938e-05, 6.291917029518452793e-05, 6.297609219748888918e-05, 6.303290675398007671e-05, 6.308961388161355734e-05, 6.314621349752842111e-05, 6.320270551904683912e-05, 6.325908986366994362e-05, 6.331536644908974064e-05, 6.337153519317498826e-05, 6.342759601396936705e-05, 6.348354882971476325e-05, 6.353939355882592564e-05, 6.359513011989995220e-05, 6.365075843172802669e-05, 6.370627841326583342e-05, 6.376168998367077252e-05, 6.381699306227316083e-05, 6.387218756858716875e-05, 6.392727342231797601e-05, 6.398225054334941175e-05, 6.403711885174159638e-05, 6.409187826775415708e-05, 6.414652871182039665e-05, 6.420107010455779672e-05, 6.425550236677846680e-05, 6.430982541946381453e-05, 6.436403918378707004e-05, 6.441814358111165963e-05, 6.447213853297751771e-05, 6.452602396111032962e-05, 6.457979978743044920e-05, 6.463346593402537362e-05, 6.468702232318624030e-05, 6.474046887737840443e-05, 6.479380551925392078e-05, 6.484703217165917384e-05, 6.490014875761217726e-05, 6.495315520032368878e-05, 6.500605142319562451e-05, 6.505883734980812984e-05, 6.511151290392771097e-05, 6.516407800951674878e-05, 6.521653259070674612e-05, 6.526887657183275127e-05, 6.532110987740720150e-05, 6.537323243213060255e-05, 6.542524416089075603e-05, 6.547714498876255624e-05, 6.552893484100437156e-05, 6.558061364307037728e-05, 6.563218132059345233e-05, 6.568363779939695641e-05, 6.573498300549097592e-05, 6.578621686507340820e-05, 6.583733930452735942e-05, 6.588835025043072622e-05, 6.593924962954191135e-05, 6.599003736880986609e-05, 6.604071339537127133e-05, 6.609127763654874864e-05, 6.614173001986021149e-05, 6.619207047300451315e-05, 6.624229892387131292e-05, 6.629241530053905679e-05, 6.634241953127454380e-05, 6.639231154453105574e-05, 6.644209126895766777e-05, 6.649175863338527574e-05, 6.654131356683616431e-05, 6.659075599852174365e-05, 6.664008585784261720e-05, 6.668930307438623709e-05, 6.673840757793651291e-05, 6.678739929845978478e-05, 6.683627816611486584e-05, 6.688504411124928815e-05, 6.693369706439870643e-05, 6.698223695629549029e-05, 6.703066371785499559e-05, 6.707897728018491566e-05, 6.712717757458303155e-05, 6.717526453253780839e-05, 6.722323808572545445e-05, 6.727109816601936729e-05, 6.731884470547670318e-05, 6.736647763634778254e-05, 6.741399689107362343e-05, 6.746140240228564334e-05, 6.750869410280462923e-05, 6.755587192564829985e-05, 6.760293580401977248e-05, 6.764988567131446126e-05, 6.769672146111976538e-05, 6.774344310721223668e-05, 6.779005054356614481e-05, 6.783654370434363812e-05, 6.788292252389098956e-05, 6.792918693676003685e-05, 6.797533687768559036e-05, 6.802137228159405252e-05, 6.806729308361286399e-05, 6.811309921904638008e-05, 6.815879062340603873e-05, 6.820436723238719923e-05, 6.824982898187762609e-05, 6.829517580796354704e-05, 6.834040764691988164e-05, 6.838552443520757142e-05, 6.843052610949306846e-05, 6.847541260662696300e-05, 6.852018386365332119e-05, 6.856483981781693563e-05, 6.860938040654372845e-05, 6.865380556745784106e-05, 6.869811523838243372e-05, 6.874230935732668867e-05, 6.878638786249319627e-05, 6.883035069228643889e-05, 6.887419778529053763e-05, 6.891792908029681819e-05, 6.896154451628279088e-05, 6.900504403241930636e-05, 6.904842756807992045e-05, 6.909169506281881705e-05, 6.913484645639154350e-05, 6.917788168875101259e-05, 6.922080070003881541e-05, 6.926360343059050680e-05, 6.930628982094421125e-05, 6.934885981181828827e-05, 6.939131334414000961e-05, 6.943365035902257412e-05, 6.947587079777706111e-05, 6.951797460190798511e-05, 6.955996171311584373e-05, 6.960183207329332300e-05, 6.964358562453387604e-05, 6.968522230912139613e-05, 6.972674206953528527e-05, 6.976814484845134871e-05, 6.980943058874027702e-05, 6.985059923346593851e-05, 6.989165072589432386e-05, 6.993258500948034600e-05, 6.997340202787658144e-05, 7.001410172493163048e-05, 7.005468404468769125e-05, 7.009514893138871835e-05, 7.013549632946879477e-05, 7.017572618355968070e-05, 7.021583843848932269e-05, 7.025583303928216537e-05, 7.029570993115629189e-05, 7.033546905953230082e-05, 7.037511037002109531e-05, 7.041463380843224500e-05, 7.045403932077131618e-05, 7.049332685324102377e-05, 7.053249635223846656e-05, 7.057154776436308258e-05, 7.061048103640545472e-05, 7.064929611535494076e-05, 7.068799294839815553e-05, 7.072657148291616551e-05, 7.076503166649324378e-05, 7.080337344690471339e-05, 7.084159677212511954e-05, 7.087970159032649486e-05, 7.091768784987796637e-05, 7.095555549934433250e-05, 7.099330448749313746e-05, 7.103093476328415452e-05, 7.106844627587631134e-05, 7.110583897462675483e-05, 7.114311280908792382e-05, 7.118026772901549085e-05, 7.121730368435959366e-05, 7.125422062526308691e-05, 7.129101850207708699e-05, 7.132769726534408548e-05, 7.136425686580415628e-05, 7.140069725440132526e-05, 7.143701838227375824e-05, 7.147322020075306983e-05, 7.150930266137973262e-05, 7.154526571588566220e-05, 7.158110931620077658e-05, 7.161683341446093798e-05, 7.165243796298868112e-05, 7.168792291431636096e-05, 7.172328822116922557e-05, 7.175853383647043057e-05, 7.179365971334804579e-05, 7.182866580512451142e-05, 7.186355206531682771e-05, 7.189831844765098845e-05, 7.193296490604544685e-05, 7.196749139461775630e-05, 7.200189786769072323e-05, 7.203618427977565616e-05, 7.207035058559414461e-05, 7.210439674006101005e-05, 7.213832269829140739e-05, 7.217212841559930714e-05, 7.220581384750364819e-05, 7.223937894971222393e-05, 7.227282367814379994e-05, 7.230614798891004844e-05, 7.233935183832282607e-05, 7.237243518289956771e-05, 7.240539797934827037e-05, 7.243824018458192655e-05, 7.247096175571617971e-05, 7.250356265006206009e-05, 7.253604282513082294e-05, 7.256840223863997947e-05, 7.260064084849603085e-05, 7.263275861281725003e-05, 7.266475548991516902e-05, 7.269663143830178880e-05, 7.272838641669611165e-05, 7.276002038400806787e-05, 7.279153329935247484e-05, 7.282292512204804771e-05, 7.285419581160905108e-05, 7.288534532775198032e-05, 7.291637363039455875e-05, 7.294728067965434168e-05, 7.297806643584856738e-05, 7.300873085949971357e-05, 7.303927391132700002e-05, 7.306969555225113191e-05, 7.309999574339467933e-05, 7.313017444607917701e-05, 7.316023162183138558e-05, 7.319016723237555314e-05, 7.321998123963768422e-05, 7.324967360574552628e-05, 7.327924429302770236e-05, 7.330869326401250486e-05, 7.333802048143408907e-05, 7.336722590822384021e-05, 7.339630950751534720e-05, 7.342527124264421295e-05, 7.345411107714576394e-05, 7.348282897476113534e-05, 7.351142489942857027e-05, 7.353989881528993856e-05, 7.356825068668786365e-05, 7.359648047816738951e-05, 7.362458815447306686e-05, 7.365257368055631219e-05, 7.368043702156594813e-05, 7.370817814285291966e-05, 7.373579700997147325e-05, 7.376329358867692065e-05, 7.379066784492547626e-05, 7.381791974487917675e-05, 7.384504925489829156e-05, 7.387205634154622898e-05, 7.389894097158869587e-05, 7.392570311199196296e-05, 7.395234272992846198e-05, 7.397885979277065999e-05, 7.400525426808851148e-05, 7.403152612366287535e-05, 7.405767532747098664e-05, 7.408370184769321918e-05, 7.410960565271507790e-05, 7.413538671112177773e-05, 7.416104499170174023e-05, 7.418658046344567194e-05, 7.421199309554678129e-05, 7.423728285740003317e-05, 7.426244971860782745e-05, 7.428749364896601278e-05, 7.431241461848197920e-05, 7.433721259736107852e-05, 7.436188755601101533e-05, 7.438643946504621090e-05, 7.441086829528098631e-05, 7.443517401772923713e-05, 7.445935660361482824e-05, 7.448341602435930167e-05, 7.450735225158744673e-05, 7.453116525713150123e-05, 7.455485501301866965e-05, 7.457842149148666787e-05, 7.460186466497237972e-05, 7.462518450611636996e-05, 7.464838098776119019e-05, 7.467145408295666439e-05, 7.469440376494846409e-05, 7.471723000719281290e-05, 7.473993278334443828e-05, 7.476251206726173507e-05, 7.478496783301037047e-05, 7.480730005485282147e-05, 7.482950870725773966e-05, 7.485159376489958531e-05, 7.487355520265269134e-05, 7.489539299559573571e-05, 7.491710711901106374e-05, 7.493869754838253325e-05, 7.496016425940162683e-05, 7.498150722795921181e-05, 7.500272643014999909e-05, 7.502382184227594482e-05, 7.504479344083649257e-05, 7.506564120253768064e-05, 7.508636510429143732e-05, 7.510696512320936028e-05, 7.512744123660815114e-05, 7.514779342200793495e-05, 7.516802165713261255e-05, 7.518812591990820719e-05, 7.520810618846751302e-05, 7.522796244114464696e-05, 7.524769465647766439e-05, 7.526730281320812542e-05, 7.528678689028071543e-05, 7.530614686684710757e-05, 7.532538272225871212e-05, 7.534449443607266672e-05, 7.536348198804901745e-05, 7.538234535815233159e-05, 7.540108452654993576e-05, 7.541969947361503303e-05, 7.543819017992239319e-05, 7.545655662625168673e-05, 7.547479879358604817e-05, 7.549291666311165605e-05, 7.551091021622143267e-05, 7.552877943450929789e-05, 7.554652429977409931e-05, 7.556414479401814862e-05, 7.558164089944831938e-05, 7.559901259847402765e-05, 7.561625987371144685e-05, 7.563338270797820870e-05, 7.565038108429638481e-05, 7.566725498589258153e-05, 7.568400439619672022e-05, 7.570062929884213210e-05, 7.571712967766909552e-05, 7.573350551671854751e-05, 7.574975680023684078e-05, 7.576588351267422579e-05, 7.578188563868437644e-05, 7.579776316312677531e-05, 7.581351607106381343e-05, 7.582914434775939432e-05, 7.584464797868675388e-05, 7.586002694951887867e-05, 7.587528124613399474e-05, 7.589041085461602839e-05, 7.590541576125108252e-05, 7.592029595252955084e-05, 7.593505141514630757e-05, 7.594968213600024668e-05, 7.596418810219352294e-05, 7.597856930103572611e-05, 7.599282572003476007e-05, 7.600695734690806433e-05, 7.602096416957422500e-05, 7.603484617615624097e-05, 7.604860335498273005e-05, 7.606223569458542180e-05, 7.607574318369770736e-05, 7.608912581126209339e-05, 7.610238356642132511e-05, 7.611551643852291289e-05, 7.612852441712108381e-05, 7.614140749196930062e-05, 7.615416565302980277e-05, 7.616679889046664039e-05, 7.617930719464740901e-05, 7.619169055614620403e-05, 7.620394896573967690e-05, 7.621608241440688608e-05, 7.622809089333429790e-05, 7.623997439391035200e-05, 7.625173290772761618e-05, 7.626336642658487351e-05, 7.627487494248175550e-05, 7.628625844762330931e-05, 7.629751693442025527e-05, 7.630865039548511081e-05, 7.631965882363525339e-05, 7.633054221189248677e-05, 7.634130055348134697e-05, 7.635193384183285633e-05, 7.636244207057967166e-05, 7.637282523355935044e-05, 7.638308332481433727e-05, 7.639321633858919911e-05, 7.640322426933314611e-05, 7.641310711170081762e-05, 7.642286486054949036e-05, 7.643249751094021685e-05, 7.644200505813877411e-05, 7.645138749761359008e-05, 7.646064482503974163e-05, 7.646977703629316764e-05, 7.647878412745539884e-05, 7.648766609481132161e-05, 7.649642293484992339e-05, 7.650505464426366929e-05, 7.651356121994974885e-05, 7.652194265900884285e-05, 7.653019895874462180e-05, 7.653833011666567041e-05, 7.654633613048373935e-05, 7.655421699811436863e-05, 7.656197271767798535e-05, 7.656960328749749139e-05, 7.657710870609967283e-05, 7.658448897221547104e-05, 7.659174408477918304e-05, 7.659887404292970835e-05, 7.660587884600848904e-05, 7.661275849356146122e-05, 7.661951298533757788e-05, 7.662614232128982532e-05, 7.663264650157420666e-05, 7.663902552655165281e-05, 7.664527939678565075e-05, 7.665140811304319219e-05, 7.665741167629535637e-05, 7.666329008771598187e-05, 7.666904334868296768e-05, 7.667467146077853069e-05, 7.668017442578644097e-05, 7.668555224569539636e-05, 7.669080492269707088e-05, 7.669593245918568110e-05, 7.670093485776092697e-05, 7.670581212122449535e-05, 7.671056425258010057e-05, 7.671519125503769936e-05, 7.671969313200835438e-05, 7.672406988710660594e-05, 7.672832152415190855e-05, 7.673244804716486335e-05, 7.673644946037067396e-05, 7.674032576819643601e-05, 7.674407697527344105e-05, 7.674770308643609235e-05, 7.675120410672171519e-05, 7.675458004136956748e-05, 7.675783089582403820e-05, 7.676095667573081200e-05, 7.676395738693937644e-05, 7.676683303550218174e-05, 7.676958362767447811e-05, 7.677220916991374659e-05, 7.677470966888167770e-05, 7.677708513144174552e-05, 7.677933556466060364e-05, 7.678146097580838326e-05, 7.678346137235613183e-05, 7.678533676197989231e-05, 7.678708715255652901e-05, 7.678871255216677689e-05, 7.679021296909335781e-05, 7.679158841182244413e-05, 7.679283888904120576e-05, 7.679396440964121183e-05, 7.679496498271532715e-05, 7.679584061755898613e-05, 7.679659132367091113e-05, 7.679721711075116082e-05, 7.679771798870298693e-05, 7.679809396763158738e-05, 7.679834505784428249e-05, 7.679847126985140944e-05, 7.679847261436493989e-05, 7.679834910229908990e-05, 7.679810074477046893e-05, 7.679772755309753781e-05, 7.679722953880113723e-05, 7.679660671360469108e-05, 7.679585908943225485e-05, 7.679498667841088734e-05, 7.679398949286953934e-05, 7.679286754533852510e-05, 7.679162084855090467e-05, 7.679024941544112864e-05, 7.678875325914513304e-05, 7.678713239300088143e-05, 7.678538683054859525e-05, 7.678351658552912758e-05, 7.678152167188567073e-05, 7.677940210376307860e-05, 7.677715789550713487e-05, 7.677478906166621995e-05, 7.677229561698919677e-05, 7.676967757642667119e-05, 7.676693495513082935e-05, 7.676406776845492270e-05, 7.676107603195397270e-05, 7.675795976138361887e-05, 7.675471897270128431e-05, 7.675135368206522702e-05, 7.674786390583535306e-05, 7.674424966057203745e-05, 7.674051096303710000e-05, 7.673664783019293789e-05, 7.673266027920343376e-05, 7.672854832743304762e-05, 7.672431199244730479e-05, 7.671995129201268746e-05, 7.671546624409578087e-05, 7.671085686686461504e-05, 7.670612317868770252e-05, 7.670126519813414681e-05, 7.669628294397303251e-05, 7.669117643517562081e-05, 7.668594569091166321e-05, 7.668059073055269481e-05, 7.667511157367027242e-05, 7.666950824003643543e-05, 7.666378074962312296e-05, 7.665792912260243144e-05, 7.665195337934754968e-05, 7.664585354043133587e-05, 7.663962962662584325e-05, 7.663328165890474601e-05, 7.662680965844073720e-05, 7.662021364660624701e-05, 7.661349364497429659e-05, 7.660664967531729186e-05, 7.659968175960772826e-05, 7.659258992001755377e-05, 7.658537417891852128e-05, 7.657803455888155162e-05, 7.657057108267838696e-05, 7.656298377327862281e-05, 7.655527265385235079e-05, 7.654743774776919636e-05, 7.653947907859738370e-05, 7.653139667010449470e-05, 7.652319054625852598e-05, 7.651486073122511070e-05, 7.650640724936990376e-05, 7.649783012525761955e-05, 7.648912938365093426e-05, 7.648030504951323699e-05, 7.647135714800529585e-05, 7.646228570448731793e-05, 7.645309074451866473e-05, 7.644377229385604963e-05, 7.643433037845680407e-05, 7.642476502447561140e-05, 7.641507625826533356e-05, 7.640526410637809532e-05, 7.639532859556480990e-05, 7.638526975277291572e-05, 7.637508760515090294e-05, 7.636478218004281115e-05, 7.635435350499215955e-05, 7.634380160774097124e-05, 7.633312651622805201e-05, 7.632232825859136202e-05, 7.631140686316664702e-05, 7.630036235848634059e-05, 7.628919477328185452e-05, 7.627790413648222352e-05, 7.626649047721285846e-05, 7.625495382479897510e-05, 7.624329420876227372e-05, 7.623151165882087140e-05, 7.621960620489171435e-05, 7.620757787708826040e-05, 7.619542670572199692e-05, 7.618315272130112622e-05, 7.617075595453057907e-05, 7.615823643631292278e-05, 7.614559419774845600e-05, 7.613282927013188838e-05, 7.611994168495801912e-05, 7.610693147391665468e-05, 7.609379866889392347e-05, 7.608054330197338709e-05, 7.606716540543541696e-05, 7.605366501175677416e-05, 7.604004215360979629e-05, 7.602629686386471494e-05, 7.601242917558641667e-05, 7.599843912203697730e-05, 7.598432673667429311e-05, 7.597009205315327347e-05, 7.595573510532402481e-05, 7.594125592723191835e-05, 7.592665455311955526e-05, 7.591193101742470663e-05, 7.589708535478085561e-05, 7.588211760001725161e-05, 7.586702778815937107e-05, 7.585181595442647801e-05, 7.583648213423483601e-05, 7.582102636319544488e-05, 7.580544867711481321e-05, 7.578974911199527005e-05, 7.577392770403228151e-05, 7.575798448961802863e-05, 7.574191950533964556e-05, 7.572573278797888074e-05, 7.570942437451200202e-05, 7.569299430211119260e-05, 7.567644260814090538e-05, 7.565976933016191515e-05, 7.564297450593092560e-05, 7.562605817339605632e-05, 7.560902037070136932e-05, 7.559186113618587973e-05, 7.557458050838073685e-05, 7.555717852601284267e-05, 7.553965522800290034e-05, 7.552201065346533283e-05, 7.550424484170908251e-05, 7.548635783223555122e-05, 7.546834966474005033e-05, 7.545022037911428090e-05, 7.543197001543957094e-05, 7.541359861399285209e-05, 7.539510621524512818e-05, 7.537649285985793801e-05, 7.535775858868876283e-05, 7.533890344278709609e-05, 7.531992746339570381e-05, 7.530083069195029938e-05, 7.528161317008023466e-05, 7.526227493960452916e-05, 7.524281604254021833e-05, 7.522323652109212146e-05, 7.520353641766002449e-05, 7.518371577483659292e-05, 7.516377463540369909e-05, 7.514371304233986252e-05, 7.512353103881389373e-05, 7.510322866818482654e-05, 7.508280597400630906e-05, 7.506226300002415066e-05, 7.504159979017226980e-05, 7.502081638858228922e-05, 7.499991283957174520e-05, 7.497888918765311360e-05, 7.495774547753031325e-05, 7.493648175409542628e-05, 7.491509806243692451e-05, 7.489359444783168695e-05, 7.487197095574654488e-05, 7.485022763184135818e-05, 7.482836452196729422e-05, 7.480638167216289763e-05, 7.478427912866270966e-05, 7.476205693788901473e-05, 7.473971514645354804e-05, 7.471725380116084304e-05, 7.469467294900470776e-05, 7.467197263716974273e-05, 7.464915291303140870e-05, 7.462621382415258434e-05, 7.460315541828866194e-05, 7.457997774338588051e-05, 7.455668084757543037e-05, 7.453326477918471534e-05, 7.450972958672771689e-05, 7.448607531890580726e-05, 7.446230202461284525e-05, 7.443840975293134084e-05, 7.441439855313291597e-05, 7.439026847467932098e-05, 7.436601956721827398e-05, 7.434165188058972215e-05, 7.431716546482131514e-05, 7.429256037012944868e-05, 7.426783664691934583e-05, 7.424299434578572111e-05, 7.421803351750901284e-05, 7.419295421306068225e-05, 7.416775648359960843e-05, 7.414244038047317260e-05, 7.411700595521616031e-05, 7.409145325955295697e-05, 7.406578234539249275e-05, 7.403999326483486976e-05, 7.401408607016646962e-05, 7.398806081386137643e-05, 7.396191754858244744e-05, 7.393565632717654258e-05, 7.390927720268063660e-05, 7.388278022831836324e-05, 7.385616545750025913e-05, 7.382943294382387220e-05, 7.380258274107448003e-05, 7.377561490322120019e-05, 7.374852948442277723e-05, 7.372132653902354401e-05, 7.369400612155423483e-05, 7.366656828673178218e-05, 7.363901308946072617e-05, 7.361134058482866091e-05, 7.358355082811179101e-05, 7.355564387477173322e-05, 7.352761978045559772e-05, 7.349947860099751958e-05, 7.347122039241376626e-05, 7.344284521090834838e-05, 7.341435311287404974e-05, 7.338574415488211379e-05, 7.335701839369370911e-05, 7.332817588625475231e-05, 7.329921668969153060e-05, 7.327014086132376642e-05, 7.324094845864693136e-05, 7.321163953934654411e-05, 7.318221416129112313e-05, 7.315267238253474809e-05, 7.312301426131121872e-05, 7.309323985604673996e-05, 7.306334922534306266e-05, 7.303334242799099541e-05, 7.300321952296511907e-05, 7.297298056941859616e-05, 7.294262562669591020e-05, 7.291215475432133257e-05, 7.288156801199966784e-05, 7.285086545962350440e-05, 7.282004715726737333e-05, 7.278911316518525470e-05, 7.275806354382188042e-05, 7.272689835379644407e-05, 7.269561765591557069e-05, 7.266422151116873600e-05, 7.263270998072300806e-05, 7.260108312593486503e-05, 7.256934100833970554e-05, 7.253748368965225526e-05, 7.250551123177342448e-05, 7.247342369678578156e-05, 7.244122114694803705e-05, 7.240890364470953136e-05, 7.237647125269605880e-05, 7.234392403371286268e-05, 7.231126205075036806e-05, 7.227848536697873360e-05, 7.224559404574943723e-05, 7.221258815059591310e-05, 7.217946774522859138e-05, 7.214623289354285356e-05, 7.211288365961409936e-05, 7.207942010769364030e-05, 7.204584230222026001e-05, 7.201215030781003628e-05, 7.197834418925550079e-05, 7.194442401153375711e-05, 7.191038983980030071e-05, 7.187624173939036068e-05, 7.184197977581992971e-05, 7.180760401478089876e-05, 7.177311452214857866e-05, 7.173851136397557443e-05, 7.170379460649446864e-05, 7.166896431611610024e-05, 7.163402055943213958e-05, 7.159896340320855601e-05, 7.156379291439404766e-05, 7.152850916011481007e-05, 7.149311220767545782e-05, 7.145760212455836043e-05, 7.142197897842583786e-05, 7.138624283711369600e-05, 7.135039376864045588e-05, 7.131443184120021155e-05, 7.127835712316521856e-05, 7.124216968308669359e-05, 7.120586958968874291e-05, 7.116945691187677849e-05, 7.113293171873255778e-05, 7.109629407951441413e-05, 7.105954406365748714e-05, 7.102268174077548451e-05, 7.098570718065397355e-05, 7.094862045325948843e-05, 7.091142162873358070e-05, 7.087411077739406604e-05, 7.083668796973475329e-05, 7.079915327642697580e-05, 7.076150676831303207e-05, 7.072374851641599776e-05, 7.068587859193284102e-05, 7.064789706623579124e-05, 7.060980401087408741e-05, 7.057159949756767613e-05, 7.053328359821394724e-05, 7.049485638489087801e-05, 7.045631792984132576e-05, 7.041766830548893850e-05, 7.037890758443217831e-05, 7.034003583943731466e-05, 7.030105314345639505e-05, 7.026195956960383981e-05, 7.022275519117488710e-05, 7.018344008163843715e-05, 7.014401431463264771e-05, 7.010447796397180516e-05, 7.006483110364903504e-05, 7.002507380782100124e-05, 6.998520615082361336e-05, 6.994522820716615849e-05, 6.990514005152434875e-05, 6.986494175875650301e-05, 6.982463340388821898e-05, 6.978421506211502951e-05, 6.974368680880894847e-05, 6.970304871951478443e-05, 6.966230086994240221e-05, 6.962144333598545244e-05, 6.958047619369803411e-05, 6.953939951931187920e-05, 6.949821338923085033e-05, 6.945691788002291767e-05, 6.941551306843807539e-05, 6.937399903139186176e-05, 6.933237584596731076e-05, 6.929064358942381538e-05, 6.924880233919143561e-05, 6.920685217286326831e-05, 6.916479316821565410e-05, 6.912262540318237327e-05, 6.908034895587485266e-05, 6.903796390457246201e-05, 6.899547032772418095e-05, 6.895286830394953411e-05, 6.891015791203829296e-05, 6.886733923094508192e-05, 6.882441233979882445e-05, 6.878137731789566865e-05, 6.873823424470078974e-05, 6.869498319984806479e-05, 6.865162426314264771e-05, 6.860815751455179420e-05, 6.856458303421705900e-05, 6.852090090244647609e-05, 6.847711119971585975e-05, 6.843321400667133885e-05, 6.838920940412072393e-05, 6.834509747304552826e-05, 6.830087829459253817e-05, 6.825655195007634740e-05, 6.821211852097859812e-05, 6.816757808894943109e-05, 6.812293073580121081e-05, 6.807817654351761927e-05, 6.803331559424805877e-05, 6.798834797030786875e-05, 6.794327375417893566e-05, 6.789809302851110241e-05, 6.785280587611483647e-05, 6.780741237997170597e-05, 6.776191262322752210e-05, 6.771630668919366729e-05, 6.767059466134854530e-05, 6.762477662333065591e-05, 6.757885265894881350e-05, 6.753282285217523527e-05, 6.748668728714705912e-05, 6.744044604816563893e-05, 6.739409921969925505e-05, 6.734764688637450846e-05, 6.730108913298853157e-05, 6.725442604449988096e-05, 6.720765770603138339e-05, 6.716078420286974277e-05, 6.711380562046728845e-05, 6.706672204443332871e-05, 6.701953356054718826e-05, 6.697224025474895191e-05, 6.692484221314164649e-05, 6.687733952199330085e-05, 6.682973226772881436e-05, 6.678202053693911837e-05, 6.673420441638409006e-05, 6.668628399297371438e-05, 6.663825935378743710e-05, 6.659013058606741561e-05, 6.654189777720931679e-05, 6.649356101478423142e-05, 6.644512038651104061e-05, 6.639657598027744927e-05, 6.634792788413270846e-05, 6.629917618628054093e-05, 6.625032097509028133e-05, 6.620136233909748602e-05, 6.615230036698601670e-05, 6.610313514760830138e-05, 6.605386676997699962e-05, 6.600449532325658637e-05, 6.595502089678578143e-05, 6.590544358004835730e-05, 6.585576346269676122e-05, 6.580598063453961977e-05, 6.575609518554752578e-05, 6.570610720584165419e-05, 6.565601678571658455e-05, 6.560582401561137990e-05, 6.555552898613143341e-05, 6.550513178804159733e-05, 6.545463251225524604e-05, 6.540403124985759995e-05, 6.535332809208509858e-05, 6.530252313032743343e-05, 6.525161645613867460e-05, 6.520060816123012860e-05, 6.514949833746219330e-05, 6.509828707686688223e-05, 6.504697447161841557e-05, 6.499556061405661184e-05, 6.494404559667519205e-05, 6.489242951212478838e-05, 6.484071245321222589e-05, 6.478889451290292128e-05, 6.473697578431140975e-05, 6.468495636071458575e-05, 6.463283633554270412e-05, 6.458061580238188735e-05, 6.452829485497342077e-05, 6.447587358721562287e-05, 6.442335209315551046e-05, 6.437073046700163292e-05, 6.431800880311450413e-05, 6.426518719600966530e-05, 6.421226574035885054e-05, 6.415924453098138097e-05, 6.410612366285731070e-05, 6.405290323111776382e-05, 6.399958333104843104e-05, 6.394616405808764515e-05, 6.389264550782990473e-05, 6.383902777601546577e-05, 6.378531095854480225e-05, 6.373149515146891606e-05, 6.367758045099089557e-05, 6.362356695346693203e-05, 6.356945475540763419e-05, 6.351524395346859573e-05, 6.346093464446450345e-05, 6.340652692535928459e-05, 6.335202089326876309e-05, 6.329741664546242148e-05, 6.324271427935348035e-05, 6.318791389251423988e-05, 6.313301558266499385e-05, 6.307801944767659104e-05, 6.302292558557101804e-05, 6.296773409452249696e-05, 6.291244507284867631e-05, 6.285705861902434616e-05, 6.280157483167154477e-05, 6.274599380956243175e-05, 6.269031565162083307e-05, 6.263454045691287618e-05, 6.257866832465830648e-05, 6.252269935423363141e-05, 6.246663364514947424e-05, 6.241047129707450781e-05, 6.235421240982644210e-05, 6.229785708336360811e-05, 6.224140541779779210e-05, 6.218485751339510297e-05, 6.212821347055577897e-05, 6.207147338983707793e-05, 6.201463737194368208e-05, 6.195770551771749297e-05, 6.190067792816496696e-05, 6.184355470442246135e-05, 6.178633594778218754e-05, 6.172902175968360511e-05, 6.167161224170477534e-05, 6.161410749557481598e-05, 6.155650762317659821e-05, 6.149881272652363957e-05, 6.144102290778524387e-05, 6.138313826927607937e-05, 6.132515891344635312e-05, 6.126708494290840107e-05, 6.120891646040238661e-05, 6.115065356882308035e-05, 6.109229637120739179e-05, 6.103384497073905855e-05, 6.097529947073632704e-05, 6.091665997467825798e-05, 6.085792658617111611e-05, 6.079909940897414709e-05, 6.074017854699037533e-05, 6.068116410425629734e-05, 6.062205618496617455e-05, 6.056285489345012574e-05, 6.050356033417553643e-05, 6.044417261176042173e-05, 6.038469183096458327e-05, 6.032511809668038673e-05, 6.026545151395984657e-05, 6.020569218797919969e-05, 6.014584022406615962e-05, 6.008589572769013830e-05, 6.002585880445138379e-05, 5.996572956010728570e-05, 5.990550810054760117e-05, 5.984519453179843254e-05, 5.978478896003335398e-05, 5.972429149156458877e-05, 5.966370223284400546e-05, 5.960302129046349051e-05, 5.954224877115765882e-05, 5.948138478179259159e-05, 5.942042942938191639e-05, 5.935938282107576860e-05, 5.929824506416298696e-05, 5.923701626607465751e-05, 5.917569653437227550e-05, 5.911428597676373058e-05, 5.905278470109261385e-05, 5.899119281534056245e-05, 5.892951042762727311e-05, 5.886773764621275866e-05, 5.880587457948718361e-05, 5.874392133598505369e-05, 5.868187802437606782e-05, 5.861974475346688003e-05, 5.855752163220358627e-05, 5.849520876966061137e-05, 5.843280627505727703e-05, 5.837031425774630246e-05, 5.830773282721620995e-05, 5.824506209309178570e-05, 5.818230216513586872e-05, 5.811945315323902380e-05, 5.805651516743470683e-05, 5.799348831788916133e-05, 5.793037271490363433e-05, 5.786716846891358355e-05, 5.780387569049230266e-05, 5.774049449033885959e-05, 5.767702497929476607e-05, 5.761346726833286463e-05, 5.754982146855936142e-05, 5.748608769121727537e-05, 5.742226604767457291e-05, 5.735835664943778154e-05, 5.729435960815484934e-05, 5.723027503558965952e-05, 5.716610304365007733e-05, 5.710184374437642362e-05, 5.703749724993248957e-05, 5.697306367262298553e-05, 5.690854312488134373e-05, 5.684393571927224588e-05, 5.677924156849264634e-05, 5.671446078537285634e-05, 5.664959348286341834e-05, 5.658463977406498263e-05, 5.651959977218971642e-05, 5.645447359059095008e-05, 5.638926134275264000e-05, 5.632396314228022065e-05, 5.625857910291471952e-05, 5.619310933853515595e-05, 5.612755396313310978e-05, 5.606191309084082933e-05, 5.599618683591967781e-05, 5.593037531274860696e-05, 5.586447863585477895e-05, 5.579849691987432504e-05, 5.573243027958307594e-05, 5.566627882988152529e-05, 5.560004268580180919e-05, 5.553372196249155160e-05, 5.546731677524638365e-05, 5.540082723946906240e-05, 5.533425347070080431e-05, 5.526759558460965038e-05, 5.520085369697908206e-05, 5.513402792373653572e-05, 5.506711838092637217e-05, 5.500012518471412537e-05, 5.493304845139930953e-05, 5.486588829740461783e-05, 5.479864483927785357e-05, 5.473131819369566394e-05, 5.466390847745022463e-05, 5.459641580746794236e-05, 5.452884030079991386e-05, 5.446118207460993191e-05, 5.439344124620341318e-05, 5.432561793300135709e-05, 5.425771225254269036e-05, 5.418972432249907317e-05, 5.412165426066207845e-05, 5.405350218494734576e-05, 5.398526821339323954e-05, 5.391695246416366809e-05, 5.384855505553697724e-05, 5.378007610592215241e-05, 5.371151573384830183e-05, 5.364287405796564590e-05, 5.357415119705005729e-05, 5.350534726998984719e-05, 5.343646239580368855e-05, 5.336749669362832394e-05, 5.329845028272185882e-05, 5.322932328246328718e-05, 5.316011581235480227e-05, 5.309082799201048021e-05, 5.302145994117334266e-05, 5.295201177970368129e-05, 5.288248362758126006e-05, 5.281287560490885923e-05, 5.274318783189926494e-05, 5.267342042889374803e-05, 5.260357351634939248e-05, 5.253364721484194821e-05, 5.246364164506629182e-05, 5.239355692783825624e-05, 5.232339318408263672e-05, 5.225315053485164935e-05, 5.218282910131183936e-05, 5.211242900474778771e-05, 5.204195036656074228e-05, 5.197139330827283950e-05, 5.190075795151347728e-05, 5.183004441803815978e-05, 5.175925282971556834e-05, 5.168838330853106475e-05, 5.161743597658896137e-05, 5.154641095610002562e-05, 5.147530836939732973e-05, 5.140412833893814127e-05, 5.133287098727683847e-05, 5.126153643709487480e-05, 5.119012481118877825e-05, 5.111863623246052903e-05, 5.104707082393531337e-05, 5.097542870874959052e-05, 5.090371001015441991e-05, 5.083191485151367897e-05, 5.076004335630865069e-05, 5.068809564812109647e-05, 5.061607185066802517e-05, 5.054397208775729503e-05, 5.047179648332194218e-05, 5.039954516140790209e-05, 5.032721824616372320e-05, 5.025481586185630815e-05, 5.018233813287384116e-05, 5.010978518369740901e-05, 5.003715713893200926e-05, 4.996445412329410897e-05, 4.989167626159822776e-05, 4.981882367879215403e-05, 4.974589649991202508e-05, 4.967289485011680479e-05, 4.959981885467597788e-05, 4.952666863895919581e-05, 4.945344432845227552e-05, 4.938014604876001835e-05, 4.930677392557793274e-05, 4.923332808472270702e-05, 4.915980865212025611e-05, 4.908621575379252139e-05, 4.901254951588861436e-05, 4.893881006465677648e-05, 4.886499752644650691e-05, 4.879111202772515760e-05, 4.871715369506407581e-05, 4.864312265514214811e-05, 4.856901903474855153e-05, 4.849484296077002097e-05, 4.842059456020932805e-05, 4.834627396017601123e-05, 4.827188128787271481e-05, 4.819741667062822323e-05, 4.812288023586673075e-05, 4.804827211111183262e-05, 4.797359242400257129e-05, 4.789884130227972805e-05, 4.782401887378888585e-05, 4.774912526648420375e-05, 4.767416060841403761e-05, 4.759912502774149258e-05, 4.752401865272990150e-05, 4.744884161174710752e-05, 4.737359403326402754e-05, 4.729827604585900934e-05, 4.722288777820321520e-05, 4.714742935908120816e-05, 4.707190091737654567e-05, 4.699630258207598772e-05, 4.692063448226822960e-05, 4.684489674714756790e-05, 4.676908950600046995e-05, 4.669321288822469643e-05, 4.661726702331658233e-05, 4.654125204087372034e-05, 4.646516807059784755e-05, 4.638901524228166562e-05, 4.631279368582870876e-05, 4.623650353123922880e-05, 4.616014490861386114e-05, 4.608371794815321139e-05, 4.600722278016108766e-05, 4.593065953503042625e-05, 4.585402834326395249e-05, 4.577732933545974051e-05, 4.570056264231505539e-05, 4.562372839462543157e-05, 4.554682672328860989e-05, 4.546985775929009735e-05, 4.539282163372370597e-05, 4.531571847777749205e-05, 4.523854842273697488e-05, 4.516131159998849778e-05, 4.508400814100551294e-05, 4.500663817736474281e-05, 4.492920184074977150e-05, 4.485169926292054485e-05, 4.477413057574665541e-05, 4.469649591119336982e-05, 4.461879540131211488e-05, 4.454102917825926818e-05, 4.446319737428381172e-05, 4.438530012172944611e-05, 4.430733755303823621e-05, 4.422930980073638775e-05, 4.415121699745203499e-05, 4.407305927591684676e-05, 4.399483676893670549e-05, 4.391654960942438241e-05, 4.383819793038633061e-05, 4.375978186491208692e-05, 4.368130154619115840e-05, 4.360275710751609197e-05, 4.352414868225124939e-05, 4.344547640386745431e-05, 4.336674040592755879e-05, 4.328794082207251137e-05, 4.320907778605908721e-05, 4.313015143171157343e-05, 4.305116189295911979e-05, 4.297210930382201684e-05, 4.289299379840117907e-05, 4.281381551089452321e-05, 4.273457457560121014e-05, 4.265527112688926112e-05, 4.257590529923088924e-05, 4.249647722718794403e-05, 4.241698704539755926e-05, 4.233743488861060157e-05, 4.225782089164250178e-05, 4.217814518941144600e-05, 4.209840791692075733e-05, 4.201860920926179605e-05, 4.193874920161427816e-05, 4.185882802924904687e-05, 4.177884582751445903e-05, 4.169880273185619222e-05, 4.161869887780767662e-05, 4.153853440097485521e-05, 4.145830943707157619e-05, 4.137802412188764289e-05, 4.129767859129217483e-05, 4.121727298125072450e-05, 4.113680742781120314e-05, 4.105628206710712648e-05, 4.097569703536069126e-05, 4.089505246886886348e-05, 4.081434850402383598e-05, 4.073358527729921164e-05, 4.065276292525286971e-05, 4.057188158452680322e-05, 4.049094139185072393e-05, 4.040994248402713420e-05, 4.032888499795298399e-05, 4.024776907060474945e-05, 4.016659483904211927e-05, 4.008536244040739835e-05, 4.000407201192927539e-05, 3.992272369090790155e-05, 3.984131761473614763e-05, 3.975985392088574657e-05, 3.967833274690944154e-05, 3.959675423044532277e-05, 3.951511850920191296e-05, 3.943342572097935665e-05, 3.935167600365512913e-05, 3.926986949518694342e-05, 3.918800633361302810e-05, 3.910608665705521728e-05, 3.902411060370407673e-05, 3.894207831184089960e-05, 3.885998991982263603e-05, 3.877784556608524739e-05, 3.869564538914369950e-05, 3.861338952759508651e-05, 3.853107812010411612e-05, 3.844871130542461068e-05, 3.836628922238453839e-05, 3.828381200988992326e-05, 3.820127980692761656e-05, 3.811869275255094471e-05, 3.803605098589734110e-05, 3.795335464619215438e-05, 3.787060387271549896e-05, 3.778779880483800656e-05, 3.770493958200680617e-05, 3.762202634373369942e-05, 3.753905922961718345e-05, 3.745603837932744151e-05, 3.737296393260973107e-05, 3.728983602928791425e-05, 3.720665480924961781e-05, 3.712342041246440710e-05, 3.704013297898655754e-05, 3.695679264892271149e-05, 3.687339956246807711e-05, 3.678995385989074804e-05, 3.670645568152181004e-05, 3.662290516777224784e-05, 3.653930245913688206e-05, 3.645564769616145020e-05, 3.637194101947841912e-05, 3.628818256979228740e-05, 3.620437248786487401e-05, 3.612051091455547447e-05, 3.603659799076863621e-05, 3.595263385749518202e-05, 3.586861865579665858e-05, 3.578455252679068612e-05, 3.570043561168721827e-05, 3.561626805175575845e-05, 3.553204998832789420e-05, 3.544778156281653501e-05, 3.536346291670373535e-05, 3.527909419152614606e-05, 3.519467552891544153e-05, 3.511020707054603401e-05, 3.502568895817591423e-05, 3.494112133362742707e-05, 3.485650433879121536e-05, 3.477183811562561684e-05, 3.468712280616034359e-05, 3.460235855248150656e-05, 3.451754549675329281e-05, 3.443268378120681176e-05, 3.434777354812513324e-05, 3.426281493987989960e-05, 3.417780809889768161e-05, 3.409275316766388153e-05, 3.400765028874062250e-05, 3.392249960475159678e-05, 3.383730125838605698e-05, 3.375205539240179085e-05, 3.366676214961017281e-05, 3.358142167289842402e-05, 3.349603410521784198e-05, 3.341059958956881144e-05, 3.332511826903841945e-05, 3.323959028676545596e-05, 3.315401578594510295e-05, 3.306839490984641048e-05, 3.298272780179791066e-05, 3.289701460519050429e-05, 3.281125546347758292e-05, 3.272545052017849821e-05, 3.263959991886301724e-05, 3.255370380317410429e-05, 3.246776231681217957e-05, 3.238177560353890718e-05, 3.229574380718063740e-05, 3.220966707161316693e-05, 3.212354554078405988e-05, 3.203737935869738760e-05, 3.195116866941698133e-05, 3.186491361706669643e-05, 3.177861434583357695e-05, 3.169227099995237858e-05, 3.160588372372864866e-05, 3.151945266152239534e-05, 3.143297795775273613e-05, 3.134645975690061517e-05, 3.125989820349350242e-05, 3.117329344212830421e-05, 3.108664561745565588e-05, 3.099995487418361479e-05, 3.091322135707707765e-05, 3.082644521096190718e-05, 3.073962658070906215e-05, 3.065276561125343535e-05, 3.056586244759746540e-05, 3.047891723477678442e-05, 3.039193011789782973e-05, 3.030490124212242104e-05, 3.021783075265612562e-05, 3.013071879477098250e-05, 3.004356551378982895e-05, 2.995637105508989535e-05, 2.986913556410669468e-05, 2.978185918631783070e-05, 2.969454206726260167e-05, 2.960718435254520211e-05, 2.951978618780006901e-05, 2.943234771872997460e-05, 2.934486909109049175e-05, 2.925735045067801691e-05, 2.916979194335308389e-05, 2.908219371502406692e-05, 2.899455591165124978e-05, 2.890687867924669369e-05, 2.881916216387727308e-05, 2.873140651164571557e-05, 2.864361186873256738e-05, 2.855577838134184775e-05, 2.846790619574336663e-05, 2.837999545825713930e-05, 2.829204631523742831e-05, 2.820405891311142233e-05, 2.811603339834414870e-05, 2.802796991744183105e-05, 2.793986861697116098e-05, 2.785172964354780558e-05, 2.776355314381984954e-05, 2.767533926451112264e-05, 2.758708815236596303e-05, 2.749879995419189752e-05, 2.741047481684400533e-05, 2.732211288720891936e-05, 2.723371431224349832e-05, 2.714527923893977990e-05, 2.705680781432828080e-05, 2.696830018549753946e-05, 2.687975649958208483e-05, 2.679117690374641051e-05, 2.670256154522399246e-05, 2.661391057128193721e-05, 2.652522412922440055e-05, 2.643650236641198790e-05, 2.634774543024592501e-05, 2.625895346817181539e-05, 2.617012662768298097e-05, 2.608126505630500887e-05, 2.599236890161858065e-05, 2.590343831124772219e-05, 2.581447343284383551e-05, 2.572547441412457414e-05, 2.563644140283849817e-05, 2.554737454676858771e-05, 2.545827399375155862e-05, 2.536913989166220601e-05, 2.527997238841663984e-05, 2.519077163197652351e-05, 2.510153777033260754e-05, 2.501227095152831772e-05, 2.492297132364389191e-05, 2.483363903479972749e-05, 2.474427423315632714e-05, 2.465487706691818167e-05, 2.456544768431742227e-05, 2.447598623363742902e-05, 2.438649286319672366e-05, 2.429696772135288299e-05, 2.420741095650184418e-05, 2.411782271708209259e-05, 2.402820315155838855e-05, 2.393855240844525723e-05, 2.384887063629075279e-05, 2.375915798368053426e-05, 2.366941459924139257e-05, 2.357964063162504176e-05, 2.348983622953191382e-05, 2.340000154169471268e-05, 2.331013671688249018e-05, 2.322024190390025298e-05, 2.313031725159252016e-05, 2.304036290882744976e-05, 2.295037902452029828e-05, 2.286036574761746252e-05, 2.277032322709979318e-05, 2.268025161198276770e-05, 2.259015105132003418e-05, 2.250002169418734491e-05, 2.240986368970596495e-05, 2.231967718702682584e-05, 2.222946233533407636e-05, 2.213921928384873834e-05, 2.204894818181278582e-05, 2.195864917850853530e-05, 2.186832242326260990e-05, 2.177796806540960840e-05, 2.168758625433204454e-05, 2.159717713944376210e-05, 2.150674087017404121e-05, 2.141627759601103756e-05, 2.132578746644580369e-05, 2.123527063101594167e-05, 2.114472723928527095e-05, 2.105415744085164815e-05, 2.096356138532675008e-05, 2.087293922237996020e-05, 2.078229110168169875e-05, 2.069161717294768868e-05, 2.060091758592223182e-05, 2.051019249036240667e-05, 2.041944203607754684e-05, 2.032866637289299492e-05, 2.023786565065404956e-05, 2.014704001924545065e-05, 2.005618962857940230e-05, 1.996531462857906920e-05, 1.987441516922266644e-05, 1.978349140048668112e-05, 1.969254347239027727e-05, 1.960157153497860252e-05, 1.951057573830657584e-05, 1.941955623247883028e-05, 1.932851316761340571e-05, 1.923744669384525217e-05, 1.914635696134645365e-05, 1.905524412031352592e-05, 1.896410832095140429e-05, 1.887294971351337268e-05, 1.878176844826425840e-05, 1.869056467548465373e-05, 1.859933854549063824e-05, 1.850809020861742427e-05, 1.841681981522298904e-05, 1.832552751569204550e-05, 1.823421346041984031e-05, 1.814287779983545740e-05, 1.805152068439021363e-05, 1.796014226454090105e-05, 1.786874269078984147e-05, 1.777732211364853511e-05, 1.768588068364118431e-05, 1.759441855132492068e-05, 1.750293586727328114e-05, 1.741143278207983664e-05, 1.731990944636227486e-05, 1.722836601074576447e-05, 1.713680262588718366e-05, 1.704521944245834551e-05, 1.695361661115015183e-05, 1.686199428267223064e-05, 1.677035260775670378e-05, 1.667869173714161890e-05, 1.658701182159527291e-05, 1.649531301189965078e-05, 1.640359545885405082e-05, 1.631185931327515246e-05, 1.622010472600059750e-05, 1.612833184787256107e-05, 1.603654082976192931e-05, 1.594473182255169079e-05, 1.585290497714095140e-05, 1.576106044444840383e-05, 1.566919837539621361e-05, 1.557731892093397658e-05, 1.548542223202219160e-05, 1.539350845963606538e-05, 1.530157775476534312e-05, 1.520963026841810831e-05, 1.511766615160426043e-05, 1.502568555535958602e-05, 1.493368863072942105e-05, 1.484167552877233384e-05, 1.474964640055988620e-05, 1.465760139718057551e-05, 1.456554066972307535e-05, 1.447346436930062155e-05, 1.438137264703447133e-05, 1.428926565405758284e-05, 1.419714354151859112e-05, 1.410500646056511644e-05, 1.401285456236408128e-05, 1.392068799810539658e-05, 1.382850691896500064e-05, 1.373631147614552006e-05, 1.364410182085962556e-05, 1.355187810431345385e-05, 1.345964047775131064e-05, 1.336738909239822994e-05, 1.327512409950462457e-05, 1.318284565032977578e-05, 1.309055389612926498e-05, 1.299824898817509924e-05, 1.290593107775975673e-05, 1.281360031615898840e-05, 1.272125685467243494e-05, 1.262890084460712654e-05, 1.253653243726082345e-05, 1.244415178396260076e-05, 1.235175903603601087e-05, 1.225935434480263431e-05, 1.216693786160254742e-05, 1.207450973778159820e-05, 1.198207012467489601e-05, 1.188961917365167204e-05, 1.179715703605742703e-05, 1.170468386325909673e-05, 1.161219980662817054e-05, 1.151970501752406426e-05, 1.142719964733504699e-05, 1.133468384744087349e-05, 1.124215776921679398e-05, 1.114962156405373389e-05, 1.105707538334574926e-05, 1.096451937847342154e-05, 1.087195370084866224e-05, 1.077937850185712314e-05, 1.068679393290296710e-05, 1.059420014538820550e-05, 1.050159729071651838e-05, 1.040898552029301388e-05, 1.031636498552801785e-05, 1.022373583782053810e-05, 1.013109822858247936e-05, 1.003845230922228369e-05, 9.945798231148296587e-06, 9.853136145769056666e-06, 9.760466204496751568e-06, 9.667788558730710971e-06, 9.575103359881892621e-06, 9.482410759355973861e-06, 9.389710908557403836e-06, 9.297003958893242247e-06, 9.204290061756333888e-06, 9.111569368549909869e-06, 9.018842030670768935e-06, 8.926108199513190753e-06, 8.833368026468734320e-06, 8.740621662930041143e-06, 8.647869260274077536e-06, 8.555110969886740928e-06, 8.462346943146015766e-06, 8.369577331425888503e-06, 8.276802286096086709e-06, 8.184021958526038106e-06, 8.091236500067973950e-06, 7.998446062081574309e-06, 7.905650795917159532e-06, 7.812850852919542565e-06, 7.720046384431976115e-06, 7.627237541779359381e-06, 7.534424476292758808e-06, 7.441607339292625827e-06, 7.348786282092757574e-06, 7.255961456000010600e-06, 7.163133012318104891e-06, 7.070301102330991533e-06, 6.977465877327314174e-06, 6.884627488583647087e-06, 6.791786087368366117e-06, 6.698941824945581448e-06, 6.606094852558392614e-06, 6.513245321453283045e-06, 6.420393382863500433e-06, 6.327539188012869229e-06, 6.234682888115594978e-06, 6.141824634380085286e-06, 6.048964577992246326e-06, 5.956102870135809093e-06, 5.863239661996360428e-06, 5.770375104723712739e-06, 5.677509349473184146e-06, 5.584642547388668836e-06, 5.491774849585931880e-06, 5.398906407197813684e-06, 5.306037371316138779e-06, 5.213167893036908416e-06, 5.120298123443531006e-06, 5.027428213594186085e-06, 4.934558314542231875e-06, 4.841688577340125358e-06, 4.748819153001934286e-06, 4.655950192544439460e-06, 4.563081846970388884e-06, 4.470214267251693482e-06, 4.377347604374624775e-06, 4.284482009281758393e-06, 4.191617632917152275e-06, 4.098754626205457990e-06, 4.005893140059918417e-06, 3.913033325361515493e-06, 3.820175333004120455e-06, 3.727319313836410674e-06, 3.634465418707113495e-06, 3.541613798448212963e-06, 3.448764603858151890e-06, 3.355917985742950643e-06, 3.263074094878772950e-06, 3.170233082015753638e-06, 3.077395097898509962e-06, 2.984560293253424253e-06, 2.891728818771879440e-06, 2.798900825155541008e-06, 2.706076463058157365e-06, 2.613255883130854927e-06, 2.520439236001197351e-06, 2.427626672277071291e-06, 2.334818342546453895e-06, 2.242014397381305763e-06, 2.149214987320774710e-06, 2.056420262895777931e-06, 1.963630374612207034e-06, 1.870845472954830529e-06, 1.778065708387047345e-06, 1.685291231354764547e-06, 1.592522192269635819e-06, 1.499758741533618438e-06, 1.407001029522186772e-06, 1.314249206588234138e-06, 1.221503423065956234e-06, 1.128763829254073962e-06, 1.036030575440401825e-06, 9.433038118850553994e-07, 8.505836888243555143e-07, 7.578703564705822999e-07, 6.651639650158652895e-07, 5.724646646154017922e-07, 4.797726054120301648e-07, 3.870879375194380197e-07, 2.944108110260619640e-07, 2.017413759948433102e-07, 1.090797824671211454e-07, 1.642618044585468008e-08, -7.621928007981670775e-08, -1.688564491513496743e-07, -2.614851768369049926e-07, -3.541053132274569641e-07, -4.467167084535636857e-07, -5.393192126608168714e-07, -6.319126760266081284e-07, -7.244969487562435643e-07, -8.170718810831797381e-07, -9.096373232651396444e-07, -1.002193125600872530e-06, -1.094739138405611856e-06, -1.187275212027840620e-06, -1.279801196845400406e-06, -1.372316943261598209e-06, -1.464822301721982554e-06, -1.557317122693908621e-06, -1.649801256662678946e-06, -1.742274554168921291e-06, -1.834736865767565785e-06, -1.927188042044578899e-06, -2.019627933629584032e-06, -2.112056391175495868e-06, -2.204473265354591422e-06, -2.296878406895931523e-06, -2.389271666544311063e-06, -2.481652895076999328e-06, -2.574021943320501938e-06, -2.666378662105425845e-06, -2.758722902324418504e-06, -2.851054514887126053e-06, -2.943373350736835391e-06, -3.035679260863163576e-06, -3.127972096281606218e-06, -3.220251708029729217e-06, -3.312517947204458542e-06, -3.404770664921106707e-06, -3.497009712330125386e-06, -3.589234940633803400e-06, -3.681446201041177035e-06, -3.773643344825970058e-06, -3.865826223281512510e-06, -3.957994687741540019e-06, -4.050148589572264304e-06, -4.142287780193125481e-06, -4.234412111031798522e-06, -4.326521433582053224e-06, -4.418615599358667499e-06, -4.510694459914209630e-06, -4.602757866855637582e-06, -4.694805671803514363e-06, -4.786837726429162277e-06, -4.878853882450827558e-06, -4.970853991613400711e-06, -5.062837905700899231e-06, -5.154805476553222768e-06, -5.246756556021124850e-06, -5.338690996024057611e-06, -5.430608648505119807e-06, -5.522509365447799264e-06, -5.614392998892617924e-06, -5.706259400896289612e-06, -5.798108423568915794e-06, -5.889939919070108702e-06, -5.981753739588755723e-06, -6.073549737359575504e-06, -6.165327764659384227e-06, -6.257087673807197256e-06, -6.348829317160446289e-06, -6.440552547131625246e-06, -6.532257216163831348e-06, -6.623943176747521968e-06, -6.715610281416585250e-06, -6.807258382744481018e-06, -6.898887333360880747e-06, -6.990496985927328915e-06, -7.082087193153824517e-06, -7.173657807795000105e-06, -7.265208682650337777e-06, -7.356739670560365153e-06, -7.448250624423159815e-06, -7.539741397170108913e-06, -7.631211841782485603e-06, -7.722661811287639941e-06, -7.814091158755020366e-06, -7.905499737312952576e-06, -7.996887400124106071e-06, -8.088254000402333158e-06, -8.179599391408630310e-06, -8.270923426451453250e-06, -8.362225958882876515e-06, -8.453506842115129225e-06, -8.544765929596288628e-06, -8.636003074826942934e-06, -8.727218131356313596e-06, -8.818410952782424717e-06, -8.909581392748315120e-06, -9.000729304958624946e-06, -9.091854543155262089e-06, -9.182956961134024378e-06, -9.274036412740718462e-06, -9.365092751867285490e-06, -9.456125832468479186e-06, -9.547135508541548915e-06, -9.638121634122426344e-06, -9.729084063322817014e-06, -9.820022650289419089e-06, -9.910937249220660731e-06, -1.000182771437901426e-05, -1.009269390006689808e-05, -1.018353566064309893e-05, -1.027435285051905174e-05, -1.036514532415894802e-05, -1.045591293607601236e-05, -1.054665554085296328e-05, -1.063737299309758134e-05, -1.072806514749985672e-05, -1.081873185878750645e-05, -1.090937298174241022e-05, -1.099998837121308044e-05, -1.109057788209466883e-05, -1.118114136932488712e-05, -1.127167868792107664e-05, -1.136218969293964723e-05, -1.145267423949255547e-05, -1.154313218276390315e-05, -1.163356337796535277e-05, -1.172396768039333624e-05, -1.181434494538454999e-05, -1.190469502833239594e-05, -1.199501778469945489e-05, -1.208531306999740503e-05, -1.217558073978320526e-05, -1.226582064969576493e-05, -1.235603265541571480e-05, -1.244621661268181246e-05, -1.253637237730734761e-05, -1.262649980513993003e-05, -1.271659875209811189e-05, -1.280666907416761170e-05, -1.289671062738120572e-05, -1.298672326783528409e-05, -1.307670685168603238e-05, -1.316666123514539973e-05, -1.325658627449777016e-05, -1.334648182607573572e-05, -1.343634774627266476e-05, -1.352618389155880234e-05, -1.361599011844137330e-05, -1.370576628350097585e-05, -1.379551224338792408e-05, -1.388522785480214453e-05, -1.397491297450961194e-05, -1.406456745933864102e-05, -1.415419116617585280e-05, -1.424378395198271896e-05, -1.433334567377149416e-05, -1.442287618862175355e-05, -1.451237535367632195e-05, -1.460184302614170746e-05, -1.469127906328412558e-05, -1.478068332244601627e-05, -1.487005566102200352e-05, -1.495939593647524303e-05, -1.504870400633365638e-05, -1.513797972819007493e-05, -1.522722295969854684e-05, -1.531643355859061361e-05, -1.540561138265132549e-05, -1.549475628973569598e-05, -1.558386813776475632e-05, -1.567294678472193358e-05, -1.576199208866917479e-05, -1.585100390772320629e-05, -1.593998210007170529e-05, -1.602892652396959325e-05, -1.611783703773928323e-05, -1.620671349976675639e-05, -1.629555576851796059e-05, -1.638436370251498844e-05, -1.647313716035219460e-05, -1.656187600069249259e-05, -1.665058008226771052e-05, -1.673924926387458973e-05, -1.682788340439110540e-05, -1.691648236275274285e-05, -1.700504599796858442e-05, -1.709357416911777222e-05, -1.718206673534542546e-05, -1.727052355587916437e-05, -1.735894449000902870e-05, -1.744732939708396768e-05, -1.753567813654789307e-05, -1.762399056790001098e-05, -1.771226655071102044e-05, -1.780050594463519555e-05, -1.788870860938684474e-05, -1.797687440475626881e-05, -1.806500319060630848e-05, -1.815309482687224612e-05, -1.824114917355819398e-05, -1.832916609075727055e-05, -1.841714543860797495e-05, -1.850508707735000640e-05, -1.859299086728099780e-05, -1.868085666877235523e-05, -1.876868434228157718e-05, -1.885647374833256956e-05, -1.894422474751193561e-05, -1.903193720050485970e-05, -1.911961096805557791e-05, -1.920724591098367162e-05, -1.929484189019987990e-05, -1.938239876666307697e-05, -1.946991640143556321e-05, -1.955739465563995110e-05, -1.964483339047531311e-05, -1.973223246722892831e-05, -1.981959174725712592e-05, -1.990691109198116531e-05, -1.999419036292336365e-05, -2.008142942166759708e-05, -2.016862812987537740e-05, -2.025578634930174239e-05, -2.034290394175655996e-05, -2.042998076913925653e-05, -2.051701669343603194e-05, -2.060401157669985257e-05, -2.069096528106662626e-05, -2.077787766875133308e-05, -2.086474860204445082e-05, -2.095157794332797412e-05, -2.103836555505168057e-05, -2.112511129974552112e-05, -2.121181504003543590e-05, -2.129847663860412978e-05, -2.138509595822703064e-05, -2.147167286176791191e-05, -2.155820721216019343e-05, -2.164469887242253707e-05, -2.173114770565506216e-05, -2.181755357503565920e-05, -2.190391634383613770e-05, -2.199023587539856688e-05, -2.207651203315142007e-05, -2.216274468060577666e-05, -2.224893368135557619e-05, -2.233507889907395915e-05, -2.242118019752882533e-05, -2.250723744056017393e-05, -2.259325049209521809e-05, -2.267921921614541342e-05, -2.276514347680611925e-05, -2.285102313825333243e-05, -2.293685806475906949e-05, -2.302264812066851025e-05, -2.310839317041577301e-05, -2.319409307852011643e-05, -2.327974770958227016e-05, -2.336535692830022022e-05, -2.345092059944633224e-05, -2.353643858788266591e-05, -2.362191075855760709e-05, -2.370733697650593562e-05, -2.379271710684541011e-05, -2.387805101479219741e-05, -2.396333856563787404e-05, -2.404857962476522842e-05, -2.413377405764474399e-05, -2.421892172983449077e-05, -2.430402250697657801e-05, -2.438907625481294625e-05, -2.447408283916221964e-05, -2.455904212593562334e-05, -2.464395398113296523e-05, -2.472881827083951202e-05, -2.481363486124089706e-05, -2.489840361860472278e-05, -2.498312440927673208e-05, -2.506779709971527242e-05, -2.515242155645369435e-05, -2.523699764611549303e-05, -2.532152523542591263e-05, -2.540600419118979128e-05, -2.549043438030643166e-05, -2.557481566976620938e-05, -2.565914792664705958e-05, -2.574343101812985560e-05, -2.582766481147945580e-05, -2.591184917404138995e-05, -2.599598397327614036e-05, -2.608006907672117447e-05, -2.616410435200657768e-05, -2.624808966686668823e-05, -2.633202488912101858e-05, -2.641590988667096896e-05, -2.649974452753412203e-05, -2.658352867980642793e-05, -2.666726221167758302e-05, -2.675094499144650009e-05, -2.683457688747973937e-05, -2.691815776826480384e-05, -2.700168750236857701e-05, -2.708516595845298630e-05, -2.716859300528596695e-05, -2.725196851172350838e-05, -2.733529234670538851e-05, -2.741856437928990551e-05, -2.750178447861598488e-05, -2.758495251391856505e-05, -2.766806835454405734e-05, -2.775113186990879735e-05, -2.783414292955225215e-05, -2.791710140309572915e-05, -2.800000716026112261e-05, -2.808286007086799308e-05, -2.816566000483297107e-05, -2.824840683216689073e-05, -2.833110042298960272e-05, -2.841374064750769389e-05, -2.849632737602633215e-05, -2.857886047896393374e-05, -2.866133982681515462e-05, -2.874376529018484976e-05, -2.882613673978426144e-05, -2.890845404641306221e-05, -2.899071708097365952e-05, -2.907292571446875632e-05, -2.915507981799677029e-05, -2.923717926276758861e-05, -2.931922392008007422e-05, -2.940121366133383277e-05, -2.948314835804384255e-05, -2.956502788180379835e-05, -2.964685210431957597e-05, -2.972862089740580348e-05, -2.981033413296752804e-05, -2.989199168301519478e-05, -2.997359341966089618e-05, -3.005513921511930722e-05, -3.013662894170344336e-05, -3.021806247183957177e-05, -3.029943967804620152e-05, -3.038076043294814769e-05, -3.046202460927323474e-05, -3.054323207984887108e-05, -3.062438271761727877e-05, -3.070547639561295222e-05, -3.078651298697824705e-05, -3.086749236495948029e-05, -3.094841440290727600e-05, -3.102927897427298063e-05, -3.111008595262375375e-05, -3.119083521162058583e-05, -3.127152662503296891e-05, -3.135216006673605051e-05, -3.143273541070649334e-05, -3.151325253103768806e-05, -3.159371130191795398e-05, -3.167411159764512839e-05, -3.175445329262354435e-05, -3.183473626136361731e-05, -3.191496037847917528e-05, -3.199512551870141794e-05, -3.207523155686156261e-05, -3.215527836788702925e-05, -3.223526582683427139e-05, -3.231519380885316693e-05, -3.239506218920109242e-05, -3.247487084325444948e-05, -3.255461964648678422e-05, -3.263430847448388480e-05, -3.271393720293988506e-05, -3.279350570765426941e-05, -3.287301386454605554e-05, -3.295246154963647430e-05, -3.303184863904503270e-05, -3.311117500902234490e-05, -3.319044053591469910e-05, -3.326964509617805058e-05, -3.334878856638923638e-05, -3.342787082322450808e-05, -3.350689174347448707e-05, -3.358585120404036979e-05, -3.366474908193392774e-05, -3.374358525427472924e-05, -3.382235959830797454e-05, -3.390107199136500372e-05, -3.397972231091380026e-05, -3.405831043452015619e-05, -3.413683623986159737e-05, -3.421529960474220316e-05, -3.429370040705720721e-05, -3.437203852482470360e-05, -3.445031383618315997e-05, -3.452852621937299284e-05, -3.460667555274787041e-05, -3.468476171478892921e-05, -3.476278458406602734e-05, -3.484074403928754331e-05, -3.491863995926158191e-05, -3.499647222291380930e-05, -3.507424070928432243e-05, -3.515194529752737793e-05, -3.522958586690857325e-05, -3.530716229681890057e-05, -3.538467446675359814e-05, -3.546212225632328362e-05, -3.553950554526804197e-05, -3.561682421342229730e-05, -3.569407814074690525e-05, -3.577126720732545990e-05, -3.584839129334740736e-05, -3.592545027912190321e-05, -3.600244404507453279e-05, -3.607937247174406538e-05, -3.615623543979681306e-05, -3.623303283000536688e-05, -3.630976452325975049e-05, -3.638643040058125734e-05, -3.646303034308790526e-05, -3.653956423202596644e-05, -3.661603194876640306e-05, -3.669243337478828585e-05, -3.676876839169210937e-05, -3.684503688119706801e-05, -3.692123872514106953e-05, -3.699737380547740110e-05, -3.707344200428867490e-05, -3.714944320376641123e-05, -3.722537728622495691e-05, -3.730124413409863931e-05, -3.737704362993757182e-05, -3.745277565642249383e-05, -3.752844009634376439e-05, -3.760403683261563971e-05, -3.767956574827277668e-05, -3.775502672647065296e-05, -3.783041965048200946e-05, -3.790574440371110757e-05, -3.798100086967290574e-05, -3.805618893200721507e-05, -3.813130847447567033e-05, -3.820635938095792846e-05, -3.828134153546603429e-05, -3.835625482212384773e-05, -3.843109912518079290e-05, -3.850587432900910690e-05, -3.858058031810314865e-05, -3.865521697707713562e-05, -3.872978419067824913e-05, -3.880428184377023579e-05, -3.887870982132980252e-05, -3.895306800847752986e-05, -3.902735629044438368e-05, -3.910157455258498314e-05, -3.917572268038823258e-05, -3.924980055945712830e-05, -3.932380807552237207e-05, -3.939774511443920661e-05, -3.947161156218456277e-05, -3.954540730487010386e-05, -3.961913222872587450e-05, -3.969278622009727166e-05, -3.976636916547508381e-05, -3.983988095146258541e-05, -3.991332146478860829e-05, -3.998669059231793648e-05, -4.005998822103177696e-05, -4.013321423804071594e-05, -4.020636853058197444e-05, -4.027945098601940150e-05, -4.035246149184027581e-05, -4.042539993567221250e-05, -4.049826620524679487e-05, -4.057106018844622227e-05, -4.064378177326681308e-05, -4.071643084783271990e-05, -4.078900730040913649e-05, -4.086151101936945319e-05, -4.093394189322489634e-05, -4.100629981062228529e-05, -4.107858466032657003e-05, -4.115079633123159181e-05, -4.122293471237316141e-05, -4.129499969289318558e-05, -4.136699116208579301e-05, -4.143890900936148122e-05, -4.151075312426001168e-05, -4.158252339646414540e-05, -4.165421971576701513e-05, -4.172584197210140567e-05, -4.179739005553709073e-05, -4.186886385626398721e-05, -4.194026326460328853e-05, -4.201158817101937736e-05, -4.208283846608813300e-05, -4.215401404052649623e-05, -4.222511478518878303e-05, -4.229614059105120079e-05, -4.236709134922468937e-05, -4.243796695095188531e-05, -4.250876728760420123e-05, -4.257949225069458562e-05, -4.265014173185866441e-05, -4.272071562286460048e-05, -4.279121381562571783e-05, -4.286163620216882253e-05, -4.293198267466330682e-05, -4.300225312541809295e-05, -4.307244744686550573e-05, -4.314256553157444556e-05, -4.321260727224767112e-05, -4.328257256171807251e-05, -4.335246129296203393e-05, -4.342227335908075840e-05, -4.349200865331216004e-05, -4.356166706902912935e-05, -4.363124849973851004e-05, -4.370075283907920839e-05, -4.377017998083408565e-05, -4.383952981891169596e-05, -4.390880224735857175e-05, -4.397799716035698080e-05, -4.404711445222441119e-05, -4.411615401741099640e-05, -4.418511575051185483e-05, -4.425399954624872613e-05, -4.432280529948299521e-05, -4.439153290521153836e-05, -4.446018225856517150e-05, -4.452875325482045442e-05, -4.459724578938130000e-05, -4.466565975779160521e-05, -4.473399505573249309e-05, -4.480225157902232636e-05, -4.487042922361332608e-05, -4.493852788560509699e-05, -4.500654746122534914e-05, -4.507448784684262364e-05, -4.514234893896379225e-05, -4.521013063423350172e-05, -4.527783282943200540e-05, -4.534545542148717075e-05, -4.541299830745605470e-05, -4.548046138453781920e-05, -4.554784455007026856e-05, -4.561514770152757262e-05, -4.568237073653230815e-05, -4.574951355283978540e-05, -4.581657604833665892e-05, -4.588355812106659605e-05, -4.595045966920171501e-05, -4.601728059105371826e-05, -4.608402078508678774e-05, -4.615068014988405593e-05, -4.621725858419068931e-05, -4.628375598687991220e-05, -4.635017225696607139e-05, -4.641650729361331652e-05, -4.648276099612090915e-05, -4.654893326392034962e-05, -4.661502399660240759e-05, -4.668103309388756393e-05, -4.674696045563797087e-05, -4.681280598186955439e-05, -4.687856957272221219e-05, -4.694425112848699333e-05, -4.700985054960323862e-05, -4.707536773664382869e-05, -4.714080259032394569e-05, -4.720615501151400245e-05, -4.727142490120573399e-05, -4.733661216055521330e-05, -4.740171669084972892e-05, -4.746673839351958244e-05, -4.753167717015103116e-05, -4.759653292245566615e-05, -4.766130555229772736e-05, -4.772599496169177259e-05, -4.779060105278698371e-05, -4.785512372787708701e-05, -4.791956288941190683e-05, -4.798391843996505627e-05, -4.804819028227550961e-05, -4.811237831921513720e-05, -4.817648245380395884e-05, -4.824050258920677597e-05, -4.830443862873380189e-05, -4.836829047583749721e-05, -4.843205803412494332e-05, -4.849574120733981755e-05, -4.855933989937169694e-05, -4.862285401426789640e-05, -4.868628345620410039e-05, -4.874962812951124432e-05, -4.881288793867228910e-05, -4.887606278830795706e-05, -4.893915258318862432e-05, -4.900215722823152896e-05, -4.906507662849770137e-05, -4.912791068920438514e-05, -4.919065931570694444e-05, -4.925332241351116296e-05, -4.931589988827051981e-05, -4.937839164578590494e-05, -4.944079759200309160e-05, -4.950311763302472353e-05, -4.956535167509245276e-05, -4.962749962459938756e-05, -4.968956138808701607e-05, -4.975153687224490132e-05, -4.981342598390877036e-05, -4.987522863007141048e-05, -4.993694471786631808e-05, -4.999857415457841192e-05, -5.006011684764214261e-05, -5.012157270463853809e-05, -5.018294163330603213e-05, -5.024422354152476374e-05, -5.030541833732708713e-05, -5.036652592889522033e-05, -5.042754622456159763e-05, -5.048847913280598957e-05, -5.054932456226645347e-05, -5.061008242172345659e-05, -5.067075262011065716e-05, -5.073133506651243788e-05, -5.079182967016405493e-05, -5.085223634044855481e-05, -5.091255498690901903e-05, -5.097278551923102715e-05, -5.103292784725408835e-05, -5.109298188096983212e-05, -5.115294753051814584e-05, -5.121282470619917552e-05, -5.127261331845951579e-05, -5.133231327788917409e-05, -5.139192449524739508e-05, -5.145144688143424771e-05, -5.151088034750233463e-05, -5.157022480466768840e-05, -5.162948016427996274e-05, -5.168864633786075227e-05, -5.174772323707359402e-05, -5.180671077373518889e-05, -5.186560885982346541e-05, -5.192441740746427798e-05, -5.198313632892898089e-05, -5.204176553665846379e-05, -5.210030494323656162e-05, -5.215875446140129639e-05, -5.221711400405485191e-05, -5.227538348423795266e-05, -5.233356281515327585e-05, -5.239165191016336429e-05, -5.244965068277676894e-05, -5.250755904665748824e-05, -5.256537691563411608e-05, -5.262310420367186261e-05, -5.268074082490941708e-05, -5.273828669363010810e-05, -5.279574172427240007e-05, -5.285310583144062674e-05, -5.291037892987878068e-05, -5.296756093449459608e-05, -5.302465176035640459e-05, -5.308165132268108030e-05, -5.313855953684085674e-05, -5.319537631837512428e-05, -5.325210158296078401e-05, -5.330873524644960529e-05, -5.336527722483918267e-05, -5.342172743428652229e-05, -5.347808579110528395e-05, -5.353435221176610639e-05, -5.359052661289384254e-05, -5.364660891127821861e-05, -5.370259902385858747e-05, -5.375849686773389658e-05, -5.381430236016089899e-05, -5.387001541855344867e-05, -5.392563596048103003e-05, -5.398116390367874612e-05, -5.403659916603120473e-05, -5.409194166558437678e-05, -5.414719132054206593e-05, -5.420234804926371308e-05, -5.425741177027520448e-05, -5.431238240225273067e-05, -5.436725986403444846e-05, -5.442204407461682171e-05, -5.447673495315503474e-05, -5.453133241896106101e-05, -5.458583639151356331e-05, -5.464024679044272170e-05, -5.469456353554052661e-05, -5.474878654675886119e-05, -5.480291574420881692e-05, -5.485695104815866069e-05, -5.491089237904433129e-05, -5.496473965745367097e-05, -5.501849280413761989e-05, -5.507215174000686185e-05, -5.512571638613023185e-05, -5.517918666374416902e-05, -5.523256249423833057e-05, -5.528584379916517342e-05, -5.533903050023817889e-05, -5.539212251933160866e-05, -5.544511977847833644e-05, -5.549802219987929404e-05, -5.555082970588977656e-05, -5.560354221902850903e-05, -5.565615966197540345e-05, -5.570868195757008835e-05, -5.576110902882056887e-05, -5.581344079888938962e-05, -5.586567719110373129e-05, -5.591781812895237492e-05, -5.596986353608619655e-05, -5.602181333631612757e-05, -5.607366745362237718e-05, -5.612542581214293314e-05, -5.617708833617058694e-05, -5.622865495017574270e-05, -5.628012557878187358e-05, -5.633150014677502882e-05, -5.638277857911376783e-05, -5.643396080090338997e-05, -5.648504673742865039e-05, -5.653603631412788827e-05, -5.658692945660358421e-05, -5.663772609062792357e-05, -5.668842614213270658e-05, -5.673902953720575017e-05, -5.678953620211318865e-05, -5.683994606327551961e-05, -5.689025904727719913e-05, -5.694047508087608783e-05, -5.699059409097840590e-05, -5.704061600467032396e-05, -5.709054074919365661e-05, -5.714036825195690101e-05, -5.719009844053085938e-05, -5.723973124266045680e-05, -5.728926658623878135e-05, -5.733870439934080283e-05, -5.738804461019664032e-05, -5.743728714720211970e-05, -5.748643193892716936e-05, -5.753547891409335015e-05, -5.758442800159446875e-05, -5.763327913049482945e-05, -5.768203223001711809e-05, -5.773068722954980862e-05, -5.777924405865681243e-05, -5.782770264705170148e-05, -5.787606292462996329e-05, -5.792432482144432181e-05, -5.797248826771583694e-05, -5.802055319383212910e-05, -5.806851953034723024e-05, -5.811638720797943569e-05, -5.816415615762041824e-05, -5.821182631032200772e-05, -5.825939759730487807e-05, -5.830686994995706342e-05, -5.835424329983281963e-05, -5.840151757865214997e-05, -5.844869271830857750e-05, -5.849576865085655476e-05, -5.854274530851984599e-05, -5.858962262368986023e-05, -5.863640052892334054e-05, -5.868307895695170853e-05, -5.872965784066730850e-05, -5.877613711313221659e-05, -5.882251670757720406e-05, -5.886879655740094439e-05, -5.891497659616753323e-05, -5.896105675761670019e-05, -5.900703697564953129e-05, -5.905291718433773205e-05, -5.909869731792188608e-05, -5.914437731081073672e-05, -5.918995709758021129e-05, -5.923543661298094273e-05, -5.928081579192627564e-05, -5.932609456950102116e-05, -5.937127288095853648e-05, -5.941635066171939661e-05, -5.946132784738010870e-05, -5.950620437369998642e-05, -5.955098017660993197e-05, -5.959565519221047099e-05, -5.964022935677148828e-05, -5.968470260673103516e-05, -5.972907487870277661e-05, -5.977334610946401759e-05, -5.981751623596453930e-05, -5.986158519532375314e-05, -5.990555292482963007e-05, -5.994941936194614097e-05, -5.999318444430390532e-05, -6.003684810969731137e-05, -6.008041029610376748e-05, -6.012387094166327843e-05, -6.016722998468656343e-05, -6.021048736366094465e-05, -6.025364301723853624e-05, -6.029669688424458586e-05, -6.033964890367529953e-05, -6.038249901469780776e-05, -6.042524715664868829e-05, -6.046789326904390010e-05, -6.051043729155642178e-05, -6.055287916404481342e-05, -6.059521882653118026e-05, -6.063745621920905342e-05, -6.067959128245015946e-05, -6.072162395679338856e-05, -6.076355418294365616e-05, -6.080538190179018526e-05, -6.084710705438582532e-05, -6.088872958195560387e-05, -6.093024942590485806e-05, -6.097166652779695425e-05, -6.101298082938166027e-05, -6.105419227257324454e-05, -6.109530079946046425e-05, -6.113630635230274358e-05, -6.117720887353978918e-05, -6.121800830577050925e-05, -6.125870459178010504e-05, -6.129929767451929479e-05, -6.133978749711133398e-05, -6.138017400286039076e-05, -6.142045713523198969e-05, -6.146063683787136183e-05, -6.150071305459988043e-05, -6.154068572940701073e-05, -6.158055480645560902e-05, -6.162032023008960689e-05, -6.165998194481328945e-05, -6.169953989531772271e-05, -6.173899402646034352e-05, -6.177834428327197978e-05, -6.181759061096541558e-05, -6.185673295491559104e-05, -6.189577126067753222e-05, -6.193470547398350517e-05, -6.197353554073525026e-05, -6.201226140700970139e-05, -6.205088301905867427e-05, -6.208940032330803973e-05, -6.212781326635651751e-05, -6.216612179498257453e-05, -6.220432585613408429e-05, -6.224242539693537420e-05, -6.228042036468535534e-05, -6.231831070685608584e-05, -6.235609637109975050e-05, -6.239377730523810333e-05, -6.243135345726994855e-05, -6.246882477536889089e-05, -6.250619120788386410e-05, -6.254345270333719299e-05, -6.258060921043184397e-05, -6.261766067804077284e-05, -6.265460705521406690e-05, -6.269144829117746776e-05, -6.272818433533069082e-05, -6.276481513725356458e-05, -6.280134064669764160e-05, -6.283776081359060308e-05, -6.287407558803695005e-05, -6.291028492031668876e-05, -6.294638876088383991e-05, -6.298238706037436688e-05, -6.301827976959423596e-05, -6.305406683952788664e-05, -6.308974822133577866e-05, -6.312532386635481211e-05, -6.316079372609618612e-05, -6.319615775225296119e-05, -6.323141589668946109e-05, -6.326656811144803561e-05, -6.330161434874798988e-05, -6.333655456098328043e-05, -6.337138870072994202e-05, -6.340611672073710227e-05, -6.344073857392593812e-05, -6.347525421340454300e-05, -6.350966359245108098e-05, -6.354396666452106449e-05, -6.357816338325182669e-05, -6.361225370245299400e-05, -6.364623757611288291e-05, -6.368011495839759198e-05, -6.371388580364986340e-05, -6.374755006638839179e-05, -6.378110770131610488e-05, -6.381455866330175907e-05, -6.384790290740324987e-05, -6.388114038884949210e-05, -6.391427106304673541e-05, -6.394729488558452738e-05, -6.398021181222634873e-05, -6.401302179890905764e-05, -6.404572480175653719e-05, -6.407832077706501794e-05, -6.411080968130817366e-05, -6.414319147114399254e-05, -6.417546610339790419e-05, -6.420763353508454510e-05, -6.423969372338999119e-05, -6.427164662567900848e-05, -6.430349219949925432e-05, -6.433523040257363380e-05, -6.436686119279918844e-05, -6.439838452826017435e-05, -6.442980036721350685e-05, -6.446110866809480488e-05, -6.449230938952416438e-05, -6.452340249029122341e-05, -6.455438792936970399e-05, -6.458526566591386137e-05, -6.461603565925341536e-05, -6.464669786889787361e-05, -6.467725225453586750e-05, -6.470769877603349876e-05, -6.473803739344043812e-05, -6.476826806698096704e-05, -6.479839075705863983e-05, -6.482840542426193502e-05, -6.485831202934965931e-05, -6.488811053326468982e-05, -6.491780089713184636e-05, -6.494738308225126420e-05, -6.497685705010330015e-05, -6.500622276234864093e-05, -6.503548018082574175e-05, -6.506462926755677591e-05, -6.509366998473925926e-05, -6.512260229475201341e-05, -6.515142616015334959e-05, -6.518014154368161083e-05, -6.520874840825305774e-05, -6.523724671696875318e-05, -6.526563643310457404e-05, -6.529391752011855677e-05, -6.532208994164807837e-05, -6.535015366151077803e-05, -6.537810864370316119e-05, -6.540595485240558685e-05, -6.543369225197484085e-05, -6.546132080694906890e-05, -6.548884048204657051e-05, -6.551625124216451138e-05, -6.554355305238473756e-05, -6.557074587796546763e-05, -6.559782968434599553e-05, -6.562480443714670405e-05, -6.565167010216830590e-05, -6.567842664539061046e-05, -6.570507403297797184e-05, -6.573161223127118452e-05, -6.575804120679350066e-05, -6.578436092624833970e-05, -6.581057135652008797e-05, -6.583667246467254019e-05, -6.586266421795429330e-05, -6.588854658379035751e-05, -6.591431952978870214e-05, -6.593998302373751800e-05, -6.596553703360506836e-05, -6.599098152754391728e-05, -6.601631647388595588e-05, -6.604154184113940720e-05, -6.606665759800160623e-05, -6.609166371334588110e-05, -6.611656015622666236e-05, -6.614134689588356227e-05, -6.616602390173306715e-05, -6.619059114337486635e-05, -6.621504859058957549e-05, -6.623939621333907522e-05, -6.626363398176554902e-05, -6.628776186619706682e-05, -6.631177983713533355e-05, -6.633568786527098990e-05, -6.635948592147224178e-05, -6.638317397678839753e-05, -6.640675200245360838e-05, -6.643021996988179986e-05, -6.645357785066463888e-05, -6.647682561658226736e-05, -6.649996323959231109e-05, -6.652299069183340344e-05, -6.654590794563147369e-05, -6.656871497348523228e-05, -6.659141174808389755e-05, -6.661399824229311461e-05, -6.663647442916112180e-05, -6.665884028192095969e-05, -6.668109577398567353e-05, -6.670324087894633457e-05, -6.672527557058327509e-05, -6.674719982285383694e-05, -6.676901360989739951e-05, -6.679071690604043482e-05, -6.681230968578387658e-05, -6.683379192381458563e-05, -6.685516359500360162e-05, -6.687642467440097957e-05, -6.689757513723981492e-05, -6.691861495893529485e-05, -6.693954411508400712e-05, -6.696036258146755861e-05, -6.698107033404691033e-05, -6.700166734896541320e-05, -6.702215360255242658e-05, -6.704252907131379082e-05, -6.706279373194048738e-05, -6.708294756130834060e-05, -6.710299053647193269e-05, -6.712292263466956388e-05, -6.714274383332185657e-05, -6.716245411003095571e-05, -6.718205344258432350e-05, -6.720154180894919642e-05, -6.722091918727604110e-05, -6.724018555589776831e-05, -6.725934089333001752e-05, -6.727838517826989658e-05, -6.729731838959996607e-05, -6.731614050638289970e-05, -6.733485150786412698e-05, -6.735345137347237537e-05, -6.737194008281877577e-05, -6.739031761569644243e-05, -6.740858395208335963e-05, -6.742673907213797709e-05, -6.744478295620192048e-05, -6.746271558480014053e-05, -6.748053693863882588e-05, -6.749824699861036337e-05, -6.751584574578610096e-05, -6.753333316142198556e-05, -6.755070922695650308e-05, -6.756797392401086818e-05, -6.758512723438840077e-05, -6.760216914007760255e-05, -6.761909962324746774e-05, -6.763591866625065442e-05, -6.765262625162284755e-05, -6.766922236208218976e-05, -6.768570698052920004e-05, -6.770208009004989081e-05, -6.771834167391064510e-05, -6.773449171556153686e-05, -6.775053019863545010e-05, -6.776645710694775360e-05, -6.778227242449879459e-05, -6.779797613547078165e-05, -6.781356822422602291e-05, -6.782904867531509819e-05, -6.784441747346768397e-05, -6.785967460359735096e-05, -6.787482005080253990e-05, -6.788985380036225185e-05, -6.790477583773981579e-05, -6.791958614858109968e-05, -6.793428471871437496e-05, -6.794887153415379952e-05, -6.796334658109415934e-05, -6.797770984591155964e-05, -6.799196131516979462e-05, -6.800610097561262247e-05, -6.802012881416674695e-05, -6.803404481794409419e-05, -6.804784897423891250e-05, -6.806154127052553614e-05, -6.807512169446616453e-05, -6.808859023390338120e-05, -6.810194687686213250e-05, -6.811519161155443031e-05, -6.812832442636948581e-05, -6.814134530988505292e-05, -6.815425425085924261e-05, -6.816705123823292166e-05, -6.817973626113265359e-05, -6.819230930886633474e-05, -6.820477037092315359e-05, -6.821711943697930994e-05, -6.822935649689175366e-05, -6.824148154070050216e-05, -6.825349455863135087e-05, -6.826539554108790439e-05, -6.827718447866275731e-05, -6.828886136212789903e-05, -6.830042618243997211e-05, -6.831187893073809036e-05, -6.832321959834497722e-05, -6.833444817676544787e-05, -6.834556465768953991e-05, -6.835656903298844753e-05, -6.836746129471664934e-05, -6.837824143511400893e-05, -6.838890944659978472e-05, -6.839946532177848461e-05, -6.840990905343882246e-05, -6.842024063455043835e-05, -6.843046005826705636e-05, -6.844056731792518347e-05, -6.845056240704429937e-05, -6.846044531932817098e-05, -6.847021604866231818e-05, -6.847987458911490826e-05, -6.848942093493990010e-05, -6.849885508057066091e-05, -6.850817702062538732e-05, -6.851738674990577713e-05, -6.852648426339618911e-05, -6.853546955626353460e-05, -6.854434262385803638e-05, -6.855310346171276795e-05, -6.856175206554365352e-05, -6.857028843125087742e-05, -6.857871255491610591e-05, -6.858702443280415408e-05, -6.859522406136367705e-05, -6.860331143722477119e-05, -6.861128655720252485e-05, -6.861914941829348118e-05, -6.862690001767706111e-05, -6.863453835271649851e-05, -6.864206442095698349e-05, -6.864947822012655685e-05, -6.865677974813741110e-05, -6.866396900308353239e-05, -6.867104598324181176e-05, -6.867801068707182831e-05, -6.868486311321616092e-05, -6.869160326050098456e-05, -6.869823112793409161e-05, -6.870474671470615225e-05, -6.871115002019137854e-05, -6.871744104394610141e-05, -6.872361978570905522e-05, -6.872968624540281440e-05, -6.873564042313216708e-05, -6.874148231918309870e-05, -6.874721193402666799e-05, -6.875282926831492768e-05, -6.875833432288326911e-05, -6.876372709874943286e-05, -6.876900759711398309e-05, -6.877417581935956219e-05, -6.877923176705177163e-05, -6.878417544193810137e-05, -6.878900684594998983e-05, -6.879372598120035731e-05, -6.879833284998371440e-05, -6.880282745477906228e-05, -6.880720979824619281e-05, -6.881147988322810095e-05, -6.881563771274996823e-05, -6.881968329001929838e-05, -6.882361661842609343e-05, -6.882743770154259625e-05, -6.883114654312327699e-05, -6.883474314710449427e-05, -6.883822751760633831e-05, -6.884159965892905310e-05, -6.884485957555666841e-05, -6.884800727215504830e-05, -6.885104275357168779e-05, -6.885396602483747470e-05, -6.885677709116338281e-05, -6.885947595794417175e-05, -6.886206263075632698e-05, -6.886453711535787004e-05, -6.886689941768915819e-05, -6.886914954387322321e-05, -6.887128750021363007e-05, -6.887331329319695708e-05, -6.887522692949125090e-05, -6.887702841594677190e-05, -6.887871775959542497e-05, -6.888029496765075955e-05, -6.888176004750828127e-05, -6.888311300674575016e-05, -6.888435385312190672e-05, -6.888548259457763739e-05, -6.888649923923578485e-05, -6.888740379539986050e-05, -6.888819627155565726e-05, -6.888887667637108689e-05, -6.888944501869500095e-05, -6.888990130755747539e-05, -6.889024555217089475e-05, -6.889047776192839363e-05, -6.889059794640529325e-05, -6.889060611535769200e-05, -6.889050227872312948e-05, -6.889028644662119642e-05, -6.888995862935184055e-05, -6.888951883739659993e-05, -6.888896708141879267e-05, -6.888830337226236494e-05, -6.888752772095277192e-05, -6.888664013869615110e-05, -6.888564063688025734e-05, -6.888452922707402929e-05, -6.888330592102688457e-05, -6.888197073066962782e-05, -6.888052366811373245e-05, -6.887896474565219438e-05, -6.887729397575829884e-05, -6.887551137108656896e-05, -6.887361694447241350e-05, -6.887161070893135426e-05, -6.886949267766078798e-05, -6.886726286403772304e-05, -6.886492128162075813e-05, -6.886246794414840173e-05, -6.885990286554034606e-05, -6.885722605989616604e-05, -6.885443754149698625e-05, -6.885153732480343446e-05, -6.884852542445695628e-05, -6.884540185527973383e-05, -6.884216663227352021e-05, -6.883881977062142842e-05, -6.883536128568589851e-05, -6.883179119301024258e-05, -6.882810950831777736e-05, -6.882431624751178360e-05, -6.882041142667604818e-05, -6.881639506207411867e-05, -6.881226717014979127e-05, -6.880802776752662289e-05, -6.880367687100851393e-05, -6.879921449757874603e-05, -6.879464066440090365e-05, -6.878995538881816935e-05, -6.878515868835355417e-05, -6.878025058070985696e-05, -6.877523108376940692e-05, -6.877010021559434817e-05, -6.876485799442647712e-05, -6.875950443868675461e-05, -6.875403956697609192e-05, -6.874846339807465961e-05, -6.874277595094194172e-05, -6.873697724471687133e-05, -6.873106729871787115e-05, -6.872504613244240636e-05, -6.871891376556755375e-05, -6.871267021794844325e-05, -6.870631550962117166e-05, -6.869984966079925191e-05, -6.869327269187599833e-05, -6.868658462342364568e-05, -6.867978547619286132e-05, -6.867287527111426307e-05, -6.866585402929654893e-05, -6.865872177202687659e-05, -6.865147852077174435e-05, -6.864412429717667936e-05, -6.863665912306406928e-05, -6.862908302043736351e-05, -6.862139601147650603e-05, -6.861359811854128284e-05, -6.860568936416903160e-05, -6.859766977107523795e-05, -6.858953936215487720e-05, -6.858129816048073380e-05, -6.857294618930265598e-05, -6.856448347205019848e-05, -6.855591003233054901e-05, -6.854722589392799970e-05, -6.853843108080644078e-05, -6.852952561710674493e-05, -6.852050952714751266e-05, -6.851138283542545181e-05, -6.850214556661514713e-05, -6.849279774556904672e-05, -6.848333939731697420e-05, -6.847377054706599308e-05, -6.846409122020158595e-05, -6.845430144228617714e-05, -6.844440123905891598e-05, -6.843439063643811618e-05, -6.842426966051840984e-05, -6.841403833757122178e-05, -6.840369669404562333e-05, -6.839324475656795288e-05, -6.838268255194168037e-05, -6.837201010714723107e-05, -6.836122744934145705e-05, -6.835033460585877559e-05, -6.833933160421038313e-05, -6.832821847208368608e-05, -6.831699523734372382e-05, -6.830566192803179989e-05, -6.829421857236510254e-05, -6.828266519873815482e-05, -6.827100183572196081e-05, -6.825922851206369388e-05, -6.824734525668704906e-05, -6.823535209869205332e-05, -6.822324906735423885e-05, -6.821103619212621517e-05, -6.819871350263611057e-05, -6.818628102868849370e-05, -6.817373880026442775e-05, -6.816108684751865157e-05, -6.814832520078426882e-05, -6.813545389056911586e-05, -6.812247294755643945e-05, -6.810938240260573694e-05, -6.809618228675221421e-05, -6.808287263120541683e-05, -6.806945346735138495e-05, -6.805592482675151486e-05, -6.804228674114216598e-05, -6.802853924243493190e-05, -6.801468236271719604e-05, -6.800071613425016654e-05, -6.798664058947122084e-05, -6.797245576099256398e-05, -6.795816168160106596e-05, -6.794375838425889872e-05, -6.792924590210159814e-05, -6.791462426844054414e-05, -6.789989351676306909e-05, -6.788505368072782285e-05, -6.787010479417042419e-05, -6.785504689110084516e-05, -6.783988000570098512e-05, -6.782460417233106764e-05, -6.780921942552149532e-05, -6.779372579997919247e-05, -6.777812333058498941e-05, -6.776241205239194197e-05, -6.774659200062858411e-05, -6.773066321069873817e-05, -6.771462571817627005e-05, -6.769847955881149956e-05, -6.768222476852815109e-05, -6.766586138342133429e-05, -6.764938943976240941e-05, -6.763280897399597869e-05, -6.761612002273695895e-05, -6.759932262277658539e-05, -6.758241681107872531e-05, -6.756540262477777746e-05, -6.754828010118584132e-05, -6.753104927778356915e-05, -6.751371019222668476e-05, -6.749626288234418102e-05, -6.747870738613474199e-05, -6.746104374177388510e-05, -6.744327198760736108e-05, -6.742539216215288867e-05, -6.740740430410148280e-05, -6.738930845231722413e-05, -6.737110464583369481e-05, -6.735279292386114772e-05, -6.733437332577752116e-05, -6.731584589113505249e-05, -6.729721065965740497e-05, -6.727846767124027766e-05, -6.725961696595083618e-05, -6.724065858402904087e-05, -6.722159256588387919e-05, -6.720241895209821752e-05, -6.718313778342665989e-05, -6.716374910079190230e-05, -6.714425294529222728e-05, -6.712464935819516135e-05, -6.710493838093778668e-05, -6.708512005513084752e-05, -6.706519442255450827e-05, -6.704516152516052188e-05, -6.702502140507161997e-05, -6.700477410457947997e-05, -6.698441966614837075e-05, -6.696395813241229301e-05, -6.694338954617596866e-05, -6.692271395041405474e-05, -6.690193138827302721e-05, -6.688104190306669512e-05, -6.686004553828093036e-05, -6.683894233757163485e-05, -6.681773234476407646e-05, -6.679641560385385119e-05, -6.677499215900688321e-05, -6.675346205455633488e-05, -6.673182533500717395e-05, -6.671008204503334107e-05, -6.668823222947867137e-05, -6.666627593335601356e-05, -6.664421320184564426e-05, -6.662204408029990296e-05, -6.659976861423858420e-05, -6.657738684935067227e-05, -6.655489883149442250e-05, -6.653230460669726644e-05, -6.650960422115277605e-05, -6.648679772122623383e-05, -6.646388515345010625e-05, -6.644086656452533122e-05, -6.641774200132146723e-05, -6.639451151087700500e-05, -6.637117514039574898e-05, -6.634773293725275336e-05, -6.632418494898974129e-05, -6.630053122331618911e-05, -6.627677180811110175e-05, -6.625290675141729349e-05, -6.622893610144793390e-05, -6.620485990658597861e-05, -6.618067821537641727e-05, -6.615639107653532663e-05, -6.613199853894562857e-05, -6.610750065165452876e-05, -6.608289746388193268e-05, -6.605818902500846526e-05, -6.603337538458535060e-05, -6.600845659233067157e-05, -6.598343269812610354e-05, -6.595830375202192892e-05, -6.593306980423775535e-05, -6.590773090515401834e-05, -6.588228710532083104e-05, -6.585673845545490779e-05, -6.583108500643461750e-05, -6.580532680931082564e-05, -6.577946391529716351e-05, -6.575349637577035356e-05, -6.572742424227695848e-05, -6.570124756652835326e-05, -6.567496640039755386e-05, -6.564858079593015414e-05, -6.562209080532967556e-05, -6.559549648096929010e-05, -6.556879787538680586e-05, -6.554199504128129243e-05, -6.551508803152282523e-05, -6.548807689914313418e-05, -6.546096169733633561e-05, -6.543374247946470560e-05, -6.540641929905458712e-05, -6.537899220979281217e-05, -6.535146126553753024e-05, -6.532382652030405948e-05, -6.529608802827589135e-05, -6.526824584379929673e-05, -6.524030002138455915e-05, -6.521225061570575801e-05, -6.518409768160175787e-05, -6.515584127407145155e-05, -6.512748144828073966e-05, -6.509901825955765166e-05, -6.507045176339348435e-05, -6.504178201544270693e-05, -6.501300907152411299e-05, -6.498413298761549438e-05, -6.495515381986179983e-05, -6.492607162456841285e-05, -6.489688645820440441e-05, -6.486759837740188237e-05, -6.483820743895189862e-05, -6.480871369981171324e-05, -6.477911721709915668e-05, -6.474941804809425600e-05, -6.471961625023915361e-05, -6.468971188113912369e-05, -6.465970499855720538e-05, -6.462959566042206325e-05, -6.459938392482263408e-05, -6.456906985000911614e-05, -6.453865349439321319e-05, -6.450813491654869009e-05, -6.447751417520767301e-05, -6.444679132926594840e-05, -6.441596643777929032e-05, -6.438503955996450394e-05, -6.435401075520014386e-05, -6.432288008302132346e-05, -6.429164760312758894e-05, -6.426031337537751185e-05, -6.422887745979004434e-05, -6.419733991654408549e-05, -6.416570080597983658e-05, -6.413396018859351554e-05, -6.410211812504478380e-05, -6.407017467615211132e-05, -6.403812990289307471e-05, -6.400598386640632236e-05, -6.397373662798565199e-05, -6.394138824908823706e-05, -6.390893879132846032e-05, -6.387638831648062435e-05, -6.384373688647699998e-05, -6.381098456341036064e-05, -6.377813140952816827e-05, -6.374517748723860426e-05, -6.371212285911310373e-05, -6.367896758787240999e-05, -6.364571173640133324e-05, -6.361235536774257065e-05, -6.357889854509167829e-05, -6.354534133181075929e-05, -6.351168379141114363e-05, -6.347792598756600557e-05, -6.344406798410716526e-05, -6.341010984501889523e-05, -6.337605163444559109e-05, -6.334189341669291002e-05, -6.330763525621523459e-05, -6.327327721762969969e-05, -6.323881936570979571e-05, -6.320426176537974425e-05, -6.316960448173101865e-05, -6.313484758000084966e-05, -6.309999112558855629e-05, -6.306503518404821382e-05, -6.302997982109177094e-05, -6.299482510258090466e-05, -6.295957109454298518e-05, -6.292421786315168224e-05, -6.288876547474114105e-05, -6.285321399580159126e-05, -6.281756349297215060e-05, -6.278181403305646449e-05, -6.274596568300858427e-05, -6.271001850993462065e-05, -6.267397258109969613e-05, -6.263782796392393349e-05, -6.260158472597573368e-05, -6.256524293498889270e-05, -6.252880265884036191e-05, -6.249226396556779850e-05, -6.245562692336293839e-05, -6.241889160056526711e-05, -6.238205806567707673e-05, -6.234512638734985906e-05, -6.230809663438581004e-05, -6.227096887574499898e-05, -6.223374318053914798e-05, -6.219641961803362414e-05, -6.215899825764624692e-05, -6.212147916894990383e-05, -6.208386242166517778e-05, -6.204614808567036248e-05, -6.200833623099442861e-05, -6.197042692781881278e-05, -6.193242024647926068e-05, -6.189431625745849517e-05, -6.185611503139624512e-05, -6.181781663908246917e-05, -6.177942115145886005e-05, -6.174092863961891235e-05, -6.170233917480941329e-05, -6.166365282842307016e-05, -6.162486967200955562e-05, -6.158598977726729485e-05, -6.154701321604651490e-05, -6.150794006034939376e-05, -6.146877038232369066e-05, -6.142950425427352033e-05, -6.139014174865116728e-05, -6.135068293805993184e-05, -6.131112789525238187e-05, -6.127147669313370024e-05, -6.123172940475393278e-05, -6.119188610331719044e-05, -6.115194686217656711e-05, -6.111191175483428870e-05, -6.107178085494183509e-05, -6.103155423630215597e-05, -6.099123197286204079e-05, -6.095081413872205952e-05, -6.091030080813058601e-05, -6.086969205548425872e-05, -6.082898795533056254e-05, -6.078818858235952106e-05, -6.074729401141400328e-05, -6.070630431748947963e-05, -6.066521957571942595e-05, -6.062403986139215569e-05, -6.058276524994386070e-05, -6.054139581695319700e-05, -6.049993163815127977e-05, -6.045837278941559146e-05, -6.041671934677017835e-05, -6.037497138638664662e-05, -6.033312898458490777e-05, -6.029119221782529102e-05, -6.024916116272697477e-05, -6.020703589604281953e-05, -6.016481649468002202e-05, -6.012250303569185484e-05, -6.008009559627218454e-05, -6.003759425376448399e-05, -5.999499908566361458e-05, -5.995231016959956316e-05, -5.990952758335498581e-05, -5.986665140485786913e-05, -5.982368171217467267e-05, -5.978061858352925502e-05, -5.973746209727837764e-05, -5.969421233193057674e-05, -5.965086936613727282e-05, -5.960743327869677543e-05, -5.956390414854425435e-05, -5.952028205477193957e-05, -5.947656707660399494e-05, -5.943275929341539684e-05, -5.938885878472523921e-05, -5.934486563018924579e-05, -5.930077990961763916e-05, -5.925660170295847783e-05, -5.921233109029964856e-05, -5.916796815187803455e-05, -5.912351296807305773e-05, -5.907896561940012607e-05, -5.903432618653008151e-05, -5.898959475026366013e-05, -5.894477139155146868e-05, -5.889985619148611727e-05, -5.885484923129555832e-05, -5.880975059236057611e-05, -5.876456035619856438e-05, -5.871927860446463088e-05, -5.867390541896109091e-05, -5.862844088163027772e-05, -5.858288507455558600e-05, -5.853723807996153296e-05, -5.849149998021593340e-05, -5.844567085782120585e-05, -5.839975079542668502e-05, -5.835373987582027341e-05, -5.830763818193021673e-05, -5.826144579682727905e-05, -5.821516280371608277e-05, -5.816878928594775987e-05, -5.812232532701082431e-05, -5.807577101053348949e-05, -5.802912642028397997e-05, -5.798239164017135819e-05, -5.793556675423866005e-05, -5.788865184667325593e-05, -5.784164700179999298e-05, -5.779455230408233365e-05, -5.774736783812477474e-05, -5.770009368866365202e-05, -5.765272994058031334e-05, -5.760527667889194349e-05, -5.755773398875392241e-05, -5.751010195545950665e-05, -5.746238066444178097e-05, -5.741457020126537096e-05, -5.736667065163857256e-05, -5.731868210140467164e-05, -5.727060463654419373e-05, -5.722243834317487017e-05, -5.717418330755308820e-05, -5.712583961606589495e-05, -5.707740735524321509e-05, -5.702888661174910264e-05, -5.698027747238354349e-05, -5.693158002408556565e-05, -5.688279435392309524e-05, -5.683392054910421860e-05, -5.678495869697898480e-05, -5.673590888502063538e-05, -5.668677120084545881e-05, -5.663754573220540435e-05, -5.658823256698113639e-05, -5.653883179319406908e-05, -5.648934349899883115e-05, -5.643976777268404517e-05, -5.639010470267280864e-05, -5.634035437752503862e-05, -5.629051688592554546e-05, -5.624059231670840706e-05, -5.619058075882655022e-05, -5.614048230137468146e-05, -5.609029703358140633e-05, -5.604002504480166020e-05, -5.598966642452854649e-05, -5.593922126239400747e-05, -5.588868964815009471e-05, -5.583807167168991444e-05, -5.578736742303936735e-05, -5.573657699234823779e-05, -5.568570046991279935e-05, -5.563473794614732750e-05, -5.558368951160581748e-05, -5.553255525697419837e-05, -5.548133527306344165e-05, -5.543002965082025415e-05, -5.537863848132917188e-05, -5.532716185579255653e-05, -5.527559986555290292e-05, -5.522395260208279658e-05, -5.517222015697668735e-05, -5.512040262197341373e-05, -5.506850008893457974e-05, -5.501651264984807867e-05, -5.496444039683792536e-05, -5.491228342215602308e-05, -5.486004181818383726e-05, -5.480771567743444194e-05, -5.475530509254367671e-05, -5.470281015628285898e-05, -5.465023096155284126e-05, -5.459756760137377213e-05, -5.454482016890834569e-05, -5.449198875744063923e-05, -5.443907346037889152e-05, -5.438607437126593148e-05, -5.433299158377061976e-05, -5.427982519168931240e-05, -5.422657528894863233e-05, -5.417324196959575900e-05, -5.411982532781198766e-05, -5.406632545790362207e-05, -5.401274245430399382e-05, -5.395907641157289314e-05, -5.390532742439988249e-05, -5.385149558759298017e-05, -5.379758099609451683e-05, -5.374358374497030695e-05, -5.368950392941219675e-05, -5.363534164473779988e-05, -5.358109698639267944e-05, -5.352677004994124059e-05, -5.347236093108003922e-05, -5.341786972562835611e-05, -5.336329652953054832e-05, -5.330864143885847509e-05, -5.325390454980126568e-05, -5.319908595867980022e-05, -5.314418576193683674e-05, -5.308920405613938961e-05, -5.303414093797861434e-05, -5.297899650427131192e-05, -5.292377085195164825e-05, -5.286846407808383925e-05, -5.281307627985332143e-05, -5.275760755456850693e-05, -5.270205799966109524e-05, -5.264642771268771302e-05, -5.259071679132046128e-05, -5.253492533336138939e-05, -5.247905343673217490e-05, -5.242310119947694923e-05, -5.236706871976386972e-05, -5.231095609587581589e-05, -5.225476342622247824e-05, -5.219849080934155087e-05, -5.214213834387819945e-05, -5.208570612860772100e-05, -5.202919426242708713e-05, -5.197260284434621622e-05, -5.191593197350320645e-05, -5.185918174915409007e-05, -5.180235227067510350e-05, -5.174544363756490312e-05, -5.168845594943499721e-05, -5.163138930602163829e-05, -5.157424380718737486e-05, -5.151701955290010601e-05, -5.145971664325631721e-05, -5.140233517847197299e-05, -5.134487525887399244e-05, -5.128733698491338158e-05, -5.122972045716695454e-05, -5.117202577631489057e-05, -5.111425304316571813e-05, -5.105640235864582525e-05, -5.099847382378924765e-05, -5.094046753976566832e-05, -5.088238360784434744e-05, -5.082422212942171532e-05, -5.076598320601214992e-05, -5.070766693923828679e-05, -5.064927343084575743e-05, -5.059080278270338581e-05, -5.053225509678187027e-05, -5.047363047517783243e-05, -5.041492902010423559e-05, -5.035615083387994927e-05, -5.029729601895719987e-05, -5.023836467788567000e-05, -5.017935691334099945e-05, -5.012027282811117848e-05, -5.006111252509938705e-05, -5.000187610732367632e-05, -4.994256367791897447e-05, -4.988317534012745081e-05, -4.982371119731292215e-05, -4.976417135295362249e-05, -4.970455591063101545e-05, -4.964486497405636397e-05, -4.958509864704627477e-05, -4.952525703352576126e-05, -4.946534023754079314e-05, -4.940534836324807103e-05, -4.934528151491667989e-05, -4.928513979693132128e-05, -4.922492331378145104e-05, -4.916463217007634287e-05, -4.910426647053489012e-05, -4.904382631998842465e-05, -4.898331182337940906e-05, -4.892272308576502132e-05, -4.886206021230567577e-05, -4.880132330828085925e-05, -4.874051247907900059e-05, -4.867962783019890718e-05, -4.861866946724996825e-05, -4.855763749595540073e-05, -4.849653202214037039e-05, -4.843535315174799069e-05, -4.837410099082898213e-05, -4.831277564554384068e-05, -4.825137722216517560e-05, -4.818990582706712491e-05, -4.812836156674110341e-05, -4.806674454778478450e-05, -4.800505487690482422e-05, -4.794329266091649534e-05, -4.788145800674626913e-05, -4.781955102142089876e-05, -4.775757181208357396e-05, -4.769552048598215739e-05, -4.763339715047296580e-05, -4.757120191301952324e-05, -4.750893488119552899e-05, -4.744659616267352093e-05, -4.738418586524175519e-05, -4.732170409679215120e-05, -4.725915096532349002e-05, -4.719652657894386066e-05, -4.713383104585911328e-05, -4.707106447438702155e-05, -4.700822697295920719e-05, -4.694531865009684022e-05, -4.688233961443733069e-05, -4.681928997472373737e-05, -4.675616983979603993e-05, -4.669297931860714448e-05, -4.662971852021223805e-05, -4.656638755377112639e-05, -4.650298652855075477e-05, -4.643951555391410843e-05, -4.637597473933362962e-05, -4.631236419439373832e-05, -4.624868402876644450e-05, -4.618493435223806014e-05, -4.612111527469798454e-05, -4.605722690613086413e-05, -4.599326935662948097e-05, -4.592924273639763943e-05, -4.586514715572523630e-05, -4.580098272501563012e-05, -4.573674955477430450e-05, -4.567244775559749757e-05, -4.560807743820304748e-05, -4.554363871339029053e-05, -4.547913169207184857e-05, -4.541455648526097097e-05, -4.534991320406399942e-05, -4.528520195969356807e-05, -4.522042286347118531e-05, -4.515557602680234453e-05, -4.509066156120371727e-05, -4.502567957829223667e-05, -4.496063018977344909e-05, -4.489551350747227829e-05, -4.483032964329346568e-05, -4.476507870925242933e-05, -4.469976081746083064e-05, -4.463437608012922375e-05, -4.456892460956689977e-05, -4.450340651818467179e-05, -4.443782191848299606e-05, -4.437217092306930573e-05, -4.430645364464887642e-05, -4.424067019601322524e-05, -4.417482069006887607e-05, -4.410890523981092530e-05, -4.404292395832611154e-05, -4.397687695880674757e-05, -4.391076435453899741e-05, -4.384458625890600699e-05, -4.377834278538986245e-05, -4.371203404756021958e-05, -4.364566015909185435e-05, -4.357922123375504062e-05, -4.351271738540436252e-05, -4.344614872800695791e-05, -4.337951537561676182e-05, -4.331281744237729824e-05, -4.324605504253493455e-05, -4.317922829042855442e-05, -4.311233730049105541e-05, -4.304538218724987753e-05, -4.297836306532959173e-05, -4.291128004943948581e-05, -4.284413325439194166e-05, -4.277692279508933670e-05, -4.270964878652789963e-05, -4.264231134379956029e-05, -4.257491058208065369e-05, -4.250744661664874541e-05, -4.243991956287130175e-05, -4.237232953620788519e-05, -4.230467665221064231e-05, -4.223696102652619433e-05, -4.216918277488421917e-05, -4.210134201311495448e-05, -4.203343885713674966e-05, -4.196547342295935915e-05, -4.189744582668651737e-05, -4.182935618450368728e-05, -4.176120461269572603e-05, -4.169299122763537219e-05, -4.162471614578496003e-05, -4.155637948369728021e-05, -4.148798135801746350e-05, -4.141952188547170512e-05, -4.135100118288137971e-05, -4.128241936716603639e-05, -4.121377655531615822e-05, -4.114507286442316747e-05, -4.107630841166718771e-05, -4.100748331430729954e-05, -4.093859768970029050e-05, -4.086965165528781403e-05, -4.080064532859910682e-05, -4.073157882725430233e-05, -4.066245226895173889e-05, -4.059326577148306397e-05, -4.052401945273587016e-05, -4.045471343066671887e-05, -4.038534782333051541e-05, -4.031592274886885383e-05, -4.024643832550038109e-05, -4.017689467153878123e-05, -4.010729190538051713e-05, -4.003763014550773753e-05, -3.996790951048778912e-05, -3.989813011897659113e-05, -3.982829208970286021e-05, -3.975839554150117856e-05, -3.968844059326960165e-05, -3.961842736400269247e-05, -3.954835597277922945e-05, -3.947822653874989392e-05, -3.940803918116730258e-05, -3.933779401935874652e-05, -3.926749117272862396e-05, -3.919713076077365968e-05, -3.912671290307377067e-05, -3.905623771927928608e-05, -3.898570532914461846e-05, -3.891511585248499055e-05, -3.884446940921014717e-05, -3.877376611931208347e-05, -3.870300610285187857e-05, -3.863218947999073091e-05, -3.856131637096222296e-05, -3.849038689607475392e-05, -3.841940117572684052e-05, -3.834835933039804361e-05, -3.827726148063585607e-05, -3.820610774708697529e-05, -3.813489825046873443e-05, -3.806363311157220594e-05, -3.799231245127761758e-05, -3.792093639054170789e-05, -3.784950505040030120e-05, -3.777801855197177706e-05, -3.770647701644385649e-05, -3.763488056509262304e-05, -3.756322931927235151e-05, -3.749152340040333111e-05, -3.741976293000256863e-05, -3.734794802965586349e-05, -3.727607882102033530e-05, -3.720415542583977207e-05, -3.713217796593245326e-05, -3.706014656319368415e-05, -3.698806133959861472e-05, -3.691592241718979166e-05, -3.684372991809562370e-05, -3.677148396451754059e-05, -3.669918467873330668e-05, -3.662683218309638398e-05, -3.655442660003886625e-05, -3.648196805205910554e-05, -3.640945666174010302e-05, -3.633689255173657302e-05, -3.626427584477831089e-05, -3.619160666366919011e-05, -3.611888513129154647e-05, -3.604611137059174472e-05, -3.597328550459975513e-05, -3.590040765641619729e-05, -3.582747794921551141e-05, -3.575449650624847910e-05, -3.568146345082945007e-05, -3.560837890635538348e-05, -3.553524299629297979e-05, -3.546205584418110667e-05, -3.538881757363123267e-05, -3.531552830833029359e-05, -3.524218817202702476e-05, -3.516879728855205943e-05, -3.509535578180409841e-05, -3.502186377575317624e-05, -3.494832139444024107e-05, -3.487472876198063762e-05, -3.480108600255056827e-05, -3.472739324040637147e-05, -3.465365059987130127e-05, -3.457985820533906454e-05, -3.450601618127598937e-05, -3.443212465220869226e-05, -3.435818374273936539e-05, -3.428419357754942221e-05, -3.421015428136965484e-05, -3.413606597901264487e-05, -3.406192879535964457e-05, -3.398774285535048021e-05, -3.391350828400291865e-05, -3.383922520639948752e-05, -3.376489374769033475e-05, -3.369051403309322864e-05, -3.361608618789658001e-05, -3.354161033744277942e-05, -3.346708660716392835e-05, -3.339251512253618080e-05, -3.331789600911518989e-05, -3.324322939252260953e-05, -3.316851539843344995e-05, -3.309375415260798031e-05, -3.301894578086246205e-05, -3.294409040907185260e-05, -3.286918816318640723e-05, -3.279423916922125039e-05, -3.271924355324307387e-05, -3.264420144140638309e-05, -3.256911295990698479e-05, -3.249397823501788088e-05, -3.241879739307621064e-05, -3.234357056046974557e-05, -3.226829786366930706e-05, -3.219297942919928965e-05, -3.211761538364075775e-05, -3.204220585364720727e-05, -3.196675096593527534e-05, -3.189125084727047627e-05, -3.181570562450058146e-05, -3.174011542452573602e-05, -3.166448037430085084e-05, -3.158880060085271941e-05, -3.151307623126618746e-05, -3.143730739268731751e-05, -3.136149421232624162e-05, -3.128563681744428655e-05, -3.120973533537315053e-05, -3.113378989350488801e-05, -3.105780061927830961e-05, -3.098176764021235531e-05, -3.090569108387542500e-05, -3.082957107788893608e-05, -3.075340774994356614e-05, -3.067720122778563944e-05, -3.060095163922054215e-05, -3.052465911211556840e-05, -3.044832377438626267e-05, -3.037194575401664702e-05, -3.029552517904535337e-05, -3.021906217756866275e-05, -3.014255687774068478e-05, -3.006600940777615972e-05, -2.998941989593691270e-05, -2.991278847055167428e-05, -2.983611526000270412e-05, -2.975940039272875220e-05, -2.968264399722476065e-05, -2.960584620204521466e-05, -2.952900713579049164e-05, -2.945212692712648869e-05, -2.937520570477128356e-05, -2.929824359749828215e-05, -2.922124073413915609e-05, -2.914419724357031051e-05, -2.906711325473284013e-05, -2.898998889661877685e-05, -2.891282429827445754e-05, -2.883561958880006667e-05, -2.875837489735296002e-05, -2.868109035313375982e-05, -2.860376608540658190e-05, -2.852640222348528325e-05, -2.844899889673654521e-05, -2.837155623457972441e-05, -2.829407436648990548e-05, -2.821655342198448066e-05, -2.813899353064266200e-05, -2.806139482209240327e-05, -2.798375742601298162e-05, -2.790608147213861277e-05, -2.782836709024421069e-05, -2.775061441016269753e-05, -2.767282356178788359e-05, -2.759499467504342179e-05, -2.751712787991704144e-05, -2.743922330644663651e-05, -2.736128108470589659e-05, -2.728330134484252838e-05, -2.720528421702949712e-05, -2.712722983150269582e-05, -2.704913831854688789e-05, -2.697100980848551229e-05, -2.689284443169727854e-05, -2.681464231861953798e-05, -2.673640359971716032e-05, -2.665812840551676062e-05, -2.657981686659256394e-05, -2.650146911355242256e-05, -2.642308527707221905e-05, -2.634466548786443461e-05, -2.626620987668156762e-05, -2.618771857433294900e-05, -2.610919171167434743e-05, -2.603062941959401357e-05, -2.595203182905012236e-05, -2.587339907102254974e-05, -2.579473127655023353e-05, -2.571602857671785475e-05, -2.563729110264090607e-05, -2.555851898550064381e-05, -2.547971235651282901e-05, -2.540087134693046507e-05, -2.532199608806118561e-05, -2.524308671125657173e-05, -2.516414334789824370e-05, -2.508516612943551325e-05, -2.500615518733690962e-05, -2.492711065312779796e-05, -2.484803265837300497e-05, -2.476892133468027146e-05, -2.468977681369944591e-05, -2.461059922712623856e-05, -2.453138870668817085e-05, -2.445214538416470084e-05, -2.437286939137691660e-05, -2.429356086017362112e-05, -2.421421992246535252e-05, -2.413484671019337590e-05, -2.405544135533259372e-05, -2.397600398990868979e-05, -2.389653474598461393e-05, -2.381703375566286229e-05, -2.373750115108966160e-05, -2.365793706444018342e-05, -2.357834162793946581e-05, -2.349871497384835263e-05, -2.341905723446664785e-05, -2.333936854213281066e-05, -2.325964902922744520e-05, -2.317989882815878582e-05, -2.310011807138403556e-05, -2.302030689139435669e-05, -2.294046542071879081e-05, -2.286059379192374380e-05, -2.278069213761641130e-05, -2.270076059043042314e-05, -2.262079928304661937e-05, -2.254080834817916910e-05, -2.246078791857834538e-05, -2.238073812703405559e-05, -2.230065910636168253e-05, -2.222055098942274175e-05, -2.214041390911081751e-05, -2.206024799835453070e-05, -2.198005339011774897e-05, -2.189983021740265636e-05, -2.181957861323520462e-05, -2.173929871068662115e-05, -2.165899064285846726e-05, -2.157865454288635499e-05, -2.149829054394327088e-05, -2.141789877922479013e-05, -2.133747938197061157e-05, -2.125703248544984304e-05, -2.117655822296439963e-05, -2.109605672784889871e-05, -2.101552813347381084e-05, -2.093497257323112800e-05, -2.085439018055193443e-05, -2.077378108890971006e-05, -2.069314543178805518e-05, -2.061248334271611335e-05, -2.053179495525414471e-05, -2.045108040297889608e-05, -2.037033981952281176e-05, -2.028957333852372995e-05, -2.020878109366391743e-05, -2.012796321865572083e-05, -2.004711984723033831e-05, -1.996625111315581400e-05, -1.988535715024008048e-05, -1.980443809229882239e-05, -1.972349407319079769e-05, -1.964252522680348889e-05, -1.956153168703851723e-05, -1.948051358785055865e-05, -1.939947106319746042e-05, -1.931840424707899793e-05, -1.923731327351898196e-05, -1.915619827657213324e-05, -1.907505939030585087e-05, -1.899389674883956213e-05, -1.891271048629431379e-05, -1.883150073683187122e-05, -1.875026763464018664e-05, -1.866901131391897247e-05, -1.858773190891507685e-05, -1.850642955389036749e-05, -1.842510438312457770e-05, -1.834375653093360574e-05, -1.826238613165811033e-05, -1.818099331964896201e-05, -1.809957822930691139e-05, -1.801814099503148598e-05, -1.793668175126074312e-05, -1.785520063245292664e-05, -1.777369777308985161e-05, -1.769217330767670779e-05, -1.761062737074525810e-05, -1.752906009683961855e-05, -1.744747162053713260e-05, -1.736586207643416803e-05, -1.728423159914932217e-05, -1.720258032332309324e-05, -1.712090838362159034e-05, -1.703921591472154097e-05, -1.695750305133180907e-05, -1.687576992817890398e-05, -1.679401668001018557e-05, -1.671224344159735409e-05, -1.663045034772169816e-05, -1.654863753319562981e-05, -1.646680513284801383e-05, -1.638495328152738312e-05, -1.630308211410206741e-05, -1.622119176546315793e-05, -1.613928237051026705e-05, -1.605735406417255163e-05, -1.597540698139439822e-05, -1.589344125713872981e-05, -1.581145702638650781e-05, -1.572945442414060130e-05, -1.564743358541064884e-05, -1.556539464523488481e-05, -1.548333773866513341e-05, -1.540126300077053218e-05, -1.531917056664071686e-05, -1.523706057137111351e-05, -1.515493315008463101e-05, -1.507278843791665674e-05, -1.499062657001873269e-05, -1.490844768155823867e-05, -1.482625190772168728e-05, -1.474403938370023115e-05, -1.466181024471092688e-05, -1.457956462598222537e-05, -1.449730266275723794e-05, -1.441502449029729052e-05, -1.433273024386700908e-05, -1.425042005875598844e-05, -1.416809407026398778e-05, -1.408575241370452384e-05, -1.400339522440434058e-05, -1.392102263770698881e-05, -1.383863478895821315e-05, -1.375623181352357033e-05, -1.367381384679214933e-05, -1.359138102414340331e-05, -1.350893348098356180e-05, -1.342647135273051463e-05, -1.334399477479924456e-05, -1.326150388264173620e-05, -1.317899881169549830e-05, -1.309647969742366072e-05, -1.301394667530009874e-05, -1.293139988079814725e-05, -1.284883944940884075e-05, -1.276626551664416423e-05, -1.268367821800410872e-05, -1.260107768901281074e-05, -1.251846406520389530e-05, -1.243583748210541222e-05, -1.235319807528013122e-05, -1.227054598027391014e-05, -1.218788133265571220e-05, -1.210520426799911694e-05, -1.202251492188953188e-05, -1.193981342990548153e-05, -1.185709992765881100e-05, -1.177437455074311014e-05, -1.169163743477384089e-05, -1.160888871537342948e-05, -1.152612852815628584e-05, -1.144335700876551397e-05, -1.136057429283937285e-05, -1.127778051601496949e-05, -1.119497581394619404e-05, -1.111216032229264221e-05, -1.102933417670459747e-05, -1.094649751286326677e-05, -1.086365046642915385e-05, -1.078079317308213921e-05, -1.069792576850667899e-05, -1.061504838837680916e-05, -1.053216116839276610e-05, -1.044926424424761521e-05, -1.036635775163066613e-05, -1.028344182624570941e-05, -1.020051660379610190e-05, -1.011758221998813963e-05, -1.003463881053089017e-05, -9.951686511139643367e-06, -9.868725457520981562e-06, -9.785755785394636451e-06, -9.702777630478521992e-06, -9.619791128492210632e-06, -9.536796415160368878e-06, -9.453793626197876614e-06, -9.370782897331651759e-06, -9.287764364285632369e-06, -9.204738162784437515e-06, -9.121704428552901414e-06, -9.038663297319707201e-06, -8.955614904802379199e-06, -8.872559386729100792e-06, -8.789496878823923541e-06, -8.706427516810033335e-06, -8.623351436413387557e-06, -8.540268773347576910e-06, -8.457179663335887235e-06, -8.374084242096251123e-06, -8.290982645344703814e-06, -8.207875008795215480e-06, -8.124761468163047172e-06, -8.041642159149993812e-06, -7.958517217466003858e-06, -7.875386778814483289e-06, -7.792250978895553289e-06, -7.709109953405951992e-06, -7.625963838042447178e-06, -7.542812768486904778e-06, -7.459656880428135543e-06, -7.376496309546982188e-06, -7.293331191519768507e-06, -7.210161662021762042e-06, -7.126987856712172285e-06, -7.043809911252411016e-06, -6.960627961309589697e-06, -6.877442142523021863e-06, -6.794252590540895414e-06, -6.711059441005454620e-06, -6.627862829541457603e-06, -6.544662891778296600e-06, -6.461459763334919088e-06, -6.378253579823341272e-06, -6.295044476848400751e-06, -6.211832590011244604e-06, -6.128618054890641298e-06, -6.045401007083390939e-06, -5.962181582152397914e-06, -5.878959915667041330e-06, -5.795736143188246059e-06, -5.712510400257123177e-06, -5.629282822413233691e-06, -5.546053545198173181e-06, -5.462822704121886147e-06, -5.379590434699549209e-06, -5.296356872436552373e-06, -5.213122152813448940e-06, -5.129886411326454700e-06, -5.046649783435396061e-06, -4.963412404604240573e-06, -4.880174410282363952e-06, -4.796935935911685480e-06, -4.713697116907991781e-06, -4.630458088701419062e-06, -4.547218986684411414e-06, -4.463979946252206439e-06, -4.380741102787844467e-06, -4.297502591647097295e-06, -4.214264548195308194e-06, -4.131027107773835849e-06, -4.047790405703502630e-06, -3.964554577302959963e-06, -3.881319757877325382e-06, -3.798086082703110846e-06, -3.714853687068820186e-06, -3.631622706222826925e-06, -3.548393275413908202e-06, -3.465165529876209506e-06, -3.381939604814201375e-06, -3.298715635439538031e-06, -3.215493756937447966e-06, -3.132274104470263097e-06, -3.049056813195704097e-06, -2.965842018251827767e-06, -2.882629854760566366e-06, -2.799420457827432843e-06, -2.716213962545077104e-06, -2.633010503978200356e-06, -2.549810217185594481e-06, -2.466613237205094072e-06, -2.383419699057064091e-06, -2.300229737747876514e-06, -2.217043488254885666e-06, -2.133861085548445141e-06, -2.050682664576843749e-06, -1.967508360269830869e-06, -1.884338307538346027e-06, -1.801172641278072419e-06, -1.718011496354342777e-06, -1.634855007624172606e-06, -1.551703309921219842e-06, -1.468556538059291993e-06, -1.385414826835795043e-06, -1.302278311016726571e-06, -1.219147125358676374e-06, -1.136021404593795443e-06, -1.052901283433271759e-06, -9.697868965671280713e-07, -8.866783786676938793e-07, -8.035758643745782235e-07, -7.204794883166822717e-07, -6.373893850971578135e-07, -5.543056892969020125e-07, -4.712285354743313544e-07, -3.881580581688731168e-07, -3.050943918859315931e-07, -2.220376711189002023e-07, -1.389880303341200637e-07, -5.594560397437430493e-08, 2.708947353762849467e-08, 1.101170678142861481e-07, 1.931370444847981609e-07, 2.761492691916807400e-07, 3.591536076243169016e-07, 4.421499254821317008e-07, 5.251380884896325323e-07, 6.081179624077242730e-07, 6.910894130117155951e-07, 7.740523061063383426e-07, 8.570065075222710961e-07, 9.399518831163476490e-07, 1.022888298768069879e-06, 1.105815620398340939e-06, 1.188733713928954109e-06, 1.271642445334638523e-06, 1.354541680602552886e-06, 1.437431285747306548e-06, 1.520311126822280310e-06, 1.603181069901331782e-06, 1.686040981075331656e-06, 1.768890726485650939e-06, 1.851730172287398028e-06, 1.934559184664427293e-06, 2.017377629844341081e-06, 2.100185374058038607e-06, 2.182982283591693065e-06, 2.265768224746280822e-06, 2.348543063852625143e-06, 2.431306667282644370e-06, 2.514058901431137743e-06, 2.596799632712262171e-06, 2.679528727593058642e-06, 2.762246052556641016e-06, 2.844951474117262203e-06, 2.927644858835267259e-06, 3.010326073280360950e-06, 3.092994984065110878e-06, 3.175651457841418736e-06, 3.258295361282279878e-06, 3.340926561096796131e-06, 3.423544924026665270e-06, 3.506150316842717917e-06, 3.588742606359903257e-06, 3.671321659415337323e-06, 3.753887342879611739e-06, 3.836439523671738345e-06, 3.918978068722506971e-06, 4.001502845007861930e-06, 4.084013719545442305e-06, 4.166510559376361005e-06, 4.248993231580166754e-06, 4.331461603271356852e-06, 4.413915541595946698e-06, 4.496354913746337756e-06, 4.578779586939516620e-06, 4.661189428431953478e-06, 4.743584305516124196e-06, 4.825964085520761883e-06, 4.908328635807374743e-06, 4.990677823785164016e-06, 5.073011516889141730e-06, 5.155329582595118102e-06, 5.237631888416192282e-06, 5.319918301902964953e-06, 5.402188690640112091e-06, 5.484442922261224973e-06, 5.566680864427057533e-06, 5.648902384840407877e-06, 5.731107351242573452e-06, 5.813295631410043385e-06, 5.895467093169301226e-06, 5.977621604374964726e-06, 6.059759032924822365e-06, 6.141879246756224988e-06, 6.223982113846424625e-06, 6.306067502208988146e-06, 6.388135279908818548e-06, 6.470185315040255766e-06, 6.552217475741976824e-06, 6.634231630193583145e-06, 6.716227646615806378e-06, 6.798205393266965259e-06, 6.880164738457949623e-06, 6.962105550530402530e-06, 7.044027697871551814e-06, 7.125931048910788066e-06, 7.207815472116229918e-06, 7.289680836009553896e-06, 7.371527009147920430e-06, 7.453353860120484078e-06, 7.535161257581594676e-06, 7.616949070214339349e-06, 7.698717166745514662e-06, 7.780465415956669390e-06, 7.862193686662462825e-06, 7.943901847725459055e-06, 8.025589768052676152e-06, 8.107257316592208203e-06, 8.188904362347956906e-06, 8.270530774361623655e-06, 8.352136421709250251e-06, 8.433721173534324342e-06, 8.515284899011448482e-06, 8.596827467361156436e-06, 8.678348747861080458e-06, 8.759848609827907800e-06, 8.841326922613911260e-06, 8.922783555640064783e-06, 9.004218378359687118e-06, 9.085631260273298768e-06, 9.167022070943426439e-06, 9.248390679954602751e-06, 9.329736956964803163e-06, 9.411060771665301694e-06, 9.492361993795749803e-06, 9.573640493155020104e-06, 9.654896139583398344e-06, 9.736128802959132596e-06, 9.817338353231320154e-06, 9.898524660383751090e-06, 9.979687594449748267e-06, 1.006082702552679899e-05, 1.014194282373683084e-05, 1.022303485927735557e-05, 1.030410300238155852e-05, 1.038514712333687077e-05, 1.046616709248136915e-05, 1.054716278020400162e-05, 1.062813405694132616e-05, 1.070908079319201875e-05, 1.079000285949545702e-05, 1.087090012644271808e-05, 1.095177246469143381e-05, 1.103261974492948704e-05, 1.111344183790812881e-05, 1.119423861443833108e-05, 1.127500994537306170e-05, 1.135575570162173479e-05, 1.143647575414710044e-05, 1.151716997396161094e-05, 1.159783823214217441e-05, 1.167848039980862828e-05, 1.175909634813847091e-05, 1.183968594836332099e-05, 1.192024907176936473e-05, 1.200078558969359512e-05, 1.208129537353878231e-05, 1.216177829475191665e-05, 1.224223422483874381e-05, 1.232266303536045110e-05, 1.240306459793396574e-05, 1.248343878422832775e-05, 1.256378546597949111e-05, 1.264410451496881750e-05, 1.272439580303781982e-05, 1.280465920208453856e-05, 1.288489458406033153e-05, 1.296510182098446998e-05, 1.304528078492259000e-05, 1.312543134800152418e-05, 1.320555338240566940e-05, 1.328564676037727834e-05, 1.336571135421320337e-05, 1.344574703627931316e-05, 1.352575367898913210e-05, 1.360573115481851945e-05, 1.368567933630219817e-05, 1.376559809603396332e-05, 1.384548730666336672e-05, 1.392534684091016060e-05, 1.400517657154307433e-05, 1.408497637139431563e-05, 1.416474611335616547e-05, 1.424448567037768316e-05, 1.432419491547903640e-05, 1.440387372173410326e-05, 1.448352196226686213e-05, 1.456313951028384998e-05, 1.464272623903861073e-05, 1.472228202184623542e-05, 1.480180673209414661e-05, 1.488130024322105132e-05, 1.496076242873132534e-05, 1.504019316219156241e-05, 1.511959231722750460e-05, 1.519895976753806576e-05, 1.527829538687812996e-05, 1.535759904905484663e-05, 1.543687062796014300e-05, 1.551610999753517080e-05, 1.559531703178478540e-05, 1.567449160478853013e-05, 1.575363359068277072e-05, 1.583274286365767301e-05, 1.591181929798912259e-05, 1.599086276800349159e-05, 1.606987314809218734e-05, 1.614885031272576731e-05, 1.622779413641531782e-05, 1.630670449376231035e-05, 1.638558125941957710e-05, 1.646442430810599511e-05, 1.654323351461709451e-05, 1.662200875380759270e-05, 1.670074990058815193e-05, 1.677945682995724127e-05, 1.685812941696616769e-05, 1.693676753673331980e-05, 1.701537106445842845e-05, 1.709393987538397936e-05, 1.717247384484489324e-05, 1.725097284822982657e-05, 1.732943676099899996e-05, 1.740786545868097264e-05, 1.748625881687267293e-05, 1.756461671123619989e-05, 1.764293901751314491e-05, 1.772122561150334138e-05, 1.779947636907623185e-05, 1.787769116618444088e-05, 1.795586987882933472e-05, 1.803401238309249363e-05, 1.811211855513275066e-05, 1.819018827116847172e-05, 1.826822140749193143e-05, 1.834621784046620621e-05, 1.842417744652138971e-05, 1.850210010216929394e-05, 1.857998568398246995e-05, 1.865783406860463650e-05, 1.873564513276535065e-05, 1.881341875324464926e-05, 1.889115480690532769e-05, 1.896885317068915865e-05, 1.904651372159994814e-05, 1.912413633671735907e-05, 1.920172089319394998e-05, 1.927926726825514121e-05, 1.935677533919607406e-05, 1.943424498339561395e-05, 1.951167607829568283e-05, 1.958906850141550288e-05, 1.966642213034801523e-05, 1.974373684275699671e-05, 1.982101251639087323e-05, 1.989824902906198778e-05, 1.997544625866101020e-05, 2.005260408315344739e-05, 2.012972238057982288e-05, 2.020680102905236320e-05, 2.028383990676932636e-05, 2.036083889199411735e-05, 2.043779786306941328e-05, 2.051471669841396499e-05, 2.059159527651913775e-05, 2.066843347596324646e-05, 2.074523117539068816e-05, 2.082198825352621618e-05, 2.089870458917152495e-05, 2.097538006120535164e-05, 2.105201454858049120e-05, 2.112860793033745729e-05, 2.120516008558788725e-05, 2.128167089351066607e-05, 2.135814023338364944e-05, 2.143456798454926746e-05, 2.151095402642819914e-05, 2.158729823853051255e-05, 2.166360050043435352e-05, 2.173986069180078900e-05, 2.181607869236985652e-05, 2.189225438195772493e-05, 2.196838764047041973e-05, 2.204447834788702808e-05, 2.212052638425624293e-05, 2.219653162972744573e-05, 2.227249396451692337e-05, 2.234841326892125806e-05, 2.242428942332826765e-05, 2.250012230819627699e-05, 2.257591180406834811e-05, 2.265165779156866509e-05, 2.272736015140301854e-05, 2.280301876435547508e-05, 2.287863351130556874e-05, 2.295420427319095014e-05, 2.302973093105563016e-05, 2.310521336601226660e-05, 2.318065145925606572e-05, 2.325604509207879214e-05, 2.333139414583467068e-05, 2.340669850197139797e-05, 2.348195804202677796e-05, 2.355717264761202529e-05, 2.363234220042198383e-05, 2.370746658224908245e-05, 2.378254567494616378e-05, 2.385757936047388418e-05, 2.393256752086400676e-05, 2.400751003823287254e-05, 2.408240679479524101e-05, 2.415725767283047993e-05, 2.423206255471358370e-05, 2.430682132291136509e-05, 2.438153385996636162e-05, 2.445620004850660353e-05, 2.453081977125978974e-05, 2.460539291101940314e-05, 2.467991935067535622e-05, 2.475439897321080965e-05, 2.482883166168552976e-05, 2.490321729924941397e-05, 2.497755576913952613e-05, 2.505184695467659327e-05, 2.512609073927904256e-05, 2.520028700644275389e-05, 2.527443563975120049e-05, 2.534853652288955716e-05, 2.542258953961065631e-05, 2.549659457376599611e-05, 2.557055150930204749e-05, 2.564446023024402491e-05, 2.571832062070931359e-05, 2.579213256490425416e-05, 2.586589594712126948e-05, 2.593961065175211570e-05, 2.601327656326796336e-05, 2.608689356623314308e-05, 2.616046154530203186e-05, 2.623398038521909036e-05, 2.630744997081569834e-05, 2.638087018702360562e-05, 2.645424091885549428e-05, 2.652756205141794512e-05, 2.660083346990863563e-05, 2.667405505961651616e-05, 2.674722670591851671e-05, 2.682034829429303841e-05, 2.689341971030033968e-05, 2.696644083959582106e-05, 2.703941156792706398e-05, 2.711233178113040877e-05, 2.718520136514487648e-05, 2.725802020599176894e-05, 2.733078818978890230e-05, 2.740350520274673101e-05, 2.747617113116901529e-05, 2.754878586144954817e-05, 2.762134928008555220e-05, 2.769386127365782834e-05, 2.776632172884449488e-05, 2.783873053241771447e-05, 2.791108757124373819e-05, 2.798339273228002901e-05, 2.805564590258839081e-05, 2.812784696931545613e-05, 2.819999581970622851e-05, 2.827209234110055210e-05, 2.834413642093052308e-05, 2.841612794673311387e-05, 2.848806680613469276e-05, 2.855995288684752732e-05, 2.863178607669932557e-05, 2.870356626360103514e-05, 2.877529333555980289e-05, 2.884696718068881403e-05, 2.891858768718861338e-05, 2.899015474335937714e-05, 2.906166823759845992e-05, 2.913312805840048621e-05, 2.920453409435401306e-05, 2.927588623415815225e-05, 2.934718436658694072e-05, 2.941842838053507016e-05, 2.948961816498217614e-05, 2.956075360900611273e-05, 2.963183460179623409e-05, 2.970286103262078698e-05, 2.977383279085661798e-05, 2.984474976598583274e-05, 2.991561184757980064e-05, 2.998641892530936321e-05, 3.005717088895755321e-05, 3.012786762838419539e-05, 3.019850903357184957e-05, 3.026909499458974739e-05, 3.033962540160741256e-05, 3.041010014490714953e-05, 3.048051911485279139e-05, 3.055088220191827194e-05, 3.062118929668454590e-05, 3.069144028982415936e-05, 3.076163507211041129e-05, 3.083177353443101787e-05, 3.090185556775560673e-05, 3.097188106316534962e-05, 3.104184991184919472e-05, 3.111176200508864722e-05, 3.118161723427067129e-05, 3.125141549088420031e-05, 3.132115666651769066e-05, 3.139084065287140027e-05, 3.146046734173928925e-05, 3.153003662501782905e-05, 3.159954839471960914e-05, 3.166900254294128533e-05, 3.173839896189248729e-05, 3.180773754389285056e-05, 3.187701818135629561e-05, 3.194624076680368591e-05, 3.201540519286022582e-05, 3.208451135225201826e-05, 3.215355913781927169e-05, 3.222254844249720451e-05, 3.229147915932883197e-05, 3.236035118146239110e-05, 3.242916440215103585e-05, 3.249791871475012653e-05, 3.256661401272974561e-05, 3.263525018965613073e-05, 3.270382713920450218e-05, 3.277234475515617622e-05, 3.284080293139822622e-05, 3.290920156192094165e-05, 3.297754054083030986e-05, 3.304581976232991673e-05, 3.311403912073256122e-05, 3.318219851045847989e-05, 3.325029782603162006e-05, 3.331833696209247399e-05, 3.338631581337960001e-05, 3.345423427474233485e-05, 3.352209224113742575e-05, 3.358988960762978947e-05, 3.365762626938901571e-05, 3.372530212170237075e-05, 3.379291705995614243e-05, 3.386047097964807456e-05, 3.392796377638469032e-05, 3.399539534588138032e-05, 3.406276558395948206e-05, 3.413007438655840268e-05, 3.419732164971791253e-05, 3.426450726959028151e-05, 3.433163114243746686e-05, 3.439869316462789453e-05, 3.446569323264944240e-05, 3.453263124309361099e-05, 3.459950709265332793e-05, 3.466632067814997848e-05, 3.473307189650365773e-05, 3.479976064474481901e-05, 3.486638682002428917e-05, 3.493295031959436963e-05, 3.499945104082220591e-05, 3.506588888118582356e-05, 3.513226373827187836e-05, 3.519857550978788081e-05, 3.526482409354693588e-05, 3.533100938746529685e-05, 3.539713128958930769e-05, 3.546318969806566885e-05, 3.552918451115342444e-05, 3.559511562723634249e-05, 3.566098294479272667e-05, 3.572678636242323965e-05, 3.579252577884731168e-05, 3.585820109288849705e-05, 3.592381220348411677e-05, 3.598935900969666297e-05, 3.605484141068153036e-05, 3.612025930572898840e-05, 3.618561259423110635e-05, 3.625090117569439781e-05, 3.631612494975129289e-05, 3.638128381613102061e-05, 3.644637767468647684e-05, 3.651140642539108682e-05, 3.657636996832410071e-05, 3.664126820368014811e-05, 3.670610103178092033e-05, 3.677086835304272565e-05, 3.683557006801788553e-05, 3.690020607736296067e-05, 3.696477628185298119e-05, 3.702928058237906818e-05, 3.709371887994848785e-05, 3.715809107568194110e-05, 3.722239707082517120e-05, 3.728663676673190795e-05, 3.735081006487243291e-05, 3.741491686684580374e-05, 3.747895707435041133e-05, 3.754293058921075963e-05, 3.760683731337414527e-05, 3.767067714889725408e-05, 3.773444999795674566e-05, 3.779815576284721368e-05, 3.786179434597838732e-05, 3.792536564988677964e-05, 3.798886957721826584e-05, 3.805230603074009752e-05, 3.811567491333804316e-05, 3.817897612801661168e-05, 3.824220957789600318e-05, 3.830537516622433325e-05, 3.836847279635995377e-05, 3.843150237178346717e-05, 3.849446379609481266e-05, 3.855735697301356440e-05, 3.862018180637594313e-05, 3.868293820014691861e-05, 3.874562605840264554e-05, 3.880824528534199672e-05, 3.887079578528490972e-05, 3.893327746266803645e-05, 3.899569022205749610e-05, 3.905803396813179221e-05, 3.912030860569293251e-05, 3.918251403966366416e-05, 3.924465017508830731e-05, 3.930671691712939398e-05, 3.936871417107956048e-05, 3.943064184234415271e-05, 3.949249983645359961e-05, 3.955428805905970656e-05, 3.961600641593370382e-05, 3.967765481297738666e-05, 3.973923315620634419e-05, 3.980074135176147894e-05, 3.986217930590622860e-05, 3.992354692502668125e-05, 3.998484411562905458e-05, 4.004607078435084959e-05, 4.010722683794736584e-05, 4.016831218328846244e-05, 4.022932672738440264e-05, 4.029027037735776628e-05, 4.035114304045474580e-05, 4.041194462405661166e-05, 4.047267503564923275e-05, 4.053333418286187047e-05, 4.059392197343687526e-05, 4.065443831524123339e-05, 4.071488311627468492e-05, 4.077525628465589332e-05, 4.083555772862052104e-05, 4.089578735654522424e-05, 4.095594507692085266e-05, 4.101603079836375247e-05, 4.107604442962628976e-05, 4.113598587956742125e-05, 4.119585505719059392e-05, 4.125565187161421408e-05, 4.131537623208548447e-05, 4.137502804797486806e-05, 4.143460722878966769e-05, 4.149411368414457644e-05, 4.155354732379997704e-05, 4.161290805763171298e-05, 4.167219579564245907e-05, 4.173141044797261769e-05, 4.179055192487337634e-05, 4.184962013673085149e-05, 4.190861499406431319e-05, 4.196753640751204299e-05, 4.202638428783965523e-05, 4.208515854595175218e-05, 4.214385909286139700e-05, 4.220248583972858932e-05, 4.226103869783077500e-05, 4.231951757857604625e-05, 4.237792239350101389e-05, 4.243625305427057019e-05, 4.249450947267572048e-05, 4.255269156064398465e-05, 4.261079923022406256e-05, 4.266883239359603902e-05, 4.272679096306914766e-05, 4.278467485108189964e-05, 4.284248397019969846e-05, 4.290021823312513985e-05, 4.295787755268263642e-05, 4.301546184182923935e-05, 4.307297101365161623e-05, 4.313040498136369285e-05, 4.318776365831804412e-05, 4.324504695798908220e-05, 4.330225479398453544e-05, 4.335938708004252783e-05, 4.341644373003201947e-05, 4.347342465795011636e-05, 4.353032977793288536e-05, 4.358715900423907079e-05, 4.364391225126185804e-05, 4.370058943352528216e-05, 4.375719046568508165e-05, 4.381371526252590665e-05, 4.387016373897191702e-05, 4.392653581007129179e-05, 4.398283139100679336e-05, 4.403905039709307055e-05, 4.409519274377478835e-05, 4.415125834663631121e-05, 4.420724712138684266e-05, 4.426315898387081336e-05, 4.431899385006529257e-05, 4.437475163608036079e-05, 4.443043225815610794e-05, 4.448603563267387515e-05, 4.454156167613999850e-05, 4.459701030519727449e-05, 4.465238143662136856e-05, 4.470767498731946667e-05, 4.476289087433998567e-05, 4.481802901485723182e-05, 4.487308932618219541e-05, 4.492807172576011128e-05, 4.498297613117024197e-05, 4.503780246012342476e-05, 4.509255063047292041e-05, 4.514722056020127405e-05, 4.520181216741816024e-05, 4.525632537038320552e-05, 4.531076008748069933e-05, 4.536511623723034798e-05, 4.541939373829677491e-05, 4.547359250946230732e-05, 4.552771246966253789e-05, 4.558175353795810170e-05, 4.563571563354566735e-05, 4.568959867576502488e-05, 4.574340258408665812e-05, 4.579712727810984058e-05, 4.585077267758474638e-05, 4.590433870238804214e-05, 4.595782527253249576e-05, 4.601123230817747280e-05, 4.606455972960134357e-05, 4.611780745723675359e-05, 4.617097541164317967e-05, 4.622406351351949995e-05, 4.627707168369912170e-05, 4.632999984316250392e-05, 4.638284791301056721e-05, 4.643561581449819569e-05, 4.648830346900834483e-05, 4.654091079806146729e-05, 4.659343772332577213e-05, 4.664588416659236954e-05, 4.669825004979807968e-05, 4.675053529502228174e-05, 4.680273982447538076e-05, 4.685486356050644444e-05, 4.690690642561203943e-05, 4.695886834241096261e-05, 4.701074923367715342e-05, 4.706254902231412024e-05, 4.711426763136383761e-05, 4.716590498401700550e-05, 4.721746100358926464e-05, 4.726893561354239266e-05, 4.732032873748264390e-05, 4.737164029914815234e-05, 4.742287022241912988e-05, 4.747401843131582669e-05, 4.752508484999761639e-05, 4.757606940276208808e-05, 4.762697201405352338e-05, 4.767779260844923553e-05, 4.772853111066940852e-05, 4.777918744557430524e-05, 4.782976153816231597e-05, 4.788025331357965514e-05, 4.793066269710599572e-05, 4.798098961416392207e-05, 4.803123399031733074e-05, 4.808139575127086808e-05, 4.813147482286799894e-05, 4.818147113110040540e-05, 4.823138460209419707e-05, 4.828121516211896413e-05, 4.833096273758593427e-05, 4.838062725504595327e-05, 4.843020864119828065e-05, 4.847970682287702359e-05, 4.852912172706073208e-05, 4.857845328086991208e-05, 4.862770141156744561e-05, 4.867686604655594123e-05, 4.872594711338761389e-05, 4.877494453974976331e-05, 4.882385825347495200e-05, 4.887268818253838958e-05, 4.892143425505824451e-05, 4.897009639929299457e-05, 4.901867454365094748e-05, 4.906716861667715599e-05, 4.911557854706152224e-05, 4.916390426363800495e-05, 4.921214569538096705e-05, 4.926030277141561108e-05, 4.930837542100612752e-05, 4.935636357355349251e-05, 4.940426715861635906e-05, 4.945208610588800423e-05, 4.949982034520594460e-05, 4.954746980655829922e-05, 4.959503442007102313e-05, 4.964251411601655384e-05, 4.968990882481180558e-05, 4.973721847701799312e-05, 4.978444300333911387e-05, 4.983158233463227493e-05, 4.987863640188457923e-05, 4.992560513624279880e-05, 4.997248846899072849e-05, 5.001928633155701257e-05, 5.006599865552133823e-05, 5.011262537260553155e-05, 5.015916641466952564e-05, 5.020562171373235352e-05, 5.025199120194944082e-05, 5.029827481162245172e-05, 5.034447247520729851e-05, 5.039058412529053303e-05, 5.043660969462011097e-05, 5.048254911608130222e-05, 5.052840232270565586e-05, 5.057416924767759348e-05, 5.061984982432321479e-05, 5.066544398610927443e-05, 5.071095166666152523e-05, 5.075637279974390165e-05, 5.080170731926760664e-05, 5.084695515929828100e-05, 5.089211625403672486e-05, 5.093719053783665832e-05, 5.098217794520320352e-05, 5.102707841078272703e-05, 5.107189186936856581e-05, 5.111661825591011418e-05, 5.116125750548955410e-05, 5.120580955335131163e-05, 5.125027433487908536e-05, 5.129465178560447939e-05, 5.133894184121552109e-05, 5.138314443753532943e-05, 5.142725951054169834e-05, 5.147128699636458957e-05, 5.151522683127594788e-05, 5.155907895169813755e-05, 5.160284329420207890e-05, 5.164651979550529667e-05, 5.169010839247953663e-05, 5.173360902213986926e-05, 5.177702162165149320e-05, 5.182034612832918629e-05, 5.186358247963577422e-05, 5.190673061318225242e-05, 5.194979046673398640e-05, 5.199276197819986971e-05, 5.203564508564002854e-05, 5.207843972726390407e-05, 5.212114584143095038e-05, 5.216376336664767325e-05, 5.220629224157624280e-05, 5.224873240502291282e-05, 5.229108379594579997e-05, 5.233334635345253237e-05, 5.237552001679915864e-05, 5.241760472539772379e-05, 5.245960041880449879e-05, 5.250150703672773944e-05, 5.254332451902637177e-05, 5.258505280570987004e-05, 5.262669183693588509e-05, 5.266824155301890435e-05, 5.270970189441794620e-05, 5.275107280174503026e-05, 5.279235421576295481e-05, 5.283354607738537806e-05, 5.287464832767494117e-05, 5.291566090785163013e-05, 5.295658375928040911e-05, 5.299741682347964330e-05, 5.303816004211899833e-05, 5.307881335701748190e-05, 5.311937671015180568e-05, 5.315985004364616673e-05, 5.320023329977064828e-05, 5.324052642095851955e-05, 5.328072934978750612e-05, 5.332084202898725744e-05, 5.336086440144476099e-05, 5.340079641019372393e-05, 5.344063799842178300e-05, 5.348038910946878341e-05, 5.352004968682686685e-05, 5.355961967413910954e-05, 5.359909901520777567e-05, 5.363848765397524900e-05, 5.367778553454928124e-05, 5.371699260118277845e-05, 5.375610879828190541e-05, 5.379513407041089005e-05, 5.383406836228316685e-05, 5.387291161875961499e-05, 5.391166378486568202e-05, 5.395032480577201044e-05, 5.398889462680276583e-05, 5.402737319344304322e-05, 5.406576045131789460e-05, 5.410405634621931877e-05, 5.414226082408478733e-05, 5.418037383100620297e-05, 5.421839531323393804e-05, 5.425632521716884540e-05, 5.429416348935994769e-05, 5.433191007652124921e-05, 5.436956492551358239e-05, 5.440712798335138394e-05, 5.444459919721086037e-05, 5.448197851441139382e-05, 5.451926588243218464e-05, 5.455646124890998805e-05, 5.459356456163105722e-05, 5.463057576853783142e-05, 5.466749481772702511e-05, 5.470432165744834043e-05, 5.474105623611159589e-05, 5.477769850227606047e-05, 5.481424840465553585e-05, 5.485070589212602034e-05, 5.488707091370796865e-05, 5.492334341858219577e-05, 5.495952335608789830e-05, 5.499561067571417055e-05, 5.503160532710756010e-05, 5.506750726006932341e-05, 5.510331642455484983e-05, 5.513903277067966536e-05, 5.517465624871035248e-05, 5.521018680906999824e-05, 5.524562440233786226e-05, 5.528096897924896332e-05, 5.531622049069184326e-05, 5.535137888771665102e-05, 5.538644412152397535e-05, 5.542141614347204125e-05, 5.545629490507546986e-05, 5.549108035800466864e-05, 5.552577245408469290e-05, 5.556037114530167656e-05, 5.559487638379316234e-05, 5.562928812185493228e-05, 5.566360631193869023e-05, 5.569783090665165532e-05, 5.573196185876188127e-05, 5.576599912118965734e-05, 5.579994264701308520e-05, 5.583379238946746905e-05, 5.586754830194469223e-05, 5.590121033799164509e-05, 5.593477845131750273e-05, 5.596825259578336407e-05, 5.600163272540900779e-05, 5.603491879437102888e-05, 5.606811075700369242e-05, 5.610120856779670420e-05, 5.613421218140156007e-05, 5.616712155262267584e-05, 5.619993663642340457e-05, 5.623265738792449837e-05, 5.626528376240261763e-05, 5.629781571529701917e-05, 5.633025320220103852e-05, 5.636259617886126314e-05, 5.639484460119141709e-05, 5.642699842525679584e-05, 5.645905760728045308e-05, 5.649102210364821512e-05, 5.652289187089937033e-05, 5.655466686573202911e-05, 5.658634704500346954e-05, 5.661793236572694574e-05, 5.664942278507854542e-05, 5.668081826038974281e-05, 5.671211874914598239e-05, 5.674332420899951993e-05, 5.677443459775557858e-05, 5.680544987337802056e-05, 5.683636999399301997e-05, 5.686719491788282859e-05, 5.689792460348381073e-05, 5.692855900940018554e-05, 5.695909809438873977e-05, 5.698954181736481115e-05, 5.701989013740925443e-05, 5.705014301375066049e-05, 5.708030040578752819e-05, 5.711036227307121540e-05, 5.714032857531222727e-05, 5.717019927238449890e-05, 5.719997432431825991e-05, 5.722965369129884858e-05, 5.725923733367901079e-05, 5.728872521196561854e-05, 5.731811728682452173e-05, 5.734741351908701954e-05, 5.737661386973365833e-05, 5.740571829991472310e-05, 5.743472677093387958e-05, 5.746363924425652256e-05, 5.749245568150718064e-05, 5.752117604447028187e-05, 5.754980029508875115e-05, 5.757832839546941759e-05, 5.760676030787468659e-05, 5.763509599472678170e-05, 5.766333541861376195e-05, 5.769147854227538663e-05, 5.771952532861515661e-05, 5.774747574069958260e-05, 5.777532974175162567e-05, 5.780308729515522379e-05, 5.783074836445504792e-05, 5.785831291335416418e-05, 5.788578090572040353e-05, 5.791315230557780337e-05, 5.794042707711068683e-05, 5.796760518466928709e-05, 5.799468659275649297e-05, 5.802167126603949738e-05, 5.804855916934862498e-05, 5.807535026767117258e-05, 5.810204452615609156e-05, 5.812864191011333728e-05, 5.815514238501343547e-05, 5.818154591648639121e-05, 5.820785247032717773e-05, 5.823406201248744902e-05, 5.826017450908110314e-05, 5.828618992638322514e-05, 5.831210823082838622e-05, 5.833792938901594951e-05, 5.836365336770308379e-05, 5.838928013380869367e-05, 5.841480965441312150e-05, 5.844024189675783561e-05, 5.846557682824441387e-05, 5.849081441643918546e-05, 5.851595462906645460e-05, 5.854099743401277635e-05, 5.856594279932625190e-05, 5.859079069321507845e-05, 5.861554108405278048e-05, 5.864019394037015952e-05, 5.866474923086167746e-05, 5.868920692438250202e-05, 5.871356698994987562e-05, 5.873782939674152969e-05, 5.876199411410001471e-05, 5.878606111152770615e-05, 5.881003035868502223e-05, 5.883390182540109662e-05, 5.885767548166236714e-05, 5.888135129761672289e-05, 5.890492924357811885e-05, 5.892840929001830208e-05, 5.895179140757254442e-05, 5.897507556703784681e-05, 5.899826173937226841e-05, 5.902134989569921599e-05, 5.904434000730204325e-05, 5.906723204562257359e-05, 5.909002598227190147e-05, 5.911272178901845942e-05, 5.913531943779305955e-05, 5.915781890069220044e-05, 5.918022014997110104e-05, 5.920252315804853222e-05, 5.922472789750524467e-05, 5.924683434108520214e-05, 5.926884246169286419e-05, 5.929075223239965752e-05, 5.931256362643213105e-05, 5.933427661718655878e-05, 5.935589117821738625e-05, 5.937740728324210945e-05, 5.939882490614345001e-05, 5.942014402096489642e-05, 5.944136460190919968e-05, 5.946248662334808371e-05, 5.948351005981206060e-05, 5.950443488599380522e-05, 5.952526107675340002e-05, 5.954598860710615810e-05, 5.956661745223736158e-05, 5.958714758749139248e-05, 5.960757898837598141e-05, 5.962791163056170617e-05, 5.964814548988264900e-05, 5.966828054233405882e-05, 5.968831676407757567e-05, 5.970825413143456293e-05, 5.972809262088961060e-05, 5.974783220909420805e-05, 5.976747287285666773e-05, 5.978701458915153738e-05, 5.980645733511864457e-05, 5.982580108805710654e-05, 5.984504582543144231e-05, 5.986419152486813715e-05, 5.988323816415638801e-05, 5.990218572125157289e-05, 5.992103417426903705e-05, 5.993978350148767089e-05, 5.995843368135323707e-05, 5.997698469246905313e-05, 5.999543651360476681e-05, 6.001378912369512950e-05, 6.003204250183495470e-05, 6.005019662728433577e-05, 6.006825147946554238e-05, 6.008620703796508050e-05, 6.010406328253163242e-05, 6.012182019307985145e-05, 6.013947774968583538e-05, 6.015703593258920002e-05, 6.017449472219325537e-05, 6.019185409906414506e-05, 6.020911404393407859e-05, 6.022627453769605944e-05, 6.024333556140732738e-05, 6.026029709628925684e-05, 6.027715912372634722e-05, 6.029392162526579606e-05, 6.031058458262138851e-05, 6.032714797766715483e-05, 6.034361179244258130e-05, 6.035997600915001492e-05, 6.037624061015517163e-05, 6.039240557798986037e-05, 6.040847089534657561e-05, 6.042443654508291548e-05, 6.044030251021989449e-05, 6.045606877394241787e-05, 6.047173531959827188e-05, 6.048730213070135610e-05, 6.050276919092785488e-05, 6.051813648411521405e-05, 6.053340399426931706e-05, 6.054857170555680063e-05, 6.056363960230844970e-05, 6.057860766902064078e-05, 6.059347589035155398e-05, 6.060824425112403262e-05, 6.062291273632490561e-05, 6.063748133110336111e-05, 6.065195002077547313e-05, 6.066631879081955974e-05, 6.068058762687560711e-05, 6.069475651475123262e-05, 6.070882544041637227e-05, 6.072279439000359238e-05, 6.073666334981231798e-05, 6.075043230630343893e-05, 6.076410124610264379e-05, 6.077767015599926115e-05, 6.079113902294685585e-05, 6.080450783406233460e-05, 6.081777657662914432e-05, 6.083094523808987251e-05, 6.084401380605580171e-05, 6.085698226829986903e-05, 6.086985061275843474e-05, 6.088261882753509048e-05, 6.089528690089273110e-05, 6.090785482126100851e-05, 6.092032257723450889e-05, 6.093269015756983887e-05, 6.094495755118769907e-05, 6.095712474717498476e-05, 6.096919173477895827e-05, 6.098115850341481129e-05, 6.099302504265898347e-05, 6.100479134225279452e-05, 6.101645739210306081e-05, 6.102802318227744692e-05, 6.103948870300945288e-05, 6.105085394469813643e-05, 6.106211889790407431e-05, 6.107328355335202535e-05, 6.108434790193413566e-05, 6.109531193470148181e-05, 6.110617564287224306e-05, 6.111693901782916697e-05, 6.112760205111733331e-05, 6.113816473444629528e-05, 6.114862705969005248e-05, 6.115898901888570916e-05, 6.116925060423645578e-05, 6.117941180810740841e-05, 6.118947262302802106e-05, 6.119943304169352225e-05, 6.120929305696033425e-05, 6.121905266185043702e-05, 6.122871184955056857e-05, 6.123827061341040898e-05, 6.124772894694385426e-05, 6.125708684382855562e-05, 6.126634429790610921e-05, 6.127550130318334357e-05, 6.128455785382956849e-05, 6.129351394417872987e-05, 6.130236956872851524e-05, 6.131112472214089585e-05, 6.131977939924082566e-05, 6.132833359501926353e-05, 6.133678730462899904e-05, 6.134514052338799997e-05, 6.135339324677740655e-05, 6.136154547044272403e-05, 6.136959719019307734e-05, 6.137754840200230881e-05, 6.138539910200721636e-05, 6.139314928650884101e-05, 6.140079895197214155e-05, 6.140834809502539833e-05, 6.141579671246201564e-05, 6.142314480123828562e-05, 6.143039235847439113e-05, 6.143753938145467676e-05, 6.144458586762706614e-05, 6.145153181460287213e-05, 6.145837722015854516e-05, 6.146512208223320665e-05, 6.147176639893003132e-05, 6.147831016851604399e-05, 6.148475338942182135e-05, 6.149109606024126160e-05, 6.149733817973380707e-05, 6.150347974682066304e-05, 6.150952076058735919e-05, 6.151546122028342433e-05, 6.152130112532147837e-05, 6.152704047527870958e-05, 6.153267926989569548e-05, 6.153821750907503406e-05, 6.154365519288550440e-05, 6.154899232155796023e-05, 6.155422889548664458e-05, 6.155936491523061275e-05, 6.156440038151174009e-05, 6.156933529521493886e-05, 6.157416965738964900e-05, 6.157890346924772395e-05, 6.158353673216605980e-05, 6.158806944768393903e-05, 6.159250161750331510e-05, 6.159683324349159075e-05, 6.160106432767820269e-05, 6.160519487225596337e-05, 6.160922487958244331e-05, 6.161315435217684048e-05, 6.161698329272235195e-05, 6.162071170406606554e-05, 6.162433958921772646e-05, 6.162786695135068606e-05, 6.163129379380176626e-05, 6.163462012006985010e-05, 6.163784593381887685e-05, 6.164097123887476559e-05, 6.164399603922639096e-05, 6.164692033902773808e-05, 6.164974414259317265e-05, 6.165246745440198107e-05, 6.165509027909622916e-05, 6.165761262148122292e-05, 6.166003448652445144e-05, 6.166235587935798570e-05, 6.166457680527491427e-05, 6.166669726973315153e-05, 6.166871727835272722e-05, 6.167063683691658598e-05, 6.167245595137069581e-05, 6.167417462782429202e-05, 6.167579287254846773e-05, 6.167731069197836941e-05, 6.167872809271124530e-05, 6.168004508150733991e-05, 6.168126166529011079e-05, 6.168237785114469719e-05, 6.168339364631945140e-05, 6.168430905822595237e-05, 6.168512409443789439e-05, 6.168583876269171046e-05, 6.168645307088650460e-05, 6.168696702708376719e-05, 6.168738063950787644e-05, 6.168769391654558339e-05, 6.168790686674614744e-05, 6.168801949882095684e-05, 6.168803182164423349e-05, 6.168794384425265343e-05, 6.168775557584534682e-05, 6.168746702578328811e-05, 6.168707820359020406e-05, 6.168658911895196384e-05, 6.168599978171671462e-05, 6.168531020189481373e-05, 6.168452038965904554e-05, 6.168363035534405229e-05, 6.168264010944678123e-05, 6.168154966262621368e-05, 6.168035902570327006e-05, 6.167906820966148759e-05, 6.167767722564561079e-05, 6.167618608496285189e-05, 6.167459479908249777e-05, 6.167290337963531369e-05, 6.167111183841420734e-05, 6.166922018737380870e-05, 6.166722843863080891e-05, 6.166513660446317413e-05, 6.166294469731120273e-05, 6.166065272977627840e-05, 6.165826071462225254e-05, 6.165576866477388569e-05, 6.165317659331782333e-05, 6.165048451350235194e-05, 6.164769243873710082e-05, 6.164480038259312344e-05, 6.164180835880350728e-05, 6.163871638126201856e-05, 6.163552446402421360e-05, 6.163223262130689667e-05, 6.162884086748810647e-05, 6.162534921710750911e-05, 6.162175768486525976e-05, 6.161806628562331719e-05, 6.161427503440487460e-05, 6.161038394639383104e-05, 6.160639303693526579e-05, 6.160230232153546541e-05, 6.159811181586139525e-05, 6.159382153574153966e-05, 6.158943149716447900e-05, 6.158494171628042108e-05, 6.158035220940011691e-05, 6.157566299299492855e-05, 6.157087408369727626e-05, 6.156598549830020486e-05, 6.156099725375715332e-05, 6.155590936718255109e-05, 6.155072185585123534e-05, 6.154543473719860001e-05, 6.154004802882067715e-05, 6.153456174847358128e-05, 6.152897591407407855e-05, 6.152329054369968164e-05, 6.151750565558747070e-05, 6.151162126813513686e-05, 6.150563739990107714e-05, 6.149955406960297139e-05, 6.149337129611950350e-05, 6.148708909848891123e-05, 6.148070749590939287e-05, 6.147422650773990674e-05, 6.146764615349849074e-05, 6.146096645286369892e-05, 6.145418742567351723e-05, 6.144730909192624448e-05, 6.144033147177959786e-05, 6.143325458555140410e-05, 6.142607845371824424e-05, 6.141880309691740520e-05, 6.141142853594519925e-05, 6.140395479175742477e-05, 6.139638188547005750e-05, 6.138870983835782746e-05, 6.138093867185461200e-05, 6.137306840755442513e-05, 6.136509906721017069e-05, 6.135703067273391340e-05, 6.134886324619728544e-05, 6.134059680983042933e-05, 6.133223138602304151e-05, 6.132376699732392509e-05, 6.131520366644066457e-05, 6.130654141623959877e-05, 6.129778026974667460e-05, 6.128892025014557687e-05, 6.127996138077970690e-05, 6.127090368515090860e-05, 6.126174718691949558e-05, 6.125249190990463065e-05, 6.124313787808440706e-05, 6.123368511559429005e-05, 6.122413364672912254e-05, 6.121448349594239336e-05, 6.120473468784512591e-05, 6.119488724720749092e-05, 6.118494119895701749e-05, 6.117489656817992128e-05, 6.116475338012071147e-05, 6.115451166018155379e-05, 6.114417143392301588e-05, 6.113373272706390472e-05, 6.112319556547985712e-05, 6.111255997520519644e-05, 6.110182598243206519e-05, 6.109099361351008628e-05, 6.108006289494709480e-05, 6.106903385340711873e-05, 6.105790651571357732e-05, 6.104668090884624531e-05, 6.103535705994286571e-05, 6.102393499629841118e-05, 6.101241474536551768e-05, 6.100079633475302086e-05, 6.098907979222767037e-05, 6.097726514571478047e-05, 6.096535242329404901e-05, 6.095334165320423307e-05, 6.094123286384091283e-05, 6.092902608375449250e-05, 6.091672134165584501e-05, 6.090431866640924434e-05, 6.089181808703767135e-05, 6.087921963272069955e-05, 6.086652333279305181e-05, 6.085372921674706687e-05, 6.084083731423280101e-05, 6.082784765505434176e-05, 6.081476026917339932e-05, 6.080157518670854761e-05, 6.078829243793232404e-05, 6.077491205327720616e-05, 6.076143406332776476e-05, 6.074785849882732494e-05, 6.073418539067434080e-05, 6.072041476992337799e-05, 6.070654666778317572e-05, 6.069258111562213551e-05, 6.067851814496024392e-05, 6.066435778747542864e-05, 6.065010007500139011e-05, 6.063574503952482326e-05, 6.062129271319156355e-05, 6.060674312830073910e-05, 6.059209631730628852e-05, 6.057735231281867537e-05, 6.056251114760366158e-05, 6.054757285457991548e-05, 6.053253746682507656e-05, 6.051740501756769169e-05, 6.050217554019374065e-05, 6.048684906824341746e-05, 6.047142563541164532e-05, 6.045590527554820540e-05, 6.044028802265795364e-05, 6.042457391089842199e-05, 6.040876297458414843e-05, 6.039285524818247566e-05, 6.037685076631594318e-05, 6.036074956376091165e-05, 6.034455167544924343e-05, 6.032825713646397254e-05, 6.031186598204529490e-05, 6.029537824758599430e-05, 6.027879396863303489e-05, 6.026211318088817100e-05, 6.024533592020445735e-05, 6.022846222259124321e-05, 6.021149212421062836e-05, 6.019442566137818819e-05, 6.017726287056293980e-05, 6.016000378838841942e-05, 6.014264845162909778e-05, 6.012519689721491342e-05, 6.010764916222841313e-05, 6.009000528390530079e-05, 6.007226529963481009e-05, 6.005442924695754289e-05, 6.003649716356854567e-05, 6.001846908731529016e-05, 6.000034505619831712e-05, 5.998212510837006402e-05, 5.996380928213714868e-05, 5.994539761595650676e-05, 5.992689014843863082e-05, 5.990828691834723153e-05, 5.988958796459706925e-05, 5.987079332625602079e-05, 5.985190304254411041e-05, 5.983291715283191737e-05, 5.981383569664388281e-05, 5.979465871365551786e-05, 5.977538624369442013e-05, 5.975601832674062603e-05, 5.973655500292368348e-05, 5.971699631252659564e-05, 5.969734229598378129e-05, 5.967759299388085799e-05, 5.965774844695471659e-05, 5.963780869609408368e-05, 5.961777378233719057e-05, 5.959764374687516139e-05, 5.957741863104981081e-05, 5.955709847635338658e-05, 5.953668332442961302e-05, 5.951617321707370462e-05, 5.949556819622806307e-05, 5.947486830399165565e-05, 5.945407358260813640e-05, 5.943318407447512964e-05, 5.941219982214044200e-05, 5.939112086829994149e-05, 5.936994725580120309e-05, 5.934867902764453200e-05, 5.932731622697529967e-05, 5.930585889709204820e-05, 5.928430708144325807e-05, 5.926266082362411589e-05, 5.924092016738520831e-05, 5.921908515662090752e-05, 5.919715583537844464e-05, 5.917513224785379659e-05, 5.915301443839322425e-05, 5.913080245148854262e-05, 5.910849633178705487e-05, 5.908609612407923984e-05, 5.906360187330800840e-05, 5.904101362456508497e-05, 5.901833142308751770e-05, 5.899555531426681969e-05, 5.897268534364035630e-05, 5.894972155689189410e-05, 5.892666399985687275e-05, 5.890351271851921341e-05, 5.888026775900713098e-05, 5.885692916760401682e-05, 5.883349699073456767e-05, 5.880997127497543126e-05, 5.878635206705109980e-05, 5.876263941383055579e-05, 5.873883336233576941e-05, 5.871493395973413626e-05, 5.869094125333806396e-05, 5.866685529061125377e-05, 5.864267611916316439e-05, 5.861840378675085508e-05, 5.859403834127862654e-05, 5.856957983079918642e-05, 5.854502830350897369e-05, 5.852038380775468419e-05, 5.849564639202873732e-05, 5.847081610497023146e-05, 5.844589299536660418e-05, 5.842087711214807573e-05, 5.839576850439512319e-05, 5.837056722133289010e-05, 5.834527331233363271e-05, 5.831988682691567638e-05, 5.829440781474423553e-05, 5.826883632562740889e-05, 5.824317240952300319e-05, 5.821741611653299015e-05, 5.819156749690514635e-05, 5.816562660103480152e-05, 5.813959347945876023e-05, 5.811346818286289127e-05, 5.808725076207734366e-05, 5.806094126807775956e-05, 5.803453975198449502e-05, 5.800804626506454444e-05, 5.798146085872682426e-05, 5.795478358452782442e-05, 5.792801449416800334e-05, 5.790115363949287214e-05, 5.787420107249194431e-05, 5.784715684530096513e-05, 5.782002101019658547e-05, 5.779279361960269767e-05, 5.776547472608712188e-05, 5.773806438236115887e-05, 5.771056264128151446e-05, 5.768296955584523768e-05, 5.765528517919591426e-05, 5.762750956462381569e-05, 5.759964276555608722e-05, 5.757168483556838269e-05, 5.754363582837923347e-05, 5.751549579784750733e-05, 5.748726479797840546e-05, 5.745894288291944415e-05, 5.743053010696091553e-05, 5.740202652453613158e-05, 5.737343219022233211e-05, 5.734474715873493850e-05, 5.731597148494033372e-05, 5.728710522383874550e-05, 5.725814843057793439e-05, 5.722910116044769142e-05, 5.719996346887672102e-05, 5.717073541143791296e-05, 5.714141704385036844e-05, 5.711200842196715541e-05, 5.708250960178844771e-05, 5.705292063945596178e-05, 5.702324159124777281e-05, 5.699347251359288371e-05, 5.696361346305227867e-05, 5.693366449633337017e-05, 5.690362567028519459e-05, 5.687349704189330969e-05, 5.684327866828742471e-05, 5.681297060674152228e-05, 5.678257291466310455e-05, 5.675208564960474670e-05, 5.672150886926014636e-05, 5.669084263145849256e-05, 5.666008699417608024e-05, 5.662924201552654564e-05, 5.659830775376043942e-05, 5.656728426727266018e-05, 5.653617161459733166e-05, 5.650496985440399444e-05, 5.647367904551028433e-05, 5.644229924686465971e-05, 5.641083051756039447e-05, 5.637927291682968945e-05, 5.634762650403873934e-05, 5.631589133870142073e-05, 5.628406748046594959e-05, 5.625215498911705656e-05, 5.622015392458255302e-05, 5.618806434692742230e-05, 5.615588631635475475e-05, 5.612361989320836336e-05, 5.609126513796568230e-05, 5.605882211124685381e-05, 5.602629087380829083e-05, 5.599367148654495375e-05, 5.596096401048973384e-05, 5.592816850681443574e-05, 5.589528503682453269e-05, 5.586231366196710827e-05, 5.582925444382561838e-05, 5.579610744412044686e-05, 5.576287272470965091e-05, 5.572955034758965225e-05, 5.569614037488969415e-05, 5.566264286888018299e-05, 5.562905789196673874e-05, 5.559538550669176698e-05, 5.556162577573569227e-05, 5.552777876191115084e-05, 5.549384452817127117e-05, 5.545982313760425302e-05, 5.542571465343389597e-05, 5.539151913902067682e-05, 5.535723665786134980e-05, 5.532286727358543650e-05, 5.528841104996138543e-05, 5.525386805089218785e-05, 5.521923834041622475e-05, 5.518452198270677896e-05, 5.514971904207456951e-05, 5.511482958296014186e-05, 5.507985366994409327e-05, 5.504479136773953764e-05, 5.500964274119514121e-05, 5.497440785529523783e-05, 5.493908677515438077e-05, 5.490367956602415294e-05, 5.486818629329496931e-05, 5.483260702248244988e-05, 5.479694181924250364e-05, 5.476119074936412539e-05, 5.472535387876635321e-05, 5.468943127350614925e-05, 5.465342299977234852e-05, 5.461732912388710901e-05, 5.458114971230630473e-05, 5.454488483161990518e-05, 5.450853454854512450e-05, 5.447209892994314538e-05, 5.443557804279673017e-05, 5.439897195422758856e-05, 5.436228073149008234e-05, 5.432550444196607549e-05, 5.428864315317354002e-05, 5.425169693276650853e-05, 5.421466584852195538e-05, 5.417754996835557181e-05, 5.414034936031414266e-05, 5.410306409257049128e-05, 5.406569423343957992e-05, 5.402823985135706285e-05, 5.399070101489604408e-05, 5.395307779276097194e-05, 5.391537025378267885e-05, 5.387757846692616724e-05, 5.383970250129168023e-05, 5.380174242610100675e-05, 5.376369831071291792e-05, 5.372557022461635010e-05, 5.368735823742442823e-05, 5.364906241888980730e-05, 5.361068283889101817e-05, 5.357221956743271829e-05, 5.353367267465463638e-05, 5.349504223082428116e-05, 5.345632830633898099e-05, 5.341753097172711719e-05, 5.337865029764144939e-05, 5.333968635486887336e-05, 5.330063921432540657e-05, 5.326150894704943903e-05, 5.322229562421791502e-05, 5.318299931713173700e-05, 5.314362009721719542e-05, 5.310415803603339550e-05, 5.306461320526676166e-05, 5.302498567673157286e-05, 5.298527552237189387e-05, 5.294548281425475827e-05, 5.290560762457995346e-05, 5.286565002567314946e-05, 5.282561008998793182e-05, 5.278548789010471744e-05, 5.274528349873357344e-05, 5.270499698870626865e-05, 5.266462843298663451e-05, 5.262417790466380232e-05, 5.258364547695366020e-05, 5.254303122319859553e-05, 5.250233521686951434e-05, 5.246155753155838734e-05, 5.242069824098837373e-05, 5.237975741900728887e-05, 5.233873513958883750e-05, 5.229763147683444343e-05, 5.225644650496555837e-05, 5.221518029833503260e-05, 5.217383293141903761e-05, 5.213240447881929549e-05, 5.209089501526246232e-05, 5.204930461560219488e-05, 5.200763335481179848e-05, 5.196588130799447260e-05, 5.192404855037639235e-05, 5.188213515730814504e-05, 5.184014120426516388e-05, 5.179806676684827680e-05, 5.175591192077747237e-05, 5.171367674190182695e-05, 5.167136130619287755e-05, 5.162896568974519778e-05, 5.158648996877941332e-05, 5.154393421963398230e-05, 5.150129851877397732e-05, 5.145858294279344363e-05, 5.141578756839828901e-05, 5.137291247242481689e-05, 5.132995773183199464e-05, 5.128692342369593765e-05, 5.124380962522059554e-05, 5.120061641373086745e-05, 5.115734386667338131e-05, 5.111399206161877071e-05, 5.107056107625442421e-05, 5.102705098839286090e-05, 5.098346187597392582e-05, 5.093979381704780195e-05, 5.089604688979386849e-05, 5.085222117251211535e-05, 5.080831674361856241e-05, 5.076433368165368242e-05, 5.072027206528446094e-05, 5.067613197328755062e-05, 5.063191348456721466e-05, 5.058761667814839477e-05, 5.054324163316893198e-05, 5.049878842889982090e-05, 5.045425714471856544e-05, 5.040964786013076124e-05, 5.036496065476112386e-05, 5.032019560834854213e-05, 5.027535280075487374e-05, 5.023043231196741858e-05, 5.018543422208085318e-05, 5.014035861131655667e-05, 5.009520556001493326e-05, 5.004997514862714517e-05, 5.000466745773681702e-05, 4.995928256803195501e-05, 4.991382056032732888e-05, 4.986828151555350118e-05, 4.982266551475881270e-05, 4.977697263910987711e-05, 4.973120296989303114e-05, 4.968535658850616911e-05, 4.963943357647037784e-05, 4.959343401542415646e-05, 4.954735798711573213e-05, 4.950120557342138308e-05, 4.945497685632898580e-05, 4.940867191793882145e-05, 4.936229084047363862e-05, 4.931583370627130782e-05, 4.926930059778505868e-05, 4.922269159758699004e-05, 4.917600678835871872e-05, 4.912924625290432216e-05, 4.908241007414294556e-05, 4.903549833510155123e-05, 4.898851111893471206e-05, 4.894144850890620724e-05, 4.889431058839030969e-05, 4.884709744088357002e-05, 4.879980914999426585e-05, 4.875244579944576289e-05, 4.870500747307619641e-05, 4.865749425483952836e-05, 4.860990622879858135e-05, 4.856224347913574519e-05, 4.851450609014597694e-05, 4.846669414623747184e-05, 4.841880773193444151e-05, 4.837084693186866400e-05, 4.832281183079072557e-05, 4.827470251356308860e-05, 4.822651906516097929e-05, 4.817826157067265865e-05, 4.812993011530112343e-05, 4.808152478435579835e-05, 4.803304566326498413e-05, 4.798449283756689248e-05, 4.793586639291215332e-05, 4.788716641506554953e-05, 4.783839298989735683e-05, 4.778954620339582570e-05, 4.774062614165883981e-05, 4.769163289089560324e-05, 4.764256653742650506e-05, 4.759342716768557224e-05, 4.754421486821094905e-05, 4.749492972565606434e-05, 4.744557182679143400e-05, 4.739614125848544353e-05, 4.734663810772506978e-05, 4.729706246160753942e-05, 4.724741440733436584e-05, 4.719769403222239440e-05, 4.714790142369683649e-05, 4.709803666929217753e-05, 4.704809985665484002e-05, 4.699809107353350028e-05, 4.694801040779088595e-05, 4.689785794740507018e-05, 4.684763378044977991e-05, 4.679733799511634409e-05, 4.674697067970424763e-05, 4.669653192261554776e-05, 4.664602181236637330e-05, 4.659544043757920655e-05, 4.654478788698406232e-05, 4.649406424941905717e-05, 4.644326961383194759e-05, 4.639240406926932187e-05, 4.634146770490029673e-05, 4.629046060998588853e-05, 4.623938287390268285e-05, 4.618823458613448605e-05, 4.613701583626481046e-05, 4.608572671398844821e-05, 4.603436730911279257e-05, 4.598293771153844436e-05, 4.593143801128104500e-05, 4.587986829846197272e-05, 4.582822866329944536e-05, 4.577651919613282000e-05, 4.572473998739161869e-05, 4.567289112761907597e-05, 4.562097270746171695e-05, 4.556898481767094299e-05, 4.551692754910275382e-05, 4.546480099272047845e-05, 4.541260523958478689e-05, 4.536034038086756120e-05, 4.530800650784498368e-05, 4.525560371188807723e-05, 4.520313208448535158e-05, 4.515059171722218996e-05, 4.509798270178332237e-05, 4.504530512996331529e-05, 4.499255909365747110e-05, 4.493974468486487748e-05, 4.488686199568911884e-05, 4.483391111833005674e-05, 4.478089214509714528e-05, 4.472780516840170608e-05, 4.467465028074883753e-05, 4.462142757475901064e-05, 4.456813714314795716e-05, 4.451477907872872952e-05, 4.446135347442267162e-05, 4.440786042325054871e-05, 4.435430001833418724e-05, 4.430067235289673910e-05, 4.424697752026468067e-05, 4.419321561385814985e-05, 4.413938672720524396e-05, 4.408549095393186212e-05, 4.403152838776465975e-05, 4.397749912253260025e-05, 4.392340325215750898e-05, 4.386924087066852018e-05, 4.381501207219164158e-05, 4.376071695095274267e-05, 4.370635560127684327e-05, 4.365192811759077652e-05, 4.359743459441318720e-05, 4.354287512636882278e-05, 4.348824980817860627e-05, 4.343355873466213661e-05, 4.337880200073978936e-05, 4.332397970142295204e-05, 4.326909193182840342e-05, 4.321413878716809490e-05, 4.315912036275221334e-05, 4.310403675398817146e-05, 4.304888805638325055e-05, 4.299367436553502560e-05, 4.293839577714253259e-05, 4.288305238700928395e-05, 4.282764429102093397e-05, 4.277217158516957170e-05, 4.271663436554340752e-05, 4.266103272831998325e-05, 4.260536676977995515e-05, 4.254963658629763419e-05, 4.249384227434295123e-05, 4.243798393048399127e-05, 4.238206165137700529e-05, 4.232607553377828904e-05, 4.227002567454658181e-05, 4.221391217062088095e-05, 4.215773511904484321e-05, 4.210149461695664066e-05, 4.204519076158156103e-05, 4.198882365024631235e-05, 4.193239338036977343e-05, 4.187590004946416608e-05, 4.181934375513587509e-05, 4.176272459508709482e-05, 4.170604266710370650e-05, 4.164929806908234939e-05, 4.159249089899490638e-05, 4.153562125491688296e-05, 4.147868923501579275e-05, 4.142169493754215860e-05, 4.136463846085390036e-05, 4.130751990339349207e-05, 4.125033936369073352e-05, 4.119309694037468319e-05, 4.113579273216628568e-05, 4.107842683786813959e-05, 4.102099935639138569e-05, 4.096351038672117512e-05, 4.090596002794380151e-05, 4.084834837923629269e-05, 4.079067553985646306e-05, 4.073294160916765381e-05, 4.067514668661633055e-05, 4.061729087173388577e-05, 4.055937426414943250e-05, 4.050139696358184214e-05, 4.044335906982984434e-05, 4.038526068279674007e-05, 4.032710190246738941e-05, 4.026888282891137605e-05, 4.021060356229425590e-05, 4.015226420286828718e-05, 4.009386485097436162e-05, 4.003540560704443039e-05, 3.997688657159101443e-05, 3.991830784522264756e-05, 3.985966952863589404e-05, 3.980097172260458786e-05, 3.974221452800600268e-05, 3.968339804579691806e-05, 3.962452237701641128e-05, 3.956558762279840019e-05, 3.950659388436126202e-05, 3.944754126300989330e-05, 3.938842986013887444e-05, 3.932925977722093647e-05, 3.927003111582331898e-05, 3.921074397759654185e-05, 3.915139846427712251e-05, 3.909199467768719648e-05, 3.903253271973721432e-05, 3.897301269241528935e-05, 3.891343469780257300e-05, 3.885379883806239920e-05, 3.879410521544343540e-05, 3.873435393227863896e-05, 3.867454509098854369e-05, 3.861467879406963854e-05, 3.855475514411103719e-05, 3.849477424378301943e-05, 3.843473619583958576e-05, 3.837464110312120182e-05, 3.831448906854386147e-05, 3.825428019511476033e-05, 3.819401458592165698e-05, 3.813369234413507532e-05, 3.807331357300893469e-05, 3.801287837588158671e-05, 3.795238685616644363e-05, 3.789183911736695396e-05, 3.783123526306602464e-05, 3.777057539692839957e-05, 3.770985962270073411e-05, 3.764908804421367541e-05, 3.758826076537150827e-05, 3.752737789016746275e-05, 3.746643952267346840e-05, 3.740544576704192970e-05, 3.734439672750889056e-05, 3.728329250838258917e-05, 3.722213321405743071e-05, 3.716091894901530870e-05, 3.709964981780268089e-05, 3.703832592505610901e-05, 3.697694737549184365e-05, 3.691551427389763853e-05, 3.685402672514832915e-05, 3.679248483419538375e-05, 3.673088870606917340e-05, 3.666923844588133689e-05, 3.660753415881394551e-05, 3.654577595013297421e-05, 3.648396392519067337e-05, 3.642209818940099801e-05, 3.636017884826670606e-05, 3.629820600736792687e-05, 3.623617977235169181e-05, 3.617410024895851759e-05, 3.611196754299792361e-05, 3.604978176035092565e-05, 3.598754300698335794e-05, 3.592525138893767396e-05, 3.586290701232186040e-05, 3.580050998333923924e-05, 3.573806040825016147e-05, 3.567555839340139578e-05, 3.561300404521584216e-05, 3.555039747018059896e-05, 3.548773877487464384e-05, 3.542502806594403952e-05, 3.536226545010389202e-05, 3.529945103415302814e-05, 3.523658492496407494e-05, 3.517366722947356644e-05, 3.511069805471132545e-05, 3.504767750776223873e-05, 3.498460569579579468e-05, 3.492148272605234108e-05, 3.485830870584611410e-05, 3.479508374256436414e-05, 3.473180794367035097e-05, 3.466848141669214928e-05, 3.460510426923868818e-05, 3.454167660899155862e-05, 3.447819854369373098e-05, 3.441467018117718861e-05, 3.435109162933740846e-05, 3.428746299613631552e-05, 3.422378438961574048e-05, 3.416005591788644219e-05, 3.409627768913040479e-05, 3.403244981160348048e-05, 3.396857239362428322e-05, 3.390464554359041109e-05, 3.384066936996744842e-05, 3.377664398129111387e-05, 3.371256948616762635e-05, 3.364844599327596151e-05, 3.358427361135653537e-05, 3.352005244922781976e-05, 3.345578261577503946e-05, 3.339146421995286916e-05, 3.332709737078481688e-05, 3.326268217736626643e-05, 3.319821874885300526e-05, 3.313370719447795499e-05, 3.306914762353924526e-05, 3.300454014540339854e-05, 3.293988486950806093e-05, 3.287518190534992015e-05, 3.281043136250185621e-05, 3.274563335060134723e-05, 3.268078797935341037e-05, 3.261589535852984963e-05, 3.255095559797240685e-05, 3.248596880758114036e-05, 3.242093509733096589e-05, 3.235585457726027243e-05, 3.229072735747397157e-05, 3.222555354814267073e-05, 3.216033325950586486e-05, 3.209506660185959006e-05, 3.202975368557473977e-05, 3.196439462108389181e-05, 3.189898951888494715e-05, 3.183353848954365072e-05, 3.176804164368161095e-05, 3.170249909199088911e-05, 3.163691094523641162e-05, 3.157127731422990178e-05, 3.150559830985876018e-05, 3.143987404307395557e-05, 3.137410462488133764e-05, 3.130829016635922144e-05, 3.124243077864563448e-05, 3.117652657294209105e-05, 3.111057766051563193e-05, 3.104458415268733181e-05, 3.097854616084646173e-05, 3.091246379645324694e-05, 3.084633717101262928e-05, 3.078016639610316115e-05, 3.071395158336485563e-05, 3.064769284448791084e-05, 3.058139029124093980e-05, 3.051504403544548494e-05, 3.044865418897774263e-05, 3.038222086378370476e-05, 3.031574417186985832e-05, 3.024922422529150988e-05, 3.018266113618433590e-05, 3.011605501672380981e-05, 3.004940597915711827e-05, 2.998271413579059114e-05, 2.991597959897887305e-05, 2.984920248115287549e-05, 2.978238289479421332e-05, 2.971552095243751551e-05, 2.964861676668461801e-05, 2.958167045019621200e-05, 2.951468211567925023e-05, 2.944765187591976782e-05, 2.938057984374079152e-05, 2.931346613203503855e-05, 2.924631085374998173e-05, 2.917911412189028557e-05, 2.911187604951771135e-05, 2.904459674975437314e-05, 2.897727633577001200e-05, 2.890991492079992593e-05, 2.884251261813588634e-05, 2.877506954111401863e-05, 2.870758580314426546e-05, 2.864006151768365435e-05, 2.857249679823899125e-05, 2.850489175838116185e-05, 2.843724651173382199e-05, 2.836956117197526113e-05, 2.830183585284210899e-05, 2.823407066811639622e-05, 2.816626573164396219e-05, 2.809842115732176301e-05, 2.803053705910110379e-05, 2.796261355098708643e-05, 2.789465074704161821e-05, 2.782664876137141109e-05, 2.775860770814521711e-05, 2.769052770158226469e-05, 2.762240885595466420e-05, 2.755425128558739445e-05, 2.748605510486105380e-05, 2.741782042819968662e-05, 2.734954737008851678e-05, 2.728123604506207226e-05, 2.721288656770627897e-05, 2.714449905266228940e-05, 2.707607361461324513e-05, 2.700761036830310132e-05, 2.693910942852332155e-05, 2.687057091011680118e-05, 2.680199492797668502e-05, 2.673338159705013480e-05, 2.666473103232535612e-05, 2.659604334884960294e-05, 2.652731866171736993e-05, 2.645855708607272011e-05, 2.638975873711233084e-05, 2.632092373007325243e-05, 2.625205218025067553e-05, 2.618314420298589989e-05, 2.611419991366880429e-05, 2.604521942773819891e-05, 2.597620286068409536e-05, 2.590715032803569918e-05, 2.583806194537622951e-05, 2.576893782834605985e-05, 2.569977809261475251e-05, 2.563058285391161268e-05, 2.556135222801317612e-05, 2.549208633073082894e-05, 2.542278527794429921e-05, 2.535344918555843465e-05, 2.528407816953698564e-05, 2.521467234588981162e-05, 2.514523183066378064e-05, 2.507575673995784645e-05, 2.500624718992586413e-05, 2.493670329674869891e-05, 2.486712517666492950e-05, 2.479751294595828142e-05, 2.472786672094503001e-05, 2.465818661800774276e-05, 2.458847275355204682e-05, 2.451872524404034425e-05, 2.444894420597601317e-05, 2.437912975590933700e-05, 2.430928201042235274e-05, 2.423940108616213935e-05, 2.416948709979747676e-05, 2.409954016805282548e-05, 2.402956040769559397e-05, 2.395954793552368387e-05, 2.388950286839604758e-05, 2.381942532320491571e-05, 2.374931541687861605e-05, 2.367917326639662362e-05, 2.360899898878021281e-05, 2.353879270108014493e-05, 2.346855452041017004e-05, 2.339828456390366905e-05, 2.332798294874744693e-05, 2.325764979216919662e-05, 2.318728521142481046e-05, 2.311688932382945620e-05, 2.304646224672895059e-05, 2.297600409750337458e-05, 2.290551499358175745e-05, 2.283499505243305762e-05, 2.276444439155299296e-05, 2.269386312849548269e-05, 2.262325138084422769e-05, 2.255260926621545831e-05, 2.248193690227375690e-05, 2.241123440671880012e-05, 2.234050189728881814e-05, 2.226973949176324762e-05, 2.219894730795009393e-05, 2.212812546370449815e-05, 2.205727407691597053e-05, 2.198639326551145683e-05, 2.191548314745508076e-05, 2.184454384075102391e-05, 2.177357546343078638e-05, 2.170257813357205867e-05, 2.163155196928549443e-05, 2.156049708871812565e-05, 2.148941361005609694e-05, 2.141830165151185835e-05, 2.134716133134288482e-05, 2.127599276783915025e-05, 2.120479607932548226e-05, 2.113357138416189419e-05, 2.106231880074639732e-05, 2.099103844750210894e-05, 2.091973044289603963e-05, 2.084839490542638092e-05, 2.077703195362517178e-05, 2.070564170605843754e-05, 2.063422428132893766e-05, 2.056277979806342293e-05, 2.049130837493131770e-05, 2.041981013063208885e-05, 2.034828518389788181e-05, 2.027673365349673249e-05, 2.020515565821974659e-05, 2.013355131689966655e-05, 2.006192074839816268e-05, 1.999026407160886217e-05, 1.991858140545698652e-05, 1.984687286890231278e-05, 1.977513858092667476e-05, 1.970337866055233344e-05, 1.963159322682927490e-05, 1.955978239883817150e-05, 1.948794629569024643e-05, 1.941608503653010948e-05, 1.934419874051992777e-05, 1.927228752687391351e-05, 1.920035151481375312e-05, 1.912839082360340675e-05, 1.905640557253604700e-05, 1.898439588092460948e-05, 1.891236186811710710e-05, 1.884030365349997419e-05, 1.876822135646908442e-05, 1.869611509646135189e-05, 1.862398499294172074e-05, 1.855183116539052736e-05, 1.847965373333799500e-05, 1.840745281631963920e-05, 1.833522853391116888e-05, 1.826298100571212168e-05, 1.819071035135228452e-05, 1.811841669047530175e-05, 1.804610014277389820e-05, 1.797376082794472217e-05, 1.790139886572327365e-05, 1.782901437587121918e-05, 1.775660747816310020e-05, 1.768417829241816794e-05, 1.761172693847158768e-05, 1.753925353617717976e-05, 1.746675820542347931e-05, 1.739424106612369385e-05, 1.732170223820281819e-05, 1.724914184163273890e-05, 1.717655999638700612e-05, 1.710395682247614467e-05, 1.703133243993430480e-05, 1.695868696880647542e-05, 1.688602052918033587e-05, 1.681333324115705369e-05, 1.674062522485449985e-05, 1.666789660042284442e-05, 1.659514748803186119e-05, 1.652237800787357720e-05, 1.644958828016224563e-05, 1.637677842513736803e-05, 1.630394856305072453e-05, 1.623109881418522202e-05, 1.615822929884210736e-05, 1.608534013734369821e-05, 1.601243145003676096e-05, 1.593950335727902602e-05, 1.586655597945870681e-05, 1.579358943698114037e-05, 1.572060385027186378e-05, 1.564759933977654980e-05, 1.557457602596385964e-05, 1.550153402931249696e-05, 1.542847347033029316e-05, 1.535539446954101067e-05, 1.528229714748749723e-05, 1.520918162473476915e-05, 1.513604802185672473e-05, 1.506289645945537697e-05, 1.498972705814790416e-05, 1.491653993856947387e-05, 1.484333522137307694e-05, 1.477011302723271233e-05, 1.469687347682994975e-05, 1.462361669087354363e-05, 1.455034279008600079e-05, 1.447705189520665184e-05, 1.440374412699157830e-05, 1.433041960621660942e-05, 1.425707845366401022e-05, 1.418372079014196999e-05, 1.411034673647123953e-05, 1.403695641348826684e-05, 1.396354994204828037e-05, 1.389012744301203118e-05, 1.381668903726184429e-05, 1.374323484570475435e-05, 1.366976498924286120e-05, 1.359627958880587458e-05, 1.352277876533779366e-05, 1.344926263978680872e-05, 1.337573133312503196e-05, 1.330218496633488398e-05, 1.322862366041223625e-05, 1.315504753636635181e-05, 1.308145671522290416e-05, 1.300785131800727709e-05, 1.293423146578054497e-05, 1.286059727959341956e-05, 1.278694888052195080e-05, 1.271328638965438078e-05, 1.263960992808098957e-05, 1.256591961691037179e-05, 1.249221557727239614e-05, 1.241849793028872525e-05, 1.234476679710512324e-05, 1.227102229887835888e-05, 1.219726455676287160e-05, 1.212349369194646205e-05, 1.204970982560438127e-05, 1.197591307893514828e-05, 1.190210357314719578e-05, 1.182828142944888869e-05, 1.175444676906456868e-05, 1.168059971323793213e-05, 1.160674038320207902e-05, 1.153286890021214066e-05, 1.145898538553205583e-05, 1.138508996042112833e-05, 1.131118274616673430e-05, 1.123726386405453554e-05, 1.116333343537168289e-05, 1.108939158142281844e-05, 1.101543842352016353e-05, 1.094147408297026267e-05, 1.086749868110968601e-05, 1.079351233925904052e-05, 1.071951517875888077e-05, 1.064550732095617680e-05, 1.057148888719136798e-05, 1.049745999883059439e-05, 1.042342077723615734e-05, 1.034937134376961105e-05, 1.027531181980788510e-05, 1.020124232673004357e-05, 1.012716298592030223e-05, 1.005307391877121670e-05, 9.978975246670189275e-06, 9.904867091019113273e-06, 9.830749573220974697e-06, 9.756622814682974380e-06, 9.682486936816250166e-06, 9.608342061039104105e-06, 9.534188308763492272e-06, 9.460025801414730150e-06, 9.385854660417980753e-06, 9.311675007201393735e-06, 9.237486963196005438e-06, 9.163290649838673013e-06, 9.089086188558833605e-06, 9.014873700798009822e-06, 8.940653307996457113e-06, 8.866425131596230024e-06, 8.792189293044267093e-06, 8.717945913779141562e-06, 8.643695115250436405e-06, 8.569437018905508595e-06, 8.495171746192528255e-06, 8.420899418560324502e-06, 8.346620157461431374e-06, 8.272334084338743673e-06, 8.198041320645108840e-06, 8.123741987829830328e-06, 8.049436207341947318e-06, 7.975124100629894208e-06, 7.900805789144654966e-06, 7.826481394326386784e-06, 7.752151037624018727e-06, 7.677814840481748336e-06, 7.603472924342321334e-06, 7.529125410649969992e-06, 7.454772420837168064e-06, 7.380414076340740516e-06, 7.306050498605244876e-06, 7.231681809052727926e-06, 7.157308129115840451e-06, 7.082929580224231354e-06, 7.008546283794550969e-06, 6.934158361250052251e-06, 6.859765934007147518e-06, 6.785369123478534849e-06, 6.710968051076301612e-06, 6.636562838198548118e-06, 6.562153606245585436e-06, 6.487740476623276090e-06, 6.413323570712811072e-06, 6.338903009903778861e-06, 6.264478915580684044e-06, 6.190051409112774450e-06, 6.115620611870460037e-06, 6.041186645228358825e-06, 5.966749630535358510e-06, 5.892309689147525396e-06, 5.817866942414632330e-06, 5.743421511666728997e-06, 5.668973518250400015e-06, 5.594523083482122211e-06, 5.520070328684627755e-06, 5.445615375173329602e-06, 5.371158344246281615e-06, 5.296699357200485643e-06, 5.222238535335020458e-06, 5.147775999921077121e-06, 5.073311872234817927e-06, 4.998846273543973808e-06, 4.924379325094392598e-06, 4.849911148146261551e-06, 4.775441863927556108e-06, 4.700971593670263255e-06, 4.626500458593652626e-06, 4.552028579907348693e-06, 4.477556078811179142e-06, 4.403083076498252995e-06, 4.328609694141540220e-06, 4.254136052913538984e-06, 4.179662273976135829e-06, 4.105188478467183583e-06, 4.030714787533384025e-06, 3.956241322300365605e-06, 3.881768203875683628e-06, 3.807295553365284038e-06, 3.732823491859994088e-06, 3.658352140438677112e-06, 3.583881620171360200e-06, 3.509412052105704109e-06, 3.434943557286811137e-06, 3.360476256743675132e-06, 3.286010271492316783e-06, 3.211545722535647676e-06, 3.137082730866524691e-06, 3.062621417454306322e-06, 2.988161903264564824e-06, 2.913704309245637449e-06, 2.839248756331712611e-06, 2.764795365442668103e-06, 2.690344257487148367e-06, 2.615895553349176713e-06, 2.541449373907761595e-06, 2.467005840023537203e-06, 2.392565072541789491e-06, 2.318127192295662195e-06, 2.243692320092630141e-06, 2.169260576734230031e-06, 2.094832083002617183e-06, 2.020406959663640260e-06, 1.945985327466697273e-06, 1.871567307147821114e-06, 1.797153019416236293e-06, 1.722742584974050973e-06, 1.648336124502813075e-06, 1.573933758666601945e-06, 1.499535608111876107e-06, 1.425141793470559209e-06, 1.350752435346585752e-06, 1.276367654335633788e-06, 1.201987571011621724e-06, 1.127612305929852938e-06, 1.053241979630146831e-06, 9.788767126233525880e-07, 9.045166254077641376e-07, 8.301618384722171231e-07, 7.558124722660700523e-07, 6.814686472321585381e-07, 6.071304837933372153e-07, 5.327981023423457334e-07, 4.584716232615025361e-07, 3.841511669092464616e-07, 3.098368536232672175e-07, 2.355288037236152881e-07, 1.612271374992593367e-07, 8.693197522445902184e-08, 1.264343716188515174e-08, -6.163835646739932505e-08, -1.359132854509930138e-07, -2.101812295986069765e-07, -2.844420687521974531e-07, -3.586956827695919633e-07, -4.329419515213712725e-07, -5.071807549208811456e-07, -5.814119728912935649e-07, -6.556354853790528488e-07, -7.298511723673194412e-07, -8.040589138397264302e-07, -8.782585898269425378e-07, -9.524500803704391205e-07, -1.026633265535920830e-06, -1.100808025423458138e-06, -1.174974240151125627e-06, -1.249131789851878658e-06, -1.323280554703553903e-06, -1.397420414895939460e-06, -1.471551250644230601e-06, -1.545672942202440849e-06, -1.619785369827193646e-06, -1.693888413824265545e-06, -1.767981954512357551e-06, -1.842065872239827623e-06, -1.916140047381596670e-06, -1.990204360339313518e-06, -2.064258691538280597e-06, -2.138302921440825418e-06, -2.212336930526680749e-06, -2.286360599303100730e-06, -2.360373808318248650e-06, -2.434376438128364681e-06, -2.508368369327683080e-06, -2.582349482545334594e-06, -2.656319658429009306e-06, -2.730278777658352042e-06, -2.804226720941864769e-06, -2.878163369013813656e-06, -2.952088602647572382e-06, -3.026002302636062878e-06, -3.099904349801815110e-06, -3.173794625010402718e-06, -3.247673009137542560e-06, -3.321539383099110175e-06, -3.395393627847911314e-06, -3.469235624357469731e-06, -3.543065253635342963e-06, -3.616882396720062002e-06, -3.690686934681309169e-06, -3.764478748616809506e-06, -3.838257719665702461e-06, -3.912023728988947895e-06, -3.985776657782737584e-06, -4.059516387275354417e-06, -4.133242798724046420e-06, -4.206955773428498819e-06, -4.280655192711115956e-06, -4.354340937930511138e-06, -4.428012890478297229e-06, -4.501670931779380570e-06, -4.575314943288787992e-06, -4.648944806505032152e-06, -4.722560402950587423e-06, -4.796161614185200167e-06, -4.869748321802841959e-06, -4.943320407428518816e-06, -5.016877752731761041e-06, -5.090420239406883119e-06, -5.163947749186539639e-06, -5.237460163838469290e-06, -5.310957365165750672e-06, -5.384439235003700458e-06, -5.457905655233202307e-06, -5.531356507764454840e-06, -5.604791674533896911e-06, -5.678211037533938466e-06, -5.751614478780296408e-06, -5.825001880325406518e-06, -5.898373124268320191e-06, -5.971728092735311610e-06, -6.045066667893144831e-06, -6.118388731945977869e-06, -6.191694167132315929e-06, -6.264982855738218338e-06, -6.338254680081234567e-06, -6.411509522507193975e-06, -6.484747265419953609e-06, -6.557967791248774728e-06, -6.631170982461669499e-06, -6.704356721575364651e-06, -6.777524891135882392e-06, -6.850675373731770221e-06, -6.923808051991103275e-06, -6.996922808581563105e-06, -7.070019526207414615e-06, -7.143098087626100286e-06, -7.216158375612303952e-06, -7.289200273004070054e-06, -7.362223662666931793e-06, -7.435228427507220560e-06, -7.508214450482062616e-06, -7.581181614583168578e-06, -7.654129802833791723e-06, -7.727058898318360590e-06, -7.799968784149877523e-06, -7.872859343483362788e-06, -7.945730459528832802e-06, -8.018582015515916185e-06, -8.091413894739391943e-06, -8.164225980523690315e-06, -8.237018156236099718e-06, -8.309790305299968592e-06, -8.382542311162245413e-06, -8.455274057323079100e-06, -8.527985427332722266e-06, -8.600676304775407098e-06, -8.673346573279338650e-06, -8.745996116529822163e-06, -8.818624818237028376e-06, -8.891232562165317808e-06, -8.963819232130286306e-06, -9.036384711982666339e-06, -9.108928885621472949e-06, -9.181451636990998474e-06, -9.253952850077629404e-06, -9.326432408923227804e-06, -9.398890197605669887e-06, -9.471326100248756295e-06, -9.543740001035510523e-06, -9.616131784175813786e-06, -9.688501333935814003e-06, -9.760848534634866314e-06, -9.833173270629532630e-06, -9.905475426326661512e-06, -9.977754886180365961e-06, -1.005001153468904017e-05, -1.012224525640837840e-05, -1.019445593593220497e-05, -1.026664345790559307e-05, -1.033880770702177480e-05, -1.041094856802240543e-05, -1.048306592569443447e-05, -1.055515966488324993e-05, -1.062722967047343883e-05, -1.069927582740203813e-05, -1.077129802065521780e-05, -1.084329613526874160e-05, -1.091527005632472123e-05, -1.098721966896481310e-05, -1.105914485837106185e-05, -1.113104550977887183e-05, -1.120292150847403057e-05, -1.127477273978973237e-05, -1.134659908911954293e-05, -1.141840044189827678e-05, -1.149017668361515675e-05, -1.156192769981054446e-05, -1.163365337607645019e-05, -1.170535359805320405e-05, -1.177702825144276970e-05, -1.184867722198928452e-05, -1.192030039549241232e-05, -1.199189765780420927e-05, -1.206346889482929674e-05, -1.213501399252173228e-05, -1.220653283689823189e-05, -1.227802531401899147e-05, -1.234949131000066674e-05, -1.242093071101332390e-05, -1.249234340327758860e-05, -1.256372927307741402e-05, -1.263508820674443793e-05, -1.270642009065483677e-05, -1.277772481125835349e-05, -1.284900225504651011e-05, -1.292025230856557575e-05, -1.299147485842623471e-05, -1.306266979128476030e-05, -1.313383699385582534e-05, -1.320497635290954607e-05, -1.327608775527170571e-05, -1.334717108782068315e-05, -1.341822623750361774e-05, -1.348925309130143187e-05, -1.356025153627375423e-05, -1.363122145952398650e-05, -1.370216274821219345e-05, -1.377307528956808630e-05, -1.384395897085923526e-05, -1.391481367942022270e-05, -1.398563930264915338e-05, -1.405643572799228926e-05, -1.412720284295371586e-05, -1.419794053510805284e-05, -1.426864869206586622e-05, -1.433932720151821557e-05, -1.440997595120210185e-05, -1.448059482891292892e-05, -1.455118372251783756e-05, -1.462174251992383670e-05, -1.469227110910659237e-05, -1.476276937810765452e-05, -1.483323721501832611e-05, -1.490367450798996476e-05, -1.497408114524628502e-05, -1.504445701505204864e-05, -1.511480200574184509e-05, -1.518511600571702358e-05, -1.525539890343001282e-05, -1.532565058739711962e-05, -1.539587094619566092e-05, -1.546605986846101604e-05, -1.553621724289921195e-05, -1.560634295826823941e-05, -1.567643690338791238e-05, -1.574649896715238725e-05, -1.581652903849885305e-05, -1.588652700643626621e-05, -1.595649276004218269e-05, -1.602642618844721996e-05, -1.609632718084785740e-05, -1.616619562650342760e-05, -1.623603141473322294e-05, -1.630583443492919090e-05, -1.637560457653719088e-05, -1.644534172906987257e-05, -1.651504578210363333e-05, -1.658471662527876052e-05, -1.665435414829643978e-05, -1.672395824093169433e-05, -1.679352879301446898e-05, -1.686306569444250168e-05, -1.693256883517826742e-05, -1.700203810524933735e-05, -1.707147339474514991e-05, -1.714087459382997384e-05, -1.721024159272402268e-05, -1.727957428171640427e-05, -1.734887255116203072e-05, -1.741813629147868434e-05, -1.748736539315972986e-05, -1.755655974675543571e-05, -1.762571924288577771e-05, -1.769484377223738304e-05, -1.776393322556379784e-05, -1.783298749368241086e-05, -1.790200646748724695e-05, -1.797099003793017319e-05, -1.803993809603404816e-05, -1.810885053288915428e-05, -1.817772723965385508e-05, -1.824656810755129178e-05, -1.831537302788232934e-05, -1.838414189200682350e-05, -1.845287459135629574e-05, -1.852157101743108391e-05, -1.859023106179734369e-05, -1.865885461609959487e-05, -1.872744157204524434e-05, -1.879599182140215345e-05, -1.886450525602612586e-05, -1.893298176783035007e-05, -1.900142124879810143e-05, -1.906982359099195453e-05, -1.913818868653540935e-05, -1.920651642762563402e-05, -1.927480670653027996e-05, -1.934305941558480191e-05, -1.941127444720477374e-05, -1.947945169387072320e-05, -1.954759104812532316e-05, -1.961569240260112006e-05, -1.968375564998989507e-05, -1.975178068305537970e-05, -1.981976739464534132e-05, -1.988771567766149312e-05, -1.995562542508683634e-05, -2.002349652998311580e-05, -2.009132888547549199e-05, -2.015912238476180759e-05, -2.022687692112530992e-05, -2.029459238790070865e-05, -2.036226867851764549e-05, -2.042990568646693489e-05, -2.049750330531283242e-05, -2.056506142870604865e-05, -2.063257995035246983e-05, -2.070005876404153018e-05, -2.076749776364300329e-05, -2.083489684309197578e-05, -2.090225589639817480e-05, -2.096957481765827035e-05, -2.103685350102264449e-05, -2.110409184073806823e-05, -2.117128973111437928e-05, -2.123844706654009793e-05, -2.130556374147907618e-05, -2.137263965047127705e-05, -2.143967468812929490e-05, -2.150666874915111522e-05, -2.157362172830188301e-05, -2.164053352042316939e-05, -2.170740402044516544e-05, -2.177423312335691069e-05, -2.184102072423321187e-05, -2.190776671823215933e-05, -2.197447100057998558e-05, -2.204113346658347593e-05, -2.210775401162681417e-05, -2.217433253116919396e-05, -2.224086892075647737e-05, -2.230736307600372564e-05, -2.237381489260724407e-05, -2.244022426634174268e-05, -2.250659109306048195e-05, -2.257291526869245729e-05, -2.263919668925457932e-05, -2.270543525083377104e-05, -2.277163084959916167e-05, -2.283778338179941008e-05, -2.290389274376241672e-05, -2.296995883189307738e-05, -2.303598154268508738e-05, -2.310196077270295059e-05, -2.316789641859470867e-05, -2.323378837708843097e-05, -2.329963654498994782e-05, -2.336544081919448543e-05, -2.343120109666932540e-05, -2.349691727446569708e-05, -2.356258924971587731e-05, -2.362821691963359024e-05, -2.369380018151091393e-05, -2.375933893273059289e-05, -2.382483307074813851e-05, -2.389028249310405346e-05, -2.395568709742090097e-05, -2.402104678140064176e-05, -2.408636144283648908e-05, -2.415163097959529049e-05, -2.421685528962968099e-05, -2.428203427097514223e-05, -2.434716782175029380e-05, -2.441225584015391852e-05, -2.447729822447713256e-05, -2.454229487308855898e-05, -2.460724568443179005e-05, -2.467215055705195698e-05, -2.473700938956623616e-05, -2.480182208067625662e-05, -2.486658852917637033e-05, -2.493130863393709789e-05, -2.499598229391618057e-05, -2.506060940815632381e-05, -2.512518987578211743e-05, -2.518972359601208381e-05, -2.525421046814423429e-05, -2.531865039155314860e-05, -2.538304326571648361e-05, -2.544738899018605561e-05, -2.551168746459952599e-05, -2.557593858869220888e-05, -2.564014226226514476e-05, -2.570429838522645264e-05, -2.576840685755864475e-05, -2.583246757933407300e-05, -2.589648045070911498e-05, -2.596044537193846171e-05, -2.602436224334364186e-05, -2.608823096535411645e-05, -2.615205143847471549e-05, -2.621582356329815034e-05, -2.627954724051631652e-05, -2.634322237089165388e-05, -2.640684885528356719e-05, -2.647042659464508206e-05, -2.653395549000916033e-05, -2.659743544249715678e-05, -2.666086635333070475e-05, -2.672424812379991849e-05, -2.678758065530426757e-05, -2.685086384932063703e-05, -2.691409760741808599e-05, -2.697728183125535067e-05, -2.704041642258032258e-05, -2.710350128322811051e-05, -2.716653631513196051e-05, -2.722952142030699959e-05, -2.729245650085802507e-05, -2.735534145899214229e-05, -2.741817619698921671e-05, -2.748096061722893495e-05, -2.754369462218683048e-05, -2.760637811442144600e-05, -2.766901099658465368e-05, -2.773159317142000855e-05, -2.779412454175953992e-05, -2.785660501053525070e-05, -2.791903448076211576e-05, -2.798141285555018774e-05, -2.804374003810117160e-05, -2.810601593170912265e-05, -2.816824043975731923e-05, -2.823041346573022963e-05, -2.829253491319633088e-05, -2.835460468581941154e-05, -2.841662268735652526e-05, -2.847858882165740129e-05, -2.854050299266232006e-05, -2.860236510441338214e-05, -2.866417506103750322e-05, -2.872593276675818106e-05, -2.878763812589272064e-05, -2.884929104284931695e-05, -2.891089142213878471e-05, -2.897243916835785490e-05, -2.903393418620021327e-05, -2.909537638045387118e-05, -2.915676565600206001e-05, -2.921810191781952460e-05, -2.927938507098440881e-05, -2.934061502066168413e-05, -2.940179167211417807e-05, -2.946291493070026687e-05, -2.952398470187095827e-05, -2.958500089118133326e-05, -2.964596340427382565e-05, -2.970687214688970445e-05, -2.976772702486631250e-05, -2.982852794413722917e-05, -2.988927481072957675e-05, -2.994996753077548251e-05, -3.001060601049800779e-05, -3.007119015620901008e-05, -3.013171987433355792e-05, -3.019219507138313753e-05, -3.025261565396607471e-05, -3.031298152879949835e-05, -3.037329260267859649e-05, -3.043354878251539690e-05, -3.049374997530908705e-05, -3.055389608815654103e-05, -3.061398702826098297e-05, -3.067402270291857009e-05, -3.073400301951539080e-05, -3.079392788555279095e-05, -3.085379720861955053e-05, -3.091361089640338300e-05, -3.097336885670198055e-05, -3.103307099739292075e-05, -3.109271722647209473e-05, -3.115230745202393907e-05, -3.121184158223504250e-05, -3.127131952538898921e-05, -3.133074118988004686e-05, -3.139010648418346625e-05, -3.144941531689350968e-05, -3.150866759669368288e-05, -3.156786323236807160e-05, -3.162700213281190593e-05, -3.168608420700499045e-05, -3.174510936403587526e-05, -3.180407751309961297e-05, -3.186298856348391482e-05, -3.192184242457787174e-05, -3.198063900588274893e-05, -3.203937821698233290e-05, -3.209805996758079730e-05, -3.215668416747346326e-05, -3.221525072655733655e-05, -3.227375955484227483e-05, -3.233221056242432983e-05, -3.239060365950969465e-05, -3.244893875641229823e-05, -3.250721576354092363e-05, -3.256543459140685170e-05, -3.262359515063463527e-05, -3.268169735193633587e-05, -3.273974110613473240e-05, -3.279772632416130178e-05, -3.285565291704282232e-05, -3.291352079591233093e-05, -3.297132987200662263e-05, -3.302908005666342492e-05, -3.308677126133242950e-05, -3.314440339755951712e-05, -3.320197637699720658e-05, -3.325949011140266932e-05, -3.331694451263722117e-05, -3.337433949266418103e-05, -3.343167496355960454e-05, -3.348895083749646142e-05, -3.354616702675545045e-05, -3.360332344372229572e-05, -3.366042000088531394e-05, -3.371745661084618871e-05, -3.377443318630412087e-05, -3.383134964006690083e-05, -3.388820588504757475e-05, -3.394500183426573872e-05, -3.400173740084394742e-05, -3.405841249801903718e-05, -3.411502703912628991e-05, -3.417158093760988205e-05, -3.422807410702079754e-05, -3.428450646101661770e-05, -3.434087791335913600e-05, -3.439718837792505104e-05, -3.445343776869014393e-05, -3.450962599974027618e-05, -3.456575298526861820e-05, -3.462181863957309469e-05, -3.467782287706711139e-05, -3.473376561226406464e-05, -3.478964675978788514e-05, -3.484546623437043594e-05, -3.490122395085174960e-05, -3.495691982417744638e-05, -3.501255376940956955e-05, -3.506812570171051886e-05, -3.512363553635434652e-05, -3.517908318872351142e-05, -3.523446857430990233e-05, -3.528979160871126004e-05, -3.534505220764520421e-05, -3.540025028692048848e-05, -3.545538576247330765e-05, -3.551045855033898652e-05, -3.556546856666280152e-05, -3.562041572770745495e-05, -3.567529994984019331e-05, -3.573012114953097093e-05, -3.578487924337494716e-05, -3.583957414806765814e-05, -3.589420578041498469e-05, -3.594877405734329636e-05, -3.600327889587228542e-05, -3.605772021314989170e-05, -3.611209792642487904e-05, -3.616641195305974411e-05, -3.622066221052563418e-05, -3.627484861641479513e-05, -3.632897108841366289e-05, -3.638302954433749017e-05, -3.643702390210341760e-05, -3.649095407974039412e-05, -3.654481999539891453e-05, -3.659862156732695697e-05, -3.665235871389198541e-05, -3.670603135357869320e-05, -3.675963940497675156e-05, -3.681318278678855484e-05, -3.686666141783863279e-05, -3.692007521704753479e-05, -3.697342410346537241e-05, -3.702670799624602888e-05, -3.707992681465625292e-05, -3.713308047808553167e-05, -3.718616890602263812e-05, -3.723919201807696273e-05, -3.729214973397626374e-05, -3.734504197355482903e-05, -3.739786865676341011e-05, -3.745062970366624060e-05, -3.750332503443987067e-05, -3.755595456938196942e-05, -3.760851822889740647e-05, -3.766101593350781998e-05, -3.771344760384959060e-05, -3.776581316067363137e-05, -3.781811252484328036e-05, -3.787034561734439720e-05, -3.792251235927002851e-05, -3.797461267183142603e-05, -3.802664647635478726e-05, -3.807861369428176368e-05, -3.813051424716724491e-05, -3.818234805668874383e-05, -3.823411504463255947e-05, -3.828581513290329764e-05, -3.833744824352108588e-05, -3.838901429862055705e-05, -3.844051322045902825e-05, -3.849194493140354462e-05, -3.854330935393948519e-05, -3.859460641066902466e-05, -3.864583602431124863e-05, -3.869699811769931430e-05, -3.874809261379060811e-05, -3.879911943565246139e-05, -3.885007850647160323e-05, -3.890096974955212759e-05, -3.895179308831530360e-05, -3.900254844629797633e-05, -3.905323574716109135e-05, -3.910385491467673850e-05, -3.915440587273694747e-05, -3.920488854535161431e-05, -3.925530285664663790e-05, -3.930564873087287822e-05, -3.935592609239469764e-05, -3.940613486568840919e-05, -3.945627497536196161e-05, -3.950634634613333658e-05, -3.955634890283898523e-05, -3.960628257044115322e-05, -3.965614727401397589e-05, -3.970594293875322249e-05, -3.975566948997368737e-05, -3.980532685310927802e-05, -3.985491495371154465e-05, -3.990443371746002754e-05, -3.995388307013835713e-05, -4.000326293766575693e-05, -4.005257324607199840e-05, -4.010181392150695547e-05, -4.015098489024750963e-05, -4.020008607868580657e-05, -4.024911741332769092e-05, -4.029807882081298760e-05, -4.034697022789302494e-05, -4.039579156143947771e-05, -4.044454274845400298e-05, -4.049322371604315436e-05, -4.054183439145010850e-05, -4.059037470203027053e-05, -4.063884457526018484e-05, -4.068724393874409450e-05, -4.073557272020337708e-05, -4.078383084747407131e-05, -4.083201824852723973e-05, -4.088013485144627502e-05, -4.092818058443708471e-05, -4.097615537583588384e-05, -4.102405915408752457e-05, -4.107189184776584517e-05, -4.111965338557098675e-05, -4.116734369631905256e-05, -4.121496270894854555e-05, -4.126251035252895380e-05, -4.130998655623736572e-05, -4.135739124938895639e-05, -4.140472436141245753e-05, -4.145198582186030155e-05, -4.149917556041589925e-05, -4.154629350687322973e-05, -4.159333959115585458e-05, -4.164031374331521703e-05, -4.168721589351937303e-05, -4.173404597206230863e-05, -4.178080390936150725e-05, -4.182748963595626246e-05, -4.187410308251598561e-05, -4.192064417982754106e-05, -4.196711285880429921e-05, -4.201350905048345990e-05, -4.205983268602670974e-05, -4.210608369671772159e-05, -4.215226201397127549e-05, -4.219836756932011267e-05, -4.224440029442384634e-05, -4.229036012106676619e-05, -4.233624698115827205e-05, -4.238206080673030570e-05, -4.242780152994645143e-05, -4.247346908308871546e-05, -4.251906339856698568e-05, -4.256458440891608397e-05, -4.261003204679432958e-05, -4.265540624499215860e-05, -4.270070693641873401e-05, -4.274593405411175097e-05, -4.279108753123411643e-05, -4.283616730107540606e-05, -4.288117329704817113e-05, -4.292610545269832657e-05, -4.297096370169105632e-05, -4.301574797782029333e-05, -4.306045821500643596e-05, -4.310509434729628022e-05, -4.314965630886110205e-05, -4.319414403400519549e-05, -4.323855745715335684e-05, -4.328289651285939570e-05, -4.332716113580423759e-05, -4.337135126079368780e-05, -4.341546682276692203e-05, -4.345950775678643721e-05, -4.350347399803571367e-05, -4.354736548183809383e-05, -4.359118214363632464e-05, -4.363492391900077722e-05, -4.367859074363573518e-05, -4.372218255336709575e-05, -4.376569928415086042e-05, -4.380914087207098687e-05, -4.385250725333738318e-05, -4.389579836429456791e-05, -4.393901414141092971e-05, -4.398215452127746697e-05, -4.402521944062583295e-05, -4.406820883630792573e-05, -4.411112264530438562e-05, -4.415396080473071410e-05, -4.419672325182730601e-05, -4.423940992395715232e-05, -4.428202075862471205e-05, -4.432455569345540054e-05, -4.436701466620374807e-05, -4.440939761476174816e-05, -4.445170447713630625e-05, -4.449393519147862151e-05, -4.453608969606074778e-05, -4.457816792928472120e-05, -4.462016982968827257e-05, -4.466209533593483238e-05, -4.470394438681197228e-05, -4.474571692124905723e-05, -4.478741287829775698e-05, -4.482903219713977097e-05, -4.487057481709485828e-05, -4.491204067759968884e-05, -4.495342971823506370e-05, -4.499474187870389897e-05, -4.503597709884251505e-05, -4.507713531861748569e-05, -4.511821647812603778e-05, -4.515922051759471641e-05, -4.520014737738644575e-05, -4.524099699798984290e-05, -4.528176932002407645e-05, -4.532246428424783146e-05, -4.536308183153905525e-05, -4.540362190291309067e-05, -4.544408443952055508e-05, -4.548446938263771814e-05, -4.552477667367472812e-05, -4.556500625417297598e-05, -4.560515806580430251e-05, -4.564523205037751715e-05, -4.568522814982827417e-05, -4.572514630622565929e-05, -4.576498646177122739e-05, -4.580474855879871114e-05, -4.584443253977217109e-05, -4.588403834729365286e-05, -4.592356592409200627e-05, -4.596301521303071874e-05, -4.600238615710551646e-05, -4.604167869944516400e-05, -4.608089278330909942e-05, -4.612002835209542343e-05, -4.615908534932945434e-05, -4.619806371867132421e-05, -4.623696340391444064e-05, -4.627578434898345393e-05, -4.631452649794163640e-05, -4.635318979498033172e-05, -4.639177418442611749e-05, -4.643027961073880618e-05, -4.646870601851206181e-05, -4.650705335247129929e-05, -4.654532155748099601e-05, -4.658351057853399888e-05, -4.662162036075903924e-05, -4.665965084941842893e-05, -4.669760198990914444e-05, -4.673547372775993351e-05, -4.677326600863907391e-05, -4.681097877834414808e-05, -4.684861198280854155e-05, -4.688616556810027742e-05, -4.692363948041973959e-05, -4.696103366610775674e-05, -4.699834807163566166e-05, -4.703558264360446447e-05, -4.707273732876088529e-05, -4.710981207397876017e-05, -4.714680682626740978e-05, -4.718372153277612527e-05, -4.722055614078443084e-05, -4.725731059770820261e-05, -4.729398485109895044e-05, -4.733057884864171045e-05, -4.736709253816185516e-05, -4.740352586761702300e-05, -4.743987878509513283e-05, -4.747615123882983386e-05, -4.751234317718385630e-05, -4.754845454865556410e-05, -4.758448530188410483e-05, -4.762043538564128499e-05, -4.765630474882976748e-05, -4.769209334049831148e-05, -4.772780110982479106e-05, -4.776342800612397440e-05, -4.779897397885264659e-05, -4.783443897759305524e-05, -4.786982295207468263e-05, -4.790512585215751508e-05, -4.794034762783745722e-05, -4.797548822925244417e-05, -4.801054760667338166e-05, -4.804552571050328544e-05, -4.808042249129162668e-05, -4.811523789971798077e-05, -4.814997188659935932e-05, -4.818462440289579372e-05, -4.821919539969321837e-05, -4.825368482822590006e-05, -4.828809263985917884e-05, -4.832241878609694227e-05, -4.835666321858030401e-05, -4.839082588908815271e-05, -4.842490674953484807e-05, -4.845890575197741050e-05, -4.849282284860526179e-05, -4.852665799174588334e-05, -4.856041113387056242e-05, -4.859408222757893549e-05, -4.862767122561334037e-05, -4.866117808085695950e-05, -4.869460274632644061e-05, -4.872794517517776497e-05, -4.876120532070538001e-05, -4.879438313633997673e-05, -4.882747857565557085e-05, -4.886049159235941302e-05, -4.889342214029726070e-05, -4.892627017345935485e-05, -4.895903564596545791e-05, -4.899171851207809468e-05, -4.902431872620188817e-05, -4.905683624287519775e-05, -4.908927101677688183e-05, -4.912162300272417690e-05, -4.915389215567374785e-05, -4.918607843071915364e-05, -4.921818178309779300e-05, -4.925020216818117366e-05, -4.928213954148201394e-05, -4.931399385865163382e-05, -4.934576507547917574e-05, -4.937745314789781836e-05, -4.940905803197513402e-05, -4.944057968391989203e-05, -4.947201806008022236e-05, -4.950337311694398828e-05, -4.953464481113662479e-05, -4.956583309942801650e-05, -4.959693793872310572e-05, -4.962795928606818761e-05, -4.965889709864918904e-05, -4.968975133379046916e-05, -4.972052194896085705e-05, -4.975120890176456477e-05, -4.978181214994722498e-05, -4.981233165139486101e-05, -4.984276736413314817e-05, -4.987311924632690559e-05, -4.990338725628534099e-05, -4.993357135245502377e-05, -4.996367149341879397e-05, -4.999368763790828482e-05, -5.002361974478981458e-05, -5.005346777307050548e-05, -5.008323168190196325e-05, -5.011291143057236921e-05, -5.014250697851205035e-05, -5.017201828529181917e-05, -5.020144531062206564e-05, -5.023078801435806981e-05, -5.026004635649331361e-05, -5.028922029715813239e-05, -5.031830979663174281e-05, -5.034731481532946952e-05, -5.037623531380708882e-05, -5.040507125276641904e-05, -5.043382259304544072e-05, -5.046248929562570991e-05, -5.049107132162915294e-05, -5.051956863231982827e-05, -5.054798118910116178e-05, -5.057630895352386143e-05, -5.060455188727072489e-05, -5.063270995217533524e-05, -5.066078311020737684e-05, -5.068877132347847641e-05, -5.071667455424579450e-05, -5.074449276490544572e-05, -5.077222591799155683e-05, -5.079987397618805070e-05, -5.082743690231527668e-05, -5.085491465933578403e-05, -5.088230721035895686e-05, -5.090961451862735320e-05, -5.093683654753455365e-05, -5.096397326061132427e-05, -5.099102462153008215e-05, -5.101799059411143446e-05, -5.104487114230956210e-05, -5.107166623022567055e-05, -5.109837582210513031e-05, -5.112499988233253019e-05, -5.115153837543438110e-05, -5.117799126608493679e-05, -5.120435851909367815e-05, -5.123064009941597901e-05, -5.125683597215258439e-05, -5.128294610254299009e-05, -5.130897045597093145e-05, -5.133490899796262151e-05, -5.136076169418584981e-05, -5.138652851045499679e-05, -5.141220941272366801e-05, -5.143780436708856338e-05, -5.146331333979378009e-05, -5.148873629721927942e-05, -5.151407320589193882e-05, -5.153932403248388496e-05, -5.156448874380666612e-05, -5.158956730681670710e-05, -5.161455968861324923e-05, -5.163946585643740847e-05, -5.166428577767747445e-05, -5.168901941986168698e-05, -5.171366675066222724e-05, -5.173822773789494000e-05, -5.176270234951948942e-05, -5.178709055363747531e-05, -5.181139231849765078e-05, -5.183560761248869883e-05, -5.185973640414426702e-05, -5.188377866214145644e-05, -5.190773435530113337e-05, -5.193160345258666894e-05, -5.195538592310874345e-05, -5.197908173611837362e-05, -5.200269086101139170e-05, -5.202621326732774075e-05, -5.204964892474973312e-05, -5.207299780310752568e-05, -5.209625987237140164e-05, -5.211943510265707640e-05, -5.214252346422411187e-05, -5.216552492747622820e-05, -5.218843946296036187e-05, -5.221126704137046717e-05, -5.223400763354168184e-05, -5.225666121045432507e-05, -5.227922774323313178e-05, -5.230170720314690703e-05, -5.232409956160779418e-05, -5.234640479017570657e-05, -5.236862286055139542e-05, -5.239075374458126771e-05, -5.241279741425604452e-05, -5.243475384170998851e-05, -5.245662299922508490e-05, -5.247840485922587793e-05, -5.250009939427784458e-05, -5.252170657709781645e-05, -5.254322638054295479e-05, -5.256465877761496531e-05, -5.258600374146362865e-05, -5.260726124538010539e-05, -5.262843126280142877e-05, -5.264951376730946108e-05, -5.267050873263092760e-05, -5.269141613263615616e-05, -5.271223594134476925e-05, -5.273296813291396783e-05, -5.275361268165290379e-05, -5.277416956201183795e-05, -5.279463874858607704e-05, -5.281502021611968710e-05, -5.283531393949605416e-05, -5.285551989374651717e-05, -5.287563805404938550e-05, -5.289566839572530389e-05, -5.291561089424007822e-05, -5.293546552520872771e-05, -5.295523226438426337e-05, -5.297491108767212153e-05, -5.299450197111879319e-05, -5.301400489091654712e-05, -5.303341982340628266e-05, -5.305274674506860536e-05, -5.307198563253287332e-05, -5.309113646257514397e-05, -5.311019921211412187e-05, -5.312917385821422833e-05, -5.314806037808884729e-05, -5.316685874909150259e-05, -5.318556894872343381e-05, -5.320419095463411812e-05, -5.322272474461538162e-05, -5.324117029660524833e-05, -5.325952758868798755e-05, -5.327779659909199974e-05, -5.329597730619442433e-05, -5.331406968851528505e-05, -5.333207372472011912e-05, -5.334998939362400232e-05, -5.336781667418221136e-05, -5.338555554549861959e-05, -5.340320598682428085e-05, -5.342076797755395995e-05, -5.343824149722863992e-05, -5.345562652553535260e-05, -5.347292304230597925e-05, -5.349013102752111300e-05, -5.350725046130435324e-05, -5.352428132392629008e-05, -5.354122359580349469e-05, -5.355807725749797715e-05, -5.357484228971771506e-05, -5.359151867331851020e-05, -5.360810638929992280e-05, -5.362460541880834791e-05, -5.364101574313621587e-05, -5.365733734372190417e-05, -5.367357020214935122e-05, -5.368971430015045515e-05, -5.370576961960146203e-05, -5.372173614252524277e-05, -5.373761385109058830e-05, -5.375340272761187758e-05, -5.376910275455216759e-05, -5.378471391451814497e-05, -5.380023619026343286e-05, -5.381566956468788619e-05, -5.383101402083772039e-05, -5.384626954190458305e-05, -5.386143611122879300e-05, -5.387651371229420388e-05, -5.389150232873213438e-05, -5.390640194432010107e-05, -5.392121254298160157e-05, -5.393593410878652790e-05, -5.395056662595253529e-05, -5.396511007884178954e-05, -5.397956445196318970e-05, -5.399392972997267293e-05, -5.400820589767108682e-05, -5.402239294000828218e-05, -5.403649084207888471e-05, -5.405049958912203073e-05, -5.406441916652737767e-05, -5.407824955982821943e-05, -5.409199075470414944e-05, -5.410564273698363565e-05, -5.411920549263909416e-05, -5.413267900779054843e-05, -5.414606326870434179e-05, -5.415935826179269695e-05, -5.417256397361590477e-05, -5.418568039088007452e-05, -5.419870750043542627e-05, -5.421164528928292485e-05, -5.422449374456721221e-05, -5.423725285357958219e-05, -5.424992260376063682e-05, -5.426250298269334743e-05, -5.427499397810926849e-05, -5.428739557788799549e-05, -5.429970777005364808e-05, -5.431193054277696391e-05, -5.432406388437748738e-05, -5.433610778331762688e-05, -5.434806222821008829e-05, -5.435992720781214233e-05, -5.437170271102736600e-05, -5.438338872690871227e-05, -5.439498524465178123e-05, -5.440649225360070189e-05, -5.441790974324782726e-05, -5.442923770322968889e-05, -5.444047612332983616e-05, -5.445162499348093013e-05, -5.446268430375767589e-05, -5.447365404438595020e-05, -5.448453420573595067e-05, -5.449532477832468269e-05, -5.450602575281635238e-05, -5.451663712002145188e-05, -5.452715887089644079e-05, -5.453759099654678199e-05, -5.454793348822208982e-05, -5.455818633731915226e-05, -5.456834953538328625e-05, -5.457842307410374331e-05, -5.458840694531730779e-05, -5.459830114100910323e-05, -5.460810565330892637e-05, -5.461782047449407292e-05, -5.462744559698824650e-05, -5.463698101336121989e-05, -5.464642671633128802e-05, -5.465578269876165621e-05, -5.466504895366273054e-05, -5.467422547419152157e-05, -5.468331225365162399e-05, -5.469230928549304044e-05, -5.470121656331358419e-05, -5.471003408085612122e-05, -5.471876183201132137e-05, -5.472739981081581518e-05, -5.473594801145306130e-05, -5.474440642825281788e-05, -5.475277505569260629e-05, -5.476105388839529875e-05, -5.476924292113084629e-05, -5.477734214881577050e-05, -5.478535156651279087e-05, -5.479327116943264760e-05, -5.480110095293094384e-05, -5.480884091251073424e-05, -5.481649104382154238e-05, -5.482405134265921172e-05, -5.483152180496591232e-05, -5.483890242683186209e-05, -5.484619320449215542e-05, -5.485339413432918914e-05, -5.486050521287158505e-05, -5.486752643679428484e-05, -5.487445780291990528e-05, -5.488129930821631237e-05, -5.488805094979840347e-05, -5.489471272492763297e-05, -5.490128463101151085e-05, -5.490776666560409056e-05, -5.491415882640676862e-05, -5.492046111126669899e-05, -5.492667351817659654e-05, -5.493279604527737982e-05, -5.493882869085544017e-05, -5.494477145334315002e-05, -5.495062433132049588e-05, -5.495638732351289647e-05, -5.496206042879249693e-05, -5.496764364617759961e-05, -5.497313697483248793e-05, -5.497854041406936436e-05, -5.498385396334555184e-05, -5.498907762226382578e-05, -5.499421139057517885e-05, -5.499925526817592064e-05, -5.500420925510811820e-05, -5.500907335156188639e-05, -5.501384755787095619e-05, -5.501853187451792630e-05, -5.502312630213004836e-05, -5.502763084148109033e-05, -5.503204549349078093e-05, -5.503637025922652397e-05, -5.504060513989930551e-05, -5.504475013686863376e-05, -5.504880525163903575e-05, -5.505277048586079594e-05, -5.505664584133184678e-05, -5.506043131999437384e-05, -5.506412692393739753e-05, -5.506773265539641399e-05, -5.507124851675260224e-05, -5.507467451053277676e-05, -5.507801063941087147e-05, -5.508125690620507343e-05, -5.508441331388113635e-05, -5.508747986555000896e-05, -5.509045656446876334e-05, -5.509334341404010702e-05, -5.509614041781310805e-05, -5.509884757948204981e-05, -5.510146490288788111e-05, -5.510399239201687455e-05, -5.510643005100091104e-05, -5.510877788411885545e-05, -5.511103589579322264e-05, -5.511320409059397899e-05, -5.511528247323684829e-05, -5.511727104858222078e-05, -5.511916982163710474e-05, -5.512097879755343237e-05, -5.512269798162917791e-05, -5.512432737930819503e-05, -5.512586699617948491e-05, -5.512731683797783333e-05, -5.512867691058360726e-05, -5.512994722002251778e-05, -5.513112777246584366e-05, -5.513221857423068208e-05, -5.513321963177916259e-05, -5.513413095171902986e-05, -5.513495254080339977e-05, -5.513568440593092875e-05, -5.513632655414538696e-05, -5.513687899263620707e-05, -5.513734172873797614e-05, -5.513771476993045587e-05, -5.513799812383872494e-05, -5.513819179823300283e-05, -5.513829580102937487e-05, -5.513831014028826755e-05, -5.513823482421574285e-05, -5.513806986116269861e-05, -5.513781525962543092e-05, -5.513747102824513276e-05, -5.513703717580816497e-05, -5.513651371124587335e-05, -5.513590064363450729e-05, -5.513519798219569418e-05, -5.513440573629525349e-05, -5.513352391544455884e-05, -5.513255252929956222e-05, -5.513149158766141061e-05, -5.513034110047551086e-05, -5.512910107783251226e-05, -5.512777152996791352e-05, -5.512635246726121571e-05, -5.512484390023787386e-05, -5.512324583956669483e-05, -5.512155829606210064e-05, -5.511978128068240724e-05, -5.511791480453116625e-05, -5.511595887885626369e-05, -5.511391351504971674e-05, -5.511177872464855459e-05, -5.510955451933399177e-05, -5.510724091093174664e-05, -5.510483791141197361e-05, -5.510234553288876849e-05, -5.509976378762149662e-05, -5.509709268801287521e-05, -5.509433224661017947e-05, -5.509148247610516814e-05, -5.508854338933359554e-05, -5.508551499927517772e-05, -5.508239731905399222e-05, -5.507919036193824775e-05, -5.507589414134020280e-05, -5.507250867081598951e-05, -5.506903396406557973e-05, -5.506547003493352373e-05, -5.506181689740748640e-05, -5.505807456561943321e-05, -5.505424305384542009e-05, -5.505032237650459731e-05, -5.504631254816062574e-05, -5.504221358352061978e-05, -5.503802549743507276e-05, -5.503374830489835841e-05, -5.502938202104882577e-05, -5.502492666116775557e-05, -5.502038224068067488e-05, -5.501574877515605605e-05, -5.501102628030585202e-05, -5.500621477198599103e-05, -5.500131426619483157e-05, -5.499632477907529020e-05, -5.499124632691284247e-05, -5.498607892613603123e-05, -5.498082259331725936e-05, -5.497547734517178696e-05, -5.497004319855795492e-05, -5.496452017047736790e-05, -5.495890827807463683e-05, -5.495320753863745344e-05, -5.494741796959632600e-05, -5.494153958852483679e-05, -5.493557241313965568e-05, -5.492951646130030975e-05, -5.492337175100850562e-05, -5.491713830040926111e-05, -5.491081612779020050e-05, -5.490440525158187982e-05, -5.489790569035732604e-05, -5.489131746283229453e-05, -5.488464058786445601e-05, -5.487787508445482622e-05, -5.487102097174665472e-05, -5.486407826902530961e-05, -5.485704699571896878e-05, -5.484992717139781346e-05, -5.484271881577434000e-05, -5.483542194870370541e-05, -5.482803659018287357e-05, -5.482056276035090662e-05, -5.481300047948966966e-05, -5.480534976802177080e-05, -5.479761064651302092e-05, -5.478978313567075994e-05, -5.478186725634464965e-05, -5.477386302952536588e-05, -5.476577047634666526e-05, -5.475758961808247145e-05, -5.474932047614996508e-05, -5.474096307210691393e-05, -5.473251742765383455e-05, -5.472398356463200003e-05, -5.471536150502421929e-05, -5.470665127095502677e-05, -5.469785288469059442e-05, -5.468896636863820984e-05, -5.467999174534660838e-05, -5.467092903750595277e-05, -5.466177826794719617e-05, -5.465253945964295633e-05, -5.464321263570704119e-05, -5.463379781939378487e-05, -5.462429503409927414e-05, -5.461470430336058272e-05, -5.460502565085410430e-05, -5.459525910040014684e-05, -5.458540467595690852e-05, -5.457546240162518042e-05, -5.456543230164621878e-05, -5.455531440040067436e-05, -5.454510872241115387e-05, -5.453481529234142038e-05, -5.452443413499398093e-05, -5.451396527531291906e-05, -5.450340873838293253e-05, -5.449276454942744279e-05, -5.448203273381313505e-05, -5.447121331704396805e-05, -5.446030632476569388e-05, -5.444931178276426548e-05, -5.443822971696484739e-05, -5.442706015343279146e-05, -5.441580311837504637e-05, -5.440445863813629510e-05, -5.439302673920222794e-05, -5.438150744819852597e-05, -5.436990079188898411e-05, -5.435820679717987496e-05, -5.434642549111551719e-05, -5.433455690087900735e-05, -5.432260105379420529e-05, -5.431055797732487362e-05, -5.429842769907186552e-05, -5.428621024677898624e-05, -5.427390564832565439e-05, -5.426151393173307512e-05, -5.424903512516100784e-05, -5.423646925690677010e-05, -5.422381635540965574e-05, -5.421107644924618471e-05, -5.419824956713099754e-05, -5.418533573791945064e-05, -5.417233499060491260e-05, -5.415924735431958408e-05, -5.414607285833467401e-05, -5.413281153205886818e-05, -5.411946340504088384e-05, -5.410602850696735554e-05, -5.409250686766323493e-05, -5.407889851709227864e-05, -5.406520348535689919e-05, -5.405142180269603051e-05, -5.403755349948878708e-05, -5.402359860625171955e-05, -5.400955715363942462e-05, -5.399542917244465345e-05, -5.398121469359848108e-05, -5.396691374816849036e-05, -5.395252636736176709e-05, -5.393805258252225727e-05, -5.392349242513210878e-05, -5.390884592681140713e-05, -5.389411311931612903e-05, -5.387929403454138141e-05, -5.386438870451979550e-05, -5.384939716142041546e-05, -5.383431943755037218e-05, -5.381915556535446309e-05, -5.380390557741278053e-05, -5.378856950644435054e-05, -5.377314738530478833e-05, -5.375763924698673870e-05, -5.374204512461957790e-05, -5.372636505147032843e-05, -5.371059906094092818e-05, -5.369474718657209293e-05, -5.367880946204017892e-05, -5.366278592115854491e-05, -5.364667659787718620e-05, -5.363048152628150143e-05, -5.361420074059389848e-05, -5.359783427517521753e-05, -5.358138216451856467e-05, -5.356484444325634560e-05, -5.354822114615627449e-05, -5.353151230812090635e-05, -5.351471796419036790e-05, -5.349783814954006043e-05, -5.348087289948141193e-05, -5.346382224946161281e-05, -5.344668623506377181e-05, -5.342946489200464590e-05, -5.341215825614082703e-05, -5.339476636345964159e-05, -5.337728925008697025e-05, -5.335972695228370394e-05, -5.334207950644395495e-05, -5.332434694909845180e-05, -5.330652931691525078e-05, -5.328862664669334592e-05, -5.327063897536921485e-05, -5.325256634001449457e-05, -5.323440877783293211e-05, -5.321616632616783164e-05, -5.319783902249217470e-05, -5.317942690441668392e-05, -5.316093000968643493e-05, -5.314234837617874891e-05, -5.312368204190709572e-05, -5.310493104502125655e-05, -5.308609542380090678e-05, -5.306717521666269718e-05, -5.304817046215782803e-05, -5.302908119896816626e-05, -5.300990746591399081e-05, -5.299064930194756186e-05, -5.297130674615318190e-05, -5.295187983775136983e-05, -5.293236861609577107e-05, -5.291277312067119235e-05, -5.289309339110104892e-05, -5.287332946713671895e-05, -5.285348138866601393e-05, -5.283354919571045457e-05, -5.281353292842080524e-05, -5.279343262708646593e-05, -5.277324833212719833e-05, -5.275298008409395266e-05, -5.273262792367315691e-05, -5.271219189168315265e-05, -5.269167202907505551e-05, -5.267106837693361586e-05, -5.265038097647337659e-05, -5.262960986904406029e-05, -5.260875509612700490e-05, -5.258781669933554321e-05, -5.256679472041569403e-05, -5.254568920124597922e-05, -5.252450018383521464e-05, -5.250322771032596604e-05, -5.248187182299245520e-05, -5.246043256424043116e-05, -5.243890997660775302e-05, -5.241730410276412562e-05, -5.239561498550914800e-05, -5.237384266777594548e-05, -5.235198719262852012e-05, -5.233004860326194728e-05, -5.230802694300375113e-05, -5.228592225530977796e-05, -5.226373458376978658e-05, -5.224146397210353165e-05, -5.221911046416182075e-05, -5.219667410392630434e-05, -5.217415493551041088e-05, -5.215155300315518620e-05, -5.212886835123550734e-05, -5.210610102425550179e-05, -5.208325106684987563e-05, -5.206031852378360184e-05, -5.203730343995311293e-05, -5.201420586038182854e-05, -5.199102583022631517e-05, -5.196776339477228809e-05, -5.194441859943508573e-05, -5.192099148976135018e-05, -5.189748211142407373e-05, -5.187389051022795892e-05, -5.185021673211059082e-05, -5.182646082313280793e-05, -5.180262282948885308e-05, -5.177870279750248383e-05, -5.175470077362333358e-05, -5.173061680443366079e-05, -5.170645093664321930e-05, -5.168220321709142000e-05, -5.165787369274697842e-05, -5.163346241070474347e-05, -5.160896941819001390e-05, -5.158439476256004266e-05, -5.155973849129411642e-05, -5.153500065200447214e-05, -5.151018129243135717e-05, -5.148528046044059659e-05, -5.146029820402793677e-05, -5.143523457132023123e-05, -5.141008961056646210e-05, -5.138486337014716587e-05, -5.135955589857127570e-05, -5.133416724447083587e-05, -5.130869745661308394e-05, -5.128314658388541413e-05, -5.125751467530665988e-05, -5.123180178002333297e-05, -5.120600794730584916e-05, -5.118013322655388822e-05, -5.115417766729745780e-05, -5.112814131918725079e-05, -5.110202423200494527e-05, -5.107582645565928104e-05, -5.104954804018111292e-05, -5.102318903573568263e-05, -5.099674949260704008e-05, -5.097022946121007808e-05, -5.094362899208494867e-05, -5.091694813589803888e-05, -5.089018694344191657e-05, -5.086334546563615709e-05, -5.083642375352311494e-05, -5.080942185827432727e-05, -5.078233983118730200e-05, -5.075517772367997479e-05, -5.072793558730380079e-05, -5.070061347373128636e-05, -5.067321143475855041e-05, -5.064572952231036603e-05, -5.061816778843557290e-05, -5.059052628530795822e-05, -5.056280506522777462e-05, -5.053500418061621747e-05, -5.050712368402342087e-05, -5.047916362812368719e-05, -5.045112406571140775e-05, -5.042300504971278572e-05, -5.039480663317450626e-05, -5.036652886926559997e-05, -5.033817181128247086e-05, -5.030973551264498648e-05, -5.028122002689662019e-05, -5.025262540770489842e-05, -5.022395170886236965e-05, -5.019519898428175940e-05, -5.016636728800312597e-05, -5.013745667418849361e-05, -5.010846719712383799e-05, -5.007939891121924883e-05, -5.005025187100460663e-05, -5.002102613113658934e-05, -4.999172174639373244e-05, -4.996233877167716083e-05, -4.993287726201130704e-05, -4.990333727254421623e-05, -4.987371885854325677e-05, -4.984402207540162546e-05, -4.981424697863376681e-05, -4.978439362387674180e-05, -4.975446206689083099e-05, -4.972445236355468949e-05, -4.969436456987288216e-05, -4.966419874197067945e-05, -4.963395493609506028e-05, -4.960363320861457652e-05, -4.957323361602087761e-05, -4.954275621492333707e-05, -4.951220106205502907e-05, -4.948156821427448354e-05, -4.945085772855331270e-05, -4.942006966198983812e-05, -4.938920407180329023e-05, -4.935826101532943087e-05, -4.932724055002934212e-05, -4.929614273348308367e-05, -4.926496762339132592e-05, -4.923371527757646133e-05, -4.920238575397769832e-05, -4.917097911065659079e-05, -4.913949540579930133e-05, -4.910793469770379410e-05, -4.907629704479315021e-05, -4.904458250561071587e-05, -4.901279113881515576e-05, -4.898092300318910631e-05, -4.894897815763298216e-05, -4.891695666116696844e-05, -4.888485857293047184e-05, -4.885268395218327937e-05, -4.882043285829893798e-05, -4.878810535077956063e-05, -4.875570148923637171e-05, -4.872322133340512977e-05, -4.869066494314006955e-05, -4.865803237840967359e-05, -4.862532369930416679e-05, -4.859253896603538765e-05, -4.855967823892613598e-05, -4.852674157842172645e-05, -4.849372904508655299e-05, -4.846064069959683145e-05, -4.842747660275601557e-05, -4.839423681547595221e-05, -4.836092139879144352e-05, -4.832753041385351813e-05, -4.829406392193001391e-05, -4.826052198440667571e-05, -4.822690466278744674e-05, -4.819321201868883073e-05, -4.815944411384918218e-05, -4.812560101012286522e-05, -4.809168276947547636e-05, -4.805768945399790519e-05, -4.802362112589314108e-05, -4.798947784747749958e-05, -4.795525968118809673e-05, -4.792096668957641833e-05, -4.788659893531022407e-05, -4.785215648117418456e-05, -4.781763939006506331e-05, -4.778304772499904196e-05, -4.774838154910825079e-05, -4.771364092563420251e-05, -4.767882591794250357e-05, -4.764393658950957263e-05, -4.760897300392429401e-05, -4.757393522489459066e-05, -4.753882331624186762e-05, -4.750363734190223171e-05, -4.746837736592661358e-05, -4.743304345248189926e-05, -4.739763566584480450e-05, -4.736215407041088036e-05, -4.732659873068827908e-05, -4.729096971129942781e-05, -4.725526707698203148e-05, -4.721949089258305551e-05, -4.718364122306804316e-05, -4.714771813351394624e-05, -4.711172168911203887e-05, -4.707565195516633870e-05, -4.703950899709602592e-05, -4.700329288042861289e-05, -4.696700367080902427e-05, -4.693064143399407439e-05, -4.689420623585300934e-05, -4.685769814236931624e-05, -4.682111721963434000e-05, -4.678446353385684462e-05, -4.674773715135585069e-05, -4.671093813856274279e-05, -4.667406656202122887e-05, -4.663712248838834310e-05, -4.660010598442822525e-05, -4.656301711701982536e-05, -4.652585595315865874e-05, -4.648862255994185076e-05, -4.645131700458460320e-05, -4.641393935441320791e-05, -4.637648967686041859e-05, -4.633896803947432774e-05, -4.630137450991287111e-05, -4.626370915594447139e-05, -4.622597204544963748e-05, -4.618816324641498777e-05, -4.615028282694040590e-05, -4.611233085524115495e-05, -4.607430739963269185e-05, -4.603621252854716076e-05, -4.599804631052650165e-05, -4.595980881421779502e-05, -4.592150010838215229e-05, -4.588312026188930164e-05, -4.584466934371783192e-05, -4.580614742295609389e-05, -4.576755456880278298e-05, -4.572889085055936346e-05, -4.569015633764771377e-05, -4.565135109958705340e-05, -4.561247520601162891e-05, -4.557352872666453397e-05, -4.553451173139224094e-05, -4.549542429015285435e-05, -4.545626647301755422e-05, -4.541703835015576285e-05, -4.537773999185145529e-05, -4.533837146849630851e-05, -4.529893285058317587e-05, -4.525942420872421362e-05, -4.521984561362723176e-05, -4.518019713611380698e-05, -4.514047884711323822e-05, -4.510069081765481498e-05, -4.506083311888496801e-05, -4.502090582205165684e-05, -4.498090899850661946e-05, -4.494084271971294142e-05, -4.490070705724027859e-05, -4.486050208275755907e-05, -4.482022786805024239e-05, -4.477988448500495091e-05, -4.473947200561064890e-05, -4.469899050196693668e-05, -4.465844004627800621e-05, -4.461782071085325092e-05, -4.457713256810914279e-05, -4.453637569056243569e-05, -4.449555015084013333e-05, -4.445465602167427826e-05, -4.441369337589504010e-05, -4.437266228644772399e-05, -4.433156282637702928e-05, -4.429039506882870297e-05, -4.424915908705809135e-05, -4.420785495442328919e-05, -4.416648274438608843e-05, -4.412504253051464123e-05, -4.408353438647515229e-05, -4.404195838604330364e-05, -4.400031460309636024e-05, -4.395860311161508773e-05, -4.391682398568394892e-05, -4.387497729949185591e-05, -4.383306312732605797e-05, -4.379108154358171635e-05, -4.374903262275516193e-05, -4.370691643944573155e-05, -4.366473306835494134e-05, -4.362248258428872967e-05, -4.358016506214999644e-05, -4.353778057694899790e-05, -4.349532920379645519e-05, -4.345281101790540425e-05, -4.341022609459146687e-05, -4.336757450926753135e-05, -4.332485633745284618e-05, -4.328207165476642004e-05, -4.323922053692852609e-05, -4.319630305976060030e-05, -4.315331929918682716e-05, -4.311026933122701776e-05, -4.306715323200661162e-05, -4.302397107775060510e-05, -4.298072294478391057e-05, -4.293740890953190529e-05, -4.289402904852213224e-05, -4.285058343837649388e-05, -4.280707215582248040e-05, -4.276349527768550578e-05, -4.271985288089075769e-05, -4.267614504246455956e-05, -4.263237183952719447e-05, -4.258853334930198537e-05, -4.254462964911681974e-05, -4.250066081638756806e-05, -4.245662692863633230e-05, -4.241252806348396490e-05, -4.236836429864413280e-05, -4.232413571193489128e-05, -4.227984238127026784e-05, -4.223548438466304724e-05, -4.219106180022535427e-05, -4.214657470616218918e-05, -4.210202318077946434e-05, -4.205740730248683673e-05, -4.201272714977989311e-05, -4.196798280125921846e-05, -4.192317433562269132e-05, -4.187830183165738623e-05, -4.183336536825927227e-05, -4.178836502441495780e-05, -4.174330087920406898e-05, -4.169817301180853998e-05, -4.165298150150653471e-05, -4.160772642766495221e-05, -4.156240786976038573e-05, -4.151702590735148902e-05, -4.147158062010112124e-05, -4.142607208776726674e-05, -4.138050039019602839e-05, -4.133486560734060114e-05, -4.128916781924345719e-05, -4.124340710603835859e-05, -4.119758354796012857e-05, -4.115169722533839708e-05, -4.110574821858944212e-05, -4.105973660823813813e-05, -4.101366247489008515e-05, -4.096752589925287954e-05, -4.092132696212629519e-05, -4.087506574440439769e-05, -4.082874232707493447e-05, -4.078235679122155065e-05, -4.073590921801535934e-05, -4.068939968872707798e-05, -4.064282828472050275e-05, -4.059619508744499370e-05, -4.054950017845478712e-05, -4.050274363939074707e-05, -4.045592555198308262e-05, -4.040904599806017735e-05, -4.036210505954111516e-05, -4.031510281843704222e-05, -4.026803935685366748e-05, -4.022091475698246030e-05, -4.017372910111304419e-05, -4.012648247162462487e-05, -4.007917495098821967e-05, -4.003180662176623059e-05, -3.998437756661423327e-05, -3.993688786827330624e-05, -3.988933760958150992e-05, -3.984172687346561955e-05, -3.979405574294322587e-05, -3.974632430112299262e-05, -3.969853263120549675e-05, -3.965068081647587622e-05, -3.960276894031551902e-05, -3.955479708619377585e-05, -3.950676533766995905e-05, -3.945867377839519936e-05, -3.941052249210402975e-05, -3.936231156262675891e-05, -3.931404107388074341e-05, -3.926571110987280006e-05, -3.921732175469844694e-05, -3.916887309254454618e-05, -3.912036520768016955e-05, -3.907179818446951397e-05, -3.902317210736291626e-05, -3.897448706089902827e-05, -3.892574312970489142e-05, -3.887694039849751561e-05, -3.882807895207536139e-05, -3.877915887533124882e-05, -3.873018025324302649e-05, -3.868114317087663443e-05, -3.863204771338675460e-05, -3.858289396600926216e-05, -3.853368201407099007e-05, -3.848441194299228370e-05, -3.843508383826720742e-05, -3.838569778548504564e-05, -3.833625387032147335e-05, -3.828675217853189506e-05, -3.823719279596435360e-05, -3.818757580855071414e-05, -3.813790130230866328e-05, -3.808816936334371471e-05, -3.803838007784023079e-05, -3.798853353207254228e-05, -3.793862981240665603e-05, -3.788866900528061057e-05, -3.783865119722592976e-05, -3.778857647485912537e-05, -3.773844492487246101e-05, -3.768825663405591400e-05, -3.763801168927707023e-05, -3.758771017748354325e-05, -3.753735218571336907e-05, -3.748693780108858226e-05, -3.743646711080605445e-05, -3.738594020216177370e-05, -3.733535716251964651e-05, -3.728471807933562819e-05, -3.723402304014908305e-05, -3.718327213257322991e-05, -3.713246544431750377e-05, -3.708160306316745736e-05, -3.703068507698661113e-05, -3.697971157372758661e-05, -3.692868264142526241e-05, -3.687759836818773463e-05, -3.682645884222046076e-05, -3.677526415179528533e-05, -3.672401438527450921e-05, -3.667270963109956649e-05, -3.662134997779347068e-05, -3.656993551396008291e-05, -3.651846632828673430e-05, -3.646694250953505772e-05, -3.641536414655396431e-05, -3.636373132827262327e-05, -3.631204414369230325e-05, -3.626030268190735844e-05, -3.620850703208590264e-05, -3.615665728347148303e-05, -3.610475352539389507e-05, -3.605279584726096289e-05, -3.600078433855931180e-05, -3.594871908885758700e-05, -3.589660018779670253e-05, -3.584442772510341416e-05, -3.579220179058119171e-05, -3.573992247411209613e-05, -3.568758986565688111e-05, -3.563520405525693111e-05, -3.558276513302520145e-05, -3.553027318915941856e-05, -3.547772831393303358e-05, -3.542513059769753311e-05, -3.537248013088154473e-05, -3.531977700399411673e-05, -3.526702130761447915e-05, -3.521421313240574540e-05, -3.516135256910611666e-05, -3.510843970853050143e-05, -3.505547464157271102e-05, -3.500245745919648775e-05, -3.494938825244876617e-05, -3.489626711245052504e-05, -3.484309413039861694e-05, -3.478986939756616810e-05, -3.473659300530416397e-05, -3.468326504503243689e-05, -3.462988560825317109e-05, -3.457645478654160573e-05, -3.452297267154805417e-05, -3.446943935500037734e-05, -3.441585492869415138e-05, -3.436221948450664704e-05, -3.430853311438745816e-05, -3.425479591036034477e-05, -3.420100796452368034e-05, -3.414716936905186801e-05, -3.409328021618645015e-05, -3.403934059824736372e-05, -3.398535060763508157e-05, -3.393131033680955860e-05, -3.387721987831344723e-05, -3.382307932476248864e-05, -3.376888876883841806e-05, -3.371464830330261892e-05, -3.366035802098715107e-05, -3.360601801479623480e-05, -3.355162837770911719e-05, -3.349718920276975863e-05, -3.344270058309917919e-05, -3.338816261189727464e-05, -3.333357538242150511e-05, -3.327893898801034773e-05, -3.322425352207350496e-05, -3.316951907808273625e-05, -3.311473574959720810e-05, -3.305990363023053429e-05, -3.300502281367651209e-05, -3.295009339369733164e-05, -3.289511546412781783e-05, -3.284008911886367350e-05, -3.278501445188732413e-05, -3.272989155723456502e-05, -3.267472052902044668e-05, -3.261950146142964571e-05, -3.256423444870685608e-05, -3.250891958518047217e-05, -3.245355696524074209e-05, -3.239814668334236301e-05, -3.234268883401576359e-05, -3.228718351186029390e-05, -3.223163081153408130e-05, -3.217603082778054598e-05, -3.212038365539437735e-05, -3.206468938924808342e-05, -3.200894812428199584e-05, -3.195315995549432908e-05, -3.189732497796572409e-05, -3.184144328683662236e-05, -3.178551497731001705e-05, -3.172954014466308786e-05, -3.167351888424051285e-05, -3.161745129144318597e-05, -3.156133746175372290e-05, -3.150517749071378090e-05, -3.144897147392632211e-05, -3.139271950706758716e-05, -3.133642168587776430e-05, -3.128007810616254111e-05, -3.122368886379557791e-05, -3.116725405470894639e-05, -3.111077377490710906e-05, -3.105424812045720889e-05, -3.099767718749174588e-05, -3.094106107220757424e-05, -3.088439987086879579e-05, -3.082769367979672437e-05, -3.077094259538428535e-05, -3.071414671408627140e-05, -3.065730613242115851e-05, -3.060042094697404690e-05, -3.054349125438611713e-05, -3.048651715136945322e-05, -3.042949873469714926e-05, -3.037243610120542362e-05, -3.031532934779349023e-05, -3.025817857142587940e-05, -3.020098386912238188e-05, -3.014374533797287191e-05, -3.008646307512692942e-05, -3.002913717779643189e-05, -2.997176774325534433e-05, -2.991435486884188428e-05, -2.985689865194865895e-05, -2.979939919003703091e-05, -2.974185658062747210e-05, -2.968427092130172541e-05, -2.962664230970476643e-05, -2.956897084353532349e-05, -2.951125662056010098e-05, -2.945349973860400124e-05, -2.939570029555219809e-05, -2.933785838935023169e-05, -2.927997411800604480e-05, -2.922204757958010642e-05, -2.916407887220006200e-05, -2.910606809405068431e-05, -2.904801534337601130e-05, -2.898992071847952571e-05, -2.893178431772605916e-05, -2.887360623952947634e-05, -2.881538658237993588e-05, -2.875712544480839967e-05, -2.869882292541454770e-05, -2.864047912285624435e-05, -2.858209413584180327e-05, -2.852366806314243880e-05, -2.846520100359492222e-05, -2.840669305607803426e-05, -2.834814431953853851e-05, -2.828955489298017002e-05, -2.823092487545360977e-05, -2.817225436608436563e-05, -2.811354346403683785e-05, -2.805479226854201363e-05, -2.799600087888489037e-05, -2.793716939440950368e-05, -2.787829791450516814e-05, -2.781938653863560174e-05, -2.776043536630203582e-05, -2.770144449707153317e-05, -2.764241403056664736e-05, -2.758334406645499074e-05, -2.752423470447432695e-05, -2.746508604441002963e-05, -2.740589818609679684e-05, -2.734667122943177332e-05, -2.728740527436634441e-05, -2.722810042089602244e-05, -2.716875676908836164e-05, -2.710937441904660340e-05, -2.704995347093821454e-05, -2.699049402498432312e-05, -2.693099618144883573e-05, -2.687146004066466508e-05, -2.681188570300992153e-05, -2.675227326891030513e-05, -2.669262283885224144e-05, -2.663293451337461106e-05, -2.657320839305816513e-05, -2.651344457855180030e-05, -2.645364317054831320e-05, -2.639380426978736176e-05, -2.633392797706803849e-05, -2.627401439323843844e-05, -2.621406361919814614e-05, -2.615407575590013965e-05, -2.609405090434118864e-05, -2.603398916557635561e-05, -2.597389064070894325e-05, -2.591375543089266290e-05, -2.585358363733177342e-05, -2.579337536128316154e-05, -2.573313070404603851e-05, -2.567284976697710542e-05, -2.561253265148044297e-05, -2.555217945900931740e-05, -2.549179029106925348e-05, -2.543136524920684691e-05, -2.537090443502564450e-05, -2.531040795017547155e-05, -2.524987589635469513e-05, -2.518930837531030539e-05, -2.512870548884018221e-05, -2.506806733878246666e-05, -2.500739402703112263e-05, -2.494668565552536255e-05, -2.488594232625211729e-05, -2.482516414124555165e-05, -2.476435120259011370e-05, -2.470350361240911677e-05, -2.464262147288101605e-05, -2.458170488622822095e-05, -2.452075395471984626e-05, -2.445976878067415166e-05, -2.439874946644769962e-05, -2.433769611445104253e-05, -2.427660882713801951e-05, -2.421548770700841956e-05, -2.415433285660739874e-05, -2.409314437852828558e-05, -2.403192237540162723e-05, -2.397066694991116452e-05, -2.390937820478275953e-05, -2.384805624278702477e-05, -2.378670116673924190e-05, -2.372531307950165885e-05, -2.366389208397002203e-05, -2.360243828310301236e-05, -2.354095177988424744e-05, -2.347943267735191751e-05, -2.341788107858766896e-05, -2.335629708670858130e-05, -2.329468080488013008e-05, -2.323303233631896861e-05, -2.317135178426843172e-05, -2.310963925202539688e-05, -2.304789484292911356e-05, -2.298611866035027307e-05, -2.292431080772102406e-05, -2.286247138849623598e-05, -2.280060050618351117e-05, -2.273869826433210227e-05, -2.267676476652459437e-05, -2.261480011639031181e-05, -2.255280441760774415e-05, -2.249077777388027691e-05, -2.242872028896276474e-05, -2.236663206665065210e-05, -2.230451321076902622e-05, -2.224236382519950868e-05, -2.218018401385570844e-05, -2.211797388068554267e-05, -2.205573352968509082e-05, -2.199346306488986344e-05, -2.193116259036385847e-05, -2.186883221022931247e-05, -2.180647202862863831e-05, -2.174408214975386466e-05, -2.168166267783580754e-05, -2.161921371713277086e-05, -2.155673537195796662e-05, -2.149422774665460192e-05, -2.143169094559820327e-05, -2.136912507321055195e-05, -2.130653023394834394e-05, -2.124390653230560905e-05, -2.118125407281669923e-05, -2.111857296004455550e-05, -2.105586329859765875e-05, -2.099312519311827632e-05, -2.093035874828542324e-05, -2.086756406881453357e-05, -2.080474125946015393e-05, -2.074189042500447475e-05, -2.067901167027410485e-05, -2.061610510012847725e-05, -2.055317081946275286e-05, -2.049020893320735624e-05, -2.042721954633079117e-05, -2.036420276382833105e-05, -2.030115869073835988e-05, -2.023808743213122190e-05, -2.017498909311192195e-05, -2.011186377882248698e-05, -2.004871159443075471e-05, -1.998553264514701618e-05, -1.992232703621261804e-05, -1.985909487290240199e-05, -1.979583626052491149e-05, -1.973255130442471602e-05, -1.966924010997113533e-05, -1.960590278257482103e-05, -1.954253942767643677e-05, -1.947915015074931118e-05, -1.941573505729918717e-05, -1.935229425286674266e-05, -1.928882784301651478e-05, -1.922533593335334931e-05, -1.916181862951095885e-05, -1.909827603715461990e-05, -1.903470826198388325e-05, -1.897111540972107134e-05, -1.890749758612791061e-05, -1.884385489699424556e-05, -1.878018744814054266e-05, -1.871649534541793434e-05, -1.865277869471062121e-05, -1.858903760192438627e-05, -1.852527217300372193e-05, -1.846148251391991734e-05, -1.839766873067399250e-05, -1.833383092929632217e-05, -1.826996921584964119e-05, -1.820608369641420101e-05, -1.814217447711920822e-05, -1.807824166410272257e-05, -1.801428536354271264e-05, -1.795030568164554972e-05, -1.788630272463741209e-05, -1.782227659877825095e-05, -1.775822741036422309e-05, -1.769415526570238150e-05, -1.763006027113846487e-05, -1.756594253304576418e-05, -1.750180215781330152e-05, -1.743763925187698393e-05, -1.737345392167962684e-05, -1.730924627370221980e-05, -1.724501641445209165e-05, -1.718076445045441995e-05, -1.711649048826611547e-05, -1.705219463447864794e-05, -1.698787699569220475e-05, -1.692353767854390392e-05, -1.685917678969634225e-05, -1.679479443582592314e-05, -1.673039072365411893e-05, -1.666596575990734186e-05, -1.660151965134806746e-05, -1.653705250476049255e-05, -1.647256442695611890e-05, -1.640805552475914703e-05, -1.634352590503773843e-05, -1.627897567466401197e-05, -1.621440494054512992e-05, -1.614981380961173096e-05, -1.608520238880631898e-05, -1.602057078511175730e-05, -1.595591910552515634e-05, -1.589124745706089244e-05, -1.582655594676431624e-05, -1.576184468170053118e-05, -1.569711376895678554e-05, -1.563236331564525747e-05, -1.556759342889150823e-05, -1.550280421585136867e-05, -1.543799578369942972e-05, -1.537316823963152926e-05, -1.530832169086478607e-05, -1.524345624464016455e-05, -1.517857200821094501e-05, -1.511366908885959309e-05, -1.504874759388623339e-05, -1.498380763061128203e-05, -1.491884930637534161e-05, -1.485387272854179314e-05, -1.478887800448523915e-05, -1.472386524160838499e-05, -1.465883454733069374e-05, -1.459378602909070703e-05, -1.452871979434894701e-05, -1.446363595057634246e-05, -1.439853460527102888e-05, -1.433341586594685929e-05, -1.426827984013601482e-05, -1.420312663538899794e-05, -1.413795635927707525e-05, -1.407276911938075790e-05, -1.400756502330686586e-05, -1.394234417867683381e-05, -1.387710669312938101e-05, -1.381185267432040621e-05, -1.374658222992559995e-05, -1.368129546762877750e-05, -1.361599249513903976e-05, -1.355067342017897071e-05, -1.348533835048755965e-05, -1.341998739382256106e-05, -1.335462065794904608e-05, -1.328923825065356831e-05, -1.322384027974695052e-05, -1.315842685303795553e-05, -1.309299807836211236e-05, -1.302755406357000692e-05, -1.296209491651834069e-05, -1.289662074508715258e-05, -1.283113165716808249e-05, -1.276562776066708177e-05, -1.270010916350709666e-05, -1.263457597361630975e-05, -1.256902829894250226e-05, -1.250346624745578999e-05, -1.243788992712224162e-05, -1.237229944593282352e-05, -1.230669491189147689e-05, -1.224107643300638488e-05, -1.217544411730427899e-05, -1.210979807283306143e-05, -1.204413840763560304e-05, -1.197846522977856106e-05, -1.191277864734061211e-05, -1.184707876840059544e-05, -1.178136570106939525e-05, -1.171563955344897989e-05, -1.164990043366421299e-05, -1.158414844985115256e-05, -1.151838371014804199e-05, -1.145260632270963330e-05, -1.138681639571007899e-05, -1.132101403731644526e-05, -1.125519935571766024e-05, -1.118937245911277070e-05, -1.112353345569891083e-05, -1.105768245370347252e-05, -1.099181956134284978e-05, -1.092594488685452607e-05, -1.086005853848216138e-05, -1.079416062447846204e-05, -1.072825125310492318e-05, -1.066233053263457990e-05, -1.059639857134022338e-05, -1.053045547751163117e-05, -1.046450135944675470e-05, -1.039853632543969142e-05, -1.033256048380991076e-05, -1.026657394287563705e-05, -1.020057681095667348e-05, -1.013456919638876609e-05, -1.006855120751189777e-05, -1.000252295267279211e-05, -9.936484540227837357e-06, -9.870436078531165237e-06, -9.804377675952008394e-06, -9.738309440865735377e-06, -9.672231481642054859e-06, -9.606143906674004495e-06, -9.540046824351460815e-06, -9.473940343063878524e-06, -9.407824571214813732e-06, -9.341699617209951991e-06, -9.275565589459933995e-06, -9.209422596380130270e-06, -9.143270746393407583e-06, -9.077110147918212885e-06, -9.010940909386020491e-06, -8.944763139229397391e-06, -8.878576945884786596e-06, -8.812382437795219340e-06, -8.746179723398434596e-06, -8.679968911144321175e-06, -8.613750109482972873e-06, -8.547523426867451488e-06, -8.481288971753637743e-06, -8.415046852602933323e-06, -8.348797177870437988e-06, -8.282540056022232432e-06, -8.216275595523619773e-06, -8.150003904841836058e-06, -8.083725092448720113e-06, -8.017439266808902511e-06, -7.951146536397195162e-06, -7.884847009686693888e-06, -7.818540795151522808e-06, -7.752228001266653074e-06, -7.685908736510643871e-06, -7.619583109353798352e-06, -7.553251228272577601e-06, -7.486913201752400073e-06, -7.420569138261037989e-06, -7.354219146277838273e-06, -7.287863334281707392e-06, -7.221501810742209040e-06, -7.155134684137000312e-06, -7.088762062939835172e-06, -7.022384055623459619e-06, -6.956000770662215458e-06, -6.889612316520211492e-06, -6.823218801665839121e-06, -6.756820334574489625e-06, -6.690417023701942084e-06, -6.624008977513601262e-06, -6.557596304472552743e-06, -6.491179113030542883e-06, -6.424757511645444628e-06, -6.358331608769371947e-06, -6.291901512851416593e-06, -6.225467332337438891e-06, -6.159029175672874801e-06, -6.092587151287801035e-06, -6.026141367629216330e-06, -5.959691933119542761e-06, -5.893238956188945132e-06, -5.826782545263297176e-06, -5.760322808755180988e-06, -5.693859855078471233e-06, -5.627393792651157463e-06, -5.560924729868466914e-06, -5.494452775132345487e-06, -5.427978036839401928e-06, -5.361500623368918923e-06, -5.295020643115240255e-06, -5.228538204446120490e-06, -5.162053415735154490e-06, -5.095566385346757821e-06, -5.029077221639007700e-06, -4.962586032963377875e-06, -4.896092927667596515e-06, -4.829598014083636977e-06, -4.763101400545231056e-06, -4.696603195378903147e-06, -4.630103506891878843e-06, -4.563602443401541358e-06, -4.497100113208617004e-06, -4.430596624599977171e-06, -4.364092085863196292e-06, -4.297586605274620526e-06, -4.231080291102105378e-06, -4.164573251607798195e-06, -4.098065595036145030e-06, -4.031557429631450484e-06, -3.965048863628855952e-06, -3.898540005242276185e-06, -3.832030962693874341e-06, -3.765521844187210617e-06, -3.699012757910042539e-06, -3.632503812048959153e-06, -3.565995114777337058e-06, -3.499486774258142398e-06, -3.432978898643774579e-06, -3.366471596078805154e-06, -3.299964974688004160e-06, -3.233459142593940199e-06, -3.166954207904870402e-06, -3.100450278717657613e-06, -3.033947463120425839e-06, -2.967445869180661126e-06, -2.900945604962726088e-06, -2.834446778515854061e-06, -2.767949497876941768e-06, -2.701453871070409137e-06, -2.634960006110899218e-06, -2.568468010991362548e-06, -2.501977993700562356e-06, -2.435490062211124199e-06, -2.369004324482262986e-06, -2.302520888462612066e-06, -2.236039862078189855e-06, -2.169561353249982125e-06, -2.103085469881950976e-06, -2.036612319863774572e-06, -1.970142011070731090e-06, -1.903674651366443959e-06, -1.837210348590865637e-06, -1.770749210574942715e-06, -1.704291345143350352e-06, -1.637836860087722860e-06, -1.571385863196045953e-06, -1.504938462240668908e-06, -1.438494764969223944e-06, -1.372054879122238154e-06, -1.305618912421106067e-06, -1.239186972570881249e-06, -1.172759167263051399e-06, -1.106335604163540549e-06, -1.039916390927315092e-06, -9.735016352012001601e-07, -9.070914445970327101e-07, -8.406859267211084080e-07, -7.742851891621704915e-07, -7.078893394823363529e-07, -6.414984852347019544e-07, -5.751127339513232772e-07, -5.087321931460035895e-07, -4.423569703141155168e-07, -3.759871729353959328e-07, -3.096229084589640643e-07, -2.432642843357138307e-07, -1.769114079767000156e-07, -1.105643867855239894e-07, -4.422332814631909546e-08, 2.211166058529733188e-08, 8.844047206760070168e-08, 1.547629989699757696e-07, 2.210791339997171707e-07, 2.873887698726182285e-07, 3.536917993249703845e-07, 4.199881151255794988e-07, 4.862776100433902122e-07, 5.525601768890765617e-07, 6.188357084826713981e-07, 6.851040976655798017e-07, 7.513652373125717983e-07, 8.176190203023841749e-07, 8.838653395445105435e-07, 9.501040879764160852e-07, 1.016335158548918608e-06, 1.082558444235245449e-06, 1.148773838043007974e-06, 1.214981232984837704e-06, 1.281180522105148317e-06, 1.347371598477352724e-06, 1.413554355189257254e-06, 1.479728685355048230e-06, 1.545894482112532126e-06, 1.612051638620324260e-06, 1.678200048069857819e-06, 1.744339603667825714e-06, 1.810470198645198299e-06, 1.876591726269244257e-06, 1.942704079814115260e-06, 2.008807152587665363e-06, 2.074900837928602428e-06, 2.140985029191937801e-06, 2.207059619760951278e-06, 2.273124503044418346e-06, 2.339179572473820485e-06, 2.405224721515326017e-06, 2.471259843652253566e-06, 2.537284832397046560e-06, 2.603299581288503009e-06, 2.669303983891933054e-06, 2.735297933796376044e-06, 2.801281324626592821e-06, 2.867254050025518168e-06, 2.933216003666234886e-06, 2.999167079249206543e-06, 3.065107170502408335e-06, 3.131036171178617852e-06, 3.196953975067318860e-06, 3.262860475977199053e-06, 3.328755567748116092e-06, 3.394639144248342206e-06, 3.460511099371744839e-06, 3.526371327049753114e-06, 3.592219721233880576e-06, 3.658056175907675129e-06, 3.723880585083884024e-06, 3.789692842804696528e-06, 3.855492843138940673e-06, 3.921280480194003969e-06, 3.987055648098393423e-06, 4.052818241013632117e-06, 4.118568153131511854e-06, 4.184305278674260873e-06, 4.250029511891744402e-06, 4.315740747073451026e-06, 4.381438878530942159e-06, 4.447123800609871445e-06, 4.512795407687135340e-06, 4.578453594168151591e-06, 4.644098254498782922e-06, 4.709729283150750279e-06, 4.775346574618987546e-06, 4.840950023448105395e-06, 4.906539524203282999e-06, 4.972114971482164610e-06, 5.037676259923831331e-06, 5.103223284191324289e-06, 5.168755938983619132e-06, 5.234274119032794407e-06, 5.299777719101332905e-06, 5.365266633993939472e-06, 5.430740758543116030e-06, 5.496199987606368918e-06, 5.561644216092793013e-06, 5.627073338933821995e-06, 5.692487251095321430e-06, 5.757885847589228703e-06, 5.823269023444617521e-06, 5.888636673734142284e-06, 5.953988693571315719e-06, 6.019324978095978033e-06, 6.084645422483316963e-06, 6.149949921955672030e-06, 6.215238371750588691e-06, 6.280510667161885035e-06, 6.345766703507678835e-06, 6.411006376142189252e-06, 6.476229580467715581e-06, 6.541436211905490843e-06, 6.606626165922118532e-06, 6.671799338026901919e-06, 6.736955623757359793e-06, 6.802094918688182979e-06, 6.867217118442988623e-06, 6.932322118662531039e-06, 6.997409815045606629e-06, 7.062480103317158853e-06, 7.127532879243022534e-06, 7.192568038627189636e-06, 7.257585477311975282e-06, 7.322585091175258965e-06, 7.387566776142293887e-06, 7.452530428168424092e-06, 7.517475943247969848e-06, 7.582403217426076787e-06, 7.647312146769644041e-06, 7.712202627393860936e-06, 7.777074555459384682e-06, 7.841927827157862035e-06, 7.906762338723862299e-06, 7.971577986432199007e-06, 8.036374666594917873e-06, 8.101152275573358539e-06, 8.165910709760715864e-06, 8.230649865593913628e-06, 8.295369639550853372e-06, 8.360069928150541452e-06, 8.424750627950366674e-06, 8.489411635557913018e-06, 8.554052847613675080e-06, 8.618674160802781013e-06, 8.683275471852361637e-06, 8.747856677531628370e-06, 8.812417674649247425e-06, 8.876958360064879787e-06, 8.941478630672265962e-06, 9.005978383410696503e-06, 9.070457515262431942e-06, 9.134915923249927914e-06, 9.199353504447613995e-06, 9.263770155964612537e-06, 9.328165774956570023e-06, 9.392540258622843224e-06, 9.456893504206768556e-06, 9.521225408992809274e-06, 9.585535870318339391e-06, 9.649824785556542086e-06, 9.714092052127970008e-06, 9.778337567497951663e-06, 9.842561229176681196e-06, 9.906762934716558712e-06, 9.970942581723809869e-06, 1.003510006784146730e-05, 1.009923529076086992e-05, 1.016334814821915910e-05, 1.022743853799645299e-05, 1.029150635792752197e-05, 1.035555150588753484e-05, 1.041957387978941772e-05, 1.048357337760988170e-05, 1.054754989736080837e-05, 1.061150333710091857e-05, 1.067543359494451034e-05, 1.073934056904449287e-05, 1.080322415760388751e-05, 1.086708425887332566e-05, 1.093092077114808581e-05, 1.099473359277996217e-05, 1.105852262216288717e-05, 1.112228775773042082e-05, 1.118602889798153779e-05, 1.124974594145216879e-05, 1.131343878672699975e-05, 1.137710733245082038e-05, 1.144075147730020612e-05, 1.150437112000941030e-05, 1.156796615936768746e-05, 1.163153649420508189e-05, 1.169508202340125704e-05, 1.175860264589699997e-05, 1.182209826066303357e-05, 1.188556876674012528e-05, 1.194901406320774346e-05, 1.201243404919589725e-05, 1.207582862389638345e-05, 1.213919768653463961e-05, 1.220254113639553282e-05, 1.226585887282063903e-05, 1.232915079519409418e-05, 1.239241680295136612e-05, 1.245565679559095212e-05, 1.251887067264285060e-05, 1.258205833370894258e-05, 1.264521967843156846e-05, 1.270835460650822912e-05, 1.277146301768847222e-05, 1.283454481177445633e-05, 1.289759988861804394e-05, 1.296062814813230918e-05, 1.302362949027484457e-05, 1.308660381505620419e-05, 1.314955102255155213e-05, 1.321247101287247486e-05, 1.327536368619254644e-05, 1.333822894274476875e-05, 1.340106668280744300e-05, 1.346387680671575205e-05, 1.352665921485904142e-05, 1.358941380767814609e-05, 1.365214048567692535e-05, 1.371483914940542215e-05, 1.377750969947115228e-05, 1.384015203653677170e-05, 1.390276606131994100e-05, 1.396535167459082155e-05, 1.402790877718344103e-05, 1.409043726997894584e-05, 1.415293705391709707e-05, 1.421540802999349224e-05, 1.427785009925982276e-05, 1.434026316282114141e-05, 1.440264712184729903e-05, 1.446500187755630194e-05, 1.452732733122554704e-05, 1.458962338418935692e-05, 1.465188993783615417e-05, 1.471412689361997593e-05, 1.477633415304368741e-05, 1.483851161767046766e-05, 1.490065918912111766e-05, 1.496277676907404850e-05, 1.502486425926303166e-05, 1.508692156148807488e-05, 1.514894857759921848e-05, 1.521094520950748911e-05, 1.527291135918257725e-05, 1.533484692865006401e-05, 1.539675182000266630e-05, 1.545862593538375532e-05, 1.552046917699872542e-05, 1.558228144711225644e-05, 1.564406264804832057e-05, 1.570581268218790546e-05, 1.576753145198002567e-05, 1.582921885992812609e-05, 1.589087480858720884e-05, 1.595249920058940343e-05, 1.601409193861598766e-05, 1.607565292540871744e-05, 1.613718206377846319e-05, 1.619867925658853686e-05, 1.626014440676605227e-05, 1.632157741729923500e-05, 1.638297819123478639e-05, 1.644434663168936253e-05, 1.650568264183543561e-05, 1.656698612489902045e-05, 1.662825698418466877e-05, 1.668949512304790674e-05, 1.675070044490636496e-05, 1.681187285325121009e-05, 1.687301225161674304e-05, 1.693411854361922706e-05, 1.699519163292675364e-05, 1.705623142327302881e-05, 1.711723781845215546e-05, 1.717821072233259580e-05, 1.723915003882677306e-05, 1.730005567193022132e-05, 1.736092752569090941e-05, 1.742176550422076052e-05, 1.748256951170675176e-05, 1.754333945238354138e-05, 1.760407523055819543e-05, 1.766477675060795153e-05, 1.772544391696624289e-05, 1.778607663413142267e-05, 1.784667480667756202e-05, 1.790723833922477681e-05, 1.796776713647737798e-05, 1.802826110319427958e-05, 1.808872014419973581e-05, 1.814914416439470139e-05, 1.820953306872957403e-05, 1.826988676222876859e-05, 1.833020514998828776e-05, 1.839048813716237282e-05, 1.845073562897146577e-05, 1.851094753071355276e-05, 1.857112374773688967e-05, 1.863126418546484048e-05, 1.869136874939320066e-05, 1.875143734507669544e-05, 1.881146987814003870e-05, 1.887146625427545962e-05, 1.893142637924001928e-05, 1.899135015886656787e-05, 1.905123749904774936e-05, 1.911108830574707385e-05, 1.917090248499600383e-05, 1.923067994289438446e-05, 1.929042058560794648e-05, 1.935012431937899923e-05, 1.940979105051055716e-05, 1.946942068537723953e-05, 1.952901313042262763e-05, 1.958856829215692696e-05, 1.964808607716772118e-05, 1.970756639210396319e-05, 1.976700914368692894e-05, 1.982641423870776105e-05, 1.988578158402738410e-05, 1.994511108657423120e-05, 2.000440265335488949e-05, 2.006365619143836567e-05, 2.012287160796681282e-05, 2.018204881015286392e-05, 2.024118770528025868e-05, 2.030028820070068580e-05, 2.035935020384516030e-05, 2.041837362220779101e-05, 2.047735836335672419e-05, 2.053630433493164651e-05, 2.059521144464123379e-05, 2.065407960027394895e-05, 2.071290870968215848e-05, 2.077169868079307269e-05, 2.083044942160608266e-05, 2.088916084019290929e-05, 2.094783284469516727e-05, 2.100646534333513253e-05, 2.106505824439981804e-05, 2.112361145625193102e-05, 2.118212488732720649e-05, 2.124059844613458004e-05, 2.129903204125380939e-05, 2.135742558134872199e-05, 2.141577897513819901e-05, 2.147409213143347534e-05, 2.153236495910913038e-05, 2.159059736711390972e-05, 2.164878926447853821e-05, 2.170694056030295682e-05, 2.176505116375364944e-05, 2.182312098408764102e-05, 2.188114993062601927e-05, 2.193913791276493600e-05, 2.199708483998603572e-05, 2.205499062182792762e-05, 2.211285516792269265e-05, 2.217067838796769769e-05, 2.222846019173838910e-05, 2.228620048908336979e-05, 2.234389918993760616e-05, 2.240155620429379159e-05, 2.245917144223920592e-05, 2.251674481392688587e-05, 2.257427622958634508e-05, 2.263176559953422975e-05, 2.268921283414818263e-05, 2.274661784389055315e-05, 2.280398053930600879e-05, 2.286130083100835187e-05, 2.291857862968895259e-05, 2.297581384612683549e-05, 2.303300639116039877e-05, 2.309015617572410768e-05, 2.314726311081969208e-05, 2.320432710752686305e-05, 2.326134807701399232e-05, 2.331832593051207783e-05, 2.337526057933821675e-05, 2.343215193489331166e-05, 2.348899990864913810e-05, 2.354580441215627616e-05, 2.360256535705453239e-05, 2.365928265504743731e-05, 2.371595621792531522e-05, 2.377258595756310901e-05, 2.382917178590760013e-05, 2.388571361498753232e-05, 2.394221135691156858e-05, 2.399866492386570939e-05, 2.405507422812357574e-05, 2.411143918203144707e-05, 2.416775969801821227e-05, 2.422403568859341131e-05, 2.428026706634716750e-05, 2.433645374394754471e-05, 2.439259563415131828e-05, 2.444869264978848447e-05, 2.450474470377273994e-05, 2.456075170909893728e-05, 2.461671357884092335e-05, 2.467263022616160209e-05, 2.472850156429786403e-05, 2.478432750657096761e-05, 2.484010796638401157e-05, 2.489584285722237544e-05, 2.495153209265067699e-05, 2.500717558632380735e-05, 2.506277325197144392e-05, 2.511832500340816388e-05, 2.517383075453162480e-05, 2.522929041932191411e-05, 2.528470391183992278e-05, 2.534007114623689988e-05, 2.539539203674007672e-05, 2.545066649766240097e-05, 2.550589444340035128e-05, 2.556107578843160288e-05, 2.561621044732502597e-05, 2.567129833472589988e-05, 2.572633936536603008e-05, 2.578133345406152549e-05, 2.583628051571252074e-05, 2.589118046530129231e-05, 2.594603321790221964e-05, 2.600083868866652842e-05, 2.605559679283314271e-05, 2.611030744572566617e-05, 2.616497056275292075e-05, 2.621958605940640218e-05, 2.627415385127287710e-05, 2.632867385400720342e-05, 2.638314598336713321e-05, 2.643757015518645502e-05, 2.649194628538444334e-05, 2.654627428997408161e-05, 2.660055408504939398e-05, 2.665478558678316176e-05, 2.670896871144956623e-05, 2.676310337539921139e-05, 2.681718949506940015e-05, 2.687122698699395988e-05, 2.692521576777654737e-05, 2.697915575412486555e-05, 2.703304686282392773e-05, 2.708688901074614747e-05, 2.714068211485858579e-05, 2.719442609221093009e-05, 2.724812085993314953e-05, 2.730176633525766025e-05, 2.735536243549511031e-05, 2.740890907804396139e-05, 2.746240618040069384e-05, 2.751585366013556115e-05, 2.756925143491435539e-05, 2.762259942249621842e-05, 2.767589754072181054e-05, 2.772914570752046964e-05, 2.778234384092020617e-05, 2.783549185902098433e-05, 2.788858968002907773e-05, 2.794163722223011681e-05, 2.799463440399926339e-05, 2.804758114381082618e-05, 2.810047736021434398e-05, 2.815332297185626294e-05, 2.820611789747790366e-05, 2.825886205590322667e-05, 2.831155536604887485e-05, 2.836419774692169670e-05, 2.841678911761648645e-05, 2.846932939732586048e-05, 2.852181850532578658e-05, 2.857425636098550784e-05, 2.862664288376494729e-05, 2.867897799321532794e-05, 2.873126160897651311e-05, 2.878349365078645256e-05, 2.883567403846789418e-05, 2.888780269193703731e-05, 2.893987953120184209e-05, 2.899190447636196166e-05, 2.904387744760668894e-05, 2.909579836522426050e-05, 2.914766714958790078e-05, 2.919948372116564433e-05, 2.925124800051749990e-05, 2.930295990829401054e-05, 2.935461936524508641e-05, 2.940622629220637435e-05, 2.945778061010872770e-05, 2.950928223997591256e-05, 2.956073110292470259e-05, 2.961212712016298514e-05, 2.966347021299862451e-05, 2.971476030282616361e-05, 2.976599731113574148e-05, 2.981718115951167026e-05, 2.986831176963150350e-05, 2.991938906326468427e-05, 2.997041296228151355e-05, 3.002138338863966544e-05, 3.007230026439307427e-05, 3.012316351169038960e-05, 3.017397305277212002e-05, 3.022472880998073314e-05, 3.027543070574614429e-05, 3.032607866259552510e-05, 3.037667260315110124e-05, 3.042721245013003384e-05, 3.047769812634248146e-05, 3.052812955470081923e-05, 3.057850665820606255e-05, 3.062882935995674068e-05, 3.067909758314753125e-05, 3.072931125106619744e-05, 3.077947028710335933e-05, 3.082957461474135374e-05, 3.087962415755125264e-05, 3.092961883921477084e-05, 3.097955858350026447e-05, 3.102944331427280047e-05, 3.107927295550098711e-05, 3.112904743124529167e-05, 3.117876666565650904e-05, 3.122843058299570423e-05, 3.127803910761214889e-05, 3.132759216395218464e-05, 3.137708967656856077e-05, 3.142653157009536204e-05, 3.147591776928023664e-05, 3.152524819895936463e-05, 3.157452278406660591e-05, 3.162374144964039845e-05, 3.167290412081276045e-05, 3.172201072280691179e-05, 3.177106118095792818e-05, 3.182005542068990509e-05, 3.186899336752551228e-05, 3.191787494709508757e-05, 3.196670008511159856e-05, 3.201546870740251135e-05, 3.206418073988533503e-05, 3.211283610857870767e-05, 3.216143473959812046e-05, 3.220997655916720697e-05, 3.225846149359311147e-05, 3.230688946929825600e-05, 3.235526041279544442e-05, 3.240357425069739658e-05, 3.245183090972518481e-05, 3.250003031668646173e-05, 3.254817239849574844e-05, 3.259625708217166298e-05, 3.264428429482667466e-05, 3.269225396367566244e-05, 3.274016601603388886e-05, 3.278802037931504169e-05, 3.283581698103980591e-05, 3.288355574882315818e-05, 3.293123661038310828e-05, 3.297885949353848321e-05, 3.302642432620922540e-05, 3.307393103641435980e-05, 3.312137955228078946e-05, 3.316876980202983791e-05, 3.321610171398690529e-05, 3.326337521657877821e-05, 3.331059023833407020e-05, 3.335774670788082288e-05, 3.340484455395574884e-05, 3.345188370539090266e-05, 3.349886409112275441e-05, 3.354578564018979078e-05, 3.359264828173098367e-05, 3.363945194499389462e-05, 3.368619655932252494e-05, 3.373288205416521008e-05, 3.377950835907347443e-05, 3.382607540370153665e-05, 3.387258311780450042e-05, 3.391903143124689929e-05, 3.396542027398990988e-05, 3.401174957610043209e-05, 3.405801926774837857e-05, 3.410422927920756919e-05, 3.415037954085305442e-05, 3.419646998316986351e-05, 3.424250053674063776e-05, 3.428847113225402636e-05, 3.433438170050266024e-05, 3.438023217238102438e-05, 3.442602247889427365e-05, 3.447175255114782457e-05, 3.451742232034502419e-05, 3.456303171780624562e-05, 3.460858067494838311e-05, 3.465406912329275986e-05, 3.469949699447192471e-05, 3.474486422021721082e-05, 3.479017073236677241e-05, 3.483541646286435819e-05, 3.488060134375639760e-05, 3.492572530720101324e-05, 3.497078828545785646e-05, 3.501579021088563402e-05, 3.506073101596106812e-05, 3.510561063325864207e-05, 3.515042899545846083e-05, 3.519518603535274265e-05, 3.523988168583568173e-05, 3.528451587990137476e-05, 3.532908855066271988e-05, 3.537359963133031537e-05, 3.541804905522149925e-05, 3.546243675576815548e-05, 3.550676266649485375e-05, 3.555102672104659830e-05, 3.559522885316753008e-05, 3.563936899670852300e-05, 3.568344708563347901e-05, 3.572746305400971266e-05, 3.577141683600514564e-05, 3.581530836590768020e-05, 3.585913757810419946e-05, 3.590290440708932235e-05, 3.594660878747296592e-05, 3.599025065395911532e-05, 3.603382994137336253e-05, 3.607734658464116810e-05, 3.612080051879810685e-05, 3.616419167898762496e-05, 3.620752000046160914e-05, 3.625078541857795398e-05, 3.629398786880920843e-05, 3.633712728673011431e-05, 3.638020360802413176e-05, 3.642321676849131335e-05, 3.646616670402856477e-05, 3.650905335064751387e-05, 3.655187664447268780e-05, 3.659463652173178911e-05, 3.663733291876354267e-05, 3.667996577201598123e-05, 3.672253501804429061e-05, 3.676504059351925970e-05, 3.680748243521497472e-05, 3.684986048001525673e-05, 3.689217466492160336e-05, 3.693442492703313113e-05, 3.697661120356514233e-05, 3.701873343184656367e-05, 3.706079154931041881e-05, 3.710278549350199377e-05, 3.714471520207691246e-05, 3.718658061280077757e-05, 3.722838166354802534e-05, 3.727011829230930494e-05, 3.731179043717978262e-05, 3.735339803636760528e-05, 3.739494102819165074e-05, 3.743641935107954908e-05, 3.747783294357584803e-05, 3.751918174433018839e-05, 3.756046569210537455e-05, 3.760168472577544329e-05, 3.764283878432580604e-05, 3.768392780685133800e-05, 3.772495173256410985e-05, 3.776591050078189520e-05, 3.780680405093636987e-05, 3.784763232257063858e-05, 3.788839525533798806e-05, 3.792909278900918516e-05, 3.796972486346157378e-05, 3.801029141868606122e-05, 3.805079239478626439e-05, 3.809122773197775761e-05, 3.813159737058667673e-05, 3.817190125105725430e-05, 3.821213931394251581e-05, 3.825231149990237551e-05, 3.829241774972113276e-05, 3.833245800428792247e-05, 3.837243220460492121e-05, 3.841234029179304600e-05, 3.845218220708033981e-05, 3.849195789181015728e-05, 3.853166728743896924e-05, 3.857131033553463473e-05, 3.861088697778414626e-05, 3.865039715598416343e-05, 3.868984081203939333e-05, 3.872921788797926019e-05, 3.876852832593956203e-05, 3.880777206816981613e-05, 3.884694905703905949e-05, 3.888605923502508137e-05, 3.892510254472087431e-05, 3.896407892883425460e-05, 3.900298833018700853e-05, 3.904183069171325929e-05, 3.908060595646912312e-05, 3.911931406761218406e-05, 3.915795496842756896e-05, 3.919652860230765938e-05, 3.923503491275955225e-05, 3.927347384341062318e-05, 3.931184533799937170e-05, 3.935014934037406607e-05, 3.938838579450868100e-05, 3.942655464448525905e-05, 3.946465583450110024e-05, 3.950268930887556543e-05, 3.954065501203142806e-05, 3.957855288851900438e-05, 3.961638288299701731e-05, 3.965414494024026716e-05, 3.969183900514558120e-05, 3.972946502271566582e-05, 3.976702293807396011e-05, 3.980451269646340253e-05, 3.984193424323772349e-05, 3.987928752386679854e-05, 3.991657248394353986e-05, 3.995378906916661674e-05, 3.999093722535633245e-05, 4.002801689845273357e-05, 4.006502803450734981e-05, 4.010197057968979402e-05, 4.013884448028637986e-05, 4.017564968269825835e-05, 4.021238613344891915e-05, 4.024905377917294879e-05, 4.028565256662237996e-05, 4.032218244267283088e-05, 4.035864335430684242e-05, 4.039503524862931444e-05, 4.043135807286546613e-05, 4.046761177435309078e-05, 4.050379630054878308e-05, 4.053991159902681435e-05, 4.057595761747716739e-05, 4.061193430371236014e-05, 4.064784160565806741e-05, 4.068367947135865024e-05, 4.071944784897670190e-05, 4.075514668679290566e-05, 4.079077593320377140e-05, 4.082633553672938099e-05, 4.086182544600235647e-05, 4.089724560977567308e-05, 4.093259597692028762e-05, 4.096787649642571436e-05, 4.100308711739792446e-05, 4.103822778906646103e-05, 4.107329846077460673e-05, 4.110829908198590261e-05, 4.114322960228217614e-05, 4.117808997136296529e-05, 4.121288013905112247e-05, 4.124760005528381565e-05, 4.128224967011847116e-05, 4.131682893373180465e-05, 4.135133779641953655e-05, 4.138577620859522647e-05, 4.142014412079614153e-05, 4.145444148367428451e-05, 4.148866824800247899e-05, 4.152282436467342065e-05, 4.155690978469872180e-05, 4.159092445920843710e-05, 4.162486833945703337e-05, 4.165874137681381480e-05, 4.169254352276957718e-05, 4.172627472893500198e-05, 4.175993494703881317e-05, 4.179352412893502783e-05, 4.182704222659411992e-05, 4.186048919210231552e-05, 4.189386497767530801e-05, 4.192716953564272009e-05, 4.196040281845473096e-05, 4.199356477868637926e-05, 4.202665536902865226e-05, 4.205967454229462519e-05, 4.209262225141793655e-05, 4.212549844945304563e-05, 4.215830308957326737e-05, 4.219103612507929692e-05, 4.222369750938170655e-05, 4.225628719602261612e-05, 4.228880513865911837e-05, 4.232125129106968246e-05, 4.235362560715797580e-05, 4.238592804094620299e-05, 4.241815854657309323e-05, 4.245031707830762910e-05, 4.248240359053443007e-05, 4.251441803775934979e-05, 4.254636037461582537e-05, 4.257823055584839753e-05, 4.261002853633369673e-05, 4.264175427106399035e-05, 4.267340771515343040e-05, 4.270498882384373887e-05, 4.273649755248986232e-05, 4.276793385657290777e-05, 4.279929769169909241e-05, 4.283058901359216772e-05, 4.286180777809798668e-05, 4.289295394119058884e-05, 4.292402745895739419e-05, 4.295502828761224069e-05, 4.298595638349492350e-05, 4.301681170306265688e-05, 4.304759420289680299e-05, 4.307830383970125918e-05, 4.310894057030116371e-05, 4.313950435164847939e-05, 4.316999514081361811e-05, 4.320041289498988607e-05, 4.323075757149889804e-05, 4.326102912777694348e-05, 4.329122752138731938e-05, 4.332135271001910372e-05, 4.335140465148027756e-05, 4.338138330370346459e-05, 4.341128862474416246e-05, 4.344112057278009907e-05, 4.347087910611626733e-05, 4.350056418317673943e-05, 4.353017576251054185e-05, 4.355971380279010361e-05, 4.358917826281141214e-05, 4.361856910149254277e-05, 4.364788627787942541e-05, 4.367712975113747582e-05, 4.370629948055733508e-05, 4.373539542555342631e-05, 4.376441754566383265e-05, 4.379336580054934861e-05, 4.382224014999874518e-05, 4.385104055392067228e-05, 4.387976697234939139e-05, 4.390841936544297310e-05, 4.393699769348280925e-05, 4.396550191687798357e-05, 4.399393199615812274e-05, 4.402228789197839729e-05, 4.405056956511863389e-05, 4.407877697648271225e-05, 4.410691008709791464e-05, 4.413496885812013680e-05, 4.416295325082549895e-05, 4.419086322661632243e-05, 4.421869874701974735e-05, 4.424645977368744801e-05, 4.427414626839465709e-05, 4.430175819304524109e-05, 4.432929550966448358e-05, 4.435675818040338140e-05, 4.438414616753823125e-05, 4.441145943346901022e-05, 4.443869794072451894e-05, 4.446586165195644556e-05, 4.449295052993732614e-05, 4.451996453757336530e-05, 4.454690363789025353e-05, 4.457376779403927257e-05, 4.460055696930103594e-05, 4.462727112707750649e-05, 4.465391023089765457e-05, 4.468047424441583173e-05, 4.470696313141063233e-05, 4.473337685579034163e-05, 4.475971538158624762e-05, 4.478597867295144164e-05, 4.481216669417260905e-05, 4.483827940965693753e-05, 4.486431678393764646e-05, 4.489027878167864226e-05, 4.491616536766265312e-05, 4.494197650680212524e-05, 4.496771216413754233e-05, 4.499337230483223499e-05, 4.501895689417551130e-05, 4.504446589758771878e-05, 4.506989928060684084e-05, 4.509525700890582375e-05, 4.512053904827884791e-05, 4.514574536464682341e-05, 4.517087592406145575e-05, 4.519593069269382791e-05, 4.522090963684503222e-05, 4.524581272294545892e-05, 4.527063991754780981e-05, 4.529539118733211944e-05, 4.532006649910945499e-05, 4.534466581980918363e-05, 4.536918911649593354e-05, 4.539363635635616334e-05, 4.541800750670470796e-05, 4.544230253498265091e-05, 4.546652140875868627e-05, 4.549066409572691646e-05, 4.551473056371179885e-05, 4.553872078066159318e-05, 4.556263471465155990e-05, 4.558647233388861549e-05, 4.561023360669986024e-05, 4.563391850154316278e-05, 4.565752698700598777e-05, 4.568105903179950735e-05, 4.570451460476323608e-05, 4.572789367486408907e-05, 4.575119621119563655e-05, 4.577442218298162079e-05, 4.579757155957008105e-05, 4.582064431043692470e-05, 4.584364040518952539e-05, 4.586655981355653155e-05, 4.588940250539744805e-05, 4.591216845070142323e-05, 4.593485761958230224e-05, 4.595746998228222521e-05, 4.598000550917208130e-05, 4.600246417074955031e-05, 4.602484593763947544e-05, 4.604715078059777312e-05, 4.606937867050520569e-05, 4.609152957837112861e-05, 4.611360347533335500e-05, 4.613560033265608884e-05, 4.615752012173533243e-05, 4.617936281409177132e-05, 4.620112838137507724e-05, 4.622281679536328469e-05, 4.624442802796251985e-05, 4.626596205120611297e-05, 4.628741883725851495e-05, 4.630879835840995094e-05, 4.633010058707961196e-05, 4.635132549581475359e-05, 4.637247305729040467e-05, 4.639354324431311453e-05, 4.641453602981428515e-05, 4.643545138685566673e-05, 4.645628928862643710e-05, 4.647704970844554630e-05, 4.649773261975838270e-05, 4.651833799614264796e-05, 4.653886581130256339e-05, 4.655931603906773148e-05, 4.657968865340270402e-05, 4.659998362839650599e-05, 4.662020093826751445e-05, 4.664034055736517975e-05, 4.666040246016511946e-05, 4.668038662127288604e-05, 4.670029301542250310e-05, 4.672012161747645867e-05, 4.673987240242858510e-05, 4.675954534540013559e-05, 4.677914042163838830e-05, 4.679865760652510311e-05, 4.681809687556744821e-05, 4.683745820440197099e-05, 4.685674156879753895e-05, 4.687594694464602231e-05, 4.689507430797464039e-05, 4.691412363493643417e-05, 4.693309490181449468e-05, 4.695198808501993689e-05, 4.697080316109704970e-05, 4.698954010671296886e-05, 4.700819889867058582e-05, 4.702677951389845103e-05, 4.704528192945441962e-05, 4.706370612252948674e-05, 4.708205207043856508e-05, 4.710031975062865703e-05, 4.711850914067799409e-05, 4.713662021829191694e-05, 4.715465296130499635e-05, 4.717260734768494314e-05, 4.719048335552302652e-05, 4.720828096304576990e-05, 4.722600014860651448e-05, 4.724364089068857698e-05, 4.726120316790504631e-05, 4.727868695899889884e-05, 4.729609224284149401e-05, 4.731341899843699925e-05, 4.733066720491651495e-05, 4.734783684154090697e-05, 4.736492788770430316e-05, 4.738194032292548073e-05, 4.739887412685563864e-05, 4.741572927927741504e-05, 4.743250576010109933e-05, 4.744920354936733587e-05, 4.746582262724677846e-05, 4.748236297403952104e-05, 4.749882457017749656e-05, 4.751520739622070257e-05, 4.753151143285969490e-05, 4.754773666091497775e-05, 4.756388306133724095e-05, 4.757995061520633664e-05, 4.759593930373463361e-05, 4.761184910826220609e-05, 4.762768001025993053e-05, 4.764343199132900448e-05, 4.765910503320039095e-05, 4.767469911773498779e-05, 4.769021422692582322e-05, 4.770565034289380032e-05, 4.772100744789091578e-05, 4.773628552429941963e-05, 4.775148455463090719e-05, 4.776660452152958530e-05, 4.778164540776784735e-05, 4.779660719624871955e-05, 4.781148987000600998e-05, 4.782629341220365134e-05, 4.784101780613481998e-05, 4.785566303522597459e-05, 4.787022908303115057e-05, 4.788471593323586993e-05, 4.789912356965567766e-05, 4.791345197623613487e-05, 4.792770113705540740e-05, 4.794187103631969183e-05, 4.795596165836654256e-05, 4.796997298766382837e-05, 4.798390500881001693e-05, 4.799775770653353111e-05, 4.801153106569508000e-05, 4.802522507128466377e-05, 4.803883970842074704e-05, 4.805237496235633033e-05, 4.806583081847249234e-05, 4.807920726228055155e-05, 4.809250427942473607e-05, 4.810572185567762998e-05, 4.811885997694349376e-05, 4.813191862925630585e-05, 4.814489779878096892e-05, 4.815779747181469893e-05, 4.817061763478373870e-05, 4.818335827424308682e-05, 4.819601937688279959e-05, 4.820860092952064556e-05, 4.822110291910491089e-05, 4.823352533271735380e-05, 4.824586815756606915e-05, 4.825813138099419600e-05, 4.827031499047266692e-05, 4.828241897360468040e-05, 4.829444331812275990e-05, 4.830638801189285353e-05, 4.831825304290740866e-05, 4.833003839929407949e-05, 4.834174406930835438e-05, 4.835337004133701184e-05, 4.836491630389961802e-05, 4.837638284564339710e-05, 4.838776965534757489e-05, 4.839907672192381925e-05, 4.841030403441262160e-05, 4.842145158198524169e-05, 4.843251935394636391e-05, 4.844350733972704995e-05, 4.845441552889336501e-05, 4.846524391114006230e-05, 4.847599247629259562e-05, 4.848666121430957911e-05, 4.849725011527676995e-05, 4.850775916941306535e-05, 4.851818836706865262e-05, 4.852853769872334221e-05, 4.853880715498784846e-05, 4.854899672660571399e-05, 4.855910640444807171e-05, 4.856913617951853725e-05, 4.857908604295289726e-05, 4.858895598601593814e-05, 4.859874600010398031e-05, 4.860845607674424808e-05, 4.861808620759412421e-05, 4.862763638444375202e-05, 4.863710659921213227e-05, 4.864649684395018600e-05, 4.865580711083935188e-05, 4.866503739219204698e-05, 4.867418768045113820e-05, 4.868325796819162959e-05, 4.869224824811842618e-05, 4.870115851306702515e-05, 4.870998875600455937e-05, 4.871873897002810335e-05, 4.872740914836724819e-05, 4.873599928438076769e-05, 4.874450937155925433e-05, 4.875293940352379106e-05, 4.876128937402639859e-05, 4.876955927694960169e-05, 4.877774910630806903e-05, 4.878585885624600436e-05, 4.879388852103877955e-05, 4.880183809509302948e-05, 4.880970757294582531e-05, 4.881749694926487102e-05, 4.882520621884987898e-05, 4.883283537663034058e-05, 4.884038441766675945e-05, 4.884785333715044146e-05, 4.885524213040352858e-05, 4.886255079287973071e-05, 4.886977932016278747e-05, 4.887692770796725424e-05, 4.888399595213882744e-05, 4.889098404865378886e-05, 4.889789199361878206e-05, 4.890471978327275035e-05, 4.891146741398398238e-05, 4.891813488225202301e-05, 4.892472218470734130e-05, 4.893122931811081549e-05, 4.893765627935376690e-05, 4.894400306546032485e-05, 4.895026967358191754e-05, 4.895645610100400087e-05, 4.896256234514101017e-05, 4.896858840353812876e-05, 4.897453427387227052e-05, 4.898039995395038585e-05, 4.898618544170919056e-05, 4.899189073521804586e-05, 4.899751583267552950e-05, 4.900306073241121797e-05, 4.900852543288635734e-05, 4.901390993269068519e-05, 4.901921423054697070e-05, 4.902443832530713186e-05, 4.902958221595361783e-05, 4.903464590160066931e-05, 4.903962938149257706e-05, 4.904453265500314656e-05, 4.904935572163859149e-05, 4.905409858103438952e-05, 4.905876123295672568e-05, 4.906334367730340714e-05, 4.906784591410133566e-05, 4.907226794350810003e-05, 4.907660976581327032e-05, 4.908087138143551797e-05, 4.908505279092393041e-05, 4.908915399495951534e-05, 4.909317499435144672e-05, 4.909711579004152356e-05, 4.910097638310085628e-05, 4.910475677473081542e-05, 4.910845696626441401e-05, 4.911207695916344795e-05, 4.911561675502076608e-05, 4.911907635556017534e-05, 4.912245576263502445e-05, 4.912575497822881386e-05, 4.912897400445671360e-05, 4.913211284356237840e-05, 4.913517149792124102e-05, 4.913814997003816763e-05, 4.914104826254833870e-05, 4.914386637821760819e-05, 4.914660431994165649e-05, 4.914926209074610560e-05, 4.915183969378764405e-05, 4.915433713235252248e-05, 4.915675440985704841e-05, 4.915909152984789785e-05, 4.916134849600176300e-05, 4.916352531212539288e-05, 4.916562198215575598e-05, 4.916763851015995215e-05, 4.916957490033474503e-05, 4.917143115700723293e-05, 4.917320728463408987e-05, 4.917490328780286661e-05, 4.917651917123020853e-05, 4.917805493976310242e-05, 4.917951059837798205e-05, 4.918088615218200885e-05, 4.918218160641145241e-05, 4.918339696643287632e-05, 4.918453223774270447e-05, 4.918558742596684162e-05, 4.918656253686127643e-05, 4.918745757631147843e-05, 4.918827255033310949e-05, 4.918900746507123102e-05, 4.918966232680081215e-05, 4.919023714192626224e-05, 4.919073191698173573e-05, 4.919114665863122030e-05, 4.919148137366810314e-05, 4.919173606901570630e-05, 4.919191075172632446e-05, 4.919200542898238365e-05, 4.919202010809544518e-05, 4.919195479650673413e-05, 4.919180950178707166e-05, 4.919158423163653613e-05, 4.919127899388461898e-05, 4.919089379649050936e-05, 4.919042864754232159e-05, 4.918988355525782702e-05, 4.918925852798423042e-05, 4.918855357419751943e-05, 4.918776870250356236e-05, 4.918690392163720012e-05, 4.918595924046249021e-05, 4.918493466797274057e-05, 4.918383021329023177e-05, 4.918264588566684719e-05, 4.918138169448306338e-05, 4.918003764924867507e-05, 4.917861375960268683e-05, 4.917711003531275056e-05, 4.917552648627608033e-05, 4.917386312251836140e-05, 4.917211995419449558e-05, 4.917029699158823535e-05, 4.916839424511203476e-05, 4.916641172530764574e-05, 4.916434944284507456e-05, 4.916220740852384223e-05, 4.915998563327153434e-05, 4.915768412814504118e-05, 4.915530290432967674e-05, 4.915284197313948372e-05, 4.915030134601715219e-05, 4.914768103453389080e-05, 4.914498105038981988e-05, 4.914220140541336151e-05, 4.913934211156141573e-05, 4.913640318091987554e-05, 4.913338462570225807e-05, 4.913028645825115475e-05, 4.912710869103762139e-05, 4.912385133666031086e-05, 4.912051440784734330e-05, 4.911709791745428005e-05, 4.911360187846537727e-05, 4.911002630399269818e-05, 4.910637120727697375e-05, 4.910263660168690463e-05, 4.909882250071943231e-05, 4.909492891799961027e-05, 4.909095586728031948e-05, 4.908690336244255289e-05, 4.908277141749565949e-05, 4.907856004657652429e-05, 4.907426926395026633e-05, 4.906989908400956102e-05, 4.906544952127534490e-05, 4.906092059039598215e-05, 4.905631230614807773e-05, 4.905162468343574555e-05, 4.904685773729065590e-05, 4.904201148287237429e-05, 4.903708593546813102e-05, 4.903208111049244173e-05, 4.902699702348804251e-05, 4.902183369012477862e-05, 4.901659112619981452e-05, 4.901126934763798626e-05, 4.900586837049158463e-05, 4.900038821094036194e-05, 4.899482888529114576e-05, 4.898919040997863178e-05, 4.898347280156382520e-05, 4.897767607673593140e-05, 4.897180025231068212e-05, 4.896584534523125708e-05, 4.895981137256807388e-05, 4.895369835151848991e-05, 4.894750629940642278e-05, 4.894123523368363790e-05, 4.893488517192818991e-05, 4.892845613184558138e-05, 4.892194813126783453e-05, 4.891536118815343698e-05, 4.890869532058852081e-05, 4.890195054678529051e-05, 4.889512688508310714e-05, 4.888822435394768874e-05, 4.888124297197169311e-05, 4.887418275787384366e-05, 4.886704373049956636e-05, 4.885982590882132181e-05, 4.885252931193747358e-05, 4.884515395907291840e-05, 4.883769986957887612e-05, 4.883016706293268641e-05, 4.882255555873927919e-05, 4.881486537672753581e-05, 4.880709653675449709e-05, 4.879924905880276122e-05, 4.879132296298026696e-05, 4.878331826952164209e-05, 4.877523499878843379e-05, 4.876707317126654725e-05, 4.875883280756865799e-05, 4.875051392843342583e-05, 4.874211655472439710e-05, 4.873364070743273555e-05, 4.872508640767324458e-05, 4.871645367668783679e-05, 4.870774253584391438e-05, 4.869895300663372543e-05, 4.869008511067519061e-05, 4.868113886971359725e-05, 4.867211430561688303e-05, 4.866301144037999315e-05, 4.865383029612359284e-05, 4.864457089509195313e-05, 4.863523325965709795e-05, 4.862581741231390491e-05, 4.861632337568366958e-05, 4.860675117251261472e-05, 4.859710082567223589e-05, 4.858737235815796648e-05, 4.857756579309259302e-05, 4.856768115372081377e-05, 4.855771846341435483e-05, 4.854767774566948326e-05, 4.853755902410588897e-05, 4.852736232246980861e-05, 4.851708766463157252e-05, 4.850673507458525241e-05, 4.849630457645041638e-05, 4.848579619447091599e-05, 4.847520995301506921e-05, 4.846454587657616863e-05, 4.845380398977042148e-05, 4.844298431733967371e-05, 4.843208688414983110e-05, 4.842111171519066951e-05, 4.841005883557641769e-05, 4.839892827054575721e-05, 4.838772004546011490e-05, 4.837643418580610228e-05, 4.836507071719413998e-05, 4.835362966535828157e-05, 4.834211105615674207e-05, 4.833051491557161341e-05, 4.831884126970767174e-05, 4.830709014479468141e-05, 4.829526156718543661e-05, 4.828335556335632380e-05, 4.827137215990769440e-05, 4.825931138356251632e-05, 4.824717326116784443e-05, 4.823495781969395991e-05, 4.822266508623447199e-05, 4.821029508800607391e-05, 4.819784785234926803e-05, 4.818532340672627875e-05, 4.817272177872377654e-05, 4.816004299605089250e-05, 4.814728708653992311e-05, 4.813445407814604559e-05, 4.812154399894765677e-05, 4.810855687714452310e-05, 4.809549274106069452e-05, 4.808235161914218691e-05, 4.806913353995803244e-05, 4.805583853220002886e-05, 4.804246662468103187e-05, 4.802901784633738778e-05, 4.801549222622962472e-05, 4.800188979353663858e-05, 4.798821057756288267e-05, 4.797445460773415958e-05, 4.796062191359722147e-05, 4.794671252482238564e-05, 4.793272647120140005e-05, 4.791866378264832420e-05, 4.790452448919917680e-05, 4.789030862101051951e-05, 4.787601620836186251e-05, 4.786164728165577292e-05, 4.784720187141357868e-05, 4.783268000828023384e-05, 4.781808172302214348e-05, 4.780340704652566604e-05, 4.778865600980044734e-05, 4.777382864397624246e-05, 4.775892498030519934e-05, 4.774394505015967685e-05, 4.772888888503446739e-05, 4.771375651654290731e-05, 4.769854797642335503e-05, 4.768326329653131701e-05, 4.766790250884529566e-05, 4.765246564546498688e-05, 4.763695273860879992e-05, 4.762136382061742850e-05, 4.760569892395357972e-05, 4.758995808119726459e-05, 4.757414132505163239e-05, 4.755824868833976546e-05, 4.754228020400310718e-05, 4.752623590510772315e-05, 4.751011582483556666e-05, 4.749391999649146497e-05, 4.747764845349950082e-05, 4.746130122940463869e-05, 4.744487835786935026e-05, 4.742837987268035002e-05, 4.741180580774010457e-05, 4.739515619707310748e-05, 4.737843107482395480e-05, 4.736163047525392985e-05, 4.734475443274831479e-05, 4.732780298180958050e-05, 4.731077615705859949e-05, 4.729367399323763428e-05, 4.727649652520765394e-05, 4.725924378794880851e-05, 4.724191581656118108e-05, 4.722451264626209089e-05, 4.720703431238961698e-05, 4.718948085040149365e-05, 4.717185229587103791e-05, 4.715414868449488802e-05, 4.713637005208636270e-05, 4.711851643457622011e-05, 4.710058786801572068e-05, 4.708258438857416739e-05, 4.706450603253952911e-05, 4.704635283631793244e-05, 4.702812483643506437e-05, 4.700982206953215395e-05, 4.699144457237147465e-05, 4.697299238183233277e-05, 4.695446553491226007e-05, 4.693586406872759658e-05, 4.691718802051036665e-05, 4.689843742761264973e-05, 4.687961232750382915e-05, 4.686071275777087676e-05, 4.684173875611850196e-05, 4.682269036036961255e-05, 4.680356760846256350e-05, 4.678437053845535830e-05, 4.676509918852259957e-05, 4.674575359695623452e-05, 4.672633380216630706e-05, 4.670683984267755615e-05, 4.668727175713415238e-05, 4.666762958429675711e-05, 4.664791336304253597e-05, 4.662812313236578912e-05, 4.660825893137856781e-05, 4.658832079930686621e-05, 4.656830877549525627e-05, 4.654822289940711822e-05, 4.652806321061741022e-05, 4.650782974882091509e-05, 4.648752255382875058e-05, 4.646714166556573333e-05, 4.644668712407549501e-05, 4.642615896951688407e-05, 4.640555724216461632e-05, 4.638488198241056239e-05, 4.636413323075966162e-05, 4.634331102783444188e-05, 4.632241541437572425e-05, 4.630144643123487101e-05, 4.628040411938231017e-05, 4.625928851990377462e-05, 4.623809967399820833e-05, 4.621683762298212339e-05, 4.619550240828635426e-05, 4.617409407145754854e-05, 4.615261265415652705e-05, 4.613105819816111638e-05, 4.610943074535958267e-05, 4.608773033776188019e-05, 4.606595701748620046e-05, 4.604411082676943483e-05, 4.602219180796247172e-05, 4.600020000352864487e-05, 4.597813545604726376e-05, 4.595599820821488079e-05, 4.593378830283686163e-05, 4.591150578283642467e-05, 4.588915069125107680e-05, 4.586672307122854761e-05, 4.584422296603714352e-05, 4.582165041905247985e-05, 4.579900547376802470e-05, 4.577628817379053176e-05, 4.575349856283709261e-05, 4.573063668474374935e-05, 4.570770258345732923e-05, 4.568469630303620356e-05, 4.566161788765495658e-05, 4.563846738160147844e-05, 4.561524482927277745e-05, 4.559195027518492764e-05, 4.556858376396396827e-05, 4.554514534034714385e-05, 4.552163504918736291e-05, 4.549805293544899001e-05, 4.547439904420981754e-05, 4.545067342066044916e-05, 4.542687611010142660e-05, 4.540300715794864397e-05, 4.537906660973021024e-05, 4.535505451108267500e-05, 4.533097090776065061e-05, 4.530681584562765759e-05, 4.528258937065768308e-05, 4.525829152893927375e-05, 4.523392236667181561e-05, 4.520948193016661142e-05, 4.518497026584748381e-05, 4.516038742024687216e-05, 4.513573344001147039e-05, 4.511100837189888633e-05, 4.508621226277765524e-05, 4.506134515962758539e-05, 4.503640710954079487e-05, 4.501139815971708335e-05, 4.498631835747078292e-05, 4.496116775022539804e-05, 4.493594638551586884e-05, 4.491065431098757499e-05, 4.488529157439746054e-05, 4.485985822360994112e-05, 4.483435430660312449e-05, 4.480877987146416203e-05, 4.478313496639079377e-05, 4.475741963969163294e-05, 4.473163393978255427e-05, 4.470577791519228435e-05, 4.467985161455864088e-05, 4.465385508662916277e-05, 4.462778838026091374e-05, 4.460165154442218303e-05, 4.457544462818700354e-05, 4.454916768074243619e-05, 4.452282075138390795e-05, 4.449640388951564546e-05, 4.446991714465152885e-05, 4.444336056641555254e-05, 4.441673420453719705e-05, 4.439003810885823914e-05, 4.436327232932838789e-05, 4.433643691600588102e-05, 4.430953191905873172e-05, 4.428255738876013433e-05, 4.425551337549401415e-05, 4.422839992975599637e-05, 4.420121710214334337e-05, 4.417396494336566122e-05, 4.414664350424119302e-05, 4.411925283569229919e-05, 4.409179298875272833e-05, 4.406426401456317208e-05, 4.403666596437161740e-05, 4.400899888953408524e-05, 4.398126284151489479e-05, 4.395345787188145254e-05, 4.392558403231646986e-05, 4.389764137460191009e-05, 4.386962995063132804e-05, 4.384154981240543839e-05, 4.381340101202849710e-05, 4.378518360171365469e-05, 4.375689763378489425e-05, 4.372854316066530174e-05, 4.370012023488954104e-05, 4.367162890909876506e-05, 4.364306923603531661e-05, 4.361444126855689764e-05, 4.358574505961865274e-05, 4.355698066228617964e-05, 4.352814812973203936e-05, 4.349924751522910873e-05, 4.347027887216378732e-05, 4.344124225402418643e-05, 4.341213771440177569e-05, 4.338296530699729201e-05, 4.335372508561655179e-05, 4.332441710416637165e-05, 4.329504141666560017e-05, 4.326559807723487898e-05, 4.323608714009727968e-05, 4.320650865958438220e-05, 4.317686269013150429e-05, 4.314714928627885347e-05, 4.311736850267218436e-05, 4.308752039405840763e-05, 4.305760501529237982e-05, 4.302762242133326452e-05, 4.299757266723961275e-05, 4.296745580818157385e-05, 4.293727189942948418e-05, 4.290702099635535118e-05, 4.287670315443851829e-05, 4.284631842926103681e-05, 4.281586687650852641e-05, 4.278534855197132039e-05, 4.275476351153956639e-05, 4.272411181121031442e-05, 4.269339350708277339e-05, 4.266260865535917858e-05, 4.263175731234508290e-05, 4.260083953444988554e-05, 4.256985537818225117e-05, 4.253880490015713692e-05, 4.250768815709111677e-05, 4.247650520580337766e-05, 4.244525610321500799e-05, 4.241394090635127443e-05, 4.238255967233555039e-05, 4.235111245839723071e-05, 4.231959932186645293e-05, 4.228802032017526960e-05, 4.225637551085887478e-05, 4.222466495155004749e-05, 4.219288869998737135e-05, 4.216104681400953570e-05, 4.212913935155667057e-05, 4.209716637066998070e-05, 4.206512792949347357e-05, 4.203302408626800977e-05, 4.200085489933957006e-05, 4.196862042715376661e-05, 4.193632072825679847e-05, 4.190395586129557349e-05, 4.187152588501903651e-05, 4.183903085827231464e-05, 4.180647084000522828e-05, 4.177384588926622634e-05, 4.174115606520393802e-05, 4.170840142706881264e-05, 4.167558203420634340e-05, 4.164269794606540896e-05, 4.160974922219814467e-05, 4.157673592224834163e-05, 4.154365810596466718e-05, 4.151051583319514900e-05, 4.147730916388321100e-05, 4.144403815807535087e-05, 4.141070287591602393e-05, 4.137730337764823949e-05, 4.134383972361570215e-05, 4.131031197425655727e-05, 4.127672019011016728e-05, 4.124306443181885993e-05, 4.120934476011501273e-05, 4.117556123583491042e-05, 4.114171391991291061e-05, 4.110780287337596176e-05, 4.107382815735749455e-05, 4.103978983308443176e-05, 4.100568796187901109e-05, 4.097152260516502613e-05, 4.093729382446398415e-05, 4.090300168138925825e-05, 4.086864623766134748e-05, 4.083422755508795462e-05, 4.079974569558008659e-05, 4.076520072114513587e-05, 4.073059269388190000e-05, 4.069592167599504203e-05, 4.066118772978086725e-05, 4.062639091762994552e-05, 4.059153130203315573e-05, 4.055660894557823671e-05, 4.052162391094297025e-05, 4.048657626091165424e-05, 4.045146605835436051e-05, 4.041629336624304202e-05, 4.038105824764357752e-05, 4.034576076571789251e-05, 4.031040098372357978e-05, 4.027497896501484810e-05, 4.023949477303695888e-05, 4.020394847133475750e-05, 4.016834012354862790e-05, 4.013266979340743165e-05, 4.009693754474433740e-05, 4.006114344148258385e-05, 4.002528754763707224e-05, 3.998936992732194897e-05, 3.995339064474402583e-05, 3.991734976420487389e-05, 3.988124735010144690e-05, 3.984508346692025371e-05, 3.980885817924663498e-05, 3.977257155175950478e-05, 3.973622364922572633e-05, 3.969981453651460639e-05, 3.966334427858493904e-05, 3.962681294048538518e-05, 3.959022058736270570e-05, 3.955356728445527653e-05, 3.951685309709470148e-05, 3.948007809070541913e-05, 3.944324233080632921e-05, 3.940634588300418568e-05, 3.936938881300335459e-05, 3.933237118659899714e-05, 3.929529306967876375e-05, 3.925815452822381052e-05, 3.922095562830309358e-05, 3.918369643608217824e-05, 3.914637701781702520e-05, 3.910899743985542704e-05, 3.907155776863673724e-05, 3.903405807069367265e-05, 3.899649841264539490e-05, 3.895887886120736986e-05, 3.892119948318459820e-05, 3.888346034547320777e-05, 3.884566151506186309e-05, 3.880780305902543627e-05, 3.876988504453431089e-05, 3.873190753884768022e-05, 3.869387060931560725e-05, 3.865577432337823858e-05, 3.861761874856785770e-05, 3.857940395250191893e-05, 3.854113000289123998e-05, 3.850279696754133681e-05, 3.846440491433778696e-05, 3.842595391126239768e-05, 3.838744402638669394e-05, 3.834887532786657876e-05, 3.831024788395195549e-05, 3.827156176298092052e-05, 3.823281703338004796e-05, 3.819401376366703908e-05, 3.815515202244301773e-05, 3.811623187840138015e-05, 3.807725340032915701e-05, 3.803821665709182775e-05, 3.799912171764986826e-05, 3.795996865105206948e-05, 3.792075752642863238e-05, 3.788148841300946387e-05, 3.784216138010080546e-05, 3.780277649710293966e-05, 3.776333383350260732e-05, 3.772383345887544710e-05, 3.768427544287794524e-05, 3.764465985526542659e-05, 3.760498676586892039e-05, 3.756525624461278537e-05, 3.752546836150878051e-05, 3.748562318664823846e-05, 3.744572079021973122e-05, 3.740576124249296981e-05, 3.736574461382099295e-05, 3.732567097464782423e-05, 3.728554039550425054e-05, 3.724535294699967699e-05, 3.720510869984182547e-05, 3.716480772481205554e-05, 3.712445009278424987e-05, 3.708403587471643199e-05, 3.704356514165158622e-05, 3.700303796471856568e-05, 3.696245441513264799e-05, 3.692181456418917228e-05, 3.688111848327365623e-05, 3.684036624385655798e-05, 3.679955791748584255e-05, 3.675869357580458663e-05, 3.671777329053504751e-05, 3.667679713348054017e-05, 3.663576517653343326e-05, 3.659467749166873870e-05, 3.655353415094529760e-05, 3.651233522650742684e-05, 3.647108079057808185e-05, 3.642977091546896002e-05, 3.638840567357348044e-05, 3.634698513736821376e-05, 3.630550937941315321e-05, 3.626397847235296820e-05, 3.622239248891012643e-05, 3.618075150189501761e-05, 3.613905558419914333e-05, 3.609730480879651298e-05, 3.605549924874350141e-05, 3.601363897718059046e-05, 3.597172406732517935e-05, 3.592975459248192523e-05, 3.588773062603593984e-05, 3.584565224145371784e-05, 3.580351951228567114e-05, 3.576133251215788219e-05, 3.571909131478361005e-05, 3.567679599395561294e-05, 3.563444662354742887e-05, 3.559204327751418212e-05, 3.554958602989334885e-05, 3.550707495479783185e-05, 3.546451012642668730e-05, 3.542189161905756248e-05, 3.537921950704857961e-05, 3.533649386484003662e-05, 3.529371476694669583e-05, 3.525088228796893763e-05, 3.520799650258533373e-05, 3.516505748555381265e-05, 3.512206531171246612e-05, 3.507902005598012503e-05, 3.503592179334990170e-05, 3.499277059889760596e-05, 3.494956654778387289e-05, 3.490630971523716800e-05, 3.486300017657190011e-05, 3.481963800718179425e-05, 3.477622328253298658e-05, 3.473275607817601161e-05, 3.468923646973771815e-05, 3.464566453292322764e-05, 3.460204034351772981e-05, 3.455836397737835803e-05, 3.451463551044410289e-05, 3.447085501873701168e-05, 3.442702257834574233e-05, 3.438313826544354089e-05, 3.433920215628130261e-05, 3.429521432717897285e-05, 3.425117485454744123e-05, 3.420708381486054883e-05, 3.416294128467707721e-05, 3.411874734063000125e-05, 3.407450205943098856e-05, 3.403020551786038419e-05, 3.398585779278814249e-05, 3.394145896114690505e-05, 3.389700909995294607e-05, 3.385250828629821708e-05, 3.380795659734299469e-05, 3.376335411033427132e-05, 3.371870090258897047e-05, 3.367399705149536966e-05, 3.362924263452279731e-05, 3.358443772921550701e-05, 3.353958241318478990e-05, 3.349467676413048255e-05, 3.344972085981342148e-05, 3.340471477807663926e-05, 3.335965859683751088e-05, 3.331455239407986611e-05, 3.326939624787357975e-05, 3.322419023635628921e-05, 3.317893443773565782e-05, 3.313362893029893612e-05, 3.308827379240689034e-05, 3.304286910248597581e-05, 3.299741493904760864e-05, 3.295191138067054745e-05, 3.290635850600257391e-05, 3.286075639377018950e-05, 3.281510512277089741e-05, 3.276940477187455101e-05, 3.272365542002563063e-05, 3.267785714623499014e-05, 3.263201002959156626e-05, 3.258611414925453848e-05, 3.254016958445484013e-05, 3.249417641449538880e-05, 3.244813471875257710e-05, 3.240204457666850707e-05, 3.235590606776250983e-05, 3.230971927162329865e-05, 3.226348426791073081e-05, 3.221720113635742031e-05, 3.217086995676117560e-05, 3.212449080899626848e-05, 3.207806377300554654e-05, 3.203158892880246603e-05, 3.198506635647050913e-05, 3.193849613616581308e-05, 3.189187834810782579e-05, 3.184521307259259403e-05, 3.179850038998352063e-05, 3.175174038071362776e-05, 3.170493312528567211e-05, 3.165807870427347307e-05, 3.161117719831400477e-05, 3.156422868811972895e-05, 3.151723325446967734e-05, 3.147019097821173529e-05, 3.142310194026457301e-05, 3.137596622160906002e-05, 3.132878390330084869e-05, 3.128155506646149734e-05, 3.123427979228086222e-05, 3.118695816201666390e-05, 3.113959025699660139e-05, 3.109217615860975989e-05, 3.104471594831899100e-05, 3.099720970765248307e-05, 3.094965751820572626e-05, 3.090205946164124157e-05, 3.085441561969078306e-05, 3.080672607414461107e-05, 3.075899090687403680e-05, 3.071121019980257581e-05, 3.066338403492840453e-05, 3.061551249431609321e-05, 3.056759566008997197e-05, 3.051963361444479664e-05, 3.047162643964708030e-05, 3.042357421801687866e-05, 3.037547703194802402e-05, 3.032733496389972944e-05, 3.027914809638837255e-05, 3.023091651201001645e-05, 3.018264029341104817e-05, 3.013431952331123488e-05, 3.008595428449500287e-05, 3.003754465980515933e-05, 2.998909073215320919e-05, 2.994059258452103230e-05, 2.989205029994235706e-05, 2.984346396152311976e-05, 2.979483365243366165e-05, 2.974615945589899492e-05, 2.969744145522079838e-05, 2.964867973375786458e-05, 2.959987437492791923e-05, 2.955102546221841919e-05, 2.950213307917974909e-05, 2.945319730941690009e-05, 2.940421823661209578e-05, 2.935519594449585761e-05, 2.930613051686912932e-05, 2.925702203759572144e-05, 2.920787059059273984e-05, 2.915867625985227987e-05, 2.910943912942187014e-05, 2.906015928340668490e-05, 2.901083680597994229e-05, 2.896147178137611444e-05, 2.891206429388264696e-05, 2.886261442786327601e-05, 2.881312226772735554e-05, 2.876358789795422139e-05, 2.871401140308162077e-05, 2.866439286770781632e-05, 2.861473237649186731e-05, 2.856503001415496121e-05, 2.851528586547232277e-05, 2.846550001528544183e-05, 2.841567254849369447e-05, 2.836580355005622681e-05, 2.831589310499181946e-05, 2.826594129838081200e-05, 2.821594821535641919e-05, 2.816591394111760591e-05, 2.811583856092006109e-05, 2.806572216007853561e-05, 2.801556482396859731e-05, 2.796536663801802851e-05, 2.791512768771945701e-05, 2.786484805862171632e-05, 2.781452783633185820e-05, 2.776416710651483083e-05, 2.771376595489583015e-05, 2.766332446725113493e-05, 2.761284272942124602e-05, 2.756232082730178916e-05, 2.751175884684586972e-05, 2.746115687406367636e-05, 2.741051499502455448e-05, 2.735983329584816326e-05, 2.730911186271761142e-05, 2.725835078187013646e-05, 2.720755013959962548e-05, 2.715671002225842097e-05, 2.710583051624828135e-05, 2.705491170803367936e-05, 2.700395368413274896e-05, 2.695295653111914205e-05, 2.690192033562228933e-05, 2.685084518432913844e-05, 2.679973116397527702e-05, 2.674857836135812952e-05, 2.669738686332779907e-05, 2.664615675678914776e-05, 2.659488812870183395e-05, 2.654358106608219946e-05, 2.649223565599214967e-05, 2.644085198556334147e-05, 2.638943014196598526e-05, 2.633797021243305324e-05, 2.628647228425149050e-05, 2.623493644475500855e-05, 2.618336278133532710e-05, 2.613175138144431872e-05, 2.608010233257364286e-05, 2.602841572227686010e-05, 2.597669163816060611e-05, 2.592493016787508119e-05, 2.587313139913905460e-05, 2.582129541970786037e-05, 2.576942231739826270e-05, 2.571751218007919289e-05, 2.566556509566481718e-05, 2.561358115212567353e-05, 2.556156043749086717e-05, 2.550950303982743006e-05, 2.545740904726288248e-05, 2.540527854797628498e-05, 2.535311163018828741e-05, 2.530090838218461888e-05, 2.524866889229485768e-05, 2.519639324889461326e-05, 2.514408154041701201e-05, 2.509173385534549069e-05, 2.503935028220463489e-05, 2.498693090958512591e-05, 2.493447582611171609e-05, 2.488198512046777583e-05, 2.482945888138670131e-05, 2.477689719764188559e-05, 2.472430015807018484e-05, 2.467166785155047146e-05, 2.461900036700622935e-05, 2.456629779341663655e-05, 2.451356021980754599e-05, 2.446078773525320329e-05, 2.440798042887863878e-05, 2.435513838985033997e-05, 2.430226170738990232e-05, 2.424935047076438665e-05, 2.419640476928908721e-05, 2.414342469232669822e-05, 2.409041032928993967e-05, 2.403736176963191130e-05, 2.398427910285995005e-05, 2.393116241852618400e-05, 2.387801180622975490e-05, 2.382482735561641506e-05, 2.377160915638121410e-05, 2.371835729825847347e-05, 2.366507187103586416e-05, 2.361175296454511301e-05, 2.355840066866379508e-05, 2.350501507331784423e-05, 2.345159626847193423e-05, 2.339814434414325825e-05, 2.334465939039220817e-05, 2.329114149732460054e-05, 2.323759075509110740e-05, 2.318400725388993625e-05, 2.313039108395704857e-05, 2.307674233558019004e-05, 2.302306109908922759e-05, 2.296934746485851432e-05, 2.291560152330656764e-05, 2.286182336489840704e-05, 2.280801308013596235e-05, 2.275417075957179223e-05, 2.270029649379998708e-05, 2.264639037345805619e-05, 2.259245248922909279e-05, 2.253848293183251088e-05, 2.248448179203764517e-05, 2.243044916065438295e-05, 2.237638512853534263e-05, 2.232228978657579916e-05, 2.226816322571573733e-05, 2.221400553693028359e-05, 2.215981681124384140e-05, 2.210559713972045536e-05, 2.205134661346589152e-05, 2.199706532362998197e-05, 2.194275336139691108e-05, 2.188841081799710781e-05, 2.183403778470913633e-05, 2.177963435283850662e-05, 2.172520061374111694e-05, 2.167073665881350620e-05, 2.161624257948582020e-05, 2.156171846723325332e-05, 2.150716441357853543e-05, 2.145258051007027837e-05, 2.139796684830640481e-05, 2.134332351992496309e-05, 2.128865061659394246e-05, 2.123394823003755483e-05, 2.117921645200275665e-05, 2.112445537428520875e-05, 2.106966508871980991e-05, 2.101484568717277882e-05, 2.095999726155437309e-05, 2.090511990382047154e-05, 2.085021370595078848e-05, 2.079527875997331572e-05, 2.074031515795382274e-05, 2.068532299198676293e-05, 2.063030235422107765e-05, 2.057525333682659266e-05, 2.052017603202038463e-05, 2.046507053205435007e-05, 2.040993692922017229e-05, 2.035477531583680571e-05, 2.029958578427711329e-05, 2.024436842693383277e-05, 2.018912333624582115e-05, 2.013385060468868989e-05, 2.007855032476439655e-05, 2.002322258902558514e-05, 1.996786749005380722e-05, 1.991248512046153444e-05, 1.985707557290408137e-05, 1.980163894006992901e-05, 1.974617531468312356e-05, 1.969068478950507557e-05, 1.963516745732507988e-05, 1.957962341097476945e-05, 1.952405274332033279e-05, 1.946845554725294588e-05, 1.941283191571278725e-05, 1.935718194166710998e-05, 1.930150571811231188e-05, 1.924580333808625132e-05, 1.919007489465799813e-05, 1.913432048093042555e-05, 1.907854019003984766e-05, 1.902273411515850292e-05, 1.896690234948435587e-05, 1.891104498625594731e-05, 1.885516211874217231e-05, 1.879925384024453333e-05, 1.874332024409985071e-05, 1.868736142366991194e-05, 1.863137747235609821e-05, 1.857536848358936910e-05, 1.851933455083299004e-05, 1.846327576758174284e-05, 1.840719222736464302e-05, 1.835108402373488378e-05, 1.829495125028418817e-05, 1.823879400063330199e-05, 1.818261236843374203e-05, 1.812640644737056081e-05, 1.807017633115210088e-05, 1.801392211352464848e-05, 1.795764388826241143e-05, 1.790134174916998571e-05, 1.784501579008196582e-05, 1.778866610486535714e-05, 1.773229278740965544e-05, 1.767589593163881721e-05, 1.761947563151379054e-05, 1.756303198101005861e-05, 1.750656507414202070e-05, 1.745007500495317674e-05, 1.739356186750853450e-05, 1.733702575590907020e-05, 1.728046676428202143e-05, 1.722388498678289299e-05, 1.716728051759794374e-05, 1.711065345093407643e-05, 1.705400388103111290e-05, 1.699733190216409461e-05, 1.694063760862066012e-05, 1.688392109472595457e-05, 1.682718245483252295e-05, 1.677042178331235474e-05, 1.671363917457208305e-05, 1.665683472304256614e-05, 1.660000852318145224e-05, 1.654316066947280004e-05, 1.648629125642963678e-05, 1.642940037858118158e-05, 1.637248813050012328e-05, 1.631555460676759395e-05, 1.625859990200053144e-05, 1.620162411084133879e-05, 1.614462732795047441e-05, 1.608760964801848669e-05, 1.603057116576874825e-05, 1.597351197593450812e-05, 1.591643217328371656e-05, 1.585933185260909108e-05, 1.580221110871778942e-05, 1.574507003645887710e-05, 1.568790873068790116e-05, 1.563072728629462876e-05, 1.557352579819007402e-05, 1.551630436131161075e-05, 1.545906307060984679e-05, 1.540180202107662355e-05, 1.534452130770927458e-05, 1.528722102553836765e-05, 1.522990126961729466e-05, 1.517256213501221398e-05, 1.511520371682699222e-05, 1.505782611018034275e-05, 1.500042941020826862e-05, 1.494301371207647320e-05, 1.488557911097007726e-05, 1.482812570209604487e-05, 1.477065358068555167e-05, 1.471316284198368498e-05, 1.465565358126448031e-05, 1.459812589382311343e-05, 1.454057987496571900e-05, 1.448301562003455258e-05, 1.442543322438486320e-05, 1.436783278338744295e-05, 1.431021439244122912e-05, 1.425257814696266549e-05, 1.419492414238846026e-05, 1.413725247417508459e-05, 1.407956323780153563e-05, 1.402185652875860124e-05, 1.396413244256434036e-05, 1.390639107475341546e-05, 1.384863252087977424e-05, 1.379085687651878758e-05, 1.373306423725714272e-05, 1.367525469870774934e-05, 1.361742835649947522e-05, 1.355958530627965175e-05, 1.350172564371368773e-05, 1.344384946448771035e-05, 1.338595686429802817e-05, 1.332804793886633361e-05, 1.327012278392933360e-05, 1.321218149524115515e-05, 1.315422416857576619e-05, 1.309625089971650110e-05, 1.303826178447145984e-05, 1.298025691866278787e-05, 1.292223639812940358e-05, 1.286420031872659852e-05, 1.280614877632855815e-05, 1.274808186681802465e-05, 1.268999968609872124e-05, 1.263190233009801856e-05, 1.257378989474356171e-05, 1.251566247598874391e-05, 1.245752016980240146e-05, 1.239936307216073139e-05, 1.234119127906286162e-05, 1.228300488652016305e-05, 1.222480399055869076e-05, 1.216658868722176916e-05, 1.210835907255939894e-05, 1.205011524264089315e-05, 1.199185729355748267e-05, 1.193358532139891100e-05, 1.187529942227891298e-05, 1.181699969232502671e-05, 1.175868622767032142e-05, 1.170035912446910652e-05, 1.164201847888617772e-05, 1.158366438709938517e-05, 1.152529694529930315e-05, 1.146691624969196772e-05, 1.140852239648543082e-05, 1.135011548191826981e-05, 1.129169560222324121e-05, 1.123326285365544629e-05, 1.117481733248184815e-05, 1.111635913497346720e-05, 1.105788835741797142e-05, 1.099940509612237672e-05, 1.094090944738925039e-05, 1.088240150754276246e-05, 1.082388137291799103e-05, 1.076534913985047162e-05, 1.070680490470438130e-05, 1.064824876383642972e-05, 1.058968081362386537e-05, 1.053110115045416043e-05, 1.047250987071439576e-05, 1.041390707081709707e-05, 1.035529284717666204e-05, 1.029666729621182344e-05, 1.023803051435846138e-05, 1.017938259806171745e-05, 1.012072364376540506e-05, 1.006205374793772541e-05, 1.000337300704793172e-05, 9.944681517568611126e-06, 9.885979375988596845e-06, 9.827266678802348100e-06, 9.768543522512520002e-06, 9.709810003632177695e-06, 9.651066218674494746e-06, 9.592312264168043778e-06, 9.533548236648929232e-06, 9.474774232650033437e-06, 9.415990348727137408e-06, 9.357196681435193765e-06, 9.298393327330788205e-06, 9.239580382984907681e-06, 9.180757944972604901e-06, 9.121926109875303960e-06, 9.063084974283136446e-06, 9.004234634784548356e-06, 8.945375187981678819e-06, 8.886506730479817927e-06, 8.827629358889844496e-06, 8.768743169828038025e-06, 8.709848259918592686e-06, 8.650944725782912527e-06, 8.592032664055273107e-06, 8.533112171372070958e-06, 8.474183344374351125e-06, 8.415246279707666566e-06, 8.356301074024468473e-06, 8.297347823973496341e-06, 8.238386626215476875e-06, 8.179417577412219286e-06, 8.120440774229300391e-06, 8.061456313338426135e-06, 8.002464291406811495e-06, 7.943464805112776051e-06, 7.884457951135022240e-06, 7.825443826155237443e-06, 7.766422526857783975e-06, 7.707394149932275749e-06, 7.648358792062829440e-06, 7.589316549943765925e-06, 7.530267520268893627e-06, 7.471211799733870891e-06, 7.412149485036299154e-06, 7.353080672877997228e-06, 7.294005459954347326e-06, 7.234923942969932129e-06, 7.175836218627962974e-06, 7.116742383632556676e-06, 7.057642534691369798e-06, 6.998536768504862515e-06, 6.939425181779306493e-06, 6.880307871229170983e-06, 6.821184933553438933e-06, 6.762056465461682895e-06, 6.702922563663313642e-06, 6.643783324859669718e-06, 6.584638845759537632e-06, 6.525489223068527516e-06, 6.466334553491526985e-06, 6.407174933735140590e-06, 6.348010460497117150e-06, 6.288841230479192471e-06, 6.229667340389675334e-06, 6.170488886919600128e-06, 6.111305966768815470e-06, 6.052118676635420004e-06, 5.992927113207563974e-06, 5.933731373176553668e-06, 5.874531553239278169e-06, 5.815327750074418738e-06, 5.756120060368556915e-06, 5.696908580805480721e-06, 5.637693408055590826e-06, 5.578474638804541267e-06, 5.519252369716402835e-06, 5.460026697462374102e-06, 5.400797718710032576e-06, 5.341565530112789138e-06, 5.282330228335958022e-06, 5.223091910032912842e-06, 5.163850671847626835e-06, 5.104606610427611301e-06, 5.045359822415859460e-06, 4.986110404440221281e-06, 4.926858453142156011e-06, 4.867604065139700740e-06, 4.808347337056351687e-06, 4.749088365507664137e-06, 4.689827247103768128e-06, 4.630564078449182105e-06, 4.571298956145347243e-06, 4.512031976779852341e-06, 4.452763236942154750e-06, 4.393492833215497142e-06, 4.334220862166194236e-06, 4.274947420369861171e-06, 4.215672604387479747e-06, 4.156396510767946296e-06, 4.097119236061060935e-06, 4.037840876806810058e-06, 3.978561529537879481e-06, 3.919281290782125237e-06, 3.860000257051867084e-06, 3.800718524859539549e-06, 3.741436190706992640e-06, 3.682153351088008371e-06, 3.622870102488086048e-06, 3.563586541386969386e-06, 3.504302764247928582e-06, 3.445018867533408821e-06, 3.385734947694350887e-06, 3.326451101172664498e-06, 3.267167424401048738e-06, 3.207884013805521293e-06, 3.148600965794662406e-06, 3.089318376775307432e-06, 3.030036343141863634e-06, 2.970754961278739054e-06, 2.911474327562867512e-06, 2.852194538352984327e-06, 2.792915690005307012e-06, 2.733637878862792780e-06, 2.674361201257685570e-06, 2.615085753511290315e-06, 2.555811631936522085e-06, 2.496538932827134374e-06, 2.437267752473433248e-06, 2.377998187151566620e-06, 2.318730333125975559e-06, 2.259464286649276980e-06, 2.200200143964725115e-06, 2.140938001295517732e-06, 2.081677954860444211e-06, 2.022420100863201078e-06, 1.963164535494867880e-06, 1.903911354936389836e-06, 1.844660655347863298e-06, 1.785412532881575822e-06, 1.726167083684501947e-06, 1.666924403874386802e-06, 1.607684589565967488e-06, 1.548447736860297501e-06, 1.489213941836626441e-06, 1.429983300568132795e-06, 1.370755909111169167e-06, 1.311531863507759539e-06, 1.252311259788102466e-06, 1.193094193959833875e-06, 1.133880762021075183e-06, 1.074671059962925058e-06, 1.015465183745540265e-06, 9.562632293243879710e-07, 8.970652926395201917e-07, 8.378714696048668691e-07, 7.786818561344794948e-07, 7.194965481186108992e-07, 6.603156414262121986e-07, 6.011392319179674679e-07, 5.419674154382202459e-07, 4.828002878042710622e-07, 4.236379448352395554e-07, 3.644804823149806828e-07, 3.053279960209433444e-07, 2.461805817134676981e-07, 1.870383351250769692e-07, 1.279013519867057993e-07, 6.876972800380035132e-08, 9.643558858806387505e-09, -4.947705977579843183e-08, -1.085920322455717333e-07, -1.677012629248087547e-07, -2.268046561876873021e-07, -2.859021164453424335e-07, -3.449935481170104286e-07, -4.040788556433694650e-07, -4.631579434840558000e-07, -5.222307161178180362e-07, -5.812970780400357920e-07, -6.403569337734150802e-07, -6.994101878523244985e-07, -7.584567448308645949e-07, -8.174965092935538232e-07, -8.765293858291317203e-07, -9.355552790544367644e-07, -9.945740936119145104e-07, -1.053585734156590647e-06, -1.112590105366789773e-06, -1.171587111941622678e-06, -1.230576658598528249e-06, -1.289558650083947570e-06, -1.348532991157683246e-06, -1.407499586600952569e-06, -1.466458341227069027e-06, -1.525409159855266020e-06, -1.584351947334549947e-06, -1.643286608541213525e-06, -1.702213048365835739e-06, -1.761131171723945144e-06, -1.820040883553567276e-06, -1.878942088815360816e-06, -1.937834692490131759e-06, -1.996718599589530804e-06, -2.055593715140397857e-06, -2.114459944195461539e-06, -2.173317191830836205e-06, -2.232165363143561308e-06, -2.291004363262279952e-06, -2.349834097331581057e-06, -2.408654470522694000e-06, -2.467465388031027139e-06, -2.526266755076280886e-06, -2.585058476899986236e-06, -2.643840458776185003e-06, -2.702612605995806719e-06, -2.761374823877317110e-06, -2.820127017764248996e-06, -2.878869093022748435e-06, -2.937600955052195246e-06, -2.996322509269628191e-06, -3.055033661120376087e-06, -3.113734316075630628e-06, -3.172424379632525166e-06, -3.231103757311713463e-06, -3.289772354668007577e-06, -3.348430077277411484e-06, -3.407076830734626992e-06, -3.465712520676849005e-06, -3.524337052757657014e-06, -3.582950332657680928e-06, -3.641552266092607232e-06, -3.700142758797576643e-06, -3.758721716537870694e-06, -3.817289045106393937e-06, -3.875844650321235753e-06, -3.934388438036273087e-06, -3.992920314128265482e-06, -4.051440184494335998e-06, -4.109947955075732183e-06, -4.168443531831770492e-06, -4.226926820750437751e-06, -4.285397727859080713e-06, -4.343856159195699264e-06, -4.402302020845774569e-06, -4.460735218913598703e-06, -4.519155659535534945e-06, -4.577563248874933047e-06, -4.635957893135344638e-06, -4.694339498531946027e-06, -4.752707971328209648e-06, -4.811063217807375988e-06, -4.869405144283056751e-06, -4.927733657109766012e-06, -4.986048662657041670e-06, -5.044350067332986188e-06, -5.102637777581945721e-06, -5.160911699871457338e-06, -5.219171740700353437e-06, -5.277417806609289513e-06, -5.335649804152177126e-06, -5.393867639932912099e-06, -5.452071220576771906e-06, -5.510260452741041704e-06, -5.568435243125535326e-06, -5.626595498446777718e-06, -5.684741125461514338e-06, -5.742872030964266620e-06, -5.800988121774520600e-06, -5.859089304744623806e-06, -5.917175486770358764e-06, -5.975246574765063610e-06, -6.033302475683246512e-06, -6.091343096518065755e-06, -6.149368344288531068e-06, -6.207378126049992433e-06, -6.265372348891709105e-06, -6.323350919934480455e-06, -6.381313746341040764e-06, -6.439260735300755873e-06, -6.497191794040030681e-06, -6.555106829820011991e-06, -6.613005749936623238e-06, -6.670888461718127572e-06, -6.728754872535664955e-06, -6.786604889787903916e-06, -6.844438420911472768e-06, -6.902255373378534549e-06, -6.960055654694337404e-06, -7.017839172407823674e-06, -7.075605834096062274e-06, -7.133355547374875572e-06, -7.191088219896418566e-06, -7.248803759349175498e-06, -7.306502073455706745e-06, -7.364183069983008032e-06, -7.421846656727210478e-06, -7.479492741524014344e-06, -7.537121232246354614e-06, -7.594732036804356099e-06, -7.652325063143131155e-06, -7.709900219253093152e-06, -7.767457413154620099e-06, -7.824996552908621377e-06, -7.882517546614053395e-06, -7.940020302405408981e-06, -7.997504728463308683e-06, -8.054970732999128816e-06, -8.112418224265396249e-06, -8.169847110553430267e-06, -8.227257300193435743e-06, -8.284648701552180572e-06, -8.342021223043321010e-06, -8.399374773112078837e-06, -8.456709260245851302e-06, -8.514024592971605642e-06, -8.571320679856148444e-06, -8.628597429503560826e-06, -8.685854750565832089e-06, -8.743092551727391201e-06, -8.800310741715608315e-06, -8.857509229298379027e-06, -8.914687923281679839e-06, -8.971846732519998525e-06, -9.028985565903610002e-06, -9.086104332356204636e-06, -9.143202940858134213e-06, -9.200281300420809526e-06, -9.257339320097166311e-06, -9.314376908992134572e-06, -9.371393976234425612e-06, -9.428390431012722360e-06, -9.485366182547456235e-06, -9.542321140103971730e-06, -9.599255212987418804e-06, -9.656168310555661666e-06, -9.713060342191358871e-06, -9.769931217337892769e-06, -9.826780845471395388e-06, -9.883609136111077162e-06, -9.940415998829596302e-06, -9.997201343227756228e-06, -1.005396507895748388e-05, -1.011070711571952580e-05, -1.016742736325074769e-05, -1.022412573133205082e-05, -1.028080212979853808e-05, -1.033745646851179571e-05, -1.039408865739566516e-05, -1.045069860640825715e-05, -1.050728622555238203e-05, -1.056385142488582765e-05, -1.062039411449617203e-05, -1.067691420452359391e-05, -1.073341160515866544e-05, -1.078988622662976691e-05, -1.084633797921074565e-05, -1.090276677323125492e-05, -1.095917251905159530e-05, -1.101555512708558124e-05, -1.107191450779821170e-05, -1.112825057169314250e-05, -1.118456322932290330e-05, -1.124085239128653940e-05, -1.129711796822731291e-05, -1.135335987084271977e-05, -1.140957800986974291e-05, -1.146577229609491329e-05, -1.152194264035202970e-05, -1.157808895352216723e-05, -1.163421114653151393e-05, -1.169030913036134213e-05, -1.174638281603327677e-05, -1.180243211461926165e-05, -1.185845693723939270e-05, -1.191445719505935485e-05, -1.197043279930092525e-05, -1.202638366122657251e-05, -1.208230969215007850e-05, -1.213821080343397352e-05, -1.219408690648962951e-05, -1.224993791277501705e-05, -1.230576373380475291e-05, -1.236156428113531592e-05, -1.241733946637511141e-05, -1.247308920118222491e-05, -1.252881339726435094e-05, -1.258451196637667890e-05, -1.264018482033192861e-05, -1.269583187098537317e-05, -1.275145303024515578e-05, -1.280704821006984519e-05, -1.286261732246614197e-05, -1.291816027949885990e-05, -1.297367699327617240e-05, -1.302916737595983957e-05, -1.308463133976268066e-05, -1.314006879694879769e-05, -1.319547965983118510e-05, -1.325086384078186706e-05, -1.330622125221713540e-05, -1.336155180660745644e-05, -1.341685541647539245e-05, -1.347213199439551521e-05, -1.352738145299215121e-05, -1.358260370495197363e-05, -1.363779866299670930e-05, -1.369296623991820918e-05, -1.374810634855109602e-05, -1.380321890178287962e-05, -1.385830381256167158e-05, -1.391336099388376275e-05, -1.396839035879123457e-05, -1.402339182039472565e-05, -1.407836529184829857e-05, -1.413331068635998717e-05, -1.418822791720144424e-05, -1.424311689768108886e-05, -1.429797754117878737e-05, -1.435280976111874828e-05, -1.440761347097962396e-05, -1.446238858430209843e-05, -1.451713501467648165e-05, -1.457185267574060891e-05, -1.462654148120201278e-05, -1.468120134481348615e-05, -1.473583218038302646e-05, -1.479043390178385777e-05, -1.484500642292994303e-05, -1.489954965779826614e-05, -1.495406352042648905e-05, -1.500854792490078497e-05, -1.506300278536341935e-05, -1.511742801602257541e-05, -1.517182353112563200e-05, -1.522618924499348871e-05, -1.528052507199397417e-05, -1.533483092655145135e-05, -1.538910672315705992e-05, -1.544335237634414214e-05, -1.549756780071052654e-05, -1.555175291091614954e-05, -1.560590762167105800e-05, -1.566003184774273778e-05, -1.571412550396614940e-05, -1.576818850521690077e-05, -1.582222076644559952e-05, -1.587622220265116462e-05, -1.593019272889308470e-05, -1.598413226028921571e-05, -1.603804071201578774e-05, -1.609191799930530774e-05, -1.614576403745613778e-05, -1.619957874181822424e-05, -1.625336202780294372e-05, -1.630711381088076860e-05, -1.636083400658147713e-05, -1.641452253049163266e-05, -1.646817929826470056e-05, -1.652180422560650303e-05, -1.657539722828495316e-05, -1.662895822212804239e-05, -1.668248712302111984e-05, -1.673598384691711772e-05, -1.678944830982196876e-05, -1.684288042780446231e-05, -1.689628011699394043e-05, -1.694964729358039950e-05, -1.700298187381217953e-05, -1.705628377400593545e-05, -1.710955291053204100e-05, -1.716278919982457357e-05, -1.721599255837887138e-05, -1.726916290275175368e-05, -1.732230014955933540e-05, -1.737540421548649025e-05, -1.742847501727291866e-05, -1.748151247172254649e-05, -1.753451649570148877e-05, -1.758748700613576270e-05, -1.764042392002076424e-05, -1.769332715440746149e-05, -1.774619662641167820e-05, -1.779903225321204387e-05, -1.785183395205000738e-05, -1.790460164022780409e-05, -1.795733523511780367e-05, -1.801003465414860523e-05, -1.806269981481460878e-05, -1.811533063467363002e-05, -1.816792703134485724e-05, -1.822048892251843639e-05, -1.827301622594356854e-05, -1.832550885942645333e-05, -1.837796674085163753e-05, -1.843038978815858954e-05, -1.848277791935109467e-05, -1.853513105250465142e-05, -1.858744910575468417e-05, -1.863973199729439853e-05, -1.869197964539596048e-05, -1.874419196838739615e-05, -1.879636888466162118e-05, -1.884851031268656104e-05, -1.890061617097902517e-05, -1.895268637813771418e-05, -1.900472085281782912e-05, -1.905671951374029066e-05, -1.910868227969901001e-05, -1.916060906954934211e-05, -1.921249980220562592e-05, -1.926435439666291923e-05, -1.931617277197304121e-05, -1.936795484725456061e-05, -1.941970054170205894e-05, -1.947140977456050936e-05, -1.952308246515834151e-05, -1.957471853288161715e-05, -1.962631789718604109e-05, -1.967788047759211955e-05, -1.972940619369737775e-05, -1.978089496515035263e-05, -1.983234671168378977e-05, -1.988376135308893083e-05, -1.993513880922480043e-05, -1.998647900002801820e-05, -2.003778184548927834e-05, -2.008904726567470165e-05, -2.014027518072336896e-05, -2.019146551083609624e-05, -2.024261817628457240e-05, -2.029373309740948228e-05, -2.034481019461792148e-05, -2.039584938839318130e-05, -2.044685059928073881e-05, -2.049781374789765552e-05, -2.054873875493035479e-05, -2.059962554113503177e-05, -2.065047402733500388e-05, -2.070128413443046188e-05, -2.075205578338460560e-05, -2.080278889523282920e-05, -2.085348339108089832e-05, -2.090413919210475021e-05, -2.095475621954837273e-05, -2.100533439473329793e-05, -2.105587363904480217e-05, -2.110637387394104729e-05, -2.115683502095142045e-05, -2.120725700167382021e-05, -2.125763973778408911e-05, -2.130798315102262037e-05, -2.135828716320331612e-05, -2.140855169621174426e-05, -2.145877667200498938e-05, -2.150896201260962663e-05, -2.155910764013088327e-05, -2.160921347673918098e-05, -2.165927944467927707e-05, -2.170930546626816381e-05, -2.175929146389511248e-05, -2.180923736001974552e-05, -2.185914307718099140e-05, -2.190900853798355576e-05, -2.195883366510738787e-05, -2.200861838130522085e-05, -2.205836260940069804e-05, -2.210806627229737524e-05, -2.215772929296534101e-05, -2.220735159445024601e-05, -2.225693309987143955e-05, -2.230647373242183068e-05, -2.235597341536583156e-05, -2.240543207204848513e-05, -2.245484962588209212e-05, -2.250422600035532854e-05, -2.255356111903108403e-05, -2.260285490554433073e-05, -2.265210728361140001e-05, -2.270131817701856103e-05, -2.275048750962005905e-05, -2.279961520535849165e-05, -2.284870118824237250e-05, -2.289774538235533693e-05, -2.294674771186281994e-05, -2.299570810100112271e-05, -2.304462647407524075e-05, -2.309350275547907081e-05, -2.314233686967315755e-05, -2.319112874119403804e-05, -2.323987829466270870e-05, -2.328858545476070172e-05, -2.333725014626137779e-05, -2.338587229400511489e-05, -2.343445182290885935e-05, -2.348298865797259047e-05, -2.353148272426840393e-05, -2.357993394693831628e-05, -2.362834225121454292e-05, -2.367670756239738375e-05, -2.372502980586407639e-05, -2.377330890707779839e-05, -2.382154479156362172e-05, -2.386973738493929729e-05, -2.391788661289135848e-05, -2.396599240118601736e-05, -2.401405467566501424e-05, -2.406207336225674767e-05, -2.411004838695213740e-05, -2.415797967583552415e-05, -2.420586715506056980e-05, -2.425371075085925289e-05, -2.430151038955069472e-05, -2.434926599751921443e-05, -2.439697750123459675e-05, -2.444464482724955433e-05, -2.449226790218893317e-05, -2.453984665275901639e-05, -2.458738100574487810e-05, -2.463487088800864872e-05, -2.468231622649833424e-05, -2.472971694823465334e-05, -2.477707298031805086e-05, -2.482438424993700543e-05, -2.487165068434682661e-05, -2.491887221088927550e-05, -2.496604875699011858e-05, -2.501318025014892597e-05, -2.506026661794743000e-05, -2.510730778804779386e-05, -2.515430368819237443e-05, -2.520125424620201467e-05, -2.524815938998458846e-05, -2.529501904752214946e-05, -2.534183314687979443e-05, -2.538860161620356938e-05, -2.543532438371835197e-05, -2.548200137773670474e-05, -2.552863252664587477e-05, -2.557521775891671135e-05, -2.562175700310165670e-05, -2.566825018783435984e-05, -2.571469724182849065e-05, -2.576109809388564442e-05, -2.580745267288293791e-05, -2.585376090778183542e-05, -2.590002272762563141e-05, -2.594623806153802746e-05, -2.599240683873123335e-05, -2.603852898849352918e-05, -2.608460444019809825e-05, -2.613063312330059435e-05, -2.617661496733945353e-05, -2.622254990193394926e-05, -2.626843785679264584e-05, -2.631427876170289179e-05, -2.636007254652900721e-05, -2.640581914123134541e-05, -2.645151847584505271e-05, -2.649717048048889114e-05, -2.654277508537162506e-05, -2.658833222077924111e-05, -2.663384181708382178e-05, -2.667930380474137016e-05, -2.672471811428982119e-05, -2.677008467635750850e-05, -2.681540342165280021e-05, -2.686067428096239126e-05, -2.690589718516963997e-05, -2.695107206523434773e-05, -2.699619885220096835e-05, -2.704127747720477118e-05, -2.708630787146002321e-05, -2.713128996626772762e-05, -2.717622369301419397e-05, -2.722110898317083830e-05, -2.726594576829236710e-05, -2.731073398002693153e-05, -2.735547355009404697e-05, -2.740016441031303300e-05, -2.744480649258077709e-05, -2.748939972888007278e-05, -2.753394405128565059e-05, -2.757843939195411860e-05, -2.762288568312211599e-05, -2.766728285712497141e-05, -2.771163084637585924e-05, -2.775592958337444609e-05, -2.780017900071535774e-05, -2.784437903106518387e-05, -2.788852960719180916e-05, -2.793263066194165518e-05, -2.797668212825009211e-05, -2.802068393913762374e-05, -2.806463602771981126e-05, -2.810853832718551473e-05, -2.815239077082489595e-05, -2.819619329200758533e-05, -2.823994582419060340e-05, -2.828364830092686835e-05, -2.832730065584472835e-05, -2.837090282266669115e-05, -2.841445473520687280e-05, -2.845795632736168707e-05, -2.850140753311768897e-05, -2.854480828654934539e-05, -2.858815852181781532e-05, -2.863145817317843428e-05, -2.867470717496928951e-05, -2.871790546161694254e-05, -2.876105296764468945e-05, -2.880414962765273353e-05, -2.884719537633619656e-05, -2.889019014848309615e-05, -2.893313387896469290e-05, -2.897602650274338815e-05, -2.901886795487103332e-05, -2.906165817048863851e-05, -2.910439708482509519e-05, -2.914708463320446407e-05, -2.918972075103474679e-05, -2.923230537381590571e-05, -2.927483843713751246e-05, -2.931731987667724029e-05, -2.935974962820866012e-05, -2.940212762758998856e-05, -2.944445381077132837e-05, -2.948672811379333690e-05, -2.952895047278702957e-05, -2.957112082397206213e-05, -2.961323910366468257e-05, -2.965530524826593027e-05, -2.969731919426975395e-05, -2.973928087826106011e-05, -2.978119023691381910e-05, -2.982304720699882389e-05, -2.986485172537245165e-05, -2.990660372898432435e-05, -2.994830315487540459e-05, -2.998994994017819551e-05, -3.003154402211499931e-05, -3.007308533800547614e-05, -3.011457382525522614e-05, -3.015600942136383619e-05, -3.019739206392270140e-05, -3.023872169061548926e-05, -3.027999823921600510e-05, -3.032122164759588998e-05, -3.036239185371385652e-05, -3.040350879562243812e-05, -3.044457241146703686e-05, -3.048558263948376529e-05, -3.052653941800686978e-05, -3.056744268546002647e-05, -3.060829238035379674e-05, -3.064908844130319468e-05, -3.068983080700900154e-05, -3.073051941626475208e-05, -3.077115420796308393e-05, -3.081173512108452281e-05, -3.085226209470457739e-05, -3.089273506799257365e-05, -3.093315398021133649e-05, -3.097351877071561081e-05, -3.101382937896141956e-05, -3.105408574448548421e-05, -3.109428780693169282e-05, -3.113443550603055445e-05, -3.117452878160682241e-05, -3.121456757358464427e-05, -3.125455182197951163e-05, -3.129448146689514301e-05, -3.133435644854133261e-05, -3.137417670721476661e-05, -3.141394218330712765e-05, -3.145365281731195918e-05, -3.149330854980489906e-05, -3.153290932146959202e-05, -3.157245507307713048e-05, -3.161194574549390821e-05, -3.165138127968891843e-05, -3.169076161671517320e-05, -3.173008669772692199e-05, -3.176935646397738836e-05, -3.180857085680985921e-05, -3.184772981766353266e-05, -3.188683328808011137e-05, -3.192588120968678733e-05, -3.196487352421178665e-05, -3.200381017348312944e-05, -3.204269109941933961e-05, -3.208151624403692584e-05, -3.212028554944884335e-05, -3.215899895786247461e-05, -3.219765641158694092e-05, -3.223625785302266014e-05, -3.227480322466645609e-05, -3.231329246911915463e-05, -3.235172552906756565e-05, -3.239010234730073254e-05, -3.242842286670811613e-05, -3.246668703027101593e-05, -3.250489478106940067e-05, -3.254304606228056651e-05, -3.258114081717730751e-05, -3.261917898913497648e-05, -3.265716052162119862e-05, -3.269508535820285104e-05, -3.273295344254417900e-05, -3.277076471840756160e-05, -3.280851912965096392e-05, -3.284621662023570938e-05, -3.288385713421567162e-05, -3.292144061574450476e-05, -3.295896700907405096e-05, -3.299643625855432013e-05, -3.303384830863151801e-05, -3.307120310385595408e-05, -3.310850058887065744e-05, -3.314574070841929825e-05, -3.318292340734359242e-05, -3.322004863058286117e-05, -3.325711632317976374e-05, -3.329412643027100714e-05, -3.333107889709355318e-05, -3.336797366898374437e-05, -3.340481069137664658e-05, -3.344158990980495135e-05, -3.347831126990565042e-05, -3.351497471740993241e-05, -3.355158019814990481e-05, -3.358812765805738784e-05, -3.362461704316366371e-05, -3.366104829959766059e-05, -3.369742137359354881e-05, -3.373373621147972940e-05, -3.376999275968643033e-05, -3.380619096474379555e-05, -3.384233077328020452e-05, -3.387841213202909588e-05, -3.391443498782089694e-05, -3.395039928758105177e-05, -3.398630497834545755e-05, -3.402215200724365262e-05, -3.405794032150580964e-05, -3.409366986846747892e-05, -3.412934059555983065e-05, -3.416495245031649888e-05, -3.420050538037167065e-05, -3.423599933345914406e-05, -3.427143425741801359e-05, -3.430681010018564307e-05, -3.434212680979518561e-05, -3.437738433439083694e-05, -3.441258262221158596e-05, -3.444772162159752339e-05, -3.448280128099527641e-05, -3.451782154894928752e-05, -3.455278237410099469e-05, -3.458768370520310211e-05, -3.462252549110331044e-05, -3.465730768075118111e-05, -3.469203022320461446e-05, -3.472669306761197395e-05, -3.476129616323505770e-05, -3.479583945943087709e-05, -3.483032290565900226e-05, -3.486474645148736936e-05, -3.489911004657651896e-05, -3.493341364069424632e-05, -3.496765718371395477e-05, -3.500184062560644289e-05, -3.503596391644535259e-05, -3.507002700641323391e-05, -3.510402984578419775e-05, -3.513797238494602006e-05, -3.517185457438330959e-05, -3.520567636468489403e-05, -3.523943770654266804e-05, -3.527313855075149161e-05, -3.530677884820771959e-05, -3.534035854991597798e-05, -3.537387760697888433e-05, -3.540733597060278045e-05, -3.544073359210338383e-05, -3.547407042289062233e-05, -3.550734641448273564e-05, -3.554056151850445918e-05, -3.557371568667967867e-05, -3.560680887083753554e-05, -3.563984102291091580e-05, -3.567281209493501350e-05, -3.570572203905384947e-05, -3.573857080751037800e-05, -3.577135835265345961e-05, -3.580408462693610597e-05, -3.583674958291555447e-05, -3.586935317325164191e-05, -3.590189535071313352e-05, -3.593437606816881898e-05, -3.596679527859336704e-05, -3.599915293506594327e-05, -3.603144899077027094e-05, -3.606368339899359432e-05, -3.609585611313205223e-05, -3.612796708668216029e-05, -3.616001627324697730e-05, -3.619200362653424179e-05, -3.622392910035546399e-05, -3.625579264863141459e-05, -3.628759422538399326e-05, -3.631933378474122272e-05, -3.635101128093680829e-05, -3.638262666830962292e-05, -3.641417990130239933e-05, -3.644567093446793711e-05, -3.647709972246004960e-05, -3.650846622003943892e-05, -3.653977038207285573e-05, -3.657101216353223860e-05, -3.660219151949446336e-05, -3.663330840514600508e-05, -3.666436277577534873e-05, -3.669535458677811878e-05, -3.672628379365603567e-05, -3.675715035201564183e-05, -3.678795421757369565e-05, -3.681869534615042226e-05, -3.684937369366803636e-05, -3.687998921616357642e-05, -3.691054186977495914e-05, -3.694103161074638694e-05, -3.697145839543303708e-05, -3.700182218029213736e-05, -3.703212292188915963e-05, -3.706236057689633575e-05, -3.709253510209111940e-05, -3.712264645436213567e-05, -3.715269459070194395e-05, -3.718267946820588601e-05, -3.721260104408485246e-05, -3.724245927565119491e-05, -3.727225412032399789e-05, -3.730198553563563829e-05, -3.733165347921716895e-05, -3.736125790881091572e-05, -3.739079878226965080e-05, -3.742027605754937595e-05, -3.744968969271334766e-05, -3.747903964593807410e-05, -3.750832587549798722e-05, -3.753754833978457218e-05, -3.756670699729195415e-05, -3.759580180662172312e-05, -3.762483272648875461e-05, -3.765379971570773174e-05, -3.768270273320543739e-05, -3.771154173801909392e-05, -3.774031668929027144e-05, -3.776902754626832327e-05, -3.779767426831623389e-05, -3.782625681489586704e-05, -3.785477514558688501e-05, -3.788322922007156306e-05, -3.791161899814219586e-05, -3.793994443969949830e-05, -3.796820550475244962e-05, -3.799640215341762938e-05, -3.802453434592379137e-05, -3.805260204260461985e-05, -3.808060520390266652e-05, -3.810854379037407357e-05, -3.813641776267626804e-05, -3.816422708157936620e-05, -3.819197170796511650e-05, -3.821965160282029270e-05, -3.824726672724195224e-05, -3.827481704243612844e-05, -3.830230250971707154e-05, -3.832972309051183626e-05, -3.835707874635286175e-05, -3.838436943888199671e-05, -3.841159512985539189e-05, -3.843875578113115364e-05, -3.846585135468042323e-05, -3.849288181258675331e-05, -3.851984711703910136e-05, -3.854674723033740645e-05, -3.857358211489134251e-05, -3.860035173322026405e-05, -3.862705604795188481e-05, -3.865369502182765813e-05, -3.868026861769524171e-05, -3.870677679851313937e-05, -3.873321952735011832e-05, -3.875959676738361667e-05, -3.878590848190471726e-05, -3.881215463431113424e-05, -3.883833518811173954e-05, -3.886445010692582435e-05, -3.889049935448284155e-05, -3.891648289462140285e-05, -3.894240069129393411e-05, -3.896825270855989223e-05, -3.899403891059029177e-05, -3.901975926166630901e-05, -3.904541372617905830e-05, -3.907100226863356301e-05, -3.909652485364184369e-05, -3.912198144592772927e-05, -3.914737201032611160e-05, -3.917269651178247118e-05, -3.919795491535179292e-05, -3.922314718620353993e-05, -3.924827328961622572e-05, -3.927333319097495444e-05, -3.929832685578363847e-05, -3.932325424965208284e-05, -3.934811533830156213e-05, -3.937291008756756486e-05, -3.939763846339379644e-05, -3.942230043183594007e-05, -3.944689595906115525e-05, -3.947142501134676996e-05, -3.949588755508496310e-05, -3.952028355677688942e-05, -3.954461298303183251e-05, -3.956887580057764702e-05, -3.959307197624875114e-05, -3.961720147699142558e-05, -3.964126426986821144e-05, -3.966526032204510302e-05, -3.968918960080804805e-05, -3.971305207354988980e-05, -3.973684770777683166e-05, -3.976057647110534717e-05, -3.978423833126882073e-05, -3.980783325610430680e-05, -3.983136121356867096e-05, -3.985482217172669079e-05, -3.987821609875471504e-05, -3.990154296294603722e-05, -3.992480273269928109e-05, -3.994799537652863957e-05, -3.997112086306258728e-05, -3.999417916103872379e-05, -4.001717023930675515e-05, -4.004009406683339318e-05, -4.006295061268988711e-05, -4.008573984606748702e-05, -4.010846173626574800e-05, -4.013111625269664338e-05, -4.015370336488899636e-05, -4.017622304247766511e-05, -4.019867525521354454e-05, -4.022105997296221782e-05, -4.024337716569860316e-05, -4.026562680351062647e-05, -4.028780885660318556e-05, -4.030992329528753168e-05, -4.033197008999089183e-05, -4.035394921125558785e-05, -4.037586062973380516e-05, -4.039770431619144162e-05, -4.041948024150769425e-05, -4.044118837667354808e-05, -4.046282869279626881e-05, -4.048440116109322968e-05, -4.050590575289572643e-05, -4.052734243964839462e-05, -4.054871119290912149e-05, -4.057001198434771782e-05, -4.059124478575079007e-05, -4.061240956901490315e-05, -4.063350630615118145e-05, -4.065453496928401463e-05, -4.067549553065019700e-05, -4.069638796260308816e-05, -4.071721223760641948e-05, -4.073796832823841410e-05, -4.075865620719125833e-05, -4.077927584727010561e-05, -4.079982722139329328e-05, -4.082031030259560201e-05, -4.084072506402235364e-05, -4.086107147893375480e-05, -4.088134952070390755e-05, -4.090155916282032150e-05, -4.092170037888389348e-05, -4.094177314261180099e-05, -4.096177742783252846e-05, -4.098171320848920790e-05, -4.100158045863907006e-05, -4.102137915245232633e-05, -4.104110926421601765e-05, -4.106077076832876293e-05, -4.108036363930356441e-05, -4.109988785176807191e-05, -4.111934338046362744e-05, -4.113873020024525834e-05, -4.115804828608461826e-05, -4.117729761306504043e-05, -4.119647815638498002e-05, -4.121558989135722811e-05, -4.123463279340860673e-05, -4.125360683807982658e-05, -4.127251200102836692e-05, -4.129134825802348150e-05, -4.131011558494981028e-05, -4.132881395780636975e-05, -4.134744335270586858e-05, -4.136600374587828544e-05, -4.138449511366615275e-05, -4.140291743252389936e-05, -4.142127067902623958e-05, -4.143955482985851022e-05, -4.145776986182102096e-05, -4.147591575183216464e-05, -4.149399247691888985e-05, -4.151200001422913536e-05, -4.152993834102186902e-05, -4.154780743467200056e-05, -4.156560727266815218e-05, -4.158333783261749681e-05, -4.160099909223566826e-05, -4.161859102935956158e-05, -4.163611362193745324e-05, -4.165356684803245708e-05, -4.167095068582621733e-05, -4.168826511361018079e-05, -4.170551010979322692e-05, -4.172268565290126124e-05, -4.173979172157245841e-05, -4.175682829456041318e-05, -4.177379535073674251e-05, -4.179069286908266938e-05, -4.180752082870037311e-05, -4.182427920880360419e-05, -4.184096798872162808e-05, -4.185758714790236258e-05, -4.187413666590350780e-05, -4.189061652240105702e-05, -4.190702669718770438e-05, -4.192336717016877226e-05, -4.193963792136547750e-05, -4.195583893091695069e-05, -4.197197017907345316e-05, -4.198803164620280761e-05, -4.200402331278993060e-05, -4.201994515943278030e-05, -4.203579716684531097e-05, -4.205157931585737808e-05, -4.206729158741325431e-05, -4.208293396257536327e-05, -4.209850642251904823e-05, -4.211400894853619743e-05, -4.212944152203417338e-05, -4.214480412453609076e-05, -4.216009673767953566e-05, -4.217531934322056358e-05, -4.219047192302830554e-05, -4.220555445908824100e-05, -4.222056693350183872e-05, -4.223550932848518119e-05, -4.225038162637277965e-05, -4.226518380961208533e-05, -4.227991586076779238e-05, -4.229457776251954748e-05, -4.230916949766338640e-05, -4.232369104911032457e-05, -4.233814239988946735e-05, -4.235252353314319213e-05, -4.236683443213092948e-05, -4.238107508022782144e-05, -4.239524546092496548e-05, -4.240934555782841837e-05, -4.242337535466264532e-05, -4.243733483526583079e-05, -4.245122398359274486e-05, -4.246504278371428243e-05, -4.247879121981637903e-05, -4.249246927620341252e-05, -4.250607693729345287e-05, -4.251961418762120314e-05, -4.253308101183791133e-05, -4.254647739471049625e-05, -4.255980332112118162e-05, -4.257305877607069446e-05, -4.258624374467357592e-05, -4.259935821216121024e-05, -4.261240216388105908e-05, -4.262537558529704771e-05, -4.263827846198821661e-05, -4.265111077965267873e-05, -4.266387252409979973e-05, -4.267656368126016583e-05, -4.268918423717781827e-05, -4.270173417801274688e-05, -4.271421349004328900e-05, -4.272662215966289029e-05, -4.273896017337921717e-05, -4.275122751782004530e-05, -4.276342417972675439e-05, -4.277555014595727591e-05, -4.278760540348800395e-05, -4.279958993940743235e-05, -4.281150374092499090e-05, -4.282334679536363892e-05, -4.283511909016276550e-05, -4.284682061287974124e-05, -4.285845135118752626e-05, -4.287001129287330815e-05, -4.288150042584412626e-05, -4.289291873812145072e-05, -4.290426621784287648e-05, -4.291554285326471186e-05, -4.292674863275626614e-05, -4.293788354480494534e-05, -4.294894757801581849e-05, -4.295994072110845995e-05, -4.297086296291916522e-05, -4.298171429240279406e-05, -4.299249469862681419e-05, -4.300320417077872130e-05, -4.301384269816085519e-05, -4.302441027019145007e-05, -4.303490687640764328e-05, -4.304533250645995937e-05, -4.305568715011671467e-05, -4.306597079726399020e-05, -4.307618343790288728e-05, -4.308632506215068626e-05, -4.309639566024356383e-05, -4.310639522253031139e-05, -4.311632373948010743e-05, -4.312618120167638504e-05, -4.313596759981992864e-05, -4.314568292472766779e-05, -4.315532716733338196e-05, -4.316490031868669083e-05, -4.317440236995540568e-05, -4.318383331242222256e-05, -4.319319313748708043e-05, -4.320248183666630735e-05, -4.321169940159302707e-05, -4.322084582401596639e-05, -4.322992109580240961e-05, -4.323892520893441062e-05, -4.324785815551123233e-05, -4.325671992774861486e-05, -4.326551051797845703e-05, -4.327422991865049009e-05, -4.328287812233000772e-05, -4.329145512169887565e-05, -4.329996090955573495e-05, -4.330839547881571745e-05, -4.331675882251045251e-05, -4.332505093378890047e-05, -4.333327180591561118e-05, -4.334142143227225546e-05, -4.334949980635687287e-05, -4.335750692178411570e-05, -4.336544277228457811e-05, -4.337330735170724237e-05, -4.338110065401586709e-05, -4.338882267329160288e-05, -4.339647340373169805e-05, -4.340405283965019663e-05, -4.341156097547820935e-05, -4.341899780576280237e-05, -4.342636332516768845e-05, -4.343365752847329472e-05, -4.344088041057622056e-05, -4.344803196649003044e-05, -4.345511219134515907e-05, -4.346212108038793556e-05, -4.346905862898137630e-05, -4.347592483260519848e-05, -4.348271968685518316e-05, -4.348944318744482184e-05, -4.349609533020331074e-05, -4.350267611107538814e-05, -4.350918552612456668e-05, -4.351562357152897949e-05, -4.352199024358386709e-05, -4.352828553870172646e-05, -4.353450945341082705e-05, -4.354066198435498715e-05, -4.354674312829660967e-05, -4.355275288211319236e-05, -4.355869124279864238e-05, -4.356455820746470614e-05, -4.357035377333731008e-05, -4.357607793776114820e-05, -4.358173069819598904e-05, -4.358731205221809862e-05, -4.359282199752125019e-05, -4.359826053191485391e-05, -4.360362765332388235e-05, -4.360892335979151999e-05, -4.361414764947615458e-05, -4.361930052065261717e-05, -4.362438197171336797e-05, -4.362939200116510146e-05, -4.363433060763301539e-05, -4.363919778985734816e-05, -4.364399354669517449e-05, -4.364871787711949066e-05, -4.365337078022095597e-05, -4.365795225520416583e-05, -4.366246230139266617e-05, -4.366690091822456244e-05, -4.367126810525470834e-05, -4.367556386215503105e-05, -4.367978818871227480e-05, -4.368394108483034539e-05, -4.368802255052943608e-05, -4.369203258594606825e-05, -4.369597119133239346e-05, -4.369983836705748767e-05, -4.370363411360570464e-05, -4.370735843157891212e-05, -4.371101132169428951e-05, -4.371459278478514782e-05, -4.371810282180124137e-05, -4.372154143380859841e-05, -4.372490862198883668e-05, -4.372820438764049155e-05, -4.373142873217761338e-05, -4.373458165713047901e-05, -4.373766316414553752e-05, -4.374067325498517988e-05, -4.374361193152800995e-05, -4.374647919576879712e-05, -4.374927504981790025e-05, -4.375199949590214863e-05, -4.375465253636404915e-05, -4.375723417366205055e-05, -4.375974441037100426e-05, -4.376218324918153415e-05, -4.376455069290001622e-05, -4.376684674444864637e-05, -4.376907140686605706e-05, -4.377122468330618563e-05, -4.377330657703945338e-05, -4.377531709145166786e-05, -4.377725623004447003e-05, -4.377912399643561216e-05, -4.378092039435863253e-05, -4.378264542766258435e-05, -4.378429910031261861e-05, -4.378588141638953675e-05, -4.378739238008972972e-05, -4.378883199572527964e-05, -4.379020026772446119e-05, -4.379149720063075233e-05, -4.379272279910349834e-05, -4.379387706791760014e-05, -4.379496001196358878e-05, -4.379597163624786266e-05, -4.379691194589177273e-05, -4.379778094613318099e-05, -4.379857864232478679e-05, -4.379930503993505517e-05, -4.379996014454794580e-05, -4.380054396186286556e-05, -4.380105649769490568e-05, -4.380149775797446233e-05, -4.380186774874714168e-05, -4.380216647617434948e-05, -4.380239394653266086e-05, -4.380255016621415913e-05, -4.380263514172617829e-05, -4.380264887969150634e-05, -4.380259138684791767e-05, -4.380246267004879652e-05, -4.380226273626277781e-05, -4.380199159257336768e-05, -4.380164924618000738e-05, -4.380123570439649436e-05, -4.380075097465237145e-05, -4.380019506449213401e-05, -4.379956798157537900e-05, -4.379886973367692698e-05, -4.379810032868667301e-05, -4.379725977460932238e-05, -4.379634807956491241e-05, -4.379536525178838550e-05, -4.379431129962947395e-05, -4.379318623155323530e-05, -4.379199005613930017e-05, -4.379072278208253629e-05, -4.378938441819249289e-05, -4.378797497339369883e-05, -4.378649445672512053e-05, -4.378494287734124613e-05, -4.378332024451070316e-05, -4.378162656761719367e-05, -4.377986185615916217e-05, -4.377802611974958557e-05, -4.377611936811621714e-05, -4.377414161110138323e-05, -4.377209285866219329e-05, -4.376997312087032308e-05, -4.376778240791183845e-05, -4.376552073008745965e-05, -4.376318809781239188e-05, -4.376078452161664381e-05, -4.375831001214409923e-05, -4.375576458015338437e-05, -4.375314823651770533e-05, -4.375046099222416364e-05, -4.374770285837472527e-05, -4.374487384618544814e-05, -4.374197396698655666e-05, -4.373900323222263146e-05, -4.373596165345258231e-05, -4.373284924234934992e-05, -4.372966601070020411e-05, -4.372641197040643215e-05, -4.372308713348333192e-05, -4.371969151206061172e-05, -4.371622511838173301e-05, -4.371268796480432374e-05, -4.370908006379999538e-05, -4.370540142795399056e-05, -4.370165206996594879e-05, -4.369783200264911366e-05, -4.369394123893080714e-05, -4.368997979185191459e-05, -4.368594767456735915e-05, -4.368184490034558666e-05, -4.367767148256901974e-05, -4.367342743473346143e-05, -4.366911277044873899e-05, -4.366472750343824982e-05, -4.366027164753877857e-05, -4.365574521670064617e-05, -4.365114822498803511e-05, -4.364648068657849477e-05, -4.364174261576287366e-05, -4.363693402694563111e-05, -4.363205493464439007e-05, -4.362710535349035044e-05, -4.362208529822844493e-05, -4.361699478371590925e-05, -4.361183382492396943e-05, -4.360660243693710320e-05, -4.360130063495232846e-05, -4.359592843428029428e-05, -4.359048585034518603e-05, -4.358497289868324814e-05, -4.357938959494503384e-05, -4.357373595489261333e-05, -4.356801199440190481e-05, -4.356221772946239666e-05, -4.355635317617508745e-05, -4.355041835075449850e-05, -4.354441326952860611e-05, -4.353833794893676123e-05, -4.353219240553219673e-05, -4.352597665598060433e-05, -4.351969071706007362e-05, -4.351333460566168842e-05, -4.350690833878890330e-05, -4.350041193355749618e-05, -4.349384540719669997e-05, -4.348720877704702738e-05, -4.348050206056220215e-05, -4.347372527530833912e-05, -4.346687843896338184e-05, -4.345996156931770558e-05, -4.345297468427521516e-05, -4.344591780185009231e-05, -4.343879094017012959e-05, -4.343159411747502278e-05, -4.342432735211570002e-05, -4.341699066255680871e-05, -4.340958406737351034e-05, -4.340210758525360143e-05, -4.339456123499749326e-05, -4.338694503551605017e-05, -4.337925900583289356e-05, -4.337150316508425274e-05, -4.336367753251637648e-05, -4.335578212748860934e-05, -4.334781696947185355e-05, -4.333978207804749830e-05, -4.333167747291057748e-05, -4.332350317386642904e-05, -4.331525920083167746e-05, -4.330694557383515540e-05, -4.329856231301693466e-05, -4.329010943862842781e-05, -4.328158697103269992e-05, -4.327299493070346569e-05, -4.326433333822633624e-05, -4.325560221429839900e-05, -4.324680157972655075e-05, -4.323793145543063505e-05, -4.322899186244088756e-05, -4.321998282189779374e-05, -4.321090435505398622e-05, -4.320175648327249652e-05, -4.319253922802755464e-05, -4.318325261090418926e-05, -4.317389665359783473e-05, -4.316447137791536105e-05, -4.315497680577382706e-05, -4.314541295920165946e-05, -4.313577986033739249e-05, -4.312607753143056234e-05, -4.311630599484030449e-05, -4.310646527303744081e-05, -4.309655538860263638e-05, -4.308657636422725336e-05, -4.307652822271274104e-05, -4.306641098697140842e-05, -4.305622468002475719e-05, -4.304596932500561629e-05, -4.303564494515642748e-05, -4.302525156382992977e-05, -4.301478920448936272e-05, -4.300425789070661648e-05, -4.299365764616498297e-05, -4.298298849465732630e-05, -4.297225046008609631e-05, -4.296144356646368096e-05, -4.295056783791281285e-05, -4.293962329866469904e-05, -4.292860997306121652e-05, -4.291752788555373312e-05, -4.290637706070322954e-05, -4.289515752317999439e-05, -4.288386929776443054e-05, -4.287251240934487320e-05, -4.286108688292055113e-05, -4.284959274359942502e-05, -4.283803001659886511e-05, -4.282639872724582737e-05, -4.281469890097521364e-05, -4.280293056333175548e-05, -4.279109373997080012e-05, -4.277918845665379757e-05, -4.276721473925336920e-05, -4.275517261375050239e-05, -4.274306210623402197e-05, -4.273088324290305682e-05, -4.271863605006468166e-05, -4.270632055413498777e-05, -4.269393678163840530e-05, -4.268148475920882819e-05, -4.266896451358646994e-05, -4.265637607162335918e-05, -4.264371946027687511e-05, -4.263099470661457221e-05, -4.261820183781214733e-05, -4.260534088115249104e-05, -4.259241186402736815e-05, -4.257941481393837991e-05, -4.256634975849208513e-05, -4.255321672540510268e-05, -4.254001574250237678e-05, -4.252674683771437165e-05, -4.251341003908318364e-05, -4.250000537475508741e-05, -4.248653287298618050e-05, -4.247299256214056732e-05, -4.245938447068741149e-05, -4.244570862720698699e-05, -4.243196506038562991e-05, -4.241815379901577227e-05, -4.240427487199899817e-05, -4.239032830834449877e-05, -4.237631413716619913e-05, -4.236223238768889080e-05, -4.234808308924285818e-05, -4.233386627126440709e-05, -4.231958196329854141e-05, -4.230523019499669298e-05, -4.229081099611752806e-05, -4.227632439652689303e-05, -4.226177042619588998e-05, -4.224714911520428519e-05, -4.223246049373838133e-05, -4.221770459208882875e-05, -4.220288144065641243e-05, -4.218799106994696298e-05, -4.217303351057132276e-05, -4.215800879324871369e-05, -4.214291694880390479e-05, -4.212775800816844542e-05, -4.211253200238035361e-05, -4.209723896258206282e-05, -4.208187892002420989e-05, -4.206645190606255185e-05, -4.205095795215915851e-05, -4.203539708988176876e-05, -4.201976935090510510e-05, -4.200407476700725520e-05, -4.198831337007442199e-05, -4.197248519209750167e-05, -4.195659026517359482e-05, -4.194062862150448853e-05, -4.192460029339910939e-05, -4.190850531326930186e-05, -4.189234371363444295e-05, -4.187611552711841998e-05, -4.185982078645065379e-05, -4.184345952446638336e-05, -4.182703177410372489e-05, -4.181053756840812384e-05, -4.179397694052919038e-05, -4.177734992372182426e-05, -4.176065655134540168e-05, -4.174389685686513051e-05, -4.172707087384864183e-05, -4.171017863597047587e-05, -4.169322017700908005e-05, -4.167619553084744600e-05, -4.165910473147317052e-05, -4.164194781297878765e-05, -4.162472480955932918e-05, -4.160743575551606514e-05, -4.159008068525385434e-05, -4.157265963328150344e-05, -4.155517263421302739e-05, -4.153761972276410542e-05, -4.152000093375600448e-05, -4.150231630211572158e-05, -4.148456586286993934e-05, -4.146674965115222238e-05, -4.144886770219945301e-05, -4.143092005135017106e-05, -4.141290673404859896e-05, -4.139482778584186346e-05, -4.137668324238056488e-05, -4.135847313941901424e-05, -4.134019751281299034e-05, -4.132185639852287715e-05, -4.130344983261447021e-05, -4.128497785125187508e-05, -4.126644049070588959e-05, -4.124783778734966705e-05, -4.122916977765717122e-05, -4.121043649820674742e-05, -4.119163798568156981e-05, -4.117277427686325127e-05, -4.115384540863877564e-05, -4.113485141799780743e-05, -4.111579234202947318e-05, -4.109666821793049970e-05, -4.107747908299462281e-05, -4.105822497462094920e-05, -4.103890593031077165e-05, -4.101952198766445188e-05, -4.100007318438880674e-05, -4.098055955829069103e-05, -4.096098114727702465e-05, -4.094133798935883125e-05, -4.092163012264930018e-05, -4.090185758535951071e-05, -4.088202041580848799e-05, -4.086211865241054497e-05, -4.084215233368493185e-05, -4.082212149825172282e-05, -4.080202618483180256e-05, -4.078186643224801820e-05, -4.076164227942449488e-05, -4.074135376538437253e-05, -4.072100092925425106e-05, -4.070058381026161537e-05, -4.068010244773176577e-05, -4.065955688109550219e-05, -4.063894714988196846e-05, -4.061827329371942485e-05, -4.059753535233916470e-05, -4.057673336557201789e-05, -4.055586737334933338e-05, -4.053493741570399569e-05, -4.051394353276605416e-05, -4.049288576476887583e-05, -4.047176415204560822e-05, -4.045057873502625200e-05, -4.042932955424586021e-05, -4.040801665033675921e-05, -4.038664006402946339e-05, -4.036519983615705943e-05, -4.034369600765107960e-05, -4.032212861954295860e-05, -4.030049771296351858e-05, -4.027880332914399240e-05, -4.025704550941227629e-05, -4.023522429519832378e-05, -4.021333972803045267e-05, -4.019139184953598873e-05, -4.016938070144241091e-05, -4.014730632557335333e-05, -4.012516876385424316e-05, -4.010296805830818739e-05, -4.008070425105736200e-05, -4.005837738432230721e-05, -4.003598750042354021e-05, -4.001353464177692703e-05, -3.999101885089991664e-05, -3.996844017040687892e-05, -3.994579864301101555e-05, -3.992309431152460397e-05, -3.990032721885485029e-05, -3.987749740801033350e-05, -3.985460492209635702e-05, -3.983164980431645974e-05, -3.980863209797145380e-05, -3.978555184646132876e-05, -3.976240909328067081e-05, -3.973920388202368398e-05, -3.971593625638472549e-05, -3.969260626015013355e-05, -3.966921393720710429e-05, -3.964575933154039169e-05, -3.962224248722875686e-05, -3.959866344845122248e-05, -3.957502225948265472e-05, -3.955131896469479320e-05, -3.952755360855766048e-05, -3.950372623563465601e-05, -3.947983689058803819e-05, -3.945588561817938507e-05, -3.943187246326131383e-05, -3.940779747078655416e-05, -3.938366068580407902e-05, -3.935946215345552000e-05, -3.933520191898541980e-05, -3.931088002772755097e-05, -3.928649652511565627e-05, -3.926205145667856976e-05, -3.923754486804169404e-05, -3.921297680492255501e-05, -3.918834731314108826e-05, -3.916365643860622201e-05, -3.913890422732589928e-05, -3.911409072540398787e-05, -3.908921597903540821e-05, -3.906428003451645366e-05, -3.903928293823587969e-05, -3.901422473667490388e-05, -3.898910547641350107e-05, -3.896392520412608691e-05, -3.893868396657808225e-05, -3.891338181063682972e-05, -3.888801878325706543e-05, -3.886259493149237762e-05, -3.883711030248974499e-05, -3.881156494349060059e-05, -3.878595890183078436e-05, -3.876029222494127498e-05, -3.873456496034422577e-05, -3.870877715565894812e-05, -3.868292885859888925e-05, -3.865702011696686854e-05, -3.863105097866621768e-05, -3.860502149169071115e-05, -3.857893170412559622e-05, -3.855278166415287842e-05, -3.852657142004703217e-05, -3.850030102017590881e-05, -3.847397051300167171e-05, -3.844757994707643915e-05, -3.842112937104891825e-05, -3.839461883366071196e-05, -3.836804838374177889e-05, -3.834141807022195981e-05, -3.831472794212017623e-05, -3.828797804854606351e-05, -3.826116843870512759e-05, -3.823429916189410323e-05, -3.820737026750235674e-05, -3.818038180501156744e-05, -3.815333382399667639e-05, -3.812622637412139368e-05, -3.809905950514485277e-05, -3.807183326691719231e-05, -3.804454770937999665e-05, -3.801720288256866750e-05, -3.798979883660579676e-05, -3.796233562170983335e-05, -3.793481328818918785e-05, -3.790723188644372333e-05, -3.787959146696476883e-05, -3.785189208033606131e-05, -3.782413377722900226e-05, -3.779631660840931197e-05, -3.776844062473293668e-05, -3.774050587714629254e-05, -3.771251241668798675e-05, -3.768446029448384380e-05, -3.765634956175355978e-05, -3.762818026980640617e-05, -3.759995247004198208e-05, -3.757166621395033616e-05, -3.754332155311282046e-05, -3.751491853919734022e-05, -3.748645722396429670e-05, -3.745793765926751549e-05, -3.742935989704364167e-05, -3.740072398932399152e-05, -3.737202998822931443e-05, -3.734327794596657419e-05, -3.731446791483546100e-05, -3.728559994722434600e-05, -3.725667409561056589e-05, -3.722769041256189342e-05, -3.719864895073178037e-05, -3.716954976286503614e-05, -3.714039290179898644e-05, -3.711117842045252965e-05, -3.708190637183814435e-05, -3.705257680905711204e-05, -3.702318978529393353e-05, -3.699374535383077590e-05, -3.696424356802913597e-05, -3.693468448134379258e-05, -3.690506814731643696e-05, -3.687539461957815953e-05, -3.684566395184314810e-05, -3.681587619792173205e-05, -3.678603141170380767e-05, -3.675612964717171982e-05, -3.672617095839548465e-05, -3.669615539952751767e-05, -3.666608302481534604e-05, -3.663595388858960778e-05, -3.660576804526626763e-05, -3.657552554935158403e-05, -3.654522645543905983e-05, -3.651487081820432618e-05, -3.648445869241816652e-05, -3.645399013292970470e-05, -3.642346519467932049e-05, -3.639288393269442121e-05, -3.636224640208326857e-05, -3.633155265804826012e-05, -3.630080275587447739e-05, -3.626999675093022120e-05, -3.623913469867388957e-05, -3.620821665464952571e-05, -3.617724267448216952e-05, -3.614621281389033267e-05, -3.611512712867402495e-05, -3.608398567471641447e-05, -3.605278850799005502e-05, -3.602153568455130245e-05, -3.599022726054211036e-05, -3.595886329219057223e-05, -3.592744383580589340e-05, -3.589596894778646839e-05, -3.586443868461380939e-05, -3.583285310285455198e-05, -3.580121225915978435e-05, -3.576951621026649059e-05, -3.573776501299215678e-05, -3.570595872424244178e-05, -3.567409740100612207e-05, -3.564218110035600659e-05, -3.561020987945031908e-05, -3.557818379552730417e-05, -3.554610290591283714e-05, -3.551396726801528750e-05, -3.548177693932672515e-05, -3.544953197742276458e-05, -3.541723243996370998e-05, -3.538487838468914109e-05, -3.535246986942602431e-05, -3.532000695208308168e-05, -3.528748969065192926e-05, -3.525491814320734144e-05, -3.522229236790798949e-05, -3.518961242299137977e-05, -3.515687836678144308e-05, -3.512409025768398104e-05, -3.509124815418621210e-05, -3.505835211485984113e-05, -3.502540219835420868e-05, -3.499239846340493744e-05, -3.495934096882845707e-05, -3.492622977352285117e-05, -3.489306493646818940e-05, -3.485984651672754383e-05, -3.482657457344144603e-05, -3.479324916583589655e-05, -3.475987035321711339e-05, -3.472643819497247381e-05, -3.469295275057037212e-05, -3.465941407956200855e-05, -3.462582224157502637e-05, -3.459217729632215837e-05, -3.455847930359579913e-05, -3.452472832326850639e-05, -3.449092441529515597e-05, -3.445706763970661268e-05, -3.442315805661691323e-05, -3.438919572622469595e-05, -3.435518070880017684e-05, -3.432111306469907481e-05, -3.428699285435726519e-05, -3.425282013828434227e-05, -3.421859497708009919e-05, -3.418431743141352831e-05, -3.414998756203884702e-05, -3.411560542978990063e-05, -3.408117109557524271e-05, -3.404668462038548741e-05, -3.401214606529472567e-05, -3.397755549144718275e-05, -3.394291296007200404e-05, -3.390821853247658724e-05, -3.387347227004156112e-05, -3.383867423423471752e-05, -3.380382448659777732e-05, -3.376892308874773893e-05, -3.373397010238445411e-05, -3.369896558928575588e-05, -3.366390961130142083e-05, -3.362880223036955417e-05, -3.359364350849580012e-05, -3.355843350776908316e-05, -3.352317229035599734e-05, -3.348785991849468724e-05, -3.345249645450962028e-05, -3.341708196079777669e-05, -3.338161649983038419e-05, -3.334610013416012121e-05, -3.331053292641678683e-05, -3.327491493930054484e-05, -3.323924623559902707e-05, -3.320352687816584579e-05, -3.316775692993701943e-05, -3.313193645392341704e-05, -3.309606551321227615e-05, -3.306014417096684362e-05, -3.302417249042788002e-05, -3.298815053490752706e-05, -3.295207836779814387e-05, -3.291595605256656748e-05, -3.287978365275486502e-05, -3.284356123198074024e-05, -3.280728885393877363e-05, -3.277096658239413401e-05, -3.273459448119170616e-05, -3.269817261424997864e-05, -3.266170104556214831e-05, -3.262517983919787539e-05, -3.258860905929684602e-05, -3.255198877007800149e-05, -3.251531903583316184e-05, -3.247859992092838106e-05, -3.244183148980408940e-05, -3.240501380697640121e-05, -3.236814693703067748e-05, -3.233123094463092451e-05, -3.229426589451318027e-05, -3.225725185148756765e-05, -3.222018888043739316e-05, -3.218307704632118662e-05, -3.214591641416595876e-05, -3.210870704907675579e-05, -3.207144901623009314e-05, -3.203414238087550051e-05, -3.199678720833716165e-05, -3.195938356400702978e-05, -3.192193151335447011e-05, -3.188443112192003930e-05, -3.184688245531636634e-05, -3.180928557922883018e-05, -3.177164055941623737e-05, -3.173394746170491316e-05, -3.169620635199786975e-05, -3.165841729626831468e-05, -3.162058036056136518e-05, -3.158269561099361452e-05, -3.154476311375494125e-05, -3.150678293509992370e-05, -3.146875514136596646e-05, -3.143067979895028819e-05, -3.139255697432758059e-05, -3.135438673404353026e-05, -3.131616914470973653e-05, -3.127790427301172096e-05, -3.123959218571060792e-05, -3.120123294962813543e-05, -3.116282663166299955e-05, -3.112437329878416618e-05, -3.108587301802394576e-05, -3.104732585649651273e-05, -3.100873188137420901e-05, -3.097009115990582631e-05, -3.093140375940982311e-05, -3.089266974726912726e-05, -3.085388919093959276e-05, -3.081506215795133468e-05, -3.077618871589372652e-05, -3.073726893243175810e-05, -3.069830287529953035e-05, -3.065929061229318768e-05, -3.062023221128773665e-05, -3.058112774022188069e-05, -3.054197726709928051e-05, -3.050278085999708538e-05, -3.046353858706082047e-05, -3.042425051649721754e-05, -3.038491671659304281e-05, -3.034553725569113608e-05, -3.030611220220874052e-05, -3.026664162463088225e-05, -3.022712559150356025e-05, -3.018756417145006013e-05, -3.014795743315607692e-05, -3.010830544537106349e-05, -3.006860827691679240e-05, -3.002886599668187727e-05, -2.998907867361505072e-05, -2.994924637674356194e-05, -2.990936917514962920e-05, -2.986944713798839009e-05, -2.982948033448001065e-05, -2.978946883391086779e-05, -2.974941270563312914e-05, -2.970931201906720271e-05, -2.966916684369396451e-05, -2.962897724906529560e-05, -2.958874330479683830e-05, -2.954846508057009684e-05, -2.950814264613184102e-05, -2.946777607129581045e-05, -2.942736542593575873e-05, -2.938691077999583466e-05, -2.934641220348328762e-05, -2.930586976647019549e-05, -2.926528353909514519e-05, -2.922465359155589735e-05, -2.918397999412015043e-05, -2.914326281711802921e-05, -2.910250213094404991e-05, -2.906169800605655777e-05, -2.902085051297995983e-05, -2.897995972229694915e-05, -2.893902570465945866e-05, -2.889804853078115304e-05, -2.885702827143917025e-05, -2.881596499747418925e-05, -2.877485877979177851e-05, -2.873370968935539614e-05, -2.869251779719658810e-05, -2.865128317440838483e-05, -2.861000589214643280e-05, -2.856868602163072251e-05, -2.852732363413837172e-05, -2.848591880101457934e-05, -2.844447159366464634e-05, -2.840298208355629663e-05, -2.836145034221904687e-05, -2.831987644124651379e-05, -2.827826045228829281e-05, -2.823660244706122362e-05, -2.819490249734191934e-05, -2.815316067496838941e-05, -2.811137705184171674e-05, -2.806955169991879354e-05, -2.802768469122105254e-05, -2.798577609783653376e-05, -2.794382599190290998e-05, -2.790183444562602992e-05, -2.785980153127217985e-05, -2.781772732116275735e-05, -2.777561188768293483e-05, -2.773345530328364493e-05, -2.769125764046493466e-05, -2.764901897179402414e-05, -2.760673936989805258e-05, -2.756441890745657360e-05, -2.752205765722141306e-05, -2.747965569199104801e-05, -2.743721308463064069e-05, -2.739472990806445933e-05, -2.735220623527049436e-05, -2.730964213928920657e-05, -2.726703769322553632e-05, -2.722439297023196281e-05, -2.718170804352696947e-05, -2.713898298638745788e-05, -2.709621787214136843e-05, -2.705341277418767031e-05, -2.701056776597043555e-05, -2.696768292099914401e-05, -2.692475831283928141e-05, -2.688179401511591376e-05, -2.683879010150412944e-05, -2.679574664574955773e-05, -2.675266372164216162e-05, -2.670954140303643447e-05, -2.666637976384408500e-05, -2.662317887802617686e-05, -2.657993881961181754e-05, -2.653665966268141426e-05, -2.649334148136780554e-05, -2.644998434986627658e-05, -2.640658834242631253e-05, -2.636315353335371266e-05, -2.631967999701206084e-05, -2.627616780781547493e-05, -2.623261704023939795e-05, -2.618902776881296468e-05, -2.614540006812107853e-05, -2.610173401280397110e-05, -2.605802967755900128e-05, -2.601428713713317765e-05, -2.597050646633410214e-05, -2.592668774002258050e-05, -2.588283103311399792e-05, -2.583893642057848839e-05, -2.579500397744280497e-05, -2.575103377878205615e-05, -2.570702589973165576e-05, -2.566298041547913051e-05, -2.561889740126616977e-05, -2.557477693239010281e-05, -2.553061908419628227e-05, -2.548642393208965467e-05, -2.544219155152664238e-05, -2.539792201801704442e-05, -2.535361540712404322e-05, -2.530927179446566488e-05, -2.526489125570743034e-05, -2.522047386657334987e-05, -2.517601970283827602e-05, -2.513152884032974682e-05, -2.508700135492959848e-05, -2.504243732256632518e-05, -2.499783681922667324e-05, -2.495319992094710982e-05, -2.490852670381639791e-05, -2.486381724397509146e-05, -2.481907161761740227e-05, -2.477428990098330563e-05, -2.472947217036998885e-05, -2.468461850212418047e-05, -2.463972897264372580e-05, -2.459480365837755637e-05, -2.454984263582756364e-05, -2.450484598154043013e-05, -2.445981377211959976e-05, -2.441474608421693624e-05, -2.436964299453489824e-05, -2.432450457982814198e-05, -2.427933091689551850e-05, -2.423412208258996018e-05, -2.418887815382018161e-05, -2.414359920753284105e-05, -2.409828532073214421e-05, -2.405293657047178043e-05, -2.400755303384901723e-05, -2.396213478801618942e-05, -2.391668191017284542e-05, -2.387119447756757011e-05, -2.382567256749762563e-05, -2.378011625731123841e-05, -2.373452562439714000e-05, -2.368890074620654925e-05, -2.364324170022500003e-05, -2.359754856399445214e-05, -2.355182141510457367e-05, -2.350606033118721495e-05, -2.346026538992616975e-05, -2.341443666905858138e-05, -2.336857424635747007e-05, -2.332267819965106904e-05, -2.327674860681518089e-05, -2.323078554576440570e-05, -2.318478909447470264e-05, -2.313875933095475005e-05, -2.309269633326805303e-05, -2.304660017952270111e-05, -2.300047094787552546e-05, -2.295430871652141954e-05, -2.290811356371563301e-05, -2.286188556774572470e-05, -2.281562480695291473e-05, -2.276933135972442047e-05, -2.272300530448531148e-05, -2.267664671971802182e-05, -2.263025568394459955e-05, -2.258383227572831277e-05, -2.253737657368370893e-05, -2.249088865646824281e-05, -2.244436860278445502e-05, -2.239781649138171697e-05, -2.235123240104777063e-05, -2.230461641062120708e-05, -2.225796859898491380e-05, -2.221128904505789239e-05, -2.216457782781545182e-05, -2.211783502627089556e-05, -2.207106071947716143e-05, -2.202425498653726385e-05, -2.197741790659551520e-05, -2.193054955883993134e-05, -2.188365002250170987e-05, -2.183671937685730370e-05, -2.178975770122010313e-05, -2.174276507495268734e-05, -2.169574157745818809e-05, -2.164868728818252584e-05, -2.160160228661624614e-05, -2.155448665228603235e-05, -2.150734046476707572e-05, -2.146016380367450339e-05, -2.141295674866558750e-05, -2.136571937943949442e-05, -2.131845177573895512e-05, -2.127115401734244537e-05, -2.122382618407576973e-05, -2.117646835580419098e-05, -2.112908061243410379e-05, -2.108166303391510830e-05, -2.103421570023138390e-05, -2.098673869141418473e-05, -2.093923208753333199e-05, -2.089169596869930786e-05, -2.084413041506285571e-05, -2.079653550681697906e-05, -2.074891132418873893e-05, -2.070125794744920140e-05, -2.065357545691559246e-05, -2.060586393293232786e-05, -2.055812345589192803e-05, -2.051035410622610732e-05, -2.046255596439973634e-05, -2.041472911092309005e-05, -2.036687362634350957e-05, -2.031898959124708271e-05, -2.027107708626087670e-05, -2.022313619204430191e-05, -2.017516698929949982e-05, -2.012716955877318954e-05, -2.007914398123774514e-05, -2.003109033751214783e-05, -1.998300870845318017e-05, -1.993489917494923266e-05, -1.988676181793271435e-05, -1.983859671837143014e-05, -1.979040395727073558e-05, -1.974218361567312016e-05, -1.969393577466037567e-05, -1.964566051534292026e-05, -1.959735791888280040e-05, -1.954902806646401767e-05, -1.950067103931562565e-05, -1.945228691870325277e-05, -1.940387578592231595e-05, -1.935543772230884224e-05, -1.930697280924121710e-05, -1.925848112812098052e-05, -1.920996276039413153e-05, -1.916141778754211917e-05, -1.911284629107352806e-05, -1.906424835254720912e-05, -1.901562405354232852e-05, -1.896697347568171527e-05, -1.891829670062318764e-05, -1.886959381005292932e-05, -1.882086488569617561e-05, -1.877211000931908028e-05, -1.872332926270950487e-05, -1.867452272769810301e-05, -1.862569048614963328e-05, -1.857683261995432281e-05, -1.852794921104924648e-05, -1.847904034139870617e-05, -1.843010609299631109e-05, -1.838114654787565720e-05, -1.833216178810145029e-05, -1.828315189577171500e-05, -1.823411695301959063e-05, -1.818505704200467773e-05, -1.813597224492592664e-05, -1.808686264401476973e-05, -1.803772832152679672e-05, -1.798856935976270695e-05, -1.793938584104901051e-05, -1.789017784774006459e-05, -1.784094546222860710e-05, -1.779168876693708649e-05, -1.774240784431966751e-05, -1.769310277686418956e-05, -1.764377364708343208e-05, -1.759442053752798265e-05, -1.754504353077731947e-05, -1.749564270944208477e-05, -1.744621815616366131e-05, -1.739676995361629671e-05, -1.734729818449852812e-05, -1.729780293154563358e-05, -1.724828427752122270e-05, -1.719874230521899848e-05, -1.714917709746261498e-05, -1.709958873710800840e-05, -1.704997730703426944e-05, -1.700034289015653512e-05, -1.695068556941748458e-05, -1.690100542778897555e-05, -1.685130254827436864e-05, -1.680157701389946740e-05, -1.675182890772561353e-05, -1.670205831284078281e-05, -1.665226531236157736e-05, -1.660244998943315447e-05, -1.655261242723129336e-05, -1.650275270895338616e-05, -1.645287091783156349e-05, -1.640296713712367530e-05, -1.635304145011546602e-05, -1.630309394012031030e-05, -1.625312469048143221e-05, -1.620313378456282848e-05, -1.615312130576244154e-05, -1.610308733750309961e-05, -1.605303196323459370e-05, -1.600295526643586290e-05, -1.595285733060594131e-05, -1.590273823927483056e-05, -1.585259807600574613e-05, -1.580243692437481229e-05, -1.575225486799317304e-05, -1.570205199049813552e-05, -1.565182837554614982e-05, -1.560158410682611758e-05, -1.555131926805032529e-05, -1.550103394295655176e-05, -1.545072821530797663e-05, -1.540040216889511159e-05, -1.535005588752473137e-05, -1.529968945504397011e-05, -1.524930295530934879e-05, -1.519889647221083432e-05, -1.514847008966289827e-05, -1.509802389159777790e-05, -1.504755796197635371e-05, -1.499707238479027723e-05, -1.494656724404178620e-05, -1.489604262376582060e-05, -1.484549860802113223e-05, -1.479493528088090122e-05, -1.474435272645742538e-05, -1.469375102887065463e-05, -1.464313027227255164e-05, -1.459249054083803368e-05, -1.454183191875600592e-05, -1.449115449025145034e-05, -1.444045833956514951e-05, -1.438974355095583799e-05, -1.433901020871139844e-05, -1.428825839714171266e-05, -1.423748820056968813e-05, -1.418669970335368404e-05, -1.413589298986690807e-05, -1.408506814449976437e-05, -1.403422525167085480e-05, -1.398336439581771411e-05, -1.393248566139922228e-05, -1.388158913289739855e-05, -1.383067489480850414e-05, -1.377974303165617302e-05, -1.372879362798478975e-05, -1.367782676835013658e-05, -1.362684253734179405e-05, -1.357584101956289017e-05, -1.352482229963202314e-05, -1.347378646219449812e-05, -1.342273359191306745e-05, -1.337166377347017867e-05, -1.332057709157005318e-05, -1.326947363092940608e-05, -1.321835347629110378e-05, -1.316721671241460438e-05, -1.311606342407844793e-05, -1.306489369607994302e-05, -1.301370761323730814e-05, -1.296250526038048466e-05, -1.291128672236455563e-05, -1.286005208406064518e-05, -1.280880143035789554e-05, -1.275753484616344837e-05, -1.270625241640447600e-05, -1.265495422601912657e-05, -1.260364035996977680e-05, -1.255231090323398389e-05, -1.250096594080652693e-05, -1.244960555770161764e-05, -1.239822983894363723e-05, -1.234683886958052627e-05, -1.229543273467474178e-05, -1.224401151930524438e-05, -1.219257530856745083e-05, -1.214112418757523984e-05, -1.208965824145193790e-05, -1.203817755534358219e-05, -1.198668221440978947e-05, -1.193517230382595845e-05, -1.188364790878303936e-05, -1.183210911448961765e-05, -1.178055600616283721e-05, -1.172898866904178682e-05, -1.167740718837829976e-05, -1.162581164943907133e-05, -1.157420213750782049e-05, -1.152257873787598947e-05, -1.147094153585407025e-05, -1.141929061677368999e-05, -1.136762606596695186e-05, -1.131594796878914067e-05, -1.126425641060944946e-05, -1.121255147680386621e-05, -1.116083325276900413e-05, -1.110910182391251158e-05, -1.105735727565542343e-05, -1.100559969343429219e-05, -1.095382916269177918e-05, -1.090204576888810471e-05, -1.085024959750308095e-05, -1.079844073401542911e-05, -1.074661926392547312e-05, -1.069478527274592391e-05, -1.064293884599486431e-05, -1.059108006920689259e-05, -1.053920902793558903e-05, -1.048732580773241294e-05, -1.043543049416973687e-05, -1.038352317283137679e-05, -1.033160392930334925e-05, -1.027967284919897407e-05, -1.022773001812658375e-05, -1.017577552171464305e-05, -1.012380944560238423e-05, -1.007183187543055910e-05, -1.001984289686418530e-05, -9.967842595571770238e-06, -9.915831057227516757e-06, -9.863808367522558209e-06, -9.811774612158005989e-06, -9.759729876835615238e-06, -9.707674247282911228e-06, -9.655607809220849642e-06, -9.603530648388949737e-06, -9.551442850533735734e-06, -9.499344501410854398e-06, -9.447235686784864975e-06, -9.395116492431544814e-06, -9.342987004128390743e-06, -9.290847307668401986e-06, -9.238697488852968474e-06, -9.186537633482563651e-06, -9.134367827379580478e-06, -9.082188156367550328e-06, -9.029998706273179254e-06, -8.977799562937837144e-06, -8.925590812208160737e-06, -8.873372539938210166e-06, -8.821144831991628899e-06, -8.768907774232300958e-06, -8.716661452538055916e-06, -8.664405952793535187e-06, -8.612141360880974609e-06, -8.559867762702930342e-06, -8.507585244161618038e-06, -8.455293891160786478e-06, -8.402993789617376136e-06, -8.350685025452015466e-06, -8.298367684591226578e-06, -8.246041852967288016e-06, -8.193707616520376063e-06, -8.141365061189181302e-06, -8.089014272924666132e-06, -8.036655337680686416e-06, -7.984288341416085347e-06, -7.931913370096983825e-06, -7.879530509687300463e-06, -7.827139846162488771e-06, -7.774741465500213013e-06, -7.722335453682443771e-06, -7.669921896695347825e-06, -7.617500880531522631e-06, -7.565072491180451106e-06, -7.512636814642398047e-06, -7.460193936918939458e-06, -7.407743944015165686e-06, -7.355286921941814242e-06, -7.302822956705911790e-06, -7.250352134324465580e-06, -7.197874540815177431e-06, -7.145390262198465595e-06, -7.092899384497464761e-06, -7.040401993740108056e-06, -6.987898175949778350e-06, -6.935388017156681362e-06, -6.882871603400158059e-06, -6.830349020707482581e-06, -6.777820355117120063e-06, -6.725285692669113665e-06, -6.672745119398153297e-06, -6.620198721347261135e-06, -6.567646584558412420e-06, -6.515088795074622549e-06, -6.462525438942297593e-06, -6.409956602201630636e-06, -6.357382370898159540e-06, -6.304802831085045465e-06, -6.252218068801790314e-06, -6.199628170097522523e-06, -6.147033221021507746e-06, -6.094433307613664628e-06, -6.041828515930099461e-06, -5.989218932010293822e-06, -5.936604641902624826e-06, -5.883985731652598150e-06, -5.831362287307328830e-06, -5.778734394903714144e-06, -5.726102140494052973e-06, -5.673465610113144494e-06, -5.620824889803849099e-06, -5.568180065607649054e-06, -5.515531223555121928e-06, -5.462878449689172155e-06, -5.410221830043852679e-06, -5.357561450646608737e-06, -5.304897397529744149e-06, -5.252229756723340120e-06, -5.199558614245732049e-06, -5.146884056129102628e-06, -5.094206168386611039e-06, -5.041525037037916593e-06, -4.988840748097427844e-06, -4.936153387576466759e-06, -4.883463041483107778e-06, -4.830769795824423304e-06, -4.778073736596921544e-06, -4.725374949800553894e-06, -4.672673521431411819e-06, -4.619969537472340886e-06, -4.567263083916148615e-06, -4.514554246744418492e-06, -4.461843111929721572e-06, -4.409129765447143753e-06, -4.356414293264845590e-06, -4.303696781346167172e-06, -4.250977315651951539e-06, -4.198255982130933391e-06, -4.145532866733688879e-06, -4.092808055405502741e-06, -4.040081634076812919e-06, -3.987353688686493805e-06, -3.934624305160695659e-06, -3.881893569414974904e-06, -3.829161567365901012e-06, -3.776428384921562962e-06, -3.723694107983719854e-06, -3.670958822447737810e-06, -3.618222614204700774e-06, -3.565485569131995745e-06, -3.512747773107162612e-06, -3.460009311998420935e-06, -3.407270271666823955e-06, -3.354530737968551929e-06, -3.301790796745293229e-06, -3.249050533838241137e-06, -3.196310035078560486e-06, -3.143569386289590798e-06, -3.090828673286701013e-06, -3.038087981879499400e-06, -2.985347397862299778e-06, -2.932607007028104760e-06, -2.879866895159026232e-06, -2.827127148028513897e-06, -2.774387851403577043e-06, -2.721649091035233825e-06, -2.668910952672485186e-06, -2.616173522052747625e-06, -2.563436884904105454e-06, -2.510701126945125726e-06, -2.457966333887104136e-06, -2.405232591424538022e-06, -2.352499985246686673e-06, -2.299768601039819350e-06, -2.247038524465927230e-06, -2.194309841186071452e-06, -2.141582636850851871e-06, -2.088856997093219143e-06, -2.036133007542425352e-06, -1.983410753814513952e-06, -1.930690321514488168e-06, -1.877971796238558813e-06, -1.825255263564600977e-06, -1.772540809063743132e-06, -1.719828518302599913e-06, -1.667118476821981729e-06, -1.614410770160254877e-06, -1.561705483843790822e-06, -1.509002703377453589e-06, -1.456302514270282229e-06, -1.403605002002474536e-06, -1.350910252051103383e-06, -1.298218349878192200e-06, -1.245529380935323676e-06, -1.192843430651724336e-06, -1.140160584459973898e-06, -1.087480927762994701e-06, -1.034804545959730361e-06, -9.821315244356249055e-07, -9.294619485530954531e-07, -8.767959036748637373e-07, -8.241334751426983315e-07, -7.714747482796194761e-07, -7.188198084015015237e-07, -6.661687408098880884e-07, -6.135216307824713953e-07, -5.608785635987743193e-07, -5.082396245071445819e-07, -4.556048987504470074e-07, -4.029744715565293201e-07, -3.503484281287013879e-07, -2.977268536690619804e-07, -2.451098333572488300e-07, -1.924974523526370262e-07, -1.398897958059452465e-07, -8.728694885205241420e-08, -3.468899660047834469e-08, 1.790397584129163686e-08, 7.049188338906021155e-08, 1.230746409797077938e-07, 1.756521635595984303e-07, 2.282243660941031074e-07, 2.807911635653878204e-07, 3.333524709702091836e-07, 3.859082033294263984e-07, 4.384582756740730672e-07, 4.910026030548687382e-07, 5.435411005400129137e-07, 5.960736832153269282e-07, 6.486002661820327105e-07, 7.011207645662816397e-07, 7.536350935052167237e-07, 8.061431681564896496e-07, 8.586449036960449461e-07, 9.111402153159301906e-07, 9.636290182337829909e-07, 1.016111227678925139e-06, 1.068586758901868015e-06, 1.121055527172100665e-06, 1.173517447778231153e-06, 1.225972436025773262e-06, 1.278420407246659306e-06, 1.330861276785318514e-06, 1.383294960008189419e-06, 1.435721372301493220e-06, 1.488140429071403823e-06, 1.540552045741804477e-06, 1.592956137763816256e-06, 1.645352620601869452e-06, 1.697741409743220414e-06, 1.750122420695725117e-06, 1.802495568985660600e-06, 1.854860770167183990e-06, 1.907217939808476738e-06, 1.959566993501204497e-06, 2.011907846858306998e-06, 2.064240415514164070e-06, 2.116564615122381286e-06, 2.168880361365257881e-06, 2.221187569939903885e-06, 2.273486156567762046e-06, 2.325776036992349634e-06, 2.378057126979432513e-06, 2.430329342314792357e-06, 2.482592598813751539e-06, 2.534846812307241131e-06, 2.587091898651315202e-06, 2.639327773724927356e-06, 2.691554353427762754e-06, 2.743771553689668552e-06, 2.795979290459131290e-06, 2.848177479701119073e-06, 2.900366037418144320e-06, 2.952544879627137646e-06, 3.004713922368852041e-06, 3.056873081717377172e-06, 3.109022273754597105e-06, 3.161161414602978098e-06, 3.213290420400024211e-06, 3.265409207307792024e-06, 3.317517691519981150e-06, 3.369615789250395107e-06, 3.421703416730824577e-06, 3.473780490232062303e-06, 3.525846926040784163e-06, 3.577902640468998250e-06, 3.629947549863477006e-06, 3.681981570582644236e-06, 3.734004619017600158e-06, 3.786016611590001281e-06, 3.838017464740494167e-06, 3.890007094935864393e-06, 3.941985418678456402e-06, 3.993952352480752351e-06, 4.045907812898014643e-06, 4.097851716502909667e-06, 4.149783979894831937e-06, 4.201704519709473022e-06, 4.253613252595619620e-06, 4.305510095236220117e-06, 4.357394964346200085e-06, 4.409267776660968894e-06, 4.461128448943567823e-06, 4.512976897994015375e-06, 4.564813040623949649e-06, 4.616636793689265371e-06, 4.668448074064687654e-06, 4.720246798655544067e-06, 4.772032884395498816e-06, 4.823806248246806861e-06, 4.875566807198011673e-06, 4.927314478273429467e-06, 4.979049178519342564e-06, 5.030770825013384514e-06, 5.082479334862394564e-06, 5.134174625202519301e-06, 5.185856613197056106e-06, 5.237525216045808633e-06, 5.289180350971361486e-06, 5.340821935228461112e-06, 5.392449886101825370e-06, 5.444064120903986988e-06, 5.495664556984639724e-06, 5.547251111716902877e-06, 5.598823702506755545e-06, 5.650382246790773348e-06, 5.701926662036309695e-06, 5.753456865739324840e-06, 5.804972775433725266e-06, 5.856474308677657845e-06, 5.907961383062834821e-06, 5.959433916212480609e-06, 6.010891825781280118e-06, 6.062335029453316232e-06, 6.113763444951484577e-06, 6.165176990023636912e-06, 6.216575582452020461e-06, 6.267959140051110361e-06, 6.319327580665427698e-06, 6.370680822178850946e-06, 6.422018782500927065e-06, 6.473341379576324388e-06, 6.524648531382475333e-06, 6.575940155929888950e-06, 6.627216171259873256e-06, 6.678476495453840738e-06, 6.729721046619752436e-06, 6.780949742901358225e-06, 6.832162502476026718e-06, 6.883359243554973119e-06, 6.934539884380961219e-06, 6.985704343239967892e-06, 7.036852538436121924e-06, 7.087984388323844685e-06, 7.139099811282853337e-06, 7.190198725727379939e-06, 7.241281050113264503e-06, 7.292346702926536991e-06, 7.343395602681320056e-06, 7.394427667940514442e-06, 7.445442817293106963e-06, 7.496440969363369285e-06, 7.547422042820243053e-06, 7.598385956352143197e-06, 7.649332628699368803e-06, 7.700261978628756502e-06, 7.751173924943209585e-06, 7.802068386488575914e-06, 7.852945282142351891e-06, 7.903804530811529299e-06, 7.954646051453317116e-06, 8.005469763052408845e-06, 8.056275584630235502e-06, 8.107063435254240627e-06, 8.157833234015139144e-06, 8.208584900047673054e-06, 8.259318352528397292e-06, 8.310033510664351512e-06, 8.360730293700171768e-06, 8.411408620927224926e-06, 8.462068411658661842e-06, 8.512709585261528386e-06, 8.563332061131764415e-06, 8.613935758703449987e-06, 8.664520597458061734e-06, 8.715086496901850309e-06, 8.765633376586419895e-06, 8.816161156106542865e-06, 8.866669755089033153e-06, 8.917159093199530988e-06, 8.967629090151921903e-06, 9.018079665683266253e-06, 9.068510739585840775e-06, 9.118922231682312056e-06, 9.169314061837125735e-06, 9.219686149954438049e-06, 9.270038415978149715e-06, 9.320370779889901853e-06, 9.370683161718151090e-06, 9.420975481524728848e-06, 9.471247659414036728e-06, 9.521499615530991614e-06, 9.571731270061013811e-06, 9.621942543227919624e-06, 9.672133355303192990e-06, 9.722303626592448185e-06, 9.772453277444572711e-06, 9.822582228249748614e-06, 9.872690399437141788e-06, 9.922777711484195617e-06, 9.972844084903091999e-06, 1.002288944024999417e-05, 1.007291369812287491e-05, 1.012291677916167242e-05, 1.017289860404609644e-05, 1.022285909350486778e-05, 1.027279816830225381e-05, 1.032271574924720797e-05, 1.037261175719124711e-05, 1.042248611302860565e-05, 1.047233873769406886e-05, 1.052216955217212081e-05, 1.057197847748359686e-05, 1.062176543469471638e-05, 1.067153034491507530e-05, 1.072127312929547769e-05, 1.077099370903690081e-05, 1.082069200537743207e-05, 1.087036793960115113e-05, 1.092002143303605966e-05, 1.096965240705427620e-05, 1.101926078306986438e-05, 1.106884648254780973e-05, 1.111840942699093138e-05, 1.116794953794881482e-05, 1.121746673701570791e-05, 1.126696094582841683e-05, 1.131643208607543708e-05, 1.136588007948578964e-05, 1.141530484782700666e-05, 1.146470631292527394e-05, 1.151408439664331152e-05, 1.156343902088933186e-05, 1.161277010762396354e-05, 1.166207757884911103e-05, 1.171136135660595065e-05, 1.176062136299503235e-05, 1.180985752015416027e-05, 1.185906975026740518e-05, 1.190825797557417621e-05, 1.195742211834476024e-05, 1.200656210091170953e-05, 1.205567784564546582e-05, 1.210476927496335075e-05, 1.215383631133633360e-05, 1.220287887727805552e-05, 1.225189689534281692e-05, 1.230089028814556914e-05, 1.234985897833988655e-05, 1.239880288862697387e-05, 1.244772194176462948e-05, 1.249661606054302366e-05, 1.254548516781579996e-05, 1.259432918647583140e-05, 1.264314803946644199e-05, 1.269194164977709532e-05, 1.274070994045454827e-05, 1.278945283457874449e-05, 1.283817025529366500e-05, 1.288686212578339786e-05, 1.293552836928092860e-05, 1.298416890907712055e-05, 1.303278366849883593e-05, 1.308137257092888179e-05, 1.312993553980379416e-05, 1.317847249860314345e-05, 1.322698337085834018e-05, 1.327546808015059699e-05, 1.332392655010885685e-05, 1.337235870441849885e-05, 1.342076446680878683e-05, 1.346914376105892910e-05, 1.351749651100753299e-05, 1.356582264053039907e-05, 1.361412207356063305e-05, 1.366239473408639101e-05, 1.371064054614014243e-05, 1.375885943380749960e-05, 1.380705132122521361e-05, 1.385521613258127085e-05, 1.390335379211281276e-05, 1.395146422411485681e-05, 1.399954735292760462e-05, 1.404760310294503933e-05, 1.409563139861301972e-05, 1.414363216442705600e-05, 1.419160532494132046e-05, 1.423955080475561168e-05, 1.428746852852411961e-05, 1.433535842095353161e-05, 1.438322040680295622e-05, 1.443105441088204780e-05, 1.447886035805960398e-05, 1.452663817325089397e-05, 1.457438778142635085e-05, 1.462210910760939981e-05, 1.466980207687460476e-05, 1.471746661435637422e-05, 1.476510264523598471e-05, 1.481271009475053562e-05, 1.486028888819074015e-05, 1.490783895090116752e-05, 1.495536020827819322e-05, 1.500285258577857767e-05, 1.505031600890683704e-05, 1.509775040322389143e-05, 1.514515569434511835e-05, 1.519253180794022911e-05, 1.523987866973154763e-05, 1.528719620550255697e-05, 1.533448434108507699e-05, 1.538174300236811414e-05, 1.542897211529566592e-05, 1.547617160586483204e-05, 1.552334140013452189e-05, 1.557048142421456170e-05, 1.561759160426414957e-05, 1.566467186651083237e-05, 1.571172213722941125e-05, 1.575874234275055426e-05, 1.580573240946730158e-05, 1.585269226382243792e-05, 1.589962183231722378e-05, 1.594652104150896273e-05, 1.599338981801172311e-05, 1.604022808849388839e-05, 1.608703577968895179e-05, 1.613381281837242612e-05, 1.618055913139165259e-05, 1.622727464564233121e-05, 1.627395928807743499e-05, 1.632061298571353553e-05, 1.636723566562025244e-05, 1.641382725491841014e-05, 1.646038768079913342e-05, 1.650691687050272240e-05, 1.655341475132729228e-05, 1.659988125063744020e-05, 1.664631629584086369e-05, 1.669271981441834910e-05, 1.673909173390041036e-05, 1.678543198187812087e-05, 1.683174048599886819e-05, 1.687801717397707405e-05, 1.692426197357118218e-05, 1.697047481261318926e-05, 1.701665561898559886e-05, 1.706280432062997645e-05, 1.710892084555548073e-05, 1.715500512181789111e-05, 1.720105707753867271e-05, 1.724707664090303154e-05, 1.729306374014943169e-05, 1.733901830357828923e-05, 1.738494025954958358e-05, 1.743082953648147855e-05, 1.747668606285821669e-05, 1.752250976721801687e-05, 1.756830057815945414e-05, 1.761405842434960820e-05, 1.765978323450373796e-05, 1.770547493740389259e-05, 1.775113346189717339e-05, 1.779675873688490193e-05, 1.784235069133169007e-05, 1.788790925426312928e-05, 1.793343435476595326e-05, 1.797892592198611008e-05, 1.802438388513707667e-05, 1.806980817348769540e-05, 1.811519871637038697e-05, 1.816055544317934109e-05, 1.820587828336844296e-05, 1.825116716645968940e-05, 1.829642202203092720e-05, 1.834164277972416757e-05, 1.838682936924378709e-05, 1.843198172035647345e-05, 1.847709976288917905e-05, 1.852218342673773700e-05, 1.856723264185446736e-05, 1.861224733825645771e-05, 1.865722744602385890e-05, 1.870217289529763202e-05, 1.874708361628797120e-05, 1.879195953926228937e-05, 1.883680059455324470e-05, 1.888160671255697539e-05, 1.892637782373317423e-05, 1.897111385860304894e-05, 1.901581474775790426e-05, 1.906048042184852362e-05, 1.910511081158377657e-05, 1.914970584774878596e-05, 1.919426546118456863e-05, 1.923878958279664808e-05, 1.928327814356090237e-05, 1.932773107451159721e-05, 1.937214830674969032e-05, 1.941652977144092050e-05, 1.946087539981366632e-05, 1.950518512316741984e-05, 1.954945887286258497e-05, 1.959369658031866480e-05, 1.963789817703255752e-05, 1.968206359455835973e-05, 1.972619276451575214e-05, 1.977028561859579321e-05, 1.981434208854938934e-05, 1.985836210619508426e-05, 1.990234560341734113e-05, 1.994629251216662057e-05, 1.999020276445733079e-05, 2.003407629237837485e-05, 2.007791302807054504e-05, 2.012171290375530848e-05, 2.016547585171250638e-05, 2.020920180428862793e-05, 2.025289069390285803e-05, 2.029654245303708917e-05, 2.034015701423437975e-05, 2.038373431011654191e-05, 2.042727427336460557e-05, 2.047077683672682117e-05, 2.051424193302676751e-05, 2.055766949514145758e-05, 2.060105945602938558e-05, 2.064441174870872085e-05, 2.068772630626542251e-05, 2.073100306185912117e-05, 2.077424194871354076e-05, 2.081744290011442835e-05, 2.086060584942758578e-05, 2.090373073007910669e-05, 2.094681747556351821e-05, 2.098986601945161771e-05, 2.103287629537096054e-05, 2.107584823702365789e-05, 2.111878177818442523e-05, 2.116167685269112941e-05, 2.120453339445233065e-05, 2.124735133744580195e-05, 2.129013061571650631e-05, 2.133287116338447421e-05, 2.137557291463326698e-05, 2.141823580371583489e-05, 2.146085976496256396e-05, 2.150344473276190601e-05, 2.154599064157766152e-05, 2.158849742594761762e-05, 2.163096502047355646e-05, 2.167339335982930543e-05, 2.171578237875890755e-05, 2.175813201207459541e-05, 2.180044219466492262e-05, 2.184271286148295284e-05, 2.188494394755426253e-05, 2.192713538797526042e-05, 2.196928711791297408e-05, 2.201139907260322033e-05, 2.205347118735874348e-05, 2.209550339755767884e-05, 2.213749563865084389e-05, 2.217944784616055585e-05, 2.222135995568061138e-05, 2.226323190287401988e-05, 2.230506362348130781e-05, 2.234685505330878563e-05, 2.238860612823649290e-05, 2.243031678421616545e-05, 2.247198695726973782e-05, 2.251361658349678696e-05, 2.255520559906334805e-05, 2.259675394020963600e-05, 2.263826154324800584e-05, 2.267972834456339655e-05, 2.272115428061126428e-05, 2.276253928792543608e-05, 2.280388330310669184e-05, 2.284518626283057400e-05, 2.288644810384556129e-05, 2.292766876297300778e-05, 2.296884817710550299e-05, 2.300998628321454946e-05, 2.305108301833922257e-05, 2.309213831959388544e-05, 2.313315212416627791e-05, 2.317412436931603600e-05, 2.321505499238188489e-05, 2.325594393077266714e-05, 2.329679112196541825e-05, 2.333759650352240216e-05, 2.337836001307238507e-05, 2.341908158831825196e-05, 2.345976116704277315e-05, 2.350039868709747097e-05, 2.354099408641008374e-05, 2.358154730298292937e-05, 2.362205827489101471e-05, 2.366252694028961150e-05, 2.370295323740512526e-05, 2.374333710453333015e-05, 2.378367848005599110e-05, 2.382397730242261875e-05, 2.386423351015779795e-05, 2.390444704186700181e-05, 2.394461783622729806e-05, 2.398474583198583116e-05, 2.402483096797608533e-05, 2.406487318310007313e-05, 2.410487241633532183e-05, 2.414482860674263895e-05, 2.418474169344576996e-05, 2.422461161565742590e-05, 2.426443831265906299e-05, 2.430422172380823490e-05, 2.434396178854625331e-05, 2.438365844637956333e-05, 2.442331163689680955e-05, 2.446292129976664051e-05, 2.450248737472891650e-05, 2.454200980160041180e-05, 2.458148852028168240e-05, 2.462092347073766897e-05, 2.466031459302308072e-05, 2.469966182726226654e-05, 2.473896511365869495e-05, 2.477822439249303645e-05, 2.481743960412343796e-05, 2.485661068898360851e-05, 2.489573758759003257e-05, 2.493482024053185310e-05, 2.497385858847555394e-05, 2.501285257217268477e-05, 2.505180213244211066e-05, 2.509070721018582110e-05, 2.512956774638749346e-05, 2.516838368210377527e-05, 2.520715495847118253e-05, 2.524588151670468340e-05, 2.528456329809588221e-05, 2.532320024402003286e-05, 2.536179229592598288e-05, 2.540033939534275655e-05, 2.543884148387839274e-05, 2.547729850321957907e-05, 2.551571039513030674e-05, 2.555407710145900598e-05, 2.559239856412774130e-05, 2.563067472513967551e-05, 2.566890552657720629e-05, 2.570709091060214234e-05, 2.574523081945403983e-05, 2.578332519545733102e-05, 2.582137398101065162e-05, 2.585937711859435234e-05, 2.589733455076838464e-05, 2.593524622017107762e-05, 2.597311206952571442e-05, 2.601093204163077775e-05, 2.604870607936622133e-05, 2.608643412569267372e-05, 2.612411612365084872e-05, 2.616175201636018676e-05, 2.619934174702582091e-05, 2.623688525892838876e-05, 2.627438249543073074e-05, 2.631183339997659589e-05, 2.634923791609050629e-05, 2.638659598737628663e-05, 2.642390755752379645e-05, 2.646117257029886397e-05, 2.649839096955029276e-05, 2.653556269920805924e-05, 2.657268770328180839e-05, 2.660976592586773837e-05, 2.664679731114015735e-05, 2.668378180334989106e-05, 2.672071934683942438e-05, 2.675760988602653322e-05, 2.679445336541057295e-05, 2.683124972957808235e-05, 2.686799892319245657e-05, 2.690470089100091314e-05, 2.694135557783270643e-05, 2.697796292859776902e-05, 2.701452288829357261e-05, 2.705103540199621731e-05, 2.708750041485958118e-05, 2.712391787213024833e-05, 2.716028771913050390e-05, 2.719660990126558466e-05, 2.723288436402841563e-05, 2.726911105299168522e-05, 2.730528991380575137e-05, 2.734142089221432861e-05, 2.737750393403738815e-05, 2.741353898517842204e-05, 2.744952599163056551e-05, 2.748546489945880931e-05, 2.752135565482340148e-05, 2.755719820396120253e-05, 2.759299249319295295e-05, 2.762873846892953105e-05, 2.766443607765584924e-05, 2.770008526594546362e-05, 2.773568598045928309e-05, 2.777123816793732606e-05, 2.780674177520360270e-05, 2.784219674917291497e-05, 2.787760303683278090e-05, 2.791296058526653490e-05, 2.794826934163562135e-05, 2.798352925318730265e-05, 2.801874026725346994e-05, 2.805390233125065665e-05, 2.808901539267865619e-05, 2.812407939912667476e-05, 2.815909429826419017e-05, 2.819406003784541740e-05, 2.822897656571623059e-05, 2.826384382979779152e-05, 2.829866177810136935e-05, 2.833343035872665333e-05, 2.836814951985396684e-05, 2.840281920975045075e-05, 2.843743937676889452e-05, 2.847200996934601841e-05, 2.850653093600895158e-05, 2.854100222536582327e-05, 2.857542378611041808e-05, 2.860979556702881329e-05, 2.864411751698353603e-05, 2.867838958492797971e-05, 2.871261171990442538e-05, 2.874678387103704185e-05, 2.878090598753755403e-05, 2.881497801870409097e-05, 2.884899991392095547e-05, 2.888297162265776347e-05, 2.891689309447500062e-05, 2.895076427901514197e-05, 2.898458512600909958e-05, 2.901835558527434550e-05, 2.905207560671369544e-05, 2.908574514032159373e-05, 2.911936413617468081e-05, 2.915293254443818656e-05, 2.918645031536464289e-05, 2.921991739929368377e-05, 2.925333374665061548e-05, 2.928669930795276937e-05, 2.932001403380026915e-05, 2.935327787488216006e-05, 2.938649078197531450e-05, 2.941965270594226021e-05, 2.945276359773827505e-05, 2.948582340840160884e-05, 2.951883208905982595e-05, 2.955178959092858554e-05, 2.958469586531132652e-05, 2.961755086359809858e-05, 2.965035453727172187e-05, 2.968310683790008914e-05, 2.971580771713487146e-05, 2.974845712672511821e-05, 2.978105501850230184e-05, 2.981360134438614209e-05, 2.984609605638985420e-05, 2.987853910661034365e-05, 2.991093044723487399e-05, 2.994327003053945074e-05, 2.997555780888764906e-05, 3.000779373473594670e-05, 3.003997776062714082e-05, 3.007210983918843375e-05, 3.010418992314524973e-05, 3.013621796530602224e-05, 3.016819391856845865e-05, 3.020011773592412774e-05, 3.023198937044951505e-05, 3.026380877531196223e-05, 3.029557590376836607e-05, 3.032729070916502596e-05, 3.035895314493670204e-05, 3.039056316461363199e-05, 3.042212072180535952e-05, 3.045362577022191013e-05, 3.048507826365707751e-05, 3.051647815599462042e-05, 3.054782540121439517e-05, 3.057911995337748518e-05, 3.061036176663949933e-05, 3.064155079524924724e-05, 3.067268699354151577e-05, 3.070377031594141259e-05, 3.073480071697034963e-05, 3.076577815122992233e-05, 3.079670257342261117e-05, 3.082757393833579642e-05, 3.085839220084737568e-05, 3.088915731593188963e-05, 3.091986923864600048e-05, 3.095052792414178700e-05, 3.098113332766481331e-05, 3.101168540454765751e-05, 3.104218411021376065e-05, 3.107262940018363373e-05, 3.110302123006038362e-05, 3.113335955554256089e-05, 3.116364433242299424e-05, 3.119387551658169580e-05, 3.122405306399147183e-05, 3.125417693071668948e-05, 3.128424707291192828e-05, 3.131426344682755706e-05, 3.134422600880155491e-05, 3.137413471526367189e-05, 3.140398952274105329e-05, 3.143379038784444994e-05, 3.146353726728052391e-05, 3.149323011785104889e-05, 3.152286889644544278e-05, 3.155245356004698150e-05, 3.158198406573094907e-05, 3.161146037066345856e-05, 3.164088243210732708e-05, 3.167025020741340221e-05, 3.169956365402635563e-05, 3.172882272948366001e-05, 3.175802739141496547e-05, 3.178717759754168633e-05, 3.181627330568154117e-05, 3.184531447374115313e-05, 3.187430105972135575e-05, 3.190323302171564797e-05, 3.193211031791072947e-05, 3.196093290658467783e-05, 3.198970074611297943e-05, 3.201841379495993037e-05, 3.204707201168440303e-05, 3.207567535493853153e-05, 3.210422378346641743e-05, 3.213271725610951688e-05, 3.216115573179853618e-05, 3.218953916955921875e-05, 3.221786752851066456e-05, 3.224614076786567579e-05, 3.227435884692904237e-05, 3.230252172510362710e-05, 3.233062936188188855e-05, 3.235868171685131559e-05, 3.238667874969339066e-05, 3.241462042018356942e-05, 3.244250668818983739e-05, 3.247033751367814456e-05, 3.249811285670475494e-05, 3.252583267742112551e-05, 3.255349693607312691e-05, 3.258110559299941716e-05, 3.260865860863717441e-05, 3.263615594351496144e-05, 3.266359755825210237e-05, 3.269098341357018863e-05, 3.271831347027983825e-05, 3.274558768928672665e-05, 3.277280603159607258e-05, 3.279996845829865189e-05, 3.282707493058926963e-05, 3.285412540975230628e-05, 3.288111985716820262e-05, 3.290805823431103386e-05, 3.293494050275500804e-05, 3.296176662416043919e-05, 3.298853656029150113e-05, 3.301525027300258685e-05, 3.304190772424308578e-05, 3.306850887606287934e-05, 3.309505369059926954e-05, 3.312154213008900681e-05, 3.314797415686646044e-05, 3.317434973335783166e-05, 3.320066882208475858e-05, 3.322693138566949327e-05, 3.325313738682110531e-05, 3.327928678835285608e-05, 3.330537955316903253e-05, 3.333141564426954145e-05, 3.335739502475493072e-05, 3.338331765781419198e-05, 3.340918350673617192e-05, 3.343499253490808822e-05, 3.346074470580904473e-05, 3.348643998301469347e-05, 3.351207833020142918e-05, 3.353765971113443600e-05, 3.356318408967909187e-05, 3.358865142979904414e-05, 3.361406169555079527e-05, 3.363941485108848015e-05, 3.366471086066244304e-05, 3.368994968861843122e-05, 3.371513129940222997e-05, 3.374025565755257454e-05, 3.376532272770596136e-05, 3.379033247459561803e-05, 3.381528486305134066e-05, 3.384017985799864009e-05, 3.386501742446314646e-05, 3.388979752756399557e-05, 3.391452013251816569e-05, 3.393918520463981347e-05, 3.396379270933878321e-05, 3.398834261212537730e-05, 3.401283487860348509e-05, 3.403726947447545506e-05, 3.406164636554048205e-05, 3.408596551769531199e-05, 3.411022689693244618e-05, 3.413443046934558264e-05, 3.415857620112189118e-05, 3.418266405854740729e-05, 3.420669400800522967e-05, 3.423066601597618428e-05, 3.425458004903766561e-05, 3.427843607386768889e-05, 3.430223405723856786e-05, 3.432597396602175295e-05, 3.434965576718598145e-05, 3.437327942779680988e-05, 3.439684491502086272e-05, 3.442035219611935435e-05, 3.444380123845247323e-05, 3.446719200947827061e-05, 3.449052447675285030e-05, 3.451379860792912858e-05, 3.453701437076151659e-05, 3.456017173309918475e-05, 3.458327066289060964e-05, 3.460631112818207640e-05, 3.462929309711862744e-05, 3.465221653794208379e-05, 3.467508141899620179e-05, 3.469788770871949705e-05, 3.472063537565027924e-05, 3.474332438842493763e-05, 3.476595471577755491e-05, 3.478852632654392548e-05, 3.481103918965616832e-05, 3.483349327414172412e-05, 3.485588854913342479e-05, 3.487822498385810934e-05, 3.490050254764161123e-05, 3.492272120991273600e-05, 3.494488094019156549e-05, 3.496698170810451465e-05, 3.498902348337286610e-05, 3.501100623581640227e-05, 3.503292993535738977e-05, 3.505479455201490093e-05, 3.507660005590364824e-05, 3.509834641724418944e-05, 3.512003360635177379e-05, 3.514166159364059754e-05, 3.516323034962862864e-05, 3.518473984492664273e-05, 3.520619005024788615e-05, 3.522758093640674092e-05, 3.524891247431425251e-05, 3.527018463498046756e-05, 3.529139738951912991e-05, 3.531255070913643870e-05, 3.533364456514504143e-05, 3.535467892895318511e-05, 3.537565377206855163e-05, 3.539656906610261493e-05, 3.541742478276025974e-05, 3.543822089384940388e-05, 3.545895737127941936e-05, 3.547963418705647715e-05, 3.550025131328679974e-05, 3.552080872217999507e-05, 3.554130638603895313e-05, 3.556174427727335782e-05, 3.558212236838849933e-05, 3.560244063199114242e-05, 3.562269904078773069e-05, 3.564289756758496930e-05, 3.566303618528851723e-05, 3.568311486690715461e-05, 3.570313358554667735e-05, 3.572309231441443721e-05, 3.574299102681757323e-05, 3.576282969616391969e-05, 3.578260829596012239e-05, 3.580232679981652425e-05, 3.582198518144046365e-05, 3.584158341464106524e-05, 3.586112147332765423e-05, 3.588059933150897045e-05, 3.590001696329715947e-05, 3.591937434290225000e-05, 3.593867144463551493e-05, 3.595790824290882073e-05, 3.597708471223468176e-05, 3.599620082722529798e-05, 3.601525656259657327e-05, 3.603425189316177289e-05, 3.605318679383656498e-05, 3.607206123963692672e-05, 3.609087520567959154e-05, 3.610962866718131731e-05, 3.612832159946264036e-05, 3.614695397794195984e-05, 3.616552577813975929e-05, 3.618403697567713624e-05, 3.620248754627564629e-05, 3.622087746576048802e-05, 3.623920671005503451e-05, 3.625747525518464159e-05, 3.627568307727582119e-05, 3.629383015255634967e-05, 3.631191645735390590e-05, 3.632994196810061804e-05, 3.634790666132646351e-05, 3.636581051366421564e-05, 3.638365350184739048e-05, 3.640143560271026711e-05, 3.641915679319086244e-05, 3.643681705032681122e-05, 3.645441635125487817e-05, 3.647195467321791718e-05, 3.648943199355713962e-05, 3.650684828971510943e-05, 3.652420353923846718e-05, 3.654149771977343062e-05, 3.655873080906578795e-05, 3.657590278496725388e-05, 3.659301362542837497e-05, 3.661006330850106387e-05, 3.662705181234214336e-05, 3.664397911520441521e-05, 3.666084519544838313e-05, 3.667765003153248139e-05, 3.669439360201716768e-05, 3.671107588556736935e-05, 3.672769686094777390e-05, 3.674425650702272734e-05, 3.676075480276313242e-05, 3.677719172723872371e-05, 3.679356725962092714e-05, 3.680988137918640403e-05, 3.682613406530814708e-05, 3.684232529746678313e-05, 3.685845505524166919e-05, 3.687452331831499207e-05, 3.689053006647013532e-05, 3.690647527959589402e-05, 3.692235893767744883e-05, 3.693818102080762813e-05, 3.695394150917828864e-05, 3.696964038308360185e-05, 3.698527762292258840e-05, 3.700085320919237566e-05, 3.701636712249414053e-05, 3.703181934353325176e-05, 3.704720985311475690e-05, 3.706253863214613352e-05, 3.707780566164020300e-05, 3.709301092270664659e-05, 3.710815439656304403e-05, 3.712323606452613210e-05, 3.713825590801600593e-05, 3.715321390855483150e-05, 3.716811004776744877e-05, 3.718294430738063299e-05, 3.719771666922536482e-05, 3.721242711523309657e-05, 3.722707562743864568e-05, 3.724166218797936122e-05, 3.725618677909492063e-05, 3.727064938312697057e-05, 3.728504998252202035e-05, 3.729938855982705776e-05, 3.731366509769199521e-05, 3.732787957886996120e-05, 3.734203198621566038e-05, 3.735612230268876854e-05, 3.737015051134932468e-05, 3.738411659536099044e-05, 3.739802053799016915e-05, 3.741186232260593810e-05, 3.742564193267959452e-05, 3.743935935178705437e-05, 3.745301456360511860e-05, 3.746660755191400075e-05, 3.748013830059681868e-05, 3.749360679363972334e-05, 3.750701301513063840e-05, 3.752035694926266190e-05, 3.753363858032989208e-05, 3.754685789272965680e-05, 3.756001487096258126e-05, 3.757310949963132090e-05, 3.758614176344358352e-05, 3.759911164720811783e-05, 3.761201913583724093e-05, 3.762486421434620815e-05, 3.763764686785339600e-05, 3.765036708157967196e-05, 3.766302484085075266e-05, 3.767562013109328038e-05, 3.768815293783813668e-05, 3.770062324671893803e-05, 3.771303104347169027e-05, 3.772537631393759394e-05, 3.773765904405982556e-05, 3.774987921988242636e-05, 3.776203682755676001e-05, 3.777413185333477027e-05, 3.778616428357136622e-05, 3.779813410472664489e-05, 3.781004130336279448e-05, 3.782188586614326092e-05, 3.783366777983825693e-05, 3.784538703131907675e-05, 3.785704360755998675e-05, 3.786863749564120014e-05, 3.788016868274189750e-05, 3.789163715614859540e-05, 3.790304290324882417e-05, 3.791438591153354704e-05, 3.792566616859853571e-05, 3.793688366214189700e-05, 3.794803837996352399e-05, 3.795913030996971065e-05, 3.797015944016799511e-05, 3.798112575866949069e-05, 3.799202925369049187e-05, 3.800286991354725655e-05, 3.801364772666288402e-05, 3.802436268156198196e-05, 3.803501476687308561e-05, 3.804560397132735676e-05, 3.805613028376191080e-05, 3.806659369311316931e-05, 3.807699418842505249e-05, 3.808733175884259595e-05, 3.809760639361440372e-05, 3.810781808209462689e-05, 3.811796681373784759e-05, 3.812805257810346316e-05, 3.813807536485551680e-05, 3.814803516376005479e-05, 3.815793196468715261e-05, 3.816776575761023055e-05, 3.817753653260591817e-05, 3.818724427985583644e-05, 3.819688898964350101e-05, 3.820647065235590109e-05, 3.821598925848604053e-05, 3.822544479862688660e-05, 3.823483726347674360e-05, 3.824416664383843294e-05, 3.825343293061688751e-05, 3.826263611482109652e-05, 3.827177618756352951e-05, 3.828085314006030574e-05, 3.828986696363047591e-05, 3.829881764969857681e-05, 3.830770518979048427e-05, 3.831652957553713330e-05, 3.832529079867226838e-05, 3.833398885103324983e-05, 3.834262372456192797e-05, 3.835119541130294904e-05, 3.835970390340471739e-05, 3.836814919311911775e-05, 3.837653127280193525e-05, 3.838485013491209656e-05, 3.839310577201324192e-05, 3.840129817677154326e-05, 3.840942734195709323e-05, 3.841749326044359360e-05, 3.842549592520822643e-05, 3.843343532933256892e-05, 3.844131146600101450e-05, 3.844912432850189772e-05, 3.845687391022692501e-05, 3.846456020467179813e-05, 3.847218320543521129e-05, 3.847974290622078233e-05, 3.848723930083447102e-05, 3.849467238318644927e-05, 3.850204214729042356e-05, 3.850934858726368906e-05, 3.851659169732670282e-05, 3.852377147180487262e-05, 3.853088790512614471e-05, 3.853794099182236574e-05, 3.854493072652883561e-05, 3.855185710398442261e-05, 3.855872011903253925e-05, 3.856551976661962432e-05, 3.857225604179450598e-05, 3.857892893971181017e-05, 3.858553845562851832e-05, 3.859208458490483466e-05, 3.859856732300630044e-05, 3.860498666550038547e-05, 3.861134260805874463e-05, 3.861763514645668926e-05, 3.862386427657309238e-05, 3.863002999439007693e-05, 3.863613229599469626e-05, 3.864217117757524114e-05, 3.864814663542601696e-05, 3.865405866594352194e-05, 3.865990726562781594e-05, 3.866569243108350303e-05, 3.867141415901813225e-05, 3.867707244624194016e-05, 3.868266728967031736e-05, 3.868819868632151137e-05, 3.869366663331689089e-05, 3.869907112788264662e-05, 3.870441216734640317e-05, 3.870968974914161683e-05, 3.871490387080380119e-05, 3.872005452997251260e-05, 3.872514172439032017e-05, 3.873016545190481152e-05, 3.873512571046463550e-05, 3.874002249812413031e-05, 3.874485581304006418e-05, 3.874962565347267208e-05, 3.875433201778667221e-05, 3.875897490444852158e-05, 3.876355431202942468e-05, 3.876807023920393082e-05, 3.877252268474969691e-05, 3.877691164754803636e-05, 3.878123712658346510e-05, 3.878549912094372186e-05, 3.878969762982094728e-05, 3.879383265250965779e-05, 3.879790418840814149e-05, 3.880191223701850566e-05, 3.880585679794517235e-05, 3.880973787089666058e-05, 3.881355545568505779e-05, 3.881730955222538964e-05, 3.882100016053602657e-05, 3.882462728073881935e-05, 3.882819091305871284e-05, 3.883169105782441680e-05, 3.883512771546755889e-05, 3.883850088652315900e-05, 3.884181057162954117e-05, 3.884505677152803540e-05, 3.884823948706350624e-05, 3.885135871918428500e-05, 3.885441446894149212e-05, 3.885740673748970807e-05, 3.886033552608641762e-05, 3.886320083609280950e-05, 3.886600266897260406e-05, 3.886874102629353734e-05, 3.887141590972580921e-05, 3.887402732104307956e-05, 3.887657526212197362e-05, 3.887905973494221065e-05, 3.888148074158699028e-05, 3.888383828424226058e-05, 3.888613236519700275e-05, 3.888836298684363762e-05, 3.889053015167711768e-05, 3.889263386229581474e-05, 3.889467412140118117e-05, 3.889665093179760750e-05, 3.889856429639202274e-05, 3.890041421819491750e-05, 3.890220070031972740e-05, 3.890392374598226384e-05, 3.890558335850208960e-05, 3.890717954130114325e-05, 3.890871229790427447e-05, 3.891018163193947445e-05, 3.891158754713722537e-05, 3.891293004733165236e-05, 3.891420913645895818e-05, 3.891542481855809408e-05, 3.891657709777150519e-05, 3.891766597834404629e-05, 3.891869146462311060e-05, 3.891965356105937514e-05, 3.892055227220587240e-05, 3.892138760271853242e-05, 3.892215955735596597e-05, 3.892286814097936290e-05, 3.892351335855251247e-05, 3.892409521514246062e-05, 3.892461371591791083e-05, 3.892506886615108754e-05, 3.892546067121639447e-05, 3.892578913659074666e-05, 3.892605426785374664e-05, 3.892625607068781997e-05, 3.892639455087702939e-05, 3.892646971430901282e-05, 3.892648156697337740e-05, 3.892643011496193665e-05, 3.892631536446963206e-05, 3.892613732179319813e-05, 3.892589599333216529e-05, 3.892559138558810772e-05, 3.892522350516532098e-05, 3.892479235877027992e-05, 3.892429795321170641e-05, 3.892374029540076588e-05, 3.892311939235085049e-05, 3.892243525117758586e-05, 3.892168787909875658e-05, 3.892087728343462467e-05, 3.892000347160744168e-05, 3.891906645114147584e-05, 3.891806622966364896e-05, 3.891700281490243196e-05, 3.891587621468893581e-05, 3.891468643695596288e-05, 3.891343348973842027e-05, 3.891211738117355699e-05, 3.891073811950013727e-05, 3.890929571305924012e-05, 3.890779017029420516e-05, 3.890622149974973134e-05, 3.890458971007252752e-05, 3.890289481001173253e-05, 3.890113680841768192e-05, 3.889931571424297863e-05, 3.889743153654188985e-05, 3.889548428447059782e-05, 3.889347396728693547e-05, 3.889140059435053555e-05, 3.888926417512284417e-05, 3.888706471916673457e-05, 3.888480223614706273e-05, 3.888247673583018630e-05, 3.888008822808408654e-05, 3.887763672287836836e-05, 3.887512223028426704e-05, 3.887254476047443145e-05, 3.886990432372299854e-05, 3.886720093040592540e-05, 3.886443459100019643e-05, 3.886160531608448066e-05, 3.885871311633893520e-05, 3.885575800254483257e-05, 3.885273998558506892e-05, 3.884965907644369646e-05, 3.884651528620605221e-05, 3.884330862605896807e-05, 3.884003910729016094e-05, 3.883670674128898492e-05, 3.883331153954576041e-05, 3.882985351365181482e-05, 3.882633267529995687e-05, 3.882274903628377187e-05, 3.881910260849812317e-05, 3.881539340393892176e-05, 3.881162143470292300e-05, 3.880778671298807216e-05, 3.880388925109310469e-05, 3.879992906141789175e-05, 3.879590615646283716e-05, 3.879182054882968376e-05, 3.878767225122065282e-05, 3.878346127643866089e-05, 3.877918763738811940e-05, 3.877485134707340321e-05, 3.877045241859982641e-05, 3.876599086517364232e-05, 3.876146670010139971e-05, 3.875687993679056628e-05, 3.875223058874876966e-05, 3.874751866958490196e-05, 3.874274419300783229e-05, 3.873790717282692852e-05, 3.873300762295210474e-05, 3.872804555739408548e-05, 3.872302099026336223e-05, 3.871793393577118949e-05, 3.871278440822903595e-05, 3.870757242204859799e-05, 3.870229799174182682e-05, 3.869696113192149092e-05, 3.869156185729961066e-05, 3.868610018268891528e-05, 3.868057612300227361e-05, 3.867498969325216558e-05, 3.866934090855217297e-05, 3.866362978411481098e-05, 3.865785633525293776e-05, 3.865202057737996441e-05, 3.864612252600793733e-05, 3.864016219675024195e-05, 3.863413960531942752e-05, 3.862805476752748497e-05, 3.862190769928674816e-05, 3.861569841660949403e-05, 3.860942693560664838e-05, 3.860309327249031341e-05, 3.859669744357093521e-05, 3.859023946525915372e-05, 3.858371935406526061e-05, 3.857713712659870462e-05, 3.857049279956885048e-05, 3.856378638978434875e-05, 3.855701791415295962e-05, 3.855018738968219664e-05, 3.854329483347911670e-05, 3.853634026274913412e-05, 3.852932369479814846e-05, 3.852224514703095207e-05, 3.851510463695064732e-05, 3.850790218216057785e-05, 3.850063780036277003e-05, 3.849331150935824465e-05, 3.848592332704749809e-05, 3.847847327142911309e-05, 3.847096136060172396e-05, 3.846338761276223438e-05, 3.845575204620672540e-05, 3.844805467932990663e-05, 3.844029553062565824e-05, 3.843247461868587233e-05, 3.842459196220180133e-05, 3.841664757996351591e-05, 3.840864149085928837e-05, 3.840057371387619570e-05, 3.839244426810034321e-05, 3.838425317271499428e-05, 3.837600044700321988e-05, 3.836768611034629934e-05, 3.835931018222332061e-05, 3.835087268221277264e-05, 3.834237362999010594e-05, 3.833381304533030754e-05, 3.832519094810572585e-05, 3.831650735828740552e-05, 3.830776229594445734e-05, 3.829895578124428176e-05, 3.829008783445155928e-05, 3.828115847592986998e-05, 3.827216772614026370e-05, 3.826311560564227651e-05, 3.825400213509273128e-05, 3.824482733524699809e-05, 3.823559122695706976e-05, 3.822629383117398777e-05, 3.821693516894599229e-05, 3.820751526141889494e-05, 3.819803412983667506e-05, 3.818849179553990086e-05, 3.817888827996713885e-05, 3.816922360465578736e-05, 3.815949779123839703e-05, 3.814971086144650612e-05, 3.813986283710905494e-05, 3.812995374015091534e-05, 3.811998359259565546e-05, 3.810995241656366269e-05, 3.809986023427237406e-05, 3.808970706803673704e-05, 3.807949294026790851e-05, 3.806921787347476580e-05, 3.805888189026414395e-05, 3.804848501333783377e-05, 3.803802726549579378e-05, 3.802750866963500507e-05, 3.801692924874821764e-05, 3.800628902592538024e-05, 3.799558802435490070e-05, 3.798482626731894326e-05, 3.797400377819807026e-05, 3.796312058046986661e-05, 3.795217669770604627e-05, 3.794117215357830698e-05, 3.793010697185167596e-05, 3.791898117638926006e-05, 3.790779479115045686e-05, 3.789654784018939607e-05, 3.788524034765895792e-05, 3.787387233780685643e-05, 3.786244383497623574e-05, 3.785095486360743873e-05, 3.783940544823721417e-05, 3.782779561349626372e-05, 3.781612538411433091e-05, 3.780439478491423805e-05, 3.779260384081614845e-05, 3.778075257683571653e-05, 3.776884101808435887e-05, 3.775686918976907803e-05, 3.774483711719328925e-05, 3.773274482575429288e-05, 3.772059234094654736e-05, 3.770837968836004967e-05, 3.769610689367807881e-05, 3.768377398268253555e-05, 3.767138098124890762e-05, 3.765892791534725906e-05, 3.764641481104433088e-05, 3.763384169450153524e-05, 3.762120859197529431e-05, 3.760851552981784663e-05, 3.759576253447482119e-05, 3.758294963248834099e-05, 3.757007685049562710e-05, 3.755714421522666086e-05, 3.754415175350925933e-05, 3.753109949226458256e-05, 3.751798745850743182e-05, 3.750481567934868901e-05, 3.749158418199369035e-05, 3.747829299374195539e-05, 3.746494214198787810e-05, 3.745153165422045589e-05, 3.743806155802201566e-05, 3.742453188107019242e-05, 3.741094265113681806e-05, 3.739729389608798226e-05, 3.738358564388414776e-05, 3.736981792257884248e-05, 3.735599076032073985e-05, 3.734210418535231714e-05, 3.732815822601001128e-05, 3.731415291072398847e-05, 3.730008826801903867e-05, 3.728596432651183119e-05, 3.727178111491482459e-05, 3.725753866203326484e-05, 3.724323699676631688e-05, 3.722887614810701048e-05, 3.721445614514032931e-05, 3.719997701704655840e-05, 3.718543879309856688e-05, 3.717084150266268885e-05, 3.715618517519873025e-05, 3.714146984026016525e-05, 3.712669552749179176e-05, 3.711186226663286880e-05, 3.709697008751742142e-05, 3.708201902006886039e-05, 3.706700909430614855e-05, 3.705194034034099546e-05, 3.703681278837617691e-05, 3.702162646870901786e-05, 3.700638141172882430e-05, 3.699107764791808260e-05, 3.697571520785176839e-05, 3.696029412219616739e-05, 3.694481442171096940e-05, 3.692927613725019653e-05, 3.691367929975664677e-05, 3.689802394026768084e-05, 3.688231008991309446e-05, 3.686653777991297709e-05, 3.685070704158143883e-05, 3.683481790632370343e-05, 3.681887040563761938e-05, 3.680286457111252827e-05, 3.678680043443038292e-05, 3.677067802736253536e-05, 3.675449738177639794e-05, 3.673825852962684426e-05, 3.672196150296262626e-05, 3.670560633392447688e-05, 3.668919305474174905e-05, 3.667272169773928001e-05, 3.665619229533141469e-05, 3.663960488002243257e-05, 3.662295948440996295e-05, 3.660625614118264033e-05, 3.658949488311781409e-05, 3.657267574308853473e-05, 3.655579875405420273e-05, 3.653886394906778517e-05, 3.652187136127330182e-05, 3.650482102390266735e-05, 3.648771297028302325e-05, 3.647054723382983963e-05, 3.645332384804791129e-05, 3.643604284653499659e-05, 3.641870426297906630e-05, 3.640130813115574214e-05, 3.638385448493552032e-05, 3.636634335827695458e-05, 3.634877478522742869e-05, 3.633114879992650395e-05, 3.631346543660373045e-05, 3.629572472957819302e-05, 3.627792671325982588e-05, 3.626007142214655979e-05, 3.624215889082811002e-05, 3.622418915398414673e-05, 3.620616224638117790e-05, 3.618807820287982024e-05, 3.616993705842804331e-05, 3.615173884806181321e-05, 3.613348360690913800e-05, 3.611517137018620531e-05, 3.609680217319914409e-05, 3.607837605134359772e-05, 3.605989304010244045e-05, 3.604135317505005994e-05, 3.602275649184888786e-05, 3.600410302625081611e-05, 3.598539281409618039e-05, 3.596662589131535259e-05, 3.594780229392501389e-05, 3.592892205803308785e-05, 3.590998521983546749e-05, 3.589099181561623890e-05, 3.587194188174869090e-05, 3.585283545469475938e-05, 3.583367257100292670e-05, 3.581445326731207731e-05, 3.579517758034877377e-05, 3.577584554692755486e-05, 3.575645720395239925e-05, 3.573701258841240227e-05, 3.571751173738744762e-05, 3.569795468804431104e-05, 3.567834147763783258e-05, 3.565867214351065234e-05, 3.563894672309376614e-05, 3.561916525390359134e-05, 3.559932777354639182e-05, 3.557943431971545220e-05, 3.555948493019118632e-05, 3.553947964284163188e-05, 3.551941849562266729e-05, 3.549930152657538923e-05, 3.547912877383014457e-05, 3.545890027560373174e-05, 3.543861607020000384e-05, 3.541827619601054623e-05, 3.539788069151129522e-05, 3.537742959526690874e-05, 3.535692294593096961e-05, 3.533636078223886373e-05, 3.531574314301610127e-05, 3.529507006717454913e-05, 3.527434159370913087e-05, 3.525355776170728637e-05, 3.523271861033646285e-05, 3.521182417885422507e-05, 3.519087450660311891e-05, 3.516986963301279234e-05, 3.514880959759549597e-05, 3.512769443995551565e-05, 3.510652419977673797e-05, 3.508529891683254365e-05, 3.506401863098193827e-05, 3.504268338216633355e-05, 3.502129321041755691e-05, 3.499984815585077702e-05, 3.497834825866455802e-05, 3.495679355914575878e-05, 3.493518409766609731e-05, 3.491351991467933185e-05, 3.489180105073051724e-05, 3.487002754644350947e-05, 3.484819944253066934e-05, 3.482631677978944716e-05, 3.480437959909842547e-05, 3.478238794142649406e-05, 3.476034184782429834e-05, 3.473824135942554716e-05, 3.471608651745101081e-05, 3.469387736320637971e-05, 3.467161393807750071e-05, 3.464929628354041272e-05, 3.462692444115236817e-05, 3.460449845255350674e-05, 3.458201835947006733e-05, 3.455948420371213832e-05, 3.453689602717302060e-05, 3.451425387183161282e-05, 3.449155777974714625e-05, 3.446880779306566963e-05, 3.444600395401581404e-05, 3.442314630491002616e-05, 3.440023488814388387e-05, 3.437726974619755992e-05, 3.435425092163162743e-05, 3.433117845709296201e-05, 3.430805239531032366e-05, 3.428487277909580684e-05, 3.426163965134534196e-05, 3.423835305503507683e-05, 3.421501303322682479e-05, 3.419161962906422934e-05, 3.416817288577365182e-05, 3.414467284666411722e-05, 3.412111955512807311e-05, 3.409751305463770335e-05, 3.407385338875026779e-05, 3.405014060110457183e-05, 3.402637473542152209e-05, 3.400255583550437034e-05, 3.397868394523926238e-05, 3.395475910859135525e-05, 3.393078136961080743e-05, 3.390675077242865211e-05, 3.388266736125762391e-05, 3.385853118039287710e-05, 3.383434227420874664e-05, 3.381010068716363377e-05, 3.378580646379655020e-05, 3.376145964872777534e-05, 3.373706028665895122e-05, 3.371260842237394303e-05, 3.368810410073457690e-05, 3.366354736668673847e-05, 3.363893826525670024e-05, 3.361427684155097242e-05, 3.358956314075719742e-05, 3.356479720814469874e-05, 3.353997908906053042e-05, 3.351510882893493865e-05, 3.349018647327804145e-05, 3.346521206768006586e-05, 3.344018565781293350e-05, 3.341510728942521236e-05, 3.338997700834787653e-05, 3.336479486049536336e-05, 3.333956089185528029e-05, 3.331427514849979576e-05, 3.328893767658052310e-05, 3.326354852232509180e-05, 3.323810773204750836e-05, 3.321261535213433950e-05, 3.318707142905587948e-05, 3.316147600936165740e-05, 3.313582913967743531e-05, 3.311013086671017524e-05, 3.308438123724946899e-05, 3.305858029815725172e-05, 3.303272809637886764e-05, 3.300682467893859088e-05, 3.298087009293512603e-05, 3.295486438555224692e-05, 3.292880760404938434e-05, 3.290269979576221560e-05, 3.287654100810822108e-05, 3.285033128858310633e-05, 3.282407068475665503e-05, 3.279775924428439090e-05, 3.277139701489246667e-05, 3.274498404438927859e-05, 3.271852038066144807e-05, 3.269200607166878697e-05, 3.266544116545558004e-05, 3.263882571014058994e-05, 3.261215975391806014e-05, 3.258544334506272933e-05, 3.255867653192725646e-05, 3.253185936293670488e-05, 3.250499188660164757e-05, 3.247807415150180254e-05, 3.245110620629852141e-05, 3.242408809972894157e-05, 3.239701988060738203e-05, 3.236990159782467260e-05, 3.234273330034970564e-05, 3.231551503722459781e-05, 3.228824685757158156e-05, 3.226092881058803129e-05, 3.223356094554779834e-05, 3.220614331180114318e-05, 3.217867595877543340e-05, 3.215115893597104404e-05, 3.212359229296771375e-05, 3.209597607942003177e-05, 3.206831034505837986e-05, 3.204059513969000972e-05, 3.201283051319478071e-05, 3.198501651553108230e-05, 3.195715319673204615e-05, 3.192924060690611532e-05, 3.190127879623722723e-05, 3.187326781498548447e-05, 3.184520771348277064e-05, 3.181709854213961460e-05, 3.178894035144023711e-05, 3.176073319194387218e-05, 3.173247711428440110e-05, 3.170417216917176197e-05, 3.167581840738696911e-05, 3.164741587978897065e-05, 3.161896463731018976e-05, 3.159046473095713446e-05, 3.156191621181212565e-05, 3.153331913102773372e-05, 3.150467353983423929e-05, 3.147597948953514046e-05, 3.144723703150724100e-05, 3.141844621720171413e-05, 3.138960709814415001e-05, 3.136071972593043578e-05, 3.133178415223366052e-05, 3.130280042879895179e-05, 3.127376860744500025e-05, 3.124468874006489994e-05, 3.121556087862125583e-05, 3.118638507515213333e-05, 3.115716138177242038e-05, 3.112788985066234162e-05, 3.109857053407994712e-05, 3.106920348435607753e-05, 3.103978875389040682e-05, 3.101032639515760862e-05, 3.098081646070852856e-05, 3.095125900315888820e-05, 3.092165407520183469e-05, 3.089200172960226905e-05, 3.086230201919235348e-05, 3.083255499688533494e-05, 3.080276071565697145e-05, 3.077291922856020942e-05, 3.074303058871964749e-05, 3.071309484932761982e-05, 3.068311206365040994e-05, 3.065308228502976184e-05, 3.062300556687090635e-05, 3.059288196265555796e-05, 3.056271152593649385e-05, 3.053249431033226838e-05, 3.050223036954155507e-05, 3.047191975732491505e-05, 3.044156252751843770e-05, 3.041115873402806889e-05, 3.038070843083143379e-05, 3.035021167197126055e-05, 3.031966851156997294e-05, 3.028907900381107258e-05, 3.025844320295356901e-05, 3.022776116332632826e-05, 3.019703293932320072e-05, 3.016625858541557758e-05, 3.013543815614111172e-05, 3.010457170610410395e-05, 3.007365928998263844e-05, 3.004270096252441868e-05, 3.001169677854095686e-05, 2.998064679292258665e-05, 2.994955106061953374e-05, 2.991840963665661014e-05, 2.988722257612611268e-05, 2.985598993418942220e-05, 2.982471176607669522e-05, 2.979338812708821243e-05, 2.976201907258885262e-05, 2.973060465801603789e-05, 2.969914493887445154e-05, 2.966763997073706464e-05, 2.963608980924511914e-05, 2.960449451010919848e-05, 2.957285412910421656e-05, 2.954116872207682081e-05, 2.950943834494036420e-05, 2.947766305367592168e-05, 2.944584290433363525e-05, 2.941397795302708293e-05, 2.938206825594152880e-05, 2.935011386932808870e-05, 2.931811484950529550e-05, 2.928607125285873319e-05, 2.925398313584257512e-05, 2.922185055497401049e-05, 2.918967356684085411e-05, 2.915745222809666749e-05, 2.912518659546161265e-05, 2.909287672572234029e-05, 2.906052267573362290e-05, 2.902812450241219853e-05, 2.899568226274531899e-05, 2.896319601378538313e-05, 2.893066581265040432e-05, 2.889809171652615521e-05, 2.886547378266003517e-05, 2.883281206836921874e-05, 2.880010663103557008e-05, 2.876735752810611729e-05, 2.873456481709379099e-05, 2.870172855557822061e-05, 2.866884880119988978e-05, 2.863592561166895567e-05, 2.860295904475927236e-05, 2.856994915830948176e-05, 2.853689601022476869e-05, 2.850379965847082663e-05, 2.847066016108075253e-05, 2.843747757615666639e-05, 2.840425196185650426e-05, 2.837098337640852629e-05, 2.833767187810504184e-05, 2.830431752529833362e-05, 2.827092037640774560e-05, 2.823748048992082827e-05, 2.820399792438037896e-05, 2.817047273839895326e-05, 2.813690499065247839e-05, 2.810329473987498123e-05, 2.806964204487378414e-05, 2.803594696450978260e-05, 2.800220955771278670e-05, 2.796842988347581890e-05, 2.793460800085059427e-05, 2.790074396895465589e-05, 2.786683784697304521e-05, 2.783288969414440052e-05, 2.779889956977631200e-05, 2.776486753323868434e-05, 2.773079364395801758e-05, 2.769667796143357528e-05, 2.766252054521642215e-05, 2.762832145492588360e-05, 2.759408075024167846e-05, 2.755979849090694464e-05, 2.752547473672078859e-05, 2.749110954755463643e-05, 2.745670298333086163e-05, 2.742225510403941392e-05, 2.738776596973180880e-05, 2.735323564051464601e-05, 2.731866417656496793e-05, 2.728405163811634454e-05, 2.724939808546027271e-05, 2.721470357895389774e-05, 2.717996817901355559e-05, 2.714519194611615866e-05, 2.711037494080082542e-05, 2.707551722366273098e-05, 2.704061885536181121e-05, 2.700567989661832767e-05, 2.697070040820683334e-05, 2.693568045097073820e-05, 2.690062008580914295e-05, 2.686551937367788595e-05, 2.683037837559717329e-05, 2.679519715264505662e-05, 2.675997576595965920e-05, 2.672471427673804079e-05, 2.668941274623849491e-05, 2.665407123577384703e-05, 2.661868980672040265e-05, 2.658326852051225527e-05, 2.654780743864246543e-05, 2.651230662266404326e-05, 2.647676613418456477e-05, 2.644118603487446596e-05, 2.640556638646130675e-05, 2.636990725073105166e-05, 2.633420868952785640e-05, 2.629847076475559585e-05, 2.626269353837168080e-05, 2.622687707239596867e-05, 2.619102142890473945e-05, 2.615512667003198996e-05, 2.611919285797094833e-05, 2.608322005496760269e-05, 2.604720832333017096e-05, 2.601115772542249744e-05, 2.597506832366576715e-05, 2.593894018053817722e-05, 2.590277335857656317e-05, 2.586656792036988692e-05, 2.583032392856869985e-05, 2.579404144587843772e-05, 2.575772053506136875e-05, 2.572136125893608553e-05, 2.568496368037906683e-05, 2.564852786231845369e-05, 2.561205386774310921e-05, 2.557554175969647595e-05, 2.553899160127782607e-05, 2.550240345564375554e-05, 2.546577738600213294e-05, 2.542911345561913998e-05, 2.539241172782156526e-05, 2.535567226598191347e-05, 2.531889513353428889e-05, 2.528208039396805286e-05, 2.524522811082277206e-05, 2.520833834769770865e-05, 2.517141116824542013e-05, 2.513444663617320600e-05, 2.509744481524297233e-05, 2.506040576927271230e-05, 2.502332956212843229e-05, 2.498621625774165501e-05, 2.494906592008675625e-05, 2.491187861319872548e-05, 2.487465440116653188e-05, 2.483739334812808960e-05, 2.480009551827828420e-05, 2.476276097587043636e-05, 2.472538978520191926e-05, 2.468798201062970669e-05, 2.465053771656420330e-05, 2.461305696746251911e-05, 2.457553982784616576e-05, 2.453798636227840345e-05, 2.450039663538171016e-05, 2.446277071183128657e-05, 2.442510865635021784e-05, 2.438741053371727306e-05, 2.434967640876868066e-05, 2.431190634638294619e-05, 2.427410041149761336e-05, 2.423625866910197624e-05, 2.419838118423111271e-05, 2.416046802198147666e-05, 2.412251924749659330e-05, 2.408453492596824159e-05, 2.404651512264454515e-05, 2.400845990282384309e-05, 2.397036933185519146e-05, 2.393224347514095519e-05, 2.389408239812941854e-05, 2.385588616632482078e-05, 2.381765484528235191e-05, 2.377938850060120696e-05, 2.374108719794128277e-05, 2.370275100300801602e-05, 2.366437998155385036e-05, 2.362597419938663215e-05, 2.358753372236255301e-05, 2.354905861638822336e-05, 2.351054894742149570e-05, 2.347200478146536603e-05, 2.343342618457748428e-05, 2.339481322286345261e-05, 2.335616596247839412e-05, 2.331748446962678345e-05, 2.327876881056424585e-05, 2.324001905159041502e-05, 2.320123525905896534e-05, 2.316241749937105590e-05, 2.312356583897653660e-05, 2.308468034437398208e-05, 2.304576108211244673e-05, 2.300680811878419720e-05, 2.296782152103500550e-05, 2.292880135555733551e-05, 2.288974768909185742e-05, 2.285066058842884367e-05, 2.281154012040142998e-05, 2.277238635189575937e-05, 2.273319934984390100e-05, 2.269397918122560519e-05, 2.265472591306807646e-05, 2.261543961244749814e-05, 2.257612034648242216e-05, 2.253676818234340149e-05, 2.249738318724644429e-05, 2.245796542845451482e-05, 2.241851497327725565e-05, 2.237903188907285786e-05, 2.233951624324073597e-05, 2.229996810323214967e-05, 2.226038753654283127e-05, 2.222077461071481189e-05, 2.218112939333786822e-05, 2.214145195204278690e-05, 2.210174235450939437e-05, 2.206200066846878292e-05, 2.202222696168716279e-05, 2.198242130198325690e-05, 2.194258375722121286e-05, 2.190271439530516837e-05, 2.186281328418997471e-05, 2.182288049187341416e-05, 2.178291608639855480e-05, 2.174292013585321512e-05, 2.170289270837165137e-05, 2.166283387212584324e-05, 2.162274369534442338e-05, 2.158262224628825575e-05, 2.154246959326941928e-05, 2.150228580464415724e-05, 2.146207094880741209e-05, 2.142182509420184817e-05, 2.138154830931895617e-05, 2.134124066268342708e-05, 2.130090222287055703e-05, 2.126053305849924063e-05, 2.122013323822454419e-05, 2.117970283075706211e-05, 2.113924190483826822e-05, 2.109875052925974342e-05, 2.105822877285579636e-05, 2.101767670449833039e-05, 2.097709439310537489e-05, 2.093648190764274206e-05, 2.089583931710832631e-05, 2.085516669054890266e-05, 2.081446409705398737e-05, 2.077373160574773361e-05, 2.073296928580695963e-05, 2.069217720644505183e-05, 2.065135543691347917e-05, 2.061050404651073453e-05, 2.056962310457498240e-05, 2.052871268048570553e-05, 2.048777284366554472e-05, 2.044680366357274663e-05, 2.040580520971219556e-05, 2.036477755162939950e-05, 2.032372075890353093e-05, 2.028263490116542794e-05, 2.024152004808084672e-05, 2.020037626935250119e-05, 2.015920363472873663e-05, 2.011800221399631636e-05, 2.007677207698220048e-05, 2.003551329355492147e-05, 1.999422593361750638e-05, 1.995291006711832563e-05, 1.991156576404317155e-05, 1.987019309441774868e-05, 1.982879212830674539e-05, 1.978736293581625301e-05, 1.974590558708582747e-05, 1.970442015229952103e-05, 1.966290670167863505e-05, 1.962136530548296010e-05, 1.957979603401130444e-05, 1.953819895760261217e-05, 1.949657414662880406e-05, 1.945492167150571447e-05, 1.941324160268537654e-05, 1.937153401065793651e-05, 1.932979896595341218e-05, 1.928803653913415764e-05, 1.924624680080566131e-05, 1.920442982160920384e-05, 1.916258567222360636e-05, 1.912071442336492897e-05, 1.907881614578842228e-05, 1.903689091028090076e-05, 1.899493878767172700e-05, 1.895295984882534773e-05, 1.891095416464282520e-05, 1.886892180606201339e-05, 1.882686284405912333e-05, 1.878477734964113365e-05, 1.874266539385707311e-05, 1.870052704779001101e-05, 1.865836238255932388e-05, 1.861617146932197279e-05, 1.857395437926535442e-05, 1.853171118361614063e-05, 1.848944195364213186e-05, 1.844714676063557388e-05, 1.840482567593134536e-05, 1.836247877089965637e-05, 1.832010611694005823e-05, 1.827770778549296651e-05, 1.823528384803147870e-05, 1.819283437606356293e-05, 1.815035944113373173e-05, 1.810785911481527981e-05, 1.806533346871961836e-05, 1.802278257449816225e-05, 1.798020650382514541e-05, 1.793760532841626572e-05, 1.789497912002118371e-05, 1.785232795041771526e-05, 1.780965189142109142e-05, 1.776695101488559822e-05, 1.772422539268789351e-05, 1.768147509674520128e-05, 1.763870019900810163e-05, 1.759590077145264329e-05, 1.755307688610094338e-05, 1.751022861499486848e-05, 1.746735603021641416e-05, 1.742445920388007837e-05, 1.738153820812558031e-05, 1.733859311513592254e-05, 1.729562399712091116e-05, 1.725263092631851780e-05, 1.720961397500442736e-05, 1.716657321548613257e-05, 1.712350872009539530e-05, 1.708042056120872112e-05, 1.703730881122086406e-05, 1.699417354256558911e-05, 1.695101482770591101e-05, 1.690783273913605255e-05, 1.686462734938125150e-05, 1.682139873099944451e-05, 1.677814695657367085e-05, 1.673487209872328045e-05, 1.669157423009832306e-05, 1.664825342337133548e-05, 1.660490975125681652e-05, 1.656154328649352402e-05, 1.651815410184655854e-05, 1.647474227011656552e-05, 1.643130786413217977e-05, 1.638785095675166531e-05, 1.634437162086458233e-05, 1.630086992938445189e-05, 1.625734595525968603e-05, 1.621379977146783811e-05, 1.617023145100804390e-05, 1.612664106691967999e-05, 1.608302869226527410e-05, 1.603939440013224315e-05, 1.599573826364232584e-05, 1.595206035594370523e-05, 1.590836075021300099e-05, 1.586463951965502879e-05, 1.582089673750448767e-05, 1.577713247701847555e-05, 1.573334681148764647e-05, 1.568953981422826531e-05, 1.564571155858445758e-05, 1.560186211792955786e-05, 1.555799156565858818e-05, 1.551409997519952015e-05, 1.547018742000559404e-05, 1.542625397355698919e-05, 1.538229970936067826e-05, 1.533832470095237546e-05, 1.529432902188866247e-05, 1.525031274575834551e-05, 1.520627594617473886e-05, 1.516221869677729791e-05, 1.511814107123370799e-05, 1.507404314323170705e-05, 1.502992498649085272e-05, 1.498578667475441105e-05, 1.494162828179141656e-05, 1.489744988139628762e-05, 1.485325154739083905e-05, 1.480903335361642841e-05, 1.476479537394332589e-05, 1.472053768227263537e-05, 1.467626035251886586e-05, 1.463196345862889830e-05, 1.458764707457443337e-05, 1.454331127434571669e-05, 1.449895613196341931e-05, 1.445458172147040285e-05, 1.441018811693377610e-05, 1.436577539244669410e-05, 1.432134362212023172e-05, 1.427689288009330751e-05, 1.423242324053426086e-05, 1.418793477762332348e-05, 1.414342756557205039e-05, 1.409890167861518666e-05, 1.405435719100481612e-05, 1.400979417702203011e-05, 1.396521271096873494e-05, 1.392061286716988469e-05, 1.387599471997287643e-05, 1.383135834374985923e-05, 1.378670381288742575e-05, 1.374203120180827769e-05, 1.369734058494359551e-05, 1.365263203675448201e-05, 1.360790563172393743e-05, 1.356316144434900416e-05, 1.351839954916015020e-05, 1.347362002070363561e-05, 1.342882293354314224e-05, 1.338400836226960777e-05, 1.333917638149519652e-05, 1.329432706584527467e-05, 1.324946048997995876e-05, 1.320457672856644315e-05, 1.315967585630049770e-05, 1.311475794789654394e-05, 1.306982307808937454e-05, 1.302487132163424647e-05, 1.297990275330854462e-05, 1.293491744790381962e-05, 1.288991548023758032e-05, 1.284489692514715948e-05, 1.279986185748166535e-05, 1.275481035212176830e-05, 1.270974248396157943e-05, 1.266465832791068173e-05, 1.261955795890380662e-05, 1.257444145189273626e-05, 1.252930888184835683e-05, 1.248416032376239319e-05, 1.243899585263919777e-05, 1.239381554350792583e-05, 1.234861947141598278e-05, 1.230340771142136198e-05, 1.225818033861214504e-05, 1.221293742808855838e-05, 1.216767905496491963e-05, 1.212240529437929046e-05, 1.207711622148549581e-05, 1.203181191145507041e-05, 1.198649243947691653e-05, 1.194115788075941312e-05, 1.189580831052211996e-05, 1.185044380400775983e-05, 1.180506443647403438e-05, 1.175967028319551482e-05, 1.171426141946555274e-05, 1.166883792058809445e-05, 1.162339986188956140e-05, 1.157794731871084747e-05, 1.153248036640897741e-05, 1.148699908035724412e-05, 1.144150353594683828e-05, 1.139599380857880664e-05, 1.135046997367606467e-05, 1.130493210667511931e-05, 1.125938028302791893e-05, 1.121381457820384721e-05, 1.116823506768159673e-05, 1.112264182696087325e-05, 1.107703493155452343e-05, 1.103141445699016615e-05, 1.098578047881023830e-05, 1.094013307257381250e-05, 1.089447231384847575e-05, 1.084879827822014651e-05, 1.080311104129513813e-05, 1.075741067868173415e-05, 1.071169726601036462e-05, 1.066597087892528826e-05, 1.062023159307855142e-05, 1.057447948414179061e-05, 1.052871462779819419e-05, 1.048293709974441495e-05, 1.043714697569228450e-05, 1.039134433136073092e-05, 1.034552924248579063e-05, 1.029970178482241939e-05, 1.025386203412624212e-05, 1.020801006617358693e-05, 1.016214595675328411e-05, 1.011626978166058278e-05, 1.007038161670895512e-05, 1.002448153772203095e-05, 9.978569620535545867e-06, 9.932645940996987196e-06, 9.886710574967782746e-06, 9.840763598312765392e-06, 9.794805086922609290e-06, 9.748835116685091744e-06, 9.702853763507449794e-06, 9.656861103307982729e-06, 9.610857212008001887e-06, 9.564842165551822327e-06, 9.518816039888433036e-06, 9.472778910973473905e-06, 9.426730854779151092e-06, 9.380671947288102817e-06, 9.334602264485086573e-06, 9.288521882379249320e-06, 9.242430876975553679e-06, 9.196329324296941387e-06, 9.150217300376186543e-06, 9.104094881247567575e-06, 9.057962142967053732e-06, 9.011819161594015947e-06, 8.965666013192873467e-06, 8.919502773843422579e-06, 8.873329519634495715e-06, 8.827146326655552111e-06, 8.780953271017253933e-06, 8.734750428832631651e-06, 8.688537876219213480e-06, 8.642315689309088131e-06, 8.596083944240541207e-06, 8.549842717160059286e-06, 8.503592084224120547e-06, 8.457332121591071720e-06, 8.411062905433110221e-06, 8.364784511930114361e-06, 8.318497017261278047e-06, 8.272200497625544605e-06, 8.225895029222916156e-06, 8.179580688256515286e-06, 8.133257550942593595e-06, 8.086925693502310390e-06, 8.040585192163584303e-06, 7.994236123163026215e-06, 7.947878562737636644e-06, 7.901512587136992854e-06, 7.855138272614890332e-06, 7.808755695431231672e-06, 7.762364931852070623e-06, 7.715966058151331561e-06, 7.669559150602562784e-06, 7.623144285491182058e-06, 7.576721539106050342e-06, 7.530290987741426733e-06, 7.483852707696877837e-06, 7.437406775279198840e-06, 7.390953266794023647e-06, 7.344492258558079750e-06, 7.298023826890794138e-06, 7.251548048116326171e-06, 7.205064998565337037e-06, 7.158574754566789619e-06, 7.112077392460082249e-06, 7.065572988586724911e-06, 7.019061619292285723e-06, 6.972543360926158005e-06, 6.926018289843723599e-06, 6.879486482397710595e-06, 6.832948014950649792e-06, 6.786402963866406916e-06, 6.739851405512093520e-06, 6.693293416258054285e-06, 6.646729072479691523e-06, 6.600158450549149860e-06, 6.553581626847535529e-06, 6.506998677756584108e-06, 6.460409679660552792e-06, 6.413814708948162642e-06, 6.367213842004292575e-06, 6.320607155220056519e-06, 6.273994724994843066e-06, 6.227376627717537599e-06, 6.180752939787100960e-06, 6.134123737604163491e-06, 6.087489097562619081e-06, 6.040849096072286686e-06, 5.994203809529739362e-06, 5.947553314341061496e-06, 5.900897686913355610e-06, 5.854237003648427727e-06, 5.807571340953048332e-06, 5.760900775240836172e-06, 5.714225382913545600e-06, 5.667545240381657954e-06, 5.620860424055940865e-06, 5.574171010339072803e-06, 5.527477075646134492e-06, 5.480778696386028398e-06, 5.434075948963217688e-06, 5.387368909788114241e-06, 5.340657655270681009e-06, 5.293942261811982861e-06, 5.247222805826933658e-06, 5.200499363715094787e-06, 5.153772011883396820e-06, 5.107040826737672578e-06, 5.060305884674307073e-06, 5.013567262100736558e-06, 4.966825035416843445e-06, 4.920079281016685948e-06, 4.873330075298930987e-06, 4.826577494660393023e-06, 4.779821615487678072e-06, 4.733062514179797797e-06, 4.686300267119093406e-06, 4.639534950693919193e-06, 4.592766641288064790e-06, 4.545995415282788898e-06, 4.499221349056660886e-06, 4.452444518987512358e-06, 4.405665001444030349e-06, 4.358882872798050317e-06, 4.312098209418250828e-06, 4.265311087661694239e-06, 4.218521583894453640e-06, 4.171729774472853623e-06, 4.124935735745361700e-06, 4.078139544062893309e-06, 4.031341275770340637e-06, 3.984541007208558911e-06, 3.937738814716345915e-06, 3.890934774621903899e-06, 3.844128963255290962e-06, 3.797321456939932086e-06, 3.750512331994589339e-06, 3.703701664733229312e-06, 3.656889531466963246e-06, 3.610076008495676655e-06, 3.563261172120285047e-06, 3.516445098634347869e-06, 3.469627864326034901e-06, 3.422809545477943290e-06, 3.375990218369132975e-06, 3.329169959266615276e-06, 3.282348844437750488e-06, 3.235526950141777555e-06, 3.188704352631808833e-06, 3.141881128156740147e-06, 3.095057352952823662e-06, 3.048233103256037525e-06, 3.001408455293641376e-06, 2.954583485286115203e-06, 2.907758269447044567e-06, 2.860932883985089112e-06, 2.814107405095518159e-06, 2.767281908972577815e-06, 2.720456471801059605e-06, 2.673631169758218577e-06, 2.626806079013717400e-06, 2.579981275731506776e-06, 2.533156836061427534e-06, 2.486332836151567567e-06, 2.439509352139791079e-06, 2.392686460155726997e-06, 2.345864236322719266e-06, 2.299042756749343807e-06, 2.252222097539734705e-06, 2.205402334795551011e-06, 2.158583544597069278e-06, 2.111765803023903679e-06, 2.064949186146578029e-06, 2.018133770018035976e-06, 1.971319630696460063e-06, 1.924506844215934327e-06, 1.877695486609326884e-06, 1.830885633899742530e-06, 1.784077362094191160e-06, 1.737270747193883672e-06, 1.690465865196198564e-06, 1.643662792075780179e-06, 1.596861603805267088e-06, 1.550062376346850768e-06, 1.503265185643785159e-06, 1.456470107641134732e-06, 1.409677218266874010e-06, 1.362886593433846119e-06, 1.316098309050099557e-06, 1.269312441012458150e-06, 1.222529065198098585e-06, 1.175748257487349571e-06, 1.128970093734373910e-06, 1.082194649789990738e-06, 1.035422001493211982e-06, 9.886522246627682050e-07, 9.418853951178542552e-07, 8.951215886592257061e-07, 8.483608810711792233e-07, 8.016033481318318371e-07, 7.548490656067691493e-07, 7.080981092405630386e-07, 6.613505547795958110e-07, 6.146064779427425891e-07, 5.678659544441899566e-07, 5.211290599828825626e-07, 4.743958702444914677e-07, 4.276664609012875653e-07, 3.809409076141074925e-07, 3.342192860238931468e-07, 2.875016717640750965e-07, 2.407881404521159093e-07, 1.940787676914678842e-07, 1.473736290714585954e-07, 1.006728001692445481e-07, 5.397635654136255363e-08, 7.284373736103924986e-09, -3.940307271493807507e-08, -8.608590729490749163e-08, -1.327640544997242604e-07, -1.794374388465364218e-07, -2.261059848613455489e-07, -2.727696170874591829e-07, -3.194282600835290260e-07, -3.660818384236726487e-07, -4.127302766955118945e-07, -4.593734995086236479e-07, -5.060114314821681772e-07, -5.526439972533392407e-07, -5.992711214753995532e-07, -6.458927288178114931e-07, -6.925087439642624046e-07, -7.391190916211232798e-07, -7.857236965050749842e-07, -8.323224833515603747e-07, -8.789153769128169602e-07, -9.255023019559216313e-07, -9.720831832712335672e-07, -1.018657945660032320e-06, -1.065226513942952778e-06, -1.111788812958040172e-06, -1.158344767560857852e-06, -1.204894302622532979e-06, -1.251437343038202494e-06, -1.297973813714638822e-06, -1.344503639578704312e-06, -1.391026745575388456e-06, -1.437543056665845097e-06, -1.484052497835832270e-06, -1.530554994085436416e-06, -1.577050470427120401e-06, -1.623538851904540984e-06, -1.670020063571885026e-06, -1.716494030502318643e-06, -1.762960677794318354e-06, -1.809419930561418807e-06, -1.855871713930253803e-06, -1.902315953059368262e-06, -1.948752573118561418e-06, -1.995181499297322422e-06, -2.041602656813257472e-06, -2.088015970889364555e-06, -2.134421366783226858e-06, -2.180818769764286455e-06, -2.227208105122268893e-06, -2.273589298173545682e-06, -2.319962274250847504e-06, -2.366326958701354150e-06, -2.412683276905419882e-06, -2.459031154256021447e-06, -2.505370516167119984e-06, -2.551701288082101288e-06, -2.598023395451087608e-06, -2.644336763760066682e-06, -2.690641318508227684e-06, -2.736936985218405557e-06, -2.783223689433125373e-06, -2.829501356725010672e-06, -2.875769912674141003e-06, -2.922029282897185196e-06, -2.968279393024727561e-06, -3.014520168709657753e-06, -3.060751535635575451e-06, -3.106973419496234142e-06, -3.153185746014253772e-06, -3.199388440939182313e-06, -3.245581430037271225e-06, -3.291764639097814230e-06, -3.337937993941500324e-06, -3.384101420397847131e-06, -3.430254844334182976e-06, -3.476398191633078119e-06, -3.522531388200766380e-06, -3.568654359975422767e-06, -3.614767032906750407e-06, -3.660869332974567412e-06, -3.706961186186949340e-06, -3.753042518569972041e-06, -3.799113256176115080e-06, -3.845173325082298308e-06, -3.891222651390018240e-06, -3.937261161223381662e-06, -3.983288780737498038e-06, -4.029305436106197108e-06, -4.075311053530406886e-06, -4.121305559236227517e-06, -4.167288879472953445e-06, -4.213260940521443797e-06, -4.259221668681909864e-06, -4.305170990282238890e-06, -4.351108831676054368e-06, -4.397035119242860884e-06, -4.442949779386046809e-06, -4.488852738541292802e-06, -4.534743923164305919e-06, -4.580623259739204397e-06, -4.626490674776527124e-06, -4.672346094811348990e-06, -4.718189446411560637e-06, -4.764020656165695748e-06, -4.809839650691274318e-06, -4.855646356632825683e-06, -4.901440700662023197e-06, -4.947222609475780100e-06, -4.992992009804538587e-06, -5.038748828400064906e-06, -5.084492992043836679e-06, -5.130224427544976989e-06, -5.175943061740566938e-06, -5.221648821493515355e-06, -5.267341633701004563e-06, -5.313021425282241436e-06, -5.358688123186833707e-06, -5.404341654392768102e-06, -5.449981945904562958e-06, -5.495608924761543740e-06, -5.541222518027682028e-06, -5.586822652789749836e-06, -5.632409256175784082e-06, -5.677982255334754408e-06, -5.723541577444898835e-06, -5.769087149719919805e-06, -5.814618899396866527e-06, -5.860136753744448612e-06, -5.905640640061019280e-06, -5.951130485674811686e-06, -5.996606217941906887e-06, -6.042067764256643876e-06, -6.087515052029226577e-06, -6.132948008714373879e-06, -6.178366561789138391e-06, -6.223770638760977817e-06, -6.269160167174165300e-06, -6.314535074599612321e-06, -6.359895288632964574e-06, -6.405240736913096922e-06, -6.450571347101778685e-06, -6.495887046892010979e-06, -6.541187764016242094e-06, -6.586473426224106617e-06, -6.631743961311000091e-06, -6.676999297095902842e-06, -6.722239361431534215e-06, -6.767464082200526522e-06, -6.812673387325572500e-06, -6.857867204747334688e-06, -6.903045462452866773e-06, -6.948208088453494172e-06, -6.993355010792961639e-06, -7.038486157555719794e-06, -7.083601456846729308e-06, -7.128700836809854233e-06, -7.173784225625879937e-06, -7.218851551502601974e-06, -7.263902742682938970e-06, -7.308937727443056438e-06, -7.353956434090534650e-06, -7.398958790972432389e-06, -7.443944726463354798e-06, -7.488914168971664668e-06, -7.533867046947539423e-06, -7.578803288863048896e-06, -7.623722823230338593e-06, -7.668625578599769604e-06, -7.713511483549891429e-06, -7.758380466695687842e-06, -7.803232456686640578e-06, -7.848067382206866545e-06, -7.892885171973112058e-06, -7.937685754743114742e-06, -7.982469059303406260e-06, -8.027235014477738598e-06, -8.071983549124883472e-06, -8.116714592137019577e-06, -8.161428072447686228e-06, -8.206123919019958776e-06, -8.250802060854461545e-06, -8.295462426987621247e-06, -8.340104946491744910e-06, -8.384729548473003938e-06, -8.429336162079775695e-06, -8.473924716490502130e-06, -8.518495140921982233e-06, -8.563047364627391671e-06, -8.607581316894458279e-06, -8.652096927053574941e-06, -8.696594124465770030e-06, -8.741072838531033738e-06, -8.785532998686273345e-06, -8.829974534405482617e-06, -8.874397375197851237e-06, -8.918801450615845491e-06, -8.963186690243398944e-06, -9.007553023703916893e-06, -9.051900380658428144e-06, -9.096228690805761199e-06, -9.140537883880579131e-06, -9.184827889661455205e-06, -9.229098637959146548e-06, -9.273350058624463087e-06, -9.317582081546639552e-06, -9.361794636651299208e-06, -9.405987653908485423e-06, -9.450161063322927562e-06, -9.494314794932157191e-06, -9.538448778824492274e-06, -9.582562945119191196e-06, -9.626657223974621549e-06, -9.670731545594311331e-06, -9.714785840215098959e-06, -9.758820038115174997e-06, -9.802834069612323720e-06, -9.846827865063840100e-06, -9.890801354864837435e-06, -9.934754469458193212e-06, -9.978687139312792219e-06, -1.002259929495156503e-05, -1.006649086692959219e-05, -1.011036178584220187e-05, -1.015421198233112272e-05, -1.019804138707457185e-05, -1.024184993078543713e-05, -1.028563754422927325e-05, -1.032940415820439815e-05, -1.037314970355009224e-05, -1.041687411115469951e-05, -1.046057731193369948e-05, -1.050425923685778634e-05, -1.054791981693107655e-05, -1.059155898319910984e-05, -1.063517666675500547e-05, -1.067877279872956720e-05, -1.072234731028950624e-05, -1.076590013265522379e-05, -1.080943119708129546e-05, -1.085294043486441642e-05, -1.089642777735131776e-05, -1.093989315591931018e-05, -1.098333650199407501e-05, -1.102675774704769915e-05, -1.107015682258910864e-05, -1.111353366017186987e-05, -1.115688819139250057e-05, -1.120022034788847927e-05, -1.124353006134626506e-05, -1.128681726348970842e-05, -1.133008188608583143e-05, -1.137332386095294909e-05, -1.141654311994116045e-05, -1.145973959495005672e-05, -1.150291321792685606e-05, -1.154606392085667966e-05, -1.158919163577069853e-05, -1.163229629474396502e-05, -1.167537782989381711e-05, -1.171843617338771338e-05, -1.176147125743158466e-05, -1.180448301427778765e-05, -1.184747137622323638e-05, -1.189043627560963258e-05, -1.193337764482137861e-05, -1.197629541629371407e-05, -1.201918952250099622e-05, -1.206205989596458586e-05, -1.210490646925114992e-05, -1.214772917497263938e-05, -1.219052794578443768e-05, -1.223330271439332625e-05, -1.227605341354588178e-05, -1.231877997603639606e-05, -1.236148233470487690e-05, -1.240416042243552695e-05, -1.244681417216421613e-05, -1.248944351686731102e-05, -1.253204838956934222e-05, -1.257462872334115942e-05, -1.261718445130009076e-05, -1.265971550660818429e-05, -1.270222182247981947e-05, -1.274470333217048904e-05, -1.278715996898446298e-05, -1.282959166627296230e-05, -1.287199835743440131e-05, -1.291437997591235302e-05, -1.295673645520352991e-05, -1.299906772884631171e-05, -1.304137373042837715e-05, -1.308365439358516406e-05, -1.312590965199785854e-05, -1.316813943940120795e-05, -1.321034368957402570e-05, -1.325252233633748195e-05, -1.329467531357223902e-05, -1.333680255519967954e-05, -1.337890399518945852e-05, -1.342097956756532420e-05, -1.346302920639402867e-05, -1.350505284579263102e-05, -1.354705041992714881e-05, -1.358902186301230574e-05, -1.363096710930995607e-05, -1.367288609313860195e-05, -1.371477874885255979e-05, -1.375664501086868410e-05, -1.379848481364570504e-05, -1.384029809169170937e-05, -1.388208477957009848e-05, -1.392384481189002709e-05, -1.396557812330493113e-05, -1.400728464852927693e-05, -1.404896432232002646e-05, -1.409061707948431485e-05, -1.413224285488673826e-05, -1.417384158342924866e-05, -1.421541320007713242e-05, -1.425695763983880848e-05, -1.429847483777309425e-05, -1.433996472899529239e-05, -1.438142724866757527e-05, -1.442286233199744848e-05, -1.446426991425465926e-05, -1.450564993075251947e-05, -1.454700231685550852e-05, -1.458832700798686112e-05, -1.462962393960994439e-05, -1.467089304724532730e-05, -1.471213426646876807e-05, -1.475334753290219163e-05, -1.479453278222110788e-05, -1.483568995015298036e-05, -1.487681897247526618e-05, -1.491791978502320703e-05, -1.495899232367856026e-05, -1.500003652437545020e-05, -1.504105232310774580e-05, -1.508203965591058513e-05, -1.512299845887739400e-05, -1.516392866815788356e-05, -1.520483021994900568e-05, -1.524570305050239837e-05, -1.528654709612270018e-05, -1.532736229316583582e-05, -1.536814857804631588e-05, -1.540890588722648458e-05, -1.544963415722381785e-05, -1.549033332460922582e-05, -1.553100332600732390e-05, -1.557164409809437959e-05, -1.561225557760605092e-05, -1.565283770132630054e-05, -1.569339040609482247e-05, -1.573391362880545647e-05, -1.577440730640607282e-05, -1.581487137589707143e-05, -1.585530577433864253e-05, -1.589571043883984341e-05, -1.593608530656624199e-05, -1.597643031473790090e-05, -1.601674540062789350e-05, -1.605703050156957138e-05, -1.609728555494558685e-05, -1.613751049819569239e-05, -1.617770526881454179e-05, -1.621786980435210347e-05, -1.625800404241182072e-05, -1.629810792065796397e-05, -1.633818137680494802e-05, -1.637822434862445722e-05, -1.641823677394389040e-05, -1.645821859064657764e-05, -1.649816973666977117e-05, -1.653809015001227536e-05, -1.657797976872334730e-05, -1.661783853091038102e-05, -1.665766637473699996e-05, -1.669746323842133585e-05, -1.673722906024337076e-05, -1.677696377853618557e-05, -1.681666733168393044e-05, -1.685633965813841656e-05, -1.689598069640102686e-05, -1.693559038503002760e-05, -1.697516866264632483e-05, -1.701471546792221581e-05, -1.705423073958920536e-05, -1.709371441643618990e-05, -1.713316643730751937e-05, -1.717258674111043086e-05, -1.721197526680626988e-05, -1.725133195340852534e-05, -1.729065673999938727e-05, -1.732994956571169148e-05, -1.736921036973608888e-05, -1.740843909132689001e-05, -1.744763566979289668e-05, -1.748680004449570122e-05, -1.752593215486600368e-05, -1.756503194038585124e-05, -1.760409934059574991e-05, -1.764313429510198965e-05, -1.768213674355707118e-05, -1.772110662568472051e-05, -1.776004388126052578e-05, -1.779894845011906250e-05, -1.783782027216093073e-05, -1.787665928733542134e-05, -1.791546543565635896e-05, -1.795423865720045874e-05, -1.799297889209853748e-05, -1.803168608054096859e-05, -1.807036016278488184e-05, -1.810900107913466803e-05, -1.814760876996696990e-05, -1.818618317571118337e-05, -1.822472423685848696e-05, -1.826323189396025952e-05, -1.830170608762792436e-05, -1.834014675853142462e-05, -1.837855384740642300e-05, -1.841692729504360550e-05, -1.845526704229439035e-05, -1.849357303007765011e-05, -1.853184519936255416e-05, -1.857008349118444886e-05, -1.860828784664282130e-05, -1.864645820689312373e-05, -1.868459451315350578e-05, -1.872269670670332028e-05, -1.876076472888149022e-05, -1.879879852109341709e-05, -1.883679802480081315e-05, -1.887476318152682089e-05, -1.891269393286325342e-05, -1.895059022045314566e-05, -1.898845198600654976e-05, -1.902627917129879023e-05, -1.906407171816208170e-05, -1.910182956849245089e-05, -1.913955266424790697e-05, -1.917724094744884143e-05, -1.921489436017620521e-05, -1.925251284457851536e-05, -1.929009634286166697e-05, -1.932764479729578392e-05, -1.936515815021372814e-05, -1.940263634400949701e-05, -1.944007932114492847e-05, -1.947748702413963149e-05, -1.951485939557820280e-05, -1.955219637810813642e-05, -1.958949791444018277e-05, -1.962676394734661736e-05, -1.966399441966843381e-05, -1.970118927430468473e-05, -1.973834845421989503e-05, -1.977547190244209334e-05, -1.981255956206140259e-05, -1.984961137623685016e-05, -1.988662728818616957e-05, -1.992360724119295965e-05, -1.996055117860471258e-05, -1.999745904383319343e-05, -2.003433078035259698e-05, -2.007116633170664925e-05, -2.010796564150000502e-05, -2.014472865339682147e-05, -2.018145531113584886e-05, -2.021814555851398796e-05, -2.025479933939265299e-05, -2.029141659770331452e-05, -2.032799727743716238e-05, -2.036454132265224097e-05, -2.040104867747153845e-05, -2.043751928608168560e-05, -2.047395309273946449e-05, -2.051035004176378877e-05, -2.054671007753397906e-05, -2.058303314450468432e-05, -2.061931918718976791e-05, -2.065556815016855526e-05, -2.069177997809120749e-05, -2.072795461566879414e-05, -2.076409200767997802e-05, -2.080019209896941253e-05, -2.083625483444778243e-05, -2.087228015909040104e-05, -2.090826801794544687e-05, -2.094421835611579304e-05, -2.098013111878242265e-05, -2.101600625118626165e-05, -2.105184369863467384e-05, -2.108764340650832864e-05, -2.112340532024496858e-05, -2.115912938535397482e-05, -2.119481554741482220e-05, -2.123046375206928313e-05, -2.126607394502621844e-05, -2.130164607206802156e-05, -2.133718007903304093e-05, -2.137267591183838550e-05, -2.140813351646210654e-05, -2.144355283895117671e-05, -2.147893382542035839e-05, -2.151427642205195638e-05, -2.154958057509461173e-05, -2.158484623086928512e-05, -2.162007333576037327e-05, -2.165526183621994401e-05, -2.169041167877479046e-05, -2.172552281001007305e-05, -2.176059517658403085e-05, -2.179562872522662967e-05, -2.183062340273099347e-05, -2.186557915596064485e-05, -2.190049593184755002e-05, -2.193537367739074667e-05, -2.197021233966272717e-05, -2.200501186579985360e-05, -2.203977220300771430e-05, -2.207449329856682956e-05, -2.210917509981745582e-05, -2.214381755417357188e-05, -2.217842060912155751e-05, -2.221298421221234998e-05, -2.224750831106773913e-05, -2.228199285337890037e-05, -2.231643778690667928e-05, -2.235084305947974165e-05, -2.238520861900125490e-05, -2.241953441343920144e-05, -2.245382039083321924e-05, -2.248806649929262661e-05, -2.252227268699520584e-05, -2.255643890219352884e-05, -2.259056509320543648e-05, -2.262465120842075729e-05, -2.265869719629939310e-05, -2.269270300537176637e-05, -2.272666858423698033e-05, -2.276059388156941574e-05, -2.279447884610939998e-05, -2.282832342666943777e-05, -2.286212757213279835e-05, -2.289589123145190953e-05, -2.292961435365483577e-05, -2.296329688783593369e-05, -2.299693878316219471e-05, -2.303053998887153738e-05, -2.306410045427329531e-05, -2.309762012874648241e-05, -2.313109896174595593e-05, -2.316453690279493546e-05, -2.319793390148365783e-05, -2.323128990748302451e-05, -2.326460487052946344e-05, -2.329787874043120384e-05, -2.333111146707263000e-05, -2.336430300040568214e-05, -2.339745329045567386e-05, -2.343056228731974039e-05, -2.346362994116589669e-05, -2.349665620223862105e-05, -2.352964102085182475e-05, -2.356258434738694118e-05, -2.359548613230704749e-05, -2.362834632614168925e-05, -2.366116487949264019e-05, -2.369394174303912675e-05, -2.372667686752838871e-05, -2.375937020378186595e-05, -2.379202170269395500e-05, -2.382463131523184299e-05, -2.385719899243433879e-05, -2.388972468541904903e-05, -2.392220834536642682e-05, -2.395464992354044947e-05, -2.398704937127254524e-05, -2.401940663996727181e-05, -2.405172168110870972e-05, -2.408399444624532754e-05, -2.411622488700375806e-05, -2.414841295508717196e-05, -2.418055860226784088e-05, -2.421266178039212133e-05, -2.424472244138576392e-05, -2.427674053723836184e-05, -2.430871602002355764e-05, -2.434064884188338673e-05, -2.437253895503385418e-05, -2.440438631177103341e-05, -2.443619086445653109e-05, -2.446795256553057886e-05, -2.449967136751084412e-05, -2.453134722298507778e-05, -2.456298008461538668e-05, -2.459456990514452876e-05, -2.462611663738107303e-05, -2.465762023421271831e-05, -2.468908064860493459e-05, -2.472049783359368537e-05, -2.475187174229144489e-05, -2.478320232788552448e-05, -2.481448954363695442e-05, -2.484573334288637595e-05, -2.487693367904514398e-05, -2.490809050560009423e-05, -2.493920377611897102e-05, -2.497027344423657995e-05, -2.500129946366734770e-05, -2.503228178820427177e-05, -2.506322037171152410e-05, -2.509411516813062431e-05, -2.512496613147862366e-05, -2.515577321584723424e-05, -2.518653637540828734e-05, -2.521725556440515800e-05, -2.524793073715885015e-05, -2.527856184806640081e-05, -2.530914885160109347e-05, -2.533969170231109954e-05, -2.537019035482482814e-05, -2.540064476384308262e-05, -2.543105488414469837e-05, -2.546142067058461165e-05, -2.549174207809471330e-05, -2.552201906168169400e-05, -2.555225157643352228e-05, -2.558243957751078792e-05, -2.561258302015183492e-05, -2.564268185967255484e-05, -2.567273605146394396e-05, -2.570274555099831372e-05, -2.573271031382109146e-05, -2.576263029555597034e-05, -2.579250545190407928e-05, -2.582233573864378646e-05, -2.585212111162941517e-05, -2.588186152679685122e-05, -2.591155694015539782e-05, -2.594120730779321697e-05, -2.597081258587599113e-05, -2.600037273064732300e-05, -2.602988769842702114e-05, -2.605935744561669378e-05, -2.608878192869214585e-05, -2.611816110420793602e-05, -2.614749492879699721e-05, -2.617678335916883073e-05, -2.620602635211511367e-05, -2.623522386450305471e-05, -2.626437585327391015e-05, -2.629348227545560472e-05, -2.632254308814876227e-05, -2.635155824853272654e-05, -2.638052771387037562e-05, -2.640945144149407821e-05, -2.643832938882404371e-05, -2.646716151335362787e-05, -2.649594777265526887e-05, -2.652468812438418030e-05, -2.655338252627141571e-05, -2.658203093612335698e-05, -2.661063331183324753e-05, -2.663918961136786339e-05, -2.666769979277325951e-05, -2.669616381418002469e-05, -2.672458163378993581e-05, -2.675295320988802289e-05, -2.678127850084143752e-05, -2.680955746509247663e-05, -2.683779006116316669e-05, -2.686597624766032895e-05, -2.689411598326111547e-05, -2.692220922673131865e-05, -2.695025593691170005e-05, -2.697825607272222900e-05, -2.700620959316835738e-05, -2.703411645732722317e-05, -2.706197662436012215e-05, -2.708979005351080368e-05, -2.711755670409921620e-05, -2.714527653552545103e-05, -2.717294950727491262e-05, -2.720057557890426126e-05, -2.722815471005935993e-05, -2.725568686046135933e-05, -2.728317198991314204e-05, -2.731061005829798761e-05, -2.733800102557971490e-05, -2.736534485180151650e-05, -2.739264149709088174e-05, -2.741989092165236978e-05, -2.744709308577117393e-05, -2.747424794981841728e-05, -2.750135547423844388e-05, -2.752841561956037895e-05, -2.755542834639689568e-05, -2.758239361543776759e-05, -2.760931138745518449e-05, -2.763618162330252600e-05, -2.766300428391318248e-05, -2.768977933030534243e-05, -2.771650672357496556e-05, -2.774318642490052950e-05, -2.776981839554192193e-05, -2.779640259684065400e-05, -2.782293899021837973e-05, -2.784942753718210018e-05, -2.787586819931677396e-05, -2.790226093829025028e-05, -2.792860571585212384e-05, -2.795490249383392114e-05, -2.798115123414772487e-05, -2.800735189879115453e-05, -2.803350444984027503e-05, -2.805960884945413338e-05, -2.808566505987424714e-05, -2.811167304342254776e-05, -2.813763276250730308e-05, -2.816354417961509083e-05, -2.818940725731600619e-05, -2.821522195826252336e-05, -2.824098824518958030e-05, -2.826670608091330476e-05, -2.829237542833579495e-05, -2.831799625043844492e-05, -2.834356851028609501e-05, -2.836909217102642539e-05, -2.839456719588986794e-05, -2.841999354818825106e-05, -2.844537119131992583e-05, -2.847070008876250531e-05, -2.849598020407767904e-05, -2.852121150091014578e-05, -2.854639394298641076e-05, -2.857152749411975262e-05, -2.859661211820383007e-05, -2.862164777921231930e-05, -2.864663444120892934e-05, -2.867157206833614329e-05, -2.869646062481960594e-05, -2.872130007497318902e-05, -2.874609038318568942e-05, -2.877083151393795279e-05, -2.879552343178934813e-05, -2.882016610138300920e-05, -2.884475948744912445e-05, -2.886930355479913986e-05, -2.889379826832491876e-05, -2.891824359300898745e-05, -2.894263949391290383e-05, -2.896698593618231583e-05, -2.899128288505114237e-05, -2.901553030583072459e-05, -2.903972816391943453e-05, -2.906387642480232625e-05, -2.908797505404507098e-05, -2.911202401729732497e-05, -2.913602328029763549e-05, -2.915997280886078617e-05, -2.918387256889394145e-05, -2.920772252638383263e-05, -2.923152264740189435e-05, -2.925527289810816423e-05, -2.927897324474072893e-05, -2.930262365362529896e-05, -2.932622409117469371e-05, -2.934977452388272924e-05, -2.937327491832814852e-05, -2.939672524117855506e-05, -2.942012545917882887e-05, -2.944347553916634258e-05, -2.946677544805878109e-05, -2.949002515285991494e-05, -2.951322462065854665e-05, -2.953637381862839206e-05, -2.955947271402692504e-05, -2.958252127420043931e-05, -2.960551946657654041e-05, -2.962846725866955305e-05, -2.965136461807870181e-05, -2.967421151248860909e-05, -2.969700790966822791e-05, -2.971975377747477210e-05, -2.974244908384791249e-05, -2.976509379681379177e-05, -2.978768788448387937e-05, -2.981023131505425991e-05, -2.983272405680973286e-05, -2.985516607811740896e-05, -2.987755734743136550e-05, -2.989989783329100652e-05, -2.992218750432189961e-05, -2.994442632923403105e-05, -2.996661427682654582e-05, -2.998875131598110008e-05, -3.001083741566647916e-05, -3.003287254493752697e-05, -3.005485667293464788e-05, -3.007678976888374580e-05, -3.009867180209963936e-05, -3.012050274198025128e-05, -3.014228255801058607e-05, -3.016401121976192360e-05, -3.018568869689072478e-05, -3.020731495914297850e-05, -3.022888997634760498e-05, -3.025041371842136510e-05, -3.027188615536686487e-05, -3.029330725727370397e-05, -3.031467699431647674e-05, -3.033599533675973242e-05, -3.035726225495124971e-05, -3.037847771932667174e-05, -3.039964170040806949e-05, -3.042075416880339291e-05, -3.044181509521015044e-05, -3.046282445041077067e-05, -3.048378220527134190e-05, -3.050468833075080084e-05, -3.052554279789121877e-05, -3.054634557782112193e-05, -3.056709664175945562e-05, -3.058779596100982102e-05, -3.060844350696018378e-05, -3.062903925109131727e-05, -3.064958316496706507e-05, -3.067007522023863710e-05, -3.069051538864829597e-05, -3.071090364201859623e-05, -3.073123995226632313e-05, -3.075152429139143379e-05, -3.077175663148150922e-05, -3.079193694471422758e-05, -3.081206520335277676e-05, -3.083214137974485137e-05, -3.085216544633148910e-05, -3.087213737563736026e-05, -3.089205714027467095e-05, -3.091192471294716102e-05, -3.093174006643935694e-05, -3.095150317363006335e-05, -3.097121400748230704e-05, -3.099087254104735534e-05, -3.101047874746378771e-05, -3.103003259996126338e-05, -3.104953407185096002e-05, -3.106898313653861808e-05, -3.108837976751386136e-05, -3.110772393835441185e-05, -3.112701562272950502e-05, -3.114625479439122967e-05, -3.116544142718218519e-05, -3.118457549503487840e-05, -3.120365697196719707e-05, -3.122268583208531690e-05, -3.124166204958710998e-05, -3.126058559875227857e-05, -3.127945645395527742e-05, -3.129827458965506805e-05, -3.131703998039885928e-05, -3.133575260082614586e-05, -3.135441242565907940e-05, -3.137301942971099290e-05, -3.139157358788548599e-05, -3.141007487517188479e-05, -3.142852326664911797e-05, -3.144691873748446990e-05, -3.146526126293364839e-05, -3.148355081834054080e-05, -3.150178737913987028e-05, -3.151997092085262182e-05, -3.153810141908924743e-05, -3.155617884954898172e-05, -3.157420318801889322e-05, -3.159217441037759778e-05, -3.161009249258974949e-05, -3.162795741070980823e-05, -3.164576914088105717e-05, -3.166352765933565016e-05, -3.168123294239402223e-05, -3.169888496646797274e-05, -3.171648370805576621e-05, -3.173402914374564914e-05, -3.175152125021476584e-05, -3.176896000422871119e-05, -3.178634538264436989e-05, -3.180367736240562030e-05, -3.182095592054624828e-05, -3.183818103418924238e-05, -3.185535268054669227e-05, -3.187247083691928726e-05, -3.188953548069931818e-05, -3.190654658936613054e-05, -3.192350414048904505e-05, -3.194040811172689688e-05, -3.195725848082788656e-05, -3.197405522562861099e-05, -3.199079832405808850e-05, -3.200748775413172126e-05, -3.202412349395576078e-05, -3.204070552172572230e-05, -3.205723381572586302e-05, -3.207370835433265153e-05, -3.209012911601039032e-05, -3.210649607931074828e-05, -3.212280922287967245e-05, -3.213906852544975794e-05, -3.215527396584339214e-05, -3.217142552297486889e-05, -3.218752317584593650e-05, -3.220356690354920620e-05, -3.221955668526674265e-05, -3.223549250027053835e-05, -3.225137432792189013e-05, -3.226720214767492967e-05, -3.228297593906827507e-05, -3.229869568173591359e-05, -3.231436135539882614e-05, -3.232997293986785369e-05, -3.234553041504629252e-05, -3.236103376092578786e-05, -3.237648295758583918e-05, -3.239187798520064423e-05, -3.240721882403136057e-05, -3.242250545442949366e-05, -3.243773785683955321e-05, -3.245291601179101646e-05, -3.246803989990876369e-05, -3.248310950190502121e-05, -3.249812479858287147e-05, -3.251308577083512143e-05, -3.252799239964754838e-05, -3.254284466609136476e-05, -3.255764255133324699e-05, -3.257238603662711588e-05, -3.258707510331730118e-05, -3.260170973284161116e-05, -3.261628990672383813e-05, -3.263081560658032457e-05, -3.264528681411958374e-05, -3.265970351113801700e-05, -3.267406567952373570e-05, -3.268837330125496868e-05, -3.270262635840007589e-05, -3.271682483311996747e-05, -3.273096870766404481e-05, -3.274505796437241634e-05, -3.275909258567844543e-05, -3.277307255410213000e-05, -3.278699785225622145e-05, -3.280086846284543185e-05, -3.281468436866310682e-05, -3.282844555259415283e-05, -3.284215199761406144e-05, -3.285580368678925491e-05, -3.286940060327611716e-05, -3.288294273032403635e-05, -3.289643005127096636e-05, -3.290986254954655075e-05, -3.292324020867120786e-05, -3.293656301225554811e-05, -3.294983094400319294e-05, -3.296304398770668188e-05, -3.297620212724996629e-05, -3.298930534660812471e-05, -3.300235362984711213e-05, -3.301534696112319762e-05, -3.302828532468560701e-05, -3.304116870487266045e-05, -3.305399708611441513e-05, -3.306677045293195382e-05, -3.307948878993665297e-05, -3.309215208183303558e-05, -3.310476031341472571e-05, -3.311731346956713192e-05, -3.312981153526666124e-05, -3.314225449558120022e-05, -3.315464233566888847e-05, -3.316697504078083597e-05, -3.317925259625774842e-05, -3.319147498753195340e-05, -3.320364220012712929e-05, -3.321575421965789870e-05, -3.322781103183009276e-05, -3.323981262244201827e-05, -3.325175897738189625e-05, -3.326365008262950862e-05, -3.327548592425611684e-05, -3.328726648842365556e-05, -3.329899176138717207e-05, -3.331066172949187861e-05, -3.332227637917272551e-05, -3.333383569695917161e-05, -3.334533966947029863e-05, -3.335678828341601056e-05, -3.336818152559961539e-05, -3.337951938291419982e-05, -3.339080184234462153e-05, -3.340202889096750908e-05, -3.341320051595055729e-05, -3.342431670455275075e-05, -3.343537744412659332e-05, -3.344638272211217879e-05, -3.345733252604503788e-05, -3.346822684354997180e-05, -3.347906566234330197e-05, -3.348984897023471994e-05, -3.350057675512403482e-05, -3.351124900500120031e-05, -3.352186570795113270e-05, -3.353242685214778836e-05, -3.354293242585705049e-05, -3.355338241743841633e-05, -3.356377681533923062e-05, -3.357411560810227499e-05, -3.358439878435966257e-05, -3.359462633283537226e-05, -3.360479824234666505e-05, -3.361491450180093297e-05, -3.362497510019622771e-05, -3.363498002662517047e-05, -3.364492927027001211e-05, -3.365482282040448305e-05, -3.366466066639653084e-05, -3.367444279770226905e-05, -3.368416920387154050e-05, -3.369383987454643327e-05, -3.370345479945960023e-05, -3.371301396843585821e-05, -3.372251737139169331e-05, -3.373196499833498312e-05, -3.374135683936678562e-05, -3.375069288467835764e-05, -3.375997312455292345e-05, -3.376919754936724011e-05, -3.377836614958731480e-05, -3.378747891577196246e-05, -3.379653583857296833e-05, -3.380553690873249270e-05, -3.381448211708508342e-05, -3.382337145455679501e-05, -3.383220491216549358e-05, -3.384098248102190040e-05, -3.384970415232742345e-05, -3.385836991737570923e-05, -3.386697976755211417e-05, -3.387553369433400283e-05, -3.388403168929027352e-05, -3.389247374408281522e-05, -3.390085985046393938e-05, -3.390919000027876515e-05, -3.391746418546376249e-05, -3.392568239804763308e-05, -3.393384463015038197e-05, -3.394195087398520818e-05, -3.395000112185590259e-05, -3.395799536615870464e-05, -3.396593359938167891e-05, -3.397381581410430180e-05, -3.398164200299939273e-05, -3.398941215883012580e-05, -3.399712627445238119e-05, -3.400478434281373549e-05, -3.401238635695370561e-05, -3.401993231000330158e-05, -3.402742219518674094e-05, -3.403485600581904994e-05, -3.404223373530731035e-05, -3.404955537715072727e-05, -3.405682092494053423e-05, -3.406403037235922746e-05, -3.407118371318251072e-05, -3.407828094127704553e-05, -3.408532205060159641e-05, -3.409230703520702406e-05, -3.409923588923547902e-05, -3.410610860692263780e-05, -3.411292518259486365e-05, -3.411968561066962670e-05, -3.412638988565851259e-05, -3.413303800216357009e-05, -3.413962995487886283e-05, -3.414616573859131639e-05, -3.415264534817873278e-05, -3.415906877861137617e-05, -3.416543602495132907e-05, -3.417174708235214001e-05, -3.417800194606078864e-05, -3.418420061141481936e-05, -3.419034307384326293e-05, -3.419642932886881161e-05, -3.420245937210486471e-05, -3.420843319925656541e-05, -3.421435080612223047e-05, -3.422021218859129711e-05, -3.422601734264426194e-05, -3.423176626435528989e-05, -3.423745894988928682e-05, -3.424309539550309895e-05, -3.424867559754668511e-05, -3.425419955245975577e-05, -3.425966725677591330e-05, -3.426507870711986015e-05, -3.427043390020777832e-05, -3.427573283284877952e-05, -3.428097550194346855e-05, -3.428616190448300819e-05, -3.429129203755266320e-05, -3.429636589832799206e-05, -3.430138348407682562e-05, -3.430634479215979567e-05, -3.431124982002731948e-05, -3.431609856522395695e-05, -3.432089102538456171e-05, -3.432562719823653081e-05, -3.433030708159880861e-05, -3.433493067338238826e-05, -3.433949797158963402e-05, -3.434400897431573820e-05, -3.434846367974675604e-05, -3.435286208616050014e-05, -3.435720419192802449e-05, -3.436148999551005340e-05, -3.436571949546017308e-05, -3.436989269042448606e-05, -3.437400957913980872e-05, -3.437807016043507396e-05, -3.438207443323093820e-05, -3.438602239653963227e-05, -3.438991404946587622e-05, -3.439374939120534112e-05, -3.439752842104560449e-05, -3.440125113836635363e-05, -3.440491754263854529e-05, -3.440852763342483944e-05, -3.441208141038028359e-05, -3.441557887325078820e-05, -3.441902002187435989e-05, -3.442240485618063396e-05, -3.442573337619087432e-05, -3.442900558201789221e-05, -3.443222147386656117e-05, -3.443538105203307846e-05, -3.443848431690523610e-05, -3.444153126896256994e-05, -3.444452190877579043e-05, -3.444745623700840221e-05, -3.445033425441419006e-05, -3.445315596183924503e-05, -3.445592136022090056e-05, -3.445863045058819324e-05, -3.446128323406165959e-05, -3.446387971185353250e-05, -3.446641988526761251e-05, -3.446890375569875960e-05, -3.447133132463380797e-05, -3.447370259365099685e-05, -3.447601756441969942e-05, -3.447827623870128343e-05, -3.448047861834844710e-05, -3.448262470530503619e-05, -3.448471450160658604e-05, -3.448674800937986089e-05, -3.448872523084347717e-05, -3.449064616830717855e-05, -3.449251082417152415e-05, -3.449431920092949457e-05, -3.449607130116471649e-05, -3.449776712755247909e-05, -3.449940668285926651e-05, -3.450098996994300859e-05, -3.450251699175273522e-05, -3.450398775132904397e-05, -3.450540225180320558e-05, -3.450676049639882416e-05, -3.450806248842993982e-05, -3.450930823130167924e-05, -3.451049772851114329e-05, -3.451163098364618058e-05, -3.451270800038567203e-05, -3.451372878250021531e-05, -3.451469333385112192e-05, -3.451560165839074923e-05, -3.451645376016316457e-05, -3.451724964330310166e-05, -3.451798931203642145e-05, -3.451867277068031533e-05, -3.451930002364263434e-05, -3.451987107542276329e-05, -3.452038593061075339e-05, -3.452084459388792535e-05, -3.452124707002649667e-05, -3.452159336388954100e-05, -3.452188348043127951e-05, -3.452211742469693182e-05, -3.452229520182249913e-05, -3.452241681703477783e-05, -3.452248227565200996e-05, -3.452249158308271773e-05, -3.452244474482664541e-05, -3.452234176647429176e-05, -3.452218265370689650e-05, -3.452196741229657582e-05, -3.452169604810636301e-05, -3.452136856708971387e-05, -3.452098497529142141e-05, -3.452054527884648429e-05, -3.452004948398075730e-05, -3.451949759701115466e-05, -3.451888962434465391e-05, -3.451822557247927171e-05, -3.451750544800374530e-05, -3.451672925759713276e-05, -3.451589700802933477e-05, -3.451500870616081674e-05, -3.451406435894251401e-05, -3.451306397341588600e-05, -3.451200755671304500e-05, -3.451089511605645799e-05, -3.450972665875914994e-05, -3.450850219222475801e-05, -3.450722172394700979e-05, -3.450588526151032639e-05, -3.450449281258947005e-05, -3.450304438494944929e-05, -3.450153998644592550e-05, -3.449997962502444041e-05, -3.449836330872131738e-05, -3.449669104566293628e-05, -3.449496284406580808e-05, -3.449317871223705594e-05, -3.449133865857360886e-05, -3.448944269156302834e-05, -3.448749081978259363e-05, -3.448548305190010129e-05, -3.448341939667329601e-05, -3.448129986295027041e-05, -3.447912445966869931e-05, -3.447689319585693071e-05, -3.447460608063276607e-05, -3.447226312320457838e-05, -3.446986433287019410e-05, -3.446740971901795700e-05, -3.446489929112573209e-05, -3.446233305876147479e-05, -3.445971103158299378e-05, -3.445703321933795099e-05, -3.445429963186383450e-05, -3.445151027908803309e-05, -3.444866517102772102e-05, -3.444576431778981061e-05, -3.444280772957090481e-05, -3.443979541665752759e-05, -3.443672738942559538e-05, -3.443360365834086432e-05, -3.443042423395886926e-05, -3.442718912692422582e-05, -3.442389834797191108e-05, -3.442055190792597612e-05, -3.441714981770000679e-05, -3.441369208829727955e-05, -3.441017873081051077e-05, -3.440660975642160601e-05, -3.440298517640237152e-05, -3.439930500211370784e-05, -3.439556924500600287e-05, -3.439177791661903697e-05, -3.438793102858152219e-05, -3.438402859261192217e-05, -3.438007062051780168e-05, -3.437605712419604338e-05, -3.437198811563248874e-05, -3.436786360690261563e-05, -3.436368361017046093e-05, -3.435944813768973180e-05, -3.435515720180285025e-05, -3.435081081494152910e-05, -3.434640898962650096e-05, -3.434195173846702354e-05, -3.433743907416228236e-05, -3.433287100949981862e-05, -3.432824755735584094e-05, -3.432356873069591653e-05, -3.431883454257458492e-05, -3.431404500613444321e-05, -3.430920013460785366e-05, -3.430429994131510731e-05, -3.429934443966577926e-05, -3.429433364315835598e-05, -3.428926756537883935e-05, -3.428414622000332170e-05, -3.427896962079585126e-05, -3.427373778160868964e-05, -3.426845071638324021e-05, -3.426310843914950600e-05, -3.425771096402502580e-05, -3.425225830521703578e-05, -3.424675047702077548e-05, -3.424118749381920316e-05, -3.423556937008442560e-05, -3.422989612037652580e-05, -3.422416775934417288e-05, -3.421838430172428322e-05, -3.421254576234141062e-05, -3.420665215610889826e-05, -3.420070349802835016e-05, -3.419469980318862152e-05, -3.418864108676808195e-05, -3.418252736403209476e-05, -3.417635865033420955e-05, -3.417013496111620963e-05, -3.416385631190773259e-05, -3.415752271832648033e-05, -3.415113419607814453e-05, -3.414469076095555286e-05, -3.413819242884009872e-05, -3.413163921570092817e-05, -3.412503113759472978e-05, -3.411836821066599218e-05, -3.411165045114701762e-05, -3.410487787535715619e-05, -3.409805049970428991e-05, -3.409116834068326055e-05, -3.408423141487668963e-05, -3.407723973895465989e-05, -3.407019332967503377e-05, -3.406309220388234216e-05, -3.405593637850930222e-05, -3.404872587057570610e-05, -3.404146069718850224e-05, -3.403414087554250693e-05, -3.402676642291894055e-05, -3.401933735668697263e-05, -3.401185369430272570e-05, -3.400431545330949218e-05, -3.399672265133740225e-05, -3.398907530610437941e-05, -3.398137343541441925e-05, -3.397361705715915475e-05, -3.396580618931713128e-05, -3.395794084995365747e-05, -3.395002105722106273e-05, -3.394204682935871758e-05, -3.393401818469206463e-05, -3.392593514163399419e-05, -3.391779771868399721e-05, -3.390960593442817204e-05, -3.390135980753970562e-05, -3.389305935677736905e-05, -3.388470460098715753e-05, -3.387629555910251391e-05, -3.386783225014155727e-05, -3.385931469321000340e-05, -3.385074290750030430e-05, -3.384211691229004217e-05, -3.383343672694412489e-05, -3.382470237091363412e-05, -3.381591386373553385e-05, -3.380707122503359203e-05, -3.379817447451745896e-05, -3.378922363198211167e-05, -3.378021871731055084e-05, -3.377115975046995867e-05, -3.376204675151441617e-05, -3.375287974058415776e-05, -3.374365873790422280e-05, -3.373438376378711868e-05, -3.372505483863052361e-05, -3.371567198291725958e-05, -3.370623521721686442e-05, -3.369674456218448727e-05, -3.368720003855975016e-05, -3.367760166717039368e-05, -3.366794946892696434e-05, -3.365824346482734791e-05, -3.364848367595487207e-05, -3.363867012347674111e-05, -3.362880282864805421e-05, -3.361888181280783458e-05, -3.360890709737989005e-05, -3.359887870387466975e-05, -3.358879665388740741e-05, -3.357866096909740988e-05, -3.356847167127130971e-05, -3.355822878225988030e-05, -3.354793232399788688e-05, -3.353758231850653264e-05, -3.352717878789152083e-05, -3.351672175434355612e-05, -3.350621124013864957e-05, -3.349564726763653297e-05, -3.348502985928279339e-05, -3.347435903760795833e-05, -3.346363482522556455e-05, -3.345285724483625090e-05, -3.344202631922416687e-05, -3.343114207125712174e-05, -3.342020452388885457e-05, -3.340921370015704876e-05, -3.339816962318390130e-05, -3.338707231617634634e-05, -3.337592180242461185e-05, -3.336471810530434063e-05, -3.335346124827512658e-05, -3.334215125488059606e-05, -3.333078814874882123e-05, -3.331937195359226583e-05, -3.330790269320624020e-05, -3.329638039147128653e-05, -3.328480507235156608e-05, -3.327317675989533357e-05, -3.326149547823448313e-05, -3.324976125158538178e-05, -3.323797410424669428e-05, -3.322613406060247307e-05, -3.321424114511964431e-05, -3.320229538234893620e-05, -3.319029679692531945e-05, -3.317824541356574402e-05, -3.316614125707206644e-05, -3.315398435232917279e-05, -3.314177472430550049e-05, -3.312951239805266560e-05, -3.311719739870598459e-05, -3.310482975148295643e-05, -3.309240948168544461e-05, -3.307993661469802365e-05, -3.306741117598859583e-05, -3.305483319110778801e-05, -3.304220268569004945e-05, -3.302951968545123946e-05, -3.301678421619140563e-05, -3.300399630379335404e-05, -3.299115597422237826e-05, -3.297826325352705889e-05, -3.296531816783744080e-05, -3.295232074336701850e-05, -3.293927100641350195e-05, -3.292616898335399856e-05, -3.291301470065045458e-05, -3.289980818484693101e-05, -3.288654946256796375e-05, -3.287323856052437766e-05, -3.285987550550512791e-05, -3.284646032438385941e-05, -3.283299304411641315e-05, -3.281947369173893560e-05, -3.280590229437119914e-05, -3.279227887921599890e-05, -3.277860347355561558e-05, -3.276487610475594899e-05, -3.275109680026478331e-05, -3.273726558760984228e-05, -3.272338249440371558e-05, -3.270944754833908833e-05, -3.269546077718926284e-05, -3.268142220881081495e-05, -3.266733187114200155e-05, -3.265318979220014500e-05, -3.263899600008813830e-05, -3.262475052298628649e-05, -3.261045338915849337e-05, -3.259610462694987628e-05, -3.258170426478462474e-05, -3.256725233117178746e-05, -3.255274885469934304e-05, -3.253819386403556204e-05, -3.252358738793138544e-05, -3.250892945521867633e-05, -3.249422009480782797e-05, -3.247945933569460094e-05, -3.246464720695071775e-05, -3.244978373773187239e-05, -3.243486895727319019e-05, -3.241990289489079315e-05, -3.240488557998117656e-05, -3.238981704202222538e-05, -3.237469731057030729e-05, -3.235952641526398601e-05, -3.234430438582235442e-05, -3.232903125204230363e-05, -3.231370704380458783e-05, -3.229833179106837612e-05, -3.228290552387182849e-05, -3.226742827233486735e-05, -3.225190006665683290e-05, -3.223632093711722177e-05, -3.222069091407581576e-05, -3.220501002797071673e-05, -3.218927830932129426e-05, -3.217349578872625443e-05, -3.215766249686402605e-05, -3.214177846449257095e-05, -3.212584372244998705e-05, -3.210985830165213667e-05, -3.209382223309614984e-05, -3.207773554785788326e-05, -3.206159827709261818e-05, -3.204541045203484361e-05, -3.202917210399883907e-05, -3.201288326437621478e-05, -3.199654396463970640e-05, -3.198015423634017991e-05, -3.196371411110766837e-05, -3.194722362065173109e-05, -3.193068279675879051e-05, -3.191409167129617089e-05, -3.189745027620906256e-05, -3.188075864352142986e-05, -3.186401680533595704e-05, -3.184722479383462416e-05, -3.183038264127563069e-05, -3.181349037999764423e-05, -3.179654804241738140e-05, -3.177955566102954682e-05, -3.176251326840786991e-05, -3.174542089720231304e-05, -3.172827858014306277e-05, -3.171108635003746699e-05, -3.169384423977111907e-05, -3.167655228230745814e-05, -3.165921051068861604e-05, -3.164181895803217155e-05, -3.162437765753528388e-05, -3.160688664247471980e-05, -3.158934594620065332e-05, -3.157175560214367239e-05, -3.155411564381189218e-05, -3.153642610478812262e-05, -3.151868701873748491e-05, -3.150089841939733522e-05, -3.148306034058553172e-05, -3.146517281619670768e-05, -3.144723588020076029e-05, -3.142924956664594748e-05, -3.141121390965992465e-05, -3.139312894344276512e-05, -3.137499470227440049e-05, -3.135681122051158485e-05, -3.133857853258506233e-05, -3.132029667300714293e-05, -3.130196567636189049e-05, -3.128358557731271894e-05, -3.126515641059891598e-05, -3.124667821103696455e-05, -3.122815101351659897e-05, -3.120957485300933631e-05, -3.119094976455763431e-05, -3.117227578328298231e-05, -3.115355294438319067e-05, -3.113478128312897560e-05, -3.111596083487174505e-05, -3.109709163503644296e-05, -3.107817371912237602e-05, -3.105920712270695411e-05, -3.104019188144347449e-05, -3.102112803105742874e-05, -3.100201560735580655e-05, -3.098285464621533894e-05, -3.096364518359148352e-05, -3.094438725551435204e-05, -3.092508089808942181e-05, -3.090572614749740026e-05, -3.088632303999503125e-05, -3.086687161191152399e-05, -3.084737189965412317e-05, -3.082782393970377889e-05, -3.080822776861653580e-05, -3.078858342302360086e-05, -3.076889093963132302e-05, -3.074915035521875377e-05, -3.072936170664177386e-05, -3.070952503083015922e-05, -3.068964036478837373e-05, -3.066970774559584032e-05, -3.064972721040431852e-05, -3.062969879644208542e-05, -3.060962254101102191e-05, -3.058949848148712086e-05, -3.056932665532046002e-05, -3.054910710003611008e-05, -3.052883985323068548e-05, -3.050852495257704044e-05, -3.048816243582126362e-05, -3.046775234078314911e-05, -3.044729470535614561e-05, -3.042678956750827796e-05, -3.040623696527863370e-05, -3.038563693678216401e-05, -3.036498952020670898e-05, -3.034429475381334991e-05, -3.032355267593725640e-05, -3.030276332498437950e-05, -3.028192673943631030e-05, -3.026104295784691215e-05, -3.024011201884315748e-05, -3.021913396112483648e-05, -3.019810882346571915e-05, -3.017703664470944221e-05, -3.015591746377528916e-05, -3.013475131965416863e-05, -3.011353825140981034e-05, -3.009227829817903620e-05, -3.007097149916875502e-05, -3.004961789365991642e-05, -3.002821752100845958e-05, -3.000677042063746287e-05, -2.998527663204522120e-05, -2.996373619480267441e-05, -2.994214914854982602e-05, -2.992051553300049000e-05, -2.989883538794306666e-05, -2.987710875323247548e-05, -2.985533566879887621e-05, -2.983351617464407741e-05, -2.981165031083803652e-05, -2.978973811752834663e-05, -2.976777963492798840e-05, -2.974577490332460674e-05, -2.972372396307754281e-05, -2.970162685461445607e-05, -2.967948361843592535e-05, -2.965729429511655677e-05, -2.963505892529629318e-05, -2.961277754968989756e-05, -2.959045020908273476e-05, -2.956807694432749521e-05, -2.954565779635411535e-05, -2.952319280615662151e-05, -2.950068201480309784e-05, -2.947812546343167470e-05, -2.945552319325149429e-05, -2.943287524553832307e-05, -2.941018166164505152e-05, -2.938744248298793836e-05, -2.936465775105725603e-05, -2.934182750741331984e-05, -2.931895179368258821e-05, -2.929603065156725106e-05, -2.927306412283644103e-05, -2.925005224932703647e-05, -2.922699507294857079e-05, -2.920389263568022727e-05, -2.918074497956689182e-05, -2.915755214672943935e-05, -2.913431417935158450e-05, -2.911103111969023905e-05, -2.908770301007141578e-05, -2.906432989288651499e-05, -2.904091181060169613e-05, -2.901744880574955651e-05, -2.899394092092923974e-05, -2.897038819881197195e-05, -2.894679068213664363e-05, -2.892314841371086676e-05, -2.889946143641092735e-05, -2.887572979318266299e-05, -2.885195352703744112e-05, -2.882813268105781384e-05, -2.880426729839378417e-05, -2.878035742226368358e-05, -2.875640309595492417e-05, -2.873240436282001759e-05, -2.870836126628233828e-05, -2.868427384983249814e-05, -2.866014215702880058e-05, -2.863596623149727095e-05, -2.861174611693271711e-05, -2.858748185709457889e-05, -2.856317349581275909e-05, -2.853882107698363569e-05, -2.851442464457119004e-05, -2.848998424260751171e-05, -2.846549991518883778e-05, -2.844097170648183782e-05, -2.841639966071889760e-05, -2.839178382219984364e-05, -2.836712423529107925e-05, -2.834242094442683478e-05, -2.831767399410541012e-05, -2.829288342889456866e-05, -2.826804929342755619e-05, -2.824317163240439520e-05, -2.821825049059145798e-05, -2.819328591282251691e-05, -2.816827794399438055e-05, -2.814322662907348021e-05, -2.811813201309106214e-05, -2.809299414114459364e-05, -2.806781305839830851e-05, -2.804258881007954453e-05, -2.801732144148324287e-05, -2.799201099797329317e-05, -2.796665752497295193e-05, -2.794126106797536940e-05, -2.791582167253908679e-05, -2.789033938428469217e-05, -2.786481424890157639e-05, -2.783924631214311179e-05, -2.781363561982792273e-05, -2.778798221783958068e-05, -2.776228615212799334e-05, -2.773654746870345169e-05, -2.771076621364869513e-05, -2.768494243310369539e-05, -2.765907617327737606e-05, -2.763316748044328597e-05, -2.760721640093607889e-05, -2.758122298115733438e-05, -2.755518726757600159e-05, -2.752910930671877021e-05, -2.750298914518094302e-05, -2.747682682962191604e-05, -2.745062240676052673e-05, -2.742437592338774243e-05, -2.739808742635000779e-05, -2.737175696256244489e-05, -2.734538457900259872e-05, -2.731897032271275811e-05, -2.729251424079418231e-05, -2.726601638041946770e-05, -2.723947678881680649e-05, -2.721289551328183166e-05, -2.718627260117385615e-05, -2.715960809991048230e-05, -2.713290205697913167e-05, -2.710615451992676549e-05, -2.707936553636094171e-05, -2.705253515395549012e-05, -2.702566342044572837e-05, -2.699875038362959013e-05, -2.697179609136859417e-05, -2.694480059158336181e-05, -2.691776393226028819e-05, -2.689068616144805584e-05, -2.686356732725279987e-05, -2.683640747784978004e-05, -2.680920666147268783e-05, -2.678196492641514060e-05, -2.675468232103583497e-05, -2.672735889375399990e-05, -2.669999469305061644e-05, -2.667258976746951550e-05, -2.664514416561242777e-05, -2.661765793614604119e-05, -2.659013112779722710e-05, -2.656256378935409392e-05, -2.653495596966583470e-05, -2.650730771764407901e-05, -2.647961908225772597e-05, -2.645189011254022541e-05, -2.642412085758462102e-05, -2.639631136654463790e-05, -2.636846168863487235e-05, -2.634057187313142541e-05, -2.631264196936744073e-05, -2.628467202674000954e-05, -2.625666209470520706e-05, -2.622861222277948840e-05, -2.620052246054052546e-05, -2.617239285762268034e-05, -2.614422346372345635e-05, -2.611601432859937471e-05, -2.608776550206657078e-05, -2.605947703400094320e-05, -2.603114897433912963e-05, -2.600278137307380745e-05, -2.597437428026057164e-05, -2.594592774601326253e-05, -2.591744182050489083e-05, -2.588891655396766803e-05, -2.586035199669426348e-05, -2.583174819903231894e-05, -2.580310521139244802e-05, -2.577442308424253049e-05, -2.574570186810946741e-05, -2.571694161357996713e-05, -2.568814237129539535e-05, -2.565930419195827354e-05, -2.563042712633303112e-05, -2.560151122523524135e-05, -2.557255653954326635e-05, -2.554356312019396774e-05, -2.551453101817821055e-05, -2.548546028454872712e-05, -2.545635097041471298e-05, -2.542720312694310422e-05, -2.539801680535867573e-05, -2.536879205694498308e-05, -2.533952893303788783e-05, -2.531022748503967249e-05, -2.528088776440100884e-05, -2.525150982263482560e-05, -2.522209371131127026e-05, -2.519263948205368057e-05, -2.516314718654488652e-05, -2.513361687652829787e-05, -2.510404860379674707e-05, -2.507444242020456793e-05, -2.504479837766280482e-05, -2.501511652813392377e-05, -2.498539692364573097e-05, -2.495563961627335459e-05, -2.492584465815321414e-05, -2.489601210147822285e-05, -2.486614199849312217e-05, -2.483623440150126485e-05, -2.480628936286589906e-05, -2.477630693499808625e-05, -2.474628717036999963e-05, -2.471623012150926934e-05, -2.468613584099375118e-05, -2.465600438146477760e-05, -2.462583579561488251e-05, -2.459563013618926155e-05, -2.456538745599230441e-05, -2.453510780788196373e-05, -2.450479124477133403e-05, -2.447443781962947837e-05, -2.444404758547653926e-05, -2.441362059539111130e-05, -2.438315690250644641e-05, -2.435265656000505316e-05, -2.432211962113175465e-05, -2.429154613918161322e-05, -2.426093616750147876e-05, -2.423028975949619246e-05, -2.419960696862327078e-05, -2.416888784839428783e-05, -2.413813245237594261e-05, -2.410734083418469902e-05, -2.407651304749470388e-05, -2.404564914603231853e-05, -2.401474918357750793e-05, -2.398381321396350188e-05, -2.395284129107820442e-05, -2.392183346885874920e-05, -2.389078980129934968e-05, -2.385971034244593918e-05, -2.382859514639728893e-05, -2.379744426730519440e-05, -2.376625775937544097e-05, -2.373503567686229479e-05, -2.370377807407685790e-05, -2.367248500538115261e-05, -2.364115652518964270e-05, -2.360979268797035833e-05, -2.357839354823964781e-05, -2.354695916056964502e-05, -2.351548957958357689e-05, -2.348398485995619367e-05, -2.345244505641427035e-05, -2.342087022373748762e-05, -2.338926041675311586e-05, -2.335761569034411618e-05, -2.332593609944344157e-05, -2.329422169903541925e-05, -2.326247254415558129e-05, -2.323068868989188772e-05, -2.319887019137934276e-05, -2.316701710380809247e-05, -2.313512948241751589e-05, -2.310320738249805117e-05, -2.307125085939194440e-05, -2.303925996848804541e-05, -2.300723476522837399e-05, -2.297517530510935656e-05, -2.294308164366967969e-05, -2.291095383650350385e-05, -2.287879193925523887e-05, -2.284659600761503100e-05, -2.281436609732719590e-05, -2.278210226418442503e-05, -2.274980456402910691e-05, -2.271747305275466554e-05, -2.268510778629982420e-05, -2.265270882065555119e-05, -2.262027621186634389e-05, -2.258781001601757073e-05, -2.255531028924930150e-05, -2.252277708775059841e-05, -2.249021046775532152e-05, -2.245761048554898974e-05, -2.242497719747012255e-05, -2.239231065989736504e-05, -2.235961092926354871e-05, -2.232687806205008749e-05, -2.229411211478095700e-05, -2.226131314403854766e-05, -2.222848120644315629e-05, -2.219561635866915770e-05, -2.216271865743871968e-05, -2.212978815951759494e-05, -2.209682492172233107e-05, -2.206382900092135473e-05, -2.203080045402203577e-05, -2.199773933798507324e-05, -2.196464570981850514e-05, -2.193151962657198932e-05, -2.189836114535227362e-05, -2.186517032330332114e-05, -2.183194721762184818e-05, -2.179869188554988391e-05, -2.176540438437639331e-05, -2.173208477143702980e-05, -2.169873310411551422e-05, -2.166534943983767852e-05, -2.163193383608010546e-05, -2.159848635036586297e-05, -2.156500704025825644e-05, -2.153149596337548577e-05, -2.149795317737746893e-05, -2.146437873996702100e-05, -2.143077270889720648e-05, -2.139713514196537274e-05, -2.136346609701460692e-05, -2.132976563193470494e-05, -2.129603380465680811e-05, -2.126227067316159900e-05, -2.122847629547351789e-05, -2.119465072966230100e-05, -2.116079403384260780e-05, -2.112690626617536269e-05, -2.109298748486228316e-05, -2.105903774815390633e-05, -2.102505711434415431e-05, -2.099104564177119823e-05, -2.095700338881802743e-05, -2.092293041391319483e-05, -2.088882677552508085e-05, -2.085469253217072966e-05, -2.082052774240977761e-05, -2.078633246484562217e-05, -2.075210675812717698e-05, -2.071785068094258346e-05, -2.068356429202798270e-05, -2.064924765016175223e-05, -2.061490081416544794e-05, -2.058052384290432247e-05, -2.054611679528815863e-05, -2.051167973026533689e-05, -2.047721270683189852e-05, -2.044271578402526745e-05, -2.040818902092567667e-05, -2.037363247665627321e-05, -2.033904621038410077e-05, -2.030443028131439405e-05, -2.026978474869932018e-05, -2.023510967183183936e-05, -2.020040511004716520e-05, -2.016567112272415045e-05, -2.013090776927914093e-05, -2.009611510917354459e-05, -2.006129320191501740e-05, -2.002644210704390064e-05, -1.999156188414820320e-05, -1.995665259285761816e-05, -1.992171429283851514e-05, -1.988674704380321358e-05, -1.985175090550375202e-05, -1.981672593773338558e-05, -1.978167220032775157e-05, -1.974658975315898423e-05, -1.971147865614295857e-05, -1.967633896924093025e-05, -1.964117075244566118e-05, -1.960597406579635775e-05, -1.957074896937285348e-05, -1.953549552329061144e-05, -1.950021378770833407e-05, -1.946490382282947424e-05, -1.942956568888826939e-05, -1.939419944616500505e-05, -1.935880515497983152e-05, -1.932338287568631285e-05, -1.928793266868856403e-05, -1.925245459441926536e-05, -1.921694871335671159e-05, -1.918141508601847267e-05, -1.914585377295520706e-05, -1.911026483476580665e-05, -1.907464833208354950e-05, -1.903900432557765495e-05, -1.900333287596055458e-05, -1.896763404398339278e-05, -1.893190789042983998e-05, -1.889615447613271826e-05, -1.886037386195242908e-05, -1.882456610879385667e-05, -1.878873127759850422e-05, -1.875286942934587279e-05, -1.871698062505350202e-05, -1.868106492577829822e-05, -1.864512239261016137e-05, -1.860915308668154974e-05, -1.857315706916218089e-05, -1.853713440125313633e-05, -1.850108514420220295e-05, -1.846500935928967340e-05, -1.842890710782984020e-05, -1.839277845117872414e-05, -1.835662345072770112e-05, -1.832044216790499301e-05, -1.828423466417704318e-05, -1.824800100104226880e-05, -1.821174124004028673e-05, -1.817545544274714301e-05, -1.813914367076873991e-05, -1.810280598575685499e-05, -1.806644244939442309e-05, -1.803005312339742348e-05, -1.799363806952217115e-05, -1.795719734955950614e-05, -1.792073102533570160e-05, -1.788423915871274156e-05, -1.784772181158957458e-05, -1.781117904589577116e-05, -1.777461092360097661e-05, -1.773801750670833471e-05, -1.770139885725608689e-05, -1.766475503731899864e-05, -1.762808610900195257e-05, -1.759139213444916409e-05, -1.755467317583814040e-05, -1.751792929538070371e-05, -1.748116055532318095e-05, -1.744436701794789457e-05, -1.740754874556646418e-05, -1.737070580052947971e-05, -1.733383824521988095e-05, -1.729694614205456017e-05, -1.726002955348578512e-05, -1.722308854199469381e-05, -1.718612317010084569e-05, -1.714913350035559780e-05, -1.711211959534383615e-05, -1.707508151768354540e-05, -1.703801933002761136e-05, -1.700093309505699730e-05, -1.696382287548899739e-05, -1.692668873407853782e-05, -1.688953073360351968e-05, -1.685234893688108203e-05, -1.681514340676078156e-05, -1.677791420611982550e-05, -1.674066139787250081e-05, -1.670338504496379092e-05, -1.666608521037072081e-05, -1.662876195710394947e-05, -1.659141534820120364e-05, -1.655404544673517222e-05, -1.651665231581522740e-05, -1.647923601857241864e-05, -1.644179661817584073e-05, -1.640433417782597952e-05, -1.636684876074963983e-05, -1.632934043020975754e-05, -1.629180924949861654e-05, -1.625425528193942757e-05, -1.621667859088629096e-05, -1.617907923972568743e-05, -1.614145729186801452e-05, -1.610381281076591977e-05, -1.606614585989074982e-05, -1.602845650275084633e-05, -1.599074480288473243e-05, -1.595301082385435000e-05, -1.591525462926166834e-05, -1.587747628273345447e-05, -1.583967584792302482e-05, -1.580185338851828185e-05, -1.576400896823666915e-05, -1.572614265081854427e-05, -1.568825450004510865e-05, -1.565034457971520236e-05, -1.561241295366356274e-05, -1.557445968575377028e-05, -1.553648483987183829e-05, -1.549848847994246239e-05, -1.546047066991408222e-05, -1.542243147376039594e-05, -1.538437095548868489e-05, -1.534628917913439253e-05, -1.530818620875482936e-05, -1.527006210844531053e-05, -1.523191694232425825e-05, -1.519375077453476034e-05, -1.515556366925260177e-05, -1.511735569067987637e-05, -1.507912690304614555e-05, -1.504087737061015609e-05, -1.500260715765318921e-05, -1.496431632848868122e-05, -1.492600494745746487e-05, -1.488767307892056446e-05, -1.484932078727625851e-05, -1.481094813694453328e-05, -1.477255519236880737e-05, -1.473414201802425124e-05, -1.469570867841086868e-05, -1.465725523805515866e-05, -1.461878176151162137e-05, -1.458028831335591926e-05, -1.454177495819492965e-05, -1.450324176065990577e-05, -1.446468878540784727e-05, -1.442611609712179665e-05, -1.438752376051196249e-05, -1.434891184030922264e-05, -1.431028040127490070e-05, -1.427162950819414903e-05, -1.423295922587717518e-05, -1.419426961915951303e-05, -1.415556075290340339e-05, -1.411683269199081784e-05, -1.407808550133384509e-05, -1.403931924586755044e-05, -1.400053399055141410e-05, -1.396172980037142837e-05, -1.392290674033268280e-05, -1.388406487546965217e-05, -1.384520427083944570e-05, -1.380632499152309449e-05, -1.376742710262568540e-05, -1.372851066927786534e-05, -1.368957575662882785e-05, -1.365062242985663338e-05, -1.361165075416110093e-05, -1.357266079476549539e-05, -1.353365261691636998e-05, -1.349462628588527383e-05, -1.345558186696162850e-05, -1.341651942546300753e-05, -1.337743902672822295e-05, -1.333834073611873985e-05, -1.329922461902047376e-05, -1.326009074083671288e-05, -1.322093916699671881e-05, -1.318176996295714282e-05, -1.314258319418653189e-05, -1.310337892618256078e-05, -1.306415722446477634e-05, -1.302491815456959155e-05, -1.298566178206019238e-05, -1.294638817251994961e-05, -1.290709739155370461e-05, -1.286778950478772021e-05, -1.282846457787139511e-05, -1.278912267646844963e-05, -1.274976386627586708e-05, -1.271038821299954833e-05, -1.267099578237321928e-05, -1.263158664015146826e-05, -1.259216085210254116e-05, -1.255271848402578520e-05, -1.251325960173582303e-05, -1.247378427106414000e-05, -1.243429255786768668e-05, -1.239478452802363571e-05, -1.235526024742214979e-05, -1.231571978198562804e-05, -1.227616319764406744e-05, -1.223659056035411434e-05, -1.219700193609206115e-05, -1.215739739084668218e-05, -1.211777699063669943e-05, -1.207814080149476689e-05, -1.203848888946935266e-05, -1.199882132063312457e-05, -1.195913816107770027e-05, -1.191943947690662533e-05, -1.187972533425262223e-05, -1.183999579926181517e-05, -1.180025093809527684e-05, -1.176049081693782898e-05, -1.172071550199081221e-05, -1.168092505947370550e-05, -1.164111955562588632e-05, -1.160129905669939528e-05, -1.156146362896939020e-05, -1.152161333872878613e-05, -1.148174825228116224e-05, -1.144186843595807859e-05, -1.140197395610333656e-05, -1.136206487907439342e-05, -1.132214127125136453e-05, -1.128220319902954579e-05, -1.124225072882128898e-05, -1.120228392705752637e-05, -1.116230286018074036e-05, -1.112230759465527191e-05, -1.108229819696027828e-05, -1.104227473359138471e-05, -1.100223727106042868e-05, -1.096218587589732167e-05, -1.092212061464274599e-05, -1.088204155385865638e-05, -1.084194876012116146e-05, -1.080184230002210945e-05, -1.076172224016900173e-05, -1.072158864718672416e-05, -1.068144158771020505e-05, -1.064128112839506402e-05, -1.060110733591037836e-05, -1.056092027694032117e-05, -1.052072001818581140e-05, -1.048050662635738688e-05, -1.044028016818567880e-05, -1.040004071041416272e-05, -1.035978831980095942e-05, -1.031952306311851977e-05, -1.027924500715557293e-05, -1.023895421870962502e-05, -1.019865076459765203e-05, -1.015833471164890181e-05, -1.011800612670646098e-05, -1.007766507662727876e-05, -1.003731162828370676e-05, -9.996945848556314544e-06, -9.956567804344546943e-06, -9.916177562559353191e-06, -9.875775190124918258e-06, -9.835360753980380635e-06, -9.794934321072478392e-06, -9.754495958364492152e-06, -9.714045732837815492e-06, -9.673583711475824046e-06, -9.633109961281620842e-06, -9.592624549270777239e-06, -9.552127542464029797e-06, -9.511619007906929756e-06, -9.471099012644620087e-06, -9.430567623741430749e-06, -9.390024908273533223e-06, -9.349470933323685519e-06, -9.308905765989783818e-06, -9.268329473386714088e-06, -9.227742122630112770e-06, -9.187143780854156161e-06, -9.146534515204177675e-06, -9.105914392829581567e-06, -9.065283480901552700e-06, -9.024641846596740988e-06, -8.983989557099094386e-06, -8.943326679608596874e-06, -8.902653281335835592e-06, -8.861969429494712965e-06, -8.821275191321997921e-06, -8.780570634052257102e-06, -8.739855824937294270e-06, -8.699130831238992880e-06, -8.658395720221928257e-06, -8.617650559171355189e-06, -8.576895415376773791e-06, -8.536130356133671011e-06, -8.495355448752458513e-06, -8.454570760552912760e-06, -8.413776358856849870e-06, -8.372972311007859789e-06, -8.332158684345971537e-06, -8.291335546227277269e-06, -8.250502964015002846e-06, -8.209661005080991849e-06, -8.168809736805749612e-06, -8.127949226580061064e-06, -8.087079541797594434e-06, -8.046200749865787318e-06, -8.005312918200230851e-06, -7.964416114217290357e-06, -7.923510405352147148e-06, -7.882595859042361007e-06, -7.841672542729593049e-06, -7.800740523868558861e-06, -7.759799869919591553e-06, -7.718850648350491676e-06, -7.677892926638077295e-06, -7.636926772260914752e-06, -7.595952252710061582e-06, -7.554969435481706646e-06, -7.513978388078850645e-06, -7.472979178011222261e-06, -7.431971872796963756e-06, -7.390956539955278723e-06, -7.349933247017209735e-06, -7.308902061518230195e-06, -7.267863051000024797e-06, -7.226816283010304876e-06, -7.185761825104517719e-06, -7.144699744838534127e-06, -7.103630109779397269e-06, -7.062552987497913678e-06, -7.021468445570427792e-06, -6.980376551580461802e-06, -6.939277373111382897e-06, -6.898170977757195301e-06, -6.857057433115097403e-06, -6.815936806787285930e-06, -6.774809166380770453e-06, -6.733674579509107259e-06, -6.692533113785015767e-06, -6.651384836831189209e-06, -6.610229816272900033e-06, -6.569068119739692272e-06, -6.527899814867079850e-06, -6.486724969289231601e-06, -6.445543650649710802e-06, -6.404355926594059398e-06, -6.363161864771656394e-06, -6.321961532835404453e-06, -6.280754998443565413e-06, -6.239542329252367389e-06, -6.198323592924927412e-06, -6.157098857133059003e-06, -6.115868189540668627e-06, -6.074631657821898299e-06, -6.033389329653823307e-06, -5.992141272708883974e-06, -5.950887554674932389e-06, -5.909628243229585942e-06, -5.868363406060133444e-06, -5.827093110856204905e-06, -5.785817425304097262e-06, -5.744536417095859652e-06, -5.703250153931001029e-06, -5.661958703499873078e-06, -5.620662133501917837e-06, -5.579360511638206193e-06, -5.538053905604006006e-06, -5.496742383108810210e-06, -5.455426011850604796e-06, -5.414104859535898600e-06, -5.372778993870433892e-06, -5.331448482562754083e-06, -5.290113393314970214e-06, -5.248773793842722136e-06, -5.207429751849484612e-06, -5.166081335046588638e-06, -5.124728611145831924e-06, -5.083371647851877621e-06, -5.042010512880703546e-06, -5.000645273942829237e-06, -4.959275998745058297e-06, -4.917902754999588236e-06, -4.876525610418373464e-06, -4.835144632705709521e-06, -4.793759889578225593e-06, -4.752371448739145721e-06, -4.710979377898365181e-06, -4.669583744763131420e-06, -4.628184617039805044e-06, -4.586782062433723443e-06, -4.545376148650940596e-06, -4.503966943390769794e-06, -4.462554514356679026e-06, -4.421138929248857415e-06, -4.379720255765915213e-06, -4.338298561604815198e-06, -4.296873914462550636e-06, -4.255446382028696481e-06, -4.214016031996373366e-06, -4.172582932054725952e-06, -4.131147149890657651e-06, -4.089708753190621252e-06, -4.048267809633069320e-06, -4.006824386899424116e-06, -3.965378552666619473e-06, -3.923930374608794018e-06, -3.882479920397225943e-06, -3.841027257702018610e-06, -3.799572454184664866e-06, -3.758115577508945816e-06, -3.716656695333499382e-06, -3.675195875313513098e-06, -3.633733185100643641e-06, -3.592268692344724449e-06, -3.550802464686318607e-06, -3.509334569767614234e-06, -3.467865075224993886e-06, -3.426394048690738360e-06, -3.384921557794784714e-06, -3.343447670157196990e-06, -3.301972453399195853e-06, -3.260495975135579764e-06, -3.219018302976527043e-06, -3.177539504527466274e-06, -3.136059647390809754e-06, -3.094578799158457257e-06, -3.053097027422774847e-06, -3.011614399769079157e-06, -2.970130983777412768e-06, -2.928646847024233620e-06, -2.887162057074945869e-06, -2.845676681494879561e-06, -2.804190787841764311e-06, -2.762704443667500032e-06, -2.721217716518020559e-06, -2.679730673935041081e-06, -2.638243383448574602e-06, -2.596755912586019335e-06, -2.555268328873946367e-06, -2.513780699821327981e-06, -2.472293092937922505e-06, -2.430805575726753933e-06, -2.389318215676643211e-06, -2.347831080282394300e-06, -2.306344237018830504e-06, -2.264857753361004669e-06, -2.223371696776708455e-06, -2.181886134720814573e-06, -2.140401134644403991e-06, -2.098916763996501084e-06, -2.057433090207346843e-06, -2.015950180706761287e-06, -1.974468102916640442e-06, -1.932986924243457557e-06, -1.891506712098480933e-06, -1.850027533871795215e-06, -1.808549456952523453e-06, -1.767072548719475223e-06, -1.725596876544718779e-06, -1.684122507784271310e-06, -1.642649509798259176e-06, -1.601177949925004838e-06, -1.559707895501191958e-06, -1.518239413854393091e-06, -1.476772572295553956e-06, -1.435307438137377656e-06, -1.393844078677574175e-06, -1.352382561200610135e-06, -1.310922952986824780e-06, -1.269465321306785558e-06, -1.228009733413799504e-06, -1.186556256564103326e-06, -1.145104957990922390e-06, -1.103655904924650006e-06, -1.062209164585375965e-06, -1.020764804175371024e-06, -9.793228908974615950e-07, -9.378834919382980896e-07, -8.964466744700809606e-07, -8.550125056597001882e-07, -8.135810526612354377e-07, -7.721523826176930070e-07, -7.307265626608957120e-07, -6.893036599132297863e-07, -6.478837414801366755e-07, -6.064668744611022303e-07, -5.650531259421404545e-07, -5.236425629975560739e-07, -4.822352526916618964e-07, -4.408312620712984518e-07, -3.994306581767962392e-07, -3.580335080344890677e-07, -3.166398786584483036e-07, -2.752498370503741320e-07, -2.338634502013372424e-07, -1.924807850842857099e-07, -1.511019086650101023e-07, -1.097268878946563829e-07, -6.835578971146071402e-08, -2.698868104248880240e-08, 1.437437120385385209e-08, 5.573330012685718290e-08, 9.708803884099605851e-08, 1.384385204741921443e-07, 1.797846781679214642e-07, 2.211264450754774554e-07, 2.624637543694572903e-07, 3.037965392308006483e-07, 3.451247328562761635e-07, 3.864482684567451394e-07, 4.277670792572675339e-07, 4.690810984953673419e-07, 5.103902594285105198e-07, 5.516944953231558666e-07, 5.929937394622322607e-07, 6.342879251434073773e-07, 6.755769856773401535e-07, 7.168608543951834887e-07, 7.581394646394454998e-07, 7.994127497622770330e-07, 8.406806431421586357e-07, 8.819430781655729877e-07, 9.231999882344915070e-07, 9.644513067720032020e-07, 1.005696967211366982e-06, 1.046936903003497206e-06, 1.088171047615205875e-06, 1.129399334529343772e-06, 1.170621697243028891e-06, 1.211838069276985823e-06, 1.253048384155384040e-06, 1.294252575431739320e-06, 1.335450576668739112e-06, 1.376642321445745132e-06, 1.417827743364390983e-06, 1.459006776039515931e-06, 1.500179353097407531e-06, 1.541345408192487536e-06, 1.582504874988991422e-06, 1.623657687168477972e-06, 1.664803778437249920e-06, 1.705943082506243268e-06, 1.747075533116900334e-06, 1.788201064021008885e-06, 1.829319608988204520e-06, 1.870431101811557908e-06, 1.911535476298517893e-06, 1.952632666269150931e-06, 1.993722605572813033e-06, 2.034805228069869096e-06, 2.075880467639145523e-06, 2.116948258185381149e-06, 2.158008533620980458e-06, 2.199061227882628134e-06, 2.240106274929586522e-06, 2.281143608734589604e-06, 2.322173163291307475e-06, 2.363194872612614586e-06, 2.404208670728857557e-06, 2.445214491695322625e-06, 2.486212269581272917e-06, 2.527201938475651948e-06, 2.568183432494425275e-06, 2.609156685762414188e-06, 2.650121632429875951e-06, 2.691078206670799574e-06, 2.732026342673790892e-06, 2.772965974649584473e-06, 2.813897036829261891e-06, 2.854819463462543252e-06, 2.895733188825209329e-06, 2.936638147208236663e-06, 2.977534272925225622e-06, 3.018421500310617822e-06, 3.059299763719914655e-06, 3.100168997527828225e-06, 3.141029136135804262e-06, 3.181880113961079734e-06, 3.222721865444142239e-06, 3.263554325047004177e-06, 3.304377427253283217e-06, 3.345191106566516700e-06, 3.385995297517515159e-06, 3.426789934653603730e-06, 3.467574952545922724e-06, 3.508350285787771260e-06, 3.549115868992878468e-06, 3.589871636802787496e-06, 3.630617523876043987e-06, 3.671353464895551288e-06, 3.712079394566895861e-06, 3.752795247618443006e-06, 3.793500958799582224e-06, 3.834196462888170524e-06, 3.874881694679648050e-06, 3.915556588994502980e-06, 3.956221080676481744e-06, 3.996875104592730907e-06, 4.037518595632082770e-06, 4.078151488712425407e-06, 4.118773718769880967e-06, 4.159385220766204513e-06, 4.199985929687055224e-06, 4.240575780540301482e-06, 4.281154708363366344e-06, 4.321722648214293883e-06, 4.362279535169953479e-06, 4.402825304342576445e-06, 4.443359890861641377e-06, 4.483883229881271297e-06, 4.524395256585782560e-06, 4.564895906178849616e-06, 4.605385113890935176e-06, 4.645862814977565657e-06, 4.686328944719382002e-06, 4.726783438420463405e-06, 4.767226231417527778e-06, 4.807657259060018010e-06, 4.848076456735678126e-06, 4.888483759850625989e-06, 4.928879103836758063e-06, 4.969262424157289010e-06, 5.009633656297742643e-06, 5.049992735764325626e-06, 5.090339598100268435e-06, 5.130674178867835221e-06, 5.170996413655671826e-06, 5.211306238086145317e-06, 5.251603587795553068e-06, 5.291888398459530355e-06, 5.332160605773278917e-06, 5.372420145458876001e-06, 5.412666953270839366e-06, 5.452900964987147894e-06, 5.493122116407534811e-06, 5.533330343369942153e-06, 5.573525581732445931e-06, 5.613707767380599054e-06, 5.653876836234817463e-06, 5.694032724232395925e-06, 5.734175367343823579e-06, 5.774304701571112742e-06, 5.814420662938910996e-06, 5.854523187501740771e-06, 5.894612211342361189e-06, 5.934687670570034186e-06, 5.974749501327821701e-06, 6.014797639781947788e-06, 6.054832022127195911e-06, 6.094852584594339966e-06, 6.134859263432105862e-06, 6.174851994923595495e-06, 6.214830715384496966e-06, 6.254795361154249178e-06, 6.294745868603261949e-06, 6.334682174131338832e-06, 6.374604214165869551e-06, 6.414511925169170385e-06, 6.454405243627789533e-06, 6.494284106059817005e-06, 6.534148449013138891e-06, 6.573998209065597447e-06, 6.613833322823256373e-06, 6.653653726927692073e-06, 6.693459358045306638e-06, 6.733250152874675014e-06, 6.773026048144755216e-06, 6.812786980615062821e-06, 6.852532887073921844e-06, 6.892263704345776326e-06, 6.931979369280521952e-06, 6.971679818760761739e-06, 7.011364989700168720e-06, 7.051034819041722420e-06, 7.090689243764978941e-06, 7.130328200875492367e-06, 7.169951627411993368e-06, 7.209559460444773062e-06, 7.249151637075741462e-06, 7.288728094436750345e-06, 7.328288769696772709e-06, 7.367833600051442762e-06, 7.407362522730128643e-06, 7.446875474994348477e-06, 7.486372394137847449e-06, 7.525853217484893577e-06, 7.565317882397496975e-06, 7.604766326264925273e-06, 7.644198486510725529e-06, 7.683614300591229209e-06, 7.723013705993790360e-06, 7.762396640244015038e-06, 7.801763040896943693e-06, 7.841112845535385905e-06, 7.880445991786064829e-06, 7.919762417301848137e-06, 7.959062059769047754e-06, 7.998344856912774792e-06, 8.037610746486444820e-06, 8.076859666278901403e-06, 8.116091554112811829e-06, 8.155306347842940850e-06, 8.194503985363414840e-06, 8.233684404598848279e-06, 8.272847543502780124e-06, 8.311993340073592953e-06, 8.351121732336989545e-06, 8.390232658353189270e-06, 8.429326056222281340e-06, 8.468401864075435993e-06, 8.507460020073415410e-06, 8.546500462422299731e-06, 8.585523129356182167e-06, 8.624527959144170577e-06, 8.663514890097587251e-06, 8.702483860550676881e-06, 8.741434808885417855e-06, 8.780367673512115038e-06, 8.819282392876672395e-06, 8.858178905465878477e-06, 8.897057149798798871e-06, 8.935917064425036400e-06, 8.974758587940635004e-06, 9.013581658970681694e-06, 9.052386216176425008e-06, 9.091172198262239320e-06, 9.129939543956678408e-06, 9.168688192036886941e-06, 9.207418081309572732e-06, 9.246129150619719319e-06, 9.284821338849086716e-06, 9.323494584916257154e-06, 9.362148827774885109e-06, 9.400784006420886922e-06, 9.439400059882040921e-06, 9.477996927223283078e-06, 9.516574547553801754e-06, 9.555132860009736204e-06, 9.593671803769895814e-06, 9.632191318054133801e-06, 9.670691342114751517e-06, 9.709171815243528827e-06, 9.747632676770124911e-06, 9.786073866060370641e-06, 9.824495322523341310e-06, 9.862896985601080430e-06, 9.901278794773842859e-06, 9.939640689567126876e-06, 9.977982609534470938e-06, 1.001630449427310854e-05, 1.005460628342236226e-05, 1.009288791665503786e-05, 1.013114933368448859e-05, 1.016939047426294651e-05, 1.020761127818163260e-05, 1.024581168526917283e-05, 1.028399163539840149e-05, 1.032215106847642722e-05, 1.036028992445132120e-05, 1.039840814331061952e-05, 1.043650566507971729e-05, 1.047458242982883968e-05, 1.051263837766274370e-05, 1.055067344872772145e-05, 1.058868758321005009e-05, 1.062668072133595115e-05, 1.066465280337014211e-05, 1.070260376962254660e-05, 1.074053356043837396e-05, 1.077844211620486497e-05, 1.081632937734979098e-05, 1.085419528433973605e-05, 1.089203977768707146e-05, 1.092986279793993192e-05, 1.096766428568886646e-05, 1.100544418156538833e-05, 1.104320242624219351e-05, 1.108093896043122781e-05, 1.111865372489088152e-05, 1.115634666041738362e-05, 1.119401770784336345e-05, 1.123166680805304316e-05, 1.126929390196552401e-05, 1.130689893054161176e-05, 1.134448183478886840e-05, 1.138204255575176962e-05, 1.141958103451834046e-05, 1.145709721221871874e-05, 1.149459103002350166e-05, 1.153206242915052884e-05, 1.156951135085670503e-05, 1.160693773643613841e-05, 1.164434152723575809e-05, 1.168172266463819057e-05, 1.171908109006878497e-05, 1.175641674500082403e-05, 1.179372957094532409e-05, 1.183101950945794353e-05, 1.186828650213748520e-05, 1.190553049062583373e-05, 1.194275141660643088e-05, 1.197994922181280349e-05, 1.201712384801013031e-05, 1.205427523701884881e-05, 1.209140333069622549e-05, 1.212850807094339465e-05, 1.216558939971179082e-05, 1.220264725898675354e-05, 1.223968159080261816e-05, 1.227669233724103357e-05, 1.231367944042293404e-05, 1.235064284251330974e-05, 1.238758248572827266e-05, 1.242449831231663026e-05, 1.246139026458337030e-05, 1.249825828487138019e-05, 1.253510231556992918e-05, 1.257192229911303524e-05, 1.260871817797960573e-05, 1.264548989469173313e-05, 1.268223739182167288e-05, 1.271896061198177054e-05, 1.275565949782955574e-05, 1.279233399207450159e-05, 1.282898403746160238e-05, 1.286560957678616274e-05, 1.290221055289251698e-05, 1.293878690866570442e-05, 1.297533858703795257e-05, 1.301186553098758789e-05, 1.304836768353702488e-05, 1.308484498775975752e-05, 1.312129738677032024e-05, 1.315772482372958185e-05, 1.319412724185113221e-05, 1.323050458438513943e-05, 1.326685679463314416e-05, 1.330318381594650279e-05, 1.333948559171825585e-05, 1.337576206538983997e-05, 1.341201318044942767e-05, 1.344823888043222382e-05, 1.348443910891858691e-05, 1.352061380954101709e-05, 1.355676292597413070e-05, 1.359288640194148562e-05, 1.362898418121394822e-05, 1.366505620760820428e-05, 1.370110242499328959e-05, 1.373712277728091348e-05, 1.377311720843214526e-05, 1.380908566245580488e-05, 1.384502808340851204e-05, 1.388094441539326831e-05, 1.391683460256585554e-05, 1.395269858912541012e-05, 1.398853631932081639e-05, 1.402434773744925820e-05, 1.406013278785464173e-05, 1.409589141493419390e-05, 1.413162356312884681e-05, 1.416732917692972097e-05, 1.420300820087663114e-05, 1.423866057955825907e-05, 1.427428625761047473e-05, 1.430988517972302956e-05, 1.434545729063142663e-05, 1.438100253511549254e-05, 1.441652085801392270e-05, 1.445201220420828253e-05, 1.448747651862953642e-05, 1.452291374626292157e-05, 1.455832383213846963e-05, 1.459370672133736968e-05, 1.462906235899063158e-05, 1.466439069027736141e-05, 1.469969166043146321e-05, 1.473496521473358874e-05, 1.477021129850959256e-05, 1.480542985714517038e-05, 1.484062083606984680e-05, 1.487578418076338394e-05, 1.491091983676073320e-05, 1.494602774964262473e-05, 1.498110786504193032e-05, 1.501616012864210487e-05, 1.505118448617733041e-05, 1.508618088343117437e-05, 1.512114926624429080e-05, 1.515608958049724596e-05, 1.519100177213283084e-05, 1.522588578713855129e-05, 1.526074157155321795e-05, 1.529556907147325834e-05, 1.533036823303701965e-05, 1.536513900243908186e-05, 1.539988132592871959e-05, 1.543459514980215002e-05, 1.546928042040720514e-05, 1.550393708415004698e-05, 1.553856508747744437e-05, 1.557316437689937173e-05, 1.560773489897147209e-05, 1.564227660030151150e-05, 1.567678942755581991e-05, 1.571127332744356336e-05, 1.574572824673093696e-05, 1.578015413223989092e-05, 1.581455093084005662e-05, 1.584891858945386268e-05, 1.588325705506256249e-05, 1.591756627469084189e-05, 1.595184619542098158e-05, 1.598609676439132228e-05, 1.602031792878854318e-05, 1.605450963585399439e-05, 1.608867183288225353e-05, 1.612280446721959439e-05, 1.615690748627026841e-05, 1.619098083748738733e-05, 1.622502446837742593e-05, 1.625903832650689670e-05, 1.629302235948643240e-05, 1.632697651498527365e-05, 1.636090074072940216e-05, 1.639479498449427310e-05, 1.642865919411072069e-05, 1.646249331746373163e-05, 1.649629730249087983e-05, 1.653007109718862154e-05, 1.656381464960297799e-05, 1.659752790783613547e-05, 1.663121082004460558e-05, 1.666486333443936750e-05, 1.669848539928466867e-05, 1.673207696290398441e-05, 1.676563797367099879e-05, 1.679916838001563209e-05, 1.683266813042309212e-05, 1.686613717343323727e-05, 1.689957545763972604e-05, 1.693298293169593957e-05, 1.696635954430586750e-05, 1.699970524423042347e-05, 1.703301998028585950e-05, 1.706630370134251234e-05, 1.709955635633073610e-05, 1.713277789423208296e-05, 1.716596826408521207e-05, 1.719912741498466979e-05, 1.723225529608087619e-05, 1.726535185657862066e-05, 1.729841704574340794e-05, 1.733145081289216442e-05, 1.736445310739958756e-05, 1.739742387869666859e-05, 1.743036307627065869e-05, 1.746327064966371372e-05, 1.749614654847914870e-05, 1.752899072237210689e-05, 1.756180312105613280e-05, 1.759458369430126802e-05, 1.762733239193293316e-05, 1.766004916383801633e-05, 1.769273395995718203e-05, 1.772538673028379043e-05, 1.775800742487719907e-05, 1.779059599384790597e-05, 1.782315238736387187e-05, 1.785567655565463340e-05, 1.788816844900272438e-05, 1.792062801774971001e-05, 1.795305521229464534e-05, 1.798544998309280807e-05, 1.801781228066151258e-05, 1.805014205557300844e-05, 1.808243925845284730e-05, 1.811470383999350657e-05, 1.814693575093945116e-05, 1.817913494209321857e-05, 1.821130136432148362e-05, 1.824343496854030655e-05, 1.827553570572829926e-05, 1.830760352692561573e-05, 1.833963838322628118e-05, 1.837164022578297281e-05, 1.840360900581265762e-05, 1.843554467458089180e-05, 1.846744718342218340e-05, 1.849931648372387503e-05, 1.853115252693236778e-05, 1.856295526455877949e-05, 1.859472464816452818e-05, 1.862646062937450513e-05, 1.865816315987569253e-05, 1.868983219140996031e-05, 1.872146767577852829e-05, 1.875306956484788865e-05, 1.878463781053366151e-05, 1.881617236482130989e-05, 1.884767317975012750e-05, 1.887914020742042826e-05, 1.891057339999242150e-05, 1.894197270968607982e-05, 1.897333808877978720e-05, 1.900466948961634616e-05, 1.903596686459421608e-05, 1.906723016617198211e-05, 1.909845934687422005e-05, 1.912965435927702903e-05, 1.916081515602128925e-05, 1.919194168981107294e-05, 1.922303391340662081e-05, 1.925409177963020686e-05, 1.928511524136469166e-05, 1.931610425155226536e-05, 1.934705876320005164e-05, 1.937797872937174247e-05, 1.940886410319339511e-05, 1.943971483785196175e-05, 1.947053088659563504e-05, 1.950131220273211680e-05, 1.953205873963452009e-05, 1.956277045073312256e-05, 1.959344728952075692e-05, 1.962408920955173693e-05, 1.965469616444187094e-05, 1.968526810786706257e-05, 1.971580499356901300e-05, 1.974630677534681156e-05, 1.977677340706282094e-05, 1.980720484264113899e-05, 1.983760103606634848e-05, 1.986796194138908383e-05, 1.989828751271798424e-05, 1.992857770422508428e-05, 1.995883247014446196e-05, 1.998905176477257421e-05, 2.001923554246658649e-05, 2.004938375765035963e-05, 2.007949636480599307e-05, 2.010957331847932039e-05, 2.013961457327893015e-05, 2.016962008387583385e-05, 2.019958980500255452e-05, 2.022952369145838172e-05, 2.025942169810134843e-05, 2.028928377985370630e-05, 2.031910989170066520e-05, 2.034889998868921764e-05, 2.037865402593346822e-05, 2.040837195860789464e-05, 2.043805374194626693e-05, 2.046769933125361092e-05, 2.049730868189310971e-05, 2.052688174929122994e-05, 2.055641848894328508e-05, 2.058591885639894439e-05, 2.061538280728068809e-05, 2.064481029726948573e-05, 2.067420128210985125e-05, 2.070355571761440006e-05, 2.073287355965683219e-05, 2.076215476417072272e-05, 2.079139928716192576e-05, 2.082060708469467633e-05, 2.084977811289768558e-05, 2.087891232796909764e-05, 2.090800968616327932e-05, 2.093707014380307156e-05, 2.096609365727823769e-05, 2.099508018303920890e-05, 2.102402967760075704e-05, 2.105294209754771711e-05, 2.108181739952027603e-05, 2.111065554023260397e-05, 2.113945647645837006e-05, 2.116822016503614652e-05, 2.119694656287462631e-05, 2.122563562693966020e-05, 2.125428731426616939e-05, 2.128290158195664800e-05, 2.131147838717487128e-05, 2.134001768715003931e-05, 2.136851943918167284e-05, 2.139698360062551190e-05, 2.142541012891212339e-05, 2.145379898153209499e-05, 2.148215011604293675e-05, 2.151046349006786813e-05, 2.153873906129570286e-05, 2.156697678747967318e-05, 2.159517662644283397e-05, 2.162333853607003285e-05, 2.165146247431232494e-05, 2.167954839919167555e-05, 2.170759626878847155e-05, 2.173560604125311218e-05, 2.176357767480461650e-05, 2.179151112772449765e-05, 2.181940635836188914e-05, 2.184726332513220646e-05, 2.187508198651599858e-05, 2.190286230106422660e-05, 2.193060422739045076e-05, 2.195830772417620399e-05, 2.198597275016961634e-05, 2.201359926418560133e-05, 2.204118722510457523e-05, 2.206873659187765107e-05, 2.209624732351894079e-05, 2.212371937911086447e-05, 2.215115271780284249e-05, 2.217854729881138363e-05, 2.220590308141896020e-05, 2.223322002497891069e-05, 2.226049808890819592e-05, 2.228773723269229827e-05, 2.231493741588396135e-05, 2.234209859810233273e-05, 2.236922073903773109e-05, 2.239630379844421266e-05, 2.242334773614479906e-05, 2.245035251203020681e-05, 2.247731808605880324e-05, 2.250424441825559348e-05, 2.253113146871712642e-05, 2.255797919760412897e-05, 2.258478756514659499e-05, 2.261155653164239956e-05, 2.263828605745646212e-05, 2.266497610302552711e-05, 2.269162662885073720e-05, 2.271823759550275611e-05, 2.274480896362059978e-05, 2.277134069391164643e-05, 2.279783274715051179e-05, 2.282428508418389408e-05, 2.285069766592472950e-05, 2.287707045335078278e-05, 2.290340340751578053e-05, 2.292969648953734277e-05, 2.295594966060191265e-05, 2.298216288196954724e-05, 2.300833611496071741e-05, 2.303446932097333652e-05, 2.306056246146941127e-05, 2.308661549798014752e-05, 2.311262839210934187e-05, 2.313860110552759812e-05, 2.316453359997110411e-05, 2.319042583725255849e-05, 2.321627777924915975e-05, 2.324208938790763089e-05, 2.326786062524876958e-05, 2.329359145335451915e-05, 2.331928183438479398e-05, 2.334493173056436069e-05, 2.337054110418868266e-05, 2.339610991762192441e-05, 2.342163813330272839e-05, 2.344712571373121807e-05, 2.347257262148579632e-05, 2.349797881920983683e-05, 2.352334426961689507e-05, 2.354866893549532625e-05, 2.357395277969628466e-05, 2.359919576514477225e-05, 2.362439785483837836e-05, 2.364955901184126908e-05, 2.367467919928807689e-05, 2.369975838038841361e-05, 2.372479651841396503e-05, 2.374979357671532654e-05, 2.377474951870875888e-05, 2.379966430788125348e-05, 2.382453790779487255e-05, 2.384937028207560899e-05, 2.387416139442342879e-05, 2.389891120861157981e-05, 2.392361968848059485e-05, 2.394828679794307227e-05, 2.397291250098246301e-05, 2.399749676165344674e-05, 2.402203954408025808e-05, 2.404654081246190771e-05, 2.407100053106499277e-05, 2.409541866422848765e-05, 2.411979517636257176e-05, 2.414413003194766384e-05, 2.416842319553898918e-05, 2.419267463175953914e-05, 2.421688430530505838e-05, 2.424105218094268631e-05, 2.426517822351119421e-05, 2.428926239791980279e-05, 2.431330466915278664e-05, 2.433730500226262346e-05, 2.436126336237483229e-05, 2.438517971468660131e-05, 2.440905402446592052e-05, 2.443288625705590492e-05, 2.445667637786839781e-05, 2.448042435238831431e-05, 2.450413014617251989e-05, 2.452779372485023020e-05, 2.455141505412139494e-05, 2.457499409976163769e-05, 2.459853082761543228e-05, 2.462202520360074113e-05, 2.464547719370778871e-05, 2.466888676399906158e-05, 2.469225388060859687e-05, 2.471557850974617676e-05, 2.473886061769068779e-05, 2.476210017079472192e-05, 2.478529713548356008e-05, 2.480845147825405070e-05, 2.483156316567894993e-05, 2.485463216440066375e-05, 2.487765844113531030e-05, 2.490064196267196102e-05, 2.492358269587260331e-05, 2.494648060767116137e-05, 2.496933566507760605e-05, 2.499214783517180873e-05, 2.501491708510782054e-05, 2.503764338211296776e-05, 2.506032669348751973e-05, 2.508296698660405531e-05, 2.510556422891261624e-05, 2.512811838792915694e-05, 2.515062943125043879e-05, 2.517309732654235462e-05, 2.519552204154435697e-05, 2.521790354407238546e-05, 2.524024180201405227e-05, 2.526253678332718181e-05, 2.528478845604967021e-05, 2.530699678828890760e-05, 2.532916174822589801e-05, 2.535128330411965384e-05, 2.537336142429576767e-05, 2.539539607716102186e-05, 2.541738723119169955e-05, 2.543933485493923599e-05, 2.546123891702816542e-05, 2.548309938616084405e-05, 2.550491623110673342e-05, 2.552668942071664414e-05, 2.554841892391128058e-05, 2.557010470968570982e-05, 2.559174674711324786e-05, 2.561334500533536971e-05, 2.563489945357105395e-05, 2.565641006111548159e-05, 2.567787679733553668e-05, 2.569929963167228305e-05, 2.572067853364552807e-05, 2.574201347284235048e-05, 2.576330441893164903e-05, 2.578455134165292772e-05, 2.580575421082023624e-05, 2.582691299632651355e-05, 2.584802766813337264e-05, 2.586909819628017057e-05, 2.589012455088328342e-05, 2.591110670213077674e-05, 2.593204462028661703e-05, 2.595293827569008556e-05, 2.597378763875493810e-05, 2.599459267996957100e-05, 2.601535336989994511e-05, 2.603606967918447644e-05, 2.605674157853746841e-05, 2.607736903874883060e-05, 2.609795203068234062e-05, 2.611849052528028927e-05, 2.613898449355709052e-05, 2.615943390660389274e-05, 2.617983873558682025e-05, 2.620019895174780007e-05, 2.622051452640297286e-05, 2.624078543094714489e-05, 2.626101163684770642e-05, 2.628119311564851103e-05, 2.630132983896935392e-05, 2.632142177850441332e-05, 2.634146890602656019e-05, 2.636147119338170348e-05, 2.638142861249229002e-05, 2.640134113535684375e-05, 2.642120873404942024e-05, 2.644103138071947115e-05, 2.646080904759488678e-05, 2.648054170697683595e-05, 2.650022933124347938e-05, 2.651987189284901763e-05, 2.653946936432363690e-05, 2.655902171827296014e-05, 2.657852892738130982e-05, 2.659799096440666980e-05, 2.661740780218412424e-05, 2.663677941362489204e-05, 2.665610577171580162e-05, 2.667538684952263845e-05, 2.669462262018591661e-05, 2.671381305691952019e-05, 2.673295813301971571e-05, 2.675205782185525536e-05, 2.677111209687161220e-05, 2.679012093159345009e-05, 2.680908429961941276e-05, 2.682800217462566098e-05, 2.684687453036498493e-05, 2.686570134066696677e-05, 2.688448257943704895e-05, 2.690321822066085066e-05, 2.692190823839489791e-05, 2.694055260677839390e-05, 2.695915130002419645e-05, 2.697770429242199602e-05, 2.699621155834089749e-05, 2.701467307222558820e-05, 2.703308880859488442e-05, 2.705145874204998823e-05, 2.706978284726566144e-05, 2.708806109899388476e-05, 2.710629347206712400e-05, 2.712447994138908041e-05, 2.714262048194676264e-05, 2.716071506880089493e-05, 2.717876367708956949e-05, 2.719676628203058434e-05, 2.721472285891769603e-05, 2.723263338311922711e-05, 2.725049783008607230e-05, 2.726831617534335349e-05, 2.728608839449349281e-05, 2.730381446321994635e-05, 2.732149435727845597e-05, 2.733912805250508936e-05, 2.735671552481500001e-05, 2.737425675019877812e-05, 2.739175170472512053e-05, 2.740920036454072903e-05, 2.742660270586921937e-05, 2.744395870501424516e-05, 2.746126833835495774e-05, 2.747853158234821186e-05, 2.749574841353211985e-05, 2.751291880851773372e-05, 2.753004274399639068e-05, 2.754712019673930313e-05, 2.756415114359273396e-05, 2.758113556148220465e-05, 2.759807342741111289e-05, 2.761496471846011593e-05, 2.763180941179038997e-05, 2.764860748463881225e-05, 2.766535891432126107e-05, 2.768206367823182975e-05, 2.769872175384269789e-05, 2.771533311870364008e-05, 2.773189775044507184e-05, 2.774841562677322492e-05, 2.776488672547351846e-05, 2.778131102440975945e-05, 2.779768850152419688e-05, 2.781401913483656972e-05, 2.783030290244743743e-05, 2.784653978253359921e-05, 2.786272975335098409e-05, 2.787887279323416300e-05, 2.789496888059547807e-05, 2.791101799392807498e-05, 2.792702011180163391e-05, 2.794297521286487340e-05, 2.795888327584558080e-05, 2.797474427954974832e-05, 2.799055820286182715e-05, 2.800632502474701105e-05, 2.802204472424709602e-05, 2.803771728048324848e-05, 2.805334267265576463e-05, 2.806892088004351148e-05, 2.808445188200356764e-05, 2.809993565797432014e-05, 2.811537218747051431e-05, 2.813076145008680797e-05, 2.814610342549687694e-05, 2.816139809345258497e-05, 2.817664543378700255e-05, 2.819184542641080192e-05, 2.820699805131156594e-05, 2.822210328856035425e-05, 2.823716111830435442e-05, 2.825217152077011762e-05, 2.826713447626528995e-05, 2.828204996517466867e-05, 2.829691796796307194e-05, 2.831173846517442061e-05, 2.832651143743197543e-05, 2.834123686543752049e-05, 2.835591472997510033e-05, 2.837054501190311204e-05, 2.838512769216421555e-05, 2.839966275177774422e-05, 2.841415017184223575e-05, 2.842858993353800719e-05, 2.844298201812325518e-05, 2.845732640693357485e-05, 2.847162308138836677e-05, 2.848587202298372863e-05, 2.850007321329532165e-05, 2.851422663398096922e-05, 2.852833226677344022e-05, 2.854239009348987817e-05, 2.855640009602425247e-05, 2.857036225635035693e-05, 2.858427655652356477e-05, 2.859814297867763365e-05, 2.861196150502390268e-05, 2.862573211785777389e-05, 2.863945479955133631e-05, 2.865312953255677098e-05, 2.866675629940862446e-05, 2.868033508271663611e-05, 2.869386586517496735e-05, 2.870734862955495449e-05, 2.872078335870873061e-05, 2.873417003556809392e-05, 2.874750864314478224e-05, 2.876079916452984952e-05, 2.877404158289643062e-05, 2.878723588149542819e-05, 2.880038204365786061e-05, 2.881348005279745736e-05, 2.882652989240397422e-05, 2.883953154604915973e-05, 2.885248499738621314e-05, 2.886539023014651482e-05, 2.887824722814205560e-05, 2.889105597526503015e-05, 2.890381645548730167e-05, 2.891652865286255673e-05, 2.892919255152291380e-05, 2.894180813568127453e-05, 2.895437538963078512e-05, 2.896689429774484644e-05, 2.897936484447660919e-05, 2.899178701436106440e-05, 2.900416079201182810e-05, 2.901648616212340796e-05, 2.902876310947084414e-05, 2.904099161890902491e-05, 2.905317167537306951e-05, 2.906530326388017806e-05, 2.907738636952596220e-05, 2.908942097748713868e-05, 2.910140707302087204e-05, 2.911334464146414445e-05, 2.912523366823630016e-05, 2.913707413883504074e-05, 2.914886603883963705e-05, 2.916060935390947230e-05, 2.917230406978455032e-05, 2.918395017228490599e-05, 2.919554764731286514e-05, 2.920709648084935148e-05, 2.921859665895672247e-05, 2.923004816777793582e-05, 2.924145099353628525e-05, 2.925280512253533948e-05, 2.926411054116102596e-05, 2.927536723587803260e-05, 2.928657519323236931e-05, 2.929773439985083257e-05, 2.930884484244024316e-05, 2.931990650778984494e-05, 2.933091938276838429e-05, 2.934188345432392714e-05, 2.935279870948823982e-05, 2.936366513537200503e-05, 2.937448271916628213e-05, 2.938525144814503127e-05, 2.939597130966101717e-05, 2.940664229114848911e-05, 2.941726438012244913e-05, 2.942783756417829283e-05, 2.943836183099384567e-05, 2.944883716832662876e-05, 2.945926356401347261e-05, 2.946964100597553152e-05, 2.947996948221229342e-05, 2.949024898080443942e-05, 2.950047948991510084e-05, 2.951066099778722996e-05, 2.952079349274323755e-05, 2.953087696318949229e-05, 2.954091139761133003e-05, 2.955089678457515785e-05, 2.956083311273013117e-05, 2.957072037080315288e-05, 2.958055854760542933e-05, 2.959034763202724252e-05, 2.960008761303998970e-05, 2.960977847969740987e-05, 2.961942022113358481e-05, 2.962901282656177696e-05, 2.963855628527963353e-05, 2.964805058666365376e-05, 2.965749572017143179e-05, 2.966689167534393356e-05, 2.967623844179929644e-05, 2.968553600924056442e-05, 2.969478436744984014e-05, 2.970398350629081924e-05, 2.971313341570820080e-05, 2.972223408572807700e-05, 2.973128550645710641e-05, 2.974028766808446214e-05, 2.974924056087905025e-05, 2.975814417519108852e-05, 2.976699850145382771e-05, 2.977580353017870310e-05, 2.978455925196008805e-05, 2.979326565747407766e-05, 2.980192273747689973e-05, 2.981053048280633101e-05, 2.981908888438150067e-05, 2.982759793320210429e-05, 2.983605762035056543e-05, 2.984446793698914563e-05, 2.985282887436145543e-05, 2.986114042379397571e-05, 2.986940257669185299e-05, 2.987761532454299231e-05, 2.988577865891734229e-05, 2.989389257146459465e-05, 2.990195705391647453e-05, 2.990997209808591385e-05, 2.991793769586699702e-05, 2.992585383923482211e-05, 2.993372052024708641e-05, 2.994153773104139634e-05, 2.994930546383717151e-05, 2.995702371093521109e-05, 2.996469246471720248e-05, 2.997231171764718844e-05, 2.997988146226961205e-05, 2.998740169121042132e-05, 2.999487239717713014e-05, 3.000229357295843881e-05, 3.000966521142399686e-05, 3.001698730552603280e-05, 3.002425984829698910e-05, 3.003148283285096904e-05, 3.003865625238348928e-05, 3.004578010017091408e-05, 3.005285436957255598e-05, 3.005987905402731809e-05, 3.006685414705630299e-05, 3.007377964226189455e-05, 3.008065553332776469e-05, 3.008748181401870738e-05, 3.009425847818181430e-05, 3.010098551974508573e-05, 3.010766293271658348e-05, 3.011429071118804269e-05, 3.012086884933119906e-05, 3.012739734139900519e-05, 3.013387618172710443e-05, 3.014030536473103904e-05, 3.014668488490877777e-05, 3.015301473683910309e-05, 3.015929491518197031e-05, 3.016552541467990015e-05, 3.017170623015608133e-05, 3.017783735651401826e-05, 3.018391878874060742e-05, 3.018995052190285430e-05, 3.019593255114924555e-05, 3.020186487171059605e-05, 3.020774747889796516e-05, 3.021358036810436104e-05, 3.021936353480409002e-05, 3.022509697455274313e-05, 3.023078068298718589e-05, 3.023641465582683227e-05, 3.024199888887033787e-05, 3.024753337799987235e-05, 3.025301811917775161e-05, 3.025845310844767111e-05, 3.026383834193596621e-05, 3.026917381584866116e-05, 3.027445952647366117e-05, 3.027969547018136907e-05, 3.028488164342228991e-05, 3.029001804272840313e-05, 3.029510466471438911e-05, 3.030014150607404446e-05, 3.030512856358458162e-05, 3.031006583410353884e-05, 3.031495331457000671e-05, 3.031979100200454685e-05, 3.032457889350883274e-05, 3.032931698626598177e-05, 3.033400527754091100e-05, 3.033864376467929701e-05, 3.034323244510794178e-05, 3.034777131633632790e-05, 3.035226037595351500e-05, 3.035669962163072152e-05, 3.036108905112092828e-05, 3.036542866225768589e-05, 3.036971845295623621e-05, 3.037395842121300073e-05, 3.037814856510549248e-05, 3.038228888279323085e-05, 3.038637937251630498e-05, 3.039042003259624793e-05, 3.039441086143655508e-05, 3.039835185752083415e-05, 3.040224301941450271e-05, 3.040608434576465941e-05, 3.040987583529918952e-05, 3.041361748682738154e-05, 3.041730929923970025e-05, 3.042095127150784426e-05, 3.042454340268446142e-05, 3.042808569190442617e-05, 3.043157813838283713e-05, 3.043502074141620292e-05, 3.043841350038260486e-05, 3.044175641474070759e-05, 3.044504948403121256e-05, 3.044829270787541135e-05, 3.045148608597578871e-05, 3.045462961811616151e-05, 3.045772330416148560e-05, 3.046076714405769655e-05, 3.046376113783234326e-05, 3.046670528559361556e-05, 3.046959958753103876e-05, 3.047244404391533137e-05, 3.047523865509794768e-05, 3.047798342151204342e-05, 3.048067834367151685e-05, 3.048332342217143233e-05, 3.048591865768783397e-05, 3.048846405097787435e-05, 3.049095960287960110e-05, 3.049340531431278019e-05, 3.049580118627757456e-05, 3.049814721985490669e-05, 3.050044341620774602e-05, 3.050268977657925233e-05, 3.050488630229367015e-05, 3.050703299475668792e-05, 3.050912985545459435e-05, 3.051117688595457998e-05, 3.051317408790504544e-05, 3.051512146303512042e-05, 3.051701901315518199e-05, 3.051886674015638027e-05, 3.052066464601037418e-05, 3.052241273277044275e-05, 3.052411100257028907e-05, 3.052575945762455193e-05, 3.052735810022887358e-05, 3.052890693275979130e-05, 3.053040595767443247e-05, 3.053185517751100248e-05, 3.053325459488829001e-05, 3.053460421250613467e-05, 3.053590403314520332e-05, 3.053715405966637346e-05, 3.053835429501235274e-05, 3.053950474220559189e-05, 3.054060540434966705e-05, 3.054165628462928659e-05, 3.054265738630912555e-05, 3.054360871273490308e-05, 3.054451026733330792e-05, 3.054536205361138172e-05, 3.054616407515678336e-05, 3.054691633563831745e-05, 3.054761883880461302e-05, 3.054827158848565490e-05, 3.054887458859168597e-05, 3.054942784311355281e-05, 3.054993135612284790e-05, 3.055038513177153704e-05, 3.055078917429214898e-05, 3.055114348799794490e-05, 3.055144807728257957e-05, 3.055170294662015555e-05, 3.055190810056537229e-05, 3.055206354375320085e-05, 3.055216928089931759e-05, 3.055222531679983991e-05, 3.055223165633112292e-05, 3.055218830445001699e-05, 3.055209526619378639e-05, 3.055195254667998736e-05, 3.055176015110689497e-05, 3.055151808475247316e-05, 3.055122635297556058e-05, 3.055088496121529458e-05, 3.055049391499079956e-05, 3.055005321990154606e-05, 3.054956288162754728e-05, 3.054902290592866792e-05, 3.054843329864532890e-05, 3.054779406569798559e-05, 3.054710521308736499e-05, 3.054636674689434372e-05, 3.054557867327981253e-05, 3.054474099848505578e-05, 3.054385372883130416e-05, 3.054291687071986348e-05, 3.054193043063229763e-05, 3.054089441513017103e-05, 3.053980883085490641e-05, 3.053867368452820486e-05, 3.053748898295161897e-05, 3.053625473300681034e-05, 3.053497094165521749e-05, 3.053363761593846926e-05, 3.053225476297793755e-05, 3.053082238997503550e-05, 3.052934050421097351e-05, 3.052780911304694224e-05, 3.052622822392372633e-05, 3.052459784436234138e-05, 3.052291798196316659e-05, 3.052118864440688667e-05, 3.051940983945353636e-05, 3.051758157494297480e-05, 3.051570385879496004e-05, 3.051377669900875265e-05, 3.051180010366351552e-05, 3.050977408091785982e-05, 3.050769863901021774e-05, 3.050557378625848670e-05, 3.050339953106043933e-05, 3.050117588189301873e-05, 3.049890284731310083e-05, 3.049658043595679298e-05, 3.049420865654013538e-05, 3.049178751785811166e-05, 3.048931702878549937e-05, 3.048679719827679540e-05, 3.048422803536526393e-05, 3.048160954916407145e-05, 3.047894174886560238e-05, 3.047622464374155049e-05, 3.047345824314302401e-05, 3.047064255650045408e-05, 3.046777759332356769e-05, 3.046486336320130298e-05, 3.046189987580178547e-05, 3.045888714087227730e-05, 3.045582516823983790e-05, 3.045271396780978572e-05, 3.044955354956712813e-05, 3.044634392357620218e-05, 3.044308509997969208e-05, 3.043977708900014032e-05, 3.043641990093879230e-05, 3.043301354617563700e-05, 3.042955803517024042e-05, 3.042605337846078679e-05, 3.042249958666429880e-05, 3.041889667047714915e-05, 3.041524464067426779e-05, 3.041154350810941292e-05, 3.040779328371565215e-05, 3.040399397850400382e-05, 3.040014560356533440e-05, 3.039624817006856612e-05, 3.039230168926162565e-05, 3.038830617247100031e-05, 3.038426163110209715e-05, 3.038016807663865683e-05, 3.037602552064350917e-05, 3.037183397475762788e-05, 3.036759345070086911e-05, 3.036330396027156497e-05, 3.035896551534666914e-05, 3.035457812788143502e-05, 3.035014180990984605e-05, 3.034565657354395838e-05, 3.034112243097468692e-05, 3.033653939447105319e-05, 3.033190747638040216e-05, 3.032722668912876476e-05, 3.032249704522030901e-05, 3.031771855723708594e-05, 3.031289123784003921e-05, 3.030801509976794464e-05, 3.030309015583786762e-05, 3.029811641894524443e-05, 3.029309390206308937e-05, 3.028802261824309935e-05, 3.028290258061478311e-05, 3.027773380238577971e-05, 3.027251629684186868e-05, 3.026725007734662785e-05, 3.026193515734141638e-05, 3.025657155034592027e-05, 3.025115926995760007e-05, 3.024569832985181966e-05, 3.024018874378160229e-05, 3.023463052557807441e-05, 3.022902368914976774e-05, 3.022336824848325282e-05, 3.021766421764277992e-05, 3.021191161077021461e-05, 3.020611044208546130e-05, 3.020026072588520287e-05, 3.019436247654443885e-05, 3.018841570851555709e-05, 3.018242043632856077e-05, 3.017637667459071264e-05, 3.017028443798708728e-05, 3.016414374127979184e-05, 3.015795459930855555e-05, 3.015171702699060102e-05, 3.014543103932037992e-05, 3.013909665136958315e-05, 3.013271387828751017e-05, 3.012628273530012032e-05, 3.011980323771107295e-05, 3.011327540090105319e-05, 3.010669924032790073e-05, 3.010007477152686390e-05, 3.009340201010952563e-05, 3.008668097176496898e-05, 3.007991167226002787e-05, 3.007309412743712203e-05, 3.006622835321649660e-05, 3.005931436559545976e-05, 3.005235218064707833e-05, 3.004534181452312203e-05, 3.003828328345026542e-05, 3.003117660373314055e-05, 3.002402179175312746e-05, 3.001681886396734449e-05, 3.000956783691040330e-05, 3.000226872719399896e-05, 2.999492155150527346e-05, 2.998752632660870967e-05, 2.998008306934530124e-05, 2.997259179663158023e-05, 2.996505252546229712e-05, 2.995746527290758492e-05, 2.994983005611358260e-05, 2.994214689230347524e-05, 2.993441579877696213e-05, 2.992663679290881337e-05, 2.991880989215194633e-05, 2.991093511403383759e-05, 2.990301247615875915e-05, 2.989504199620757172e-05, 2.988702369193593918e-05, 2.987895758117736097e-05, 2.987084368184045140e-05, 2.986268201190932930e-05, 2.985447258944488519e-05, 2.984621543258394438e-05, 2.983791055953808455e-05, 2.982955798859674603e-05, 2.982115773812319992e-05, 2.981270982655753984e-05, 2.980421427241550282e-05, 2.979567109428822878e-05, 2.978708031084297540e-05, 2.977844194082250826e-05, 2.976975600304449776e-05, 2.976102251640289133e-05, 2.975224149986740177e-05, 2.974341297248174549e-05, 2.973453695336707801e-05, 2.972561346171901246e-05, 2.971664251680785330e-05, 2.970762413798008040e-05, 2.969855834465739012e-05, 2.968944515633645820e-05, 2.968028459258956653e-05, 2.967107667306327840e-05, 2.966182141748006481e-05, 2.965251884563749809e-05, 2.964316897740774368e-05, 2.963377183273832583e-05, 2.962432743165191757e-05, 2.961483579424508032e-05, 2.960529694069026962e-05, 2.959571089123459853e-05, 2.958607766619987482e-05, 2.957639728598264171e-05, 2.956666977105453696e-05, 2.955689514196083937e-05, 2.954707341932255249e-05, 2.953720462383473426e-05, 2.952728877626735761e-05, 2.951732589746500213e-05, 2.950731600834564111e-05, 2.949725912990276933e-05, 2.948715528320415276e-05, 2.947700448939162196e-05, 2.946680676968144137e-05, 2.945656214536453626e-05, 2.944627063780468355e-05, 2.943593226844136795e-05, 2.942554705878764405e-05, 2.941511503043053955e-05, 2.940463620503174977e-05, 2.939411060432565225e-05, 2.938353825012184783e-05, 2.937291916430335816e-05, 2.936225336882728978e-05, 2.935154088572439706e-05, 2.934078173709971237e-05, 2.932997594513082494e-05, 2.931912353206985610e-05, 2.930822452024376426e-05, 2.929727893205057726e-05, 2.928628678996374277e-05, 2.927524811653027496e-05, 2.926416293436879615e-05, 2.925303126617434800e-05, 2.924185313471252661e-05, 2.923062856282398198e-05, 2.921935757342270700e-05, 2.920804018949439419e-05, 2.919667643409914285e-05, 2.918526633037145227e-05, 2.917380990151627454e-05, 2.916230717081343268e-05, 2.915075816161578768e-05, 2.913916289734749698e-05, 2.912752140150856475e-05, 2.911583369766909560e-05, 2.910409980947363816e-05, 2.909231976063918272e-05, 2.908049357495575752e-05, 2.906862127628461273e-05, 2.905670288856267920e-05, 2.904473843579629706e-05, 2.903272794206623354e-05, 2.902067143152594483e-05, 2.900856892839938738e-05, 2.899642045698571383e-05, 2.898422604165519709e-05, 2.897198570684939299e-05, 2.895969947708375251e-05, 2.894736737694582267e-05, 2.893498943109350168e-05, 2.892256566426021935e-05, 2.891009610124812361e-05, 2.889758076693343369e-05, 2.888501968626430906e-05, 2.887241288425890456e-05, 2.885976038601040187e-05, 2.884706221668216101e-05, 2.883431840150847933e-05, 2.882152896579705804e-05, 2.880869393492668475e-05, 2.879581333434769427e-05, 2.878288718958234125e-05, 2.876991552622482057e-05, 2.875689836993939366e-05, 2.874383574646323792e-05, 2.873072768160448844e-05, 2.871757420124283760e-05, 2.870437533132956227e-05, 2.869113109788590084e-05, 2.867784152700574338e-05, 2.866450664485370049e-05, 2.865112647766558432e-05, 2.863770105174827309e-05, 2.862423039348007024e-05, 2.861071452930892225e-05, 2.859715348575512576e-05, 2.858354728940928454e-05, 2.856989596693317008e-05, 2.855619954505951826e-05, 2.854245805059032857e-05, 2.852867151039998453e-05, 2.851483995143291590e-05, 2.850096340070402558e-05, 2.848704188529883869e-05, 2.847307543237408533e-05, 2.845906406915487148e-05, 2.844500782293875495e-05, 2.843090672109291963e-05, 2.841676079105464648e-05, 2.840257006033169640e-05, 2.838833455650247958e-05, 2.837405430721388037e-05, 2.835972934018436079e-05, 2.834535968320197171e-05, 2.833094536412496267e-05, 2.831648641088164981e-05, 2.830198285146874208e-05, 2.828743471395436687e-05, 2.827284202647598968e-05, 2.825820481724053949e-05, 2.824352311452485599e-05, 2.822879694667582173e-05, 2.821402634210803105e-05, 2.819921132930752722e-05, 2.818435193682908180e-05, 2.816944819329684845e-05, 2.815450012740435288e-05, 2.813950776791488919e-05, 2.812447114365880261e-05, 2.810939028353957796e-05, 2.809426521652575560e-05, 2.807909597165721637e-05, 2.806388257804307422e-05, 2.804862506485924687e-05, 2.803332346135208454e-05, 2.801797779683832249e-05, 2.800258810070018180e-05, 2.798715440239070567e-05, 2.797167673143185527e-05, 2.795615511741157905e-05, 2.794058958999088373e-05, 2.792498017889487609e-05, 2.790932691391950199e-05, 2.789362982492876806e-05, 2.787788894185532450e-05, 2.786210429469784263e-05, 2.784627591352760144e-05, 2.783040382847949210e-05, 2.781448806975925499e-05, 2.779852866764064047e-05, 2.778252565246264077e-05, 2.776647905463650341e-05, 2.775038890463905997e-05, 2.773425523301374933e-05, 2.771807807037400916e-05, 2.770185744740067047e-05, 2.768559339483977563e-05, 2.766928594350958844e-05, 2.765293512429138178e-05, 2.763654096813649170e-05, 2.762010350606363066e-05, 2.760362276915633283e-05, 2.758709878856945935e-05, 2.757053159552316066e-05, 2.755392122130343892e-05, 2.753726769726545144e-05, 2.752057105483085442e-05, 2.750383132548818576e-05, 2.748704854079319035e-05, 2.747022273236906061e-05, 2.745335393190375989e-05, 2.743644217115447784e-05, 2.741948748194383910e-05, 2.740248989616185147e-05, 2.738544944576545869e-05, 2.736836616277601289e-05, 2.735124007928380112e-05, 2.733407122744454542e-05, 2.731685963948065981e-05, 2.729960534768064044e-05, 2.728230838440020401e-05, 2.726496878205897752e-05, 2.724758657314499776e-05, 2.723016179021166535e-05, 2.721269446587830718e-05, 2.719518463283117590e-05, 2.717763232382000761e-05, 2.716003757166292443e-05, 2.714240040924285668e-05, 2.712472086950843395e-05, 2.710699898547423920e-05, 2.708923479022102559e-05, 2.707142831689286370e-05, 2.705357959870169517e-05, 2.703568866892408008e-05, 2.701775556090189152e-05, 2.699978030804253584e-05, 2.698176294381909832e-05, 2.696370350176796471e-05, 2.694560201549261593e-05, 2.692745851866107680e-05, 2.690927304500614984e-05, 2.689104562832664178e-05, 2.687277630248388052e-05, 2.685446510140530659e-05, 2.683611205908571659e-05, 2.681771720957981604e-05, 2.679928058701024930e-05, 2.678080222556395731e-05, 2.676228215949036151e-05, 2.674372042310548052e-05, 2.672511705078896201e-05, 2.670647207698491631e-05, 2.668778553620160458e-05, 2.666905746301235708e-05, 2.665028789205136508e-05, 2.663147685802256116e-05, 2.661262439568842818e-05, 2.659373053987833414e-05, 2.657479532548570982e-05, 2.655581878746542977e-05, 2.653680096083767818e-05, 2.651774188068870778e-05, 2.649864158216367740e-05, 2.647950010047460384e-05, 2.646031747089675019e-05, 2.644109372876592541e-05, 2.642182890948673791e-05, 2.640252304852147564e-05, 2.638317618139926759e-05, 2.636378834371178769e-05, 2.634435957111195712e-05, 2.632488989931721049e-05, 2.630537936411044109e-05, 2.628582800133246234e-05, 2.626623584689040695e-05, 2.624660293675406097e-05, 2.622692930695267214e-05, 2.620721499358323053e-05, 2.618746003280288248e-05, 2.616766446082942528e-05, 2.614782831394583032e-05, 2.612795162849745127e-05, 2.610803444088860209e-05, 2.608807678759174559e-05, 2.606807870513573667e-05, 2.604804023011479745e-05, 2.602796139918551538e-05, 2.600784224906292998e-05, 2.598768281652914544e-05, 2.596748313842549389e-05, 2.594724325165365683e-05, 2.592696319317951075e-05, 2.590664300002959658e-05, 2.588628270929247506e-05, 2.586588235811881133e-05, 2.584544198371823085e-05, 2.582496162336447265e-05, 2.580444131439160488e-05, 2.578388109419517331e-05, 2.576328100023173720e-05, 2.574264107002010256e-05, 2.572196134113740888e-05, 2.570124185122445862e-05, 2.568048263798211907e-05, 2.565968373917216255e-05, 2.563884519261719870e-05, 2.561796703620141982e-05, 2.559704930786710776e-05, 2.557609204561975670e-05, 2.555509528752458346e-05, 2.553405907170728977e-05, 2.551298343635473992e-05, 2.549186841971161328e-05, 2.547071406008553392e-05, 2.544952039584328271e-05, 2.542828746541195604e-05, 2.540701530727862360e-05, 2.538570395999140586e-05, 2.536435346215533371e-05, 2.534296385243830824e-05, 2.532153516956699087e-05, 2.530006745232784359e-05, 2.527856073956676297e-05, 2.525701507019051338e-05, 2.523543048316226819e-05, 2.521380701750764404e-05, 2.519214471231059443e-05, 2.517044360671440921e-05, 2.514870373992250400e-05, 2.512692515119480170e-05, 2.510510787985203201e-05, 2.508325196527684612e-05, 2.506135744690521426e-05, 2.503942436423573965e-05, 2.501745275682586042e-05, 2.499544266428895616e-05, 2.497339412629972485e-05, 2.495130718259092690e-05, 2.492918187295341901e-05, 2.490701823723778048e-05, 2.488481631535000349e-05, 2.486257614725629074e-05, 2.484029777298405150e-05, 2.481798123261298410e-05, 2.479562656628486422e-05, 2.477323381419958414e-05, 2.475080301661188663e-05, 2.472833421383649117e-05, 2.470582744624885626e-05, 2.468328275427623817e-05, 2.466070017840765204e-05, 2.463807975918951473e-05, 2.461542153722220589e-05, 2.459272555316995788e-05, 2.456999184774797412e-05, 2.454722046173241393e-05, 2.452441143595678074e-05, 2.450156481130885247e-05, 2.447868062873547910e-05, 2.445575892924332472e-05, 2.443279975389040732e-05, 2.440980314379535178e-05, 2.438676914013364263e-05, 2.436369778413354469e-05, 2.434058911708699595e-05, 2.431744318033549941e-05, 2.429426001528103618e-05, 2.427103966338134587e-05, 2.424778216615001807e-05, 2.422448756515739355e-05, 2.420115590203089634e-05, 2.417778721845098829e-05, 2.415438155615735240e-05, 2.413093895694567071e-05, 2.410745946266363307e-05, 2.408394311522057304e-05, 2.406038995657879418e-05, 2.403680002875432909e-05, 2.401317337382167933e-05, 2.398951003391006141e-05, 2.396581005120417929e-05, 2.394207346794513573e-05, 2.391830032642631581e-05, 2.389449066899940413e-05, 2.387064453807043098e-05, 2.384676197610026353e-05, 2.382284302560502940e-05, 2.379888772915685183e-05, 2.377489612937948923e-05, 2.375086826895489792e-05, 2.372680419061842441e-05, 2.370270393716034362e-05, 2.367856755142540821e-05, 2.365439507631395994e-05, 2.363018655477759961e-05, 2.360594202982558724e-05, 2.358166154452019019e-05, 2.355734514197816034e-05, 2.353299286537128640e-05, 2.350860475792227393e-05, 2.348418086291110147e-05, 2.345972122367037199e-05, 2.343522588358673599e-05, 2.341069488610056276e-05, 2.338612827470697381e-05, 2.336152609295138069e-05, 2.333688838443620029e-05, 2.331221519281601653e-05, 2.328750656179881369e-05, 2.326276253514599334e-05, 2.323798315667310277e-05, 2.321316847024585398e-05, 2.318831851978598847e-05, 2.316343334926734707e-05, 2.313851300271670337e-05, 2.311355752421464805e-05, 2.308856695789131985e-05, 2.306354134793183331e-05, 2.303848073857693950e-05, 2.301338517411369509e-05, 2.298825469888577918e-05, 2.296308935728925141e-05, 2.293788919376930273e-05, 2.291265425282652341e-05, 2.288738457901265774e-05, 2.286208021693137313e-05, 2.283674121123968652e-05, 2.281136760664296349e-05, 2.278595944790076278e-05, 2.276051677982765284e-05, 2.273503964728319990e-05, 2.270952809518319285e-05, 2.268398216849472029e-05, 2.265840191223303309e-05, 2.263278737146723311e-05, 2.260713859132070685e-05, 2.258145561696144895e-05, 2.255573849361323626e-05, 2.252998726655066421e-05, 2.250420198109492182e-05, 2.247838268262594154e-05, 2.245252941656672237e-05, 2.242664222839533739e-05, 2.240072116364044108e-05, 2.237476626787817600e-05, 2.234877758673725495e-05, 2.232275516590012990e-05, 2.229669905109295293e-05, 2.227060928809660801e-05, 2.224448592274226236e-05, 2.221832900090644014e-05, 2.219213856852374485e-05, 2.216591467157083689e-05, 2.213965735607865111e-05, 2.211336666812686405e-05, 2.208704265384480193e-05, 2.206068535941152874e-05, 2.203429483105656453e-05, 2.200787111505575526e-05, 2.198141425773750363e-05, 2.195492430547959771e-05, 2.192840130470458620e-05, 2.190184530189073561e-05, 2.187525634356230636e-05, 2.184863447629001353e-05, 2.182197974669696289e-05, 2.179529220145390750e-05, 2.176857188728028450e-05, 2.174181885094557371e-05, 2.171503313926409690e-05, 2.168821479910220738e-05, 2.166136387737475954e-05, 2.163448042104030452e-05, 2.160756447711250145e-05, 2.158061609264968870e-05, 2.155363531475610372e-05, 2.152662219058724635e-05, 2.149957676734569453e-05, 2.147249909228158543e-05, 2.144538921269301181e-05, 2.141824717592675389e-05, 2.139107302937373587e-05, 2.136386682047599191e-05, 2.133662859672172285e-05, 2.130935840564651934e-05, 2.128205629483432404e-05, 2.125472231191292207e-05, 2.122735650456054440e-05, 2.119995892050136849e-05, 2.117252960750650419e-05, 2.114506861339388193e-05, 2.111757598602939794e-05, 2.109005177332213358e-05, 2.106249602323124001e-05, 2.103490878376127612e-05, 2.100729010296328262e-05, 2.097964002893576451e-05, 2.095195860981990374e-05, 2.092424589380680297e-05, 2.089650192913230852e-05, 2.086872676407844698e-05, 2.084092044697306262e-05, 2.081308302619117606e-05, 2.078521455014987159e-05, 2.075731506731433139e-05, 2.072938462619910275e-05, 2.070142327535694091e-05, 2.067343106339074207e-05, 2.064540803894900669e-05, 2.061735425072169919e-05, 2.058926974744767471e-05, 2.056115457790970200e-05, 2.053300879093549334e-05, 2.050483243539903276e-05, 2.047662556021537521e-05, 2.044838821434690783e-05, 2.042012044680434609e-05, 2.039182230663560714e-05, 2.036349384293802741e-05, 2.033513510485349389e-05, 2.030674614156438175e-05, 2.027832700230113017e-05, 2.024987773633711954e-05, 2.022139839298986742e-05, 2.019288902162082530e-05, 2.016434967163660167e-05, 2.013578039248275500e-05, 2.010718123365723780e-05, 2.007855224469302913e-05, 2.004989347517156846e-05, 2.002120497471791748e-05, 1.999248679299554235e-05, 1.996373897971859227e-05, 1.993496158464092878e-05, 1.990615465755689138e-05, 1.987731824830774524e-05, 1.984845240677770344e-05, 1.981955718288889569e-05, 1.979063262661508003e-05, 1.976167878796391953e-05, 1.973269571699069069e-05, 1.970368346379329608e-05, 1.967464207850710763e-05, 1.964557161131743834e-05, 1.961647211244794807e-05, 1.958734363216232407e-05, 1.955818622076991884e-05, 1.952899992862209771e-05, 1.949978480610738366e-05, 1.947054090366348177e-05, 1.944126827176625088e-05, 1.941196696093063534e-05, 1.938263702171712951e-05, 1.935327850472628905e-05, 1.932389146060027246e-05, 1.929447594002376272e-05, 1.926503199371889518e-05, 1.923555967245291142e-05, 1.920605902703399518e-05, 1.917653010830642059e-05, 1.914697296716283753e-05, 1.911738765453305691e-05, 1.908777422138498240e-05, 1.905813271873096996e-05, 1.902846319762289471e-05, 1.899876570915281842e-05, 1.896904030445463951e-05, 1.893928703469879398e-05, 1.890950595109964163e-05, 1.887969710491042101e-05, 1.884986054742450313e-05, 1.881999632997510680e-05, 1.879010450393665054e-05, 1.876018512071952801e-05, 1.873023823177765346e-05, 1.870026388860323040e-05, 1.867026214272802894e-05, 1.864023304572321978e-05, 1.861017664920065493e-05, 1.858009300480750427e-05, 1.854998216423402117e-05, 1.851984417920820279e-05, 1.848967910149714532e-05, 1.845948698290806044e-05, 1.842926787528308130e-05, 1.839902183050700781e-05, 1.836874890050193979e-05, 1.833844913722849676e-05, 1.830812259268587550e-05, 1.827776931891286988e-05, 1.824738936798264976e-05, 1.821698279201044865e-05, 1.818654964314847137e-05, 1.815608997358675799e-05, 1.812560383555332955e-05, 1.809509128131539421e-05, 1.806455236317397369e-05, 1.803398713347170615e-05, 1.800339564458742513e-05, 1.797277794893750131e-05, 1.794213409897701475e-05, 1.791146414719434410e-05, 1.788076814611781068e-05, 1.785004614831675252e-05, 1.781929820638969303e-05, 1.778852437297726672e-05, 1.775772470075719458e-05, 1.772689924243974738e-05, 1.769604805077596528e-05, 1.766517117855221310e-05, 1.763426867859116967e-05, 1.760334060375216662e-05, 1.757238700693203543e-05, 1.754140794105852087e-05, 1.751040345910491100e-05, 1.747937361407113138e-05, 1.744831845899849019e-05, 1.741723804696410140e-05, 1.738613243107548406e-05, 1.735500166448399289e-05, 1.732384580037254305e-05, 1.729266489195680276e-05, 1.726145899249187133e-05, 1.723022815526834212e-05, 1.719897243360652244e-05, 1.716769188087131416e-05, 1.713638655045334863e-05, 1.710505649578345061e-05, 1.707370177032754930e-05, 1.704232242758071182e-05, 1.701091852108100748e-05, 1.697949010439695809e-05, 1.694803723112891020e-05, 1.691655995491574019e-05, 1.688505832943063266e-05, 1.685353240837556457e-05, 1.682198224549484418e-05, 1.679040789456283587e-05, 1.675880940938491898e-05, 1.672718684380479262e-05, 1.669554025169824830e-05, 1.666386968697496220e-05, 1.663217520357955913e-05, 1.660045685548605928e-05, 1.656871469670603353e-05, 1.653694878128431406e-05, 1.650515916329356654e-05, 1.647334589684779183e-05, 1.644150903609002711e-05, 1.640964863519341649e-05, 1.637776474836817700e-05, 1.634585742985588286e-05, 1.631392673393080713e-05, 1.628197271490126343e-05, 1.624999542710390372e-05, 1.621799492491184642e-05, 1.618597126272930961e-05, 1.615392449499274607e-05, 1.612185467617054509e-05, 1.608976186076473334e-05, 1.605764610330506257e-05, 1.602550745835734105e-05, 1.599334598051768724e-05, 1.596116172441402402e-05, 1.592895474470577710e-05, 1.589672509608529809e-05, 1.586447283327215881e-05, 1.583219801102136757e-05, 1.579990068411786343e-05, 1.576758090737766140e-05, 1.573523873564919076e-05, 1.570287422380766732e-05, 1.567048742676333345e-05, 1.563807839945581334e-05, 1.560564719685534978e-05, 1.557319387396281085e-05, 1.554071848581098424e-05, 1.550822108745864120e-05, 1.547570173399931523e-05, 1.544316048055525086e-05, 1.541059738227866741e-05, 1.537801249435198262e-05, 1.534540587198886298e-05, 1.531277757042860281e-05, 1.528012764494438450e-05, 1.524745615083777963e-05, 1.521476314343980600e-05, 1.518204867811238968e-05, 1.514931281024247635e-05, 1.511655559524930403e-05, 1.508377708858542789e-05, 1.505097734572396738e-05, 1.501815642217272966e-05, 1.498531437346848530e-05, 1.495245125517247230e-05, 1.491956712287892057e-05, 1.488666203220927351e-05, 1.485373603881350764e-05, 1.482078919837145744e-05, 1.478782156658695380e-05, 1.475483319919504077e-05, 1.472182415196312078e-05, 1.468879448067809664e-05, 1.465574424116057627e-05, 1.462267348925904349e-05, 1.458958228084394057e-05, 1.455647067182206952e-05, 1.452333871812360708e-05, 1.449018647570321432e-05, 1.445701400054726015e-05, 1.442382134866953361e-05, 1.439060857610518254e-05, 1.435737573892662423e-05, 1.432412289322316410e-05, 1.429085009511679120e-05, 1.425755740075645223e-05, 1.422424486631195972e-05, 1.419091254798841866e-05, 1.415756050201326185e-05, 1.412418878463739334e-05, 1.409079745214244756e-05, 1.405738656083636947e-05, 1.402395616704744129e-05, 1.399050632714022705e-05, 1.395703709749508117e-05, 1.392354853452406591e-05, 1.389004069466362280e-05, 1.385651363437585513e-05, 1.382296741014851599e-05, 1.378940207849631110e-05, 1.375581769595500508e-05, 1.372221431909007819e-05, 1.368859200449223870e-05, 1.365495080877141068e-05, 1.362129078857148081e-05, 1.358761200055678488e-05, 1.355391450141359002e-05, 1.352019834785739618e-05, 1.348646359662682560e-05, 1.345271030448512210e-05, 1.341893852822144868e-05, 1.338514832464488550e-05, 1.335133975059328301e-05, 1.331751286292716506e-05, 1.328366771853127217e-05, 1.324980437431413970e-05, 1.321592288720985800e-05, 1.318202331417180945e-05, 1.314810571218152501e-05, 1.311417013824269573e-05, 1.308021664938254324e-05, 1.304624530265168251e-05, 1.301225615512564146e-05, 1.297824926389862337e-05, 1.294422468609245159e-05, 1.291018247885053526e-05, 1.287612269933925673e-05, 1.284204540474930990e-05, 1.280795065228964562e-05, 1.277383849919644684e-05, 1.273970900272690972e-05, 1.270556222016073437e-05, 1.267139820879992837e-05, 1.263721702597040767e-05, 1.260301872901563701e-05, 1.256880337530583894e-05, 1.253457102223152580e-05, 1.250032172720528026e-05, 1.246605554766295804e-05, 1.243177254105754694e-05, 1.239747276486826232e-05, 1.236315627659420617e-05, 1.232882313375605099e-05, 1.229447339389559433e-05, 1.226010711457763064e-05, 1.222572435338339870e-05, 1.219132516791816591e-05, 1.215690961581278853e-05, 1.212247775470979494e-05, 1.208802964227863391e-05, 1.205356533620923718e-05, 1.201908489420624097e-05, 1.198458837400520837e-05, 1.195007583335150771e-05, 1.191554733001684499e-05, 1.188100292179306864e-05, 1.184644266648759554e-05, 1.181186662193080734e-05, 1.177727484597755310e-05, 1.174266739649344426e-05, 1.170804433136974211e-05, 1.167340570851735403e-05, 1.163875158586058069e-05, 1.160408202135378057e-05, 1.156939707296005351e-05, 1.153469679866765456e-05, 1.149998125648253327e-05, 1.146525050443119501e-05, 1.143050460055287263e-05, 1.139574360291641976e-05, 1.136096756959860468e-05, 1.132617655870108320e-05, 1.129137062834393749e-05, 1.125654983665958929e-05, 1.122171424180809056e-05, 1.118686390196298309e-05, 1.115199887531299769e-05, 1.111711922006957072e-05, 1.108222499446189744e-05, 1.104731625673110270e-05, 1.101239306514672596e-05, 1.097745547798522859e-05, 1.094250355354681432e-05, 1.090753735014761109e-05, 1.087255692612107882e-05, 1.083756233981805518e-05, 1.080255364960800917e-05, 1.076753091387291705e-05, 1.073249419101641375e-05, 1.069744353945892407e-05, 1.066237901763160471e-05, 1.062730068399145537e-05, 1.059220859700756458e-05, 1.055710281516235996e-05, 1.052198339695936532e-05, 1.048685040091681744e-05, 1.045170388556921274e-05, 1.041654390946869304e-05, 1.038137053117881985e-05, 1.034618380928363763e-05, 1.031098380238150739e-05, 1.027577056908659748e-05, 1.024054416802857864e-05, 1.020530465785429434e-05, 1.017005209722137929e-05, 1.013478654480741577e-05, 1.009950805930368772e-05, 1.006421669941667651e-05, 1.002891252386784246e-05, 9.993595591395203670e-06, 9.958265960746981617e-06, 9.922923690690759249e-06, 9.887568840007263774e-06, 9.852201467491837104e-06, 9.816821631955738596e-06, 9.781429392220019307e-06, 9.746024807124641152e-06, 9.710607935522152956e-06, 9.675178836279233746e-06, 9.639737568276513183e-06, 9.604284190410099608e-06, 9.568818761585149368e-06, 9.533341340725250246e-06, 9.497851986765975542e-06, 9.462350758656383321e-06, 9.426837715360600364e-06, 9.391312915851205144e-06, 9.355776419118795917e-06, 9.320228284165422823e-06, 9.284668570006215883e-06, 9.249097335669168162e-06, 9.213514640196672286e-06, 9.177920542639106705e-06, 9.142315102062655507e-06, 9.106698377550707710e-06, 9.071070428189633889e-06, 9.035431313084429182e-06, 8.999781091352328349e-06, 8.964119822116371717e-06, 8.928447564522694812e-06, 8.892764377718320851e-06, 8.857070320868389390e-06, 8.821365453149830686e-06, 8.785649833746456291e-06, 8.749923521856785635e-06, 8.714186576695509705e-06, 8.678439057479186346e-06, 8.642681023442015404e-06, 8.606912533829264061e-06, 8.571133647890988620e-06, 8.535344424899225891e-06, 8.499544924125844970e-06, 8.463735204859813163e-06, 8.427915326399139002e-06, 8.392085348053996107e-06, 8.356245329138722115e-06, 8.320395328989099840e-06, 8.284535406940114191e-06, 8.248665622343260445e-06, 8.212786034560045807e-06, 8.176896702955734921e-06, 8.140997686914901393e-06, 8.105089045827204417e-06, 8.069170839088796540e-06, 8.033243126110187516e-06, 7.997305966311380647e-06, 7.961359419115409918e-06, 7.925403543965743136e-06, 7.889438400303943978e-06, 7.853464047587007369e-06, 7.817480545280925416e-06, 7.781487952854300783e-06, 7.745486329794006632e-06, 7.709475735590920901e-06, 7.673456229741308654e-06, 7.637427871754760478e-06, 7.601390721147667790e-06, 7.565344837444766971e-06, 7.529290280179000463e-06, 7.493227108893059204e-06, 7.457155383132845240e-06, 7.421075162456945777e-06, 7.384986506430312630e-06, 7.348889474625462464e-06, 7.312784126624282669e-06, 7.276670522011333027e-06, 7.240548720383451057e-06, 7.204418781343168039e-06, 7.168280764500321757e-06, 7.132134729471859988e-06, 7.095980735883377023e-06, 7.059818843362611842e-06, 7.023649111549040756e-06, 6.987471600087187551e-06, 6.951286368628300602e-06, 6.915093476831747946e-06, 6.878892984358590838e-06, 6.842684950881042566e-06, 6.806469436075994585e-06, 6.770246499626513217e-06, 6.734016201221737166e-06, 6.697778600558325091e-06, 6.661533757334085079e-06, 6.625281731257355526e-06, 6.589022582040588871e-06, 6.552756369401784770e-06, 6.516483153064461297e-06, 6.480202992759127940e-06, 6.443915948216738029e-06, 6.407622079178280541e-06, 6.371321445388200348e-06, 6.335014106595992332e-06, 6.298700122557589673e-06, 6.262379553028956891e-06, 6.226052457775561367e-06, 6.189718896565881688e-06, 6.153378929172878088e-06, 6.117032615373942480e-06, 6.080680014952362126e-06, 6.044321187690845763e-06, 6.007956193381015458e-06, 5.971585091816918331e-06, 5.935207942796526655e-06, 5.898824806121611643e-06, 5.862435741599290984e-06, 5.826040809033878683e-06, 5.789640068244467780e-06, 5.753233579042330657e-06, 5.716821401248497518e-06, 5.680403594687262182e-06, 5.643980219181204077e-06, 5.607551334559140178e-06, 5.571117000657718281e-06, 5.534677277306724370e-06, 5.498232224345141509e-06, 5.461781901614609061e-06, 5.425326368952873423e-06, 5.388865686211408009e-06, 5.352399913232767823e-06, 5.315929109868222145e-06, 5.279453335971183245e-06, 5.242972651392274118e-06, 5.206487115987348184e-06, 5.169996789618949578e-06, 5.133501732141714534e-06, 5.097002003418384546e-06, 5.060497663313307082e-06, 5.023988771685827879e-06, 4.987475388406370173e-06, 4.950957573341779331e-06, 4.914435386356880548e-06, 4.877908887322418930e-06, 4.841378136110113674e-06, 4.804843192586123204e-06, 4.768304116628736301e-06, 4.731760968105577606e-06, 4.695213806891362267e-06, 4.658662692861300951e-06, 4.622107685884556508e-06, 4.585548845840275764e-06, 4.548986232602972277e-06, 4.512419906044036594e-06, 4.475849926039739864e-06, 4.439276352464600728e-06, 4.402699245193008227e-06, 4.366118664100683790e-06, 4.329534669058082836e-06, 4.292947319940072984e-06, 4.256356676619327189e-06, 4.219762798967854329e-06, 4.183165746856861147e-06, 4.146565580158354828e-06, 4.109962358738494643e-06, 4.073356142467245584e-06, 4.036746991211804535e-06, 4.000134964838113929e-06, 3.963520123210755860e-06, 3.926902526194493690e-06, 3.890282233647658411e-06, 3.853659305431841245e-06, 3.817033801405236813e-06, 3.780405781424227084e-06, 3.743775305344869616e-06, 3.707142433016313986e-06, 3.670507224290460090e-06, 3.633869739015354246e-06, 3.597230037036719361e-06, 3.560588178197849477e-06, 3.523944222341162800e-06, 3.487298229301574097e-06, 3.450650258916163152e-06, 3.414000371017564943e-06, 3.377348625435520134e-06, 3.340695081996756920e-06, 3.304039800526532198e-06, 3.267382840842029369e-06, 3.230724262762003931e-06, 3.194064126100199908e-06, 3.157402490666871127e-06, 3.120739416270309260e-06, 3.084074962710242057e-06, 3.047409189785856011e-06, 3.010742157297368454e-06, 2.974073925031240057e-06, 2.937404552776379415e-06, 2.900734100317510358e-06, 2.864062627430212572e-06, 2.827390193890596831e-06, 2.790716859468676544e-06, 2.754042683929908082e-06, 2.717367727035103957e-06, 2.680692048541946049e-06, 2.644015708196752442e-06, 2.607338765752304931e-06, 2.570661280944938471e-06, 2.533983313512361902e-06, 2.497304923187061263e-06, 2.460626169691297209e-06, 2.423947112745149709e-06, 2.387267812068088445e-06, 2.350588327364155240e-06, 2.313908718338213116e-06, 2.277229044689308097e-06, 2.240549366104043716e-06, 2.203869742274427575e-06, 2.167190232874968425e-06, 2.130510897580474440e-06, 2.093831796059467966e-06, 2.057152987969177855e-06, 2.020474532963610424e-06, 1.983796490695076231e-06, 1.947118920799404266e-06, 1.910441882912186772e-06, 1.873765436662130251e-06, 1.837089641664437171e-06, 1.800414557537034479e-06, 1.763740243885792881e-06, 1.727066760306046205e-06, 1.690394166390675480e-06, 1.653722521725098743e-06, 1.617051885880666296e-06, 1.580382318432493288e-06, 1.543713878936530114e-06, 1.507046626947417656e-06, 1.470380622011861368e-06, 1.433715923662003031e-06, 1.397052591431646516e-06, 1.360390684841487436e-06, 1.323730263400615360e-06, 1.287071386614617160e-06, 1.250414113978928870e-06, 1.213758504980374737e-06, 1.177104619098708189e-06, 1.140452515799988885e-06, 1.103802254546269807e-06, 1.067153894788982564e-06, 1.030507495970472435e-06, 9.938631175238916362e-07, 9.572208188747551119e-07, 9.205806594342953486e-07, 8.839426986091745607e-07, 8.473069957948515751e-07, 8.106736103771252319e-07, 7.740426017320337986e-07, 7.374140292273876763e-07, 7.007879522161576725e-07, 6.641644300461562700e-07, 6.275435220534284403e-07, 5.909252875637770444e-07, 5.543097858943061268e-07, 5.176970763467944705e-07, 4.810872182173897835e-07, 4.444802707899898248e-07, 4.078762933377774922e-07, 3.712753451231217199e-07, 3.346774853991209310e-07, 2.980827734029723580e-07, 2.614912683656747524e-07, 2.249030295053999542e-07, 1.883181160290340956e-07, 1.517365871320784974e-07, 1.151585020001882390e-07, 7.858391980255026568e-08, 4.201289970157752262e-08, 5.445500846286804558e-09, -3.111821762616377340e-08, -6.767819658893958810e-08, -1.042343769321484488e-07, -1.407866995547801854e-07, -1.773351053631718643e-07, -2.138795352857798777e-07, -2.504199302569667138e-07, -2.869562312236203075e-07, -3.234883791501385384e-07, -3.600163150087416351e-07, -3.965399797860911559e-07, -4.330593144817496589e-07, -4.695742601066504313e-07, -5.060847576897095876e-07, -5.425907482697706799e-07, -5.790921728940726806e-07, -6.155889726330090017e-07, -6.520810885639248662e-07, -6.885684617777367650e-07, -7.250510333839082460e-07, -7.615287445023948424e-07, -7.980015362621243896e-07, -8.344693498157391047e-07, -8.709321263234040218e-07, -9.073898069594206258e-07, -9.438423329188270384e-07, -9.802896453995932800e-07, -1.016731685625497830e-06, -1.053168394828320134e-06, -1.089599714254440370e-06, -1.126025585169829104e-06, -1.162445948851993704e-06, -1.198860746588438430e-06, -1.235269919691422718e-06, -1.271673409481770777e-06, -1.308071157295473151e-06, -1.344463104490299086e-06, -1.380849192427980457e-06, -1.417229362497097968e-06, -1.453603556095257036e-06, -1.489971714637344665e-06, -1.526333779553968157e-06, -1.562689692291577507e-06, -1.599039394310898390e-06, -1.635382827093566973e-06, -1.671719932132440915e-06, -1.708050650936585427e-06, -1.744374925037851117e-06, -1.780692695974746697e-06, -1.817003905307121026e-06, -1.853308494614654547e-06, -1.889606405488837457e-06, -1.925897579539521725e-06, -1.962181958393438354e-06, -1.998459483692635881e-06, -2.034730097101076856e-06, -2.070993740294986323e-06, -2.107250354969453177e-06, -2.143499882836883050e-06, -2.179742265627098691e-06, -2.215977445085817848e-06, -2.252205362981210992e-06, -2.288425961094294696e-06, -2.324639181225483860e-06, -2.360844965193081869e-06, -2.397043254833358104e-06, -2.433233991999057583e-06, -2.469417118565906597e-06, -2.505592576423056064e-06, -2.541760307479596480e-06, -2.577920253663090435e-06, -2.614072356917983158e-06, -2.650216559212207252e-06, -2.686352802527577770e-06, -2.722481028866308433e-06, -2.758601180249530173e-06, -2.794713198717365672e-06, -2.830817026327419525e-06, -2.866912605161306745e-06, -2.902999877315069011e-06, -2.939078784905740867e-06, -2.975149270069796687e-06, -3.011211274963285352e-06, -3.047264741760251805e-06, -3.083309612659334167e-06, -3.119345829874157113e-06, -3.155373335639875627e-06, -3.191392072211619843e-06, -3.227401981863077545e-06, -3.263403006892912975e-06, -3.299395089616862746e-06, -3.335378172366219657e-06, -3.371352197502402927e-06, -3.407317107400949697e-06, -3.443272844458049466e-06, -3.479219351095485254e-06, -3.515156569751012161e-06, -3.551084442884954478e-06, -3.587002912978632751e-06, -3.622911922532900526e-06, -3.658811414074608487e-06, -3.694701330148705022e-06, -3.730581613316673451e-06, -3.766452206171157740e-06, -3.802313051319916736e-06, -3.838164091392384859e-06, -3.874005269044546353e-06, -3.909836526949418869e-06, -3.945657807803563343e-06, -3.981469054325547471e-06, -4.017270209256102413e-06, -4.053061215356506656e-06, -4.088842015416781054e-06, -4.124612552238093417e-06, -4.160372768655327699e-06, -4.196122607519514844e-06, -4.231862011704369338e-06, -4.267590924111124076e-06, -4.303309287660681748e-06, -4.339017045292083410e-06, -4.374714139976978345e-06, -4.410400514703725254e-06, -4.446076112483889849e-06, -4.481740876358745826e-06, -4.517394749381731123e-06, -4.553037674641001015e-06, -4.588669595241829317e-06, -4.624290454314776313e-06, -4.659900195014138697e-06, -4.695498760518037655e-06, -4.731086094026953502e-06, -4.766662138770153817e-06, -4.802226837996233774e-06, -4.837780134977970492e-06, -4.873321973018840106e-06, -4.908852295437079992e-06, -4.944371045580241645e-06, -4.979878166823560135e-06, -5.015373602562160560e-06, -5.050857296217499734e-06, -5.086329191235861851e-06, -5.121789231086869405e-06, -5.157237359269878287e-06, -5.192673519304612142e-06, -5.228097654735967588e-06, -5.263509709140444042e-06, -5.298909626110388060e-06, -5.334297349268405603e-06, -5.369672822265763687e-06, -5.405035988774607841e-06, -5.440386792494412268e-06, -5.475725177150443321e-06, -5.511051086493850987e-06, -5.546364464300222155e-06, -5.581665254375942677e-06, -5.616953400548848669e-06, -5.652228846674568244e-06, -5.687491536635091721e-06, -5.722741414337271531e-06, -5.757978423719202915e-06, -5.793202508740851504e-06, -5.828413613390460278e-06, -5.863611681683082505e-06, -5.898796657660598676e-06, -5.933968485390312134e-06, -5.969127108971311130e-06, -6.004272472525058292e-06, -6.039404520201852637e-06, -6.074523196179267642e-06, -6.109628444660763808e-06, -6.144720209881979566e-06, -6.179798436101415618e-06, -6.214863067606816476e-06, -6.249914048713684768e-06, -6.284951323765371873e-06, -6.319974837131563423e-06, -6.354984533214689651e-06, -6.389980356442197060e-06, -6.424962251264923816e-06, -6.459930162171491682e-06, -6.494884033672580854e-06, -6.529823810307308118e-06, -6.564749436648077809e-06, -6.599660857291180588e-06, -6.634558016863255463e-06, -6.669440860019693973e-06, -6.704309331443242587e-06, -6.739163375850316487e-06, -6.774002937983254297e-06, -6.808827962608896764e-06, -6.843638394532670374e-06, -6.878434178583098507e-06, -6.913215259618106750e-06, -6.947981582529840824e-06, -6.982733092235336509e-06, -7.017469733682833435e-06, -7.052191451850380861e-06, -7.086898191745851229e-06, -7.121589898405497668e-06, -7.156266516901856808e-06, -7.190927992326641262e-06, -7.225574269812650665e-06, -7.260205294516778509e-06, -7.294821011626264931e-06, -7.329421366365011353e-06, -7.364006303978144144e-06, -7.398575769746093161e-06, -7.433129708983088265e-06, -7.467668067029533480e-06, -7.502190789256656360e-06, -7.536697821072914945e-06, -7.571189107906948682e-06, -7.605664595229375124e-06, -7.640124228535861129e-06, -7.674567953353423093e-06, -7.708995715246580639e-06, -7.743407459802118502e-06, -7.777803132642999886e-06, -7.812182679426980721e-06, -7.846546045838884723e-06, -7.880893177595316282e-06, -7.915224020451092833e-06, -7.949538520183657757e-06, -7.983836622607183475e-06, -8.018118273571136578e-06, -8.052383418952557969e-06, -8.086632004662403747e-06, -8.120863976644054436e-06, -8.155079280871778459e-06, -8.189277863357174680e-06, -8.223459670139826233e-06, -8.257624647292082878e-06, -8.291772740925276524e-06, -8.325903897174510211e-06, -8.360018062212390213e-06, -8.394115182247814774e-06, -8.428195203518201742e-06, -8.462258072295783708e-06, -8.496303734886101990e-06, -8.530332137626658152e-06, -8.564343226893036360e-06, -8.598336949089840128e-06, -8.632313250656843472e-06, -8.666272078067689869e-06, -8.700213377829782140e-06, -8.734137096482964466e-06, -8.768043180605710816e-06, -8.801931576805983762e-06, -8.835802231727451703e-06, -8.869655092048074320e-06, -8.903490104480175422e-06, -8.937307215769014845e-06, -8.971106372698848128e-06, -9.004887522084078409e-06, -9.038650610775256802e-06, -9.072395585657723759e-06, -9.106122393650099655e-06, -9.139830981710622292e-06, -9.173521296827887131e-06, -9.207193286027127199e-06, -9.240846896368812090e-06, -9.274482074948617479e-06, -9.308098768896073250e-06, -9.341696925380692633e-06, -9.375276491602986876e-06, -9.408837414800516445e-06, -9.442379642246588294e-06, -9.475903121250220284e-06, -9.509407799154789322e-06, -9.542893623344138464e-06, -9.576360541233550940e-06, -9.609808500275969059e-06, -9.643237447960440760e-06, -9.676647331810810096e-06, -9.710038099391795540e-06, -9.743409698301431064e-06, -9.776762076169834558e-06, -9.810095180672672257e-06, -9.843408959516266216e-06, -9.876703360443691247e-06, -9.909978331239401418e-06, -9.943233819720193902e-06, -9.976469773741297449e-06, -1.000968614119517469e-05, -1.004288287001130019e-05, -1.007605990815492891e-05, -1.010921720363462626e-05, -1.014235470448584252e-05, -1.017547235879204116e-05, -1.020857011466816816e-05, -1.024164792026691162e-05, -1.027470572378452591e-05, -1.030774347344620684e-05, -1.034076111751945951e-05, -1.037375860431271087e-05, -1.040673588216805744e-05, -1.043969289946558346e-05, -1.047262960462963065e-05, -1.050554594611226581e-05, -1.053844187241449222e-05, -1.057131733206973251e-05, -1.060417227364984595e-05, -1.063700664577144398e-05, -1.066982039708067574e-05, -1.070261347626699241e-05, -1.073538583206174109e-05, -1.076813741323062288e-05, -1.080086816857835658e-05, -1.083357804695463504e-05, -1.086626699723954438e-05, -1.089893496835672682e-05, -1.093158190927214067e-05, -1.096420776898671991e-05, -1.099681249654230513e-05, -1.102939604102029676e-05, -1.106195835154029980e-05, -1.109449937726598529e-05, -1.112701906739646411e-05, -1.115951737117064756e-05, -1.119199423787330697e-05, -1.122444961682042853e-05, -1.125688345737248632e-05, -1.128929570893306667e-05, -1.132168632094164302e-05, -1.135405524287945431e-05, -1.138640242426820901e-05, -1.141872781466862995e-05, -1.145103136368635131e-05, -1.148331302096330604e-05, -1.151557273618365846e-05, -1.154781045907227450e-05, -1.158002613939498940e-05, -1.161221972695715925e-05, -1.164439117160946827e-05, -1.167654042323941950e-05, -1.170866743177711327e-05, -1.174077214719394616e-05, -1.177285451950267705e-05, -1.180491449875596856e-05, -1.183695203505249920e-05, -1.186896707852798147e-05, -1.190095957936136890e-05, -1.193292948777329074e-05, -1.196487675402475597e-05, -1.199680132842297756e-05, -1.202870316131288344e-05, -1.206058220308271204e-05, -1.209243840416303650e-05, -1.212427171502647497e-05, -1.215608208618649631e-05, -1.218786946820330529e-05, -1.221963381167514011e-05, -1.225137506724415429e-05, -1.228309318559519346e-05, -1.231478811745563280e-05, -1.234645981359423860e-05, -1.237810822482678239e-05, -1.240973330200771801e-05, -1.244133499603580758e-05, -1.247291325785287468e-05, -1.250446803844238136e-05, -1.253599928883535054e-05, -1.256750696010312224e-05, -1.259899100335613888e-05, -1.263045136975671013e-05, -1.266188801050509101e-05, -1.269330087684489110e-05, -1.272468992006784498e-05, -1.275605509150493537e-05, -1.278739634253246802e-05, -1.281871362457054536e-05, -1.285000688908181121e-05, -1.288127608757718518e-05, -1.291252117160876456e-05, -1.294374209276858082e-05, -1.297493880270149998e-05, -1.300611125309083998e-05, -1.303725939566444724e-05, -1.306838318220023126e-05, -1.309948256451209703e-05, -1.313055749446289110e-05, -1.316160792396283628e-05, -1.319263380496274689e-05, -1.322363508945825205e-05, -1.325461172949553693e-05, -1.328556367715584704e-05, -1.331649088457533090e-05, -1.334739330392962740e-05, -1.337827088743962391e-05, -1.340912358737696882e-05, -1.343995135605032245e-05, -1.347075414581796092e-05, -1.350153190908638365e-05, -1.353228459830350148e-05, -1.356301216596280919e-05, -1.359371456460915546e-05, -1.362439174682333029e-05, -1.365504366524171951e-05, -1.368567027254106331e-05, -1.371627152144556453e-05, -1.374684736472542835e-05, -1.377739775519690977e-05, -1.380792264572129033e-05, -1.383842198921004339e-05, -1.386889573861704645e-05, -1.389934384694248094e-05, -1.392976626723862755e-05, -1.396016295259596312e-05, -1.399053385615578982e-05, -1.402087893110891383e-05, -1.405119813068874369e-05, -1.408149140817690616e-05, -1.411175871690192480e-05, -1.414200001023809684e-05, -1.417221524161075156e-05, -1.420240436448828137e-05, -1.423256733238767468e-05, -1.426270409887317755e-05, -1.429281461755644279e-05, -1.432289884209509167e-05, -1.435295672619839586e-05, -1.438298822361910689e-05, -1.441299328815893314e-05, -1.444297187366727262e-05, -1.447292393404137730e-05, -1.450284942322486745e-05, -1.453274829521349144e-05, -1.456262050404672824e-05, -1.459246600381370312e-05, -1.462228474865148004e-05, -1.465207669274403842e-05, -1.468184179032765517e-05, -1.471157999568289009e-05, -1.474129126314004755e-05, -1.477097554707796688e-05, -1.480063280192390382e-05, -1.483026298215257169e-05, -1.485986604229119137e-05, -1.488944193691186124e-05, -1.491899062063677319e-05, -1.494851204813692857e-05, -1.497800617413112340e-05, -1.500747295339105936e-05, -1.503691234073352741e-05, -1.506632429102595244e-05, -1.509570875918482625e-05, -1.512506570017598711e-05, -1.515439506901336271e-05, -1.518369682076427094e-05, -1.521297091054284183e-05, -1.524221729350888754e-05, -1.527143592487972365e-05, -1.530062675991714511e-05, -1.532978975393266602e-05, -1.535892486229299654e-05, -1.538803204040542646e-05, -1.541711124373656839e-05, -1.544616242779770068e-05, -1.547518554815034090e-05, -1.550418056041000326e-05, -1.553314742023993061e-05, -1.556208608334966459e-05, -1.559099650550703966e-05, -1.561987864252505748e-05, -1.564873245026728417e-05, -1.567755788465317310e-05, -1.570635490164349926e-05, -1.573512345725901440e-05, -1.576386350756602705e-05, -1.579257500868298233e-05, -1.582125791677791744e-05, -1.584991218807509564e-05, -1.587853777884069473e-05, -1.590713464540121486e-05, -1.593570274412888914e-05, -1.596424203144751808e-05, -1.599275246383711127e-05, -1.602123399782148685e-05, -1.604968658997968953e-05, -1.607811019694483517e-05, -1.610650477539789704e-05, -1.613487028207131411e-05, -1.616320667375447645e-05, -1.619151390727946460e-05, -1.621979193953932175e-05, -1.624804072747365759e-05, -1.627626022807551940e-05, -1.630445039838988099e-05, -1.633261119551390015e-05, -1.636074257659547536e-05, -1.638884449883868031e-05, -1.641691691949600170e-05, -1.644495979587231354e-05, -1.647297308532993899e-05, -1.650095674527605669e-05, -1.652891073317431188e-05, -1.655683500654337307e-05, -1.658472952295078935e-05, -1.661259424001818776e-05, -1.664042911541997228e-05, -1.666823410688204313e-05, -1.669600917218717366e-05, -1.672375426916723469e-05, -1.675146935570850023e-05, -1.677915438975022792e-05, -1.680680932928499782e-05, -1.683443413235727920e-05, -1.686202875706866187e-05, -1.688959316157037516e-05, -1.691712730406820070e-05, -1.694463114282159150e-05, -1.697210463614344162e-05, -1.699954774239901542e-05, -1.702696042001106372e-05, -1.705434262745234277e-05, -1.708169432325058127e-05, -1.710901546598738259e-05, -1.713630601429714736e-05, -1.716356592687192189e-05, -1.719079516245413061e-05, -1.721799367984143468e-05, -1.724516143788574940e-05, -1.727229839549329504e-05, -1.729940451162325179e-05, -1.732647974529292998e-05, -1.735352405557035352e-05, -1.738053740157920993e-05, -1.740751974249781357e-05, -1.743447103755779785e-05, -1.746139124604918045e-05, -1.748828032731300771e-05, -1.751513824074629112e-05, -1.754196494580103157e-05, -1.756876040198405669e-05, -1.759552456885591292e-05, -1.762225740603585967e-05, -1.764895887319579095e-05, -1.767562893005916475e-05, -1.770226753641191623e-05, -1.772887465209032818e-05, -1.775545023698614370e-05, -1.778199425105126557e-05, -1.780850665428455949e-05, -1.783498740674884211e-05, -1.786143646855776224e-05, -1.788785379988054421e-05, -1.791423936094567416e-05, -1.794059311203508942e-05, -1.796691501348280287e-05, -1.799320502568594831e-05, -1.801946310909280000e-05, -1.804568922420766511e-05, -1.807188333159551533e-05, -1.809804539186915596e-05, -1.812417536570608195e-05, -1.815027321383486767e-05, -1.817633889704184841e-05, -1.820237237616834203e-05, -1.822837361211694754e-05, -1.825434256583823313e-05, -1.828027919834770729e-05, -1.830618347071271356e-05, -1.833205534405713661e-05, -1.835789477956632182e-05, -1.838370173847516940e-05, -1.840947618207908142e-05, -1.843521807173255912e-05, -1.846092736884349394e-05, -1.848660403487668098e-05, -1.851224803135884025e-05, -1.853785931986537918e-05, -1.856343786203704533e-05, -1.858898361956722430e-05, -1.861449655420640862e-05, -1.863997662776715802e-05, -1.866542380211234938e-05, -1.869083803916588322e-05, -1.871621930091126067e-05, -1.874156754938624382e-05, -1.876688274668721957e-05, -1.879216485496819681e-05, -1.881741383644100626e-05, -1.884262965337393171e-05, -1.886781226809664650e-05, -1.889296164299319672e-05, -1.891807774050667342e-05, -1.894316052313818941e-05, -1.896820995344569342e-05, -1.899322599404866941e-05, -1.901820860762139085e-05, -1.904315775689729474e-05, -1.906807340466833451e-05, -1.909295551378450569e-05, -1.911780404715317163e-05, -1.914261896774344102e-05, -1.916740023857965925e-05, -1.919214782274559616e-05, -1.921686168338370402e-05, -1.924154178369400287e-05, -1.926618808693852570e-05, -1.929080055643470147e-05, -1.931537915555971900e-05, -1.933992384774986631e-05, -1.936443459650015789e-05, -1.938891136536348092e-05, -1.941335411795508791e-05, -1.943776281794601358e-05, -1.946213742906747603e-05, -1.948647791510982983e-05, -1.951078423992260664e-05, -1.953505636741364448e-05, -1.955929426155332630e-05, -1.958349788636808828e-05, -1.960766720594503789e-05, -1.963180218443064267e-05, -1.965590278602972733e-05, -1.967996897501026460e-05, -1.970400071569633466e-05, -1.972799797247289224e-05, -1.975196070978472312e-05, -1.977588889213618658e-05, -1.979978248409066993e-05, -1.982364145027452215e-05, -1.984746575537094505e-05, -1.987125536412410651e-05, -1.989501024133822564e-05, -1.991873035187770492e-05, -1.994241566066591053e-05, -1.996606613269104051e-05, -1.998968173299353791e-05, -2.001326242668210987e-05, -2.003680817892123216e-05, -2.006031895493592647e-05, -2.008379472001491477e-05, -2.010723543950528297e-05, -2.013064107881134252e-05, -2.015401160340463899e-05, -2.017734697881297786e-05, -2.020064717062484942e-05, -2.022391214449378256e-05, -2.024714186612680815e-05, -2.027033630129910596e-05, -2.029349541584254935e-05, -2.031661917565005565e-05, -2.033970754667863211e-05, -2.036276049494433770e-05, -2.038577798652102616e-05, -2.040875998755015125e-05, -2.043170646423014152e-05, -2.045461738282058133e-05, -2.047749270964685254e-05, -2.050033241108903501e-05, -2.052313645359193548e-05, -2.054590480366387460e-05, -2.056863742787158443e-05, -2.059133429284327126e-05, -2.061399536527301008e-05, -2.063662061190904193e-05, -2.065920999956880028e-05, -2.068176349512714066e-05, -2.070428106552084008e-05, -2.072676267775249004e-05, -2.074920829888046760e-05, -2.077161789602822569e-05, -2.079399143638308012e-05, -2.081632888719150349e-05, -2.083863021576287585e-05, -2.086089538946885109e-05, -2.088312437574202206e-05, -2.090531714208046401e-05, -2.092747365604139545e-05, -2.094959388524527435e-05, -2.097167779737495790e-05, -2.099372536017580078e-05, -2.101573654145437103e-05, -2.103771130908298681e-05, -2.105964963099335341e-05, -2.108155147518072056e-05, -2.110341680970309296e-05, -2.112524560268099990e-05, -2.114703782229687860e-05, -2.116879343679883168e-05, -2.119051241449468434e-05, -2.121219472375622634e-05, -2.123384033301818196e-05, -2.125544921077705132e-05, -2.127702132559542681e-05, -2.129855664609606725e-05, -2.132005514096556729e-05, -2.134151677895382201e-05, -2.136294152887377625e-05, -2.138432935960077745e-05, -2.140568024007608917e-05, -2.142699413930167674e-05, -2.144827102634345645e-05, -2.146951087033115670e-05, -2.149071364045757255e-05, -2.151187930597819984e-05, -2.153300783621493500e-05, -2.155409920055028139e-05, -2.157515336843138790e-05, -2.159617030936896817e-05, -2.161714999293653486e-05, -2.163809238877417403e-05, -2.165899746658397456e-05, -2.167986519612869322e-05, -2.170069554724100085e-05, -2.172148848981340612e-05, -2.174224399380251098e-05, -2.176296202923182958e-05, -2.178364256618582181e-05, -2.180428557481423684e-05, -2.182489102533074772e-05, -2.184545888801324616e-05, -2.186598913320297516e-05, -2.188648173130911315e-05, -2.190693665279844357e-05, -2.192735386820890062e-05, -2.194773334813880858e-05, -2.196807506325105597e-05, -2.198837898427567390e-05, -2.200864508200550606e-05, -2.202887332729479587e-05, -2.204906369106818874e-05, -2.206921614431132662e-05, -2.208933065807432082e-05, -2.210940720347572293e-05, -2.212944575169239426e-05, -2.214944627397243501e-05, -2.216940874162496222e-05, -2.218933312602415525e-05, -2.220921939861157660e-05, -2.222906753089233997e-05, -2.224887749443330777e-05, -2.226864926087211030e-05, -2.228838280190766240e-05, -2.230807808930415805e-05, -2.232773509489443476e-05, -2.234735379057092391e-05, -2.236693414829433451e-05, -2.238647614009215225e-05, -2.240597973805456020e-05, -2.242544491433706800e-05, -2.244487164116419476e-05, -2.246425989081943342e-05, -2.248360963565814257e-05, -2.250292084809764635e-05, -2.252219350062059885e-05, -2.254142756577894147e-05, -2.256062301618479897e-05, -2.257977982451861104e-05, -2.259889796352829877e-05, -2.261797740602478895e-05, -2.263701812488570715e-05, -2.265602009305449000e-05, -2.267498328353940602e-05, -2.269390766941737408e-05, -2.271279322382841698e-05, -2.273163991997958157e-05, -2.275044773114362072e-05, -2.276921663065948462e-05, -2.278794659193141955e-05, -2.280663758843204766e-05, -2.282528959369776929e-05, -2.284390258133188348e-05, -2.286247652500394075e-05, -2.288101139844967203e-05, -2.289950717547029743e-05, -2.291796382993578228e-05, -2.293638133578005981e-05, -2.295475966700417198e-05, -2.297309879767549362e-05, -2.299139870192712590e-05, -2.300965935396122691e-05, -2.302788072804378712e-05, -2.304606279850824458e-05, -2.306420553975468523e-05, -2.308230892624988365e-05, -2.310037293252607650e-05, -2.311839753318525867e-05, -2.313638270289316261e-05, -2.315432841638333421e-05, -2.317223464845604184e-05, -2.319010137397849999e-05, -2.320792856788384261e-05, -2.322571620517465698e-05, -2.324346426091792860e-05, -2.326117271024845642e-05, -2.327884152836798550e-05, -2.329647069054457679e-05, -2.331406017211577506e-05, -2.333160994848452617e-05, -2.334911999511855030e-05, -2.336659028755753832e-05, -2.338402080140524728e-05, -2.340141151233258700e-05, -2.341876239608014086e-05, -2.343607342845332412e-05, -2.345334458532586017e-05, -2.347057584263874039e-05, -2.348776717639950581e-05, -2.350491856268556077e-05, -2.352202997764016470e-05, -2.353910139747173759e-05, -2.355613279846083277e-05, -2.357312415695263217e-05, -2.359007544935967377e-05, -2.360698665216465363e-05, -2.362385774191621098e-05, -2.364068869522838279e-05, -2.365747948878763751e-05, -2.367423009934495023e-05, -2.369094050371920097e-05, -2.370761067880016302e-05, -2.372424060153996488e-05, -2.374083024896398301e-05, -2.375737959816257152e-05, -2.377388862629377936e-05, -2.379035731058611847e-05, -2.380678562833444717e-05, -2.382317355689940100e-05, -2.383952107371427057e-05, -2.385582815627722584e-05, -2.387209478215467036e-05, -2.388832092898430072e-05, -2.390450657446633475e-05, -2.392065169637482781e-05, -2.393675627254878235e-05, -2.395282028089644748e-05, -2.396884369939417036e-05, -2.398482650608670791e-05, -2.400076867908630866e-05, -2.401667019657595175e-05, -2.403253103680473912e-05, -2.404835117809013165e-05, -2.406413059882116790e-05, -2.407986927745079335e-05, -2.409556719250261639e-05, -2.411122432257057282e-05, -2.412684064631462301e-05, -2.414241614246425514e-05, -2.415795078981739768e-05, -2.417344456724011443e-05, -2.418889745366924725e-05, -2.420430942810817751e-05, -2.421968046962890984e-05, -2.423501055737529755e-05, -2.425029967055545668e-05, -2.426554778844857609e-05, -2.428075489040416870e-05, -2.429592095583834457e-05, -2.431104596423698893e-05, -2.432612989515469832e-05, -2.434117272821523462e-05, -2.435617444311041709e-05, -2.437113501960329708e-05, -2.438605443752387545e-05, -2.440093267677187399e-05, -2.441576971731600706e-05, -2.443056553919356139e-05, -2.444532012251279492e-05, -2.446003344744932166e-05, -2.447470549424842913e-05, -2.448933624322466169e-05, -2.450392567476173915e-05, -2.451847376931216382e-05, -2.453298050739951422e-05, -2.454744586961477574e-05, -2.456186983661886144e-05, -2.457625238914200555e-05, -2.459059350798332980e-05, -2.460489317401313717e-05, -2.461915136816935777e-05, -2.463336807145987645e-05, -2.464754326496218723e-05, -2.466167692982318324e-05, -2.467576904725857733e-05, -2.468981959855581589e-05, -2.470382856507023330e-05, -2.471779592822524507e-05, -2.473172166951741308e-05, -2.474560577051059765e-05, -2.475944821283809213e-05, -2.477324897820502500e-05, -2.478700804838418915e-05, -2.480072540521869811e-05, -2.481440103062142031e-05, -2.482803490657454533e-05, -2.484162701513186752e-05, -2.485517733841562151e-05, -2.486868585861599430e-05, -2.488215255799703754e-05, -2.489557741888990823e-05, -2.490896042369574183e-05, -2.492230155488773938e-05, -2.493560079500674597e-05, -2.494885812666447622e-05, -2.496207353254260291e-05, -2.497524699539272988e-05, -2.498837849803588714e-05, -2.500146802336577676e-05, -2.501451555434148498e-05, -2.502752107399714855e-05, -2.504048456543389773e-05, -2.505340601182333256e-05, -2.506628539640909489e-05, -2.507912270250355148e-05, -2.509191791348759062e-05, -2.510467101281585350e-05, -2.511738198401111661e-05, -2.513005081066591129e-05, -2.514267747644593224e-05, -2.515526196508260047e-05, -2.516780426038205890e-05, -2.518030434621829099e-05, -2.519276220653615314e-05, -2.520517782535126289e-05, -2.521755118674913831e-05, -2.522988227488533018e-05, -2.524217107398773265e-05, -2.525441756835263270e-05, -2.526662174234694632e-05, -2.527878358041046482e-05, -2.529090306704980022e-05, -2.530298018684402317e-05, -2.531501492444375825e-05, -2.532700726456858529e-05, -2.533895719200905872e-05, -2.535086469162648395e-05, -2.536272974835210756e-05, -2.537455234718950599e-05, -2.538633247321138035e-05, -2.539807011156078968e-05, -2.540976524745398345e-05, -2.542141786617437406e-05, -2.543302795307780879e-05, -2.544459549359204801e-05, -2.545612047321387512e-05, -2.546760287751127848e-05, -2.547904269212322104e-05, -2.549043990275941336e-05, -2.550179449519964607e-05, -2.551310645529641913e-05, -2.552437576897124537e-05, -2.553560242221723561e-05, -2.554678640109810594e-05, -2.555792769174825227e-05, -2.556902628037424112e-05, -2.558008215325223799e-05, -2.559109529672968792e-05, -2.560206569722514605e-05, -2.561299334122790831e-05, -2.562387821529786916e-05, -2.563472030606759168e-05, -2.564551960023880769e-05, -2.565627608458505366e-05, -2.566698974595080002e-05, -2.567766057125094625e-05, -2.568828854747321299e-05, -2.569887366167464203e-05, -2.570941590098404258e-05, -2.571991525260130347e-05, -2.573037170379728809e-05, -2.574078524191377346e-05, -2.575115585436483592e-05, -2.576148352863502159e-05, -2.577176825227834681e-05, -2.578201001292312967e-05, -2.579220879826687730e-05, -2.580236459607819339e-05, -2.581247739419861455e-05, -2.582254718053915779e-05, -2.583257394308274309e-05, -2.584255766988375287e-05, -2.585249834906679201e-05, -2.586239596882974385e-05, -2.587225051744068032e-05, -2.588206198323737736e-05, -2.589183035463207865e-05, -2.590155562010611529e-05, -2.591123776821244686e-05, -2.592087678757667787e-05, -2.593047266689440825e-05, -2.594002539493310699e-05, -2.594953496053160728e-05, -2.595900135260012010e-05, -2.596842456011980391e-05, -2.597780457214510921e-05, -2.598714137779866931e-05, -2.599643496627789354e-05, -2.600568532684964119e-05, -2.601489244885244069e-05, -2.602405632169783132e-05, -2.603317693486637539e-05, -2.604225427791130045e-05, -2.605128834045849256e-05, -2.606027911220359941e-05, -2.606922658291417499e-05, -2.607813074243097730e-05, -2.608699158066302501e-05, -2.609580908759430597e-05, -2.610458325327826815e-05, -2.611331406784007947e-05, -2.612200152147842015e-05, -2.613064560446053266e-05, -2.613924630712692102e-05, -2.614780361989036490e-05, -2.615631753323413404e-05, -2.616478803771280141e-05, -2.617321512395463863e-05, -2.618159878265680481e-05, -2.618993900458935811e-05, -2.619823578059503211e-05, -2.620648910158670489e-05, -2.621469895854946916e-05, -2.622286534254022572e-05, -2.623098824468695495e-05, -2.623906765619054985e-05, -2.624710356832248497e-05, -2.625509597242580917e-05, -2.626304485991714117e-05, -2.627095022228211256e-05, -2.627881205107946742e-05, -2.628663033794039828e-05, -2.629440507456668597e-05, -2.630213625273216673e-05, -2.630982386428245778e-05, -2.631746790113468284e-05, -2.632506835527877320e-05, -2.633262521877511973e-05, -2.634013848375656513e-05, -2.634760814242751621e-05, -2.635503418706414380e-05, -2.636241661001426076e-05, -2.636975540369833169e-05, -2.637705056060776865e-05, -2.638430207330580871e-05, -2.639150993442787647e-05, -2.639867413668089291e-05, -2.640579467284336342e-05, -2.641287153576684494e-05, -2.641990471837329636e-05, -2.642689421365731478e-05, -2.643384001468489195e-05, -2.644074211459372271e-05, -2.644760050659443818e-05, -2.645441518396832219e-05, -2.646118614006898504e-05, -2.646791336832184170e-05, -2.647459686222410842e-05, -2.648123661534454863e-05, -2.648783262132499761e-05, -2.649438487387782476e-05, -2.650089336678779369e-05, -2.650735809391152690e-05, -2.651377904917746512e-05, -2.652015622658555560e-05, -2.652648962020878016e-05, -2.653277922419095290e-05, -2.653902503274799076e-05, -2.654522704016778814e-05, -2.655138524080979002e-05, -2.655749962910634718e-05, -2.656357019956086634e-05, -2.656959694674801336e-05, -2.657557986531594270e-05, -2.658151894998368517e-05, -2.658741419554200506e-05, -2.659326559685452847e-05, -2.659907314885592383e-05, -2.660483684655294209e-05, -2.661055668502437604e-05, -2.661623265942055885e-05, -2.662186476496471600e-05, -2.662745299695116609e-05, -2.663299735074532772e-05, -2.663849782178652476e-05, -2.664395440558439839e-05, -2.664936709772077733e-05, -2.665473589385068410e-05, -2.666006078969890625e-05, -2.666534178106326928e-05, -2.667057886381399967e-05, -2.667577203389248826e-05, -2.668092128731182548e-05, -2.668602662015828205e-05, -2.669108802858793437e-05, -2.669610550883095049e-05, -2.670107905718804617e-05, -2.670600867003188411e-05, -2.671089434380814466e-05, -2.671573607503293388e-05, -2.672053386029465377e-05, -2.672528769625450714e-05, -2.672999757964474930e-05, -2.673466350726933858e-05, -2.673928547600530855e-05, -2.674386348279964755e-05, -2.674839752467307643e-05, -2.675288759871730416e-05, -2.675733370209586813e-05, -2.676173583204451020e-05, -2.676609398587061089e-05, -2.677040816095332151e-05, -2.677467835474424179e-05, -2.677890456476620016e-05, -2.678308678861388055e-05, -2.678722502395481172e-05, -2.679131926852667371e-05, -2.679536952014018110e-05, -2.679937577667801580e-05, -2.680333803609401388e-05, -2.680725629641417522e-05, -2.681113055573637892e-05, -2.681496081222995977e-05, -2.681874706413674164e-05, -2.682248930976991602e-05, -2.682618754751455700e-05, -2.682984177582747220e-05, -2.683345199323737893e-05, -2.683701819834458235e-05, -2.684054038982173441e-05, -2.684401856641279704e-05, -2.684745272693355722e-05, -2.685084287027174208e-05, -2.685418899538666323e-05, -2.685749110130934209e-05, -2.686074918714311636e-05, -2.686396325206249144e-05, -2.686713329531384856e-05, -2.687025931621545157e-05, -2.687334131415700645e-05, -2.687637928860057952e-05, -2.687937323907933703e-05, -2.688232316519837867e-05, -2.688522906663451395e-05, -2.688809094313631299e-05, -2.689090879452366270e-05, -2.689368262068900684e-05, -2.689641242159564177e-05, -2.689909819727891250e-05, -2.690173994784562310e-05, -2.690433767347458899e-05, -2.690689137441566457e-05, -2.690940105099118315e-05, -2.691186670359450343e-05, -2.691428833269078204e-05, -2.691666593881683118e-05, -2.691899952258093232e-05, -2.692128908466334439e-05, -2.692353462581568039e-05, -2.692573614686067358e-05, -2.692789364869355308e-05, -2.693000713228061070e-05, -2.693207659865941774e-05, -2.693410204893998718e-05, -2.693608348430305921e-05, -2.693802090600114145e-05, -2.693991431535824806e-05, -2.694176371377004199e-05, -2.694356910270372660e-05, -2.694533048369797453e-05, -2.694704785836250411e-05, -2.694872122837917381e-05, -2.695035059550103011e-05, -2.695193596155228384e-05, -2.695347732842925541e-05, -2.695497469809905348e-05, -2.695642807260047619e-05, -2.695783745404390275e-05, -2.695920284461094781e-05, -2.696052424655440055e-05, -2.696180166219904790e-05, -2.696303509394030245e-05, -2.696422454424546612e-05, -2.696537001565308650e-05, -2.696647151077280434e-05, -2.696752903228611588e-05, -2.696854258294529205e-05, -2.696951216557389347e-05, -2.697043778306733625e-05, -2.697131943839183152e-05, -2.697215713458485636e-05, -2.697295087475570270e-05, -2.697370066208410852e-05, -2.697440649982155207e-05, -2.697506839129060481e-05, -2.697568633988506348e-05, -2.697626034906987897e-05, -2.697679042238115973e-05, -2.697727656342625307e-05, -2.697771877588370110e-05, -2.697811706350314588e-05, -2.697847143010512615e-05, -2.697878187958179893e-05, -2.697904841589587576e-05, -2.697927104308142895e-05, -2.697944976524373922e-05, -2.697958458655882129e-05, -2.697967551127405751e-05, -2.697972254370764895e-05, -2.697972568824872383e-05, -2.697968494935779830e-05, -2.697960033156596670e-05, -2.697947183947554527e-05, -2.697929947775972999e-05, -2.697908325116264396e-05, -2.697882316449937135e-05, -2.697851922265600476e-05, -2.697817143058920143e-05, -2.697777979332691844e-05, -2.697734431596770800e-05, -2.697686500368118157e-05, -2.697634186170751189e-05, -2.697577489535789706e-05, -2.697516411001438106e-05, -2.697450951112963005e-05, -2.697381110422723737e-05, -2.697306889490141857e-05, -2.697228288881709272e-05, -2.697145309171020431e-05, -2.697057950938711677e-05, -2.696966214772501225e-05, -2.696870101267169511e-05, -2.696769611024550046e-05, -2.696664744653578204e-05, -2.696555502770206180e-05, -2.696441885997488032e-05, -2.696323894965507514e-05, -2.696201530311416700e-05, -2.696074792679424803e-05, -2.695943682720788014e-05, -2.695808201093821693e-05, -2.695668348463884452e-05, -2.695524125503383569e-05, -2.695375532891786176e-05, -2.695222571315587063e-05, -2.695065241468335793e-05, -2.694903544050608911e-05, -2.694737479770035020e-05, -2.694567049341277504e-05, -2.694392253486034520e-05, -2.694213092933032570e-05, -2.694029568418039369e-05, -2.693841680683840470e-05, -2.693649430480258238e-05, -2.693452818564142021e-05, -2.693251845699359007e-05, -2.693046512656783038e-05, -2.692836820214352552e-05, -2.692622769156989603e-05, -2.692404360276627983e-05, -2.692181594372235247e-05, -2.691954472249774086e-05, -2.691722994722236549e-05, -2.691487162609606772e-05, -2.691246976738870126e-05, -2.691002437944038628e-05, -2.690753547066114014e-05, -2.690500304953074518e-05, -2.690242712459941287e-05, -2.689980770448700448e-05, -2.689714479788334284e-05, -2.689443841354810725e-05, -2.689168856031103343e-05, -2.688889524707171699e-05, -2.688605848279958631e-05, -2.688317827653371285e-05, -2.688025463738307873e-05, -2.687728757452660056e-05, -2.687427709721269226e-05, -2.687122321475969542e-05, -2.686812593655563196e-05, -2.686498527205818376e-05, -2.686180123079482147e-05, -2.685857382236227252e-05, -2.685530305642742241e-05, -2.685198894272654215e-05, -2.684863149106520025e-05, -2.684523071131895383e-05, -2.684178661343286418e-05, -2.683829920742091731e-05, -2.683476850336737250e-05, -2.683119451142560014e-05, -2.682757724181816304e-05, -2.682391670483739581e-05, -2.682021291084500506e-05, -2.681646587027194744e-05, -2.681267559361859900e-05, -2.680884209145439949e-05, -2.680496537441837411e-05, -2.680104545321886585e-05, -2.679708233863315262e-05, -2.679307604150804356e-05, -2.678902657275951317e-05, -2.678493394337236243e-05, -2.678079816440096084e-05, -2.677661924696855521e-05, -2.677239720226755771e-05, -2.676813204155965083e-05, -2.676382377617504883e-05, -2.675947241751354801e-05, -2.675507797704363227e-05, -2.675064046630285259e-05, -2.674615989689758645e-05, -2.674163628050347491e-05, -2.673706962886448409e-05, -2.673245995379390806e-05, -2.672780726717364041e-05, -2.672311158095462145e-05, -2.671837290715637069e-05, -2.671359125786742725e-05, -2.670876664524447574e-05, -2.670389908151349486e-05, -2.669898857896904927e-05, -2.669403514997406254e-05, -2.668903880696066086e-05, -2.668399956242870595e-05, -2.667891742894742813e-05, -2.667379241915409819e-05, -2.666862454575486086e-05, -2.666341382152407412e-05, -2.665816025930482761e-05, -2.665286387200824464e-05, -2.664752467261418016e-05, -2.664214267417084131e-05, -2.663671788979466541e-05, -2.663125033267043856e-05, -2.662574001605152267e-05, -2.662018695325859164e-05, -2.661459115768213183e-05, -2.660895264277935210e-05, -2.660327142207643687e-05, -2.659754750916768897e-05, -2.659178091771496040e-05, -2.658597166144858068e-05, -2.658011975416755681e-05, -2.657422520973776390e-05, -2.656828804209373420e-05, -2.656230826523825724e-05, -2.655628589324089589e-05, -2.655022094024083568e-05, -2.654411342044355100e-05, -2.653796334812329527e-05, -2.653177073762176270e-05, -2.652553560334889801e-05, -2.651925795978142262e-05, -2.651293782146528087e-05, -2.650657520301264491e-05, -2.650017011910421185e-05, -2.649372258448824154e-05, -2.648723261397993315e-05, -2.648070022246302776e-05, -2.647412542488866995e-05, -2.646750823627455734e-05, -2.646084867170679736e-05, -2.645414674633901272e-05, -2.644740247539106750e-05, -2.644061587415217067e-05, -2.643378695797685778e-05, -2.642691574228836889e-05, -2.642000224257705620e-05, -2.641304647439934725e-05, -2.640604845338063162e-05, -2.639900819521271303e-05, -2.639192571565398556e-05, -2.638480103053077533e-05, -2.637763415573625967e-05, -2.637042510723065013e-05, -2.636317390104128051e-05, -2.635588055326257981e-05, -2.634854508005536744e-05, -2.634116749764796797e-05, -2.633374782233548265e-05, -2.632628607047983349e-05, -2.631878225851019010e-05, -2.631123640292147220e-05, -2.630364852027636214e-05, -2.629601862720377687e-05, -2.628834674039967089e-05, -2.628063287662643321e-05, -2.627287705271343280e-05, -2.626507928555560579e-05, -2.625723959211573560e-05, -2.624935798942245403e-05, -2.624143449457101371e-05, -2.623346912472343715e-05, -2.622546189710727338e-05, -2.621741282901735292e-05, -2.620932193781450709e-05, -2.620118924092613386e-05, -2.619301475584547275e-05, -2.618479850013277375e-05, -2.617654049141319330e-05, -2.616824074737931504e-05, -2.615989928578945915e-05, -2.615151612446779754e-05, -2.614309128130498742e-05, -2.613462477425778846e-05, -2.612611662134802263e-05, -2.611756684066451897e-05, -2.610897545036162284e-05, -2.610034246865960923e-05, -2.609166791384497419e-05, -2.608295180426898130e-05, -2.607419415834973518e-05, -2.606539499457068737e-05, -2.605655433148104286e-05, -2.604767218769560091e-05, -2.603874858189526997e-05, -2.602978353282546853e-05, -2.602077705929811056e-05, -2.601172918019042983e-05, -2.600263991444509170e-05, -2.599350928107019312e-05, -2.598433729913958114e-05, -2.597512398779119273e-05, -2.596586936623053771e-05, -2.595657345372612827e-05, -2.594723626961315498e-05, -2.593785783329190123e-05, -2.592843816422693004e-05, -2.591897728194846303e-05, -2.590947520605313260e-05, -2.589993195620032612e-05, -2.589034755211588916e-05, -2.588072201359070928e-05, -2.587105536047926247e-05, -2.586134761270337062e-05, -2.585159879024706513e-05, -2.584180891316099481e-05, -2.583197800156033209e-05, -2.582210607562393948e-05, -2.581219315559618902e-05, -2.580223926178728077e-05, -2.579224441456977673e-05, -2.578220863438233798e-05, -2.577213194172810852e-05, -2.576201435717329562e-05, -2.575185590135090701e-05, -2.574165659495717968e-05, -2.573141645875191540e-05, -2.572113551356066262e-05, -2.571081378027313422e-05, -2.570045127984160835e-05, -2.569004803328565822e-05, -2.567960406168594165e-05, -2.566911938618920538e-05, -2.565859402800600483e-05, -2.564802800840963008e-05, -2.563742134873964982e-05, -2.562677407039846565e-05, -2.561608619485150861e-05, -2.560535774362946514e-05, -2.559458873832644749e-05, -2.558377920060032581e-05, -2.557292915217330745e-05, -2.556203861482990753e-05, -2.555110761041979833e-05, -2.554013616085563069e-05, -2.552912428811386758e-05, -2.551807201423453666e-05, -2.550697936132144720e-05, -2.549584635154077380e-05, -2.548467300712343826e-05, -2.547345935036326984e-05, -2.546220540361730336e-05, -2.545091118930622312e-05, -2.543957672991412229e-05, -2.542820204798714769e-05, -2.541678716613593919e-05, -2.540533210703382053e-05, -2.539383689341718551e-05, -2.538230154808602653e-05, -2.537072609390184755e-05, -2.535911055379064561e-05, -2.534745495074067467e-05, -2.533575930780340783e-05, -2.532402364809263951e-05, -2.531224799478604394e-05, -2.530043237112215978e-05, -2.528857680040382902e-05, -2.527668130599601505e-05, -2.526474591132637186e-05, -2.525277063988510515e-05, -2.524075551522531787e-05, -2.522870056096135686e-05, -2.521660580077124549e-05, -2.520447125839511162e-05, -2.519229695763523157e-05, -2.518008292235678235e-05, -2.516782917648571728e-05, -2.515553574401115461e-05, -2.514320264898588914e-05, -2.513082991552186568e-05, -2.511841756779504103e-05, -2.510596563004347979e-05, -2.509347412656569087e-05, -2.508094308172354801e-05, -2.506837251994050762e-05, -2.505576246570157832e-05, -2.504311294355435769e-05, -2.503042397810657584e-05, -2.501769559402865353e-05, -2.500492781605417303e-05, -2.499212066897529404e-05, -2.497927417764782233e-05, -2.496638836698903113e-05, -2.495346326197627203e-05, -2.494049888764911628e-05, -2.492749526911025264e-05, -2.491445243152051359e-05, -2.490137040010409984e-05, -2.488824920014635772e-05, -2.487508885699195636e-05, -2.486188939605019348e-05, -2.484865084278786682e-05, -2.483537322273484080e-05, -2.482205656148209154e-05, -2.480870088467993493e-05, -2.479530621804048639e-05, -2.478187258733852819e-05, -2.476840001840634263e-05, -2.475488853713916345e-05, -2.474133816949286184e-05, -2.472774894148190667e-05, -2.471412087918509393e-05, -2.470045400873798096e-05, -2.468674835633884618e-05, -2.467300394824584311e-05, -2.465922081077827425e-05, -2.464539897031332494e-05, -2.463153845329262281e-05, -2.461763928621397746e-05, -2.460370149563777053e-05, -2.458972510818459076e-05, -2.457571015053267594e-05, -2.456165664942402851e-05, -2.454756463165884547e-05, -2.453343412409607740e-05, -2.451926515365641002e-05, -2.450505774731977056e-05, -2.449081193212593419e-05, -2.447652773517500178e-05, -2.446220518362507900e-05, -2.444784430469574242e-05, -2.443344512566561356e-05, -2.441900767387280614e-05, -2.440453197671482448e-05, -2.439001806164961374e-05, -2.437546595619240563e-05, -2.436087568791974012e-05, -2.434624728446675151e-05, -2.433158077352815779e-05, -2.431687618285753897e-05, -2.430213354026842127e-05, -2.428735287363157678e-05, -2.427253421087872333e-05, -2.425767757999984441e-05, -2.424278300904393802e-05, -2.422785052611969766e-05, -2.421288015939257479e-05, -2.419787193708879041e-05, -2.418282588749276685e-05, -2.416774203894739883e-05, -2.415262041985448372e-05, -2.413746105867492825e-05, -2.412226398392623112e-05, -2.410702922418646402e-05, -2.409175680809127321e-05, -2.407644676433477729e-05, -2.406109912166955371e-05, -2.404571390890691655e-05, -2.403029115491460925e-05, -2.401483088862033839e-05, -2.399933313900945962e-05, -2.398379793512528935e-05, -2.396822530606980951e-05, -2.395261528100103832e-05, -2.393696788913629648e-05, -2.392128315975240030e-05, -2.390556112218043716e-05, -2.388980180581165412e-05, -2.387400524009491680e-05, -2.385817145453507973e-05, -2.384230047869613045e-05, -2.382639234219923128e-05, -2.381044707472294961e-05, -2.379446470600386107e-05, -2.377844526583394399e-05, -2.376238878406398115e-05, -2.374629529060381722e-05, -2.373016481541656168e-05, -2.371399738852508730e-05, -2.369779304000959740e-05, -2.368155180000497637e-05, -2.366527369870462840e-05, -2.364895876636103657e-05, -2.363260703327929821e-05, -2.361621852982410114e-05, -2.359979328641691827e-05, -2.358333133353317511e-05, -2.356683270170979854e-05, -2.355029742153538446e-05, -2.353372552365804129e-05, -2.351711703878220516e-05, -2.350047199766673234e-05, -2.348379043112805366e-05, -2.346707237004132303e-05, -2.345031784533360393e-05, -2.343352688799092012e-05, -2.341669952905551461e-05, -2.339983579962299351e-05, -2.338293573084974599e-05, -2.336599935394339318e-05, -2.334902670017015056e-05, -2.333201780085151773e-05, -2.331497268736470877e-05, -2.329789139114271993e-05, -2.328077394367514282e-05, -2.326362037650471870e-05, -2.324643072123228508e-05, -2.322920500951381796e-05, -2.321194327305829049e-05, -2.319464554363417818e-05, -2.317731185306317395e-05, -2.315994223322081149e-05, -2.314253671604014822e-05, -2.312509533350862444e-05, -2.310761811766874439e-05, -2.309010510061891986e-05, -2.307255631451026503e-05, -2.305497179155121111e-05, -2.303735156400488053e-05, -2.301969566418648824e-05, -2.300200412447030773e-05, -2.298427697728316918e-05, -2.296651425510509305e-05, -2.294871599047282391e-05, -2.293088221597712332e-05, -2.291301296426299680e-05, -2.289510826803003611e-05, -2.287716816003293414e-05, -2.285919267307841198e-05, -2.284118184002965053e-05, -2.282313569380329201e-05, -2.280505426737021587e-05, -2.278693759375597584e-05, -2.276878570603789291e-05, -2.275059863734969708e-05, -2.273237642087805790e-05, -2.271411908986349252e-05, -2.269582667760041648e-05, -2.267749921743757060e-05, -2.265913674277519874e-05, -2.264073928706933031e-05, -2.262230688382882248e-05, -2.260383956661600054e-05, -2.258533736904734906e-05, -2.256680032479043208e-05, -2.254822846756843321e-05, -2.252962183115693015e-05, -2.251098044938477217e-05, -2.249230435613368034e-05, -2.247359358533969429e-05, -2.245484817098900474e-05, -2.243606814712256479e-05, -2.241725354783644908e-05, -2.239840440727491145e-05, -2.237952075963799137e-05, -2.236060263917852213e-05, -2.234165008019958307e-05, -2.232266311705908022e-05, -2.230364178416680552e-05, -2.228458611598484328e-05, -2.226549614702862399e-05, -2.224637191186325830e-05, -2.222721344510786027e-05, -2.220802078143621489e-05, -2.218879395556929365e-05, -2.216953300228347414e-05, -2.215023795640702321e-05, -2.213090885281778286e-05, -2.211154572644793054e-05, -2.209214861228069268e-05, -2.207271754535090037e-05, -2.205325256074530779e-05, -2.203375369360298190e-05, -2.201422097911129086e-05, -2.199465445251493339e-05, -2.197505414910416166e-05, -2.195542010422408169e-05, -2.193575235327106533e-05, -2.191605093169019219e-05, -2.189631587497946452e-05, -2.187654721869050175e-05, -2.185674499842101885e-05, -2.183690924982299508e-05, -2.181704000859952309e-05, -2.179713731050106836e-05, -2.177720119133471209e-05, -2.175723168695272634e-05, -2.173722883326118335e-05, -2.171719266621594731e-05, -2.169712322182364682e-05, -2.167702053614118017e-05, -2.165688464527680635e-05, -2.163671558538660445e-05, -2.161651339267967441e-05, -2.159627810341516567e-05, -2.157600975389892969e-05, -2.155570838049234261e-05, -2.153537401960398741e-05, -2.151500670769100241e-05, -2.149460648126262860e-05, -2.147417337687751950e-05, -2.145370743114388682e-05, -2.143320868072068293e-05, -2.141267716231366386e-05, -2.139211291268103732e-05, -2.137151596863047772e-05, -2.135088636701566693e-05, -2.133022414474473069e-05, -2.130952933877292707e-05, -2.128880198610257865e-05, -2.126804212378820559e-05, -2.124724978893232093e-05, -2.122642501868670452e-05, -2.120556785025206085e-05, -2.118467832087886268e-05, -2.116375646786411536e-05, -2.114280232855585289e-05, -2.112181594035029530e-05, -2.110079734069223825e-05, -2.107974656707598478e-05, -2.105866365704169970e-05, -2.103754864818075941e-05, -2.101640157813194367e-05, -2.099522248458268243e-05, -2.097401140526829348e-05, -2.095276837797358169e-05, -2.093149344052852925e-05, -2.091018663081406571e-05, -2.088884798675813770e-05, -2.086747754633671865e-05, -2.084607534757458461e-05, -2.082464142854157719e-05, -2.080317582735799744e-05, -2.078167858219096022e-05, -2.076014973125517351e-05, -2.073858931281299253e-05, -2.071699736517498906e-05, -2.069537392669653950e-05, -2.067371903578310363e-05, -2.065203273088654846e-05, -2.063031505050578861e-05, -2.060856603318711493e-05, -2.058678571752465533e-05, -2.056497414215683074e-05, -2.054313134577175583e-05, -2.052125736710357982e-05, -2.049935224493325896e-05, -2.047741601808928161e-05, -2.045544872544416491e-05, -2.043345040591873735e-05, -2.041142109848340257e-05, -2.038936084214914727e-05, -2.036726967597736338e-05, -2.034514763907566709e-05, -2.032299477059502238e-05, -2.030081110973558549e-05, -2.027859669574253417e-05, -2.025635156790725689e-05, -2.023407576556698016e-05, -2.021176932810594083e-05, -2.018943229495036147e-05, -2.016706470557889596e-05, -2.014466659950929050e-05, -2.012223801630868682e-05, -2.009977899558990208e-05, -2.007728957700729869e-05, -2.005476980026646764e-05, -2.003221970511567340e-05, -2.000963933134628769e-05, -1.998702871879794613e-05, -1.996438790735540411e-05, -1.994171693694472171e-05, -1.991901584754359757e-05, -1.989628467916801279e-05, -1.987352347188275792e-05, -1.985073226579727907e-05, -1.982791110106200860e-05, -1.980506001787781458e-05, -1.978217905648732721e-05, -1.975926825717563674e-05, -1.973632766027534521e-05, -1.971335730616330365e-05, -1.969035723525693258e-05, -1.966732748802374267e-05, -1.964426810497236294e-05, -1.962117912665372664e-05, -1.959806059366565875e-05, -1.957491254664894578e-05, -1.955173502628831153e-05, -1.952852807331336574e-05, -1.950529172849445030e-05, -1.948202603264852779e-05, -1.945873102663618298e-05, -1.943540675135763839e-05, -1.941205324776244776e-05, -1.938867055684069703e-05, -1.936525871962372942e-05, -1.934181777718915309e-05, -1.931834777065682623e-05, -1.929484874118959900e-05, -1.927132072999457736e-05, -1.924776377831849145e-05, -1.922417792745444141e-05, -1.920056321873682190e-05, -1.917691969354328387e-05, -1.915324739329391803e-05, -1.912954635945241693e-05, -1.910581663352202617e-05, -1.908205825705151093e-05, -1.905827127163103255e-05, -1.903445571889307694e-05, -1.901061164051240371e-05, -1.898673907820692711e-05, -1.896283807373356218e-05, -1.893890866889445213e-05, -1.891495090553263830e-05, -1.889096482553299870e-05, -1.886695047082330507e-05, -1.884290788336996742e-05, -1.881883710518428510e-05, -1.879473817831791012e-05, -1.877061114486423289e-05, -1.874645604695789432e-05, -1.872227292677618852e-05, -1.869806182653437358e-05, -1.867382278849220737e-05, -1.864955585494966145e-05, -1.862526106824755133e-05, -1.860093847076789558e-05, -1.857658810493464431e-05, -1.855221001320948800e-05, -1.852780423809802734e-05, -1.850337082214565662e-05, -1.847890980793816005e-05, -1.845442123810334145e-05, -1.842990515530606741e-05, -1.840536160225375269e-05, -1.838079062169746474e-05, -1.835619225642213536e-05, -1.833156654925716223e-05, -1.830691354307203137e-05, -1.828223328077327128e-05, -1.825752580531028385e-05, -1.823279115967167167e-05, -1.820802938688563104e-05, -1.818324053002120218e-05, -1.815842463218411199e-05, -1.813358173652163946e-05, -1.810871188622394711e-05, -1.808381512451410643e-05, -1.805889149465899742e-05, -1.803394103996474484e-05, -1.800896380377251687e-05, -1.798395982946898093e-05, -1.795892916047671524e-05, -1.793387184025516091e-05, -1.790878791230605645e-05, -1.788367742016988709e-05, -1.785854040742157500e-05, -1.783337691768245977e-05, -1.780818699460487900e-05, -1.778297068188408776e-05, -1.775772802325381675e-05, -1.773245906248195920e-05, -1.770716384338118248e-05, -1.768184240979920084e-05, -1.765649480561972399e-05, -1.763112107476794258e-05, -1.760572126120694010e-05, -1.758029540893346453e-05, -1.755484356198990875e-05, -1.752936576444870823e-05, -1.750386206042447727e-05, -1.747833249406836439e-05, -1.745277710956913994e-05, -1.742719595115307750e-05, -1.740158906308497032e-05, -1.737595648966369625e-05, -1.735029827522872634e-05, -1.732461446415682144e-05, -1.729890510085727522e-05, -1.727317022978326445e-05, -1.724740989542145419e-05, -1.722162414229336659e-05, -1.719581301496055797e-05, -1.716997655802033961e-05, -1.714411481610662139e-05, -1.711822783389097227e-05, -1.709231565607832414e-05, -1.706637832741330425e-05, -1.704041589267570527e-05, -1.701442839668173551e-05, -1.698841588428379190e-05, -1.696237840037155100e-05, -1.693631598986735436e-05, -1.691022869773293731e-05, -1.688411656896472967e-05, -1.685797964859511611e-05, -1.683181798169218881e-05, -1.680563161336084862e-05, -1.677942058873821415e-05, -1.675318495300030314e-05, -1.672692475135748898e-05, -1.670064002905550699e-05, -1.667433083137649460e-05, -1.664799720363437327e-05, -1.662163919118170275e-05, -1.659525683940486310e-05, -1.656885019372539302e-05, -1.654241929959951555e-05, -1.651596420251960165e-05, -1.648948494800921009e-05, -1.646298158163013467e-05, -1.643645414897750503e-05, -1.640990269568099960e-05, -1.638332726740485235e-05, -1.635672790984865242e-05, -1.633010466874288192e-05, -1.630345758985576337e-05, -1.627678671898831640e-05, -1.625009210197578757e-05, -1.622337378468841941e-05, -1.619663181302699850e-05, -1.616986623292840177e-05, -1.614307709036663671e-05, -1.611626443134250413e-05, -1.608942830189504333e-05, -1.606256874809671749e-05, -1.603568581604996124e-05, -1.600877955189402801e-05, -1.598185000180040593e-05, -1.595489721197353950e-05, -1.592792122865235082e-05, -1.590092209810516422e-05, -1.587389986663568627e-05, -1.584685458058391046e-05, -1.581978628631568510e-05, -1.579269503023421263e-05, -1.576558085877539101e-05, -1.573844381840293810e-05, -1.571128395562006047e-05, -1.568410131695889594e-05, -1.565689594898153340e-05, -1.562966789828582688e-05, -1.560241721150180410e-05, -1.557514393528690276e-05, -1.554784811633875397e-05, -1.552052980137866512e-05, -1.549318903716452185e-05, -1.546582587048597694e-05, -1.543844034815962220e-05, -1.541103251704079949e-05, -1.538360242401285021e-05, -1.535615011598810123e-05, -1.532867563991382120e-05, -1.530117904276864272e-05, -1.527366037155756146e-05, -1.524611967332516337e-05, -1.521855699513852486e-05, -1.519097238410070766e-05, -1.516336588734432819e-05, -1.513573755203281114e-05, -1.510808742536041490e-05, -1.508041555455308705e-05, -1.505272198686389888e-05, -1.502500676957991817e-05, -1.499726995001864490e-05, -1.496951157552311543e-05, -1.494173169347384220e-05, -1.491393035127785321e-05, -1.488610759636988288e-05, -1.485826347621832165e-05, -1.483039803832021001e-05, -1.480251133020242262e-05, -1.477460339942295585e-05, -1.474667429356575407e-05, -1.471872406024796872e-05, -1.469075274711514039e-05, -1.466276040184218312e-05, -1.463474707213345715e-05, -1.460671280572380408e-05, -1.457865765037351206e-05, -1.455058165387578158e-05, -1.452248486405159915e-05, -1.449436732875084531e-05, -1.446622909585232506e-05, -1.443807021326492833e-05, -1.440989072892247491e-05, -1.438169069079111754e-05, -1.435347014686448670e-05, -1.432522914516445465e-05, -1.429696773374268550e-05, -1.426868596067542086e-05, -1.424038387407076263e-05, -1.421206152206383815e-05, -1.418371895281774717e-05, -1.415535621452367877e-05, -1.412697335540187523e-05, -1.409857042369670404e-05, -1.407014746768399658e-05, -1.404170453566602857e-05, -1.401324167597265007e-05, -1.398475893696243741e-05, -1.395625636701764826e-05, -1.392773401455161454e-05, -1.389919192800372292e-05, -1.387063015584045492e-05, -1.384204874655544461e-05, -1.381344774867050170e-05, -1.378482721073073782e-05, -1.375618718131046519e-05, -1.372752770901461629e-05, -1.369884884246729703e-05, -1.367015063032415512e-05, -1.364143312126740463e-05, -1.361269636400066753e-05, -1.358394040726263465e-05, -1.355516529980957106e-05, -1.352637109042898211e-05, -1.349755782793436180e-05, -1.346872556116157765e-05, -1.343987433897480844e-05, -1.341100421026801799e-05, -1.338211522395332035e-05, -1.335320742897354638e-05, -1.332428087429718525e-05, -1.329533560891321586e-05, -1.326637168184484403e-05, -1.323738914213184183e-05, -1.320838803884433732e-05, -1.317936842107630251e-05, -1.315033033794825206e-05, -1.312127383860047036e-05, -1.309219897220730101e-05, -1.306310578795885765e-05, -1.303399433507524061e-05, -1.300486466280125814e-05, -1.297571682040117825e-05, -1.294655085717150362e-05, -1.291736682242937912e-05, -1.288816476551372177e-05, -1.285894473579166325e-05, -1.282970678265442485e-05, -1.280045095551230136e-05, -1.277117730380861847e-05, -1.274188587700160454e-05, -1.271257672457858863e-05, -1.268324989605059297e-05, -1.265390544094735926e-05, -1.262454340882981183e-05, -1.259516384927863293e-05, -1.256576681189544006e-05, -1.253635234630894731e-05, -1.250692050217132480e-05, -1.247747132915267943e-05, -1.244800487695406867e-05, -1.241852119529567093e-05, -1.238902033391802897e-05, -1.235950234258853143e-05, -1.232996727109593079e-05, -1.230041516925182064e-05, -1.227084608689162160e-05, -1.224126007386944832e-05, -1.221165718006581235e-05, -1.218203745538223508e-05, -1.215240094974251316e-05, -1.212274771309278120e-05, -1.209307779540241129e-05, -1.206339124665913583e-05, -1.203368811687632183e-05, -1.200396845608809026e-05, -1.197423231435022755e-05, -1.194447974174166781e-05, -1.191471078835892279e-05, -1.188492550432401350e-05, -1.185512393977909828e-05, -1.182530614488777390e-05, -1.179547216983478244e-05, -1.176562206482754446e-05, -1.173575588009056347e-05, -1.170587366587336095e-05, -1.167597547244505362e-05, -1.164606135009567148e-05, -1.161613134913601883e-05, -1.158618551989888387e-05, -1.155622391273376169e-05, -1.152624657801464694e-05, -1.149625356613459593e-05, -1.146624492750706487e-05, -1.143622071256715001e-05, -1.140618097176609541e-05, -1.137612575557927880e-05, -1.134605511450077700e-05, -1.131596909904463481e-05, -1.128586775974469046e-05, -1.125575114715592077e-05, -1.122561931184901500e-05, -1.119547230441823026e-05, -1.116531017547603995e-05, -1.113513297565432468e-05, -1.110494075560437739e-05, -1.107473356599799426e-05, -1.104451145752089841e-05, -1.101427448088724447e-05, -1.098402268682081613e-05, -1.095375612606970863e-05, -1.092347484940079083e-05, -1.089317890759582414e-05, -1.086286835145778814e-05, -1.083254323181229682e-05, -1.080220359949546401e-05, -1.077184950536718650e-05, -1.074148100030560450e-05, -1.071109813520196012e-05, -1.068070096097477839e-05, -1.065028952855149853e-05, -1.061986388888280912e-05, -1.058942409293603614e-05, -1.055897019169754011e-05, -1.052850223616628203e-05, -1.049802027736804162e-05, -1.046752436633692835e-05, -1.043701455412989276e-05, -1.040649089182121402e-05, -1.037595343049718049e-05, -1.034540222126934757e-05, -1.031483731526240133e-05, -1.028425876361539693e-05, -1.025366661748841455e-05, -1.022306092805843780e-05, -1.019244174651379033e-05, -1.016180912406906062e-05, -1.013116311194597931e-05, -1.010050376138823383e-05, -1.006983112365596778e-05, -1.003914525002031246e-05, -1.000844619177683268e-05, -9.977734000233236321e-06, -9.947008726710599135e-06, -9.916270422550191836e-06, -9.885519139107799892e-06, -9.854754927755132992e-06, -9.823977839879659025e-06, -9.793187926885893265e-06, -9.762385240189989219e-06, -9.731569831227594012e-06, -9.700741751448427371e-06, -9.669901052317718198e-06, -9.639047785317109200e-06, -9.608182001939569609e-06, -9.577303753697104873e-06, -9.546413092115394941e-06, -9.515510068735142740e-06, -9.484594735111811592e-06, -9.453667142817014348e-06, -9.422727343432975490e-06, -9.391775388560503400e-06, -9.360811329813667611e-06, -9.329835218820874533e-06, -9.298847107226309108e-06, -9.267847046684222416e-06, -9.236835088867166531e-06, -9.205811285460388857e-06, -9.174775688163126395e-06, -9.143728348688561695e-06, -9.112669318765000235e-06, -9.081598650130432465e-06, -9.050516394540573850e-06, -9.019422603763367619e-06, -8.988317329580151983e-06, -8.957200623785741445e-06, -8.926072538189578769e-06, -8.894933124610244509e-06, -8.863782434883537705e-06, -8.832620520856951534e-06, -8.801447434390960800e-06, -8.770263227360212862e-06, -8.739067951648132036e-06, -8.707861659154900335e-06, -8.676644401791936513e-06, -8.645416231483210657e-06, -8.614177200165183204e-06, -8.582927359787995866e-06, -8.551666762309945586e-06, -8.520395459705671964e-06, -8.489113503960505849e-06, -8.457820947071836449e-06, -8.426517841048938542e-06, -8.395204237914366684e-06, -8.363880189696875717e-06, -8.332545748446562321e-06, -8.301200966215467966e-06, -8.269845895072628990e-06, -8.238480587098513289e-06, -8.207105094380790232e-06, -8.175719469021089985e-06, -8.144323763136411280e-06, -8.112918028846485377e-06, -8.081502318287562373e-06, -8.050076683606825867e-06, -8.018641176956683956e-06, -7.987195850510003971e-06, -7.955740756440581591e-06, -7.924275946938356944e-06, -7.892801474203654780e-06, -7.861317390443110247e-06, -7.829823747876336730e-06, -7.798320598737418325e-06, -7.766807995262168770e-06, -7.735285989702056665e-06, -7.703754634318396523e-06, -7.672213981376939612e-06, -7.640664083161477312e-06, -7.609104991961334665e-06, -7.577536760072702766e-06, -7.545959439805414173e-06, -7.514373083478778895e-06, -7.482777743415820337e-06, -7.451173471958697223e-06, -7.419560321448877944e-06, -7.387938344242573501e-06, -7.356307592704943799e-06, -7.324668119204509767e-06, -7.293019976127001505e-06, -7.261363215862700220e-06, -7.229697890807757057e-06, -7.198024053371101501e-06, -7.166341755968738301e-06, -7.134651051025078164e-06, -7.102951990974233710e-06, -7.071244628254384166e-06, -7.039529015315976335e-06, -7.007805204616208723e-06, -6.976073248620175025e-06, -6.944333199800891241e-06, -6.912585110640578921e-06, -6.880829033624913816e-06, -6.849065021251460633e-06, -6.817293126023896267e-06, -6.785513400453326093e-06, -6.753725897058286507e-06, -6.721930668365929073e-06, -6.690127766906408940e-06, -6.658317245221246739e-06, -6.626499155857486608e-06, -6.594673551369208983e-06, -6.562840484318670714e-06, -6.531000007270706167e-06, -6.499152172801028156e-06, -6.467297033490580770e-06, -6.435434641926726064e-06, -6.403565050703344862e-06, -6.371688312421953988e-06, -6.339804479686151427e-06, -6.307913605109910469e-06, -6.276015741311858004e-06, -6.244110940916603517e-06, -6.212199256554677251e-06, -6.180280740863796524e-06, -6.148355446483198233e-06, -6.116423426062005842e-06, -6.084484732253428902e-06, -6.052539417716179289e-06, -6.020587535115790885e-06, -5.988629137118814857e-06, -5.956664276399843256e-06, -5.924693005642832081e-06, -5.892715377528290757e-06, -5.860731444747341181e-06, -5.828741259995945199e-06, -5.796744875970626238e-06, -5.764742345376832067e-06, -5.732733720923195295e-06, -5.700719055322863220e-06, -5.668698401294843759e-06, -5.636671811558222757e-06, -5.604639338839160477e-06, -5.572601035872315465e-06, -5.540556955387853603e-06, -5.508507150125634218e-06, -5.476451672829446026e-06, -5.444390576242627116e-06, -5.412323913115082629e-06, -5.380251736204678117e-06, -5.348174098264270628e-06, -5.316091052055932084e-06, -5.284002650345097970e-06, -5.251908945894844788e-06, -5.219809991481398378e-06, -5.187705839874211704e-06, -5.155596543851409655e-06, -5.123482156194140179e-06, -5.091362729682137527e-06, -5.059238317100801753e-06, -5.027108971242442158e-06, -4.994974744893514201e-06, -4.962835690848664993e-06, -4.930691861904990419e-06, -4.898543310856277854e-06, -4.866390090508497547e-06, -4.834232253659917676e-06, -4.802069853116535596e-06, -4.769902941684985629e-06, -4.737731572175222468e-06, -4.705555797393359511e-06, -4.673375670157266125e-06, -4.641191243276452310e-06, -4.609002569567749819e-06, -4.576809701849492195e-06, -4.544612692935699886e-06, -4.512411595650297700e-06, -4.480206462814154349e-06, -4.447997347246443631e-06, -4.415784301771666335e-06, -4.383567379213935309e-06, -4.351346632398198575e-06, -4.319122114151672510e-06, -4.286893877297986306e-06, -4.254661974665725992e-06, -4.222426459082572965e-06, -4.190187383376683808e-06, -4.157944800376571707e-06, -4.125698762912510825e-06, -4.093449323810661290e-06, -4.061196535901607280e-06, -4.028940452014525208e-06, -3.996681124978557602e-06, -3.964418607622675044e-06, -3.932152952777093255e-06, -3.899884213267409931e-06, -3.867612441923111496e-06, -3.835337691571777706e-06, -3.803060015040417412e-06, -3.770779465156833138e-06, -3.738496094743762999e-06, -3.706209956627431918e-06, -3.673921103631708797e-06, -3.641629588579499040e-06, -3.609335464292585306e-06, -3.577038783593023000e-06, -3.544739599297311837e-06, -3.512437964224927161e-06, -3.480133931192463555e-06, -3.447827553014996872e-06, -3.415518882506033836e-06, -3.383207972478799959e-06, -3.350894875740459804e-06, -3.318579645100614852e-06, -3.286262333365506403e-06, -3.253942993339337794e-06, -3.221621677825623303e-06, -3.189298439621379194e-06, -3.156973331524219312e-06, -3.124646406333673069e-06, -3.092317716838206353e-06, -3.059987315829488957e-06, -3.027655256096542847e-06, -2.995321590421397734e-06, -2.962986371587559282e-06, -2.930649652374238276e-06, -2.898311485557664791e-06, -2.865971923912439211e-06, -2.833631020205714806e-06, -2.801288827204289516e-06, -2.768945397675960781e-06, -2.736600784376490970e-06, -2.704255040063934527e-06, -2.671908217492745157e-06, -2.639560369409420384e-06, -2.607211548559584443e-06, -2.574861807689357929e-06, -2.542511199532319420e-06, -2.510159776823776288e-06, -2.477807592294988360e-06, -2.445454698667271717e-06, -2.413101148667761982e-06, -2.380746995009177852e-06, -2.348392290405576338e-06, -2.316037087566497647e-06, -2.283681439192567386e-06, -2.251325397982609526e-06, -2.218969016634996567e-06, -2.186612347834616669e-06, -2.154255444267172415e-06, -2.121898358613338821e-06, -2.089541143542938298e-06, -2.057183851730667080e-06, -2.024826535835856649e-06, -1.992469248518245064e-06, -1.960112042430685274e-06, -1.927754970220480469e-06, -1.895398084529320765e-06, -1.863041437994628501e-06, -1.830685083243723031e-06, -1.798329072902360510e-06, -1.765973459590328685e-06, -1.733618295915639007e-06, -1.701263634488779014e-06, -1.668909527909717155e-06, -1.636556028769238982e-06, -1.604203189656060958e-06, -1.571851063150991856e-06, -1.539499701828277218e-06, -1.507149158256976623e-06, -1.474799484995086132e-06, -1.442450734598128469e-06, -1.410102959614713933e-06, -1.377756212580724035e-06, -1.345410546033605182e-06, -1.313066012499345540e-06, -1.280722664493806575e-06, -1.248380554529862688e-06, -1.216039735111529166e-06, -1.183700258735340299e-06, -1.151362177890254938e-06, -1.119025545059011113e-06, -1.086690412712285739e-06, -1.054356833317245205e-06, -1.022024859331706347e-06, -9.896945432054872605e-07, -9.573659373817591599e-07, -9.250390942912124411e-07, -8.927140663606025029e-07, -8.603909060069132658e-07, -8.280696656387007786e-07, -7.957503976560269376e-07, -7.634331544517945169e-07, -7.311179884059134402e-07, -6.988049518938619551e-07, -6.664940972808300350e-07, -6.341854769230828908e-07, -6.018791431693129411e-07, -5.695751483547963439e-07, -5.372735448099522644e-07, -5.049743848544929477e-07, -4.726777207987837892e-07, -4.403836049437540785e-07, -4.080920895822582343e-07, -3.758032269932302180e-07, -3.435170694487976579e-07, -3.112336692156376840e-07, -2.789530785419345797e-07, -2.466753496716947969e-07, -2.144005348389017674e-07, -1.821286862631151960e-07, -1.498598561580224934e-07, -1.175940967255984839e-07, -8.533146015745938756e-08, -5.307199863621869530e-08, -2.081576432964700206e-08, 1.143719060221642183e-08, 4.368681400571004064e-08, 7.593305374658239956e-08, 1.081758576956881304e-07, 1.404151737348268328e-07, 1.726509497611433587e-07, 2.048831336785786628e-07, 2.371116734037097109e-07, 2.693365168643911566e-07, 3.015576119998439092e-07, 3.337749067592977634e-07, 3.659883491092610597e-07, 3.981978870177984555e-07, 4.304034684747316025e-07, 4.626050414759149859e-07, 4.948025540290683283e-07, 5.269959541581699908e-07, 5.591851898963597370e-07, 5.913702092845769161e-07, 6.235509603845835936e-07, 6.557273912646775415e-07, 6.878994500055184484e-07, 7.200670847059669407e-07, 7.522302434673514755e-07, 7.843888744136800287e-07, 8.165429256759082581e-07, 8.486923453977704782e-07, 8.808370817416194231e-07, 9.129770828741301298e-07, 9.451122969793246585e-07, 9.772426722572033933e-07, 1.009368156916659399e-06, 1.041488699179866900e-06, 1.073604247288101772e-06, 1.105714749487478990e-06, 1.137820154041946749e-06, 1.169920409231929517e-06, 1.202015463347247899e-06, 1.234105264692929282e-06, 1.266189761587870158e-06, 1.298268902363466687e-06, 1.330342635369442700e-06, 1.362410908965338297e-06, 1.394473671524871213e-06, 1.426530871441783678e-06, 1.458582457115556570e-06, 1.490628376964420053e-06, 1.522668579423991337e-06, 1.554703012940180776e-06, 1.586731625975040841e-06, 1.618754367005368520e-06, 1.650771184521396859e-06, 1.682782027032579566e-06, 1.714786843059095690e-06, 1.746785581137651163e-06, 1.778778189820128844e-06, 1.810764617673679570e-06, 1.842744813279373685e-06, 1.874718725237990505e-06, 1.906686302161530627e-06, 1.938647492679012388e-06, 1.970602245435139269e-06, 2.002550509090359399e-06, 2.034492232319524490e-06, 2.066427363817715097e-06, 2.098355852291708028e-06, 2.130277646465791649e-06, 2.162192695080423339e-06, 2.194100946890886096e-06, 2.226002350673066146e-06, 2.257896855214981345e-06, 2.289784409322563870e-06, 2.321664961818329960e-06, 2.353538461541444284e-06, 2.385404857346387985e-06, 2.417264098108728667e-06, 2.449116132716672936e-06, 2.480960910076813098e-06, 2.512798379112823569e-06, 2.544628488765515513e-06, 2.576451187991510811e-06, 2.608266425769002734e-06, 2.640074151089294080e-06, 2.671874312962595962e-06, 2.703666860416672984e-06, 2.735451742495470195e-06, 2.767228908264971169e-06, 2.798998306806053287e-06, 2.830759887213225653e-06, 2.862513598607492986e-06, 2.894259390122202120e-06, 2.925997210908820043e-06, 2.957727010141279599e-06, 2.989448737007532872e-06, 3.021162340715308895e-06, 3.052867770490796092e-06, 3.084564975578683779e-06, 3.116253905240855618e-06, 3.147934508763569913e-06, 3.179606735441900466e-06, 3.211270534599699446e-06, 3.242925855574094991e-06, 3.274572647721186238e-06, 3.306210860421865825e-06, 3.337840443067669782e-06, 3.369461345073635915e-06, 3.401073515876982860e-06, 3.432676904930077165e-06, 3.464271461704760360e-06, 3.495857135698143932e-06, 3.527433876417045519e-06, 3.559001633397947971e-06, 3.590560356191469845e-06, 3.622109994368118035e-06, 3.653650497524050132e-06, 3.685181815266958621e-06, 3.716703897228934771e-06, 3.748216693065112962e-06, 3.779720152446653008e-06, 3.811214225065103660e-06, 3.842698860638115830e-06, 3.874174008895383972e-06, 3.905639619591473121e-06, 3.937095642504434415e-06, 3.968542027428870867e-06, 3.999978724181661606e-06, 4.031405682600572749e-06, 4.062822852543010564e-06, 4.094230183891677960e-06, 4.125627626546236290e-06, 4.157015130427548992e-06, 4.188392645483504934e-06, 4.219760121674910238e-06, 4.251117508988286099e-06, 4.282464757434520310e-06, 4.313801817041956317e-06, 4.345128637862048013e-06, 4.376445169968027358e-06, 4.407751363453666857e-06, 4.439047168438843726e-06, 4.470332535061313504e-06, 4.501607413482309791e-06, 4.532871753885320283e-06, 4.564125506476035948e-06, 4.595368621481144858e-06, 4.626601049154006456e-06, 4.657822739766213415e-06, 4.689033643613403136e-06, 4.720233711013858442e-06, 4.751422892308622782e-06, 4.782601137860159370e-06, 4.813768398058061042e-06, 4.844924623310638365e-06, 4.876069764050766712e-06, 4.907203770734364137e-06, 4.938326593839217393e-06, 4.969438183870613003e-06, 5.000538491353000763e-06, 5.031627466835661243e-06, 5.062705060891431843e-06, 5.093771224116807594e-06, 5.124825907130463933e-06, 5.155869060579142733e-06, 5.186900635129159103e-06, 5.217920581472193403e-06, 5.248928850323884318e-06, 5.279925392424011821e-06, 5.310910158535048742e-06, 5.341883099447926526e-06, 5.372844165973712285e-06, 5.403793308949191592e-06, 5.434730479235691952e-06, 5.465655627717656400e-06, 5.496568705308315233e-06, 5.527469662942819113e-06, 5.558358451576941414e-06, 5.589235022199648188e-06, 5.620099325819246639e-06, 5.650951313469088195e-06, 5.681790936211739296e-06, 5.712618145130789740e-06, 5.743432891336443946e-06, 5.774235125964234315e-06, 5.805024800173693924e-06, 5.835801865153959654e-06, 5.866566272117002697e-06, 5.897317972296199618e-06, 5.928056916958949751e-06, 5.958783057392932096e-06, 5.989496344911617804e-06, 6.020196730860013911e-06, 6.050884166600770301e-06, 6.081558603526819981e-06, 6.112219993059983170e-06, 6.142868286644165622e-06, 6.173503435749646312e-06, 6.204125391878531474e-06, 6.234734106549807018e-06, 6.265329531318609372e-06, 6.295911617761202506e-06, 6.326480317480528542e-06, 6.357035582111832894e-06, 6.387577363308905071e-06, 6.418105612756639325e-06, 6.448620282169620955e-06, 6.479121323285424579e-06, 6.509608687868778152e-06, 6.540082327717091548e-06, 6.570542194645503040e-06, 6.600988240506133207e-06, 6.631420417173030616e-06, 6.661838676549177633e-06, 6.692242970565146183e-06, 6.722633251179203624e-06, 6.753009470375991381e-06, 6.783371580172059457e-06, 6.813719532607824701e-06, 6.844053279751612006e-06, 6.874372773705309943e-06, 6.904677966590756404e-06, 6.934968810562053614e-06, 6.965245257804328071e-06, 6.995507260526966148e-06, 7.025754770969158761e-06, 7.055987741398604572e-06, 7.086206124110204702e-06, 7.116409871431590475e-06, 7.146598935715087612e-06, 7.176773269343149949e-06, 7.206932824727121076e-06, 7.237077554307313107e-06, 7.267207410551653127e-06, 7.297322345961297323e-06, 7.327422313062473210e-06, 7.357507264412084446e-06, 7.387577152596282740e-06, 7.417631930230637253e-06, 7.447671549958867441e-06, 7.477695964458263215e-06, 7.507705126431720293e-06, 7.537698988613152738e-06, 7.567677503766207165e-06, 7.597640624683143809e-06, 7.627588304190067801e-06, 7.657520495139084793e-06, 7.687437150413708420e-06, 7.717338222927582974e-06, 7.747223665624565565e-06, 7.777093431477451335e-06, 7.806947473493465621e-06, 7.836785744706190041e-06, 7.866608198181059729e-06, 7.896414787014118206e-06, 7.926205464330697694e-06, 7.955980183290877405e-06, 7.985738897081531588e-06, 8.015481558921728521e-06, 8.045208122061502313e-06, 8.074918539781886784e-06, 8.104612765393694047e-06, 8.134290752242847420e-06, 8.163952453703949067e-06, 8.193597823178775660e-06, 8.223226814108556973e-06, 8.252839379960706263e-06, 8.282435474234032909e-06, 8.312015050463035176e-06, 8.341578062209856792e-06, 8.371124463069729978e-06, 8.400654206669694738e-06, 8.430167246667333390e-06, 8.459663536756233926e-06, 8.489143030659306927e-06, 8.518605682127603103e-06, 8.548051444952297113e-06, 8.577480272951578885e-06, 8.606892119975825600e-06, 8.636286939913270035e-06, 8.665664686675157157e-06, 8.695025314214729524e-06, 8.724368776512434693e-06, 8.753695027582698106e-06, 8.783004021471476849e-06, 8.812295712262737768e-06, 8.841570054064122277e-06, 8.870827001025538737e-06, 8.900066507324586707e-06, 8.929288527172003372e-06, 8.958493014816984598e-06, 8.987679924534040679e-06, 9.016849210634985242e-06, 9.046000827467639280e-06, 9.075134729409327643e-06, 9.104250870870995608e-06, 9.133349206302328354e-06, 9.162429690177578402e-06, 9.191492277013912351e-06, 9.220536921357035034e-06, 9.249563577787911571e-06, 9.278572200921405340e-06, 9.307562745406410118e-06, 9.336535165924708272e-06, 9.365489417196056355e-06, 9.394425453970607542e-06, 9.423343231032750385e-06, 9.452242703206543379e-06, 9.481123825342655404e-06, 9.509986552330114076e-06, 9.538830839095301163e-06, 9.567656640595196651e-06, 9.596463911822877683e-06, 9.625252607806263254e-06, 9.654022683606709832e-06, 9.682774094324554342e-06, 9.711506795091185936e-06, 9.740220741074333174e-06, 9.768915887476934082e-06, 9.797592189537117515e-06, 9.826249602527013926e-06, 9.854888081757984947e-06, 9.883507582572939102e-06, 9.912108060351544454e-06, 9.940689470509029202e-06, 9.969251768496344311e-06, 9.997794909798743889e-06, 1.002631884994119095e-05, 1.005482354448055962e-05, 1.008330894901097145e-05, 1.011177501916250964e-05, 1.014022171059992644e-05, 1.016864897902814377e-05, 1.019705678018423695e-05, 1.022544506984284381e-05, 1.025381380381496700e-05, 1.028216293794800109e-05, 1.031049242812445525e-05, 1.033880223026722349e-05, 1.036709230033195628e-05, 1.039536259431225793e-05, 1.042361306823847874e-05, 1.045184367817639871e-05, 1.048005438023256385e-05, 1.050824513054661371e-05, 1.053641588529644836e-05, 1.056456660069698996e-05, 1.059269723300038609e-05, 1.062080773849462397e-05, 1.064889807350884987e-05, 1.067696819440692145e-05, 1.070501805758633544e-05, 1.073304761948969477e-05, 1.076105683659200816e-05, 1.078904566540589428e-05, 1.081701406248680966e-05, 1.084496198441890659e-05, 1.087288938783314102e-05, 1.090079622939323385e-05, 1.092868246580087674e-05, 1.095654805379947435e-05, 1.098439295016800673e-05, 1.101221711171989089e-05, 1.104002049531420230e-05, 1.106780305784331671e-05, 1.109556475623787201e-05, 1.112330554747203344e-05, 1.115102538854954124e-05, 1.117872423652151188e-05, 1.120640204847271616e-05, 1.123405878152765750e-05, 1.126169439284850010e-05, 1.128930883964111843e-05, 1.131690207914149732e-05, 1.134447406863333493e-05, 1.137202476543431241e-05, 1.139955412690117605e-05, 1.142706211043474837e-05, 1.145454867346766980e-05, 1.148201377347542881e-05, 1.150945736797544030e-05, 1.153687941452067253e-05, 1.156427987070365018e-05, 1.159165869416135533e-05, 1.161901584256159696e-05, 1.164635127362059876e-05, 1.167366494508927890e-05, 1.170095681475836778e-05, 1.172822684046336319e-05, 1.175547498007225002e-05, 1.178270119149668281e-05, 1.180990543269086253e-05, 1.183708766164534313e-05, 1.186424783639083979e-05, 1.189138591500330938e-05, 1.191850185559144325e-05, 1.194559561630816648e-05, 1.197266715534915558e-05, 1.199971643094689067e-05, 1.202674340137576475e-05, 1.205374802495056751e-05, 1.208073026002566879e-05, 1.210769006499989242e-05, 1.213462739830910467e-05, 1.216154221843125072e-05, 1.218843448388524842e-05, 1.221530415323099001e-05, 1.224215118506827311e-05, 1.226897553804155265e-05, 1.229577717083291212e-05, 1.232255604216679008e-05, 1.234931211080905343e-05, 1.237604533556563715e-05, 1.240275567528759088e-05, 1.242944308886384356e-05, 1.245610753522600614e-05, 1.248274897334740085e-05, 1.250936736224302562e-05, 1.253596266096838015e-05, 1.256253482862435997e-05, 1.258908382435022278e-05, 1.261560960732829111e-05, 1.264211213678290199e-05, 1.266859137198045447e-05, 1.269504727222821012e-05, 1.272147979687930243e-05, 1.274788890532543709e-05, 1.277427455700190303e-05, 1.280063671138627643e-05, 1.282697532799740092e-05, 1.285329036640021060e-05, 1.287958178619857766e-05, 1.290584954704021671e-05, 1.293209360861543458e-05, 1.295831393065741489e-05, 1.298451047294078660e-05, 1.301068319528678919e-05, 1.303683205755584587e-05, 1.306295701965260348e-05, 1.308905804152485837e-05, 1.311513508316328541e-05, 1.314118810460075527e-05, 1.316721706591792143e-05, 1.319322192723062989e-05, 1.321920264870617208e-05, 1.324515919055066059e-05, 1.327109151301349313e-05, 1.329699957639137418e-05, 1.332288334102197921e-05, 1.334874276728330585e-05, 1.337457781560395516e-05, 1.340038844645174752e-05, 1.342617462033823225e-05, 1.345193629782352415e-05, 1.347767343950352683e-05, 1.350338600602634995e-05, 1.352907395807941227e-05, 1.355473725639434598e-05, 1.358037586175044920e-05, 1.360598973496891090e-05, 1.363157883691170471e-05, 1.365714312849223099e-05, 1.368268257066351772e-05, 1.370819712442320778e-05, 1.373368675081813124e-05, 1.375915141093254520e-05, 1.378459106589916042e-05, 1.381000567689748622e-05, 1.383539520514838746e-05, 1.386075961191758449e-05, 1.388609885852029995e-05, 1.391141290630864137e-05, 1.393670171668772192e-05, 1.396196525110325475e-05, 1.398720347104591690e-05, 1.401241633805629768e-05, 1.403760381371322316e-05, 1.406276585964432376e-05, 1.408790243752489074e-05, 1.411301350907211300e-05, 1.413809903604992888e-05, 1.416315898026762858e-05, 1.418819330357914090e-05, 1.421320196788731081e-05, 1.423818493513731970e-05, 1.426314216732124406e-05, 1.428807362647698488e-05, 1.431297927468824392e-05, 1.433785907408362583e-05, 1.436271298684109866e-05, 1.438754097518120235e-05, 1.441234300137179207e-05, 1.443711902772681515e-05, 1.446186901660645169e-05, 1.448659293041606757e-05, 1.451129073161068685e-05, 1.453596238268835949e-05, 1.456060784619466581e-05, 1.458522708472172895e-05, 1.460982006090708144e-05, 1.463438673743822740e-05, 1.465892707704597634e-05, 1.468344104250888840e-05, 1.470792859665251205e-05, 1.473238970234897915e-05, 1.475682432251642564e-05, 1.478123242012306574e-05, 1.480561395818089509e-05, 1.482996889975003099e-05, 1.485429720793768406e-05, 1.487859884589829547e-05, 1.490287377683238502e-05, 1.492712196399101492e-05, 1.495134337066931177e-05, 1.497553796021089477e-05, 1.499970569600680851e-05, 1.502384654149441165e-05, 1.504796046016209998e-05, 1.507204741554242170e-05, 1.509610737121667180e-05, 1.512014029081397549e-05, 1.514414613801109344e-05, 1.516812487653156623e-05, 1.519207647015013593e-05, 1.521600088268613068e-05, 1.523989807800796761e-05, 1.526376802003212617e-05, 1.528761067272312783e-05, 1.531142600009261621e-05, 1.533521396620470350e-05, 1.535897453516421374e-05, 1.538270767113177683e-05, 1.540641333831219717e-05, 1.543009150095859730e-05, 1.545374212337577893e-05, 1.547736516991496118e-05, 1.550096060497269297e-05, 1.552452839300052617e-05, 1.554806849849453269e-05, 1.557158088599933638e-05, 1.559506552011284962e-05, 1.561852236547412010e-05, 1.564195138677868243e-05, 1.566535254876667938e-05, 1.568872581622731048e-05, 1.571207115400198635e-05, 1.573538852697904666e-05, 1.575867790009280122e-05, 1.578193923833322686e-05, 1.580517250673516943e-05, 1.582837767038287714e-05, 1.585155469441416456e-05, 1.587470354400991279e-05, 1.589782418440354272e-05, 1.592091658088028652e-05, 1.594398069877161759e-05, 1.596701650345865565e-05, 1.599002396037642895e-05, 1.601300303500229031e-05, 1.603595369287078080e-05, 1.605887589956196107e-05, 1.608176962070576843e-05, 1.610463482198637742e-05, 1.612747146913156784e-05, 1.615027952792220812e-05, 1.617305896419143199e-05, 1.619580974381936323e-05, 1.621853183273726264e-05, 1.624122519692665061e-05, 1.626388980241836175e-05, 1.628652561529658700e-05, 1.630913260169276818e-05, 1.633171072778982636e-05, 1.635425995982117258e-05, 1.637678026407075524e-05, 1.639927160687200980e-05, 1.642173395461212781e-05, 1.644416727372588713e-05, 1.646657153069981257e-05, 1.648894669207117975e-05, 1.651129272442809984e-05, 1.653360959440850985e-05, 1.655589726870438752e-05, 1.657815571405553743e-05, 1.660038489725386009e-05, 1.662258478514232532e-05, 1.664475534461394565e-05, 1.666689654261602842e-05, 1.668900834614394838e-05, 1.671109072224542694e-05, 1.673314363801942420e-05, 1.675516706061635586e-05, 1.677716095723698860e-05, 1.679912529513656011e-05, 1.682106004161877872e-05, 1.684296516403986538e-05, 1.686484062980774055e-05, 1.688668640638194967e-05, 1.690850246127255520e-05, 1.693028876204468694e-05, 1.695204527631197238e-05, 1.697377197174105651e-05, 1.699546881605031430e-05, 1.701713577700915279e-05, 1.703877282244192431e-05, 1.706037992022300023e-05, 1.708195703827588657e-05, 1.710350414458212807e-05, 1.712502120717143852e-05, 1.714650819412582414e-05, 1.716796507358240930e-05, 1.718939181372771731e-05, 1.721078838280166504e-05, 1.723215474909641100e-05, 1.725349088095575218e-05, 1.727479674677884767e-05, 1.729607231501540068e-05, 1.731731755416474381e-05, 1.733853243278477688e-05, 1.735971691948213461e-05, 1.738087098291613038e-05, 1.740199459180183269e-05, 1.742308771490513878e-05, 1.744415032104190726e-05, 1.746518237908665212e-05, 1.748618385796305927e-05, 1.750715472664769661e-05, 1.752809495417411022e-05, 1.754900450962220603e-05, 1.756988336213167350e-05, 1.759073148089155707e-05, 1.761154883514406768e-05, 1.763233539418768980e-05, 1.765309112737217369e-05, 1.767381600409776636e-05, 1.769450999382388173e-05, 1.771517306605955631e-05, 1.773580519036726085e-05, 1.775640633636682377e-05, 1.777697647372500589e-05, 1.779751557216883274e-05, 1.781802360147511166e-05, 1.783850053147538866e-05, 1.785894633205398666e-05, 1.787936097315284039e-05, 1.789974442476096266e-05, 1.792009665692802741e-05, 1.794041763975373770e-05, 1.796070734339178990e-05, 1.798096573805358023e-05, 1.800119279399909074e-05, 1.802138848154501402e-05, 1.804155277106421449e-05, 1.806168563298082919e-05, 1.808178703777415733e-05, 1.810185695597775902e-05, 1.812189535817857104e-05, 1.814190221502064726e-05, 1.816187749719973092e-05, 1.818182117546679518e-05, 1.820173322062745359e-05, 1.822161360354160098e-05, 1.824146229512298991e-05, 1.826127926634256801e-05, 1.828106448822322972e-05, 1.830081793184351618e-05, 1.832053956833666313e-05, 1.834022936889060431e-05, 1.835988730474723624e-05, 1.837951334720598929e-05, 1.839910746761853208e-05, 1.841866963739226119e-05, 1.843819982798952870e-05, 1.845769801092699846e-05, 1.847716415777892916e-05, 1.849659824017189564e-05, 1.851600022978866150e-05, 1.853537009836714577e-05, 1.855470781770030765e-05, 1.857401335963569932e-05, 1.859328669607869820e-05, 1.861252779898739767e-05, 1.863173664037610019e-05, 1.865091319231461600e-05, 1.867005742692722973e-05, 1.868916931639633583e-05, 1.870824883295741742e-05, 1.872729594890219042e-05, 1.874631063657805131e-05, 1.876529286838812458e-05, 1.878424261679023609e-05, 1.880315985430061631e-05, 1.882204455348954661e-05, 1.884089668698039018e-05, 1.885971622745771345e-05, 1.887850314765843285e-05, 1.889725742037541646e-05, 1.891597901845996403e-05, 1.893466791481698236e-05, 1.895332408240806509e-05, 1.897194749425107932e-05, 1.899053812341898996e-05, 1.900909594304368491e-05, 1.902762092631128931e-05, 1.904611304646169792e-05, 1.906457227679625606e-05, 1.908299859066917408e-05, 1.910139196149087141e-05, 1.911975236273092429e-05, 1.913807976791249564e-05, 1.915637415061641777e-05, 1.917463548447966771e-05, 1.919286374319597034e-05, 1.921105890051459216e-05, 1.922922093024499323e-05, 1.924734980624714725e-05, 1.926544550244376259e-05, 1.928350799281081920e-05, 1.930153725138107875e-05, 1.931953325224657826e-05, 1.933749596955457113e-05, 1.935542537750650394e-05, 1.937332145036587013e-05, 1.939118416244964816e-05, 1.940901348813201159e-05, 1.942680940184718857e-05, 1.944457187808073409e-05, 1.946230089138106651e-05, 1.947999641635049585e-05, 1.949765842764915734e-05, 1.951528689999451681e-05, 1.953288180816103523e-05, 1.955044312697988413e-05, 1.956797083134180517e-05, 1.958546489619243113e-05, 1.960292529653471182e-05, 1.962035200743239029e-05, 1.963774500400153930e-05, 1.965510426141825912e-05, 1.967242975491787120e-05, 1.968972145979051356e-05, 1.970697935138493890e-05, 1.972420340510749138e-05, 1.974139359642108343e-05, 1.975854990084903445e-05, 1.977567229396971085e-05, 1.979276075141931103e-05, 1.980981524889507061e-05, 1.982683576214706311e-05, 1.984382226698574195e-05, 1.986077473928094772e-05, 1.987769315495801863e-05, 1.989457749000105662e-05, 1.991142772045209391e-05, 1.992824382241127260e-05, 1.994502577203581799e-05, 1.996177354554346407e-05, 1.997848711920777780e-05, 1.999516646936100526e-05, 2.001181157239375981e-05, 2.002842240475395156e-05, 2.004499894295022624e-05, 2.006154116354698808e-05, 2.007804904316774726e-05, 2.009452255849429321e-05, 2.011096168626697584e-05, 2.012736640328352986e-05, 2.014373668640248320e-05, 2.016007251253853903e-05, 2.017637385866574365e-05, 2.019264070181650054e-05, 2.020887301908103504e-05, 2.022507078761046060e-05, 2.024123398461227596e-05, 2.025736258735326200e-05, 2.027345657315890239e-05, 2.028951591941351908e-05, 2.030554060355922198e-05, 2.032153060309923955e-05, 2.033748589559407658e-05, 2.035340645866074176e-05, 2.036929226997974412e-05, 2.038514330728737831e-05, 2.040095954837880098e-05, 2.041674097111059559e-05, 2.043248755339577497e-05, 2.044819927320726426e-05, 2.046387610857706407e-05, 2.047951803759539329e-05, 2.049512503841382648e-05, 2.051069708924150594e-05, 2.052623416834474870e-05, 2.054173625405324681e-05, 2.055720332475300644e-05, 2.057263535888938705e-05, 2.058803233496905974e-05, 2.060339423155584324e-05, 2.061872102727368544e-05, 2.063401270080587736e-05, 2.064926923089497522e-05, 2.066449059634244131e-05, 2.067967677601183560e-05, 2.069482774882127712e-05, 2.070994349375337125e-05, 2.072502398984741695e-05, 2.074006921620217490e-05, 2.075507915197833745e-05, 2.077005377639456110e-05, 2.078499306872707688e-05, 2.079989700831608035e-05, 2.081476557455857928e-05, 2.082959874691134807e-05, 2.084439650489365521e-05, 2.085915882807968066e-05, 2.087388569610833800e-05, 2.088857708867553599e-05, 2.090323298553697372e-05, 2.091785336651115273e-05, 2.093243821147216700e-05, 2.094698750035621835e-05, 2.096150121316087784e-05, 2.097597932994158245e-05, 2.099042183081378649e-05, 2.100482869595576366e-05, 2.101919990560164437e-05, 2.103353544004787017e-05, 2.104783527965229590e-05, 2.106209940483067279e-05, 2.107632779605998915e-05, 2.109052043387715241e-05, 2.110467729887865708e-05, 2.111879837172338334e-05, 2.113288363312831444e-05, 2.114693306387082706e-05, 2.116094664479120874e-05, 2.117492435678619328e-05, 2.118886618081487305e-05, 2.120277209789803491e-05, 2.121664208911483985e-05, 2.123047613560564528e-05, 2.124427421857122240e-05, 2.125803631927223103e-05, 2.127176241903180813e-05, 2.128545249923161726e-05, 2.129910654131461666e-05, 2.131272452678429017e-05, 2.132630643720481660e-05, 2.133985225420020581e-05, 2.135336195945733103e-05, 2.136683553472149046e-05, 2.138027296179973436e-05, 2.139367422255942854e-05, 2.140703929892899971e-05, 2.142036817289685128e-05, 2.143366082651417215e-05, 2.144691724189109791e-05, 2.146013740119916052e-05, 2.147332128667073936e-05, 2.148646888059865134e-05, 2.149958016533842089e-05, 2.151265512330454628e-05, 2.152569373697317621e-05, 2.153869598888151691e-05, 2.155166186162769999e-05, 2.156459133787018277e-05, 2.157748440033057391e-05, 2.159034103178949661e-05, 2.160316121508927190e-05, 2.161594493313348503e-05, 2.162869216888680250e-05, 2.164140290537434522e-05, 2.165407712568421611e-05, 2.166671481296418645e-05, 2.167931595042359329e-05, 2.169188052133304124e-05, 2.170440850902384688e-05, 2.171689989689035616e-05, 2.172935466838712894e-05, 2.174177280702822067e-05, 2.175415429639248143e-05, 2.176649912011797229e-05, 2.177880726190395075e-05, 2.179107870551295106e-05, 2.180331343476708440e-05, 2.181551143355066463e-05, 2.182767268580929355e-05, 2.183979717555007433e-05, 2.185188488684121168e-05, 2.186393580381457673e-05, 2.187594991065959477e-05, 2.188792719163128197e-05, 2.189986763104399760e-05, 2.191177121327362264e-05, 2.192363792275943678e-05, 2.193546774400112674e-05, 2.194726066155845416e-05, 2.195901666005628706e-05, 2.197073572417876204e-05, 2.198241783867184909e-05, 2.199406298834547259e-05, 2.200567115806736861e-05, 2.201724233277104701e-05, 2.202877649744945228e-05, 2.204027363715748089e-05, 2.205173373701383122e-05, 2.206315678219609075e-05, 2.207454275794504581e-05, 2.208589164956457313e-05, 2.209720344241869553e-05, 2.210847812193369956e-05, 2.211971567359962961e-05, 2.213091608296527350e-05, 2.214207933564312273e-05, 2.215320541730864397e-05, 2.216429431369779562e-05, 2.217534601060891497e-05, 2.218636049390249797e-05, 2.219733774950058937e-05, 2.220827776338877156e-05, 2.221918052161322028e-05, 2.223004601028220895e-05, 2.224087421556815170e-05, 2.225166512370251783e-05, 2.226241872098040910e-05, 2.227313499376022099e-05, 2.228381392846105752e-05, 2.229445551156447274e-05, 2.230505972961445045e-05, 2.231562656921664179e-05, 2.232615601704037448e-05, 2.233664805981581015e-05, 2.234710268433587216e-05, 2.235751987745576114e-05, 2.236789962609299224e-05, 2.237824191722677508e-05, 2.238854673790039227e-05, 2.239881407521776040e-05, 2.240904391634577128e-05, 2.241923624851364818e-05, 2.242939105901296278e-05, 2.243950833519733359e-05, 2.244958806448410990e-05, 2.245963023435172562e-05, 2.246963483234149501e-05, 2.247960184605719930e-05, 2.248953126316456156e-05, 2.249942307139335071e-05, 2.250927725853431186e-05, 2.251909381244118907e-05, 2.252887272103029162e-05, 2.253861397228041274e-05, 2.254831755423247381e-05, 2.255798345499138448e-05, 2.256761166272312546e-05, 2.257720216565690680e-05, 2.258675495208446989e-05, 2.259627001036005361e-05, 2.260574732890028928e-05, 2.261518689618565418e-05, 2.262458870075791012e-05, 2.263395273122203126e-05, 2.264327897624568241e-05, 2.265256742455872089e-05, 2.266181806495499906e-05, 2.267103088629032805e-05, 2.268020587748173915e-05, 2.268934302751187480e-05, 2.269844232542402843e-05, 2.270750376032462786e-05, 2.271652732138409599e-05, 2.272551299783411312e-05, 2.273446077896980910e-05, 2.274337065414898406e-05, 2.275224261279191866e-05, 2.276107664438303428e-05, 2.276987273846855860e-05, 2.277863088465647480e-05, 2.278735107262010276e-05, 2.279603329209398932e-05, 2.280467753287540239e-05, 2.281328378482643502e-05, 2.282185203786927217e-05, 2.283038228199042586e-05, 2.283887450724027778e-05, 2.284732870373065001e-05, 2.285574486163644486e-05, 2.286412297119709840e-05, 2.287246302271224023e-05, 2.288076500654714164e-05, 2.288902891312865657e-05, 2.289725473294631266e-05, 2.290544245655467610e-05, 2.291359207456848291e-05, 2.292170357766690124e-05, 2.292977695659281643e-05, 2.293781220215114711e-05, 2.294580930520958385e-05, 2.295376825670058474e-05, 2.296168904761695050e-05, 2.296957166901723193e-05, 2.297741611202148458e-05, 2.298522236781307126e-05, 2.299299042763883481e-05, 2.300072028280832900e-05, 2.300841192469404553e-05, 2.301606534473254906e-05, 2.302368053442263747e-05, 2.303125748532598220e-05, 2.303879618906907979e-05, 2.304629663733909130e-05, 2.305375882188773188e-05, 2.306118273453035253e-05, 2.306856836714453072e-05, 2.307591571167126972e-05, 2.308322476011479875e-05, 2.309049550454211552e-05, 2.309772793708460246e-05, 2.310492204993554652e-05, 2.311207783535203995e-05, 2.311919528565413329e-05, 2.312627439322524189e-05, 2.313331515051167162e-05, 2.314031755002388262e-05, 2.314728158433459196e-05, 2.315420724608002384e-05, 2.316109452795974698e-05, 2.316794342273639340e-05, 2.317475392323571938e-05, 2.318152602234778797e-05, 2.318825971302450917e-05, 2.319495498828188287e-05, 2.320161184119883335e-05, 2.320823026491739902e-05, 2.321481025264375222e-05, 2.322135179764652890e-05, 2.322785489325789247e-05, 2.323431953287326615e-05, 2.324074570995141769e-05, 2.324713341801400870e-05, 2.325348265064716680e-05, 2.325979340149911389e-05, 2.326606566428184668e-05, 2.327229943277062506e-05, 2.327849470080383323e-05, 2.328465146228395543e-05, 2.329076971117597679e-05, 2.329684944150839973e-05, 2.330289064737316943e-05, 2.330889332292554513e-05, 2.331485746238379510e-05, 2.332078306003041647e-05, 2.332667011021071214e-05, 2.333251860733245541e-05, 2.333832854586831583e-05, 2.334409992035348078e-05, 2.334983272538624158e-05, 2.335552695562923695e-05, 2.336118260580749467e-05, 2.336679967070986815e-05, 2.337237814518833848e-05, 2.337791802415809911e-05, 2.338341930259857907e-05, 2.338888197555203017e-05, 2.339430603812300854e-05, 2.339969148548136639e-05, 2.340503831285923998e-05, 2.341034651555183899e-05, 2.341561608891919150e-05, 2.342084702838251859e-05, 2.342603932942848653e-05, 2.343119298760601511e-05, 2.343630799852750076e-05, 2.344138435786882673e-05, 2.344642206136997295e-05, 2.345142110483258336e-05, 2.345638148412359456e-05, 2.346130319517198665e-05, 2.346618623397051789e-05, 2.347103059657607713e-05, 2.347583627910738321e-05, 2.348060327774752272e-05, 2.348533158874336721e-05, 2.349002120840420438e-05, 2.349467213310302562e-05, 2.349928435927696300e-05, 2.350385788342490071e-05, 2.350839270211075135e-05, 2.351288881196094869e-05, 2.351734620966532864e-05, 2.352176489197736978e-05, 2.352614485571360379e-05, 2.353048609775398821e-05, 2.353478861504242815e-05, 2.353905240458540078e-05, 2.354327746345295813e-05, 2.354746378877922860e-05, 2.355161137776055007e-05, 2.355572022765700476e-05, 2.355979033579275796e-05, 2.356382169955453009e-05, 2.356781431639260290e-05, 2.357176818382068396e-05, 2.357568329941552720e-05, 2.357955966081791887e-05, 2.358339726573145778e-05, 2.358719611192299238e-05, 2.359095619722307818e-05, 2.359467751952525942e-05, 2.359836007678635373e-05, 2.360200386702732622e-05, 2.360560888833148702e-05, 2.360917513884592446e-05, 2.361270261678093585e-05, 2.361619132041014606e-05, 2.361964124807024667e-05, 2.362305239816196831e-05, 2.362642476914860349e-05, 2.362975835955707381e-05, 2.363305316797746584e-05, 2.363630919306302091e-05, 2.363952643353084323e-05, 2.364270488816064294e-05, 2.364584455579592530e-05, 2.364894543534291666e-05, 2.365200752577160462e-05, 2.365503082611487409e-05, 2.365801533546939151e-05, 2.366096105299457834e-05, 2.366386797791314971e-05, 2.366673610951125335e-05, 2.366956544713796817e-05, 2.367235599020620207e-05, 2.367510773819150275e-05, 2.367782069063286744e-05, 2.368049484713246849e-05, 2.368313020735565334e-05, 2.368572677103082934e-05, 2.368828453795017189e-05, 2.369080350796863845e-05, 2.369328368100391096e-05, 2.369572505703776807e-05, 2.369812763611453329e-05, 2.370049141834174256e-05, 2.370281640389068626e-05, 2.370510259299464065e-05, 2.370734998595122261e-05, 2.370955858312058379e-05, 2.371172838492584763e-05, 2.371385939185391916e-05, 2.371595160445425510e-05, 2.371800502333923317e-05, 2.372001964918509737e-05, 2.372199548273049770e-05, 2.372393252477740156e-05, 2.372583077619125301e-05, 2.372769023789963783e-05, 2.372951091089410295e-05, 2.373129279622876393e-05, 2.373303589502092839e-05, 2.373474020845082154e-05, 2.373640573776198600e-05, 2.373803248426058384e-05, 2.373962044931610471e-05, 2.374116963436086438e-05, 2.374268004089011657e-05, 2.374415167046259502e-05, 2.374558452469924973e-05, 2.374697860528426004e-05, 2.374833391396518706e-05, 2.374965045255212324e-05, 2.375092822291804140e-05, 2.375216722699925886e-05, 2.375336746679442099e-05, 2.375452894436558547e-05, 2.375565166183752429e-05, 2.375673562139768308e-05, 2.375778082529697059e-05, 2.375878727584853554e-05, 2.375975497542854930e-05, 2.376068392647630073e-05, 2.376157413149365750e-05, 2.376242559304527274e-05, 2.376323831375896115e-05, 2.376401229632495017e-05, 2.376474754349633067e-05, 2.376544405808928391e-05, 2.376610184298237345e-05, 2.376672090111716512e-05, 2.376730123549788151e-05, 2.376784284919133077e-05, 2.376834574532743515e-05, 2.376880992709848905e-05, 2.376923539775970784e-05, 2.376962216062882471e-05, 2.376997021908629733e-05, 2.377027957657526380e-05, 2.377055023660164433e-05, 2.377078220273375831e-05, 2.377097547860281229e-05, 2.377113006790238151e-05, 2.377124597438875556e-05, 2.377132320188103659e-05, 2.377136175426046509e-05, 2.377136163547110089e-05, 2.377132284951967073e-05, 2.377124540047521246e-05, 2.377112929246941389e-05, 2.377097452969646369e-05, 2.377078111641301751e-05, 2.377054905693830642e-05, 2.377027835565387938e-05, 2.376996901700393871e-05, 2.376962104549487246e-05, 2.376923444569580338e-05, 2.376880922223813142e-05, 2.376834537981571677e-05, 2.376784292318454779e-05, 2.376730185716342201e-05, 2.376672218663317368e-05, 2.376610391653707013e-05, 2.376544705188079486e-05, 2.376475159773234591e-05, 2.376401755922185284e-05, 2.376324494154192580e-05, 2.376243374994733355e-05, 2.376158398975517974e-05, 2.376069566634482833e-05, 2.375976878515770365e-05, 2.375880335169764285e-05, 2.375779937153061123e-05, 2.375675685028475986e-05, 2.375567579365038494e-05, 2.375455620737999552e-05, 2.375339809728805267e-05, 2.375220146925140311e-05, 2.375096632920889976e-05, 2.374969268316131366e-05, 2.374838053717186927e-05, 2.374702989736532632e-05, 2.374564076992898603e-05, 2.374421316111181366e-05, 2.374274707722497037e-05, 2.374124252464161338e-05, 2.373969950979676379e-05, 2.373811803918743197e-05, 2.373649811937262772e-05, 2.373483975697320101e-05, 2.373314295867200800e-05, 2.373140773121371457e-05, 2.372963408140472510e-05, 2.372782201611369076e-05, 2.372597154227069292e-05, 2.372408266686781576e-05, 2.372215539695891927e-05, 2.372018973965973413e-05, 2.371818570214750930e-05, 2.371614329166146947e-05, 2.371406251550247282e-05, 2.371194338103312286e-05, 2.370978589567772436e-05, 2.370759006692213427e-05, 2.370535590231406329e-05, 2.370308340946265571e-05, 2.370077259603870290e-05, 2.369842346977475846e-05, 2.369603603846488754e-05, 2.369361030996456518e-05, 2.369114629219102526e-05, 2.368864399312281332e-05, 2.368610342080009485e-05, 2.368352458332461462e-05, 2.368090748885925964e-05, 2.367825214562865885e-05, 2.367555856191882395e-05, 2.367282674607713250e-05, 2.367005670651218562e-05, 2.366724845169428226e-05, 2.366440199015461970e-05, 2.366151733048617439e-05, 2.365859448134288205e-05, 2.365563345144026109e-05, 2.365263424955474513e-05, 2.364959688452439115e-05, 2.364652136524813744e-05, 2.364340770068624413e-05, 2.364025589986020162e-05, 2.363706597185255448e-05, 2.363383792580732153e-05, 2.363057177092897941e-05, 2.362726751648376702e-05, 2.362392517179855389e-05, 2.362054474626150422e-05, 2.361712624932166355e-05, 2.361366969048921629e-05, 2.361017507933519088e-05, 2.360664242549164282e-05, 2.360307173865162074e-05, 2.359946302856904106e-05, 2.359581630505871850e-05, 2.359213157799647785e-05, 2.358840885731852718e-05, 2.358464815302253867e-05, 2.358084947516657457e-05, 2.357701283386966654e-05, 2.357313823931155819e-05, 2.356922570173261358e-05, 2.356527523143405777e-05, 2.356128683877774984e-05, 2.355726053418632856e-05, 2.355319632814288037e-05, 2.354909423119141369e-05, 2.354495425393617115e-05, 2.354077640704211412e-05, 2.353656070123483115e-05, 2.353230714730047030e-05, 2.352801575608550190e-05, 2.352368653849718955e-05, 2.351931950550267529e-05, 2.351491466813035859e-05, 2.351047203746829036e-05, 2.350599162466525716e-05, 2.350147344093062536e-05, 2.349691749753345682e-05, 2.349232380580339318e-05, 2.348769237713110652e-05, 2.348302322296638841e-05, 2.347831635481987113e-05, 2.347357178426251600e-05, 2.346878952292472237e-05, 2.346396958249826218e-05, 2.345911197473383040e-05, 2.345421671144293894e-05, 2.344928380449717129e-05, 2.344431326582774547e-05, 2.343930510742610351e-05, 2.343425934134431808e-05, 2.342917597969337807e-05, 2.342405503464479796e-05, 2.341889651843028576e-05, 2.341370044334062158e-05, 2.340846682172735167e-05, 2.340319566600171098e-05, 2.339788698863404722e-05, 2.339254080215518624e-05, 2.338715711915581878e-05, 2.338173595228540953e-05, 2.337627731425477205e-05, 2.337078121783274845e-05, 2.336524767584888940e-05, 2.335967670119221403e-05, 2.335406830681061027e-05, 2.334842250571272882e-05, 2.334273931096621791e-05, 2.333701873569785543e-05, 2.333126079309449087e-05, 2.332546549640217791e-05, 2.331963285892661155e-05, 2.331376289403290782e-05, 2.330785561514497699e-05, 2.330191103574685854e-05, 2.329592916938158268e-05, 2.328991002965160407e-05, 2.328385363021847997e-05, 2.327775998480336483e-05, 2.327162910718601766e-05, 2.326546101120578790e-05, 2.325925571076135459e-05, 2.325301321981017744e-05, 2.324673355236908981e-05, 2.324041672251406828e-05, 2.323406274437945677e-05, 2.322767163215934890e-05, 2.322124340010667999e-05, 2.321477806253313556e-05, 2.320827563380974424e-05, 2.320173612836569536e-05, 2.319515956068965350e-05, 2.318854594532908088e-05, 2.318189529689003407e-05, 2.317520763003746553e-05, 2.316848295949533205e-05, 2.316172130004559522e-05, 2.315492266652950556e-05, 2.314808707384694521e-05, 2.314121453695621109e-05, 2.313430507087432998e-05, 2.312735869067715681e-05, 2.312037541149820574e-05, 2.311335524853044924e-05, 2.310629821702484427e-05, 2.309920433229106752e-05, 2.309207360969720704e-05, 2.308490606466916261e-05, 2.307770171269157063e-05, 2.307046056930825141e-05, 2.306318265011972563e-05, 2.305586797078576562e-05, 2.304851654702449413e-05, 2.304112839461132042e-05, 2.303370352938064792e-05, 2.302624196722483744e-05, 2.301874372409411229e-05, 2.301120881599738501e-05, 2.300363725900042778e-05, 2.299602906922771552e-05, 2.298838426286273765e-05, 2.298070285614493859e-05, 2.297298486537285517e-05, 2.296523030690306288e-05, 2.295743919714892913e-05, 2.294961155258233094e-05, 2.294174738973366176e-05, 2.293384672518948011e-05, 2.292590957559522685e-05, 2.291793595765369713e-05, 2.290992588812462705e-05, 2.290187938382704839e-05, 2.289379646163575821e-05, 2.288567713848406321e-05, 2.287752143136286494e-05, 2.286932935731983988e-05, 2.286110093346030000e-05, 2.285283617694834816e-05, 2.284453510500322228e-05, 2.283619773490296807e-05, 2.282782408398291779e-05, 2.281941416963427399e-05, 2.281096800930786016e-05, 2.280248562050946209e-05, 2.279396702080318206e-05, 2.278541222781007349e-05, 2.277682125920852714e-05, 2.276819413273273968e-05, 2.275953086617629498e-05, 2.275083147738725465e-05, 2.274209598427221030e-05, 2.273332440479455216e-05, 2.272451675697324941e-05, 2.271567305888614675e-05, 2.270679332866692193e-05, 2.269787758450526191e-05, 2.268892584464870938e-05, 2.267993812740124991e-05, 2.267091445112338313e-05, 2.266185483423270545e-05, 2.265275929520229733e-05, 2.264362785256293572e-05, 2.263446052490191500e-05, 2.262525733086156638e-05, 2.261601828914293398e-05, 2.260674341850223428e-05, 2.259743273775158452e-05, 2.258808626576027330e-05, 2.257870402145373734e-05, 2.256928602381361228e-05, 2.255983229187788518e-05, 2.255034284474084709e-05, 2.254081770155220193e-05, 2.253125688151869961e-05, 2.252166040390283158e-05, 2.251202828802310865e-05, 2.250236055325456586e-05, 2.249265721902694301e-05, 2.248291830482712750e-05, 2.247314383019756535e-05, 2.246333381473663044e-05, 2.245348827809833997e-05, 2.244360723999299476e-05, 2.243369072018554621e-05, 2.242373873849775112e-05, 2.241375131480670128e-05, 2.240372846904504367e-05, 2.239367022120163436e-05, 2.238357659131942436e-05, 2.237344759949828866e-05, 2.236328326589323733e-05, 2.235308361071443922e-05, 2.234284865422779794e-05, 2.233257841675478250e-05, 2.232227291867112617e-05, 2.231193218040855453e-05, 2.230155622245537494e-05, 2.229114506535253957e-05, 2.228069872969799234e-05, 2.227021723614459539e-05, 2.225970060539913978e-05, 2.224914885822498479e-05, 2.223856201543968289e-05, 2.222794009791603342e-05, 2.221728312658218763e-05, 2.220659112241980213e-05, 2.219586410646623783e-05, 2.218510209981516300e-05, 2.217430512361220628e-05, 2.216347319905967976e-05, 2.215260634741450545e-05, 2.214170458998685663e-05, 2.213076794814301064e-05, 2.211979644330329568e-05, 2.210879009694255841e-05, 2.209774893059011306e-05, 2.208667296583042929e-05, 2.207556222430030304e-05, 2.206441672769417933e-05, 2.205323649775768767e-05, 2.204202155629249730e-05, 2.203077192515468067e-05, 2.201948762625297195e-05, 2.200816868155124379e-05, 2.199681511306897825e-05, 2.198542694287691641e-05, 2.197400419310161545e-05, 2.196254688592379862e-05, 2.195105504357612583e-05, 2.193952868834852997e-05, 2.192796784258151181e-05, 2.191637252867140512e-05, 2.190474276906767298e-05, 2.189307858627376498e-05, 2.188138000284658860e-05, 2.186964704139736314e-05, 2.185787972458942070e-05, 2.184607807514119120e-05, 2.183424211582459302e-05, 2.182237186946316268e-05, 2.181046735893672037e-05, 2.179852860717709412e-05, 2.178655563716847213e-05, 2.177454847194984901e-05, 2.176250713461311490e-05, 2.175043164830313676e-05, 2.173832203621881888e-05, 2.172617832161050414e-05, 2.171400052778316907e-05, 2.170178867809486865e-05, 2.168954279595475769e-05, 2.167726290482789177e-05, 2.166494902823070409e-05, 2.165260118973168991e-05, 2.164021941295358846e-05, 2.162780372157145512e-05, 2.161535413931304087e-05, 2.160287068995895836e-05, 2.159035339734288172e-05, 2.157780228534967302e-05, 2.156521737791816724e-05, 2.155259869903945792e-05, 2.153994627275692764e-05, 2.152726012316697306e-05, 2.151454027441693142e-05, 2.150178675070794348e-05, 2.148899957629295116e-05, 2.147617877547729044e-05, 2.146332437261846775e-05, 2.145043639212661061e-05, 2.143751485846247538e-05, 2.142455979614049321e-05, 2.141157122972660841e-05, 2.139854918383873582e-05, 2.138549368314732329e-05, 2.137240475237306805e-05, 2.135928241629016930e-05, 2.134612669972416662e-05, 2.133293762755224826e-05, 2.131971522470343751e-05, 2.130645951615884340e-05, 2.129317052694973286e-05, 2.127984828216001085e-05, 2.126649280692668111e-05, 2.125310412643503506e-05, 2.123968226592396096e-05, 2.122622725068378568e-05, 2.121273910605459421e-05, 2.119921785742926541e-05, 2.118566353025149333e-05, 2.117207615001619718e-05, 2.115845574227010411e-05, 2.114480233260915049e-05, 2.113111594668175484e-05, 2.111739661018875348e-05, 2.110364434887877232e-05, 2.108985918855358691e-05, 2.107604115506594045e-05, 2.106219027431754481e-05, 2.104830657226272278e-05, 2.103439007490597197e-05, 2.102044080830241888e-05, 2.100645879855788661e-05, 2.099244407182941662e-05, 2.097839665432209413e-05, 2.096431657229588867e-05, 2.095020385205690935e-05, 2.093605851996405579e-05, 2.092188060242661926e-05, 2.090767012590244976e-05, 2.089342711690082911e-05, 2.087915160198292161e-05, 2.086484360775669520e-05, 2.085050316088255255e-05, 2.083613028807087807e-05, 2.082172501607968310e-05, 2.080728737172131109e-05, 2.079281738185368263e-05, 2.077831507338695992e-05, 2.076378047328126993e-05, 2.074921360854405152e-05, 2.073461450623604560e-05, 2.071998319346590132e-05, 2.070531969739068418e-05, 2.069062404521880685e-05, 2.067589626420831812e-05, 2.066113638166417886e-05, 2.064634442494450633e-05, 2.063152042145508202e-05, 2.061666439864954142e-05, 2.060177638403287731e-05, 2.058685640515852934e-05, 2.057190448962921758e-05, 2.055692066509737953e-05, 2.054190495926271710e-05, 2.052685739987570679e-05, 2.051177801473599364e-05, 2.049666683168948085e-05, 2.048152387863476725e-05, 2.046634918351742473e-05, 2.045114277433056742e-05, 2.043590467911775199e-05, 2.042063492597087355e-05, 2.040533354303024027e-05, 2.039000055848545081e-05, 2.037463600057262970e-05, 2.035923989757842866e-05, 2.034381227783716364e-05, 2.032835316973154329e-05, 2.031286260169269266e-05, 2.029734060220053605e-05, 2.028178719978131355e-05, 2.026620242301142990e-05, 2.025058630051460850e-05, 2.023493886096281637e-05, 2.021926013307585415e-05, 2.020355014562226755e-05, 2.018780892741663344e-05, 2.017203650732299201e-05, 2.015623291425290879e-05, 2.014039817716550850e-05, 2.012453232506835262e-05, 2.010863538701459331e-05, 2.009270739210698836e-05, 2.007674836949520088e-05, 2.006075834837639895e-05, 2.004473735799510659e-05, 2.002868542764409143e-05, 2.001260258666109513e-05, 1.999648886443351585e-05, 1.998034429039513863e-05, 1.996416889402684018e-05, 1.994796270485687682e-05, 1.993172575246099633e-05, 1.991545806645998832e-05, 1.989915967652372284e-05, 1.988283061236827056e-05, 1.986647090375643122e-05, 1.985008058049869591e-05, 1.983365967245013340e-05, 1.981720820951388324e-05, 1.980072622164179278e-05, 1.978421373882815248e-05, 1.976767079111664161e-05, 1.975109740859724505e-05, 1.973449362140444738e-05, 1.971785945972113604e-05, 1.970119495377583321e-05, 1.968450013384324132e-05, 1.966777503024517138e-05, 1.965101967334729715e-05, 1.963423409356281093e-05, 1.961741832135316220e-05, 1.960057238722153543e-05, 1.958369632171982289e-05, 1.956679015544596155e-05, 1.954985391904131745e-05, 1.953288764319462950e-05, 1.951589135864251768e-05, 1.949886509616288296e-05, 1.948180888658219181e-05, 1.946472276077239975e-05, 1.944760674964819680e-05, 1.943046088417459014e-05, 1.941328519535698023e-05, 1.939607971424911619e-05, 1.937884447194988046e-05, 1.936157949960057485e-05, 1.934428482839190016e-05, 1.932696048955772537e-05, 1.930960651437525367e-05, 1.929222293416900350e-05, 1.927480978030851142e-05, 1.925736708420511674e-05, 1.923989487732028958e-05, 1.922239319115491760e-05, 1.920486205725785423e-05, 1.918730150722164623e-05, 1.916971157268354000e-05, 1.915209228532529522e-05, 1.913444367687398444e-05, 1.911676577909884888e-05, 1.909905862381564885e-05, 1.908132224288472905e-05, 1.906355666820747124e-05, 1.904576193173410049e-05, 1.902793806545664465e-05, 1.901008510140986268e-05, 1.899220307167474121e-05, 1.897429200837548926e-05, 1.895635194368023283e-05, 1.893838290980183819e-05, 1.892038493899465251e-05, 1.890235806355903040e-05, 1.888430231583831169e-05, 1.886621772821940761e-05, 1.884810433313295998e-05, 1.882996216305375122e-05, 1.881179125049787861e-05, 1.879359162802704710e-05, 1.877536332824564528e-05, 1.875710638380134179e-05, 1.873882082738496664e-05, 1.872050669173138879e-05, 1.870216400961627708e-05, 1.868379281386066407e-05, 1.866539313732788649e-05, 1.864696501292418163e-05, 1.862850847359945301e-05, 1.861002355234415330e-05, 1.859151028219379397e-05, 1.857296869622588234e-05, 1.855439882756051458e-05, 1.853580070936055522e-05, 1.851717437483205395e-05, 1.849851985722120978e-05, 1.847983718981901287e-05, 1.846112640595812398e-05, 1.844238753901341322e-05, 1.842362062240200410e-05, 1.840482568958415444e-05, 1.838600277405966153e-05, 1.836715190937297150e-05, 1.834827312910964882e-05, 1.832936646689721321e-05, 1.831043195640600697e-05, 1.829146963134558666e-05, 1.827247952546910391e-05, 1.825346167257377980e-05, 1.823441610649362035e-05, 1.821534286110752094e-05, 1.819624197033587815e-05, 1.817711346813826557e-05, 1.815795738851784169e-05, 1.813877376551853101e-05, 1.811956263322558986e-05, 1.810032402576629076e-05, 1.808105797730654113e-05, 1.806176452205507775e-05, 1.804244369426426299e-05, 1.802309552822232937e-05, 1.800372005826196507e-05, 1.798431731875657348e-05, 1.796488734411717979e-05, 1.794543016880052863e-05, 1.792594582730154212e-05, 1.790643435415414315e-05, 1.788689578393532455e-05, 1.786733015126266557e-05, 1.784773749079072354e-05, 1.782811783722047658e-05, 1.780847122528726525e-05, 1.778879768977021153e-05, 1.776909726548844110e-05, 1.774936998729800686e-05, 1.772961589010013569e-05, 1.770983500883345943e-05, 1.769002737847503475e-05, 1.767019303404426993e-05, 1.765033201060044142e-05, 1.763044434323915999e-05, 1.761053006710190495e-05, 1.759058921736370487e-05, 1.757062182924258034e-05, 1.755062793799533926e-05, 1.753060757891836634e-05, 1.751056078734727065e-05, 1.749048759865788180e-05, 1.747038804826296001e-05, 1.745026217161692938e-05, 1.743011000421336386e-05, 1.740993158158158559e-05, 1.738972693929515215e-05, 1.736949611296394527e-05, 1.734923913823512294e-05, 1.732895605079721221e-05, 1.730864688637680579e-05, 1.728831168073910755e-05, 1.726795046968900317e-05, 1.724756328906720780e-05, 1.722715017475585651e-05, 1.720671116267443853e-05, 1.718624628878101697e-05, 1.716575558907203230e-05, 1.714523909958306130e-05, 1.712469685638524938e-05, 1.710412889559067054e-05, 1.708353525334857002e-05, 1.706291596584621803e-05, 1.704227106930894707e-05, 1.702160060000083969e-05, 1.700090459422119469e-05, 1.698018308830982615e-05, 1.695943611864326873e-05, 1.693866372163596010e-05, 1.691786593374059673e-05, 1.689704279144491514e-05, 1.687619433127672330e-05, 1.685532058980041082e-05, 1.683442160361768759e-05, 1.681349740936762105e-05, 1.679254804372726296e-05, 1.677157354340838330e-05, 1.675057394516228475e-05, 1.672954928577661786e-05, 1.670849960207585882e-05, 1.668742493092244101e-05, 1.666632530921278421e-05, 1.664520077388292221e-05, 1.662405136190467424e-05, 1.660287711028653947e-05, 1.658167805607351739e-05, 1.656045423634814462e-05, 1.653920568822665274e-05, 1.651793244886350163e-05, 1.649663455545219599e-05, 1.647531204521705898e-05, 1.645396495542235981e-05, 1.643259332336830225e-05, 1.641119718638866303e-05, 1.638977658185577924e-05, 1.636833154717718387e-05, 1.634686211979611742e-05, 1.632536833719270701e-05, 1.630385023688009030e-05, 1.628230785640878283e-05, 1.626074123336784352e-05, 1.623915040537623496e-05, 1.621753541009220850e-05, 1.619589628520939437e-05, 1.617423306845305100e-05, 1.615254579759034124e-05, 1.613083451041707122e-05, 1.610909924476792925e-05, 1.608734003851185088e-05, 1.606555692955367908e-05, 1.604374995582947508e-05, 1.602191915531681827e-05, 1.600006456602157215e-05, 1.597818622598808942e-05, 1.595628417329544773e-05, 1.593435844605361771e-05, 1.591240908241278374e-05, 1.589043612055486004e-05, 1.586843959869422253e-05, 1.584641955508256402e-05, 1.582437602800589569e-05, 1.580230905578062706e-05, 1.578021867676404204e-05, 1.575810492934086166e-05, 1.573596785193365577e-05, 1.571380748299900087e-05, 1.569162386102360075e-05, 1.566941702453377664e-05, 1.564718701208656654e-05, 1.562493386227114151e-05, 1.560265761371291206e-05, 1.558035830507103450e-05, 1.555803597503429775e-05, 1.553569066233071849e-05, 1.551332240571878289e-05, 1.549093124398845964e-05, 1.546851721596582813e-05, 1.544608036050914147e-05, 1.542362071650981917e-05, 1.540113832289332130e-05, 1.537863321861512341e-05, 1.535610544266659150e-05, 1.533355503407101119e-05, 1.531098203188438389e-05, 1.528838647519542679e-05, 1.526576840312653853e-05, 1.524312785482974695e-05, 1.522046486949254346e-05, 1.519777948633389182e-05, 1.517507174460505488e-05, 1.515234168359082779e-05, 1.512958934260503186e-05, 1.510681476099683677e-05, 1.508401797814636614e-05, 1.506119903346599019e-05, 1.503835796639985130e-05, 1.501549481642512107e-05, 1.499260962304786001e-05, 1.496970242580881293e-05, 1.494677326427946855e-05, 1.492382217806296074e-05, 1.490084920679396517e-05, 1.487785439013972426e-05, 1.485483776779586279e-05, 1.483179937949247977e-05, 1.480873926498983879e-05, 1.478565746407950465e-05, 1.476255401658521927e-05, 1.473942896235879182e-05, 1.471628234128609409e-05, 1.469311419328291166e-05, 1.466992455829600951e-05, 1.464671347630293547e-05, 1.462348098731291303e-05, 1.460022713136303138e-05, 1.457695194852378327e-05, 1.455365547889541267e-05, 1.453033776260854659e-05, 1.450699883982418667e-05, 1.448363875073482043e-05, 1.446025753555907317e-05, 1.443685523455289888e-05, 1.441343188799527227e-05, 1.438998753619931191e-05, 1.436652221950813827e-05, 1.434303597829180074e-05, 1.431952885295214965e-05, 1.429600088392398836e-05, 1.427245211166568633e-05, 1.424888257666933175e-05, 1.422529231945662675e-05, 1.420168138057476238e-05, 1.417804980060741818e-05, 1.415439762016053710e-05, 1.413072487987358766e-05, 1.410703162041408701e-05, 1.408331788247984223e-05, 1.405958370679365802e-05, 1.403582913411450568e-05, 1.401205420522321845e-05, 1.398825896093358422e-05, 1.396444344208819340e-05, 1.394060768955432740e-05, 1.391675174423419081e-05, 1.389287564705535346e-05, 1.386897943897197185e-05, 1.384506316096978834e-05, 1.382112685406296156e-05, 1.379717055928974313e-05, 1.377319431772406339e-05, 1.374919817046068294e-05, 1.372518215862669530e-05, 1.370114632337723078e-05, 1.367709070589123996e-05, 1.365301534738189524e-05, 1.362892028908695670e-05, 1.360480557227012564e-05, 1.358067123822566939e-05, 1.355651732827569726e-05, 1.353234388376560689e-05, 1.350815094607457727e-05, 1.348393855660616841e-05, 1.345970675678901078e-05, 1.343545558808236018e-05, 1.341118509197159152e-05, 1.338689530996915088e-05, 1.336258628361570748e-05, 1.333825805447574404e-05, 1.331391066414381291e-05, 1.328954415424031454e-05, 1.326515856641239017e-05, 1.324075394233402017e-05, 1.321633032370680832e-05, 1.319188775225575683e-05, 1.316742626973557508e-05, 1.314294591792638680e-05, 1.311844673863462289e-05, 1.309392877369414963e-05, 1.306939206496185396e-05, 1.304483665432394542e-05, 1.302026258369162442e-05, 1.299566989500221213e-05, 1.297105863021890323e-05, 1.294642883133181618e-05, 1.292178054035371400e-05, 1.289711379932625202e-05, 1.287242865031577658e-05, 1.284772513541408905e-05, 1.282300329673861355e-05, 1.279826317643322026e-05, 1.277350481666399365e-05, 1.274872825962555472e-05, 1.272393354753653787e-05, 1.269912072264095289e-05, 1.267428982720882198e-05, 1.264944090353206311e-05, 1.262457399393062939e-05, 1.259968914074846016e-05, 1.257478638635410787e-05, 1.254986577314098031e-05, 1.252492734352821643e-05, 1.249997113995626482e-05, 1.247499720489333305e-05, 1.245000558083105593e-05, 1.242499631028534423e-05, 1.239996943579649478e-05, 1.237492499993008838e-05, 1.234986304527149588e-05, 1.232478361443785695e-05, 1.229968675006260988e-05, 1.227457249480759227e-05, 1.224944089135844166e-05, 1.222429198242133614e-05, 1.219912581072837299e-05, 1.217394241903858686e-05, 1.214874185012804959e-05, 1.212352414680066655e-05, 1.209828935188381946e-05, 1.207303750822391271e-05, 1.204776865869821995e-05, 1.202248284619963753e-05, 1.199718011364857848e-05, 1.197186050398852056e-05, 1.194652406018268925e-05, 1.192117082521935680e-05, 1.189580084211307210e-05, 1.187041415389447429e-05, 1.184501080362135500e-05, 1.181959083437413687e-05, 1.179415428925140295e-05, 1.176870121138090640e-05, 1.174323164390946539e-05, 1.171774563000402869e-05, 1.169224321285718982e-05, 1.166672443568364988e-05, 1.164118934171591120e-05, 1.161563797421625780e-05, 1.159007037646124788e-05, 1.156448659175370616e-05, 1.153888666341837856e-05, 1.151327063479727351e-05, 1.148763854926087164e-05, 1.146199045019776990e-05, 1.143632638101604532e-05, 1.141064638514850995e-05, 1.138495050604832670e-05, 1.135923878718992406e-05, 1.133351127207019723e-05, 1.130776800420377151e-05, 1.128200902712979209e-05, 1.125623438440731793e-05, 1.123044411961638898e-05, 1.120463827635793980e-05, 1.117881689825482278e-05, 1.115298002894728836e-05, 1.112712771209963087e-05, 1.110125999139560943e-05, 1.107537691053948478e-05, 1.104947851325608191e-05, 1.102356484329156087e-05, 1.099763594440917992e-05, 1.097169186039567877e-05, 1.094573263505695194e-05, 1.091975831221884495e-05, 1.089376893572849435e-05, 1.086776454944944541e-05, 1.084174519726857747e-05, 1.081571092309145878e-05, 1.078966177084332403e-05, 1.076359778446902857e-05, 1.073751900793425968e-05, 1.071142548522061700e-05, 1.068531726033267508e-05, 1.065919437729318752e-05, 1.063305688014414400e-05, 1.060690481294679069e-05, 1.058073821978263983e-05, 1.055455714474879586e-05, 1.052836163196476387e-05, 1.050215172556787727e-05, 1.047592746971428547e-05, 1.044968890857997540e-05, 1.042343608635630764e-05, 1.039716904725658937e-05, 1.037088783551154957e-05, 1.034459249537035543e-05, 1.031828307110069195e-05, 1.029195960698954296e-05, 1.026562214733874075e-05, 1.023927073647180677e-05, 1.021290541872911669e-05, 1.018652623846913206e-05, 1.016013324006937434e-05, 1.013372646792177983e-05, 1.010730596643840353e-05, 1.008087178005250845e-05, 1.005442395320799296e-05, 1.002796253037106966e-05, 1.000148755602535937e-05, 9.974999074668499605e-06, 9.948497130817758732e-06, 9.921981769011167576e-06, 9.895453033797009453e-06, 9.868910969745307626e-06, 9.842355621443229306e-06, 9.815787033490171165e-06, 9.789205250510639320e-06, 9.762610317137779622e-06, 9.736002278026196659e-06, 9.709381177847183257e-06, 9.682747061285076553e-06, 9.656099973043119459e-06, 9.629439957844580439e-06, 9.602767060421996191e-06, 9.576081325528938630e-06, 9.549382797935239317e-06, 9.522671522422152896e-06, 9.495947543795279434e-06, 9.469210906867942245e-06, 9.442461656474211866e-06, 9.415699837462780319e-06, 9.388925494699251485e-06, 9.362138673060321986e-06, 9.335339417446537509e-06, 9.308527772765745159e-06, 9.281703783946009028e-06, 9.254867495930836310e-06, 9.228018953674286536e-06, 9.201158202152824955e-06, 9.174285286354521163e-06, 9.147400251280241734e-06, 9.120503141949406648e-06, 9.093594003395196786e-06, 9.066672880665727909e-06, 9.039739818825104378e-06, 9.012794862948631712e-06, 8.985838058129772433e-06, 8.958869449475451800e-06, 8.931889082107072564e-06, 8.904897001160526818e-06, 8.877893251787178559e-06, 8.850877879149215174e-06, 8.823850928426554141e-06, 8.796812444812058990e-06, 8.769762473512670938e-06, 8.742701059749261508e-06, 8.715628248757930179e-06, 8.688544085784935745e-06, 8.661448616093909644e-06, 8.634341884960995686e-06, 8.607223937675920702e-06, 8.580094819543192245e-06, 8.552954575877150229e-06, 8.525803252009093861e-06, 8.498640893282514541e-06, 8.471467545054051313e-06, 8.444283252693584040e-06, 8.417088061585236293e-06, 8.389882017122547259e-06, 8.362665164715615620e-06, 8.335437549786152881e-06, 8.308199217768709869e-06, 8.280950214110502253e-06, 8.253690584272631954e-06, 8.226420373725109989e-06, 8.199139627954044391e-06, 8.171848392456781621e-06, 8.144546712742973838e-06, 8.117234634335746107e-06, 8.089912202766776832e-06, 8.062579463582267641e-06, 8.035236462344063171e-06, 8.007883244618792097e-06, 7.980519855989690023e-06, 7.953146342051849323e-06, 7.925762748408476943e-06, 7.898369120678034894e-06, 7.870965504489368117e-06, 7.843551945482824260e-06, 7.816128489311378538e-06, 7.788695181635751436e-06, 7.761252068130339632e-06, 7.733799194484371352e-06, 7.706336606390938986e-06, 7.678864349559030343e-06, 7.651382469708615863e-06, 7.623891012566919128e-06, 7.596390023874411316e-06, 7.568879549385965705e-06, 7.541359634859820837e-06, 7.513830326069660051e-06, 7.486291668799735963e-06, 7.458743708839829774e-06, 7.431186491998662343e-06, 7.403620064086646896e-06, 7.376044470929390742e-06, 7.348459758362536833e-06, 7.320865972228207922e-06, 7.293263158380953586e-06, 7.265651362688819175e-06, 7.238030631022485159e-06, 7.210401009267189965e-06, 7.182762543317889180e-06, 7.155115279074271611e-06, 7.127459262454115302e-06, 7.099794539376063965e-06, 7.072121155773088872e-06, 7.044439157586204722e-06, 7.016748590766915022e-06, 6.989049501270983007e-06, 6.961341935071776648e-06, 6.933625938143150108e-06, 6.905901556472770121e-06, 6.878168836057126960e-06, 6.850427822896633509e-06, 6.822678563007751384e-06, 6.794921102411849065e-06, 6.767155487136433479e-06, 6.739381763221153768e-06, 6.711599976712790247e-06, 6.683810173666550362e-06, 6.656012400147000424e-06, 6.628206702223248536e-06, 6.600393125976181641e-06, 6.572571717494725024e-06, 6.544742522870751646e-06, 6.516905588211477621e-06, 6.489060959628140778e-06, 6.461208683237277135e-06, 6.433348805166743305e-06, 6.405481371550754579e-06, 6.377606428530946255e-06, 6.349724022256430393e-06, 6.321834198884846978e-06, 6.293937004577430805e-06, 6.266032485506268008e-06, 6.238120687849301104e-06, 6.210201657791606325e-06, 6.182275441526334667e-06, 6.154342085249840604e-06, 6.126401635169028404e-06, 6.098454137496264854e-06, 6.070499638450576959e-06, 6.042538184257546911e-06, 6.014569821150483539e-06, 5.986594595365494267e-06, 5.958612553148658637e-06, 5.930623740751106206e-06, 5.902628204430198146e-06, 5.874625990450596211e-06, 5.846617145079341469e-06, 5.818601714593137092e-06, 5.790579745273330534e-06, 5.762551283407129870e-06, 5.734516375287421685e-06, 5.706475067214021292e-06, 5.678427405488622724e-06, 5.650373436420893982e-06, 5.622313206329682362e-06, 5.594246761531722662e-06, 5.566174148354030117e-06, 5.538095413128795333e-06, 5.510010602189629393e-06, 5.481919761878927108e-06, 5.453822938542824637e-06, 5.425720178532350598e-06, 5.397611528204594132e-06, 5.369497033917694701e-06, 5.341376742036950889e-06, 5.313250698935960507e-06, 5.285118950985418586e-06, 5.256981544565421376e-06, 5.228838526060423110e-06, 5.200689941855467558e-06, 5.172535838343574997e-06, 5.144376261920593948e-06, 5.116211258986507301e-06, 5.088040875945238340e-06, 5.059865159205887419e-06, 5.031684155176451203e-06, 5.003497910277348947e-06, 4.975306470924004102e-06, 4.947109883540418871e-06, 4.918908194554141135e-06, 4.890701450392436716e-06, 4.862489697488431206e-06, 4.834272982282330548e-06, 4.806051351210067403e-06, 4.777824850715705102e-06, 4.749593527246427445e-06, 4.721357427247411611e-06, 4.693116597175468775e-06, 4.664871083481561351e-06, 4.636620932624414811e-06, 4.608366191064186958e-06, 4.580106905263683419e-06, 4.551843121688224666e-06, 4.523574886806906392e-06, 4.495302247087402971e-06, 4.467025249003513674e-06, 4.438743939031254453e-06, 4.410458363643807091e-06, 4.382168569323969735e-06, 4.353874602552768540e-06, 4.325576509810704499e-06, 4.297274337583880035e-06, 4.268968132358923578e-06, 4.240657940624201669e-06, 4.212343808870943822e-06, 4.184025783588192511e-06, 4.155703911270230802e-06, 4.127378238412765625e-06, 4.099048811507798988e-06, 4.070715677056124251e-06, 4.042378881555966573e-06, 4.014038471504123016e-06, 3.985694493402189081e-06, 3.957346993751478208e-06, 3.928996019054149177e-06, 3.900641615814448703e-06, 3.872283830533578419e-06, 3.843922709717123351e-06, 3.815558299870044264e-06, 3.787190647497741532e-06, 3.758819799106084362e-06, 3.730445801202501772e-06, 3.702068700290982133e-06, 3.673688542879417367e-06, 3.645305375474605875e-06, 3.616919244583363424e-06, 3.588530196712479099e-06, 3.560138278369910043e-06, 3.531743536059641239e-06, 3.503346016289161843e-06, 3.474945765564394002e-06, 3.446542830390825759e-06, 3.418137257274730355e-06, 3.389729092718031942e-06, 3.361318383225809444e-06, 3.332905175301145754e-06, 3.304489515446358047e-06, 3.276071450162896134e-06, 3.247651025952504596e-06, 3.219228289312160489e-06, 3.190803286741512408e-06, 3.162376064737790673e-06, 3.133946669796970298e-06, 3.105515148413712973e-06, 3.077081547082566888e-06, 3.048645912292790086e-06, 3.020208290535915742e-06, 2.991768728300558153e-06, 2.963327272073665506e-06, 2.934883968341654896e-06, 2.906438863585332248e-06, 2.877992004286070153e-06, 2.849543436927063593e-06, 2.821093207981844175e-06, 2.792641363926837816e-06, 2.764187951236258834e-06, 2.735733016378221633e-06, 2.707276605822253051e-06, 2.678818766034166952e-06, 2.650359543477265750e-06, 2.621898984612215892e-06, 2.593437135898305278e-06, 2.564974043786991837e-06, 2.536509754735746160e-06, 2.508044315190312937e-06, 2.479577771598490915e-06, 2.451110170405026132e-06, 2.422641558047759192e-06, 2.394171980963836554e-06, 2.365701485590918826e-06, 2.337230118355727609e-06, 2.308757925686609115e-06, 2.280284954008411731e-06, 2.251811249737322086e-06, 2.223336859294756392e-06, 2.194861829089504561e-06, 2.166386205531642727e-06, 2.137910035027340508e-06, 2.109433363973762291e-06, 2.080956238771628306e-06, 2.052478705813747498e-06, 2.024000811486230895e-06, 1.995522602174704602e-06, 1.967044124260481208e-06, 1.938565424115388649e-06, 1.910086548114368557e-06, 1.881607542624016534e-06, 1.853128454003741955e-06, 1.824649328612060788e-06, 1.796170212801429326e-06, 1.767691152919453541e-06, 1.739212195310062646e-06, 1.710733386308380735e-06, 1.682254772248246952e-06, 1.653776399458343917e-06, 1.625298314257040566e-06, 1.596820562965025221e-06, 1.568343191893775357e-06, 1.539866247346790458e-06, 1.511389775625828295e-06, 1.482913823025774875e-06, 1.454438435835837269e-06, 1.425963660340729677e-06, 1.397489542815526427e-06, 1.369016129533202052e-06, 1.340543466759477942e-06, 1.312071600754023862e-06, 1.283600577770373880e-06, 1.255130444057118356e-06, 1.226661245852771559e-06, 1.198193029393287390e-06, 1.169725840906935253e-06, 1.141259726615459012e-06, 1.112794732734043530e-06, 1.084330905472472989e-06, 1.055868291030004010e-06, 1.027406935602893447e-06, 9.989468853792469431e-07, 9.704881865402325193e-07, 9.420308852612365610e-07, 9.135750277067619272e-07, 8.851206600379252511e-07, 8.566678284073320727e-07, 8.282165789602556975e-07, 7.997669578345784331e-07, 7.713190111619702356e-07, 7.428727850627551608e-07, 7.144283256534326990e-07, 6.859856790415430612e-07, 6.575448913268522840e-07, 6.291060086012807616e-07, 6.006690769500975617e-07, 5.722341424467755480e-07, 5.438012511605241494e-07, 5.153704491511397178e-07, 4.869417824702034444e-07, 4.585152971622740877e-07, 4.300910392597420897e-07, 4.016690547890968787e-07, 3.732493897721107565e-07, 3.448320902143707074e-07, 3.164172021178716609e-07, 2.880047714758701841e-07, 2.595948442690147584e-07, 2.311874664728711649e-07, 2.027826840527815497e-07, 1.743805429650557499e-07, 1.459810891581670650e-07, 1.175843685676092063e-07, 8.919042712215745753e-08, 6.079931074505808186e-08, 3.241106534255964109e-08, 4.025736816502081591e-09, -2.435662894082317987e-08, -5.273598605054467814e-08, -8.111228864095392521e-08, -1.094854908463140228e-07, -1.378555468183267703e-07, -1.662224107135460831e-07, -1.945860366985168813e-07, -2.229463789549104130e-07, -2.513033916656760457e-07, -2.796570290328311824e-07, -3.080072452636205043e-07, -3.363539945756413148e-07, -3.646972312019860085e-07, -3.930369093786621500e-07, -4.213729833560467410e-07, -4.497054073977041867e-07, -4.780341357741241273e-07, -5.063591227665998440e-07, -5.346803226723516958e-07, -5.629976897906932192e-07, -5.913111784408094492e-07, -6.196207429479196838e-07, -6.479263376496726883e-07, -6.762279168949519553e-07, -7.045254350439591375e-07, -7.328188464670114728e-07, -7.611081055496760742e-07, -7.893931666852627832e-07, -8.176739842786822984e-07, -8.459505127515759133e-07, -8.742227065297576173e-07, -9.024905200546500997e-07, -9.307539077821048322e-07, -9.590128241761500135e-07, -9.872672237141163887e-07, -1.015517060885448121e-06, -1.043762290190521711e-06, -1.072002866145759426e-06, -1.100238743276122474e-06, -1.128469876120250375e-06, -1.156696219229254996e-06, -1.184917727166802504e-06, -1.213134354507924977e-06, -1.241346055844126530e-06, -1.269552785775908253e-06, -1.297754498917866284e-06, -1.325951149897512323e-06, -1.354142693355351765e-06, -1.382329083943687479e-06, -1.410510276331730175e-06, -1.438686225198120363e-06, -1.466856885236032795e-06, -1.495022211151996545e-06, -1.523182157664695818e-06, -1.551336679510098531e-06, -1.579485731433951592e-06, -1.607629268196907997e-06, -1.635767244573322347e-06, -1.663899615351344234e-06, -1.692026335331714392e-06, -1.720147359332872099e-06, -1.748262642183497685e-06, -1.776372138727590281e-06, -1.804475803823291928e-06, -1.832573592342960422e-06, -1.860665459171999347e-06, -1.888751359213928416e-06, -1.916831247382935088e-06, -1.944905078608967352e-06, -1.972972807836551479e-06, -2.001034390023602158e-06, -2.029089780146525228e-06, -2.057138933194004695e-06, -2.085181804165821119e-06, -2.113218348084230659e-06, -2.141248519981455237e-06, -2.169272274904828267e-06, -2.197289567920566493e-06, -2.225300354106359295e-06, -2.253304588556450467e-06, -2.281302226380426956e-06, -2.309293222702088923e-06, -2.337277532664475188e-06, -2.365255111423717159e-06, -2.393225914147835623e-06, -2.421189896028086326e-06, -2.449147012266506897e-06, -2.477097218081002859e-06, -2.505040468710433632e-06, -2.532976719402143368e-06, -2.560905925423298483e-06, -2.588828042059750094e-06, -2.616743024609801970e-06, -2.644650828388036163e-06, -2.672551408730415951e-06, -2.700444720980595672e-06, -2.728330720507450918e-06, -2.756209362691473914e-06, -2.784080602929790071e-06, -2.811944396641231288e-06, -2.839800699253928195e-06, -2.867649466216629471e-06, -2.895490652997502029e-06, -2.923324215077965033e-06, -2.951150107956525690e-06, -2.978968287153802157e-06, -3.006778708198923153e-06, -3.034581326647006909e-06, -3.062376098065547231e-06, -3.090162978040728978e-06, -3.117941922176194357e-06, -3.145712886093186074e-06, -3.173475825429328028e-06, -3.201230695843679133e-06, -3.228977453009349310e-06, -3.256716052617308593e-06, -3.284446450381398600e-06, -3.312168602025995074e-06, -3.339882463297261562e-06, -3.367587989961999570e-06, -3.395285137801447433e-06, -3.422973862616377761e-06, -3.450654120225895496e-06, -3.478325866466280445e-06, -3.505989057196008490e-06, -3.533643648288376470e-06, -3.561289595635322305e-06, -3.588926855152400037e-06, -3.616555382766538093e-06, -3.644175134427151505e-06, -3.671786066105067451e-06, -3.699388133786368175e-06, -3.726981293477395674e-06, -3.754565501203606519e-06, -3.782140713009636221e-06, -3.809706884958133718e-06, -3.837263973134774963e-06, -3.864811933640914911e-06, -3.892350722598590523e-06, -3.919880296149358207e-06, -3.947400610453176165e-06, -3.974911621693313792e-06, -4.002413286069105308e-06, -4.029905559800920152e-06, -4.057388399128988142e-06, -4.084861760313489266e-06, -4.112325599633384770e-06, -4.139779873391386706e-06, -4.167224537906702245e-06, -4.194659549519949858e-06, -4.222084864592057323e-06, -4.249500439503070800e-06, -4.276906230657137924e-06, -4.304302194475244498e-06, -4.331688287400134908e-06, -4.359064465895182180e-06, -4.386430686444498093e-06, -4.413786905551693974e-06, -4.441133079744936635e-06, -4.468469165570812464e-06, -4.495795119593211041e-06, -4.523110898404438204e-06, -4.550416458612992524e-06, -4.577711756848552628e-06, -4.604996749765727864e-06, -4.632271394036775512e-06, -4.659535646356554232e-06, -4.686789463441367017e-06, -4.714032802027829558e-06, -4.741265618877825384e-06, -4.768487870772411464e-06, -4.795699514510742470e-06, -4.822900506921101694e-06, -4.850090804848730871e-06, -4.877270365160779398e-06, -4.904439144751344178e-06, -4.931597100527981468e-06, -4.958744189428947385e-06, -4.985880368409836812e-06, -5.013005594449683729e-06, -5.040119824548711490e-06, -5.067223015734373018e-06, -5.094315125048091351e-06, -5.121396109562331589e-06, -5.148465926367332973e-06, -5.175524532575948827e-06, -5.202571885328704199e-06, -5.229607941781613823e-06, -5.256632659117223204e-06, -5.283645994543456644e-06, -5.310647905287579599e-06, -5.337638348599963733e-06, -5.364617281758985316e-06, -5.391584662057738662e-06, -5.418540446821036927e-06, -5.445484593392321216e-06, -5.472417059138321806e-06, -5.499337801454136952e-06, -5.526246777751175378e-06, -5.553143945468051657e-06, -5.580029262069539282e-06, -5.606902685040461016e-06, -5.633764171889517480e-06, -5.660613680154107617e-06, -5.687451167388338946e-06, -5.714276591173923785e-06, -5.741089909119117079e-06, -5.767891078852673665e-06, -5.794680058028788165e-06, -5.821456804325948956e-06, -5.848221275445749778e-06, -5.874973429117870288e-06, -5.901713223092794970e-06, -5.928440615146813164e-06, -5.955155563080790024e-06, -5.981858024720303739e-06, -6.008547957914452059e-06, -6.035225320540798974e-06, -6.061890070498109705e-06, -6.088542165711359216e-06, -6.115181564130470131e-06, -6.141808223729324249e-06, -6.168422102510467811e-06, -6.195023158498113311e-06, -6.221611349742904911e-06, -6.248186634320866417e-06, -6.274748970333381803e-06, -6.301298315906143194e-06, -6.327834629193964557e-06, -6.354357868373671701e-06, -6.380867991648937994e-06, -6.407364957249177285e-06, -6.433848723429619297e-06, -6.460319248470166125e-06, -6.486776490680189838e-06, -6.513220408391523275e-06, -6.539650959963194962e-06, -6.566068103780427074e-06, -6.592471798253380974e-06, -6.618862001822100503e-06, -6.645238672949323206e-06, -6.671601770125393130e-06, -6.697951251867104615e-06, -6.724287076717731101e-06, -6.750609203245993439e-06, -6.776917590050753298e-06, -6.803212195754087829e-06, -6.829492979005993233e-06, -6.855759898483294634e-06, -6.882012912889735018e-06, -6.908251980954843591e-06, -6.934477061439913298e-06, -6.960688113125048836e-06, -6.986885094825756647e-06, -7.013067965380147938e-06, -7.039236683653463537e-06, -7.065391208541970240e-06, -7.091531498966907070e-06, -7.117657513873534902e-06, -7.143769212241630360e-06, -7.169866553073956844e-06, -7.195949495400914749e-06, -7.222017998285359382e-06, -7.248072020809651524e-06, -7.274111522092321959e-06, -7.300136461275107633e-06, -7.326146797528898669e-06, -7.352142490051437832e-06, -7.378123498073331915e-06, -7.404089780845137881e-06, -7.430041297653885929e-06, -7.455978007810160552e-06, -7.481899870652998080e-06, -7.507806845554493691e-06, -7.533698891908244494e-06, -7.559575969139887466e-06, -7.585438036706107579e-06, -7.611285054088669602e-06, -7.637116980798157751e-06, -7.662933776378569155e-06, -7.688735400394698986e-06, -7.714521812448374698e-06, -7.740292972165764085e-06, -7.766048839202172873e-06, -7.791789373246610229e-06, -7.817514534010323323e-06, -7.843224281237293761e-06, -7.868918574703163545e-06, -7.894597374209453230e-06, -7.920260639587077106e-06, -7.945908330701178065e-06, -7.971540407439465652e-06, -7.997156829722756541e-06, -8.022757557503834428e-06, -8.048342550761815572e-06, -8.073911769506782060e-06, -8.099465173778621377e-06, -8.125002723646091276e-06, -8.150524379211373431e-06, -8.176030100603251435e-06, -8.201519847981772864e-06, -8.226993581537185408e-06, -8.252451261489977528e-06, -8.277892848089795947e-06, -8.303318301620094165e-06, -8.328727582391313848e-06, -8.354120650745580775e-06, -8.379497467055493584e-06, -8.404857991723180174e-06, -8.430202185184878461e-06, -8.455530007904075413e-06, -8.480841420376269063e-06, -8.506136383127764036e-06, -8.531414856715815540e-06, -8.556676801727534999e-06, -8.581922178784443704e-06, -8.607150948535820218e-06, -8.632363071663159152e-06, -8.657558508879234350e-06, -8.682737220928110749e-06, -8.707899168584061868e-06, -8.733044312656133623e-06, -8.758172613981496810e-06, -8.783284033429946549e-06, -8.808378531902863817e-06, -8.833456070332170210e-06, -8.858516609684844326e-06, -8.883560110956287799e-06, -8.908586535174892502e-06, -8.933595843400858090e-06, -8.958587996726391899e-06, -8.983562956274529875e-06, -9.008520683203844387e-06, -9.033461138701583254e-06, -9.058384283988316573e-06, -9.083290080316942301e-06, -9.108178488972579526e-06, -9.133049471271590997e-06, -9.157902988567348022e-06, -9.182739002237780786e-06, -9.207557473701228026e-06, -9.232358364404138115e-06, -9.257141635825673532e-06, -9.281907249481070196e-06, -9.306655166916096174e-06, -9.331385349706006446e-06, -9.356097759465644616e-06, -9.380792357838397606e-06, -9.405469106500662904e-06, -9.430127967166351396e-06, -9.454768901574737519e-06, -9.479391871506061615e-06, -9.503996838769435989e-06, -9.528583765207210518e-06, -9.553152612698486147e-06, -9.577703343153556656e-06, -9.602235918512905770e-06, -9.626750300757168274e-06, -9.651246451896240550e-06, -9.675724333973607228e-06, -9.700183909070964283e-06, -9.724625139297085646e-06, -9.749047986797948622e-06, -9.773452413755651395e-06, -9.797838382382915775e-06, -9.822205854926477028e-06, -9.846554793671600253e-06, -9.870885160929888195e-06, -9.895196919054903914e-06, -9.919490030430029419e-06, -9.943764457472978658e-06, -9.968020162640180067e-06, -9.992257108415929467e-06, -1.001647525732229357e-05, -1.004067457191802409e-05, -1.006485501479325869e-05, -1.008901654857378328e-05, -1.011315913592017646e-05, -1.013728273952660851e-05, -1.016138732212542376e-05, -1.018547284648052359e-05, -1.020953927539187100e-05, -1.023358657169437245e-05, -1.025761469825804394e-05, -1.028162361798682850e-05, -1.030561329382321427e-05, -1.032958368874152766e-05, -1.035353476575256999e-05, -1.037746648790241984e-05, -1.040137881827251261e-05, -1.042527171997870375e-05, -1.044914515617554795e-05, -1.047299909005000567e-05, -1.049683348482558517e-05, -1.052064830376163096e-05, -1.054444351015198383e-05, -1.056821906732960902e-05, -1.059197493866005372e-05, -1.061571108754579409e-05, -1.063942747742530856e-05, -1.066312407177302534e-05, -1.068680083409840592e-05, -1.071045772795028865e-05, -1.073409471691036831e-05, -1.075771176459773616e-05, -1.078130883466766194e-05, -1.080488589081188695e-05, -1.082844289675735854e-05, -1.085197981627072452e-05, -1.087549661315198375e-05, -1.089899325123870610e-05, -1.092246969440510579e-05, -1.094592590656091649e-05, -1.096936185165594333e-05, -1.099277749367345939e-05, -1.101617279663471363e-05, -1.103954772459774674e-05, -1.106290224165769437e-05, -1.108623631194547422e-05, -1.110954989963234308e-05, -1.113284296892346789e-05, -1.115611548406220150e-05, -1.117936740932911201e-05, -1.120259870904101205e-05, -1.122580934755524987e-05, -1.124899928926438150e-05, -1.127216849859523728e-05, -1.129531694001846799e-05, -1.131844457803805851e-05, -1.134155137719560032e-05, -1.136463730207343733e-05, -1.138770231728961251e-05, -1.141074638749671081e-05, -1.143376947739142222e-05, -1.145677155170409272e-05, -1.147975257520301537e-05, -1.150271251269869426e-05, -1.152565132903221646e-05, -1.154856898909013607e-05, -1.157146545779298169e-05, -1.159434070009944076e-05, -1.161719468100952404e-05, -1.164002736555952413e-05, -1.166283871882087531e-05, -1.168562870590975386e-05, -1.170839729197648331e-05, -1.173114444221005090e-05, -1.175387012184204282e-05, -1.177657429613540581e-05, -1.179925693039901275e-05, -1.182191798997634627e-05, -1.184455744025059623e-05, -1.186717524664284873e-05, -1.188977137461705989e-05, -1.191234578966902245e-05, -1.193489845734064328e-05, -1.195742934320871008e-05, -1.197993841288916210e-05, -1.200242563204113221e-05, -1.202489096635675366e-05, -1.204733438157051643e-05, -1.206975584345821185e-05, -1.209215531783195538e-05, -1.211453277054420161e-05, -1.213688816748684464e-05, -1.215922147459029658e-05, -1.218153265782756342e-05, -1.220382168320816505e-05, -1.222608851678230606e-05, -1.224833312463986943e-05, -1.227055547291046061e-05, -1.229275552776254691e-05, -1.231493325540739962e-05, -1.233708862209324607e-05, -1.235922159410916937e-05, -1.238133213778425123e-05, -1.240342021948777693e-05, -1.242548580562799017e-05, -1.244752886265635368e-05, -1.246954935706153186e-05, -1.249154725537334646e-05, -1.251352252416207858e-05, -1.253547513003722189e-05, -1.255740503965177195e-05, -1.257931221969618692e-05, -1.260119663690234147e-05, -1.262305825804272719e-05, -1.264489704993039670e-05, -1.266671297941814370e-05, -1.268850601340234006e-05, -1.271027611881720306e-05, -1.273202326263877478e-05, -1.275374741188387179e-05, -1.277544853361023926e-05, -1.279712659491557693e-05, -1.281878156294160652e-05, -1.284041340486808155e-05, -1.286202208791681409e-05, -1.288360757935088705e-05, -1.290516984647348867e-05, -1.292670885663200366e-05, -1.294822457721317497e-05, -1.296971697564214833e-05, -1.299118601939141860e-05, -1.301263167597078061e-05, -1.303405391293178448e-05, -1.305545269787029207e-05, -1.307682799842088307e-05, -1.309817978226070228e-05, -1.311950801710862784e-05, -1.314081267072425303e-05, -1.316209371091190296e-05, -1.318335110551576920e-05, -1.320458482241900683e-05, -1.322579482955253680e-05, -1.324698109488532370e-05, -1.326814358642841274e-05, -1.328928227223777235e-05, -1.331039712040962027e-05, -1.333148809907929869e-05, -1.335255517643033413e-05, -1.337359832068452205e-05, -1.339461750010598923e-05, -1.341561268300512570e-05, -1.343658383772788162e-05, -1.345753093266946888e-05, -1.347845393626369192e-05, -1.349935281698697277e-05, -1.352022754336111410e-05, -1.354107808394870829e-05, -1.356190440735209393e-05, -1.358270648222207510e-05, -1.360348427724849564e-05, -1.362423776116390512e-05, -1.364496690274760252e-05, -1.366567167081512460e-05, -1.368635203423162901e-05, -1.370700796190147576e-05, -1.372763942277298251e-05, -1.374824638583665928e-05, -1.376882882013000784e-05, -1.378938669472690660e-05, -1.380991997875136307e-05, -1.383042864136662275e-05, -1.385091265177944148e-05, -1.387137197924360919e-05, -1.389180659305073750e-05, -1.391221646253874702e-05, -1.393260155709084752e-05, -1.395296184613107914e-05, -1.397329729912798853e-05, -1.399360788559378858e-05, -1.401389357508345040e-05, -1.403415433719837605e-05, -1.405439014158112832e-05, -1.407460095791793964e-05, -1.409478675594270325e-05, -1.411494750542766610e-05, -1.413508317619179234e-05, -1.415519373809990284e-05, -1.417527916105806892e-05, -1.419533941501743765e-05, -1.421537446997321536e-05, -1.423538429596486412e-05, -1.425536886307505659e-05, -1.427532814143367393e-05, -1.429526210121195116e-05, -1.431517071262649037e-05, -1.433505394593831884e-05, -1.435491177145190141e-05, -1.437474415951907066e-05, -1.439455108053326039e-05, -1.441433250493363737e-05, -1.443408840320376984e-05, -1.445381874587205613e-05, -1.447352350351054723e-05, -1.449320264673883641e-05, -1.451285614621860602e-05, -1.453248397265717482e-05, -1.455208609680697797e-05, -1.457166248946416596e-05, -1.459121312147282290e-05, -1.461073796371914569e-05, -1.463023698713537592e-05, -1.464971016269880548e-05, -1.466915746143192396e-05, -1.468857885440146314e-05, -1.470797431272200033e-05, -1.472734380755173502e-05, -1.474668731009131154e-05, -1.476600479159223852e-05, -1.478529622334771897e-05, -1.480456157669644494e-05, -1.482380082302526908e-05, -1.484301393376387851e-05, -1.486220088038835232e-05, -1.488136163442046366e-05, -1.490049616742666158e-05, -1.491960445102170988e-05, -1.493868645686446383e-05, -1.495774215665669108e-05, -1.497677152215141661e-05, -1.499577452514397811e-05, -1.501475113747551403e-05, -1.503370133103578588e-05, -1.505262507775787247e-05, -1.507152234962174940e-05, -1.509039311865344208e-05, -1.510923735692500709e-05, -1.512805503655393414e-05, -1.514684612970716273e-05, -1.516561060859189524e-05, -1.518434844546762477e-05, -1.520305961263662806e-05, -1.522174408244757551e-05, -1.524040182729810962e-05, -1.525903281963050811e-05, -1.527763703193097924e-05, -1.529621443673731215e-05, -1.531476500663049131e-05, -1.533328871423796601e-05, -1.535178553223732651e-05, -1.537025543334681388e-05, -1.538869839033722925e-05, -1.540711437602281981e-05, -1.542550336326459570e-05, -1.544386532497378598e-05, -1.546220023410322257e-05, -1.548050806365532946e-05, -1.549878878668116053e-05, -1.551704237627607962e-05, -1.553526880558262692e-05, -1.555346804779358862e-05, -1.557164007614385184e-05, -1.558978486391800758e-05, -1.560790238444938514e-05, -1.562599261111605067e-05, -1.564405551734418862e-05, -1.566209107660715636e-05, -1.568009926242495229e-05, -1.569808004836715674e-05, -1.571603340804862564e-05, -1.573395931513128286e-05, -1.575185774332799957e-05, -1.576972866639423580e-05, -1.578757205813530453e-05, -1.580538789240601256e-05, -1.582317614310604592e-05, -1.584093678418363913e-05, -1.585866978963492138e-05, -1.587637513350259171e-05, -1.589405278987989672e-05, -1.591170273290515530e-05, -1.592932493676558388e-05, -1.594691937569615121e-05, -1.596448602397974778e-05, -1.598202485594644719e-05, -1.599953584597666053e-05, -1.601701896849652172e-05, -1.603447419798095379e-05, -1.605190150895292346e-05, -1.606930087598371562e-05, -1.608667227369180841e-05, -1.610401567674636986e-05, -1.612133105986243649e-05, -1.613861839780401011e-05, -1.615587766538357332e-05, -1.617310883746099511e-05, -1.619031188894705457e-05, -1.620748679479853819e-05, -1.622463353002145527e-05, -1.624175206967033315e-05, -1.625884238884815284e-05, -1.627590446270586112e-05, -1.629293826644512174e-05, -1.630994377531411071e-05, -1.632692096461033524e-05, -1.634386980968000354e-05, -1.636079028591811292e-05, -1.637768236876765019e-05, -1.639454603372275280e-05, -1.641138125632403996e-05, -1.642818801216178735e-05, -1.644496627687529690e-05, -1.646171602615187701e-05, -1.647843723573034583e-05, -1.649512988139672834e-05, -1.651179393898404970e-05, -1.652842938437888788e-05, -1.654503619351394009e-05, -1.656161434237103484e-05, -1.657816380698351382e-05, -1.659468456343162059e-05, -1.661117658784561774e-05, -1.662763985640505158e-05, -1.664407434533885047e-05, -1.666048003092451165e-05, -1.667685688949187896e-05, -1.669320489741508255e-05, -1.670952403112289971e-05, -1.672581426709061325e-05, -1.674207558184297271e-05, -1.675830795195661684e-05, -1.677451135405628912e-05, -1.679068576481398389e-05, -1.680683116095600048e-05, -1.682294751925519452e-05, -1.683903481653430513e-05, -1.685509302966865523e-05, -1.687112213557824363e-05, -1.688712211123799076e-05, -1.690309293366985789e-05, -1.691903457994556098e-05, -1.693494702718975219e-05, -1.695083025257258964e-05, -1.696668423331633080e-05, -1.698250894669490549e-05, -1.699830437002992475e-05, -1.701407048069316087e-05, -1.702980725610935624e-05, -1.704551467374910818e-05, -1.706119271113527936e-05, -1.707684134584240484e-05, -1.709246055549313114e-05, -1.710805031776099454e-05, -1.712361061036995349e-05, -1.713914141109340605e-05, -1.715464269775746623e-05, -1.717011444823637984e-05, -1.718555664045470305e-05, -1.720096925239056858e-05, -1.721635226206803186e-05, -1.723170564756395238e-05, -1.724702938700710595e-05, -1.726232345857472546e-05, -1.727758784049532317e-05, -1.729282251104814522e-05, -1.730802744856223312e-05, -1.732320263141957133e-05, -1.733834803805070981e-05, -1.735346364693759983e-05, -1.736854943661300112e-05, -1.738360538566061057e-05, -1.739863147271404579e-05, -1.741362767646006048e-05, -1.742859397563418388e-05, -1.744353034902346178e-05, -1.745843677546604313e-05, -1.747331323385093618e-05, -1.748815970311761535e-05, -1.750297616225864034e-05, -1.751776259031540060e-05, -1.753251896638124597e-05, -1.754724526960068368e-05, -1.756194147916852457e-05, -1.757660757433304757e-05, -1.759124353439143253e-05, -1.760584933869309413e-05, -1.762042496663847229e-05, -1.763497039767937443e-05, -1.764948561131834861e-05, -1.766397058711118400e-05, -1.767842530466317037e-05, -1.769284974363157144e-05, -1.770724388372518779e-05, -1.772160770470421459e-05, -1.773594118637975028e-05, -1.775024430861632416e-05, -1.776451705132803727e-05, -1.777875939448136439e-05, -1.779297131809420539e-05, -1.780715280223550909e-05, -1.782130382702796009e-05, -1.783542437264441446e-05, -1.784951441930761172e-05, -1.786357394729595839e-05, -1.787760293693695164e-05, -1.789160136860992707e-05, -1.790556922274798312e-05, -1.791950647983409157e-05, -1.793341312040383847e-05, -1.794728912504456699e-05, -1.796113447439500130e-05, -1.797494914914770977e-05, -1.798873313004597434e-05, -1.800248639788308236e-05, -1.801620893350835411e-05, -1.802990071782048514e-05, -1.804356173177027028e-05, -1.805719195636250779e-05, -1.807079137265285519e-05, -1.808435996174736167e-05, -1.809789770480777055e-05, -1.811140458304579668e-05, -1.812488057772518646e-05, -1.813832567016465197e-05, -1.815173984173061694e-05, -1.816512307384622921e-05, -1.817847534798455736e-05, -1.819179664567096576e-05, -1.820508694848565912e-05, -1.821834623805759394e-05, -1.823157449607001139e-05, -1.824477170425974949e-05, -1.825793784441438693e-05, -1.827107289837395066e-05, -1.828417684803347059e-05, -1.829724967533616600e-05, -1.831029136228217680e-05, -1.832330189092189229e-05, -1.833628124335881409e-05, -1.834922940174902768e-05, -1.836214634830145640e-05, -1.837503206527701450e-05, -1.838788653499117193e-05, -1.840070973981027143e-05, -1.841350166215352754e-05, -1.842626228449525938e-05, -1.843899158935899529e-05, -1.845168955932294466e-05, -1.846435617701938132e-05, -1.847699142513151965e-05, -1.848959528639624542e-05, -1.850216774360332299e-05, -1.851470877959477863e-05, -1.852721837726749925e-05, -1.853969651956954951e-05, -1.855214318950194715e-05, -1.856455837012113976e-05, -1.857694204453313991e-05, -1.858929419589876660e-05, -1.860161480743309636e-05, -1.861390386240267822e-05, -1.862616134412759368e-05, -1.863838723598126363e-05, -1.865058152139022129e-05, -1.866274418383355997e-05, -1.867487520684547417e-05, -1.868697457401166816e-05, -1.869904226897158876e-05, -1.871107827541804587e-05, -1.872308257709654836e-05, -1.873505515780774360e-05, -1.874699600140383951e-05, -1.875890509179092890e-05, -1.877078241292863702e-05, -1.878262794882999966e-05, -1.879444168356086679e-05, -1.880622360124218958e-05, -1.881797368604682538e-05, -1.882969192220167222e-05, -1.884137829398699801e-05, -1.885303278573618977e-05, -1.886465538183793562e-05, -1.887624606673260624e-05, -1.888780482491498569e-05, -1.889933164093327873e-05, -1.891082649938937506e-05, -1.892228938493828010e-05, -1.893372028229037493e-05, -1.894511917620864813e-05, -1.895648605150800125e-05, -1.896782089306050037e-05, -1.897912368578972815e-05, -1.899039441467306061e-05, -1.900163306474327309e-05, -1.901283962108535206e-05, -1.902401406883855170e-05, -1.903515639319616011e-05, -1.904626657940460823e-05, -1.905734461276599063e-05, -1.906839047863499246e-05, -1.907940416241888265e-05, -1.909038564958189823e-05, -1.910133492564008748e-05, -1.911225197616366140e-05, -1.912313678677874870e-05, -1.913398934316182573e-05, -1.914480963104714666e-05, -1.915559763622088198e-05, -1.916635334452371724e-05, -1.917707674185001277e-05, -1.918776781415023298e-05, -1.919842654742533221e-05, -1.920905292773407311e-05, -1.921964694118716516e-05, -1.923020857394966686e-05, -1.924073781224269677e-05, -1.925123464233866632e-05, -1.926169905056549137e-05, -1.927213102330672766e-05, -1.928253054699820301e-05, -1.929289760813035856e-05, -1.930323219324970902e-05, -1.931353428895377403e-05, -1.932380388189760374e-05, -1.933404095878877446e-05, -1.934424550638975027e-05, -1.935441751151717823e-05, -1.936455696104227807e-05, -1.937466384188995443e-05, -1.938473814104116862e-05, -1.939477984552974018e-05, -1.940478894244398675e-05, -1.941476541892856044e-05, -1.942470926217975189e-05, -1.943462045944975588e-05, -1.944449899804616319e-05, -1.945434486532971756e-05, -1.946415804871615555e-05, -1.947393853567576600e-05, -1.948368631373284117e-05, -1.949340137046775710e-05, -1.950308369351409364e-05, -1.951273327055995247e-05, -1.952235008934988153e-05, -1.953193413768037899e-05, -1.954148540340388447e-05, -1.955100387442854188e-05, -1.956048953871559050e-05, -1.956994238428163511e-05, -1.957936239919785311e-05, -1.958874957159010635e-05, -1.959810388963863960e-05, -1.960742534157977458e-05, -1.961671391570310121e-05, -1.962596960035356474e-05, -1.963519238393092019e-05, -1.964438225488912256e-05, -1.965353920173835964e-05, -1.966266321304231785e-05, -1.967175427741992030e-05, -1.968081238354498801e-05, -1.968983752014611115e-05, -1.969882967600642543e-05, -1.970778883996519772e-05, -1.971671500091525789e-05, -1.972560814780481141e-05, -1.973446826963704638e-05, -1.974329535546943891e-05, -1.975208939441601644e-05, -1.976085037564419657e-05, -1.976957828837697584e-05, -1.977827312189223171e-05, -1.978693486552287849e-05, -1.979556350865633874e-05, -1.980415904073650163e-05, -1.981272145126115810e-05, -1.982125072978206527e-05, -1.982974686590857172e-05, -1.983820984930334506e-05, -1.984663966968408972e-05, -1.985503631682487168e-05, -1.986339978055368924e-05, -1.987173005075388579e-05, -1.988002711736407195e-05, -1.988829097037744114e-05, -1.989652159984372454e-05, -1.990471899586687021e-05, -1.991288314860470426e-05, -1.992101404827276289e-05, -1.992911168514015880e-05, -1.993717604953107540e-05, -1.994520713182648794e-05, -1.995320492246001649e-05, -1.996116941192296404e-05, -1.996910059076055573e-05, -1.997699844957341600e-05, -1.998486297901716548e-05, -1.999269416980419632e-05, -2.000049201269938961e-05, -2.000825649852574985e-05, -2.001598761815992920e-05, -2.002368536253383688e-05, -2.003134972263627222e-05, -2.003898068950903509e-05, -2.004657825425042587e-05, -2.005414240801472024e-05, -2.006167314201044805e-05, -2.006917044750160286e-05, -2.007663431580890571e-05, -2.008406473830575296e-05, -2.009146170642367449e-05, -2.009882521164803085e-05, -2.010615524551953787e-05, -2.011345179963575409e-05, -2.012071486564756382e-05, -2.012794443526221976e-05, -2.013514050024320739e-05, -2.014230305240830027e-05, -2.014943208363072208e-05, -2.015652758584053923e-05, -2.016358955102113035e-05, -2.017061797121246267e-05, -2.017761283851059732e-05, -2.018457414506603592e-05, -2.019150188308504537e-05, -2.019839604482949182e-05, -2.020525662261624770e-05, -2.021208360881882149e-05, -2.021887699586511473e-05, -2.022563677623897378e-05, -2.023236294247965112e-05, -2.023905548718196799e-05, -2.024571440299595862e-05, -2.025233968262816789e-05, -2.025893131883965912e-05, -2.026548930444733201e-05, -2.027201363232381768e-05, -2.027850429539680097e-05, -2.028496128665061292e-05, -2.029138459912404200e-05, -2.029777422591188250e-05, -2.030413016016451101e-05, -2.031045239508782544e-05, -2.031674092394301123e-05, -2.032299574004788306e-05, -2.032921683677480114e-05, -2.033540420755203663e-05, -2.034155784586359886e-05, -2.034767774524890663e-05, -2.035376389930295093e-05, -2.035981630167696231e-05, -2.036583494607716748e-05, -2.037181982626559571e-05, -2.037777093605982803e-05, -2.038368826933293634e-05, -2.038957182001452348e-05, -2.039542158208880902e-05, -2.040123754959601829e-05, -2.040701971663214193e-05, -2.041276807734874947e-05, -2.041848262595272848e-05, -2.042416335670766352e-05, -2.042981026393175583e-05, -2.043542334199920571e-05, -2.044100258534004984e-05, -2.044654798843976832e-05, -2.045205954583948453e-05, -2.045753725213695447e-05, -2.046298110198372411e-05, -2.046839109008895461e-05, -2.047376721121648820e-05, -2.047910946018573585e-05, -2.048441783187265305e-05, -2.048969232120853706e-05, -2.049493292317933568e-05, -2.050013963282833746e-05, -2.050531244525371192e-05, -2.051045135560904825e-05, -2.051555635910490706e-05, -2.052062745100560507e-05, -2.052566462663303352e-05, -2.053066788136387991e-05, -2.053563721063040388e-05, -2.054057260992139605e-05, -2.054547407478089728e-05, -2.055034160080782265e-05, -2.055517518365852282e-05, -2.055997481904376864e-05, -2.056474050273038082e-05, -2.056947223054173815e-05, -2.057416999835546002e-05, -2.057883380210564939e-05, -2.058346363778269621e-05, -2.058805950143187481e-05, -2.059262138915428914e-05, -2.059714929710767918e-05, -2.060164322150394078e-05, -2.060610315861233766e-05, -2.061052910475678749e-05, -2.061492105631708161e-05, -2.061927900972964061e-05, -2.062360296148528491e-05, -2.062789290813114230e-05, -2.063214884627064793e-05, -2.063637077256222973e-05, -2.064055868372007070e-05, -2.064471257651495260e-05, -2.064883244777186391e-05, -2.065291829437306608e-05, -2.065697011325566426e-05, -2.066098790141276942e-05, -2.066497165589309176e-05, -2.066892137380122872e-05, -2.067283705229717370e-05, -2.067671868859728506e-05, -2.068056627997315108e-05, -2.068437982375209483e-05, -2.068815931731725883e-05, -2.069190475810759832e-05, -2.069561614361738655e-05, -2.069929347139743791e-05, -2.070293673905345793e-05, -2.070654594424727992e-05, -2.071012108469623818e-05, -2.071366215817328318e-05, -2.071716916250776426e-05, -2.072064209558395912e-05, -2.072408095534215470e-05, -2.072748573977827103e-05, -2.073085644694403070e-05, -2.073419307494652175e-05, -2.073749562194920733e-05, -2.074076408617052983e-05, -2.074399846588505263e-05, -2.074719875942279270e-05, -2.075036496516950851e-05, -2.075349708156649003e-05, -2.075659510711123297e-05, -2.075965904035635112e-05, -2.076268887991022019e-05, -2.076568462443703194e-05, -2.076864627265639105e-05, -2.077157382334409772e-05, -2.077446727533098901e-05, -2.077732662750386372e-05, -2.078015187880502163e-05, -2.078294302823251427e-05, -2.078570007483979923e-05, -2.078842301773656359e-05, -2.079111185608736859e-05, -2.079376658911292358e-05, -2.079638721608924239e-05, -2.079897373634813801e-05, -2.080152614927679566e-05, -2.080404445431861303e-05, -2.080652865097152321e-05, -2.080897873879015967e-05, -2.081139471738412152e-05, -2.081377658641848517e-05, -2.081612434561457678e-05, -2.081843799474872883e-05, -2.082071753365261554e-05, -2.082296296221420833e-05, -2.082517428037657304e-05, -2.082735148813818840e-05, -2.082949458555374562e-05, -2.083160357273242387e-05, -2.083367844984002139e-05, -2.083571921709710892e-05, -2.083772587477992087e-05, -2.083969842322074825e-05, -2.084163686280673594e-05, -2.084354119398046883e-05, -2.084541141724063586e-05, -2.084724753314101363e-05, -2.084904954229073064e-05, -2.085081744535493135e-05, -2.085255124305359717e-05, -2.085425093616240699e-05, -2.085591652551272365e-05, -2.085754801199104843e-05, -2.085914539653938702e-05, -2.086070868015548323e-05, -2.086223786389175178e-05, -2.086373294885698253e-05, -2.086519393621465653e-05, -2.086662082718384394e-05, -2.086801362303934628e-05, -2.086937232511076811e-05, -2.087069693478331661e-05, -2.087198745349795747e-05, -2.087324388275042889e-05, -2.087446622409223435e-05, -2.087565447912988702e-05, -2.087680864952550950e-05, -2.087792873699651191e-05, -2.087901474331547671e-05, -2.088006667031039925e-05, -2.088108451986447434e-05, -2.088206829391640453e-05, -2.088301799445991904e-05, -2.088393362354420063e-05, -2.088481518327360440e-05, -2.088566267580776282e-05, -2.088647610336158235e-05, -2.088725546820511807e-05, -2.088800077266365836e-05, -2.088871201911790792e-05, -2.088938921000354725e-05, -2.089003234781157829e-05, -2.089064143508806347e-05, -2.089121647443433247e-05, -2.089175746850694489e-05, -2.089226442001745646e-05, -2.089273733173278164e-05, -2.089317620647470564e-05, -2.089358104712039951e-05, -2.089395185660184405e-05, -2.089428863790652449e-05, -2.089459139407668162e-05, -2.089486012820976923e-05, -2.089509484345837282e-05, -2.089529554302998592e-05, -2.089546223018725748e-05, -2.089559490824793083e-05, -2.089569358058461675e-05, -2.089575825062506105e-05, -2.089578892185194812e-05, -2.089578559780297883e-05, -2.089574828207098911e-05, -2.089567697830349934e-05, -2.089557169020315821e-05, -2.089543242152756310e-05, -2.089525917608918898e-05, -2.089505195775548325e-05, -2.089481077044873702e-05, -2.089453561814627819e-05, -2.089422650488016316e-05, -2.089388343473743770e-05, -2.089350641185984899e-05, -2.089309544044423182e-05, -2.089265052474213933e-05, -2.089217166905974472e-05, -2.089165887775843418e-05, -2.089111215525414283e-05, -2.089053150601754785e-05, -2.088991693457428866e-05, -2.088926844550455703e-05, -2.088858604344342903e-05, -2.088786973308069572e-05, -2.088711951916086306e-05, -2.088633540648305033e-05, -2.088551739990128487e-05, -2.088466550432391592e-05, -2.088377972471439054e-05, -2.088286006609043705e-05, -2.088190653352463083e-05, -2.088091913214410635e-05, -2.087989786713061817e-05, -2.087884274372052735e-05, -2.087775376720468290e-05, -2.087663094292863182e-05, -2.087547427629238533e-05, -2.087428377275055778e-05, -2.087305943781218032e-05, -2.087180127704088721e-05, -2.087050929605480066e-05, -2.086918350052643933e-05, -2.086782389618291824e-05, -2.086643048880564382e-05, -2.086500328423056467e-05, -2.086354228834799533e-05, -2.086204750710264342e-05, -2.086051894649371127e-05, -2.085895661257464520e-05, -2.085736051145325410e-05, -2.085573064929180430e-05, -2.085406703230674853e-05, -2.085236966676893259e-05, -2.085063855900340561e-05, -2.084887371538959961e-05, -2.084707514236123466e-05, -2.084524284640605120e-05, -2.084337683406619967e-05, -2.084147711193813551e-05, -2.083954368667216510e-05, -2.083757656497315391e-05, -2.083557575359990650e-05, -2.083354125936541715e-05, -2.083147308913684966e-05, -2.082937124983541186e-05, -2.082723574843648107e-05, -2.082506659196941092e-05, -2.082286378751777532e-05, -2.082062734221889751e-05, -2.081835726326449376e-05, -2.081605355790006021e-05, -2.081371623342512012e-05, -2.081134529719325099e-05, -2.080894075661184406e-05, -2.080650261914227024e-05, -2.080403089229987003e-05, -2.080152558365389585e-05, -2.079898670082745111e-05, -2.079641425149758504e-05, -2.079380824339496406e-05, -2.079116868430427837e-05, -2.078849558206403184e-05, -2.078578894456643023e-05, -2.078304877975755739e-05, -2.078027509563713468e-05, -2.077746790025862937e-05, -2.077462720172936313e-05, -2.077175300821022734e-05, -2.076884532791580513e-05, -2.076590416911445604e-05, -2.076292954012793997e-05, -2.075992144933175597e-05, -2.075687990515537602e-05, -2.075380491608118120e-05, -2.075069649064558309e-05, -2.074755463743839702e-05, -2.074437936510294708e-05, -2.074117068233609663e-05, -2.073792859788811275e-05, -2.073465312056288649e-05, -2.073134425921780073e-05, -2.072800202276324226e-05, -2.072462642016335737e-05, -2.072121746043590617e-05, -2.071777515265134774e-05, -2.071429950593398536e-05, -2.071079052946150911e-05, -2.070724823246441988e-05, -2.070367262422688994e-05, -2.070006371408631912e-05, -2.069642151143322639e-05, -2.069274602571147685e-05, -2.068903726641820040e-05, -2.068529524310314127e-05, -2.068151996537016907e-05, -2.067771144287543569e-05, -2.067386968532858145e-05, -2.066999470249241661e-05, -2.066608650418245722e-05, -2.066214510026750110e-05, -2.065817050066972945e-05, -2.065416271536362608e-05, -2.065012175437711919e-05, -2.064604762779116462e-05, -2.064194034573896660e-05, -2.063779991840779376e-05, -2.063362635603680062e-05, -2.062941966891837598e-05, -2.062517986739800070e-05, -2.062090696187375297e-05, -2.061660096279608814e-05, -2.061226188066932945e-05, -2.060788972604947253e-05, -2.060348450954579817e-05, -2.059904624182036748e-05, -2.059457493358722566e-05, -2.059007059561422485e-05, -2.058553323872122163e-05, -2.058096287378047677e-05, -2.057635951171717372e-05, -2.057172316350900854e-05, -2.056705384018627804e-05, -2.056235155283189675e-05, -2.055761631258085813e-05, -2.055284813062113251e-05, -2.054804701819305037e-05, -2.054321298658881451e-05, -2.053834604715396031e-05, -2.053344621128599709e-05, -2.052851349043438101e-05, -2.052354789610142985e-05, -2.051854943984164880e-05, -2.051351813326179820e-05, -2.050845398802092403e-05, -2.050335701583051718e-05, -2.049822722845358168e-05, -2.049306463770609162e-05, -2.048786925545585273e-05, -2.048264109362284120e-05, -2.047738016417939338e-05, -2.047208647914935544e-05, -2.046676005060908275e-05, -2.046140089068695212e-05, -2.045600901156329393e-05, -2.045058442547039896e-05, -2.044512714469276911e-05, -2.043963718156621275e-05, -2.043411454847910512e-05, -2.042855925787144642e-05, -2.042297132223510914e-05, -2.041735075411405494e-05, -2.041169756610334185e-05, -2.040601177085059819e-05, -2.040029338105490782e-05, -2.039454240946702362e-05, -2.038875886888953347e-05, -2.038294277217681967e-05, -2.037709413223429990e-05, -2.037121296201948101e-05, -2.036529927454206739e-05, -2.035935308286221951e-05, -2.035337440009218356e-05, -2.034736323939604418e-05, -2.034131961398853516e-05, -2.033524353713654721e-05, -2.032913502215826396e-05, -2.032299408242326023e-05, -2.031682073135261383e-05, -2.031061498241822793e-05, -2.030437684914371876e-05, -2.029810634510471036e-05, -2.029180348392671364e-05, -2.028546827928740656e-05, -2.027910074491572276e-05, -2.027270089459101465e-05, -2.026626874214462892e-05, -2.025980430145869017e-05, -2.025330758646648043e-05, -2.024677861115238491e-05, -2.024021738955205803e-05, -2.023362393575120708e-05, -2.022699826388822818e-05, -2.022034038815086901e-05, -2.021365032277864108e-05, -2.020692808206213541e-05, -2.020017368034188746e-05, -2.019338713200999666e-05, -2.018656845150997397e-05, -2.017971765333466153e-05, -2.017283475202874668e-05, -2.016591976218758288e-05, -2.015897269845623766e-05, -2.015199357553228442e-05, -2.014498240816205176e-05, -2.013793921114361864e-05, -2.013086399932560475e-05, -2.012375678760611346e-05, -2.011661759093553040e-05, -2.010944642431368760e-05, -2.010224330279058514e-05, -2.009500824146730937e-05, -2.008774125549548739e-05, -2.008044236007597248e-05, -2.007311157046162573e-05, -2.006574890195474785e-05, -2.005835436990750946e-05, -2.005092798972312002e-05, -2.004346977685463177e-05, -2.003597974680548525e-05, -2.002845791512940089e-05, -2.002090429742955227e-05, -2.001331890935987399e-05, -2.000570176662466181e-05, -1.999805288497685153e-05, -1.999037228022119365e-05, -1.998265996821164787e-05, -1.997491596485145092e-05, -1.996714028609469874e-05, -1.995933294794494385e-05, -1.995149396645595088e-05, -1.994362335773120190e-05, -1.993572113792323235e-05, -1.992778732323540643e-05, -1.991982192992025692e-05, -1.991182497428025763e-05, -1.990379647266731864e-05, -1.989573644148348418e-05, -1.988764489717937076e-05, -1.987952185625627117e-05, -1.987136733526446042e-05, -1.986318135080387677e-05, -1.985496391952392518e-05, -1.984671505812380938e-05, -1.983843478335098350e-05, -1.983012311200357794e-05, -1.982178006092842412e-05, -1.981340564702196245e-05, -1.980499988723001881e-05, -1.979656279854673717e-05, -1.978809439801655496e-05, -1.977959470273272580e-05, -1.977106372983747877e-05, -1.976250149652245206e-05, -1.975390802002864555e-05, -1.974528331764485552e-05, -1.973662740671018858e-05, -1.972794030461224571e-05, -1.971922202878765413e-05, -1.971047259672186743e-05, -1.970169202594978223e-05, -1.969288033405377640e-05, -1.968403753866634169e-05, -1.967516365746839639e-05, -1.966625870818943786e-05, -1.965732270860822008e-05, -1.964835567655095463e-05, -1.963935762989334690e-05, -1.963032858656073841e-05, -1.962126856452476949e-05, -1.961217758180742137e-05, -1.960305565647869184e-05, -1.959390280665636492e-05, -1.958471905050760328e-05, -1.957550440624749807e-05, -1.956625889213982453e-05, -1.955698252649636093e-05, -1.954767532767774242e-05, -1.953833731409137731e-05, -1.952896850419541454e-05, -1.951956891649365478e-05, -1.951013856953947721e-05, -1.950067748193462660e-05, -1.949118567232755987e-05, -1.948166315941560100e-05, -1.947210996194517814e-05, -1.946252609870864896e-05, -1.945291158854760407e-05, -1.944326645035159988e-05, -1.943359070305661018e-05, -1.942388436564906144e-05, -1.941414745716058460e-05, -1.940437999667202657e-05, -1.939458200331197306e-05, -1.938475349625518325e-05, -1.937489449472641834e-05, -1.936500501799689084e-05, -1.935508508538456607e-05, -1.934513471625622558e-05, -1.933515393002610506e-05, -1.932514274615432232e-05, -1.931510118415124790e-05, -1.930502926357185713e-05, -1.929492700402009060e-05, -1.928479442514679758e-05, -1.927463154665015279e-05, -1.926443838827559537e-05, -1.925421496981613044e-05, -1.924396131111080107e-05, -1.923367743204691424e-05, -1.922336335255902447e-05, -1.921301909262689069e-05, -1.920264467228009094e-05, -1.919224011159369233e-05, -1.918180543068903705e-05, -1.917134064973548729e-05, -1.916084578894904628e-05, -1.915032086859235825e-05, -1.913976590897548095e-05, -1.912918093045395441e-05, -1.911856595343116926e-05, -1.910792099835688609e-05, -1.909724608572754378e-05, -1.908654123608610704e-05, -1.907580647002263900e-05, -1.906504180817240047e-05, -1.905424727121834020e-05, -1.904342287988967529e-05, -1.903256865496191487e-05, -1.902168461725682285e-05, -1.901077078764320735e-05, -1.899982718703460661e-05, -1.898885383639237556e-05, -1.897785075672338531e-05, -1.896681796908098534e-05, -1.895575549456496629e-05, -1.894466335431987258e-05, -1.893354156953772996e-05, -1.892239016145600916e-05, -1.891120915135843569e-05, -1.889999856057433933e-05, -1.888875841047975862e-05, -1.887748872249499807e-05, -1.886618951808769097e-05, -1.885486081877075641e-05, -1.884350264610281259e-05, -1.883211502168830558e-05, -1.882069796717771598e-05, -1.880925150426578359e-05, -1.879777565469435677e-05, -1.878627044025025117e-05, -1.877473588276576473e-05, -1.876317200411923330e-05, -1.875157882623288262e-05, -1.873995637107544730e-05, -1.872830466066228265e-05, -1.871662371705133277e-05, -1.870491356234756569e-05, -1.869317421870132326e-05, -1.868140570830659325e-05, -1.866960805340398753e-05, -1.865778127627875998e-05, -1.864592539926118598e-05, -1.863404044472702657e-05, -1.862212643509571583e-05, -1.861018339283245808e-05, -1.859821134044882087e-05, -1.858621030049839134e-05, -1.857418029558146203e-05, -1.856212134834309287e-05, -1.855003348147154924e-05, -1.853791671770094811e-05, -1.852577107981143422e-05, -1.851359659062480940e-05, -1.850139327300930980e-05, -1.848916114987787462e-05, -1.847690024418576757e-05, -1.846461057893634012e-05, -1.845229217717374702e-05, -1.843994506198846556e-05, -1.842756925651548630e-05, -1.841516478393175163e-05, -1.840273166746172592e-05, -1.839026993037239793e-05, -1.837777959597387383e-05, -1.836526068762196905e-05, -1.835271322871659218e-05, -1.834013724269949522e-05, -1.832753275306001989e-05, -1.831489978332790459e-05, -1.830223835707878676e-05, -1.828954849793162785e-05, -1.827683022954914368e-05, -1.826408357563801105e-05, -1.825130855994887117e-05, -1.823850520627467965e-05, -1.822567353845337289e-05, -1.821281358036671281e-05, -1.819992535593772538e-05, -1.818700888913617246e-05, -1.817406420397357802e-05, -1.816109132450407178e-05, -1.814809027482645261e-05, -1.813506107908244359e-05, -1.812200376145705122e-05, -1.810891834617895499e-05, -1.809580485751859991e-05, -1.808266331979092054e-05, -1.806949375735425340e-05, -1.805629619460760954e-05, -1.804307065599634289e-05, -1.802981716600712901e-05, -1.801653574916856483e-05, -1.800322643005357760e-05, -1.798988923327752751e-05, -1.797652418349853640e-05, -1.796313130541747413e-05, -1.794971062377844314e-05, -1.793626216336658631e-05, -1.792278594901116338e-05, -1.790928200558371459e-05, -1.789575035799806406e-05, -1.788219103121118039e-05, -1.786860405022073380e-05, -1.785498944006854187e-05, -1.784134722583812329e-05, -1.782767743265531115e-05, -1.781398008568816144e-05, -1.780025521014756966e-05, -1.778650283128478400e-05, -1.777272297439503395e-05, -1.775891566481493166e-05, -1.774508092792305129e-05, -1.773121878914064392e-05, -1.771732927392908626e-05, -1.770341240779337721e-05, -1.768946821627985429e-05, -1.767549672497653241e-05, -1.766149795951328007e-05, -1.764747194556210398e-05, -1.763341870883505856e-05, -1.761933827508688869e-05, -1.760523067011570734e-05, -1.759109591975759488e-05, -1.757693404989237246e-05, -1.756274508644150816e-05, -1.754852905536584013e-05, -1.753428598266941539e-05, -1.752001589439691480e-05, -1.750571881663433749e-05, -1.749139477550937358e-05, -1.747704379718914084e-05, -1.746266590788298674e-05, -1.744826113384313217e-05, -1.743382950135921993e-05, -1.741937103676416263e-05, -1.740488576643194047e-05, -1.739037371677476529e-05, -1.737583491425004662e-05, -1.736126938535160965e-05, -1.734667715661656630e-05, -1.733205825462197800e-05, -1.731741270598617020e-05, -1.730274053736553065e-05, -1.728804177546137031e-05, -1.727331644701112780e-05, -1.725856457879505420e-05, -1.724378619763395311e-05, -1.722898133038637869e-05, -1.721415000395483936e-05, -1.719929224528032592e-05, -1.718440808134274865e-05, -1.716949753916394934e-05, -1.715456064580599707e-05, -1.713959742836831509e-05, -1.712460791399491444e-05, -1.710959212986524604e-05, -1.709455010320122764e-05, -1.707948186126388959e-05, -1.706438743135417442e-05, -1.704926684081273358e-05, -1.703412011702056100e-05, -1.701894728739644522e-05, -1.700374837940057775e-05, -1.698852342053286239e-05, -1.697327243833002516e-05, -1.695799546037214661e-05, -1.694269251427675971e-05, -1.692736362769952746e-05, -1.691200882833735318e-05, -1.689662814392573444e-05, -1.688122160223930508e-05, -1.686578923109267891e-05, -1.685033105833751559e-05, -1.683484711186649147e-05, -1.681933741961131760e-05, -1.680380200954012743e-05, -1.678824090966379230e-05, -1.677265414803021923e-05, -1.675704175272460162e-05, -1.674140375187307505e-05, -1.672574017363974932e-05, -1.671005104622736904e-05, -1.669433639787734421e-05, -1.667859625687039395e-05, -1.666283065152356828e-05, -1.664703961019452740e-05, -1.663122316127866511e-05, -1.661538133320963740e-05, -1.659951415446020946e-05, -1.658362165353942659e-05, -1.656770385899633438e-05, -1.655176079941773237e-05, -1.653579250342840782e-05, -1.651979899969121369e-05, -1.650378031690772585e-05, -1.648773648381535986e-05, -1.647166752919165014e-05, -1.645557348185110579e-05, -1.643945437064621009e-05, -1.642331022446779997e-05, -1.640714107224241312e-05, -1.639094694293622497e-05, -1.637472786555240595e-05, -1.635848386913162637e-05, -1.634221498275210377e-05, -1.632592123553018915e-05, -1.630960265661752088e-05, -1.629325927520446708e-05, -1.627689112052083711e-05, -1.626049822182944749e-05, -1.624408060843316926e-05, -1.622763830967184474e-05, -1.621117135492052911e-05, -1.619467977359334270e-05, -1.617816359514056399e-05, -1.616162284904958167e-05, -1.614505756484525378e-05, -1.612846777208720736e-05, -1.611185350037319609e-05, -1.609521477933991687e-05, -1.607855163865639950e-05, -1.606186410803126752e-05, -1.604515221720954316e-05, -1.602841599596996732e-05, -1.601165547413278893e-05, -1.599487068154966827e-05, -1.597806164811145616e-05, -1.596122840374455506e-05, -1.594437097841249122e-05, -1.592748940211186919e-05, -1.591058370488071007e-05, -1.589365391678796520e-05, -1.587670006794156299e-05, -1.585972218848541042e-05, -1.584272030859636406e-05, -1.582569445849173138e-05, -1.580864466842225733e-05, -1.579157096867314753e-05, -1.577447338956748353e-05, -1.575735196146391552e-05, -1.574020671475395174e-05, -1.572303767986965979e-05, -1.570584488727358352e-05, -1.568862836746662040e-05, -1.567138815098509085e-05, -1.565412426839767532e-05, -1.563683675031275977e-05, -1.561952562737192033e-05, -1.560219093025018411e-05, -1.558483268966020686e-05, -1.556745093634958609e-05, -1.555004570109796768e-05, -1.553261701472447601e-05, -1.551516490808086993e-05, -1.549768941205241355e-05, -1.548019055756128467e-05, -1.546266837556366775e-05, -1.544512289705064843e-05, -1.542755415304851500e-05, -1.540996217461589212e-05, -1.539234699284842313e-05, -1.537470863887518890e-05, -1.535704714385992405e-05, -1.533936253900066132e-05, -1.532165485553056833e-05, -1.530392412471474924e-05, -1.528617037785479841e-05, -1.526839364628575105e-05, -1.525059396137669985e-05, -1.523277135453162682e-05, -1.521492585718618451e-05, -1.519705750081223783e-05, -1.517916631691483166e-05, -1.516125233703277701e-05, -1.514331559273868319e-05, -1.512535611563969644e-05, -1.510737393737426763e-05, -1.508936908961676693e-05, -1.507134160407437178e-05, -1.505329151248782921e-05, -1.503521884663124413e-05, -1.501712363831292971e-05, -1.499900591937216496e-05, -1.498086572168385169e-05, -1.496270307715539238e-05, -1.494451801772731527e-05, -1.492631057537400958e-05, -1.490808078210070332e-05, -1.488982866994788478e-05, -1.487155427098814649e-05, -1.485325761732710342e-05, -1.483493874110309309e-05, -1.481659767448814633e-05, -1.479823444968451947e-05, -1.477984909892965121e-05, -1.476144165449258644e-05, -1.474301214867517731e-05, -1.472456061381159370e-05, -1.470608708226934975e-05, -1.468759158644509587e-05, -1.466907415877340074e-05, -1.465053483171559079e-05, -1.463197363776832900e-05, -1.461339060946049608e-05, -1.459478577935067819e-05, -1.457615918003099551e-05, -1.455751084412815938e-05, -1.453884080429587097e-05, -1.452014909322294437e-05, -1.450143574363006582e-05, -1.448270078826640896e-05, -1.446394425991854397e-05, -1.444516619139901780e-05, -1.442636661555525485e-05, -1.440754556526611459e-05, -1.438870307343964188e-05, -1.436983917301682605e-05, -1.435095389697253777e-05, -1.433204727830801415e-05, -1.431311935005906140e-05, -1.429417014529265316e-05, -1.427519969710364061e-05, -1.425620803862284166e-05, -1.423719520300966496e-05, -1.421816122345295016e-05, -1.419910613317469657e-05, -1.418002996542792691e-05, -1.416093275349315860e-05, -1.414181453068729931e-05, -1.412267533035226786e-05, -1.410351518586390168e-05, -1.408433413062856358e-05, -1.406513219807984337e-05, -1.404590942168680124e-05, -1.402666583494624448e-05, -1.400740147138384893e-05, -1.398811636455796222e-05, -1.396881054805703721e-05, -1.394948405549666231e-05, -1.393013692052815377e-05, -1.391076917682698862e-05, -1.389138085810205594e-05, -1.387197199809141157e-05, -1.385254263056282183e-05, -1.383309278931398723e-05, -1.381362250817314718e-05, -1.379413182099579354e-05, -1.377462076166945803e-05, -1.375508936411049353e-05, -1.373553766226477029e-05, -1.371596569010760315e-05, -1.369637348164453585e-05, -1.367676107090799697e-05, -1.365712849196215508e-05, -1.363747577889963739e-05, -1.361780296584219717e-05, -1.359811008694152523e-05, -1.357839717637588888e-05, -1.355866426835502948e-05, -1.353891139711681498e-05, -1.351913859692795309e-05, -1.349934590208408108e-05, -1.347953334691030791e-05, -1.345970096575795819e-05, -1.343984879300949346e-05, -1.341997686307520708e-05, -1.340008521039381544e-05, -1.338017386943258671e-05, -1.336024287468794734e-05, -1.334029226068224636e-05, -1.332032206196851913e-05, -1.330033231312729567e-05, -1.328032304876723937e-05, -1.326029430352597537e-05, -1.324024611206650931e-05, -1.322017850908263816e-05, -1.320009152929500984e-05, -1.317998520745225824e-05, -1.315985957833079146e-05, -1.313971467673564731e-05, -1.311955053749696288e-05, -1.309936719547506521e-05, -1.307916468555701371e-05, -1.305894304265741667e-05, -1.303870230171829238e-05, -1.301844249770992801e-05, -1.299816366562647164e-05, -1.297786584049541394e-05, -1.295754905736543331e-05, -1.293721335131571145e-05, -1.291685875745267235e-05, -1.289648531090707866e-05, -1.287609304683843115e-05, -1.285568200043573782e-05, -1.283525220690964500e-05, -1.281480370150107196e-05, -1.279433651947770759e-05, -1.277385069613030213e-05, -1.275334626678251132e-05, -1.273282326677831972e-05, -1.271228173149164433e-05, -1.269172169632299897e-05, -1.267114319669645516e-05, -1.265054626806424995e-05, -1.262993094590749744e-05, -1.260929726572825548e-05, -1.258864526305812301e-05, -1.256797497345487908e-05, -1.254728643249872203e-05, -1.252657967580110737e-05, -1.250585473899671120e-05, -1.248511165774427043e-05, -1.246435046773098227e-05, -1.244357120466968871e-05, -1.242277390429531558e-05, -1.240195860237470152e-05, -1.238112533469380609e-05, -1.236027413706775559e-05, -1.233940504533700768e-05, -1.231851809536373795e-05, -1.229761332304090147e-05, -1.227669076428385395e-05, -1.225575045503139358e-05, -1.223479243125001651e-05, -1.221381672893040001e-05, -1.219282338408823424e-05, -1.217181243276492017e-05, -1.215078391102413236e-05, -1.212973785495687404e-05, -1.210867430067809408e-05, -1.208759328432737982e-05, -1.206649484206887070e-05, -1.204537901009220017e-05, -1.202424582460874500e-05, -1.200309532185698874e-05, -1.198192753809892683e-05, -1.196074250962082225e-05, -1.193954027273309364e-05, -1.191832086377138938e-05, -1.189708431909258955e-05, -1.187583067508039811e-05, -1.185455996814164637e-05, -1.183327223470700795e-05, -1.181196751123206092e-05, -1.179064583419322374e-05, -1.176930724009361675e-05, -1.174795176545895914e-05, -1.172657944683866158e-05, -1.170519032080565179e-05, -1.168378442395731810e-05, -1.166236179291167239e-05, -1.164092246431283549e-05, -1.161946647482734073e-05, -1.159799386114494876e-05, -1.157650465997861877e-05, -1.155499890806532167e-05, -1.153347664216229613e-05, -1.151193789905256623e-05, -1.149038271554119583e-05, -1.146881112845606278e-05, -1.144722317464880591e-05, -1.142561889099097100e-05, -1.140399831437960122e-05, -1.138236148173344244e-05, -1.136070842999377326e-05, -1.133903919612440169e-05, -1.131735381711243423e-05, -1.129565232996458279e-05, -1.127393477171263316e-05, -1.125220117940971467e-05, -1.123045159013110824e-05, -1.120868604097514256e-05, -1.118690456905942989e-05, -1.116510721152539765e-05, -1.114329400553924389e-05, -1.112146498828335856e-05, -1.109962019696572385e-05, -1.107775966881608223e-05, -1.105588344108295149e-05, -1.103399155103839526e-05, -1.101208403597889712e-05, -1.099016093321667853e-05, -1.096822228008919575e-05, -1.094626811395528585e-05, -1.092429847219124662e-05, -1.090231339220128730e-05, -1.088031291140416237e-05, -1.085829706724347319e-05, -1.083626589718389527e-05, -1.081421943870824251e-05, -1.079215772932206486e-05, -1.077008080655481045e-05, -1.074798870795079116e-05, -1.072588147107895734e-05, -1.070375913352895916e-05, -1.068162173290717228e-05, -1.065946930684718076e-05, -1.063730189299640919e-05, -1.061511952902644630e-05, -1.059292225262835919e-05, -1.057071010151437217e-05, -1.054848311341311654e-05, -1.052624132608015250e-05, -1.050398477728434036e-05, -1.048171350481840643e-05, -1.045942754649510595e-05, -1.043712694014317598e-05, -1.041481172361703054e-05, -1.039248193478792606e-05, -1.037013761154490666e-05, -1.034777879179956277e-05, -1.032540551348211787e-05, -1.030301781454223312e-05, -1.028061573295012552e-05, -1.025819930669236824e-05, -1.023576857377781483e-05, -1.021332357223462777e-05, -1.019086434010622296e-05, -1.016839091546100710e-05, -1.014590333638351953e-05, -1.012340164097537236e-05, -1.010088586736005995e-05, -1.007835605367891858e-05, -1.005581223809219367e-05, -1.003325445877877724e-05, -1.001068275393732258e-05, -9.988097161782078545e-06, -9.965497720548837447e-06, -9.942884468490906528e-06, -9.920257443879975344e-06, -9.897616685007128810e-06, -9.874962230178805161e-06, -9.852294117722596435e-06, -9.829612385983289434e-06, -9.806917073323802552e-06, -9.784208218125043467e-06, -9.761485858786923887e-06, -9.738750033724292101e-06, -9.716000781372848653e-06, -9.693238140185033154e-06, -9.670462148631022085e-06, -9.647672845199646978e-06, -9.624870268394371015e-06, -9.602054456739097976e-06, -9.579225448774242007e-06, -9.556383283057633945e-06, -9.533527998164440006e-06, -9.510659632688030834e-06, -9.487778225236030946e-06, -9.464883814435173922e-06, -9.441976438932305293e-06, -9.419056137385227806e-06, -9.396122948472706581e-06, -9.373176910890425374e-06, -9.350218063347832227e-06, -9.327246444574116129e-06, -9.304262093314225968e-06, -9.281265048329648100e-06, -9.258255348399449899e-06, -9.235233032316171644e-06, -9.212198138890834178e-06, -9.189150706953770698e-06, -9.166090775345595685e-06, -9.143018382927203282e-06, -9.119933568575620223e-06, -9.096836371180936183e-06, -9.073726829652366843e-06, -9.050604982913983146e-06, -9.027470869905897144e-06, -9.004324529583929965e-06, -8.981166000920753607e-06, -8.957995322900679999e-06, -8.934812534530799476e-06, -8.911617674826603249e-06, -8.888410782823204890e-06, -8.865191897571181410e-06, -8.841961058133425674e-06, -8.818718303590113411e-06, -8.795463673039873807e-06, -8.772197205590270553e-06, -8.748918940368130564e-06, -8.725628916515334224e-06, -8.702327173184620877e-06, -8.679013749550928909e-06, -8.655688684796736994e-06, -8.632352018123558328e-06, -8.609003788746482353e-06, -8.585644035896388898e-06, -8.562272798814606791e-06, -8.538890116764140433e-06, -8.515496029015387128e-06, -8.492090574857155290e-06, -8.468673793592624091e-06, -8.445245724535132019e-06, -8.421806407018366680e-06, -8.398355880387098259e-06, -8.374894183998104482e-06, -8.351421357225259585e-06, -8.327937439455375388e-06, -8.304442470089073733e-06, -8.280936488541877470e-06, -8.257419534239943097e-06, -8.233891646626210223e-06, -8.210352865157191315e-06, -8.186803229298858503e-06, -8.163242778536880821e-06, -8.139671552367171319e-06, -8.116089590297017006e-06, -8.092496931850011970e-06, -8.068893616561996699e-06, -8.045279683981893261e-06, -8.021655173671803554e-06, -7.998020125207819074e-06, -7.974374578175917884e-06, -7.950718572178048008e-06, -7.927052146827953249e-06, -7.903375341752133726e-06, -7.879688196590823354e-06, -7.855990750993774999e-06, -7.832283044626382840e-06, -7.808565117165592893e-06, -7.784837008300658559e-06, -7.761098757733260909e-06, -7.737350405178406536e-06, -7.713591990360212718e-06, -7.689823553018073821e-06, -7.666045132902446461e-06, -7.642256769775855778e-06, -7.618458503413770424e-06, -7.594650373600452099e-06, -7.570832420135177010e-06, -7.547004682827883814e-06, -7.523167201500242575e-06, -7.499320015985517543e-06, -7.475463166129658981e-06, -7.451596691786957885e-06, -7.427720632825201029e-06, -7.403835029126725515e-06, -7.379939920578838839e-06, -7.356035347084352584e-06, -7.332121348557192255e-06, -7.308197964919276805e-06, -7.284265236106703673e-06, -7.260323202065484819e-06, -7.236371902752550455e-06, -7.212411378136712128e-06, -7.188441668194408066e-06, -7.164462812914915824e-06, -7.140474852301245903e-06, -7.116477826360743918e-06, -7.092471775115435411e-06, -7.068456738597807630e-06, -7.044432756847550141e-06, -7.020399869917838972e-06, -6.996358117871015045e-06, -6.972307540779614173e-06, -6.948248178726278963e-06, -6.924180071804815072e-06, -6.900103260114670242e-06, -6.876017783772715682e-06, -6.851923682898146863e-06, -6.827820997624269126e-06, -6.803709768094082107e-06, -6.779590034457011034e-06, -6.755461836874255738e-06, -6.731325215519629221e-06, -6.707180210570076808e-06, -6.683026862216158190e-06, -6.658865210657759734e-06, -6.634695296099747515e-06, -6.610517158763610628e-06, -6.586330838872543249e-06, -6.562136376663008322e-06, -6.537933812380476140e-06, -6.513723186275027396e-06, -6.489504538612039352e-06, -6.465277909662431407e-06, -6.441043339703755226e-06, -6.416800869025357409e-06, -6.392550537925225987e-06, -6.368292386705549425e-06, -6.344026455683368913e-06, -6.319752785180972161e-06, -6.295471415526725191e-06, -6.271182387060538232e-06, -6.246885740129370526e-06, -6.222581515088377202e-06, -6.198269752301770716e-06, -6.173950492138537397e-06, -6.149623774978816462e-06, -6.125289641210591495e-06, -6.100948131225350260e-06, -6.076599285428703946e-06, -6.052243144230711512e-06, -6.027879748046903749e-06, -6.003509137303494230e-06, -5.979131352433122965e-06, -5.954746433875767811e-06, -5.930354422079834604e-06, -5.905955357497724631e-06, -5.881549280592282253e-06, -5.857136231832360678e-06, -5.832716251693908713e-06, -5.808289380659795421e-06, -5.783855659220957856e-06, -5.759415127871876209e-06, -5.734967827117120530e-06, -5.710513797466819943e-06, -5.686053079437859511e-06, -5.661585713553590541e-06, -5.637111740345047781e-06, -5.612631200346450820e-06, -5.588144134101627143e-06, -5.563650582159659226e-06, -5.539150585075862862e-06, -5.514644183412833244e-06, -5.490131417736048019e-06, -5.465612328620248834e-06, -5.441086956645111300e-06, -5.416555342396208921e-06, -5.392017526464959728e-06, -5.367473549449650341e-06, -5.342923451951040718e-06, -5.318367274578816002e-06, -5.293805057947120964e-06, -5.269236842675616255e-06, -5.244662669389436898e-06, -5.220082578720153674e-06, -5.195496611301443088e-06, -5.170904807775455362e-06, -5.146307208788422569e-06, -5.121703854991724201e-06, -5.097094787042881589e-06, -5.072480045601102504e-06, -5.047859671332692005e-06, -5.023233704912080742e-06, -4.998602187011944308e-06, -4.973965158314024093e-06, -4.949322659504737108e-06, -4.924674731271760748e-06, -4.900021414310606618e-06, -4.875362749320119395e-06, -4.850698777003519530e-06, -4.826029538069454414e-06, -4.801355073227509102e-06, -4.776675423193679842e-06, -4.751990628691301577e-06, -4.727300730441257089e-06, -4.702605769172725845e-06, -4.677905785618831949e-06, -4.653200820513273789e-06, -4.628490914595684069e-06, -4.603776108612710618e-06, -4.579056443308092555e-06, -4.554331959433511626e-06, -4.529602697744163917e-06, -4.504868698994303614e-06, -4.480130003949248000e-06, -4.455386653369949597e-06, -4.430638688024986764e-06, -4.405886148686121011e-06, -4.381129076123857697e-06, -4.356367511118280431e-06, -4.331601494449199229e-06, -4.306831066897142393e-06, -4.282056269248757187e-06, -4.257277142293478465e-06, -4.232493726819039389e-06, -4.207706063623558592e-06, -4.182914193499998820e-06, -4.158118157248247309e-06, -4.133317995669506742e-06, -4.108513749567402313e-06, -4.083705459747845359e-06, -4.058893167020076055e-06, -4.034076912192270706e-06, -4.009256736077948698e-06, -3.984432679492717353e-06, -3.959604783249735223e-06, -3.934773088170692174e-06, -3.909937635075804235e-06, -3.885098464784880013e-06, -3.860255618122739161e-06, -3.835409135914731576e-06, -3.810559058987798303e-06, -3.785705428171488829e-06, -3.760848284293472649e-06, -3.735987668186131304e-06, -3.711123620682047503e-06, -3.686256182615027919e-06, -3.661385394820082012e-06, -3.636511298134422375e-06, -3.611633933392999175e-06, -3.586753341435037554e-06, -3.561869563099593672e-06, -3.536982639226535993e-06, -3.512092610656537662e-06, -3.487199518232075583e-06, -3.462303402792966973e-06, -3.437404305182903379e-06, -3.412502266244995709e-06, -3.387597326822804219e-06, -3.362689527761346487e-06, -3.337778909902664040e-06, -3.312865514092354250e-06, -3.287949381175067928e-06, -3.263030551995590142e-06, -3.238109067398738993e-06, -3.213184968230412548e-06, -3.188258295333122440e-06, -3.163329089552522789e-06, -3.138397391732951854e-06, -3.113463242718454394e-06, -3.088526683352730427e-06, -3.063587754480158445e-06, -3.038646496941299360e-06, -3.013702951579500825e-06, -2.988757159236385932e-06, -2.963809160752851868e-06, -2.938858996970206206e-06, -2.913906708725576834e-06, -2.888952336857425295e-06, -2.863995922206595412e-06, -2.839037505606255618e-06, -2.814077127892928598e-06, -2.789114829901971094e-06, -2.764150652464214575e-06, -2.739184636412531015e-06, -2.714216822577307191e-06, -2.689247251787554721e-06, -2.664275964871862979e-06, -2.639303002653983511e-06, -2.614328405958250196e-06, -2.589352215610632957e-06, -2.564374472428733458e-06, -2.539395217232745280e-06, -2.514414490840976936e-06, -2.489432334066477708e-06, -2.464448787722495932e-06, -2.439463892623526355e-06, -2.414477689575255848e-06, -2.389490219385607876e-06, -2.364501522860214678e-06, -2.339511640797933924e-06, -2.314520614002970603e-06, -2.289528483269291617e-06, -2.264535289392749786e-06, -2.239541073166600928e-06, -2.214545875376967572e-06, -2.189549736813911799e-06, -2.164552698261330135e-06, -2.139554800498042415e-06, -2.114556084303256416e-06, -2.089556590453170829e-06, -2.064556359716456763e-06, -2.039555432866433000e-06, -2.014553850665446275e-06, -1.989551653876995717e-06, -1.964548883260141153e-06, -1.939545579570541995e-06, -1.914541783560379315e-06, -1.889537535979411673e-06, -1.864532877570474613e-06, -1.839527849076051106e-06, -1.814522491234895691e-06, -1.789516844777532503e-06, -1.764510950437266910e-06, -1.739504848940158121e-06, -1.714498581006021022e-06, -1.689492187353964072e-06, -1.664485708697846668e-06, -1.639479185747328403e-06, -1.614472659208924052e-06, -1.589466169781488245e-06, -1.564459758162812163e-06, -1.539453465046231595e-06, -1.514447331116106530e-06, -1.489441397058883203e-06, -1.464435703553019691e-06, -1.439430291270014426e-06, -1.414425200879930329e-06, -1.389420473046846459e-06, -1.364416148429941153e-06, -1.339412267683395465e-06, -1.314408871457458099e-06, -1.289406000393919712e-06, -1.264403695132731627e-06, -1.239401996307484588e-06, -1.214400944546447217e-06, -1.189400580473634761e-06, -1.164400944704271322e-06, -1.139402077851410270e-06, -1.114404020521418710e-06, -1.089406813315021869e-06, -1.064410496827237456e-06, -1.039415111648424923e-06, -1.014420698359766965e-06, -9.894272975398791352e-07, -9.644349497602953641e-07, -9.394436955865216745e-07, -9.144535755790683941e-07, -8.894646302889501877e-07, -8.644769002642831737e-07, -8.394904260457790258e-07, -8.145052481677849181e-07, -7.895214071582264562e-07, -7.645389435396389397e-07, -7.395578978246744878e-07, -7.145783105215825544e-07, -6.896002221352637424e-07, -6.646236731571869359e-07, -6.396487040764543030e-07, -6.146753553752873514e-07, -5.897036675256160324e-07, -5.647336809956939630e-07, -5.397654362455907275e-07, -5.147989737282207054e-07, -4.898343338904084268e-07, -4.648715571683629816e-07, -4.399106839931791806e-07, -4.149517547918825294e-07, -3.899948099773595420e-07, -3.650398899594033682e-07, -3.400870351402131898e-07, -3.151362859098704291e-07, -2.901876826585140540e-07, -2.652412657607013849e-07, -2.402970755875785814e-07, -2.153551525012542265e-07, -1.904155368569600280e-07, -1.654782689974238197e-07, -1.405433892650387250e-07, -1.156109379862275641e-07, -9.068095548361435994e-08, -6.575348207150622497e-08, -4.082855805138558387e-08, -1.590622372296155819e-08, 9.013480625901051950e-09, 3.393051471813366883e-08, 5.884483828197081265e-08, 8.375641105434986346e-08, 1.086651927854208913e-07, 1.335711432263867486e-07, 1.584742221451262889e-07, 1.833743893140334084e-07, 2.082716045145294160e-07, 2.331658275415693540e-07, 2.580570181925966624e-07, 2.829451362776081800e-07, 3.078301416181060470e-07, 3.327119940416078993e-07, 3.575906533850433381e-07, 3.824660794992640100e-07, 4.073382322379993561e-07, 4.322070714679147574e-07, 4.570725570675683083e-07, 4.819346489219199780e-07, 5.067933069268438083e-07, 5.316484909880702339e-07, 5.565001610201525436e-07, 5.813482769509640428e-07, 6.061927987151051726e-07, 6.310336862572956647e-07, 6.558708995368786398e-07, 6.807043985167900143e-07, 7.055341431736043118e-07, 7.303600934964923886e-07, 7.551822094817411306e-07, 7.800004511372499279e-07, 8.048147784814839536e-07, 8.296251515424375015e-07, 8.544315303621246372e-07, 8.792338749899988107e-07, 9.040321454874427663e-07, 9.288263019267242572e-07, 9.536163043910789483e-07, 9.784021129736347907e-07, 1.003183687781933378e-06, 1.027960988931335898e-06, 1.052733976549512731e-06, 1.077502610775415251e-06, 1.102266851759324534e-06, 1.127026659661817975e-06, 1.151781994658252638e-06, 1.176532816932197357e-06, 1.201279086679908887e-06, 1.226020764109307201e-06, 1.250757809438923266e-06, 1.275490182902376882e-06, 1.300217844741826790e-06, 1.324940755212440459e-06, 1.349658874581355209e-06, 1.374372163127749564e-06, 1.399080581141786375e-06, 1.423784088929117760e-06, 1.448482646804289468e-06, 1.473176215095257267e-06, 1.497864754142320521e-06, 1.522548224298196521e-06, 1.547226585926975882e-06, 1.571899799408602922e-06, 1.596567825132313065e-06, 1.621230623501122323e-06, 1.645888154930762793e-06, 1.670540379848672989e-06, 1.695187258698453661e-06, 1.719828751934417774e-06, 1.744464820020554372e-06, 1.769095423440515524e-06, 1.793720522686651902e-06, 1.818340078264490412e-06, 1.842954050697198056e-06, 1.867562400513532464e-06, 1.892165088263319307e-06, 1.916762074505405791e-06, 1.941353319813226088e-06, 1.965938784772657707e-06, 1.990518429987611278e-06, 2.015092216067943178e-06, 2.039660103644976140e-06, 2.064222053359423105e-06, 2.088778025865851931e-06, 2.113327981837165775e-06, 2.137871881953653497e-06, 2.162409686912959663e-06, 2.186941357429036766e-06, 2.211466854226715739e-06, 2.235986138045074189e-06, 2.260499169641874846e-06, 2.285005909781557599e-06, 2.309506319250685992e-06, 2.334000358845901990e-06, 2.358487989378406783e-06, 2.382969171678417454e-06, 2.407443866584220764e-06, 2.431912034952154173e-06, 2.456373637655529257e-06, 2.480828635579242884e-06, 2.505276989623098010e-06, 2.529718660706298456e-06, 2.554153609756487455e-06, 2.578581797719731630e-06, 2.603003185559452465e-06, 2.627417734251013758e-06, 2.651825404786173630e-06, 2.676226158172049878e-06, 2.700619955430092514e-06, 2.725006757600499358e-06, 2.749386525735744278e-06, 2.773759220905008441e-06, 2.798124804193111363e-06, 2.822483236700623982e-06, 2.846834479542810295e-06, 2.871178493854069195e-06, 2.895515240781425026e-06, 2.919844681488971115e-06, 2.944166777156855878e-06, 2.968481488980215551e-06, 2.992788778173629592e-06, 3.017088605964617156e-06, 3.041380933598089524e-06, 3.065665722335279458e-06, 3.089942933453839027e-06, 3.114212528246799457e-06, 3.138474468026982896e-06, 3.162728714120544216e-06, 3.186975227871360757e-06, 3.211213970640039186e-06, 3.235444903803936245e-06, 3.259667988756193560e-06, 3.283883186910071903e-06, 3.308090459692551868e-06, 3.332289768548721914e-06, 3.356481074940725513e-06, 3.380664340346771807e-06, 3.404839526265532562e-06, 3.429006594209686928e-06, 3.453165505710298480e-06, 3.477316222315856805e-06, 3.501458705592261824e-06, 3.525592917121834043e-06, 3.549718818507722082e-06, 3.573836371367459300e-06, 3.597945537337337023e-06, 3.622046278071372858e-06, 3.646138555241445375e-06, 3.670222330536167971e-06, 3.694297565665360786e-06, 3.718364222353583601e-06, 3.742422262344510769e-06, 3.766471647399935099e-06, 3.790512339298763278e-06, 3.814544299841328962e-06, 3.838567490844141595e-06, 3.862581874138811948e-06, 3.886587411581801046e-06, 3.910584065043781006e-06, 3.934571796413921453e-06, 3.958550567604313571e-06, 3.982520340538137897e-06, 4.006481077164858402e-06, 4.030432739448379275e-06, 4.054375289371457964e-06, 4.078308688938935758e-06, 4.102232900172495505e-06, 4.126147885109579100e-06, 4.150053605813180034e-06, 4.173950024361078450e-06, 4.197837102850289766e-06, 4.221714803401372678e-06, 4.245583088147732832e-06, 4.269441919245363700e-06, 4.293291258871860637e-06, 4.317131069221076101e-06, 4.340961312506399365e-06, 4.364781950965161934e-06, 4.388592946846812968e-06, 4.412394262428033735e-06, 4.436185860001037548e-06, 4.459967701877856593e-06, 4.483739750394725334e-06, 4.507501967901425675e-06, 4.531254316770943143e-06, 4.554996759398526679e-06, 4.578729258196338777e-06, 4.602451775596731809e-06, 4.626164274056619560e-06, 4.649866716045725497e-06, 4.673559064061669267e-06, 4.697241280618195486e-06, 4.720913328250637097e-06, 4.744575169514877755e-06, 4.768226766987411125e-06, 4.791868083264334599e-06, 4.815499080965686956e-06, 4.839119722729074438e-06, 4.862729971214043983e-06, 4.886329789101055772e-06, 4.909919139091489156e-06, 4.933497983906763442e-06, 4.957066286292471409e-06, 4.980624009012247637e-06, 5.004171114851935912e-06, 5.027707566618660872e-06, 5.051233327139780236e-06, 5.074748359267235155e-06, 5.098252625871222886e-06, 5.121746089844464983e-06, 5.145228714101234906e-06, 5.168700461577431716e-06, 5.192161295229552618e-06, 5.215611178038988271e-06, 5.239050073005753893e-06, 5.262477943152742215e-06, 5.285894751524760405e-06, 5.309300461188551242e-06, 5.332695035231835123e-06, 5.356078436767559630e-06, 5.379450628927627246e-06, 5.402811574867205906e-06, 5.426161237763688001e-06, 5.449499580815720514e-06, 5.472826567247455440e-06, 5.496142160302329174e-06, 5.519446323247304448e-06, 5.542739019371845427e-06, 5.566020211988013421e-06, 5.589289864429508040e-06, 5.612547940055815970e-06, 5.635794402246101317e-06, 5.659029214403355222e-06, 5.682252339953447190e-06, 5.705463742344133207e-06, 5.728663385049312932e-06, 5.751851231563845855e-06, 5.775027245402555184e-06, 5.798191390109641772e-06, 5.821343629248440946e-06, 5.844483926405478948e-06, 5.867612245193796693e-06, 5.890728549247711714e-06, 5.913832802221852550e-06, 5.936924967800631958e-06, 5.960005009687844504e-06, 5.983072891610887326e-06, 6.006128577325001230e-06, 6.029172030601862848e-06, 6.052203215244222217e-06, 6.075222095074497478e-06, 6.098228633939037994e-06, 6.121222795711255833e-06, 6.144204544286460554e-06, 6.167173843580937644e-06, 6.190130657541330250e-06, 6.213074950134296059e-06, 6.236006685350739925e-06, 6.258925827209977879e-06, 6.281832339748463125e-06, 6.304726187034271994e-06, 6.327607333155802830e-06, 6.350475742227012352e-06, 6.373331378385392934e-06, 6.396174205797168310e-06, 6.419004188646055135e-06, 6.441821291147715068e-06, 6.464625477538488381e-06, 6.487416712079552895e-06, 6.510194959061111707e-06, 6.532960182792156800e-06, 6.555712347609763535e-06, 6.578451417878169924e-06, 6.601177357983644461e-06, 6.623890132338648437e-06, 6.646589705380899973e-06, 6.669276041572391461e-06, 6.691949105403486660e-06, 6.714608861386953352e-06, 6.737255274061985051e-06, 6.759888307993294682e-06, 6.782507927771207750e-06, 6.805114098010600164e-06, 6.827706783355115613e-06, 6.850285948471065235e-06, 6.872851558051548431e-06, 6.895403576815551623e-06, 6.917941969507876258e-06, 6.940466700898373934e-06, 6.962977735785878327e-06, 6.985475038992225142e-06, 7.007958575366421205e-06, 7.030428309783627181e-06, 7.052884207144213973e-06, 7.075326232377868297e-06, 7.097754350437574510e-06, 7.120168526303726107e-06, 7.142568724983143164e-06, 7.164954911509154502e-06, 7.187327050940632064e-06, 7.209685108366060068e-06, 7.232029048897559186e-06, 7.254358837674987030e-06, 7.276674439864958135e-06, 7.298975820660923582e-06, 7.321262945282150324e-06, 7.343535778977914840e-06, 7.365794287021427375e-06, 7.388038434713923953e-06, 7.410268187383769369e-06, 7.432483510385430584e-06, 7.454684369103599236e-06, 7.476870728947198037e-06, 7.499042555353480407e-06, 7.521199813787000486e-06, 7.543342469739792704e-06, 7.565470488730298590e-06, 7.587583836307484200e-06, 7.609682478044935449e-06, 7.631766379544798509e-06, 7.653835506436930234e-06, 7.675889824377894429e-06, 7.697929299055057250e-06, 7.719953896181602418e-06, 7.741963581495589318e-06, 7.763958320769090790e-06, 7.785938079798089719e-06, 7.807902824406646439e-06, 7.829852520449924333e-06, 7.851787133809194036e-06, 7.873706630391032137e-06, 7.895610976136162510e-06, 7.917500137009661230e-06, 7.939374079004995219e-06, 7.961232768147998224e-06, 7.983076170486011852e-06, 8.004904252101822649e-06, 8.026716979102896317e-06, 8.048514317625235094e-06, 8.070296233836508394e-06, 8.092062693931207775e-06, 8.113813664129516999e-06, 8.135549110686487092e-06, 8.157268999882010864e-06, 8.178973298025014023e-06, 8.200661971457254970e-06, 8.222334986542669124e-06, 8.243992309681229765e-06, 8.265633907298028089e-06, 8.287259745848382512e-06, 8.308869791815878629e-06, 8.330464011717276932e-06, 8.352042372091875763e-06, 8.373604839515190899e-06, 8.395151380588291407e-06, 8.416681961941736655e-06, 8.438196550239599714e-06, 8.459695112169607898e-06, 8.481177614452139947e-06, 8.502644023839184178e-06, 8.524094307109637448e-06, 8.545528431073028716e-06, 8.566946362568959996e-06, 8.588348068465786686e-06, 8.609733515664856114e-06, 8.631102671094525796e-06, 8.652455501713261882e-06, 8.673791974513515176e-06, 8.695112056512092070e-06, 8.716415714758880671e-06, 8.737702916336068150e-06, 8.758973628353136466e-06, 8.780227817950960313e-06, 8.801465452300812704e-06, 8.822686498604419180e-06, 8.843890924093105696e-06, 8.865078696031600104e-06, 8.886249781712377360e-06, 8.907404148459576208e-06, 8.928541763627974266e-06, 8.949662594602230781e-06, 8.970766608800667783e-06, 8.991853773669550919e-06, 9.012924056687102696e-06, 9.033977425362448770e-06, 9.055013847235763636e-06, 9.076033289877340589e-06, 9.097035720891371181e-06, 9.118021107910442895e-06, 9.138989418599227131e-06, 9.159940620653762611e-06, 9.180874681800327134e-06, 9.201791569799518580e-06, 9.222691252440395136e-06, 9.243573697544513949e-06, 9.264438872964826595e-06, 9.285286746585995869e-06, 9.306117286323215023e-06, 9.326930460126190513e-06, 9.347726235974525668e-06, 9.368504581876611081e-06, 9.389265465878438832e-06, 9.410008856053968333e-06, 9.430734720509085362e-06, 9.451443027384505693e-06, 9.472133744850044068e-06, 9.492806841108497002e-06, 9.513462284394827927e-06, 9.534100042975159235e-06, 9.554720085150592387e-06, 9.575322379252618692e-06, 9.595906893642168939e-06, 9.616473596718190446e-06, 9.637022456908228061e-06, 9.657553442672230722e-06, 9.678066522505483887e-06, 9.698561664932941193e-06, 9.719038838513090309e-06, 9.739498011837077106e-06, 9.759939153528607403e-06, 9.780362232243281197e-06, 9.800767216673132761e-06, 9.821154075536527232e-06, 9.841522777591149018e-06, 9.861873291623908552e-06, 9.882205586454633660e-06, 9.902519630939001993e-06, 9.922815393963784085e-06, 9.943092844446172507e-06, 9.963351951341970977e-06, 9.983592683636532809e-06, 1.000381501034843533e-05, 1.002401890053319668e-05, 1.004420432327321982e-05, 1.006437124769073518e-05, 1.008451964293774135e-05, 1.010464947819968284e-05, 1.012476072269831478e-05, 1.014485334568702219e-05, 1.016492731645017118e-05, 1.018498260431117439e-05, 1.020501917862356662e-05, 1.022503700877456243e-05, 1.024503606418892531e-05, 1.026501631431963007e-05, 1.028497772865644830e-05, 1.030492027672476255e-05, 1.032484392808129729e-05, 1.034474865231767475e-05, 1.036463441905957465e-05, 1.038450119796589566e-05, 1.040434895873245522e-05, 1.042417767108651772e-05, 1.044398730478964051e-05, 1.046377782964122980e-05, 1.048354921546969925e-05, 1.050330143214051513e-05, 1.052303444955536118e-05, 1.054274823764777802e-05, 1.056244276638666652e-05, 1.058211800577549833e-05, 1.060177392585152819e-05, 1.062141049668928198e-05, 1.064102768839537795e-05, 1.066062547111202330e-05, 1.068020381501623149e-05, 1.069976269031992053e-05, 1.071930206726895244e-05, 1.073882191614676358e-05, 1.075832220726915887e-05, 1.077780291098782352e-05, 1.079726399768951160e-05, 1.081670543779607825e-05, 1.083612720176366309e-05, 1.085552926008627319e-05, 1.087491158329048237e-05, 1.089427414193901917e-05, 1.091361690663000290e-05, 1.093293984799595255e-05, 1.095224293670755271e-05, 1.097152614346825461e-05, 1.099078943901792681e-05, 1.101003279413192686e-05, 1.102925617962130288e-05, 1.104845956633177205e-05, 1.106764292514743232e-05, 1.108680622698544810e-05, 1.110594944279963154e-05, 1.112507254357962426e-05, 1.114417550035091265e-05, 1.116325828417403160e-05, 1.118232086614803569e-05, 1.120136321740536784e-05, 1.122038530911538467e-05, 1.123938711248350437e-05, 1.125836859875039864e-05, 1.127732973919554348e-05, 1.129627050513280609e-05, 1.131519086790975373e-05, 1.133409079891541763e-05, 1.135297026957166679e-05, 1.137182925133680108e-05, 1.139066771570812118e-05, 1.140948563421675993e-05, 1.142828297843122977e-05, 1.144705971995661969e-05, 1.146581583043456815e-05, 1.148455128154247198e-05, 1.150326604499786718e-05, 1.152196009254895236e-05, 1.154063339598676056e-05, 1.155928592713563528e-05, 1.157791765785674220e-05, 1.159652856005073400e-05, 1.161511860565347620e-05, 1.163368776663520523e-05, 1.165223601500830590e-05, 1.167076332281880882e-05, 1.168926966214983452e-05, 1.170775500512498490e-05, 1.172621932389914449e-05, 1.174466259067035416e-05, 1.176308477767047679e-05, 1.178148585716870231e-05, 1.179986580147490027e-05, 1.181822458293133073e-05, 1.183656217392012701e-05, 1.185487854686260278e-05, 1.187317367421506600e-05, 1.189144752847131435e-05, 1.190970008216613848e-05, 1.192793130786684328e-05, 1.194614117818104900e-05, 1.196432966575562739e-05, 1.198249674327274947e-05, 1.200064238345318215e-05, 1.201876655905552931e-05, 1.203686924287541017e-05, 1.205495040774894397e-05, 1.207301002654750009e-05, 1.209104807218068128e-05, 1.210906451759923236e-05, 1.212705933578712896e-05, 1.214503249976886538e-05, 1.216298398260875832e-05, 1.218091375740683369e-05, 1.219882179730215716e-05, 1.221670807547208199e-05, 1.223457256513144261e-05, 1.225241523953591405e-05, 1.227023607197698722e-05, 1.228803503578549267e-05, 1.230581210433074165e-05, 1.232356725102042953e-05, 1.234130044930012256e-05, 1.235901167265639013e-05, 1.237670089461181579e-05, 1.239436808872866998e-05, 1.241201322860779362e-05, 1.242963628788884037e-05, 1.244723724024934321e-05, 1.246481605940810766e-05, 1.248237271912049038e-05, 1.249990719318136553e-05, 1.251741945542463345e-05, 1.253490947972236179e-05, 1.255237723998799236e-05, 1.256982271017163505e-05, 1.258724586426330854e-05, 1.260464667629208820e-05, 1.262202512032627718e-05, 1.263938117047258821e-05, 1.265671480087927249e-05, 1.267402598573150002e-05, 1.269131469925466469e-05, 1.270858091571333566e-05, 1.272582460941151995e-05, 1.274304575469197802e-05, 1.276024432593921553e-05, 1.277742029757483816e-05, 1.279457364406080084e-05, 1.281170433989866749e-05, 1.282881235962876562e-05, 1.284589767783353384e-05, 1.286296026913345269e-05, 1.288000010818634841e-05, 1.289701716969461134e-05, 1.291401142839716771e-05, 1.293098285907288986e-05, 1.294793143654285436e-05, 1.296485713566556990e-05, 1.298175993134051272e-05, 1.299863979850688495e-05, 1.301549671214336380e-05, 1.303233064727081045e-05, 1.304914157894876158e-05, 1.306592948227449768e-05, 1.308269433239010726e-05, 1.309943610447480770e-05, 1.311615477374808599e-05, 1.313285031547191461e-05, 1.314952270494714826e-05, 1.316617191751259207e-05, 1.318279792855209641e-05, 1.319940071348681666e-05, 1.321598024777838452e-05, 1.323253650693199291e-05, 1.324906946648804419e-05, 1.326557910203268731e-05, 1.328206538918977941e-05, 1.329852830362375220e-05, 1.331496782104270872e-05, 1.333138391719098302e-05, 1.334777656785580624e-05, 1.336414574886677984e-05, 1.338049143609203172e-05, 1.339681360544049812e-05, 1.341311223286502717e-05, 1.342938729435409829e-05, 1.344563876594241518e-05, 1.346186662370258627e-05, 1.347807084374913794e-05, 1.349425140223750149e-05, 1.351040827536423000e-05, 1.352654143936629524e-05, 1.354265087052399473e-05, 1.355873654515659796e-05, 1.357479843962460462e-05, 1.359083653033276337e-05, 1.360685079372262988e-05, 1.362284120627929049e-05, 1.363880774453065926e-05, 1.365475038504393732e-05, 1.367066910442831829e-05, 1.368656387933459190e-05, 1.370243468645416818e-05, 1.371828150252235044e-05, 1.373410430431365956e-05, 1.374990306864501894e-05, 1.376567777237498024e-05, 1.378142839240367935e-05, 1.379715490567228075e-05, 1.381285728916579134e-05, 1.382853551990894388e-05, 1.384418957496877871e-05, 1.385981943145435581e-05, 1.387542506651643285e-05, 1.389100645734704347e-05, 1.390656358118223310e-05, 1.392209641529789671e-05, 1.393760493701259939e-05, 1.395308912368693600e-05, 1.396854895272287388e-05, 1.398398440156650911e-05, 1.399939544770406338e-05, 1.401478206866447259e-05, 1.403014424201889383e-05, 1.404548194538073757e-05, 1.406079515640496129e-05, 1.407608385279088830e-05, 1.409134801227797099e-05, 1.410658761264886210e-05, 1.412180263172840170e-05, 1.413699304738395432e-05, 1.415215883752455848e-05, 1.416729998010394386e-05, 1.418241645311606576e-05, 1.419750823459818655e-05, 1.421257530263014727e-05, 1.422761763533361713e-05, 1.424263521087507678e-05, 1.425762800746223534e-05, 1.427259600334323930e-05, 1.428753917681343011e-05, 1.430245750620785816e-05, 1.431735096990443535e-05, 1.433221954632599179e-05, 1.434706321393606256e-05, 1.436188195124179820e-05, 1.437667573679317690e-05, 1.439144454918253528e-05, 1.440618836704707732e-05, 1.442090716906575890e-05, 1.443560093395838835e-05, 1.445026964049205535e-05, 1.446491326747404807e-05, 1.447953179375490250e-05, 1.449412519823023710e-05, 1.450869345983689204e-05, 1.452323655755548386e-05, 1.453775447040992093e-05, 1.455224717746735606e-05, 1.456671465783754610e-05, 1.458115689067632653e-05, 1.459557385517803721e-05, 1.460996553058520404e-05, 1.462433189618104776e-05, 1.463867293129220803e-05, 1.465298861529146746e-05, 1.466727892759112783e-05, 1.468154384764889869e-05, 1.469578335496754492e-05, 1.470999742909132420e-05, 1.472418604960805032e-05, 1.473834919615193922e-05, 1.475248684839608736e-05, 1.476659898606205842e-05, 1.478068558891242942e-05, 1.479474663675420594e-05, 1.480878210943809708e-05, 1.482279198685874416e-05, 1.483677624895386180e-05, 1.485073487570708230e-05, 1.486466784714384239e-05, 1.487857514333361778e-05, 1.489245674439235745e-05, 1.490631263047610555e-05, 1.492014278178689674e-05, 1.493394717857201925e-05, 1.494772580112089102e-05, 1.496147862976775671e-05, 1.497520564489077451e-05, 1.498890682691178751e-05, 1.500258215629863270e-05, 1.501623161356142415e-05, 1.502985517925454189e-05, 1.504345283397910693e-05, 1.505702455837673859e-05, 1.507057033313521275e-05, 1.508409013898793660e-05, 1.509758395671079100e-05, 1.511105176712455629e-05, 1.512449355109459727e-05, 1.513790928953056161e-05, 1.515129896338598851e-05, 1.516466255366076177e-05, 1.517800004139747427e-05, 1.519131140768372512e-05, 1.520459663365180968e-05, 1.521785570047801992e-05, 1.523108858938491439e-05, 1.524429528163814364e-05, 1.525747575854837461e-05, 1.527063000147102978e-05, 1.528375799180638201e-05, 1.529685971099867703e-05, 1.530993514053882195e-05, 1.532298426196078699e-05, 1.533600705684376041e-05, 1.534900350681196889e-05, 1.536197359353380342e-05, 1.537491729872439764e-05, 1.538783460414192803e-05, 1.540072549159017193e-05, 1.541358994291799932e-05, 1.542642794001903404e-05, 1.543923946483147415e-05, 1.545202449934034850e-05, 1.546478302557450802e-05, 1.547751502560612769e-05, 1.549022048155609705e-05, 1.550289937558801980e-05, 1.551555168991068380e-05, 1.552817740677990752e-05, 1.554077650849489112e-05, 1.555334897740064904e-05, 1.556589479588742729e-05, 1.557841394639030027e-05, 1.559090641139125103e-05, 1.560337217341658281e-05, 1.561581121503607871e-05, 1.562822351886848375e-05, 1.564060906757554849e-05, 1.565296784386443802e-05, 1.566529983049025609e-05, 1.567760501024925533e-05, 1.568988336598748374e-05, 1.570213488059409650e-05, 1.571435953700432402e-05, 1.572655731819846224e-05, 1.573872820720463735e-05, 1.575087218709263264e-05, 1.576298924098178619e-05, 1.577507935203490243e-05, 1.578714250346044428e-05, 1.579917867851476248e-05, 1.581118786049662720e-05, 1.582317003275220517e-05, 1.583512517867465992e-05, 1.584705328170103804e-05, 1.585895432531441389e-05, 1.587082829304585136e-05, 1.588267516846839664e-05, 1.589449493520476257e-05, 1.590628757692151118e-05, 1.591805307733097478e-05, 1.592979142019370557e-05, 1.594150258931296315e-05, 1.595318656853951211e-05, 1.596484334177139164e-05, 1.597647289295084591e-05, 1.598807520606635013e-05, 1.599965026515452147e-05, 1.601119805429480309e-05, 1.602271855761437015e-05, 1.603421175928771309e-05, 1.604567764353381526e-05, 1.605711619461831462e-05, 1.606852739685308694e-05, 1.607991123459567663e-05, 1.609126769225149902e-05, 1.610259675427070630e-05, 1.611389840514947509e-05, 1.612517262943266943e-05, 1.613641941170816232e-05, 1.614763873661182302e-05, 1.615883058882682929e-05, 1.616999495308126517e-05, 1.618113181415010648e-05, 1.619224115685475657e-05, 1.620332296606241958e-05, 1.621437722668854663e-05, 1.622540392369333591e-05, 1.623640304208407047e-05, 1.624737456691451514e-05, 1.625831848328497076e-05, 1.626923477634185738e-05, 1.628012343127956086e-05, 1.629098443333772912e-05, 1.630181776780294923e-05, 1.631262342000853061e-05, 1.632340137533442372e-05, 1.633415161920673890e-05, 1.634487413709974880e-05, 1.635556891453300167e-05, 1.636623593707320516e-05, 1.637687519033391464e-05, 1.638748665997479114e-05, 1.639807033170392230e-05, 1.640862619127462390e-05, 1.641915422448752022e-05, 1.642965441719009001e-05, 1.644012675527667326e-05, 1.645057122468800707e-05, 1.646098781141318052e-05, 1.647137650148672774e-05, 1.648173728099051167e-05, 1.649207013605346654e-05, 1.650237505285139802e-05, 1.651265201760663759e-05, 1.652290101658999752e-05, 1.653312203611783334e-05, 1.654331506255391071e-05, 1.655348008230925295e-05, 1.656361708184124997e-05, 1.657372604765596218e-05, 1.658380696630553199e-05, 1.659385982438776365e-05, 1.660388460855049056e-05, 1.661388130548682851e-05, 1.662384990193697815e-05, 1.663379038469025789e-05, 1.664370274057986920e-05, 1.665358695648952046e-05, 1.666344301934826678e-05, 1.667327091613297321e-05, 1.668307063386714582e-05, 1.669284215962355751e-05, 1.670258548051894556e-05, 1.671230058372064902e-05, 1.672198745644148582e-05, 1.673164608594156544e-05, 1.674127645953025063e-05, 1.675087856456152245e-05, 1.676045238843811377e-05, 1.676999791861106886e-05, 1.677951514257749023e-05, 1.678900404788194136e-05, 1.679846462211820172e-05, 1.680789685292433705e-05, 1.681730072798918085e-05, 1.682667623504712685e-05, 1.683602336188016525e-05, 1.684534209631954627e-05, 1.685463242624141630e-05, 1.686389433957075486e-05, 1.687312782428105273e-05, 1.688233286839209275e-05, 1.689150945997125084e-05, 1.690065758713515620e-05, 1.690977723804551710e-05, 1.691886840091312233e-05, 1.692793106399699408e-05, 1.693696521560280574e-05, 1.694597084408418634e-05, 1.695494793784250366e-05, 1.696389648532644752e-05, 1.697281647503367304e-05, 1.698170789550831710e-05, 1.699057073534266193e-05, 1.699940498317675566e-05, 1.700821062769844957e-05, 1.701698765764302198e-05, 1.702573606179470298e-05, 1.703445582898436027e-05, 1.704314694809109159e-05, 1.705180940804186225e-05, 1.706044319781099684e-05, 1.706904830642206981e-05, 1.707762472294514083e-05, 1.708617243649879436e-05, 1.709469143624922828e-05, 1.710318171141087052e-05, 1.711164325124544736e-05, 1.712007604506397896e-05, 1.712848008222412317e-05, 1.713685535213202874e-05, 1.714520184424173229e-05, 1.715351954805539208e-05, 1.716180845312258665e-05, 1.717006854904224946e-05, 1.717829982546011764e-05, 1.718650227207034131e-05, 1.719467587861513126e-05, 1.720282063488440654e-05, 1.721093653071739370e-05, 1.721902355600004163e-05, 1.722708170066690873e-05, 1.723511095470077332e-05, 1.724311130813228798e-05, 1.725108275104006772e-05, 1.725902527355189611e-05, 1.726693886584268901e-05, 1.727482351813576514e-05, 1.728267922070273087e-05, 1.729050596386324306e-05, 1.729830373798503277e-05, 1.730607253348486071e-05, 1.731381234082679947e-05, 1.732152315052344307e-05, 1.732920495313562236e-05, 1.733685773927211028e-05, 1.734448149959099398e-05, 1.735207622479782838e-05, 1.735964190564543959e-05, 1.736717853293718095e-05, 1.737468609752313150e-05, 1.738216459030172232e-05, 1.738961400222121037e-05, 1.739703432427560932e-05, 1.740442554750970398e-05, 1.741178766301537421e-05, 1.741912066193270620e-05, 1.742642453545123254e-05, 1.743369927480830254e-05, 1.744094487128836727e-05, 1.744816131622655754e-05, 1.745534860100496022e-05, 1.746250671705397019e-05, 1.746963565585393696e-05, 1.747673540893144445e-05, 1.748380596786270935e-05, 1.749084732427288991e-05, 1.749785946983469680e-05, 1.750484239626924016e-05, 1.751179609534750004e-05, 1.751872055888654525e-05, 1.752561577875433094e-05, 1.753248174686584292e-05, 1.753931845518476125e-05, 1.754612589572449697e-05, 1.755290406054491918e-05, 1.755965294175552296e-05, 1.756637253151507020e-05, 1.757306282202967873e-05, 1.757972380555402844e-05, 1.758635547439300458e-05, 1.759295782089729656e-05, 1.759953083746878505e-05, 1.760607451655642205e-05, 1.761258885065828747e-05, 1.761907383232077259e-05, 1.762552945413912216e-05, 1.763195570875672629e-05, 1.763835258886659426e-05, 1.764472008720946060e-05, 1.765105819657483197e-05, 1.765736690980100417e-05, 1.766364621977482488e-05, 1.766989611943153450e-05, 1.767611660175594517e-05, 1.768230765978057392e-05, 1.768846928658695730e-05, 1.769460147530521426e-05, 1.770070421911392079e-05, 1.770677751124123147e-05, 1.771282134496303282e-05, 1.771883571360421733e-05, 1.772482061053852758e-05, 1.773077602918813269e-05, 1.773670196302384183e-05, 1.774259840556602575e-05, 1.774846535038281090e-05, 1.775430279109138391e-05, 1.776011072135766627e-05, 1.776588913489638891e-05, 1.777163802547058398e-05, 1.777735738689304509e-05, 1.778304721302439274e-05, 1.778870749777427369e-05, 1.779433823510104249e-05, 1.779993941901172080e-05, 1.780551104356275976e-05, 1.781105310285866435e-05, 1.781656559105287776e-05, 1.782204850234775422e-05, 1.782750183099438286e-05, 1.783292557129234038e-05, 1.783831971759084636e-05, 1.784368426428709295e-05, 1.784901920582737650e-05, 1.785432453670681972e-05, 1.785960025146896850e-05, 1.786484634470710312e-05, 1.787006281106277118e-05, 1.787524964522555043e-05, 1.788040684193530191e-05, 1.788553439597987614e-05, 1.789063230219578398e-05, 1.789570055546929779e-05, 1.790073915073489628e-05, 1.790574808297507815e-05, 1.791072734722289300e-05, 1.791567693855914957e-05, 1.792059685211338130e-05, 1.792548708306520501e-05, 1.793034762664117329e-05, 1.793517847811849811e-05, 1.793997963282225553e-05, 1.794475108612636157e-05, 1.794949283345438192e-05, 1.795420487027819025e-05, 1.795888719211783947e-05, 1.796353979454377078e-05, 1.796816267317427257e-05, 1.797275582367641557e-05, 1.797731924176730305e-05, 1.798185292321106892e-05, 1.798635686382249289e-05, 1.799083105946419850e-05, 1.799527550604811674e-05, 1.799969019953461536e-05, 1.800407513593396927e-05, 1.800843031130374832e-05, 1.801275572175194793e-05, 1.801705136343467159e-05, 1.802131723255668994e-05, 1.802555332537282646e-05, 1.802975963818527074e-05, 1.803393616734577393e-05, 1.803808290925560138e-05, 1.804219986036406550e-05, 1.804628701716968117e-05, 1.805034437621977608e-05, 1.805437193411047717e-05, 1.805836968748740184e-05, 1.806233763304441109e-05, 1.806627576752443284e-05, 1.807018408771937724e-05, 1.807406259047002485e-05, 1.807791127266575898e-05, 1.808173013124559229e-05, 1.808551916319684543e-05, 1.808927836555578400e-05, 1.809300773540767275e-05, 1.809670726988666720e-05, 1.810037696617559336e-05, 1.810401682150680834e-05, 1.810762683316091286e-05, 1.811120699846758812e-05, 1.811475731480549417e-05, 1.811827777960190055e-05, 1.812176839033366891e-05, 1.812522914452574188e-05, 1.812866003975238988e-05, 1.813206107363655726e-05, 1.813543224385020446e-05, 1.813877354811403356e-05, 1.814208498419805416e-05, 1.814536654992068208e-05, 1.814861824314932553e-05, 1.815184006180035122e-05, 1.815503200383891496e-05, 1.815819406727891083e-05, 1.816132625018373014e-05, 1.816442855066490955e-05, 1.816750096688313055e-05, 1.817054349704804673e-05, 1.817355613941777208e-05, 1.817653889229995512e-05, 1.817949175405054554e-05, 1.818241472307443124e-05, 1.818530779782556362e-05, 1.818817097680659511e-05, 1.819100425856883511e-05, 1.819380764171298179e-05, 1.819658112488809553e-05, 1.819932470679221215e-05, 1.820203838617213623e-05, 1.820472216182347842e-05, 1.820737603259110261e-05, 1.820999999736832976e-05, 1.821259405509681253e-05, 1.821515820476812770e-05, 1.821769244542183479e-05, 1.822019677614643824e-05, 1.822267119607962125e-05, 1.822511570440767315e-05, 1.822753030036507605e-05, 1.822991498323619892e-05, 1.823226975235337313e-05, 1.823459460709796307e-05, 1.823688954690050510e-05, 1.823915457123935569e-05, 1.824138967964274459e-05, 1.824359487168699607e-05, 1.824577014699717609e-05, 1.824791550524765469e-05, 1.825003094616115394e-05, 1.825211646950876827e-05, 1.825417207511116725e-05, 1.825619776283729794e-05, 1.825819353260471015e-05, 1.826015938438029168e-05, 1.826209531817863521e-05, 1.826400133406419656e-05, 1.826587743214932617e-05, 1.826772361259544481e-05, 1.826953987561244724e-05, 1.827132622145943746e-05, 1.827308265044338360e-05, 1.827480916292076115e-05, 1.827650575929621471e-05, 1.827817244002317117e-05, 1.827980920560403288e-05, 1.828141605658925944e-05, 1.828299299357835029e-05, 1.828454001721973964e-05, 1.828605712820987491e-05, 1.828754432729430435e-05, 1.828900161526696210e-05, 1.829042899297044942e-05, 1.829182646129624479e-05, 1.829319402118403638e-05, 1.829453167362227778e-05, 1.829583941964839120e-05, 1.829711726034766980e-05, 1.829836519685440929e-05, 1.829958323035161315e-05, 1.830077136207063012e-05, 1.830192959329138795e-05, 1.830305792534244429e-05, 1.830415635960079009e-05, 1.830522489749206991e-05, 1.830626354049046665e-05, 1.830727229011869483e-05, 1.830825114794785150e-05, 1.830920011559758901e-05, 1.831011919473616586e-05, 1.831100838708034164e-05, 1.831186769439522121e-05, 1.831269711849444780e-05, 1.831349666124019624e-05, 1.831426632454300694e-05, 1.831500611036190109e-05, 1.831571602070438404e-05, 1.831639605762643176e-05, 1.831704622323236548e-05, 1.831766651967493974e-05, 1.831825694915526794e-05, 1.831881751392302890e-05, 1.831934821627621287e-05, 1.831984905856111126e-05, 1.832032004317248611e-05, 1.832076117255337019e-05, 1.832117244919527024e-05, 1.832155387563798746e-05, 1.832190545446976993e-05, 1.832222718832684507e-05, 1.832251907989415824e-05, 1.832278113190479338e-05, 1.832301334714007805e-05, 1.832321572842985106e-05, 1.832338827865194413e-05, 1.832353100073265279e-05, 1.832364389764644844e-05, 1.832372697241603591e-05, 1.832378022811250256e-05, 1.832380366785505061e-05, 1.832379729481107167e-05, 1.832376111219625518e-05, 1.832369512327441897e-05, 1.832359933135753981e-05, 1.832347373980602439e-05, 1.832331835202804531e-05, 1.832313317148029659e-05, 1.832291820166743126e-05, 1.832267344614215283e-05, 1.832239890850553379e-05, 1.832209459240663273e-05, 1.832176050154250791e-05, 1.832139663965854252e-05, 1.832100301054791948e-05, 1.832057961805210264e-05, 1.832012646606062323e-05, 1.831964355851094101e-05, 1.831913089938850864e-05, 1.831858849272695121e-05, 1.831801634260786640e-05, 1.831741445316068551e-05, 1.831678282856311733e-05, 1.831612147304063654e-05, 1.831543039086665312e-05, 1.831470958636273932e-05, 1.831395906389816892e-05, 1.831317882789032376e-05, 1.831236888280433464e-05, 1.831152923315334556e-05, 1.831065988349842228e-05, 1.830976083844835576e-05, 1.830883210266000101e-05, 1.830787368083788404e-05, 1.830688557773443907e-05, 1.830586779814997799e-05, 1.830482034693245999e-05, 1.830374322897785071e-05, 1.830263644922984099e-05, 1.830150001267978255e-05, 1.830033392436694544e-05, 1.829913818937816230e-05, 1.829791281284812992e-05, 1.829665779995931775e-05, 1.829537315594173072e-05, 1.829405888607319724e-05, 1.829271499567917608e-05, 1.829134149013276315e-05, 1.828993837485480667e-05, 1.828850565531362261e-05, 1.828704333702533007e-05, 1.828555142555355993e-05, 1.828402992650956328e-05, 1.828247884555215716e-05, 1.828089818838767380e-05, 1.827928796077013675e-05, 1.827764816850098648e-05, 1.827597881742918200e-05, 1.827427991345127541e-05, 1.827255146251124927e-05, 1.827079347060055385e-05, 1.826900594375820882e-05, 1.826718888807053553e-05, 1.826534230967140438e-05, 1.826346621474201460e-05, 1.826156060951098569e-05, 1.825962550025433034e-05, 1.825766089329562046e-05, 1.825566679500545861e-05, 1.825364321180197267e-05, 1.825159015015060239e-05, 1.824950761656411974e-05, 1.824739561760248995e-05, 1.824525415987306469e-05, 1.824308325003049392e-05, 1.824088289477648539e-05, 1.823865310086012308e-05, 1.823639387507770121e-05, 1.823410522427267678e-05, 1.823178715533572042e-05, 1.822943967520461472e-05, 1.822706279086434912e-05, 1.822465650934699792e-05, 1.822222083773181856e-05, 1.821975578314513977e-05, 1.821726135276041921e-05, 1.821473755379793513e-05, 1.821218439352527427e-05, 1.820960187925712176e-05, 1.820699001835500709e-05, 1.820434881822737856e-05, 1.820167828633001669e-05, 1.819897843016516343e-05, 1.819624925728243701e-05, 1.819349077527822878e-05, 1.819070299179575072e-05, 1.818788591452539114e-05, 1.818503955120414888e-05, 1.818216390961580948e-05, 1.817925899759145005e-05, 1.817632482300842616e-05, 1.817336139379130365e-05, 1.817036871791132322e-05, 1.816734680338622432e-05, 1.816429565828082447e-05, 1.816121529070688039e-05, 1.815810570882229176e-05, 1.815496692083194146e-05, 1.815179893498751267e-05, 1.814860175958704836e-05, 1.814537540297557811e-05, 1.814211987354456246e-05, 1.813883517973198439e-05, 1.813552133002276605e-05, 1.813217833294776250e-05, 1.812880619708509664e-05, 1.812540493105912578e-05, 1.812197454354038751e-05, 1.811851504324643648e-05, 1.811502643894114992e-05, 1.811150873943440570e-05, 1.810796195358326143e-05, 1.810438609029082959e-05, 1.810078115850636564e-05, 1.809714716722585415e-05, 1.809348412549151752e-05, 1.808979204239191763e-05, 1.808607092706212863e-05, 1.808232078868299156e-05, 1.807854163648213078e-05, 1.807473347973343221e-05, 1.807089632775635551e-05, 1.806703018991750282e-05, 1.806313507562925673e-05, 1.805921099434991915e-05, 1.805525795558424331e-05, 1.805127596888304406e-05, 1.804726504384336055e-05, 1.804322519010826648e-05, 1.803915641736666002e-05, 1.803505873535379914e-05, 1.803093215385089847e-05, 1.802677668268516648e-05, 1.802259233172978184e-05, 1.801837911090406957e-05, 1.801413703017283358e-05, 1.800986609954722403e-05, 1.800556632908421219e-05, 1.800123772888661752e-05, 1.799688030910317544e-05, 1.799249407992849328e-05, 1.798807905160269456e-05, 1.798363523441196779e-05, 1.797916263868831247e-05, 1.797466127480936281e-05, 1.797013115319877739e-05, 1.796557228432522956e-05, 1.796098467870377614e-05, 1.795636834689483429e-05, 1.795172329950461853e-05, 1.794704954718472065e-05, 1.794234710063277374e-05, 1.793761597059128672e-05, 1.793285616784896905e-05, 1.792806770323980241e-05, 1.792325058764326434e-05, 1.791840483198438918e-05, 1.791353044723384939e-05, 1.790862744440716955e-05, 1.790369583456586134e-05, 1.789873562881667138e-05, 1.789374683831169305e-05, 1.788872947424857655e-05, 1.788368354786968188e-05, 1.787860907046312235e-05, 1.787350605336287981e-05, 1.786837450794695473e-05, 1.786321444563932788e-05, 1.785802587790934377e-05, 1.785280881627088388e-05, 1.784756327228355930e-05, 1.784228925755189759e-05, 1.783698678372553590e-05, 1.783165586249950557e-05, 1.782629650561317163e-05, 1.782090872485147967e-05, 1.781549253204487787e-05, 1.781004793906770768e-05, 1.780457495783999947e-05, 1.779907360032681192e-05, 1.779354387853742558e-05, 1.778798580452646777e-05, 1.778239939039409553e-05, 1.777678464828409485e-05, 1.777114159038577129e-05, 1.776547022893338752e-05, 1.775977057620504865e-05, 1.775404264452511117e-05, 1.774828644626116073e-05, 1.774250199382636014e-05, 1.773668929967856845e-05, 1.773084837631943293e-05, 1.772497923629643207e-05, 1.771908189220108674e-05, 1.771315635666901431e-05, 1.770720264238107049e-05, 1.770122076206259379e-05, 1.769521072848258554e-05, 1.768917255445612570e-05, 1.768310625284100839e-05, 1.767701183654045579e-05, 1.767088931850185440e-05, 1.766473871171697862e-05, 1.765856002922195012e-05, 1.765235328409734284e-05, 1.764611848946743763e-05, 1.763985565850147586e-05, 1.763356480441286318e-05, 1.762724594045833267e-05, 1.762089907994021152e-05, 1.761452423620426952e-05, 1.760812142263991223e-05, 1.760169065268146505e-05, 1.759523193980699755e-05, 1.758874529753863517e-05, 1.758223073944283031e-05, 1.757568827912928821e-05, 1.756911793025239346e-05, 1.756251970651041030e-05, 1.755589362164476779e-05, 1.754923968944206895e-05, 1.754255792373203416e-05, 1.753584833838786708e-05, 1.752911094732721012e-05, 1.752234576451131094e-05, 1.751555280394503599e-05, 1.750873207967719921e-05, 1.750188360580040952e-05, 1.749500739645022039e-05, 1.748810346580663761e-05, 1.748117182809298082e-05, 1.747421249757611395e-05, 1.746722548856689242e-05, 1.746021081541875030e-05, 1.745316849252950283e-05, 1.744609853434013339e-05, 1.743900095533514256e-05, 1.743187577004238204e-05, 1.742472299303335964e-05, 1.741754263892221938e-05, 1.741033472236717136e-05, 1.740309925806946171e-05, 1.739583626077371482e-05, 1.738854574526798753e-05, 1.738122772638275271e-05, 1.737388221899251878e-05, 1.736650923801467096e-05, 1.735910879840969490e-05, 1.735168091518122073e-05, 1.734422560337628053e-05, 1.733674287808398699e-05, 1.732923275443723423e-05, 1.732169524761246741e-05, 1.731413037282769055e-05, 1.730653814534473988e-05, 1.729891858046847078e-05, 1.729127169354580904e-05, 1.728359749996716035e-05, 1.727589601516574963e-05, 1.726816725461731604e-05, 1.726041123384080083e-05, 1.725262796839697853e-05, 1.724481747388981892e-05, 1.723697976596689029e-05, 1.722911486031667263e-05, 1.722122277267135957e-05, 1.721330351880574376e-05, 1.720535711453626473e-05, 1.719738357572269964e-05, 1.718938291826717387e-05, 1.718135515811408318e-05, 1.717330031125037821e-05, 1.716521839370567301e-05, 1.715710942155058475e-05, 1.714897341090045060e-05, 1.714081037791051988e-05, 1.713262033877966753e-05, 1.712440330974898458e-05, 1.711615930710042635e-05, 1.710788834716018357e-05, 1.709959044629553827e-05, 1.709126562091527708e-05, 1.708291388747109054e-05, 1.707453526245692935e-05, 1.706612976240731711e-05, 1.705769740390107383e-05, 1.704923820355677249e-05, 1.704075217803611021e-05, 1.703223934404235986e-05, 1.702369971832075633e-05, 1.701513331765818144e-05, 1.700654015888383475e-05, 1.699792025886749211e-05, 1.698927363452188747e-05, 1.698060030280121199e-05, 1.697190028070015853e-05, 1.696317358525702184e-05, 1.695442023355066274e-05, 1.694564024270084362e-05, 1.693683362986990210e-05, 1.692800041226127046e-05, 1.691914060712001097e-05, 1.691025423173284295e-05, 1.690134130342687229e-05, 1.689240183957164458e-05, 1.688343585757804742e-05, 1.687444337489678572e-05, 1.686542440902212222e-05, 1.685637897748843515e-05, 1.684730709787054007e-05, 1.683820878778552289e-05, 1.682908406489135749e-05, 1.681993294688699381e-05, 1.681075545151249000e-05, 1.680155159654940882e-05, 1.679232139981906598e-05, 1.678306487918506109e-05, 1.677378205255138026e-05, 1.676447293786301280e-05, 1.675513755310617818e-05, 1.674577591630687932e-05, 1.673638804553289141e-05, 1.672697395889255237e-05, 1.671753367453489156e-05, 1.670806721064961627e-05, 1.669857458546755553e-05, 1.668905581725893897e-05, 1.667951092433585657e-05, 1.666993992505040199e-05, 1.666034283779546879e-05, 1.665071968100466907e-05, 1.664107047315094100e-05, 1.663139523274883915e-05, 1.662169397835296922e-05, 1.661196672855816755e-05, 1.660221350199977565e-05, 1.659243431735371124e-05, 1.658262919333499790e-05, 1.657279814869963187e-05, 1.656294120224520547e-05, 1.655305837280670586e-05, 1.654314967926118722e-05, 1.653321514052554818e-05, 1.652325477555571863e-05, 1.651326860334866213e-05, 1.650325664294117312e-05, 1.649321891340969735e-05, 1.648315543387122973e-05, 1.647306622348129838e-05, 1.646295130143609240e-05, 1.645281068697286505e-05, 1.644264439936618985e-05, 1.643245245793195861e-05, 1.642223488202581606e-05, 1.641199169104144213e-05, 1.640172290441492935e-05, 1.639142854161909762e-05, 1.638110862216808172e-05, 1.637076316561496300e-05, 1.636039219155279936e-05, 1.634999571961244334e-05, 1.633957376946707879e-05, 1.632912636082625775e-05, 1.631865351344059304e-05, 1.630815524710007775e-05, 1.629763158163206248e-05, 1.628708253690589036e-05, 1.627650813282874995e-05, 1.626590838934605470e-05, 1.625528332644370964e-05, 1.624463296414665784e-05, 1.623395732251712537e-05, 1.622325642165950023e-05, 1.621253028171389487e-05, 1.620177892286123856e-05, 1.619100236532144781e-05, 1.618020062935130539e-05, 1.616937373524917322e-05, 1.615852170335091306e-05, 1.614764455403023551e-05, 1.613674230770079383e-05, 1.612581498481496765e-05, 1.611486260586205704e-05, 1.610388519137252451e-05, 1.609288276191414945e-05, 1.608185533809226191e-05, 1.607080294055206009e-05, 1.605972558997670620e-05, 1.604862330708772965e-05, 1.603749611264567422e-05, 1.602634402744782793e-05, 1.601516707233122501e-05, 1.600396526817121946e-05, 1.599273863587939793e-05, 1.598148719640845531e-05, 1.597021097074770201e-05, 1.595890997992370773e-05, 1.594758424500248003e-05, 1.593623378708759067e-05, 1.592485862732056189e-05, 1.591345878688139154e-05, 1.590203428698653380e-05, 1.589058514889173836e-05, 1.587911139389005150e-05, 1.586761304331249704e-05, 1.585609011852768337e-05, 1.584454264094246748e-05, 1.583297063199990180e-05, 1.582137411318221230e-05, 1.580975310600869793e-05, 1.579810763203617099e-05, 1.578643771285894367e-05, 1.577474337010945478e-05, 1.576302462545602683e-05, 1.575128150060576968e-05, 1.573951401730278818e-05, 1.572772219732847699e-05, 1.571590606250193725e-05, 1.570406563467811994e-05, 1.569220093575065836e-05, 1.568031198764985892e-05, 1.566839881234312809e-05, 1.565646143183488427e-05, 1.564449986816724903e-05, 1.563251414341773970e-05, 1.562050427970232218e-05, 1.560847029917355078e-05, 1.559641222402062584e-05, 1.558433007646983759e-05, 1.557222387878459663e-05, 1.556009365326365516e-05, 1.554793942224399027e-05, 1.553576120809871012e-05, 1.552355903323765019e-05, 1.551133292010778328e-05, 1.549908289119100705e-05, 1.548680896900680711e-05, 1.547451117611262967e-05, 1.546218953509947026e-05, 1.544984406859656621e-05, 1.543747479926959763e-05, 1.542508174981863415e-05, 1.541266494298338654e-05, 1.540022440153637965e-05, 1.538776014828833948e-05, 1.537527220608609938e-05, 1.536276059781112278e-05, 1.535022534638193927e-05, 1.533766647475471383e-05, 1.532508400591850000e-05, 1.531247796290027472e-05, 1.529984836876299007e-05, 1.528719524660341510e-05, 1.527451861955719090e-05, 1.526181851079425321e-05, 1.524909494351915603e-05, 1.523634794097385831e-05, 1.522357752643581987e-05, 1.521078372321611416e-05, 1.519796655466498822e-05, 1.518512604416462225e-05, 1.517226221513480300e-05, 1.515937509103067067e-05, 1.514646469534073181e-05, 1.513353105159200754e-05, 1.512057418334528511e-05, 1.510759411419549566e-05, 1.509459086777451960e-05, 1.508156446774930791e-05, 1.506851493781989665e-05, 1.505544230172516853e-05, 1.504234658323537358e-05, 1.502922780615781780e-05, 1.501608599433437464e-05, 1.500292117164180512e-05, 1.498973336199168333e-05, 1.497652258933117737e-05, 1.496328887764041339e-05, 1.495003225093615680e-05, 1.493675273326914751e-05, 1.492345034872494016e-05, 1.491012512142365851e-05, 1.489677707552059512e-05, 1.488340623520399046e-05, 1.487001262469814317e-05, 1.485659626826137721e-05, 1.484315719018645182e-05, 1.482969541480093420e-05, 1.481621096646513447e-05, 1.480270386957543619e-05, 1.478917414856173153e-05, 1.477562182788823784e-05, 1.476204693205327569e-05, 1.474844948558993806e-05, 1.473482951306356109e-05, 1.472118703907539511e-05, 1.470752208825994835e-05, 1.469383468528575606e-05, 1.468012485485525511e-05, 1.466639262170530581e-05, 1.465263801060479818e-05, 1.463886104635823488e-05, 1.462506175380323925e-05, 1.461124015781100255e-05, 1.459739628328710050e-05, 1.458353015516884037e-05, 1.456964179842883205e-05, 1.455573123807266045e-05, 1.454179849913942078e-05, 1.452784360670146785e-05, 1.451386658586528511e-05, 1.449986746176878435e-05, 1.448584625958497838e-05, 1.447180300451957040e-05, 1.445773772181134196e-05, 1.444365043673237822e-05, 1.442954117458839667e-05, 1.441540996071638892e-05, 1.440125682048803936e-05, 1.438708177930759402e-05, 1.437288486261213334e-05, 1.435866609587220570e-05, 1.434442550458936597e-05, 1.433016311429927057e-05, 1.431587895057206710e-05, 1.430157303900694623e-05, 1.428724540523819460e-05, 1.427289607493272316e-05, 1.425852507378756165e-05, 1.424413242753652138e-05, 1.422971816194167747e-05, 1.421528230279986215e-05, 1.420082487594038294e-05, 1.418634590722301679e-05, 1.417184542254101541e-05, 1.415732344782179136e-05, 1.414278000902121579e-05, 1.412821513212979842e-05, 1.411362884317016339e-05, 1.409902116819450306e-05, 1.408439213329075797e-05, 1.406974176457697220e-05, 1.405507008820179653e-05, 1.404037713034784606e-05, 1.402566291722926924e-05, 1.401092747508976411e-05, 1.399617083020898864e-05, 1.398139300889397014e-05, 1.396659403748586625e-05, 1.395177394235747978e-05, 1.393693274991060407e-05, 1.392207048658229275e-05, 1.390718717883927951e-05, 1.389228285317836091e-05, 1.387735753612961851e-05, 1.386241125425446394e-05, 1.384744403414300631e-05, 1.383245590242110458e-05, 1.381744688574132469e-05, 1.380241701078979370e-05, 1.378736630428330803e-05, 1.377229479296956389e-05, 1.375720250362724362e-05, 1.374208946306667812e-05, 1.372695569812713461e-05, 1.371180123568064019e-05, 1.369662610262947794e-05, 1.368143032590662065e-05, 1.366621393247569015e-05, 1.365097694933179251e-05, 1.363571940349856013e-05, 1.362044132203214642e-05, 1.360514273201866774e-05, 1.358982366057462350e-05, 1.357448413484772460e-05, 1.355912418201392370e-05, 1.354374382928157078e-05, 1.352834310388867892e-05, 1.351292203310340030e-05, 1.349748064422414316e-05, 1.348201896458012907e-05, 1.346653702152860116e-05, 1.345103484245895423e-05, 1.343551245478985485e-05, 1.341996988596991050e-05, 1.340440716347763911e-05, 1.338882431482215340e-05, 1.337322136754017772e-05, 1.335759834920040848e-05, 1.334195528740051235e-05, 1.332629220976779027e-05, 1.331060914395981275e-05, 1.329490611766178899e-05, 1.327918315859038192e-05, 1.326344029449101800e-05, 1.324767755313867159e-05, 1.323189496233759561e-05, 1.321609254992204147e-05, 1.320027034375354862e-05, 1.318442837172490353e-05, 1.316856666175738180e-05, 1.315268524180140880e-05, 1.313678413983707640e-05, 1.312086338387156288e-05, 1.310492300194242282e-05, 1.308896302211814105e-05, 1.307298347249196457e-05, 1.305698438118873469e-05, 1.304096577636203427e-05, 1.302492768619225982e-05, 1.300887013888971321e-05, 1.299279316269553508e-05, 1.297669678587523690e-05, 1.296058103672567883e-05, 1.294444594357212883e-05, 1.292829153476566733e-05, 1.291211783869048868e-05, 1.289592488375436692e-05, 1.287971269839608765e-05, 1.286348131108276637e-05, 1.284723075030757498e-05, 1.283096104459312994e-05, 1.281467222249244603e-05, 1.279836431258222617e-05, 1.278203734347003575e-05, 1.276569134379137532e-05, 1.274932634220688876e-05, 1.273294236740989337e-05, 1.271653944811665261e-05, 1.270011761307399596e-05, 1.268367689105569361e-05, 1.266721731086393373e-05, 1.265073890132563953e-05, 1.263424169130025012e-05, 1.261772570966977129e-05, 1.260119098534647836e-05, 1.258463754727002448e-05, 1.256806542440456743e-05, 1.255147464574589494e-05, 1.253486524031485840e-05, 1.251823723715806750e-05, 1.250159066535147822e-05, 1.248492555399813636e-05, 1.246824193222521629e-05, 1.245153982919195766e-05, 1.243481927407952980e-05, 1.241808029609882614e-05, 1.240132292448765032e-05, 1.238454718850765505e-05, 1.236775311745165031e-05, 1.235094074063689653e-05, 1.233411008740589401e-05, 1.231726118712991847e-05, 1.230039406920600221e-05, 1.228350876305773369e-05, 1.226660529813509663e-05, 1.224968370391526449e-05, 1.223274400989950884e-05, 1.221578624561758186e-05, 1.219881044062475346e-05, 1.218181662450247026e-05, 1.216480482685907724e-05, 1.214777507732677016e-05, 1.213072740556601532e-05, 1.211366184126249521e-05, 1.209657841412784542e-05, 1.207947715389953772e-05, 1.206235809034168984e-05, 1.204522125324195010e-05, 1.202806667241583251e-05, 1.201089437770389613e-05, 1.199370439897230076e-05, 1.197649676611349642e-05, 1.195927150904324345e-05, 1.194202865770493243e-05, 1.192476824206675334e-05, 1.190749029212215810e-05, 1.189019483788996217e-05, 1.187288190941500018e-05, 1.185555153676500882e-05, 1.183820375003524658e-05, 1.182083857934522760e-05, 1.180345605483952123e-05, 1.178605620668779443e-05, 1.176863906508529453e-05, 1.175120466025005747e-05, 1.173375302242709884e-05, 1.171628418188555946e-05, 1.169879816891926775e-05, 1.168129501384752241e-05, 1.166377474701201433e-05, 1.164623739878051281e-05, 1.162868299954755682e-05, 1.161111157972776336e-05, 1.159352316976306797e-05, 1.157591780011985662e-05, 1.155829550128651274e-05, 1.154065630377804538e-05, 1.152300023813286205e-05, 1.150532733491354455e-05, 1.148763762470690832e-05, 1.146993113812445641e-05, 1.145220790579866610e-05, 1.143446795839141348e-05, 1.141671132658307048e-05, 1.139893804108088706e-05, 1.138114813261597578e-05, 1.136334163194089440e-05, 1.134551856983346259e-05, 1.132767897709735654e-05, 1.130982288455530052e-05, 1.129195032305663088e-05, 1.127406132347414000e-05, 1.125615591670102191e-05, 1.123823413365918674e-05, 1.122029600528854408e-05, 1.120234156255531573e-05, 1.118437083644816481e-05, 1.116638385797974070e-05, 1.114838065818267599e-05, 1.113036126811811100e-05, 1.111232571886474844e-05, 1.109427404152737794e-05, 1.107620626723371662e-05, 1.105812242713110057e-05, 1.104002255239448932e-05, 1.102190667421914410e-05, 1.100377482382150871e-05, 1.098562703244297210e-05, 1.096746333134672753e-05, 1.094928375181853830e-05, 1.093108832516743061e-05, 1.091287708272241050e-05, 1.089465005583733934e-05, 1.087640727588831139e-05, 1.085814877427053000e-05, 1.083987458240612063e-05, 1.082158473173714107e-05, 1.080327925372601692e-05, 1.078495817985966993e-05, 1.076662154164616382e-05, 1.074826937061560208e-05, 1.072990169831984682e-05, 1.071151855633350973e-05, 1.069311997625052671e-05, 1.067470598968896905e-05, 1.065627662828779582e-05, 1.063783192370758072e-05, 1.061937190763121676e-05, 1.060089661176078223e-05, 1.058240606782215875e-05, 1.056390030756180915e-05, 1.054537936274762618e-05, 1.052684326516876823e-05, 1.050829204663637415e-05, 1.048972573898045980e-05, 1.047114437405449538e-05, 1.045254798373224259e-05, 1.043393659990852886e-05, 1.041531025449996392e-05, 1.039666897944161094e-05, 1.037801280669180957e-05, 1.035934176822890638e-05, 1.034065589605204599e-05, 1.032195522218100502e-05, 1.030323977865707476e-05, 1.028450959753963573e-05, 1.026576471091027087e-05, 1.024700515087352448e-05, 1.022823094954938567e-05, 1.020944213908154693e-05, 1.019063875163398379e-05, 1.017182081938845946e-05, 1.015298837454948509e-05, 1.013414144934084351e-05, 1.011528007600642103e-05, 1.009640428681093420e-05, 1.007751411403669244e-05, 1.005860958998756046e-05, 1.003969074698971891e-05, 1.002075761738424945e-05, 1.000181023353530180e-05, 9.982848627826771762e-06, 9.963872832659707515e-06, 9.944882880457222465e-06, 9.925878803661190099e-06, 9.906860634732947028e-06, 9.887828406153282822e-06, 9.868782150423185398e-06, 9.849721900059687171e-06, 9.830647687604907977e-06, 9.811559545614350776e-06, 9.792457506665978449e-06, 9.773341603356939177e-06, 9.754211868300840683e-06, 9.735068334132009117e-06, 9.715911033506288653e-06, 9.696739999093260647e-06, 9.677555263584788502e-06, 9.658356859691463519e-06, 9.639144820139277755e-06, 9.619919177678699129e-06, 9.600679965073029802e-06, 9.581427215107401671e-06, 9.562160960585510205e-06, 9.542881234326917495e-06, 9.523588069171302664e-06, 9.504281497979176764e-06, 9.484961553624311994e-06, 9.465628269002029072e-06, 9.446281677025814184e-06, 9.426921810623973205e-06, 9.407548702747820811e-06, 9.388162386364248618e-06, 9.368762894456280827e-06, 9.349350260027502519e-06, 9.329924516098366590e-06, 9.310485695707191553e-06, 9.291033831910795122e-06, 9.271568957781184004e-06, 9.252091106410490412e-06, 9.232600310908393689e-06, 9.213096604398679669e-06, 9.193580020027680507e-06, 9.174050590956568375e-06, 9.154508350362122875e-06, 9.134953331441030577e-06, 9.115385567406236001e-06, 9.095805091487893683e-06, 9.076211936934145750e-06, 9.056606137007621981e-06, 9.036987724990454241e-06, 9.017356734180874799e-06, 8.997713197894105709e-06, 8.978057149462026774e-06, 8.958388622234276694e-06, 8.938707649574571853e-06, 8.919014264865915575e-06, 8.899308501506977907e-06, 8.879590392913030742e-06, 8.859859972515820762e-06, 8.840117273764389370e-06, 8.820362330121613403e-06, 8.800595175069199241e-06, 8.780815842104306535e-06, 8.761024364740274957e-06, 8.741220776507500036e-06, 8.721405110949840040e-06, 8.701577401629803212e-06, 8.681737682125052907e-06, 8.661885986029107241e-06, 8.642022346951398388e-06, 8.622146798518029822e-06, 8.602259374368279770e-06, 8.582360108159693568e-06, 8.562449033564602363e-06, 8.542526184270980304e-06, 8.522591593982248033e-06, 8.502645296418209504e-06, 8.482687325311501220e-06, 8.462717714412681206e-06, 8.442736497486800224e-06, 8.422743708314094638e-06, 8.402739380690896136e-06, 8.382723548426062327e-06, 8.362696245345289836e-06, 8.342657505291830892e-06, 8.322607362118748060e-06, 8.302545849697499767e-06, 8.282473001914333636e-06, 8.262388852667740301e-06, 8.242293435873522059e-06, 8.222186785461326806e-06, 8.202068935375376486e-06, 8.181939919575376808e-06, 8.161799772032903797e-06, 8.141648526735691482e-06, 8.121486217688597507e-06, 8.101312878905481786e-06, 8.081128544418019025e-06, 8.060933248272100535e-06, 8.040727024525157603e-06, 8.020509907250484747e-06, 8.000281930538093530e-06, 7.980043128486628473e-06, 7.959793535212318503e-06, 7.939533184845192404e-06, 7.919262111525611072e-06, 7.898980349413840674e-06, 7.878687932677723243e-06, 7.858384895502268472e-06, 7.838071272086101265e-06, 7.817747096637778833e-06, 7.797412403384745526e-06, 7.777067226565177605e-06, 7.756711600428830268e-06, 7.736345559241445614e-06, 7.715969137281998092e-06, 7.695582368839136959e-06, 7.675185288220825520e-06, 7.654777929741971053e-06, 7.634360327733959018e-06, 7.613932516540333184e-06, 7.593494530517482575e-06, 7.573046404034692291e-06, 7.552588171474932099e-06, 7.532119867231195550e-06, 7.511641525711865092e-06, 7.491153181337980387e-06, 7.470654868539472399e-06, 7.450146621764238511e-06, 7.429628475469890724e-06, 7.409100464124681470e-06, 7.388562622211836180e-06, 7.368014984225968643e-06, 7.347457584673990721e-06, 7.326890458075784043e-06, 7.306313638960671268e-06, 7.285727161872715123e-06, 7.265131061367086322e-06, 7.244525372010871643e-06, 7.223910128382996839e-06, 7.203285365075206664e-06, 7.182651116688193925e-06, 7.162007417837117905e-06, 7.141354303147868948e-06, 7.120691807257897705e-06, 7.100019964816226142e-06, 7.079338810484209871e-06, 7.058648378931919630e-06, 7.037948704843514853e-06, 7.017239822913534514e-06, 6.996521767847756872e-06, 6.975794574364034637e-06, 6.955058277188629016e-06, 6.934312911061630724e-06, 6.913558510733150874e-06, 6.892795110964327254e-06, 6.872022746527165934e-06, 6.851241452205396765e-06, 6.830451262790830293e-06, 6.809652213088702535e-06, 6.788844337914001401e-06, 6.768027672092308639e-06, 6.747202250459824405e-06, 6.726368107864069447e-06, 6.705525279160266587e-06, 6.684673799216771890e-06, 6.663813702911342642e-06, 6.642945025131968285e-06, 6.622067800777785216e-06, 6.601182064755299865e-06, 6.580287851982925404e-06, 6.559385197391904167e-06, 6.538474135917858495e-06, 6.517554702510065746e-06, 6.496626932127594981e-06, 6.475690859736585442e-06, 6.454746520315648933e-06, 6.433793948852186921e-06, 6.412833180343190975e-06, 6.391864249796124537e-06, 6.370887192225234087e-06, 6.349902042655975738e-06, 6.328908836126047771e-06, 6.307907607676877108e-06, 6.286898392362885847e-06, 6.265881225247692325e-06, 6.244856141401303201e-06, 6.223823175904661176e-06, 6.202782363850527602e-06, 6.181733740335081609e-06, 6.160677340467143447e-06, 6.139613199364369613e-06, 6.118541352149551319e-06, 6.097461833960699262e-06, 6.076374679937992547e-06, 6.055279925233986276e-06, 6.034177605009788041e-06, 6.013067754431326748e-06, 5.991950408678530216e-06, 5.970825602936950562e-06, 5.949693372398639186e-06, 5.928553752266693647e-06, 5.907406777752418405e-06, 5.886252484071591947e-06, 5.865090906454610857e-06, 5.843922080133376894e-06, 5.822746040351528307e-06, 5.801562822359688826e-06, 5.780372461416393467e-06, 5.759174992787922518e-06, 5.737970451749301032e-06, 5.716758873580427045e-06, 5.695540293571667072e-06, 5.674314747020911822e-06, 5.653082269229893298e-06, 5.631842895513390352e-06, 5.610596661190796472e-06, 5.589343601586974437e-06, 5.568083752036868412e-06, 5.546817147881738039e-06, 5.525543824469989379e-06, 5.504263817158138833e-06, 5.482977161306894765e-06, 5.461683892286764868e-06, 5.440384045475236383e-06, 5.419077656252915327e-06, 5.397764760012827762e-06, 5.376445392151990968e-06, 5.355119588072214740e-06, 5.333787383184822743e-06, 5.312448812906717204e-06, 5.291103912661384337e-06, 5.269752717878760510e-06, 5.248395263996148738e-06, 5.227031586454371459e-06, 5.205661720703373652e-06, 5.184285702198400186e-06, 5.162903566400885196e-06, 5.141515348779294039e-06, 5.120121084805376019e-06, 5.098720809959667559e-06, 5.077314559727737305e-06, 5.055902369601014524e-06, 5.034484275076773859e-06, 5.013060311659018779e-06, 4.991630514854597940e-06, 4.970194920178873524e-06, 4.948753563151864703e-06, 4.927306479299087890e-06, 4.905853704152520666e-06, 4.884395273246680017e-06, 4.862931222124347430e-06, 4.841461586332608165e-06, 4.819986401423821112e-06, 4.798505702955494271e-06, 4.777019526491244445e-06, 4.755527907596901734e-06, 4.734030881845186005e-06, 4.712528484816650483e-06, 4.691020752091027622e-06, 4.669507719256677750e-06, 4.647989421906730839e-06, 4.626465895636201510e-06, 4.604937176047615871e-06, 4.583403298747128720e-06, 4.561864299345438338e-06, 4.540320213458721618e-06, 4.518771076704670792e-06, 4.497216924707271549e-06, 4.475657793097673782e-06, 4.454093717505551005e-06, 4.432524733568611688e-06, 4.410950876928630056e-06, 4.389372183228689003e-06, 4.367788688118661239e-06, 4.346200427251456932e-06, 4.324607436283906320e-06, 4.303009750876629267e-06, 4.281407406695027136e-06, 4.259800439404377624e-06, 4.238188884680304090e-06, 4.216572778195387349e-06, 4.194952155629537593e-06, 4.173327052666159870e-06, 4.151697504988273830e-06, 4.130063548288030984e-06, 4.108425218257959775e-06, 4.086782550591993871e-06, 4.065135580990120686e-06, 4.043484345155431160e-06, 4.021828878790314895e-06, 4.000169217606840533e-06, 3.978505397313362479e-06, 3.956837453624964816e-06, 3.935165422258602721e-06, 3.913489338934039285e-06, 3.891809239373758270e-06, 3.870125159303870432e-06, 3.848437134450210395e-06, 3.826745200544050734e-06, 3.805049393319167008e-06, 3.783349748507929123e-06, 3.761646301850813089e-06, 3.739939089087786701e-06, 3.718228145959107434e-06, 3.696513508210154775e-06, 3.674795211587452973e-06, 3.653073291839632004e-06, 3.631347784718314410e-06, 3.609618725974190148e-06, 3.587886151362764560e-06, 3.566150096641359026e-06, 3.544410597565280680e-06, 3.522667689897313417e-06, 3.500921409399035382e-06, 3.479171791831723598e-06, 3.457418872961097352e-06, 3.435662688553402363e-06, 3.413903274376356493e-06, 3.392140666199026081e-06, 3.370374899792786053e-06, 3.348606010927375714e-06, 3.326834035376642906e-06, 3.305059008914612496e-06, 3.283280967316393980e-06, 3.261499946359119568e-06, 3.239715981817980069e-06, 3.217929109471985989e-06, 3.196139365100031789e-06, 3.174346784481804331e-06, 3.152551403397754923e-06, 3.130753257629962446e-06, 3.108952382958244629e-06, 3.087148815165875516e-06, 3.065342590035666251e-06, 3.043533743350883255e-06, 3.021722310896150744e-06, 2.999908328453518801e-06, 2.978091831808216000e-06, 2.956272856744711551e-06, 2.934451439047646186e-06, 2.912627614501746613e-06, 2.890801418892751743e-06, 2.868972888003483729e-06, 2.847142057619585768e-06, 2.825308963525594408e-06, 2.803473641505855192e-06, 2.781636127344476916e-06, 2.759796456826208733e-06, 2.737954665732553120e-06, 2.716110789847443960e-06, 2.694264864953409488e-06, 2.672416926832411270e-06, 2.650567011266784416e-06, 2.628715154035296333e-06, 2.606861390917948979e-06, 2.585005757696858080e-06, 2.563148290147494816e-06, 2.541289024048313191e-06, 2.519427995176835473e-06, 2.497565239305673258e-06, 2.475700792213165352e-06, 2.453834689669751558e-06, 2.431966967448556774e-06, 2.410097661320496410e-06, 2.388226807056158499e-06, 2.366354440420886247e-06, 2.344480597185407024e-06, 2.322605313112176076e-06, 2.300728623966007635e-06, 2.278850565510120126e-06, 2.256971173502208044e-06, 2.235090483704064681e-06, 2.213208531872833540e-06, 2.191325353761876966e-06, 2.169440985125587301e-06, 2.147555461716432001e-06, 2.125668819280997998e-06, 2.103781093570601631e-06, 2.081892320327656499e-06, 2.060002535296291868e-06, 2.038111774218408882e-06, 2.016220072829734239e-06, 1.994327466869475943e-06, 1.972433992071538725e-06, 1.950539684165408766e-06, 1.928644578880973320e-06, 1.906748711945548259e-06, 1.884852119079922856e-06, 1.862954836008029087e-06, 1.841056898448128254e-06, 1.819158342113729803e-06, 1.797259202718404170e-06, 1.775359515971819718e-06, 1.753459317580652034e-06, 1.731558643249531118e-06, 1.709657528677054191e-06, 1.687756009561589351e-06, 1.665854121598285124e-06, 1.643951900475148489e-06, 1.622049381882665692e-06, 1.600146601505040745e-06, 1.578243595021074650e-06, 1.556340398108994545e-06, 1.534437046442487470e-06, 1.512533575691622998e-06, 1.490630021523784764e-06, 1.468726419599682204e-06, 1.446822805579161205e-06, 1.424919215117255236e-06, 1.403015683865078544e-06, 1.381112247469795027e-06, 1.359208941575511218e-06, 1.337305801819333557e-06, 1.315402863837163580e-06, 1.293500163259723427e-06, 1.271597735713490124e-06, 1.249695616820630989e-06, 1.227793842199917588e-06, 1.205892447462776017e-06, 1.183991468219072983e-06, 1.162090940073162491e-06, 1.140190898624802547e-06, 1.118291379470067409e-06, 1.096392418197399992e-06, 1.074494050393395832e-06, 1.052596311638847020e-06, 1.030699237509662288e-06, 1.008802863576805816e-06, 9.869072254072285394e-07, 9.650123585598906979e-07, 9.431182985915576566e-07, 9.212250810528631093e-07, 8.993327414891980393e-07, 8.774413154406792733e-07, 8.555508384430457484e-07, 8.336613460237154674e-07, 8.117728737075705226e-07, 7.898854570130075925e-07, 7.679991314528433143e-07, 7.461139325352466555e-07, 7.242298957597692939e-07, 7.023470566221708466e-07, 6.804654506153313363e-07, 6.585851132204293433e-07, 6.367060799166175568e-07, 6.148283861770832247e-07, 5.929520674650807571e-07, 5.710771592445992593e-07, 5.492036969666613506e-07, 5.273317160799882615e-07, 5.054612520270414374e-07, 4.835923402410410882e-07, 4.617250161507860710e-07, 4.398593151815667262e-07, 4.179952727463413357e-07, 3.961329242554209389e-07, 3.742723051125147473e-07, 3.524134507107802184e-07, 3.305563964425016245e-07, 3.087011776902719107e-07, 2.868478298279031487e-07, 2.649963882252475845e-07, 2.431468882452133821e-07, 2.212993652398136380e-07, 1.994538545608237770e-07, 1.776103915460870669e-07, 1.557690115301740255e-07, 1.339297498404269091e-07, 1.120926417930104213e-07, 9.025772270259189690e-08, 6.842502787351962543e-08, 4.659459260074106168e-08, 2.476645217461465759e-08, 2.940641877931603436e-09, -1.888280301803517554e-08, -4.070384724287797510e-08, -6.252245554074088871e-08, -8.433859265966781738e-08, -1.061522233565257610e-07, -1.279633123960894535e-07, -1.497718245510961753e-07, -1.715777246013304814e-07, -1.933809773375721952e-07, -2.151815475558156600e-07, -2.369794000612158015e-07, -2.587744996671756076e-07, -2.805668111953988042e-07, -3.023562994749757737e-07, -3.241429293463305170e-07, -3.459266656554388595e-07, -3.677074732577786422e-07, -3.894853170174118558e-07, -4.112601618060670918e-07, -4.330319725070883047e-07, -4.548007140096555589e-07, -4.765663512127302964e-07, -4.983288490241392709e-07, -5.200881723606300808e-07, -5.418442861469574334e-07, -5.635971553198271941e-07, -5.853467448221178750e-07, -6.070930196068250556e-07, -6.288359446361542108e-07, -6.505754848815581915e-07, -6.723116053228431817e-07, -6.940442709520936375e-07, -7.157734467679097100e-07, -7.374990977793477485e-07, -7.592211890049979875e-07, -7.809396854720767392e-07, -8.026545522203674260e-07, -8.243657542964406394e-07, -8.460732567576045958e-07, -8.677770246709857882e-07, -8.894770231135848902e-07, -9.111732171713589959e-07, -9.328655719431684761e-07, -9.545540525350001070e-07, -9.762386240639084210e-07, -9.979192516570996404e-07, -1.019595900451996369e-06, -1.041268535595308717e-06, -1.062937122246976388e-06, -1.084601625574406529e-06, -1.106262010756413703e-06, -1.127918242982296413e-06, -1.149570287450922938e-06, -1.171218109374667711e-06, -1.192861673974622615e-06, -1.214500946479687907e-06, -1.236135892135329267e-06, -1.257766476193972233e-06, -1.279392663918905541e-06, -1.301014420588230203e-06, -1.322631711484252963e-06, -1.344244501907100865e-06, -1.365852757164127629e-06, -1.387456442573834138e-06, -1.409055523468834965e-06, -1.430649965191076863e-06, -1.452239733090920169e-06, -1.473824792535902834e-06, -1.495405108901119611e-06, -1.516980647573153989e-06, -1.538551373953989571e-06, -1.560117253451411503e-06, -1.581678251487759073e-06, -1.603234333498992071e-06, -1.624785464929943380e-06, -1.646331611237257124e-06, -1.667872737893307675e-06, -1.689408810375643293e-06, -1.710939794180537807e-06, -1.732465654812451198e-06, -1.753986357787921501e-06, -1.775501868639498636e-06, -1.797012152906135882e-06, -1.818517176141944386e-06, -1.840016903915266927e-06, -1.861511301803909976e-06, -1.883000335398104490e-06, -1.904483970304419425e-06, -1.925962172135192242e-06, -1.947434906522096257e-06, -1.968902139105575601e-06, -1.990363835539738954e-06, -2.011819961491446652e-06, -2.033270482640342029e-06, -2.054715364677984054e-06, -2.076154573311709380e-06, -2.097588074258940704e-06, -2.119015833251072534e-06, -2.140437816032593655e-06, -2.161853988361099423e-06, -2.183264316006410838e-06, -2.204668764754466670e-06, -2.226067300401638169e-06, -2.247459888758554691e-06, -2.268846495649285041e-06, -2.290227086910379900e-06, -2.311601628394769025e-06, -2.332970085966074272e-06, -2.354332425502478838e-06, -2.375688612895856093e-06, -2.397038614051793289e-06, -2.418382394888702186e-06, -2.439719921341686595e-06, -2.461051159356874039e-06, -2.482376074895290502e-06, -2.503694633931950719e-06, -2.525006802455932712e-06, -2.546312546469437583e-06, -2.567611831991702812e-06, -2.588904625053303409e-06, -2.610190891700046584e-06, -2.631470597992036610e-06, -2.652743710002806624e-06, -2.674010193823173471e-06, -2.695270015555574861e-06, -2.716523141317930151e-06, -2.737769537242746300e-06, -2.759009169477169536e-06, -2.780242004182073950e-06, -2.801468007535960814e-06, -2.822687145729246609e-06, -2.843899384968191148e-06, -2.865104691473922209e-06, -2.886303031481594016e-06, -2.907494371244236151e-06, -2.928678677028029653e-06, -2.949855915111417209e-06, -2.971026051793746281e-06, -2.992189053385750994e-06, -3.013344886213490417e-06, -3.034493516621173841e-06, -3.055634910966504214e-06, -3.076769035619782407e-06, -3.097895856972490196e-06, -3.119015341427866173e-06, -3.140127455404740269e-06, -3.161232165341400028e-06, -3.182329437685185662e-06, -3.203419238905842673e-06, -3.224501535485129185e-06, -3.245576293920676297e-06, -3.266643480728867991e-06, -3.287703062440138835e-06, -3.308755005598155744e-06, -3.329799276768303133e-06, -3.350835842528320666e-06, -3.371864669472133956e-06, -3.392885724213656904e-06, -3.413898973376511675e-06, -3.434904383607236064e-06, -3.455901921564999248e-06, -3.476891553926369305e-06, -3.497873247383446779e-06, -3.518846968648660584e-06, -3.539812684444433350e-06, -3.560770361516466290e-06, -3.581719966623355001e-06, -3.602661466540479037e-06, -3.623594828063796193e-06, -3.644520018000485336e-06, -3.665437003177426892e-06, -3.686345750440395207e-06, -3.707246226649327862e-06, -3.728138398681262342e-06, -3.749022233434098976e-06, -3.769897697816330239e-06, -3.790764758760283690e-06, -3.811623383211787748e-06, -3.832473538133985030e-06, -3.853315190511199907e-06, -3.874148307339528815e-06, -3.894972855635386813e-06, -3.915788802434572466e-06, -3.936596114787730282e-06, -3.957394759764009054e-06, -3.978184704450295290e-06, -3.998965915951211520e-06, -4.019738361388236233e-06, -4.040502007903519752e-06, -4.061256822654291286e-06, -4.082002772816682428e-06, -4.102739825584822527e-06, -4.123467948169961163e-06, -4.144187107804249301e-06, -4.164897271735213248e-06, -4.185598407229504467e-06, -4.206290481572051700e-06, -4.226973462066092303e-06, -4.247647316032288796e-06, -4.268312010812521875e-06, -4.288967513764336414e-06, -4.309613792264738718e-06, -4.330250813709292735e-06, -4.350878545511263710e-06, -4.371496955105339196e-06, -4.392106009942214822e-06, -4.412705677492217053e-06, -4.433295925244532391e-06, -4.453876720707203983e-06, -4.474448031406305769e-06, -4.495009824889628763e-06, -4.515562068721232098e-06, -4.536104730485179281e-06, -4.556637777784663212e-06, -4.577161178242056159e-06, -4.597674899498026301e-06, -4.618178909215323966e-06, -4.638673175073210694e-06, -4.659157664771296299e-06, -4.679632346028607978e-06, -4.700097186582759372e-06, -4.720552154193614830e-06, -4.740997216638802677e-06, -4.761432341712841073e-06, -4.781857497235425388e-06, -4.802272651042329369e-06, -4.822677770989102442e-06, -4.843072824953888638e-06, -4.863457780831981015e-06, -4.883832606539470680e-06, -4.904197270012496315e-06, -4.924551739207211989e-06, -4.944895982098909637e-06, -4.965229966686746343e-06, -4.985553660983582494e-06, -5.005867033028993046e-06, -5.026170050879120074e-06, -5.046462682610487807e-06, -5.066744896322713132e-06, -5.087016660134039192e-06, -5.107277942180440070e-06, -5.127528710623916630e-06, -5.147768933643413782e-06, -5.167998579438474587e-06, -5.188217616233010393e-06, -5.208426012265257571e-06, -5.228623735800640556e-06, -5.248810755121742974e-06, -5.268987038532970563e-06, -5.289152554358697017e-06, -5.309307270948012447e-06, -5.329451156664558994e-06, -5.349584179899507368e-06, -5.369706309061467841e-06, -5.389817512580244296e-06, -5.409917758910524750e-06, -5.430007016522762197e-06, -5.450085253911554305e-06, -5.470152439594587168e-06, -5.490208542108305270e-06, -5.510253530011521539e-06, -5.530287371884566933e-06, -5.550310036328421374e-06, -5.570321491968425456e-06, -5.590321707448845874e-06, -5.610310651435694354e-06, -5.630288292620337706e-06, -5.650254599710532828e-06, -5.670209541438636149e-06, -5.690153086560683751e-06, -5.710085203851997807e-06, -5.730005862110766995e-06, -5.749915030157284162e-06, -5.769812676833921765e-06, -5.789698771004284833e-06, -5.809573281556918437e-06, -5.829436177399888366e-06, -5.849287427464480124e-06, -5.869127000704294300e-06, -5.888954866094459669e-06, -5.908770992635203442e-06, -5.928575349346609822e-06, -5.948367905272121640e-06, -5.968148629477826306e-06, -5.987917491052421080e-06, -6.007674459106377052e-06, -6.027419502775601709e-06, -6.047152591216117880e-06, -6.066873693607607714e-06, -6.086582779152666453e-06, -6.106279817075907109e-06, -6.125964776627595938e-06, -6.145637627078325441e-06, -6.165298337722646450e-06, -6.184946877878241418e-06, -6.204583216885921880e-06, -6.224207324108826311e-06, -6.243819168936024255e-06, -6.263418720778102433e-06, -6.283005949066318557e-06, -6.302580823260638828e-06, -6.322143312840994014e-06, -6.341693387310721790e-06, -6.361231016199406841e-06, -6.380756169057534391e-06, -6.400268815460113809e-06, -6.419768925005839198e-06, -6.439256467316240670e-06, -6.458731412039245272e-06, -6.478193728844880835e-06, -6.497643387424364564e-06, -6.517080357498125293e-06, -6.536504608806996876e-06, -6.555916111115886692e-06, -6.575314834216318437e-06, -6.594700747921302491e-06, -6.614073822068906163e-06, -6.633434026521349905e-06, -6.652781331165119124e-06, -6.672115705910079029e-06, -6.691437120693968142e-06, -6.710745545472713326e-06, -6.730040950232856599e-06, -6.749323304981879484e-06, -6.768592579751787646e-06, -6.787848744601762957e-06, -6.807091769613858873e-06, -6.826321624892174574e-06, -6.845538280570677318e-06, -6.864741706804704157e-06, -6.883931873774278918e-06, -6.903108751687831524e-06, -6.922272310772541820e-06, -6.941422521286613928e-06, -6.960559353509742888e-06, -6.979682777746664576e-06, -6.998792764329751011e-06, -7.017889283614813310e-06, -7.036972305980163171e-06, -7.056041801834547880e-06, -7.075097741608486013e-06, -7.094140095757762288e-06, -7.113168834767065579e-06, -7.132183929141139111e-06, -7.151185349412854377e-06, -7.170173066142250607e-06, -7.189147049912297907e-06, -7.208107271332403975e-06, -7.227053701037601795e-06, -7.245986309687684821e-06, -7.264905067970734864e-06, -7.283809946598041592e-06, -7.302700916306620758e-06, -7.321577947862840346e-06, -7.340441012053716463e-06, -7.359290079694854273e-06, -7.378125121629455272e-06, -7.396946108724230357e-06, -7.415753011872773556e-06, -7.434545801994768357e-06, -7.453324450035260111e-06, -7.472088926968009432e-06, -7.490839203790429482e-06, -7.509575251527105394e-06, -7.528297041228934530e-06, -7.547004543973172225e-06, -7.565697730862688090e-06, -7.584376573029307558e-06, -7.603041041628833869e-06, -7.621691107844492957e-06, -7.640326742886046602e-06, -7.658947917989933040e-06, -7.677554604418413155e-06, -7.696146773463017899e-06, -7.714724396439484735e-06, -7.733287444691262652e-06, -7.751835889588582130e-06, -7.770369702527792755e-06, -7.788888854934695449e-06, -7.807393318259509400e-06, -7.825883063980399108e-06, -7.844358063602546033e-06, -7.862818288658290902e-06, -7.881263710706227382e-06, -7.899694301334788413e-06, -7.918110032157008163e-06, -7.936510874814138854e-06, -7.954896800974719029e-06, -7.973267782334707380e-06, -7.991623790616583201e-06, -8.009964797572861574e-06, -8.028290774981036585e-06, -8.046601694646960979e-06, -8.064897528404117719e-06, -8.083178248112772948e-06, -8.101443825663350571e-06, -8.119694232972346167e-06, -8.137929441981569742e-06, -8.156149424665560654e-06, -8.174354153023417134e-06, -8.192543599082109882e-06, -8.210717734899036712e-06, -8.228876532557091131e-06, -8.247019964168028448e-06, -8.265148001871625515e-06, -8.283260617834998019e-06, -8.301357784255829371e-06, -8.319439473358350692e-06, -8.337505657392568312e-06, -8.355556308641700724e-06, -8.373591399413981000e-06, -8.391610902045987320e-06, -8.409614788905223038e-06, -8.427603032385881516e-06, -8.445575604908278611e-06, -8.463532478926130386e-06, -8.481473626918435140e-06, -8.499399021392815807e-06, -8.517308634888825071e-06, -8.535202439968914308e-06, -8.553080409230136188e-06, -8.570942515294898467e-06, -8.588788730814491028e-06, -8.606619028472318163e-06, -8.624433380975816182e-06, -8.642231761063748062e-06, -8.660014141505522432e-06, -8.677780495097154920e-06, -8.695530794663688972e-06, -8.713265013062499283e-06, -8.730983123174513146e-06, -8.748685097915403144e-06, -8.766370910226911842e-06, -8.784040533080844697e-06, -8.801693939478297566e-06, -8.819331102449743103e-06, -8.836951995054215912e-06, -8.854556590382607506e-06, -8.872144861552885655e-06, -8.889716781712477933e-06, -8.907272324041637829e-06, -8.924811461745345420e-06, -8.942334168060698575e-06, -8.959840416255979530e-06, -8.977330179626866956e-06, -8.994803431499514071e-06, -9.012260145229945561e-06, -9.029700294203173272e-06, -9.047123851836469147e-06, -9.064530791574723485e-06, -9.081921086893440050e-06, -9.099294711298258343e-06, -9.116651638324706273e-06, -9.133991841537754611e-06, -9.151315294534722317e-06, -9.168621970940819452e-06, -9.185911844412142287e-06, -9.203184888635131201e-06, -9.220441077326418214e-06, -9.237680384232183246e-06, -9.254902783131345733e-06, -9.272108247830824630e-06, -9.289296752168760531e-06, -9.306468270013768578e-06, -9.323622775264252369e-06, -9.340760241851405840e-06, -9.357880643734746017e-06, -9.374983954905158942e-06, -9.392070149384215274e-06, -9.409139201224197391e-06, -9.426191084507303184e-06, -9.443225773348973195e-06, -9.460243241892965973e-06, -9.477243464314839380e-06, -9.494226414820956168e-06, -9.511192067648631371e-06, -9.528140397065391993e-06, -9.545071377372131357e-06, -9.561984982898414856e-06, -9.578881188005752880e-06, -9.595759967086713130e-06, -9.612621294564337859e-06, -9.629465144895096629e-06, -9.646291492565233901e-06, -9.663100312089947420e-06, -9.679891578020352513e-06, -9.696665264935913007e-06, -9.713421347447463442e-06, -9.730159800199499447e-06, -9.746880597865844318e-06, -9.763583715152432372e-06, -9.780269126796882039e-06, -9.796936807567548883e-06, -9.813586732266749404e-06, -9.830218875726925678e-06, -9.846833212809949092e-06, -9.863429718413950820e-06, -9.880008367465873016e-06, -9.896569134924389382e-06, -9.913111995782354784e-06, -9.929636925062958037e-06, -9.946143897819100175e-06, -9.962632889140104648e-06, -9.979103874144346444e-06, -9.995556827982150634e-06, -1.001199172583903989e-05, -1.002840854292727265e-05, -1.004480725449659192e-05, -1.006118783582588882e-05, -1.007755026222628239e-05, -1.009389450904412144e-05, -1.011022055165362219e-05, -1.012652836546349879e-05, -1.014281792591636537e-05, -1.015908920848500226e-05, -1.017534218867459223e-05, -1.019157684202589510e-05, -1.020779314410680453e-05, -1.022399107052308676e-05, -1.024017059691004741e-05, -1.025633169893643300e-05, -1.027247435230357199e-05, -1.028859853274552899e-05, -1.030470421602839322e-05, -1.032079137795315505e-05, -1.033685999435144034e-05, -1.035291004108770424e-05, -1.036894149406224158e-05, -1.038495432920375496e-05, -1.040094852247622591e-05, -1.041692404987799332e-05, -1.043288088743825517e-05, -1.044881901121996371e-05, -1.046473839731916815e-05, -1.048063902186431503e-05, -1.049652086101917214e-05, -1.051238389097856122e-05, -1.052822808797048565e-05, -1.054405342825915102e-05, -1.055985988813768910e-05, -1.057564744393470875e-05, -1.059141607201371325e-05, -1.060716574876936480e-05, -1.062289645063051524e-05, -1.063860815405946407e-05, -1.065430083555208206e-05, -1.066997447163699308e-05, -1.068562903887857424e-05, -1.070126451387266994e-05, -1.071688087324950733e-05, -1.073247809367290012e-05, -1.074805615183977422e-05, -1.076361502448286641e-05, -1.077915468836662468e-05, -1.079467512028996788e-05, -1.081017629708570634e-05, -1.082565819562051308e-05, -1.084112079279420720e-05, -1.085656406554283032e-05, -1.087198799083412851e-05, -1.088739254567073881e-05, -1.090277770708923382e-05, -1.091814345215957951e-05, -1.093348975798805252e-05, -1.094881660171282531e-05, -1.096412396050715957e-05, -1.097941181157839987e-05, -1.099468013216812109e-05, -1.100992889955165577e-05, -1.102515809104056572e-05, -1.104036768397951480e-05, -1.105555765574534399e-05, -1.107072798375355282e-05, -1.108587864545136899e-05, -1.110100961832042330e-05, -1.111612087987897393e-05, -1.113121240767775600e-05, -1.114628417930278866e-05, -1.116133617237472113e-05, -1.117636836454809412e-05, -1.119138073351432137e-05, -1.120637325699802033e-05, -1.122134591275661062e-05, -1.123629867858639071e-05, -1.125123153231566502e-05, -1.126614445180763914e-05, -1.128103741496244082e-05, -1.129591039971304234e-05, -1.131076338402808119e-05, -1.132559634591109258e-05, -1.134040926340071786e-05, -1.135520211456989137e-05, -1.136997487752938607e-05, -1.138472753042024454e-05, -1.139946005142348250e-05, -1.141417241875250960e-05, -1.142886461065595006e-05, -1.144353660542039887e-05, -1.145818838136361000e-05, -1.147281991684066613e-05, -1.148743119024332141e-05, -1.150202217999671324e-05, -1.151659286456132062e-05, -1.153114322243571025e-05, -1.154567323214920119e-05, -1.156018287227136691e-05, -1.157467212140454579e-05, -1.158914095818659401e-05, -1.160358936129367226e-05, -1.161801730943351187e-05, -1.163242478135150661e-05, -1.164681175582997243e-05, -1.166117821168503376e-05, -1.167552412776849205e-05, -1.168984948297049902e-05, -1.170415425621318017e-05, -1.171843842645624726e-05, -1.173270197269677807e-05, -1.174694487396557920e-05, -1.176116710933024222e-05, -1.177536865789410349e-05, -1.178954949879587823e-05, -1.180370961121224908e-05, -1.181784897435400191e-05, -1.183196756746794351e-05, -1.184606536983956637e-05, -1.186014236078656548e-05, -1.187419851966483022e-05, -1.188823382586763633e-05, -1.190224825882255251e-05, -1.191624179799402561e-05, -1.193021442288276392e-05, -1.194416611302516803e-05, -1.195809684799583971e-05, -1.197200660740387699e-05, -1.198589537089531364e-05, -1.199976311815268543e-05, -1.201360982889493703e-05, -1.202743548287682055e-05, -1.204124005989157222e-05, -1.205502353976696349e-05, -1.206878590236799121e-05, -1.208252712759630503e-05, -1.209624719539011935e-05, -1.210994608572361863e-05, -1.212362377860962732e-05, -1.213728025409572868e-05, -1.215091549226691773e-05, -1.216452947324490500e-05, -1.217812217718761505e-05, -1.219169358429161916e-05, -1.220524367478847616e-05, -1.221877242894722270e-05, -1.223227982707381930e-05, -1.224576584951116218e-05, -1.225923047663842598e-05, -1.227267368887374550e-05, -1.228609546667032774e-05, -1.229949579051901511e-05, -1.231287464094783644e-05, -1.232623199852173255e-05, -1.233956784384232250e-05, -1.235288215755014991e-05, -1.236617492032106101e-05, -1.237944611286888131e-05, -1.239269571594443980e-05, -1.240592371033534026e-05, -1.241913007686836512e-05, -1.243231479640626522e-05, -1.244547784984737865e-05, -1.245861921813104666e-05, -1.247173888223157433e-05, -1.248483682316070560e-05, -1.249791302197009490e-05, -1.251096745974451227e-05, -1.252400011761058473e-05, -1.253701097673000814e-05, -1.255000001830267788e-05, -1.256296722356534032e-05, -1.257591257379497592e-05, -1.258883605030179930e-05, -1.260173763443798540e-05, -1.261461730759104910e-05, -1.262747505118604913e-05, -1.264031084668830372e-05, -1.265312467559730039e-05, -1.266591651945215935e-05, -1.267868635983094230e-05, -1.269143417834774201e-05, -1.270415995665459327e-05, -1.271686367644376322e-05, -1.272954531944132578e-05, -1.274220486741539653e-05, -1.275484230216977820e-05, -1.276745760554618336e-05, -1.278005075942680427e-05, -1.279262174572827186e-05, -1.280517054640706149e-05, -1.281769714345896271e-05, -1.283020151891614511e-05, -1.284268365484884907e-05, -1.285514353336795049e-05, -1.286758113661887914e-05, -1.287999644678718536e-05, -1.289238944609775231e-05, -1.290476011681198383e-05, -1.291710844123020151e-05, -1.292943440169100778e-05, -1.294173798057089113e-05, -1.295401916028633020e-05, -1.296627792329052416e-05, -1.297851425207505469e-05, -1.299072812917227957e-05, -1.300291953714960008e-05, -1.301508845861463969e-05, -1.302723487621458337e-05, -1.303935877263363146e-05, -1.305146013059493085e-05, -1.306353893286037005e-05, -1.307559516222979139e-05, -1.308762880154344240e-05, -1.309963983367847242e-05, -1.311162824155133144e-05, -1.312359400811716529e-05, -1.313553711636990206e-05, -1.314745754934155245e-05, -1.315935529010468647e-05, -1.317123032176898773e-05, -1.318308262748350993e-05, -1.319491219043609241e-05, -1.320671899385361427e-05, -1.321850302100116763e-05, -1.323026425518447681e-05, -1.324200267974650506e-05, -1.325371827806977886e-05, -1.326541103357576279e-05, -1.327708092972448514e-05, -1.328872795001652677e-05, -1.330035207799001579e-05, -1.331195329722261135e-05, -1.332353159133106996e-05, -1.333508694397134709e-05, -1.334661933883798059e-05, -1.335812875966622348e-05, -1.336961519022897599e-05, -1.338107861433892013e-05, -1.339251901584790131e-05, -1.340393637864705878e-05, -1.341533068666627680e-05, -1.342670192387632251e-05, -1.343805007428570853e-05, -1.344937512194283766e-05, -1.346067705093539638e-05, -1.347195584539008383e-05, -1.348321148947450404e-05, -1.349444396739458422e-05, -1.350565326339420374e-05, -1.351683936175991547e-05, -1.352800224681552311e-05, -1.353914190292444780e-05, -1.355025831449176094e-05, -1.356135146595838040e-05, -1.357242134180846338e-05, -1.358346792656370928e-05, -1.359449120478544676e-05, -1.360549116107618556e-05, -1.361646778007700758e-05, -1.362742104646729587e-05, -1.363835094496903245e-05, -1.364925746034202277e-05, -1.366014057738571509e-05, -1.367100028094143330e-05, -1.368183655588718121e-05, -1.369264938714237405e-05, -1.370343875966713040e-05, -1.371420465846009356e-05, -1.372494706855963270e-05, -1.373566597504603664e-05, -1.374636136303600984e-05, -1.375703321768971464e-05, -1.376768152420518592e-05, -1.377830626782049100e-05, -1.378890743381572024e-05, -1.379948500750788615e-05, -1.381003897425551601e-05, -1.382056931945827919e-05, -1.383107602855436304e-05, -1.384155908702202465e-05, -1.385201848038160000e-05, -1.386245419419016261e-05, -1.387286621404826249e-05, -1.388325452559476940e-05, -1.389361911450915313e-05, -1.390395996651106668e-05, -1.391427706736044285e-05, -1.392457040285688611e-05, -1.393483995884176469e-05, -1.394508572119533923e-05, -1.395530767583850250e-05, -1.396550580873257958e-05, -1.397568010587907876e-05, -1.398583055331955437e-05, -1.399595713713726017e-05, -1.400605984345441005e-05, -1.401613865843411941e-05, -1.402619356827995627e-05, -1.403622455923532631e-05, -1.404623161758571069e-05, -1.405621472965549821e-05, -1.406617388181002323e-05, -1.407610906045527094e-05, -1.408602025203768417e-05, -1.409590744304370098e-05, -1.410577062000188915e-05, -1.411560976947984265e-05, -1.412542487808634668e-05, -1.413521593247075760e-05, -1.414498291932299618e-05, -1.415472582537322575e-05, -1.416444463739375798e-05, -1.417413934219605609e-05, -1.418380992663279656e-05, -1.419345637759743201e-05, -1.420307868202362542e-05, -1.421267682688716441e-05, -1.422225079920331852e-05, -1.423180058602850611e-05, -1.424132617445998611e-05, -1.425082755163584443e-05, -1.426030470473456369e-05, -1.426975762097679855e-05, -1.427918628762272457e-05, -1.428859069197386267e-05, -1.429797082137263359e-05, -1.430732666320199031e-05, -1.431665820488706465e-05, -1.432596543389263805e-05, -1.433524833772490169e-05, -1.434450690393108212e-05, -1.435374112009924132e-05, -1.436295097385822086e-05, -1.437213645287911230e-05, -1.438129754487313961e-05, -1.439043423759134748e-05, -1.439954651882841296e-05, -1.440863437641843064e-05, -1.441769779823651859e-05, -1.442673677220072252e-05, -1.443575128626713686e-05, -1.444474132843609316e-05, -1.445370688674737273e-05, -1.446264794928183963e-05, -1.447156450416294675e-05, -1.448045653955441662e-05, -1.448932404366003644e-05, -1.449816700472719865e-05, -1.450698541104308422e-05, -1.451577925093597216e-05, -1.452454851277724529e-05, -1.453329318497648255e-05, -1.454201325598764060e-05, -1.455070871430434268e-05, -1.455937954846182335e-05, -1.456802574703638474e-05, -1.457664729864741075e-05, -1.458524419195260505e-05, -1.459381641565408294e-05, -1.460236395849370593e-05, -1.461088680925471303e-05, -1.461938495676348099e-05, -1.462785838988533143e-05, -1.463630709752837298e-05, -1.464473106864286602e-05, -1.465313029221952863e-05, -1.466150475729042424e-05, -1.466985445293081667e-05, -1.467817936825465541e-05, -1.468647949242031856e-05, -1.469475481462615396e-05, -1.470300532411230378e-05, -1.471123101016076040e-05, -1.471943186209486664e-05, -1.472760786927939201e-05, -1.473575902112176090e-05, -1.474388530706991637e-05, -1.475198671661389396e-05, -1.476006323928527275e-05, -1.476811486465743122e-05, -1.477614158234498989e-05, -1.478414338200544438e-05, -1.479212025333678358e-05, -1.480007218607919555e-05, -1.480799917001456271e-05, -1.481590119496616536e-05, -1.482377825080018773e-05, -1.483163032742339367e-05, -1.483945741478474455e-05, -1.484725950287500957e-05, -1.485503658172676920e-05, -1.486278864141397127e-05, -1.487051567205364203e-05, -1.487821766380348733e-05, -1.488589460686342746e-05, -1.489354649147524984e-05, -1.490117330792259209e-05, -1.490877504653062865e-05, -1.491635169766761404e-05, -1.492390325174245529e-05, -1.493142969920655168e-05, -1.493893103055309508e-05, -1.494640723631682605e-05, -1.495385830707568212e-05, -1.496128423344838377e-05, -1.496868500609594889e-05, -1.497606061572141841e-05, -1.498341105306989689e-05, -1.499073630892810024e-05, -1.499803637412579227e-05, -1.500531123953375521e-05, -1.501256089606512125e-05, -1.501978533467509301e-05, -1.502698454636058947e-05, -1.503415852216158094e-05, -1.504130725315958973e-05, -1.504843073047698043e-05, -1.505552894528046147e-05, -1.506260188877733957e-05, -1.506964955221715793e-05, -1.507667192689254489e-05, -1.508366900413752163e-05, -1.509064077532742417e-05, -1.509758723188166986e-05, -1.510450836526041661e-05, -1.511140416696611301e-05, -1.511827462854476376e-05, -1.512511974158203506e-05, -1.513193949770831133e-05, -1.513873388859484297e-05, -1.514550290595506261e-05, -1.515224654154558632e-05, -1.515896478716471943e-05, -1.516565763465186191e-05, -1.517232507589082539e-05, -1.517896710280625525e-05, -1.518558370736508243e-05, -1.519217488157791601e-05, -1.519874061749526367e-05, -1.520528090721229548e-05, -1.521179574286511858e-05, -1.521828511663252890e-05, -1.522474902073527420e-05, -1.523118744743778036e-05, -1.523760038904453959e-05, -1.524398783790465395e-05, -1.525034978640828289e-05, -1.525668622698791039e-05, -1.526299715211968498e-05, -1.526928255432035008e-05, -1.527554242614981224e-05, -1.528177676021103776e-05, -1.528798554914858566e-05, -1.529416878564928187e-05, -1.530032646244365249e-05, -1.530645857230246781e-05, -1.531256510804109952e-05, -1.531864606251617317e-05, -1.532470142862666599e-05, -1.533073119931535356e-05, -1.533673536756548610e-05, -1.534271392640380050e-05, -1.534866686890014084e-05, -1.535459418816578130e-05, -1.536049587735486606e-05, -1.536637192966404681e-05, -1.537222233833252004e-05, -1.537804709664157297e-05, -1.538384619791592189e-05, -1.538961963552197407e-05, -1.539536740286890856e-05, -1.540108949340842205e-05, -1.540678590063449175e-05, -1.541245661808445278e-05, -1.541810163933742610e-05, -1.542372095801527733e-05, -1.542931456778243719e-05, -1.543488246234592522e-05, -1.544042463545506857e-05, -1.544594108090254552e-05, -1.545143179252284052e-05, -1.545689676419325384e-05, -1.546233598983374233e-05, -1.546774946340655687e-05, -1.547313717891730630e-05, -1.547849913041353433e-05, -1.548383531198544466e-05, -1.548914571776605680e-05, -1.549443034193096554e-05, -1.549968917869804275e-05, -1.550492222232876220e-05, -1.551012946712621406e-05, -1.551531090743652795e-05, -1.552046653764854766e-05, -1.552559635219356689e-05, -1.553070034554539361e-05, -1.553577851222135973e-05, -1.554083084678051864e-05, -1.554585734382488859e-05, -1.555085799799924609e-05, -1.555583280399068876e-05, -1.556078175652985854e-05, -1.556570485038939663e-05, -1.557060208038410273e-05, -1.557547344137282568e-05, -1.558031892825616625e-05, -1.558513853597731403e-05, -1.558993225952309095e-05, -1.559470009392211159e-05, -1.559944203424612141e-05, -1.560415807560932257e-05, -1.560884821316891599e-05, -1.561351244212436616e-05, -1.561815075771894273e-05, -1.562276315523693546e-05, -1.562734963000695086e-05, -1.563191017739953376e-05, -1.563644479282777711e-05, -1.564095347174844014e-05, -1.564543620966034912e-05, -1.564989300210443800e-05, -1.565432384466577793e-05, -1.565872873297132417e-05, -1.566310766269069529e-05, -1.566746062953722359e-05, -1.567178762926536986e-05, -1.567608865767401331e-05, -1.568036371060379188e-05, -1.568461278393815255e-05, -1.568883587360395105e-05, -1.569303297557041169e-05, -1.569720408584881905e-05, -1.570134920049450343e-05, -1.570546831560481134e-05, -1.570956142731978994e-05, -1.571362853182313565e-05, -1.571766962534000889e-05, -1.572168470413893136e-05, -1.572567376453178271e-05, -1.572963680287246216e-05, -1.573357381555795246e-05, -1.573748479902790985e-05, -1.574136974976462006e-05, -1.574522866429381820e-05, -1.574906153918336404e-05, -1.575286837104381799e-05, -1.575664915652951170e-05, -1.576040389233617642e-05, -1.576413257520310800e-05, -1.576783520191264850e-05, -1.577151176928944421e-05, -1.577516227420098092e-05, -1.577878671355772630e-05, -1.578238508431254369e-05, -1.578595738346182039e-05, -1.578950360804413607e-05, -1.579302375514094386e-05, -1.579651782187659401e-05, -1.579998580541823225e-05, -1.580342770297554232e-05, -1.580684351180159977e-05, -1.581023322919169625e-05, -1.581359685248407139e-05, -1.581693437905987211e-05, -1.582024580634287819e-05, -1.582353113179962425e-05, -1.582679035293982326e-05, -1.583002346731557711e-05, -1.583323047252182723e-05, -1.583641136619642572e-05, -1.583956614601975593e-05, -1.584269480971556588e-05, -1.584579735504980280e-05, -1.584887377983135507e-05, -1.585192408191199467e-05, -1.585494825918621115e-05, -1.585794630959101850e-05, -1.586091823110693432e-05, -1.586386402175659068e-05, -1.586678367960552358e-05, -1.586967720276215936e-05, -1.587254458937763178e-05, -1.587538583764570407e-05, -1.587820094580337201e-05, -1.588098991212988478e-05, -1.588375273494754795e-05, -1.588648941262132703e-05, -1.588919994355875265e-05, -1.589188432621069304e-05, -1.589454255907038160e-05, -1.589717464067337630e-05, -1.589978056959887764e-05, -1.590236034446826832e-05, -1.590491396394566221e-05, -1.590744142673839216e-05, -1.590994273159599358e-05, -1.591241787731099730e-05, -1.591486686271861782e-05, -1.591728968669681431e-05, -1.591968634816614154e-05, -1.592205684609043764e-05, -1.592440117947528257e-05, -1.592671934736999701e-05, -1.592901134886595858e-05, -1.593127718309741151e-05, -1.593351684924158187e-05, -1.593573034651821679e-05, -1.593791767418933713e-05, -1.594007883156052155e-05, -1.594221381797943950e-05, -1.594432263283647797e-05, -1.594640527556522602e-05, -1.594846174564117037e-05, -1.595049204258314549e-05, -1.595249616595240184e-05, -1.595447411535274148e-05, -1.595642589043105329e-05, -1.595835149087658462e-05, -1.596025091642093105e-05, -1.596212416683905964e-05, -1.596397124194818407e-05, -1.596579214160799502e-05, -1.596758686572151740e-05, -1.596935541423357885e-05, -1.597109778713201600e-05, -1.597281398444754224e-05, -1.597450400625317183e-05, -1.597616785266457219e-05, -1.597780552384014526e-05, -1.597941701998077338e-05, -1.598100234133018857e-05, -1.598256148817446776e-05, -1.598409446084238169e-05, -1.598560125970544579e-05, -1.598708188517743565e-05, -1.598853633771486139e-05, -1.598996461781697099e-05, -1.599136672602542508e-05, -1.599274266292449343e-05, -1.599409242914092623e-05, -1.599541602534405906e-05, -1.599671345224595525e-05, -1.599798471060104673e-05, -1.599922980120624581e-05, -1.600044872490118914e-05, -1.600164148256782437e-05, -1.600280807513076249e-05, -1.600394850355722027e-05, -1.600506276885667125e-05, -1.600615087208122860e-05, -1.600721281432547233e-05, -1.600824859672656114e-05, -1.600925822046391723e-05, -1.601024168675975833e-05, -1.601119899687849458e-05, -1.601213015212711813e-05, -1.601303515385506766e-05, -1.601391400345410980e-05, -1.601476670235864739e-05, -1.601559325204546884e-05, -1.601639365403368368e-05, -1.601716790988490897e-05, -1.601791602120317438e-05, -1.601863798963473588e-05, -1.601933381686860766e-05, -1.602000350463590823e-05, -1.602064705471026697e-05, -1.602126446890756329e-05, -1.602185574908619763e-05, -1.602242089714673236e-05, -1.602295991503236948e-05, -1.602347280472845258e-05, -1.602395956826264977e-05, -1.602442020770503844e-05, -1.602485472516798322e-05, -1.602526312280626140e-05, -1.602564540281680201e-05, -1.602600156743882472e-05, -1.602633161895401269e-05, -1.602663555968612965e-05, -1.602691339200134520e-05, -1.602716511830808911e-05, -1.602739074105701065e-05, -1.602759026274098539e-05, -1.602776368589512533e-05, -1.602791101309675523e-05, -1.602803224696551081e-05, -1.602812739016319313e-05, -1.602819644539372785e-05, -1.602823941540338214e-05, -1.602825630298047326e-05, -1.602824711095552444e-05, -1.602821184220130552e-05, -1.602815049963267371e-05, -1.602806308620657359e-05, -1.602794960492216587e-05, -1.602781005882080706e-05, -1.602764445098581566e-05, -1.602745278454279407e-05, -1.602723506265922538e-05, -1.602699128854484609e-05, -1.602672146545142923e-05, -1.602642559667279455e-05, -1.602610368554490338e-05, -1.602575573544565198e-05, -1.602538174979503411e-05, -1.602498173205508690e-05, -1.602455568572986027e-05, -1.602410361436531875e-05, -1.602362552154960233e-05, -1.602312141091263005e-05, -1.602259128612654044e-05, -1.602203515090522740e-05, -1.602145300900465185e-05, -1.602084486422269269e-05, -1.602021072039914339e-05, -1.601955058141572556e-05, -1.601886445119606183e-05, -1.601815233370577072e-05, -1.601741423295229385e-05, -1.601665015298487223e-05, -1.601586009789475630e-05, -1.601504407181493492e-05, -1.601420207892037588e-05, -1.601333412342768374e-05, -1.601244020959557751e-05, -1.601152034172426052e-05, -1.601057452415599974e-05, -1.600960276127465822e-05, -1.600860505750597635e-05, -1.600758141731752776e-05, -1.600653184521842119e-05, -1.600545634575965625e-05, -1.600435492353410985e-05, -1.600322758317600767e-05, -1.600207432936158144e-05, -1.600089516680863866e-05, -1.599969010027668117e-05, -1.599845913456688485e-05, -1.599720227452205214e-05, -1.599591952502669342e-05, -1.599461089100689818e-05, -1.599327637743042319e-05, -1.599191598930648577e-05, -1.599052973168618393e-05, -1.598911760966183573e-05, -1.598767962836756873e-05, -1.598621579297901851e-05, -1.598472610871335577e-05, -1.598321058082924226e-05, -1.598166921462690872e-05, -1.598010201544804306e-05, -1.597850898867581411e-05, -1.597689013973495629e-05, -1.597524547409150873e-05, -1.597357499725319136e-05, -1.597187871476883910e-05, -1.597015663222904556e-05, -1.596840875526553633e-05, -1.596663508955162625e-05, -1.596483564080190105e-05, -1.596301041477235616e-05, -1.596115941726030871e-05, -1.595928265410443472e-05, -1.595738013118477931e-05, -1.595545185442263133e-05, -1.595349782978054031e-05, -1.595151806326248922e-05, -1.594951256091351504e-05, -1.594748132882006789e-05, -1.594542437310986530e-05, -1.594334169995166190e-05, -1.594123331555570675e-05, -1.593909922617311653e-05, -1.593693943809631607e-05, -1.593475395765915346e-05, -1.593254279123613778e-05, -1.593030594524336065e-05, -1.592804342613782876e-05, -1.592575524041760958e-05, -1.592344139462188555e-05, -1.592110189533104897e-05, -1.591873674916644108e-05, -1.591634596279045035e-05, -1.591392954290658701e-05, -1.591148749625909679e-05, -1.590901982963376392e-05, -1.590652654985668800e-05, -1.590400766379544616e-05, -1.590146317835842556e-05, -1.589889310049467773e-05, -1.589629743719461310e-05, -1.589367619548945896e-05, -1.589102938245093413e-05, -1.588835700519204184e-05, -1.588565907086661230e-05, -1.588293558666896727e-05, -1.588018655983476374e-05, -1.587741199764006894e-05, -1.587461190740184822e-05, -1.587178629647797865e-05, -1.586893517226689322e-05, -1.586605854220793322e-05, -1.586315641378114159e-05, -1.586022879450702232e-05, -1.585727569194718084e-05, -1.585429711370361586e-05, -1.585129306741890238e-05, -1.584826356077667956e-05, -1.584520860150092565e-05, -1.584212819735603592e-05, -1.583902235614731733e-05, -1.583589108572058536e-05, -1.583273439396204539e-05, -1.582955228879883144e-05, -1.582634477819801005e-05, -1.582311187016763061e-05, -1.581985357275611547e-05, -1.581656989405206686e-05, -1.581326084218504611e-05, -1.580992642532480798e-05, -1.580656665168128367e-05, -1.580318152950508233e-05, -1.579977106708723347e-05, -1.579633527275899055e-05, -1.579287415489192577e-05, -1.578938772189816727e-05, -1.578587598222976556e-05, -1.578233894437928303e-05, -1.577877661687972620e-05, -1.577518900830404428e-05, -1.577157612726576275e-05, -1.576793798241809565e-05, -1.576427458245494172e-05, -1.576058593611023726e-05, -1.575687205215798659e-05, -1.575313293941246539e-05, -1.574936860672815291e-05, -1.574557906299919662e-05, -1.574176431716023221e-05, -1.573792437818593966e-05, -1.573405925509090437e-05, -1.573016895692994923e-05, -1.572625349279742980e-05, -1.572231287182827795e-05, -1.571834710319703279e-05, -1.571435619611836245e-05, -1.571034015984675242e-05, -1.570629900367680702e-05, -1.570223273694255152e-05, -1.569814136901815374e-05, -1.569402490931822567e-05, -1.568988336729616658e-05, -1.568571675244586735e-05, -1.568152507430092775e-05, -1.567730834243434812e-05, -1.567306656645934933e-05, -1.566879975602866124e-05, -1.566450792083473281e-05, -1.566019107061001662e-05, -1.565584921512601013e-05, -1.565148236419418057e-05, -1.564709052766621568e-05, -1.564267371543228560e-05, -1.563823193742301478e-05, -1.563376520360841129e-05, -1.562927352399772456e-05, -1.562475690864000778e-05, -1.562021536762385026e-05, -1.561564891107723512e-05, -1.561105754916763754e-05, -1.560644129210214673e-05, -1.560180015012658841e-05, -1.559713413352747301e-05, -1.559244325262934948e-05, -1.558772751779697376e-05, -1.558298693943430924e-05, -1.557822152798398466e-05, -1.557343129392906275e-05, -1.556861624779124108e-05, -1.556377640013117058e-05, -1.555891176154933307e-05, -1.555402234268529244e-05, -1.554910815421718312e-05, -1.554416920686357685e-05, -1.553920551138082644e-05, -1.553421707856529515e-05, -1.552920391925231315e-05, -1.552416604431558798e-05, -1.551910346466910188e-05, -1.551401619126518061e-05, -1.550890423509490335e-05, -1.550376760718874989e-05, -1.549860631861640746e-05, -1.549342038048555104e-05, -1.548820980394396431e-05, -1.548297460017793707e-05, -1.547771478041202128e-05, -1.547243035591033212e-05, -1.546712133797560610e-05, -1.546178773794936703e-05, -1.545642956721220732e-05, -1.545104683718276803e-05, -1.544563955931916202e-05, -1.544020774511820136e-05, -1.543475140611453000e-05, -1.542927055388269053e-05, -1.542376520003537252e-05, -1.541823535622340236e-05, -1.541268103413673935e-05, -1.540710224550395055e-05, -1.540149900209203461e-05, -1.539587131570668263e-05, -1.539021919819152603e-05, -1.538454266142938334e-05, -1.537884171734126075e-05, -1.537311637788659599e-05, -1.536736665506327197e-05, -1.536159256090781320e-05, -1.535579410749440669e-05, -1.534997130693631815e-05, -1.534412417138481796e-05, -1.533825271302958777e-05, -1.533235694409847990e-05, -1.532643687685787313e-05, -1.532049252361174433e-05, -1.531452389670290515e-05, -1.530853100851211092e-05, -1.530251387145832492e-05, -1.529647249799878956e-05, -1.529040690062822338e-05, -1.528431709188009496e-05, -1.527820308432568784e-05, -1.527206489057440542e-05, -1.526590252327355413e-05, -1.525971599510874663e-05, -1.525350531880270747e-05, -1.524727050711698410e-05, -1.524101157285067467e-05, -1.523472852884072441e-05, -1.522842138796214085e-05, -1.522209016312779220e-05, -1.521573486728770260e-05, -1.520935551343049889e-05, -1.520295211458211291e-05, -1.519652468380644902e-05, -1.519007323420514688e-05, -1.518359777891700716e-05, -1.517709833111877425e-05, -1.517057490402569017e-05, -1.516402751088907040e-05, -1.515745616499885677e-05, -1.515086087968245205e-05, -1.514424166830384909e-05, -1.513759854426625838e-05, -1.513093152100868944e-05, -1.512424061200848167e-05, -1.511752583078029310e-05, -1.511078719087630358e-05, -1.510402470588510356e-05, -1.509723838943445366e-05, -1.509042825518751031e-05, -1.508359431684593436e-05, -1.507673658814850706e-05, -1.506985508287022537e-05, -1.506294981482497863e-05, -1.505602079786293121e-05, -1.504906804587092570e-05, -1.504209157277367891e-05, -1.503509139253317035e-05, -1.502806751914721747e-05, -1.502101996665269442e-05, -1.501394874912146798e-05, -1.500685388066362304e-05, -1.499973537542616836e-05, -1.499259324759197269e-05, -1.498542751138241089e-05, -1.497823818105507527e-05, -1.497102527090363325e-05, -1.496378879525962651e-05, -1.495652876849136639e-05, -1.494924520500270238e-05, -1.494193811923600025e-05, -1.493460752566957213e-05, -1.492725343881776465e-05, -1.491987587323254285e-05, -1.491247484350212310e-05, -1.490505036425134238e-05, -1.489760245014201406e-05, -1.489013111587160650e-05, -1.488263637617488632e-05, -1.487511824582322550e-05, -1.486757673962333935e-05, -1.486001187242003083e-05, -1.485242365909369184e-05, -1.484481211456056921e-05, -1.483717725377406569e-05, -1.482951909172368289e-05, -1.482183764343514664e-05, -1.481413292397091349e-05, -1.480640494842866641e-05, -1.479865373194322736e-05, -1.479087928968533083e-05, -1.478308163686187111e-05, -1.477526078871582275e-05, -1.476741676052669110e-05, -1.475954956760898430e-05, -1.475165922531428177e-05, -1.474374574902990769e-05, -1.473580915417905639e-05, -1.472784945622092958e-05, -1.471986667065103619e-05, -1.471186081299976596e-05, -1.470383189883432579e-05, -1.469577994375749114e-05, -1.468770496340787718e-05, -1.467960697346013521e-05, -1.467148598962374992e-05, -1.466334202764486731e-05, -1.465517510330500883e-05, -1.464698523242137466e-05, -1.463877243084685557e-05, -1.463053671447018706e-05, -1.462227809921472796e-05, -1.461399660104035945e-05, -1.460569223594219422e-05, -1.459736501995078310e-05, -1.458901496913215745e-05, -1.458064209958811545e-05, -1.457224642745484819e-05, -1.456382796890490142e-05, -1.455538674014581353e-05, -1.454692275742044754e-05, -1.453843603700732490e-05, -1.452992659521908382e-05, -1.452139444840431061e-05, -1.451283961294790388e-05, -1.450426210526770673e-05, -1.449566194181812698e-05, -1.448703913908865486e-05, -1.447839371360249761e-05, -1.446972568192023355e-05, -1.446103506063507887e-05, -1.445232186637662813e-05, -1.444358611580938382e-05, -1.443482782563170434e-05, -1.442604701257744554e-05, -1.441724369341652316e-05, -1.440841788495143659e-05, -1.439956960402095688e-05, -1.439069886749851229e-05, -1.438180569229093294e-05, -1.437289009534183394e-05, -1.436395209362834577e-05, -1.435499170416164286e-05, -1.434600894398847505e-05, -1.433700383019015957e-05, -1.432797637988113772e-05, -1.431892661021286785e-05, -1.430985453836875498e-05, -1.430076018156807432e-05, -1.429164355706452784e-05, -1.428250468214466379e-05, -1.427334357413164425e-05, -1.426416025038180281e-05, -1.425495472828496136e-05, -1.424572702526645955e-05, -1.423647715878568439e-05, -1.422720514633474377e-05, -1.421791100544259490e-05, -1.420859475366960297e-05, -1.419925640861171194e-05, -1.418989598789859462e-05, -1.418051350919391527e-05, -1.417110899019536851e-05, -1.416168244863489624e-05, -1.415223390227724929e-05, -1.414276336892224908e-05, -1.413327086640318837e-05, -1.412375641258709722e-05, -1.411422002537492094e-05, -1.410466172270163348e-05, -1.409508152253484841e-05, -1.408547944287702452e-05, -1.407585550176383274e-05, -1.406620971726460006e-05, -1.405654210748269906e-05, -1.404685269055377769e-05, -1.403714148464824444e-05, -1.402740850796960644e-05, -1.401765377875484897e-05, -1.400787731527428467e-05, -1.399807913583217015e-05, -1.398825925876481716e-05, -1.397841770244298629e-05, -1.396855448527055708e-05, -1.395866962568446711e-05, -1.394876314215499484e-05, -1.393883505318589859e-05, -1.392888537731294941e-05, -1.391891413310629773e-05, -1.390892133916871154e-05, -1.389890701413593043e-05, -1.388887117667740249e-05, -1.387881384549402618e-05, -1.386873503932106237e-05, -1.385863477692618110e-05, -1.384851307711000539e-05, -1.383836995870598588e-05, -1.382820544058076840e-05, -1.381801954163264397e-05, -1.380781228079373746e-05, -1.379758367702857446e-05, -1.378733374933434385e-05, -1.377706251674131621e-05, -1.376676999831104306e-05, -1.375645621313890473e-05, -1.374612118035256534e-05, -1.373576491911194913e-05, -1.372538744860968258e-05, -1.371498878807108085e-05, -1.370456895675264858e-05, -1.369412797394409915e-05, -1.368366585896878672e-05, -1.367318263117972854e-05, -1.366267830996396209e-05, -1.365215291474081544e-05, -1.364160646495988962e-05, -1.363103898010619333e-05, -1.362045047969363603e-05, -1.360984098327007796e-05, -1.359921051041529048e-05, -1.358855908073993793e-05, -1.357788671388737165e-05, -1.356719342953427035e-05, -1.355647924738656247e-05, -1.354574418718384602e-05, -1.353498826869752508e-05, -1.352421151172894806e-05, -1.351341393611446784e-05, -1.350259556171906194e-05, -1.349175640844103353e-05, -1.348089649621005312e-05, -1.347001584498775146e-05, -1.345911447476557825e-05, -1.344819240556969289e-05, -1.343724965745458468e-05, -1.342628625050807195e-05, -1.341530220484943859e-05, -1.340429754062736226e-05, -1.339327227802491185e-05, -1.338222643725484303e-05, -1.337116003856047415e-05, -1.336007310221765638e-05, -1.334896564853358450e-05, -1.333783769784460309e-05, -1.332668927052162074e-05, -1.331552038696331689e-05, -1.330433106760133407e-05, -1.329312133289785548e-05, -1.328189120334611652e-05, -1.327064069947026420e-05, -1.325936984182590437e-05, -1.324807865099809079e-05, -1.323676714760412549e-05, -1.322543535229163255e-05, -1.321408328573913246e-05, -1.320271096865575068e-05, -1.319131842178189360e-05, -1.317990566588715469e-05, -1.316847272177318760e-05, -1.315701961027179018e-05, -1.314554635224533989e-05, -1.313405296858711054e-05, -1.312253948021953590e-05, -1.311100590809685924e-05, -1.309945227320329181e-05, -1.308787859655337716e-05, -1.307628489919204187e-05, -1.306467120219495477e-05, -1.305303752666657191e-05, -1.304138389374303689e-05, -1.302971032459023090e-05, -1.301801684040411330e-05, -1.300630346241083846e-05, -1.299457021186700313e-05, -1.298281711005785409e-05, -1.297104417830002240e-05, -1.295925143793967853e-05, -1.294743891035286950e-05, -1.293560661694598814e-05, -1.292375457915389776e-05, -1.291188281844260195e-05, -1.289999135630743541e-05, -1.288808021427349076e-05, -1.287614941389548307e-05, -1.286419897675830720e-05, -1.285222892447498119e-05, -1.284023927868952280e-05, -1.282823006107514362e-05, -1.281620129333433209e-05, -1.280415299719973441e-05, -1.279208519443176590e-05, -1.277999790682127241e-05, -1.276789115618995717e-05, -1.275576496438576959e-05, -1.274361935328802641e-05, -1.273145434480516196e-05, -1.271926996087333396e-05, -1.270706622345879523e-05, -1.269484315455855601e-05, -1.268260077619550005e-05, -1.267033911042365310e-05, -1.265805817932600943e-05, -1.264575800501248202e-05, -1.263343860962548111e-05, -1.262110001533263652e-05, -1.260874224433254387e-05, -1.259636531885256914e-05, -1.258396926114725277e-05, -1.257155409350084747e-05, -1.255911983822801950e-05, -1.254666651766874105e-05, -1.253419415419376891e-05, -1.252170277020236930e-05, -1.250919238812026125e-05, -1.249666303040529856e-05, -1.248411471954010396e-05, -1.247154747803780859e-05, -1.245896132843930936e-05, -1.244635629331443781e-05, -1.243373239525915306e-05, -1.242108965690131180e-05, -1.240842810089334653e-05, -1.239574774991785767e-05, -1.238304862668564846e-05, -1.237033075393345829e-05, -1.235759415442925325e-05, -1.234483885096737606e-05, -1.233206486636906102e-05, -1.231927222348509882e-05, -1.230646094519409498e-05, -1.229363105440036930e-05, -1.228078257403986805e-05, -1.226791552707242554e-05, -1.225502993648777128e-05, -1.224212582530338014e-05, -1.222920321656206011e-05, -1.221626213333755110e-05, -1.220330259872956135e-05, -1.219032463586412659e-05, -1.217732826789645098e-05, -1.216431351800857098e-05, -1.215128040940992964e-05, -1.213822896533736648e-05, -1.212515920905552906e-05, -1.211207116385467588e-05, -1.209896485305394752e-05, -1.208584029999913565e-05, -1.207269752806322844e-05, -1.205953656064670030e-05, -1.204635742117560264e-05, -1.203316013310460979e-05, -1.201994471991476256e-05, -1.200671120511407295e-05, -1.199345961223753435e-05, -1.198018996484740278e-05, -1.196690228653123680e-05, -1.195359660090488249e-05, -1.194027293161049477e-05, -1.192693130231678645e-05, -1.191357173671977527e-05, -1.190019425854036481e-05, -1.188679889152779021e-05, -1.187338565945707197e-05, -1.185995458612991216e-05, -1.184650569537425389e-05, -1.183303901104517755e-05, -1.181955455702230544e-05, -1.180605235721329327e-05, -1.179253243555161431e-05, -1.177899481599684061e-05, -1.176543952253476159e-05, -1.175186657917789903e-05, -1.173827600996318618e-05, -1.172466783895528478e-05, -1.171104209024432854e-05, -1.169739878794646017e-05, -1.168373795620431926e-05, -1.167005961918464686e-05, -1.165636380108127555e-05, -1.164265052611556137e-05, -1.162891981853108654e-05, -1.161517170259958861e-05, -1.160140620261841097e-05, -1.158762334290879181e-05, -1.157382314781935217e-05, -1.156000564172368027e-05, -1.154617084902083628e-05, -1.153231879413539471e-05, -1.151844950151790179e-05, -1.150456299564197522e-05, -1.149065930101072303e-05, -1.147673844214834603e-05, -1.146280044360666849e-05, -1.144884532996284943e-05, -1.143487312581728538e-05, -1.142088385579676978e-05, -1.140687754455497585e-05, -1.139285421676699654e-05, -1.137881389713535345e-05, -1.136475661038750482e-05, -1.135068238127341964e-05, -1.133659123457217942e-05, -1.132248319508340960e-05, -1.130835828763404058e-05, -1.129421653707552438e-05, -1.128005796828253356e-05, -1.126588260615530074e-05, -1.125169047562065371e-05, -1.123748160162627080e-05, -1.122325600914683545e-05, -1.120901372318148663e-05, -1.119475476875138279e-05, -1.118047917090566327e-05, -1.116618695471610519e-05, -1.115187814527751312e-05, -1.113755276771071927e-05, -1.112321084716030325e-05, -1.110885240879491904e-05, -1.109447747780801498e-05, -1.108008607941518084e-05, -1.106567823885810180e-05, -1.105125398140228327e-05, -1.103681333233478429e-05, -1.102235631697029070e-05, -1.100788296064553155e-05, -1.099339328871968564e-05, -1.097888732657773239e-05, -1.096436509962771762e-05, -1.094982663330135327e-05, -1.093527195305467804e-05, -1.092070108436540622e-05, -1.090611405273670374e-05, -1.089151088369463183e-05, -1.087689160278873995e-05, -1.086225623559196922e-05, -1.084760480770137069e-05, -1.083293734473534066e-05, -1.081825387233746618e-05, -1.080355441617402802e-05, -1.078883900193446651e-05, -1.077410765533139680e-05, -1.075936040210115944e-05, -1.074459726800132333e-05, -1.072981827881433809e-05, -1.071502346034502689e-05, -1.070021283842115054e-05, -1.068538643889401230e-05, -1.067054428763581848e-05, -1.065568641054355114e-05, -1.064081283353623719e-05, -1.062592358255573618e-05, -1.061101868356648106e-05, -1.059609816255619653e-05, -1.058116204553326301e-05, -1.056621035853059101e-05, -1.055124312760282587e-05, -1.053626037882711187e-05, -1.052126213830307013e-05, -1.050624843215325433e-05, -1.049121928652053341e-05, -1.047617472757210646e-05, -1.046111478149667538e-05, -1.044603947450513939e-05, -1.043094883283112530e-05, -1.041584288272854298e-05, -1.040072165047451440e-05, -1.038558516237011898e-05, -1.037043344473451864e-05, -1.035526652391140871e-05, -1.034008442626628720e-05, -1.032488717818452856e-05, -1.030967480607523096e-05, -1.029444733636866499e-05, -1.027920479551661250e-05, -1.026394720999259867e-05, -1.024867460629236805e-05, -1.023338701093055403e-05, -1.021808445044794975e-05, -1.020276695140209251e-05, -1.018743454037473458e-05, -1.017208724396877189e-05, -1.015672508880659903e-05, -1.014134810153312984e-05, -1.012595630881650717e-05, -1.011054973734203817e-05, -1.009512841381889426e-05, -1.007969236497718048e-05, -1.006424161756563824e-05, -1.004877619835841319e-05, -1.003329613414600041e-05, -1.001780145174258479e-05, -1.000229217798306965e-05, -9.986768339721211564e-06, -9.971229963832828929e-06, -9.955677077216567683e-06, -9.940109706787641724e-06, -9.924527879484592240e-06, -9.908931622266556872e-06, -9.893320962110447399e-06, -9.877695926017807318e-06, -9.862056541008526863e-06, -9.846402834121557892e-06, -9.830734832418237655e-06, -9.815052562979539316e-06, -9.799356052906646247e-06, -9.783645329321631346e-06, -9.767920419364778720e-06, -9.752181350198451236e-06, -9.736428149005016985e-06, -9.720660842984359007e-06, -9.704879459360175517e-06, -9.689084025374233641e-06, -9.673274568286692975e-06, -9.657451115379697010e-06, -9.641613693954430536e-06, -9.625762331331843012e-06, -9.609897054853283838e-06, -9.594017891877656322e-06, -9.578124869785552902e-06, -9.562218015976480258e-06, -9.546297357869313328e-06, -9.530362922902554495e-06, -9.514414738534713063e-06, -9.498452832241609993e-06, -9.482477231520497875e-06, -9.466487963887177626e-06, -9.450485056876699834e-06, -9.434468538043258031e-06, -9.418438434960949330e-06, -9.402394775220772539e-06, -9.386337586434932782e-06, -9.370266896233927709e-06, -9.354182732267165825e-06, -9.338085122203667836e-06, -9.321974093729190128e-06, -9.305849674550412492e-06, -9.289711892392088708e-06, -9.273560774997658104e-06, -9.257396350129237084e-06, -9.241218645568225604e-06, -9.225027689112522128e-06, -9.208823508580682560e-06, -9.192606131808930215e-06, -9.176375586651990999e-06, -9.160131900982976513e-06, -9.143875102694004083e-06, -9.127605219693360895e-06, -9.111322279909720524e-06, -9.095026311289169848e-06, -9.078717341796005259e-06, -9.062395399413315423e-06, -9.046060512140042072e-06, -9.029712707994654440e-06, -9.013352015015591406e-06, -8.996978461255039194e-06, -8.980592074785787260e-06, -8.964192883698458489e-06, -8.947780916099354348e-06, -8.931356200114556215e-06, -8.914918763887150503e-06, -8.898468635577789395e-06, -8.882005843365448089e-06, -8.865530415444472043e-06, -8.849042380028109104e-06, -8.832541765349144778e-06, -8.816028599653469869e-06, -8.799502911207202324e-06, -8.782964728293695517e-06, -8.766414079211420668e-06, -8.749850992277434592e-06, -8.733275495828111539e-06, -8.716687618212582073e-06, -8.700087387799910834e-06, -8.683474832976138694e-06, -8.666849982141363885e-06, -8.650212863717727824e-06, -8.633563506138994915e-06, -8.616901937858765378e-06, -8.600228187347327678e-06, -8.583542283088771833e-06, -8.566844253588204444e-06, -8.550134127365199434e-06, -8.533411932954352007e-06, -8.516677698909041173e-06, -8.499931453799071602e-06, -8.483173226207729340e-06, -8.466403044739776110e-06, -8.449620938011205288e-06, -8.432826934657198937e-06, -8.416021063328372057e-06, -8.399203352691606074e-06, -8.382373831429818436e-06, -8.365532528242792715e-06, -8.348679471844134366e-06, -8.331814690965548242e-06, -8.314938214354778613e-06, -8.298050070772453122e-06, -8.281150288999424862e-06, -8.264238897830209569e-06, -8.247315926073473511e-06, -8.230381402555858689e-06, -8.213435356118874226e-06, -8.196477815619616347e-06, -8.179508809931459554e-06, -8.162528367941080155e-06, -8.145536518552765968e-06, -8.128533290686263161e-06, -8.111518713273659174e-06, -8.094492815266741737e-06, -8.077455625630402180e-06, -8.060407173343230052e-06, -8.043347487401096067e-06, -8.026276596814378917e-06, -8.009194530608414205e-06, -7.992101317823548651e-06, -7.974996987515826189e-06, -7.957881568753994553e-06, -7.940755090623850557e-06, -7.923617582225287337e-06, -7.906469072672914379e-06, -7.889309591096845261e-06, -7.872139166639543299e-06, -7.854957828460434495e-06, -7.837765605732621040e-06, -7.820562527643804590e-06, -7.803348623396154119e-06, -7.786123922206951366e-06, -7.768888453305626215e-06, -7.751642245938162963e-06, -7.734385329364057776e-06, -7.717117732857047138e-06, -7.699839485705746512e-06, -7.682550617210682343e-06, -7.665251156688606833e-06, -7.647941133469707826e-06, -7.630620576897989964e-06, -7.613289516331454263e-06, -7.595947981142700351e-06, -7.578596000715881386e-06, -7.561233604450450482e-06, -7.543860821761846806e-06, -7.526477682074632917e-06, -7.509084214830054533e-06, -7.491680449482868398e-06, -7.474266415499176412e-06, -7.456842142360748045e-06, -7.439407659562053180e-06, -7.421962996610933807e-06, -7.404508183029306216e-06, -7.387043248350119303e-06, -7.369568222121031535e-06, -7.352083133905201238e-06, -7.334588013274298570e-06, -7.317082889816176255e-06, -7.299567793131652548e-06, -7.282042752832284391e-06, -7.264507798544820258e-06, -7.246962959908168632e-06, -7.229408266574006169e-06, -7.211843748206841225e-06, -7.194269434484654218e-06, -7.176685355095036000e-06, -7.159091539743607368e-06, -7.141488018143163487e-06, -7.123874820022123891e-06, -7.106251975121377287e-06, -7.088619513191195814e-06, -7.070977463998792267e-06, -7.053325857321489630e-06, -7.035664722947261476e-06, -7.017994090678682534e-06, -7.000313990330496854e-06, -6.982624451726483787e-06, -6.964925504707918997e-06, -6.947217179122732438e-06, -6.929499504833862643e-06, -6.911772511715459469e-06, -6.894036229653536320e-06, -6.876290688545939649e-06, -6.858535918303089266e-06, -6.840771948844804506e-06, -6.822998810104893452e-06, -6.805216532028820209e-06, -6.787425144570509894e-06, -6.769624677700104915e-06, -6.751815161396856675e-06, -6.733996625649964976e-06, -6.716169100462281252e-06, -6.698332615847205884e-06, -6.680487201829464086e-06, -6.662632888445764044e-06, -6.644769705741702710e-06, -6.626897683776249144e-06, -6.609016852619560018e-06, -6.591127242349638916e-06, -6.573228883060164614e-06, -6.555321804853446308e-06, -6.537406037841032629e-06, -6.519481612147705401e-06, -6.501548557908216031e-06, -6.483606905268063921e-06, -6.465656684383432105e-06, -6.447697925421871644e-06, -6.429730658559221814e-06, -6.411754913984162915e-06, -6.393770721895073770e-06, -6.375778112500751711e-06, -6.357777116021183373e-06, -6.339767762684301406e-06, -6.321750082730714312e-06, -6.303724106410380138e-06, -6.285689863983524669e-06, -6.267647385720439825e-06, -6.249596701902329007e-06, -6.231537842818016372e-06, -6.213470838768648711e-06, -6.195395720064571593e-06, -6.177312517025962098e-06, -6.159221259983576749e-06, -6.141121979275642052e-06, -6.123014705252440331e-06, -6.104899468273122348e-06, -6.086776298706474710e-06, -6.068645226930876672e-06, -6.050506283334953200e-06, -6.032359498314485842e-06, -6.014204902276219292e-06, -5.996042525638672851e-06, -5.977872398824889821e-06, -5.959694552270385219e-06, -5.941509016419855896e-06, -5.923315821724818168e-06, -5.905114998648260566e-06, -5.886906577661457295e-06, -5.868690589244650098e-06, -5.850467063887917312e-06, -5.832236032087794208e-06, -5.813997524351249806e-06, -5.795751571196568642e-06, -5.777498203145894330e-06, -5.759237450733317041e-06, -5.740969344501588703e-06, -5.722693914999655596e-06, -5.704411192787405124e-06, -5.686121208432467420e-06, -5.667823992510931089e-06, -5.649519575607235631e-06, -5.631207988315026103e-06, -5.612889261232999264e-06, -5.594563424973777098e-06, -5.576230510152500660e-06, -5.557890547395717156e-06, -5.539543567338062953e-06, -5.521189600618984719e-06, -5.502828677890792165e-06, -5.484460829811292246e-06, -5.466086087044599771e-06, -5.447704480265077799e-06, -5.429316040154899882e-06, -5.410920797400712753e-06, -5.392518782702581839e-06, -5.374110026762486016e-06, -5.355694560293281757e-06, -5.337272414015328553e-06, -5.318843618653254092e-06, -5.300408204943968890e-06, -5.281966203629366555e-06, -5.263517645457020901e-06, -5.245062561184284733e-06, -5.226600981575676759e-06, -5.208132937399664552e-06, -5.189658459436762189e-06, -5.171177578472089911e-06, -5.152690325296194054e-06, -5.134196730708995911e-06, -5.115696825516609437e-06, -5.097190640531979906e-06, -5.078678206575674193e-06, -5.060159554472620548e-06, -5.041634715056925669e-06, -5.023103719169326828e-06, -5.004566597653985850e-06, -4.986023381366467320e-06, -4.967474101166459178e-06, -4.948918787918446958e-06, -4.930357472495810041e-06, -4.911790185777469097e-06, -4.893216958648654345e-06, -4.874637822001692445e-06, -4.856052806732664108e-06, -4.837461943746286393e-06, -4.818865263952543209e-06, -4.800262798267494232e-06, -4.781654577613215616e-06, -4.763040632918530975e-06, -4.744420995115756243e-06, -4.725795695145494723e-06, -4.707164763953348061e-06, -4.688528232490669254e-06, -4.669886131714525386e-06, -4.651238492588434543e-06, -4.632585346079081866e-06, -4.613926723161163736e-06, -4.595262654814005565e-06, -4.576593172022442720e-06, -4.557918305777518468e-06, -4.539238087073128884e-06, -4.520552546910959359e-06, -4.501861716297110019e-06, -4.483165626242848738e-06, -4.464464307764628926e-06, -4.445757791884779860e-06, -4.427046109628251537e-06, -4.408329292027375848e-06, -4.389607370118670718e-06, -4.370880374943509266e-06, -4.352148337548092700e-06, -4.333411288984249913e-06, -4.314669260306040883e-06, -4.295922282574722829e-06, -4.277170386855340052e-06, -4.258413604217499821e-06, -4.239651965736175357e-06, -4.220885502488355821e-06, -4.202114245557088354e-06, -4.183338226032281061e-06, -4.164557475003193224e-06, -4.145772023566700642e-06, -4.126981902823866846e-06, -4.108187143876631198e-06, -4.089387777836839960e-06, -4.070583835814608056e-06, -4.051775348927395881e-06, -4.032962348296606768e-06, -4.014144865045103488e-06, -3.995322930301242668e-06, -3.976496575199703187e-06, -3.957665830873928105e-06, -3.938830728464401868e-06, -3.919991299115261324e-06, -3.901147573970933856e-06, -3.882299584184377317e-06, -3.863447360909602419e-06, -3.844590935302351211e-06, -3.825730338524319537e-06, -3.806865601740498621e-06, -3.787996756115911876e-06, -3.769123832824609968e-06, -3.750246863038038937e-06, -3.731365877934130976e-06, -3.712480908693890469e-06, -3.693591986498049900e-06, -3.674699142535337324e-06, -3.655802407994910238e-06, -3.636901814067164926e-06, -3.617997391947818735e-06, -3.599089172835420639e-06, -3.580177187927874600e-06, -3.561261468431629871e-06, -3.542342045549938154e-06, -3.523418950491963443e-06, -3.504492214468571844e-06, -3.485561868693126516e-06, -3.466627944381384333e-06, -3.447690472752367905e-06, -3.428749485024888931e-06, -3.409805012422538491e-06, -3.390857086171162047e-06, -3.371905737495414977e-06, -3.352950997627110935e-06, -3.333992897797609989e-06, -3.315031469238630927e-06, -3.296066743186380115e-06, -3.277098750878136687e-06, -3.258127523553056803e-06, -3.239153092452943176e-06, -3.220175488818852708e-06, -3.201194743896084241e-06, -3.182210888930743840e-06, -3.163223955170582084e-06, -3.144233973864871247e-06, -3.125240976265262918e-06, -3.106244993622348624e-06, -3.087246057190624292e-06, -3.068244198225132185e-06, -3.049239447982212218e-06, -3.030231837719449870e-06, -3.011221398696496958e-06, -2.992208162171611503e-06, -2.973192159406691653e-06, -2.954173421663854937e-06, -2.935151980206190005e-06, -2.916127866298604090e-06, -2.897101111204371767e-06, -2.878071746190130332e-06, -2.859039802522484895e-06, -2.840005311468774095e-06, -2.820968304297037067e-06, -2.801928812276798220e-06, -2.782886866675634633e-06, -2.763842498764207009e-06, -2.744795739812833002e-06, -2.725746621092241078e-06, -2.706695173873566702e-06, -2.687641429429131607e-06, -2.668585419028984516e-06, -2.649527173945965970e-06, -2.630466725452242697e-06, -2.611404104820134737e-06, -2.592339343322869726e-06, -2.573272472231179941e-06, -2.554203522817462927e-06, -2.535132526356573469e-06, -2.516059514118200301e-06, -2.496984517375217421e-06, -2.477907567400265896e-06, -2.458828695462363608e-06, -2.439747932836098951e-06, -2.420665310789774066e-06, -2.401580860594629449e-06, -2.382494613521452858e-06, -2.363406600837939532e-06, -2.344316853812918467e-06, -2.325225403717113893e-06, -2.306132281815494450e-06, -2.287037519375685499e-06, -2.267941147664514072e-06, -2.248843197944601682e-06, -2.229743701482762231e-06, -2.210642689542319423e-06, -2.191540193383941090e-06, -2.172436244269773982e-06, -2.153330873460891660e-06, -2.134224112213834364e-06, -2.115115991789876401e-06, -2.096006543443134649e-06, -2.076895798429804608e-06, -2.057783788004752355e-06, -2.038670543418059505e-06, -2.019556095923454148e-06, -2.000440476770608358e-06, -1.981323717205964895e-06, -1.962205848476912232e-06, -1.943086901829195597e-06, -1.923966908503455575e-06, -1.904845899744542927e-06, -1.885723906789552347e-06, -1.866600960877134527e-06, -1.847477093243182008e-06, -1.828352335121634921e-06, -1.809226717744436939e-06, -1.790100272342330645e-06, -1.770973030141397607e-06, -1.751845022368120256e-06, -1.732716280245925560e-06, -1.713586834995983145e-06, -1.694456717837152992e-06, -1.675325959986796890e-06, -1.656194592657318522e-06, -1.637062647061197167e-06, -1.617930154407579879e-06, -1.598797145903033223e-06, -1.579663652752374644e-06, -1.560529706155206615e-06, -1.541395337310973851e-06, -1.522260577415501480e-06, -1.503125457661818154e-06, -1.483990009240077905e-06, -1.464854263338375630e-06, -1.445718251139289075e-06, -1.426582003824936048e-06, -1.407445552573522334e-06, -1.388308928560130710e-06, -1.369172162956685576e-06, -1.350035286932736466e-06, -1.330898331652036030e-06, -1.311761328277547486e-06, -1.292624307968030012e-06, -1.273487301878820142e-06, -1.254350341162641521e-06, -1.235213456966142877e-06, -1.216076680434956072e-06, -1.196940042710247413e-06, -1.177803574929514494e-06, -1.158667308226532199e-06, -1.139531273732156538e-06, -1.120395502570863244e-06, -1.101260025865826160e-06, -1.082124874735433607e-06, -1.062990080294107882e-06, -1.043855673653101053e-06, -1.024721685917041390e-06, -1.005588148188983796e-06, -9.864550915669659903e-07, -9.673225471447930662e-07, -9.481905460120108124e-07, -9.290591192546811710e-07, -9.099282979519512249e-07, -8.907981131802373284e-07, -8.716685960140387888e-07, -8.525397775182270072e-07, -8.334116887565044796e-07, -8.142843607879415961e-07, -7.951578246635437227e-07, -7.760321114355397647e-07, -7.569072521454330725e-07, -7.377832778332997459e-07, -7.186602195343525394e-07, -6.995381082763179184e-07, -6.804169750836514247e-07, -6.612968509783430990e-07, -6.421777669721948697e-07, -6.230597540752967057e-07, -6.039428432925581223e-07, -5.848270656202625575e-07, -5.657124520553773221e-07, -5.465990335835871424e-07, -5.274868411886084519e-07, -5.083759058478814874e-07, -4.892662585342252859e-07, -4.701579302115300983e-07, -4.510509518440708344e-07, -4.319453543845419810e-07, -4.128411687833668652e-07, -3.937384259852495947e-07, -3.746371569257147162e-07, -3.555373925395706631e-07, -3.364391637532044027e-07, -3.173425014853734646e-07, -2.982474366514203533e-07, -2.791540001606645339e-07, -2.600622229129513550e-07, -2.409721358079618937e-07, -2.218837697332491711e-07, -2.027971555735517033e-07, -1.837123242073369977e-07, -1.646293065033496296e-07, -1.455481333290705862e-07, -1.264688355430099024e-07, -1.073914439955072656e-07, -8.831598953293726969e-08, -6.924250299425723948e-08, -5.017101521180685639e-08, -3.110155701125930183e-08, -1.203415921242303342e-08, 7.031147374210699765e-09, 2.609433194241368940e-08, 4.515536369367250653e-08, 6.421421183638737719e-08, 8.327084558507137062e-08, 1.023252341638006209e-07, 1.213773468011628044e-07, 1.404271527337061986e-07, 1.594746212051408633e-07, 1.785197214663856649e-07, 1.975624227747683856e-07, 2.166026943974774888e-07, 2.356405056065061528e-07, 2.546758256821069477e-07, 2.737086239119878954e-07, 2.927388695905124996e-07, 3.117665320221488112e-07, 3.307915805164190739e-07, 3.498139843913469892e-07, 3.688337129726621410e-07, 3.878507355938426115e-07, 4.068650215953185590e-07, 4.258765403279166772e-07, 4.448852611478156371e-07, 4.638911534199916060e-07, 4.828941865174139363e-07, 5.018943298211028168e-07, 5.208915527193223150e-07, 5.398858246110250485e-07, 5.588771149008119679e-07, 5.778653930023735347e-07, 5.968506283376925569e-07, 6.158327903362381313e-07, 6.348118484384232326e-07, 6.537877720913898764e-07, 6.727605307482269913e-07, 6.917300938756484539e-07, 7.106964309455566415e-07, 7.296595114384908084e-07, 7.486193048462106429e-07, 7.675757806666630911e-07, 7.865289084074281932e-07, 8.054786575849066728e-07, 8.244249977243745706e-07, 8.433678983591948686e-07, 8.623073290350844182e-07, 8.812432593008532237e-07, 9.001756587203141484e-07, 9.191044968630122454e-07, 9.380297433076623348e-07, 9.569513676447316067e-07, 9.758693394722586674e-07, 9.947836283950594453e-07, 1.013694204032394428e-06, 1.032601036009541635e-06, 1.051504093961237695e-06, 1.070403347535122932e-06, 1.089298766382461915e-06, 1.108190320170046174e-06, 1.127077978570939728e-06, 1.145961711268749193e-06, 1.164841487955990065e-06, 1.183717278338351321e-06, 1.202589052125458735e-06, 1.221456779042743502e-06, 1.240320428822198361e-06, 1.259179971205810190e-06, 1.278035375948983718e-06, 1.296886612812136202e-06, 1.315733651568368583e-06, 1.334576462002639838e-06, 1.353415013907613770e-06, 1.372249277086236524e-06, 1.391079221355149499e-06, 1.409904816535470875e-06, 1.428726032464647085e-06, 1.447542838987220793e-06, 1.466355205958251212e-06, 1.485163103246746070e-06, 1.503966500727267090e-06, 1.522765368287567899e-06, 1.541559675827794427e-06, 1.560349393256336563e-06, 1.579134490493218194e-06, 1.597914937469330006e-06, 1.616690704126464420e-06, 1.635461760416522562e-06, 1.654228076304919969e-06, 1.672989621765601161e-06, 1.691746366784453191e-06, 1.710498281358489101e-06, 1.729245335495086862e-06, 1.747987499215361837e-06, 1.766724742549212910e-06, 1.785457035538710618e-06, 1.804184348237287806e-06, 1.822906650709820102e-06, 1.841623913031814878e-06, 1.860336105292813784e-06, 1.879043197591412618e-06, 1.897745160038671477e-06, 1.916441962757313891e-06, 1.935133575880921719e-06, 1.953819969557370286e-06, 1.972501113943811413e-06, 1.991176979210105378e-06, 2.009847535537990402e-06, 2.028512753121179212e-06, 2.047172602164527676e-06, 2.065827052887449617e-06, 2.084476075518943038e-06, 2.103119640300967237e-06, 2.121757717487672435e-06, 2.140390277345455680e-06, 2.159017290152131176e-06, 2.177638726200367544e-06, 2.196254555792685668e-06, 2.214864749244868851e-06, 2.233469276885168722e-06, 2.252068109053502669e-06, 2.270661216104877974e-06, 2.289248568405214667e-06, 2.307830136330597175e-06, 2.326405890274819686e-06, 2.344975800641086928e-06, 2.363539837845387895e-06, 2.382097972319065748e-06, 2.400650174503854626e-06, 2.419196414855246175e-06, 2.437736663841717903e-06, 2.456270891944786969e-06, 2.474799069658208461e-06, 2.493321167492172875e-06, 2.511837155964237771e-06, 2.530347005610993119e-06, 2.548850686978942987e-06, 2.567348170627929243e-06, 2.585839427133641747e-06, 2.604324427083486090e-06, 2.622803141075833555e-06, 2.641275539727549965e-06, 2.659741593665696032e-06, 2.678201273530933697e-06, 2.696654549980871493e-06, 2.715101393680997897e-06, 2.733541775316335662e-06, 2.751975665582344258e-06, 2.770403035188315624e-06, 2.788823854859901719e-06, 2.807238095334986504e-06, 2.825645727362946059e-06, 2.844046721712098663e-06, 2.862441049161556759e-06, 2.880828680504463043e-06, 2.899209586551458642e-06, 2.917583738122383460e-06, 2.935951106053803762e-06, 2.954311661198206642e-06, 2.972665374419936810e-06, 2.991012216598539406e-06, 3.009352158627964635e-06, 3.027685171415811790e-06, 3.046011225886649624e-06, 3.064330292977133626e-06, 3.082642343638530602e-06, 3.100947348840023801e-06, 3.119245279560578431e-06, 3.137536106796345151e-06, 3.155819801559911718e-06, 3.174096334876218596e-06, 3.192365677785916165e-06, 3.210627801344555388e-06, 3.228882676621853432e-06, 3.247130274704966597e-06, 3.265370566693702896e-06, 3.283603523703739923e-06, 3.301829116865918860e-06, 3.320047317326279198e-06, 3.338258096245268883e-06, 3.356461424801079932e-06, 3.374657274184782648e-06, 3.392845615603633714e-06, 3.411026420280316397e-06, 3.429199659452960036e-06, 3.447365304374392107e-06, 3.465523326315468336e-06, 3.483673696560157790e-06, 3.501816386408911103e-06, 3.519951367177863419e-06, 3.538078610198072906e-06, 3.556198086818830118e-06, 3.574309768402783318e-06, 3.592413626329274096e-06, 3.610509631993559787e-06, 3.628597756806868114e-06, 3.646677972195595038e-06, 3.664750249604645039e-06, 3.682814560492558134e-06, 3.700870876334857350e-06, 3.718919168623202113e-06, 3.736959408865512767e-06, 3.754991568585161230e-06, 3.773015619324260447e-06, 3.791031532638871879e-06, 3.809039280102275049e-06, 3.827038833304157353e-06, 3.845030163849940675e-06, 3.863013243364004764e-06, 3.880988043485665525e-06, 3.898954535868462241e-06, 3.916912692187453067e-06, 3.934862484131207179e-06, 3.952803883404996398e-06, 3.970736861733385413e-06, 3.988661390855313908e-06, 4.006577442527451664e-06, 4.024484988523404883e-06, 4.042384000632915745e-06, 4.060274450665256470e-06, 4.078156310445075466e-06, 4.096029551811742574e-06, 4.113894146626635244e-06, 4.131750066765101042e-06, 4.149597284119722113e-06, 4.167435770602809693e-06, 4.185265498142373079e-06, 4.203086438681409817e-06, 4.220898564185152068e-06, 4.238701846633081627e-06, 4.256496258022183379e-06, 4.274281770370216539e-06, 4.292058355706919909e-06, 4.309825986085264710e-06, 4.327584633572737766e-06, 4.345334270254522963e-06, 4.363074868235999144e-06, 4.380806399638732800e-06, 4.398528836599752160e-06, 4.416242151278805420e-06, 4.433946315850365594e-06, 4.451641302506911925e-06, 4.469327083462144371e-06, 4.487003630942228674e-06, 4.504670917197059357e-06, 4.522328914491496322e-06, 4.539977595109382325e-06, 4.557616931352843328e-06, 4.575246895542246150e-06, 4.592867460015531848e-06, 4.610478597131394631e-06, 4.628080279264584221e-06, 4.645672478808263989e-06, 4.663255168177314380e-06, 4.680828319800380130e-06, 4.698391906127115775e-06, 4.715945899627353026e-06, 4.733490272787253541e-06, 4.751024998112465819e-06, 4.768550048127428089e-06, 4.786065395374545845e-06, 4.803571012417501201e-06, 4.821066871836465459e-06, 4.838552946231306829e-06, 4.856029208220944984e-06, 4.873495630443232477e-06, 4.890952185554353348e-06, 4.908398846231934279e-06, 4.925835585170368118e-06, 4.943262375084072422e-06, 4.960679188706628019e-06, 4.978085998790941643e-06, 4.995482778108434472e-06, 5.012869499452243917e-06, 5.030246135632535290e-06, 5.047612659479707829e-06, 5.064969043843634903e-06, 5.082315261592921169e-06, 5.099651285618169579e-06, 5.116977088827140580e-06, 5.134292644148084349e-06, 5.151597924528921710e-06, 5.168892902937314433e-06, 5.186177552359940182e-06, 5.203451845805602812e-06, 5.220715756300638916e-06, 5.237969256892099275e-06, 5.255212320646936558e-06, 5.272444920652109505e-06, 5.289667030013792645e-06, 5.306878621860636526e-06, 5.324079669338989603e-06, 5.341270145616174561e-06, 5.358450023879703961e-06, 5.375619277336540782e-06, 5.392777879216257009e-06, 5.409925802767191485e-06, 5.427063021255704529e-06, 5.444189507973215081e-06, 5.461305236228500328e-06, 5.478410179350778902e-06, 5.495504310692186761e-06, 5.512587603623039728e-06, 5.529660031535043751e-06, 5.546721567840579158e-06, 5.563772185971912916e-06, 5.580811859384388557e-06, 5.597840561552542535e-06, 5.614858265969452852e-06, 5.631864946153614430e-06, 5.648860575641403902e-06, 5.665845127990072182e-06, 5.682818576780182226e-06, 5.699780895611775356e-06, 5.716732058103625878e-06, 5.733672037900238416e-06, 5.750600808664183114e-06, 5.767518344079174598e-06, 5.784424617853255976e-06, 5.801319603710319189e-06, 5.818203275400974983e-06, 5.835075606694057174e-06, 5.851936571379788853e-06, 5.868786143272928266e-06, 5.885624296205049806e-06, 5.902451004031532031e-06, 5.919266240630837691e-06, 5.936069979900726636e-06, 5.952862195760525026e-06, 5.969642862154350827e-06, 5.986411953042629930e-06, 6.003169442412900056e-06, 6.019915304271415814e-06, 6.036649512647024722e-06, 6.053372041590409962e-06, 6.070082865174188632e-06, 6.086781957492142645e-06, 6.103469292662325639e-06, 6.120144844822534747e-06, 6.136808588132609439e-06, 6.153460496777536744e-06, 6.170100544959911816e-06, 6.186728706906728590e-06, 6.203344956868786015e-06, 6.219949269116809492e-06, 6.236541617944618774e-06, 6.253121977668369873e-06, 6.269690322625826612e-06, 6.286246627179420106e-06, 6.302790865711791678e-06, 6.319323012628089162e-06, 6.335843042358977260e-06, 6.352350929353210757e-06, 6.368846648084402314e-06, 6.385330173050298254e-06, 6.401801478769110064e-06, 6.418260539782522207e-06, 6.434707330654960287e-06, 6.451141825973710481e-06, 6.467564000348087750e-06, 6.483973828412619839e-06, 6.500371284822448734e-06, 6.516756344256461296e-06, 6.533128981416527776e-06, 6.549489171026800476e-06, 6.565836887836791862e-06, 6.582172106616864966e-06, 6.598494802161280158e-06, 6.614804949287510748e-06, 6.631102522836238746e-06, 6.647387497670696723e-06, 6.663659848679672233e-06, 6.679919550773003292e-06, 6.696166578884733577e-06, 6.712400907972286569e-06, 6.728622513015814184e-06, 6.744831369021225762e-06, 6.761027451015697946e-06, 6.777210734050766355e-06, 6.793381193201537839e-06, 6.809538803566812452e-06, 6.825683540268322822e-06, 6.841815378453748733e-06, 6.857934293293076585e-06, 6.874040259977883646e-06, 6.890133253727964393e-06, 6.906213249784114638e-06, 6.922280223411008899e-06, 6.938334149899460284e-06, 6.954375004562154832e-06, 6.970402762736472980e-06, 6.986417399783876314e-06, 7.002418891089220620e-06, 7.018407212063655283e-06, 7.034382338141112333e-06, 7.050344244777490751e-06, 7.066292907457357350e-06, 7.082228301686664829e-06, 7.098150402995661334e-06, 7.114059186941170670e-06, 7.129954629102236010e-06, 7.145836705083063333e-06, 7.161705390512327710e-06, 7.177560661043218188e-06, 7.193402492352788123e-06, 7.209230860145552526e-06, 7.225045740145592020e-06, 7.240847108106673193e-06, 7.256634939804418626e-06, 7.272409211039201201e-06, 7.288169897638984202e-06, 7.303916975452277395e-06, 7.319650420354594802e-06, 7.335370208247716935e-06, 7.351076315056261164e-06, 7.366768716729745086e-06, 7.382447389245575702e-06, 7.398112308601163547e-06, 7.413763450823972729e-06, 7.429400791963778207e-06, 7.445024308096123372e-06, 7.460633975321782189e-06, 7.476229769766728698e-06, 7.491811667581425512e-06, 7.507379644943824846e-06, 7.522933678054979201e-06, 7.538473743141409666e-06, 7.553999816457763901e-06, 7.569511874279905205e-06, 7.585009892911263563e-06, 7.600493848682208841e-06, 7.615963717946494100e-06, 7.631419477084193945e-06, 7.646861102500904936e-06, 7.662288570627273781e-06, 7.677701857921613829e-06, 7.693100940865946877e-06, 7.708485795967966601e-06, 7.723856399763972671e-06, 7.739212728811916612e-06, 7.754554759697632584e-06, 7.769882469034329153e-06, 7.785195833458960610e-06, 7.800494829635218685e-06, 7.815779434252693992e-06, 7.831049624026371187e-06, 7.846305375699381835e-06, 7.861546666038859025e-06, 7.876773471838776627e-06, 7.891985769919275051e-06, 7.907183537126705297e-06, 7.922366750332900502e-06, 7.937535386438145641e-06, 7.952689422366905091e-06, 7.967828835070655109e-06, 7.982953601527280747e-06, 7.998063698741099566e-06, 8.013159103742141658e-06, 8.028239793589009234e-06, 8.043305745364748177e-06, 8.058356936179658506e-06, 8.073393343170581169e-06, 8.088414943500320367e-06, 8.103421714360421825e-06, 8.118413632967024020e-06, 8.133390676563650006e-06, 8.148352822420628041e-06, 8.163300047835025521e-06, 8.178232330130111956e-06, 8.193149646658000023e-06, 8.208051974795695004e-06, 8.222939291947774798e-06, 8.237811575545817325e-06, 8.252668803048331071e-06, 8.267510951940235009e-06, 8.282337999735513200e-06, 8.297149923973216800e-06, 8.311946702220161009e-06, 8.326728312070440571e-06, 8.341494731144506508e-06, 8.356245937092200189e-06, 8.370981907589187325e-06, 8.385702620336453136e-06, 8.400408053066362024e-06, 8.415098183535889780e-06, 8.429772989529449287e-06, 8.444432448860894600e-06, 8.459076539369539887e-06, 8.473705238922836061e-06, 8.488318525415759213e-06, 8.502916376770869913e-06, 8.517498770937611860e-06, 8.532065685895777945e-06, 8.546617099648139368e-06, 8.561152990229812130e-06, 8.575673335700940359e-06, 8.590178114149464421e-06, 8.604667303693787369e-06, 8.619140882476107111e-06, 8.633598828668470992e-06, 8.648041120472203206e-06, 8.662467736114482780e-06, 8.676878653850467933e-06, 8.691273851965954068e-06, 8.705653308770123163e-06, 8.720017002604803544e-06, 8.734364911837305676e-06, 8.748697014863044574e-06, 8.763013290108204574e-06, 8.777313716023168051e-06, 8.791598271088554758e-06, 8.805866933814530655e-06, 8.820119682737516333e-06, 8.834356496422319846e-06, 8.848577353464569389e-06, 8.862782232484511322e-06, 8.876971112132610753e-06, 8.891143971089160208e-06, 8.905300788060918605e-06, 8.919441541783765853e-06, 8.933566211022152284e-06, 8.947674774568427800e-06, 8.961767211245450738e-06, 8.975843499902796545e-06, 8.989903619418683936e-06, 9.003947548702551567e-06, 9.017975266688766273e-06, 9.031986752342271082e-06, 9.045981984658163399e-06, 9.059960942658350913e-06, 9.073923605394257024e-06, 9.087869951946202509e-06, 9.101799961422704175e-06, 9.115713612963183675e-06, 9.129610885734076238e-06, 9.143491758931434444e-06, 9.157356211780337001e-06, 9.171204223535000548e-06, 9.185035773478003777e-06, 9.198850840922928479e-06, 9.212649405210680034e-06, 9.226431445711904842e-06, 9.240196941826495658e-06, 9.253945872983557709e-06, 9.267678218640822547e-06, 9.281393958287273852e-06, 9.295093071439256162e-06, 9.308775537643163356e-06, 9.322441336474693264e-06, 9.336090447538441094e-06, 9.349722850470250791e-06, 9.363338524933589741e-06, 9.376937450622059372e-06, 9.390519607258785293e-06, 9.404084974596513857e-06, 9.417633532416883708e-06, 9.431165260533076999e-06, 9.444680138786056868e-06, 9.458178147047105152e-06, 9.471659265217180333e-06, 9.485123473227024266e-06, 9.498570751036521822e-06, 9.512001078637201328e-06, 9.525414436048605879e-06, 9.538810803320715853e-06, 9.552190160533445771e-06, 9.565552487795924320e-06, 9.578897765249204860e-06, 9.592225973063024674e-06, 9.605537091435267951e-06, 9.618831100597542648e-06, 9.632107980809108961e-06, 9.645367712359254403e-06, 9.658610275569897585e-06, 9.671835650788827198e-06, 9.685043818398243493e-06, 9.698234758808151426e-06, 9.711408452458773004e-06, 9.724564879822441256e-06, 9.737704021400517027e-06, 9.750825857722955303e-06, 9.763930369353555116e-06, 9.777017536884282734e-06, 9.790087340937316394e-06, 9.803139762167783916e-06, 9.816174781257628489e-06, 9.829192378921104220e-06, 9.842192535904183213e-06, 9.855175232981546905e-06, 9.868140450958573208e-06, 9.881088170673499831e-06, 9.894018372991042731e-06, 9.906931038810827482e-06, 9.919826149060706184e-06, 9.932703684699301951e-06, 9.945563626718290814e-06, 9.958405956136606325e-06, 9.971230654005782643e-06, 9.984037701409287065e-06, 9.996827079459748541e-06, 1.000959876930056364e-05, 1.002235275210856134e-05, 1.003508900908719961e-05, 1.004780752147513575e-05, 1.006050827053965507e-05, 1.007319123757960500e-05, 1.008585640392485135e-05, 1.009850375093643750e-05, 1.011113326000580176e-05, 1.012374491255730323e-05, 1.013633869004476760e-05, 1.014891457395307784e-05, 1.016147254580070519e-05, 1.017401258713391881e-05, 1.018653467953188832e-05, 1.019903880460628399e-05, 1.021152494399833245e-05, 1.022399307938117484e-05, 1.023644319245929591e-05, 1.024887526496807172e-05, 1.026128927867593968e-05, 1.027368521538107318e-05, 1.028606305691369899e-05, 1.029842278513555186e-05, 1.031076438193983376e-05, 1.032308782925072609e-05, 1.033539310902579518e-05, 1.034768020325241277e-05, 1.035994909395013952e-05, 1.037219976317020669e-05, 1.038443219299547710e-05, 1.039664636554002508e-05, 1.040884226295130987e-05, 1.042101986740682147e-05, 1.043317916111643698e-05, 1.044532012632180404e-05, 1.045744274529589188e-05, 1.046954700034512412e-05, 1.048163287380616855e-05, 1.049370034804817669e-05, 1.050574940547213153e-05, 1.051778002851112031e-05, 1.052979219962955866e-05, 1.054178590132555882e-05, 1.055376111612756872e-05, 1.056571782659671310e-05, 1.057765601532608542e-05, 1.058957566494099181e-05, 1.060147675809825818e-05, 1.061335927748856297e-05, 1.062522320583308458e-05, 1.063706852588570704e-05, 1.064889522043259819e-05, 1.066070327229162864e-05, 1.067249266431458249e-05, 1.068426337938445022e-05, 1.069601540041490185e-05, 1.070774871035520991e-05, 1.071946329218489783e-05, 1.073115912891581523e-05, 1.074283620359448924e-05, 1.075449449929602082e-05, 1.076613399913177240e-05, 1.077775468624354369e-05, 1.078935654380554527e-05, 1.080093955502613332e-05, 1.081250370314525155e-05, 1.082404897143373161e-05, 1.083557534319825324e-05, 1.084708280177603005e-05, 1.085857133053689996e-05, 1.087004091288556307e-05, 1.088149153225618100e-05, 1.089292317211723033e-05, 1.090433581597105884e-05, 1.091572944735112241e-05, 1.092710404982377398e-05, 1.093845960699022871e-05, 1.094979610248086506e-05, 1.096111351996269232e-05, 1.097241184313338063e-05, 1.098369105572360397e-05, 1.099495114149906110e-05, 1.100619208425522738e-05, 1.101741386782214392e-05, 1.102861647606397365e-05, 1.103979989287624858e-05, 1.105096410218760103e-05, 1.106210908796182028e-05, 1.107323483419209274e-05, 1.108434132490847110e-05, 1.109542854417193656e-05, 1.110649647607723311e-05, 1.111754510475234228e-05, 1.112857441435831378e-05, 1.113958438908905371e-05, 1.115057501317315588e-05, 1.116154627087099648e-05, 1.117249814647676861e-05, 1.118343062431787247e-05, 1.119434368875527789e-05, 1.120523732418258067e-05, 1.121611151502839807e-05, 1.122696624575323134e-05, 1.123780150085144445e-05, 1.124861726485089469e-05, 1.125941352231241610e-05, 1.127019025783181666e-05, 1.128094745603695441e-05, 1.129168510158965339e-05, 1.130240317918529203e-05, 1.131310167355295050e-05, 1.132378056945466191e-05, 1.133443985168762483e-05, 1.134507950508117254e-05, 1.135569951449884661e-05, 1.136629986483780733e-05, 1.137688054102895403e-05, 1.138744152803636937e-05, 1.139798281085942512e-05, 1.140850437452975484e-05, 1.141900620411318511e-05, 1.142948828470948313e-05, 1.143995060145171971e-05, 1.145039313950818365e-05, 1.146081588407967790e-05, 1.147121882040127471e-05, 1.148160193374206484e-05, 1.149196520940502209e-05, 1.150230863272653229e-05, 1.151263218907847536e-05, 1.152293586386519969e-05, 1.153321964252567189e-05, 1.154348351053268568e-05, 1.155372745339277381e-05, 1.156395145664792751e-05, 1.157415550587271999e-05, 1.158433958667641554e-05, 1.159450368470235288e-05, 1.160464778562799599e-05, 1.161477187516454790e-05, 1.162487593905875988e-05, 1.163495996309073429e-05, 1.164502393307324526e-05, 1.165506783485628383e-05, 1.166509165432215535e-05, 1.167509537738739549e-05, 1.168507899000479628e-05, 1.169504247815817322e-05, 1.170498582786893309e-05, 1.171490902519100029e-05, 1.172481205621260576e-05, 1.173469490705790308e-05, 1.174455756388443080e-05, 1.175440001288273634e-05, 1.176422224028073822e-05, 1.177402423233885730e-05, 1.178380597535205476e-05, 1.179356745565156171e-05, 1.180330865960005963e-05, 1.181302957359786702e-05, 1.182273018407812494e-05, 1.183241047750892639e-05, 1.184207044039254896e-05, 1.185171005926768753e-05, 1.186132932070456359e-05, 1.187092821131109496e-05, 1.188050671772821002e-05, 1.189006482663141307e-05, 1.189960252473277139e-05, 1.190911979877639725e-05, 1.191861663554241873e-05, 1.192809302184666467e-05, 1.193754894453839631e-05, 1.194698439050174891e-05, 1.195639934665729371e-05, 1.196579379995744530e-05, 1.197516773739253486e-05, 1.198452114598596343e-05, 1.199385401279607385e-05, 1.200316632491777199e-05, 1.201245806947837288e-05, 1.202172923364131414e-05, 1.203097980460599161e-05, 1.204020976960534026e-05, 1.204941911590778573e-05, 1.205860783081668870e-05, 1.206777590167053292e-05, 1.207692331584227805e-05, 1.208605006074138750e-05, 1.209515612381091972e-05, 1.210424149252961014e-05, 1.211330615441121227e-05, 1.212235009700415544e-05, 1.213137330789331849e-05, 1.214037577469746498e-05, 1.214935748507092030e-05, 1.215831842670324471e-05, 1.216725858731913340e-05, 1.217617795467806074e-05, 1.218507651657611493e-05, 1.219395426084323331e-05, 1.220281117534511327e-05, 1.221164724798273109e-05, 1.222046246669190833e-05, 1.222925681944507020e-05, 1.223803029424865030e-05, 1.224678287914491510e-05, 1.225551456221147099e-05, 1.226422533156125750e-05, 1.227291517534216440e-05, 1.228158408173890202e-05, 1.229023203897016024e-05, 1.229885903529055670e-05, 1.230746505899014381e-05, 1.231605009839449347e-05, 1.232461414186416680e-05, 1.233315717779648955e-05, 1.234167919462307029e-05, 1.235018018081148597e-05, 1.235866012486479239e-05, 1.236711901532115485e-05, 1.237555684075569640e-05, 1.238397358977812952e-05, 1.239236925103260535e-05, 1.240074381320139831e-05, 1.240909726500070647e-05, 1.241742959518242358e-05, 1.242574079253521646e-05, 1.243403084588233967e-05, 1.244229974408304501e-05, 1.245054747603228329e-05, 1.245877403066079419e-05, 1.246697939693457765e-05, 1.247516356385702166e-05, 1.248332652046442482e-05, 1.249146825583166640e-05, 1.249958875906780343e-05, 1.250768801931773769e-05, 1.251576602576331347e-05, 1.252382276762142525e-05, 1.253185823414366201e-05, 1.253987241461977325e-05, 1.254786529837383532e-05, 1.255583687476575067e-05, 1.256378713319295719e-05, 1.257171606308602868e-05, 1.257962365391411113e-05, 1.258750989518084680e-05, 1.259537477642616823e-05, 1.260321828722559181e-05, 1.261104041719202704e-05, 1.261884115597188698e-05, 1.262662049325005012e-05, 1.263437841874597933e-05, 1.264211492221519907e-05, 1.264982999345077596e-05, 1.265752362227943265e-05, 1.266519579856522730e-05, 1.267284651220892510e-05, 1.268047575314638889e-05, 1.268808351134944145e-05, 1.269566977682754092e-05, 1.270323453962376588e-05, 1.271077778981978911e-05, 1.271829951753200498e-05, 1.272579971291298632e-05, 1.273327836615290745e-05, 1.274073546747597307e-05, 1.274817100714361501e-05, 1.275558497545424823e-05, 1.276297736274141415e-05, 1.277034815937519689e-05, 1.277769735576198778e-05, 1.278502494234440406e-05, 1.279233090960089418e-05, 1.279961524804743180e-05, 1.280687794823499509e-05, 1.281411900075139292e-05, 1.282133839622063971e-05, 1.282853612530280977e-05, 1.283571217869517403e-05, 1.284286654713056355e-05, 1.284999922137827415e-05, 1.285711019224405287e-05, 1.286419945057013526e-05, 1.287126698723467610e-05, 1.287831279315317928e-05, 1.288533685927679013e-05, 1.289233917659312214e-05, 1.289931973612642805e-05, 1.290627852893689852e-05, 1.291321554612241547e-05, 1.292013077881607032e-05, 1.292702421818791557e-05, 1.293389585544437874e-05, 1.294074568182852151e-05, 1.294757368861942141e-05, 1.295437986713372525e-05, 1.296116420872362815e-05, 1.296792670477821349e-05, 1.297466734672304805e-05, 1.298138612602027182e-05, 1.298808303416822527e-05, 1.299475806270294184e-05, 1.300141120319584908e-05, 1.300804244725540345e-05, 1.301465178652672268e-05, 1.302123921269108263e-05, 1.302780471746746910e-05, 1.303434829261077188e-05, 1.304086992991151886e-05, 1.304736962119896426e-05, 1.305384735833757345e-05, 1.306030313322854088e-05, 1.306673693781078272e-05, 1.307314876405882273e-05, 1.307953860398422713e-05, 1.308590644963527083e-05, 1.309225229309700014e-05, 1.309857612649073981e-05, 1.310487794197588531e-05, 1.311115773174641138e-05, 1.311741548803515635e-05, 1.312365120311047971e-05, 1.312986486927751912e-05, 1.313605647887912892e-05, 1.314222602429429111e-05, 1.314837349793786460e-05, 1.315449889226333303e-05, 1.316060219975987905e-05, 1.316668341295328734e-05, 1.317274252440753528e-05, 1.317877952672124049e-05, 1.318479441253204004e-05, 1.319078717451313790e-05, 1.319675780537461276e-05, 1.320270629786438029e-05, 1.320863264476644654e-05, 1.321453683890103498e-05, 1.322041887312683624e-05, 1.322627874033837724e-05, 1.323211643346697997e-05, 1.323793194548210666e-05, 1.324372526938836801e-05, 1.324949639822820995e-05, 1.325524532508154782e-05, 1.326097204306433647e-05, 1.326667654532979515e-05, 1.327235882506808388e-05, 1.327801887550605447e-05, 1.328365668990832794e-05, 1.328927226157575798e-05, 1.329486558384604928e-05, 1.330043665009500780e-05, 1.330598545373387085e-05, 1.331151198821162294e-05, 1.331701624701481789e-05, 1.332249822366619474e-05, 1.332795791172581281e-05, 1.333339530479067562e-05, 1.333881039649465464e-05, 1.334420318050936005e-05, 1.334957365054274819e-05, 1.335492180033998390e-05, 1.336024762368332187e-05, 1.336555111439211855e-05, 1.337083226632249498e-05, 1.337609107336844477e-05, 1.338132752946021451e-05, 1.338654162856549475e-05, 1.339173336468891683e-05, 1.339690273187232394e-05, 1.340204972419432897e-05, 1.340717433577154951e-05, 1.341227656075675956e-05, 1.341735639334026686e-05, 1.342241382774938264e-05, 1.342744885824837585e-05, 1.343246147913931178e-05, 1.343745168476079669e-05, 1.344241946948866563e-05, 1.344736482773598924e-05, 1.345228775395294497e-05, 1.345718824262670359e-05, 1.346206628828221183e-05, 1.346692188548092186e-05, 1.347175502882173996e-05, 1.347656571294066057e-05, 1.348135393251095947e-05, 1.348611968224270921e-05, 1.349086295688405989e-05, 1.349558375121955352e-05, 1.350028206007112692e-05, 1.350495787829803549e-05, 1.350961120079636871e-05, 1.351424202250025120e-05, 1.351885033838053158e-05, 1.352343614344450628e-05, 1.352799943273820315e-05, 1.353254020134382683e-05, 1.353705844438088190e-05, 1.354155415700681154e-05, 1.354602733441556774e-05, 1.355047797183866334e-05, 1.355490606454470782e-05, 1.355931160783945136e-05, 1.356369459706653701e-05, 1.356805502760641140e-05, 1.357239289487613670e-05, 1.357670819433127780e-05, 1.358100092146397958e-05, 1.358527107180346492e-05, 1.358951864091696307e-05, 1.359374362440856616e-05, 1.359794601791888360e-05, 1.360212581712728165e-05, 1.360628301774938295e-05, 1.361041761553820326e-05, 1.361452960628490025e-05, 1.361861898581635265e-05, 1.362268574999829091e-05, 1.362672989473286956e-05, 1.363075141595956853e-05, 1.363475030965576057e-05, 1.363872657183576942e-05, 1.364268019855054622e-05, 1.364661118588963124e-05, 1.365051952997901424e-05, 1.365440522698200869e-05, 1.365826827310011395e-05, 1.366210866457066400e-05, 1.366592639766973607e-05, 1.366972146871000601e-05, 1.367349387404155294e-05, 1.367724361005186098e-05, 1.368097067316571923e-05, 1.368467505984503043e-05, 1.368835676658971722e-05, 1.369201578993626865e-05, 1.369565212645867024e-05, 1.369926577276892232e-05, 1.370285672551529859e-05, 1.370642498138387920e-05, 1.370997053709855248e-05, 1.371349338941993747e-05, 1.371699353514619712e-05, 1.372047097111277906e-05, 1.372392569419238007e-05, 1.372735770129558976e-05, 1.373076698936972512e-05, 1.373415355539966563e-05, 1.373751739640764157e-05, 1.374085850945326614e-05, 1.374417689163320348e-05, 1.374747254008218677e-05, 1.375074545197161384e-05, 1.375399562451047897e-05, 1.375722305494507125e-05, 1.376042774055911357e-05, 1.376360967867343395e-05, 1.376676886664677529e-05, 1.376990530187469592e-05, 1.377301898179029977e-05, 1.377610990386399409e-05, 1.377917806560344203e-05, 1.378222346455407087e-05, 1.378524609829823341e-05, 1.378824596445575523e-05, 1.379122306068382959e-05, 1.379417738467704626e-05, 1.379710893416709674e-05, 1.380001770692354509e-05, 1.380290370075286395e-05, 1.380576691349898347e-05, 1.380860734304321337e-05, 1.381142498730411249e-05, 1.381421984423757686e-05, 1.381699191183724803e-05, 1.381974118813367442e-05, 1.382246767119482133e-05, 1.382517135912604885e-05, 1.382785225006996280e-05, 1.383051034220685181e-05, 1.383314563375412487e-05, 1.383575812296610299e-05, 1.383834780813522703e-05, 1.384091468759074315e-05, 1.384345875969928722e-05, 1.384598002286521348e-05, 1.384847847552971535e-05, 1.385095411617152335e-05, 1.385340694330674418e-05, 1.385583695548858118e-05, 1.385824415130797642e-05, 1.386062852939303128e-05, 1.386299008840859485e-05, 1.386532882705782409e-05, 1.386764474408049492e-05, 1.386993783825372216e-05, 1.387220810839248978e-05, 1.387445555334866663e-05, 1.387668017201107424e-05, 1.387888196330662689e-05, 1.388106092619903400e-05, 1.388321705968924898e-05, 1.388535036281613510e-05, 1.388746083465489838e-05, 1.388954847431893928e-05, 1.389161328095845506e-05, 1.389365525376084465e-05, 1.389567439195130160e-05, 1.389767069479192132e-05, 1.389964416158178403e-05, 1.390159479165802546e-05, 1.390352258439444093e-05, 1.390542753920221381e-05, 1.390730965553021362e-05, 1.390916893286368659e-05, 1.391100537072606487e-05, 1.391281896867760285e-05, 1.391460972631568205e-05, 1.391637764327522956e-05, 1.391812271922827424e-05, 1.391984495388394836e-05, 1.392154434698902634e-05, 1.392322089832716240e-05, 1.392487460771920231e-05, 1.392650547502365429e-05, 1.392811350013574037e-05, 1.392969868298802825e-05, 1.393126102355065664e-05, 1.393280052183055595e-05, 1.393431717787205821e-05, 1.393581099175661748e-05, 1.393728196360281499e-05, 1.393873009356673858e-05, 1.394015538184139657e-05, 1.394155782865693967e-05, 1.394293743428106925e-05, 1.394429419901810054e-05, 1.394562812320983674e-05, 1.394693920723542673e-05, 1.394822745151086534e-05, 1.394949285648944903e-05, 1.395073542266156753e-05, 1.395195515055481392e-05, 1.395315204073378143e-05, 1.395432609380051565e-05, 1.395547731039390813e-05, 1.395660569119000126e-05, 1.395771123690210353e-05, 1.395879394828044217e-05, 1.395985382611262400e-05, 1.396089087122312886e-05, 1.396190508447360441e-05, 1.396289646676283053e-05, 1.396386501902662446e-05, 1.396481074223780355e-05, 1.396573363740659351e-05, 1.396663370557995246e-05, 1.396751094784198601e-05, 1.396836536531392862e-05, 1.396919695915394368e-05, 1.397000573055747590e-05, 1.397079168075675832e-05, 1.397155481102123751e-05, 1.397229512265728055e-05, 1.397301261700831385e-05, 1.397370729545470807e-05, 1.397437915941406939e-05, 1.397502821034079913e-05, 1.397565444972624617e-05, 1.397625787909893568e-05, 1.397683850002435057e-05, 1.397739631410478747e-05, 1.397793132297975660e-05, 1.397844352832550565e-05, 1.397893293185537900e-05, 1.397939953531956356e-05, 1.397984334050527512e-05, 1.398026434923667198e-05, 1.398066256337489897e-05, 1.398103798481770971e-05, 1.398139061550020348e-05, 1.398172045739407815e-05, 1.398202751250800291e-05, 1.398231178288769615e-05, 1.398257327061557652e-05, 1.398281197781101024e-05, 1.398302790663019082e-05, 1.398322105926623734e-05, 1.398339143794907245e-05, 1.398353904494556130e-05, 1.398366388255923371e-05, 1.398376595313057553e-05, 1.398384525903692027e-05, 1.398390180269233724e-05, 1.398393558654779249e-05, 1.398394661309090321e-05, 1.398393488484624772e-05, 1.398390040437502664e-05, 1.398384317427537461e-05, 1.398376319718207065e-05, 1.398366047576678539e-05, 1.398353501273771189e-05, 1.398338681084000092e-05, 1.398321587285546621e-05, 1.398302220160260651e-05, 1.398280579993671907e-05, 1.398256667074963197e-05, 1.398230481697009545e-05, 1.398202024156346005e-05, 1.398171294753171049e-05, 1.398138293791349785e-05, 1.398103021578424967e-05, 1.398065478425588709e-05, 1.398025664647705348e-05, 1.397983580563311789e-05, 1.397939226494594123e-05, 1.397892602767400505e-05, 1.397843709711247757e-05, 1.397792547659305278e-05, 1.397739116948408933e-05, 1.397683417919034964e-05, 1.397625450915343532e-05, 1.397565216285131786e-05, 1.397502714379854531e-05, 1.397437945554618304e-05, 1.397370910168191871e-05, 1.397301608582989122e-05, 1.397230041165073300e-05, 1.397156208284161244e-05, 1.397080110313616437e-05, 1.397001747630452396e-05, 1.396921120615333521e-05, 1.396838229652555949e-05, 1.396753075130075340e-05, 1.396665657439484341e-05, 1.396575976976014117e-05, 1.396484034138549424e-05, 1.396389829329607771e-05, 1.396293362955342982e-05, 1.396194635425556711e-05, 1.396093647153679133e-05, 1.395990398556789103e-05, 1.395884890055577899e-05, 1.395777122074390733e-05, 1.395667095041204892e-05, 1.395554809387626015e-05, 1.395440265548882670e-05, 1.395323463963845834e-05, 1.395204405075001286e-05, 1.395083089328477380e-05, 1.394959517174016087e-05, 1.394833689064995519e-05, 1.394705605458415361e-05, 1.394575266814883829e-05, 1.394442673598651889e-05, 1.394307826277576665e-05, 1.394170725323143462e-05, 1.394031371210442724e-05, 1.393889764418205109e-05, 1.393745905428754723e-05, 1.393599794728040637e-05, 1.393451432805618925e-05, 1.393300820154671132e-05, 1.393147957271975137e-05, 1.392992844657928190e-05, 1.392835482816523533e-05, 1.392675872255385302e-05, 1.392514013485725662e-05, 1.392349907022359551e-05, 1.392183553383721106e-05, 1.392014953091828094e-05, 1.391844106672314433e-05, 1.391671014654403259e-05, 1.391495677570932506e-05, 1.391318095958317637e-05, 1.391138270356590775e-05, 1.390956201309348696e-05, 1.390771889363821612e-05, 1.390585335070796422e-05, 1.390396538984667879e-05, 1.390205501663426900e-05, 1.390012223668628208e-05, 1.389816705565447420e-05, 1.389618947922618373e-05, 1.389418951312470725e-05, 1.389216716310913697e-05, 1.389012243497446912e-05, 1.388805533455121435e-05, 1.388596586770623793e-05, 1.388385404034159431e-05, 1.388171985839538253e-05, 1.387956332784150067e-05, 1.387738445468933240e-05, 1.387518324498429245e-05, 1.387295970480736590e-05, 1.387071384027507421e-05, 1.386844565753990218e-05, 1.386615516278988627e-05, 1.386384236224850959e-05, 1.386150726217528802e-05, 1.385914986886510107e-05, 1.385677018864843750e-05, 1.385436822789141908e-05, 1.385194399299580731e-05, 1.384949749039891538e-05, 1.384702872657362677e-05, 1.384453770802814453e-05, 1.384202444130646227e-05, 1.383948893298805916e-05, 1.383693118968756966e-05, 1.383435121805569149e-05, 1.383174902477822679e-05, 1.382912461657625325e-05, 1.382647800020666452e-05, 1.382380918246155689e-05, 1.382111817016849196e-05, 1.381840497019046949e-05, 1.381566958942569190e-05, 1.381291203480789130e-05, 1.381013231330606173e-05, 1.380733043192457107e-05, 1.380450639770311013e-05, 1.380166021771665883e-05, 1.379879189907530490e-05, 1.379590144892461659e-05, 1.379298887444542752e-05, 1.379005418285365879e-05, 1.378709738140059515e-05, 1.378411847737265287e-05, 1.378111747809132725e-05, 1.377809439091342809e-05, 1.377504922323090179e-05, 1.377198198247084835e-05, 1.376889267609558228e-05, 1.376578131160216171e-05, 1.376264789652309309e-05, 1.375949243842587549e-05, 1.375631494491304806e-05, 1.375311542362214932e-05, 1.374989388222587986e-05, 1.374665032843171093e-05, 1.374338476998229957e-05, 1.374009721465527169e-05, 1.373678767026313913e-05, 1.373345614465343175e-05, 1.373010264570865679e-05, 1.372672718134591431e-05, 1.372332975951753080e-05, 1.371991038821068136e-05, 1.371646907544727282e-05, 1.371300582928422498e-05, 1.370952065781295391e-05, 1.370601356915985812e-05, 1.370248457148657779e-05, 1.369893367298877502e-05, 1.369536088189730781e-05, 1.369176620647780488e-05, 1.368814965503016252e-05, 1.368451123588971346e-05, 1.368085095742584289e-05, 1.367716882804287607e-05, 1.367346485617989035e-05, 1.366973905031028993e-05, 1.366599141894220906e-05, 1.366222197061888473e-05, 1.365843071391724042e-05, 1.365461765744943450e-05, 1.365078280986205892e-05, 1.364692617983568010e-05, 1.364304777608635517e-05, 1.363914760736401071e-05, 1.363522568245294251e-05, 1.363128201017220350e-05, 1.362731659937537168e-05, 1.362332945894975390e-05, 1.361932059781824426e-05, 1.361529002493689650e-05, 1.361123774929690436e-05, 1.360716377992371392e-05, 1.360306812587650348e-05, 1.359895079624966759e-05, 1.359481180017143299e-05, 1.359065114680405511e-05, 1.358646884534435343e-05, 1.358226490502354712e-05, 1.357803933510640462e-05, 1.357379214489291232e-05, 1.356952334371621795e-05, 1.356523294094412474e-05, 1.356092094597866452e-05, 1.355658736825569284e-05, 1.355223221724538873e-05, 1.354785550245213271e-05, 1.354345723341375123e-05, 1.353903741970278386e-05, 1.353459607092564641e-05, 1.353013319672218367e-05, 1.352564880676718564e-05, 1.352114291076889335e-05, 1.351661551846923430e-05, 1.351206663964452048e-05, 1.350749628410470124e-05, 1.350290446169381730e-05, 1.349829118228978224e-05, 1.349365645580387766e-05, 1.348900029218174589e-05, 1.348432270140268527e-05, 1.347962369347976534e-05, 1.347490327845976924e-05, 1.347016146642348004e-05, 1.346539826748486244e-05, 1.346061369179201322e-05, 1.345580774952671562e-05, 1.345098045090426153e-05, 1.344613180617368354e-05, 1.344126182561781764e-05, 1.343637051955242060e-05, 1.343145789832760314e-05, 1.342652397232666613e-05, 1.342156875196655459e-05, 1.341659224769786276e-05, 1.341159447000420732e-05, 1.340657542940313200e-05, 1.340153513644554686e-05, 1.339647360171571979e-05, 1.339139083583146969e-05, 1.338628684944397497e-05, 1.338116165323748052e-05, 1.337601525792995842e-05, 1.337084767427263861e-05, 1.336565891304996322e-05, 1.336044898507994736e-05, 1.335521790121324232e-05, 1.334996567233433160e-05, 1.334469230936075160e-05, 1.333939782324323395e-05, 1.333408222496568516e-05, 1.332874552554541705e-05, 1.332338773603216923e-05, 1.331800886750928141e-05, 1.331260893109383232e-05, 1.330718793793467461e-05, 1.330174589921454562e-05, 1.329628282614927964e-05, 1.329079872998678812e-05, 1.328529362200956855e-05, 1.327976751353141968e-05, 1.327422041590008087e-05, 1.326865234049617668e-05, 1.326306329873254604e-05, 1.325745330205532981e-05, 1.325182236194429268e-05, 1.324617048991056159e-05, 1.324049769749906686e-05, 1.323480399628742919e-05, 1.322908939788520414e-05, 1.322335391393627242e-05, 1.321759755611553478e-05, 1.321182033613169535e-05, 1.320602226572573872e-05, 1.320020335667157870e-05, 1.319436362077480983e-05, 1.318850306987535353e-05, 1.318262171584389035e-05, 1.317671957058477718e-05, 1.317079664603483092e-05, 1.316485295416245940e-05, 1.315888850696993821e-05, 1.315290331649131855e-05, 1.314689739479263897e-05, 1.314087075397301125e-05, 1.313482340616402242e-05, 1.312875536352863872e-05, 1.312266663826382286e-05, 1.311655724259723915e-05, 1.311042718878976063e-05, 1.310427648913432227e-05, 1.309810515595611233e-05, 1.309191320161261308e-05, 1.308570063849359057e-05, 1.307946747902042892e-05, 1.307321373564732290e-05, 1.306693942086041231e-05, 1.306064454717786831e-05, 1.305432912715000190e-05, 1.304799317335946380e-05, 1.304163669842010772e-05, 1.303525971497860144e-05, 1.302886223571343066e-05, 1.302244427333489906e-05, 1.301600584058562967e-05, 1.300954695023930795e-05, 1.300306761510238258e-05, 1.299656784801279999e-05, 1.299004766184037201e-05, 1.298350706948686394e-05, 1.297694608388594711e-05, 1.297036471800232645e-05, 1.296376298483328206e-05, 1.295714089740745802e-05, 1.295049846878525193e-05, 1.294383571205874556e-05, 1.293715264035199781e-05, 1.293044926681968447e-05, 1.292372560464909718e-05, 1.291698166705872209e-05, 1.291021746729863631e-05, 1.290343301865061460e-05, 1.289662833442727897e-05, 1.288980342797332012e-05, 1.288295831266486720e-05, 1.287609300190926252e-05, 1.286920750914532077e-05, 1.286230184784352380e-05, 1.285537603150476871e-05, 1.284843007366223643e-05, 1.284146398788004999e-05, 1.283447778775357440e-05, 1.282747148690983675e-05, 1.282044509900601342e-05, 1.281339863773149854e-05, 1.280633211680651484e-05, 1.279924554998238304e-05, 1.279213895104161668e-05, 1.278501233379800683e-05, 1.277786571209565311e-05, 1.277069909981019865e-05, 1.276351251084915362e-05, 1.275630595914930848e-05, 1.274907945867954093e-05, 1.274183302343968947e-05, 1.273456666745928108e-05, 1.272728040480084314e-05, 1.271997424955570385e-05, 1.271264821584704495e-05, 1.270530231782904448e-05, 1.269793656968566893e-05, 1.269055098563216066e-05, 1.268314557991546475e-05, 1.267572036681146604e-05, 1.266827536062776395e-05, 1.266081057570278653e-05, 1.265332602640419291e-05, 1.264582172713245631e-05, 1.263829769231641029e-05, 1.263075393641669789e-05, 1.262319047392411651e-05, 1.261560731936032606e-05, 1.260800448727606509e-05, 1.260038199225482858e-05, 1.259273984890821781e-05, 1.258507807187944358e-05, 1.257739667584212859e-05, 1.256969567549892675e-05, 1.256197508558467074e-05, 1.255423492086344808e-05, 1.254647519612904662e-05, 1.253869592620634205e-05, 1.253089712595043726e-05, 1.252307881024520715e-05, 1.251524099400698156e-05, 1.250738369217992718e-05, 1.249950691973954757e-05, 1.249161069169140917e-05, 1.248369502306976233e-05, 1.247575992894077362e-05, 1.246780542439963064e-05, 1.245983152457078090e-05, 1.245183824460955135e-05, 1.244382559970079481e-05, 1.243579360505927283e-05, 1.242774227592948289e-05, 1.241967162758603283e-05, 1.241158167533241089e-05, 1.240347243450266458e-05, 1.239534392046034188e-05, 1.238719614859861488e-05, 1.237902913434070333e-05, 1.237084289313829237e-05, 1.236263744047374329e-05, 1.235441279185871455e-05, 1.234616896283426341e-05, 1.233790596897103233e-05, 1.232962382586944375e-05, 1.232132254915839393e-05, 1.231300215449716395e-05, 1.230466265757406945e-05, 1.229630407410682152e-05, 1.228792641984283837e-05, 1.227952971055770545e-05, 1.227111396205740147e-05, 1.226267919017674997e-05, 1.225422541077986321e-05, 1.224575263975994056e-05, 1.223726089303977332e-05, 1.222875018657012184e-05, 1.222022053633200417e-05, 1.221167195833510872e-05, 1.220310446861813479e-05, 1.219451808324887728e-05, 1.218591281832432827e-05, 1.217728868996952007e-05, 1.216864571433937505e-05, 1.215998390761733689e-05, 1.215130328601576697e-05, 1.214260386577620188e-05, 1.213388566316785924e-05, 1.212514869448952998e-05, 1.211639297606975960e-05, 1.210761852426369214e-05, 1.209882535545650572e-05, 1.209001348606215896e-05, 1.208118293252204416e-05, 1.207233371130727604e-05, 1.206346583891720936e-05, 1.205457933187964398e-05, 1.204567420675090610e-05, 1.203675048011624642e-05, 1.202780816858779030e-05, 1.201884728880868145e-05, 1.200986785744786758e-05, 1.200086989120412043e-05, 1.199185340680457212e-05, 1.198281842100344454e-05, 1.197376495058406367e-05, 1.196469301235899675e-05, 1.195560262316687420e-05, 1.194649379987586420e-05, 1.193736655938245801e-05, 1.192822091860960142e-05, 1.191905689451101293e-05, 1.190987450406574240e-05, 1.190067376428243504e-05, 1.189145469219776436e-05, 1.188221730487511083e-05, 1.187296161940655239e-05, 1.186368765291332186e-05, 1.185439542254202747e-05, 1.184508494546886092e-05, 1.183575623889760685e-05, 1.182640932005837910e-05, 1.181704420621135437e-05, 1.180766091464315713e-05, 1.179825946266746269e-05, 1.178883986762660828e-05, 1.177940214689064602e-05, 1.176994631785556929e-05, 1.176047239794767997e-05, 1.175098040461805568e-05, 1.174147035534686622e-05, 1.173194226764167783e-05, 1.172239615903589464e-05, 1.171283204709276853e-05, 1.170324994940162814e-05, 1.169364988357839385e-05, 1.168403186726739892e-05, 1.167439591813990718e-05, 1.166474205389440779e-05, 1.165507029225697776e-05, 1.164538065097965568e-05, 1.163567314784277273e-05, 1.162594780065348222e-05, 1.161620462724590193e-05, 1.160644364548121063e-05, 1.159666487324793948e-05, 1.158686832846058969e-05, 1.157705402906161623e-05, 1.156722199301998958e-05, 1.155737223833165317e-05, 1.154750478301934546e-05, 1.153761964513301835e-05, 1.152771684274819572e-05, 1.151779639396835518e-05, 1.150785831692331034e-05, 1.149790262976955798e-05, 1.148792935069062546e-05, 1.147793849789542228e-05, 1.146793008962072704e-05, 1.145790414412936122e-05, 1.144786067971077700e-05, 1.143779971468088618e-05, 1.142772126738242610e-05, 1.141762535618330792e-05, 1.140751199947914754e-05, 1.139738121569144450e-05, 1.138723302326799026e-05, 1.137706744068290542e-05, 1.136688448643706330e-05, 1.135668417905615864e-05, 1.134646653709344867e-05, 1.133623157912782011e-05, 1.132597932376438045e-05, 1.131570978963471204e-05, 1.130542299539517632e-05, 1.129511895972899078e-05, 1.128479770134668462e-05, 1.127445923898220750e-05, 1.126410359139703428e-05, 1.125373077737866235e-05, 1.124334081573902431e-05, 1.123293372531725439e-05, 1.122250952497779445e-05, 1.121206823361094458e-05, 1.120160987013257680e-05, 1.119113445348480760e-05, 1.118064200263361098e-05, 1.117013253657365166e-05, 1.115960607432206614e-05, 1.114906263492339920e-05, 1.113850223744761850e-05, 1.112792490098892527e-05, 1.111733064466781776e-05, 1.110671948763156382e-05, 1.109609144905010470e-05, 1.108544654812056123e-05, 1.107478480406536360e-05, 1.106410623613035566e-05, 1.105341086358990936e-05, 1.104269870574036018e-05, 1.103196978190503180e-05, 1.102122411143239628e-05, 1.101046171369471377e-05, 1.099968260809019749e-05, 1.098888681404341697e-05, 1.097807435100137791e-05, 1.096724523843768627e-05, 1.095639949585096594e-05, 1.094553714276295467e-05, 1.093465819872295605e-05, 1.092376268330373815e-05, 1.091285061610193677e-05, 1.090192201674037456e-05, 1.089097690486611794e-05, 1.088001530015093792e-05, 1.086903722229166241e-05, 1.085804269100847204e-05, 1.084703172604742089e-05, 1.083600434717916937e-05, 1.082496057419703769e-05, 1.081390042692160868e-05, 1.080282392519656713e-05, 1.079173108888895733e-05, 1.078062193789172581e-05, 1.076949649212166311e-05, 1.075835477151984077e-05, 1.074719679605210609e-05, 1.073602258570705596e-05, 1.072483216049908111e-05, 1.071362554046606898e-05, 1.070240274567016264e-05, 1.069116379619752023e-05, 1.067990871215896041e-05, 1.066863751368775162e-05, 1.065735022094266135e-05, 1.064604685410596735e-05, 1.063472743338380153e-05, 1.062339197900617193e-05, 1.061204051122752183e-05, 1.060067305032453757e-05, 1.058928961659919112e-05, 1.057789023037666825e-05, 1.056647491200596821e-05, 1.055504368186013243e-05, 1.054359656033440645e-05, 1.053213356784915035e-05, 1.052065472484769745e-05, 1.050916005179697260e-05, 1.049764956918743464e-05, 1.048612329753332538e-05, 1.047458125737105521e-05, 1.046302346926170855e-05, 1.045144995378930918e-05, 1.043986073156118617e-05, 1.042825582320790944e-05, 1.041663524938379465e-05, 1.040499903076484829e-05, 1.039334718805182206e-05, 1.038167974196800211e-05, 1.036999671325979693e-05, 1.035829812269713539e-05, 1.034658399107159315e-05, 1.033485433919854749e-05, 1.032310918791795319e-05, 1.031134855808962458e-05, 1.029957247059823980e-05, 1.028778094635136887e-05, 1.027597400627781527e-05, 1.026415167133067366e-05, 1.025231396248526826e-05, 1.024046090073963052e-05, 1.022859250711485663e-05, 1.021670880265330328e-05, 1.020480980842078491e-05, 1.019289554550723435e-05, 1.018096603502202725e-05, 1.016902129809903036e-05, 1.015706135589458730e-05, 1.014508622958587192e-05, 1.013309594037342772e-05, 1.012109050948166925e-05, 1.010906995815423368e-05, 1.009703430765903070e-05, 1.008498357928618093e-05, 1.007291779434595590e-05, 1.006083697417432442e-05, 1.004874114012572571e-05, 1.003663031357883598e-05, 1.002450451593422216e-05, 1.001236376861294091e-05, 1.000020809305903398e-05, 9.988037510739980511e-06, 9.975852043142107838e-06, 9.963651711775495779e-06, 9.951436538172223298e-06, 9.939206543883869749e-06, 9.926961750487501708e-06, 9.914702179578125911e-06, 9.902427852774582905e-06, 9.890138791716750148e-06, 9.877835018066065474e-06, 9.865516553505501683e-06, 9.853183419740115418e-06, 9.840835638494772035e-06, 9.828473231517347386e-06, 9.816096220577159116e-06, 9.803704627462696614e-06, 9.791298473986967483e-06, 9.778877781982596611e-06, 9.766442573302478383e-06, 9.753992869822241548e-06, 9.741528693438121476e-06, 9.729050066067500556e-06, 9.716557009649350358e-06, 9.704049546142112348e-06, 9.691527697526814973e-06, 9.678991485805445665e-06, 9.666440932998818009e-06, 9.653876061151782690e-06, 9.641296892328484112e-06, 9.628703448612819485e-06, 9.616095752110983316e-06, 9.603473824949466714e-06, 9.590837689275384347e-06, 9.578187367256589638e-06, 9.565522881082027130e-06, 9.552844252959611515e-06, 9.540151505119487019e-06, 9.527444659811615051e-06, 9.514723739306605988e-06, 9.501988765895917383e-06, 9.489239761889812613e-06, 9.476476749620513538e-06, 9.463699751440023627e-06, 9.450908789720632785e-06, 9.438103886854841125e-06, 9.425285065255890903e-06, 9.412452347355567620e-06, 9.399605755607369620e-06, 9.386745312484383728e-06, 9.373871040479696916e-06, 9.360982962106958723e-06, 9.348081099898136625e-06, 9.335165476406761864e-06, 9.322236114205676336e-06, 9.309293035887610272e-06, 9.296336264065116169e-06, 9.283365821370993999e-06, 9.270381730456171931e-06, 9.257384013992362633e-06, 9.244372694672547765e-06, 9.231347795206078750e-06, 9.218309338324001217e-06, 9.205257346776944197e-06, 9.192191843333392175e-06, 9.179112850782890264e-06, 9.166020391933848695e-06, 9.152914489614110327e-06, 9.139795166671357227e-06, 9.126662445970908381e-06, 9.113516350398421731e-06, 9.100356902860536222e-06, 9.087184126279633758e-06, 9.073998043599502456e-06, 9.060798677783041193e-06, 9.047586051810496078e-06, 9.034360188682796073e-06, 9.021121111419360867e-06, 9.007868843058524397e-06, 8.994603406657487410e-06, 8.981324825292922247e-06, 8.968033122057989594e-06, 8.954728320068692919e-06, 8.941410442455707995e-06, 8.928079512370750895e-06, 8.914735552984204603e-06, 8.901378587483336859e-06, 8.888008639075102140e-06, 8.874625730986795575e-06, 8.861229886460736963e-06, 8.847821128759979773e-06, 8.834399481166017385e-06, 8.820964966976443578e-06, 8.807517609511247684e-06, 8.794057432104594979e-06, 8.780584458111298011e-06, 8.767098710903802863e-06, 8.753600213872709228e-06, 8.740088990426787347e-06, 8.726565063993450659e-06, 8.713028458016512854e-06, 8.699479195959462503e-06, 8.685917301303814733e-06, 8.672342797546683628e-06, 8.658755708206572550e-06, 8.645156056818142860e-06, 8.631543866932635744e-06, 8.617919162120869011e-06, 8.604281965970795947e-06, 8.590632302088108404e-06, 8.576970194096678946e-06, 8.563295665636290807e-06, 8.549608740366046347e-06, 8.535909441962551014e-06, 8.522197794117604335e-06, 8.508473820543974983e-06, 8.494737544970089882e-06, 8.480988991140544123e-06, 8.467228182819045245e-06, 8.453455143786022915e-06, 8.439669897839116813e-06, 8.425872468793222376e-06, 8.412062880480993931e-06, 8.398241156750393388e-06, 8.384407321468327393e-06, 8.370561398518053717e-06, 8.356703411799948667e-06, 8.342833385231857759e-06, 8.328951342746807030e-06, 8.315057308296499596e-06, 8.301151305848877889e-06, 8.287233359388709801e-06, 8.273303492917465023e-06, 8.259361730453989277e-06, 8.245408096032003878e-06, 8.231442613703619229e-06, 8.217465307536968205e-06, 8.203476201616809245e-06, 8.189475320044938009e-06, 8.175462686937817378e-06, 8.161438326430192595e-06, 8.147402262672560325e-06, 8.133354519831820874e-06, 8.119295122091103699e-06, 8.105224093650490775e-06, 8.091141458724414510e-06, 8.077047241544762964e-06, 8.062941466361333865e-06, 8.048824157436420369e-06, 8.034695339050772480e-06, 8.020555035501208418e-06, 8.006403271098639336e-06, 7.992240070171828455e-06, 7.978065457064750012e-06, 7.963879456137246560e-06, 7.949682091765599868e-06, 7.935473388340013538e-06, 7.921253370267672487e-06, 7.907022061973234230e-06, 7.892779487893424807e-06, 7.878525672482920579e-06, 7.864260640212017195e-06, 7.849984415564678029e-06, 7.835697023042191664e-06, 7.821398487160662988e-06, 7.807088832451619659e-06, 7.792768083461888449e-06, 7.778436264754311826e-06, 7.764093400904481800e-06, 7.749739516507538206e-06, 7.735374636169484923e-06, 7.720998784513981387e-06, 7.706611986179757442e-06, 7.692214265818095962e-06, 7.677805648099131385e-06, 7.663386157706017046e-06, 7.648955819335623131e-06, 7.634514657701608020e-06, 7.620062697532444698e-06, 7.605599963568933021e-06, 7.591126480571065765e-06, 7.576642273309071253e-06, 7.562147366570505558e-06, 7.547641785157476782e-06, 7.533125553884204749e-06, 7.518598697583264489e-06, 7.504061241099793377e-06, 7.489513209292235673e-06, 7.474954627035267333e-06, 7.460385519218042646e-06, 7.445805910741463400e-06, 7.431215826524601088e-06, 7.416615291498823579e-06, 7.402004330608494769e-06, 7.387382968814039147e-06, 7.372751231089399846e-06, 7.358109142422623946e-06, 7.343456727816425749e-06, 7.328794012285628739e-06, 7.314121020860926410e-06, 7.299437778586936632e-06, 7.284744310519639373e-06, 7.270040641732654063e-06, 7.255326797311473840e-06, 7.240602802354131318e-06, 7.225868681974208093e-06, 7.211124461298365646e-06, 7.196370165466891676e-06, 7.181605819634298953e-06, 7.166831448966706293e-06, 7.152047078645627337e-06, 7.137252733865505680e-06, 7.122448439834074869e-06, 7.107634221772515943e-06, 7.092810104915951256e-06, 7.077976114510861876e-06, 7.063132275818931417e-06, 7.048278614114378732e-06, 7.033415154684555076e-06, 7.018541922830024569e-06, 7.003658943864974163e-06, 6.988766243114719127e-06, 6.973863845919505382e-06, 6.958951777631881154e-06, 6.944030063617300910e-06, 6.929098729254687789e-06, 6.914157799933911136e-06, 6.899207301059504130e-06, 6.884247258048103206e-06, 6.869277696329034196e-06, 6.854298641344260666e-06, 6.839310118548995472e-06, 6.824312153409085119e-06, 6.809304771404841742e-06, 6.794287998028394435e-06, 6.779261858784271155e-06, 6.764226379189446167e-06, 6.749181584773869428e-06, 6.734127501077807762e-06, 6.719064153655794565e-06, 6.703991568073881188e-06, 6.688909769910336585e-06, 6.673818784756186874e-06, 6.658718638212611557e-06, 6.643609355894070765e-06, 6.628490963429097234e-06, 6.613363486454168022e-06, 6.598226950620306286e-06, 6.583081381590476651e-06, 6.567926805037437137e-06, 6.552763246647708357e-06, 6.537590732118908748e-06, 6.522409287160352580e-06, 6.507218937493031316e-06, 6.492019708850176049e-06, 6.476811626973962536e-06, 6.461594717622724538e-06, 6.446369006561638993e-06, 6.431134519569977468e-06, 6.415891282438393110e-06, 6.400639320966260968e-06, 6.385378660968248421e-06, 6.370109328268257201e-06, 6.354831348700163702e-06, 6.339544748110938598e-06, 6.324249552358719000e-06, 6.308945787310064067e-06, 6.293633478847287771e-06, 6.278312652858990763e-06, 6.262983335247414311e-06, 6.247645551925761985e-06, 6.232299328815393434e-06, 6.216944691852528654e-06, 6.201581666982166291e-06, 6.186210280158729925e-06, 6.170830557349320679e-06, 6.155442524531731773e-06, 6.140046207691655856e-06, 6.124641632830106708e-06, 6.109228825953868947e-06, 6.093807813082923114e-06, 6.078378620247027055e-06, 6.062941273486329166e-06, 6.047495798851310800e-06, 6.032042222403442714e-06, 6.016580570212506752e-06, 6.001110868360436295e-06, 5.985633142939394340e-06, 5.970147420048951184e-06, 5.954653725802859001e-06, 5.939152086322856637e-06, 5.923642527739360790e-06, 5.908125076194725394e-06, 5.892599757840634450e-06, 5.877066598838586531e-06, 5.861525625360566477e-06, 5.845976863586365384e-06, 5.830420339707517613e-06, 5.814856079924572496e-06, 5.799284110447743164e-06, 5.783704457496883678e-06, 5.768117147302049763e-06, 5.752522206100800162e-06, 5.736919660142204795e-06, 5.721309535684074963e-06, 5.705691858993668078e-06, 5.690066656347517411e-06, 5.674433954032209665e-06, 5.658793778341471185e-06, 5.643146155580370087e-06, 5.627491112062411782e-06, 5.611828674110222531e-06, 5.596158868056241473e-06, 5.580481720239857653e-06, 5.564797257011506271e-06, 5.549105504729938695e-06, 5.533406489762762028e-06, 5.517700238486473824e-06, 5.501986777287058411e-06, 5.486266132557245886e-06, 5.470538330700534674e-06, 5.454803398128421735e-06, 5.439061361261064939e-06, 5.423312246527223776e-06, 5.407556080364884467e-06, 5.391792889218486775e-06, 5.376022699543006707e-06, 5.360245537801180786e-06, 5.344461430464073563e-06, 5.328670404011775571e-06, 5.312872484930677575e-06, 5.297067699716720636e-06, 5.281256074876142349e-06, 5.265437636919206255e-06, 5.249612412367045022e-06, 5.233780427748856765e-06, 5.217941709599103064e-06, 5.202096284465089905e-06, 5.186244178897209014e-06, 5.170385419456489160e-06, 5.154520032711837362e-06, 5.138648045237881502e-06, 5.122769483618399110e-06, 5.106884374446950102e-06, 5.090992744320646846e-06, 5.075094619846943140e-06, 5.059190027640938946e-06, 5.043278994322459822e-06, 5.027361546523005982e-06, 5.011437710879462231e-06, 4.995507514034679869e-06, 4.979570982641024922e-06, 4.963628143358147048e-06, 4.947679022850196195e-06, 4.931723647793417939e-06, 4.915762044866382962e-06, 4.899794240757567149e-06, 4.883820262162587720e-06, 4.867840135781259792e-06, 4.851853888324661476e-06, 4.835861546508738784e-06, 4.819863137054887536e-06, 4.803858686693549017e-06, 4.787848222161978895e-06, 4.771831770201385937e-06, 4.755809357564692531e-06, 4.739781011006553246e-06, 4.723746757291116196e-06, 4.707706623188424000e-06, 4.691660635475088014e-06, 4.675608820934229892e-06, 4.659551206356192242e-06, 4.643487818535585024e-06, 4.627418684275538505e-06, 4.611343830385566189e-06, 4.595263283678601054e-06, 4.579177070978098768e-06, 4.563085219111602779e-06, 4.546987754911404155e-06, 4.530884705218038985e-06, 4.514776096877403378e-06, 4.498661956741463286e-06, 4.482542311668827937e-06, 4.466417188521978348e-06, 4.450286614171367809e-06, 4.434150615492647853e-06, 4.418009219367240001e-06, 4.401862452682358630e-06, 4.385710342331614913e-06, 4.369552915212236851e-06, 4.353390198229135883e-06, 4.337222218292153179e-06, 4.321049002316644940e-06, 4.304870577223484941e-06, 4.288686969939704884e-06, 4.272498207395618726e-06, 4.256304316529029888e-06, 4.240105324282379298e-06, 4.223901257603334075e-06, 4.207692143445558334e-06, 4.191478008765729930e-06, 4.175258880527836615e-06, 4.159034785700230054e-06, 4.142805751256305145e-06, 4.126571804174509339e-06, 4.110332971438945726e-06, 4.094089280036498204e-06, 4.077840756961038693e-06, 4.061587429210616681e-06, 4.045329323788009792e-06, 4.029066467701484425e-06, 4.012798887961876029e-06, 3.996526611586779376e-06, 3.980249665597699990e-06, 3.963968077020714830e-06, 3.947681872886403685e-06, 3.931391080230560675e-06, 3.915095726091238113e-06, 3.898795837512320134e-06, 3.882491441544196082e-06, 3.866182565237212955e-06, 3.849869235648880257e-06, 3.833551479840875743e-06, 3.817229324876197694e-06, 3.800902797826984719e-06, 3.784571925764404733e-06, 3.768236735766551411e-06, 3.751897254915494403e-06, 3.735553510295083398e-06, 3.719205528994500159e-06, 3.702853338108944192e-06, 3.686496964733097892e-06, 3.670136435968268296e-06, 3.653771778919530469e-06, 3.637403020692694276e-06, 3.621030188402280471e-06, 3.604653309161312250e-06, 3.588272410089274828e-06, 3.571887518308392296e-06, 3.555498660945086220e-06, 3.539105865126263939e-06, 3.522709157987295074e-06, 3.506308566661768784e-06, 3.489904118289450367e-06, 3.473495840013325964e-06, 3.457083758976690038e-06, 3.440667902330283740e-06, 3.424248297225794781e-06, 3.407824970816496094e-06, 3.391397950260860971e-06, 3.374967262720290897e-06, 3.358532935356216156e-06, 3.342094995338024061e-06, 3.325653469832813238e-06, 3.309208386013415035e-06, 3.292759771054644976e-06, 3.276307652133999441e-06, 3.259852056431645930e-06, 3.243393011131052406e-06, 3.226930543416101880e-06, 3.210464680475321643e-06, 3.193995449499030885e-06, 3.177522877679941241e-06, 3.161046992213152976e-06, 3.144567820296833465e-06, 3.128085389129238173e-06, 3.111599725913080922e-06, 3.095110857852523115e-06, 3.078618812153894134e-06, 3.062123616026345253e-06, 3.045625296678954477e-06, 3.029123881324963401e-06, 3.012619397178873582e-06, 2.996111871457131364e-06, 2.979601331378063081e-06, 2.963087804162578095e-06, 2.946571317031177073e-06, 2.930051897208310821e-06, 2.913529571919445314e-06, 2.897004368391669018e-06, 2.880476313853699244e-06, 2.863945435536575867e-06, 2.847411760670681042e-06, 2.830875316490048480e-06, 2.814336130229450086e-06, 2.797794229125061294e-06, 2.781249640415124300e-06, 2.764702391337001235e-06, 2.748152509131511391e-06, 2.731600021039980589e-06, 2.715044954304883648e-06, 2.698487336169846931e-06, 2.681927193880306906e-06, 2.665364554680554433e-06, 2.648799445818066485e-06, 2.632231894540537723e-06, 2.615661928096586919e-06, 2.599089573736406634e-06, 2.582514858708835871e-06, 2.565937810265668929e-06, 2.549358455658700955e-06, 2.532776822140430980e-06, 2.516192936963977218e-06, 2.499606827383789839e-06, 2.483018520652685089e-06, 2.466428044025453647e-06, 2.449835424759533169e-06, 2.433240690108395929e-06, 2.416643867328817626e-06, 2.400044983677911503e-06, 2.383444066410121381e-06, 2.366841142785296418e-06, 2.350236240058326397e-06, 2.333629385487192346e-06, 2.317020606329984137e-06, 2.300409929842666437e-06, 2.283797383282671397e-06, 2.267182993909621172e-06, 2.250566788978650760e-06, 2.233948795747736955e-06, 2.217329041474683754e-06, 2.200707553414148853e-06, 2.184084358825712479e-06, 2.167459484963483025e-06, 2.150832959084201464e-06, 2.134204808443483486e-06, 2.117575060297251403e-06, 2.100943741898016955e-06, 2.084310880502930230e-06, 2.067676503363442479e-06, 2.051040637733324977e-06, 2.034403310865729819e-06, 2.017764550010135939e-06, 2.001124382419742441e-06, 1.984482835344743157e-06, 1.967839936033027142e-06, 1.951195711733834043e-06, 1.934550189695499725e-06, 1.917903397162442102e-06, 1.901255361383240560e-06, 1.884606109600261075e-06, 1.867955669057748977e-06, 1.851304066998796998e-06, 1.834651330662371335e-06, 1.817997487290660511e-06, 1.801342564122348872e-06, 1.784686588393341652e-06, 1.768029587340408904e-06, 1.751371588198180440e-06, 1.734712618199830022e-06, 1.718052704577060542e-06, 1.701391874560775290e-06, 1.684730155378084755e-06, 1.668067574256692350e-06, 1.651404158421897396e-06, 1.634739935097292443e-06, 1.618074931505458894e-06, 1.601409174864956230e-06, 1.584742692394726154e-06, 1.568075511311079062e-06, 1.551407658828407455e-06, 1.534739162159114578e-06, 1.518070048514329949e-06, 1.501400345100913830e-06, 1.484730079125818383e-06, 1.468059277793121791e-06, 1.451387968304703548e-06, 1.434716177860943056e-06, 1.418043933657713074e-06, 1.401371262890785567e-06, 1.384698192752820289e-06, 1.368024750434061044e-06, 1.351350963122290368e-06, 1.334676858003528337e-06, 1.318002462259036605e-06, 1.301327803069694180e-06, 1.284652907613010359e-06, 1.267977803063817818e-06, 1.251302516594218821e-06, 1.234627075374293764e-06, 1.217951506569083196e-06, 1.201275837343015475e-06, 1.184600094856856177e-06, 1.167924306268439294e-06, 1.151248498733346137e-06, 1.134572699401910011e-06, 1.117896935422871164e-06, 1.101221233944074742e-06, 1.084545622105748948e-06, 1.067870127047894131e-06, 1.051194775907251049e-06, 1.034519595815037590e-06, 1.017844613901376429e-06, 1.001169857292245711e-06, 9.844953531102117305e-07, 9.678211284743605352e-07, 9.511472105010235165e-07, 9.344736262999929711e-07, 9.178004029826546767e-07, 9.011275676515627158e-07, 8.844551474085461109e-07, 8.677831693517051395e-07, 8.511116605731332391e-07, 8.344406481625958830e-07, 8.177701592082118067e-07, 8.011002207897472595e-07, 7.844308599859841325e-07, 7.677621038717099215e-07, 7.510939795147064183e-07, 7.344265139838655575e-07, 7.177597343387587347e-07, 7.010936676377667352e-07, 6.844283409350404730e-07, 6.677637812782647189e-07, 6.511000157122985415e-07, 6.344370712798868154e-07, 6.177749750149356260e-07, 6.011137539498838923e-07, 5.844534351127043400e-07, 5.677940455238765236e-07, 5.511356122037777187e-07, 5.344781621659461508e-07, 5.178217224177934561e-07, 5.011663199642638639e-07, 4.845119818055667951e-07, 4.678587349341631721e-07, 4.512066063428870882e-07, 4.345556230145135911e-07, 4.179058119298759056e-07, 4.012572000648514252e-07, 3.846098143873600926e-07, 3.679636818647292981e-07, 3.513188294569780198e-07, 3.346752841175200199e-07, 3.180330727968186334e-07, 3.013922224393870002e-07, 2.847527599844809387e-07, 2.681147123667981183e-07, 2.514781065134692395e-07, 2.348429693484620495e-07, 2.182093277895757514e-07, 2.015772087491357040e-07, 1.849466391339513081e-07, 1.683176458460147556e-07, 1.516902557794915217e-07, 1.350644958251257039e-07, 1.184403928672312946e-07, 1.018179737843907450e-07, 8.519726544941147547e-08, 6.857829473002349974e-08, 5.196108848587238508e-08, 3.534567357292238774e-08, 1.873207684044938002e-08, 2.120325131738584213e-09, -1.448955471521754549e-08, -3.109753587072635694e-08, -4.770359150899183908e-08, -6.430769481112213603e-08, -8.090981896443071065e-08, -9.750993716248049443e-08, -1.141080226043853301e-07, -1.307040484978157080e-07, -1.472979880545979266e-07, -1.638898144937205833e-07, -1.804795010406340517e-07, -1.970670209272974652e-07, -2.136523473914769770e-07, -2.302354536797533357e-07, -2.468163130431218139e-07, -2.633948987399936693e-07, -2.799711840355049132e-07, -2.965451422008121873e-07, -3.131167465160993873e-07, -3.296859702669199095e-07, -3.462527867434999132e-07, -3.628171692474379809e-07, -3.793790910843530842e-07, -3.959385255668831859e-07, -4.124954460169487243e-07, -4.290498257613568825e-07, -4.456016381348025729e-07, -4.621508564791703770e-07, -4.786974541435817666e-07, -4.952414044836916965e-07, -5.117826808654321719e-07, -5.283212566569228728e-07, -5.448571052388635064e-07, -5.613901999964394546e-07, -5.779205143223272587e-07, -5.944480216189531271e-07, -6.109726952948361876e-07, -6.274945087638998501e-07, -6.440134354521575436e-07, -6.605294487903689399e-07, -6.770425222170383453e-07, -6.935526291814105493e-07, -7.100597431353887546e-07, -7.265638375439181419e-07, -7.430648858768963875e-07, -7.595628616121967242e-07, -7.760577382378802854e-07, -7.925494892485892267e-07, -8.090380881448305602e-07, -8.255235084396590320e-07, -8.420057236513520876e-07, -8.584847073063940748e-07, -8.749604329424672228e-07, -8.914328741011308422e-07, -9.079020043344904394e-07, -9.243677972045009254e-07, -9.408302262793258570e-07, -9.572892651363327571e-07, -9.737448873613937825e-07, -9.901970665481823697e-07, -1.006645776301187401e-06, -1.023090990231303022e-06, -1.039532681958106736e-06, -1.055970825112826774e-06, -1.072405393331039821e-06, -1.088836360259331451e-06, -1.105263699554587791e-06, -1.121687384880381873e-06, -1.138107389909942478e-06, -1.154523688325467621e-06, -1.170936253817428076e-06, -1.187345060087544906e-06, -1.203750080844436144e-06, -1.220151289806583942e-06, -1.236548660701641702e-06, -1.252942167266487227e-06, -1.269331783246524976e-06, -1.285717482398659365e-06, -1.302099238486931906e-06, -1.318477025285509547e-06, -1.334850816577986286e-06, -1.351220586157407528e-06, -1.367586307825625913e-06, -1.383947955396217443e-06, -1.400305502690169022e-06, -1.416658923538818084e-06, -1.433008191783191698e-06, -1.449353281273303103e-06, -1.465694165871109129e-06, -1.482030819446185666e-06, -1.498363215878669410e-06, -1.514691329058593156e-06, -1.531015132885903373e-06, -1.547334601269787022e-06, -1.563649708131634692e-06, -1.579960427400692570e-06, -1.596266733017014133e-06, -1.612568598930811960e-06, -1.628865999102448415e-06, -1.645158907501784066e-06, -1.661447298111112654e-06, -1.677731144920848000e-06, -1.694010421932469777e-06, -1.710285103157820894e-06, -1.726555162618457185e-06, -1.742820574348580265e-06, -1.759081312391424719e-06, -1.775337350798594451e-06, -1.791588663636639054e-06, -1.807835224979833903e-06, -1.824077008913113017e-06, -1.840313989534303523e-06, -1.856546140949802196e-06, -1.872773437277525879e-06, -1.888995852646206546e-06, -1.905213361194741624e-06, -1.921425937075120281e-06, -1.937633554448814219e-06, -1.953836187486121860e-06, -1.970033810372750212e-06, -1.986226397302554317e-06, -2.002413922480520078e-06, -2.018596360124963579e-06, -2.034773684463954910e-06, -2.050945869734616404e-06, -2.067112890189717633e-06, -2.083274720090436664e-06, -2.099431333709318749e-06, -2.115582705333213829e-06, -2.131728809255329676e-06, -2.147869619785452193e-06, -2.164005111241965509e-06, -2.180135257954842863e-06, -2.196260034267817966e-06, -2.212379414534843133e-06, -2.228493373119361261e-06, -2.244601884400901250e-06, -2.260704922767857470e-06, -2.276802462620435742e-06, -2.292894478373581106e-06, -2.308980944449066114e-06, -2.325061835285648867e-06, -2.341137125331177824e-06, -2.357206789046216680e-06, -2.373270800903387914e-06, -2.389329135387403284e-06, -2.405381766994392126e-06, -2.421428670234793553e-06, -2.437469819629117476e-06, -2.453505189710126982e-06, -2.469534755025724605e-06, -2.485558490131870277e-06, -2.501576369599008196e-06, -2.517588368011473898e-06, -2.533594459963861336e-06, -2.549594620063989189e-06, -2.565588822932219846e-06, -2.581577043200747053e-06, -2.597559255516553327e-06, -2.613535434537091359e-06, -2.629505554932520182e-06, -2.645469591388598635e-06, -2.661427518599544451e-06, -2.677379311274545400e-06, -2.693324944137077003e-06, -2.709264391921344149e-06, -2.725197629375199967e-06, -2.741124631259468626e-06, -2.757045372347988533e-06, -2.772959827426913953e-06, -2.788867971297643205e-06, -2.804769778772576293e-06, -2.820665224677958399e-06, -2.836554283853263666e-06, -2.852436931150506560e-06, -2.868313141437112039e-06, -2.884182889591689711e-06, -2.900046150506931526e-06, -2.915902899088942204e-06, -2.931753110257253630e-06, -2.947596758944193393e-06, -2.963433820097714721e-06, -2.979264268677219340e-06, -2.995088079656418328e-06, -3.010905228022654909e-06, -3.026715688776241655e-06, -3.042519436933361144e-06, -3.058316447521787179e-06, -3.074106695583832459e-06, -3.089890156175636225e-06, -3.105666804367200260e-06, -3.121436615241742178e-06, -3.137199563898560513e-06, -3.152955625449535204e-06, -3.168704775018422863e-06, -3.184446987747337420e-06, -3.200182238789650725e-06, -3.215910503312874569e-06, -3.231631756500844339e-06, -3.247345973549499947e-06, -3.263053129669733130e-06, -3.278753200086767000e-06, -3.294446160039447499e-06, -3.310131984783103406e-06, -3.325810649586098914e-06, -3.341482129729123395e-06, -3.357146400511599621e-06, -3.372803437244649585e-06, -3.388453215254012952e-06, -3.404095709882114664e-06, -3.419730896483918715e-06, -3.435358750429811454e-06, -3.450979247104884990e-06, -3.466592361908992675e-06, -3.482198070256114679e-06, -3.497796347577859619e-06, -3.513387169315818396e-06, -3.528970510931409683e-06, -3.544546347898220626e-06, -3.560114655704791471e-06, -3.575675409856856382e-06, -3.591228585873772354e-06, -3.606774159287923329e-06, -3.622312105651081829e-06, -3.637842400527333695e-06, -3.653365019496061762e-06, -3.668879938154669065e-06, -3.684387132110977990e-06, -3.699886576993036803e-06, -3.715378248441487030e-06, -3.730862122113092622e-06, -3.746338173680054283e-06, -3.761806378830065796e-06, -3.777266713265654184e-06, -3.792719152707006263e-06, -3.808163672887844008e-06, -3.823600249557498944e-06, -3.839028858483785700e-06, -3.854449475446066929e-06, -3.869862076241541680e-06, -3.885266636684585986e-06, -3.900663132603341008e-06, -3.916051539842485381e-06, -3.931431834262639746e-06, -3.946803991739630681e-06, -3.962167988167406185e-06, -3.977523799453793740e-06, -3.992871401522714453e-06, -4.008210770316941846e-06, -4.023541881791229870e-06, -4.038864711918564866e-06, -4.054179236689563314e-06, -4.069485432108951571e-06, -4.084783274198478816e-06, -4.100072738996196223e-06, -4.115353802556489148e-06, -4.130626440949467269e-06, -4.145890630263748780e-06, -4.161146346602320094e-06, -4.176393566085378489e-06, -4.191632264849685815e-06, -4.206862419047840903e-06, -4.222084004851156923e-06, -4.237296998445547358e-06, -4.252501376034251747e-06, -4.267697113837283421e-06, -4.282884188091405792e-06, -4.298062575049475894e-06, -4.313232250983277714e-06, -4.328393192179386127e-06, -4.343545374941984131e-06, -4.358688775592199616e-06, -4.373823370467444682e-06, -4.388949135924211693e-06, -4.404066048334010058e-06, -4.419174084086123329e-06, -4.434273219586960366e-06, -4.449363431260068898e-06, -4.464444695545580708e-06, -4.479516988902837442e-06, -4.494580287807158327e-06, -4.509634568749064292e-06, -4.524679808240590901e-06, -4.539715982808371484e-06, -4.554743068996493333e-06, -4.569761043368515333e-06, -4.584769882503475048e-06, -4.599769562998600077e-06, -4.614760061468698185e-06, -4.629741354545476293e-06, -4.644713418880363637e-06, -4.659676231141059261e-06, -4.674629768010967895e-06, -4.689574006195267251e-06, -4.704508922414262200e-06, -4.719434493406024980e-06, -4.734350695928539029e-06, -4.749257506755658643e-06, -4.764154902679821174e-06, -4.779042860511415990e-06, -4.793921357078847155e-06, -4.808790369227881215e-06, -4.823649873825025166e-06, -4.838499847750190297e-06, -4.853340267906162871e-06, -4.868171111211170564e-06, -4.882992354601672584e-06, -4.897803975035081196e-06, -4.912605949483018491e-06, -4.927398254937481087e-06, -4.942180868410126087e-06, -4.956953766928990515e-06, -4.971716927540582643e-06, -4.986470327312494242e-06, -5.001213943326131339e-06, -5.015947752686136621e-06, -5.030671732513048191e-06, -5.045385859945959259e-06, -5.060090112145313345e-06, -5.074784466286205946e-06, -5.089468899564424727e-06, -5.104143389195866762e-06, -5.118807912413163956e-06, -5.133462446467779447e-06, -5.148106968632700332e-06, -5.162741456195757109e-06, -5.177365886465717240e-06, -5.191980236771658341e-06, -5.206584484459601228e-06, -5.221178606895272940e-06, -5.235762581463446896e-06, -5.250336385567321179e-06, -5.264899996631223954e-06, -5.279453392096607005e-06, -5.293996549424208208e-06, -5.308529446096535033e-06, -5.323052059611453352e-06, -5.337564367488083636e-06, -5.352066347266202098e-06, -5.366557976502981316e-06, -5.381039232775630434e-06, -5.395510093680825950e-06, -5.409970536834035791e-06, -5.424420539872183228e-06, -5.438860080449800500e-06, -5.453289136241626662e-06, -5.467707684941966387e-06, -5.482115704264850895e-06, -5.496513171943234123e-06, -5.510900065731834519e-06, -5.525276363403080298e-06, -5.539642042749865683e-06, -5.553997081584867352e-06, -5.568341457740615588e-06, -5.582675149068888652e-06, -5.596998133443297924e-06, -5.611310388755469482e-06, -5.625611892917665669e-06, -5.639902623862120169e-06, -5.654182559540512849e-06, -5.668451677926524409e-06, -5.682709957011989161e-06, -5.696957374809574190e-06, -5.711193909352083944e-06, -5.725419538692597451e-06, -5.739634240903746647e-06, -5.753837994080404014e-06, -5.768030776335783683e-06, -5.782212565804145168e-06, -5.796383340640092018e-06, -5.810543079018671771e-06, -5.824691759134700018e-06, -5.838829359205462443e-06, -5.852955857466760021e-06, -5.867071232175622914e-06, -5.881175461609659102e-06, -5.895268524066431815e-06, -5.909350397866103123e-06, -5.923421061348209278e-06, -5.937480492871104219e-06, -5.951528670817691438e-06, -5.965565573589120365e-06, -5.979591179607341866e-06, -5.993605467317088605e-06, -6.007608415182020195e-06, -6.021600001687333757e-06, -6.035580205339262478e-06, -6.049549004664253981e-06, -6.063506378211770626e-06, -6.077452304550977603e-06, -6.091386762270247423e-06, -6.105309729982841814e-06, -6.119221186320633508e-06, -6.133121109936675301e-06, -6.147009479507738601e-06, -6.160886273728064873e-06, -6.174751471315002641e-06, -6.188605051008522137e-06, -6.202446991567988954e-06, -6.216277271774168124e-06, -6.230095870431691529e-06, -6.243902766362289255e-06, -6.257697938413502177e-06, -6.271481365451841323e-06, -6.285253026365367081e-06, -6.299012900066198966e-06, -6.312760965484294161e-06, -6.326497201573076045e-06, -6.340221587308925136e-06, -6.353934101687977299e-06, -6.367634723728118512e-06, -6.381323432471470057e-06, -6.395000206977551277e-06, -6.408665026332088712e-06, -6.422317869640115323e-06, -6.435958716029202773e-06, -6.449587544648801584e-06, -6.463204334670332620e-06, -6.476809065286531482e-06, -6.490401715713983677e-06, -6.503982265189471365e-06, -6.517550692971872409e-06, -6.531106978344549007e-06, -6.544651100609355777e-06, -6.558183039092133618e-06, -6.571702773142133728e-06, -6.585210282128979289e-06, -6.598705545445182860e-06, -6.612188542505498387e-06, -6.625659252746412989e-06, -6.639117655628566082e-06, -6.652563730633197772e-06, -6.665997457264473108e-06, -6.679418815049063657e-06, -6.692827783536062789e-06, -6.706224342296478314e-06, -6.719608470925692263e-06, -6.732980149039743256e-06, -6.746339356277991274e-06, -6.759686072302290104e-06, -6.773020276797226204e-06, -6.786341949469405497e-06, -6.799651070050027513e-06, -6.812947618291168600e-06, -6.826231573968288297e-06, -6.839502916879694011e-06, -6.852761626845841367e-06, -6.866007683711936290e-06, -6.879241067344244489e-06, -6.892461757632545305e-06, -6.905669734489563355e-06, -6.918864977851049000e-06, -6.932047467675152387e-06, -6.945217183944839188e-06, -6.958374106664405057e-06, -6.971518215861788033e-06, -6.984649491588093353e-06, -6.997767913917607004e-06, -7.010873462947188403e-06, -7.023966118798691212e-06, -7.037045861615507449e-06, -7.050112671564835840e-06, -7.063166528837227808e-06, -7.076207413645955590e-06, -7.089235306229458463e-06, -7.102250186848422180e-06, -7.115252035785120822e-06, -7.128240833348922511e-06, -7.141216559870240752e-06, -7.154179195703088235e-06, -7.167128721227318082e-06, -7.180065116842259244e-06, -7.192988362975008956e-06, -7.205898440073889401e-06, -7.218795328610908346e-06, -7.231679009083577720e-06, -7.244549462011904106e-06, -7.257406667937880520e-06, -7.270250607430868462e-06, -7.283081261081650046e-06, -7.295898609504827646e-06, -7.308702633341246415e-06, -7.321493313252166688e-06, -7.334270629924481717e-06, -7.347034564070233157e-06, -7.359785096423673566e-06, -7.372522207743096833e-06, -7.385245878813163292e-06, -7.397956090438491066e-06, -7.410652823451964616e-06, -7.423336058708173621e-06, -7.436005777085914267e-06, -7.448661959490440661e-06, -7.461304586847834606e-06, -7.473933640110069158e-06, -7.486549100254563938e-06, -7.499150948281307760e-06, -7.511739165214675515e-06, -7.524313732105604204e-06, -7.536874630025443470e-06, -7.549421840073951599e-06, -7.561955343373056265e-06, -7.574475121069687866e-06, -7.586981154335321270e-06, -7.599473424365897892e-06, -7.611951912381400485e-06, -7.624416599628073211e-06, -7.636867467375010638e-06, -7.649304496916011051e-06, -7.661727669571784667e-06, -7.674136966684323404e-06, -7.686532369622000869e-06, -7.698913859779140371e-06, -7.711281418573099432e-06, -7.723635027446600822e-06, -7.735974667867176908e-06, -7.748300321326658042e-06, -7.760611969343510376e-06, -7.772909593459312202e-06, -7.785193175241245924e-06, -7.797462696281374692e-06, -7.809718138196813502e-06, -7.821959482629080369e-06, -7.834186711246454468e-06, -7.846399805740610024e-06, -7.858598747828852478e-06, -7.870783519253652619e-06, -7.882954101782573743e-06, -7.895110477207865072e-06, -7.907252627348640325e-06, -7.919380534047537021e-06, -7.931494179173035654e-06, -7.943593544618932837e-06, -7.955678612303694174e-06, -7.967749364172919119e-06, -7.979805782195810549e-06, -7.991847848367534591e-06, -8.003875544708700552e-06, -8.015888853265384630e-06, -8.027887756108509885e-06, -8.039872235336202692e-06, -8.051842273070465586e-06, -8.063797851459406660e-06, -8.075738952676677132e-06, -8.087665558921008866e-06, -8.099577652418376000e-06, -8.111475215418850756e-06, -8.123358230198626163e-06, -8.135226679059638272e-06, -8.147080544329628841e-06, -8.158919808361466013e-06, -8.170744453535448246e-06, -8.182554462256651405e-06, -8.194349816954291796e-06, -8.206130500086757538e-06, -8.217896494136102850e-06, -8.229647781610384172e-06, -8.241384345045669319e-06, -8.253106167000247171e-06, -8.264813230062179815e-06, -8.276505516843378398e-06, -8.288183009981807108e-06, -8.299845692143063733e-06, -8.311493546017887694e-06, -8.323126554321370611e-06, -8.334744699798050355e-06, -8.346347965216495123e-06, -8.357936333371424406e-06, -8.369509787085933301e-06, -8.381068309205632732e-06, -8.392611882606098263e-06, -8.404140490187117046e-06, -8.415654114875315321e-06, -8.427152739623119948e-06, -8.438636347411455368e-06, -8.450104921243849939e-06, -8.461558444154111756e-06, -8.472996899200204598e-06, -8.484420269466717878e-06, -8.495828538066745362e-06, -8.507221688136743678e-06, -8.518599702841290949e-06, -8.529962565372612452e-06, -8.541310258947915854e-06, -8.552642766811031070e-06, -8.563960072234507511e-06, -8.575262158513906780e-06, -8.586549008975171858e-06, -8.597820606968782577e-06, -8.609076935872012114e-06, -8.620317979090973425e-06, -8.631543720055435400e-06, -8.642754142223474774e-06, -8.653949229081132224e-06, -8.665128964139713727e-06, -8.676293330937886119e-06, -8.687442313041248494e-06, -8.698575894042322044e-06, -8.709694057560018115e-06, -8.720796787241821867e-06, -8.731884066760673492e-06, -8.742955879817028200e-06, -8.754012210138375106e-06, -8.765053041478752723e-06, -8.776078357620851304e-06, -8.787088142372917777e-06, -8.798082379570849616e-06, -8.809061053077718803e-06, -8.820024146783768447e-06, -8.830971644605965543e-06, -8.841903530489981340e-06, -8.852819788407258910e-06, -8.863720402356998598e-06, -8.874605356365705699e-06, -8.885474634486697492e-06, -8.896328220802210654e-06, -8.907166099420233356e-06, -8.917988254476721106e-06, -8.928794670135017372e-06, -8.939585330585901021e-06, -8.950360220047111980e-06, -8.961119322765362087e-06, -8.971862623013394201e-06, -8.982590105091955781e-06, -8.993301753329321164e-06, -9.003997552081406761e-06, -9.014677485731123922e-06, -9.025341538690599856e-06, -9.035989695397986016e-06, -9.046621940319716281e-06, -9.057238257949832725e-06, -9.067838632809619695e-06, -9.078423049449516410e-06, -9.088991492446309899e-06, -9.099543946404964586e-06, -9.110080395958319058e-06, -9.120600825766969169e-06, -9.131105220518885186e-06, -9.141593564931354879e-06, -9.152065843748068036e-06, -9.162522041741127317e-06, -9.172962143710556977e-06, -9.183386134484291006e-06, -9.193793998917786884e-06, -9.204185721896385411e-06, -9.214561288330108235e-06, -9.224920683160337551e-06, -9.235263891354605155e-06, -9.245590897908508433e-06, -9.255901687847167258e-06, -9.266196246222904812e-06, -9.276474558114654664e-06, -9.286736608632461905e-06, -9.296982382912646585e-06, -9.307211866119653639e-06, -9.317425043448123031e-06, -9.327621900117538201e-06, -9.337802421379049763e-06, -9.347966592510140892e-06, -9.358114398817129459e-06, -9.368245825634102461e-06, -9.378360858325455429e-06, -9.388459482280608637e-06, -9.398541682920681718e-06, -9.408607445693308131e-06, -9.418656756074574865e-06, -9.428689599570838479e-06, -9.438705961714212111e-06, -9.448705828066600741e-06, -9.458689184219452162e-06, -9.468656015791229440e-06, -9.478606308429052456e-06, -9.488540047810405529e-06, -9.498457219638106042e-06, -9.508357809646901128e-06, -9.518241803598256729e-06, -9.528109187282304078e-06, -9.537959946519709942e-06, -9.547794067157007783e-06, -9.557611535070887129e-06, -9.567412336167676885e-06, -9.577196456381002439e-06, -9.586963881673860895e-06, -9.596714598037896010e-06, -9.606448591493633670e-06, -9.616165848090000779e-06, -9.625866353906044727e-06, -9.635550095048351645e-06, -9.645217057652916644e-06, -9.654867227884562756e-06, -9.664500591936615672e-06, -9.674117136032682509e-06, -9.683716846424027705e-06, -9.693299709391273861e-06, -9.702865711244093417e-06, -9.712414838321190025e-06, -9.721947076989829282e-06, -9.731462413647678497e-06, -9.740960834720180879e-06, -9.750442326662276716e-06, -9.759906875958027287e-06, -9.769354469120201511e-06, -9.778785092692063188e-06, -9.788198733244668964e-06, -9.797595377378743659e-06, -9.806975011724248283e-06, -9.816337622940305498e-06, -9.825683197714892987e-06, -9.835011722766542609e-06, -9.844323184841738308e-06, -9.853617570716740625e-06, -9.862894867197129298e-06, -9.872155061117808349e-06, -9.881398139342570703e-06, -9.890624088765924394e-06, -9.899832896310449822e-06, -9.909024548928592075e-06, -9.918199033602161181e-06, -9.927356337342037334e-06, -9.936496447189902239e-06, -9.945619350215926705e-06, -9.954725033518599546e-06, -9.963813484228427423e-06, -9.972884689503787767e-06, -9.981938636532597438e-06, -9.990975312533598518e-06, -9.999994704753888364e-06, -1.000899680047054761e-05, -1.001798158699026914e-05, -1.002694905164942591e-05, -1.003589918181362874e-05, -1.004483196487976597e-05, -1.005374738827157013e-05, -1.006264543944535912e-05, -1.007152610588555027e-05, -1.008038937510621558e-05, -1.008923523465254531e-05, -1.009806367209857290e-05, -1.010687467504694118e-05, -1.011566823113257002e-05, -1.012444432801849229e-05, -1.013320295339771907e-05, -1.014194409499467281e-05, -1.015066774056075904e-05, -1.015937387788016346e-05, -1.016806249476540333e-05, -1.017673357905881993e-05, -1.018538711863399653e-05, -1.019402310139365431e-05, -1.020264151526920516e-05, -1.021124234822458872e-05, -1.021982558825201860e-05, -1.022839122337380518e-05, -1.023693924164390568e-05, -1.024546963114388554e-05, -1.025398237998656397e-05, -1.026247747631575994e-05, -1.027095490830407118e-05, -1.027941466415429387e-05, -1.028785673210093368e-05, -1.029628110040582836e-05, -1.030468775736376523e-05, -1.031307669129816982e-05, -1.032144789056265418e-05, -1.032980134354262124e-05, -1.033813703865127522e-05, -1.034645496433332151e-05, -1.035475510906452617e-05, -1.036303746134965602e-05, -1.037130200972420481e-05, -1.037954874275403751e-05, -1.038777764903486008e-05, -1.039598871719391010e-05, -1.040418193588763088e-05, -1.041235729380319605e-05, -1.042051477965813184e-05, -1.042865438220044580e-05, -1.043677609020806607e-05, -1.044487989249060323e-05, -1.045296577788689047e-05, -1.046103373526659807e-05, -1.046908375352987935e-05, -1.047711582160738078e-05, -1.048512992845987614e-05, -1.049312606307972672e-05, -1.050110421448879091e-05, -1.050906437173974217e-05, -1.051700652391589451e-05, -1.052493066013068581e-05, -1.053283676952929739e-05, -1.054072484128639915e-05, -1.054859486460764884e-05, -1.055644682872927026e-05, -1.056428072291825652e-05, -1.057209653647171445e-05, -1.057989425871870772e-05, -1.058767387901773442e-05, -1.059543538675840583e-05, -1.060317877136108564e-05, -1.061090402227679501e-05, -1.061861112898700259e-05, -1.062630008100497292e-05, -1.063397086787361162e-05, -1.064162347916706120e-05, -1.064925790449018773e-05, -1.065687413347832338e-05, -1.066447215579864537e-05, -1.067205196114860725e-05, -1.067961353925523589e-05, -1.068715687987868731e-05, -1.069468197280850788e-05, -1.070218880786516575e-05, -1.070967737490107070e-05, -1.071714766379844635e-05, -1.072459966447090398e-05, -1.073203336686292247e-05, -1.073944876094952297e-05, -1.074684583673787497e-05, -1.075422458426530228e-05, -1.076158499359914081e-05, -1.076892705483979465e-05, -1.077625075811725133e-05, -1.078355609359264211e-05, -1.079084305145907712e-05, -1.079811162194004788e-05, -1.080536179528906982e-05, -1.081259356179283329e-05, -1.081980691176772390e-05, -1.082700183556120151e-05, -1.083417832355324359e-05, -1.084133636615257759e-05, -1.084847595380142435e-05, -1.085559707697180838e-05, -1.086269972616683695e-05, -1.086978389192195534e-05, -1.087684956480302408e-05, -1.088389673540608009e-05, -1.089092539436044533e-05, -1.089793553232527423e-05, -1.090492713999100214e-05, -1.091190020808055833e-05, -1.091885472734586258e-05, -1.092579068857246358e-05, -1.093270808257572559e-05, -1.093960690020281726e-05, -1.094648713233207805e-05, -1.095334876987318086e-05, -1.096019180376681863e-05, -1.096701622498601726e-05, -1.097382202453411285e-05, -1.098060919344584781e-05, -1.098737772278861934e-05, -1.099412760365927262e-05, -1.100085882718696032e-05, -1.100757138453296481e-05, -1.101426526688894132e-05, -1.102094046547834613e-05, -1.102759697155602145e-05, -1.103423477640792779e-05, -1.104085387135255511e-05, -1.104745424773874428e-05, -1.105403589694721507e-05, -1.106059881039017827e-05, -1.106714297951131360e-05, -1.107366839578548518e-05, -1.108017505072007980e-05, -1.108666293585297742e-05, -1.109313204275399793e-05, -1.109958236302448441e-05, -1.110601388829728446e-05, -1.111242661023657574e-05, -1.111882052053903659e-05, -1.112519561093195200e-05, -1.113155187317451979e-05, -1.113788929905763715e-05, -1.114420788040339410e-05, -1.115050760906654733e-05, -1.115678847693245175e-05, -1.116305047591851229e-05, -1.116929359797374516e-05, -1.117551783507879480e-05, -1.118172317924579322e-05, -1.118790962251935108e-05, -1.119407715697492459e-05, -1.120022577471994544e-05, -1.120635546789359552e-05, -1.121246622866677809e-05, -1.121855804924177053e-05, -1.122463092185353721e-05, -1.123068483876792193e-05, -1.123671979228276092e-05, -1.124273577472768803e-05, -1.124873277846382982e-05, -1.125471079588495068e-05, -1.126066981941606547e-05, -1.126660984151308879e-05, -1.127253085466549809e-05, -1.127843285139343678e-05, -1.128431582424882558e-05, -1.129017976581640942e-05, -1.129602466871178894e-05, -1.130185052558273341e-05, -1.130765732910896049e-05, -1.131344507200167034e-05, -1.131921374700485686e-05, -1.132496334689379320e-05, -1.133069386447484707e-05, -1.133640529258795239e-05, -1.134209762410384122e-05, -1.134777085192510592e-05, -1.135342496898718000e-05, -1.135905996825690833e-05, -1.136467584273214229e-05, -1.137027258544437061e-05, -1.137585018945598859e-05, -1.138140864786134496e-05, -1.138694795378782616e-05, -1.139246810039290861e-05, -1.139796908086795512e-05, -1.140345088843524862e-05, -1.140891351634910680e-05, -1.141435695789660213e-05, -1.141978120639631838e-05, -1.142518625519804743e-05, -1.143057209768526595e-05, -1.143593872727240118e-05, -1.144128613740589316e-05, -1.144661432156533984e-05, -1.145192327326052577e-05, -1.145721298603519640e-05, -1.146248345346403255e-05, -1.146773466915413267e-05, -1.147296662674466727e-05, -1.147817931990687890e-05, -1.148337274234389415e-05, -1.148854688779171125e-05, -1.149370175001762629e-05, -1.149883732282114803e-05, -1.150395360003480090e-05, -1.150905057552186507e-05, -1.151412824317837886e-05, -1.151918659693322516e-05, -1.152422563074649833e-05, -1.152924533861077811e-05, -1.153424571455081796e-05, -1.153922675262328246e-05, -1.154418844691776206e-05, -1.154913079155527381e-05, -1.155405378068907792e-05, -1.155895740850556376e-05, -1.156384166922184597e-05, -1.156870655708799555e-05, -1.157355206638682471e-05, -1.157837819143255532e-05, -1.158318492657192519e-05, -1.158797226618393218e-05, -1.159274020467975636e-05, -1.159748873650260070e-05, -1.160221785612861606e-05, -1.160692755806552224e-05, -1.161161783685347361e-05, -1.161628868706498119e-05, -1.162094010330447561e-05, -1.162557208020949122e-05, -1.163018461244902289e-05, -1.163477769472466268e-05, -1.163935132177019671e-05, -1.164390548835185412e-05, -1.164844018926777690e-05, -1.165295541934913790e-05, -1.165745117345887375e-05, -1.166192744649225058e-05, -1.166638423337693527e-05, -1.167082152907273280e-05, -1.167523932857241638e-05, -1.167963762690040096e-05, -1.168401641911366824e-05, -1.168837570030151760e-05, -1.169271546558569148e-05, -1.169703571011996542e-05, -1.170133642909111703e-05, -1.170561761771787912e-05, -1.170987927125068383e-05, -1.171412138497361764e-05, -1.171834395420228511e-05, -1.172254697428470845e-05, -1.172673044060182896e-05, -1.173089434856640419e-05, -1.173503869362374484e-05, -1.173916347125156066e-05, -1.174326867695977743e-05, -1.174735430629125017e-05, -1.175142035482101610e-05, -1.175546681815559662e-05, -1.175949369193541989e-05, -1.176350097183235761e-05, -1.176748865355074825e-05, -1.177145673282794255e-05, -1.177540520543308549e-05, -1.177933406716793957e-05, -1.178324331386675102e-05, -1.178713294139618202e-05, -1.179100294565505997e-05, -1.179485332257546848e-05, -1.179868406812061116e-05, -1.180249517828742555e-05, -1.180628664910451127e-05, -1.181005847663298724e-05, -1.181381065696697110e-05, -1.181754318623256613e-05, -1.182125606058787651e-05, -1.182494927622455742e-05, -1.182862282936590070e-05, -1.183227671626777000e-05, -1.183591093321913102e-05, -1.183952547654020837e-05, -1.184312034258500124e-05, -1.184669552773907773e-05, -1.185025102842069637e-05, -1.185378684108118041e-05, -1.185730296220326960e-05, -1.186079938830268374e-05, -1.186427611592817693e-05, -1.186773314166020092e-05, -1.187117046211180978e-05, -1.187458807392927310e-05, -1.187798597379019902e-05, -1.188136415840534346e-05, -1.188472262451815612e-05, -1.188806136890419940e-05, -1.189138038837162108e-05, -1.189467967976109838e-05, -1.189795923994558385e-05, -1.190121906583108130e-05, -1.190445915435561574e-05, -1.190767950248965525e-05, -1.191088010723686483e-05, -1.191406096563244113e-05, -1.191722207474455407e-05, -1.192036343167419614e-05, -1.192348503355441153e-05, -1.192658687755092804e-05, -1.192966896086186572e-05, -1.193273128071784018e-05, -1.193577383438245050e-05, -1.193879661915119841e-05, -1.194179963235237089e-05, -1.194478287134674203e-05, -1.194774633352760350e-05, -1.195069001632059348e-05, -1.195361391718433361e-05, -1.195651803360944982e-05, -1.195940236311935838e-05, -1.196226690326993555e-05, -1.196511165164944984e-05, -1.196793660587876018e-05, -1.197074176361150399e-05, -1.197352712253350257e-05, -1.197629268036315577e-05, -1.197903843485148270e-05, -1.198176438378176934e-05, -1.198447052497037153e-05, -1.198715685626559688e-05, -1.198982337554847898e-05, -1.199247008073259609e-05, -1.199509696976396110e-05, -1.199770404062108242e-05, -1.200029129131527410e-05, -1.200285871989006959e-05, -1.200540632442154875e-05, -1.200793410301835815e-05, -1.201044205382165012e-05, -1.201293017500496074e-05, -1.201539846477470281e-05, -1.201784692136949674e-05, -1.202027554306049068e-05, -1.202268432815143510e-05, -1.202507327497836424e-05, -1.202744238191027892e-05, -1.202979164734842815e-05, -1.203212106972610083e-05, -1.203443064751003012e-05, -1.203672037919874338e-05, -1.203899026332338553e-05, -1.204124029844800364e-05, -1.204347048316861350e-05, -1.204568081611405341e-05, -1.204787129594548617e-05, -1.205004192135668701e-05, -1.205219269107378107e-05, -1.205432360385581764e-05, -1.205643465849355893e-05, -1.205852585381096916e-05, -1.206059718866422011e-05, -1.206264866194181990e-05, -1.206468027256524657e-05, -1.206669201948782827e-05, -1.206868390169565302e-05, -1.207065591820751447e-05, -1.207260806807441892e-05, -1.207454035037974458e-05, -1.207645276423980740e-05, -1.207834530880268704e-05, -1.208021798324962790e-05, -1.208207078679391935e-05, -1.208390371868133952e-05, -1.208571677819051280e-05, -1.208750996463191202e-05, -1.208928327734872752e-05, -1.209103671571689929e-05, -1.209277027914436824e-05, -1.209448396707175720e-05, -1.209617777897224896e-05, -1.209785171435108309e-05, -1.209950577274609470e-05, -1.210113995372785673e-05, -1.210275425689899890e-05, -1.210434868189468720e-05, -1.210592322838260688e-05, -1.210747789606264569e-05, -1.210901268466746649e-05, -1.211052759396182959e-05, -1.211202262374292481e-05, -1.211349777384071875e-05, -1.211495304411701461e-05, -1.211638843446627377e-05, -1.211780394481568866e-05, -1.211919957512436115e-05, -1.212057532538400726e-05, -1.212193119561865054e-05, -1.212326718588468982e-05, -1.212458329627113302e-05, -1.212587952689906690e-05, -1.212715587792211442e-05, -1.212841234952618238e-05, -1.212964894192959860e-05, -1.213086565538296626e-05, -1.213206249016942136e-05, -1.213323944660431934e-05, -1.213439652503534183e-05, -1.213553372584259656e-05, -1.213665104943848183e-05, -1.213774849626765607e-05, -1.213882606680736135e-05, -1.213988376156690843e-05, -1.214092158108801215e-05, -1.214193952594472027e-05, -1.214293759674326107e-05, -1.214391579412255149e-05, -1.214487411875338403e-05, -1.214581257133907386e-05, -1.214673115261512509e-05, -1.214762986334940191e-05, -1.214850870434200485e-05, -1.214936767642539958e-05, -1.215020678046421193e-05, -1.215102601735542777e-05, -1.215182538802819650e-05, -1.215260489344407331e-05, -1.215336453459662445e-05, -1.215410431251199139e-05, -1.215482422824830123e-05, -1.215552428289599030e-05, -1.215620447757778384e-05, -1.215686481344848252e-05, -1.215750529169535549e-05, -1.215812591353768125e-05, -1.215872668022692559e-05, -1.215930759304695157e-05, -1.215986865331365539e-05, -1.216040986237515773e-05, -1.216093122161183939e-05, -1.216143273243619220e-05, -1.216191439629290028e-05, -1.216237621465880287e-05, -1.216281818904286204e-05, -1.216324032098628305e-05, -1.216364261206249905e-05, -1.216402506387674082e-05, -1.216438767806680584e-05, -1.216473045630229602e-05, -1.216505340028508858e-05, -1.216535651174925986e-05, -1.216563979246076683e-05, -1.216590324421777913e-05, -1.216614686885067566e-05, -1.216637066822183115e-05, -1.216657464422561616e-05, -1.216675879878870707e-05, -1.216692313386956263e-05, -1.216706765145900336e-05, -1.216719235357964397e-05, -1.216729724228632711e-05, -1.216738231966595561e-05, -1.216744758783726211e-05, -1.216749304895120376e-05, -1.216751870519071154e-05, -1.216752455877071391e-05, -1.216751061193810977e-05, -1.216747686697194798e-05, -1.216742332618304285e-05, -1.216734999191440439e-05, -1.216725686654090632e-05, -1.216714395246941478e-05, -1.216701125213876463e-05, -1.216685876801977638e-05, -1.216668650261511053e-05, -1.216649445845956060e-05, -1.216628263811967708e-05, -1.216605104419399611e-05, -1.216579967931303781e-05, -1.216552854613909280e-05, -1.216523764736642380e-05, -1.216492698572123854e-05, -1.216459656396155084e-05, -1.216424638487730766e-05, -1.216387645129029252e-05, -1.216348676605413573e-05, -1.216307733205438375e-05, -1.216264815220834511e-05, -1.216219922946523439e-05, -1.216173056680601970e-05, -1.216124216724351593e-05, -1.216073403382244399e-05, -1.216020616961918181e-05, -1.215965857774199811e-05, -1.215909126133090161e-05, -1.215850422355766310e-05, -1.215789746762582724e-05, -1.215727099677077190e-05, -1.215662481425952180e-05, -1.215595892339092468e-05, -1.215527332749547851e-05, -1.215456802993544500e-05, -1.215384303410480724e-05, -1.215309834342920194e-05, -1.215233396136606683e-05, -1.215154989140444073e-05, -1.215074613706503132e-05, -1.214992270190028633e-05, -1.214907958949420035e-05, -1.214821680346251310e-05, -1.214733434745255352e-05, -1.214643222514327370e-05, -1.214551044024529627e-05, -1.214456899650081450e-05, -1.214360789768364986e-05, -1.214262714759915713e-05, -1.214162675008434307e-05, -1.214060670900767661e-05, -1.213956702826930738e-05, -1.213850771180093025e-05, -1.213742876356566669e-05, -1.213633018755822233e-05, -1.213521198780496998e-05, -1.213407416836354135e-05, -1.213291673332323534e-05, -1.213173968680479268e-05, -1.213054303296034518e-05, -1.212932677597378327e-05, -1.212809092006007504e-05, -1.212683546946592689e-05, -1.212556042846935665e-05, -1.212426580137977319e-05, -1.212295159253806790e-05, -1.212161780631660622e-05, -1.212026444711898538e-05, -1.211889151938030378e-05, -1.211749902756708135e-05, -1.211608697617694953e-05, -1.211465536973921711e-05, -1.211320421281426373e-05, -1.211173350999399731e-05, -1.211024326590153045e-05, -1.210873348519136679e-05, -1.210720417254913674e-05, -1.210565533269202777e-05, -1.210408697036823384e-05, -1.210249909035736875e-05, -1.210089169747029503e-05, -1.209926479654892915e-05, -1.209761839246672090e-05, -1.209595249012818417e-05, -1.209426709446893591e-05, -1.209256221045592648e-05, -1.209083784308732622e-05, -1.208909399739221706e-05, -1.208733067843120244e-05, -1.208554789129574318e-05, -1.208374564110856410e-05, -1.208192393302353375e-05, -1.208008277222555762e-05, -1.207822216393067646e-05, -1.207634211338607982e-05, -1.207444262586983836e-05, -1.207252370669127317e-05, -1.207058536119082365e-05, -1.206862759473962736e-05, -1.206665041274019428e-05, -1.206465382062595106e-05, -1.206263782386122246e-05, -1.206060242794143964e-05, -1.205854763839286410e-05, -1.205647346077293828e-05, -1.205437990066999426e-05, -1.205226696370308257e-05, -1.205013465552242967e-05, -1.204798298180910417e-05, -1.204581194827503549e-05, -1.204362156066305448e-05, -1.204141182474701713e-05, -1.203918274633135225e-05, -1.203693433125151376e-05, -1.203466658537385193e-05, -1.203237951459538475e-05, -1.203007312484403672e-05, -1.202774742207862025e-05, -1.202540241228838163e-05, -1.202303810149373292e-05, -1.202065449574569790e-05, -1.201825160112597145e-05, -1.201582942374711939e-05, -1.201338796975219905e-05, -1.201092724531525391e-05, -1.200844725664076135e-05, -1.200594800996407478e-05, -1.200342951155110180e-05, -1.200089176769851085e-05, -1.199833478473337546e-05, -1.199575856901358254e-05, -1.199316312692759856e-05, -1.199054846489442556e-05, -1.198791458936380098e-05, -1.198526150681574203e-05, -1.198258922376105215e-05, -1.197989774674101273e-05, -1.197718708232742039e-05, -1.197445723712254287e-05, -1.197170821775936306e-05, -1.196894003090085557e-05, -1.196615268324082531e-05, -1.196334618150377369e-05, -1.196052053244403799e-05, -1.195767574284675869e-05, -1.195481181952747290e-05, -1.195192876933181112e-05, -1.194902659913633916e-05, -1.194610531584741472e-05, -1.194316492640205127e-05, -1.194020543776767080e-05, -1.193722685694167346e-05, -1.193422919095192382e-05, -1.193121244685700829e-05, -1.192817663174503412e-05, -1.192512175273485921e-05, -1.192204781697560765e-05, -1.191895483164614626e-05, -1.191584280395630598e-05, -1.191271174114548767e-05, -1.190956165048348035e-05, -1.190639253927037819e-05, -1.190320441483635011e-05, -1.189999728454141783e-05, -1.189677115577639616e-05, -1.189352603596142414e-05, -1.189026193254722720e-05, -1.188697885301463262e-05, -1.188367680487396983e-05, -1.188035579566644431e-05, -1.187701583296277725e-05, -1.187365692436363923e-05, -1.187027907749992467e-05, -1.186688230003259933e-05, -1.186346659965205832e-05, -1.186003198407949821e-05, -1.185657846106520949e-05, -1.185310603838984877e-05, -1.184961472386410337e-05, -1.184610452532794931e-05, -1.184257545065194560e-05, -1.183902750773620589e-05, -1.183546070451040700e-05, -1.183187504893437843e-05, -1.182827054899768390e-05, -1.182464721271974337e-05, -1.182100504814957213e-05, -1.181734406336621447e-05, -1.181366426647798815e-05, -1.180996566562334835e-05, -1.180624826897033543e-05, -1.180251208471667148e-05, -1.179875712108986702e-05, -1.179498338634672470e-05, -1.179119088877406429e-05, -1.178737963668814167e-05, -1.178354963843495204e-05, -1.177970090238992330e-05, -1.177583343695830908e-05, -1.177194725057439081e-05, -1.176804235170251623e-05, -1.176411874883638276e-05, -1.176017645049912220e-05, -1.175621546524356842e-05, -1.175223580165156618e-05, -1.174823746833482830e-05, -1.174422047393440882e-05, -1.174018482712064541e-05, -1.173613053659345583e-05, -1.173205761108216511e-05, -1.172796605934505497e-05, -1.172385589017017185e-05, -1.171972711237477977e-05, -1.171557973480537552e-05, -1.171141376633785812e-05, -1.170722921587749998e-05, -1.170302609235836758e-05, -1.169880440474419553e-05, -1.169456416202783438e-05, -1.169030537323128957e-05, -1.168602804740601444e-05, -1.168173219363197520e-05, -1.167741782101893495e-05, -1.167308493870553555e-05, -1.166873355585956696e-05, -1.166436368167788083e-05, -1.165997532538660058e-05, -1.165556849624035567e-05, -1.165114320352339462e-05, -1.164669945654871933e-05, -1.164223726465846114e-05, -1.163775663722363525e-05, -1.163325758364440323e-05, -1.162874011334922265e-05, -1.162420423579663092e-05, -1.161964996047292439e-05, -1.161507729689393209e-05, -1.161048625460439226e-05, -1.160587684317738658e-05, -1.160124907221507703e-05, -1.159660295134910068e-05, -1.159193849023876376e-05, -1.158725569857277641e-05, -1.158255458606880711e-05, -1.157783516247233924e-05, -1.157309743755896817e-05, -1.156834142113168913e-05, -1.156356712302288935e-05, -1.155877455309342487e-05, -1.155396372123299488e-05, -1.154913463735920154e-05, -1.154428731141948288e-05, -1.153942175338862595e-05, -1.153453797327070480e-05, -1.152963598109835544e-05, -1.152471578693191014e-05, -1.151977740086143037e-05, -1.151482083300489239e-05, -1.150984609350824319e-05, -1.150485319254657955e-05, -1.149984214032337724e-05, -1.149481294706973548e-05, -1.148976562304650635e-05, -1.148470017854152673e-05, -1.147961662387181037e-05, -1.147451496938261620e-05, -1.146939522544680626e-05, -1.146425740246665664e-05, -1.145910151087216175e-05, -1.145392756112107834e-05, -1.144873556370011478e-05, -1.144352552912386032e-05, -1.143829746793519685e-05, -1.143305139070501085e-05, -1.142778730803279140e-05, -1.142250523054526478e-05, -1.141720516889804618e-05, -1.141188713377458259e-05, -1.140655113588636965e-05, -1.140119718597316341e-05, -1.139582529480209263e-05, -1.139043547316890903e-05, -1.138502773189723167e-05, -1.137960208183854366e-05, -1.137415853387220900e-05, -1.136869709890585213e-05, -1.136321778787429570e-05, -1.135772061174084638e-05, -1.135220558149648512e-05, -1.134667270816003314e-05, -1.134112200277832980e-05, -1.133555347642532632e-05, -1.132996714020339862e-05, -1.132436300524251559e-05, -1.131874108270030852e-05, -1.131310138376205075e-05, -1.130744391964111004e-05, -1.130176870157769152e-05, -1.129607574084034713e-05, -1.129036504872502864e-05, -1.128463663655529261e-05, -1.127889051568225637e-05, -1.127312669748486058e-05, -1.126734519336879691e-05, -1.126154601476804790e-05, -1.125572917314381807e-05, -1.124989467998482015e-05, -1.124404254680736492e-05, -1.123817278515455989e-05, -1.123228540659729864e-05, -1.122638042273464535e-05, -1.122045784519158345e-05, -1.121451768562131438e-05, -1.120855995570449364e-05, -1.120258466714816012e-05, -1.119659183168749280e-05, -1.119058146108463515e-05, -1.118455356712889665e-05, -1.117850816163684432e-05, -1.117244525645249751e-05, -1.116636486344600145e-05, -1.116026699451635470e-05, -1.115415166158793632e-05, -1.114801887661326890e-05, -1.114186865157186487e-05, -1.113570099846956751e-05, -1.112951592933972161e-05, -1.112331345624349866e-05, -1.111709359126738626e-05, -1.111085634652598167e-05, -1.110460173416078389e-05, -1.109832976633910105e-05, -1.109204045525694550e-05, -1.108573381313552544e-05, -1.107940985222370301e-05, -1.107306858479730648e-05, -1.106671002315811215e-05, -1.106033417963524867e-05, -1.105394106658530384e-05, -1.104753069639005112e-05, -1.104110308145896703e-05, -1.103465823422833838e-05, -1.102819616715992734e-05, -1.102171689274369550e-05, -1.101522042349552198e-05, -1.100870677195726777e-05, -1.100217595069813947e-05, -1.099562797231388294e-05, -1.098906284942579052e-05, -1.098248059468339974e-05, -1.097588122076085272e-05, -1.096926474035984559e-05, -1.096263116620846969e-05, -1.095598051106014774e-05, -1.094931278769624270e-05, -1.094262800892372671e-05, -1.093592618757530986e-05, -1.092920733651084117e-05, -1.092247146861613799e-05, -1.091571859680327571e-05, -1.090894873401083507e-05, -1.090216189320279762e-05, -1.089535808737012122e-05, -1.088853732952964061e-05, -1.088169963272436550e-05, -1.087484501002335360e-05, -1.086797347452204598e-05, -1.086108503934109648e-05, -1.085417971762806582e-05, -1.084725752255614252e-05, -1.084031846732466642e-05, -1.083336256515879999e-05, -1.082638982930995865e-05, -1.081940027305464014e-05, -1.081239390969604917e-05, -1.080537075256298269e-05, -1.079833081501007217e-05, -1.079127411041806139e-05, -1.078420065219260201e-05, -1.077711045376598992e-05, -1.077000352859591171e-05, -1.076287989016585456e-05, -1.075573955198495045e-05, -1.074858252758826918e-05, -1.074140883053560882e-05, -1.073421847441341006e-05, -1.072701147283321621e-05, -1.071978783943227636e-05, -1.071254758787329464e-05, -1.070529073184480627e-05, -1.069801728505996466e-05, -1.069072726125825408e-05, -1.068342067420425638e-05, -1.067609753768807960e-05, -1.066875786552541218e-05, -1.066140167155644721e-05, -1.065402896964731902e-05, -1.064663977369032171e-05, -1.063923409760126808e-05, -1.063181195532243396e-05, -1.062437336082133842e-05, -1.061691832808980195e-05, -1.060944687114567601e-05, -1.060195900403171316e-05, -1.059445474081579913e-05, -1.058693409559123739e-05, -1.057939708247541936e-05, -1.057184371561147946e-05, -1.056427400916851876e-05, -1.055668797733869119e-05, -1.054908563434043749e-05, -1.054146699441711133e-05, -1.053383207183607639e-05, -1.052618088089020897e-05, -1.051851343589819955e-05, -1.051082975120166779e-05, -1.050312984116839651e-05, -1.049541372019083073e-05, -1.048768140268503415e-05, -1.047993290309396206e-05, -1.047216823588306186e-05, -1.046438741554373746e-05, -1.045659045659211253e-05, -1.044877737356790065e-05, -1.044094818103612133e-05, -1.043310289358731689e-05, -1.042524152583463017e-05, -1.041736409241706226e-05, -1.040947060799811380e-05, -1.040156108726433998e-05, -1.039363554492927569e-05, -1.038569399572831945e-05, -1.037773645442275845e-05, -1.036976293579780014e-05, -1.036177345466306512e-05, -1.035376802585246352e-05, -1.034574666422449653e-05, -1.033770938466097738e-05, -1.032965620206892361e-05, -1.032158713137954911e-05, -1.031350218754689869e-05, -1.030540138555120911e-05, -1.029728474039583267e-05, -1.028915226710744217e-05, -1.028100398073800281e-05, -1.027283989636301039e-05, -1.026466002908197914e-05, -1.025646439401883313e-05, -1.024825300632036966e-05, -1.024002588115838370e-05, -1.023178303372820586e-05, -1.022352447924901244e-05, -1.021525023296392534e-05, -1.020696031014014592e-05, -1.019865472606765904e-05, -1.019033349606126762e-05, -1.018199663545914592e-05, -1.017364415962318510e-05, -1.016527608393893905e-05, -1.015689242381604790e-05, -1.014849319468662692e-05, -1.014007841200749767e-05, -1.013164809125870734e-05, -1.012320224794380997e-05, -1.011474089759024424e-05, -1.010626405574789353e-05, -1.009777173799113398e-05, -1.008926395991748103e-05, -1.008074073714778074e-05, -1.007220208532626072e-05, -1.006364802012089935e-05, -1.005507855722190793e-05, -1.004649371234381780e-05, -1.003789350122409622e-05, -1.002927793962350727e-05, -1.002064704332591700e-05, -1.001200082813876947e-05, -1.000333930989159427e-05, -9.994662504438091933e-06, -9.985970427654736309e-06, -9.977263095441018528e-06, -9.968540523719855262e-06, -9.959802728436081007e-06, -9.951049725558231936e-06, -9.942281531078886404e-06, -9.933498161011332722e-06, -9.924699631393235115e-06, -9.915885958285141250e-06, -9.907057157769276061e-06, -9.898213245951845680e-06, -9.889354238961387415e-06, -9.880480152949245782e-06, -9.871591004089806288e-06, -9.862686808579080886e-06, -9.853767582636468108e-06, -9.844833342505066468e-06, -9.835884104448442184e-06, -9.826919884754137588e-06, -9.817940699732254889e-06, -9.808946565714329616e-06, -9.799937499055131414e-06, -9.790913516132928313e-06, -9.781874633346242598e-06, -9.772820867117515067e-06, -9.763752233891471958e-06, -9.754668750133767998e-06, -9.745570432334947129e-06, -9.736457297005199376e-06, -9.727329360678450322e-06, -9.718186639910958419e-06, -9.709029151279853013e-06, -9.699856911385397611e-06, -9.690669936850969558e-06, -9.681468244319837920e-06, -9.672251850458832829e-06, -9.663020771956893674e-06, -9.653775025523325903e-06, -9.644514627892229313e-06, -9.635239595816917795e-06, -9.625949946074161277e-06, -9.616645695462230773e-06, -9.607326860801304955e-06, -9.597993458933385452e-06, -9.588645506722608559e-06, -9.579283021053773092e-06, -9.569906018834629073e-06, -9.560514516994556356e-06, -9.551108532483106037e-06, -9.541688082273840904e-06, -9.532253183360742319e-06, -9.522803852758642210e-06, -9.513340107505057738e-06, -9.503861964658681891e-06, -9.494369441299727372e-06, -9.484862554530265421e-06, -9.475341321472618137e-06, -9.465805759271689521e-06, -9.456255885093783014e-06, -9.446691716125017542e-06, -9.437113269575096822e-06, -9.427520562673941549e-06, -9.417913612671887608e-06, -9.408292436841712175e-06, -9.398657052476956590e-06, -9.389007476892370207e-06, -9.379343727423847707e-06, -9.369665821428773000e-06, -9.359973776284338706e-06, -9.350267609390124527e-06, -9.340547338166215138e-06, -9.330812980053747373e-06, -9.321064552515198211e-06, -9.311302073032697490e-06, -9.301525559110541903e-06, -9.291735028273468740e-06, -9.281930498067064158e-06, -9.272111986057707283e-06, -9.262279509832946285e-06, -9.252433086999782295e-06, -9.242572735187281650e-06, -9.232698472044629416e-06, -9.222810315241774823e-06, -9.212908282469629473e-06, -9.202992391438457977e-06, -9.193062659880317408e-06, -9.183119105547400508e-06, -9.173161746212350783e-06, -9.163190599668247254e-06, -9.153205683729097433e-06, -9.143207016227929804e-06, -9.133194615019057095e-06, -9.123168497978408314e-06, -9.113128682999627317e-06, -9.103075187998289336e-06, -9.093008030910274678e-06, -9.082927229690359260e-06, -9.072832802314760792e-06, -9.062724766779466733e-06, -9.052603141100513809e-06, -9.042467943314465748e-06, -9.032319191476642970e-06, -9.022156903663260507e-06, -9.011981097971802387e-06, -9.001791792517067686e-06, -8.991589005435576793e-06, -8.981372754883723184e-06, -8.971143059036389370e-06, -8.960899936089655708e-06, -8.950643404258964034e-06, -8.940373481779466643e-06, -8.930090186906046614e-06, -8.919793537913763348e-06, -8.909483553095574057e-06, -8.899160250767133046e-06, -8.888823649260608372e-06, -8.878473766929511631e-06, -8.868110622146878528e-06, -8.857734233303949200e-06, -8.847344618812260386e-06, -8.836941797104177367e-06, -8.826525786628818042e-06, -8.816096605856403286e-06, -8.805654273276513762e-06, -8.795198807396278960e-06, -8.784730226745186653e-06, -8.774248549868880919e-06, -8.763753795333993618e-06, -8.753245981726365626e-06, -8.742725127649110512e-06, -8.732191251727252894e-06, -8.721644372603488192e-06, -8.711084508938668825e-06, -8.700511679414028515e-06, -8.689925902729771139e-06, -8.679327197603297034e-06, -8.668715582773561831e-06, -8.658091076997112342e-06, -8.647453699048420292e-06, -8.636803467722116787e-06, -8.626140401831208467e-06, -8.615464520207419708e-06, -8.604775841701682202e-06, -8.594074385182256243e-06, -8.583360169537397185e-06, -8.572633213673996799e-06, -8.561893536515726580e-06, -8.551141157007528714e-06, -8.540376094111524910e-06, -8.529598366807411116e-06, -8.518807994094678440e-06, -8.508004994990888591e-06, -8.497189388531867002e-06, -8.486361193772326247e-06, -8.475520429783916170e-06, -8.464667115657976745e-06, -8.453801270503623778e-06, -8.442922913448191059e-06, -8.432032063637272715e-06, -8.421128740234995954e-06, -8.410212962422284648e-06, -8.399284749399512238e-06, -8.388344120384682310e-06, -8.377391094613808063e-06, -8.366425691340897066e-06, -8.355447929838400183e-06, -8.344457829395253231e-06, -8.333455409319738262e-06, -8.322440688937481174e-06, -8.311413687591963318e-06, -8.300374424644956878e-06, -8.289322919474476737e-06, -8.278259191477819640e-06, -8.267183260069400867e-06, -8.256095144681306497e-06, -8.244994864763322212e-06, -8.233882439783160299e-06, -8.222757889224797771e-06, -8.211621232591102170e-06, -8.200472489401939294e-06, -8.189311679194669562e-06, -8.178138821524070083e-06, -8.166953935962766644e-06, -8.155757042099292311e-06, -8.144548159540972423e-06, -8.133327307911901878e-06, -8.122094506853444880e-06, -8.110849776024682176e-06, -8.099593135100434079e-06, -8.088324603773577949e-06, -8.077044201755639424e-06, -8.065751948772237077e-06, -8.054447864568059579e-06, -8.043131968904734569e-06, -8.031804281559470007e-06, -8.020464822327871409e-06, -8.009113611021905581e-06, -7.997750667470512174e-06, -7.986376011519400397e-06, -7.974989663031602978e-06, -7.963591641884948616e-06, -7.952181967977474522e-06, -7.940760661220480748e-06, -7.929327741543876662e-06, -7.917883228894237850e-06, -7.906427143232729195e-06, -7.894959504540075264e-06, -7.883480332812067647e-06, -7.871989648059978307e-06, -7.860487470313041387e-06, -7.848973819616913308e-06, -7.837448716031665294e-06, -7.825912179637211166e-06, -7.814364230526312538e-06, -7.802804888809981198e-06, -7.791234174615515681e-06, -7.779652108084448068e-06, -7.768058709377495731e-06, -7.756453998670014469e-06, -7.744837996152442348e-06, -7.733210722032881460e-06, -7.721572196535408938e-06, -7.709922439898169439e-06, -7.698261472378233722e-06, -7.686589314247199164e-06, -7.674905985791447252e-06, -7.663211507314869340e-06, -7.651505899136601681e-06, -7.639789181591603103e-06, -7.628061375031141206e-06, -7.616322499820684944e-06, -7.604572576342878561e-06, -7.592811624996119416e-06, -7.581039666192308270e-06, -7.569256720362061074e-06, -7.557462807949978297e-06, -7.545657949415214971e-06, -7.533842165233876107e-06, -7.522015475897056658e-06, -7.510177901911315856e-06, -7.498329463798999086e-06, -7.486470182096331218e-06, -7.474600077356393073e-06, -7.462719170147010626e-06, -7.450827481051250512e-06, -7.438925030667386998e-06, -7.427011839609400883e-06, -7.415087928504834808e-06, -7.403153317997897638e-06, -7.391208028747353648e-06, -7.379252081426962988e-06, -7.367285496725540970e-06, -7.355308295347307047e-06, -7.343320498009893438e-06, -7.331322125447403767e-06, -7.319313198408231102e-06, -7.307293737655583965e-06, -7.295263763967977610e-06, -7.283223298137147781e-06, -7.271172360971069538e-06, -7.259110973291855769e-06, -7.247039155936326393e-06, -7.234956929755839804e-06, -7.222864315616855299e-06, -7.210761334398838366e-06, -7.198648006997257486e-06, -7.186524354321564807e-06, -7.174390397295648460e-06, -7.162246156857717361e-06, -7.150091653960953430e-06, -7.137926909571205115e-06, -7.125751944670210356e-06, -7.113566780253441731e-06, -7.101371437330541835e-06, -7.089165936925892482e-06, -7.076950300076413266e-06, -7.064724547834206001e-06, -7.052488701266987554e-06, -7.040242781453343917e-06, -7.027986809488004686e-06, -7.015720806479603499e-06, -7.003444793549187264e-06, -6.991158791833160444e-06, -6.978862822481389395e-06, -6.966556906657464102e-06, -6.954241065539275006e-06, -6.941915320316929305e-06, -6.929579692195271724e-06, -6.917234202394381721e-06, -6.904878872144802153e-06, -6.892513722692848477e-06, -6.880138775298304822e-06, -6.867754051232454635e-06, -6.855359571783183210e-06, -6.842955358250280886e-06, -6.830541431945858101e-06, -6.818117814197048266e-06, -6.805684526344268811e-06, -6.793241589739149340e-06, -6.780789025750335503e-06, -6.768326855755947013e-06, -6.755855101149447585e-06, -6.743373783337485001e-06, -6.730882923737629536e-06, -6.718382543783844936e-06, -6.705872664921447732e-06, -6.693353308607799265e-06, -6.680824496314761230e-06, -6.668286249527191350e-06, -6.655738589740676715e-06, -6.643181538467468940e-06, -6.630615117228840542e-06, -6.618039347561064990e-06, -6.605454251012621499e-06, -6.592859849144730353e-06, -6.580256163531241945e-06, -6.567643215759278827e-06, -6.555021027426886886e-06, -6.542389620146362495e-06, -6.529749015542494066e-06, -6.517099235250469881e-06, -6.504440300921152571e-06, -6.491772234216234078e-06, -6.479095056808687978e-06, -6.466408790385505397e-06, -6.453713456645435123e-06, -6.441009077299520627e-06, -6.428295674071571016e-06, -6.415573268696039210e-06, -6.402841882921110230e-06, -6.390101538506597164e-06, -6.377352257224423975e-06, -6.364594060858539110e-06, -6.351826971205527897e-06, -6.339051010072245941e-06, -6.326266199279213180e-06, -6.313472560658259984e-06, -6.300670116053153113e-06, -6.287858887319444094e-06, -6.275038896325090099e-06, -6.262210164948136463e-06, -6.249372715079998937e-06, -6.236526568623252929e-06, -6.223671747492151045e-06, -6.210808273613091495e-06, -6.197936168922413268e-06, -6.185055455369623328e-06, -6.172166154915237526e-06, -6.159268289531204963e-06, -6.146361881200913074e-06, -6.133446951919728032e-06, -6.120523523692694211e-06, -6.107591618537807118e-06, -6.094651258483866163e-06, -6.081702465570847358e-06, -6.068745261850548754e-06, -6.055779669384222983e-06, -6.042805710246017060e-06, -6.029823406520488880e-06, -6.016832780303368706e-06, -6.003833853701375357e-06, -5.990826648832772712e-06, -5.977811187825065779e-06, -5.964787492817838255e-06, -5.951755585963235337e-06, -5.938715489420828161e-06, -5.925667225363264354e-06, -5.912610815973972582e-06, -5.899546283444815415e-06, -5.886473649982300625e-06, -5.873392937799679213e-06, -5.860304169122984752e-06, -5.847207366188953079e-06, -5.834102551243034305e-06, -5.820989746542409948e-06, -5.807868974356358000e-06, -5.794740256961238501e-06, -5.781603616646000938e-06, -5.768459075710020926e-06, -5.755306656460642970e-06, -5.742146381219552685e-06, -5.728978272314604630e-06, -5.715802352086178440e-06, -5.702618642884255715e-06, -5.689427167069503374e-06, -5.676227947010342077e-06, -5.663021005089339631e-06, -5.649806363695002386e-06, -5.636584045228125449e-06, -5.623354072099448093e-06, -5.610116466727290537e-06, -5.596871251543303603e-06, -5.583618448987245065e-06, -5.570358081507462460e-06, -5.557090171563847537e-06, -5.543814741625965158e-06, -5.530531814170736671e-06, -5.517241411688783330e-06, -5.503943556676271918e-06, -5.490638271641242923e-06, -5.477325579100673031e-06, -5.464005501581039251e-06, -5.450678061618256233e-06, -5.437343281758248859e-06, -5.424001184554537360e-06, -5.410651792571733014e-06, -5.397295128383749215e-06, -5.383931214571426392e-06, -5.370560073728300305e-06, -5.357181728455377545e-06, -5.343796201361629352e-06, -5.330403515066874070e-06, -5.317003692199413927e-06, -5.303596755396573744e-06, -5.290182727305295555e-06, -5.276761630579683058e-06, -5.263333487884504942e-06, -5.249898321892875711e-06, -5.236456155286700379e-06, -5.223007010756709193e-06, -5.209550911002957391e-06, -5.196087878732511097e-06, -5.182617936662860872e-06, -5.169141107519537315e-06, -5.155657414036753111e-06, -5.142166878957218379e-06, -5.128669525032804749e-06, -5.115165375022106748e-06, -5.101654451693984098e-06, -5.088136777825070588e-06, -5.074612376200402575e-06, -5.061081269613994117e-06, -5.047543480866349240e-06, -5.033999032768030483e-06, -5.020447948137230462e-06, -5.006890249800356316e-06, -4.993325960591939077e-06, -4.979755103355268099e-06, -4.966177700939878755e-06, -4.952593776205188754e-06, -4.939003352017957884e-06, -4.925406451252946161e-06, -4.911803096793444915e-06, -4.898193311528816164e-06, -4.884577118358105204e-06, -4.870954540187494431e-06, -4.857325599931045343e-06, -4.843690320510467298e-06, -4.830048724855825631e-06, -4.816400835902989552e-06, -4.802746676596700091e-06, -4.789086269891028345e-06, -4.775419638744065431e-06, -4.761746806123700096e-06, -4.748067795005403727e-06, -4.734382628369606238e-06, -4.720691329208333429e-06, -4.706993920516785776e-06, -4.693290425299877530e-06, -4.679580866569767615e-06, -4.665865267344070693e-06, -4.652143650648824324e-06, -4.638416039518999723e-06, -4.624682456993101925e-06, -4.610942926119098173e-06, -4.597197469952031822e-06, -4.583446111551528674e-06, -4.569688873988391980e-06, -4.555925780336168528e-06, -4.542156853677686050e-06, -4.528382117102021682e-06, -4.514601593705674267e-06, -4.500815306589496395e-06, -4.487023278865339380e-06, -4.473225533647486367e-06, -4.459422094059297306e-06, -4.445612983230806767e-06, -4.431798224296162512e-06, -4.417977840399707190e-06, -4.404151854690483639e-06, -4.390320290322756652e-06, -4.376483170459102110e-06, -4.362640518268416457e-06, -4.348792356923589892e-06, -4.334938709608016674e-06, -4.321079599507167137e-06, -4.307215049815154742e-06, -4.293345083732279675e-06, -4.279469724462594480e-06, -4.265588995219917993e-06, -4.251702919222322844e-06, -4.237811519692724156e-06, -4.223914819861839070e-06, -4.210012842965774396e-06, -4.196105612246559402e-06, -4.182193150952102608e-06, -4.168275482336790645e-06, -4.154352629658967480e-06, -4.140424616184619013e-06, -4.126491465184848067e-06, -4.112553199936428355e-06, -4.098609843722438899e-06, -4.084661419829723784e-06, -4.070707951552548800e-06, -4.056749462190121323e-06, -4.042785975047134965e-06, -4.028817513433773803e-06, -4.014844100666251096e-06, -4.000865760064323242e-06, -3.986882514954945571e-06, -3.972894388669773599e-06, -3.958901404545725459e-06, -3.944903585925569738e-06, -3.930900956155457229e-06, -3.916893538588490321e-06, -3.902881356582318278e-06, -3.888864433499646303e-06, -3.874842792708233844e-06, -3.860816457581438392e-06, -3.846785451495754845e-06, -3.832749797834461142e-06, -3.818709519985078012e-06, -3.804664641339983491e-06, -3.790615185296368459e-06, -3.776561175256813042e-06, -3.762502634626780242e-06, -3.748439586818271732e-06, -3.734372055247310477e-06, -3.720300063334567107e-06, -3.706223634505901178e-06, -3.692142792189843790e-06, -3.678057559821278786e-06, -3.663967960838935965e-06, -3.649874018685986542e-06, -3.635775756809948706e-06, -3.621673198663335599e-06, -3.607566367701094736e-06, -3.593455287384317160e-06, -3.579339981177675172e-06, -3.565220472550039813e-06, -3.551096784974441058e-06, -3.536968941928648876e-06, -3.522836966891996862e-06, -3.508700883352239385e-06, -3.494560714796733559e-06, -3.480416484719313757e-06, -3.466268216617725951e-06, -3.452115933991709181e-06, -3.437959660346132542e-06, -3.423799419191470371e-06, -3.409635234038291871e-06, -3.395467128403344081e-06, -3.381295125807063713e-06, -3.367119249771055964e-06, -3.352939523824872470e-06, -3.338755971497308465e-06, -3.324568616323138814e-06, -3.310377481840672625e-06, -3.296182591589788559e-06, -3.281983969115000666e-06, -3.267781637966117798e-06, -3.253575621692490137e-06, -3.239365943849312395e-06, -3.225152627995008595e-06, -3.210935697688729093e-06, -3.196715176496561443e-06, -3.182491087985859090e-06, -3.168263455725841493e-06, -3.154032303290641750e-06, -3.139797654257446934e-06, -3.125559532203907446e-06, -3.111317960715026358e-06, -3.097072963374321045e-06, -3.082824563770700246e-06, -3.068572785495880191e-06, -3.054317652141884162e-06, -3.040059187307249120e-06, -3.025797414591349321e-06, -3.011532357594968060e-06, -2.997264039923438893e-06, -2.982992485184030845e-06, -2.968717716986611215e-06, -2.954439758944171585e-06, -2.940158634670327375e-06, -2.925874367782984226e-06, -2.911586981901871443e-06, -2.897296500649051906e-06, -2.883002947648952139e-06, -2.868706346528879852e-06, -2.854406720916528997e-06, -2.840104094443696136e-06, -2.825798490743701214e-06, -2.811489933452026233e-06, -2.797178446206227150e-06, -2.782864052646568737e-06, -2.768546776413420374e-06, -2.754226641151037202e-06, -2.739903670504987691e-06, -2.725577888122727921e-06, -2.711249317654228812e-06, -2.696917982749373195e-06, -2.682583907061736541e-06, -2.668247114246007320e-06, -2.653907627958581622e-06, -2.639565471857519533e-06, -2.625220669603161352e-06, -2.610873244855526776e-06, -2.596523221278086737e-06, -2.582170622535190541e-06, -2.567815472292704106e-06, -2.553457794217867238e-06, -2.539097611979999208e-06, -2.524734949247867022e-06, -2.510369829693438200e-06, -2.496002276989359583e-06, -2.481632314809500280e-06, -2.467259966829583130e-06, -2.452885256724587280e-06, -2.438508208171883050e-06, -2.424128844851848996e-06, -2.409747190442079055e-06, -2.395363268623746724e-06, -2.380977103078983496e-06, -2.366588717488942962e-06, -2.352198135537598488e-06, -2.337805380909130114e-06, -2.323410477288536963e-06, -2.309013448361601662e-06, -2.294614317815481150e-06, -2.280213109335481173e-06, -2.265809846612038805e-06, -2.251404553331763379e-06, -2.236997253184374530e-06, -2.222587969860152207e-06, -2.208176727047974943e-06, -2.193763548438464042e-06, -2.179348457724582428e-06, -2.164931478595848991e-06, -2.150512634744708698e-06, -2.136091949863910172e-06, -2.121669447643927759e-06, -2.107245151779931327e-06, -2.092819085962832289e-06, -2.078391273886255950e-06, -2.063961739243942387e-06, -2.049530505727799549e-06, -2.035097597031071574e-06, -2.020663036848907158e-06, -2.006226848872591677e-06, -1.991789056795905020e-06, -1.977349684312503832e-06, -1.962908755113347384e-06, -1.948466292893040573e-06, -1.934022321344043189e-06, -1.919576864157280195e-06, -1.905129945025279142e-06, -1.890681587640233003e-06, -1.876231815691398299e-06, -1.861780652872080369e-06, -1.847328122870655243e-06, -1.832874249377566771e-06, -1.818419056082719878e-06, -1.803962566672882714e-06, -1.789504804838061213e-06, -1.775045794265676588e-06, -1.760585558641196157e-06, -1.746124121651268639e-06, -1.731661506981140279e-06, -1.717197738315264496e-06, -1.702732839337874907e-06, -1.688266833730409920e-06, -1.673799745175309980e-06, -1.659331597353411678e-06, -1.644862413944569471e-06, -1.630392218627576692e-06, -1.615921035080820101e-06, -1.601448886979642644e-06, -1.586975798000142610e-06, -1.572501791816619823e-06, -1.558026892102109277e-06, -1.543551122528413955e-06, -1.529074506766654768e-06, -1.514597068484686257e-06, -1.500118831350914801e-06, -1.485639819031673460e-06, -1.471160055191843474e-06, -1.456679563495459476e-06, -1.442198367603076277e-06, -1.427716491175617358e-06, -1.413233957871741021e-06, -1.398750791348462537e-06, -1.384267015261113277e-06, -1.369782653263923465e-06, -1.355297729007445301e-06, -1.340812266142350625e-06, -1.326326288316819519e-06, -1.311839819177163722e-06, -1.297352882367768609e-06, -1.282865501531708135e-06, -1.268377700308131317e-06, -1.253889502336077905e-06, -1.239400931251877353e-06, -1.224912010689753183e-06, -1.210422764282415478e-06, -1.195933215658457107e-06, -1.181443388445544496e-06, -1.166953306270994247e-06, -1.152462992755974350e-06, -1.137972471521880221e-06, -1.123481766187726906e-06, -1.108990900368186497e-06, -1.094499897677408681e-06, -1.080008781726407216e-06, -1.065517576123654763e-06, -1.051026304475714557e-06, -1.036534990384594701e-06, -1.022043657450958002e-06, -1.007552329274711284e-06, -9.930610294491708255e-07, -9.785697815674729061e-07, -9.640786092199628339e-07, -9.495875359922068506e-07, -9.350965854681837525e-07, -9.206057812309021654e-07, -9.061151468565503001e-07, -8.916247059209010035e-07, -8.771344819967040618e-07, -8.626444986510668573e-07, -8.481547794525050704e-07, -8.336653479618810153e-07, -8.191762277394532834e-07, -8.046874423422690465e-07, -7.901990153221829530e-07, -7.757109702290446181e-07, -7.612233306113094409e-07, -7.467361200101959828e-07, -7.322493619660915481e-07, -7.177630800159371817e-07, -7.032772976906203961e-07, -6.887920385220061793e-07, -6.743073260339030717e-07, -6.598231837490882450e-07, -6.453396351860698250e-07, -6.308567038596773792e-07, -6.163744132810300473e-07, -6.018927869581444989e-07, -5.874118483933143200e-07, -5.729316210869472832e-07, -5.584521285355833972e-07, -5.439733942292896448e-07, -5.294954416580568817e-07, -5.150182943059712970e-07, -5.005419756518137947e-07, -4.860665091722472730e-07, -4.715919183392035806e-07, -4.571182266204815745e-07, -4.426454574803658782e-07, -4.281736343770043615e-07, -4.137027807662337116e-07, -3.992329200996168052e-07, -3.847640758218205063e-07, -3.702962713770253759e-07, -3.558295302030883977e-07, -3.413638757321460654e-07, -3.268993313938056324e-07, -3.124359206125216918e-07, -2.979736668082086872e-07, -2.835125933961999903e-07, -2.690527237878584529e-07, -2.545940813879572224e-07, -2.401366895985088070e-07, -2.256805718161534876e-07, -2.112257514327629086e-07, -1.967722518360475063e-07, -1.823200964069417444e-07, -1.678693085234322268e-07, -1.534199115579447331e-07, -1.389719288779471473e-07, -1.245253838459161059e-07, -1.100802998199412765e-07, -9.563670015111146693e-08, -8.119460818734267183e-08, -6.675404727076325518e-08, -5.231504073832169655e-08, -3.787761192239176972e-08, -2.344178414816047498e-08, -9.007580737453689940e-09, 5.424974993876869212e-09, 1.985585973534717048e-08, 3.428505018187811233e-08, 4.871252303318943523e-08, 6.313825499641166853e-08, 7.756222278290445464e-08, 9.198440310765190981e-08, 1.064047726950909850e-07, 1.208233082727132969e-07, 1.352399865736774298e-07, 1.496547843387744897e-07, 1.640676783126082365e-07, 1.784786452462023045e-07, 1.928876618963953681e-07, 2.072947050252377897e-07, 2.216997514025968278e-07, 2.361027778029815612e-07, 2.505037610049351424e-07, 2.649026777968607698e-07, 2.792995049706290505e-07, 2.936942193241850618e-07, 3.080867976635137592e-07, 3.224772167988255220e-07, 3.368654535471570206e-07, 3.512514847317694005e-07, 3.656352871821856567e-07, 3.800168377335842644e-07, 3.943961132300490328e-07, 4.087730905175361903e-07, 4.231477464529131790e-07, 4.375200578969194932e-07, 4.518900017167812587e-07, 4.662575547881660785e-07, 4.806226939920205826e-07, 4.949853962139560644e-07, 5.093456383500660090e-07, 5.237033973005464524e-07, 5.380586499722954730e-07, 5.524113732815220530e-07, 5.667615441467197284e-07, 5.811091394976902426e-07, 5.954541362685212199e-07, 6.097965114008283956e-07, 6.241362418431552819e-07, 6.384733045510099075e-07, 6.528076764862535776e-07, 6.671393346197103706e-07, 6.814682559273517842e-07, 6.957944173922634400e-07, 7.101177960072334042e-07, 7.244383687683898058e-07, 7.387561126810087296e-07, 7.530710047588974703e-07, 7.673830220212354175e-07, 7.816921414951752935e-07, 7.959983402152284193e-07, 8.103015952226751799e-07, 8.246018835681540861e-07, 8.388991823078576436e-07, 8.531934685054945051e-07, 8.674847192348752500e-07, 8.817729115735654605e-07, 8.960580226086590984e-07, 9.103400294362043226e-07, 9.246189091580100689e-07, 9.388946388842609465e-07, 9.531671957329178567e-07, 9.674365568297349331e-07, 9.817026993076669364e-07, 9.959656003094730340e-07, 1.010225236983899857e-06, 1.024481586488282951e-06, 1.038734625987944534e-06, 1.052984332655597189e-06, 1.067230683673916933e-06, 1.081473656231765879e-06, 1.095713227526771446e-06, 1.109949374764730053e-06, 1.124182075159643749e-06, 1.138411305933110563e-06, 1.152637044316922566e-06, 1.166859267549271798e-06, 1.181077952877329484e-06, 1.195293077556657132e-06, 1.209504618850594556e-06, 1.223712554032856240e-06, 1.237916860383731549e-06, 1.252117515192671994e-06, 1.266314495757706562e-06, 1.280507779385453579e-06, 1.294697343390540068e-06, 1.308883165098164870e-06, 1.323065221840965680e-06, 1.337243490958426339e-06, 1.351417949802615901e-06, 1.365588575731872102e-06, 1.379755346113406826e-06, 1.393918238325204104e-06, 1.408077229752273465e-06, 1.422232297789224290e-06, 1.436383419839652765e-06, 1.450530573315560609e-06, 1.464673735639910358e-06, 1.478812884243512521e-06, 1.492947996564401314e-06, 1.507079050053593854e-06, 1.521206022168778908e-06, 1.535328890376906495e-06, 1.549447632156086289e-06, 1.563562224991850303e-06, 1.577672646379734646e-06, 1.591778873824642549e-06, 1.605880884840911925e-06, 1.619978656951701470e-06, 1.634072167692207282e-06, 1.648161394602708289e-06, 1.662246315237499699e-06, 1.676326907157923820e-06, 1.690403147934989513e-06, 1.704475015151247311e-06, 1.718542486397708545e-06, 1.732605539273225531e-06, 1.746664151390222594e-06, 1.760718300368406849e-06, 1.774767963837340004e-06, 1.788813119439000421e-06, 1.802853744820847403e-06, 1.816889817644735999e-06, 1.830921315579967739e-06, 1.844948216305895044e-06, 1.858970497514423575e-06, 1.872988136903803061e-06, 1.887001112184282718e-06, 1.901009401077553276e-06, 1.915012981313605750e-06, 1.929011830632676444e-06, 1.943005926787794822e-06, 1.956995247538510386e-06, 1.970979770656604638e-06, 1.984959473925504093e-06, 1.998934335137155567e-06, 2.012904332094585492e-06, 2.026869442611290051e-06, 2.040829644510668087e-06, 2.054784915628549503e-06, 2.068735233809469154e-06, 2.082680576908576916e-06, 2.096620922794202919e-06, 2.110556249341600096e-06, 2.124486534438619297e-06, 2.138411755985137549e-06, 2.152331891889947747e-06, 2.166246920073294247e-06, 2.180156818466291380e-06, 2.194061565010325021e-06, 2.207961137659609360e-06, 2.221855514377417603e-06, 2.235744673138687872e-06, 2.249628591929376493e-06, 2.263507248746527452e-06, 2.277380621597644747e-06, 2.291248688503280069e-06, 2.305111427493268169e-06, 2.318968816609286163e-06, 2.332820833904262733e-06, 2.346667457442400566e-06, 2.360508665298590212e-06, 2.374344435560954569e-06, 2.388174746327124906e-06, 2.401999575706766709e-06, 2.415818901821015562e-06, 2.429632702801860931e-06, 2.443440956794676671e-06, 2.457243641954541941e-06, 2.471040736448726821e-06, 2.484832218456147249e-06, 2.498618066167351041e-06, 2.512398257784000780e-06, 2.526172771521309036e-06, 2.539941585604402474e-06, 2.553704678270823571e-06, 2.567462027769941498e-06, 2.581213612362997442e-06, 2.594959410322497704e-06, 2.608699399934754376e-06, 2.622433559496173217e-06, 2.636161867315787129e-06, 2.649884301714661967e-06, 2.663600841025306997e-06, 2.677311463594201603e-06, 2.691016147778707846e-06, 2.704714871946504650e-06, 2.718407614481207863e-06, 2.732094353776161929e-06, 2.745775068237005976e-06, 2.759449736283539831e-06, 2.773118336346021633e-06, 2.786780846867730113e-06, 2.800437246304333132e-06, 2.814087513123332020e-06, 2.827731625806545085e-06, 2.841369562847057443e-06, 2.855001302748662399e-06, 2.868626824031412480e-06, 2.882246105225503434e-06, 2.895859124873779327e-06, 2.909465861534208420e-06, 2.923066293773806136e-06, 2.936660400174144159e-06, 2.950248159330806213e-06, 2.963829549850346794e-06, 2.977404550352151255e-06, 2.990973139470954030e-06, 3.004535295850086516e-06, 3.018090998150135864e-06, 3.031640225042187352e-06, 3.045182955210343884e-06, 3.058719167354220501e-06, 3.072248840182798735e-06, 3.085771952420026767e-06, 3.099288482804216762e-06, 3.112798410085015456e-06, 3.126301713025295159e-06, 3.139798370403566102e-06, 3.153288361007402193e-06, 3.166771663641904991e-06, 3.180248257123100664e-06, 3.193718120280996930e-06, 3.207181231958988437e-06, 3.220637571013939352e-06, 3.234087116315559945e-06, 3.247529846748883310e-06, 3.260965741210679030e-06, 3.274394778611256934e-06, 3.287816937876978548e-06, 3.301232197944199541e-06, 3.314640537764763578e-06, 3.328041936305429304e-06, 3.341436372544865071e-06, 3.354823825476111686e-06, 3.368204274106017440e-06, 3.381577697454657044e-06, 3.394944074557771930e-06, 3.408303384463198313e-06, 3.421655606233315540e-06, 3.435000718944455710e-06, 3.448338701686926964e-06, 3.461669533564498914e-06, 3.474993193696785349e-06, 3.488309661215695584e-06, 3.501618915267847666e-06, 3.514920935014044052e-06, 3.528215699629254675e-06, 3.541503188302078225e-06, 3.554783380237178646e-06, 3.568056254651687356e-06, 3.581321790777663885e-06, 3.594579967861516076e-06, 3.607830765163449515e-06, 3.621074161959859130e-06, 3.634310137539814426e-06, 3.647538671207434987e-06, 3.660759742281372522e-06, 3.673973330094817211e-06, 3.687179413994921725e-06, 3.700377973345268210e-06, 3.713568987522282373e-06, 3.726752435917625925e-06, 3.739928297937699799e-06, 3.753096553003612807e-06, 3.766257180550661563e-06, 3.779410160030731821e-06, 3.792555470908739668e-06, 3.805693092665063350e-06, 3.818823004794985086e-06, 3.831945186808104066e-06, 3.845059618230764477e-06, 3.858166278603116716e-06, 3.871265147478550309e-06, 3.884356204429059011e-06, 3.897439429039345459e-06, 3.910514800909260630e-06, 3.923582299655536864e-06, 3.936641904908334518e-06, 3.949693596313604334e-06, 3.962737353532543650e-06, 3.975773156241015329e-06, 3.988800984132003314e-06, 4.001820816912592952e-06, 4.014832634303494113e-06, 4.027836416044356326e-06, 4.040832141887879355e-06, 4.053819791602257739e-06, 4.066799344973490648e-06, 4.079770781799583946e-06, 4.092734081895899200e-06, 4.105689225094512480e-06, 4.118636191241368325e-06, 4.131574960198055974e-06, 4.144505511844213242e-06, 4.157427826071037404e-06, 4.170341882789609835e-06, 4.183247661924413662e-06, 4.196145143415763059e-06, 4.209034307222104636e-06, 4.221915133314282174e-06, 4.234787601680755202e-06, 4.247651692327101782e-06, 4.260507385273083544e-06, 4.273354660554454946e-06, 4.286193498225344286e-06, 4.299023878351800156e-06, 4.311845781020078813e-06, 4.324659186330184705e-06, 4.337464074398856266e-06, 4.350260425358995008e-06, 4.363048219359713810e-06, 4.375827436565760932e-06, 4.388598057159932363e-06, 4.401360061339508357e-06, 4.414113429318137233e-06, 4.426858141328125750e-06, 4.439594177614697921e-06, 4.452321518441222898e-06, 4.465040144088655932e-06, 4.477750034852729609e-06, 4.490451171046209503e-06, 4.503143532998450327e-06, 4.515827101054758116e-06, 4.528501855578761927e-06, 4.541167776949007063e-06, 4.553824845561253926e-06, 4.566473041827980808e-06, 4.579112346178333913e-06, 4.591742739057655565e-06, 4.604364200929810155e-06, 4.616976712273678276e-06, 4.629580253585622432e-06, 4.642174805378828898e-06, 4.654760348183370395e-06, 4.667336862545715662e-06, 4.679904329030985105e-06, 4.692462728219536403e-06, 4.705012040709346369e-06, 4.717552247115426496e-06, 4.730083328069294405e-06, 4.742605264221269312e-06, 4.755118036237110146e-06, 4.767621624800290685e-06, 4.780116010611493026e-06, 4.792601174388610131e-06, 4.805077096866204570e-06, 4.817543758797859037e-06, 4.830001140952717914e-06, 4.842449224117847110e-06, 4.854887989097717363e-06, 4.867317416713567277e-06, 4.879737487805813977e-06, 4.892148183230585353e-06, 4.904549483862107002e-06, 4.916941370592090669e-06, 4.929323824329777447e-06, 4.941696826001465976e-06, 4.954060356552684240e-06, 4.966414396945526493e-06, 4.978758928158006973e-06, 4.991093931189230191e-06, 5.003419387053762397e-06, 5.015735276783894856e-06, 5.028041581431436160e-06, 5.040338282064267357e-06, 5.052625359768654342e-06, 5.064902795648757429e-06, 5.077170570826054519e-06, 5.089428666441615388e-06, 5.101677063653332732e-06, 5.113915743635420723e-06, 5.126144687583450625e-06, 5.138363876708755288e-06, 5.150573292240777129e-06, 5.162772915429261097e-06, 5.174962727538134012e-06, 5.187142709853434490e-06, 5.199312843677085558e-06, 5.211473110329843171e-06, 5.223623491150073099e-06, 5.235763967496646933e-06, 5.247894520742863778e-06, 5.260015132284182813e-06, 5.272125783532206818e-06, 5.284226455916932741e-06, 5.296317130888935349e-06, 5.308397789913938592e-06, 5.320468414477771594e-06, 5.332528986085831635e-06, 5.344579486260400751e-06, 5.356619896542283045e-06, 5.368650198493084902e-06, 5.380670373689120590e-06, 5.392680403729208346e-06, 5.404680270228614093e-06, 5.416669954821851732e-06, 5.428649439162085980e-06, 5.440618704921275524e-06, 5.452577733789592798e-06, 5.464526507477600862e-06, 5.476465007713111754e-06, 5.488393216242729784e-06, 5.500311114834112268e-06, 5.512218685270592560e-06, 5.524115909356048796e-06, 5.536002768914385516e-06, 5.547879245786888373e-06, 5.559745321834371365e-06, 5.571600978936737226e-06, 5.583446198992359936e-06, 5.595280963920359854e-06, 5.607105255657366355e-06, 5.618919056159659981e-06, 5.630722347402725204e-06, 5.642515111381247039e-06, 5.654297330108618069e-06, 5.666068985619079749e-06, 5.677830059964558732e-06, 5.689580535216809020e-06, 5.701320393466956258e-06, 5.713049616825469783e-06, 5.724768187421659484e-06, 5.736476087405902655e-06, 5.748173298946419340e-06, 5.759859804231389064e-06, 5.771535585468531560e-06, 5.783200624884535011e-06, 5.794854904727269358e-06, 5.806498407262560791e-06, 5.818131114776384719e-06, 5.829753009574361789e-06, 5.841364073981746868e-06, 5.852964290342975041e-06, 5.864553641023774104e-06, 5.876132108408023771e-06, 5.887699674899908829e-06, 5.899256322923357555e-06, 5.910802034921677496e-06, 5.922336793359539213e-06, 5.933860580719915110e-06, 5.945373379506199557e-06, 5.956875172241747251e-06, 5.968365941469802073e-06, 5.979845669753098979e-06, 5.991314339675939230e-06, 6.002771933841102957e-06, 6.014218434871905760e-06, 6.025653825411771799e-06, 6.037078088124238032e-06, 6.048491205692423126e-06, 6.059893160821722713e-06, 6.071283936234036015e-06, 6.082663514675148583e-06, 6.094031878909003815e-06, 6.105389011719751925e-06, 6.116734895913437235e-06, 6.128069514315404562e-06, 6.139392849769708829e-06, 6.150704885143912669e-06, 6.162005603323931376e-06, 6.173294987216047152e-06, 6.184573019749081743e-06, 6.195839683868668809e-06, 6.207094962544608704e-06, 6.218338838765107810e-06, 6.229571295539419581e-06, 6.240792315896883166e-06, 6.252001882889519562e-06, 6.263199979586292116e-06, 6.274386589080448614e-06, 6.285561694483866480e-06, 6.296725278929064489e-06, 6.307877325571386409e-06, 6.319017817583799376e-06, 6.330146738161645750e-06, 6.341264070522006990e-06, 6.352369797901281989e-06, 6.363463903556728674e-06, 6.374546370768496882e-06, 6.385617182834059125e-06, 6.396676323075401892e-06, 6.407723774833347991e-06, 6.418759521469802882e-06, 6.429783546369585111e-06, 6.440795832935549946e-06, 6.451796364593103211e-06, 6.462785124789710857e-06, 6.473762096992445953e-06, 6.484727264689943641e-06, 6.495680611392075870e-06, 6.506622120629798087e-06, 6.517551775954768072e-06, 6.528469560941399146e-06, 6.539375459183788826e-06, 6.550269454297830484e-06, 6.561151529920671239e-06, 6.572021669710338422e-06, 6.582879857347614056e-06, 6.593726076533201532e-06, 6.604560310989626353e-06, 6.615382544460874444e-06, 6.626192760712347268e-06, 6.636990943530379859e-06, 6.647777076724300807e-06, 6.658551144123465949e-06, 6.669313129579225181e-06, 6.680063016964480304e-06, 6.690800790173256426e-06, 6.701526433122596776e-06, 6.712239929749709051e-06, 6.722941264013960174e-06, 6.733630419896384174e-06, 6.744307381399683873e-06, 6.754972132547811611e-06, 6.765624657387889469e-06, 6.776264939987392031e-06, 6.786892964436035275e-06, 6.797508714845351361e-06, 6.808112175348691168e-06, 6.818703330100831273e-06, 6.829282163279815405e-06, 6.839848659084192261e-06, 6.850402801734870519e-06, 6.860944575474757994e-06, 6.871473964568218692e-06, 6.881990953303059105e-06, 6.892495525987721140e-06, 6.902987666953075290e-06, 6.913467360552136877e-06, 6.923934591159960173e-06, 6.934389343173256391e-06, 6.944831601012291032e-06, 6.955261349118069202e-06, 6.965678571954256677e-06, 6.976083254006714888e-06, 6.986475379783486513e-06, 6.996854933814477001e-06, 7.007221900653699205e-06, 7.017576264874132738e-06, 7.027918011074430784e-06, 7.038247123873663407e-06, 7.048563587913260649e-06, 7.058867387858481281e-06, 7.069158508396033491e-06, 7.079436934233605624e-06, 7.089702650104198758e-06, 7.099955640761417203e-06, 7.110195890981301475e-06, 7.120423385564353555e-06, 7.130638109330303073e-06, 7.140840047124708233e-06, 7.151029183813865994e-06, 7.161205504286641663e-06, 7.171368993455980844e-06, 7.181519636256525891e-06, 7.191657417644135640e-06, 7.201782322600234073e-06, 7.211894336127091504e-06, 7.221993443249677031e-06, 7.232079629017611803e-06, 7.242152878500481533e-06, 7.252213176792074208e-06, 7.262260509009932853e-06, 7.272294860293079554e-06, 7.282316215803399512e-06, 7.292324560727468091e-06, 7.302319880271584663e-06, 7.312302159668214295e-06, 7.322271384170885223e-06, 7.332227539056137027e-06, 7.342170609625363776e-06, 7.352100581200170588e-06, 7.362017439126606263e-06, 7.371921168774705876e-06, 7.381811755536192783e-06, 7.391689184826346326e-06, 7.401553442083598643e-06, 7.411404512768995115e-06, 7.421242382368256035e-06, 7.431067036388799297e-06, 7.440878460361724137e-06, 7.450676639841382544e-06, 7.460461560405386875e-06, 7.470233207654116042e-06, 7.479991567212662834e-06, 7.489736624728031939e-06, 7.499468365871012726e-06, 7.509186776335767593e-06, 7.518891841839833662e-06, 7.528583548123646739e-06, 7.538261880952470015e-06, 7.547926826113625961e-06, 7.557578369418308976e-06, 7.567216496701241493e-06, 7.576841193820184395e-06, 7.586452446657728489e-06, 7.596050241118701737e-06, 7.605634563131865865e-06, 7.615205398649666486e-06, 7.624762733648025580e-06, 7.634306554126162766e-06, 7.643836846108181799e-06, 7.653353595640522691e-06, 7.662856788793779447e-06, 7.672346411662218948e-06, 7.681822450363833468e-06, 7.691284891039922239e-06, 7.700733719856817707e-06, 7.710168923003396944e-06, 7.719590486692685932e-06, 7.728998397161600373e-06, 7.738392640670357841e-06, 7.747773203504458152e-06, 7.757140071972348940e-06, 7.766493232405008912e-06, 7.775832671160071209e-06, 7.785158374617262981e-06, 7.794470329180299350e-06, 7.803768521278174288e-06, 7.813052937362551759e-06, 7.822323563909585142e-06, 7.831580387419368356e-06, 7.840823394416166251e-06, 7.850052571447836935e-06, 7.859267905087993398e-06, 7.868469381931400737e-06, 7.877656988599942656e-06, 7.886830711737950926e-06, 7.895990538013887593e-06, 7.905136454121717172e-06, 7.914268446778722991e-06, 7.923386502725178552e-06, 7.932490608728086324e-06, 7.941580751577051006e-06, 7.950656918085943095e-06, 7.959719095094637000e-06, 7.968767269464294763e-06, 7.977801428083515517e-06, 7.986821557863414223e-06, 7.995827645739530886e-06, 8.004819678673119737e-06, 8.013797643648872408e-06, 8.022761527674755302e-06, 8.031711317785628120e-06, 8.040647001039225532e-06, 8.049568564517664901e-06, 8.058475995329306363e-06, 8.067369280604449902e-06, 8.076248407499262195e-06, 8.085113363195248060e-06, 8.093964134897259935e-06, 8.102800709834710822e-06, 8.111623075263292074e-06, 8.120431218460468875e-06, 8.129225126731170602e-06, 8.138004787403386260e-06, 8.146770187829753510e-06, 8.155521315389290010e-06, 8.164258157483197207e-06, 8.172980701538731286e-06, 8.181688935008671226e-06, 8.190382845369333358e-06, 8.199062420122194279e-06, 8.207727646793599476e-06, 8.216378512934268652e-06, 8.225015006120999964e-06, 8.233637113954174659e-06, 8.242244824059566336e-06, 8.250838124087722617e-06, 8.259417001714141325e-06, 8.267981444638840190e-06, 8.276531440588025512e-06, 8.285066977311569686e-06, 8.293588042584781512e-06, 8.302094624207962339e-06, 8.310586710006412849e-06, 8.319064287830072219e-06, 8.327527345555074965e-06, 8.335975871081484286e-06, 8.344409852334794695e-06, 8.352829277265588130e-06, 8.361234133849218853e-06, 8.369624410087299148e-06, 8.378000094005436048e-06, 8.386361173654744135e-06, 8.394707637111581270e-06, 8.403039472477418143e-06, 8.411356667878611276e-06, 8.419659211467898875e-06, 8.427947091422079967e-06, 8.436220295943654252e-06, 8.444478813260278307e-06, 8.452722631625028170e-06, 8.460951739315816577e-06, 8.469166124637102279e-06, 8.477365775917459053e-06, 8.485550681511271463e-06, 8.493720829798260527e-06, 8.501876209183149976e-06, 8.510016808097233275e-06, 8.518142614996435604e-06, 8.526253618361008931e-06, 8.534349806698889648e-06, 8.542431168542020755e-06, 8.550497692447803675e-06, 8.558549367000279015e-06, 8.566586180807863300e-06, 8.574608122504854990e-06, 8.582615180751180375e-06, 8.590607344231839616e-06, 8.598584601658621135e-06, 8.606546941768136505e-06, 8.614494353321462995e-06, 8.622426825107602858e-06, 8.630344345939588673e-06, 8.638246904656233312e-06, 8.646134490123058290e-06, 8.654007091230511608e-06, 8.661864696893723807e-06, 8.669707296055692813e-06, 8.677534877683678962e-06, 8.685347430770658510e-06, 8.693144944336900811e-06, 8.700927407425802605e-06, 8.708694809109227716e-06, 8.716447138483229533e-06, 8.724184384669831478e-06, 8.731906536817931632e-06, 8.739613584101469759e-06, 8.747305515719271452e-06, 8.754982320898138106e-06, 8.762643988889379169e-06, 8.770290508970130124e-06, 8.777921870445014365e-06, 8.785538062641953775e-06, 8.793139074917372897e-06, 8.800724896652272088e-06, 8.808295517253899559e-06, 8.815850926155558258e-06, 8.823391112816561819e-06, 8.830916066721846623e-06, 8.838425777383533726e-06, 8.845920234338652035e-06, 8.853399427150286885e-06, 8.860863345409096227e-06, 8.868311978729617566e-06, 8.875745316753630678e-06, 8.883163349149673113e-06, 8.890566065611429133e-06, 8.897953455859035840e-06, 8.905325509638762995e-06, 8.912682216722794487e-06, 8.920023566910487020e-06, 8.927349550026367732e-06, 8.934660155921138769e-06, 8.941955374473227363e-06, 8.949235195585096152e-06, 8.956499609186597429e-06, 8.963748605234497116e-06, 8.970982173710797630e-06, 8.978200304624193095e-06, 8.985402988009650899e-06, 8.992590213928433723e-06, 8.999761972467887781e-06, 9.006918253742645603e-06, 9.014059047892698196e-06, 9.021184345084807887e-06, 9.028294135512013660e-06, 9.035388409393529512e-06, 9.042467156975928603e-06, 9.049530368531227270e-06, 9.056578034358219947e-06, 9.063610144782126805e-06, 9.070626690154656428e-06, 9.077627660853631426e-06, 9.084613047284438553e-06, 9.091582839877867086e-06, 9.098537029091597898e-06, 9.105475605409896843e-06, 9.112398559343133633e-06, 9.119305881429325139e-06, 9.126197562231968673e-06, 9.133073592341522609e-06, 9.139933962375038765e-06, 9.146778662976118361e-06, 9.153607684814739224e-06, 9.160421018588407749e-06, 9.167218655020622386e-06, 9.174000584860594117e-06, 9.180766798886124674e-06, 9.187517287900382731e-06, 9.194252042733223583e-06, 9.200971054242220831e-06, 9.207674313310579292e-06, 9.214361810848668131e-06, 9.221033537793516026e-06, 9.227689485108621438e-06, 9.234329643785133367e-06, 9.240954004840409711e-06, 9.247562559317517509e-06, 9.254155298288388990e-06, 9.260732212850343654e-06, 9.267293294127606156e-06, 9.273838533272109292e-06, 9.280367921461689821e-06, 9.286881449901408138e-06, 9.293379109823062084e-06, 9.299860892485468155e-06, 9.306326789173939730e-06, 9.312776791201864252e-06, 9.319210889907452306e-06, 9.325629076657991430e-06, 9.332031342846402070e-06, 9.338417679892558953e-06, 9.344788079244251627e-06, 9.351142532375563234e-06, 9.357481030786662146e-06, 9.363803566006500604e-06, 9.370110129589809454e-06, 9.376400713118326338e-06, 9.382675308202025589e-06, 9.388933906475738569e-06, 9.395176499603515889e-06, 9.401403079275188454e-06, 9.407613637207948027e-06, 9.413808165146088039e-06, 9.419986654860918880e-06, 9.426149098150586643e-06, 9.432295486841197975e-06, 9.438425812785075194e-06, 9.444540067861689718e-06, 9.450638243978741183e-06, 9.456720333069389345e-06, 9.462786327094739269e-06, 9.468836218043722745e-06, 9.474869997931463519e-06, 9.480887658800600352e-06, 9.486889192721032916e-06, 9.492874591789396630e-06, 9.498843848130546661e-06, 9.504796953895602976e-06, 9.510733901262949838e-06, 9.516654682439330172e-06, 9.522559289657023254e-06, 9.528447715176424770e-06, 9.534319951285763909e-06, 9.540175990299627832e-06, 9.546015824560276266e-06, 9.551839446437165472e-06, 9.557646848327068523e-06, 9.563438022653841523e-06, 9.569212961869433273e-06, 9.574971658452297927e-06, 9.580714104908548653e-06, 9.586440293771569693e-06, 9.592150217601868976e-06, 9.597843868988157243e-06, 9.603521240545635339e-06, 9.609182324917193621e-06, 9.614827114773137512e-06, 9.620455602811148538e-06, 9.626067781755987871e-06, 9.631663644360766876e-06, 9.637243183405065002e-06, 9.642806391696301976e-06, 9.648353262069199094e-06, 9.653883787385824955e-06, 9.659397960536366266e-06, 9.664895774437747174e-06, 9.670377222034581333e-06, 9.675842296299019441e-06, 9.681290990230706882e-06, 9.686723296856478800e-06, 9.692139209231452767e-06, 9.697538720437853105e-06, 9.702921823584500970e-06, 9.708288511809401192e-06, 9.713638778277053790e-06, 9.718972616179453474e-06, 9.724290018736992579e-06, 9.729590979196770390e-06, 9.734875490833845056e-06, 9.740143546950744003e-06, 9.745395140877362292e-06, 9.750630265971945178e-06, 9.755848915619848050e-06, 9.761051083233253527e-06, 9.766236762253504184e-06, 9.771405946148530958e-06, 9.776558628413913637e-06, 9.781694802573673682e-06, 9.786814462178636064e-06, 9.791917600807589699e-06, 9.797004212066950330e-06, 9.802074289590862171e-06, 9.807127827040806577e-06, 9.812164818107009813e-06, 9.817185256505674951e-06, 9.822189135982356447e-06, 9.827176450309376695e-06, 9.832147193286759453e-06, 9.837101358742982008e-06, 9.842038940533735125e-06, 9.846959932541753634e-06, 9.851864328678966204e-06, 9.856752122884037252e-06, 9.861623309123435899e-06, 9.866477881392262672e-06, 9.871315833711823604e-06, 9.876137160132796442e-06, 9.880941854732659059e-06, 9.885729911616778729e-06, 9.890501324919167691e-06, 9.895256088800241892e-06, 9.899994197448930104e-06, 9.904715645082479104e-06, 9.909420425945172960e-06, 9.914108534309168207e-06, 9.918779964475401864e-06, 9.923434710771194335e-06, 9.928072767552456772e-06, 9.932694129203359040e-06, 9.937298790135294644e-06, 9.941886744787649833e-06, 9.946457987627757861e-06, 9.951012513150588976e-06, 9.955550315879638102e-06, 9.960071390365630582e-06, 9.964575731187135427e-06, 9.969063332951547869e-06, 9.973534190292824403e-06, 9.977988297873480086e-06, 9.982425650384358143e-06, 9.986846242543632166e-06, 9.991250069097512538e-06, 9.995637124820241348e-06, 1.000000740451366380e-05, 1.000436090300830901e-05, 1.000869761516193483e-05, 1.001301753586047649e-05, 1.001732066001783320e-05, 1.002160698257590196e-05, 1.002587649850418460e-05, 1.003012920280098205e-05, 1.003436509049179179e-05, 1.003858415663032087e-05, 1.004278639629828265e-05, 1.004697180460538663e-05, 1.005114037668908431e-05, 1.005529210771551113e-05, 1.005942699287808545e-05, 1.006354502739854705e-05, 1.006764620652652508e-05, 1.007173052553953811e-05, 1.007579797974373276e-05, 1.007984856447264186e-05, 1.008388227508805363e-05, 1.008789910697975575e-05, 1.009189905556559307e-05, 1.009588211629121512e-05, 1.009984828463097398e-05, 1.010379755608661141e-05, 1.010772992618818716e-05, 1.011164539049375202e-05, 1.011554394458943427e-05, 1.011942558408925832e-05, 1.012329030463588680e-05, 1.012713810189944653e-05, 1.013096897157835691e-05, 1.013478290939907246e-05, 1.013857991111606922e-05, 1.014235997251236148e-05, 1.014612308939865303e-05, 1.014986925761326772e-05, 1.015359847302369611e-05, 1.015731073152480488e-05, 1.016100602903951785e-05, 1.016468436151954606e-05, 1.016834572494403936e-05, 1.017199011532045545e-05, 1.017561752868440059e-05, 1.017922796109941455e-05, 1.018282140865770064e-05, 1.018639786747927029e-05, 1.018995733371160252e-05, 1.019349980353155820e-05, 1.019702527314327778e-05, 1.020053373877911127e-05, 1.020402519670023660e-05, 1.020749964319489272e-05, 1.021095707458005841e-05, 1.021439748720114732e-05, 1.021782087743124232e-05, 1.022122724167159516e-05, 1.022461657635226184e-05, 1.022798887793027293e-05, 1.023134414289202566e-05, 1.023468236775140517e-05, 1.023800354905040790e-05, 1.024130768335997854e-05, 1.024459476727818711e-05, 1.024786479743175372e-05, 1.025111777047588076e-05, 1.025435368309354657e-05, 1.025757253199584080e-05, 1.026077431392269964e-05, 1.026395902564109830e-05, 1.026712666394740230e-05, 1.027027722566541090e-05, 1.027341070764741413e-05, 1.027652710677375915e-05, 1.027962641995301967e-05, 1.028270864412188068e-05, 1.028577377624560441e-05, 1.028882181331731368e-05, 1.029185275235817488e-05, 1.029486659041828735e-05, 1.029786332457498932e-05, 1.030084295193426227e-05, 1.030380546963067507e-05, 1.030675087482649963e-05, 1.030967916471233095e-05, 1.031259033650707357e-05, 1.031548438745764340e-05, 1.031836131483958607e-05, 1.032122111595625700e-05, 1.032406378813943296e-05, 1.032688932874893426e-05, 1.032969773517298393e-05, 1.033248900482778761e-05, 1.033526313515824160e-05, 1.033802012363701981e-05, 1.034075996776514805e-05, 1.034348266507184984e-05, 1.034618821311466672e-05, 1.034887660947910755e-05, 1.035154785177944814e-05, 1.035420193765767920e-05, 1.035683886478419585e-05, 1.035945863085760280e-05, 1.036206123360458559e-05, 1.036464667078053063e-05, 1.036721494016859345e-05, 1.036976603958026454e-05, 1.037229996685534051e-05, 1.037481671986179710e-05, 1.037731629649571796e-05, 1.037979869468179953e-05, 1.038226391237261917e-05, 1.038471194754904348e-05, 1.038714279822023838e-05, 1.038955646242354893e-05, 1.039195293822444674e-05, 1.039433222371703991e-05, 1.039669431702321754e-05, 1.039903921629331548e-05, 1.040136691970578260e-05, 1.040367742546730276e-05, 1.040597073181302352e-05, 1.040824683700621903e-05, 1.041050573933789866e-05, 1.041274743712810810e-05, 1.041497192872458930e-05, 1.041717921250334293e-05, 1.041936928686894686e-05, 1.042154215025377519e-05, 1.042369780111868266e-05, 1.042583623795267769e-05, 1.042795745927283259e-05, 1.043006146362483075e-05, 1.043214824958236865e-05, 1.043421781574693898e-05, 1.043627016074902837e-05, 1.043830528324687228e-05, 1.044032318192684456e-05, 1.044232385550409619e-05, 1.044430730272122538e-05, 1.044627352234942282e-05, 1.044822251318832084e-05, 1.045015427406540223e-05, 1.045206880383634749e-05, 1.045396610138555325e-05, 1.045584616562481595e-05, 1.045770899549485821e-05, 1.045955458996424293e-05, 1.046138294802967992e-05, 1.046319406871653917e-05, 1.046498795107772098e-05, 1.046676459419471804e-05, 1.046852399717732755e-05, 1.047026615916322929e-05, 1.047199107931842446e-05, 1.047369875683733900e-05, 1.047538919094200532e-05, 1.047706238088327361e-05, 1.047871832593979197e-05, 1.048035702541856887e-05, 1.048197847865462924e-05, 1.048358268501134989e-05, 1.048516964388004955e-05, 1.048673935468060213e-05, 1.048829181686066931e-05, 1.048982702989616809e-05, 1.049134499329156895e-05, 1.049284570657879808e-05, 1.049432916931842497e-05, 1.049579538109919648e-05, 1.049724434153781665e-05, 1.049867605027923469e-05, 1.050009050699650264e-05, 1.050148771139078390e-05, 1.050286766319162931e-05, 1.050423036215643510e-05, 1.050557580807089006e-05, 1.050690400074876214e-05, 1.050821494003195434e-05, 1.050950862579047928e-05, 1.051078505792266253e-05, 1.051204423635470210e-05, 1.051328616104103947e-05, 1.051451083196421560e-05, 1.051571824913488448e-05, 1.051690841259171146e-05, 1.051808132240174258e-05, 1.051923697865982522e-05, 1.052037538148910271e-05, 1.052149653104071284e-05, 1.052260042749384881e-05, 1.052368707105601168e-05, 1.052475646196256140e-05, 1.052580860047704382e-05, 1.052684348689104154e-05, 1.052786112152419262e-05, 1.052886150472428539e-05, 1.052984463686718735e-05, 1.053081051835672991e-05, 1.053175914962487616e-05, 1.053269053113160396e-05, 1.053360466336490085e-05, 1.053450154684097581e-05, 1.053538118210394247e-05, 1.053624356972592755e-05, 1.053708871030719620e-05, 1.053791660447599104e-05, 1.053872725288849496e-05, 1.053952065622913430e-05, 1.054029681521022818e-05, 1.054105573057191399e-05, 1.054179740308274540e-05, 1.054252183353895877e-05, 1.054322902276487303e-05, 1.054391897161292009e-05, 1.054459168096338405e-05, 1.054524715172459762e-05, 1.054588538483277615e-05, 1.054650638125224293e-05, 1.054711014197530723e-05, 1.054769666802217450e-05, 1.054826596044087351e-05, 1.054881802030769007e-05, 1.054935284872665878e-05, 1.054987044682974939e-05, 1.055037081577711582e-05, 1.055085395675644734e-05, 1.055131987098375631e-05, 1.055176855970273613e-05, 1.055220002418510511e-05, 1.055261426573042865e-05, 1.055301128566632077e-05, 1.055339108534801725e-05, 1.055375366615905661e-05, 1.055409902951055172e-05, 1.055442717684156410e-05, 1.055473810961926155e-05, 1.055503182933833027e-05, 1.055530833752152881e-05, 1.055556763571950347e-05, 1.055580972551074756e-05, 1.055603460850155912e-05, 1.055624228632610696e-05, 1.055643276064636967e-05, 1.055660603315226099e-05, 1.055676210556140957e-05, 1.055690097961929114e-05, 1.055702265709936228e-05, 1.055712713980262850e-05, 1.055721442955803891e-05, 1.055728452822241509e-05, 1.055733743768024949e-05, 1.055737315984385283e-05, 1.055739169665336762e-05, 1.055739305007662928e-05, 1.055737722210931350e-05, 1.055734421477484647e-05, 1.055729403012438283e-05, 1.055722667023685316e-05, 1.055714213721888768e-05, 1.055704043320487898e-05, 1.055692156035699215e-05, 1.055678552086502083e-05, 1.055663231694658874e-05, 1.055646195084690917e-05, 1.055627442483899844e-05, 1.055606974122347933e-05, 1.055584790232873362e-05, 1.055560891051080208e-05, 1.055535276815336247e-05, 1.055507947766784646e-05, 1.055478904149324305e-05, 1.055448146209626297e-05, 1.055415674197123359e-05, 1.055381488364011419e-05, 1.055345588965252985e-05, 1.055307976258567149e-05, 1.055268650504440089e-05, 1.055227611966120837e-05, 1.055184860909607213e-05, 1.055140397603666670e-05, 1.055094222319825783e-05, 1.055046335332359748e-05, 1.054996736918304245e-05, 1.054945427357460343e-05, 1.054892406932377060e-05, 1.054837675928352539e-05, 1.054781234633451337e-05, 1.054723083338479345e-05, 1.054663222337006325e-05, 1.054601651925341850e-05, 1.054538372402549538e-05, 1.054473384070456196e-05, 1.054406687233617772e-05, 1.054338282199352388e-05, 1.054268169277715438e-05, 1.054196348781518052e-05, 1.054122821026311683e-05, 1.054047586330395897e-05, 1.053970645014813798e-05, 1.053891997403349999e-05, 1.053811643822533668e-05, 1.053729584601632430e-05, 1.053645820072659485e-05, 1.053560350570364455e-05, 1.053473176432236437e-05, 1.053384297998499598e-05, 1.053293715612124184e-05, 1.053201429618812295e-05, 1.053107440366998386e-05, 1.053011748207852830e-05, 1.052914353495284120e-05, 1.052815256585925482e-05, 1.052714457839153346e-05, 1.052611957617065149e-05, 1.052507756284492548e-05, 1.052401854208997531e-05, 1.052294251760870714e-05, 1.052184949313125248e-05, 1.052073947241506304e-05, 1.051961245924477857e-05, 1.051846845743239634e-05, 1.051730747081707283e-05, 1.051612950326513399e-05, 1.051493455867024627e-05, 1.051372264095326251e-05, 1.051249375406216093e-05, 1.051124790197214846e-05, 1.050998508868564212e-05, 1.050870531823211825e-05, 1.050740859466843607e-05, 1.050609492207838198e-05, 1.050476430457294568e-05, 1.050341674629038287e-05, 1.050205225139574259e-05, 1.050067082408158043e-05, 1.049927246856736392e-05, 1.049785718909958601e-05, 1.049642498995191925e-05, 1.049497587542506669e-05, 1.049350984984684155e-05, 1.049202691757204519e-05, 1.049052708298257215e-05, 1.048901035048726283e-05, 1.048747672452207619e-05, 1.048592620954994582e-05, 1.048435881006078671e-05, 1.048277453057155789e-05, 1.048117337562606259e-05, 1.047955534979519043e-05, 1.047792045767674636e-05, 1.047626870389553706e-05, 1.047460009310322522e-05, 1.047291462997849728e-05, 1.047121231922679743e-05, 1.046949316558058346e-05, 1.046775717379921321e-05, 1.046600434866884976e-05, 1.046423469500270699e-05, 1.046244821764056515e-05, 1.046064492144928243e-05, 1.045882481132247818e-05, 1.045698789218062948e-05, 1.045513416897098471e-05, 1.045326364666764999e-05, 1.045137633027142483e-05, 1.044947222480999697e-05, 1.044755133533777800e-05, 1.044561366693595088e-05, 1.044365922471242581e-05, 1.044168801380194194e-05, 1.043970003936573528e-05, 1.043769530659198259e-05, 1.043567382069548625e-05, 1.043363558691771495e-05, 1.043158061052691883e-05, 1.042950889681780261e-05, 1.042742045111189990e-05, 1.042531527875735132e-05, 1.042319338512890787e-05, 1.042105477562793094e-05, 1.041889945568254987e-05, 1.041672743074718250e-05, 1.041453870630302307e-05, 1.041233328785784063e-05, 1.041011118094590454e-05, 1.040787239112813854e-05, 1.040561692399186503e-05, 1.040334478515089143e-05, 1.040105598024586933e-05, 1.039875051494349997e-05, 1.039642839493725422e-05, 1.039408962594708966e-05, 1.039173421371915075e-05, 1.038936216402621098e-05, 1.038697348266781854e-05, 1.038456817546929345e-05, 1.038214624828278463e-05, 1.037970770698680918e-05, 1.037725255748601851e-05, 1.037478080571190822e-05, 1.037229245762180334e-05, 1.036978751919967145e-05, 1.036726599645594824e-05, 1.036472789542698012e-05, 1.036217322217563581e-05, 1.035960198279139440e-05, 1.035701418338944076e-05, 1.035440983011161416e-05, 1.035178892912592892e-05, 1.034915148662646931e-05, 1.034649750883388935e-05, 1.034382700199489946e-05, 1.034113997238220215e-05, 1.033843642629497137e-05, 1.033571637005856458e-05, 1.033297981002412289e-05, 1.033022675256957741e-05, 1.032745720409840235e-05, 1.032467117104048240e-05, 1.032186865985190777e-05, 1.031904967701438125e-05, 1.031621422903635154e-05, 1.031336232245202562e-05, 1.031049396382139921e-05, 1.030760915973096326e-05, 1.030470791679299406e-05, 1.030179024164583113e-05, 1.029885614095390597e-05, 1.029590562140738296e-05, 1.029293868972262012e-05, 1.028995535264189129e-05, 1.028695561693342170e-05, 1.028393948939134903e-05, 1.028090697683581146e-05, 1.027785808611256993e-05, 1.027479282409356208e-05, 1.027171119767653126e-05, 1.026861321378505872e-05, 1.026549887936852971e-05, 1.026236820140236050e-05, 1.025922118688737834e-05, 1.025605784285059738e-05, 1.025287817634465956e-05, 1.024968219444803965e-05, 1.024646990426501644e-05, 1.024324131292531189e-05, 1.023999642758475858e-05, 1.023673525542468650e-05, 1.023345780365223641e-05, 1.023016407950018538e-05, 1.022685409022705690e-05, 1.022352784311676172e-05, 1.022018534547916875e-05, 1.021682660464960535e-05, 1.021345162798912325e-05, 1.021006042288426310e-05, 1.020665299674731197e-05, 1.020322935701580020e-05, 1.019978951115306384e-05, 1.019633346664801087e-05, 1.019286123101486536e-05, 1.018937281179371811e-05, 1.018586821654961519e-05, 1.018234745287331520e-05, 1.017881052838158573e-05, 1.017525745071567363e-05, 1.017168822754284999e-05, 1.016810286655585279e-05, 1.016450137547238208e-05, 1.016088376203587752e-05, 1.015725003401510339e-05, 1.015360019920405876e-05, 1.014993426542231803e-05, 1.014625224051431769e-05, 1.014255413235010343e-05, 1.013883994882532507e-05, 1.013510969786025564e-05, 1.013136338740083162e-05, 1.012760102541828524e-05, 1.012382261990861261e-05, 1.012002817889336314e-05, 1.011621771041966490e-05, 1.011239122255897957e-05, 1.010854872340853214e-05, 1.010469022109061474e-05, 1.010081572375212915e-05, 1.009692523956615049e-05, 1.009301877672970798e-05, 1.008909634346557385e-05, 1.008515794802161283e-05, 1.008120359867018079e-05, 1.007723330370912248e-05, 1.007324707146162082e-05, 1.006924491027496696e-05, 1.006522682852210699e-05, 1.006119283460088471e-05, 1.005714293693350964e-05, 1.005307714396819522e-05, 1.004899546417700057e-05, 1.004489790605747879e-05, 1.004078447813194009e-05, 1.003665518894769397e-05, 1.003251004707624631e-05, 1.002834906111509501e-05, 1.002417223968537700e-05, 1.001997959143376385e-05, 1.001577112503161642e-05, 1.001154684917442589e-05, 1.000730677258342474e-05, 1.000305090400411297e-05, 9.998779252206298689e-06, 9.994491825985033328e-06, 9.990188634159891589e-06, 9.985869685575040938e-06, 9.981534989099575324e-06, 9.977184553626583445e-06, 9.972818388074351537e-06, 9.968436501385570547e-06, 9.964038902527458109e-06, 9.959625600491831389e-06, 9.955196604295256160e-06, 9.950751922978238735e-06, 9.946291565606288145e-06, 9.941815541269340159e-06, 9.937323859081665799e-06, 9.932816528182066164e-06, 9.928293557733924943e-06, 9.923754956924474884e-06, 9.919200734965993806e-06, 9.914630901094862695e-06, 9.910045464571819819e-06, 9.905444434682179260e-06, 9.900827820735012678e-06, 9.896195632064208107e-06, 9.891547878027821122e-06, 9.886884568008168019e-06, 9.882205711411791928e-06, 9.877511317669669492e-06, 9.872801396236429903e-06, 9.868075956591481452e-06, 9.863335008238203466e-06, 9.858578560704112320e-06, 9.853806623540954616e-06, 9.849019206324702096e-06, 9.844216318654912983e-06, 9.839397970155812793e-06, 9.834564170475432055e-06, 9.829714929285926492e-06, 9.824850256283692215e-06, 9.819970161188456011e-06, 9.815074653744437471e-06, 9.810163743720386260e-06, 9.805237440907801656e-06, 9.800295755122955259e-06, 9.795338696205988061e-06, 9.790366274020397138e-06, 9.785378498454094445e-06, 9.780375379418774928e-06, 9.775356926849877560e-06, 9.770323150706875027e-06, 9.765274060972470741e-06, 9.760209667653569539e-06, 9.755129980781419985e-06, 9.750035010409822047e-06, 9.744924766617087136e-06, 9.739799259505336755e-06, 9.734658499199653778e-06, 9.729502495849225944e-06, 9.724331259627637232e-06, 9.719144800730648639e-06, 9.713943129378668128e-06, 9.708726255815571554e-06, 9.703494190308058925e-06, 9.698246943147794001e-06, 9.692984524648526082e-06, 9.687706945148373604e-06, 9.682414215008956779e-06, 9.677106344614687782e-06, 9.671783344373910857e-06, 9.666445224719100523e-06, 9.661091996104743991e-06, 9.655723669009680669e-06, 9.650340253936077252e-06, 9.644941761408638289e-06, 9.639528201976867757e-06, 9.634099586212175603e-06, 9.628655924709968213e-06, 9.623197228088925054e-06, 9.617723506990815709e-06, 9.612234772080747213e-06, 9.606731034047196242e-06, 9.601212303601231531e-06, 9.595678591477781042e-06, 9.590129908434817115e-06, 9.584566265252714417e-06, 9.578987672736211670e-06, 9.573394141712493970e-06, 9.567785683031380828e-06, 9.562162307566400205e-06, 9.556524026213955036e-06, 9.550870849893402847e-06, 9.545202789547311563e-06, 9.539519856140648047e-06, 9.533822060661896185e-06, 9.528109414122552052e-06, 9.522381927556061739e-06, 9.516639612020174404e-06, 9.510882478594851795e-06, 9.505110538382329242e-06, 9.499323802508492928e-06, 9.493522282121755028e-06, 9.487705988393328152e-06, 9.481874932517171133e-06, 9.476029125710260076e-06, 9.470168579211556674e-06, 9.464293304283466797e-06, 9.458403312210832524e-06, 9.452498614301143903e-06, 9.446579221884804915e-06, 9.440645146314125506e-06, 9.434696398964675151e-06, 9.428732991234412095e-06, 9.422754934543869709e-06, 9.416762240336080250e-06, 9.410754920076867941e-06, 9.404732985253785090e-06, 9.398696447377601182e-06, 9.392645317981308456e-06, 9.386579608620304867e-06, 9.380499330872673608e-06, 9.374404496338117538e-06, 9.368295116639466905e-06, 9.362171203421654436e-06, 9.356032768351901682e-06, 9.349879823119756287e-06, 9.343712379437280033e-06, 9.337530449038084914e-06, 9.331334043678422418e-06, 9.325123175137622295e-06, 9.318897855215673429e-06, 9.312658095735671762e-06, 9.306403908542958014e-06, 9.300135305504170704e-06, 9.293852298508845344e-06, 9.287554899468304827e-06, 9.281243120315998241e-06, 9.274916973007663501e-06, 9.268576469520212649e-06, 9.262221621853131156e-06, 9.255852442028649022e-06, 9.249468942089372471e-06, 9.243071134100892813e-06, 9.236659030150666668e-06, 9.230232642347321396e-06, 9.223791982822047620e-06, 9.217337063727704761e-06, 9.210867897238900659e-06, 9.204384495552050862e-06, 9.197886870885615799e-06, 9.191375035478757384e-06, 9.184849001594174882e-06, 9.178308781514499937e-06, 9.171754387545027408e-06, 9.165185832012748054e-06, 9.158603127265491341e-06, 9.152006285673211234e-06, 9.145395319628282660e-06, 9.138770241543018008e-06, 9.132131063852367468e-06, 9.125477799012828058e-06, 9.118810459501240829e-06, 9.112129057817891013e-06, 9.105433606482626912e-06, 9.098724118037731346e-06, 9.092000605046939089e-06, 9.085263080094347588e-06, 9.078511555786995330e-06, 9.071746044752396977e-06, 9.064966559638912671e-06, 9.058173113116971151e-06, 9.051365717878310810e-06, 9.044544386634783688e-06, 9.037709132121115100e-06, 9.030859967092448937e-06, 9.023996904324532321e-06, 9.017119956615064080e-06, 9.010229136782608851e-06, 9.003324457666885070e-06, 8.996405932128917444e-06, 8.989473573049979846e-06, 8.982527393333253809e-06, 8.975567405902874771e-06, 8.968593623702851252e-06, 8.961606059699892259e-06, 8.954604726880784866e-06, 8.947589638252666960e-06, 8.940560806844396048e-06, 8.933518245705458278e-06, 8.926461967906171725e-06, 8.919391986537974384e-06, 8.912308314712224770e-06, 8.905210965561948503e-06, 8.898099952240584695e-06, 8.890975287922390835e-06, 8.883836985802210699e-06, 8.876685059095991044e-06, 8.869519521039387388e-06, 8.862340384889576662e-06, 8.855147663924005299e-06, 8.847941371440802577e-06, 8.840721520758595975e-06, 8.833488125216858451e-06, 8.826241198174703966e-06, 8.818980753012598483e-06, 8.811706803131187681e-06, 8.804419361951564614e-06, 8.797118442915542456e-06, 8.789804059484383951e-06, 8.782476225140695378e-06, 8.775134953387032338e-06, 8.767780257746375785e-06, 8.760412151761932123e-06, 8.753030648997500824e-06, 8.745635763036190320e-06, 8.738227507482296727e-06, 8.730805895959928262e-06, 8.723370942113454170e-06, 8.715922659607326845e-06, 8.708461062126486717e-06, 8.700986163374995136e-06, 8.693497977077928340e-06, 8.685996516980106904e-06, 8.678481796846380345e-06, 8.670953830461898171e-06, 8.663412631630837640e-06, 8.655858214178018201e-06, 8.648290591949047185e-06, 8.640709778807548316e-06, 8.633115788638356716e-06, 8.625508635346060314e-06, 8.617888332854178228e-06, 8.610254895106981882e-06, 8.602608336068205821e-06, 8.594948669721281498e-06, 8.587275910069445687e-06, 8.579590071135881097e-06, 8.571891166962208647e-06, 8.564179211611919648e-06, 8.556454219165881447e-06, 8.548716203725903429e-06, 8.540965179413285212e-06, 8.533201160367942501e-06, 8.525424160749991043e-06, 8.517634194739951610e-06, 8.509831276535932766e-06, 8.502015420356742864e-06, 8.494186640440634748e-06, 8.486344951043957272e-06, 8.478490366444739948e-06, 8.470622900937974965e-06, 8.462742568839406825e-06, 8.454849384483960239e-06, 8.446943362224593253e-06, 8.439024516435458370e-06, 8.431092861508910830e-06, 8.423148411855884695e-06, 8.415191181907432754e-06, 8.407221186113765987e-06, 8.399238438942869511e-06, 8.391242954883782298e-06, 8.383234748443703702e-06, 8.375213834148078170e-06, 8.367180226542470569e-06, 8.359133940191038138e-06, 8.351074989676903184e-06, 8.343003389602459709e-06, 8.334919154588011378e-06, 8.326822299273724780e-06, 8.318712838318618067e-06, 8.310590786399266693e-06, 8.302456158212952677e-06, 8.294308968474842293e-06, 8.286149231918089406e-06, 8.277976963295598996e-06, 8.269792177378649880e-06, 8.261594888957213200e-06, 8.253385112840215000e-06, 8.245162863854182671e-06, 8.236928156845249024e-06, 8.228681006677817376e-06, 8.220421428234759746e-06, 8.212149436417528670e-06, 8.203865046146367263e-06, 8.195568272358926860e-06, 8.187259130012403236e-06, 8.178937634081991613e-06, 8.170603799561289854e-06, 8.162257641462217144e-06, 8.153899174815405318e-06, 8.145528414668718251e-06, 8.137145376089357580e-06, 8.128750074162436300e-06, 8.120342523991244733e-06, 8.111922740697652024e-06, 8.103490739420622134e-06, 8.095046535318334814e-06, 8.086590143566689746e-06, 8.078121579359743608e-06, 8.069640857909522036e-06, 8.061147994446529538e-06, 8.052643004218138433e-06, 8.044125902490818249e-06, 8.035596704548592420e-06, 8.027055425693438095e-06, 8.018502081245221756e-06, 8.009936686542014318e-06, 8.001359256938701993e-06, 7.992769807809066605e-06, 7.984168354544233826e-06, 7.975554912553210190e-06, 7.966929497262993214e-06, 7.958292124117272046e-06, 7.949642808578106281e-06, 7.940981566126307134e-06, 7.932308412258157722e-06, 7.923623362488960438e-06, 7.914926432351590224e-06, 7.906217637395393421e-06, 7.897496993188308747e-06, 7.888764515315395146e-06, 7.880020219379187550e-06, 7.871264121000042460e-06, 7.862496235814592964e-06, 7.853716579477554611e-06, 7.844925167662162476e-06, 7.836122016056722045e-06, 7.827307140368354793e-06, 7.818480556321375272e-06, 7.809642279655949407e-06, 7.800792326131623236e-06, 7.791930711524017790e-06, 7.783057451625206868e-06, 7.774172562245458535e-06, 7.765276059212159393e-06, 7.756367958368278061e-06, 7.747448275576503782e-06, 7.738517026713852512e-06, 7.729574227675830935e-06, 7.720619894374966018e-06, 7.711654042739175314e-06, 7.702676688715549816e-06, 7.693687848266903142e-06, 7.684687537372171333e-06, 7.675675772028305130e-06, 7.666652568248929963e-06, 7.657617942063017804e-06, 7.648571909518908882e-06, 7.639514486678968596e-06, 7.630445689623778637e-06, 7.621365534450224387e-06, 7.612274037271797305e-06, 7.603171214218591547e-06, 7.594057081437658020e-06, 7.584931655091395020e-06, 7.575794951359950420e-06, 7.566646986439873191e-06, 7.557487776542664976e-06, 7.548317337898576495e-06, 7.539135686753123693e-06, 7.529942839367352017e-06, 7.520738812019882003e-06, 7.511523621005176242e-06, 7.502297282634117061e-06, 7.493059813234114937e-06, 7.483811229147653302e-06, 7.474551546734644984e-06, 7.465280782370755083e-06, 7.455998952447795685e-06, 7.446706073373693682e-06, 7.437402161572817721e-06, 7.428087233484483191e-06, 7.418761305565161289e-06, 7.409424394286938262e-06, 7.400076516137923680e-06, 7.390717687622097123e-06, 7.381347925259791835e-06, 7.371967245586020143e-06, 7.362575665152862931e-06, 7.353173200527812005e-06, 7.343759868294124145e-06, 7.334335685051323400e-06, 7.324900667413384202e-06, 7.315454832011236039e-06, 7.305998195491067700e-06, 7.296530774514740624e-06, 7.287052585759747394e-06, 7.277563645919542084e-06, 7.268063971701988493e-06, 7.258553579831696260e-06, 7.249032487048290377e-06, 7.239500710107014278e-06, 7.229958265778857736e-06, 7.220405170849050000e-06, 7.210841442119445878e-06, 7.201267096406836757e-06, 7.191682150543404615e-06, 7.182086621376529740e-06, 7.172480525769368410e-06, 7.162863880599085980e-06, 7.153236702758794894e-06, 7.143599009158159469e-06, 7.133950816719426694e-06, 7.124292142381696973e-06, 7.114623003099138581e-06, 7.104943415839734898e-06, 7.095253397587749278e-06, 7.085552965342101286e-06, 7.075842136116627586e-06, 7.066120926940557968e-06, 7.056389354856783174e-06, 7.046647436923944520e-06, 7.036895190216795584e-06, 7.027132631822403262e-06, 7.017359778844303312e-06, 7.007576648400851179e-06, 6.997783257623419512e-06, 6.987979623661047526e-06, 6.978165763674536335e-06, 6.968341694841042411e-06, 6.958507434351885465e-06, 6.948662999413410728e-06, 6.938808407244873902e-06, 6.928943675082978724e-06, 6.919068820176029048e-06, 6.909183859788446916e-06, 6.899288811199162350e-06, 6.889383691699777833e-06, 6.879468518598849214e-06, 6.869543309218018997e-06, 6.859608080892391584e-06, 6.849662850972670335e-06, 6.839707636823766739e-06, 6.829742455823247807e-06, 6.819767325365774521e-06, 6.809782262857217495e-06, 6.799787285719308037e-06, 6.789782411387472283e-06, 6.779767657311257256e-06, 6.769743040954184328e-06, 6.759708579794307414e-06, 6.749664291322391856e-06, 6.739610193044413162e-06, 6.729546302480306794e-06, 6.719472637162190239e-06, 6.709389214638648154e-06, 6.699296052470843633e-06, 6.689193168232819754e-06, 6.679080579513784873e-06, 6.668958303916235599e-06, 6.658826359056387934e-06, 6.648684762564594858e-06, 6.638533532083592975e-06, 6.628372685270994480e-06, 6.618202239797632906e-06, 6.608022213347930736e-06, 6.597832623619835873e-06, 6.587633488325200269e-06, 6.577424825188134982e-06, 6.567206651947428456e-06, 6.556978986354917680e-06, 6.546741846175782104e-06, 6.536495249188619875e-06, 6.526239213185756155e-06, 6.515973755971512634e-06, 6.505698895364761335e-06, 6.495414649197242405e-06, 6.485121035313846176e-06, 6.474818071573102753e-06, 6.464505775845360892e-06, 6.454184166015432436e-06, 6.443853259980758489e-06, 6.433513075651801593e-06, 6.423163630952092314e-06, 6.412804943818596008e-06, 6.402437032199887463e-06, 6.392059914058764847e-06, 6.381673607370612388e-06, 6.371278130123558773e-06, 6.360873500319065835e-06, 6.350459735970067620e-06, 6.340036855103596192e-06, 6.329604875759024036e-06, 6.319163815988386780e-06, 6.308713693856426396e-06, 6.298254527441013862e-06, 6.287786334831256900e-06, 6.277309134129781026e-06, 6.266822943453099713e-06, 6.256327780927563023e-06, 6.245823664693836725e-06, 6.235310612905033737e-06, 6.224788643725384283e-06, 6.214257775332820192e-06, 6.203718025917249493e-06, 6.193169413680899462e-06, 6.182611956838780795e-06, 6.172045673616780939e-06, 6.161470582253987504e-06, 6.150886701003090598e-06, 6.140294048126173082e-06, 6.129692641899349762e-06, 6.119082500610833615e-06, 6.108463642559106202e-06, 6.097836086057951576e-06, 6.087199849429887552e-06, 6.076554951011371563e-06, 6.065901409150333257e-06, 6.055239242207079975e-06, 6.044568468551994513e-06, 6.033889106570567349e-06, 6.023201174656892274e-06, 6.012504691218741814e-06, 6.001799674675635994e-06, 5.991086143457045783e-06, 5.980364116006900155e-06, 5.969633610779408523e-06, 5.958894646239569806e-06, 5.948147240865323045e-06, 5.937391413146265842e-06, 5.926627181581659599e-06, 5.915854564685543055e-06, 5.905073580980242317e-06, 5.894284249001369207e-06, 5.883486587295968795e-06, 5.872680614420666094e-06, 5.861866348946202771e-06, 5.851043809453315478e-06, 5.840213014533045872e-06, 5.829373982789197007e-06, 5.818526732836753621e-06, 5.807671283300049999e-06, 5.796807652817448989e-06, 5.785935860037022974e-06, 5.775055923617026523e-06, 5.764167862228222339e-06, 5.753271694551946637e-06, 5.742367439280602966e-06, 5.731455115117955280e-06, 5.720534740777426250e-06, 5.709606334984701888e-06, 5.698669916475936690e-06, 5.687725503998133099e-06, 5.676773116309111020e-06, 5.665812772177994855e-06, 5.654844490383251783e-06, 5.643868289715475106e-06, 5.632884188975518234e-06, 5.621892206974895336e-06, 5.610892362536262452e-06, 5.599884674491398166e-06, 5.588869161684159752e-06, 5.577845842968430814e-06, 5.566814737208593081e-06, 5.555775863279556902e-06, 5.544729240067134789e-06, 5.533674886466096623e-06, 5.522612821383072444e-06, 5.511543063734543285e-06, 5.500465632447330755e-06, 5.489380546458534364e-06, 5.478287824715991454e-06, 5.467187486176305317e-06, 5.456079549807745424e-06, 5.444964034588247590e-06, 5.433840959505846801e-06, 5.422710343559216780e-06, 5.411572205755604915e-06, 5.400426565113735043e-06, 5.389273440661890618e-06, 5.378112851438268763e-06, 5.366944816491037878e-06, 5.355769354878734889e-06, 5.344586485668314538e-06, 5.333396227938073337e-06, 5.322198600775533681e-06, 5.310993623278063876e-06, 5.299781314552795978e-06, 5.288561693716963756e-06, 5.277334779895618247e-06, 5.266100592226814138e-06, 5.254859149854829266e-06, 5.243610471935495846e-06, 5.232354577634137944e-06, 5.221091486124152695e-06, 5.209821216589444681e-06, 5.198543788224752879e-06, 5.187259220231359597e-06, 5.175967531821881292e-06, 5.164668742218283970e-06, 5.153362870649866400e-06, 5.142049936358704844e-06, 5.130729958592642164e-06, 5.119402956610745257e-06, 5.108068949680758870e-06, 5.096727957080093244e-06, 5.085379998093312662e-06, 5.074025092017518340e-06, 5.062663258155431557e-06, 5.051294515820770621e-06, 5.039918884336245097e-06, 5.028536383031539017e-06, 5.017147031248266872e-06, 5.005750848335458928e-06, 4.994347853649971187e-06, 4.982938066559029029e-06, 4.971521506438648341e-06, 4.960098192671600100e-06, 4.948668144652912695e-06, 4.937231381782778874e-06, 4.925787923472123295e-06, 4.914337789140456139e-06, 4.902880998213908000e-06, 4.891417570130197727e-06, 4.879947524334055908e-06, 4.868470880277735632e-06, 4.856987657423456177e-06, 4.845497875241877503e-06, 4.834001553210107188e-06, 4.822498710816566625e-06, 4.810989367556561046e-06, 4.799473542932692026e-06, 4.787951256457341827e-06, 4.776422527650634593e-06, 4.764887376040902219e-06, 4.753345821165179013e-06, 4.741797882567132401e-06, 4.730243579800019915e-06, 4.718682932424702902e-06, 4.707115960010100532e-06, 4.695542682133141521e-06, 4.683963118379206278e-06, 4.672377288340144003e-06, 4.660785211617262713e-06, 4.649186907819191331e-06, 4.637582396562433645e-06, 4.625971697471814695e-06, 4.614354830178449587e-06, 4.602731814322684393e-06, 4.591102669552082751e-06, 4.579467415521946795e-06, 4.567826071895172307e-06, 4.556178658342815384e-06, 4.544525194541977400e-06, 4.532865700178837378e-06, 4.521200194946608104e-06, 4.509528698545973195e-06, 4.497851230685086250e-06, 4.486167811080013005e-06, 4.474478459452694215e-06, 4.462783195533956010e-06, 4.451082039061432973e-06, 4.439375009780045862e-06, 4.427662127442489505e-06, 4.415943411807138934e-06, 4.404218882641120721e-06, 4.392488559718196252e-06, 4.380752462819236906e-06, 4.369010611732205419e-06, 4.357263026252664112e-06, 4.345509726181629346e-06, 4.333750731328670823e-06, 4.321986061509806707e-06, 4.310215736547961022e-06, 4.298439776272979743e-06, 4.286658200522045848e-06, 4.274871029137135670e-06, 4.263078281970622876e-06, 4.251279978878041409e-06, 4.239476139723682688e-06, 4.227666784378566961e-06, 4.215851932718821238e-06, 4.204031604628231401e-06, 4.192205819998707223e-06, 4.180374598725636398e-06, 4.168537960713009930e-06, 4.156695925871295239e-06, 4.144848514115371940e-06, 4.132995745370159527e-06, 4.121137639563364235e-06, 4.109274216631086394e-06, 4.097405496515806187e-06, 4.085531499164700595e-06, 4.073652244532264115e-06, 4.061767752580799195e-06, 4.049878043275658448e-06, 4.037983136590436119e-06, 4.026083052504883534e-06, 4.014177811002733921e-06, 4.002267432076914204e-06, 3.990351935724848205e-06, 3.978431341948855596e-06, 3.966505670758861558e-06, 3.954574942170641730e-06, 3.942639176203835065e-06, 3.930698392887563900e-06, 3.918752612253146080e-06, 3.906801854339779398e-06, 3.894846139192414693e-06, 3.882885486859650979e-06, 3.870919917398933678e-06, 3.858949450871766348e-06, 3.846974107344270571e-06, 3.834993906889708418e-06, 3.823008869586397898e-06, 3.811019015518185603e-06, 3.799024364774916392e-06, 3.787024937450363237e-06, 3.775020753645272309e-06, 3.763011833465252172e-06, 3.750998197021295555e-06, 3.738979864429728531e-06, 3.726956855812689509e-06, 3.714929191295969733e-06, 3.702896891012228610e-06, 3.690859975098741879e-06, 3.678818463697980129e-06, 3.666772376957525795e-06, 3.654721735030583494e-06, 3.642666558073828558e-06, 3.630606866250565624e-06, 3.618542679728570392e-06, 3.606474018680552530e-06, 3.594400903284693960e-06, 3.582323353722494433e-06, 3.570241390181874636e-06, 3.558155032855080201e-06, 3.546064301939124714e-06, 3.533969217635788434e-06, 3.521869800152148544e-06, 3.509766069698312910e-06, 3.497658046490699368e-06, 3.485545750749791515e-06, 3.473429202700674030e-06, 3.461308422572979311e-06, 3.449183430601426613e-06, 3.437054247023593927e-06, 3.424920892083157035e-06, 3.412783386027636400e-06, 3.400641749108970188e-06, 3.388496001583989023e-06, 3.376346163712245050e-06, 3.364192255758628838e-06, 3.352034297993929692e-06, 3.339872310689927523e-06, 3.327706314124727038e-06, 3.315536328580607120e-06, 3.303362374342347520e-06, 3.291184471700434870e-06, 3.279002640948866757e-06, 3.266816902385666288e-06, 3.254627276313400059e-06, 3.242433783036964004e-06, 3.230236442866240117e-06, 3.218035276116613989e-06, 3.205830303104119190e-06, 3.193621544150736734e-06, 3.181409019582248694e-06, 3.169192749726582253e-06, 3.156972754916447366e-06, 3.144749055489862770e-06, 3.132521671785266055e-06, 3.120290624146881321e-06, 3.108055932922492743e-06, 3.095817618461297351e-06, 3.083575701119786821e-06, 3.071330201254163990e-06, 3.059081139226225926e-06, 3.046828535401218814e-06, 3.034572410146107468e-06, 3.022312783832324379e-06, 3.010049676836223721e-06, 2.997783109534199482e-06, 2.985513102308077245e-06, 2.973239675542873368e-06, 2.960962849624638012e-06, 2.948682644946352186e-06, 2.936399081900326048e-06, 2.924112180884115007e-06, 2.911821962297779575e-06, 2.899528446544939492e-06, 2.887231654030035700e-06, 2.874931605164240087e-06, 2.862628320357836002e-06, 2.850321820026172478e-06, 2.838012124587434834e-06, 2.825699254460453831e-06, 2.813383230070090257e-06, 2.801064071842336958e-06, 2.788741800204799531e-06, 2.776416435589394550e-06, 2.764087998430136685e-06, 2.751756509163654978e-06, 2.739421988229702326e-06, 2.727084456068936256e-06, 2.714743933126166452e-06, 2.702400439848122823e-06, 2.690053996683993789e-06, 2.677704624085361063e-06, 2.665352342506733278e-06, 2.652997172403330155e-06, 2.640639134234308420e-06, 2.628278248460556561e-06, 2.615914535545211090e-06, 2.603548015953604875e-06, 2.591178710153801620e-06, 2.578806638614352919e-06, 2.566431821807567804e-06, 2.554054280207283353e-06, 2.541674034289350045e-06, 2.529291104532222982e-06, 2.516905511414635093e-06, 2.504517275418925553e-06, 2.492126417028791750e-06, 2.479732956729790313e-06, 2.467336915009325246e-06, 2.454938312357139639e-06, 2.442537169263138363e-06, 2.430133506220555973e-06, 2.417727343723829816e-06, 2.405318702269031585e-06, 2.392907602353880454e-06, 2.380494064478254259e-06, 2.368078109141949099e-06, 2.355659756847930247e-06, 2.343239028100148072e-06, 2.330815943403978080e-06, 2.318390523266811713e-06, 2.305962788195778681e-06, 2.293532758700482453e-06, 2.281100455293493655e-06, 2.268665898485398737e-06, 2.256229108790256562e-06, 2.243790106723340214e-06, 2.231348912799481474e-06, 2.218905547536324270e-06, 2.206460031452100797e-06, 2.194012385066132957e-06, 2.181562628899363872e-06, 2.169110783472114096e-06, 2.156656869306807789e-06, 2.144200906928477972e-06, 2.131742916859783009e-06, 2.119282919626488606e-06, 2.106820935755225288e-06, 2.094356985771790100e-06, 2.081891090203874054e-06, 2.069423269581614390e-06, 2.056953544432533984e-06, 2.044481935287080938e-06, 2.032008462676352184e-06, 2.019533147129872134e-06, 2.007056009181616360e-06, 1.994577069362265899e-06, 1.982096348205244905e-06, 1.969613866244448905e-06, 1.957129644012597321e-06, 1.944643702043933809e-06, 1.932156060874750154e-06, 1.919666741038389194e-06, 1.907175763070733384e-06, 1.894683147507939404e-06, 1.882188914884237995e-06, 1.869693085737942385e-06, 1.857195680603689255e-06, 1.844696720018483802e-06, 1.832196224518912999e-06, 1.819694214641638784e-06, 1.807190710923395303e-06, 1.794685733901500519e-06, 1.782179304111591460e-06, 1.769671442090919385e-06, 1.757162168376676474e-06, 1.744651503503724506e-06, 1.732139468010096342e-06, 1.719626082432006684e-06, 1.707111367304324512e-06, 1.694595343163368715e-06, 1.682078030544617501e-06, 1.669559449983226146e-06, 1.657039622014577145e-06, 1.644518567172004441e-06, 1.631996305990101516e-06, 1.619472859003010809e-06, 1.606948246742196013e-06, 1.594422489741916035e-06, 1.581895608534233209e-06, 1.569367623649530417e-06, 1.556838555619229427e-06, 1.544308424973562348e-06, 1.531777252242083240e-06, 1.519245057953641855e-06, 1.506711862636881692e-06, 1.494177686818021195e-06, 1.481642551024123724e-06, 1.469106475780855245e-06, 1.456569481612999963e-06, 1.444031589045000731e-06, 1.431492818598673537e-06, 1.418953190796532752e-06, 1.406412726159520650e-06, 1.393871445207543799e-06, 1.381329368459422232e-06, 1.368786516433422661e-06, 1.356242909645004728e-06, 1.343698568610105591e-06, 1.331153513842920910e-06, 1.318607765856376639e-06, 1.306061345162684899e-06, 1.293514272271087050e-06, 1.280966567691134683e-06, 1.268418251930460220e-06, 1.255869345495276035e-06, 1.243319868890350308e-06, 1.230769842619543202e-06, 1.218219287183514578e-06, 1.205668223082511155e-06, 1.193116670816863721e-06, 1.180564650881953850e-06, 1.168012183773750746e-06, 1.155459289986537804e-06, 1.142905990011235065e-06, 1.130352304338673842e-06, 1.117798253457356743e-06, 1.105243857853983889e-06, 1.092689138013956902e-06, 1.080134114419143367e-06, 1.067578807550604921e-06, 1.055023237889144007e-06, 1.042467425910235654e-06, 1.029911392089579355e-06, 1.017355156900833466e-06, 1.004798740813906316e-06, 9.922421642982719169e-07, 9.796854478207066944e-07, 9.671286118458152803e-07, 9.545716768359892213e-07, 9.420146632519431508e-07, 9.294575915498840046e-07, 9.169004821876188694e-07, 9.043433556167065878e-07, 8.917862322885663475e-07, 8.792291326522132454e-07, 8.666720771525553269e-07, 8.541150862331319383e-07, 8.415581803366611216e-07, 8.290013798999721339e-07, 8.164447053595525604e-07, 8.038881771492915010e-07, 7.913318156982016869e-07, 7.787756414365409878e-07, 7.662196747879537459e-07, 7.536639361755788367e-07, 7.411084460197895728e-07, 7.285532247359213268e-07, 7.159982927398272203e-07, 7.034436704428136077e-07, 6.908893782521731779e-07, 6.783354365739431051e-07, 6.657818658111830311e-07, 6.532286863617326512e-07, 6.406759186237377571e-07, 6.281235829906128265e-07, 6.155716998515527363e-07, 6.030202895942952552e-07, 5.904693726028616888e-07, 5.779189692580706053e-07, 5.653690999380725251e-07, 5.528197850160772253e-07, 5.402710448636776030e-07, 5.277228998491367629e-07, 5.151753703351249572e-07, 5.026284766842635215e-07, 4.900822392540798417e-07, 4.775366783975208668e-07, 4.649918144657150720e-07, 4.524476678057110925e-07, 4.399042587609972721e-07, 4.273616076720324357e-07, 4.148197348739720817e-07, 4.022786606999992865e-07, 3.897384054790412095e-07, 3.771989895363100822e-07, 3.646604331932594806e-07, 3.521227567681164733e-07, 3.395859805736163908e-07, 3.270501249203130830e-07, 3.145152101143185064e-07, 3.019812564578294192e-07, 2.894482842490897417e-07, 2.769163137829218044e-07, 2.643853653484540767e-07, 2.518554592324450827e-07, 2.393266157170129292e-07, 2.267988550801634049e-07, 2.142721975963144518e-07, 2.017466635340311734e-07, 1.892222731593432123e-07, 1.766990467334768195e-07, 1.641770045133839326e-07, 1.516561667517073414e-07, 1.391365536973071454e-07, 1.266181855929965022e-07, 1.141010826788556443e-07, 1.015852651899686860e-07, 8.907075335694934014e-08, 7.655756740590746001e-08, 6.404572755897520568e-08, 5.153525403204261398e-08, 3.902616703807284569e-08, 2.651848678483836431e-08, 1.401223347544582179e-08, 1.507427308861905196e-09, -1.099591152235043793e-08, -2.349776282927511653e-08, -3.599810642611786055e-08, -4.849692213525810782e-08, -6.099418978170436070e-08, -7.348988919535676660e-08, -8.598400021271294638e-08, -9.847650267355405736e-08, -1.109673764232076683e-07, -1.234566013120228769e-07, -1.359441571954019015e-07, -1.484300239332749207e-07, -1.609141813929207723e-07, -1.733966094428653120e-07, -1.858772879607196179e-07, -1.983561968270779123e-07, -2.108333159277841687e-07, -2.233086251556305458e-07, -2.357821044076061707e-07, -2.482537335843739115e-07, -2.607234925953121024e-07, -2.731913613529804272e-07, -2.856573197753759127e-07, -2.981213477881972856e-07, -3.105834253187489295e-07, -3.230435323037655633e-07, -3.355016486833271567e-07, -3.479577544031123026e-07, -3.604118294166556126e-07, -3.728638536798193979e-07, -3.853138071558305503e-07, -3.977616698147570766e-07, -4.102074216307575171e-07, -4.226510425837811530e-07, -4.350925126618313841e-07, -4.475318118554243334e-07, -4.599689201626348872e-07, -4.724038175885709522e-07, -4.848364841426223455e-07, -4.972668998407181903e-07, -5.096950447048042435e-07, -5.221208987623210179e-07, -5.345444420484475191e-07, -5.469656546028136993e-07, -5.593845164711900758e-07, -5.718010077077430626e-07, -5.842151083695129503e-07, -5.966267985214464472e-07, -6.090360582358670711e-07, -6.214428675897409278e-07, -6.338472066669159479e-07, -6.462490555576085850e-07, -6.586483943578777028e-07, -6.710452031718735528e-07, -6.834394621085430283e-07, -6.958311512838806545e-07, -7.082202508204049100e-07, -7.206067408471881909e-07, -7.329906014993359915e-07, -7.453718129202363059e-07, -7.577503552582607523e-07, -7.701262086690241396e-07, -7.824993533148455424e-07, -7.948697693647982761e-07, -8.072374369941713953e-07, -8.196023363867236493e-07, -8.319644477313978403e-07, -8.443237512245540267e-07, -8.566802270694579144e-07, -8.690338554757580263e-07, -8.813846166617245160e-07, -8.937324908509658563e-07, -9.060774582746746412e-07, -9.184194991710984023e-07, -9.307585937855775133e-07, -9.430947223700219352e-07, -9.554278651851564895e-07, -9.677580024972263229e-07, -9.800851145802543563e-07, -9.924091817155033130e-07, -1.004730184191519764e-06, -1.017048102303607276e-06, -1.029362916356064901e-06, -1.041674606658911710e-06, -1.053983153530122950e-06, -1.066288537295104679e-06, -1.078590738286180883e-06, -1.090889736844832400e-06, -1.103185513318959941e-06, -1.115478048062368882e-06, -1.127767321439764858e-06, -1.140053313821277264e-06, -1.152336005584679548e-06, -1.164615377117090255e-06, -1.176891408811686339e-06, -1.189164081069943980e-06, -1.201433374301118084e-06, -1.213699268921714374e-06, -1.225961745357741855e-06, -1.238220784041965683e-06, -1.250476365413416936e-06, -1.262728469922346071e-06, -1.274977078024777342e-06, -1.287222170184724643e-06, -1.299463726876429577e-06, -1.311701728578883275e-06, -1.323936155780823463e-06, -1.336166988980199986e-06, -1.348394208681466419e-06, -1.360617795397251476e-06, -1.372837729650593060e-06, -1.385053991968927715e-06, -1.397266562891808155e-06, -1.409475422964889332e-06, -1.421680552742163968e-06, -1.433881932788183262e-06, -1.446079543672604960e-06, -1.458273365975152529e-06, -1.470463380285105234e-06, -1.482649567198579380e-06, -1.494831907320224493e-06, -1.507010381265409726e-06, -1.519184969654258414e-06, -1.531355653119344643e-06, -1.543522412299680794e-06, -1.555685227843496664e-06, -1.567844080407739286e-06, -1.579998950658062136e-06, -1.592149819268359259e-06, -1.604296666922932832e-06, -1.616439474313296667e-06, -1.628578222139797227e-06, -1.640712891113855506e-06, -1.652843461952530561e-06, -1.664969915383464489e-06, -1.677092232144361719e-06, -1.689210392980304544e-06, -1.701324378645947580e-06, -1.713434169905018857e-06, -1.725539747529794029e-06, -1.737641092303311783e-06, -1.749738185016125896e-06, -1.761831006467991888e-06, -1.773919537470044953e-06, -1.786003758839411350e-06, -1.798083651404134534e-06, -1.810159196002632419e-06, -1.822230373481053578e-06, -1.834297164695438445e-06, -1.846359550511239474e-06, -1.858417511803334264e-06, -1.870471029455507181e-06, -1.882520084362680859e-06, -1.894564657427642422e-06, -1.906604729563289180e-06, -1.918640281692088222e-06, -1.930671294745583227e-06, -1.942697749666563934e-06, -1.954719627405876847e-06, -1.966736908924607402e-06, -1.978749575193570905e-06, -1.990757607193336668e-06, -2.002760985913717675e-06, -2.014759692355982607e-06, -2.026753707529606623e-06, -2.038743012454488893e-06, -2.050727588160445225e-06, -2.062707415686686294e-06, -2.074682476084000021e-06, -2.086652750411555717e-06, -2.098618219739094089e-06, -2.110578865146401654e-06, -2.122534667723362832e-06, -2.134485608569425469e-06, -2.146431668795812864e-06, -2.158372829522839096e-06, -2.170309071879399957e-06, -2.182240377007862877e-06, -2.194166726058706472e-06, -2.206088100192696574e-06, -2.218004480582545143e-06, -2.229915848409681804e-06, -2.241822184866485351e-06, -2.253723471155713275e-06, -2.265619688490059184e-06, -2.277510818094263616e-06, -2.289396841202515759e-06, -2.301277739057917282e-06, -2.313153492917331175e-06, -2.325024084046091604e-06, -2.336889493720135471e-06, -2.348749703228175899e-06, -2.360604693865858551e-06, -2.372454446943294298e-06, -2.384298943779172333e-06, -2.396138165703475767e-06, -2.407972094056464759e-06, -2.419800710191337898e-06, -2.431623995468410965e-06, -2.443441931262621227e-06, -2.455254498957672738e-06, -2.467061679948203905e-06, -2.478863455641971554e-06, -2.490659807454491335e-06, -2.502450716813952626e-06, -2.514236165160617992e-06, -2.526016133944257518e-06, -2.537790604625750549e-06, -2.549559558679241814e-06, -2.561322977586322309e-06, -2.573080842843488266e-06, -2.584833135956377524e-06, -2.596579838442371185e-06, -2.608320931830152734e-06, -2.620056397659715664e-06, -2.631786217481875163e-06, -2.643510372860391198e-06, -2.655228845368842118e-06, -2.666941616592234018e-06, -2.678648668129148814e-06, -2.690349981586482897e-06, -2.702045538584212539e-06, -2.713735320754942006e-06, -2.725419309741236246e-06, -2.737097487197802847e-06, -2.748769834790982550e-06, -2.760436334198234248e-06, -2.772096967110286029e-06, -2.783751715227999038e-06, -2.795400560264510467e-06, -2.807043483944721101e-06, -2.818680468005326238e-06, -2.830311494194327791e-06, -2.841936544273166702e-06, -2.853555600013591031e-06, -2.865168643199775659e-06, -2.876775655627846678e-06, -2.888376619105891557e-06, -2.899971515453472942e-06, -2.911560326503765300e-06, -2.923143034100398448e-06, -2.934719620099634853e-06, -2.946290066369822872e-06, -2.957854354790954600e-06, -2.969412467256731359e-06, -2.980964385671488973e-06, -2.992510091952310262e-06, -3.004049568028526142e-06, -3.015582795841753744e-06, -3.027109757345387767e-06, -3.038630434506726534e-06, -3.050144809303862530e-06, -3.061652863727797025e-06, -3.073154579781958953e-06, -3.084649939481703052e-06, -3.096138924856398217e-06, -3.107621517946390468e-06, -3.119097700805045569e-06, -3.130567455498303487e-06, -3.142030764104677123e-06, -3.153487608714783055e-06, -3.164937971433447262e-06, -3.176381834377075934e-06, -3.187819179673279815e-06, -3.199249989465477821e-06, -3.210674245907752170e-06, -3.222091931166984167e-06, -3.233503027424406823e-06, -3.244907516872528850e-06, -3.256305381717262411e-06, -3.267696604177364074e-06, -3.279081166484040100e-06, -3.290459050882961107e-06, -3.301830239631748499e-06, -3.313194714999467522e-06, -3.324552459271296104e-06, -3.335903454743429531e-06, -3.347247683725109514e-06, -3.358585128540785818e-06, -3.369915771524405564e-06, -3.381239595026707453e-06, -3.392556581409530978e-06, -3.403866713048482882e-06, -3.415169972331885143e-06, -3.426466341663358423e-06, -3.437755803456283747e-06, -3.449038340140930705e-06, -3.460313934158843742e-06, -3.471582567964996588e-06, -3.482844224029788714e-06, -3.494098884833982190e-06, -3.505346532873361641e-06, -3.516587150658173932e-06, -3.527820720710709465e-06, -3.539047225566742136e-06, -3.550266647777696048e-06, -3.561478969904992829e-06, -3.572684174527266668e-06, -3.583882244234749750e-06, -3.595073161631355114e-06, -3.606256909336742141e-06, -3.617433469981228851e-06, -3.628602826210428562e-06, -3.639764960684745056e-06, -3.650919856076877648e-06, -3.662067495073353888e-06, -3.673207860376595898e-06, -3.684340934699881800e-06, -3.695466700771896397e-06, -3.706585141336319516e-06, -3.717696239149258230e-06, -3.728799976981325472e-06, -3.739896337617140713e-06, -3.750985303854898821e-06, -3.762066858508347884e-06, -3.773140984403862284e-06, -3.784207664382407819e-06, -3.795266881299134700e-06, -3.806318618023345786e-06, -3.817362857438082389e-06, -3.828399582442085999e-06, -3.839428775946881105e-06, -3.850450420878767837e-06, -3.861464500178345938e-06, -3.872470996800076842e-06, -3.883469893714265735e-06, -3.894461173904109647e-06, -3.905444820367720161e-06, -3.916420816117660091e-06, -3.927389144180936703e-06, -3.938349787598602763e-06, -3.949302729427654739e-06, -3.960247952738207099e-06, -3.971185440615382885e-06, -3.982115176158946953e-06, -3.993037142483268701e-06, -4.003951322716853659e-06, -4.014857700004422956e-06, -4.025756257503853836e-06, -4.036646978388265055e-06, -4.047529845845536611e-06, -4.058404843077809998e-06, -4.069271953303545644e-06, -4.080131159754503244e-06, -4.090982445677832231e-06, -4.101825794335550858e-06, -4.112661189004573297e-06, -4.123488612976247163e-06, -4.134308049558365215e-06, -4.145119482072234622e-06, -4.155922893854637847e-06, -4.166718268257389643e-06, -4.177505588647405672e-06, -4.188284838406134981e-06, -4.199056000932143463e-06, -4.209819059635664042e-06, -4.220573997945533873e-06, -4.231320799303826695e-06, -4.242059447167805242e-06, -4.252789925011450985e-06, -4.263512216323028910e-06, -4.274226304604586077e-06, -4.284932173376475622e-06, -4.295629806172362651e-06, -4.306319186541320647e-06, -4.317000298049743221e-06, -4.327673124276022206e-06, -4.338337648817400155e-06, -4.348993855284609465e-06, -4.359641727303910345e-06, -4.370281248518481635e-06, -4.380912402586108415e-06, -4.391535173178643287e-06, -4.402149543986447369e-06, -4.412755498713576610e-06, -4.423353021079698621e-06, -4.433942094822049323e-06, -4.444522703690692954e-06, -4.455094831452819062e-06, -4.465658461892338472e-06, -4.476213578807444679e-06, -4.486760166012134273e-06, -4.497298207338139018e-06, -4.507827686629629358e-06, -4.518348587750026254e-06, -4.528860894576676737e-06, -4.539364591002851208e-06, -4.549859660939658584e-06, -4.560346088311301218e-06, -4.570823857059381210e-06, -4.581292951142457417e-06, -4.591753354533684765e-06, -4.602205051222270302e-06, -4.612648025215384951e-06, -4.623082260532989832e-06, -4.633507741214474461e-06, -4.643924451313503400e-06, -4.654332374900365077e-06, -4.664731496061550816e-06, -4.675121798899748904e-06, -4.685503267533438018e-06, -4.695875886098774409e-06, -4.706239638746822959e-06, -4.716594509645363894e-06, -4.726940482978571766e-06, -4.737277542946981568e-06, -4.747605673767002535e-06, -4.757924859672917147e-06, -4.768235084913991049e-06, -4.778536333756428849e-06, -4.788828590482926890e-06, -4.799111839392194669e-06, -4.809386064800935208e-06, -4.819651251040894830e-06, -4.829907382460964655e-06, -4.840154443426585979e-06, -4.850392418319815495e-06, -4.860621291538912790e-06, -4.870841047500215676e-06, -4.881051670635307710e-06, -4.891253145393011265e-06, -4.901445456238854742e-06, -4.911628587655130174e-06, -4.921802524140490033e-06, -4.931967250211734475e-06, -4.942122750401127933e-06, -4.952269009258276147e-06, -4.962406011349628956e-06, -4.972533741258118610e-06, -4.982652183584942778e-06, -4.992761322946894703e-06, -5.002861143978185163e-06, -5.012951631330031663e-06, -5.023032769670664369e-06, -5.033104543684903429e-06, -5.043166938075991115e-06, -5.053219937562902486e-06, -5.063263526882169902e-06, -5.073297690787456962e-06, -5.083322414049586462e-06, -5.093337681456100777e-06, -5.103343477813576810e-06, -5.113339787942616633e-06, -5.123326596684274778e-06, -5.133303888895002292e-06, -5.143271649448619483e-06, -5.153229863237565287e-06, -5.163178515170722092e-06, -5.173117590172992221e-06, -5.183047073189361994e-06, -5.192966949180414996e-06, -5.202877203124147268e-06, -5.212777820017848568e-06, -5.222668784873081159e-06, -5.232550082722073214e-06, -5.242421698612792471e-06, -5.252283617610709759e-06, -5.262135824800234715e-06, -5.271978305282438963e-06, -5.281811044174659697e-06, -5.291634026614576458e-06, -5.301447237755682043e-06, -5.311250662769180709e-06, -5.321044286845752541e-06, -5.330828095191109071e-06, -5.340602073030024307e-06, -5.350366205605958652e-06, -5.360120478178799864e-06, -5.369864876026207301e-06, -5.379599384445512661e-06, -5.389323988748745356e-06, -5.399038674268930206e-06, -5.408743426355183962e-06, -5.418438230374540662e-06, -5.428123071713785460e-06, -5.437797935774949254e-06, -5.447462807979385460e-06, -5.457117673767355808e-06, -5.466762518595795874e-06, -5.476397327940160760e-06, -5.486022087293897397e-06, -5.495636782168188737e-06, -5.505241398093561424e-06, -5.514835920617442951e-06, -5.524420335305745611e-06, -5.533994627742667444e-06, -5.543558783530514360e-06, -5.553112788289424006e-06, -5.562656627659025107e-06, -5.572190287295959040e-06, -5.581713752875551887e-06, -5.591227010091400228e-06, -5.600730044655476174e-06, -5.610222842297647952e-06, -5.619705388767404458e-06, -5.629177669831392087e-06, -5.638639671275021556e-06, -5.648091378902181605e-06, -5.657532778534766353e-06, -5.666963856014410871e-06, -5.676384597199982266e-06, -5.685794987969274597e-06, -5.695195014218590440e-06, -5.704584661862815427e-06, -5.713963916834959153e-06, -5.723332765087929712e-06, -5.732691192591951940e-06, -5.742039185336310606e-06, -5.751376729328964171e-06, -5.760703810596532924e-06, -5.770020415183890712e-06, -5.779326529155968278e-06, -5.788622138595076633e-06, -5.797907229602769684e-06, -5.807181788299347868e-06, -5.816445800823519344e-06, -5.825699253334076270e-06, -5.834942132007751808e-06, -5.844174423038930439e-06, -5.853396112643404555e-06, -5.862607187054158775e-06, -5.871807632523100437e-06, -5.880997435322366564e-06, -5.890176581741773452e-06, -5.899345058090550543e-06, -5.908502850696894891e-06, -5.917649945907648437e-06, -5.926786330089958197e-06, -5.935911989629129879e-06, -5.945026910928390712e-06, -5.954131080412493577e-06, -5.963224484523686819e-06, -5.972307109723349868e-06, -5.981378942493277342e-06, -5.990439969333589420e-06, -5.999490176762415891e-06, -6.008529551319504523e-06, -6.017558079562312000e-06, -6.026575748067437102e-06, -6.035582543432461312e-06, -6.044578452271407867e-06, -6.053563461220435519e-06, -6.062537556933457675e-06, -6.071500726083662825e-06, -6.080452955364974825e-06, -6.089394231489776073e-06, -6.098324541188705068e-06, -6.107243871214238514e-06, -6.116152208336710261e-06, -6.125049539345948624e-06, -6.133935851052856098e-06, -6.142811130284970056e-06, -6.151675363892327610e-06, -6.160528538742777279e-06, -6.169370641724206688e-06, -6.178201659743634547e-06, -6.187021579729356189e-06, -6.195830388626424644e-06, -6.204628073402389292e-06, -6.213414621042864185e-06, -6.222190018553090821e-06, -6.230954252959698281e-06, -6.239707311306568011e-06, -6.248449180658542137e-06, -6.257179848101014345e-06, -6.265899300737988480e-06, -6.274607525693629467e-06, -6.283304510111943977e-06, -6.291990241156338277e-06, -6.300664706011308907e-06, -6.309327891879982897e-06, -6.317979785985412879e-06, -6.326620375572157653e-06, -6.335249647902251155e-06, -6.343867590258937873e-06, -6.352474189946196816e-06, -6.361069434286796721e-06, -6.369653310623863920e-06, -6.378225806320611280e-06, -6.386786908760235719e-06, -6.395336605345579389e-06, -6.403874883500852541e-06, -6.412401730669031444e-06, -6.420917134313671030e-06, -6.429421081918435641e-06, -6.437913560986764450e-06, -6.446394559043397815e-06, -6.454864063632103842e-06, -6.463322062317224219e-06, -6.471768542683347265e-06, -6.480203492335283361e-06, -6.488626898897696495e-06, -6.497038750016683129e-06, -6.505439033357470811e-06, -6.513827736605984340e-06, -6.522204847468476457e-06, -6.530570353671138213e-06, -6.538924242961704942e-06, -6.547266503107088804e-06, -6.555597121894993227e-06, -6.563916087133571560e-06, -6.572223386651367773e-06, -6.580519008296989505e-06, -6.588802939940671690e-06, -6.597075169472375811e-06, -6.605335684801380783e-06, -6.613584473859797296e-06, -6.621821524598703647e-06, -6.630046824989794918e-06, -6.638260363026434984e-06, -6.646462126721414423e-06, -6.654652104108561570e-06, -6.662830283242252932e-06, -6.670996652197175173e-06, -6.679151199069777772e-06, -6.687293911976442589e-06, -6.695424779053067971e-06, -6.703543788458553444e-06, -6.711650928371016863e-06, -6.719746186989278417e-06, -6.727829552534083743e-06, -6.735901013245771196e-06, -6.743960557385875284e-06, -6.752008173236742114e-06, -6.760043849101512453e-06, -6.768067573303782065e-06, -6.776079334189547350e-06, -6.784079120123031159e-06, -6.792066919491921701e-06, -6.800042720703372000e-06, -6.808006512185423758e-06, -6.815958282388194052e-06, -6.823898019781979672e-06, -6.831825712856952187e-06, -6.839741350126484248e-06, -6.847644920123503106e-06, -6.855536411401886528e-06, -6.863415812538091636e-06, -6.871283112126990895e-06, -6.879138298787131342e-06, -6.886981361156655275e-06, -6.894812287895195910e-06, -6.902631067683482667e-06, -6.910437689223351331e-06, -6.918232141237468772e-06, -6.926014412470701743e-06, -6.933784491688056900e-06, -6.941542367675703172e-06, -6.949288029242488793e-06, -6.957021465216282971e-06, -6.964742664447300487e-06, -6.972451615807754419e-06, -6.980148308190018073e-06, -6.987832730508109835e-06, -6.995504871697350123e-06, -7.003164720714087797e-06, -7.010812266536999504e-06, -7.018447498165044939e-06, -7.026070404618581549e-06, -7.033680974940789232e-06, -7.041279198194056902e-06, -7.048865063463264738e-06, -7.056438559855433512e-06, -7.063999676498011891e-06, -7.071548402540169007e-06, -7.079084727152636065e-06, -7.086608639527554718e-06, -7.094120128878249222e-06, -7.101619184440640977e-06, -7.109105795471080970e-06, -7.116579951247871894e-06, -7.124041641070822611e-06, -7.131490854261022834e-06, -7.138927580162151803e-06, -7.146351808138491983e-06, -7.153763527576289406e-06, -7.161162727883366573e-06, -7.168549398489279157e-06, -7.175923528844884015e-06, -7.183285108423725782e-06, -7.190634126720020085e-06, -7.197970573250034207e-06, -7.205294437551789776e-06, -7.212605709184633326e-06, -7.219904377730782969e-06, -7.227190432793134591e-06, -7.234463863996744149e-06, -7.241724660988427033e-06, -7.248972813436845304e-06, -7.256208311032110441e-06, -7.263431143487208893e-06, -7.270641300536324108e-06, -7.277838771934455371e-06, -7.285023547460539963e-06, -7.292195616914057409e-06, -7.299354970116376260e-06, -7.306501596911793399e-06, -7.313635487165562155e-06, -7.320756630765217903e-06, -7.327865017620236714e-06, -7.334960637661798182e-06, -7.342043480843999229e-06, -7.349113537142347223e-06, -7.356170796553307672e-06, -7.363215249097439088e-06, -7.370246884815943870e-06, -7.377265693772183647e-06, -7.384271666052502591e-06, -7.391264791764385971e-06, -7.398245061037732394e-06, -7.405212464024575978e-06, -7.412166990899046546e-06, -7.419108631857146848e-06, -7.426037377118250124e-06, -7.432953216921738225e-06, -7.439856141531353668e-06, -7.446746141231777627e-06, -7.453623206329905561e-06, -7.460487327155783185e-06, -7.467338494061114848e-06, -7.474176697418808676e-06, -7.481001927626018264e-06, -7.487814175100894307e-06, -7.494613430283837361e-06, -7.501399683638860723e-06, -7.508172925650039660e-06, -7.514933146825974435e-06, -7.521680337696407251e-06, -7.528414488813358127e-06, -7.535135590752552991e-06, -7.541843634110121100e-06, -7.548538609505587611e-06, -7.555220507581467000e-06, -7.561889319001805321e-06, -7.568545034452983193e-06, -7.575187644645201495e-06, -7.581817140309077988e-06, -7.588433512198801668e-06, -7.595036751091549155e-06, -7.601626847786097258e-06, -7.608203793104012207e-06, -7.614767577889404015e-06, -7.621318193008573262e-06, -7.627855629351296048e-06, -7.634379877829027434e-06, -7.640890929375694263e-06, -7.647388774949079218e-06, -7.653873405527724061e-06, -7.660344812113621511e-06, -7.666802985732108514e-06, -7.673247917430082394e-06, -7.679679598277518732e-06, -7.686098019366975010e-06, -7.692503171813346662e-06, -7.698895046755144399e-06, -7.705273635352654458e-06, -7.711638928789143078e-06, -7.717990918270571898e-06, -7.724329595025670805e-06, -7.730654950305538130e-06, -7.736966975384985739e-06, -7.743265661560592552e-06, -7.749551000152071650e-06, -7.755822982501880646e-06, -7.762081599975275889e-06, -7.768326843959990596e-06, -7.774558705867513870e-06, -7.780777177131220450e-06, -7.786982249207607382e-06, -7.793173913576055152e-06, -7.799352161738480407e-06, -7.805516985220542126e-06, -7.811668375569925533e-06, -7.817806324357443241e-06, -7.823930823176896335e-06, -7.830041863644903274e-06, -7.836139437400777919e-06, -7.842223536107605263e-06, -7.848294151450521954e-06, -7.854351275137986846e-06, -7.860394898901333765e-06, -7.866425014494949386e-06, -7.872441613695849714e-06, -7.878444688304984519e-06, -7.884434230145404354e-06, -7.890410231063432850e-06, -7.896372682928510861e-06, -7.902321577632730594e-06, -7.908256907092187478e-06, -7.914178663245440256e-06, -7.920086838053184028e-06, -7.925981423501014971e-06, -7.931862411596425061e-06, -7.937729794370015029e-06, -7.943583563876353249e-06, -7.949423712192266428e-06, -7.955250231418040696e-06, -7.961063113677053997e-06, -7.966862351115598209e-06, -7.972647935903922690e-06, -7.978419860234943400e-06, -7.984178116323868512e-06, -7.989922696410807273e-06, -7.995653592757961245e-06, -8.001370797650733915e-06, -8.007074303398592976e-06, -8.012764102333604961e-06, -8.018440186810409830e-06, -8.024102549208426646e-06, -8.029751181929270122e-06, -8.035386077397816190e-06, -8.041007228063360744e-06, -8.046614626396534741e-06, -8.052208264893175147e-06, -8.057788136071384033e-06, -8.063354232472517914e-06, -8.068906546662409172e-06, -8.074445071228542040e-06, -8.079969798782632673e-06, -8.085480721960241202e-06, -8.090977833419491023e-06, -8.096461125841883640e-06, -8.101930591933386257e-06, -8.107386224421456999e-06, -8.112828016058868416e-06, -8.118255959620705601e-06, -8.123670047905795979e-06, -8.129070273736301041e-06, -8.134456629957884053e-06, -8.139829109439379715e-06, -8.145187705073869889e-06, -8.150532409777123372e-06, -8.155863216488327724e-06, -8.161180118171298839e-06, -8.166483107811678952e-06, -8.171772178419450640e-06, -8.177047323028579368e-06, -8.182308534695837811e-06, -8.187555806501698629e-06, -8.192789131550222651e-06, -8.198008502968765808e-06, -8.203213913908978630e-06, -8.208405357545269730e-06, -8.213582827075947598e-06, -8.218746315722817424e-06, -8.223895816731340328e-06, -8.229031323370262371e-06, -8.234152828932705525e-06, -8.239260326734671816e-06, -8.244353810115998780e-06, -8.249433272440140921e-06, -8.254498707094210379e-06, -8.259550107488690621e-06, -8.264587467058474914e-06, -8.269610779261392481e-06, -8.274620037579108052e-06, -8.279615235517045633e-06, -8.284596366604012421e-06, -8.289563424393247429e-06, -8.294516402460966288e-06, -8.299455294407306533e-06, -8.304380093856131092e-06, -8.309290794455023203e-06, -8.314187389875078046e-06, -8.319069873811773489e-06, -8.323938239983670744e-06, -8.328792482133327466e-06, -8.333632594026977575e-06, -8.338458569454702354e-06, -8.343270402230078091e-06, -8.348068086191168791e-06, -8.352851615199125194e-06, -8.357620983139131749e-06, -8.362376183920169450e-06, -8.367117211474751562e-06, -8.371844059759953608e-06, -8.376556722756190259e-06, -8.381255194467027291e-06, -8.385939468921209381e-06, -8.390609540170442573e-06, -8.395265402290261645e-06, -8.399907049380706035e-06, -8.404534475565110285e-06, -8.409147674990747779e-06, -8.413746641828888346e-06, -8.418331370274393375e-06, -8.422901854546750893e-06, -8.427458088888823646e-06, -8.432000067566747459e-06, -8.436527784871887881e-06, -8.441041235118636201e-06, -8.445540412645327640e-06, -8.450025311815076518e-06, -8.454495927013651899e-06, -8.458952252651368166e-06, -8.463394283162985077e-06, -8.467822013006504970e-06, -8.472235436663904604e-06, -8.476634548642009300e-06, -8.481019343470095831e-06, -8.485389815702953602e-06, -8.489745959918429952e-06, -8.494087770718419483e-06, -8.498415242729633168e-06, -8.502728370601533286e-06, -8.507027149008222305e-06, -8.511311572648195547e-06, -8.515581636243394205e-06, -8.519837334539767776e-06, -8.524078662308124478e-06, -8.528305614341820547e-06, -8.532518185459751956e-06, -8.536716370504058958e-06, -8.540900164341039182e-06, -8.545069561861142558e-06, -8.549224557978879832e-06, -8.553365147632551517e-06, -8.557491325785211819e-06, -8.561603087423360814e-06, -8.565700427557603443e-06, -8.569783341223411837e-06, -8.573851823479173762e-06, -8.577905869407947661e-06, -8.581945474117367792e-06, -8.585970632738522756e-06, -8.589981340426783895e-06, -8.593977592361740916e-06, -8.597959383746827503e-06, -8.601926709810231032e-06, -8.605879565803725359e-06, -8.609817947003179037e-06, -8.613741848709376942e-06, -8.617651266246127999e-06, -8.621546194961942307e-06, -8.625426630229905781e-06, -8.629292567446663709e-06, -8.633144002033277950e-06, -8.636980929434933863e-06, -8.640803345120991126e-06, -8.644611244584848213e-06, -8.648404623344601384e-06, -8.652183476942018083e-06, -8.655947800943263688e-06, -8.659697590938628773e-06, -8.663432842542510468e-06, -8.667153551394044347e-06, -8.670859713156004979e-06, -8.674551323515576731e-06, -8.678228378184157251e-06, -8.681890872897415071e-06, -8.685538803415010083e-06, -8.689172165521454126e-06, -8.692790955024860765e-06, -8.696395167757846534e-06, -8.699984799577242946e-06, -8.703559846363960966e-06, -8.707120304023653390e-06, -8.710666168485793276e-06, -8.714197435704192326e-06, -8.717714101657044934e-06, -8.721216162346679155e-06, -8.724703613799602447e-06, -8.728176452067126781e-06, -8.731634673224484338e-06, -8.735078273370607281e-06, -8.738507248629869256e-06, -8.741921595150177869e-06, -8.745321309103704836e-06, -8.748706386687524639e-06, -8.752076824122416825e-06, -8.755432617653665603e-06, -8.758773763550848089e-06, -8.762100258107705553e-06, -8.765412097642817659e-06, -8.768709278498702919e-06, -8.771991797041688244e-06, -8.775259649663497982e-06, -8.778512832779432795e-06, -8.781751342829142157e-06, -8.784975176277315528e-06, -8.788184329611790083e-06, -8.791378799345880057e-06, -8.794558582016596276e-06, -8.797723674185489807e-06, -8.800874072438218273e-06, -8.804009773385536883e-06, -8.807130773661294354e-06, -8.810237069924951983e-06, -8.813328658859582960e-06, -8.816405537172695680e-06, -8.819467701596763986e-06, -8.822515148887641526e-06, -8.825547875826083024e-06, -8.828565879217474918e-06, -8.831569155891115389e-06, -8.834557702700749683e-06, -8.837531516525019037e-06, -8.840490594265888589e-06, -8.843434932850802226e-06, -8.846364529230980051e-06, -8.849279380382150218e-06, -8.852179483304413408e-06, -8.855064835022286872e-06, -8.857935432584567215e-06, -8.860791273064814896e-06, -8.863632353560591901e-06, -8.866458671193800552e-06, -8.869270223111417044e-06, -8.872067006483821090e-06, -8.874849018506334136e-06, -8.877616256398926286e-06, -8.880368717405564088e-06, -8.883106398794722141e-06, -8.885829297859310251e-06, -8.888537411916490471e-06, -8.891230738308293741e-06, -8.893909274400703399e-06, -8.896573017584231163e-06, -8.899221965273922214e-06, -8.901856114909101084e-06, -8.904475463953415704e-06, -8.907080009895398140e-06, -8.909669750247559958e-06, -8.912244682546919083e-06, -8.914804804354908318e-06, -8.917350113257426164e-06, -8.919880606864996066e-06, -8.922396282812209063e-06, -8.924897138758301461e-06, -8.927383172386841440e-06, -8.929854381405883204e-06, -8.932310763547753534e-06, -8.934752316569609138e-06, -8.937179038252647209e-06, -8.939590926402595015e-06, -8.941987978849667550e-06, -8.944370193448520091e-06, -8.946737568077973770e-06, -8.949090100641874458e-06, -8.951427789067934026e-06, -8.953750631308580768e-06, -8.956058625340554516e-06, -8.958351769164977794e-06, -8.960630060807760696e-06, -8.962893498318882606e-06, -8.965142079772881782e-06, -8.967375803268677476e-06, -8.969594666929759673e-06, -8.971798668903796067e-06, -8.973987807363348649e-06, -8.976162080504962302e-06, -8.978321486549862754e-06, -8.980466023743617767e-06, -8.982595690356230309e-06, -8.984710484682091120e-06, -8.986810405040334467e-06, -8.988895449774192704e-06, -8.990965617251429955e-06, -8.993020905864279428e-06, -8.995061314029272322e-06, -8.997086840187762982e-06, -8.999097482805181817e-06, -9.001093240371263999e-06, -9.003074111400706763e-06, -9.005040094432207175e-06, -9.006991188028922916e-06, -9.008927390778882251e-06, -9.010848701293810038e-06, -9.012755118210543967e-06, -9.014646640190026594e-06, -9.016523265917666171e-06, -9.018384994103189269e-06, -9.020231823481201510e-06, -9.022063752810035602e-06, -9.023880780873082876e-06, -9.025682906477861550e-06, -9.027470128456216629e-06, -9.029242445664928071e-06, -9.030999856984477513e-06, -9.032742361320161267e-06, -9.034469957601861626e-06, -9.036182644783574214e-06, -9.037880421843718005e-06, -9.039563287785546978e-06, -9.041231241636033729e-06, -9.042884282447231499e-06, -9.044522409295237408e-06, -9.046145621280563451e-06, -9.047753917528505809e-06, -9.049347297188158900e-06, -9.050925759433441984e-06, -9.052489303462663787e-06, -9.054037928498480151e-06, -9.055571633787807634e-06, -9.057090418602362227e-06, -9.058594282237714061e-06, -9.060083224014119197e-06, -9.061557243276375625e-06, -9.063016339393453966e-06, -9.064460511758790537e-06, -9.065889759790197571e-06, -9.067304082929793758e-06, -9.068703480644359999e-06, -9.070087952424775283e-06, -9.071457497786411403e-06, -9.072812116269009290e-06, -9.074151807436731530e-06, -9.075476570877926886e-06, -9.076786406205721529e-06, -9.078081313057200806e-06, -9.079361291094022488e-06, -9.080626340002176215e-06, -9.081876459491914039e-06, -9.083111649298114646e-06, -9.084331909179770058e-06, -9.085537238920332915e-06, -9.086727638327541984e-06, -9.087903107233579708e-06, -9.089063645494860452e-06, -9.090209252992321876e-06, -9.091339929631096290e-06, -9.092455675340732575e-06, -9.093556490075048801e-06, -9.094642373812277916e-06, -9.095713326554893255e-06, -9.096769348329835549e-06, -9.097810439188272363e-06, -9.098836599205703134e-06, -9.099847828481964245e-06, -9.100844127141140941e-06, -9.101825495331873953e-06, -9.102791933226825864e-06, -9.103743441023118182e-06, -9.104680018942146684e-06, -9.105601667229610218e-06, -9.106508386155417526e-06, -9.107400176014053165e-06, -9.108277037124003217e-06, -9.109138969828151701e-06, -9.109985974493678930e-06, -9.110818051512003911e-06, -9.111635201298831779e-06, -9.112437424294301183e-06, -9.113224720962513333e-06, -9.113997091792109677e-06, -9.114754537295899209e-06, -9.115497058010863548e-06, -9.116224654498460177e-06, -9.116937327344246361e-06, -9.117635077157904556e-06, -9.118317904573645599e-06, -9.118985810249771639e-06, -9.119638794868759144e-06, -9.120276859137551977e-06, -9.120900003786975245e-06, -9.121508229572406157e-06, -9.122101537273296287e-06, -9.122679927693217323e-06, -9.123243401660206651e-06, -9.123791960026365864e-06, -9.124325603667840431e-06, -9.124844333485322836e-06, -9.125348150403422387e-06, -9.125837055371014190e-06, -9.126311049361345877e-06, -9.126770133371492119e-06, -9.127214308422954320e-06, -9.127643575561430230e-06, -9.128057935856639452e-06, -9.128457390402545366e-06, -9.128841940317336493e-06, -9.129211586743136815e-06, -9.129566330846464859e-06, -9.129906173817913523e-06, -9.130231116872109421e-06, -9.130541161248004254e-06, -9.130836308208476715e-06, -9.131116559040623859e-06, -9.131381915055764497e-06, -9.131632377589166450e-06, -9.131867948000251529e-06, -9.132088627672705651e-06, -9.132294418014053630e-06, -9.132485320456125042e-06, -9.132661336454749295e-06, -9.132822467489852189e-06, -9.132968715065477942e-06, -9.133100080709643498e-06, -9.133216565974563837e-06, -9.133318172436458854e-06, -9.133404901695626202e-06, -9.133476755376341343e-06, -9.133533735127052366e-06, -9.133575842620122486e-06, -9.133603079552021477e-06, -9.133615447643317201e-06, -9.133612948638482484e-06, -9.133595584306039109e-06, -9.133563356438562903e-06, -9.133516266852578701e-06, -9.133454317388712816e-06, -9.133377509911481276e-06, -9.133285846309447374e-06, -9.133179328495160684e-06, -9.133057958405107929e-06, -9.132921737999816322e-06, -9.132770669263714654e-06, -9.132604754205246789e-06, -9.132423994856754784e-06, -9.132228393274563583e-06, -9.132017951538962388e-06, -9.131792671754111482e-06, -9.131552556048187923e-06, -9.131297606573221214e-06, -9.131027825505159376e-06, -9.130743215043912991e-06, -9.130443777413211207e-06, -9.130129514860827052e-06, -9.129800429658301296e-06, -9.129456524101083062e-06, -9.129097800508502718e-06, -9.128724261223793905e-06, -9.128335908614008829e-06, -9.127932745070106352e-06, -9.127514773006830024e-06, -9.127081994862838523e-06, -9.126634413100642972e-06, -9.126172030206451091e-06, -9.125694848690477207e-06, -9.125202871086591580e-06, -9.124696099952606709e-06, -9.124174537870019823e-06, -9.123638187444244976e-06, -9.123087051304377569e-06, -9.122521132103355286e-06, -9.121940432517893719e-06, -9.121344955248454183e-06, -9.120734703019238633e-06, -9.120109678578252341e-06, -9.119469884697202258e-06, -9.118815324171586795e-06, -9.118145999820616204e-06, -9.117461914487175306e-06, -9.116763071037913281e-06, -9.116049472363194536e-06, -9.115321121377037720e-06, -9.114578021017198734e-06, -9.113820174245135155e-06, -9.113047584045958800e-06, -9.112260253428393380e-06, -9.111458185424952370e-06, -9.110641383091666270e-06, -9.109809849508353652e-06, -9.108963587778361970e-06, -9.108102601028696308e-06, -9.107226892410063426e-06, -9.106336465096671859e-06, -9.105431322286377610e-06, -9.104511467200724804e-06, -9.103576903084691579e-06, -9.102627633206972996e-06, -9.101663660859787917e-06, -9.100684989358872224e-06, -9.099691622043665169e-06, -9.098683562277056961e-06, -9.097660813445429418e-06, -9.096623378958793190e-06, -9.095571262250679338e-06, -9.094504466778041078e-06, -9.093422996021507891e-06, -9.092326853485058568e-06, -9.091216042696232969e-06, -9.090090567206043931e-06, -9.088950430588970490e-06, -9.087795636442995155e-06, -9.086626188389544610e-06, -9.085442090073393159e-06, -9.084243345162930380e-06, -9.083029957349857895e-06, -9.081801930349379102e-06, -9.080559267900009437e-06, -9.079301973763801692e-06, -9.078030051726049545e-06, -9.076743505595545063e-06, -9.075442339204463506e-06, -9.074126556408304033e-06, -9.072796161085969321e-06, -9.071451157139643598e-06, -9.070091548494875645e-06, -9.068717339100592357e-06, -9.067328532929044523e-06, -9.065925133975772954e-06, -9.064507146259635583e-06, -9.063074573822734619e-06, -9.061627420730480927e-06, -9.060165691071639762e-06, -9.058689388958173223e-06, -9.057198518525301243e-06, -9.055693083931564262e-06, -9.054173089358597923e-06, -9.052638539011392260e-06, -9.051089437118127375e-06, -9.049525787930198852e-06, -9.047947595722239772e-06, -9.046354864791919127e-06, -9.044747599460162046e-06, -9.043125804071334447e-06, -9.041489482992534917e-06, -9.039838640614231683e-06, -9.038173281350106759e-06, -9.036493409636756091e-06, -9.034799029934084279e-06, -9.033090146725053854e-06, -9.031366764515666643e-06, -9.029628887835195857e-06, -9.027876521235732080e-06, -9.026109669292581373e-06, -9.024328336604283914e-06, -9.022532527792080363e-06, -9.020722247500475986e-06, -9.018897500397022121e-06, -9.017058291172116280e-06, -9.015204624539291834e-06, -9.013336505235218008e-06, -9.011453938019240798e-06, -9.009556927673899651e-06, -9.007645479004703859e-06, -9.005719596839880132e-06, -9.003779286031058705e-06, -9.001824551452353453e-06, -8.999855398001010721e-06, -8.997871830597267023e-06, -8.995873854183994981e-06, -8.993861473727181053e-06, -8.991834694215805252e-06, -8.989793520661348175e-06, -8.987737958098472016e-06, -8.985668011584617380e-06, -8.983583686199810158e-06, -8.981484987047403529e-06, -8.979371919253090317e-06, -8.977244487965600951e-06, -8.975102698356430715e-06, -8.972946555619936313e-06, -8.970776064972937764e-06, -8.968591231655524774e-06, -8.966392060930052159e-06, -8.964178558081864901e-06, -8.961950728419037268e-06, -8.959708577272101755e-06, -8.957452109994741964e-06, -8.955181331963076011e-06, -8.952896248575786971e-06, -8.950596865254404090e-06, -8.948283187443104581e-06, -8.945955220608679744e-06, -8.943612970240606114e-06, -8.941256441850794741e-06, -8.938885640974007931e-06, -8.936500573167608521e-06, -8.934101244011158390e-06, -8.931687659107358660e-06, -8.929259824081192505e-06, -8.926817744580086081e-06, -8.924361426274160947e-06, -8.921890874856095149e-06, -8.919406096040979223e-06, -8.916907095566514404e-06, -8.914393879192888958e-06, -8.911866452702541013e-06, -8.909324821900675245e-06, -8.906768992614834288e-06, -8.904198970694983427e-06, -8.901614762013690179e-06, -8.899016372465597431e-06, -8.896403807968048552e-06, -8.893777074460697762e-06, -8.891136177905579582e-06, -8.888481124287120699e-06, -8.885811919612131491e-06, -8.883128569909604436e-06, -8.880431081231030899e-06, -8.877719459650213095e-06, -8.874993711263238675e-06, -8.872253842188517996e-06, -8.869499858566577447e-06, -8.866731766560421974e-06, -8.863949572355223378e-06, -8.861153282158462614e-06, -8.858342902199758687e-06, -8.855518438731132933e-06, -8.852679898026475383e-06, -8.849827286382047902e-06, -8.846960610116645125e-06, -8.844079875570600043e-06, -8.841185089106815684e-06, -8.838276257110339908e-06, -8.835353385988048612e-06, -8.832416482169177670e-06, -8.829465552105062045e-06, -8.826500602269047699e-06, -8.823521639156708431e-06, -8.820528669285383400e-06, -8.817521699194595558e-06, -8.814500735446302370e-06, -8.811465784623798064e-06, -8.808416853332855424e-06, -8.805353948201202332e-06, -8.802277075878255793e-06, -8.799186243035680982e-06, -8.796081456367104941e-06, -8.792962722587979366e-06, -8.789830048435712739e-06, -8.786683440669800773e-06, -8.783522906071113213e-06, -8.780348451443259247e-06, -8.777160083610864648e-06, -8.773957809420974453e-06, -8.770741635742395674e-06, -8.767511569465439791e-06, -8.764267617502493661e-06, -8.761009786788087272e-06, -8.757738084277826490e-06, -8.754452516949573815e-06, -8.751153091802975744e-06, -8.747839815858932520e-06, -8.744512696160946618e-06, -8.741171739773357521e-06, -8.737816953782734245e-06, -8.734448345297184159e-06, -8.731065921446530865e-06, -8.727669689382224407e-06, -8.724259656277536095e-06, -8.720835829326985906e-06, -8.717398215747062463e-06, -8.713946822775896082e-06, -8.710481657672682786e-06, -8.707002727718995519e-06, -8.703510040217533915e-06, -8.700003602492358091e-06, -8.696483421889401937e-06, -8.692949505776008951e-06, -8.689401861541049126e-06, -8.685840496594976549e-06, -8.682265418369355061e-06, -8.678676634317598565e-06, -8.675074151914571226e-06, -8.671457978656035208e-06, -8.667828122060002534e-06, -8.664184589665474705e-06, -8.660527389032532484e-06, -8.656856527743069424e-06, -8.653172013400220973e-06, -8.649473853628408517e-06, -8.645762056073473209e-06, -8.642036628402667502e-06, -8.638297578304070695e-06, -8.634544913487518977e-06, -8.630778641684020970e-06, -8.626998770645759426e-06, -8.623205308146336868e-06, -8.619398261980121677e-06, -8.615577639963193382e-06, -8.611743449932595580e-06, -8.607895699746632393e-06, -8.604034397284687205e-06, -8.600159550447502183e-06, -8.596271167156490487e-06, -8.592369255354561278e-06, -8.588453823005731777e-06, -8.584524878094947699e-06, -8.580582428628476268e-06, -8.576626482633128648e-06, -8.572657048157217085e-06, -8.568674133269977235e-06, -8.564677746061580019e-06, -8.560667894643246822e-06, -8.556644587147305394e-06, -8.552607831726578296e-06, -8.548557636555133369e-06, -8.544494009828461611e-06, -8.540416959762035527e-06, -8.536326494592782967e-06, -8.532222622578597540e-06, -8.528105351997757551e-06, -8.523974691149810301e-06, -8.519830648355007966e-06, -8.515673231954421095e-06, -8.511502450310092776e-06, -8.507318311804374557e-06, -8.503120824840619321e-06, -8.498909997843567533e-06, -8.494685839257637929e-06, -8.490448357548616495e-06, -8.486197561203002565e-06, -8.481933458727527697e-06, -8.477656058650024737e-06, -8.473365369518858609e-06, -8.469061399903051677e-06, -8.464744158392175323e-06, -8.460413653596693845e-06, -8.456069894146865006e-06, -8.451712888694757668e-06, -8.447342645911847911e-06, -8.442959174490738511e-06, -8.438562483144606676e-06, -8.434152580606682270e-06, -8.429729475630942382e-06, -8.425293176992370520e-06, -8.420843693485423478e-06, -8.416381033925589877e-06, -8.411905207148922606e-06, -8.407416222011002051e-06, -8.402914087389199368e-06, -8.398398812179964281e-06, -8.393870405300742768e-06, -8.389328875689411243e-06, -8.384774232303387169e-06, -8.380206484121529800e-06, -8.375625640142393601e-06, -8.371031709384470500e-06, -8.366424700887047081e-06, -8.361804623709638771e-06, -8.357171486931227507e-06, -8.352525299652167561e-06, -8.347866070992355952e-06, -8.343193810091562783e-06, -8.338508526110176633e-06, -8.333810228228667540e-06, -8.329098925647507377e-06, -8.324374627587498502e-06, -8.319637343288899619e-06, -8.314887082012708188e-06, -8.310123853039870989e-06, -8.305347665670650539e-06, -8.300558529226456382e-06, -8.295756453048105280e-06, -8.290941446496016032e-06, -8.286113518951141208e-06, -8.281272679814198048e-06, -8.276418938505754853e-06, -8.271552304466593520e-06, -8.266672787156679547e-06, -8.261780396056525759e-06, -8.256875140666253792e-06, -8.251957030505841428e-06, -8.247026075115029424e-06, -8.242082284053626440e-06, -8.237125666900594245e-06, -8.232156233255233564e-06, -8.227173992736431911e-06, -8.222178954982756763e-06, -8.217171129652516549e-06, -8.212150526423874148e-06, -8.207117154994130303e-06, -8.202071025080756998e-06, -8.197012146420696118e-06, -8.191940528770523772e-06, -8.186856181906624778e-06, -8.181759115624294816e-06, -8.176649339739090592e-06, -8.171526864085787989e-06, -8.166391698518825915e-06, -8.161243852912030165e-06, -8.156083337158999674e-06, -8.150910161172171387e-06, -8.145724334884012888e-06, -8.140525868246263451e-06, -8.135314771230040771e-06, -8.130091053825918890e-06, -8.124854726043962078e-06, -8.119605797913040431e-06, -8.114344279481985222e-06, -8.109070180818714766e-06, -8.103783512010456341e-06, -8.098484283163954556e-06, -8.093172504404543008e-06, -8.087848185877253890e-06, -8.082511337747009424e-06, -8.077161970196573734e-06, -8.071800093428877103e-06, -8.066425717665940244e-06, -8.061038853148272905e-06, -8.055639510136251144e-06, -8.050227698909053457e-06, -8.044803429765033472e-06, -8.039366713021743664e-06, -8.033917559015274674e-06, -8.028455978101044739e-06, -8.022981980654294361e-06, -8.017495577067789155e-06, -8.011996777754294875e-06, -8.006485593145454255e-06, -8.000962033691200856e-06, -7.995426109860816167e-06, -7.989877832143244698e-06, -7.984317211044906945e-06, -7.978744257091944023e-06, -7.973158980829412988e-06, -7.967561392820278867e-06, -7.961951503647859193e-06, -7.956329323912667963e-06, -7.950694864234973677e-06, -7.945048135253747322e-06, -7.939389147625715388e-06, -7.933717912027799326e-06, -7.928034439154820089e-06, -7.922338739719850492e-06, -7.916630824455265540e-06, -7.910910704112185076e-06, -7.905178389459296406e-06, -7.899433891285507207e-06, -7.893677220396738659e-06, -7.887908387618320857e-06, -7.882127403793934015e-06, -7.876334279785728750e-06, -7.870529026474383676e-06, -7.864711654759249401e-06, -7.858882175557459145e-06, -7.853040599805238248e-06, -7.847186938457257041e-06, -7.841321202485604239e-06, -7.835443402882175579e-06, -7.829553550656520654e-06, -7.823651656836020797e-06, -7.817737732467095255e-06, -7.811811788614196603e-06, -7.805873836360061472e-06, -7.799923886805922303e-06, -7.793961951070514627e-06, -7.787988040291471279e-06, -7.782002165624419461e-06, -7.776004338243146764e-06, -7.769994569339575753e-06, -7.763972870124028242e-06, -7.757939251824120765e-06, -7.751893725686385795e-06, -7.745836302975114699e-06, -7.739766994972667748e-06, -7.733685812979462264e-06, -7.727592768314096283e-06, -7.721487872312457479e-06, -7.715371136329147870e-06, -7.709242571736406394e-06, -7.703102189924461278e-06, -7.696950002301653697e-06, -7.690786020293468775e-06, -7.684610255343989093e-06, -7.678422718914913820e-06, -7.672223422485712879e-06, -7.666012377553703175e-06, -7.659789595634216311e-06, -7.653555088259524549e-06, -7.647308866980478972e-06, -7.641050943365350741e-06, -7.634781329000136030e-06, -7.628500035488412027e-06, -7.622207074451773161e-06, -7.615902457528592733e-06, -7.609586196375692425e-06, -7.603258302667133577e-06, -7.596918788094640711e-06, -7.590567664367699779e-06, -7.584204943212525637e-06, -7.577830636373366470e-06, -7.571444755612761294e-06, -7.565047312709090335e-06, -7.558638319459274521e-06, -7.552217787677584560e-06, -7.545785729194991258e-06, -7.539342155860574139e-06, -7.532887079540505854e-06, -7.526420512118264782e-06, -7.519942465494967916e-06, -7.513452951588157914e-06, -7.506951982333230346e-06, -7.500439569683618347e-06, -7.493915725608343003e-06, -7.487380462094727238e-06, -7.480833791147301451e-06, -7.474275724786596495e-06, -7.467706275051976997e-06, -7.461125453999092644e-06, -7.454533273700117038e-06, -7.447929746245169022e-06, -7.441314883741365698e-06, -7.434688698311751773e-06, -7.428051202098401397e-06, -7.421402407258314290e-06, -7.414742325966635307e-06, -7.408070970415433873e-06, -7.401388352812591821e-06, -7.394694485384552019e-06, -7.387989380373810301e-06, -7.381273050039174664e-06, -7.374545506657058684e-06, -7.367806762520754761e-06, -7.361056829939175432e-06, -7.354295721240011106e-06, -7.347523448765682943e-06, -7.340740024876504824e-06, -7.333945461949175640e-06, -7.327139772377063040e-06, -7.320322968570224611e-06, -7.313495062955620483e-06, -7.306656067975945269e-06, -7.299805996091402602e-06, -7.292944859778685302e-06, -7.286072671529935227e-06, -7.279189443855501205e-06, -7.272295189281419115e-06, -7.265389920349576213e-06, -7.258473649619192586e-06, -7.251546389665676818e-06, -7.244608153080797086e-06, -7.237658952472993716e-06, -7.230698800466228914e-06, -7.223727709701680830e-06, -7.216745692836816905e-06, -7.209752762544274093e-06, -7.202748931514687950e-06, -7.195734212454076999e-06, -7.188708618084111236e-06, -7.181672161143562254e-06, -7.174624854387014903e-06, -7.167566710585311137e-06, -7.160497742525388230e-06, -7.153417963010564225e-06, -7.146327384859435099e-06, -7.139226020907499373e-06, -7.132113884006038330e-06, -7.124990987022307450e-06, -7.117857342839941288e-06, -7.110712964357580434e-06, -7.103557864490743457e-06, -7.096392056170600402e-06, -7.089215552344239603e-06, -7.082028365974590603e-06, -7.074830510040806170e-06, -7.067621997536887557e-06, -7.060402841473656398e-06, -7.053173054877359646e-06, -7.045932650790049038e-06, -7.038681642269834364e-06, -7.031420042389608680e-06, -7.024147864238890604e-06, -7.016865120922569862e-06, -7.009571825561214758e-06, -7.002267991290993403e-06, -6.994953631264019304e-06, -6.987628758647046931e-06, -6.980293386623022636e-06, -6.972947528391348928e-06, -6.965591197165075710e-06, -6.958224406174030067e-06, -6.950847168663437297e-06, -6.943459497893109449e-06, -6.936061407139174972e-06, -6.928652909692838651e-06, -6.921234018860700944e-06, -6.913804747965031570e-06, -6.906365110342488797e-06, -6.898915119345596670e-06, -6.891454788343206636e-06, -6.883984130717463480e-06, -6.876503159867051153e-06, -6.869011889205823117e-06, -6.861510332161604645e-06, -6.853998502179530972e-06, -6.846476412717724892e-06, -6.838944077250640840e-06, -6.831401509267523294e-06, -6.823848722273046283e-06, -6.816285729785571890e-06, -6.808712545340788255e-06, -6.801129182487105955e-06, -6.793535654789178269e-06, -6.785931975826631478e-06, -6.778318159192717236e-06, -6.770694218497506729e-06, -6.763060167365015000e-06, -6.755416019433454210e-06, -6.747761788356799805e-06, -6.740097487803856236e-06, -6.732423131456909330e-06, -6.724738733015298228e-06, -6.717044306190747389e-06, -6.709339864711088448e-06, -6.701625422318749959e-06, -6.693900992769567316e-06, -6.686166589835940485e-06, -6.678422227303919373e-06, -6.670667918973460470e-06, -6.662903678660112450e-06, -6.655129520193936203e-06, -6.647345457418173298e-06, -6.639551504192539247e-06, -6.631747674390250421e-06, -6.623933981898274772e-06, -6.616110440619028437e-06, -6.608277064468927314e-06, -6.600433867378772463e-06, -6.592580863294115174e-06, -6.584718066173731463e-06, -6.576845489991724407e-06, -6.568963148736170587e-06, -6.561071056409339465e-06, -6.553169227027732353e-06, -6.545257674622393271e-06, -6.537336413237542685e-06, -6.529405456932543465e-06, -6.521464819780542253e-06, -6.513514515868756600e-06, -6.505554559298884083e-06, -6.497584964185599676e-06, -6.489605744658640287e-06, -6.481616914861387684e-06, -6.473618488951208990e-06, -6.465610481099423658e-06, -6.457592905491639740e-06, -6.449565776326268189e-06, -6.441529107816708208e-06, -6.433482914189803954e-06, -6.425427209686246028e-06, -6.417362008560545226e-06, -6.409287325081298499e-06, -6.401203173529851489e-06, -6.393109568202287368e-06, -6.385006523408083438e-06, -6.376894053470316116e-06, -6.368772172726130187e-06, -6.360640895525243796e-06, -6.352500236231989793e-06, -6.344350209223971492e-06, -6.336190828892287986e-06, -6.328022109641617150e-06, -6.319844065890465520e-06, -6.311656712069761372e-06, -6.303460062624929949e-06, -6.295254132014489928e-06, -6.287038934710350733e-06, -6.278814485197804908e-06, -6.270580797975833046e-06, -6.262337887555693487e-06, -6.254085768462970436e-06, -6.245824455236222951e-06, -6.237553962427229732e-06, -6.229274304601367746e-06, -6.220985496336089262e-06, -6.212687552222815816e-06, -6.204380486867099148e-06, -6.196064314885550707e-06, -6.187739050909249265e-06, -6.179404709582350934e-06, -6.171061305560692414e-06, -6.162708853515545883e-06, -6.154347368128723151e-06, -6.145976864096432200e-06, -6.137597356127456064e-06, -6.129208858943852476e-06, -6.120811387279153078e-06, -6.112404955882273325e-06, -6.103989579512423508e-06, -6.095565272943117767e-06, -6.087132050960600297e-06, -6.078689928362495183e-06, -6.070238919961280078e-06, -6.061779040581108985e-06, -6.053310305058062130e-06, -6.044832728242015366e-06, -6.036346324995412821e-06, -6.027851110191927737e-06, -6.019347098720316473e-06, -6.010834305479365105e-06, -6.002312745381852693e-06, -5.993782433353027469e-06, -5.985243384329224480e-06, -5.976695613261376538e-06, -5.968139135111790412e-06, -5.959573964854400096e-06, -5.951000117476637052e-06, -5.942417607978290104e-06, -5.933826451370015511e-06, -5.925226662676931772e-06, -5.916618256935394124e-06, -5.908001249193216468e-06, -5.899375654511542461e-06, -5.890741487963380996e-06, -5.882098764633868787e-06, -5.873447499620710821e-06, -5.864787708032538810e-06, -5.856119404991288812e-06, -5.847442605630489380e-06, -5.838757325095799424e-06, -5.830063578544821866e-06, -5.821361381147566119e-06, -5.812650748084870067e-06, -5.803931694550604889e-06, -5.795204235750212233e-06, -5.786468386901001527e-06, -5.777724163232515895e-06, -5.768971579984985477e-06, -5.760210652411606791e-06, -5.751441395776926599e-06, -5.742663825357300995e-06, -5.733877956440794609e-06, -5.725083804327522811e-06, -5.716281384328166010e-06, -5.707470711766151616e-06, -5.698651801976197987e-06, -5.689824670304603269e-06, -5.680989332109195421e-06, -5.672145802759726929e-06, -5.663294097636421305e-06, -5.654434232132000028e-06, -5.645566221650334921e-06, -5.636690081606714116e-06, -5.627805827428239314e-06, -5.618913474552202023e-06, -5.610013038428435765e-06, -5.601104534517716884e-06, -5.592187978292118602e-06, -5.583263385234980524e-06, -5.574330770841255926e-06, -5.565390150616035372e-06, -5.556441540076686325e-06, -5.547484954751393702e-06, -5.538520410179503776e-06, -5.529547921911432692e-06, -5.520567505509120478e-06, -5.511579176543976146e-06, -5.502582950601169601e-06, -5.493578843274211485e-06, -5.484566870169079070e-06, -5.475547046902737338e-06, -5.466519389101928574e-06, -5.457483912405034988e-06, -5.448440632462527647e-06, -5.439389564933356415e-06, -5.430330725488869179e-06, -5.421264129811195707e-06, -5.412189793591655229e-06, -5.403107732535093243e-06, -5.394017962354306346e-06, -5.384920498774343465e-06, -5.375815357530882946e-06, -5.366702554369111078e-06, -5.357582105045584720e-06, -5.348454025328595528e-06, -5.339318330994658150e-06, -5.330175037832401503e-06, -5.321024161640911970e-06, -5.311865718228190110e-06, -5.302699723415056326e-06, -5.293526193031541655e-06, -5.284345142917297739e-06, -5.275156588923491627e-06, -5.265960546911688548e-06, -5.256757032752140054e-06, -5.247546062328134380e-06, -5.238327651530476332e-06, -5.229101816261769036e-06, -5.219868572434812204e-06, -5.210627935970990223e-06, -5.201379922804226960e-06, -5.192124548877373160e-06, -5.182861830142581682e-06, -5.173591782563223493e-06, -5.164314422112762802e-06, -5.155029764773045210e-06, -5.145737826538699740e-06, -5.136438623411504371e-06, -5.127132171404793155e-06, -5.117818486541367428e-06, -5.108497584853943050e-06, -5.099169482385036898e-06, -5.089834195187417488e-06, -5.080491739322422769e-06, -5.071142130862345367e-06, -5.061785385888888444e-06, -5.052421520493377457e-06, -5.043050550776853330e-06, -5.033672492850426514e-06, -5.024287362833598170e-06, -5.014895176856714022e-06, -5.005495951059249112e-06, -4.996089701590255888e-06, -4.986676444608697927e-06, -4.977256196281805003e-06, -4.967828972787515925e-06, -4.958394790312742124e-06, -4.948953665053869094e-06, -4.939505613216605620e-06, -4.930050651016452189e-06, -4.920588794677013699e-06, -4.911120060432395714e-06, -4.901644464525575623e-06, -4.892162023208777872e-06, -4.882672752743430769e-06, -4.873176669400572210e-06, -4.863673789459162388e-06, -4.854164129208500383e-06, -4.844647704946632584e-06, -4.835124532980644913e-06, -4.825594629627088889e-06, -4.816058011210279931e-06, -4.806514694064815595e-06, -4.796964694533798492e-06, -4.787408028969287759e-06, -4.777844713732247393e-06, -4.768274765192967222e-06, -4.758698199729303620e-06, -4.749115033729192651e-06, -4.739525283589001749e-06, -4.729928965713799913e-06, -4.720326096517837135e-06, -4.710716692422879977e-06, -4.701100769860178382e-06, -4.691478345270859542e-06, -4.681849435102233145e-06, -4.672214055811853742e-06, -4.662572223865882585e-06, -4.652923955737736611e-06, -4.643269267910180611e-06, -4.633608176875806656e-06, -4.623940699133080985e-06, -4.614266851190602051e-06, -4.604586649565414068e-06, -4.594900110781199448e-06, -4.585207251372978989e-06, -4.575508087881153840e-06, -4.565802636856092185e-06, -4.556090914856436028e-06, -4.546372938447810314e-06, -4.536648724204874439e-06, -4.526918288711773721e-06, -4.517181648558248978e-06, -4.507438820343866612e-06, -4.497689820676312681e-06, -4.487934666169624295e-06, -4.478173373448872865e-06, -4.468405959144163717e-06, -4.458632439895303246e-06, -4.448852832349607641e-06, -4.439067153162774481e-06, -4.429275418996702474e-06, -4.419477646524148444e-06, -4.409673852422713397e-06, -4.399864053379566420e-06, -4.390048266089609167e-06, -4.380226507253854633e-06, -4.370398793583585241e-06, -4.360565141796503924e-06, -4.350725568617179664e-06, -4.340880090779060041e-06, -4.331028725022839851e-06, -4.321171488096755024e-06, -4.311308396757079831e-06, -4.301439467766318471e-06, -4.291564717895792757e-06, -4.281684163923841322e-06, -4.271797822636293112e-06, -4.261905710826399622e-06, -4.252007845295214368e-06, -4.242104242849882727e-06, -4.232194920306180494e-06, -4.222279894486774925e-06, -4.212359182221595736e-06, -4.202432800347850349e-06, -4.192500765710406754e-06, -4.182563095160004573e-06, -4.172619805555886791e-06, -4.162670913763984564e-06, -4.152716436657350904e-06, -4.142756391116557085e-06, -4.132790794027924889e-06, -4.122819662286127842e-06, -4.112843012792376024e-06, -4.102860862454870924e-06, -4.092873228188741067e-06, -4.082880126916504495e-06, -4.072881575566185808e-06, -4.062877591074062250e-06, -4.052868190382746024e-06, -4.042853390441667949e-06, -4.032833208207041883e-06, -4.022807660642245887e-06, -4.012776764716078190e-06, -4.002740537405326233e-06, -3.992698995692981125e-06, -3.982652156568710292e-06, -3.972600037029195438e-06, -3.962542654076380882e-06, -3.952480024720053623e-06, -3.942412165976103531e-06, -3.932339094866895197e-06, -3.922260828421266235e-06, -3.912177383674895748e-06, -3.902088777668593314e-06, -3.891995027450804516e-06, -3.881896150075941436e-06, -3.871792162604672340e-06, -3.861683082104452771e-06, -3.851568925647620569e-06, -3.841449710313657449e-06, -3.831325453189585415e-06, -3.821196171365917093e-06, -3.811061881941099267e-06, -3.800922602019677780e-06, -3.790778348710990989e-06, -3.780629139131281841e-06, -3.770474990404170091e-06, -3.760315919656642451e-06, -3.750151944023400832e-06, -3.739983080645108986e-06, -3.729809346666554448e-06, -3.719630759241535908e-06, -3.709447335526596447e-06, -3.699259092685880841e-06, -3.689066047889342394e-06, -3.678868218311395312e-06, -3.668665621133036939e-06, -3.658458273542350895e-06, -3.648246192730432005e-06, -3.638029395895807383e-06, -3.627807900242643689e-06, -3.617581722978892126e-06, -3.607350881321257983e-06, -3.597115392488805958e-06, -3.586875273707948761e-06, -3.576630542210093208e-06, -3.566381215232585933e-06, -3.556127310016389132e-06, -3.545868843811021724e-06, -3.535605833868194753e-06, -3.525338297446816925e-06, -3.515066251811048971e-06, -3.504789714228582906e-06, -3.494508701975030076e-06, -3.484223232329913429e-06, -3.473933322577024956e-06, -3.463638990006666520e-06, -3.453340251913882100e-06, -3.443037125598782624e-06, -3.432729628367016075e-06, -3.422417777527943830e-06, -3.412101590397301609e-06, -3.401781084295815854e-06, -3.391456276547387260e-06, -3.381127184483545749e-06, -3.370793825439401228e-06, -3.360456216754007389e-06, -3.350114375772652934e-06, -3.339768319844982007e-06, -3.329418066325447783e-06, -3.319063632573249786e-06, -3.308705035952781121e-06, -3.298342293831799734e-06, -3.287975423584098679e-06, -3.277604442587633330e-06, -3.267229368225019859e-06, -3.256850217883909205e-06, -3.246467008955142229e-06, -3.236079758835455144e-06, -3.225688484925664320e-06, -3.215293204631022886e-06, -3.204893935361264350e-06, -3.194490694530969792e-06, -3.184083499557758174e-06, -3.173672367864973978e-06, -3.163257316879830085e-06, -3.152838364033848656e-06, -3.142415526763292273e-06, -3.131988822507275900e-06, -3.121558268710522284e-06, -3.111123882821455704e-06, -3.100685682292694101e-06, -3.090243684580960561e-06, -3.079797907147539019e-06, -3.069348367456412478e-06, -3.058895082976536028e-06, -3.048438071182229864e-06, -3.037977349549057624e-06, -3.027512935558378348e-06, -3.017044846695466485e-06, -3.006573100448109206e-06, -2.996097714309383404e-06, -2.985618705775687611e-06, -2.975136092347270971e-06, -2.964649891528602123e-06, -2.954160120826536645e-06, -2.943666797752568044e-06, -2.933169939823246611e-06, -2.922669564556064118e-06, -2.912165689473955793e-06, -2.901658332103490209e-06, -2.891147509973406466e-06, -2.880633240617396261e-06, -2.870115541572198495e-06, -2.859594430378047773e-06, -2.849069924578629511e-06, -2.838542041721554702e-06, -2.828010799355958148e-06, -2.817476215037598451e-06, -2.806938306322344327e-06, -2.796397090771236050e-06, -2.785852585948583444e-06, -2.775304809420583944e-06, -2.764753778757579092e-06, -2.754199511534523376e-06, -2.743642025326736775e-06, -2.733081337714554551e-06, -2.722517466281402367e-06, -2.711950428611962880e-06, -2.701380242297205853e-06, -2.690806924927878699e-06, -2.680230494099596309e-06, -2.669650967410934375e-06, -2.659068362461544747e-06, -2.648482696856781921e-06, -2.637893988203486093e-06, -2.627302254110415984e-06, -2.616707512190565060e-06, -2.606109780059699548e-06, -2.595509075334515716e-06, -2.584905415637200302e-06, -2.574298818591288518e-06, -2.563689301822044372e-06, -2.553076882958774759e-06, -2.542461579632944391e-06, -2.531843409478612867e-06, -2.521222390132869619e-06, -2.510598539233934449e-06, -2.499971874423912495e-06, -2.489342413347415268e-06, -2.478710173649611204e-06, -2.468075172980888576e-06, -2.457437428992628807e-06, -2.446796959337636332e-06, -2.436153781672434063e-06, -2.425507913655402879e-06, -2.414859372947165752e-06, -2.404208177211077339e-06, -2.393554344111292742e-06, -2.382897891315541540e-06, -2.372238836493267710e-06, -2.361577197316019679e-06, -2.350912991457454989e-06, -2.340246236593754915e-06, -2.329576950401747866e-06, -2.318905150561661816e-06, -2.308230854755248554e-06, -2.297554080666199149e-06, -2.286874845980140987e-06, -2.276193168385068490e-06, -2.265509065569401287e-06, -2.254822555224833217e-06, -2.244133655044374404e-06, -2.233442382722819250e-06, -2.222748755957192393e-06, -2.212052792444809004e-06, -2.201354509886088631e-06, -2.190653925982647252e-06, -2.179951058437725460e-06, -2.169245924956166429e-06, -2.158538543244868662e-06, -2.147828931010843739e-06, -2.137117105964046680e-06, -2.126403085815439627e-06, -2.115686888277453055e-06, -2.104968531063924359e-06, -2.094248031890582782e-06, -2.083525408473099547e-06, -2.072800678529908474e-06, -2.062073859780269662e-06, -2.051344969944758232e-06, -2.040614026745637862e-06, -2.029881047905004519e-06, -2.019146051147084035e-06, -2.008409054198688656e-06, -1.997670074784938680e-06, -1.986929130633933419e-06, -1.976186239474874601e-06, -1.965441419036590832e-06, -1.954694687050341706e-06, -1.943946061247918330e-06, -1.933195559362057943e-06, -1.922443199126451549e-06, -1.911688998276155563e-06, -1.900932974545207001e-06, -1.890175145671826796e-06, -1.879415529391712568e-06, -1.868654143443254658e-06, -1.857891005565607218e-06, -1.847126133497232373e-06, -1.836359544978242269e-06, -1.825591257750834871e-06, -1.814821289555035503e-06, -1.804049658133343038e-06, -1.793276381228866002e-06, -1.782501476583371007e-06, -1.771724961942472526e-06, -1.760946855048957845e-06, -1.750167173647979592e-06, -1.739385935485149275e-06, -1.728603158304562635e-06, -1.717818859853581574e-06, -1.707033057878474683e-06, -1.696245770124887352e-06, -1.685457014340190164e-06, -1.674666808272027081e-06, -1.663875169666360495e-06, -1.653082116272237901e-06, -1.642287665837450434e-06, -1.631491836108982008e-06, -1.620694644835375710e-06, -1.609896109764789228e-06, -1.599096248645437849e-06, -1.588295079226064562e-06, -1.577492619253969856e-06, -1.566688886477881474e-06, -1.555883898646461301e-06, -1.545077673506388740e-06, -1.534270228807096687e-06, -1.523461582296448276e-06, -1.512651751721177968e-06, -1.501840754829264938e-06, -1.491028609367988714e-06, -1.480215333084364548e-06, -1.469400943725614158e-06, -1.458585459037203148e-06, -1.447768896765695515e-06, -1.436951274656805258e-06, -1.426132610455852291e-06, -1.415312921907730898e-06, -1.404492226757349761e-06, -1.393670542747701571e-06, -1.382847887622703772e-06, -1.372024279125248046e-06, -1.361199734997655814e-06, -1.350374272981644349e-06, -1.339547910818786082e-06, -1.328720666248558519e-06, -1.317892557011188791e-06, -1.307063600845703571e-06, -1.296233815490391977e-06, -1.285403218683242645e-06, -1.274571828160004866e-06, -1.263739661657040757e-06, -1.252906736909369046e-06, -1.242073071651118436e-06, -1.231238683615499237e-06, -1.220403590535260338e-06, -1.209567810140729383e-06, -1.198731360162675746e-06, -1.187894258330351127e-06, -1.177056522371943565e-06, -1.166218170014559652e-06, -1.155379218984662866e-06, -1.144539687006121805e-06, -1.133699591803078865e-06, -1.122858951097978992e-06, -1.112017782612048672e-06, -1.101176104065716912e-06, -1.090333933176688237e-06, -1.079491287662302099e-06, -1.068648185239998961e-06, -1.057804643622949392e-06, -1.046960680524838109e-06, -1.036116313657926815e-06, -1.025271560731552832e-06, -1.014426439455024893e-06, -1.003580967535630500e-06, -9.927351626791134372e-07, -9.818890425901254509e-07, -9.710426249702566877e-07, -9.601959275204342786e-07, -9.493489679413552796e-07, -9.385017639291377922e-07, -9.276543331801069117e-07, -9.168066933888341636e-07, -9.059588622466670539e-07, -8.951108574441071147e-07, -8.842626966712628548e-07, -8.734143976134933633e-07, -8.625659779561836696e-07, -8.517174553827998501e-07, -8.408688475729289939e-07, -8.300201722075518767e-07, -8.191714469622636272e-07, -8.083226895125572005e-07, -7.974739175318514859e-07, -7.866251486895506482e-07, -7.757764006558216051e-07, -7.649276910972429256e-07, -7.540790376772391453e-07, -7.432304580584789288e-07, -7.323819699013911740e-07, -7.215335908622110126e-07, -7.106853385982580962e-07, -6.998372307611475212e-07, -6.889892850020809262e-07, -6.781415189693910490e-07, -6.672939503090048423e-07, -6.564465966644141447e-07, -6.455994756771253498e-07, -6.347526049847079478e-07, -6.239060022236523089e-07, -6.130596850279028342e-07, -6.022136710268936860e-07, -5.913679778503450060e-07, -5.805226231238936020e-07, -5.696776244695511924e-07, -5.588329995080796986e-07, -5.479887658570412690e-07, -5.371449411312443482e-07, -5.263015429432083798e-07, -5.154585889011937141e-07, -5.046160966120753791e-07, -4.937740836798662784e-07, -4.829325677037580041e-07, -4.720915662829149373e-07, -4.612510970121088521e-07, -4.504111774821704902e-07, -4.395718252823728995e-07, -4.287330579984707121e-07, -4.178948932131616710e-07, -4.070573485060519547e-07, -3.962204414541108755e-07, -3.853841896297175680e-07, -3.745486106035203080e-07, -3.637137219424863779e-07, -3.528795412103497235e-07, -3.420460859680652817e-07, -3.312133737718579451e-07, -3.203814221760809287e-07, -3.095502487312619287e-07, -2.987198709845562859e-07, -2.878903064797200386e-07, -2.770615727575617625e-07, -2.662336873539862419e-07, -2.554066678028620469e-07, -2.445805316340598576e-07, -2.337552963739111598e-07, -2.229309795456577804e-07, -2.121075986674999268e-07, -2.012851712554583643e-07, -1.904637148214153611e-07, -1.796432468735741770e-07, -1.688237849164261884e-07, -1.580053464512074651e-07, -1.471879489739412774e-07, -1.363716099778199790e-07, -1.255563469536617698e-07, -1.147421773855398469e-07, -1.039291187555780009e-07, -9.311718854199373109e-08, -8.230640421762297948e-08, -7.149678325278588091e-08, -6.068834311332953487e-08, -4.988110126108260403e-08, -3.907507515430868865e-08, -2.827028224575143411e-08, -1.746673998501533866e-08, -6.664465819020203153e-09, 4.136522812364038358e-09, 1.493620847152642913e-08, 2.573457372507046124e-08, 3.653160114576903096e-08, 4.732727330729323853e-08, 5.812157279098395506e-08, 6.891448218058147428e-08, 7.970598406466206575e-08, 9.049606103570143429e-08, 1.012846956925116934e-07, 1.120718706349718342e-07, 1.228575684707965511e-07, 1.336417718102674719e-07, 1.444244632681875010e-07, 1.552056254658344082e-07, 1.659852410261728030e-07, 1.767632925782169099e-07, 1.875397627565766385e-07, 1.983146341990757797e-07, 2.090878895482276163e-07, 2.198595114531839988e-07, 2.306294825644731536e-07, 2.413977855407611758e-07, 2.521644030435900493e-07, 2.629293177398052431e-07, 2.736925123011109129e-07, 2.844539694040902832e-07, 2.952136717297543370e-07, 3.059716019654961863e-07, 3.167277428022273589e-07, 3.274820769358555534e-07, 3.382345870692273625e-07, 3.489852559073564597e-07, 3.597340661617718430e-07, 3.704810005500644075e-07, 3.812260417935172651e-07, 3.919691726190489964e-07, 4.027103757587635591e-07, 4.134496339495001957e-07, 4.241869299347746740e-07, 4.349222464619361683e-07, 4.456555662836229384e-07, 4.563868721597218344e-07, 4.671161468525837781e-07, 4.778433731313852946e-07, 4.885685337716603150e-07, 4.992916115529397068e-07, 5.100125892606963266e-07, 5.207314496858853462e-07, 5.314481756249816271e-07, 5.421627498795198885e-07, 5.528751552580442586e-07, 5.635853745732577975e-07, 5.742933906439668614e-07, 5.849991862946296335e-07, 5.957027443549051854e-07, 6.064040476615959351e-07, 6.171030790557991812e-07, 6.277998213848546433e-07, 6.384942575018898173e-07, 6.491863702658454919e-07, 6.598761425410298918e-07, 6.705635571990576423e-07, 6.812485971160002440e-07, 6.919312451743380607e-07, 7.026114842624974157e-07, 7.132892972744121464e-07, 7.239646671114493338e-07, 7.346375766795779887e-07, 7.453080088913088633e-07, 7.559759466652392770e-07, 7.666413729260747153e-07, 7.773042706041925023e-07, 7.879646226375677417e-07, 7.986224119694185653e-07, 8.092776215477521234e-07, 8.199302343296892171e-07, 8.305802332767238787e-07, 8.412276013566469835e-07, 8.518723215450156401e-07, 8.625143768223157358e-07, 8.731537501758923251e-07, 8.837904245995041956e-07, 8.944243830928699651e-07, 9.050556086636101153e-07, 9.156840843248789006e-07, 9.263097930949252663e-07, 9.369327180013996945e-07, 9.475528420766265946e-07, 9.581701483595219869e-07, 9.687846198975442186e-07, 9.793962397414681946e-07, 9.900049909520804315e-07, 1.000610856594976476e-06, 1.011213819742960335e-06, 1.021813863475118673e-06, 1.032410970879236547e-06, 1.043005125046578625e-06, 1.053596309078578839e-06, 1.064184506081647231e-06, 1.074769699169078948e-06, 1.085351871462999881e-06, 1.095931006089629629e-06, 1.106507086183589512e-06, 1.117080094887449831e-06, 1.127650015349390997e-06, 1.138216830724648782e-06, 1.148780524177431580e-06, 1.159341078875741855e-06, 1.169898477998037423e-06, 1.180452704728038504e-06, 1.191003742256654721e-06, 1.201551573783908079e-06, 1.212096182514211178e-06, 1.222637551660683269e-06, 1.233175664444667445e-06, 1.243710504093414856e-06, 1.254242053841524661e-06, 1.264770296932860232e-06, 1.275295216615849176e-06, 1.285816796147755349e-06, 1.296335018794265924e-06, 1.306849867827101282e-06, 1.317361326525977792e-06, 1.327869378178137287e-06, 1.338374006077909997e-06, 1.348875193528621853e-06, 1.359372923839806053e-06, 1.369867180329095764e-06, 1.380357946321795302e-06, 1.390845205150886492e-06, 1.401328940156609598e-06, 1.411809134688359188e-06, 1.422285772101882157e-06, 1.432758835761183758e-06, 1.443228309038104512e-06, 1.453694175311857302e-06, 1.464156417970939550e-06, 1.474615020410332928e-06, 1.485069966033424005e-06, 1.495521238251537741e-06, 1.505968820483995512e-06, 1.516412696157636534e-06, 1.526852848708753758e-06, 1.537289261580277062e-06, 1.547721918223689874e-06, 1.558150802098583634e-06, 1.568575896672693578e-06, 1.578997185421436687e-06, 1.589414651829824282e-06, 1.599828279389667876e-06, 1.610238051601500882e-06, 1.620643951974114012e-06, 1.631045964024120330e-06, 1.641444071277837775e-06, 1.651838257268551985e-06, 1.662228505538356465e-06, 1.672614799637751737e-06, 1.682997123125659735e-06, 1.693375459568971068e-06, 1.703749792544460370e-06, 1.714120105635983475e-06, 1.724486382436398267e-06, 1.734848606547102630e-06, 1.745206761578064727e-06, 1.755560831147408590e-06, 1.765910798883260650e-06, 1.776256648420997307e-06, 1.786598363405152655e-06, 1.796935927488951772e-06, 1.807269324333887410e-06, 1.817598537611604226e-06, 1.827923551001585106e-06, 1.838244348190731462e-06, 1.848560912877565365e-06, 1.858873228767599235e-06, 1.869181279575231715e-06, 1.879485049025618343e-06, 1.889784520849597826e-06, 1.900079678790226684e-06, 1.910370506597683291e-06, 1.920656988031607803e-06, 1.930939106860224417e-06, 1.941216846862663307e-06, 1.951490191823894090e-06, 1.961759125541242474e-06, 1.972023631819314841e-06, 1.982283694471887977e-06, 1.992539297323756021e-06, 2.002790424206166237e-06, 2.013037058960982596e-06, 2.023279185440256337e-06, 2.033516787503933469e-06, 2.043749849021286681e-06, 2.053978353872747472e-06, 2.064202285944907391e-06, 2.074421629136962259e-06, 2.084636367355666396e-06, 2.094846484517232939e-06, 2.105051964549168938e-06, 2.115252791385695875e-06, 2.125448948971940779e-06, 2.135640421263496620e-06, 2.145827192224131929e-06, 2.156009245827197297e-06, 2.166186566057498589e-06, 2.176359136906266838e-06, 2.186526942377612638e-06, 2.196689966483491377e-06, 2.206848193246026226e-06, 2.217001606697098178e-06, 2.227150190878332068e-06, 2.237293929840693385e-06, 2.247432807646314057e-06, 2.257566808365817092e-06, 2.267695916080127959e-06, 2.277820114880049803e-06, 2.287939388866333323e-06, 2.298053722149168977e-06, 2.308163098850093229e-06, 2.318267503099269575e-06, 2.328366919037314744e-06, 2.338461330814875603e-06, 2.348550722592209459e-06, 2.358635078541042019e-06, 2.368714382841809878e-06, 2.378788619685559564e-06, 2.388857773273490990e-06, 2.398921827816985407e-06, 2.408980767537163670e-06, 2.419034576666766237e-06, 2.429083239447409196e-06, 2.439126740131453674e-06, 2.449165062981558178e-06, 2.459198192270706546e-06, 2.469226112281797559e-06, 2.479248807309447853e-06, 2.489266261657335622e-06, 2.499278459640009034e-06, 2.509285385582473303e-06, 2.519287023819752348e-06, 2.529283358698728972e-06, 2.539274374575448334e-06, 2.549260055816955164e-06, 2.559240386800881255e-06, 2.569215351915439537e-06, 2.579184935559012416e-06, 2.589149122142003815e-06, 2.599107896084101136e-06, 2.609061241816152713e-06, 2.619009143779724810e-06, 2.628951586427123645e-06, 2.638888554220968909e-06, 2.648820031636459158e-06, 2.658746003156497981e-06, 2.668666453277927740e-06, 2.678581366506666760e-06, 2.688490727359530439e-06, 2.698394520365595404e-06, 2.708292730063951057e-06, 2.718185341003304014e-06, 2.728072337746058259e-06, 2.737953704863803848e-06, 2.747829426939168101e-06, 2.757699488567609615e-06, 2.767563874352559265e-06, 2.777422568911654357e-06, 2.787275556871868199e-06, 2.797122822871338414e-06, 2.806964351560703985e-06, 2.816800127600907627e-06, 2.826630135662771425e-06, 2.836454360431035484e-06, 2.846272786599919903e-06, 2.856085398874945471e-06, 2.865892181974710742e-06, 2.875693120626500170e-06, 2.885488199570280407e-06, 2.895277403558294158e-06, 2.905060717352858734e-06, 2.914838125727718346e-06, 2.924609613469852094e-06, 2.934375165374610306e-06, 2.944134766251950391e-06, 2.953888400921575720e-06, 2.963636054214744041e-06, 2.973377710976050906e-06, 2.983113356059042888e-06, 2.992842974330181694e-06, 3.002566550668487141e-06, 3.012284069963297181e-06, 3.021995517115653639e-06, 3.031700877040068709e-06, 3.041400134659693896e-06, 3.051093274912519451e-06, 3.060780282746576778e-06, 3.070461143122125896e-06, 3.080135841011244203e-06, 3.089804361397878994e-06, 3.099466689277402344e-06, 3.109122809658400889e-06, 3.118772707560058919e-06, 3.128416368013933333e-06, 3.138053776063572051e-06, 3.147684916764497499e-06, 3.157309775183773352e-06, 3.166928336401879859e-06, 3.176540585509978360e-06, 3.186146507611773478e-06, 3.195746087823068856e-06, 3.205339311271353804e-06, 3.214926163097585455e-06, 3.224506628453551955e-06, 3.234080692503729152e-06, 3.243648340424738079e-06, 3.253209557405497839e-06, 3.262764328646719507e-06, 3.272312639362713691e-06, 3.281854474778800737e-06, 3.291389820133045446e-06, 3.300918660675871256e-06, 3.310440981670110212e-06, 3.319956768390504489e-06, 3.329466006125555468e-06, 3.338968680174889457e-06, 3.348464775851017408e-06, 3.357954278478972385e-06, 3.367437173395836918e-06, 3.376913445952537867e-06, 3.386383081511247301e-06, 3.395846065447156611e-06, 3.405302383148043672e-06, 3.414752020014324939e-06, 3.424194961458613716e-06, 3.433631192907481141e-06, 3.443060699798915933e-06, 3.452483467584029891e-06, 3.461899481726669109e-06, 3.471308727703000197e-06, 3.480711191003266182e-06, 3.490106857129640977e-06, 3.499495711595842278e-06, 3.508877739930989809e-06, 3.518252927675375234e-06, 3.527621260382162575e-06, 3.536982723618694764e-06, 3.546337302964431116e-06, 3.555684984010468329e-06, 3.565025752363441076e-06, 3.574359593641297424e-06, 3.583686493474992904e-06, 3.593006437510216334e-06, 3.602319411402747663e-06, 3.611625400824436323e-06, 3.620924391458534504e-06, 3.630216369001409008e-06, 3.639501319163871936e-06, 3.648779227669024144e-06, 3.658050080251946498e-06, 3.667313862663420889e-06, 3.676570560665795868e-06, 3.685820160034665886e-06, 3.695062646560617879e-06, 3.704298006044561573e-06, 3.713526224303698099e-06, 3.722747287166876143e-06, 3.731961180476751025e-06, 3.741167890088906753e-06, 3.750367401874063814e-06, 3.759559701713398045e-06, 3.768744775504491467e-06, 3.777922609156704938e-06, 3.787093188592929822e-06, 3.796256499751204126e-06, 3.805412528580625990e-06, 3.814561261045088677e-06, 3.823702683122901952e-06, 3.832836780804730402e-06, 3.841963540095274375e-06, 3.851082947012862554e-06, 3.860194987589115263e-06, 3.869299647870555524e-06, 3.878396913916161979e-06, 3.887486771799042626e-06, 3.896569207606092618e-06, 3.905644207437969701e-06, 3.914711757408676622e-06, 3.923771843647306871e-06, 3.932824452295524750e-06, 3.941869569509267069e-06, 3.950907181458341648e-06, 3.959937274326460354e-06, 3.968959834310837605e-06, 3.977974847623842934e-06, 3.986982300490591176e-06, 3.995982179150588259e-06, 4.004974469857322929e-06, 4.013959158877903375e-06, 4.022936232494708097e-06, 4.031905677002941367e-06, 4.040867478712326448e-06, 4.049821623946641422e-06, 4.058768099043826762e-06, 4.067706890355555885e-06, 4.076637984248879244e-06, 4.085561367103810287e-06, 4.094477025314975470e-06, 4.103384945291237336e-06, 4.112285113455675873e-06, 4.121177516245290362e-06, 4.130062140112528274e-06, 4.138938971522956768e-06, 4.147807996956862745e-06, 4.156669202908875915e-06, 4.165522575887633371e-06, 4.174368102417318648e-06, 4.183205769035338313e-06, 4.192035562293949963e-06, 4.200857468759821764e-06, 4.209671475014136641e-06, 4.218477567652112853e-06, 4.227275733284736179e-06, 4.236065958536278954e-06, 4.244848230045978048e-06, 4.253622534467667247e-06, 4.262388858469330871e-06, 4.271147188734793601e-06, 4.279897511961669817e-06, 4.288639814861081532e-06, 4.297374084161183744e-06, 4.306100306603213028e-06, 4.314818468943139253e-06, 4.323528557952877678e-06, 4.332230560418235754e-06, 4.340924463138643761e-06, 4.349610252930706419e-06, 4.358287916624225221e-06, 4.366957441063840831e-06, 4.375618813110624658e-06, 4.384272019637762375e-06, 4.392917047536077425e-06, 4.401553883709707758e-06, 4.410182515077755010e-06, 4.418802928575416986e-06, 4.427415111152090301e-06, 4.436019049770939244e-06, 4.444614731412557504e-06, 4.453202143070938828e-06, 4.461781271755129587e-06, 4.470352104490823736e-06, 4.478914628316038715e-06, 4.487468830286636405e-06, 4.496014697472043073e-06, 4.504552216957203476e-06, 4.513081375841839711e-06, 4.521602161242427335e-06, 4.530114560287875505e-06, 4.538618560125072498e-06, 4.547114147914555680e-06, 4.555601310832139505e-06, 4.564080036070451180e-06, 4.572550310835094460e-06, 4.581012122348154667e-06, 4.589465457847795501e-06, 4.597910304586398958e-06, 4.606346649832078976e-06, 4.614774480868366340e-06, 4.623193784993776697e-06, 4.631604549523439395e-06, 4.640006761786764759e-06, 4.648400409128603677e-06, 4.656785478910861200e-06, 4.665161958508619669e-06, 4.673529835313636962e-06, 4.681889096733970414e-06, 4.690239730192089625e-06, 4.698581723126450247e-06, 4.706915062991034893e-06, 4.715239737255498827e-06, 4.723555733404737977e-06, 4.731863038940405125e-06, 4.740161641378736416e-06, 4.748451528251958285e-06, 4.756732687108098567e-06, 4.765005105510449478e-06, 4.773268771039235421e-06, 4.781523671289265860e-06, 4.789769793871526048e-06, 4.798007126412799249e-06, 4.806235656555678595e-06, 4.814455371958196939e-06, 4.822666260295442138e-06, 4.830868309257137934e-06, 4.839061506549357497e-06, 4.847245839894021985e-06, 4.855421297028645586e-06, 4.863587865707784788e-06, 4.871745533700838641e-06, 4.879894288793562399e-06, 4.888034118787699909e-06, 4.896165011501014955e-06, 4.904286954766949899e-06, 4.912399936436069027e-06, 4.920503944374319591e-06, 4.928598966462548151e-06, 4.936684990600010685e-06, 4.944762004700545685e-06, 4.952829996694147953e-06, 4.960888954528109550e-06, 4.968938866164734501e-06, 4.976979719582899032e-06, 4.985011502777756800e-06, 4.993034203760227287e-06, 5.001047810558633960e-06, 5.009052311216835719e-06, 5.017047693793833870e-06, 5.025033946367146708e-06, 5.033011057029163884e-06, 5.040979013888546554e-06, 5.048937805071468277e-06, 5.056887418719361065e-06, 5.064827842990384986e-06, 5.072759066059116451e-06, 5.080681076116536357e-06, 5.088593861369744642e-06, 5.096497410043694152e-06, 5.104391710377286678e-06, 5.112276750628465305e-06, 5.120152519070235911e-06, 5.128019003992092712e-06, 5.135876193701195648e-06, 5.143724076520500125e-06, 5.151562640788483431e-06, 5.159391874862349904e-06, 5.167211767114504735e-06, 5.175022305933981221e-06, 5.182823479727840057e-06, 5.190615276917329744e-06, 5.198397685942898477e-06, 5.206170695260214786e-06, 5.213934293341692196e-06, 5.221688468677865653e-06, 5.229433209773893283e-06, 5.237168505152775112e-06, 5.244894343354986302e-06, 5.252610712936709395e-06, 5.260317602470970184e-06, 5.268015000549027692e-06, 5.275702895776844587e-06, 5.283381276778291508e-06, 5.291050132194907353e-06, 5.298709450683964660e-06, 5.306359220920053553e-06, 5.313999431594679404e-06, 5.321630071415901998e-06, 5.329251129109866968e-06, 5.336862593418570471e-06, 5.344464453101041655e-06, 5.352056696934700442e-06, 5.359639313711909266e-06, 5.367212292243090997e-06, 5.374775621356449418e-06, 5.382329289896202320e-06, 5.389873286723995195e-06, 5.397407600718593766e-06, 5.404932220775543478e-06, 5.412447135808548468e-06, 5.419952334747433605e-06, 5.427447806539536165e-06, 5.434933540149373790e-06, 5.442409524558683458e-06, 5.449875748766047091e-06, 5.457332201788350143e-06, 5.464778872658653012e-06, 5.472215750427639463e-06, 5.479642824163295602e-06, 5.487060082950859904e-06, 5.494467515892566557e-06, 5.501865112109018509e-06, 5.509252860737076657e-06, 5.516630750931383659e-06, 5.523998771863896375e-06, 5.531356912723635992e-06, 5.538705162718060213e-06, 5.546043511070997350e-06, 5.553371947024101520e-06, 5.560690459836413890e-06, 5.567999038784505816e-06, 5.575297673162053640e-06, 5.582586352281255773e-06, 5.589865065470806592e-06, 5.597133802077284729e-06, 5.604392551464798162e-06, 5.611641303014962192e-06, 5.618880046126746980e-06, 5.626108770217619344e-06, 5.633327464721674207e-06, 5.640536119090990694e-06, 5.647734722795217936e-06, 5.654923265321370932e-06, 5.662101736175134136e-06, 5.669270124879144518e-06, 5.676428420972824699e-06, 5.683576614015229833e-06, 5.690714693581840734e-06, 5.697842649265876780e-06, 5.704960470679278473e-06, 5.712068147450806694e-06, 5.719165669227290384e-06, 5.726253025673409704e-06, 5.733330206471603706e-06, 5.740397201321844180e-06, 5.747453999943256869e-06, 5.754500592070484313e-06, 5.761536967458406366e-06, 5.768563115878433574e-06, 5.775579027119863278e-06, 5.782584690990943490e-06, 5.789580097317161032e-06, 5.796565235940961176e-06, 5.803540096724719031e-06, 5.810504669547467457e-06, 5.817458944306238762e-06, 5.824402910917368290e-06, 5.831336559312917398e-06, 5.838259879445283010e-06, 5.845172861283574856e-06, 5.852075494814943623e-06, 5.858967770045972625e-06, 5.865849676999328640e-06, 5.872721205716774802e-06, 5.879582346258852121e-06, 5.886433088703219294e-06, 5.893273423145721661e-06, 5.900103339701621101e-06, 5.906922828502427278e-06, 5.913731879698791106e-06, 5.920530483460237935e-06, 5.927318629973470942e-06, 5.934096309443836500e-06, 5.940863512094838827e-06, 5.947620228167974816e-06, 5.954366447923908020e-06, 5.961102161640676332e-06, 5.967827359614572900e-06, 5.974542032161504766e-06, 5.981246169613796165e-06, 5.987939762323031168e-06, 5.994622800659775006e-06, 6.001295275012041788e-06, 6.007957175786487974e-06, 6.014608493408236187e-06, 6.021249218320397489e-06, 6.027879340985496090e-06, 6.034498851883564372e-06, 6.041107741513373626e-06, 6.047706000392099476e-06, 6.054293619055464178e-06, 6.060870588057334281e-06, 6.067436897970973389e-06, 6.073992539387239675e-06, 6.080537502915856428e-06, 6.087071779185057997e-06, 6.093595358841597411e-06, 6.100108232550554104e-06, 6.106610390996407106e-06, 6.113101824881368929e-06, 6.119582524926529060e-06, 6.126052481871618489e-06, 6.132511686474681904e-06, 6.138960129513293184e-06, 6.145397801782774939e-06, 6.151824694097430090e-06, 6.158240797290201368e-06, 6.164646102212782270e-06, 6.171040599735194393e-06, 6.177424280747160474e-06, 6.183797136156158754e-06, 6.190159156888735879e-06, 6.196510333890183334e-06, 6.202850658124568786e-06, 6.209180120574410817e-06, 6.215498712241958796e-06, 6.221806424147320090e-06, 6.228103247329769571e-06, 6.234389172847352362e-06, 6.240664191776695796e-06, 6.246928295214141050e-06, 6.253181474274330296e-06, 6.259423720089869578e-06, 6.265655023814013065e-06, 6.271875376617786522e-06, 6.278084769691101164e-06, 6.284283194243654044e-06, 6.290470641503209431e-06, 6.296647102716788041e-06, 6.302812569150376503e-06, 6.308967032088596172e-06, 6.315110482835992311e-06, 6.321242912715474706e-06, 6.327364313068109293e-06, 6.333474675255716010e-06, 6.339573990657993117e-06, 6.345662250673700508e-06, 6.351739446721444901e-06, 6.357805570238438097e-06, 6.363860612680045504e-06, 6.369904565522399238e-06, 6.375937420259675759e-06, 6.381959168405119930e-06, 6.387969801492244421e-06, 6.393969311071705847e-06, 6.399957688715293450e-06, 6.405934926012857753e-06, 6.411901014573386296e-06, 6.417855946026154752e-06, 6.423799712018003716e-06, 6.429732304215769689e-06, 6.435653714306097040e-06, 6.441563933993991269e-06, 6.447462955003725334e-06, 6.453350769079929784e-06, 6.459227367984554451e-06, 6.465092743500721603e-06, 6.470946887429765560e-06, 6.476789791592579485e-06, 6.482621447829401074e-06, 6.488441847999710922e-06, 6.494250983982112237e-06, 6.500048847675332037e-06, 6.505835430996622798e-06, 6.511610725882606097e-06, 6.517374724290357663e-06, 6.523127418194734142e-06, 6.528868799590738857e-06, 6.534598860493377815e-06, 6.540317592936222291e-06, 6.546024988972566721e-06, 6.551721040675116996e-06, 6.557405740135743129e-06, 6.563079079466632063e-06, 6.568741050798547021e-06, 6.574391646281835475e-06, 6.580030858087314295e-06, 6.585658678403710018e-06, 6.591275099440110154e-06, 6.596880113425591348e-06, 6.602473712607984400e-06, 6.608055889254934752e-06, 6.613626635653617036e-06, 6.619185944110801146e-06, 6.624733806952511729e-06, 6.630270216525208100e-06, 6.635795165194072393e-06, 6.641308645344207261e-06, 6.646810649380302995e-06, 6.652301169726424915e-06, 6.657780198827030663e-06, 6.663247729145439607e-06, 6.668703753164929756e-06, 6.674148263388356589e-06, 6.679581252338282655e-06, 6.685002712556720918e-06, 6.690412636606091063e-06, 6.695811017067817651e-06, 6.701197846543181391e-06, 6.706573117653304737e-06, 6.711936823038690259e-06, 6.717288955360378532e-06, 6.722629507298395530e-06, 6.727958471552769063e-06, 6.733275840843286523e-06, 6.738581607909552488e-06, 6.743875765510647362e-06, 6.749158306426228523e-06, 6.754429223455287720e-06, 6.759688509415805489e-06, 6.764936157147173664e-06, 6.770172159507497577e-06, 6.775396509374858987e-06, 6.780609199647893754e-06, 6.785810223244264637e-06, 6.790999573101870861e-06, 6.796177242178428834e-06, 6.801343223451273941e-06, 6.806497509918464227e-06, 6.811640094597365854e-06, 6.816770970524603125e-06, 6.821890130758162513e-06, 6.826997568374978620e-06, 6.832093276471926048e-06, 6.837177248166829914e-06, 6.842249476595737555e-06, 6.847309954916389666e-06, 6.852358676305526741e-06, 6.857395633960094398e-06, 6.862420821096818165e-06, 6.867434230953397803e-06, 6.872435856785839149e-06, 6.877425691871816836e-06, 6.882403729508118794e-06, 6.887369963011609330e-06, 6.892324385720054983e-06, 6.897266990989925626e-06, 6.902197772198418027e-06, 6.907116722743281363e-06, 6.912023836041679654e-06, 6.916919105530805012e-06, 6.921802524668885612e-06, 6.926674086932686948e-06, 6.931533785820645849e-06, 6.936381614850396299e-06, 6.941217567559981543e-06, 6.946041637507511882e-06, 6.950853818271305282e-06, 6.955654103449535008e-06, 6.960442486661302816e-06, 6.965218961545138010e-06, 6.969983521759771628e-06, 6.974736160984997877e-06, 6.979476872919449826e-06, 6.984205651282676325e-06, 6.988922489814834538e-06, 6.993627382275644701e-06, 6.998320322445305766e-06, 7.003001304124187080e-06, 7.007670321132724202e-06, 7.012327367312225275e-06, 7.016972436523621655e-06, 7.021605522648076081e-06, 7.026226619587939818e-06, 7.030835721264466523e-06, 7.035432821619910337e-06, 7.040017914617209100e-06, 7.044590994238974687e-06, 7.049152054488319709e-06, 7.053701089388691500e-06, 7.058238092983822983e-06, 7.062763059337614939e-06, 7.067275982534910188e-06, 7.071776856680238292e-06, 7.076265675898721031e-06, 7.080742434335840315e-06, 7.085207126157184074e-06, 7.089659745549397480e-06, 7.094100286718841242e-06, 7.098528743892485228e-06, 7.102945111317704330e-06, 7.107349383262216629e-06, 7.111741554014000389e-06, 7.116121617882039443e-06, 7.120489569195100078e-06, 7.124845402302605175e-06, 7.129189111574437693e-06, 7.133520691400636592e-06, 7.137840136192372604e-06, 7.142147440380633648e-06, 7.146442598417044753e-06, 7.150725604773729144e-06, 7.154996453943287068e-06, 7.159255140438540838e-06, 7.163501658793490282e-06, 7.167736003562161631e-06, 7.171958169318490624e-06, 7.176168150658101278e-06, 7.180365942196376348e-06, 7.184551538569190010e-06, 7.188724934433507562e-06, 7.192886124466295289e-06, 7.197035103365188773e-06, 7.201171865848422595e-06, 7.205296406654493205e-06, 7.209408720543177066e-06, 7.213508802294282123e-06, 7.217596646707666434e-06, 7.221672248604942409e-06, 7.225735602827489664e-06, 7.229786704237270714e-06, 7.233825547717659376e-06, 7.237852128171209678e-06, 7.241866440522449378e-06, 7.245868479715770852e-06, 7.249858240716337416e-06, 7.253835718509761455e-06, 7.257800908103065809e-06, 7.261753804522502657e-06, 7.265694402816360587e-06, 7.269622698052745373e-06, 7.273538685320491375e-06, 7.277442359729735835e-06, 7.281333716410273087e-06, 7.285212750513013996e-06, 7.289079457209952080e-06, 7.292933831693234307e-06, 7.296775869175610880e-06, 7.300605564891324611e-06, 7.304422914093962006e-06, 7.308227912059142591e-06, 7.312020554082447073e-06, 7.315800835480133077e-06, 7.319568751589906797e-06, 7.323324297769106112e-06, 7.327067469396328577e-06, 7.330798261871302681e-06, 7.334516670613849381e-06, 7.338222691064650361e-06, 7.341916318685761334e-06, 7.345597548958910354e-06, 7.349266377387142752e-06, 7.352922799494604299e-06, 7.356566810825695862e-06, 7.360198406945719696e-06, 7.363817583440757465e-06, 7.367424335917509311e-06, 7.371018660003960468e-06, 7.374600551348365666e-06, 7.378170005619956407e-06, 7.381727018508723277e-06, 7.385271585725469308e-06, 7.388803703001633795e-06, 7.392323366089988559e-06, 7.395830570763600330e-06, 7.399325312816481268e-06, 7.402807588063519508e-06, 7.406277392340223356e-06, 7.409734721503435333e-06, 7.413179571430336073e-06, 7.416611938019144810e-06, 7.420031817188846642e-06, 7.423439204879327200e-06, 7.426834097051160053e-06, 7.430216489686211480e-06, 7.433586378786789209e-06, 7.436943760376161643e-06, 7.440288630498469772e-06, 7.443620985218784771e-06, 7.446940820622796289e-06, 7.450248132817653556e-06, 7.453542917930829511e-06, 7.456825172110873812e-06, 7.460094891527212094e-06, 7.463352072369975709e-06, 7.466596710850768297e-06, 7.469828803201533297e-06, 7.473048345675268003e-06, 7.476255334545911749e-06, 7.479449766108309488e-06, 7.482631636678044932e-06, 7.485800942592103770e-06, 7.488957680207947020e-06, 7.492101845904065836e-06, 7.495233436079906116e-06, 7.498352447155844794e-06, 7.501458875573024659e-06, 7.504552717794006579e-06, 7.507633970301841993e-06, 7.510702629600618406e-06, 7.513758692215445831e-06, 7.516802154692191673e-06, 7.519833013598138869e-06, 7.522851265521220173e-06, 7.525856907069895335e-06, 7.528849934874441981e-06, 7.531830345585531748e-06, 7.534798135874857089e-06, 7.537753302435599686e-06, 7.540695841980895618e-06, 7.543625751245903827e-06, 7.546543026986175567e-06, 7.549447665978253267e-06, 7.552339665020060160e-06, 7.555219020930262468e-06, 7.558085730548069505e-06, 7.560939790734530480e-06, 7.563781198371150451e-06, 7.566609950360407855e-06, 7.569426043626336426e-06, 7.572229475113169093e-06, 7.575020241786508577e-06, 7.577798340633312996e-06, 7.580563768661077627e-06, 7.583316522898350751e-06, 7.586056600395213077e-06, 7.588783998221806437e-06, 7.591498713470276888e-06, 7.594200743253206851e-06, 7.596890084704235138e-06, 7.599566734978588043e-06, 7.602230691251645316e-06, 7.604881950720253907e-06, 7.607520510602597530e-06, 7.610146368137428398e-06, 7.612759520584573749e-06, 7.615359965225399179e-06, 7.617947699361454227e-06, 7.620522720316180850e-06, 7.623085025433545459e-06, 7.625634612078763132e-06, 7.628171477637969815e-06, 7.630695619518475584e-06, 7.633207035148415666e-06, 7.635705721977479736e-06, 7.638191677475888701e-06, 7.640664899135147712e-06, 7.643125384467749700e-06, 7.645573131007314294e-06, 7.648008136308335404e-06, 7.650430397946806328e-06, 7.652839913519321900e-06, 7.655236680643764586e-06, 7.657620696959018187e-06, 7.659991960124920405e-06, 7.662350467822750735e-06, 7.664696217754500321e-06, 7.667029207643325965e-06, 7.669349435233485755e-06, 7.671656898290310264e-06, 7.673951594600058557e-06, 7.676233521970455206e-06, 7.678502678229912716e-06, 7.680759061228048214e-06, 7.683002668835590279e-06, 7.685233498944262046e-06, 7.687451549466867607e-06, 7.689656818337527484e-06, 7.691849303511209376e-06, 7.694029002963970407e-06, 7.696195914692985926e-06, 7.698350036716444477e-06, 7.700491367073923878e-06, 7.702619903825716987e-06, 7.704735645053414455e-06, 7.706838588859572697e-06, 7.708928733367907007e-06, 7.711006076723103523e-06, 7.713070617091254599e-06, 7.715122352659194732e-06, 7.717161281634988453e-06, 7.719187402247786330e-06, 7.721200712747799559e-06, 7.723201211406233895e-06, 7.725188896515867328e-06, 7.727163766389708382e-06, 7.729125819362717289e-06, 7.731075053790445649e-06, 7.733011468049541266e-06, 7.734935060538137782e-06, 7.736845829675121147e-06, 7.738743773900263448e-06, 7.740628891674995404e-06, 7.742501181481442445e-06, 7.744360641822804178e-06, 7.746207271223813485e-06, 7.748041068229548977e-06, 7.749862031406930856e-06, 7.751670159343507967e-06, 7.753465450647960931e-06, 7.755247903950335928e-06, 7.757017517901585607e-06, 7.758774291173428474e-06, 7.760518222459329761e-06, 7.762249310473369788e-06, 7.763967553950787756e-06, 7.765672951648205368e-06, 7.767365502342857720e-06, 7.769045204833274315e-06, 7.770712057939307865e-06, 7.772366060501571859e-06, 7.774007211381838670e-06, 7.775635509463236063e-06, 7.777250953649410332e-06, 7.778853542865666403e-06, 7.780443276058095388e-06, 7.782020152193786349e-06, 7.783584170261324348e-06, 7.785135329269855326e-06, 7.786673628249834878e-06, 7.788199066252974044e-06, 7.789711642351778524e-06, 7.791211355639858689e-06, 7.792698205232249763e-06, 7.794172190264424179e-06, 7.795633309893553663e-06, 7.797081563297540222e-06, 7.798516949675410868e-06, 7.799939468247261707e-06, 7.801349118254335873e-06, 7.802745898958750778e-06, 7.804129809643960594e-06, 7.805500849614288692e-06, 7.806859018195163113e-06, 7.808204314733060671e-06, 7.809536738595549297e-06, 7.810856289171149130e-06, 7.812162965869678106e-06, 7.813456768121770842e-06, 7.814737695379183569e-06, 7.816005747114753474e-06, 7.817260922822253009e-06, 7.818503222016772754e-06, 7.819732644234182698e-06, 7.820949189031455812e-06, 7.822152855986669738e-06, 7.823343644698896676e-06, 7.824521554788171199e-06, 7.825686585895810430e-06, 7.826838737683919372e-06, 7.827978009835724645e-06, 7.829104402055483001e-06, 7.830217914068452527e-06, 7.831318545620884176e-06, 7.832406296480209804e-06, 7.833481166434782983e-06, 7.834543155293899328e-06, 7.835592262887981148e-06, 7.836628489068367384e-06, 7.837651833707569415e-06, 7.838662296698957650e-06, 7.839659877956971597e-06, 7.840644577417014830e-06, 7.841616395035573572e-06, 7.842575330789984609e-06, 7.843521384678830009e-06, 7.844454556721476332e-06, 7.845374846958328745e-06, 7.846282255450803911e-06, 7.847176782281255458e-06, 7.848058427553177257e-06, 7.848927191390962874e-06, 7.849783073939758181e-06, 7.850626075366069526e-06, 7.851456195857113213e-06, 7.852273435621145845e-06, 7.853077794887471100e-06, 7.853869273906321144e-06, 7.854647872948683840e-06, 7.855413592306853318e-06, 7.856166432293840439e-06, 7.856906393243642153e-06, 7.857633475511380410e-06, 7.858347679472790556e-06, 7.859049005524858299e-06, 7.859737454085435155e-06, 7.860413025593114786e-06, 7.861075720507773400e-06, 7.861725539309992081e-06, 7.862362482501141490e-06, 7.862986550603871447e-06, 7.863597744161492602e-06, 7.864196063738274588e-06, 7.864781509919610344e-06, 7.865354083311385926e-06, 7.865913784540825844e-06, 7.866460614255806963e-06, 7.866994573125160053e-06, 7.867515661838591853e-06, 7.868023881106837546e-06, 7.868519231661260955e-06, 7.869001714254413583e-06, 7.869471329659504373e-06, 7.869928078670675842e-06, 7.870371962103075230e-06, 7.870802980792497049e-06, 7.871221135595664304e-06, 7.871626427390347074e-06, 7.872018857074998289e-06, 7.872398425568948545e-06, 7.872765133812363757e-06, 7.873118982766284118e-06, 7.873459973412668149e-06, 7.873788106754160606e-06, 7.874103383814349985e-06, 7.874405805637653321e-06, 7.874695373289251814e-06, 7.874972087855117937e-06, 7.875235950442164507e-06, 7.875486962178063430e-06, 7.875725124211247386e-06, 7.875950437710986065e-06, 7.876162903867392948e-06, 7.876362523891252502e-06, 7.876549299014316653e-06, 7.876723230488967659e-06, 7.876884319588480692e-06, 7.877032567606773118e-06, 7.877167975858641666e-06, 7.877290545679686192e-06, 7.877400278426165687e-06, 7.877497175475128719e-06, 7.877581238224415125e-06, 7.877652468092562841e-06, 7.877710866518841781e-06, 7.877756434963392750e-06, 7.877789174906905573e-06, 7.877809087850915556e-06, 7.877816175317659488e-06, 7.877810438850067176e-06, 7.877791880011822428e-06, 7.877760500387291900e-06, 7.877716301581536959e-06, 7.877659285220303516e-06, 7.877589452950127058e-06, 7.877506806438092093e-06, 7.877411347372099810e-06, 7.877303077460639380e-06, 7.877181998432862496e-06, 7.877048112038690099e-06, 7.876901420048578598e-06, 7.876741924253712990e-06, 7.876569626465959430e-06, 7.876384528517760196e-06, 7.876186632262213315e-06, 7.875975939573087801e-06, 7.875752452344730490e-06, 7.875516172492132104e-06, 7.875267101950940803e-06, 7.875005242677360546e-06, 7.874730596648223929e-06, 7.874443165860982026e-06, 7.874142952333650176e-06, 7.873829958104833394e-06, 7.873504185233753480e-06, 7.873165635800149064e-06, 7.872814311904439931e-06, 7.872450215667481385e-06, 7.872073349230776005e-06, 7.871683714756336426e-06, 7.871281314426753099e-06, 7.870866150445138393e-06, 7.870438225035145222e-06, 7.869997540440929783e-06, 7.869544098927256582e-06, 7.869077902779308704e-06, 7.868598954302847049e-06, 7.868107255824071425e-06, 7.867602809689757762e-06, 7.867085618267105650e-06, 7.866555683943836594e-06, 7.866013009128175376e-06, 7.865457596248750109e-06, 7.864889447754732843e-06, 7.864308566115688794e-06, 7.863714953821684763e-06, 7.863108613383185797e-06, 7.862489547331163612e-06, 7.861857758216971232e-06, 7.861213248612409054e-06, 7.860556021109689275e-06, 7.859886078321446059e-06, 7.859203422880710121e-06, 7.858508057440939223e-06, 7.857799984675936859e-06, 7.857079207279928486e-06, 7.856345727967532728e-06, 7.855599549473720716e-06, 7.854840674553816089e-06, 7.854069105983511932e-06, 7.853284846558860618e-06, 7.852487899096268718e-06, 7.851678266432415691e-06, 7.850855951424448700e-06, 7.850020956949696317e-06, 7.849173285905883664e-06, 7.848312941211012139e-06, 7.847439925803383133e-06, 7.846554242641640378e-06, 7.845655894704658143e-06, 7.844744884991614075e-06, 7.843821216521967179e-06, 7.842884892335437488e-06, 7.841935915491975569e-06, 7.840974289071833675e-06, 7.840000016175477655e-06, 7.839013099923592033e-06, 7.838013543457095255e-06, 7.837001349937204066e-06, 7.835976522545214974e-06, 7.834939064482763442e-06, 7.833888978971569777e-06, 7.832826269253618704e-06, 7.831750938591045861e-06, 7.830662990266124248e-06, 7.829562427581425162e-06, 7.828449253859535287e-06, 7.827323472443251516e-06, 7.826185086695494549e-06, 7.825034099999383434e-06, 7.823870515758074630e-06, 7.822694337394909392e-06, 7.821505568353312126e-06, 7.820304212096800553e-06, 7.819090272108985710e-06, 7.817863751893673594e-06, 7.816624654974558534e-06, 7.815372984895546760e-06, 7.814108745220590385e-06, 7.812831939533578982e-06, 7.811542571438651294e-06, 7.810240644559781882e-06, 7.808926162541135184e-06, 7.807599129046821569e-06, 7.806259547760904116e-06, 7.804907422387512113e-06, 7.803542756650908821e-06, 7.802165554295040854e-06, 7.800775819084085360e-06, 7.799373554802153561e-06, 7.797958765253172166e-06, 7.796531454261147650e-06, 7.795091625670001924e-06, 7.793639283343623160e-06, 7.792174431165745514e-06, 7.790697073040165962e-06, 7.789207212890347892e-06, 7.787704854659978452e-06, 7.786190002312311248e-06, 7.784662659830699979e-06, 7.783122831218342635e-06, 7.781570520498139187e-06, 7.780005731713010082e-06, 7.778428468925848799e-06, 7.776838736219017026e-06, 7.775236537695003647e-06, 7.773621877476046964e-06, 7.771994759704021200e-06, 7.770355188540970125e-06, 7.768703168168324398e-06, 7.767038702787601220e-06, 7.765361796619975730e-06, 7.763672453906306421e-06, 7.761970678907287601e-06, 7.760256475903481584e-06, 7.758529849194966324e-06, 7.756790803101648815e-06, 7.755039341963232907e-06, 7.753275470138890651e-06, 7.751499192007782387e-06, 7.749710511968677264e-06, 7.747909434439829578e-06, 7.746095963859365017e-06, 7.744270104684987591e-06, 7.742431861394116847e-06, 7.740581238483831966e-06, 7.738718240470636290e-06, 7.736842871890889308e-06, 7.734955137300515273e-06, 7.733055041274820249e-06, 7.731142588409079948e-06, 7.729217783317928172e-06, 7.727280630635510974e-06, 7.725331135015684866e-06, 7.723369301131771173e-06, 7.721395133676679708e-06, 7.719408637362885049e-06, 7.717409816922202924e-06, 7.715398677106167989e-06, 7.713375222685739060e-06, 7.711339458451371955e-06, 7.709291389212989006e-06, 7.707231019800068840e-06, 7.705158355061349920e-06, 7.703073399865204932e-06, 7.700976159099408698e-06, 7.698866637671117851e-06, 7.696744840506999577e-06, 7.694610772553116425e-06, 7.692464438774724710e-06, 7.690305844156745463e-06, 7.688134993703325671e-06, 7.685951892438041560e-06, 7.683756545403863024e-06, 7.681548957662921536e-06, 7.679329134296899783e-06, 7.677097080406674221e-06, 7.674852801112520050e-06, 7.672596301553945205e-06, 7.670327586889900411e-06, 7.668046662298277748e-06, 7.665753532976632314e-06, 7.663448204141558819e-06, 7.661130681028959237e-06, 7.658800968893998768e-06, 7.656459073011109224e-06, 7.654104998673702729e-06, 7.651738751194666390e-06, 7.649360335905981131e-06, 7.646969758158838582e-06, 7.644567023323646163e-06, 7.642152136789771280e-06, 7.639725103965827621e-06, 7.637285930279924184e-06, 7.634834621178701356e-06, 7.632371182128284666e-06, 7.629895618613944286e-06, 7.627407936139737576e-06, 7.624908140229094386e-06, 7.622396236424402014e-06, 7.619872230287157664e-06, 7.617336127397932030e-06, 7.614787933356146525e-06, 7.612227653780310449e-06, 7.609655294308375047e-06, 7.607070860596643383e-06, 7.604474358320790163e-06, 7.601865793175498360e-06, 7.599245170874110234e-06, 7.596612497149137249e-06, 7.593967777752305813e-06, 7.591311018453751745e-06, 7.588642225042845290e-06, 7.585961403327919219e-06, 7.583268559135794492e-06, 7.580563698312852599e-06, 7.577846826723709110e-06, 7.575117950252167433e-06, 7.572377074800968935e-06, 7.569624206291224591e-06, 7.566859350663516119e-06, 7.564082513876941380e-06, 7.561293701909131313e-06, 7.558492920756915708e-06, 7.555680176435824300e-06, 7.552855474979787769e-06, 7.550018822442201611e-06, 7.547170224894492112e-06, 7.544309688427195471e-06, 7.541437219149515643e-06, 7.538552823189327731e-06, 7.535656506693177988e-06, 7.532748275826475239e-06, 7.529828136772909825e-06, 7.526896095735238796e-06, 7.523952158934730262e-06, 7.520996332610949939e-06, 7.518028623022746245e-06, 7.515049036447172881e-06, 7.512057579179726840e-06, 7.509054257534754988e-06, 7.506039077845169460e-06, 7.503012046462337542e-06, 7.499973169756319694e-06, 7.496922454115391816e-06, 7.493859905946649187e-06, 7.490785531675618524e-06, 7.487699337746280851e-06, 7.484601330621142647e-06, 7.481491516781286673e-06, 7.478369902725851045e-06, 7.475236494972868639e-06, 7.472091300058587779e-06, 7.468934324537685683e-06, 7.465765574983332838e-06, 7.462585057987106606e-06, 7.459392780158685442e-06, 7.456188748126382526e-06, 7.452972968536842527e-06, 7.449745448054992469e-06, 7.446506193364214533e-06, 7.443255211165819199e-06, 7.439992508179833834e-06, 7.436718091144435178e-06, 7.433431966816055228e-06, 7.430134141969388010e-06, 7.426824623397496305e-06, 7.423503417911350867e-06, 7.420170532340441131e-06, 7.416825973532369484e-06, 7.413469748352987636e-06, 7.410101863686271264e-06, 7.406722326434470780e-06, 7.403331143517652238e-06, 7.399928321874411388e-06, 7.396513868461309547e-06, 7.393087790253010818e-06, 7.389650094242457433e-06, 7.386200787440273433e-06, 7.382739876875394865e-06, 7.379267369595211237e-06, 7.375783272664369504e-06, 7.372287593166113231e-06, 7.368780338201660870e-06, 7.365261514889833909e-06, 7.361731130367881888e-06, 7.358189191790867448e-06, 7.354635706331820492e-06, 7.351070681181869477e-06, 7.347494123549645951e-06, 7.343906040661977420e-06, 7.340306439764025421e-06, 7.336695328118038685e-06, 7.333072713004639781e-06, 7.329438601722361793e-06, 7.325793001587145176e-06, 7.322135919933054349e-06, 7.318467364112433552e-06, 7.314787341494515164e-06, 7.311095859466943523e-06, 7.307392925435148961e-06, 7.303678546821728630e-06, 7.299952731068069411e-06, 7.296215485632224408e-06, 7.292466817990607857e-06, 7.288706735637327665e-06, 7.284935246083559453e-06, 7.281152356859113566e-06, 7.277358075511006132e-06, 7.273552409603549689e-06, 7.269735366719168035e-06, 7.265906954457953226e-06, 7.262067180436954074e-06, 7.258216052291843950e-06, 7.254353577674892987e-06, 7.250479764256491048e-06, 7.246594619724432830e-06, 7.242698151784043223e-06, 7.238790368158187474e-06, 7.234871276587352507e-06, 7.230940884829082791e-06, 7.226999200658841779e-06, 7.223046231869591780e-06, 7.219081986271076516e-06, 7.215106471691411855e-06, 7.211119695975672959e-06, 7.207121666986044210e-06, 7.203112392602530712e-06, 7.199091880722321331e-06, 7.195060139260048726e-06, 7.191017176147797826e-06, 7.186962999334490878e-06, 7.182897616786851374e-06, 7.178821036488934796e-06, 7.174733266441339178e-06, 7.170634314662972866e-06, 7.166524189189527315e-06, 7.162402898073539774e-06, 7.158270449385308924e-06, 7.154126851212130856e-06, 7.149972111658526077e-06, 7.145806238846175134e-06, 7.141629240914081245e-06, 7.137441126017875731e-06, 7.133241902330873422e-06, 7.129031578043265429e-06, 7.124810161362410531e-06, 7.120577660512847872e-06, 7.116334083735729455e-06, 7.112079439289726467e-06, 7.107813735450402472e-06, 7.103536980510327759e-06, 7.099249182779101372e-06, 7.094950350583460368e-06, 7.090640492266590341e-06, 7.086319616189131689e-06, 7.081987730728589240e-06, 7.077644844279277187e-06, 7.073290965252671461e-06, 7.068926102076565232e-06, 7.064550263196224269e-06, 7.060163457073522114e-06, 7.055765692187239088e-06, 7.051356977032954715e-06, 7.046937320123252706e-06, 7.042506729986934913e-06, 7.038065215170055553e-06, 7.033612784235894106e-06, 7.029149445763376445e-06, 7.024675208348947626e-06, 7.020190080605750263e-06, 7.015694071163060409e-06, 7.011187188667426811e-06, 7.006669441781861151e-06, 7.002140839186036247e-06, 6.997601389576459696e-06, 6.993051101665674278e-06, 6.988489984183244746e-06, 6.983918045875839989e-06, 6.979335295505606730e-06, 6.974741741851983869e-06, 6.970137393710974035e-06, 6.965522259894349069e-06, 6.960896349231676130e-06, 6.956259670567724073e-06, 6.951612232764479395e-06, 6.946954044700194165e-06, 6.942285115269758722e-06, 6.937605453383744524e-06, 6.932915067970437876e-06, 6.928213967973209048e-06, 6.923502162352540068e-06, 6.918779660085308132e-06, 6.914046470163933495e-06, 6.909302601598306462e-06, 6.904548063414090788e-06, 6.899782864652844801e-06, 6.895007014372980244e-06, 6.890220521649132081e-06, 6.885423395571450378e-06, 6.880615645247672147e-06, 6.875797279800337996e-06, 6.870968308368967307e-06, 6.866128740109321317e-06, 6.861278584192451059e-06, 6.856417849806792914e-06, 6.851546546156272956e-06, 6.846664682460530565e-06, 6.841772267955926402e-06, 6.836869311894862235e-06, 6.831955823545002520e-06, 6.827031812191286949e-06, 6.822097287134020393e-06, 6.817152257689134633e-06, 6.812196733189157367e-06, 6.807230722982420233e-06, 6.802254236433138431e-06, 6.797267282921674151e-06, 6.792269871843797958e-06, 6.787262012611673046e-06, 6.782243714653420712e-06, 6.777214987412157273e-06, 6.772175840348113350e-06, 6.767126282936762767e-06, 6.762066324668915729e-06, 6.756995975051852994e-06, 6.751915243608410235e-06, 6.746824139877182171e-06, 6.741722673412737717e-06, 6.736610853784719586e-06, 6.731488690579111450e-06, 6.726356193397418860e-06, 6.721213371856748021e-06, 6.716060235589959102e-06, 6.710896794245694192e-06, 6.705723057487610729e-06, 6.700539034995581755e-06, 6.695344736464891226e-06, 6.690140171606361918e-06, 6.684925350146377450e-06, 6.679700281827110135e-06, 6.674464976405518939e-06, 6.669219443654788593e-06, 6.663963693363348726e-06, 6.658697735335033954e-06, 6.653421579389415921e-06, 6.648135235360809723e-06, 6.642838713099578346e-06, 6.637532022471299178e-06, 6.632215173356887683e-06, 6.626888175652644829e-06, 6.621551039270367206e-06, 6.616203774136596554e-06, 6.610846390193768337e-06, 6.605478897399396054e-06, 6.600101305726283844e-06, 6.594713625162466342e-06, 6.589315865711446703e-06, 6.583908037391219966e-06, 6.578490150235707083e-06, 6.573062214293706294e-06, 6.567624239629265820e-06, 6.562176236321694027e-06, 6.556718214464835215e-06, 6.551250184168020832e-06, 6.545772155556398974e-06, 6.540284138768782072e-06, 6.534786143959905928e-06, 6.529278181299619109e-06, 6.523760260971788575e-06, 6.518232393176944118e-06, 6.512694588128944441e-06, 6.507146856057495387e-06, 6.501589207207053030e-06, 6.496021651837195524e-06, 6.490444200221481300e-06, 6.484856862649972380e-06, 6.479259649425991089e-06, 6.473652570868578985e-06, 6.468035637311664234e-06, 6.462408859102963849e-06, 6.456772246606479052e-06, 6.451125810200214215e-06, 6.445469560276460612e-06, 6.439803507242950930e-06, 6.434127661522174863e-06, 6.428442033550288136e-06, 6.422746633779867052e-06, 6.417041472676386533e-06, 6.411326560720962813e-06, 6.405601908409344618e-06, 6.399867526250870471e-06, 6.394123424770966593e-06, 6.388369614508855677e-06, 6.382606106017816080e-06, 6.376832909866376987e-06, 6.371050036637584035e-06, 6.365257496928010824e-06, 6.359455301350116210e-06, 6.353643460530060652e-06, 6.347821985108065358e-06, 6.341990885739336395e-06, 6.336150173093325231e-06, 6.330299857853810048e-06, 6.324439950719177806e-06, 6.318570462401439991e-06, 6.312691403627571769e-06, 6.306802785138693762e-06, 6.300904617690175376e-06, 6.294996912051594996e-06, 6.289079679007065246e-06, 6.283152929354135232e-06, 6.277216673905331298e-06, 6.271270923487056729e-06, 6.265315688939943268e-06, 6.259350981118947680e-06, 6.253376810892453049e-06, 6.247393189143640126e-06, 6.241400126769527637e-06, 6.235397634681236561e-06, 6.229385723803908813e-06, 6.223364405076898674e-06, 6.217333689452933381e-06, 6.211293587899369277e-06, 6.205244111397324448e-06, 6.199185270941843899e-06, 6.193117077541897007e-06, 6.187039542220633328e-06, 6.180952676014282301e-06, 6.174856489973741434e-06, 6.168750995163494645e-06, 6.162636202661825712e-06, 6.156512123561111346e-06, 6.150378768966703957e-06, 6.144236149998550333e-06, 6.138084277790019344e-06, 6.131923163488244149e-06, 6.125752818254113718e-06, 6.119573253262360931e-06, 6.113384479700674880e-06, 6.107186508771144222e-06, 6.100979351689266142e-06, 6.094763019684064095e-06, 6.088537523998229260e-06, 6.082302875888250135e-06, 6.076059086623365606e-06, 6.069806167487166685e-06, 6.063544129776429298e-06, 6.057272984801481898e-06, 6.050992743886324052e-06, 6.044703418367631173e-06, 6.038405019596075046e-06, 6.032097558936482226e-06, 6.025781047765485210e-06, 6.019455497474156716e-06, 6.013120919466877195e-06, 6.006777325160343803e-06, 6.000424725986376624e-06, 5.994063133388251015e-06, 5.987692558823552108e-06, 5.981313013763130416e-06, 5.974924509690231089e-06, 5.968527058101850853e-06, 5.962120670508992973e-06, 5.955705358434182902e-06, 5.949281133414174554e-06, 5.942848006998861016e-06, 5.936405990750151386e-06, 5.929955096244654172e-06, 5.923495335071196330e-06, 5.917026718831162929e-06, 5.910549259139740592e-06, 5.904062967625100109e-06, 5.897567855927324097e-06, 5.891063935701381773e-06, 5.884551218613235998e-06, 5.878029716342864639e-06, 5.871499440583160275e-06, 5.864960403038777382e-06, 5.858412615428868256e-06, 5.851856089484619834e-06, 5.845290836949473080e-06, 5.838716869580483318e-06, 5.832134199147483363e-06, 5.825542837431942571e-06, 5.818942796230014460e-06, 5.812334087348606478e-06, 5.805716722608438639e-06, 5.799090713842606957e-06, 5.792456072896889221e-06, 5.785812811629653520e-06, 5.779160941912160630e-06, 5.772500475627453556e-06, 5.765831424671905906e-06, 5.759153800954230867e-06, 5.752467616395616724e-06, 5.745772882929778535e-06, 5.739069612503176661e-06, 5.732357817073896143e-06, 5.725637508613299264e-06, 5.718908699104893067e-06, 5.712171400544572449e-06, 5.705425624940881052e-06, 5.698671384313894024e-06, 5.691908690696871427e-06, 5.685137556135055453e-06, 5.678357992686020244e-06, 5.671570012419600746e-06, 5.664773627418174769e-06, 5.657968849775461046e-06, 5.651155691598252264e-06, 5.644334165005281733e-06, 5.637504282127407193e-06, 5.630666055107606580e-06, 5.623819496101333775e-06, 5.616964617275201473e-06, 5.610101430808826866e-06, 5.603229948893567023e-06, 5.596350183732825514e-06, 5.589462147542306522e-06, 5.582565852548825609e-06, 5.575661310992056298e-06, 5.568748535123327281e-06, 5.561827537205902797e-06, 5.554898329514925025e-06, 5.547960924337755440e-06, 5.541015333972745772e-06, 5.534061570730896493e-06, 5.527099646934815816e-06, 5.520129574918884014e-06, 5.513151367029257663e-06, 5.506165035624128829e-06, 5.499170593072265630e-06, 5.492168051756241129e-06, 5.485157424068200707e-06, 5.478138722413145164e-06, 5.471111959207788073e-06, 5.464077146879507151e-06, 5.457034297867914658e-06, 5.449983424625075085e-06, 5.442924539612883591e-06, 5.435857655305895085e-06, 5.428782784190245961e-06, 5.421699938762320861e-06, 5.414609131532106932e-06, 5.407510375018963741e-06, 5.400403681754814045e-06, 5.393289064283048581e-06, 5.386166535157534191e-06, 5.379036106944112220e-06, 5.371897792220830606e-06, 5.364751603575300288e-06, 5.357597553607597143e-06, 5.350435654929116796e-06, 5.343265920161251553e-06, 5.336088361938800559e-06, 5.328902992905619437e-06, 5.321709825717979616e-06, 5.314508873043005559e-06, 5.307300147559283780e-06, 5.300083661955297524e-06, 5.292859428932775093e-06, 5.285627461202399619e-06, 5.278387771487116730e-06, 5.271140372520894494e-06, 5.263885277047513011e-06, 5.256622497823587467e-06, 5.249352047615760228e-06, 5.242073939201021012e-06, 5.234788185368179883e-06, 5.227494798917024451e-06, 5.220193792656906176e-06, 5.212885179410234378e-06, 5.205568972008097922e-06, 5.198245183293594908e-06, 5.190913826120362218e-06, 5.183574913352753398e-06, 5.176228457865944530e-06, 5.168874472546059600e-06, 5.161512970289039704e-06, 5.154143964002437914e-06, 5.146767466604137715e-06, 5.139383491022661325e-06, 5.131992050197165464e-06, 5.124593157077690373e-06, 5.117186824623912145e-06, 5.109773065806995178e-06, 5.102351893608308076e-06, 5.094923321019702325e-06, 5.087487361043873123e-06, 5.080044026692960935e-06, 5.072593330990551336e-06, 5.065135286970284180e-06, 5.057669907676200886e-06, 5.050197206162702086e-06, 5.042717195494857641e-06, 5.035229888747103899e-06, 5.027735299005113949e-06, 5.020233439364539776e-06, 5.012724322931282461e-06, 5.005207962821457458e-06, 4.997684372161745262e-06, 4.990153564087988722e-06, 4.982615551747219146e-06, 4.975070348296240911e-06, 4.967517966902000762e-06, 4.959958420741858022e-06, 4.952391723002268303e-06, 4.944817886880704570e-06, 4.937236925584371353e-06, 4.929648852330425818e-06, 4.922053680346049766e-06, 4.914451422868689343e-06, 4.906842093144717577e-06, 4.899225704431487580e-06, 4.891602269995821451e-06, 4.883971803114466815e-06, 4.876334317074305204e-06, 4.868689825171079807e-06, 4.861038340710975187e-06, 4.853379877010931533e-06, 4.845714447395702912e-06, 4.838042065201048044e-06, 4.830362743772458903e-06, 4.822676496464104471e-06, 4.814983336640475670e-06, 4.807283277676710629e-06, 4.799576332955554680e-06, 4.791862515870663784e-06, 4.784141839825311116e-06, 4.776414318230935248e-06, 4.768679964510837449e-06, 4.760938792095514532e-06, 4.753190814426223170e-06, 4.745436044953717816e-06, 4.737674497137151256e-06, 4.729906184445784766e-06, 4.722131120359246458e-06, 4.714349318364508221e-06, 4.706560791959243356e-06, 4.698765554650392554e-06, 4.690963619952913671e-06, 4.683155001393340964e-06, 4.675339712505082361e-06, 4.667517766832170971e-06, 4.659689177927466835e-06, 4.651853959353323538e-06, 4.644012124679934801e-06, 4.636163687488994515e-06, 4.628308661368869492e-06, 4.620447059918415355e-06, 4.612578896745556911e-06, 4.604704185465871906e-06, 4.596822939705991868e-06, 4.588935173100523987e-06, 4.581040899292346728e-06, 4.573140131934323384e-06, 4.565232884687868042e-06, 4.557319171223329294e-06, 4.549399005220230794e-06, 4.541472400365955813e-06, 4.533539370357705581e-06, 4.525599928901494707e-06, 4.517654089710756960e-06, 4.509701866509725781e-06, 4.501743273030340069e-06, 4.493778323012574523e-06, 4.485807030206100676e-06, 4.477829408368908774e-06, 4.469845471267636420e-06, 4.461855232677536388e-06, 4.453858706382786641e-06, 4.445855906175095262e-06, 4.437846845855774844e-06, 4.429831539234292364e-06, 4.421810000128596139e-06, 4.413782242365495300e-06, 4.405748279779185104e-06, 4.397708126213312848e-06, 4.389661795519602290e-06, 4.381609301558146720e-06, 4.373550658197407264e-06, 4.365485879314495799e-06, 4.357414978793837483e-06, 4.349337970529131638e-06, 4.341254868422023601e-06, 4.333165686382371541e-06, 4.325070438328615766e-06, 4.316969138186351470e-06, 4.308861799890354837e-06, 4.300748437383191368e-06, 4.292629064615590265e-06, 4.284503695546327543e-06, 4.276372344142631762e-06, 4.268235024378702559e-06, 4.260091750237830779e-06, 4.251942535710947502e-06, 4.243787394796982341e-06, 4.235626341502769421e-06, 4.227459389843477670e-06, 4.219286553841086161e-06, 4.211107847526517790e-06, 4.202923284938201008e-06, 4.194732880122420500e-06, 4.186536647133587385e-06, 4.178334600032859397e-06, 4.170126752889839190e-06, 4.161913119782969901e-06, 4.153693714796243580e-06, 4.145468552022764657e-06, 4.137237645563343867e-06, 4.129001009525304782e-06, 4.120758658024696262e-06, 4.112510605184795744e-06, 4.104256865136448904e-06, 4.095997452018048484e-06, 4.087732379975871407e-06, 4.079461663162231400e-06, 4.071185315739476989e-06, 4.062903351874855092e-06, 4.054615785744490380e-06, 4.046322631531886027e-06, 4.038023903426878473e-06, 4.029719615627350970e-06, 4.021409782339609667e-06, 4.013094417775105589e-06, 4.004773536154004886e-06, 3.996447151703738707e-06, 3.988115278657514967e-06, 3.979777931258305329e-06, 3.971435123753691011e-06, 3.963086870399904823e-06, 3.954733185459939747e-06, 3.946374083204268912e-06, 3.938009577908974499e-06, 3.929639683859786395e-06, 3.921264415346905973e-06, 3.912883786668996467e-06, 3.904497812131749788e-06, 3.896106506046316129e-06, 3.887709882733031754e-06, 3.879307956518011387e-06, 3.870900741733579350e-06, 3.862488252719983112e-06, 3.854070503823967729e-06, 3.845647509399123981e-06, 3.837219283806150947e-06, 3.828785841411489740e-06, 3.820347196589378415e-06, 3.811903363720816890e-06, 3.803454357192014756e-06, 3.795000191398065291e-06, 3.786540880739620421e-06, 3.778076439623204980e-06, 3.769606882463075516e-06, 3.761132223679704527e-06, 3.752652477700092175e-06, 3.744167658957778135e-06, 3.735677781893204556e-06, 3.727182860952137188e-06, 3.718682910587963386e-06, 3.710177945260079353e-06, 3.701667979434347120e-06, 3.693153027583352042e-06, 3.684633104184913715e-06, 3.676108223724330186e-06, 3.667578400692830430e-06, 3.659043649587924592e-06, 3.650503984913389168e-06, 3.641959421179616407e-06, 3.633409972902090492e-06, 3.624855654603591528e-06, 3.616296480812723817e-06, 3.607732466064185217e-06, 3.599163624899219878e-06, 3.590589971863989402e-06, 3.582011521511861100e-06, 3.573428288401904084e-06, 3.564840287099169214e-06, 3.556247532174702648e-06, 3.547650038205911763e-06, 3.539047819775002800e-06, 3.530440891470880759e-06, 3.521829267889428924e-06, 3.513212963630215170e-06, 3.504591993300083809e-06, 3.495966371511761797e-06, 3.487336112882600042e-06, 3.478701232036879031e-06, 3.470061743604238002e-06, 3.461417662220042561e-06, 3.452769002525741280e-06, 3.444115779167321558e-06, 3.435458006797186222e-06, 3.426795700074466504e-06, 3.418128873661657203e-06, 3.409457542228332199e-06, 3.400781720449615129e-06, 3.392101423005019379e-06, 3.383416664580705850e-06, 3.374727459867940935e-06, 3.366033823563414576e-06, 3.357335770369270340e-06, 3.348633314993426439e-06, 3.339926472147675838e-06, 3.331215256551797328e-06, 3.322499682928271312e-06, 3.313779766006380715e-06, 3.305055520520698183e-06, 3.296326961209914211e-06, 3.287594102818703583e-06, 3.278856960098102725e-06, 3.270115547802024584e-06, 3.261369880691080022e-06, 3.252619973531021815e-06, 3.243865841091165359e-06, 3.235107498148576400e-06, 3.226344959482733460e-06, 3.217578239879643141e-06, 3.208807354130349353e-06, 3.200032317029715275e-06, 3.191253143378352053e-06, 3.182469847982926694e-06, 3.173682445652725656e-06, 3.164890951203464376e-06, 3.156095379455710096e-06, 3.147295745233332638e-06, 3.138492063367313515e-06, 3.129684348692275210e-06, 3.120872616046829308e-06, 3.112056880275479354e-06, 3.103237156227056386e-06, 3.094413458755074686e-06, 3.085585802718088383e-06, 3.076754202978159168e-06, 3.067918674403078911e-06, 3.059079231865276141e-06, 3.050235890240157129e-06, 3.041388664410008174e-06, 3.032537569260450764e-06, 3.023682619680833759e-06, 3.014823830566132009e-06, 3.005961216815362831e-06, 2.997094793331976486e-06, 2.988224575024169588e-06, 2.979350576803370178e-06, 2.970472813586487872e-06, 2.961591300294376497e-06, 2.952706051852158922e-06, 2.943817083189250360e-06, 2.934924409239656516e-06, 2.926028044940478153e-06, 2.917128005234137945e-06, 2.908224305066851153e-06, 2.899316959388970372e-06, 2.890405983154960965e-06, 2.881491391323769099e-06, 2.872573198857233983e-06, 2.863651420722417208e-06, 2.854726071890007357e-06, 2.845797167334662214e-06, 2.836864722035419565e-06, 2.827928750974074294e-06, 2.818989269137517454e-06, 2.810046291516133265e-06, 2.801099833104170109e-06, 2.792149908899731640e-06, 2.783196533905128724e-06, 2.774239723125269654e-06, 2.765279491570028030e-06, 2.756315854252615608e-06, 2.747348826189959232e-06, 2.738378422402674997e-06, 2.729404657915465084e-06, 2.720427547755452497e-06, 2.711447106954599760e-06, 2.702463350548033490e-06, 2.693476293574468758e-06, 2.684485951076550869e-06, 2.675492338099247693e-06, 2.666495469691833413e-06, 2.657495360908220989e-06, 2.648492026803392762e-06, 2.639485482437327295e-06, 2.630475742873407376e-06, 2.621462823177181657e-06, 2.612446738418737616e-06, 2.603427503671084995e-06, 2.594405134010530611e-06, 2.585379644517030723e-06, 2.576351050272604963e-06, 2.567319366363275615e-06, 2.558284607879460219e-06, 2.549246789912358126e-06, 2.540205927557892588e-06, 2.531162035915103941e-06, 2.522115130084950202e-06, 2.513065225172239153e-06, 2.504012336285998071e-06, 2.494956478535917035e-06, 2.485897667036257563e-06, 2.476835916904226303e-06, 2.467771243258414384e-06, 2.458703661223102025e-06, 2.449633185922672366e-06, 2.440559832485976217e-06, 2.431483616044695599e-06, 2.422404551731740306e-06, 2.413322654685221337e-06, 2.404237940044780706e-06, 2.395150422952058150e-06, 2.386060118552557573e-06, 2.376967041994509902e-06, 2.367871208427201465e-06, 2.358772633005356544e-06, 2.349671330883518153e-06, 2.340567317220418734e-06, 2.331460607176982848e-06, 2.322351215916634227e-06, 2.313239158605348291e-06, 2.304124450411979525e-06, 2.295007106506649573e-06, 2.285887142063116394e-06, 2.276764572257569354e-06, 2.267639412266960995e-06, 2.258511677273055008e-06, 2.249381382458723848e-06, 2.240248543008359548e-06, 2.231113174109846883e-06, 2.221975290952951039e-06, 2.212834908729665321e-06, 2.203692042634591900e-06, 2.194546707863353617e-06, 2.185398919614905121e-06, 2.176248693089962885e-06, 2.167096043491358005e-06, 2.157940986024006120e-06, 2.148783535895289434e-06, 2.139623708313436332e-06, 2.130461518489880798e-06, 2.121296981637666179e-06, 2.112130112971785267e-06, 2.102960927709178606e-06, 2.093789441069099142e-06, 2.084615668271494809e-06, 2.075439624539370908e-06, 2.066261325097176507e-06, 2.057080785171188571e-06, 2.047898019989868988e-06, 2.038713044782217933e-06, 2.029525874780211634e-06, 2.020336525217136676e-06, 2.011145011327942795e-06, 2.001951348349274217e-06, 1.992755551519810163e-06, 1.983557636078625419e-06, 1.974357617267607768e-06, 1.965155510329795263e-06, 1.955951330509773487e-06, 1.946745093053640822e-06, 1.937536813209392584e-06, 1.928326506225260830e-06, 1.919114187352156362e-06, 1.909899871841982703e-06, 1.900683574948029336e-06, 1.891465311925368956e-06, 1.882245098029192424e-06, 1.873022948516807332e-06, 1.863798878648038021e-06, 1.854572903681536538e-06, 1.845345038878821078e-06, 1.836115299502612199e-06, 1.826883700815613940e-06, 1.817650258082903730e-06, 1.808414986570298879e-06, 1.799177901544727157e-06, 1.789939018274613677e-06, 1.780698352028226428e-06, 1.771455918075687553e-06, 1.762211731689350492e-06, 1.752965808140118566e-06, 1.743718162701486167e-06, 1.734468810647888319e-06, 1.725217767253443890e-06, 1.715965047793990380e-06, 1.706710667547439245e-06, 1.697454641790104654e-06, 1.688196985800733237e-06, 1.678937714858866570e-06, 1.669676844243180981e-06, 1.660414389235941891e-06, 1.651150365117281041e-06, 1.641884787169640036e-06, 1.632617670676135139e-06, 1.623349030918879304e-06, 1.614078883183048356e-06, 1.604807242753191103e-06, 1.595534124913601397e-06, 1.586259544950319885e-06, 1.576983518149928888e-06, 1.567706059797841613e-06, 1.558427185182809210e-06, 1.549146909591153753e-06, 1.539865248311247978e-06, 1.530582216631448745e-06, 1.521297829840462734e-06, 1.512012103227353017e-06, 1.502725052081899888e-06, 1.493436691692932639e-06, 1.484147037350793359e-06, 1.474856104346045849e-06, 1.465563907967836191e-06, 1.456270463507957653e-06, 1.446975786257132644e-06, 1.437679891505413570e-06, 1.428382794544192206e-06, 1.419084510664530620e-06, 1.409785055157566057e-06, 1.400484443314882991e-06, 1.391182690426847018e-06, 1.381879811785036686e-06, 1.372575822681014024e-06, 1.363270738404622644e-06, 1.353964574248085049e-06, 1.344657345502290514e-06, 1.335349067457166929e-06, 1.326039755403707118e-06, 1.316729424632318394e-06, 1.307418090433192710e-06, 1.298105768096290569e-06, 1.288792472911716680e-06, 1.279478220168063375e-06, 1.270163025154845618e-06, 1.260846903160831075e-06, 1.251529869474428274e-06, 1.242211939384073905e-06, 1.232893128176563106e-06, 1.223573451139486807e-06, 1.214252923559562431e-06, 1.204931560723034548e-06, 1.195609377915628071e-06, 1.186286390422955683e-06, 1.176962613528819531e-06, 1.167638062517697276e-06, 1.158312752673029805e-06, 1.148986699277623370e-06, 1.139659917614054039e-06, 1.130332422962961352e-06, 1.121004230605521233e-06, 1.111675355821769287e-06, 1.102345813890970955e-06, 1.093015620091625959e-06, 1.083684789701831682e-06, 1.074353337997606464e-06, 1.065021280254952763e-06, 1.055688631750223920e-06, 1.046355407756388109e-06, 1.037021623547131577e-06, 1.027687294395194435e-06, 1.018352435571090367e-06, 1.009017062345564933e-06, 9.996811899879258541e-07, 9.903448337664199429e-07, 9.810080089486348087e-07, 9.716707307998035210e-07, 9.623330145848677697e-07, 9.529948755688497130e-07, 9.436563290131133855e-07, 9.343173901794682553e-07, 9.249780743284984515e-07, 9.156383967178874388e-07, 9.062983726069284680e-07, 8.969580172507138241e-07, 8.876173459046795817e-07, 8.782763738224738347e-07, 8.689351162567960000e-07, 8.595935884572878116e-07, 8.502518056750590173e-07, 8.409097831568699568e-07, 8.315675361496641404e-07, 8.222250798988861480e-07, 8.128824296467950803e-07, 8.035396006365889737e-07, 7.941966081086484217e-07, 7.848534673009245153e-07, 7.755101934509878160e-07, 7.661668017947651120e-07, 7.568233075648487404e-07, 7.474797259950359426e-07, 7.381360723145010662e-07, 7.287923617523272966e-07, 7.194486095358300614e-07, 7.101048308888673060e-07, 7.007610410359664489e-07, 6.914172551985636623e-07, 6.820734885953972124e-07, 6.727297564445563264e-07, 6.633860739622108549e-07, 6.540424563609232411e-07, 6.446989188537853236e-07, 6.353554766506439579e-07, 6.260121449585007101e-07, 6.166689389835637938e-07, 6.073258739295591927e-07, 5.979829649981165898e-07, 5.886402273891711786e-07, 5.792976762992703387e-07, 5.699553269240443245e-07, 5.606131944569307399e-07, 5.512712940874946600e-07, 5.419296410055568579e-07, 5.325882503974255671e-07, 5.232471374462971278e-07, 5.139063173342956424e-07, 5.045658052407981796e-07, 4.952256163428194333e-07, 4.858857658154038985e-07, 4.765462688299466289e-07, 4.672071405566459267e-07, 4.578683961628319872e-07, 4.485300508133527232e-07, 4.391921196705447003e-07, 4.298546178946320899e-07, 4.205175606420344032e-07, 4.111809630678385569e-07, 4.018448403241130657e-07, 3.925092075602934424e-07, 3.831740799231618689e-07, 3.738394725572410672e-07, 3.645054006031028265e-07, 3.551718791998392757e-07, 3.458389234833739521e-07, 3.365065485868601717e-07, 3.271747696410620885e-07, 3.178436017726740745e-07, 3.085130601067899804e-07, 2.991831597652145218e-07, 2.898539158668571499e-07, 2.805253435277012937e-07, 2.711974578612060649e-07, 2.618702739766112925e-07, 2.525438069814085295e-07, 2.432180719796557221e-07, 2.338930840723692533e-07, 2.245688583574962823e-07, 2.152454099303107591e-07, 2.059227538817218989e-07, 1.966009053007488161e-07, 1.872798792728286551e-07, 1.779596908802119959e-07, 1.686403552023499745e-07, 1.593218873142136638e-07, 1.500043022883433375e-07, 1.406876151952385287e-07, 1.313718410996005386e-07, 1.220569950644567993e-07, 1.127430921494775804e-07, 1.034301474092905529e-07, 9.411817589802411460e-08, 8.480719266347038053e-08, 7.549721275162828368e-08, 6.618825120460313189e-08, 5.688032306141365154e-08, 4.757344335589133263e-08, 3.826762712122284810e-08, 2.896288938411492327e-08, 1.965924516933608014e-08, 1.035670949803177310e-08, 1.055297386041167377e-09, -8.244976151977802297e-09, -1.754409610630692526e-08, -2.684204747177637912e-08, -3.613881524571470320e-08, -4.543438442921748683e-08, -5.472874002882995394e-08, -6.402186705200886498e-08, -7.331375051295383247e-08, -8.260437542806758179e-08, -9.189372681763967399e-08, -1.011817897075291764e-07, -1.104685491250424844e-07, -1.197539901026879664e-07, -1.290380976777857075e-07, -1.383208568904182845e-07, -1.476022527847002043e-07, -1.568822704104560080e-07, -1.661608948191035321e-07, -1.754381110674046764e-07, -1.847139042170768540e-07, -1.939882593327439392e-07, -2.032611614836165163e-07, -2.125325957431052087e-07, -2.218025471884265179e-07, -2.310710009022836276e-07, -2.403379419704067261e-07, -2.496033554832348432e-07, -2.588672265355202065e-07, -2.681295402263568812e-07, -2.773902816587902356e-07, -2.866494359414947542e-07, -2.959069881863128775e-07, -3.051629235099384276e-07, -3.144172270335235840e-07, -3.236698838822896199e-07, -3.329208791872058270e-07, -3.421701980825287788e-07, -3.514178257074858617e-07, -3.606637472058792870e-07, -3.699079477261156314e-07, -3.791504124208069370e-07, -3.883911264484612306e-07, -3.976300749710141108e-07, -4.068672431555103731e-07, -4.161026161737183449e-07, -4.253361792021445504e-07, -4.345679174216516452e-07, -4.437978160191308832e-07, -4.530258601850483147e-07, -4.622520351151210653e-07, -4.714763260099265883e-07, -4.806987180745128710e-07, -4.899191965200777307e-07, -4.991377465615092954e-07, -5.083543534190621230e-07, -5.175690023179746079e-07, -5.267816784884815796e-07, -5.359923671654340916e-07, -5.452010535899676524e-07, -5.544077230070558885e-07, -5.636123606671767641e-07, -5.728149518259314163e-07, -5.820154817440602489e-07, -5.912139356870607084e-07, -6.004102989268545628e-07, -6.096045567393371176e-07, -6.187966944060598464e-07, -6.279866972138259333e-07, -6.371745504543162014e-07, -6.463602394257469684e-07, -6.555437494308460611e-07, -6.647250657764576748e-07, -6.739041737772690004e-07, -6.830810587517236081e-07, -6.922557060236898909e-07, -7.014281009241215661e-07, -7.105982287865717897e-07, -7.197660749529573207e-07, -7.289316247690681880e-07, -7.380948635862333809e-07, -7.472557767625800691e-07, -7.564143496609942653e-07, -7.655705676487442128e-07, -7.747244161011907080e-07, -7.838758803977053538e-07, -7.930249459233445092e-07, -8.021715980704993089e-07, -8.113158222348288466e-07, -8.204576038189692267e-07, -8.295969282321500693e-07, -8.387337808881576087e-07, -8.478681472066057714e-07, -8.570000126145748679e-07, -8.661293625421513284e-07, -8.752561824281704806e-07, -8.843804577157335219e-07, -8.935021738538849622e-07, -9.026213162992552327e-07, -9.117378705119978922e-07, -9.208518219594923257e-07, -9.299631561159688267e-07, -9.390718584604626950e-07, -9.481779144780959029e-07, -9.572813096617091166e-07, -9.663820295074012203e-07, -9.754800595202660587e-07, -9.845753852099276205e-07, -9.936679920926051047e-07, -1.002757865690721168e-06, -1.011844991532932841e-06, -1.020929355153734058e-06, -1.030010942095129608e-06, -1.039089737904192499e-06, -1.048165728134727958e-06, -1.057238898346877656e-06, -1.066309234107162477e-06, -1.075376720988076796e-06, -1.084441344569750564e-06, -1.093503090437536964e-06, -1.102561944183641036e-06, -1.111617891406753768e-06, -1.120670917711666898e-06, -1.129721008710911296e-06, -1.138768150022350114e-06, -1.147812327270823303e-06, -1.156853526087767296e-06, -1.165891732111238087e-06, -1.174926930985513550e-06, -1.183959108362768027e-06, -1.192988249900621220e-06, -1.202014341263827389e-06, -1.211037368123856286e-06, -1.220057316158934230e-06, -1.229074171053658925e-06, -1.238087918500638674e-06, -1.247098544198087022e-06, -1.256106033851460917e-06, -1.265110373173089919e-06, -1.274111547881777251e-06, -1.283109543704455110e-06, -1.292104346373774012e-06, -1.301095941629747943e-06, -1.310084315219348206e-06, -1.319069452896571818e-06, -1.328051340422012700e-06, -1.337029963564531604e-06, -1.346005308098844398e-06, -1.354977359807147095e-06, -1.363946104478766669e-06, -1.372911527909739230e-06, -1.381873615904486513e-06, -1.390832354273782790e-06, -1.399787728834406737e-06, -1.408739725412768640e-06, -1.417688329840915157e-06, -1.426633527958168322e-06, -1.435575305612332145e-06, -1.444513648657726861e-06, -1.453448542954794636e-06, -1.462379974373747314e-06, -1.471307928790566514e-06, -1.480232392088634595e-06, -1.489153350160363288e-06, -1.498070788902798016e-06, -1.506984694223257231e-06, -1.515895052034944780e-06, -1.524801848258571341e-06, -1.533705068823588336e-06, -1.542604699666198250e-06, -1.551500726728967966e-06, -1.560393135964487302e-06, -1.569281913331343286e-06, -1.578167044795777793e-06, -1.587048516333298601e-06, -1.595926313924287530e-06, -1.604800423559642738e-06, -1.613670831236391086e-06, -1.622537522959717850e-06, -1.631400484742170287e-06, -1.640259702605699208e-06, -1.649115162577273454e-06, -1.657966850694496155e-06, -1.666814753001228533e-06, -1.675658855549231661e-06, -1.684499144399748724e-06, -1.693335605619570971e-06, -1.702168225284622573e-06, -1.710996989479601058e-06, -1.719821884295999908e-06, -1.728642895833327020e-06, -1.737460010200713435e-06, -1.746273213512559582e-06, -1.755082491894144126e-06, -1.763887831477236965e-06, -1.772689218402135293e-06, -1.781486638817281795e-06, -1.790280078879279471e-06, -1.799069524752517884e-06, -1.807854962610801578e-06, -1.816636378634949804e-06, -1.825413759014448862e-06, -1.834187089947055485e-06, -1.842956357638812503e-06, -1.851721548303683140e-06, -1.860482648165161013e-06, -1.869239643453915589e-06, -1.877992520409371903e-06, -1.886741265279375555e-06, -1.895485864319802868e-06, -1.904226303796136149e-06, -1.912962569981156591e-06, -1.921694649156527587e-06, -1.930422527612416526e-06, -1.939146191647508563e-06, -1.947865627568669919e-06, -1.956580821692506002e-06, -1.965291760343030367e-06, -1.973998429853277049e-06, -1.982700816564902877e-06, -1.991398906828237452e-06, -2.000092687001874025e-06, -2.008782143454303432e-06, -2.017467262561559756e-06, -2.026148030708795816e-06, -2.034824434289931645e-06, -2.043496459707291113e-06, -2.052164093373164704e-06, -2.060827321707505585e-06, -2.069486131139497888e-06, -2.078140508107195449e-06, -2.086790439057547225e-06, -2.095435910446013154e-06, -2.104076908738159553e-06, -2.112713420407340356e-06, -2.121345431936258627e-06, -2.129972929816629009e-06, -2.138595900548774120e-06, -2.147214330643238996e-06, -2.155828206618837407e-06, -2.164437515002289751e-06, -2.173042242331759845e-06, -2.181642375152967459e-06, -2.190237900020769310e-06, -2.198828803500363963e-06, -2.207415072165343657e-06, -2.215996692597342360e-06, -2.224573651389538253e-06, -2.233145935142818364e-06, -2.241713530467320592e-06, -2.250276423984020620e-06, -2.258834602320491673e-06, -2.267388052116352632e-06, -2.275936760019008302e-06, -2.284480712685237182e-06, -2.293019896782367138e-06, -2.301554298986367894e-06, -2.310083905981467744e-06, -2.318608704463675091e-06, -2.327128681136911322e-06, -2.335643822714610426e-06, -2.344154115921246197e-06, -2.352659547488125443e-06, -2.361160104158815351e-06, -2.369655772684907050e-06, -2.378146539827976918e-06, -2.386632392358822558e-06, -2.395113317059436381e-06, -2.403589300718751389e-06, -2.412060330138070652e-06, -2.420526392126863484e-06, -2.428987473504318056e-06, -2.437443561100879183e-06, -2.445894641754465898e-06, -2.454340702313904479e-06, -2.462781729638608691e-06, -2.471217710596646435e-06, -2.479648632066307182e-06, -2.488074480935742407e-06, -2.496495244102586966e-06, -2.504910908475538392e-06, -2.513321460972053804e-06, -2.521726888519539573e-06, -2.530127178056884449e-06, -2.538522316530661886e-06, -2.546912290898592295e-06, -2.555297088129173308e-06, -2.563676695199798945e-06, -2.572051099098303331e-06, -2.580420286822619763e-06, -2.588784245380739633e-06, -2.597142961790433751e-06, -2.605496423080732536e-06, -2.613844616289674178e-06, -2.622187528465881392e-06, -2.630525146668158652e-06, -2.638857457965145756e-06, -2.647184449436878058e-06, -2.655506108172486775e-06, -2.663822421271791837e-06, -2.672133375844871160e-06, -2.680438959012151715e-06, -2.688739157904005905e-06, -2.697033959662293598e-06, -2.705323351438130611e-06, -2.713607320393403635e-06, -2.721885853700401771e-06, -2.730158938541490848e-06, -2.738426562110602929e-06, -2.746688711611038262e-06, -2.754945374256936152e-06, -2.763196537272985277e-06, -2.771442187894386416e-06, -2.779682313366525072e-06, -2.787916900946483003e-06, -2.796145937900804597e-06, -2.804369411507027879e-06, -2.812587309053320718e-06, -2.820799617838492255e-06, -2.829006325171655365e-06, -2.837207418373743690e-06, -2.845402884775255569e-06, -2.853592711717803683e-06, -2.861776886553748292e-06, -2.869955396645850797e-06, -2.878128229368740374e-06, -2.886295372107166554e-06, -2.894456812255536310e-06, -2.902612537221347511e-06, -2.910762534421480610e-06, -2.918906791283685610e-06, -2.927045295247744194e-06, -2.935178033763223816e-06, -2.943304994291019301e-06, -2.951426164302986928e-06, -2.959541531281934690e-06, -2.967651082721338534e-06, -2.975754806127120711e-06, -2.983852689013685234e-06, -2.991944718909074621e-06, -3.000030883350904552e-06, -3.008111169887902935e-06, -3.016185566081017398e-06, -3.024254059501563253e-06, -3.032316637730923644e-06, -3.040373288363844507e-06, -3.048423999004806307e-06, -3.056468757269457211e-06, -3.064507550786169093e-06, -3.072540367191982364e-06, -3.080567194137766516e-06, -3.088588019284193330e-06, -3.096602830303248830e-06, -3.104611614879320027e-06, -3.112614360707407253e-06, -3.120611055492772645e-06, -3.128601686954241032e-06, -3.136586242820573362e-06, -3.144564710831924872e-06, -3.152537078741348143e-06, -3.160503334311176699e-06, -3.168463465316271257e-06, -3.176417459543722418e-06, -3.184365304791034631e-06, -3.192306988867596640e-06, -3.200242499594337166e-06, -3.208171824803381011e-06, -3.216094952339505110e-06, -3.224011870058026028e-06, -3.231922565825847315e-06, -3.239827027522953678e-06, -3.247725243038837765e-06, -3.255617200275716357e-06, -3.263502887148234747e-06, -3.271382291581654092e-06, -3.279255401513308309e-06, -3.287122204892286864e-06, -3.294982689679097226e-06, -3.302836843847076024e-06, -3.310684655380283325e-06, -3.318526112274975200e-06, -3.326361202539204771e-06, -3.334189914192911998e-06, -3.342012235267528111e-06, -3.349828153807451994e-06, -3.357637657867913963e-06, -3.365440735516423347e-06, -3.373237374832442380e-06, -3.381027563907374345e-06, -3.388811290844259486e-06, -3.396588543759187013e-06, -3.404359310779207165e-06, -3.412123580043747875e-06, -3.419881339704297131e-06, -3.427632577924032821e-06, -3.435377282879302926e-06, -3.443115442757496502e-06, -3.450847045758442977e-06, -3.458572080094169478e-06, -3.466290533988788596e-06, -3.474002395678303149e-06, -3.481707653411908492e-06, -3.489406295449980817e-06, -3.497098310065474752e-06, -3.504783685543580741e-06, -3.512462410181753843e-06, -3.520134472289383386e-06, -3.527799860189188031e-06, -3.535458562215172732e-06, -3.543110566714026761e-06, -3.550755862044769646e-06, -3.558394436578437351e-06, -3.566026278699519263e-06, -3.573651376804187046e-06, -3.581269719300007925e-06, -3.588881294609055410e-06, -3.596486091164478811e-06, -3.604084097411890684e-06, -3.611675301810439595e-06, -3.619259692830728958e-06, -3.626837258956252760e-06, -3.634407988683011427e-06, -3.641971870519600769e-06, -3.649528892986823183e-06, -3.657079044619463042e-06, -3.664622313962494947e-06, -3.672158689575932572e-06, -3.679688160031056820e-06, -3.687210713911817243e-06, -3.694726339815845941e-06, -3.702235026352815586e-06, -3.709736762144073506e-06, -3.717231535825728272e-06, -3.724719336045290789e-06, -3.732200151463029125e-06, -3.739673970753347480e-06, -3.747140782601056280e-06, -3.754600575706194753e-06, -3.762053338780240462e-06, -3.769499060547520459e-06, -3.776937729746248902e-06, -3.784369335126860516e-06, -3.791793865451633665e-06, -3.799211309497827761e-06, -3.806621656054250661e-06, -3.814024893922687194e-06, -3.821421011919218409e-06, -3.828809998870878338e-06, -3.836191843618721950e-06, -3.843566535017475325e-06, -3.850934061933923752e-06, -3.858294413248180583e-06, -3.865647577853470392e-06, -3.872993544655735955e-06, -3.880332302575045167e-06, -3.887663840543538685e-06, -3.894988147506513282e-06, -3.902305212423763546e-06, -3.909615024266186126e-06, -3.916917572018917142e-06, -3.924212844680941703e-06, -3.931500831263437110e-06, -3.938781520791141661e-06, -3.946054902302062426e-06, -3.953320964847095775e-06, -3.960579697491470723e-06, -3.967831089312652521e-06, -3.975075129401781770e-06, -3.982311806863301720e-06, -3.989541110815029427e-06, -3.996763030387774584e-06, -4.003977554726736281e-06, -4.011184672989483676e-06, -4.018384374347358681e-06, -4.025576647985101580e-06, -4.032761483100884900e-06, -4.039938868906036442e-06, -4.047108794626301349e-06, -4.054271249499949846e-06, -4.061426222779067261e-06, -4.068573703729276205e-06, -4.075713681629367262e-06, -4.082846145772710148e-06, -4.089971085465225912e-06, -4.097088490026743038e-06, -4.104198348790703523e-06, -4.111300651104153561e-06, -4.118395386327431833e-06, -4.125482543835493421e-06, -4.132562113016023465e-06, -4.139634083270624703e-06, -4.146698444014676018e-06, -4.153755184677191829e-06, -4.160804294700638285e-06, -4.167845763542147062e-06, -4.174879580671653589e-06, -4.181905735573174368e-06, -4.188924217744534234e-06, -4.195935016696997892e-06, -4.202938121956654820e-06, -4.209933523062718422e-06, -4.216921209567341380e-06, -4.223901171038415939e-06, -4.230873397056481395e-06, -4.237837877215907398e-06, -4.244794601125990859e-06, -4.251743558408944248e-06, -4.258684738701238986e-06, -4.265618131653335246e-06, -4.272543726929288924e-06, -4.279461514208144165e-06, -4.286371483182269791e-06, -4.293273623557101798e-06, -4.300167925054035132e-06, -4.307054377407199879e-06, -4.313932970364804660e-06, -4.320803693690068366e-06, -4.327666537159679406e-06, -4.334521490563456047e-06, -4.341368543707267831e-06, -4.348207686409841412e-06, -4.355038908503995531e-06, -4.361862199838054715e-06, -4.368677550272262939e-06, -4.375484949683275440e-06, -4.382284387960680803e-06, -4.389075855008313010e-06, -4.395859340745488114e-06, -4.402634835103882073e-06, -4.409402328030379318e-06, -4.416161809486783923e-06, -4.422913269448217010e-06, -4.429656697904162842e-06, -4.436392084859633488e-06, -4.443119420331828974e-06, -4.449838694354457998e-06, -4.456549896974346413e-06, -4.463253018253050818e-06, -4.469948048266484175e-06, -4.476634977104986961e-06, -4.483313794872986653e-06, -4.489984491690352989e-06, -4.496647057690406589e-06, -4.503301483020965889e-06, -4.509947757845551623e-06, -4.516585872340343431e-06, -4.523215816696966598e-06, -4.529837581122137998e-06, -4.536451155836272718e-06, -4.543056531074560645e-06, -4.549653697086814839e-06, -4.556242644137103079e-06, -4.562823362505007400e-06, -4.569395842483797888e-06, -4.575960074381389831e-06, -4.582516048521519396e-06, -4.589063755240783252e-06, -4.595603184891342299e-06, -4.602134327840634523e-06, -4.608657174469898617e-06, -4.615171715175347970e-06, -4.621677940367968227e-06, -4.628175840473448675e-06, -4.634665405931931526e-06, -4.641146627199225714e-06, -4.647619494745012031e-06, -4.654083999054050148e-06, -4.660540130625928744e-06, -4.666987879974763959e-06, -4.673427237630326797e-06, -4.679858194136417666e-06, -4.686280740051967526e-06, -4.692694865950765142e-06, -4.699100562421500282e-06, -4.705497820067458784e-06, -4.711886629507721113e-06, -4.718266981375421702e-06, -4.724638866318892449e-06, -4.731002275001487383e-06, -4.737357198101171002e-06, -4.743703626311788829e-06, -4.750041550341301338e-06, -4.756370960912953718e-06, -4.762691848765041237e-06, -4.769004204650846562e-06, -4.775308019338448336e-06, -4.781603283611852806e-06, -4.787889988269528461e-06, -4.794168124124179873e-06, -4.800437682005343004e-06, -4.806698652756511226e-06, -4.812951027236320321e-06, -4.819194796319342145e-06, -4.825429950894525246e-06, -4.831656481866232479e-06, -4.837874380153954705e-06, -4.844083636692162565e-06, -4.850284242431345785e-06, -4.856476188336651151e-06, -4.862659465387564868e-06, -4.868834064580611209e-06, -4.874999976926314209e-06, -4.881157193450546139e-06, -4.887305705195282213e-06, -4.893445503216937016e-06, -4.899576578587540186e-06, -4.905698922394388283e-06, -4.911812525740143043e-06, -4.917917379742553553e-06, -4.924013475535780166e-06, -4.930100804267437504e-06, -4.936179357102472177e-06, -4.942249125220093984e-06, -4.948310099814932111e-06, -4.954362272098143899e-06, -4.960405633294624715e-06, -4.966440174645601568e-06, -4.972465887408251099e-06, -4.978482762854428182e-06, -4.984490792271444349e-06, -4.990489966963223141e-06, -4.996480278247245708e-06, -5.002461717458447163e-06, -5.008434275946218929e-06, -5.014397945075703853e-06, -5.020352716227671694e-06, -5.026298580798386985e-06, -5.032235530199486211e-06, -5.038163555858947666e-06, -5.044082649219580342e-06, -5.049992801739818450e-06, -5.055894004894768347e-06, -5.061786250173556482e-06, -5.067669529081784096e-06, -5.073543833141248543e-06, -5.079409153888627854e-06, -5.085265482876503953e-06, -5.091112811673222890e-06, -5.096951131862533164e-06, -5.102780435044706346e-06, -5.108600712834970914e-06, -5.114411956864256797e-06, -5.120214158780365125e-06, -5.126007310245229772e-06, -5.131791402937378838e-06, -5.137566428551663591e-06, -5.143332378797939642e-06, -5.149089245402148605e-06, -5.154837020106037729e-06, -5.160575694667202249e-06, -5.166305260858830430e-06, -5.172025710470752193e-06, -5.177737035307899208e-06, -5.183439227191323032e-06, -5.189132277957968098e-06, -5.194816179460446410e-06, -5.200490923568079391e-06, -5.206156502165278353e-06, -5.211812907152699008e-06, -5.217460130446983968e-06, -5.223098163980645855e-06, -5.228726999701979206e-06, -5.234346629576023555e-06, -5.239957045583024370e-06, -5.245558239719535046e-06, -5.251150203998069618e-06, -5.256732930446932511e-06, -5.262306411111292573e-06, -5.267870638051513579e-06, -5.273425603344339226e-06, -5.278971299082556015e-06, -5.284507717375041533e-06, -5.290034850346547609e-06, -5.295552690138614267e-06, -5.301061228908488910e-06, -5.306560458828700262e-06, -5.312050372089489352e-06, -5.317530960896225218e-06, -5.323002217470414571e-06, -5.328464134050503933e-06, -5.333916702890347355e-06, -5.339359916260304171e-06, -5.344793766446865460e-06, -5.350218245752510046e-06, -5.355633346496705694e-06, -5.361039061014627547e-06, -5.366435381656953992e-06, -5.371822300792131628e-06, -5.377199810803857031e-06, -5.382567904092125391e-06, -5.387926573074186800e-06, -5.393275810181863709e-06, -5.398615607864995806e-06, -5.403945958588801508e-06, -5.409266854835040092e-06, -5.414578289101530580e-06, -5.419880253903510380e-06, -5.425172741770750289e-06, -5.430455745251217068e-06, -5.435729256908179129e-06, -5.440993269321344096e-06, -5.446247775087804100e-06, -5.451492766819553122e-06, -5.456728237145750266e-06, -5.461954178712504611e-06, -5.467170584181593653e-06, -5.472377446231273913e-06, -5.477574757557216909e-06, -5.482762510869838463e-06, -5.487940698897772381e-06, -5.493109314385143854e-06, -5.498268350092610463e-06, -5.503417798798260031e-06, -5.508557653295268582e-06, -5.513687906394074669e-06, -5.518808550922138821e-06, -5.523919579722687388e-06, -5.529020985655568052e-06, -5.534112761598153602e-06, -5.539194900442930441e-06, -5.544267395099666980e-06, -5.549330238495256946e-06, -5.554383423572434428e-06, -5.559426943290825044e-06, -5.564460790626626616e-06, -5.569484958572482953e-06, -5.574499440138364772e-06, -5.579504228350212751e-06, -5.584499316250568564e-06, -5.589484696899644687e-06, -5.594460363372886637e-06, -5.599426308763140529e-06, -5.604382526180429459e-06, -5.609329008750783751e-06, -5.614265749617164224e-06, -5.619192741939270762e-06, -5.624109978893278888e-06, -5.629017453672849424e-06, -5.633915159487661434e-06, -5.638803089564395625e-06, -5.643681237146517513e-06, -5.648549595494229980e-06, -5.653408157884364862e-06, -5.658256917611202873e-06, -5.663095867985095483e-06, -5.667925002333513545e-06, -5.672744314000702553e-06, -5.677553796347748708e-06, -5.682353442752380717e-06, -5.687143246609826987e-06, -5.691923201331507806e-06, -5.696693300345925574e-06, -5.701453537098464909e-06, -5.706203905051152929e-06, -5.710944397683614708e-06, -5.715675008491703628e-06, -5.720395730988379743e-06, -5.725106558703527678e-06, -5.729807485183975254e-06, -5.734498503993246161e-06, -5.739179608712476442e-06, -5.743850792939106679e-06, -5.748512050287712086e-06, -5.753163374389919492e-06, -5.757804758894245567e-06, -5.762436197466027361e-06, -5.767057683788236300e-06, -5.771669211560182231e-06, -5.776270774498404499e-06, -5.780862366336478820e-06, -5.785443980824770798e-06, -5.790015611731350722e-06, -5.794577252840869547e-06, -5.799128897954388647e-06, -5.803670540891333917e-06, -5.808202175487353626e-06, -5.812723795595102772e-06, -5.817235395085266295e-06, -5.821736967844057790e-06, -5.826228507776295932e-06, -5.830710008803082757e-06, -5.835181464862579543e-06, -5.839642869910746272e-06, -5.844094217920269288e-06, -5.848535502880255513e-06, -5.852966718798311068e-06, -5.857387859698314427e-06, -5.861798919621278691e-06, -5.866199892626280787e-06, -5.870590772788268497e-06, -5.874971554200017106e-06, -5.879342230971889693e-06, -5.883702797230877437e-06, -5.888053247121106997e-06, -5.892393574804805277e-06, -5.896723774459927736e-06, -5.901043840283130628e-06, -5.905353766487462834e-06, -5.909653547303215439e-06, -5.913943176978754361e-06, -5.918222649778482398e-06, -5.922491959984688290e-06, -5.926751101897299395e-06, -5.931000069832963501e-06, -5.935238858125548574e-06, -5.939467461127072804e-06, -5.943685873205405753e-06, -5.947894088747216882e-06, -5.952092102155582679e-06, -5.956279907851131001e-06, -5.960457500271857271e-06, -5.964624873873043157e-06, -5.968782023127149004e-06, -5.972928942524532964e-06, -5.977065626572352392e-06, -5.981192069795342272e-06, -5.985308266735545857e-06, -5.989414211952425635e-06, -5.993509900022614298e-06, -5.997595325540745681e-06, -6.001670483118215557e-06, -6.005735367384032899e-06, -6.009789972984663183e-06, -6.013834294583739549e-06, -6.017868326862905600e-06, -6.021892064520674444e-06, -6.025905502273175782e-06, -6.029908634853966172e-06, -6.033901457014055284e-06, -6.037883963521746661e-06, -6.041856149163358541e-06, -6.045818008742089684e-06, -6.049769537078816425e-06, -6.053710729011875838e-06, -6.057641579397111474e-06, -6.061562083107684472e-06, -6.065472235034765585e-06, -6.069372030086533988e-06, -6.073261463188826952e-06, -6.077140529285000932e-06, -6.081009223335744368e-06, -6.084867540319853572e-06, -6.088715475233070598e-06, -6.092553023088893003e-06, -6.096380178918370562e-06, -6.100196937770080702e-06, -6.104003294709991284e-06, -6.107799244822158557e-06, -6.111584783207709025e-06, -6.115359904985480652e-06, -6.119124605291925451e-06, -6.122878879281045111e-06, -6.126622722124312222e-06, -6.130356129011299622e-06, -6.134079095148658874e-06, -6.137791615760813986e-06, -6.141493686089803017e-06, -6.145185301395148479e-06, -6.148866456954476520e-06, -6.152537148062773227e-06, -6.156197370032027180e-06, -6.159847118193013305e-06, -6.163486387893424313e-06, -6.167115174498577132e-06, -6.170733473392214198e-06, -6.174341279974447705e-06, -6.177938589664340514e-06, -6.181525397897905465e-06, -6.185101700128842290e-06, -6.188667491829067860e-06, -6.192222768487806472e-06, -6.195767525611529704e-06, -6.199301758725380284e-06, -6.202825463371531385e-06, -6.206338635109915070e-06, -6.209841269518838937e-06, -6.213333362193256474e-06, -6.216814908746442494e-06, -6.220285904809702598e-06, -6.223746346031546473e-06, -6.227196228078296911e-06, -6.230635546634630213e-06, -6.234064297401851630e-06, -6.237482476100117132e-06, -6.240890078466781692e-06, -6.244287100256884639e-06, -6.247673537243949253e-06, -6.251049385218222634e-06, -6.254414639988286755e-06, -6.257769297380825532e-06, -6.261113353239797271e-06, -6.264446803426973379e-06, -6.267769643822572796e-06, -6.271081870323478140e-06, -6.274383478845501521e-06, -6.277674465321653206e-06, -6.280954825702879385e-06, -6.284224555957997796e-06, -6.287483652073612176e-06, -6.290732110054024166e-06, -6.293969925921777957e-06, -6.297197095716881019e-06, -6.300413615497269120e-06, -6.303619481338766517e-06, -6.306814689335042759e-06, -6.309999235597436499e-06, -6.313173116255617879e-06, -6.316336327456717779e-06, -6.319488865365790294e-06, -6.322630726165823750e-06, -6.325761906057518777e-06, -6.328882401259929515e-06, -6.331992208009504774e-06, -6.335091322560767352e-06, -6.338179741186087879e-06, -6.341257460175765283e-06, -6.344324475837824352e-06, -6.347380784498655240e-06, -6.350426382502154582e-06, -6.353461266210188813e-06, -6.356485432002578928e-06, -6.359498876277108101e-06, -6.362501595449233696e-06, -6.365493585952897031e-06, -6.368474844239425620e-06, -6.371445366778255698e-06, -6.374405150056843274e-06, -6.377354190580300763e-06, -6.380292484872234696e-06, -6.383220029473697940e-06, -6.386136820943833448e-06, -6.389042855859791244e-06, -6.391938130816615769e-06, -6.394822642427223863e-06, -6.397696387322901120e-06, -6.400559362152457397e-06, -6.403411563582835836e-06, -6.406252988298923970e-06, -6.409083633003496126e-06, -6.411903494417653038e-06, -6.414712569280295836e-06, -6.417510854347805868e-06, -6.420298346395417744e-06, -6.423075042215813256e-06, -6.425840938619655014e-06, -6.428596032436033674e-06, -6.431340320511762364e-06, -6.434073799711192028e-06, -6.436796466917604800e-06, -6.439508319031647830e-06, -6.442209352972050734e-06, -6.444899565676053335e-06, -6.447578954097988582e-06, -6.450247515211173126e-06, -6.452905246006330992e-06, -6.455552143492327112e-06, -6.458188204696361289e-06, -6.460813426663456597e-06, -6.463427806456220512e-06, -6.466031341156159509e-06, -6.468624027862196756e-06, -6.471205863691376843e-06, -6.473776845779285910e-06, -6.476336971278638800e-06, -6.478886237361127279e-06, -6.481424641215936888e-06, -6.483952180050491477e-06, -6.486468851090087296e-06, -6.488974651578612118e-06, -6.491469578777123921e-06, -6.493953629965642363e-06, -6.496426802441748638e-06, -6.498889093521052186e-06, -6.501340500537790398e-06, -6.503781020843446255e-06, -6.506210651808030736e-06, -6.508629390819811770e-06, -6.511037235284825493e-06, -6.513434182627144764e-06, -6.515820230289428038e-06, -6.518195375731545477e-06, -6.520559616432346713e-06, -6.522912949888217501e-06, -6.525255373613826801e-06, -6.527586885141856576e-06, -6.529907482023160186e-06, -6.532217161826528611e-06, -6.534515922139199510e-06, -6.536803760566142333e-06, -6.539080674730584323e-06, -6.541346662273815703e-06, -6.543601720855239647e-06, -6.545845848152279107e-06, -6.548079041860751205e-06, -6.550301299694297175e-06, -6.552512619384739815e-06, -6.554712998682001321e-06, -6.556902435354068562e-06, -6.559080927187287000e-06, -6.561248471985850773e-06, -6.563405067572178782e-06, -6.565550711786774927e-06, -6.567685402488261144e-06, -6.569809137553293546e-06, -6.571921914876964765e-06, -6.574023732372161057e-06, -6.576114587970001059e-06, -6.578194479619756173e-06, -6.580263405288776871e-06, -6.582321362962444415e-06, -6.584368350644632493e-06, -6.586404366356960977e-06, -6.588429408139327019e-06, -6.590443474049699215e-06, -6.592446562164190458e-06, -6.594438670577270537e-06, -6.596419797401229966e-06, -6.598389940766600115e-06, -6.600349098822101541e-06, -6.602297269734525398e-06, -6.604234451688741916e-06, -6.606160642888004476e-06, -6.608075841553488832e-06, -6.609980045924534514e-06, -6.611873254258680398e-06, -6.613755464831429238e-06, -6.615626675936805856e-06, -6.617486885886694764e-06, -6.619336093010894373e-06, -6.621174295657944547e-06, -6.623001492194038161e-06, -6.624817681003602171e-06, -6.626622860489488191e-06, -6.628417029072460043e-06, -6.630200185191148014e-06, -6.631972327302928923e-06, -6.633733453882900368e-06, -6.635483563424347437e-06, -6.637222654439067122e-06, -6.638950725456319694e-06, -6.640667775024178874e-06, -6.642373801708500991e-06, -6.644068804093285822e-06, -6.645752780780892579e-06, -6.647425730391792585e-06, -6.649087651564177087e-06, -6.650738542954999116e-06, -6.652378403238990921e-06, -6.654007231109018036e-06, -6.655625025276456202e-06, -6.657231784470157994e-06, -6.658827507437848728e-06, -6.660412192944971952e-06, -6.661985839775193437e-06, -6.663548446730252942e-06, -6.665100012630391966e-06, -6.666640536313376274e-06, -6.668170016635730869e-06, -6.669688452471759129e-06, -6.671195842713943451e-06, -6.672692186273233247e-06, -6.674177482078193671e-06, -6.675651729075768801e-06, -6.677114926231295185e-06, -6.678567072527892830e-06, -6.680008166966971724e-06, -6.681438208568064972e-06, -6.682857196368784752e-06, -6.684265129425061175e-06, -6.685662006810764509e-06, -6.687047827617919482e-06, -6.688422590956957691e-06, -6.689786295955993397e-06, -6.691138941761508768e-06, -6.692480527538294590e-06, -6.693811052469014042e-06, -6.695130515754555068e-06, -6.696438916613910938e-06, -6.697736254284240391e-06, -6.699022528020722794e-06, -6.700297737096904573e-06, -6.701561880804245211e-06, -6.702814958452389137e-06, -6.704056969369097971e-06, -6.705287912900192074e-06, -6.706507788409844469e-06, -6.707716595280137847e-06, -6.708914332911275470e-06, -6.710101000721664190e-06, -6.711276598147798396e-06, -6.712441124644215977e-06, -6.713594579683760894e-06, -6.714736962757209647e-06, -6.715868273373503353e-06, -6.716988511059669827e-06, -6.718097675360828658e-06, -6.719195765840404667e-06, -6.720282782079665422e-06, -6.721358723678110876e-06, -6.722423590253323440e-06, -6.723477381440966291e-06, -6.724520096894768127e-06, -6.725551736286741695e-06, -6.726572299306784847e-06, -6.727581785662982922e-06, -6.728580195081457983e-06, -6.729567527306489935e-06, -6.730543782100357287e-06, -6.731508959243567546e-06, -6.732463058534618348e-06, -6.733406079790069463e-06, -6.734338022844619871e-06, -6.735258887550939200e-06, -6.736168673779992993e-06, -6.737067381420666622e-06, -6.737955010379784767e-06, -6.738831560582544256e-06, -6.739697031971989745e-06, -6.740551424509316115e-06, -6.741394738173803245e-06, -6.742226972962761805e-06, -6.743048128891526481e-06, -6.743858205993558462e-06, -6.744657204320302294e-06, -6.745445123941245171e-06, -6.746221964944166813e-06, -6.746987727434465222e-06, -6.747742411535982545e-06, -6.748486017390378267e-06, -6.749218545157399412e-06, -6.749939995014925441e-06, -6.750650367158785289e-06, -6.751349661802705697e-06, -6.752037879178766070e-06, -6.752715019536845362e-06, -6.753381083144846543e-06, -6.754036070288885482e-06, -6.754679981272775111e-06, -6.755312816418702199e-06, -6.755934576066596314e-06, -6.756545260574524540e-06, -6.757144870318589836e-06, -6.757733405692869198e-06, -6.758310867109310323e-06, -6.758877254998077200e-06, -6.759432569807214682e-06, -6.759976812002729804e-06, -6.760509982068773893e-06, -6.761032080507321543e-06, -6.761543107838351881e-06, -6.762043064599962069e-06, -6.762531951348128439e-06, -6.763009768656775106e-06, -6.763476517117841728e-06, -6.763932197341195414e-06, -6.764376809954822156e-06, -6.764810355604490556e-06, -6.765232834953973749e-06, -6.765644248685117163e-06, -6.766044597497542060e-06, -6.766433882108913198e-06, -6.766812103254857517e-06, -6.767179261688954819e-06, -6.767535358182655606e-06, -6.767880393525385269e-06, -6.768214368524493260e-06, -6.768537284005312391e-06, -6.768849140811031773e-06, -6.769149939802804393e-06, -6.769439681859625985e-06, -6.769718367878534935e-06, -6.769985998774378494e-06, -6.770242575479969483e-06, -6.770488098945993118e-06, -6.770722570141037504e-06, -6.770945990051598716e-06, -6.771158359682038447e-06, -6.771359680054642456e-06, -6.771549952209592613e-06, -6.771729177204913537e-06, -6.771897356116514101e-06, -6.772054490038190819e-06, -6.772200580081550769e-06, -6.772335627376206406e-06, -6.772459633069450304e-06, -6.772572598326599900e-06, -6.772674524330713733e-06, -6.772765412282729516e-06, -6.772845263401414159e-06, -6.772914078923439998e-06, -6.772971860103256899e-06, -6.773018608213132067e-06, -6.773054324543221194e-06, -6.773079010401447334e-06, -6.773092667113577141e-06, -6.773095296023186134e-06, -6.773086898491699357e-06, -6.773067475898271948e-06, -6.773037029639904336e-06, -6.772995561131383794e-06, -6.772943071805338651e-06, -6.772879563112115470e-06, -6.772805036519835801e-06, -6.772719493514495284e-06, -6.772622935599768828e-06, -6.772515364297124966e-06, -6.772396781145804675e-06, -6.772267187702834931e-06, -6.772126585542977884e-06, -6.771974976258740178e-06, -6.771812361460341610e-06, -6.771638742775798140e-06, -6.771454121850850739e-06, -6.771258500348932354e-06, -6.771051879951250920e-06, -6.770834262356725831e-06, -6.770605649281956597e-06, -6.770366042461310095e-06, -6.770115443646816378e-06, -6.769853854608204251e-06, -6.769581277132930075e-06, -6.769297713026103221e-06, -6.769003164110567393e-06, -6.768697632226823539e-06, -6.768381119233018848e-06, -6.768053627005019590e-06, -6.767715157436311167e-06, -6.767365712438091288e-06, -6.767005293939158159e-06, -6.766633903885993491e-06, -6.766251544242719307e-06, -6.765858216991081842e-06, -6.765453924130482886e-06, -6.765038667677911174e-06, -6.764612449668021162e-06, -6.764175272153049165e-06, -6.763727137202892139e-06, -6.763268046905014500e-06, -6.762798003364455754e-06, -6.762317008703920277e-06, -6.761825065063634169e-06, -6.761322174601434191e-06, -6.760808339492741510e-06, -6.760283561930528660e-06, -6.759747844125385617e-06, -6.759201188305363937e-06, -6.758643596716173276e-06, -6.758075071621037387e-06, -6.757495615300678030e-06, -6.756905230053393748e-06, -6.756303918194993794e-06, -6.755691682058876062e-06, -6.755068523995897485e-06, -6.754434446374396915e-06, -6.753789451580283203e-06, -6.753133542016953893e-06, -6.752466720105268957e-06, -6.751788988283613483e-06, -6.751100349007855315e-06, -6.750400804751307789e-06, -6.749690358004759379e-06, -6.748969011276495716e-06, -6.748236767092225053e-06, -6.747493627995116382e-06, -6.746739596545813829e-06, -6.745974675322313837e-06, -6.745198866920146434e-06, -6.744412173952249019e-06, -6.743614599048907073e-06, -6.742806144857898157e-06, -6.741986814044362311e-06, -6.741156609290843561e-06, -6.740315533297261967e-06, -6.739463588781013576e-06, -6.738600778476803547e-06, -6.737727105136692750e-06, -6.736842571530120627e-06, -6.735947180443932300e-06, -6.735040934682270152e-06, -6.734123837066679705e-06, -6.733195890436005433e-06, -6.732257097646439893e-06, -6.731307461571479679e-06, -6.730346985101977089e-06, -6.729375671146072364e-06, -6.728393522629232649e-06, -6.727400542494210494e-06, -6.726396733701002343e-06, -6.725382099226989992e-06, -6.724356642066819462e-06, -6.723320365232306980e-06, -6.722273271752602454e-06, -6.721215364674158982e-06, -6.720146647060557515e-06, -6.719067121992717768e-06, -6.717976792568803354e-06, -6.716875661904150630e-06, -6.715763733131370344e-06, -6.714641009400197709e-06, -6.713507493877620306e-06, -6.712363189747956008e-06, -6.711208100212496383e-06, -6.710042228489820094e-06, -6.708865577815770877e-06, -6.707678151443183947e-06, -6.706479952642121478e-06, -6.705270984699981864e-06, -6.704051250921009294e-06, -6.702820754626764694e-06, -6.701579499155978353e-06, -6.700327487864314439e-06, -6.699064724124837719e-06, -6.697791211327430799e-06, -6.696506952879272698e-06, -6.695211952204604219e-06, -6.693906212744590732e-06, -6.692589737957760934e-06, -6.691262531319552841e-06, -6.689924596322388326e-06, -6.688575936475889113e-06, -6.687216555306714997e-06, -6.685846456358399511e-06, -6.684465643191784463e-06, -6.683074119384459196e-06, -6.681671888531203585e-06, -6.680258954243761883e-06, -6.678835320150864740e-06, -6.677400989898248687e-06, -6.675955967148658677e-06, -6.674500255581706629e-06, -6.673033858894108601e-06, -6.671556780799497589e-06, -6.670069025028321891e-06, -6.668570595328242358e-06, -6.667061495463713966e-06, -6.665541729216006141e-06, -6.664011300383451787e-06, -6.662470212781288047e-06, -6.660918470241609709e-06, -6.659356076613439520e-06, -6.657783035762601969e-06, -6.656199351571913874e-06, -6.654605027941032762e-06, -6.653000068786318803e-06, -6.651384478041269336e-06, -6.649758259656057240e-06, -6.648121417597614786e-06, -6.646473955849852175e-06, -6.644815878413444930e-06, -6.643147189305841520e-06, -6.641467892561326043e-06, -6.639777992231029233e-06, -6.638077492382709928e-06, -6.636366397101014264e-06, -6.634644710487342685e-06, -6.632912436659849105e-06, -6.631169579753517129e-06, -6.629416143919832264e-06, -6.627652133327205426e-06, -6.625877552160754410e-06, -6.624092404622269159e-06, -6.622296694930247342e-06, -6.620490427319961269e-06, -6.618673606043160582e-06, -6.616846235368468665e-06, -6.615008319581120912e-06, -6.613159862982992682e-06, -6.611300869892706019e-06, -6.609431344645268822e-06, -6.607551291592591531e-06, -6.605660715103088176e-06, -6.603759619561826302e-06, -6.601848009370416008e-06, -6.599925888947176811e-06, -6.597993262726827634e-06, -6.596050135160740066e-06, -6.594096510717081515e-06, -6.592132393880209574e-06, -6.590157789151230220e-06, -6.588172701047864828e-06, -6.586177134104089336e-06, -6.584171092870634838e-06, -6.582154581914696211e-06, -6.580127605819905005e-06, -6.578090169186539506e-06, -6.576042276631074121e-06, -6.573983932786640158e-06, -6.571915142303041920e-06, -6.569835909846085013e-06, -6.567746240098311565e-06, -6.565646137758710541e-06, -6.563535607542463638e-06, -6.561414654181405218e-06, -6.559283282423669101e-06, -6.557141497033841026e-06, -6.554989302792804493e-06, -6.552826704497973696e-06, -6.550653706962764979e-06, -6.548470315017524329e-06, -6.546276533508418618e-06, -6.544072367298184374e-06, -6.541857821265967696e-06, -6.539632900306871937e-06, -6.537397609332787793e-06, -6.535151953271644533e-06, -6.532895937067535352e-06, -6.530629565681062120e-06, -6.528352844089065173e-06, -6.526065777284338715e-06, -6.523768370276473613e-06, -6.521460628090730841e-06, -6.519142555768939341e-06, -6.516814158369028454e-06, -6.514475440965155828e-06, -6.512126408647683697e-06, -6.509767066523216998e-06, -6.507397419714272184e-06, -6.505017473359832874e-06, -6.502627232614961913e-06, -6.500226702650585381e-06, -6.497815888654213414e-06, -6.495394795829322720e-06, -6.492963429395214277e-06, -6.490521794587624042e-06, -6.488069896658227439e-06, -6.485607740874841799e-06, -6.483135332521411960e-06, -6.480652676897657054e-06, -6.478159779319627009e-06, -6.475656645119455215e-06, -6.473143279644845220e-06, -6.470619688260149005e-06, -6.468085876345377651e-06, -6.465541849296399541e-06, -6.462987612525318986e-06, -6.460423171460127247e-06, -6.457848531544806720e-06, -6.455263698239218280e-06, -6.452668677019334216e-06, -6.450063473376715613e-06, -6.447448092819154400e-06, -6.444822540870232893e-06, -6.442186823069444923e-06, -6.439540944972285622e-06, -6.436884912149773692e-06, -6.434218730189135812e-06, -6.431542404693360250e-06, -6.428855941281195169e-06, -6.426159345587321421e-06, -6.423452623262256834e-06, -6.420735779972058056e-06, -6.418008821398905852e-06, -6.415271753240601970e-06, -6.412524581210775816e-06, -6.409767311038904781e-06, -6.406999948469885646e-06, -6.404222499264716439e-06, -6.401434969199934008e-06, -6.398637364067888461e-06, -6.395829689676582226e-06, -6.393011951849819977e-06, -6.390184156426748697e-06, -6.387346309262475164e-06, -6.384498416228008352e-06, -6.381640483209384447e-06, -6.378772516108734107e-06, -6.375894520843773397e-06, -6.373006503347515797e-06, -6.370108469568940511e-06, -6.367200425472453755e-06, -6.364282377038056466e-06, -6.361354330261456962e-06, -6.358416291153536462e-06, -6.355468265740976738e-06, -6.352510260066333805e-06, -6.349542280186957956e-06, -6.346564332176219420e-06, -6.343576422122950162e-06, -6.340578556131011902e-06, -6.337570740320540404e-06, -6.334552980826344583e-06, -6.331525283799137244e-06, -6.328487655404924374e-06, -6.325440101825294823e-06, -6.322382629256724893e-06, -6.319315243912000505e-06, -6.316237952018363893e-06, -6.313150759818989978e-06, -6.310053673572400225e-06, -6.306946699551958659e-06, -6.303829844047117000e-06, -6.300703113362309286e-06, -6.297566513816980675e-06, -6.294420051746287092e-06, -6.291263733500698815e-06, -6.288097565445443980e-06, -6.284921553961881617e-06, -6.281735705445722882e-06, -6.278540026308521838e-06, -6.275334522976946152e-06, -6.272119201892440832e-06, -6.268894069512414068e-06, -6.265659132309038679e-06, -6.262414396769470653e-06, -6.259159869396403949e-06, -6.255895556707665615e-06, -6.252621465235716043e-06, -6.249337601528917820e-06, -6.246043972150393929e-06, -6.242740583678055703e-06, -6.239427442705360068e-06, -6.236104555840670038e-06, -6.232771929707428354e-06, -6.229429570944259974e-06, -6.226077486204454539e-06, -6.222715682156697361e-06, -6.219344165484705199e-06, -6.215962942886654509e-06, -6.212572021076554489e-06, -6.209171406782957046e-06, -6.205761106749069450e-06, -6.202341127733551393e-06, -6.198911476509778070e-06, -6.195472159866098526e-06, -6.192023184605901723e-06, -6.188564557547068507e-06, -6.185096285522761048e-06, -6.181618375380909534e-06, -6.178130833984267232e-06, -6.174633668210485868e-06, -6.171126884952145279e-06, -6.167610491116221474e-06, -6.164084493624992111e-06, -6.160548899415313133e-06, -6.157003715438866099e-06, -6.153448948662080262e-06, -6.149884606066295193e-06, -6.146310694647147532e-06, -6.142727221415471387e-06, -6.139134193396619854e-06, -6.135531617630719982e-06, -6.131919501172680387e-06, -6.128297851091655090e-06, -6.124666674471914258e-06, -6.121025978412236887e-06, -6.117375770025980258e-06, -6.113716056441221390e-06, -6.110046844800740945e-06, -6.106368142261465884e-06, -6.102679955995362239e-06, -6.098982293188812541e-06, -6.095275161042775911e-06, -6.091558566772716910e-06, -6.087832517608797815e-06, -6.084097020795260283e-06, -6.080352083591287635e-06, -6.076597713270382280e-06, -6.072833917120551223e-06, -6.069060702444381446e-06, -6.065278076558480865e-06, -6.061486046794179680e-06, -6.057684620497674362e-06, -6.053873805028673253e-06, -6.050053607761891581e-06, -6.046224036086384836e-06, -6.042385097404999056e-06, -6.038536799135991194e-06, -6.034679148710873423e-06, -6.030812153576071624e-06, -6.026935821192410392e-06, -6.023050159034436256e-06, -6.019155174591328237e-06, -6.015250875367049471e-06, -6.011337268878776807e-06, -6.007414362658650780e-06, -6.003482164252985326e-06, -5.999540681221641824e-06, -5.995589921139724861e-06, -5.991629891595966088e-06, -5.987660600192974099e-06, -5.983682054547982356e-06, -5.979694262292367233e-06, -5.975697231070988172e-06, -5.971690968543949515e-06, -5.967675482384301655e-06, -5.963650780279869783e-06, -5.959616869932491553e-06, -5.955573759057426705e-06, -5.951521455384996918e-06, -5.947459966659012024e-06, -5.943389300636933485e-06, -5.939309465090814600e-06, -5.935220467806601700e-06, -5.931122316583585277e-06, -5.927015019236157571e-06, -5.922898583591510337e-06, -5.918773017491381427e-06, -5.914638328791283143e-06, -5.910494525360625056e-06, -5.906341615082685208e-06, -5.902179605854793918e-06, -5.898008505587600249e-06, -5.893828322206111323e-06, -5.889639063648996054e-06, -5.885440737868719828e-06, -5.881233352831523329e-06, -5.877016916517650391e-06, -5.872791436920555171e-06, -5.868556922047939769e-06, -5.864313379921106245e-06, -5.860060818575048102e-06, -5.855799246058681520e-06, -5.851528670434023739e-06, -5.847249099777304367e-06, -5.842960542178304689e-06, -5.838663005740390706e-06, -5.834356498580558025e-06, -5.830041028829632610e-06, -5.825716604631468634e-06, -5.821383234144036925e-06, -5.817040925538732087e-06, -5.812689687000501253e-06, -5.808329526727814436e-06, -5.803960452932855111e-06, -5.799582473840760430e-06, -5.795195597690733374e-06, -5.790799832735240611e-06, -5.786395187240248823e-06, -5.781981669485325496e-06, -5.777559287762968079e-06, -5.773128050379590769e-06, -5.768687965654856205e-06, -5.764239041921805913e-06, -5.759781287526879785e-06, -5.755314710830016032e-06, -5.750839320203971012e-06, -5.746355124035399201e-06, -5.741862130724043429e-06, -5.737360348682972046e-06, -5.732849786338509469e-06, -5.728330452130458104e-06, -5.723802354511321614e-06, -5.719265501947332374e-06, -5.714719902917842451e-06, -5.710165565915358334e-06, -5.705602499445770481e-06, -5.701030712027581668e-06, -5.696450212192816707e-06, -5.691861008487243519e-06, -5.687263109468587588e-06, -5.682656523708437789e-06, -5.678041259791534874e-06, -5.673417326314872776e-06, -5.668784731889884799e-06, -5.664143485139682289e-06, -5.659493594701218804e-06, -5.654835069224429530e-06, -5.650167917371662921e-06, -5.645492147818703067e-06, -5.640807769254834069e-06, -5.636114790381125644e-06, -5.631413219912380457e-06, -5.626703066576319269e-06, -5.621984339112796589e-06, -5.617257046275699721e-06, -5.612521196831264864e-06, -5.607776799558143176e-06, -5.603023863248440936e-06, -5.598262396707071559e-06, -5.593492408750979717e-06, -5.588713908211296189e-06, -5.583926903930559597e-06, -5.579131404764800945e-06, -5.574327419582895650e-06, -5.569514957265580976e-06, -5.564694026707539738e-06, -5.559864636815513957e-06, -5.555026796508569987e-06, -5.550180514719053116e-06, -5.545325800391878599e-06, -5.540462662483914175e-06, -5.535591109965949417e-06, -5.530711151820017411e-06, -5.525822797041524202e-06, -5.520926054638273007e-06, -5.516020933630556544e-06, -5.511107443051281548e-06, -5.506185591946033140e-06, -5.501255389372296409e-06, -5.496316844400671054e-06, -5.491369966114020964e-06, -5.486414763607627533e-06, -5.481451245989274358e-06, -5.476479422379335336e-06, -5.471499301909947958e-06, -5.466510893726323667e-06, -5.461514206985807653e-06, -5.456509250858082989e-06, -5.451496034525420504e-06, -5.446474567181736036e-06, -5.441444858033930439e-06, -5.436406916300959538e-06, -5.431360751214072995e-06, -5.426306372016750782e-06, -5.421243787964963217e-06, -5.416173008326214667e-06, -5.411094042380921669e-06, -5.406006899421415124e-06, -5.400911588752243538e-06, -5.395808119690070529e-06, -5.390696501563982299e-06, -5.385576743714508467e-06, -5.380448855494900238e-06, -5.375312846270306242e-06, -5.370168725417988529e-06, -5.365016502327434374e-06, -5.359856186399535503e-06, -5.354687787047866268e-06, -5.349511313697779013e-06, -5.344326775786622610e-06, -5.339134182763730600e-06, -5.333933544090580436e-06, -5.328724869239942213e-06, -5.323508167697197501e-06, -5.318283448959367795e-06, -5.313050722535408439e-06, -5.307809997946332290e-06, -5.302561284724352522e-06, -5.297304592413966828e-06, -5.292039930572144613e-06, -5.286767308766349175e-06, -5.281486736576696789e-06, -5.276198223595085111e-06, -5.270901779424515553e-06, -5.265597413680127508e-06, -5.260285135989476178e-06, -5.254964955990466662e-06, -5.249636883333568945e-06, -5.244300927680961547e-06, -5.238957098705523557e-06, -5.233605406093390129e-06, -5.228245859540686324e-06, -5.222878468756062278e-06, -5.217503243459742834e-06, -5.212120193382842289e-06, -5.206729328268485868e-06, -5.201330657871941013e-06, -5.195924191958698854e-06, -5.190509940306646000e-06, -5.185087912705104007e-06, -5.179658118953980647e-06, -5.174220568866181413e-06, -5.168775272264467026e-06, -5.163322238983897127e-06, -5.157861478870739294e-06, -5.152393001782806167e-06, -5.146916817588377171e-06, -5.141432936168654065e-06, -5.135941367414560006e-06, -5.130442121229256930e-06, -5.124935207527154523e-06, -5.119420636233024226e-06, -5.113898417284290457e-06, -5.108368560628887619e-06, -5.102831076225512516e-06, -5.097285974044749213e-06, -5.091733264068348209e-06, -5.086172956288321808e-06, -5.080605060709408137e-06, -5.075029587345884607e-06, -5.069446546224070052e-06, -5.063855947381313366e-06, -5.058257800865159180e-06, -5.052652116735596733e-06, -5.047038905062916879e-06, -5.041418175927996690e-06, -5.035789939423431089e-06, -5.030154205652515571e-06, -5.024510984729527409e-06, -5.018860286779708719e-06, -5.013202121939451113e-06, -5.007536500355347019e-06, -5.001863432185594910e-06, -4.996182927599027760e-06, -4.990494996775370538e-06, -4.984799649905368112e-06, -4.979096897189917886e-06, -4.973386748841405574e-06, -4.967669215082783625e-06, -4.961944306147758416e-06, -4.956212032280801270e-06, -4.950472403737339030e-06, -4.944725430782804543e-06, -4.938971123694049504e-06, -4.933209492758331410e-06, -4.927440548273598159e-06, -4.921664300548695576e-06, -4.915880759902303539e-06, -4.910089936664473341e-06, -4.904291841175633279e-06, -4.898486483786716551e-06, -4.892673874859261205e-06, -4.886854024765523649e-06, -4.881026943887600268e-06, -4.875192642618763203e-06, -4.869351131362543856e-06, -4.863502420532961592e-06, -4.857646520554417012e-06, -4.851783441862023988e-06, -4.845913194900539865e-06, -4.840035790125839293e-06, -4.834151238003952001e-06, -4.828259549011216956e-06, -4.822360733634591528e-06, -4.816454802370551201e-06, -4.810541765726413475e-06, -4.804621634220489496e-06, -4.798694418379852114e-06, -4.792760128742810921e-06, -4.786818775857912750e-06, -4.780870370283120048e-06, -4.774914922587377896e-06, -4.768952443349515399e-06, -4.762982943158505732e-06, -4.757006432613441568e-06, -4.751022922323825619e-06, -4.745032422908161168e-06, -4.739034944996875180e-06, -4.733030499228616768e-06, -4.727019096253111697e-06, -4.721000746730107826e-06, -4.714975461328546707e-06, -4.708943250727912066e-06, -4.702904125618378878e-06, -4.696858096698505204e-06, -4.690805174677882556e-06, -4.684745370275917017e-06, -4.678678694220927148e-06, -4.672605157252864664e-06, -4.666524770119742492e-06, -4.660437543580434213e-06, -4.654343488403357777e-06, -4.648242615366981181e-06, -4.642134935258547681e-06, -4.636020458876788842e-06, -4.629899197028453397e-06, -4.623771160530942363e-06, -4.617636360211428131e-06, -4.611494806905696569e-06, -4.605346511460744026e-06, -4.599191484732450534e-06, -4.593029737585795797e-06, -4.586861280896106877e-06, -4.580686125548081559e-06, -4.574504282435939127e-06, -4.568315762463744774e-06, -4.562120576544280511e-06, -4.555918735600618105e-06, -4.549710250565359289e-06, -4.543495132379475330e-06, -4.537273391994993817e-06, -4.531045040372574448e-06, -4.524810088481771619e-06, -4.518568547302310895e-06, -4.512320427823014126e-06, -4.506065741042137419e-06, -4.499804497967183089e-06, -4.493536709615266431e-06, -4.487262387012020500e-06, -4.480981541193139413e-06, -4.474694183203305995e-06, -4.468400324096459451e-06, -4.462099974936013048e-06, -4.455793146793797021e-06, -4.449479850751622192e-06, -4.443160097900172900e-06, -4.436833899339311090e-06, -4.430501266178011082e-06, -4.424162209534607761e-06, -4.417816740535733545e-06, -4.411464870317897257e-06, -4.405106610026369428e-06, -4.398741970815486382e-06, -4.392370963848814564e-06, -4.385993600298143413e-06, -4.379609891345005786e-06, -4.373219848179631030e-06, -4.366823482001227041e-06, -4.360420804017827797e-06, -4.354011825446698242e-06, -4.347596557513150980e-06, -4.341175011452141238e-06, -4.334747198507216545e-06, -4.328313129930724255e-06, -4.321872816983807313e-06, -4.315426270936685468e-06, -4.308973503067488064e-06, -4.302514524663897281e-06, -4.296049347022073254e-06, -4.289577981446844650e-06, -4.283100439252009371e-06, -4.276616731759185972e-06, -4.270126870299192634e-06, -4.263630866212319907e-06, -4.257128730845759119e-06, -4.250620475556422994e-06, -4.244106111709759809e-06, -4.237585650678946167e-06, -4.231059103846505681e-06, -4.224526482603207830e-06, -4.217987798348279717e-06, -4.211443062489423856e-06, -4.204892286443066353e-06, -4.198335481632927964e-06, -4.191772659493112371e-06, -4.185203831464131064e-06, -4.178629008996001781e-06, -4.172048203547060973e-06, -4.165461426583159966e-06, -4.158868689579002426e-06, -4.152270004018401015e-06, -4.145665381391782872e-06, -4.139054833198934003e-06, -4.132438370947859178e-06, -4.125816006153661299e-06, -4.119187750341592419e-06, -4.112553615043096402e-06, -4.105913611798904827e-06, -4.099267752157860462e-06, -4.092616047676076158e-06, -4.085958509918316360e-06, -4.079295150458270701e-06, -4.072625980875986640e-06, -4.065951012760628255e-06, -4.059270257709434388e-06, -4.052583727326450637e-06, -4.045891433225386399e-06, -4.039193387027102570e-06, -4.032489600359779260e-06, -4.025780084860345580e-06, -4.019064852173397136e-06, -4.012343913951336638e-06, -4.005617281854719488e-06, -3.998884967551087414e-06, -3.992146982716627812e-06, -3.985403339035339414e-06, -3.978654048197833738e-06, -3.971899121904187897e-06, -3.965138571861364533e-06, -3.958372409783426965e-06, -3.951600647393015570e-06, -3.944823296420156851e-06, -3.938040368602508229e-06, -3.931251875685648580e-06, -3.924457829421921183e-06, -3.917658241572088827e-06, -3.910853123904216568e-06, -3.904042488193909753e-06, -3.897226346224299616e-06, -3.890404709786347362e-06, -3.883577590677565151e-06, -3.876745000703857542e-06, -3.869906951678271280e-06, -3.863063455421280740e-06, -3.856214523760782846e-06, -3.849360168532310524e-06, -3.842500401577932409e-06, -3.835635234747896082e-06, -3.828764679899517617e-06, -3.821888748897425522e-06, -3.815007453613795370e-06, -3.808120805927212230e-06, -3.801228817724363467e-06, -3.794331500898887197e-06, -3.787428867351627246e-06, -3.780520928990576397e-06, -3.773607697731252474e-06, -3.766689185495376125e-06, -3.759765404212683045e-06, -3.752836365819741522e-06, -3.745902082260173933e-06, -3.738962565484678345e-06, -3.732017827451302107e-06, -3.725067880124211958e-06, -3.718112735475460512e-06, -3.711152405483779239e-06, -3.704186902134897372e-06, -3.697216237421725287e-06, -3.690240423343235155e-06, -3.683259471905889880e-06, -3.676273395123920083e-06, -3.669282205016631382e-06, -3.662285913611352069e-06, -3.655284532942235401e-06, -3.648278075049313895e-06, -3.641266551980316205e-06, -3.634249975789426650e-06, -3.627228358537547366e-06, -3.620201712292618485e-06, -3.613170049128340387e-06, -3.606133381125730124e-06, -3.599091720373319199e-06, -3.592045078964481179e-06, -3.584993469000426805e-06, -3.577936902588931322e-06, -3.570875391843426460e-06, -3.563808948884530602e-06, -3.556737585840298233e-06, -3.549661314843430660e-06, -3.542580148034386741e-06, -3.535494097560045421e-06, -3.528403175572542332e-06, -3.521307394232574912e-06, -3.514206765705094827e-06, -3.507101302162689740e-06, -3.499991015784256866e-06, -3.492875918754169485e-06, -3.485756023263722834e-06, -3.478631341511431409e-06, -3.471501885700228253e-06, -3.464367668040598133e-06, -3.457228700749198145e-06, -3.450084996047701089e-06, -3.442936566166143794e-06, -3.435783423338584375e-06, -3.428625579806442937e-06, -3.421463047816998934e-06, -3.414295839623624951e-06, -3.407123967485824398e-06, -3.399947443669447927e-06, -3.392766280445476667e-06, -3.385580490091877230e-06, -3.378390084892594160e-06, -3.371195077136352235e-06, -3.363995479119690108e-06, -3.356791303144186705e-06, -3.349582561516709401e-06, -3.342369266550964937e-06, -3.335151430566235228e-06, -3.327929065887697959e-06, -3.320702184846651899e-06, -3.313470799779306069e-06, -3.306234923028581801e-06, -3.298994566942921810e-06, -3.291749743876473158e-06, -3.284500466189178303e-06, -3.277246746246980510e-06, -3.269988596420588449e-06, -3.262726029087326121e-06, -3.255459056629856372e-06, -3.248187691436520983e-06, -3.240911945901221234e-06, -3.233631832423807965e-06, -3.226347363408739876e-06, -3.219058551266974103e-06, -3.211765408414705410e-06, -3.204467947273609712e-06, -3.197166180271204486e-06, -3.189860119839501989e-06, -3.182549778416921437e-06, -3.175235168446984571e-06, -3.167916302378633720e-06, -3.160593192666181823e-06, -3.153265851769633885e-06, -3.145934292153379150e-06, -3.138598526288100317e-06, -3.131258566649445394e-06, -3.123914425718338556e-06, -3.116566115980972947e-06, -3.109213649929110527e-06, -3.101857040058759860e-06, -3.094496298872066258e-06, -3.087131438876067925e-06, -3.079762472582944550e-06, -3.072389412510307846e-06, -3.065012271179957682e-06, -3.057631061119383445e-06, -3.050245794862140973e-06, -3.042856484944898951e-06, -3.035463143910628410e-06, -3.028065784307329641e-06, -3.020664418687000508e-06, -3.013259059607581232e-06, -3.005849719631637259e-06, -2.998436411326643862e-06, -2.991019147265302082e-06, -2.983597940024234301e-06, -2.976172802185567344e-06, -2.968743746337239527e-06, -2.961310785070036894e-06, -2.953873930980867841e-06, -2.946433196671401937e-06, -2.938988594747093293e-06, -2.931540137818762824e-06, -2.924087838502945525e-06, -2.916631709418894947e-06, -2.909171763191845114e-06, -2.901708012451659510e-06, -2.894240469831542741e-06, -2.886769147971579438e-06, -2.879294059514161125e-06, -2.871815217107536984e-06, -2.864332633404506879e-06, -2.856846321061081356e-06, -2.849356292739731278e-06, -2.841862561106420674e-06, -2.834365138830929879e-06, -2.826864038588428474e-06, -2.819359273058527884e-06, -2.811850854923913413e-06, -2.804338796873939058e-06, -2.796823111599998047e-06, -2.789303811799145175e-06, -2.781780910172412905e-06, -2.774254419425106982e-06, -2.766724352266800501e-06, -2.759190721411656630e-06, -2.751653539577055144e-06, -2.744112819485591847e-06, -2.736568573864000299e-06, -2.729020815441895242e-06, -2.721469556954981586e-06, -2.713914811142116474e-06, -2.706356590745555343e-06, -2.698794908512662090e-06, -2.691229777194483083e-06, -2.683661209546127910e-06, -2.676089218327028991e-06, -2.668513816299615971e-06, -2.660935016231274487e-06, -2.653352830893357677e-06, -2.645767273059792388e-06, -2.638178355510423263e-06, -2.630586091027956647e-06, -2.622990492398317186e-06, -2.615391572412244907e-06, -2.607789343863986556e-06, -2.600183819551569184e-06, -2.592575012276797189e-06, -2.584962934845576298e-06, -2.577347600066540536e-06, -2.569729020753015216e-06, -2.562107209721710397e-06, -2.554482179792979227e-06, -2.546853943791179623e-06, -2.539222514543268202e-06, -2.531587904880840355e-06, -2.523950127638711047e-06, -2.516309195655275649e-06, -2.508665121772445569e-06, -2.501017918836025174e-06, -2.493367599694274385e-06, -2.485714177199955944e-06, -2.478057664208936551e-06, -2.470398073580537102e-06, -2.462735418177808829e-06, -2.455069710866193713e-06, -2.447400964515504001e-06, -2.439729191998575003e-06, -2.432054406191544607e-06, -2.424376619973884203e-06, -2.416695846228680315e-06, -2.409012097841253939e-06, -2.401325387700858425e-06, -2.393635728700964498e-06, -2.385943133736218987e-06, -2.378247615705798656e-06, -2.370549187512035887e-06, -2.362847862059389118e-06, -2.355143652256422354e-06, -2.347436571014486339e-06, -2.339726631247955722e-06, -2.332013845874620393e-06, -2.324298227814286179e-06, -2.316579789990420628e-06, -2.308858545330498603e-06, -2.301134506762930940e-06, -2.293407687220422928e-06, -2.285678099638584759e-06, -2.277945756954922283e-06, -2.270210672110828385e-06, -2.262472858050208249e-06, -2.254732327719804620e-06, -2.246989094069176203e-06, -2.239243170051005138e-06, -2.231494568619381334e-06, -2.223743302733521367e-06, -2.215989385352995871e-06, -2.208232829441429804e-06, -2.200473647965137032e-06, -2.192711853891719756e-06, -2.184947460193485021e-06, -2.177180479844315780e-06, -2.169410925820024947e-06, -2.161638811100004998e-06, -2.153864148666219157e-06, -2.146086951501792773e-06, -2.138307232594739425e-06, -2.130525004933203134e-06, -2.122740281509127710e-06, -2.114953075316914631e-06, -2.107163399352033906e-06, -2.099371266614396961e-06, -2.091576690105272593e-06, -2.083779682827607993e-06, -2.075980257787718159e-06, -2.068178427994238955e-06, -2.060374206456716383e-06, -2.052567606189045115e-06, -2.044758640206323452e-06, -2.036947321525217134e-06, -2.029133663165612741e-06, -2.021317678149248891e-06, -2.013499379500036842e-06, -2.005678780244367965e-06, -1.997855893409731385e-06, -1.990030732026743048e-06, -1.982203309128101333e-06, -1.974373637747196643e-06, -1.966541730921503774e-06, -1.958707601689501681e-06, -1.950871263090960195e-06, -1.943032728168663316e-06, -1.935192009966996782e-06, -1.927349121532272908e-06, -1.919504075913069821e-06, -1.911656886158807600e-06, -1.903807565321801482e-06, -1.895956126455886282e-06, -1.888102582616697182e-06, -1.880246946861678840e-06, -1.872389232250407046e-06, -1.864529451843161478e-06, -1.856667618703014903e-06, -1.848803745894391741e-06, -1.840937846483418102e-06, -1.833069933537897431e-06, -1.825200020127616080e-06, -1.817328119322962004e-06, -1.809454244196954678e-06, -1.801578407823869516e-06, -1.793700623279532001e-06, -1.785820903641667724e-06, -1.777939261988472378e-06, -1.770055711400696733e-06, -1.762170264960202228e-06, -1.754282935750320329e-06, -1.746393736855817800e-06, -1.738502681363210740e-06, -1.730609782359376082e-06, -1.722715052933597605e-06, -1.714818506176165786e-06, -1.706920155178693109e-06, -1.699020013034093100e-06, -1.691118092836922953e-06, -1.683214407681951620e-06, -1.675308970666227207e-06, -1.667401794887688052e-06, -1.659492893445454949e-06, -1.651582279440175684e-06, -1.643669965972608578e-06, -1.635755966145342392e-06, -1.627840293063127302e-06, -1.619922959829706997e-06, -1.612003979551288975e-06, -1.604083365335135711e-06, -1.596161130288131694e-06, -1.588237287520610529e-06, -1.580311850141448078e-06, -1.572384831261876015e-06, -1.564456243993715970e-06, -1.556526101450048901e-06, -1.548594416743479520e-06, -1.540661202989916817e-06, -1.532726473303668675e-06, -1.524790240801293758e-06, -1.516852518600142916e-06, -1.508913319816973229e-06, -1.500972657571395644e-06, -1.493030544982728668e-06, -1.485086995170310292e-06, -1.477142021255228897e-06, -1.469195636359258965e-06, -1.461247853603434033e-06, -1.453298686111877404e-06, -1.445348147006879612e-06, -1.437396249412721296e-06, -1.429443006454269665e-06, -1.421488431255535790e-06, -1.413532536943165013e-06, -1.405575336643258882e-06, -1.397616843481712481e-06, -1.389657070585935389e-06, -1.381696031083782934e-06, -1.373733738102133393e-06, -1.365770204770373533e-06, -1.357805444217216726e-06, -1.349839469571030757e-06, -1.341872293961582709e-06, -1.333903930518595196e-06, -1.325934392372095127e-06, -1.317963692652726477e-06, -1.309991844490345479e-06, -1.302018861016070868e-06, -1.294044755361257278e-06, -1.286069540656019500e-06, -1.278093230032762277e-06, -1.270115836622972169e-06, -1.262137373557552765e-06, -1.254157853968582065e-06, -1.246177290987856856e-06, -1.238195697747224532e-06, -1.230213087378935466e-06, -1.222229473014196485e-06, -1.214244867785264312e-06, -1.206259284824014086e-06, -1.198272737262286212e-06, -1.190285238231836819e-06, -1.182296800864689062e-06, -1.174307438291702909e-06, -1.166317163644651216e-06, -1.158325990054811326e-06, -1.150333930653273810e-06, -1.142340998570936964e-06, -1.134347206938836303e-06, -1.126352568886705028e-06, -1.118357097545065140e-06, -1.110360806043816707e-06, -1.102363707512547663e-06, -1.094365815080874743e-06, -1.086367141877000984e-06, -1.078367701029834577e-06, -1.070367505667530702e-06, -1.062366568917834784e-06, -1.054364903908058995e-06, -1.046362523765415553e-06, -1.038359441615581008e-06, -1.030355670584794762e-06, -1.022351223798421444e-06, -1.014346114381299041e-06, -1.006340355457686591e-06, -9.983339601516303177e-07, -9.903269415854986824e-07, -9.823193128821069570e-07, -9.743110871632603262e-07, -9.663022775501071010e-07, -9.582928971634580496e-07, -9.502829591223423123e-07, -9.422724765457752651e-07, -9.342614625530831452e-07, -9.262499302606848550e-07, -9.182378927856248306e-07, -9.102253632441324509e-07, -9.022123547501791166e-07, -8.941988804193633787e-07, -8.861849533639117501e-07, -8.781705866965769626e-07, -8.701557935291813887e-07, -8.621405869715425794e-07, -8.541249801332183645e-07, -8.461089861238528649e-07, -8.380926180499428392e-07, -8.300758890183798692e-07, -8.220588121350042626e-07, -8.140414005031630860e-07, -8.060236672272436681e-07, -7.980056254094506398e-07, -7.899872881501391353e-07, -7.819686685495830796e-07, -7.739497797068718222e-07, -7.659306347184736751e-07, -7.579112466821229467e-07, -7.498916286918276357e-07, -7.418717938417530775e-07, -7.338517552247798699e-07, -7.258315259310636001e-07, -7.178111190515622070e-07, -7.097905476748227622e-07, -7.017698248873099067e-07, -6.937489637751675737e-07, -6.857279774231270572e-07, -6.777068789130607031e-07, -6.696856813278830257e-07, -6.616643977465418838e-07, -6.536430412479091151e-07, -6.456216249089887438e-07, -6.376001618052407587e-07, -6.295786650105705259e-07, -6.215571475976563781e-07, -6.135356226365081765e-07, -6.055141031965800231e-07, -5.974926023453279749e-07, -5.894711331485383752e-07, -5.814497086703191715e-07, -5.734283419734188235e-07, -5.654070461177948172e-07, -5.573858341627199185e-07, -5.493647191653440169e-07, -5.413437141810251037e-07, -5.333228322636597207e-07, -5.253020864642457571e-07, -5.172814898329975967e-07, -5.092610554178923974e-07, -5.012407962650121869e-07, -4.932207254185219454e-07, -4.852008559210053486e-07, -4.771812008120130590e-07, -4.691617731301865020e-07, -4.611425859118099694e-07, -4.531236521911404852e-07, -4.451049850003929831e-07, -4.370865973700748841e-07, -4.290685023275393645e-07, -4.210507128990978030e-07, -4.130332421085783951e-07, -4.050161029776622670e-07, -3.969993085262159354e-07, -3.889828717708442047e-07, -3.809668057270115617e-07, -3.729511234075905718e-07, -3.649358378232022284e-07, -3.569209619821917590e-07, -3.489065088909654269e-07, -3.408924915525422634e-07, -3.328789229686747209e-07, -3.248658161383985526e-07, -3.168531840583721018e-07, -3.088410397228515794e-07, -3.008293961240305651e-07, -2.928182662505878755e-07, -2.848076630898117638e-07, -2.767975996261488992e-07, -2.687880888415400571e-07, -2.607791437157597261e-07, -2.527707772249629171e-07, -2.447630023434542975e-07, -2.367558320440162047e-07, -2.287492792946846272e-07, -2.207433570622923164e-07, -2.127380783110199903e-07, -2.047334560009512948e-07, -1.967295030919726497e-07, -1.887262325387643718e-07, -1.807236572946951741e-07, -1.727217903103822093e-07, -1.647206445325956714e-07, -1.567202329060229266e-07, -1.487205683736045742e-07, -1.407216638733038093e-07, -1.327235323416513357e-07, -1.247261867122987923e-07, -1.167296399145722586e-07, -1.087339048773710422e-07, -1.007389945241591461e-07, -9.274492177686361852e-08, -8.475169955407208062e-08, -7.675934077172475190e-08, -6.876785834131327456e-08, -6.077726517377744884e-08, -5.278757417449733601e-08, -4.479879824719275319e-08, -3.681095029247540291e-08, -2.882404320640513850e-08, -2.083808988403051553e-08, -1.285310321616270467e-08, -4.869096089710739720e-09, 3.113918610557823874e-09, 1.109592800310641635e-08, 1.907691921107420148e-08, 2.705687935837975892e-08, 3.503579557472688395e-08, 4.301365499170816595e-08, 5.099044474460639924e-08, 5.896615197205817860e-08, 6.694076381607553836e-08, 7.491426742170949501e-08, 8.288664993849538319e-08, 9.085789851833722547e-08, 9.882800031695132795e-08, 1.067969424935328537e-07, 1.147647122107740737e-07, 1.227312966345305695e-07, 1.306966829352640616e-07, 1.386608582859292999e-07, 1.466238098634149336e-07, 1.545855248482123868e-07, 1.625459904240783959e-07, 1.705051937794757326e-07, 1.784631221054647014e-07, 1.864197625971423803e-07, 1.943751024533089695e-07, 2.023291288764875908e-07, 2.102818290725898947e-07, 2.182331902523572080e-07, 2.261831996292496477e-07, 2.341318444208875861e-07, 2.420791118487168080e-07, 2.500249891380275164e-07, 2.579694635176203359e-07, 2.659125222212499491e-07, 2.738541524855100810e-07, 2.817943415512780081e-07, 2.897330766633762218e-07, 2.976703450702427735e-07, 3.056061340253650369e-07, 3.135404307851771075e-07, 3.214732226104927175e-07, 3.294044967661773282e-07, 3.373342405211651238e-07, 3.452624411481229509e-07, 3.531890859248935568e-07, 3.611141621323835127e-07, 3.690376570560042819e-07, 3.769595579853407118e-07, 3.848798522138077738e-07, 3.927985270400983549e-07, 4.007155697664273577e-07, 4.086309676981966993e-07, 4.165447081472049310e-07, 4.244567784281260690e-07, 4.323671658599443625e-07, 4.402758577670390253e-07, 4.481828414774314602e-07, 4.560881043224558155e-07, 4.639916336399595525e-07, 4.718934167707875174e-07, 4.797934410602168149e-07, 4.876916938593907826e-07, 4.955881625214513850e-07, 5.034828344065083856e-07, 5.113756968777653358e-07, 5.192667373029655658e-07, 5.271559430554595524e-07, 5.350433015124661716e-07, 5.429288000547375916e-07, 5.508124260697573514e-07, 5.586941669482259153e-07, 5.665740100855018994e-07, 5.744519428830257222e-07, 5.823279527444608402e-07, 5.902020270806509024e-07, 5.980741533057643736e-07, 6.059443188390730924e-07, 6.138125111042687152e-07, 6.216787175312445560e-07, 6.295429255522387277e-07, 6.374051226067919322e-07, 6.452652961378848834e-07, 6.531234335933718056e-07, 6.609795224274008012e-07, 6.688335500969297928e-07, 6.766855040648934731e-07, 6.845353717998886327e-07, 6.923831407744286365e-07, 7.002287984660118501e-07, 7.080723323585589487e-07, 7.159137299385562705e-07, 7.237529787000033358e-07, 7.315900661405649882e-07, 7.394249797629922924e-07, 7.472577070765576198e-07, 7.550882355935464498e-07, 7.629165528324544955e-07, 7.707426463176419027e-07, 7.785665035776122906e-07, 7.863881121464208381e-07, 7.942074595633525175e-07, 8.020245333729431640e-07, 8.098393211246424628e-07, 8.176518103742411995e-07, 8.254619886817775005e-07, 8.332698436129765773e-07, 8.410753627389024900e-07, 8.488785336356368045e-07, 8.566793438856923957e-07, 8.644777810759484878e-07, 8.722738327990438113e-07, 8.800674866530661655e-07, 8.878587302415689357e-07, 8.956475511732384208e-07, 9.034339370633090142e-07, 9.112178755314918898e-07, 9.189993542033804420e-07, 9.267783607101453534e-07, 9.345548826881717477e-07, 9.423289077804982980e-07, 9.501004236347405140e-07, 9.578694179044919465e-07, 9.656358782490105732e-07, 9.733997923332322452e-07, 9.811611478274387566e-07, 9.889199324086769414e-07, 9.966761337586773026e-07, 1.004429739565281686e-06, 1.012180737522098749e-06, 1.019929115328539749e-06, 1.027674860689469140e-06, 1.035417961316642414e-06, 1.043158404926611176e-06, 1.050896179242155261e-06, 1.058631271991938211e-06, 1.066363670910181371e-06, 1.074093363738093262e-06, 1.081820338222120246e-06, 1.089544582113637780e-06, 1.097266083172101593e-06, 1.104984829161573579e-06, 1.112700807852138882e-06, 1.120414007020982266e-06, 1.128124414450295940e-06, 1.135832017928709143e-06, 1.143536805250952713e-06, 1.151238764217874761e-06, 1.158937882636122822e-06, 1.166634148319885351e-06, 1.174327549087102314e-06, 1.182018072764342825e-06, 1.189705707183000061e-06, 1.197390440180705385e-06, 1.205072259602385234e-06, 1.212751153298543754e-06, 1.220427109124946649e-06, 1.228100114945735085e-06, 1.235770158630011934e-06, 1.243437228053221382e-06, 1.251101311098553730e-06, 1.258762395653179911e-06, 1.266420469613092494e-06, 1.274075520879324529e-06, 1.281727537359697401e-06, 1.289376506968159506e-06, 1.297022417626510602e-06, 1.304665257260647333e-06, 1.312305013805386870e-06, 1.319941675200729590e-06, 1.327575229393214119e-06, 1.335205664337333357e-06, 1.342832967992125380e-06, 1.350457128324254742e-06, 1.358078133307724898e-06, 1.365695970922151110e-06, 1.373310629154163344e-06, 1.380922095997084182e-06, 1.388530359450597638e-06, 1.396135407522148453e-06, 1.403737228224894181e-06, 1.411335809578752547e-06, 1.418931139611813450e-06, 1.426523206356885395e-06, 1.434111997854645828e-06, 1.441697502153294478e-06, 1.449279707306855487e-06, 1.456858601376566329e-06, 1.464434172430577537e-06, 1.472006408543934281e-06, 1.479575297798281176e-06, 1.487140828283237653e-06, 1.494702988094372702e-06, 1.502261765334575371e-06, 1.509817148113744117e-06, 1.517369124548467478e-06, 1.524917682763391178e-06, 1.532462810889206005e-06, 1.540004497064020001e-06, 1.547542729433049087e-06, 1.555077496148610920e-06, 1.562608785369836053e-06, 1.570136585264019590e-06, 1.577660884004603344e-06, 1.585181669772577246e-06, 1.592698930756117881e-06, 1.600212655150316164e-06, 1.607722831158512050e-06, 1.615229446990285377e-06, 1.622732490862852405e-06, 1.630231951000727856e-06, 1.637727815635737193e-06, 1.645220073006709359e-06, 1.652708711360844946e-06, 1.660193718951712541e-06, 1.667675084040594659e-06, 1.675152794896197425e-06, 1.682626839794646548e-06, 1.690097207019184085e-06, 1.697563884861523692e-06, 1.705026861619862003e-06, 1.712486125600218428e-06, 1.719941665116140803e-06, 1.727393468488381190e-06, 1.734841524046251346e-06, 1.742285820125966131e-06, 1.749726345070318678e-06, 1.757163087231742835e-06, 1.764596034968930119e-06, 1.772025176648258234e-06, 1.779450500644737633e-06, 1.786871995340078589e-06, 1.794289649124012564e-06, 1.801703450394004854e-06, 1.809113387555232356e-06, 1.816519449020313573e-06, 1.823921623210977273e-06, 1.831319898554385304e-06, 1.838714263487860098e-06, 1.846104706455205159e-06, 1.853491215908074717e-06, 1.860873780306984659e-06, 1.868252388119652771e-06, 1.875627027820711805e-06, 1.882997687894695479e-06, 1.890364356832734839e-06, 1.897727023133931514e-06, 1.905085675306659175e-06, 1.912440301864974453e-06, 1.919790891333242154e-06, 1.927137432242539823e-06, 1.934479913131971277e-06, 1.941818322549701044e-06, 1.949152649051297143e-06, 1.956482881199427424e-06, 1.963809007566859758e-06, 1.971131016733162419e-06, 1.978448897286049174e-06, 1.985762637822725641e-06, 1.993072226946588403e-06, 2.000377653270217995e-06, 2.007678905415089224e-06, 2.014975972009896158e-06, 2.022268841691923050e-06, 2.029557503106729240e-06, 2.036841944907811615e-06, 2.044122155757989507e-06, 2.051398124327380706e-06, 2.058669839294461524e-06, 2.065937289347376307e-06, 2.073200463180660264e-06, 2.080459349498231189e-06, 2.087713937013068857e-06, 2.094964214445601852e-06, 2.102210170525017501e-06, 2.109451793988970495e-06, 2.116689073583255515e-06, 2.123921998063151889e-06, 2.131150556191461449e-06, 2.138374736739846835e-06, 2.145594528488523604e-06, 2.152809920226252605e-06, 2.160020900750064269e-06, 2.167227458866556264e-06, 2.174429583389965226e-06, 2.181627263143481775e-06, 2.188820486958960831e-06, 2.196009243676894510e-06, 2.203193522146169870e-06, 2.210373311225318287e-06, 2.217548599780635889e-06, 2.224719376687453255e-06, 2.231885630829874958e-06, 2.239047351100446674e-06, 2.246204526401453691e-06, 2.253357145643036678e-06, 2.260505197744471555e-06, 2.267648671633859057e-06, 2.274787556248165385e-06, 2.281921840532897801e-06, 2.289051513443425568e-06, 2.296176563943057192e-06, 2.303296981004320284e-06, 2.310412753608726085e-06, 2.317523870746689850e-06, 2.324630321417316541e-06, 2.331732094629641314e-06, 2.338829179400751218e-06, 2.345921564757063795e-06, 2.353009239734051369e-06, 2.360092193375914513e-06, 2.367170414736893683e-06, 2.374243892879665361e-06, 2.381312616875053638e-06, 2.388376575804945276e-06, 2.395435758759048967e-06, 2.402490154836263285e-06, 2.409539753145610118e-06, 2.416584542804337738e-06, 2.423624512939210410e-06, 2.430659652686228868e-06, 2.437689951190305056e-06, 2.444715397606575879e-06, 2.451735981098795529e-06, 2.458751690839047498e-06, 2.465762516010670226e-06, 2.472768445805001111e-06, 2.479769469422738959e-06, 2.486765576074896472e-06, 2.493756754981204861e-06, 2.500742995369838986e-06, 2.507724286480280752e-06, 2.514700617560176187e-06, 2.521671977866569999e-06, 2.528638356667272685e-06, 2.535599743237320356e-06, 2.542556126863449187e-06, 2.549507496840644188e-06, 2.556453842473394498e-06, 2.563395153076681878e-06, 2.570331417974411581e-06, 2.577262626499090058e-06, 2.584188767994714606e-06, 2.591109831813611821e-06, 2.598025807317726785e-06, 2.604936683879905041e-06, 2.611842450880406218e-06, 2.618743097711392870e-06, 2.625638613773427580e-06, 2.632528988477086977e-06, 2.639414211242662311e-06, 2.646294271500167075e-06, 2.653169158689054100e-06, 2.660038862259458146e-06, 2.666903371670375634e-06, 2.673762676390566734e-06, 2.680616765899886476e-06, 2.687465629686094400e-06, 2.694309257247760732e-06, 2.701147638093927985e-06, 2.707980761742553273e-06, 2.714808617721816127e-06, 2.721631195569803398e-06, 2.728448484834175526e-06, 2.735260475073509938e-06, 2.742067155855354562e-06, 2.748868516757565291e-06, 2.755664547367964212e-06, 2.762455237284368398e-06, 2.769240576114329025e-06, 2.776020553476318912e-06, 2.782795158997941471e-06, 2.789564382317164830e-06, 2.796328213082051211e-06, 2.803086640950726009e-06, 2.809839655591137662e-06, 2.816587246682262976e-06, 2.823329403912319463e-06, 2.830066116979963468e-06, 2.836797375594018275e-06, 2.843523169473206439e-06, 2.850243488347360202e-06, 2.856958321955594015e-06, 2.863667660047582712e-06, 2.870371492383242180e-06, 2.877069808732743756e-06, 2.883762598876233862e-06, 2.890449852605062624e-06, 2.897131559719988586e-06, 2.903807710032398863e-06, 2.910478293363975406e-06, 2.917143299546828838e-06, 2.923802718423081710e-06, 2.930456539846160651e-06, 2.937104753679001085e-06, 2.943747349795238151e-06, 2.950384318078949638e-06, 2.957015648424345541e-06, 2.963641330737006002e-06, 2.970261354932402391e-06, 2.976875710935566539e-06, 2.983484388683855029e-06, 2.990087378123946888e-06, 2.996684669213061622e-06, 3.003276251919849024e-06, 3.009862116222638778e-06, 3.016442252110661036e-06, 3.023016649583707603e-06, 3.029585298651907052e-06, 3.036148189336916071e-06, 3.042705311670403282e-06, 3.049256655693826887e-06, 3.055802211461104944e-06, 3.062341969035634656e-06, 3.068875918491532853e-06, 3.075404049914519444e-06, 3.081926353400435112e-06, 3.088442819054980427e-06, 3.094953436996425928e-06, 3.101458197352601768e-06, 3.107957090262113205e-06, 3.114450105875614542e-06, 3.120937234352445133e-06, 3.127418465864880645e-06, 3.133893790594860542e-06, 3.140363198735186638e-06, 3.146826680490712758e-06, 3.153284226075404680e-06, 3.159735825715060812e-06, 3.166181469646960246e-06, 3.172621148118435083e-06, 3.179054851387779303e-06, 3.185482569725424866e-06, 3.191904293410703932e-06, 3.198320012736048449e-06, 3.204729718003677831e-06, 3.211133399527159190e-06, 3.217531047631079541e-06, 3.223922652651098733e-06, 3.230308204933614030e-06, 3.236687694837020071e-06, 3.243061112729908078e-06, 3.249428448991976837e-06, 3.255789694015244807e-06, 3.262144838201075339e-06, 3.268493871962895223e-06, 3.274836785725865624e-06, 3.281173569925445509e-06, 3.287504215008613068e-06, 3.293828711433510811e-06, 3.300147049669235500e-06, 3.306459220197018492e-06, 3.312765213508428757e-06, 3.319065020106321979e-06, 3.325358630506004803e-06, 3.331646035232314689e-06, 3.337927224822273666e-06, 3.344202189824809233e-06, 3.350470920799327112e-06, 3.356733408316858128e-06, 3.362989642959798170e-06, 3.369239615321912429e-06, 3.375483316008104153e-06, 3.381720735635504781e-06, 3.387951864831818844e-06, 3.394176694236479312e-06, 3.400395214500362993e-06, 3.406607416285513981e-06, 3.412813290266313824e-06, 3.419012827127776454e-06, 3.425206017566706078e-06, 3.431392852291415961e-06, 3.437573322021739441e-06, 3.443747417488809277e-06, 3.449915129436128718e-06, 3.456076448617923182e-06, 3.462231365800312968e-06, 3.468379871760989270e-06, 3.474521957288984631e-06, 3.480657613185793988e-06, 3.486786830263735664e-06, 3.492909599347014823e-06, 3.499025911271539654e-06, 3.505135756884877760e-06, 3.511239127046015168e-06, 3.517336012626502369e-06, 3.523426404509003351e-06, 3.529510293587123649e-06, 3.535587670767880294e-06, 3.541658526968918041e-06, 3.547722853119662601e-06, 3.553780640162169793e-06, 3.559831879049442915e-06, 3.565876560746596142e-06, 3.571914676230556792e-06, 3.577946216489815878e-06, 3.583971172525565250e-06, 3.589989535350280081e-06, 3.596001295987490597e-06, 3.602006445474316818e-06, 3.608004974858620840e-06, 3.613996875200223589e-06, 3.619982137571688757e-06, 3.625960753056709203e-06, 3.631932712751202587e-06, 3.637898007763047944e-06, 3.643856629212126346e-06, 3.649808568230037138e-06, 3.655753815961473528e-06, 3.661692363561237635e-06, 3.667624202198102965e-06, 3.673549323051778643e-06, 3.679467717314036812e-06, 3.685379376189808698e-06, 3.691284290894496122e-06, 3.697182452656408418e-06, 3.703073852716492652e-06, 3.708958482327046130e-06, 3.714836332752468991e-06, 3.720707395270419553e-06, 3.726571661168798460e-06, 3.732429121749612841e-06, 3.738279768325926148e-06, 3.744123592223048232e-06, 3.749960584779586941e-06, 3.755790737344715586e-06, 3.761614041280687362e-06, 3.767430487962541427e-06, 3.773240068776760777e-06, 3.779042775122127749e-06, 3.784838598410758674e-06, 3.790627530065486542e-06, 3.796409561522263616e-06, 3.802184684229884869e-06, 3.807952889648702617e-06, 3.813714169251667098e-06, 3.819468514524113863e-06, 3.825215916963472825e-06, 3.830956368080360081e-06, 3.836689859397012599e-06, 3.842416382448059435e-06, 3.848135928781629661e-06, 3.853848489956697754e-06, 3.859554057545479861e-06, 3.865252623133178836e-06, 3.870944178316674729e-06, 3.876628714705614072e-06, 3.882306223922142215e-06, 3.887976697600622110e-06, 3.893640127388787124e-06, 3.899296504946045282e-06, 3.904945821944654095e-06, 3.910588070069439351e-06, 3.916223241017751066e-06, 3.921851326499326268e-06, 3.927472318237218188e-06, 3.933086207966347836e-06, 3.938692987434486559e-06, 3.944292648402049364e-06, 3.949885182642094921e-06, 3.955470581940062978e-06, 3.961048838094854333e-06, 3.966619942917264665e-06, 3.972183888231032319e-06, 3.977740665872595203e-06, 3.983290267690856163e-06, 3.988832685548203657e-06, 3.994367911318997259e-06, 3.999895936890591721e-06, 4.005416754163128606e-06, 4.010930355049496477e-06, 4.016436731475103888e-06, 4.021935875378943264e-06, 4.027427778712025576e-06, 4.032912433438462010e-06, 4.038389831535139549e-06, 4.043859964991869205e-06, 4.049322825810968431e-06, 4.054778406008446120e-06, 4.060226697612386468e-06, 4.065667692664038257e-06, 4.071101383217520086e-06, 4.076527761339644191e-06, 4.081946819110857497e-06, 4.087358548624066784e-06, 4.092762941984344767e-06, 4.098159991311246728e-06, 4.103549688736273657e-06, 4.108932026403893769e-06, 4.114306996472348885e-06, 4.119674591112090802e-06, 4.125034802506844327e-06, 4.130387622853375185e-06, 4.135733044361436655e-06, 4.141071059253626427e-06, 4.146401659766553807e-06, 4.151724838148171569e-06, 4.157040586661226762e-06, 4.162348897580606961e-06, 4.167649763194244045e-06, 4.172943175804198404e-06, 4.178229127724152570e-06, 4.183507611281682104e-06, 4.188778618817968462e-06, 4.194042142686630081e-06, 4.199298175254429658e-06, 4.204546708902307527e-06, 4.209787736022662683e-06, 4.215021249022790888e-06, 4.220247240322242781e-06, 4.225465702353755605e-06, 4.230676627564288290e-06, 4.235880008412566745e-06, 4.241075837371319183e-06, 4.246264106926999984e-06, 4.251444809578585216e-06, 4.256617937838384095e-06, 4.261783484232905495e-06, 4.266941441300565033e-06, 4.272091801593781474e-06, 4.277234557678766669e-06, 4.282369702134387139e-06, 4.287497227553071252e-06, 4.292617126540572050e-06, 4.297729391715830030e-06, 4.302834015711810016e-06, 4.307930991174209429e-06, 4.313020310762049520e-06, 4.318101967148789214e-06, 4.323175953019833992e-06, 4.328242261074703442e-06, 4.333300884026888963e-06, 4.338351814602553565e-06, 4.343395045541619463e-06, 4.348430569597401307e-06, 4.353458379536521485e-06, 4.358478468139781715e-06, 4.363490828200735795e-06, 4.368495452526727221e-06, 4.373492333938576630e-06, 4.378481465270682596e-06, 4.383462839370698067e-06, 4.388436449100528163e-06, 4.393402287334988485e-06, 4.398360346962627577e-06, 4.403310620885621895e-06, 4.408253102019683484e-06, 4.413187783293951553e-06, 4.418114657651807324e-06, 4.423033718049600094e-06, 4.427944957457520524e-06, 4.432848368859380413e-06, 4.437743945252417878e-06, 4.442631679648232482e-06, 4.447511565071371531e-06, 4.452383594560302471e-06, 4.457247761167189272e-06, 4.462104057957836522e-06, 4.466952478011604724e-06, 4.471793014422207355e-06, 4.476625660296375939e-06, 4.481450408754852775e-06, 4.486267252932065673e-06, 4.491076185976235525e-06, 4.495877201049102718e-06, 4.500670291326882585e-06, 4.505455449998824600e-06, 4.510232670268273716e-06, 4.515001945352315451e-06, 4.519763268481638674e-06, 4.524516632901422445e-06, 4.529262031870231488e-06, 4.533999458659781558e-06, 4.538728906556970631e-06, 4.543450368861680001e-06, 4.548163838887629790e-06, 4.552869309963311525e-06, 4.557566775429546145e-06, 4.562256228642594306e-06, 4.566937662971727089e-06, 4.571611071800137411e-06, 4.576276448525580377e-06, 4.580933786559310256e-06, 4.585583079325847549e-06, 4.590224320264977984e-06, 4.594857502829584111e-06, 4.599482620486458457e-06, 4.604099666717302175e-06, 4.608708635016454150e-06, 4.613309518892889994e-06, 4.617902311870029777e-06, 4.622487007484646190e-06, 4.627063599287538795e-06, 4.631632080844379356e-06, 4.636192445733363866e-06, 4.640744687548246620e-06, 4.645288799895992238e-06, 4.649824776397561713e-06, 4.654352610688909368e-06, 4.658872296418733985e-06, 4.663383827250479493e-06, 4.667887196862118979e-06, 4.672382398945087424e-06, 4.676869427204900885e-06, 4.681348275362089079e-06, 4.685818937149778794e-06, 4.690281406316747448e-06, 4.694735676625055630e-06, 4.699181741851128760e-06, 4.703619595785566507e-06, 4.708049232233133472e-06, 4.712470645012547431e-06, 4.716883827957354318e-06, 4.721288774914676310e-06, 4.725685479746004652e-06, 4.730073936327081071e-06, 4.734454138547867285e-06, 4.738826080312344251e-06, 4.743189755539311769e-06, 4.747545158161243293e-06, 4.751892282125035551e-06, 4.756231121391856086e-06, 4.760561669936938268e-06, 4.764883921750396140e-06, 4.769197870836036037e-06, 4.773503511212134154e-06, 4.777800836911299332e-06, 4.782089841980392588e-06, 4.786370520480435636e-06, 4.790642866487386770e-06, 4.794906874090873701e-06, 4.799162537395111740e-06, 4.803409850518675101e-06, 4.807648807594445235e-06, 4.811879402769507483e-06, 4.816101630205895627e-06, 4.820315484079418746e-06, 4.824520958580489611e-06, 4.828718047913887523e-06, 4.832906746298630403e-06, 4.837087047968715953e-06, 4.841258947171966296e-06, 4.845422438170826736e-06, 4.849577515242175168e-06, 4.853724172677321236e-06, 4.857862404781819983e-06, 4.861992205876314652e-06, 4.866113570295269520e-06, 4.870226492387828794e-06, 4.874330966517608238e-06, 4.878426987062525767e-06, 4.882514548415560390e-06, 4.886593644983620571e-06, 4.890664271188288776e-06, 4.894726421465706269e-06, 4.898780090266489263e-06, 4.902825272055598473e-06, 4.906861961313120929e-06, 4.910890152533290804e-06, 4.914909840224316623e-06, 4.918921018910100734e-06, 4.922923683128387701e-06, 4.926917827431434300e-06, 4.930903446386855712e-06, 4.934880534575546050e-06, 4.938849086594278756e-06, 4.942809097053694895e-06, 4.946760560579048544e-06, 4.950703471810727718e-06, 4.954637825403430205e-06, 4.958563616025835770e-06, 4.962480838362446748e-06, 4.966389487111633102e-06, 4.970289556986406604e-06, 4.974181042715184015e-06, 4.978063939039717782e-06, 4.981938240717778594e-06, 4.985803942521020008e-06, 4.989661039235979644e-06, 4.993509525663690398e-06, 4.997349396620624883e-06, 5.001180646936658312e-06, 5.005003271457656187e-06, 5.008817265043482925e-06, 5.012622622568705740e-06, 5.016419338923345961e-06, 5.020207409011053678e-06, 5.023986827750811124e-06, 5.027757590076657391e-06, 5.031519690936864265e-06, 5.035273125294429198e-06, 5.039017888127908793e-06, 5.042753974429313075e-06, 5.046481379206674545e-06, 5.050200097482123722e-06, 5.053910124292770899e-06, 5.057611454690480841e-06, 5.061304083741936302e-06, 5.064988006528483874e-06, 5.068663218146761633e-06, 5.072329713707762324e-06, 5.075987488337406799e-06, 5.079636537176498281e-06, 5.083276855380681701e-06, 5.086908438120227710e-06, 5.090531280580830583e-06, 5.094145377962495215e-06, 5.097750725480266417e-06, 5.101347318364057820e-06, 5.104935151858493472e-06, 5.108514221223582083e-06, 5.112084521733705665e-06, 5.115646048678305628e-06, 5.119198797361733703e-06, 5.122742763103259565e-06, 5.126277941236834512e-06, 5.129804327111902922e-06, 5.133321916092274849e-06, 5.136830703556876500e-06, 5.140330684899558802e-06, 5.143821855529121965e-06, 5.147304210869121515e-06, 5.150777746358601820e-06, 5.154242457451026292e-06, 5.157698339614983809e-06, 5.161145388334032864e-06, 5.164583599106582129e-06, 5.168012967446432561e-06, 5.171433488881950695e-06, 5.174845158956599734e-06, 5.178247973228858233e-06, 5.181641927272214173e-06, 5.185027016674959127e-06, 5.188403237040929421e-06, 5.191770583988454109e-06, 5.195129053151055481e-06, 5.198478640177283033e-06, 5.201819340730541528e-06, 5.205151150489766926e-06, 5.208474065148617464e-06, 5.211788080415306793e-06, 5.215093192014053255e-06, 5.218389395683495925e-06, 5.221676687177357842e-06, 5.224955062264861052e-06, 5.228224516730039668e-06, 5.231485046371461195e-06, 5.234736647003762198e-06, 5.237979314456026236e-06, 5.241213044572432691e-06, 5.244437833212871711e-06, 5.247653676251250992e-06, 5.250860569577684513e-06, 5.254058509096730702e-06, 5.257247490728092941e-06, 5.260427510407065098e-06, 5.263598564083733623e-06, 5.266760647722896236e-06, 5.269913757305358734e-06, 5.273057888826435738e-06, 5.276193038296656278e-06, 5.279319201742254219e-06, 5.282436375203558903e-06, 5.285544554737126282e-06, 5.288643736414038077e-06, 5.291733916320769136e-06, 5.294815090558724959e-06, 5.297887255245142938e-06, 5.300950406511349165e-06, 5.304004540504938693e-06, 5.307049653388079775e-06, 5.310085741338102558e-06, 5.313112800548200419e-06, 5.316130827225819758e-06, 5.319139817594061840e-06, 5.322139767891548961e-06, 5.325130674371664659e-06, 5.328112533303006879e-06, 5.331085340969996989e-06, 5.334049093671233993e-06, 5.337003787721579081e-06, 5.339949419450587771e-06, 5.342885985202971542e-06, 5.345813481339316116e-06, 5.348731904234593223e-06, 5.351641250279414210e-06, 5.354541515879967361e-06, 5.357432697457261492e-06, 5.360314791447702787e-06, 5.363187794302982139e-06, 5.366051702490031950e-06, 5.368906512490929574e-06, 5.371752220803456353e-06, 5.374588823940247201e-06, 5.377416318429386065e-06, 5.380234700814197555e-06, 5.383043967653192736e-06, 5.385844115520595134e-06, 5.388635141005508950e-06, 5.391417040712464547e-06, 5.394189811261326975e-06, 5.396953449287218040e-06, 5.399707951440533248e-06, 5.402453314387291624e-06, 5.405189534808497057e-06, 5.407916609400562657e-06, 5.410634534875274336e-06, 5.413343307959586670e-06, 5.416042925396170088e-06, 5.418733383942709521e-06, 5.421414680372299126e-06, 5.424086811473375366e-06, 5.426749774049765296e-06, 5.429403564920462938e-06, 5.432048180920286588e-06, 5.434683618898938603e-06, 5.437309875721638135e-06, 5.439926948269009327e-06, 5.442534833437011006e-06, 5.445133528136838425e-06, 5.447723029295437419e-06, 5.450303333854780183e-06, 5.452874438772330301e-06, 5.455436341020921615e-06, 5.457989037588664208e-06, 5.460532525479431443e-06, 5.463066801712237399e-06, 5.465591863321103039e-06, 5.468107707356218336e-06, 5.470614330882646315e-06, 5.473111730980865152e-06, 5.475599904747159509e-06, 5.478078849292821774e-06, 5.480548561744680614e-06, 5.483009039244981544e-06, 5.485460278951403866e-06, 5.487902278036894649e-06, 5.490335033690348901e-06, 5.492758543115161138e-06, 5.495172803531122740e-06, 5.497577812172879506e-06, 5.499973566290514408e-06, 5.502360063149942310e-06, 5.504737300032279781e-06, 5.507105274233665513e-06, 5.509463983066459732e-06, 5.511813423857980414e-06, 5.514153593950972550e-06, 5.516484490704109581e-06, 5.518806111490711847e-06, 5.521118453700357634e-06, 5.523421514737598232e-06, 5.525715292022494950e-06, 5.527999782990857135e-06, 5.530274985093789853e-06, 5.532540895797481287e-06, 5.534797512584276773e-06, 5.537044832951548859e-06, 5.539282854412106421e-06, 5.541511574494758787e-06, 5.543730990743028249e-06, 5.545941100716325740e-06, 5.548141901989732306e-06, 5.550333392153473092e-06, 5.552515568813384063e-06, 5.554688429590784944e-06, 5.556851972122366567e-06, 5.559006194060649118e-06, 5.561151093073309588e-06, 5.563286666843527367e-06, 5.565412913070395899e-06, 5.567529829467879137e-06, 5.569637413765758530e-06, 5.571735663709503423e-06, 5.573824577059825518e-06, 5.575904151592963479e-06, 5.577974385100760859e-06, 5.580035275390384035e-06, 5.582086820284869393e-06, 5.584129017622433846e-06, 5.586161865256900041e-06, 5.588185361057628595e-06, 5.590199502909472361e-06, 5.592204288712730683e-06, 5.594199716383528023e-06, 5.596185783853162589e-06, 5.598162489068567971e-06, 5.600129829992237756e-06, 5.602087804602145902e-06, 5.604036410891743357e-06, 5.605975646870227407e-06, 5.607905510562130873e-06, 5.609826000007518618e-06, 5.611737113262050228e-06, 5.613638848396770796e-06, 5.615531203498604742e-06, 5.617414176669685809e-06, 5.619287766027766180e-06, 5.621151969706188528e-06, 5.623006785853780982e-06, 5.624852212634844420e-06, 5.626688248229488746e-06, 5.628514890833091629e-06, 5.630332138656645794e-06, 5.632139989926726829e-06, 5.633938442885438132e-06, 5.635727495790302485e-06, 5.637507146914713531e-06, 5.639277394547304727e-06, 5.641038236992364392e-06, 5.642789672569711198e-06, 5.644531699614643340e-06, 5.646264316478259567e-06, 5.647987521527062771e-06, 5.649701313142788882e-06, 5.651405689723306420e-06, 5.653100649681655960e-06, 5.654786191446421132e-06, 5.656462313462034398e-06, 5.658129014188207849e-06, 5.659786292100291495e-06, 5.661434145689186029e-06, 5.663072573461368228e-06, 5.664701573938749506e-06, 5.666321145659168885e-06, 5.667931287175441773e-06, 5.669531997056467045e-06, 5.671123273886441833e-06, 5.672705116265095316e-06, 5.674277522807928424e-06, 5.675840492145908908e-06, 5.677394022925228246e-06, 5.678938113808207114e-06, 5.680472763472352642e-06, 5.681997970610721792e-06, 5.683513733932353343e-06, 5.685020052161132022e-06, 5.686516924037186950e-06, 5.688004348315823542e-06, 5.689482323767924145e-06, 5.690950849180188602e-06, 5.692409923354689556e-06, 5.693859545108828404e-06, 5.695299713276076455e-06, 5.696730426705092316e-06, 5.698151684260137788e-06, 5.699563484821328591e-06, 5.700965827283880496e-06, 5.702358710558809832e-06, 5.703742133572817433e-06, 5.705116095267982019e-06, 5.706480594601962632e-06, 5.707835630548029132e-06, 5.709181202094888555e-06, 5.710517308247060346e-06, 5.711843948024391015e-06, 5.713161120462267582e-06, 5.714468824611974183e-06, 5.715767059539882304e-06, 5.717055824328114009e-06, 5.718335118074539399e-06, 5.719604939892336153e-06, 5.720865288910324958e-06, 5.722116164272858539e-06, 5.723357565139824209e-06, 5.724589490686810730e-06, 5.725811940104787287e-06, 5.727024912600327108e-06, 5.728228407395578661e-06, 5.729422423728205517e-06, 5.730606960851385503e-06, 5.731782018034028390e-06, 5.732947594560402346e-06, 5.734103689730382127e-06, 5.735250302859405020e-06, 5.736387433278433583e-06, 5.737515080333911592e-06, 5.738633243388038486e-06, 5.739741921818322128e-06, 5.740841115017969290e-06, 5.741930822395612908e-06, 5.743011043375454386e-06, 5.744081777397352528e-06, 5.745143023916581294e-06, 5.746194782403959391e-06, 5.747237052345879073e-06, 5.748269833244234146e-06, 5.749293124616427589e-06, 5.750306925995569758e-06, 5.751311236930086213e-06, 5.752306056984033661e-06, 5.753291385736982216e-06, 5.754267222784032341e-06, 5.755233567735714052e-06, 5.756190420218342671e-06, 5.757137779873518229e-06, 5.758075646358423623e-06, 5.759004019345785649e-06, 5.759922898523786071e-06, 5.760832283596275063e-06, 5.761732174282517956e-06, 5.762622570317178290e-06, 5.763503471450670184e-06, 5.764374877448792416e-06, 5.765236788092773318e-06, 5.766089203179570620e-06, 5.766932122521470811e-06, 5.767765545946311055e-06, 5.768589473297419058e-06, 5.769403904433616448e-06, 5.770208839229368709e-06, 5.771004277574493794e-06, 5.771790219374186694e-06, 5.772566664549457352e-06, 5.773333613036580090e-06, 5.774091064787304524e-06, 5.774839019769081718e-06, 5.775577477964695729e-06, 5.776306439372304259e-06, 5.777025904005789332e-06, 5.777735871894383747e-06, 5.778436343082764260e-06, 5.779127317631280272e-06, 5.779808795615421053e-06, 5.780480777126513698e-06, 5.781143262271118337e-06, 5.781796251171296655e-06, 5.782439743964717763e-06, 5.783073740804386304e-06, 5.783698241858693276e-06, 5.784313247311688773e-06, 5.784918757362799080e-06, 5.785514772226809730e-06, 5.786101292134183987e-06, 5.786678317330527525e-06, 5.787245848077207606e-06, 5.787803884650816064e-06, 5.788352427343491173e-06, 5.788891476462787209e-06, 5.789421032331704939e-06, 5.789941095288640802e-06, 5.790451665687550385e-06, 5.790952743897657044e-06, 5.791444330303681449e-06, 5.791926425305880550e-06, 5.792399029319731629e-06, 5.792862142776231310e-06, 5.793315766121888774e-06, 5.793759899818471656e-06, 5.794194544343254223e-06, 5.794619700188887778e-06, 5.795035367863426918e-06, 5.795441547890378660e-06, 5.795838240808613510e-06, 5.796225447172376462e-06, 5.796603167551408137e-06, 5.796971402530716075e-06, 5.797330152710742449e-06, 5.797679418707381009e-06, 5.798019201151863578e-06, 5.798349500690761745e-06, 5.798670317986097825e-06, 5.798981653715238986e-06, 5.799283508570900630e-06, 5.799575883261237028e-06, 5.799858778509709186e-06, 5.800132195055128887e-06, 5.800396133651742547e-06, 5.800650595069054188e-06, 5.800895580092049900e-06, 5.801131089520981001e-06, 5.801357124171417398e-06, 5.801573684874348389e-06, 5.801780772476070001e-06, 5.801978387838179067e-06, 5.802166531837701123e-06, 5.802345205366936251e-06, 5.802514409333491266e-06, 5.802674144660325455e-06, 5.802824412285708224e-06, 5.802965213163244512e-06, 5.803096548261845990e-06, 5.803218418565705650e-06, 5.803330825074393522e-06, 5.803433768802697427e-06, 5.803527250780713614e-06, 5.803611272053953485e-06, 5.803685833683102190e-06, 5.803750936744111800e-06, 5.803806582328310576e-06, 5.803852771542286924e-06, 5.803889505507866526e-06, 5.803916785362183491e-06, 5.803934612257629531e-06, 5.803942987361871751e-06, 5.803941911857795050e-06, 5.803931386943603766e-06, 5.803911413832742052e-06, 5.803881993753929453e-06, 5.803843127951020300e-06, 5.803794817683235796e-06, 5.803737064225004772e-06, 5.803669868865932349e-06, 5.803593232910940545e-06, 5.803507157680117504e-06, 5.803411644508804736e-06, 5.803306694747536985e-06, 5.803192309762093891e-06, 5.803068490933432231e-06, 5.802935239657766388e-06, 5.802792557346441294e-06, 5.802640445426034072e-06, 5.802478905338353194e-06, 5.802307938540345305e-06, 5.802127546504170607e-06, 5.801937730717123242e-06, 5.801738492681740555e-06, 5.801529833915701451e-06, 5.801311755951824706e-06, 5.801084260338124863e-06, 5.800847348637780897e-06, 5.800601022429120969e-06, 5.800345283305592776e-06, 5.800080132875822845e-06, 5.799805572763584350e-06, 5.799521604607740352e-06, 5.799228230062309028e-06, 5.798925450796477222e-06, 5.798613268494498798e-06, 5.798291684855770029e-06, 5.797960701594788938e-06, 5.797620320441162075e-06, 5.797270543139616376e-06, 5.796911371449968667e-06, 5.796542807147096021e-06, 5.796164852021028930e-06, 5.795777507876858133e-06, 5.795380776534706661e-06, 5.794974659829845036e-06, 5.794559159612547276e-06, 5.794134277748199310e-06, 5.793700016117225294e-06, 5.793256376615112169e-06, 5.792803361152414745e-06, 5.792340971654687938e-06, 5.791869210062557077e-06, 5.791388078331670464e-06, 5.790897578432721401e-06, 5.790397712351394829e-06, 5.789888482088451176e-06, 5.789369889659634041e-06, 5.788841937095662563e-06, 5.788304626442300034e-06, 5.787757959760306462e-06, 5.787201939125413167e-06, 5.786636566628392228e-06, 5.786061844374892167e-06, 5.785477774485683584e-06, 5.784884359096388107e-06, 5.784281600357642720e-06, 5.783669500435049780e-06, 5.783048061509167711e-06, 5.782417285775470334e-06, 5.781777175444405323e-06, 5.781127732741380646e-06, 5.780468959906695957e-06, 5.779800859195619678e-06, 5.779123432878310220e-06, 5.778436683239826154e-06, 5.777740612580194815e-06, 5.777035223214314896e-06, 5.776320517471963225e-06, 5.775596497697911653e-06, 5.774863166251680567e-06, 5.774120525507725243e-06, 5.773368577855472262e-06, 5.772607325699079801e-06, 5.771836771457653628e-06, 5.771056917565125132e-06, 5.770267766470308912e-06, 5.769469320636852813e-06, 5.768661582543229449e-06, 5.767844554682785331e-06, 5.767018239563680731e-06, 5.766182639708860882e-06, 5.765337757656123736e-06, 5.764483595958147924e-06, 5.763620157182298779e-06, 5.762747443910797745e-06, 5.761865458740696966e-06, 5.760974204283739526e-06, 5.760073683166528008e-06, 5.759163898030440637e-06, 5.758244851531564366e-06, 5.757316546340857504e-06, 5.756378985143940501e-06, 5.755432170641165405e-06, 5.754476105547759857e-06, 5.753510792593550955e-06, 5.752536234523178711e-06, 5.751552434095971536e-06, 5.750559394085959792e-06, 5.749557117281981668e-06, 5.748545606487513780e-06, 5.747524864520694883e-06, 5.746494894214407187e-06, 5.745455698416260263e-06, 5.744407279988405547e-06, 5.743349641807849735e-06, 5.742282786766122752e-06, 5.741206717769499673e-06, 5.740121437738882983e-06, 5.739026949609755146e-06, 5.737923256332380199e-06, 5.736810360871606391e-06, 5.735688266206785717e-06, 5.734556975332057673e-06, 5.733416491256136649e-06, 5.732266817002198433e-06, 5.731107955608245272e-06, 5.729939910126781470e-06, 5.728762683624787965e-06, 5.727576279183981533e-06, 5.726380699900584385e-06, 5.725175948885395324e-06, 5.723962029263822777e-06, 5.722738944175686589e-06, 5.721506696775470440e-06, 5.720265290232227823e-06, 5.719014727729355888e-06, 5.717755012465011334e-06, 5.716486147651789382e-06, 5.715208136516681426e-06, 5.713920982301306273e-06, 5.712624688261751745e-06, 5.711319257668572988e-06, 5.710004693806874633e-06, 5.708680999976077861e-06, 5.707348179490245665e-06, 5.706006235677811798e-06, 5.704655171881694279e-06, 5.703294991459256425e-06, 5.701925697782312781e-06, 5.700547294236990210e-06, 5.699159784224006563e-06, 5.697763171158393702e-06, 5.696357458469647422e-06, 5.694942649601643599e-06, 5.693518748012698323e-06, 5.692085757175348524e-06, 5.690643680576698401e-06, 5.689192521718144990e-06, 5.687732284115439146e-06, 5.686262971298803281e-06, 5.684784586812576461e-06, 5.683297134215639609e-06, 5.681800617081145310e-06, 5.680295038996572017e-06, 5.678780403563711344e-06, 5.677256714398711267e-06, 5.675723975131899941e-06, 5.674182189408027951e-06, 5.672631360886091282e-06, 5.671071493239360964e-06, 5.669502590155373758e-06, 5.667924655336007539e-06, 5.666337692497212788e-06, 5.664741705369347166e-06, 5.663136697696987482e-06, 5.661522673238914435e-06, 5.659899635768211725e-06, 5.658267589071965354e-06, 5.656626536951627001e-06, 5.654976483223039437e-06, 5.653317431715799552e-06, 5.651649386274038475e-06, 5.649972350755998905e-06, 5.648286329033913982e-06, 5.646591324994356268e-06, 5.644887342538038694e-06, 5.643174385579751031e-06, 5.641452458048513201e-06, 5.639721563887289833e-06, 5.637981707053285873e-06, 5.636232891518028745e-06, 5.634475121266703434e-06, 5.632708400298915661e-06, 5.630932732628329353e-06, 5.629148122282413379e-06, 5.627354573303124260e-06, 5.625552089746270046e-06, 5.623740675681568764e-06, 5.621920335193011792e-06, 5.620091072378612291e-06, 5.618252891350130768e-06, 5.616405796233823849e-06, 5.614549791169479516e-06, 5.612684880311197215e-06, 5.610811067827031263e-06, 5.608928357898758756e-06, 5.607036754722542799e-06, 5.605136262508306546e-06, 5.603226885479810281e-06, 5.601308627874949575e-06, 5.599381493945566397e-06, 5.597445487957175519e-06, 5.595500614189704829e-06, 5.593546876936467027e-06, 5.591584280505008356e-06, 5.589612829216688472e-06, 5.587632527406761760e-06, 5.585643379424307029e-06, 5.583645389632470611e-06, 5.581638562407914943e-06, 5.579622902141446219e-06, 5.577598413237700986e-06, 5.575565100114859848e-06, 5.573522967205345421e-06, 5.571472018955226869e-06, 5.569412259824181787e-06, 5.567343694285956141e-06, 5.565266326827981407e-06, 5.563180161951496546e-06, 5.561085204171564097e-06, 5.558981458016781338e-06, 5.556868928029757165e-06, 5.554747618766733471e-06, 5.552617534797730833e-06, 5.550478680706480752e-06, 5.548331061090470540e-06, 5.546174680560715477e-06, 5.544009543742135733e-06, 5.541835655273285320e-06, 5.539653019806363954e-06, 5.537461642007283963e-06, 5.535261526555666060e-06, 5.533052678144575909e-06, 5.530835101480921388e-06, 5.528608801285209490e-06, 5.526373782291535308e-06, 5.524130049247726882e-06, 5.521877606914902199e-06, 5.519616460068130723e-06, 5.517346613495876902e-06, 5.515068072000264432e-06, 5.512780840396926341e-06, 5.510484923515176932e-06, 5.508180326197598432e-06, 5.505867053300583940e-06, 5.503545109693991839e-06, 5.501214500261133088e-06, 5.498875229898879643e-06, 5.496527303517707658e-06, 5.494170726041251943e-06, 5.491805502406959026e-06, 5.489431637565612819e-06, 5.487049136481490464e-06, 5.484658004132404694e-06, 5.482258245509310803e-06, 5.479849865616819951e-06, 5.477432869473183916e-06, 5.475007262109578504e-06, 5.472573048570909927e-06, 5.470130233915472599e-06, 5.467678823214599311e-06, 5.465218821553623464e-06, 5.462750234030622066e-06, 5.460273065757333076e-06, 5.457787321858902136e-06, 5.455293007473487007e-06, 5.452790127752759864e-06, 5.450278687862021638e-06, 5.447758692979262664e-06, 5.445230148296163022e-06, 5.442693059017685962e-06, 5.440147430361673871e-06, 5.437593267559811348e-06, 5.435030575856769702e-06, 5.432459360510206103e-06, 5.429879626791375988e-06, 5.427291379984693451e-06, 5.424694625387424619e-06, 5.422089368310699003e-06, 5.419475614078177123e-06, 5.416853368027043225e-06, 5.414222635507703741e-06, 5.411583421883305324e-06, 5.408935732530727574e-06, 5.406279572839712283e-06, 5.403614948212886313e-06, 5.400941864066346039e-06, 5.398260325829243158e-06, 5.395570338943455189e-06, 5.392871908864642572e-06, 5.390165041060847672e-06, 5.387449741013538330e-06, 5.384726014217174175e-06, 5.381993866179235429e-06, 5.379253302420232220e-06, 5.376504328473846038e-06, 5.373746949886370696e-06, 5.370981172217488209e-06, 5.368207001039729232e-06, 5.365424441938617909e-06, 5.362633500512634598e-06, 5.359834182373314130e-06, 5.357026493144851088e-06, 5.354210438464637679e-06, 5.351386023982952020e-06, 5.348553255362954751e-06, 5.345712138280802541e-06, 5.342862678425212710e-06, 5.340004881498156948e-06, 5.337138753214330228e-06, 5.334264299301283789e-06, 5.331381525499418360e-06, 5.328490437562109521e-06, 5.325591041255205411e-06, 5.322683342357688263e-06, 5.319767346661260203e-06, 5.316843059970390684e-06, 5.313910488102351218e-06, 5.310969636887297532e-06, 5.308020512167769822e-06, 5.305063119799436449e-06, 5.302097465650576400e-06, 5.299123555602183474e-06, 5.296141395548117899e-06, 5.293150991394519341e-06, 5.290152349060670029e-06, 5.287145474478306117e-06, 5.284130373591937016e-06, 5.281107052358663283e-06, 5.278075516748379058e-06, 5.275035772743251990e-06, 5.271987826338406791e-06, 5.268931683541494097e-06, 5.265867350372759075e-06, 5.262794832865165941e-06, 5.259714137063851618e-06, 5.256625269026932966e-06, 5.253528234824938416e-06, 5.250423040540946888e-06, 5.247309692270546283e-06, 5.244188196121998656e-06, 5.241058558215715904e-06, 5.237920784684812029e-06, 5.234774881675282710e-06, 5.231620855344875363e-06, 5.228458711864236865e-06, 5.225288457416517997e-06, 5.222110098196811009e-06, 5.218923640413460828e-06, 5.215729090286414192e-06, 5.212526454048506293e-06, 5.209315737944918673e-06, 5.206096948232903095e-06, 5.202870091182274516e-06, 5.199635173075638935e-06, 5.196392200207140636e-06, 5.193141178883810659e-06, 5.189882115424947627e-06, 5.186615016161704384e-06, 5.183339887438401753e-06, 5.180056735610730276e-06, 5.176765567047202882e-06, 5.173466388128448460e-06, 5.170159205247469354e-06, 5.166844024809006940e-06, 5.163520853230962095e-06, 5.160189696942451263e-06, 5.156850562385392941e-06, 5.153503456013882572e-06, 5.150148384293645363e-06, 5.146785353703357653e-06, 5.143414370733524597e-06, 5.140035441886445437e-06, 5.136648573676964818e-06, 5.133253772632089088e-06, 5.129851045290334921e-06, 5.126440398203305654e-06, 5.123021837933684660e-06, 5.119595371056832855e-06, 5.116161004159993331e-06, 5.112718743842441285e-06, 5.109268596715511971e-06, 5.105810569402689631e-06, 5.102344668539019666e-06, 5.098870900772013256e-06, 5.095389272760987530e-06, 5.091899791177240047e-06, 5.088402462704039486e-06, 5.084897294036717967e-06, 5.081384291882113708e-06, 5.077863462959446006e-06, 5.074334813999655399e-06, 5.070798351745590863e-06, 5.067254082952173287e-06, 5.063702014385708530e-06, 5.060142152824813226e-06, 5.056574505059786290e-06, 5.052999077892764769e-06, 5.049415878137752641e-06, 5.045824912620639449e-06, 5.042226188178704791e-06, 5.038619711661461959e-06, 5.035005489930015892e-06, 5.031383529857257147e-06, 5.027753838327800908e-06, 5.024116422238147929e-06, 5.020471288496077203e-06, 5.016818444021491310e-06, 5.013157895745898027e-06, 5.009489650612429809e-06, 5.005813715576053011e-06, 5.002130097602947010e-06, 4.998438803671363941e-06, 4.994739840771069661e-06, 4.991033215903397955e-06, 4.987318936081341168e-06, 4.983597008329579855e-06, 4.979867439683961851e-06, 4.976130237192328132e-06, 4.972385407913900408e-06, 4.968632958919503048e-06, 4.964872897291592721e-06, 4.961105230123654469e-06, 4.957329964521042804e-06, 4.953547107601019828e-06, 4.949756666491394898e-06, 4.945958648332078928e-06, 4.942153060274424556e-06, 4.938339909480723003e-06, 4.934519203125173078e-06, 4.930690948393245058e-06, 4.926855152481778943e-06, 4.923011822599017492e-06, 4.919160965964674829e-06, 4.915302589809261362e-06, 4.911436701375690600e-06, 4.907563307917104825e-06, 4.903682416698608962e-06, 4.899794034996618369e-06, 4.895898170098287935e-06, 4.891994829302473461e-06, 4.888084019919678298e-06, 4.884165749270756541e-06, 4.880240024688410581e-06, 4.876306853516554136e-06, 4.872366243109726954e-06, 4.868418200834691468e-06, 4.864462734068348249e-06, 4.860499850199376705e-06, 4.856529556627440571e-06, 4.852551860763539423e-06, 4.848566770029109976e-06, 4.844574291857869229e-06, 4.840574433693500371e-06, 4.836567202991405291e-06, 4.832552607218056600e-06, 4.828530653850359814e-06, 4.824501350377215279e-06, 4.820464704298081612e-06, 4.816420723123116299e-06, 4.812369414373970218e-06, 4.808310785583273488e-06, 4.804244844293978170e-06, 4.800171598061183627e-06, 4.796091054449727557e-06, 4.792003221036107069e-06, 4.787908105407686703e-06, 4.783805715162129227e-06, 4.779696057908939775e-06, 4.775579141268062316e-06, 4.771454972869922852e-06, 4.767323560356317954e-06, 4.763184911379734598e-06, 4.759039033603449264e-06, 4.754885934701610947e-06, 4.750725622359285202e-06, 4.746558104271817179e-06, 4.742383388145864996e-06, 4.738201481698628946e-06, 4.734012392658100520e-06, 4.729816128763119161e-06, 4.725612697762758163e-06, 4.721402107417320784e-06, 4.717184365497598243e-06, 4.712959479785035740e-06, 4.708727458071784125e-06, 4.704488308160795611e-06, 4.700242037865105491e-06, 4.695988655008922271e-06, 4.691728167426859408e-06, 4.687460582964142837e-06, 4.683185909476738021e-06, 4.678904154830616426e-06, 4.674615326902850729e-06, 4.670319433580875365e-06, 4.666016482762611879e-06, 4.661706482356501121e-06, 4.657389440281678580e-06, 4.653065364467184946e-06, 4.648734262853057091e-06, 4.644396143389608940e-06, 4.640051014037584778e-06, 4.635698882768157563e-06, 4.631339757563035648e-06, 4.626973646413864775e-06, 4.622600557323127627e-06, 4.618220498303503470e-06, 4.613833477378037556e-06, 4.609439502580292751e-06, 4.605038581953550770e-06, 4.600630723551811689e-06, 4.596215935439903203e-06, 4.591794225691822986e-06, 4.587365602392552188e-06, 4.582930073637317672e-06, 4.578487647531051600e-06, 4.574038332189408729e-06, 4.569582135738092164e-06, 4.565119066312976184e-06, 4.560649132060143508e-06, 4.556172341135972541e-06, 4.551688701706257305e-06, 4.547198221948214063e-06, 4.542700910047903795e-06, 4.538196774202192234e-06, 4.533685822618023957e-06, 4.529168063511912473e-06, 4.524643505110733892e-06, 4.520112155652003905e-06, 4.515574023382121884e-06, 4.511029116558251296e-06, 4.506477443447562455e-06, 4.501919012326428688e-06, 4.497353831482526977e-06, 4.492781909212190981e-06, 4.488203253822393940e-06, 4.483617873630055800e-06, 4.479025776961452834e-06, 4.474426972153083311e-06, 4.469821467551968186e-06, 4.465209271513773236e-06, 4.460590392404818215e-06, 4.455964838601257781e-06, 4.451332618488266641e-06, 4.446693740461991122e-06, 4.442048212927809365e-06, 4.437396044300457528e-06, 4.432737243004991173e-06, 4.428071817476089002e-06, 4.423399776158097752e-06, 4.418721127505279528e-06, 4.414035879981009662e-06, 4.409344042058957477e-06, 4.404645622222421368e-06, 4.399940628963607973e-06, 4.395229070785486334e-06, 4.390510956200131941e-06, 4.385786293728775017e-06, 4.381055091902851687e-06, 4.376317359263176423e-06, 4.371573104360108910e-06, 4.366822335753803077e-06, 4.362065062013264348e-06, 4.357301291717706586e-06, 4.352531033455591560e-06, 4.347754295824869504e-06, 4.342971087432966407e-06, 4.338181416896972905e-06, 4.333385292842807413e-06, 4.328582723906419754e-06, 4.323773718732972085e-06, 4.318958285977009143e-06, 4.314136434302482816e-06, 4.309308172382889358e-06, 4.304473508900449462e-06, 4.299632452547352554e-06, 4.294785012024908907e-06, 4.289931196043689408e-06, 4.285071013323817781e-06, 4.280204472594020217e-06, 4.275331582592923874e-06, 4.270452352068170035e-06, 4.265566789776641113e-06, 4.260674904484438627e-06, 4.255776704967042445e-06, 4.250872200008512880e-06, 4.245961398402670602e-06, 4.241044308952281801e-06, 4.236120940469275019e-06, 4.231191301774658144e-06, 4.226255401698769981e-06, 4.221313249080402722e-06, 4.216364852768023371e-06, 4.211410221619002093e-06, 4.206449364499690993e-06, 4.201482290285706173e-06, 4.196509007861010400e-06, 4.191529526119027797e-06, 4.186543853962749724e-06, 4.181552000302865380e-06, 4.176553974059886152e-06, 4.171549784163218973e-06, 4.166539439550558990e-06, 4.161522949169149953e-06, 4.156500321974882124e-06, 4.151471566932520978e-06, 4.146436693015696188e-06, 4.141395709207054939e-06, 4.136348624497252269e-06, 4.131295447887205864e-06, 4.126236188385144152e-06, 4.121170855008907691e-06, 4.116099456785109760e-06, 4.111022002748449414e-06, 4.105938501942771970e-06, 4.100848963421303634e-06, 4.095753396244638953e-06, 4.090651809482939709e-06, 4.085544212215014199e-06, 4.080430613527437163e-06, 4.075311022516940962e-06, 4.070185448287373031e-06, 4.065053899952015061e-06, 4.059916386632749514e-06, 4.054772917459365056e-06, 4.049623501570616201e-06, 4.044468148114474872e-06, 4.039306866246113619e-06, 4.034139665130055391e-06, 4.028966553939330734e-06, 4.023787541854574857e-06, 4.018602638066161306e-06, 4.013411851772270730e-06, 4.008215192179019630e-06, 4.003012668501648744e-06, 3.997804289963527789e-06, 3.992590065796398552e-06, 3.987370005240610371e-06, 3.982144117544159595e-06, 3.976912411964027902e-06, 3.971674897765548713e-06, 3.966431584221395835e-06, 3.961182480613899253e-06, 3.955927596232967355e-06, 3.950666940376279209e-06, 3.945400522350463633e-06, 3.940128351470106474e-06, 3.934850437057972527e-06, 3.929566788445252871e-06, 3.924277414970628052e-06, 3.918982325981580135e-06, 3.913681530833491459e-06, 3.908375038889894517e-06, 3.903062859522383012e-06, 3.897745002110883760e-06, 3.892421476042677514e-06, 3.887092290713790644e-06, 3.881757455528054082e-06, 3.876416979897304914e-06, 3.871070873241408404e-06, 3.865719144988392675e-06, 3.860361804573601671e-06, 3.854998861441003827e-06, 3.849630325042267106e-06, 3.844256204836987701e-06, 3.838876510292878920e-06, 3.833491250884838607e-06, 3.828100436096370459e-06, 3.822704075418542177e-06, 3.817302178350290398e-06, 3.811894754398352934e-06, 3.806481813077492386e-06, 3.801063363909589395e-06, 3.795639416424954278e-06, 3.790209980161458386e-06, 3.784775064664684464e-06, 3.779334679487913934e-06, 3.773888834192395413e-06, 3.768437538346351987e-06, 3.762980801526370345e-06, 3.757518633316467772e-06, 3.752051043308273839e-06, 3.746578041101301875e-06, 3.741099636301943117e-06, 3.735615838524653828e-06, 3.730126657392159850e-06, 3.724632102533321665e-06, 3.719132183585497187e-06, 3.713626910193533796e-06, 3.708116292009098335e-06, 3.702600338692054806e-06, 3.697079059909468689e-06, 3.691552465335883067e-06, 3.686020564653517261e-06, 3.680483367551283000e-06, 3.674940883725951206e-06, 3.669393122882442531e-06, 3.663840094731585679e-06, 3.658281808992507739e-06, 3.652718275391682537e-06, 3.647149503662189065e-06, 3.641575503544871487e-06, 3.635996284788586900e-06, 3.630411857148012365e-06, 3.624822230386061489e-06, 3.619227414272850627e-06, 3.613627418584769256e-06, 3.608022253107085457e-06, 3.602411927630550997e-06, 3.596796451954081776e-06, 3.591175835883705377e-06, 3.585550089231891920e-06, 3.579919221818690349e-06, 3.574283243471978735e-06, 3.568642164025259449e-06, 3.562995993320069391e-06, 3.557344741204997857e-06, 3.551688417534709490e-06, 3.546027032172542123e-06, 3.540360594987168629e-06, 3.534689115855194342e-06, 3.529012604659953005e-06, 3.523331071291721488e-06, 3.517644525647701579e-06, 3.511952977632254612e-06, 3.506256437155896041e-06, 3.500554914136771390e-06, 3.494848418499879104e-06, 3.489136960176061309e-06, 3.483420549104491122e-06, 3.477699195230380584e-06, 3.471972908505276694e-06, 3.466241698888203209e-06, 3.460505576344733994e-06, 3.454764550847167931e-06, 3.449018632374751692e-06, 3.443267830912741645e-06, 3.437512156453782827e-06, 3.431751618997222848e-06, 3.425986228548061568e-06, 3.420215995119412575e-06, 3.414440928730303441e-06, 3.408661039405831155e-06, 3.402876337178430550e-06, 3.397086832086884547e-06, 3.391292534176485094e-06, 3.385493453499108548e-06, 3.379689600113341461e-06, 3.373880984083581032e-06, 3.368067615481421698e-06, 3.362249504384668765e-06, 3.356426660877603955e-06, 3.350599095051158195e-06, 3.344766817001961676e-06, 3.338929836833761359e-06, 3.333088164656436300e-06, 3.327241810586259384e-06, 3.321390784745812195e-06, 3.315535097264264966e-06, 3.309674758276363098e-06, 3.303809777923868815e-06, 3.297940166354596814e-06, 3.292065933722574354e-06, 3.286187090188401673e-06, 3.280303645918065712e-06, 3.274415611084562610e-06, 3.268522995866799527e-06, 3.262625810449874585e-06, 3.256724065025022661e-06, 3.250817769789884742e-06, 3.244906934947452944e-06, 3.238991570707329208e-06, 3.233071687285955686e-06, 3.227147294904324370e-06, 3.221218403790483458e-06, 3.215285024178528965e-06, 3.209347166307796227e-06, 3.203404840424377363e-06, 3.197458056780103985e-06, 3.191506825632759809e-06, 3.185551157246332641e-06, 3.179591061889964061e-06, 3.173626549839217426e-06, 3.167657631376320975e-06, 3.161684316787828321e-06, 3.155706616367212062e-06, 3.149724540413734693e-06, 3.143738099231740907e-06, 3.137747303132135240e-06, 3.131752162431357169e-06, 3.125752687451629709e-06, 3.119748888520905208e-06, 3.113740775973133852e-06, 3.107728360146952463e-06, 3.101711651388520360e-06, 3.095690660047834770e-06, 3.089665396481620055e-06, 3.083635871052231652e-06, 3.077602094126619305e-06, 3.071564076078895268e-06, 3.065521827288004967e-06, 3.059475358137937482e-06, 3.053424679019007539e-06, 3.047369800327087244e-06, 3.041310732462506216e-06, 3.035247485832970884e-06, 3.029180070849788835e-06, 3.023108497930821152e-06, 3.017032777499114455e-06, 3.010952919983133830e-06, 3.004868935816775965e-06, 2.998780835439575399e-06, 2.992688629295705021e-06, 2.986592327835435513e-06, 2.980491941514410285e-06, 2.974387480792562546e-06, 2.968278956136680968e-06, 2.962166378018077799e-06, 2.956049756912801474e-06, 2.949929103302966031e-06, 2.943804427675637261e-06, 2.937675740523110962e-06, 2.931543052343160692e-06, 2.925406373637951454e-06, 2.919265714915575361e-06, 2.913121086689331239e-06, 2.906972499476531157e-06, 2.900819963801236764e-06, 2.894663490191794850e-06, 2.888503089181089337e-06, 2.882338771307872815e-06, 2.876170547115676409e-06, 2.869998427153056692e-06, 2.863822421973573659e-06, 2.857642542136040606e-06, 2.851458798203444157e-06, 2.845271200744509163e-06, 2.839079760332680990e-06, 2.832884487546258500e-06, 2.826685392968751504e-06, 2.820482487187725407e-06, 2.814275780796425392e-06, 2.808065284392675703e-06, 2.801851008579111730e-06, 2.795632963963213047e-06, 2.789411161157478318e-06, 2.783185610778408442e-06, 2.776956323448054073e-06, 2.770723309792927616e-06, 2.764486580444281469e-06, 2.758246146038323597e-06, 2.752002017215134176e-06, 2.745754204620294439e-06, 2.739502718903742332e-06, 2.733247570720057540e-06, 2.726988770728428880e-06, 2.720726329592907984e-06, 2.714460257981319593e-06, 2.708190566566560904e-06, 2.701917266026944620e-06, 2.695640367043605333e-06, 2.689359880303326499e-06, 2.683075816497347814e-06, 2.676788186320563921e-06, 2.670497000473143936e-06, 2.664202269659429039e-06, 2.657904004588146343e-06, 2.651602215972721878e-06, 2.645296914530124390e-06, 2.638988110982229062e-06, 2.632675816056088566e-06, 2.626360040481414412e-06, 2.620040794993350553e-06, 2.613718090331293897e-06, 2.607391937238130279e-06, 2.601062346461795546e-06, 2.594729328754176953e-06, 2.588392894871396495e-06, 2.582053055573767288e-06, 2.575709821626065463e-06, 2.569363203796104613e-06, 2.563013212857805860e-06, 2.556659859587252803e-06, 2.550303154765771749e-06, 2.543943109178742484e-06, 2.537579733614539476e-06, 2.531213038867236458e-06, 2.524843035734120378e-06, 2.518469735015923071e-06, 2.512093147518243422e-06, 2.505713284050623252e-06, 2.499330155425477097e-06, 2.492943772461093667e-06, 2.486554145977755161e-06, 2.480161286800764991e-06, 2.473765205759302594e-06, 2.467365913685326941e-06, 2.460963421416303568e-06, 2.454557739792706671e-06, 2.448148879658263898e-06, 2.441736851861340827e-06, 2.435321667254097322e-06, 2.428903336691308457e-06, 2.422481871033194885e-06, 2.416057281142867334e-06, 2.409629577886569281e-06, 2.403198772135088115e-06, 2.396764874762590461e-06, 2.390327896646901702e-06, 2.383887848669768562e-06, 2.377444741715691891e-06, 2.370998586673648262e-06, 2.364549394436171364e-06, 2.358097175898236878e-06, 2.351641941960051766e-06, 2.345183703524509773e-06, 2.338722471497437923e-06, 2.332258256789001741e-06, 2.325791070312582938e-06, 2.319320922984971682e-06, 2.312847825726704147e-06, 2.306371789460879206e-06, 2.299892825114839364e-06, 2.293410943619014986e-06, 2.286926155907225841e-06, 2.280438472916606136e-06, 2.273947905587912837e-06, 2.267454464864367356e-06, 2.260958161693301752e-06, 2.254459007025066064e-06, 2.247957011813237104e-06, 2.241452187014652336e-06, 2.234944543589619518e-06, 2.228434092500814289e-06, 2.221920844714936542e-06, 2.215404811201554223e-06, 2.208886002933385817e-06, 2.202364430886556575e-06, 2.195840106039446974e-06, 2.189313039374367725e-06, 2.182783241876423051e-06, 2.176250724533770730e-06, 2.169715498337598802e-06, 2.163177574282383486e-06, 2.156636963364759243e-06, 2.150093676585175993e-06, 2.143547724946766633e-06, 2.136999119455602418e-06, 2.130447871120681947e-06, 2.123893990954190784e-06, 2.117337489970341863e-06, 2.110778379187071675e-06, 2.104216669624880682e-06, 2.097652372307103516e-06, 2.091085498260161399e-06, 2.084516058512433891e-06, 2.077944064095626005e-06, 2.071369526045071020e-06, 2.064792455397117382e-06, 2.058212863191989138e-06, 2.051630760472595428e-06, 2.045046158283685149e-06, 2.038459067673526620e-06, 2.031869499692751380e-06, 2.025277465394614231e-06, 2.018682975835274449e-06, 2.012086042072619684e-06, 2.005486675167674992e-06, 1.998884886184901845e-06, 1.992280686189550724e-06, 1.985674086250569833e-06, 1.979065097439385373e-06, 1.972453730828761005e-06, 1.965839997495647703e-06, 1.959223908518586319e-06, 1.952605474977959577e-06, 1.945984707957421021e-06, 1.939361618543022992e-06, 1.932736217822029086e-06, 1.926108516886079946e-06, 1.919478526827130035e-06, 1.912846258740596068e-06, 1.906211723724206735e-06, 1.899574932876803091e-06, 1.892935897301220587e-06, 1.886294628101689314e-06, 1.879651136384057620e-06, 1.873005433257263829e-06, 1.866357529832434362e-06, 1.859707437221694716e-06, 1.853055166541364894e-06, 1.846400728907853205e-06, 1.839744135440856561e-06, 1.833085397261860808e-06, 1.826424525494435494e-06, 1.819761531264220102e-06, 1.813096425699171598e-06, 1.806429219928391080e-06, 1.799759925083865695e-06, 1.793088552299575025e-06, 1.786415112710276654e-06, 1.779739617454455954e-06, 1.773062077671623846e-06, 1.766382504502634006e-06, 1.759700909091101440e-06, 1.753017302582236965e-06, 1.746331696123081199e-06, 1.739644100862844857e-06, 1.732954527951640749e-06, 1.726262988542274397e-06, 1.719569493789049306e-06, 1.712874054848019370e-06, 1.706176682876997773e-06, 1.699477389035799662e-06, 1.692776184485091662e-06, 1.686073080388092932e-06, 1.679368087909400120e-06, 1.672661218215279163e-06, 1.665952482473610018e-06, 1.659241891854200915e-06, 1.652529457527562696e-06, 1.645815190666671494e-06, 1.639099102445785424e-06, 1.632381204040682182e-06, 1.625661506628966509e-06, 1.618940021388872495e-06, 1.612216759500995969e-06, 1.605491732147110348e-06, 1.598764950510439590e-06, 1.592036425775638932e-06, 1.585306169129079906e-06, 1.578574191757629350e-06, 1.571840504850425209e-06, 1.565105119597666970e-06, 1.558368047190897093e-06, 1.551629298822974749e-06, 1.544888885688350474e-06, 1.538146818981897259e-06, 1.531403109900614574e-06, 1.524657769642465175e-06, 1.517910809406645736e-06, 1.511162240393850269e-06, 1.504412073805079205e-06, 1.497660320843100307e-06, 1.490906992712733486e-06, 1.484152100618143475e-06, 1.477395655765811430e-06, 1.470637669363307367e-06, 1.463878152618111516e-06, 1.457117116740827756e-06, 1.450354572941036957e-06, 1.443590532430536467e-06, 1.436825006422125247e-06, 1.430058006128704540e-06, 1.423289542764735399e-06, 1.416519627546539173e-06, 1.409748271689559473e-06, 1.402975486411378456e-06, 1.396201282930446489e-06, 1.389425672464924041e-06, 1.382648666235611573e-06, 1.375870275463255120e-06, 1.369090511368826667e-06, 1.362309385175008356e-06, 1.355526908105263507e-06, 1.348743091382618581e-06, 1.341957946232967883e-06, 1.335171483880825688e-06, 1.328383715552611882e-06, 1.321594652475459133e-06, 1.314804305875965839e-06, 1.308012686983187432e-06, 1.301219807025923750e-06, 1.294425677232992208e-06, 1.287630308834724078e-06, 1.280833713062021537e-06, 1.274035901145158258e-06, 1.267236884317054686e-06, 1.260436673809062555e-06, 1.253635280854244187e-06, 1.246832716685851637e-06, 1.240028992537615746e-06, 1.233224119643722210e-06, 1.226418109239092376e-06, 1.219610972558158851e-06, 1.212802720836676462e-06, 1.205993365310761928e-06, 1.199182917215697220e-06, 1.192371387788924665e-06, 1.185558788267303409e-06, 1.178745129887398676e-06, 1.171930423886971489e-06, 1.165114681503753015e-06, 1.158297913975730222e-06, 1.151480132541421171e-06, 1.144661348438656976e-06, 1.137841572906387260e-06, 1.131020817183417439e-06, 1.124199092508727416e-06, 1.117376410121437067e-06, 1.110552781261098467e-06, 1.103728217166459644e-06, 1.096902729077257539e-06, 1.090076328233009286e-06, 1.083249025873279877e-06, 1.076420833237660561e-06, 1.069591761566064038e-06, 1.062761822097500282e-06, 1.055931026071852557e-06, 1.049099384728668490e-06, 1.042266909307433665e-06, 1.035433611047862786e-06, 1.028599501188671059e-06, 1.021764590969357620e-06, 1.014928891628998723e-06, 1.008092414406509685e-06, 1.001255170540649334e-06, 9.944171712702779315e-07, 9.875784278331592535e-07, 9.807389514677327970e-07, 9.738987534118936283e-07, 9.670578449032776219e-07, 9.602162371795428869e-07, 9.533739414771525805e-07, 9.465309690331464777e-07, 9.396873310839481369e-07, 9.328430388656160456e-07, 9.259981036138439374e-07, 9.191525365642371371e-07, 9.123063489510900798e-07, 9.054595520088785719e-07, 8.986121569725393114e-07, 8.917641750747339718e-07, 8.849156175488625215e-07, 8.780664956278133212e-07, 8.712168205427607602e-07, 8.643666035264561918e-07, 8.575158558089854620e-07, 8.506645886210673626e-07, 8.438128131928391969e-07, 8.369605407529198560e-07, 8.301077825299059964e-07, 8.232545497526657486e-07, 8.164008536475784484e-07, 8.095467054415643683e-07, 8.026921163608404255e-07, 7.958370976296964318e-07, 7.889816604738055091e-07, 7.821258161159705028e-07, 7.752695757794386328e-07, 7.684129506863534348e-07, 7.615559520583658952e-07, 7.546985911150758042e-07, 7.478408790773763710e-07, 7.409828271631632614e-07, 7.341244465906705308e-07, 7.272657485772352267e-07, 7.204067443380548970e-07, 7.135474450892262156e-07, 7.066878620449720072e-07, 6.998280064179413096e-07, 6.929678894206987749e-07, 6.861075222648117798e-07, 6.792469161595957580e-07, 6.723860823154550041e-07, 6.655250319396044158e-07, 6.586637762393914517e-07, 6.518023264210674038e-07, 6.449406936885497767e-07, 6.380788892464425949e-07, 6.312169242972940284e-07, 6.243548100418633134e-07, 6.174925576806369415e-07, 6.106301784125899799e-07, 6.037676834354709923e-07, 5.969050839457850977e-07, 5.900423911390802682e-07, 5.831796162087161659e-07, 5.763167703476585829e-07, 5.694538647472595017e-07, 5.625909105975366160e-07, 5.557279190874574048e-07, 5.488649014037068048e-07, 5.420018687324957320e-07, 5.351388322583220842e-07, 5.282758031642630730e-07, 5.214127926319497074e-07, 5.145498118418588079e-07, 5.076868719720737976e-07, 5.008239842000961880e-07, 4.939611597016075343e-07, 4.870984096507568977e-07, 4.802357452204466122e-07, 4.733731775811003823e-07, 4.665107179024593621e-07, 4.596483773523662937e-07, 4.527861670970334333e-07, 4.459240983010357226e-07, 4.390621821275910506e-07, 4.322004297373304677e-07, 4.253388522900998248e-07, 4.184774609437308871e-07, 4.116162668543215435e-07, 4.047552811762220421e-07, 3.978945150623214993e-07, 3.910339796628088491e-07, 3.841736861269839058e-07, 3.773136456020226014e-07, 3.704538692332623827e-07, 3.635943681644856504e-07, 3.567351535366890721e-07, 3.498762364895848432e-07, 3.430176281618897365e-07, 3.361593396885620808e-07, 3.293013822038349859e-07, 3.224437668399767097e-07, 3.155865047263566989e-07, 3.087296069912621036e-07, 3.018730847606551275e-07, 2.950169491584621306e-07, 2.881612113065571118e-07, 2.813058823250454656e-07, 2.744509733307256636e-07, 2.675964954404211123e-07, 2.607424597666963891e-07, 2.538888774211928059e-07, 2.470357595133894109e-07, 2.401831171496742175e-07, 2.333309614348451199e-07, 2.264793034724024110e-07, 2.196281543617841987e-07, 2.127775252013987579e-07, 2.059274270873837590e-07, 1.990778711123733857e-07, 1.922288683688336061e-07, 1.853804299447716596e-07, 1.785325669270775494e-07, 1.716852903999784454e-07, 1.648386114456315539e-07, 1.579925411425820155e-07, 1.511470905690988906e-07, 1.443022707988888824e-07, 1.374580929044321898e-07, 1.306145679557454434e-07, 1.237717070191450364e-07, 1.169295211602759961e-07, 1.100880214413532765e-07, 1.032472189214468246e-07, 9.640712465798865078e-08, 8.956774970584121168e-08, 8.272910511605977571e-08, 7.589120193922813157e-08, 6.905405122117233687e-08, 6.221766400629774995e-08, 5.538205133635083320e-08, 4.854722424918284885e-08, 4.171319378177962972e-08, 3.487997096750130392e-08, 2.804756683636935307e-08, 2.121599241657270295e-08, 1.438525873323092647e-08, 7.555376808681487005e-09, 7.263576624621678002e-10, -6.101787688402017054e-09, -1.292904823063489701e-08, -1.975541295289901559e-08, -2.658087084703175265e-08, -3.340541090775830627e-08, -4.022902213240480500e-08, -4.705169352213373519e-08, -5.387341408013451979e-08, -6.069417281285928649e-08, -6.751395872973579636e-08, -7.433276084318544325e-08, -8.115056816833532220e-08, -8.796736972425427548e-08, -9.478315453214410665e-08, -1.015979116165739061e-07, -1.084116300051937672e-07, -1.152242987284479068e-07, -1.220359068208091760e-07, -1.288464433189712800e-07, -1.356558972630832495e-07, -1.424642576964614624e-07, -1.492715136656085966e-07, -1.560776542199275969e-07, -1.628826684129526263e-07, -1.696865453005445677e-07, -1.764892739421252572e-07, -1.832908434003874014e-07, -1.900912427413156476e-07, -1.968904610338980629e-07, -2.036884873513599176e-07, -2.104853107693578899e-07, -2.172809203672123403e-07, -2.240753052276205643e-07, -2.308684544363726129e-07, -2.376603570835806021e-07, -2.444510022621795442e-07, -2.512403790676395151e-07, -2.580284766007175850e-07, -2.648152839644388078e-07, -2.716007902653257424e-07, -2.783849846143293418e-07, -2.851678561250223377e-07, -2.919493939148333674e-07, -2.987295871047586654e-07, -3.055084248193791095e-07, -3.122858961865762529e-07, -3.190619903390646074e-07, -3.258366964110747147e-07, -3.326100035426118168e-07, -3.393819008761424743e-07, -3.461523775578221296e-07, -3.529214227384193779e-07, -3.596890255718243958e-07, -3.664551752147570322e-07, -3.732198608295107187e-07, -3.799830715809492611e-07, -3.867447966377221734e-07, -3.935050251735019807e-07, -4.002637463636713676e-07, -4.070209493895712073e-07, -4.137766234351979271e-07, -4.205307576884217008e-07, -4.272833413419218376e-07, -4.340343635916776340e-07, -4.407838136366968472e-07, -4.475316806817461051e-07, -4.542779539343472224e-07, -4.610226226060025921e-07, -4.677656759134214245e-07, -4.745071030755144215e-07, -4.812468933161362047e-07, -4.879850358637870006e-07, -4.947215199501353097e-07, -5.014563348112285281e-07, -5.081894696872185618e-07, -5.149209138220700237e-07, -5.216506564647920317e-07, -5.283786868676345573e-07, -5.351049942870236565e-07, -5.418295679847698677e-07, -5.485523972250793502e-07, -5.552734712772865186e-07, -5.619927794155594867e-07, -5.687103109174156425e-07, -5.754260550649509047e-07, -5.821400011445453789e-07, -5.888521384465779071e-07, -5.955624562666568072e-07, -6.022709439038257506e-07, -6.089775906617803139e-07, -6.156823858485908930e-07, -6.223853187767167848e-07, -6.290863787627229609e-07, -6.357855551284992656e-07, -6.424828371994691529e-07, -6.491782143058194722e-07, -6.558716757822014662e-07, -6.625632109677662401e-07, -6.692528092058642766e-07, -6.759404598452743749e-07, -6.826261522384138703e-07, -6.893098757425580436e-07, -6.959916197195539300e-07, -7.026713735355402692e-07, -7.093491265621661735e-07, -7.160248681748018769e-07, -7.226985877537587800e-07, -7.293702746840107764e-07, -7.360399183551978522e-07, -7.427075081613607536e-07, -7.493730335021405965e-07, -7.560364837810056036e-07, -7.626978484064668081e-07, -7.693571167917886865e-07, -7.760142783550189100e-07, -7.826693225186916719e-07, -7.893222387110412734e-07, -7.959730163642407193e-07, -8.026216449155960336e-07, -8.092681138072726686e-07, -8.159124124860096311e-07, -8.225545304043385741e-07, -8.291944570190972546e-07, -8.358321817911493773e-07, -8.424676941880973231e-07, -8.491009836813024995e-07, -8.557320397471028441e-07, -8.623608518677190443e-07, -8.689874095294803210e-07, -8.756117022240482847e-07, -8.822337194481166632e-07, -8.888534507031382388e-07, -8.954708854965352582e-07, -9.020860133402188196e-07, -9.086988237503179274e-07, -9.153093062498663870e-07, -9.219174503658492005e-07, -9.285232456304056716e-07, -9.351266815817380599e-07, -9.417277477626407081e-07, -9.483264337202227449e-07, -9.549227290085964614e-07, -9.615166231859231782e-07, -9.681081058156145492e-07, -9.746971664675493253e-07, -9.812837947148057122e-07, -9.878679801378408435e-07, -9.944497123212481262e-07, -1.001028980854960239e-06, -1.007605775335145296e-06, -1.014180085362737873e-06, -1.020751900543187236e-06, -1.027321210489108547e-06, -1.033888004817347898e-06, -1.040452273150187216e-06, -1.047014005116544507e-06, -1.053573190348723578e-06, -1.060129818486589702e-06, -1.066683879174315737e-06, -1.073235362061889208e-06, -1.079784256804826650e-06, -1.086330553064185677e-06, -1.092874240506301126e-06, -1.099415308803962017e-06, -1.105953747634670895e-06, -1.112489546681542110e-06, -1.119022695634492323e-06, -1.125553184187325862e-06, -1.132081002040374505e-06, -1.138606138900235956e-06, -1.145128584478327535e-06, -1.151648328492057416e-06, -1.158165360664558443e-06, -1.164679670724414120e-06, -1.171191248406843604e-06, -1.177700083451957247e-06, -1.184206165605937988e-06, -1.190709484620781534e-06, -1.197210030254299104e-06, -1.203707792269846388e-06, -1.210202760437504723e-06, -1.216694924532356335e-06, -1.223184274335643070e-06, -1.229670799634515887e-06, -1.236154490222038461e-06, -1.242635335896917822e-06, -1.249113326464674957e-06, -1.255588451735922158e-06, -1.262060701527546534e-06, -1.268530065662423508e-06, -1.274996533969153808e-06, -1.281460096283229837e-06, -1.287920742445316613e-06, -1.294378462302431056e-06, -1.300833245707654206e-06, -1.307285082520173788e-06, -1.313733962604972925e-06, -1.320179875834035892e-06, -1.326622812084617202e-06, -1.333062761240403948e-06, -1.339499713191259154e-06, -1.345933657833220500e-06, -1.352364585068244522e-06, -1.358792484805370855e-06, -1.365217346958998950e-06, -1.371639161450062056e-06, -1.378057918205759984e-06, -1.384473607159273657e-06, -1.390886218250955614e-06, -1.397295741426879678e-06, -1.403702166638584940e-06, -1.410105483845676998e-06, -1.416505683012965831e-06, -1.422902754111637037e-06, -1.429296687120118344e-06, -1.435687472022378771e-06, -1.442075098809099648e-06, -1.448459557477383450e-06, -1.454840838030509854e-06, -1.461218930479073723e-06, -1.467593824839580939e-06, -1.473965511134158932e-06, -1.480333979393187138e-06, -1.486699219652410734e-06, -1.493061221954116532e-06, -1.499419976348020885e-06, -1.505775472889825277e-06, -1.512127701640959254e-06, -1.518476652671188015e-06, -1.524822316055732705e-06, -1.531164681876466013e-06, -1.537503740223035538e-06, -1.543839481189770223e-06, -1.550171894879665638e-06, -1.556500971401275158e-06, -1.562826700869863416e-06, -1.569149073408278951e-06, -1.575468079145529291e-06, -1.581783708216538491e-06, -1.588095950764697334e-06, -1.594404796939058382e-06, -1.600710236895468039e-06, -1.607012260797724440e-06, -1.613310858814472234e-06, -1.619606021123194855e-06, -1.625897737907101894e-06, -1.632185999356548511e-06, -1.638470795668812879e-06, -1.644752117048053831e-06, -1.651029953705081948e-06, -1.657304295858496069e-06, -1.663575133732998541e-06, -1.669842457560255591e-06, -1.676106257580049505e-06, -1.682366524037466266e-06, -1.688623247185452109e-06, -1.694876417284550097e-06, -1.701126024601494894e-06, -1.707372059410363666e-06, -1.713614511992298471e-06, -1.719853372635266546e-06, -1.726088631635166744e-06, -1.732320279294180362e-06, -1.738548305921615422e-06, -1.744772701835056725e-06, -1.750993457357565355e-06, -1.757210562820216596e-06, -1.763424008561850908e-06, -1.769633784927661497e-06, -1.775839882270358988e-06, -1.782042290949880042e-06, -1.788241001333414888e-06, -1.794436003795145800e-06, -1.800627288717364545e-06, -1.806814846488835492e-06, -1.812998667505896546e-06, -1.819178742172218373e-06, -1.825355060898545423e-06, -1.831527614103794322e-06, -1.837696392213426296e-06, -1.843861385660562498e-06, -1.850022584885720378e-06, -1.856179980336837603e-06, -1.862333562468988304e-06, -1.868483321745549231e-06, -1.874629248636503779e-06, -1.880771333619575104e-06, -1.886909567179996795e-06, -1.893043939810206242e-06, -1.899174442011004015e-06, -1.905301064289880552e-06, -1.911423797162138473e-06, -1.917542631150671510e-06, -1.923657556785914527e-06, -1.929768564605630285e-06, -1.935875645156012483e-06, -1.941978788990318655e-06, -1.948077986668599962e-06, -1.954173228760224502e-06, -1.960264505841112175e-06, -1.966351808494856575e-06, -1.972435127313567789e-06, -1.978514452896235082e-06, -1.984589775849836510e-06, -1.990661086789086081e-06, -1.996728376336161435e-06, -2.002791635121848605e-06, -2.008850853784141878e-06, -2.014906022967996879e-06, -2.020957133327823815e-06, -2.027004175524767228e-06, -2.033047140227787659e-06, -2.039086018114525192e-06, -2.045120799869646475e-06, -2.051151476185973814e-06, -2.057178037764235293e-06, -2.063200475313024971e-06, -2.069218779548623307e-06, -2.075232941196298624e-06, -2.081242950987378923e-06, -2.087248799663041500e-06, -2.093250477971369089e-06, -2.099247976668419240e-06, -2.105241286519341552e-06, -2.111230398295673527e-06, -2.117215302777789334e-06, -2.123195990754662647e-06, -2.129172453022495294e-06, -2.135144680385585891e-06, -2.141112663657381435e-06, -2.147076393657533437e-06, -2.153035861215723551e-06, -2.158991057168652367e-06, -2.164941972361173593e-06, -2.170888597647385454e-06, -2.176830923887915950e-06, -2.182768941952421607e-06, -2.188702642719252051e-06, -2.194632017074186656e-06, -2.200557055911227368e-06, -2.206477750133681638e-06, -2.212394090651501043e-06, -2.218306068383709730e-06, -2.224213674258157083e-06, -2.230116899210160350e-06, -2.236015734183640095e-06, -2.241910170130818227e-06, -2.247800198011983373e-06, -2.253685808796589481e-06, -2.259566993461645610e-06, -2.265443742992515525e-06, -2.271316048384060352e-06, -2.277183900637912820e-06, -2.283047290764926882e-06, -2.288906209784936736e-06, -2.294760648725400297e-06, -2.300610598622515592e-06, -2.306456050520932766e-06, -2.312296995473537241e-06, -2.318133424542514437e-06, -2.323965328797748458e-06, -2.329792699317916879e-06, -2.335615527190243414e-06, -2.341433803510500882e-06, -2.347247519382758788e-06, -2.353056665920467105e-06, -2.358861234244863001e-06, -2.364661215486070294e-06, -2.370456600782816111e-06, -2.376247381282460966e-06, -2.382033548140759891e-06, -2.387815092522906407e-06, -2.393592005601978218e-06, -2.399364278560007859e-06, -2.405131902587721813e-06, -2.410894868884292326e-06, -2.416653168658419920e-06, -2.422406793126729110e-06, -2.428155733514881827e-06, -2.433899981057294090e-06, -2.439639526997174965e-06, -2.445374362586245353e-06, -2.451104479085825580e-06, -2.456829867765259068e-06, -2.462550519902996535e-06, -2.468266426786315632e-06, -2.473977579711358209e-06, -2.479683969982885099e-06, -2.485385588915311194e-06, -2.491082427831168926e-06, -2.496774478062156470e-06, -2.502461730948901846e-06, -2.508144177840693140e-06, -2.513821810096569903e-06, -2.519494619083986960e-06, -2.525162596178623401e-06, -2.530825732766670419e-06, -2.536484020242304611e-06, -2.542137450008705685e-06, -2.547786013478855640e-06, -2.553429702074007326e-06, -2.559068507224702160e-06, -2.564702420370578265e-06, -2.570331432960313725e-06, -2.575955536451455484e-06, -2.581574722311655163e-06, -2.587188982015890372e-06, -2.592798307050056130e-06, -2.598402688908174310e-06, -2.604002119093408816e-06, -2.609596589119132414e-06, -2.615186090506344131e-06, -2.620770614785993939e-06, -2.626350153498770568e-06, -2.631924698193795389e-06, -2.637494240429423698e-06, -2.643058771774271752e-06, -2.648618283804435529e-06, -2.654172768107059285e-06, -2.659722216277522127e-06, -2.665266619920534503e-06, -2.670805970651100850e-06, -2.676340260092019157e-06, -2.681869479876203103e-06, -2.687393621646383056e-06, -2.692912677053921073e-06, -2.698426637759501231e-06, -2.703935495434226538e-06, -2.709439241757074442e-06, -2.714937868417180435e-06, -2.720431367113596221e-06, -2.725919729554043314e-06, -2.731402947455959539e-06, -2.736881012546202154e-06, -2.742353916560866155e-06, -2.747821651246275310e-06, -2.753284208357472745e-06, -2.758741579659030705e-06, -2.764193756926012785e-06, -2.769640731941526429e-06, -2.775082496498960368e-06, -2.780519042401760576e-06, -2.785950361462172432e-06, -2.791376445502271553e-06, -2.796797286353727052e-06, -2.802212875857565217e-06, -2.807623205865151640e-06, -2.813028268236747033e-06, -2.818428054842482158e-06, -2.823822557562144799e-06, -2.829211768285179339e-06, -2.834595678910454251e-06, -2.839974281347257783e-06, -2.845347567513848263e-06, -2.850715529338428183e-06, -2.856078158758922281e-06, -2.861435447722973305e-06, -2.866787388187749734e-06, -2.872133972120884717e-06, -2.877475191499054324e-06, -2.882811038308965191e-06, -2.888141504547094904e-06, -2.893466582219497601e-06, -2.898786263342786533e-06, -2.904100539942621265e-06, -2.909409404054793145e-06, -2.914712847724909784e-06, -2.920010863008458590e-06, -2.925303441970545026e-06, -2.930590576686908208e-06, -2.935872259242432244e-06, -2.941148481732161824e-06, -2.946419236261065054e-06, -2.951684514944027948e-06, -2.956944309905652412e-06, -2.962198613281207461e-06, -2.967447417215219756e-06, -2.972690713862418048e-06, -2.977928495387518875e-06, -2.983160753965022431e-06, -2.988387481780140911e-06, -2.993608671027626218e-06, -2.998824313911562442e-06, -3.004034402647499534e-06, -3.009238929460116765e-06, -3.014437886584122702e-06, -3.019631266265062425e-06, -3.024819060757820401e-06, -3.030001262327659369e-06, -3.035177863249919640e-06, -3.040348855809850966e-06, -3.045514232303559096e-06, -3.050673985036809341e-06, -3.055828106324822020e-06, -3.060976588494409943e-06, -3.066119423881605875e-06, -3.071256604832659066e-06, -3.076388123704968265e-06, -3.081513972864699433e-06, -3.086634144688995230e-06, -3.091748631565676863e-06, -3.096857425892122187e-06, -3.101960520075966201e-06, -3.107057906536053117e-06, -3.112149577699868999e-06, -3.117235526006826559e-06, -3.122315743905722364e-06, -3.127390223855657982e-06, -3.132458958326985699e-06, -3.137521939799016442e-06, -3.142579160762101368e-06, -3.147630613717395960e-06, -3.152676291175752114e-06, -3.157716185658399570e-06, -3.162750289697875962e-06, -3.167778595835519168e-06, -3.172801096624682657e-06, -3.177817784628218097e-06, -3.182828652419664175e-06, -3.187833692582976386e-06, -3.192832897712576589e-06, -3.197826260413151835e-06, -3.202813773300524271e-06, -3.207795429000321720e-06, -3.212771220148684108e-06, -3.217741139393159622e-06, -3.222705179390457114e-06, -3.227663332808481938e-06, -3.232615592326189842e-06, -3.237561950632359614e-06, -3.242502400426547265e-06, -3.247436934418934412e-06, -3.252365545330027580e-06, -3.257288225891605184e-06, -3.262204968845379642e-06, -3.267115766943902430e-06, -3.272020612950369263e-06, -3.276919499638584518e-06, -3.281812419792781245e-06, -3.286699366208552051e-06, -3.291580331691451074e-06, -3.296455309057942661e-06, -3.301324291135170972e-06, -3.306187270761017583e-06, -3.311044240783811794e-06, -3.315895194063276349e-06, -3.320740123469220034e-06, -3.325579021882369468e-06, -3.330411882194258986e-06, -3.335238697306896062e-06, -3.340059460133795537e-06, -3.344874163598532460e-06, -3.349682800635714910e-06, -3.354485364190760801e-06, -3.359281847219877125e-06, -3.364072242689890978e-06, -3.368856543579108020e-06, -3.373634742876028378e-06, -3.378406833580216968e-06, -3.383172808702111646e-06, -3.387932661262770791e-06, -3.392686384294830027e-06, -3.397433970841135961e-06, -3.402175413955667754e-06, -3.406910706703291481e-06, -3.411639842159831707e-06, -3.416362813411811869e-06, -3.421079613557339426e-06, -3.425790235705037328e-06, -3.430494672973857247e-06, -3.435192918495006572e-06, -3.439884965409804572e-06, -3.444570806870562039e-06, -3.449250436041479143e-06, -3.453923846096229695e-06, -3.458591030221017663e-06, -3.463251981612212682e-06, -3.467906693477236471e-06, -3.472555159035200230e-06, -3.477197371515824245e-06, -3.481833324159285424e-06, -3.486463010218113379e-06, -3.491086422955043200e-06, -3.495703555643938296e-06, -3.500314401570606085e-06, -3.504918954030482213e-06, -3.509517206331609559e-06, -3.514109151792340245e-06, -3.518694783742343596e-06, -3.523274095522273688e-06, -3.527847080484764179e-06, -3.532413731992136672e-06, -3.536974043419406824e-06, -3.541528008151903768e-06, -3.546075619586157801e-06, -3.550616871130788073e-06, -3.555151756204339689e-06, -3.559680268237220030e-06, -3.564202400671495458e-06, -3.568718146959856671e-06, -3.573227500566242543e-06, -3.577730454966686729e-06, -3.582227003647062018e-06, -3.586717140105969566e-06, -3.591200857852472231e-06, -3.595678150407124143e-06, -3.600149011301819087e-06, -3.604613434079764244e-06, -3.609071412295267159e-06, -3.613522939514619203e-06, -3.617968009314846615e-06, -3.622406615284303008e-06, -3.626838751023553669e-06, -3.631264410143289740e-06, -3.635683586266210749e-06, -3.640096273026817511e-06, -3.644502464070391027e-06, -3.648902153053858582e-06, -3.653295333645508709e-06, -3.657681999524907765e-06, -3.662062144383651244e-06, -3.666435761924151673e-06, -3.670802845860500895e-06, -3.675163389918247295e-06, -3.679517387834430110e-06, -3.683864833357324888e-06, -3.688205720247342199e-06, -3.692540042275775289e-06, -3.696867793225603073e-06, -3.701188966891361383e-06, -3.705503557079062075e-06, -3.709811557606082495e-06, -3.714112962301952371e-06, -3.718407765007113754e-06, -3.722695959573778221e-06, -3.726977539865761274e-06, -3.731252499758209601e-06, -3.735520833138473514e-06, -3.739782533904874098e-06, -3.744037595967574383e-06, -3.748286013248318877e-06, -3.752527779680474231e-06, -3.756762889208837802e-06, -3.760991335790416506e-06, -3.765213113393323131e-06, -3.769428215997449728e-06, -3.773636637594379521e-06, -3.777838372187182346e-06, -3.782033413791180374e-06, -3.786221756432778351e-06, -3.790403394150294545e-06, -3.794578320993729500e-06, -3.798746531024789757e-06, -3.802908018316711245e-06, -3.807062776955069045e-06, -3.811210801036735541e-06, -3.815352084669768610e-06, -3.819486621975140840e-06, -3.823614407084785850e-06, -3.827735434142432193e-06, -3.831849697304325872e-06, -3.835957190737187303e-06, -3.840057908620843040e-06, -3.844151845146135303e-06, -3.848238994515751219e-06, -3.852319350944753913e-06, -3.856392908659618588e-06, -3.860459661898111391e-06, -3.864519604910959772e-06, -3.868572731960003404e-06, -3.872619037318900611e-06, -3.876658515273953377e-06, -3.880691160121977061e-06, -3.884716966173042240e-06, -3.888735927748293597e-06, -3.892748039180968060e-06, -3.896753294816061916e-06, -3.900751689011171066e-06, -3.904743216134521673e-06, -3.908727870567559546e-06, -3.912705646702944361e-06, -3.916676538945237456e-06, -3.920640541711715825e-06, -3.924597649430468840e-06, -3.928547856542138900e-06, -3.932491157499683416e-06, -3.936427546767498132e-06, -3.940357018821931275e-06, -3.944279568152095010e-06, -3.948195189257787670e-06, -3.952103876652109395e-06, -3.956005624859441954e-06, -3.959900428416186515e-06, -3.963788281871513269e-06, -3.967669179785490331e-06, -3.971543116730837100e-06, -3.975410087292646434e-06, -3.979270086067529143e-06, -3.983123107664350065e-06, -3.986969146704047643e-06, -3.990808197819629695e-06, -3.994640255656020943e-06, -3.998465314870771984e-06, -4.002283370132987790e-06, -4.006094416124087501e-06, -4.009898447537566401e-06, -4.013695459078896824e-06, -4.017485445466205774e-06, -4.021268401429217831e-06, -4.025044321709983599e-06, -4.028813201062687426e-06, -4.032575034253688069e-06, -4.036329816061327257e-06, -4.040077541276666613e-06, -4.043818204702368725e-06, -4.047551801153511988e-06, -4.051278325457325486e-06, -4.054997772453094121e-06, -4.058710136992793046e-06, -4.062415413940140675e-06, -4.066113598171185684e-06, -4.069804684574261264e-06, -4.073488668049901273e-06, -4.077165543510700468e-06, -4.080835305882049734e-06, -4.084497950101045103e-06, -4.088153471117227217e-06, -4.091801863892387354e-06, -4.095443123400633498e-06, -4.099077244628136231e-06, -4.102704222573889366e-06, -4.106324052248648613e-06, -4.109936728675650717e-06, -4.113542246890452513e-06, -4.117140601940714939e-06, -4.120731788886972141e-06, -4.124315802801721754e-06, -4.127892638769273292e-06, -4.131462291887323622e-06, -4.135024757265206998e-06, -4.138580030024611649e-06, -4.142128105300103246e-06, -4.145668978238105921e-06, -4.149202643997569729e-06, -4.152729097749838513e-06, -4.156248334678610936e-06, -4.159760349979840536e-06, -4.163265138862512450e-06, -4.166762696546877355e-06, -4.170253018266720669e-06, -4.173736099267631211e-06, -4.177211934807560248e-06, -4.180680520157423732e-06, -4.184141850600218847e-06, -4.187595921430875777e-06, -4.191042727957792529e-06, -4.194482265501124776e-06, -4.197914529393504136e-06, -4.201339514980683619e-06, -4.204757217619724968e-06, -4.208167632681320382e-06, -4.211570755547963770e-06, -4.214966581614835053e-06, -4.218355106289430010e-06, -4.221736324992381905e-06, -4.225110233155692025e-06, -4.228476826225042940e-06, -4.231836099657924006e-06, -4.235188048924393705e-06, -4.238532669507672562e-06, -4.241869956902532940e-06, -4.245199906616769482e-06, -4.248522514171066135e-06, -4.251837775098172830e-06, -4.255145684943356101e-06, -4.258446239265119070e-06, -4.261739433633430295e-06, -4.265025263631888787e-06, -4.268303724856096015e-06, -4.271574812914181066e-06, -4.274838523427553656e-06, -4.278094852029234627e-06, -4.281343794365324707e-06, -4.284585346094841027e-06, -4.287819502888955642e-06, -4.291046260431599463e-06, -4.294265614419328428e-06, -4.297477560561348912e-06, -4.300682094579294111e-06, -4.303879212207956723e-06, -4.307068909194284371e-06, -4.310251181297992003e-06, -4.313426024291538181e-06, -4.316593433959782874e-06, -4.319753406100795530e-06, -4.322905936524808144e-06, -4.326051021054908130e-06, -4.329188655526835032e-06, -4.332318835789045747e-06, -4.335441557702493451e-06, -4.338556817141334866e-06, -4.341664609991923145e-06, -4.344764932153521916e-06, -4.347857779538050324e-06, -4.350943148070031367e-06, -4.354021033687156017e-06, -4.357091432339363341e-06, -4.360154339989507118e-06, -4.363209752613142387e-06, -4.366257666198618619e-06, -4.369298076746827300e-06, -4.372330980271881256e-06, -4.375356372800207477e-06, -4.378374250371132418e-06, -4.381384609036743084e-06, -4.384387444861921761e-06, -4.387382753924123246e-06, -4.390370532314106680e-06, -4.393350776134899630e-06, -4.396323481502508751e-06, -4.399288644545712259e-06, -4.402246261405943887e-06, -4.405196328237901909e-06, -4.408138841208752073e-06, -4.411073796498087796e-06, -4.414001190299165136e-06, -4.416921018817495871e-06, -4.419833278271380282e-06, -4.422737964892420456e-06, -4.425635074924616501e-06, -4.428524604624932363e-06, -4.431406550263188257e-06, -4.434280908122076755e-06, -4.437147674496962043e-06, -4.440006845696637167e-06, -4.442858418041789210e-06, -4.445702387866945774e-06, -4.448538751518928295e-06, -4.451367505357461063e-06, -4.454188645755566788e-06, -4.457002169098828827e-06, -4.459808071785336981e-06, -4.462606350226912301e-06, -4.465397000847691700e-06, -4.468180020084725951e-06, -4.470955404388505702e-06, -4.473723150221499492e-06, -4.476483254060024002e-06, -4.479235712392767678e-06, -4.481980521721341298e-06, -4.484717678560690482e-06, -4.487447179438397733e-06, -4.490169020894621453e-06, -4.492883199483198778e-06, -4.495589711770435170e-06, -4.498288554335533014e-06, -4.500979723771204872e-06, -4.503663216682294511e-06, -4.506339029687016958e-06, -4.509007159416818744e-06, -4.511667602515657925e-06, -4.514320355640691020e-06, -4.516965415461962159e-06, -4.519602778662378511e-06, -4.522232441938261708e-06, -4.524854401998452526e-06, -4.527468655564821653e-06, -4.530075199372761808e-06, -4.532674030169829103e-06, -4.535265144717036464e-06, -4.537848539788592743e-06, -4.540424212171357228e-06, -4.542992158665311443e-06, -4.545552376083449877e-06, -4.548104861251682579e-06, -4.550649611009250202e-06, -4.553186622208138705e-06, -4.555715891713388516e-06, -4.558237416403123337e-06, -4.560751193168465436e-06, -4.563257218913488214e-06, -4.565755490555638030e-06, -4.568246005025054878e-06, -4.570728759265045032e-06, -4.573203750231964154e-06, -4.575670974895202053e-06, -4.578130430237110679e-06, -4.580582113253439505e-06, -4.583026020952670601e-06, -4.585462150356409121e-06, -4.587890498499402780e-06, -4.590311062429299606e-06, -4.592723839207217991e-06, -4.595128825906968270e-06, -4.597526019615555009e-06, -4.599915417433106704e-06, -4.602297016472782603e-06, -4.604670813860754076e-06, -4.607036806736644226e-06, -4.609394992252797738e-06, -4.611745367574767086e-06, -4.614087929881244764e-06, -4.616422676363987058e-06, -4.618749604227768300e-06, -4.621068710690792531e-06, -4.623379992984072624e-06, -4.625683448351837707e-06, -4.627979074051394249e-06, -4.630266867353115052e-06, -4.632546825540806857e-06, -4.634818945911193660e-06, -4.637083225773765088e-06, -4.639339662451834349e-06, -4.641588253281427765e-06, -4.643828995611661709e-06, -4.646061886805148326e-06, -4.648286924237328924e-06, -4.650504105296866149e-06, -4.652713427385582997e-06, -4.654914887918357783e-06, -4.657108484323564597e-06, -4.659294214042460902e-06, -4.661472074529178212e-06, -4.663642063251643671e-06, -4.665804177690539040e-06, -4.667958415339671705e-06, -4.670104773706373629e-06, -4.672243250310909271e-06, -4.674373842686431544e-06, -4.676496548379864424e-06, -4.678611364950905989e-06, -4.680718289972428223e-06, -4.682817321030922549e-06, -4.684908455725306367e-06, -4.686991691668423990e-06, -4.689067026485913319e-06, -4.691134457816568369e-06, -4.693193983312704343e-06, -4.695245600639623152e-06, -4.697289307475516009e-06, -4.699325101512384150e-06, -4.701352980455030022e-06, -4.703372942021456232e-06, -4.705384983943278054e-06, -4.707389103964601957e-06, -4.709385299843467256e-06, -4.711373569350689061e-06, -4.713353910270425795e-06, -4.715326320400049594e-06, -4.717290797550128520e-06, -4.719247339544388444e-06, -4.721195944220025604e-06, -4.723136609427208545e-06, -4.725069333029302589e-06, -4.726994112903277250e-06, -4.728910946938788058e-06, -4.730819833038964293e-06, -4.732720769120414919e-06, -4.734613753112633966e-06, -4.736498782958497736e-06, -4.738375856614086080e-06, -4.740244972048608710e-06, -4.742106127244852426e-06, -4.743959320198530598e-06, -4.745804548918661792e-06, -4.747641811427579928e-06, -4.749471105760807233e-06, -4.751292429967042376e-06, -4.753105782108507754e-06, -4.754911160260401465e-06, -4.756708562511269994e-06, -4.758497986962884555e-06, -4.760279431730315626e-06, -4.762052894941766083e-06, -4.763818374738977777e-06, -4.765575869276675032e-06, -4.767325376722946659e-06, -4.769066895259134147e-06, -4.770800423079731711e-06, -4.772525958392797953e-06, -4.774243499419391735e-06, -4.775953044393883891e-06, -4.777654591563947059e-06, -4.779348139190507402e-06, -4.781033685547691243e-06, -4.782711228923154565e-06, -4.784380767617515494e-06, -4.786042299944833723e-06, -4.787695824232387740e-06, -4.789341338820730735e-06, -4.790978842063633845e-06, -4.792608332328379232e-06, -4.794229807995280658e-06, -4.795843267458004513e-06, -4.797448709123515605e-06, -4.799046131411950950e-06, -4.800635532757013645e-06, -4.802216911605501914e-06, -4.803790266417225258e-06, -4.805355595665805741e-06, -4.806912897837818256e-06, -4.808462171433092915e-06, -4.810003414965040308e-06, -4.811536626960092464e-06, -4.813061805958013709e-06, -4.814578950511911680e-06, -4.816088059188063683e-06, -4.817589130566287691e-06, -4.819082163239539159e-06, -4.820567155813822085e-06, -4.822044106908914915e-06, -4.823513015157554007e-06, -4.824973879205785147e-06, -4.826426697713169379e-06, -4.827871469352389132e-06, -4.829308192809215192e-06, -4.830736866783197028e-06, -4.832157489986828466e-06, -4.833570061145894126e-06, -4.834974578999813318e-06, -4.836371042300747270e-06, -4.837759449814674008e-06, -4.839139800320602317e-06, -4.840512092610797043e-06, -4.841876325491067093e-06, -4.843232497780377486e-06, -4.844580608310742635e-06, -4.845920655927920059e-06, -4.847252639490689563e-06, -4.848576557871118357e-06, -4.849892409954846507e-06, -4.851200194640351712e-06, -4.852499910839859861e-06, -4.853791557478637763e-06, -4.855075133495313325e-06, -4.856350637841814563e-06, -4.857618069483367067e-06, -4.858877427398423692e-06, -4.860128710578940690e-06, -4.861371918029969445e-06, -4.862607048769875852e-06, -4.863834101830564779e-06, -4.865053076256841406e-06, -4.866263971107021937e-06, -4.867466785452845506e-06, -4.868661518379109954e-06, -4.869848168984084334e-06, -4.871026736379236166e-06, -4.872197219689286497e-06, -4.873359618052452146e-06, -4.874513930620056076e-06, -4.875660156556712889e-06, -4.876798295040594798e-06, -4.877928345262773479e-06, -4.879050306427812998e-06, -4.880164177753694420e-06, -4.881269958471510883e-06, -4.882367647825706456e-06, -4.883457245074010921e-06, -4.884538749487452477e-06, -4.885612160350265414e-06, -4.886677476960221301e-06, -4.887734698628140253e-06, -4.888783824678219573e-06, -4.889824854447908395e-06, -4.890857787287943260e-06, -4.891882622562491263e-06, -4.892899359648809546e-06, -4.893907997937552771e-06, -4.894908536832637594e-06, -4.895900975751236740e-06, -4.896885314123795936e-06, -4.897861551394183842e-06, -4.898829687019391353e-06, -4.899789720469744203e-06, -4.900741651228854686e-06, -4.901685478793553042e-06, -4.902621202674127174e-06, -4.903548822393981289e-06, -4.904468337489801916e-06, -4.905379747511618896e-06, -4.906283052022706277e-06, -4.907178250599524716e-06, -4.908065342832056054e-06, -4.908944328323361173e-06, -4.909815206689668925e-06, -4.910677977560752220e-06, -4.911532640579465545e-06, -4.912379195401945711e-06, -4.913217641697725355e-06, -4.914047979149459348e-06, -4.914870207453106061e-06, -4.915684326317918892e-06, -4.916490335466325147e-06, -4.917288234634180987e-06, -4.918078023570502927e-06, -4.918859702037413623e-06, -4.919633269810578940e-06, -4.920398726678750554e-06, -4.921156072443910798e-06, -4.921905306921444605e-06, -4.922646429939839661e-06, -4.923379441340893931e-06, -4.924104340979637723e-06, -4.924821128724352334e-06, -4.925529804456541241e-06, -4.926230368071100361e-06, -4.926922819475890298e-06, -4.927607158592268278e-06, -4.928283385354702749e-06, -4.928951499710868251e-06, -4.929611501621883431e-06, -4.930263391061816375e-06, -4.930907168018097114e-06, -4.931542832491482896e-06, -4.932170384495842191e-06, -4.932789824058229232e-06, -4.933401151219140663e-06, -4.934004366031957348e-06, -4.934599468563595736e-06, -4.935186458894075032e-06, -4.935765337116550223e-06, -4.936336103337590760e-06, -4.936898757676761273e-06, -4.937453300266929891e-06, -4.937999731254264007e-06, -4.938538050797992264e-06, -4.939068259070624779e-06, -4.939590356257965006e-06, -4.940104342558809883e-06, -4.940610218185275094e-06, -4.941107983362734932e-06, -4.941597638329674064e-06, -4.942079183337787483e-06, -4.942552618651965261e-06, -4.943017944550268833e-06, -4.943475161324045347e-06, -4.943924269277703196e-06, -4.944365268728851784e-06, -4.944798160008448058e-06, -4.945222943460355209e-06, -4.945639619441761948e-06, -4.946048188323108818e-06, -4.946448650487884055e-06, -4.946841006332795540e-06, -4.947225256267688636e-06, -4.947601400715585149e-06, -4.947969440112721446e-06, -4.948329374908447659e-06, -4.948681205565247165e-06, -4.949024932558822137e-06, -4.949360556377968185e-06, -4.949688077524645503e-06, -4.950007496514043247e-06, -4.950318813874388950e-06, -4.950622030147083203e-06, -4.950917145886677628e-06, -4.951204161660874036e-06, -4.951483078050489695e-06, -4.951753895649505613e-06, -4.952016615064995384e-06, -4.952271236917163309e-06, -4.952517761839363028e-06, -4.952756190478017899e-06, -4.952986523492770076e-06, -4.953208761556300939e-06, -4.953422905354384454e-06, -4.953628955585993059e-06, -4.953826912963106224e-06, -4.954016778210873093e-06, -4.954198552067556569e-06, -4.954372235284470643e-06, -4.954537828626061702e-06, -4.954695332869845005e-06, -4.954844748806440258e-06, -4.954986077239530109e-06, -4.955119318985943159e-06, -4.955244474875532830e-06, -4.955361545751223962e-06, -4.955470532469082261e-06, -4.955571435898163530e-06, -4.955664256920661055e-06, -4.955748996431825980e-06, -4.955825655339882607e-06, -4.955894234566249469e-06, -4.955954735045300469e-06, -4.956007157724494474e-06, -4.956051503564393106e-06, -4.956087773538517587e-06, -4.956115968633491895e-06, -4.956136089848944504e-06, -4.956148138197562595e-06, -4.956152114705046315e-06, -4.956148020410178236e-06, -4.956135856364681900e-06, -4.956115623633398847e-06, -4.956087323294124291e-06, -4.956050956437679122e-06, -4.956006524167935310e-06, -4.955954027601723584e-06, -4.955893467868899499e-06, -4.955824846112359528e-06, -4.955748163487939420e-06, -4.955663421164511608e-06, -4.955570620323928457e-06, -4.955469762160990927e-06, -4.955360847883574775e-06, -4.955243878712456074e-06, -4.955118855881394214e-06, -4.954985780637220848e-06, -4.954844654239576458e-06, -4.954695477961186493e-06, -4.954538253087712290e-06, -4.954372980917760387e-06, -4.954199662762885072e-06, -4.954018299947627338e-06, -4.953828893809430188e-06, -4.953631445698708083e-06, -4.953425956978820693e-06, -4.953212429026047479e-06, -4.952990863229606330e-06, -4.952761260991614601e-06, -4.952523623727178897e-06, -4.952277952864249383e-06, -4.952024249843763780e-06, -4.951762516119509301e-06, -4.951492753158225983e-06, -4.951214962439529615e-06, -4.950929145455948153e-06, -4.950635303712889538e-06, -4.950333438728679808e-06, -4.950023552034532611e-06, -4.949705645174502612e-06, -4.949379719705568505e-06, -4.949045777197565250e-06, -4.948703819233184073e-06, -4.948353847408013125e-06, -4.947995863330467176e-06, -4.947629868621862153e-06, -4.947255864916331290e-06, -4.946873853860886951e-06, -4.946483837115330857e-06, -4.946085816352368423e-06, -4.945679793257511360e-06, -4.945265769529100536e-06, -4.944843746878313605e-06, -4.944413727029137055e-06, -4.943975711718409403e-06, -4.943529702695733951e-06, -4.943075701723557565e-06, -4.942613710577120694e-06, -4.942143731044463304e-06, -4.941665764926404545e-06, -4.941179814036602893e-06, -4.940685880201457895e-06, -4.940183965260166070e-06, -4.939674071064703124e-06, -4.939156199479803620e-06, -4.938630352382992319e-06, -4.938096531664518956e-06, -4.937554739227435325e-06, -4.937004976987524123e-06, -4.936447246873339611e-06, -4.935881550826137308e-06, -4.935307890799938368e-06, -4.934726268761485530e-06, -4.934136686690281241e-06, -4.933539146578516499e-06, -4.932933650431125913e-06, -4.932320200265719094e-06, -4.931698798112698392e-06, -4.931069446015068311e-06, -4.930432146028598990e-06, -4.929786900221755050e-06, -4.929133710675632917e-06, -4.928472579484095493e-06, -4.927803508753615464e-06, -4.927126500603394724e-06, -4.926441557165283065e-06, -4.925748680583748527e-06, -4.925047873015967186e-06, -4.924339136631825696e-06, -4.923622473613709526e-06, -4.922897886156791805e-06, -4.922165376468830874e-06, -4.921424946770147423e-06, -4.920676599293819303e-06, -4.919920336285490946e-06, -4.919156160003356425e-06, -4.918384072718324624e-06, -4.917604076713875243e-06, -4.916816174286028305e-06, -4.916020367743554219e-06, -4.915216659407609559e-06, -4.914405051612096202e-06, -4.913585546703443642e-06, -4.912758147040594591e-06, -4.911922854995177776e-06, -4.911079672951329208e-06, -4.910228603305691343e-06, -4.909369648467535050e-06, -4.908502810858667285e-06, -4.907628092913355706e-06, -4.906745497078540433e-06, -4.905855025813535888e-06, -4.904956681590313705e-06, -4.904050466893297754e-06, -4.903136384219461541e-06, -4.902214436078224875e-06, -4.901284624991586006e-06, -4.900346953493966614e-06, -4.899401424132289740e-06, -4.898448039466067028e-06, -4.897486802067087864e-06, -4.896517714519823412e-06, -4.895540779421133540e-06, -4.894555999380250726e-06, -4.893563377018969794e-06, -4.892562914971500528e-06, -4.891554615884485464e-06, -4.890538482417093908e-06, -4.889514517240737332e-06, -4.888482723039414965e-06, -4.887443102509491871e-06, -4.886395658359755697e-06, -4.885340393311387032e-06, -4.884277310097989895e-06, -4.883206411465522281e-06, -4.882127700172378323e-06, -4.881041178989306129e-06, -4.879946850699440819e-06, -4.878844718098290120e-06, -4.877734783993764017e-06, -4.876617051206011275e-06, -4.875491522567639665e-06, -4.874358200923596535e-06, -4.873217089131140009e-06, -4.872068190059899129e-06, -4.870911506591734089e-06, -4.869747041620917509e-06, -4.868574798054038710e-06, -4.867394778809926643e-06, -4.866206986819784561e-06, -4.865011425027120566e-06, -4.863808096387589211e-06, -4.862597003869293893e-06, -4.861378150452543755e-06, -4.860151539129908740e-06, -4.858917172906285662e-06, -4.857675054798716094e-06, -4.856425187836571867e-06, -4.855167575061478839e-06, -4.853902219527263527e-06, -4.852629124299977680e-06, -4.851348292457971113e-06, -4.850059727091670640e-06, -4.848763431303783358e-06, -4.847459408209377115e-06, -4.846147660935433279e-06, -4.844828192621329543e-06, -4.843501006418574807e-06, -4.842166105490728710e-06, -4.840823493013828531e-06, -4.839473172175703944e-06, -4.838115146176616523e-06, -4.836749418228909922e-06, -4.835375991556951427e-06, -4.833994869397330162e-06, -4.832606054998929089e-06, -4.831209551622456594e-06, -4.829805362540893725e-06, -4.828393491039403560e-06, -4.826973940415000857e-06, -4.825546713977156845e-06, -4.824111815047095333e-06, -4.822669246958293309e-06, -4.821219013056262405e-06, -4.819761116698651389e-06, -4.818295561254948854e-06, -4.816822350107052428e-06, -4.815341486648573355e-06, -4.813852974285307449e-06, -4.812356816435168178e-06, -4.810853016527795333e-06, -4.809341578005222492e-06, -4.807822504321322212e-06, -4.806295798941844993e-06, -4.804761465344736916e-06, -4.803219507019888073e-06, -4.801669927468973326e-06, -4.800112730206027440e-06, -4.798547918756668358e-06, -4.796975496658690121e-06, -4.795395467461746922e-06, -4.793807834727550474e-06, -4.792212602029611654e-06, -4.790609772953511561e-06, -4.788999351096566934e-06, -4.787381340068169815e-06, -4.785755743489635929e-06, -4.784122564993931089e-06, -4.782481808226291232e-06, -4.780833476843641346e-06, -4.779177574514660698e-06, -4.777514104920106395e-06, -4.775843071752491515e-06, -4.774164478716252821e-06, -4.772478329527669442e-06, -4.770784627914686691e-06, -4.769083377617337889e-06, -4.767374582387328471e-06, -4.765658245988227416e-06, -4.763934372195413036e-06, -4.762202964796105163e-06, -4.760464027589155933e-06, -4.758717564385379281e-06, -4.756963579007308690e-06, -4.755202075289251402e-06, -4.753433057077280791e-06, -4.751656528229267710e-06, -4.749872492614648395e-06, -4.748080954114829355e-06, -4.746281916622818908e-06, -4.744475384043401672e-06, -4.742661360293119082e-06, -4.740839849300043231e-06, -4.739010855004124157e-06, -4.737174381356932343e-06, -4.735330432321747653e-06, -4.733479011873524608e-06, -4.731620123998913561e-06, -4.729753772696086206e-06, -4.727879961975020180e-06, -4.725998695857300864e-06, -4.724109978376117986e-06, -4.722213813576388449e-06, -4.720310205514412429e-06, -4.718399158258329082e-06, -4.716480675887831095e-06, -4.714554762494180776e-06, -4.712621422180211751e-06, -4.710680659060448395e-06, -4.708732477260741607e-06, -4.706776880918671998e-06, -4.704813874183565987e-06, -4.702843461215872380e-06, -4.700865646187876422e-06, -4.698880433283405030e-06, -4.696887826697471038e-06, -4.694887830637156650e-06, -4.692880449320502139e-06, -4.690865686977359651e-06, -4.688843547849060320e-06, -4.686814036188216916e-06, -4.684777156259006746e-06, -4.682732912337365632e-06, -4.680681308710163741e-06, -4.678622349676054317e-06, -4.676556039545157737e-06, -4.674482382638624439e-06, -4.672401383289664917e-06, -4.670313045842327451e-06, -4.668217374652341754e-06, -4.666114374086782697e-06, -4.664004048524171954e-06, -4.661886402354126484e-06, -4.659761439978148813e-06, -4.657629165808570782e-06, -4.655489584269368395e-06, -4.653342699795898389e-06, -4.651188516834493357e-06, -4.649027039843309621e-06, -4.646858273291603873e-06, -4.644682221659701831e-06, -4.642498889439550503e-06, -4.640308281134368367e-06, -4.638110401258288765e-06, -4.635905254337358560e-06, -4.633692844908248101e-06, -4.631473177519241405e-06, -4.629246256729869393e-06, -4.627012087110561760e-06, -4.624770673243475372e-06, -4.622522019721742098e-06, -4.620266131149550132e-06, -4.618003012142506517e-06, -4.615732667327339839e-06, -4.613455101341976460e-06, -4.611170318835489694e-06, -4.608878324468242959e-06, -4.606579122911462024e-06, -4.604272718847790659e-06, -4.601959116970928958e-06, -4.599638321985691781e-06, -4.597310338608124796e-06, -4.594975171565105530e-06, -4.592632825594859210e-06, -4.590283305446652138e-06, -4.587926615880811170e-06, -4.585562761668762685e-06, -4.583191747593024110e-06, -4.580813578446987079e-06, -4.578428259035282510e-06, -4.576035794173512087e-06, -4.573636188688327044e-06, -4.571229447417478132e-06, -4.568815575209437844e-06, -4.566394576923969623e-06, -4.563966457431714512e-06, -4.561531221614298720e-06, -4.559088874364357345e-06, -4.556639420585508115e-06, -4.554182865192125228e-06, -4.551719213109743390e-06, -4.549248469274773207e-06, -4.546770638634524909e-06, -4.544285726147226976e-06, -4.541793736782145578e-06, -4.539294675519066187e-06, -4.536788547349077080e-06, -4.534275357273945080e-06, -4.531755110306333243e-06, -4.529227811469883864e-06, -4.526693465798749224e-06, -4.524152078338246345e-06, -4.521603654144421615e-06, -4.519048198284108388e-06, -4.516485715835006601e-06, -4.513916211885671768e-06, -4.511339691535159221e-06, -4.508756159893600944e-06, -4.506165622081794759e-06, -4.503568083231330535e-06, -4.500963548484508025e-06, -4.498352022994500344e-06, -4.495733511924786457e-06, -4.493108020450296368e-06, -4.490475553755950834e-06, -4.487836117037757427e-06, -4.485189715502453931e-06, -4.482536354367125485e-06, -4.479876038859736521e-06, -4.477208774219251038e-06, -4.474534565694630566e-06, -4.471853418545921756e-06, -4.469165338043784581e-06, -4.466470329469075597e-06, -4.463768398114032942e-06, -4.461059549280713558e-06, -4.458343788282232405e-06, -4.455621120442262706e-06, -4.452891551094753043e-06, -4.450155085584370351e-06, -4.447411729266748102e-06, -4.444661487507326716e-06, -4.441904365682546179e-06, -4.439140369179400512e-06, -4.436369503394899900e-06, -4.433591773737268393e-06, -4.430807185624843620e-06, -4.428015744486255504e-06, -4.425217455760912463e-06, -4.422412324898721041e-06, -4.419600357359537032e-06, -4.416781558614500402e-06, -4.413955934144349695e-06, -4.411123489440713757e-06, -4.408284230005614528e-06, -4.405438161351049456e-06, -4.402585289000055370e-06, -4.399725618485706437e-06, -4.396859155351248845e-06, -4.393985905150610712e-06, -4.391105873447920130e-06, -4.388219065817708447e-06, -4.385325487844874696e-06, -4.382425145124347625e-06, -4.379518043261669308e-06, -4.376604187872570775e-06, -4.373683584583093143e-06, -4.370756239029511381e-06, -4.367822156858515575e-06, -4.364881343726662896e-06, -4.361933805301131464e-06, -4.358979547259193489e-06, -4.356018575288330470e-06, -4.353050895086318742e-06, -4.350076512361133767e-06, -4.347095432830673997e-06, -4.344107662223303821e-06, -4.341113206277492734e-06, -4.338112070741844131e-06, -4.335104261375222366e-06, -4.332089783946270787e-06, -4.329068644234124939e-06, -4.326040848027918745e-06, -4.323006401126854808e-06, -4.319965309340283185e-06, -4.316917578487703930e-06, -4.313863214398363906e-06, -4.310802222911886973e-06, -4.307734609877897913e-06, -4.304660381155991930e-06, -4.301579542615826134e-06, -4.298492100137185608e-06, -4.295398059609499752e-06, -4.292297426932534307e-06, -4.289190208015956832e-06, -4.286076408779394298e-06, -4.282956035152553368e-06, -4.279829093074715567e-06, -4.276695588495350529e-06, -4.273555527374243906e-06, -4.270408915680346243e-06, -4.267255759393012195e-06, -4.264096064501477898e-06, -4.260929837004523861e-06, -4.257757082911135640e-06, -4.254577808240080333e-06, -4.251392019019946381e-06, -4.248199721289185079e-06, -4.245000921096183417e-06, -4.241795624498622032e-06, -4.238583837564947348e-06, -4.235365566372446273e-06, -4.232140817008719188e-06, -4.228909595571143775e-06, -4.225671908166474372e-06, -4.222427760911461151e-06, -4.219177159933012750e-06, -4.215920111366960455e-06, -4.212656621359362624e-06, -4.209386696066051531e-06, -4.206110341651921007e-06, -4.202827564292579850e-06, -4.199538370172291841e-06, -4.196242765485582566e-06, -4.192940756436582962e-06, -4.189632349238684580e-06, -4.186317550115157915e-06, -4.182996365299309956e-06, -4.179668801033214481e-06, -4.176334863569109666e-06, -4.172994559168801769e-06, -4.169647894103095082e-06, -4.166294874653224257e-06, -4.162935507109527858e-06, -4.159569797771591509e-06, -4.156197752948967868e-06, -4.152819378960577779e-06, -4.149434682134816149e-06, -4.146043668809732367e-06, -4.142646345332412817e-06, -4.139242718059855860e-06, -4.135832793358505124e-06, -4.132416577603680294e-06, -4.128994077180957779e-06, -4.125565298484936579e-06, -4.122130247919327232e-06, -4.118688931897659925e-06, -4.115241356842736470e-06, -4.111787529186689593e-06, -4.108327455371174365e-06, -4.104861141846768502e-06, -4.101388595073804151e-06, -4.097909821521807154e-06, -4.094424827669593612e-06, -4.090933620005343575e-06, -4.087436205026595110e-06, -4.083932589239776747e-06, -4.080422779160999445e-06, -4.076906781315487393e-06, -4.073384602237721155e-06, -4.069856248471389390e-06, -4.066321726569560802e-06, -4.062781043094070883e-06, -4.059234204616399444e-06, -4.055681217717020091e-06, -4.052122088985640784e-06, -4.048556825021225859e-06, -4.044985432431454772e-06, -4.041407917833605560e-06, -4.037824287853933958e-06, -4.034234549127777592e-06, -4.030638708299583077e-06, -4.027036772023052561e-06, -4.023428746960491502e-06, -4.019814639783720928e-06, -4.016194457173499757e-06, -4.012568205819564612e-06, -4.008935892420730613e-06, -4.005297523684958295e-06, -4.001653106328748826e-06, -3.998002647078074898e-06, -3.994346152667703096e-06, -3.990683629841398887e-06, -3.987015085351985059e-06, -3.983340525960851290e-06, -3.979659958438538605e-06, -3.975973389565021432e-06, -3.972280826128214289e-06, -3.968582274925579446e-06, -3.964877742763445069e-06, -3.961167236456534267e-06, -3.957450762828905299e-06, -3.953728328713304442e-06, -3.949999940951298124e-06, -3.946265606393444879e-06, -3.942525331898632114e-06, -3.938779124334844368e-06, -3.935026990579338652e-06, -3.931268937517186703e-06, -3.927504972042858087e-06, -3.923735101059564599e-06, -3.919959331478766440e-06, -3.916177670220979438e-06, -3.912390124215883475e-06, -3.908596700400913863e-06, -3.904797405722809724e-06, -3.900992247137016835e-06, -3.897181231606964255e-06, -3.893364366105866816e-06, -3.889541657614429662e-06, -3.885713113122643112e-06, -3.881878739629099107e-06, -3.878038544140505007e-06, -3.874192533672445926e-06, -3.870340715249607500e-06, -3.866483095904238523e-06, -3.862619682677784024e-06, -3.858750482620210185e-06, -3.854875502789375839e-06, -3.850994750252774822e-06, -3.847108232085237966e-06, -3.843215955370772861e-06, -3.839317927201664299e-06, -3.835414154678642842e-06, -3.831504644910928860e-06, -3.827589405016278276e-06, -3.823668442120415897e-06, -3.819741763357953602e-06, -3.815809375871913458e-06, -3.811871286812996311e-06, -3.807927503341299989e-06, -3.803978032624770080e-06, -3.800022881839355366e-06, -3.796062058169846802e-06, -3.792095568809168132e-06, -3.788123420958564774e-06, -3.784145621827730030e-06, -3.780162178634130000e-06, -3.776173098604025527e-06, -3.772178388971878849e-06, -3.768178056979772115e-06, -3.764172109878981591e-06, -3.760160554928522883e-06, -3.756143399395265289e-06, -3.752120650554769933e-06, -3.748092315690601553e-06, -3.744058402094505958e-06, -3.740018917066347764e-06, -3.735973867914309029e-06, -3.731923261954205272e-06, -3.727867106510433727e-06, -3.723805408915368134e-06, -3.719738176509426508e-06, -3.715665416641274000e-06, -3.711587136667136376e-06, -3.707503343951795705e-06, -3.703414045867873772e-06, -3.699319249796028584e-06, -3.695218963124935316e-06, -3.691113193251405319e-06, -3.687001947579750843e-06, -3.682885233522721434e-06, -3.678763058500877127e-06, -3.674635429942721435e-06, -3.670502355284822046e-06, -3.666363841971198845e-06, -3.662219897454254376e-06, -3.658070529194098340e-06, -3.653915744658734358e-06, -3.649755551324028636e-06, -3.645589956673856077e-06, -3.641418968199406982e-06, -3.637242593400030275e-06, -3.633060839783443141e-06, -3.628873714864083127e-06, -3.624681226164866575e-06, -3.620483381216488559e-06, -3.616280187556868494e-06, -3.612071652732184367e-06, -3.607857784296173510e-06, -3.603638589810308362e-06, -3.599414076843923520e-06, -3.595184252973504656e-06, -3.590949125783555034e-06, -3.586708702866812348e-06, -3.582462991822563551e-06, -3.578212000258458352e-06, -3.573955735789740958e-06, -3.569694206038778275e-06, -3.565427418636022563e-06, -3.561155381219341008e-06, -3.556878101434179624e-06, -3.552595586933526404e-06, -3.548307845378094708e-06, -3.544014884435388981e-06, -3.539716711781737211e-06, -3.535413335099651572e-06, -3.531104762079867660e-06, -3.526791000420611381e-06, -3.522472057827011960e-06, -3.518147942012004879e-06, -3.513818660696506362e-06, -3.509484221607771407e-06, -3.505144632481170009e-06, -3.500799901059478620e-06, -3.496450035092109347e-06, -3.492095042337137751e-06, -3.487734930558679586e-06, -3.483369707528953321e-06, -3.478999381027282761e-06, -3.474623958840340572e-06, -3.470243448762073734e-06, -3.465857858593889050e-06, -3.461467196143941634e-06, -3.457071469228147114e-06, -3.452670685669708144e-06, -3.448264853298279652e-06, -3.443853979951870849e-06, -3.439438073475128299e-06, -3.435017141719495159e-06, -3.430591192544171287e-06, -3.426160233815306449e-06, -3.421724273406213343e-06, -3.417283319197523035e-06, -3.412837379076402294e-06, -3.408386460937711913e-06, -3.403930572683387953e-06, -3.399469722221689999e-06, -3.395003917469078609e-06, -3.390533166348489482e-06, -3.386057476789510917e-06, -3.381576856729330791e-06, -3.377091314111962372e-06, -3.372600856888397635e-06, -3.368105493016599633e-06, -3.363605230461717649e-06, -3.359100077195245664e-06, -3.354590041196220490e-06, -3.350075130450369226e-06, -3.345555352950393019e-06, -3.341030716696028046e-06, -3.336501229693326812e-06, -3.331966899955799943e-06, -3.327427735503599230e-06, -3.322883744363745900e-06, -3.318334934570059890e-06, -3.313781314163383887e-06, -3.309222891190771871e-06, -3.304659673706641926e-06, -3.300091669771974947e-06, -3.295518887454554353e-06, -3.290941334829035537e-06, -3.286359019976273330e-06, -3.281771950984373586e-06, -3.277180135947997773e-06, -3.272583582968457837e-06, -3.267982300153743306e-06, -3.263376295618705525e-06, -3.258765577484237301e-06, -3.254150153878263507e-06, -3.249530032935914303e-06, -3.244905222797731966e-06, -3.240275731611660147e-06, -3.235641567532179473e-06, -3.231002738719747658e-06, -3.226359253341975189e-06, -3.221711119572783370e-06, -3.217058345592634716e-06, -3.212400939588658316e-06, -3.207738909753910796e-06, -3.203072264288295772e-06, -3.198401011398792973e-06, -3.193725159297599851e-06, -3.189044716204176744e-06, -3.184359690344375275e-06, -3.179670089949865336e-06, -3.174975923259299337e-06, -3.170277198517510486e-06, -3.165573923975673303e-06, -3.160866107891321408e-06, -3.156153758528517353e-06, -3.151436884156845495e-06, -3.146715493053577016e-06, -3.141989593500875561e-06, -3.137259193787995711e-06, -3.132524302210437219e-06, -3.127784927069131016e-06, -3.123041076672464887e-06, -3.118292759334437362e-06, -3.113539983374825007e-06, -3.108782757120200980e-06, -3.104021088903353968e-06, -3.099254987062370424e-06, -3.094484459942912241e-06, -3.089709515895372414e-06, -3.084930163277041752e-06, -3.080146410451332993e-06, -3.075358265786911750e-06, -3.070565737659760732e-06, -3.065768834451301022e-06, -3.060967564548576306e-06, -3.056161936345282022e-06, -3.051351958241131776e-06, -3.046537638641003111e-06, -3.041718985957007655e-06, -3.036896008606601389e-06, -3.032068715012795560e-06, -3.027237113605136700e-06, -3.022401212818918879e-06, -3.017561021095332368e-06, -3.012716546881680894e-06, -3.007867798630526568e-06, -3.003014784800910029e-06, -2.998157513857759646e-06, -2.993295994270972057e-06, -2.988430234517550506e-06, -2.983560243079658788e-06, -2.978686028444855871e-06, -2.973807599107098790e-06, -2.968924963565907043e-06, -2.964038130326545551e-06, -2.959147107900246587e-06, -2.954251904803302170e-06, -2.949352529558376975e-06, -2.944448990693596073e-06, -2.939541296742763469e-06, -2.934629456245367180e-06, -2.929713477746721119e-06, -2.924793369797184547e-06, -2.919869140953344116e-06, -2.914940799777177413e-06, -2.910008354836252449e-06, -2.905071814703742470e-06, -2.900131187958545398e-06, -2.895186483184517684e-06, -2.890237708971642792e-06, -2.885284873915234989e-06, -2.880327986616116795e-06, -2.875367055680785006e-06, -2.870402089720588221e-06, -2.865433097352968173e-06, -2.860460087200582197e-06, -2.855483067891550145e-06, -2.850502048059372648e-06, -2.845517036343188184e-06, -2.840528041386848126e-06, -2.835535071840247425e-06, -2.830538136358398805e-06, -2.825537243601665700e-06, -2.820532402235715237e-06, -2.815523620931786327e-06, -2.810510908365714307e-06, -2.805494273219294235e-06, -2.800473724179364407e-06, -2.795449269937996930e-06, -2.790420919192745914e-06, -2.785388680645710645e-06, -2.780352563004635459e-06, -2.775312574983113880e-06, -2.770268725298621384e-06, -2.765221022674632979e-06, -2.760169475839800319e-06, -2.755114093527235952e-06, -2.750054884475834701e-06, -2.744991857429361402e-06, -2.739925021136678337e-06, -2.734854384351930731e-06, -2.729779955833677274e-06, -2.724701744345943833e-06, -2.719619758658436051e-06, -2.714534007544566189e-06, -2.709444499783625764e-06, -2.704351244159860587e-06, -2.699254249461650838e-06, -2.694153524483600272e-06, -2.689049078024625311e-06, -2.683940918888101160e-06, -2.678829055882979464e-06, -2.673713497823107718e-06, -2.668594253526314051e-06, -2.663471331816849217e-06, -2.658344741522263163e-06, -2.653214491475813146e-06, -2.648080590515574346e-06, -2.642943047483536503e-06, -2.637801871227817644e-06, -2.632657070600622305e-06, -2.627508654458501147e-06, -2.622356631663372056e-06, -2.617201011081901387e-06, -2.612041801584578575e-06, -2.606879012048138653e-06, -2.601712651352444748e-06, -2.596542728382904663e-06, -2.591369252029371856e-06, -2.586192231186329241e-06, -2.581011674752881145e-06, -2.575827591632953205e-06, -2.570639990734398330e-06, -2.565448880970306628e-06, -2.560254271258344309e-06, -2.555056170519808384e-06, -2.549854587681887829e-06, -2.544649531675601901e-06, -2.539441011436021216e-06, -2.534229035903384563e-06, -2.529013614022155728e-06, -2.523794754741265329e-06, -2.518572467014312404e-06, -2.513346759798627594e-06, -2.508117642056656351e-06, -2.502885122754965364e-06, -2.497649210864552151e-06, -2.492409915360720546e-06, -2.487167245223404266e-06, -2.481921209436149200e-06, -2.476671816987507622e-06, -2.471419076870129333e-06, -2.466162998080917929e-06, -2.460903589621071890e-06, -2.455640860496254403e-06, -2.450374819715713302e-06, -2.445105476293570670e-06, -2.439832839247956328e-06, -2.434556917601193754e-06, -2.429277720380004649e-06, -2.423995256614599215e-06, -2.418709535340004310e-06, -2.413420565595179141e-06, -2.408128356423178742e-06, -2.402832916871176000e-06, -2.397534255990643339e-06, -2.392232382836469268e-06, -2.386927306468257728e-06, -2.381619035949437438e-06, -2.376307580347462217e-06, -2.370992948733796584e-06, -2.365675150184134296e-06, -2.360354193777457290e-06, -2.355030088597406607e-06, -2.349702843731340495e-06, -2.344372468270553785e-06, -2.339038971310484148e-06, -2.333702361949787977e-06, -2.328362649291474572e-06, -2.323019842443115348e-06, -2.317673950514744896e-06, -2.312324982621183962e-06, -2.306972947881070874e-06, -2.301617855416158497e-06, -2.296259714352691514e-06, -2.290898533820469179e-06, -2.285534322953051151e-06, -2.280167090887977297e-06, -2.274796846765837648e-06, -2.269423599731399379e-06, -2.264047358933827883e-06, -2.258668133524589096e-06, -2.253285932659735211e-06, -2.247900765499008101e-06, -2.242512641204818634e-06, -2.237121568944640399e-06, -2.231727557888850612e-06, -2.226330617210941875e-06, -2.220930756088692355e-06, -2.215527983703460204e-06, -2.210122309239192527e-06, -2.204713741885031287e-06, -2.199302290831984456e-06, -2.193887965275517520e-06, -2.188470774414566681e-06, -2.183050727450598228e-06, -2.177627833589966679e-06, -2.172202102041748915e-06, -2.166773542017974572e-06, -2.161342162734792410e-06, -2.155907973411756684e-06, -2.150470983270838657e-06, -2.145031201539049015e-06, -2.139588637445070487e-06, -2.134143300221883646e-06, -2.128695199105533209e-06, -2.123244343335381297e-06, -2.117790742154066351e-06, -2.112334404807737769e-06, -2.106875340545096208e-06, -2.101413558618776372e-06, -2.095949068284660488e-06, -2.090481878800866527e-06, -2.085011999430152929e-06, -2.079539439437720132e-06, -2.074064208091483313e-06, -2.068586314663195556e-06, -2.063105768427511455e-06, -2.057622578662193794e-06, -2.052136754648363840e-06, -2.046648305669488719e-06, -2.041157241012832806e-06, -2.035663569968479401e-06, -2.030167301829531900e-06, -2.024668445892139207e-06, -2.019167011455681231e-06, -2.013663007821810049e-06, -2.008156444295886471e-06, -2.002647330185969953e-06, -1.997135674803076099e-06, -1.991621487461163525e-06, -1.986104777477321906e-06, -1.980585554170830076e-06, -1.975063826864556167e-06, -1.969539604884022915e-06, -1.964012897557569862e-06, -1.958483714216640506e-06, -1.952952064194753995e-06, -1.947417956828980241e-06, -1.941881401458913737e-06, -1.936342407426939105e-06, -1.930800984078181539e-06, -1.925257140760761766e-06, -1.919710886824799511e-06, -1.914162231623854300e-06, -1.908611184513930619e-06, -1.903057754853719320e-06, -1.897501952004805778e-06, -1.891943785330714014e-06, -1.886383264198312981e-06, -1.880820397976850739e-06, -1.875255196038174467e-06, -1.869687667756724957e-06, -1.864117822509750284e-06, -1.858545669676323451e-06, -1.852971218638539678e-06, -1.847394478781758437e-06, -1.841815459492363262e-06, -1.836234170160226405e-06, -1.830650620177685619e-06, -1.825064818938571764e-06, -1.819476775840860021e-06, -1.813886500283241949e-06, -1.808294001667811002e-06, -1.802699289399053928e-06, -1.797102372883101562e-06, -1.791503261528947504e-06, -1.785901964748664313e-06, -1.780298491955198901e-06, -1.774692852564789540e-06, -1.769085055995976097e-06, -1.763475111668618969e-06, -1.757863029006550710e-06, -1.752248817434150635e-06, -1.746632486379031397e-06, -1.741014045270771822e-06, -1.735393503541411157e-06, -1.729770870624195033e-06, -1.724146155956277082e-06, -1.718519368975248003e-06, -1.712890519121818754e-06, -1.707259615838854721e-06, -1.701626668570334079e-06, -1.695991686763812870e-06, -1.690354679868205566e-06, -1.684715657333990685e-06, -1.679074628614438566e-06, -1.673431603164862167e-06, -1.667786590441606132e-06, -1.662139599904751368e-06, -1.656490641014643692e-06, -1.650839723234578713e-06, -1.645186856029572998e-06, -1.639532048866586209e-06, -1.633875311214502466e-06, -1.628216652544361164e-06, -1.622556082328369124e-06, -1.616893610041335460e-06, -1.611229245159954360e-06, -1.605562997161761963e-06, -1.599894875527622610e-06, -1.594224889739472777e-06, -1.588553049280552945e-06, -1.582879363636628814e-06, -1.577203842295001540e-06, -1.571526494744717381e-06, -1.565847330476812063e-06, -1.560166358983293282e-06, -1.554483589758631483e-06, -1.548799032298730502e-06, -1.543112696101174265e-06, -1.537424590665209635e-06, -1.531734725491975535e-06, -1.526043110083491803e-06, -1.520349753944132817e-06, -1.514654666579629052e-06, -1.508957857497286468e-06, -1.503259336206229814e-06, -1.497559112216389157e-06, -1.491857195039974564e-06, -1.486153594190458393e-06, -1.480448319182821992e-06, -1.474741379533533674e-06, -1.469032784760785254e-06, -1.463322544383466500e-06, -1.457610667922662691e-06, -1.451897164900636270e-06, -1.446182044841055965e-06, -1.440465317268980911e-06, -1.434746991711100991e-06, -1.429027077694711294e-06, -1.423305584749201409e-06, -1.417582522405057199e-06, -1.411857900194057733e-06, -1.406131727649548033e-06, -1.400404014305395951e-06, -1.394674769697483162e-06, -1.388944003362698460e-06, -1.383211724839168368e-06, -1.377477943666239350e-06, -1.371742669384697186e-06, -1.366005911535789928e-06, -1.360267679662671874e-06, -1.354527983309403436e-06, -1.348786832021194027e-06, -1.343044235344378554e-06, -1.337300202826646329e-06, -1.331554744015772851e-06, -1.325807868462392355e-06, -1.320059585716415920e-06, -1.314309905329818424e-06, -1.308558836855608758e-06, -1.302806389847050346e-06, -1.297052573858910732e-06, -1.291297398447700019e-06, -1.285540873169387901e-06, -1.279783007581892886e-06, -1.274023811244080885e-06, -1.268263293714721249e-06, -1.262501464555271389e-06, -1.256738333326287259e-06, -1.250973909590227887e-06, -1.245208202910145009e-06, -1.239441222850202305e-06, -1.233672978974358263e-06, -1.227903480849166889e-06, -1.222132738040201115e-06, -1.216360760114826617e-06, -1.210587556641176060e-06, -1.204813137187103646e-06, -1.199037511322737439e-06, -1.193260688618152562e-06, -1.187482678643607096e-06, -1.181703490970817503e-06, -1.175923135172169188e-06, -1.170141620819683122e-06, -1.164358957487793470e-06, -1.158575154749783916e-06, -1.152790222180553437e-06, -1.147004169355609600e-06, -1.141217005849993472e-06, -1.135428741240852266e-06, -1.129639385105100895e-06, -1.123848947019680533e-06, -1.118057436562800994e-06, -1.112264863312930651e-06, -1.106471236848996546e-06, -1.100676566750412128e-06, -1.094880862597276731e-06, -1.089084133969373323e-06, -1.083286390447659707e-06, -1.077487641613246786e-06, -1.071687897047626205e-06, -1.065887166332924673e-06, -1.060085459050849403e-06, -1.054282784784219554e-06, -1.048479153115918233e-06, -1.042674573629140892e-06, -1.036869055907376269e-06, -1.031062609534642072e-06, -1.025255244094457742e-06, -1.019446969171342433e-06, -1.013637794349804074e-06, -1.007827729214558541e-06, -1.002016783350772965e-06, -9.962049663430353221e-07, -9.903922877768623565e-07, -9.845787572376780639e-07, -9.787643843110349769e-07, -9.729491785826012484e-07, -9.671331496384147607e-07, -9.613163070638315349e-07, -9.554986604450446723e-07, -9.496802193680567976e-07, -9.438609934189037819e-07, -9.380409921836562241e-07, -9.322202252486501625e-07, -9.263987021994458588e-07, -9.205764326223489640e-07, -9.147534261033765023e-07, -9.089296922284952055e-07, -9.031052405838565644e-07, -8.972800807547676840e-07, -8.914542223271954018e-07, -8.856276748867429666e-07, -8.798004480188822311e-07, -8.739725513089395703e-07, -8.681439943423390854e-07, -8.623147867035479423e-07, -8.564849379776266532e-07, -8.506544577491584276e-07, -8.448233556025101638e-07, -8.389916411218055556e-07, -8.331593238911707323e-07, -8.273264134934356508e-07, -8.214929195129399986e-07, -8.156588515319234565e-07, -8.098242191333424012e-07, -8.039890318998137609e-07, -7.981532994128315100e-07, -7.923170312540493942e-07, -7.864802370055087830e-07, -7.806429262473099638e-07, -7.748051085601720874e-07, -7.689667935243940706e-07, -7.631279907187937930e-07, -7.572887097235422692e-07, -7.514489601165278660e-07, -7.456087514761852865e-07, -7.397680933804455667e-07, -7.339269954059383825e-07, -7.280854671292816571e-07, -7.222435181273185187e-07, -7.164011579747683720e-07, -7.105583962468087608e-07, -7.047152425180159413e-07, -6.988717063613167847e-07, -6.930277973505665105e-07, -6.871835250581938288e-07, -6.813388990554598146e-07, -6.754939289137183991e-07, -6.696486242036328639e-07, -6.638029944941282732e-07, -6.579570493552177049e-07, -6.521107983543625502e-07, -6.462642510593114504e-07, -6.404174170370427762e-07, -6.345703058527160008e-07, -6.287229270722394806e-07, -6.228752902599360320e-07, -6.170274049787776659e-07, -6.111792807916670419e-07, -6.053309272603861956e-07, -5.994823539458394242e-07, -5.936335704083003033e-07, -5.877845862063562834e-07, -5.819354108984446784e-07, -5.760860540418103917e-07, -5.702365251927399088e-07, -5.643868339065525095e-07, -5.585369897378368018e-07, -5.526870022394124713e-07, -5.468368809638485876e-07, -5.409866354624303302e-07, -5.351362752853947813e-07, -5.292858099819153614e-07, -5.234352491003478923e-07, -5.175846021871740297e-07, -5.117338787885464628e-07, -5.058830884492368997e-07, -5.000322407128705889e-07, -4.941813451221837125e-07, -4.883304112179576060e-07, -4.824794485405694646e-07, -4.766284666289352456e-07, -4.707774750207495379e-07, -4.649264832524830205e-07, -4.590755008596130676e-07, -4.532245373755719454e-07, -4.473736023332982055e-07, -4.415227052641735531e-07, -4.356718556982700217e-07, -4.298210631643359969e-07, -4.239703371900421738e-07, -4.181196873009202243e-07, -4.122691230219106977e-07, -4.064186538763102107e-07, -4.005682893860142819e-07, -3.947180390717565652e-07, -3.888679124520660468e-07, -3.830179190445363766e-07, -3.771680683660841604e-07, -3.713183699305849441e-07, -3.654688332514608993e-07, -3.596194678406249435e-07, -3.537702832076864352e-07, -3.479212888614950504e-07, -3.420724943090850086e-07, -3.362239090559201832e-07, -3.303755426058791726e-07, -3.245274044614998277e-07, -3.186795041226638103e-07, -3.128318510894418821e-07, -3.069844548584348812e-07, -3.011373249256267415e-07, -2.952904707853193477e-07, -2.894439019293458546e-07, -2.835976278483484354e-07, -2.777516580320273627e-07, -2.719060019667857275e-07, -2.660606691383103486e-07, -2.602156690305216635e-07, -2.543710111245126607e-07, -2.485267049014015809e-07, -2.426827598386687112e-07, -2.368391854130046394e-07, -2.309959910992563594e-07, -2.251531863696294461e-07, -2.193107806949736127e-07, -2.134687835450288003e-07, -2.076272043860683355e-07, -2.017860526834855572e-07, -1.959453379007348131e-07, -1.901050694982821986e-07, -1.842652569361847976e-07, -1.784259096717382610e-07, -1.725870371597212283e-07, -1.667486488536802501e-07, -1.609107542048751528e-07, -1.550733626625218194e-07, -1.492364836740385435e-07, -1.434001266839919236e-07, -1.375643011356393102e-07, -1.317290164701354263e-07, -1.258942821254761714e-07, -1.200601075390849562e-07, -1.142265021454558340e-07, -1.083934753763995504e-07, -1.025610366623278171e-07, -9.672919543119833264e-08, -9.089796110876035578e-08, -8.506734311879846542e-08, -7.923735088207849453e-08, -7.340799381789198874e-08, -6.757928134300057833e-08, -6.175122287188234570e-08, -5.592382781671508321e-08, -5.009710558762236290e-08, -4.427106559161843121e-08, -3.844571723415254857e-08, -3.262106991805444658e-08, -2.679713304377900149e-08, -2.097391600939143423e-08, -1.515142821081172904e-08, -9.329679040761137943e-09, -3.508677890305125251e-09, 2.311565852200381939e-09, 8.131042800864270295e-09, 1.394974357201570415e-08, 1.976765878525743042e-08, 2.558477906192312728e-08, 3.140109502613103747e-08, 3.721659730453899216e-08, 4.303127652635958635e-08, 4.884512332311552870e-08, 5.465812832969285744e-08, 6.047028218279864562e-08, 6.628157552201362484e-08, 7.209199898954862354e-08, 7.790154323025817912e-08, 8.371019889139754533e-08, 8.951795662367303961e-08, 9.532480707970383127e-08, 1.011307409150707800e-07, 1.069357487880747536e-07, 1.127398213594907899e-07, 1.185429492936202307e-07, 1.243451232570098228e-07, 1.301463339182072429e-07, 1.359465719501078822e-07, 1.417458280273797996e-07, 1.475440928275134473e-07, 1.533413570316146522e-07, 1.591376113228642073e-07, 1.649328463875698338e-07, 1.707270529149223410e-07, 1.765202215967493253e-07, 1.823123431285691707e-07, 1.881034082083075814e-07, 1.938934075360553574e-07, 1.996823318164134843e-07, 2.054701717559190271e-07, 2.112569180640942592e-07, 2.170425614542379242e-07, 2.228270926421496040e-07, 2.286105023458798969e-07, 2.343927812880784460e-07, 2.401739201934188004e-07, 2.459539097896494768e-07, 2.517327408086436454e-07, 2.575104039835660429e-07, 2.632868900525118788e-07, 2.690621897556757338e-07, 2.748362938363998160e-07, 2.806091930419633426e-07, 2.863808781223075435e-07, 2.921513398297900751e-07, 2.979205689215268539e-07, 3.036885561568178182e-07, 3.094552922982067778e-07, 3.152207681125127823e-07, 3.209849743680186072e-07, 3.267479018380919787e-07, 3.325095412983633126e-07, 3.382698835280302510e-07, 3.440289193096137698e-07, 3.497866394289757017e-07, 3.555430346750706083e-07, 3.612980958409970013e-07, 3.670518137224595008e-07, 3.728041791185605997e-07, 3.785551828328461139e-07, 3.843048156707398904e-07, 3.900530684418828881e-07, 3.957999319598828276e-07, 4.015453970410460760e-07, 4.072894545054197628e-07, 4.130320951765516989e-07, 4.187733098812441545e-07, 4.245130894505989918e-07, 4.302514247184884004e-07, 4.359883065223440140e-07, 4.417237257041941554e-07, 4.474576731081119376e-07, 4.531901395825408461e-07, 4.589211159800548169e-07, 4.646505931560834515e-07, 4.703785619699588968e-07, 4.761050132846702587e-07, 4.818299379668824485e-07, 4.875533268866846669e-07, 4.932751709186437955e-07, 4.989954609402668731e-07, 5.047141878330514168e-07, 5.104313424822379819e-07, 5.161469157765672760e-07, 5.218608986093304792e-07, 5.275732818768296561e-07, 5.332840564794278651e-07, 5.389932133213027772e-07, 5.447007433104662642e-07, 5.504066373585165350e-07, 5.561108863816798811e-07, 5.618134812992884518e-07, 5.675144130348183991e-07, 5.732136725156505914e-07, 5.789112506728222203e-07, 5.846071384420706635e-07, 5.903013267623140132e-07, 5.959938065766791623e-07, 6.016845688322716235e-07, 6.073736044801880228e-07, 6.130609044752627309e-07, 6.187464597771209369e-07, 6.244302613489051339e-07, 6.301123001570331860e-07, 6.357925671735195153e-07, 6.414710533734256393e-07, 6.471477497359084798e-07, 6.528226472449825866e-07, 6.584957368880189833e-07, 6.641670096567725128e-07, 6.698364565471411737e-07, 6.755040685589299039e-07, 6.811698366968759143e-07, 6.868337519693951857e-07, 6.924958053883437116e-07, 6.981559879713159218e-07, 7.038142907391198892e-07, 7.094707047168050981e-07, 7.151252209344416091e-07, 7.207778304256079991e-07, 7.264285242284222004e-07, 7.320772933853056019e-07, 7.377241289429876023e-07, 7.433690219522705582e-07, 7.490119634693207682e-07, 7.546529445528752757e-07, 7.602919562678238659e-07, 7.659289896824213738e-07, 7.715640358693215943e-07, 7.771970859063501997e-07, 7.828281308752542012e-07, 7.884571618614531330e-07, 7.940841699563468997e-07, 7.997091462547868534e-07, 8.053320818561074798e-07, 8.109529678651462258e-07, 8.165717953894902193e-07, 8.221885555430060665e-07, 8.278032394430969483e-07, 8.334158382119630048e-07, 8.390263429763724248e-07, 8.446347448676734100e-07, 8.502410350215528769e-07, 8.558452045790607308e-07, 8.614472446851152767e-07, 8.670471464892612075e-07, 8.726449011467063726e-07, 8.782404998158032312e-07, 8.838339336603413470e-07, 8.894251938492998429e-07, 8.950142715556062857e-07, 9.006011579571582080e-07, 9.061858442365842452e-07, 9.117683215810073893e-07, 9.173485811830614287e-07, 9.229266142393954056e-07, 9.285024119514509805e-07, 9.340759655264666956e-07, 9.396472661749992390e-07, 9.452163051131755988e-07, 9.507830735624658474e-07, 9.563475627484467902e-07, 9.619097639018139588e-07, 9.674696682581393592e-07, 9.730272670578988949e-07, 9.785825515462148683e-07, 9.841355129739010081e-07, 9.896861425959416216e-07, 9.952344316725294214e-07, 1.000780371468817345e-06, 1.006323953254684987e-06, 1.011865168305757363e-06, 1.017404007901907363e-06, 1.022940463328283195e-06, 1.028474525875063174e-06, 1.034006186837466942e-06, 1.039535437515523172e-06, 1.045062269215091511e-06, 1.050586673246355497e-06, 1.056108640924851070e-06, 1.061628163571234484e-06, 1.067145232511033703e-06, 1.072659839075666535e-06, 1.078171974600951969e-06, 1.083681630428125560e-06, 1.089188797903610729e-06, 1.094693468379013254e-06, 1.100195633210903375e-06, 1.105695283761825029e-06, 1.111192411399047965e-06, 1.116687007494343487e-06, 1.122179063426245822e-06, 1.127668570577556125e-06, 1.133155520336371625e-06, 1.138639904096831648e-06, 1.144121713257648018e-06, 1.149600939223106456e-06, 1.155077573402834710e-06, 1.160551607211567713e-06, 1.166023032070144964e-06, 1.171491839404297154e-06, 1.176958020644406880e-06, 1.182421567227750738e-06, 1.187882470596028531e-06, 1.193340722196382249e-06, 1.198796313482136163e-06, 1.204249235911340143e-06, 1.209699480947757929e-06, 1.215147040060643517e-06, 1.220591904724751960e-06, 1.226034066420105373e-06, 1.231473516633235317e-06, 1.236910246854495382e-06, 1.242344248581500132e-06, 1.247775513316464158e-06, 1.253204032567170866e-06, 1.258629797847974523e-06, 1.264052800677376469e-06, 1.269473032580218719e-06, 1.274890485087472419e-06, 1.280305149735013885e-06, 1.285717018064381635e-06, 1.291126081623758735e-06, 1.296532331965307190e-06, 1.301935760648583817e-06, 1.307336359237893471e-06, 1.312734119303257637e-06, 1.318129032421409685e-06, 1.323521090173363046e-06, 1.328910284146632763e-06, 1.334296605934994510e-06, 1.339680047137271008e-06, 1.345060599358106000e-06, 1.350438254208911022e-06, 1.355813003305470630e-06, 1.361184838270145108e-06, 1.366553750731629912e-06, 1.371919732323744198e-06, 1.377282774686446630e-06, 1.382642869465582965e-06, 1.388000008312650148e-06, 1.393354182885800900e-06, 1.398705384848385758e-06, 1.404053605869693173e-06, 1.409398837625943925e-06, 1.414741071797871150e-06, 1.420080300072908862e-06, 1.425416514144984428e-06, 1.430749705713286563e-06, 1.436079866483281129e-06, 1.441406988166457241e-06, 1.446731062480104706e-06, 1.452052081148306113e-06, 1.457370035900475910e-06, 1.462684918472372188e-06, 1.467996720605829228e-06, 1.473305434048796042e-06, 1.478611050555105345e-06, 1.483913561885442137e-06, 1.489212959805920052e-06, 1.494509236089046550e-06, 1.499802382513495495e-06, 1.505092390864143146e-06, 1.510379252931806641e-06, 1.515662960514238836e-06, 1.520943505414689406e-06, 1.526220879442888041e-06, 1.531495074414808757e-06, 1.536766082152441622e-06, 1.542033894484775950e-06, 1.547298503246361611e-06, 1.552559900278286727e-06, 1.557818077427946001e-06, 1.563073026549056813e-06, 1.568324739501437724e-06, 1.573573208151961170e-06, 1.578818424373152264e-06, 1.584060380044141282e-06, 1.589299067050440892e-06, 1.594534477283967755e-06, 1.599766602642801121e-06, 1.604995435032158820e-06, 1.610220966362978485e-06, 1.615443188552881475e-06, 1.620662093525957515e-06, 1.625877673212509106e-06, 1.631089919550053138e-06, 1.636298824482112814e-06, 1.641504379958019652e-06, 1.646706577935041024e-06, 1.651905410376023283e-06, 1.657100869250380039e-06, 1.662292946534758989e-06, 1.667481634211697037e-06, 1.672666924270523656e-06, 1.677848808707181743e-06, 1.683027279523969690e-06, 1.688202328730528611e-06, 1.693373948342631077e-06, 1.698542130382012348e-06, 1.703706866878461484e-06, 1.708868149867496665e-06, 1.714025971391310057e-06, 1.719180323499720507e-06, 1.724331198247856280e-06, 1.729478587698249342e-06, 1.734622483920638851e-06, 1.739762878990795899e-06, 1.744899764991238618e-06, 1.750033134012180858e-06, 1.755162978148996382e-06, 1.760289289505451781e-06, 1.765412060191192898e-06, 1.770531282322689699e-06, 1.775646948024150645e-06, 1.780759049425223626e-06, 1.785867578663106352e-06, 1.790972527882313627e-06, 1.796073889233544018e-06, 1.801171654874376540e-06, 1.806265816970195194e-06, 1.811356367691704831e-06, 1.816443299218117265e-06, 1.821526603734655702e-06, 1.826606273433726188e-06, 1.831682300514681921e-06, 1.836754677183840618e-06, 1.841823395654268939e-06, 1.846888448146718677e-06, 1.851949826888251384e-06, 1.857007524112929975e-06, 1.862061532062774390e-06, 1.867111842985458731e-06, 1.872158449136387964e-06, 1.877201342778491675e-06, 1.882240516181084174e-06, 1.887275961620791991e-06, 1.892307671381340643e-06, 1.897335637753319575e-06, 1.902359853035128937e-06, 1.907380309531626445e-06, 1.912396999555016980e-06, 1.917409915424667298e-06, 1.922419049467122123e-06, 1.927424394015857451e-06, 1.932425941412233459e-06, 1.937423684004110456e-06, 1.942417614146801794e-06, 1.947407724202839239e-06, 1.952394006541981020e-06, 1.957376453541022938e-06, 1.962355057584673776e-06, 1.967329811064247903e-06, 1.972300706378566095e-06, 1.977267735933724294e-06, 1.982230892142913611e-06, 1.987190167427310988e-06, 1.992145554214737067e-06, 1.997097044940580728e-06, 2.002044632047577172e-06, 2.006988307985819772e-06, 2.011928065212553825e-06, 2.016863896193074404e-06, 2.021795793399400755e-06, 2.026723749311173726e-06, 2.031647756415474925e-06, 2.036567807206776747e-06, 2.041483894186798801e-06, 2.046396009865374422e-06, 2.051304146759106437e-06, 2.056208297392323880e-06, 2.061108454296817300e-06, 2.066004610011657071e-06, 2.070896757084106067e-06, 2.075784888068465587e-06, 2.080668995525926267e-06, 2.085549072026541677e-06, 2.090425110147021370e-06, 2.095297102471642290e-06, 2.100165041592925130e-06, 2.105028920110322703e-06, 2.109888730631063158e-06, 2.114744465770019540e-06, 2.119596118149445094e-06, 2.124443680399890176e-06, 2.129287145159100260e-06, 2.134126505071802070e-06, 2.138961752791725017e-06, 2.143792880979378165e-06, 2.148619882302954437e-06, 2.153442749439214493e-06, 2.158261475071327647e-06, 2.163076051890810296e-06, 2.167886472597371342e-06, 2.172692729897773353e-06, 2.177494816506555083e-06, 2.182292725146880199e-06, 2.187086448548139331e-06, 2.191875979449057411e-06, 2.196661310595256339e-06, 2.201442434740175280e-06, 2.206219344645937182e-06, 2.210992033081179099e-06, 2.215760492823029166e-06, 2.220524716656902468e-06, 2.225284697375408784e-06, 2.230040427779033609e-06, 2.234791900677009743e-06, 2.239539108884926126e-06, 2.244282045227811030e-06, 2.249020702537724371e-06, 2.253755073654869865e-06, 2.258485151427376491e-06, 2.263210928711320937e-06, 2.267932398370511187e-06, 2.272649553277378863e-06, 2.277362386311659558e-06, 2.282070890361108143e-06, 2.286775058322307696e-06, 2.291474883098569273e-06, 2.296170357601859762e-06, 2.300861474752610874e-06, 2.305548227478637483e-06, 2.310230608716018116e-06, 2.314908611408910302e-06, 2.319582228509303234e-06, 2.324251452977912664e-06, 2.328916277782906961e-06, 2.333576695900762197e-06, 2.338232700316081297e-06, 2.342884284021568637e-06, 2.347531440017850465e-06, 2.352174161314350740e-06, 2.356812440927987965e-06, 2.361446271884062884e-06, 2.366075647216057730e-06, 2.370700559965619713e-06, 2.375321003182393301e-06, 2.379936969924849048e-06, 2.384548453259049464e-06, 2.389155446259489270e-06, 2.393757942008889572e-06, 2.398355933598015750e-06, 2.402949414126513475e-06, 2.407538376701670350e-06, 2.412122814439238378e-06, 2.416702720463273449e-06, 2.421278087906130260e-06, 2.425848909908248012e-06, 2.430415179619022010e-06, 2.434976890195528031e-06, 2.439534034803398154e-06, 2.444086606616609427e-06, 2.448634598817274225e-06, 2.453178004596531754e-06, 2.457716817153233457e-06, 2.462251029694838321e-06, 2.466780635437207482e-06, 2.471305627604599132e-06, 2.475825999429485568e-06, 2.480341744153377352e-06, 2.484852855025832281e-06, 2.489359325304199586e-06, 2.493861148255546929e-06, 2.498358317154567388e-06, 2.502850825284444275e-06, 2.507338665937660899e-06, 2.511821832413754237e-06, 2.516300318022195269e-06, 2.520774116080183727e-06, 2.525243219913406187e-06, 2.529707622856715396e-06, 2.534167318253096461e-06, 2.538622299453467379e-06, 2.543072559818549703e-06, 2.547518092716803906e-06, 2.551958891525289537e-06, 2.556394949630467788e-06, 2.560826260425975914e-06, 2.565252817315483429e-06, 2.569674613710474149e-06, 2.574091643031264748e-06, 2.578503898706604962e-06, 2.582911374174708427e-06, 2.587314062881039801e-06, 2.591711958281143014e-06, 2.596105053838425847e-06, 2.600493343024988760e-06, 2.604876819322434650e-06, 2.609255476219874937e-06, 2.613629307215724852e-06, 2.617998305817553087e-06, 2.622362465541042910e-06, 2.626721779910618122e-06, 2.631076242460288396e-06, 2.635425846731378381e-06, 2.639770586275432179e-06, 2.644110454651944567e-06, 2.648445445429234709e-06, 2.652775552185195786e-06, 2.657100768505340885e-06, 2.661421087984603371e-06, 2.665736504227150960e-06, 2.670047010845376061e-06, 2.674352601460533588e-06, 2.678653269703528275e-06, 2.682949009212943638e-06, 2.687239813636821158e-06, 2.691525676632501894e-06, 2.695806591865607499e-06, 2.700082553010866498e-06, 2.704353553751938111e-06, 2.708619587781174655e-06, 2.712880648800476627e-06, 2.717136730520087375e-06, 2.721387826659389732e-06, 2.725633930946722635e-06, 2.729875037119390439e-06, 2.734111138923504102e-06, 2.738342230114709209e-06, 2.742568304457080593e-06, 2.746789355723891440e-06, 2.751005377697422709e-06, 2.755216364168780172e-06, 2.759422308938688930e-06, 2.763623205816319426e-06, 2.767819048620095515e-06, 2.772009831177486940e-06, 2.776195547325035167e-06, 2.780376190908172542e-06, 2.784551755781983778e-06, 2.788722235810065420e-06, 2.792887624865302575e-06, 2.797047916829708404e-06, 2.801203105594384728e-06, 2.805353185059417849e-06, 2.809498149134557444e-06, 2.813637991738141256e-06, 2.817772706797862931e-06, 2.821902288250552635e-06, 2.826026730042048308e-06, 2.830146026127925803e-06, 2.834260170472366826e-06, 2.838369157048969129e-06, 2.842472979840513991e-06, 2.846571632838997989e-06, 2.850665110045472056e-06, 2.854753405470745370e-06, 2.858836513134337148e-06, 2.862914427065193237e-06, 2.866987141301511625e-06, 2.871054649890761076e-06, 2.875116946889493086e-06, 2.879174026364293530e-06, 2.883225882389717591e-06, 2.887272509050964266e-06, 2.891313900441748203e-06, 2.895350050665106065e-06, 2.899380953834011062e-06, 2.903406604070338297e-06, 2.907426995504765661e-06, 2.911442122278432751e-06, 2.915451978541107886e-06, 2.919456558451914444e-06, 2.923455856180088525e-06, 2.927449865902965986e-06, 2.931438581808559954e-06, 2.935421998093539812e-06, 2.939400108964185377e-06, 2.943372908635977363e-06, 2.947340391334591371e-06, 2.951302551293814613e-06, 2.955259382758199668e-06, 2.959210879980979084e-06, 2.963157037224864554e-06, 2.967097848762740638e-06, 2.971033308875898697e-06, 2.974963411855634399e-06, 2.978888152003106687e-06, 2.982807523628425523e-06, 2.986721521051213053e-06, 2.990630138601317223e-06, 2.994533370616851754e-06, 2.998431211446708860e-06, 3.002323655448612767e-06, 3.006210696989830375e-06, 3.010092330447881917e-06, 3.013968550208810896e-06, 3.017839350668723566e-06, 3.021704726233686441e-06, 3.025564671318817429e-06, 3.029419180348985907e-06, 3.033268247758682272e-06, 3.037111867991995925e-06, 3.040950035502432731e-06, 3.044782744753706148e-06, 3.048609990218589501e-06, 3.052431766379683389e-06, 3.056248067729233577e-06, 3.060058888768966668e-06, 3.063864224010798648e-06, 3.067664067975786684e-06, 3.071458415194855453e-06, 3.075247260208587077e-06, 3.079030597567288463e-06, 3.082808421830775312e-06, 3.086580727569092517e-06, 3.090347509361476973e-06, 3.094108761797075860e-06, 3.097864479474764954e-06, 3.101614657002973294e-06, 3.105359289000418828e-06, 3.109098370095021245e-06, 3.112831894924653720e-06, 3.116559858136965033e-06, 3.120282254389371950e-06, 3.123999078348880072e-06, 3.127710324692858449e-06, 3.131415988107906673e-06, 3.135116063290608736e-06, 3.138810544947386494e-06, 3.142499427794466633e-06, 3.146182706557733710e-06, 3.149860375973405234e-06, 3.153532430787068172e-06, 3.157198865754290503e-06, 3.160859675640516185e-06, 3.164514855220871611e-06, 3.168164399280884315e-06, 3.171808302615430958e-06, 3.175446560029452644e-06, 3.179079166337774506e-06, 3.182706116365137893e-06, 3.186327404946014443e-06, 3.189943026925298534e-06, 3.193552977157282377e-06, 3.197157250506389965e-06, 3.200755841846945839e-06, 3.204348746063235642e-06, 3.207935958049337148e-06, 3.211517472709925354e-06, 3.215093284958490334e-06, 3.218663389719667418e-06, 3.222227781927374994e-06, 3.225786456525544653e-06, 3.229339408468580698e-06, 3.232886632720567326e-06, 3.236428124255080585e-06, 3.239963878056711762e-06, 3.243493889119423295e-06, 3.247018152447173880e-06, 3.250536663054634638e-06, 3.254049415965360373e-06, 3.257556406214103241e-06, 3.261057628845025510e-06, 3.264553078912311541e-06, 3.268042751480748008e-06, 3.271526641624830700e-06, 3.275004744428683203e-06, 3.278477054987450701e-06, 3.281943568405757519e-06, 3.285404279798322500e-06, 3.288859184290600628e-06, 3.292308277017203737e-06, 3.295751553123344703e-06, 3.299189007764703610e-06, 3.302620636106574791e-06, 3.306046433324419937e-06, 3.309466394604478389e-06, 3.312880515142018433e-06, 3.316288790143606929e-06, 3.319691214825327998e-06, 3.323087784413419571e-06, 3.326478494144953551e-06, 3.329863339266234502e-06, 3.333242315034205720e-06, 3.336615416716391638e-06, 3.339982639589980912e-06, 3.343343978942561221e-06, 3.346699430071924447e-06, 3.350048988285934546e-06, 3.353392648903168319e-06, 3.356730407251948530e-06, 3.360062258671012636e-06, 3.363388198509335759e-06, 3.366708222126153552e-06, 3.370022324890805926e-06, 3.373330502183363429e-06, 3.376632749393712873e-06, 3.379929061922160422e-06, 3.383219435179319361e-06, 3.386503864586075792e-06, 3.389782345573476397e-06, 3.393054873583322640e-06, 3.396321444067258504e-06, 3.399582052487417629e-06, 3.402836694316245860e-06, 3.406085365036339034e-06, 3.409328060141149835e-06, 3.412564775133959918e-06, 3.415795505528557109e-06, 3.419020246849096496e-06, 3.422238994630073321e-06, 3.425451744416224722e-06, 3.428658491763082854e-06, 3.431859232236106246e-06, 3.435053961411298566e-06, 3.438242674875065047e-06, 3.441425368224157851e-06, 3.444602037065622711e-06, 3.447772677017344414e-06, 3.450937283707156574e-06, 3.454095852773474364e-06, 3.457248379865145437e-06, 3.460394860641276289e-06, 3.463535290771862867e-06, 3.466669665937032906e-06, 3.469797981826941315e-06, 3.472920234143048778e-06, 3.476036418596705508e-06, 3.479146530909714955e-06, 3.482250566814794587e-06, 3.485348522054696250e-06, 3.488440392382775791e-06, 3.491526173562893964e-06, 3.494605861369264805e-06, 3.497679451587012557e-06, 3.500746940011476682e-06, 3.503808322448086498e-06, 3.506863594713633422e-06, 3.509912752634841604e-06, 3.512955792048983294e-06, 3.515992708804279068e-06, 3.519023498759185894e-06, 3.522048157782269656e-06, 3.525066681753533722e-06, 3.528079066562903181e-06, 3.531085308110921105e-06, 3.534085402309205519e-06, 3.537079345078968794e-06, 3.540067132352997580e-06, 3.543048760074073938e-06, 3.546024224195547093e-06, 3.548993520681818775e-06, 3.551956645507574544e-06, 3.554913594657662236e-06, 3.557864364128387926e-06, 3.560808949926114934e-06, 3.563747348067802540e-06, 3.566679554581590433e-06, 3.569605565505270670e-06, 3.572525376888241772e-06, 3.575438984789966286e-06, 3.578346385280673816e-06, 3.581247574441271665e-06, 3.584142548363277068e-06, 3.587031303148730801e-06, 3.589913834910794756e-06, 3.592790139772793104e-06, 3.595660213868795053e-06, 3.598524053344042175e-06, 3.601381654353652445e-06, 3.604233013063831925e-06, 3.607078125651745589e-06, 3.609916988304837576e-06, 3.612749597221410993e-06, 3.615575948610430545e-06, 3.618396038691459864e-06, 3.621209863695169725e-06, 3.624017419862535903e-06, 3.626818703445406691e-06, 3.629613710706315277e-06, 3.632402437918600449e-06, 3.635184881366119451e-06, 3.637961037343932384e-06, 3.640730902157394610e-06, 3.643494472122771701e-06, 3.646251743567074688e-06, 3.649002712828067683e-06, 3.651747376254162854e-06, 3.654485730204921859e-06, 3.657217771050264724e-06, 3.659943495171063188e-06, 3.662662898958912851e-06, 3.665375978816115382e-06, 3.668082731156118563e-06, 3.670783152402789522e-06, 3.673477238990923810e-06, 3.676164987366105212e-06, 3.678846393984735817e-06, 3.681521455313906424e-06, 3.684190167831894173e-06, 3.686852528027418848e-06, 3.689508532400139241e-06, 3.692158177460578612e-06, 3.694801459730048032e-06, 3.697438375740598528e-06, 3.700068922035496688e-06, 3.702693095168444547e-06, 3.705310891704189027e-06, 3.707922308218259354e-06, 3.710527341296938262e-06, 3.713125987537780800e-06, 3.715718243548921880e-06, 3.718304105948995390e-06, 3.720883571368261167e-06, 3.723456636447378071e-06, 3.726023297837856302e-06, 3.728583552202482611e-06, 3.731137396214572790e-06, 3.733684826558417213e-06, 3.736225839929279144e-06, 3.738760433033124108e-06, 3.741288602587235260e-06, 3.743810345319547618e-06, 3.746325657968551078e-06, 3.748834537284388592e-06, 3.751336980027618651e-06, 3.753832982969754848e-06, 3.756322542893574620e-06, 3.758805656592558936e-06, 3.761282320870767360e-06, 3.763752532543922673e-06, 3.766216288438189883e-06, 3.768673585390731446e-06, 3.771124420250107496e-06, 3.773568789874987505e-06, 3.776006691135850276e-06, 3.778438120913674436e-06, 3.780863076100374652e-06, 3.783281553599214138e-06, 3.785693550324195640e-06, 3.788099063199928874e-06, 3.790498089162736752e-06, 3.792890625159420404e-06, 3.795276668147805097e-06, 3.797656215097142571e-06, 3.800029262986905712e-06, 3.802395808808322108e-06, 3.804755849563229279e-06, 3.807109382264521068e-06, 3.809456403936153567e-06, 3.811796911613046863e-06, 3.814130902341053275e-06, 3.816458373177386795e-06, 3.818779321189903541e-06, 3.821093743457566772e-06, 3.823401637070731917e-06, 3.825702999130172908e-06, 3.827997826748013076e-06, 3.830286117047621805e-06, 3.832567867163116481e-06, 3.834843074239720787e-06, 3.837111735433768087e-06, 3.839373847912483746e-06, 3.841629408854494189e-06, 3.843878415449168761e-06, 3.846120864896915342e-06, 3.848356754409661458e-06, 3.850586081209726036e-06, 3.852808842530834995e-06, 3.855025035618038238e-06, 3.857234657727101482e-06, 3.859437706124967044e-06, 3.861634178089689465e-06, 3.863824070910415184e-06, 3.866007381887222446e-06, 3.868184108331644771e-06, 3.870354247566012805e-06, 3.872517796923789752e-06, 3.874674753749594237e-06, 3.876825115399023280e-06, 3.878968879239106305e-06, 3.881106042647651230e-06, 3.883236603013705253e-06, 3.885360557737382905e-06, 3.887477904229993950e-06, 3.889588639913788431e-06, 3.891692762222490299e-06, 3.893790268600639269e-06, 3.895881156503978761e-06, 3.897965423399414393e-06, 3.900043066764849661e-06, 3.902114084089688227e-06, 3.904178472874111399e-06, 3.906236230629560097e-06, 3.908287354878623884e-06, 3.910331843155026575e-06, 3.912369693003559316e-06, 3.914400901980460057e-06, 3.916425467652923964e-06, 3.918443387598987381e-06, 3.920454659408457018e-06, 3.922459280681898602e-06, 3.924457249031048526e-06, 3.926448562079106083e-06, 3.928433217460126987e-06, 3.930411212819454511e-06, 3.932382545813605989e-06, 3.934347214110168626e-06, 3.936305215388202692e-06, 3.938256547337768870e-06, 3.940201207659788502e-06, 3.942139194066970239e-06, 3.944070504282813085e-06, 3.945995136042034998e-06, 3.947913087090814287e-06, 3.949824355186216180e-06, 3.951728938096630731e-06, 3.953626833601619517e-06, 3.955518039491978308e-06, 3.957402553569569362e-06, 3.959280373647855053e-06, 3.961151497550863643e-06, 3.963015923114482704e-06, 3.964873648185417264e-06, 3.966724670621604009e-06, 3.968568988292459461e-06, 3.970406599078456466e-06, 3.972237500870962405e-06, 3.974061691573173475e-06, 3.975879169099120272e-06, 3.977689931374057425e-06, 3.979493976334813421e-06, 3.981291301928836000e-06, 3.983081906115427126e-06, 3.984865786864754505e-06, 3.986642942158236978e-06, 3.988413369988877412e-06, 3.990177068360371615e-06, 3.991934035287933350e-06, 3.993684268798209633e-06, 3.995427766928783518e-06, 3.997164527728520541e-06, 3.998894549257877884e-06, 4.000617829588024306e-06, 4.002334366801655839e-06, 4.004044158992872117e-06, 4.005747204266781664e-06, 4.007443500739838162e-06, 4.009133046539734574e-06, 4.010815839805354014e-06, 4.012491878687097551e-06, 4.014161161346339566e-06, 4.015823685955753011e-06, 4.017479450699607567e-06, 4.019128453772911599e-06, 4.020770693382204980e-06, 4.022406167745485393e-06, 4.024034875091721298e-06, 4.025656813661288988e-06, 4.027271981705797267e-06, 4.028880377488073884e-06, 4.030481999282449299e-06, 4.032076845374292505e-06, 4.033664914060332900e-06, 4.035246203648569656e-06, 4.036820712458312376e-06, 4.038388438820032016e-06, 4.039949381075751367e-06, 4.041503537578530059e-06, 4.043050906692783047e-06, 4.044591486794224704e-06, 4.046125276269839178e-06, 4.047652273517862601e-06, 4.049172476948010096e-06, 4.050685884981090379e-06, 4.052192496049240380e-06, 4.053692308595929486e-06, 4.055185321075814695e-06, 4.056671531955104839e-06, 4.058150939711066766e-06, 4.059623542832334506e-06, 4.061089339818839815e-06, 4.062548329181830808e-06, 4.064000509443763541e-06, 4.065445879138613717e-06, 4.066884436811465878e-06, 4.068316181018725159e-06, 4.069741110328194372e-06, 4.071159223318888504e-06, 4.072570518581097396e-06, 4.073974994716635621e-06, 4.075372650338396943e-06, 4.076763484070662635e-06, 4.078147494549012545e-06, 4.079524680420272576e-06, 4.080895040342803526e-06, 4.082258572986123310e-06, 4.083615277030845977e-06, 4.084965151169318673e-06, 4.086308194104915222e-06, 4.087644404552355454e-06, 4.088973781237842422e-06, 4.090296322898721900e-06, 4.091612028283689056e-06, 4.092920896152792686e-06, 4.094222925277348822e-06, 4.095518114439967828e-06, 4.096806462434830544e-06, 4.098087968066940344e-06, 4.099362630153142974e-06, 4.100630447521295608e-06, 4.101891419010573470e-06, 4.103145543471754448e-06, 4.104392819766524514e-06, 4.105633246768106232e-06, 4.106866823361142712e-06, 4.108093548441431638e-06, 4.109313420916096374e-06, 4.110526439703805342e-06, 4.111732603734133361e-06, 4.112931911948393430e-06, 4.114124363298997225e-06, 4.115309956749661767e-06, 4.116488691275669467e-06, 4.117660565863281129e-06, 4.118825579510235701e-06, 4.119983731225737568e-06, 4.121135020030120283e-06, 4.122279444955055780e-06, 4.123417005043759358e-06, 4.124547699350406925e-06, 4.125671526940698268e-06, 4.126788486891794381e-06, 4.127898578291948998e-06, 4.129001800240829625e-06, 4.130098151849424360e-06, 4.131187632239974138e-06, 4.132270240546240385e-06, 4.133345975913117083e-06, 4.134414837496828973e-06, 4.135476824465151786e-06, 4.136531935996830328e-06, 4.137580171282123971e-06, 4.138621529522718562e-06, 4.139656009931436737e-06, 4.140683611732495419e-06, 4.141704334161454149e-06, 4.142718176465110902e-06, 4.143725137901736714e-06, 4.144725217740797855e-06, 4.145718415263109989e-06, 4.146704729760825471e-06, 4.147684160537394379e-06, 4.148656706907545883e-06, 4.149622368197510167e-06, 4.150581143744642344e-06, 4.151533032897686734e-06, 4.152478035016704862e-06, 4.153416149473078851e-06, 4.154347375649432642e-06, 4.155271712939880180e-06, 4.156189160749725563e-06, 4.157099718495609576e-06, 4.158003385605464802e-06, 4.158900161518535100e-06, 4.159790045685496735e-06, 4.160673037568216970e-06, 4.161549136639898909e-06, 4.162418342385054395e-06, 4.163280654299551440e-06, 4.164136071890472772e-06, 4.164984594676381807e-06, 4.165826222186999074e-06, 4.166660953963397042e-06, 4.167488789557961148e-06, 4.168309728534381334e-06, 4.169123770467623243e-06, 4.169930914944082381e-06, 4.170731161561324924e-06, 4.171524509928242726e-06, 4.172310959665083813e-06, 4.173090510403305842e-06, 4.173863161785813276e-06, 4.174628913466751551e-06, 4.175387765111396963e-06, 4.176139716396595431e-06, 4.176884767010331358e-06, 4.177622916651871625e-06, 4.178354165031918058e-06, 4.179078511872316896e-06, 4.179795956906282407e-06, 4.180506499878306254e-06, 4.181210140544121077e-06, 4.181906878670901235e-06, 4.182596714036977359e-06, 4.183279646431904960e-06, 4.183955675656726163e-06, 4.184624801523631742e-06, 4.185287023856092406e-06, 4.185942342489020588e-06, 4.186590757268366404e-06, 4.187232268051480190e-06, 4.187866874707100637e-06, 4.188494577115069346e-06, 4.189115375166548513e-06, 4.189729268764119183e-06, 4.190336257821389926e-06, 4.190936342263462700e-06, 4.191529522026602512e-06, 4.192115797058313646e-06, 4.192695167317533641e-06, 4.193267632774264823e-06, 4.193833193409834353e-06, 4.194391849216963675e-06, 4.194943600199500860e-06, 4.195488446372560365e-06, 4.196026387762639074e-06, 4.196557424407282569e-06, 4.197081556355514577e-06, 4.197598783667471048e-06, 4.198109106414600905e-06, 4.198612524679584729e-06, 4.199109038556352544e-06, 4.199598648150082973e-06, 4.200081353577243892e-06, 4.200557154965499261e-06, 4.201026052453737071e-06, 4.201488046192204875e-06, 4.201943136342251436e-06, 4.202391323076476660e-06, 4.202832606578862030e-06, 4.203266987044484317e-06, 4.203694464679680748e-06, 4.204115039702043074e-06, 4.204528712340365059e-06, 4.204935482834730569e-06, 4.205335351436384822e-06, 4.205728318407819941e-06, 4.206114384022743612e-06, 4.206493548566095176e-06, 4.206865812334007516e-06, 4.207231175633895147e-06, 4.207589638784287350e-06, 4.207941202115025531e-06, 4.208285865967102284e-06, 4.208623630692710520e-06, 4.208954496655274809e-06, 4.209278464229449681e-06, 4.209595533801049326e-06, 4.209905705767080627e-06, 4.210208980535799913e-06, 4.210505358526594372e-06, 4.210794840170106565e-06, 4.211077425908141255e-06, 4.211353116193686579e-06, 4.211621911490925063e-06, 4.211883812275210749e-06, 4.212138819033091222e-06, 4.212386932262339792e-06, 4.212628152471828443e-06, 4.212862480181644722e-06, 4.213089915923060399e-06, 4.213310460238445917e-06, 4.213524113681484690e-06, 4.213730876816882572e-06, 4.213930750220596558e-06, 4.214123734479684007e-06, 4.214309830192413607e-06, 4.214489037968155259e-06, 4.214661358427523229e-06, 4.214826792202203347e-06, 4.214985339935001295e-06, 4.215137002280000149e-06, 4.215281779902310508e-06, 4.215419673478201783e-06, 4.215550683695148784e-06, 4.215674811251695348e-06, 4.215792056857530571e-06, 4.215902421233505748e-06, 4.216005905111527649e-06, 4.216102509234752491e-06, 4.216192234357358079e-06, 4.216275081244643765e-06, 4.216351050673093120e-06, 4.216420143430240111e-06, 4.216482360314753796e-06, 4.216537702136443414e-06, 4.216586169716160970e-06, 4.216627763885923212e-06, 4.216662485488820995e-06, 4.216690335379040460e-06, 4.216711314421829997e-06, 4.216725423493645091e-06, 4.216732663481862868e-06, 4.216733035285107357e-06, 4.216726539812982678e-06, 4.216713177986204326e-06, 4.216692950736601717e-06, 4.216665859007002142e-06, 4.216631903751345118e-06, 4.216591085934684928e-06, 4.216543406533049166e-06, 4.216488866533590359e-06, 4.216427466934541916e-06, 4.216359208745099550e-06, 4.216284092985610158e-06, 4.216202120687419364e-06, 4.216113292892926571e-06, 4.216017610655578184e-06, 4.215915075039875237e-06, 4.215805687121321721e-06, 4.215689447986505900e-06, 4.215566358732989350e-06, 4.215436420469414532e-06, 4.215299634315416702e-06, 4.215156001401656094e-06, 4.215005522869798444e-06, 4.214848199872567501e-06, 4.214684033573678114e-06, 4.214513025147809128e-06, 4.214335175780713494e-06, 4.214150486669092913e-06, 4.213958959020675761e-06, 4.213760594054151867e-06, 4.213555392999255520e-06, 4.213343357096675691e-06, 4.213124487598068729e-06, 4.212898785766091403e-06, 4.212666252874391581e-06, 4.212426890207564182e-06, 4.212180699061176594e-06, 4.211927680741783067e-06, 4.211667836566877281e-06, 4.211401167864944018e-06, 4.211127675975366829e-06, 4.210847362248537310e-06, 4.210560228045763614e-06, 4.210266274739317889e-06, 4.209965503712380375e-06, 4.209657916359123257e-06, 4.209343514084598858e-06, 4.209022298304821804e-06, 4.208694270446709725e-06, 4.208359431948112062e-06, 4.208017784257816836e-06, 4.207669328835471035e-06, 4.207314067151706812e-06, 4.206952000687999193e-06, 4.206583130936760091e-06, 4.206207459401295957e-06, 4.205824987595790841e-06, 4.205435717045343656e-06, 4.205039649285930917e-06, 4.204636785864389790e-06, 4.204227128338493489e-06, 4.203810678276846232e-06, 4.203387437258912900e-06, 4.202957406875052059e-06, 4.202520588726500724e-06, 4.202076984425311670e-06, 4.201626595594414424e-06, 4.201169423867604251e-06, 4.200705470889495567e-06, 4.200234738315571071e-06, 4.199757227812143621e-06, 4.199272941056325748e-06, 4.198781879736137225e-06, 4.198284045550333121e-06, 4.197779440208552878e-06, 4.197268065431265255e-06, 4.196749922949694635e-06, 4.196225014505902340e-06, 4.195693341852780702e-06, 4.195154906753965821e-06, 4.194609710983954451e-06, 4.194057756327965091e-06, 4.193499044582087907e-06, 4.192933577553119560e-06, 4.192361357058684335e-06, 4.191782384927142661e-06, 4.191196662997685973e-06, 4.190604193120193572e-06, 4.190004977155341885e-06, 4.189399016974613788e-06, 4.188786314460130041e-06, 4.188166871504881380e-06, 4.187540690012554024e-06, 4.186907771897518668e-06, 4.186268119084943981e-06, 4.185621733510745787e-06, 4.184968617121446457e-06, 4.184308771874490004e-06, 4.183642199737836354e-06, 4.182968902690263740e-06, 4.182288882721261126e-06, 4.181602141830932492e-06, 4.180908682030178948e-06, 4.180208505340563206e-06, 4.179501613794308738e-06, 4.178788009434334497e-06, 4.178067694314276947e-06, 4.177340670498343521e-06, 4.176606940061545559e-06, 4.175866505089491629e-06, 4.175119367678393459e-06, 4.174365529935211622e-06, 4.173604993977520018e-06, 4.172837761933527889e-06, 4.172063835942123870e-06, 4.171283218152746391e-06, 4.170495910725544615e-06, 4.169701915831244604e-06, 4.168901235651228941e-06, 4.168093872377501157e-06, 4.167279828212636599e-06, 4.166459105369820550e-06, 4.165631706072844840e-06, 4.164797632556123939e-06, 4.163956887064622111e-06, 4.163109471853925414e-06, 4.162255389190154455e-06, 4.161394641350047399e-06, 4.160527230620901524e-06, 4.159653159300555433e-06, 4.158772429697433945e-06, 4.157885044130533699e-06, 4.156991004929319814e-06, 4.156090314433867344e-06, 4.155182974994795208e-06, 4.154268988973242475e-06, 4.153348358740842105e-06, 4.152421086679826828e-06, 4.151487175182849574e-06, 4.150546626653138479e-06, 4.149599443504415570e-06, 4.148645628160913706e-06, 4.147685183057377425e-06, 4.146718110638955370e-06, 4.145744413361374780e-06, 4.144764093690819514e-06, 4.143777154103920737e-06, 4.142783597087806044e-06, 4.141783425140107935e-06, 4.140776640768785935e-06, 4.139763246492374775e-06, 4.138743244839812444e-06, 4.137716638350482543e-06, 4.136683429574212588e-06, 4.135643621071282481e-06, 4.134597215412247482e-06, 4.133544215178379512e-06, 4.132484622961051359e-06, 4.131418441362238969e-06, 4.130345672994295290e-06, 4.129266320479854555e-06, 4.128180386452026255e-06, 4.127087873554432403e-06, 4.125988784440818755e-06, 4.124883121775499493e-06, 4.123770888233099734e-06, 4.122652086498514019e-06, 4.121526719267216334e-06, 4.120394789244799318e-06, 4.119256299147305458e-06, 4.118111251701149157e-06, 4.116959649643063375e-06, 4.115801495719961560e-06, 4.114636792689373024e-06, 4.113465543318840704e-06, 4.112287750386422601e-06, 4.111103416680425818e-06, 4.109912544999309146e-06, 4.108715138152102348e-06, 4.107511198957980099e-06, 4.106300730246296718e-06, 4.105083734856820792e-06, 4.103860215639594573e-06, 4.102630175454751016e-06, 4.101393617172957622e-06, 4.100150543674869261e-06, 4.098900957851553377e-06, 4.097644862604282468e-06, 4.096382260844409571e-06, 4.095113155493773989e-06, 4.093837549484314201e-06, 4.092555445758072943e-06, 4.091266847267455548e-06, 4.089971756975012266e-06, 4.088670177853485694e-06, 4.087362112885870068e-06, 4.086047565065195271e-06, 4.084726537394796188e-06, 4.083399032888146688e-06, 4.082065054568876568e-06, 4.080724605470792722e-06, 4.079377688637874912e-06, 4.078024307124122452e-06, 4.076664463993807472e-06, 4.075298162321291958e-06, 4.073925405191076881e-06, 4.072546195697740363e-06, 4.071160536946095224e-06, 4.069768432050847629e-06, 4.068369884136984183e-06, 4.066964896339526290e-06, 4.065553471803591986e-06, 4.064135613684428128e-06, 4.062711325147207103e-06, 4.061280609367294496e-06, 4.059843469530124570e-06, 4.058399908831140129e-06, 4.056949930475847578e-06, 4.055493537679843175e-06, 4.054030733668603820e-06, 4.052561521677808925e-06, 4.051085904953075290e-06, 4.049603886750076540e-06, 4.048115470334464346e-06, 4.046620658981957367e-06, 4.045119455978092220e-06, 4.043611864618598717e-06, 4.042097888209100015e-06, 4.040577530065199012e-06, 4.039050793512520702e-06, 4.037517681886507188e-06, 4.035978198532716690e-06, 4.034432346806574513e-06, 4.032880130073473001e-06, 4.031321551708746968e-06, 4.029756615097699113e-06, 4.028185323635359462e-06, 4.026607680726908036e-06, 4.025023689787328415e-06, 4.023433354241501759e-06, 4.021836677524245774e-06, 4.020233663080274047e-06, 4.018624314363970746e-06, 4.017008634839992003e-06, 4.015386627982488344e-06, 4.013758297275647635e-06, 4.012123646213557018e-06, 4.010482678299936937e-06, 4.008835397048484194e-06, 4.007181805982902435e-06, 4.005521908636357513e-06, 4.003855708552059397e-06, 4.002183209283076672e-06, 4.000504414391981635e-06, 3.998819327451604996e-06, 3.997127952044116852e-06, 3.995430291761728028e-06, 3.993726350206407169e-06, 3.992016130989724037e-06, 3.990299637733117177e-06, 3.988576874068003181e-06, 3.986847843635104992e-06, 3.985112550085171036e-06, 3.983370997078683839e-06, 3.981623188285594911e-06, 3.979869127385954088e-06, 3.978108818069301362e-06, 3.976342264034804104e-06, 3.974569468991462888e-06, 3.972790436658002227e-06, 3.971005170762545311e-06, 3.969213675043378034e-06, 3.967415953247936784e-06, 3.965612009133599576e-06, 3.963801846467460739e-06, 3.961985469025896390e-06, 3.960162880595366572e-06, 3.958334084971756266e-06, 3.956499085960422821e-06, 3.954657887376553402e-06, 3.952810493044854132e-06, 3.950956906799666133e-06, 3.949097132484956211e-06, 3.947231173954060201e-06, 3.945359035070131899e-06, 3.943480719705798316e-06, 3.941596231743254547e-06, 3.939705575074241750e-06, 3.937808753600126765e-06, 3.935905771231599722e-06, 3.933996631889094172e-06, 3.932081339502479614e-06, 3.930159898011164830e-06, 3.928232311364038597e-06, 3.926298583519576410e-06, 3.924358718445521150e-06, 3.922412720119337945e-06, 3.920460592527870269e-06, 3.918502339667433121e-06, 3.916537965543889252e-06, 3.914567474172312900e-06, 3.912590869577459888e-06, 3.910608155793438976e-06, 3.908619336863799107e-06, 3.906624416841500607e-06, 3.904623399788996501e-06, 3.902616289777925038e-06, 3.900603090889534903e-06, 3.898583807214396380e-06, 3.896558442852453017e-06, 3.894527001913030102e-06, 3.892489488514911738e-06, 3.890445906785981702e-06, 3.888396260863712187e-06, 3.886340554894851242e-06, 3.884278793035471053e-06, 3.882210979451043335e-06, 3.880137118316123379e-06, 3.878057213814750709e-06, 3.875971270140482108e-06, 3.873879291495713995e-06, 3.871781282092415110e-06, 3.869677246151868165e-06, 3.867567187904362376e-06, 3.865451111589685585e-06, 3.863329021456799847e-06, 3.861200921763931218e-06, 3.859066816778618033e-06, 3.856926710777367013e-06, 3.854780608046058992e-06, 3.852628512880070889e-06, 3.850470429583468490e-06, 3.848306362469819595e-06, 3.846136315861942449e-06, 3.843960294091516112e-06, 3.841778301499598838e-06, 3.839590342436647558e-06, 3.837396421261767411e-06, 3.835196542343567244e-06, 3.832990710059757275e-06, 3.830778928796862793e-06, 3.828561202951128788e-06, 3.826337536927294300e-06, 3.824107935139565654e-06, 3.821872402011229369e-06, 3.819630941974418375e-06, 3.817383559470488097e-06, 3.815130258950135042e-06, 3.812871044872618793e-06, 3.810605921706591682e-06, 3.808334893929729486e-06, 3.806057966028404042e-06, 3.803775142498633200e-06, 3.801486427844847117e-06, 3.799191826580812372e-06, 3.796891343229237247e-06, 3.794584982321903862e-06, 3.792272748399212477e-06, 3.789954646011177597e-06, 3.787630679716144298e-06, 3.785300854081784335e-06, 3.782965173684708201e-06, 3.780623643110110221e-06, 3.778276266952693514e-06, 3.775923049815753498e-06, 3.773563996311373136e-06, 3.771199111060768524e-06, 3.768828398694012758e-06, 3.766451863850026192e-06, 3.764069511176713660e-06, 3.761681345330597707e-06, 3.759287370977313686e-06, 3.756887592791274747e-06, 3.754482015455723939e-06, 3.752070643662747334e-06, 3.749653482113371013e-06, 3.747230535517131197e-06, 3.744801808592662511e-06, 3.742367306067322749e-06, 3.739927032677252590e-06, 3.737480993167367975e-06, 3.735029192291463443e-06, 3.732571634811811063e-06, 3.730108325499731333e-06, 3.727639269135166276e-06, 3.725164470506869600e-06, 3.722683934412333425e-06, 3.720197665657545192e-06, 3.717705669057448019e-06, 3.715207949435631961e-06, 3.712704511624354336e-06, 3.710195360464554551e-06, 3.707680500805991744e-06, 3.705159937506724705e-06, 3.702633675433814064e-06, 3.700101719462857277e-06, 3.697564074478099157e-06, 3.695020745372396300e-06, 3.692471737047348378e-06, 3.689917054412831421e-06, 3.687356702387693233e-06, 3.684790685899183336e-06, 3.682219009883214706e-06, 3.679641679284333703e-06, 3.677058699055360927e-06, 3.674470074157866405e-06, 3.671875809562286059e-06, 3.669275910246998862e-06, 3.666670381199275091e-06, 3.664059227414951492e-06, 3.661442453898026395e-06, 3.658820065661344545e-06, 3.656192067726110899e-06, 3.653558465122031664e-06, 3.650919262887373580e-06, 3.648274466068584461e-06, 3.645624079720733641e-06, 3.642968108907685623e-06, 3.640306558701099307e-06, 3.637639434181472804e-06, 3.634966740437722040e-06, 3.632288482566859305e-06, 3.629604665674498931e-06, 3.626915294874989855e-06, 3.624220375290386897e-06, 3.621519912051547663e-06, 3.618813910297719626e-06, 3.616102375176018344e-06, 3.613385311842695473e-06, 3.610662725461584462e-06, 3.607934621205241928e-06, 3.605201004254556329e-06, 3.602461879798390935e-06, 3.599717253034106030e-06, 3.596967129167696552e-06, 3.594211513412762098e-06, 3.591450410991597484e-06, 3.588683827134784048e-06, 3.585911767080666611e-06, 3.583134236076624021e-06, 3.580351239377480971e-06, 3.577562782246713323e-06, 3.574768869955921257e-06, 3.571969507784858493e-06, 3.569164701021503862e-06, 3.566354454962104933e-06, 3.563538774910745599e-06, 3.560717666180006765e-06, 3.557891134090617367e-06, 3.555059183970987662e-06, 3.552221821158352719e-06, 3.549379050997686100e-06, 3.546530878841906958e-06, 3.543677310052325581e-06, 3.540818349998236810e-06, 3.537954004057018723e-06, 3.535084277614245289e-06, 3.532209176063186617e-06, 3.529328704805513691e-06, 3.526442869250958706e-06, 3.523551674816789061e-06, 3.520655126929006761e-06, 3.517753231021278611e-06, 3.514845992535019650e-06, 3.511933416920017838e-06, 3.509015509633869932e-06, 3.506092276142216112e-06, 3.503163721918609966e-06, 3.500229852444669258e-06, 3.497290673209634623e-06, 3.494346189711003578e-06, 3.491396407454062102e-06, 3.488441331952048548e-06, 3.485480968726187092e-06, 3.482515323305254058e-06, 3.479544401226258082e-06, 3.476568208033949682e-06, 3.473586749280963135e-06, 3.470600030527752525e-06, 3.467608057342755646e-06, 3.464610835301846395e-06, 3.461608369989146651e-06, 3.458600666996387614e-06, 3.455587731923155020e-06, 3.452569570376919637e-06, 3.449546187972579860e-06, 3.446517590333151631e-06, 3.443483783089306793e-06, 3.440444771879436203e-06, 3.437400562349713258e-06, 3.434351160154146832e-06, 3.431296570954051033e-06, 3.428236800418754597e-06, 3.425171854225620368e-06, 3.422101738058960669e-06, 3.419026457611248141e-06, 3.415946018582665541e-06, 3.412860426680639028e-06, 3.409769687620610236e-06, 3.406673807125554731e-06, 3.403572790926057401e-06, 3.400466644760457720e-06, 3.397355374374293249e-06, 3.394238985520994622e-06, 3.391117483961901649e-06, 3.387990875465211713e-06, 3.384859165807153344e-06, 3.381722360771549567e-06, 3.378580466149341026e-06, 3.375433487739408875e-06, 3.372281431348009384e-06, 3.369124302788934028e-06, 3.365962107883450195e-06, 3.362794852460462545e-06, 3.359622542355808703e-06, 3.356445183413732673e-06, 3.353262781485010352e-06, 3.350075342428385255e-06, 3.346882872110054361e-06, 3.343685376403215378e-06, 3.340482861188779941e-06, 3.337275332355433756e-06, 3.334062795798478702e-06, 3.330845257421111427e-06, 3.327622723133931651e-06, 3.324395198854331871e-06, 3.321162690508040236e-06, 3.317925204027135103e-06, 3.314682745351598067e-06, 3.311435320428713843e-06, 3.308182935212543833e-06, 3.304925595665249191e-06, 3.301663307755882108e-06, 3.298396077460506514e-06, 3.295123910762847749e-06, 3.291846813653893619e-06, 3.288564792131319674e-06, 3.285277852200865219e-06, 3.281985999875081399e-06, 3.278689241173458675e-06, 3.275387582123098524e-06, 3.272081028758160323e-06, 3.268769587119976974e-06, 3.265453263257177294e-06, 3.262132063225165519e-06, 3.258805993086895064e-06, 3.255475058912427648e-06, 3.252139266778429725e-06, 3.248798622769519697e-06, 3.245453132976974915e-06, 3.242102803498907016e-06, 3.238747640440922606e-06, 3.235387649915562952e-06, 3.232022838042415787e-06, 3.228653210948283448e-06, 3.225278774766571315e-06, 3.221899535638127225e-06, 3.218515499710697252e-06, 3.215126673138996432e-06, 3.211733062084781186e-06, 3.208334672716892943e-06, 3.204931511210742295e-06, 3.201523583749116644e-06, 3.198110896521623704e-06, 3.194693455724806266e-06, 3.191271267562124421e-06, 3.187844338244116063e-06, 3.184412673987792538e-06, 3.180976281017475086e-06, 3.177535165564229869e-06, 3.174089333866028910e-06, 3.170638792167819547e-06, 3.167183546720959889e-06, 3.163723603784105232e-06, 3.160258969622573209e-06, 3.156789650508524635e-06, 3.153315652720898703e-06, 3.149836982545606960e-06, 3.146353646274876853e-06, 3.142865650208168645e-06, 3.139373000651540982e-06, 3.135875703917824966e-06, 3.132373766326572904e-06, 3.128867194204221361e-06, 3.125355993883461821e-06, 3.121840171704183004e-06, 3.118319734012766561e-06, 3.114794687162303493e-06, 3.111265037512706379e-06, 3.107730791430087656e-06, 3.104191955287529149e-06, 3.100648535465182442e-06, 3.097100538348933110e-06, 3.093547970331885566e-06, 3.089990837813735833e-06, 3.086429147200339981e-06, 3.082862904904575983e-06, 3.079292117345738934e-06, 3.075716790949702411e-06, 3.072136932148844356e-06, 3.068552547382291869e-06, 3.064963643095035638e-06, 3.061370225739674822e-06, 3.057772301774226203e-06, 3.054169877663828418e-06, 3.050562959880074492e-06, 3.046951554900431204e-06, 3.043335669209744256e-06, 3.039715309298827124e-06, 3.036090481664630035e-06, 3.032461192810979010e-06, 3.028827449248120152e-06, 3.025189257492089036e-06, 3.021546624066343363e-06, 3.017899555499717376e-06, 3.014248058327943554e-06, 3.010592139093167686e-06, 3.006931804343222117e-06, 3.003267060633220286e-06, 2.999597914524110420e-06, 2.995924372582855951e-06, 2.992246441383164384e-06, 2.988564127505046422e-06, 2.984877437534136645e-06, 2.981186378063297785e-06, 2.977490955691147319e-06, 2.973791177022226869e-06, 2.970087048667799691e-06, 2.966378577245149325e-06, 2.962665769377794320e-06, 2.958948631695599199e-06, 2.955227170834104873e-06, 2.951501393435513322e-06, 2.947771306148203089e-06, 2.944036915626019045e-06, 2.940298228529920715e-06, 2.936555251526502508e-06, 2.932807991288172024e-06, 2.929056454493867906e-06, 2.925300647828499536e-06, 2.921540577983011404e-06, 2.917776251654606727e-06, 2.914007675546029588e-06, 2.910234856366551305e-06, 2.906457800831330499e-06, 2.902676515661519398e-06, 2.898891007584281620e-06, 2.895101283332916267e-06, 2.891307349646252297e-06, 2.887509213269541716e-06, 2.883706880953838710e-06, 2.879900359456153796e-06, 2.876089655539425031e-06, 2.872274775972663697e-06, 2.868455727530307167e-06, 2.864632516993181141e-06, 2.860805151147837681e-06, 2.856973636786689473e-06, 2.853137980708185581e-06, 2.849298189716130013e-06, 2.845454270620668511e-06, 2.841606230237577470e-06, 2.837754075388480777e-06, 2.833897812900780353e-06, 2.830037449607851396e-06, 2.826172992348332567e-06, 2.822304447967160640e-06, 2.818431823314808174e-06, 2.814555125247534231e-06, 2.810674360627318313e-06, 2.806789536322003929e-06, 2.802900659204669253e-06, 2.799007736154573257e-06, 2.795110774056474699e-06, 2.791209779800851927e-06, 2.787304760283954124e-06, 2.783395722407212620e-06, 2.779482673078009153e-06, 2.775565619209849085e-06, 2.771644567720863001e-06, 2.767719525535419884e-06, 2.763790499583507932e-06, 2.759857496800164511e-06, 2.755920524126495549e-06, 2.751979588509011470e-06, 2.748034696899715709e-06, 2.744085856256348651e-06, 2.740133073541634202e-06, 2.736176355724150959e-06, 2.732215709778474089e-06, 2.728251142683622718e-06, 2.724282661424776863e-06, 2.720310272992555344e-06, 2.716333984382362714e-06, 2.712353802596031660e-06, 2.708369734640289450e-06, 2.704381787526977734e-06, 2.700389968273797940e-06, 2.696394283903828457e-06, 2.692394741444872427e-06, 2.688391347931245403e-06, 2.684384110401430764e-06, 2.680373035899916083e-06, 2.676358131476525663e-06, 2.672339404185695901e-06, 2.668316861088179520e-06, 2.664290509249504814e-06, 2.660260355740131080e-06, 2.656226407636283367e-06, 2.652188672019434093e-06, 2.648147155975601705e-06, 2.644101866597249719e-06, 2.640052810980808734e-06, 2.635999996228628835e-06, 2.631943429448052099e-06, 2.627883117751603596e-06, 2.623819068256958356e-06, 2.619751288087125177e-06, 2.615679784369722408e-06, 2.611604564238007522e-06, 2.607525634830362116e-06, 2.603443003289546526e-06, 2.599356676764487062e-06, 2.595266662408620062e-06, 2.591172967380122285e-06, 2.587075598842743118e-06, 2.582974563965078247e-06, 2.578869869920769135e-06, 2.574761523888625416e-06, 2.570649533051922703e-06, 2.566533904599488489e-06, 2.562414645724915250e-06, 2.558291763626759498e-06, 2.554165265508541783e-06, 2.550035158578895768e-06, 2.545901450050846983e-06, 2.541764147142861450e-06, 2.537623257078118928e-06, 2.533478787084707734e-06, 2.529330744395573919e-06, 2.525179136248727095e-06, 2.521023969886464134e-06, 2.516865252556475811e-06, 2.512702991511087866e-06, 2.508537194007452435e-06, 2.504367867307684417e-06, 2.500195018678150394e-06, 2.496018655390557069e-06, 2.491838784721163097e-06, 2.487655413950995508e-06, 2.483468550365805655e-06, 2.479278201256266154e-06, 2.475084373917213213e-06, 2.470887075648719396e-06, 2.466686313755368140e-06, 2.462482095546434177e-06, 2.458274428336019477e-06, 2.454063319442329885e-06, 2.449848776188763136e-06, 2.445630805903149063e-06, 2.441409415917941878e-06, 2.437184613570192214e-06, 2.432956406201719078e-06, 2.428724801158362766e-06, 2.424489805790904740e-06, 2.420251427455217130e-06, 2.416009673510606785e-06, 2.411764551321642322e-06, 2.407516068257391374e-06, 2.403264231690891195e-06, 2.399009049000213377e-06, 2.394750527567704489e-06, 2.390488674780187245e-06, 2.386223498029096878e-06, 2.381955004709773440e-06, 2.377683202222343569e-06, 2.373408097971884387e-06, 2.369129699366785336e-06, 2.364848013820536270e-06, 2.360563048751017212e-06, 2.356274811579721205e-06, 2.351983309733785920e-06, 2.347688550643376324e-06, 2.343390541743733652e-06, 2.339089290474227153e-06, 2.334784804278687401e-06, 2.330477090604499965e-06, 2.326166156904620503e-06, 2.321852010634955314e-06, 2.317534659256411577e-06, 2.313214110234115121e-06, 2.308890371036667997e-06, 2.304563449138015762e-06, 2.300233352015714454e-06, 2.295900087151154203e-06, 2.291563662030417280e-06, 2.287224084143779191e-06, 2.282881360984890023e-06, 2.278535500052840352e-06, 2.274186508849535449e-06, 2.269834394881738317e-06, 2.265479165660102381e-06, 2.261120828699365458e-06, 2.256759391518339596e-06, 2.252394861640069888e-06, 2.248027246591078499e-06, 2.243656553902480629e-06, 2.239282791109417001e-06, 2.234905965750255112e-06, 2.230526085368500984e-06, 2.226143157511069099e-06, 2.221757189728453924e-06, 2.217368189575670118e-06, 2.212976164611467753e-06, 2.208581122398556360e-06, 2.204183070503719271e-06, 2.199782016497073320e-06, 2.195377967953200896e-06, 2.190970932450354584e-06, 2.186560917570660447e-06, 2.182147930900073565e-06, 2.177731980028611809e-06, 2.173313072549507963e-06, 2.168891216060380325e-06, 2.164466418162471224e-06, 2.160038686460782121e-06, 2.155608028564105372e-06, 2.151174452085174154e-06, 2.146737964639882349e-06, 2.142298573848450481e-06, 2.137856287334612992e-06, 2.133411112725809245e-06, 2.128963057653365639e-06, 2.124512129751706593e-06, 2.120058336659516256e-06, 2.115601686018916886e-06, 2.111142185475702625e-06, 2.106679842679263697e-06, 2.102214665282815100e-06, 2.097746660942591507e-06, 2.093275837318991603e-06, 2.088802202075809830e-06, 2.084325762880386308e-06, 2.079846527403814786e-06, 2.075364503320152354e-06, 2.070879698307545158e-06, 2.066392120047464369e-06, 2.061901776224879403e-06, 2.057408674528243527e-06, 2.052912822649681467e-06, 2.048414228284178807e-06, 2.043912899130573858e-06, 2.039408842891723680e-06, 2.034902067272715993e-06, 2.030392579982831754e-06, 2.025880388734760806e-06, 2.021365501243774745e-06, 2.016847925229888555e-06, 2.012327668415111980e-06, 2.007804738525563298e-06, 2.003279143290698945e-06, 1.998750890442696449e-06, 1.994219987717433603e-06, 1.989686442854661679e-06, 1.985150263596233863e-06, 1.980611457688044959e-06, 1.976070032879261012e-06, 1.971525996921473121e-06, 1.966979357570887023e-06, 1.962430122585538467e-06, 1.957878299727447648e-06, 1.953323896761620549e-06, 1.948766921456437310e-06, 1.944207381582648493e-06, 1.939645284915523158e-06, 1.935080639232091768e-06, 1.930513452313277328e-06, 1.925943731943131781e-06, 1.921371485907982625e-06, 1.916796721998448003e-06, 1.912219448007604995e-06, 1.907639671731190788e-06, 1.903057400968584598e-06, 1.898472643522185526e-06, 1.893885407196607877e-06, 1.889295699800867771e-06, 1.884703529145574390e-06, 1.880108903045098585e-06, 1.875511829316792342e-06, 1.870912315780148098e-06, 1.866310370258775507e-06, 1.861706000578634313e-06, 1.857099214568173059e-06, 1.852490020059346152e-06, 1.847878424886981140e-06, 1.843264436887990326e-06, 1.838648063903329117e-06, 1.834029313776203696e-06, 1.829408194352237891e-06, 1.824784713480487072e-06, 1.820158879012600433e-06, 1.815530698803019629e-06, 1.810900180709165538e-06, 1.806267332590621301e-06, 1.801632162310320924e-06, 1.796994677733739086e-06, 1.792354886729063514e-06, 1.787712797167208956e-06, 1.783068416921976638e-06, 1.778421753869250640e-06, 1.773772815888197506e-06, 1.769121610860435727e-06, 1.764468146670225693e-06, 1.759812431204665352e-06, 1.755154472352866262e-06, 1.750494278007148330e-06, 1.745831856062223907e-06, 1.741167214415372489e-06, 1.736500360966463588e-06, 1.731831303618103267e-06, 1.727160050274832636e-06, 1.722486608844324286e-06, 1.717810987236565961e-06, 1.713133193364040338e-06, 1.708453235141717834e-06, 1.703771120487245700e-06, 1.699086857320124281e-06, 1.694400453562903243e-06, 1.689711917140360586e-06, 1.685021255979704019e-06, 1.680328478010746516e-06, 1.675633591165076855e-06, 1.670936603377287392e-06, 1.666237522584120678e-06, 1.661536356724686506e-06, 1.656833113740421685e-06, 1.652127801575302000e-06, 1.647420428174996459e-06, 1.642711001488102473e-06, 1.637999529465277437e-06, 1.633286020059478651e-06, 1.628570481225903186e-06, 1.623852920922210222e-06, 1.619133347107470096e-06, 1.614411767744407037e-06, 1.609688190796521575e-06, 1.604962624230325658e-06, 1.600235076014514459e-06, 1.595505554119333009e-06, 1.590774066517590946e-06, 1.586040621184852668e-06, 1.581305226097586146e-06, 1.576567889235183311e-06, 1.571828618579148166e-06, 1.567087422112232187e-06, 1.562344307820734009e-06, 1.557599283691540321e-06, 1.552852357714422169e-06, 1.548103537881187081e-06, 1.543352832185035739e-06, 1.538600248621596213e-06, 1.533845795189113691e-06, 1.529089479886570704e-06, 1.524331310715743084e-06, 1.519571295680361619e-06, 1.514809442785272636e-06, 1.510045760038483589e-06, 1.505280255449313565e-06, 1.500512937028548075e-06, 1.495743812789497635e-06, 1.490972890747336657e-06, 1.486200178918276747e-06, 1.481425685321829549e-06, 1.476649417977879825e-06, 1.471871384908978162e-06, 1.467091594139474247e-06, 1.462310053694672370e-06, 1.457526771602931011e-06, 1.452741755893732240e-06, 1.447955014597891780e-06, 1.443166555748604670e-06, 1.438376387380584889e-06, 1.433584517530252343e-06, 1.428790954235935513e-06, 1.423995705537041365e-06, 1.419198779475253266e-06, 1.414400184093727999e-06, 1.409599927437256271e-06, 1.404798017552267585e-06, 1.399994462487023581e-06, 1.395189270290760616e-06, 1.390382449014935762e-06, 1.385574006712394372e-06, 1.380763951437526792e-06, 1.375952291246294187e-06, 1.371139034196397530e-06, 1.366324188346438613e-06, 1.361507761757163702e-06, 1.356689762490609944e-06, 1.351870198610303992e-06, 1.347049078181455129e-06, 1.342226409270098074e-06, 1.337402199944352514e-06, 1.332576458273555327e-06, 1.327749192328467884e-06, 1.322920410181256999e-06, 1.318090119905700118e-06, 1.313258329576312239e-06, 1.308425047269610749e-06, 1.303590281063263516e-06, 1.298754039036267826e-06, 1.293916329268958854e-06, 1.289077159843182670e-06, 1.284236538841464452e-06, 1.279394474348244309e-06, 1.274550974449029821e-06, 1.269706047230579004e-06, 1.264859700781116931e-06, 1.260011943189459696e-06, 1.255162782546287710e-06, 1.250312226943264577e-06, 1.245460284473257538e-06, 1.240606963230307608e-06, 1.235752271309839005e-06, 1.230896216807786498e-06, 1.226038807821868709e-06, 1.221180052450709736e-06, 1.216319958794049430e-06, 1.211458534952731329e-06, 1.206595789028901071e-06, 1.201731729124914569e-06, 1.196866363345681331e-06, 1.191999699795670404e-06, 1.187131746581237182e-06, 1.182262511809746719e-06, 1.177392003588935070e-06, 1.172520230027963424e-06, 1.167647199237611437e-06, 1.162772919328332023e-06, 1.157897398412395404e-06, 1.153020644603011799e-06, 1.148142666013454952e-06, 1.143263470759411382e-06, 1.138383066955973201e-06, 1.133501462719968941e-06, 1.128618666169104022e-06, 1.123734685421294355e-06, 1.118849528595728514e-06, 1.113963203813083949e-06, 1.109075719193552545e-06, 1.104187082859004162e-06, 1.099297302932093224e-06, 1.094406387535395802e-06, 1.089514344793542024e-06, 1.084621182831268533e-06, 1.079726909773624101e-06, 1.074831533747022496e-06, 1.069935062878591322e-06, 1.065037505295301059e-06, 1.060138869126305413e-06, 1.055239162499930541e-06, 1.050338393546022598e-06, 1.045436570395058570e-06, 1.040533701177308552e-06, 1.035629794024931949e-06, 1.030724857070061269e-06, 1.025818898444983395e-06, 1.020911926283211289e-06, 1.016003948718609643e-06, 1.011094973885590546e-06, 1.006185009919325448e-06, 1.001274064954854514e-06, 9.963621471283846936e-07, 9.914492645764049984e-07, 9.865354254358866147e-07, 9.816206378442721021e-07, 9.767049099396778350e-07, 9.717882498600204997e-07, 9.668706657442948438e-07, 9.619521657316897971e-07, 9.570327579618139943e-07, 9.521124505746569172e-07, 9.471912517108062647e-07, 9.422691695105619562e-07, 9.373462121152275392e-07, 9.324223876662269460e-07, 9.274977043053108517e-07, 9.225721701747520213e-07, 9.176457934164821831e-07, 9.127185821733572845e-07, 9.077905445882938354e-07, 9.028616888044644676e-07, 8.979320229652843818e-07, 8.930015552146226824e-07, 8.880702936959086522e-07, 8.831382465534352297e-07, 8.782054219314635899e-07, 8.732718279744363844e-07, 8.683374728269592129e-07, 8.634023646340061343e-07, 8.584665115400394939e-07, 8.535299216902960368e-07, 8.485926032299070524e-07, 8.436545643041071682e-07, 8.387158130584259910e-07, 8.337763576378156627e-07, 8.288362061877225691e-07, 8.238953668542888276e-07, 8.189538477823850534e-07, 8.140116571177657403e-07, 8.090688030061968172e-07, 8.041252935927813040e-07, 7.991811370232491306e-07, 7.942363414430829994e-07, 7.892909149977160611e-07, 7.843448658327383795e-07, 7.793982020930075465e-07, 7.744509319237327786e-07, 7.695030634706824399e-07, 7.645546048781872680e-07, 7.596055642913349301e-07, 7.546559498550658155e-07, 7.497057697135133032e-07, 7.447550320110804461e-07, 7.398037448926408237e-07, 7.348519165015707792e-07, 7.298995549819043768e-07, 7.249466684774604284e-07, 7.199932651309485563e-07, 7.150393530863589907e-07, 7.100849404858949340e-07, 7.051300354723544177e-07, 7.001746461882574344e-07, 6.952187807751598417e-07, 6.902624473747440228e-07, 6.853056541290221740e-07, 6.803484091783519190e-07, 6.753907206636165711e-07, 6.704325967253302433e-07, 6.654740455027512161e-07, 6.605150751362791471e-07, 6.555556937643730355e-07, 6.505959095259508665e-07, 6.456357305592763982e-07, 6.406751650023868074e-07, 6.357142209919831822e-07, 6.307529066658300608e-07, 6.257912301596723369e-07, 6.208291996096326812e-07, 6.158668231513196152e-07, 6.109041089189396092e-07, 6.059410650474788274e-07, 6.009776996707128119e-07, 5.960140209214123122e-07, 5.910500369324307694e-07, 5.860857558358066729e-07, 5.811211857629798716e-07, 5.761563348449880856e-07, 5.711912112115775213e-07, 5.662258229925146083e-07, 5.612601783169051962e-07, 5.562942853123043231e-07, 5.513281521069089723e-07, 5.463617868275514512e-07, 5.413951975999200432e-07, 5.364283925496370690e-07, 5.314613798013689728e-07, 5.264941674790332097e-07, 5.215267637057840582e-07, 5.165591766042226844e-07, 5.115914142954965339e-07, 5.066234849006153037e-07, 5.016553965395513930e-07, 4.966871573314492263e-07, 4.917187753948309767e-07, 4.867502588467047457e-07, 4.817816158038700529e-07, 4.768128543820307281e-07, 4.718439826959880343e-07, 4.668750088596428915e-07, 4.619059409861905354e-07, 4.569367871872380150e-07, 4.519675555741004174e-07, 4.469982542569180482e-07, 4.420288913448568603e-07, 4.370594749463169300e-07, 4.320900131680371431e-07, 4.271205141164060844e-07, 4.221509858965675180e-07, 4.171814366126261631e-07, 4.122118743676368416e-07, 4.072423072638096720e-07, 4.022727434016136434e-07, 3.973031908808710882e-07, 3.923336578009593289e-07, 3.873641522588198332e-07, 3.823946823511410173e-07, 3.774252561734734679e-07, 3.724558818195456977e-07, 3.674865673825846699e-07, 3.625173209544076204e-07, 3.575481506256413333e-07, 3.525790644859246344e-07, 3.476100706230108542e-07, 3.426411771238621946e-07, 3.376723920748547106e-07, 3.327037235597829654e-07, 3.277351796620459051e-07, 3.227667684637596970e-07, 3.177984980450770333e-07, 3.128303764855026261e-07, 3.078624118629921228e-07, 3.028946122541642354e-07, 2.979269857342858641e-07, 2.929595403774817382e-07, 2.879922842556135266e-07, 2.830252254406996524e-07, 2.780583720018081112e-07, 2.730917320074751734e-07, 2.681253135248071593e-07, 2.631591246188037650e-07, 2.581931733534545472e-07, 2.532274677919404106e-07, 2.482620159946369398e-07, 2.432968260213076851e-07, 2.383319059302107017e-07, 2.333672637771992917e-07, 2.284029076181394099e-07, 2.234388455058066642e-07, 2.184750854922993538e-07, 2.135116356279230857e-07, 2.085485039613985886e-07, 2.035856985398494580e-07, 1.986232274090094933e-07, 1.936610986123256375e-07, 1.886993201922698721e-07, 1.837379001896673613e-07, 1.787768466427956853e-07, 1.738161675895815146e-07, 1.688558710656025648e-07, 1.638959651042930817e-07, 1.589364577380353758e-07, 1.539773569972636610e-07, 1.490186709106742779e-07, 1.440604075054307022e-07, 1.391025748062678073e-07, 1.341451808368057182e-07, 1.291882336188728207e-07, 1.242317411716098649e-07, 1.192757115136663748e-07, 1.143201526611986462e-07, 1.093650726280798505e-07, 1.044104794269896234e-07, 9.945638106851856605e-08, 9.450278556137575461e-08, 8.954970091237757015e-08, 8.459713512665278651e-08, 7.964509620674922838e-08, 7.469359215394533575e-08, 6.974263096735242800e-08, 6.479222064412409319e-08, 5.984236917966457131e-08, 5.489308456673158764e-08, 4.994437479674927361e-08, 4.499624785891158249e-08, 4.004871174039102341e-08, 3.510177442632495001e-08, 3.015544390002420852e-08, 2.520972814207749963e-08, 2.026463513166270794e-08, 1.532017284565111501e-08, 1.037634925881577273e-08, 5.433172344039005727e-09, 4.906500714178525635e-10, -4.451209590425839621e-09, -9.392398675240051064e-09, -1.433290921893477224e-08, -1.927273325959482371e-08, -2.421186283727202515e-08, -2.915028999487941064e-08, -3.408800677710263753e-08, -3.902500523019108854e-08, -4.396127740395517878e-08, -4.889681534957442971e-08, -5.383161112049217081e-08, -5.876565677308895069e-08, -6.369894436537310350e-08, -6.863146595787490475e-08, -7.356321361343952464e-08, -7.849417939701804259e-08, -8.342435537656188754e-08, -8.835373362193410944e-08, -9.328230620470267673e-08, -9.821006520013345226e-08, -1.031370026850010498e-07, -1.080631107384846377e-07, -1.129883814428373594e-07, -1.179128068820805132e-07, -1.228363791428958882e-07, -1.277590903144179765e-07, -1.326809324882480684e-07, -1.376018977582444264e-07, -1.425219782216363187e-07, -1.474411659766176785e-07, -1.523594531254363383e-07, -1.572768317719904423e-07, -1.621932940227179891e-07, -1.671088319872708323e-07, -1.720234377774272752e-07, -1.769371035068838596e-07, -1.818498212932492282e-07, -1.867615832558547302e-07, -1.916723815166491256e-07, -1.965822082010868854e-07, -2.014910554357283347e-07, -2.063989153513246002e-07, -2.113057800804119039e-07, -2.162116417582093654e-07, -2.211164925235026953e-07, -2.260203245164652294e-07, -2.309231298806443535e-07, -2.358249007627552240e-07, -2.407256293115957193e-07, -2.456253076787171040e-07, -2.505239280193152669e-07, -2.554214824900464873e-07, -2.603179632510176450e-07, -2.652133624655771091e-07, -2.701076722992284709e-07, -2.750008849205264935e-07, -2.798929925008636059e-07, -2.847839872142682040e-07, -2.896738612382903287e-07, -2.945626067526995121e-07, -2.994502159401569509e-07, -3.043366809871012383e-07, -3.092219940815717536e-07, -3.141061474151923608e-07, -3.189891331829647856e-07, -3.238709435821854717e-07, -3.287515708133335362e-07, -3.336310070798641463e-07, -3.385092445880051259e-07, -3.433862755476388224e-07, -3.482620921710063583e-07, -3.531366866735932039e-07, -3.580100512739209135e-07, -3.628821781935675065e-07, -3.677530596569474512e-07, -3.726226878922112663e-07, -3.774910551299371730e-07, -3.823581536040265144e-07, -3.872239755514863857e-07, -3.920885132124537748e-07, -3.969517588299797806e-07, -4.018137046509192623e-07, -4.066743429246359377e-07, -4.115336659038804916e-07, -4.163916658445915763e-07, -4.212483350056879706e-07, -4.261036656499490178e-07, -4.309576500427254943e-07, -4.358102804528186183e-07, -4.406615491522743264e-07, -4.455114484163991555e-07, -4.503599705235535672e-07, -4.552071077560293144e-07, -4.600528523987635928e-07, -4.648971967402176789e-07, -4.697401330721737474e-07, -4.745816536897429716e-07, -4.794217508911610704e-07, -4.842604169786766342e-07, -4.890976442572491295e-07, -4.939334250354375950e-07, -4.987677516251906838e-07, -5.036006163416488806e-07, -5.084320115040153579e-07, -5.132619294344909379e-07, -5.180903624580601104e-07, -5.229173029044687494e-07, -5.277427431060548615e-07, -5.325666753986336293e-07, -5.373890921221582032e-07, -5.422099856194365521e-07, -5.470293482370005195e-07, -5.518471723249092060e-07, -5.566634502365428221e-07, -5.614781743294770389e-07, -5.662913369644182667e-07, -5.711029305049899916e-07, -5.759129473197090089e-07, -5.807213797798137370e-07, -5.855282202601565657e-07, -5.903334611400748187e-07, -5.951370948012374898e-07, -5.999391136296114176e-07, -6.047395100152475162e-07, -6.095382763512199720e-07, -6.143354050342847058e-07, -6.191308884657496996e-07, -6.239247190491156917e-07, -6.287168891931148021e-07, -6.335073913093377807e-07, -6.382962178131209574e-07, -6.430833611244068272e-07, -6.478688136656228679e-07, -6.526525678636021875e-07, -6.574346161494054355e-07, -6.622149509572410474e-07, -6.669935647251330247e-07, -6.717704498957880846e-07, -6.765455989142362497e-07, -6.813190042308671437e-07, -6.860906582990651810e-07, -6.908605535762980045e-07, -6.956286825239171147e-07, -7.003950376071690930e-07, -7.051596112949861732e-07, -7.099223960608670494e-07, -7.146833843815889627e-07, -7.194425687378821510e-07, -7.241999416152726469e-07, -7.289554955019748597e-07, -7.337092228908148696e-07, -7.384611162790397395e-07, -7.432111681672512059e-07, -7.479593710602738885e-07, -7.527057174669612132e-07, -7.574501998999831244e-07, -7.621928108767003294e-07, -7.669335429178813605e-07, -7.716723885485864544e-07, -7.764093402979570643e-07, -7.811443906992191419e-07, -7.858775322895009201e-07, -7.906087576106782510e-07, -7.953380592081185629e-07, -8.000654296315413388e-07, -8.047908614348139826e-07, -8.095143471759709823e-07, -8.142358794170033169e-07, -8.189554507247295239e-07, -8.236730536695267378e-07, -8.283886808261942404e-07, -8.331023247737464673e-07, -8.378139780952227426e-07, -8.425236333785455355e-07, -8.472312832152446168e-07, -8.519369202013381847e-07, -8.566405369371177189e-07, -8.613421260271677794e-07, -8.660416800801611310e-07, -8.707391917097153049e-07, -8.754346535331383549e-07, -8.801280581722843608e-07, -8.848193982533594574e-07, -8.895086664069192938e-07, -8.941958552676891447e-07, -8.988809574754001436e-07, -9.035639656735445680e-07, -9.082448725102343071e-07, -9.129236706379899508e-07, -9.176003527135534893e-07, -9.222749113987337583e-07, -9.269473393593742230e-07, -9.316176292651381494e-07, -9.362857737914334871e-07, -9.409517656173034392e-07, -9.456155974262887422e-07, -9.502772619070703517e-07, -9.549367517522101167e-07, -9.595940596590183529e-07, -9.642491783293364730e-07, -9.689021004693529683e-07, -9.735528187904482189e-07, -9.782013260081575132e-07, -9.828476148419660658e-07, -9.874916780172262769e-07, -9.921335082630469261e-07, -9.967730983131717573e-07, -1.001410440906798559e-06, -1.006045528786520241e-06, -1.010678354700204186e-06, -1.015308911400804209e-06, -1.019937191645317862e-06, -1.024563188195434834e-06, -1.029186893818382083e-06, -1.033808301284620324e-06, -1.038427403370806319e-06, -1.043044192857481748e-06, -1.047658662529938027e-06, -1.052270805179053177e-06, -1.056880613599217231e-06, -1.061488080590220056e-06, -1.066093198957064373e-06, -1.070695961508916068e-06, -1.075296361059751751e-06, -1.079894390429208542e-06, -1.084490042440287764e-06, -1.089083309922299866e-06, -1.093674185708565149e-06, -1.098262662637491829e-06, -1.102848733552346494e-06, -1.107432391301297298e-06, -1.112013628737195427e-06, -1.116592438718421077e-06, -1.121168814107657159e-06, -1.125742747772512080e-06, -1.130314232586372706e-06, -1.134883261426325108e-06, -1.139449827175054668e-06, -1.144013922720617380e-06, -1.148575540955449247e-06, -1.153134674777180487e-06, -1.157691317088451520e-06, -1.162245460796712854e-06, -1.166797098815072542e-06, -1.171346224061045748e-06, -1.175892829457416818e-06, -1.180436907932022861e-06, -1.184978452417777253e-06, -1.189517455852473764e-06, -1.194053911179611352e-06, -1.198587811347185876e-06, -1.203119149308512136e-06, -1.207647918022028848e-06, -1.212174110451307109e-06, -1.216697719564874858e-06, -1.221218738337027475e-06, -1.225737159746612513e-06, -1.230252976777863380e-06, -1.234766182420219774e-06, -1.239276769668095592e-06, -1.243784731521750319e-06, -1.248290060986043252e-06, -1.252792751071278627e-06, -1.257292794793000214e-06, -1.261790185172011435e-06, -1.266284915234180756e-06, -1.270776978011262677e-06, -1.275266366539684352e-06, -1.279753073861387970e-06, -1.284237093023605015e-06, -1.288718417078699568e-06, -1.293197039084972775e-06, -1.297672952105454133e-06, -1.302146149208732639e-06, -1.306616623468756466e-06, -1.311084367964844401e-06, -1.315549375781497380e-06, -1.320011640009224976e-06, -1.324471153743528540e-06, -1.328927910084714642e-06, -1.333381902139746470e-06, -1.337833123020194439e-06, -1.342281565843082795e-06, -1.346727223731505834e-06, -1.351170089813415586e-06, -1.355610157222437933e-06, -1.360047419097687953e-06, -1.364481868583599242e-06, -1.368913498830689636e-06, -1.373342302994615707e-06, -1.377768274235945760e-06, -1.382191405722008481e-06, -1.386611690624876365e-06, -1.391029122122179500e-06, -1.395443693397917665e-06, -1.399855397640289590e-06, -1.404264228044470805e-06, -1.408670177810446293e-06, -1.413073240144016764e-06, -1.417473408256398859e-06, -1.421870675365249421e-06, -1.426265034692468292e-06, -1.430656479467018723e-06, -1.435045002922716192e-06, -1.439430598299051723e-06, -1.443813258842019858e-06, -1.448192977802090013e-06, -1.452569748436045178e-06, -1.456943564006783496e-06, -1.461314417782343965e-06, -1.465682303036486231e-06, -1.470047213049516871e-06, -1.474409141106110186e-06, -1.478768080498104047e-06, -1.483124024522306926e-06, -1.487476966481328625e-06, -1.491826899684354883e-06, -1.496173817445213393e-06, -1.500517713084119750e-06, -1.504858579927528788e-06, -1.509196411307140174e-06, -1.513531200560494711e-06, -1.517862941031791094e-06, -1.522191626069897075e-06, -1.526517249030173762e-06, -1.530839803274245011e-06, -1.535159282169058915e-06, -1.539475679087657548e-06, -1.543788987408999083e-06, -1.548099200517793473e-06, -1.552406311805265410e-06, -1.556710314667988812e-06, -1.561011202508716069e-06, -1.565308968736158023e-06, -1.569603606765002602e-06, -1.573895110015733135e-06, -1.578183471915418846e-06, -1.582468685896546155e-06, -1.586750745397823999e-06, -1.591029643863987955e-06, -1.595305374745610291e-06, -1.599577931499909309e-06, -1.603847307589561802e-06, -1.608113496483515782e-06, -1.612376491656800748e-06, -1.616636286590519848e-06, -1.620892874771701437e-06, -1.625146249694046160e-06, -1.629396404856795317e-06, -1.633643333765509073e-06, -1.637887029931891123e-06, -1.642127486873787635e-06, -1.646364698115001321e-06, -1.650598657186085537e-06, -1.654829357623199726e-06, -1.659056792968870052e-06, -1.663280956771819785e-06, -1.667501842586788249e-06, -1.671719443975302251e-06, -1.675933754504539792e-06, -1.680144767748096630e-06, -1.684352477285831483e-06, -1.688556876703837869e-06, -1.692757959594284013e-06, -1.696955719556193602e-06, -1.701150150194287889e-06, -1.705341245119779365e-06, -1.709528997950172070e-06, -1.713713402309289756e-06, -1.717894451827092083e-06, -1.722072140140611646e-06, -1.726246460891902254e-06, -1.730417407730696066e-06, -1.734584974312318414e-06, -1.738749154298466647e-06, -1.742909941357786960e-06, -1.747067329164929953e-06, -1.751221311400377835e-06, -1.755371881752147597e-06, -1.759519033913925424e-06, -1.763662761585808477e-06, -1.767803058475103867e-06, -1.771939918294214873e-06, -1.776073334763345317e-06, -1.780203301608387055e-06, -1.784329812561904872e-06, -1.788452861362747265e-06, -1.792572441757013122e-06, -1.796688547495981572e-06, -1.800801172338753034e-06, -1.804910310050200671e-06, -1.809015954401725303e-06, -1.813118099172015621e-06, -1.817216738145179212e-06, -1.821311865112442549e-06, -1.825403473871968035e-06, -1.829491558227931371e-06, -1.833576111991097753e-06, -1.837657128979571491e-06, -1.841734603016753183e-06, -1.845808527933953443e-06, -1.849878897568351340e-06, -1.853945705763771764e-06, -1.858008946371419806e-06, -1.862068613248016854e-06, -1.866124700257515631e-06, -1.870177201270908129e-06, -1.874226110165283914e-06, -1.878271420824437880e-06, -1.882313127139590645e-06, -1.886351223007548589e-06, -1.890385702332393889e-06, -1.894416559025293731e-06, -1.898443787003599490e-06, -1.902467380191573693e-06, -1.906487332520236073e-06, -1.910503637927164090e-06, -1.914516290357269665e-06, -1.918525283761676434e-06, -1.922530612098477633e-06, -1.926532269332571557e-06, -1.930530249435638276e-06, -1.934524546385996051e-06, -1.938515154169327254e-06, -1.942502066777592035e-06, -1.946485278209777535e-06, -1.950464782471711952e-06, -1.954440573575891332e-06, -1.958412645542238925e-06, -1.962380992396979062e-06, -1.966345608173424469e-06, -1.970306486911761118e-06, -1.974263622659070679e-06, -1.978217009469177629e-06, -1.982166641403348472e-06, -1.986112512529254979e-06, -1.990054616921668751e-06, -1.993992948662290115e-06, -1.997927501839801494e-06, -2.001858270549638281e-06, -2.005785248894759214e-06, -2.009708430984565988e-06, -2.013627810935599939e-06, -2.017543382871434893e-06, -2.021455140922438728e-06, -2.025363079226542056e-06, -2.029267191928160373e-06, -2.033167473178901755e-06, -2.037063917137440227e-06, -2.040956517969462399e-06, -2.044845269847562860e-06, -2.048730166951917989e-06, -2.052611203469244955e-06, -2.056488373593523386e-06, -2.060361671525810718e-06, -2.064231091474280736e-06, -2.068096627654015622e-06, -2.071958274287945745e-06, -2.075816025604857859e-06, -2.079669875841927731e-06, -2.083519819242757568e-06, -2.087365850058102348e-06, -2.091207962546399635e-06, -2.095046150972905610e-06, -2.098880409609498981e-06, -2.102710732736334392e-06, -2.106537114640027229e-06, -2.110359549614405788e-06, -2.114178031961191866e-06, -2.117992555988105523e-06, -2.121803116011326136e-06, -2.125609706353540414e-06, -2.129412321344701338e-06, -2.133210955322522828e-06, -2.137005602631628899e-06, -2.140796257623380866e-06, -2.144582914657465531e-06, -2.148365568100155376e-06, -2.152144212325009909e-06, -2.155918841713577853e-06, -2.159689450653684020e-06, -2.163456033540984042e-06, -2.167218584778800048e-06, -2.170977098777262192e-06, -2.174731569953847792e-06, -2.178481992734069546e-06, -2.182228361549582409e-06, -2.185970670840625594e-06, -2.189708915054103614e-06, -2.193443088644312616e-06, -2.197173186073618006e-06, -2.200899201810755725e-06, -2.204621130332372579e-06, -2.208338966122873771e-06, -2.212052703673580951e-06, -2.215762337483399682e-06, -2.219467862058672048e-06, -2.223169271913024196e-06, -2.226866561568040994e-06, -2.230559725552250015e-06, -2.234248758401819069e-06, -2.237933654660388069e-06, -2.241614408879106295e-06, -2.245291015616398620e-06, -2.248963469438742659e-06, -2.252631764919584987e-06, -2.256295896640069595e-06, -2.259955859188854925e-06, -2.263611647162138859e-06, -2.267263255163493125e-06, -2.270910677804519746e-06, -2.274553909703887120e-06, -2.278192945487996204e-06, -2.281827779790800106e-06, -2.285458407253682950e-06, -2.289084822526093040e-06, -2.292707020264589095e-06, -2.296324995133495012e-06, -2.299938741804724948e-06, -2.303548254957834144e-06, -2.307153529279808016e-06, -2.310754559465785095e-06, -2.314351340218036351e-06, -2.317943866246633929e-06, -2.321532132269317740e-06, -2.325116133011492072e-06, -2.328695863206048562e-06, -2.332271317594061183e-06, -2.335842490923795642e-06, -2.339409377951370914e-06, -2.342971973440590255e-06, -2.346530272162833206e-06, -2.350084268897658262e-06, -2.353633958431861387e-06, -2.357179335560139247e-06, -2.360720395084905401e-06, -2.364257131816337735e-06, -2.367789540572191271e-06, -2.371317616178466046e-06, -2.374841353468463523e-06, -2.378360747283400687e-06, -2.381875792472266899e-06, -2.385386483891864126e-06, -2.388892816406607046e-06, -2.392394784889382782e-06, -2.395892384219725125e-06, -2.399385609286159123e-06, -2.402874454984352850e-06, -2.406358916217817905e-06, -2.409838987898399423e-06, -2.413314664945450215e-06, -2.416785942285709640e-06, -2.420252814854736368e-06, -2.423715277595299858e-06, -2.427173325458084245e-06, -2.430626953402265594e-06, -2.434076156393792421e-06, -2.437520929407633719e-06, -2.440961267426042966e-06, -2.444397165439142575e-06, -2.447828618445493100e-06, -2.451255621451248747e-06, -2.454678169470003637e-06, -2.458096257524271568e-06, -2.461509880643851672e-06, -2.464919033866526787e-06, -2.468323712238643256e-06, -2.471723910813427447e-06, -2.475119624653184226e-06, -2.478510848827566472e-06, -2.481897578414371706e-06, -2.485279808499241400e-06, -2.488657534176449986e-06, -2.492030750547168013e-06, -2.495399452721700859e-06, -2.498763635817724357e-06, -2.502123294960985295e-06, -2.505478425285856219e-06, -2.508829021933832379e-06, -2.512175080054926784e-06, -2.515516594807522826e-06, -2.518853561357596273e-06, -2.522185974879353516e-06, -2.525513830555075709e-06, -2.528837123575000188e-06, -2.532155849137878238e-06, -2.535470002450111547e-06, -2.538779578726389599e-06, -2.542084573189467746e-06, -2.545384981070252339e-06, -2.548680797607608876e-06, -2.551972018049010401e-06, -2.555258637649585866e-06, -2.558540651672786324e-06, -2.561818055390182907e-06, -2.565090844081543484e-06, -2.568359013034631495e-06, -2.571622557545818349e-06, -2.574881472919241055e-06, -2.578135754467340932e-06, -2.581385397510766625e-06, -2.584630397378200463e-06, -2.587870749406992464e-06, -2.591106448942253160e-06, -2.594337491337446101e-06, -2.597563871954283664e-06, -2.600785586162687249e-06, -2.604002629340674618e-06, -2.607214996874957905e-06, -2.610422684160043640e-06, -2.613625686598848118e-06, -2.616823999602558490e-06, -2.620017618590610312e-06, -2.623206538990586328e-06, -2.626390756238793720e-06, -2.629570265779374301e-06, -2.632745063064914803e-06, -2.635915143556302459e-06, -2.639080502722591591e-06, -2.642241136041571126e-06, -2.645397038999092050e-06, -2.648548207088854382e-06, -2.651694635813797996e-06, -2.654836320684592793e-06, -2.657973257220265498e-06, -2.661105440948626992e-06, -2.664232867405404102e-06, -2.667355532134853702e-06, -2.670473430689577633e-06, -2.673586558630412591e-06, -2.676694911527017119e-06, -2.679798484957153750e-06, -2.682897274506525948e-06, -2.685991275770127437e-06, -2.689080484350743371e-06, -2.692164895859628813e-06, -2.695244505916834837e-06, -2.698319310150576646e-06, -2.701389304197058233e-06, -2.704454483701778930e-06, -2.707514844318115054e-06, -2.710570381707880215e-06, -2.713621091541937724e-06, -2.716666969498582337e-06, -2.719708011265576094e-06, -2.722744212538598678e-06, -2.725775569021802218e-06, -2.728802076428237772e-06, -2.731823730479177276e-06, -2.734840526903936937e-06, -2.737852461441220629e-06, -2.740859529837652407e-06, -2.743861727848350373e-06, -2.746859051237546280e-06, -2.749851495777004545e-06, -2.752839057247980588e-06, -2.755821731439724974e-06, -2.758799514150177980e-06, -2.761772401185660001e-06, -2.764740388361615674e-06, -2.767703471501082860e-06, -2.770661646436612871e-06, -2.773614909008797481e-06, -2.776563255066770367e-06, -2.779506680468846619e-06, -2.782445181081066267e-06, -2.785378752778470762e-06, -2.788307391444992435e-06, -2.791231092972743414e-06, -2.794149853262596267e-06, -2.797063668224013743e-06, -2.799972533774950101e-06, -2.802876445842419461e-06, -2.805775400361623787e-06, -2.808669393276421299e-06, -2.811558420539848241e-06, -2.814442478112765321e-06, -2.817321561965114292e-06, -2.820195668075741339e-06, -2.823064792431774509e-06, -2.825928931029127280e-06, -2.828788079872395212e-06, -2.831642234974843251e-06, -2.834491392358301540e-06, -2.837335548053691001e-06, -2.840174698100211035e-06, -2.843008838545898135e-06, -2.845837965447530600e-06, -2.848662074870413385e-06, -2.851481162888993895e-06, -2.854295225586048834e-06, -2.857104259053189035e-06, -2.859908259390787043e-06, -2.862707222707926709e-06, -2.865501145122327811e-06, -2.868290022760828436e-06, -2.871073851758638746e-06, -2.873852628259866558e-06, -2.876626348417357682e-06, -2.879395008392613336e-06, -2.882158604356300055e-06, -2.884917132487462379e-06, -2.887670588974065375e-06, -2.890418970012869699e-06, -2.893162271809408306e-06, -2.895900490577893272e-06, -2.898633622541741805e-06, -2.901361663932904121e-06, -2.904084610991749098e-06, -2.906802459968277649e-06, -2.909515207120749682e-06, -2.912222848716283375e-06, -2.914925381031202884e-06, -2.917622800350297187e-06, -2.920315102967309674e-06, -2.923002285184840733e-06, -2.925684343314222815e-06, -2.928361273676025264e-06, -2.931033072599409305e-06, -2.933699736422034444e-06, -2.936361261491198574e-06, -2.939017644162554721e-06, -2.941668880800649334e-06, -2.944314967779288626e-06, -2.946955901480795303e-06, -2.949591678296516360e-06, -2.952222294626679508e-06, -2.954847746880437646e-06, -2.957468031475717662e-06, -2.960083144839870956e-06, -2.962693083408275415e-06, -2.965297843626135775e-06, -2.967897421947054259e-06, -2.970491814833578181e-06, -2.973081018757569253e-06, -2.975665030199588637e-06, -2.978243845648738554e-06, -2.980817461603850669e-06, -2.983385874572214693e-06, -2.985949081070059499e-06, -2.988507077623087603e-06, -2.991059860765098304e-06, -2.993607427039735971e-06, -2.996149772999117414e-06, -2.998686895204476910e-06, -3.001218790226022200e-06, -3.003745454642964566e-06, -3.006266885043393460e-06, -3.008783078024741113e-06, -3.011294030193094734e-06, -3.013799738163545072e-06, -3.016300198560681926e-06, -3.018795408017376111e-06, -3.021285363175905593e-06, -3.023770060687792007e-06, -3.026249497213237380e-06, -3.028723669421593391e-06, -3.031192573991241514e-06, -3.033656207609501536e-06, -3.036114566973093195e-06, -3.038567648787413231e-06, -3.041015449766943240e-06, -3.043457966635679960e-06, -3.045895196125974837e-06, -3.048327134979583928e-06, -3.050753779947609025e-06, -3.053175127789839938e-06, -3.055591175275273724e-06, -3.058001919182003306e-06, -3.060407356297192055e-06, -3.062807483416992060e-06, -3.065202297346975684e-06, -3.067591794901504105e-06, -3.069975972904138974e-06, -3.072354828187509427e-06, -3.074728357593326489e-06, -3.077096557972686734e-06, -3.079459426185501807e-06, -3.081816959100896954e-06, -3.084169153597136483e-06, -3.086516006561620375e-06, -3.088857514890761891e-06, -3.091193675490451742e-06, -3.093524485275388086e-06, -3.095849941169532661e-06, -3.098170040105980757e-06, -3.100484779026885413e-06, -3.102794154883890673e-06, -3.105098164637453956e-06, -3.107396805257300918e-06, -3.109690073722389026e-06, -3.111977967020766106e-06, -3.114260482149594479e-06, -3.116537616115529591e-06, -3.118809365934193576e-06, -3.121075728630073618e-06, -3.123336701237491374e-06, -3.125592280799528518e-06, -3.127842464368472699e-06, -3.130087249006139419e-06, -3.132326631783217272e-06, -3.134560609779712639e-06, -3.136789180084826865e-06, -3.139012339796913912e-06, -3.141230086023811121e-06, -3.143442415882423322e-06, -3.145649326498519544e-06, -3.147850815007748610e-06, -3.150046878554565518e-06, -3.152237514292663009e-06, -3.154422719385299792e-06, -3.156602491004636042e-06, -3.158776826332215792e-06, -3.160945722558821660e-06, -3.163109176884465538e-06, -3.165267186518339883e-06, -3.167419748679311962e-06, -3.169566860594756218e-06, -3.171708519502076389e-06, -3.173844722647502716e-06, -3.175975467286561631e-06, -3.178100750684349342e-06, -3.180220570115039708e-06, -3.182334922861771588e-06, -3.184443806217611911e-06, -3.186547217484469361e-06, -3.188645153973568289e-06, -3.190737613005837929e-06, -3.192824591910776097e-06, -3.194906088027915410e-06, -3.196982098705669201e-06, -3.199052621301766049e-06, -3.201117653183639413e-06, -3.203177191727449307e-06, -3.205231234318938654e-06, -3.207279778353425238e-06, -3.209322821235216824e-06, -3.211360360377931344e-06, -3.213392393204944124e-06, -3.215418917148353233e-06, -3.217439929649872685e-06, -3.219455428160774837e-06, -3.221465410141381320e-06, -3.223469873061419644e-06, -3.225468814400005832e-06, -3.227462231645480097e-06, -3.229450122295819344e-06, -3.231432483858107776e-06, -3.233409313848716468e-06, -3.235380609793837415e-06, -3.237346369228391289e-06, -3.239306589696984582e-06, -3.241261268753765191e-06, -3.243210403961983227e-06, -3.245153992894339996e-06, -3.247092033132916420e-06, -3.249024522269083684e-06, -3.250951457903887355e-06, -3.252872837647462513e-06, -3.254788659119415760e-06, -3.256698919948762963e-06, -3.258603617773900031e-06, -3.260502750242529226e-06, -3.262396315012011526e-06, -3.264284309748879582e-06, -3.266166732129101566e-06, -3.268043579838090072e-06, -3.269914850570643662e-06, -3.271780542030894779e-06, -3.273640651932648559e-06, -3.275495177998861905e-06, -3.277344117961990349e-06, -3.279187469563924097e-06, -3.281025230555875378e-06, -3.282857398698751559e-06, -3.284683971762616857e-06, -3.286504947527047669e-06, -3.288320323781077093e-06, -3.290130098323139866e-06, -3.291934268961051617e-06, -3.293732833512301091e-06, -3.295525789803578775e-06, -3.297313135671080137e-06, -3.299094868960482754e-06, -3.300870987526862881e-06, -3.302641489234693758e-06, -3.304406371958177221e-06, -3.306165633580657555e-06, -3.307919271995077200e-06, -3.309667285103790402e-06, -3.311409670818564909e-06, -3.313146427060856830e-06, -3.314877551761440061e-06, -3.316603042860278805e-06, -3.318322898307346231e-06, -3.320037116061712640e-06, -3.321745694091956702e-06, -3.323448630376355616e-06, -3.325145922902424743e-06, -3.326837569667248801e-06, -3.328523568677378523e-06, -3.330203917948779415e-06, -3.331878615507154472e-06, -3.333547659387508806e-06, -3.335211047634109410e-06, -3.336868778301183961e-06, -3.338520849452157221e-06, -3.340167259159914461e-06, -3.341808005507194065e-06, -3.343443086585733717e-06, -3.345072500497003085e-06, -3.346696245352161897e-06, -3.348314319271609737e-06, -3.349926720385248207e-06, -3.351533446832835406e-06, -3.353134496763044032e-06, -3.354729868334649345e-06, -3.356319559715608442e-06, -3.357903569083380012e-06, -3.359481894625275432e-06, -3.361054534537628249e-06, -3.362621487026548889e-06, -3.364182750307807765e-06, -3.365738322606504934e-06, -3.367288202157196306e-06, -3.368832387204344264e-06, -3.370370876001332566e-06, -3.371903666811674214e-06, -3.373430757908054728e-06, -3.374952147572808607e-06, -3.376467834097767279e-06, -3.377977815784341271e-06, -3.379482090943372399e-06, -3.380980657895461565e-06, -3.382473514970541437e-06, -3.383960660508074225e-06, -3.385442092857389226e-06, -3.386917810376852310e-06, -3.388387811434679067e-06, -3.389852094408715429e-06, -3.391310657686171702e-06, -3.392763499663855073e-06, -3.394210618748141238e-06, -3.395652013354871910e-06, -3.397087681909672032e-06, -3.398517622847491110e-06, -3.399941834612930589e-06, -3.401360315660128235e-06, -3.402773064452777617e-06, -3.404180079464066272e-06, -3.405581359176968780e-06, -3.406976902083794022e-06, -3.408366706686483763e-06, -3.409750771496549547e-06, -3.411129095035082012e-06, -3.412501675832643742e-06, -3.413868512429583517e-06, -3.415229603375611101e-06, -3.416584947230080576e-06, -3.417934542561898859e-06, -3.419278387949511309e-06, -3.420616481981108396e-06, -3.421948823254263599e-06, -3.423275410376190054e-06, -3.424596241963678724e-06, -3.425911316643092890e-06, -3.427220633050319448e-06, -3.428524189830994643e-06, -3.429821985640188551e-06, -3.431114019142563048e-06, -3.432400289012393832e-06, -3.433680793933519608e-06, -3.434955532599315819e-06, -3.436224503712916580e-06, -3.437487705986865691e-06, -3.438745138143347882e-06, -3.439996798914141380e-06, -3.441242687040527273e-06, -3.442482801273603337e-06, -3.443717140373889320e-06, -3.444945703111321011e-06, -3.446168488265816907e-06, -3.447385494626594655e-06, -3.448596720992515372e-06, -3.449802166172198420e-06, -3.451001828983638965e-06, -3.452195708254542987e-06, -3.453383802822170570e-06, -3.454566111533311344e-06, -3.455742633244564851e-06, -3.456913366821990296e-06, -3.458078311141064199e-06, -3.459237465087203432e-06, -3.460390827555202794e-06, -3.461538397449454814e-06, -3.462680173684175484e-06, -3.463816155182815576e-06, -3.464946340878652713e-06, -3.466070729714627468e-06, -3.467189320643128223e-06, -3.468302112626141511e-06, -3.469409104635486649e-06, -3.470510295652174530e-06, -3.471605684667228826e-06, -3.472695270681043085e-06, -3.473779052703611552e-06, -3.474857029754776498e-06, -3.475929200863608198e-06, -3.476995565068971589e-06, -3.478056121419458512e-06, -3.479110868973067534e-06, -3.480159806797425444e-06, -3.481202933969976566e-06, -3.482240249577394920e-06, -3.483271752716304620e-06, -3.484297442492781399e-06, -3.485317318022499990e-06, -3.486331378430763350e-06, -3.487339622852494189e-06, -3.488342050432137561e-06, -3.489338660323936150e-06, -3.490329451691561387e-06, -3.491314423708288789e-06, -3.492293575557213098e-06, -3.493266906430707034e-06, -3.494234415530949418e-06, -3.495196102069774397e-06, -3.496151965268519407e-06, -3.497102004358115800e-06, -3.498046218579163812e-06, -3.498984607181788138e-06, -3.499917169425861554e-06, -3.500843904580733439e-06, -3.501764811925388173e-06, -3.502679890748444711e-06, -3.503589140348101953e-06, -3.504492560032112903e-06, -3.505390149118006177e-06, -3.506281906932742524e-06, -3.507167832812950725e-06, -3.508047926104864072e-06, -3.508922186164301302e-06, -3.509790612356666602e-06, -3.510653204057100803e-06, -3.511509960650182797e-06, -3.512360881530176033e-06, -3.513205966100922204e-06, -3.514045213775822196e-06, -3.514878623978022006e-06, -3.515706196140155675e-06, -3.516527929704451582e-06, -3.517343824122778614e-06, -3.518153878856596611e-06, -3.518958093376914862e-06, -3.519756467164486501e-06, -3.520548999709517126e-06, -3.521335690511861309e-06, -3.522116539080976437e-06, -3.522891544935873156e-06, -3.523660707605289015e-06, -3.524424026627421229e-06, -3.525181501550107940e-06, -3.525933131930801538e-06, -3.526678917336500475e-06, -3.527418857343826343e-06, -3.528152951539070464e-06, -3.528881199518043537e-06, -3.529603600886023975e-06, -3.530320155258143723e-06, -3.531030862258935945e-06, -3.531735721522553982e-06, -3.532434732692836151e-06, -3.533127895423113465e-06, -3.533815209376327798e-06, -3.534496674225000542e-06, -3.535172289651228797e-06, -3.535842055346791249e-06, -3.536505971012993165e-06, -3.537164036360563476e-06, -3.537816251110114717e-06, -3.538462614991635231e-06, -3.539103127744707278e-06, -3.539737789118676024e-06, -3.540366598872144700e-06, -3.540989556773611578e-06, -3.541606662600957093e-06, -3.542217916141744956e-06, -3.542823317193013369e-06, -3.543422865561538446e-06, -3.544016561063436533e-06, -3.544604403524632620e-06, -3.545186392780487642e-06, -3.545762528675920453e-06, -3.546332811065586130e-06, -3.546897239813477016e-06, -3.547455814793273816e-06, -3.548008535888284191e-06, -3.548555402991283085e-06, -3.549096416004596165e-06, -3.549631574840289977e-06, -3.550160879419672195e-06, -3.550684329673964166e-06, -3.551201925543732555e-06, -3.551713666979118036e-06, -3.552219553939953038e-06, -3.552719586395447912e-06, -3.553213764324433187e-06, -3.553702087715384981e-06, -3.554184556566247120e-06, -3.554661170884479848e-06, -3.555131930687233040e-06, -3.555596836001026875e-06, -3.556055886862017377e-06, -3.556509083315970160e-06, -3.556956425418102455e-06, -3.557397913233185601e-06, -3.557833546835581044e-06, -3.558263326309116669e-06, -3.558687251747269763e-06, -3.559105323252959064e-06, -3.559517540938672664e-06, -3.559923904926427778e-06, -3.560324415347787680e-06, -3.560719072343806649e-06, -3.561107876065160413e-06, -3.561490826671976313e-06, -3.561867924333926485e-06, -3.562239169230191855e-06, -3.562604561549488821e-06, -3.562964101490107799e-06, -3.563317789259791663e-06, -3.563665625075838247e-06, -3.564007609165046975e-06, -3.564343741763739192e-06, -3.564674023117723860e-06, -3.564998453482398353e-06, -3.565317033122593874e-06, -3.565629762312673712e-06, -3.565936641336531549e-06, -3.566237670487538514e-06, -3.566532850068569028e-06, -3.566822180392033403e-06, -3.567105661779813478e-06, -3.567383294563295647e-06, -3.567655079083349685e-06, -3.567921015690359664e-06, -3.568181104744212095e-06, -3.568435346614271366e-06, -3.568683741679380161e-06, -3.568926290327875136e-06, -3.569162992957583949e-06, -3.569393849975797732e-06, -3.569618861799333354e-06, -3.569838028854465651e-06, -3.570051351576929969e-06, -3.570258830411950119e-06, -3.570460465814217624e-06, -3.570656258247892561e-06, -3.570846208186663706e-06, -3.571030316113552446e-06, -3.571208582521199495e-06, -3.571381007911627304e-06, -3.571547592796301050e-06, -3.571708337696216297e-06, -3.571863243141785925e-06, -3.572012309672818526e-06, -3.572155537838695009e-06, -3.572292928198158119e-06, -3.572424481319422119e-06, -3.572550197780194396e-06, -3.572670078167521300e-06, -3.572784123077999474e-06, -3.572892333117593749e-06, -3.572994708901760804e-06, -3.573091251055303483e-06, -3.573181960212598216e-06, -3.573266837017299412e-06, -3.573345882122592292e-06, -3.573419096191060757e-06, -3.573486479894688230e-06, -3.573548033914920341e-06, -3.573603758942562856e-06, -3.573653655677886290e-06, -3.573697724830583125e-06, -3.573735967119715725e-06, -3.573768383273771388e-06, -3.573794974030677593e-06, -3.573815740137686808e-06, -3.573830682351540384e-06, -3.573839801438306779e-06, -3.573843098173503523e-06, -3.573840573342043438e-06, -3.573832227738161366e-06, -3.573818062165543768e-06, -3.573798077437263923e-06, -3.573772274375755246e-06, -3.573740653812812139e-06, -3.573703216589686548e-06, -3.573659963556906704e-06, -3.573610895574431698e-06, -3.573556013511598128e-06, -3.573495318247081549e-06, -3.573428810668907915e-06, -3.573356491674512870e-06, -3.573278362170668900e-06, -3.573194423073496347e-06, -3.573104675308479928e-06, -3.573009119810453059e-06, -3.572907757523597015e-06, -3.572800589401438384e-06, -3.572687616406853303e-06, -3.572568839512021297e-06, -3.572444259698530307e-06, -3.572313877957236512e-06, -3.572177695288364696e-06, -3.572035712701438795e-06, -3.571887931215328060e-06, -3.571734351858227152e-06, -3.571574975667633268e-06, -3.571409803690384688e-06, -3.571238836982605290e-06, -3.571062076609754524e-06, -3.570879523646571087e-06, -3.570691179177138566e-06, -3.570497044294799468e-06, -3.570297120102211542e-06, -3.570091407711337617e-06, -3.569879908243435441e-06, -3.569662622829027183e-06, -3.569439552607951103e-06, -3.569210698729295487e-06, -3.568976062351461745e-06, -3.568735644642099619e-06, -3.568489446778144025e-06, -3.568237469945828182e-06, -3.567979715340596371e-06, -3.567716184167215741e-06, -3.567446877639653910e-06, -3.567171796981190779e-06, -3.566890943424327473e-06, -3.566604318210818528e-06, -3.566311922591689254e-06, -3.566013757827185341e-06, -3.565709825186808853e-06, -3.565400125949287738e-06, -3.565084661402591919e-06, -3.564763432843913816e-06, -3.564436441579683165e-06, -3.564103688925549655e-06, -3.563765176206401990e-06, -3.563420904756299697e-06, -3.563070875918563761e-06, -3.562715091045716488e-06, -3.562353551499459055e-06, -3.561986258650735887e-06, -3.561613213879653764e-06, -3.561234418575549159e-06, -3.560849874136936149e-06, -3.560459581971511919e-06, -3.560063543496176242e-06, -3.559661760137003951e-06, -3.559254233329236897e-06, -3.558840964517300881e-06, -3.558421955154817944e-06, -3.557997206704536482e-06, -3.557566720638396469e-06, -3.557130498437509977e-06, -3.556688541592089174e-06, -3.556240851601571689e-06, -3.555787429974516002e-06, -3.555328278228581112e-06, -3.554863397890649365e-06, -3.554392790496706588e-06, -3.553916457591835322e-06, -3.553434400730325356e-06, -3.552946621475515753e-06, -3.552453121399940968e-06, -3.551953902085186427e-06, -3.551448965121995249e-06, -3.550938312110243267e-06, -3.550421944658873798e-06, -3.549899864385937460e-06, -3.549372072918592591e-06, -3.548838571893117532e-06, -3.548299362954841175e-06, -3.547754447758225963e-06, -3.547203827966775995e-06, -3.546647505253117916e-06, -3.546085481298909010e-06, -3.545517757794926144e-06, -3.544944336440995035e-06, -3.544365218946012702e-06, -3.543780407027897910e-06, -3.543189902413684771e-06, -3.542593706839431684e-06, -3.541991822050254795e-06, -3.541384249800296236e-06, -3.540770991852771128e-06, -3.540152049979893897e-06, -3.539527425962935021e-06, -3.538897121592184606e-06, -3.538261138666966791e-06, -3.537619478995645673e-06, -3.536972144395525358e-06, -3.536319136693004122e-06, -3.535660457723435071e-06, -3.534996109331220167e-06, -3.534326093369699686e-06, -3.533650411701304260e-06, -3.532969066197342699e-06, -3.532282058738176902e-06, -3.531589391213130372e-06, -3.530891065520523802e-06, -3.530187083567624665e-06, -3.529477447270707363e-06, -3.528762158554959623e-06, -3.528041219354561275e-06, -3.527314631612638935e-06, -3.526582397281288449e-06, -3.525844518321566003e-06, -3.525100996703376735e-06, -3.524351834405674213e-06, -3.523597033416282982e-06, -3.522836595731991733e-06, -3.522070523358511807e-06, -3.521298818310456435e-06, -3.520521482611338199e-06, -3.519738518293606304e-06, -3.518949927398632176e-06, -3.518155711976652710e-06, -3.517355874086868106e-06, -3.516550415797266529e-06, -3.515739339184790553e-06, -3.514922646335318527e-06, -3.514100339343489237e-06, -3.513272420312900539e-06, -3.512438891356019566e-06, -3.511599754594086178e-06, -3.510755012157305649e-06, -3.509904666184764820e-06, -3.509048718824269467e-06, -3.508187172232559865e-06, -3.507320028575250235e-06, -3.506447290026637305e-06, -3.505568958770087834e-06, -3.504685036997575283e-06, -3.503795526910027097e-06, -3.502900430717167581e-06, -3.501999750637464117e-06, -3.501093488898239390e-06, -3.500181647735721792e-06, -3.499264229394742602e-06, -3.498341236129066759e-06, -3.497412670201233613e-06, -3.496478533882458676e-06, -3.495538829452939817e-06, -3.494593559201431635e-06, -3.493642725425592313e-06, -3.492686330431805748e-06, -3.491724376535245070e-06, -3.490756866059739241e-06, -3.489783801338042408e-06, -3.488805184711465871e-06, -3.487821018530177079e-06, -3.486831305153079783e-06, -3.485836046947669608e-06, -3.484835246290376687e-06, -3.483828905566236582e-06, -3.482817027168958896e-06, -3.481799613501027647e-06, -3.480776666973619527e-06, -3.479748190006612376e-06, -3.478714185028607201e-06, -3.477674654476773597e-06, -3.476629600797090298e-06, -3.475579026444191024e-06, -3.474522933881349228e-06, -3.473461325580528924e-06, -3.472394204022380447e-06, -3.471321571696123141e-06, -3.470243431099711801e-06, -3.469159784739724018e-06, -3.468070635131395330e-06, -3.466975984798582375e-06, -3.465875836273794658e-06, -3.464770192098084857e-06, -3.463659054821217808e-06, -3.462542427001545144e-06, -3.461420311206026893e-06, -3.460292710010292040e-06, -3.459159625998394588e-06, -3.458021061763150667e-06, -3.456877019905892904e-06, -3.455727503036566131e-06, -3.454572513773678260e-06, -3.453412054744338399e-06, -3.452246128584121328e-06, -3.451074737937280102e-06, -3.449897885456571140e-06, -3.448715573803323680e-06, -3.447527805647378374e-06, -3.446334583667192737e-06, -3.445135910549606100e-06, -3.443931788990123788e-06, -3.442722221692729924e-06, -3.441507211369926398e-06, -3.440286760742768859e-06, -3.439060872540691807e-06, -3.437829549501705951e-06, -3.436592794372478676e-06, -3.435350609907853353e-06, -3.434102998871368993e-06, -3.432849964035042137e-06, -3.431591508179210575e-06, -3.430327634092826426e-06, -3.429058344573258349e-06, -3.427783642426318230e-06, -3.426503530466312421e-06, -3.425218011515860482e-06, -3.423927088406126841e-06, -3.422630763976817405e-06, -3.421329041075811950e-06, -3.420021922559563496e-06, -3.418709411292984381e-06, -3.417391510149220526e-06, -3.416068222009901311e-06, -3.414739549765268746e-06, -3.413405496313592175e-06, -3.412066064561742135e-06, -3.410721257424991308e-06, -3.409371077826755751e-06, -3.408015528699187817e-06, -3.406654612982446440e-06, -3.405288333625252785e-06, -3.403916693584668751e-06, -3.402539695825956364e-06, -3.401157343322807744e-06, -3.399769639057401434e-06, -3.398376586019949239e-06, -3.396978187209170561e-06, -3.395574445632094196e-06, -3.394165364303882152e-06, -3.392750946248336594e-06, -3.391331194497179869e-06, -3.389906112090662678e-06, -3.388475702077248973e-06, -3.387039967513733701e-06, -3.385598911464972174e-06, -3.384152537004461558e-06, -3.382700847213577694e-06, -3.381243845182175650e-06, -3.379781534008349157e-06, -3.378313916798200642e-06, -3.376840996666434155e-06, -3.375362776735764557e-06, -3.373879260137054321e-06, -3.372390450009556625e-06, -3.370896349500646850e-06, -3.369396961765921677e-06, -3.367892289969226194e-06, -3.366382337282433666e-06, -3.364867106885758517e-06, -3.363346601967591580e-06, -3.361820825724304853e-06, -3.360289781360726691e-06, -3.358753472089718284e-06, -3.357211901132127919e-06, -3.355665071717178076e-06, -3.354112987082143553e-06, -3.352555650472417957e-06, -3.350993065141555212e-06, -3.349425234351273793e-06, -3.347852161371238614e-06, -3.346273849479375278e-06, -3.344690301961675258e-06, -3.343101522112221311e-06, -3.341507513233234909e-06, -3.339908278634841190e-06, -3.338303821635433601e-06, -3.336694145561407512e-06, -3.335079253747211881e-06, -3.333459149535368739e-06, -3.331833836276496054e-06, -3.330203317329078193e-06, -3.328567596059813200e-06, -3.326926675843356145e-06, -3.325280560062435171e-06, -3.323629252107796010e-06, -3.321972755378049097e-06, -3.320311073279963486e-06, -3.318644209228277118e-06, -3.316972166645687079e-06, -3.315294948962881788e-06, -3.313612559618606639e-06, -3.311925002059365429e-06, -3.310232279739753655e-06, -3.308534396122538144e-06, -3.306831354678020083e-06, -3.305123158884719414e-06, -3.303409812229083467e-06, -3.301691318205307376e-06, -3.299967680315688574e-06, -3.298238902070381145e-06, -3.296504986987439874e-06, -3.294765938592923160e-06, -3.293021760420528368e-06, -3.291272456012012805e-06, -3.289518028917210240e-06, -3.287758482693438821e-06, -3.285993820906117299e-06, -3.284224047128568510e-06, -3.282449164941722495e-06, -3.280669177934592530e-06, -3.278884089703966382e-06, -3.277093903854419017e-06, -3.275298623998427369e-06, -3.273498253756295383e-06, -3.271692796755873217e-06, -3.269882256633325085e-06, -3.268066637032109845e-06, -3.266245941603756464e-06, -3.264420174007587033e-06, -3.262589337910468169e-06, -3.260753436987211231e-06, -3.258912474920581220e-06, -3.257066455400680558e-06, -3.255215382125642387e-06, -3.253359258801337920e-06, -3.251498089141093529e-06, -3.249631876866458581e-06, -3.247760625706215259e-06, -3.245884339397139618e-06, -3.244003021683696234e-06, -3.242116676317790439e-06, -3.240225307059422664e-06, -3.238328917676092119e-06, -3.236427511942794258e-06, -3.234521093642465890e-06, -3.232609666565646795e-06, -3.230693234510281087e-06, -3.228771801282382145e-06, -3.226845370695398597e-06, -3.224913946570250755e-06, -3.222977532735724896e-06, -3.221036133028118368e-06, -3.219089751291400938e-06, -3.217138391377166944e-06, -3.215182057144398966e-06, -3.213220752459915065e-06, -3.211254481198092222e-06, -3.209283247240580890e-06, -3.207307054477069866e-06, -3.205325906804588333e-06, -3.203339808127533391e-06, -3.201348762358105432e-06, -3.199352773415957888e-06, -3.197351845228275164e-06, -3.195345981729845477e-06, -3.193335186862731790e-06, -3.191319464576744449e-06, -3.189298818829134563e-06, -3.187273253584612214e-06, -3.185242772815404899e-06, -3.183207380501301156e-06, -3.181167080629281680e-06, -3.179121877194069894e-06, -3.177071774197740619e-06, -3.175016775649845436e-06, -3.172956885567361019e-06, -3.170892107974778493e-06, -3.168822446903761233e-06, -3.166747906393651394e-06, -3.164668490491119659e-06, -3.162584203250227496e-06, -3.160495048732531769e-06, -3.158401031006720088e-06, -3.156302154149104631e-06, -3.154198422243296881e-06, -3.152089839380260568e-06, -3.149976409658331996e-06, -3.147858137183274680e-06, -3.145735026067933325e-06, -3.143607080432757304e-06, -3.141474304405427107e-06, -3.139336702120933117e-06, -3.137194277721599332e-06, -3.135047035357124863e-06, -3.132894979184237501e-06, -3.130738113367233277e-06, -3.128576442077583015e-06, -3.126409969494041596e-06, -3.124238699802715305e-06, -3.122062637196684044e-06, -3.119881785876493043e-06, -3.117696150050152432e-06, -3.115505733932382114e-06, -3.113310541745504111e-06, -3.111110577719041073e-06, -3.108905846089463014e-06, -3.106696351100704850e-06, -3.104482097003798360e-06, -3.102263088056977225e-06, -3.100039328525652456e-06, -3.097810822682469997e-06, -3.095577574806915585e-06, -3.093339589186227845e-06, -3.091096870114178149e-06, -3.088849421892014201e-06, -3.086597248828155111e-06, -3.084340355237829289e-06, -3.082078745443567836e-06, -3.079812423775306617e-06, -3.077541394569504921e-06, -3.075265662170092443e-06, -3.072985230928073299e-06, -3.070700105201151212e-06, -3.068410289354755690e-06, -3.066115787760728283e-06, -3.063816604798297938e-06, -3.061512744853785809e-06, -3.059204212320135576e-06, -3.056891011597883301e-06, -3.054573147094324790e-06, -3.052250623223524915e-06, -3.049923444406895287e-06, -3.047591615072781753e-06, -3.045255139656184448e-06, -3.042914022599614153e-06, -3.040568268352285065e-06, -3.038217881370168585e-06, -3.035862866116482484e-06, -3.033503227061279239e-06, -3.031138968681555728e-06, -3.028770095461328616e-06, -3.026396611891253609e-06, -3.024018522469178148e-06, -3.021635831699844947e-06, -3.019248544094507012e-06, -3.016856664171892418e-06, -3.014460196457310684e-06, -3.012059145482735361e-06, -3.009653515787301665e-06, -3.007243311916907945e-06, -3.004828538424279635e-06, -3.002409199869087841e-06, -2.999985300817524128e-06, -2.997556845842897679e-06, -2.995123839525227870e-06, -2.992686286451350578e-06, -2.990244191214886412e-06, -2.987797558416317371e-06, -2.985346392662642950e-06, -2.982890698567901910e-06, -2.980430480752792387e-06, -2.977965743844779039e-06, -2.975496492478054929e-06, -2.973022731293665618e-06, -2.970544464939062776e-06, -2.968061698068717436e-06, -2.965574435343726122e-06, -2.963082681431858284e-06, -2.960586441007709188e-06, -2.958085718752204822e-06, -2.955580519353312983e-06, -2.953070847505514730e-06, -2.950556707909965316e-06, -2.948038105274486143e-06, -2.945515044313605845e-06, -2.942987529748196909e-06, -2.940455566306070714e-06, -2.937919158721525219e-06, -2.935378311735491075e-06, -2.932833030095486306e-06, -2.930283318555715841e-06, -2.927729181876651379e-06, -2.925170624825644645e-06, -2.922607652176527168e-06, -2.920040268709651357e-06, -2.917468479212057795e-06, -2.914892288476975911e-06, -2.912311701304388105e-06, -2.909726722501102167e-06, -2.907137356879814884e-06, -2.904543609260133986e-06, -2.901945484468169025e-06, -2.899342987336198074e-06, -2.896736122703280972e-06, -2.894124895414849367e-06, -2.891509310322781672e-06, -2.888889372285511911e-06, -2.886265086167605783e-06, -2.883636456840261250e-06, -2.881003489181424167e-06, -2.878366188074818845e-06, -2.875724558410987786e-06, -2.873078605086876216e-06, -2.870428333005384850e-06, -2.867773747076437997e-06, -2.865114852216018795e-06, -2.862451653346221726e-06, -2.859784155395854852e-06, -2.857112363300050186e-06, -2.854436281999829582e-06, -2.851755916443319809e-06, -2.849071271584182569e-06, -2.846382352382838467e-06, -2.843689163806000292e-06, -2.840991710826216888e-06, -2.838289998422991663e-06, -2.835584031581786481e-06, -2.832873815294063161e-06, -2.830159354557880216e-06, -2.827440654377560392e-06, -2.824717719763195997e-06, -2.821990555731888964e-06, -2.819259167306192726e-06, -2.816523559515283246e-06, -2.813783737394456299e-06, -2.811039705985166861e-06, -2.808291470335076964e-06, -2.805539035498123461e-06, -2.802782406534034369e-06, -2.800021588509092045e-06, -2.797256586495689768e-06, -2.794487405571875606e-06, -2.791714050822549701e-06, -2.788936527338369902e-06, -2.786154840215866537e-06, -2.783368994558010349e-06, -2.780578995473754251e-06, -2.777784848078146406e-06, -2.774986557492381046e-06, -2.772184128843407571e-06, -2.769377567264542526e-06, -2.766566877895173989e-06, -2.763752065880232597e-06, -2.760933136371387136e-06, -2.758110094525986591e-06, -2.755282945507118178e-06, -2.752451694484232018e-06, -2.749616346632665538e-06, -2.746776907133702337e-06, -2.743933381174630628e-06, -2.741085773948787289e-06, -2.738234090655111470e-06, -2.735378336498850604e-06, -2.732518516691068271e-06, -2.729654636448726368e-06, -2.726786700994842229e-06, -2.723914715557961773e-06, -2.721038685372898115e-06, -2.718158615680222925e-06, -2.715274511726384585e-06, -2.712386378763703958e-06, -2.709494222050470948e-06, -2.706598046850461693e-06, -2.703697858433657690e-06, -2.700793662075748173e-06, -2.697885463058231324e-06, -2.694973266668560815e-06, -2.692057078199606671e-06, -2.689136902950393456e-06, -2.686212746225621280e-06, -2.683284613335747537e-06, -2.680352509597002147e-06, -2.677416440331482432e-06, -2.674476410866666487e-06, -2.671532426536020508e-06, -2.668584492679093234e-06, -2.665632614640413534e-06, -2.662676797770708018e-06, -2.659717047426401287e-06, -2.656753368969235613e-06, -2.653785767766993038e-06, -2.650814249193021033e-06, -2.647838818626300263e-06, -2.644859481451612296e-06, -2.641876243058967860e-06, -2.638889108844283618e-06, -2.635898084209467724e-06, -2.632903174561278863e-06, -2.629904385312579863e-06, -2.626901721881842607e-06, -2.623895189692592373e-06, -2.620884794174827045e-06, -2.617870540763209960e-06, -2.614852434898464980e-06, -2.611830482026747564e-06, -2.608804687599852292e-06, -2.605775057074608932e-06, -2.602741595914234305e-06, -2.599704309586575960e-06, -2.596663203565462346e-06, -2.593618283330235672e-06, -2.590569554365182280e-06, -2.587517022160820556e-06, -2.584460692212757436e-06, -2.581400570021780311e-06, -2.578336661094493992e-06, -2.575268970942944632e-06, -2.572197505084050516e-06, -2.569122269041080983e-06, -2.566043268341762035e-06, -2.562960508519749328e-06, -2.559873995113936994e-06, -2.556783733668587237e-06, -2.553689729733326095e-06, -2.550591988863250594e-06, -2.547490516618401042e-06, -2.544385318564571221e-06, -2.541276400272821761e-06, -2.538163767319051124e-06, -2.535047425285214054e-06, -2.531927379758158607e-06, -2.528803636329768449e-06, -2.525676200597587543e-06, -2.522545078164266190e-06, -2.519410274637733403e-06, -2.516271795631280757e-06, -2.513129646763035117e-06, -2.509983833656732399e-06, -2.506834361941200881e-06, -2.503681237250453955e-06, -2.500524465223717228e-06, -2.497364051505503064e-06, -2.494200001745114221e-06, -2.491032321597420584e-06, -2.487861016722295035e-06, -2.484686092784749829e-06, -2.481507555454944641e-06, -2.478325410408284820e-06, -2.475139663324879291e-06, -2.471950319890344384e-06, -2.468757385795279951e-06, -2.465560866735323147e-06, -2.462360768411345789e-06, -2.459157096528872873e-06, -2.455949856798876662e-06, -2.452739054937243903e-06, -2.449524696664896109e-06, -2.446306787707759063e-06, -2.443085333796934766e-06, -2.439860340668091573e-06, -2.436631814062313346e-06, -2.433399759725523892e-06, -2.430164183408603430e-06, -2.426925090867567743e-06, -2.423682487862924004e-06, -2.420436380160585996e-06, -2.417186773531215973e-06, -2.413933673750422857e-06, -2.410677086598708882e-06, -2.407417017861626715e-06, -2.404153473329206015e-06, -2.400886458796623015e-06, -2.397615980064346209e-06, -2.394342042936884013e-06, -2.391064653224128163e-06, -2.387783816740822199e-06, -2.384499539306122279e-06, -2.381211826744419649e-06, -2.377920684884773976e-06, -2.374626119561039981e-06, -2.371328136612022022e-06, -2.368026741880862113e-06, -2.364721941215758206e-06, -2.361413740470081509e-06, -2.358102145501116522e-06, -2.354787162171451016e-06, -2.351468796348387350e-06, -2.348147053903398248e-06, -2.344821940713645109e-06, -2.341493462659981546e-06, -2.338161625628537767e-06, -2.334826435509976450e-06, -2.331487898199747283e-06, -2.328146019597405096e-06, -2.324800805608139184e-06, -2.321452262140799294e-06, -2.318100395109392335e-06, -2.314745210432569919e-06, -2.311386714033006642e-06, -2.308024911838821404e-06, -2.304659809782312788e-06, -2.301291413800036144e-06, -2.297919729833564219e-06, -2.294544763829003081e-06, -2.291166521736452135e-06, -2.287785009511520312e-06, -2.284400233113353753e-06, -2.281012198506179102e-06, -2.277620911658712700e-06, -2.274226378543615098e-06, -2.270828605138857322e-06, -2.267427597426475306e-06, -2.264023361392662222e-06, -2.260615903028498626e-06, -2.257205228329496744e-06, -2.253791343295033819e-06, -2.250374253929750554e-06, -2.246953966242303436e-06, -2.243530486245407510e-06, -2.240103819956624543e-06, -2.236673973397750620e-06, -2.233240952594934307e-06, -2.229804763578838852e-06, -2.226365412384030210e-06, -2.222922905049849906e-06, -2.219477247619814492e-06, -2.216028446141751916e-06, -2.212576506667801949e-06, -2.209121435254535613e-06, -2.205663237962365226e-06, -2.202201920856434208e-06, -2.198737490005965714e-06, -2.195269951484477353e-06, -2.191799311369848110e-06, -2.188325575743737277e-06, -2.184848750692487390e-06, -2.181368842306497428e-06, -2.177885856680350712e-06, -2.174399799912832267e-06, -2.170910678107054615e-06, -2.167418497369849593e-06, -2.163923263812636999e-06, -2.160424983550857067e-06, -2.156923662704070849e-06, -2.153419307395962753e-06, -2.149911923754485810e-06, -2.146401517911259009e-06, -2.142888096002417295e-06, -2.139371664168051257e-06, -2.135852228552319361e-06, -2.132329795303579236e-06, -2.128804370573798569e-06, -2.125275960519443635e-06, -2.121744571300829208e-06, -2.118210209082337509e-06, -2.114672880032319536e-06, -2.111132590323291145e-06, -2.107589346131294393e-06, -2.104043153636804282e-06, -2.100494019024119744e-06, -2.096941948481473334e-06, -2.093386948201070613e-06, -2.089829024379183748e-06, -2.086268183215402311e-06, -2.082704430914296850e-06, -2.079137773683269122e-06, -2.075568217734227098e-06, -2.071995769282963244e-06, -2.068420434548660696e-06, -2.064842219754701335e-06, -2.061261131128745404e-06, -2.057677174901386845e-06, -2.054090357307654665e-06, -2.050500684586397141e-06, -2.046908162979647820e-06, -2.043312798734310262e-06, -2.039714598100017593e-06, -2.036113567330765580e-06, -2.032509712684326489e-06, -2.028903040421756954e-06, -2.025293556808162004e-06, -2.021681268112847528e-06, -2.018066180607900648e-06, -2.014448300569753764e-06, -2.010827634278526410e-06, -2.007204188017403958e-06, -2.003577968074184296e-06, -1.999948980739864980e-06, -1.996317232308779180e-06, -1.992682729079386389e-06, -1.989045477353768860e-06, -1.985405483437017505e-06, -1.981762753638917918e-06, -1.978117294271766721e-06, -1.974469111652084690e-06, -1.970818212099962422e-06, -1.967164601938428446e-06, -1.963508287495018354e-06, -1.959849275100350938e-06, -1.956187571088257364e-06, -1.952523181796569756e-06, -1.948856113566633308e-06, -1.945186372742667620e-06, -1.941513965673484482e-06, -1.937838898710285585e-06, -1.934161178208359982e-06, -1.930480810526314125e-06, -1.926797802026202318e-06, -1.923112159073502147e-06, -1.919423888037297018e-06, -1.915732995289601492e-06, -1.912039487206316321e-06, -1.908343370166566908e-06, -1.904644650552887330e-06, -1.900943334751165491e-06, -1.897239429150821635e-06, -1.893532940144140880e-06, -1.889823874127232490e-06, -1.886112237499378076e-06, -1.882398036663173902e-06, -1.878681278024693726e-06, -1.874961967992815620e-06, -1.871240112980194364e-06, -1.867515719402595890e-06, -1.863788793679043819e-06, -1.860059342231835131e-06, -1.856327371486652820e-06, -1.852592887871927866e-06, -1.848855897819812901e-06, -1.845116407765496322e-06, -1.841374424147360053e-06, -1.837629953406988862e-06, -1.833883001989292754e-06, -1.830133576341873184e-06, -1.826381682915955423e-06, -1.822627328165779758e-06, -1.818870518548682804e-06, -1.815111260525311381e-06, -1.811349560558924136e-06, -1.807585425116370709e-06, -1.803818860667424278e-06, -1.800049873684942490e-06, -1.796278470644837604e-06, -1.792504658026265803e-06, -1.788728442310921195e-06, -1.784949829984018153e-06, -1.781168827533637626e-06, -1.777385441450875997e-06, -1.773599678229832381e-06, -1.769811544367742881e-06, -1.766021046364191785e-06, -1.762228190722866199e-06, -1.758432983949263125e-06, -1.754635432552476916e-06, -1.750835543044552985e-06, -1.747033321939944650e-06, -1.743228775756367576e-06, -1.739421911014932335e-06, -1.735612734238637113e-06, -1.731801251954034458e-06, -1.727987470690534807e-06, -1.724171396979751094e-06, -1.720353037357302083e-06, -1.716532398360483454e-06, -1.712709486530067954e-06, -1.708884308409659541e-06, -1.705056870545160382e-06, -1.701227179485585915e-06, -1.697395241783238066e-06, -1.693561063992196895e-06, -1.689724652669956851e-06, -1.685886014376758042e-06, -1.682045155674923851e-06, -1.678202083130484491e-06, -1.674356803311700411e-06, -1.670509322789191261e-06, -1.666659648136771697e-06, -1.662807785930938930e-06, -1.658953742750186625e-06, -1.655097525176834499e-06, -1.651239139794693466e-06, -1.647378593190870461e-06, -1.643515891955093135e-06, -1.639651042679033719e-06, -1.635784051957981695e-06, -1.631914926389310883e-06, -1.628043672572634657e-06, -1.624170297110645568e-06, -1.620294806608425648e-06, -1.616417207673603743e-06, -1.612537506916511584e-06, -1.608655710949504673e-06, -1.604771826387945691e-06, -1.600885859849541486e-06, -1.596997817954499977e-06, -1.593107707325488659e-06, -1.589215534587824333e-06, -1.585321306368775365e-06, -1.581425029298557369e-06, -1.577526710009660247e-06, -1.573626355136995988e-06, -1.569723971317882580e-06, -1.565819565192221672e-06, -1.561913143401792786e-06, -1.558004712591261920e-06, -1.554094279407490159e-06, -1.550181850499708373e-06, -1.546267432519649357e-06, -1.542351032120879730e-06, -1.538432655959801344e-06, -1.534512310694950573e-06, -1.530590002987176405e-06, -1.526665739499606555e-06, -1.522739526897827677e-06, -1.518811371849171100e-06, -1.514881281023754680e-06, -1.510949261093750539e-06, -1.507015318733584545e-06, -1.503079460619896917e-06, -1.499141693431703381e-06, -1.495202023849719869e-06, -1.491260458557359056e-06, -1.487317004240038752e-06, -1.483371667585344116e-06, -1.479424455283197905e-06, -1.475475374025137743e-06, -1.471524430505360940e-06, -1.467571631420011708e-06, -1.463616983467341893e-06, -1.459660493347703978e-06, -1.455702167763717110e-06, -1.451742013419555799e-06, -1.447780037021976521e-06, -1.443816245279627815e-06, -1.439850644903182628e-06, -1.435883242605541602e-06, -1.431914045101088324e-06, -1.427943059106576590e-06, -1.423970291341265083e-06, -1.419995748525376624e-06, -1.416019437381792020e-06, -1.412041364635360375e-06, -1.408061537012359733e-06, -1.404079961241361695e-06, -1.400096644053391504e-06, -1.396111592180345150e-06, -1.392124812356737653e-06, -1.388136311318961479e-06, -1.384146095804611035e-06, -1.380154172554375362e-06, -1.376160548309578987e-06, -1.372165229814103207e-06, -1.368168223813667169e-06, -1.364169537055295932e-06, -1.360169176288189525e-06, -1.356167148263869693e-06, -1.352163459734610135e-06, -1.348158117455167840e-06, -1.344151128182071364e-06, -1.340142498672915469e-06, -1.336132235688264822e-06, -1.332120345989209678e-06, -1.328106836339257510e-06, -1.324091713503459086e-06, -1.320074984248753633e-06, -1.316056655343069291e-06, -1.312036733557239519e-06, -1.308015225662544803e-06, -1.303992138432638163e-06, -1.299967478642807821e-06, -1.295941253069289189e-06, -1.291913468490987955e-06, -1.287884131687905015e-06, -1.283853249441289797e-06, -1.279820828534517991e-06, -1.275786875752360138e-06, -1.271751397881172426e-06, -1.267714401709031789e-06, -1.263675894025044308e-06, -1.259635881620371810e-06, -1.255594371287538366e-06, -1.251551369820564964e-06, -1.247506884014985606e-06, -1.243460920668004428e-06, -1.239413486577769377e-06, -1.235364588544431630e-06, -1.231314233369413338e-06, -1.227262427855597359e-06, -1.223209178807285756e-06, -1.219154493030395672e-06, -1.215098377331711824e-06, -1.211040838519958844e-06, -1.206981883405077917e-06, -1.202921518798372468e-06, -1.198859751512709334e-06, -1.194796588361761303e-06, -1.190732036161091951e-06, -1.186666101727405176e-06, -1.182598791878747631e-06, -1.178530113434454731e-06, -1.174460073215352035e-06, -1.170388678043013877e-06, -1.166315934740818137e-06, -1.162241850133249556e-06, -1.158166431046019801e-06, -1.154089684306110029e-06, -1.150011616741892228e-06, -1.145932235182427444e-06, -1.141851546458522883e-06, -1.137769557402001556e-06, -1.133686274845875284e-06, -1.129601705624504999e-06, -1.125515856572881614e-06, -1.121428734527501855e-06, -1.117340346326549739e-06, -1.113250698808251422e-06, -1.109159798812673448e-06, -1.105067653180988803e-06, -1.100974268754924641e-06, -1.096879652377835266e-06, -1.092783810893965004e-06, -1.088686751148620993e-06, -1.084588479988334124e-06, -1.080489004260144778e-06, -1.076388330812468705e-06, -1.072286466495288242e-06, -1.068183418158502719e-06, -1.064079192653723952e-06, -1.059973796833557329e-06, -1.055867237551026458e-06, -1.051759521660657163e-06, -1.047650656017747337e-06, -1.043540647478523432e-06, -1.039429502900146391e-06, -1.035317229140865380e-06, -1.031203833059116550e-06, -1.027089321515485398e-06, -1.022973701370171807e-06, -1.018856979484971896e-06, -1.014739162722536650e-06, -1.010620257945825165e-06, -1.006500272018980473e-06, -1.002379211807531781e-06, -9.982570841767154286e-07, -9.941338959933038538e-07, -9.900096541248542689e-07, -9.858843654389778850e-07, -9.817580368053211213e-07, -9.776306750930213304e-07, -9.735022871726729733e-07, -9.693728799154445876e-07, -9.652424601933824488e-07, -9.611110348785341029e-07, -9.569786108449062830e-07, -9.528451949659295284e-07, -9.487107941164345234e-07, -9.445754151719127442e-07, -9.404390650077919277e-07, -9.363017505012251110e-07, -9.321634785294508815e-07, -9.280242559699686069e-07, -9.238840897014263374e-07, -9.197429866028893930e-07, -9.156009535540110402e-07, -9.114579974351937464e-07, -9.073141251268674013e-07, -9.031693435105528735e-07, -8.990236594683122854e-07, -8.948770798820081772e-07, -8.907296116351163693e-07, -8.865812616110706482e-07, -8.824320366934314318e-07, -8.782819437668007765e-07, -8.741309897160597305e-07, -8.699791814265571159e-07, -8.658265257840900468e-07, -8.616730296750767244e-07, -8.575186999858123182e-07, -8.533635436035571919e-07, -8.492075674158013608e-07, -8.450507783104169583e-07, -8.408931831758462765e-07, -8.367347889003550012e-07, -8.325756023731181083e-07, -8.284156304834642040e-07, -8.242548801210752132e-07, -8.200933581759493219e-07, -8.159310715385872182e-07, -8.117680270992343158e-07, -8.076042317489878257e-07, -8.034396923790376033e-07, -7.992744158808385193e-07, -7.951084091462959604e-07, -7.909416790669996871e-07, -7.867742325353386358e-07, -7.826060764437323421e-07, -7.784372176848168641e-07, -7.742676631514281599e-07, -7.700974197367810228e-07, -7.659264943337060112e-07, -7.617548938355821370e-07, -7.575826251364897554e-07, -7.534096951295518628e-07, -7.492361107087600878e-07, -7.450618787682307845e-07, -7.408870062016377324e-07, -7.367114999033044912e-07, -7.325353667674663172e-07, -7.283586136884265472e-07, -7.241812475607474982e-07, -7.200032752784902554e-07, -7.158247037361231153e-07, -7.116455398287089914e-07, -7.074657904502178070e-07, -7.032854624953713331e-07, -6.991045628588848821e-07, -6.949230984349163127e-07, -6.907410761181453619e-07, -6.865585028030336558e-07, -6.823753853840001510e-07, -6.781917307553997473e-07, -6.740075458117068822e-07, -6.698228374465790297e-07, -6.656376125548678744e-07, -6.614518780300398846e-07, -6.572656407661753096e-07, -6.530789076572395200e-07, -6.488916855964962254e-07, -6.447039814774417519e-07, -6.405158021939595196e-07, -6.363271546386585876e-07, -6.321380457047056803e-07, -6.279484822850730220e-07, -6.237584712717899837e-07, -6.195680195579678090e-07, -6.153771340351909648e-07, -6.111858215955536201e-07, -6.069940891308939279e-07, -6.028019435320535072e-07, -5.986093916907159277e-07, -5.944164404977234436e-07, -5.902230968432537060e-07, -5.860293676177366756e-07, -5.818352597112872171e-07, -5.776407800129508162e-07, -5.734459354125424878e-07, -5.692507327989819331e-07, -5.650551790604454760e-07, -5.608592810853019286e-07, -5.566630457613452853e-07, -5.524664799759784230e-07, -5.482695906163854724e-07, -5.440723845687718175e-07, -5.398748687194798501e-07, -5.356770499544046225e-07, -5.314789351582520587e-07, -5.272805312163797688e-07, -5.230818450131146296e-07, -5.188828834319301320e-07, -5.146836533563613889e-07, -5.104841616692487341e-07, -5.062844152529199409e-07, -5.020844209893563459e-07, -4.978841857594414251e-07, -4.936837164440690308e-07, -4.894830199233793678e-07, -4.852821030769461873e-07, -4.810809727837527529e-07, -4.768796359223763877e-07, -4.726780993702284738e-07, -4.684763700046608363e-07, -4.642744547022089724e-07, -4.600723603387709870e-07, -4.558700937895899637e-07, -4.516676619294361830e-07, -4.474650716318436808e-07, -4.432623297702262674e-07, -4.390594432171103269e-07, -4.348564188443186771e-07, -4.306532635231392341e-07, -4.264499841235739066e-07, -4.222465875154437614e-07, -4.180430805676289708e-07, -4.138394701482517713e-07, -4.096357631246581466e-07, -4.054319663635937460e-07, -4.012280867304514010e-07, -3.970241310903763980e-07, -3.928201063075084363e-07, -3.886160192451578642e-07, -3.844118767657983202e-07, -3.802076857312322750e-07, -3.760034530018453250e-07, -3.717991854377065409e-07, -3.675948898978148734e-07, -3.633905732402733239e-07, -3.591862423224635393e-07, -3.549819040002905764e-07, -3.507775651291053737e-07, -3.465732325638756402e-07, -3.423689131574987245e-07, -3.381646137626600053e-07, -3.339603412310673854e-07, -3.297561024128854203e-07, -3.255519041578438733e-07, -3.213477533144814203e-07, -3.171436567303166978e-07, -3.129396212518415796e-07, -3.087356537246925421e-07, -3.045317609927121517e-07, -3.003279498999854382e-07, -2.961242272882200745e-07, -2.919205999987858201e-07, -2.877170748719590211e-07, -2.835136587463483745e-07, -2.793103584598195705e-07, -2.751071808496728520e-07, -2.709041327509478367e-07, -2.667012209982812722e-07, -2.624984524251484655e-07, -2.582958338631086287e-07, -2.540933721438444292e-07, -2.498910740965357109e-07, -2.456889465499069844e-07, -2.414869963314659448e-07, -2.372852302667469117e-07, -2.330836551811669971e-07, -2.288822778983346326e-07, -2.246811052402251967e-07, -2.204801440281040693e-07, -2.162794010819545928e-07, -2.120788832197198719e-07, -2.078785972591623815e-07, -2.036785500161674659e-07, -1.994787483049230943e-07, -1.952791989388413278e-07, -1.910799087297999857e-07, -1.868808844883178231e-07, -1.826821330237329635e-07, -1.784836611434416545e-07, -1.742854756540103425e-07, -1.700875833606027344e-07, -1.658899910662249060e-07, -1.616927055735772071e-07, -1.574957336833659661e-07, -1.532990821944791698e-07, -1.491027579049076914e-07, -1.449067676109891016e-07, -1.407111181075817073e-07, -1.365158161882429054e-07, -1.323208686444683879e-07, -1.281262822668041114e-07, -1.239320638440872755e-07, -1.197382201636221888e-07, -1.155447580111696140e-07, -1.113516841711229779e-07, -1.071590054257502370e-07, -1.029667285563031329e-07, -9.877486034225968095e-08, -9.458340756150045818e-08, -9.039237699029703652e-08, -8.620177540348786109e-08, -8.201160957372158506e-08, -7.782188627256508140e-08, -7.363261226974726750e-08, -6.944379433333354096e-08, -6.525543922990212127e-08, -6.106755372378738472e-08, -5.688014457818805480e-08, -5.269321855440971649e-08, -4.850678241204149546e-08, -4.432084290894449075e-08, -4.013540680142816277e-08, -3.595048084349231822e-08, -3.176607178793682254e-08, -2.758218638560388919e-08, -2.339883138555392833e-08, -1.921601353505512108e-08, -1.503373957975859315e-08, -1.085201626294221465e-08, -6.670850326618458770e-09, -2.490248510777675030e-09, 1.689782446435952419e-09, 5.869235808548907697e-09, 1.004810484151482881e-08, 1.422638281279287499e-08, 1.840406299117234252e-08, 2.258113864846107765e-08, 2.675760305763183681e-08, 3.093344949357897986e-08, 3.510867123368808320e-08, 3.928326155672875191e-08, 4.345721374361004079e-08, 4.763052107720580343e-08, 5.180317684217841671e-08, 5.597517432573486364e-08, 6.014650681670557832e-08, 6.431716760537003003e-08, 6.848714998514247095e-08, 7.265644725072024935e-08, 7.682505269884019680e-08, 8.099295962903447268e-08, 8.516016134177726939e-08, 8.932665114017302838e-08, 9.349242232978021758e-08, 9.765746821769105661e-08, 1.018217821131010141e-07, 1.059853573280633551e-07, 1.101481871754534036e-07, 1.143102649715838885e-07, 1.184715840341683463e-07, 1.226321376830770974e-07, 1.267919192410904968e-07, 1.309509220320512510e-07, 1.351091393825476575e-07, 1.392665646217379119e-07, 1.434231910804325327e-07, 1.475790120916612118e-07, 1.517340209914275211e-07, 1.558882111166752387e-07, 1.600415758078996461e-07, 1.641941084071165550e-07, 1.683458022587976694e-07, 1.724966507097007033e-07, 1.766466471088752560e-07, 1.807957848074898862e-07, 1.849440571595850967e-07, 1.890914575209696250e-07, 1.932379792497881926e-07, 1.973836157072749417e-07, 2.015283602559055795e-07, 2.056722062610826294e-07, 2.098151470909558871e-07, 2.139571761155070685e-07, 2.180982867073028755e-07, 2.222384722413183362e-07, 2.263777260947662340e-07, 2.305160416478410141e-07, 2.346534122826260317e-07, 2.387898313836550554e-07, 2.429252923386629234e-07, 2.470597885367474827e-07, 2.511933133700435635e-07, 2.553258602335508737e-07, 2.594574225242159201e-07, 2.635879936416847037e-07, 2.677175669881292896e-07, 2.718461359682558536e-07, 2.759736939891288170e-07, 2.801002344609260827e-07, 2.842257507958364097e-07, 2.883502364088081902e-07, 2.924736847173787199e-07, 2.965960891414979090e-07, 3.007174431042776944e-07, 3.048377400308926973e-07, 3.089569733493311705e-07, 3.130751364902213038e-07, 3.171922228868399591e-07, 3.213082259749370166e-07, 3.254231391934921993e-07, 3.295369559836041360e-07, 3.336496697892518969e-07, 3.377612740571142049e-07, 3.418717622363954764e-07, 3.459811277795768749e-07, 3.500893641413161737e-07, 3.541964647792008743e-07, 3.583024231535691119e-07, 3.624072327275225194e-07, 3.665108869667500451e-07, 3.706133793402795879e-07, 3.747147033195617730e-07, 3.788148523783013389e-07, 3.829138199941191750e-07, 3.870115996467277070e-07, 3.911081848186732681e-07, 3.952035689958966230e-07, 3.992977456666444776e-07, 4.033907083222132274e-07, 4.074824504567737797e-07, 4.115729655672012476e-07, 4.156622471538161036e-07, 4.197502887194777486e-07, 4.238370837694157932e-07, 4.279226258128830961e-07, 4.320069083613366011e-07, 4.360899249291819859e-07, 4.401716690345151859e-07, 4.442521341971153496e-07, 4.483313139410284483e-07, 4.524092017925472081e-07, 4.564857912811511050e-07, 4.605610759391398109e-07, 4.646350493025711242e-07, 4.687077049092427549e-07, 4.727790363012781044e-07, 4.768490370231144033e-07, 4.809177006222492123e-07, 4.849850206499781349e-07, 4.890509906595827492e-07, 4.931156042079798869e-07, 4.971788548555511682e-07, 5.012407361652429230e-07, 5.053012417031157036e-07, 5.093603650390958150e-07, 5.134180997449667878e-07, 5.174744393969437230e-07, 5.215293775736661416e-07, 5.255829078571331093e-07, 5.296350238325156181e-07, 5.336857190881805155e-07, 5.377349872155140038e-07, 5.417828218096526296e-07, 5.458292164684114693e-07, 5.498741647928318420e-07, 5.539176603879281807e-07, 5.579596968608681820e-07, 5.620002678226294968e-07, 5.660393668878199474e-07, 5.700769876737846489e-07, 5.741131238013414457e-07, 5.781477688946058931e-07, 5.821809165808213214e-07, 5.862125604910966020e-07, 5.902426942593277677e-07, 5.942713115229277325e-07, 5.982984059226671546e-07, 6.023239711026661783e-07, 6.063480007102416503e-07, 6.103704883966283679e-07, 6.143914278159086416e-07, 6.184108126257462490e-07, 6.224286364872118401e-07, 6.264448930647967015e-07, 6.304595760262422910e-07, 6.344726790432661451e-07, 6.384841957904984290e-07, 6.424941199462020203e-07, 6.465024451921140082e-07, 6.505091652132637930e-07, 6.545142736987124403e-07, 6.585177643404818191e-07, 6.625196308342764860e-07, 6.665198668793193607e-07, 6.705184661783637963e-07, 6.745154224375159139e-07, 6.785107293669710981e-07, 6.825043806799398531e-07, 6.864963700933819684e-07, 6.904866913278340420e-07, 6.944753381072328741e-07, 6.984623041596587379e-07, 7.024475832162480018e-07, 7.064311690119416943e-07, 7.104130552853022276e-07, 7.143932357785205968e-07, 7.183717042372668792e-07, 7.223484544113898833e-07, 7.263234800540485163e-07, 7.302967749215405779e-07, 7.342683327749180520e-07, 7.382381473782107724e-07, 7.422062124991472485e-07, 7.461725219097151888e-07, 7.501370693850799460e-07, 7.540998487043159299e-07, 7.580608536502419650e-07, 7.620200780092515671e-07, 7.659775155720301675e-07, 7.699331601326723995e-07, 7.738870054885314320e-07, 7.778390454418060977e-07, 7.817892737977868995e-07, 7.857376843655720712e-07, 7.896842709587922138e-07, 7.936290273936523792e-07, 7.975719474914511460e-07, 8.015130250766106327e-07, 8.054522539776013518e-07, 8.093896280265699387e-07, 8.133251410602544769e-07, 8.172587869180317691e-07, 8.211905594444203199e-07, 8.251204524871304657e-07, 8.290484598977801179e-07, 8.329745755326347514e-07, 8.368987932508156130e-07, 8.408211069159182951e-07, 8.447415103958540227e-07, 8.486599975619501051e-07, 8.525765622895160709e-07, 8.564911984585428939e-07, 8.604038999517716521e-07, 8.643146606571898399e-07, 8.682234744660733451e-07, 8.721303352737220974e-07, 8.760352369801679761e-07, 8.799381734884262164e-07, 8.838391387060738551e-07, 8.877381265451097591e-07, 8.916351309210615340e-07, 8.955301457535321790e-07, 8.994231649669120173e-07, 9.033141824886304207e-07, 9.072031922507413490e-07, 9.110901881897703548e-07, 9.149751642458257283e-07, 9.188581143633330868e-07, 9.227390324908490270e-07, 9.266179125809035774e-07, 9.304947485907218701e-07, 9.343695344811542321e-07, 9.382422642174142692e-07, 9.421129317688974945e-07, 9.459815311091935048e-07, 9.498480562159259973e-07, 9.537125010714573948e-07, 9.575748596618392665e-07, 9.614351259775381288e-07, 9.652932940132619100e-07, 9.691493577677925547e-07, 9.730033112446901209e-07, 9.768551484512773983e-07, 9.807048633993107589e-07, 9.845524501048427258e-07, 9.883979025882262085e-07, 9.922412148739342964e-07, 9.960823809912868014e-07, 9.999213949734079840e-07, 1.003758250857916461e-06, 1.007592942686789047e-06, 1.011425464506340846e-06, 1.015255810367083163e-06, 1.019083974324411720e-06, 1.022909950437588943e-06, 1.026733732770424556e-06, 1.030555315391135817e-06, 1.034374692372176633e-06, 1.038191857790929158e-06, 1.042006805728675924e-06, 1.045819530271317484e-06, 1.049630025509186704e-06, 1.053438285537074172e-06, 1.057244304454053075e-06, 1.061048076364191766e-06, 1.064849595375512969e-06, 1.068648855600702961e-06, 1.072445851156941317e-06, 1.076240576165913193e-06, 1.080033024753650716e-06, 1.083823191051396114e-06, 1.087611069193711349e-06, 1.091396653320919265e-06, 1.095179937577194164e-06, 1.098960916111266330e-06, 1.102739583076968358e-06, 1.106515932632345775e-06, 1.110289958939524688e-06, 1.114061656166252116e-06, 1.117831018484200440e-06, 1.121598040069649053e-06, 1.125362715104178503e-06, 1.129125037772815917e-06, 1.132885002266411347e-06, 1.136642602779783621e-06, 1.140397833512415118e-06, 1.144150688668954692e-06, 1.147901162458397537e-06, 1.151649249093901379e-06, 1.155394942794341415e-06, 1.159138237782612226e-06, 1.162879128286317473e-06, 1.166617608538463403e-06, 1.170353672775759704e-06, 1.174087315240165341e-06, 1.177818530178724437e-06, 1.181547311842719460e-06, 1.185273654488199766e-06, 1.188997552376666003e-06, 1.192718999773205368e-06, 1.196437990948884900e-06, 1.200154520178894783e-06, 1.203868581743223640e-06, 1.207580169927359883e-06, 1.211289279020586204e-06, 1.214995903317539180e-06, 1.218700037118028220e-06, 1.222401674726206740e-06, 1.226100810451078900e-06, 1.229797438607202647e-06, 1.233491553512818613e-06, 1.237183149492241715e-06, 1.240872220874000014e-06, 1.244558761991684285e-06, 1.248242767183809529e-06, 1.251924230793789563e-06, 1.255603147169819916e-06, 1.259279510665519246e-06, 1.262953315638945511e-06, 1.266624556453288417e-06, 1.270293227476690483e-06, 1.273959323082256150e-06, 1.277622837647916885e-06, 1.281283765557079800e-06, 1.284942101197653777e-06, 1.288597838962712267e-06, 1.292250973250339347e-06, 1.295901498463476191e-06, 1.299549409010594675e-06, 1.303194699304695549e-06, 1.306837363763996651e-06, 1.310477396811775356e-06, 1.314114792876360958e-06, 1.317749546390997236e-06, 1.321381651794496574e-06, 1.325011103530263333e-06, 1.328637896046967456e-06, 1.332262023798376754e-06, 1.335883481243379985e-06, 1.339502262845818299e-06, 1.343118363075153968e-06, 1.346731776405494180e-06, 1.350342497316253421e-06, 1.353950520292012231e-06, 1.357555839822332760e-06, 1.361158450402449953e-06, 1.364758346532291950e-06, 1.368355522717122142e-06, 1.371949973467412323e-06, 1.375541693298836554e-06, 1.379130676732108317e-06, 1.382716918293664285e-06, 1.386300412514665879e-06, 1.389881153931691087e-06, 1.393459137086551499e-06, 1.397034356526312851e-06, 1.400606806803141500e-06, 1.404176482475124776e-06, 1.407743378104489670e-06, 1.411307488259879022e-06, 1.414868807514589909e-06, 1.418427330447220140e-06, 1.421983051642163770e-06, 1.425535965688803665e-06, 1.429086067181364333e-06, 1.432633350720381101e-06, 1.436177810911084397e-06, 1.439719442364045832e-06, 1.443258239695860051e-06, 1.446794197527342680e-06, 1.450327310485817309e-06, 1.453857573203351336e-06, 1.457384980317393149e-06, 1.460909526471278224e-06, 1.464431206313431438e-06, 1.467950014497204221e-06, 1.471465945682339502e-06, 1.474978994533361711e-06, 1.478489155720242972e-06, 1.481996423919039010e-06, 1.485500793810293554e-06, 1.489002260080508362e-06, 1.492500817421955395e-06, 1.495996460531927399e-06, 1.499489184113187259e-06, 1.502978982874639063e-06, 1.506465851529568387e-06, 1.509949784797887992e-06, 1.513430777404388491e-06, 1.516908824079389292e-06, 1.520383919559384888e-06, 1.523856058585453697e-06, 1.527325235904689135e-06, 1.530791446270079965e-06, 1.534254684439683594e-06, 1.537714945177301798e-06, 1.541172223252313426e-06, 1.544626513439520458e-06, 1.548077810519807205e-06, 1.551526109279185491e-06, 1.554971404509430143e-06, 1.558413691007938378e-06, 1.561852963577727478e-06, 1.565289217027310487e-06, 1.568722446171291039e-06, 1.572152645829478420e-06, 1.575579810827467998e-06, 1.579003935996542334e-06, 1.582425016173647672e-06, 1.585843046201253337e-06, 1.589258020927990393e-06, 1.592669935207709111e-06, 1.596078783900137746e-06, 1.599484561870702119e-06, 1.602887263990382473e-06, 1.606286885136373518e-06, 1.609683420191123684e-06, 1.613076864042982259e-06, 1.616467211586044589e-06, 1.619854457720160551e-06, 1.623238597350807286e-06, 1.626619625389675978e-06, 1.629997536753781204e-06, 1.633372326366083710e-06, 1.636743989155330961e-06, 1.640112520056075139e-06, 1.643477914008517922e-06, 1.646840165959158257e-06, 1.650199270859840925e-06, 1.653555223668397538e-06, 1.656908019348497669e-06, 1.660257652869509944e-06, 1.663604119207118462e-06, 1.666947413342401019e-06, 1.670287530262454638e-06, 1.673624464960271903e-06, 1.676958212434704537e-06, 1.680288767690351804e-06, 1.683616125738183506e-06, 1.686940281594590027e-06, 1.690261230282046206e-06, 1.693578966828934722e-06, 1.696893486269431747e-06, 1.700204783644084413e-06, 1.703512853999091890e-06, 1.706817692386133441e-06, 1.710119293863771952e-06, 1.713417653495907889e-06, 1.716712766352432356e-06, 1.720004627509652312e-06, 1.723293232049572702e-06, 1.726578575059724729e-06, 1.729860651634554559e-06, 1.733139456873902902e-06, 1.736414985883627576e-06, 1.739687233776219726e-06, 1.742956195669128393e-06, 1.746221866686910284e-06, 1.749484241959550737e-06, 1.752743316623083969e-06, 1.755999085820056606e-06, 1.759251544698781028e-06, 1.762500688413186927e-06, 1.765746512124178887e-06, 1.768989010998154923e-06, 1.772228180207604914e-06, 1.775464014931706060e-06, 1.778696510354704210e-06, 1.781925661668010051e-06, 1.785151464068540832e-06, 1.788373912759503655e-06, 1.791593002950081865e-06, 1.794808729856215589e-06, 1.798021088698927574e-06, 1.801230074706447336e-06, 1.804435683112571936e-06, 1.807637909157270133e-06, 1.810836748087275512e-06, 1.814032195154610320e-06, 1.817224245617949190e-06, 1.820412894742445074e-06, 1.823598137799010112e-06, 1.826779970064922747e-06, 1.829958386823677156e-06, 1.833133383364839266e-06, 1.836304954984645384e-06, 1.839473096985141194e-06, 1.842637804674612472e-06, 1.845799073368176737e-06, 1.848956898386335252e-06, 1.852111275056296508e-06, 1.855262198711819738e-06, 1.858409664692524795e-06, 1.861553668344445056e-06, 1.864694205019918361e-06, 1.867831270077583842e-06, 1.870964858882224585e-06, 1.874094966805377703e-06, 1.877221589224481801e-06, 1.880344721523412509e-06, 1.883464359092401807e-06, 1.886580497327884706e-06, 1.889693131633051730e-06, 1.892802257417016492e-06, 1.895907870095410311e-06, 1.899009965090216620e-06, 1.902108537829791715e-06, 1.905203583748737700e-06, 1.908295098288456872e-06, 1.911383076896330736e-06, 1.914467515026272476e-06, 1.917548408138595035e-06, 1.920625751699885330e-06, 1.923699541183578963e-06, 1.926769772069105985e-06, 1.929836439842465614e-06, 1.932899539996103413e-06, 1.935959068028905780e-06, 1.939015019446061041e-06, 1.942067389759642206e-06, 1.945116174487916211e-06, 1.948161369155165198e-06, 1.951202969293023132e-06, 1.954240970439035420e-06, 1.957275368137229813e-06, 1.960306157938554743e-06, 1.963333335400045422e-06, 1.966356896085361284e-06, 1.969376835564708479e-06, 1.972393149414647598e-06, 1.975405833218707351e-06, 1.978414882566658232e-06, 1.981420293054388854e-06, 1.984422060285177345e-06, 1.987420179868297556e-06, 1.990414647419571751e-06, 1.993405458561818262e-06, 1.996392608923989208e-06, 1.999376094141778670e-06, 2.002355909857446080e-06, 2.005332051719846715e-06, 2.008304515384288125e-06, 2.011273296513241643e-06, 2.014238390774813488e-06, 2.017199793844686587e-06, 2.020157501404619638e-06, 2.023111509143001485e-06, 2.026061812755256432e-06, 2.029008407943181854e-06, 2.031951290414800824e-06, 2.034890455885606816e-06, 2.037825900077218204e-06, 2.040757618717894522e-06, 2.043685607543143788e-06, 2.046609862294157611e-06, 2.049530378719786898e-06, 2.052447152575012952e-06, 2.055360179621657720e-06, 2.058269455628091132e-06, 2.061174976369949393e-06, 2.064076737628613709e-06, 2.066974735193146603e-06, 2.069868964858776999e-06, 2.072759422427483401e-06, 2.075646103708488989e-06, 2.078529004516980052e-06, 2.081408120675275323e-06, 2.084283448012719246e-06, 2.087154982365018332e-06, 2.090022719574775210e-06, 2.092886655491347598e-06, 2.095746785970764020e-06, 2.098603106876205347e-06, 2.101455614077264913e-06, 2.104304303450310622e-06, 2.107149170879067706e-06, 2.109990212253235519e-06, 2.112827423469750466e-06, 2.115660800432617019e-06, 2.118490339052265240e-06, 2.121316035246094579e-06, 2.124137884938320138e-06, 2.126955884060031535e-06, 2.129770028548995975e-06, 2.132580314350246089e-06, 2.135386737415263813e-06, 2.138189293702540284e-06, 2.140987979177423370e-06, 2.143782789812003743e-06, 2.146573721585656138e-06, 2.149360770484236783e-06, 2.152143932500619152e-06, 2.154923203634590203e-06, 2.157698579892820304e-06, 2.160470057288773031e-06, 2.163237631843193899e-06, 2.166001299583375989e-06, 2.168761056543671133e-06, 2.171516898765339560e-06, 2.174268822296455459e-06, 2.177016823192422815e-06, 2.179760897515220711e-06, 2.182501041333868339e-06, 2.185237250724380117e-06, 2.187969521769711472e-06, 2.190697850559678799e-06, 2.193422233191430409e-06, 2.196142665768849374e-06, 2.198859144402424350e-06, 2.201571665210390958e-06, 2.204280224317470974e-06, 2.206984817855383088e-06, 2.209685441963249059e-06, 2.212382092786808091e-06, 2.215074766478936912e-06, 2.217763459199543891e-06, 2.220448167115436061e-06, 2.223128886400826484e-06, 2.225805613236712534e-06, 2.228478343810769593e-06, 2.231147074318464050e-06, 2.233811800961810286e-06, 2.236472519949896675e-06, 2.239129227499228635e-06, 2.241781919833020931e-06, 2.244430593181684301e-06, 2.247075243782703472e-06, 2.249715867880657502e-06, 2.252352461727080432e-06, 2.254985021581107154e-06, 2.257613543708092325e-06, 2.260238024381369226e-06, 2.262858459880891551e-06, 2.265474846493712820e-06, 2.268087180514394655e-06, 2.270695458244370659e-06, 2.273299675991828247e-06, 2.275899830072835208e-06, 2.278495916810109388e-06, 2.281087932533506153e-06, 2.283675873580530002e-06, 2.286259736294977193e-06, 2.288839517028673436e-06, 2.291415212140102118e-06, 2.293986817994930310e-06, 2.296554330966480995e-06, 2.299117747434531121e-06, 2.301677063786402581e-06, 2.304232276416853797e-06, 2.306783381727477896e-06, 2.309330376127068211e-06, 2.311873256032086687e-06, 2.314412017865509801e-06, 2.316946658057870831e-06, 2.319477173047159489e-06, 2.322003559278247630e-06, 2.324525813203345799e-06, 2.327043931281890583e-06, 2.329557909980457360e-06, 2.332067745773192291e-06, 2.334573435141163486e-06, 2.337074974572670181e-06, 2.339572360563752217e-06, 2.342065589617000392e-06, 2.344554658242627105e-06, 2.347039562958359630e-06, 2.349520300288826020e-06, 2.351996866766078995e-06, 2.354469258929434583e-06, 2.356937473325401814e-06, 2.359401506508110052e-06, 2.361861355038665671e-06, 2.364317015485586581e-06, 2.366768484424686613e-06, 2.369215758439101350e-06, 2.371658834119168697e-06, 2.374097708062911262e-06, 2.376532376875299022e-06, 2.378962837168768122e-06, 2.381389085563091708e-06, 2.383811118685390091e-06, 2.386228933169989290e-06, 2.388642525658936875e-06, 2.391051892801268439e-06, 2.393457031253501843e-06, 2.395857937679509307e-06, 2.398254608750440762e-06, 2.400647041145138890e-06, 2.403035231549478864e-06, 2.405419176656832100e-06, 2.407798873167971811e-06, 2.410174317791031501e-06, 2.412545507241446948e-06, 2.414912438242391997e-06, 2.417275107524092043e-06, 2.419633511824295406e-06, 2.421987647888157282e-06, 2.424337512468257114e-06, 2.426683102324479156e-06, 2.429024414224459283e-06, 2.431361444942932779e-06, 2.433694191262183682e-06, 2.436022649971919431e-06, 2.438346817869186579e-06, 2.440666691758814642e-06, 2.442982268452839693e-06, 2.445293544770438292e-06, 2.447600517538890986e-06, 2.449903183592523945e-06, 2.452201539773107908e-06, 2.454495582930212671e-06, 2.456785309920559955e-06, 2.459070717608463858e-06, 2.461351802865703803e-06, 2.463628562571455930e-06, 2.465900993612692469e-06, 2.468169092883685380e-06, 2.470432857285865322e-06, 2.472692283728816918e-06, 2.474947369129193702e-06, 2.477198110411169592e-06, 2.479444504506753560e-06, 2.481686548355242449e-06, 2.483924238903163800e-06, 2.486157573105184293e-06, 2.488386547923095849e-06, 2.490611160326200605e-06, 2.492831407291792458e-06, 2.495047285803935212e-06, 2.497258792854996137e-06, 2.499465925444473672e-06, 2.501668680579404851e-06, 2.503867055274818885e-06, 2.506061046552674987e-06, 2.508250651442789447e-06, 2.510435866982786929e-06, 2.512616690217535497e-06, 2.514793118199471881e-06, 2.516965147989053787e-06, 2.519132776653567278e-06, 2.521296001268639997e-06, 2.523454818917057017e-06, 2.525609226689297009e-06, 2.527759221683455590e-06, 2.529904801005220331e-06, 2.532045961767781823e-06, 2.534182701092262696e-06, 2.536315016107071333e-06, 2.538442903948227980e-06, 2.540566361759820449e-06, 2.542685386692900855e-06, 2.544799975906485964e-06, 2.546910126567413198e-06, 2.549015835849868413e-06, 2.551117100935761136e-06, 2.553213919014639012e-06, 2.555306287283606490e-06, 2.557394202947714038e-06, 2.559477663219366061e-06, 2.561556665318710541e-06, 2.563631206473582283e-06, 2.565701283919457177e-06, 2.567766894899379775e-06, 2.569828036664366480e-06, 2.571884706472816011e-06, 2.573936901590885062e-06, 2.575984619292426467e-06, 2.578027856858980309e-06, 2.580066611579664227e-06, 2.582100880751577875e-06, 2.584130661679229058e-06, 2.586155951674916588e-06, 2.588176748058646855e-06, 2.590193048158018629e-06, 2.592204849308634293e-06, 2.594212148853534452e-06, 2.596214944143542246e-06, 2.598213232537208724e-06, 2.600207011400814109e-06, 2.602196278108253450e-06, 2.604181030041432187e-06, 2.606161264589708379e-06, 2.608136979150279375e-06, 2.610108171128053065e-06, 2.612074837935688537e-06, 2.614036976993498671e-06, 2.615994585729819016e-06, 2.617947661580449602e-06, 2.619896201989033558e-06, 2.621840204406975379e-06, 2.623779666293354521e-06, 2.625714585115268036e-06, 2.627644958347407045e-06, 2.629570783471937313e-06, 2.631492057979371269e-06, 2.633408779367608738e-06, 2.635320945142316838e-06, 2.637228552817249310e-06, 2.639131599913651055e-06, 2.641030083960634639e-06, 2.642924002495100674e-06, 2.644813353061664969e-06, 2.646698133212998617e-06, 2.648578340509393892e-06, 2.650453972518666837e-06, 2.652325026816990320e-06, 2.654191500987953833e-06, 2.656053392622983190e-06, 2.657910699321583632e-06, 2.659763418690876917e-06, 2.661611548345548387e-06, 2.663455085908616915e-06, 2.665294029010614133e-06, 2.667128375289858873e-06, 2.668958122392855689e-06, 2.670783267973323743e-06, 2.672603809693441088e-06, 2.674419745222871432e-06, 2.676231072239103796e-06, 2.678037788427840882e-06, 2.679839891482082577e-06, 2.681637379102943770e-06, 2.683430248999572187e-06, 2.685218498888713014e-06, 2.687002126494935905e-06, 2.688781129551050875e-06, 2.690555505797090164e-06, 2.692325252981592764e-06, 2.694090368860583744e-06, 2.695850851198058332e-06, 2.697606697765878571e-06, 2.699357906343772901e-06, 2.701104474719283640e-06, 2.702846400688041425e-06, 2.704583682053371339e-06, 2.706316316626420391e-06, 2.708044302226589079e-06, 2.709767636680645817e-06, 2.711486317823514253e-06, 2.713200343498181789e-06, 2.714909711555255309e-06, 2.716614419853361832e-06, 2.718314466258996888e-06, 2.720009848646500378e-06, 2.721700564898331440e-06, 2.723386612904643657e-06, 2.725067990563490042e-06, 2.726744695781158885e-06, 2.728416726471353405e-06, 2.730084080555962968e-06, 2.731746755964949590e-06, 2.733404750635946014e-06, 2.735058062514586907e-06, 2.736706689554449986e-06, 2.738350629717020019e-06, 2.739989880971640971e-06, 2.741624441295851851e-06, 2.743254308674848845e-06, 2.744879481101871140e-06, 2.746499956578082340e-06, 2.748115733112529809e-06, 2.749726808722411062e-06, 2.751333181432662106e-06, 2.752934849276208162e-06, 2.754531810293981456e-06, 2.756124062534819148e-06, 2.757711604055450625e-06, 2.759294432920782111e-06, 2.760872547203471449e-06, 2.762445944984194072e-06, 2.764014624351587525e-06, 2.765578583402194286e-06, 2.767137820240732820e-06, 2.768692332979679141e-06, 2.770242119739538292e-06, 2.771787178648802833e-06, 2.773327507843916847e-06, 2.774863105469245024e-06, 2.776393969677376317e-06, 2.777920098628686456e-06, 2.779441490491323119e-06, 2.780958143441876365e-06, 2.782470055664619685e-06, 2.783977225351810705e-06, 2.785479650703924540e-06, 2.786977329929185810e-06, 2.788470261243933288e-06, 2.789958442872438208e-06, 2.791441873046948315e-06, 2.792920550007897505e-06, 2.794394472003586490e-06, 2.795863637290103180e-06, 2.797328044131951184e-06, 2.798787690801385728e-06, 2.800242575578652527e-06, 2.801692696752281276e-06, 2.803138052618328407e-06, 2.804578641481357102e-06, 2.806014461653658873e-06, 2.807445511455606771e-06, 2.808871789215523255e-06, 2.810293293270049491e-06, 2.811710021963327123e-06, 2.813121973648026570e-06, 2.814529146684555474e-06, 2.815931539441348808e-06, 2.817329150295160677e-06, 2.818721977630316817e-06, 2.820110019839432449e-06, 2.821493275323253888e-06, 2.822871742490378175e-06, 2.824245419757411892e-06, 2.825614305549298968e-06, 2.826978398298523619e-06, 2.828337696446073001e-06, 2.829692198440741373e-06, 2.831041902739338467e-06, 2.832386807806991031e-06, 2.833726912116464779e-06, 2.835062214148772987e-06, 2.836392712393114231e-06, 2.837718405346532309e-06, 2.839039291514110630e-06, 2.840355369409278419e-06, 2.841666637553092435e-06, 2.842973094474881133e-06, 2.844274738712121006e-06, 2.845571568810201949e-06, 2.846863583322598788e-06, 2.848150780810843750e-06, 2.849433159844506556e-06, 2.850710719001366796e-06, 2.851983456867085276e-06, 2.853251372035467873e-06, 2.854514463108352453e-06, 2.855772728695673669e-06, 2.857026167415365555e-06, 2.858274777893592762e-06, 2.859518558764440547e-06, 2.860757508670096461e-06, 2.861991626260836797e-06, 2.863220910194937225e-06, 2.864445359138940882e-06, 2.865664971767273816e-06, 2.866879746762495709e-06, 2.868089682815271925e-06, 2.869294778624313794e-06, 2.870495032896357859e-06, 2.871690444346409400e-06, 2.872881011697369315e-06, 2.874066733680283991e-06, 2.875247609034266112e-06, 2.876423636506543363e-06, 2.877594814852345346e-06, 2.878761142835170401e-06, 2.879922619226421800e-06, 2.881079242805665676e-06, 2.882231012360534875e-06, 2.883377926686695932e-06, 2.884519984588098515e-06, 2.885657184876601884e-06, 2.886789526372197664e-06, 2.887917007902987822e-06, 2.889039628305164333e-06, 2.890157386422946507e-06, 2.891270281108822811e-06, 2.892378311223226035e-06, 2.893481475634713707e-06, 2.894579773219960897e-06, 2.895673202863725488e-06, 2.896761763458821068e-06, 2.897845453906320643e-06, 2.898924273115219519e-06, 2.899998220002691529e-06, 2.901067293493989930e-06, 2.902131492522445283e-06, 2.903190816029608183e-06, 2.904245262965073918e-06, 2.905294832286324078e-06, 2.906339522959328370e-06, 2.907379333957894096e-06, 2.908414264263956686e-06, 2.909444312867786799e-06, 2.910469478767359705e-06, 2.911489760969140485e-06, 2.912505158487486874e-06, 2.913515670344930896e-06, 2.914521295572040803e-06, 2.915522033207696357e-06, 2.916517882298577221e-06, 2.917508841899755039e-06, 2.918494911074279235e-06, 2.919476088893247738e-06, 2.920452374436124623e-06, 2.921423766790136176e-06, 2.922390265050793085e-06, 2.923351868321831156e-06, 2.924308575714933055e-06, 2.925260386349896871e-06, 2.926207299354827122e-06, 2.927149313865607479e-06, 2.928086429026561021e-06, 2.929018643989947105e-06, 2.929945957916121877e-06, 2.930868369973772474e-06, 2.931785879339396523e-06, 2.932698485197734977e-06, 2.933606186741783973e-06, 2.934508983172451779e-06, 2.935406873698821383e-06, 2.936299857538231799e-06, 2.937187933915887168e-06, 2.938071102065236649e-06, 2.938949361227943925e-06, 2.939822710653633097e-06, 2.940691149600107639e-06, 2.941554677333280093e-06, 2.942413293127134804e-06, 2.943266996263901558e-06, 2.944115786033808250e-06, 2.944959661735237584e-06, 2.945798622674676676e-06, 2.946632668166732301e-06, 2.947461797534094042e-06, 2.948286010107701587e-06, 2.949105305226451649e-06, 2.949919682237430904e-06, 2.950729140495854579e-06, 2.951533679364951257e-06, 2.952333298216263995e-06, 2.953127996429267468e-06, 2.953917773391633086e-06, 2.954702628499129475e-06, 2.955482561155642798e-06, 2.956257570773135678e-06, 2.957027656771819992e-06, 2.957792818579873537e-06, 2.958553055633657298e-06, 2.959308367377625658e-06, 2.960058753264367904e-06, 2.960804212754518866e-06, 2.961544745316982958e-06, 2.962280350428637290e-06, 2.963011027574503194e-06, 2.963736776247744107e-06, 2.964457595949571548e-06, 2.965173486189431469e-06, 2.965884446484782328e-06, 2.966590476361205206e-06, 2.967291575352422443e-06, 2.967987743000251471e-06, 2.968678978854571782e-06, 2.969365282473515933e-06, 2.970046653423187909e-06, 2.970723091277846505e-06, 2.971394595619859160e-06, 2.972061166039720174e-06, 2.972722802135954565e-06, 2.973379503515382766e-06, 2.974031269792661115e-06, 2.974678100590796423e-06, 2.975319995540784292e-06, 2.975956954281689584e-06, 2.976588976460816673e-06, 2.977216061733498959e-06, 2.977838209763067528e-06, 2.978455420221161162e-06, 2.979067692787395580e-06, 2.979675027149463804e-06, 2.980277423003322088e-06, 2.980874880052771903e-06, 2.981467398009984255e-06, 2.982054976595053718e-06, 2.982637615536202993e-06, 2.983215314569833735e-06, 2.983788073440393562e-06, 2.984355891900331166e-06, 2.984918769710353386e-06, 2.985476706639191429e-06, 2.986029702463628396e-06, 2.986577756968683090e-06, 2.987120869947264426e-06, 2.987659041200486950e-06, 2.988192270537613242e-06, 2.988720557775892132e-06, 2.989243902740679826e-06, 2.989762305265541126e-06, 2.990275765191911464e-06, 2.990784282369524230e-06, 2.991287856656077891e-06, 2.991786487917354568e-06, 2.992280176027368277e-06, 2.992768920867981638e-06, 2.993252722329301019e-06, 2.993731580309517295e-06, 2.994205494714846979e-06, 2.994674465459558902e-06, 2.995138492466144466e-06, 2.995597575664955540e-06, 2.996051714994615694e-06, 2.996500910401741524e-06, 2.996945161841023965e-06, 2.997384469275235073e-06, 2.997818832675219975e-06, 2.998248252019876961e-06, 2.998672727296237534e-06, 2.999092258499346975e-06, 2.999506845632326599e-06, 2.999916488706380960e-06, 3.000321187740768197e-06, 3.000720942762786066e-06, 3.001115753807884165e-06, 3.001505620919482675e-06, 3.001890544149117196e-06, 3.002270523556334993e-06, 3.002645559208774611e-06, 3.003015651182173500e-06, 3.003380799560260868e-06, 3.003741004434831793e-06, 3.004096265905763317e-06, 3.004446584080955581e-06, 3.004791959076358076e-06, 3.005132391016040800e-06, 3.005467880032041368e-06, 3.005798426264472581e-06, 3.006124029861499984e-06, 3.006444690979332121e-06, 3.006760409782182001e-06, 3.007071186442392451e-06, 3.007377021140269259e-06, 3.007677914064201868e-06, 3.007973865410593079e-06, 3.008264875383862436e-06, 3.008550944196533892e-06, 3.008832072069104100e-06, 3.009108259230135584e-06, 3.009379505916188551e-06, 3.009645812371883577e-06, 3.009907178849831721e-06, 3.010163605610741252e-06, 3.010415092923279588e-06, 3.010661641064146134e-06, 3.010903250318080332e-06, 3.011139920977824393e-06, 3.011371653344167763e-06, 3.011598447725922561e-06, 3.011820304439815581e-06, 3.012037223810724617e-06, 3.012249206171462466e-06, 3.012456251862853587e-06, 3.012658361233777297e-06, 3.012855534641075873e-06, 3.013047772449573605e-06, 3.013235075032186064e-06, 3.013417442769748581e-06, 3.013594876051113231e-06, 3.013767375273205581e-06, 3.013934940840804889e-06, 3.014097573166816847e-06, 3.014255272672080034e-06, 3.014408039785410809e-06, 3.014555874943685896e-06, 3.014698778591697966e-06, 3.014836751182217892e-06, 3.014969793176070139e-06, 3.015097905042009939e-06, 3.015221087256769457e-06, 3.015339340305123438e-06, 3.015452664679713018e-06, 3.015561060881263420e-06, 3.015664529418408187e-06, 3.015763070807762031e-06, 3.015856685573906855e-06, 3.015945374249426061e-06, 3.016029137374809255e-06, 3.016107975498559820e-06, 3.016181889177121653e-06, 3.016250878974884241e-06, 3.016314945464239839e-06, 3.016374089225463614e-06, 3.016428310846822065e-06, 3.016477610924560320e-06, 3.016521990062833944e-06, 3.016561448873754262e-06, 3.016595987977378190e-06, 3.016625608001690450e-06, 3.016650309582653119e-06, 3.016670093364134481e-06, 3.016684959997928082e-06, 3.016694910143805673e-06, 3.016699944469440551e-06, 3.016700063650420689e-06, 3.016695268370300405e-06, 3.016685559320529211e-06, 3.016670937200486542e-06, 3.016651402717468201e-06, 3.016626956586700762e-06, 3.016597599531318700e-06, 3.016563332282381750e-06, 3.016524155578830446e-06, 3.016480070167542017e-06, 3.016431076803287617e-06, 3.016377176248740372e-06, 3.016318369274497397e-06, 3.016254656659031525e-06, 3.016186039188725600e-06, 3.016112517657836066e-06, 3.016034092868547170e-06, 3.015950765630900658e-06, 3.015862536762852108e-06, 3.015769407090207822e-06, 3.015671377446700212e-06, 3.015568448673911144e-06, 3.015460621621313867e-06, 3.015347897146239980e-06, 3.015230276113923473e-06, 3.015107759397434663e-06, 3.014980347877740331e-06, 3.014848042443643159e-06, 3.014710843991841450e-06, 3.014568753426885498e-06, 3.014421771661151760e-06, 3.014269899614911041e-06, 3.014113138216266235e-06, 3.013951488401183243e-06, 3.013784951113444385e-06, 3.013613527304723789e-06, 3.013437217934499719e-06, 3.013256023970110484e-06, 3.013069946386711234e-06, 3.012878986167307421e-06, 3.012683144302737435e-06, 3.012482421791646344e-06, 3.012276819640535023e-06, 3.012066338863709758e-06, 3.011850980483295792e-06, 3.011630745529243263e-06, 3.011405635039308561e-06, 3.011175650059073816e-06, 3.010940791641909200e-06, 3.010701060849007659e-06, 3.010456458749372631e-06, 3.010206986419800254e-06, 3.009952644944859468e-06, 3.009693435416952570e-06, 3.009429358936254232e-06, 3.009160416610734373e-06, 3.008886609556139942e-06, 3.008607938896022451e-06, 3.008324405761682915e-06, 3.008036011292237077e-06, 3.007742756634544677e-06, 3.007444642943234019e-06, 3.007141671380748132e-06, 3.006833843117238045e-06, 3.006521159330645373e-06, 3.006203621206684952e-06, 3.005881229938801216e-06, 3.005553986728202930e-06, 3.005221892783865300e-06, 3.004884949322475770e-06, 3.004543157568510250e-06, 3.004196518754137404e-06, 3.003845034119308435e-06, 3.003488704911702874e-06, 3.003127532386687924e-06, 3.002761517807415443e-06, 3.002390662444743595e-06, 3.002014967577241086e-06, 3.001634434491204103e-06, 3.001249064480654620e-06, 3.000858858847318376e-06, 3.000463818900653251e-06, 3.000063945957764561e-06, 2.999659241343532113e-06, 2.999249706390498400e-06, 2.998835342438879609e-06, 2.998416150836655406e-06, 2.997992132939455860e-06, 2.997563290110573301e-06, 2.997129623721019492e-06, 2.996691135149490055e-06, 2.996247825782336099e-06, 2.995799697013590893e-06, 2.995346750244963101e-06, 2.994888986885818560e-06, 2.994426408353204851e-06, 2.993959016071809370e-06, 2.993486811473993628e-06, 2.993009795999772081e-06, 2.992527971096785871e-06, 2.992041338220354066e-06, 2.991549898833410564e-06, 2.991053654406568462e-06, 2.990552606418045943e-06, 2.990046756353708626e-06, 2.989536105707032298e-06, 2.989020655979134254e-06, 2.988500408678758898e-06, 2.987975365322247246e-06, 2.987445527433614860e-06, 2.986910896544401069e-06, 2.986371474193810852e-06, 2.985827261928655120e-06, 2.985278261303328268e-06, 2.984724473879828086e-06, 2.984165901227757869e-06, 2.983602544924278142e-06, 2.983034406554145623e-06, 2.982461487709776321e-06, 2.981883789991046069e-06, 2.981301315005475592e-06, 2.980714064368164021e-06, 2.980122039701735951e-06, 2.979525242636406239e-06, 2.978923674809961368e-06, 2.978317337867734464e-06, 2.977706233462621808e-06, 2.977090363255025664e-06, 2.976469728912938982e-06, 2.975844332111930575e-06, 2.975214174535007051e-06, 2.974579257872791539e-06, 2.973939583823434328e-06, 2.973295154092545946e-06, 2.972645970393335233e-06, 2.971992034446489905e-06, 2.971333347980229497e-06, 2.970669912730284606e-06, 2.970001730439901977e-06, 2.969328802859764881e-06, 2.968651131748196402e-06, 2.967968718870873141e-06, 2.967281566001026387e-06, 2.966589674919411621e-06, 2.965893047414178921e-06, 2.965191685280996208e-06, 2.964485590323102182e-06, 2.963774764351063650e-06, 2.963059209182988128e-06, 2.962338926644459046e-06, 2.961613918568442997e-06, 2.960884186795506999e-06, 2.960149733173489425e-06, 2.959410559557843476e-06, 2.958666667811352150e-06, 2.957918059804314594e-06, 2.957164737414364835e-06, 2.956406702526718692e-06, 2.955643957033886634e-06, 2.954876502835846570e-06, 2.954104341840048512e-06, 2.953327475961230341e-06, 2.952545907121701992e-06, 2.951759637251097269e-06, 2.950968668286403914e-06, 2.950173002172080504e-06, 2.949372640859971740e-06, 2.948567586309295745e-06, 2.947757840486700393e-06, 2.946943405366110841e-06, 2.946124282928927310e-06, 2.945300475163920482e-06, 2.944471984067115448e-06, 2.943638811642079285e-06, 2.942800959899647456e-06, 2.941958430857948380e-06, 2.941111226542567752e-06, 2.940259348986393964e-06, 2.939402800229658335e-06, 2.938541582319940619e-06, 2.937675697312185097e-06, 2.936805147268562512e-06, 2.935929934258659806e-06, 2.935050060359386094e-06, 2.934165527654926082e-06, 2.933276338236838323e-06, 2.932382494203877335e-06, 2.931483997662197741e-06, 2.930580850725239073e-06, 2.929673055513699508e-06, 2.928760614155612108e-06, 2.927843528786306697e-06, 2.926921801548282814e-06, 2.925995434591436708e-06, 2.925064430072893211e-06, 2.924128790157045121e-06, 2.923188517015581574e-06, 2.922243612827354645e-06, 2.921294079778569076e-06, 2.920339920062649294e-06, 2.919381135880250001e-06, 2.918417729439284545e-06, 2.917449702954917727e-06, 2.916477058649464149e-06, 2.915499798752527558e-06, 2.914517925500966114e-06, 2.913531441138789052e-06, 2.912540347917258326e-06, 2.911544648094854730e-06, 2.910544343937171169e-06, 2.909539437717099432e-06, 2.908529931714691275e-06, 2.907515828217181298e-06, 2.906497129519030980e-06, 2.905473837921778766e-06, 2.904445955734188712e-06, 2.903413485272329264e-06, 2.902376428859199715e-06, 2.901334788825104169e-06, 2.900288567507500348e-06, 2.899237767250916582e-06, 2.898182390407093262e-06, 2.897122439334901102e-06, 2.896057916400351728e-06, 2.894988823976556597e-06, 2.893915164443833296e-06, 2.892836940189426451e-06, 2.891754153608011281e-06, 2.890666807101060448e-06, 2.889574903077331942e-06, 2.888478443952692900e-06, 2.887377432149971379e-06, 2.886271870099174459e-06, 2.885161760237506887e-06, 2.884047105009026328e-06, 2.882927906865038931e-06, 2.881804168263900700e-06, 2.880675891670869690e-06, 2.879543079558588385e-06, 2.878405734406422172e-06, 2.877263858700983652e-06, 2.876117454935918762e-06, 2.874966525611761515e-06, 2.873811073236315579e-06, 2.872651100324319708e-06, 2.871486609397413433e-06, 2.870317602984425052e-06, 2.869144083621173004e-06, 2.867966053850324836e-06, 2.866783516221816483e-06, 2.865596473292447814e-06, 2.864404927625939381e-06, 2.863208881793119609e-06, 2.862008338371763445e-06, 2.860803299946624537e-06, 2.859593769109489026e-06, 2.858379748458956586e-06, 2.857161240600747895e-06, 2.855938248147537773e-06, 2.854710773718761211e-06, 2.853478819941092789e-06, 2.852242389447990127e-06, 2.851001484879796376e-06, 2.849756108883879555e-06, 2.848506264114535141e-06, 2.847251953232947956e-06, 2.845993178907279406e-06, 2.844729943812463350e-06, 2.843462250630474186e-06, 2.842190102050151935e-06, 2.840913500767219187e-06, 2.839632449484292107e-06, 2.838346950910951591e-06, 2.837057007763460352e-06, 2.835762622765133925e-06, 2.834463798646108577e-06, 2.833160538143370529e-06, 2.831852844000774595e-06, 2.830540718969065775e-06, 2.829224165805711126e-06, 2.827903187275148360e-06, 2.826577786148600349e-06, 2.825247965204136952e-06, 2.823913727226698740e-06, 2.822575075007879724e-06, 2.821232011346264905e-06, 2.819884539047160912e-06, 2.818532660922728564e-06, 2.817176379791889698e-06, 2.815815698480417801e-06, 2.814450619820717356e-06, 2.813081146652148681e-06, 2.811707281820755186e-06, 2.810329028179384493e-06, 2.808946388587647785e-06, 2.807559365911951565e-06, 2.806167963025304960e-06, 2.804772182807619143e-06, 2.803372028145503624e-06, 2.801967501932299284e-06, 2.800558607068114798e-06, 2.799145346459662731e-06, 2.797727723020434456e-06, 2.796305739670847532e-06, 2.794879399337646008e-06, 2.793448704954540778e-06, 2.792013659461922440e-06, 2.790574265806702472e-06, 2.789130526942638076e-06, 2.787682445830125919e-06, 2.786230025436238134e-06, 2.784773268734748159e-06, 2.783312178705942265e-06, 2.781846758336860964e-06, 2.780377010621395148e-06, 2.778902938559681730e-06, 2.777424545158799481e-06, 2.775941833432391254e-06, 2.774454806400595797e-06, 2.772963467090277724e-06, 2.771467818535080454e-06, 2.769967863774926883e-06, 2.768463605856560642e-06, 2.766955047833314006e-06, 2.765442192764916891e-06, 2.763925043718050389e-06, 2.762403603765596718e-06, 2.760877875987230033e-06, 2.759347863469194922e-06, 2.757813569304057378e-06, 2.756274996591303657e-06, 2.754732148436801981e-06, 2.753185027952812710e-06, 2.751633638258347052e-06, 2.750077982478926091e-06, 2.748518063746369446e-06, 2.746953885199436900e-06, 2.745385449982951722e-06, 2.743812761248542244e-06, 2.742235822154236555e-06, 2.740654635864567534e-06, 2.739069205550564802e-06, 2.737479534389789451e-06, 2.735885625566113816e-06, 2.734287482270037419e-06, 2.732685107698564145e-06, 2.731078505054883339e-06, 2.729467677549016938e-06, 2.727852628397243909e-06, 2.726233360822162935e-06, 2.724609878052999035e-06, 2.722982183325323199e-06, 2.721350279881151493e-06, 2.719714170968980206e-06, 2.718073859843504640e-06, 2.716429349766026104e-06, 2.714780644004180446e-06, 2.713127745831996069e-06, 2.711470658529877843e-06, 2.709809385384691378e-06, 2.708143929689447511e-06, 2.706474294743763935e-06, 2.704800483853518763e-06, 2.703122500330952174e-06, 2.701440347494657517e-06, 2.699754028669622391e-06, 2.698063547186979198e-06, 2.696368906384393926e-06, 2.694670109605787905e-06, 2.692967160201383116e-06, 2.691260061527783512e-06, 2.689548816947706505e-06, 2.687833429830351850e-06, 2.686113903551161936e-06, 2.684390241491825597e-06, 2.682662447040364082e-06, 2.680930523591101416e-06, 2.679194474544411979e-06, 2.677454303307160963e-06, 2.675710013292387161e-06, 2.673961607919366493e-06, 2.672209090613628101e-06, 2.670452464806982296e-06, 2.668691733937288480e-06, 2.666926901448803267e-06, 2.665157970791937814e-06, 2.663384945423309912e-06, 2.661607828805824031e-06, 2.659826624408323612e-06, 2.658041335706028983e-06, 2.656251966180522961e-06, 2.654458519319151998e-06, 2.652660998615700419e-06, 2.650859407570126152e-06, 2.649053749688315928e-06, 2.647244028482526592e-06, 2.645430247471077203e-06, 2.643612410178420608e-06, 2.641790520135239160e-06, 2.639964580878069479e-06, 2.638134595949740793e-06, 2.636300568899407123e-06, 2.634462503281865851e-06, 2.632620402658318348e-06, 2.630774270596054461e-06, 2.628924110668217031e-06, 2.627069926454180523e-06, 2.625211721539598881e-06, 2.623349499515741452e-06, 2.621483263980232872e-06, 2.619613018536756605e-06, 2.617738766794709350e-06, 2.615860512370088736e-06, 2.613978258884354058e-06, 2.612092009965313972e-06, 2.610201769246773280e-06, 2.608307540368240703e-06, 2.606409326975699681e-06, 2.604507132720880776e-06, 2.602600961261347639e-06, 2.600690816260899778e-06, 2.598776701389271863e-06, 2.596858620321891047e-06, 2.594936576740662167e-06, 2.593010574332901757e-06, 2.591080616792195660e-06, 2.589146707817980603e-06, 2.587208851115630167e-06, 2.585267050396439537e-06, 2.583321309377713601e-06, 2.581371631782408224e-06, 2.579418021339638897e-06, 2.577460481784406293e-06, 2.575499016857300659e-06, 2.573533630305258209e-06, 2.571564325880861906e-06, 2.569591107342399054e-06, 2.567613978454267877e-06, 2.565632942986628540e-06, 2.563648004715506488e-06, 2.561659167422835644e-06, 2.559666434896148820e-06, 2.557669810929051629e-06, 2.555669299320967107e-06, 2.553664903876813841e-06, 2.551656628407791589e-06, 2.549644476730663845e-06, 2.547628452667832803e-06, 2.545608560047706120e-06, 2.543584802704420781e-06, 2.541557184477862165e-06, 2.539525709213695377e-06, 2.537490380763402944e-06, 2.535451202983997674e-06, 2.533408179738464377e-06, 2.531361314895448165e-06, 2.529310612329308230e-06, 2.527256075920249565e-06, 2.525197709553905795e-06, 2.523135517121870270e-06, 2.521069502521363604e-06, 2.518999669655302706e-06, 2.516926022432283842e-06, 2.514848564766656749e-06, 2.512767300578220550e-06, 2.510682233792653201e-06, 2.508593368341239168e-06, 2.506500708160893993e-06, 2.504404257194261279e-06, 2.502304019389382344e-06, 2.500199998700146000e-06, 2.498092199086025123e-06, 2.495980624512077078e-06, 2.493865278948963198e-06, 2.491746166373045351e-06, 2.489623290766011121e-06, 2.487496656115308341e-06, 2.485366266414216668e-06, 2.483232125661068307e-06, 2.481094237860110721e-06, 2.478952607021146211e-06, 2.476807237159255790e-06, 2.474658132295333236e-06, 2.472505296455714934e-06, 2.470348733672250609e-06, 2.468188447982418940e-06, 2.466024443428948945e-06, 2.463856724060215112e-06, 2.461685293930391141e-06, 2.459510157098590207e-06, 2.457331317629762810e-06, 2.455148779594351190e-06, 2.452962547067873006e-06, 2.450772624131963614e-06, 2.448579014873083918e-06, 2.446381723383473702e-06, 2.444180753760749292e-06, 2.441976110108017060e-06, 2.439767796533474890e-06, 2.437555817151345191e-06, 2.435340176080625094e-06, 2.433120877446099931e-06, 2.430897925377936234e-06, 2.428671324011297607e-06, 2.426441077487297211e-06, 2.424207189952147348e-06, 2.421969665557220866e-06, 2.419728508459526773e-06, 2.417483722821437485e-06, 2.415235312810285225e-06, 2.412983282599378029e-06, 2.410727636366702098e-06, 2.408468378295932730e-06, 2.406205512576057813e-06, 2.403939043400992002e-06, 2.401668974970507609e-06, 2.399395311489390957e-06, 2.397118057167499554e-06, 2.394837216220260153e-06, 2.392552792868357462e-06, 2.390264791337360603e-06, 2.387973215858647229e-06, 2.385678070668560298e-06, 2.383379360008477959e-06, 2.381077088125303128e-06, 2.378771259271049722e-06, 2.376461877702941756e-06, 2.374148947683512449e-06, 2.371832473480185785e-06, 2.369512459365884266e-06, 2.367188909618585484e-06, 2.364861828521468663e-06, 2.362531220362865948e-06, 2.360197089436343729e-06, 2.357859440040364665e-06, 2.355518276478787020e-06, 2.353173603060530498e-06, 2.350825424099616062e-06, 2.348473743915316280e-06, 2.346118566831689878e-06, 2.343759897178200500e-06, 2.341397739289313095e-06, 2.339032097504569729e-06, 2.336662976168604829e-06, 2.334290379631202783e-06, 2.331914312246943879e-06, 2.329534778375733277e-06, 2.327151782382443987e-06, 2.324765328636977006e-06, 2.322375421514266823e-06, 2.319982065394373748e-06, 2.317585264662084112e-06, 2.315185023707470577e-06, 2.312781346925534267e-06, 2.310374238716247542e-06, 2.307963703484678090e-06, 2.305549745640564984e-06, 2.303132369598917960e-06, 2.300711579779612112e-06, 2.298287380607464548e-06, 2.295859776512256410e-06, 2.293428771928792596e-06, 2.290994371296508730e-06, 2.288556579060063667e-06, 2.286115399668930372e-06, 2.283670837577482320e-06, 2.281222897245006201e-06, 2.278771583135757400e-06, 2.276316899718588148e-06, 2.273858851467523510e-06, 2.271397442861346754e-06, 2.268932678383694651e-06, 2.266464562523179441e-06, 2.263993099772920427e-06, 2.261518294631078029e-06, 2.259040151600988461e-06, 2.256558675190137975e-06, 2.254073869911246640e-06, 2.251585740281854143e-06, 2.249094290823862390e-06, 2.246599526064682812e-06, 2.244101450535794294e-06, 2.241600068773860408e-06, 2.239095385320183927e-06, 2.236587404720930015e-06, 2.234076131526601070e-06, 2.231561570293160733e-06, 2.229043725580574031e-06, 2.226522601953945360e-06, 2.223998203983074223e-06, 2.221470536242084225e-06, 2.218939603310386996e-06, 2.216405409771784765e-06, 2.213867960214547856e-06, 2.211327259231930537e-06, 2.208783311421860156e-06, 2.206236121386476357e-06, 2.203685693733341487e-06, 2.201132033073881635e-06, 2.198575144024597888e-06, 2.196015031206610626e-06, 2.193451699245220339e-06, 2.190885152770988436e-06, 2.188315396418741986e-06, 2.185742434827689333e-06, 2.183166272641948228e-06, 2.180586914510200233e-06, 2.178004365085268054e-06, 2.175418629025173485e-06, 2.172829710992167558e-06, 2.170237615652825829e-06, 2.167642347678572272e-06, 2.165043911745271854e-06, 2.162442312533270346e-06, 2.159837554727565426e-06, 2.157229643017289984e-06, 2.154618582096429140e-06, 2.152004376663326422e-06, 2.149387031420790915e-06, 2.146766551076117168e-06, 2.144142940341163542e-06, 2.141516203931895662e-06, 2.138886346569060230e-06, 2.136253372977719157e-06, 2.133617287887373231e-06, 2.130978096032037079e-06, 2.128335802149796589e-06, 2.125690410983495861e-06, 2.123041927280231943e-06, 2.120390355791497564e-06, 2.117735701273156987e-06, 2.115077968485545542e-06, 2.112417162193039749e-06, 2.109753287164676931e-06, 2.107086348173739736e-06, 2.104416349997842119e-06, 2.101743297418919593e-06, 2.099067195223326223e-06, 2.096388048201404748e-06, 2.093705861148125250e-06, 2.091020638862625637e-06, 2.088332386148333190e-06, 2.085641107813081880e-06, 2.082946808668595255e-06, 2.080249493531217424e-06, 2.077549167221420938e-06, 2.074845834563917746e-06, 2.072139500387647763e-06, 2.069430169525894487e-06, 2.066717846815811089e-06, 2.064002537099092106e-06, 2.061284245221531289e-06, 2.058562976033088522e-06, 2.055838734387926245e-06, 2.053111525144476788e-06, 2.050381353164876980e-06, 2.047648223316248017e-06, 2.044912140469015794e-06, 2.042173109498233968e-06, 2.039431135283055415e-06, 2.036686222706442116e-06, 2.033938376655666180e-06, 2.031187602022480945e-06, 2.028433903702007972e-06, 2.025677286593949157e-06, 2.022917755602063257e-06, 2.020155315633721203e-06, 2.017389971601172411e-06, 2.014621728419894764e-06, 2.011850591009877018e-06, 2.009076564295142348e-06, 2.006299653203406992e-06, 2.003519862666611765e-06, 2.000737197621074101e-06, 1.997951663006408087e-06, 1.995163263766677272e-06, 1.992372004849944050e-06, 1.989577891207758473e-06, 1.986780927796357224e-06, 1.983981119575569678e-06, 1.981178471508956391e-06, 1.978372988564340187e-06, 1.975564675713502922e-06, 1.972753537931659055e-06, 1.969939580198785062e-06, 1.967122807497905468e-06, 1.964303224816442169e-06, 1.961480837145685462e-06, 1.958655649480340880e-06, 1.955827666819696826e-06, 1.952996894166534447e-06, 1.950163336527264423e-06, 1.947326998912489824e-06, 1.944487886336661369e-06, 1.941646003817559885e-06, 1.938801356377641823e-06, 1.935953949042312577e-06, 1.933103786841282164e-06, 1.930250874807907923e-06, 1.927395217979352068e-06, 1.924536821396524084e-06, 1.921675690104259455e-06, 1.918811829150752573e-06, 1.915945243588324154e-06, 1.913075938472906234e-06, 1.910203918864174740e-06, 1.907329189825500565e-06, 1.904451756424120462e-06, 1.901571623730592610e-06, 1.898688796819538830e-06, 1.895803280769142718e-06, 1.892915080661273730e-06, 1.890024201581581635e-06, 1.887130648619018142e-06, 1.884234426866544397e-06, 1.881335541420651340e-06, 1.878433997381457966e-06, 1.875529799852714711e-06, 1.872622953941898322e-06, 1.869713464759725871e-06, 1.866801337420898870e-06, 1.863886577043558213e-06, 1.860969188749440445e-06, 1.858049177663865484e-06, 1.855126548915819210e-06, 1.852201307637477848e-06, 1.849273458964925414e-06, 1.846343008037673650e-06, 1.843409959998754148e-06, 1.840474319994834809e-06, 1.837536093175729205e-06, 1.834595284695123963e-06, 1.831651899710070764e-06, 1.828705943381095180e-06, 1.825757420872210654e-06, 1.822806337351007438e-06, 1.819852697988173806e-06, 1.816896507958191045e-06, 1.813937772438893212e-06, 1.810976496611508212e-06, 1.808012685660834195e-06, 1.805046344774677123e-06, 1.802077479144527552e-06, 1.799106093965617384e-06, 1.796132194435829310e-06, 1.793155785756919078e-06, 1.790176873134006428e-06, 1.787195461775187786e-06, 1.784211556892159680e-06, 1.781225163700347910e-06, 1.778236287417737378e-06, 1.775244933266154912e-06, 1.772251106470712983e-06, 1.769254812259357176e-06, 1.766256055864192642e-06, 1.763254842519720151e-06, 1.760251177464231161e-06, 1.757245065939288792e-06, 1.754236513189322102e-06, 1.751225524462270886e-06, 1.748212105009699396e-06, 1.745196260085629336e-06, 1.742177994947834979e-06, 1.739157314857276925e-06, 1.736134225077623948e-06, 1.733108730876638957e-06, 1.730080837524359144e-06, 1.727050550294527259e-06, 1.724017874463922029e-06, 1.720982815312610152e-06, 1.717945378123277351e-06, 1.714905568182678072e-06, 1.711863390779779212e-06, 1.708818851207183557e-06, 1.705771954760625159e-06, 1.702722706738409666e-06, 1.699671112442717264e-06, 1.696617177178427846e-06, 1.693560906253241712e-06, 1.690502304978318022e-06, 1.687441378667735234e-06, 1.684378132638623454e-06, 1.681312572211299328e-06, 1.678244702708701490e-06, 1.675174529457192071e-06, 1.672102057786010571e-06, 1.669027293027407059e-06, 1.665950240516619300e-06, 1.662870905592010823e-06, 1.659789293594519076e-06, 1.656705409868457784e-06, 1.653619259760947525e-06, 1.650530848622075187e-06, 1.647440181804861779e-06, 1.644347264665387372e-06, 1.641252102562265087e-06, 1.638154700857407874e-06, 1.635055064915514575e-06, 1.631953200104167966e-06, 1.628849111793967744e-06, 1.625742805357993508e-06, 1.622634286172602658e-06, 1.619523559616852093e-06, 1.616410631072666340e-06, 1.613295505924808333e-06, 1.610178189560999693e-06, 1.607058687371384978e-06, 1.603937004749310530e-06, 1.600813147090812023e-06, 1.597687119794700644e-06, 1.594558928262580460e-06, 1.591428577898960861e-06, 1.588296074110720812e-06, 1.585161422307898923e-06, 1.582024627903127205e-06, 1.578885696311799634e-06, 1.575744632952164898e-06, 1.572601443244784720e-06, 1.569456132613339387e-06, 1.566308706484067860e-06, 1.563159170285914948e-06, 1.560007529450495519e-06, 1.556853789412241461e-06, 1.553697955607831203e-06, 1.550540033477021083e-06, 1.547380028462065762e-06, 1.544217946007853749e-06, 1.541053791562051186e-06, 1.537887570574515279e-06, 1.534719288498002624e-06, 1.531548950788264507e-06, 1.528376562902825050e-06, 1.525202130302343669e-06, 1.522025658450040572e-06, 1.518847152811302891e-06, 1.515666618854325457e-06, 1.512484062050274919e-06, 1.509299487872014954e-06, 1.506112901795494347e-06, 1.502924309299172700e-06, 1.499733715863459695e-06, 1.496541126972243568e-06, 1.493346548110921968e-06, 1.490149984767923439e-06, 1.486951442434149437e-06, 1.483750926602541922e-06, 1.480548442768778345e-06, 1.477343996431386001e-06, 1.474137593090492441e-06, 1.470929238249209314e-06, 1.467718937413054265e-06, 1.464506696089393801e-06, 1.461292519788966890e-06, 1.458076414023925775e-06, 1.454858384309342633e-06, 1.451638436162527714e-06, 1.448416575103287475e-06, 1.445192806653217304e-06, 1.441967136337224914e-06, 1.438739569681576234e-06, 1.435510112215406094e-06, 1.432278769470164265e-06, 1.429045546979050064e-06, 1.425810450278379891e-06, 1.422573484906349074e-06, 1.419334656403133095e-06, 1.416093970311594435e-06, 1.412851432176708075e-06, 1.409607047545702316e-06, 1.406360821968168679e-06, 1.403112760995514093e-06, 1.399862870181782083e-06, 1.396611155083217828e-06, 1.393357621257707845e-06, 1.390102274266169758e-06, 1.386845119671278359e-06, 1.383586163037593726e-06, 1.380325409932253880e-06, 1.377062865924431205e-06, 1.373798536585413550e-06, 1.370532427488631755e-06, 1.367264544209780992e-06, 1.363994892326241183e-06, 1.360723477417922758e-06, 1.357450305066698726e-06, 1.354175380856505677e-06, 1.350898710373526110e-06, 1.347620299205560145e-06, 1.344340152942896908e-06, 1.341058277177738339e-06, 1.337774677504314595e-06, 1.334489359518893374e-06, 1.331202328819895107e-06, 1.327913591007333069e-06, 1.324623151683638605e-06, 1.321331016453100390e-06, 1.318037190921980050e-06, 1.314741680698659548e-06, 1.311444491393053974e-06, 1.308145628617461760e-06, 1.304845097985971752e-06, 1.301542905114630077e-06, 1.298239055621383182e-06, 1.294933555126251896e-06, 1.291626409250725593e-06, 1.288317623618481744e-06, 1.285007203855510009e-06, 1.281695155588817755e-06, 1.278381484447865574e-06, 1.275066196063956983e-06, 1.271749296069823391e-06, 1.268430790100462015e-06, 1.265110683792562449e-06, 1.261788982784632015e-06, 1.258465692717127695e-06, 1.255140819231887347e-06, 1.251814367972826389e-06, 1.248486344586072053e-06, 1.245156754718660649e-06, 1.241825604019969898e-06, 1.238492898141136387e-06, 1.235158642734602401e-06, 1.231822843454975878e-06, 1.228485505958462895e-06, 1.225146635902976302e-06, 1.221806238948131483e-06, 1.218464320755388026e-06, 1.215120886987321908e-06, 1.211775943309194835e-06, 1.208429495386926659e-06, 1.205081548888676150e-06, 1.201732109484254217e-06, 1.198381182844672228e-06, 1.195028774642868759e-06, 1.191674890553837290e-06, 1.188319536253310338e-06, 1.184962717419206823e-06, 1.181604439731035757e-06, 1.178244708869317510e-06, 1.174883530517155267e-06, 1.171520910358204691e-06, 1.168156854078251732e-06, 1.164791367364637280e-06, 1.161424455905790240e-06, 1.158056125391965721e-06, 1.154686381515378652e-06, 1.151315229968866322e-06, 1.147942676447350353e-06, 1.144568726647246749e-06, 1.141193386265856449e-06, 1.137816661002837896e-06, 1.134438556558860046e-06, 1.131059078635762875e-06, 1.127678232937258515e-06, 1.124296025168341719e-06, 1.120912461035434489e-06, 1.117527546246521178e-06, 1.114141286510537994e-06, 1.110753687538268101e-06, 1.107364755041863890e-06, 1.103974494734282646e-06, 1.100582912330712951e-06, 1.097190013547270463e-06, 1.093795804101105704e-06, 1.090400289711166387e-06, 1.087003476097569132e-06, 1.083605368981743035e-06, 1.080205974086591877e-06, 1.076805297135851225e-06, 1.073403343855004288e-06, 1.070000119970660404e-06, 1.066595631210697343e-06, 1.063189883304257072e-06, 1.059782881981877892e-06, 1.056374632974889867e-06, 1.052965142016313952e-06, 1.049554414840228198e-06, 1.046142457181933136e-06, 1.042729274777929969e-06, 1.039314873366059478e-06, 1.035899258684900849e-06, 1.032482436474654063e-06, 1.029064412476543801e-06, 1.025645192432935062e-06, 1.022224782087498543e-06, 1.018803187184588713e-06, 1.015380413470130649e-06, 1.011956466691032198e-06, 1.008531352595287529e-06, 1.005105076932010162e-06, 1.001677645451537370e-06, 9.982490639048387349e-07, 9.948193380444051111e-07, 9.913884736236362180e-07, 9.879564763969827319e-07, 9.845233521199371792e-07, 9.810891065491633214e-07, 9.776537454419167842e-07, 9.742172745568965374e-07, 9.707796996536604422e-07, 9.673410264927603529e-07, 9.639012608358831482e-07, 9.604604084452345143e-07, 9.570184750842847575e-07, 9.535754665179168235e-07, 9.501313885110523037e-07, 9.466862468301469781e-07, 9.432400472425877276e-07, 9.397927955162238070e-07, 9.363444974202653358e-07, 9.328951587246665517e-07, 9.294447852002698064e-07, 9.259933826187996366e-07, 9.225409567529963831e-07, 9.190875133758584142e-07, 9.156330582622871694e-07, 9.121775971869712713e-07, 9.087211359260331574e-07, 9.052636802564096874e-07, 9.018052359554059686e-07, 8.983458088014294159e-07, 8.948854045741257002e-07, 8.914240290530257198e-07, 8.879616880190316132e-07, 8.844983872538149425e-07, 8.810341325391867127e-07, 8.775689296587757673e-07, 8.741027843958779600e-07, 8.706357025351182451e-07, 8.671676898618416606e-07, 8.636987521614940418e-07, 8.602288952211250805e-07, 8.567581248280213203e-07, 8.532864467698347995e-07, 8.498138668353520510e-07, 8.463403908140118232e-07, 8.428660244952956398e-07, 8.393907736702340357e-07, 8.359146441300390228e-07, 8.324376416662278625e-07, 8.289597720713927009e-07, 8.254810411385775763e-07, 8.220014546614120385e-07, 8.185210184342621323e-07, 8.150397382516075110e-07, 8.115576199089533730e-07, 8.080746692023562291e-07, 8.045908919278041924e-07, 8.011062938827367668e-07, 7.976208808646652423e-07, 7.941346586713033499e-07, 7.906476331013373202e-07, 7.871598099537880675e-07, 7.836711950281692678e-07, 7.801817941246234131e-07, 7.766916130432976540e-07, 7.732006575852683364e-07, 7.697089335518934445e-07, 7.662164467449816900e-07, 7.627232029667610658e-07, 7.592292080200408413e-07, 7.557344677075771345e-07, 7.522389878329849548e-07, 7.487427742001252689e-07, 7.452458326132340672e-07, 7.417481688769220464e-07, 7.382497887963166991e-07, 7.347506981764349801e-07, 7.312509028231046665e-07, 7.277504085423271773e-07, 7.242492211404320507e-07, 7.207473464242213635e-07, 7.172447902003329739e-07, 7.137415582761731049e-07, 7.102376564592695289e-07, 7.067330905574373739e-07, 7.032278663787470428e-07, 6.997219897316951016e-07, 6.962154664245559822e-07, 6.927083022663077890e-07, 6.892005030660014712e-07, 6.856920746329117007e-07, 6.821830227765218370e-07, 6.786733533066686641e-07, 6.751630720329184451e-07, 6.716521847654875406e-07, 6.681406973146010993e-07, 6.646286154906542058e-07, 6.611159451043462413e-07, 6.576026919660605380e-07, 6.540888618866161205e-07, 6.505744606774310775e-07, 6.470594941491007110e-07, 6.435439681129557594e-07, 6.400278883804134645e-07, 6.365112607625184793e-07, 6.329940910708531110e-07, 6.294763851169204691e-07, 6.259581487122725796e-07, 6.224393876686704735e-07, 6.189201077974511362e-07, 6.154003149102852839e-07, 6.118800148193363943e-07, 6.083592133358400205e-07, 6.048379162716603199e-07, 6.013161294386503326e-07, 5.977938586481801842e-07, 5.942711097119013208e-07, 5.907478884418984461e-07, 5.872242006492760348e-07, 5.837000521457023681e-07, 5.801754487427851640e-07, 5.766503962514292094e-07, 5.731249004835514952e-07, 5.695989672498776609e-07, 5.660726023616611530e-07, 5.625458116300390571e-07, 5.590186008654032814e-07, 5.554909758789482979e-07, 5.519629424812611502e-07, 5.484345064824675664e-07, 5.449056736929979948e-07, 5.413764499231187711e-07, 5.378468409822878438e-07, 5.343168526808714984e-07, 5.307864908279421776e-07, 5.272557612329913938e-07, 5.237246697051368000e-07, 5.201932220532720091e-07, 5.166614240860494413e-07, 5.131292816120430605e-07, 5.095968004390918175e-07, 5.060639863752491746e-07, 5.025308452282867435e-07, 4.989973828050751048e-07, 4.954636049131249842e-07, 4.919295173591793780e-07, 4.883951259493585014e-07, 4.848604364899274122e-07, 4.813254547866674067e-07, 4.777901866450201209e-07, 4.742546378702320554e-07, 4.707188142667238540e-07, 4.671827216390188630e-07, 4.636463657912592641e-07, 4.601097525265814929e-07, 4.565728876486582101e-07, 4.530357769602877795e-07, 4.494984262635450929e-07, 4.459608413605458584e-07, 4.424230280528157728e-07, 4.388849921414395464e-07, 4.353467394270484621e-07, 4.318082757099678652e-07, 4.282696067895813589e-07, 4.247307384652626471e-07, 4.211916765357369239e-07, 4.176524267992327043e-07, 4.141129950536205792e-07, 4.105733870957899576e-07, 4.070336087225668798e-07, 4.034936657300856251e-07, 3.999535639139330774e-07, 3.964133090691412084e-07, 3.928729069903311788e-07, 3.893323634710813458e-07, 3.857916843048539172e-07, 3.822508752843638589e-07, 3.787099422017185496e-07, 3.751688908485752228e-07, 3.716277270154951574e-07, 3.680864564928799134e-07, 3.645450850703346284e-07, 3.610036185368118537e-07, 3.574620626806098079e-07, 3.539204232895112900e-07, 3.503787061501511575e-07, 3.468369170487905676e-07, 3.432950617714664257e-07, 3.397531461025661461e-07, 3.362111758263904284e-07, 3.326691567265153882e-07, 3.291270945853119723e-07, 3.255849951848798649e-07, 3.220428643064061783e-07, 3.185007077303194009e-07, 3.149585312364306398e-07, 3.114163406033016287e-07, 3.078741416090161099e-07, 3.043319400313318239e-07, 3.007897416462538413e-07, 2.972475522295971266e-07, 2.937053775563502050e-07, 2.901632234001943650e-07, 2.866210955344344421e-07, 2.830789997313624319e-07, 2.795369417624100625e-07, 2.759949273981310060e-07, 2.724529624083533454e-07, 2.689110525613855334e-07, 2.653692036257329577e-07, 2.618274213678909443e-07, 2.582857115540619042e-07, 2.547440799495190005e-07, 2.512025323179689149e-07, 2.476610744231108644e-07, 2.441197120272176095e-07, 2.405784508912784443e-07, 2.370372967757795252e-07, 2.334962554402213534e-07, 2.299553326424789739e-07, 2.264145341405284667e-07, 2.228738656902283033e-07, 2.193333330470454139e-07, 2.157929419652556682e-07, 2.122526981980978233e-07, 2.087126074977562923e-07, 2.051726756155164684e-07, 2.016329083011199747e-07, 1.980933113037065375e-07, 1.945538903713262285e-07, 1.910146512503024956e-07, 1.874755996867991740e-07, 1.839367414253926265e-07, 1.803980822092203720e-07, 1.768596277807577083e-07, 1.733213838811815375e-07, 1.697833562505164263e-07, 1.662455506277835517e-07, 1.627079727503611377e-07, 1.591706283549202418e-07, 1.556335231769446989e-07, 1.520966629500889645e-07, 1.485600534077463168e-07, 1.450237002816208914e-07, 1.414876093018778975e-07, 1.379517861979184146e-07, 1.344162366977434298e-07, 1.308809665281011155e-07, 1.273459814144768237e-07, 1.238112870812418994e-07, 1.202768892510167647e-07, 1.167427936456024694e-07, 1.132090059853448875e-07, 1.096755319892816503e-07, 1.061423773752903777e-07, 1.026095478594511797e-07, 9.907704915697926627e-08, 9.554488698159013590e-08, 9.201306704564358431e-08, 8.848159506013761648e-08, 8.495047673485539363e-08, 8.141971777772694096e-08, 7.788932389576383523e-08, 7.435930079442085960e-08, 7.082965417774490935e-08, 6.730038974852200505e-08, 6.377151320764011201e-08, 6.024303025502245149e-08, 5.671494658899028046e-08, 5.318726790641124807e-08, 4.965999990268936364e-08, 4.613314827191347888e-08, 4.260671870622008086e-08, 3.908071689656905510e-08, 3.555514853289261117e-08, 3.203001930267111589e-08, 2.850533489249597501e-08, 2.498110098743179090e-08, 2.145732327053591293e-08, 1.793400742379226812e-08, 1.441115912747360486e-08, 1.088878406028964929e-08, 7.366887899535074592e-09, 3.845476320452239479e-09, 3.245549970074668453e-10, -3.195870397960990454e-09, -6.715794194165494084e-09, -1.023521072230752719e-08, -1.375411431471494950e-08, -1.727249930597906935e-08, -2.079036003123641631e-08, -2.430769082837613219e-08, -2.782448603632163729e-08, -3.134073999582492732e-08, -3.485644704916150585e-08, -3.837160154092414351e-08, -4.188619781630535993e-08, -4.540023022330366324e-08, -4.891369311100665406e-08, -5.242658083022704794e-08, -5.593888773413959124e-08, -5.945060817672113740e-08, -6.296173651417202783e-08, -6.647226710476703396e-08, -6.998219430808103675e-08, -7.349151248546830178e-08, -7.700021600069819734e-08, -8.050829921824008500e-08, -8.401575650546700824e-08, -8.752258223093985514e-08, -9.102877076504371833e-08, -9.453431648062347412e-08, -9.803921375142571834e-08, -1.015434569535175730e-07, -1.050470404651406392e-07, -1.085499586659335005e-07, -1.120522059374136182e-07, -1.155537766636110446e-07, -1.190546652295113513e-07, -1.225548660224749785e-07, -1.260543734320882103e-07, -1.295531818493897009e-07, -1.330512856675063452e-07, -1.365486792815037115e-07, -1.400453570882417276e-07, -1.435413134870058003e-07, -1.470365428785784142e-07, -1.505310396657186319e-07, -1.540247982537946949e-07, -1.575178130492296919e-07, -1.610100784609179832e-07, -1.645015889000783200e-07, -1.679923387794782795e-07, -1.714823225140721075e-07, -1.749715345208506082e-07, -1.784599692186938398e-07, -1.819476210290082156e-07, -1.854344843747922269e-07, -1.889205536812742321e-07, -1.924058233757660259e-07, -1.958902878876679480e-07, -1.993739416483227436e-07, -2.028567790916508909e-07, -2.063387946532208764e-07, -2.098199827708823788e-07, -2.133003378846190970e-07, -2.167798544365595495e-07, -2.202585268708269117e-07, -2.237363496341720402e-07, -2.272133171750488839e-07, -2.306894239442447029e-07, -2.341646643947334519e-07, -2.376390329815292706e-07, -2.411125241623193228e-07, -2.445851323965347868e-07, -2.480568521459857329e-07, -2.515276778747110925e-07, -2.549976040489909936e-07, -2.584666251371980529e-07, -2.619347356104277277e-07, -2.654019299415732495e-07, -2.688682026059605288e-07, -2.723335480811964825e-07, -2.757979608471797813e-07, -2.792614353859537303e-07, -2.827239661823377320e-07, -2.861855477230027503e-07, -2.896461744970997024e-07, -2.931058409961174225e-07, -2.965645417137317310e-07, -3.000222711464353621e-07, -3.034790237927757403e-07, -3.069347941531981201e-07, -3.103895767314627785e-07, -3.138433660330939916e-07, -3.172961565660110740e-07, -3.207479428411605300e-07, -3.241987193708135178e-07, -3.276484806707498707e-07, -3.310972212585583137e-07, -3.345449356542675563e-07, -3.379916183808179305e-07, -3.414372639632931855e-07, -3.448818669287839031e-07, -3.483254218077761027e-07, -3.517679231326212347e-07, -3.552093654381620324e-07, -3.586497432623549752e-07, -3.620890511447411293e-07, -3.655272836278377700e-07, -3.689644352569990448e-07, -3.724005005796461261e-07, -3.758354741457420794e-07, -3.792693505084189323e-07, -3.827021242222861494e-07, -3.861337898456017370e-07, -3.895643419385823060e-07, -3.929937750640266476e-07, -3.964220837879475133e-07, -3.998492626780297507e-07, -4.032753063050340488e-07, -4.067002092426449485e-07, -4.101239660667126419e-07, -4.135465713557241349e-07, -4.169680196914226399e-07, -4.203883056571305560e-07, -4.238074238399077627e-07, -4.272253688288632176e-07, -4.306421352159443390e-07, -4.340577175957803572e-07, -4.374721105656951791e-07, -4.408853087255631808e-07, -4.442973066784322530e-07, -4.477080990296097999e-07, -4.511176803872817083e-07, -4.545260453623738578e-07, -4.579331885685564618e-07, -4.613391046221002307e-07, -4.647437881424986234e-07, -4.681472337515520992e-07, -4.715494360740007450e-07, -4.749503897373628629e-07, -4.783500893718069623e-07, -4.817485296107605646e-07, -4.851457050900053080e-07, -4.885416104482970805e-07, -4.919362403272202251e-07, -4.953295893711971746e-07, -4.987216522273440323e-07, -5.021124235460883771e-07, -5.055018979802628317e-07, -5.088900701857235031e-07, -5.122769348212034458e-07, -5.156624865483250494e-07, -5.190467200314538198e-07, -5.224296299383207364e-07, -5.258112109391061863e-07, -5.291914577070652861e-07, -5.325703649183817689e-07, -5.359479272520263179e-07, -5.393241393903710889e-07, -5.426989960182823260e-07, -5.460724918237475901e-07, -5.494446214977196924e-07, -5.528153797341287649e-07, -5.561847612297441943e-07, -5.595527606847822616e-07, -5.629193728020114644e-07, -5.662845922873589917e-07, -5.696484138497742462e-07, -5.730108322012332910e-07, -5.763718420566016304e-07, -5.797314381343897633e-07, -5.830896151551012569e-07, -5.864463678433626116e-07, -5.898016909262619111e-07, -5.931555791339642982e-07, -5.965080272001795369e-07, -5.998590298614008471e-07, -6.032085818567726620e-07, -6.065566779294583745e-07, -6.099033128251295477e-07, -6.132484812925908137e-07, -6.165921780843794672e-07, -6.199343979551210566e-07, -6.232751356636499313e-07, -6.266143859713504333e-07, -6.299521436427772429e-07, -6.332884034461134122e-07, -6.366231601524194699e-07, -6.399564085354983197e-07, -6.432881433732543050e-07, -6.466183594461968186e-07, -6.499470515380529201e-07, -6.532742144363712698e-07, -6.565998429310324097e-07, -6.599239318156043340e-07, -6.632464758872067517e-07, -6.665674699457588159e-07, -6.698869087944528266e-07, -6.732047872403429190e-07, -6.765211000927206656e-07, -6.798358421652090478e-07, -6.831490082741308587e-07, -6.864605932391078729e-07, -6.897705918836832042e-07, -6.930789990338061750e-07, -6.963858095192157333e-07, -6.996910181732817396e-07, -7.029946198322665661e-07, -7.062966093357854589e-07, -7.095969815274121669e-07, -7.128957312530409916e-07, -7.161928533629838289e-07, -7.194883427103493715e-07, -7.227821941517758986e-07, -7.260744025473053853e-07, -7.293649627603841381e-07, -7.326538696577326692e-07, -7.359411181099298318e-07, -7.392267029905441879e-07, -7.425106191767380484e-07, -7.457928615491085487e-07, -7.490734249917162361e-07, -7.523523043919298510e-07, -7.556294946410402137e-07, -7.589049906333625818e-07, -7.621787872668532899e-07, -7.654508794429580246e-07, -7.687212620664808526e-07, -7.719899300461779900e-07, -7.752568782938728656e-07, -7.785221017250732893e-07, -7.817855952588073403e-07, -7.850473538176536478e-07, -7.883073723275852200e-07, -7.915656457185794131e-07, -7.948221689237345822e-07, -7.980769368798607807e-07, -8.013299445273570467e-07, -8.045811868102052614e-07, -8.078306586758361068e-07, -8.110783550757236826e-07, -8.143242709645115797e-07, -8.175684013006130033e-07, -8.208107410460602129e-07, -8.240512851663771495e-07, -8.272900286311699233e-07, -8.305269664132497116e-07, -8.337620934892330930e-07, -8.369954048394004869e-07, -8.402268954477115065e-07, -8.434565603016502689e-07, -8.466843943928313417e-07, -8.499103927161241220e-07, -8.531345502702504193e-07, -8.563568620576393998e-07, -8.595773230842924857e-07, -8.627959283603767012e-07, -8.660126728995022593e-07, -8.692275517185781432e-07, -8.724405598391418413e-07, -8.756516922858975808e-07, -8.788609440873232266e-07, -8.820683102760950682e-07, -8.852737858883798060e-07, -8.884773659637031557e-07, -8.916790455462471847e-07, -8.948788196834170266e-07, -8.980766834264284046e-07, -9.012726318308970603e-07, -9.044666599552400851e-07, -9.076587628627263752e-07, -9.108489356198885503e-07, -9.140371732971023250e-07, -9.172234709690326822e-07, -9.204078237139119906e-07, -9.235902266134126309e-07, -9.267706747539566156e-07, -9.299491632252648326e-07, -9.331256871209510275e-07, -9.363002415391111266e-07, -9.394728215807339913e-07, -9.426434223517313326e-07, -9.458120389613631828e-07, -9.489786665229568146e-07, -9.521433001536421493e-07, -9.553059349750546883e-07, -9.584665661117938068e-07, -9.616251886934077763e-07, -9.647817978528425290e-07, -9.679363887270157345e-07, -9.710889564574052762e-07, -9.742394961886059069e-07, -9.773880030696501969e-07, -9.805344722538577618e-07, -9.836788988981237551e-07, -9.868212781635075561e-07, -9.899616052150987269e-07, -9.930998752218641227e-07, -9.962360833572507680e-07, -9.993702247983172237e-07, -1.002502294726323334e-06, -1.005632288326590679e-06, -1.008760200788510408e-06, -1.011886027305401148e-06, -1.015009763075100239e-06, -1.018131403299105048e-06, -1.021250943183152553e-06, -1.024368377937085939e-06, -1.027483702774865815e-06, -1.030596912914421987e-06, -1.033708003578247865e-06, -1.036816969992533943e-06, -1.039923807387761151e-06, -1.043028510998558338e-06, -1.046131076063565478e-06, -1.049231497826016852e-06, -1.052329771532885120e-06, -1.055425892435467681e-06, -1.058519855789243312e-06, -1.061611656853886145e-06, -1.064701290893119976e-06, -1.067788753175309917e-06, -1.070874038972598637e-06, -1.073957143561505846e-06, -1.077038062222759526e-06, -1.080116790241198735e-06, -1.083193322906314011e-06, -1.086267655511432950e-06, -1.089339783354270782e-06, -1.092409701736806485e-06, -1.095477405965301851e-06, -1.098542891350140121e-06, -1.101606153206416368e-06, -1.104667186853090253e-06, -1.107725987613575349e-06, -1.110782550815570368e-06, -1.113836871791101090e-06, -1.116888945876360486e-06, -1.119938768412306508e-06, -1.122986334743789652e-06, -1.126031640220155191e-06, -1.129074680195090926e-06, -1.132115450026494623e-06, -1.135153945077051266e-06, -1.138190160713529597e-06, -1.141224092306663744e-06, -1.144255735232397721e-06, -1.147285084870508578e-06, -1.150312136605175607e-06, -1.153336885825387344e-06, -1.156359327924133916e-06, -1.159379458298957621e-06, -1.162397272351828406e-06, -1.165412765489143662e-06, -1.168425933121600955e-06, -1.171436770664886872e-06, -1.174445273538187943e-06, -1.177451437166104084e-06, -1.180455256977148928e-06, -1.183456728404307593e-06, -1.186455846885464649e-06, -1.189452607862704890e-06, -1.192447006782200045e-06, -1.195439039095438667e-06, -1.198428700257870248e-06, -1.201415985729455789e-06, -1.204400890975219854e-06, -1.207383411463765085e-06, -1.210363542669176335e-06, -1.213341280069529886e-06, -1.216316619147592043e-06, -1.219289555390536434e-06, -1.222260084290652131e-06, -1.225228201343834025e-06, -1.228193902051500935e-06, -1.231157181919118587e-06, -1.234118036456730924e-06, -1.237076461179516176e-06, -1.240032451606444744e-06, -1.242986003261501459e-06, -1.245937111673546254e-06, -1.248885772375657918e-06, -1.251831980905684251e-06, -1.254775732806096367e-06, -1.257717023623872657e-06, -1.260655848911044908e-06, -1.263592204223892992e-06, -1.266526085123355670e-06, -1.269457487175574819e-06, -1.272386405950565158e-06, -1.275312837023414926e-06, -1.278236775974175336e-06, -1.281158218387178720e-06, -1.284077159851598414e-06, -1.286993595961308151e-06, -1.289907522314897096e-06, -1.292818934515536865e-06, -1.295727828171532515e-06, -1.298634198895512147e-06, -1.301538042304975362e-06, -1.304439354022173402e-06, -1.307338129673967064e-06, -1.310234364892382564e-06, -1.313128055313800923e-06, -1.316019196579518922e-06, -1.318907784335604464e-06, -1.321793814232908012e-06, -1.324677281926939558e-06, -1.327558183078400983e-06, -1.330436513352397256e-06, -1.333312268418980229e-06, -1.336185443953015234e-06, -1.339056035634056351e-06, -1.341924039146890206e-06, -1.344789450180729173e-06, -1.347652264429762582e-06, -1.350512477593033680e-06, -1.353370085374433924e-06, -1.356225083482580153e-06, -1.359077467631365376e-06, -1.361927233539270555e-06, -1.364774376929276938e-06, -1.367618893530035599e-06, -1.370460779074561105e-06, -1.373300029300766201e-06, -1.376136639951864786e-06, -1.378970606775587565e-06, -1.381801925524709958e-06, -1.384630591956934365e-06, -1.387456601834759297e-06, -1.390279950926002209e-06, -1.393100635003179895e-06, -1.395918649843349881e-06, -1.398733991229306857e-06, -1.401546654948295828e-06, -1.404356636792520114e-06, -1.407163932559543273e-06, -1.409968538051526135e-06, -1.412770449075731844e-06, -1.415569661444428874e-06, -1.418366170974868580e-06, -1.421159973489192453e-06, -1.423951064815054049e-06, -1.426739440784224352e-06, -1.429525097234403575e-06, -1.432308030007791161e-06, -1.435088234951632537e-06, -1.437865707918596473e-06, -1.440640444766130909e-06, -1.443412441356371900e-06, -1.446181693557257044e-06, -1.448948197241294314e-06, -1.451711948286054613e-06, -1.454472942574696719e-06, -1.457231175994566506e-06, -1.459986644438991595e-06, -1.462739343805890314e-06, -1.465489269998271022e-06, -1.468236418924638053e-06, -1.470980786498343946e-06, -1.473722368637491823e-06, -1.476461161266055593e-06, -1.479197160312636716e-06, -1.481930361710978778e-06, -1.484660761400468299e-06, -1.487388355324883876e-06, -1.490113139433529513e-06, -1.492835109681126204e-06, -1.495554262027179617e-06, -1.498270592436496577e-06, -1.500984096879054201e-06, -1.503694771329894434e-06, -1.506402611769619573e-06, -1.509107614183654073e-06, -1.511809774562618934e-06, -1.514509088902841196e-06, -1.517205553205108797e-06, -1.519899163475810043e-06, -1.522589915726796607e-06, -1.525277805974788269e-06, -1.527962830241850645e-06, -1.530644984555290157e-06, -1.533324264947550907e-06, -1.536000667456689434e-06, -1.538674188125644577e-06, -1.541344823002753739e-06, -1.544012568141621386e-06, -1.546677419601122856e-06, -1.549339373445293192e-06, -1.551998425743822226e-06, -1.554654572571324864e-06, -1.557307810007837023e-06, -1.559958134138693024e-06, -1.562605541054548458e-06, -1.565250026851234289e-06, -1.567891587630287942e-06, -1.570530219498187797e-06, -1.573165918566880254e-06, -1.575798680953638917e-06, -1.578428502780960194e-06, -1.581055380177065588e-06, -1.583679309275155462e-06, -1.586300286213906672e-06, -1.588918307137373249e-06, -1.591533368194973484e-06, -1.594145465541373887e-06, -1.596754595336997822e-06, -1.599360753747285846e-06, -1.601963936943205826e-06, -1.604564141101100902e-06, -1.607161362402730355e-06, -1.609755597035147631e-06, -1.612346841191168756e-06, -1.614935091068683057e-06, -1.617520342871104423e-06, -1.620102592807308837e-06, -1.622681837091469621e-06, -1.625258071943555290e-06, -1.627831293588749961e-06, -1.630401498257342396e-06, -1.632968682185773569e-06, -1.635532841615490208e-06, -1.638093972793395203e-06, -1.640652071972236182e-06, -1.643207135409870076e-06, -1.645759159369758212e-06, -1.648308140120862122e-06, -1.650854073937632115e-06, -1.653396957099895673e-06, -1.655936785893472403e-06, -1.658473556608856688e-06, -1.661007265542886974e-06, -1.663537908997458918e-06, -1.666065483279982574e-06, -1.668589984703766307e-06, -1.671111409587407359e-06, -1.673629754254700365e-06, -1.676145015035705251e-06, -1.678657188265549952e-06, -1.681166270284918942e-06, -1.683672257440534553e-06, -1.686175146083873940e-06, -1.688674932572799827e-06, -1.691171613270290381e-06, -1.693665184544901693e-06, -1.696155642771257151e-06, -1.698642984328867947e-06, -1.701127205603194197e-06, -1.703608302985532285e-06, -1.706086272872447564e-06, -1.708561111666117193e-06, -1.711032815774787532e-06, -1.713501381611663473e-06, -1.715966805595907091e-06, -1.718429084152554209e-06, -1.720888213711923386e-06, -1.723344190710109943e-06, -1.725797011588855524e-06, -1.728246672795427603e-06, -1.730693170783119235e-06, -1.733136502010540091e-06, -1.735576662941961407e-06, -1.738013650047787788e-06, -1.740447459803428530e-06, -1.742878088690313005e-06, -1.745305533195793464e-06, -1.747729789812564605e-06, -1.750150855039155279e-06, -1.752568725379781737e-06, -1.754983397344265050e-06, -1.757394867448478761e-06, -1.759803132213669780e-06, -1.762208188166938223e-06, -1.764610031841094058e-06, -1.767008659774703690e-06, -1.769404068511946384e-06, -1.771796254603083316e-06, -1.774185214603783968e-06, -1.776570945075599192e-06, -1.778953442585822303e-06, -1.781332703707511733e-06, -1.783708725019387270e-06, -1.786081503106281951e-06, -1.788451034558459353e-06, -1.790817315972084331e-06, -1.793180343949103799e-06, -1.795540115097153557e-06, -1.797896626029984558e-06, -1.800249873366830176e-06, -1.802599853732835652e-06, -1.804946563758961742e-06, -1.807290000081970746e-06, -1.809630159344345819e-06, -1.811967038194728898e-06, -1.814300633287243279e-06, -1.816630941281975582e-06, -1.818957958844834508e-06, -1.821281682647594038e-06, -1.823602109367741814e-06, -1.825919235688960041e-06, -1.828233058300455698e-06, -1.830543573897412002e-06, -1.832850779180865593e-06, -1.835154670857627336e-06, -1.837455245640712186e-06, -1.839752500248779727e-06, -1.842046431406061538e-06, -1.844337035843331044e-06, -1.846624310296810845e-06, -1.848908251508631809e-06, -1.851188856227139694e-06, -1.853466121206275972e-06, -1.855740043206000070e-06, -1.858010618992171849e-06, -1.860277845336485318e-06, -1.862541719016859757e-06, -1.864802236816939330e-06, -1.867059395525987416e-06, -1.869313191939833383e-06, -1.871563622859832430e-06, -1.873810685093285716e-06, -1.876054375453748677e-06, -1.878294690760545046e-06, -1.880531627838614172e-06, -1.882765183519513060e-06, -1.884995354640332807e-06, -1.887222138044153664e-06, -1.889445530580439339e-06, -1.891665529103898787e-06, -1.893882130475967678e-06, -1.896095331563651982e-06, -1.898305129239936451e-06, -1.900511520384255356e-06, -1.902714501881381607e-06, -1.904914070622438108e-06, -1.907110223504748042e-06, -1.909302957431343598e-06, -1.911492269311284659e-06, -1.913678156060052891e-06, -1.915860614598445514e-06, -1.918039641854015261e-06, -1.920215234759931962e-06, -1.922387390255509400e-06, -1.924556105286115106e-06, -1.926721376803153834e-06, -1.928883201763990488e-06, -1.931041577132342719e-06, -1.933196499877688848e-06, -1.935347966975579576e-06, -1.937495975408030583e-06, -1.939640522162527687e-06, -1.941781604232933170e-06, -1.943919218619396841e-06, -1.946053362327845272e-06, -1.948184032370410823e-06, -1.950311225765289340e-06, -1.952434939536713894e-06, -1.954555170715287245e-06, -1.956671916337436776e-06, -1.958785173445678342e-06, -1.960894939089063080e-06, -1.963001210322150383e-06, -1.965103984205910838e-06, -1.967203257807663540e-06, -1.969299028200540351e-06, -1.971391292463903482e-06, -1.973480047683264181e-06, -1.975565290950264944e-06, -1.977647019362596928e-06, -1.979725230024397634e-06, -1.981799920045659681e-06, -1.983871086542632293e-06, -1.985938726637721357e-06, -1.988002837459405559e-06, -1.990063416142617132e-06, -1.992120459828169680e-06, -1.994173965663149511e-06, -1.996223930800815686e-06, -1.998270352400635168e-06, -2.000313227628134172e-06, -2.002352553655334386e-06, -2.004388327660165127e-06, -2.006420546826831805e-06, -2.008449208345765520e-06, -2.010474309413487964e-06, -2.012495847233038746e-06, -2.014513819013353250e-06, -2.016528221969703935e-06, -2.018539053323574130e-06, -2.020546310302677092e-06, -2.022549990140836571e-06, -2.024550090078422191e-06, -2.026546607361827248e-06, -2.028539539243409000e-06, -2.030528882982345434e-06, -2.032514635843644245e-06, -2.034496795098606157e-06, -2.036475358025037107e-06, -2.038450321906731980e-06, -2.040421684033833325e-06, -2.042389441702746652e-06, -2.044353592216059542e-06, -2.046314132882899940e-06, -2.048271061018486383e-06, -2.050224373944037363e-06, -2.052174068987600578e-06, -2.054120143483156767e-06, -2.056062594770947937e-06, -2.058001420197810246e-06, -2.059936617116586586e-06, -2.061868182886503514e-06, -2.063796114873098828e-06, -2.065720410448212251e-06, -2.067641066989896072e-06, -2.069558081882884819e-06, -2.071471452517595767e-06, -2.073381176291388048e-06, -2.075287250607591106e-06, -2.077189672875846899e-06, -2.079088440512502496e-06, -2.080983550939682156e-06, -2.082875001586117416e-06, -2.084762789887077218e-06, -2.086646913283877890e-06, -2.088527369224192323e-06, -2.090404155162403601e-06, -2.092277268558597034e-06, -2.094146706879875178e-06, -2.096012467599317250e-06, -2.097874548196451781e-06, -2.099732946157186301e-06, -2.101587658973780670e-06, -2.103438684144794973e-06, -2.105286019175401663e-06, -2.107129661576921377e-06, -2.108969608867014797e-06, -2.110805858570117597e-06, -2.112638408216493461e-06, -2.114467255343084927e-06, -2.116292397493375324e-06, -2.118113832217007601e-06, -2.119931557070091806e-06, -2.121745569615149602e-06, -2.123555867421024484e-06, -2.125362448063215505e-06, -2.127165309123390240e-06, -2.128964448189614323e-06, -2.130759862856732618e-06, -2.132551550725476022e-06, -2.134339509403272497e-06, -2.136123736504134839e-06, -2.137904229648250713e-06, -2.139680986462345612e-06, -2.141454004579555368e-06, -2.143223281639456658e-06, -2.144988815288004313e-06, -2.146750603177830325e-06, -2.148508642967757652e-06, -2.150262932323165285e-06, -2.152013468915868819e-06, -2.153760250424058195e-06, -2.155503274532634821e-06, -2.157242538932721137e-06, -2.158978041321963008e-06, -2.160709779404488218e-06, -2.162437750890908589e-06, -2.164161953498191654e-06, -2.165882384950071469e-06, -2.167599042976481525e-06, -2.169311925313922781e-06, -2.171021029705395481e-06, -2.172726353900288615e-06, -2.174427895654733979e-06, -2.176125652731108966e-06, -2.177819622898375804e-06, -2.179509803931982027e-06, -2.181196193613880806e-06, -2.182878789732448789e-06, -2.184557590082812202e-06, -2.186232592466444092e-06, -2.187903794691078348e-06, -2.189571194571458482e-06, -2.191234789928521086e-06, -2.192894578589711777e-06, -2.194550558389247353e-06, -2.196202727167640610e-06, -2.197851082771974775e-06, -2.199495623055904783e-06, -2.201136345879508195e-06, -2.202773249109648154e-06, -2.204406330619581207e-06, -2.206035588288832368e-06, -2.207661020003971001e-06, -2.209282623657782420e-06, -2.210900397149609671e-06, -2.212514338385639824e-06, -2.214124445278098447e-06, -2.215730715746285103e-06, -2.217333147715747073e-06, -2.218931739118681267e-06, -2.220526487893769480e-06, -2.222117391986547698e-06, -2.223704449348603535e-06, -2.225287657938618505e-06, -2.226867015721545975e-06, -2.228442520668913986e-06, -2.230014170759123402e-06, -2.231581963976711841e-06, -2.233145898313011819e-06, -2.234705971766096964e-06, -2.236262182340406357e-06, -2.237814528046959678e-06, -2.239363006903682466e-06, -2.240907616934545110e-06, -2.242448356170652136e-06, -2.243985222649409994e-06, -2.245518214414813779e-06, -2.247047329517768258e-06, -2.248572566015325540e-06, -2.250093921971386419e-06, -2.251611395456598306e-06, -2.253124984547991428e-06, -2.254634687329216423e-06, -2.256140501890835293e-06, -2.257642426329573053e-06, -2.259140458749018648e-06, -2.260634597259512300e-06, -2.262124839977805424e-06, -2.263611185027353700e-06, -2.265093630538224324e-06, -2.266572174647059583e-06, -2.268046815497350030e-06, -2.269517551238987242e-06, -2.270984380028519630e-06, -2.272447300029423486e-06, -2.273906309411367760e-06, -2.275361406350887877e-06, -2.276812589031313735e-06, -2.278259855642400822e-06, -2.279703204380624142e-06, -2.281142633449115106e-06, -2.282578141057585722e-06, -2.284009725422623791e-06, -2.285437384767243128e-06, -2.286861117321202047e-06, -2.288280921320908920e-06, -2.289696795009449278e-06, -2.291108736636484168e-06, -2.292516744458584311e-06, -2.293920816738741782e-06, -2.295320951746714757e-06, -2.296717147758919090e-06, -2.298109403058445255e-06, -2.299497715935007523e-06, -2.300882084685189180e-06, -2.302262507612048655e-06, -2.303638983025406664e-06, -2.305011509241748378e-06, -2.306380084584196741e-06, -2.307744707382742020e-06, -2.309105375973886891e-06, -2.310462088700869638e-06, -2.311814843913627728e-06, -2.313163639968808400e-06, -2.314508475229663207e-06, -2.315849348066357189e-06, -2.317186256855549582e-06, -2.318519199980676738e-06, -2.319848175831855131e-06, -2.321173182805921171e-06, -2.322494219306361327e-06, -2.323811283743552252e-06, -2.325124374534383441e-06, -2.326433490102527000e-06, -2.327738628878361000e-06, -2.329039789298917376e-06, -2.330336969808142393e-06, -2.331630168856556987e-06, -2.332919384901223306e-06, -2.334204616406309680e-06, -2.335485861842430784e-06, -2.336763119686945368e-06, -2.338036388424177759e-06, -2.339305666544753361e-06, -2.340570952546434678e-06, -2.341832244933507216e-06, -2.343089542216958204e-06, -2.344342842914693012e-06, -2.345592145551243352e-06, -2.346837448657678332e-06, -2.348078750772177057e-06, -2.349316050439416223e-06, -2.350549346210803046e-06, -2.351778636644738697e-06, -2.353003920306005891e-06, -2.354225195766299132e-06, -2.355442461604192950e-06, -2.356655716404816215e-06, -2.357864958760055849e-06, -2.359070187268776211e-06, -2.360271400536188473e-06, -2.361468597174670980e-06, -2.362661775803107713e-06, -2.363850935047143668e-06, -2.365036073539422453e-06, -2.366217189918971339e-06, -2.367394282831774278e-06, -2.368567350930680424e-06, -2.369736392875143249e-06, -2.370901407331345051e-06, -2.372062392972493847e-06, -2.373219348478142775e-06, -2.374372272535018073e-06, -2.375521163836388459e-06, -2.376666021082330681e-06, -2.377806842979712573e-06, -2.378943628242166797e-06, -2.380076375590030281e-06, -2.381205083750602564e-06, -2.382329751457752773e-06, -2.383450377452223283e-06, -2.384566960481509016e-06, -2.385679499299886663e-06, -2.386787992668348192e-06, -2.387892439354854960e-06, -2.388992838133956968e-06, -2.390089187787054172e-06, -2.391181487102318982e-06, -2.392269734874655600e-06, -2.393353929905945663e-06, -2.394434071004645054e-06, -2.395510156986085024e-06, -2.396582186672363344e-06, -2.397650158892383697e-06, -2.398714072481769700e-06, -2.399773926283112241e-06, -2.400829719145612877e-06, -2.401881449925353611e-06, -2.402929117485159254e-06, -2.403972720694698644e-06, -2.405012258430341070e-06, -2.406047729575447234e-06, -2.407079133019987658e-06, -2.408106467660787055e-06, -2.409129732401489601e-06, -2.410148926152464488e-06, -2.411164047831039710e-06, -2.412175096361204326e-06, -2.413182070673782104e-06, -2.414184969706400605e-06, -2.415183792403500922e-06, -2.416178537716278391e-06, -2.417169204602869780e-06, -2.418155792028082667e-06, -2.419138298963563997e-06, -2.420116724387789493e-06, -2.421091067286015804e-06, -2.422061326650280498e-06, -2.423027501479612130e-06, -2.423989590779521176e-06, -2.424947593562654363e-06, -2.425901508848283064e-06, -2.426851335662485407e-06, -2.427797073038300016e-06, -2.428738720015487988e-06, -2.429676275640456669e-06, -2.430609738966753041e-06, -2.431539109054511465e-06, -2.432464384970694231e-06, -2.433385565789277066e-06, -2.434302650590707024e-06, -2.435215638462586897e-06, -2.436124528499146662e-06, -2.437029319801424746e-06, -2.437930011477441668e-06, -2.438826602641921792e-06, -2.439719092416282733e-06, -2.440607479929015257e-06, -2.441491764315279666e-06, -2.442371944717032431e-06, -2.443248020283239647e-06, -2.444119990169422592e-06, -2.444987853538059653e-06, -2.445851609558526604e-06, -2.446711257406910264e-06, -2.447566796266103358e-06, -2.448418225325995105e-06, -2.449265543783007043e-06, -2.450108750840675786e-06, -2.450947845709204942e-06, -2.451782827605613773e-06, -2.452613695753918033e-06, -2.453440449384694167e-06, -2.454263087735479538e-06, -2.455081610050727534e-06, -2.455896015581580139e-06, -2.456706303586020819e-06, -2.457512473329023184e-06, -2.458314524082065628e-06, -2.459112455123790755e-06, -2.459906265739474705e-06, -2.460695955221262631e-06, -2.461481522868137360e-06, -2.462262967985907536e-06, -2.463040289887170769e-06, -2.463813487891459330e-06, -2.464582561325036436e-06, -2.465347509521009331e-06, -2.466108331819340296e-06, -2.466865027566795828e-06, -2.467617596116928853e-06, -2.468366036830276505e-06, -2.469110349074054351e-06, -2.469850532222350782e-06, -2.470586585656091441e-06, -2.471318508762977809e-06, -2.472046300937674825e-06, -2.472769961581541955e-06, -2.473489490102831393e-06, -2.474204885916596162e-06, -2.474916148444741358e-06, -2.475623277115941563e-06, -2.476326271365837360e-06, -2.477025130636767244e-06, -2.477719854377941688e-06, -2.478410442045391051e-06, -2.479096893102002424e-06, -2.479779207017429420e-06, -2.480457383268263700e-06, -2.481131421337836764e-06, -2.481801320716316943e-06, -2.482467080900719553e-06, -2.483128701394842106e-06, -2.483786181709437102e-06, -2.484439521361954106e-06, -2.485088719876709156e-06, -2.485733776784861467e-06, -2.486374691624381250e-06, -2.487011463940032341e-06, -2.487644093283518740e-06, -2.488272579213265232e-06, -2.488896921294547826e-06, -2.489517119099480207e-06, -2.490133172206952320e-06, -2.490745080202794702e-06, -2.491352842679597632e-06, -2.491956459236660318e-06, -2.492555929480319115e-06, -2.493151253023600244e-06, -2.493742429486348966e-06, -2.494329458495338424e-06, -2.494912339684091766e-06, -2.495491072692863936e-06, -2.496065657168921615e-06, -2.496636092766223469e-06, -2.497202379145566683e-06, -2.497764515974678444e-06, -2.498322502927878394e-06, -2.498876339686552974e-06, -2.499426025938753925e-06, -2.499971561379378708e-06, -2.500512945710220481e-06, -2.501050178639828759e-06, -2.501583259883489087e-06, -2.502112189163486044e-06, -2.502636966208792378e-06, -2.503157590755188022e-06, -2.503674062545424833e-06, -2.504186381328800965e-06, -2.504694546861708895e-06, -2.505198558907185227e-06, -2.505698417235126260e-06, -2.506194121622213453e-06, -2.506685671852053181e-06, -2.507173067714859946e-06, -2.507656309007862955e-06, -2.508135395534988904e-06, -2.508610327106977174e-06, -2.509081103541483172e-06, -2.509547724662806006e-06, -2.510010190302125233e-06, -2.510468500297504247e-06, -2.510922654493711132e-06, -2.511372652742348681e-06, -2.511818494901835335e-06, -2.512260180837366649e-06, -2.512697710421014390e-06, -2.513131083531563907e-06, -2.513560300054630600e-06, -2.513985359882711167e-06, -2.514406262914952357e-06, -2.514823009057377984e-06, -2.515235598222876638e-06, -2.515644030331033552e-06, -2.516048305308275020e-06, -2.516448423087817578e-06, -2.516844383609665034e-06, -2.517236186820611437e-06, -2.517623832674287663e-06, -2.518007321131074169e-06, -2.518386652158157322e-06, -2.518761825729503565e-06, -2.519132841825862379e-06, -2.519499700434820498e-06, -2.519862401550715928e-06, -2.520220945174667178e-06, -2.520575331314579606e-06, -2.520925559985171255e-06, -2.521271631207903824e-06, -2.521613545011078801e-06, -2.521951301429735398e-06, -2.522284900505690361e-06, -2.522614342287571003e-06, -2.522939626830731777e-06, -2.523260754197391485e-06, -2.523577724456482094e-06, -2.523890537683713950e-06, -2.524199193961586366e-06, -2.524503693379364335e-06, -2.524804036033089957e-06, -2.525100222025586255e-06, -2.525392251466438541e-06, -2.525680124472000343e-06, -2.525963841165384935e-06, -2.526243401676488207e-06, -2.526518806141942080e-06, -2.526790054705201747e-06, -2.527057147516430057e-06, -2.527320084732569933e-06, -2.527578866517333361e-06, -2.527833493041160735e-06, -2.528083964481316992e-06, -2.528330281021773878e-06, -2.528572442853221377e-06, -2.528810450173195198e-06, -2.529044303185932770e-06, -2.529274002102402473e-06, -2.529499547140396383e-06, -2.529720938524386700e-06, -2.529938176485618503e-06, -2.530151261262086026e-06, -2.530360193098519957e-06, -2.530564972246389556e-06, -2.530765598963964061e-06, -2.530962073516146676e-06, -2.531154396174689285e-06, -2.531342567218025171e-06, -2.531526586931302470e-06, -2.531706455606486239e-06, -2.531882173542214038e-06, -2.532053741043818798e-06, -2.532221158423474510e-06, -2.532384426000008613e-06, -2.532543544098971442e-06, -2.532698513052714163e-06, -2.532849333200193949e-06, -2.532996004887206073e-06, -2.533138528466214072e-06, -2.533276904296393798e-06, -2.533411132743657978e-06, -2.533541214180663840e-06, -2.533667148986722054e-06, -2.533788937547912356e-06, -2.533906580257003499e-06, -2.534020077513460457e-06, -2.534129429723522773e-06, -2.534234637300043198e-06, -2.534335700662647785e-06, -2.534432620237658802e-06, -2.534525396458079494e-06, -2.534614029763644049e-06, -2.534698520600756619e-06, -2.534778869422524350e-06, -2.534855076688782795e-06, -2.534927142866033654e-06, -2.534995068427458755e-06, -2.535058853852987389e-06, -2.535118499629173916e-06, -2.535174006249279079e-06, -2.535225374213284827e-06, -2.535272604027808343e-06, -2.535315696206189285e-06, -2.535354651268425415e-06, -2.535389469741199278e-06, -2.535420152157863380e-06, -2.535446699058466872e-06, -2.535469110989708957e-06, -2.535487388504968117e-06, -2.535501532164298304e-06, -2.535511542534417074e-06, -2.535517420188710253e-06, -2.535519165707228966e-06, -2.535516779676679479e-06, -2.535510262690430394e-06, -2.535499615348515193e-06, -2.535484838257603012e-06, -2.535465932031069373e-06, -2.535442897288888182e-06, -2.535415734657702037e-06, -2.535384444770805286e-06, -2.535349028268130473e-06, -2.535309485796280103e-06, -2.535265818008459729e-06, -2.535218025564552908e-06, -2.535166109131065302e-06, -2.535110069381139501e-06, -2.535049906994542314e-06, -2.534985622657697808e-06, -2.534917217063643680e-06, -2.534844690912040580e-06, -2.534768044909182273e-06, -2.534687279768010461e-06, -2.534602396208048717e-06, -2.534513394955465584e-06, -2.534420276743039855e-06, -2.534323042310171152e-06, -2.534221692402862992e-06, -2.534116227773734642e-06, -2.534006649182019424e-06, -2.533892957393563450e-06, -2.533775153180800627e-06, -2.533653237322767485e-06, -2.533527210605127742e-06, -2.533397073820104536e-06, -2.533262827766549463e-06, -2.533124473249896412e-06, -2.532982011082165799e-06, -2.532835442081981934e-06, -2.532684767074532360e-06, -2.532529986891609362e-06, -2.532371102371579892e-06, -2.532208114359392773e-06, -2.532041023706571074e-06, -2.531869831271218463e-06, -2.531694537918020053e-06, -2.531515144518201324e-06, -2.531331651949589105e-06, -2.531144061096556521e-06, -2.530952372850058566e-06, -2.530756588107574504e-06, -2.530556707773200621e-06, -2.530352732757534183e-06, -2.530144663977758133e-06, -2.529932502357599172e-06, -2.529716248827320550e-06, -2.529495904323755107e-06, -2.529271469790265035e-06, -2.529042946176744846e-06, -2.528810334439669648e-06, -2.528573635542004095e-06, -2.528332850453262098e-06, -2.528087980149505556e-06, -2.527839025613301583e-06, -2.527585987833754268e-06, -2.527328867806505947e-06, -2.527067666533695700e-06, -2.526802385024003395e-06, -2.526533024292604796e-06, -2.526259585361210101e-06, -2.525982069258027099e-06, -2.525700477017768794e-06, -2.525414809681665257e-06, -2.525125068297447964e-06, -2.524831253919344285e-06, -2.524533367608091040e-06, -2.524231410430912472e-06, -2.523925383461511357e-06, -2.523615287780096531e-06, -2.523301124473376112e-06, -2.522982894634508377e-06, -2.522660599363179684e-06, -2.522334239765508335e-06, -2.522003816954118694e-06, -2.521669332048106879e-06, -2.521330786173022551e-06, -2.520988180460900683e-06, -2.520641516050238680e-06, -2.520290794085997236e-06, -2.519936015719584659e-06, -2.519577182108884400e-06, -2.519214294418222018e-06, -2.518847353818377888e-06, -2.518476361486596941e-06, -2.518101318606526828e-06, -2.517722226368299663e-06, -2.517339085968475691e-06, -2.516951898610048374e-06, -2.516560665502456669e-06, -2.516165387861549881e-06, -2.515766066909614763e-06, -2.515362703875379756e-06, -2.514955299993976444e-06, -2.514543856506962005e-06, -2.514128374662326407e-06, -2.513708855714439895e-06, -2.513285300924108471e-06, -2.512857711558538738e-06, -2.512426088891346378e-06, -2.511990434202536664e-06, -2.511550748778551896e-06, -2.511107033912172720e-06, -2.510659290902612578e-06, -2.510207521055455866e-06, -2.509751725682690127e-06, -2.509291906102695039e-06, -2.508828063640181004e-06, -2.508360199626267074e-06, -2.507888315398495777e-06, -2.507412412300697165e-06, -2.506932491683112060e-06, -2.506448554902372571e-06, -2.505960603321393250e-06, -2.505468638309520170e-06, -2.504972661242422929e-06, -2.504472673502151824e-06, -2.503968676477087029e-06, -2.503460671561930125e-06, -2.502948660157751534e-06, -2.502432643672005342e-06, -2.501912623518394196e-06, -2.501388601117011608e-06, -2.500860577894278424e-06, -2.500328555282916994e-06, -2.499792534721977850e-06, -2.499252517656894341e-06, -2.498708505539320001e-06, -2.498160499827273397e-06, -2.497608501985109321e-06, -2.497052513483402755e-06, -2.496492535799158930e-06, -2.495928570415571924e-06, -2.495360618822175433e-06, -2.494788682514834723e-06, -2.494212762995602638e-06, -2.493632861772951682e-06, -2.493048980361562690e-06, -2.492461120282374373e-06, -2.491869283062663794e-06, -2.491273470235968008e-06, -2.490673683342022237e-06, -2.490069923926970353e-06, -2.489462193543069265e-06, -2.488850493748937099e-06, -2.488234826109402005e-06, -2.487615192195574150e-06, -2.486991593584799136e-06, -2.486364031860681291e-06, -2.485732508613025646e-06, -2.485097025437918409e-06, -2.484457583937700698e-06, -2.483814185720840224e-06, -2.483166832402192594e-06, -2.482515525602743818e-06, -2.481860266949681034e-06, -2.481201058076457730e-06, -2.480537900622728943e-06, -2.479870796234363124e-06, -2.479199746563453990e-06, -2.478524753268222695e-06, -2.477845818013196555e-06, -2.477162942469030319e-06, -2.476476128312600197e-06, -2.475785377226966583e-06, -2.475090690901384224e-06, -2.474392071031247163e-06, -2.473689519318168782e-06, -2.472983037469944531e-06, -2.472272627200528217e-06, -2.471558290230026913e-06, -2.470840028284759835e-06, -2.470117843097115613e-06, -2.469391736405723391e-06, -2.468661709955324928e-06, -2.467927765496847017e-06, -2.467189904787351510e-06, -2.466448129589979838e-06, -2.465702441674078796e-06, -2.464952842815122615e-06, -2.464199334794693904e-06, -2.463441919400521343e-06, -2.462680598426466556e-06, -2.461915373672443637e-06, -2.461146246944557647e-06, -2.460373220054997037e-06, -2.459596294822058636e-06, -2.458815473070137485e-06, -2.458030756629759451e-06, -2.457242147337468572e-06, -2.456449647035989682e-06, -2.455653257574087385e-06, -2.454852980806623651e-06, -2.454048818594572642e-06, -2.453240772804896192e-06, -2.452428845310677223e-06, -2.451613037991170982e-06, -2.450793352731502233e-06, -2.449969791422994328e-06, -2.449142355963026902e-06, -2.448311048254921104e-06, -2.447475870208153896e-06, -2.446636823738216173e-06, -2.445793910766639444e-06, -2.444947133221014469e-06, -2.444096493034885805e-06, -2.443241992147885632e-06, -2.442383632505751968e-06, -2.441521416060073710e-06, -2.440655344768567193e-06, -2.439785420594969886e-06, -2.438911645508932816e-06, -2.438034021486174309e-06, -2.437152550508507516e-06, -2.436267234563548188e-06, -2.435378075645045863e-06, -2.434485075752714464e-06, -2.433588236892144204e-06, -2.432687561075125153e-06, -2.431783050319176713e-06, -2.430874706647968591e-06, -2.429962532091092102e-06, -2.429046528683989019e-06, -2.428126698468250995e-06, -2.427203043491339199e-06, -2.426275565806578386e-06, -2.425344267473352985e-06, -2.424409150556999525e-06, -2.423470217128641039e-06, -2.422527469265578821e-06, -2.421580909050796908e-06, -2.420630538573358491e-06, -2.419676359928198397e-06, -2.418718375216172632e-06, -2.417756586544052461e-06, -2.416790996024552352e-06, -2.415821605776190647e-06, -2.414848417923477594e-06, -2.413871434596826842e-06, -2.412890657932402119e-06, -2.411906090072462829e-06, -2.410917733165043867e-06, -2.409925589364002213e-06, -2.408929660829150754e-06, -2.407929949726159615e-06, -2.406926458226545139e-06, -2.405919188507737230e-06, -2.404908142752891736e-06, -2.403893323151139475e-06, -2.402874731897473156e-06, -2.401852371192547902e-06, -2.400826243243105195e-06, -2.399796350261598479e-06, -2.398762694466244838e-06, -2.397725278081183808e-06, -2.396684103336345241e-06, -2.395639172467478957e-06, -2.394590487716153039e-06, -2.393538051329771633e-06, -2.392481865561418237e-06, -2.391421932670103041e-06, -2.390358254920592244e-06, -2.389290834583437284e-06, -2.388219673934995160e-06, -2.387144775257321287e-06, -2.386066140838348641e-06, -2.384983772971731057e-06, -2.383897673956900831e-06, -2.382807846099041189e-06, -2.381714291709154047e-06, -2.380617013103845296e-06, -2.379516012605610241e-06, -2.378411292542642607e-06, -2.377302855248877304e-06, -2.376190703064016269e-06, -2.375074838333365829e-06, -2.373955263408093359e-06, -2.372831980645045588e-06, -2.371704992406758342e-06, -2.370574301061515836e-06, -2.369439908983335852e-06, -2.368301818551796095e-06, -2.367160032152266705e-06, -2.366014552175953880e-06, -2.364865381019462805e-06, -2.363712521085274533e-06, -2.362555974781548626e-06, -2.361395744521982547e-06, -2.360231832726070006e-06, -2.359064241818926046e-06, -2.357892974231331515e-06, -2.356718032399753392e-06, -2.355539418766187664e-06, -2.354357135778348637e-06, -2.353171185889743900e-06, -2.351981571559237254e-06, -2.350788295251492133e-06, -2.349591359436821261e-06, -2.348390766590990557e-06, -2.347186519195548212e-06, -2.345978619737583705e-06, -2.344767070709815473e-06, -2.343551874610540938e-06, -2.342333033943716969e-06, -2.341110551218692225e-06, -2.339884428950731890e-06, -2.338654669660367151e-06, -2.337421275873863611e-06, -2.336184250123101850e-06, -2.334943594945305958e-06, -2.333699312883556834e-06, -2.332451406486350459e-06, -2.331199878307635588e-06, -2.329944730907062354e-06, -2.328685966849797617e-06, -2.327423588706380967e-06, -2.326157599053208801e-06, -2.324888000471866867e-06, -2.323614795549655418e-06, -2.322337986879388046e-06, -2.321057577059205755e-06, -2.319773568693042833e-06, -2.318485964390178343e-06, -2.317194766765319562e-06, -2.315899978438780700e-06, -2.314601602036382528e-06, -2.313299640189215632e-06, -2.311994095534162188e-06, -2.310684970713403830e-06, -2.309372268374511019e-06, -2.308055991170642091e-06, -2.306736141760387405e-06, -2.305412722807772305e-06, -2.304085736982313027e-06, -2.302755186958837553e-06, -2.301421075417731244e-06, -2.300083405044835628e-06, -2.298742178531192164e-06, -2.297397398573583927e-06, -2.296049067874059148e-06, -2.294697189139956625e-06, -2.293341765084186939e-06, -2.291982798424999098e-06, -2.290620291886033894e-06, -2.289254248196382781e-06, -2.287884670090376532e-06, -2.286511560307839777e-06, -2.285134921593966064e-06, -2.283754756699275083e-06, -2.282371068379677468e-06, -2.280983859396487073e-06, -2.279593132516199903e-06, -2.278198890510820638e-06, -2.276801136157665704e-06, -2.275399872239354377e-06, -2.273995101543857909e-06, -2.272586826864522401e-06, -2.271175050999850690e-06, -2.269759776753811941e-06, -2.268341006935643014e-06, -2.266918744359892093e-06, -2.265492991846453408e-06, -2.264063752220338962e-06, -2.262631028312025394e-06, -2.261194822957212143e-06, -2.259755138996882445e-06, -2.258311979277288924e-06, -2.256865346649995102e-06, -2.255415243971676768e-06, -2.253961674104422677e-06, -2.252504639915512199e-06, -2.251044144277477157e-06, -2.249580190068085731e-06, -2.248112780170396246e-06, -2.246641917472518307e-06, -2.245167604867975755e-06, -2.243689845255433071e-06, -2.242208641538767382e-06, -2.240723996627137483e-06, -2.239235913434709832e-06, -2.237744394880966440e-06, -2.236249443890760779e-06, -2.234751063393785843e-06, -2.233249256325128532e-06, -2.231744025625067633e-06, -2.230235374238798962e-06, -2.228723305117106209e-06, -2.227207821215510944e-06, -2.225688925494918054e-06, -2.224166620921325636e-06, -2.222640910465929182e-06, -2.221111797104826384e-06, -2.219579283819648604e-06, -2.218043373596743480e-06, -2.216504069427798773e-06, -2.214961374309642460e-06, -2.213415291243931454e-06, -2.211865823237833889e-06, -2.210312973303383255e-06, -2.208756744457611384e-06, -2.207197139722795782e-06, -2.205634162126309283e-06, -2.204067814700351114e-06, -2.202498100482600806e-06, -2.200925022515381746e-06, -2.199348583846318057e-06, -2.197768787528092762e-06, -2.196185636618152600e-06, -2.194599134179393696e-06, -2.193009283279538145e-06, -2.191416086991210245e-06, -2.189819548392235499e-06, -2.188219670565485188e-06, -2.186616456598557033e-06, -2.185009909584440124e-06, -2.183400032620939353e-06, -2.181786828810717772e-06, -2.180170301261617614e-06, -2.178550453086386705e-06, -2.176927287402775870e-06, -2.175300807333547830e-06, -2.173671016006227745e-06, -2.172037916553522925e-06, -2.170401512113056861e-06, -2.168761805827164237e-06, -2.167118800843495295e-06, -2.165472500314440273e-06, -2.163822907397206485e-06, -2.162170025254091490e-06, -2.160513857052269639e-06, -2.158854405963796733e-06, -2.157191675165731575e-06, -2.155525667839803506e-06, -2.153856387172849052e-06, -2.152183836356532828e-06, -2.150508018587388617e-06, -2.148828937066826149e-06, -2.147146595001195894e-06, -2.145460995601501500e-06, -2.143772142083819495e-06, -2.142080037669000283e-06, -2.140384685582733793e-06, -2.138686089055573616e-06, -2.136984251322952252e-06, -2.135279175624929545e-06, -2.133570865206602639e-06, -2.131859323317798939e-06, -2.130144553213159958e-06, -2.128426558152214589e-06, -2.126705341399073330e-06, -2.124980906222837816e-06, -2.123253255897331047e-06, -2.121522393701157098e-06, -2.119788322917690536e-06, -2.118051046835154766e-06, -2.116310568746299314e-06, -2.114566891948869932e-06, -2.112820019745273167e-06, -2.111069955442659801e-06, -2.109316702352912564e-06, -2.107560263792735920e-06, -2.105800643083324881e-06, -2.104037843550817740e-06, -2.102271868525988604e-06, -2.100502721344328706e-06, -2.098730405346090026e-06, -2.096954923876004926e-06, -2.095176280283638938e-06, -2.093394477923457257e-06, -2.091609520154175487e-06, -2.089821410339444048e-06, -2.088030151847607615e-06, -2.086235748051353179e-06, -2.084438202328549878e-06, -2.082637518061173265e-06, -2.080833698636156154e-06, -2.079026747445052347e-06, -2.077216667883821488e-06, -2.075403463353185665e-06, -2.073587137258725544e-06, -2.071767693010160397e-06, -2.069945134022116779e-06, -2.068119463713813859e-06, -2.066290685508763992e-06, -2.064458802835509216e-06, -2.062623819126948282e-06, -2.060785737820397639e-06, -2.058944562357963711e-06, -2.057100296186299370e-06, -2.055252942756320604e-06, -2.053402505524023482e-06, -2.051548987949390634e-06, -2.049692393497248869e-06, -2.047832725636975261e-06, -2.045969987842126140e-06, -2.044104183591251946e-06, -2.042235316367171740e-06, -2.040363389657054944e-06, -2.038488406952795307e-06, -2.036610371750778392e-06, -2.034729287551549544e-06, -2.032845157860698186e-06, -2.030957986187712635e-06, -2.029067776046864404e-06, -2.027174530956810516e-06, -2.025278254440647298e-06, -2.023378950025920115e-06, -2.021476621244683511e-06, -2.019571271633204750e-06, -2.017662904732394531e-06, -2.015751524087509677e-06, -2.013837133248206503e-06, -2.011919735768565798e-06, -2.009999335207135179e-06, -2.008075935126614846e-06, -2.006149539094334029e-06, -2.004220150681920230e-06, -2.002287773465376299e-06, -2.000352411025143537e-06, -1.998414066945799310e-06, -1.996472744816484794e-06, -1.994528448230639013e-06, -1.992581180786026787e-06, -1.990630946084747204e-06, -1.988677747733316204e-06, -1.986721589342313369e-06, -1.984762474526888024e-06, -1.982800406906407294e-06, -1.980835390104546736e-06, -1.978867427749273825e-06, -1.976896523472925878e-06, -1.974922680911880982e-06, -1.972945903707028945e-06, -1.970966195503451543e-06, -1.968983559950491549e-06, -1.966998000701835323e-06, -1.965009521415159594e-06, -1.963018125752631641e-06, -1.961023817380589528e-06, -1.959026599969585311e-06, -1.957026477194395200e-06, -1.955023452734090707e-06, -1.953017530271707882e-06, -1.951008713494738169e-06, -1.948997006094773498e-06, -1.946982411767626989e-06, -1.944964934213334643e-06, -1.942944577135888105e-06, -1.940921344243680629e-06, -1.938895239249203411e-06, -1.936866265869090488e-06, -1.934834427824120852e-06, -1.932799728839318398e-06, -1.930762172643577542e-06, -1.928721762970094355e-06, -1.926678503556443221e-06, -1.924632398143795026e-06, -1.922583450477785367e-06, -1.920531664308143129e-06, -1.918477043388348702e-06, -1.916419591476583091e-06, -1.914359312334503095e-06, -1.912296209728179829e-06, -1.910230287427759905e-06, -1.908161549207191845e-06, -1.906089998844647474e-06, -1.904015640122607475e-06, -1.901938476827089742e-06, -1.899858512748479680e-06, -1.897775751681189279e-06, -1.895690197423315333e-06, -1.893601853777567366e-06, -1.891510724550064209e-06, -1.889416813551263621e-06, -1.887320124595536863e-06, -1.885220661501333660e-06, -1.883118428090736875e-06, -1.881013428190392970e-06, -1.878905665630337811e-06, -1.876795144244891133e-06, -1.874681867872332549e-06, -1.872565840354540717e-06, -1.870447065537865568e-06, -1.868325547272319605e-06, -1.866201289411668533e-06, -1.864074295813858589e-06, -1.861944570340748454e-06, -1.859812116857755195e-06, -1.857676939234810565e-06, -1.855539041345105065e-06, -1.853398427066093158e-06, -1.851255100279007076e-06, -1.849109064868941519e-06, -1.846960324724871024e-06, -1.844808883739703323e-06, -1.842654745809940957e-06, -1.840497914836178273e-06, -1.838338394722789288e-06, -1.836176189377946751e-06, -1.834011302713661317e-06, -1.831843738645843383e-06, -1.829673501093950505e-06, -1.827500593981500493e-06, -1.825325021235719467e-06, -1.823146786787637572e-06, -1.820965894572134295e-06, -1.818782348527598379e-06, -1.816596152596466538e-06, -1.814407310724830434e-06, -1.812215826862546578e-06, -1.810021704963212190e-06, -1.807824948984252444e-06, -1.805625562886564714e-06, -1.803423550635024675e-06, -1.801218916198151093e-06, -1.799011663548165747e-06, -1.796801796660992377e-06, -1.794589319516358110e-06, -1.792374236097380111e-06, -1.790156550391159143e-06, -1.787936266388368751e-06, -1.785713388083344841e-06, -1.783487919474189862e-06, -1.781259864562377453e-06, -1.779029227353304077e-06, -1.776796011855919498e-06, -1.774560222082798570e-06, -1.772321862050159024e-06, -1.770080935777921394e-06, -1.767837447289328068e-06, -1.765591400611523714e-06, -1.763342799775147433e-06, -1.761091648814437794e-06, -1.758837951767302924e-06, -1.756581712674949297e-06, -1.754322935582337859e-06, -1.752061624538287580e-06, -1.749797783594590517e-06, -1.747531416806967898e-06, -1.745262528234694682e-06, -1.742991121940274290e-06, -1.740717201989955302e-06, -1.738440772453762580e-06, -1.736161837404682004e-06, -1.733880400919576324e-06, -1.731596467078808015e-06, -1.729310039965850495e-06, -1.727021123668329972e-06, -1.724729722276680358e-06, -1.722435839885184692e-06, -1.720139480591596096e-06, -1.717840648496823738e-06, -1.715539347705426014e-06, -1.713235582325687207e-06, -1.710929356468749702e-06, -1.708620674249559695e-06, -1.706309539786494503e-06, -1.703995957200947724e-06, -1.701679930618403494e-06, -1.699361464167054334e-06, -1.697040561978876462e-06, -1.694717228189137667e-06, -1.692391466936565230e-06, -1.690063282362877519e-06, -1.687732678613839389e-06, -1.685399659837868393e-06, -1.683064230187136977e-06, -1.680726393817155959e-06, -1.678386154886356089e-06, -1.676043517557113810e-06, -1.673698485994796226e-06, -1.671351064367913356e-06, -1.669001256848557322e-06, -1.666649067612020971e-06, -1.664294500836874535e-06, -1.661937560705091832e-06, -1.659578251401604310e-06, -1.657216577114905191e-06, -1.654852542036775452e-06, -1.652486150361813094e-06, -1.650117406288485997e-06, -1.647746314018186000e-06, -1.645372877755329696e-06, -1.642997101707882111e-06, -1.640618990086898035e-06, -1.638238547106638067e-06, -1.635855776984596142e-06, -1.633470683941525366e-06, -1.631083272201078662e-06, -1.628693545990386871e-06, -1.626301509539648151e-06, -1.623907167082230893e-06, -1.621510522854752918e-06, -1.619111581096686338e-06, -1.616710346050948992e-06, -1.614306821963478606e-06, -1.611901013083352009e-06, -1.609492923662765651e-06, -1.607082557957121581e-06, -1.604669920224629335e-06, -1.602255014726893785e-06, -1.599837845728514061e-06, -1.597418417497177789e-06, -1.594996734303729273e-06, -1.592572800421795956e-06, -1.590146620128358052e-06, -1.587718197703352552e-06, -1.585287537429758989e-06, -1.582854643593601348e-06, -1.580419520484027044e-06, -1.577982172392904375e-06, -1.575542603615427727e-06, -1.573100818449688336e-06, -1.570656821196787584e-06, -1.568210616160807772e-06, -1.565762207648944894e-06, -1.563311599971031124e-06, -1.560858797440208415e-06, -1.558403804372451200e-06, -1.555946625086719702e-06, -1.553487263904999323e-06, -1.551025725151923713e-06, -1.548562013155249110e-06, -1.546096132245995155e-06, -1.543628086757461706e-06, -1.541157881026268775e-06, -1.538685519391951440e-06, -1.536211006196623359e-06, -1.533734345785598913e-06, -1.531255542506965461e-06, -1.528774600711702342e-06, -1.526291524753629844e-06, -1.523806318989545786e-06, -1.521318987778673681e-06, -1.518829535483824223e-06, -1.516337966469895622e-06, -1.513844285105041444e-06, -1.511348495760235242e-06, -1.508850602808959056e-06, -1.506350610627687705e-06, -1.503848523596029185e-06, -1.501344346095743163e-06, -1.498838082511791095e-06, -1.496329737231918208e-06, -1.493819314646198648e-06, -1.491306819148234451e-06, -1.488792255133612254e-06, -1.486275627001099301e-06, -1.483756939152095625e-06, -1.481236195990835857e-06, -1.478713401923846699e-06, -1.476188561361117522e-06, -1.473661678714609167e-06, -1.471132758399396169e-06, -1.468601804833245356e-06, -1.466068822436184923e-06, -1.463533815631562163e-06, -1.460996788845070651e-06, -1.458457746504851675e-06, -1.455916693042013891e-06, -1.453373632890217430e-06, -1.450828570485764531e-06, -1.448281510267677255e-06, -1.445732456677291758e-06, -1.443181414158875988e-06, -1.440628387159317344e-06, -1.438073380127654685e-06, -1.435516397516182234e-06, -1.432957443779458542e-06, -1.430396523374383147e-06, -1.427833640760767899e-06, -1.425268800400871304e-06, -1.422702006759508211e-06, -1.420133264304153153e-06, -1.417562577504480621e-06, -1.414989950833038663e-06, -1.412415388764780268e-06, -1.409838895777180673e-06, -1.407260476350220856e-06, -1.404680134966491286e-06, -1.402097876110745971e-06, -1.399513704270551700e-06, -1.396927623935858813e-06, -1.394339639599064943e-06, -1.391749755755044444e-06, -1.389157976901234158e-06, -1.386564307537187451e-06, -1.383968752165221132e-06, -1.381371315289976482e-06, -1.378772001418531059e-06, -1.376170815060477688e-06, -1.373567760727478705e-06, -1.370962842933945067e-06, -1.368356066196556089e-06, -1.365747435034387973e-06, -1.363136953968887981e-06, -1.360524627523984122e-06, -1.357910460225635167e-06, -1.355294456602487944e-06, -1.352676621185425661e-06, -1.350056958507667645e-06, -1.347435473104762772e-06, -1.344812169514702975e-06, -1.342187052277447842e-06, -1.339560125935616436e-06, -1.336931395034001728e-06, -1.334300864119697443e-06, -1.331668537742191443e-06, -1.329034420452909181e-06, -1.326398516805775914e-06, -1.323760831357312206e-06, -1.321121368665610084e-06, -1.318480133291473134e-06, -1.315837129797931582e-06, -1.313192362749912798e-06, -1.310545836714896471e-06, -1.307897556262477968e-06, -1.305247525964447106e-06, -1.302595750394797258e-06, -1.299942234129829540e-06, -1.297286981747575978e-06, -1.294629997829029615e-06, -1.291971286956563096e-06, -1.289310853715165766e-06, -1.286648702691972502e-06, -1.283984838475924481e-06, -1.281319265658327581e-06, -1.278651988832971184e-06, -1.275983012595051804e-06, -1.273312341542365076e-06, -1.270639980274794993e-06, -1.267965933393870699e-06, -1.265290205504017134e-06, -1.262612801210924913e-06, -1.259933725122838034e-06, -1.257252981850056457e-06, -1.254570576004587122e-06, -1.251886512200727772e-06, -1.249200795055161606e-06, -1.246513429185913522e-06, -1.243824419213495520e-06, -1.241133769760452056e-06, -1.238441485450853725e-06, -1.235747570911490736e-06, -1.233052030770788705e-06, -1.230354869658935500e-06, -1.227656092208439437e-06, -1.224955703053677386e-06, -1.222253706830978840e-06, -1.219550108178753816e-06, -1.216844911737011953e-06, -1.214138122148045009e-06, -1.211429744056087200e-06, -1.208719782106821168e-06, -1.206008240948558534e-06, -1.203295125231158024e-06, -1.200580439606162690e-06, -1.197864188727339256e-06, -1.195146377250240417e-06, -1.192427009832285515e-06, -1.189706091132888867e-06, -1.186983625812969120e-06, -1.184259618535652289e-06, -1.181534073965799113e-06, -1.178806996770103100e-06, -1.176078391617086710e-06, -1.173348263177220793e-06, -1.170616616122426108e-06, -1.167883455126794571e-06, -1.165148784866092046e-06, -1.162412610017876930e-06, -1.159674935261498039e-06, -1.156935765278184598e-06, -1.154195104750588849e-06, -1.151452958363476595e-06, -1.148709330803236552e-06, -1.145964226758017993e-06, -1.143217650917803808e-06, -1.140469607973971315e-06, -1.137720102619958448e-06, -1.134969139550798531e-06, -1.132216723463232929e-06, -1.129462859055694532e-06, -1.126707551028431421e-06, -1.123950804083004366e-06, -1.121192622923009346e-06, -1.118433012253590717e-06, -1.115671976781544971e-06, -1.112909521215316927e-06, -1.110145650265113657e-06, -1.107380368642412146e-06, -1.104613681060681389e-06, -1.101845592234874806e-06, -1.099076106881570638e-06, -1.096305229719056863e-06, -1.093532965466856007e-06, -1.090759318846318709e-06, -1.087984294580729380e-06, -1.085207897394224760e-06, -1.082430132012981456e-06, -1.079651003164729110e-06, -1.076870515578385750e-06, -1.074088673984759772e-06, -1.071305483116074115e-06, -1.068520947706075954e-06, -1.065735072490141309e-06, -1.062947862204792025e-06, -1.060159321588286150e-06, -1.057369455380739913e-06, -1.054578268323024671e-06, -1.051785765157959747e-06, -1.048991950629846557e-06, -1.046196829484067335e-06, -1.043400406467698800e-06, -1.040602686329630961e-06, -1.037803673819453897e-06, -1.035003373688671135e-06, -1.032201790690202653e-06, -1.029398929577892965e-06, -1.026594795107838848e-06, -1.023789392036681294e-06, -1.020982725122934934e-06, -1.018174799126489768e-06, -1.015365618808122218e-06, -1.012555188930701085e-06, -1.009743514258079427e-06, -1.006930599555216313e-06, -1.004116449588778005e-06, -1.001301069126752352e-06, -9.984844629379702102e-07, -9.956666357934280874e-07, -9.928475924645735369e-07, -9.900273377246441045e-07, -9.872058763480356531e-07, -9.843832131104376770e-07, -9.815593527888097963e-07, -9.787343001614997064e-07, -9.759080600077493576e-07, -9.730806371084149333e-07, -9.702520362455943674e-07, -9.674222622021309824e-07, -9.645913197628355468e-07, -9.617592137133648034e-07, -9.589259488403347596e-07, -9.560915299319385981e-07, -9.532559617774440691e-07, -9.504192491673016980e-07, -9.475813968932615708e-07, -9.447424097478781371e-07, -9.419022925252341056e-07, -9.390610500204483182e-07, -9.362186870297818406e-07, -9.333752083506362684e-07, -9.305306187816692413e-07, -9.276849231222882347e-07, -9.248381261733803849e-07, -9.219902327368231153e-07, -9.191412476155945690e-07, -9.162911756137485148e-07, -9.134400215365664958e-07, -9.105877901900165754e-07, -9.077344863815101609e-07, -9.048801149193914550e-07, -9.020246806130577339e-07, -8.991681882730728497e-07, -8.963106427106596467e-07, -8.934520487384389965e-07, -8.905924111699336494e-07, -8.877317348196674427e-07, -8.848700245031731357e-07, -8.820072850371017829e-07, -8.791435212387110206e-07, -8.762787379266114082e-07, -8.734129399202686907e-07, -8.705461320401023723e-07, -8.676783191074885752e-07, -8.648095059448735416e-07, -8.619396973752683788e-07, -8.590688982229888367e-07, -8.561971133131463469e-07, -8.533243474717686185e-07, -8.504506055259109179e-07, -8.475758923031584362e-07, -8.447002126322296947e-07, -8.418235713431055054e-07, -8.389459732658857945e-07, -8.360674232320398227e-07, -8.331879260738945775e-07, -8.303074866242485262e-07, -8.274261097171236749e-07, -8.245438001872452793e-07, -8.216605628701691103e-07, -8.187764026023910400e-07, -8.158913242208408329e-07, -8.130053325634991037e-07, -8.101184324695220431e-07, -8.072306287780963348e-07, -8.043419263296862002e-07, -8.014523299655312133e-07, -7.985618445272477720e-07, -7.956704748574643724e-07, -7.927782257999304533e-07, -7.898851021983753360e-07, -7.869911088977676572e-07, -7.840962507437905258e-07, -7.812005325823438910e-07, -7.783039592609118656e-07, -7.754065356267896740e-07, -7.725082665284754330e-07, -7.696091568151424509e-07, -7.667092113361321719e-07, -7.638084349422139259e-07, -7.609068324844347638e-07, -7.580044088142360303e-07, -7.551011687840773097e-07, -7.521971172470575902e-07, -7.492922590563924330e-07, -7.463865990668013060e-07, -7.434801421327226744e-07, -7.405728931097109689e-07, -7.376648568537814063e-07, -7.347560382215366207e-07, -7.318464420701533229e-07, -7.289360732575112608e-07, -7.260249366416632950e-07, -7.231130370815996335e-07, -7.202003794368566093e-07, -7.172869685669980835e-07, -7.143728093328823956e-07, -7.114579065955030927e-07, -7.085422652161127020e-07, -7.056258900568562061e-07, -7.027087859802415410e-07, -6.997909578492721571e-07, -6.968724105275562863e-07, -6.939531488787925811e-07, -6.910331777675294800e-07, -6.881125020587686901e-07, -6.851911266174526258e-07, -6.822690563097329473e-07, -6.793462960018082191e-07, -6.764228505600469416e-07, -6.734987248516196498e-07, -6.705739237439761874e-07, -6.676484521049670450e-07, -6.647223148028365835e-07, -6.617955167063455361e-07, -6.588680626842355779e-07, -6.559399576060166428e-07, -6.530112063414232343e-07, -6.500818137605421159e-07, -6.471517847339358716e-07, -6.442211241321192282e-07, -6.412898368263183143e-07, -6.383579276879541819e-07, -6.354254015887572617e-07, -6.324922634007684223e-07, -6.295585179964490837e-07, -6.266241702481648457e-07, -6.236892250289491934e-07, -6.207536872119781251e-07, -6.178175616706948782e-07, -6.148808532789248077e-07, -6.119435669103586963e-07, -6.090057074393132840e-07, -6.060672797402086488e-07, -6.031282886876911326e-07, -6.001887391566227527e-07, -5.972486360222059280e-07, -5.943079841594509069e-07, -5.913667884438239588e-07, -5.884250537513636301e-07, -5.854827849575088735e-07, -5.825399869383812445e-07, -5.795966645702706465e-07, -5.766528227292242019e-07, -5.737084662918258402e-07, -5.707636001346635145e-07, -5.678182291344650440e-07, -5.648723581681932998e-07, -5.619259921125443374e-07, -5.589791358445767424e-07, -5.560317942418360387e-07, -5.530839721811754065e-07, -5.501356745400502662e-07, -5.471869061959901540e-07, -5.442376720261976511e-07, -5.412879769083234192e-07, -5.383378257199348991e-07, -5.353872233386437888e-07, -5.324361746420949269e-07, -5.294846845080858293e-07, -5.265327578139094981e-07, -5.235803994377858011e-07, -5.206276142570181166e-07, -5.176744071494263010e-07, -5.147207829928150703e-07, -5.117667466644459803e-07, -5.088123030423316934e-07, -5.058574570040522500e-07, -5.029022134268857233e-07, -4.999465771884432819e-07, -4.969905531662745789e-07, -4.940341462373363443e-07, -4.910773612794196355e-07, -4.881202031693187639e-07, -4.851626767842510280e-07, -4.822047870013361057e-07, -4.792465386970564944e-07, -4.762879367485659122e-07, -4.733289860324929167e-07, -4.703696914250764833e-07, -4.674100578028030799e-07, -4.644500900420084026e-07, -4.614897930183494620e-07, -4.585291716081006503e-07, -4.555682306869698532e-07, -4.526069751302221170e-07, -4.496454098133245054e-07, -4.466835396114171276e-07, -4.437213693994320399e-07, -4.407589040522199308e-07, -4.377961484440190309e-07, -4.348331074492287719e-07, -4.318697859420110986e-07, -4.289061887957597497e-07, -4.259423208843996596e-07, -4.229781870812045532e-07, -4.200137922589131480e-07, -4.170491412903843346e-07, -4.140842390480593631e-07, -4.111190904040843459e-07, -4.081537002304396413e-07, -4.051880733984007706e-07, -4.022222147793207584e-07, -3.992561292440983550e-07, -3.962898216632961976e-07, -3.933232969071429805e-07, -3.903565598456437812e-07, -3.873896153480576002e-07, -3.844224682836731900e-07, -3.814551235212719303e-07, -3.784875859292625592e-07, -3.755198603756577211e-07, -3.725519517282119271e-07, -3.695838648538817833e-07, -3.666156046196027727e-07, -3.636471758917630366e-07, -3.606785835363218526e-07, -3.577098324189345194e-07, -3.547409274044205260e-07, -3.517718733575404926e-07, -3.488026751424686279e-07, -3.458333376229087726e-07, -3.428638656620917526e-07, -3.398942641228974041e-07, -3.369245378673203615e-07, -3.339546917572526618e-07, -3.309847306539453503e-07, -3.280146594181427344e-07, -3.250444829100600967e-07, -3.220742059895171025e-07, -3.191038335154028455e-07, -3.161333703464533182e-07, -3.131628213407222280e-07, -3.101921913556985761e-07, -3.072214852484368886e-07, -3.042507078750208333e-07, -3.012798640912095052e-07, -2.983089587525668114e-07, -2.953379967132659897e-07, -2.923669828273967922e-07, -2.893959219484358249e-07, -2.864248189287074643e-07, -2.834536786208265136e-07, -2.804825058758466411e-07, -2.775113055447001776e-07, -2.745400824775329310e-07, -2.715688415239591430e-07, -2.685975875323962507e-07, -2.656263253515028840e-07, -2.626550598283311686e-07, -2.596837958097658885e-07, -2.567125381419876785e-07, -2.537412916699414584e-07, -2.507700612386452574e-07, -2.477988516919943094e-07, -2.448276678728894321e-07, -2.418565146238829944e-07, -2.388853967867814474e-07, -2.359143192021039900e-07, -2.329432867105290370e-07, -2.299723041510404870e-07, -2.270013763623687380e-07, -2.240305081824550177e-07, -2.210597044479183617e-07, -2.180889699953672975e-07, -2.151183096602004716e-07, -2.121477282767333343e-07, -2.091772306788529755e-07, -2.062068216996083722e-07, -2.032365061706805171e-07, -2.002662889236911368e-07, -1.972961747890066817e-07, -1.943261685958664130e-07, -1.913562751730302772e-07, -1.883864993482447721e-07, -1.854168459483674879e-07, -1.824473197994907994e-07, -1.794779257264074154e-07, -1.765086685533917931e-07, -1.735395531038011586e-07, -1.705705841995338033e-07, -1.676017666623459024e-07, -1.646331053126538630e-07, -1.616646049696587324e-07, -1.586962704519991547e-07, -1.557281065772145631e-07, -1.527601181618708589e-07, -1.497923100216831519e-07, -1.468246869709806999e-07, -1.438572538234918968e-07, -1.408900153918070949e-07, -1.379229764875040449e-07, -1.349561419211399024e-07, -1.319895165023746030e-07, -1.290231050394376029e-07, -1.260569123399091868e-07, -1.230909432101863606e-07, -1.201252024556067571e-07, -1.171596948804416472e-07, -1.141944252880188794e-07, -1.112293984801886927e-07, -1.082646192581071828e-07, -1.053000924217003948e-07, -1.023358227697892469e-07, -9.937181510021352873e-08, -9.640807420929596749e-08, -9.344460489262740083e-08, -9.048141194453016844e-08, -8.751850015818263906e-08, -8.455587432561285776e-08, -8.159353923782032015e-08, -7.863149968424276514e-08, -7.566976045353885984e-08, -7.270832633305378797e-08, -6.974720210894229461e-08, -6.678639256616226728e-08, -6.382590248859841600e-08, -6.086573665852709405e-08, -5.790589985739982989e-08, -5.494639686530832662e-08, -5.198723246110876404e-08, -4.902841142254600152e-08, -4.606993852571854428e-08, -4.311181854573019633e-08, -4.015405625681394562e-08, -3.719665643113801820e-08, -3.423962384011706533e-08, -3.128296325387630927e-08, -2.832667944071752213e-08, -2.537077716856091744e-08, -2.241526120309216302e-08, -1.946013630920504352e-08, -1.650540725046613895e-08, -1.355107878871231191e-08, -1.059715568470183277e-08, -7.643642698238430291e-09, -4.690544586978153911e-09, -1.737866107739105031e-09, 1.214387984033087075e-09, 4.166212934799619812e-09, 7.117603991619088692e-09, 1.006855640334035871e-08, 1.301906542047838137e-08, 1.596912629456323745e-08, 1.891873427854299964e-08, 2.186788462731761718e-08, 2.481657259629859098e-08, 2.776479344325923104e-08, 3.071254242689447879e-08, 3.365981480735462711e-08, 3.660660584677969233e-08, 3.955291080799070524e-08, 4.249872495568140046e-08, 4.544404355629486065e-08, 4.838886187737194962e-08, 5.133317518795495665e-08, 5.427697875911996991e-08, 5.722026786253854835e-08, 6.016303777232582849e-08, 6.310528376360171320e-08, 6.604700111315621609e-08, 6.898818509932475578e-08, 7.192883100199597107e-08, 7.486893410248788211e-08, 7.780848968408099174e-08, 8.074749303123724169e-08, 8.368593943013303458e-08, 8.662382416853551412e-08, 8.956114253581022814e-08, 9.249788982279681324e-08, 9.543406132234152710e-08, 9.836965232851776638e-08, 1.013046581371574740e-07, 1.042390740457288752e-07, 1.071728953532109316e-07, 1.101061173606279112e-07, 1.130387353702668231e-07, 1.159707446862110875e-07, 1.189021406142184837e-07, 1.218329184617242473e-07, 1.247630735377219163e-07, 1.276926011532928853e-07, 1.306214966208267518e-07, 1.335497552545550126e-07, 1.364773723704254126e-07, 1.394043432861109963e-07, 1.423306633208851716e-07, 1.452563277961537251e-07, 1.481813320346765315e-07, 1.511056713610979549e-07, 1.540293411018251412e-07, 1.569523365849021799e-07, 1.598746531405418564e-07, 1.627962861003489487e-07, 1.657172307978493850e-07, 1.686374825683678737e-07, 1.715570367490344948e-07, 1.744758886786619325e-07, 1.773940336982761682e-07, 1.803114671503377394e-07, 1.832281843792733326e-07, 1.861441807313530689e-07, 1.890594515545642435e-07, 1.919739921991456976e-07, 1.948877980168067215e-07, 1.978008643612608707e-07, 2.007131865881001023e-07, 2.036247600548025567e-07, 2.065355801206098708e-07, 2.094456421470553553e-07, 2.123549414973228441e-07, 2.152634735361158540e-07, 2.181712336308477458e-07, 2.210782171503384310e-07, 2.239844194653458593e-07, 2.268898359490935873e-07, 2.297944619758466781e-07, 2.326982929227392804e-07, 2.356013241683536784e-07, 2.385035510932443930e-07, 2.414049690803386432e-07, 2.443055735142917541e-07, 2.472053597813638603e-07, 2.501043232705985529e-07, 2.530024593725307303e-07, 2.558997634797117056e-07, 2.587962309872369085e-07, 2.616918572913255166e-07, 2.645866377911445939e-07, 2.674805678873876639e-07, 2.703736429829323771e-07, 2.732658584825871958e-07, 2.761572097937476328e-07, 2.790476923249751945e-07, 2.819373014878249606e-07, 2.848260326954199219e-07, 2.877138813629807459e-07, 2.906008429083517851e-07, 2.934869127507084511e-07, 2.963720863117364964e-07, 2.992563590155037950e-07, 3.021397262878225263e-07, 3.050221835566470692e-07, 3.079037262525947681e-07, 3.107843498075321291e-07, 3.136640496563918121e-07, 3.165428212357584027e-07, 3.194206599845208396e-07, 3.222975613437498069e-07, 3.251735207567102273e-07, 3.280485336687314546e-07, 3.309225955277342871e-07, 3.337957017834645612e-07, 3.366678478880144477e-07, 3.395390292957046611e-07, 3.424092414630847242e-07, 3.452784798488170835e-07, 3.481467399141986698e-07, 3.510140171223910508e-07, 3.538803069389490862e-07, 3.567456048316923367e-07, 3.596099062705876977e-07, 3.624732067282726006e-07, 3.653355016792859597e-07, 3.681967866005915330e-07, 3.710570569714575376e-07, 3.739163082734631082e-07, 3.767745359903730949e-07, 3.796317356086669828e-07, 3.824879026167679326e-07, 3.853430325055656653e-07, 3.881971207682995180e-07, 3.910501629005553211e-07, 3.939021544001566071e-07, 3.967530907676744716e-07, 3.996029675056703788e-07, 4.024517801192147576e-07, 4.052995241157651874e-07, 4.081461950050465958e-07, 4.109917882995718138e-07, 4.138362995138754339e-07, 4.166797241650356357e-07, 4.195220577725551776e-07, 4.223632958583674852e-07, 4.252034339467098074e-07, 4.280424675646504953e-07, 4.308803922413273598e-07, 4.337172035084589100e-07, 4.365528969002288380e-07, 4.393874679531665352e-07, 4.422209122066621936e-07, 4.450532252023344432e-07, 4.478844024839133553e-07, 4.507144395983909249e-07, 4.535433320947593097e-07, 4.563710755245192083e-07, 4.591976654420773305e-07, 4.620230974041085816e-07, 4.648473669694426127e-07, 4.676704697002119740e-07, 4.704924011605871243e-07, 4.733131569172951852e-07, 4.761327325401305434e-07, 4.789511236005674639e-07, 4.817683256735433058e-07, 4.845843343360695471e-07, 4.873991451677478398e-07, 4.902127537511532391e-07, 4.930251556712141752e-07, 4.958363465150821165e-07, 4.986463218732882987e-07, 5.014550773384792104e-07, 5.042626085059311659e-07, 5.070689109740642422e-07, 5.098739803430533567e-07, 5.126778122166107426e-07, 5.154804022006024257e-07, 5.182817459036795824e-07, 5.210818389370402051e-07, 5.238806769150666009e-07, 5.266782554539344573e-07, 5.294745701734021994e-07, 5.322696166954139150e-07, 5.350633906446249386e-07, 5.378558876489021298e-07, 5.406471033380728062e-07, 5.434370333450692963e-07, 5.462256733058078142e-07, 5.490130188585605957e-07, 5.517990656444768243e-07, 5.545838093074502820e-07, 5.573672454940159053e-07, 5.601493698538419114e-07, 5.629301780389965857e-07, 5.657096657043258459e-07, 5.684878285079602979e-07, 5.712646621100726381e-07, 5.740401621740075955e-07, 5.768143243661710759e-07, 5.795871443553974289e-07, 5.823586178134702667e-07, 5.851287404149938212e-07, 5.878975078374106261e-07, 5.906649157608719202e-07, 5.934309598687463973e-07, 5.961956358468880516e-07, 5.989589393841277745e-07, 6.017208661721646170e-07, 6.044814119054400051e-07, 6.072405722816521005e-07, 6.099983430010118941e-07, 6.127547197667380849e-07, 6.155096982849566009e-07, 6.182632742646946694e-07, 6.210154434177649857e-07, 6.237662014592717094e-07, 6.265155441068720629e-07, 6.292634670812788345e-07, 6.320099661061382991e-07, 6.347550369079208453e-07, 6.374986752164195605e-07, 6.402408767640138409e-07, 6.429816372861668123e-07, 6.457209525213139450e-07, 6.484588182108691946e-07, 6.511952300991027119e-07, 6.539301839336491685e-07, 6.566636754647684029e-07, 6.593957004458459108e-07, 6.621262546332760609e-07, 6.648553337864701415e-07, 6.675829336677359758e-07, 6.703090500427858244e-07, 6.730336786799930075e-07, 6.757568153508966312e-07, 6.784784558300869200e-07, 6.811985958950844090e-07, 6.839172313268375754e-07, 6.866343579091190104e-07, 6.893499714284063049e-07, 6.920640676749975916e-07, 6.947766424417802774e-07, 6.974876915247433919e-07, 7.001972107233359884e-07, 7.029051958397542600e-07, 7.056116426794202187e-07, 7.083165470508843928e-07, 7.110199047658156623e-07, 7.137217116388951681e-07, 7.164219634884312582e-07, 7.191206561350242455e-07, 7.218177854032769915e-07, 7.245133471204629466e-07, 7.272073371170160529e-07, 7.298997512269161440e-07, 7.325905852870646823e-07, 7.352798351371812084e-07, 7.379674966209175078e-07, 7.406535655846199892e-07, 7.433380378778413990e-07, 7.460209093538346410e-07, 7.487021758682083235e-07, 7.513818332806465538e-07, 7.540598774535699910e-07, 7.567363042526444891e-07, 7.594111095471279570e-07, 7.620842892092832590e-07, 7.647558391142660886e-07, 7.674257551412167941e-07, 7.700940331720548388e-07, 7.727606690919671157e-07, 7.754256587899088615e-07, 7.780889981573909170e-07, 7.807506830895721882e-07, 7.834107094851564140e-07, 7.860690732457799731e-07, 7.887257702765132215e-07, 7.913807964857398965e-07, 7.940341477850427670e-07, 7.966858200896947010e-07, 7.993358093179429227e-07, 8.019841113913680484e-07, 8.046307222353853187e-07, 8.072756377780294235e-07, 8.099188539510633739e-07, 8.125603666898520830e-07, 8.152001719327656308e-07, 8.178382656216818724e-07, 8.204746437018493249e-07, 8.231093021217891227e-07, 8.257422368337780388e-07, 8.283734437931376118e-07, 8.310029189587079551e-07, 8.336306582927464307e-07, 8.362566577609362255e-07, 8.388809133322584490e-07, 8.415034209794840479e-07, 8.441241766784690748e-07, 8.467431764086218265e-07, 8.493604161528157059e-07, 8.519758918973653988e-07, 8.545895996319375123e-07, 8.572015353500233249e-07, 8.598116950482233612e-07, 8.624200747267465062e-07, 8.650266703892821032e-07, 8.676314780428918515e-07, 8.702344936984958970e-07, 8.728357133701588897e-07, 8.754351330755822154e-07, 8.780327488359685767e-07, 8.806285566760561915e-07, 8.832225526239870797e-07, 8.858147327117895543e-07, 8.884050929746855600e-07, 8.909936294515494477e-07, 8.935803381848244356e-07, 8.961652152204939163e-07, 8.987482566079973884e-07, 9.013294584006937839e-07, 9.039088166551693359e-07, 9.064863274317023886e-07, 9.090619867941618586e-07, 9.116357908098956387e-07, 9.142077355501992186e-07, 9.167778170897457381e-07, 9.193460315064560726e-07, 9.219123748825798598e-07, 9.244768433035178056e-07, 9.270394328583020580e-07, 9.296001396399449728e-07, 9.321589597447569344e-07, 9.347158892728075654e-07, 9.372709243278152944e-07, 9.398240610171623913e-07, 9.423752954517728882e-07, 9.449246237467116436e-07, 9.474720420198966408e-07, 9.500175463937540898e-07, 9.525611329939204557e-07, 9.551027979497327847e-07, 9.576425373945674111e-07, 9.601803474652818689e-07, 9.627162243020914367e-07, 9.652501640496195642e-07, 9.677821628557556483e-07, 9.703122168721105252e-07, 9.728403222544982205e-07, 9.753664751616533291e-07, 9.778906717568721423e-07, 9.804129082067315094e-07, 9.829331806815731300e-07, 9.854514853558387662e-07, 9.879678184075154368e-07, 9.904821760180130205e-07, 9.929945543732073775e-07, 9.955049496623118894e-07, 9.980133580783138931e-07, 1.000519775818467654e-06, 1.003024199083137742e-06, 1.005526624076836014e-06, 1.008027047008126529e-06, 1.010525464089038138e-06, 1.013021871535544746e-06, 1.015516265567447152e-06, 1.018008642408268443e-06, 1.020498998285715838e-06, 1.022987329430996704e-06, 1.025473632079181728e-06, 1.027957902469646643e-06, 1.030440136844947577e-06, 1.032920331451854858e-06, 1.035398482541238667e-06, 1.037874586367511054e-06, 1.040348639189074861e-06, 1.042820637268239239e-06, 1.045290576871086443e-06, 1.047758454267944907e-06, 1.050224265732709072e-06, 1.052688007543299117e-06, 1.055149675981560580e-06, 1.057609267333256742e-06, 1.060066777887965706e-06, 1.062522203939556221e-06, 1.064975541785484009e-06, 1.067426787727264621e-06, 1.069875938070373275e-06, 1.072322989124237022e-06, 1.074767937202137335e-06, 1.077210778621651627e-06, 1.079651509704012894e-06, 1.082090126774527725e-06, 1.084526626162496469e-06, 1.086961004201095074e-06, 1.089393257227830792e-06, 1.091823381583878314e-06, 1.094251373614523196e-06, 1.096677229669073341e-06, 1.099100946100845869e-06, 1.101522519267076276e-06, 1.103941945529350420e-06, 1.106359221252970514e-06, 1.108774342807368482e-06, 1.111187306566035651e-06, 1.113598108906504757e-06, 1.116006746210259095e-06, 1.118413214863164934e-06, 1.120817511254830733e-06, 1.123219631779042731e-06, 1.125619572833659064e-06, 1.128017330820514689e-06, 1.130412902145852947e-06, 1.132806283219805057e-06, 1.135197470456253114e-06, 1.137586460273846739e-06, 1.139973249094905320e-06, 1.142357833345862287e-06, 1.144740209457588039e-06, 1.147120373864760176e-06, 1.149498323006285958e-06, 1.151874053325213577e-06, 1.154247561268616114e-06, 1.156618843288034323e-06, 1.158987895838949359e-06, 1.161354715380661435e-06, 1.163719298377287839e-06, 1.166081641296675348e-06, 1.168441740610845762e-06, 1.170799592796314180e-06, 1.173155194333557698e-06, 1.175508541706923081e-06, 1.177859631405589629e-06, 1.180208459922503821e-06, 1.182555023754805797e-06, 1.184899319404282096e-06, 1.187241343376177268e-06, 1.189581092180697995e-06, 1.191918562331845241e-06, 1.194253750347842220e-06, 1.196586652751585226e-06, 1.198917266069549055e-06, 1.201245586832779728e-06, 1.203571611576783106e-06, 1.205895336840997613e-06, 1.208216759169111026e-06, 1.210535875109508765e-06, 1.212852681214089744e-06, 1.215167174039775146e-06, 1.217479350147331050e-06, 1.219789206101920269e-06, 1.222096738472986100e-06, 1.224401943834269894e-06, 1.226704818763693534e-06, 1.229005359843807940e-06, 1.231303563661147201e-06, 1.233599426806560407e-06, 1.235892945875634100e-06, 1.238184117467648312e-06, 1.240472938186517614e-06, 1.242759404640700275e-06, 1.245043513442681780e-06, 1.247325261209385857e-06, 1.249604644562089136e-06, 1.251881660126307644e-06, 1.254156304532230706e-06, 1.256428574414101117e-06, 1.258698466410518603e-06, 1.260965977164870952e-06, 1.263231103324300428e-06, 1.265493841540633808e-06, 1.267754188470301284e-06, 1.270012140773807064e-06, 1.272267695116150557e-06, 1.274520848166738078e-06, 1.276771596599374790e-06, 1.279019937092166460e-06, 1.281265866327953340e-06, 1.283509380993679349e-06, 1.285750477780813889e-06, 1.287989153385256769e-06, 1.290225404507235712e-06, 1.292459227851729026e-06, 1.294690620127844940e-06, 1.296919578049241308e-06, 1.299146098334033071e-06, 1.301370177704777647e-06, 1.303591812888412886e-06, 1.305811000616637596e-06, 1.308027737625309305e-06, 1.310242020654872651e-06, 1.312453846450250532e-06, 1.314663211760743314e-06, 1.316870113340450439e-06, 1.319074547947660775e-06, 1.321276512345261942e-06, 1.323476003300648200e-06, 1.325673017585717060e-06, 1.327867551976779497e-06, 1.330059603254963140e-06, 1.332249168205725861e-06, 1.334436243618731476e-06, 1.336620826288802652e-06, 1.338802913014876098e-06, 1.340982500600436878e-06, 1.343159585853817623e-06, 1.345334165587594390e-06, 1.347506236618993869e-06, 1.349675795769810375e-06, 1.351842839866295524e-06, 1.354007365739572852e-06, 1.356169370225135949e-06, 1.358328850162747876e-06, 1.360485802397364854e-06, 1.362640223778115375e-06, 1.364792111158724143e-06, 1.366941461397815736e-06, 1.369088271358310674e-06, 1.371232537907825847e-06, 1.373374257918590455e-06, 1.375513428267447696e-06, 1.377650045835756936e-06, 1.379784107509893459e-06, 1.381915610180162147e-06, 1.384044550742203553e-06, 1.386170926095883655e-06, 1.388294733145711441e-06, 1.390415968801231511e-06, 1.392534629976044270e-06, 1.394650713588707595e-06, 1.396764216562618251e-06, 1.398875135825544116e-06, 1.400983468309923608e-06, 1.403089210953247695e-06, 1.405192360697000472e-06, 1.407292914488025212e-06, 1.409390869277462184e-06, 1.411486222021228924e-06, 1.413578969679936165e-06, 1.415669109218895039e-06, 1.417756637608010772e-06, 1.419841551822188838e-06, 1.421923848840748597e-06, 1.424003525647720187e-06, 1.426080579232241351e-06, 1.428155006587592884e-06, 1.430226804712056887e-06, 1.432295970608854509e-06, 1.434362501285639211e-06, 1.436426393754904824e-06, 1.438487645033882846e-06, 1.440546252144449480e-06, 1.442602212113531576e-06, 1.444655521972513704e-06, 1.446706178757542244e-06, 1.448754179509909935e-06, 1.450799521275091953e-06, 1.452842201103635508e-06, 1.454882216051046765e-06, 1.456919563177325397e-06, 1.458954239547341728e-06, 1.460986242230769820e-06, 1.463015568302062693e-06, 1.465042214840379483e-06, 1.467066178929954534e-06, 1.469087457659553608e-06, 1.471106048122839160e-06, 1.473121947418283313e-06, 1.475135152649075103e-06, 1.477145660923524517e-06, 1.479153469354467450e-06, 1.481158575059657035e-06, 1.483160975161694610e-06, 1.485160666788010659e-06, 1.487157647070767192e-06, 1.489151913147270887e-06, 1.491143462159391810e-06, 1.493132291253937383e-06, 1.495118397582574880e-06, 1.497101778301740581e-06, 1.499082430573010140e-06, 1.501060351562547375e-06, 1.503035538441478447e-06, 1.505007988385807158e-06, 1.506977698576426593e-06, 1.508944666199006893e-06, 1.510908888444386582e-06, 1.512870362508103311e-06, 1.514829085590336472e-06, 1.516785054896686465e-06, 1.518738267637301627e-06, 1.520688721027246045e-06, 1.522636412286759393e-06, 1.524581338640715885e-06, 1.526523497319009886e-06, 1.528462885556448130e-06, 1.530399500592679626e-06, 1.532333339672545695e-06, 1.534264400045649466e-06, 1.536192678966254654e-06, 1.538118173694108032e-06, 1.540040881493541572e-06, 1.541960799633827354e-06, 1.543877925389470853e-06, 1.545792256039656764e-06, 1.547703788868614075e-06, 1.549612521165552964e-06, 1.551518450224627527e-06, 1.553421573344890890e-06, 1.555321887830716812e-06, 1.557219390990832382e-06, 1.559114080139583055e-06, 1.561005952595916643e-06, 1.562895005683808519e-06, 1.564781236732543471e-06, 1.566664643075891964e-06, 1.568545222052884534e-06, 1.570422971007732385e-06, 1.572297887289388200e-06, 1.574169968251820364e-06, 1.576039211254342679e-06, 1.577905613660701257e-06, 1.579769172840263544e-06, 1.581629886167069221e-06, 1.583487751020183837e-06, 1.585342764784066425e-06, 1.587194924847677786e-06, 1.589044228605278817e-06, 1.590890673456356821e-06, 1.592734256805178696e-06, 1.594574976061057327e-06, 1.596412828638711150e-06, 1.598247811957391290e-06, 1.600079923441668235e-06, 1.601909160521355184e-06, 1.603735520631067168e-06, 1.605559001210580611e-06, 1.607379599704742489e-06, 1.609197313563391131e-06, 1.611012140241704350e-06, 1.612824077199688472e-06, 1.614633121902430323e-06, 1.616439271820456379e-06, 1.618242524428881488e-06, 1.620042877208164435e-06, 1.621840327644030852e-06, 1.623634873227068340e-06, 1.625426511453053426e-06, 1.627215239822868973e-06, 1.629001055842424351e-06, 1.630783957023022623e-06, 1.632563940880805952e-06, 1.634341004937149469e-06, 1.636115146718539939e-06, 1.637886363756596721e-06, 1.639654653588005493e-06, 1.641420013754818308e-06, 1.643182441803991962e-06, 1.644941935287710718e-06, 1.646698491763302444e-06, 1.648452108793246664e-06, 1.650202783945089217e-06, 1.651950514791789965e-06, 1.653695298911222833e-06, 1.655437133886488571e-06, 1.657176017305885538e-06, 1.658911946762773327e-06, 1.660644919855945033e-06, 1.662374934189118403e-06, 1.664101987371276339e-06, 1.665826077016577115e-06, 1.667547200744371529e-06, 1.669265356179121587e-06, 1.670980540950722801e-06, 1.672692752694009519e-06, 1.674401989049118726e-06, 1.676108247661367016e-06, 1.677811526181285952e-06, 1.679511822264535458e-06, 1.681209133572220184e-06, 1.682903457770428513e-06, 1.684594792530543842e-06, 1.686283135529157761e-06, 1.687968484448011607e-06, 1.689650836974314743e-06, 1.691330190800345172e-06, 1.693006543623368654e-06, 1.694679893146383030e-06, 1.696350237077270348e-06, 1.698017573129192421e-06, 1.699681899020840918e-06, 1.701343212475615741e-06, 1.703001511222722779e-06, 1.704656792996295110e-06, 1.706309055535722078e-06, 1.707958296585904034e-06, 1.709604513896823948e-06, 1.711247705223508238e-06, 1.712887868326714560e-06, 1.714525000972157616e-06, 1.716159100930827641e-06, 1.717790165979299148e-06, 1.719418193898968385e-06, 1.721043182476741972e-06, 1.722665129504952834e-06, 1.724284032781012705e-06, 1.725899890107604618e-06, 1.727512699293018963e-06, 1.729122458150301163e-06, 1.730729164498345824e-06, 1.732332816161034462e-06, 1.733933410967536617e-06, 1.735530946752663492e-06, 1.737125421356056709e-06, 1.738716832622909555e-06, 1.740305178403876773e-06, 1.741890456554704621e-06, 1.743472664936463807e-06, 1.745051801415860137e-06, 1.746627863864368212e-06, 1.748200850159350148e-06, 1.749770758183176143e-06, 1.751337585823646724e-06, 1.752901330973875218e-06, 1.754461991532341121e-06, 1.756019565402769388e-06, 1.757574050494467985e-06, 1.759125444721860318e-06, 1.760673746004721559e-06, 1.762218952268484850e-06, 1.763761061443485113e-06, 1.765300071465630956e-06, 1.766835980276360844e-06, 1.768368785822243296e-06, 1.769898486055278853e-06, 1.771425078932851374e-06, 1.772948562417625547e-06, 1.774468934477875956e-06, 1.775986193087020159e-06, 1.777500336223934629e-06, 1.779011361872886994e-06, 1.780519268023500668e-06, 1.782024052670739186e-06, 1.783525713815162218e-06, 1.785024249462501628e-06, 1.786519657623952221e-06, 1.788011936316116471e-06, 1.789501083560988638e-06, 1.790987097385888494e-06, 1.792469975823764130e-06, 1.793949716912737950e-06, 1.795426318696428757e-06, 1.796899779223860480e-06, 1.798370096549390817e-06, 1.799837268733028021e-06, 1.801301293839953811e-06, 1.802762169940875738e-06, 1.804219895111890599e-06, 1.805674467434542460e-06, 1.807125884995724401e-06, 1.808574145887965870e-06, 1.810019248209030132e-06, 1.811461190062182143e-06, 1.812899969556103422e-06, 1.814335584804943934e-06, 1.815768033928205198e-06, 1.817197315051045217e-06, 1.818623426303856661e-06, 1.820046365822556334e-06, 1.821466131748520168e-06, 1.822882722228480523e-06, 1.824296135414851015e-06, 1.825706369465359972e-06, 1.827113422542994103e-06, 1.828517292816595018e-06, 1.829917978460211041e-06, 1.831315477653363384e-06, 1.832709788581289889e-06, 1.834100909434237112e-06, 1.835488838408400959e-06, 1.836873573705173458e-06, 1.838255113531422070e-06, 1.839633456099702084e-06, 1.841008599627912293e-06, 1.842380542339233378e-06, 1.843749282462735865e-06, 1.845114818232703340e-06, 1.846477147888906049e-06, 1.847836269676887189e-06, 1.849192181847266438e-06, 1.850544882656370569e-06, 1.851894370366152773e-06, 1.853240643243869726e-06, 1.854583699562271110e-06, 1.855923537599880411e-06, 1.857260155640260534e-06, 1.858593551972956133e-06, 1.859923724892736784e-06, 1.861250672699907423e-06, 1.862574393700534717e-06, 1.863894886205803740e-06, 1.865212148532624873e-06, 1.866526179003555667e-06, 1.867836975946468382e-06, 1.869144537694769154e-06, 1.870448862587650413e-06, 1.871749948969378530e-06, 1.873047795190191457e-06, 1.874342399605609877e-06, 1.875633760576744471e-06, 1.876921876470246358e-06, 1.878206745658291858e-06, 1.879488366518549447e-06, 1.880766737434410159e-06, 1.882041856794620606e-06, 1.883313722993516757e-06, 1.884582334431007846e-06, 1.885847689512522799e-06, 1.887109786649004089e-06, 1.888368624257100651e-06, 1.889624200758873114e-06, 1.890876514581947748e-06, 1.892125564159545477e-06, 1.893371347930365407e-06, 1.894613864338851014e-06, 1.895853111834839678e-06, 1.897089088873760890e-06, 1.898321793916643240e-06, 1.899551225430064868e-06, 1.900777381886118310e-06, 1.902000261762641313e-06, 1.903219863542862778e-06, 1.904436185715653694e-06, 1.905649226775447300e-06, 1.906858985222260056e-06, 1.908065459561639758e-06, 1.909268648304872425e-06, 1.910468549968655349e-06, 1.911665163075326423e-06, 1.912858486152819889e-06, 1.914048517734576973e-06, 1.915235256359818206e-06, 1.916418700573184707e-06, 1.917598848924943589e-06, 1.918775699970976945e-06, 1.919949252272749661e-06, 1.921119504397261563e-06, 1.922286454917295168e-06, 1.923450102411054430e-06, 1.924610445462386656e-06, 1.925767482660765998e-06, 1.926921212601197729e-06, 1.928071633884466854e-06, 1.929218745116788281e-06, 1.930362544910051192e-06, 1.931503031881744080e-06, 1.932640204654967458e-06, 1.933774061858388110e-06, 1.934904602126448744e-06, 1.936031824099091425e-06, 1.937155726421705488e-06, 1.938276307745642111e-06, 1.939393566727636635e-06, 1.940507502030061406e-06, 1.941618112321104921e-06, 1.942725396274229730e-06, 1.943829352568875892e-06, 1.944929979889907018e-06, 1.946027276927813137e-06, 1.947121242378862736e-06, 1.948211874944863050e-06, 1.949299173333070702e-06, 1.950383136256722364e-06, 1.951463762434460477e-06, 1.952541050590556013e-06, 1.953614999455143530e-06, 1.954685607763607919e-06, 1.955752874257359019e-06, 1.956816797683220054e-06, 1.957877376793730875e-06, 1.958934610346988290e-06, 1.959988497106975990e-06, 1.961039035842939432e-06, 1.962086225330130383e-06, 1.963130064349247881e-06, 1.964170551686642790e-06, 1.965207686134507962e-06, 1.966241466490398387e-06, 1.967271891557658531e-06, 1.968298960145393102e-06, 1.969322671068215490e-06, 1.970343023146377783e-06, 1.971360015206005394e-06, 1.972373646078514730e-06, 1.973383914601350528e-06, 1.974390819617411573e-06, 1.975394359975240852e-06, 1.976394534529258916e-06, 1.977391342139246762e-06, 1.978384781670787986e-06, 1.979374851995259468e-06, 1.980361551989507377e-06, 1.981344880536152532e-06, 1.982324836523431155e-06, 1.983301418845284235e-06, 1.984274626401249108e-06, 1.985244458096694508e-06, 1.986210912842516907e-06, 1.987173989555313732e-06, 1.988133687157383364e-06, 1.989090004576641707e-06, 1.990042940746811078e-06, 1.990992494607157621e-06, 1.991938665102672155e-06, 1.992881451184024007e-06, 1.993820851807551272e-06, 1.994756865935243024e-06, 1.995689492534903221e-06, 1.996618730579866943e-06, 1.997544579049207075e-06, 1.998467036927681782e-06, 1.999386103205680733e-06, 2.000301776879427532e-06, 2.001214056950673100e-06, 2.002122942426932414e-06, 2.003028432321377363e-06, 2.003930525652890531e-06, 2.004829221445973719e-06, 2.005724518730980031e-06, 2.006616416543805555e-06, 2.007504913926079098e-06, 2.008390009925127882e-06, 2.009271703593977118e-06, 2.010149993991289022e-06, 2.011024880181550433e-06, 2.011896361234826323e-06, 2.012764436226919044e-06, 2.013629104239304798e-06, 2.014490364359134060e-06, 2.015348215679387433e-06, 2.016202657298647371e-06, 2.017053688321065573e-06, 2.017901307856759387e-06, 2.018745515021367125e-06, 2.019586308936228476e-06, 2.020423688728510294e-06, 2.021257653530967306e-06, 2.022088202482087809e-06, 2.022915334726058510e-06, 2.023739049412780205e-06, 2.024559345697816101e-06, 2.025376222742587487e-06, 2.026189679713942592e-06, 2.026999715784727908e-06, 2.027806330133320206e-06, 2.028609521943812458e-06, 2.029409290406122259e-06, 2.030205634715796161e-06, 2.030998554073958004e-06, 2.031788047687703211e-06, 2.032574114769650707e-06, 2.033356754538156793e-06, 2.034135966217423994e-06, 2.034911749037096595e-06, 2.035684102232806137e-06, 2.036453025045739848e-06, 2.037218516722830379e-06, 2.037980576516689741e-06, 2.038739203685796915e-06, 2.039494397494070952e-06, 2.040246157211420275e-06, 2.040994482113301370e-06, 2.041739371480897938e-06, 2.042480824601245831e-06, 2.043218840766879836e-06, 2.043953419276152590e-06, 2.044684559433237960e-06, 2.045412260547866776e-06, 2.046136521935555100e-06, 2.046857342917527998e-06, 2.047574722820684810e-06, 2.048288660977757543e-06, 2.048999156727075823e-06, 2.049706209412708771e-06, 2.050409818384567917e-06, 2.051109982998066269e-06, 2.051806702614458401e-06, 2.052499976600769720e-06, 2.053189804329649508e-06, 2.053876185179492049e-06, 2.054559118534431123e-06, 2.055238603784290028e-06, 2.055914640324593019e-06, 2.056587227556691938e-06, 2.057256364887545983e-06, 2.057922051729867402e-06, 2.058584287502090150e-06, 2.059243071628334736e-06, 2.059898403538545023e-06, 2.060550282668283243e-06, 2.061198708458866367e-06, 2.061843680357326302e-06, 2.062485197816421318e-06, 2.063123260294577606e-06, 2.063757867256078167e-06, 2.064389018170795574e-06, 2.065016712514366457e-06, 2.065640949768154236e-06, 2.066261729419200841e-06, 2.066879050960366470e-06, 2.067492913890134773e-06, 2.068103317712750496e-06, 2.068710261938171198e-06, 2.069313746082076144e-06, 2.069913769665831157e-06, 2.070510332216624987e-06, 2.071103433267265599e-06, 2.071693072356308079e-06, 2.072279249028041926e-06, 2.072861962832456322e-06, 2.073441213325253686e-06, 2.074017000067932263e-06, 2.074589322627615017e-06, 2.075158180577193208e-06, 2.075723573495251428e-06, 2.076285500966088352e-06, 2.076843962579795091e-06, 2.077398957932137030e-06, 2.077950486624493686e-06, 2.078498548264147553e-06, 2.079043142463981279e-06, 2.079584268842597950e-06, 2.080121927024400713e-06, 2.080656116639431409e-06, 2.081186837323463331e-06, 2.081714088718008842e-06, 2.082237870470287190e-06, 2.082758182233190625e-06, 2.083275023665469902e-06, 2.083788394431365820e-06, 2.084298294201057724e-06, 2.084804722650298862e-06, 2.085307679460601880e-06, 2.085807164319235862e-06, 2.086303176919144588e-06, 2.086795716958906726e-06, 2.087284784142975962e-06, 2.087770378181408684e-06, 2.088252498789985103e-06, 2.088731145690282527e-06, 2.089206318609433948e-06, 2.089678017280453735e-06, 2.090146241441963615e-06, 2.090610990838293892e-06, 2.091072265219567305e-06, 2.091530064341571551e-06, 2.091984387965707188e-06, 2.092435235859269279e-06, 2.092882607795136527e-06, 2.093326503551904260e-06, 2.093766922913973371e-06, 2.094203865671303829e-06, 2.094637331619641262e-06, 2.095067320560480959e-06, 2.095493832300952669e-06, 2.095916866653927332e-06, 2.096336423437964987e-06, 2.096752502477315614e-06, 2.097165103602001300e-06, 2.097574226647674358e-06, 2.097979871455701190e-06, 2.098382037873222416e-06, 2.098780725752973313e-06, 2.099175934953434581e-06, 2.099567665338835731e-06, 2.099955916779050480e-06, 2.100340689149661547e-06, 2.100721982331958958e-06, 2.101099796212893885e-06, 2.101474130685218827e-06, 2.101844985647266960e-06, 2.102212361003129168e-06, 2.102576256662571031e-06, 2.102936672541062049e-06, 2.103293608559735407e-06, 2.103647064645491739e-06, 2.103997040730847506e-06, 2.104343536754064170e-06, 2.104686552659049094e-06, 2.105026088395434308e-06, 2.105362143918509179e-06, 2.105694719189305957e-06, 2.106023814174503213e-06, 2.106349428846462684e-06, 2.106671563183259769e-06, 2.106990217168617885e-06, 2.107305390792010952e-06, 2.107617084048530838e-06, 2.107925296938984342e-06, 2.108230029469854230e-06, 2.108531281653298390e-06, 2.108829053507155760e-06, 2.109123345054986560e-06, 2.109414156325971923e-06, 2.109701487355009606e-06, 2.109985338182647077e-06, 2.110265708855122169e-06, 2.110542599424343180e-06, 2.110816009947914703e-06, 2.111085940489109252e-06, 2.111352391116841427e-06, 2.111615361905721278e-06, 2.111874852936017883e-06, 2.112130864293705933e-06, 2.112383396070408135e-06, 2.112632448363347354e-06, 2.112878021275546514e-06, 2.113120114915593119e-06, 2.113358729397759963e-06, 2.113593864842027144e-06, 2.113825521373989744e-06, 2.114053699124920504e-06, 2.114278398231752465e-06, 2.114499618837072613e-06, 2.114717361089134583e-06, 2.114931625141890001e-06, 2.115142411154838983e-06, 2.115349719293252057e-06, 2.115553549728004143e-06, 2.115753902635590226e-06, 2.115950778198233352e-06, 2.116144176603777899e-06, 2.116334098045653582e-06, 2.116520542723047398e-06, 2.116703510840716856e-06, 2.116883002609081459e-06, 2.117059018244255732e-06, 2.117231557967895493e-06, 2.117400622007416383e-06, 2.117566210595801167e-06, 2.117728323971679354e-06, 2.117886962379360658e-06, 2.118042126068769349e-06, 2.118193815295426046e-06, 2.118342030320558673e-06, 2.118486771410986844e-06, 2.118628038839154895e-06, 2.118765832883206000e-06, 2.118900153826803022e-06, 2.119031001959350014e-06, 2.119158377575801636e-06, 2.119282280976785975e-06, 2.119402712468507982e-06, 2.119519672362864247e-06, 2.119633160977306201e-06, 2.119743178634955738e-06, 2.119849725664537451e-06, 2.119952802400368467e-06, 2.120052409182455435e-06, 2.120148546356334012e-06, 2.120241214273196338e-06, 2.120330413289866901e-06, 2.120416143768756795e-06, 2.120498406077885742e-06, 2.120577200590894374e-06, 2.120652527687016706e-06, 2.120724387751110628e-06, 2.120792781173628682e-06, 2.120857708350631616e-06, 2.120919169683772712e-06, 2.120977165580321083e-06, 2.121031696453112539e-06, 2.121082762720629637e-06, 2.121130364806911047e-06, 2.121174503141594750e-06, 2.121215178159940907e-06, 2.121252390302765793e-06, 2.121286140016486264e-06, 2.121316427753121877e-06, 2.121343253970260157e-06, 2.121366619131079474e-06, 2.121386523704350306e-06, 2.121402968164400092e-06, 2.121415952991178877e-06, 2.121425478670184346e-06, 2.121431545692486391e-06, 2.121434154554759721e-06, 2.121433305759216948e-06, 2.121428999813664912e-06, 2.121421237231489010e-06, 2.121410018531625672e-06, 2.121395344238586922e-06, 2.121377214882446825e-06, 2.121355630998844454e-06, 2.121330593128974144e-06, 2.121302101819616418e-06, 2.121270157623078259e-06, 2.121234761097242673e-06, 2.121195912805543695e-06, 2.121153613316972317e-06, 2.121107863206063366e-06, 2.121058663052914131e-06, 2.121006013443147522e-06, 2.120949914967966702e-06, 2.120890368224081818e-06, 2.120827373813782847e-06, 2.120760932344876915e-06, 2.120691044430723025e-06, 2.120617710690204530e-06, 2.120540931747753272e-06, 2.120460708233325440e-06, 2.120377040782421904e-06, 2.120289930036068304e-06, 2.120199376640798112e-06, 2.120105381248713620e-06, 2.120007944517411395e-06, 2.119907067110006429e-06, 2.119802749695161352e-06, 2.119694992947032228e-06, 2.119583797545305823e-06, 2.119469164175188593e-06, 2.119351093527379577e-06, 2.119229586298116990e-06, 2.119104643189122735e-06, 2.118976264907642217e-06, 2.118844452166419782e-06, 2.118709205683701251e-06, 2.118570526183244937e-06, 2.118428414394306399e-06, 2.118282871051617683e-06, 2.118133896895442812e-06, 2.117981492671501545e-06, 2.117825659131031638e-06, 2.117666397030754115e-06, 2.117503707132863526e-06, 2.117337590205064796e-06, 2.117168047020533410e-06, 2.116995078357911605e-06, 2.116818685001351143e-06, 2.116638867740452749e-06, 2.116455627370310158e-06, 2.116268964691477501e-06, 2.116078880509995143e-06, 2.115885375637362151e-06, 2.115688450890543074e-06, 2.115488107091964976e-06, 2.115284345069532681e-06, 2.115077165656595745e-06, 2.114866569691950564e-06, 2.114652558019884007e-06, 2.114435131490112844e-06, 2.114214290957816361e-06, 2.113990037283602904e-06, 2.113762371333549261e-06, 2.113531293979167631e-06, 2.113296806097417483e-06, 2.113058908570684378e-06, 2.112817602286818934e-06, 2.112572888139094051e-06, 2.112324767026202791e-06, 2.112073239852286758e-06, 2.111818307526915764e-06, 2.111559970965074281e-06, 2.111298231087178379e-06, 2.111033088819076575e-06, 2.110764545092023147e-06, 2.110492600842699317e-06, 2.110217257013184870e-06, 2.109938514550996694e-06, 2.109656374409058715e-06, 2.109370837545672244e-06, 2.109081904924572734e-06, 2.108789577514910296e-06, 2.108493856291204807e-06, 2.108194742233400117e-06, 2.107892236326823820e-06, 2.107586339562193603e-06, 2.107277052935626142e-06, 2.106964377448619735e-06, 2.106648314108091151e-06, 2.106328863926301513e-06, 2.106006027920902886e-06, 2.105679807114938276e-06, 2.105350202536817911e-06, 2.105017215220340422e-06, 2.104680846204654723e-06, 2.104341096534319303e-06, 2.103997967259188301e-06, 2.103651459434545338e-06, 2.103301574121033636e-06, 2.102948312384609007e-06, 2.102591675296620321e-06, 2.102231663933775628e-06, 2.101868279378098955e-06, 2.101501522717002729e-06, 2.101131395043230603e-06, 2.100757897454860419e-06, 2.100381031055340632e-06, 2.100000796953417890e-06, 2.099617196263194203e-06, 2.099230230104133303e-06, 2.098839899600993299e-06, 2.098446205883871573e-06, 2.098049150088203933e-06, 2.097648733354712943e-06, 2.097244956829487119e-06, 2.096837821663907241e-06, 2.096427329014679807e-06, 2.096013480043812896e-06, 2.095596275918651315e-06, 2.095175717811792750e-06, 2.094751806901218624e-06, 2.094324544370135711e-06, 2.093893931407091324e-06, 2.093459969205936897e-06, 2.093022658965755141e-06, 2.092582001891015048e-06, 2.092137999191423238e-06, 2.091690652081948526e-06, 2.091239961782876973e-06, 2.090785929519782667e-06, 2.090328556523464198e-06, 2.089867844030070861e-06, 2.089403793280958661e-06, 2.088936405522781799e-06, 2.088465682007465980e-06, 2.087991623992180046e-06, 2.087514232739368583e-06, 2.087033509516742605e-06, 2.086549455597229155e-06, 2.086062072259040759e-06, 2.085571360785650022e-06, 2.085077322465712962e-06, 2.084579958593219792e-06, 2.084079270467347104e-06, 2.083575259392488367e-06, 2.083067926678315338e-06, 2.082557273639711564e-06, 2.082043301596807964e-06, 2.081526011874946826e-06, 2.081005405804670373e-06, 2.080481484721782174e-06, 2.079954249967296744e-06, 2.079423702887376018e-06, 2.078889844833508497e-06, 2.078352677162322054e-06, 2.077812201235633911e-06, 2.077268418420501457e-06, 2.076721330089165925e-06, 2.076170937619063823e-06, 2.075617242392835406e-06, 2.075060245798324254e-06, 2.074499949228481130e-06, 2.073936354081548213e-06, 2.073369461760890114e-06, 2.072799273675059096e-06, 2.072225791237796770e-06, 2.071649015867977768e-06, 2.071068948989683008e-06, 2.070485592032139981e-06, 2.069898946429768491e-06, 2.069309013622109924e-06, 2.068715795053901793e-06, 2.068119292174973970e-06, 2.067519506440358806e-06, 2.066916439310228022e-06, 2.066310092249886361e-06, 2.065700466729792336e-06, 2.065087564225513763e-06, 2.064471386217783667e-06, 2.063851934192450726e-06, 2.063229209640506379e-06, 2.062603214058047557e-06, 2.061973948946325387e-06, 2.061341415811641851e-06, 2.060705616165460753e-06, 2.060066551524425500e-06, 2.059424223410150737e-06, 2.058778633349443847e-06, 2.058129782874218970e-06, 2.057477673521425860e-06, 2.056822306833159571e-06, 2.056163684356617686e-06, 2.055501807644062194e-06, 2.054836678252861426e-06, 2.054168297745413816e-06, 2.053496667689241924e-06, 2.052821789656987354e-06, 2.052143665226265064e-06, 2.051462295979824302e-06, 2.050777683505494397e-06, 2.050089829396089465e-06, 2.049398735249560879e-06, 2.048704402668882491e-06, 2.048006833262095955e-06, 2.047306028642270909e-06, 2.046601990427565544e-06, 2.045894720241079639e-06, 2.045184219711123499e-06, 2.044470490470865159e-06, 2.043753534158606101e-06, 2.043033352417685533e-06, 2.042309946896354185e-06, 2.041583319248054251e-06, 2.040853471131139870e-06, 2.040120404208975803e-06, 2.039384120149971317e-06, 2.038644620627566207e-06, 2.037901907320097390e-06, 2.037155981911094517e-06, 2.036406846088881446e-06, 2.035654501546895150e-06, 2.034898949983566707e-06, 2.034140193102205259e-06, 2.033378232611259321e-06, 2.032613070224076220e-06, 2.031844707658942759e-06, 2.031073146639178810e-06, 2.030298388893082679e-06, 2.029520436153815914e-06, 2.028739290159661646e-06, 2.027954952653778954e-06, 2.027167425384226152e-06, 2.026376710104103943e-06, 2.025582808571423705e-06, 2.024785722549152802e-06, 2.023985453805205273e-06, 2.023182004112389737e-06, 2.022375375248491977e-06, 2.021565568996251651e-06, 2.020752587143207702e-06, 2.019936431482002025e-06, 2.019117103810113074e-06, 2.018294605929855860e-06, 2.017468939648581428e-06, 2.016640106778498557e-06, 2.015808109136708066e-06, 2.014972948545264645e-06, 2.014134626831011262e-06, 2.013293145825803202e-06, 2.012448507366314521e-06, 2.011600713294130370e-06, 2.010749765455739377e-06, 2.009895665702498914e-06, 2.009038415890563522e-06, 2.008178017881057288e-06, 2.007314473539937889e-06, 2.006447784738033868e-06, 2.005577953351008206e-06, 2.004704981259448112e-06, 2.003828870348676131e-06, 2.002949622508963600e-06, 2.002067239635384530e-06, 2.001181723627869823e-06, 2.000293076391219545e-06, 1.999401299834946234e-06, 1.998506395873522227e-06, 1.997608366426192046e-06, 1.996707213417027452e-06, 1.995802938774924908e-06, 1.994895544433612350e-06, 1.993985032331542044e-06, 1.993071404412072691e-06, 1.992154662623308919e-06, 1.991234808918191915e-06, 1.990311845254438436e-06, 1.989385773594582316e-06, 1.988456595905849528e-06, 1.987524314160351309e-06, 1.986588930334950748e-06, 1.985650446411269144e-06, 1.984708864375756307e-06, 1.983764186219505479e-06, 1.982816413938446041e-06, 1.981865549533389245e-06, 1.980911595009665688e-06, 1.979954552377514524e-06, 1.978994423651916597e-06, 1.978031210852453409e-06, 1.977064916003708193e-06, 1.976095541134727623e-06, 1.975123088279449138e-06, 1.974147559476531966e-06, 1.973168956769257169e-06, 1.972187282205673755e-06, 1.971202537838693551e-06, 1.970214725725689706e-06, 1.969223847928898608e-06, 1.968229906515268690e-06, 1.967232903556287210e-06, 1.966232841128360571e-06, 1.965229721312481435e-06, 1.964223546194242701e-06, 1.963214317864052650e-06, 1.962202038416982053e-06, 1.961186709952621031e-06, 1.960168334575513995e-06, 1.959146914394585368e-06, 1.958122451523590621e-06, 1.957094948080937558e-06, 1.956064406189515207e-06, 1.955030827977133859e-06, 1.953994215576100280e-06, 1.952954571123297754e-06, 1.951911896760360998e-06, 1.950866194633559690e-06, 1.949817466893624410e-06, 1.948765715696205304e-06, 1.947710943201285940e-06, 1.946653151573623337e-06, 1.945592342982544685e-06, 1.944528519601996464e-06, 1.943461683610517344e-06, 1.942391837191286467e-06, 1.941318982531961660e-06, 1.940243121824904748e-06, 1.939164257267089650e-06, 1.938082391059874528e-06, 1.936997525409463842e-06, 1.935909662526499236e-06, 1.934818804626121791e-06, 1.933724953928154564e-06, 1.932628112656931909e-06, 1.931528283041373169e-06, 1.930425467314965313e-06, 1.929319667715619786e-06, 1.928210886485928313e-06, 1.927099125872968084e-06, 1.925984388128367818e-06, 1.924866675508264568e-06, 1.923745990273390964e-06, 1.922622334688847787e-06, 1.921495711024396190e-06, 1.920366121554265426e-06, 1.919233568557189271e-06, 1.918098054316412795e-06, 1.916959581119721592e-06, 1.915818151259259237e-06, 1.914673767031802155e-06, 1.913526430738566914e-06, 1.912376144685247925e-06, 1.911222911182060212e-06, 1.910066732543574243e-06, 1.908907611088942511e-06, 1.907745549141746643e-06, 1.906580549030042508e-06, 1.905412613086320191e-06, 1.904241743647569215e-06, 1.903067943055105750e-06, 1.901891213654802365e-06, 1.900711557796943192e-06, 1.899528977836230906e-06, 1.898343476131808544e-06, 1.897155055047293169e-06, 1.895963716950561998e-06, 1.894769464214064105e-06, 1.893572299214612059e-06, 1.892372224333408174e-06, 1.891169241956128792e-06, 1.889963354472684150e-06, 1.888754564277486466e-06, 1.887542873769475135e-06, 1.886328285351674583e-06, 1.885110801431699306e-06, 1.883890424421523266e-06, 1.882667156737299898e-06, 1.881441000799887695e-06, 1.880211959034174694e-06, 1.878980033869587339e-06, 1.877745227739905607e-06, 1.876507543083117960e-06, 1.875266982341639457e-06, 1.874023547962382262e-06, 1.872777242396292748e-06, 1.871528068098825197e-06, 1.870276027529789757e-06, 1.869021123153099604e-06, 1.867763357437274928e-06, 1.866502732855007129e-06, 1.865239251883182965e-06, 1.863972917003147337e-06, 1.862703730700536430e-06, 1.861431695465073995e-06, 1.860156813791138654e-06, 1.858879088177004323e-06, 1.857598521125464048e-06, 1.856315115143553877e-06, 1.855028872742375402e-06, 1.853739796437616901e-06, 1.852447888749047021e-06, 1.851153152200613032e-06, 1.849855589320639673e-06, 1.848555202641712468e-06, 1.847251994700431669e-06, 1.845945968038007501e-06, 1.844637125199515202e-06, 1.843325468734454911e-06, 1.842011001196508990e-06, 1.840693725143550498e-06, 1.839373643137691048e-06, 1.838050757745280803e-06, 1.836725071536706675e-06, 1.835396587086733253e-06, 1.834065306974237474e-06, 1.832731233782311530e-06, 1.831394370098198925e-06, 1.830054718513391243e-06, 1.828712281623385264e-06, 1.827367062028005259e-06, 1.826019062331178739e-06, 1.824668285141005064e-06, 1.823314733069762219e-06, 1.821958408733745665e-06, 1.820599314753540663e-06, 1.819237453753804798e-06, 1.817872828363351618e-06, 1.816505441215093678e-06, 1.815135294946144605e-06, 1.813762392197558634e-06, 1.812386735614676834e-06, 1.811008327846889939e-06, 1.809627171547680274e-06, 1.808243269374642723e-06, 1.806856623989515006e-06, 1.805467238057956184e-06, 1.804075114249873399e-06, 1.802680255239197622e-06, 1.801282663703937020e-06, 1.799882342326230312e-06, 1.798479293792084197e-06, 1.797073520791758325e-06, 1.795665026019498693e-06, 1.794253812173599059e-06, 1.792839881956401150e-06, 1.791423238074345064e-06, 1.790003883237720450e-06, 1.788581820161023534e-06, 1.787157051562721646e-06, 1.785729580165289429e-06, 1.784299408695275539e-06, 1.782866539883071626e-06, 1.781430976463238221e-06, 1.779992721174281122e-06, 1.778551776758688666e-06, 1.777108145962945704e-06, 1.775661831537577643e-06, 1.774212836236907989e-06, 1.772761162819352473e-06, 1.771306814047472419e-06, 1.769849792687436663e-06, 1.768390101509612784e-06, 1.766927743288301559e-06, 1.765462720801536638e-06, 1.763995036831700551e-06, 1.762524694164691015e-06, 1.761051695590569970e-06, 1.759576043903354792e-06, 1.758097741900776669e-06, 1.756616792384609470e-06, 1.755133198160729029e-06, 1.753646962038543097e-06, 1.752158086831600993e-06, 1.750666575357361939e-06, 1.749172430436907918e-06, 1.747675654895670215e-06, 1.746176251562495776e-06, 1.744674223270370148e-06, 1.743169572856085235e-06, 1.741662303160350466e-06, 1.740152417027497185e-06, 1.738639917306131286e-06, 1.737124806848298252e-06, 1.735607088510113985e-06, 1.734086765151532080e-06, 1.732563839636106444e-06, 1.731038314831571730e-06, 1.729510193609319442e-06, 1.727979478844408950e-06, 1.726446173415930650e-06, 1.724910280206752922e-06, 1.723371802103310999e-06, 1.721830741996269559e-06, 1.720287102779647536e-06, 1.718740887351497641e-06, 1.717192098613650992e-06, 1.715640739471470195e-06, 1.714086812834461332e-06, 1.712530321615707928e-06, 1.710971268731921773e-06, 1.709409657103762256e-06, 1.707845489655563616e-06, 1.706278769315420072e-06, 1.704709499015149401e-06, 1.703137681690381028e-06, 1.701563320280261044e-06, 1.699986417727865566e-06, 1.698406976979914220e-06, 1.696825000986836849e-06, 1.695240492702839157e-06, 1.693653455085629328e-06, 1.692063891096800254e-06, 1.690471803701585795e-06, 1.688877195868888312e-06, 1.687280070571293277e-06, 1.685680430785129412e-06, 1.684078279490186841e-06, 1.682473619670121966e-06, 1.680866454312184306e-06, 1.679256786407272610e-06, 1.677644618950005157e-06, 1.676029954938423301e-06, 1.674412797374420490e-06, 1.672793149263453002e-06, 1.671171013614589925e-06, 1.669546393440524163e-06, 1.667919291757639570e-06, 1.666289711585715962e-06, 1.664657655948341206e-06, 1.663023127872630639e-06, 1.661386130389291016e-06, 1.659746666532622416e-06, 1.658104739340560598e-06, 1.656460351854425428e-06, 1.654813507119316021e-06, 1.653164208183799882e-06, 1.651512458100027887e-06, 1.649858259923774518e-06, 1.648201616714133571e-06, 1.646542531533902279e-06, 1.644881007449602914e-06, 1.643217047530891771e-06, 1.641550654851217100e-06, 1.639881832487545301e-06, 1.638210583520159757e-06, 1.636536911033045382e-06, 1.634860818113640447e-06, 1.633182307852859655e-06, 1.631501383345125486e-06, 1.629818047688419015e-06, 1.628132303983908493e-06, 1.626444155336744071e-06, 1.624753604855039034e-06, 1.623060655650664952e-06, 1.621365310838941241e-06, 1.619667573538434421e-06, 1.617967446871310687e-06, 1.616264933963375724e-06, 1.614560037943447268e-06, 1.612852761944065974e-06, 1.611143109101186041e-06, 1.609431082553906066e-06, 1.607716685445240690e-06, 1.605999920921100349e-06, 1.604280792131094049e-06, 1.602559302228153070e-06, 1.600835454368671997e-06, 1.599109251712144922e-06, 1.597380697421943442e-06, 1.595649794664312712e-06, 1.593916546609159823e-06, 1.592180956429751199e-06, 1.590443027302421641e-06, 1.588702762407291126e-06, 1.586960164927608363e-06, 1.585215238049813677e-06, 1.583467984963905359e-06, 1.581718408863205877e-06, 1.579966512944079397e-06, 1.578212300406704485e-06, 1.576455774454066986e-06, 1.574696938292754540e-06, 1.572935795132647842e-06, 1.571172348186632222e-06, 1.569406600671316992e-06, 1.567638555806382380e-06, 1.565868216814642003e-06, 1.564095586922386758e-06, 1.562320669359108692e-06, 1.560543467357564106e-06, 1.558763984153752166e-06, 1.556982222987002147e-06, 1.555198187099662364e-06, 1.553411879737545705e-06, 1.551623304149612000e-06, 1.549832463588055260e-06, 1.548039361308356410e-06, 1.546244000568985553e-06, 1.544446384631857040e-06, 1.542646516761988326e-06, 1.540844400227633380e-06, 1.539040038300193957e-06, 1.537233434254355124e-06, 1.535424591367753858e-06, 1.533613512921418653e-06, 1.531800202199470525e-06, 1.529984662489203048e-06, 1.528166897081123229e-06, 1.526346909268677067e-06, 1.524524702348672648e-06, 1.522700279620986220e-06, 1.520873644388617257e-06, 1.519044799957703063e-06, 1.517213749637567058e-06, 1.515380496740416811e-06, 1.513545044581816468e-06, 1.511707396480337355e-06, 1.509867555757649033e-06, 1.508025525738524802e-06, 1.506181309750893796e-06, 1.504334911125524405e-06, 1.502486333196499033e-06, 1.500635579300888840e-06, 1.498782652778830823e-06, 1.496927556973587743e-06, 1.495070295231241071e-06, 1.493210870901074067e-06, 1.491349287335635936e-06, 1.489485547890050864e-06, 1.487619655922765311e-06, 1.485751614795268492e-06, 1.483881427871805232e-06, 1.482009098519876984e-06, 1.480134630109907680e-06, 1.478258026015312545e-06, 1.476379289612500434e-06, 1.474498424280946669e-06, 1.472615433402786471e-06, 1.470730320363680410e-06, 1.468843088551701828e-06, 1.466953741358196583e-06, 1.465062282177477686e-06, 1.463168714406555525e-06, 1.461273041445548040e-06, 1.459375266697745100e-06, 1.457475393568901648e-06, 1.455573425467999613e-06, 1.453669365806944670e-06, 1.451763218000239285e-06, 1.449854985465853463e-06, 1.447944671624086766e-06, 1.446032279898465523e-06, 1.444117813715403390e-06, 1.442201276503947023e-06, 1.440282671696189645e-06, 1.438362002727336054e-06, 1.436439273034956388e-06, 1.434514486059822992e-06, 1.432587645245554242e-06, 1.430658754038277850e-06, 1.428727815887465189e-06, 1.426794834245172355e-06, 1.424859812566118938e-06, 1.422922754308094811e-06, 1.420983662931613481e-06, 1.419042541900013732e-06, 1.417099394679509182e-06, 1.415154224738871908e-06, 1.413207035549905308e-06, 1.411257830587206506e-06, 1.409306613327814410e-06, 1.407353387252042346e-06, 1.405398155842713823e-06, 1.403440922585256973e-06, 1.401481690968111982e-06, 1.399520464482364740e-06, 1.397557246621855476e-06, 1.395592040883242289e-06, 1.393624850765667623e-06, 1.391655679771241503e-06, 1.389684531404715001e-06, 1.387711409173543769e-06, 1.385736316587903066e-06, 1.383759257160741339e-06, 1.381780234407450725e-06, 1.379799251846365105e-06, 1.377816312998412400e-06, 1.375831421387203084e-06, 1.373844580539003291e-06, 1.371855793982843870e-06, 1.369865065250146844e-06, 1.367872397875248242e-06, 1.365877795395030273e-06, 1.363881261349028690e-06, 1.361882799279485726e-06, 1.359882412731016154e-06, 1.357880105251114872e-06, 1.355875880389806441e-06, 1.353869741699716235e-06, 1.351861692736072352e-06, 1.349851737056785229e-06, 1.347839878222101209e-06, 1.345826119795099959e-06, 1.343810465341349308e-06, 1.341792918429001803e-06, 1.339773482628761468e-06, 1.337752161513979303e-06, 1.335728958660295418e-06, 1.333703877646168844e-06, 1.331676922052495531e-06, 1.329648095462704264e-06, 1.327617401462853022e-06, 1.325584843641247809e-06, 1.323550425588887556e-06, 1.321514150899530407e-06, 1.319476023168927149e-06, 1.317436045995665071e-06, 1.315394222980823433e-06, 1.313350557727697758e-06, 1.311305053842335999e-06, 1.309257714933152301e-06, 1.307208544611036257e-06, 1.305157546489420045e-06, 1.303104724183920763e-06, 1.301050081312782794e-06, 1.298993621496945144e-06, 1.296935348359263444e-06, 1.294875265525364603e-06, 1.292813376623299741e-06, 1.290749685283263815e-06, 1.288684195138039682e-06, 1.286616909823073906e-06, 1.284547832975686897e-06, 1.282476968235929268e-06, 1.280404319246241743e-06, 1.278329889651092211e-06, 1.276253683097922491e-06, 1.274175703235934749e-06, 1.272095953717032130e-06, 1.270014438195471891e-06, 1.267931160327592664e-06, 1.265846123772245802e-06, 1.263759332190886227e-06, 1.261670789246751230e-06, 1.259580498605763619e-06, 1.257488463936155003e-06, 1.255394688908104743e-06, 1.253299177194723145e-06, 1.251201932470783454e-06, 1.249102958413709703e-06, 1.247002258703115082e-06, 1.244899837020883678e-06, 1.242795697051177247e-06, 1.240689842480504463e-06, 1.238582276997358176e-06, 1.236473004292749461e-06, 1.234362028059945893e-06, 1.232249351994076611e-06, 1.230134979793049870e-06, 1.228018915156724431e-06, 1.225901161786994261e-06, 1.223781723388242336e-06, 1.221660603666954602e-06, 1.219537806331836442e-06, 1.217413335093854183e-06, 1.215287193665902211e-06, 1.213159385763314366e-06, 1.211029915103520471e-06, 1.208898785406103507e-06, 1.206766000392811471e-06, 1.204631563787650551e-06, 1.202495479316484688e-06, 1.200357750707591022e-06, 1.198218381691303712e-06, 1.196077376000074921e-06, 1.193934737368480113e-06, 1.191790469533306780e-06, 1.189644576233163957e-06, 1.187497061209057358e-06, 1.185347928203988309e-06, 1.183197180963034634e-06, 1.181044823233471786e-06, 1.178890858764361187e-06, 1.176735291307111176e-06, 1.174578124615109818e-06, 1.172419362443797752e-06, 1.170259008550670307e-06, 1.168097066695356275e-06, 1.165933540639242043e-06, 1.163768434146030632e-06, 1.161601750981355665e-06, 1.159433494912863311e-06, 1.157263669710217799e-06, 1.155092279145187811e-06, 1.152919326991252397e-06, 1.150744817024166376e-06, 1.148568753021579167e-06, 1.146391138763119493e-06, 1.144211978030480721e-06, 1.142031274607044140e-06, 1.139849032278346106e-06, 1.137665254832144316e-06, 1.135479946057597039e-06, 1.133293109746163295e-06, 1.131104749691249644e-06, 1.128914869687900598e-06, 1.126723473533371636e-06, 1.124530565026733428e-06, 1.122336147968967763e-06, 1.120140226163050768e-06, 1.117942803413580850e-06, 1.115743883527216614e-06, 1.113543470312803065e-06, 1.111341567580475243e-06, 1.109138179142631457e-06, 1.106933308813528197e-06, 1.104726960408990021e-06, 1.102519137746889825e-06, 1.100309844647216181e-06, 1.098099084931243883e-06, 1.095886862422439419e-06, 1.093673180946097600e-06, 1.091458044328967380e-06, 1.089241456400254744e-06, 1.087023420990310867e-06, 1.084803941931665278e-06, 1.082583023058644489e-06, 1.080360668206972403e-06, 1.078136881214721747e-06, 1.075911665921458988e-06, 1.073685026168318454e-06, 1.071456965798485984e-06, 1.069227488656891461e-06, 1.066996598589833781e-06, 1.064764299446021018e-06, 1.062530595075218551e-06, 1.060295489329307226e-06, 1.058058986061790803e-06, 1.055821089127882566e-06, 1.053581802384504903e-06, 1.051341129690376118e-06, 1.049099074905616783e-06, 1.046855641892326772e-06, 1.044610834514281814e-06, 1.042364656636550209e-06, 1.040117112126446592e-06, 1.037868204852650164e-06, 1.035617938685306977e-06, 1.033366317496498555e-06, 1.031113345159850560e-06, 1.028859025550619829e-06, 1.026603362545793264e-06, 1.024346360023688033e-06, 1.022088021864519926e-06, 1.019828351950119392e-06, 1.017567354163524749e-06, 1.015305032389959022e-06, 1.013041390515935905e-06, 1.010776432429352296e-06, 1.008510162019986141e-06, 1.006242583179076095e-06, 1.003973699799420412e-06, 1.001703515775379487e-06, 9.994320350029554768e-07, 9.971592613794028748e-07, 9.948851988038008967e-07, 9.926098511766621492e-07, 9.903332224000234748e-07, 9.880553163775357372e-07, 9.857761370140576694e-07, 9.834956882162494313e-07, 9.812139738921713285e-07, 9.789309979513661860e-07, 9.766467643048665480e-07, 9.743612768652757813e-07, 9.720745395463742048e-07, 9.697865562636942253e-07, 9.674973309341321843e-07, 9.652068674760298850e-07, 9.629151698092726365e-07, 9.606222418548845835e-07, 9.583280875356195122e-07, 9.560327107755496154e-07, 9.537361155001705249e-07, 9.514383056363789708e-07, 9.491392851125844840e-07, 9.468390578582829153e-07, 9.445376278045701606e-07, 9.422349988842154295e-07, 9.399311750307754604e-07, 9.376261601795680790e-07, 9.353199582672812929e-07, 9.330125732316505717e-07, 9.307040090120743224e-07, 9.283942695491802085e-07, 9.260833587849408761e-07, 9.237712806627639509e-07, 9.214580391270715924e-07, 9.191436381238028901e-07, 9.168280816005161429e-07, 9.145113735054634756e-07, 9.121935177885975376e-07, 9.098745184011659856e-07, 9.075543792953896114e-07, 9.052331044250783464e-07, 9.029106977452053102e-07, 9.005871632120059131e-07, 8.982625047829773268e-07, 8.959367264169683758e-07, 8.936098320736614712e-07, 8.912818257146883642e-07, 8.889527113022045902e-07, 8.866224927999914583e-07, 8.842911741730489465e-07, 8.819587593871797022e-07, 8.796252524099999762e-07, 8.772906572100192157e-07, 8.749549777567327083e-07, 8.726182180211293782e-07, 8.702803819753681140e-07, 8.679414735923792396e-07, 8.656014968469583512e-07, 8.632604557143584428e-07, 8.609183541713783437e-07, 8.585751961959692712e-07, 8.562309857668073974e-07, 8.538857268643161110e-07, 8.515394234697272943e-07, 8.491920795651978949e-07, 8.468436991342925236e-07, 8.444942861616796869e-07, 8.421438446327238345e-07, 8.397923785344816823e-07, 8.374398918548012865e-07, 8.350863885823895951e-07, 8.327318727073375015e-07, 8.303763482207002466e-07, 8.280198191145808508e-07, 8.256622893822440403e-07, 8.233037630176833072e-07, 8.209442440162432670e-07, 8.185837363742953509e-07, 8.162222440888257245e-07, 8.138597711584505621e-07, 8.114963215824927812e-07, 8.091318993610680164e-07, 8.067665084955984505e-07, 8.044001529883971333e-07, 8.020328368427573432e-07, 7.996645640630579377e-07, 7.972953386543255422e-07, 7.949251646228732138e-07, 7.925540459758626305e-07, 7.901819867213999122e-07, 7.878089908685426083e-07, 7.854350624273863075e-07, 7.830602054086451438e-07, 7.806844238242678022e-07, 7.783077216870102957e-07, 7.759301030105476680e-07, 7.735515718094528179e-07, 7.711721320992983548e-07, 7.687917878962360468e-07, 7.664105432176200253e-07, 7.640284020815627280e-07, 7.616453685070548599e-07, 7.592614465140550727e-07, 7.568766401230599901e-07, 7.544909533557350354e-07, 7.521043902344766212e-07, 7.497169547825284049e-07, 7.473286510239527013e-07, 7.449394829837427141e-07, 7.425494546873983849e-07, 7.401585701615381621e-07, 7.377668334334772844e-07, 7.353742485313324957e-07, 7.329808194840007630e-07, 7.305865503212783906e-07, 7.281914450734149513e-07, 7.257955077717472904e-07, 7.233987424482645746e-07, 7.210011531357161827e-07, 7.186027438677062555e-07, 7.162035186782641445e-07, 7.138034816023659721e-07, 7.114026366760330995e-07, 7.090009879353738146e-07, 7.065985394176377822e-07, 7.041952951607804572e-07, 7.017912592031421653e-07, 6.993864355840805186e-07, 6.969808283435332410e-07, 6.945744415221179061e-07, 6.921672791611303493e-07, 6.897593453026377352e-07, 6.873506439889515975e-07, 6.849411792637714393e-07, 6.825309551707104721e-07, 6.801199757544448280e-07, 6.777082450602857020e-07, 6.752957671337526591e-07, 6.728825460216161204e-07, 6.704685857709456154e-07, 6.680538904292115319e-07, 6.656384640447978886e-07, 6.632223106666848039e-07, 6.608054343440219083e-07, 6.583878391272743806e-07, 6.559695290667436045e-07, 6.535505082137264392e-07, 6.511307806200741269e-07, 6.487103503377742822e-07, 6.462892214199942248e-07, 6.438673979201251029e-07, 6.414448838918870310e-07, 6.390216833898370981e-07, 6.365978004690563890e-07, 6.341732391847190563e-07, 6.317480035931393586e-07, 6.293220977508163141e-07, 6.268955257145292026e-07, 6.244682915418673851e-07, 6.220403992907910115e-07, 6.196118530197348876e-07, 6.171826567877083193e-07, 6.147528146538600553e-07, 6.123223306781185383e-07, 6.098912089208506561e-07, 6.074594534424444727e-07, 6.050270683043585955e-07, 6.025940575681596289e-07, 6.001604252956217003e-07, 5.977261755492498204e-07, 5.952913123918563675e-07, 5.928558398866443073e-07, 5.904197620973246142e-07, 5.879830830876734835e-07, 5.855458069221665485e-07, 5.831079376655474222e-07, 5.806694793829246831e-07, 5.782304361397680632e-07, 5.757908120020079747e-07, 5.733506110355985466e-07, 5.709098373071608407e-07, 5.684684948835384764e-07, 5.660265878318993810e-07, 5.635841202197350484e-07, 5.611410961149540303e-07, 5.586975195854560904e-07, 5.562533946997565738e-07, 5.538087255265563255e-07, 5.513635161348512759e-07, 5.489177705940136495e-07, 5.464714929733733193e-07, 5.440246873428461994e-07, 5.415773577725031047e-07, 5.391295083326649368e-07, 5.366811430938984487e-07, 5.342322661271212764e-07, 5.317828815031609532e-07, 5.293329932933893367e-07, 5.268826055692976105e-07, 5.244317224025800340e-07, 5.219803478651484484e-07, 5.195284860292117919e-07, 5.170761409668559707e-07, 5.146233167506739465e-07, 5.121700174533295139e-07, 5.097162471476583094e-07, 5.072620099067732670e-07, 5.048073098036209844e-07, 5.023521509115157777e-07, 4.998965373042427013e-07, 4.974404730550802841e-07, 4.949839622378707554e-07, 4.925270089265804348e-07, 4.900696171948661572e-07, 4.876117911172483076e-07, 4.851535347676039495e-07, 4.826948522203357304e-07, 4.802357475499426477e-07, 4.777762248306856827e-07, 4.753162881371177780e-07, 4.728559415441918351e-07, 4.703951891262770434e-07, 4.679340349582339248e-07, 4.654724831149771050e-07, 4.630105376710313632e-07, 4.605482027016167865e-07, 4.580854822816539301e-07, 4.556223804858758371e-07, 4.531589013893589698e-07, 4.506950490671943486e-07, 4.482308275940429661e-07, 4.457662410453243857e-07, 4.433012934956940413e-07, 4.408359890202260656e-07, 4.383703316939741038e-07, 4.359043255915272036e-07, 4.334379747880958701e-07, 4.309712833585224138e-07, 4.285042553773845003e-07, 4.260368949195332281e-07, 4.235692060597567504e-07, 4.211011928723444241e-07, 4.186328594322685262e-07, 4.161642098136635654e-07, 4.136952480910078926e-07, 4.112259783385810179e-07, 4.087564046305593779e-07, 4.062865310410157538e-07, 4.038163616440121269e-07, 4.013459005131699155e-07, 3.988751517223049322e-07, 3.964041193451020168e-07, 3.939328074546688093e-07, 3.914612201246189989e-07, 3.889893614280906658e-07, 3.865172354378368608e-07, 3.840448462267745355e-07, 3.815721978675368327e-07, 3.790992944325773239e-07, 3.766261399942720773e-07, 3.741527386244767125e-07, 3.716790943951708860e-07, 3.692052113780238700e-07, 3.667310936444877257e-07, 3.642567452657959266e-07, 3.617821703130646325e-07, 3.593073728568472024e-07, 3.568323569677884751e-07, 3.543571267161751003e-07, 3.518816861720413117e-07, 3.494060394051616217e-07, 3.469301904851545828e-07, 3.444541434810368245e-07, 3.419779024618720398e-07, 3.395014714963324336e-07, 3.370248546527928491e-07, 3.345480559994434766e-07, 3.320710796038348904e-07, 3.295939295335375173e-07, 3.271166098556920737e-07, 3.246391246371113683e-07, 3.221614779442792963e-07, 3.196836738434479307e-07, 3.172057164001966413e-07, 3.147276096800799165e-07, 3.122493577481870647e-07, 3.097709646692368704e-07, 3.072924345076905671e-07, 3.048137713273006863e-07, 3.023349791917618969e-07, 2.998560621642685886e-07, 2.973770243076191104e-07, 2.948978696842036473e-07, 2.924186023561124289e-07, 2.899392263846892367e-07, 2.874597458310707000e-07, 2.849801647562927040e-07, 2.825004872202950202e-07, 2.800207172830118617e-07, 2.775408590039275080e-07, 2.750609164416279076e-07, 2.725808936550051052e-07, 2.701007947017114070e-07, 2.676206236393619557e-07, 2.651403845250870205e-07, 2.626600814151963074e-07, 2.601797183657266190e-07, 2.576992994325364047e-07, 2.552188286703167963e-07, 2.527383101336829576e-07, 2.502577478767249978e-07, 2.477771459525658731e-07, 2.452965084145586153e-07, 2.428158393147495488e-07, 2.403351427050700136e-07, 2.378544226367897901e-07, 2.353736831607231141e-07, 2.328929283266778139e-07, 2.304121621846541793e-07, 2.279313887833032827e-07, 2.254506121711247101e-07, 2.229698363960272417e-07, 2.204890655048746309e-07, 2.180083035445821943e-07, 2.155275545611237186e-07, 2.130468225996306687e-07, 2.105661117049354015e-07, 2.080854259212375928e-07, 2.056047692916575077e-07, 2.031241458594357690e-07, 2.006435596663912019e-07, 1.981630147541212914e-07, 1.956825151634475342e-07, 1.932020649345183009e-07, 1.907216681068014236e-07, 1.882413287191895465e-07, 1.857610508095531829e-07, 1.832808384153921900e-07, 1.808006955733911823e-07, 1.783206263195228959e-07, 1.758406346890413065e-07, 1.733607247165855499e-07, 1.708809004357323178e-07, 1.684011658796508791e-07, 1.659215250806562962e-07, 1.634419820703113079e-07, 1.609625408795322870e-07, 1.584832055381405517e-07, 1.560039800755173602e-07, 1.535248685201569152e-07, 1.510458748997706025e-07, 1.485670032412789965e-07, 1.460882575709171836e-07, 1.436096419137860206e-07, 1.411311602945083990e-07, 1.386528167367806094e-07, 1.361746152634767383e-07, 1.336965598966428177e-07, 1.312186546575995550e-07, 1.287409035664956285e-07, 1.262633106429622326e-07, 1.237858799056650231e-07, 1.213086153724103413e-07, 1.188315210602456926e-07, 1.163546009850153722e-07, 1.138778591620140834e-07, 1.114012996055390816e-07, 1.089249263289944529e-07, 1.064487433448848136e-07, 1.039727546649194160e-07, 1.014969642995645183e-07, 9.902137625869792862e-08, 9.654599455116150766e-08, 9.407082318486671644e-08, 9.159586616689618106e-08, 8.912112750305799446e-08, 8.664661119853971856e-08, 8.417232125746129643e-08, 8.169826168297955497e-08, 7.922443647728022425e-08, 7.675084964168402844e-08, 7.427750517619762598e-08, 7.180440708005867524e-08, 6.933155935183951671e-08, 6.685896598845020193e-08, 6.438663098623210572e-08, 6.191455834051212211e-08, 5.944275204515605301e-08, 5.697121609377190452e-08, 5.449995447816356212e-08, 5.202897118953494067e-08, 4.955827021804317447e-08, 4.708785555246214011e-08, 4.461773118072639716e-08, 4.214790109003485708e-08, 3.967836926585409013e-08, 3.720913969301251327e-08, 3.474021635525306412e-08, 3.227160323478804545e-08, 2.980330431350183916e-08, 2.733532357140522005e-08, 2.486766498783835106e-08, 2.240033254091523882e-08, 1.993333020773671946e-08, 1.746666196383434836e-08, 1.500033178437410348e-08, 1.253434364261014986e-08, 1.006870151108834933e-08, 7.603409361199875887e-09, 5.138471162735295763e-09, 2.673890884977662266e-09, 2.096724957065971283e-10, -2.254180038697936174e-09, -4.717662752712334813e-09, -7.180771682005461600e-09, -9.643502863884560475e-09, -1.210585233609261675e-08, -1.456781613835325258e-08, -1.702939031116814942e-08, -1.949057089626302579e-08, -2.195135393703313524e-08, -2.441173547745119932e-08, -2.687171156306241988e-08, -2.933127824088044947e-08, -3.179043155884506532e-08, -3.424916756626738105e-08, -3.670748231372639949e-08, -3.916537185307541837e-08, -4.162283223733828864e-08, -4.407985952115482805e-08, -4.653644976012853961e-08, -4.899259901127194580e-08, -5.144830333290307185e-08, -5.390355878454200187e-08, -5.635836142735558436e-08, -5.881270732350615653e-08, -6.126659253659585278e-08, -6.372001313156376298e-08, -6.617296517469145146e-08, -6.862544473350100858e-08, -7.107744787719773803e-08, -7.352897067601992661e-08, -7.598000920168378805e-08, -7.843055952727898677e-08, -8.088061772716610718e-08, -8.333017987742102836e-08, -8.577924205518306599e-08, -8.822780033910130584e-08, -9.067585080922822168e-08, -9.312338954702907204e-08, -9.557041263527594174e-08, -9.801691615849383701e-08, -1.004628962023085761e-07, -1.029083488538916402e-07, -1.053532702018578548e-07, -1.077976563362690688e-07, -1.102415033485327620e-07, -1.126848073318454007e-07, -1.151275643805422606e-07, -1.175697705905412456e-07, -1.200114220592389670e-07, -1.224525148854091269e-07, -1.248930451696441126e-07, -1.273330090138154505e-07, -1.297724025209715927e-07, -1.322112217963255311e-07, -1.346494629461700658e-07, -1.370871220783203798e-07, -1.395241953024464465e-07, -1.419606787294281728e-07, -1.443965684717925214e-07, -1.468318606436145134e-07, -1.492665513605217284e-07, -1.517006367395922370e-07, -1.541341128999049605e-07, -1.565669759613473660e-07, -1.589992220461480403e-07, -1.614308472776814469e-07, -1.638618477809131478e-07, -1.662922196827303316e-07, -1.687219591114054298e-07, -1.711510621964901056e-07, -1.735795250698050380e-07, -1.760073438643553757e-07, -1.784345147147718561e-07, -1.808610337577529032e-07, -1.832868971308736204e-07, -1.857121009741149226e-07, -1.881366414286736673e-07, -1.905605146374028729e-07, -1.929837167451435707e-07, -1.954062438981897181e-07, -1.978280922441825845e-07, -2.002492579330962737e-07, -2.026697371161580748e-07, -2.050895259462867489e-07, -2.075086205785350770e-07, -2.099270171690089139e-07, -2.123447118758513611e-07, -2.147617008591391636e-07, -2.171779802803470684e-07, -2.195935463026768956e-07, -2.220083950915017817e-07, -2.244225228131748802e-07, -2.268359256365570651e-07, -2.292485997318262142e-07, -2.316605412709226427e-07, -2.340717464279821752e-07, -2.364822113782626902e-07, -2.388919322991248786e-07, -2.413009053699276346e-07, -2.437091267714938699e-07, -2.461165926865506524e-07, -2.485232992996272716e-07, -2.509292427969487767e-07, -2.533344193668796637e-07, -2.557388251992775885e-07, -2.581424564859337188e-07, -2.605453094204707721e-07, -2.629473801983459274e-07, -2.653486650167541049e-07, -2.677491600750604820e-07, -2.701488615741609835e-07, -2.725477657169213620e-07, -2.749458687080723252e-07, -2.773431667542172117e-07, -2.797396560637298706e-07, -2.821353328471915192e-07, -2.845301933167518677e-07, -2.869242336865622183e-07, -2.893174501726757797e-07, -2.917098389929472409e-07, -2.941013963674672991e-07, -2.964921185179229908e-07, -2.988820016680348672e-07, -3.012710420434555084e-07, -3.036592358717731766e-07, -3.060465793824134014e-07, -3.084330688070716020e-07, -3.108187003790767006e-07, -3.132034703338263913e-07, -3.155873749086828496e-07, -3.179704103429823142e-07, -3.203525728779321724e-07, -3.227338587570460705e-07, -3.251142642255045097e-07, -3.274937855305917566e-07, -3.298724189215952575e-07, -3.322501606496993890e-07, -3.346270069684257565e-07, -3.370029541331018396e-07, -3.393779984007568598e-07, -3.417521360310938571e-07, -3.441253632854252342e-07, -3.464976764271047958e-07, -3.488690717218557629e-07, -3.512395454371336973e-07, -3.536090938425632007e-07, -3.559777132098332527e-07, -3.583453998127032463e-07, -3.607121499269051553e-07, -3.630779598306798651e-07, -3.654428258036089554e-07, -3.678067441281181310e-07, -3.701697110883015395e-07, -3.725317229703667290e-07, -3.748927760629483143e-07, -3.772528666565840347e-07, -3.796119910436198859e-07, -3.819701455191667907e-07, -3.843273263800446672e-07, -3.866835299252144677e-07, -3.890387524562108543e-07, -3.913929902759730284e-07, -3.937462396903446146e-07, -3.960984970069060256e-07, -3.984497585354067136e-07, -4.008000205880926546e-07, -4.031492794791724000e-07, -4.054975315247266026e-07, -4.078447730436651645e-07, -4.101910003566691332e-07, -4.125362097866236951e-07, -4.148803976590462972e-07, -4.172235603010355323e-07, -4.195656940422242101e-07, -4.219067952146888300e-07, -4.242468601524141511e-07, -4.265858851917328547e-07, -4.289238666712176008e-07, -4.312608009315855251e-07, -4.335966843161230787e-07, -4.359315131700654181e-07, -4.382652838409042485e-07, -4.405979926788336807e-07, -4.429296360356871519e-07, -4.452602102658984905e-07, -4.475897117263977839e-07, -4.499181367760961179e-07, -4.522454817763075046e-07, -4.545717430906529565e-07, -4.568969170849554541e-07, -4.592210001276721973e-07, -4.615439885892676953e-07, -4.638658788426370185e-07, -4.661866672630063776e-07, -4.685063502279452472e-07, -4.708249241172582099e-07, -4.731423853134149319e-07, -4.754587302009293930e-07, -4.777739551667787453e-07, -4.800880566003028859e-07, -4.824010308932197042e-07, -4.847128744395166086e-07, -4.870235836358772190e-07, -4.893331548810618684e-07, -4.916415845763266725e-07, -4.939488691253334265e-07, -4.962550049340387492e-07, -4.985599884111244826e-07, -5.008638159673764980e-07, -5.031664840161064135e-07, -5.054679889730530200e-07, -5.077683272563845045e-07, -5.100674952866099358e-07, -5.123654894869892278e-07, -5.146623062829203116e-07, -5.169579421023601107e-07, -5.192523933757246970e-07, -5.215456565358975492e-07, -5.238377280181264270e-07, -5.261286042604516516e-07, -5.284182817030789841e-07, -5.307067567888098120e-07, -5.329940259629345295e-07, -5.352800856731387277e-07, -5.375649323699248062e-07, -5.398485625060979292e-07, -5.421309725366596176e-07, -5.444121589197643665e-07, -5.466921181156695361e-07, -5.489708465871642680e-07, -5.512483407998882876e-07, -5.535245972217074285e-07, -5.557996123231403258e-07, -5.580733825772585716e-07, -5.603459044595893069e-07, -5.626171744485316434e-07, -5.648871890248447388e-07, -5.671559446715527165e-07, -5.694234378748806376e-07, -5.716896651232222851e-07, -5.739546229075668569e-07, -5.762183077217983919e-07, -5.784807160622067142e-07, -5.807418444273736133e-07, -5.830016893191053213e-07, -5.852602472414214732e-07, -5.875175147009607302e-07, -5.897734882073951898e-07, -5.920281642723188676e-07, -5.942815394106770648e-07, -5.965336101396513557e-07, -5.987843729790673277e-07, -6.010338244517149720e-07, -6.032819610828378165e-07, -6.055287794000394346e-07, -6.077742759342007819e-07, -6.100184472184770977e-07, -6.122612897886965393e-07, -6.145028001837851815e-07, -6.167429749446442737e-07, -6.189818106155864908e-07, -6.212193037432146728e-07, -6.234554508769445504e-07, -6.256902485688995008e-07, -6.279236933739246300e-07, -6.301557818494805758e-07, -6.323865105560649068e-07, -6.346158760565990822e-07, -6.368438749167467245e-07, -6.390705037053157484e-07, -6.412957589932529325e-07, -6.435196373545744914e-07, -6.457421353662433611e-07, -6.479632496076909436e-07, -6.501829766612161649e-07, -6.524013131118915604e-07, -6.546182555474715838e-07, -6.568338005587931473e-07, -6.590479447391822754e-07, -6.612606846848644922e-07, -6.634720169948613776e-07, -6.656819382710000965e-07, -6.678904451178156721e-07, -6.700975341429666675e-07, -6.723032019566226750e-07, -6.745074451718844443e-07, -6.767102604046838271e-07, -6.789116442737857883e-07, -6.811115934006988327e-07, -6.833101044100756512e-07, -6.855071739291225274e-07, -6.877027985880000901e-07, -6.898969750197280216e-07, -6.920896998600987667e-07, -6.942809697480729912e-07, -6.964707813251878232e-07, -6.986591312359585587e-07, -7.008460161277968169e-07, -7.030314326509964585e-07, -7.052153774586514233e-07, -7.073978472070571180e-07, -7.095788385551206695e-07, -7.117583481647571247e-07, -7.139363727007941589e-07, -7.161129088309901816e-07, -7.182879532259258102e-07, -7.204615025594108693e-07, -7.226335535078967615e-07, -7.248041027508776438e-07, -7.269731469707920653e-07, -7.291406828529327587e-07, -7.313067070858446395e-07, -7.334712163608368096e-07, -7.356342073718924538e-07, -7.377956768165555773e-07, -7.399556213949492952e-07, -7.421140378101879131e-07, -7.442709227686640722e-07, -7.464262729794606958e-07, -7.485800851547605305e-07, -7.507323560097504308e-07, -7.528830822625203511e-07, -7.550322606344682268e-07, -7.571798878498155778e-07, -7.593259606355049114e-07, -7.614704757220949302e-07, -7.636134298427880328e-07, -7.657548197338134898e-07, -7.678946421347431755e-07, -7.700328937878973747e-07, -7.721695714387462756e-07, -7.743046718358133028e-07, -7.764381917306834813e-07, -7.785701278779097337e-07, -7.807004770355046889e-07, -7.828292359638729965e-07, -7.849564014271801327e-07, -7.870819701922884205e-07, -7.892059390291488886e-07, -7.913283047111957770e-07, -7.934490640143780605e-07, -7.955682137180412104e-07, -7.976857506048315851e-07, -7.998016714602211393e-07, -8.019159730727921324e-07, -8.040286522346495282e-07, -8.061397057403396510e-07, -8.082491303882205795e-07, -8.103569229793985906e-07, -8.124630803182232503e-07, -8.145675992121865111e-07, -8.166704764719361586e-07, -8.187717089111743789e-07, -8.208712933470580881e-07, -8.229692265996206203e-07, -8.250655054920627891e-07, -8.271601268511479230e-07, -8.292530875062416474e-07, -8.313443842901807288e-07, -8.334340140391842419e-07, -8.355219735923823023e-07, -8.376082597921921482e-07, -8.396928694842382026e-07, -8.417757995172562520e-07, -8.438570467434826585e-07, -8.459366080180826122e-07, -8.480144801994450049e-07, -8.500906601495679357e-07, -8.521651447331071754e-07, -8.542379308182409872e-07, -8.563090152765773767e-07, -8.583783949826848354e-07, -8.604460668144790115e-07, -8.625120276531264655e-07, -8.645762743830537761e-07, -8.666388038918633660e-07, -8.686996130706987852e-07, -8.707586988136986919e-07, -8.728160580183743123e-07, -8.748716875855200779e-07, -8.769255844191146287e-07, -8.789777454267189191e-07, -8.810281675189096582e-07, -8.830768476096480871e-07, -8.851237826162073456e-07, -8.871689694591698256e-07, -8.892124050623324088e-07, -8.912540863531013961e-07, -8.932940102619150429e-07, -8.953321737226374292e-07, -8.973685736724694157e-07, -8.994032070518469993e-07, -9.014360708048323251e-07, -9.034671618785527385e-07, -9.054964772235767623e-07, -9.075240137938291815e-07, -9.095497685465914666e-07, -9.115737384424224705e-07, -9.135959204455224406e-07, -9.156163115232757272e-07, -9.176349086461739150e-07, -9.196517087886364922e-07, -9.216667089281051606e-07, -9.236799060454076361e-07, -9.256912971250512518e-07, -9.277008791546576691e-07, -9.297086491253453131e-07, -9.317146040316409636e-07, -9.337187408713980166e-07, -9.357210566461524495e-07, -9.377215483606842701e-07, -9.397202130229202136e-07, -9.417170476447738934e-07, -9.437120492412178766e-07, -9.457052148306694013e-07, -9.476965414352586748e-07, -9.496860260802950305e-07, -9.516736657946251177e-07, -9.536594576105525385e-07, -9.556433985638487539e-07, -9.576254856936496399e-07, -9.596057160429270729e-07, -9.615840866574914423e-07, -9.635605945872637889e-07, -9.655352368852907047e-07, -9.675080106080952167e-07, -9.694789128160607048e-07, -9.714479405725233055e-07, -9.734150909445820993e-07, -9.753803610030279597e-07, -9.773437478218853086e-07, -9.793052484786933311e-07, -9.812648600548585528e-07, -9.832225796346890109e-07, -9.851784043066448980e-07, -9.871323311623513452e-07, -9.890843572969696346e-07, -9.910344798095573998e-07, -9.929826958021741590e-07, -9.949290023806957376e-07, -9.968733966547234235e-07, -9.988158757371576979e-07, -1.000756436744439852e-06, -1.002695076796940138e-06, -1.004631793018060340e-06, -1.006566582535036549e-06, -1.008499442478862928e-06, -1.010430369983840035e-06, -1.012359362187946032e-06, -1.014286416232747536e-06, -1.016211529263310892e-06, -1.018134698428564493e-06, -1.020055920880773194e-06, -1.021975193775801953e-06, -1.023892514273480475e-06, -1.025807879536718702e-06, -1.027721286732313187e-06, -1.029632733030853920e-06, -1.031542215606287257e-06, -1.033449731636283113e-06, -1.035355278302136492e-06, -1.037258852788700994e-06, -1.039160452284727208e-06, -1.041060073982346017e-06, -1.042957715077433250e-06, -1.044853372769512696e-06, -1.046747044261765418e-06, -1.048638726760941243e-06, -1.050528417477732299e-06, -1.052416113626216942e-06, -1.054301812424248329e-06, -1.056185511093354259e-06, -1.058067206858746487e-06, -1.059946896949224165e-06, -1.061824578597549079e-06, -1.063700249039903966e-06, -1.065573905516266273e-06, -1.067445545270302063e-06, -1.069315165549310746e-06, -1.071182763604549706e-06, -1.073048336690729470e-06, -1.074911882066371787e-06, -1.076773396993709471e-06, -1.078632878738707785e-06, -1.080490324570967883e-06, -1.082345731764082772e-06, -1.084199097595134601e-06, -1.086050419345016953e-06, -1.087899694298374287e-06, -1.089746919743598969e-06, -1.091592092972748480e-06, -1.093435211281891845e-06, -1.095276271970603325e-06, -1.097115272342304829e-06, -1.098952209704190525e-06, -1.100787081367131553e-06, -1.102619884646038341e-06, -1.104450616859420359e-06, -1.106279275329319840e-06, -1.108105857382081522e-06, -1.109930360347485283e-06, -1.111752781559123711e-06, -1.113573118354628256e-06, -1.115391368075183038e-06, -1.117207528065860692e-06, -1.119021595675542749e-06, -1.120833568256924083e-06, -1.122643443166428629e-06, -1.124451217764651325e-06, -1.126256889415405199e-06, -1.128060455486929450e-06, -1.129861913350952840e-06, -1.131661260383050720e-06, -1.133458493962955679e-06, -1.135253611473752013e-06, -1.137046610302626838e-06, -1.138837487840775427e-06, -1.140626241482993155e-06, -1.142412868627941891e-06, -1.144197366678479071e-06, -1.145979733040732735e-06, -1.147759965125293094e-06, -1.149538060346283545e-06, -1.151314016121713037e-06, -1.153087829873790318e-06, -1.154859499028112271e-06, -1.156629021014420733e-06, -1.158396393266499794e-06, -1.160161613221789762e-06, -1.161924678321618192e-06, -1.163685586011561353e-06, -1.165444333740590215e-06, -1.167200918961837428e-06, -1.168955339132511144e-06, -1.170707591713485050e-06, -1.172457674169644379e-06, -1.174205583969785540e-06, -1.175951318586551319e-06, -1.177694875496774350e-06, -1.179436252180954496e-06, -1.181175446123541334e-06, -1.182912454813246077e-06, -1.184647275742239856e-06, -1.186379906406877719e-06, -1.188110344307632989e-06, -1.189838586948696407e-06, -1.191564631838283177e-06, -1.193288476488586806e-06, -1.195010118415668776e-06, -1.196729555139811758e-06, -1.198446784185025793e-06, -1.200161803079372702e-06, -1.201874609354900232e-06, -1.203585200547632527e-06, -1.205293574197502152e-06, -1.206999727848673873e-06, -1.208703659049053798e-06, -1.210405365350634548e-06, -1.212104844309410975e-06, -1.213802093485360889e-06, -1.215497110442414146e-06, -1.217189892748733438e-06, -1.218880437976261128e-06, -1.220568743701027360e-06, -1.222254807503093098e-06, -1.223938626966457372e-06, -1.225620199679379365e-06, -1.227299523233922073e-06, -1.228976595226247920e-06, -1.230651413256563701e-06, -1.232323974929108510e-06, -1.233994277852096355e-06, -1.235662319638008598e-06, -1.237328097903160058e-06, -1.238991610267974936e-06, -1.240652854356953989e-06, -1.242311827798644676e-06, -1.243968528225585251e-06, -1.245622953274604400e-06, -1.247275100586379306e-06, -1.248924967805722999e-06, -1.250572552581541799e-06, -1.252217852566726467e-06, -1.253860865418495891e-06, -1.255501588797990933e-06, -1.257140020370210479e-06, -1.258776157804710028e-06, -1.260409998774835129e-06, -1.262041540958014663e-06, -1.263670782036111308e-06, -1.265297719694535536e-06, -1.266922351623347821e-06, -1.268544675516413509e-06, -1.270164689071709441e-06, -1.271782389991561339e-06, -1.273397775982264334e-06, -1.275010844754001649e-06, -1.276621594021552718e-06, -1.278230021503513496e-06, -1.279836124922607106e-06, -1.281439902006008674e-06, -1.283041350484567545e-06, -1.284640468093514765e-06, -1.286237252572353814e-06, -1.287831701664541063e-06, -1.289423813117663652e-06, -1.291013584683769407e-06, -1.292601014118537172e-06, -1.294186099182333908e-06, -1.295768837639387140e-06, -1.297349227258092218e-06, -1.298927265811307721e-06, -1.300502951075635479e-06, -1.302076280832056692e-06, -1.303647252865887042e-06, -1.305215864966400816e-06, -1.306782114927058554e-06, -1.308346000545805408e-06, -1.309907519624246349e-06, -1.311466669968723382e-06, -1.313023449389459190e-06, -1.314577855700953126e-06, -1.316129886721909853e-06, -1.317679540275239971e-06, -1.319226814187984217e-06, -1.320771706291614368e-06, -1.322314214421613323e-06, -1.323854336417659127e-06, -1.325392070123948531e-06, -1.326927413388474268e-06, -1.328460364063654178e-06, -1.329990920006299876e-06, -1.331519079077224571e-06, -1.333044839141543978e-06, -1.334568198068626973e-06, -1.336089153732003060e-06, -1.337607704009656289e-06, -1.339123846783600044e-06, -1.340637579940178591e-06, -1.342148901369978560e-06, -1.343657808967838049e-06, -1.345164300632795806e-06, -1.346668374268348090e-06, -1.348170027782046541e-06, -1.349669259085779821e-06, -1.351166066095707753e-06, -1.352660446732255186e-06, -1.354152398920046766e-06, -1.355641920588209759e-06, -1.357129009669929987e-06, -1.358613664102740455e-06, -1.360095881828464817e-06, -1.361575660793145161e-06, -1.363052998947327672e-06, -1.364527894245630860e-06, -1.366000344647040746e-06, -1.367470348114854538e-06, -1.368937902616654373e-06, -1.370403006124258610e-06, -1.371865656614014270e-06, -1.373325852066352555e-06, -1.374783590466091452e-06, -1.376238869802364579e-06, -1.377691688068557873e-06, -1.379142043262578095e-06, -1.380589933386443931e-06, -1.382035356446573129e-06, -1.383478310453711565e-06, -1.384918793422928373e-06, -1.386356803373569142e-06, -1.387792338329498806e-06, -1.389225396318813865e-06, -1.390655975373720198e-06, -1.392084073531188456e-06, -1.393509688832251662e-06, -1.394932819322304420e-06, -1.396353463051359997e-06, -1.397771618073293915e-06, -1.399187282446840066e-06, -1.400600454234796197e-06, -1.402011131504334765e-06, -1.403419312327182936e-06, -1.404824994779301982e-06, -1.406228176940827990e-06, -1.407628856896661817e-06, -1.409027032735813702e-06, -1.410422702551663301e-06, -1.411815864442244508e-06, -1.413206516509499848e-06, -1.414594656860220686e-06, -1.415980283605315392e-06, -1.417363394860154504e-06, -1.418743988744418901e-06, -1.420122063382470163e-06, -1.421497616902579354e-06, -1.422870647437889246e-06, -1.424241153125676343e-06, -1.425609132107611135e-06, -1.426974582530045660e-06, -1.428337502543331436e-06, -1.429697890302446263e-06, -1.431055743966889824e-06, -1.432411061700389135e-06, -1.433763841671083616e-06, -1.435114082051795722e-06, -1.436461781019313081e-06, -1.437806936755303711e-06, -1.439149547445594140e-06, -1.440489611280513935e-06, -1.441827126454816715e-06, -1.443162091167693705e-06, -1.444494503622695810e-06, -1.445824362028016309e-06, -1.447151664596085976e-06, -1.448476409543845611e-06, -1.449798595092689079e-06, -1.451118219468440439e-06, -1.452435280901314980e-06, -1.453749777626174601e-06, -1.455061707882135428e-06, -1.456371069912837161e-06, -1.457677861966374685e-06, -1.458982082295241739e-06, -1.460283729156583965e-06, -1.461582800811817322e-06, -1.462879295526886645e-06, -1.464173211572209523e-06, -1.465464547222673552e-06, -1.466753300757568144e-06, -1.468039470460851772e-06, -1.469323054620781598e-06, -1.470604051530140694e-06, -1.471882459486195266e-06, -1.473158276790707570e-06, -1.474431501749843798e-06, -1.475702132674461013e-06, -1.476970167879705649e-06, -1.478235605685293673e-06, -1.479498444415422280e-06, -1.480758682398727118e-06, -1.482016317968520725e-06, -1.483271349462439745e-06, -1.484523775222684211e-06, -1.485773593595945548e-06, -1.487020802933429654e-06, -1.488265401590799093e-06, -1.489507387928394802e-06, -1.490746760310892198e-06, -1.491983517107533899e-06, -1.493217656692100080e-06, -1.494449177442797932e-06, -1.495678077742558973e-06, -1.496904355978659788e-06, -1.498128010542936965e-06, -1.499349039831765917e-06, -1.500567442246055800e-06, -1.501783216191179000e-06, -1.502996360077216771e-06, -1.504206872318664465e-06, -1.505414751334385375e-06, -1.506619995548125511e-06, -1.507822603387935297e-06, -1.509022573286408003e-06, -1.510219903680912897e-06, -1.511414593012955942e-06, -1.512606639729001633e-06, -1.513796042279821839e-06, -1.514982799120749913e-06, -1.516166908711835700e-06, -1.517348369517571519e-06, -1.518527180006832241e-06, -1.519703338653399807e-06, -1.520876843935384287e-06, -1.522047694335445164e-06, -1.523215888341054974e-06, -1.524381424443837561e-06, -1.525544301140384619e-06, -1.526704516931635024e-06, -1.527862070323143985e-06, -1.529016959824993252e-06, -1.530169183952062807e-06, -1.531318741223398550e-06, -1.532465630163036677e-06, -1.533609849299365228e-06, -1.534751397165341771e-06, -1.535890272298745402e-06, -1.537026473241583812e-06, -1.538159998540641327e-06, -1.539290846747386787e-06, -1.540419016417713295e-06, -1.541544506112105511e-06, -1.542667314395867710e-06, -1.543787439838503970e-06, -1.544904881014503369e-06, -1.546019636502736685e-06, -1.547131704886658841e-06, -1.548241084754575715e-06, -1.549347774699034704e-06, -1.550451773317364706e-06, -1.551553079211611745e-06, -1.552651690988263263e-06, -1.553747607258467923e-06, -1.554840826637985425e-06, -1.555931347747191585e-06, -1.557019169211022011e-06, -1.558104289659178989e-06, -1.559186707725837561e-06, -1.560266422049828062e-06, -1.561343431274604782e-06, -1.562417734048197468e-06, -1.563489329023404243e-06, -1.564558214857513559e-06, -1.565624390212464718e-06, -1.566687853754840666e-06, -1.567748604155844915e-06, -1.568806640091266600e-06, -1.569861960241686100e-06, -1.570914563292136434e-06, -1.571964447932362239e-06, -1.573011612856749897e-06, -1.574056056764247694e-06, -1.575097778358610829e-06, -1.576136776348077213e-06, -1.577173049445581764e-06, -1.578206596368703260e-06, -1.579237415839653958e-06, -1.580265506585259273e-06, -1.581290867337130351e-06, -1.582313496831383922e-06, -1.583333393808825677e-06, -1.584350557014929516e-06, -1.585364985199806847e-06, -1.586376677118180748e-06, -1.587385631529587136e-06, -1.588391847198047606e-06, -1.589395322892318878e-06, -1.590396057385795811e-06, -1.591394049456491713e-06, -1.592389297887238661e-06, -1.593381801465421748e-06, -1.594371558982942867e-06, -1.595358569236674092e-06, -1.596342831027962581e-06, -1.597324343162802105e-06, -1.598303104452028921e-06, -1.599279113710976397e-06, -1.600252369759729543e-06, -1.601222871423018709e-06, -1.602190617530271256e-06, -1.603155606915532991e-06, -1.604117838417713808e-06, -1.605077310880078197e-06, -1.606034023150887932e-06, -1.606987974082918201e-06, -1.607939162533604990e-06, -1.608887587365218516e-06, -1.609833247444625629e-06, -1.610776141643223114e-06, -1.611716268837384710e-06, -1.612653627907986556e-06, -1.613588217740583805e-06, -1.614520037225619834e-06, -1.615449085257887538e-06, -1.616375360737220501e-06, -1.617298862567943914e-06, -1.618219589659074257e-06, -1.619137540924476007e-06, -1.620052715282599050e-06, -1.620965111656478052e-06, -1.621874728974095832e-06, -1.622781566167971285e-06, -1.623685622175312054e-06, -1.624586895938218880e-06, -1.625485386403207665e-06, -1.626381092521658608e-06, -1.627274013249717315e-06, -1.628164147548130053e-06, -1.629051494382321674e-06, -1.629936052722629398e-06, -1.630817821543768760e-06, -1.631696799825483068e-06, -1.632572986552051916e-06, -1.633446380712462073e-06, -1.634316981300585781e-06, -1.635184787314752582e-06, -1.636049797758139163e-06, -1.636912011638719170e-06, -1.637771427969049548e-06, -1.638628045766457937e-06, -1.639481864052981698e-06, -1.640332881855337411e-06, -1.641181098205084565e-06, -1.642026512138388607e-06, -1.642869122696168317e-06, -1.643708928924062992e-06, -1.644545929872451501e-06, -1.645380124596370123e-06, -1.646211512155726214e-06, -1.647040091615020587e-06, -1.647865862043513534e-06, -1.648688822515217415e-06, -1.649508972108849856e-06, -1.650326309907821047e-06, -1.651140835000404205e-06, -1.651952546479466007e-06, -1.652761443442658443e-06, -1.653567524992349994e-06, -1.654370790235628172e-06, -1.655171238284405826e-06, -1.655968868255230133e-06, -1.656763679269413465e-06, -1.657555670453006710e-06, -1.658344840936800963e-06, -1.659131189856271833e-06, -1.659914716351770030e-06, -1.660695419568258992e-06, -1.661473298655478789e-06, -1.662248352767908849e-06, -1.663020581064776436e-06, -1.663789982710003913e-06, -1.664556556872373498e-06, -1.665320302725292206e-06, -1.666081219446964015e-06, -1.666839306220317014e-06, -1.667594562232996209e-06, -1.668346986677505397e-06, -1.669096578751016586e-06, -1.669843337655332514e-06, -1.670587262597237319e-06, -1.671328352788101611e-06, -1.672066607444054842e-06, -1.672802025786088011e-06, -1.673534607039814374e-06, -1.674264350435648383e-06, -1.674991255208748085e-06, -1.675715320599026984e-06, -1.676436545851112108e-06, -1.677154930214532901e-06, -1.677870472943315917e-06, -1.678583173296475463e-06, -1.679293030537667587e-06, -1.680000043935276051e-06, -1.680704212762557810e-06, -1.681405536297448404e-06, -1.682104013822549466e-06, -1.682799644625405916e-06, -1.683492427998191070e-06, -1.684182363237834126e-06, -1.684869449646166904e-06, -1.685553686529522997e-06, -1.686235073199246830e-06, -1.686913608971295560e-06, -1.687589293166395773e-06, -1.688262125110127978e-06, -1.688932104132769905e-06, -1.689599229569243990e-06, -1.690263500759461480e-06, -1.690924917047934705e-06, -1.691583477783941192e-06, -1.692239182321678882e-06, -1.692892030019872682e-06, -1.693542020242133611e-06, -1.694189152356894209e-06, -1.694833425737241886e-06, -1.695474839761079225e-06, -1.696113393811058755e-06, -1.696749087274555215e-06, -1.697381919543838135e-06, -1.698011890015809469e-06, -1.698638998092156695e-06, -1.699263243179452766e-06, -1.699884624688843129e-06, -1.700503142036333084e-06, -1.701118794642760465e-06, -1.701731581933642963e-06, -1.702341503339280617e-06, -1.702948558294750521e-06, -1.703552746239848589e-06, -1.704154066619259596e-06, -1.704752518882316413e-06, -1.705348102483156280e-06, -1.705940816880700055e-06, -1.706530661538612618e-06, -1.707117635925309009e-06, -1.707701739514062423e-06, -1.708282971782818928e-06, -1.708861332214326419e-06, -1.709436820296106669e-06, -1.710009435520427590e-06, -1.710579177384330970e-06, -1.711146045389683297e-06, -1.711710039043053363e-06, -1.712271157855793578e-06, -1.712829401344033195e-06, -1.713384769028636591e-06, -1.713937260435329056e-06, -1.714486875094518701e-06, -1.715033612541408477e-06, -1.715577472315971826e-06, -1.716118453962949079e-06, -1.716656557031819506e-06, -1.717191781076923285e-06, -1.717724125657280031e-06, -1.718253590336712243e-06, -1.718780174683810372e-06, -1.719303878271927946e-06, -1.719824700679163782e-06, -1.720342641488471893e-06, -1.720857700287492922e-06, -1.721369876668652191e-06, -1.721879170229159487e-06, -1.722385580570962265e-06, -1.722889107300855337e-06, -1.723389750030349795e-06, -1.723887508375642515e-06, -1.724382381957859050e-06, -1.724874370402798666e-06, -1.725363473341011638e-06, -1.725849690407908938e-06, -1.726333021243593892e-06, -1.726813465492945394e-06, -1.727291022805629135e-06, -1.727765692836041909e-06, -1.728237475243431467e-06, -1.728706369691760780e-06, -1.729172375849677759e-06, -1.729635493390762799e-06, -1.730095721993251166e-06, -1.730553061340151155e-06, -1.731007511119307619e-06, -1.731459071023285292e-06, -1.731907740749338929e-06, -1.732353519999634169e-06, -1.732796408481026674e-06, -1.733236405905099183e-06, -1.733673511988329653e-06, -1.734107726451779334e-06, -1.734539049021441750e-06, -1.734967479427978846e-06, -1.735393017406821364e-06, -1.735815662698229616e-06, -1.736235415047188661e-06, -1.736652274203370831e-06, -1.737066239921354892e-06, -1.737477311960384436e-06, -1.737885490084464860e-06, -1.738290774062465012e-06, -1.738693163667838309e-06, -1.739092658678987590e-06, -1.739489258878959977e-06, -1.739882964055599764e-06, -1.740273774001498862e-06, -1.740661688514022850e-06, -1.741046707395267986e-06, -1.741428830452157134e-06, -1.741808057496307835e-06, -1.742184388344092877e-06, -1.742557822816732827e-06, -1.742928360740078981e-06, -1.743296001944797807e-06, -1.743660746266354213e-06, -1.744022593544908847e-06, -1.744381543625403646e-06, -1.744737596357533672e-06, -1.745090751595726996e-06, -1.745441009199227918e-06, -1.745788369031972242e-06, -1.746132830962646990e-06, -1.746474394864783157e-06, -1.746813060616525734e-06, -1.747148828100856062e-06, -1.747481697205530417e-06, -1.747811667822996578e-06, -1.748138739850471756e-06, -1.748462913189932216e-06, -1.748784187748100572e-06, -1.749102563436418048e-06, -1.749418040171143366e-06, -1.749730617873229506e-06, -1.750040296468383419e-06, -1.750347075887063702e-06, -1.750650956064448828e-06, -1.750951936940533288e-06, -1.751250018459992916e-06, -1.751545200572253490e-06, -1.751837483231511704e-06, -1.752126866396686249e-06, -1.752413350031420140e-06, -1.752696934104164790e-06, -1.752977618588042148e-06, -1.753255403460946560e-06, -1.753530288705500722e-06, -1.753802274309058432e-06, -1.754071360263760282e-06, -1.754337546566423548e-06, -1.754600833218632815e-06, -1.754861220226694456e-06, -1.755118707601667756e-06, -1.755373295359316422e-06, -1.755624983520189473e-06, -1.755873772109539291e-06, -1.756119661157303831e-06, -1.756362650698238127e-06, -1.756602740771779397e-06, -1.756839931422081138e-06, -1.757074222698079834e-06, -1.757305614653391821e-06, -1.757534107346384659e-06, -1.757759700840138796e-06, -1.757982395202459220e-06, -1.758202190505907009e-06, -1.758419086827744907e-06, -1.758633084249915942e-06, -1.758844182859173227e-06, -1.759052382746926865e-06, -1.759257684009328011e-06, -1.759460086747266973e-06, -1.759659591066320689e-06, -1.759856197076801648e-06, -1.760049904893734172e-06, -1.760240714636855049e-06, -1.760428626430613750e-06, -1.760613640404224937e-06, -1.760795756691529346e-06, -1.760974975431157471e-06, -1.761151296766407382e-06, -1.761324720845289404e-06, -1.761495247820578422e-06, -1.761662877849670734e-06, -1.761827611094729105e-06, -1.761989447722625800e-06, -1.762148387904917602e-06, -1.762304431817853222e-06, -1.762457579642450376e-06, -1.762607831564331676e-06, -1.762755187773908435e-06, -1.762899648466251069e-06, -1.763041213841140559e-06, -1.763179884103051715e-06, -1.763315659461164619e-06, -1.763448540129337513e-06, -1.763578526326171391e-06, -1.763705618274909832e-06, -1.763829816203490037e-06, -1.763951120344623721e-06, -1.764069530935598695e-06, -1.764185048218456527e-06, -1.764297672439937069e-06, -1.764407403851444359e-06, -1.764514242709073089e-06, -1.764618189273609248e-06, -1.764719243810508088e-06, -1.764817406589951946e-06, -1.764912677886762990e-06, -1.765005057980444305e-06, -1.765094547155228597e-06, -1.765181145699955158e-06, -1.765264853908193538e-06, -1.765345672078172815e-06, -1.765423600512811453e-06, -1.765498639519685113e-06, -1.765570789411051011e-06, -1.765640050503832875e-06, -1.765706423119615658e-06, -1.765769907584693180e-06, -1.765830504229986815e-06, -1.765888213391107744e-06, -1.765943035408320114e-06, -1.765994970626550141e-06, -1.766044019395407709e-06, -1.766090182069155031e-06, -1.766133459006697543e-06, -1.766173850571627101e-06, -1.766211357132174552e-06, -1.766245979061229843e-06, -1.766277716736360030e-06, -1.766306570539762895e-06, -1.766332540858292573e-06, -1.766355628083460610e-06, -1.766375832611418597e-06, -1.766393154842988666e-06, -1.766407595183622830e-06, -1.766419154043420139e-06, -1.766427831837134721e-06, -1.766433628984154189e-06, -1.766436545908504505e-06, -1.766436583038871374e-06, -1.766433740808566994e-06, -1.766428019655524340e-06, -1.766419420022352430e-06, -1.766407942356272380e-06, -1.766393587109126714e-06, -1.766376354737409441e-06, -1.766356245702255250e-06, -1.766333260469396313e-06, -1.766307399509207177e-06, -1.766278663296697779e-06, -1.766247052311502643e-06, -1.766212567037866481e-06, -1.766175207964660288e-06, -1.766134975585379435e-06, -1.766091870398142822e-06, -1.766045892905663022e-06, -1.765997043615312134e-06, -1.765945323039038990e-06, -1.765890731693415949e-06, -1.765833270099627678e-06, -1.765772938783477503e-06, -1.765709738275354585e-06, -1.765643669110285379e-06, -1.765574731827860789e-06, -1.765502926972325743e-06, -1.765428255092490250e-06, -1.765350716741776205e-06, -1.765270312478205947e-06, -1.765187042864390620e-06, -1.765100908467547531e-06, -1.765011909859474528e-06, -1.764920047616583885e-06, -1.764825322319858467e-06, -1.764727734554886241e-06, -1.764627284911821532e-06, -1.764523973985419324e-06, -1.764417802375022978e-06, -1.764308770684538185e-06, -1.764196879522478075e-06, -1.764082129501910059e-06, -1.763964521240500516e-06, -1.763844055360476248e-06, -1.763720732488636765e-06, -1.763594553256371228e-06, -1.763465518299621383e-06, -1.763333628258898088e-06, -1.763198883779306294e-06, -1.763061285510479826e-06, -1.762920834106630510e-06, -1.762777530226544785e-06, -1.762631374533547492e-06, -1.762482367695538511e-06, -1.762330510384959722e-06, -1.762175803278829736e-06, -1.762018247058700698e-06, -1.761857842410676495e-06, -1.761694590025422710e-06, -1.761528490598141210e-06, -1.761359544828590900e-06, -1.761187753421053207e-06, -1.761013117084374218e-06, -1.760835636531937149e-06, -1.760655312481654941e-06, -1.760472145655978088e-06, -1.760286136781892733e-06, -1.760097286590924270e-06, -1.759905595819119767e-06, -1.759711065207056222e-06, -1.759513695499856238e-06, -1.759313487447137832e-06, -1.759110441803061659e-06, -1.758904559326305600e-06, -1.758695840780066035e-06, -1.758484286932061228e-06, -1.758269898554509730e-06, -1.758052676424171881e-06, -1.757832621322289462e-06, -1.757609734034638209e-06, -1.757384015351483770e-06, -1.757155466067612827e-06, -1.756924086982298164e-06, -1.756689878899331273e-06, -1.756452842626995037e-06, -1.756212978978070510e-06, -1.755970288769843688e-06, -1.755724772824083490e-06, -1.755476431967050651e-06, -1.755225267029501534e-06, -1.754971278846681351e-06, -1.754714468258303414e-06, -1.754454836108598051e-06, -1.754192383246259664e-06, -1.753927110524441649e-06, -1.753659018800807851e-06, -1.753388108937481321e-06, -1.753114381801060621e-06, -1.752837838262622152e-06, -1.752558479197691567e-06, -1.752276305486278288e-06, -1.751991318012876777e-06, -1.751703517666398137e-06, -1.751412905340242958e-06, -1.751119481932274634e-06, -1.750823248344789929e-06, -1.750524205484556038e-06, -1.750222354262793217e-06, -1.749917695595169069e-06, -1.749610230401808073e-06, -1.749299959607247116e-06, -1.748986884140496897e-06, -1.748671004935029231e-06, -1.748352322928689585e-06, -1.748030839063828581e-06, -1.747706554287194638e-06, -1.747379469549956417e-06, -1.747049585807757664e-06, -1.746716904020644793e-06, -1.746381425153071327e-06, -1.746043150173948937e-06, -1.745702080056591750e-06, -1.745358215778720365e-06, -1.745011558322517979e-06, -1.744662108674529794e-06, -1.744309867825733961e-06, -1.743954836771549833e-06, -1.743597016511724894e-06, -1.743236408050503735e-06, -1.742873012396489567e-06, -1.742506830562667727e-06, -1.742137863566457768e-06, -1.741766112429666029e-06, -1.741391578178454924e-06, -1.741014261843463440e-06, -1.740634164459624383e-06, -1.740251287066308378e-06, -1.739865630707275374e-06, -1.739477196430645423e-06, -1.739085985288926205e-06, -1.738691998339024469e-06, -1.738295236642161960e-06, -1.737895701263994005e-06, -1.737493393274529469e-06, -1.737088313748107460e-06, -1.736680463763498554e-06, -1.736269844403805897e-06, -1.735856456756453562e-06, -1.735440301913287349e-06, -1.735021380970459158e-06, -1.734599695028506616e-06, -1.734175245192323216e-06, -1.733748032571101779e-06, -1.733318058278423815e-06, -1.732885323432206372e-06, -1.732449829154702462e-06, -1.732011576572499996e-06, -1.731570566816553342e-06, -1.731126801022077444e-06, -1.730680280328695417e-06, -1.730231005880322079e-06, -1.729778978825202281e-06, -1.729324200315908579e-06, -1.728866671509341230e-06, -1.728406393566680336e-06, -1.727943367653463563e-06, -1.727477594939527901e-06, -1.727009076599027882e-06, -1.726537813810424139e-06, -1.726063807756449316e-06, -1.725587059624179857e-06, -1.725107570604983906e-06, -1.724625341894522371e-06, -1.724140374692740032e-06, -1.723652670203914662e-06, -1.723162229636542261e-06, -1.722669054203472365e-06, -1.722173145121802168e-06, -1.721674503612934336e-06, -1.721173130902538247e-06, -1.720669028220561645e-06, -1.720162196801210944e-06, -1.719652637882986379e-06, -1.719140352708651090e-06, -1.718625342525229429e-06, -1.718107608584025381e-06, -1.717587152140559038e-06, -1.717063974454627584e-06, -1.716538076790365013e-06, -1.716009460416023592e-06, -1.715478126604182656e-06, -1.714944076631671742e-06, -1.714407311779504301e-06, -1.713867833333040339e-06, -1.713325642581764698e-06, -1.712780740819458795e-06, -1.712233129344166105e-06, -1.711682809458071881e-06, -1.711129782467644190e-06, -1.710574049683629460e-06, -1.710015612420879263e-06, -1.709454471998543230e-06, -1.708890629739985403e-06, -1.708324086972718170e-06, -1.707754845028560444e-06, -1.707182905243502352e-06, -1.706608268957683850e-06, -1.706030937515517958e-06, -1.705450912265606492e-06, -1.704868194560677583e-06, -1.704282785757784529e-06, -1.703694687218043631e-06, -1.703103900306833459e-06, -1.702510426393720740e-06, -1.701914266852359343e-06, -1.701315423060726608e-06, -1.700713896400899938e-06, -1.700109688259097030e-06, -1.699502800025772020e-06, -1.698893233095535856e-06, -1.698280988867085574e-06, -1.697666068743434688e-06, -1.697048474131602969e-06, -1.696428206442838150e-06, -1.695805267092548381e-06, -1.695179657500268766e-06, -1.694551379089703082e-06, -1.693920433288695192e-06, -1.693286821529187751e-06, -1.692650545247313899e-06, -1.692011605883352576e-06, -1.691370004881620107e-06, -1.690725743690694662e-06, -1.690078823763228430e-06, -1.689429246555935542e-06, -1.688777013529727182e-06, -1.688122126149607394e-06, -1.687464585884698497e-06, -1.686804394208252944e-06, -1.686141552597556546e-06, -1.685476062534090045e-06, -1.684807925503396763e-06, -1.684137142995133429e-06, -1.683463716503033539e-06, -1.682787647524964958e-06, -1.682108937562806252e-06, -1.681427588122601059e-06, -1.680743600714440776e-06, -1.680056976852521522e-06, -1.679367718055095856e-06, -1.678675825844526779e-06, -1.677981301747169142e-06, -1.677284147293526142e-06, -1.676584364018135607e-06, -1.675881953459597734e-06, -1.675176917160619135e-06, -1.674469256667858254e-06, -1.673758973532108328e-06, -1.673046069308200611e-06, -1.672330545555009033e-06, -1.671612403835440249e-06, -1.670891645716474293e-06, -1.670168272769056164e-06, -1.669442286568237697e-06, -1.668713688693076771e-06, -1.667982480726658694e-06, -1.667248664256119709e-06, -1.666512240872536459e-06, -1.665773212171089880e-06, -1.665031579750933921e-06, -1.664287345215261816e-06, -1.663540510171246162e-06, -1.662791076230114090e-06, -1.662039045006995435e-06, -1.661284418121088756e-06, -1.660527197195660909e-06, -1.659767383857806070e-06, -1.659004979738724408e-06, -1.658239986473599685e-06, -1.657472405701488514e-06, -1.656702239065609400e-06, -1.655929488212980639e-06, -1.655154154794691157e-06, -1.654376240465806487e-06, -1.653595746885264584e-06, -1.652812675716036129e-06, -1.652027028625135113e-06, -1.651238807283341860e-06, -1.650448013365524049e-06, -1.649654648550496960e-06, -1.648858714520896625e-06, -1.648060212963505937e-06, -1.647259145568858027e-06, -1.646455514031522139e-06, -1.645649320049975729e-06, -1.644840565326666503e-06, -1.644029251567830103e-06, -1.643215380483846279e-06, -1.642398953788803088e-06, -1.641579973200820256e-06, -1.640758440441936729e-06, -1.639934357237973030e-06, -1.639107725318842125e-06, -1.638278546418260789e-06, -1.637446822273789637e-06, -1.636612554626980923e-06, -1.635775745223267162e-06, -1.634936395811851645e-06, -1.634094508146044717e-06, -1.633250083982814632e-06, -1.632403125083132088e-06, -1.631553633211843170e-06, -1.630701610137539120e-06, -1.629847057632865714e-06, -1.628989977474258776e-06, -1.628130371441917501e-06, -1.627268241320019381e-06, -1.626403588896545726e-06, -1.625536415963349842e-06, -1.624666724316107908e-06, -1.623794515754393302e-06, -1.622919792081495756e-06, -1.622042555104673144e-06, -1.621162806634957715e-06, -1.620280548487210734e-06, -1.619395782480170756e-06, -1.618508510436279990e-06, -1.617618734181909605e-06, -1.616726455547202187e-06, -1.615831676366127849e-06, -1.614934398476453109e-06, -1.614034623719777095e-06, -1.613132353941415716e-06, -1.612227590990562598e-06, -1.611320336720190193e-06, -1.610410592987041520e-06, -1.609498361651700681e-06, -1.608583644578418370e-06, -1.607666443635328507e-06, -1.606746760694306353e-06, -1.605824597631005997e-06, -1.604899956324836001e-06, -1.603972838659018268e-06, -1.603043246520409534e-06, -1.602111181799763308e-06, -1.601176646391523408e-06, -1.600239642193893425e-06, -1.599300171108816171e-06, -1.598358235042022393e-06, -1.597413835902870256e-06, -1.596466975604550536e-06, -1.595517656063969520e-06, -1.594565879201746887e-06, -1.593611646942270979e-06, -1.592654961213529813e-06, -1.591695823947346564e-06, -1.590734237079217984e-06, -1.589770202548349349e-06, -1.588803722297651072e-06, -1.587834798273782316e-06, -1.586863432426969104e-06, -1.585889626711263507e-06, -1.584913383084353059e-06, -1.583934703507626405e-06, -1.582953589946147044e-06, -1.581970044368692926e-06, -1.580984068747574973e-06, -1.579995665059041754e-06, -1.579004835282725946e-06, -1.578011581402100249e-06, -1.577015905404281934e-06, -1.576017809279933106e-06, -1.575017295023443026e-06, -1.574014364632979779e-06, -1.573009020110102762e-06, -1.572001263460190218e-06, -1.570991096692234254e-06, -1.569978521818718027e-06, -1.568963540856032055e-06, -1.567946155823908190e-06, -1.566926368745861131e-06, -1.565904181648983871e-06, -1.564879596564030913e-06, -1.563852615525195077e-06, -1.562823240570559608e-06, -1.561791473741544424e-06, -1.560757317083298083e-06, -1.559720772644589149e-06, -1.558681842477613070e-06, -1.557640528638391342e-06, -1.556596833186399237e-06, -1.555550758184620651e-06, -1.554502305699735506e-06, -1.553451477801993547e-06, -1.552398276565043236e-06, -1.551342704066388095e-06, -1.550284762386807546e-06, -1.549224453610797793e-06, -1.548161779826408762e-06, -1.547096743125062212e-06, -1.546029345601989850e-06, -1.544959589355833118e-06, -1.543887476488662882e-06, -1.542813009106249211e-06, -1.541736189317816165e-06, -1.540657019236125435e-06, -1.539575500977447335e-06, -1.538491636661629836e-06, -1.537405428411887862e-06, -1.536316878355068415e-06, -1.535225988621509970e-06, -1.534132761345019386e-06, -1.533037198662955134e-06, -1.531939302716038615e-06, -1.530839075648600863e-06, -1.529736519608427747e-06, -1.528631636746772254e-06, -1.527524429218367617e-06, -1.526414899181469667e-06, -1.525303048797657993e-06, -1.524188880232114191e-06, -1.523072395653431707e-06, -1.521953597233670256e-06, -1.520832487148371918e-06, -1.519709067576399989e-06, -1.518583340700192456e-06, -1.517455308705581579e-06, -1.516324973781840052e-06, -1.515192338121660680e-06, -1.514057403921223712e-06, -1.512920173379982120e-06, -1.511780648700947898e-06, -1.510638832090502113e-06, -1.509494725758442976e-06, -1.508348331917970379e-06, -1.507199652785723807e-06, -1.506048690581618855e-06, -1.504895447529092656e-06, -1.503739925854927701e-06, -1.502582127789285297e-06, -1.501422055565772478e-06, -1.500259711421223687e-06, -1.499095097595931167e-06, -1.497928216333708277e-06, -1.496759069881454541e-06, -1.495587660489604997e-06, -1.494413990411953171e-06, -1.493238061905523170e-06, -1.492059877230802620e-06, -1.490879438651587023e-06, -1.489696748435016389e-06, -1.488511808851557665e-06, -1.487324622175059572e-06, -1.486135190682509940e-06, -1.484943516654543919e-06, -1.483749602374793888e-06, -1.482553450130395553e-06, -1.481355062211780001e-06, -1.480154440912563375e-06, -1.478951588529733222e-06, -1.477746507363744207e-06, -1.476539199718031700e-06, -1.475329667899536099e-06, -1.474117914218467344e-06, -1.472903940988118791e-06, -1.471687750525409729e-06, -1.470469345150189123e-06, -1.469248727185758235e-06, -1.468025898958699941e-06, -1.466800862798682224e-06, -1.465573621038754848e-06, -1.464344176015351469e-06, -1.463112530067847070e-06, -1.461878685539069138e-06, -1.460642644775085060e-06, -1.459404410124976179e-06, -1.458163983941372060e-06, -1.456921368579968950e-06, -1.455676566399586105e-06, -1.454429579762399999e-06, -1.453180411033812392e-06, -1.451929062582211263e-06, -1.450675536779554621e-06, -1.449419836000641845e-06, -1.448161962623670189e-06, -1.446901919030028528e-06, -1.445639707604073526e-06, -1.444375330733659673e-06, -1.443108790809667480e-06, -1.441840090226036520e-06, -1.440569231380038806e-06, -1.439296216672045432e-06, -1.438021048505597723e-06, -1.436743729287439850e-06, -1.435464261427305374e-06, -1.434182647338235518e-06, -1.432898889436355554e-06, -1.431612990140925199e-06, -1.430324951874344756e-06, -1.429034777062191961e-06, -1.427742468133007682e-06, -1.426448027518610382e-06, -1.425151457653880124e-06, -1.423852760976800712e-06, -1.422551939928479806e-06, -1.421248996953155914e-06, -1.419943934498022416e-06, -1.418636755013515136e-06, -1.417327460953107992e-06, -1.416016054773357892e-06, -1.414702538933950258e-06, -1.413386915897492776e-06, -1.412069188129804236e-06, -1.410749358099736651e-06, -1.409427428279200670e-06, -1.408103401143148215e-06, -1.406777279169648077e-06, -1.405449064839650441e-06, -1.404118760637312359e-06, -1.402786369049772014e-06, -1.401451892567203146e-06, -1.400115333682810389e-06, -1.398776694892874378e-06, -1.397435978696534906e-06, -1.396093187596106659e-06, -1.394748324096861950e-06, -1.393401390707084929e-06, -1.392052389938108429e-06, -1.390701324304097974e-06, -1.389348196322334263e-06, -1.387993008513236462e-06, -1.386635763399882789e-06, -1.385276463508548161e-06, -1.383915111368489687e-06, -1.382551709511756721e-06, -1.381186260473535603e-06, -1.379818766791927525e-06, -1.378449231007969708e-06, -1.377077655665726879e-06, -1.375704043312023186e-06, -1.374328396496753699e-06, -1.372950717772908752e-06, -1.371571009696077806e-06, -1.370189274825005302e-06, -1.368805515721363244e-06, -1.367419734949565054e-06, -1.366031935077050817e-06, -1.364642118674351228e-06, -1.363250288314552058e-06, -1.361856446573866958e-06, -1.360460596031407703e-06, -1.359062739268955491e-06, -1.357662878871572928e-06, -1.356261017426798706e-06, -1.354857157525284366e-06, -1.353451301760548654e-06, -1.352043452728816163e-06, -1.350633613029268901e-06, -1.349221785264151325e-06, -1.347807972038191179e-06, -1.346392175959201103e-06, -1.344974399637842519e-06, -1.343554645687386135e-06, -1.342132916724333030e-06, -1.340709215367623950e-06, -1.339283544239238372e-06, -1.337855905963941452e-06, -1.336426303169294827e-06, -1.334994738485684563e-06, -1.333561214546355675e-06, -1.332125733987176650e-06, -1.330688299446993510e-06, -1.329248913567446002e-06, -1.327807578992725134e-06, -1.326364298370159751e-06, -1.324919074349674428e-06, -1.323471909583855120e-06, -1.322022806728231219e-06, -1.320571768441034154e-06, -1.319118797383264303e-06, -1.317663896218722336e-06, -1.316207067613790255e-06, -1.314748314237777199e-06, -1.313287638762658974e-06, -1.311825043863152387e-06, -1.310360532216716304e-06, -1.308894106503573033e-06, -1.307425769406504194e-06, -1.305955523611185505e-06, -1.304483371805938817e-06, -1.303009316681791192e-06, -1.301533360932476384e-06, -1.300055507254486512e-06, -1.298575758346818371e-06, -1.297094116911335326e-06, -1.295610585652538827e-06, -1.294125167277591702e-06, -1.292637864496398200e-06, -1.291148680021345647e-06, -1.289657616567664861e-06, -1.288164676853189166e-06, -1.286669863598403948e-06, -1.285173179526433310e-06, -1.283674627363126474e-06, -1.282174209836775505e-06, -1.280671929678484404e-06, -1.279167789621936389e-06, -1.277661792403437726e-06, -1.276153940761900578e-06, -1.274644237438936392e-06, -1.273132685178560704e-06, -1.271619286727588707e-06, -1.270104044835377115e-06, -1.268586962253865036e-06, -1.267068041737656129e-06, -1.265547286043746077e-06, -1.264024697931834078e-06, -1.262500280164396329e-06, -1.260974035506086748e-06, -1.259445966724379449e-06, -1.257916076589314634e-06, -1.256384367873300382e-06, -1.254850843351475823e-06, -1.253315505801469724e-06, -1.251778358003451106e-06, -1.250239402740194040e-06, -1.248698642796797913e-06, -1.247156080961030479e-06, -1.245611720023369150e-06, -1.244065562776412307e-06, -1.242517612015541683e-06, -1.240967870538635004e-06, -1.239416341145889810e-06, -1.237863026640115676e-06, -1.236307929826813625e-06, -1.234751053513589134e-06, -1.233192400510776608e-06, -1.231631973631196070e-06, -1.230069775689872370e-06, -1.228505809504757069e-06, -1.226940077895813643e-06, -1.225372583685710142e-06, -1.223803329699573133e-06, -1.222232318764782499e-06, -1.220659553711281670e-06, -1.219085037371660841e-06, -1.217508772580536312e-06, -1.215930762175217945e-06, -1.214351008995442988e-06, -1.212769515883092530e-06, -1.211186285682929266e-06, -1.209601321241650724e-06, -1.208014625408631694e-06, -1.206426201035570799e-06, -1.204836050976559742e-06, -1.203244178088076744e-06, -1.201650585229053877e-06, -1.200055275260585054e-06, -1.198458251046351874e-06, -1.196859515452394288e-06, -1.195259071346843358e-06, -1.193656921600599098e-06, -1.192053069086701974e-06, -1.190447516680411043e-06, -1.188840267259522437e-06, -1.187231323704105090e-06, -1.185620688896555793e-06, -1.184008365721670560e-06, -1.182394357066351761e-06, -1.180778665820038421e-06, -1.179161294874465235e-06, -1.177542247123407188e-06, -1.175921525463353370e-06, -1.174299132792872338e-06, -1.172675072012694066e-06, -1.171049346026035203e-06, -1.169421957738327601e-06, -1.167792910057279939e-06, -1.166162205892866283e-06, -1.164529848157398300e-06, -1.162895839765239804e-06, -1.161260183633210371e-06, -1.159622882680321910e-06, -1.157983939827817414e-06, -1.156343357999262018e-06, -1.154701140120241875e-06, -1.153057289118777725e-06, -1.151411807925043678e-06, -1.149764699471440267e-06, -1.148115966692575183e-06, -1.146465612525336120e-06, -1.144813639908610400e-06, -1.143160051783683512e-06, -1.141504851093971654e-06, -1.139848040785082509e-06, -1.138189623804862259e-06, -1.136529603103137659e-06, -1.134867981632116474e-06, -1.133204762346096946e-06, -1.131539948201551440e-06, -1.129873542157102724e-06, -1.128205547173591947e-06, -1.126535966213799963e-06, -1.124864802242789955e-06, -1.123192058227980706e-06, -1.121517737138479349e-06, -1.119841841945827597e-06, -1.118164375623668867e-06, -1.116485341147555999e-06, -1.114804741495363551e-06, -1.113122579647004041e-06, -1.111438858584490207e-06, -1.109753581291996623e-06, -1.108066750755571294e-06, -1.106378369963504316e-06, -1.104688441906364518e-06, -1.102996969576375196e-06, -1.101303955968107620e-06, -1.099609404078202998e-06, -1.097913316905139117e-06, -1.096215697449666776e-06, -1.094516548714520103e-06, -1.092815873704465893e-06, -1.091113675426310171e-06, -1.089409956888967231e-06, -1.087704721103088203e-06, -1.085997971081851343e-06, -1.084289709839945379e-06, -1.082579940394365720e-06, -1.080868665764102537e-06, -1.079155888969867808e-06, -1.077441613034802803e-06, -1.075725840983819513e-06, -1.074008575843665024e-06, -1.072289820643294217e-06, -1.070569578413629417e-06, -1.068847852187276214e-06, -1.067124644999316925e-06, -1.065399959886272339e-06, -1.063673799886917623e-06, -1.061946168041899463e-06, -1.060217067393810395e-06, -1.058486500987180961e-06, -1.056754471868544516e-06, -1.055020983086144785e-06, -1.053286037690370393e-06, -1.051549638733521506e-06, -1.049811789269515276e-06, -1.048072492354621912e-06, -1.046331751046788960e-06, -1.044589568405713092e-06, -1.042845947493203687e-06, -1.041100891372879601e-06, -1.039354403110236081e-06, -1.037606485772729463e-06, -1.035857142429449378e-06, -1.034106376151577204e-06, -1.032354190012154402e-06, -1.030600587085778010e-06, -1.028845570449337560e-06, -1.027089143181349736e-06, -1.025331308362005170e-06, -1.023572069073559558e-06, -1.021811428400023228e-06, -1.020049389427221276e-06, -1.018285955242802880e-06, -1.016521128936294459e-06, -1.014754913598811039e-06, -1.012987312323485281e-06, -1.011218328205173556e-06, -1.009447964340521382e-06, -1.007676223828036901e-06, -1.005903109767774727e-06, -1.004128625261793129e-06, -1.002352773413846771e-06, -1.000575557329445372e-06, -9.987969801158606874e-07, -9.970170448821913138e-07, -9.952357547390530944e-07, -9.934531127990375770e-07, -9.916691221763922587e-07, -9.898837859870932193e-07, -9.880971073489183892e-07, -9.863090893811421943e-07, -9.845197352049796131e-07, -9.827290479432772213e-07, -9.809370307205896364e-07, -9.791436866631560128e-07, -9.773490188990095207e-07, -9.755530305576205333e-07, -9.737557247703847299e-07, -9.719571046702904233e-07, -9.701571733919969106e-07, -9.683559340718380732e-07, -9.665533898478742571e-07, -9.647495438596051294e-07, -9.629443992483997586e-07, -9.611379591571974007e-07, -9.593302267305775909e-07, -9.575212051148317182e-07, -9.557108974576491991e-07, -9.538993069084905963e-07, -9.520864366186801568e-07, -9.502722897406760926e-07, -9.484568694288581102e-07, -9.466401788392115729e-07, -9.448222211290784732e-07, -9.430029994576299712e-07, -9.411825169855458984e-07, -9.393607768750740503e-07, -9.375377822900553856e-07, -9.357135363959674364e-07, -9.338880423595385907e-07, -9.320613033496039134e-07, -9.302333225360056974e-07, -9.284041030904449434e-07, -9.265736481861642524e-07, -9.247419609976327288e-07, -9.229090447013215453e-07, -9.210749024749868237e-07, -9.192395374977484088e-07, -9.174029529504854327e-07, -9.155651520155770172e-07, -9.137261378765952239e-07, -9.118859137191623578e-07, -9.100444827298448480e-07, -9.082018480970052569e-07, -9.063580130104966072e-07, -9.045129806613283335e-07, -9.026667542424537049e-07, -9.008193369480599060e-07, -8.989707319736307170e-07, -8.971209425163501248e-07, -8.952699717748472606e-07, -8.934178229488773858e-07, -8.915644992401099506e-07, -8.897100038514128505e-07, -8.878543399869218839e-07, -8.859975108524317629e-07, -8.841395196550762530e-07, -8.822803696034059941e-07, -8.804200639074452514e-07, -8.785586057783894193e-07, -8.766959984290649599e-07, -8.748322450736888458e-07, -8.729673489275410759e-07, -8.711013132077591924e-07, -8.692341411326219026e-07, -8.673658359216035009e-07, -8.654964007957913499e-07, -8.636258389775401855e-07, -8.617541536905669840e-07, -8.598813481600072904e-07, -8.580074256120921809e-07, -8.561323892746406007e-07, -8.542562423767130337e-07, -8.523789881486938761e-07, -8.505006298222864606e-07, -8.486211706305929944e-07, -8.467406138077683353e-07, -8.448589625895286343e-07, -8.429762202127916647e-07, -8.410923899157704188e-07, -8.392074749379710967e-07, -8.373214785202505983e-07, -8.354344039045003685e-07, -8.335462543341249705e-07, -8.316570330537148137e-07, -8.297667433091061871e-07, -8.278753883474879854e-07, -8.259829714170376966e-07, -8.240894957674235869e-07, -8.221949646494683223e-07, -8.202993813152230842e-07, -8.184027490179675696e-07, -8.165050710122775416e-07, -8.146063505537060277e-07, -8.127065908992520465e-07, -8.108057953070393703e-07, -8.089039670363902174e-07, -8.070011093478119108e-07, -8.050972255030924877e-07, -8.031923187649432508e-07, -8.012863923974995772e-07, -7.993794496659930104e-07, -7.974714938368110822e-07, -7.955625281775851922e-07, -7.936525559568522182e-07, -7.917415804444605627e-07, -7.898296049116557033e-07, -7.879166326303098158e-07, -7.860026668737774899e-07, -7.840877109165197516e-07, -7.821717680338812945e-07, -7.802548415025648176e-07, -7.783369346003017413e-07, -7.764180506059244172e-07, -7.744981927994494548e-07, -7.725773644617362615e-07, -7.706555688748960533e-07, -7.687328093223753937e-07, -7.668090890881902642e-07, -7.648844114577647327e-07, -7.629587797175888580e-07, -7.610321971548749003e-07, -7.591046670583899548e-07, -7.571761927177056921e-07, -7.552467774232635795e-07, -7.533164244667929983e-07, -7.513851371410534274e-07, -7.494529187395041011e-07, -7.475197725571991106e-07, -7.455857018896310985e-07, -7.436507100336337724e-07, -7.417148002870447855e-07, -7.397779759483653357e-07, -7.378402403175905750e-07, -7.359015966954555389e-07, -7.339620483835062968e-07, -7.320215986845160571e-07, -7.300802509022322220e-07, -7.281380083410286805e-07, -7.261948743068288624e-07, -7.242508521059203158e-07, -7.223059450458755378e-07, -7.203601564351271875e-07, -7.184134895830468600e-07, -7.164659477999294163e-07, -7.145175343970914509e-07, -7.125682526865149026e-07, -7.106181059813412985e-07, -7.086670975956353255e-07, -7.067152308440135126e-07, -7.047625090425092631e-07, -7.028089355077919963e-07, -7.008545135572435919e-07, -6.988992465093922830e-07, -6.969431376835493845e-07, -6.949861903999023611e-07, -6.930284079795838603e-07, -6.910697937443342758e-07, -6.891103510170011794e-07, -6.871500831211961662e-07, -6.851889933813796647e-07, -6.832270851228378542e-07, -6.812643616717854742e-07, -6.793008263549990586e-07, -6.773364825003347908e-07, -6.753713334363801611e-07, -6.734053824925302001e-07, -6.714386329989849370e-07, -6.694710882868293390e-07, -6.675027516876806273e-07, -6.655336265342035915e-07, -6.635637161597591761e-07, -6.615930238984809255e-07, -6.596215530853619110e-07, -6.576493070559015178e-07, -6.556762891466172645e-07, -6.537025026946946612e-07, -6.517279510380651365e-07, -6.497526375154040255e-07, -6.477765654662081795e-07, -6.457997382304547173e-07, -6.438221591490934695e-07, -6.418438315637189642e-07, -6.398647588166368141e-07, -6.378849442508600101e-07, -6.359043912101940482e-07, -6.339231030388796935e-07, -6.319410830821167644e-07, -6.299583346856960962e-07, -6.279748611960964210e-07, -6.259906659605595417e-07, -6.240057523267322488e-07, -6.220201236431047658e-07, -6.200337832590819003e-07, -6.180467345242037730e-07, -6.160589807890068274e-07, -6.140705254046655345e-07, -6.120813717226499798e-07, -6.100915230956637404e-07, -6.081009828764313576e-07, -6.061097544186408727e-07, -6.041178410766020491e-07, -6.021252462049640987e-07, -6.001319731591595271e-07, -5.981380252954780372e-07, -5.961434059702776241e-07, -5.941481185408522541e-07, -5.921521663650786523e-07, -5.901555528010559957e-07, -5.881582812079810044e-07, -5.861603549453478128e-07, -5.841617773730410376e-07, -5.821625518517542119e-07, -5.801626817427347225e-07, -5.781621704074150329e-07, -5.761610212083822184e-07, -5.741592375081360039e-07, -5.721568226700572405e-07, -5.701537800580416694e-07, -5.681501130361532736e-07, -5.661458249694850754e-07, -5.641409192233738308e-07, -5.621353991634764743e-07, -5.601292681562028465e-07, -5.581225295684548088e-07, -5.561151867672575713e-07, -5.541072431207266874e-07, -5.520987019968383738e-07, -5.500895667643767045e-07, -5.480798407925000366e-07, -5.460695274508168189e-07, -5.440586301093845339e-07, -5.420471521387905888e-07, -5.400350969097901036e-07, -5.380224677938408119e-07, -5.360092681628172935e-07, -5.339955013886629496e-07, -5.319811708442643527e-07, -5.299662799026536588e-07, -5.279508319370843116e-07, -5.259348303214745696e-07, -5.239182784300461408e-07, -5.219011796374053921e-07, -5.198835373186260410e-07, -5.178653548488919189e-07, -5.158466356040216030e-07, -5.138273829601088499e-07, -5.118076002936048643e-07, -5.097872909813115225e-07, -5.077664584004679817e-07, -5.057451059283896318e-07, -5.037232369429895505e-07, -5.017008548224258197e-07, -4.996779629451774410e-07, -4.976545646900442298e-07, -4.956306634362264360e-07, -4.936062625629707907e-07, -4.915813654500862431e-07, -4.895559754775922300e-07, -4.875300960257973442e-07, -4.855037304753863668e-07, -4.834768822070559376e-07, -4.814495546020454325e-07, -4.794217510417711517e-07, -4.773934749079138813e-07, -4.753647295824135464e-07, -4.733355184475490443e-07, -4.713058448855773023e-07, -4.692757122792664851e-07, -4.672451240115271647e-07, -4.652140834655016296e-07, -4.631825940246472116e-07, -4.611506590723682501e-07, -4.591182819925533754e-07, -4.570854661692072615e-07, -4.550522149865352761e-07, -4.530185318289433751e-07, -4.509844200811098353e-07, -4.489498831276395064e-07, -4.469149243534896568e-07, -4.448795471440603413e-07, -4.428437548843827319e-07, -4.408075509600128432e-07, -4.387709387566599502e-07, -4.367339216598276574e-07, -4.346965030557920635e-07, -4.326586863303468818e-07, -4.306204748697748815e-07, -4.285818720604893274e-07, -4.265428812887599127e-07, -4.245035059411526858e-07, -4.224637494046160250e-07, -4.204236150656653685e-07, -4.183831063112822877e-07, -4.163422265285397275e-07, -4.143009791042433937e-07, -4.122593674259116119e-07, -4.102173948805158418e-07, -4.081750648554587358e-07, -4.061323807381227764e-07, -4.040893459160411122e-07, -4.020459637764486301e-07, -4.000022377072585318e-07, -3.979581710957996189e-07, -3.959137673298049927e-07, -3.938690297970381947e-07, -3.918239618849378232e-07, -3.897785669814983950e-07, -3.877328484744728108e-07, -3.856868097514401175e-07, -3.836404542002586184e-07, -3.815937852087899520e-07, -3.795468061645294150e-07, -3.774995204555938145e-07, -3.754519314694560008e-07, -3.734040425939295432e-07, -3.713558572168003767e-07, -3.693073787254628422e-07, -3.672586105078163239e-07, -3.652095559514457454e-07, -3.631602184437093428e-07, -3.611106013721809221e-07, -3.590607081242846823e-07, -3.570105420873835181e-07, -3.549601066487667384e-07, -3.529094051957407517e-07, -3.508584411152578005e-07, -3.488072177944550985e-07, -3.467557386202882234e-07, -3.447040069796124328e-07, -3.426520262592755196e-07, -3.405997998457393473e-07, -3.385473311256254982e-07, -3.364946234853464961e-07, -3.344416803111860630e-07, -3.323885049892995953e-07, -3.303351009057963792e-07, -3.282814714463715545e-07, -3.262276199968451986e-07, -3.241735499427938668e-07, -3.221192646696351897e-07, -3.200647675627134241e-07, -3.180100620069313103e-07, -3.159551513872897391e-07, -3.139000390885150564e-07, -3.118447284951545665e-07, -3.097892229915575271e-07, -3.077335259619686929e-07, -3.056776407901590626e-07, -3.036215708599630036e-07, -3.015653195549118043e-07, -2.995088902583151481e-07, -2.974522863532620133e-07, -2.953955112226991297e-07, -2.933385682490673366e-07, -2.912814608148362725e-07, -2.892241923021406803e-07, -2.871667660928617222e-07, -2.851091855687165538e-07, -2.830514541108824001e-07, -2.809935751005455917e-07, -2.789355519185233647e-07, -2.768773879453567163e-07, -2.748190865612999764e-07, -2.727606511464075747e-07, -2.707020850801672231e-07, -2.686433917420349229e-07, -2.665845745110736517e-07, -2.645256367660298619e-07, -2.624665818853338506e-07, -2.604074132471821338e-07, -2.583481342290815310e-07, -2.562887482088393467e-07, -2.542292585632857798e-07, -2.521696686692711992e-07, -2.501099819032947201e-07, -2.480502016412271705e-07, -2.459903312587577962e-07, -2.439303741314850514e-07, -2.418703336340844421e-07, -2.398102131412219980e-07, -2.377500160271762050e-07, -2.356897456654766393e-07, -2.336294054298928786e-07, -2.315689986931586325e-07, -2.295085288279653909e-07, -2.274479992065041536e-07, -2.253874132006407121e-07, -2.233267741814531443e-07, -2.212660855202332977e-07, -2.192053505871994056e-07, -2.171445727524987358e-07, -2.150837553858334404e-07, -2.130229018560931551e-07, -2.109620155322600274e-07, -2.089010997825832302e-07, -2.068401579746627650e-07, -2.047791934759043982e-07, -2.027182096532353224e-07, -2.006572098727380267e-07, -1.985961975006459044e-07, -1.965351759020612422e-07, -1.944741484419534485e-07, -1.924131184847891381e-07, -1.903520893941618997e-07, -1.882910645336976945e-07, -1.862300472662300579e-07, -1.841690409538843792e-07, -1.821080489585294234e-07, -1.800470746414077331e-07, -1.779861213632206767e-07, -1.759251924841220950e-07, -1.738642913638065779e-07, -1.718034213611365586e-07, -1.697425858346856852e-07, -1.676817881423678990e-07, -1.656210316415237799e-07, -1.635603196890068635e-07, -1.614996556408105235e-07, -1.594390428526142287e-07, -1.573784846794103715e-07, -1.553179844755902954e-07, -1.532575455949396091e-07, -1.511971713907237904e-07, -1.491368652153179265e-07, -1.470766304207477564e-07, -1.450164703583223765e-07, -1.429563883787155289e-07, -1.408963878320555990e-07, -1.388364720675522852e-07, -1.367766444340410037e-07, -1.347169082796108020e-07, -1.326572669516913390e-07, -1.305977237970462146e-07, -1.285382821618608228e-07, -1.264789453913705570e-07, -1.244197168304026470e-07, -1.223605998230070902e-07, -1.203015977125409581e-07, -1.182427138416652332e-07, -1.161839515524281360e-07, -1.141253141858967315e-07, -1.120668050826981966e-07, -1.100084275826494024e-07, -1.079501850248432182e-07, -1.058920807477344462e-07, -1.038341180887686358e-07, -1.017763003848335516e-07, -9.971863097234677568e-08, -9.766111318642532408e-08, -9.560375036179614079e-08, -9.354654583242432987e-08, -9.148950293123391247e-08, -8.943262499065098676e-08, -8.737591534223254211e-08, -8.531937731675267127e-08, -8.326301424419722338e-08, -8.120682945384976465e-08, -7.915082627382923068e-08, -7.709500803209069591e-08, -7.503937805513923348e-08, -7.298393966903084348e-08, -7.092869619900138636e-08, -6.887365096918726057e-08, -6.681880730307659317e-08, -6.476416852359569016e-08, -6.270973795228082354e-08, -6.065551891018730941e-08, -5.860151471751849430e-08, -5.654772869325476800e-08, -5.449416415615345284e-08, -5.244082442346474806e-08, -5.038771281193058022e-08, -4.833483263741470783e-08, -4.628218721462277039e-08, -4.422977985755413410e-08, -4.217761387958831574e-08, -4.012569259265606162e-08, -3.807401930814958377e-08, -3.602259733655059337e-08, -3.397142998705943927e-08, -3.192052056850455668e-08, -2.986987238851387042e-08, -2.781948875360128493e-08, -2.576937296961828521e-08, -2.371952834147483608e-08, -2.166995817276794176e-08, -1.962066576678199508e-08, -1.757165442520427181e-08, -1.552292744912453881e-08, -1.347448813866458127e-08, -1.142633979260740746e-08, -9.378485709305355706e-09, -7.330929185853123089e-09, -5.283673518173510120e-09, -3.236722001468987757e-09, -1.190077929851179425e-09, 8.562554035731083786e-10, 2.902274706615817006e-09, 4.947976688377970834e-09, 6.993358058707283766e-09, 9.038415528568430817e-09, 1.108314580995701543e-08, 1.312754561590482126e-08, 1.517161166039374071e-08, 1.721534065872599035e-08, 1.925872932698182624e-08, 2.130177438238977341e-08, 2.334447254324070823e-08, 2.538682052889277853e-08, 2.742881505968552239e-08, 2.947045285731002812e-08, 3.151173064426668432e-08, 3.355264514423542261e-08, 3.559319308198949890e-08, 3.763337118330972144e-08, 3.967317617535398875e-08, 4.171260478611589000e-08, 4.375165374479395842e-08, 4.579031978170676951e-08, 4.782859962829647473e-08, 4.986649001704442247e-08, 5.190398768184029899e-08, 5.394108935743983541e-08, 5.597779177983572873e-08, 5.801409168617041068e-08, 6.004998581474223505e-08, 6.208547090491923248e-08, 6.412054369750811910e-08, 6.615520093421337331e-08, 6.818943935800733623e-08, 7.022325571304258355e-08, 7.225664674456828095e-08, 7.428960919929706854e-08, 7.632213982495688777e-08, 7.835423537020457082e-08, 8.038589258544920959e-08, 8.241710822194927147e-08, 8.444787903217948380e-08, 8.647820177010999731e-08, 8.850807319066571447e-08, 9.053749005009477526e-08, 9.256644910588369507e-08, 9.459494711667046440e-08, 9.662298084261332583e-08, 9.865054704494274655e-08, 1.006776424858741078e-07, 1.027042639294310870e-07, 1.047304081405426677e-07, 1.067560718854115727e-07, 1.087812519317902374e-07, 1.108059450485342785e-07, 1.128301480055163875e-07, 1.148538575744458877e-07, 1.168770705279688022e-07, 1.188997836400358094e-07, 1.209219936862679503e-07, 1.229436974429671079e-07, 1.249648916883878942e-07, 1.269855732017475606e-07, 1.290057387635925387e-07, 1.310253851560744668e-07, 1.330445091625039097e-07, 1.350631075672653904e-07, 1.370811771566339301e-07, 1.390987147178789138e-07, 1.411157170396283408e-07, 1.431321809122381311e-07, 1.451481031267991383e-07, 1.471634804764114840e-07, 1.491783097551919144e-07, 1.511925877587344808e-07, 1.532063112840207802e-07, 1.552194771294286642e-07, 1.572320820946462383e-07, 1.592441229810364569e-07, 1.612555965911007396e-07, 1.632664997287570363e-07, 1.652768291997033896e-07, 1.672865818105218003e-07, 1.692957543694946085e-07, 1.713043436865193931e-07, 1.733123465726640416e-07, 1.753197598405312119e-07, 1.773265803041731002e-07, 1.793328047790069493e-07, 1.813384300821807284e-07, 1.833434530320366967e-07, 1.853478704484767393e-07, 1.873516791528795962e-07, 1.893548759681007564e-07, 1.913574577183938163e-07, 1.933594212297692506e-07, 1.953607633294644353e-07, 1.973614808463055415e-07, 1.993615706106234417e-07, 2.013610294542594798e-07, 2.033598542104789150e-07, 2.053580417143358076e-07, 2.073555888021407388e-07, 2.093524923118215134e-07, 2.113487490828421895e-07, 2.133443559561150663e-07, 2.153393097743659934e-07, 2.173336073816026459e-07, 2.193272456234736931e-07, 2.213202213471891239e-07, 2.233125314015209622e-07, 2.253041726367229835e-07, 2.272951419048884541e-07, 2.292854360594224563e-07, 2.312750519554038093e-07, 2.332639864494976135e-07, 2.352522363999652820e-07, 2.372397986665732204e-07, 2.392266701109635356e-07, 2.412128475961150852e-07, 2.431983279867098184e-07, 2.451831081490478620e-07, 2.471671849509632130e-07, 2.491505552621848933e-07, 2.511332159538945332e-07, 2.531151638986449504e-07, 2.550963959711660494e-07, 2.570769090474782949e-07, 2.590567000052525955e-07, 2.610357657240859067e-07, 2.630141030849691886e-07, 2.649917089706471830e-07, 2.669685802655372040e-07, 2.689447138556449645e-07, 2.709201066289209119e-07, 2.728947554748260709e-07, 2.748686572842445877e-07, 2.768418089502893109e-07, 2.788142073674183361e-07, 2.807858494317934599e-07, 2.827567320415538773e-07, 2.847268520963766246e-07, 2.866962064973902879e-07, 2.886647921479809548e-07, 2.906326059529115651e-07, 2.925996448186734821e-07, 2.945659056538566991e-07, 2.965313853681719931e-07, 2.984960808736968039e-07, 3.004599890839127929e-07, 3.024231069140528625e-07, 3.043854312813839586e-07, 3.063469591047600493e-07, 3.083076873045427154e-07, 3.102676128034008025e-07, 3.122267325254324716e-07, 3.141850433965210582e-07, 3.161425423446950090e-07, 3.180992262991590347e-07, 3.200550921915406249e-07, 3.220101369549174955e-07, 3.239643575242626515e-07, 3.259177508363692130e-07, 3.278703138298455446e-07, 3.298220434450414576e-07, 3.317729366243925292e-07, 3.337229903119136294e-07, 3.356722014534505428e-07, 3.376205669970477928e-07, 3.395680838920692096e-07, 3.415147490899939292e-07, 3.434605595443376197e-07, 3.454055122102104357e-07, 3.473496040446812424e-07, 3.492928320066872481e-07, 3.512351930569565006e-07, 3.531766841583571292e-07, 3.551173022753850487e-07, 3.570570443744223048e-07, 3.589959074240988096e-07, 3.609338883944146568e-07, 3.628709842575441152e-07, 3.648071919877383781e-07, 3.667425085609022059e-07, 3.686769309549471391e-07, 3.706104561497061063e-07, 3.725430811269397246e-07, 3.744748028702527603e-07, 3.764056183654511538e-07, 3.783355246000189766e-07, 3.802645185634720146e-07, 3.821925972472800528e-07, 3.841197576447775133e-07, 3.860459967515225974e-07, 3.879713115647765191e-07, 3.898956990838529591e-07, 3.918191563100467021e-07, 3.937416802466242670e-07, 3.956632678987511145e-07, 3.975839162738402013e-07, 3.995036223810366137e-07, 4.014223832315679742e-07, 4.033401958386632326e-07, 4.052570572174719327e-07, 4.071729643854141434e-07, 4.090879143616635032e-07, 4.110019041675001689e-07, 4.129149308262286529e-07, 4.148269913631823762e-07, 4.167380828056409771e-07, 4.186482021831837351e-07, 4.205573465272555728e-07, 4.224655128710924111e-07, 4.243726982504972100e-07, 4.262788997029852596e-07, 4.281841142681320459e-07, 4.300883389878381604e-07, 4.319915709058104923e-07, 4.338938070679229587e-07, 4.357950445221224839e-07, 4.376952803183554665e-07, 4.395945115089138453e-07, 4.414927351480094649e-07, 4.433899482916921787e-07, 4.452861479986298070e-07, 4.471813313292530047e-07, 4.490754953460991033e-07, 4.509686371140806207e-07, 4.528607536999709001e-07, 4.547518421727505470e-07, 4.566418996035318310e-07, 4.585309230655577331e-07, 4.604189096341185129e-07, 4.623058563869982009e-07, 4.641917604035164985e-07, 4.660766187657498813e-07, 4.679604285575837702e-07, 4.698431868650638901e-07, 4.717248907767402722e-07, 4.736055373828200086e-07, 4.754851237759392173e-07, 4.773636470510800329e-07, 4.792411043051500016e-07, 4.811174926372433912e-07, 4.829928091489841333e-07, 4.848670509435968400e-07, 4.867402151270951913e-07, 4.886122988073649158e-07, 4.904832990944927570e-07, 4.923532131011188396e-07, 4.942220379415913299e-07, 4.960897707327317307e-07, 4.979564085937602360e-07, 4.998219486458694619e-07, 5.016863880124814154e-07, 5.035497238196094949e-07, 5.054119531949860460e-07, 5.072730732688530673e-07, 5.091330811738707307e-07, 5.109919740447026524e-07, 5.128497490183540716e-07, 5.147064032340975225e-07, 5.165619338333896142e-07, 5.184163379602131254e-07, 5.202696127605736554e-07, 5.221217553827594515e-07, 5.239727629776822337e-07, 5.258226326980382088e-07, 5.276713616990725172e-07, 5.295189471384922010e-07, 5.313653861760634390e-07, 5.332106759739378668e-07, 5.350548136965816374e-07, 5.368977965106918826e-07, 5.387396215855376441e-07, 5.405802860924626649e-07, 5.424197872052204965e-07, 5.442581220999026075e-07, 5.460952879549347832e-07, 5.479312819510014223e-07, 5.497661012713815974e-07, 5.515997431014573518e-07, 5.534322046290490193e-07, 5.552634830443300969e-07, 5.570935755398467269e-07, 5.589224793104171116e-07, 5.607501915534905492e-07, 5.625767094686385793e-07, 5.644020302578946425e-07, 5.662261511256770007e-07, 5.680490692787091160e-07, 5.698707819263558169e-07, 5.716912862801336072e-07, 5.735105795540361388e-07, 5.753286589644683543e-07, 5.771455217302381233e-07, 5.789611650724876320e-07, 5.807755862150261618e-07, 5.825887823838336217e-07, 5.844007508074016912e-07, 5.862114887166491168e-07, 5.880209933449301823e-07, 5.898292619279565701e-07, 5.916362917041266453e-07, 5.934420799140395761e-07, 5.952466238008308654e-07, 5.970499206100829881e-07, 5.988519675897658874e-07, 6.006527619905527062e-07, 6.024523010654209408e-07, 6.042505820695709134e-07, 6.060476022611753967e-07, 6.078433589005570390e-07, 6.096378492505175422e-07, 6.114310705766018301e-07, 6.132230201465942760e-07, 6.150136952308585743e-07, 6.168030931022576960e-07, 6.185912110361601355e-07, 6.203780463103608191e-07, 6.221635962054930802e-07, 6.239478580041366285e-07, 6.257308289919624200e-07, 6.275125064568366027e-07, 6.292928876891601765e-07, 6.310719699821865248e-07, 6.328497506312203330e-07, 6.346262269343502721e-07, 6.364013961923690597e-07, 6.381752557083841430e-07, 6.399478027880461854e-07, 6.417190347398923269e-07, 6.434889488744481173e-07, 6.452575425053748225e-07, 6.470248129485800396e-07, 6.487907575225382991e-07, 6.505553735486324192e-07, 6.523186583503335777e-07, 6.540806092539458543e-07, 6.558412235885194094e-07, 6.576004986854554491e-07, 6.593584318787547238e-07, 6.611150205053403534e-07, 6.628702619042510283e-07, 6.646241534173856577e-07, 6.663766923894090308e-07, 6.681278761673637701e-07, 6.698777021009909333e-07, 6.716261675426615096e-07, 6.733732698472853634e-07, 6.751190063726546006e-07, 6.768633744789511248e-07, 6.786063715290005349e-07, 6.803479948885893398e-07, 6.820882419256742525e-07, 6.838271100110993094e-07, 6.855645965185296963e-07, 6.873006988240464428e-07, 6.890354143064776119e-07, 6.907687403473157150e-07, 6.925006743306441254e-07, 6.942312136434608566e-07, 6.959603556752070831e-07, 6.976880978180814949e-07, 6.994144374669723234e-07, 7.011393720194540592e-07, 7.028628988757259361e-07, 7.045850154389113576e-07, 7.063057191146062162e-07, 7.080250073111883783e-07, 7.097428774397444158e-07, 7.114593269140771234e-07, 7.131743531506222979e-07, 7.148879535687811984e-07, 7.166001255904376315e-07, 7.183108666402845888e-07, 7.200201741457497076e-07, 7.217280455369117326e-07, 7.234344782468318113e-07, 7.251394697110779914e-07, 7.268430173680379872e-07, 7.285451186588646520e-07, 7.302457710274522613e-07, 7.319449719203813497e-07, 7.336427187872299956e-07, 7.353390090801091177e-07, 7.370338402539742888e-07, 7.387272097665562793e-07, 7.404191150783669865e-07, 7.421095536526163195e-07, 7.437985229555360830e-07, 7.454860204559144274e-07, 7.471720436254069212e-07, 7.488565899384644478e-07, 7.505396568722614188e-07, 7.522212419070145766e-07, 7.539013425255855240e-07, 7.555799562134133849e-07, 7.572570804592227123e-07, 7.589327127542416770e-07, 7.606068505925218222e-07, 7.622794914711770328e-07, 7.639506328899106794e-07, 7.656202723513418319e-07, 7.672884073609246850e-07, 7.689550354268761375e-07, 7.706201540604896178e-07, 7.722837607757474600e-07, 7.739458530892618243e-07, 7.756064285209463931e-07, 7.772654845932840059e-07, 7.789230188316074502e-07, 7.805790287644209109e-07, 7.822335119226442050e-07, 7.838864658402994075e-07, 7.855378880544348306e-07, 7.871877761047477760e-07, 7.888361275338219160e-07, 7.904829398874367783e-07, 7.921282107137263247e-07, 7.937719375642500238e-07, 7.954141179931619122e-07, 7.970547495575152085e-07, 7.986938298175769861e-07, 8.003313563360628788e-07, 8.019673266788342948e-07, 8.036017384148155138e-07, 8.052345891156201446e-07, 8.068658763557870248e-07, 8.084955977130859987e-07, 8.101237507676830613e-07, 8.117503331032100545e-07, 8.133753423059358455e-07, 8.149987759651359509e-07, 8.166206316730379030e-07, 8.182409070248142617e-07, 8.198595996185080756e-07, 8.214767070553518962e-07, 8.230922269392994740e-07, 8.247061568772726686e-07, 8.263184944794610873e-07, 8.279292373585619782e-07, 8.295383831304778678e-07, 8.311459294142303758e-07, 8.327518738316007552e-07, 8.343562140074193657e-07, 8.359589475695081817e-07, 8.375600721485988414e-07, 8.391595853786456261e-07, 8.407574848963661557e-07, 8.423537683415534155e-07, 8.439484333570073574e-07, 8.455414775885289711e-07, 8.471328986848559098e-07, 8.487226942979583157e-07, 8.503108620826047165e-07, 8.518973996966560512e-07, 8.534823048009885902e-07, 8.550655750595122522e-07, 8.566472081390916190e-07, 8.582272017098400670e-07, 8.598055534446890511e-07, 8.613822610196863665e-07, 8.629573221139206568e-07, 8.645307344094461334e-07, 8.661024955915956609e-07, 8.676726033485314055e-07, 8.692410553715412968e-07, 8.708078493549777236e-07, 8.723729829962529814e-07, 8.739364539957740505e-07, 8.754982600572339757e-07, 8.770583988871796675e-07, 8.786168681953066695e-07, 8.801736656943911844e-07, 8.817287891002171226e-07, 8.832822361318667413e-07, 8.848340045113087737e-07, 8.863840919636607985e-07, 8.879324962171459345e-07, 8.894792150030734650e-07, 8.910242460557972275e-07, 8.925675871129804173e-07, 8.941092359152571976e-07, 8.956491902061571020e-07, 8.971874477327498383e-07, 8.987240062449432042e-07, 9.002588634957599609e-07, 9.017920172416406475e-07, 9.033234652416403823e-07, 9.048532052584570544e-07, 9.063812350576299252e-07, 9.079075524078422304e-07, 9.094321550811227741e-07, 9.109550408525058451e-07, 9.124762074999555135e-07, 9.139956528050194337e-07, 9.155133745521047377e-07, 9.170293705287778843e-07, 9.185436385260538153e-07, 9.200561763376039797e-07, 9.215669817607645143e-07, 9.230760525957623737e-07, 9.245833866460563666e-07, 9.260889817182197359e-07, 9.275928356222727252e-07, 9.290949461709415307e-07, 9.305953111806131191e-07, 9.320939284705842270e-07, 9.335907958633475522e-07, 9.350859111848602632e-07, 9.365792722638644670e-07, 9.380708769325057546e-07, 9.395607230262672388e-07, 9.410488083836431287e-07, 9.425351308463234884e-07, 9.440196882594867817e-07, 9.455024784710523649e-07, 9.469834993326289521e-07, 9.484627486987775910e-07, 9.499402244273441230e-07, 9.514159243794118550e-07, 9.528898464192826079e-07, 9.543619884144298110e-07, 9.558323482357646831e-07, 9.573009237572305032e-07, 9.587677128560148982e-07, 9.602327134128204700e-07, 9.616959233111939454e-07, 9.631573404381292635e-07, 9.646169626840118834e-07, 9.660747879422833589e-07, 9.675308141097075190e-07, 9.689850390863141398e-07, 9.704374607753271587e-07, 9.718880770834446189e-07, 9.733368859204329402e-07, 9.747838851993969112e-07, 9.762290728367199730e-07, 9.776724467520678197e-07, 9.791140048683138591e-07, 9.805537451118278390e-07, 9.819916654120555077e-07, 9.834277637018193101e-07, 9.848620379172169558e-07, 9.862944859976500064e-07, 9.877251058857548424e-07, 9.891538955276718079e-07, 9.905808528726401168e-07, 9.920059758732849974e-07, 9.934292624855279067e-07, 9.948507106685564607e-07, 9.962703183850573684e-07, 9.976880836008503021e-07, 9.991040042851341720e-07, 1.000518078410444139e-06, 1.001930303952630864e-06, 1.003340678890816670e-06, 1.004749201207662787e-06, 1.006155868888960017e-06, 1.007560679923902542e-06, 1.008963632305033501e-06, 1.010364724028171085e-06, 1.011763953092682763e-06, 1.013161317501078077e-06, 1.014556815259304460e-06, 1.015950444376648563e-06, 1.017342202865766110e-06, 1.018732088742600159e-06, 1.020120100026658718e-06, 1.021506234740687369e-06, 1.022890490910604676e-06, 1.024272866566085585e-06, 1.025653359739934404e-06, 1.027031968468321338e-06, 1.028408690791059681e-06, 1.029783524750896215e-06, 1.031156468394406521e-06, 1.032527519771304226e-06, 1.033896676934692995e-06, 1.035263937941264312e-06, 1.036629300850977726e-06, 1.037992763726993301e-06, 1.039354324636264112e-06, 1.040713981648888907e-06, 1.042071732838372984e-06, 1.043427576281890356e-06, 1.044781510059573085e-06, 1.046133532255422480e-06, 1.047483640956601823e-06, 1.048831834253751468e-06, 1.050178110240875759e-06, 1.051522467015662153e-06, 1.052864902678773942e-06, 1.054205415334747903e-06, 1.055544003091312008e-06, 1.056880664059620053e-06, 1.058215396354517207e-06, 1.059548198093917223e-06, 1.060879067399357676e-06, 1.062208002395955277e-06, 1.063535001212077440e-06, 1.064860061979555517e-06, 1.066183182833915620e-06, 1.067504361913700145e-06, 1.068823597361355462e-06, 1.070140887322534384e-06, 1.071456229946351762e-06, 1.072769623385641342e-06, 1.074081065796324306e-06, 1.075390555337994996e-06, 1.076698090173829219e-06, 1.078003668470299860e-06, 1.079307288397417857e-06, 1.080608948128678210e-06, 1.081908645841059340e-06, 1.083206379714950881e-06, 1.084502147934439557e-06, 1.085795948686895400e-06, 1.087087780163257205e-06, 1.088377640557951426e-06, 1.089665528068842834e-06, 1.090951440897485665e-06, 1.092235377248744146e-06, 1.093517335331052962e-06, 1.094797313356356267e-06, 1.096075309540106835e-06, 1.097351322101208467e-06, 1.098625349262258660e-06, 1.099897389249197517e-06, 1.101167440291533266e-06, 1.102435500622308805e-06, 1.103701568478022925e-06, 1.104965642098886115e-06, 1.106227719728451681e-06, 1.107487799613867100e-06, 1.108745880005811767e-06, 1.110001959158505672e-06, 1.111256035329634441e-06, 1.112508106780624624e-06, 1.113758171776245369e-06, 1.115006228584883932e-06, 1.116252275478463501e-06, 1.117496310732464385e-06, 1.118738332625861959e-06, 1.119978339441354522e-06, 1.121216329465023631e-06, 1.122452300986572124e-06, 1.123686252299258046e-06, 1.124918181699845736e-06, 1.126148087488844053e-06, 1.127375967970143425e-06, 1.128601821451274189e-06, 1.129825646243330577e-06, 1.131047440660989133e-06, 1.132267203022436293e-06, 1.133484931649619110e-06, 1.134700624867882084e-06, 1.135914281006215557e-06, 1.137125898397201716e-06, 1.138335475376992777e-06, 1.139543010285289602e-06, 1.140748501465610421e-06, 1.141951947264657245e-06, 1.143153346033145541e-06, 1.144352696125141639e-06, 1.145549995898320441e-06, 1.146745243714138001e-06, 1.147938437937521943e-06, 1.149129576936855991e-06, 1.150318659084466389e-06, 1.151505682756053323e-06, 1.152690646330942914e-06, 1.153873548192301521e-06, 1.155054386726505332e-06, 1.156233160323958603e-06, 1.157409867378454989e-06, 1.158584506287413237e-06, 1.159757075452046166e-06, 1.160927573277078603e-06, 1.162095998170697413e-06, 1.163262348545064374e-06, 1.164426622815739984e-06, 1.165588819401926981e-06, 1.166748936726689941e-06, 1.167906973216395383e-06, 1.169062927301221054e-06, 1.170216797415099806e-06, 1.171368581995440082e-06, 1.172518279483300401e-06, 1.173665888323611068e-06, 1.174811406964564527e-06, 1.175954833858398012e-06, 1.177096167460784115e-06, 1.178235406231041900e-06, 1.179372548632379800e-06, 1.180507593131343130e-06, 1.181640538198294150e-06, 1.182771382307370978e-06, 1.183900123936227769e-06, 1.185026761566226140e-06, 1.186151293682406584e-06, 1.187273718773433835e-06, 1.188394035331795076e-06, 1.189512241853510041e-06, 1.190628336838316515e-06, 1.191742318789642171e-06, 1.192854186214592709e-06, 1.193963937623910566e-06, 1.195071571532172273e-06, 1.196177086457499196e-06, 1.197280480921743244e-06, 1.198381753450448119e-06, 1.199480902572862657e-06, 1.200577926821868831e-06, 1.201672824734210872e-06, 1.202765594850165137e-06, 1.203856235713767966e-06, 1.204944745872754898e-06, 1.206031123878519601e-06, 1.207115368286310587e-06, 1.208197477654942801e-06, 1.209277450546977191e-06, 1.210355285528694238e-06, 1.211430981170084428e-06, 1.212504536044806747e-06, 1.213575948730391333e-06, 1.214645217807922473e-06, 1.215712341862276622e-06, 1.216777319482036216e-06, 1.217840149259511482e-06, 1.218900829790688559e-06, 1.219959359675435961e-06, 1.221015737517195623e-06, 1.222069961923190210e-06, 1.223122031504382251e-06, 1.224171944875413150e-06, 1.225219700654810499e-06, 1.226265297464740106e-06, 1.227308733930957507e-06, 1.228350008683260067e-06, 1.229389120354988500e-06, 1.230426067583219362e-06, 1.231460849008941438e-06, 1.232493463276731126e-06, 1.233523909034965668e-06, 1.234552184935769583e-06, 1.235578289635028215e-06, 1.236602221792323995e-06, 1.237623980071198597e-06, 1.238643563138603641e-06, 1.239660969665591653e-06, 1.240676198326786041e-06, 1.241689247800569767e-06, 1.242700116769228922e-06, 1.243708803918728896e-06, 1.244715307938650216e-06, 1.245719627522627730e-06, 1.246721761367889403e-06, 1.247721708175419366e-06, 1.248719466650175181e-06, 1.249715035500543412e-06, 1.250708413439040756e-06, 1.251699599181752882e-06, 1.252688591448548309e-06, 1.253675388963229178e-06, 1.254659990453277985e-06, 1.255642394649815660e-06, 1.256622600288034818e-06, 1.257600606106726905e-06, 1.258576410848474688e-06, 1.259550013259835423e-06, 1.260521412090874566e-06, 1.261490606095593733e-06, 1.262457594031884118e-06, 1.263422374661288048e-06, 1.264384946749141077e-06, 1.265345309064780989e-06, 1.266303460380999345e-06, 1.267259399474720803e-06, 1.268213125126496806e-06, 1.269164636120671595e-06, 1.270113931245590799e-06, 1.271061009293113536e-06, 1.272005869059059441e-06, 1.272948509343147888e-06, 1.273888928948763784e-06, 1.274827126683162980e-06, 1.275763101357407891e-06, 1.276696851786328745e-06, 1.277628376788712901e-06, 1.278557675187025740e-06, 1.279484745807601473e-06, 1.280409587480592941e-06, 1.281332199039969720e-06, 1.282252579323488257e-06, 1.283170727172866360e-06, 1.284086641433503889e-06, 1.285000320954671222e-06, 1.285911764589483631e-06, 1.286820971194863800e-06, 1.287727939631534205e-06, 1.288632668764183764e-06, 1.289535157461204199e-06, 1.290435404594849703e-06, 1.291333409041229317e-06, 1.292229169680238317e-06, 1.293122685395744355e-06, 1.294013955075309625e-06, 1.294902977610404533e-06, 1.295789751896325323e-06, 1.296674276832217153e-06, 1.297556551321028150e-06, 1.298436574269677753e-06, 1.299314344588803877e-06, 1.300189861192934858e-06, 1.301063123000451764e-06, 1.301934128933593684e-06, 1.302802877918391873e-06, 1.303669368884866266e-06, 1.304533600766767766e-06, 1.305395572501740662e-06, 1.306255283031284090e-06, 1.307112731300713918e-06, 1.307967916259339349e-06, 1.308820836860227449e-06, 1.309671492060198274e-06, 1.310519880820172579e-06, 1.311366002104776042e-06, 1.312209854882498080e-06, 1.313051438125804718e-06, 1.313890750810917304e-06, 1.314727791917972593e-06, 1.315562560430958589e-06, 1.316395055337700565e-06, 1.317225275630016498e-06, 1.318053220303517588e-06, 1.318878888357555746e-06, 1.319702278795610897e-06, 1.320523390624876994e-06, 1.321342222856412155e-06, 1.322158774505284351e-06, 1.322973044590353719e-06, 1.323785032134234448e-06, 1.324594736163672341e-06, 1.325402155709123627e-06, 1.326207289804927549e-06, 1.327010137489481272e-06, 1.327810697804764908e-06, 1.328608969796932751e-06, 1.329404952515871543e-06, 1.330198645015337485e-06, 1.330990046353112091e-06, 1.331779155590777936e-06, 1.332565971793689853e-06, 1.333350494031326458e-06, 1.334132721376907076e-06, 1.334912652907537006e-06, 1.335690287704376294e-06, 1.336465624852203088e-06, 1.337238663439958914e-06, 1.338009402560339773e-06, 1.338777841309966603e-06, 1.339543978789355847e-06, 1.340307814102930253e-06, 1.341069346358967415e-06, 1.341828574669771088e-06, 1.342585498151414532e-06, 1.343340115923880280e-06, 1.344092427111220008e-06, 1.344842430841139918e-06, 1.345590126245377452e-06, 1.346335512459643060e-06, 1.347078588623450371e-06, 1.347819353880244517e-06, 1.348557807377389639e-06, 1.349293948266119761e-06, 1.350027775701679395e-06, 1.350759288843130631e-06, 1.351488486853463675e-06, 1.352215368899593883e-06, 1.352939934152342703e-06, 1.353662181786412053e-06, 1.354382110980520059e-06, 1.355099720917204539e-06, 1.355815010782935877e-06, 1.356527979768121888e-06, 1.357238627067066313e-06, 1.357946951877968613e-06, 1.358652953403049959e-06, 1.359356630848339994e-06, 1.360057983423839252e-06, 1.360757010343439961e-06, 1.361453710824949544e-06, 1.362148084090184646e-06, 1.362840129364778853e-06, 1.363529845878338545e-06, 1.364217232864373234e-06, 1.364902289560343626e-06, 1.365585015207572687e-06, 1.366265409051431351e-06, 1.366943470341107709e-06, 1.367619198329745707e-06, 1.368292592274427569e-06, 1.368963651436115354e-06, 1.369632375079819305e-06, 1.370298762474367876e-06, 1.370962812892550458e-06, 1.371624525611092819e-06, 1.372283899910645875e-06, 1.372940935075767270e-06, 1.373595630395040174e-06, 1.374247985160908106e-06, 1.374897998669670283e-06, 1.375545670221734030e-06, 1.376190999121325096e-06, 1.376833984676594169e-06, 1.377474626199733345e-06, 1.378112923006766058e-06, 1.378748874417689178e-06, 1.379382479756431498e-06, 1.380013738350839129e-06, 1.380642649532784340e-06, 1.381269212638009072e-06, 1.381893427006103970e-06, 1.382515291980791506e-06, 1.383134806909606859e-06, 1.383751971144020313e-06, 1.384366784039541862e-06, 1.384979244955530842e-06, 1.385589353255317691e-06, 1.386197108306170067e-06, 1.386802509479304075e-06, 1.387405556149845508e-06, 1.388006247696986557e-06, 1.388604583503651225e-06, 1.389200562956919695e-06, 1.389794185447695446e-06, 1.390385450370823411e-06, 1.390974357125193743e-06, 1.391560905113571768e-06, 1.392145093742582531e-06, 1.392726922422974223e-06, 1.393306390569338021e-06, 1.393883497600193429e-06, 1.394458242938135877e-06, 1.395030626009492182e-06, 1.395600646244761225e-06, 1.396168303078252265e-06, 1.396733595948266624e-06, 1.397296524297052379e-06, 1.397857087570805623e-06, 1.398415285219644848e-06, 1.398971116697717461e-06, 1.399524581463047100e-06, 1.400075678977598437e-06, 1.400624408707409949e-06, 1.401170770122283268e-06, 1.401714762696080915e-06, 1.402256385906660652e-06, 1.402795639235747584e-06, 1.403332522169044056e-06, 1.403867034196210601e-06, 1.404399174810827395e-06, 1.404928943510513479e-06, 1.405456339796770060e-06, 1.405981363175030692e-06, 1.406504013154802948e-06, 1.407024289249381273e-06, 1.407542190976094953e-06, 1.408057717856289694e-06, 1.408570869415168800e-06, 1.409081645181938442e-06, 1.409590044689739470e-06, 1.410096067475671979e-06, 1.410599713080774342e-06, 1.411100981050109610e-06, 1.411599870932617916e-06, 1.412096382281224895e-06, 1.412590514652801659e-06, 1.413082267608165014e-06, 1.413571640712154747e-06, 1.414058633533489000e-06, 1.414543245644869507e-06, 1.415025476622949626e-06, 1.415505326048347251e-06, 1.415982793505595473e-06, 1.416457878583281708e-06, 1.416930580873861349e-06, 1.417400899973763428e-06, 1.417868835483387872e-06, 1.418334387007055097e-06, 1.418797554153125869e-06, 1.419258336533831891e-06, 1.419716733765392276e-06, 1.420172745467988134e-06, 1.420626371265752406e-06, 1.421077610786738524e-06, 1.421526463663050223e-06, 1.421972929530681657e-06, 1.422417008029521216e-06, 1.422858698803547400e-06, 1.423298001500622142e-06, 1.423734915772531681e-06, 1.424169441275114247e-06, 1.424601577668085367e-06, 1.425031324615138230e-06, 1.425458681783925697e-06, 1.425883648846021754e-06, 1.426306225477051956e-06, 1.426726411356530801e-06, 1.427144206167859395e-06, 1.427559609598535944e-06, 1.427972621339930230e-06, 1.428383241087357513e-06, 1.428791468540162813e-06, 1.429197303401568867e-06, 1.429600745378794926e-06, 1.430001794182994496e-06, 1.430400449529292186e-06, 1.430796711136733307e-06, 1.431190578728412414e-06, 1.431582052031223213e-06, 1.431971130776161595e-06, 1.432357814698107516e-06, 1.432742103535871379e-06, 1.433123997032304782e-06, 1.433503494934149955e-06, 1.433880596992050140e-06, 1.434255302960725347e-06, 1.434627612598763986e-06, 1.434997525668712018e-06, 1.435365041937149397e-06, 1.435730161174458407e-06, 1.436092883155118645e-06, 1.436453207657488058e-06, 1.436811134463863721e-06, 1.437166663360586229e-06, 1.437519794137811431e-06, 1.437870526589727472e-06, 1.438218860514498682e-06, 1.438564795714181721e-06, 1.438908331994783385e-06, 1.439249469166340231e-06, 1.439588207042719309e-06, 1.439924545441798795e-06, 1.440258484185438343e-06, 1.440590023099395017e-06, 1.440919162013387242e-06, 1.441245900761085065e-06, 1.441570239180085799e-06, 1.441892177111988991e-06, 1.442211714402289052e-06, 1.442528850900411903e-06, 1.442843586459833970e-06, 1.443155920937838251e-06, 1.443465854195718016e-06, 1.443773386098747595e-06, 1.444078516516092795e-06, 1.444381245320879728e-06, 1.444681572390179985e-06, 1.444979497604991365e-06, 1.445275020850304582e-06, 1.445568142014999289e-06, 1.445858860991921584e-06, 1.446147177677850549e-06, 1.446433091973512441e-06, 1.446716603783551467e-06, 1.446997713016606864e-06, 1.447276419585211682e-06, 1.447552723405845718e-06, 1.447826624398937640e-06, 1.448098122488846345e-06, 1.448367217603855037e-06, 1.448633909676235809e-06, 1.448898198642132539e-06, 1.449160084441675458e-06, 1.449419567018900040e-06, 1.449676646321773686e-06, 1.449931322302245488e-06, 1.450183594916155594e-06, 1.450433464123278622e-06, 1.450680929887336150e-06, 1.450925992175983803e-06, 1.451168650960790071e-06, 1.451408906217291162e-06, 1.451646757924928950e-06, 1.451882206067068343e-06, 1.452115250631026506e-06, 1.452345891608029236e-06, 1.452574128993227481e-06, 1.452799962785748373e-06, 1.453023392988599727e-06, 1.453244419608719802e-06, 1.453463042656981958e-06, 1.453679262148175392e-06, 1.453893078101052354e-06, 1.454104490538255516e-06, 1.454313499486320093e-06, 1.454520104975783104e-06, 1.454724307041048274e-06, 1.454926105720436222e-06, 1.455125501056236548e-06, 1.455322493094619961e-06, 1.455517081885682318e-06, 1.455709267483447805e-06, 1.455899049945858768e-06, 1.456086429334749460e-06, 1.456271405715932223e-06, 1.456453979159049259e-06, 1.456634149737743307e-06, 1.456811917529516611e-06, 1.456987282615789154e-06, 1.457160245081953927e-06, 1.457330805017231875e-06, 1.457498962514787941e-06, 1.457664717671732546e-06, 1.457828070589044511e-06, 1.457989021371621879e-06, 1.458147570128299912e-06, 1.458303716971763851e-06, 1.458457462018664956e-06, 1.458608805389529663e-06, 1.458757747208785628e-06, 1.458904287604808955e-06, 1.459048426709811744e-06, 1.459190164659947131e-06, 1.459329501595288530e-06, 1.459466437659783262e-06, 1.459600973001274576e-06, 1.459733107771551621e-06, 1.459862842126229386e-06, 1.459990176224870878e-06, 1.460115110230936728e-06, 1.460237644311768457e-06, 1.460357778638607542e-06, 1.460475513386593713e-06, 1.460590848734740820e-06, 1.460703784865994004e-06, 1.460814321967159180e-06, 1.460922460228934171e-06, 1.461028199845939407e-06, 1.461131541016638308e-06, 1.461232483943399115e-06, 1.461331028832508232e-06, 1.461427175894100345e-06, 1.461520925342210728e-06, 1.461612277394753853e-06, 1.461701232273522968e-06, 1.461787790204217201e-06, 1.461871951416402598e-06, 1.461953716143523557e-06, 1.462033084622901346e-06, 1.462110057095742148e-06, 1.462184633807123937e-06, 1.462256815006016375e-06, 1.462326600945250117e-06, 1.462393991881536920e-06, 1.462458988075460116e-06, 1.462521589791472923e-06, 1.462581797297902035e-06, 1.462639610866954621e-06, 1.462695030774692058e-06, 1.462748057301049841e-06, 1.462798690729836524e-06, 1.462846931348717202e-06, 1.462892779449235955e-06, 1.462936235326790231e-06, 1.462977299280635923e-06, 1.463015971613911511e-06, 1.463052252633593170e-06, 1.463086142650517004e-06, 1.463117641979413563e-06, 1.463146750938833940e-06, 1.463173469851196779e-06, 1.463197799042778535e-06, 1.463219738843703100e-06, 1.463239289587953660e-06, 1.463256451613368670e-06, 1.463271225261632539e-06, 1.463283610878286217e-06, 1.463293608812702842e-06, 1.463301219418113577e-06, 1.463306443051605489e-06, 1.463309280074100375e-06, 1.463309730850346506e-06, 1.463307795748969442e-06, 1.463303475142418677e-06, 1.463296769406981186e-06, 1.463287678922788414e-06, 1.463276204073803998e-06, 1.463262345247838371e-06, 1.463246102836532040e-06, 1.463227477235340971e-06, 1.463206468843595883e-06, 1.463183078064428766e-06, 1.463157305304799140e-06, 1.463129150975514386e-06, 1.463098615491197977e-06, 1.463065699270297319e-06, 1.463030402735101747e-06, 1.462992726311705254e-06, 1.462952670430030638e-06, 1.462910235523830341e-06, 1.462865422030673537e-06, 1.462818230391939354e-06, 1.462768661052835932e-06, 1.462716714462375224e-06, 1.462662391073398410e-06, 1.462605691342556408e-06, 1.462546615730300352e-06, 1.462485164700912295e-06, 1.462421338722464548e-06, 1.462355138266851025e-06, 1.462286563809766488e-06, 1.462215615830710360e-06, 1.462142294812990110e-06, 1.462066601243718716e-06, 1.461988535613803865e-06, 1.461908098417951760e-06, 1.461825290154673479e-06, 1.461740111326272688e-06, 1.461652562438858773e-06, 1.461562644002314017e-06, 1.461470356530336584e-06, 1.461375700540409184e-06, 1.461278676553799916e-06, 1.461179285095559940e-06, 1.461077526694547618e-06, 1.460973401883389548e-06, 1.460866911198493273e-06, 1.460758055180072479e-06, 1.460646834372106758e-06, 1.460533249322346908e-06, 1.460417300582338642e-06, 1.460298988707396974e-06, 1.460178314256614046e-06, 1.460055277792851299e-06, 1.459929879882743918e-06, 1.459802121096712263e-06, 1.459672002008925878e-06, 1.459539523197332494e-06, 1.459404685243645963e-06, 1.459267488733338636e-06, 1.459127934255653430e-06, 1.458986022403588369e-06, 1.458841753773913316e-06, 1.458695128967151339e-06, 1.458546148587573200e-06, 1.458394813243211972e-06, 1.458241123545859012e-06, 1.458085080111050832e-06, 1.457926683558079268e-06, 1.457765934509987239e-06, 1.457602833593558585e-06, 1.457437381439325690e-06, 1.457269578681570332e-06, 1.457099425958308006e-06, 1.456926923911310379e-06, 1.456752073186058695e-06, 1.456574874431807521e-06, 1.456395328301529897e-06, 1.456213435451930254e-06, 1.456029196543459665e-06, 1.455842612240282592e-06, 1.455653683210303995e-06, 1.455462410125158533e-06, 1.455268793660196375e-06, 1.455072834494508187e-06, 1.454874533310902897e-06, 1.454673890795900286e-06, 1.454470907639733738e-06, 1.454265584536386453e-06, 1.454057922183526435e-06, 1.453847921282552868e-06, 1.453635582538567106e-06, 1.453420906660389401e-06, 1.453203894360548316e-06, 1.452984546355275004e-06, 1.452762863364506603e-06, 1.452538846111895545e-06, 1.452312495324778224e-06, 1.452083811734194471e-06, 1.451852796074912334e-06, 1.451619449085357771e-06, 1.451383771507668017e-06, 1.451145764087675911e-06, 1.450905427574895285e-06, 1.450662762722553788e-06, 1.450417770287533802e-06, 1.450170451030433010e-06, 1.449920805715514841e-06, 1.449668835110738539e-06, 1.449414539987716181e-06, 1.449157921121790172e-06, 1.448898979291928647e-06, 1.448637715280793649e-06, 1.448374129874737107e-06, 1.448108223863749382e-06, 1.447839998041523215e-06, 1.447569453205405237e-06, 1.447296590156395542e-06, 1.447021409699174795e-06, 1.446743912642088984e-06, 1.446464099797110033e-06, 1.446181971979929399e-06, 1.445897530009838219e-06, 1.445610774709806292e-06, 1.445321706906451166e-06, 1.445030327430052112e-06, 1.444736637114517936e-06, 1.444440636797429546e-06, 1.444142327319973032e-06, 1.443841709527021619e-06, 1.443538784267077009e-06, 1.443233552392239101e-06, 1.442926014758307633e-06, 1.442616172224692821e-06, 1.442304025654411971e-06, 1.441989575914139242e-06, 1.441672823874184047e-06, 1.441353770408468182e-06, 1.441032416394551662e-06, 1.440708762713596933e-06, 1.440382810250405717e-06, 1.440054559893388944e-06, 1.439724012534579247e-06, 1.439391169069634134e-06, 1.439056030397816298e-06, 1.438718597421984086e-06, 1.438378871048622418e-06, 1.438036852187826056e-06, 1.437692541753277793e-06, 1.437345940662285724e-06, 1.436997049835748303e-06, 1.436645870198145879e-06, 1.436292402677585578e-06, 1.435936648205745622e-06, 1.435578607717910051e-06, 1.435218282152961099e-06, 1.434855672453333670e-06, 1.434490779565082039e-06, 1.434123604437842372e-06, 1.433754148024827855e-06, 1.433382411282818106e-06, 1.433008395172206397e-06, 1.432632100656909446e-06, 1.432253528704457837e-06, 1.431872680285939480e-06, 1.431489556376016765e-06, 1.431104157952933124e-06, 1.430716485998451836e-06, 1.430326541497939458e-06, 1.429934325440311614e-06, 1.429539838818046549e-06, 1.429143082627170307e-06, 1.428744057867278114e-06, 1.428342765541490973e-06, 1.427939206656485519e-06, 1.427533382222545266e-06, 1.427125293253401784e-06, 1.426714940766396067e-06, 1.426302325782401868e-06, 1.425887449325781659e-06, 1.425470312424538034e-06, 1.425050916110089249e-06, 1.424629261417469332e-06, 1.424205349385216697e-06, 1.423779181055374992e-06, 1.423350757473526136e-06, 1.422920079688833511e-06, 1.422487148753870234e-06, 1.422051965724819896e-06, 1.421614531661357351e-06, 1.421174847626620330e-06, 1.420732914687362339e-06, 1.420288733913740475e-06, 1.419842306379479324e-06, 1.419393633161790708e-06, 1.418942715341417938e-06, 1.418489554002523591e-06, 1.418034150232890245e-06, 1.417576505123678662e-06, 1.417116619769616244e-06, 1.416654495268904926e-06, 1.416190132723184746e-06, 1.415723533237670647e-06, 1.415254697921027114e-06, 1.414783627885350383e-06, 1.414310324246276233e-06, 1.413834788122910310e-06, 1.413357020637769475e-06, 1.412877022916960526e-06, 1.412394796089935619e-06, 1.411910341289700211e-06, 1.411423659652702950e-06, 1.410934752318801365e-06, 1.410443620431397187e-06, 1.409950265137329403e-06, 1.409454687586832757e-06, 1.408956888933649344e-06, 1.408456870334964237e-06, 1.407954632951408660e-06, 1.407450177947052371e-06, 1.406943506489432243e-06, 1.406434619749466294e-06, 1.405923518901573328e-06, 1.405410205123584634e-06, 1.404894679596764101e-06, 1.404376943505827491e-06, 1.403856998038863448e-06, 1.403334844387440443e-06, 1.402810483746531593e-06, 1.402283917314536899e-06, 1.401755146293262918e-06, 1.401224171887962571e-06, 1.400690995307245784e-06, 1.400155617763183033e-06, 1.399618040471235682e-06, 1.399078264650275248e-06, 1.398536291522592297e-06, 1.397992122313824445e-06, 1.397445758253056732e-06, 1.396897200572761696e-06, 1.396346450508802758e-06, 1.395793509300431685e-06, 1.395238378190306582e-06, 1.394681058424413976e-06, 1.394121551252185909e-06, 1.393559857926406767e-06, 1.392995979703245258e-06, 1.392429917842248480e-06, 1.391861673606353781e-06, 1.391291248261807654e-06, 1.390718643078276911e-06, 1.390143859328784522e-06, 1.389566898289714271e-06, 1.388987761240825367e-06, 1.388406449465173037e-06, 1.387822964249239816e-06, 1.387237306882827337e-06, 1.386649478659086400e-06, 1.386059480874518668e-06, 1.385467314828991068e-06, 1.384872981825654471e-06, 1.384276483171042798e-06, 1.383677820175029399e-06, 1.383076994150805239e-06, 1.382474006414896263e-06, 1.381868858287180762e-06, 1.381261551090768881e-06, 1.380652086152253763e-06, 1.380040464801387563e-06, 1.379426688371337247e-06, 1.378810758198581680e-06, 1.378192675622839417e-06, 1.377572441987180088e-06, 1.376950058638065476e-06, 1.376325526925107269e-06, 1.375698848201316723e-06, 1.375070023823000897e-06, 1.374439055149676893e-06, 1.373805943544307969e-06, 1.373170690372993097e-06, 1.372533297005207312e-06, 1.371893764813707898e-06, 1.371252095174471717e-06, 1.370608289466788796e-06, 1.369962349073317389e-06, 1.369314275379825634e-06, 1.368664069775463234e-06, 1.368011733652636099e-06, 1.367357268406923759e-06, 1.366700675437323100e-06, 1.366041956145998698e-06, 1.365381111938344867e-06, 1.364718144223061678e-06, 1.364053054412119171e-06, 1.363385843920628400e-06, 1.362716514167122006e-06, 1.362045066573194653e-06, 1.361371502563792504e-06, 1.360695823567083202e-06, 1.360018031014392548e-06, 1.359338126340403139e-06, 1.358656110982970130e-06, 1.357971986383110018e-06, 1.357285753985141033e-06, 1.356597415236587000e-06, 1.355906971588173955e-06, 1.355214424493886043e-06, 1.354519775410818139e-06, 1.353823025799374265e-06, 1.353124177123120203e-06, 1.352423230848840463e-06, 1.351720188446504184e-06, 1.351015051389312996e-06, 1.350307821153580106e-06, 1.349598499218897583e-06, 1.348887087068005494e-06, 1.348173586186841670e-06, 1.347457998064519466e-06, 1.346740324193362281e-06, 1.346020566068784337e-06, 1.345298725189456273e-06, 1.344574803057197999e-06, 1.343848801176994361e-06, 1.343120721057016535e-06, 1.342390564208522915e-06, 1.341658332146009259e-06, 1.340924026387101110e-06, 1.340187648452573492e-06, 1.339449199866358744e-06, 1.338708682155562827e-06, 1.337966096850345252e-06, 1.337221445484091459e-06, 1.336474729593304815e-06, 1.335725950717617837e-06, 1.334975110399793255e-06, 1.334222210185754076e-06, 1.333467251624465851e-06, 1.332710236268103752e-06, 1.331951165671928688e-06, 1.331190041394317806e-06, 1.330426864996797096e-06, 1.329661638043916457e-06, 1.328894362103383314e-06, 1.328125038746108146e-06, 1.327353669545920946e-06, 1.326580256079871276e-06, 1.325804799928102700e-06, 1.325027302673758760e-06, 1.324247765903168264e-06, 1.323466191205714635e-06, 1.322682580173857507e-06, 1.321896934403151784e-06, 1.321109255492247003e-06, 1.320319545042748003e-06, 1.319527804659548225e-06, 1.318734035950391801e-06, 1.317938240526205377e-06, 1.317140420000985882e-06, 1.316340575991696766e-06, 1.315538710118408395e-06, 1.314734824004346970e-06, 1.313928919275596367e-06, 1.313120997561412814e-06, 1.312311060494092963e-06, 1.311499109708842177e-06, 1.310685146844144049e-06, 1.309869173541275686e-06, 1.309051191444673628e-06, 1.308231202201801710e-06, 1.307409207463062762e-06, 1.306585208881929047e-06, 1.305759208114994146e-06, 1.304931206821670987e-06, 1.304101206664524735e-06, 1.303269209309108460e-06, 1.302435216423864887e-06, 1.301599229680426666e-06, 1.300761250753328171e-06, 1.299921281320041073e-06, 1.299079323061111352e-06, 1.298235377660095551e-06, 1.297389446803386717e-06, 1.296541532180597258e-06, 1.295691635484086508e-06, 1.294839758409323472e-06, 1.293985902654753628e-06, 1.293130069921646463e-06, 1.292272261914449530e-06, 1.291412480340473778e-06, 1.290550726909915150e-06, 1.289687003336032883e-06, 1.288821311334998103e-06, 1.287953652625946338e-06, 1.287084028930976674e-06, 1.286212441975034013e-06, 1.285338893486121051e-06, 1.284463385195122509e-06, 1.283585918835870784e-06, 1.282706496145120326e-06, 1.281825118862590411e-06, 1.280941788730820935e-06, 1.280056507495369137e-06, 1.279169276904691016e-06, 1.278280098710136879e-06, 1.277388974665981841e-06, 1.276495906529440009e-06, 1.275600896060514345e-06, 1.274703945022227484e-06, 1.273805055180451903e-06, 1.272904228303965404e-06, 1.272001466164464661e-06, 1.271096770536426948e-06, 1.270190143197324011e-06, 1.269281585927465158e-06, 1.268371100510047230e-06, 1.267458688731130888e-06, 1.266544352379684023e-06, 1.265628093247444531e-06, 1.264709913129107729e-06, 1.263789813822204796e-06, 1.262867797127112310e-06, 1.261943864847067699e-06, 1.261018018788196565e-06, 1.260090260759354495e-06, 1.259160592572354705e-06, 1.258229016041813241e-06, 1.257295532985183287e-06, 1.256360145222788411e-06, 1.255422854577663954e-06, 1.254483662875752066e-06, 1.253542571945930922e-06, 1.252599583619665537e-06, 1.251654699731400364e-06, 1.250707922118376971e-06, 1.249759252620543407e-06, 1.248808693080761303e-06, 1.247856245344658701e-06, 1.246901911260662874e-06, 1.245945692680028278e-06, 1.244987591456700395e-06, 1.244027609447476030e-06, 1.243065748512054559e-06, 1.242102010512691279e-06, 1.241136397314570952e-06, 1.240168910785647289e-06, 1.239199552796534956e-06, 1.238228325220690626e-06, 1.237255229934461260e-06, 1.236280268816702520e-06, 1.235303443749194447e-06, 1.234324756616469730e-06, 1.233344209305653824e-06, 1.232361803706891645e-06, 1.231377541712794245e-06, 1.230391425218875248e-06, 1.229403456123375511e-06, 1.228413636327162327e-06, 1.227421967733899684e-06, 1.226428452250097172e-06, 1.225433091784748310e-06, 1.224435888249728643e-06, 1.223436843559621048e-06, 1.222435959631568344e-06, 1.221433238385692369e-06, 1.220428681744545518e-06, 1.219422291633534265e-06, 1.218414069980725616e-06, 1.217404018716875905e-06, 1.216392139775432278e-06, 1.215378435092580551e-06, 1.214362906607047003e-06, 1.213345556260373873e-06, 1.212326385996769651e-06, 1.211305397762953853e-06, 1.210282593508563391e-06, 1.209257975185772249e-06, 1.208231544749333417e-06, 1.207203304156781965e-06, 1.206173255368266270e-06, 1.205141400346582536e-06, 1.204107741057211846e-06, 1.203072279468162198e-06, 1.202035017550198045e-06, 1.200995957276718536e-06, 1.199955100623595522e-06, 1.198912449569577164e-06, 1.197868006095903597e-06, 1.196821772186358381e-06, 1.195773749827464806e-06, 1.194723941008323259e-06, 1.193672347720635155e-06, 1.192618971958719662e-06, 1.191563815719530857e-06, 1.190506881002500176e-06, 1.189448169809779726e-06, 1.188387684146068005e-06, 1.187325426018659669e-06, 1.186261397437462045e-06, 1.185195600414853893e-06, 1.184128036965904147e-06, 1.183058709108214794e-06, 1.181987618861961109e-06, 1.180914768249879579e-06, 1.179840159297318308e-06, 1.178763794032046433e-06, 1.177685674484519029e-06, 1.176605802687706650e-06, 1.175524180677123276e-06, 1.174440810490859564e-06, 1.173355694169426776e-06, 1.172268833756000096e-06, 1.171180231296239053e-06, 1.170089888838337077e-06, 1.168997808433016625e-06, 1.167903992133552265e-06, 1.166808441995611010e-06, 1.165711160077462592e-06, 1.164612148440014618e-06, 1.163511409146421659e-06, 1.162408944262508347e-06, 1.161304755856609283e-06, 1.160198845999410434e-06, 1.159091216764229073e-06, 1.157981870226819387e-06, 1.156870808465426474e-06, 1.155758033560808794e-06, 1.154643547596074473e-06, 1.153527352656889466e-06, 1.152409450831528801e-06, 1.151289844210450945e-06, 1.150168534886769391e-06, 1.149045524956038357e-06, 1.147920816516144787e-06, 1.146794411667546587e-06, 1.145666312513111043e-06, 1.144536521158145111e-06, 1.143405039710395835e-06, 1.142271870280079575e-06, 1.141137014979670029e-06, 1.140000475924384016e-06, 1.138862255231541323e-06, 1.137722355021058317e-06, 1.136580777415273245e-06, 1.135437524538796519e-06, 1.134292598518727770e-06, 1.133146001484721703e-06, 1.131997735568549546e-06, 1.130847802904557084e-06, 1.129696205629491655e-06, 1.128542945882291231e-06, 1.127388025804619541e-06, 1.126231447540177423e-06, 1.125073213235234559e-06, 1.123913325038391664e-06, 1.122751785100605685e-06, 1.121588595575209287e-06, 1.120423758617939437e-06, 1.119257276386742164e-06, 1.118089151042065422e-06, 1.116919384746709797e-06, 1.115747979665613786e-06, 1.114574937966359477e-06, 1.113400261818715787e-06, 1.112223953394687796e-06, 1.111046014868753922e-06, 1.109866448417676609e-06, 1.108685256220535146e-06, 1.107502440458770985e-06, 1.106318003315998431e-06, 1.105131946978285429e-06, 1.103944273634004915e-06, 1.102754985473637030e-06, 1.101564084690254895e-06, 1.100371573479077164e-06, 1.099177454037515462e-06, 1.097981728565409643e-06, 1.096784399264838272e-06, 1.095585468340156524e-06, 1.094384937997990681e-06, 1.093182810447290863e-06, 1.091979087899119900e-06, 1.090773772566962500e-06, 1.089566866666492952e-06, 1.088358372415660677e-06, 1.087148292034700599e-06, 1.085936627745944265e-06, 1.084723381774124769e-06, 1.083508556346160762e-06, 1.082292153691199227e-06, 1.081074176040624163e-06, 1.079854625628094061e-06, 1.078633504689334176e-06, 1.077410815462446957e-06, 1.076186560187689709e-06, 1.074960741107538112e-06, 1.073733360466725192e-06, 1.072504420512025958e-06, 1.071273923492574196e-06, 1.070041871659642660e-06, 1.068808267266692201e-06, 1.067573112569376430e-06, 1.066336409825574322e-06, 1.065098161295200909e-06, 1.063858369240435343e-06, 1.062617035925791619e-06, 1.061374163617629632e-06, 1.060129754584686262e-06, 1.058883811097853875e-06, 1.057636335430018755e-06, 1.056387329856384453e-06, 1.055136796654237589e-06, 1.053884738103007352e-06, 1.052631156484317592e-06, 1.051376054081767228e-06, 1.050119433181183091e-06, 1.048861296070687043e-06, 1.047601645040192635e-06, 1.046340482381953135e-06, 1.045077810390334522e-06, 1.043813631361642269e-06, 1.042547947594456344e-06, 1.041280761389401029e-06, 1.040012075049198072e-06, 1.038741890878654404e-06, 1.037470211184740489e-06, 1.036197038276269513e-06, 1.034922374464532867e-06, 1.033646222062506057e-06, 1.032368583385464280e-06, 1.031089460750742510e-06, 1.029808856477583659e-06, 1.028526772887390787e-06, 1.027243212303797403e-06, 1.025958177052155856e-06, 1.024671669460079017e-06, 1.023383691857231057e-06, 1.022094246575094303e-06, 1.020803335947565127e-06, 1.019510962310193309e-06, 1.018217128000777291e-06, 1.016921835359127639e-06, 1.015625086726863335e-06, 1.014326884447941387e-06, 1.013027230868168295e-06, 1.011726128335246433e-06, 1.010423579199038320e-06, 1.009119585811417756e-06, 1.007814150526023755e-06, 1.006507275698809850e-06, 1.005198963687561073e-06, 1.003889216851926561e-06, 1.002578037553695480e-06, 1.001265428156585691e-06, 9.999513910262668298e-07, 9.986359285304464950e-07, 9.973190430386169821e-07, 9.960007369223940986e-07, 9.946810125553439455e-07, 9.933598723127584535e-07, 9.920373185722112480e-07, 9.907133537130424419e-07, 9.893879801164187745e-07, 9.880612001656124973e-07, 9.867330162457523463e-07, 9.854034307438976573e-07, 9.840724460490843174e-07, 9.827400645520890783e-07, 9.814062886457687928e-07, 9.800711207248306572e-07, 9.787345631858853626e-07, 9.773966184274401067e-07, 9.760572888499453928e-07, 9.747165768555786125e-07, 9.733744848485703652e-07, 9.720310152349685596e-07, 9.706861704227057526e-07, 9.693399528215860206e-07, 9.679923648433315458e-07, 9.666434089013600588e-07, 9.652930874111253458e-07, 9.639414027898669498e-07, 9.625883574566868278e-07, 9.612339538325832317e-07, 9.598781943402332328e-07, 9.585210814043154411e-07, 9.571626174512859654e-07, 9.558028049094366466e-07, 9.544416462088772700e-07, 9.530791437816007869e-07, 9.517153000612422279e-07, 9.503501174834215395e-07, 9.489835984855128734e-07, 9.476157455066910672e-07, 9.462465609879281511e-07, 9.448760473720585686e-07, 9.435042071035203028e-07, 9.421310426287272526e-07, 9.407565563957997709e-07, 9.393807508546618611e-07, 9.380036284570448834e-07, 9.366251916562881841e-07, 9.352454429076133225e-07, 9.338643846681713992e-07, 9.324820193965230831e-07, 9.310983495532187239e-07, 9.297133776005487943e-07, 9.283271060023861307e-07, 9.269395372245040994e-07, 9.255506737343617684e-07, 9.241605180011429763e-07, 9.227690724958234601e-07, 9.213763396909233094e-07, 9.199823220607915701e-07, 9.185870220816772884e-07, 9.171904422311825399e-07, 9.157925849888472001e-07, 9.143934528359166450e-07, 9.129930482550884888e-07, 9.115913737311184238e-07, 9.101884317502618143e-07, 9.087842248003471766e-07, 9.073787553710574995e-07, 9.059720259537485562e-07, 9.045640390412105701e-07, 9.031547971283165129e-07, 9.017443027111833298e-07, 9.003325582878235201e-07, 8.989195663579045794e-07, 8.975053294225034663e-07, 8.960898499847023840e-07, 8.946731305490381028e-07, 8.932551736215690880e-07, 8.918359817101633848e-07, 8.904155573243103652e-07, 8.889939029748911824e-07, 8.875710211748232567e-07, 8.861469144382154661e-07, 8.847215852810233265e-07, 8.832950362207518945e-07, 8.818672697765108248e-07, 8.804382884689979587e-07, 8.790080948205661344e-07, 8.775766913549791350e-07, 8.761440805977610896e-07, 8.747102650760172206e-07, 8.732752473181819566e-07, 8.718390298546292199e-07, 8.704016152171097849e-07, 8.689630059388227466e-07, 8.675232045546942999e-07, 8.660822136011584643e-07, 8.646400356161828127e-07, 8.631966731393532800e-07, 8.617521287115968662e-07, 8.603064048755725420e-07, 8.588595041754000919e-07, 8.574114291567295718e-07, 8.559621823667369671e-07, 8.545117663541667566e-07, 8.530601836691008841e-07, 8.516074368633105948e-07, 8.501535284900096309e-07, 8.486984611039131006e-07, 8.472422372612305958e-07, 8.457848595197254843e-07, 8.443263304384629181e-07, 8.428666525781746919e-07, 8.414058285010062987e-07, 8.399438607705815158e-07, 8.384807519520505794e-07, 8.370165046118430634e-07, 8.355511213180323150e-07, 8.340846046400971206e-07, 8.326169571489539995e-07, 8.311481814169729790e-07, 8.296782800180233354e-07, 8.282072555272296472e-07, 8.267351105213360203e-07, 8.252618475784576950e-07, 8.237874692781228685e-07, 8.223119782012934472e-07, 8.208353769304010453e-07, 8.193576680490996517e-07, 8.178788541426475357e-07, 8.163989377976331256e-07, 8.149179216020459485e-07, 8.134358081453288281e-07, 8.119526000181341512e-07, 8.104682998126179996e-07, 8.089829101225021960e-07, 8.074964335425103908e-07, 8.060088726689917967e-07, 8.045202300996594556e-07, 8.030305084333963731e-07, 8.015397102706401784e-07, 8.000478382131124966e-07, 7.985548948638863937e-07, 7.970608828274418576e-07, 7.955658047094097823e-07, 7.940696631168799699e-07, 7.925724606584675173e-07, 7.910741999437319631e-07, 7.895748835838084329e-07, 7.880745141911520476e-07, 7.865730943792703663e-07, 7.850706267633666021e-07, 7.835671139597569695e-07, 7.820625585859262710e-07, 7.805569632608479692e-07, 7.790503306047913815e-07, 7.775426632390475586e-07, 7.760339637866416395e-07, 7.745242348714236673e-07, 7.730134791187793560e-07, 7.715016991553599927e-07, 7.699888976088182689e-07, 7.684750771084579554e-07, 7.669602402846473316e-07, 7.654443897688663017e-07, 7.639275281940423491e-07, 7.624096581943399432e-07, 7.608907824049015586e-07, 7.593709034625567479e-07, 7.578500240049086165e-07, 7.563281466710442714e-07, 7.548052741012024670e-07, 7.532814089368351205e-07, 7.517565538206068885e-07, 7.502307113964524477e-07, 7.487038843093085147e-07, 7.471760752055031637e-07, 7.456472867325634440e-07, 7.441175215389333180e-07, 7.425867822746391116e-07, 7.410550715906821913e-07, 7.395223921391092686e-07, 7.379887465733334245e-07, 7.364541375478656009e-07, 7.349185677183774923e-07, 7.333820397417620032e-07, 7.318445562758659027e-07, 7.303061199798777663e-07, 7.287667335140641247e-07, 7.272263995398278033e-07, 7.256851207197037928e-07, 7.241428997174217181e-07, 7.225997391976397641e-07, 7.210556418263308164e-07, 7.195106102705158582e-07, 7.179646471983247447e-07, 7.164177552789989560e-07, 7.148699371829416777e-07, 7.133211955814520446e-07, 7.117715331471245168e-07, 7.102209525535752877e-07, 7.086694564755016824e-07, 7.071170475887447323e-07, 7.055637285700190772e-07, 7.040095020973107538e-07, 7.024543708496036032e-07, 7.008983375069361284e-07, 6.993414047504144120e-07, 6.977835752622506551e-07, 6.962248517255088569e-07, 6.946652368244928606e-07, 6.931047332444781625e-07, 6.915433436717726858e-07, 6.899810707937805205e-07, 6.884179172987299195e-07, 6.868538858760653692e-07, 6.852889792161798211e-07, 6.837232000104795957e-07, 6.821565509513710420e-07, 6.805890347323352875e-07, 6.790206540476421538e-07, 6.774514115926894982e-07, 6.758813100640671652e-07, 6.743103521589392879e-07, 6.727385405757210666e-07, 6.711658780138004136e-07, 6.695923671732594901e-07, 6.680180107556266605e-07, 6.664428114629070626e-07, 6.648667719983410203e-07, 6.632898950661145696e-07, 6.617121833711547944e-07, 6.601336396194684282e-07, 6.585542665182037928e-07, 6.569740667750310886e-07, 6.553930430988244671e-07, 6.538111981993743578e-07, 6.522285347871247822e-07, 6.506450555739084719e-07, 6.490607632719871812e-07, 6.474756605948044866e-07, 6.458897502566347984e-07, 6.443030349727163444e-07, 6.427155174589012396e-07, 6.411272004324128393e-07, 6.395380866108788513e-07, 6.379481787130707955e-07, 6.363574794586374001e-07, 6.347659915678201050e-07, 6.331737177621377813e-07, 6.315806607637588686e-07, 6.299868232955757021e-07, 6.283922080815268085e-07, 6.267968178464041003e-07, 6.252006553155608609e-07, 6.236037232156714276e-07, 6.220060242737557271e-07, 6.204075612179372642e-07, 6.188083367771648714e-07, 6.172083536809264117e-07, 6.156076146599391107e-07, 6.140061224455173520e-07, 6.124038797696477461e-07, 6.108008893653172490e-07, 6.091971539663108279e-07, 6.075926763069242107e-07, 6.059874591226621591e-07, 6.043815051495937703e-07, 6.027748171244266987e-07, 6.011673977848533802e-07, 5.995592498692589120e-07, 5.979503761167952736e-07, 5.963407792674398784e-07, 5.947304620617130876e-07, 5.931194272410964332e-07, 5.915076775477438854e-07, 5.898952157245494038e-07, 5.882820445151405841e-07, 5.866681666639494916e-07, 5.850535849159167292e-07, 5.834383020169216238e-07, 5.818223207134866124e-07, 5.802056437528461687e-07, 5.785882738830120252e-07, 5.769702138524885700e-07, 5.753514664106896926e-07, 5.737320343076505815e-07, 5.721119202940954863e-07, 5.704911271214360237e-07, 5.688696575418323760e-07, 5.672475143079074171e-07, 5.656247001731645119e-07, 5.640012178917069360e-07, 5.623770702182957923e-07, 5.607522599083490575e-07, 5.591267897180064865e-07, 5.575006624038481851e-07, 5.558738807233051042e-07, 5.542464474343763415e-07, 5.526183652956935170e-07, 5.509896370665890643e-07, 5.493602655068081339e-07, 5.477302533769246981e-07, 5.460996034380643594e-07, 5.444683184519578192e-07, 5.428364011809386550e-07, 5.412038543880212468e-07, 5.395706808365956338e-07, 5.379368832908614068e-07, 5.363024645155325174e-07, 5.346674272759068408e-07, 5.330317743378632105e-07, 5.313955084679206055e-07, 5.297586324328827135e-07, 5.281211490006182605e-07, 5.264830609390582291e-07, 5.248443710169686709e-07, 5.232050820036698085e-07, 5.215651966688143250e-07, 5.199247177827393062e-07, 5.182836481165299797e-07, 5.166419904413741699e-07, 5.149997475292785704e-07, 5.133569221527680472e-07, 5.117135170845981769e-07, 5.100695350985462695e-07, 5.084249789683917527e-07, 5.067798514687046535e-07, 5.051341553744834918e-07, 5.034878934612986403e-07, 5.018410685049165603e-07, 5.001936832820956943e-07, 4.985457405695735206e-07, 4.968972431448518592e-07, 4.952481937859018919e-07, 4.935985952708779717e-07, 4.919484503788258475e-07, 4.902977618890361669e-07, 4.886465325811055682e-07, 4.869947652352986808e-07, 4.853424626323267323e-07, 4.836896275530461108e-07, 4.820362627792570105e-07, 4.803823710926845576e-07, 4.787279552757665505e-07, 4.770730181113671629e-07, 4.754175623824721176e-07, 4.737615908729146469e-07, 4.721051063667215830e-07, 4.704481116481741328e-07, 4.687906095021710961e-07, 4.671326027139295450e-07, 4.654740940690581989e-07, 4.638150863535493242e-07, 4.621555823538453320e-07, 4.604955848565505232e-07, 4.588350966488518509e-07, 4.571741205182350594e-07, 4.555126592525420703e-07, 4.538507156400479037e-07, 4.521882924691572817e-07, 4.505253925288433912e-07, 4.488620186083520051e-07, 4.471981734972611448e-07, 4.455338599854855803e-07, 4.438690808633413637e-07, 4.422038389212506375e-07, 4.405381369501719282e-07, 4.388719777413087134e-07, 4.372053640861714675e-07, 4.355382987766529940e-07, 4.338707846047276237e-07, 4.322028243628821950e-07, 4.305344208438258396e-07, 4.288655768405533511e-07, 4.271962951463422734e-07, 4.255265785548202923e-07, 4.238564298596740155e-07, 4.221858518550725951e-07, 4.205148473353798943e-07, 4.188434190952172749e-07, 4.171715699294624845e-07, 4.154993026333160435e-07, 4.138266200020047831e-07, 4.121535248312155265e-07, 4.104800199168024387e-07, 4.088061080548485955e-07, 4.071317920417346456e-07, 4.054570746738500791e-07, 4.037819587480181726e-07, 4.021064470612056159e-07, 4.004305424105830220e-07, 3.987542475935320212e-07, 3.970775654077039178e-07, 3.954004986507225931e-07, 3.937230501206265516e-07, 3.920452226155649409e-07, 3.903670189338674860e-07, 3.886884418740423177e-07, 3.870094942348429949e-07, 3.853301788148945921e-07, 3.836504984135021396e-07, 3.819704558296109961e-07, 3.802900538626186774e-07, 3.786092953120671181e-07, 3.769281829774247728e-07, 3.752467196584460228e-07, 3.735649081552441795e-07, 3.718827512676169285e-07, 3.702002517957852075e-07, 3.685174125400906562e-07, 3.668342363006974608e-07, 3.651507258783968239e-07, 3.634668840735721544e-07, 3.617827136870059198e-07, 3.600982175195784199e-07, 3.584133983720408876e-07, 3.567282590453842136e-07, 3.550428023409012025e-07, 3.533570310595273701e-07, 3.516709480025633032e-07, 3.499845559713834925e-07, 3.482978577671347882e-07, 3.466108561914643197e-07, 3.449235540458599211e-07, 3.432359541317089471e-07, 3.415480592506724503e-07, 3.398598722044526168e-07, 3.381713957944932352e-07, 3.364826328227956533e-07, 3.347935860908668694e-07, 3.331042584005369717e-07, 3.314146525536567481e-07, 3.297247713517955066e-07, 3.280346175969794237e-07, 3.263441940910170943e-07, 3.246535036355747060e-07, 3.229625490325342278e-07, 3.212713330836972667e-07, 3.195798585908556357e-07, 3.178881283558563108e-07, 3.161961451803042816e-07, 3.145039118660016312e-07, 3.128114312146448286e-07, 3.111187060278991613e-07, 3.094257391073867712e-07, 3.077325332547618813e-07, 3.060390912714071350e-07, 3.043454159588756936e-07, 3.026515101185883169e-07, 3.009573765519032430e-07, 2.992630180601138590e-07, 2.975684374445151402e-07, 2.958736375061020534e-07, 2.941786210460156257e-07, 2.924833908652340949e-07, 2.907879497646480842e-07, 2.890923005451264052e-07, 2.873964460072207620e-07, 2.857003889515975783e-07, 2.840041321787430719e-07, 2.823076784890314404e-07, 2.806110306827199377e-07, 2.789141915600184370e-07, 2.772171639207863517e-07, 2.755199505649774862e-07, 2.738225542923354220e-07, 2.721249779024647214e-07, 2.704272241948235687e-07, 2.687292959687979917e-07, 2.670311960233956062e-07, 2.653329271576898847e-07, 2.636344921705173952e-07, 2.619358938605492698e-07, 2.602371350263572197e-07, 2.585382184661128924e-07, 2.568391469779572828e-07, 2.551399233600718850e-07, 2.534405504099966184e-07, 2.517410309253792403e-07, 2.500413677036645906e-07, 2.483415635418751576e-07, 2.466416212370450762e-07, 2.449415435859228723e-07, 2.432413333850403372e-07, 2.415409934307823022e-07, 2.398405265190814947e-07, 2.381399354457903856e-07, 2.364392230067526844e-07, 2.347383919971209217e-07, 2.330374452121028175e-07, 2.313363854466585467e-07, 2.296352154952687837e-07, 2.279339381523061538e-07, 2.262325562121058271e-07, 2.245310724682882368e-07, 2.228294897144994921e-07, 2.211278107441113690e-07, 2.194260383499117998e-07, 2.177241753249339592e-07, 2.160222244613923912e-07, 2.143201885515078600e-07, 2.126180703872038743e-07, 2.109158727598746530e-07, 2.092135984607576874e-07, 2.075112502810027747e-07, 2.058088310109916645e-07, 2.041063434410863605e-07, 2.024037903613234199e-07, 2.007011745611062962e-07, 1.989984988300325985e-07, 1.972957659568333152e-07, 1.955929787301948069e-07, 1.938901399383825910e-07, 1.921872523693817641e-07, 1.904843188105214224e-07, 1.887813420492945097e-07, 1.870783248723000593e-07, 1.853752700660686533e-07, 1.836721804167550559e-07, 1.819690587098326995e-07, 1.802659077308428582e-07, 1.785627302647114367e-07, 1.768595290958207830e-07, 1.751563070083806355e-07, 1.734530667861247264e-07, 1.717498112123781478e-07, 1.700465430701310165e-07, 1.683432651417315043e-07, 1.666399802093323829e-07, 1.649366910545881572e-07, 1.632334004587218215e-07, 1.615301112025255216e-07, 1.598268260664256438e-07, 1.581235478301812448e-07, 1.564202792733300941e-07, 1.547170231748826830e-07, 1.530137823133938256e-07, 1.513105594669565443e-07, 1.496073574132752585e-07, 1.479041789293585503e-07, 1.462010267919667415e-07, 1.444979037773060356e-07, 1.427948126611004626e-07, 1.410917562186614151e-07, 1.393887372245818695e-07, 1.376857584531852338e-07, 1.359828226782188543e-07, 1.342799326729235252e-07, 1.325770912100320589e-07, 1.308743010618372080e-07, 1.291715649998869712e-07, 1.274688857954324888e-07, 1.257662662191227927e-07, 1.240637090410725961e-07, 1.223612170308631668e-07, 1.206587929576088189e-07, 1.189564395896515051e-07, 1.172541596950104187e-07, 1.155519560410750634e-07, 1.138498313946764041e-07, 1.121477885221568399e-07, 1.104458301890660924e-07, 1.087439591605318756e-07, 1.070421782013323171e-07, 1.053404900752116218e-07, 1.036388975456302120e-07, 1.019374033754598882e-07, 1.002360103267503394e-07, 9.853472116118079670e-08, 9.683353863975042960e-08, 9.513246552285203798e-08, 9.343150457034137630e-08, 9.173065854123167920e-08, 9.002993019406662065e-08, 8.832932228699120003e-08, 8.662883757706749834e-08, 8.492847882102635377e-08, 8.322824877495992841e-08, 8.152815019409052122e-08, 7.982818583314526102e-08, 7.812835844642577489e-08, 7.642867078712446057e-08, 7.472912560807528853e-08, 7.302972566144838039e-08, 7.133047369844145071e-08, 6.963137247010809933e-08, 6.793242472629473211e-08, 6.623363321646775473e-08, 6.453500068940677475e-08, 6.283652989297374539e-08, 6.113822357448599094e-08, 5.944008448078756264e-08, 5.774211535756523973e-08, 5.604431895009891463e-08, 5.434669800295537725e-08, 5.264925525968218542e-08, 5.095199346363369406e-08, 4.925491535690876995e-08, 4.755802368117886574e-08, 4.586132117730416180e-08, 4.416481058540602723e-08, 4.246849464486155390e-08, 4.077237609437575270e-08, 3.907645767167462330e-08, 3.738074211395373079e-08, 3.568523215764793192e-08, 3.398993053812423295e-08, 3.229483999043267778e-08, 3.059996324862298424e-08, 2.890530304581510592e-08, 2.721086211457273399e-08, 2.551664318659652570e-08, 2.382264899279578122e-08, 2.212888226335941904e-08, 2.043534572744952213e-08, 1.874204211364979552e-08, 1.704897414973533549e-08, 1.535614456236582498e-08, 1.366355607783621321e-08, 1.197121142139301287e-08, 1.027911331730564774e-08, 8.587264489239231571e-09, 6.895667659948473213e-09, 5.204325551348805035e-09, 3.513240884512080765e-09, 1.822416379737668358e-09, 1.318547562464429745e-10, -1.558441267371000520e-09, -3.248468973460355218e-09, -4.938225645232464381e-09, -6.627708566692309972e-09, -8.316915022944758022e-09, -1.000584229974663599e-08, -1.169448768381259188e-08, -1.338284846274383598e-08, -1.507092192503274156e-08, -1.675870535999156021e-08, -1.844619605805814107e-08, -2.013339131034822767e-08, -2.182028840896095887e-08, -2.350688464690805225e-08, -2.519317731804256736e-08, -2.687916371736471763e-08, -2.856484114057386946e-08, -3.025020688437433754e-08, -3.193525824640434996e-08, -3.361999252524027013e-08, -3.530440702032558496e-08, -3.698849903227631320e-08, -3.867226586250859545e-08, -4.035570481316870151e-08, -4.203881318781328381e-08, -4.372158829066174512e-08, -4.540402742690204393e-08, -4.708612790291960508e-08, -4.876788702585064886e-08, -5.044930210388771181e-08, -5.213037044620830406e-08, -5.381108936290373872e-08, -5.549145616528455341e-08, -5.717146816550889439e-08, -5.885112267651107470e-08, -6.053041701268268119e-08, -6.220934848912529304e-08, -6.388791442195503634e-08, -6.556611212853259329e-08, -6.724393892701620703e-08, -6.892139213666690465e-08, -7.059846907777701554e-08, -7.227516707167472425e-08, -7.395148344065356814e-08, -7.562741550835108769e-08, -7.730296059892887202e-08, -7.897811603812536799e-08, -8.065287915243675960e-08, -8.232724726941961023e-08, -8.400121771792118941e-08, -8.567478782770840620e-08, -8.734795492939668497e-08, -8.902071635512984157e-08, -9.069306943783335773e-08, -9.236501151151932607e-08, -9.403653991158938354e-08, -9.570765197401688784e-08, -9.737834503639718539e-08, -9.904861643712962890e-08, -1.007184635157952482e-07, -1.023878836130877172e-07, -1.040568740708148226e-07, -1.057254322318301987e-07, -1.073935554403361946e-07, -1.090612410414376860e-07, -1.107284863813729846e-07, -1.123952888078147865e-07, -1.140616456691294148e-07, -1.157275543150514422e-07, -1.173930120966134001e-07, -1.190580163657772534e-07, -1.207225644757367646e-07, -1.223866537808472564e-07, -1.240502816365551754e-07, -1.257134453996994772e-07, -1.273761424280703353e-07, -1.290383700806355903e-07, -1.307001257178430082e-07, -1.323614067008792587e-07, -1.340222103923461125e-07, -1.356825341561871465e-07, -1.373423753573221164e-07, -1.390017313619486330e-07, -1.406605995374695292e-07, -1.423189772524254943e-07, -1.439768618767950031e-07, -1.456342507815524557e-07, -1.472911413389706216e-07, -1.489475309225485092e-07, -1.506034169070181685e-07, -1.522587966682717407e-07, -1.539136675836649606e-07, -1.555680270315730728e-07, -1.572218723916957905e-07, -1.588752010449822532e-07, -1.605280103736397092e-07, -1.621802977610600088e-07, -1.638320605921235568e-07, -1.654832962527550702e-07, -1.671340021302264984e-07, -1.687841756130856607e-07, -1.704338140910876629e-07, -1.720829149554941650e-07, -1.737314755986328707e-07, -1.753794934141998656e-07, -1.770269657971866131e-07, -1.786738901438855401e-07, -1.803202638518210562e-07, -1.819660843200474452e-07, -1.836113489487101806e-07, -1.852560551393467292e-07, -1.869002002948142612e-07, -1.885437818192982799e-07, -1.901867971182353827e-07, -1.918292435986194371e-07, -1.934711186685612031e-07, -1.951124197375831267e-07, -1.967531442165556805e-07, -1.983932895176235923e-07, -2.000328530545088711e-07, -2.016718322421407861e-07, -2.033102244965889247e-07, -2.049480272357321630e-07, -2.065852378785229648e-07, -2.082218538452870464e-07, -2.098578725579492161e-07, -2.114932914395958821e-07, -2.131281079147704289e-07, -2.147623194094068570e-07, -2.163959233508324568e-07, -2.180289171676986961e-07, -2.196612982903521937e-07, -2.212930641500307792e-07, -2.229242121798953120e-07, -2.245547398142277790e-07, -2.261846444887268030e-07, -2.278139236407319481e-07, -2.294425747088615862e-07, -2.310705951329441818e-07, -2.326979823546796655e-07, -2.343247338169133422e-07, -2.359508469639327487e-07, -2.375763192417611779e-07, -2.392011480973598263e-07, -2.408253309796542393e-07, -2.424488653387362207e-07, -2.440717486261556356e-07, -2.456939782952227484e-07, -2.473155518002749038e-07, -2.489364665973446771e-07, -2.505567201440858117e-07, -2.521763098994122771e-07, -2.537952333237247448e-07, -2.554134878792030256e-07, -2.570310710290820689e-07, -2.586479802383106365e-07, -2.602642129734859750e-07, -2.618797667024887977e-07, -2.634946388947808580e-07, -2.651088270213360746e-07, -2.667223285545714988e-07, -2.683351409686425051e-07, -2.699472617390084224e-07, -2.715586883426582682e-07, -2.731694182584026042e-07, -2.747794489661486881e-07, -2.763887779475642298e-07, -2.779974026860030639e-07, -2.796053206661495551e-07, -2.812125293743099246e-07, -2.828190262983452281e-07, -2.844248089276058703e-07, -2.860298747532166836e-07, -2.876342212676553713e-07, -2.892378459650400216e-07, -2.908407463410636216e-07, -2.924429198929964929e-07, -2.940443641196170988e-07, -2.956450765215108361e-07, -2.972450546006305300e-07, -2.988442958605967080e-07, -3.004427978066256546e-07, -3.020405579455368759e-07, -3.036375737856792490e-07, -3.052338428372293892e-07, -3.068293626117562223e-07, -3.084241306225216811e-07, -3.100181443844050019e-07, -3.116114014138363386e-07, -3.132038992290906824e-07, -3.147956353498573583e-07, -3.163866072975347387e-07, -3.179768125951573461e-07, -3.195662487674065469e-07, -3.211549133405333125e-07, -3.227428038426592334e-07, -3.243299178033402977e-07, -3.259162527538663169e-07, -3.275018062271845342e-07, -3.290865757579108479e-07, -3.306705588822576543e-07, -3.322537531383263392e-07, -3.338361560656780968e-07, -3.354177652056275322e-07, -3.369985781011721465e-07, -3.385785922969290734e-07, -3.401578053394179886e-07, -3.417362147767144084e-07, -3.433138181583758393e-07, -3.448906130360942048e-07, -3.464665969629803145e-07, -3.480417674938565670e-07, -3.496161221854740546e-07, -3.511896585960851300e-07, -3.527623742857381202e-07, -3.543342668162075526e-07, -3.559053337509230568e-07, -3.574755726552608500e-07, -3.590449810961933832e-07, -3.606135566422179782e-07, -3.621812968640048612e-07, -3.637481993336841724e-07, -3.653142616251398341e-07, -3.668794813142964822e-07, -3.684438559784074831e-07, -3.700073831967044484e-07, -3.715700605503259256e-07, -3.731318856219676793e-07, -3.746928559960979964e-07, -3.762529692592475304e-07, -3.778122229992327835e-07, -3.793706148061464474e-07, -3.809281422715890381e-07, -3.824848029889527582e-07, -3.840405945537076352e-07, -3.855955145626984306e-07, -3.871495606147847861e-07, -3.887027303107744129e-07, -3.902550212530733735e-07, -3.918064310459016515e-07, -3.933569572955772251e-07, -3.949065976097470144e-07, -3.964553495983746275e-07, -3.980032108729707252e-07, -3.995501790469473985e-07, -4.010962517355552763e-07, -4.026414265558802962e-07, -4.041857011267822415e-07, -4.057290730691788151e-07, -4.072715400056244522e-07, -4.088130995605295431e-07, -4.103537493604397953e-07, -4.118934870333450013e-07, -4.134323102093058436e-07, -4.149702165203912667e-07, -4.165072036003321997e-07, -4.180432690848047299e-07, -4.195784106113621284e-07, -4.211126258193734403e-07, -4.226459123502976056e-07, -4.241782678472794246e-07, -4.257096899554216143e-07, -4.272401763217251984e-07, -4.287697245950913602e-07, -4.302983324262535211e-07, -4.318259974680627907e-07, -4.333527173750696915e-07, -4.348784898038139499e-07, -4.364033124127452987e-07, -4.379271828622399411e-07, -4.394500988145271240e-07, -4.409720579339741109e-07, -4.424930578866699190e-07, -4.440130963407078570e-07, -4.455321709661250683e-07, -4.470502794348241277e-07, -4.485674194208668027e-07, -4.500835886000538197e-07, -4.515987846502068724e-07, -4.531130052511090124e-07, -4.546262480844955966e-07, -4.561385108340020882e-07, -4.576497911854374371e-07, -4.591600868263694042e-07, -4.606693954464124996e-07, -4.621777147371566200e-07, -4.636850423921724490e-07, -4.651913761069463406e-07, -4.666967135791568764e-07, -4.682010525082717830e-07, -4.697043905958170772e-07, -4.712067255453175619e-07, -4.727080550622324514e-07, -4.742083768542307100e-07, -4.757076886308536686e-07, -4.772059881034441910e-07, -4.787032729857752260e-07, -4.801995409933647686e-07, -4.816947898437530524e-07, -4.831890172567049369e-07, -4.846822209538164612e-07, -4.861743986587783767e-07, -4.876655480973195020e-07, -4.891556669971406542e-07, -4.906447530881873938e-07, -4.921328041023152346e-07, -4.936198177732260103e-07, -4.951057918370793268e-07, -4.965907240318216060e-07, -4.980746120974573480e-07, -4.995574537763225110e-07, -5.010392468124186379e-07, -5.025199889520131904e-07, -5.039996779435890449e-07, -5.054783115374921268e-07, -5.069558874861572505e-07, -5.084324035443677354e-07, -5.099078574685206044e-07, -5.113822470175748373e-07, -5.128555699523154053e-07, -5.143278240356191334e-07, -5.157990070327331623e-07, -5.172691167106057925e-07, -5.187381508384902072e-07, -5.202061071878854973e-07, -5.216729835321986954e-07, -5.231387776469602399e-07, -5.246034873100810494e-07, -5.260671103011271448e-07, -5.275296444022627149e-07, -5.289910873975085385e-07, -5.304514370730891628e-07, -5.319106912173621753e-07, -5.333688476208233926e-07, -5.348259040760500028e-07, -5.362818583779595462e-07, -5.377367083234204917e-07, -5.391904517114534069e-07, -5.406430863435007388e-07, -5.420946100227621040e-07, -5.435450205548025644e-07, -5.449943157474839120e-07, -5.464424934106377136e-07, -5.478895513563313856e-07, -5.493354873988063603e-07, -5.507802993544232404e-07, -5.522239850419160150e-07, -5.536665422820032716e-07, -5.551079688976659164e-07, -5.565482627140700952e-07, -5.579874215585747099e-07, -5.594254432606746680e-07, -5.608623256522624038e-07, -5.622980665672342195e-07, -5.637326638417614423e-07, -5.651661153142243552e-07, -5.665984188252188677e-07, -5.680295722174911882e-07, -5.694595733362034750e-07, -5.708884200285434598e-07, -5.723161101439932747e-07, -5.737426415342612661e-07, -5.751680120532235497e-07, -5.765922195571932606e-07, -5.780152619045198013e-07, -5.794371369558622213e-07, -5.808578425741248426e-07, -5.822773766244612835e-07, -5.836957369742091304e-07, -5.851129214931594012e-07, -5.865289280531614033e-07, -5.879437545283937851e-07, -5.893573987952997374e-07, -5.907698587325198663e-07, -5.921811322211621848e-07, -5.935912171444167130e-07, -5.950001113878112819e-07, -5.964078128391494881e-07, -5.978143193885278467e-07, -5.992196289282554284e-07, -6.006237393531255459e-07, -6.020266485600977986e-07, -6.034283544482290394e-07, -6.048288549192626980e-07, -6.062281478769819654e-07, -6.076262312274857147e-07, -6.090231028794231294e-07, -6.104187607433135356e-07, -6.118132027324349404e-07, -6.132064267621240638e-07, -6.145984307500395553e-07, -6.159892126163553288e-07, -6.173787702834390072e-07, -6.187671016758015249e-07, -6.201542047206629450e-07, -6.215400773473238553e-07, -6.229247174874239252e-07, -6.243081230751982389e-07, -6.256902920467759521e-07, -6.270712223410837585e-07, -6.284509118991408411e-07, -6.298293586643844498e-07, -6.312065605825439059e-07, -6.325825156019558041e-07, -6.339572216728801389e-07, -6.353306767483857721e-07, -6.367028787836509951e-07, -6.380738257362290739e-07, -6.394435155662968530e-07, -6.408119462360308100e-07, -6.421791157101748855e-07, -6.435450219559824607e-07, -6.449096629429008382e-07, -6.462730366427702946e-07, -6.476351410300681317e-07, -6.489959740812342267e-07, -6.503555337755362763e-07, -6.517138180943925939e-07, -6.530708250216316191e-07, -6.544265525437306754e-07, -6.557809986492031419e-07, -6.571341613291623650e-07, -6.584860385772600375e-07, -6.598366283893805246e-07, -6.611859287638254124e-07, -6.625339377015693108e-07, -6.638806532056427906e-07, -6.652260732816884603e-07, -6.665701959379063329e-07, -6.679130191847449759e-07, -6.692545410351565746e-07, -6.705947595045260990e-07, -6.719336726106283163e-07, -6.732712783738626314e-07, -6.746075748168988151e-07, -6.759425599649135380e-07, -6.772762318455437840e-07, -6.786085884888838852e-07, -6.799396279274244300e-07, -6.812693481963070083e-07, -6.825977473329523636e-07, -6.839248233773112213e-07, -6.852505743718094427e-07, -6.865749983612829096e-07, -6.878980933932341754e-07, -6.892198575174538412e-07, -6.905402887862851477e-07, -6.918593852545500718e-07, -6.931771449795667963e-07, -6.944935660210764418e-07, -6.958086464415049058e-07, -6.971223843055805331e-07, -6.984347776806088720e-07, -6.997458246363854301e-07, -7.010555232452151560e-07, -7.023638715818476413e-07, -7.036708677237321832e-07, -7.049765097506412787e-07, -7.062807957449293929e-07, -7.075837237914710198e-07, -7.088852919775972607e-07, -7.101854983933514164e-07, -7.114843411311153398e-07, -7.127818182858674634e-07, -7.140779279551158833e-07, -7.153726682389074654e-07, -7.166660372397569060e-07, -7.179580330629161943e-07, -7.192486538159890003e-07, -7.205378976091880677e-07, -7.218257625552746502e-07, -7.231122467695658178e-07, -7.243973483698642585e-07, -7.256810654767769747e-07, -7.269633962130505741e-07, -7.282443387044100438e-07, -7.295238910789069589e-07, -7.308020514671624746e-07, -7.320788180025438271e-07, -7.333541888208748598e-07, -7.346281620603712253e-07, -7.359007358621948747e-07, -7.371719083698420758e-07, -7.384416777293907469e-07, -7.397100420897459907e-07, -7.409769996019894669e-07, -7.422425484202026022e-07, -7.435066867008305749e-07, -7.447694126029673410e-07, -7.460307242882536729e-07, -7.472906199211638800e-07, -7.485490976683659809e-07, -7.498061556995435378e-07, -7.510617921867590045e-07, -7.523160053046876142e-07, -7.535687932308454424e-07, -7.548201541450248600e-07, -7.560700862298100582e-07, -7.573185876705194510e-07, -7.585656566549283769e-07, -7.598112913734361769e-07, -7.610554900193038927e-07, -7.622982507880208978e-07, -7.635395718781148731e-07, -7.647794514905264844e-07, -7.660178878288270703e-07, -7.672548790994706342e-07, -7.684904235112015564e-07, -7.697245192755891782e-07, -7.709571646069721092e-07, -7.721883577221595422e-07, -7.734180968406826105e-07, -7.746463801847274722e-07, -7.758732059791385924e-07, -7.770985724513659094e-07, -7.783224778316987221e-07, -7.795449203529205235e-07, -7.807658982505389707e-07, -7.819854097627472385e-07, -7.832034531303387871e-07, -7.844200265969676130e-07, -7.856351284087908006e-07, -7.868487568147108801e-07, -7.880609100663088057e-07, -7.892715864178572964e-07, -7.904807841262575202e-07, -7.916885014512801813e-07, -7.928947366552117772e-07, -7.940994880031009802e-07, -7.953027537626906625e-07, -7.965045322043678155e-07, -7.977048216013970133e-07, -7.989036202295779996e-07, -8.001009263674780925e-07, -8.012967382963729978e-07, -8.024910543002536912e-07, -8.036838726657729498e-07, -8.048751916824655800e-07, -8.060650096424232630e-07, -8.072533248405174306e-07, -8.084401355743414548e-07, -8.096254401442199655e-07, -8.108092368531517813e-07, -8.119915240070340559e-07, -8.131722999143323586e-07, -8.143515628863061969e-07, -8.155293112369547006e-07, -8.167055432829609291e-07, -8.178802573439241704e-07, -8.190534517420183752e-07, -8.202251248022274198e-07, -8.213952748522816850e-07, -8.225639002226643030e-07, -8.237309992465666876e-07, -8.248965702600903404e-07, -8.260606116019495420e-07, -8.272231216136632048e-07, -8.283840986395205686e-07, -8.295435410265770707e-07, -8.307014471246008777e-07, -8.318578152863554761e-07, -8.330126438669906563e-07, -8.341659312248165941e-07, -8.353176757207083873e-07, -8.364678757183162252e-07, -8.376165295842391366e-07, -8.387636356877497037e-07, -8.399091924007516050e-07, -8.410531980982564944e-07, -8.421956511578541826e-07, -8.433365499599335005e-07, -8.444758928878887637e-07, -8.456136783275364845e-07, -8.467499046678735719e-07, -8.478845703004847267e-07, -8.490176736197572698e-07, -8.501492130230479020e-07, -8.512791869104162064e-07, -8.524075936845762612e-07, -8.535344317513682257e-07, -8.546596995192448266e-07, -8.557833953994695633e-07, -8.569055178063455131e-07, -8.580260651566664536e-07, -8.591450358702262472e-07, -8.602624283697462082e-07, -8.613782410806138988e-07, -8.624924724310492532e-07, -8.636051208523184542e-07, -8.647161847781533972e-07, -8.658256626454910444e-07, -8.669335528938960661e-07, -8.680398539657795868e-07, -8.691445643066071316e-07, -8.702476823643670077e-07, -8.713492065900608417e-07, -8.724491354376384643e-07, -8.735474673637524827e-07, -8.746442008279539447e-07, -8.757393342926539049e-07, -8.768328662230715440e-07, -8.779247950874412682e-07, -8.790151193567018479e-07, -8.801038375047119882e-07, -8.811909480081922006e-07, -8.822764493467351797e-07, -8.833603400027497926e-07, -8.844426184616813080e-07, -8.855232832116793588e-07, -8.866023327438349002e-07, -8.876797655521133992e-07, -8.887555801333575880e-07, -8.898297749872469121e-07, -8.909023486164953126e-07, -8.919732995265493648e-07, -8.930426262258042713e-07, -8.941103272255336648e-07, -8.951764010398625024e-07, -8.962408461859548955e-07, -8.973036611837248479e-07, -8.983648445560334029e-07, -8.994243948286438562e-07, -9.004823105302196384e-07, -9.015385901922785755e-07, -9.025932323494022113e-07, -9.036462355389154180e-07, -9.046975983011182705e-07, -9.057473191792134144e-07, -9.067953967193215233e-07, -9.078418294704321718e-07, -9.088866159845961114e-07, -9.099297548166393969e-07, -9.109712445243550281e-07, -9.120110836684623975e-07, -9.130492708125600684e-07, -9.140858045233165695e-07, -9.151206833702320602e-07, -9.161539059255947092e-07, -9.171854707649165983e-07, -9.182153764664493256e-07, -9.192436216113822113e-07, -9.202702047839865049e-07, -9.212951245713326881e-07, -9.223183795634735398e-07, -9.233399683534208423e-07, -9.243598895370725373e-07, -9.253781417134183421e-07, -9.263947234843113692e-07, -9.274096334543993045e-07, -9.284228702315783112e-07, -9.294344324265121265e-07, -9.304443186528082451e-07, -9.314525275271899720e-07, -9.324590576692431605e-07, -9.334639077013630601e-07, -9.344670762492026090e-07, -9.354685619411954488e-07, -9.364683634087293545e-07, -9.374664792863604276e-07, -9.384629082112852892e-07, -9.394576488240002827e-07, -9.404506997677899727e-07, -9.414420596889165619e-07, -9.424317272367535111e-07, -9.434197010635726159e-07, -9.444059798244750798e-07, -9.453905621778388530e-07, -9.463734467848261891e-07, -9.473546323095984735e-07, -9.483341174194856302e-07, -9.493119007844795958e-07, -9.502879810778972291e-07, -9.512623569758571618e-07, -9.522350271575199331e-07, -9.532059903050034974e-07, -9.541752451036031356e-07, -9.551427902412912823e-07, -9.561086244093693173e-07, -9.570727463019529934e-07, -9.580351546161707475e-07, -9.589958480523307786e-07, -9.599548253134892721e-07, -9.609120851058368588e-07, -9.618676261386763804e-07, -9.628214471241810616e-07, -9.637735467775893273e-07, -9.647239238171565222e-07, -9.656725769641066298e-07, -9.666195049428249720e-07, -9.675647064805822887e-07, -9.685081803077164261e-07, -9.694499251575863850e-07, -9.703899397665843914e-07, -9.713282228740844388e-07, -9.722647732226188949e-07, -9.731995895576229094e-07, -9.741326706276112319e-07, -9.750640151841282373e-07, -9.759936219817536427e-07, -9.769214897780656623e-07, -9.778476173338089307e-07, -9.787720034126399705e-07, -9.796946467812949041e-07, -9.806155462095672192e-07, -9.815347004702397948e-07, -9.824521083392750597e-07, -9.833677685955625768e-07, -9.842816800210664268e-07, -9.851938414008228791e-07, -9.861042515229077804e-07, -9.870129091784062742e-07, -9.879198131616052883e-07, -9.888249622697046968e-07, -9.897283553030089614e-07, -9.906299910648835089e-07, -9.915298683617598139e-07, -9.924279860030858469e-07, -9.933243428014997163e-07, -9.942189375725829700e-07, -9.951117691350264020e-07, -9.960028363105902420e-07, -9.968921379240588392e-07, -9.977796728034187507e-07, -9.986654397796495245e-07, -9.995494376866654661e-07, -1.000431665361720944e-06, -1.001312121644983695e-06, -1.002190805379687718e-06, -1.003067715412286793e-06, -1.003942850592176024e-06, -1.004816209771889829e-06, -1.005687791807039051e-06, -1.006557595556273687e-06, -1.007425619881478765e-06, -1.008291863647516209e-06, -1.009156325722232041e-06, -1.010019004976808110e-06, -1.010879900285347259e-06, -1.011739010525056918e-06, -1.012596334576356254e-06, -1.013451871322687495e-06, -1.014305619650456636e-06, -1.015157578449424347e-06, -1.016007746612281187e-06, -1.016856123034824204e-06, -1.017702706616117667e-06, -1.018547496258048582e-06, -1.019390490865880438e-06, -1.020231689347844519e-06, -1.021071090615262505e-06, -1.021908693582692381e-06, -1.022744497167731495e-06, -1.023578500290947952e-06, -1.024410701876290578e-06, -1.025241100850642321e-06, -1.026069696144016762e-06, -1.026896486689697241e-06, -1.027721471423811436e-06, -1.028544649285880026e-06, -1.029366019218389787e-06, -1.030185580166989683e-06, -1.031003331080451898e-06, -1.031819270910673110e-06, -1.032633398612640819e-06, -1.033445713144585182e-06, -1.034256213467745436e-06, -1.035064898546495055e-06, -1.035871767348493999e-06, -1.036676818844294001e-06, -1.037480052007699397e-06, -1.038281465815740874e-06, -1.039081059248456086e-06, -1.039878831289054823e-06, -1.040674780923893394e-06, -1.041468907142427823e-06, -1.042261208937361869e-06, -1.043051685304437601e-06, -1.043840335242534920e-06, -1.044627157753829533e-06, -1.045412151843418773e-06, -1.046195316519647077e-06, -1.046976650794097934e-06, -1.047756153681381282e-06, -1.048533824199294657e-06, -1.049309661368787615e-06, -1.050083664213967239e-06, -1.050855831762045201e-06, -1.051626163043506953e-06, -1.052394657091880491e-06, -1.053161312943883737e-06, -1.053926129639395739e-06, -1.054689106221407123e-06, -1.055450241736200716e-06, -1.056209535233083258e-06, -1.056966985764583385e-06, -1.057722592386369265e-06, -1.058476354157290731e-06, -1.059228270139316181e-06, -1.059978339397694571e-06, -1.060726561000725446e-06, -1.061472934019924958e-06, -1.062217457529967000e-06, -1.062960130608658003e-06, -1.063700952337093637e-06, -1.064439921799422071e-06, -1.065177038083008715e-06, -1.065912300278384974e-06, -1.066645707479269218e-06, -1.067377258782507273e-06, -1.068106953288234206e-06, -1.068834790099693483e-06, -1.069560768323196098e-06, -1.070284887068447745e-06, -1.071007145448189669e-06, -1.071727542578349867e-06, -1.072446077578146846e-06, -1.073162749569869819e-06, -1.073877557679029478e-06, -1.074590501034322841e-06, -1.075301578767596405e-06, -1.076010790013992897e-06, -1.076718133911768102e-06, -1.077423609602266509e-06, -1.078127216230229212e-06, -1.078828952943446833e-06, -1.079528818892906061e-06, -1.080226813232885368e-06, -1.080922935120758496e-06, -1.081617183717118546e-06, -1.082309558185764218e-06, -1.083000057693689006e-06, -1.083688681411040967e-06, -1.084375428511309915e-06, -1.085060298170939903e-06, -1.085743289569818810e-06, -1.086424401890895688e-06, -1.087103634320310367e-06, -1.087780986047533206e-06, -1.088456456265140214e-06, -1.089130044168826809e-06, -1.089801748957689880e-06, -1.090471569833895966e-06, -1.091139506002820590e-06, -1.091805556673171501e-06, -1.092469721056644569e-06, -1.093131998368369537e-06, -1.093792387826546429e-06, -1.094450888652590818e-06, -1.095107500071265330e-06, -1.095762221310338707e-06, -1.096415051600888840e-06, -1.097065990177283918e-06, -1.097715036276999260e-06, -1.098362189140721074e-06, -1.099007448012489606e-06, -1.099650812139357789e-06, -1.100292280771698922e-06, -1.100931853163163901e-06, -1.101569528570521125e-06, -1.102205306253804516e-06, -1.102839185476251265e-06, -1.103471165504296958e-06, -1.104101245607686540e-06, -1.104729425059294528e-06, -1.105355703135216710e-06, -1.105980079114899096e-06, -1.106602552280822619e-06, -1.107223121918782862e-06, -1.107841787317867189e-06, -1.108458547770293176e-06, -1.109073402571534181e-06, -1.109686351020289275e-06, -1.110297392418458891e-06, -1.110906526071256207e-06, -1.111513751287041976e-06, -1.112119067377424897e-06, -1.112722473657253996e-06, -1.113323969444598717e-06, -1.113923554060737913e-06, -1.114521226830267840e-06, -1.115116987080921105e-06, -1.115710834143712359e-06, -1.116302767352866291e-06, -1.116892786045859779e-06, -1.117480889563362586e-06, -1.118067077249373743e-06, -1.118651348451040274e-06, -1.119233702518766896e-06, -1.119814138806210296e-06, -1.120392656670221532e-06, -1.120969255470983680e-06, -1.121543934571829295e-06, -1.122116693339351376e-06, -1.122687531143400819e-06, -1.123256447357050212e-06, -1.123823441356587903e-06, -1.124388512521642727e-06, -1.124951660234983680e-06, -1.125512883882653754e-06, -1.126072182853940499e-06, -1.126629556541373910e-06, -1.127185004340701857e-06, -1.127738525650993215e-06, -1.128290119874483705e-06, -1.128839786416683465e-06, -1.129387524686341475e-06, -1.129933334095427345e-06, -1.130477214059242703e-06, -1.131019163996274654e-06, -1.131559183328179478e-06, -1.132097271480020645e-06, -1.132633427880014917e-06, -1.133167651959605403e-06, -1.133699943153586078e-06, -1.134230300899899968e-06, -1.134758724639779981e-06, -1.135285213817708663e-06, -1.135809767881408462e-06, -1.136332386281838339e-06, -1.136853068473307060e-06, -1.137371813913195153e-06, -1.137888622062311725e-06, -1.138403492384618965e-06, -1.138916424347332936e-06, -1.139427417420988590e-06, -1.139936471079347438e-06, -1.140443584799320472e-06, -1.140948758061242815e-06, -1.141451990348597375e-06, -1.141953281148120091e-06, -1.142452629949903481e-06, -1.142950036247122841e-06, -1.143445499536375901e-06, -1.143939019317431050e-06, -1.144430595093302293e-06, -1.144920226370361275e-06, -1.145407912658081476e-06, -1.145893653469283003e-06, -1.146377448320080284e-06, -1.146859296729773228e-06, -1.147339198220925150e-06, -1.147817152319458274e-06, -1.148293158554387764e-06, -1.148767216458084519e-06, -1.149239325566209734e-06, -1.149709485417619616e-06, -1.150177695554446482e-06, -1.150643955522100665e-06, -1.151108264869203814e-06, -1.151570623147729287e-06, -1.152031029912824908e-06, -1.152489484722907204e-06, -1.152945987139749066e-06, -1.153400536728236871e-06, -1.153853133056587527e-06, -1.154303775696343181e-06, -1.154752464222213461e-06, -1.155199198212212270e-06, -1.155643977247602942e-06, -1.156086800912890616e-06, -1.156527668795917108e-06, -1.156966580487710134e-06, -1.157403535582592371e-06, -1.157838533678144394e-06, -1.158271574375201291e-06, -1.158702657277854570e-06, -1.159131781993510811e-06, -1.159558948132782192e-06, -1.159984155309565898e-06, -1.160407403141013835e-06, -1.160828691247557835e-06, -1.161248019252857559e-06, -1.161665386783904049e-06, -1.162080793470893096e-06, -1.162494238947302745e-06, -1.162905722849869364e-06, -1.163315244818575998e-06, -1.163722804496744061e-06, -1.164128401530880235e-06, -1.164532035570784252e-06, -1.164933706269518618e-06, -1.165333413283412419e-06, -1.165731156272028292e-06, -1.166126934898271687e-06, -1.166520748828243063e-06, -1.166912597731321956e-06, -1.167302481280162954e-06, -1.167690399150677699e-06, -1.168076351022024510e-06, -1.168460336576687794e-06, -1.168842355500357763e-06, -1.169222407482002226e-06, -1.169600492213859596e-06, -1.169976609391418563e-06, -1.170350758713478871e-06, -1.170722939882071270e-06, -1.171093152602433164e-06, -1.171461396583183737e-06, -1.171827671536125111e-06, -1.172191977176332131e-06, -1.172554313222194083e-06, -1.172914679395308389e-06, -1.173273075420556630e-06, -1.173629501026086548e-06, -1.173983955943285571e-06, -1.174336439906867215e-06, -1.174686952654765203e-06, -1.175035493928130080e-06, -1.175382063471482732e-06, -1.175726661032532489e-06, -1.176069286362252512e-06, -1.176409939214953484e-06, -1.176748619348101708e-06, -1.177085326522469244e-06, -1.177420060502156995e-06, -1.177752821054439056e-06, -1.178083607949874956e-06, -1.178412420962353696e-06, -1.178739259868895547e-06, -1.179064124449913358e-06, -1.179387014489007363e-06, -1.179707929773049250e-06, -1.180026870092233405e-06, -1.180343835239911741e-06, -1.180658825012751881e-06, -1.180971839210722759e-06, -1.181282877636989166e-06, -1.181591940097992637e-06, -1.181899026403486609e-06, -1.182204136366380984e-06, -1.182507269802965540e-06, -1.182808426532706428e-06, -1.183107606378359462e-06, -1.183404809165936874e-06, -1.183700034724709011e-06, -1.183993282887188870e-06, -1.184284553489201774e-06, -1.184573846369781604e-06, -1.184861161371212308e-06, -1.185146498339115990e-06, -1.185429857122256823e-06, -1.185711237572723797e-06, -1.185990639545882648e-06, -1.186268062900307460e-06, -1.186543507497859442e-06, -1.186816973203640551e-06, -1.187088459886002173e-06, -1.187357967416593193e-06, -1.187625495670276353e-06, -1.187891044525163822e-06, -1.188154613862688141e-06, -1.188416203567446999e-06, -1.188675813527335587e-06, -1.188933443633529864e-06, -1.189189093780418162e-06, -1.189442763865658149e-06, -1.189694453790156076e-06, -1.189944163458071434e-06, -1.190191892776805736e-06, -1.190437641657056298e-06, -1.190681410012723280e-06, -1.190923197760974058e-06, -1.191163004822226712e-06, -1.191400831120137526e-06, -1.191636676581653297e-06, -1.191870541136925359e-06, -1.192102424719376710e-06, -1.192332327265671732e-06, -1.192560248715725509e-06, -1.192786189012686669e-06, -1.193010148102994357e-06, -1.193232125936288439e-06, -1.193452122465473884e-06, -1.193670137646706149e-06, -1.193886171439363652e-06, -1.194100223806115532e-06, -1.194312294712831233e-06, -1.194522384128645932e-06, -1.194730492025929839e-06, -1.194936618380303439e-06, -1.195140763170611026e-06, -1.195342926378987827e-06, -1.195543107990777845e-06, -1.195741307994524957e-06, -1.195937526382101882e-06, -1.196131763148557291e-06, -1.196324018292192881e-06, -1.196514291814573758e-06, -1.196702583720486293e-06, -1.196888894017945747e-06, -1.197073222718224011e-06, -1.197255569835801326e-06, -1.197435935388445265e-06, -1.197614319397127306e-06, -1.197790721886019229e-06, -1.197965142882605346e-06, -1.198137582417556509e-06, -1.198308040524768223e-06, -1.198476517241424388e-06, -1.198643012607863042e-06, -1.198807526667724805e-06, -1.198970059467847635e-06, -1.199130611058303671e-06, -1.199289181492392251e-06, -1.199445770826676964e-06, -1.199600379120886550e-06, -1.199753006438044708e-06, -1.199903652844361039e-06, -1.200052318409280808e-06, -1.200199003205504219e-06, -1.200343707308909118e-06, -1.200486430798627018e-06, -1.200627173757027425e-06, -1.200765936269677820e-06, -1.200902718425376266e-06, -1.201037520316173434e-06, -1.201170342037276674e-06, -1.201301183687183636e-06, -1.201430045367584013e-06, -1.201556927183379236e-06, -1.201681829242701107e-06, -1.201804751656904177e-06, -1.201925694540539701e-06, -1.202044658011417466e-06, -1.202161642190525331e-06, -1.202276647202078136e-06, -1.202389673173536127e-06, -1.202500720235518774e-06, -1.202609788521888834e-06, -1.202716878169740919e-06, -1.202821989319355120e-06, -1.202925122114225595e-06, -1.203026276701075602e-06, -1.203125453229813244e-06, -1.203222651853584196e-06, -1.203317872728725752e-06, -1.203411116014780592e-06, -1.203502381874508636e-06, -1.203591670473869475e-06, -1.203678981982017069e-06, -1.203764316571356717e-06, -1.203847674417443197e-06, -1.203929055699063142e-06, -1.204008460598195861e-06, -1.204085889300029017e-06, -1.204161341992939347e-06, -1.204234818868526128e-06, -1.204306320121568611e-06, -1.204375845950049946e-06, -1.204443396555149776e-06, -1.204508972141241481e-06, -1.204572572915912295e-06, -1.204634199089924769e-06, -1.204693850877237096e-06, -1.204751528495008617e-06, -1.204807232163591779e-06, -1.204860962106519422e-06, -1.204912718550532102e-06, -1.204962501725549289e-06, -1.205010311864676993e-06, -1.205056149204220040e-06, -1.205100013983650314e-06, -1.205141906445661391e-06, -1.205181826836096748e-06, -1.205219775404003554e-06, -1.205255752401604502e-06, -1.205289758084307979e-06, -1.205321792710703615e-06, -1.205351856542565035e-06, -1.205379949844850711e-06, -1.205406072885674945e-06, -1.205430225936355097e-06, -1.205452409271378121e-06, -1.205472623168392313e-06, -1.205490867908254740e-06, -1.205507143774955432e-06, -1.205521451055691073e-06, -1.205533790040814818e-06, -1.205544161023848994e-06, -1.205552564301500983e-06, -1.205559000173639083e-06, -1.205563468943279803e-06, -1.205565970916642281e-06, -1.205566506403087091e-06, -1.205565075715152872e-06, -1.205561679168545322e-06, -1.205556317082109029e-06, -1.205548989777882955e-06, -1.205539697581044743e-06, -1.205528440819942691e-06, -1.205515219826071190e-06, -1.205500034934111169e-06, -1.205482886481865932e-06, -1.205463774810321508e-06, -1.205442700263603880e-06, -1.205419663188993378e-06, -1.205394663936939509e-06, -1.205367702861018601e-06, -1.205338780317967685e-06, -1.205307896667690002e-06, -1.205275052273215825e-06, -1.205240247500727028e-06, -1.205203482719560891e-06, -1.205164758302185331e-06, -1.205124074624226214e-06, -1.205081432064441944e-06, -1.205036831004745067e-06, -1.204990271830178126e-06, -1.204941754928926579e-06, -1.204891280692308637e-06, -1.204838849514790720e-06, -1.204784461793968611e-06, -1.204728117930575715e-06, -1.204669818328473741e-06, -1.204609563394666255e-06, -1.204547353539277505e-06, -1.204483189175574019e-06, -1.204417070719941100e-06, -1.204348998591898920e-06, -1.204278973214091721e-06, -1.204206995012281885e-06, -1.204133064415374496e-06, -1.204057181855381980e-06, -1.203979347767445280e-06, -1.203899562589824537e-06, -1.203817826763897184e-06, -1.203734140734165359e-06, -1.203648504948240660e-06, -1.203560919856855787e-06, -1.203471385913857981e-06, -1.203379903576207330e-06, -1.203286473303974437e-06, -1.203191095560341694e-06, -1.203093770811600102e-06, -1.202994499527156688e-06, -1.202893282179506545e-06, -1.202790119244277732e-06, -1.202685011200180871e-06, -1.202577958529040702e-06, -1.202468961715780834e-06, -1.202358021248427771e-06, -1.202245137618099685e-06, -1.202130311319020185e-06, -1.202013542848515982e-06, -1.201894832706997202e-06, -1.201774181397972627e-06, -1.201651589428048428e-06, -1.201527057306911646e-06, -1.201400585547350734e-06, -1.201272174665239250e-06, -1.201141825179534162e-06, -1.201009537612287077e-06, -1.200875312488627081e-06, -1.200739150336773660e-06, -1.200601051688025055e-06, -1.200461017076754235e-06, -1.200319047040420758e-06, -1.200175142119564839e-06, -1.200029302857796978e-06, -1.199881529801810026e-06, -1.199731823501368601e-06, -1.199580184509295319e-06, -1.199426613381509764e-06, -1.199271110676980834e-06, -1.199113676957758724e-06, -1.198954312788952054e-06, -1.198793018738740995e-06, -1.198629795378360543e-06, -1.198464643282129953e-06, -1.198297563027400858e-06, -1.198128555194605126e-06, -1.197957620367229027e-06, -1.197784759131800524e-06, -1.197609972077937771e-06, -1.197433259798277108e-06, -1.197254622888526433e-06, -1.197074061947448887e-06, -1.196891577576832794e-06, -1.196707170381537605e-06, -1.196520840969470183e-06, -1.196332589951569559e-06, -1.196142417941826200e-06, -1.195950325557277137e-06, -1.195756313417979076e-06, -1.195560382147057522e-06, -1.195362532370663793e-06, -1.195162764717973327e-06, -1.194961079821207704e-06, -1.194757478315633377e-06, -1.194551960839518047e-06, -1.194344528034198214e-06, -1.194135180544000620e-06, -1.193923919016308946e-06, -1.193710744101518075e-06, -1.193495656453035153e-06, -1.193278656727326384e-06, -1.193059745583856256e-06, -1.192838923685093473e-06, -1.192616191696550127e-06, -1.192391550286745067e-06, -1.192165000127213001e-06, -1.191936541892501958e-06, -1.191706176260159096e-06, -1.191473903910764591e-06, -1.191239725527896264e-06, -1.191003641798129166e-06, -1.190765653411058441e-06, -1.190525761059282813e-06, -1.190283965438381291e-06, -1.190040267246949594e-06, -1.189794667186596756e-06, -1.189547165961904056e-06, -1.189297764280453592e-06, -1.189046462852839517e-06, -1.188793262392620385e-06, -1.188538163616360234e-06, -1.188281167243607412e-06, -1.188022273996911940e-06, -1.187761484601801794e-06, -1.187498799786769779e-06, -1.187234220283309736e-06, -1.186967746825899816e-06, -1.186699380151985325e-06, -1.186429121001997573e-06, -1.186156970119342650e-06, -1.185882928250384695e-06, -1.185606996144481476e-06, -1.185329174553951985e-06, -1.185049464234084492e-06, -1.184767865943130607e-06, -1.184484380442325405e-06, -1.184199008495829613e-06, -1.183911750870803934e-06, -1.183622608337351244e-06, -1.183331581668538396e-06, -1.183038671640394741e-06, -1.182743879031879095e-06, -1.182447204624929287e-06, -1.182148649204425317e-06, -1.181848213558196129e-06, -1.181545898477029141e-06, -1.181241704754652671e-06, -1.180935633187718144e-06, -1.180627684575844570e-06, -1.180317859721589313e-06, -1.180006159430440683e-06, -1.179692584510825983e-06, -1.179377135774126545e-06, -1.179059814034607210e-06, -1.178740620109538517e-06, -1.178419554819053553e-06, -1.178096618986243244e-06, -1.177771813437142801e-06, -1.177445139000660786e-06, -1.177116596508669313e-06, -1.176786186795982880e-06, -1.176453910700271120e-06, -1.176119769062160236e-06, -1.175783762725203774e-06, -1.175445892535814866e-06, -1.175106159343397303e-06, -1.174764564000189264e-06, -1.174421107361387397e-06, -1.174075790285082455e-06, -1.173728613632245099e-06, -1.173379578266765291e-06, -1.173028685055469445e-06, -1.172675934868018358e-06, -1.172321328577007372e-06, -1.171964867057935459e-06, -1.171606551189145928e-06, -1.171246381851938231e-06, -1.170884359930470136e-06, -1.170520486311764708e-06, -1.170154761885759021e-06, -1.169787187545282762e-06, -1.169417764185990053e-06, -1.169046492706510217e-06, -1.168673374008254024e-06, -1.168298408995566787e-06, -1.167921598575660391e-06, -1.167542943658570518e-06, -1.167162445157279254e-06, -1.166780103987596291e-06, -1.166395921068184130e-06, -1.166009897320587935e-06, -1.165622033669215844e-06, -1.165232331041333035e-06, -1.164840790367074010e-06, -1.164447412579390504e-06, -1.164052198614130257e-06, -1.163655149409980686e-06, -1.163256265908478417e-06, -1.162855549054003776e-06, -1.162452999793803659e-06, -1.162048619077924410e-06, -1.161642407859296304e-06, -1.161234367093676803e-06, -1.160824497739658811e-06, -1.160412800758681685e-06, -1.159999277115020651e-06, -1.159583927775743176e-06, -1.159166753710798547e-06, -1.158747755892935071e-06, -1.158326935297739674e-06, -1.157904292903628794e-06, -1.157479829691806034e-06, -1.157053546646335849e-06, -1.156625444754080443e-06, -1.156195525004723701e-06, -1.155763788390760383e-06, -1.155330235907510744e-06, -1.154894868553062927e-06, -1.154457687328353648e-06, -1.154018693237116316e-06, -1.153577887285883356e-06, -1.153135270483986853e-06, -1.152690843843577392e-06, -1.152244608379551427e-06, -1.151796565109650596e-06, -1.151346715054388877e-06, -1.150895059237083290e-06, -1.150441598683838865e-06, -1.149986334423510100e-06, -1.149529267487765761e-06, -1.149070398911102010e-06, -1.148609729730699255e-06, -1.148147260986579489e-06, -1.147682993721548691e-06, -1.147216928981129061e-06, -1.146749067813662998e-06, -1.146279411270247449e-06, -1.145807960404752761e-06, -1.145334716273819289e-06, -1.144859679936808695e-06, -1.144382852455870859e-06, -1.143904234895972683e-06, -1.143423828324729953e-06, -1.142941633812578860e-06, -1.142457652432711632e-06, -1.141971885261018718e-06, -1.141484333376167355e-06, -1.140994997859624644e-06, -1.140503879795503821e-06, -1.140010980270717987e-06, -1.139516300374925476e-06, -1.139019841200443038e-06, -1.138521603842457379e-06, -1.138021589398753058e-06, -1.137519798969917251e-06, -1.137016233659263736e-06, -1.136510894572786725e-06, -1.136003782819226936e-06, -1.135494899510111824e-06, -1.134984245759567329e-06, -1.134471822684516294e-06, -1.133957631404590588e-06, -1.133441673042059948e-06, -1.132923948722043320e-06, -1.132404459572223832e-06, -1.131883206723071771e-06, -1.131360191307737226e-06, -1.130835414462089686e-06, -1.130308877324623171e-06, -1.129780581036656766e-06, -1.129250526742080939e-06, -1.128718715587537742e-06, -1.128185148722369359e-06, -1.127649827298518151e-06, -1.127112752470738418e-06, -1.126573925396398190e-06, -1.126033347235511420e-06, -1.125491019150820773e-06, -1.124946942307735166e-06, -1.124401117874332090e-06, -1.123853547021373497e-06, -1.123304230922238884e-06, -1.122753170753019519e-06, -1.122200367692486053e-06, -1.121645822921972679e-06, -1.121089537625612821e-06, -1.120531512990119332e-06, -1.119971750204824092e-06, -1.119410250461771178e-06, -1.118847014955631741e-06, -1.118282044883724120e-06, -1.117715341446017447e-06, -1.117146905845129523e-06, -1.116576739286267106e-06, -1.116004842977336448e-06, -1.115431218128848218e-06, -1.114855865953953282e-06, -1.114278787668453510e-06, -1.113699984490708178e-06, -1.113119457641768429e-06, -1.112537208345293634e-06, -1.111953237827556051e-06, -1.111367547317445688e-06, -1.110780138046494031e-06, -1.110191011248773449e-06, -1.109600168161037385e-06, -1.109007610022623365e-06, -1.108413338075478837e-06, -1.107817353564173027e-06, -1.107219657735804827e-06, -1.106620251840148266e-06, -1.106019137129542406e-06, -1.105416314858919497e-06, -1.104811786285813029e-06, -1.104205552670351375e-06, -1.103597615275195538e-06, -1.102987975365628090e-06, -1.102376634209583024e-06, -1.101763593077431462e-06, -1.101148853242221994e-06, -1.100532415979561887e-06, -1.099914282567571766e-06, -1.099294454287008011e-06, -1.098672932421171276e-06, -1.098049718255918986e-06, -1.097424813079696673e-06, -1.096798218183442900e-06, -1.096169934860686033e-06, -1.095539964407589981e-06, -1.094908308122733120e-06, -1.094274967307318571e-06, -1.093639943265108762e-06, -1.093003237302334166e-06, -1.092364850727836658e-06, -1.091724784852974222e-06, -1.091083040991636628e-06, -1.090439620460250294e-06, -1.089794524577800315e-06, -1.089147754665694298e-06, -1.088499312048039346e-06, -1.087849198051294138e-06, -1.087197414004535104e-06, -1.086543961239357967e-06, -1.085888841089795361e-06, -1.085232054892448336e-06, -1.084573603986499275e-06, -1.083913489713483195e-06, -1.083251713417550962e-06, -1.082588276445343508e-06, -1.081923180145907974e-06, -1.081256425870964312e-06, -1.080588014974542758e-06, -1.079917948813280927e-06, -1.079246228746266475e-06, -1.078572856135080725e-06, -1.077897832343782146e-06, -1.077221158738947016e-06, -1.076542836689538971e-06, -1.075862867567082653e-06, -1.075181252745583029e-06, -1.074497993601398123e-06, -1.073813091513517901e-06, -1.073126547863314822e-06, -1.072438364034579413e-06, -1.071748541413633346e-06, -1.071057081389229913e-06, -1.070363985352583460e-06, -1.069669254697378917e-06, -1.068972890819678201e-06, -1.068274895118060397e-06, -1.067575268993559081e-06, -1.066874013849531240e-06, -1.066171131091942724e-06, -1.065466622129112014e-06, -1.064760488371733310e-06, -1.064052731233018826e-06, -1.063343352128573647e-06, -1.062632352476433205e-06, -1.061919733697054812e-06, -1.061205497213340529e-06, -1.060489644450526416e-06, -1.059772176836353210e-06, -1.059053095800937786e-06, -1.058332402776806616e-06, -1.057610099198920758e-06, -1.056886186504564469e-06, -1.056160666133498093e-06, -1.055433539527861293e-06, -1.054704808132181303e-06, -1.053974473393385004e-06, -1.053242536760814166e-06, -1.052508999686106866e-06, -1.051773863623377694e-06, -1.051037130029091755e-06, -1.050298800362089237e-06, -1.049558876083621616e-06, -1.048817358657222276e-06, -1.048074249548883116e-06, -1.047329550226935536e-06, -1.046583262162072045e-06, -1.045835386827350487e-06, -1.045085925698215437e-06, -1.044334880252375798e-06, -1.043582251969965106e-06, -1.042828042333543647e-06, -1.042072252827848792e-06, -1.041314884940079179e-06, -1.040555940159776339e-06, -1.039795419978731098e-06, -1.039033325891160186e-06, -1.038269659393585743e-06, -1.037504421984864123e-06, -1.036737615166203252e-06, -1.035969240441051036e-06, -1.035199299315235756e-06, -1.034427793296997829e-06, -1.033654723896711352e-06, -1.032880092627180978e-06, -1.032103901003539221e-06, -1.031326150543117494e-06, -1.030546842765651298e-06, -1.029765979193148514e-06, -1.028983561349917563e-06, -1.028199590762561902e-06, -1.027414068960009672e-06, -1.026626997473356356e-06, -1.025838377836207199e-06, -1.025048211584231452e-06, -1.024256500255504998e-06, -1.023463245390384568e-06, -1.022668448531408850e-06, -1.021872111223453498e-06, -1.021074235013760349e-06, -1.020274821451651766e-06, -1.019473872088838324e-06, -1.018671388479295772e-06, -1.017867372179128666e-06, -1.017061824746925275e-06, -1.016254747743298489e-06, -1.015446142731246863e-06, -1.014636011276011477e-06, -1.013824354944952894e-06, -1.013011175307863935e-06, -1.012196473936680627e-06, -1.011380252405511421e-06, -1.010562512290794111e-06, -1.009743255171197789e-06, -1.008922482627480963e-06, -1.008100196242839903e-06, -1.007276397602577025e-06, -1.006451088294153200e-06, -1.005624269907345507e-06, -1.004795944034111077e-06, -1.003966112268609329e-06, -1.003134776207245163e-06, -1.002301937448530264e-06, -1.001467597593270292e-06, -1.000631758244475101e-06, -9.997944210072083870e-07, -9.989555874889315832e-07, -9.981152592991913079e-07, -9.972734380496574785e-07, -9.964301253542715431e-07, -9.955853228291416602e-07, -9.947390320925352870e-07, -9.938912547649331777e-07, -9.930419924688836939e-07, -9.921912468292094809e-07, -9.913390194728588129e-07, -9.904853120289403217e-07, -9.896301261287323141e-07, -9.887734634056910304e-07, -9.879153254953259186e-07, -9.870557140354012284e-07, -9.861946306657934982e-07, -9.853320770285214123e-07, -9.844680547677400841e-07, -9.836025655297891251e-07, -9.827356109630266259e-07, -9.818671927180515033e-07, -9.809973124475554802e-07, -9.801259718063556974e-07, -9.792531724514262647e-07, -9.783789160417553248e-07, -9.775032042385517290e-07, -9.766260387051084528e-07, -9.757474211068203845e-07, -9.748673531111949122e-07, -9.739858363878762765e-07, -9.731028726085030570e-07, -9.722184634469178131e-07, -9.713326105790258411e-07, -9.704453156828218560e-07, -9.695565804383887206e-07, -9.686664065279334447e-07, -9.677747956356313307e-07, -9.668817494478517083e-07, -9.659872696530010215e-07, -9.650913579415577683e-07, -9.641940160061112531e-07, -9.632952455412053088e-07, -9.623950482435206206e-07, -9.614934258119115721e-07, -9.605903799470642553e-07, -9.596859123518691660e-07, -9.587800247312710662e-07, -9.578727187921465886e-07, -9.569639962435361113e-07, -9.560538587964781632e-07, -9.551423081640541051e-07, -9.542293460613798708e-07, -9.533149742056403778e-07, -9.523991943158992630e-07, -9.514820081135114930e-07, -9.505634173215986276e-07, -9.496434236654394079e-07, -9.487220288723377248e-07, -9.477992346714979992e-07, -9.468750427942087768e-07, -9.459494549738804207e-07, -9.450224729456988869e-07, -9.440940984470023362e-07, -9.431643332171379858e-07, -9.422331789972795732e-07, -9.413006375308665436e-07, -9.403667105630635363e-07, -9.394313998411671726e-07, -9.384947071144576131e-07, -9.375566341340394218e-07, -9.366171826532319416e-07, -9.356763544272043300e-07, -9.347341512130148393e-07, -9.337905747698103995e-07, -9.328456268587000922e-07, -9.318993092425931559e-07, -9.309516236866324549e-07, -9.300025719576376611e-07, -9.290521558245425348e-07, -9.281003770581771314e-07, -9.271472374313265640e-07, -9.261927387187083456e-07, -9.252368826970192936e-07, -9.242796711447733225e-07, -9.233211058425312023e-07, -9.223611885727894905e-07, -9.213999211198001148e-07, -9.204373052699780074e-07, -9.194733428115393159e-07, -9.185080355345329556e-07, -9.175413852310417796e-07, -9.165733936950109488e-07, -9.156040627222997068e-07, -9.146333941107011793e-07, -9.136613896597935081e-07, -9.126880511711642088e-07, -9.117133804482547406e-07, -9.107373792963976694e-07, -9.097600495228106329e-07, -9.087813929366279987e-07, -9.078014113487548567e-07, -9.068201065720807889e-07, -9.058374804213346038e-07, -9.048535347131084763e-07, -9.038682712658682182e-07, -9.028816918999771010e-07, -9.018937984375343902e-07, -9.009045927026247966e-07, -8.999140765211418699e-07, -8.989222517208241032e-07, -8.979291201313054378e-07, -8.969346835839344214e-07, -8.959389439120215418e-07, -8.949419029506747963e-07, -8.939435625368338915e-07, -8.929439245092754303e-07, -8.919429907086325003e-07, -8.909407629772473956e-07, -8.899372431593987279e-07, -8.889324331011431366e-07, -8.879263346503524529e-07, -8.869189496567052291e-07, -8.859102799717334317e-07, -8.849003274486411759e-07, -8.838890939425605300e-07, -8.828765813103798848e-07, -8.818627914107787885e-07, -8.808477261042682860e-07, -8.798313872530225716e-07, -8.788137767210819589e-07, -8.777948963743943856e-07, -8.767747480804278961e-07, -8.757533337085973339e-07, -8.747306551300843475e-07, -8.737067142177118175e-07, -8.726815128461926728e-07, -8.716550528919527545e-07, -8.706273362331862968e-07, -8.695983647498731854e-07, -8.685681403236165384e-07, -8.675366648378538300e-07, -8.665039401778960652e-07, -8.654699682305297805e-07, -8.644347508844518892e-07, -8.633982900301026043e-07, -8.623605875594658565e-07, -8.613216453665168449e-07, -8.602814653468264730e-07, -8.592400493975896180e-07, -8.581973994178594416e-07, -8.571535173083935476e-07, -8.561084049714821399e-07, -8.550620643114404665e-07, -8.540144972339669804e-07, -8.529657056466421355e-07, -8.519156914587375933e-07, -8.508644565810431097e-07, -8.498120029263005342e-07, -8.487583324088072923e-07, -8.477034469444585251e-07, -8.466473484509531308e-07, -8.455900388476671324e-07, -8.445315200554756957e-07, -8.434717939972296905e-07, -8.424108625971324869e-07, -8.413487277812311276e-07, -8.402853914771854065e-07, -8.392208556143102194e-07, -8.381551221235702710e-07, -8.370881929376223198e-07, -8.360200699906393134e-07, -8.349507552185632280e-07, -8.338802505589746246e-07, -8.328085579509128668e-07, -8.317356793353168958e-07, -8.306616166546149480e-07, -8.295863718527723072e-07, -8.285099468755080390e-07, -8.274323436701155255e-07, -8.263535641854997348e-07, -8.252736103722199964e-07, -8.241924841823132885e-07, -8.231101875695494073e-07, -8.220267224892988293e-07, -8.209420908983485877e-07, -8.198562947553499295e-07, -8.187693360204089865e-07, -8.176812166551254214e-07, -8.165919386228172092e-07, -8.155015038883419130e-07, -8.144099144181241069e-07, -8.133171721801676582e-07, -8.122232791440844198e-07, -8.111282372809215426e-07, -8.100320485634184429e-07, -8.089347149658280793e-07, -8.078362384639665037e-07, -8.067366210352370019e-07, -8.056358646584579342e-07, -8.045339713141266918e-07, -8.034309429842380086e-07, -8.023267816523237712e-07, -8.012214893034480433e-07, -8.001150679242561930e-07, -7.990075195027764757e-07, -7.978988460286999783e-07, -7.967890494931950131e-07, -7.956781318889414227e-07, -7.945660952101833079e-07, -7.934529414525297631e-07, -7.923386726132378910e-07, -7.912232906910231734e-07, -7.901067976860971641e-07, -7.889891956001649476e-07, -7.878704864364728909e-07, -7.867506721996139315e-07, -7.856297548957606175e-07, -7.845077365327050239e-07, -7.833846191194400010e-07, -7.822604046666175248e-07, -7.811350951863593850e-07, -7.800086926921130840e-07, -7.788811991989342163e-07, -7.777526167232881566e-07, -7.766229472830983411e-07, -7.754921928977862896e-07, -7.743603555880870584e-07, -7.732274373762696802e-07, -7.720934402861931746e-07, -7.709583663428641849e-07, -7.698222175729208458e-07, -7.686849960044286483e-07, -7.675467036666914457e-07, -7.664073425907787313e-07, -7.652669148088373185e-07, -7.641254223546259246e-07, -7.629828672632717541e-07, -7.618392515713564734e-07, -7.606945773166806290e-07, -7.595488465387793850e-07, -7.584020612782576025e-07, -7.572542235773064232e-07, -7.561053354795042173e-07, -7.549553990296339416e-07, -7.538044162741458314e-07, -7.526523892607356839e-07, -7.514993200383700575e-07, -7.503452106575446168e-07, -7.491900631701253142e-07, -7.480338796291459484e-07, -7.468766620893498425e-07, -7.457184126064980299e-07, -7.445591332379030962e-07, -7.433988260421819522e-07, -7.422374930793010437e-07, -7.410751364105765637e-07, -7.399117580987130979e-07, -7.387473602076046782e-07, -7.375819448026321969e-07, -7.364155139505060702e-07, -7.352480697190694094e-07, -7.340796141777823115e-07, -7.329101493972808730e-07, -7.317396774494208118e-07, -7.305682004075173895e-07, -7.293957203461464647e-07, -7.282222393411918205e-07, -7.270477594698879399e-07, -7.258722828106222239e-07, -7.246958114432221350e-07, -7.235183474487663095e-07, -7.223398929096119799e-07, -7.211604499094072569e-07, -7.199800205331301988e-07, -7.187986068668846765e-07, -7.176162109982004351e-07, -7.164328350158257823e-07, -7.152484810097796815e-07, -7.140631510713419040e-07, -7.128768472930992995e-07, -7.116895717687483303e-07, -7.105013265933846517e-07, -7.093121138633051172e-07, -7.081219356760504485e-07, -7.069307941304508688e-07, -7.057386913264287447e-07, -7.045456293652878476e-07, -7.033516103495118655e-07, -7.021566363828102492e-07, -7.009607095701209650e-07, -6.997638320176455404e-07, -6.985660058326525528e-07, -6.973672331237761025e-07, -6.961675160008077602e-07, -6.949668565747396603e-07, -6.937652569578233689e-07, -6.925627192633470089e-07, -6.913592456059541677e-07, -6.901548381014211273e-07, -6.889494988667126631e-07, -6.877432300199793964e-07, -6.865360336806002521e-07, -6.853279119689761006e-07, -6.841188670067810086e-07, -6.829089009170157080e-07, -6.816980158235323049e-07, -6.804862138515509693e-07, -6.792734971274552711e-07, -6.780598677786203382e-07, -6.768453279337278466e-07, -6.756298797225570154e-07, -6.744135252760262171e-07, -6.731962667262472936e-07, -6.719781062063113627e-07, -6.707590458505447283e-07, -6.695390877945583252e-07, -6.683182341747722168e-07, -6.670964871289426607e-07, -6.658738487959331985e-07, -6.646503213155184616e-07, -6.634259068289494596e-07, -6.622006074782084037e-07, -6.609744254066030055e-07, -6.597473627584745685e-07, -6.585194216793191141e-07, -6.572906043155093425e-07, -6.560609128148769686e-07, -6.548303493259655321e-07, -6.535989159986115688e-07, -6.523666149837313697e-07, -6.511334484330978938e-07, -6.498994184998725987e-07, -6.486645273381198792e-07, -6.474287771028658302e-07, -6.461921699503502389e-07, -6.449547080378664955e-07, -6.437163935235470823e-07, -6.424772285669444266e-07, -6.412372153282818055e-07, -6.399963559690319757e-07, -6.387546526517067918e-07, -6.375121075396351771e-07, -6.362687227974932613e-07, -6.350245005908249589e-07, -6.337794430860862274e-07, -6.325335524509117765e-07, -6.312868308539487319e-07, -6.300392804646394776e-07, -6.287909034537561332e-07, -6.275417019929082163e-07, -6.262916782545992879e-07, -6.250408344124923911e-07, -6.237891726411825171e-07, -6.225366951162534621e-07, -6.212834040143264259e-07, -6.200293015128450773e-07, -6.187743897903865212e-07, -6.175186710264477401e-07, -6.162621474014926047e-07, -6.150048210969568501e-07, -6.137466942952859805e-07, -6.124877691797208642e-07, -6.112280479346208763e-07, -6.099675327452410236e-07, -6.087062257977818131e-07, -6.074441292794402864e-07, -6.061812453781957199e-07, -6.049175762831173096e-07, -6.036531241841562245e-07, -6.023878912721886996e-07, -6.011218797390186826e-07, -5.998550917774228329e-07, -5.985875295809301867e-07, -5.973191953441457237e-07, -5.960500912625357506e-07, -5.947802195324638993e-07, -5.935095823511984330e-07, -5.922381819169606328e-07, -5.909660204287009694e-07, -5.896931000864269047e-07, -5.884194230909717576e-07, -5.871449916440622552e-07, -5.858698079483501903e-07, -5.845938742072014044e-07, -5.833171926250189312e-07, -5.820397654070162028e-07, -5.807615947592724251e-07, -5.794826828887290833e-07, -5.782030320032373762e-07, -5.769226443113377755e-07, -5.756415220225831693e-07, -5.743596673473178917e-07, -5.730770824967294985e-07, -5.717937696828393432e-07, -5.705097311185629288e-07, -5.692249690174205396e-07, -5.679394855941543049e-07, -5.666532830639331529e-07, -5.653663636429699799e-07, -5.640787295482937982e-07, -5.627903829975787417e-07, -5.615013262094170224e-07, -5.602115614033715516e-07, -5.589210907994743913e-07, -5.576299166187745723e-07, -5.563380410831144776e-07, -5.550454664149009320e-07, -5.537521948377212064e-07, -5.524582285755486069e-07, -5.511635698533596443e-07, -5.498682208969037472e-07, -5.485721839325369254e-07, -5.472754611874881621e-07, -5.459780548899201885e-07, -5.446799672684188286e-07, -5.433812005525471709e-07, -5.420817569726209984e-07, -5.407816387594777605e-07, -5.394808481450397442e-07, -5.381793873617979130e-07, -5.368772586428678116e-07, -5.355744642222638981e-07, -5.342710063347329968e-07, -5.329668872155191401e-07, -5.316621091009811617e-07, -5.303566742278070736e-07, -5.290505848336169414e-07, -5.277438431567442446e-07, -5.264364514360006123e-07, -5.251284119112419598e-07, -5.238197268228501038e-07, -5.225103984117906783e-07, -5.212004289198875738e-07, -5.198898205896004845e-07, -5.185785756640670489e-07, -5.172666963871644711e-07, -5.159541850032735161e-07, -5.146410437576185938e-07, -5.133272748960347191e-07, -5.120128806650229924e-07, -5.106978633117443526e-07, -5.093822250840738934e-07, -5.080659682303694113e-07, -5.067490949998066192e-07, -5.054316076421521411e-07, -5.041135084078148639e-07, -5.027947995478394786e-07, -5.014754833139651371e-07, -5.001555619583868013e-07, -4.988350377340996672e-07, -4.975139128946630548e-07, -4.961921896942572652e-07, -4.948698703877342965e-07, -4.935469572303848041e-07, -4.922234524782783960e-07, -4.908993583880372634e-07, -4.895746772168766264e-07, -4.882494112226108750e-07, -4.869235626637049205e-07, -4.855971337990388262e-07, -4.842701268882512795e-07, -4.829425441915019987e-07, -4.816143879695328256e-07, -4.802856604836561844e-07, -4.789563639958123628e-07, -4.776265007683323422e-07, -4.762960730642867225e-07, -4.749650831472443711e-07, -4.736335332813286440e-07, -4.723014257312702199e-07, -4.709687627621795130e-07, -4.696355466398763807e-07, -4.683017796306652358e-07, -4.669674640013867162e-07, -4.656326020194119670e-07, -4.642971959526996566e-07, -4.629612480695569545e-07, -4.616247606389878206e-07, -4.602877359304533480e-07, -4.589501762139261317e-07, -4.576120837598906924e-07, -4.562734608393933452e-07, -4.549343097237489149e-07, -4.535946326851779689e-07, -4.522544319959872076e-07, -4.509137099292077561e-07, -4.495724687583543425e-07, -4.482307107572509146e-07, -4.468884382003157731e-07, -4.455456533626182160e-07, -4.442023585193472909e-07, -4.428585559463947649e-07, -4.415142479201134558e-07, -4.401694367170843510e-07, -4.388241246147515114e-07, -4.374783138906033613e-07, -4.361320068228095512e-07, -4.347852056899841593e-07, -4.334379127710052732e-07, -4.320901303453091226e-07, -4.307418606929372477e-07, -4.293931060940087984e-07, -4.280438688293025514e-07, -4.266941511800221234e-07, -4.253439554275513903e-07, -4.239932838540402634e-07, -4.226421387418724350e-07, -4.212905223737256768e-07, -4.199384370328509900e-07, -4.185858850029000753e-07, -4.172328685676830816e-07, -4.158793900118164270e-07, -4.145254516198892132e-07, -4.131710556771098286e-07, -4.118162044690686204e-07, -4.104609002814941614e-07, -4.091051454008419371e-07, -4.077489421137588627e-07, -4.063922927071378104e-07, -4.050351994684099419e-07, -4.036776646853029335e-07, -4.023196906459018563e-07, -4.009612796386975102e-07, -3.996024339523467666e-07, -3.982431558760301221e-07, -3.968834476992034117e-07, -3.955233117116586897e-07, -3.941627502035169241e-07, -3.928017654652861236e-07, -3.914403597876201987e-07, -3.900785354616670915e-07, -3.887162947788329836e-07, -3.873536400308341234e-07, -3.859905735096955030e-07, -3.846270975078048560e-07, -3.832632143176693482e-07, -3.818989262322750360e-07, -3.805342355448381046e-07, -3.791691445488638419e-07, -3.778036555382014312e-07, -3.764377708068032879e-07, -3.750714926490764195e-07, -3.737048233596433503e-07, -3.723377652333933672e-07, -3.709703205654865959e-07, -3.696024916513997933e-07, -3.682342807866908730e-07, -3.668656902673508469e-07, -3.654967223895621036e-07, -3.641273794497540475e-07, -3.627576637445968523e-07, -3.613875775710633470e-07, -3.600171232261788766e-07, -3.586463030073827737e-07, -3.572751192122796480e-07, -3.559035741387000024e-07, -3.545316700847537017e-07, -3.531594093485856039e-07, -3.517867942286766273e-07, -3.504138270238949431e-07, -3.490405100329515978e-07, -3.476668455550021714e-07, -3.462928358893977498e-07, -3.449184833355022830e-07, -3.435437901930525745e-07, -3.421687587619069770e-07, -3.407933913421108786e-07, -3.394176902339461485e-07, -3.380416577376875089e-07, -3.366652961539024909e-07, -3.352886077835065443e-07, -3.339115949272158013e-07, -3.325342598861455587e-07, -3.311566049615725257e-07, -3.297786324547381540e-07, -3.284003446671561104e-07, -3.270217439006639988e-07, -3.256428324568771830e-07, -3.242636126377918209e-07, -3.228840867455340899e-07, -3.215042570821187828e-07, -3.201241259501105226e-07, -3.187436956517707472e-07, -3.173629684897205662e-07, -3.159819467666962325e-07, -3.146006327853598838e-07, -3.132190288486054799e-07, -3.118371372596060252e-07, -3.104549603212757556e-07, -3.090725003368618966e-07, -3.076897596097044768e-07, -3.063067404429889415e-07, -3.049234451404083203e-07, -3.035398760053107415e-07, -3.021560353413626592e-07, -3.007719254522445564e-07, -2.993875486417643944e-07, -2.980029072135522048e-07, -2.966180034717237397e-07, -2.952328397200277211e-07, -2.938474182625088561e-07, -2.924617414032617209e-07, -2.910758114461824744e-07, -2.896896306955767096e-07, -2.883032014556034833e-07, -2.869165260303361958e-07, -2.855296067240601116e-07, -2.841424458410282550e-07, -2.827550456855159908e-07, -2.813674085618778813e-07, -2.799795367743055411e-07, -2.785914326271799491e-07, -2.772030984248942080e-07, -2.758145364715991685e-07, -2.744257490718136646e-07, -2.730367385298702358e-07, -2.716475071499720901e-07, -2.702580572364943836e-07, -2.688683910937383154e-07, -2.674785110259853384e-07, -2.660884193374950415e-07, -2.646981183325625888e-07, -2.633076103152703804e-07, -2.619168975898497883e-07, -2.605259824604343523e-07, -2.591348672311188073e-07, -2.577435542060117586e-07, -2.563520456889909419e-07, -2.549603439840646419e-07, -2.535684513951256822e-07, -2.521763702260053176e-07, -2.507841027804719637e-07, -2.493916513622899067e-07, -2.479990182749655643e-07, -2.466062058221168451e-07, -2.452132163072198851e-07, -2.438200520336706703e-07, -2.424267153048382401e-07, -2.410332084238204776e-07, -2.396395336938021928e-07, -2.382456934178136385e-07, -2.368516898987819412e-07, -2.354575254395285336e-07, -2.340632023428295588e-07, -2.326687229111631099e-07, -2.312740894470153799e-07, -2.298793042529349247e-07, -2.284843696309816413e-07, -2.270892878833312058e-07, -2.256940613120286658e-07, -2.242986922187998699e-07, -2.229031829054174652e-07, -2.215075356734494345e-07, -2.201117528243170121e-07, -2.187158366593548233e-07, -2.173197894795593154e-07, -2.159236135858915985e-07, -2.145273112793367380e-07, -2.131308848603461948e-07, -2.117343366294488011e-07, -2.103376688870012562e-07, -2.089408839329987880e-07, -2.075439840674442477e-07, -2.061469715900930733e-07, -2.047498488005134560e-07, -2.033526179980841953e-07, -2.019552814820498362e-07, -2.005578415512110254e-07, -1.991603005045956793e-07, -1.977626606405981599e-07, -1.963649242576463401e-07, -1.949670936539565991e-07, -1.935691711273425256e-07, -1.921711589755208819e-07, -1.907730594961683020e-07, -1.893748749863637852e-07, -1.879766077432006775e-07, -1.865782600635375643e-07, -1.851798342437456167e-07, -1.837813325803862174e-07, -1.823827573693406348e-07, -1.809841109064874106e-07, -1.795853954873886142e-07, -1.781866134073482079e-07, -1.767877669614100621e-07, -1.753888584444121122e-07, -1.739898901507396075e-07, -1.725908643746890705e-07, -1.711917834102819765e-07, -1.697926495510106166e-07, -1.683934650904555323e-07, -1.669942323217235356e-07, -1.655949535375073980e-07, -1.641956310303884533e-07, -1.627962670925896080e-07, -1.613968640160291280e-07, -1.599974240923828688e-07, -1.585979496128302717e-07, -1.571984428684222144e-07, -1.557989061498938430e-07, -1.543993417474110180e-07, -1.529997519511855514e-07, -1.516001390509162446e-07, -1.502005053358456391e-07, -1.488008530950661667e-07, -1.474011846172687388e-07, -1.460015021908020919e-07, -1.446018081036664881e-07, -1.432021046435750452e-07, -1.418023940977002622e-07, -1.404026787530422935e-07, -1.390029608961784915e-07, -1.376032428133201053e-07, -1.362035267903716256e-07, -1.348038151126799571e-07, -1.334041100654004958e-07, -1.320044139332467247e-07, -1.306047290005490032e-07, -1.292050575512499085e-07, -1.278054018689632365e-07, -1.264057642367214274e-07, -1.250061469373459837e-07, -1.236065522531929635e-07, -1.222069824662133312e-07, -1.208074398580102912e-07, -1.194079267095885397e-07, -1.180084453017213876e-07, -1.166089979147001970e-07, -1.152095868283920196e-07, -1.138102143222368699e-07, -1.124108826753042388e-07, -1.110115941660432843e-07, -1.096123510725886376e-07, -1.082131556728177095e-07, -1.068140102437908153e-07, -1.054149170623658295e-07, -1.040158784049483374e-07, -1.026168965472996897e-07, -1.012179737649073142e-07, -9.981911233273219502e-08, -9.842031452526742281e-08, -9.702158261659664061e-08, -9.562291888014144256e-08, -9.422432558896995857e-08, -9.282580501585271881e-08, -9.142735943270247380e-08, -9.002899111118980204e-08, -8.863070232249257353e-08, -8.723249533710478507e-08, -8.583437242520606512e-08, -8.443633585640960207e-08, -8.303838789982097336e-08, -8.164053082403402943e-08, -8.024276689718850517e-08, -7.884509838665832502e-08, -7.744752755972860735e-08, -7.605005668272392189e-08, -7.465268802168733231e-08, -7.325542384212898616e-08, -7.185826640883540020e-08, -7.046121798617644359e-08, -6.906428083816435230e-08, -6.766745722789070370e-08, -6.627074941814414171e-08, -6.487415967115813314e-08, -6.347769024835910766e-08, -6.208134341104583120e-08, -6.068512141951637969e-08, -5.928902653374783002e-08, -5.789306101314382441e-08, -5.649722711628315378e-08, -5.510152710153666250e-08, -5.370596322650471918e-08, -5.231053774807669432e-08, -5.091525292273636859e-08, -4.952011100637293200e-08, -4.812511425402893868e-08, -4.673026492051754239e-08, -4.533556525985982845e-08, -4.394101752534372886e-08, -4.254662396983103859e-08, -4.115238684550469547e-08, -3.975830840392772827e-08, -3.836439089610199986e-08, -3.697063657221587734e-08, -3.557704768201338625e-08, -3.418362647460434946e-08, -3.279037519821232204e-08, -3.139729610079210477e-08, -3.000439142946712238e-08, -2.861166343058817649e-08, -2.721911435004022708e-08, -2.582674643299029430e-08, -2.443456192394626437e-08, -2.304256306681518602e-08, -2.165075210465170163e-08, -2.025913128002650993e-08, -1.886770283477476411e-08, -1.747646901005449059e-08, -1.608543204634314802e-08, -1.469459418349590042e-08, -1.330395766049424533e-08, -1.191352471581429608e-08, -1.052329758717540492e-08, -9.133278511598391602e-09, -7.743469725402161829e-09, -6.353873464262067346e-09, -4.964491962958507549e-09, -3.575327455745166310e-09, -2.186382176097613585e-09, -7.976583567717733370e-10, 5.908417701377671631e-10, 1.979115973448981391e-09, 3.367162022524315022e-09, 4.754977687521984331e-09, 6.142560739337576313e-09, 7.529908949607547654e-09, 8.917020090650911395e-09, 1.030389193572032843e-08, 1.169052225863420488e-08, 1.307690883402781913e-08, 1.446304943729502386e-08, 1.584894184459165559e-08, 1.723458383277724170e-08, 1.861997317966599674e-08, 2.000510766365912579e-08, 2.138998506399581754e-08, 2.277460316069478574e-08, 2.415895973449604894e-08, 2.554305256711175815e-08, 2.692687944092052046e-08, 2.831043813890902993e-08, 2.969372644523222762e-08, 3.107674214459823000e-08, 3.245948302251932196e-08, 3.384194686550071616e-08, 3.522413146067358923e-08, 3.660603459604534029e-08, 3.798765406044141037e-08, 3.936898764344704893e-08, 4.075003313565816131e-08, 4.213078832837528499e-08, 4.351125101354604430e-08, 4.489141898432381499e-08, 4.627129003445408191e-08, 4.765086195852488947e-08, 4.903013255215505501e-08, 5.040909961168987219e-08, 5.178776093414215619e-08, 5.316611431775123916e-08, 5.454415756136942051e-08, 5.592188846471247037e-08, 5.729930482860935867e-08, 5.867640445432760003e-08, 6.005318514444059564e-08, 6.142964470215152893e-08, 6.280578093154438511e-08, 6.418159163783360747e-08, 6.555707462675165293e-08, 6.693222770510659110e-08, 6.830704868072387082e-08, 6.968153536214206327e-08, 7.105568555880147236e-08, 7.242949708129269922e-08, 7.380296774068392599e-08, 7.517609534938567025e-08, 7.654887772047731447e-08, 7.792131266801796703e-08, 7.929339800698891701e-08, 8.066513155329677078e-08, 8.203651112371525822e-08, 8.340753453613465748e-08, 8.477819960919626049e-08, 8.614850416248036141e-08, 8.751844601675603865e-08, 8.888802299336880304e-08, 9.025723291479772046e-08, 9.162607360459807832e-08, 9.299454288709638755e-08, 9.436263858764013818e-08, 9.573035853253947316e-08, 9.709770054900977547e-08, 9.846466246541999429e-08, 9.983124211092798412e-08, 1.011974373157297707e-07, 1.025632459110011322e-07, 1.039286657289006034e-07, 1.052936946025125925e-07, 1.066583303660952173e-07, 1.080225708547163194e-07, 1.093864139045010360e-07, 1.107498573525760017e-07, 1.121128990370703940e-07, 1.134755367970597644e-07, 1.148377684728129751e-07, 1.161995919054289804e-07, 1.175610049370855240e-07, 1.189220054109804813e-07, 1.202825911712739442e-07, 1.216427600633374468e-07, 1.230025099333890666e-07, 1.243618386287421609e-07, 1.257207439977465903e-07, 1.270792238897934047e-07, 1.284372761552568470e-07, 1.297948986457404700e-07, 1.311520892137167232e-07, 1.325088457127720634e-07, 1.338651659975505739e-07, 1.352210479237571937e-07, 1.365764893480993519e-07, 1.379314881285349894e-07, 1.392860421239102139e-07, 1.406401491942052047e-07, 1.419938072004787049e-07, 1.433470140048080412e-07, 1.446997674705378075e-07, 1.460520654619783743e-07, 1.474039058443470989e-07, 1.487552864843214909e-07, 1.501062052494316518e-07, 1.514566600083106787e-07, 1.528066486308754530e-07, 1.541561689879687689e-07, 1.555052189516045762e-07, 1.568537963949108581e-07, 1.582018991920711863e-07, 1.595495252185722398e-07, 1.608966723509039284e-07, 1.622433384664993599e-07, 1.635895214442865493e-07, 1.649352191640852782e-07, 1.662804295068513586e-07, 1.676251503549229865e-07, 1.689693795914191106e-07, 1.703131151007859272e-07, 1.716563547687427762e-07, 1.729990964819783207e-07, 1.743413381283391708e-07, 1.756830775970734322e-07, 1.770243127781682730e-07, 1.783650415632012982e-07, 1.797052618446769787e-07, 1.810449715162748580e-07, 1.823841684730891574e-07, 1.837228506110338404e-07, 1.850610158273845557e-07, 1.863986620207246911e-07, 1.877357870906456835e-07, 1.890723889379311417e-07, 1.904084654648002633e-07, 1.917440145742521515e-07, 1.930790341709073421e-07, 1.944135221603509829e-07, 1.957474764494386649e-07, 1.970808949462356219e-07, 1.984137755600232944e-07, 1.997461162012403289e-07, 2.010779147817296465e-07, 2.024091692143758602e-07, 2.037398774132923364e-07, 2.050700372940641350e-07, 2.063996467731500037e-07, 2.077287037684271265e-07, 2.090572061991318310e-07, 2.103851519855669917e-07, 2.117125390493404433e-07, 2.130393653133108498e-07, 2.143656287015310859e-07, 2.156913271394898793e-07, 2.170164585537569573e-07, 2.183410208721650526e-07, 2.196650120240511754e-07, 2.209884299396656758e-07, 2.223112725507086006e-07, 2.236335377902765953e-07, 2.249552235925660188e-07, 2.262763278931146919e-07, 2.275968486287462844e-07, 2.289167837375719297e-07, 2.302361311589373646e-07, 2.315548888336608135e-07, 2.328730547036780017e-07, 2.341906267122885365e-07, 2.355076028040938353e-07, 2.368239809249448481e-07, 2.381397590221816087e-07, 2.394549350442774809e-07, 2.407695069410864395e-07, 2.420834726637796483e-07, 2.433968301648513631e-07, 2.447095773980633715e-07, 2.460217123186860268e-07, 2.473332328831431296e-07, 2.486441370492536492e-07, 2.499544227761776733e-07, 2.512640880243547325e-07, 2.525731307557491227e-07, 2.538815489334961098e-07, 2.551893405221403698e-07, 2.564965034875819901e-07, 2.578030357970776873e-07, 2.591089354191874438e-07, 2.604142003240116778e-07, 2.617188284828992807e-07, 2.630228178683911312e-07, 2.643261664547578551e-07, 2.656288722174079612e-07, 2.669309331331305158e-07, 2.682323471802731792e-07, 2.695331123383934921e-07, 2.708332265884962040e-07, 2.721326879129764161e-07, 2.734314942955661123e-07, 2.747296437215717516e-07, 2.760271341775823603e-07, 2.773239636514147913e-07, 2.786201301326473559e-07, 2.799156316120304999e-07, 2.812104660817299025e-07, 2.825046315355614218e-07, 2.837981259683490969e-07, 2.850909473767511638e-07, 2.863830937586150929e-07, 2.876745631132762735e-07, 2.889653534414437709e-07, 2.902554627454941935e-07, 2.915448890288327124e-07, 2.928336302967130421e-07, 2.941216845556008427e-07, 2.954090498134070768e-07, 2.966957240797249678e-07, 2.979817053652540697e-07, 2.992669916823201341e-07, 3.005515810448275700e-07, 3.018354714679652063e-07, 3.031186609683883504e-07, 3.044011475644531519e-07, 3.056829292755758751e-07, 3.069640041230590208e-07, 3.082443701294458342e-07, 3.095240253187594861e-07, 3.108029677167393945e-07, 3.120811953502614840e-07, 3.133587062478657816e-07, 3.146354984396977589e-07, 3.159115699572251591e-07, 3.171869188334155033e-07, 3.184615431029646299e-07, 3.197354408017277013e-07, 3.210086099672375340e-07, 3.222810486386554187e-07, 3.235527548564791578e-07, 3.248237266627796531e-07, 3.260939621011495538e-07, 3.273634592166415822e-07, 3.286322160560088263e-07, 3.299002306673557623e-07, 3.311675011003776470e-07, 3.324340254063004318e-07, 3.336998016378873271e-07, 3.349648278493856506e-07, 3.362291020967526681e-07, 3.374926224373218618e-07, 3.387553869300301478e-07, 3.400173936353652531e-07, 3.412786406153130416e-07, 3.425391259335855774e-07, 3.437988476552842702e-07, 3.450578038471313274e-07, 3.463159925774127381e-07, 3.475734119159819786e-07, 3.488300599342090320e-07, 3.500859347052079222e-07, 3.513410343034989064e-07, 3.525953568052377570e-07, 3.538489002881655739e-07, 3.551016628316089443e-07, 3.563536425164228731e-07, 3.576048374252296467e-07, 3.588552456420705434e-07, 3.601048652526440614e-07, 3.613536943442466796e-07, 3.626017310057224589e-07, 3.638489733276929060e-07, 3.650954194022152485e-07, 3.663410673230168510e-07, 3.675859151854380937e-07, 3.688299610864387779e-07, 3.700732031245397867e-07, 3.713156394000566539e-07, 3.725572680147605929e-07, 3.737980870721092592e-07, 3.750380946771887295e-07, 3.762772889367228184e-07, 3.775156679590133632e-07, 3.787532298541738986e-07, 3.799899727337880379e-07, 3.812258947111486011e-07, 3.824609939011893227e-07, 3.836952684204428707e-07, 3.849287163872641988e-07, 3.861613359215520310e-07, 3.873931251446975103e-07, 3.886240821800905131e-07, 3.898542051525615598e-07, 3.910834921886108844e-07, 3.923119414166326869e-07, 3.935395509663028337e-07, 3.947663189693661222e-07, 3.959922435590228702e-07, 3.972173228702107128e-07, 3.984415550394963414e-07, 3.996649382053605829e-07, 4.008874705075791130e-07, 4.021091500880157023e-07, 4.033299750900037765e-07, 4.045499436585775508e-07, 4.057690539406956460e-07, 4.069873040846858588e-07, 4.082046922407489346e-07, 4.094212165609121394e-07, 4.106368751987411630e-07, 4.118516663095230777e-07, 4.130655880504798967e-07, 4.142786385801704102e-07, 4.154908160592631554e-07, 4.167021186499303649e-07, 4.179125445160747069e-07, 4.191220918235528483e-07, 4.203307587396215488e-07, 4.215385434334415923e-07, 4.227454440760251648e-07, 4.239514588399595102e-07, 4.251565858995772895e-07, 4.263608234311828449e-07, 4.275641696124975517e-07, 4.287666226231615793e-07, 4.299681806446820638e-07, 4.311688418601601515e-07, 4.323686044545119683e-07, 4.335674666144192804e-07, 4.347654265282742784e-07, 4.359624823864062641e-07, 4.371586323807498784e-07, 4.383538747050687713e-07, 4.395482075549055735e-07, 4.407416291275832204e-07, 4.419341376221516944e-07, 4.431257312396098420e-07, 4.443164081825851953e-07, 4.455061666555450947e-07, 4.466950048647548670e-07, 4.478829210182181095e-07, 4.490699133259016299e-07, 4.502559799994121447e-07, 4.514411192522107905e-07, 4.526253292995697128e-07, 4.538086083585687316e-07, 4.549909546480456838e-07, 4.561723663888135811e-07, 4.573528418033420199e-07, 4.585323791159752923e-07, 4.597109765528774879e-07, 4.608886323420379462e-07, 4.620653447132236114e-07, 4.632411118981902079e-07, 4.644159321303634917e-07, 4.655898036450611725e-07, 4.667627246794376453e-07, 4.679346934724338033e-07, 4.691057082649936139e-07, 4.702757672997519869e-07, 4.714448688212380096e-07, 4.726130110758354538e-07, 4.737801923117817169e-07, 4.749464107791150943e-07, 4.761116647298951140e-07, 4.772759524178801870e-07, 4.784392720987448718e-07, 4.796016220300354582e-07, 4.807630004711610728e-07, 4.819234056833516457e-07, 4.830828359299229254e-07, 4.842412894756963677e-07, 4.853987645877419828e-07, 4.865552595347999184e-07, 4.877107725874974057e-07, 4.888653020185029193e-07, 4.900188461022715382e-07, 4.911714031149860766e-07, 4.923229713350471990e-07, 4.934735490425364005e-07, 4.946231345194362360e-07, 4.957717260498401723e-07, 4.969193219193804176e-07, 4.980659204159615573e-07, 4.992115198291865843e-07, 5.003561184505709857e-07, 5.014997145737028322e-07, 5.026423064939801985e-07, 5.037838925085635167e-07, 5.049244709168495980e-07, 5.060640400199513422e-07, 5.072025981209047316e-07, 5.083401435248863066e-07, 5.094766745386886406e-07, 5.106121894711964783e-07, 5.117466866333336904e-07, 5.128801643378105401e-07, 5.140126208992731845e-07, 5.151440546345234793e-07, 5.162744638619436321e-07, 5.174038469022274034e-07, 5.185322020778139710e-07, 5.196595277130941823e-07, 5.207858221346225247e-07, 5.219110836706025528e-07, 5.230353106513513801e-07, 5.241585014092559511e-07, 5.252806542785085550e-07, 5.264017675953250429e-07, 5.275218396978914643e-07, 5.286408689263112338e-07, 5.297588536228254655e-07, 5.308757921314893003e-07, 5.319916827983935109e-07, 5.331065239716135744e-07, 5.342203140012027895e-07, 5.353330512391572311e-07, 5.364447340396131087e-07, 5.375553607585415166e-07, 5.386649297539687692e-07, 5.397734393859054609e-07, 5.408808880163702899e-07, 5.419872740093269536e-07, 5.430925957308990835e-07, 5.441968515490608661e-07, 5.453000398338458371e-07, 5.464021589573011411e-07, 5.475032072934338509e-07, 5.486031832184182794e-07, 5.497020851102945408e-07, 5.507999113491745924e-07, 5.518966603171911999e-07, 5.529923303984999499e-07, 5.540869199792395448e-07, 5.551804274477234439e-07, 5.562728511941461551e-07, 5.573641896107885344e-07, 5.584544410919660107e-07, 5.595436040340321861e-07, 5.606316768353319313e-07, 5.617186578964024499e-07, 5.628045456196812640e-07, 5.638893384096953142e-07, 5.649730346730269725e-07, 5.660556328182593026e-07, 5.671371312561808303e-07, 5.682175283994848467e-07, 5.692968226629732256e-07, 5.703750124635123777e-07, 5.714520962200308154e-07, 5.725280723534710837e-07, 5.736029392869961187e-07, 5.746766954456868565e-07, 5.757493392567477449e-07, 5.768208691494587802e-07, 5.778912835551240496e-07, 5.789605809072834898e-07, 5.800287596414507300e-07, 5.810958181950765639e-07, 5.821617550079971358e-07, 5.832265685219381087e-07, 5.842902571807140347e-07, 5.853528194303794447e-07, 5.864142537189896671e-07, 5.874745584965435476e-07, 5.885337322154366114e-07, 5.895917733299697845e-07, 5.906486802965462226e-07, 5.917044515738712114e-07, 5.927590856224149353e-07, 5.938125809051017509e-07, 5.948649358867699916e-07, 5.959161490343739851e-07, 5.969662188171319663e-07, 5.980151437062806496e-07, 5.990629221750323479e-07, 6.001095526990161709e-07, 6.011550337557894987e-07, 6.021993638250399994e-07, 6.032425413887776936e-07, 6.042845649308013237e-07, 6.053254329373864624e-07, 6.063651438967510347e-07, 6.074036962992979931e-07, 6.084410886375181204e-07, 6.094773194062480571e-07, 6.105123871021214242e-07, 6.115462902242593665e-07, 6.125790272737394634e-07, 6.136105967537867345e-07, 6.146409971699765039e-07, 6.156702270297464037e-07, 6.166982848428340781e-07, 6.177251691212409726e-07, 6.187508783789745186e-07, 6.197754111322589385e-07, 6.207987658994844239e-07, 6.218209412011592782e-07, 6.228419355601039928e-07, 6.238617475011659032e-07, 6.248803755514201475e-07, 6.258978182401116445e-07, 6.269140740986637758e-07, 6.279291416606327521e-07, 6.289430194618995717e-07, 6.299557060403866884e-07, 6.309671999362467935e-07, 6.319774996918260763e-07, 6.329866038516577650e-07, 6.339945109624194576e-07, 6.350012195731224336e-07, 6.360067282348361571e-07, 6.370110355008740937e-07, 6.380141399267489246e-07, 6.390160400701262768e-07, 6.400167344910249408e-07, 6.410162217515179735e-07, 6.420145004159420219e-07, 6.430115690508393005e-07, 6.440074262249630977e-07, 6.450020705092382825e-07, 6.459955004769419344e-07, 6.469877147034321871e-07, 6.479787117663313990e-07, 6.489684902454851785e-07, 6.499570487229619600e-07, 6.509443857830088526e-07, 6.519305000122415872e-07, 6.529153899993676425e-07, 6.538990543353678278e-07, 6.548814916134627192e-07, 6.558627004290570733e-07, 6.568426793799352796e-07, 6.578214270660259918e-07, 6.587989420893619991e-07, 6.597752230544966491e-07, 6.607502685680412619e-07, 6.617240772388615356e-07, 6.626966476782013193e-07, 6.636679784994222562e-07, 6.646380683181850487e-07, 6.656069157524032951e-07, 6.665745194222019848e-07, 6.675408779500989755e-07, 6.685059899607899524e-07, 6.694698540810879713e-07, 6.704324689403449633e-07, 6.713938331699979372e-07, 6.723539454037533145e-07, 6.733128042777195966e-07, 6.742704084301907356e-07, 6.752267565015930890e-07, 6.761818471349070305e-07, 6.771356789752019288e-07, 6.780882506698328710e-07, 6.790395608686103867e-07, 6.799896082233157337e-07, 6.809383913883275964e-07, 6.818859090201325004e-07, 6.828321597775094662e-07, 6.837771423216529345e-07, 6.847208553159694787e-07, 6.856632974260170296e-07, 6.866044673199203457e-07, 6.875443636679255795e-07, 6.884829851425740251e-07, 6.894203304188861362e-07, 6.903563981738776585e-07, 6.912911870871777520e-07, 6.922246958405419468e-07, 6.931569231180826426e-07, 6.940878676061738167e-07, 6.950175279936788763e-07, 6.959459029714644617e-07, 6.968729912330283092e-07, 6.977987914740013016e-07, 6.987233023923331803e-07, 6.996465226884726458e-07, 7.005684510649273238e-07, 7.014890862266583769e-07, 7.024084268810403761e-07, 7.033264717376493314e-07, 7.042432195084259568e-07, 7.051586689076466596e-07, 7.060728186518772714e-07, 7.069856674601443603e-07, 7.078972140536855682e-07, 7.088074571560740185e-07, 7.097163954933902636e-07, 7.106240277938069220e-07, 7.115303527879632774e-07, 7.124353692089282221e-07, 7.133390757919900862e-07, 7.142414712748274210e-07, 7.151425543974670707e-07, 7.160423239022886196e-07, 7.169407785339850046e-07, 7.178379170397269458e-07, 7.187337381689157188e-07, 7.196282406733528787e-07, 7.205214233071965322e-07, 7.214132848269324324e-07, 7.223038239915276098e-07, 7.231930395621865323e-07, 7.240809303025334290e-07, 7.249674949785480220e-07, 7.258527323585838431e-07, 7.267366412133266235e-07, 7.276192203159556535e-07, 7.285004684419015310e-07, 7.293803843690117568e-07, 7.302589668775147351e-07, 7.311362147499741402e-07, 7.320121267714583227e-07, 7.328867017292938231e-07, 7.337599384132323429e-07, 7.346318356154141110e-07, 7.355023921303606832e-07, 7.363716067549520729e-07, 7.372394782885713816e-07, 7.381060055329136874e-07, 7.389711872919508927e-07, 7.398350223722880078e-07, 7.406975095827654691e-07, 7.415586477346257921e-07, 7.424184356416266511e-07, 7.432768721198138738e-07, 7.441339559876710490e-07, 7.449896860660837388e-07, 7.458440611783100450e-07, 7.466970801501323332e-07, 7.475487418096601920e-07, 7.483990449872943285e-07, 7.492479885160938623e-07, 7.500955712313649859e-07, 7.509417919708292061e-07, 7.517866495747474345e-07, 7.526301428856783713e-07, 7.534722707486359476e-07, 7.543130320110628555e-07, 7.551524255228161488e-07, 7.559904501361451141e-07, 7.568271047058794178e-07, 7.576623880889970137e-07, 7.584962991451854083e-07, 7.593288367364000386e-07, 7.601599997270302908e-07, 7.609897869840151203e-07, 7.618181973766537400e-07, 7.626452297765553271e-07, 7.634708830580103420e-07, 7.642951560975844813e-07, 7.651180477742881904e-07, 7.659395569697281767e-07, 7.667596825676778577e-07, 7.675784234546364032e-07, 7.683957785193857364e-07, 7.692117466531593060e-07, 7.700263267497891517e-07, 7.708395177053325746e-07, 7.716513184184070330e-07, 7.724617277901666370e-07, 7.732707447240983314e-07, 7.740783681261525505e-07, 7.748845969048843548e-07, 7.756894299710781955e-07, 7.764928662380956217e-07, 7.772949046218323990e-07, 7.780955440405370331e-07, 7.788947834149547650e-07, 7.796926216683033249e-07, 7.804890577262225339e-07, 7.812840905169388398e-07, 7.820777189710325949e-07, 7.828699420215540997e-07, 7.836607586041795627e-07, 7.844501676568288768e-07, 7.852381681200114205e-07, 7.860247589367931293e-07, 7.868099390525962789e-07, 7.875937074153667733e-07, 7.883760629755231119e-07, 7.891570046859361662e-07, 7.899365315020648108e-07, 7.907146423817432126e-07, 7.914913362853324495e-07, 7.922666121756702179e-07, 7.930404690180941259e-07, 7.938129057803826132e-07, 7.945839214329222397e-07, 7.953535149484816334e-07, 7.961216853023520987e-07, 7.968884314723320514e-07, 7.976537524387027724e-07, 7.984176471842132676e-07, 7.991801146942170632e-07, 7.999411539564605533e-07, 8.007007639612240313e-07, 8.014589437012921492e-07, 8.022156921719123075e-07, 8.029710083709555911e-07, 8.037248912986786474e-07, 8.044773399578856811e-07, 8.052283533538892792e-07, 8.059779304945118934e-07, 8.067260703900483584e-07, 8.074727720534127467e-07, 8.082180344999321157e-07, 8.089618567474714457e-07, 8.097042378164218863e-07, 8.104451767296822287e-07, 8.111846725126409052e-07, 8.119227241933056921e-07, 8.126593308021056089e-07, 8.133944913720142684e-07, 8.141282049385437348e-07, 8.148604705396818442e-07, 8.155912872160520812e-07, 8.163206540107309381e-07, 8.170485699692220799e-07, 8.177750341397590531e-07, 8.185000455729724013e-07, 8.192236033220224382e-07, 8.199457064427034320e-07, 8.206663539932366124e-07, 8.213855450344148009e-07, 8.221032786295664121e-07, 8.228195538445523833e-07, 8.235343697477384342e-07, 8.242477254101712495e-07, 8.249596199051890558e-07, 8.256700523089142769e-07, 8.263790216998757571e-07, 8.270865271591385694e-07, 8.277925677704236584e-07, 8.284971426199212815e-07, 8.292002507962647510e-07, 8.299018913908494475e-07, 8.306020634974734667e-07, 8.313007662124832029e-07, 8.319979986349188268e-07, 8.326937598661264506e-07, 8.333880490102464420e-07, 8.340808651738370245e-07, 8.347722074660129788e-07, 8.354620749985737564e-07, 8.361504668856788546e-07, 8.368373822441430067e-07, 8.375228201934072782e-07, 8.382067798553774941e-07, 8.388892603545101077e-07, 8.395702608179640305e-07, 8.402497803752603376e-07, 8.409278181585846577e-07, 8.416043733027473629e-07, 8.422794449450331145e-07, 8.429530322253229414e-07, 8.436251342860637473e-07, 8.442957502722403580e-07, 8.449648793315106239e-07, 8.456325206139966258e-07, 8.462986732723958482e-07, 8.469633364621101400e-07, 8.476265093409163247e-07, 8.482881910692662617e-07, 8.489483808102486240e-07, 8.496070777294399260e-07, 8.502642809950174972e-07, 8.509199897777407407e-07, 8.515742032509144999e-07, 8.522269205905232066e-07, 8.528781409750326758e-07, 8.535278635855262660e-07, 8.541760876056647511e-07, 8.548228122217037904e-07, 8.554680366224409892e-07, 8.561117599993603177e-07, 8.567539815464376110e-07, 8.573947004602625423e-07, 8.580339159400203052e-07, 8.586716271874799677e-07, 8.593078334069755189e-07, 8.599425338055217019e-07, 8.605757275926305242e-07, 8.612074139804397956e-07, 8.618375921836809410e-07, 8.624662614196510477e-07, 8.630934209083307096e-07, 8.637190698722057262e-07, 8.643432075363953226e-07, 8.649658331286114916e-07, 8.655869458791635468e-07, 8.662065450209344053e-07, 8.668246297894983259e-07, 8.674411994229341374e-07, 8.680562531619583298e-07, 8.686697902498915955e-07, 8.692818099326561827e-07, 8.698923114587486848e-07, 8.705012940793606361e-07, 8.711087570482004236e-07, 8.717146996216130360e-07, 8.723191210585493588e-07, 8.729220206205481752e-07, 8.735233975718365389e-07, 8.741232511791956257e-07, 8.747215807119276991e-07, 8.753183854421290668e-07, 8.759136646443839837e-07, 8.765074175958923426e-07, 8.770996435765558597e-07, 8.776903418688071857e-07, 8.782795117577198081e-07, 8.788671525309805228e-07, 8.794532634788700583e-07, 8.800378438943696961e-07, 8.806208930730223566e-07, 8.812024103129031656e-07, 8.817823949148828811e-07, 8.823608461823363021e-07, 8.829377634212572535e-07, 8.835131459403489010e-07, 8.840869930508799673e-07, 8.846593040666586856e-07, 8.852300783042822510e-07, 8.857993150828692641e-07, 8.863670137241549160e-07, 8.869331735526183609e-07, 8.874977938951659261e-07, 8.880608740815286880e-07, 8.886224134439555281e-07, 8.891824113173202833e-07, 8.897408670392389537e-07, 8.902977799497975932e-07, 8.908531493917867263e-07, 8.914069747106909715e-07, 8.919592552545382696e-07, 8.925099903739930574e-07, 8.930591794224645818e-07, 8.936068217557939216e-07, 8.941529167326660683e-07, 8.946974637142770431e-07, 8.952404620644909145e-07, 8.957819111498113179e-07, 8.963218103393718200e-07, 8.968601590049246956e-07, 8.973969565209362190e-07, 8.979322022644279513e-07, 8.984658956150738312e-07, 8.989980359552809610e-07, 8.995286226699410024e-07, 9.000576551466713693e-07, 9.005851327757801813e-07, 9.011110549501377272e-07, 9.016354210652838255e-07, 9.021582305194077084e-07, 9.026794827133087398e-07, 9.031991770505132004e-07, 9.037173129371119749e-07, 9.042338897818697134e-07, 9.047489069961989967e-07, 9.052623639941494312e-07, 9.057742601924084955e-07, 9.062845950103752324e-07, 9.067933678700230297e-07, 9.073005781960023226e-07, 9.078062254156140186e-07, 9.083103089588017678e-07, 9.088128282581411634e-07, 9.093137827489276215e-07, 9.098131718690436084e-07, 9.103109950590386856e-07, 9.108072517621176511e-07, 9.113019414241116343e-07, 9.117950634935840812e-07, 9.122866174216715122e-07, 9.127766026621895069e-07, 9.132650186716186225e-07, 9.137518649090850176e-07, 9.142371408363463703e-07, 9.147208459178929931e-07, 9.152029796207939901e-07, 9.156835414148036660e-07, 9.161625307723353734e-07, 9.166399471684509252e-07, 9.171157900808599596e-07, 9.175900589899924665e-07, 9.180627533788672864e-07, 9.185338727331875074e-07, 9.190034165413178065e-07, 9.194713842942588274e-07, 9.199377754857353777e-07, 9.204025896121025139e-07, 9.208658261722887906e-07, 9.213274846680339586e-07, 9.217875646036476668e-07, 9.222460654860982946e-07, 9.227029868250860086e-07, 9.231583281329059667e-07, 9.236120889245454092e-07, 9.240642687176508364e-07, 9.245148670325074679e-07, 9.249638833921363340e-07, 9.254113173221833140e-07, 9.258571683508812320e-07, 9.263014360092718847e-07, 9.267441198309698260e-07, 9.271852193522577632e-07, 9.276247341121765547e-07, 9.280626636522724766e-07, 9.284990075169207891e-07, 9.289337652530680268e-07, 9.293669364103585241e-07, 9.297985205410774527e-07, 9.302285172002708879e-07, 9.306569259455004870e-07, 9.310837463371436568e-07, 9.315089779381667600e-07, 9.319326203141998663e-07, 9.323546730336371257e-07, 9.327751356674097637e-07, 9.331940077891762399e-07, 9.336112889753240484e-07, 9.340269788048403331e-07, 9.344410768593791214e-07, 9.348535827233565089e-07, 9.352644959837078794e-07, 9.356738162301942122e-07, 9.360815430551573965e-07, 9.364876760536426268e-07, 9.368922148233580635e-07, 9.372951589646883851e-07, 9.376965080806728714e-07, 9.380962617770839658e-07, 9.384944196623043497e-07, 9.388909813473913167e-07, 9.392859464461646525e-07, 9.396793145749854536e-07, 9.400710853529583560e-07, 9.404612584018953250e-07, 9.408498333462335983e-07, 9.412368098130929673e-07, 9.416221874322750353e-07, 9.420059658362351600e-07, 9.423881446601688506e-07, 9.427687235418807955e-07, 9.431477021218550600e-07, 9.435250800433261313e-07, 9.439008569520938417e-07, 9.442750324966858931e-07, 9.446476063283467398e-07, 9.450185781009479087e-07, 9.453879474710437978e-07, 9.457557140978718877e-07, 9.461218776433473419e-07, 9.464864377720416193e-07, 9.468493941512614599e-07, 9.472107464509301944e-07, 9.475704943436675771e-07, 9.479286375047818446e-07, 9.482851756122247176e-07, 9.486401083466911390e-07, 9.489934353914922186e-07, 9.493451564326394075e-07, 9.496952711588207806e-07, 9.500437792613968021e-07, 9.503906804343996895e-07, 9.507359743745854010e-07, 9.510796607813349555e-07, 9.514217393567257955e-07, 9.517622098055115642e-07, 9.521010718351109879e-07, 9.524383251556694979e-07, 9.527739694799634099e-07, 9.531080045234591104e-07, 9.534404300043051156e-07, 9.537712456433251894e-07, 9.541004511640075437e-07, 9.544280462925696366e-07, 9.547540307578709278e-07, 9.550784042913947730e-07, 9.554011666274174077e-07, 9.557223175028173641e-07, 9.560418566571455636e-07, 9.563597838326937141e-07, 9.566760987743750909e-07, 9.569908012297978042e-07, 9.573038909492497650e-07, 9.576153676856819557e-07, 9.579252311947725932e-07, 9.582334812348430605e-07, 9.585401175668435076e-07, 9.588451399545061639e-07, 9.591485481641661914e-07, 9.594503419648449051e-07, 9.597505211283027129e-07, 9.600490854288688618e-07, 9.603460346436601842e-07, 9.606413685524070327e-07, 9.609350869375312073e-07, 9.612271895841196967e-07, 9.615176762800013358e-07, 9.618065468155640573e-07, 9.620938009839971439e-07, 9.623794385810917518e-07, 9.626634594053226490e-07, 9.629458632579005203e-07, 9.632266499426228890e-07, 9.635058192660083716e-07, 9.637833710372801609e-07, 9.640593050682995339e-07, 9.643336211736020622e-07, 9.646063191704554224e-07, 9.648773988786999417e-07, 9.651468601209618387e-07, 9.654147027224734407e-07, 9.656809265111549223e-07, 9.659455313176494573e-07, 9.662085169751967988e-07, 9.664698833197522877e-07, 9.667296301899749940e-07, 9.669877574271531781e-07, 9.672442648752536302e-07, 9.674991523809748218e-07, 9.677524197935959220e-07, 9.680040669651294752e-07, 9.682540937502777790e-07, 9.685025000063738036e-07, 9.687492855934436603e-07, 9.689944503741854261e-07, 9.692379942139536847e-07, 9.694799169808213607e-07, 9.697202185454876040e-07, 9.699588987813449177e-07, 9.701959575644550175e-07, 9.704313947735473492e-07, 9.706652102900131599e-07, 9.708974039979565312e-07, 9.711279757841117940e-07, 9.713569255378932911e-07, 9.715842531513974956e-07, 9.718099585193663758e-07, 9.720340415392562174e-07, 9.722565021111537668e-07, 9.724773401378295942e-07, 9.726965555247222120e-07, 9.729141481799378627e-07, 9.731301180142420489e-07, 9.733444649411095081e-07, 9.735571888766369680e-07, 9.737682897396058275e-07, 9.739777674514677568e-07, 9.741856219363377094e-07, 9.743918531209884165e-07, 9.745964609348927385e-07, 9.747994453101565378e-07, 9.750008061815671712e-07, 9.752005434865680793e-07, 9.753986571652617507e-07, 9.755951471604531327e-07, 9.757900134175725511e-07, 9.759832558847269560e-07, 9.761748745126937805e-07, 9.763648692549069648e-07, 9.765532400674546268e-07, 9.767399869091184493e-07, 9.769251097413167168e-07, 9.771086085281348089e-07, 9.772904832363188472e-07, 9.774707338352801427e-07, 9.776493602970816430e-07, 9.778263625964783781e-07, 9.780017407108490626e-07, 9.781754946202473413e-07, 9.783476243073856950e-07, 9.785181297576206183e-07, 9.786870109590053467e-07, 9.788542679022299293e-07, 9.790199005806051351e-07, 9.791839089901672736e-07, 9.793462931295655388e-07, 9.795070530001056321e-07, 9.796661886057908430e-07, 9.798236999532070643e-07, 9.799795870516746232e-07, 9.801338499131142378e-07, 9.802864885521245209e-07, 9.804375029859360285e-07, 9.805868932344857986e-07, 9.807346593202814024e-07, 9.808808012685576456e-07, 9.810253191071617950e-07, 9.811682128665982599e-07, 9.813094825800510383e-07, 9.814491282833021902e-07, 9.815871500148146344e-07, 9.817235478157141501e-07, 9.818583217297512595e-07, 9.819914718033213452e-07, 9.821229980855125076e-07, 9.822529006279907918e-07, 9.823811794851310545e-07, 9.825078347139189195e-07, 9.826328663739922824e-07, 9.827562745276624868e-07, 9.828780592398374557e-07, 9.829982205780873367e-07, 9.831167586126618659e-07, 9.832336734164107473e-07, 9.833489650648315099e-07, 9.834626336360980947e-07, 9.835746792109780581e-07, 9.836851018728999101e-07, 9.837939017079522678e-07, 9.839010788048434095e-07, 9.840066332549184270e-07, 9.841105651521715077e-07, 9.842128745932181941e-07, 9.843135616773445120e-07, 9.844126265064406899e-07, 9.845100691850452047e-07, 9.846058898203369470e-07, 9.847000885221206093e-07, 9.847926654028364273e-07, 9.848836205775750026e-07, 9.849729541640408807e-07, 9.850606662825779616e-07, 9.851467570561614532e-07, 9.852312266103870715e-07, 9.853140750735172041e-07, 9.853953025764059477e-07, 9.854749092525526827e-07, 9.855528952380836507e-07, 9.856292606717538597e-07, 9.857040056949367085e-07, 9.857771304516542680e-07, 9.858486350885374705e-07, 9.859185197548489796e-07, 9.859867846024700613e-07, 9.860534297859111720e-07, 9.861184554622992526e-07, 9.861818617914048341e-07, 9.862436489355958738e-07, 9.863038170598707901e-07, 9.863623663318576148e-07, 9.864192969217832890e-07, 9.864746090025230020e-07, 9.865283027495438638e-07, 9.865803783409487396e-07, 9.866308359574425795e-07, 9.866796757823597357e-07, 9.867268980016374925e-07, 9.867725028038516423e-07, 9.868164903801641802e-07, 9.868588609243677744e-07, 9.868996146328595074e-07, 9.869387517046546406e-07, 9.869762723413662855e-07, 9.870121767472517785e-07, 9.870464651291275546e-07, 9.870791376964680380e-07, 9.871101946613222095e-07, 9.871396362383591346e-07, 9.871674626448601286e-07, 9.871936741007056272e-07, 9.872182708283656575e-07, 9.872412530529510838e-07, 9.872626210021452094e-07, 9.872823749062414695e-07, 9.873005149981489371e-07, 9.873170415133523007e-07, 9.873319546899618392e-07, 9.873452547686706465e-07, 9.873569419927741138e-07, 9.873670166081775522e-07, 9.873754788633659120e-07, 9.873823290094219933e-07, 9.873875673000387283e-07, 9.873911939914880529e-07, 9.873932093426416585e-07, 9.873936136149676047e-07, 9.873924070725197306e-07, 9.873895899819412552e-07, 9.873851626124753651e-07, 9.873791252359455209e-07, 9.873714781267651984e-07, 9.873622215619444526e-07, 9.873513558210579429e-07, 9.873388811862953307e-07, 9.873247979424106702e-07, 9.873091063767435831e-07, 9.872918067792321769e-07, 9.872728994423747158e-07, 9.872523846612643497e-07, 9.872302627335721733e-07, 9.872065339595548491e-07, 9.871811986420344908e-07, 9.871542570864211096e-07, 9.871257096006958850e-07, 9.870955564954198474e-07, 9.870637980837262542e-07, 9.870304346813273665e-07, 9.869954666064966612e-07, 9.869588941800929718e-07, 9.869207177255391001e-07, 9.868809375688332518e-07, 9.868395540385337898e-07, 9.867965674657774450e-07, 9.867519781842600468e-07, 9.867057865302466873e-07, 9.866579928425717212e-07, 9.866085974626322014e-07, 9.865576007343821615e-07, 9.865050030043472272e-07, 9.864508046216068284e-07, 9.863950059378037285e-07, 9.863376073071446598e-07, 9.862786090863846531e-07, 9.862180116348499076e-07, 9.861558153144115331e-07, 9.860920204895005847e-07, 9.860266275271004396e-07, 9.859596367967501852e-07, 9.858910486705416541e-07, 9.858208635231122252e-07, 9.857490817316596457e-07, 9.856757036759255149e-07, 9.856007297381965542e-07, 9.855241603033090542e-07, 9.854459957586480274e-07, 9.853662364941423385e-07, 9.852848829022604683e-07, 9.852019353780227962e-07, 9.851173943189842362e-07, 9.850312601252412242e-07, 9.849435331994334129e-07, 9.848542139467362598e-07, 9.847633027748639918e-07, 9.846708000940674878e-07, 9.845767063171272906e-07, 9.844810218593730886e-07, 9.843837471386515287e-07, 9.842848825753520506e-07, 9.841844285923916403e-07, 9.840823856152135597e-07, 9.839787540717941226e-07, 9.838735343926369775e-07, 9.837667270107743778e-07, 9.836583323617599824e-07, 9.835483508836722436e-07, 9.834367830171169482e-07, 9.833236292052132417e-07, 9.832088898936139567e-07, 9.830925655304804139e-07, 9.829746565664949158e-07, 9.828551634548673114e-07, 9.827340866513057733e-07, 9.826114266140519494e-07, 9.824871838038491997e-07, 9.823613586839569954e-07, 9.822339517201511310e-07, 9.821049633807050893e-07, 9.819743941364188406e-07, 9.818422444605932199e-07, 9.817085148290284449e-07, 9.815732057200404210e-07, 9.814363176144505770e-07, 9.812978509955678659e-07, 9.811578063492245517e-07, 9.810161841637406342e-07, 9.808729849299412132e-07, 9.807282091411467474e-07, 9.805818572931808898e-07, 9.804339298843467705e-07, 9.802844274154699838e-07, 9.801333503898445896e-07, 9.799806993132659363e-07, 9.798264746940300251e-07, 9.796706770429032290e-07, 9.795133068731612560e-07, 9.793543647005556915e-07, 9.791938510433190802e-07, 9.790317664221814435e-07, 9.788681113603482569e-07, 9.787028863835142135e-07, 9.785360920198553898e-07, 9.783677288000099750e-07, 9.781977972571157529e-07, 9.780262979267804551e-07, 9.778532313470876904e-07, 9.776785980585946160e-07, 9.775023986043336307e-07, 9.773246335298068699e-07, 9.771453033829910755e-07, 9.769644087143295496e-07, 9.767819500767330011e-07, 9.765979280255842046e-07, 9.764123431187322829e-07, 9.762251959164717430e-07, 9.760364869815882156e-07, 9.758462168793108100e-07, 9.756543861773335009e-07, 9.754609954458172470e-07, 9.752660452573618262e-07, 9.750695361870369647e-07, 9.748714688123656078e-07, 9.746718437133256140e-07, 9.744706614723436141e-07, 9.742679226743055992e-07, 9.740636279065266388e-07, 9.738577777587915390e-07, 9.736503728233211726e-07, 9.734414136947853963e-07, 9.732309009702952159e-07, 9.730188352494165503e-07, 9.728052171341319035e-07, 9.725900472288852571e-07, 9.723733261405496718e-07, 9.721550544784389332e-07, 9.719352328543094586e-07, 9.717138618823245093e-07, 9.714909421791092477e-07, 9.712664743637244796e-07, 9.710404590576259965e-07, 9.708128968847312793e-07, 9.705837884713773584e-07, 9.703531344463095910e-07, 9.701209354407170239e-07, 9.698871920882061363e-07, 9.696519050248065567e-07, 9.694150748889736042e-07, 9.691767023215590661e-07, 9.689367879658457139e-07, 9.686953324675545037e-07, 9.684523364747795660e-07, 9.682078006380502512e-07, 9.679617256103199062e-07, 9.677141120469154758e-07, 9.674649606055967953e-07, 9.672142719465481201e-07, 9.669620467323160804e-07, 9.667082856278810439e-07, 9.664529893006270460e-07, 9.661961584203066380e-07, 9.659377936591291902e-07, 9.656778956916446367e-07, 9.654164651948311435e-07, 9.651535028480614385e-07, 9.648890093330801536e-07, 9.646229853340410944e-07, 9.643554315375042751e-07, 9.640863486323825558e-07, 9.638157373100017817e-07, 9.635435982640751603e-07, 9.632699321906636627e-07, 9.629947397882749147e-07, 9.627180217577367771e-07, 9.624397788022873429e-07, 9.621600116275459265e-07, 9.618787209415041698e-07, 9.615959074544993608e-07, 9.613115718793073952e-07, 9.610257149310066162e-07, 9.607383373270870813e-07, 9.604494397874071523e-07, 9.601590230341530493e-07, 9.598670877919388005e-07, 9.595736347877075630e-07, 9.592786647507521634e-07, 9.589821784127489787e-07, 9.586841765077287143e-07, 9.583846597720787329e-07, 9.580836289445504661e-07, 9.577810847662270156e-07, 9.574770279805678337e-07, 9.571714593333845837e-07, 9.568643795728032342e-07, 9.565557894493540572e-07, 9.562456897158831124e-07, 9.559340811275634710e-07, 9.556209644419437081e-07, 9.553063404189023747e-07, 9.549902098206579501e-07, 9.546725734117652426e-07, 9.543534319591321175e-07, 9.540327862319657117e-07, 9.537106370018370186e-07, 9.533869850426399142e-07, 9.530618311306067203e-07, 9.527351760442993112e-07, 9.524070205645751263e-07, 9.520773654746504861e-07, 9.517462115600589811e-07, 9.514135596086513668e-07, 9.510794104105963038e-07, 9.507437647584019583e-07, 9.504066234468528969e-07, 9.500679872730840974e-07, 9.497278570365283257e-07, 9.493862335389404888e-07, 9.490431175843877877e-07, 9.486985099792143539e-07, 9.483524115321100707e-07, 9.480048230540548808e-07, 9.476557453583289508e-07, 9.473051792605198711e-07, 9.469531255785244553e-07, 9.465995851325034247e-07, 9.462445587449328649e-07, 9.458880472406241314e-07, 9.455300514466141589e-07, 9.451705721922725047e-07, 9.448096103092584682e-07, 9.444471666314884796e-07, 9.440832419951942280e-07, 9.437178372388847562e-07, 9.433509532033476259e-07, 9.429825907316746459e-07, 9.426127506691870157e-07, 9.422414338635089116e-07, 9.418686411645874977e-07, 9.414943734245590947e-07, 9.411186314978875641e-07, 9.407414162413081921e-07, 9.403627285137754910e-07, 9.399825691765661142e-07, 9.396009390932002936e-07, 9.392178391294583565e-07, 9.388332701533846437e-07, 9.384472330353027555e-07, 9.380597286477300020e-07, 9.376707578655370681e-07, 9.372803215657631492e-07, 9.368884206277456526e-07, 9.364950559330726583e-07, 9.361002283655404610e-07, 9.357039388112224976e-07, 9.353061881584761236e-07, 9.349069772978179930e-07, 9.345063071220726072e-07, 9.341041785262888820e-07, 9.337005924077036190e-07, 9.332955496658920662e-07, 9.328890512025588068e-07, 9.324810979217016593e-07, 9.320716907295492098e-07, 9.316608305344914605e-07, 9.312485182472479660e-07, 9.308347547807128263e-07, 9.304195410499669685e-07, 9.300028779723641212e-07, 9.295847664674788273e-07, 9.291652074570350816e-07, 9.287442018650687497e-07, 9.283217506177880188e-07, 9.278978546435730805e-07, 9.274725148730653867e-07, 9.270457322390976635e-07, 9.266175076767114873e-07, 9.261878421231657548e-07, 9.257567365178719912e-07, 9.253241918024915470e-07, 9.248902089208922936e-07, 9.244547888190614846e-07, 9.240179324452877623e-07, 9.235796407500005388e-07, 9.231399146857821721e-07, 9.226987552074659046e-07, 9.222561632720402537e-07, 9.218121398386926347e-07, 9.213666858688033250e-07, 9.209198023258844784e-07, 9.204714901756779567e-07, 9.200217503860886264e-07, 9.195705839271901818e-07, 9.191179917712346743e-07, 9.186639748926691351e-07, 9.182085342680463195e-07, 9.177516708761468911e-07, 9.172933856978965186e-07, 9.168336797163859928e-07, 9.163725539168665679e-07, 9.159100092867648903e-07, 9.154460468156170364e-07, 9.149806674951689914e-07, 9.145138723192979812e-07, 9.140456622840342836e-07, 9.135760383875780632e-07, 9.131050016302225029e-07, 9.126325530144614830e-07, 9.121586935449086897e-07, 9.116834242283310730e-07, 9.112067460736280939e-07, 9.107286600918554418e-07, 9.102491672961519780e-07, 9.097682687018438142e-07, 9.092859653263734800e-07, 9.088022581893089224e-07, 9.083171483123467882e-07, 9.078306367193357171e-07, 9.073427244361833802e-07, 9.068534124909758053e-07, 9.063627019139058031e-07, 9.058705937372786846e-07, 9.053770889955375657e-07, 9.048821887251753824e-07, 9.043858939648493456e-07, 9.038882057553689769e-07, 9.033891251395444898e-07, 9.028886531623636076e-07, 9.023867908709178718e-07, 9.018835393143501260e-07, 9.013788995439455718e-07, 9.008728726130817939e-07, 9.003654595772259014e-07, 8.998566614939356927e-07, 8.993464794228817836e-07, 8.988349144257456465e-07, 8.983219675664330621e-07, 8.978076399107935400e-07, 8.972919325268404413e-07, 8.967748464846741107e-07, 8.962563828564007723e-07, 8.957365427162548209e-07, 8.952153271405950097e-07, 8.946927372077415027e-07, 8.941687739981560807e-07, 8.936434385943702497e-07, 8.931167320809096427e-07, 8.925886555444952965e-07, 8.920592100737704833e-07, 8.915283967595198802e-07, 8.909962166945864547e-07, 8.904626709737818904e-07, 8.899277606941015220e-07, 8.893914869545200940e-07, 8.888538508560329484e-07, 8.883148535017355393e-07, 8.877744959967644584e-07, 8.872327794482251198e-07, 8.866897049653790597e-07, 8.861452736594725187e-07, 8.855994866437330531e-07, 8.850523450335004017e-07, 8.845038499461134072e-07, 8.839540025009446382e-07, 8.834028038194151065e-07, 8.828502550249045879e-07, 8.822963572428831236e-07, 8.817411116008354225e-07, 8.811845192281928873e-07, 8.806265812565148790e-07, 8.800672988193233339e-07, 8.795066730520995874e-07, 8.789447050924076172e-07, 8.783813960797903874e-07, 8.778167471558035185e-07, 8.772507594640201573e-07, 8.766834341499556975e-07, 8.761147723611857284e-07, 8.755447752472626026e-07, 8.749734439597311059e-07, 8.744007796521312102e-07, 8.738267834800102497e-07, 8.732514566008378996e-07, 8.726748001741449843e-07, 8.720968153614097625e-07, 8.715175033261023968e-07, 8.709368652336618723e-07, 8.703549022515376063e-07, 8.697716155490742528e-07, 8.691870062976666029e-07, 8.686010756706471414e-07, 8.680138248433251165e-07, 8.674252549929947980e-07, 8.668353672988419859e-07, 8.662441629420810187e-07, 8.656516431058713397e-07, 8.650578089753161214e-07, 8.644626617374811114e-07, 8.638662025814068091e-07, 8.632684326980095738e-07, 8.626693532802273150e-07, 8.620689655229131897e-07, 8.614672706228690599e-07, 8.608642697788375519e-07, 8.602599641915149735e-07, 8.596543550634745515e-07, 8.590474435992867108e-07, 8.584392310054281237e-07, 8.578297184903080741e-07, 8.572189072642900569e-07, 8.566067985395788047e-07, 8.559933935303606838e-07, 8.553786934528043292e-07, 8.547626995248612747e-07, 8.541454129664873455e-07, 8.535268349995573201e-07, 8.529069668477756739e-07, 8.522858097368352922e-07, 8.516633648943040738e-07, 8.510396335496598707e-07, 8.504146169343058408e-07, 8.497883162814678512e-07, 8.491607328263136976e-07, 8.485318678059881509e-07, 8.479017224593743052e-07, 8.472702980273435586e-07, 8.466375957526586280e-07, 8.460036168798834457e-07, 8.453683626555290610e-07, 8.447318343280481346e-07, 8.440940331476287918e-07, 8.434549603664302034e-07, 8.428146172384882479e-07, 8.421730050196053965e-07, 8.415301249676313992e-07, 8.408859783421067899e-07, 8.402405664045355244e-07, 8.395938904182809020e-07, 8.389459516484658271e-07, 8.382967513622188721e-07, 8.376462908284535195e-07, 8.369945713178718680e-07, 8.363415941031201686e-07, 8.356873604586755338e-07, 8.350318716607615524e-07, 8.343751289876301393e-07, 8.337171337191823828e-07, 8.330578871372677585e-07, 8.323973905255436279e-07, 8.317356451694957793e-07, 8.310726523564453094e-07, 8.304084133755676817e-07, 8.297429295177800715e-07, 8.290762020759030428e-07, 8.284082323445820920e-07, 8.277390216201671579e-07, 8.270685712009884360e-07, 8.263968823871132809e-07, 8.257239564803589112e-07, 8.250497947844343934e-07, 8.243743986048266107e-07, 8.236977692488305437e-07, 8.230199080255628234e-07, 8.223408162458613573e-07, 8.216604952224404432e-07, 8.209789462698118881e-07, 8.202961707041657893e-07, 8.196121698436430668e-07, 8.189269450080953293e-07, 8.182404975190962038e-07, 8.175528287000899892e-07, 8.168639398762637551e-07, 8.161738323745954101e-07, 8.154825075238231035e-07, 8.147899666544895880e-07, 8.140962110988270238e-07, 8.134012421909076439e-07, 8.127050612665526990e-07, 8.120076696633344681e-07, 8.113090687206215758e-07, 8.106092597794505600e-07, 8.099082441826931618e-07, 8.092060232749508692e-07, 8.085025984025711169e-07, 8.077979709136501450e-07, 8.070921421580572453e-07, 8.063851134873100359e-07, 8.056768862547666312e-07, 8.049674618154813296e-07, 8.042568415262453761e-07, 8.035450267456121618e-07, 8.028320188337753574e-07, 8.021178191527473191e-07, 8.014024290662245161e-07, 8.006858499396424826e-07, 7.999680831401406650e-07, 7.992491300366107036e-07, 7.985289919995728710e-07, 7.978076704013124448e-07, 7.970851666159142242e-07, 7.963614820189948673e-07, 7.956366179879869652e-07, 7.949105759020363389e-07, 7.941833571418880075e-07, 7.934549630900745473e-07, 7.927253951307979308e-07, 7.919946546499469965e-07, 7.912627430351284716e-07, 7.905296616755474344e-07, 7.897954119621537455e-07, 7.890599952876681992e-07, 7.883234130463072385e-07, 7.875856666340858750e-07, 7.868467574486916925e-07, 7.861066868893641453e-07, 7.853654563572170657e-07, 7.846230672548291234e-07, 7.838795209865523576e-07, 7.831348189583745341e-07, 7.823889625779729315e-07, 7.816419532545520292e-07, 7.808937923991895195e-07, 7.801444814243968043e-07, 7.793940217444525135e-07, 7.786424147752908032e-07, 7.778896619343532302e-07, 7.771357646409106251e-07, 7.763807243157812416e-07, 7.756245423813545797e-07, 7.748672202617422632e-07, 7.741087593826862425e-07, 7.733491611714379866e-07, 7.725884270570824732e-07, 7.718265584701149900e-07, 7.710635568427671362e-07, 7.702994236088622978e-07, 7.695341602038375642e-07, 7.687677680647344113e-07, 7.680002486302423234e-07, 7.672316033405604094e-07, 7.664618336375838555e-07, 7.656909409648100111e-07, 7.649189267672080509e-07, 7.641457924915293071e-07, 7.633715395860274307e-07, 7.625961695004803084e-07, 7.618196836863515284e-07, 7.610420835966548550e-07, 7.602633706859888513e-07, 7.594835464105594312e-07, 7.587026122280579927e-07, 7.579205695978463885e-07, 7.571374199808522118e-07, 7.563531648394538114e-07, 7.555678056377814123e-07, 7.547813438414347353e-07, 7.539937809175073501e-07, 7.532051183347541755e-07, 7.524153575634492837e-07, 7.516245000754199938e-07, 7.508325473440410483e-07, 7.500395008442785525e-07, 7.492453620525358152e-07, 7.484501324468585419e-07, 7.476538135068024861e-07, 7.468564067134567428e-07, 7.460579135494794295e-07, 7.452583354989625847e-07, 7.444576740476252912e-07, 7.436559306826813276e-07, 7.428531068928659551e-07, 7.420492041684362356e-07, 7.412442240012004660e-07, 7.404381678843845587e-07, 7.396310373128258004e-07, 7.388228337828369033e-07, 7.380135587922435921e-07, 7.372032138404026038e-07, 7.363918004280773852e-07, 7.355793200576300518e-07, 7.347657742328855453e-07, 7.339511644591620204e-07, 7.331354922432671392e-07, 7.323187590935404230e-07, 7.315009665196961276e-07, 7.306821160330003789e-07, 7.298622091463039956e-07, 7.290412473737328988e-07, 7.282192322310212073e-07, 7.273961652353725363e-07, 7.265720479053690472e-07, 7.257468817611492182e-07, 7.249206683242866136e-07, 7.240934091178186819e-07, 7.232651056662738618e-07, 7.224357594955294915e-07, 7.216053721329895806e-07, 7.207739451076092676e-07, 7.199414799495905235e-07, 7.191079781907086830e-07, 7.182734413641877190e-07, 7.174378710045507411e-07, 7.166012686480001017e-07, 7.157636358319287639e-07, 7.149249740952971253e-07, 7.140852849784677406e-07, 7.132445700232566731e-07, 7.124028307727638763e-07, 7.115600687717537234e-07, 7.107162855661657400e-07, 7.098714827034917454e-07, 7.090256617326377862e-07, 7.081788242037701883e-07, 7.073309716686875100e-07, 7.064821056804757997e-07, 7.056322277935510534e-07, 7.047813395638353977e-07, 7.039294425486479280e-07, 7.030765383065558429e-07, 7.022226283977613265e-07, 7.013677143836134453e-07, 7.005117978269813723e-07, 6.996548802921164267e-07, 6.987969633445038427e-07, 6.979380485512224412e-07, 6.970781374806137577e-07, 6.962172317023188877e-07, 6.953553327874557286e-07, 6.944924423085038896e-07, 6.936285618391619656e-07, 6.927636929547022332e-07, 6.918978372316459190e-07, 6.910309962477950693e-07, 6.901631715824104270e-07, 6.892943648160638361e-07, 6.884245775306757230e-07, 6.875538113095376486e-07, 6.866820677371784773e-07, 6.858093483995674529e-07, 6.849356548839743324e-07, 6.840609887789978675e-07, 6.831853516745607227e-07, 6.823087451619578613e-07, 6.814311708336884100e-07, 6.805526302836836166e-07, 6.796731251071512073e-07, 6.787926569006168918e-07, 6.779112272619522090e-07, 6.770288377902285204e-07, 6.761454900859258027e-07, 6.752611857508010412e-07, 6.743759263879038991e-07, 6.734897136015791529e-07, 6.726025489975071385e-07, 6.717144341825463086e-07, 6.708253707649524028e-07, 6.699353603542292634e-07, 6.690444045611715054e-07, 6.681525049978448225e-07, 6.672596632776306681e-07, 6.663658810150729426e-07, 6.654711598261005510e-07, 6.645755013278705962e-07, 6.636789071388057542e-07, 6.627813788786339785e-07, 6.618829181682231176e-07, 6.609835266298144837e-07, 6.600832058868646695e-07, 6.591819575640827119e-07, 6.582797832874220449e-07, 6.573766846841257105e-07, 6.564726633825568454e-07, 6.555677210124425216e-07, 6.546618592047009509e-07, 6.537550795914870133e-07, 6.528473838061845276e-07, 6.519387734834451093e-07, 6.510292502590328458e-07, 6.501188157700431484e-07, 6.492074716547599216e-07, 6.482952195526803388e-07, 6.473820611045523233e-07, 6.464679979522196473e-07, 6.455530317388135730e-07, 6.446371641087819697e-07, 6.437203967075477473e-07, 6.428027311818826097e-07, 6.418841691797610477e-07, 6.409647123501907207e-07, 6.400443623436428549e-07, 6.391231208115048486e-07, 6.382009894065048474e-07, 6.372779697825516550e-07, 6.363540635946143484e-07, 6.354292724989229192e-07, 6.345035981529898727e-07, 6.335770422152687678e-07, 6.326496063455336878e-07, 6.317212922047245510e-07, 6.307921014547841626e-07, 6.298620357590517676e-07, 6.289310967819062379e-07, 6.279992861887939189e-07, 6.270666056464362580e-07, 6.261330568226973503e-07, 6.251986413864263900e-07, 6.242633610078959043e-07, 6.233272173582330768e-07, 6.223902121098595691e-07, 6.214523469363375727e-07, 6.205136235121900260e-07, 6.195740435133096260e-07, 6.186336086165921680e-07, 6.176923204999708513e-07, 6.167501808426241191e-07, 6.158071913248360049e-07, 6.148633536278504417e-07, 6.139186694342960499e-07, 6.129731404276267778e-07, 6.120267682925622523e-07, 6.110795547148783507e-07, 6.101315013814508224e-07, 6.091826099802502069e-07, 6.082328822003725388e-07, 6.072823197318913287e-07, 6.063309242660792741e-07, 6.053786974952509231e-07, 6.044256411128035434e-07, 6.034717568132083348e-07, 6.025170462920502396e-07, 6.015615112458645710e-07, 6.006051533723766175e-07, 5.996479743703331895e-07, 5.986899759395452883e-07, 5.977311597809212466e-07, 5.967715275963042034e-07, 5.958110810887108624e-07, 5.948498219621681195e-07, 5.938877519217504388e-07, 5.929248726735751938e-07, 5.919611859248406778e-07, 5.909966933836624148e-07, 5.900313967593113880e-07, 5.890652977620517262e-07, 5.880983981031744802e-07, 5.871306994949974104e-07, 5.861622036509065975e-07, 5.851929122851780365e-07, 5.842228271132332280e-07, 5.832519498514632083e-07, 5.822802822172729117e-07, 5.813078259291157936e-07, 5.803345827063235766e-07, 5.793605542693619489e-07, 5.783857423396467575e-07, 5.774101486395944075e-07, 5.764337748926111675e-07, 5.754566228231391217e-07, 5.744786941564807281e-07, 5.734999906190456224e-07, 5.725205139381865059e-07, 5.715402658422345086e-07, 5.705592480604926250e-07, 5.695774623232823009e-07, 5.685949103617223577e-07, 5.676115939081957075e-07, 5.666275146957514539e-07, 5.656426744585674779e-07, 5.646570749317820898e-07, 5.636707178513600923e-07, 5.626836049542999861e-07, 5.616957379786764271e-07, 5.607071186632575794e-07, 5.597177487479188911e-07, 5.587276299734797226e-07, 5.577367640815253636e-07, 5.567451528148696196e-07, 5.557527979169602998e-07, 5.547597011323419098e-07, 5.537658642064843384e-07, 5.527712888856501913e-07, 5.517759769171064438e-07, 5.507799300491598039e-07, 5.497831500307799946e-07, 5.487856386120112005e-07, 5.477873975438056253e-07, 5.467884285778469915e-07, 5.457887334669763862e-07, 5.447883139648034734e-07, 5.437871718257451389e-07, 5.427853088052431790e-07, 5.417827266596195625e-07, 5.407794271459167661e-07, 5.397754120223539009e-07, 5.387706830477335779e-07, 5.377652419819019525e-07, 5.367590905855806949e-07, 5.357522306201904888e-07, 5.347446638482740194e-07, 5.337363920331107842e-07, 5.327274169387531985e-07, 5.317177403302433299e-07, 5.307073639734754667e-07, 5.296962896350249119e-07, 5.286845190826136391e-07, 5.276720540845167348e-07, 5.266588964100149251e-07, 5.256450478291884294e-07, 5.246305101129559237e-07, 5.236152850330673412e-07, 5.225993743621466470e-07, 5.215827798735147028e-07, 5.205655033414517407e-07, 5.195475465410096401e-07, 5.185289112480619021e-07, 5.175095992392957091e-07, 5.164896122922548053e-07, 5.154689521851621496e-07, 5.144476206971765663e-07, 5.134256196082150804e-07, 5.124029506989983389e-07, 5.113796157510867164e-07, 5.103556165466998969e-07, 5.093309548689829475e-07, 5.083056325018239954e-07, 5.072796512298974257e-07, 5.062530128386538236e-07, 5.052257191143766193e-07, 5.041977718439834592e-07, 5.031691728153004321e-07, 5.021399238168792167e-07, 5.011100266380373152e-07, 5.000794830688551950e-07, 4.990482949002175810e-07, 4.980164639236373789e-07, 4.969839919315108442e-07, 4.959508807169411869e-07, 4.949171320737807119e-07, 4.938827477966712648e-07, 4.928477296808630726e-07, 4.918120795224780648e-07, 4.907757991183298796e-07, 4.897388902659673795e-07, 4.887013547636651225e-07, 4.876631944104717490e-07, 4.866244110060244812e-07, 4.855850063508148801e-07, 4.845449822460068391e-07, 4.835043404934790414e-07, 4.824630828958691117e-07, 4.814212112563840927e-07, 4.803787273790280851e-07, 4.793356330686418465e-07, 4.782919301304948387e-07, 4.772476203707330970e-07, 4.762027055961951592e-07, 4.751571876142728340e-07, 4.741110682331405889e-07, 4.730643492617831843e-07, 4.720170325096022793e-07, 4.709691197868550366e-07, 4.699206129044712689e-07, 4.688715136738747148e-07, 4.678218239074695537e-07, 4.667715454180149777e-07, 4.657206800191069414e-07, 4.646692295250040441e-07, 4.636171957504841690e-07, 4.625645805110677826e-07, 4.615113856230622451e-07, 4.604576129031475581e-07, 4.594032641688333392e-07, 4.583483412382649041e-07, 4.572928459300459191e-07, 4.562367800637307924e-07, 4.551801454591897692e-07, 4.541229439370993645e-07, 4.530651773187186930e-07, 4.520068474259734314e-07, 4.509479560812270136e-07, 4.498885051077760391e-07, 4.488284963292107634e-07, 4.477679315699172289e-07, 4.467068126548810721e-07, 4.456451414095156276e-07, 4.445829196601039745e-07, 4.435201492333935245e-07, 4.424568319566323916e-07, 4.413929696577953914e-07, 4.403285641654029345e-07, 4.392636173085564958e-07, 4.381981309169900196e-07, 4.371321068208740424e-07, 4.360655468510933613e-07, 4.349984528391108735e-07, 4.339308266167660351e-07, 4.328626700167491471e-07, 4.317939848721688385e-07, 4.307247730166063301e-07, 4.296550362843376742e-07, 4.285847765101424313e-07, 4.275139955293584624e-07, 4.264426951778656770e-07, 4.253708772921380718e-07, 4.242985437090493906e-07, 4.232256962661527503e-07, 4.221523368014920175e-07, 4.210784671536372252e-07, 4.200040891617443413e-07, 4.189292046653460519e-07, 4.178538155046423458e-07, 4.167779235203071272e-07, 4.157015305535279194e-07, 4.146246384460089364e-07, 4.135472490400102569e-07, 4.124693641781588314e-07, 4.113909857037290606e-07, 4.103121154604466555e-07, 4.092327552925377114e-07, 4.081529070447692073e-07, 4.070725725622584761e-07, 4.059917536907548961e-07, 4.049104522764436971e-07, 4.038286701659968880e-07, 4.027464092065627750e-07, 4.016636712458133424e-07, 4.005804581317555760e-07, 3.994967717129565093e-07, 3.984126138385947864e-07, 3.973279863580304754e-07, 3.962428911212700362e-07, 3.951573299787827796e-07, 3.940713047813469183e-07, 3.929848173803361826e-07, 3.918978696275245254e-07, 3.908104633751305393e-07, 3.897226004758647840e-07, 3.886342827827329573e-07, 3.875455121492735409e-07, 3.864562904295982987e-07, 3.853666194779646316e-07, 3.842765011492472684e-07, 3.831859372987443488e-07, 3.820949297820324744e-07, 3.810034804552448005e-07, 3.799115911748891883e-07, 3.788192637978761578e-07, 3.777265001815292630e-07, 3.766333021836225208e-07, 3.755396716621422886e-07, 3.744456104758071839e-07, 3.733511204833988221e-07, 3.722562035442781364e-07, 3.711608615182014125e-07, 3.700650962651648052e-07, 3.689689096456416137e-07, 3.678723035206316738e-07, 3.667752797512242366e-07, 3.656778401990720945e-07, 3.645799867261998345e-07, 3.634817211948103969e-07, 3.623830454678030363e-07, 3.612839614081057532e-07, 3.601844708791937315e-07, 3.590845757448523809e-07, 3.579842778692668046e-07, 3.568835791167766898e-07, 3.557824813524046963e-07, 3.546809864411832253e-07, 3.535790962486728558e-07, 3.524768126407718153e-07, 3.513741374835202092e-07, 3.502710726435751007e-07, 3.491676199877779415e-07, 3.480637813831984585e-07, 3.469595586973711882e-07, 3.458549537981006055e-07, 3.447499685535049586e-07, 3.436446048320638077e-07, 3.425388645024189730e-07, 3.414327494336648021e-07, 3.403262614951943803e-07, 3.392194025565118074e-07, 3.381121744877029889e-07, 3.370045791590031196e-07, 3.358966184408409418e-07, 3.347882942040766548e-07, 3.336796083198066744e-07, 3.325705626594057195e-07, 3.314611590945270244e-07, 3.303513994971494541e-07, 3.292412857393733703e-07, 3.281308196937155042e-07, 3.270200032329079981e-07, 3.259088382299437743e-07, 3.247973265581248697e-07, 3.236854700908623763e-07, 3.225732707019670269e-07, 3.214607302654486070e-07, 3.203478506555646066e-07, 3.192346337468138668e-07, 3.181210814139855493e-07, 3.170071955319604015e-07, 3.158929779759972118e-07, 3.147784306215370399e-07, 3.136635553442505969e-07, 3.125483540200805978e-07, 3.114328285250447725e-07, 3.103169807355252343e-07, 3.092008125280710146e-07, 3.080843257794434855e-07, 3.069675223666120717e-07, 3.058504041668025840e-07, 3.047329730572963139e-07, 3.036152309156707498e-07, 3.024971796198472225e-07, 3.013788210476485422e-07, 3.002601570772821781e-07, 2.991411895871415230e-07, 2.980219204556618978e-07, 2.969023515616015549e-07, 2.957824847838501954e-07, 2.946623220014716389e-07, 2.935418650937503037e-07, 2.924211159399930550e-07, 2.913000764197693907e-07, 2.901787484129570231e-07, 2.890571337993033801e-07, 2.879352344589028555e-07, 2.868130522720058032e-07, 2.856905891188650120e-07, 2.845678468800264503e-07, 2.834448274361325421e-07, 2.823215326679631957e-07, 2.811979644564403030e-07, 2.800741246826661743e-07, 2.789500152276777922e-07, 2.778256379729855777e-07, 2.767009947998813647e-07, 2.755760875899748359e-07, 2.744509182249939412e-07, 2.733254885866364548e-07, 2.721998005568107974e-07, 2.710738560176824643e-07, 2.699476568512277977e-07, 2.688212049397233600e-07, 2.676945021655476754e-07, 2.665675504109770944e-07, 2.654403515587287426e-07, 2.643129074912652650e-07, 2.631852200913347566e-07, 2.620572912417696982e-07, 2.609291228252861035e-07, 2.598007167249768101e-07, 2.586720748238605401e-07, 2.575431990049295987e-07, 2.564140911513957258e-07, 2.552847531465343473e-07, 2.541551868734882229e-07, 2.530253942157559187e-07, 2.518953770567447863e-07, 2.507651372798176020e-07, 2.496346767685352418e-07, 2.485039974064567291e-07, 2.473731010771883622e-07, 2.462419896644247426e-07, 2.451106650517507809e-07, 2.439791291229356176e-07, 2.428473837617806862e-07, 2.417154308519178547e-07, 2.405832722773029814e-07, 2.394509099217664048e-07, 2.383183456690586570e-07, 2.371855814030954151e-07, 2.360526190077576014e-07, 2.349194603669357995e-07, 2.337861073645779004e-07, 2.326525618844868726e-07, 2.315188258106164305e-07, 2.303849010268705250e-07, 2.292507894171454837e-07, 2.281164928653312551e-07, 2.269820132553560629e-07, 2.258473524709847595e-07, 2.247125123961149695e-07, 2.235774949145730081e-07, 2.224423019101638027e-07, 2.213069352666639582e-07, 2.201713968678715729e-07, 2.190356885974022096e-07, 2.178998123389847745e-07, 2.167637699762606385e-07, 2.156275633928284500e-07, 2.144911944722934486e-07, 2.133546650980608946e-07, 2.122179771536368451e-07, 2.110811325224216638e-07, 2.099441330877591744e-07, 2.088069807329330881e-07, 2.076696773412137222e-07, 2.065322247956550303e-07, 2.053946249793911161e-07, 2.042568797754340844e-07, 2.031189910667194892e-07, 2.019809607361051429e-07, 2.008427906664168824e-07, 1.997044827402443281e-07, 1.985660388402409457e-07, 1.974274608489194345e-07, 1.962887506486963293e-07, 1.951499101219433513e-07, 1.940109411507802559e-07, 1.928718456173236223e-07, 1.917326254037358223e-07, 1.905932823917676492e-07, 1.894538184632568493e-07, 1.883142354999289372e-07, 1.871745353832382447e-07, 1.860347199946674524e-07, 1.848947912155253349e-07, 1.837547509269931087e-07, 1.826146010101703837e-07, 1.814743433458724320e-07, 1.803339798148798498e-07, 1.791935122979812539e-07, 1.780529426755227392e-07, 1.769122728279038962e-07, 1.757715046353760579e-07, 1.746306399778870815e-07, 1.734896807353302698e-07, 1.723486287875915673e-07, 1.712074860140941470e-07, 1.700662542942965192e-07, 1.689249355074909640e-07, 1.677835315325977817e-07, 1.666420442487155466e-07, 1.655004755344144696e-07, 1.643588272682851963e-07, 1.632171013287376367e-07, 1.620752995937932304e-07, 1.609334239415865751e-07, 1.597914762499093791e-07, 1.586494583962586097e-07, 1.575073722580832445e-07, 1.563652197126315408e-07, 1.552230026367478003e-07, 1.540807229074191826e-07, 1.529383824010720845e-07, 1.517959829941205948e-07, 1.506535265627117219e-07, 1.495110149827743635e-07, 1.483684501300142238e-07, 1.472258338799619890e-07, 1.460831681077706480e-07, 1.449404546885102335e-07, 1.437976954970189557e-07, 1.426548924076935884e-07, 1.415120472949948562e-07, 1.403691620329878138e-07, 1.392262384953895438e-07, 1.380832785558209643e-07, 1.369402840875979027e-07, 1.357972569637815735e-07, 1.346541990572246888e-07, 1.335111122403665293e-07, 1.323679983855343025e-07, 1.312248593647351964e-07, 1.300816970497079159e-07, 1.289385133119159332e-07, 1.277953100225966421e-07, 1.266520890525563496e-07, 1.255088522724697815e-07, 1.243656015526762118e-07, 1.232223387632249648e-07, 1.220790657738734824e-07, 1.209357844541364788e-07, 1.197924966730775171e-07, 1.186492042996115459e-07, 1.175059092022989510e-07, 1.163626132493932674e-07, 1.152193183088887321e-07, 1.140760262483143493e-07, 1.129327389350364002e-07, 1.117894582360502316e-07, 1.106461860180293047e-07, 1.095029241473230378e-07, 1.083596744900027044e-07, 1.072164389116572856e-07, 1.060732192776932931e-07, 1.049300174531293106e-07, 1.037868353026456118e-07, 1.026436746905774232e-07, 1.015005374809661968e-07, 1.003574255373516366e-07, 9.921434072307393051e-08, 9.807128490106735250e-08, 9.692825993390810656e-08, 9.578526768386313699e-08, 9.464231001268231422e-08, 9.349938878185079761e-08, 9.235650585263494735e-08, 9.121366308562541631e-08, 9.007086234123855387e-08, 8.892810547951253568e-08, 8.778539435995190662e-08, 8.664273084182756283e-08, 8.550011678397278881e-08, 8.435755404482959279e-08, 8.321504448249710670e-08, 8.207258995452575719e-08, 8.093019231816748442e-08, 7.978785343042321565e-08, 7.864557514758556005e-08, 7.750335932573961697e-08, 7.636120782055980712e-08, 7.521912248715335678e-08, 7.407710518031202540e-08, 7.293515775455845416e-08, 7.179328206368776238e-08, 7.065147996127235263e-08, 6.950975330045380534e-08, 6.836810393373936594e-08, 6.722653371355590435e-08, 6.608504449153668679e-08, 6.494363811907684412e-08, 6.380231644712700019e-08, 6.266108132598811780e-08, 6.151993460581527159e-08, 6.037887813615815907e-08, 5.923791376600893818e-08, 5.809704334405325344e-08, 5.695626871851443481e-08, 5.581559173694830395e-08, 5.467501424679756394e-08, 5.353453809467985482e-08, 5.239416512694115728e-08, 5.125389718940043208e-08, 5.011373612739676935e-08, 4.897368378578709895e-08, 4.783374200899311476e-08, 4.669391264079615377e-08, 4.555419752463854788e-08, 4.441459850346788894e-08, 4.327511741953186815e-08, 4.213575611488224737e-08, 4.099651643091531734e-08, 3.985740020842033733e-08, 3.871840928782926428e-08, 3.757954550901160542e-08, 3.644081071132220280e-08, 3.530220673364850173e-08, 3.416373541420536366e-08, 3.302539859083606065e-08, 3.188719810085719556e-08, 3.074913578085344214e-08, 2.961121346718079507e-08, 2.847343299550827558e-08, 2.733579620086513029e-08, 2.619830491789153646e-08, 2.506096098063292189e-08, 2.392376622258770313e-08, 2.278672247670449958e-08, 2.164983157542974594e-08, 2.051309535050215114e-08, 1.937651563325402697e-08, 1.824009425440519434e-08, 1.710383304411126752e-08, 1.596773383201101848e-08, 1.483179844702124437e-08, 1.369602871763738150e-08, 1.256042647172823053e-08, 1.142499353658381057e-08, 1.028973173891215791e-08, 9.154642904887190094e-09, 8.019728859943520380e-09, 6.884991429076950999e-09, 5.750432436639376181e-09, 4.616053706386334297e-09, 3.481857061524838744e-09, 2.347844324508056834e-09, 1.214017317335965540e-09, 8.037786135013945036e-11, -1.053072222718556720e-09, -2.186331114752849539e-09, -3.319396995201374109e-09, -4.452268045283781937e-09, -5.584942446740824743e-09, -6.717418381786739459e-09, -7.849694033566971932e-09, -8.981767585655645263e-09, -1.011363722226063194e-08, -1.124530112837794049e-08, -1.237675748949139596e-08, -1.350800449177780886e-08, -1.463904032205903341e-08, -1.576986316775450224e-08, -1.690047121708607774e-08, -1.803086265882828479e-08, -1.916103568226091832e-08, -2.029098847762609535e-08, -2.142071923562631184e-08, -2.255022614762935848e-08, -2.367950740587284612e-08, -2.480856120291202293e-08, -2.593738573232905866e-08, -2.706597918818099752e-08, -2.819433976525457284e-08, -2.932246565896849386e-08, -3.045035506562831991e-08, -3.157800618187447953e-08, -3.270541720539122046e-08, -3.383258633435457911e-08, -3.495951176763734925e-08, -3.608619170501292584e-08, -3.721262434665452985e-08, -3.833880789359181859e-08, -3.946474054766269086e-08, -4.059042051126441807e-08, -4.171584598750809541e-08, -4.284101518042214813e-08, -4.396592629440189250e-08, -4.509057753491688769e-08, -4.621496710795986805e-08, -4.733909322030190523e-08, -4.846295407944408749e-08, -4.958654789362063661e-08, -5.070987287175171224e-08, -5.183292722364690494e-08, -5.295570915970663059e-08, -5.407821689107575440e-08, -5.520044862984757365e-08, -5.632240258856369100e-08, -5.744407698066930803e-08, -5.856547002046569864e-08, -5.968657992286212115e-08, -6.080740490357882158e-08, -6.192794317910047332e-08, -6.304819296662798232e-08, -6.416815248428321754e-08, -6.528781995080894960e-08, -6.640719358572368567e-08, -6.752627160952437513e-08, -6.864505224318781150e-08, -6.976353370862497300e-08, -7.088171422863295344e-08, -7.199959202664830353e-08, -7.311716532694906156e-08, -7.423443235460796797e-08, -7.535139133549519181e-08, -7.646804049623112184e-08, -7.758437806438942946e-08, -7.870040226819899253e-08, -7.981611133674781857e-08, -8.093150349993471088e-08, -8.204657698842284061e-08, -8.316133003384193613e-08, -8.427576086849154361e-08, -8.538986772554304432e-08, -8.650364883899353109e-08, -8.761710244366744940e-08, -8.873022677517036796e-08, -8.984302007009078422e-08, -9.095548056570339825e-08, -9.206760650017171236e-08, -9.317939611250088842e-08, -9.429084764249039347e-08, -9.540195933093634794e-08, -9.651272941933572582e-08, -9.762315615008715444e-08, -9.873323776644492325e-08, -9.984297251252133958e-08, -1.009523586332393213e-07, -1.020613943745350892e-07, -1.031700779831110978e-07, -1.042784077063898727e-07, -1.053863817929645782e-07, -1.064939984921022599e-07, -1.076012560539484423e-07, -1.087081527296773184e-07, -1.098146867711963208e-07, -1.109208564313475958e-07, -1.120266599638619336e-07, -1.131320956233108571e-07, -1.142371616653084548e-07, -1.153418563462654626e-07, -1.164461779233419232e-07, -1.175501246548982836e-07, -1.186536948000001194e-07, -1.197568866186193047e-07, -1.208596983718378831e-07, -1.219621283213008041e-07, -1.230641747299162877e-07, -1.241658358613117905e-07, -1.252671099800841457e-07, -1.263679953517043243e-07, -1.274684902427675482e-07, -1.285685929204497070e-07, -1.296683016532060540e-07, -1.307676147102262466e-07, -1.318665303616370255e-07, -1.329650468787020082e-07, -1.340631625333302779e-07, -1.351608755985235109e-07, -1.362581843483288602e-07, -1.373550870575970751e-07, -1.384515820021293551e-07, -1.395476674588803735e-07, -1.406433417054173669e-07, -1.417386030206134322e-07, -1.428334496841070930e-07, -1.439278799765028874e-07, -1.450218921795721149e-07, -1.461154845757599163e-07, -1.472086554486341214e-07, -1.483014030828372597e-07, -1.493937257638429324e-07, -1.504856217781066106e-07, -1.515770894132657205e-07, -1.526681269576479673e-07, -1.537587327007204476e-07, -1.548489049330391986e-07, -1.559386419460082167e-07, -1.570279420320782193e-07, -1.581168034847001109e-07, -1.592052245982789257e-07, -1.602932036683712655e-07, -1.613807389913962765e-07, -1.624678288648321080e-07, -1.635544715871698544e-07, -1.646406654579166265e-07, -1.657264087775492552e-07, -1.668116998477135830e-07, -1.678965369709308078e-07, -1.689809184507975154e-07, -1.700648425919416071e-07, -1.711483076999710541e-07, -1.722313120816757565e-07, -1.733138540447360310e-07, -1.743959318979200760e-07, -1.754775439510381257e-07, -1.765586885149447792e-07, -1.776393639014941349e-07, -1.787195684237351102e-07, -1.797993003956236362e-07, -1.808785581322184278e-07, -1.819573399496365677e-07, -1.830356441650554914e-07, -1.841134690966645212e-07, -1.851908130638678628e-07, -1.862676743869886470e-07, -1.873440513874700465e-07, -1.884199423878286632e-07, -1.894953457116074117e-07, -1.905702596835734340e-07, -1.916446826294287581e-07, -1.927186128760063598e-07, -1.937920487512279172e-07, -1.948649885841001042e-07, -1.959374307046734045e-07, -1.970093734442382518e-07, -1.980808151350340745e-07, -1.991517541104479246e-07, -2.002221887049672561e-07, -2.012921172541860123e-07, -2.023615380947530370e-07, -2.034304495645718413e-07, -2.044988500025123217e-07, -2.055667377486067949e-07, -2.066341111440037288e-07, -2.077009685309219499e-07, -2.087673082528458842e-07, -2.098331286542900556e-07, -2.108984280807484758e-07, -2.119632048791333013e-07, -2.130274573972963660e-07, -2.140911839842234425e-07, -2.151543829902292981e-07, -2.162170527664297021e-07, -2.172791916654216992e-07, -2.183407980407512493e-07, -2.194018702471127301e-07, -2.204624066404915296e-07, -2.215224055779309538e-07, -2.225818654174830985e-07, -2.236407845186446739e-07, -2.246991612418802844e-07, -2.257569939488153666e-07, -2.268142810024317742e-07, -2.278710207665894433e-07, -2.289272116064618460e-07, -2.299828518884901982e-07, -2.310379399801446491e-07, -2.320924742500716647e-07, -2.331464530682913605e-07, -2.341998748056672320e-07, -2.352527378345817957e-07, -2.363050405284132028e-07, -2.373567812617285738e-07, -2.384079584104778899e-07, -2.394585703515159225e-07, -2.405086154630403341e-07, -2.415580921245414390e-07, -2.426069987165665163e-07, -2.436553336208675905e-07, -2.447030952205933907e-07, -2.457502818997667838e-07, -2.467968920439555191e-07, -2.478429240397492910e-07, -2.488883762750045317e-07, -2.499332471387915776e-07, -2.509775350214036688e-07, -2.520212383143097801e-07, -2.530643554103460504e-07, -2.541068847034347268e-07, -2.551488245887752758e-07, -2.561901734628010795e-07, -2.572309297231801234e-07, -2.582710917687704741e-07, -2.593106579998125032e-07, -2.603496268176469840e-07, -2.613879966249066795e-07, -2.624257658254720326e-07, -2.634629328244267492e-07, -2.644994960282471633e-07, -2.655354538445232454e-07, -2.665708046821471205e-07, -2.676055469512725690e-07, -2.686396790633150799e-07, -2.696731994309046815e-07, -2.707061064680812357e-07, -2.717383985900131167e-07, -2.727700742131845646e-07, -2.738011317553544452e-07, -2.748315696355581030e-07, -2.758613862740618329e-07, -2.768905800925542043e-07, -2.779191495138642105e-07, -2.789470929621564038e-07, -2.799744088628802857e-07, -2.810010956427305491e-07, -2.820271517298335312e-07, -2.830525755534719811e-07, -2.840773655442711951e-07, -2.851015201341562943e-07, -2.861250377563534427e-07, -2.871479168453510420e-07, -2.881701558370785089e-07, -2.891917531686379770e-07, -2.902127072784878385e-07, -2.912330166064008691e-07, -2.922526795934656043e-07, -2.932716946820422406e-07, -2.942900603159994345e-07, -2.953077749402024824e-07, -2.963248370011664363e-07, -2.973412449465484135e-07, -2.983569972253369609e-07, -2.993720922879912336e-07, -3.003865285862110782e-07, -3.014003045728978045e-07, -3.024134187025670613e-07, -3.034258694308902739e-07, -3.044376552148861792e-07, -3.054487745131016677e-07, -3.064592257851087511e-07, -3.074690074921558257e-07, -3.084781180966557989e-07, -3.094865560623829720e-07, -3.104943198546028476e-07, -3.115014079398488310e-07, -3.125078187858814133e-07, -3.135135508620986123e-07, -3.145186026390834977e-07, -3.155229725887859326e-07, -3.165266591847146386e-07, -3.175296609014731272e-07, -3.185319762151800931e-07, -3.195336036034226157e-07, -3.205345415450328597e-07, -3.215347885202235476e-07, -3.225343430107766893e-07, -3.235332034995402329e-07, -3.245313684710746151e-07, -3.255288364111458124e-07, -3.265256058069146527e-07, -3.275216751471220511e-07, -3.285170429216319823e-07, -3.295117076218461036e-07, -3.305056677406606089e-07, -3.314989217722416592e-07, -3.324914682121604314e-07, -3.334833055575807891e-07, -3.344744323067598507e-07, -3.354648469596874992e-07, -3.364545480175868978e-07, -3.374435339831466294e-07, -3.384318033604753808e-07, -3.394193546551055422e-07, -3.404061863739471500e-07, -3.413922970254756634e-07, -3.423776851194595373e-07, -3.433623491671441345e-07, -3.443462876812087387e-07, -3.453294991757680369e-07, -3.463119821663336319e-07, -3.472937351699869967e-07, -3.482747567051230343e-07, -3.492550452916211261e-07, -3.502345994508126269e-07, -3.512134177054300425e-07, -3.521914985797919483e-07, -3.531688405995400905e-07, -3.541454422918112291e-07, -3.551213021852042082e-07, -3.560964188097757750e-07, -3.570707906970011388e-07, -3.580444163799535428e-07, -3.590172943930403596e-07, -3.599894232721787985e-07, -3.609608015547614410e-07, -3.619314277796523239e-07, -3.629013004871450108e-07, -3.638704182191438573e-07, -3.648387795189010601e-07, -3.658063829311935282e-07, -3.667732270022818019e-07, -3.677393102798701359e-07, -3.687046313132825239e-07, -3.696691886531984240e-07, -3.706329808518367766e-07, -3.715960064629079886e-07, -3.725582640416219265e-07, -3.735197521446406953e-07, -3.744804693302612261e-07, -3.754404141581509495e-07, -3.763995851895241900e-07, -3.773579809871053731e-07, -3.783156001150805324e-07, -3.792724411392841338e-07, -3.802285026269700583e-07, -3.811837831467790977e-07, -3.821382812691352070e-07, -3.830919955658020295e-07, -3.840449246100682915e-07, -3.849970669768755981e-07, -3.859484212426054575e-07, -3.868989859850355000e-07, -3.878487597837349893e-07, -3.887977412196334184e-07, -3.897459288751918213e-07, -3.906933213345827684e-07, -3.916399171832115804e-07, -3.925857150083294747e-07, -3.935307133985557326e-07, -3.944749109440537237e-07, -3.954183062366642604e-07, -3.963608978696905045e-07, -3.973026844378557746e-07, -3.982436645376956691e-07, -3.991838367671260265e-07, -4.001231997256225495e-07, -4.010617520143903175e-07, -4.019994922358917771e-07, -4.029364189944592004e-07, -4.038725308958127758e-07, -4.048078265472832719e-07, -4.057423045577293988e-07, -4.066759635377503606e-07, -4.076088020992195108e-07, -4.085408188558829396e-07, -4.094720124228962000e-07, -4.104023814169908559e-07, -4.113319244566527293e-07, -4.122606401616901781e-07, -4.131885271536295550e-07, -4.141155840556649674e-07, -4.150418094924561547e-07, -4.159672020902915945e-07, -4.168917604770570570e-07, -4.178154832821878001e-07, -4.187383691368463938e-07, -4.196604166736612517e-07, -4.205816245268687203e-07, -4.215019913324714748e-07, -4.224215157278255899e-07, -4.233401963520217054e-07, -4.242580318458434148e-07, -4.251750208515545021e-07, -4.260911620130795178e-07, -4.270064539759515812e-07, -4.279208953873260384e-07, -4.288344848959283700e-07, -4.297472211522363029e-07, -4.306591028082209890e-07, -4.315701285175213353e-07, -4.324802969353995342e-07, -4.333896067187063359e-07, -4.342980565260492893e-07, -4.352056450175386333e-07, -4.361123708549626844e-07, -4.370182327017466506e-07, -4.379232292229519957e-07, -4.388273590852376348e-07, -4.397306209570294994e-07, -4.406330135082730453e-07, -4.415345354106001180e-07, -4.424351853372865479e-07, -4.433349619632230340e-07, -4.442338639650697268e-07, -4.451318900210176302e-07, -4.460290388109529258e-07, -4.469253090164202326e-07, -4.478206993206206486e-07, -4.487152084083756985e-07, -4.496088349662921351e-07, -4.505015776825616685e-07, -4.513934352469143795e-07, -4.522844063509973432e-07, -4.531744896879623889e-07, -4.540636839526325417e-07, -4.549519878416308248e-07, -4.558394000531249848e-07, -4.567259192870116683e-07, -4.576115442448580298e-07, -4.584962736298740971e-07, -4.593801061470772546e-07, -4.602630405030844025e-07, -4.611450754060779695e-07, -4.620262095661744785e-07, -4.629064416950141056e-07, -4.637857705059344279e-07, -4.646641947140856733e-07, -4.655417130361911156e-07, -4.664183241907124049e-07, -4.672940268978108688e-07, -4.681688198793489418e-07, -4.690427018588504075e-07, -4.699156715617096690e-07, -4.707877277147402271e-07, -4.716588690467458985e-07, -4.725290942880826344e-07, -4.733984021708168107e-07, -4.742667914288483117e-07, -4.751342607977125894e-07, -4.760008090145426000e-07, -4.768664348184311222e-07, -4.777311369500296871e-07, -4.785949141517134848e-07, -4.794577651677427244e-07, -4.803196887438209591e-07, -4.811806836276643981e-07, -4.820407485685517091e-07, -4.828998823175431874e-07, -4.837580836273823947e-07, -4.846153512527119405e-07, -4.854716839496321780e-07, -4.863270804762592930e-07, -4.871815395922920465e-07, -4.880350600591661462e-07, -4.888876406402292653e-07, -4.897392801003275838e-07, -4.905899772061758367e-07, -4.914397307263200439e-07, -4.922885394309321053e-07, -4.931364020919811128e-07, -4.939833174831875050e-07, -4.948292843799853739e-07, -4.956743015596921891e-07, -4.965183678012587118e-07, -4.973614818853999667e-07, -4.982036425947492965e-07, -4.990448487134701029e-07, -4.998850990276083186e-07, -5.007243923250549255e-07, -5.015627273953565374e-07, -5.024001030298669130e-07, -5.032365180217108509e-07, -5.040719711657902249e-07, -5.049064612587433261e-07, -5.057399870991018822e-07, -5.065725474870617229e-07, -5.074041412246378927e-07, -5.082347671156285467e-07, -5.090644239655767276e-07, -5.098931105819268554e-07, -5.107208257737978283e-07, -5.115475683521329477e-07, -5.123733371296676249e-07, -5.131981309209311811e-07, -5.140219485422076720e-07, -5.148447888116937540e-07, -5.156666505492668084e-07, -5.164875325766402662e-07, -5.173074337173317389e-07, -5.181263527966202427e-07, -5.189442886417033237e-07, -5.197612400814740759e-07, -5.205772059466654550e-07, -5.213921850698225377e-07, -5.222061762852994513e-07, -5.230191784292246454e-07, -5.238311903396530402e-07, -5.246422108563840201e-07, -5.254522388209092357e-07, -5.262612730767805333e-07, -5.270693124692074026e-07, -5.278763558452255366e-07, -5.286824020538056749e-07, -5.294874499456304106e-07, -5.302914983732465507e-07, -5.310945461910287991e-07, -5.318965922551447108e-07, -5.326976354237052522e-07, -5.334976745565787710e-07, -5.342967085153529863e-07, -5.350947361636786714e-07, -5.358917563668956896e-07, -5.366877679921777302e-07, -5.374827699086581992e-07, -5.382767609871946383e-07, -5.390697401005270138e-07, -5.398617061232390712e-07, -5.406526579317651111e-07, -5.414425944043472142e-07, -5.422315144212243413e-07, -5.430194168642293576e-07, -5.438063006173085813e-07, -5.445921645661106551e-07, -5.453770075981434589e-07, -5.461608286028792480e-07, -5.469436264715785760e-07, -5.477254000972506961e-07, -5.485061483749831624e-07, -5.492858702015884061e-07, -5.500645644757373543e-07, -5.508422300981152845e-07, -5.516188659710184250e-07, -5.523944709988684212e-07, -5.531690440878115839e-07, -5.539425841458654252e-07, -5.547150900830675252e-07, -5.554865608111159661e-07, -5.562569952436889811e-07, -5.570263922964158384e-07, -5.577947508867017163e-07, -5.585620699338246890e-07, -5.593283483590974037e-07, -5.600935850854937511e-07, -5.608577790379870431e-07, -5.616209291435038495e-07, -5.623830343307558623e-07, -5.631440935303763734e-07, -5.639041056748913698e-07, -5.646630696986822642e-07, -5.654209845381330671e-07, -5.661778491314175695e-07, -5.669336624186038457e-07, -5.676884233418015311e-07, -5.684421308448037392e-07, -5.691947838734149690e-07, -5.699463813754119300e-07, -5.706969223003694767e-07, -5.714464055997988867e-07, -5.721948302271249910e-07, -5.729421951376401164e-07, -5.736884992886550694e-07, -5.744337416392810248e-07, -5.751779211505808273e-07, -5.759210367855304515e-07, -5.766630875090176252e-07, -5.774040722878168421e-07, -5.781439900907213931e-07, -5.788828398883380667e-07, -5.796206206532301915e-07, -5.803573313598840727e-07, -5.810929709847082510e-07, -5.818275385060002562e-07, -5.825610329040855212e-07, -5.832934531611206579e-07, -5.840247982612183951e-07, -5.847550671904202615e-07, -5.854842589366690572e-07, -5.862123724899425788e-07, -5.869394068420472611e-07, -5.876653609867577261e-07, -5.883902339197917950e-07, -5.891140246387990537e-07, -5.898367321433368180e-07, -5.905583554350023766e-07, -5.912788935172356325e-07, -5.919983453954522991e-07, -5.927167100770111831e-07, -5.934339865712211732e-07, -5.941501738892995228e-07, -5.948652710445147879e-07, -5.955792770519855499e-07, -5.962921909288121299e-07, -5.970040116940469422e-07, -5.977147383686661188e-07, -5.984243699756956116e-07, -5.991329055400566085e-07, -5.998403440885212762e-07, -6.005466846500247860e-07, -6.012519262553267123e-07, -6.019560679371469812e-07, -6.026591087302689971e-07, -6.033610476713380486e-07, -6.040618837990032926e-07, -6.047616161538726496e-07, -6.054602437784906752e-07, -6.061577657174704850e-07, -6.068541810173302780e-07, -6.075494887264551136e-07, -6.082436878954048082e-07, -6.089367775765779810e-07, -6.096287568243517085e-07, -6.103196246951739565e-07, -6.110093802474050799e-07, -6.116980225412844700e-07, -6.123855506392289223e-07, -6.130719636055053639e-07, -6.137572605063596028e-07, -6.144414404101557703e-07, -6.151245023870105092e-07, -6.158064455092555589e-07, -6.164872688510786142e-07, -6.171669714886531327e-07, -6.178455525002754482e-07, -6.185230109660325223e-07, -6.191993459681072996e-07, -6.198745565907329678e-07, -6.205486419200428214e-07, -6.212216010441631175e-07, -6.218934330533462719e-07, -6.225641370396177520e-07, -6.232337120972239455e-07, -6.239021573222812772e-07, -6.245694718129438155e-07, -6.252356546693655796e-07, -6.259007049936988452e-07, -6.265646218900736039e-07, -6.272274044647196422e-07, -6.278890518257731000e-07, -6.285495630833810795e-07, -6.292089373498300760e-07, -6.298671737392197650e-07, -6.305242713677562870e-07, -6.311802293537231308e-07, -6.318350468173234793e-07, -6.324887228807999594e-07, -6.331412566684146299e-07, -6.337926473064189129e-07, -6.344428939231667776e-07, -6.350919956489409933e-07, -6.357399516160763725e-07, -6.363867609589253601e-07, -6.370324228138642804e-07, -6.376769363192612556e-07, -6.383203006155976494e-07, -6.389625148452933660e-07, -6.396035781528202473e-07, -6.402434896846787787e-07, -6.408822485893966075e-07, -6.415198540175011198e-07, -6.421563051216420485e-07, -6.427916010564030089e-07, -6.434257409784418938e-07, -6.440587240464401579e-07, -6.446905494210849240e-07, -6.453212162651948733e-07, -6.459507237435277572e-07, -6.465790710229115813e-07, -6.472062572722142187e-07, -6.478322816623390681e-07, -6.484571433662082199e-07, -6.490808415588669581e-07, -6.497033754173156249e-07, -6.503247441206287342e-07, -6.509449468499257493e-07, -6.515639827883701299e-07, -6.521818511211414859e-07, -6.527985510355633734e-07, -6.534140817209082654e-07, -6.540284423685338184e-07, -6.546416321718477202e-07, -6.552536503262767735e-07, -6.558644960293931038e-07, -6.564741684807585168e-07, -6.570826668819048051e-07, -6.576899904365952697e-07, -6.582961383505292112e-07, -6.589011098314634793e-07, -6.595049040893056459e-07, -6.601075203359273408e-07, -6.607089577852963884e-07, -6.613092156534347742e-07, -6.619082931584047739e-07, -6.625061895204153626e-07, -6.631029039616800188e-07, -6.636984357063900430e-07, -6.642927839809783022e-07, -6.648859480138268984e-07, -6.654779270353845879e-07, -6.660687202782606963e-07, -6.666583269770679938e-07, -6.672467463684106253e-07, -6.678339776911301730e-07, -6.684200201860281476e-07, -6.690048730959809727e-07, -6.695885356660492524e-07, -6.701710071431711452e-07, -6.707522867765606812e-07, -6.713323738173931953e-07, -6.719112675189212649e-07, -6.724889671365872591e-07, -6.730654719277478418e-07, -6.736407811519196106e-07, -6.742148940707550627e-07, -6.747878099479136340e-07, -6.753595280491273441e-07, -6.759300476423284865e-07, -6.764993679973345327e-07, -6.770674883862461311e-07, -6.776344080831400582e-07, -6.782001263641986027e-07, -6.787646425077052242e-07, -6.793279557940230600e-07, -6.798900655055785140e-07, -6.804509709269707353e-07, -6.810106713448083526e-07, -6.815691660477896254e-07, -6.821264543268170041e-07, -6.826825354747201512e-07, -6.832374087865103684e-07, -6.837910735593391978e-07, -6.843435290923822725e-07, -6.848947746869286790e-07, -6.854448096463743921e-07, -6.859936332761803471e-07, -6.865412448839859423e-07, -6.870876437794601726e-07, -6.876328292743606046e-07, -6.881768006826588431e-07, -6.887195573202663040e-07, -6.892610985052789015e-07, -6.898014235579476133e-07, -6.903405318005500490e-07, -6.908784225574915654e-07, -6.914150951552889604e-07, -6.919505489225625325e-07, -6.924847831900119400e-07, -6.930177972905259981e-07, -6.935495905590239657e-07, -6.940801623325590953e-07, -6.946095119502939633e-07, -6.951376387534809882e-07, -6.956645420855597333e-07, -6.961902212920015821e-07, -6.967146757204190060e-07, -6.972379047205398349e-07, -6.977599076442055638e-07, -6.982806838453438238e-07, -6.988002326800812496e-07, -6.993185535065819077e-07, -6.998356456851491520e-07, -7.003515085782108011e-07, -7.008661415502822922e-07, -7.013795439680793365e-07, -7.018917152003549710e-07, -7.024026546180163434e-07, -7.029123615940897721e-07, -7.034208355037196872e-07, -7.039280757241531722e-07, -7.044340816348313376e-07, -7.049388526172746541e-07, -7.054423880550479063e-07, -7.059446873339931269e-07, -7.064457498419837452e-07, -7.069455749690141614e-07, -7.074441621072798963e-07, -7.079415106510341257e-07, -7.084376199966795831e-07, -7.089324895427537370e-07, -7.094261186898922622e-07, -7.099185068409387309e-07, -7.104096534008220045e-07, -7.108995577765247873e-07, -7.113882193773085144e-07, -7.118756376144727937e-07, -7.123618119014493208e-07, -7.128467416539010881e-07, -7.133304262894545102e-07, -7.138128652280478723e-07, -7.142940578916492681e-07, -7.147740037043945605e-07, -7.152527020925278774e-07, -7.157301524845309959e-07, -7.162063543108526095e-07, -7.166813070042500000e-07, -7.171550099995261397e-07, -7.176274627336188415e-07, -7.180986646457071676e-07, -7.185686151769654719e-07, -7.190373137707817234e-07, -7.195047598727330475e-07, -7.199709529304686241e-07, -7.204358923937816850e-07, -7.208995777147049115e-07, -7.213620083472452069e-07, -7.218231837477265330e-07, -7.222831033745192833e-07, -7.227417666881389622e-07, -7.231991731513458172e-07, -7.236553222289016350e-07, -7.241102133877909221e-07, -7.245638460971906244e-07, -7.250162198283562005e-07, -7.254673340546910788e-07, -7.259171882518425836e-07, -7.263657818974699546e-07, -7.268131144714496459e-07, -7.272591854558549974e-07, -7.277039943348486617e-07, -7.281475405947609545e-07, -7.285898237240763024e-07, -7.290308432134118549e-07, -7.294705985556025055e-07, -7.299090892455726722e-07, -7.303463147803967543e-07, -7.307822746594006705e-07, -7.312169683839268075e-07, -7.316503954575392134e-07, -7.320825553860059160e-07, -7.325134476771826677e-07, -7.329430718411046366e-07, -7.333714273899634307e-07, -7.337985138380920633e-07, -7.342243307020431975e-07, -7.346488775004630443e-07, -7.350721537541778656e-07, -7.354941589861757631e-07, -7.359148927216064668e-07, -7.363343544877520061e-07, -7.367525438141267657e-07, -7.371694602323393136e-07, -7.375851032761841979e-07, -7.379994724816110303e-07, -7.384125673867384622e-07, -7.388243875318263382e-07, -7.392349324593576469e-07, -7.396442017139161247e-07, -7.400521948422762524e-07, -7.404589113933717040e-07, -7.408643509182805231e-07, -7.412685129703110970e-07, -7.416713971048702313e-07, -7.420730028795576999e-07, -7.424733298541336340e-07, -7.428723775905274165e-07, -7.432701456528168233e-07, -7.436666336073061624e-07, -7.440618410224068419e-07, -7.444557674687170976e-07, -7.448484125190050515e-07, -7.452397757482077597e-07, -7.456298567334072832e-07, -7.460186550539254499e-07, -7.464061702911821884e-07, -7.467924020287934658e-07, -7.471773498525425952e-07, -7.475610133503667882e-07, -7.479433921124316944e-07, -7.483244857310325100e-07, -7.487042938005829668e-07, -7.490828159177817734e-07, -7.494600516814253158e-07, -7.498360006924751019e-07, -7.502106625541499826e-07, -7.505840368717050760e-07, -7.509561232527002765e-07, -7.513269213067946383e-07, -7.516964306458427249e-07, -7.520646508838516222e-07, -7.524315816370778181e-07, -7.527972225238188319e-07, -7.531615731646856422e-07, -7.535246331823797045e-07, -7.538864022017842195e-07, -7.542468798500342251e-07, -7.546060657563238961e-07, -7.549639595520821982e-07, -7.553205608709495938e-07, -7.556758693486909043e-07, -7.560298846232430610e-07, -7.563826063347983264e-07, -7.567340341255913711e-07, -7.570841676401732891e-07, -7.574330065251910517e-07, -7.577805504294716810e-07, -7.581267990040924481e-07, -7.584717519022015139e-07, -7.588154087791790768e-07, -7.591577692926184206e-07, -7.594988331022438582e-07, -7.598385998699514949e-07, -7.601770692598941435e-07, -7.605142409382926478e-07, -7.608501145736030657e-07, -7.611846898364958109e-07, -7.615179663997659734e-07, -7.618499439384167522e-07, -7.621806221296184801e-07, -7.625100006527106355e-07, -7.628380791892667460e-07, -7.631648574229889332e-07, -7.634903350397721810e-07, -7.638145117276992535e-07, -7.641373871770287308e-07, -7.644589610801907736e-07, -7.647792331318410159e-07, -7.650982030287682382e-07, -7.654158704699609656e-07, -7.657322351565893625e-07, -7.660472967919880799e-07, -7.663610550817209482e-07, -7.666735097334942612e-07, -7.669846604572014581e-07, -7.672945069649252403e-07, -7.676030489709282547e-07, -7.679102861916414464e-07, -7.682162183457267395e-07, -7.685208451539793106e-07, -7.688241663393910104e-07, -7.691261816271453871e-07, -7.694268907446005346e-07, -7.697262934212857038e-07, -7.700243893889608069e-07, -7.703211783815198556e-07, -7.706166601350575590e-07, -7.709108343878499480e-07, -7.712037008803466458e-07, -7.714952593552220076e-07, -7.717855095572906291e-07, -7.720744512335629331e-07, -7.723620841332371227e-07, -7.726484080076912400e-07, -7.729334226104712024e-07, -7.732171276973645998e-07, -7.734995230262798867e-07, -7.737806083573355325e-07, -7.740603834528310106e-07, -7.743388480772490217e-07, -7.746160019972417298e-07, -7.748918449816922777e-07, -7.751663768016183312e-07, -7.754395972302438652e-07, -7.757115060429721646e-07, -7.759821030173724832e-07, -7.762513879332475950e-07, -7.765193605725542787e-07, -7.767860207193874359e-07, -7.770513681601131813e-07, -7.773154026832286585e-07, -7.775781240794078858e-07, -7.778395321415706833e-07, -7.780996266647185609e-07, -7.783584074461399111e-07, -7.786158742852453677e-07, -7.788720269836313330e-07, -7.791268653451219059e-07, -7.793803891756960372e-07, -7.796325982834731297e-07, -7.798834924788417879e-07, -7.801330715743163510e-07, -7.803813353845938564e-07, -7.806282837266155552e-07, -7.808739164194148700e-07, -7.811182332842596961e-07, -7.813612341446197912e-07, -7.816029188261130943e-07, -7.818432871565372777e-07, -7.820823389659262869e-07, -7.823200740864059207e-07, -7.825564923523731913e-07, -7.827915936003632336e-07, -7.830253776690858336e-07, -7.832578443994914973e-07, -7.834889936346281959e-07, -7.837188252197690562e-07, -7.839473390023981728e-07, -7.841745348321370220e-07, -7.844004125607886134e-07, -7.846249720424007000e-07, -7.848482131330970064e-07, -7.850701356912822113e-07, -7.852907395774892693e-07, -7.855100246544433624e-07, -7.857279907870510998e-07, -7.859446378424011539e-07, -7.861599656897543067e-07, -7.863739742005817788e-07, -7.865866632485019135e-07, -7.867980327093241165e-07, -7.870080824610399621e-07, -7.872168123838210757e-07, -7.874242223600047341e-07, -7.876303122741423584e-07, -7.878350820129379979e-07, -7.880385314652769177e-07, -7.882406605222276102e-07, -7.884414690770231606e-07, -7.886409570251146100e-07, -7.888391242640956749e-07, -7.890359706937421348e-07, -7.892314962160213610e-07, -7.894257007350690233e-07, -7.896185841571906781e-07, -7.898101463909013672e-07, -7.900003873468606082e-07, -7.901893069379159106e-07, -7.903769050790903880e-07, -7.905631816875884757e-07, -7.907481366827741193e-07, -7.909317699862243499e-07, -7.911140815216570745e-07, -7.912950712149775564e-07, -7.914747389942631694e-07, -7.916530847897633973e-07, -7.918301085339246095e-07, -7.920058101613465454e-07, -7.921801896088056068e-07, -7.923532468152561293e-07, -7.925249817218266761e-07, -7.926953942718055325e-07, -7.928644844106869756e-07, -7.930322520861062637e-07, -7.931986972478904591e-07, -7.933638198480254992e-07, -7.935276198406676315e-07, -7.936900971821736951e-07, -7.938512518310504048e-07, -7.940110837479474685e-07, -7.941695928957461025e-07, -7.943267792394510347e-07, -7.944826427462518087e-07, -7.946371833855259599e-07, -7.947904011288042874e-07, -7.949422959497564546e-07, -7.950928678242814093e-07, -7.952421167304088110e-07, -7.953900426483319590e-07, -7.955366455604586141e-07, -7.956819254512907205e-07, -7.958258823075671302e-07, -7.959685161181541246e-07, -7.961098268740861776e-07, -7.962498145685929548e-07, -7.963884791970448919e-07, -7.965258207569632526e-07, -7.966618392480782572e-07, -7.967965346722550720e-07, -7.969299070335174213e-07, -7.970619563380932206e-07, -7.971926825943127214e-07, -7.973220858127285777e-07, -7.974501660060229904e-07, -7.975769231890484704e-07, -7.977023573788149217e-07, -7.978264685945224635e-07, -7.979492568574767273e-07, -7.980707221912041591e-07, -7.981908646213558812e-07, -7.983096841757399853e-07, -7.984271808843707661e-07, -7.985433547793590310e-07, -7.986582058950044263e-07, -7.987717342677811435e-07, -7.988839399362962032e-07, -7.989948229413158190e-07, -7.991043833257951490e-07, -7.992126211347876641e-07, -7.993195364155661672e-07, -7.994251292175210434e-07, -7.995293995922084356e-07, -7.996323475933370087e-07, -7.997339732767761030e-07, -7.998342767005333936e-07, -7.999332579248016886e-07, -8.000309170118981550e-07, -8.001272540263029639e-07, -8.002222690346481741e-07, -8.003159621057186841e-07, -8.004083333104399507e-07, -8.004993827219135644e-07, -8.005891104153690738e-07, -8.006775164681938444e-07, -8.007646009599234229e-07, -8.008503639722348669e-07, -8.009348055889755445e-07, -8.010179258961203585e-07, -8.010997249817990637e-07, -8.011802029362851494e-07, -8.012593598519993334e-07, -8.013371958235074444e-07, -8.014137109475348216e-07, -8.014889053229315864e-07, -8.015627790507028179e-07, -8.016353322339909769e-07, -8.017065649780910466e-07, -8.017764773904225809e-07, -8.018450695805805258e-07, -8.019123416602702099e-07, -8.019782937433520255e-07, -8.020429259458208877e-07, -8.021062383858123760e-07, -8.021682311836144862e-07, -8.022289044616368199e-07, -8.022882583444336661e-07, -8.023462929587008251e-07, -8.024030084332681964e-07, -8.024584048990975557e-07, -8.025124824892963190e-07, -8.025652413391066372e-07, -8.026166815858945961e-07, -8.026668033691662045e-07, -8.027156068305644294e-07, -8.027630921138702549e-07, -8.028092593649920943e-07, -8.028541087319523430e-07, -8.028976403649336485e-07, -8.029398544162362405e-07, -8.029807510402823779e-07, -8.030203303936458893e-07, -8.030585926350146915e-07, -8.030955379251916369e-07, -8.031311664271383470e-07, -8.031654783059194147e-07, -8.031984737287319438e-07, -8.032301528649130671e-07, -8.032605158858914536e-07, -8.032895629652593058e-07, -8.033172942787091508e-07, -8.033437100040570269e-07, -8.033688103212558248e-07, -8.033925954123685004e-07, -8.034150654615741095e-07, -8.034362206551866544e-07, -8.034560611816343317e-07, -8.034745872314593205e-07, -8.034917989973376875e-07, -8.035076966740353417e-07, -8.035222804584669028e-07, -8.035355505496422322e-07, -8.035475071486963973e-07, -8.035581504588697656e-07, -8.035674806855415688e-07, -8.035754980361710339e-07, -8.035822027203584755e-07, -8.035875949498006145e-07, -8.035916749383064603e-07, -8.035944429018132987e-07, -8.035958990583393635e-07, -8.035960436280362467e-07, -8.035948768331613704e-07, -8.035923988980697277e-07, -8.035886100492319883e-07, -8.035835105152225342e-07, -8.035771005267202006e-07, -8.035693803165129348e-07, -8.035603501194918670e-07, -8.035500101726512042e-07, -8.035383607150895009e-07, -8.035254019880037299e-07, -8.035111342346922468e-07, -8.034955577005636840e-07, -8.034786726331149277e-07, -8.034604792819449881e-07, -8.034409778987592346e-07, -8.034201687373490670e-07, -8.033980520536105502e-07, -8.033746281055326616e-07, -8.033498971532031145e-07, -8.033238594587982997e-07, -8.032965152865915438e-07, -8.032678649029523681e-07, -8.032379085763388656e-07, -8.032066465773008771e-07, -8.031740791784773442e-07, -8.031402066546017094e-07, -8.031050292824911159e-07, -8.030685473410531846e-07, -8.030307611112827313e-07, -8.029916708762645196e-07, -8.029512769211654262e-07, -8.029095795332352876e-07, -8.028665790018119823e-07, -8.028222756183148664e-07, -8.027766696762475267e-07, -8.027297614711900509e-07, -8.026815513008110985e-07, -8.026320394648549830e-07, -8.025812262651425193e-07, -8.025291120055786468e-07, -8.024756969921411006e-07, -8.024209815328858109e-07, -8.023649659379427739e-07, -8.023076505195216638e-07, -8.022490355919012441e-07, -8.021891214714346624e-07, -8.021279084765479673e-07, -8.020653969277379914e-07, -8.020015871475725628e-07, -8.019364794606883877e-07, -8.018700741937896738e-07, -8.018023716756549063e-07, -8.017333722371203316e-07, -8.016630762110960500e-07, -8.015914839325501342e-07, -8.015185957385222881e-07, -8.014444119681083877e-07, -8.013689329624717049e-07, -8.012921590648372955e-07, -8.012140906204894584e-07, -8.011347279767700414e-07, -8.010540714830841587e-07, -8.009721214908878028e-07, -8.008888783537051033e-07, -8.008043424271017508e-07, -8.007185140687129493e-07, -8.006313936382188519e-07, -8.005429814973575843e-07, -8.004532780099127508e-07, -8.003622835417299514e-07, -8.002699984606934888e-07, -8.001764231367483909e-07, -8.000815579418760584e-07, -7.999854032501181942e-07, -7.998879594375546740e-07, -7.997892268823138168e-07, -7.996892059645650792e-07, -7.995878970665314434e-07, -7.994853005724631591e-07, -7.993814168686617781e-07, -7.992762463434760246e-07, -7.991697893872823142e-07, -7.990620463924979882e-07, -7.989530177535859726e-07, -7.988427038670341312e-07, -7.987311051313784540e-07, -7.986182219471846331e-07, -7.985040547170444640e-07, -7.983886038455946910e-07, -7.982718697394992203e-07, -7.981538528074512371e-07, -7.980345534601759589e-07, -7.979139721104240705e-07, -7.977921091729765946e-07, -7.976689650646407630e-07, -7.975445402042470510e-07, -7.974188350126596606e-07, -7.972918499127570376e-07, -7.971635853294401312e-07, -7.970340416896360990e-07, -7.969032194222913192e-07, -7.967711189583674734e-07, -7.966377407308581693e-07, -7.965030851747543181e-07, -7.963671527270769574e-07, -7.962299438268594632e-07, -7.960914589151462796e-07, -7.959516984350021302e-07, -7.958106628314966653e-07, -7.956683525517094388e-07, -7.955247680447365781e-07, -7.953799097616823142e-07, -7.952337781556504049e-07, -7.950863736817631937e-07, -7.949376967971427629e-07, -7.947877479609092395e-07, -7.946365276341938188e-07, -7.944840362801314581e-07, -7.943302743638570656e-07, -7.941752423525038059e-07, -7.940189407151982298e-07, -7.938613699230746741e-07, -7.937025304492609672e-07, -7.935424227688773711e-07, -7.933810473590414514e-07, -7.932184046988722064e-07, -7.930544952694601041e-07, -7.928893195539080565e-07, -7.927228780372966918e-07, -7.925551712067007655e-07, -7.923861995511828076e-07, -7.922159635617899465e-07, -7.920444637315533791e-07, -7.918717005554921829e-07, -7.916976745306073868e-07, -7.915223861558820765e-07, -7.913458359322859478e-07, -7.911680243627509540e-07, -7.909889519521975643e-07, -7.908086192075467279e-07, -7.906270266376552879e-07, -7.904441747533817319e-07, -7.902600640675543228e-07, -7.900746950949617813e-07, -7.898880683523788025e-07, -7.897001843585432924e-07, -7.895110436341634613e-07, -7.893206467019216357e-07, -7.891289940864647293e-07, -7.889360863143838078e-07, -7.887419239142765585e-07, -7.885465074166645976e-07, -7.883498373540522341e-07, -7.881519142609028581e-07, -7.879527386736299413e-07, -7.877523111306074133e-07, -7.875506321721913666e-07, -7.873477023406533528e-07, -7.871435221802461335e-07, -7.869380922371762579e-07, -7.867314130595752632e-07, -7.865234851975733669e-07, -7.863143092032049165e-07, -7.861038856304780579e-07, -7.858922150353482660e-07, -7.856792979756901805e-07, -7.854651350113650508e-07, -7.852497267041556208e-07, -7.850330736177719518e-07, -7.848151763178957864e-07, -7.845960353721352313e-07, -7.843756513500173469e-07, -7.841540248230471210e-07, -7.839311563646427774e-07, -7.837070465501455162e-07, -7.834816959568460898e-07, -7.832551051639702974e-07, -7.830272747526699852e-07, -7.827982053060266464e-07, -7.825678974090409389e-07, -7.823363516486554498e-07, -7.821035686137389188e-07, -7.818695488950566986e-07, -7.816342930853386228e-07, -7.813978017792224669e-07, -7.811600755732426188e-07, -7.809211150658817483e-07, -7.806809208575284551e-07, -7.804394935504907156e-07, -7.801968337489976827e-07, -7.799529420591703575e-07, -7.797078190890699760e-07, -7.794614654486549160e-07, -7.792138817497979559e-07, -7.789650686062802392e-07, -7.787150266337952981e-07, -7.784637564499235365e-07, -7.782112586741705583e-07, -7.779575339279344508e-07, -7.777025828345295017e-07, -7.774464060191566585e-07, -7.771890041089284104e-07, -7.769303777328323659e-07, -7.766705275217768863e-07, -7.764094541085552992e-07, -7.761471581278589210e-07, -7.758836402162802336e-07, -7.756189010122733916e-07, -7.753529411562129849e-07, -7.750857612903484049e-07, -7.748173620588195149e-07, -7.745477441076537908e-07, -7.742769080847661100e-07, -7.740048546399365162e-07, -7.737315844248468539e-07, -7.734570980930514398e-07, -7.731813962999830980e-07, -7.729044797029548539e-07, -7.726263489611663929e-07, -7.723470047356563090e-07, -7.720664476893708202e-07, -7.717846784871202523e-07, -7.715016977955814741e-07, -7.712175062833127204e-07, -7.709321046207104993e-07, -7.706454934800526850e-07, -7.703576735355171523e-07, -7.700686454630846857e-07, -7.697784099406354355e-07, -7.694869676479156709e-07, -7.691943192664947942e-07, -7.689004654798317261e-07, -7.686054069732319192e-07, -7.683091444338576283e-07, -7.680116785507341570e-07, -7.677130100147025301e-07, -7.674131395184842912e-07, -7.671120677566752563e-07, -7.668097954256561513e-07, -7.665063232236987033e-07, -7.662016518509177833e-07, -7.658957820092395360e-07, -7.655887144024489201e-07, -7.652804497362162837e-07, -7.649709887179752859e-07, -7.646603320570406340e-07, -7.643484804645681674e-07, -7.640354346534988474e-07, -7.637211953386874005e-07, -7.634057632367393700e-07, -7.630891390661426185e-07, -7.627713235472037999e-07, -7.624523174020174429e-07, -7.621321213545681244e-07, -7.618107361306341196e-07, -7.614881624577903660e-07, -7.611644010654661685e-07, -7.608394526849143877e-07, -7.605133180491583950e-07, -7.601859978931179627e-07, -7.598574929534469511e-07, -7.595278039686601521e-07, -7.591969316790717731e-07, -7.588648768268047545e-07, -7.585316401557932051e-07, -7.581972224117930952e-07, -7.578616243423259300e-07, -7.575248466967545580e-07, -7.571868902262483374e-07, -7.568477556837225730e-07, -7.565074438239698065e-07, -7.561659554035450432e-07, -7.558232911807708346e-07, -7.554794519158086407e-07, -7.551344383705956199e-07, -7.547882513088619940e-07, -7.544408914961434350e-07, -7.540923596997223031e-07, -7.537426566887094906e-07, -7.533917832339864006e-07, -7.530397401082249580e-07, -7.526865280858725745e-07, -7.523321479431727951e-07, -7.519766004581099237e-07, -7.516198864104877965e-07, -7.512620065818682667e-07, -7.509029617555882511e-07, -7.505427527167679883e-07, -7.501813802523016157e-07, -7.498188451508151354e-07, -7.494551482027449765e-07, -7.490902902002811383e-07, -7.487242719373784130e-07, -7.483570942097662328e-07, -7.479887578148983772e-07, -7.476192635520321707e-07, -7.472486122221637903e-07, -7.468768046280501831e-07, -7.465038415742026070e-07, -7.461297238669025131e-07, -7.457544523141374884e-07, -7.453780277256915711e-07, -7.450004509130848993e-07, -7.446217226895805930e-07, -7.442418438701902600e-07, -7.438608152716824662e-07, -7.434786377125294786e-07, -7.430953120129818037e-07, -7.427108389950166247e-07, -7.423252194823494484e-07, -7.419384543004507278e-07, -7.415505442764741821e-07, -7.411614902393376884e-07, -7.407712930197368343e-07, -7.403799534500048396e-07, -7.399874723642647048e-07, -7.395938505983602837e-07, -7.391990889898245196e-07, -7.388031883779487963e-07, -7.384061496037355040e-07, -7.380079735099035455e-07, -7.376086609409071819e-07, -7.372082127428692237e-07, -7.368066297636558867e-07, -7.364039128528999800e-07, -7.360000628618447339e-07, -7.355950806435045248e-07, -7.351889670526060060e-07, -7.347817229455326275e-07, -7.343733491804201383e-07, -7.339638466170902010e-07, -7.335532161170611910e-07, -7.331414585435595254e-07, -7.327285747615191340e-07, -7.323145656375067087e-07, -7.318994320398949211e-07, -7.314831748386376418e-07, -7.310657949054415702e-07, -7.306472931137008012e-07, -7.302276703384407093e-07, -7.298069274564607793e-07, -7.293850653461969640e-07, -7.289620848877348126e-07, -7.285379869628914215e-07, -7.281127724551615417e-07, -7.276864422496490751e-07, -7.272589972332480218e-07, -7.268304382944163223e-07, -7.264007663233414527e-07, -7.259699822118693794e-07, -7.255380868535116533e-07, -7.251050811434491155e-07, -7.246709659785393087e-07, -7.242357422572544325e-07, -7.237994108797815041e-07, -7.233619727479637025e-07, -7.229234287652333461e-07, -7.224837798367824640e-07, -7.220430268694053546e-07, -7.216011707715117134e-07, -7.211582124532172665e-07, -7.207141528262699724e-07, -7.202689928040597629e-07, -7.198227333016433190e-07, -7.193753752356668849e-07, -7.189269195244691823e-07, -7.184773670880336594e-07, -7.180267188479052695e-07, -7.175749757273724773e-07, -7.171221386513126756e-07, -7.166682085461912320e-07, -7.162131863401611215e-07, -7.157570729629880698e-07, -7.152998693460619883e-07, -7.148415764223989858e-07, -7.143821951266576738e-07, -7.139217263950683334e-07, -7.134601711655291596e-07, -7.129975303775417806e-07, -7.125338049722216343e-07, -7.120689958923216849e-07, -7.116031040821472963e-07, -7.111361304876740754e-07, -7.106680760564646514e-07, -7.101989417376950393e-07, -7.097287284821418289e-07, -7.092574372422045250e-07, -7.087850689718273028e-07, -7.083116246266168518e-07, -7.078371051637495189e-07, -7.073615115420018025e-07, -7.068848447217705748e-07, -7.064071056649803321e-07, -7.059282953352055908e-07, -7.054484146975917958e-07, -7.049674647188671789e-07, -7.044854463673531349e-07, -7.040023606129633750e-07, -7.035182084271468572e-07, -7.030329907829643376e-07, -7.025467086551085930e-07, -7.020593630197416845e-07, -7.015709548546695527e-07, -7.010814851392740429e-07, -7.005909548544473659e-07, -7.000993649827075065e-07, -6.996067165081240020e-07, -6.991130104163275773e-07, -6.986182476945312151e-07, -6.981224293314526517e-07, -6.976255563174033163e-07, -6.971276296443148000e-07, -6.966286503055532505e-07, -6.961286192961203298e-07, -6.956275376125685117e-07, -6.951254062529154249e-07, -6.946222262168726586e-07, -6.941179985055537468e-07, -6.936127241216945039e-07, -6.931064040695581561e-07, -6.925990393549620236e-07, -6.920906309851885814e-07, -6.915811799691906540e-07, -6.910706873173172934e-07, -6.905591540415289262e-07, -6.900465811553190025e-07, -6.895329696736277050e-07, -6.890183206130390952e-07, -6.885026349916090606e-07, -6.879859138288708197e-07, -6.874681581459395312e-07, -6.869493689654500367e-07, -6.864295473114717338e-07, -6.859086942097348401e-07, -6.853868106873327669e-07, -6.848638977729622530e-07, -6.843399564968218264e-07, -6.838149878905367363e-07, -6.832889929873603354e-07, -6.827619728219912260e-07, -6.822339284305832132e-07, -6.817048608508534071e-07, -6.811747711220167898e-07, -6.806436602847028886e-07, -6.801115293811570518e-07, -6.795783794550545251e-07, -6.790442115515182397e-07, -6.785090267172204558e-07, -6.779728260003016591e-07, -6.774356104503795612e-07, -6.768973811185854153e-07, -6.763581390574584553e-07, -6.758178853210800446e-07, -6.752766209650105717e-07, -6.747343470461955359e-07, -6.741910646231835523e-07, -6.736467747559282517e-07, -6.731014785058055392e-07, -6.725551769357278378e-07, -6.720078711100436087e-07, -6.714595620945668921e-07, -6.709102509565913888e-07, -6.703599387648062863e-07, -6.698086265894179142e-07, -6.692563155020675815e-07, -6.687030065758508471e-07, -6.681487008853085198e-07, -6.675933995064539753e-07, -6.670371035166787116e-07, -6.664798139948871337e-07, -6.659215320214003092e-07, -6.653622586779806380e-07, -6.648019950478301584e-07, -6.642407422156075937e-07, -6.636785012673364490e-07, -6.631152732905435010e-07, -6.625510593741571543e-07, -6.619858606085395227e-07, -6.614196780854976521e-07, -6.608525128981921474e-07, -6.602843661412814850e-07, -6.597152389108141226e-07, -6.591451323042566628e-07, -6.585740474204940649e-07, -6.580019853598442559e-07, -6.574289472239705691e-07, -6.568549341160118692e-07, -6.562799471404973192e-07, -6.557039874033549575e-07, -6.551270560119197440e-07, -6.545491540749490185e-07, -6.539702827025294336e-07, -6.533904430062168200e-07, -6.528096360989375082e-07, -6.522278630950078094e-07, -6.516451251101667327e-07, -6.510614232614630118e-07, -6.504767586673836425e-07, -6.498911324478698702e-07, -6.493045457241035258e-07, -6.487169996187413364e-07, -6.481284952558197401e-07, -6.475390337606571591e-07, -6.469486162601127687e-07, -6.463572438822481073e-07, -6.457649177565943155e-07, -6.451716390140241284e-07, -6.445774087868021679e-07, -6.439822282084560877e-07, -6.433860984140533418e-07, -6.427890205398440537e-07, -6.421909957235359850e-07, -6.415920251041907734e-07, -6.409921098221280065e-07, -6.403912510191628142e-07, -6.397894498383898760e-07, -6.391867074241954903e-07, -6.385830249223946886e-07, -6.379784034801357323e-07, -6.373728442458159385e-07, -6.367663483693389667e-07, -6.361589170017744173e-07, -6.355505512956283525e-07, -6.349412524047303237e-07, -6.343310214841523736e-07, -6.337198596904351942e-07, -6.331077681813768980e-07, -6.324947481160430762e-07, -6.318808006549020068e-07, -6.312659269597377275e-07, -6.306501281935532623e-07, -6.300334055208159434e-07, -6.294157601072354885e-07, -6.287971931197781889e-07, -6.281777057267945993e-07, -6.275572990979192704e-07, -6.269359744040897016e-07, -6.263137328175737632e-07, -6.256905755118573590e-07, -6.250665036618119269e-07, -6.244415184435688662e-07, -6.238156210345597720e-07, -6.231888126135052116e-07, -6.225610943604415122e-07, -6.219324674566182698e-07, -6.213029330846389567e-07, -6.206724924283802414e-07, -6.200411466729836248e-07, -6.194088970049048848e-07, -6.187757446117965512e-07, -6.181416906826610068e-07, -6.175067364077512784e-07, -6.168708829785878717e-07, -6.162341315879570774e-07, -6.155964834299459109e-07, -6.149579396998177049e-07, -6.143185015941786568e-07, -6.136781703108711029e-07, -6.130369470489892938e-07, -6.123948330088849010e-07, -6.117518293921907329e-07, -6.111079374017103036e-07, -6.104631582415731572e-07, -6.098174931171300474e-07, -6.091709432349749608e-07, -6.085235098029714802e-07, -6.078751940301406592e-07, -6.072259971268240757e-07, -6.065759203045684234e-07, -6.059249647761590763e-07, -6.052731317556071706e-07, -6.046204224581813690e-07, -6.039668381002961578e-07, -6.033123798996722543e-07, -6.026570490752224685e-07, -6.020008468470803967e-07, -6.013437744366028568e-07, -6.006858330663812170e-07, -6.000270239601430346e-07, -5.993673483429082271e-07, -5.987068074408771586e-07, -5.980454024814571090e-07, -5.973831346932881090e-07, -5.967200053061309195e-07, -5.960560155509982164e-07, -5.953911666601869892e-07, -5.947254598670197724e-07, -5.940588964061275548e-07, -5.933914775133274889e-07, -5.927232044255190235e-07, -5.920540783809789891e-07, -5.913841006189788443e-07, -5.907132723800807144e-07, -5.900415949060253708e-07, -5.893690694396478460e-07, -5.886956972250181460e-07, -5.880214795074585096e-07, -5.873464175332956506e-07, -5.866705125501407023e-07, -5.859937658067677743e-07, -5.853161785530043678e-07, -5.846377520400059195e-07, -5.839584875200071980e-07, -5.832783862463413620e-07, -5.825974494735821557e-07, -5.819156784574548646e-07, -5.812330744547270482e-07, -5.805496387235090251e-07, -5.798653725228593671e-07, -5.791802771130952314e-07, -5.784943537556746224e-07, -5.778076037130819367e-07, -5.771200282491049431e-07, -5.764316286285921070e-07, -5.757424061174565088e-07, -5.750523619828305324e-07, -5.743614974929779863e-07, -5.736698139171700127e-07, -5.729773125260034663e-07, -5.722839945909933856e-07, -5.715898613848949712e-07, -5.708949141815448728e-07, -5.701991542558984592e-07, -5.695025828840208181e-07, -5.688052013431155552e-07, -5.681070109114100215e-07, -5.674080128683202731e-07, -5.667082084943362977e-07, -5.660075990710570609e-07, -5.653061858811680599e-07, -5.646039702084887574e-07, -5.639009533378408675e-07, -5.631971365552263391e-07, -5.624925211477067593e-07, -5.617871084034315171e-07, -5.610808996116655440e-07, -5.603738960626659647e-07, -5.596660990478577507e-07, -5.589575098597161941e-07, -5.582481297917902014e-07, -5.575379601387035640e-07, -5.568270021961785690e-07, -5.561152572609215441e-07, -5.554027266307900406e-07, -5.546894116046761548e-07, -5.539753134825346916e-07, -5.532604335653803059e-07, -5.525447731553138664e-07, -5.518283335554019653e-07, -5.511111160698507718e-07, -5.503931220038917885e-07, -5.496743526637994273e-07, -5.489548093569260552e-07, -5.482344933915773750e-07, -5.475134060771887138e-07, -5.467915487242020974e-07, -5.460689226441004489e-07, -5.453455291493978486e-07, -5.446213695536709793e-07, -5.438964451714341894e-07, -5.431707573183186401e-07, -5.424443073109520271e-07, -5.417170964669822972e-07, -5.409891261051106825e-07, -5.402603975449577636e-07, -5.395309121072305469e-07, -5.388006711137318875e-07, -5.380696758870954738e-07, -5.373379277510848306e-07, -5.366054280304709222e-07, -5.358721780509328385e-07, -5.351381791392132246e-07, -5.344034326231504691e-07, -5.336679398313893357e-07, -5.329317020936929893e-07, -5.321947207408169996e-07, -5.314569971043848278e-07, -5.307185325172202864e-07, -5.299793283129139645e-07, -5.292393858261706172e-07, -5.284987063926656994e-07, -5.277572913489645799e-07, -5.270151420326680195e-07, -5.262722597824459462e-07, -5.255286459377472408e-07, -5.247843018391161035e-07, -5.240392288280633051e-07, -5.232934282469396611e-07, -5.225469014392726219e-07, -5.217996497493294152e-07, -5.210516745224622118e-07, -5.203029771049436960e-07, -5.195535588440283687e-07, -5.188034210877955295e-07, -5.180525651854935951e-07, -5.173009924870929718e-07, -5.165487043436314335e-07, -5.157957021070892897e-07, -5.150419871302558726e-07, -5.142875607670468563e-07, -5.135324243722129834e-07, -5.127765793013734172e-07, -5.120200269111721250e-07, -5.112627685591765515e-07, -5.105048056037502469e-07, -5.097461394044011025e-07, -5.089867713213312593e-07, -5.082267027157887321e-07, -5.074659349498975795e-07, -5.067044693867022673e-07, -5.059423073901481867e-07, -5.051794503251215709e-07, -5.044158995573188399e-07, -5.036516564534294540e-07, -5.028867223810152117e-07, -5.021210987085300488e-07, -5.013547868053277677e-07, -5.005877880416825782e-07, -4.998201037886618303e-07, -4.990517354183186088e-07, -4.982826843035562077e-07, -4.975129518181625411e-07, -4.967425393368376716e-07, -4.959714482350598735e-07, -4.951996798892841559e-07, -4.944272356768025021e-07, -4.936541169757792339e-07, -4.928803251652448698e-07, -4.921058616251299009e-07, -4.913307277361278892e-07, -4.905549248798928261e-07, -4.897784544389073129e-07, -4.890013177965049017e-07, -4.882235163368741181e-07, -4.874450514450895902e-07, -4.866659245069734527e-07, -4.858861369092952466e-07, -4.851056900396338529e-07, -4.843245852864085152e-07, -4.835428240389142033e-07, -4.827604076871820644e-07, -4.819773376221744527e-07, -4.811936152356546977e-07, -4.804092419202132568e-07, -4.796242190692713149e-07, -4.788385480771031249e-07, -4.780522303387115998e-07, -4.772652672500119072e-07, -4.764776602077089140e-07, -4.756894106093185211e-07, -4.749005198532050389e-07, -4.741109893384415855e-07, -4.733208204649732464e-07, -4.725300146336555619e-07, -4.717385732459429771e-07, -4.709464977042243737e-07, -4.701537894116843677e-07, -4.693604497722074361e-07, -4.685664801905337709e-07, -4.677718820722954368e-07, -4.669766568237111750e-07, -4.661808058519231510e-07, -4.653843305648524833e-07, -4.645872323710666823e-07, -4.637895126801503861e-07, -4.629911729022246695e-07, -4.621922144483216970e-07, -4.613926387302410978e-07, -4.605924471604551514e-07, -4.597916411522643765e-07, -4.589902221198387182e-07, -4.581881914779016048e-07, -4.573855506420748488e-07, -4.565823010287350221e-07, -4.557784440548759188e-07, -4.549739811384794500e-07, -4.541689136980445873e-07, -4.533632431529462934e-07, -4.525569709232705621e-07, -4.517500984298833457e-07, -4.509426270942476490e-07, -4.501345583388050114e-07, -4.493258935864906338e-07, -4.485166342611125846e-07, -4.477067817872015572e-07, -4.468963375898832853e-07, -4.460853030952108454e-07, -4.452736797298565477e-07, -4.444614689211451825e-07, -4.436486720972185034e-07, -4.428352906869011843e-07, -4.420213261197309420e-07, -4.412067798259858532e-07, -4.403916532365491994e-07, -4.395759477831135493e-07, -4.387596648980728149e-07, -4.379428060143810615e-07, -4.371253725658986269e-07, -4.363073659870791425e-07, -4.354887877129939383e-07, -4.346696391795129378e-07, -4.338499218231551035e-07, -4.330296370811274530e-07, -4.322087863913169070e-07, -4.313873711923258114e-07, -4.305653929233321237e-07, -4.297428530242897368e-07, -4.289197529357914708e-07, -4.280960940991003609e-07, -4.272718779561820032e-07, -4.264471059495627293e-07, -4.256217795225347478e-07, -4.247959001190163302e-07, -4.239694691835862752e-07, -4.231424881614739024e-07, -4.223149584985983872e-07, -4.214868816414240234e-07, -4.206582590371672171e-07, -4.198290921336563560e-07, -4.189993823793593901e-07, -4.181691312234242257e-07, -4.173383401155287994e-07, -4.165070105060903492e-07, -4.156751438461245416e-07, -4.148427415872794591e-07, -4.140098051818290888e-07, -4.131763360827078916e-07, -4.123423357433691889e-07, -4.115078056179915213e-07, -4.106727471613355528e-07, -4.098371618287771050e-07, -4.090010510763068925e-07, -4.081644163605597455e-07, -4.073272591386718318e-07, -4.064895808684909859e-07, -4.056513830084359951e-07, -4.048126670175228051e-07, -4.039734343554012601e-07, -4.031336864822106301e-07, -4.022934248587526712e-07, -4.014526509465300587e-07, -4.006113662074156749e-07, -3.997695721040136556e-07, -3.989272700995092547e-07, -3.980844616575619582e-07, -3.972411482425154433e-07, -3.963973313192543234e-07, -3.955530123532359122e-07, -3.947081928104873647e-07, -3.938628741576390823e-07, -3.930170578617474180e-07, -3.921707453906798118e-07, -3.913239382126103825e-07, -3.904766377964205746e-07, -3.896288456115429860e-07, -3.887805631278579247e-07, -3.879317918158638210e-07, -3.870825331467232317e-07, -3.862327885919203748e-07, -3.853825596236301174e-07, -3.845318477145673103e-07, -3.836806543378383981e-07, -3.828289809673433365e-07, -3.819768290772543495e-07, -3.811242001424259989e-07, -3.802710956382381658e-07, -3.794175170404851951e-07, -3.785634658255601781e-07, -3.777089434704829046e-07, -3.768539514525757141e-07, -3.759984912498196199e-07, -3.751425643407081434e-07, -3.742861722041026827e-07, -3.734293163195883729e-07, -3.725719981671475545e-07, -3.717142192271909549e-07, -3.708559809807408592e-07, -3.699972849092792269e-07, -3.691381324947832670e-07, -3.682785252197635015e-07, -3.674184645671062704e-07, -3.665579520202968189e-07, -3.656969890633072247e-07, -3.648355771804417077e-07, -3.639737178567102256e-07, -3.631114125774859013e-07, -3.622486628285453628e-07, -3.613854700962491618e-07, -3.605218358673889366e-07, -3.596577616292260582e-07, -3.587932488695219120e-07, -3.579282990763919427e-07, -3.570629137385193194e-07, -3.561970943450106213e-07, -3.553308423854281845e-07, -3.544641593497836432e-07, -3.535970467285782164e-07, -3.527295060126475956e-07, -3.518615386933856666e-07, -3.509931462625892914e-07, -3.501243302124961597e-07, -3.492550920357840476e-07, -3.483854332255998817e-07, -3.475153552754104493e-07, -3.466448596792269683e-07, -3.457739479314483329e-07, -3.449026215268999713e-07, -3.440308819608649213e-07, -3.431587307289354406e-07, -3.422861693272336590e-07, -3.414131992522580007e-07, -3.405398220009186538e-07, -3.396660390705361408e-07, -3.387918519588751472e-07, -3.379172621639936437e-07, -3.370422711844606795e-07, -3.361668805192136042e-07, -3.352910916675810437e-07, -3.344149061292893061e-07, -3.335383254044924508e-07, -3.326613509936220465e-07, -3.317839843976089880e-07, -3.309062271177321416e-07, -3.300280806556486798e-07, -3.291495465134394502e-07, -3.282706261934427458e-07, -3.273913211984491750e-07, -3.265116330317347490e-07, -3.256315631967161924e-07, -3.247511131973297257e-07, -3.238702845378751054e-07, -3.229890787229018037e-07, -3.221074972574299787e-07, -3.212255416467981138e-07, -3.203432133967013464e-07, -3.194605140131838974e-07, -3.185774450026784050e-07, -3.176940078718098369e-07, -3.168102041278181599e-07, -3.159260352780130091e-07, -3.150415028301978396e-07, -3.141566082925123788e-07, -3.132713531733149946e-07, -3.123857389813721656e-07, -3.114997672258934749e-07, -3.106134394161859671e-07, -3.097267570620338839e-07, -3.088397216735416987e-07, -3.079523347609781561e-07, -3.070645978351996829e-07, -3.061765124071040515e-07, -3.052880799880574966e-07, -3.043993020897297026e-07, -3.035101802239496487e-07, -3.026207159030744922e-07, -3.017309106396490084e-07, -3.008407659464402657e-07, -2.999502833366248197e-07, -2.990594643236749469e-07, -2.981683104211969663e-07, -2.972768231433182812e-07, -2.963850040043375545e-07, -2.954928545187577954e-07, -2.946003762014780014e-07, -2.937075705676387860e-07, -2.928144391326542484e-07, -2.919209834122527371e-07, -2.910272049223125255e-07, -2.901331051791031101e-07, -2.892386856991534973e-07, -2.883439479991027549e-07, -2.874488935960842472e-07, -2.865535240073706227e-07, -2.856578407504131476e-07, -2.847618453430330832e-07, -2.838655393032630250e-07, -2.829689241493838024e-07, -2.820720013999583597e-07, -2.811747725736773842e-07, -2.802772391895881114e-07, -2.793794027669374114e-07, -2.784812648252051949e-07, -2.775828268841053118e-07, -2.766840904636217103e-07, -2.757850570838471818e-07, -2.748857282652183076e-07, -2.739861055283520337e-07, -2.730861903940884467e-07, -2.721859843834843675e-07, -2.712854890178482389e-07, -2.703847058185877652e-07, -2.694836363074343762e-07, -2.685822820062896495e-07, -2.676806444372580800e-07, -2.667787251226877903e-07, -2.658765255850065243e-07, -2.649740473469590279e-07, -2.640712919314447893e-07, -2.631682608615554674e-07, -2.622649556605719269e-07, -2.613613778520026199e-07, -2.604575289594203198e-07, -2.595534105067004558e-07, -2.586490240178562584e-07, -2.577443710170785706e-07, -2.568394530287347887e-07, -2.559342715774013673e-07, -2.550288281877058478e-07, -2.541231243845616451e-07, -2.532171616930071645e-07, -2.523109416382428591e-07, -2.514044657456653233e-07, -2.504977355407145089e-07, -2.495907525490589078e-07, -2.486835182966391740e-07, -2.477760343093078704e-07, -2.468683021132213797e-07, -2.459603232346825687e-07, -2.450520992000147385e-07, -2.441436315357987414e-07, -2.432349217687157501e-07, -2.423259714255773804e-07, -2.414167820333682546e-07, -2.405073551190819416e-07, -2.395976922099178926e-07, -2.386877948333198215e-07, -2.377776645166126726e-07, -2.368673027874010698e-07, -2.359567111734048864e-07, -2.350458912023381460e-07, -2.341348444021065132e-07, -2.332235723008430017e-07, -2.323120764265488321e-07, -2.314003583074880434e-07, -2.304884194720253129e-07, -2.295762614484656282e-07, -2.286638857654882864e-07, -2.277512939515871901e-07, -2.268384875355074666e-07, -2.259254680460814346e-07, -2.250122370120694680e-07, -2.240987959625537338e-07, -2.231851464265789708e-07, -2.222712899331877736e-07, -2.213572280116185604e-07, -2.204429621911828323e-07, -2.195284940011036020e-07, -2.186138249709524362e-07, -2.176989566300859937e-07, -2.167838905080856614e-07, -2.158686281345528110e-07, -2.149531710391470743e-07, -2.140375207515837754e-07, -2.131216788016728679e-07, -2.122056467191530488e-07, -2.112894260339328980e-07, -2.103730182759661529e-07, -2.094564249750897928e-07, -2.085396476614225943e-07, -2.076226878650000598e-07, -2.067055471158133286e-07, -2.057882269440082030e-07, -2.048707288797201882e-07, -2.039530544531122389e-07, -2.030352051944157869e-07, -2.021171826337621555e-07, -2.011989883014246781e-07, -2.002806237276951643e-07, -1.993620904427204486e-07, -1.984433899769004164e-07, -1.975245238605262420e-07, -1.966054936238161224e-07, -1.956863007971152301e-07, -1.947669469107305418e-07, -1.938474334949702517e-07, -1.929277620801400394e-07, -1.920079341965821659e-07, -1.910879513745103811e-07, -1.901678151442498464e-07, -1.892475270360745572e-07, -1.883270885802427063e-07, -1.874065013070362035e-07, -1.864857667465965628e-07, -1.855648864291645598e-07, -1.846438618849157490e-07, -1.837226946439979969e-07, -1.828013862365315624e-07, -1.818799381926434013e-07, -1.809583520423053827e-07, -1.800366293155737086e-07, -1.791147715424242716e-07, -1.781927802527906392e-07, -1.772706569766033613e-07, -1.763484032436231577e-07, -1.754260205836849165e-07, -1.745035105265284464e-07, -1.735808746018405107e-07, -1.726581143392502213e-07, -1.717352312683685586e-07, -1.708122269186216114e-07, -1.698891028194526739e-07, -1.689658605003606533e-07, -1.680425014905298900e-07, -1.671190273192363626e-07, -1.661954395156808494e-07, -1.652717396088654461e-07, -1.643479291278344151e-07, -1.634240096015102047e-07, -1.624999825587294747e-07, -1.615758495282845216e-07, -1.606516120387546395e-07, -1.597272716187089051e-07, -1.588028297967443475e-07, -1.578782881011165616e-07, -1.569536480601444056e-07, -1.560289112020452258e-07, -1.551040790548103431e-07, -1.541791531464452397e-07, -1.532541350048064260e-07, -1.523290261576375451e-07, -1.514038281325684468e-07, -1.504785424571532504e-07, -1.495531706586629284e-07, -1.486277142645330157e-07, -1.477021748017888451e-07, -1.467765537974921982e-07, -1.458508527785758431e-07, -1.449250732716771713e-07, -1.439992168035444036e-07, -1.430732849006671773e-07, -1.421472790893135248e-07, -1.412212008957337703e-07, -1.402950518460322834e-07, -1.393688334660052727e-07, -1.384425472815844720e-07, -1.375161948182647844e-07, -1.365897776015503774e-07, -1.356632971567477687e-07, -1.347367550090061394e-07, -1.338101526833111671e-07, -1.328834917045266093e-07, -1.319567735972272532e-07, -1.310299998859415636e-07, -1.301031720950263489e-07, -1.291762917485018015e-07, -1.282493603704562203e-07, -1.273223794846782927e-07, -1.263953506146920880e-07, -1.254682752839610596e-07, -1.245411550157222647e-07, -1.236139913330237399e-07, -1.226867857587636501e-07, -1.217595398155235814e-07, -1.208322550258126192e-07, -1.199049329119406904e-07, -1.189775749958537227e-07, -1.180501827995396776e-07, -1.171227578446573123e-07, -1.161953016525763601e-07, -1.152678157445776030e-07, -1.143403016416892216e-07, -1.134127608647223709e-07, -1.124851949342701742e-07, -1.115576053707471766e-07, -1.106299936942214866e-07, -1.097023614246579940e-07, -1.087747100817544420e-07, -1.078470411849762091e-07, -1.069193562535985943e-07, -1.059916568065378472e-07, -1.050639443625956826e-07, -1.041362204402923888e-07, -1.032084865579059232e-07, -1.022807442334693843e-07, -1.013529949848087845e-07, -1.004252403293784343e-07, -9.949748178450194957e-08, -9.856972086720790088e-08, -9.764195909426714896e-08, -9.671419798223235094e-08, -9.578643904727077718e-08, -9.485868380540783327e-08, -9.393093377236100183e-08, -9.300319046357924282e-08, -9.207545539423871866e-08, -9.114773007928199595e-08, -9.022001603325268877e-08, -8.929231477049670842e-08, -8.836462780520151811e-08, -8.743695665102416635e-08, -8.650930282150025832e-08, -8.558166782987522424e-08, -8.465405318898053343e-08, -8.372646041147728249e-08, -8.279889100968874746e-08, -8.187134649564004876e-08, -8.094382838109583096e-08, -8.001633817739476048e-08, -7.908887739565097382e-08, -7.816144754679388810e-08, -7.723405014119538752e-08, -7.630668668907897990e-08, -7.537935870035217684e-08, -7.445206768443993261e-08, -7.352481515073447161e-08, -7.259760260801830011e-08, -7.167043156491207489e-08, -7.074330352966791400e-08, -6.981622001024905757e-08, -6.888918251412147117e-08, -6.796219254870416303e-08, -6.703525162079091192e-08, -6.610836123700051814e-08, -6.518152290360918363e-08, -6.425473812638424205e-08, -6.332800841099241545e-08, -6.240133526262799323e-08, -6.147472018605129275e-08, -6.054816468579100759e-08, -5.962167026602063332e-08, -5.869523843038883600e-08, -5.776887068247111255e-08, -5.684256852519139309e-08, -5.591633346127178223e-08, -5.499016699306556794e-08, -5.406407062239085233e-08, -5.313804585093860315e-08, -5.221209417990100486e-08, -5.128621711000974718e-08, -5.036041614173890267e-08, -4.943469277517959899e-08, -4.850904850987350411e-08, -4.758348484522059991e-08, -4.665800328010763905e-08, -4.573260531294679756e-08, -4.480729244187806268e-08, -4.388206616460347919e-08, -4.295692797842489524e-08, -4.203187938028332958e-08, -4.110692186659214575e-08, -4.018205693348084537e-08, -3.925728607666963448e-08, -3.833261079130305436e-08, -3.740803257235774184e-08, -3.648355291427087966e-08, -3.555917331097847837e-08, -3.463489525611872378e-08, -3.371072024286533650e-08, -3.278664976396572147e-08, -3.186268531178058662e-08, -3.093882837811623035e-08, -3.001508045446947963e-08, -2.909144303186053004e-08, -2.816791760087163467e-08, -2.724450565164534382e-08, -2.632120867392220799e-08, -2.539802815687518286e-08, -2.447496558935294284e-08, -2.355202245971338285e-08, -2.262920025586269766e-08, -2.170650046525247678e-08, -2.078392457491892279e-08, -1.986147407131579062e-08, -1.893915044055867054e-08, -1.801695516825842042e-08, -1.709488973955978190e-08, -1.617295563917990374e-08, -1.525115435124208526e-08, -1.432948735951956454e-08, -1.340795614726899548e-08, -1.248656219726914657e-08, -1.156530699181859802e-08, -1.064419201277441412e-08, -9.723218741385467994e-09, -8.802388658536698126e-09, -7.881703244582218026e-09, -6.961163979384281417e-09, -6.040772342310850324e-09, -5.120529812274236809e-09, -4.200437867564772674e-09, -3.280497986094499757e-09, -2.360711645230823505e-09, -1.441080321835153676e-09, -5.216054923016172233e-10, 3.977113676093526631e-10, 1.316868782568250804e-09, 2.235865277637883727e-09, 3.154699378644698484e-09, 4.073369611771118272e-09, 4.991874503721836132e-09, 5.910212581890115061e-09, 6.828382373909265459e-09, 7.746382408228696598e-09, 8.664211213665558261e-09, 9.581867319570822068e-09, 1.049934925595463491e-08, 1.141665555328367292e-08, 1.233378474244267097e-08, 1.325073535510522293e-08, 1.416750592332659207e-08, 1.508409497970978081e-08, 1.600050105757178575e-08, 1.691672269053635680e-08, 1.783275841290462373e-08, 1.874860675961678944e-08, 1.966426626604942106e-08, 2.057973546814093990e-08, 2.149501290255709392e-08, 2.241009710624379386e-08, 2.332498661700170267e-08, 2.423967997303861165e-08, 2.515417571313558466e-08, 2.606847237681263910e-08, 2.698256850392217340e-08, 2.789646263501933214e-08, 2.881015331132314186e-08, 2.972363907451495024e-08, 3.063691846686274808e-08, 3.154999003138714143e-08, 3.246285231141435310e-08, 3.337550385115014043e-08, 3.428794319523316738e-08, 3.520016888894080047e-08, 3.611217947815170033e-08, 3.702397350934688716e-08, 3.793554952957184257e-08, 3.884690608660195235e-08, 3.975804172869993078e-08, 4.066895500478118397e-08, 4.157964446437539559e-08, 4.249010865762899517e-08, 4.340034613526613503e-08, 4.431035544875464919e-08, 4.522013515006307401e-08, 4.612968379182666006e-08, 4.703899992730807108e-08, 4.794808211035992264e-08, 4.885692889558903375e-08, 4.976553883811500922e-08, 5.067391049373470302e-08, 5.158204241888455179e-08, 5.248993317064189833e-08, 5.339758130668776185e-08, 5.430498538547049399e-08, 5.521214396596487739e-08, 5.611905560783699927e-08, 5.702571887140553946e-08, 5.793213231764363643e-08, 5.883829450814178997e-08, 5.974420400527100100e-08, 6.064985937194275027e-08, 6.155525917177252201e-08, 6.246040196904209115e-08, 6.336528632866132075e-08, 6.426991081633252615e-08, 6.517427399830821031e-08, 6.607837444155777043e-08, 6.698221071372682720e-08, 6.788578138314142021e-08, 6.878908501876822390e-08, 6.969212019038031455e-08, 7.059488546831449532e-08, 7.149737942363707652e-08, 7.239960062810515028e-08, 7.330154765416816552e-08, 7.420321907493090997e-08, 7.510461346431623313e-08, 7.600572939682603740e-08, 7.690656544770377607e-08, 7.780712019289711764e-08, 7.870739220901945886e-08, 7.960738007351401078e-08, 8.050708236445348878e-08, 8.140649766050272397e-08, 8.230562454128323147e-08, 8.320446158697345055e-08, 8.410300737847002504e-08, 8.500126049755347761e-08, 8.589921952644517190e-08, 8.679688304837553925e-08, 8.769424964714129223e-08, 8.859131790726996078e-08, 8.948808641414280466e-08, 9.038455375379523127e-08, 9.128071851287842775e-08, 9.217657927902481596e-08, 9.307213464044724708e-08, 9.396738318610190988e-08, 9.486232350585175515e-08, 9.575695419006617996e-08, 9.665127382998612534e-08, 9.754528101768464954e-08, 9.843897434586855030e-08, 9.933235240800175368e-08, 1.002254137984673356e-07, 1.011181571121287985e-07, 1.020105809448926997e-07, 1.029026838932724559e-07, 1.037944645545471884e-07, 1.046859215269271195e-07, 1.055770534091531242e-07, 1.064678588008605976e-07, 1.073583363025420391e-07, 1.082484845153462003e-07, 1.091383020412048620e-07, 1.100277874829908185e-07, 1.109169394440820269e-07, 1.118057565289234278e-07, 1.126942373425893338e-07, 1.135823804909852746e-07, 1.144701845808098279e-07, 1.153576482195571736e-07, 1.162447700154801681e-07, 1.171315485777506328e-07, 1.180179825162223959e-07, 1.189040704415933806e-07, 1.197898109653687588e-07, 1.206752026998607396e-07, 1.215602442581529540e-07, 1.224449342542613519e-07, 1.233292713028974557e-07, 1.242132540196287943e-07, 1.250968810208423477e-07, 1.259801509237064047e-07, 1.268630623463322663e-07, 1.277456139075369179e-07, 1.286278042270048389e-07, 1.295096319252504159e-07, 1.303910956236203774e-07, 1.312721939442537456e-07, 1.321529255102469016e-07, 1.330332889454141135e-07, 1.339132828744496898e-07, 1.347929059228900491e-07, 1.356721567171176102e-07, 1.365510338843200823e-07, 1.374295360526534124e-07, 1.383076618510051723e-07, 1.391854099091559450e-07, 1.400627788577411281e-07, 1.409397673282126859e-07, 1.418163739530027054e-07, 1.426925973652839510e-07, 1.435684361991328391e-07, 1.444438890894905535e-07, 1.453189546721666988e-07, 1.461936315838010511e-07, 1.470679184620230918e-07, 1.479418139452168496e-07, 1.488153166726843252e-07, 1.496884252846027426e-07, 1.505611384219916472e-07, 1.514334547268698715e-07, 1.523053728420622526e-07, 1.531768914111615426e-07, 1.540480090788850621e-07, 1.549187244906837681e-07, 1.557890362929000668e-07, 1.566589431328893366e-07, 1.575284436588251365e-07, 1.583975365196609047e-07, 1.592662203654875655e-07, 1.601344938471418818e-07, 1.610023556163636596e-07, 1.618698043259590932e-07, 1.627368386293670308e-07, 1.636034571812120344e-07, 1.644696586368750930e-07, 1.653354416526526794e-07, 1.662008048858748847e-07, 1.670657469947131155e-07, 1.679302666381440422e-07, 1.687943624763001114e-07, 1.696580331700837494e-07, 1.705212773813244070e-07, 1.713840937729371928e-07, 1.722464810084955192e-07, 1.731084377527789203e-07, 1.739699626713472329e-07, 1.748310544307360494e-07, 1.756917116983813051e-07, 1.765519331428168754e-07, 1.774117174332469828e-07, 1.782710632400947568e-07, 1.791299692345742703e-07, 1.799884340888494377e-07, 1.808464564761922251e-07, 1.817040350705936498e-07, 1.825611685471179995e-07, 1.834178555818643714e-07, 1.842740948517748194e-07, 1.851298850347533884e-07, 1.859852248098219422e-07, 1.868401128566984734e-07, 1.876945478563391249e-07, 1.885485284905139325e-07, 1.894020534419647697e-07, 1.902551213945629229e-07, 1.911077310329214939e-07, 1.919598810427488775e-07, 1.928115701108088451e-07, 1.936627969247331916e-07, 1.945135601731728513e-07, 1.953638585457666107e-07, 1.962136907331391763e-07, 1.970630554268666313e-07, 1.979119513196334015e-07, 1.987603771049990830e-07, 1.996083314775605169e-07, 2.004558131329093841e-07, 2.013028207675992247e-07, 2.021493530792999682e-07, 2.029954087665692873e-07, 2.038409865290090878e-07, 2.046860850672268622e-07, 2.055307030828416459e-07, 2.063748392784444708e-07, 2.072184923577530815e-07, 2.080616610253859894e-07, 2.089043439870170822e-07, 2.097465399493395196e-07, 2.105882476200281989e-07, 2.114294657078954767e-07, 2.122701929226652760e-07, 2.131104279751243344e-07, 2.139501695770891695e-07, 2.147894164414062913e-07, 2.156281672819172882e-07, 2.164664208136109751e-07, 2.173041757523989036e-07, 2.181414308152703689e-07, 2.189781847202532607e-07, 2.198144361864172135e-07, 2.206501839338385870e-07, 2.214854266837538317e-07, 2.223201631583328552e-07, 2.231543920808329698e-07, 2.239881121755632646e-07, 2.248213221678496919e-07, 2.256540207841861829e-07, 2.264862067520479564e-07, 2.273178787998570818e-07, 2.281490356573227216e-07, 2.289796760550661866e-07, 2.298097987247735347e-07, 2.306394023993130437e-07, 2.314684858125056386e-07, 2.322970476992816987e-07, 2.331250867956447147e-07, 2.339526018386719503e-07, 2.347795915664791583e-07, 2.356060547184108449e-07, 2.364319900346296708e-07, 2.372573962566422468e-07, 2.380822721268883228e-07, 2.389066163888937039e-07, 2.397304277873848908e-07, 2.405537050681025208e-07, 2.413764469777649985e-07, 2.421986522644093469e-07, 2.430203196770202601e-07, 2.438414479656761637e-07, 2.446620358817047507e-07, 2.454820821772726474e-07, 2.463015856059107856e-07, 2.471205449221056031e-07, 2.479389588814845440e-07, 2.487568262407490903e-07, 2.495741457578586737e-07, 2.503909161916223528e-07, 2.512071363022239739e-07, 2.520228048508141122e-07, 2.528379205996613739e-07, 2.536524823123012084e-07, 2.544664887531657027e-07, 2.552799386879241943e-07, 2.560928308834433544e-07, 2.569051641076043352e-07, 2.577169371294536473e-07, 2.585281487191689082e-07, 2.593387976480214663e-07, 2.601488826885274380e-07, 2.609584026142284851e-07, 2.617673561998034107e-07, 2.625757422212169730e-07, 2.633835594553528021e-07, 2.641908066803505191e-07, 2.649974826755659256e-07, 2.658035862213901622e-07, 2.666091160994013802e-07, 2.674140710923272606e-07, 2.682184499840458081e-07, 2.690222515595523165e-07, 2.698254746051083414e-07, 2.706281179080219472e-07, 2.714301802567965738e-07, 2.722316604410962020e-07, 2.730325572517125839e-07, 2.738328694807094507e-07, 2.746325959212066776e-07, 2.754317353675297854e-07, 2.762302866151735179e-07, 2.770282484608031655e-07, 2.778256197022204194e-07, 2.786223991385146724e-07, 2.794185855698388202e-07, 2.802141777975617801e-07, 2.810091746242333922e-07, 2.818035748535473088e-07, 2.825973772904918190e-07, 2.833905807411308909e-07, 2.841831840127514492e-07, 2.849751859138312412e-07, 2.857665852540361896e-07, 2.865573808441907994e-07, 2.873475714964207769e-07, 2.881371560239400542e-07, 2.889261332411959490e-07, 2.897145019638338544e-07, 2.905022610087042264e-07, 2.912894091938206035e-07, 2.920759453385105367e-07, 2.928618682632006552e-07, 2.936471767895602915e-07, 2.944318697404691353e-07, 2.952159459399802816e-07, 2.959994042134741788e-07, 2.967822433874675173e-07, 2.975644622895889298e-07, 2.983460597489013406e-07, 2.991270345955420823e-07, 2.999073856608713384e-07, 3.006871117775815694e-07, 3.014662117794799840e-07, 3.022446845016401581e-07, 3.030225287803625420e-07, 3.037997434531768424e-07, 3.045763273588089356e-07, 3.053522793373637730e-07, 3.061275982299291293e-07, 3.069022828790801160e-07, 3.076763321284903933e-07, 3.084497448230707660e-07, 3.092225198090818390e-07, 3.099946559339577811e-07, 3.107661520462702736e-07, 3.115370069960519707e-07, 3.123072196344427047e-07, 3.130767888138310459e-07, 3.138457133880021105e-07, 3.146139922117450662e-07, 3.153816241413518232e-07, 3.161486080342310515e-07, 3.169149427490494769e-07, 3.176806271458409363e-07, 3.184456600858294009e-07, 3.192100404313975300e-07, 3.199737670464057378e-07, 3.207368387958394571e-07, 3.214992545459518112e-07, 3.222610131644088275e-07, 3.230221135199355892e-07, 3.237825544826375784e-07, 3.245423349239661599e-07, 3.253014537165421859e-07, 3.260599097343011571e-07, 3.268177018524588113e-07, 3.275748289474769247e-07, 3.283312898972059842e-07, 3.290870835806758640e-07, 3.298422088782032402e-07, 3.305966646715344218e-07, 3.313504498434934613e-07, 3.321035632783007979e-07, 3.328560038615405409e-07, 3.336077704799864047e-07, 3.343588620217430037e-07, 3.351092773762108603e-07, 3.358590154340606754e-07, 3.366080750873630838e-07, 3.373564552293873776e-07, 3.381041547547443905e-07, 3.388511725593488573e-07, 3.395975075404225379e-07, 3.403431585964625587e-07, 3.410881246273784740e-07, 3.418324045342922594e-07, 3.425759972196689147e-07, 3.433189015872923224e-07, 3.440611165422615429e-07, 3.448026409909581502e-07, 3.455434738411904394e-07, 3.462836140019806626e-07, 3.470230603837133127e-07, 3.477618118980932482e-07, 3.484998674581192761e-07, 3.492372259782201012e-07, 3.499738863740506141e-07, 3.507098475626311757e-07, 3.514451084623136294e-07, 3.521796679927851134e-07, 3.529135250750342320e-07, 3.536466786314853102e-07, 3.543791275858044234e-07, 3.551108708630260287e-07, 3.558419073895302538e-07, 3.565722360930378680e-07, 3.573018559025803180e-07, 3.580307657486409709e-07, 3.587589645629432501e-07, 3.594864512785979130e-07, 3.602132248300634523e-07, 3.609392841531189381e-07, 3.616646281849962608e-07, 3.623892558642162830e-07, 3.631131661305577116e-07, 3.638363579253556761e-07, 3.645588301911712277e-07, 3.652805818719285053e-07, 3.660016119130126737e-07, 3.667219192610749472e-07, 3.674415028641632447e-07, 3.681603616716934430e-07, 3.688784946344189372e-07, 3.695959007045613479e-07, 3.703125788356456678e-07, 3.710285279824724151e-07, 3.717437471014161072e-07, 3.724582351500932766e-07, 3.731719910874983663e-07, 3.738850138741045272e-07, 3.745973024717005644e-07, 3.753088558433538259e-07, 3.760196729537186291e-07, 3.767297527686964943e-07, 3.774390942555798231e-07, 3.781476963831769412e-07, 3.788555581214586211e-07, 3.795626784420146859e-07, 3.802690563176941792e-07, 3.809746907227414193e-07, 3.816795806329261253e-07, 3.823837250252191087e-07, 3.830871228780841828e-07, 3.837897731714523275e-07, 3.844916748865585831e-07, 3.851928270060366530e-07, 3.858932285140564935e-07, 3.865928783959634253e-07, 3.872917756387383894e-07, 3.879899192306387528e-07, 3.886873081613637442e-07, 3.893839414220262372e-07, 3.900798180051465568e-07, 3.907749369046293444e-07, 3.914692971158886540e-07, 3.921628976356611289e-07, 3.928557374620967925e-07, 3.935478155948979620e-07, 3.942391310349894349e-07, 3.949296827848196623e-07, 3.956194698483223674e-07, 3.963084912307578329e-07, 3.969967459388461499e-07, 3.976842329807340777e-07, 3.983709513659653446e-07, 3.990569001056094500e-07, 3.997420782120732524e-07, 4.004264846992275480e-07, 4.011101185823750951e-07, 4.017929788782568081e-07, 4.024750646050181936e-07, 4.031563747823376234e-07, 4.038369084312388751e-07, 4.045166645742174990e-07, 4.051956422352134485e-07, 4.058738404396086973e-07, 4.065512582141973292e-07, 4.072278945873184691e-07, 4.079037485886612532e-07, 4.085788192493962258e-07, 4.092531056021436279e-07, 4.099266066809468746e-07, 4.105993215213942634e-07, 4.112712491604350619e-07, 4.119423886365047098e-07, 4.126127389894975026e-07, 4.132822992607644733e-07, 4.139510684930852820e-07, 4.146190457307968588e-07, 4.152862300196023452e-07, 4.159526204066998425e-07, 4.166182159407539312e-07, 4.172830156718933939e-07, 4.179470186516848515e-07, 4.186102239332577540e-07, 4.192726305711152796e-07, 4.199342376212690666e-07, 4.205950441411986083e-07, 4.212550491898266893e-07, 4.219142518276471814e-07, 4.225726511165657487e-07, 4.232302461198749128e-07, 4.238870359025309798e-07, 4.245430195308494262e-07, 4.251981960726244359e-07, 4.258525645972262568e-07, 4.265061241754201470e-07, 4.271588738794822595e-07, 4.278108127831807430e-07, 4.284619399617372548e-07, 4.291122544919597330e-07, 4.297617554520789724e-07, 4.304104419217307835e-07, 4.310583129822257728e-07, 4.317053677162459462e-07, 4.323516052079702284e-07, 4.329970245431655721e-07, 4.336416248090339628e-07, 4.342854050941903954e-07, 4.349283644889283668e-07, 4.355705020849223552e-07, 4.362118169753520161e-07, 4.368523082550189676e-07, 4.374919750200211056e-07, 4.381308163681736852e-07, 4.387688313986801958e-07, 4.394060192122530630e-07, 4.400423789112326038e-07, 4.406779095992930002e-07, 4.413126103817119738e-07, 4.419464803653376448e-07, 4.425795186584459668e-07, 4.432117243708307231e-07, 4.438430966139202060e-07, 4.444736345004516914e-07, 4.451033371448955903e-07, 4.457322036631177479e-07, 4.463602331725410674e-07, 4.469874247921122644e-07, 4.476137776422953022e-07, 4.482392908450638216e-07, 4.488639635239938908e-07, 4.494877948041087339e-07, 4.501107838119586694e-07, 4.507329296757414422e-07, 4.513542315250119554e-07, 4.519746884909428924e-07, 4.525942997063058168e-07, 4.532130643053134663e-07, 4.538309814237467009e-07, 4.544480501989236926e-07, 4.550642697696700673e-07, 4.556796392764424129e-07, 4.562941578611483906e-07, 4.569078246672357262e-07, 4.575206388398181538e-07, 4.581325995253724418e-07, 4.587437058720127795e-07, 4.593539570294531368e-07, 4.599633521488722150e-07, 4.605718903830255205e-07, 4.611795708862166711e-07, 4.617863928143048606e-07, 4.623923553246680657e-07, 4.629974575763243839e-07, 4.636016987297626262e-07, 4.642050779470531203e-07, 4.648075943918243108e-07, 4.654092472292331135e-07, 4.660100356260819643e-07, 4.666099587506472423e-07, 4.672090157727943076e-07, 4.678072058639489667e-07, 4.684045281971035076e-07, 4.690009819467839834e-07, 4.695965662891669965e-07, 4.701912804019110335e-07, 4.707851234642712384e-07, 4.713780946570698716e-07, 4.719701931626713762e-07, 4.725614181650940797e-07, 4.731517688498460291e-07, 4.737412444040330401e-07, 4.743298440163373096e-07, 4.749175668770161983e-07, 4.755044121778732724e-07, 4.760903791123749299e-07, 4.766754668755083633e-07, 4.772596746637562019e-07, 4.778430016753490333e-07, 4.784254471099873650e-07, 4.790070101689525854e-07, 4.795876900551959027e-07, 4.801674859731662910e-07, 4.807463971289283339e-07, 4.813244227301309902e-07, 4.819015619859832414e-07, 4.824778141073665359e-07, 4.830531783066951337e-07, 4.836276537978929196e-07, 4.842012397966397834e-07, 4.847739355200968639e-07, 4.853457401870199451e-07, 4.859166530178407717e-07, 4.864866732345056893e-07, 4.870558000605808879e-07, 4.876240327212381087e-07, 4.881913704432417262e-07, 4.887578124549273615e-07, 4.893233579863436537e-07, 4.898880062689471164e-07, 4.904517565359891264e-07, 4.910146080222149087e-07, 4.915765599639738629e-07, 4.921376115993314772e-07, 4.926977621677945726e-07, 4.932570109105577887e-07, 4.938153570704807146e-07, 4.943727998919490808e-07, 4.949293386209597804e-07, 4.954849725052263246e-07, 4.960397007938924399e-07, 4.965935227378949154e-07, 4.971464375896820708e-07, 4.976984446033423989e-07, 4.982495430345810611e-07, 4.987997321407186162e-07, 4.993490111806676216e-07, 4.998973794150395710e-07, 5.004448361059854405e-07, 5.009913805172782742e-07, 5.015370119144153578e-07, 5.020817295643588144e-07, 5.026255327357752094e-07, 5.031684206990059039e-07, 5.037103927259384118e-07, 5.042514480901149259e-07, 5.047915860667040482e-07, 5.053308059324731552e-07, 5.058691069658986184e-07, 5.064064884470097383e-07, 5.069429496574641303e-07, 5.074784898806544511e-07, 5.080131084014527003e-07, 5.085468045064420956e-07, 5.090795774838879568e-07, 5.096114266236152025e-07, 5.101423512171116892e-07, 5.106723505574993056e-07, 5.112014239395392669e-07, 5.117295706596041625e-07, 5.122567900157882821e-07, 5.127830813077433976e-07, 5.133084438367882412e-07, 5.138328769058862717e-07, 5.143563798196171925e-07, 5.148789518842808193e-07, 5.154005924077430257e-07, 5.159213006995459634e-07, 5.164410760708714284e-07, 5.169599178345542013e-07, 5.174778253050482722e-07, 5.179947977985315548e-07, 5.185108346327573385e-07, 5.190259351271552964e-07, 5.195400986028035339e-07, 5.200533243824121771e-07, 5.205656117904141111e-07, 5.210769601528236316e-07, 5.215873687973339595e-07, 5.220968370532933121e-07, 5.226053642517055385e-07, 5.231129497252085204e-07, 5.236195928081722157e-07, 5.241252928365488402e-07, 5.246300491479762050e-07, 5.251338610817517765e-07, 5.256367279788344761e-07, 5.261386491818201165e-07, 5.266396240350375398e-07, 5.271396518844135157e-07, 5.276387320775569155e-07, 5.281368639637417713e-07, 5.286340468938854651e-07, 5.291302802206445494e-07, 5.296255632982929858e-07, 5.301198954827007580e-07, 5.306132761315490177e-07, 5.311057046041008568e-07, 5.315971802612803986e-07, 5.320877024657805828e-07, 5.325772705818015387e-07, 5.330658839753808217e-07, 5.335535420141353858e-07, 5.340402440673761452e-07, 5.345259895060715518e-07, 5.350107777029569680e-07, 5.354946080322782278e-07, 5.359774798701214503e-07, 5.364593925941598823e-07, 5.369403455837445312e-07, 5.374203382199974447e-07, 5.378993698855815290e-07, 5.383774399649104015e-07, 5.388545478441266858e-07, 5.393306929109822621e-07, 5.398058745549149239e-07, 5.402800921671376338e-07, 5.407533451403834612e-07, 5.412256328692328540e-07, 5.416969547498651410e-07, 5.421673101801392113e-07, 5.426366985596939938e-07, 5.431051192897198639e-07, 5.435725717731653201e-07, 5.440390554147111489e-07, 5.445045696206578757e-07, 5.449691137990034799e-07, 5.454326873595221689e-07, 5.458952897135448909e-07, 5.463569202741610344e-07, 5.468175784562045581e-07, 5.472772636761275715e-07, 5.477359753521047312e-07, 5.481937129040017952e-07, 5.486504757533638703e-07, 5.491062633234934447e-07, 5.495610750393249216e-07, 5.500149103274922757e-07, 5.504677686164132273e-07, 5.509196493360758958e-07, 5.513705519182281115e-07, 5.518204757963704276e-07, 5.522694204056311828e-07, 5.527173851828652869e-07, 5.531643695666300796e-07, 5.536103729971612967e-07, 5.540553949164657140e-07, 5.544994347681890100e-07, 5.549424919976989871e-07, 5.553845660520777367e-07, 5.558256563801052276e-07, 5.562657624322476593e-07, 5.567048836607437539e-07, 5.571430195194777007e-07, 5.575801694640597304e-07, 5.580163329518085392e-07, 5.584515094417588062e-07, 5.588856983946259356e-07, 5.593188992729041008e-07, 5.597511115407346365e-07, 5.601823346639896835e-07, 5.606125681102569420e-07, 5.610418113488115076e-07, 5.614700638507116920e-07, 5.618973250886610627e-07, 5.623235945371021455e-07, 5.627488716721888967e-07, 5.631731559717959137e-07, 5.635964469154899544e-07, 5.640187439846183456e-07, 5.644400466621793872e-07, 5.648603544329200786e-07, 5.652796667832969435e-07, 5.656979832014881001e-07, 5.661153031773717676e-07, 5.665316262026063107e-07, 5.669469517705111259e-07, 5.673612793761425564e-07, 5.677746085162871163e-07, 5.681869386894283501e-07, 5.685982693958320655e-07, 5.690086001374480775e-07, 5.694179304178889270e-07, 5.698262597426161218e-07, 5.702335876187299666e-07, 5.706399135550592430e-07, 5.710452370622422063e-07, 5.714495576524939699e-07, 5.718528748399073074e-07, 5.722551881402141069e-07, 5.726564970708771684e-07, 5.730568011511486490e-07, 5.734560999019661955e-07, 5.738543928459429917e-07, 5.742516795075371652e-07, 5.746479594128559107e-07, 5.750432320897422051e-07, 5.754374970678446881e-07, 5.758307538784265497e-07, 5.762230020545436194e-07, 5.766142411310252022e-07, 5.770044706443711634e-07, 5.773936901328170449e-07, 5.777818991364073333e-07, 5.781690971967903723e-07, 5.785552838574807305e-07, 5.789404586636515732e-07, 5.793246211622106833e-07, 5.797077709018857998e-07, 5.800899074330194241e-07, 5.804710303077488146e-07, 5.808511390799906340e-07, 5.812302333053390941e-07, 5.816083125411277885e-07, 5.819853763465047614e-07, 5.823614242822277373e-07, 5.827364559109219364e-07, 5.831104707968810223e-07, 5.834834685061526519e-07, 5.838554486065319112e-07, 5.842264106675506211e-07, 5.845963542604660090e-07, 5.849652789583301648e-07, 5.853331843358871269e-07, 5.857000699696377858e-07, 5.860659354378278141e-07, 5.864307803204460781e-07, 5.867946041992089679e-07, 5.871574066576297480e-07, 5.875191872809119372e-07, 5.878799456560269180e-07, 5.882396813716843962e-07, 5.885983940183286952e-07, 5.889560831881985777e-07, 5.893127484752311074e-07, 5.896683894751236944e-07, 5.900230057853207542e-07, 5.903765970050219660e-07, 5.907291627351489217e-07, 5.910807025784299339e-07, 5.914312161392844169e-07, 5.917807030239035658e-07, 5.921291628402237816e-07, 5.924765951979348232e-07, 5.928229997084555615e-07, 5.931683759850111652e-07, 5.935127236425256333e-07, 5.938560422976859582e-07, 5.941983315689371490e-07, 5.945395910764547033e-07, 5.948798204422180869e-07, 5.952190192899086668e-07, 5.955571872449794850e-07, 5.958943239346348243e-07, 5.962304289878310552e-07, 5.965655020352622362e-07, 5.968995427094277707e-07, 5.972325506445300216e-07, 5.975645254765427099e-07, 5.978954668431929144e-07, 5.982253743839686956e-07, 5.985542477400884964e-07, 5.988820865545844690e-07, 5.992088904721855843e-07, 5.995346591394042410e-07, 5.998593922044993141e-07, 6.001830893174765781e-07, 6.005057501301483167e-07, 6.008273742960470321e-07, 6.011479614704164446e-07, 6.014675113103558060e-07, 6.017860234746567399e-07, 6.021034976238693105e-07, 6.024199334203663968e-07, 6.027353305281693096e-07, 6.030496886131699265e-07, 6.033630073429524965e-07, 6.036752863868637327e-07, 6.039865254160569635e-07, 6.042967241034153703e-07, 6.046058821235311293e-07, 6.049139991528533249e-07, 6.052210748695334715e-07, 6.055271089534777127e-07, 6.058321010864186065e-07, 6.061360509517562014e-07, 6.064389582346975845e-07, 6.067408226222453414e-07, 6.070416438031135932e-07, 6.073414214677833722e-07, 6.076401553085584194e-07, 6.079378450193926018e-07, 6.082344902961188235e-07, 6.085300908362621483e-07, 6.088246463391174096e-07, 6.091181565058029968e-07, 6.094106210391050015e-07, 6.097020396436240713e-07, 6.099924120257556111e-07, 6.102817378936076202e-07, 6.105700169570573382e-07, 6.108572489278039724e-07, 6.111434335192104089e-07, 6.114285704464994062e-07, 6.117126594266151056e-07, 6.119957001782651710e-07, 6.122776924219327532e-07, 6.125586358798605022e-07, 6.128385302760465437e-07, 6.131173753362939249e-07, 6.133951707881314167e-07, 6.136719163608676179e-07, 6.139476117855765558e-07, 6.142222567950971566e-07, 6.144958511240242460e-07, 6.147683945087555592e-07, 6.150398866874202726e-07, 6.153103273999226261e-07, 6.155797163879342997e-07, 6.158480533948831903e-07, 6.161153381660059278e-07, 6.163815704482604189e-07, 6.166467499903884218e-07, 6.169108765428998759e-07, 6.171739498580699372e-07, 6.174359696899277552e-07, 6.176969357943152359e-07, 6.179568479287969385e-07, 6.182157058527190500e-07, 6.184735093271979506e-07, 6.187302581151147075e-07, 6.189859519811093580e-07, 6.192405906916266488e-07, 6.194941740148391678e-07, 6.197467017207071662e-07, 6.199981735809517707e-07, 6.202485893690536073e-07, 6.204979488602998112e-07, 6.207462518317074768e-07, 6.209934980620745852e-07, 6.212396873319665577e-07, 6.214848194237231378e-07, 6.217288941214329801e-07, 6.219719112109964371e-07, 6.222138704800445612e-07, 6.224547717179854799e-07, 6.226946147160005844e-07, 6.229333992670260001e-07, 6.231711251658080682e-07, 6.234077922088311352e-07, 6.236434001943137419e-07, 6.238779489223217021e-07, 6.241114381946335301e-07, 6.243438678148026978e-07, 6.245752375881853750e-07, 6.248055473218832545e-07, 6.250347968247322234e-07, 6.252629859074088772e-07, 6.254901143823097116e-07, 6.257161820636018391e-07, 6.259411887672683048e-07, 6.261651343109772199e-07, 6.263880185142521215e-07, 6.266098411983348587e-07, 6.268306021862412852e-07, 6.270503013027845531e-07, 6.272689383745289487e-07, 6.274865132297703059e-07, 6.277030256986430491e-07, 6.279184756130067974e-07, 6.281328628064844804e-07, 6.283461871145250192e-07, 6.285584483742529777e-07, 6.287696464246516280e-07, 6.289797811064205423e-07, 6.291888522620422974e-07, 6.293968597357587575e-07, 6.296038033736223198e-07, 6.298096830233766943e-07, 6.300144985346157229e-07, 6.302182497586500775e-07, 6.304209365485643285e-07, 6.306225587592532616e-07, 6.308231162473150461e-07, 6.310226088711454666e-07, 6.312210364909382412e-07, 6.314183989686152468e-07, 6.316146961678672830e-07, 6.318099279542002349e-07, 6.320040941948082301e-07, 6.321971947587284344e-07, 6.323892295167264897e-07, 6.325801983413281727e-07, 6.327701011068810161e-07, 6.329589376894252421e-07, 6.331467079668039825e-07, 6.333334118186516321e-07, 6.335190491263304268e-07, 6.337036197729887835e-07, 6.338871236435323947e-07, 6.340695606246448751e-07, 6.342509306047579036e-07, 6.344312334741014102e-07, 6.346104691246425891e-07, 6.347886374501232748e-07, 6.349657383460527418e-07, 6.351417717096957403e-07, 6.353167374401115657e-07, 6.354906354380986839e-07, 6.356634656062271301e-07, 6.358352278488338503e-07, 6.360059220720191013e-07, 6.361755481836413685e-07, 6.363441060933496592e-07, 6.365115957125321510e-07, 6.366780169543486968e-07, 6.368433697337256367e-07, 6.370076539673412926e-07, 6.371708695736684256e-07, 6.373330164729143088e-07, 6.374940945870577844e-07, 6.376541038398420643e-07, 6.378130441567805535e-07, 6.379709154651276273e-07, 6.381277176939390882e-07, 6.382834507739998507e-07, 6.384381146378680928e-07, 6.385917092198648797e-07, 6.387442344560737406e-07, 6.388956902843275392e-07, 6.390460766442552728e-07, 6.391953934772136741e-07, 6.393436407263321040e-07, 6.394908183365004814e-07, 6.396369262543606010e-07, 6.397819644283419206e-07, 6.399259328086163507e-07, 6.400688313470929604e-07, 6.402106599974873284e-07, 6.403514187152442511e-07, 6.404911074575647418e-07, 6.406297261834379005e-07, 6.407672748535855389e-07, 6.409037534304958499e-07, 6.410391618784126084e-07, 6.411735001633475583e-07, 6.413067682530508733e-07, 6.414389661170704483e-07, 6.415700937266503618e-07, 6.417001510548541190e-07, 6.418291380764631139e-07, 6.419570547680186630e-07, 6.420839011078461463e-07, 6.422096770760061964e-07, 6.423343826542925811e-07, 6.424580178263042016e-07, 6.425805825773608123e-07, 6.427020768945387020e-07, 6.428225007666998109e-07, 6.429418541844075569e-07, 6.430601371400343023e-07, 6.431773496276724159e-07, 6.432934916431773653e-07, 6.434085631841481299e-07, 6.435225642499716696e-07, 6.436354948417320807e-07, 6.437473549623141455e-07, 6.438581446163350408e-07, 6.439678638101548192e-07, 6.440765125519171732e-07, 6.441840908514755312e-07, 6.442905987204519263e-07, 6.443960361722354084e-07, 6.445004032219419156e-07, 6.446036998864493206e-07, 6.447059261843784781e-07, 6.448070821360979894e-07, 6.449071677637429429e-07, 6.450061830911757391e-07, 6.451041281440076896e-07, 6.452010029496273932e-07, 6.452968075371256669e-07, 6.453915419373664855e-07, 6.454852061829702526e-07, 6.455778003082828835e-07, 6.456693243494039695e-07, 6.457597783441811663e-07, 6.458491623322039467e-07, 6.459374763547998953e-07, 6.460247204550653072e-07, 6.461108946778180722e-07, 6.461959990696265793e-07, 6.462800336788002939e-07, 6.463629985553894400e-07, 6.464448937512037407e-07, 6.465257193197734548e-07, 6.466054753163855874e-07, 6.466841617980609142e-07, 6.467617788235620284e-07, 6.468383264533880463e-07, 6.469138047497964191e-07, 6.469882137767644982e-07, 6.470615536000190756e-07, 6.471338242870196551e-07, 6.472050259069663935e-07, 6.472751585308087820e-07, 6.473442222312190711e-07, 6.474122170826118582e-07, 6.474791431611396403e-07, 6.475450005446918615e-07, 6.476097893128837954e-07, 6.476735095470914856e-07, 6.477361613304034643e-07, 6.477977447476502930e-07, 6.478582598853952448e-07, 6.479177068319371634e-07, 6.479760856773023103e-07, 6.480333965132658585e-07, 6.480896394333215046e-07, 6.481448145326963983e-07, 6.481989219083541069e-07, 6.482519616589813802e-07, 6.483039338850090091e-07, 6.483548386885902257e-07, 6.484046761735942452e-07, 6.484534464456453348e-07, 6.485011496120833214e-07, 6.485477857819713202e-07, 6.485933550661139461e-07, 6.486378575770332794e-07, 6.486812934289780769e-07, 6.487236627379268426e-07, 6.487649656215816866e-07, 6.488052021993711841e-07, 6.488443725924586335e-07, 6.488824769237048934e-07, 6.489195153177269331e-07, 6.489554879008423527e-07, 6.489903948010994521e-07, 6.490242361482747961e-07, 6.490570120738583914e-07, 6.490887227110559097e-07, 6.491193681948128287e-07, 6.491489486617807618e-07, 6.491774642503282585e-07, 6.492049151005619798e-07, 6.492313013542792646e-07, 6.492566231550202217e-07, 6.492808806480328965e-07, 6.493040739802768700e-07, 6.493262033004435879e-07, 6.493472687589277735e-07, 6.493672705078360035e-07, 6.493862087010050254e-07, 6.494040834939710524e-07, 6.494208950439935862e-07, 6.494366435100490643e-07, 6.494513290528119076e-07, 6.494649518346754845e-07, 6.494775120197510521e-07, 6.494890097738552624e-07, 6.494994452645136566e-07, 6.495088186609645822e-07, 6.495171301341528403e-07, 6.495243798567395329e-07, 6.495305680030832157e-07, 6.495356947492557804e-07, 6.495397602730408665e-07, 6.495427647539154382e-07, 6.495447083730660896e-07, 6.495455913134004803e-07, 6.495454137595125003e-07, 6.495441758977041876e-07, 6.495418779159857282e-07, 6.495385200040632795e-07, 6.495341023533531587e-07, 6.495286251569679721e-07, 6.495220886097189448e-07, 6.495144929081252381e-07, 6.495058382504003967e-07, 6.494961248364544664e-07, 6.494853528679043702e-07, 6.494735225480586620e-07, 6.494606340819237731e-07, 6.494466876761991418e-07, 6.494316835392910839e-07, 6.494156218812892872e-07, 6.493985029139863991e-07, 6.493803268508646862e-07, 6.493610939071016456e-07, 6.493408042995638638e-07, 6.493194582468126287e-07, 6.492970559691050939e-07, 6.492735976883821029e-07, 6.492490836282778237e-07, 6.492235140141145611e-07, 6.491968890729037096e-07, 6.491692090333453295e-07, 6.491404741258266651e-07, 6.491106845824193913e-07, 6.490798406368890375e-07, 6.490479425246773051e-07, 6.490149904829137147e-07, 6.489809847504135942e-07, 6.489459255676736319e-07, 6.489098131768744175e-07, 6.488726478218744073e-07, 6.488344297482219940e-07, 6.487951592031386723e-07, 6.487548364355288852e-07, 6.487134616959745190e-07, 6.486710352367356437e-07, 6.486275573117524192e-07, 6.485830281766399074e-07, 6.485374480886891303e-07, 6.484908173068720473e-07, 6.484431360918278960e-07, 6.483944047058769568e-07, 6.483446234130053063e-07, 6.482937924788778404e-07, 6.482419121708296980e-07, 6.481889827578643553e-07, 6.481350045106646375e-07, 6.480799777015726009e-07, 6.480239026046044630e-07, 6.479667794954456251e-07, 6.479086086514456968e-07, 6.478493903516229426e-07, 6.477891248766600466e-07, 6.477278125089112065e-07, 6.476654535323890049e-07, 6.476020482327711851e-07, 6.475375968973952514e-07, 6.474720998152708571e-07, 6.474055572770577817e-07, 6.473379695750823418e-07, 6.472693370033302975e-07, 6.471996598574473817e-07, 6.471289384347357004e-07, 6.470571730341582851e-07, 6.469843639563301992e-07, 6.469105115035271144e-07, 6.468356159796754636e-07, 6.467596776903579467e-07, 6.466826969428180834e-07, 6.466046740459399907e-07, 6.465256093102689226e-07, 6.464455030479969772e-07, 6.463643555729691315e-07, 6.462821672006784768e-07, 6.461989382482703481e-07, 6.461146690345313125e-07, 6.460293598799031454e-07, 6.459430111064707604e-07, 6.458556230379603030e-07, 6.457671959997504804e-07, 6.456777303188627138e-07, 6.455872263239544691e-07, 6.454956843453309026e-07, 6.454031047149417911e-07, 6.453094877663732733e-07, 6.452148338348528258e-07, 6.451191432572446047e-07, 6.450224163720539983e-07, 6.449246535194207449e-07, 6.448258550411232742e-07, 6.447260212805793418e-07, 6.446251525828352306e-07, 6.445232492945724201e-07, 6.444203117641056813e-07, 6.443163403413859353e-07, 6.442113353779908299e-07, 6.441052972271305629e-07, 6.439982262436443883e-07, 6.438901227840015693e-07, 6.437809872062977779e-07, 6.436708198702550956e-07, 6.435596211372266715e-07, 6.434473913701860287e-07, 6.433341309337300290e-07, 6.432198401940803553e-07, 6.431045195190874287e-07, 6.429881692782162213e-07, 6.428707898425550435e-07, 6.427523815848146975e-07, 6.426329448793164070e-07, 6.425124801020100280e-07, 6.423909876304567910e-07, 6.422684678438343831e-07, 6.421449211229406534e-07, 6.420203478501887430e-07, 6.418947484095916265e-07, 6.417681231867903816e-07, 6.416404725690314253e-07, 6.415117969451740311e-07, 6.413820967056892704e-07, 6.412513722426482599e-07, 6.411196239497384667e-07, 6.409868522222597911e-07, 6.408530574571043438e-07, 6.407182400527775153e-07, 6.405824004093945883e-07, 6.404455389286573380e-07, 6.403076560138882317e-07, 6.401687520700034286e-07, 6.400288275035181807e-07, 6.398878827225561494e-07, 6.397459181368236774e-07, 6.396029341576348817e-07, 6.394589311979130300e-07, 6.393139096721504128e-07, 6.391678699964551419e-07, 6.390208125885274333e-07, 6.388727378676453136e-07, 6.387236462546913016e-07, 6.385735381721473261e-07, 6.384224140440652914e-07, 6.382702742960956648e-07, 6.381171193554882176e-07, 6.379629496510532734e-07, 6.378077656132212124e-07, 6.376515676739754494e-07, 6.374943562669042094e-07, 6.373361318271759628e-07, 6.371768947915259795e-07, 6.370166455982924332e-07, 6.368553846873909908e-07, 6.366931125002974477e-07, 6.365298294800829862e-07, 6.363655360713970224e-07, 6.362002327204445486e-07, 6.360339198750408727e-07, 6.358665979845391967e-07, 6.356982674998903324e-07, 6.355289288736082912e-07, 6.353585825597790717e-07, 6.351872290140603421e-07, 6.350148686936804874e-07, 6.348415020574254801e-07, 6.346671295656569859e-07, 6.344917516803139518e-07, 6.343153688648680307e-07, 6.341379815843930385e-07, 6.339595903055064028e-07, 6.337801954963807035e-07, 6.335997976267601902e-07, 6.334183971679483944e-07, 6.332359945928032589e-07, 6.330525903757532313e-07, 6.328681849927596771e-07, 6.326827789213584905e-07, 6.324963726406401884e-07, 6.323089666312276764e-07, 6.321205613753278116e-07, 6.319311573566834396e-07, 6.317407550605770999e-07, 6.315493549738567550e-07, 6.313569575849116497e-07, 6.311635633836796168e-07, 6.309691728616461239e-07, 6.307737865118435329e-07, 6.305774048288338410e-07, 6.303800283087347276e-07, 6.301816574492089659e-07, 6.299822927494509763e-07, 6.297819347102051439e-07, 6.295805838337352189e-07, 6.293782406238587278e-07, 6.291749055859275970e-07, 6.289705792268215888e-07, 6.287652620549655594e-07, 6.285589545803162241e-07, 6.283516573143421461e-07, 6.281433707700654530e-07, 6.279340954620285905e-07, 6.277238319063056517e-07, 6.275125806205015301e-07, 6.273003421237315905e-07, 6.270871169366539626e-07, 6.268729055814422236e-07, 6.266577085817951397e-07, 6.264415264629349715e-07, 6.262243597516076862e-07, 6.260062089760614637e-07, 6.257870746660712610e-07, 6.255669573529613642e-07, 6.253458575695188851e-07, 6.251237758500795238e-07, 6.249007127304918869e-07, 6.246766687480941944e-07, 6.244516444417612898e-07, 6.242256403518658888e-07, 6.239986570202988017e-07, 6.237706949904583455e-07, 6.235417548072304392e-07, 6.233118370170205787e-07, 6.230809421677626249e-07, 6.228490708088501943e-07, 6.226162234912070683e-07, 6.223824007672551120e-07, 6.221476031909035803e-07, 6.219118313175736818e-07, 6.216750857041804739e-07, 6.214373669091339210e-07, 6.211986754923418595e-07, 6.209590120152122212e-07, 6.207183770406112107e-07, 6.204767711329624090e-07, 6.202341948581122004e-07, 6.199906487834385107e-07, 6.197461334777967030e-07, 6.195006495115071896e-07, 6.192541974564192774e-07, 6.190067778858405463e-07, 6.187583913745544255e-07, 6.185090384988417921e-07, 6.182587198364699607e-07, 6.180074359666480013e-07, 6.177551874701270078e-07, 6.175019749290737836e-07, 6.172477989271682506e-07, 6.169926600495584507e-07, 6.167365588828402165e-07, 6.164794960151288523e-07, 6.162214720359860767e-07, 6.159624875364237288e-07, 6.157025431089520490e-07, 6.154416393475505623e-07, 6.151797768476189501e-07, 6.149169562060936236e-07, 6.146531780213310445e-07, 6.143884428931410773e-07, 6.141227514228207646e-07, 6.138561042131163163e-07, 6.135885018682345451e-07, 6.133199449938485832e-07, 6.130504341970574371e-07, 6.127799700864524796e-07, 6.125085532720685333e-07, 6.122361843653596245e-07, 6.119628639792883454e-07, 6.116885927282385033e-07, 6.114133712280230622e-07, 6.111372000959319995e-07, 6.108600799506921782e-07, 6.105820114124754997e-07, 6.103029951029073735e-07, 6.100230316450250017e-07, 6.097421216633397413e-07, 6.094602657837880819e-07, 6.091774646337473165e-07, 6.088937188420362822e-07, 6.086090290389158896e-07, 6.083233958560501596e-07, 6.080368199265721855e-07, 6.077493018850317235e-07, 6.074608423674132977e-07, 6.071714420111280473e-07, 6.068811014550267500e-07, 6.065898213393609643e-07, 6.062976023058351218e-07, 6.060044449975654462e-07, 6.057103500590947768e-07, 6.054153181363971205e-07, 6.051193498768347716e-07, 6.048224459292225797e-07, 6.045246069437832693e-07, 6.042258335721546390e-07, 6.039261264673896681e-07, 6.036254862839665744e-07, 6.033239136777432866e-07, 6.030214093060229834e-07, 6.027179738275086713e-07, 6.024136079023050904e-07, 6.021083121919365021e-07, 6.018020873593351485e-07, 6.014949340688057826e-07, 6.011868529860922663e-07, 6.008778447783297134e-07, 6.005679101140503122e-07, 6.002570496631983612e-07, 5.999452640970861170e-07, 5.996325540884396399e-07, 5.993189203114183821e-07, 5.990043634415061314e-07, 5.986888841556217613e-07, 5.983724831320818557e-07, 5.980551610505374986e-07, 5.977369185921208115e-07, 5.974177564392629465e-07, 5.970976752758276003e-07, 5.967766757870517217e-07, 5.964547586595678522e-07, 5.961319245813419749e-07, 5.958081742418069223e-07, 5.954835083316826992e-07, 5.951579275431271488e-07, 5.948314325696634257e-07, 5.945040241061453733e-07, 5.941757028488746257e-07, 5.938464694954865767e-07, 5.935163247449617081e-07, 5.931852692976867884e-07, 5.928533038554219439e-07, 5.925204291212359670e-07, 5.921866457996563465e-07, 5.918519545964839796e-07, 5.915163562189309203e-07, 5.911798513755729456e-07, 5.908424407762938631e-07, 5.905041251324099191e-07, 5.901649051565608488e-07, 5.898247815627101941e-07, 5.894837550662187835e-07, 5.891418263837963456e-07, 5.887989962334530163e-07, 5.884552653346260759e-07, 5.881106344080634828e-07, 5.877651041758340369e-07, 5.874186753613900609e-07, 5.870713486895152013e-07, 5.867231248863336403e-07, 5.863740046793270361e-07, 5.860239887972760779e-07, 5.856730779703373540e-07, 5.853212729300089413e-07, 5.849685744090653952e-07, 5.846149831417002629e-07, 5.842604998633976525e-07, 5.839051253109438791e-07, 5.835488602224970279e-07, 5.831917053375316848e-07, 5.828336613968443367e-07, 5.824747291425776174e-07, 5.821149093181501103e-07, 5.817542026683480391e-07, 5.813926099392636464e-07, 5.810301318783077935e-07, 5.806667692342099601e-07, 5.803025227570299972e-07, 5.799373931981025402e-07, 5.795713813101168420e-07, 5.792044878470606571e-07, 5.788367135642289235e-07, 5.784680592182318096e-07, 5.780985255669981024e-07, 5.777281133697189856e-07, 5.773568233869357075e-07, 5.769846563804780654e-07, 5.766116131134792284e-07, 5.762376943503828315e-07, 5.758629008568922594e-07, 5.754872334000497384e-07, 5.751106927481797968e-07, 5.747332796708990055e-07, 5.743549949391200019e-07, 5.739758393250634542e-07, 5.735958136021899806e-07, 5.732149185452957587e-07, 5.728331549304512213e-07, 5.724505235350102678e-07, 5.720670251376066644e-07, 5.716826605181813609e-07, 5.712974304579043520e-07, 5.709113357392712388e-07, 5.705243771460411840e-07, 5.701365554632488757e-07, 5.697478714772209394e-07, 5.693583259755100805e-07, 5.689679197469713177e-07, 5.685766535817786059e-07, 5.681845282712806288e-07, 5.677915446081549587e-07, 5.673977033863454825e-07, 5.670030054009982384e-07, 5.666074514486305050e-07, 5.662110423269100437e-07, 5.658137788348335044e-07, 5.654156617726497695e-07, 5.650166919418172844e-07, 5.646168701450828317e-07, 5.642161971864941304e-07, 5.638146738712560529e-07, 5.634123010058856311e-07, 5.630090793981509648e-07, 5.626050098570054703e-07, 5.622000931927392881e-07, 5.617943302168426982e-07, 5.613877217420161790e-07, 5.609802685822487579e-07, 5.605719715527682479e-07, 5.601628314699765554e-07, 5.597528491516299928e-07, 5.593420254165996735e-07, 5.589303610850586006e-07, 5.585178569784111514e-07, 5.581045139192259498e-07, 5.576903327314001911e-07, 5.572753142400064346e-07, 5.568594592713144148e-07, 5.564427686528624039e-07, 5.560252432134146484e-07, 5.556068837828876774e-07, 5.551876911925359082e-07, 5.547676662747136308e-07, 5.543468098630565899e-07, 5.539251227923987642e-07, 5.535026058987933305e-07, 5.530792600194975229e-07, 5.526550859929958205e-07, 5.522300846589355726e-07, 5.518042568582154080e-07, 5.513776034329247779e-07, 5.509501252263565555e-07, 5.505218230830085185e-07, 5.500926978485902311e-07, 5.496627503699623751e-07, 5.492319814952324651e-07, 5.488003920736867677e-07, 5.483679829558058659e-07, 5.479347549932788471e-07, 5.475007090389337404e-07, 5.470658459468437133e-07, 5.466301665722457565e-07, 5.461936717715658832e-07, 5.457563624024139412e-07, 5.453182393235990707e-07, 5.448793033950613073e-07, 5.444395554779685662e-07, 5.439989964346545979e-07, 5.435576271286238583e-07, 5.431154484245590260e-07, 5.426724611883307433e-07, 5.422286662869296419e-07, 5.417840645885690456e-07, 5.413386569626087372e-07, 5.408924442795813226e-07, 5.404454274111994302e-07, 5.399976072302827609e-07, 5.395489846108685192e-07, 5.390995604281354984e-07, 5.386493355584204918e-07, 5.381983108792163867e-07, 5.377464872691884698e-07, 5.372938656081041237e-07, 5.368404467769338354e-07, 5.363862316577806807e-07, 5.359312211338964181e-07, 5.354754160896967351e-07, 5.350188174106892507e-07, 5.345614259835761121e-07, 5.341032426961890908e-07, 5.336442684374947705e-07, 5.331845040975999473e-07, 5.327239505677668763e-07, 5.322626087403364028e-07, 5.318004795088207130e-07, 5.313375637679196392e-07, 5.308738624133488178e-07, 5.304093763420329190e-07, 5.299441064520161788e-07, 5.294780536423987656e-07, 5.290112188135312802e-07, 5.285436028667575753e-07, 5.280752067046150791e-07, 5.276060312307587737e-07, 5.271360773499086794e-07, 5.266653459679307462e-07, 5.261938379918670292e-07, 5.257215543297528357e-07, 5.252484958908114365e-07, 5.247746635853753981e-07, 5.243000583248032557e-07, 5.238246810217001649e-07, 5.233485325896338287e-07, 5.228716139433520788e-07, 5.223939259986836665e-07, 5.219154696725726739e-07, 5.214362458829873519e-07, 5.209562555491189609e-07, 5.204754995911221557e-07, 5.199939789303202845e-07, 5.195116944891224860e-07, 5.190286471909502091e-07, 5.185448379604279013e-07, 5.180602677232062964e-07, 5.175749374059792492e-07, 5.170888479365789210e-07, 5.166020002439231575e-07, 5.161143952579191389e-07, 5.156260339096974786e-07, 5.151369171313168205e-07, 5.146470458559924320e-07, 5.141564210179893720e-07, 5.136650435526391138e-07, 5.131729143963465331e-07, 5.126800344865965788e-07, 5.121864047618810040e-07, 5.116920261618114455e-07, 5.111968996270423433e-07, 5.107010260992842819e-07, 5.102044065213083307e-07, 5.097070418369563150e-07, 5.092089329910682880e-07, 5.087100809295941282e-07, 5.082104865995123296e-07, 5.077101509488504364e-07, 5.072090749267048427e-07, 5.067072594831524889e-07, 5.062047055693762229e-07, 5.057014141375824261e-07, 5.051973861410130835e-07, 5.046926225339485366e-07, 5.041871242717287651e-07, 5.036808923106622250e-07, 5.031739276081557624e-07, 5.026662311226228160e-07, 5.021578038135069224e-07, 5.016486466412827753e-07, 5.011387605674674479e-07, 5.006281465545403489e-07, 5.001168055660635010e-07, 4.996047385666032962e-07, 4.990919465217382249e-07, 4.985784303980907457e-07, 4.980641911632327353e-07, 4.975492297858110610e-07, 4.970335472354655245e-07, 4.965171444828431555e-07, 4.960000224996007530e-07, 4.954821822584214021e-07, 4.949636247329288182e-07, 4.944443508978168367e-07, 4.939243617287535929e-07, 4.934036582024080973e-07, 4.928822412964695055e-07, 4.923601119895566981e-07, 4.918372712613258530e-07, 4.913137200924889749e-07, 4.907894594646183362e-07, 4.902644903603642705e-07, 4.897388137633618933e-07, 4.892124306581639742e-07, 4.886853420303532748e-07, 4.881575488665549367e-07, 4.876290521542470639e-07, 4.870998528819684572e-07, 4.865699520392403696e-07, 4.860393506164635922e-07, 4.855080496051682226e-07, 4.849760499976992043e-07, 4.844433527874615422e-07, 4.839099589688223652e-07, 4.833758695370519506e-07, 4.828410854884235690e-07, 4.823056078202453531e-07, 4.817694375306452581e-07, 4.812325756188015596e-07, 4.806950230848458690e-07, 4.801567809297786418e-07, 4.796178501557056054e-07, 4.790782317655268985e-07, 4.785379267631846161e-07, 4.779969361535426365e-07, 4.774552609424307738e-07, 4.769129021365361447e-07, 4.763698607436419799e-07, 4.758261377723158625e-07, 4.752817342321489090e-07, 4.747366511336761482e-07, 4.741908894882699539e-07, 4.736444503083732968e-07, 4.730973346072911622e-07, 4.725495433992125204e-07, 4.720010776993208639e-07, 4.714519385237254926e-07, 4.709021268893658515e-07, 4.703516438142678640e-07, 4.698004903172111542e-07, 4.692486674179881328e-07, 4.686961761373055827e-07, 4.681430174966934969e-07, 4.675891925187309714e-07, 4.670347022268392652e-07, 4.664795476453035574e-07, 4.659237297993845448e-07, 4.653672497152218265e-07, 4.648101084198606388e-07, 4.642523069412490492e-07, 4.636938463082533089e-07, 4.631347275505710319e-07, 4.625749516988641263e-07, 4.620145197846671558e-07, 4.614534328404020573e-07, 4.608916918994089511e-07, 4.603292979958442326e-07, 4.597662521648203328e-07, 4.592025554423121741e-07, 4.586382088651747458e-07, 4.580732134711497752e-07, 4.575075702988754678e-07, 4.569412803878000044e-07, 4.563743447783156372e-07, 4.558067645116668391e-07, 4.552385406299661332e-07, 4.546696741762217797e-07, 4.541001661942411089e-07, 4.535300177287647221e-07, 4.529592298253758069e-07, 4.523878035305175012e-07, 4.518157398914963869e-07, 4.512430399564995367e-07, 4.506697047745002816e-07, 4.500957353953952717e-07, 4.495211328699156959e-07, 4.489458982496400940e-07, 4.483700325869960503e-07, 4.477935369352838050e-07, 4.472164123485760391e-07, 4.466386598818616058e-07, 4.460602805909451570e-07, 4.454812755324766831e-07, 4.449016457639615724e-07, 4.443213923436722012e-07, 4.437405163307633424e-07, 4.431590187852937121e-07, 4.425769007680067992e-07, 4.419941633405735411e-07, 4.414108075654879265e-07, 4.408268345060014559e-07, 4.402422452262558090e-07, 4.396570407911918935e-07, 4.390712222665683220e-07, 4.384847907189628936e-07, 4.378977472157927641e-07, 4.373100928251858029e-07, 4.367218286162622844e-07, 4.361329556587710345e-07, 4.355434750233724981e-07, 4.349533877815305310e-07, 4.343626950054390783e-07, 4.337713977681445711e-07, 4.331794971435639255e-07, 4.325869942062714609e-07, 4.319938900317296109e-07, 4.314001856961969673e-07, 4.308058822766276415e-07, 4.302109808509383452e-07, 4.296154824976594123e-07, 4.290193882962102966e-07, 4.284226993267905166e-07, 4.278254166703154391e-07, 4.272275414085236944e-07, 4.266290746240114804e-07, 4.260300174000023288e-07, 4.254303708205942273e-07, 4.248301359706577630e-07, 4.242293139357363323e-07, 4.236279058022941091e-07, 4.230259126574854933e-07, 4.224233355891804159e-07, 4.218201756860886413e-07, 4.212164340376579109e-07, 4.206121117340924199e-07, 4.200072098663841038e-07, 4.194017295261996659e-07, 4.187956718060428899e-07, 4.181890377991643777e-07, 4.175818285994645643e-07, 4.169740453017451277e-07, 4.163656890014789139e-07, 4.157567607948312180e-07, 4.151472617787849869e-07, 4.145371930510433570e-07, 4.139265557100423601e-07, 4.133153508549840104e-07, 4.127035795857262434e-07, 4.120912430029377637e-07, 4.114783422079933840e-07, 4.108648783029949888e-07, 4.102508523907750283e-07, 4.096362655749144656e-07, 4.090211189596390142e-07, 4.084054136499743047e-07, 4.077891507516421227e-07, 4.071723313710762381e-07, 4.065549566154310338e-07, 4.059370275925971234e-07, 4.053185454111015599e-07, 4.046995111802572838e-07, 4.040799260100578798e-07, 4.034597910112044696e-07, 4.028391072951287410e-07, 4.022178759738838391e-07, 4.015960981603010678e-07, 4.009737749678874512e-07, 4.003509075108416161e-07, 3.997274969040577092e-07, 3.991035442631496432e-07, 3.984790507043412479e-07, 3.978540173446231292e-07, 3.972284453016465260e-07, 3.966023356937465505e-07, 3.959756896399427703e-07, 3.953485082599590609e-07, 3.947207926741194738e-07, 3.940925440035034548e-07, 3.934637633698385358e-07, 3.928344518955255873e-07, 3.922046107036609463e-07, 3.915742409179335026e-07, 3.909433436627484712e-07, 3.903119200632564029e-07, 3.896799712451110922e-07, 3.890474983347342747e-07, 3.884145024592063600e-07, 3.877809847461828403e-07, 3.871469463240584027e-07, 3.865123883218497741e-07, 3.858773118692260557e-07, 3.852417180965058111e-07, 3.846056081346818423e-07, 3.839689831152830170e-07, 3.833318441706701484e-07, 3.826941924336570533e-07, 3.820560290378056904e-07, 3.814173551173135047e-07, 3.807781718069329070e-07, 3.801384802421030398e-07, 3.794982815589745002e-07, 3.788575768941685711e-07, 3.782163673850368368e-07, 3.775746541695616561e-07, 3.769324383862371017e-07, 3.762897211743689686e-07, 3.756465036736917035e-07, 3.750027870246678837e-07, 3.743585723683746088e-07, 3.737138608464199623e-07, 3.730686536010772133e-07, 3.724229517753154154e-07, 3.717767565125436559e-07, 3.711300689568857062e-07, 3.704828902530699602e-07, 3.698352215463166206e-07, 3.691870639826110783e-07, 3.685384187084507555e-07, 3.678892868708785640e-07, 3.672396696176093770e-07, 3.665895680969236213e-07, 3.659389834576928467e-07, 3.652879168494013255e-07, 3.646363694220380557e-07, 3.639843423262569563e-07, 3.633318367132966635e-07, 3.626788537348616288e-07, 3.620253945434011634e-07, 3.613714602918573398e-07, 3.607170521336913559e-07, 3.600621712230181601e-07, 3.594068187144949608e-07, 3.587509957633456843e-07, 3.580947035253920505e-07, 3.574379431569317058e-07, 3.567807158149082124e-07, 3.561230226567982866e-07, 3.554648648406364158e-07, 3.548062435250115767e-07, 3.541471598690945515e-07, 3.534876150325263844e-07, 3.528276101755799535e-07, 3.521671464590479504e-07, 3.515062250442685028e-07, 3.508448470931238513e-07, 3.501830137680674543e-07, 3.495207262320069388e-07, 3.488579856484697480e-07, 3.481947931814964154e-07, 3.475311499956571877e-07, 3.468670572560841062e-07, 3.462025161283523693e-07, 3.455375277786507449e-07, 3.448720933736663737e-07, 3.442062140806077984e-07, 3.435398910672088279e-07, 3.428731255017477543e-07, 3.422059185529386685e-07, 3.415382713900928723e-07, 3.408701851830105644e-07, 3.402016611020012749e-07, 3.395327003178840774e-07, 3.388633040020169171e-07, 3.381934733261760675e-07, 3.375232094627255904e-07, 3.368525135845053149e-07, 3.361813868648521731e-07, 3.355098304776314863e-07, 3.348378455971172697e-07, 3.341654333981334743e-07, 3.334925950560838982e-07, 3.328193317466889710e-07, 3.321456446462704628e-07, 3.314715349316361818e-07, 3.307970037799905062e-07, 3.301220523691074443e-07, 3.294466818772096138e-07, 3.287708934829991592e-07, 3.280946883656818388e-07, 3.274180677048489699e-07, 3.267410326806213184e-07, 3.260635844736776328e-07, 3.253857242649888883e-07, 3.247074532361063835e-07, 3.240287725690463320e-07, 3.233496834462003950e-07, 3.226701870504740649e-07, 3.219902845653199645e-07, 3.213099771744709788e-07, 3.206292660622282456e-07, 3.199481524133456952e-07, 3.192666374129081299e-07, 3.185847222466554262e-07, 3.179024081005641003e-07, 3.172196961611720396e-07, 3.165365876154590709e-07, 3.158530836507542634e-07, 3.151691854548852179e-07, 3.144848942161991901e-07, 3.138002111233036336e-07, 3.131151373653520204e-07, 3.124296741319277451e-07, 3.117438226129226806e-07, 3.110575839988613808e-07, 3.103709594804831754e-07, 3.096839502490662657e-07, 3.089965574962777471e-07, 3.083087824142047904e-07, 3.076206261953458539e-07, 3.069320900326430292e-07, 3.062431751193593277e-07, 3.055538826492560279e-07, 3.048642138165005076e-07, 3.041741698155462829e-07, 3.034837518414291523e-07, 3.027929610894932340e-07, 3.021017987554248477e-07, 3.014102660353931749e-07, 3.007183641259328915e-07, 3.000260942239726500e-07, 2.993334575268594309e-07, 2.986404552322388471e-07, 2.979470885382357202e-07, 2.972533586433252788e-07, 2.965592667463654514e-07, 2.958648140465973434e-07, 2.951700017436661475e-07, 2.944748310375070066e-07, 2.937793031285156905e-07, 2.930834192174331880e-07, 2.923871805053687356e-07, 2.916905881937995523e-07, 2.909936434845988454e-07, 2.902963475799144194e-07, 2.895987016823450712e-07, 2.889007069948196225e-07, 2.882023647206265138e-07, 2.875036760634374150e-07, 2.868046422271879524e-07, 2.861052644162570156e-07, 2.854055438353418194e-07, 2.847054816894882388e-07, 2.840050791840865205e-07, 2.833043375249011410e-07, 2.826032579179480927e-07, 2.819018415696735018e-07, 2.812000896868290617e-07, 2.804980034765034790e-07, 2.797955841461484669e-07, 2.790928329034560312e-07, 2.783897509565381473e-07, 2.776863395138049991e-07, 2.769825997839912899e-07, 2.762785329761539135e-07, 2.755741402997018642e-07, 2.748694229642726238e-07, 2.741643821798807624e-07, 2.734590191569473203e-07, 2.727533351060227747e-07, 2.720473312380928720e-07, 2.713410087644503552e-07, 2.706343688966027428e-07, 2.699274128464546533e-07, 2.692201418261835554e-07, 2.685125570482661854e-07, 2.678046597255087221e-07, 2.670964510709242324e-07, 2.663879322978802135e-07, 2.656791046201274449e-07, 2.649699692515240676e-07, 2.642605274063403043e-07, 2.635507802991310333e-07, 2.628407291446446273e-07, 2.621303751580049064e-07, 2.614197195545825476e-07, 2.607087635500285959e-07, 2.599975083602691705e-07, 2.592859552015358515e-07, 2.585741052902087676e-07, 2.578619598431542444e-07, 2.571495200772896941e-07, 2.564367872099239111e-07, 2.557237624586284818e-07, 2.550104470411127942e-07, 2.542968421755314581e-07, 2.535829490802053135e-07, 2.528687689736482708e-07, 2.521543030747198830e-07, 2.514395526025340776e-07, 2.507245187763287136e-07, 2.500092028158048182e-07, 2.492936059406947588e-07, 2.485777293710961329e-07, 2.478615743273181902e-07, 2.471451420299094674e-07, 2.464284336996540821e-07, 2.457114505576060907e-07, 2.449941938249566633e-07, 2.442766647232224421e-07, 2.435588644741489272e-07, 2.428407942995847978e-07, 2.421224554217900206e-07, 2.414038490631534171e-07, 2.406849764462254864e-07, 2.399658387938661591e-07, 2.392464373291226132e-07, 2.385267732752552671e-07, 2.378068478557711582e-07, 2.370866622942917529e-07, 2.363662178147420198e-07, 2.356455156412555626e-07, 2.349245569980415030e-07, 2.342033431097033097e-07, 2.334818752009486098e-07, 2.327601544966209530e-07, 2.320381822218556386e-07, 2.313159596019499346e-07, 2.305934878623938355e-07, 2.298707682288685535e-07, 2.291478019272738352e-07, 2.284245901836017009e-07, 2.277011342241227390e-07, 2.269774352752580184e-07, 2.262534945636092378e-07, 2.255293133159861220e-07, 2.248048927592832843e-07, 2.240802341206605388e-07, 2.233553386274192863e-07, 2.226302075070305991e-07, 2.219048419871340295e-07, 2.211792432955656944e-07, 2.204534126602315381e-07, 2.197273513092926733e-07, 2.190010604710399679e-07, 2.182745413739213347e-07, 2.175477952465714575e-07, 2.168208233176838622e-07, 2.160936268161983763e-07, 2.153662069711729086e-07, 2.146385650118117727e-07, 2.139107021674677507e-07, 2.131826196676645934e-07, 2.124543187419754705e-07, 2.117258006201736104e-07, 2.109970665322665519e-07, 2.102681177082054266e-07, 2.095389553782023054e-07, 2.088095807726003639e-07, 2.080799951217761032e-07, 2.073501996563280265e-07, 2.066201956069487897e-07, 2.058899842044523337e-07, 2.051595666798076589e-07, 2.044289442640047038e-07, 2.036981181882153066e-07, 2.029670896838214233e-07, 2.022358599821271881e-07, 2.015044303146726874e-07, 2.007728019131097096e-07, 2.000409760090977989e-07, 1.993089538344997347e-07, 1.985767366212458204e-07, 1.978443256013707301e-07, 1.971117220070038201e-07, 1.963789270704052604e-07, 1.956459420237999633e-07, 1.949127680997310342e-07, 1.941794065306056828e-07, 1.934458585490490179e-07, 1.927121253877713281e-07, 1.919782082794409739e-07, 1.912441084569978429e-07, 1.905098271533676610e-07, 1.897753656014897864e-07, 1.890407250344754455e-07, 1.883059066855100594e-07, 1.875709117877218480e-07, 1.868357415745361282e-07, 1.861003972792187363e-07, 1.853648801352311731e-07, 1.846291913760977525e-07, 1.838933322352773549e-07, 1.831573039464800325e-07, 1.824211077433781180e-07, 1.816847448596355532e-07, 1.809482165290657549e-07, 1.802115239855336498e-07, 1.794746684628258408e-07, 1.787376511949679528e-07, 1.780004734159371444e-07, 1.772631363596871222e-07, 1.765256412603105855e-07, 1.757879893519088099e-07, 1.750501818686184079e-07, 1.743122200446449197e-07, 1.735741051141295635e-07, 1.728358383113423069e-07, 1.720974208705824987e-07, 1.713588540260464410e-07, 1.706201390121508231e-07, 1.698812770632381397e-07, 1.691422694136073163e-07, 1.684031172976732421e-07, 1.676638219498357719e-07, 1.669243846045093452e-07, 1.661848064961548030e-07, 1.654450888591454771e-07, 1.647052329279629345e-07, 1.639652399370615046e-07, 1.632251111209008902e-07, 1.624848477139437851e-07, 1.617444509506863147e-07, 1.610039220655262424e-07, 1.602632622929549289e-07, 1.595224728674274713e-07, 1.587815550233901522e-07, 1.580405099952806515e-07, 1.572993390175583810e-07, 1.565580433245708379e-07, 1.558166241507489525e-07, 1.550750827304726212e-07, 1.543334202981041381e-07, 1.535916380880151938e-07, 1.528497373344571741e-07, 1.521077192717543094e-07, 1.513655851341692615e-07, 1.506233361559369783e-07, 1.498809735712601675e-07, 1.491384986143394723e-07, 1.483959125192454631e-07, 1.476532165201056206e-07, 1.469104118509771482e-07, 1.461674997458750298e-07, 1.454244814387708126e-07, 1.446813581636229412e-07, 1.439381311542442235e-07, 1.431948016444974687e-07, 1.424513708681583212e-07, 1.417078400589511003e-07, 1.409642104505761173e-07, 1.402204832765779354e-07, 1.394766597705075234e-07, 1.387327411659506312e-07, 1.379887286962355641e-07, 1.372446235947534927e-07, 1.365004270948288839e-07, 1.357561404295858019e-07, 1.350117648323049062e-07, 1.342673015359642801e-07, 1.335227517735974611e-07, 1.327781167781263638e-07, 1.320333977824278776e-07, 1.312885960191644601e-07, 1.305437127211440205e-07, 1.297987491208607217e-07, 1.290537064508501517e-07, 1.283085859435596484e-07, 1.275633888312121652e-07, 1.268181163461349201e-07, 1.260727697204603665e-07, 1.253273501861568978e-07, 1.245818589751922991e-07, 1.238362973194324198e-07, 1.230906664505071318e-07, 1.223449676001714821e-07, 1.215992019998414136e-07, 1.208533708809560832e-07, 1.201074754748417012e-07, 1.193615170125788118e-07, 1.186154967253300553e-07, 1.178694158440417213e-07, 1.171232755994738448e-07, 1.163770772223630614e-07, 1.156308219433236899e-07, 1.148845109927109761e-07, 1.141381456009504829e-07, 1.133917269982388625e-07, 1.126452564145754745e-07, 1.118987350799244340e-07, 1.111521642240806613e-07, 1.104055450767026384e-07, 1.096588788673405856e-07, 1.089121668253044572e-07, 1.081654101798594867e-07, 1.074186101601250592e-07, 1.066717679949411050e-07, 1.059248849131950282e-07, 1.051779621435237756e-07, 1.044310009143454153e-07, 1.036840024540201926e-07, 1.029369679907183787e-07, 1.021898987524497191e-07, 1.014427959670960440e-07, 1.006956608622762726e-07, 9.994849466554220992e-08, 9.920129860424640969e-08, 9.845407390557012647e-08, 9.770682179652387154e-08, 9.695954350397752221e-08, 9.621224025452647742e-08, 9.546491327468699148e-08, 9.471756379076346779e-08, 9.397019302887838299e-08, 9.322280221497121488e-08, 9.247539257482840623e-08, 9.172796533395053942e-08, 9.098052171774703492e-08, 9.023306295140348474e-08, 8.948559025991201327e-08, 8.873810486810211458e-08, 8.799060800050753587e-08, 8.724310088156125393e-08, 8.649558473546213354e-08, 8.574806078620568543e-08, 8.500053025758233247e-08, 8.425299437320848518e-08, 8.350545435639161207e-08, 8.275791143032845855e-08, 8.201036681796844966e-08, 8.126282174204620816e-08, 8.051527742508000608e-08, 7.976773508940134466e-08, 7.902019595702195701e-08, 7.827266124982979027e-08, 7.752513218945464509e-08, 7.677760999730033637e-08, 7.603009589457371735e-08, 7.528259110215242343e-08, 7.453509684074743625e-08, 7.378761433093374896e-08, 7.304014479285189300e-08, 7.229268944653542216e-08, 7.154524951177824612e-08, 7.079782620799861543e-08, 7.005042075460202220e-08, 6.930303437051628490e-08, 6.855566827455259617e-08, 6.780832368527215480e-08, 6.706100182088470707e-08, 6.631370389941134916e-08, 6.556643113871703202e-08, 6.481918475620937497e-08, 6.407196596916837330e-08, 6.332477599461190529e-08, 6.257761604916182164e-08, 6.183048734937215746e-08, 6.108339111142950760e-08, 6.033632855118539922e-08, 5.958930088431792950e-08, 5.884230932623184217e-08, 5.809535509192352508e-08, 5.734843939634352042e-08, 5.660156345393125876e-08, 5.585472847897672234e-08, 5.510793568548679244e-08, 5.436118628705024037e-08, 5.361448149716722320e-08, 5.286782252894927532e-08, 5.212121059515038395e-08, 5.137464690833075770e-08, 5.062813268075557297e-08, 4.988166912426040830e-08, 4.913525745061380748e-08, 4.838889887105142472e-08, 4.764259459663866059e-08, 4.689634583810294952e-08, 4.615015380586500738e-08, 4.540401971003687269e-08, 4.465794476045313436e-08, 4.391193016653689535e-08, 4.316597713749570196e-08, 4.242008688218770602e-08, 4.167426060915299849e-08, 4.092849952661129997e-08, 4.018280484249334063e-08, 3.943717776430642018e-08, 3.869161949933119746e-08, 3.794613125448757470e-08, 3.720071423636530316e-08, 3.645536965125551532e-08, 3.571009870501657596e-08, 3.496490260327045490e-08, 3.421978255126845239e-08, 3.347473975392238714e-08, 3.272977541580327283e-08, 3.198489074117136794e-08, 3.124008693384267538e-08, 3.049536519738545418e-08, 2.975072673498589526e-08, 2.900617274947919032e-08, 2.826170444334778156e-08, 2.751732301875257614e-08, 2.677302967739842676e-08, 2.602882562073101062e-08, 2.528471204980245219e-08, 2.454069016530253446e-08, 2.379676116758982076e-08, 2.305292625655751253e-08, 2.230918663182995766e-08, 2.156554349262862737e-08, 2.082199803780287079e-08, 2.007855146582847900e-08, 1.933520497483854874e-08, 1.859195976248938324e-08, 1.784881702615711967e-08, 1.710577796280338174e-08, 1.636284376900669936e-08, 1.562001564099332606e-08, 1.487729477450340284e-08, 1.413468236498730270e-08, 1.339217960747147357e-08, 1.264978769658969739e-08, 1.190750782658115625e-08, 1.116534119132155913e-08, 1.042328898418908406e-08, 9.681352398227799257e-09, 8.939532626178723742e-09, 8.197830860180508713e-09, 7.456248292098152522e-09, 6.714786113388812116e-09, 5.973445514967741055e-09, 5.232227687570029650e-09, 4.491133821285963557e-09, 3.750165105922666307e-09, 3.009322730870068756e-09, 2.268607884999918600e-09, 1.528021756829078235e-09, 7.875655345506711115e-10, 4.724040573495007542e-11, -6.929524423423027143e-10, -1.433011822833758070e-09, -2.172936549454473436e-09, -2.912725436120573060e-09, -3.652377297413340591e-09, -4.391890948217933371e-09, -5.131265203890283282e-09, -5.870498880193016308e-09, -6.609590793462253506e-09, -7.348539760246502827e-09, -8.087344597770474174e-09, -8.826004123574052288e-09, -9.564517155646024559e-09, -1.030288251255797344e-08, -1.104109901313632415e-08, -1.177916547676086422e-08, -1.251708072333379705e-08, -1.325484357311665492e-08, -1.399245284683102980e-08, -1.472990736579235818e-08, -1.546720595154917770e-08, -1.620434742634620439e-08, -1.694133061276415666e-08, -1.767815433388580031e-08, -1.841481741326520877e-08, -1.915131867492944727e-08, -1.988765694334758999e-08, -2.062383104356412769e-08, -2.135983980100345867e-08, -2.209568204160332619e-08, -2.283135659178362055e-08, -2.356686227844845035e-08, -2.430219792895483866e-08, -2.503736237124637887e-08, -2.577235443365750390e-08, -2.650717294504690049e-08, -2.724181673476684401e-08, -2.797628463263155377e-08, -2.871057546905087209e-08, -2.944468807483482795e-08, -3.017862128132683624e-08, -3.091237392037290679e-08, -3.164594482432315316e-08, -3.237933282600076340e-08, -3.311253675883584455e-08, -3.384555545666928814e-08, -3.457838775388644923e-08, -3.531103248538618336e-08, -3.604348848658234870e-08, -3.677575459337316073e-08, -3.750782964227388515e-08, -3.823971247022230492e-08, -3.897140191471118825e-08, -3.970289681375768293e-08, -4.043419600587223415e-08, -4.116529833019148933e-08, -4.189620262628344077e-08, -4.262690773428049590e-08, -4.335741249484806424e-08, -4.408771574918721763e-08, -4.481781633900274119e-08, -4.554771310663654763e-08, -4.627740489487285309e-08, -4.700689054707097596e-08, -4.773616890713425478e-08, -4.846523881947934331e-08, -4.919409912916906232e-08, -4.992274868174969649e-08, -5.065118632322149383e-08, -5.137941090033321481e-08, -5.210742126025856569e-08, -5.283521625072741592e-08, -5.356279472012606564e-08, -5.429015551733659393e-08, -5.501729749170428119e-08, -5.574421949333470591e-08, -5.647092037276809357e-08, -5.719739898111267807e-08, -5.792365417017590576e-08, -5.864968479210813897e-08, -5.937548969986051706e-08, -6.010106774682905034e-08, -6.082641778698521537e-08, -6.155153867497691732e-08, -6.227642926596652137e-08, -6.300108841560053820e-08, -6.372551498030414000e-08, -6.444970781695747477e-08, -6.517366578302802844e-08, -6.589738773670198118e-08, -6.662087253652797707e-08, -6.734411904187510424e-08, -6.806712611257617491e-08, -6.878989260909222179e-08, -6.951241739244997651e-08, -7.023469932440436754e-08, -7.095673726708530752e-08, -7.167853008345213960e-08, -7.240007663693907479e-08, -7.312137579158673353e-08, -7.384242641217374016e-08, -7.456322736389379165e-08, -7.528377751264939272e-08, -7.600407572502211706e-08, -7.672412086811047991e-08, -7.744391180963031148e-08, -7.816344741804546472e-08, -7.888272656221380848e-08, -7.960174811184159452e-08, -8.032051093712937125e-08, -8.103901390890431943e-08, -8.175725589874889526e-08, -8.247523577868181662e-08, -8.319295242144859536e-08, -8.391040470049314846e-08, -8.462759148979545889e-08, -8.534451166400498328e-08, -8.606116409840774998e-08, -8.677754766893079276e-08, -8.749366125210895772e-08, -8.820950372521708011e-08, -8.892507396607818430e-08, -8.964037085319358279e-08, -9.035539326571293884e-08, -9.107014008340329686e-08, -9.178461018678083571e-08, -9.249880245691704379e-08, -9.321271577557172963e-08, -9.392634902516068905e-08, -9.463970108875870954e-08, -9.535277085006813735e-08, -9.606555719355020729e-08, -9.677805900423223690e-08, -9.749027516784084883e-08, -9.820220457076775862e-08, -9.891384610004244471e-08, -9.962519864346044741e-08, -1.003362610893938585e-07, -1.010470323269199249e-07, -1.017575112457917195e-07, -1.024676967364401671e-07, -1.031775876899420017e-07, -1.038871829981516661e-07, -1.045964815535091809e-07, -1.053054822491708123e-07, -1.060141839789787380e-07, -1.067225856374621190e-07, -1.074306861198077184e-07, -1.081384843219890869e-07, -1.088459791405754911e-07, -1.095531694728632294e-07, -1.102600542168440675e-07, -1.109666322711754727e-07, -1.116729025353097468e-07, -1.123788639093361208e-07, -1.130845152939511748e-07, -1.137898555907470539e-07, -1.144948837018938315e-07, -1.151995985302695283e-07, -1.159039989795571508e-07, -1.166080839540543865e-07, -1.173118523588038358e-07, -1.180153030995631930e-07, -1.187184350828050619e-07, -1.194212472156879043e-07, -1.201237384062171227e-07, -1.208259075628962278e-07, -1.215277535951738732e-07, -1.222292754130961094e-07, -1.229304719274341791e-07, -1.236313420497834088e-07, -1.243318846924042842e-07, -1.250320987681922478e-07, -1.257319831909667759e-07, -1.264315368751541114e-07, -1.271307587359163571e-07, -1.278296476892792453e-07, -1.285282026517881102e-07, -1.292264225409483446e-07, -1.299243062748822993e-07, -1.306218527724559140e-07, -1.313190609533760995e-07, -1.320159297380338521e-07, -1.327124580474736006e-07, -1.334086448036817276e-07, -1.341044889292688790e-07, -1.347999893476001424e-07, -1.354951449829221812e-07, -1.361899547600503621e-07, -1.368844176046521142e-07, -1.375785324432193735e-07, -1.382722982029108764e-07, -1.389657138116814908e-07, -1.396587781982506376e-07, -1.403514902920730154e-07, -1.410438490234665023e-07, -1.417358533234248556e-07, -1.424275021237137445e-07, -1.431187943569965342e-07, -1.438097289565259132e-07, -1.445003048564226461e-07, -1.451905209916498457e-07, -1.458803762978557948e-07, -1.465698697115017162e-07, -1.472590001698322321e-07, -1.479477666108444478e-07, -1.486361679734160916e-07, -1.493242031971192736e-07, -1.500118712223463228e-07, -1.506991709902808296e-07, -1.513861014428982275e-07, -1.520726615229380270e-07, -1.527588501740285406e-07, -1.534446663405016742e-07, -1.541301089675206170e-07, -1.548151770010481574e-07, -1.554998693878493033e-07, -1.561841850754622714e-07, -1.568681230123230539e-07, -1.575516821475817712e-07, -1.582348614312282975e-07, -1.589176598140623762e-07, -1.596000762476645830e-07, -1.602821096845214745e-07, -1.609637590778412531e-07, -1.616450233816799480e-07, -1.623259015509107901e-07, -1.630063925412275734e-07, -1.636864953091124150e-07, -1.643662088119659067e-07, -1.650455320079171681e-07, -1.657244638559529661e-07, -1.664030033158882277e-07, -1.670811493483655634e-07, -1.677589009148273416e-07, -1.684362569776408112e-07, -1.691132164999147456e-07, -1.697897784456231624e-07, -1.704659417795765771e-07, -1.711417054673927804e-07, -1.718170684756231524e-07, -1.724920297715966492e-07, -1.731665883233941807e-07, -1.738407431001250338e-07, -1.745144930716222855e-07, -1.751878372085652513e-07, -1.758607744825750680e-07, -1.765333038660312318e-07, -1.772054243321953969e-07, -1.778771348551835300e-07, -1.785484344099665185e-07, -1.792193219723414246e-07, -1.798897965190859629e-07, -1.805598570276228637e-07, -1.812295024764504831e-07, -1.818987318448076429e-07, -1.825675441127971120e-07, -1.832359382614795743e-07, -1.839039132727218770e-07, -1.845714681291680998e-07, -1.852386018145156076e-07, -1.859053133132116278e-07, -1.865716016105766259e-07, -1.872374656929278131e-07, -1.879029045472461043e-07, -1.885679171616013809e-07, -1.892325025248253244e-07, -1.898966596266262693e-07, -1.905603874576884112e-07, -1.912236850095183618e-07, -1.918865512744167203e-07, -1.925489852457536240e-07, -1.932109859176659070e-07, -1.938725522851807677e-07, -1.945336833443371853e-07, -1.951943780918862024e-07, -1.958546355255627963e-07, -1.965144546440591976e-07, -1.971738344468736943e-07, -1.978327739344333463e-07, -1.984912721080664034e-07, -1.991493279699719978e-07, -1.998069405233430167e-07, -2.004641087721870338e-07, -2.011208317214167573e-07, -2.017771083769731403e-07, -2.024329377455270401e-07, -2.030883188347478864e-07, -2.037432506532799644e-07, -2.043977322105884402e-07, -2.050517625170843774e-07, -2.057053405840953557e-07, -2.063584654238365396e-07, -2.070111360495331271e-07, -2.076633514752387414e-07, -2.083151107159635966e-07, -2.089664127876372025e-07, -2.096172567071162524e-07, -2.102676414921543148e-07, -2.109175661615217421e-07, -2.115670297348288523e-07, -2.122160312326473986e-07, -2.128645696764797586e-07, -2.135126440887646257e-07, -2.141602534928451124e-07, -2.148073969130897443e-07, -2.154540733747154032e-07, -2.161002819039097502e-07, -2.167460215277995942e-07, -2.173912912744254807e-07, -2.180360901728617857e-07, -2.186804172530381234e-07, -2.193242715458589904e-07, -2.199676520831788832e-07, -2.206105578978012669e-07, -2.212529880234509927e-07, -2.218949414948932539e-07, -2.225364173477582229e-07, -2.231774146186625483e-07, -2.238179323451776432e-07, -2.244579695658334181e-07, -2.250975253200896670e-07, -2.257365986484552339e-07, -2.263751885923125980e-07, -2.270132941940378613e-07, -2.276509144969716842e-07, -2.282880485453918899e-07, -2.289246953846321016e-07, -2.295608540609357088e-07, -2.301965236214293978e-07, -2.308317031143878224e-07, -2.314663915889406369e-07, -2.321005880951946011e-07, -2.327342916843171453e-07, -2.333675014083681020e-07, -2.340002163204142405e-07, -2.346324354745016856e-07, -2.352641579256305062e-07, -2.358953827298709447e-07, -2.365261089442178858e-07, -2.371563356265673247e-07, -2.377860618359745008e-07, -2.384152866323674150e-07, -2.390440090766644086e-07, -2.396722282308613811e-07, -2.402999431578897003e-07, -2.409271529215862126e-07, -2.415538565869588930e-07, -2.421800532198949370e-07, -2.428057418872802445e-07, -2.434309216571148288e-07, -2.440555915981978785e-07, -2.446797507805326926e-07, -2.453033982750106843e-07, -2.459265331535263653e-07, -2.465491544890697786e-07, -2.471712613555781619e-07, -2.477928528279127070e-07, -2.484139279821159519e-07, -2.490344858951273895e-07, -2.496545256448998819e-07, -2.502740463105137450e-07, -2.508930469718660989e-07, -2.515115267100695563e-07, -2.521294846071410432e-07, -2.527469197461456362e-07, -2.533638312111676569e-07, -2.539802180873149605e-07, -2.545960794606893426e-07, -2.552114144185052292e-07, -2.558262220489137062e-07, -2.564405014410952689e-07, -2.570542516853730605e-07, -2.576674718729285857e-07, -2.582801610960601626e-07, -2.588923184481557640e-07, -2.595039430235500808e-07, -2.601150339176457008e-07, -2.607255902268774273e-07, -2.613356110486909446e-07, -2.619450954816553142e-07, -2.625540426252969037e-07, -2.631624515801810198e-07, -2.637703214480287984e-07, -2.643776513314401720e-07, -2.649844403341417329e-07, -2.655906875609633869e-07, -2.661963921176982748e-07, -2.668015531112192928e-07, -2.674061696494471169e-07, -2.680102408413554967e-07, -2.686137657969445211e-07, -2.692167436273503089e-07, -2.698191734446824318e-07, -2.704210543621342399e-07, -2.710223854939583509e-07, -2.716231659554380099e-07, -2.722233948630009626e-07, -2.728230713340523244e-07, -2.734221944870927422e-07, -2.740207634416817070e-07, -2.746187773184472947e-07, -2.752162352390569437e-07, -2.758131363263282572e-07, -2.764094797040664789e-07, -2.770052644971739187e-07, -2.776004898316267129e-07, -2.781951548344450186e-07, -2.787892586338069400e-07, -2.793828003588837273e-07, -2.799757791399498383e-07, -2.805681941083601743e-07, -2.811600443965465328e-07, -2.817513291379946325e-07, -2.823420474673567679e-07, -2.829321985203108317e-07, -2.835217814335369154e-07, -2.841107953449658604e-07, -2.846992393935054020e-07, -2.852871127191515540e-07, -2.858744144630702412e-07, -2.864611437674391696e-07, -2.870472997755510581e-07, -2.876328816317931509e-07, -2.882178884816197950e-07, -2.888023194716618131e-07, -2.893861737495916140e-07, -2.899694504640981516e-07, -2.905521487651331472e-07, -2.911342678036382919e-07, -2.917158067316574256e-07, -2.922967647024175871e-07, -2.928771408701676018e-07, -2.934569343902901015e-07, -2.940361444192719845e-07, -2.946147701147071680e-07, -2.951928106352731362e-07, -2.957702651408633949e-07, -2.963471327922922807e-07, -2.969234127516767610e-07, -2.974991041821380135e-07, -2.980742062479109586e-07, -2.986487181144536850e-07, -2.992226389481829640e-07, -2.997959679167086129e-07, -3.003687041888168717e-07, -3.009408469343313840e-07, -3.015123953241983769e-07, -3.020833485305930163e-07, -3.026537057266268102e-07, -3.032234660867224205e-07, -3.037926287863245075e-07, -3.043611930020280021e-07, -3.049291579115568772e-07, -3.054965226937653123e-07, -3.060632865286108533e-07, -3.066294485972626208e-07, -3.071950080819411681e-07, -3.077599641660047193e-07, -3.083243160340484316e-07, -3.088880628716474264e-07, -3.094512038655921584e-07, -3.100137382038646988e-07, -3.105756650755075513e-07, -3.111369836707295309e-07, -3.116976931808837942e-07, -3.122577927984376637e-07, -3.128172817170808363e-07, -3.133761591315711704e-07, -3.139344242378124012e-07, -3.144920762329601786e-07, -3.150491143151610222e-07, -3.156055376837903375e-07, -3.161613455394273758e-07, -3.167165370837229378e-07, -3.172711115195076354e-07, -3.178250680507664273e-07, -3.183784058826386726e-07, -3.189311242213954191e-07, -3.194832222745395123e-07, -3.200346992506603823e-07, -3.205855543595279052e-07, -3.211357868120723397e-07, -3.216853958203640505e-07, -3.222343805977090118e-07, -3.227827403585017938e-07, -3.233304743183285834e-07, -3.238775816939375908e-07, -3.244240617032512784e-07, -3.249699135653272388e-07, -3.255151365004734970e-07, -3.260597297300902740e-07, -3.266036924767731129e-07, -3.271470239642942448e-07, -3.276897234175681244e-07, -3.282317900627657798e-07, -3.287732231271544588e-07, -3.293140218392034545e-07, -3.298541854285611831e-07, -3.303937131260526952e-07, -3.309326041636605650e-07, -3.314708577746204991e-07, -3.320084731933029632e-07, -3.325454496551847014e-07, -3.330817863970759520e-07, -3.336174826568732734e-07, -3.341525376736579050e-07, -3.346869506877742246e-07, -3.352207209406804579e-07, -3.357538476750459291e-07, -3.362863301347351789e-07, -3.368181675647748769e-07, -3.373493592114604426e-07, -3.378799043222296779e-07, -3.384098021456411153e-07, -3.389390519315980051e-07, -3.394676529310976993e-07, -3.399956043963398074e-07, -3.405229055807936943e-07, -3.410495557390531081e-07, -3.415755541269387242e-07, -3.421009000014710929e-07, -3.426255926208748750e-07, -3.431496312445513659e-07, -3.436730151332059212e-07, -3.441957435485783352e-07, -3.447178157537854135e-07, -3.452392310130520394e-07, -3.457599885918137179e-07, -3.462800877568118673e-07, -3.467995277758516203e-07, -3.473183079180224763e-07, -3.478364274536763315e-07, -3.483538856543051884e-07, -3.488706817926128359e-07, -3.493868151426188228e-07, -3.499022849793862425e-07, -3.504170905793666343e-07, -3.509312312201313677e-07, -3.514447061804737634e-07, -3.519575147405020020e-07, -3.524696561813997308e-07, -3.529811297856458168e-07, -3.534919348369907350e-07, -3.540020706203360253e-07, -3.545115364218079314e-07, -3.550203315288542271e-07, -3.555284552300080002e-07, -3.560359068150993576e-07, -3.565426855752356791e-07, -3.570487908026824501e-07, -3.575542217909590297e-07, -3.580589778348168391e-07, -3.585630582302146394e-07, -3.590664622744185867e-07, -3.595691892658565959e-07, -3.600712385041891738e-07, -3.605726092904127038e-07, -3.610733009266133831e-07, -3.615733127161896748e-07, -3.620726439638269498e-07, -3.625712939753750902e-07, -3.630692620579535750e-07, -3.635665475199217802e-07, -3.640631496708552097e-07, -3.645590678216481445e-07, -3.650543012843636654e-07, -3.655488493723390024e-07, -3.660427114001522358e-07, -3.665358866836335195e-07, -3.670283745398338995e-07, -3.675201742871265343e-07, -3.680112852450600523e-07, -3.685017067344625784e-07, -3.689914380774078521e-07, -3.694804785972260804e-07, -3.699688276184782623e-07, -3.704564844670456035e-07, -3.709434484699970614e-07, -3.714297189556817252e-07, -3.719152952537024515e-07, -3.724001766949013592e-07, -3.728843626114416735e-07, -3.733678523366831072e-07, -3.738506452052666686e-07, -3.743327405530950751e-07, -3.748141377173303699e-07, -3.752948360363794171e-07, -3.757748348499755347e-07, -3.762541334990539800e-07, -3.767327313258332125e-07, -3.772106276738036176e-07, -3.776878218877177655e-07, -3.781643133135765944e-07, -3.786401012987155426e-07, -3.791151851916742648e-07, -3.795895643422845644e-07, -3.800632381016487941e-07, -3.805362058221196332e-07, -3.810084668573924671e-07, -3.814800205623890789e-07, -3.819508662932382738e-07, -3.824210034074807549e-07, -3.828904312638437067e-07, -3.833591492223304220e-07, -3.838271566443105633e-07, -3.842944528922827825e-07, -3.847610373301736698e-07, -3.852269093231055616e-07, -3.856920682374799197e-07, -3.861565134410493824e-07, -3.866202443028025149e-07, -3.870832601929457570e-07, -3.875455604831058108e-07, -3.880071445461025835e-07, -3.884680117560437896e-07, -3.889281614884107667e-07, -3.893875931198443343e-07, -3.898463060283344769e-07, -3.903042995932079026e-07, -3.907615731950136411e-07, -3.912181262155950414e-07, -3.916739580381701869e-07, -3.921290680470997555e-07, -3.925834556281894106e-07, -3.930371201684506196e-07, -3.934900610561908634e-07, -3.939422776810975984e-07, -3.943937694340308923e-07, -3.948445357072052714e-07, -3.952945758941806677e-07, -3.957438893897489701e-07, -3.961924755900025274e-07, -3.966403338924192758e-07, -3.970874636956271044e-07, -3.975338643997066697e-07, -3.979795354059559734e-07, -3.984244761169961356e-07, -3.988686859367527601e-07, -3.993121642704546639e-07, -3.997549105246166186e-07, -4.001969241071226777e-07, -4.006382044270977978e-07, -4.010787508949794663e-07, -4.015185629225947279e-07, -4.019576399229518147e-07, -4.023959813104334288e-07, -4.028335865007767306e-07, -4.032704549109628017e-07, -4.037065859593090238e-07, -4.041419790654443033e-07, -4.045766336502904895e-07, -4.050105491361458072e-07, -4.054437249465593372e-07, -4.058761605064187370e-07, -4.063078552419258888e-07, -4.067388085806019284e-07, -4.071690199512594522e-07, -4.075984887840999789e-07, -4.080272145105760421e-07, -4.084551965634807107e-07, -4.088824343769294308e-07, -4.093089273863582789e-07, -4.097346750285029448e-07, -4.101596767414835934e-07, -4.105839319646854864e-07, -4.110074401388339447e-07, -4.114302007059798425e-07, -4.118522131094797026e-07, -4.122734767940760584e-07, -4.126939912057783926e-07, -4.131137557919420705e-07, -4.135327700012491228e-07, -4.139510332837150218e-07, -4.143685450906598291e-07, -4.147853048747954935e-07, -4.152013120901025543e-07, -4.156165661919161683e-07, -4.160310666368991635e-07, -4.164448128830480742e-07, -4.168578043896768357e-07, -4.172700406174877230e-07, -4.176815210284592784e-07, -4.180922450859246612e-07, -4.185022122545538608e-07, -4.189114220003332615e-07, -4.193198737906418227e-07, -4.197275670941645228e-07, -4.201345013808584248e-07, -4.205406761221401884e-07, -4.209460907906864876e-07, -4.213507448605145321e-07, -4.217546378070610526e-07, -4.221577691069667847e-07, -4.225601382383501654e-07, -4.229617446805977464e-07, -4.233625879144353439e-07, -4.237626674219919373e-07, -4.241619826867033722e-07, -4.245605331932903899e-07, -4.249583184279371929e-07, -4.253553378780947218e-07, -4.257515910325658873e-07, -4.261470773815720099e-07, -4.265417964165701781e-07, -4.269357476304221788e-07, -4.273289305173785623e-07, -4.277213445729823452e-07, -4.281129892941265561e-07, -4.285038641791287209e-07, -4.288939687275317047e-07, -4.292833024403558628e-07, -4.296718648199017349e-07, -4.300596553698239486e-07, -4.304466735952052822e-07, -4.308329190023694701e-07, -4.312183910990507683e-07, -4.316030893943810372e-07, -4.319870133987863506e-07, -4.323701626240538054e-07, -4.327525365833988608e-07, -4.331341347912665502e-07, -4.335149567635907790e-07, -4.338950020175859020e-07, -4.342742700718501668e-07, -4.346527604463399326e-07, -4.350304726623682405e-07, -4.354074062425951259e-07, -4.357835607110960162e-07, -4.361589355932525165e-07, -4.365335304158279016e-07, -4.369073447069470516e-07, -4.372803779961036519e-07, -4.376526298141318176e-07, -4.380240996932877261e-07, -4.383947871671363797e-07, -4.387646917706278913e-07, -4.391338130400805965e-07, -4.395021505131566488e-07, -4.398697037289462465e-07, -4.402364722278470888e-07, -4.406024555516491855e-07, -4.409676532435043107e-07, -4.413320648479406669e-07, -4.416956899108339803e-07, -4.420585279794850041e-07, -4.424205786025098806e-07, -4.427818413299211920e-07, -4.431423157130959846e-07, -4.435020013047847156e-07, -4.438608976590947892e-07, -4.442190043315601716e-07, -4.445763208790351419e-07, -4.449328468597621601e-07, -4.452885818333664677e-07, -4.456435253608236882e-07, -4.459976770045404547e-07, -4.463510363282483182e-07, -4.467036028970701876e-07, -4.470553762775084176e-07, -4.474063560374389858e-07, -4.477565417461063045e-07, -4.481059329741781189e-07, -4.484545292936513806e-07, -4.488023302779194280e-07, -4.491493355017573751e-07, -4.494955445413008293e-07, -4.498409569741192134e-07, -4.501855723791095682e-07, -4.505293903365720975e-07, -4.508724104281839103e-07, -4.512146322370090261e-07, -4.515560553474751873e-07, -4.518966793454429456e-07, -4.522365038181246114e-07, -4.525755283540662014e-07, -4.529137525433010163e-07, -4.532511759771766871e-07, -4.535877982484283909e-07, -4.539236189512433308e-07, -4.542586376810797358e-07, -4.545928540348969892e-07, -4.549262676109757927e-07, -4.552588780089836526e-07, -4.555906848300320016e-07, -4.559216876765777317e-07, -4.562518861524243579e-07, -4.565812798628590269e-07, -4.569098684144959739e-07, -4.572376514153366094e-07, -4.575646284748381290e-07, -4.578907992037393950e-07, -4.582161632142799473e-07, -4.585407201200246676e-07, -4.588644695359478478e-07, -4.591874110784026960e-07, -4.595095443651966176e-07, -4.598308690154154020e-07, -4.601513846496575868e-07, -4.604710908898455691e-07, -4.607899873592987680e-07, -4.611080736827915404e-07, -4.614253494864006625e-07, -4.617418143976457249e-07, -4.620574680454729338e-07, -4.623723100601744834e-07, -4.626863400734450959e-07, -4.629995577184336899e-07, -4.633119626295794802e-07, -4.636235544428241063e-07, -4.639343327954513840e-07, -4.642442973261374929e-07, -4.645534476750201675e-07, -4.648617834835450145e-07, -4.651693043946034197e-07, -4.654760100525145489e-07, -4.657819001029507561e-07, -4.660869741930030164e-07, -4.663912319711605977e-07, -4.666946730873131780e-07, -4.669972971927352812e-07, -4.672991039401541456e-07, -4.676000929836473389e-07, -4.679002639787110502e-07, -4.681996165822434669e-07, -4.684981504525318045e-07, -4.687958652493093228e-07, -4.690927606336687162e-07, -4.693888362681237358e-07, -4.696840918165871137e-07, -4.699785269443778153e-07, -4.702721413182056871e-07, -4.705649346062284725e-07, -4.708569064779636145e-07, -4.711480566043484483e-07, -4.714383846577310421e-07, -4.717278903118441514e-07, -4.720165732418750460e-07, -4.723044331243713309e-07, -4.725914696373009261e-07, -4.728776824600414265e-07, -4.731630712733760780e-07, -4.734476357594812841e-07, -4.737313756019867449e-07, -4.740142904858839249e-07, -4.742963800975883098e-07, -4.745776441249238422e-07, -4.748580822571244570e-07, -4.751376941848166642e-07, -4.754164796000791058e-07, -4.756944381963617174e-07, -4.759715696685341675e-07, -4.762478737128766992e-07, -4.765233500270668954e-07, -4.767979983102356885e-07, -4.770718182628942513e-07, -4.773448095869243617e-07, -4.776169719857034989e-07, -4.778883051639649772e-07, -4.781588088278539032e-07, -4.784284826849682565e-07, -4.786973264442756693e-07, -4.789653398161712356e-07, -4.792325225124634303e-07, -4.794988742463711437e-07, -4.797643947325167997e-07, -4.800290836869896717e-07, -4.802929408271925692e-07, -4.805559658720416321e-07, -4.808181585418117470e-07, -4.810795185581920279e-07, -4.813400456443237209e-07, -4.815997395247431353e-07, -4.818585999253527386e-07, -4.821166265735536116e-07, -4.823738191981094992e-07, -4.826301775291979501e-07, -4.828857012984654801e-07, -4.831403902388819877e-07, -4.833942440849241377e-07, -4.836472625724365526e-07, -4.838994454386882469e-07, -4.841507924223524041e-07, -4.844013032635730801e-07, -4.846509777038170789e-07, -4.848998154860633699e-07, -4.851478163546507282e-07, -4.853949800553409440e-07, -4.856413063353588453e-07, -4.858867949432747720e-07, -4.861314456291117253e-07, -4.863752581443386978e-07, -4.866182322418024869e-07, -4.868603676757687760e-07, -4.871016642019730626e-07, -4.873421215774801564e-07, -4.875817395608614211e-07, -4.878205179120576609e-07, -4.880584563924270838e-07, -4.882955547647986648e-07, -4.885318127933440315e-07, -4.887672302436906500e-07, -4.890018068829167416e-07, -4.892355424794746271e-07, -4.894684368032516068e-07, -4.897004896255560906e-07, -4.899317007191160098e-07, -4.901620698580665350e-07, -4.903915968179964511e-07, -4.906202813758870654e-07, -4.908481233101442886e-07, -4.910751224005949291e-07, -4.913012784284787524e-07, -4.915265911764889264e-07, -4.917510604287034121e-07, -4.919746859706348325e-07, -4.921974675892130026e-07, -4.924194050727969997e-07, -4.926404982111457288e-07, -4.928607467954809210e-07, -4.930801506184074062e-07, -4.932987094739635115e-07, -4.935164231576111091e-07, -4.937332914662175104e-07, -4.939493141981121115e-07, -4.941644911530083606e-07, -4.943788221320527795e-07, -4.945923069378150113e-07, -4.948049453742849616e-07, -4.950167372468648577e-07, -4.952276823624125529e-07, -4.954377805291710110e-07, -4.956470315568250578e-07, -4.958554352564716289e-07, -4.960629914406371339e-07, -4.962696999232555392e-07, -4.964755605197164376e-07, -4.966805730468014145e-07, -4.968847373227213174e-07, -4.970880531671167858e-07, -4.972905204010322042e-07, -4.974921388469711832e-07, -4.976929083288376907e-07, -4.978928286719259932e-07, -4.980918997030162649e-07, -4.982901212502696611e-07, -4.984874931432732114e-07, -4.986840152130614189e-07, -4.988796872920679788e-07, -4.990745092141528845e-07, -4.992684808146021089e-07, -4.994616019301260169e-07, -4.996538723988435892e-07, -4.998452920603404440e-07, -5.000358607555542757e-07, -5.002255783269159922e-07, -5.004144446182371649e-07, -5.006024594747535452e-07, -5.007896227431543932e-07, -5.009759342715322907e-07, -5.011613939093673655e-07, -5.013460015076324289e-07, -5.015297569186757682e-07, -5.017126599962676269e-07, -5.018947105956479570e-07, -5.020759085734008454e-07, -5.022562537876114277e-07, -5.024357460977394677e-07, -5.026143853646757917e-07, -5.027921714507591227e-07, -5.029691042197290705e-07, -5.031451835367223198e-07, -5.033204092683547924e-07, -5.034947812826276267e-07, -5.036682994489618000e-07, -5.038409636382404803e-07, -5.040127737227148996e-07, -5.041837295760824928e-07, -5.043538310734846743e-07, -5.045230780914562276e-07, -5.046914705079629985e-07, -5.048590082023932127e-07, -5.050256910555462529e-07, -5.051915189496777632e-07, -5.053564917684297688e-07, -5.055206093968704866e-07, -5.056838717215253480e-07, -5.058462786302877424e-07, -5.060078300124977917e-07, -5.061685257589389616e-07, -5.063283657617828993e-07, -5.064873499146414195e-07, -5.066454781125401408e-07, -5.068027502519181683e-07, -5.069591662306647270e-07, -5.071147259480615647e-07, -5.072694293048208554e-07, -5.074232762030741892e-07, -5.075762665463797710e-07, -5.077284002397020924e-07, -5.078796771894528006e-07, -5.080300973034398768e-07, -5.081796604908998231e-07, -5.083283666624898277e-07, -5.084762157302840590e-07, -5.086232076077754657e-07, -5.087693422098959995e-07, -5.089146194529741576e-07, -5.090590392547657937e-07, -5.092026015344485064e-07, -5.093453062126091450e-07, -5.094871532112791740e-07, -5.096281424538826856e-07, -5.097682738652779047e-07, -5.099075473717348483e-07, -5.100459629009450668e-07, -5.101835203820096789e-07, -5.103202197454746299e-07, -5.104560609232775403e-07, -5.105910438487832810e-07, -5.107251684567783619e-07, -5.108584346834625673e-07, -5.109908424664462032e-07, -5.111223917447837667e-07, -5.112530824589204773e-07, -5.113829145507283812e-07, -5.115118879634969285e-07, -5.116400026419223853e-07, -5.117672585321470086e-07, -5.118936555817085423e-07, -5.120191937395391582e-07, -5.121438729560361834e-07, -5.122676931829790911e-07, -5.123906543735656050e-07, -5.125127564824308641e-07, -5.126339994656054938e-07, -5.127543832805404883e-07, -5.128739078861015982e-07, -5.129925732425656252e-07, -5.131103793116413862e-07, -5.132273260564426080e-07, -5.133434134414721516e-07, -5.134586414326943273e-07, -5.135730099974560149e-07, -5.136865191045182159e-07, -5.137991687240775465e-07, -5.139109588277297099e-07, -5.140218893884631430e-07, -5.141319603807202148e-07, -5.142411717803272402e-07, -5.143495235645285733e-07, -5.144570157120051359e-07, -5.145636482027987141e-07, -5.146694210184159319e-07, -5.147743341417466177e-07, -5.148783875570901688e-07, -5.149815812501790565e-07, -5.150839152081440973e-07, -5.151853894195072537e-07, -5.152860038742391262e-07, -5.153857585636945790e-07, -5.154846534806393153e-07, -5.155826886192742299e-07, -5.156798639751661643e-07, -5.157761795453319741e-07, -5.158716353281805081e-07, -5.159662313235278542e-07, -5.160599675326021042e-07, -5.161528439580390131e-07, -5.162448606038760691e-07, -5.163360174755789641e-07, -5.164263145799979713e-07, -5.165157519253987557e-07, -5.166043295214709508e-07, -5.166920473792770186e-07, -5.167789055113047658e-07, -5.168649039314591913e-07, -5.169500426550344276e-07, -5.170343216987332236e-07, -5.171177410806705433e-07, -5.172003008203531320e-07, -5.172820009387143502e-07, -5.173628414580730927e-07, -5.174428224021590932e-07, -5.175219437961054075e-07, -5.176002056664492602e-07, -5.176776080411228334e-07, -5.177541509494860888e-07, -5.178298344222750993e-07, -5.179046584916418591e-07, -5.179786231911342728e-07, -5.180517285557063197e-07, -5.181239746217068304e-07, -5.181953614269006630e-07, -5.182658890104414921e-07, -5.183355574128855727e-07, -5.184043666761888820e-07, -5.184723168437050014e-07, -5.185394079601989869e-07, -5.186056400718226992e-07, -5.186710132261316384e-07, -5.187355274720786974e-07, -5.187991828600177613e-07, -5.188619794416926964e-07, -5.189239172702611731e-07, -5.189849964002634309e-07, -5.190452168876402785e-07, -5.191045787897304468e-07, -5.191630821652682589e-07, -5.192207270743818311e-07, -5.192775135786055657e-07, -5.193334417408568584e-07, -5.193885116254507091e-07, -5.194427232980989809e-07, -5.194960768259007652e-07, -5.195485722773633457e-07, -5.196002097223811281e-07, -5.196509892322244177e-07, -5.197009108795848408e-07, -5.197499747385285465e-07, -5.197981808845117709e-07, -5.198455293943976717e-07, -5.198920203464258352e-07, -5.199376538202302758e-07, -5.199824298968409180e-07, -5.200263486586683500e-07, -5.200694101895248939e-07, -5.201116145746060765e-07, -5.201529619004839587e-07, -5.201934522551409118e-07, -5.202330857279339353e-07, -5.202718624096082099e-07, -5.203097823923063090e-07, -5.203468457695500932e-07, -5.203830526362358399e-07, -5.204184030886698189e-07, -5.204528972245299637e-07, -5.204865351428747660e-07, -5.205193169441658271e-07, -5.205512427302273071e-07, -5.205823126042849936e-07, -5.206125266709394089e-07, -5.206418850361706800e-07, -5.206703878073542089e-07, -5.206980350932417206e-07, -5.207248270039520509e-07, -5.207507636510125456e-07, -5.207758451473140620e-07, -5.208000716071265327e-07, -5.208234431461159065e-07, -5.208459598813049732e-07, -5.208676219311179385e-07, -5.208884294153410372e-07, -5.209083824551512261e-07, -5.209274811730944793e-07, -5.209457256930984932e-07, -5.209631161404641105e-07, -5.209796526418780258e-07, -5.209953353253926683e-07, -5.210101643204379546e-07, -5.210241397578282766e-07, -5.210372617697389965e-07, -5.210495304897270931e-07, -5.210609460527269265e-07, -5.210715085950378505e-07, -5.210812182543369180e-07, -5.210900751696736929e-07, -5.210980794814637915e-07, -5.211052313315063525e-07, -5.211115308629598967e-07, -5.211169782203576792e-07, -5.211215735496064191e-07, -5.211253169979740175e-07, -5.211282087141019454e-07, -5.211302488480029139e-07, -5.211314375510515576e-07, -5.211317749759986218e-07, -5.211312612769537044e-07, -5.211298966093956322e-07, -5.211276811301660019e-07, -5.211246149974819919e-07, -5.211206983709163509e-07, -5.211159314114061858e-07, -5.211103142812593149e-07, -5.211038471441396558e-07, -5.210965301650800377e-07, -5.210883635104733065e-07, -5.210793473480727495e-07, -5.210694818469940002e-07, -5.210587671777124978e-07, -5.210472035120676162e-07, -5.210347910232571585e-07, -5.210215298858361921e-07, -5.210074202757187431e-07, -5.209924623701787486e-07, -5.209766563478453988e-07, -5.209600023887088540e-07, -5.209425006741106095e-07, -5.209241513867542958e-07, -5.209049547106942428e-07, -5.208849108313417278e-07, -5.208640199354612686e-07, -5.208422822111721066e-07, -5.208196978479491594e-07, -5.207962670366111622e-07, -5.207719899693432204e-07, -5.207468668396693867e-07, -5.207208978424697077e-07, -5.206940831739775767e-07, -5.206664230317715814e-07, -5.206379176147803742e-07, -5.206085671232825660e-07, -5.205783717589046090e-07, -5.205473317246237613e-07, -5.205154472247597222e-07, -5.204827184649781264e-07, -5.204491456522952027e-07, -5.204147289950699387e-07, -5.203794687030042930e-07, -5.203433649871448887e-07, -5.203064180598879903e-07, -5.202686281349652095e-07, -5.202299954274530349e-07, -5.201905201537699725e-07, -5.201502025316752758e-07, -5.201090427802697928e-07, -5.200670411199925772e-07, -5.200241977726251246e-07, -5.199805129612841716e-07, -5.199359869104274143e-07, -5.198906198458462019e-07, -5.198444119946743251e-07, -5.197973635853770043e-07, -5.197494748477566077e-07, -5.197007460129505327e-07, -5.196511773134349129e-07, -5.196007689830128644e-07, -5.195495212568235922e-07, -5.194974343713397428e-07, -5.194445085643651808e-07, -5.193907440750343538e-07, -5.193361411438111276e-07, -5.192807000124952447e-07, -5.192244209242111014e-07, -5.191673041234103946e-07, -5.191093498558763569e-07, -5.190505583687194158e-07, -5.189909299103734876e-07, -5.189304647306038128e-07, -5.188691630804963679e-07, -5.188070252124659125e-07, -5.187440513802475186e-07, -5.186802418389041942e-07, -5.186155968448182011e-07, -5.185501166556961373e-07, -5.184838015305633248e-07, -5.184166517297686809e-07, -5.183486675149843998e-07, -5.182798491491919771e-07, -5.182101968967052910e-07, -5.181397110231470977e-07, -5.180683917954577128e-07, -5.179962394819006234e-07, -5.179232543520484061e-07, -5.178494366767943734e-07, -5.177747867283463272e-07, -5.176993047802222177e-07, -5.176229911072567077e-07, -5.175458459855968316e-07, -5.174678696927017838e-07, -5.173890625073393188e-07, -5.173094247095922097e-07, -5.172289565808514718e-07, -5.171476584038181631e-07, -5.170655304624979837e-07, -5.169825730422105939e-07, -5.168987864295782846e-07, -5.168141709125327537e-07, -5.167287267803066361e-07, -5.166424543234453616e-07, -5.165553538337924382e-07, -5.164674256044972867e-07, -5.163786699300138649e-07, -5.162890871060917729e-07, -5.161986774297905477e-07, -5.161074411994652629e-07, -5.160153787147707643e-07, -5.159224902766665401e-07, -5.158287761874078272e-07, -5.157342367505411643e-07, -5.156388722709196382e-07, -5.155426830546891200e-07, -5.154456694092881588e-07, -5.153478316434544406e-07, -5.152491700672227763e-07, -5.151496849919094318e-07, -5.150493767301349982e-07, -5.149482455958072385e-07, -5.148462919041242650e-07, -5.147435159715808912e-07, -5.146399181159474565e-07, -5.145354986562967195e-07, -5.144302579129924225e-07, -5.143241962076690694e-07, -5.142173138632608299e-07, -5.141096112039871406e-07, -5.140010885553433872e-07, -5.138917462441179512e-07, -5.137815845983787635e-07, -5.136706039474818799e-07, -5.135588046220590941e-07, -5.134461869540303249e-07, -5.133327512765801114e-07, -5.132184979241984823e-07, -5.131034272326298161e-07, -5.129875395389070402e-07, -5.128708351813482427e-07, -5.127533144995276617e-07, -5.126349778343182483e-07, -5.125158255278570447e-07, -5.123958579235467720e-07, -5.122750753660778530e-07, -5.121534782014105188e-07, -5.120310667767605152e-07, -5.119078414406471717e-07, -5.117838025428271210e-07, -5.116589504343441684e-07, -5.115332854675106570e-07, -5.114068079958898915e-07, -5.112795183743380665e-07, -5.111514169589604327e-07, -5.110225041071279197e-07, -5.108927801774821125e-07, -5.107622455299287926e-07, -5.106309005256220564e-07, -5.104987455270003141e-07, -5.103657808977537846e-07, -5.102320070028212133e-07, -5.100974242084172951e-07, -5.099620328820093804e-07, -5.098258333923225580e-07, -5.096888261093420898e-07, -5.095510114042998584e-07, -5.094123896496925783e-07, -5.092729612192743847e-07, -5.091327264880325866e-07, -5.089916858322372187e-07, -5.088498396293965718e-07, -5.087071882582580402e-07, -5.085637320988345912e-07, -5.084194715323860246e-07, -5.082744069414180199e-07, -5.081285387096877477e-07, -5.079818672221915877e-07, -5.078343928651804815e-07, -5.076861160261464856e-07, -5.075370370938264772e-07, -5.073871564582015191e-07, -5.072364745104995067e-07, -5.070849916431769567e-07, -5.069327082499400767e-07, -5.067796247257396837e-07, -5.066257414667593452e-07, -5.064710588704209907e-07, -5.063155773353919001e-07, -5.061592972615577043e-07, -5.060022190500574309e-07, -5.058443431032551294e-07, -5.056856698247564933e-07, -5.055261996193988021e-07, -5.053659328932389571e-07, -5.052048700535795271e-07, -5.050430115089458790e-07, -5.048803576690993068e-07, -5.047169089450195610e-07, -5.045526657489306839e-07, -5.043876284942611985e-07, -5.042217975956802133e-07, -5.040551734690798466e-07, -5.038877565315742736e-07, -5.037195472015016319e-07, -5.035505458984265631e-07, -5.033807530431182951e-07, -5.032101690575868535e-07, -5.030387943650525682e-07, -5.028666293899532727e-07, -5.026936745579538340e-07, -5.025199302959145998e-07, -5.023453970319271866e-07, -5.021700751953100318e-07, -5.019939652165669955e-07, -5.018170675274370180e-07, -5.016393825608651082e-07, -5.014609107509913330e-07, -5.012816525332012151e-07, -5.011016083440547943e-07, -5.009207786213360733e-07, -5.007391638040428525e-07, -5.005567643323604730e-07, -5.003735806476887091e-07, -5.001896131926539447e-07, -5.000048624110460694e-07, -4.998193287478834882e-07, -4.996330126493884517e-07, -4.994459145629543393e-07, -4.992580349372180809e-07, -4.990693742219929231e-07, -4.988799328682761590e-07, -4.986897113282844911e-07, -4.984987100554273506e-07, -4.983069295042858268e-07, -4.981143701306776771e-07, -4.979210323915740001e-07, -4.977269167451576811e-07, -4.975320236508064511e-07, -4.973363535690593233e-07, -4.971399069616879555e-07, -4.969426842916274055e-07, -4.967446860229913773e-07, -4.965459126210947733e-07, -4.963463645524457540e-07, -4.961460422847023267e-07, -4.959449462867567319e-07, -4.957430770286344341e-07, -4.955404349815714139e-07, -4.953370206179745689e-07, -4.951328344114323020e-07, -4.949278768367122975e-07, -4.947221483697645920e-07, -4.945156494876952103e-07, -4.943083806688061875e-07, -4.941003423925757701e-07, -4.938915351396248518e-07, -4.936819593917910895e-07, -4.934716156320609281e-07, -4.932605043445802950e-07, -4.930486260146821282e-07, -4.928359811288610717e-07, -4.926225701747810982e-07, -4.924083936412790034e-07, -4.921934520183340189e-07, -4.919777457971105869e-07, -4.917612754699352791e-07, -4.915440415302905491e-07, -4.913260444728226743e-07, -4.911072847933446137e-07, -4.908877629888077387e-07, -4.906674795573423848e-07, -4.904464349982285228e-07, -4.902246298119056057e-07, -4.900020644999648399e-07, -4.897787395651600899e-07, -4.895546555113749507e-07, -4.893298128436678520e-07, -4.891042120682418826e-07, -4.888778536924492372e-07, -4.886507382247969344e-07, -4.884228661749208756e-07, -4.881942380536249151e-07, -4.879648543728493074e-07, -4.877347156456791781e-07, -4.875038223863470650e-07, -4.872721751102316470e-07, -4.870397743338312749e-07, -4.868066205748082286e-07, -4.865727143519590710e-07, -4.863380561852131656e-07, -4.861026465956415705e-07, -4.858664861054593678e-07, -4.856295752379900879e-07, -4.853919145177174847e-07, -4.851535044702479482e-07, -4.849143456223269163e-07, -4.846744385018312508e-07, -4.844337836377453093e-07, -4.841923815601986379e-07, -4.839502328004761356e-07, -4.837073378909351510e-07, -4.834636973650931503e-07, -4.832193117575963767e-07, -4.829741816041734761e-07, -4.827283074417432810e-07, -4.824816898082761099e-07, -4.822343292429049397e-07, -4.819862262858797720e-07, -4.817373814785375634e-07, -4.814877953633577063e-07, -4.812374684839568406e-07, -4.809864013850137856e-07, -4.807345946123568901e-07, -4.804820487129267631e-07, -4.802287642347390043e-07, -4.799747417269753659e-07, -4.797199817398959791e-07, -4.794644848248576709e-07, -4.792082515343445633e-07, -4.789512824219497562e-07, -4.786935780423339285e-07, -4.784351389513267707e-07, -4.781759657057938944e-07, -4.779160588637389001e-07, -4.776554189842715073e-07, -4.773940466275562034e-07, -4.771319423549147345e-07, -4.768691067287391787e-07, -4.766055403124940109e-07, -4.763412436707701538e-07, -4.760762173692534260e-07, -4.758104619746789083e-07, -4.755439780549463517e-07, -4.752767661789744350e-07, -4.750088269168089202e-07, -4.747401608395764891e-07, -4.744707685194870200e-07, -4.742006505298402048e-07, -4.739298074450256022e-07, -4.736582398404912973e-07, -4.733859482927964179e-07, -4.731129333795653943e-07, -4.728391956795100886e-07, -4.725647357724176709e-07, -4.722895542391620549e-07, -4.720136516616645101e-07, -4.717370286229532198e-07, -4.714596857071203990e-07, -4.711816234993282244e-07, -4.709028425858235513e-07, -4.706233435538927561e-07, -4.703431269919226169e-07, -4.700621934893574326e-07, -4.697805436367078104e-07, -4.694981780255544781e-07, -4.692150972485500304e-07, -4.689313018993787483e-07, -4.686467925728207618e-07, -4.683615698647077392e-07, -4.680756343719296636e-07, -4.677889866924346738e-07, -4.675016274252457409e-07, -4.672135571704022751e-07, -4.669247765290365711e-07, -4.666352861033216094e-07, -4.663450864964855617e-07, -4.660541783128195734e-07, -4.657625621576295351e-07, -4.654702386373095630e-07, -4.651772083592871535e-07, -4.648834719320374241e-07, -4.645890299650807308e-07, -4.642938830689978620e-07, -4.639980318553735518e-07, -4.637014769368731366e-07, -4.634042189271888744e-07, -4.631062584410575208e-07, -4.628075960942628169e-07, -4.625082325035909674e-07, -4.622081682869008913e-07, -4.619074040630758879e-07, -4.616059404520324781e-07, -4.613037780747171217e-07, -4.610009175531269702e-07, -4.606973595102478212e-07, -4.603931045701193400e-07, -4.600881533578476067e-07, -4.597825064994924072e-07, -4.594761646221854479e-07, -4.591691283540856741e-07, -4.588613983243225724e-07, -4.585529751631388421e-07, -4.582438595017090778e-07, -4.579340519722757179e-07, -4.576235532080999166e-07, -4.573123638434239572e-07, -4.570004845135289557e-07, -4.566879158547473021e-07, -4.563746585043561455e-07, -4.560607131006882502e-07, -4.557460802830887433e-07, -4.554307606918642933e-07, -4.551147549684140825e-07, -4.547980637550598706e-07, -4.544806876951783970e-07, -4.541626274331409239e-07, -4.538438836143316585e-07, -4.535244568850881969e-07, -4.532043478928358843e-07, -4.528835572859127967e-07, -4.525620857137061135e-07, -4.522399338266007657e-07, -4.519171022759245912e-07, -4.515935917140793065e-07, -4.512694027944225049e-07, -4.509445361712734798e-07, -4.506189924999866518e-07, -4.502927724369027583e-07, -4.499658766393004670e-07, -4.496383057655343890e-07, -4.493100604748600082e-07, -4.489811414275646003e-07, -4.486515492849184757e-07, -4.483212847091242104e-07, -4.479903483634434363e-07, -4.476587409120777273e-07, -4.473264630201803517e-07, -4.469935153539196408e-07, -4.466598985804322433e-07, -4.463256133678229140e-07, -4.459906603851742011e-07, -4.456550403025524814e-07, -4.453187537909525860e-07, -4.449818015223818680e-07, -4.446441841698006981e-07, -4.443059024071398825e-07, -4.439669569093043679e-07, -4.436273483521263375e-07, -4.432870774124396970e-07, -4.429461447680290403e-07, -4.426045510976355796e-07, -4.422622970809611151e-07, -4.419193833986829643e-07, -4.415758107323900110e-07, -4.412315797646673028e-07, -4.408866911790429524e-07, -4.405411456599943319e-07, -4.401949438929663367e-07, -4.398480865643130462e-07, -4.395005743613755450e-07, -4.391524079724344889e-07, -4.388035880867105815e-07, -4.384541153943738387e-07, -4.381039905865495175e-07, -4.377532143552627418e-07, -4.374017873935238936e-07, -4.370497103952660913e-07, -4.366969840553658364e-07, -4.363436090696318429e-07, -4.359895861348241488e-07, -4.356349159485956707e-07, -4.352795992095741543e-07, -4.349236366173048937e-07, -4.345670288722635427e-07, -4.342097766758685558e-07, -4.338518807304283015e-07, -4.334933417391992429e-07, -4.331341604064097075e-07, -4.327743374371265853e-07, -4.324138735373948249e-07, -4.320527694141808406e-07, -4.316910257753265613e-07, -4.313286433296411746e-07, -4.309656227868319875e-07, -4.306019648575218441e-07, -4.302376702532498661e-07, -4.298727396864833117e-07, -4.295071738705418187e-07, -4.291409735197565415e-07, -4.287741393492699858e-07, -4.284066720751883162e-07, -4.280385724145240226e-07, -4.276698410851507098e-07, -4.273004788058748304e-07, -4.269304862964514612e-07, -4.265598642774468717e-07, -4.261886134703862258e-07, -4.258167345976949772e-07, -4.254442283826344427e-07, -4.250710955494657554e-07, -4.246973368232413889e-07, -4.243229529299664115e-07, -4.239479445965209820e-07, -4.235723125506911083e-07, -4.231960575210955375e-07, -4.228191802373418217e-07, -4.224416814298187952e-07, -4.220635618298605808e-07, -4.216848221696870863e-07, -4.213054631823385707e-07, -4.209254856018244575e-07, -4.205448901629919389e-07, -4.201636776015353988e-07, -4.197818486540697869e-07, -4.193994040580868911e-07, -4.190163445518910155e-07, -4.186326708747656344e-07, -4.182483837667576633e-07, -4.178634839688464423e-07, -4.174779722228824319e-07, -4.170918492715162740e-07, -4.167051158583594636e-07, -4.163177727278434765e-07, -4.159298206252275514e-07, -4.155412602966838697e-07, -4.151520924892239166e-07, -4.147623179507237332e-07, -4.143719374299127464e-07, -4.139809516763951034e-07, -4.135893614405786267e-07, -4.131971674737757172e-07, -4.128043705281327327e-07, -4.124109713566464520e-07, -4.120169707131778921e-07, -4.116223693523929634e-07, -4.112271680298465899e-07, -4.108313675019232058e-07, -4.104349685258540665e-07, -4.100379718597084605e-07, -4.096403782624154149e-07, -4.092421884936929678e-07, -4.088434033141495479e-07, -4.084440234852086941e-07, -4.080440497691322435e-07, -4.076434829290316071e-07, -4.072423237288008014e-07, -4.068405729332150217e-07, -4.064382313078613977e-07, -4.060352996191562511e-07, -4.056317786343419725e-07, -4.052276691215039623e-07, -4.048229718494994265e-07, -4.044176875880614032e-07, -4.040118171077232707e-07, -4.036053611798410883e-07, -4.031983205765871901e-07, -4.027906960709707259e-07, -4.023824884367620634e-07, -4.019736984485981381e-07, -4.015643268819110374e-07, -4.011543745129445183e-07, -4.007438421187682476e-07, -4.003327304772081340e-07, -3.999210403669355837e-07, -3.995087725674736945e-07, -3.990959278590489192e-07, -3.986825070227597842e-07, -3.982685108405039382e-07, -3.978539400949284425e-07, -3.974387955695313619e-07, -3.970230780485865371e-07, -3.966067883171689966e-07, -3.961899271611438386e-07, -3.957724953671858718e-07, -3.953544937226944888e-07, -3.949359230159779486e-07, -3.945167840360106484e-07, -3.940970775726250830e-07, -3.936768044164402172e-07, -3.932559653588035699e-07, -3.928345611918832233e-07, -3.924125927086767166e-07, -3.919900607028604329e-07, -3.915669659689574707e-07, -3.911433093022647989e-07, -3.907190914987897824e-07, -3.902943133554332471e-07, -3.898689756697459046e-07, -3.894430792401199942e-07, -3.890166248657163843e-07, -3.885896133464133275e-07, -3.881620454828890459e-07, -3.877339220766379310e-07, -3.873052439298168596e-07, -3.868760118454128542e-07, -3.864462266271741547e-07, -3.860158890795367393e-07, -3.855850000078009300e-07, -3.851535602179720451e-07, -3.847215705167712516e-07, -3.842890317117304859e-07, -3.838559446111148972e-07, -3.834223100239377765e-07, -3.829881287599801444e-07, -3.825534016297199708e-07, -3.821181294444307484e-07, -3.816823130161340056e-07, -3.812459531575193155e-07, -3.808090506821311188e-07, -3.803716064041955063e-07, -3.799336211386424000e-07, -3.794950957011943332e-07, -3.790560309082885230e-07, -3.786164275771020170e-07, -3.781762865255557166e-07, -3.777356085722544492e-07, -3.772943945365845360e-07, -3.768526452386408414e-07, -3.764103614992481074e-07, -3.759675441399546539e-07, -3.755241939830520723e-07, -3.750803118514988333e-07, -3.746358985690290786e-07, -3.741909549600815748e-07, -3.737454818498080790e-07, -3.732994800640815966e-07, -3.728529504295042166e-07, -3.724058937733410431e-07, -3.719583109236201980e-07, -3.715102027090630469e-07, -3.710615699591044217e-07, -3.706124135039008263e-07, -3.701627341742601861e-07, -3.697125328017504795e-07, -3.692618102186262053e-07, -3.688105672578412997e-07, -3.683588047530503010e-07, -3.679065235386282019e-07, -3.674537244495858522e-07, -3.670004083216910317e-07, -3.665465759913825817e-07, -3.660922282957960813e-07, -3.656373660727542650e-07, -3.651819901607933338e-07, -3.647261013990742813e-07, -3.642697006275097368e-07, -3.638127886866718511e-07, -3.633553664178198770e-07, -3.628974346629133522e-07, -3.624389942645349657e-07, -3.619800460659851612e-07, -3.615205909112981775e-07, -3.610606296450732774e-07, -3.606001631126571244e-07, -3.601391921600715201e-07, -3.596777176339506181e-07, -3.592157403816585027e-07, -3.587532612512060735e-07, -3.582902810912738098e-07, -3.578268007512239994e-07, -3.573628210810298528e-07, -3.568983429313616885e-07, -3.564333671536103852e-07, -3.559678945997092405e-07, -3.555019261223282059e-07, -3.550354625747925189e-07, -3.545685048110237279e-07, -3.541010536856402780e-07, -3.536331100539637572e-07, -3.531646747718551550e-07, -3.526957486958977150e-07, -3.522263326833264199e-07, -3.517564275919397940e-07, -3.512860342803196551e-07, -3.508151536075550883e-07, -3.503437864334515563e-07, -3.498719336184564143e-07, -3.493995960235945880e-07, -3.489267745105681001e-07, -3.484534699417736990e-07, -3.479796831801213822e-07, -3.475054150892337138e-07, -3.470306665333648266e-07, -3.465554383773159310e-07, -3.460797314866561786e-07, -3.456035467274406001e-07, -3.451268849664294874e-07, -3.446497470709843665e-07, -3.441721339090892271e-07, -3.436940463493480868e-07, -3.432154852610030968e-07, -3.427364515138514265e-07, -3.422569459783677660e-07, -3.417769695256378864e-07, -3.412965230272809780e-07, -3.408156073556482795e-07, -3.403342233836359890e-07, -3.398523719847122639e-07, -3.393700540330074825e-07, -3.388872704032395462e-07, -3.384040219707254207e-07, -3.379203096114072877e-07, -3.374361342017628654e-07, -3.369514966189308227e-07, -3.364663977406264988e-07, -3.359808384451602738e-07, -3.354948196114331742e-07, -3.350083421189626021e-07, -3.345214068477915433e-07, -3.340340146786153578e-07, -3.335461664926948532e-07, -3.330578631718798426e-07, -3.325691055985989270e-07, -3.320798946558878187e-07, -3.315902312273011963e-07, -3.311001161970331422e-07, -3.306095504498366222e-07, -3.301185348710399487e-07, -3.296270703465670045e-07, -3.291351577628559272e-07, -3.286427980069751528e-07, -3.281499919665425768e-07, -3.276567405297465187e-07, -3.271630445853409571e-07, -3.266689050226666526e-07, -3.261743227315647505e-07, -3.256792986025051066e-07, -3.251838335264923718e-07, -3.246879283950938387e-07, -3.241915841004321889e-07, -3.236948015352087333e-07, -3.231975815926168032e-07, -3.226999251664626110e-07, -3.222018331510861587e-07, -3.217033064413757965e-07, -3.212043459327892921e-07, -3.207049525212680165e-07, -3.202051271033402282e-07, -3.197048705761411381e-07, -3.192041838372206326e-07, -3.187030677847539200e-07, -3.182015233174569864e-07, -3.176995513345175093e-07, -3.171971527357208538e-07, -3.166943284213683869e-07, -3.161910792922923535e-07, -3.156874062498771581e-07, -3.151833101959725969e-07, -3.146787920330003720e-07, -3.141738526639707678e-07, -3.136684929922918033e-07, -3.131627139219777087e-07, -3.126565163575671332e-07, -3.121499012040519947e-07, -3.116428693669869056e-07, -3.111354217525051076e-07, -3.106275592671319659e-07, -3.101192828179849215e-07, -3.096105933126978940e-07, -3.091014916593292721e-07, -3.085919787665938424e-07, -3.080820555435658509e-07, -3.075717228999095020e-07, -3.070609817457949438e-07, -3.065498329918288106e-07, -3.060382775491608969e-07, -3.055263163295067622e-07, -3.050139502449491547e-07, -3.045011802081532109e-07, -3.039880071322800047e-07, -3.034744319308929511e-07, -3.029604555182057215e-07, -3.024460788087624359e-07, -3.019313027176870615e-07, -3.014161281605663101e-07, -3.009005560534715022e-07, -3.003845873129590435e-07, -2.998682228560860951e-07, -2.993514636003291522e-07, -2.988343104637048523e-07, -2.983167643647076656e-07, -2.977988262222212207e-07, -2.972804969557333985e-07, -2.967617774851378086e-07, -2.962426687307563418e-07, -2.957231716134449430e-07, -2.952032870545063670e-07, -2.946830159757065368e-07, -2.941623592992991077e-07, -2.936413179479348874e-07, -2.931198928447915911e-07, -2.925980849135052848e-07, -2.920758950780813406e-07, -2.915533242631172070e-07, -2.910303733935951498e-07, -2.905070433949073989e-07, -2.899833351929633509e-07, -2.894592497141015831e-07, -2.889347878851082771e-07, -2.884099506332141477e-07, -2.878847388861217601e-07, -2.873591535719056329e-07, -2.868331956191516807e-07, -2.863068659568625585e-07, -2.857801655144797373e-07, -2.852530952219043619e-07, -2.847256560094059841e-07, -2.841978488077532694e-07, -2.836696745481283414e-07, -2.831411341621403872e-07, -2.826122285818290454e-07, -2.820829587396837819e-07, -2.815533255685517226e-07, -2.810233300017719603e-07, -2.804929729730830172e-07, -2.799622554166470375e-07, -2.794311782670649286e-07, -2.788997424592876873e-07, -2.783679489287515542e-07, -2.778357986112846287e-07, -2.773032924431270917e-07, -2.767704313609291938e-07, -2.762372163017776194e-07, -2.757036482030944781e-07, -2.751697280027555183e-07, -2.746354566391096623e-07, -2.741008350507731773e-07, -2.735658641768527624e-07, -2.730305449568571928e-07, -2.724948783306228335e-07, -2.719588652384541943e-07, -2.714225066210267321e-07, -2.708858034194088746e-07, -2.703487565750835129e-07, -2.698113670298564168e-07, -2.692736357259666662e-07, -2.687355636061082507e-07, -2.681971516132268874e-07, -2.676584006907396674e-07, -2.671193117824476523e-07, -2.665798858324630825e-07, -2.660401237853464905e-07, -2.655000265860115159e-07, -2.649595951797494158e-07, -2.644188305122228715e-07, -2.638777335294938873e-07, -2.633363051778989593e-07, -2.627945464043080023e-07, -2.622524581557959133e-07, -2.617100413798957281e-07, -2.611672970245052892e-07, -2.606242260377909482e-07, -2.600808293684224065e-07, -2.595371079653571974e-07, -2.589930627778640863e-07, -2.584486947556376311e-07, -2.579040048487279320e-07, -2.573589940074442284e-07, -2.568136631826098555e-07, -2.562680133252365077e-07, -2.557220453867758600e-07, -2.551757603190247532e-07, -2.546291590740335558e-07, -2.540822426043354980e-07, -2.535350118627351782e-07, -2.529874678023299504e-07, -2.524396113766246976e-07, -2.518914435394647039e-07, -2.513429652449333227e-07, -2.507941774475884047e-07, -2.502450811022502220e-07, -2.496956771640211615e-07, -2.491459665884035687e-07, -2.485959503312022325e-07, -2.480456293485495850e-07, -2.474950045969226947e-07, -2.469440770330506753e-07, -2.463928476140542875e-07, -2.458413172973726703e-07, -2.452894870406676797e-07, -2.447373578020583575e-07, -2.441849305399064206e-07, -2.436322062128407187e-07, -2.430791857798691490e-07, -2.425258702002854292e-07, -2.419722604336913324e-07, -2.414183574400184452e-07, -2.408641621794295410e-07, -2.403096756124617820e-07, -2.397548986999312159e-07, -2.391998324029508285e-07, -2.386444776829321846e-07, -2.380888355016063393e-07, -2.375329068209276995e-07, -2.369766926032140761e-07, -2.364201938110496980e-07, -2.358634114073116558e-07, -2.353063463551609286e-07, -2.347489996180701771e-07, -2.341913721597253290e-07, -2.336334649441658688e-07, -2.330752789356894938e-07, -2.325168150988731045e-07, -2.319580743985941657e-07, -2.313990577999383799e-07, -2.308397662683333600e-07, -2.302802007694596109e-07, -2.297203622692669676e-07, -2.291602517339753363e-07, -2.285998701300975908e-07, -2.280392184243393576e-07, -2.274782975837463735e-07, -2.269171085755998506e-07, -2.263556523674455928e-07, -2.257939299270879342e-07, -2.252319422226134830e-07, -2.246696902222938178e-07, -2.241071748947276310e-07, -2.235443972087426843e-07, -2.229813581334205320e-07, -2.224180586381136990e-07, -2.218544996923532758e-07, -2.212906822659648024e-07, -2.207266073290912182e-07, -2.201622758519741947e-07, -2.195976888051937137e-07, -2.190328471595725113e-07, -2.184677518860959540e-07, -2.179024039560606136e-07, -2.173368043409753492e-07, -2.167709540125804720e-07, -2.162048539428510006e-07, -2.156385051040142899e-07, -2.150719084684312615e-07, -2.145050650088594335e-07, -2.139379756981119373e-07, -2.133706415093227178e-07, -2.128030634158482777e-07, -2.122352423911682840e-07, -2.116671794091282157e-07, -2.110988754437165151e-07, -2.105303314690902107e-07, -2.099615484596933162e-07, -2.093925273901814448e-07, -2.088232692353231033e-07, -2.082537749702689162e-07, -2.076840455702045011e-07, -2.071140820106181045e-07, -2.065438852672058138e-07, -2.059734563157651483e-07, -2.054027961324430287e-07, -2.048319056935122922e-07, -2.042607859753939275e-07, -2.036894379547783063e-07, -2.031178626085501676e-07, -2.025460609136914477e-07, -2.019740338475195609e-07, -2.014017823874687060e-07, -2.008293075111124188e-07, -2.002566101962831889e-07, -1.996836914209736483e-07, -1.991105521633609760e-07, -1.985371934018263801e-07, -1.979636161148581657e-07, -1.973898212811956505e-07, -1.968158098797557646e-07, -1.962415828895298181e-07, -1.956671412898321054e-07, -1.950924860600739856e-07, -1.945176181797851642e-07, -1.939425386287408008e-07, -1.933672483868566362e-07, -1.927917484342129207e-07, -1.922160397510783961e-07, -1.916401233178093661e-07, -1.910640001149949096e-07, -1.904876711233605574e-07, -1.899111373237854972e-07, -1.893343996973070472e-07, -1.887574592251391850e-07, -1.881803168885728622e-07, -1.876029736691238647e-07, -1.870254305484329423e-07, -1.864476885082866404e-07, -1.858697485306156852e-07, -1.852916115975231477e-07, -1.847132786911757585e-07, -1.841347507939559508e-07, -1.835560288883614863e-07, -1.829771139570254934e-07, -1.823980069827428043e-07, -1.818187089483656110e-07, -1.812392208369555612e-07, -1.806595436316779845e-07, -1.800796783158279391e-07, -1.794996258728262409e-07, -1.789193872862471247e-07, -1.783389635397110152e-07, -1.777583556170370455e-07, -1.771775645021396402e-07, -1.765965911790533435e-07, -1.760154366319290344e-07, -1.754341018450587552e-07, -1.748525878027730354e-07, -1.742708954895905249e-07, -1.736890258901161390e-07, -1.731069799890626836e-07, -1.725247587712784103e-07, -1.719423632216392586e-07, -1.713597943251769950e-07, -1.707770530671018193e-07, -1.701941404325730030e-07, -1.696110574069513588e-07, -1.690278049756942082e-07, -1.684443841242794395e-07, -1.678607958383568625e-07, -1.672770411036422230e-07, -1.666931209059428258e-07, -1.661090362311815959e-07, -1.655247880652920195e-07, -1.649403773943463110e-07, -1.643558052045758741e-07, -1.637710724821448262e-07, -1.631861802133987881e-07, -1.626011293847636370e-07, -1.620159209826417978e-07, -1.614305559936648177e-07, -1.608450354044627619e-07, -1.602593602016875857e-07, -1.596735313721406402e-07, -1.590875499026920447e-07, -1.585014167801788052e-07, -1.579151329916830638e-07, -1.573286995241736195e-07, -1.567421173647844159e-07, -1.561553875007120508e-07, -1.555685109191094996e-07, -1.549814886073447254e-07, -1.543943215527632184e-07, -1.538070107427149423e-07, -1.532195571646815213e-07, -1.526319618061955870e-07, -1.520442256547385519e-07, -1.514563496980186216e-07, -1.508683349236139027e-07, -1.502801823192487475e-07, -1.496918928726663810e-07, -1.491034675716528565e-07, -1.485149074040336143e-07, -1.479262133576999513e-07, -1.473373864205026924e-07, -1.467484275804060589e-07, -1.461593378254087886e-07, -1.455701181434382306e-07, -1.449807695226074721e-07, -1.443912929509817168e-07, -1.438016894166018422e-07, -1.432119599076129644e-07, -1.426221054121570226e-07, -1.420321269184014466e-07, -1.414420254145580562e-07, -1.408518018887819727e-07, -1.402614573293231321e-07, -1.396709927244223121e-07, -1.390804090623345045e-07, -1.384897073313274067e-07, -1.378988885197074147e-07, -1.373079536157113357e-07, -1.367169036076630359e-07, -1.361257394838654175e-07, -1.355344622326282382e-07, -1.349430728422624470e-07, -1.343515723011084802e-07, -1.337599615974271000e-07, -1.331682417195573135e-07, -1.325764136558073166e-07, -1.319844783944807791e-07, -1.313924369239013026e-07, -1.308002902323059853e-07, -1.302080393080007999e-07, -1.296156851392527819e-07, -1.290232287143185643e-07, -1.284306710214378924e-07, -1.278380130488614699e-07, -1.272452557847437035e-07, -1.266524002172978686e-07, -1.260594473346896746e-07, -1.254663981250628342e-07, -1.248732535765616693e-07, -1.242800146772284869e-07, -1.236866824151540074e-07, -1.230932577783751912e-07, -1.224997417548972083e-07, -1.219061353326935709e-07, -1.213124394997294796e-07, -1.207186552438561564e-07, -1.201247835529410224e-07, -1.195308254148886892e-07, -1.189367818174088843e-07, -1.183426537482718718e-07, -1.177484421952058683e-07, -1.171541481457879878e-07, -1.165597725877314786e-07, -1.159653165085193811e-07, -1.153707808956880192e-07, -1.147761667367216510e-07, -1.141814750189739196e-07, -1.135867067297944707e-07, -1.129918628565561379e-07, -1.123969443864151791e-07, -1.118019523065737769e-07, -1.112068876041725456e-07, -1.106117512661845057e-07, -1.100165442797002172e-07, -1.094212676315622047e-07, -1.088259223086484095e-07, -1.082305092977427256e-07, -1.076350295855819972e-07, -1.070394841587285664e-07, -1.064438740038510382e-07, -1.058482001073607711e-07, -1.052524634556949182e-07, -1.046566650352125471e-07, -1.040608058320867616e-07, -1.034648868325656944e-07, -1.028689090227347021e-07, -1.022728733885421073e-07, -1.016767809159265843e-07, -1.010806325907388485e-07, -1.004844293986340696e-07, -9.988817232535916174e-08, -9.929186235638390033e-08, -9.869550047718751054e-08, -9.809908767312739038e-08, -9.750262492946139825e-08, -9.690611323134798530e-08, -9.630955356387017703e-08, -9.571294691192935009e-08, -9.511629426040066281e-08, -9.451959659402648787e-08, -9.392285489744231297e-08, -9.332607015517292920e-08, -9.272924335165895376e-08, -9.213237547114930970e-08, -9.153546749785718586e-08, -9.093852041585407835e-08, -9.034153520909374570e-08, -8.974451286143678608e-08, -8.914745435654523456e-08, -8.855036067803708053e-08, -8.795323280937983268e-08, -8.735607173391607556e-08, -8.675887843486162996e-08, -8.616165389532887276e-08, -8.556439909822216809e-08, -8.496711502639242434e-08, -8.436980266253146656e-08, -8.377246298919491950e-08, -8.317509698880305474e-08, -8.257770564366358109e-08, -8.198028993586575228e-08, -8.138285084743648572e-08, -8.078538936023289516e-08, -8.018790645596883992e-08, -7.959040311623723889e-08, -7.899288032240462817e-08, -7.839533905576753130e-08, -7.779778029744515077e-08, -7.720020502840417018e-08, -7.660261422945703374e-08, -7.600500888128783369e-08, -7.540738996434350629e-08, -7.480975845899176374e-08, -7.421211534541342838e-08, -7.361446160362731422e-08, -7.301679821351557186e-08, -7.241912615471517550e-08, -7.182144640677713880e-08, -7.122375994905651957e-08, -7.062606776073912791e-08, -7.002837082083911737e-08, -6.943067010822440920e-08, -6.883296660150892066e-08, -6.823526127918347128e-08, -6.763755511964012187e-08, -6.703984910093370822e-08, -6.644214420104352138e-08, -6.584444139776656828e-08, -6.524674166861006466e-08, -6.464904599108096162e-08, -6.405135534231366129e-08, -6.345367069935972866e-08, -6.285599303908108598e-08, -6.225832333806778438e-08, -6.166066257276963811e-08, -6.106301171952066937e-08, -6.046537175430000677e-08, -5.986774365299445236e-08, -5.927012839129079590e-08, -5.867252694456888358e-08, -5.807494028819158124e-08, -5.747736939713159016e-08, -5.687981524626150291e-08, -5.628227881022025010e-08, -5.568476106346419363e-08, -5.508726298013297788e-08, -5.448978553433945320e-08, -5.389232969979800710e-08, -5.329489645011287974e-08, -5.269748675867178183e-08, -5.210010159853821565e-08, -5.150274194271447207e-08, -5.090540876390176147e-08, -5.030810303452545267e-08, -4.971082572686622405e-08, -4.911357781297754399e-08, -4.851636026458017564e-08, -4.791917405335035995e-08, -4.732202015054837853e-08, -4.672489952730811978e-08, -4.612781315452928073e-08, -4.553076200277021739e-08, -4.493374704251168958e-08, -4.433676924391572128e-08, -4.373982957685141527e-08, -4.314292901102586605e-08, -4.254606851587617637e-08, -4.194924906059480203e-08, -4.135247161412785121e-08, -4.075573714520015799e-08, -4.015904662220766278e-08, -3.956240101337469583e-08, -3.896580128664657605e-08, -3.836924840971473744e-08, -3.777274335004135264e-08, -3.717628707475210384e-08, -3.657988055079346618e-08, -3.598352474482527359e-08, -3.538722062324559369e-08, -3.479096915218915292e-08, -3.419477129755223793e-08, -3.359862802488555254e-08, -3.300254029955132251e-08, -3.240650908661555028e-08, -3.181053535087384953e-08, -3.121462005687536055e-08, -3.061876416881586533e-08, -3.002296865069508418e-08, -2.942723446620908604e-08, -2.883156257877533550e-08, -2.823595395153117408e-08, -2.764040954735877131e-08, -2.704493032877765082e-08, -2.644951725810190760e-08, -2.585417129733295905e-08, -2.525889340818438686e-08, -2.466368455208059703e-08, -2.406854569018144663e-08, -2.347347778327504785e-08, -2.287848179193520030e-08, -2.228355867641361270e-08, -2.168870939666508226e-08, -2.109393491237247551e-08, -2.049923618283935036e-08, -1.990461416712054474e-08, -1.931006982404721039e-08, -1.871560411198748969e-08, -1.812121798910904950e-08, -1.752691241327210689e-08, -1.693268834194839521e-08, -1.633854673237833504e-08, -1.574448854146389440e-08, -1.515051472579333806e-08, -1.455662624163982127e-08, -1.396282404498632267e-08, -1.336910909139185943e-08, -1.277548233628076384e-08, -1.218194473457124946e-08, -1.158849724096454714e-08, -1.099514080983765115e-08, -1.040187639516253006e-08, -9.808704950636971855e-09, -9.215627429709099892e-09, -8.622644785338395483e-09, -8.029757970258288020e-09, -7.436967936868926723e-09, -6.844275637130137688e-09, -6.251682022850315878e-09, -5.659188045315376726e-09, -5.066794655577534805e-09, -4.474502804348293958e-09, -3.882313441917720258e-09, -3.290227518284983105e-09, -2.698245983183200836e-09, -2.106369785840382632e-09, -1.514599875241932424e-09, -9.229372000235322093e-10, -3.313827083641105687e-10, 2.600626517517647888e-10, 8.513979327728805966e-10, 1.442622187556450116e-09, 2.033734469237697670e-09, 2.624733831310507408e-09, 3.215619327734416223e-09, 3.806390012645941056e-09, 4.397044940729333449e-09, 4.987583166927956788e-09, 5.578003746551258958e-09, 6.168305735381673850e-09, 6.758488189412552353e-09, 7.348550165086838696e-09, 7.938490719272188859e-09, 8.528308909130698724e-09, 9.118003792225763402e-09, 9.707574426497215494e-09, 1.029701987023653366e-08, 1.088633918219351251e-08, 1.147553142141983121e-08, 1.206459564737594998e-08, 1.265353091990602836e-08, 1.324233629923956299e-08, 1.383101084596655406e-08, 1.441955362114405934e-08, 1.500796368614004071e-08, 1.559624010273977929e-08, 1.618438193312143885e-08, 1.677238823985705351e-08, 1.736025808588807292e-08, 1.794799053463183368e-08, 1.853558464982529164e-08, 1.912303949563169849e-08, 1.971035413661571679e-08, 2.029752763771850532e-08, 2.088455906436472981e-08, 2.147144748230571288e-08, 2.205819195772644482e-08, 2.264479155722066885e-08, 2.323124534779231053e-08, 2.381755239683065899e-08, 2.440371177221679867e-08, 2.498972254216787760e-08, 2.557558377534293033e-08, 2.616129454081871431e-08, 2.674685390809084809e-08, 2.733226094704896613e-08, 2.791751472808323979e-08, 2.850261432192854645e-08, 2.908755879977046114e-08, 2.967234723322101015e-08, 3.025697869429337596e-08, 3.084145225550847769e-08, 3.142576698976531559e-08, 3.200992197031616882e-08, 3.259391627100389039e-08, 3.317774896600129237e-08, 3.376141912991779260e-08, 3.434492583787855934e-08, 3.492826816536974248e-08, 3.551144518834386293e-08, 3.609445598319573180e-08, 3.667729962676350252e-08, 3.725997519630394145e-08, 3.784248176962491580e-08, 3.842481842479886482e-08, 3.900698424053037242e-08, 3.958897829587020090e-08, 4.017079967032085246e-08, 4.075244744391697110e-08, 4.133392069709560768e-08, 4.191521851067168236e-08, 4.249633996607507449e-08, 4.307728414508984889e-08, 4.365805012996067104e-08, 4.423863700349867956e-08, 4.481904384879587063e-08, 4.539926974959159864e-08, 4.597931378998700028e-08, 4.655917505455124427e-08, 4.713885262840051720e-08, 4.771834559706934064e-08, 4.829765304648617929e-08, 4.887677406320908818e-08, 4.945570773416632205e-08, 5.003445314676301520e-08, 5.061300938898501580e-08, 5.119137554914199007e-08, 5.176955071610153424e-08, 5.234753397926513338e-08, 5.292532442843916755e-08, 5.350292115394107546e-08, 5.408032324657400303e-08, 5.465752979760241813e-08, 5.523453989885817496e-08, 5.581135264258473942e-08, 5.638796712151734622e-08, 5.696438242898804417e-08, 5.754059765866780776e-08, 5.811661190480094692e-08, 5.869242426218098640e-08, 5.926803382602251899e-08, 5.984343969206554935e-08, 6.041864095655165801e-08, 6.099363671619937782e-08, 6.156842606830886213e-08, 6.214300811060858500e-08, 6.271738194135928807e-08, 6.329154665933009154e-08, 6.386550136380042654e-08, 6.443924515453449169e-08, 6.501277713188631175e-08, 6.558609639664668929e-08, 6.615920205014720448e-08, 6.673209319423602172e-08, 6.730476893127945133e-08, 6.787722836413759739e-08, 6.844947059626817217e-08, 6.902149473157413611e-08, 6.959329987450726084e-08, 7.016488513004458428e-08, 7.073624960366362172e-08, 7.130739240144633908e-08, 7.187831262992664733e-08, 7.244900939619514334e-08, 7.301948180787336808e-08, 7.358972897311632122e-08, 7.415975000058760600e-08, 7.472954399956373340e-08, 7.529911007978166948e-08, 7.586844735154172335e-08, 7.643755492568547144e-08, 7.700643191359469866e-08, 7.757507742716844910e-08, 7.814349057892685380e-08, 7.871167048185833388e-08, 7.927961624952328270e-08, 7.984732699603075919e-08, 8.041480183601352691e-08, 8.098203988473159052e-08, 8.154904025794614673e-08, 8.211580207189458359e-08, 8.268232444352340130e-08, 8.324860649023230242e-08, 8.381464732997873419e-08, 8.438044608135537890e-08, 8.494600186343927607e-08, 8.551131379589336058e-08, 8.607638099894447948e-08, 8.664120259335739868e-08, 8.720577770053959682e-08, 8.777010544241395884e-08, 8.833418494139504585e-08, 8.889801532062081157e-08, 8.946159570369690422e-08, 9.002492521480232073e-08, 9.058800297876512346e-08, 9.115082812093782053e-08, 9.171339976717277538e-08, 9.227571704405237472e-08, 9.283777907863599070e-08, 9.339958499856407331e-08, 9.396113393215952963e-08, 9.452242500815036024e-08, 9.508345735602607481e-08, 9.564423010576129468e-08, 9.620474238791619239e-08, 9.676499333371576871e-08, 9.732498207492433296e-08, 9.788470774381988020e-08, 9.844416947342521217e-08, 9.900336639725458177e-08, 9.956229764941758694e-08, 1.001209623647209999e-07, 1.006793596783908742e-07, 1.012374887264309588e-07, 1.017953486453416021e-07, 1.023529385722513466e-07, 1.029102576448898766e-07, 1.034673050015922803e-07, 1.040240797812721689e-07, 1.045805811235260083e-07, 1.051368081684822006e-07, 1.056927600568786281e-07, 1.062484359301641514e-07, 1.068038349302474506e-07, 1.073589561997266644e-07, 1.079137988818639656e-07, 1.084683621204618942e-07, 1.090226450599643001e-07, 1.095766468454342276e-07, 1.101303666225289673e-07, 1.106838035376002183e-07, 1.112369567375486627e-07, 1.117898253698960167e-07, 1.123424085828910948e-07, 1.128947055252560573e-07, 1.134467153464164330e-07, 1.139984371964770178e-07, 1.145498702260956012e-07, 1.151010135865870319e-07, 1.156518664298976750e-07, 1.162024279086082433e-07, 1.167526971759082549e-07, 1.173026733856989737e-07, 1.178523556924441994e-07, 1.184017432512709188e-07, 1.189508352179457343e-07, 1.194996307488521796e-07, 1.200481290010902195e-07, 1.205963291323293160e-07, 1.211442303009080607e-07, 1.216918316658122842e-07, 1.222391323866748973e-07, 1.227861316237517773e-07, 1.233328285380249732e-07, 1.238792222910513783e-07, 1.244253120450669680e-07, 1.249710969629598537e-07, 1.255165762082495571e-07, 1.260617489451861655e-07, 1.266066143386021546e-07, 1.271511715540138467e-07, 1.276954197575981703e-07, 1.282393581161921046e-07, 1.287829857972717412e-07, 1.293263019690497203e-07, 1.298693058003554540e-07, 1.304119964606099543e-07, 1.309543731200494492e-07, 1.314964349494809348e-07, 1.320381811203805101e-07, 1.325796108049702984e-07, 1.331207231760695548e-07, 1.336615174071978190e-07, 1.342019926725478365e-07, 1.347421481469643827e-07, 1.352819830060435250e-07, 1.358214964260105439e-07, 1.363606875836964544e-07, 1.368995556567613840e-07, 1.374380998234484842e-07, 1.379763192626858909e-07, 1.385142131541588024e-07, 1.390517806781652190e-07, 1.395890210157143043e-07, 1.401259333485040187e-07, 1.406625168589219132e-07, 1.411987707300207508e-07, 1.417346941456456146e-07, 1.422702862901611363e-07, 1.428055463487985419e-07, 1.433404735073867713e-07, 1.438750669524515816e-07, 1.444093258712895561e-07, 1.449432494518492555e-07, 1.454768368827037946e-07, 1.460100873532773184e-07, 1.465430000535968740e-07, 1.470755741743954310e-07, 1.476078089072066168e-07, 1.481397034441021632e-07, 1.486712569780296602e-07, 1.492024687025500824e-07, 1.497333378119577758e-07, 1.502638635012589119e-07, 1.507940449661709579e-07, 1.513238814031018190e-07, 1.518533720092467702e-07, 1.523825159824434819e-07, 1.529113125212470346e-07, 1.534397608250292870e-07, 1.539678600937344537e-07, 1.544956095281003135e-07, 1.550230083296359215e-07, 1.555500557004997423e-07, 1.560767508435992030e-07, 1.566030929625668705e-07, 1.571290812617375016e-07, 1.576547149462472525e-07, 1.581799932218876180e-07, 1.587049152951802619e-07, 1.592294803734746639e-07, 1.597536876647081973e-07, 1.602775363776242404e-07, 1.608010257217487769e-07, 1.613241549072717057e-07, 1.618469231451443285e-07, 1.623693296470549984e-07, 1.628913736254327458e-07, 1.634130542934232173e-07, 1.639343708649838348e-07, 1.644553225547452791e-07, 1.649759085781038162e-07, 1.654961281512039072e-07, 1.660159804909099116e-07, 1.665354648149063021e-07, 1.670545803415535103e-07, 1.675733262899874792e-07, 1.680917018800929290e-07, 1.686097063325071688e-07, 1.691273388685987881e-07, 1.696445987105594014e-07, 1.701614850812665081e-07, 1.706779972043762955e-07, 1.711941343043043955e-07, 1.717098956062005262e-07, 1.722252803360451598e-07, 1.727402877205107152e-07, 1.732549169870530372e-07, 1.737691673638929735e-07, 1.742830380800151313e-07, 1.747965283651460388e-07, 1.753096374498507606e-07, 1.758223645654132805e-07, 1.763347089438172578e-07, 1.768466698179577330e-07, 1.773582464214062082e-07, 1.778694379885069972e-07, 1.783802437544473438e-07, 1.788906629551200705e-07, 1.794006948272159840e-07, 1.799103386082022234e-07, 1.804195935363027251e-07, 1.809284588505879819e-07, 1.814369337908638438e-07, 1.819450175976449685e-07, 1.824527095123708676e-07, 1.829600087771695583e-07, 1.834669146349536486e-07, 1.839734263294914614e-07, 1.844795431052688359e-07, 1.849852642075823014e-07, 1.854905888825161277e-07, 1.859955163769454752e-07, 1.865000459385138160e-07, 1.870041768157487926e-07, 1.875079082578082395e-07, 1.880112395148093094e-07, 1.885141698375688834e-07, 1.890166984777022242e-07, 1.895188246877132113e-07, 1.900205477207663571e-07, 1.905218668308960239e-07, 1.910227812729819393e-07, 1.915232903026378380e-07, 1.920233931762804152e-07, 1.925230891512210714e-07, 1.930223774854164608e-07, 1.935212574377897022e-07, 1.940197282679796572e-07, 1.945177892364335216e-07, 1.950154396044988078e-07, 1.955126786341976370e-07, 1.960095055884304770e-07, 1.965059197309569784e-07, 1.970019203262813864e-07, 1.974975066397229775e-07, 1.979926779375078032e-07, 1.984874334865416855e-07, 1.989817725546173163e-07, 1.994756944103911231e-07, 1.999691983232718572e-07, 2.004622835635108031e-07, 2.009549494021819790e-07, 2.014471951111603521e-07, 2.019390199632112802e-07, 2.024304232318585861e-07, 2.029214041914532200e-07, 2.034119621172614575e-07, 2.039020962852440087e-07, 2.043918059722574533e-07, 2.048810904560343884e-07, 2.053699490150713290e-07, 2.058583809287190757e-07, 2.063463854771627831e-07, 2.068339619413987457e-07, 2.073211096033260892e-07, 2.078078277456132040e-07, 2.082941156517889073e-07, 2.087799726062202082e-07, 2.092653978941124139e-07, 2.097503908014919238e-07, 2.102349506152914895e-07, 2.107190766232191091e-07, 2.112027681138505662e-07, 2.116860243766055802e-07, 2.121688447017480980e-07, 2.126512283803681349e-07, 2.131331747044688610e-07, 2.136146829668372164e-07, 2.140957524611304148e-07, 2.145763824818569378e-07, 2.150565723243539035e-07, 2.155363212848782550e-07, 2.160156286604751523e-07, 2.164944937490630994e-07, 2.169729158494214241e-07, 2.174508942611819661e-07, 2.179284282848135664e-07, 2.184055172217090991e-07, 2.188821603740565644e-07, 2.193583570449252470e-07, 2.198341065382457056e-07, 2.203094081588113607e-07, 2.207842612122587215e-07, 2.212586650051526986e-07, 2.217326188448585690e-07, 2.222061220396305181e-07, 2.226791738985891136e-07, 2.231517737317016913e-07, 2.236239208498713204e-07, 2.240956145648276682e-07, 2.245668541891055598e-07, 2.250376390362433955e-07, 2.255079684205654900e-07, 2.259778416572702429e-07, 2.264472580624972132e-07, 2.269162169531950354e-07, 2.273847176472146722e-07, 2.278527594632815155e-07, 2.283203417210019243e-07, 2.287874637408404609e-07, 2.292541248442281258e-07, 2.297203243533269353e-07, 2.301860615913340593e-07, 2.306513358822421641e-07, 2.311161465509302565e-07, 2.315804929232491549e-07, 2.320443743258055751e-07, 2.325077900861591979e-07, 2.329707395328016786e-07, 2.334332219950494443e-07, 2.338952368031076981e-07, 2.343567832881620040e-07, 2.348178607821366979e-07, 2.352784686180022540e-07, 2.357386061295345162e-07, 2.361982726514057540e-07, 2.366574675192710332e-07, 2.371161900695524345e-07, 2.375744396396325739e-07, 2.380322155678397003e-07, 2.384895171933342726e-07, 2.389463438561782308e-07, 2.394026948974198319e-07, 2.398585696588607951e-07, 2.403139674833559134e-07, 2.407688877145773667e-07, 2.412233296971258945e-07, 2.416772927765077677e-07, 2.421307762991336764e-07, 2.425837796123035368e-07, 2.430363020642897116e-07, 2.434883430042085260e-07, 2.439399017820885067e-07, 2.443909777489540266e-07, 2.448415702566149758e-07, 2.452916786578569731e-07, 2.457413023064233143e-07, 2.461904405569077160e-07, 2.466390927648415605e-07, 2.470872582866726667e-07, 2.475349364797457025e-07, 2.479821267023873647e-07, 2.484288283137803299e-07, 2.488750406740479046e-07, 2.493207631442359733e-07, 2.497659950863120978e-07, 2.502107358631446599e-07, 2.506549848385889933e-07, 2.510987413773647759e-07, 2.515420048451354393e-07, 2.519847746084916513e-07, 2.524270500349511044e-07, 2.528688304929399340e-07, 2.533101153518748803e-07, 2.537509039820396749e-07, 2.541911957546693733e-07, 2.546309900419338904e-07, 2.550702862169114782e-07, 2.555090836536764468e-07, 2.559473817271761321e-07, 2.563851798133126881e-07, 2.568224772889242402e-07, 2.572592735317859441e-07, 2.576955679205917743e-07, 2.581313598350324515e-07, 2.585666486556780753e-07, 2.590014337640594394e-07, 2.594357145426483384e-07, 2.598694903748577262e-07, 2.603027606450221286e-07, 2.607355247384839877e-07, 2.611677820414658128e-07, 2.615995319411564719e-07, 2.620307738256909159e-07, 2.624615070841300086e-07, 2.628917311065439593e-07, 2.633214452839106263e-07, 2.637506490080952935e-07, 2.641793416720374943e-07, 2.646075226695440713e-07, 2.650351913953748845e-07, 2.654623472453022633e-07, 2.658889896159922098e-07, 2.663151179050841257e-07, 2.667407315111722304e-07, 2.671658298337883563e-07, 2.675904122734796102e-07, 2.680144782317105947e-07, 2.684380271108435024e-07, 2.688610583143209696e-07, 2.692835712464647468e-07, 2.697055653125565904e-07, 2.701270399189196309e-07, 2.705479944727219143e-07, 2.709684283821514201e-07, 2.713883410564006028e-07, 2.718077319055676071e-07, 2.722266003407145540e-07, 2.726449457739504974e-07, 2.730627676182110364e-07, 2.734800652875409067e-07, 2.738968381968713172e-07, 2.743130857621050233e-07, 2.747288074001913957e-07, 2.751440025289348848e-07, 2.755586705671694036e-07, 2.759728109347391637e-07, 2.763864230524062427e-07, 2.767995063419041593e-07, 2.772120602260191882e-07, 2.776240841283781783e-07, 2.780355774737183328e-07, 2.784465396876780982e-07, 2.788569701968923492e-07, 2.792668684289727484e-07, 2.796762338125146281e-07, 2.800850657770699917e-07, 2.804933637532309460e-07, 2.809011271725137107e-07, 2.813083554674163756e-07, 2.817150480714966155e-07, 2.821212044191798380e-07, 2.825268239459372183e-07, 2.829319060882599713e-07, 2.833364502835696186e-07, 2.837404559702928983e-07, 2.841439225878427594e-07, 2.845468495766047567e-07, 2.849492363780076187e-07, 2.853510824344121281e-07, 2.857523871891928599e-07, 2.861531500867115532e-07, 2.865533705723230404e-07, 2.869530480923563474e-07, 2.873521820941887564e-07, 2.877507720261379151e-07, 2.881488173375312933e-07, 2.885463174786967066e-07, 2.889432719009544284e-07, 2.893396800566042731e-07, 2.897355413989997109e-07, 2.901308553824369068e-07, 2.905256214622279889e-07, 2.909198390946872311e-07, 2.913135077371104067e-07, 2.917066268478491158e-07, 2.920991958862022586e-07, 2.924912143124885104e-07, 2.928826815880315508e-07, 2.932735971751573642e-07, 2.936639605371799990e-07, 2.940537711384720300e-07, 2.944430284443599500e-07, 2.948317319211921968e-07, 2.952198810363271894e-07, 2.956074752581105106e-07, 2.959945140559545814e-07, 2.963809969002240463e-07, 2.967669232623122187e-07, 2.971522926146268398e-07, 2.975371044305816080e-07, 2.979213581845887150e-07, 2.983050533521251789e-07, 2.986881894096468169e-07, 2.990707658345681291e-07, 2.994527821054283693e-07, 2.998342377017084800e-07, 3.002151321039080671e-07, 3.005954647936146970e-07, 3.009752352533057974e-07, 3.013544429666050431e-07, 3.017330874180829862e-07, 3.021111680933272003e-07, 3.024886844790022617e-07, 3.028656360627583751e-07, 3.032420223332100926e-07, 3.036178427801045019e-07, 3.039930968941375267e-07, 3.043677841670311121e-07, 3.047419040916007759e-07, 3.051154561615617964e-07, 3.054884398717826874e-07, 3.058608547180829689e-07, 3.062327001973290937e-07, 3.066039758073946367e-07, 3.069746810472549508e-07, 3.073448154167871087e-07, 3.077143784170242769e-07, 3.080833695499551282e-07, 3.084517883186030390e-07, 3.088196342270897228e-07, 3.091869067804633352e-07, 3.095536054848584576e-07, 3.099197298474769859e-07, 3.102852793765011506e-07, 3.106502535811469860e-07, 3.110146519717395043e-07, 3.113784740595107841e-07, 3.117417193568551920e-07, 3.121043873771315475e-07, 3.124664776347550790e-07, 3.128279896451778361e-07, 3.131889229248895368e-07, 3.135492769914034325e-07, 3.139090513633244414e-07, 3.142682455602436394e-07, 3.146268591028121646e-07, 3.149848915127207818e-07, 3.153423423127042772e-07, 3.156992110265214465e-07, 3.160554971790247112e-07, 3.164112002960630268e-07, 3.167663199045426047e-07, 3.171208555324160070e-07, 3.174748067086644111e-07, 3.178281729633655846e-07, 3.181809538275939882e-07, 3.185331488334858912e-07, 3.188847575142295250e-07, 3.192357794040584655e-07, 3.195862140382386101e-07, 3.199360609531361518e-07, 3.202853196861175767e-07, 3.206339897756158382e-07, 3.209820707611160108e-07, 3.213295621831522190e-07, 3.216764635833008085e-07, 3.220227745042333386e-07, 3.223684944896299731e-07, 3.227136230842386138e-07, 3.230581598338634654e-07, 3.234021042853460304e-07, 3.237454559866330835e-07, 3.240882144866810097e-07, 3.244303793355149376e-07, 3.247719500842207990e-07, 3.251129262849388168e-07, 3.254533074908554056e-07, 3.257930932562609286e-07, 3.261322831364593827e-07, 3.264708766878283791e-07, 3.268088734678090847e-07, 3.271462730348840405e-07, 3.274830749486490535e-07, 3.278192787697098586e-07, 3.281548840597547519e-07, 3.284898903815331499e-07, 3.288242972988573367e-07, 3.291581043765891759e-07, 3.294913111807044327e-07, 3.298239172782085994e-07, 3.301559222371263079e-07, 3.304873256266467544e-07, 3.308181270169580518e-07, 3.311483259793166860e-07, 3.314779220861142203e-07, 3.318069149106931711e-07, 3.321353040275804186e-07, 3.324630890123073713e-07, 3.327902694414740226e-07, 3.331168448927992434e-07, 3.334428149450406848e-07, 3.337681791779787371e-07, 3.340929371725631726e-07, 3.344170885107503034e-07, 3.347406327755692090e-07, 3.350635695511869044e-07, 3.353858984227305166e-07, 3.357076189765157718e-07, 3.360287307998647769e-07, 3.363492334811972878e-07, 3.366691266099868222e-07, 3.369884097768489630e-07, 3.373070825733637989e-07, 3.376251445923006001e-07, 3.379425954274413172e-07, 3.382594346736472330e-07, 3.385756619269173540e-07, 3.388912767842424037e-07, 3.392062788437329890e-07, 3.395206677046127180e-07, 3.398344429671396908e-07, 3.401476042326508098e-07, 3.404601511036268953e-07, 3.407720831835221676e-07, 3.410834000769827278e-07, 3.413941013896711699e-07, 3.417041867283373602e-07, 3.420136557008734421e-07, 3.423225079161632228e-07, 3.426307429842227277e-07, 3.429383605161797132e-07, 3.432453601242061682e-07, 3.435517414215716247e-07, 3.438575040226309288e-07, 3.441626475428268341e-07, 3.444671715986743324e-07, 3.447710758078190455e-07, 3.450743597889497164e-07, 3.453770231618591953e-07, 3.456790655474284525e-07, 3.459804865676136602e-07, 3.462812858455010920e-07, 3.465814630052262830e-07, 3.468810176720282408e-07, 3.471799494722356808e-07, 3.474782580332691968e-07, 3.477759429836280262e-07, 3.480730039529442069e-07, 3.483694405718993568e-07, 3.486652524722823242e-07, 3.489604392869742070e-07, 3.492550006499359107e-07, 3.495489361962665948e-07, 3.498422455621130392e-07, 3.501349283847355550e-07, 3.504269843024860666e-07, 3.507184129548126123e-07, 3.510092139822454205e-07, 3.512993870264524971e-07, 3.515889317301576740e-07, 3.518778477371922792e-07, 3.521661346924902125e-07, 3.524537922420793699e-07, 3.527408200330712673e-07, 3.530272177137210737e-07, 3.533129849333386730e-07, 3.535981213423459446e-07, 3.538826265922659108e-07, 3.541665003357087075e-07, 3.544497422264250007e-07, 3.547323519192384353e-07, 3.550143290700316592e-07, 3.552956733358721074e-07, 3.555763843748738832e-07, 3.558564618462536621e-07, 3.561359054103706609e-07, 3.564147147286472819e-07, 3.566928894636221577e-07, 3.569704292789353816e-07, 3.572473338393341718e-07, 3.575236028106532838e-07, 3.577992358598885437e-07, 3.580742326550446466e-07, 3.583485928653270099e-07, 3.586223161609924304e-07, 3.588954022134033479e-07, 3.591678506950677082e-07, 3.594396612795748534e-07, 3.597108336415793227e-07, 3.599813674569244659e-07, 3.602512624025059654e-07, 3.605205181563300167e-07, 3.607891343975630386e-07, 3.610571108063858780e-07, 3.613244470641810036e-07, 3.615911428533890931e-07, 3.618571978575577904e-07, 3.621226117613840573e-07, 3.623873842506542985e-07, 3.626515150122170983e-07, 3.629150037341164163e-07, 3.631778501054528853e-07, 3.634400538164382340e-07, 3.637016145584485435e-07, 3.639625320238925341e-07, 3.642228059063323731e-07, 3.644824359004670519e-07, 3.647414217020694410e-07, 3.649997630080253062e-07, 3.652574595163868306e-07, 3.655145109262269779e-07, 3.657709169378257337e-07, 3.660266772525230925e-07, 3.662817915727766558e-07, 3.665362596022077425e-07, 3.667900810454767161e-07, 3.670432556083964873e-07, 3.672957829979224027e-07, 3.675476629220880816e-07, 3.677988950900530619e-07, 3.680494792120972944e-07, 3.682994149996022961e-07, 3.685487021651041960e-07, 3.687973404222192487e-07, 3.690453294856937568e-07, 3.692926690713920004e-07, 3.695393588962957609e-07, 3.697853986784911387e-07, 3.700307881372245637e-07, 3.702755269928187798e-07, 3.705196149667322432e-07, 3.707630517815395350e-07, 3.710058371609358080e-07, 3.712479708297234986e-07, 3.714894525138606080e-07, 3.717302819403930454e-07, 3.719704588374949678e-07, 3.722099829344635921e-07, 3.724488539617022542e-07, 3.726870716507752547e-07, 3.729246357343286610e-07, 3.731615459461433531e-07, 3.733978020211254410e-07, 3.736334036952992775e-07, 3.738683507057997279e-07, 3.741026427909207169e-07, 3.743362796900442353e-07, 3.745692611436860281e-07, 3.748015868934850584e-07, 3.750332566822017083e-07, 3.752642702537134905e-07, 3.754946273530522646e-07, 3.757243277263408687e-07, 3.759533711208374298e-07, 3.761817572849237170e-07, 3.764094859680953479e-07, 3.766365569210076866e-07, 3.768629698954189346e-07, 3.770887246441763656e-07, 3.773138209213220995e-07, 3.775382584819781169e-07, 3.777620370823921587e-07, 3.779851564799722416e-07, 3.782076164332178903e-07, 3.784294167017683654e-07, 3.786505570463868343e-07, 3.788710372289659297e-07, 3.790908570125114975e-07, 3.793100161612020479e-07, 3.795285144402650883e-07, 3.797463516161354126e-07, 3.799635274563274645e-07, 3.801800417294876938e-07, 3.803958942054213977e-07, 3.806110846550390923e-07, 3.808256128503468250e-07, 3.810394785645474479e-07, 3.812526815719267445e-07, 3.814652216478971582e-07, 3.816770985690483494e-07, 3.818883121130208816e-07, 3.820988620586598521e-07, 3.823087481858959368e-07, 3.825179702757904947e-07, 3.827265281105677551e-07, 3.829344214735586490e-07, 3.831416501491903795e-07, 3.833482139230900251e-07, 3.835541125819680193e-07, 3.837593459136658491e-07, 3.839639137071975602e-07, 3.841678157526453064e-07, 3.843710518412542181e-07, 3.845736217654187963e-07, 3.847755253186379142e-07, 3.849767622955476396e-07, 3.851773324919168411e-07, 3.853772357046365999e-07, 3.855764717317591208e-07, 3.857750403724371159e-07, 3.859729414269556746e-07, 3.861701746967760974e-07, 3.863667399844245112e-07, 3.865626370935928248e-07, 3.867578658291267118e-07, 3.869524259969718239e-07, 3.871463174042172545e-07, 3.873395398590836799e-07, 3.875320931709143598e-07, 3.877239771502200301e-07, 3.879151916086079637e-07, 3.881057363588308867e-07, 3.882956112147761789e-07, 3.884848159914629618e-07, 3.886733505050320936e-07, 3.888612145727888376e-07, 3.890484080131453707e-07, 3.892349306456540290e-07, 3.894207822909994728e-07, 3.896059627710027629e-07, 3.897904719086086555e-07, 3.899743095279230826e-07, 3.901574754541597898e-07, 3.903399695136726819e-07, 3.905217915339533348e-07, 3.907029413436150077e-07, 3.908834187724360538e-07, 3.910632236512997805e-07, 3.912423558122318783e-07, 3.914208150883940146e-07, 3.915986013140809220e-07, 3.917757143247168518e-07, 3.919521539568833670e-07, 3.921279200482707964e-07, 3.923030124377140226e-07, 3.924774309651820518e-07, 3.926511754717788620e-07, 3.928242457997329198e-07, 3.929966417924390036e-07, 3.931683632943944639e-07, 3.933394101512443808e-07, 3.935097822097671646e-07, 3.936794793178663500e-07, 3.938485013246111478e-07, 3.940168480801840347e-07, 3.941845194358763597e-07, 3.943515152441723057e-07, 3.945178353586520634e-07, 3.946834796340314299e-07, 3.948484479261876434e-07, 3.950127400921087198e-07, 3.951763559899246345e-07, 3.953392954789018689e-07, 3.955015584194354704e-07, 3.956631446730786448e-07, 3.958240541025037404e-07, 3.959842865714933008e-07, 3.961438419450167218e-07, 3.963027200891447006e-07, 3.964609208710827471e-07, 3.966184441591963295e-07, 3.967752898229738702e-07, 3.969314577330088520e-07, 3.970869477610842035e-07, 3.972417597800815081e-07, 3.973958936640217673e-07, 3.975493492880912353e-07, 3.977021265285529568e-07, 3.978542252628698518e-07, 3.980056453696009008e-07, 3.981563867284404260e-07, 3.983064492202477908e-07, 3.984558327269970006e-07, 3.986045371317724684e-07, 3.987525623188457237e-07, 3.988999081735917153e-07, 3.990465745825162869e-07, 3.991925614332986344e-07, 3.993378686146903505e-07, 3.994824960166398855e-07, 3.996264435301959854e-07, 3.997697110475518436e-07, 3.999122984620329248e-07, 4.000542056681065472e-07, 4.001954325613598063e-07, 4.003359790385413446e-07, 4.004758449975119589e-07, 4.006150303372658290e-07, 4.007535349579651930e-07, 4.008913587608568620e-07, 4.010285016483503054e-07, 4.011649635240034108e-07, 4.013007442924825669e-07, 4.014358438596000394e-07, 4.015702621323024297e-07, 4.017039990186605111e-07, 4.018370544279058092e-07, 4.019694282703778221e-07, 4.021011204575547775e-07, 4.022321309020747032e-07, 4.023624595176678757e-07, 4.024921062192190776e-07, 4.026210709227638917e-07, 4.027493535454479372e-07, 4.028769540055575753e-07, 4.030038722225176321e-07, 4.031301081168795406e-07, 4.032556616103271639e-07, 4.033805326256960653e-07, 4.035047210869338562e-07, 4.036282269191310075e-07, 4.037510500485070319e-07, 4.038731904024147724e-07, 4.039946479093549072e-07, 4.041154224989397926e-07, 4.042355141019277144e-07, 4.043549226502026123e-07, 4.044736480767856737e-07, 4.045916903158228398e-07, 4.047090493026105343e-07, 4.048257249735634232e-07, 4.049417172662282850e-07, 4.050570261192884047e-07, 4.051716514725502858e-07, 4.052855932669731908e-07, 4.053988514446286423e-07, 4.055114259487239812e-07, 4.056233167236025783e-07, 4.057345237147370053e-07, 4.058450468687228408e-07, 4.059548861333094280e-07, 4.060640414573621819e-07, 4.061725127908594660e-07, 4.062803000849479669e-07, 4.063874032918786373e-07, 4.064938223650381425e-07, 4.065995572589554245e-07, 4.067046079292758677e-07, 4.068089743327794572e-07, 4.069126564273749023e-07, 4.070156541720975722e-07, 4.071179675271272303e-07, 4.072195964537673353e-07, 4.073205409144254004e-07, 4.074208008726792205e-07, 4.075203762932085806e-07, 4.076192671418250074e-07, 4.077174733854846869e-07, 4.078149949922543711e-07, 4.079118319313395948e-07, 4.080079841730682645e-07, 4.081034516888999227e-07, 4.081982344514150012e-07, 4.082923324343462671e-07, 4.083857456125131779e-07, 4.084784739619021377e-07, 4.085705174596034466e-07, 4.086618760838388814e-07, 4.087525498139691610e-07, 4.088425386304729818e-07, 4.089318425149387591e-07, 4.090204614501137024e-07, 4.091083954198505579e-07, 4.091956444091258198e-07, 4.092822084040680002e-07, 4.093680873918898661e-07, 4.094532813609675315e-07, 4.095377903007834412e-07, 4.096216142019464879e-07, 4.097047530561955595e-07, 4.097872068563892151e-07, 4.098689755965083328e-07, 4.099500592716755381e-07, 4.100304578781171403e-07, 4.101101714131872733e-07, 4.101891998753828771e-07, 4.102675432642931936e-07, 4.103452015806474123e-07, 4.104221748263053528e-07, 4.104984630042398892e-07, 4.105740661185470608e-07, 4.106489841744455966e-07, 4.107232171782735794e-07, 4.107967651375036397e-07, 4.108696280607175448e-07, 4.109418059576158336e-07, 4.110132988390447630e-07, 4.110841067169378626e-07, 4.111542296043660684e-07, 4.112236675155306817e-07, 4.112924204657375880e-07, 4.113604884714193853e-07, 4.114278715501276550e-07, 4.114945697205333326e-07, 4.115605830024237430e-07, 4.116259114167196472e-07, 4.116905549854419429e-07, 4.117545137317432701e-07, 4.118177876798854579e-07, 4.118803768552522840e-07, 4.119422812843514856e-07, 4.120035009948037483e-07, 4.120640360153436591e-07, 4.121238863758285998e-07, 4.121830521072280009e-07, 4.122415332416281058e-07, 4.122993298122416055e-07, 4.123564418533869930e-07, 4.124128694004979328e-07, 4.124686124901326316e-07, 4.125236711599515507e-07, 4.125780454487483755e-07, 4.126317353964151286e-07, 4.126847410439668922e-07, 4.127370624335277266e-07, 4.127886996083405695e-07, 4.128396526127556955e-07, 4.128899214922510976e-07, 4.129395062934047470e-07, 4.129884070639019516e-07, 4.130366238525590732e-07, 4.130841567092920808e-07, 4.131310056851271392e-07, 4.131771708322177082e-07, 4.132226522038111904e-07, 4.132674498542738662e-07, 4.133115638390821585e-07, 4.133549942148181327e-07, 4.133977410391871791e-07, 4.134398043709945070e-07, 4.134811842701453041e-07, 4.135218807976782996e-07, 4.135618940157233075e-07, 4.136012239875195428e-07, 4.136398707774272688e-07, 4.136778344509009564e-07, 4.137151150745093486e-07, 4.137517127159245544e-07, 4.137876274439327960e-07, 4.138228593284174680e-07, 4.138574084403837541e-07, 4.138912748519204050e-07, 4.139244586362437310e-07, 4.139569598676632974e-07, 4.139887786215930943e-07, 4.140199149745658309e-07, 4.140503690042003242e-07, 4.140801407892274396e-07, 4.141092304094867027e-07, 4.141376379459163469e-07, 4.141653634805529424e-07, 4.141924070965500313e-07, 4.142187688781426579e-07, 4.142444489106904617e-07, 4.142694472806405663e-07, 4.142937640755421915e-07, 4.143173993840561286e-07, 4.143403532959291182e-07, 4.143626259020156614e-07, 4.143842172942733606e-07, 4.144051275657567261e-07, 4.144253568106148992e-07, 4.144449051241080111e-07, 4.144637726025784891e-07, 4.144819593434755151e-07, 4.144994654453521136e-07, 4.145162910078479994e-07, 4.145324361317047716e-07, 4.145479009187617837e-07, 4.145626854719507440e-07, 4.145767898953064628e-07, 4.145902142939519755e-07, 4.146029587741070667e-07, 4.146150234430933519e-07, 4.146264084093134723e-07, 4.146371137822750768e-07, 4.146471396725792277e-07, 4.146564861919147895e-07, 4.146651534530660520e-07, 4.146731415699105598e-07, 4.146804506574151419e-07, 4.146870808316438527e-07, 4.146930322097457957e-07, 4.146983049099661351e-07, 4.147028990516385782e-07, 4.147068147551847933e-07, 4.147100521421176388e-07, 4.147126113350430164e-07, 4.147144924576496532e-07, 4.147156956347183667e-07, 4.147162209921186234e-07, 4.147160686568054685e-07, 4.147152387568204258e-07, 4.147137314212967913e-07, 4.147115467804496284e-07, 4.147086849655810083e-07, 4.147051461090778923e-07, 4.147009303444149913e-07, 4.146960378061516945e-07, 4.146904686299302699e-07, 4.146842229524743820e-07, 4.146773009115961322e-07, 4.146697026461884895e-07, 4.146614282962241776e-07, 4.146524780027631403e-07, 4.146428519079457646e-07, 4.146325501549917695e-07, 4.146215728882027466e-07, 4.146099202529602545e-07, 4.145975923957263485e-07, 4.145845894640443211e-07, 4.145709116065317675e-07, 4.145565589728920731e-07, 4.145415317139009143e-07, 4.145258299814123990e-07, 4.145094539283614493e-07, 4.144924037087578191e-07, 4.144746794776837121e-07, 4.144562813913053219e-07, 4.144372096068565278e-07, 4.144174642826524461e-07, 4.143970455780793725e-07, 4.143759536535989108e-07, 4.143541886707444264e-07, 4.143317507921235868e-07, 4.143086401814176213e-07, 4.142848570033788849e-07, 4.142604014238341942e-07, 4.142352736096763036e-07, 4.142094737288740170e-07, 4.141830019504624471e-07, 4.141558584445491560e-07, 4.141280433823119320e-07, 4.140995569359920661e-07, 4.140703992789064754e-07, 4.140405705854356857e-07, 4.140100710310286488e-07, 4.139789007921993548e-07, 4.139470600465322315e-07, 4.139145489726738332e-07, 4.138813677503388754e-07, 4.138475165603039358e-07, 4.138129955844148118e-07, 4.137778050055775219e-07, 4.137419450077615869e-07, 4.137054157760015131e-07, 4.136682174963935094e-07, 4.136303503560943230e-07, 4.135918145433226688e-07, 4.135526102473603936e-07, 4.135127376585480298e-07, 4.134721969682860655e-07, 4.134309883690346801e-07, 4.133891120543120497e-07, 4.133465682186963069e-07, 4.133033570578218867e-07, 4.132594787683795275e-07, 4.132149335481226234e-07, 4.131697215958553657e-07, 4.131238431114378783e-07, 4.130772982957870114e-07, 4.130300873508743304e-07, 4.129822104797254271e-07, 4.129336678864179081e-07, 4.128844597760866891e-07, 4.128345863549156831e-07, 4.127840478301408181e-07, 4.127328444100517837e-07, 4.126809763039873203e-07, 4.126284437223360652e-07, 4.125752468765376120e-07, 4.125213859790829870e-07, 4.124668612435085080e-07, 4.124116728844010253e-07, 4.123558211173938986e-07, 4.122993061591667848e-07, 4.122421282274478621e-07, 4.121842875410111293e-07, 4.121257843196729652e-07, 4.120666187843017109e-07, 4.120067911568027930e-07, 4.119463016601275124e-07, 4.118851505182716144e-07, 4.118233379562736476e-07, 4.117608642002150703e-07, 4.116977294772111442e-07, 4.116339340154314223e-07, 4.115694780440761911e-07, 4.115043617933865285e-07, 4.114385854946466337e-07, 4.113721493801776859e-07, 4.113050536833355681e-07, 4.112372986385171666e-07, 4.111688844811557126e-07, 4.110998114477221056e-07, 4.110300797757214194e-07, 4.109596897036938551e-07, 4.108886414712141584e-07, 4.108169353188911437e-07, 4.107445714883673231e-07, 4.106715502223163124e-07, 4.105978717644515134e-07, 4.105235363595065792e-07, 4.104485442532515074e-07, 4.103728956924920054e-07, 4.102965909250541906e-07, 4.102196301997995720e-07, 4.101420137666163688e-07, 4.100637418764206745e-07, 4.099848147811574629e-07, 4.099052327337951884e-07, 4.098249959883332502e-07, 4.097441047997956929e-07, 4.096625594242254356e-07, 4.095803601186944369e-07, 4.094975071413029530e-07, 4.094140007511684740e-07, 4.093298412084306998e-07, 4.092450287742563051e-07, 4.091595637108227920e-07, 4.090734462813427904e-07, 4.089866767500417165e-07, 4.088992553821567146e-07, 4.088111824439585737e-07, 4.087224582027285934e-07, 4.086330829267596952e-07, 4.085430568853764865e-07, 4.084523803489052975e-07, 4.083610535886957268e-07, 4.082690768771139714e-07, 4.081764504875289566e-07, 4.080831746943408172e-07, 4.079892497729532106e-07, 4.078946759997762277e-07, 4.077994536522433345e-07, 4.077035830087945365e-07, 4.076070643488719323e-07, 4.075098979529468712e-07, 4.074120841024802490e-07, 4.073136230799523126e-07, 4.072145151688485781e-07, 4.071147606536616840e-07, 4.070143598198907024e-07, 4.069133129540443691e-07, 4.068116203436238775e-07, 4.067092822771521546e-07, 4.066062990441492440e-07, 4.065026709351277532e-07, 4.063983982416211229e-07, 4.062934812561568403e-07, 4.061879202722562796e-07, 4.060817155844522784e-07, 4.059748674882709261e-07, 4.058673762802426817e-07, 4.057592422578954382e-07, 4.056504657197472701e-07, 4.055410469653238509e-07, 4.054309862951416703e-07, 4.053202840107144939e-07, 4.052089404145499215e-07, 4.050969558101589692e-07, 4.049843305020286469e-07, 4.048710647956537750e-07, 4.047571589975174493e-07, 4.046426134150929475e-07, 4.045274283568467989e-07, 4.044116041322387850e-07, 4.042951410517040460e-07, 4.041780394266849496e-07, 4.040602995696025577e-07, 4.039419217938671603e-07, 4.038229064138789646e-07, 4.037032537450140655e-07, 4.035829641036460979e-07, 4.034620378071250083e-07, 4.033404751737923008e-07, 4.032182765229684911e-07, 4.030954421749588235e-07, 4.029719724510417302e-07, 4.028478676734882073e-07, 4.027231281655441856e-07, 4.025977542514363014e-07, 4.024717462563762374e-07, 4.023451045065395468e-07, 4.022178293290906938e-07, 4.020899210521699245e-07, 4.019613800048903023e-07, 4.018322065173441138e-07, 4.017024009205992157e-07, 4.015719635466850059e-07, 4.014408947286159286e-07, 4.013091948003895157e-07, 4.011768640969486938e-07, 4.010439029542234476e-07, 4.009103117091196495e-07, 4.007760906994896253e-07, 4.006412402641854116e-07, 4.005057607430022163e-07, 4.003696524767144699e-07, 4.002329158070645501e-07, 4.000955510767490173e-07, 3.999575586294365608e-07, 3.998189388097743519e-07, 3.996796919633468568e-07, 3.995398184367161234e-07, 3.993993185774149526e-07, 3.992581927339104754e-07, 3.991164412556654041e-07, 3.989740644930706935e-07, 3.988310627974946683e-07, 3.986874365212587770e-07, 3.985431860176463801e-07, 3.983983116408834796e-07, 3.982528137461772067e-07, 3.981066926896648933e-07, 3.979599488284517125e-07, 3.978125825205979729e-07, 3.976645941250995308e-07, 3.975159840019301423e-07, 3.973667525120068404e-07, 3.972169000171813061e-07, 3.970664268802718968e-07, 3.969153334650462819e-07, 3.967636201362009554e-07, 3.966112872594141228e-07, 3.964583352012773024e-07, 3.963047643293443481e-07, 3.961505750121207024e-07, 3.959957676190318441e-07, 3.958403425204765992e-07, 3.956843000877841002e-07, 3.955276406932137865e-07, 3.953703647099818215e-07, 3.952124725122389633e-07, 3.950539644750798294e-07, 3.948948409745337384e-07, 3.947351023875757209e-07, 3.945747490920985679e-07, 3.944137814669535410e-07, 3.942521998919171266e-07, 3.940900047477013589e-07, 3.939271964159629784e-07, 3.937637752792706099e-07, 3.935997417211430899e-07, 3.934350961260255387e-07, 3.932698388792947067e-07, 3.931039703672568574e-07, 3.929374909771524784e-07, 3.927704010971344707e-07, 3.926027011163019770e-07, 3.924343914246729061e-07, 3.922654724131922444e-07, 3.920959444737361319e-07, 3.919258079990874048e-07, 3.917550633829695821e-07, 3.915837110200228844e-07, 3.914117513058130214e-07, 3.912391846368222986e-07, 3.910660114104615282e-07, 3.908922320250420775e-07, 3.907178468798130320e-07, 3.905428563749350435e-07, 3.903672609114848300e-07, 3.901910608914558109e-07, 3.900142567177643538e-07, 3.898368487942220344e-07, 3.896588375255704174e-07, 3.894802233174608340e-07, 3.893010065764551229e-07, 3.891211877100316653e-07, 3.889407671265609270e-07, 3.887597452353448981e-07, 3.885781224465830002e-07, 3.883958991713859567e-07, 3.882130758217685395e-07, 3.880296528106607927e-07, 3.878456305518763746e-07, 3.876610094601537447e-07, 3.874757899511295879e-07, 3.872899724413422556e-07, 3.871035573482311838e-07, 3.869165450901444096e-07, 3.867289360863028910e-07, 3.865407307568728215e-07, 3.863519295228748394e-07, 3.861625328062488780e-07, 3.859725410298383905e-07, 3.857819546173574209e-07, 3.855907739934284031e-07, 3.853989995835921666e-07, 3.852066318142368914e-07, 3.850136711126745528e-07, 3.848201179071041815e-07, 3.846259726265943402e-07, 3.844312357011458044e-07, 3.842359075616025711e-07, 3.840399886397228503e-07, 3.838434793681465075e-07, 3.836463801804053868e-07, 3.834486915108900120e-07, 3.832504137949217432e-07, 3.830515474686598678e-07, 3.828520929691738100e-07, 3.826520507344116851e-07, 3.824514212031778524e-07, 3.822502048151967082e-07, 3.820484020110532869e-07, 3.818460132321923617e-07, 3.816430389209623307e-07, 3.814394795205862069e-07, 3.812353354751312830e-07, 3.810306072295945235e-07, 3.808252952297917091e-07, 3.806193999224439927e-07, 3.804129217551406832e-07, 3.802058611763187046e-07, 3.799982186353241120e-07, 3.797899945823530642e-07, 3.795811894684519818e-07, 3.793718037455612761e-07, 3.791618378664767557e-07, 3.789512922848625967e-07, 3.787401674552450959e-07, 3.785284638330267530e-07, 3.783161818744444479e-07, 3.781033220366236510e-07, 3.778898847775413654e-07, 3.776758705560365564e-07, 3.774612798318135392e-07, 3.772461130654108504e-07, 3.770303707182527056e-07, 3.768140532526072300e-07, 3.765971611315991636e-07, 3.763796948192092792e-07, 3.761616547802790409e-07, 3.759430414804783640e-07, 3.757238553863541605e-07, 3.755040969652947637e-07, 3.752837666855408869e-07, 3.750628650161899643e-07, 3.748413924271605224e-07, 3.746193493892466552e-07, 3.743967363740765197e-07, 3.741735538541275818e-07, 3.739498023027177763e-07, 3.737254821940223408e-07, 3.735005940030291355e-07, 3.732751382055950233e-07, 3.730491152784076474e-07, 3.728225256989960198e-07, 3.725953699457267620e-07, 3.723676484978135813e-07, 3.721393618352819605e-07, 3.719105104390187086e-07, 3.716810947907356981e-07, 3.714511153729810874e-07, 3.712205726691427092e-07, 3.709894671634156719e-07, 3.707577993408447634e-07, 3.705255696873265695e-07, 3.702927786895431398e-07, 3.700594268350311806e-07, 3.698255146121605077e-07, 3.695910425100964070e-07, 3.693560110188601438e-07, 3.691204206292877235e-07, 3.688842718330357145e-07, 3.686475651225877601e-07, 3.684103009912559017e-07, 3.681724799331365331e-07, 3.679341024432092390e-07, 3.676951690172088927e-07, 3.674556801517246002e-07, 3.672156363441634896e-07, 3.669750380927164061e-07, 3.667338858964156165e-07, 3.664921802551269738e-07, 3.662499216694786075e-07, 3.660071106409444099e-07, 3.657637476718118481e-07, 3.655198332651403539e-07, 3.652753679248614328e-07, 3.650303521556529317e-07, 3.647847864630349662e-07, 3.645386713533347155e-07, 3.642920073336543937e-07, 3.640447949119203253e-07, 3.637970345968914151e-07, 3.635487268980677217e-07, 3.632998723257952251e-07, 3.630504713912143160e-07, 3.628005246062286151e-07, 3.625500324835957108e-07, 3.622989955368436741e-07, 3.620474142802765110e-07, 3.617952892290208552e-07, 3.615426208989999752e-07, 3.612894098068909985e-07, 3.610356564702311618e-07, 3.607813614072778915e-07, 3.605265251371223592e-07, 3.602711481796425770e-07, 3.600152310554639049e-07, 3.597587742860596358e-07, 3.595017783936617923e-07, 3.592442439012642502e-07, 3.589861713326755724e-07, 3.587275612124786683e-07, 3.584684140660369356e-07, 3.582087304195058536e-07, 3.579485107997919550e-07, 3.576877557346077774e-07, 3.574264657524384053e-07, 3.571646413825422644e-07, 3.569022831549551447e-07, 3.566393916004978773e-07, 3.563759672507350406e-07, 3.561120106380338832e-07, 3.558475222955229770e-07, 3.555825027571048706e-07, 3.553169525574506889e-07, 3.550508722320073862e-07, 3.547842623169631764e-07, 3.545171233493022727e-07, 3.542494558667642297e-07, 3.539812604078518850e-07, 3.537125375118476107e-07, 3.534432877187595807e-07, 3.531735115693910149e-07, 3.529032096052950752e-07, 3.526323823687847119e-07, 3.523610304029330345e-07, 3.520891542515778643e-07, 3.518167544592831420e-07, 3.515438315714030895e-07, 3.512703861340322888e-07, 3.509964186940191281e-07, 3.507219297989650610e-07, 3.504469199972331824e-07, 3.501713898379063006e-07, 3.498953398708439529e-07, 3.496187706466508013e-07, 3.493416827166713906e-07, 3.490640766330111134e-07, 3.487859529484863402e-07, 3.485073122166794771e-07, 3.482281549919488124e-07, 3.479484818293298902e-07, 3.476682932846392718e-07, 3.473875899144394370e-07, 3.471063722759923029e-07, 3.468246409273355102e-07, 3.465423964272276833e-07, 3.462596393351659533e-07, 3.459763702113939525e-07, 3.456925896168514678e-07, 3.454082981132379693e-07, 3.451234962630141447e-07, 3.448381846293041204e-07, 3.445523637760074285e-07, 3.442660342677510434e-07, 3.439791966698556599e-07, 3.436918515483873084e-07, 3.434039994701780550e-07, 3.431156410027086341e-07, 3.428267767142322214e-07, 3.425374071737211232e-07, 3.422475329508237372e-07, 3.419571546159893838e-07, 3.416662727403040871e-07, 3.413748878956159364e-07, 3.410830006544942166e-07, 3.407906115901834566e-07, 3.404977212766679629e-07, 3.402043302886805541e-07, 3.399104392015958882e-07, 3.396160485915445473e-07, 3.393211590353681974e-07, 3.390257711105717315e-07, 3.387298853954487360e-07, 3.384335024689170607e-07, 3.381366229106471441e-07, 3.378392473010018212e-07, 3.375413762210478644e-07, 3.372430102525550304e-07, 3.369441499780036307e-07, 3.366447959805420211e-07, 3.363449488440509233e-07, 3.360446091531089611e-07, 3.357437774929442210e-07, 3.354424544495526777e-07, 3.351406406095888210e-07, 3.348383365603752909e-07, 3.345355428899669347e-07, 3.342322601870939492e-07, 3.339284890411784516e-07, 3.336242300423446435e-07, 3.333194837813668770e-07, 3.330142508497431883e-07, 3.327085318396445280e-07, 3.324023273439307494e-07, 3.320956379561397027e-07, 3.317884642705084637e-07, 3.314808068819167946e-07, 3.311726663859599357e-07, 3.308640433789032891e-07, 3.305549384576888245e-07, 3.302453522199347615e-07, 3.299352852639504988e-07, 3.296247381886802330e-07, 3.293137115937794039e-07, 3.290022060795637665e-07, 3.286902222470219374e-07, 3.283777606978241301e-07, 3.280648220342701682e-07, 3.277514068593706950e-07, 3.274375157767871396e-07, 3.271231493908473872e-07, 3.268083083065436087e-07, 3.264929931295455483e-07, 3.261772044661461548e-07, 3.258609429233393497e-07, 3.255442091087641230e-07, 3.252270036307219502e-07, 3.249093270981702811e-07, 3.245911801207355626e-07, 3.242725633086633168e-07, 3.239534772728917800e-07, 3.236339226249982748e-07, 3.233138999772129745e-07, 3.229934099424338848e-07, 3.226724531341661224e-07, 3.223510301665906305e-07, 3.220291416545752957e-07, 3.217067882135581110e-07, 3.213839704596721658e-07, 3.210606890096966236e-07, 3.207369444810152711e-07, 3.204127374916929618e-07, 3.200880686604219365e-07, 3.197629386065339985e-07, 3.194373479500132725e-07, 3.191112973114436351e-07, 3.187847873120691728e-07, 3.184578185738092684e-07, 3.181303917191413941e-07, 3.178025073712255716e-07, 3.174741661538553502e-07, 3.171453686914143437e-07, 3.168161156089424047e-07, 3.164864075321493357e-07, 3.161562450872893170e-07, 3.158256289013003488e-07, 3.154945596017418362e-07, 3.151630378167450903e-07, 3.148310641751583294e-07, 3.144986393063553032e-07, 3.141657638403861700e-07, 3.138324384079203750e-07, 3.134986636402024987e-07, 3.131644401691256845e-07, 3.128297686272342319e-07, 3.124946496476100420e-07, 3.121590838640004659e-07, 3.118230719107657363e-07, 3.114866144228224803e-07, 3.111497120357933271e-07, 3.108123653858157432e-07, 3.104745751096858691e-07, 3.101363418447967387e-07, 3.097976662291433616e-07, 3.094585489013268526e-07, 3.091189905005658664e-07, 3.087789916666359817e-07, 3.084385530399604400e-07, 3.080976752615574704e-07, 3.077563589729904735e-07, 3.074146048165027528e-07, 3.070724134348917301e-07, 3.067297854715218098e-07, 3.063867215703941006e-07, 3.060432223760865403e-07, 3.056992885337705726e-07, 3.053549206892200928e-07, 3.050101194887573445e-07, 3.046648855793322757e-07, 3.043192196084847396e-07, 3.039731222242811796e-07, 3.036265940754567713e-07, 3.032796358112908032e-07, 3.029322480816136117e-07, 3.025844315368788964e-07, 3.022361868281055398e-07, 3.018875146068934359e-07, 3.015384155254163436e-07, 3.011888902364400449e-07, 3.008389393932617291e-07, 3.004885636497977136e-07, 3.001377636605188048e-07, 2.997865400804696208e-07, 2.994348935652792328e-07, 2.990828247711002839e-07, 2.987303343546995692e-07, 2.983774229733930257e-07, 2.980240912850653732e-07, 2.976703399481628083e-07, 2.973161696217110043e-07, 2.969615809652522183e-07, 2.966065746389332246e-07, 2.962511513034474511e-07, 2.958953116200434502e-07, 2.955390562505462858e-07, 2.951823858572888183e-07, 2.948253011032045602e-07, 2.944678026517630901e-07, 2.941098911669913870e-07, 2.937515673134632958e-07, 2.933928317563185322e-07, 2.930336851612007436e-07, 2.926741281943338478e-07, 2.923141615225283332e-07, 2.919537858130522445e-07, 2.915930017337781434e-07, 2.912318099531195809e-07, 2.908702111399893281e-07, 2.905082059638812736e-07, 2.901457950948188604e-07, 2.897829792033588445e-07, 2.894197589606119947e-07, 2.890561350381785586e-07, 2.886921081082241257e-07, 2.883276788434913265e-07, 2.879628479171659485e-07, 2.875976160030219378e-07, 2.872319837753676124e-07, 2.868659519089889640e-07, 2.864995210792477547e-07, 2.861326919620147079e-07, 2.857654652336866601e-07, 2.853978415711830141e-07, 2.850298216519592390e-07, 2.846614061539343953e-07, 2.842925957556517539e-07, 2.839233911360659263e-07, 2.835537929747117414e-07, 2.831838019516382829e-07, 2.828134187473650026e-07, 2.824426440429546710e-07, 2.820714785200304767e-07, 2.816999228606326133e-07, 2.813279777473740274e-07, 2.809556438633759914e-07, 2.805829218922066402e-07, 2.802098125180472551e-07, 2.798363164254773285e-07, 2.794624342996407414e-07, 2.790881668261867888e-07, 2.787135146912013586e-07, 2.783384785813657493e-07, 2.779630591838123050e-07, 2.775872571861417787e-07, 2.772110732764966539e-07, 2.768345081435148228e-07, 2.764575624762687582e-07, 2.760802369644143267e-07, 2.757025322980530405e-07, 2.753244491677467739e-07, 2.749459882645923026e-07, 2.745671502801600526e-07, 2.741879359065059584e-07, 2.738083458361877160e-07, 2.734283807622021017e-07, 2.730480413780726406e-07, 2.726673283778085254e-07, 2.722862424558330419e-07, 2.719047843071460937e-07, 2.715229546271778769e-07, 2.711407541118019567e-07, 2.707581834574194409e-07, 2.703752433608859232e-07, 2.699919345195325538e-07, 2.696082576311773147e-07, 2.692242133940620751e-07, 2.688398025069451826e-07, 2.684550256690369826e-07, 2.680698835800170769e-07, 2.676843769400296118e-07, 2.672985064496988426e-07, 2.669122728100649706e-07, 2.665256767226780052e-07, 2.661387188895336008e-07, 2.657514000130859215e-07, 2.653637207962479584e-07, 2.649756819424078354e-07, 2.645872841553581344e-07, 2.641985281393964808e-07, 2.638094145992565630e-07, 2.634199442401262910e-07, 2.630301177676582254e-07, 2.626399358879072141e-07, 2.622493993074265313e-07, 2.618585087331981028e-07, 2.614672648726508758e-07, 2.610756684336588078e-07, 2.606837201245553713e-07, 2.602914206540667446e-07, 2.598987707314099088e-07, 2.595057710662239319e-07, 2.591124223685892390e-07, 2.587187253490209422e-07, 2.583246807184859923e-07, 2.579302891883397580e-07, 2.575355514704167109e-07, 2.571404682769704981e-07, 2.567450403206826769e-07, 2.563492683146847911e-07, 2.559531529724831965e-07, 2.555566950080474702e-07, 2.551598951358214744e-07, 2.547627540705742796e-07, 2.543652725275657054e-07, 2.539674512224755943e-07, 2.535692908713591831e-07, 2.531707921907365707e-07, 2.527719558975323674e-07, 2.523727827090869178e-07, 2.519732733431575184e-07, 2.515734285179327113e-07, 2.511732489519469460e-07, 2.507727353642639612e-07, 2.503718884742416282e-07, 2.499707090017152272e-07, 2.495691976669259258e-07, 2.491673551904577812e-07, 2.487651822933987824e-07, 2.483626796971937309e-07, 2.479598481236528171e-07, 2.475566882950453232e-07, 2.471532009340354605e-07, 2.467493867636223361e-07, 2.463452465073206352e-07, 2.459407808889238231e-07, 2.455359906326882152e-07, 2.451308764632666446e-07, 2.447254391056335520e-07, 2.443196792852615394e-07, 2.439135977279605398e-07, 2.435071951598952868e-07, 2.431004723076710775e-07, 2.426934298982796144e-07, 2.422860686590295493e-07, 2.418783893177154662e-07, 2.414703926024676919e-07, 2.410620792417594956e-07, 2.406534499644981978e-07, 2.402445054999524846e-07, 2.398352465777700892e-07, 2.394256739279913449e-07, 2.390157882809805746e-07, 2.386055903675297474e-07, 2.381950809188013297e-07, 2.377842606662617139e-07, 2.373731303418509162e-07, 2.369616906778259549e-07, 2.365499424067776586e-07, 2.361378862617141258e-07, 2.357255229759919557e-07, 2.353128532833334542e-07, 2.348998779178387040e-07, 2.344865976139175104e-07, 2.340730131063926869e-07, 2.336591251304279777e-07, 2.332449344215449455e-07, 2.328304417156206420e-07, 2.324156477489071960e-07, 2.320005532579549973e-07, 2.315851589797211709e-07, 2.311694656514955928e-07, 2.307534740109183876e-07, 2.303371847959799279e-07, 2.299205987450319780e-07, 2.295037165967225786e-07, 2.290865390900972143e-07, 2.286690669645264712e-07, 2.282513009597228192e-07, 2.278332418157579234e-07, 2.274148902729908043e-07, 2.269962470721702239e-07, 2.265773129543653341e-07, 2.261580886609822208e-07, 2.257385749337603832e-07, 2.253187725147899921e-07, 2.248986821464407657e-07, 2.244783045714654663e-07, 2.240576405329298615e-07, 2.236366907742259058e-07, 2.232154560390756850e-07, 2.227939370715416860e-07, 2.223721346159582935e-07, 2.219500494170356306e-07, 2.215276822197897583e-07, 2.211050337695546393e-07, 2.206821048120031292e-07, 2.202588960930709550e-07, 2.198354083590480090e-07, 2.194116423565915580e-07, 2.189875988325654387e-07, 2.185632785342194702e-07, 2.181386822091128767e-07, 2.177138106050625132e-07, 2.172886644702469436e-07, 2.168632445531364294e-07, 2.164375516025055019e-07, 2.160115863674520471e-07, 2.155853495973242759e-07, 2.151588420418078890e-07, 2.147320644509450554e-07, 2.143050175749673884e-07, 2.138777021644809957e-07, 2.134501189703855614e-07, 2.130222687438059744e-07, 2.125941522362711319e-07, 2.121657701995469680e-07, 2.117371233856568619e-07, 2.113082125469696497e-07, 2.108790384361411001e-07, 2.104496018060468398e-07, 2.100199034099729887e-07, 2.095899440013657031e-07, 2.091597243340273166e-07, 2.087292451620445806e-07, 2.082985072397112932e-07, 2.078675113217121315e-07, 2.074362581629576925e-07, 2.070047485185970656e-07, 2.065729831441127273e-07, 2.061409627952620426e-07, 2.057086882280022764e-07, 2.052761601986931930e-07, 2.048433794638359847e-07, 2.044103467802758452e-07, 2.039770629051100663e-07, 2.035435285957016433e-07, 2.031097446096796989e-07, 2.026757117049576940e-07, 2.022414306396572215e-07, 2.018069021722171146e-07, 2.013721270613369336e-07, 2.009371060659040953e-07, 2.005018399451730194e-07, 2.000663294586014934e-07, 1.996305753658641715e-07, 1.991945784269475484e-07, 1.987583394020730910e-07, 1.983218590517118763e-07, 1.978851381366080964e-07, 1.974481774176957318e-07, 1.970109776562144889e-07, 1.965735396136325347e-07, 1.961358640516625113e-07, 1.956979517322615619e-07, 1.952598034176488278e-07, 1.948214198702273357e-07, 1.943828018527005443e-07, 1.939439501279872177e-07, 1.935048654592471006e-07, 1.930655486098751748e-07, 1.926260003435202937e-07, 1.921862214240085788e-07, 1.917462126154545398e-07, 1.913059746821875683e-07, 1.908655083887650133e-07, 1.904248144999904989e-07, 1.899838937808407880e-07, 1.895427469965742024e-07, 1.891013749126542577e-07, 1.886597782947685628e-07, 1.882179579088265166e-07, 1.877759145209782079e-07, 1.873336488975354029e-07, 1.868911618050848887e-07, 1.864484540104113142e-07, 1.860055262805159304e-07, 1.855623793826127787e-07, 1.851190140841480673e-07, 1.846754311527252874e-07, 1.842316313562115431e-07, 1.837876154626665324e-07, 1.833433842403568676e-07, 1.828989384577743661e-07, 1.824542788835593403e-07, 1.820094062865938516e-07, 1.815643214360203444e-07, 1.811190251010677398e-07, 1.806735180512406417e-07, 1.802278010562429450e-07, 1.797818748859181463e-07, 1.793357403103640902e-07, 1.788893980998525542e-07, 1.784428490248499217e-07, 1.779960938560350490e-07, 1.775491333642176855e-07, 1.771019683204372057e-07, 1.766545994959775123e-07, 1.762070276621951144e-07, 1.757592535907090748e-07, 1.753112780533222096e-07, 1.748631018219438227e-07, 1.744147256688002733e-07, 1.739661503661619924e-07, 1.735173766865561947e-07, 1.730684054026695486e-07, 1.726192372873835931e-07, 1.721698731136780171e-07, 1.717203136548410679e-07, 1.712705596842002737e-07, 1.708206119753292259e-07, 1.703704713019737548e-07, 1.699201384379692643e-07, 1.694696141574355233e-07, 1.690188992345996884e-07, 1.685679944438156008e-07, 1.681169005596591036e-07, 1.676656183568671614e-07, 1.672141486102605952e-07, 1.667624920949549139e-07, 1.663106495860887612e-07, 1.658586218590354882e-07, 1.654064096893036006e-07, 1.649540138525578025e-07, 1.645014351246139931e-07, 1.640486742814601784e-07, 1.635957320991767702e-07, 1.631426093540501947e-07, 1.626893068225158765e-07, 1.622358252810780879e-07, 1.617821655065020140e-07, 1.613283282756402432e-07, 1.608743143654468488e-07, 1.604201245530770745e-07, 1.599657596158054899e-07, 1.595112203310470072e-07, 1.590565074763722075e-07, 1.586016218294284077e-07, 1.581465641680587217e-07, 1.576913352702188659e-07, 1.572359359139962702e-07, 1.567803668776097340e-07, 1.563246289394270289e-07, 1.558687228778857535e-07, 1.554126494716093771e-07, 1.549564094993256604e-07, 1.545000037398901332e-07, 1.540434329722784189e-07, 1.535866979756084162e-07, 1.531297995290599362e-07, 1.526727384119906143e-07, 1.522155154038559444e-07, 1.517581312842273584e-07, 1.513005868328140630e-07, 1.508428828293769871e-07, 1.503850200538499337e-07, 1.499269992862581324e-07, 1.494688213067372711e-07, 1.490104868955317493e-07, 1.485519968330118564e-07, 1.480933518995965867e-07, 1.476345528758681467e-07, 1.471756005424924936e-07, 1.467164956802373077e-07, 1.462572390699917659e-07, 1.457978314926849082e-07, 1.453382737294033760e-07, 1.448785665613105201e-07, 1.444187107696670204e-07, 1.439587071358263866e-07, 1.434985564412559748e-07, 1.430382594674542166e-07, 1.425778169960506220e-07, 1.421172298088236730e-07, 1.416564986875196907e-07, 1.411956244140522322e-07, 1.407346077704188169e-07, 1.402734495386223375e-07, 1.398121505008874770e-07, 1.393507114393801819e-07, 1.388891331364270968e-07, 1.384274163744333227e-07, 1.379655619358209807e-07, 1.375035706031295588e-07, 1.370414431590325088e-07, 1.365791803861568805e-07, 1.361167830672822167e-07, 1.356542519852586282e-07, 1.351915879229266969e-07, 1.347287916633343952e-07, 1.342658639894579626e-07, 1.338028056844179254e-07, 1.333396175313807082e-07, 1.328763003135950571e-07, 1.324128548142914535e-07, 1.319492818169017613e-07, 1.314855821047759732e-07, 1.310217564614035776e-07, 1.305578056703296496e-07, 1.300937305150745149e-07, 1.296295317793334380e-07, 1.291652102467936103e-07, 1.287007667011542136e-07, 1.282362019262246239e-07, 1.277715167058623918e-07, 1.273067118238935426e-07, 1.268417880643309517e-07, 1.263767462110904563e-07, 1.259115870482132280e-07, 1.254463113597826577e-07, 1.249809199298422464e-07, 1.245154135425961402e-07, 1.240497929822277326e-07, 1.235840590329160236e-07, 1.231182124789371304e-07, 1.226522541046012636e-07, 1.221861846941716762e-07, 1.217200050320645900e-07, 1.212537159026662368e-07, 1.207873180903519163e-07, 1.203208123795867928e-07, 1.198541995548411927e-07, 1.193874804006113558e-07, 1.189206557014386137e-07, 1.184537262418261149e-07, 1.179866928063593424e-07, 1.175195561796239114e-07, 1.170523171462252895e-07, 1.165849764907857131e-07, 1.161175349979650714e-07, 1.156499934523765084e-07, 1.151823526387092686e-07, 1.147146133416443510e-07, 1.142467763458730913e-07, 1.137788424361194622e-07, 1.133108123970534249e-07, 1.128426870134137622e-07, 1.123744670699253335e-07, 1.119061533513180277e-07, 1.114377466423248967e-07, 1.109692477277017035e-07, 1.105006573921440982e-07, 1.100319764204094719e-07, 1.095632055972322660e-07, 1.090943457073443547e-07, 1.086253975354734032e-07, 1.081563618663621780e-07, 1.076872394846854444e-07, 1.072180311751707224e-07, 1.067487377225174868e-07, 1.062793599114127454e-07, 1.058098985265528897e-07, 1.053403543525593616e-07, 1.048707281741013151e-07, 1.044010207758109654e-07, 1.039312329423041961e-07, 1.034613654581775280e-07, 1.029914191080299172e-07, 1.025213946763767941e-07, 1.020512929477731222e-07, 1.015811147067298985e-07, 1.011108607377338734e-07, 1.006405318252451294e-07, 1.001701287537172109e-07, 9.969965230749364034e-08, 9.922910327103080768e-08, 9.875848242861053450e-08, 9.828779056456461734e-08, 9.781702846319077293e-08, 9.734619690869039445e-08, 9.687529668526912349e-08, 9.640432857715810526e-08, 9.593329336842487527e-08, 9.546219184317940009e-08, 9.499102478549055195e-08, 9.451979297930188192e-08, 9.404849720865751299e-08, 9.357713825741184600e-08, 9.310571690945485718e-08, 9.263423394860928952e-08, 9.216269015866830602e-08, 9.169108632329209877e-08, 9.121942322623464226e-08, 9.074770165105179793e-08, 9.027592238132771018e-08, 8.980408620059134713e-08, 8.933219389223269736e-08, 8.886024623970711655e-08, 8.838824402634876848e-08, 8.791618803538998773e-08, 8.744407905006313531e-08, 8.697191785353760065e-08, 8.649970522883565411e-08, 8.602744195905823428e-08, 8.555512882709565969e-08, 8.508276661585160286e-08, 8.461035610816072963e-08, 8.413789808670410168e-08, 8.366539333421487323e-08, 8.319284263329108350e-08, 8.272024676641398706e-08, 8.224760651605219913e-08, 8.177492266457554975e-08, 8.130219599427621983e-08, 8.082942728736594864e-08, 8.035661732599703755e-08, 7.988376689217665413e-08, 7.941087676789106805e-08, 7.893794773502126546e-08, 7.846498057536204688e-08, 7.799197607064150899e-08, 7.751893500243671192e-08, 7.704585815229799455e-08, 7.657274630166280214e-08, 7.609960023187731216e-08, 7.562642072419287411e-08, 7.515320855978791321e-08, 7.467996451968189046e-08, 7.420668938485870467e-08, 7.373338393618351126e-08, 7.326004895442101280e-08, 7.278668522025592021e-08, 7.231329351420732299e-08, 7.183987461675432804e-08, 7.136642930824901379e-08, 7.089295836893734131e-08, 7.041946257895847936e-08, 6.994594271836273765e-08, 6.947239956702866348e-08, 6.899883390478518654e-08, 6.852524651132858326e-08, 6.805163816624104526e-08, 6.757800964898955450e-08, 6.710436173894576200e-08, 6.663069521530084783e-08, 6.615701085719011434e-08, 6.568330944360756822e-08, 6.520959175342578603e-08, 6.473585856541615038e-08, 6.426211065816306134e-08, 6.378834881016728770e-08, 6.331457379986642816e-08, 6.284078640544469943e-08, 6.236698740504117400e-08, 6.189317757666442836e-08, 6.141935769812954493e-08, 6.094552854718128912e-08, 6.047169090140916788e-08, 5.999784553826832754e-08, 5.952399323507681422e-08, 5.905013476903647833e-08, 5.857627091712585133e-08, 5.810240245633025423e-08, 5.762853016334738738e-08, 5.715465481481517575e-08, 5.668077718722827004e-08, 5.620689805687302360e-08, 5.573301819993126065e-08, 5.525913839250003591e-08, 5.478525941040160813e-08, 5.431138202939245198e-08, 5.383750702507699316e-08, 5.336363517282352703e-08, 5.288976724799285803e-08, 5.241590402564417409e-08, 5.194204628076415577e-08, 5.146819478818141935e-08, 5.099435032250327391e-08, 5.052051365821896007e-08, 5.004668556971872147e-08, 4.957286683110460541e-08, 4.909905821639894546e-08, 4.862526049945851994e-08, 4.815147445389042435e-08, 4.767770085325928346e-08, 4.720394047089900478e-08, 4.673019407993072516e-08, 4.625646245336753839e-08, 4.578274636404981635e-08, 4.530904658456055201e-08, 4.483536388745422377e-08, 4.436169904496241843e-08, 4.388805282922348961e-08, 4.341442601219659713e-08, 4.294081936557732798e-08, 4.246723366100588114e-08, 4.199366966987703442e-08, 4.152012816336022177e-08, 4.104660991250271248e-08, 4.057311568814459689e-08, 4.009964626093924090e-08, 3.962620240137178832e-08, 3.915278487967494070e-08, 3.867939446595328584e-08, 3.820603193009807836e-08, 3.773269804180729715e-08, 3.725939357058381899e-08, 3.678611928575621716e-08, 3.631287595639254936e-08, 3.583966435142536788e-08, 3.536648523956681114e-08, 3.489333938932809211e-08, 3.442022756901841960e-08, 3.394715054676465213e-08, 3.347410909042624389e-08, 3.300110396771995710e-08, 3.252813594613440434e-08, 3.205520579295005967e-08, 3.158231427525925662e-08, 3.110946215988047232e-08, 3.063665021348341719e-08, 3.016387920250355727e-08, 2.969114989316263502e-08, 2.921846305146629362e-08, 2.874581944322476309e-08, 2.827321983396740262e-08, 2.780066498906720448e-08, 2.732815567365602126e-08, 2.685569265264387888e-08, 2.638327669071843723e-08, 2.591090855236393265e-08, 2.543858900177666322e-08, 2.496631880298931069e-08, 2.449409871978608170e-08, 2.402192951572214977e-08, 2.354981195414377242e-08, 2.307774679810284996e-08, 2.260573481046102786e-08, 2.213377675390887078e-08, 2.166187339077633235e-08, 2.119002548324127084e-08, 2.071823379324392861e-08, 2.024649908242344436e-08, 1.977482211224188058e-08, 1.930320364389963275e-08, 1.883164443835478868e-08, 1.836014525634308012e-08, 1.788870685829289487e-08, 1.741733000442868764e-08, 1.694601545479089855e-08, 1.647476396904606884e-08, 1.600357630669515472e-08, 1.553245322698868514e-08, 1.506139548886246007e-08, 1.459040385104136164e-08, 1.411947907205875816e-08, 1.364862191006717243e-08, 1.317783312304633251e-08, 1.270711346871808959e-08, 1.223646370446181728e-08, 1.176588458754318826e-08, 1.129537687481998416e-08, 1.082494132297125275e-08, 1.035457868841231676e-08, 9.884289727230784838e-09, 9.414075195290000446e-09, 8.943935848248938830e-09, 8.473872441372375698e-09, 8.003885729739196115e-09, 7.533976468157419890e-09, 7.064145411079293969e-09, 6.594393312830343712e-09, 6.124720927315164597e-09, 5.655129008246455298e-09, 5.185618309039227078e-09, 4.716189582830475795e-09, 4.246843582478032950e-09, 3.777581060580304696e-09, 3.308402769391442815e-09, 2.839309460945599648e-09, 2.370301886993039155e-09, 1.901380798915332694e-09, 1.432546947933224761e-09, 9.638010849173085074e-10, 4.951439604077454162e-10, 2.657632471763301061e-11, -4.419010721518119332e-10, -9.102874804915192089e-10, -1.378582150864837878e-09, -1.846784334192319222e-09, -2.314893281627478876e-09, -2.782908244641587808e-09, -3.250828475003930723e-09, -3.718653224782973419e-09, -4.186381746326706289e-09, -4.654013292347214441e-09, -5.121547115796750738e-09, -5.588982469952257937e-09, -6.056318608395720674e-09, -6.523554785015358255e-09, -6.990690253985893917e-09, -7.457724269853175405e-09, -7.924656087410201278e-09, -8.391484961781702607e-09, -8.858210148404430435e-09, -9.324830903007535881e-09, -9.791346481697013696e-09, -1.025775614083192958e-08, -1.072405913710880252e-08, -1.119025472754205026e-08, -1.165634216946510928e-08, -1.212232072051074130e-08, -1.258818963869558600e-08, -1.305394818229620307e-08, -1.351959560993364317e-08, -1.398513118055378083e-08, -1.445055415342848081e-08, -1.491586378813570442e-08, -1.538105934464449070e-08, -1.584614008319059318e-08, -1.631110526436117321e-08, -1.677595414907517096e-08, -1.724068599856356562e-08, -1.770530007445375772e-08, -1.816979563866679028e-08, -1.863417195339750641e-08, -1.909842828130318953e-08, -1.956256388529642405e-08, -2.002657802862958366e-08, -2.049046997495829920e-08, -2.095423898821794076e-08, -2.141788433270786107e-08, -2.188140527307163578e-08, -2.234480107427787292e-08, -2.280807100170371838e-08, -2.327121432103278518e-08, -2.373423029823526138e-08, -2.419711819975593822e-08, -2.465987729230771931e-08, -2.512250684295583760e-08, -2.558500611918136625e-08, -2.604737438877835049e-08, -2.650961091983435563e-08, -2.697171498091829990e-08, -2.743368584087405640e-08, -2.789552276890471628e-08, -2.835722503465653105e-08, -2.881879190799198715e-08, -2.928022265928140700e-08, -2.974151655917563973e-08, -3.020267287869037074e-08, -3.066369088926932826e-08, -3.112456986268192136e-08, -3.158530907100365234e-08, -3.204590778680318858e-08, -3.250636528293749969e-08, -3.296668083263438364e-08, -3.342685370957740170e-08, -3.388688318767914490e-08, -3.434676854137179942e-08, -3.480650904538069103e-08, -3.526610397482929068e-08, -3.572555260521894527e-08, -3.618485421243100849e-08, -3.664400807270607524e-08, -3.710301346272859895e-08, -3.756186965950367468e-08, -3.802057594042029537e-08, -3.847913158333506244e-08, -3.893753586636666783e-08, -3.939578806808323389e-08, -3.985388746748199117e-08, -4.031183334388802490e-08, -4.076962497703744306e-08, -4.122726164705786815e-08, -4.168474263444923996e-08, -4.214206722016699687e-08, -4.259923468549995750e-08, -4.305624431213278943e-08, -4.351309538222969998e-08, -4.396978717822960649e-08, -4.442631898303263571e-08, -4.488269007998059576e-08, -4.533889975275502116e-08, -4.579494728546041363e-08, -4.625083196260566697e-08, -4.670655306910417291e-08, -4.716210989025480257e-08, -4.761750171182490910e-08, -4.807272781992857990e-08, -4.852778750110973849e-08, -4.898268004232240472e-08, -4.943740473091203351e-08, -4.989196085469744548e-08, -5.034634770185014459e-08, -5.080056456097655313e-08, -5.125461072109889392e-08, -5.170848547165625573e-08, -5.216218810248527695e-08, -5.261571790390345921e-08, -5.306907416658639395e-08, -5.352225618165166498e-08, -5.397526324063936011e-08, -5.442809463549221883e-08, -5.488074965863884005e-08, -5.533322760287213949e-08, -5.578552776143198834e-08, -5.623764942798651233e-08, -5.668959189663208518e-08, -5.714135446187443571e-08, -5.759293641871200124e-08, -5.804433706253417772e-08, -5.849555568910204976e-08, -5.894659159473333496e-08, -5.939744407610014157e-08, -5.984811243031021083e-08, -6.029859595496970996e-08, -6.074889394806246375e-08, -6.119900570803221602e-08, -6.164893053376323391e-08, -6.209866772456118344e-08, -6.254821658023500056e-08, -6.299757640099789415e-08, -6.344674648744594524e-08, -6.389572614074323660e-08, -6.434451466242019276e-08, -6.479311135445455106e-08, -6.524151551933442589e-08, -6.568972645993713005e-08, -6.613774347961193251e-08, -6.658556588215982224e-08, -6.703319297183538763e-08, -6.748062405332741407e-08, -6.792785843186113674e-08, -6.837489541297645035e-08, -6.882173430281240626e-08, -6.926837440788650755e-08, -6.971481503517520356e-08, -7.016105549217626592e-08, -7.060709508680932839e-08, -7.105293312739598157e-08, -7.149856892284281141e-08, -7.194400178244061273e-08, -7.238923101594615433e-08, -7.283425593366427505e-08, -7.327907584622596111e-08, -7.372369006487320064e-08, -7.416809790123704786e-08, -7.461229866741956021e-08, -7.505629167607621208e-08, -7.550007624021404944e-08, -7.594365167337602544e-08, -7.638701728961967898e-08, -7.683017240341909063e-08, -7.727311632972519407e-08, -7.771584838404821615e-08, -7.815836788225731396e-08, -7.860067414076226336e-08, -7.904276647649424193e-08, -7.948464420680777166e-08, -7.992630664956012831e-08, -8.036775312309324930e-08, -8.080898294621507253e-08, -8.124999543828021623e-08, -8.169078991907074590e-08, -8.213136570885729299e-08, -8.257172212848115090e-08, -8.301185849915344882e-08, -8.345177414263750200e-08, -8.389146838122948884e-08, -8.433094053765869948e-08, -8.477018993517074361e-08, -8.520921589750538197e-08, -8.564801774888098865e-08, -8.608659481407247807e-08, -8.652494641829436153e-08, -8.696307188728059327e-08, -8.740097054726679603e-08, -8.783864172498974491e-08, -8.827608474766992373e-08, -8.871329894309061678e-08, -8.915028363948199765e-08, -8.958703816559824889e-08, -9.002356185070193168e-08, -9.045985402456292695e-08, -9.089591401744026395e-08, -9.133174116016270747e-08, -9.176733478401031880e-08, -9.220269422079541354e-08, -9.263781880284317253e-08, -9.307270786297254387e-08, -9.350736073457718752e-08, -9.394177675150757888e-08, -9.437595524815036522e-08, -9.480989555941109414e-08, -9.524359702071311504e-08, -9.567705896798133998e-08, -9.611028073771987946e-08, -9.654326166689598575e-08, -9.697600109301936952e-08, -9.740849835412406809e-08, -9.784075278876852481e-08, -9.827276373601736463e-08, -9.870453053552252395e-08, -9.913605252740287934e-08, -9.956732905232655530e-08, -9.999835945149217039e-08, -1.004291430666085217e-07, -1.008596792399759134e-07, -1.012899673143873313e-07, -1.017200066331116618e-07, -1.021497965400697417e-07, -1.025793363796392896e-07, -1.030086254967350693e-07, -1.034376632368685795e-07, -1.038664489460306863e-07, -1.042949819707715890e-07, -1.047232616581817748e-07, -1.051512873558943347e-07, -1.055790584120645689e-07, -1.060065741754685999e-07, -1.064338339952919977e-07, -1.068608372214009500e-07, -1.072875832041304904e-07, -1.077140712943629019e-07, -1.081403008436072190e-07, -1.085662712038044762e-07, -1.089919817275040233e-07, -1.094174317678457906e-07, -1.098426206784631578e-07, -1.102675478135425116e-07, -1.106922125279025617e-07, -1.111166141767800024e-07, -1.115407521161047976e-07, -1.119646257022853397e-07, -1.123882342922877655e-07, -1.128115772437149424e-07, -1.132346539146127494e-07, -1.136574636636464052e-07, -1.140800058500808147e-07, -1.145022798336863631e-07, -1.149242849747965533e-07, -1.153460206343859735e-07, -1.157674861738795286e-07, -1.161886809553262812e-07, -1.166096043413808562e-07, -1.170302556952081495e-07, -1.174506343805627378e-07, -1.178707397617678612e-07, -1.182905712036989193e-07, -1.187101280718614911e-07, -1.191294097322760059e-07, -1.195484155515360302e-07, -1.199671448968884837e-07, -1.203855971360385974e-07, -1.208037716373279886e-07, -1.212216677697129822e-07, -1.216392849026706433e-07, -1.220566224062773126e-07, -1.224736796511892310e-07, -1.228904560086247248e-07, -1.233069508504416569e-07, -1.237231635490245594e-07, -1.241390934773597547e-07, -1.245547400090192357e-07, -1.249701025181604009e-07, -1.253851803795089019e-07, -1.257999729684349826e-07, -1.262144796608395792e-07, -1.266286998332333332e-07, -1.270426328627173206e-07, -1.274562781269828939e-07, -1.278696350042954553e-07, -1.282827028735699491e-07, -1.286954811142590534e-07, -1.291079691064288565e-07, -1.295201662307413612e-07, -1.299320718684368821e-07, -1.303436854014102252e-07, -1.307550062120964979e-07, -1.311660336835512858e-07, -1.315767671994289735e-07, -1.319872061439860541e-07, -1.323973499020611703e-07, -1.328071978591550005e-07, -1.332167494013130770e-07, -1.336260039152058308e-07, -1.340349607881090301e-07, -1.344436194079053159e-07, -1.348519791630657260e-07, -1.352600394427268540e-07, -1.356677996365766329e-07, -1.360752591349336115e-07, -1.364824173287271024e-07, -1.368892736094784677e-07, -1.372958273693796021e-07, -1.377020780011969795e-07, -1.381080248982574130e-07, -1.385136674546132784e-07, -1.389190050648607204e-07, -1.393240371242118620e-07, -1.397287630285525349e-07, -1.401331821743326419e-07, -1.405372939586397691e-07, -1.409410977791824309e-07, -1.413445930342721495e-07, -1.417477791228984179e-07, -1.421506554446377226e-07, -1.425532213996343536e-07, -1.429554763887685929e-07, -1.433574198134734116e-07, -1.437590510758077118e-07, -1.441603695785326122e-07, -1.445613747249255776e-07, -1.449620659189516516e-07, -1.453624425652398726e-07, -1.457625040689970610e-07, -1.461622498360607856e-07, -1.465616792729760733e-07, -1.469607917867912207e-07, -1.473595867853191303e-07, -1.477580636769346584e-07, -1.481562218706481738e-07, -1.485540607761802829e-07, -1.489515798037798756e-07, -1.493487783643897208e-07, -1.497456558696278842e-07, -1.501422117316994785e-07, -1.505384453634489409e-07, -1.509343561784379073e-07, -1.513299435907420037e-07, -1.517252070152082650e-07, -1.521201458672554203e-07, -1.525147595629669873e-07, -1.529090475190710757e-07, -1.533030091529438284e-07, -1.536966438825916072e-07, -1.540899511267237585e-07, -1.544829303046437426e-07, -1.548755808363069443e-07, -1.552679021423918496e-07, -1.556598936441201311e-07, -1.560515547634210778e-07, -1.564428849229132782e-07, -1.568338835458173233e-07, -1.572245500560256332e-07, -1.576148838780872906e-07, -1.580048844371903056e-07, -1.583945511592350430e-07, -1.587838834707259344e-07, -1.591728807988447202e-07, -1.595615425714349118e-07, -1.599498682169999915e-07, -1.603378571646868692e-07, -1.607255088443602619e-07, -1.611128226864937184e-07, -1.614997981222436812e-07, -1.618864345834305077e-07, -1.622727315025431821e-07, -1.626586883127169481e-07, -1.630443044478090129e-07, -1.634295793422922706e-07, -1.638145124313251295e-07, -1.641991031507371659e-07, -1.645833509370107272e-07, -1.649672552273518182e-07, -1.653508154595881923e-07, -1.657340310722360023e-07, -1.661169015044863542e-07, -1.664994261962049096e-07, -1.668816045879153162e-07, -1.672634361208707019e-07, -1.676449202369473731e-07, -1.680260563787190615e-07, -1.684068439894367286e-07, -1.687872825130132917e-07, -1.691673713940948284e-07, -1.695471100779561791e-07, -1.699264980105713573e-07, -1.703055346385963966e-07, -1.706842194093708334e-07, -1.710625517709020631e-07, -1.714405311719338172e-07, -1.718181570618604548e-07, -1.721954288907105239e-07, -1.725723461093047607e-07, -1.729489081690820231e-07, -1.733251145221698602e-07, -1.737009646214382716e-07, -1.740764579203949406e-07, -1.744515938732552728e-07, -1.748263719349272292e-07, -1.752007915609944915e-07, -1.755748522077852831e-07, -1.759485533322868455e-07, -1.763218943921314626e-07, -1.766948748457490318e-07, -1.770674941521969961e-07, -1.774397517712299069e-07, -1.778116471633706535e-07, -1.781831797897173402e-07, -1.785543491121905932e-07, -1.789251545933408606e-07, -1.792955956964383040e-07, -1.796656718854358196e-07, -1.800353826250579775e-07, -1.804047273806126092e-07, -1.807737056182313123e-07, -1.811423168046815413e-07, -1.815105604074362499e-07, -1.818784358947438239e-07, -1.822459427354556836e-07, -1.826130803991826674e-07, -1.829798483562776938e-07, -1.833462460777522232e-07, -1.837122730353264440e-07, -1.840779287015000269e-07, -1.844432125493645864e-07, -1.848081240528428612e-07, -1.851726626865025530e-07, -1.855368279256411088e-07, -1.859006192462699714e-07, -1.862640361251166174e-07, -1.866270780396057378e-07, -1.869897444679295411e-07, -1.873520348889483329e-07, -1.877139487822373414e-07, -1.880754856281599851e-07, -1.884366449076966669e-07, -1.887974261025978219e-07, -1.891578286953697825e-07, -1.895178521691864230e-07, -1.898774960079652591e-07, -1.902367596963438378e-07, -1.905956427196650992e-07, -1.909541445640491625e-07, -1.913122647162892470e-07, -1.916700026639204671e-07, -1.920273578952054588e-07, -1.923843298991328186e-07, -1.927409181654032327e-07, -1.930971221844948843e-07, -1.934529414475655683e-07, -1.938083754465183626e-07, -1.941634236739884461e-07, -1.945180856233403992e-07, -1.948723607886547568e-07, -1.952262486647962739e-07, -1.955797487473102702e-07, -1.959328605324937010e-07, -1.962855835173787465e-07, -1.966379171997153940e-07, -1.969898610780389101e-07, -1.973414146515729078e-07, -1.976925774202935096e-07, -1.980433488849167477e-07, -1.983937285468954670e-07, -1.987437159084054287e-07, -1.990933104724130463e-07, -1.994425117425752503e-07, -1.997913192233074893e-07, -2.001397324197647510e-07, -2.004877508378331187e-07, -2.008353739841872364e-07, -2.011826013661973479e-07, -2.015294324919960794e-07, -2.018758668704608372e-07, -2.022219040112140462e-07, -2.025675434246095442e-07, -2.029127846217980416e-07, -2.032576271146446947e-07, -2.036020704157149178e-07, -2.039461140384210789e-07, -2.042897574968597101e-07, -2.046330003058792707e-07, -2.049758419811438334e-07, -2.053182820389546513e-07, -2.056603199964828539e-07, -2.060019553715839468e-07, -2.063431876828690949e-07, -2.066840164497521593e-07, -2.070244411923705259e-07, -2.073644614315683502e-07, -2.077040766890420882e-07, -2.080432864871840334e-07, -2.083820903491409739e-07, -2.087204877988836492e-07, -2.090584783610297730e-07, -2.093960615610683384e-07, -2.097332369251845730e-07, -2.100700039803410161e-07, -2.104063622542458341e-07, -2.107423112754329446e-07, -2.110778505730878190e-07, -2.114129796772706223e-07, -2.117476981187414073e-07, -2.120820054290257060e-07, -2.124159011404779518e-07, -2.127493847861219194e-07, -2.130824558997980289e-07, -2.134151140161431233e-07, -2.137473586705158237e-07, -2.140791893990430628e-07, -2.144106057386822362e-07, -2.147416072270519281e-07, -2.150721934026500225e-07, -2.154023638046845345e-07, -2.157321179731321615e-07, -2.160614554488050668e-07, -2.163903757731956339e-07, -2.167188784886149037e-07, -2.170469631381794454e-07, -2.173746292657332443e-07, -2.177018764158957708e-07, -2.180287041341251638e-07, -2.183551119665612384e-07, -2.186810994601682374e-07, -2.190066661627177321e-07, -2.193318116227135535e-07, -2.196565353894542879e-07, -2.199808370130164948e-07, -2.203047160442425047e-07, -2.206281720348005312e-07, -2.209512045370931659e-07, -2.212738131043211170e-07, -2.215959972904660307e-07, -2.219177566502931115e-07, -2.222390907393354522e-07, -2.225599991139555498e-07, -2.228804813312554934e-07, -2.232005369491363359e-07, -2.235201655262863413e-07, -2.238393666221637267e-07, -2.241581397970590250e-07, -2.244764846120046639e-07, -2.247944006288360056e-07, -2.251118874101789321e-07, -2.254289445194456368e-07, -2.257455715208239305e-07, -2.260617679793373278e-07, -2.263775334607547061e-07, -2.266928675316499415e-07, -2.270077697593914535e-07, -2.273222397121387110e-07, -2.276362769588292356e-07, -2.279498810692382646e-07, -2.282630516138910827e-07, -2.285757881641229237e-07, -2.288880902920630881e-07, -2.291999575706231114e-07, -2.295113895735534887e-07, -2.298223858753595804e-07, -2.301329460513568015e-07, -2.304430696776600072e-07, -2.307527563311811904e-07, -2.310620055896175960e-07, -2.313708170315093731e-07, -2.316791902361525149e-07, -2.319871247836610899e-07, -2.322946202549465421e-07, -2.326016762317240176e-07, -2.329082922964959528e-07, -2.332144680326256610e-07, -2.335202030241781959e-07, -2.338254968561246187e-07, -2.341303491141796325e-07, -2.344347593848669894e-07, -2.347387272555567595e-07, -2.350422523143957954e-07, -2.353453341502947879e-07, -2.356479723530579152e-07, -2.359501665132387679e-07, -2.362519162221988740e-07, -2.365532210721670963e-07, -2.368540806560803909e-07, -2.371544945677834156e-07, -2.374544624018761963e-07, -2.377539837537683106e-07, -2.380530582197237011e-07, -2.383516853967872220e-07, -2.386498648827766450e-07, -2.389475962764057702e-07, -2.392448791771438454e-07, -2.395417131852754404e-07, -2.398380979019549220e-07, -2.401340329290658466e-07, -2.404295178693498677e-07, -2.407245523263919133e-07, -2.410191359045534815e-07, -2.413132682090080046e-07, -2.416069488458062822e-07, -2.419001774217150156e-07, -2.421929535444197249e-07, -2.424852768223668308e-07, -2.427771468648222580e-07, -2.430685632819283460e-07, -2.433595256845617056e-07, -2.436500336844627097e-07, -2.439400868942197699e-07, -2.442296849272013623e-07, -2.445188273976112433e-07, -2.448075139204759029e-07, -2.450957441116304300e-07, -2.453835175877760578e-07, -2.456708339663946131e-07, -2.459576928658072793e-07, -2.462440939051581326e-07, -2.465300367044184826e-07, -2.468155208843712023e-07, -2.471005460666638796e-07, -2.473851118737334841e-07, -2.476692179288557597e-07, -2.479528638561332074e-07, -2.482360492804973089e-07, -2.485187738276942856e-07, -2.488010371243396266e-07, -2.490828387978357673e-07, -2.493641784764334997e-07, -2.496450557892086259e-07, -2.499254703660564523e-07, -2.502054218377438823e-07, -2.504849098358268305e-07, -2.507639339927104148e-07, -2.510424939416288396e-07, -2.513205893166494193e-07, -2.515982197526632607e-07, -2.518753848854305791e-07, -2.521520843515083306e-07, -2.524283177883011922e-07, -2.527040848340468977e-07, -2.529793851278219556e-07, -2.532542183095219019e-07, -2.535285840199222874e-07, -2.538024819005934971e-07, -2.540759115939559664e-07, -2.543488727432686937e-07, -2.546213649926158989e-07, -2.548933879869581107e-07, -2.551649413720707033e-07, -2.554360247945256854e-07, -2.557066379018183846e-07, -2.559767803422284281e-07, -2.562464517648758586e-07, -2.565156518197628507e-07, -2.567843801576927131e-07, -2.570526364303224053e-07, -2.573204202901533783e-07, -2.575877313905289281e-07, -2.578545693856222313e-07, -2.581209339305017254e-07, -2.583868246809889658e-07, -2.586522412938403149e-07, -2.589171834266052756e-07, -2.591816507376776307e-07, -2.594456428863379008e-07, -2.597091595326838872e-07, -2.599722003376212491e-07, -2.602347649629808173e-07, -2.604968530713883630e-07, -2.607584643263167434e-07, -2.610195983921379411e-07, -2.612802549339830921e-07, -2.615404336179217388e-07, -2.618001341108204817e-07, -2.620593560803952837e-07, -2.623180991952498511e-07, -2.625763631248135884e-07, -2.628341475393273049e-07, -2.630914521099578815e-07, -2.633482765086765097e-07, -2.636046204083021025e-07, -2.638604834825575156e-07, -2.641158654059423340e-07, -2.643707658538464802e-07, -2.646251845025383028e-07, -2.648791210291007313e-07, -2.651325751114739987e-07, -2.653855464284982573e-07, -2.656380346597840359e-07, -2.658900394858819112e-07, -2.661415605881486764e-07, -2.663925976487974748e-07, -2.666431503509457635e-07, -2.668932183784933403e-07, -2.671428014162356875e-07, -2.673918991498480369e-07, -2.676405112658258128e-07, -2.678886374515359837e-07, -2.681362773952021858e-07, -2.683834307858959355e-07, -2.686300973135812041e-07, -2.688762766690480319e-07, -2.691219685439571033e-07, -2.693671726308263526e-07, -2.696118886230379528e-07, -2.698561162148192039e-07, -2.700998551012953136e-07, -2.703431049784173999e-07, -2.705858655430080717e-07, -2.708281364927559761e-07, -2.710699175262074342e-07, -2.713112083427611996e-07, -2.715520086427141458e-07, -2.717923181271914384e-07, -2.720321364981921165e-07, -2.722714634585796162e-07, -2.725102987120713417e-07, -2.727486419632827110e-07, -2.729864929176579636e-07, -2.732238512815197653e-07, -2.734607167620548613e-07, -2.736970890673170940e-07, -2.739329679062126855e-07, -2.741683529885509009e-07, -2.744032440249733210e-07, -2.746376407269962472e-07, -2.748715428070081068e-07, -2.751049499782605070e-07, -2.753378619548651108e-07, -2.755702784518330245e-07, -2.758021991850108993e-07, -2.760336238711271478e-07, -2.762645522277762208e-07, -2.764949839734122017e-07, -2.767249188273920581e-07, -2.769543565099211670e-07, -2.771832967420396032e-07, -2.774117392457262191e-07, -2.776396837437876826e-07, -2.778671299598988705e-07, -2.780940776186407733e-07, -2.783205264454324675e-07, -2.785464761665762730e-07, -2.787719265092463187e-07, -2.789968772014776364e-07, -2.792213279722119010e-07, -2.794452785512433787e-07, -2.796687286692038927e-07, -2.798916780576655787e-07, -2.801141264490312996e-07, -2.803360735765772626e-07, -2.805575191744871647e-07, -2.807784629777966592e-07, -2.809989047223863147e-07, -2.812188441450742065e-07, -2.814382809835126316e-07, -2.816572149762270189e-07, -2.818756458626649518e-07, -2.820935733830718126e-07, -2.823109972786469016e-07, -2.825279172914240054e-07, -2.827443331643114191e-07, -2.829602446411282100e-07, -2.831756514665500076e-07, -2.833905533860964566e-07, -2.836049501462311672e-07, -2.838188414942517591e-07, -2.840322271783345431e-07, -2.842451069475794664e-07, -2.844574805518881928e-07, -2.846693477421170982e-07, -2.848807082699592682e-07, -2.850915618879986023e-07, -2.853019083496981145e-07, -2.855117474094011506e-07, -2.857210788223222298e-07, -2.859299023445877022e-07, -2.861382177331704745e-07, -2.863460247459277029e-07, -2.865533231416392270e-07, -2.867601126799029086e-07, -2.869663931212291286e-07, -2.871721642270316287e-07, -2.873774257595777479e-07, -2.875821774820236275e-07, -2.877864191584102934e-07, -2.879901505536503158e-07, -2.881933714335713778e-07, -2.883960815648522189e-07, -2.885982807150550872e-07, -2.887999686526693609e-07, -2.890011451470052991e-07, -2.892018099682864745e-07, -2.894019628876432611e-07, -2.896016036770595776e-07, -2.898007321094125918e-07, -2.899993479584672152e-07, -2.901974509988717084e-07, -2.903950410061512762e-07, -2.905921177567435364e-07, -2.907886810279451042e-07, -2.909847305979469028e-07, -2.911802662458256930e-07, -2.913752877515359736e-07, -2.915697948959457682e-07, -2.917637874607854860e-07, -2.919572652286765620e-07, -2.921502279831298156e-07, -2.923426755085442332e-07, -2.925346075901941570e-07, -2.927260240142733302e-07, -2.929169245678313703e-07, -2.931073090388188198e-07, -2.932971772160719532e-07, -2.934865288893066887e-07, -2.936753638491550634e-07, -2.938636818871107059e-07, -2.940514827955647821e-07, -2.942387663677968895e-07, -2.944255323979764337e-07, -2.946117806811534169e-07, -2.947975110132953369e-07, -2.949827231912390121e-07, -2.951674170126843871e-07, -2.953515922762770663e-07, -2.955352487815154041e-07, -2.957183863287875633e-07, -2.959010047194019021e-07, -2.960831037555282110e-07, -2.962646832402367297e-07, -2.964457429774868706e-07, -2.966262827721221368e-07, -2.968063024299039504e-07, -2.969858017574658597e-07, -2.971647805623069749e-07, -2.973432386528725950e-07, -2.975211758384635751e-07, -2.976985919292698373e-07, -2.978754867364044637e-07, -2.980518600718438219e-07, -2.982277117484653106e-07, -2.984030415800374604e-07, -2.985778493812264976e-07, -2.987521349675771809e-07, -2.989258981555648932e-07, -2.990991387624951099e-07, -2.992718566066295005e-07, -2.994440515070877262e-07, -2.996157232838794150e-07, -2.997868717579400018e-07, -2.999574967510761480e-07, -3.001275980859639413e-07, -3.002971755862247052e-07, -3.004662290763393958e-07, -3.006347583816839655e-07, -3.008027633285622381e-07, -3.009702437441099829e-07, -3.011371994564232924e-07, -3.013036302944520688e-07, -3.014695360880533860e-07, -3.016349166679770383e-07, -3.017997718658685040e-07, -3.019641015142597343e-07, -3.021279054466022938e-07, -3.022911834972198202e-07, -3.024539355013292004e-07, -3.026161612950761460e-07, -3.027778607154518662e-07, -3.029390336003684539e-07, -3.030996797886503621e-07, -3.032597991199916824e-07, -3.034193914349926725e-07, -3.035784565751485334e-07, -3.037369943828410450e-07, -3.038950047013744059e-07, -3.040524873749225589e-07, -3.042094422485582547e-07, -3.043658691682793095e-07, -3.045217679809341727e-07, -3.046771385342929183e-07, -3.048319806770350161e-07, -3.049862942587151327e-07, -3.051400791297907659e-07, -3.052933351416166333e-07, -3.054460621464451483e-07, -3.055982599974161505e-07, -3.057499285485930099e-07, -3.059010676549100580e-07, -3.060516771722055696e-07, -3.062017569572175800e-07, -3.063513068675722915e-07, -3.065003267618169491e-07, -3.066488164993723531e-07, -3.067967759405629824e-07, -3.069442049466152469e-07, -3.070911033796480118e-07, -3.072374711026732854e-07, -3.073833079796225835e-07, -3.075286138753014008e-07, -3.076733886554217162e-07, -3.078176321865906106e-07, -3.079613443363107436e-07, -3.081045249730005229e-07, -3.082471739659558829e-07, -3.083892911853762770e-07, -3.085308765023606548e-07, -3.086719297889064561e-07, -3.088124509178975407e-07, -3.089524397631451636e-07, -3.090918961993390059e-07, -3.092308201020443689e-07, -3.093692113477709429e-07, -3.095070698138974738e-07, -3.096443953786984980e-07, -3.097811879213704941e-07, -3.099174473219852964e-07, -3.100531734615223350e-07, -3.101883662218571481e-07, -3.103230254857573581e-07, -3.104571511369105183e-07, -3.105907430598876373e-07, -3.107238011401360852e-07, -3.108563252640460327e-07, -3.109883153188767064e-07, -3.111197711927861934e-07, -3.112506927748518766e-07, -3.113810799550278707e-07, -3.115109326241736099e-07, -3.116402506740489244e-07, -3.117690339973098051e-07, -3.118972824875033219e-07, -3.120249960391068513e-07, -3.121521745474431617e-07, -3.122788179087845454e-07, -3.124049260202722977e-07, -3.125304987799461511e-07, -3.126555360867673568e-07, -3.127800378405782923e-07, -3.129040039421029904e-07, -3.130274342930021965e-07, -3.131503287958078823e-07, -3.132726873539509861e-07, -3.133945098717884650e-07, -3.135157962545274326e-07, -3.136365464083191264e-07, -3.137567602401897692e-07, -3.138764376580615325e-07, -3.139955785707819718e-07, -3.141141828880554159e-07, -3.142322505205063365e-07, -3.143497813796699773e-07, -3.144667753779595846e-07, -3.145832324286856773e-07, -3.146991524460853753e-07, -3.148145353452532607e-07, -3.149293810422019405e-07, -3.150436894538529937e-07, -3.151574604980084904e-07, -3.152706940933748669e-07, -3.153833901595542970e-07, -3.154955486170441624e-07, -3.156071693872549462e-07, -3.157182523924780459e-07, -3.158287975559015493e-07, -3.159388048016359630e-07, -3.160482740546521144e-07, -3.161572052408376910e-07, -3.162655982869892998e-07, -3.163734531207843032e-07, -3.164807696708004594e-07, -3.165875478665158170e-07, -3.166937876382975444e-07, -3.167994889174283998e-07, -3.169046516360709966e-07, -3.170092757272890856e-07, -3.171133611250484018e-07, -3.172169077642050176e-07, -3.173199155805096311e-07, -3.174223845106273653e-07, -3.175243144921013988e-07, -3.176257054633775828e-07, -3.177265573637964996e-07, -3.178268701336007690e-07, -3.179266437139190071e-07, -3.180258780467934080e-07, -3.181245730751467623e-07, -3.182227287428033158e-07, -3.183203449944831041e-07, -3.184174217757966065e-07, -3.185139590332669802e-07, -3.186099567142976084e-07, -3.187054147671923234e-07, -3.188003331411486831e-07, -3.188947117862636355e-07, -3.189885506535208132e-07, -3.190818496948172153e-07, -3.191746088629273667e-07, -3.192668281115301591e-07, -3.193585073951948214e-07, -3.194496466693874319e-07, -3.195402458904651472e-07, -3.196303050156938847e-07, -3.197198240032177230e-07, -3.198088028120837838e-07, -3.198972414022295793e-07, -3.199851397344853412e-07, -3.200724977705898503e-07, -3.201593154731648660e-07, -3.202455928057111034e-07, -3.203313297326542375e-07, -3.204165262192933402e-07, -3.205011822318197796e-07, -3.205852977373374429e-07, -3.206688727038243555e-07, -3.207519071001589387e-07, -3.208344008961115926e-07, -3.209163540623424192e-07, -3.209977665704185342e-07, -3.210786383927882853e-07, -3.211589695027814106e-07, -3.212387598746474734e-07, -3.213180094835085866e-07, -3.213967183053804828e-07, -3.214748863171898258e-07, -3.215525134967250824e-07, -3.216295998226824739e-07, -3.217061452746587236e-07, -3.217821498331307810e-07, -3.218576134794619095e-07, -3.219325361959304858e-07, -3.220069179656693839e-07, -3.220807587727369143e-07, -3.221540586020644670e-07, -3.222268174394713867e-07, -3.222990352716902260e-07, -3.223707120863125344e-07, -3.224418478718360280e-07, -3.225124426176565425e-07, -3.225824963140470693e-07, -3.226520089521696137e-07, -3.227209805240949942e-07, -3.227894110227495329e-07, -3.228573004419847765e-07, -3.229246487765187333e-07, -3.229914560219661550e-07, -3.230577221748283191e-07, -3.231234472324973169e-07, -3.231886311932479542e-07, -3.232532740562550620e-07, -3.233173758215727446e-07, -3.233809364901400968e-07, -3.234439560638006328e-07, -3.235064345452620523e-07, -3.235683719381312333e-07, -3.236297682469091502e-07, -3.236906234769732974e-07, -3.237509376345933070e-07, -3.238107107269224251e-07, -3.238699427619984121e-07, -3.239286337487573067e-07, -3.239867836970083857e-07, -3.240443926174517399e-07, -3.241014605216730331e-07, -3.241579874221413313e-07, -3.242139733322128090e-07, -3.242694182661351425e-07, -3.243243222390316816e-07, -3.243786852669138903e-07, -3.244325073666770051e-07, -3.244857885561036889e-07, -3.245385288538518010e-07, -3.245907282794807086e-07, -3.246423868534184112e-07, -3.246935045969804399e-07, -3.247440815323674224e-07, -3.247941176826573008e-07, -3.248436130718237545e-07, -3.248925677247120596e-07, -3.249409816670507362e-07, -3.249888549254562064e-07, -3.250361875274232126e-07, -3.250829795013244999e-07, -3.251292308764275975e-07, -3.251749416828676086e-07, -3.252201119516680146e-07, -3.252647417147298235e-07, -3.253088310048380278e-07, -3.253523798556531873e-07, -3.253953883017257761e-07, -3.254378563784771238e-07, -3.254797841222119096e-07, -3.255211715701136622e-07, -3.255620187602420601e-07, -3.256023257315482310e-07, -3.256420925238515643e-07, -3.256813191778445817e-07, -3.257200057351134774e-07, -3.257581522381142426e-07, -3.257957587301770595e-07, -3.258328252555205949e-07, -3.258693518592319892e-07, -3.259053385872799319e-07, -3.259407854865086276e-07, -3.259756926046352006e-07, -3.260100599902642545e-07, -3.260438876928687073e-07, -3.260771757627907975e-07, -3.261099242512630483e-07, -3.261421332103861915e-07, -3.261738026931323971e-07, -3.262049327533622668e-07, -3.262355234457923820e-07, -3.262655748260245263e-07, -3.262950869505376922e-07, -3.263240598766789217e-07, -3.263524936626663246e-07, -3.263803883676060187e-07, -3.264077440514552313e-07, -3.264345607750632740e-07, -3.264608386001427968e-07, -3.264865775892759821e-07, -3.265117778059316437e-07, -3.265364393144299698e-07, -3.265605621799754507e-07, -3.265841464686457090e-07, -3.266071922473818114e-07, -3.266296995839964746e-07, -3.266516685471819529e-07, -3.266730992064843100e-07, -3.266939916323341768e-07, -3.267143458960268986e-07, -3.267341620697242827e-07, -3.267534402264599981e-07, -3.267721804401348636e-07, -3.267903827855174303e-07, -3.268080473382491698e-07, -3.268251741748339920e-07, -3.268417633726420039e-07, -3.268578150099215797e-07, -3.268733291657737384e-07, -3.268883059201705662e-07, -3.269027453539591873e-07, -3.269166475488406942e-07, -3.269300125873898406e-07, -3.269428405530402190e-07, -3.269551315300958539e-07, -3.269668856037269669e-07, -3.269781028599617711e-07, -3.269887833856975884e-07, -3.269989272686925377e-07, -3.270085345975714646e-07, -3.270176054618171002e-07, -3.270261399517819195e-07, -3.270341381586782949e-07, -3.270416001745790253e-07, -3.270485260924199306e-07, -3.270549160059991099e-07, -3.270607700099725481e-07, -3.270660881998650739e-07, -3.270708706720533137e-07, -3.270751175237810968e-07, -3.270788288531474911e-07, -3.270820047591120968e-07, -3.270846453414968469e-07, -3.270867507009800246e-07, -3.270883209390983280e-07, -3.270893561582473994e-07, -3.270898564616821965e-07, -3.270898219535126503e-07, -3.270892527387098600e-07, -3.270881489230985751e-07, -3.270865106133607425e-07, -3.270843379170352944e-07, -3.270816309425153431e-07, -3.270783897990535805e-07, -3.270746145967551840e-07, -3.270703054465803580e-07, -3.270654624603434867e-07, -3.270600857507147752e-07, -3.270541754312148495e-07, -3.270477316162241801e-07, -3.270407544209698470e-07, -3.270332439615334274e-07, -3.270252003548527960e-07, -3.270166237187135487e-07, -3.270075141717536611e-07, -3.269978718334652888e-07, -3.269876968241875673e-07, -3.269769892651134411e-07, -3.269657492782826234e-07, -3.269539769865896949e-07, -3.269416725137757403e-07, -3.269288359844313651e-07, -3.269154675239938374e-07, -3.269015672587532284e-07, -3.268871353158438366e-07, -3.268721718232484228e-07, -3.268566769098013866e-07, -3.268406507051766959e-07, -3.268240933399006455e-07, -3.268070049453430693e-07, -3.267893856537196164e-07, -3.267712355980917512e-07, -3.267525549123660654e-07, -3.267333437312945424e-07, -3.267136021904721222e-07, -3.266933304263379720e-07, -3.266725285761742684e-07, -3.266511967781079978e-07, -3.266293351711060323e-07, -3.266069438949794715e-07, -3.265840230903808891e-07, -3.265605728988053390e-07, -3.265365934625874435e-07, -3.265120849249029288e-07, -3.264870474297673011e-07, -3.264614811220382822e-07, -3.264353861474096683e-07, -3.264087626524159359e-07, -3.263816107844320297e-07, -3.263539306916689161e-07, -3.263257225231753831e-07, -3.262969864288392045e-07, -3.262677225593832759e-07, -3.262379310663689495e-07, -3.262076121021923816e-07, -3.261767658200859615e-07, -3.261453923741188943e-07, -3.261134919191938125e-07, -3.260810646110476762e-07, -3.260481106062521433e-07, -3.260146300622138346e-07, -3.259806231371696750e-07, -3.259460899901917635e-07, -3.259110307811843566e-07, -3.258754456708839732e-07, -3.258393348208575952e-07, -3.258026983935041496e-07, -3.257655365520538735e-07, -3.257278494605650843e-07, -3.256896372839277271e-07, -3.256509001878620511e-07, -3.256116383389163330e-07, -3.255718519044660302e-07, -3.255315410527169042e-07, -3.254907059527017381e-07, -3.254493467742786430e-07, -3.254074636881358220e-07, -3.253650568657847414e-07, -3.253221264795670659e-07, -3.252786727026453406e-07, -3.252346957090089209e-07, -3.251901956734723840e-07, -3.251451727716735172e-07, -3.250996271800737415e-07, -3.250535590759588527e-07, -3.250069686374362157e-07, -3.249598560434372523e-07, -3.249122214737124656e-07, -3.248640651088359391e-07, -3.248153871302035900e-07, -3.247661877200278755e-07, -3.247164670613437745e-07, -3.246662253380079939e-07, -3.246154627346938862e-07, -3.245641794368925611e-07, -3.245123756309155329e-07, -3.244600515038903792e-07, -3.244072072437631758e-07, -3.243538430392960622e-07, -3.242999590800659704e-07, -3.242455555564701839e-07, -3.241906326597191378e-07, -3.241351905818327132e-07, -3.240792295156552717e-07, -3.240227496548377620e-07, -3.239657511938455024e-07, -3.239082343279593446e-07, -3.238501992532720747e-07, -3.237916461666853421e-07, -3.237325752659193479e-07, -3.236729867494962743e-07, -3.236128808167545259e-07, -3.235522576678444940e-07, -3.234911175037163810e-07, -3.234294605261425934e-07, -3.233672869376957192e-07, -3.233045969417581100e-07, -3.232413907425208749e-07, -3.231776685449829807e-07, -3.231134305549434170e-07, -3.230486769790204127e-07, -3.229834080246215789e-07, -3.229176238999738191e-07, -3.228513248141040593e-07, -3.227845109768359132e-07, -3.227171825988087400e-07, -3.226493398914585333e-07, -3.225809830670222096e-07, -3.225121123385425839e-07, -3.224427279198649295e-07, -3.223728300256284538e-07, -3.223024188712852515e-07, -3.222314946730745754e-07, -3.221600576480429008e-07, -3.220881080140366197e-07, -3.220156459896909765e-07, -3.219426717944509789e-07, -3.218691856485582165e-07, -3.217951877730410135e-07, -3.217206783897338576e-07, -3.216456577212648007e-07, -3.215701259910504822e-07, -3.214940834233158228e-07, -3.214175302430711546e-07, -3.213404666761207440e-07, -3.212628929490643274e-07, -3.211848092892945698e-07, -3.211062159249945770e-07, -3.210271130851443536e-07, -3.209475009995058219e-07, -3.208673798986397619e-07, -3.207867500138929472e-07, -3.207056115774054509e-07, -3.206239648221025984e-07, -3.205418099817028028e-07, -3.204591472907051767e-07, -3.203759769844025026e-07, -3.202922992988721274e-07, -3.202081144709786092e-07, -3.201234227383746172e-07, -3.200382243394914558e-07, -3.199525195135513464e-07, -3.198663085005577921e-07, -3.197795915412989666e-07, -3.196923688773468136e-07, -3.196046407510559880e-07, -3.195164074055590389e-07, -3.194276690847747734e-07, -3.193384260334008457e-07, -3.192486784969159801e-07, -3.191584267215782241e-07, -3.190676709544278074e-07, -3.189764114432752300e-07, -3.188846484367157152e-07, -3.187923821841242330e-07, -3.186996129356469770e-07, -3.186063409422132224e-07, -3.185125664555179627e-07, -3.184182897280392201e-07, -3.183235110130286225e-07, -3.182282305645107157e-07, -3.181324486372862450e-07, -3.180361654869281323e-07, -3.179393813697747524e-07, -3.178420965429452860e-07, -3.177443112643276487e-07, -3.176460257925791271e-07, -3.175472403871279134e-07, -3.174479553081735292e-07, -3.173481708166759731e-07, -3.172478871743822430e-07, -3.171471046437854139e-07, -3.170458234881585726e-07, -3.169440439715420586e-07, -3.168417663587321884e-07, -3.167389909152968197e-07, -3.166357179075806454e-07, -3.165319476026703060e-07, -3.164276802684310244e-07, -3.163229161734913589e-07, -3.162176555872264742e-07, -3.161118987797998585e-07, -3.160056460221112298e-07, -3.158988975858353947e-07, -3.157916537434079009e-07, -3.156839147680129148e-07, -3.155756809335979908e-07, -3.154669525148838659e-07, -3.153577297873252840e-07, -3.152480130271492183e-07, -3.151378025113371365e-07, -3.150270985176169014e-07, -3.149159013244889755e-07, -3.148042112111996869e-07, -3.146920284577412820e-07, -3.145793533448699781e-07, -3.144661861540978103e-07, -3.143525271676701328e-07, -3.142383766686143758e-07, -3.141237349406795886e-07, -3.140086022683826028e-07, -3.138929789369886039e-07, -3.137768652324968901e-07, -3.136602614416784065e-07, -3.135431678520417054e-07, -3.134255847518330515e-07, -3.133075124300601394e-07, -3.131889511764696469e-07, -3.130699012815563408e-07, -3.129503630365618593e-07, -3.128303367334605766e-07, -3.127098226649835855e-07, -3.125888211245988972e-07, -3.124673324065216059e-07, -3.123453568057031423e-07, -3.122228946178420729e-07, -3.120999461393664185e-07, -3.119765116674546713e-07, -3.118525915000220829e-07, -3.117281859357203474e-07, -3.116032952739417304e-07, -3.114779198148177454e-07, -3.113520598592061308e-07, -3.112257157087111788e-07, -3.110988876656697059e-07, -3.109715760331520597e-07, -3.108437811149690528e-07, -3.107155032156491470e-07, -3.105867426404704280e-07, -3.104574996954356181e-07, -3.103277746872807586e-07, -3.101975679234712919e-07, -3.100668797122088379e-07, -3.099357103624108653e-07, -3.098040601837347260e-07, -3.096719294865664322e-07, -3.095393185820164207e-07, -3.094062277819225710e-07, -3.092726573988534344e-07, -3.091386077460899697e-07, -3.090040791376518015e-07, -3.088690718882781618e-07, -3.087335863134320722e-07, -3.085976227293053204e-07, -3.084611814527963313e-07, -3.083242628015397600e-07, -3.081868670938875400e-07, -3.080489946489112122e-07, -3.079106457864019247e-07, -3.077718208268732391e-07, -3.076325200915475775e-07, -3.074927439023745928e-07, -3.073524925820179337e-07, -3.072117664538579447e-07, -3.070705658419898662e-07, -3.069288910712291810e-07, -3.067867424670853569e-07, -3.066441203558190210e-07, -3.065010250643656209e-07, -3.063574569203941347e-07, -3.062134162522856836e-07, -3.060689033891162205e-07, -3.059239186606833701e-07, -3.057784623975085472e-07, -3.056325349307904750e-07, -3.054861365924601896e-07, -3.053392677151536176e-07, -3.051919286321923585e-07, -3.050441196776424480e-07, -3.048958411862377015e-07, -3.047470934934364119e-07, -3.045978769354038275e-07, -3.044481918489922458e-07, -3.042980385717651016e-07, -3.041474174420059134e-07, -3.039963287986670382e-07, -3.038447729814211818e-07, -3.036927503306442986e-07, -3.035402611873868464e-07, -3.033873058934310134e-07, -3.032338847912433903e-07, -3.030799982239742295e-07, -3.029256465354853438e-07, -3.027708300703373485e-07, -3.026155491737623967e-07, -3.024598041917250608e-07, -3.023035954708448282e-07, -3.021469233584593645e-07, -3.019897882025947083e-07, -3.018321903519477484e-07, -3.016741301559395336e-07, -3.015156079646640277e-07, -3.013566241288942501e-07, -3.011971790001063104e-07, -3.010372729304639505e-07, -3.008769062728131968e-07, -3.007160793806932138e-07, -3.005547926083133806e-07, -3.003930463105838902e-07, -3.002308408430940444e-07, -3.000681765621175473e-07, -2.999050538246082180e-07, -2.997414729882140186e-07, -2.995774344112408445e-07, -2.994129384526940282e-07, -2.992479854722558404e-07, -2.990825758302854902e-07, -2.989167098878207657e-07, -2.987503880065836989e-07, -2.985836105489573781e-07, -2.984163778780165997e-07, -2.982486903575079106e-07, -2.980805483518498719e-07, -2.979119522261452360e-07, -2.977429023461488646e-07, -2.975733990783074865e-07, -2.974034427897338103e-07, -2.972330338482139355e-07, -2.970621726222013180e-07, -2.968908594808270399e-07, -2.967190947938724399e-07, -2.965468789318054829e-07, -2.963742122657550310e-07, -2.962010951675175144e-07, -2.960275280095571958e-07, -2.958535111650070174e-07, -2.956790450076467898e-07, -2.955041299119390852e-07, -2.953287662530036677e-07, -2.951529544066222042e-07, -2.949766947492434534e-07, -2.947999876579617718e-07, -2.946228335105394014e-07, -2.944452326854200751e-07, -2.942671855616668127e-07, -2.940886925190259781e-07, -2.939097539379026618e-07, -2.937303701993366468e-07, -2.935505416850432250e-07, -2.933702687773887918e-07, -2.931895518593904228e-07, -2.930083913147275203e-07, -2.928267875277090440e-07, -2.926447408833127390e-07, -2.924622517671848181e-07, -2.922793205655828932e-07, -2.920959476654414614e-07, -2.919121334543422059e-07, -2.917278783204956258e-07, -2.915431826527722180e-07, -2.913580468407107352e-07, -2.911724712744529119e-07, -2.909864563448140853e-07, -2.908000024432521732e-07, -2.906131099618443272e-07, -2.904257792933555958e-07, -2.902380108311443210e-07, -2.900498049692400124e-07, -2.898611621023096250e-07, -2.896720826256413595e-07, -2.894825669351729321e-07, -2.892926154275061856e-07, -2.891022284998327626e-07, -2.889114065500118206e-07, -2.887201499765373681e-07, -2.885284591785088836e-07, -2.883363345557121538e-07, -2.881437765085127597e-07, -2.879507854379423146e-07, -2.877573617456528838e-07, -2.875635058339287894e-07, -2.873692181056841757e-07, -2.871744989644711614e-07, -2.869793488144464352e-07, -2.867837680604185304e-07, -2.865877571078206142e-07, -2.863913163626851298e-07, -2.861944462317136232e-07, -2.859971471222088222e-07, -2.857994194420837419e-07, -2.856012635998947716e-07, -2.854026800048164761e-07, -2.852036690666403778e-07, -2.850042311957911560e-07, -2.848043668032880544e-07, -2.846040763007912560e-07, -2.844033601005813422e-07, -2.842022186155237180e-07, -2.840006522591478621e-07, -2.837986614455756999e-07, -2.835962465895282736e-07, -2.833934081063655002e-07, -2.831901464120519723e-07, -2.829864619231647401e-07, -2.827823550568926235e-07, -2.825778262310440471e-07, -2.823728758640136880e-07, -2.821675043748281098e-07, -2.819617121831175992e-07, -2.817554997091179651e-07, -2.815488673736805451e-07, -2.813418155982377940e-07, -2.811343448048534181e-07, -2.809264554161863231e-07, -2.807181478554990316e-07, -2.805094225466585830e-07, -2.803002799141416685e-07, -2.800907203830000091e-07, -2.798807443789128182e-07, -2.796703523281487383e-07, -2.794595446575767993e-07, -2.792483217946710777e-07, -2.790366841674780850e-07, -2.788246322046676434e-07, -2.786121663354950335e-07, -2.783992869898094649e-07, -2.781859945980558760e-07, -2.779722895912795929e-07, -2.777581724010934535e-07, -2.775436434597168774e-07, -2.773287031999893122e-07, -2.771133520552854245e-07, -2.768975904596038795e-07, -2.766814188475313950e-07, -2.764648376542166952e-07, -2.762478473154205383e-07, -2.760304482674809358e-07, -2.758126409473181283e-07, -2.755944257924506264e-07, -2.753758032409485179e-07, -2.751567737314845017e-07, -2.749373377033373816e-07, -2.747174955963151982e-07, -2.744972478508404088e-07, -2.742765949079132529e-07, -2.740555372090886706e-07, -2.738340751965231014e-07, -2.736122093129398088e-07, -2.733899400016399971e-07, -2.731672677064970946e-07, -2.729441928719690352e-07, -2.727207159430507187e-07, -2.724968373653719490e-07, -2.722725575850709618e-07, -2.720478770488919385e-07, -2.718227962041503318e-07, -2.715973154987006247e-07, -2.713714353809858292e-07, -2.711451563000422513e-07, -2.709184787054171692e-07, -2.706914030472621136e-07, -2.704639297762905683e-07, -2.702360593437455718e-07, -2.700077922014939492e-07, -2.697791288019037045e-07, -2.695500695979379353e-07, -2.693206150431118459e-07, -2.690907655915016940e-07, -2.688605216977406084e-07, -2.686298838170284361e-07, -2.683988524050956900e-07, -2.681674279182540009e-07, -2.679356108133727175e-07, -2.677034015478383552e-07, -2.674708005796425815e-07, -2.672378083673090536e-07, -2.670044253698870124e-07, -2.667706520470093577e-07, -2.665364888588478611e-07, -2.663019362661230124e-07, -2.660669947301136023e-07, -2.658316647126164350e-07, -2.655959466760063617e-07, -2.653598410831999642e-07, -2.651233483976229969e-07, -2.648864690833007018e-07, -2.646492036047733698e-07, -2.644115524271055524e-07, -2.641735160159285719e-07, -2.639350948374101873e-07, -2.636962893582512587e-07, -2.634571000456952769e-07, -2.632175273675325453e-07, -2.629775717920602638e-07, -2.627372337881413970e-07, -2.624965138251643878e-07, -2.622554123730510981e-07, -2.620139299022684025e-07, -2.617720668837855721e-07, -2.615298237891317666e-07, -2.612872010903580770e-07, -2.610441992600455721e-07, -2.608008187713045576e-07, -2.605570600977806639e-07, -2.603129237136224473e-07, -2.600684100935297766e-07, -2.598235197127201107e-07, -2.595782530469346396e-07, -2.593326105724488192e-07, -2.590865927660306553e-07, -2.588402001050001542e-07, -2.585934330671881363e-07, -2.583462921309466645e-07, -2.580987777751459746e-07, -2.578508904791848506e-07, -2.576026307229497029e-07, -2.573539989868626902e-07, -2.571049957518935251e-07, -2.568556214994639182e-07, -2.566058767115529805e-07, -2.563557618706502137e-07, -2.561052774597283514e-07, -2.558544239623011166e-07, -2.556032018623820880e-07, -2.553516116444952870e-07, -2.550996537936807373e-07, -2.548473287954608476e-07, -2.545946371358801166e-07, -2.543415793015214385e-07, -2.540881557794115526e-07, -2.538343670571219990e-07, -2.535802136227268735e-07, -2.533256959647723336e-07, -2.530708145723354678e-07, -2.528155699349863905e-07, -2.525599625427916307e-07, -2.523039928863181018e-07, -2.520476614566400901e-07, -2.517909687452875855e-07, -2.515339152443585137e-07, -2.512765014463731519e-07, -2.510187278443889025e-07, -2.507605949319545524e-07, -2.505021032030809452e-07, -2.502432531522909561e-07, -2.499840452746285441e-07, -2.497244800655653669e-07, -2.494645580211028486e-07, -2.492042796377298807e-07, -2.489436454123822172e-07, -2.486826558425531720e-07, -2.484213114261475578e-07, -2.481596126615974657e-07, -2.478975600478159953e-07, -2.476351540841582916e-07, -2.473723952705231890e-07, -2.471092841072589787e-07, -2.468458210951718260e-07, -2.465820067355782338e-07, -2.463178415302719549e-07, -2.460533259814815878e-07, -2.457884605919744438e-07, -2.455232458649610974e-07, -2.452576823041068735e-07, -2.449917704135795997e-07, -2.447255106980086835e-07, -2.444589036624958589e-07, -2.441919498126233396e-07, -2.439246496544096672e-07, -2.436570036943757795e-07, -2.433890124395079531e-07, -2.431206763972185222e-07, -2.428519960754484755e-07, -2.425829719825711061e-07, -2.423136046274018581e-07, -2.420438945192525902e-07, -2.417738421678852000e-07, -2.415034480835213124e-07, -2.412327127768582142e-07, -2.409616367590147498e-07, -2.406902205416017311e-07, -2.404184646366782092e-07, -2.401463695567583035e-07, -2.398739358148109903e-07, -2.396011639242714845e-07, -2.393280543989949175e-07, -2.390546077533242590e-07, -2.387808245020401826e-07, -2.385067051603756778e-07, -2.382322502440126086e-07, -2.379574602690937305e-07, -2.376823357521760780e-07, -2.374068772102962647e-07, -2.371310851609278938e-07, -2.368549601219874611e-07, -2.365785026118480130e-07, -2.363017131492917921e-07, -2.360245922535767032e-07, -2.357471404443912084e-07, -2.354693582418636976e-07, -2.351912461665632029e-07, -2.349128047395079224e-07, -2.346340344821192946e-07, -2.343549359162890466e-07, -2.340755095643339045e-07, -2.337957559490055986e-07, -2.335156755934895134e-07, -2.332352690214136878e-07, -2.329545367568070190e-07, -2.326734793241610695e-07, -2.323920972483866564e-07, -2.321103910548238840e-07, -2.318283612692517783e-07, -2.315460084178429975e-07, -2.312633330272183859e-07, -2.309803356244602887e-07, -2.306970167370044754e-07, -2.304133768927565276e-07, -2.301294166200450671e-07, -2.298451364475849361e-07, -2.295605369045468659e-07, -2.292756185205085870e-07, -2.289903818254658408e-07, -2.287048273498472289e-07, -2.284189556244595797e-07, -2.281327671805491993e-07, -2.278462625498129887e-07, -2.275594422642916652e-07, -2.272723068564853553e-07, -2.269848568593045201e-07, -2.266970928060268625e-07, -2.264090152304085532e-07, -2.261206246665796482e-07, -2.258319216490543862e-07, -2.255429067127900305e-07, -2.252535803931503144e-07, -2.249639432258550954e-07, -2.246739957471148223e-07, -2.243837384934566279e-07, -2.240931720018592726e-07, -2.238022968097027192e-07, -2.235111134547186611e-07, -2.232196224751107741e-07, -2.229278244094456082e-07, -2.226357197966617464e-07, -2.223433091761322465e-07, -2.220505930876243543e-07, -2.217575720712521225e-07, -2.214642466676077541e-07, -2.211706174175911367e-07, -2.208766848625423769e-07, -2.205824495441798874e-07, -2.202879120046138600e-07, -2.199930727863411305e-07, -2.196979324322580434e-07, -2.194024914856131232e-07, -2.191067504900762937e-07, -2.188107099897026667e-07, -2.185143705288816673e-07, -2.182177326524607802e-07, -2.179207969056309620e-07, -2.176235638339407230e-07, -2.173260339833552873e-07, -2.170282079002058502e-07, -2.167300861312023629e-07, -2.164316692234445708e-07, -2.161329577243700000e-07, -2.158339521818310906e-07, -2.155346531440390273e-07, -2.152350611595800189e-07, -2.149351767774121744e-07, -2.146350005468771502e-07, -2.143345330176498835e-07, -2.140337747398099285e-07, -2.137327262637969872e-07, -2.134313881404147214e-07, -2.131297609208339018e-07, -2.128278451566036321e-07, -2.125256413995992027e-07, -2.122231502020980597e-07, -2.119203721167261236e-07, -2.116173076964710511e-07, -2.113139574946962901e-07, -2.110103220650831380e-07, -2.107064019617113149e-07, -2.104021977390051778e-07, -2.100977099517453932e-07, -2.097929391550682490e-07, -2.094878859044772222e-07, -2.091825507557925533e-07, -2.088769342652238799e-07, -2.085710369893197059e-07, -2.082648594849806887e-07, -2.079584023094548755e-07, -2.076516660203533199e-07, -2.073446511755957660e-07, -2.070373583334885491e-07, -2.067297880526697767e-07, -2.064219408921217695e-07, -2.061138174111842428e-07, -2.058054181695007588e-07, -2.054967437270823595e-07, -2.051877946443202460e-07, -2.048785714818666113e-07, -2.045690748007667511e-07, -2.042593051624008304e-07, -2.039492631284483872e-07, -2.036389492609638778e-07, -2.033283641223228895e-07, -2.030175082752357996e-07, -2.027063822827575424e-07, -2.023949867082378992e-07, -2.020833221153815051e-07, -2.017713890682637308e-07, -2.014591881312088426e-07, -2.011467198689227743e-07, -2.008339848464377794e-07, -2.005209836290595174e-07, -2.002077167824959360e-07, -1.998941848727432118e-07, -1.995803884660909393e-07, -1.992663281291916135e-07, -1.989520044290177756e-07, -1.986374179328088085e-07, -1.983225692082178972e-07, -1.980074588231198849e-07, -1.976920873457633677e-07, -1.973764553447109530e-07, -1.970605633887867958e-07, -1.967444120472098747e-07, -1.964280018894710125e-07, -1.961113334853472767e-07, -1.957944074049653736e-07, -1.954772242187649886e-07, -1.951597844974384079e-07, -1.948420888120802851e-07, -1.945241377339994140e-07, -1.942059318348624072e-07, -1.938874716866295328e-07, -1.935687578615633439e-07, -1.932497909322293666e-07, -1.929305714715109233e-07, -1.926111000525491519e-07, -1.922913772488269683e-07, -1.919714036341256027e-07, -1.916511797824708925e-07, -1.913307062682660547e-07, -1.910099836661691311e-07, -1.906890125511081814e-07, -1.903677934983442290e-07, -1.900463270834178444e-07, -1.897246138821619039e-07, -1.894026544707128923e-07, -1.890804494254579101e-07, -1.887579993231128656e-07, -1.884353047406668086e-07, -1.881123662553987918e-07, -1.877891844448710947e-07, -1.874657598869450523e-07, -1.871420931597261566e-07, -1.868181848416420108e-07, -1.864940355113901301e-07, -1.861696457479467037e-07, -1.858450161305701149e-07, -1.855201472388105767e-07, -1.851950396524541210e-07, -1.848696939516054232e-07, -1.845441107166311033e-07, -1.842182905281728557e-07, -1.838922339671589626e-07, -1.835659416147514613e-07, -1.832394140524235674e-07, -1.829126518619050684e-07, -1.825856556251975169e-07, -1.822584259245695456e-07, -1.819309633425716373e-07, -1.816032684619802739e-07, -1.812753418658777692e-07, -1.809471841375990908e-07, -1.806187958607421839e-07, -1.802901776191806231e-07, -1.799613299970090855e-07, -1.796322535786241093e-07, -1.793029489486683223e-07, -1.789734166920417444e-07, -1.786436573939044347e-07, -1.783136716396854910e-07, -1.779834600150266167e-07, -1.776530231058546472e-07, -1.773223614983893592e-07, -1.769914757790210743e-07, -1.766603665344462634e-07, -1.763290343516120133e-07, -1.759974798176749456e-07, -1.756657035200795406e-07, -1.753337060465053836e-07, -1.750014879848772755e-07, -1.746690499233808241e-07, -1.743363924504026223e-07, -1.740035161546013457e-07, -1.736704216249211467e-07, -1.733371094504623228e-07, -1.730035802206210241e-07, -1.726698345250340907e-07, -1.723358729535197069e-07, -1.720016960962316675e-07, -1.716673045434617542e-07, -1.713326988857943191e-07, -1.709978797140322224e-07, -1.706628476192270874e-07, -1.703276031926048937e-07, -1.699921470257229695e-07, -1.696564797102689804e-07, -1.693206018382168627e-07, -1.689845140017678220e-07, -1.686482167932958587e-07, -1.683117108054831345e-07, -1.679749966311963054e-07, -1.676380748634968184e-07, -1.673009460957120361e-07, -1.669636109213913758e-07, -1.666260699342476001e-07, -1.662883237283151853e-07, -1.659503728977458420e-07, -1.656122180369665669e-07, -1.652738597406223880e-07, -1.649352986035152993e-07, -1.645965352207495797e-07, -1.642575701875994702e-07, -1.639184040995233890e-07, -1.635790375522361138e-07, -1.632394711416608190e-07, -1.628997054638750241e-07, -1.625597411152493224e-07, -1.622195786923207752e-07, -1.618792187918036329e-07, -1.615386620106599291e-07, -1.611979089460438683e-07, -1.608569601953124663e-07, -1.605158163560387325e-07, -1.601744780259558711e-07, -1.598329458030387292e-07, -1.594912202854499039e-07, -1.591493020715471276e-07, -1.588071917598901763e-07, -1.584648899492451319e-07, -1.581223972385335328e-07, -1.577797142269118635e-07, -1.574368415137183765e-07, -1.570937796984812183e-07, -1.567505293809367996e-07, -1.564070911609651300e-07, -1.560634656386830174e-07, -1.557196534143776029e-07, -1.553756550885256040e-07, -1.550314712617881005e-07, -1.546871025350278980e-07, -1.543425495092457101e-07, -1.539978127856713725e-07, -1.536528929657016393e-07, -1.533077906509144505e-07, -1.529625064430669728e-07, -1.526170409441111110e-07, -1.522713947561322837e-07, -1.519255684814367996e-07, -1.515795627224926978e-07, -1.512333780819418182e-07, -1.508870151626172180e-07, -1.505404745674778184e-07, -1.501937568997002546e-07, -1.498468627626164335e-07, -1.494997927597284360e-07, -1.491525474947074059e-07, -1.488051275714059898e-07, -1.484575335938008456e-07, -1.481097661660775570e-07, -1.477618258925715531e-07, -1.474137133777824816e-07, -1.470654292263720646e-07, -1.467169740431791335e-07, -1.463683484331420196e-07, -1.460195530014657902e-07, -1.456705883534069434e-07, -1.453214550944402735e-07, -1.449721538301966407e-07, -1.446226851664179193e-07, -1.442730497090305841e-07, -1.439232480641578595e-07, -1.435732808379870270e-07, -1.432231486369162791e-07, -1.428728520674944745e-07, -1.425223917363582719e-07, -1.421717682503990490e-07, -1.418209822165498202e-07, -1.414700342419497731e-07, -1.411189249338678237e-07, -1.407676548997337184e-07, -1.404162247470582276e-07, -1.400646350836004347e-07, -1.397128865171551042e-07, -1.393609796557166888e-07, -1.390089151074195076e-07, -1.386566934804744566e-07, -1.383043153833206277e-07, -1.379517814244882220e-07, -1.375990922126109902e-07, -1.372462483565028101e-07, -1.368932504651093521e-07, -1.365400991474485496e-07, -1.361867950127746313e-07, -1.358333386703648813e-07, -1.354797307296880132e-07, -1.351259718003380218e-07, -1.347720624919763207e-07, -1.344180034144802639e-07, -1.340637951778068793e-07, -1.337094383920056539e-07, -1.333549336672942372e-07, -1.330002816140137335e-07, -1.326454828425619193e-07, -1.322905379635492290e-07, -1.319354475876586243e-07, -1.315802123256594114e-07, -1.312248327884834473e-07, -1.308693095871622742e-07, -1.305136433328421015e-07, -1.301578346367979932e-07, -1.298018841103711882e-07, -1.294457923650594938e-07, -1.290895600124559820e-07, -1.287331876642632571e-07, -1.283766759322919462e-07, -1.280200254284739876e-07, -1.276632367648037883e-07, -1.273063105534246741e-07, -1.269492474065694918e-07, -1.265920479365741084e-07, -1.262347127558914404e-07, -1.258772424770299379e-07, -1.255196377126428935e-07, -1.251618990754680650e-07, -1.248040271783415189e-07, -1.244460226341950100e-07, -1.240878860560722866e-07, -1.237296180570650869e-07, -1.233712192504057036e-07, -1.230126902494031122e-07, -1.226540316674581650e-07, -1.222952441180638024e-07, -1.219363282148158796e-07, -1.215772845713538474e-07, -1.212181138014508025e-07, -1.208588165189507540e-07, -1.204993933377835529e-07, -1.201398448719784438e-07, -1.197801717356027880e-07, -1.194203745428526428e-07, -1.190604539079885856e-07, -1.187004104453534222e-07, -1.183402447693683751e-07, -1.179799574945486478e-07, -1.176195492354404266e-07, -1.172590206067119896e-07, -1.168983722230929191e-07, -1.165376046993861186e-07, -1.161767186504675348e-07, -1.158157146913008753e-07, -1.154545934368591515e-07, -1.150933555022943901e-07, -1.147320015027180527e-07, -1.143705320533735530e-07, -1.140089477695698437e-07, -1.136472492666360606e-07, -1.132854371599972796e-07, -1.129235120651888360e-07, -1.125614745977163267e-07, -1.121993253732091077e-07, -1.118370650073570188e-07, -1.114746941158492114e-07, -1.111122133145412391e-07, -1.107496232192373571e-07, -1.103869244458618612e-07, -1.100241176103941175e-07, -1.096612033288216447e-07, -1.092981822172170751e-07, -1.089350548917528323e-07, -1.085718219685589217e-07, -1.082084840638786132e-07, -1.078450417940048867e-07, -1.074814957752161905e-07, -1.071178466239338034e-07, -1.067540949565772312e-07, -1.063902413895812657e-07, -1.060262865394717945e-07, -1.056622310228177848e-07, -1.052980754561683249e-07, -1.049338204562243736e-07, -1.045694666396166918e-07, -1.042050146230782138e-07, -1.038404650233804401e-07, -1.034758184572700694e-07, -1.031110755416235549e-07, -1.027462368933061800e-07, -1.023813031291852525e-07, -1.020162748662093163e-07, -1.016511527213430222e-07, -1.012859373115824272e-07, -1.009206292539697383e-07, -1.005552291655287796e-07, -1.001897376633591843e-07, -9.982415536457146489e-08, -9.945848288630248433e-08, -9.909272084571449025e-08, -9.872686986000977903e-08, -9.836093054636486545e-08, -9.799490352202811653e-08, -9.762878940425108891e-08, -9.726258881030650178e-08, -9.689630235748541793e-08, -9.652993066311329759e-08, -9.616347434448431374e-08, -9.579693401895629917e-08, -9.543031030388725872e-08, -9.506360381664796890e-08, -9.469681517463791270e-08, -9.432994499522128889e-08, -9.396299389582046358e-08, -9.359596249385193982e-08, -9.322885140674067778e-08, -9.286166125192063731e-08, -9.249439264684696736e-08, -9.212704620893329901e-08, -9.175962255564641466e-08, -9.139212230443998094e-08, -9.102454607277086732e-08, -9.065689447809747851e-08, -9.028916813789484225e-08, -8.992136766959032744e-08, -8.955349369065702954e-08, -8.918554681855000481e-08, -8.881752767072100085e-08, -8.844943686463354425e-08, -8.808127501769716329e-08, -8.771304274736319526e-08, -8.734474067106025314e-08, -8.697636940620751343e-08, -8.660792957021519260e-08, -8.623942178049881435e-08, -8.587084665441446444e-08, -8.550220480935355259e-08, -8.513349686267850408e-08, -8.476472343173635205e-08, -8.439588513387563838e-08, -8.402698258637928639e-08, -8.365801640654532039e-08, -8.328898721170122559e-08, -8.291989561905816571e-08, -8.255074224587123110e-08, -8.218152770937379364e-08, -8.181225262672902736e-08, -8.144291761510757077e-08, -8.107352329170407046e-08, -8.070407027359137235e-08, -8.033455917787957856e-08, -7.996499062165102440e-08, -7.959536522189472600e-08, -7.922568359568412483e-08, -7.885594635994767415e-08, -7.848615413164699385e-08, -7.811630752771104012e-08, -7.774640716498689811e-08, -7.737645366031866191e-08, -7.700644763056343546e-08, -7.663638969244412097e-08, -7.626628046271182416e-08, -7.589612055807758876e-08, -7.552591059514818080e-08, -7.515565119060313173e-08, -7.478534296096689980e-08, -7.441498652278552936e-08, -7.404458249254528277e-08, -7.367413148670406002e-08, -7.330363412160882624e-08, -7.293309101367311807e-08, -7.256250277914927119e-08, -7.219187003430575462e-08, -7.182119339536091683e-08, -7.145047347841749954e-08, -7.107971089962374602e-08, -7.070890627502679823e-08, -7.033806022058677870e-08, -6.996717335225792046e-08, -6.959624628592251166e-08, -6.922527963740578487e-08, -6.885427402249153418e-08, -6.848323005685559672e-08, -6.811214835616331433e-08, -6.774102953600234004e-08, -6.736987421189863910e-08, -6.699868299931544333e-08, -6.662745651366816692e-08, -6.625619537025857607e-08, -6.588490018437124484e-08, -6.551357157120843953e-08, -6.514221014590357851e-08, -6.477081652352151021e-08, -6.439939131907364058e-08, -6.402793514745154687e-08, -6.365644862352396290e-08, -6.328493236207028700e-08, -6.291338697779588152e-08, -6.254181308534821940e-08, -6.217021129924957152e-08, -6.179858223399424345e-08, -6.142692650398230833e-08, -6.105524472353550199e-08, -6.068353750689525097e-08, -6.031180546823836904e-08, -5.994004922161172986e-08, -5.956826938102755149e-08, -5.919646656039816171e-08, -5.882464137355088056e-08, -5.845279443422786158e-08, -5.808092635610010093e-08, -5.770903775270230849e-08, -5.733712923752899976e-08, -5.696520142396915527e-08, -5.659325492532051417e-08, -5.622129035480570103e-08, -5.584930832550533005e-08, -5.547730945043928049e-08, -5.510529434258156614e-08, -5.473326361471210448e-08, -5.436121787958039262e-08, -5.398915774983754609e-08, -5.361708383798701880e-08, -5.324499675648192570e-08, -5.287289711765821330e-08, -5.250078553375003195e-08, -5.212866261690552505e-08, -5.175652897912038994e-08, -5.138438523231782984e-08, -5.101223198836512396e-08, -5.064006985892446363e-08, -5.026789945561583415e-08, -4.989572138995138952e-08, -4.952353627328377687e-08, -4.915134471688819938e-08, -4.877914733197802679e-08, -4.840694472955523461e-08, -4.803473752057416595e-08, -4.766252631587457624e-08, -4.729031172611537278e-08, -4.691809436195369601e-08, -4.654587483381454637e-08, -4.617365375207048109e-08, -4.580143172697439413e-08, -4.542920936860972653e-08, -4.505698728697117940e-08, -4.468476609198097298e-08, -4.431254639333906077e-08, -4.394032880068705686e-08, -4.356811392354122772e-08, -4.319590237122632433e-08, -4.282369475305447822e-08, -4.245149167809493421e-08, -4.207929375535324422e-08, -4.170710159368884036e-08, -4.133491580182972568e-08, -4.096273698837174622e-08, -4.059056576179485672e-08, -4.021840273039502048e-08, -3.984624850238278282e-08, -3.947410368583270718e-08, -3.910196888861657204e-08, -3.872984471856717910e-08, -3.835773178332864688e-08, -3.798563069037306015e-08, -3.761354204708056756e-08, -3.724146646067303506e-08, -3.686940453822985504e-08, -3.649735688670291494e-08, -3.612532411285019123e-08, -3.575330682333326404e-08, -3.538130562466699814e-08, -3.500932112315320966e-08, -3.463735392504358098e-08, -3.426540463639074171e-08, -3.389347386306434252e-08, -3.352156221083152984e-08, -3.314967028529077144e-08, -3.277779869188699050e-08, -3.240594803591090390e-08, -3.203411892251438789e-08, -3.166231195664335740e-08, -3.129052774313601516e-08, -3.091876688665595604e-08, -3.054702999170742681e-08, -3.017531766265106909e-08, -2.980363050363695738e-08, -2.943196911870271596e-08, -2.906033411170613011e-08, -2.868872608634120665e-08, -2.831714564613687694e-08, -2.794559339447257433e-08, -2.757406993451174207e-08, -2.720257586929887155e-08, -2.683111180169379764e-08, -2.645967833438621079e-08, -2.608827606991158190e-08, -2.571690561058440223e-08, -2.534556755859587670e-08, -2.497426251594723335e-08, -2.460299108446494672e-08, -2.423175386580041692e-08, -2.386055146144461073e-08, -2.348938447266197646e-08, -2.311825350057142830e-08, -2.274715914616185093e-08, -2.237610201014337579e-08, -2.200508269311042830e-08, -2.163410179547546736e-08, -2.126315991741851414e-08, -2.089225765898471965e-08, -2.052139562001781645e-08, -2.015057440017557693e-08, -1.977979459894530482e-08, -1.940905681557704198e-08, -1.903836164916488022e-08, -1.866770969866271091e-08, -1.829710156273478974e-08, -1.792653783991949869e-08, -1.755601912856278111e-08, -1.718554602676748525e-08, -1.681511913249148764e-08, -1.644473904348056579e-08, -1.607440635728429329e-08, -1.570412167125488504e-08, -1.533388558256256959e-08, -1.496369868811276188e-08, -1.459356158472568224e-08, -1.422347486890544885e-08, -1.385343913701980927e-08, -1.348345498523358048e-08, -1.311352300945835964e-08, -1.274364380543367378e-08, -1.237381796874262677e-08, -1.200404609466289267e-08, -1.163432877833028406e-08, -1.126466661467188936e-08, -1.089506019833954108e-08, -1.052551012388973421e-08, -1.015601698555231838e-08, -9.786581377410589958e-09, -9.417203893334553510e-09, -9.047885126914189788e-09, -8.678625671622982738e-09, -8.309426120668942617e-09, -7.940287067010206615e-09, -7.571209103436276264e-09, -7.202192822517704181e-09, -6.833238816539481208e-09, -6.464347677664455872e-09, -6.095519997784437735e-09, -5.726756368535824496e-09, -5.358057381380665685e-09, -4.989423627540212766e-09, -4.620855698010195509e-09, -4.252354183576493751e-09, -3.883919674748437692e-09, -3.515552761856451597e-09, -3.147254035001802579e-09, -2.779024083990088660e-09, -2.410863498494431574e-09, -2.042772867906808431e-09, -1.674752781353555764e-09, -1.306803827776523393e-09, -9.389265958664857676e-10, -5.711216740786416745e-10, -2.033896506480860577e-10, 1.642688864767095719e-10, 5.318533495364073614e-10, 8.993631510273349069e-10, 1.266797703685995909e-09, 1.634156420489999302e-09, 2.001438714642565571e-09, 2.368643999639037648e-09, 2.735771689169407924e-09, 3.102821197184863886e-09, 3.469791937882239609e-09, 3.836683325704980658e-09, 4.203494775327661751e-09, 4.570225701722411430e-09, 4.936875520061558280e-09, 5.303443645784065109e-09, 5.669929494580027589e-09, 6.036332482375313508e-09, 6.402652025397804222e-09, 6.768887540080218303e-09, 7.135038443126400140e-09, 7.501104151495939343e-09, 7.867084082405030182e-09, 8.232977653311007447e-09, 8.598784281978808754e-09, 8.964503386383528535e-09, 9.330134384776949828e-09, 9.695676695671908910e-09, 1.006112973784341695e-08, 1.042649293031298495e-08, 1.079176569241508768e-08, 1.115694744369994020e-08, 1.152203760399975008e-08, 1.188703559341330034e-08, 1.225194083229047300e-08, 1.261675274129857564e-08, 1.298147074134147296e-08, 1.334609425354427400e-08, 1.371062269940097895e-08, 1.407505550061250553e-08, 1.443939207915239700e-08, 1.480363185731703524e-08, 1.516777425762844050e-08, 1.553181870290056158e-08, 1.589576461622372821e-08, 1.625961142096560389e-08, 1.662335854075596582e-08, 1.698700539956863217e-08, 1.735055142154361491e-08, 1.771399603121564669e-08, 1.807733865333635352e-08, 1.844057871293983368e-08, 1.880371563539273850e-08, 1.916674884631353297e-08, 1.952967777155737483e-08, 1.989250183736320385e-08, 2.025522047019190890e-08, 2.061783309679257852e-08, 2.098033914426811284e-08, 2.134273803989746250e-08, 2.170502921136402316e-08, 2.206721208657775192e-08, 2.242928609374109033e-08, 2.279125066141460613e-08, 2.315310521835582870e-08, 2.351484919366592140e-08, 2.387648201677460043e-08, 2.423800311735958726e-08, 2.459941192539658693e-08, 2.496070787122461210e-08, 2.532189038538474246e-08, 2.568295889876721391e-08, 2.604391284259601651e-08, 2.640475164834836345e-08, 2.676547474782079606e-08, 2.712608157311369563e-08, 2.748657155661606000e-08, 2.784694413107102952e-08, 2.820719872947954032e-08, 2.856733478514998495e-08, 2.892735173176367547e-08, 2.928724900321387405e-08, 2.964702603375242899e-08, 3.000668225797442221e-08, 3.036621711073800554e-08, 3.072563002723008547e-08, 3.108492044295095413e-08, 3.144408779369911883e-08, 3.180313151563670883e-08, 3.216205104519336360e-08, 3.252084581913170586e-08, 3.287951527453239268e-08, 3.323805884879456555e-08, 3.359647597962041184e-08, 3.395476610508132603e-08, 3.431292866352122882e-08, 3.467096309362224529e-08, 3.502886883438938552e-08, 3.538664532515180850e-08, 3.574429200554666895e-08, 3.610180831558538444e-08, 3.645919369555703390e-08, 3.681644758609428062e-08, 3.717356942815777492e-08, 3.753055866302069582e-08, 3.788741473233494532e-08, 3.824413707803413668e-08, 3.860072514239968281e-08, 3.895717836804546368e-08, 3.931349619791814396e-08, 3.966967807528274694e-08, 4.002572344378722102e-08, 4.038163174736680432e-08, 4.073740243030997418e-08, 4.109303493724197634e-08, 4.144852871312668441e-08, 4.180388320325100259e-08, 4.215909785328990188e-08, 4.251417210921079144e-08, 4.286910541733895843e-08, 4.322389722434247367e-08, 4.357854697721621051e-08, 4.393305412334764868e-08, 4.428741811043680320e-08, 4.464163838648197706e-08, 4.499571439992401485e-08, 4.534964559948723930e-08, 4.570343143424413012e-08, 4.605707135366498136e-08, 4.641056480752149843e-08, 4.676391124595266157e-08, 4.711711011944892335e-08, 4.747016087883739887e-08, 4.782306297534635272e-08, 4.817581586052647789e-08, 4.852841898623570210e-08, 4.888087180478345471e-08, 4.923317376877193409e-08, 4.958532433116105119e-08, 4.993732294533266512e-08, 5.028916906493245267e-08, 5.064086214401330169e-08, 5.099240163702185127e-08, 5.134378699871779856e-08, 5.169501768422346346e-08, 5.204609314908812343e-08, 5.239701284911424597e-08, 5.274777624057990098e-08, 5.309838278006586012e-08, 5.344883192451919711e-08, 5.379912313131839676e-08, 5.414925585811428481e-08, 5.449922956297497648e-08, 5.484904370436975632e-08, 5.519869774109105198e-08, 5.554819113230309223e-08, 5.589752333760518962e-08, 5.624669381685999131e-08, 5.659570203041406494e-08, 5.694454743892563999e-08, 5.729322950344439425e-08, 5.764174768539632637e-08, 5.799010144658480142e-08, 5.833829024917527782e-08, 5.868631355575917891e-08, 5.903417082926085832e-08, 5.938186153298453745e-08, 5.972938513067883887e-08, 6.007674108637999914e-08, 6.042392886455440859e-08, 6.077094793008335148e-08, 6.111779774818539003e-08, 6.146447778448088447e-08, 6.181098750497505237e-08, 6.215732637604495879e-08, 6.250349386450242167e-08, 6.284948943750042795e-08, 6.319531256259693896e-08, 6.354096270774000115e-08, 6.388643934126918875e-08, 6.423174193189900717e-08, 6.457686994878390278e-08, 6.492182286142483784e-08, 6.526660013973205036e-08, 6.561120125401074714e-08, 6.595562567496179203e-08, 6.629987287366677695e-08, 6.664394232165199934e-08, 6.698783349079400478e-08, 6.733154585338405411e-08, 6.767507888211316804e-08, 6.801843205005713195e-08, 6.836160483073940142e-08, 6.870459669803853733e-08, 6.904740712625222304e-08, 6.939003559008078699e-08, 6.973248156462922760e-08, 7.007474452539194020e-08, 7.041682394831596662e-08, 7.075871930970809942e-08, 7.110043008629844916e-08, 7.144195575522489333e-08, 7.178329579401936501e-08, 7.212444968066963339e-08, 7.246541689352771828e-08, 7.280619691137221322e-08, 7.314678921339396534e-08, 7.348719327919655180e-08, 7.382740858878158908e-08, 7.416743462261255160e-08, 7.450727086153568005e-08, 7.484691678676756701e-08, 7.518637188003414981e-08, 7.552563562341730490e-08, 7.586470749941645629e-08, 7.620358699099671079e-08, 7.654227358149755056e-08, 7.688076675469327682e-08, 7.721906599477988086e-08, 7.755717078635990330e-08, 7.789508061450541895e-08, 7.823279496468091711e-08, 7.857031332272916670e-08, 7.890763517501020905e-08, 7.924476000824915673e-08, 7.958168730959687544e-08, 7.991841656669386890e-08, 8.025494726750080602e-08, 8.059127890051480550e-08, 8.092741095460144540e-08, 8.126334291907186954e-08, 8.159907428365381641e-08, 8.193460453856724325e-08, 8.226993317435812236e-08, 8.260505968211304480e-08, 8.293998355329153439e-08, 8.327470427978798692e-08, 8.360922135399362273e-08, 8.394353426864440457e-08, 8.427764251696000392e-08, 8.461154559262752214e-08, 8.494524298972770587e-08, 8.527873420278050160e-08, 8.561201872680661111e-08, 8.594509605716171121e-08, 8.627796568974903261e-08, 8.661062712085425461e-08, 8.694307984722052047e-08, 8.727532336603518932e-08, 8.760735717493049783e-08, 8.793918077196800931e-08, 8.827079365570224698e-08, 8.860219532508753361e-08, 8.893338527952710621e-08, 8.926436301893262007e-08, 8.959512804357344311e-08, 8.992567985421465600e-08, 9.025601795210179242e-08, 9.058614183888657804e-08, 9.091605101668744044e-08, 9.124574498807542720e-08, 9.157522325606098426e-08, 9.190448532415248055e-08, 9.223353069626863280e-08, 9.256235887679881685e-08, 9.289096937058860198e-08, 9.321936168294037292e-08, 9.354753531959968469e-08, 9.387548978681573281e-08, 9.420322459125142220e-08, 9.453073924004473740e-08, 9.485803324079452828e-08, 9.518510610156032476e-08, 9.551195733084955190e-08, 9.583858643767700747e-08, 9.616499293147573826e-08, 9.649117632215912491e-08, 9.681713612010439123e-08, 9.714287183613958108e-08, 9.746838298160413448e-08, 9.779366906825980353e-08, 9.811872960835097707e-08, 9.844356411459022816e-08, 9.876817210016051108e-08, 9.909255307869814126e-08, 9.941670656435576689e-08, 9.974063207171227900e-08, 1.000643291158335729e-07, 1.003877972122585456e-07, 1.007110358769839154e-07, 1.010340446265263068e-07, 1.013568229778312473e-07, 1.016793704483356100e-07, 1.020016865559518368e-07, 1.023237708190701891e-07, 1.026456227565424290e-07, 1.029672418877444333e-07, 1.032886277325001460e-07, 1.036097798110702494e-07, 1.039306976442834538e-07, 1.042513807533909274e-07, 1.045718286601253499e-07, 1.048920408867464410e-07, 1.052120169559525644e-07, 1.055317563909407345e-07, 1.058512587153927202e-07, 1.061705234534607378e-07, 1.064895501298267431e-07, 1.068083382696302354e-07, 1.071268873984534080e-07, 1.074451970424553231e-07, 1.077632667282242901e-07, 1.080810959828378065e-07, 1.083986843339230412e-07, 1.087160313094944425e-07, 1.090331364381604008e-07, 1.093499992489628946e-07, 1.096666192714510768e-07, 1.099829960356534944e-07, 1.102991290721499938e-07, 1.106150179119146225e-07, 1.109306620865174216e-07, 1.112460611279671952e-07, 1.115612145687688045e-07, 1.118761219419832670e-07, 1.121907827810820936e-07, 1.125051966200791348e-07, 1.128193629935174774e-07, 1.131332814363955417e-07, 1.134469514842136413e-07, 1.137603726730304302e-07, 1.140735445393058972e-07, 1.143864666201040714e-07, 1.146991384529342964e-07, 1.150115595758098736e-07, 1.153237295273074744e-07, 1.156356478464215952e-07, 1.159473140726964175e-07, 1.162587277462111562e-07, 1.165698884075101400e-07, 1.168807955976444482e-07, 1.171914488582326725e-07, 1.175018477313157957e-07, 1.178119917594875164e-07, 1.181218804858816752e-07, 1.184315134540995957e-07, 1.187408902082691251e-07, 1.190500102930308832e-07, 1.193588732535240214e-07, 1.196674786354444568e-07, 1.199758259849599697e-07, 1.202839148487681730e-07, 1.205917447740813843e-07, 1.208993153086288230e-07, 1.212066260006428728e-07, 1.215136763989158588e-07, 1.218204660527155566e-07, 1.221269945118441665e-07, 1.224332613266223787e-07, 1.227392660478770916e-07, 1.230450082269987718e-07, 1.233504874158566711e-07, 1.236557031668569279e-07, 1.239606550329274793e-07, 1.242653425675207347e-07, 1.245697653245989115e-07, 1.248739228586904949e-07, 1.251778147248069115e-07, 1.254814404785007357e-07, 1.257847996758499145e-07, 1.260878918734605196e-07, 1.263907166284508662e-07, 1.266932734985122076e-07, 1.269955620418207501e-07, 1.272975818170971037e-07, 1.275993323835918303e-07, 1.279008133010729227e-07, 1.282020241298815239e-07, 1.285029644308483621e-07, 1.288036337653529897e-07, 1.291040316953055194e-07, 1.294041577831523419e-07, 1.297040115918587875e-07, 1.300035926849687103e-07, 1.303029006265187258e-07, 1.306019349810967620e-07, 1.309006953138265216e-07, 1.311991811903710823e-07, 1.314973921769168819e-07, 1.317953278402444198e-07, 1.320929877475773259e-07, 1.323903714667757222e-07, 1.326874785661853720e-07, 1.329843086146923132e-07, 1.332808611817684657e-07, 1.335771358373977281e-07, 1.338731321520674010e-07, 1.341688496968901337e-07, 1.344642880434685841e-07, 1.347594467639497080e-07, 1.350543254310806637e-07, 1.353489236180598396e-07, 1.356432408987270929e-07, 1.359372768474148303e-07, 1.362310310390173326e-07, 1.365245030489632262e-07, 1.368176924532852041e-07, 1.371105988284693602e-07, 1.374032217516477305e-07, 1.376955608004495064e-07, 1.379876155530540007e-07, 1.382793855882473194e-07, 1.385708704852864130e-07, 1.388620698240218167e-07, 1.391529831848858716e-07, 1.394436101488226061e-07, 1.397339502973334226e-07, 1.400240032125275757e-07, 1.403137684769755821e-07, 1.406032456738995126e-07, 1.408924343870248662e-07, 1.411813342006340929e-07, 1.414699446996226827e-07, 1.417582654693626609e-07, 1.420462960958283730e-07, 1.423340361655788549e-07, 1.426214852656941743e-07, 1.429086429838152929e-07, 1.431955089081988334e-07, 1.434820826275827450e-07, 1.437683637313081964e-07, 1.440543518093070826e-07, 1.443400464520347649e-07, 1.446254472505236723e-07, 1.449105537963722635e-07, 1.451953656817307334e-07, 1.454798824993559641e-07, 1.457641038425302100e-07, 1.460480293051189606e-07, 1.463316584815531527e-07, 1.466149909668329295e-07, 1.468980263565141140e-07, 1.471807642467620227e-07, 1.474632042342715790e-07, 1.477453459163223976e-07, 1.480271888907639345e-07, 1.483087327560063815e-07, 1.485899771110696619e-07, 1.488709215555076737e-07, 1.491515656894606469e-07, 1.494319091136432326e-07, 1.497119514293434433e-07, 1.499916922384117747e-07, 1.502711311433141976e-07, 1.505502677470521400e-07, 1.508291016532178090e-07, 1.511076324659790499e-07, 1.513858597900831051e-07, 1.516637832308407585e-07, 1.519414023941817370e-07, 1.522187168865749832e-07, 1.524957263150836334e-07, 1.527724302873499828e-07, 1.530488284115838384e-07, 1.533249202966164649e-07, 1.536007055518210693e-07, 1.538761837871668784e-07, 1.541513546132049514e-07, 1.544262176410720179e-07, 1.547007724824739870e-07, 1.549750187497403959e-07, 1.552489560557470915e-07, 1.555225840139686938e-07, 1.557959022384658104e-07, 1.560689103438841374e-07, 1.563416079454468881e-07, 1.566139946590131331e-07, 1.568860701009417983e-07, 1.571578338882697006e-07, 1.574292856385712051e-07, 1.577004249700113502e-07, 1.579712515013827462e-07, 1.582417648520430803e-07, 1.585119646419039992e-07, 1.587818504915448764e-07, 1.590514220220853863e-07, 1.593206788552388942e-07, 1.595896206133628545e-07, 1.598582469193184149e-07, 1.601265573966509670e-07, 1.603945516694495918e-07, 1.606622293623985167e-07, 1.609295901008154437e-07, 1.611966335105889224e-07, 1.614633592181666233e-07, 1.617297668506686818e-07, 1.619958560357632106e-07, 1.622616264017148983e-07, 1.625270775774401195e-07, 1.627922091923765447e-07, 1.630570208766001099e-07, 1.633215122608120736e-07, 1.635856829762767592e-07, 1.638495326548584276e-07, 1.641130609290744553e-07, 1.643762674319564734e-07, 1.646391517972257833e-07, 1.649017136591568782e-07, 1.651639526526272329e-07, 1.654258684131694759e-07, 1.656874605768443339e-07, 1.659487287803557761e-07, 1.662096726610388905e-07, 1.664702918567958800e-07, 1.667305860061483405e-07, 1.669905547482247934e-07, 1.672501977227486156e-07, 1.675095145700877494e-07, 1.677685049311817256e-07, 1.680271684475910032e-07, 1.682855047614856930e-07, 1.685435135156451608e-07, 1.688011943534464071e-07, 1.690585469189140685e-07, 1.693155708566472021e-07, 1.695722658118681227e-07, 1.698286314304107028e-07, 1.700846673587241313e-07, 1.703403732438545702e-07, 1.705957487335003966e-07, 1.708507934759361292e-07, 1.711055071200634084e-07, 1.713598893153983178e-07, 1.716139397120587577e-07, 1.718676579608177822e-07, 1.721210437130258039e-07, 1.723740966206612047e-07, 1.726268163363213623e-07, 1.728792025132201089e-07, 1.731312548051768789e-07, 1.733829728666655191e-07, 1.736343563527429526e-07, 1.738854049190972214e-07, 1.741361182220362368e-07, 1.743864959184878323e-07, 1.746365376659876407e-07, 1.748862431227290950e-07, 1.751356119474904253e-07, 1.753846437996835744e-07, 1.756333383393447487e-07, 1.758816952271188798e-07, 1.761297141243096266e-07, 1.763773946928096532e-07, 1.766247365951466869e-07, 1.768717394944732475e-07, 1.771184030545669123e-07, 1.773647269398178221e-07, 1.776107108152791064e-07, 1.778563543465926884e-07, 1.781016572000394984e-07, 1.783466190425275620e-07, 1.785912395415807774e-07, 1.788355183653857929e-07, 1.790794551827329798e-07, 1.793230496630094174e-07, 1.795663014762977052e-07, 1.798092102932655304e-07, 1.800517757852096611e-07, 1.802939976240925540e-07, 1.805358754824833267e-07, 1.807774090335476724e-07, 1.810185979511539248e-07, 1.812594419097539440e-07, 1.814999405844333293e-07, 1.817400936509562066e-07, 1.819799007856383318e-07, 1.822193616655117067e-07, 1.824584759681940828e-07, 1.826972433719381157e-07, 1.829356635556679992e-07, 1.831737361989176589e-07, 1.834114609818227574e-07, 1.836488375852236890e-07, 1.838858656905527386e-07, 1.841225449798764072e-07, 1.843588751359459159e-07, 1.845948558420713423e-07, 1.848304867822776332e-07, 1.850657676411843264e-07, 1.853006981040608455e-07, 1.855352778568047419e-07, 1.857695065859972815e-07, 1.860033839787810484e-07, 1.862369097230182871e-07, 1.864700835071672354e-07, 1.867029050203263295e-07, 1.869353739522810286e-07, 1.871674899933900478e-07, 1.873992528346896758e-07, 1.876306621678801691e-07, 1.878617176852706423e-07, 1.880924190798270838e-07, 1.883227660451564743e-07, 1.885527582755007516e-07, 1.887823954657785533e-07, 1.890116773115198897e-07, 1.892406035089119095e-07, 1.894691737547869098e-07, 1.896973877466233676e-07, 1.899252451825350082e-07, 1.901527457613152481e-07, 1.903798891823712054e-07, 1.906066751457688841e-07, 1.908331033522218448e-07, 1.910591735030919195e-07, 1.912848853003775915e-07, 1.915102384467610317e-07, 1.917352326455396484e-07, 1.919598676006708473e-07, 1.921841430167626081e-07, 1.924080585990622091e-07, 1.926316140535003513e-07, 1.928548090866250908e-07, 1.930776434056489279e-07, 1.933001167184341431e-07, 1.935222287334956292e-07, 1.937439791599902243e-07, 1.939653677077590897e-07, 1.941863940872645527e-07, 1.944070580096334648e-07, 1.946273591866452369e-07, 1.948472973307361537e-07, 1.950668721549832011e-07, 1.952860833731520559e-07, 1.955049306996307255e-07, 1.957234138494735149e-07, 1.959415325383903589e-07, 1.961592864827364462e-07, 1.963766753995578798e-07, 1.965936990065324637e-07, 1.968103570219659712e-07, 1.970266491648843123e-07, 1.972425751549291105e-07, 1.974581347123997371e-07, 1.976733275582850215e-07, 1.978881534142039062e-07, 1.981026120024424254e-07, 1.983167030459460809e-07, 1.985304262683102609e-07, 1.987437813938224589e-07, 1.989567681474084869e-07, 1.991693862546238997e-07, 1.993816354417475916e-07, 1.995935154356802056e-07, 1.998050259639819321e-07, 2.000161667549062053e-07, 2.002269375373483513e-07, 2.004373380408358475e-07, 2.006473679956204904e-07, 2.008570271325758518e-07, 2.010663151832404505e-07, 2.012752318798560016e-07, 2.014837769552575405e-07, 2.016919501430159621e-07, 2.018997511773265044e-07, 2.021071797930486113e-07, 2.023142357257382260e-07, 2.025209187115957517e-07, 2.027272284874602541e-07, 2.029331647908939534e-07, 2.031387273600864568e-07, 2.033439159338958123e-07, 2.035487302518853557e-07, 2.037531700542169836e-07, 2.039572350817895642e-07, 2.041609250761311527e-07, 2.043642397794471655e-07, 2.045671789346020905e-07, 2.047697422851689052e-07, 2.049719295753201281e-07, 2.051737405499675255e-07, 2.053751749546520767e-07, 2.055762325355875437e-07, 2.057769130396947224e-07, 2.059772162145071579e-07, 2.061771418082574887e-07, 2.063766895698709878e-07, 2.065758592489136557e-07, 2.067746505956336723e-07, 2.069730633609508880e-07, 2.071710972964483005e-07, 2.073687521544101979e-07, 2.075660276877638459e-07, 2.077629236501111452e-07, 2.079594397957652662e-07, 2.081555758796537426e-07, 2.083513316574091574e-07, 2.085467068853570722e-07, 2.087417013204675881e-07, 2.089363147203958966e-07, 2.091305468434720365e-07, 2.093243974487009995e-07, 2.095178662957536775e-07, 2.097109531450056672e-07, 2.099036577574791957e-07, 2.100959798948842545e-07, 2.102879193196059201e-07, 2.104794757946956194e-07, 2.106706490839117870e-07, 2.108614389516612878e-07, 2.110518451630372952e-07, 2.112418674838110057e-07, 2.114315056804340219e-07, 2.116207595200229727e-07, 2.118096287704031364e-07, 2.119981132000504447e-07, 2.121862125781288581e-07, 2.123739266744819491e-07, 2.125612552596224724e-07, 2.127481981047723877e-07, 2.129347549818051816e-07, 2.131209256632828994e-07, 2.133067099224486006e-07, 2.134921075332268093e-07, 2.136771182702120527e-07, 2.138617419087093069e-07, 2.140459782246852394e-07, 2.142298269947623066e-07, 2.144132879962975543e-07, 2.145963610072953994e-07, 2.147790458064414855e-07, 2.149613421731315606e-07, 2.151432498874167646e-07, 2.153247687300400514e-07, 2.155058984824292014e-07, 2.156866389266841683e-07, 2.158669898456168105e-07, 2.160469510227042515e-07, 2.162265222420812034e-07, 2.164057032886202501e-07, 2.165844939478425642e-07, 2.167628940059536154e-07, 2.169409032498733718e-07, 2.171185214671761083e-07, 2.172957484461325459e-07, 2.174725839756988408e-07, 2.176490278455167427e-07, 2.178250798459053367e-07, 2.180007397679038181e-07, 2.181760074031788750e-07, 2.183508825441439342e-07, 2.185253649838627586e-07, 2.186994545160874050e-07, 2.188731509352844551e-07, 2.190464540365879263e-07, 2.192193636157945597e-07, 2.193918794694423035e-07, 2.195640013947210826e-07, 2.197357291895089571e-07, 2.199070626524058972e-07, 2.200780015826435481e-07, 2.202485457801985203e-07, 2.204186950457045631e-07, 2.205884491804827667e-07, 2.207578079865804195e-07, 2.209267712666810377e-07, 2.210953388241835626e-07, 2.212635104631947638e-07, 2.214312859884845585e-07, 2.215986652055146250e-07, 2.217656479204694518e-07, 2.219322339401753667e-07, 2.220984230721729317e-07, 2.222642151247114898e-07, 2.224296099067061785e-07, 2.225946072277719170e-07, 2.227592068982140620e-07, 2.229234087290232200e-07, 2.230872125319042844e-07, 2.232506181192326548e-07, 2.234136253040736653e-07, 2.235762339002167311e-07, 2.237384437220978709e-07, 2.239002545848668613e-07, 2.240616663043854893e-07, 2.242226786971816540e-07, 2.243832915804871917e-07, 2.245435047722253295e-07, 2.247033180910052323e-07, 2.248627313561538990e-07, 2.250217443876676696e-07, 2.251803570062455511e-07, 2.253385690332790264e-07, 2.254963802908573217e-07, 2.256537906017526894e-07, 2.258107997894570423e-07, 2.259674076781335669e-07, 2.261236140926466074e-07, 2.262794188585582252e-07, 2.264348218021224016e-07, 2.265898227502834500e-07, 2.267444215307039144e-07, 2.268986179717172950e-07, 2.270524119023619823e-07, 2.272058031523704307e-07, 2.273587915521659295e-07, 2.275113769328888873e-07, 2.276635591263532097e-07, 2.278153379650788837e-07, 2.279667132822806220e-07, 2.281176849118692663e-07, 2.282682526884467840e-07, 2.284184164473331355e-07, 2.285681760245238692e-07, 2.287175312567188149e-07, 2.288664819813141430e-07, 2.290150280364059115e-07, 2.291631692607787363e-07, 2.293109054939370266e-07, 2.294582365760609381e-07, 2.296051623480367082e-07, 2.297516826514477353e-07, 2.298977973285682259e-07, 2.300435062223941382e-07, 2.301888091766050918e-07, 2.303337060355542827e-07, 2.304781966443416726e-07, 2.306222808487329377e-07, 2.307659584951960509e-07, 2.309092294309165275e-07, 2.310520935037606062e-07, 2.311945505622987015e-07, 2.313366004558011679e-07, 2.314782430342377976e-07, 2.316194781482698529e-07, 2.317603056492895058e-07, 2.319007253893354796e-07, 2.320407372211973390e-07, 2.321803409983383576e-07, 2.323195365749188379e-07, 2.324583238058219718e-07, 2.325967025466168364e-07, 2.327346726535507968e-07, 2.328722339836157333e-07, 2.330093863944730004e-07, 2.331461297444890543e-07, 2.332824638927553583e-07, 2.334183886990163061e-07, 2.335539040237662860e-07, 2.336890097281723096e-07, 2.338237056741027853e-07, 2.339579917241556544e-07, 2.340918677415862094e-07, 2.342253335903757553e-07, 2.343583891352177140e-07, 2.344910342414865218e-07, 2.346232687752594139e-07, 2.347550926033419154e-07, 2.348865055932002366e-07, 2.350175076130226045e-07, 2.351480985317140739e-07, 2.352782782188605288e-07, 2.354080465447553376e-07, 2.355374033803953559e-07, 2.356663485974735681e-07, 2.357948820684026455e-07, 2.359230036662795825e-07, 2.360507132649041462e-07, 2.361780107388047109e-07, 2.363048959631699659e-07, 2.364313688139149313e-07, 2.365574291676665055e-07, 2.366830769017376572e-07, 2.368083118941493421e-07, 2.369331340236244151e-07, 2.370575431695847981e-07, 2.371815392121720467e-07, 2.373051220322125693e-07, 2.374282915112414760e-07, 2.375510475314977351e-07, 2.376733899759229548e-07, 2.377953187281550577e-07, 2.379168336725559411e-07, 2.380379346941710843e-07, 2.381586216787537159e-07, 2.382788945127629073e-07, 2.383987530833593381e-07, 2.385181972784021194e-07, 2.386372269864723256e-07, 2.387558420968345600e-07, 2.388740424994655428e-07, 2.389918280850441312e-07, 2.391091987449470318e-07, 2.392261543712720409e-07, 2.393426948568037399e-07, 2.394588200950362588e-07, 2.395745299801658652e-07, 2.396898244070960462e-07, 2.398047032714244853e-07, 2.399191664694735027e-07, 2.400332138982490272e-07, 2.401468454554691305e-07, 2.402600610395540216e-07, 2.403728605496274235e-07, 2.404852438855146140e-07, 2.405972109477597374e-07, 2.407087616375928757e-07, 2.408198958569556716e-07, 2.409306135084936521e-07, 2.410409144955489760e-07, 2.411507987221874857e-07, 2.412602660931658849e-07, 2.413693165139292506e-07, 2.414779498906607428e-07, 2.415861661302239009e-07, 2.416939651401869958e-07, 2.418013468288399172e-07, 2.419083111051598166e-07, 2.420148578788313294e-07, 2.421209870602476872e-07, 2.422266985604983296e-07, 2.423319922913921450e-07, 2.424368681654338593e-07, 2.425413260958141361e-07, 2.426453659964615637e-07, 2.427489877819866448e-07, 2.428521913677031312e-07, 2.429549766696545995e-07, 2.430573436045517707e-07, 2.431592920898273023e-07, 2.432608220436309713e-07, 2.433619333847971690e-07, 2.434626260328661300e-07, 2.435628999081037840e-07, 2.436627549314433114e-07, 2.437621910245587812e-07, 2.438612081098062833e-07, 2.439598061102467973e-07, 2.440579849496672104e-07, 2.441557445525251010e-07, 2.442530848439990842e-07, 2.443500057499829356e-07, 2.444465071970580629e-07, 2.445425891125097050e-07, 2.446382514243473672e-07, 2.447334940612491812e-07, 2.448283169526325797e-07, 2.449227200285992922e-07, 2.450167032199587971e-07, 2.451102664582259925e-07, 2.452034096756186549e-07, 2.452961328050527278e-07, 2.453884357801641328e-07, 2.454803185352766880e-07, 2.455717810054178840e-07, 2.456628231263391602e-07, 2.457534448344660881e-07, 2.458436460669416762e-07, 2.459334267616233522e-07, 2.460227868570570760e-07, 2.461117262924959209e-07, 2.462002450078981154e-07, 2.462883429439186781e-07, 2.463760200419312826e-07, 2.464632762440009398e-07, 2.465501114928906688e-07, 2.466365257320904019e-07, 2.467225189057616097e-07, 2.468080909587846289e-07, 2.468932418367518864e-07, 2.469779714859444996e-07, 2.470622798533514940e-07, 2.471461668866649323e-07, 2.472296325342793320e-07, 2.473126767452867425e-07, 2.473952994694974442e-07, 2.474775006574080258e-07, 2.475592802602230368e-07, 2.476406382298532404e-07, 2.477215745189015316e-07, 2.478020890806903070e-07, 2.478821818692304421e-07, 2.479618528392375968e-07, 2.480411019461318447e-07, 2.481199291460340733e-07, 2.481983343957622784e-07, 2.482763176528528454e-07, 2.483538788755275152e-07, 2.484310180227148250e-07, 2.485077350540453433e-07, 2.485840299298478055e-07, 2.486599026111650489e-07, 2.487353530597262190e-07, 2.488103812379713868e-07, 2.488849871090366197e-07, 2.489591706367618694e-07, 2.490329317856838250e-07, 2.491062705210532248e-07, 2.491791868088119856e-07, 2.492516806155917208e-07, 2.493237519087478866e-07, 2.493954006563242593e-07, 2.494666268270619879e-07, 2.495374303904157407e-07, 2.496078113165282418e-07, 2.496777695762463640e-07, 2.497473051411196471e-07, 2.498164179833882803e-07, 2.498851080760129603e-07, 2.499533753926395273e-07, 2.500212199076035715e-07, 2.500886415959650016e-07, 2.501556404334680234e-07, 2.502222163965546919e-07, 2.502883694623834401e-07, 2.503540996087857748e-07, 2.504194068143174686e-07, 2.504842910582190146e-07, 2.505487523204347372e-07, 2.506127905816023103e-07, 2.506764058230749389e-07, 2.507395980268766249e-07, 2.508023671757579131e-07, 2.508647132531532212e-07, 2.509266362431932283e-07, 2.509881361307236148e-07, 2.510492129012645113e-07, 2.511098665410458621e-07, 2.511700970370038251e-07, 2.512299043767594902e-07, 2.512892885486339671e-07, 2.513482495416588144e-07, 2.514067873455376585e-07, 2.514649019506978094e-07, 2.515225933482477505e-07, 2.515798615299981556e-07, 2.516367064884557476e-07, 2.516931282168240931e-07, 2.517491267090010078e-07, 2.518047019595899919e-07, 2.518598539638815951e-07, 2.519145827178614108e-07, 2.519688882182261161e-07, 2.520227704623464681e-07, 2.520762294483002312e-07, 2.521292651748688956e-07, 2.521818776415174542e-07, 2.522340668484107606e-07, 2.522858327964080770e-07, 2.523371754870610089e-07, 2.523880949226270049e-07, 2.524385911060462222e-07, 2.524886640409601615e-07, 2.525383137317016079e-07, 2.525875401833003491e-07, 2.526363434014754455e-07, 2.526847233926505833e-07, 2.527326801639328983e-07, 2.527802137231284344e-07, 2.528273240787342556e-07, 2.528740112399443221e-07, 2.529202752166396439e-07, 2.529661160194061211e-07, 2.530115336595119918e-07, 2.530565281489214376e-07, 2.531010995002918836e-07, 2.531452477269696043e-07, 2.531889728430049707e-07, 2.532322748631283090e-07, 2.532751538027658364e-07, 2.533176096780371192e-07, 2.533596425057513144e-07, 2.534012523034082817e-07, 2.534424390892074238e-07, 2.534832028820279933e-07, 2.535235437014486276e-07, 2.535634615677343780e-07, 2.536029565018402044e-07, 2.536420285254188101e-07, 2.536806776608053951e-07, 2.537189039310289852e-07, 2.537567073598065030e-07, 2.537940879715478499e-07, 2.538310457913471181e-07, 2.538675808449972548e-07, 2.539036931589751866e-07, 2.539393827604373191e-07, 2.539746496772468540e-07, 2.540094939379437725e-07, 2.540439155717594463e-07, 2.540779146086174846e-07, 2.541114910791236761e-07, 2.541446450145748294e-07, 2.541773764469551203e-07, 2.542096854089332332e-07, 2.542415719338742193e-07, 2.542730360558225034e-07, 2.543040778095056422e-07, 2.543346972303515299e-07, 2.543648943544637282e-07, 2.543946692186327955e-07, 2.544240218603452868e-07, 2.544529523177574421e-07, 2.544814606297260509e-07, 2.545095468357882820e-07, 2.545372109761652829e-07, 2.545644530917614394e-07, 2.545912732241762866e-07, 2.546176714156780920e-07, 2.546436477092358311e-07, 2.546692021484919237e-07, 2.546943347777750979e-07, 2.547190456421073254e-07, 2.547433347871783574e-07, 2.547672022593708711e-07, 2.547906481057538521e-07, 2.548136723740721653e-07, 2.548362751127541255e-07, 2.548584563709194379e-07, 2.548802161983567522e-07, 2.549015546455493907e-07, 2.549224717636558142e-07, 2.549429676045150742e-07, 2.549630422206560250e-07, 2.549826956652778943e-07, 2.550019279922652123e-07, 2.550207392561895061e-07, 2.550391295122965409e-07, 2.550570988165106612e-07, 2.550746472254450611e-07, 2.550917747963822493e-07, 2.551084815872894551e-07, 2.551247676568171455e-07, 2.551406330642883848e-07, 2.551560778697102162e-07, 2.551711021337646095e-07, 2.551857059178130666e-07, 2.551998892838993744e-07, 2.552136522947401817e-07, 2.552269950137322517e-07, 2.552399175049480155e-07, 2.552524198331405476e-07, 2.552645020637362083e-07, 2.552761642628429014e-07, 2.552874064972411810e-07, 2.552982288343891746e-07, 2.553086313424198831e-07, 2.553186140901420809e-07, 2.553281771470457156e-07, 2.553373205832891500e-07, 2.553460444697086376e-07, 2.553543488778145115e-07, 2.553622338797926136e-07, 2.553696995485008004e-07, 2.553767459574760372e-07, 2.553833731809223806e-07, 2.553895812937241077e-07, 2.553953703714335398e-07, 2.554007404902788776e-07, 2.554056917271581661e-07, 2.554102241596466000e-07, 2.554143378659884245e-07, 2.554180329250984698e-07, 2.554213094165674986e-07, 2.554241674206532062e-07, 2.554266070182889024e-07, 2.554286282910755180e-07, 2.554302313212853102e-07, 2.554314161918607509e-07, 2.554321829864155331e-07, 2.554325317892293289e-07, 2.554324626852591724e-07, 2.554319757601245834e-07, 2.554310711001151904e-07, 2.554297487921905193e-07, 2.554280089239781930e-07, 2.554258515837727142e-07, 2.554232768605398593e-07, 2.554202848439082077e-07, 2.554168756241778773e-07, 2.554130492923134834e-07, 2.554088059399460443e-07, 2.554041456593761050e-07, 2.553990685435674373e-07, 2.553935746861478338e-07, 2.553876641814174727e-07, 2.553813371243347294e-07, 2.553745936105267649e-07, 2.553674337362853965e-07, 2.553598575985632858e-07, 2.553518652949819858e-07, 2.553434569238236824e-07, 2.553346325840338410e-07, 2.553253923752248597e-07, 2.553157363976693988e-07, 2.553056647523003808e-07, 2.552951775407164960e-07, 2.552842748651784439e-07, 2.552729568286049098e-07, 2.552612235345817235e-07, 2.552490750873506885e-07, 2.552365115918168355e-07, 2.552235331535451924e-07, 2.552101398787608906e-07, 2.551963318743491119e-07, 2.551821092478548237e-07, 2.551674721074804501e-07, 2.551524205620892594e-07, 2.551369547212030882e-07, 2.551210746950017058e-07, 2.551047805943219145e-07, 2.550880725306600375e-07, 2.550709506161671018e-07, 2.550534149636534432e-07, 2.550354656865846309e-07, 2.550171028990841137e-07, 2.549983267159316323e-07, 2.549791372525596190e-07, 2.549595346250592863e-07, 2.549395189501746971e-07, 2.549190903453063119e-07, 2.548982489285065419e-07, 2.548769948184859960e-07, 2.548553281346061747e-07, 2.548332489968809529e-07, 2.548107575259805502e-07, 2.547878538432253366e-07, 2.547645380705900154e-07, 2.547408103306992288e-07, 2.547166707468310517e-07, 2.546921194429159336e-07, 2.546671565435326216e-07, 2.546417821739132429e-07, 2.546159964599384342e-07, 2.545897995281400948e-07, 2.545631915056993217e-07, 2.545361725204458805e-07, 2.545087427008617520e-07, 2.544809021760743031e-07, 2.544526510758601517e-07, 2.544239895306449546e-07, 2.543949176715000722e-07, 2.543654356301469100e-07, 2.543355435389507243e-07, 2.543052415309257046e-07, 2.542745297397325382e-07, 2.542434082996768752e-07, 2.542118773457095928e-07, 2.541799370134266899e-07, 2.541475874390707161e-07, 2.541148287595267485e-07, 2.540816611123249857e-07, 2.540480846356397947e-07, 2.540140994682890230e-07, 2.539797057497321455e-07, 2.539449036200731763e-07, 2.539096932200566450e-07, 2.538740746910717265e-07, 2.538380481751449350e-07, 2.538016138149491235e-07, 2.537647717537949612e-07, 2.537275221356340033e-07, 2.536898651050589032e-07, 2.536518008073012948e-07, 2.536133293882316336e-07, 2.535744509943619497e-07, 2.535351657728383831e-07, 2.534954738714515072e-07, 2.534553754386259524e-07, 2.534148706234231062e-07, 2.533739595755434952e-07, 2.533326424453255151e-07, 2.532909193837406654e-07, 2.532487905423975736e-07, 2.532062560735449061e-07, 2.531633161300588750e-07, 2.531199708654584845e-07, 2.530762204338906550e-07, 2.530320649901405991e-07, 2.529875046896266336e-07, 2.529425396883976912e-07, 2.528971701431382441e-07, 2.528513962111685159e-07, 2.528052180504336813e-07, 2.527586358195157781e-07, 2.527116496776282543e-07, 2.526642597846107798e-07, 2.526164663009413697e-07, 2.525682693877214025e-07, 2.525196692066869490e-07, 2.524706659201998787e-07, 2.524212596912550062e-07, 2.523714506834695037e-07, 2.523212390610981476e-07, 2.522706249890146833e-07, 2.522196086327244253e-07, 2.521681901583621397e-07, 2.521163697326820908e-07, 2.520641475230736064e-07, 2.520115236975467832e-07, 2.519584984247361401e-07, 2.519050718739036887e-07, 2.518512442149362331e-07, 2.517970156183427762e-07, 2.517423862552610309e-07, 2.516873562974445034e-07, 2.516319259172760451e-07, 2.515760952877580590e-07, 2.515198645825169999e-07, 2.514632339757996152e-07, 2.514062036424747452e-07, 2.513487737580316288e-07, 2.512909444985810682e-07, 2.512327160408526233e-07, 2.511740885621966762e-07, 2.511150622405837430e-07, 2.510556372546014561e-07, 2.509958137834547763e-07, 2.509355920069691159e-07, 2.508749721055876919e-07, 2.508139542603702554e-07, 2.507525386529939387e-07, 2.506907254657485434e-07, 2.506285148815432643e-07, 2.505659070839033005e-07, 2.505029022569658328e-07, 2.504395005854873288e-07, 2.503757022548356019e-07, 2.503115074509896531e-07, 2.502469163605453879e-07, 2.501819291707111695e-07, 2.501165460693080306e-07, 2.500507672447654915e-07, 2.499845928861339473e-07, 2.499180231830615338e-07, 2.498510583258171031e-07, 2.497836985052774653e-07, 2.497159439129272294e-07, 2.496477947408654211e-07, 2.495792511817910829e-07, 2.495103134290187328e-07, 2.494409816764716407e-07, 2.493712561186774874e-07, 2.493011369507713293e-07, 2.492306243684988277e-07, 2.491597185682051314e-07, 2.490884197468452001e-07, 2.490167281019800983e-07, 2.489446438317767842e-07, 2.488721671350051440e-07, 2.487992982110354520e-07, 2.487260372598446166e-07, 2.486523844820200983e-07, 2.485783400787379924e-07, 2.485039042517860051e-07, 2.484290772035536593e-07, 2.483538591370259423e-07, 2.482782502557913522e-07, 2.482022507640474038e-07, 2.481258608665763295e-07, 2.480490807687704900e-07, 2.479719106766198805e-07, 2.478943507967040844e-07, 2.478164013362189014e-07, 2.477380625029393430e-07, 2.476593345052485372e-07, 2.475802175521242294e-07, 2.475007118531350762e-07, 2.474208176184501218e-07, 2.473405350588394333e-07, 2.472598643856565773e-07, 2.471788058108564613e-07, 2.470973595469889272e-07, 2.470155258071857817e-07, 2.469333048051921362e-07, 2.468506967553262257e-07, 2.467677018725088963e-07, 2.466843203722483586e-07, 2.466005524706502988e-07, 2.465163983843969152e-07, 2.464318583307807460e-07, 2.463469325276644887e-07, 2.462616211935105400e-07, 2.461759245473718902e-07, 2.460898428088761888e-07, 2.460033761982577724e-07, 2.459165249363286013e-07, 2.458292892444814357e-07, 2.457416693447040232e-07, 2.456536654595686175e-07, 2.455652778122292779e-07, 2.454765066264316631e-07, 2.453873521264940792e-07, 2.452978145373297670e-07, 2.452078940844341438e-07, 2.451175909938728386e-07, 2.450269054923124504e-07, 2.449358378069934431e-07, 2.448443881657307277e-07, 2.447525567969271091e-07, 2.446603439295680447e-07, 2.445677497932138099e-07, 2.444747746180056388e-07, 2.443814186346680005e-07, 2.442876820744932999e-07, 2.441935651693609884e-07, 2.440990681517241177e-07, 2.440041912546157452e-07, 2.439089347116452815e-07, 2.438132987569906019e-07, 2.437172836254118642e-07, 2.436208895522439907e-07, 2.435241167733945511e-07, 2.434269655253452975e-07, 2.433294360451534881e-07, 2.432315285704427811e-07, 2.431332433394153056e-07, 2.430345805908444084e-07, 2.429355405640726953e-07, 2.428361234990184901e-07, 2.427363296361590521e-07, 2.426361592165520172e-07, 2.425356124818219509e-07, 2.424346896741618311e-07, 2.423333910363314590e-07, 2.422317168116630718e-07, 2.421296672440453011e-07, 2.420272425779408022e-07, 2.419244430583887953e-07, 2.418212689309714487e-07, 2.417177204418544832e-07, 2.416137978377638792e-07, 2.415095013659804237e-07, 2.414048312743600919e-07, 2.412997878113174772e-07, 2.411943712258297088e-07, 2.410885817674390987e-07, 2.409824196862401714e-07, 2.408758852328942753e-07, 2.407689786586350881e-07, 2.406617002152329363e-07, 2.405540501550329638e-07, 2.404460287309391444e-07, 2.403376361964021061e-07, 2.402288728054435887e-07, 2.401197388126359564e-07, 2.400102344731092385e-07, 2.399003600425508124e-07, 2.397901157772061968e-07, 2.396795019338608414e-07, 2.395685187698823719e-07, 2.394571665431632570e-07, 2.393454455121690360e-07, 2.392333559359151845e-07, 2.391208980739585377e-07, 2.390080721864149729e-07, 2.388948785339645972e-07, 2.387813173778139484e-07, 2.386673889797359119e-07, 2.385530936020536798e-07, 2.384384315076225398e-07, 2.383234029598748735e-07, 2.382080082227636702e-07, 2.380922475608038465e-07, 2.379761212390548018e-07, 2.378596295231264808e-07, 2.377427726791563973e-07, 2.376255509738591328e-07, 2.375079646744638148e-07, 2.373900140487584802e-07, 2.372716993650773168e-07, 2.371530208922805465e-07, 2.370339788997951885e-07, 2.369145736575772075e-07, 2.367948054361181314e-07, 2.366746745064610653e-07, 2.365541811401854979e-07, 2.364333256094105309e-07, 2.363121081867986906e-07, 2.361905291455397281e-07, 2.360685887593713722e-07, 2.359462873025730822e-07, 2.358236250499402925e-07, 2.357006022768329587e-07, 2.355772192591336294e-07, 2.354534762732499869e-07, 2.353293735961385910e-07, 2.352049115052861381e-07, 2.350800902787120821e-07, 2.349549101949705133e-07, 2.348293715331501322e-07, 2.347034745728598498e-07, 2.345772195942526372e-07, 2.344506068780078432e-07, 2.343236367053345302e-07, 2.341963093579758939e-07, 2.340686251181930643e-07, 2.339405842687858847e-07, 2.338121870930782201e-07, 2.336834338749231460e-07, 2.335543248986987927e-07, 2.334248604493137446e-07, 2.332950408121903116e-07, 2.331648662732866314e-07, 2.330343371190846522e-07, 2.329034536365862151e-07, 2.327722161133241716e-07, 2.326406248373378191e-07, 2.325086800972032891e-07, 2.323763821820143821e-07, 2.322437313813840509e-07, 2.321107279854484230e-07, 2.319773722848656102e-07, 2.318436645707995883e-07, 2.317096051349425110e-07, 2.315751942695185745e-07, 2.314404322672403956e-07, 2.313053194213568156e-07, 2.311698560256354573e-07, 2.310340423743408868e-07, 2.308978787622691309e-07, 2.307613654847271356e-07, 2.306245028375332433e-07, 2.304872911170265100e-07, 2.303497306200422999e-07, 2.302118216439366377e-07, 2.300735644865963732e-07, 2.299349594463855004e-07, 2.297960068221998971e-07, 2.296567069134439520e-07, 2.295170600200183886e-07, 2.293770664423446704e-07, 2.292367264813478750e-07, 2.290960404384639466e-07, 2.289550086156313053e-07, 2.288136313153007998e-07, 2.286719088404083108e-07, 2.285298414944317937e-07, 2.283874295813157339e-07, 2.282446734055304917e-07, 2.281015732720476063e-07, 2.279581294863284403e-07, 2.278143423543438729e-07, 2.276702121825836440e-07, 2.275257392780055322e-07, 2.273809239480884529e-07, 2.272357665008123417e-07, 2.270902672446314197e-07, 2.269444264885406062e-07, 2.267982445419904181e-07, 2.266517217149522450e-07, 2.265048583178927258e-07, 2.263576546617529702e-07, 2.262101110580020809e-07, 2.260622278185868603e-07, 2.259140052559391697e-07, 2.257654436829985345e-07, 2.256165434131972676e-07, 2.254673047604377325e-07, 2.253177280391484060e-07, 2.251678135642305680e-07, 2.250175616510656340e-07, 2.248669726155397449e-07, 2.247160467740249211e-07, 2.245647844433793269e-07, 2.244131859409561644e-07, 2.242612515845773627e-07, 2.241089816925693118e-07, 2.239563765837444664e-07, 2.238034365773762521e-07, 2.236501619932601849e-07, 2.234965531516553457e-07, 2.233426103732934069e-07, 2.231883339794077493e-07, 2.230337242917061978e-07, 2.228787816323795980e-07, 2.227235063241051510e-07, 2.225678986900203412e-07, 2.224119590537640963e-07, 2.222556877394458444e-07, 2.220990850716536137e-07, 2.219421513754533972e-07, 2.217848869763943671e-07, 2.216272922004839937e-07, 2.214693673742232231e-07, 2.213111128245835019e-07, 2.211525288790095033e-07, 2.209936158654202390e-07, 2.208343741122138238e-07, 2.206748039482433350e-07, 2.205149057028518054e-07, 2.203546797058467068e-07, 2.201941262875085786e-07, 2.200332457785921137e-07, 2.198720385103028381e-07, 2.197105048143350421e-07, 2.195486450228435377e-07, 2.193864594684521809e-07, 2.192239484842499021e-07, 2.190611124037989640e-07, 2.188979515611102129e-07, 2.187344662906753715e-07, 2.185706569274449101e-07, 2.184065238068341086e-07, 2.182420672647202502e-07, 2.180772876374495569e-07, 2.179121852618099253e-07, 2.177467604750724844e-07, 2.175810136149593023e-07, 2.174149450196523065e-07, 2.172485550278010134e-07, 2.170818439784921141e-07, 2.169148122112836735e-07, 2.167474600662110067e-07, 2.165797878837245544e-07, 2.164117960047608218e-07, 2.162434847707077562e-07, 2.160748545233901357e-07, 2.159059056051054092e-07, 2.157366383585969356e-07, 2.155670531270629567e-07, 2.153971502541571273e-07, 2.152269300839681062e-07, 2.150563929610456824e-07, 2.148855392304098539e-07, 2.147143692374909270e-07, 2.145428833281933345e-07, 2.143710818488707278e-07, 2.141989651463017574e-07, 2.140265335677277386e-07, 2.138537874608553787e-07, 2.136807271737945461e-07, 2.135073530551287331e-07, 2.133336654538843771e-07, 2.131596647195033852e-07, 2.129853512019198966e-07, 2.128107252514599621e-07, 2.126357872189206355e-07, 2.124605374555381840e-07, 2.122849763129610091e-07, 2.121091041433187063e-07, 2.119329212991587762e-07, 2.117564281334524210e-07, 2.115796249996287967e-07, 2.114025122515557428e-07, 2.112250902435054513e-07, 2.110473593302375815e-07, 2.108693198668949959e-07, 2.106909722090844398e-07, 2.105123167128374189e-07, 2.103333537346177701e-07, 2.101540836313222698e-07, 2.099745067602864574e-07, 2.097946234792541954e-07, 2.096144341464195177e-07, 2.094339391204073861e-07, 2.092531387602419004e-07, 2.090720334254175017e-07, 2.088906234758340425e-07, 2.087089092718062094e-07, 2.085268911740925346e-07, 2.083445695438710960e-07, 2.081619447427435675e-07, 2.079790171327436893e-07, 2.077957870763052922e-07, 2.076122549363066346e-07, 2.074284210760422387e-07, 2.072442858592241611e-07, 2.070598496499881069e-07, 2.068751128128937481e-07, 2.066900757129003706e-07, 2.065047387154049912e-07, 2.063191021862175817e-07, 2.061331664915610426e-07, 2.059469319980793819e-07, 2.057603990728361007e-07, 2.055735680832876707e-07, 2.053864393973278970e-07, 2.051990133832556518e-07, 2.050112904097831066e-07, 2.048232708460403641e-07, 2.046349550615503121e-07, 2.044463434262649929e-07, 2.042574363105403777e-07, 2.040682340851411576e-07, 2.038787371212418022e-07, 2.036889457904307951e-07, 2.034988604646819139e-07, 2.033084815163969261e-07, 2.031178093183788546e-07, 2.029268442438321893e-07, 2.027355866663675728e-07, 2.025440369600067758e-07, 2.023521954991514637e-07, 2.021600626586285916e-07, 2.019676388136581380e-07, 2.017749243398633219e-07, 2.015819196132732765e-07, 2.013886250102936677e-07, 2.011950409077447043e-07, 2.010011676828679148e-07, 2.008070057132556582e-07, 2.006125553769265628e-07, 2.004178170522991887e-07, 2.002227911181597877e-07, 2.000274779537145284e-07, 1.998318779385551644e-07, 1.996359914526666051e-07, 1.994398188764340624e-07, 1.992433605906109957e-07, 1.990466169763568579e-07, 1.988495884152471274e-07, 1.986522752891974193e-07, 1.984546779805445888e-07, 1.982567968720136703e-07, 1.980586323466852405e-07, 1.978601847880746155e-07, 1.976614545800582387e-07, 1.974624421068846923e-07, 1.972631477532081018e-07, 1.970635719040682573e-07, 1.968637149448550121e-07, 1.966635772613975116e-07, 1.964631592398500562e-07, 1.962624612667805364e-07, 1.960614837291373724e-07, 1.958602270142165326e-07, 1.956586915097397518e-07, 1.954568776037847568e-07, 1.952547856847885753e-07, 1.950524161415912902e-07, 1.948497693634077171e-07, 1.946468457397946613e-07, 1.944436456607441441e-07, 1.942401695165607154e-07, 1.940364176979571686e-07, 1.938323905960098861e-07, 1.936280886021670712e-07, 1.934235121082474775e-07, 1.932186615064486149e-07, 1.930135371893142708e-07, 1.928081395497797209e-07, 1.926024689811495468e-07, 1.923965258770618763e-07, 1.921903106315712064e-07, 1.919838236390741035e-07, 1.917770652943153435e-07, 1.915700359924271407e-07, 1.913627361289016456e-07, 1.911551660995893033e-07, 1.909473263007140212e-07, 1.907392171288352908e-07, 1.905308389808984001e-07, 1.903221922542096059e-07, 1.901132773463985727e-07, 1.899040946555086347e-07, 1.896946445799118806e-07, 1.894849275183219388e-07, 1.892749438698339732e-07, 1.890646940338913310e-07, 1.888541784102912605e-07, 1.886433973991851491e-07, 1.884323514010895348e-07, 1.882210408168432252e-07, 1.880094660476670133e-07, 1.877976274951222522e-07, 1.875855255611211255e-07, 1.873731606479350119e-07, 1.871605331581579564e-07, 1.869476434947579957e-07, 1.867344920610440178e-07, 1.865210792606702091e-07, 1.863074054976371128e-07, 1.860934711762994115e-07, 1.858792767013320191e-07, 1.856648224777769854e-07, 1.854501089110128440e-07, 1.852351364067617593e-07, 1.850199053710943436e-07, 1.848044162103965439e-07, 1.845886693314208078e-07, 1.843726651412514873e-07, 1.841564040473100007e-07, 1.839398864573569765e-07, 1.837231127794989767e-07, 1.835060834221533186e-07, 1.832887987940897645e-07, 1.830712593044403951e-07, 1.828534653626180032e-07, 1.826354173784052437e-07, 1.824171157619169408e-07, 1.821985609235731418e-07, 1.819797532741534859e-07, 1.817606932247578436e-07, 1.815413811868173548e-07, 1.813218175720993787e-07, 1.811020027926744589e-07, 1.808819372609581996e-07, 1.806616213897191791e-07, 1.804410555920010233e-07, 1.802202402812053619e-07, 1.799991758710601706e-07, 1.797778627755818925e-07, 1.795563014091716033e-07, 1.793344921864912119e-07, 1.791124355225595985e-07, 1.788901318327066898e-07, 1.786675815325950316e-07, 1.784447850381661880e-07, 1.782217427657462491e-07, 1.779984551319153888e-07, 1.777749225536072582e-07, 1.775511454480713725e-07, 1.773271242328361588e-07, 1.771028593258018917e-07, 1.768783511451540312e-07, 1.766536001093724342e-07, 1.764286066372782589e-07, 1.762033711480045571e-07, 1.759778940609585808e-07, 1.757521757959219177e-07, 1.755262167729212128e-07, 1.753000174123305534e-07, 1.750735781348212559e-07, 1.748468993613729037e-07, 1.746199815132703563e-07, 1.743928250121155018e-07, 1.741654302797862549e-07, 1.739377977384920910e-07, 1.737099278107490319e-07, 1.734818209193350445e-07, 1.732534774873883491e-07, 1.730248979383200962e-07, 1.727960826958228363e-07, 1.725670321839170278e-07, 1.723377468269126287e-07, 1.721082270494195529e-07, 1.718784732763522754e-07, 1.716484859328952364e-07, 1.714182654445568136e-07, 1.711878122371305697e-07, 1.709571267367052323e-07, 1.707262093696635813e-07, 1.704950605626888292e-07, 1.702636807427312680e-07, 1.700320703370584568e-07, 1.698002297732194873e-07, 1.695681594790535333e-07, 1.693358598826996979e-07, 1.691033314125542909e-07, 1.688705744973311536e-07, 1.686375895660232776e-07, 1.684043770479065372e-07, 1.681709373725436594e-07, 1.679372709697918212e-07, 1.677033782697625213e-07, 1.674692597028787017e-07, 1.672349156998370814e-07, 1.670003466916139796e-07, 1.667655531094689952e-07, 1.665305353849498242e-07, 1.662952939498542224e-07, 1.660598292362871011e-07, 1.658241416766220398e-07, 1.655882317035099420e-07, 1.653520997498848053e-07, 1.651157462489308198e-07, 1.648791716341330045e-07, 1.646423763392411558e-07, 1.644053607982779469e-07, 1.641681254455387693e-07, 1.639306707156000174e-07, 1.636929970432782463e-07, 1.634551048636920574e-07, 1.632169946122166238e-07, 1.629786667244965546e-07, 1.627401216364444387e-07, 1.625013597842492893e-07, 1.622623816043359384e-07, 1.620231875334247799e-07, 1.617837780084898675e-07, 1.615441534667716467e-07, 1.613043143457801842e-07, 1.610642610832595661e-07, 1.608239941172348816e-07, 1.605835138860218845e-07, 1.603428208281358580e-07, 1.601019153823909818e-07, 1.598607979878613691e-07, 1.596194690838367821e-07, 1.593779291099345732e-07, 1.591361785059578068e-07, 1.588942177120045793e-07, 1.586520471684177532e-07, 1.584096673158038830e-07, 1.581670785949814403e-07, 1.579242814470930985e-07, 1.576812763134603607e-07, 1.574380636356967713e-07, 1.571946438556653787e-07, 1.569510174154372839e-07, 1.567071847573927812e-07, 1.564631463241291908e-07, 1.562189025584712877e-07, 1.559744539035179677e-07, 1.557298008026146400e-07, 1.554849436993103192e-07, 1.552398830374680308e-07, 1.549946192611225628e-07, 1.547491528145908710e-07, 1.545034841424331951e-07, 1.542576136894066833e-07, 1.540115419005709275e-07, 1.537652692211926723e-07, 1.535187960967570906e-07, 1.532721229730169123e-07, 1.530252502959612419e-07, 1.527781785117732077e-07, 1.525309080669347023e-07, 1.522834394081288418e-07, 1.520357729822515324e-07, 1.517879092364628227e-07, 1.515398486181440219e-07, 1.512915915749075204e-07, 1.510431385546052337e-07, 1.507944900052893213e-07, 1.505456463752703404e-07, 1.502966081130764830e-07, 1.500473756674627340e-07, 1.497979494874109508e-07, 1.495483300221383868e-07, 1.492985177210560272e-07, 1.490485130338295765e-07, 1.487983164103380322e-07, 1.485479283006828175e-07, 1.482973491551965958e-07, 1.480465794244013950e-07, 1.477956195590717914e-07, 1.475444700101893549e-07, 1.472931312289545868e-07, 1.470416036667873966e-07, 1.467898877753329251e-07, 1.465379840064209662e-07, 1.462858928121286741e-07, 1.460336146447369935e-07, 1.457811499567405600e-07, 1.455284992008466672e-07, 1.452756628299856166e-07, 1.450226412972672012e-07, 1.447694350560426980e-07, 1.445160445598635219e-07, 1.442624702624896697e-07, 1.440087126178993815e-07, 1.437547720802468419e-07, 1.435006491039241197e-07, 1.432463441435200862e-07, 1.429918576538261332e-07, 1.427371900898399049e-07, 1.424823419067717039e-07, 1.422273135600027744e-07, 1.419721055051483800e-07, 1.417167181980138108e-07, 1.414611520946055010e-07, 1.412054076511279050e-07, 1.409494853239958325e-07, 1.406933855697783592e-07, 1.404371088453173054e-07, 1.401806556075751670e-07, 1.399240263137528004e-07, 1.396672214212455884e-07, 1.394102413876115176e-07, 1.391530866706226093e-07, 1.388957577282743426e-07, 1.386382550186908662e-07, 1.383805790002289983e-07, 1.381227301314353452e-07, 1.378647088710027061e-07, 1.376065156778890540e-07, 1.373481510111618150e-07, 1.370896153301204487e-07, 1.368309090942490949e-07, 1.365720327631846501e-07, 1.363129867967706341e-07, 1.360537716550660307e-07, 1.357943877982481698e-07, 1.355348356867188985e-07, 1.352751157810621226e-07, 1.350152285419971409e-07, 1.347551744304897655e-07, 1.344949539076508362e-07, 1.342345674347479732e-07, 1.339740154732575113e-07, 1.337132984848342971e-07, 1.334524169312626411e-07, 1.331913712745801166e-07, 1.329301619769200382e-07, 1.326687895006342018e-07, 1.324072543082460600e-07, 1.321455568624053793e-07, 1.318836976260016627e-07, 1.316216770620593299e-07, 1.313594956337500784e-07, 1.310971538044476231e-07, 1.308346520376931794e-07, 1.305719907971495917e-07, 1.303091705467249468e-07, 1.300461917504128551e-07, 1.297830548724179181e-07, 1.295197603770958262e-07, 1.292563087289651125e-07, 1.289927003927067811e-07, 1.287289358331742606e-07, 1.284650155153467638e-07, 1.282009399043980565e-07, 1.279367094656491821e-07, 1.276723246645785472e-07, 1.274077859668225298e-07, 1.271430938381845588e-07, 1.268782487445903004e-07, 1.266132511521538063e-07, 1.263481015271315093e-07, 1.260828003359342137e-07, 1.258173480451354602e-07, 1.255517451214266063e-07, 1.252859920316839276e-07, 1.250200892429221894e-07, 1.247540372223057907e-07, 1.244878364371470702e-07, 1.242214873549169205e-07, 1.239549904432005042e-07, 1.236883461697617874e-07, 1.234215550024986732e-07, 1.231546174094539602e-07, 1.228875338588137015e-07, 1.226203048189182427e-07, 1.223529307582153700e-07, 1.220854121453291055e-07, 1.218177494490120615e-07, 1.215499431381559754e-07, 1.212819936818037007e-07, 1.210139015491007936e-07, 1.207456672093651018e-07, 1.204772911320389609e-07, 1.202087737866999932e-07, 1.199401156430622727e-07, 1.196713171709834457e-07, 1.194023788404208964e-07, 1.191333011214984114e-07, 1.188640844844596721e-07, 1.185947293996801927e-07, 1.183252363376636277e-07, 1.180556057690567534e-07, 1.177858381645866689e-07, 1.175159339951896374e-07, 1.172458937318475561e-07, 1.169757178457147593e-07, 1.167054068080703603e-07, 1.164349610902832707e-07, 1.161643811638701169e-07, 1.158936675005034323e-07, 1.156228205719090604e-07, 1.153518408499802131e-07, 1.150807288067302355e-07, 1.148094849142463232e-07, 1.145381096448147644e-07, 1.142666034707584286e-07, 1.139949668645654226e-07, 1.137232002988384809e-07, 1.134513042462616265e-07, 1.131792791796565915e-07, 1.129071255719944903e-07, 1.126348438962890666e-07, 1.123624346257134521e-07, 1.120898982335525472e-07, 1.118172351931543692e-07, 1.115444459780481347e-07, 1.112715310618354679e-07, 1.109984909182049996e-07, 1.107253260209858354e-07, 1.104520368441157660e-07, 1.101786238615897435e-07, 1.099050875475915423e-07, 1.096314283763265359e-07, 1.093576468221498773e-07, 1.090837433595201898e-07, 1.088097184629507566e-07, 1.085355726071264250e-07, 1.082613062667966286e-07, 1.079869199167882778e-07, 1.077124140320604600e-07, 1.074377890876594409e-07, 1.071630455587279551e-07, 1.068881839205172768e-07, 1.066132046483383692e-07, 1.063381082176322155e-07, 1.060628951039228738e-07, 1.057875657828262925e-07, 1.055121207300511036e-07, 1.052365604214086818e-07, 1.049608853327669278e-07, 1.046850959401173960e-07, 1.044091927195304281e-07, 1.041331761471626175e-07, 1.038570466992609123e-07, 1.035808048521679488e-07, 1.033044510822783366e-07, 1.030279858661061040e-07, 1.027514096802390237e-07, 1.024747230013466869e-07, 1.021979263061943463e-07, 1.019210200715936298e-07, 1.016440047744717058e-07, 1.013668808918250671e-07, 1.010896489007290467e-07, 1.008123092783378709e-07, 1.005348625018951146e-07, 1.002573090486865058e-07, 9.997964939610816485e-08, 9.970188402162175122e-08, 9.942401340276199420e-08, 9.914603801713783108e-08, 9.886795834244311425e-08, 9.858977485640835672e-08, 9.831148803687066530e-08, 9.803309836172618765e-08, 9.775460630894149428e-08, 9.747601235656305474e-08, 9.719731698267005519e-08, 9.691852066544495368e-08, 9.663962388312476245e-08, 9.636062711401258879e-08, 9.608153083647555715e-08, 9.580233552895887781e-08, 9.552304166993310591e-08, 9.524364973796830967e-08, 9.496416021168437348e-08, 9.468457356976185045e-08, 9.440489029095400616e-08, 9.412511085403642024e-08, 9.384523573786818446e-08, 9.356526542140212007e-08, 9.328520038357597380e-08, 9.300504110343071128e-08, 9.272478806006438021e-08, 9.244444173259158515e-08, 9.216400260020624735e-08, 9.188347114219069711e-08, 9.160284783780790212e-08, 9.132213316641903291e-08, 9.104132760743700846e-08, 9.076043164027585948e-08, 9.047944574448302434e-08, 9.019837039956957197e-08, 8.991720608514229923e-08, 8.963595328085425894e-08, 8.935461246636885359e-08, 8.907318412141777771e-08, 8.879166872581369687e-08, 8.851006675933953787e-08, 8.822837870186969380e-08, 8.794660503332019475e-08, 8.766474623359862692e-08, 8.738280278273977706e-08, 8.710077516073094510e-08, 8.681866384764721804e-08, 8.653646932358916000e-08, 8.625419206870674098e-08, 8.597183256313743722e-08, 8.568939128713834190e-08, 8.540686872091794969e-08, 8.512426534476501163e-08, 8.484158163900274240e-08, 8.455881808393707193e-08, 8.427597515997860489e-08, 8.399305334753228142e-08, 8.371005312700779297e-08, 8.342697497888062164e-08, 8.314381938364311079e-08, 8.286058682181398088e-08, 8.257727777395092917e-08, 8.229389272060107820e-08, 8.201043214237289424e-08, 8.172689651989940753e-08, 8.144328633378758878e-08, 8.115960206474132782e-08, 8.087584419344916202e-08, 8.059201320059553914e-08, 8.030810956692273018e-08, 8.002413377317988830e-08, 7.974008630013468226e-08, 7.945596762857271410e-08, 7.917177823930868936e-08, 7.888751861313739511e-08, 7.860318923090530063e-08, 7.831879057346121779e-08, 7.803432312166797422e-08, 7.774978735641386146e-08, 7.746518375856246151e-08, 7.718051280902543873e-08, 7.689577498871365016e-08, 7.661097077854695256e-08, 7.632610065945465240e-08, 7.604116511238684815e-08, 7.575616461826358186e-08, 7.547109965804940452e-08, 7.518597071270130998e-08, 7.490077826318302866e-08, 7.461552279047356404e-08, 7.433020477551896473e-08, 7.404482469930505017e-08, 7.375938304280719748e-08, 7.347388028700176317e-08, 7.318831691286581843e-08, 7.290269340138781644e-08, 7.261701023351879536e-08, 7.233126789023171033e-08, 7.204546685253399338e-08, 7.175960760135557300e-08, 7.147369061767086019e-08, 7.118771638244980574e-08, 7.090168537661852653e-08, 7.061559808113442669e-08, 7.032945497693421099e-08, 7.004325654494623300e-08, 6.975700326610257850e-08, 6.947069562128815092e-08, 6.918433409140116796e-08, 6.889791915736674064e-08, 6.861145130002216647e-08, 6.832493100024218446e-08, 6.803835873888722673e-08, 6.775173499676556667e-08, 6.746506025470765936e-08, 6.717833499351524016e-08, 6.689155969397281263e-08, 6.660473483684699995e-08, 6.631786090289913139e-08, 6.603093837282017950e-08, 6.574396772736873392e-08, 6.545694944719491112e-08, 6.516988401297711053e-08, 6.488277190537125872e-08, 6.459561360497221651e-08, 6.430840959237610202e-08, 6.402116034819134180e-08, 6.373386635292561844e-08, 6.344652808711031823e-08, 6.315914603124935178e-08, 6.287172066576858362e-08, 6.258425247115298524e-08, 6.229674192776964500e-08, 6.200918951600609915e-08, 6.172159571620560001e-08, 6.143396100869201078e-08, 6.114628587370639718e-08, 6.085857079154403506e-08, 6.057081624237818781e-08, 6.028302270639658454e-08, 5.999519066375221280e-08, 5.970732059451007458e-08, 5.941941297877344056e-08, 5.913146829656978518e-08, 5.884348702786231430e-08, 5.855546965261191763e-08, 5.826741665072667771e-08, 5.797932850207260994e-08, 5.769120568648720196e-08, 5.740304868372677179e-08, 5.711485797354102666e-08, 5.682663403563615744e-08, 5.653837734962208446e-08, 5.625008839513836092e-08, 5.596176765173974412e-08, 5.567341559890886119e-08, 5.538503271611697049e-08, 5.509661948277377492e-08, 5.480817637823906860e-08, 5.451970388182167147e-08, 5.423120247279181716e-08, 5.394267263032912000e-08, 5.365411483359892050e-08, 5.336552956169896857e-08, 5.307691729367296285e-08, 5.278827850852154225e-08, 5.249961368515137137e-08, 5.221092330245019550e-08, 5.192220783923517829e-08, 5.163346777426468738e-08, 5.134470358623860544e-08, 5.105591575380862689e-08, 5.076710475552801168e-08, 5.047827106992599180e-08, 5.018941517545705521e-08, 4.990053755051239400e-08, 4.961163867343159743e-08, 4.932271902245243214e-08, 4.903377907578430239e-08, 4.874481931155778545e-08, 4.845584020783653635e-08, 4.816684224261652692e-08, 4.787782589383760641e-08, 4.758879163933190533e-08, 4.729973995688766067e-08, 4.701067132425936043e-08, 4.672158621905393024e-08, 4.643248511885687503e-08, 4.614336850118010053e-08, 4.585423684342354529e-08, 4.556509062295044089e-08, 4.527593031703564958e-08, 4.498675640287829690e-08, 4.469756935761230014e-08, 4.440836965825599627e-08, 4.411915778177461066e-08, 4.382993420509183758e-08, 4.354069940497497461e-08, 4.325145385816133571e-08, 4.296219804130654908e-08, 4.267293243094555395e-08, 4.238365750356813876e-08, 4.209437373556750368e-08, 4.180508160325184783e-08, 4.151578158284391925e-08, 4.122647415049301897e-08, 4.093715978221020960e-08, 4.064783895400810882e-08, 4.035851214172128537e-08, 4.006917982114615179e-08, 3.977984246798872632e-08, 3.949050055782601350e-08, 3.920115456616878386e-08, 3.891180496847350518e-08, 3.862245224002745702e-08, 3.833309685607434307e-08, 3.804373929176337652e-08, 3.775438002209728020e-08, 3.746501952207183522e-08, 3.717565826649634310e-08, 3.688629673013338619e-08, 3.659693538764733075e-08, 3.630757471355196304e-08, 3.601821518233735905e-08, 3.572885726835472106e-08, 3.543950144582815008e-08, 3.515014818891772997e-08, 3.486079797168014700e-08, 3.457145126801729878e-08, 3.428210855180342865e-08, 3.399277029676863213e-08, 3.370343697651143668e-08, 3.341410906456176011e-08, 3.312478703432925481e-08, 3.283547135911492791e-08, 3.254616251212346967e-08, 3.225686096641147191e-08, 3.196756719496300588e-08, 3.167828167065066536e-08, 3.138900486618385131e-08, 3.109973725423559521e-08, 3.081047930732681997e-08, 3.052123149783860863e-08, 3.023199429807488485e-08, 2.994276818021133942e-08, 2.965355361630635239e-08, 2.936435107831382426e-08, 2.907516103803119600e-08, 2.878598396717511286e-08, 2.849682033732973887e-08, 2.820767061995859871e-08, 2.791853528640442222e-08, 2.762941480790026504e-08, 2.734030965551830277e-08, 2.705122030024551142e-08, 2.676214721293182634e-08, 2.647309086430212639e-08, 2.618405172495560532e-08, 2.589503026537790812e-08, 2.560602695588887972e-08, 2.531704226671866556e-08, 2.502807666795610219e-08, 2.473913062956032421e-08, 2.445020462137324483e-08, 2.416129911306724492e-08, 2.387241457422126041e-08, 2.358355147426931844e-08, 2.329471028251192925e-08, 2.300589146811574542e-08, 2.271709550012537398e-08, 2.242832284741173390e-08, 2.213957397874783905e-08, 2.185084936275692073e-08, 2.156214946792480893e-08, 2.127347476259855590e-08, 2.098482571499892326e-08, 2.069620279316840859e-08, 2.040760646504730964e-08, 2.011903719842155242e-08, 1.983049546093511213e-08, 1.954198172010162346e-08, 1.925349644325304907e-08, 1.896504009760232034e-08, 1.867661315025569544e-08, 1.838821606809686801e-08, 1.809984931791412137e-08, 1.781151336634840143e-08, 1.752320867985412818e-08, 1.723493572477552130e-08, 1.694669496729430580e-08, 1.665848687344197416e-08, 1.637031190911169770e-08, 1.608217054000678001e-08, 1.579406323170340028e-08, 1.550599044966289523e-08, 1.521795265911615568e-08, 1.492995032519030761e-08, 1.464198391285706961e-08, 1.435405388689380924e-08, 1.406616071194640376e-08, 1.377830485254152046e-08, 1.349048677297085608e-08, 1.320270693741796339e-08, 1.291496580990687504e-08, 1.262726385424971492e-08, 1.233960153418683243e-08, 1.205197931320715378e-08, 1.176439765468798047e-08, 1.147685702184309858e-08, 1.118935787767104360e-08, 1.090190068508213222e-08, 1.061448590678256272e-08, 1.032711400528671019e-08, 1.003978544298012628e-08, 9.752500682080496251e-09, 9.465260184585926975e-09, 9.178064412414573342e-09, 8.890913827225194677e-09, 8.603808890556973076e-09, 8.316750063764730276e-09, 8.029737808031153380e-09, 7.742772584366043783e-09, 7.455854853618284816e-09, 7.168985076424145441e-09, 6.882163713283045034e-09, 6.595391224518718079e-09, 6.308668070227216771e-09, 6.021994710403928730e-09, 5.735371604828011605e-09, 5.448799213074420273e-09, 5.162277994576960339e-09, 4.875808408576552125e-09, 4.589390914133302541e-09, 4.303025970138476875e-09, 4.016714035262783454e-09, 3.730455568032190545e-09, 3.444251026776232524e-09, 3.158100869639959331e-09, 2.872005554583297469e-09, 2.585965539393033374e-09, 2.299981281631155983e-09, 2.014053238710568990e-09, 1.728181867843420594e-09, 1.442367626053136910e-09, 1.156610970173696740e-09, 8.709123568616626029e-10, 5.852722425445134815e-10, 2.996910834963704702e-10, 1.416933578631623131e-11, -2.712925447095672871e-10, -5.566941022961797943e-10, -8.420348815110475945e-10, -1.127314427048624531e-09, -1.412532283811954014e-09, -1.697687996900615188e-09, -1.982781111611468430e-09, -2.267811173426615012e-09, -2.552777728064995799e-09, -2.837680321406769364e-09, -3.122518499544917099e-09, -3.407291808773206495e-09, -3.691999795586906654e-09, -3.976642006670805337e-09, -4.261217988950729080e-09, -4.545727289517964532e-09, -4.830169455680859219e-09, -5.114544034952777380e-09, -5.398850575040081038e-09, -5.683088623893703878e-09, -5.967257729646325228e-09, -6.251357440600285778e-09, -6.535387305342733601e-09, -6.819346872619192907e-09, -7.103235691385171838e-09, -7.387053310844874527e-09, -7.670799280375762220e-09, -7.954473149579951798e-09, -8.238074468272458236e-09, -8.521602786468877883e-09, -8.805057654437045885e-09, -9.088438622634248223e-09, -9.371745241695187880e-09, -9.654977062546982807e-09, -9.938133636282769410e-09, -1.022121451421346090e-08, -1.050421924791886043e-08, -1.078714738912172948e-08, -1.106999848980256080e-08, -1.135277210218752144e-08, -1.163546777868584511e-08, -1.191808507192853924e-08, -1.220062353481964870e-08, -1.248308272039787180e-08, -1.276546218201422871e-08, -1.304776147319361299e-08, -1.332998014768620746e-08, -1.361211775951864032e-08, -1.389417386286822896e-08, -1.417614801217744184e-08, -1.445803976214220382e-08, -1.473984866764891468e-08, -1.502157428381343404e-08, -1.530321616603214666e-08, -1.558477386984360808e-08, -1.586624695110638028e-08, -1.614763496586026049e-08, -1.642893747039085756e-08, -1.671015402121678719e-08, -1.699128417509107151e-08, -1.727232748898865863e-08, -1.755328352015810148e-08, -1.783415182604598999e-08, -1.811493196433598075e-08, -1.839562349299942705e-08, -1.867622597017051105e-08, -1.895673895425997778e-08, -1.923716200394326345e-08, -1.951749467809834108e-08, -1.979773653585658222e-08, -2.007788713659101758e-08, -2.035794603990421386e-08, -2.063791280567971118e-08, -2.091778699400661394e-08, -2.119756816521843527e-08, -2.147725587994392230e-08, -2.175684969898200629e-08, -2.203634918341558299e-08, -2.231575389459977660e-08, -2.259506339409942144e-08, -2.287427724374059204e-08, -2.315339500559805311e-08, -2.343241624199630841e-08, -2.371134051549757028e-08, -2.399016738895282972e-08, -2.426889642542692375e-08, -2.454752718824958575e-08, -2.482605924100373912e-08, -2.510449214751327162e-08, -2.538282547189389701e-08, -2.566105877847894373e-08, -2.593919163186972025e-08, -2.621722359692401068e-08, -2.649515423875631298e-08, -2.677298312272676135e-08, -2.705070981449083316e-08, -2.732833387992573654e-08, -2.760585488518059039e-08, -2.788327239666497296e-08, -2.816058598103687806e-08, -2.843779520525334185e-08, -2.871489963649621825e-08, -2.899189884222289833e-08, -2.926879239015415411e-08, -2.954557984827507488e-08, -2.982226078482329813e-08, -3.009883476833917634e-08, -3.037530136760463513e-08, -3.065166015163058356e-08, -3.092791068977106508e-08, -3.120405255159752605e-08, -3.148008530695089501e-08, -3.175600852597866031e-08, -3.203182177906100607e-08, -3.230752463686160780e-08, -3.258311667031536357e-08, -3.285859745061682678e-08, -3.313396654927082957e-08, -3.340922353803051046e-08, -3.368436798888566768e-08, -3.395939947417560641e-08, -3.423431756646498891e-08, -3.450912183859464327e-08, -3.478381186373141264e-08, -3.505838721523306667e-08, -3.533284746682159918e-08, -3.560719219244821907e-08, -3.588142096635552776e-08, -3.615553336305376928e-08, -3.642952895738325255e-08, -3.670340732437822394e-08, -3.697716803944235533e-08, -3.725081067821122693e-08, -3.752433481660400295e-08, -3.779774003087288372e-08, -3.807102589748012055e-08, -3.834419199321014164e-08, -3.861723789515762749e-08, -3.889016318066630613e-08, -3.916296742736719535e-08, -3.943565021322783648e-08, -3.970821111641764926e-08, -3.998064971548102428e-08, -4.025296558920292940e-08, -4.052515831665764712e-08, -4.079722747726003339e-08, -4.106917265064222134e-08, -4.134099341676511198e-08, -4.161268935590693268e-08, -4.188426004860201916e-08, -4.215570507567875989e-08, -4.242702401830902186e-08, -4.269821645788615791e-08, -4.296928197613577619e-08, -4.324022015510515221e-08, -4.351103057710101168e-08, -4.378171282474001490e-08, -4.405226648093752708e-08, -4.432269112889493258e-08, -4.459298635215024521e-08, -4.486315173450462147e-08, -4.513318686007248771e-08, -4.540309131326931769e-08, -4.567286467881266491e-08, -4.594250654171041004e-08, -4.621201648731032557e-08, -4.648139410122741626e-08, -4.675063896939327867e-08, -4.701975067804469932e-08, -4.728872881371188221e-08, -4.755757296326802015e-08, -4.782628271385636386e-08, -4.809485765294021678e-08, -4.836329736829079209e-08, -4.863160144798832437e-08, -4.889976948040978769e-08, -4.916780105427936023e-08, -4.943569575859504339e-08, -4.970345318267792210e-08, -4.997107291616116000e-08, -5.023855454899044280e-08, -5.050589767141220581e-08, -5.077310187402293399e-08, -5.104016674769736259e-08, -5.130709188363679778e-08, -5.157387687335838976e-08, -5.184052130868275150e-08, -5.210702478178418519e-08, -5.237338688511760575e-08, -5.263960721146788715e-08, -5.290568535393844068e-08, -5.317162090595224729e-08, -5.343741346123932412e-08, -5.370306261388693771e-08, -5.396856795826606431e-08, -5.423392908908227141e-08, -5.449914560136275418e-08, -5.476421709045725530e-08, -5.502914315202766230e-08, -5.529392338209507088e-08, -5.555855737696911719e-08, -5.582304473329703291e-08, -5.608738504805142954e-08, -5.635157791851914792e-08, -5.661562294235006854e-08, -5.687951971749795819e-08, -5.714326784220819462e-08, -5.740686691512686831e-08, -5.767031653518153618e-08, -5.793361630162963475e-08, -5.819676581410723089e-08, -5.845976467249689791e-08, -5.872261247709726775e-08, -5.898530882849144966e-08, -5.924785332760686519e-08, -5.951024557569275545e-08, -5.977248517438016829e-08, -6.003457172555075418e-08, -6.029650483150540521e-08, -6.055828409483240909e-08, -6.081990911845729176e-08, -6.108137950568966889e-08, -6.134269486010508481e-08, -6.160385478565310183e-08, -6.186485888664574616e-08, -6.212570676769855978e-08, -6.238639803376674484e-08, -6.264693229019390784e-08, -6.290730914258148415e-08, -6.316752819695516676e-08, -6.342758905963570729e-08, -6.368749133728628370e-08, -6.394723463696096638e-08, -6.420681856598672916e-08, -6.446624273207020193e-08, -6.472550674328733417e-08, -6.498461020802369236e-08, -6.524355273501118684e-08, -6.550233393337546590e-08, -6.576095341251919732e-08, -6.601941078222785482e-08, -6.627770565265906400e-08, -6.653583763428458055e-08, -6.679380633793723446e-08, -6.705161137479954793e-08, -6.730925235639380928e-08, -6.756672889462854063e-08, -6.782404060172868382e-08, -6.808118709028366956e-08, -6.833816797323562515e-08, -6.859498286388105530e-08, -6.885163137585775280e-08, -6.910811312319411177e-08, -6.936442772023853271e-08, -6.962057478170640640e-08, -6.987655392267024064e-08, -7.013236475854710034e-08, -7.038800690514752370e-08, -7.064347997860417290e-08, -7.089878359542043262e-08, -7.115391737245885596e-08, -7.140888092694136302e-08, -7.166367387643882496e-08, -7.191829583891799500e-08, -7.217274643267156198e-08, -7.242702527636674887e-08, -7.268113198903232939e-08, -7.293506619006049408e-08, -7.318882749919533595e-08, -7.344241553658005938e-08, -7.369582992268781454e-08, -7.394907027836796657e-08, -7.420213622483676498e-08, -7.445502738366446615e-08, -7.470774337682317739e-08, -7.496028382661749291e-08, -7.521264835573176886e-08, -7.546483658721882072e-08, -7.571684814450050563e-08, -7.596868265135713449e-08, -7.622033973197303969e-08, -7.647181901086955360e-08, -7.672312011294998077e-08, -7.697424266348969817e-08, -7.722518628813644643e-08, -7.747595061289945071e-08, -7.772653526420678073e-08, -7.797693986878099574e-08, -7.822716405379854553e-08, -7.847720744676525661e-08, -7.872706967556294547e-08, -7.897675036848335282e-08, -7.922624915417196154e-08, -7.947556566161713076e-08, -7.972469952025391041e-08, -7.997365035984937408e-08, -8.022241781054966909e-08, -8.047100150292538566e-08, -8.071940106784745338e-08, -8.096761613664685982e-08, -8.121564634098979262e-08, -8.146349131292367044e-08, -8.171115068491261240e-08, -8.195862408977982669e-08, -8.220591116069730054e-08, -8.245301153128916471e-08, -8.269992483551780728e-08, -8.294665070773003693e-08, -8.319318878270298158e-08, -8.343953869553222702e-08, -8.368570008173266686e-08, -8.393167257722832484e-08, -8.417745581829672859e-08, -8.442304944160310865e-08, -8.466845308424605874e-08, -8.491366638363304846e-08, -8.515868897764110808e-08, -8.540352050449107058e-08, -8.564816060279405260e-08, -8.589260891159677075e-08, -8.613686507026991845e-08, -8.638092871860988939e-08, -8.662479949682742194e-08, -8.686847704549250234e-08, -8.711196100556870917e-08, -8.735525101845800033e-08, -8.759834672587806518e-08, -8.784124777002016397e-08, -8.808395379342603003e-08, -8.832646443904409164e-08, -8.856877935021906935e-08, -8.881089817069363042e-08, -8.905282054459549797e-08, -8.929454611648402458e-08, -8.953607453128335611e-08, -8.977740543432789352e-08, -9.001853847135145353e-08, -9.025947328848732151e-08, -9.050020953225812684e-08, -9.074074684962130472e-08, -9.098108488790151886e-08, -9.122122329483694385e-08, -9.146116171856772434e-08, -9.170089980762585039e-08, -9.194043721097997077e-08, -9.217977357796892734e-08, -9.241890855834815660e-08, -9.265784180227683859e-08, -9.289657296031973656e-08, -9.313510168343618552e-08, -9.337342762302507764e-08, -9.361155043085940248e-08, -9.384946975912945892e-08, -9.408718526043442453e-08, -9.432469658778136294e-08, -9.456200339457454328e-08, -9.479910533466069031e-08, -9.503600206226377607e-08, -9.527269323202848329e-08, -9.550917849900967037e-08, -9.574545751866325262e-08, -9.598152994688986410e-08, -9.621739543996820672e-08, -9.645305365460151797e-08, -9.668850424790569919e-08, -9.692374687740980528e-08, -9.715878120104736260e-08, -9.739360687719697364e-08, -9.762822356462199235e-08, -9.786263092251024206e-08, -9.809682861046665692e-08, -9.833081628850036458e-08, -9.856459361707163041e-08, -9.879816025703498711e-08, -9.903151586963059239e-08, -9.926466011658227301e-08, -9.949759265998960747e-08, -9.973031316237006592e-08, -9.996282128669506202e-08, -1.001951166963328973e-07, -1.004271990550409260e-07, -1.006590680270623421e-07, -1.008907232770180633e-07, -1.011221644699527089e-07, -1.013533912713748475e-07, -1.015844033471413104e-07, -1.018152003636071432e-07, -1.020457819875090990e-07, -1.022761478860074603e-07, -1.025062977267197623e-07, -1.027362311776681833e-07, -1.029659479072669060e-07, -1.031954475844219613e-07, -1.034247298784222125e-07, -1.036537944589840097e-07, -1.038826409962941110e-07, -1.041112691608920899e-07, -1.043396786238207635e-07, -1.045678690565100165e-07, -1.047958401308285891e-07, -1.050235915190651385e-07, -1.052511228939806746e-07, -1.054784339286923718e-07, -1.057055242968234934e-07, -1.059323936723855215e-07, -1.061590417298235003e-07, -1.063854681440561768e-07, -1.066116725903714326e-07, -1.068376547445232952e-07, -1.070634142827199607e-07, -1.072889508815722701e-07, -1.075142642181364318e-07, -1.077393539699042806e-07, -1.079642198147923456e-07, -1.081888614311845724e-07, -1.084132784978692593e-07, -1.086374706940838700e-07, -1.088614376995012697e-07, -1.090851791942330734e-07, -1.093086948588183698e-07, -1.095319843742668009e-07, -1.097550474219952066e-07, -1.099778836838704395e-07, -1.102004928421992930e-07, -1.104228745797287532e-07, -1.106450285796366414e-07, -1.108669545255727748e-07, -1.110886521015978611e-07, -1.113101209922248705e-07, -1.115313608824091230e-07, -1.117523714575386401e-07, -1.119731524034760860e-07, -1.121937034064964847e-07, -1.124140241533297165e-07, -1.126341143311496264e-07, -1.128539736275768028e-07, -1.130736017306652506e-07, -1.132929983289461452e-07, -1.135121631113671639e-07, -1.137310957673315293e-07, -1.139497959866902263e-07, -1.141682634597416986e-07, -1.143864978772230997e-07, -1.146044989303496408e-07, -1.148222663107547951e-07, -1.150397997105316442e-07, -1.152570988222228716e-07, -1.154741633388111287e-07, -1.156909929537596918e-07, -1.159075873609528917e-07, -1.161239462547363750e-07, -1.163400693299064888e-07, -1.165559562817133785e-07, -1.167716068058480300e-07, -1.169870205984852575e-07, -1.172021973562231796e-07, -1.174171367761230171e-07, -1.176318385557015622e-07, -1.178463023929183933e-07, -1.180605279862192861e-07, -1.182745150344848086e-07, -1.184882632370211233e-07, -1.187017722936508445e-07, -1.189150419046128900e-07, -1.191280717706036813e-07, -1.193408615928067367e-07, -1.195534110728429480e-07, -1.197657199127610380e-07, -1.199777878151294106e-07, -1.201896144829340835e-07, -1.204011996196219398e-07, -1.206125429291372031e-07, -1.208236441158169088e-07, -1.210345028845271170e-07, -1.212451189405545988e-07, -1.214554919896481284e-07, -1.216656217380470979e-07, -1.218755078924341090e-07, -1.220851501599230092e-07, -1.222945482481521182e-07, -1.225037018651811545e-07, -1.227126107195347255e-07, -1.229212745202401261e-07, -1.231296929767204802e-07, -1.233378657989322514e-07, -1.235457926972576432e-07, -1.237534733825548917e-07, -1.239609075661375131e-07, -1.241680949598245434e-07, -1.243750352758332567e-07, -1.245817282269164633e-07, -1.247881735262550166e-07, -1.249943708874976497e-07, -1.252003200247998596e-07, -1.254060206527284575e-07, -1.256114724863467213e-07, -1.258166752412075672e-07, -1.260216286333039185e-07, -1.262263323791083839e-07, -1.264307861955644693e-07, -1.266349898000756196e-07, -1.268389429105464851e-07, -1.270426452453243170e-07, -1.272460965232265229e-07, -1.274492964635830448e-07, -1.276522447861374678e-07, -1.278549412111354559e-07, -1.280573854593155669e-07, -1.282595772518599654e-07, -1.284615163104361395e-07, -1.286632023571849632e-07, -1.288646351147211454e-07, -1.290658143061266401e-07, -1.292667396549861415e-07, -1.294674108853320802e-07, -1.296678277216819720e-07, -1.298679898890308741e-07, -1.300678971128403733e-07, -1.302675491190776560e-07, -1.304669456341592063e-07, -1.306660863849887907e-07, -1.308649710989484846e-07, -1.310635995038983281e-07, -1.312619713281695234e-07, -1.314600863005990309e-07, -1.316579441504761265e-07, -1.318555446075789828e-07, -1.320528874021663051e-07, -1.322499722649680664e-07, -1.324467989272235183e-07, -1.326433671206240693e-07, -1.328396765773543655e-07, -1.330357270300792152e-07, -1.332315182119463410e-07, -1.334270498565765072e-07, -1.336223216981024298e-07, -1.338173334711201786e-07, -1.340120849106823740e-07, -1.342065757523820964e-07, -1.344008057322587596e-07, -1.345947745868363862e-07, -1.347884820531524594e-07, -1.349819278687014369e-07, -1.351751117714731317e-07, -1.353680334999437391e-07, -1.355606927930646134e-07, -1.357530893903053076e-07, -1.359452230315998667e-07, -1.361370934573444714e-07, -1.363287004084775092e-07, -1.365200436263883336e-07, -1.367111228529550889e-07, -1.369019378305711005e-07, -1.370924883020930741e-07, -1.372827740108741295e-07, -1.374727947007584273e-07, -1.376625501160787339e-07, -1.378520400016503861e-07, -1.380412641028140932e-07, -1.382302221653387127e-07, -1.384189139355485973e-07, -1.386073391602220033e-07, -1.387954975866295249e-07, -1.389833889625605112e-07, -1.391710130362800260e-07, -1.393583695565169366e-07, -1.395454582725488289e-07, -1.397322789341094689e-07, -1.399188312914279252e-07, -1.401051150952615238e-07, -1.402911300967995510e-07, -1.404768760477889848e-07, -1.406623527004354981e-07, -1.408475598074403311e-07, -1.410324971220259402e-07, -1.412171643978950232e-07, -1.414015613892174694e-07, -1.415856878507137927e-07, -1.417695435375660601e-07, -1.419531282054528062e-07, -1.421364416105851373e-07, -1.423194835096194081e-07, -1.425022536597348836e-07, -1.426847518186296365e-07, -1.428669777444705194e-07, -1.430489311959342192e-07, -1.432306119321948696e-07, -1.434120197129184654e-07, -1.435931542982966121e-07, -1.437740154489931094e-07, -1.439546029261754506e-07, -1.441349164915436215e-07, -1.443149559072466941e-07, -1.444947209359615480e-07, -1.446742113408833672e-07, -1.448534268856832892e-07, -1.450323673345421004e-07, -1.452110324521448631e-07, -1.453894220036691892e-07, -1.455675357548206303e-07, -1.457453734717835498e-07, -1.459229349212535223e-07, -1.461002198704295507e-07, -1.462772280870148874e-07, -1.464539593392075580e-07, -1.466304133957381069e-07, -1.468065900258137201e-07, -1.469824889991557059e-07, -1.471581100859916337e-07, -1.473334530570537193e-07, -1.475085176835714132e-07, -1.476833037373061026e-07, -1.478578109905005806e-07, -1.480320392159121600e-07, -1.482059881868049968e-07, -1.483796576769421230e-07, -1.485530474606194072e-07, -1.487261573126155003e-07, -1.488989870082244993e-07, -1.490715363232489591e-07, -1.492438050340011898e-07, -1.494157929172928802e-07, -1.495874997504693234e-07, -1.497589253113606331e-07, -1.499300693783154657e-07, -1.501009317301912271e-07, -1.502715121463547868e-07, -1.504418104066778991e-07, -1.506118262915647312e-07, -1.507815595819064945e-07, -1.509510100591143990e-07, -1.511201775051098599e-07, -1.512890617023182767e-07, -1.514576624337010623e-07, -1.516259794827165201e-07, -1.517940126333095209e-07, -1.519617616699867040e-07, -1.521292263777349230e-07, -1.522964065420546514e-07, -1.524633019489837520e-07, -1.526299123850488257e-07, -1.527962376372984574e-07, -1.529622774932967046e-07, -1.531280317411198149e-07, -1.532935001693519117e-07, -1.534586825671239573e-07, -1.536235787240250533e-07, -1.537881884302157043e-07, -1.539525114763399912e-07, -1.541165476535587909e-07, -1.542802967535717727e-07, -1.544437585685790438e-07, -1.546069328912730223e-07, -1.547698195149110183e-07, -1.549324182332348712e-07, -1.550947288405039042e-07, -1.552567511315260272e-07, -1.554184849015729532e-07, -1.555799299464875339e-07, -1.557410860626000881e-07, -1.559019530467586575e-07, -1.560625306963616694e-07, -1.562228188092791637e-07, -1.563828171839228575e-07, -1.565425256192409045e-07, -1.567019439146760729e-07, -1.568610718701906795e-07, -1.570199092862984067e-07, -1.571784559639866401e-07, -1.573367117047861369e-07, -1.574946763107618674e-07, -1.576523495844799014e-07, -1.578097313290321836e-07, -1.579668213480325371e-07, -1.581236194456081397e-07, -1.582801254264313939e-07, -1.584363390956723075e-07, -1.585922602590240898e-07, -1.587478887227319249e-07, -1.589032242935188552e-07, -1.590582667786514805e-07, -1.592130159859355369e-07, -1.593674717236772245e-07, -1.595216338007128541e-07, -1.596755020264022287e-07, -1.598290762106210479e-07, -1.599823561637929618e-07, -1.601353416968411054e-07, -1.602880326212216093e-07, -1.604404287489144408e-07, -1.605925298924244895e-07, -1.607443358647731234e-07, -1.608958464795311173e-07, -1.610470615507697098e-07, -1.611979808930949882e-07, -1.613486043216376178e-07, -1.614989316520541654e-07, -1.616489627005201909e-07, -1.617986972837590196e-07, -1.619481352189984382e-07, -1.620972763240002610e-07, -1.622461204170533684e-07, -1.623946673169661104e-07, -1.625429168430954763e-07, -1.626908688153041866e-07, -1.628385230539897841e-07, -1.629858793800771158e-07, -1.631329376150194185e-07, -1.632796975807908543e-07, -1.634261590999154421e-07, -1.635723219954232500e-07, -1.637181860908810737e-07, -1.638637512103836222e-07, -1.640090171785551592e-07, -1.641539838205420116e-07, -1.642986509620406277e-07, -1.644430184292566286e-07, -1.645870860489310396e-07, -1.647308536483363462e-07, -1.648743210552663034e-07, -1.650174880980670638e-07, -1.651603546056004380e-07, -1.653029204072377004e-07, -1.654451853329246517e-07, -1.655871492131075307e-07, -1.657288118787642744e-07, -1.658701731614257470e-07, -1.660112328931329913e-07, -1.661519909064648101e-07, -1.662924470345322077e-07, -1.664326011109706341e-07, -1.665724529699702135e-07, -1.667120024462370189e-07, -1.668512493749896844e-07, -1.669901935920210793e-07, -1.671288349336290634e-07, -1.672671732366433009e-07, -1.674052083384473096e-07, -1.675429400769462738e-07, -1.676803682905556090e-07, -1.678174928182650725e-07, -1.679543134995728525e-07, -1.680908301745088362e-07, -1.682270426836644934e-07, -1.683629508681178613e-07, -1.684985545695300006e-07, -1.686338536300671478e-07, -1.687688478924307582e-07, -1.689035371998845583e-07, -1.690379213961857240e-07, -1.691720003256467675e-07, -1.693057738331289721e-07, -1.694392417640078764e-07, -1.695724039641963551e-07, -1.697052602801675691e-07, -1.698378105588837347e-07, -1.699700546478906474e-07, -1.701019923952420316e-07, -1.702336236495353801e-07, -1.703649482599031930e-07, -1.704959660760162333e-07, -1.706266769480728067e-07, -1.707570807268294403e-07, -1.708871772635584246e-07, -1.710169664100691749e-07, -1.711464480187344364e-07, -1.712756219424247981e-07, -1.714044880345669787e-07, -1.715330461491404126e-07, -1.716612961406399802e-07, -1.717892378641054423e-07, -1.719168711751140815e-07, -1.720441959297757788e-07, -1.721712119847559630e-07, -1.722979191972398764e-07, -1.724243174249516596e-07, -1.725504065261780417e-07, -1.726761863597064810e-07, -1.728016567848824447e-07, -1.729268176616026072e-07, -1.730516688502830062e-07, -1.731762102118843479e-07, -1.733004416079092017e-07, -1.734243629003966528e-07, -1.735479739519196289e-07, -1.736712746256095700e-07, -1.737942647851174121e-07, -1.739169442946413804e-07, -1.740393130189189687e-07, -1.741613708232202164e-07, -1.742831175733765607e-07, -1.744045531357380344e-07, -1.745256773772023567e-07, -1.746464901652064624e-07, -1.747669913677290702e-07, -1.748871808532821850e-07, -1.750070584909366685e-07, -1.751266241502876427e-07, -1.752458777014748717e-07, -1.753648190151790298e-07, -1.754834479626174923e-07, -1.756017644155649557e-07, -1.757197682463207479e-07, -1.758374593277303208e-07, -1.759548375331801954e-07, -1.760719027366001319e-07, -1.761886548124544476e-07, -1.763050936357661576e-07, -1.764212190820895254e-07, -1.765370310275013808e-07, -1.766525293486576331e-07, -1.767677139227307494e-07, -1.768825846274374946e-07, -1.769971413410523256e-07, -1.771113839423755216e-07, -1.772253123107550742e-07, -1.773389263260818173e-07, -1.774522258687830480e-07, -1.775652108198451579e-07, -1.776778810607880107e-07, -1.777902364736546715e-07, -1.779022769410664645e-07, -1.780140023461647390e-07, -1.781254125726334485e-07, -1.782365075047227612e-07, -1.783472870271860892e-07, -1.784577510253588353e-07, -1.785678993850993130e-07, -1.786777319928133895e-07, -1.787872487354439246e-07, -1.788964495005014223e-07, -1.790053341759995244e-07, -1.791139026505356635e-07, -1.792221548132271653e-07, -1.793300905537373741e-07, -1.794377097622938637e-07, -1.795450123296354987e-07, -1.796519981470616673e-07, -1.797586671064268028e-07, -1.798650191001130664e-07, -1.799710540210466525e-07, -1.800767717627197061e-07, -1.801821722191308449e-07, -1.802872552848620276e-07, -1.803920208550155294e-07, -1.804964688252453084e-07, -1.806005990917493564e-07, -1.807044115512703072e-07, -1.808079061010895606e-07, -1.809110826390507080e-07, -1.810139410635249894e-07, -1.811164812734283398e-07, -1.812187031682426976e-07, -1.813206066479641239e-07, -1.814221916131480389e-07, -1.815234579649057548e-07, -1.816244056048799645e-07, -1.817250344352605708e-07, -1.818253443587847656e-07, -1.819253352787283479e-07, -1.820250070989291760e-07, -1.821243597237538154e-07, -1.822233930581146653e-07, -1.823221070074897307e-07, -1.824205014778717483e-07, -1.825185763758152493e-07, -1.826163316084287508e-07, -1.827137670833517802e-07, -1.828108827087745423e-07, -1.829076783934327046e-07, -1.830041540466072649e-07, -1.831003095781208986e-07, -1.831961448983561701e-07, -1.832916599182261508e-07, -1.833868545491954630e-07, -1.834817287032732920e-07, -1.835762822930107915e-07, -1.836705152315196130e-07, -1.837644274324409624e-07, -1.838580188099698197e-07, -1.839512892788449073e-07, -1.840442387543506484e-07, -1.841368671523138851e-07, -1.842291743891214541e-07, -1.843211603816914140e-07, -1.844128250474921833e-07, -1.845041683045403692e-07, -1.845951900713914512e-07, -1.846858902671630737e-07, -1.847762688115030972e-07, -1.848663256246115419e-07, -1.849560606272339966e-07, -1.850454737406615924e-07, -1.851345648867291759e-07, -1.852233339878289944e-07, -1.853117809668926700e-07, -1.853999057473814057e-07, -1.854877082533331278e-07, -1.855751884093111879e-07, -1.856623461404269152e-07, -1.857491813723503890e-07, -1.858356940312857432e-07, -1.859218840439866773e-07, -1.860077513377527503e-07, -1.860932958404267079e-07, -1.861785174804100726e-07, -1.862634161866421535e-07, -1.863479918885930846e-07, -1.864322445163106235e-07, -1.865161740003667089e-07, -1.865997802718811245e-07, -1.866830632625377512e-07, -1.867660229045348576e-07, -1.868486591306493942e-07, -1.869309718741859868e-07, -1.870129610689986414e-07, -1.870946266494867739e-07, -1.871759685506105358e-07, -1.872569867078462660e-07, -1.873376810572472385e-07, -1.874180515353964672e-07, -1.874980980794210523e-07, -1.875778206270130913e-07, -1.876572191163854747e-07, -1.877362934863090759e-07, -1.878150436761099456e-07, -1.878934696256472357e-07, -1.879715712753255610e-07, -1.880493485661140571e-07, -1.881268014394966705e-07, -1.882039298375345212e-07, -1.882807337028174365e-07, -1.883572129784806537e-07, -1.884333676082225280e-07, -1.885091975362622340e-07, -1.885847027073774324e-07, -1.886598830669003255e-07, -1.887347385606948406e-07, -1.888092691351747884e-07, -1.888834747373119093e-07, -1.889573553146015427e-07, -1.890309108150959784e-07, -1.891041411874024189e-07, -1.891770463806605326e-07, -1.892496263445597917e-07, -1.893218810293374076e-07, -1.893938103857693841e-07, -1.894654143651906344e-07, -1.895366929194701258e-07, -1.896076460010244855e-07, -1.896782735628181329e-07, -1.897485755583591234e-07, -1.898185519416971109e-07, -1.898882026674413202e-07, -1.899575276907313248e-07, -1.900265269672573752e-07, -1.900952004532550792e-07, -1.901635481055008218e-07, -1.902315698813280976e-07, -1.902992657386027880e-07, -1.903666356357424043e-07, -1.904336795317070623e-07, -1.905003973860023400e-07, -1.905667891586752021e-07, -1.906328548103290610e-07, -1.906985943020997952e-07, -1.907640075956723987e-07, -1.908290946532775664e-07, -1.908938554376891269e-07, -1.909582899122233271e-07, -1.910223980407496857e-07, -1.910861797876741046e-07, -1.911496351179474723e-07, -1.912127639970677545e-07, -1.912755663910713917e-07, -1.913380422665527015e-07, -1.914001915906371706e-07, -1.914620143309976542e-07, -1.915235104558529466e-07, -1.915846799339644464e-07, -1.916455227346342766e-07, -1.917060388277183875e-07, -1.917662281836083984e-07, -1.918260907732407030e-07, -1.918856265680962313e-07, -1.919448355401990998e-07, -1.920037176621139642e-07, -1.920622729069601281e-07, -1.921205012483865818e-07, -1.921784026605947399e-07, -1.922359771183239094e-07, -1.922932245968560541e-07, -1.923501450720258801e-07, -1.924067385202037621e-07, -1.924630049182932821e-07, -1.925189442437612991e-07, -1.925745564746031148e-07, -1.926298415893585671e-07, -1.926847995671223535e-07, -1.927394303875078467e-07, -1.927937340306947141e-07, -1.928477104773929978e-07, -1.929013597088557677e-07, -1.929546817068764475e-07, -1.930076764538049883e-07, -1.930603439325082163e-07, -1.931126841264194378e-07, -1.931646970194994749e-07, -1.932163825962522041e-07, -1.932677408417349319e-07, -1.933187717415286164e-07, -1.933694752817628283e-07, -1.934198514491190070e-07, -1.934699002308076695e-07, -1.935196216145801901e-07, -1.935690155887428554e-07, -1.936180821421210245e-07, -1.936668212641020363e-07, -1.937152329446018311e-07, -1.937633171740787946e-07, -1.938110739435422808e-07, -1.938585032445240514e-07, -1.939056050691060689e-07, -1.939523794099174526e-07, -1.939988262601162938e-07, -1.940449456134022556e-07, -1.940907374640279547e-07, -1.941362018067635186e-07, -1.941813386369405517e-07, -1.942261479504174069e-07, -1.942706297435964970e-07, -1.943147840134187097e-07, -1.943586107573644926e-07, -1.944021099734510208e-07, -1.944452816602434471e-07, -1.944881258168376167e-07, -1.945306424428697554e-07, -1.945728315385161256e-07, -1.946146931044912788e-07, -1.946562271420460446e-07, -1.946974336529765033e-07, -1.947383126396124721e-07, -1.947788641048206015e-07, -1.948190880520078434e-07, -1.948589844851166068e-07, -1.948985534086340487e-07, -1.949377948275780187e-07, -1.949767087475065618e-07, -1.950152951745136300e-07, -1.950535541152345089e-07, -1.950914855768358383e-07, -1.951290895670296679e-07, -1.951663660940581049e-07, -1.952033151667021808e-07, -1.952399367942793906e-07, -1.952762309866448036e-07, -1.953121977541871468e-07, -1.953478371078391007e-07, -1.953831490590617623e-07, -1.954181336198547033e-07, -1.954527908027543024e-07, -1.954871206208292722e-07, -1.955211230876909028e-07, -1.955547982174820768e-07, -1.955881460248803928e-07, -1.956211665250986950e-07, -1.956538597338869257e-07, -1.956862256675258522e-07, -1.957182643428389254e-07, -1.957499757771776416e-07, -1.957813599884297485e-07, -1.958124169950185039e-07, -1.958431468159006374e-07, -1.958735494705646037e-07, -1.959036249790420968e-07, -1.959333733618830887e-07, -1.959627946401878321e-07, -1.959918888355782987e-07, -1.960206559702142204e-07, -1.960490960667918979e-07, -1.960772091485370276e-07, -1.961049952392027692e-07, -1.961324543630874538e-07, -1.961595865450131438e-07, -1.961863918103347116e-07, -1.962128701849468810e-07, -1.962390216952645860e-07, -1.962648463682474826e-07, -1.962903442313785605e-07, -1.963155153126729580e-07, -1.963403596406839705e-07, -1.963648772444910332e-07, -1.963890681536992446e-07, -1.964129323984589806e-07, -1.964364700094411190e-07, -1.964596810178475214e-07, -1.964825654554187621e-07, -1.965051233544146468e-07, -1.965273547476311002e-07, -1.965492596683959570e-07, -1.965708381505649653e-07, -1.965920902285209394e-07, -1.966130159371837390e-07, -1.966336153119911316e-07, -1.966538883889220062e-07, -1.966738352044771301e-07, -1.966934557956858721e-07, -1.967127502001141169e-07, -1.967317184558461335e-07, -1.967503606014989214e-07, -1.967686766762214437e-07, -1.967866667196850442e-07, -1.968043307720893771e-07, -1.968216688741692629e-07, -1.968386810671735649e-07, -1.968553673928922152e-07, -1.968717278936337419e-07, -1.968877626122367306e-07, -1.969034715920655623e-07, -1.969188548770112608e-07, -1.969339125114899841e-07, -1.969486445404492706e-07, -1.969630510093564728e-07, -1.969771319642087088e-07, -1.969908874515269604e-07, -1.970043175183576610e-07, -1.970174222122716633e-07, -1.970302015813694536e-07, -1.970426556742717819e-07, -1.970547845401241351e-07, -1.970665882285997810e-07, -1.970780667898924363e-07, -1.970892202747246572e-07, -1.971000487343382578e-07, -1.971105522205012183e-07, -1.971207307855044561e-07, -1.971305844821614547e-07, -1.971401133638099054e-07, -1.971493174843119185e-07, -1.971581968980496827e-07, -1.971667516599290913e-07, -1.971749818253773598e-07, -1.971828874503449584e-07, -1.971904685913031501e-07, -1.971977253052471145e-07, -1.972046576496924531e-07, -1.972112656826750579e-07, -1.972175494627527517e-07, -1.972235090490031708e-07, -1.972291445010278415e-07, -1.972344558789449274e-07, -1.972394432433944698e-07, -1.972441066555383093e-07, -1.972484461770550293e-07, -1.972524618701432649e-07, -1.972561537975247470e-07, -1.972595220224366527e-07, -1.972625666086356548e-07, -1.972652876203979750e-07, -1.972676851225168692e-07, -1.972697591803088215e-07, -1.972715098596036443e-07, -1.972729372267479725e-07, -1.972740413486108222e-07, -1.972748222925762319e-07, -1.972752801265440832e-07, -1.972754149189332241e-07, -1.972752267386819457e-07, -1.972747156552377647e-07, -1.972738817385715847e-07, -1.972727250591664730e-07, -1.972712456880224518e-07, -1.972694436966573717e-07, -1.972673191570987586e-07, -1.972648721418974198e-07, -1.972621027241126468e-07, -1.972590109773204744e-07, -1.972555969756129919e-07, -1.972518607935957496e-07, -1.972478025063850059e-07, -1.972434221896162499e-07, -1.972387199194345674e-07, -1.972336957725010722e-07, -1.972283498259900479e-07, -1.972226821575843684e-07, -1.972166928454848418e-07, -1.972103819684021900e-07, -1.972037496055593516e-07, -1.971967958366903173e-07, -1.971895207420449737e-07, -1.971819244023784891e-07, -1.971740068989625366e-07, -1.971657683135766385e-07, -1.971572087285111308e-07, -1.971483282265704193e-07, -1.971391268910639794e-07, -1.971296048058126300e-07, -1.971197620551514711e-07, -1.971095987239199844e-07, -1.970991148974686243e-07, -1.970883106616560915e-07, -1.970771861028511326e-07, -1.970657413079303967e-07, -1.970539763642779583e-07, -1.970418913597884147e-07, -1.970294863828609830e-07, -1.970167615224039999e-07, -1.970037168678325135e-07, -1.969903525090696059e-07, -1.969766685365431647e-07, -1.969626650411888206e-07, -1.969483421144490215e-07, -1.969336998482708612e-07, -1.969187383351076948e-07, -1.969034576679183442e-07, -1.968878579401659866e-07, -1.968719392458204307e-07, -1.968557016793540403e-07, -1.968391453357443287e-07, -1.968222703104743819e-07, -1.968050766995300264e-07, -1.967875645993991146e-07, -1.967697341070755217e-07, -1.967515853200541956e-07, -1.967331183363336190e-07, -1.967143332544141418e-07, -1.966952301733006010e-07, -1.966758091924967099e-07, -1.966560704120103516e-07, -1.966360139323488144e-07, -1.966156398545215979e-07, -1.965949482800397244e-07, -1.965739393109133307e-07, -1.965526130496532026e-07, -1.965309695992724698e-07, -1.965090090632809141e-07, -1.964867315456888876e-07, -1.964641371510065975e-07, -1.964412259842426505e-07, -1.964179981509046089e-07, -1.963944537569973224e-07, -1.963705929090262109e-07, -1.963464157139918645e-07, -1.963219222793937226e-07, -1.962971127132283802e-07, -1.962719871239891374e-07, -1.962465456206664767e-07, -1.962207883127456531e-07, -1.961947153102110627e-07, -1.961683267235407628e-07, -1.961416226637077956e-07, -1.961146032421822528e-07, -1.960872685709281257e-07, -1.960596187624040994e-07, -1.960316539295630763e-07, -1.960033741858529435e-07, -1.959747796452154877e-07, -1.959458704220843309e-07, -1.959166466313879472e-07, -1.958871083885462490e-07, -1.958572558094733656e-07, -1.958270890105747323e-07, -1.957966081087469043e-07, -1.957658132213820042e-07, -1.957347044663591986e-07, -1.957032819620493301e-07, -1.956715458273180145e-07, -1.956394961815165881e-07, -1.956071331444889367e-07, -1.955744568365692196e-07, -1.955414673785781370e-07, -1.955081648918318767e-07, -1.954745494981294357e-07, -1.954406213197615926e-07, -1.954063804795070173e-07, -1.953718271006319794e-07, -1.953369613068906924e-07, -1.953017832225253667e-07, -1.952662929722650447e-07, -1.952304906813259190e-07, -1.951943764754109081e-07, -1.951579504807063484e-07, -1.951212128238894846e-07, -1.950841636321203439e-07, -1.950468030330424769e-07, -1.950091311547876956e-07, -1.949711481259718651e-07, -1.949328540756937120e-07, -1.948942491335374454e-07, -1.948553334295693946e-07, -1.948161070943402598e-07, -1.947765702588855350e-07, -1.947367230547176995e-07, -1.946965656138408030e-07, -1.946560980687343456e-07, -1.946153205523601065e-07, -1.945742331981629120e-07, -1.945328361400685442e-07, -1.944911295124837942e-07, -1.944491134502941325e-07, -1.944067880888691089e-07, -1.943641535640537765e-07, -1.943212100121751499e-07, -1.942779575700389234e-07, -1.942343963749294176e-07, -1.941905265646116182e-07, -1.941463482773237902e-07, -1.941018616517860017e-07, -1.940570668271963651e-07, -1.940119639432287604e-07, -1.939665531400332856e-07, -1.939208345582390358e-07, -1.938748083389472208e-07, -1.938284746237389745e-07, -1.937818335546685512e-07, -1.937348852742669526e-07, -1.936876299255413718e-07, -1.936400676519683637e-07, -1.935921985975030042e-07, -1.935440229065738077e-07, -1.934955407240816680e-07, -1.934467521954010235e-07, -1.933976574663813127e-07, -1.933482566833401716e-07, -1.932985499930688069e-07, -1.932485375428361522e-07, -1.931982194803728531e-07, -1.931475959538873348e-07, -1.930966671120578084e-07, -1.930454331040291735e-07, -1.929938940794220974e-07, -1.929420501883237775e-07, -1.928899015812905614e-07, -1.928374484093509117e-07, -1.927846908239962742e-07, -1.927316289771899180e-07, -1.926782630213668836e-07, -1.926245931094227059e-07, -1.925706193947249290e-07, -1.925163420311072830e-07, -1.924617611728679099e-07, -1.924068769747724347e-07, -1.923516895920545740e-07, -1.922961991804098096e-07, -1.922404058960018472e-07, -1.921843098954596256e-07, -1.921279113358707251e-07, -1.920712103747961119e-07, -1.920142071702518733e-07, -1.919569018807219236e-07, -1.918992946651546954e-07, -1.918413856829539807e-07, -1.917831750939927220e-07, -1.917246630586085916e-07, -1.916658497375904658e-07, -1.916067352921956301e-07, -1.915473198841436381e-07, -1.914876036756050093e-07, -1.914275868292242837e-07, -1.913672695080940289e-07, -1.913066518757715426e-07, -1.912457340962741406e-07, -1.911845163340723013e-07, -1.911229987540977128e-07, -1.910611815217471368e-07, -1.909990648028617895e-07, -1.909366487637483050e-07, -1.908739335711713770e-07, -1.908109193923423238e-07, -1.907476063949413493e-07, -1.906839947470985907e-07, -1.906200846173944894e-07, -1.905558761748721516e-07, -1.904913695890238231e-07, -1.904265650298012913e-07, -1.903614626676070447e-07, -1.902960626732939815e-07, -1.902303652181722389e-07, -1.901643704740064402e-07, -1.900980786130030951e-07, -1.900314898078350052e-07, -1.899646042316184994e-07, -1.898974220579195490e-07, -1.898299434607584260e-07, -1.897621686146045152e-07, -1.896940976943777171e-07, -1.896257308754489770e-07, -1.895570683336323976e-07, -1.894881102451964881e-07, -1.894188567868581558e-07, -1.893493081357806943e-07, -1.892794644695753454e-07, -1.892093259663021459e-07, -1.891388928044632045e-07, -1.890681651630117544e-07, -1.889971432213455620e-07, -1.889258271593095480e-07, -1.888542171571923723e-07, -1.887823133957300870e-07, -1.887101160560967398e-07, -1.886376253199171586e-07, -1.885648413692575286e-07, -1.884917643866285946e-07, -1.884183945549831736e-07, -1.883447320577148305e-07, -1.882707770786611347e-07, -1.881965298021022299e-07, -1.881219904127587172e-07, -1.880471590957915225e-07, -1.879720360368056815e-07, -1.878966214218374491e-07, -1.878209154373732519e-07, -1.877449182703329325e-07, -1.876686301080776378e-07, -1.875920511384054777e-07, -1.875151815495565015e-07, -1.874380215302004428e-07, -1.873605712694515152e-07, -1.872828309568588047e-07, -1.872048007824084662e-07, -1.871264809365249941e-07, -1.870478716100599726e-07, -1.869689729943060786e-07, -1.868897852809994105e-07, -1.868103086622937599e-07, -1.867305433307876372e-07, -1.866504894795146101e-07, -1.865701473019321861e-07, -1.864895169919386212e-07, -1.864085987438626231e-07, -1.863273927524645417e-07, -1.862458992129361319e-07, -1.861641183209035439e-07, -1.860820502724130562e-07, -1.859996952639600601e-07, -1.859170534924503609e-07, -1.858341251552305121e-07, -1.857509104500768307e-07, -1.856674095751846237e-07, -1.855836227291842024e-07, -1.854995501111410415e-07, -1.854151919205337028e-07, -1.853305483572760704e-07, -1.852456196217101504e-07, -1.851604059145922803e-07, -1.850749074371253960e-07, -1.849891243909159121e-07, -1.849030569780078150e-07, -1.848167054008707518e-07, -1.847300698623846511e-07, -1.846431505658714604e-07, -1.845559477150679881e-07, -1.844684615141275180e-07, -1.843806921676336531e-07, -1.842926398805939629e-07, -1.842043048584230958e-07, -1.841156873069776393e-07, -1.840267874325234835e-07, -1.839376054417415643e-07, -1.838481415417413105e-07, -1.837583959400489707e-07, -1.836683688446088304e-07, -1.835780604637874478e-07, -1.834874710063612655e-07, -1.833966006815310102e-07, -1.833054496989171663e-07, -1.832140182685419767e-07, -1.831223066008652561e-07, -1.830303149067511185e-07, -1.829380433974733510e-07, -1.828454922847322744e-07, -1.827526617806376706e-07, -1.826595520977129385e-07, -1.825661634488999111e-07, -1.824724960475428148e-07, -1.823785501074082547e-07, -1.822843258426738583e-07, -1.821898234679257083e-07, -1.820950431981660191e-07, -1.819999852488076833e-07, -1.819046498356651668e-07, -1.818090371749734344e-07, -1.817131474833731532e-07, -1.816169809779152718e-07, -1.815205378760581352e-07, -1.814238183956740494e-07, -1.813268227550306199e-07, -1.812295511728149455e-07, -1.811320038681161743e-07, -1.810341810604312213e-07, -1.809360829696661716e-07, -1.808377098161227804e-07, -1.807390618205164461e-07, -1.806401392039677402e-07, -1.805409421879980923e-07, -1.804414709945343963e-07, -1.803417258459095131e-07, -1.802417069648494590e-07, -1.801414145744934173e-07, -1.800408488983778562e-07, -1.799400101604432787e-07, -1.798388985850294841e-07, -1.797375143968804126e-07, -1.796358578211297983e-07, -1.795339290833228216e-07, -1.794317284093993007e-07, -1.793292560256972652e-07, -1.792265121589598648e-07, -1.791234970363139021e-07, -1.790202108852918291e-07, -1.789166539338356381e-07, -1.788128264102602809e-07, -1.787087285432915199e-07, -1.786043605620515557e-07, -1.784997226960459770e-07, -1.783948151751869219e-07, -1.782896382297767195e-07, -1.781841920905114370e-07, -1.780784769884841087e-07, -1.779724931551687750e-07, -1.778662408224410494e-07, -1.777597202225776947e-07, -1.776529315882263685e-07, -1.775458751524396629e-07, -1.774385511486604934e-07, -1.773309598107106641e-07, -1.772231013728091843e-07, -1.771149760695766366e-07, -1.770065841359972189e-07, -1.768979258074591638e-07, -1.767890013197412918e-07, -1.766798109089900094e-07, -1.765703548117685958e-07, -1.764606332649979102e-07, -1.763506465059997496e-07, -1.762403947724831639e-07, -1.761298783025238890e-07, -1.760190973346087892e-07, -1.759080521075942205e-07, -1.757967428607126746e-07, -1.756851698335919162e-07, -1.755733332662423045e-07, -1.754612333990387403e-07, -1.753488704727673853e-07, -1.752362447285671111e-07, -1.751233564079723274e-07, -1.750102057528950878e-07, -1.748967930056257790e-07, -1.747831184088340198e-07, -1.746691822055726586e-07, -1.745549846392601711e-07, -1.744405259537043236e-07, -1.743258063930921948e-07, -1.742108262019681256e-07, -1.740955856252801214e-07, -1.739800849083382940e-07, -1.738643242968188587e-07, -1.737483040367866866e-07, -1.736320243746754524e-07, -1.735154855572953102e-07, -1.733986878318305117e-07, -1.732816314458270445e-07, -1.731643166472163227e-07, -1.730467436843009991e-07, -1.729289128057377068e-07, -1.728108242605793050e-07, -1.726924782982389332e-07, -1.725738751684878405e-07, -1.724550151214802936e-07, -1.723358984077358952e-07, -1.722165252781423632e-07, -1.720968959839552131e-07, -1.719770107768016491e-07, -1.718568699086616909e-07, -1.717364736318980321e-07, -1.716158221992318991e-07, -1.714949158637509663e-07, -1.713737548789122672e-07, -1.712523394985238510e-07, -1.711306699767714114e-07, -1.710087465681980105e-07, -1.708865695277128934e-07, -1.707641391105851087e-07, -1.706414555724515558e-07, -1.705185191692954911e-07, -1.703953301574755919e-07, -1.702718887937067920e-07, -1.701481953350641204e-07, -1.700242500389849772e-07, -1.699000531632541521e-07, -1.697756049660276732e-07, -1.696509057058149404e-07, -1.695259556414822453e-07, -1.694007550322534602e-07, -1.692753041377135577e-07, -1.691496032177887591e-07, -1.690236525327713627e-07, -1.688974523433214906e-07, -1.687710029104263260e-07, -1.686443044954445814e-07, -1.685173573600898764e-07, -1.683901617664135055e-07, -1.682627179768324962e-07, -1.681350262541137535e-07, -1.680070868613735041e-07, -1.678789000620841519e-07, -1.677504661200533938e-07, -1.676217852994486773e-07, -1.674928578648026269e-07, -1.673636840809652929e-07, -1.672342642131563229e-07, -1.671045985269425423e-07, -1.669746872882181018e-07, -1.668445307632590050e-07, -1.667141292186523815e-07, -1.665834829213511994e-07, -1.664525921386484316e-07, -1.663214571381860545e-07, -1.661900781879328407e-07, -1.660584555562340426e-07, -1.659265895117424647e-07, -1.657944803234756651e-07, -1.656621282607918152e-07, -1.655295335933706677e-07, -1.653966965912642460e-07, -1.652636175248490670e-07, -1.651302966648322283e-07, -1.649967342822749403e-07, -1.648629306485782326e-07, -1.647288860354600043e-07, -1.645946007150132314e-07, -1.644600749596317720e-07, -1.643253090420660582e-07, -1.641903032354001478e-07, -1.640550578130519613e-07, -1.639195730487754006e-07, -1.637838492166647952e-07, -1.636478865911323766e-07, -1.635116854469400159e-07, -1.633752460591824943e-07, -1.632385687032683659e-07, -1.631016536549677356e-07, -1.629645011903667310e-07, -1.628271115858736166e-07, -1.626894851182416644e-07, -1.625516220645490364e-07, -1.624135227022045019e-07, -1.622751873089497674e-07, -1.621366161628407089e-07, -1.619978095422763835e-07, -1.618587677259829614e-07, -1.617194909929920479e-07, -1.615799796226947871e-07, -1.614402338947910668e-07, -1.613002540892954739e-07, -1.611600404865650878e-07, -1.610195933672736989e-07, -1.608789130124195639e-07, -1.607379997033246917e-07, -1.605968537216389456e-07, -1.604554753493176504e-07, -1.603138648686544675e-07, -1.601720225622575987e-07, -1.600299487130578065e-07, -1.598876436043102141e-07, -1.597451075195721239e-07, -1.596023407427377982e-07, -1.594593435580129431e-07, -1.593161162499224371e-07, -1.591726591033068108e-07, -1.590289724033312204e-07, -1.588850564354585274e-07, -1.587409114854842128e-07, -1.585965378395140098e-07, -1.584519357839681125e-07, -1.583071056055855701e-07, -1.581620475914027403e-07, -1.580167620287870913e-07, -1.578712492054104673e-07, -1.577255094092582998e-07, -1.575795429286266435e-07, -1.574333500521286873e-07, -1.572869310686701641e-07, -1.571402862674780970e-07, -1.569934159381060670e-07, -1.568463203703829404e-07, -1.566989998544666561e-07, -1.565514546808234200e-07, -1.564036851402100761e-07, -1.562556915237060027e-07, -1.561074741226915131e-07, -1.559590332288517465e-07, -1.558103691341835238e-07, -1.556614821309696453e-07, -1.555123725118081400e-07, -1.553630405696180624e-07, -1.552134865975862087e-07, -1.550637108892242654e-07, -1.549137137383465742e-07, -1.547634954390427363e-07, -1.546130562857477302e-07, -1.544623965731514389e-07, -1.543115165962689262e-07, -1.541604166504074295e-07, -1.540090970311773710e-07, -1.538575580344654911e-07, -1.537057999564943521e-07, -1.535538230937444380e-07, -1.534016277430137640e-07, -1.532492142013973365e-07, -1.530965827662596506e-07, -1.529437337352967355e-07, -1.527906674064803824e-07, -1.526373840780626182e-07, -1.524838840486074160e-07, -1.523301676169708166e-07, -1.521762350822750939e-07, -1.520220867439770201e-07, -1.518677229017812836e-07, -1.517131438557059750e-07, -1.515583499060599817e-07, -1.514033413534143746e-07, -1.512481184986682642e-07, -1.510926816429875767e-07, -1.509370310878141061e-07, -1.507811671348941549e-07, -1.506250900862607726e-07, -1.504688002442070215e-07, -1.503122979113472275e-07, -1.501555833905647818e-07, -1.499986569850108969e-07, -1.498415189981397584e-07, -1.496841697336824521e-07, -1.495266094956517025e-07, -1.493688385883484634e-07, -1.492108573163350248e-07, -1.490526659844730233e-07, -1.488942648978991960e-07, -1.487356543620281333e-07, -1.485768346825528347e-07, -1.484178061654518029e-07, -1.482585691169612501e-07, -1.480991238436142737e-07, -1.479394706522127982e-07, -1.477796098498362573e-07, -1.476195417438453260e-07, -1.474592666418546833e-07, -1.472987848517747551e-07, -1.471380966817810887e-07, -1.469772024403242788e-07, -1.468161024361249912e-07, -1.466547969781848155e-07, -1.464932863757559307e-07, -1.463315709383806777e-07, -1.461696509758652744e-07, -1.460075267982854805e-07, -1.458451987159869682e-07, -1.456826670395888423e-07, -1.455199320799597119e-07, -1.453569941482554627e-07, -1.451938535558916486e-07, -1.450305106145493688e-07, -1.448669656361832342e-07, -1.447032189329919870e-07, -1.445392708174599249e-07, -1.443751216023268324e-07, -1.442107716005986472e-07, -1.440462211255414523e-07, -1.438814704906913222e-07, -1.437165200098259477e-07, -1.435513699970039170e-07, -1.433860207665377162e-07, -1.432204726329996325e-07, -1.430547259112210390e-07, -1.428887809163001245e-07, -1.427226379635715852e-07, -1.425562973686483410e-07, -1.423897594473937955e-07, -1.422230245159279503e-07, -1.420560928906326988e-07, -1.418889648881254100e-07, -1.417216408252930206e-07, -1.415541210192942595e-07, -1.413864057875033721e-07, -1.412184954475722722e-07, -1.410503903174076713e-07, -1.408820907151395539e-07, -1.407135969591963773e-07, -1.405449093682111312e-07, -1.403760282610934936e-07, -1.402069539570016145e-07, -1.400376867753236397e-07, -1.398682270357091042e-07, -1.396985750580753641e-07, -1.395287311625467428e-07, -1.393586956695202288e-07, -1.391884688996416795e-07, -1.390180511737714901e-07, -1.388474428130586024e-07, -1.386766441388742783e-07, -1.385056554728202519e-07, -1.383344771367620286e-07, -1.381631094528071801e-07, -1.379915527432785302e-07, -1.378198073307884291e-07, -1.376478735381407361e-07, -1.374757516884080050e-07, -1.373034421049020765e-07, -1.371309451111462054e-07, -1.369582610309435116e-07, -1.367853901883141934e-07, -1.366123329075028338e-07, -1.364390895130100311e-07, -1.362656603295732355e-07, -1.360920456821374201e-07, -1.359182458959314994e-07, -1.357442612963694911e-07, -1.355700922091266694e-07, -1.353957389601066107e-07, -1.352212018754431253e-07, -1.350464812815026930e-07, -1.348715775048912920e-07, -1.346964908724226618e-07, -1.345212217111636198e-07, -1.343457703484018469e-07, -1.341701371116568463e-07, -1.339943223286735116e-07, -1.338183263274337468e-07, -1.336421494361242524e-07, -1.334657919831802802e-07, -1.332892542972564106e-07, -1.331125367072313172e-07, -1.329356395422172430e-07, -1.327585631315291099e-07, -1.325813078047263413e-07, -1.324038738915846716e-07, -1.322262617221024724e-07, -1.320484716264995618e-07, -1.318705039352252506e-07, -1.316923589789268436e-07, -1.315140370884946911e-07, -1.313355385950309812e-07, -1.311568638298562246e-07, -1.309780131245102078e-07, -1.307989868107577366e-07, -1.306197852205580905e-07, -1.304404086861102329e-07, -1.302608575398201737e-07, -1.300811321143119544e-07, -1.299012327424295804e-07, -1.297211597572098364e-07, -1.295409134919253001e-07, -1.293604942800538220e-07, -1.291799024552871554e-07, -1.289991383515260584e-07, -1.288182023028937151e-07, -1.286370946436983862e-07, -1.284558157084823515e-07, -1.282743658319896702e-07, -1.280927453491729038e-07, -1.279109545951932486e-07, -1.277289939054259622e-07, -1.275468636154260053e-07, -1.273645640610045662e-07, -1.271820955781274695e-07, -1.269994585029955387e-07, -1.268166531720141293e-07, -1.266336799217706027e-07, -1.264505390890705640e-07, -1.262672310109442935e-07, -1.260837560245812081e-07, -1.259001144674002968e-07, -1.257163066770232278e-07, -1.255323329912405997e-07, -1.253481937480968029e-07, -1.251638892857825531e-07, -1.249794199427157559e-07, -1.247947860575156462e-07, -1.246099879689734329e-07, -1.244250260160934597e-07, -1.242399005380990018e-07, -1.240546118743629151e-07, -1.238691603644843193e-07, -1.236835463482561720e-07, -1.234977701656344056e-07, -1.233118321568164096e-07, -1.231257326621659625e-07, -1.229394720222258052e-07, -1.227530505777524748e-07, -1.225664686696928263e-07, -1.223797266391541213e-07, -1.221928248274861114e-07, -1.220057635761748672e-07, -1.218185432269251000e-07, -1.216311641216289533e-07, -1.214436266023353249e-07, -1.212559310113262319e-07, -1.210680776910460834e-07, -1.208800669841090657e-07, -1.206918992333385028e-07, -1.205035747817406779e-07, -1.203150939724750283e-07, -1.201264571489385841e-07, -1.199376646546549538e-07, -1.197487168333624952e-07, -1.195596140289715403e-07, -1.193703565855732892e-07, -1.191809448474399025e-07, -1.189913791590292397e-07, -1.188016598649553847e-07, -1.186117873100335390e-07, -1.184217618392487474e-07, -1.182315837977630447e-07, -1.180412535309139210e-07, -1.178507713842245251e-07, -1.176601377033674278e-07, -1.174693528342140674e-07, -1.172784171228018741e-07, -1.170873309153415231e-07, -1.168960945582240277e-07, -1.167047083979888045e-07, -1.165131727813705770e-07, -1.163214880552671229e-07, -1.161296545667463011e-07, -1.159376726630454701e-07, -1.157455426915789385e-07, -1.155532649999050505e-07, -1.153608399357751943e-07, -1.151682678470982665e-07, -1.149755490819513130e-07, -1.147826839885763393e-07, -1.145896729153887811e-07, -1.143965162109446416e-07, -1.142032142239888788e-07, -1.140097673034211529e-07, -1.138161757983035962e-07, -1.136224400578707778e-07, -1.134285604314923557e-07, -1.132345372687242556e-07, -1.130403709192747236e-07, -1.128460617330124126e-07, -1.126516100599639206e-07, -1.124570162503236908e-07, -1.122622806544188193e-07, -1.120674036227594013e-07, -1.118723855060035640e-07, -1.116772266549653551e-07, -1.114819274206224716e-07, -1.112864881540835696e-07, -1.110909092066277577e-07, -1.108951909297117959e-07, -1.106993336748978474e-07, -1.105033377939322253e-07, -1.103072036387130602e-07, -1.101109315612654981e-07, -1.099145219137817224e-07, -1.097179750486287096e-07, -1.095212913182730024e-07, -1.093244710753632027e-07, -1.091275146726965798e-07, -1.089304224631842629e-07, -1.087331947999424688e-07, -1.085358320361759559e-07, -1.083383345252679419e-07, -1.081407026207469502e-07, -1.079429366762609492e-07, -1.077450370456196509e-07, -1.075470040827992752e-07, -1.073488381418693219e-07, -1.071505395770753146e-07, -1.069521087428034504e-07, -1.067535459935472618e-07, -1.065548516839995850e-07, -1.063560261689341349e-07, -1.061570698032967991e-07, -1.059579829421635641e-07, -1.057587659407569398e-07, -1.055594191544021390e-07, -1.053599429386201845e-07, -1.051603376490091792e-07, -1.049606036413357723e-07, -1.047607412715023237e-07, -1.045607508955102166e-07, -1.043606328695455270e-07, -1.041603875499017851e-07, -1.039600152929876515e-07, -1.037595164553685672e-07, -1.035588913937326473e-07, -1.033581404648990191e-07, -1.031572640258241353e-07, -1.029562624335679983e-07, -1.027551360453452997e-07, -1.025538852184981833e-07, -1.023525103104619003e-07, -1.021510116788493803e-07, -1.019493896813742703e-07, -1.017476446758592730e-07, -1.015457770202759040e-07, -1.013437870727123976e-07, -1.011416751913802179e-07, -1.009394417346139534e-07, -1.007370870608785032e-07, -1.005346115287349047e-07, -1.003320154968922143e-07, -1.001292993241700394e-07, -9.992646336950792205e-08, -9.972350799197357086e-08, -9.952043355072748435e-08, -9.931724040507401099e-08, -9.911392891442542983e-08, -9.891049943831226038e-08, -9.870695233638036425e-08, -9.850328796839950807e-08, -9.829950669422875427e-08, -9.809560887386695219e-08, -9.789159486741879059e-08, -9.768746503510144156e-08, -9.748321973725252790e-08, -9.727885933429693007e-08, -9.707438418679596698e-08, -9.686979465541274709e-08, -9.666509110091997699e-08, -9.646027388420068930e-08, -9.625534336625450279e-08, -9.605029990816256315e-08, -9.584514387114160751e-08, -9.563987561650453772e-08, -9.543449550567124647e-08, -9.522900390016697619e-08, -9.502340116163104079e-08, -9.481768765178070772e-08, -9.461186373246297280e-08, -9.440592976561919661e-08, -9.419988611329452774e-08, -9.399373313764330264e-08, -9.378747120089492603e-08, -9.358110066539798281e-08, -9.337462189362631290e-08, -9.316803524810109741e-08, -9.296134109147707072e-08, -9.275453978650814948e-08, -9.254763169601826290e-08, -9.234061718295480847e-08, -9.213349661035323543e-08, -9.192627034134431066e-08, -9.171893873915415846e-08, -9.151150216711149995e-08, -9.130396098860483830e-08, -9.109631556717645282e-08, -9.088856626639996306e-08, -9.068071344997645379e-08, -9.047275748169766878e-08, -9.026469872542024245e-08, -9.005653754510851476e-08, -8.984827430484218099e-08, -8.963990936873815289e-08, -8.943144310103571205e-08, -8.922287586606215202e-08, -8.901420802819630307e-08, -8.880543995196563647e-08, -8.859657200192100957e-08, -8.838760454273398190e-08, -8.817853793915245183e-08, -8.796937255601627377e-08, -8.776010875821314623e-08, -8.755074691077602064e-08, -8.734128737875722433e-08, -8.713173052732683541e-08, -8.692207672173497663e-08, -8.671232632727610761e-08, -8.650247970937900888e-08, -8.629253723352386525e-08, -8.608249926525122591e-08, -8.587236617020585152e-08, -8.566213831410186684e-08, -8.545181606272841197e-08, -8.524139978196016409e-08, -8.503088983772063715e-08, -8.482028659603382435e-08, -8.460959042299864163e-08, -8.439880168475075821e-08, -8.418792074755267325e-08, -8.397694797771222865e-08, -8.376588374159035147e-08, -8.355472840564687306e-08, -8.334348233640190973e-08, -8.313214590044569622e-08, -8.292071946443703725e-08, -8.270920339511254543e-08, -8.249759805924947773e-08, -8.228590382371938972e-08, -8.207412105545091904e-08, -8.186225012143987039e-08, -8.165029138875469479e-08, -8.143824522450304500e-08, -8.122611199588231957e-08, -8.101389207014522566e-08, -8.080158581460709790e-08, -8.058919359664503819e-08, -8.037671578370810650e-08, -8.016415274327777506e-08, -7.995150484292323693e-08, -7.973877245026516891e-08, -7.952595593298258719e-08, -7.931305565882223089e-08, -7.910007199556187494e-08, -7.888700531106284614e-08, -7.867385597323558596e-08, -7.846062435004538125e-08, -7.824731080951269512e-08, -7.803391571972310634e-08, -7.782043944878765760e-08, -7.760688236488981293e-08, -7.739324483629330593e-08, -7.717952723125972618e-08, -7.696572991813843703e-08, -7.675185326532984880e-08, -7.653789764125749319e-08, -7.632386341442227302e-08, -7.610975095336487522e-08, -7.589556062667446613e-08, -7.568129280299828675e-08, -7.546694785100251724e-08, -7.525252613941865193e-08, -7.503802803705165201e-08, -7.482345391269726722e-08, -7.460880413523252272e-08, -7.439407907357904528e-08, -7.417927909667393323e-08, -7.396440457352572686e-08, -7.374945587317544485e-08, -7.353443336470632522e-08, -7.331933741724239587e-08, -7.310416839995793762e-08, -7.288892668202978561e-08, -7.267361263273872178e-08, -7.245822662134030241e-08, -7.224276901716413296e-08, -7.202724018957812068e-08, -7.181164050795831225e-08, -7.159597034173655268e-08, -7.138023006040735417e-08, -7.116442003344430453e-08, -7.094854063039395557e-08, -7.073259222083511248e-08, -7.051657517434316588e-08, -7.030048986059098134e-08, -7.008433664921824455e-08, -6.986811590993307885e-08, -6.965182801247459041e-08, -6.943547332658335452e-08, -6.921905222204884935e-08, -6.900256506871689402e-08, -6.878601223640534231e-08, -6.856939409499719014e-08, -6.835271101440260466e-08, -6.813596336452033131e-08, -6.791915151533098654e-08, -6.770227583681284424e-08, -6.748533669894939286e-08, -6.726833447177612070e-08, -6.705126952534261124e-08, -6.683414222972090756e-08, -6.661695295501472385e-08, -6.639970207132095829e-08, -6.618238994878502821e-08, -6.596501695757371203e-08, -6.574758346783441229e-08, -6.553008984979096303e-08, -6.531253647365641184e-08, -6.509492370964372692e-08, -6.487725192801038538e-08, -6.465952149902118325e-08, -6.444173279295740722e-08, -6.422388618012412707e-08, -6.400598203081346887e-08, -6.378802071535951328e-08, -6.357000260410049673e-08, -6.335192806738742730e-08, -6.313379747558340977e-08, -6.291561119907312180e-08, -6.269736960822330775e-08, -6.247907307343954318e-08, -6.226072196512780065e-08, -6.204231665370315837e-08, -6.182385750958919133e-08, -6.160534490322686516e-08, -6.138677920503581085e-08, -6.116816078547159213e-08, -6.094949001498543167e-08, -6.073076726403433579e-08, -6.051199290308984272e-08, -6.029316730259887380e-08, -6.007429083304092143e-08, -5.985536386488826500e-08, -5.963638676861650584e-08, -5.941735991470262173e-08, -5.919828367363394673e-08, -5.897915841587039224e-08, -5.875998451189984819e-08, -5.854076233220063568e-08, -5.832149224724906413e-08, -5.810217462752007314e-08, -5.788280984349568297e-08, -5.766339826562620970e-08, -5.744394026438631501e-08, -5.722443621023755139e-08, -5.700488647363586638e-08, -5.678529142504174046e-08, -5.656565143488032357e-08, -5.634596687358995423e-08, -5.612623811162926663e-08, -5.590646551939250066e-08, -5.568664946730252321e-08, -5.546679032577396251e-08, -5.524688846518217222e-08, -5.502694425592126647e-08, -5.480695806836476589e-08, -5.458693027287449810e-08, -5.436686123980918050e-08, -5.414675133948670751e-08, -5.392660094222986379e-08, -5.370641041837686592e-08, -5.348618013819299300e-08, -5.326591047196714839e-08, -5.304560178997224109e-08, -5.282525446243596973e-08, -5.260486885958762774e-08, -5.238444535166804936e-08, -5.216398430884212704e-08, -5.194348610129395045e-08, -5.172295109918812748e-08, -5.150237967263117811e-08, -5.128177219177558708e-08, -5.106112902668525802e-08, -5.084045054744092271e-08, -5.061973712410027761e-08, -5.039898912665976150e-08, -5.017820692514954227e-08, -4.995739088954635857e-08, -4.973654138978341947e-08, -4.951565879579653472e-08, -4.929474347749545458e-08, -4.907379580472474084e-08, -4.885281614736885186e-08, -4.863180487521684232e-08, -4.841076235806740189e-08, -4.818968896568120301e-08, -4.796858506778810731e-08, -4.774745103408810527e-08, -4.752628723425968066e-08, -4.730509403792058236e-08, -4.708387181468556817e-08, -4.686262093413588512e-08, -4.664134176578204639e-08, -4.642003467915689242e-08, -4.619870004373071556e-08, -4.597733822891883704e-08, -4.575594960412964963e-08, -4.553453453872556809e-08, -4.531309340203181052e-08, -4.509162656334572236e-08, -4.487013439189746210e-08, -4.464861725690721576e-08, -4.442707552754596867e-08, -4.420550957294468382e-08, -4.398391976219371959e-08, -4.376230646435181619e-08, -4.354067004840671527e-08, -4.331901088333291035e-08, -4.309732933805224656e-08, -4.287562578144241744e-08, -4.265390058233728921e-08, -4.243215410953547691e-08, -4.221038673176093101e-08, -4.198859881772069438e-08, -4.176679073606525718e-08, -4.154496285539850296e-08, -4.132311554428535172e-08, -4.110124917121373610e-08, -4.087936410465127983e-08, -4.065746071300641357e-08, -4.043553936463746731e-08, -4.021360042785139322e-08, -3.999164427091425424e-08, -3.976967126201042760e-08, -3.954768176930061992e-08, -3.932567616088307575e-08, -3.910365480480174352e-08, -3.888161806904655345e-08, -3.865956632156173567e-08, -3.843749993020733983e-08, -3.821541926281582079e-08, -3.799332468715322077e-08, -3.777121657092846681e-08, -3.754909528180196022e-08, -3.732696118734638808e-08, -3.710481465509473943e-08, -3.688265605254922556e-08, -3.666048574709387682e-08, -3.643830410609016468e-08, -3.621611149683813749e-08, -3.599390828654650965e-08, -3.577169484239044507e-08, -3.554947153147221654e-08, -3.532723872082980835e-08, -3.510499677744698809e-08, -3.488274606821276813e-08, -3.466048695996993138e-08, -3.443821981952450084e-08, -3.421594501355682102e-08, -3.399366290871894682e-08, -3.377137387159497861e-08, -3.354907826867082050e-08, -3.332677646638295752e-08, -3.310446883112717741e-08, -3.288215572917021451e-08, -3.265983752674692691e-08, -3.243751459002058519e-08, -3.221518728504314128e-08, -3.199285597786224577e-08, -3.177052103438380356e-08, -3.154818282047885887e-08, -3.132584170194384422e-08, -3.110349804446098166e-08, -3.088115221369545330e-08, -3.065880457520680700e-08, -3.043645549445802222e-08, -3.021410533686439314e-08, -2.999175446776281044e-08, -2.976940325237230147e-08, -2.954705205590133548e-08, -2.932470124340999543e-08, -2.910235117991711774e-08, -2.888000223035094932e-08, -2.865765475955765761e-08, -2.843530913230202540e-08, -2.821296571327527266e-08, -2.799062486705614593e-08, -2.776828695816887066e-08, -2.754595235105308810e-08, -2.732362141002429622e-08, -2.710129449937097069e-08, -2.687897198326632449e-08, -2.665665422577675844e-08, -2.643434159091084351e-08, -2.621203444257929188e-08, -2.598973314460423793e-08, -2.576743806072866478e-08, -2.554514955457630259e-08, -2.532286798970979256e-08, -2.510059372960131211e-08, -2.487832713759201326e-08, -2.465606857698988139e-08, -2.443381841098102179e-08, -2.421157700263857332e-08, -2.398934471497132022e-08, -2.376712191088387490e-08, -2.354490895318610450e-08, -2.332270620459203902e-08, -2.310051402772968829e-08, -2.287833278510084762e-08, -2.265616283913945371e-08, -2.243400455217188003e-08, -2.221185828642593981e-08, -2.198972440404055746e-08, -2.176760326702549809e-08, -2.154549523731984257e-08, -2.132340067675207443e-08, -2.110131994704949315e-08, -2.087925340983759543e-08, -2.065720142664903523e-08, -2.043516435888417385e-08, -2.021314256786939949e-08, -1.999113641481683032e-08, -1.976914626083397922e-08, -1.954717246693284952e-08, -1.932521539399022696e-08, -1.910327540280573791e-08, -1.888135285406223066e-08, -1.865944810833508289e-08, -1.843756152609132155e-08, -1.821569346769919169e-08, -1.799384429338816390e-08, -1.777201436329736745e-08, -1.755020403748499690e-08, -1.732841367583940351e-08, -1.710664363817646097e-08, -1.688489428420009893e-08, -1.666316597347191908e-08, -1.644145906546965359e-08, -1.621977391954742737e-08, -1.599811089494497950e-08, -1.577647035079675228e-08, -1.555485264609219977e-08, -1.533325813972439628e-08, -1.511168719049904267e-08, -1.489014015704569500e-08, -1.466861739791534206e-08, -1.444711927154056340e-08, -1.422564613620557876e-08, -1.400419835010442367e-08, -1.378277627130138379e-08, -1.356138025773992676e-08, -1.334001066724239782e-08, -1.311866785751907909e-08, -1.289735218611871922e-08, -1.267606401053575913e-08, -1.245480368807258164e-08, -1.223357157594665451e-08, -1.201236803125100611e-08, -1.179119341091410880e-08, -1.157004807179758389e-08, -1.134893237060737228e-08, -1.112784666390296259e-08, -1.090679130814579605e-08, -1.068576665966933746e-08, -1.046477307463940032e-08, -1.024381090916124685e-08, -1.002288051914187898e-08, -9.801982260397293850e-09, -9.581116488612709726e-09, -9.360283559302828192e-09, -9.139483827909285969e-09, -8.918717649711800829e-09, -8.697985379837603108e-09, -8.477287373309673567e-09, -8.256623985016916918e-09, -8.035995569674314876e-09, -7.815402481920470608e-09, -7.594845076228796003e-09, -7.374323706916728119e-09, -7.153838728194273107e-09, -6.933390494124123693e-09, -6.712979358631006322e-09, -6.492605675510869482e-09, -6.272269798391157523e-09, -6.051972080789024322e-09, -5.831712876081436497e-09, -5.611492537465424066e-09, -5.391311418055416444e-09, -5.171169870794598465e-09, -4.951068248464153290e-09, -4.731006903731645036e-09, -4.510986189111341398e-09, -4.291006456973422654e-09, -4.071068059553195628e-09, -3.851171348911484975e-09, -3.631316676992711186e-09, -3.411504395585233893e-09, -3.191734856330583622e-09, -2.972008410722918329e-09, -2.752325410118267566e-09, -2.532686205694819533e-09, -2.313091148511123987e-09, -2.093540589466356972e-09, -1.874034879309601368e-09, -1.654574368639269314e-09, -1.435159407912355049e-09, -1.215790347404769326e-09, -9.964675372694645708e-10, -7.771913274967711528e-10, -5.579620679236547802e-10, -3.387801082429126275e-10, -1.196457979635512034e-10, 9.944051353110686075e-11, 3.184784770230716584e-10, 5.374677434406796464e-10, 7.564079639079897692e-10, 9.752987896476218032e-10, 1.194139872069231608e-09, 1.412930862760267071e-09, 1.631671413427924022e-09, 1.850361175987556014e-09, 2.068999802455817067e-09, 2.287586945039078385e-09, 2.506122256133973052e-09, 2.724605388230290612e-09, 2.943035994048189168e-09, 3.161413726441119536e-09, 3.379738238386628647e-09, 3.598009183123453570e-09, 3.816226213947252980e-09, 4.034388984396399783e-09, 4.252497148125814151e-09, 4.470550359004917011e-09, 4.688548271010987851e-09, 4.906490538317413312e-09, 5.124376815284491419e-09, 5.342206756401452015e-09, 5.559980016374681358e-09, 5.777696250021195322e-09, 5.995355112356706012e-09, 6.212956258596214845e-09, 6.430499344057180315e-09, 6.647984024296325386e-09, 6.865409955003078436e-09, 7.082776792039130687e-09, 7.300084191477698334e-09, 7.517331809497277809e-09, 7.734519302518171121e-09, 7.951646327105817384e-09, 8.168712539971294097e-09, 8.385717598059474742e-09, 8.602661158442426708e-09, 8.819542878407519262e-09, 9.036362415399759136e-09, 9.253119427012370594e-09, 9.469813571074848804e-09, 9.686444505546773013e-09, 9.903011888615220299e-09, 1.011951537857889907e-08, 1.033595463398459913e-08, 1.055232931352097175e-08, 1.076863907605775128e-08, 1.098488358068518352e-08, 1.120106248660775621e-08, 1.141717545328063084e-08, 1.163322214031311732e-08, 1.184920220746917361e-08, 1.206511531475519602e-08, 1.228096112231408716e-08, 1.249673929051259633e-08, 1.271244947988413313e-08, 1.292809135111929137e-08, 1.314366456515373033e-08, 1.335916878306208887e-08, 1.357460366615529497e-08, 1.378996887587476433e-08, 1.400526407387983340e-08, 1.422048892203855945e-08, 1.443564308237050118e-08, 1.465072621713391848e-08, 1.486573798871049153e-08, 1.508067805974112899e-08, 1.529554609302966928e-08, 1.551034175154379381e-08, 1.572506469850202485e-08, 1.593971459726819382e-08, 1.615429111143900334e-08, 1.636879390478632644e-08, 1.658322264124829280e-08, 1.679757698501652989e-08, 1.701185660043076358e-08, 1.722606115207542296e-08, 1.744019030467427731e-08, 1.765424372317785261e-08, 1.786822107275402481e-08, 1.808212201873082857e-08, 1.829594622668374797e-08, 1.850969336233031056e-08, 1.872336309161694130e-08, 1.893695508071989893e-08, 1.915046899593954246e-08, 1.936390450388395531e-08, 1.957726127126716289e-08, 1.979053896504459830e-08, 2.000373725240358646e-08, 2.021685580066819849e-08, 2.042989427743398947e-08, 2.064285235045317590e-08, 2.085572968773126689e-08, 2.106852595742214790e-08, 2.128124082791458730e-08, 2.149387396782344838e-08, 2.170642504593264700e-08, 2.191889373128167133e-08, 2.213127969306086747e-08, 2.234358260069809483e-08, 2.255580212385933496e-08, 2.276793793234362637e-08, 2.297998969626586484e-08, 2.319195708585571251e-08, 2.340383977159273929e-08, 2.361563742419688057e-08, 2.382734971453327502e-08, 2.403897631374700901e-08, 2.425051689316762687e-08, 2.446197112430033962e-08, 2.467333867895999515e-08, 2.488461922907154572e-08, 2.509581244685115085e-08, 2.530691800468331785e-08, 2.551793557521635520e-08, 2.572886483125802531e-08, 2.593970544586229591e-08, 2.615045709232892654e-08, 2.636111944410025286e-08, 2.657169217494172715e-08, 2.678217495874291846e-08, 2.699256746965107917e-08, 2.720286938206229744e-08, 2.741308037052680156e-08, 2.762320010988233788e-08, 2.783322827515994501e-08, 2.804316454157484159e-08, 2.825300858465983069e-08, 2.846276008006629335e-08, 2.867241870374523530e-08, 2.888198413184324416e-08, 2.909145604070301222e-08, 2.930083410694922425e-08, 2.951011800738475627e-08, 2.971930741907647074e-08, 2.992840201929846530e-08, 3.013740148552390359e-08, 3.034630549550975493e-08, 3.055511372719408160e-08, 3.076382585879023823e-08, 3.097244156867468623e-08, 3.118096053551932284e-08, 3.138938243819753326e-08, 3.159770695577536958e-08, 3.180593376764404531e-08, 3.201406255332237151e-08, 3.222209299263638076e-08, 3.243002476561599570e-08, 3.263785755249594892e-08, 3.284559103380046637e-08, 3.305322489024041240e-08, 3.326075880279854232e-08, 3.346819245267339310e-08, 3.367552552127048214e-08, 3.388275769028716939e-08, 3.408988864161046417e-08, 3.429691805741029803e-08, 3.450384562003741757e-08, 3.471067101210843849e-08, 3.491739391649650837e-08, 3.512401401627583260e-08, 3.533053099480640416e-08, 3.553694453563104281e-08, 3.574325432256127627e-08, 3.594946003967631454e-08, 3.615556137123101443e-08, 3.636155800178682561e-08, 3.656744961610032635e-08, 3.677323589920750991e-08, 3.697891653636834358e-08, 3.718449121305818588e-08, 3.738995961505182145e-08, 3.759532142832129439e-08, 3.780057633913009427e-08, 3.800572403393046667e-08, 3.821076419944832821e-08, 3.841569652267404850e-08, 3.862052069080698924e-08, 3.882523639134028041e-08, 3.902984331195817699e-08, 3.923434114062065646e-08, 3.943872956556398784e-08, 3.964300827520782939e-08, 3.984717695828628052e-08, 4.005123530374546356e-08, 4.025518300078234171e-08, 4.045901973888081721e-08, 4.066274520771107336e-08, 4.086635909725966688e-08, 4.106986109771869234e-08, 4.127325089957890945e-08, 4.147652819352812557e-08, 4.167969267053579314e-08, 4.188274402184295115e-08, 4.208568193890798195e-08, 4.228850611349026899e-08, 4.249121623754881095e-08, 4.269381200332550889e-08, 4.289629310334656255e-08, 4.309865923032915111e-08, 4.330091007731300788e-08, 4.350304533755735359e-08, 4.370506470457968782e-08, 4.390696787219250925e-08, 4.410875453440234665e-08, 4.431042438553959317e-08, 4.451197712016627237e-08, 4.471341243307740143e-08, 4.491473001938302102e-08, 4.511592957440858283e-08, 4.531701079377727729e-08, 4.551797337335608811e-08, 4.571881700924644842e-08, 4.591954139786778610e-08, 4.612014623585630326e-08, 4.632063122015858002e-08, 4.652099604791109734e-08, 4.672124041661570515e-08, 4.692136402394797456e-08, 4.712136656788488803e-08, 4.732124774669710363e-08, 4.752100725885724385e-08, 4.772064480316892915e-08, 4.792016007867521238e-08, 4.811955278465922067e-08, 4.831882262072708527e-08, 4.851796928670738281e-08, 4.871699248273456150e-08, 4.891589190919344053e-08, 4.911466726671214273e-08, 4.931331825624278101e-08, 4.951184457896299742e-08, 4.971024593636672141e-08, 4.990852203016488830e-08, 5.010667256236776691e-08, 5.030469723527595985e-08, 5.050259575142618015e-08, 5.070036781367471049e-08, 5.089801312508693819e-08, 5.109553138906627629e-08, 5.129292230926314718e-08, 5.149018558956716080e-08, 5.168732093423313725e-08, 5.188432804769250302e-08, 5.208120663472551656e-08, 5.227795640036145742e-08, 5.247457704987979086e-08, 5.267106828889164188e-08, 5.286742982324075191e-08, 5.306366135909450836e-08, 5.325976260284451090e-08, 5.345573326118950131e-08, 5.365157304112483509e-08, 5.384728164989057424e-08, 5.404285879505158480e-08, 5.423830418440014131e-08, 5.443361752603673905e-08, 5.462879852837027269e-08, 5.482384690001982018e-08, 5.501876234998654413e-08, 5.521354458746389687e-08, 5.540819332196517168e-08, 5.560270826331384797e-08, 5.579708912155544025e-08, 5.599133560708255467e-08, 5.618544743052754738e-08, 5.637942430284544115e-08, 5.657326593525782929e-08, 5.676697203924637730e-08, 5.696054232663313884e-08, 5.715397650948224027e-08, 5.734727430019028167e-08, 5.754043541138843166e-08, 5.773345955602218088e-08, 5.792634644735372426e-08, 5.811909579886241483e-08, 5.831170732441487831e-08, 5.850418073807936736e-08, 5.869651575424972619e-08, 5.888871208763722457e-08, 5.908076945318249955e-08, 5.927268756617981782e-08, 5.946446614218882544e-08, 5.965610489702604447e-08, 5.984760354688943973e-08, 6.003896180817301120e-08, 6.023017939763492349e-08, 6.042125603230069923e-08, 6.061219142946500575e-08, 6.080298530676869539e-08, 6.099363738210485105e-08, 6.118414737369707049e-08, 6.137451500002975823e-08, 6.156473997992779959e-08, 6.175482203246031649e-08, 6.194476087701954750e-08, 6.213455623332287271e-08, 6.232420782132317383e-08, 6.251371536133354657e-08, 6.270307857393954009e-08, 6.289229717999116312e-08, 6.308137090072505521e-08, 6.327029945758222909e-08, 6.345908257237412881e-08, 6.364771996718622684e-08, 6.383621136437932102e-08, 6.402455648666820283e-08, 6.421275505702573083e-08, 6.440080679876257095e-08, 6.458871143547430977e-08, 6.477646869103339459e-08, 6.496407828966891324e-08, 6.515153995586941035e-08, 6.533885341447165374e-08, 6.552601839055642288e-08, 6.571303460957024342e-08, 6.589990179723026806e-08, 6.608661967955948130e-08, 6.627318798292235428e-08, 6.645960643392889183e-08, 6.664587475955683018e-08, 6.683199268706530578e-08, 6.701795994399526559e-08, 6.720377625824792353e-08, 6.738944135798929717e-08, 6.757495497172978915e-08, 6.776031682827106234e-08, 6.794552665669927679e-08, 6.813058418646152123e-08, 6.831548914727286446e-08, 6.850024126920226297e-08, 6.868484028257805064e-08, 6.886928591806569368e-08, 6.905357790666086883e-08, 6.923771597963607374e-08, 6.942169986861971876e-08, 6.960552930550217239e-08, 6.978920402251289426e-08, 6.997272375222054096e-08, 7.015608822744814369e-08, 7.033929718139375748e-08, 7.052235034752703053e-08, 7.070524745966730330e-08, 7.088798825193249536e-08, 7.107057245873101888e-08, 7.125299981483873952e-08, 7.143527005530617336e-08, 7.161738291554254169e-08, 7.179933813122516499e-08, 7.198113543837328710e-08, 7.216277457334227835e-08, 7.234425527277174158e-08, 7.252557727366271122e-08, 7.270674031328491645e-08, 7.288774412925306708e-08, 7.306858845952756823e-08, 7.324927304233006853e-08, 7.342979761626187263e-08, 7.361016192021166762e-08, 7.379036569339005277e-08, 7.397040867536295770e-08, 7.415029060595944810e-08, 7.433001122539083975e-08, 7.450957027414861781e-08, 7.468896749308986803e-08, 7.486820262334505605e-08, 7.504727540639351921e-08, 7.522618558405612118e-08, 7.540493289844481378e-08, 7.558351709203836705e-08, 7.576193790759139261e-08, 7.594019508820871048e-08, 7.611828837734667261e-08, 7.629621751872145829e-08, 7.647398225646744285e-08, 7.665158233496321184e-08, 7.682901749894792211e-08, 7.700628749351453885e-08, 7.718339206402482784e-08, 7.736033095622807244e-08, 7.753710391617737615e-08, 7.771371069023044344e-08, 7.789015102512403928e-08, 7.806642466788367420e-08, 7.824253136589826238e-08, 7.841847086687131129e-08, 7.859424291881201467e-08, 7.876984727011047961e-08, 7.894528366944770285e-08, 7.912055186587764034e-08, 7.929565160872077222e-08, 7.947058264772024806e-08, 7.964534473287188475e-08, 7.981993761453610713e-08, 7.999436104343204526e-08, 8.016861477055576928e-08, 8.034269854729526088e-08, 8.051661212534833052e-08, 8.069035525671500738e-08, 8.086392769381341078e-08, 8.103732918930704816e-08, 8.121055949626064264e-08, 8.138361836805086368e-08, 8.155650555836709473e-08, 8.172922082128456920e-08, 8.190176391117510117e-08, 8.207413458278875786e-08, 8.224633259116582113e-08, 8.241835769170867946e-08, 8.259020964017449578e-08, 8.276188819262781331e-08, 8.293339310551247400e-08, 8.310472413556367265e-08, 8.327588103988073561e-08, 8.344686357592865597e-08, 8.361767150144756696e-08, 8.378830457460728573e-08, 8.395876255383090554e-08, 8.412904519794747339e-08, 8.429915226610366042e-08, 8.446908351776482070e-08, 8.463883871278653898e-08, 8.480841761132824666e-08, 8.497781997392371073e-08, 8.514704556143481758e-08, 8.531609413504361881e-08, 8.548496545632364084e-08, 8.565365928715363311e-08, 8.582217538979672596e-08, 8.599051352681466855e-08, 8.615867346113679589e-08, 8.632665495606362867e-08, 8.649445777517753784e-08, 8.666208168249458841e-08, 8.682952644229893135e-08, 8.699679181925274577e-08, 8.716387757839036264e-08, 8.733078348503767758e-08, 8.749750930492423710e-08, 8.766405480408825179e-08, 8.783041974894858093e-08, 8.799660390625676923e-08, 8.816260704309021759e-08, 8.832842892692276483e-08, 8.849406932554015641e-08, 8.865952800711594652e-08, 8.882480474012803888e-08, 8.898989929342868608e-08, 8.915481143623620452e-08, 8.931954093808944639e-08, 8.948408756891809017e-08, 8.964845109895750062e-08, 8.981263129881809278e-08, 8.997662793948631138e-08, 9.014044079224706116e-08, 9.030406962879306676e-08, 9.046751422113949441e-08, 9.063077434165525252e-08, 9.079384976309394799e-08, 9.095674025851083738e-08, 9.111944560136841477e-08, 9.128196556546148911e-08, 9.144429992491750183e-08, 9.160644845426516297e-08, 9.176841092835099200e-08, 9.193018712240784805e-08, 9.209177681199543909e-08, 9.225317977306740957e-08, 9.241439578188927090e-08, 9.257542461510632289e-08, 9.273626604974496399e-08, 9.289691986313553190e-08, 9.305738583302010174e-08, 9.321766373746963565e-08, 9.337775335491274219e-08, 9.353765446416767829e-08, 9.369736684435960478e-08, 9.385689027502567136e-08, 9.401622453604092767e-08, 9.417536940761731752e-08, 9.433432467037263258e-08, 9.449309010524861494e-08, 9.465166549357739621e-08, 9.481005061703743862e-08, 9.496824525764650725e-08, 9.512624919782928713e-08, 9.528406222033507539e-08, 9.544168410831299523e-08, 9.559911464521576494e-08, 9.575635361494027898e-08, 9.591340080167286561e-08, 9.607025598999284988e-08, 9.622691896486597596e-08, 9.638338951156985493e-08, 9.653966741579871899e-08, 9.669575246358872369e-08, 9.685164444131954941e-08, 9.700734313578035076e-08, 9.716284833408811059e-08, 9.731815982375546877e-08, 9.747327739264670297e-08, 9.762820082896980091e-08, 9.778292992134345547e-08, 9.793746445871760230e-08, 9.809180423044421332e-08, 9.824594902619984612e-08, 9.839989863605036258e-08, 9.855365285044383495e-08, 9.870721146016787659e-08, 9.886057425641416203e-08, 9.901374103070073819e-08, 9.916671157493507541e-08, 9.931948568141646289e-08, 9.947206314275495834e-08, 9.962444375201112183e-08, 9.977662730253472228e-08, 9.992861358810410079e-08, 1.000804024028465893e-07, 1.002319935412390266e-07, 1.003833867981717494e-07, 1.005345819688709294e-07, 1.006855788489699365e-07, 1.008363772344310405e-07, 1.009869769216098525e-07, 1.011373777072487994e-07, 1.012875793884349182e-07, 1.014375817626624838e-07, 1.015873846277572252e-07, 1.017369877819384244e-07, 1.018863910238216689e-07, 1.020355941523380658e-07, 1.021845969668721497e-07, 1.023333992671106739e-07, 1.024820008531446117e-07, 1.026304015254603285e-07, 1.027786010848693846e-07, 1.029265993326086430e-07, 1.030743960702693314e-07, 1.032219910997898150e-07, 1.033693842235554146e-07, 1.035165752442501493e-07, 1.036635639649915602e-07, 1.038103501892370074e-07, 1.039569337208581295e-07, 1.041033143640599654e-07, 1.042494919234474591e-07, 1.043954662040227075e-07, 1.045412370111119297e-07, 1.046868041504948650e-07, 1.048321674282601151e-07, 1.049773266509033077e-07, 1.051222816253195919e-07, 1.052670321587346187e-07, 1.054115780588019891e-07, 1.055559191335340490e-07, 1.057000551912959999e-07, 1.058439860409017852e-07, 1.059877114914692482e-07, 1.061312313525527052e-07, 1.062745454340661706e-07, 1.064176535462842435e-07, 1.065605554999035567e-07, 1.067032511059686755e-07, 1.068457401759332157e-07, 1.069880225216042309e-07, 1.071300979552067589e-07, 1.072719662893053787e-07, 1.074136273368694584e-07, 1.075550809112704420e-07, 1.076963268262158470e-07, 1.078373648958442647e-07, 1.079781949346565119e-07, 1.081188167575109196e-07, 1.082592301797167314e-07, 1.083994350168934168e-07, 1.085394310850987450e-07, 1.086792182007544714e-07, 1.088187961806482165e-07, 1.089581648419917129e-07, 1.090973240023485691e-07, 1.092362734796952958e-07, 1.093750130923799469e-07, 1.095135426591169840e-07, 1.096518619990461057e-07, 1.097899709316619838e-07, 1.099278692768771286e-07, 1.100655568549518634e-07, 1.102030334865528490e-07, 1.103402989927480018e-07, 1.104773531949652004e-07, 1.106141959150536432e-07, 1.107508269752032077e-07, 1.108872461980398744e-07, 1.110234534065560581e-07, 1.111594484241137842e-07, 1.112952310745028963e-07, 1.114308011818693887e-07, 1.115661585707744869e-07, 1.117013030661551818e-07, 1.118362344933191732e-07, 1.119709526780025084e-07, 1.121054574462979678e-07, 1.122397486247219276e-07, 1.123738260401410122e-07, 1.125076895198324188e-07, 1.126413388914769425e-07, 1.127747739831194835e-07, 1.129079946232301127e-07, 1.130410006406298640e-07, 1.131737918645506484e-07, 1.133063681246360613e-07, 1.134387292508757905e-07, 1.135708750736970957e-07, 1.137028054238865640e-07, 1.138345201326503283e-07, 1.139660190315726823e-07, 1.140973019526125593e-07, 1.142283687281595166e-07, 1.143592191909646885e-07, 1.144898531742050817e-07, 1.146202705114112860e-07, 1.147504710365290963e-07, 1.148804545839088188e-07, 1.150102209882712438e-07, 1.151397700847612736e-07, 1.152691017088819204e-07, 1.153982156965491511e-07, 1.155271118840925363e-07, 1.156557901081925699e-07, 1.157842502059702688e-07, 1.159124920149152416e-07, 1.160405153729132174e-07, 1.161683201182712314e-07, 1.162959060896477580e-07, 1.164232731261416229e-07, 1.165504210672285285e-07, 1.166773497527634231e-07, 1.168040590230337843e-07, 1.169305487186934713e-07, 1.170568186808180859e-07, 1.171828687508555280e-07, 1.173086987706819117e-07, 1.174343085825339626e-07, 1.175596980290644713e-07, 1.176848669533430614e-07, 1.178098151987880429e-07, 1.179345426092823363e-07, 1.180590490290476228e-07, 1.181833343027276836e-07, 1.183073982753833579e-07, 1.184312407924313048e-07, 1.185548616997314202e-07, 1.186782608435229643e-07, 1.188014380704269582e-07, 1.189243932275004727e-07, 1.190471261621694748e-07, 1.191696367222846388e-07, 1.192919247560841305e-07, 1.194139901121887230e-07, 1.195358326396556626e-07, 1.196574521879115024e-07, 1.197788486068151260e-07, 1.199000217465892707e-07, 1.200209714578758230e-07, 1.201416975917299418e-07, 1.202621999995834776e-07, 1.203824785333014586e-07, 1.205025330451069964e-07, 1.206223633876672067e-07, 1.207419694140333080e-07, 1.208613509776346927e-07, 1.209805079323630214e-07, 1.210994401324459620e-07, 1.212181474325626774e-07, 1.213366296877759837e-07, 1.214548867535340969e-07, 1.215729184857240223e-07, 1.216907247406060423e-07, 1.218083053748732732e-07, 1.219256602455869197e-07, 1.220427892102291093e-07, 1.221596921266993449e-07, 1.222763688532748529e-07, 1.223928192486676525e-07, 1.225090431719586195e-07, 1.226250404826501870e-07, 1.227408110406673254e-07, 1.228563547062917118e-07, 1.229716713402760531e-07, 1.230867608037118428e-07, 1.232016229581425460e-07, 1.233162576655003629e-07, 1.234306647881045349e-07, 1.235448441887141517e-07, 1.236587957304656560e-07, 1.237725192769242747e-07, 1.238860146920493697e-07, 1.239992818401889055e-07, 1.241123205861311717e-07, 1.242251307950430550e-07, 1.243377123325252817e-07, 1.244500650645511933e-07, 1.245621888575177801e-07, 1.246740835782468195e-07, 1.247857490939206072e-07, 1.248971852721904570e-07, 1.250083919810588570e-07, 1.251193690889586150e-07, 1.252301164647460283e-07, 1.253406339776454304e-07, 1.254509214973297114e-07, 1.255609788938606292e-07, 1.256708060376868502e-07, 1.257804027997206856e-07, 1.258897690512206185e-07, 1.259989046638986649e-07, 1.261078095098475295e-07, 1.262164834615945769e-07, 1.263249263920459017e-07, 1.264331381745296323e-07, 1.265411186827953227e-07, 1.266488677909793561e-07, 1.267563853736547879e-07, 1.268636713057705441e-07, 1.269707254627014760e-07, 1.270775477202490484e-07, 1.271841379545850913e-07, 1.272904960423302561e-07, 1.273966218604971059e-07, 1.275025152864882889e-07, 1.276081761981694627e-07, 1.277136044737565330e-07, 1.278187999919207123e-07, 1.279237626317261037e-07, 1.280284922726306282e-07, 1.281329887945361839e-07, 1.282372520777280310e-07, 1.283412820029233901e-07, 1.284450784512291696e-07, 1.285486413041898501e-07, 1.286519704437300181e-07, 1.287550657522002119e-07, 1.288579271123786154e-07, 1.289605544074178540e-07, 1.290629475209185545e-07, 1.291651063368729900e-07, 1.292670307396838214e-07, 1.293687206141875228e-07, 1.294701758455957509e-07, 1.295713963195679781e-07, 1.296723819221604588e-07, 1.297731325398268383e-07, 1.298736480594634689e-07, 1.299739283683531617e-07, 1.300739733542115615e-07, 1.301737829051579245e-07, 1.302733569097077859e-07, 1.303726952568201820e-07, 1.304717978358422227e-07, 1.305706645365578483e-07, 1.306692952491354202e-07, 1.307676898641701247e-07, 1.308658482726819615e-07, 1.309637703660831334e-07, 1.310614560362244207e-07, 1.311589051753349362e-07, 1.312561176760927998e-07, 1.313530934315745808e-07, 1.314498323352551924e-07, 1.315463342810546634e-07, 1.316425991632804344e-07, 1.317386268766747387e-07, 1.318344173163838706e-07, 1.319299703779530770e-07, 1.320252859573712913e-07, 1.321203639510185114e-07, 1.322152042557116452e-07, 1.323098067686547479e-07, 1.324041713874799438e-07, 1.324982980102435089e-07, 1.325921865353976014e-07, 1.326858368618333013e-07, 1.327792488888272737e-07, 1.328724225160852327e-07, 1.329653576437437937e-07, 1.330580541723198634e-07, 1.331505120027795673e-07, 1.332427310364840129e-07, 1.333347111752109949e-07, 1.334264523211720154e-07, 1.335179543769610647e-07, 1.336092172456199755e-07, 1.337002408305844507e-07, 1.337910250357273151e-07, 1.338815697653097053e-07, 1.339718749240230240e-07, 1.340619404169829846e-07, 1.341517661497035119e-07, 1.342413520281366318e-07, 1.343306979586240055e-07, 1.344198038479362371e-07, 1.345086696032739321e-07, 1.345972951322170079e-07, 1.346856803428131031e-07, 1.347738251434795861e-07, 1.348617294430676119e-07, 1.349493931508610636e-07, 1.350368161765262333e-07, 1.351239984301787903e-07, 1.352109398223366389e-07, 1.352976402639212415e-07, 1.353840996662981706e-07, 1.354703179412267100e-07, 1.355562950009010952e-07, 1.356420307579152022e-07, 1.357275251253014320e-07, 1.358127780164827999e-07, 1.358977893453115818e-07, 1.359825590260727817e-07, 1.360670869734308211e-07, 1.361513731025167309e-07, 1.362354173288352955e-07, 1.363192195683262768e-07, 1.364027797373584326e-07, 1.364860977526882767e-07, 1.365691735315205089e-07, 1.366520069914639433e-07, 1.367345980505267171e-07, 1.368169466271798444e-07, 1.368990526402626134e-07, 1.369809160090673956e-07, 1.370625366532902531e-07, 1.371439144930331354e-07, 1.372250494488412288e-07, 1.373059414416561836e-07, 1.373865903928575136e-07, 1.374669962242194230e-07, 1.375471588579453238e-07, 1.376270782166649238e-07, 1.377067542234096096e-07, 1.377861868016495045e-07, 1.378653758752431226e-07, 1.379443213684962382e-07, 1.380230232061217837e-07, 1.381014813132326232e-07, 1.381796956154015598e-07, 1.382576660385740648e-07, 1.383353925091472100e-07, 1.384128749539235847e-07, 1.384901133001123272e-07, 1.385671074753642507e-07, 1.386438574077298091e-07, 1.387203630256928724e-07, 1.387966242581481746e-07, 1.388726410343961785e-07, 1.389484132841800804e-07, 1.390239409376417379e-07, 1.390992239253612953e-07, 1.391742621783139583e-07, 1.392490556279051989e-07, 1.393236042059704907e-07, 1.393979078447321630e-07, 1.394719664768752634e-07, 1.395457800354595722e-07, 1.396193484539946707e-07, 1.396926716663983570e-07, 1.397657496069937610e-07, 1.398385822105470374e-07, 1.399111694122230550e-07, 1.399835111476216342e-07, 1.400556073527527710e-07, 1.401274579640331696e-07, 1.401990629183229295e-07, 1.402704221528811820e-07, 1.403415356054039688e-07, 1.404124032139843516e-07, 1.404830249171449173e-07, 1.405534006538349458e-07, 1.406235303634068250e-07, 1.406934139856509914e-07, 1.407630514607549017e-07, 1.408324427293353257e-07, 1.409015877324389028e-07, 1.409704864115048454e-07, 1.410391387084175878e-07, 1.411075445654695694e-07, 1.411757039253566290e-07, 1.412436167312305739e-07, 1.413112829266223379e-07, 1.413787024555095326e-07, 1.414458752622719777e-07, 1.415128012917251854e-07, 1.415794804890817678e-07, 1.416459127999851060e-07, 1.417120981705034476e-07, 1.417780365471103189e-07, 1.418437278767163154e-07, 1.419091721066279673e-07, 1.419743691845819389e-07, 1.420393190587453460e-07, 1.421040216776773749e-07, 1.421684769903820098e-07, 1.422326849462689639e-07, 1.422966454951643201e-07, 1.423603585873280801e-07, 1.424238241734148309e-07, 1.424870422045217870e-07, 1.425500126321548298e-07, 1.426127354082275020e-07, 1.426752104850930354e-07, 1.427374378155076911e-07, 1.427994173526575463e-07, 1.428611490501417125e-07, 1.429226328619680743e-07, 1.429838687425826173e-07, 1.430448566468339856e-07, 1.431055965300047424e-07, 1.431660883477714006e-07, 1.432263320562642444e-07, 1.432863276119984023e-07, 1.433460749719223395e-07, 1.434055740934113463e-07, 1.434648249342364629e-07, 1.435238274526111452e-07, 1.435825816071555838e-07, 1.436410873569013096e-07, 1.436993446613155463e-07, 1.437573534802672491e-07, 1.438151137740588427e-07, 1.438726255034024506e-07, 1.439298886294197637e-07, 1.439869031136692503e-07, 1.440436689181131491e-07, 1.441001860051465322e-07, 1.441564543375631598e-07, 1.442124738785855761e-07, 1.442682445918599211e-07, 1.443237664414375342e-07, 1.443790393918038326e-07, 1.444340634078412274e-07, 1.444888384548702045e-07, 1.445433644986209226e-07, 1.445976415052281838e-07, 1.446516694412766444e-07, 1.447054482737333429e-07, 1.447589779700093218e-07, 1.448122584979223056e-07, 1.448652898257000353e-07, 1.449180719220062361e-07, 1.449706047559051734e-07, 1.450228882968959850e-07, 1.450749225148756229e-07, 1.451267073801681819e-07, 1.451782428635206644e-07, 1.452295289360867017e-07, 1.452805655694512236e-07, 1.453313527355984301e-07, 1.453818904069389759e-07, 1.454321785563092818e-07, 1.454822171569400628e-07, 1.455320061825102729e-07, 1.455815456070870191e-07, 1.456308354051675158e-07, 1.456798755516724143e-07, 1.457286660219204718e-07, 1.457772067916667463e-07, 1.458254978370685576e-07, 1.458735391347122739e-07, 1.459213306615935655e-07, 1.459688723951190991e-07, 1.460161643131262576e-07, 1.460632063938560617e-07, 1.461099986159798512e-07, 1.461565409585683949e-07, 1.462028334011173279e-07, 1.462488759235464108e-07, 1.462946685061711802e-07, 1.463402111297510710e-07, 1.463855037754364502e-07, 1.464305464248026306e-07, 1.464753390598513003e-07, 1.465198816629786001e-07, 1.465641742170177396e-07, 1.466082167052073133e-07, 1.466520091111932590e-07, 1.466955514190627922e-07, 1.467388436132886080e-07, 1.467818856787816877e-07, 1.468246776008536332e-07, 1.468672193652461534e-07, 1.469095109580985866e-07, 1.469515523659762226e-07, 1.469933435758620973e-07, 1.470348845751450547e-07, 1.470761753516418229e-07, 1.471172158935684266e-07, 1.471580061895634542e-07, 1.471985462286884014e-07, 1.472388360004002758e-07, 1.472788754945914860e-07, 1.473186647015581050e-07, 1.473582036120028874e-07, 1.473974922170666362e-07, 1.474365305082780955e-07, 1.474753184775992138e-07, 1.475138561173991507e-07, 1.475521434204546208e-07, 1.475901803799701702e-07, 1.476279669895517853e-07, 1.476655032432299220e-07, 1.477027891354430942e-07, 1.477398246610370537e-07, 1.477766098152847212e-07, 1.478131445938618347e-07, 1.478494289928687870e-07, 1.478854630088020909e-07, 1.479212466385892138e-07, 1.479567798795608902e-07, 1.479920627294607301e-07, 1.480270951864551986e-07, 1.480618772491064835e-07, 1.480964089164071716e-07, 1.481306901877550223e-07, 1.481647210629530212e-07, 1.481985015422310848e-07, 1.482320316262204908e-07, 1.482653113159728836e-07, 1.482983406129479656e-07, 1.483311195190124651e-07, 1.483636480364569180e-07, 1.483959261679728509e-07, 1.484279539166754922e-07, 1.484597312860780434e-07, 1.484912582801123519e-07, 1.485225349031259998e-07, 1.485535611598690418e-07, 1.485843370555149700e-07, 1.486148625956350376e-07, 1.486451377862176882e-07, 1.486751626336690320e-07, 1.487049371447914053e-07, 1.487344613268135196e-07, 1.487637351873622448e-07, 1.487927587344872262e-07, 1.488215319766408733e-07, 1.488500549226819595e-07, 1.488783275818911337e-07, 1.489063499639492148e-07, 1.489341220789576796e-07, 1.489616439374148661e-07, 1.489889155502371497e-07, 1.490159369287531195e-07, 1.490427080846936261e-07, 1.490692290302084571e-07, 1.490954997778458498e-07, 1.491215203405688757e-07, 1.491472907317563939e-07, 1.491728109651810541e-07, 1.491980810550412726e-07, 1.492231010159333329e-07, 1.492478708628645678e-07, 1.492723906112576737e-07, 1.492966602769307261e-07, 1.493206798761239144e-07, 1.493444494254752155e-07, 1.493679689420423905e-07, 1.493912384432780242e-07, 1.494142579470495087e-07, 1.494370274716350211e-07, 1.494595470357137818e-07, 1.494818166583809311e-07, 1.495038363591294500e-07, 1.495256061578632627e-07, 1.495471260749015778e-07, 1.495683961309545364e-07, 1.495894163471587073e-07, 1.496101867450416446e-07, 1.496307073465423753e-07, 1.496509781740134105e-07, 1.496709992502006819e-07, 1.496907705982699582e-07, 1.497102922417867019e-07, 1.497295642047181073e-07, 1.497485865114471559e-07, 1.497673591867541937e-07, 1.497858822558324687e-07, 1.498041557442761402e-07, 1.498221796780831640e-07, 1.498399540836629155e-07, 1.498574789878235377e-07, 1.498747544177864725e-07, 1.498917804011650997e-07, 1.499085569659943042e-07, 1.499250841406991087e-07, 1.499413619541134148e-07, 1.499573904354831526e-07, 1.499731696144451313e-07, 1.499886995210518681e-07, 1.500039801857549123e-07, 1.500190116394042360e-07, 1.500337939132684047e-07, 1.500483270390014100e-07, 1.500626110486756783e-07, 1.500766459747602851e-07, 1.500904318501232322e-07, 1.501039687080446295e-07, 1.501172565821998599e-07, 1.501302955066741910e-07, 1.501430855159468401e-07, 1.501556266449033091e-07, 1.501679189288363904e-07, 1.501799624034320055e-07, 1.501917571047869930e-07, 1.502033030693902880e-07, 1.502146003341409753e-07, 1.502256489363363240e-07, 1.502364489136689564e-07, 1.502470003042476523e-07, 1.502573031465657975e-07, 1.502673574795286476e-07, 1.502771633424390079e-07, 1.502867207749956450e-07, 1.502960298173053042e-07, 1.503050905098691570e-07, 1.503139028935935480e-07, 1.503224670097816830e-07, 1.503307829001336028e-07, 1.503388506067552622e-07, 1.503466701721473865e-07, 1.503542416392147884e-07, 1.503615650512550658e-07, 1.503686404519674690e-07, 1.503754678854548066e-07, 1.503820473962092047e-07, 1.503883790291321975e-07, 1.503944628295139749e-07, 1.504002988430470410e-07, 1.504058871158248112e-07, 1.504112276943309714e-07, 1.504163206254554127e-07, 1.504211659564790111e-07, 1.504257637350844543e-07, 1.504301140093498352e-07, 1.504342168277472494e-07, 1.504380722391513452e-07, 1.504416802928286290e-07, 1.504450410384460691e-07, 1.504481545260637625e-07, 1.504510208061382179e-07, 1.504536399295248698e-07, 1.504560119474713556e-07, 1.504581369116253770e-07, 1.504600148740239530e-07, 1.504616458871029760e-07, 1.504630300036964965e-07, 1.504641672770262152e-07, 1.504650577607155379e-07, 1.504657015087794382e-07, 1.504660985756243246e-07, 1.504662490160584432e-07, 1.504661528852749638e-07, 1.504658102388693174e-07, 1.504652211328264380e-07, 1.504643856235227472e-07, 1.504633037677328255e-07, 1.504619756226207028e-07, 1.504604012457460004e-07, 1.504585806950580007e-07, 1.504565140289026890e-07, 1.504542013060153416e-07, 1.504516425855234109e-07, 1.504488379269494904e-07, 1.504457873902033735e-07, 1.504424910355906295e-07, 1.504389489238065690e-07, 1.504351611159369317e-07, 1.504311276734620159e-07, 1.504268486582480229e-07, 1.504223241325567446e-07, 1.504175541590372790e-07, 1.504125388007294444e-07, 1.504072781210650765e-07, 1.504017721838637139e-07, 1.503960210533359596e-07, 1.503900247940834020e-07, 1.503837834710936116e-07, 1.503772971497459911e-07, 1.503705658958072755e-07, 1.503635897754356878e-07, 1.503563688551737922e-07, 1.503489032019560910e-07, 1.503411928831052128e-07, 1.503332379663294510e-07, 1.503250385197271311e-07, 1.503165946117824021e-07, 1.503079063113690217e-07, 1.502989736877459889e-07, 1.502897968105589465e-07, 1.502803757498434639e-07, 1.502707105760183398e-07, 1.502608013598912405e-07, 1.502506481726547029e-07, 1.502402510858865845e-07, 1.502296101715522073e-07, 1.502187255020017111e-07, 1.502075971499706092e-07, 1.501962251885800001e-07, 1.501846096913349795e-07, 1.501727507321267312e-07, 1.501606483852302245e-07, 1.501483027253048755e-07, 1.501357138273936741e-07, 1.501228817669239249e-07, 1.501098066197086237e-07, 1.500964884619407663e-07, 1.500829273701994367e-07, 1.500691234214450428e-07, 1.500550766930216188e-07, 1.500407872626564019e-07, 1.500262552084579265e-07, 1.500114806089172420e-07, 1.499964635429086269e-07, 1.499812040896868365e-07, 1.499657023288888234e-07, 1.499499583405319635e-07, 1.499339722050159096e-07, 1.499177440031211086e-07, 1.499012738160075046e-07, 1.498845617252177948e-07, 1.498676078126728766e-07, 1.498504121606746533e-07, 1.498329748519048962e-07, 1.498152959694241854e-07, 1.497973755966732601e-07, 1.497792138174716156e-07, 1.497608107160185885e-07, 1.497421663768911861e-07, 1.497232808850450661e-07, 1.497041543258146157e-07, 1.496847867849121312e-07, 1.496651783484272354e-07, 1.496453291028274075e-07, 1.496252391349572151e-07, 1.496049085320403522e-07, 1.495843373816741076e-07, 1.495635257718348173e-07, 1.495424737908749526e-07, 1.495211815275216647e-07, 1.494996490708808082e-07, 1.494778765104306140e-07, 1.494558639360281490e-07, 1.494336114379039949e-07, 1.494111191066633338e-07, 1.493883870332881979e-07, 1.493654153091327319e-07, 1.493422040259264215e-07, 1.493187532757747032e-07, 1.492950631511527959e-07, 1.492711337449147012e-07, 1.492469651502834360e-07, 1.492225574608568821e-07, 1.491979107706075216e-07, 1.491730251738770108e-07, 1.491479007653823471e-07, 1.491225376402102318e-07, 1.490969358938238454e-07, 1.490710956220516782e-07, 1.490450169210996529e-07, 1.490186998875417810e-07, 1.489921446183222803e-07, 1.489653512107600484e-07, 1.489383197625394776e-07, 1.489110503717191898e-07, 1.488835431367273783e-07, 1.488557981563586042e-07, 1.488278155297820822e-07, 1.487995953565312244e-07, 1.487711377365120319e-07, 1.487424427699990177e-07, 1.487135105576321898e-07, 1.486843412004250180e-07, 1.486549347997541908e-07, 1.486252914573657027e-07, 1.485954112753753314e-07, 1.485652943562628666e-07, 1.485349408028772723e-07, 1.485043507184318424e-07, 1.484735242065111361e-07, 1.484424613710619779e-07, 1.484111623163965280e-07, 1.483796271471981857e-07, 1.483478559685081949e-07, 1.483158488857396206e-07, 1.482836060046670255e-07, 1.482511274314293025e-07, 1.482184132725349420e-07, 1.481854636348501734e-07, 1.481522786256097383e-07, 1.481188583524080764e-07, 1.480852029232063129e-07, 1.480513124463296916e-07, 1.480171870304614335e-07, 1.479828267846539865e-07, 1.479482318183156583e-07, 1.479134022412221305e-07, 1.478783381635088092e-07, 1.478430396956719100e-07, 1.478075069485710521e-07, 1.477717400334228790e-07, 1.477357390618121232e-07, 1.476995041456785296e-07, 1.476630353973209852e-07, 1.476263329294048511e-07, 1.475893968549481983e-07, 1.475522272873337982e-07, 1.475148243402998057e-07, 1.474771881279443644e-07, 1.474393187647294719e-07, 1.474012163654673737e-07, 1.473628810453342481e-07, 1.473243129198594336e-07, 1.472855121049356456e-07, 1.472464787168098710e-07, 1.472072128720840830e-07, 1.471677146877219379e-07, 1.471279842810375518e-07, 1.470880217697078886e-07, 1.470478272717624631e-07, 1.470074009055840559e-07, 1.469667427899173160e-07, 1.469258530438555521e-07, 1.468847317868501562e-07, 1.468433791387086713e-07, 1.468017952195871414e-07, 1.467599801500042994e-07, 1.467179340508242824e-07, 1.466756570432681990e-07, 1.466331492489141557e-07, 1.465904107896853718e-07, 1.465474417878656646e-07, 1.465042423660838849e-07, 1.464608126473272051e-07, 1.464171527549282544e-07, 1.463732628125784335e-07, 1.463291429443171415e-07, 1.462847932745297900e-07, 1.462402139279641359e-07, 1.461954050297039432e-07, 1.461503667051949767e-07, 1.461050990802279023e-07, 1.460596022809402462e-07, 1.460138764338259762e-07, 1.459679216657207060e-07, 1.459217381038107472e-07, 1.458753258756375033e-07, 1.458286851090798679e-07, 1.457818159323721705e-07, 1.457347184740913390e-07, 1.456873928631633848e-07, 1.456398392288655999e-07, 1.455920577008136127e-07, 1.455440484089776146e-07, 1.454958114836652070e-07, 1.454473470555385277e-07, 1.453986552556015718e-07, 1.453497362152003766e-07, 1.453005900660307514e-07, 1.452512169401272126e-07, 1.452016169698773304e-07, 1.451517902880043915e-07, 1.451017370275781984e-07, 1.450514573220181399e-07, 1.450009513050722800e-07, 1.449502191108471896e-07, 1.448992608737808410e-07, 1.448480767286568492e-07, 1.447966668106066417e-07, 1.447450312550935773e-07, 1.446931701979288542e-07, 1.446410837752589632e-07, 1.445887721235787903e-07, 1.445362353797192026e-07, 1.444834736808483712e-07, 1.444304871644813542e-07, 1.443772759684634463e-07, 1.443238402309890523e-07, 1.442701800905874459e-07, 1.442162956861200705e-07, 1.441621871568015025e-07, 1.441078546421643529e-07, 1.440532982820983098e-07, 1.439985182168179250e-07, 1.439435145868772784e-07, 1.438882875331749802e-07, 1.438328371969337367e-07, 1.437771637197221085e-07, 1.437212672434370666e-07, 1.436651479103141305e-07, 1.436088058629315238e-07, 1.435522412441890783e-07, 1.434954541973315001e-07, 1.434384448659281741e-07, 1.433812133938935182e-07, 1.433237599254703085e-07, 1.432660846052289108e-07, 1.432081875780867096e-07, 1.431500689892756565e-07, 1.430917289843764158e-07, 1.430331677092952832e-07, 1.429743853102645561e-07, 1.429153819338600301e-07, 1.428561577269777060e-07, 1.427967128368469714e-07, 1.427370474110395473e-07, 1.426771615974339662e-07, 1.426170555442620527e-07, 1.425567294000688483e-07, 1.424961833137388692e-07, 1.424354174344754605e-07, 1.423744319118213889e-07, 1.423132268956444174e-07, 1.422518025361334929e-07, 1.421901589838143906e-07, 1.421282963895296230e-07, 1.420662149044614950e-07, 1.420039146801121460e-07, 1.419413958683041850e-07, 1.418786586211997224e-07, 1.418157030912745883e-07, 1.417525294313334471e-07, 1.416891377945156734e-07, 1.416255283342636943e-07, 1.415617012043682264e-07, 1.414976565589262149e-07, 1.414333945523647365e-07, 1.413689153394420574e-07, 1.413042190752255052e-07, 1.412393059151152119e-07, 1.411741760148264322e-07, 1.411088295304042080e-07, 1.410432666182048921e-07, 1.409774874349184358e-07, 1.409114921375515282e-07, 1.408452808834222485e-07, 1.407788538301865892e-07, 1.407122111358036748e-07, 1.406453529585622050e-07, 1.405782794570696551e-07, 1.405109907902442025e-07, 1.404434871173370940e-07, 1.403757685979049846e-07, 1.403078353918266402e-07, 1.402396876593068549e-07, 1.401713255608531840e-07, 1.401027492573026260e-07, 1.400339589097986991e-07, 1.399649546798061060e-07, 1.398957367291142276e-07, 1.398263052198122153e-07, 1.397566603143166514e-07, 1.396868021753479119e-07, 1.396167309659545718e-07, 1.395464468494933141e-07, 1.394759499896290626e-07, 1.394052405503504926e-07, 1.393343186959480884e-07, 1.392631845910414325e-07, 1.391918384005458545e-07, 1.391202802896966774e-07, 1.390485104240480787e-07, 1.389765289694514389e-07, 1.389043360920808579e-07, 1.388319319584136736e-07, 1.387593167352402817e-07, 1.386864905896697742e-07, 1.386134536891068048e-07, 1.385402062012766024e-07, 1.384667482942024988e-07, 1.383930801362297511e-07, 1.383192018960081248e-07, 1.382451137424864675e-07, 1.381708158449343876e-07, 1.380963083729145667e-07, 1.380215914963129885e-07, 1.379466653853144540e-07, 1.378715302104019198e-07, 1.377961861423829942e-07, 1.377206333523536474e-07, 1.376448720117243372e-07, 1.375689022922106647e-07, 1.374927243658230252e-07, 1.374163384048936863e-07, 1.373397445820412660e-07, 1.372629430701997693e-07, 1.371859340425956926e-07, 1.371087176727718461e-07, 1.370312941345666808e-07, 1.369536636021157182e-07, 1.368758262498659232e-07, 1.367977822525533372e-07, 1.367195317852308976e-07, 1.366410750232434244e-07, 1.365624121422299753e-07, 1.364835433181494426e-07, 1.364044687272310543e-07, 1.363251885460305434e-07, 1.362457029513923484e-07, 1.361660121204494553e-07, 1.360861162306543663e-07, 1.360060154597375432e-07, 1.359257099857342471e-07, 1.358451999869872387e-07, 1.357644856421166816e-07, 1.356835671300556392e-07, 1.356024446300204011e-07, 1.355211183215339360e-07, 1.354395883844026774e-07, 1.353578549987428346e-07, 1.352759183449577876e-07, 1.351937786037354137e-07, 1.351114359560822595e-07, 1.350288905832645671e-07, 1.349461426668719859e-07, 1.348631923887753276e-07, 1.347800399311286570e-07, 1.346966854763990969e-07, 1.346131292073242118e-07, 1.345293713069416011e-07, 1.344454119585927641e-07, 1.343612513458784976e-07, 1.342768896527235888e-07, 1.341923270633191107e-07, 1.341075637621536039e-07, 1.340225999340147702e-07, 1.339374357639595092e-07, 1.338520714373496260e-07, 1.337665071398186642e-07, 1.336807430573069788e-07, 1.335947793760318250e-07, 1.335086162824928378e-07, 1.334222539634871990e-07, 1.333356926060825319e-07, 1.332489323976549124e-07, 1.331619735258434729e-07, 1.330748161785819545e-07, 1.329874605441003480e-07, 1.328999068108829926e-07, 1.328121551677318910e-07, 1.327242058037070469e-07, 1.326360589081612464e-07, 1.325477146707398459e-07, 1.324591732813514173e-07, 1.323704349302017884e-07, 1.322814998077668047e-07, 1.321923681048092446e-07, 1.321030400123823127e-07, 1.320135157218002851e-07, 1.319237954246740846e-07, 1.318338793128774790e-07, 1.317437675785841917e-07, 1.316534604142355820e-07, 1.315629580125435833e-07, 1.314722605665236843e-07, 1.313813682694320900e-07, 1.312902813148402340e-07, 1.311989998965691070e-07, 1.311075242087262879e-07, 1.310158544457062353e-07, 1.309239908021600319e-07, 1.308319334730289756e-07, 1.307396826535175528e-07, 1.306472385391106182e-07, 1.305546013255788734e-07, 1.304617712089455418e-07, 1.303687483855253585e-07, 1.302755330518874067e-07, 1.301821254048970458e-07, 1.300885256416792773e-07, 1.299947339596248858e-07, 1.299007505564114823e-07, 1.298065756299676643e-07, 1.297122093785169558e-07, 1.296176520005405373e-07, 1.295229036947811639e-07, 1.294279646602744787e-07, 1.293328350963010496e-07, 1.292375152024207539e-07, 1.291420051784774099e-07, 1.290463052245459967e-07, 1.289504155410085427e-07, 1.288543363284875543e-07, 1.287580677878885529e-07, 1.286616101203659550e-07, 1.285649635273629362e-07, 1.284681282105769935e-07, 1.283711043719634927e-07, 1.282738922137579291e-07, 1.281764919384414376e-07, 1.280789037487824562e-07, 1.279811278478015738e-07, 1.278831644387716896e-07, 1.277850137252544347e-07, 1.276866759110484510e-07, 1.275881512002296246e-07, 1.274894397971352309e-07, 1.273905419063496934e-07, 1.272914577327443682e-07, 1.271921874814245776e-07, 1.270927313577675947e-07, 1.269930895674219811e-07, 1.268932623162732559e-07, 1.267932498104839446e-07, 1.266930522564604651e-07, 1.265926698608768449e-07, 1.264921028306735562e-07, 1.263913513730276316e-07, 1.262904156953916012e-07, 1.261892960054552439e-07, 1.260879925111919354e-07, 1.259865054208031950e-07, 1.258848349427635773e-07, 1.257829812858001323e-07, 1.256809446588800969e-07, 1.255787252712524256e-07, 1.254763233323923632e-07, 1.253737390520399054e-07, 1.252709726402003806e-07, 1.251680243071085576e-07, 1.250648942632702290e-07, 1.249615827194278275e-07, 1.248580898865830040e-07, 1.247544159759996988e-07, 1.246505611991695451e-07, 1.245465257678540354e-07, 1.244423098940435995e-07, 1.243379137900037675e-07, 1.242333376682355977e-07, 1.241285817414816055e-07, 1.240236462227478398e-07, 1.239185313252680158e-07, 1.238132372625519285e-07, 1.237077642483274575e-07, 1.236021124965819128e-07, 1.234962822215604992e-07, 1.233902736377297621e-07, 1.232840869598215533e-07, 1.231777224027966617e-07, 1.230711801818685834e-07, 1.229644605125069358e-07, 1.228575636104004799e-07, 1.227504896915023566e-07, 1.226432389719868620e-07, 1.225358116682965104e-07, 1.224282079971026473e-07, 1.223204281753099229e-07, 1.222124724200817560e-07, 1.221043409487998616e-07, 1.219960339791136170e-07, 1.218875517288977105e-07, 1.217788944162548940e-07, 1.216700622595606373e-07, 1.215610554773819987e-07, 1.214518742885671191e-07, 1.213425189121847118e-07, 1.212329895675295423e-07, 1.211232864741616031e-07, 1.210134098518480395e-07, 1.209033599206140767e-07, 1.207931369006989485e-07, 1.206827410126027216e-07, 1.205721724770485236e-07, 1.204614315149836549e-07, 1.203505183476092343e-07, 1.202394331963362860e-07, 1.201281762828363501e-07, 1.200167478290000566e-07, 1.199051480569377614e-07, 1.197933771890270857e-07, 1.196814354478279482e-07, 1.195693230561773796e-07, 1.194570402371235864e-07, 1.193445872139329128e-07, 1.192319642101324302e-07, 1.191191714494471641e-07, 1.190062091558451726e-07, 1.188930775535408413e-07, 1.187797768669316341e-07, 1.186663073206933315e-07, 1.185526691396917537e-07, 1.184388625490430324e-07, 1.183248877740669710e-07, 1.182107450403367283e-07, 1.180964345736376980e-07, 1.179819565999659334e-07, 1.178673113455805312e-07, 1.177524990369138065e-07, 1.176375199006677483e-07, 1.175223741637492483e-07, 1.174070620532753022e-07, 1.172915837966177829e-07, 1.171759396213375975e-07, 1.170601297552329810e-07, 1.169441544263408464e-07, 1.168280138628734955e-07, 1.167117082933140293e-07, 1.165952379463295664e-07, 1.164786030508203583e-07, 1.163618038359196302e-07, 1.162448405309514939e-07, 1.161277133654834378e-07, 1.160104225692802957e-07, 1.158929683723347268e-07, 1.157753510048705772e-07, 1.156575706972998802e-07, 1.155396276802749483e-07, 1.154215221846396690e-07, 1.153032544414882018e-07, 1.151848246820945283e-07, 1.150662331379621896e-07, 1.149474800408281240e-07, 1.148285656225954601e-07, 1.147094901154325671e-07, 1.145902537516828060e-07, 1.144708567639155234e-07, 1.143512993849280766e-07, 1.142315818476992335e-07, 1.141117043854432770e-07, 1.139916672315660914e-07, 1.138714706196933130e-07, 1.137511147836743540e-07, 1.136305999575396662e-07, 1.135099263755535356e-07, 1.133890942721629164e-07, 1.132681038820528845e-07, 1.131469554401017985e-07, 1.130256491813846343e-07, 1.129041853412036109e-07, 1.127825641550418154e-07, 1.126607858586189350e-07, 1.125388506878444980e-07, 1.124167588788185756e-07, 1.122945106678797184e-07, 1.121721062915373395e-07, 1.120495459865282272e-07, 1.119268299897728041e-07, 1.118039585384043231e-07, 1.116809318697740949e-07, 1.115577502214048487e-07, 1.114344138310457626e-07, 1.113109229366220917e-07, 1.111872777762897090e-07, 1.110634785883902260e-07, 1.109395256114539836e-07, 1.108154190842323721e-07, 1.106911592456495101e-07, 1.105667463348572622e-07, 1.104421805911923978e-07, 1.103174622541725674e-07, 1.101925915635483821e-07, 1.100675687592320510e-07, 1.099423940813515383e-07, 1.098170677702320876e-07, 1.096915900663727032e-07, 1.095659612105027692e-07, 1.094401814435116267e-07, 1.093142510065072042e-07, 1.091881701407658439e-07, 1.090619390877873594e-07, 1.089355580892501824e-07, 1.088090273870134535e-07, 1.086823472231491572e-07, 1.085555178398945549e-07, 1.084285394797096779e-07, 1.083014123852285169e-07, 1.081741367992596439e-07, 1.080467129648391387e-07, 1.079191411251541046e-07, 1.077914215236019734e-07, 1.076635544037678348e-07, 1.075355400094048482e-07, 1.074073785844890352e-07, 1.072790703731469247e-07, 1.071506156197078173e-07, 1.070220145687026869e-07, 1.068932674648160056e-07, 1.067643745529444405e-07, 1.066353360781476199e-07, 1.065061522856805720e-07, 1.063768234209973778e-07, 1.062473497297040019e-07, 1.061177314576166317e-07, 1.059879688507063428e-07, 1.058580621551686743e-07, 1.057280116173231498e-07, 1.055978174837226903e-07, 1.054674800010804251e-07, 1.053369994162730269e-07, 1.052063759763942340e-07, 1.050756099286809992e-07, 1.049447015205641403e-07, 1.048136509996688293e-07, 1.046824586137659145e-07, 1.045511246108320601e-07, 1.044196492389977992e-07, 1.042880327465815076e-07, 1.041562753820951874e-07, 1.040243773941925073e-07, 1.038923390317303575e-07, 1.037601605437130383e-07, 1.036278421793518572e-07, 1.034953841880158682e-07, 1.033627868192363188e-07, 1.032300503227403594e-07, 1.030971749483989509e-07, 1.029641609462946136e-07, 1.028310085666422168e-07, 1.026977180598455845e-07, 1.025642896764998376e-07, 1.024307236673163259e-07, 1.022970202832360509e-07, 1.021631797753268971e-07, 1.020292023948408066e-07, 1.018950883932148379e-07, 1.017608380220218261e-07, 1.016264515330286961e-07, 1.014919291781430862e-07, 1.013572712094708402e-07, 1.012224778792699372e-07, 1.010875494399507692e-07, 1.009524861441120340e-07, 1.008172882444897153e-07, 1.006819559940173140e-07, 1.005464896457756090e-07, 1.004108894529920614e-07, 1.002751556691017746e-07, 1.001392885476419192e-07, 1.000032883423663081e-07, 9.986715530716896431e-08, 9.973088969608782718e-08, 9.959449176336131814e-08, 9.945796176334815051e-08, 9.932129995059559513e-08, 9.918450657978798332e-08, 9.904758190577946328e-08, 9.891052618359932052e-08, 9.877333966840155290e-08, 9.863602261552536734e-08, 9.849857528043955356e-08, 9.836099791880219991e-08, 9.822329078641271690e-08, 9.808545413921294891e-08, 9.794748823332357016e-08, 9.780939332499133043e-08, 9.767116967065178843e-08, 9.753281752687710019e-08, 9.739433715037582048e-08, 9.725572879804879382e-08, 9.711699272691126709e-08, 9.697812919414557767e-08, 9.683913845710967668e-08, 9.670002077325488739e-08, 9.656077640024687213e-08, 9.642140559585467093e-08, 9.628190861801494370e-08, 9.614228572483120263e-08, 9.600253717452084610e-08, 9.586266322547817007e-08, 9.572266413622292398e-08, 9.558254016544484622e-08, 9.544229157195218038e-08, 9.530191861473402481e-08, 9.516142155290825335e-08, 9.502080064572172705e-08, 9.488005615260617193e-08, 9.473918833309747259e-08, 9.459819744689941143e-08, 9.445708375385890618e-08, 9.431584751394352384e-08, 9.417448898730339347e-08, 9.403300843419222038e-08, 9.389140611502111243e-08, 9.374968229036125346e-08, 9.360783722088892558e-08, 9.346587116745102186e-08, 9.332378439101067740e-08, 9.318157715268179919e-08, 9.303924971373639819e-08, 9.289680233554893664e-08, 9.275423527966154962e-08, 9.261154880772477917e-08, 9.246874318156748102e-08, 9.232581866311476823e-08, 9.218277551445070491e-08, 9.203961399779571422e-08, 9.189633437548257032e-08, 9.175293691001966111e-08, 9.160942186400852164e-08, 9.146578950020264997e-08, 9.132204008150681897e-08, 9.117817387092336907e-08, 9.103419113161654316e-08, 9.089009212686008957e-08, 9.074587712007011113e-08, 9.060154637481262225e-08, 9.045710015474810799e-08, 9.031253872369735439e-08, 9.016786234558181206e-08, 9.002307128448666046e-08, 8.987816580460932411e-08, 8.973314617026362841e-08, 8.958801264591481913e-08, 8.944276549612592140e-08, 8.929740498562288185e-08, 8.915193137924046438e-08, 8.900634494192093987e-08, 8.886064593877490057e-08, 8.871483463499613321e-08, 8.856891129593288895e-08, 8.842287618703330265e-08, 8.827672957388181529e-08, 8.813047172220400473e-08, 8.798410289781229616e-08, 8.783762336667110428e-08, 8.769103339483773943e-08, 8.754433324852610721e-08, 8.739752319405339828e-08, 8.725060349784518382e-08, 8.710357442647097765e-08, 8.695643624658989383e-08, 8.680918922501662252e-08, 8.666183362866565820e-08, 8.651436972455251726e-08, 8.636679777985845661e-08, 8.621911806181443017e-08, 8.607133083782990407e-08, 8.592343637540607544e-08, 8.577543494214119288e-08, 8.562732680579212511e-08, 8.547911223418788427e-08, 8.533079149530216630e-08, 8.518236485719220576e-08, 8.503383258806496352e-08, 8.488519495622300931e-08, 8.473645223006832010e-08, 8.458760467813982749e-08, 8.443865256905685183e-08, 8.428959617158789713e-08, 8.414043575459301313e-08, 8.399117158702317328e-08, 8.384180393798983727e-08, 8.369233307664475184e-08, 8.354275927231059230e-08, 8.339308279439359905e-08, 8.324330391238945391e-08, 8.309342289594451788e-08, 8.294344001476852065e-08, 8.279335553869602334e-08, 8.264316973769310223e-08, 8.249288288176810580e-08, 8.234249524110367280e-08, 8.219200708593726090e-08, 8.204141868662834021e-08, 8.189073031365963738e-08, 8.173994223757892854e-08, 8.158905472906788719e-08, 8.143806805887936408e-08, 8.128698249791789502e-08, 8.113579831712000457e-08, 8.098451578758688576e-08, 8.083313518049364850e-08, 8.068165676709712814e-08, 8.053008081879704390e-08, 8.037840760704837066e-08, 8.022663740342325178e-08, 8.007477047961676953e-08, 7.992280710735917125e-08, 7.977074755854637865e-08, 7.961859210512043704e-08, 7.946634101913886612e-08, 7.931399457277328360e-08, 7.916155303825257453e-08, 7.900901668793240099e-08, 7.885638579423588328e-08, 7.870366062969474723e-08, 7.855084146695126968e-08, 7.839792857870267874e-08, 7.824492223777092813e-08, 7.809182271703730355e-08, 7.793863028951291178e-08, 7.778534522828030150e-08, 7.763196780649424421e-08, 7.747849829744973503e-08, 7.732493697446074795e-08, 7.717128411100110795e-08, 7.701753998058193591e-08, 7.686370485682129064e-08, 7.670977901344397032e-08, 7.655576272422423194e-08, 7.640165626305428180e-08, 7.624745990388658466e-08, 7.609317392077281403e-08, 7.593879858786900050e-08, 7.578433417937679535e-08, 7.562978096961508450e-08, 7.547513923295317879e-08, 7.532040924388389709e-08, 7.516559127696292395e-08, 7.501068560681464626e-08, 7.485569250817233435e-08, 7.470061225581744676e-08, 7.454544512465182662e-08, 7.439019138963794606e-08, 7.423485132579955478e-08, 7.407942520828461190e-08, 7.392391331227497108e-08, 7.376831591306379144e-08, 7.361263328599567610e-08, 7.345686570650637684e-08, 7.330101345012851165e-08, 7.314507679243207380e-08, 7.298905600909588708e-08, 7.283295137584189457e-08, 7.267676316850641523e-08, 7.252049166298119576e-08, 7.236413713521902216e-08, 7.220769986127305387e-08, 7.205118011723620788e-08, 7.189457817931511540e-08, 7.173789432376805017e-08, 7.158112882690556373e-08, 7.142428196515646137e-08, 7.126735401497386087e-08, 7.111034525290786530e-08, 7.095325595557857703e-08, 7.079608639965001181e-08, 7.063883686190062750e-08, 7.048150761913188417e-08, 7.032409894823287011e-08, 7.016661112618051357e-08, 7.000904442997903315e-08, 6.985139913673284878e-08, 6.969367552358556893e-08, 6.953587386777406830e-08, 6.937799444656657509e-08, 6.922003753733620396e-08, 6.906200341750075059e-08, 6.890389236452177841e-08, 6.874570465597126955e-08, 6.858744056943655863e-08, 6.842910038259557306e-08, 6.827068437318737222e-08, 6.811219281898599532e-08, 6.795362599787331942e-08, 6.779498418774495941e-08, 6.763626766657698509e-08, 6.747747671242503439e-08, 6.731861160336405497e-08, 6.715967261756088431e-08, 6.700066003321363395e-08, 6.684157412859191028e-08, 6.668241518204284972e-08, 6.652318347192992049e-08, 6.636387927670632341e-08, 6.620450287484752035e-08, 6.604505454493925953e-08, 6.588553456554686774e-08, 6.572594321535796215e-08, 6.556628077308721203e-08, 6.540654751748250624e-08, 6.524674372739227910e-08, 6.508686968166938538e-08, 6.492692565924022611e-08, 6.476691193910278987e-08, 6.460682880026497816e-08, 6.444667652181968693e-08, 6.428645538288278793e-08, 6.412616566263362742e-08, 6.396580764032112746e-08, 6.380538159520170110e-08, 6.364488780661518086e-08, 6.348432655391394595e-08, 6.332369811653971110e-08, 6.316300277395981377e-08, 6.300224080567457277e-08, 6.284141249125793260e-08, 6.268051811029451831e-08, 6.251955794245573615e-08, 6.235853226743640486e-08, 6.219744136495502041e-08, 6.203628551482870516e-08, 6.187506499684167955e-08, 6.171378009089678833e-08, 6.155243107688386634e-08, 6.139101823475554800e-08, 6.122954184452567906e-08, 6.106800218620776120e-08, 6.090639953989015261e-08, 6.074473418566647898e-08, 6.058300640371087382e-08, 6.042121647421585392e-08, 6.025936467739827502e-08, 6.009745129354137908e-08, 5.993547660293003592e-08, 5.977344088592827329e-08, 5.961134442291598751e-08, 5.944918749428797083e-08, 5.928697038053005163e-08, 5.912469336208670593e-08, 5.896235671950717710e-08, 5.879996073334644585e-08, 5.863750568417219177e-08, 5.847499185263415076e-08, 5.831241951936630259e-08, 5.814978896505538790e-08, 5.798710047044812788e-08, 5.782435431625244562e-08, 5.766155078328448590e-08, 5.749869015233417521e-08, 5.733577270425678727e-08, 5.717279871990185190e-08, 5.700976848018967907e-08, 5.684668226604826164e-08, 5.668354035841247458e-08, 5.652034303830128075e-08, 5.635709058668272840e-08, 5.619378328462247968e-08, 5.603042141318356303e-08, 5.586700525343387729e-08, 5.570353508651574113e-08, 5.554001119354681659e-08, 5.537643385569051211e-08, 5.521280335416148163e-08, 5.504911997012799081e-08, 5.488538398485806327e-08, 5.472159567958611926e-08, 5.455775533558935419e-08, 5.439386323418758644e-08, 5.422991965667896885e-08, 5.406592488441850476e-08, 5.390187919875182058e-08, 5.373778288107274418e-08, 5.357363621275875835e-08, 5.340943947524863004e-08, 5.324519294997767849e-08, 5.308089691837779513e-08, 5.291655166194807816e-08, 5.275215746215412163e-08, 5.258771460049913979e-08, 5.242322335853082934e-08, 5.225868401774102251e-08, 5.209409685971452665e-08, 5.192946216599375774e-08, 5.176478021815603217e-08, 5.160005129781412259e-08, 5.143527568655057317e-08, 5.127045366599607000e-08, 5.110558551776512613e-08, 5.094067152349775822e-08, 5.077571196486646139e-08, 5.061070712351156994e-08, 5.044565728111982634e-08, 5.028056271935137091e-08, 5.011542371991857548e-08, 4.995024056452113946e-08, 4.978501353485282642e-08, 4.961974291264352454e-08, 4.945442897959507070e-08, 4.928907201746631763e-08, 4.912367230797239002e-08, 4.895823013285557715e-08, 4.879274577388512780e-08, 4.862721951279287567e-08, 4.846165163135035918e-08, 4.829604241130499613e-08, 4.813039213442181997e-08, 4.796470108249116264e-08, 4.779896953726215587e-08, 4.763319778052270961e-08, 4.746738609402624369e-08, 4.730153475957040233e-08, 4.713564405893260684e-08, 4.696971427387559441e-08, 4.680374568619170207e-08, 4.663773857763600401e-08, 4.647169323000551578e-08, 4.630560992507487938e-08, 4.613948894459460956e-08, 4.597333057036327038e-08, 4.580713508412633411e-08, 4.564090276766149338e-08, 4.547463390271459104e-08, 4.530832877104086010e-08, 4.514198765441232866e-08, 4.497561083455318728e-08, 4.480919859321735873e-08, 4.464275121211679793e-08, 4.447626897299995502e-08, 4.430975215758703024e-08, 4.414320104757588999e-08, 4.397661592468518604e-08, 4.380999707058893550e-08, 4.364334476699590368e-08, 4.347665929558337672e-08, 4.330994093799717478e-08, 4.314318997592381535e-08, 4.297640669098788321e-08, 4.280959136483190305e-08, 4.264274427908645508e-08, 4.247586571534116413e-08, 4.230895595522367888e-08, 4.214201528029762422e-08, 4.197504397213496303e-08, 4.180804231231560574e-08, 4.164101058236099765e-08, 4.147394906381413707e-08, 4.130685803817352000e-08, 4.113973778695077147e-08, 4.097258859160488133e-08, 4.080541073362146803e-08, 4.063820449444753724e-08, 4.047097015549001937e-08, 4.030370799819616493e-08, 4.013641830391432673e-08, 3.996910135404657134e-08, 3.980175742994640656e-08, 3.963438681292529293e-08, 3.946698978432508491e-08, 3.929956662541612224e-08, 3.913211761746877113e-08, 3.896464304175344410e-08, 3.879714317947466379e-08, 3.862961831185035976e-08, 3.846206872004606467e-08, 3.829449468521832466e-08, 3.812689648852145582e-08, 3.795927441104109176e-08, 3.779162873387447309e-08, 3.762395973805659674e-08, 3.745626770464043923e-08, 3.728855291463038519e-08, 3.712081564898938081e-08, 3.695305618868241044e-08, 3.678527481460989204e-08, 3.661747180769484213e-08, 3.644964744878077525e-08, 3.628180201870358265e-08, 3.611393579829897689e-08, 3.594604906829922666e-08, 3.577814210948624470e-08, 3.561021520255315088e-08, 3.544226862818266245e-08, 3.527430266704780210e-08, 3.510631759974534632e-08, 3.493831370687558546e-08, 3.477029126896909509e-08, 3.460225056656618506e-08, 3.443419188015163159e-08, 3.426611549016020289e-08, 3.409802167702114821e-08, 3.392991072109124917e-08, 3.376178290273540037e-08, 3.359363850225978646e-08, 3.342547779991173649e-08, 3.325730107595960980e-08, 3.308910861055371048e-08, 3.292090068388605238e-08, 3.275267757605151190e-08, 3.258443956712765417e-08, 3.241618693717413754e-08, 3.224791996616683026e-08, 3.207963893407710734e-08, 3.191134412080671502e-08, 3.174303580622973203e-08, 3.157471427020092738e-08, 3.140637979248798450e-08, 3.123803265285297523e-08, 3.106967313097742389e-08, 3.090130150654343710e-08, 3.073291805916691398e-08, 3.056452306839673875e-08, 3.039611681379563274e-08, 3.022769957479968583e-08, 3.005927163087263561e-08, 2.989083326140218519e-08, 2.972238474570708395e-08, 2.955392636310996567e-08, 2.938545839283458960e-08, 2.921698111407799374e-08, 2.904849480601813138e-08, 2.887999974770997722e-08, 2.871149621824002154e-08, 2.854298449658552705e-08, 2.837446486171013780e-08, 2.820593759248976041e-08, 2.803740296779290653e-08, 2.786886126641407499e-08, 2.770031276708070673e-08, 2.753175774849686328e-08, 2.736319648927657250e-08, 2.719462926802429344e-08, 2.702605636326824887e-08, 2.685747805346005471e-08, 2.668889461704780972e-08, 2.652030633237240341e-08, 2.635171347774102597e-08, 2.618311633143395113e-08, 2.601451517160074485e-08, 2.584591027641490507e-08, 2.567730192393337668e-08, 2.550869039217673179e-08, 2.534007595912927560e-08, 2.517145890267176020e-08, 2.500283950066258730e-08, 2.483421803087039625e-08, 2.466559477103303213e-08, 2.449696999879076249e-08, 2.432834399176664620e-08, 2.415971702749985941e-08, 2.399108938344524887e-08, 2.382246133704686495e-08, 2.365383316563365750e-08, 2.348520514650098291e-08, 2.331657755687978997e-08, 2.314795067390759580e-08, 2.297932477470831532e-08, 2.281070013628910857e-08, 2.264207703561345386e-08, 2.247345574960080693e-08, 2.230483655505969198e-08, 2.213621972876841134e-08, 2.196760554740846405e-08, 2.179899428760787359e-08, 2.163038622594862586e-08, 2.146178163889935985e-08, 2.129318080289659349e-08, 2.112458399426990679e-08, 2.095599148932335959e-08, 2.078740356426791750e-08, 2.061882049522908516e-08, 2.045024255829019092e-08, 2.028167002942563996e-08, 2.011310318458943922e-08, 1.994454229961079392e-08, 1.977598765026808732e-08, 1.960743951228793769e-08, 1.943889816127881877e-08, 1.927036387281129625e-08, 1.910183692235146625e-08, 1.893331758530481566e-08, 1.876480613702313085e-08, 1.859630285273746621e-08, 1.842780800763903577e-08, 1.825932187680510119e-08, 1.809084473527953912e-08, 1.792237685800596861e-08, 1.775391851983464646e-08, 1.758546999556667512e-08, 1.741703155988653450e-08, 1.724860348744350630e-08, 1.708018605278437133e-08, 1.691177953035292640e-08, 1.674338419457131603e-08, 1.657500031969830337e-08, 1.640662817998506463e-08, 1.623826804957059711e-08, 1.606992020248873699e-08, 1.590158491274197692e-08, 1.573326245419728428e-08, 1.556495310067445397e-08, 1.539665712587153649e-08, 1.522837480344614309e-08, 1.506010640694824240e-08, 1.489185220982687703e-08, 1.472361248547463954e-08, 1.455538750716007844e-08, 1.438717754810932443e-08, 1.421898288143845515e-08, 1.405080378015318909e-08, 1.388264051723029179e-08, 1.371449336547578050e-08, 1.354636259768074350e-08, 1.337824848651662735e-08, 1.321015130454256235e-08, 1.304207132427898826e-08, 1.287400881810314334e-08, 1.270596405832320122e-08, 1.253793731718510674e-08, 1.236992886676807159e-08, 1.220193897914031259e-08, 1.203396792621745158e-08, 1.186601597985854779e-08, 1.169808341179142990e-08, 1.153017049369402113e-08, 1.136227749712708118e-08, 1.119440469353369670e-08, 1.102655235432056665e-08, 1.085872075071648993e-08, 1.069091015392800103e-08, 1.052312083503478630e-08, 1.035535306499673980e-08, 1.018760711472787517e-08, 1.001988325499189907e-08, 9.852181756476020517e-09, 9.684502889797897501e-09, 9.516846925401483404e-09, 9.349214133712225922e-09, 9.181604784995768072e-09, 9.014019149439129358e-09, 8.846457497150310369e-09, 8.678920098091028117e-09, 8.511407222157981559e-09, 8.343919139115519102e-09, 8.176456118639996987e-09, 8.009018430326476146e-09, 7.841606343621675901e-09, 7.674220127905176634e-09, 7.506860052414740264e-09, 7.339526386334992283e-09, 7.172219398693051414e-09, 7.004939358432405937e-09, 6.837686534419820649e-09, 6.670461195341016983e-09, 6.503263609856182131e-09, 6.336094046458522816e-09, 6.168952773555420813e-09, 6.001840059468031758e-09, 5.834756172364194191e-09, 5.667701380339437004e-09, 5.500675951349916599e-09, 5.333680153256519678e-09, 5.166714253831778476e-09, 4.999778520692773172e-09, 4.832873221382263423e-09, 4.665998623294063436e-09, 4.499154993754382774e-09, 4.332342599954409480e-09, 4.165561708957491663e-09, 3.998812587743168317e-09, 3.832095503139990679e-09, 3.665410721914111616e-09, 3.498758510665046392e-09, 3.332139135899458834e-09, 3.165552864030655512e-09, 2.998999961311518758e-09, 2.832480693915608009e-09, 2.665995327870032439e-09, 2.499544129099531420e-09, 2.333127363433460886e-09, 2.166745296538658942e-09, 2.000398194000600139e-09, 1.834086321248829278e-09, 1.667809943638086532e-09, 1.501569326381204068e-09, 1.335364734556111648e-09, 1.169196433149860009e-09, 1.003064686991555128e-09, 8.369697608334285370e-10, 6.709119192837430505e-10, 5.048914268064171223e-10, 3.389085477946420582e-10, 1.729635464668244789e-10, 7.056686947612061798e-12, -1.588117667621274235e-10, -3.246415508153121276e-10, -4.904324014376603473e-10, -6.561840550316836775e-10, -8.218962480883151585e-10, -9.875687172612821452e-10, -1.153201199286163065e-09, -1.318793431047356374e-09, -1.484345149571078162e-09, -1.649856091981421700e-09, -1.815325995567274696e-09, -1.980754597701443364e-09, -2.146141635907550865e-09, -2.311486847860455238e-09, -2.476789971312770121e-09, -2.642050744198660821e-09, -2.807268904553063921e-09, -2.972444190541574561e-09, -3.137576340490392441e-09, -3.302665092805529021e-09, -3.467710186076547969e-09, -3.632711359003169421e-09, -3.797668350395661651e-09, -3.962580899241626812e-09, -4.127448744625329724e-09, -4.292271625794390973e-09, -4.457049282115972807e-09, -4.621781453069819232e-09, -4.786467878315013635e-09, -4.951108297609250906e-09, -5.115702450882954486e-09, -5.280250078143983500e-09, -5.444750919617842355e-09, -5.609204715593452914e-09, -5.773611206526720817e-09, -5.937970133033535880e-09, -6.102281235816503742e-09, -6.266544255768410449e-09, -6.430758933899134421e-09, -6.594925011335864838e-09, -6.759042229389837734e-09, -6.923110329475742144e-09, -7.087129053178370177e-09, -7.251098142208869090e-09, -7.415017338397749956e-09, -7.578886383761451716e-09, -7.742705020421999609e-09, -7.906472990680720196e-09, -8.070190036937884075e-09, -8.233855901759216164e-09, -8.397470327868942422e-09, -8.561033058106146145e-09, -8.724543835491165751e-09, -8.888002403138016211e-09, -9.051408504357404465e-09, -9.214761882583803522e-09, -9.378062281368547163e-09, -9.541309444482792414e-09, -9.704503115764006409e-09, -9.867643039255680503e-09, -1.003072895912694982e-08, -1.019376061967320041e-08, -1.035673776538215602e-08, -1.051966014085388640e-08, -1.068252749087430727e-08, -1.084533956033504972e-08, -1.100809609429979672e-08, -1.117079683799728026e-08, -1.133344153677790066e-08, -1.149602993617962312e-08, -1.165856178184836153e-08, -1.182103681960380391e-08, -1.198345479543994508e-08, -1.214581545544514958e-08, -1.230811854594118256e-08, -1.247036381333042948e-08, -1.263255100419825313e-08, -1.279467986530630832e-08, -1.295675014351979470e-08, -1.311876158591000396e-08, -1.328071393966724583e-08, -1.344260695216685051e-08, -1.360444037092565896e-08, -1.376621394359537232e-08, -1.392792741802838894e-08, -1.408958054219784575e-08, -1.425117306427117449e-08, -1.441270473253020927e-08, -1.457417529543710793e-08, -1.473558450163462003e-08, -1.489693209986679333e-08, -1.505821783911708812e-08, -1.521944146845634972e-08, -1.538060273714480808e-08, -1.554170139462538594e-08, -1.570273719045116663e-08, -1.586370987438764354e-08, -1.602461919634037821e-08, -1.618546490634833324e-08, -1.634624675468548980e-08, -1.650696449170910630e-08, -1.666761786799791707e-08, -1.682820663425807870e-08, -1.698873054139623646e-08, -1.714918934043995623e-08, -1.730958278260361103e-08, -1.746991061928116472e-08, -1.763017260200338029e-08, -1.779036848250312082e-08, -1.795049801263625111e-08, -1.811056094444715377e-08, -1.827055703016893099e-08, -1.843048602215173104e-08, -1.859034767296411423e-08, -1.875014173532111474e-08, -1.890986796207752385e-08, -1.906952610632946115e-08, -1.922911592126282510e-08, -1.938863716029101199e-08, -1.954808957697585069e-08, -1.970747292502822804e-08, -1.986678695837280081e-08, -2.002603143106951613e-08, -2.018520609737870727e-08, -2.034431071171820932e-08, -2.050334502865662593e-08, -2.066230880297822326e-08, -2.082120178960460594e-08, -2.098002374366661229e-08, -2.113877442041836690e-08, -2.129745357533859047e-08, -2.145606096405173638e-08, -2.161459634235706111e-08, -2.177305946625771786e-08, -2.193145009188246887e-08, -2.208976797558589336e-08, -2.224801287387755113e-08, -2.240618454342210826e-08, -2.256428274110428071e-08, -2.272230722395033492e-08, -2.288025774919302808e-08, -2.303813407422866420e-08, -2.319593595661089361e-08, -2.335366315411491207e-08, -2.351131542465938483e-08, -2.366889252637829892e-08, -2.382639421754261912e-08, -2.398382025662505960e-08, -2.414117040229319510e-08, -2.429844441336721187e-08, -2.445564204888402082e-08, -2.461276306801974733e-08, -2.476980723015362601e-08, -2.492677429486901321e-08, -2.508366402188190530e-08, -2.524047617114150406e-08, -2.539721050274462330e-08, -2.555386677700066554e-08, -2.571044475438873438e-08, -2.586694419555135784e-08, -2.602336486135845588e-08, -2.617970651282973765e-08, -2.633596891120594155e-08, -2.649215181787115310e-08, -2.664825499441742755e-08, -2.680427820263711368e-08, -2.696022120448147488e-08, -2.711608376212462364e-08, -2.727186563788565734e-08, -2.742756659429320153e-08, -2.758318639408525769e-08, -2.773872480013951168e-08, -2.789418157557190049e-08, -2.804955648365938344e-08, -2.820484928786921438e-08, -2.836005975188665888e-08, -2.851518763953810945e-08, -2.867023271489036709e-08, -2.882519474216583867e-08, -2.898007348581432965e-08, -2.913486871043457439e-08, -2.928958018083897463e-08, -2.944420766204650886e-08, -2.959875091924102264e-08, -2.975320971783472619e-08, -2.990758382339098875e-08, -3.006187300168874283e-08, -3.021607701872196140e-08, -3.037019564062298823e-08, -3.052422863379653450e-08, -3.067817576477236123e-08, -3.083203680030401821e-08, -3.098581150736192875e-08, -3.113949965306389327e-08, -3.129310100477359658e-08, -3.144661533003047623e-08, -3.160004239655044378e-08, -3.175338197228887627e-08, -3.190663382536464132e-08, -3.205979772412251292e-08, -3.221287343709203731e-08, -3.236586073298131267e-08, -3.251875938073921288e-08, -3.267156914947960460e-08, -3.282428980855126053e-08, -3.297692112744759750e-08, -3.312946287593935619e-08, -3.328191482392860712e-08, -3.343427674154701305e-08, -3.358654839914853657e-08, -3.373872956724053926e-08, -3.389082001658130958e-08, -3.404281951811143338e-08, -3.419472784294625661e-08, -3.434654476247447201e-08, -3.449827004821149638e-08, -3.464990347193299081e-08, -3.480144480559786663e-08, -3.495289382134874209e-08, -3.510425029157536391e-08, -3.525551398883761331e-08, -3.540668468593623329e-08, -3.555776215583590079e-08, -3.570874617172918433e-08, -3.585963650702842439e-08, -3.601043293532575742e-08, -3.616113523045495589e-08, -3.631174316640927268e-08, -3.646225651743810210e-08, -3.661267505797870775e-08, -3.676299856264908222e-08, -3.691322680634547509e-08, -3.706335956409747743e-08, -3.721339661119913326e-08, -3.736333772313428155e-08, -3.751318267557584151e-08, -3.766293124444908861e-08, -3.781258320585514370e-08, -3.796213833613483793e-08, -3.811159641182598397e-08, -3.826095720965784373e-08, -3.841022050661323982e-08, -3.855938607985304378e-08, -3.870845370678530859e-08, -3.885742316498981652e-08, -3.900629423228113020e-08, -3.915506668670737495e-08, -3.930374030647640137e-08, -3.945231487008540784e-08, -3.960079015617838751e-08, -3.974916594364133350e-08, -3.989744201159638244e-08, -4.004561813933322469e-08, -4.019369410640593074e-08, -4.034166969255010084e-08, -4.048954467774570424e-08, -4.063731884217565400e-08, -4.078499196622006966e-08, -4.093256383051709815e-08, -4.108003421588895726e-08, -4.122740290341021443e-08, -4.137466967433291697e-08, -4.152183431014840560e-08, -4.166889659258073673e-08, -4.181585630354611754e-08, -4.196271322521464669e-08, -4.210946713993561665e-08, -4.225611783029897649e-08, -4.240266507913610616e-08, -4.254910866945151120e-08, -4.269544838451846465e-08, -4.284168400781167460e-08, -4.298781532300058069e-08, -4.313384211404449310e-08, -4.327976416505069470e-08, -4.342558126040399078e-08, -4.357129318469120398e-08, -4.371689972270303378e-08, -4.386240065949395104e-08, -4.400779578030885682e-08, -4.415308487064429375e-08, -4.429826771619386538e-08, -4.444334410291041364e-08, -4.458831381693135423e-08, -4.473317664464007329e-08, -4.487793237266543768e-08, -4.502258078781618968e-08, -4.516712167717385584e-08, -4.531155482802031913e-08, -4.545588002786424894e-08, -4.560009706446882824e-08, -4.574420572577782342e-08, -4.588820580000955207e-08, -4.603209707559097318e-08, -4.617587934115717764e-08, -4.631955238561244075e-08, -4.646311599805637815e-08, -4.660656996784560059e-08, -4.674991408455208358e-08, -4.689314813795863438e-08, -4.703627191811791308e-08, -4.717928521528007077e-08, -4.732218781995920856e-08, -4.746497952284797287e-08, -4.760766011494268463e-08, -4.775022938740633177e-08, -4.789268713165951933e-08, -4.803503313937530788e-08, -4.817726720241348904e-08, -4.831938911291241580e-08, -4.846139866322446914e-08, -4.860329564591544927e-08, -4.874507985382482744e-08, -4.888675107999306658e-08, -4.902830911772115840e-08, -4.916975376053199739e-08, -4.931108480216347885e-08, -4.945230203662826760e-08, -4.959340525814162817e-08, -4.973439426118785068e-08, -4.987526884044769059e-08, -5.001602879085801170e-08, -5.015667390760534076e-08, -5.029720398608724811e-08, -5.043761882197113036e-08, -5.057791821112276854e-08, -5.071810194966507110e-08, -5.085816983397939741e-08, -5.099812166063255414e-08, -5.113795722650200389e-08, -5.127767632863235930e-08, -5.141727876435981750e-08, -5.155676433124030126e-08, -5.169613282705000161e-08, -5.183538404984466353e-08, -5.197451779788737643e-08, -5.211353386971460958e-08, -5.225243206406448567e-08, -5.239121217993603336e-08, -5.252987401658268900e-08, -5.266841737347365074e-08, -5.280684205035223774e-08, -5.294514784716590413e-08, -5.308333456412356587e-08, -5.322140200169627580e-08, -5.335934996054693971e-08, -5.349717824165258025e-08, -5.363488664616916242e-08, -5.377247497552266942e-08, -5.390994303140290877e-08, -5.404729061569850910e-08, -5.418451753058816151e-08, -5.432162357846331457e-08, -5.445860856198658651e-08, -5.459547228405298037e-08, -5.473221454778410696e-08, -5.486883515658701399e-08, -5.500533391408183748e-08, -5.514171062416796304e-08, -5.527796509095345737e-08, -5.541409711881222318e-08, -5.555010651238511093e-08, -5.568599307650953564e-08, -5.582175661634058276e-08, -5.595739693721914239e-08, -5.609291384475853159e-08, -5.622830714484078198e-08, -5.636357664355229178e-08, -5.649872214727296931e-08, -5.663374346261347322e-08, -5.676864039640860826e-08, -5.690341275580709091e-08, -5.703806034813836004e-08, -5.717258298103218069e-08, -5.730698046235101369e-08, -5.744125260018940031e-08, -5.757539920293072002e-08, -5.770942007917892501e-08, -5.784331503781433840e-08, -5.797708388794539326e-08, -5.811072643896343831e-08, -5.824424250047516050e-08, -5.837763188235878706e-08, -5.851089439476468760e-08, -5.864402984805276653e-08, -5.877703805288011771e-08, -5.890991882013977999e-08, -5.904267196095331906e-08, -5.917529728675950784e-08, -5.930779460918299003e-08, -5.944016374015327504e-08, -5.957240449183634665e-08, -5.970451667663494098e-08, -5.983650010724523150e-08, -5.996835459658800099e-08, -6.010007995786496926e-08, -6.023167600452172218e-08, -6.036314255024252362e-08, -6.049447940900518731e-08, -6.062568639501421419e-08, -6.075676332276191109e-08, -6.088771000696229571e-08, -6.101852626260473767e-08, -6.114921190494965709e-08, -6.127976674949110962e-08, -6.141019061201254502e-08, -6.154048330851360495e-08, -6.167064465529556745e-08, -6.180067446890157820e-08, -6.193057256611528726e-08, -6.206033876401722975e-08, -6.218997287991734114e-08, -6.231947473141084819e-08, -6.244884413634092008e-08, -6.257808091279350679e-08, -6.270718487915195954e-08, -6.283615585403125333e-08, -6.296499365633759693e-08, -6.309369810520293339e-08, -6.322226902003942805e-08, -6.335070622053361879e-08, -6.347900952661036414e-08, -6.360717875848738426e-08, -6.373521373660993353e-08, -6.386311428170367397e-08, -6.399088021477635602e-08, -6.411851135705703071e-08, -6.424600753008097796e-08, -6.437336855561764258e-08, -6.450059425572460620e-08, -6.462768445271295148e-08, -6.475463896913957273e-08, -6.488145762786330502e-08, -6.500814025197786301e-08, -6.513468666487260232e-08, -6.526109669016696714e-08, -6.538737015176413123e-08, -6.551350687384537309e-08, -6.563950668083562552e-08, -6.576536939745515790e-08, -6.589109484865588991e-08, -6.601668285967475453e-08, -6.614213325603417460e-08, -6.626744586348255868e-08, -6.639262050807684706e-08, -6.651765701612022844e-08, -6.664255521418260097e-08, -6.676731492912649947e-08, -6.689193598804213858e-08, -6.701641821832989256e-08, -6.714076144764149272e-08, -6.726496550388054353e-08, -6.738903021525556811e-08, -6.751295541021628221e-08, -6.763674091750502497e-08, -6.776038656611120448e-08, -6.788389218532450201e-08, -6.800725760466990190e-08, -6.813048265396086943e-08, -6.825356716329939045e-08, -6.837651096301342332e-08, -6.849931388376537208e-08, -6.862197575643159597e-08, -6.874449641218373789e-08, -6.886687568248362891e-08, -6.898911339902460481e-08, -6.911120939381292708e-08, -6.923316349911146852e-08, -6.935497554743807206e-08, -6.947664537161890062e-08, -6.959817280472465820e-08, -6.971955768012289413e-08, -6.984079983144404234e-08, -6.996189909257508190e-08, -7.008285529771162947e-08, -7.020366828129623833e-08, -7.032433787807431570e-08, -7.044486392303182618e-08, -7.056524625144731807e-08, -7.068548469888633827e-08, -7.080557910116732593e-08, -7.092552929441259329e-08, -7.104533511498175415e-08, -7.116499639954954506e-08, -7.128451298505063578e-08, -7.140388470867355449e-08, -7.152311140794046774e-08, -7.164219292058830459e-08, -7.176112908467675340e-08, -7.187991973852593866e-08, -7.199856472071700339e-08, -7.211706387014269281e-08, -7.223541702594570631e-08, -7.235362402757538242e-08, -7.247168471472542869e-08, -7.258959892738557743e-08, -7.270736650583556387e-08, -7.282498729061233009e-08, -7.294246112255945732e-08, -7.305978784276660311e-08, -7.317696729262034976e-08, -7.329399931380355579e-08, -7.341088374823493873e-08, -7.352762043817434536e-08, -7.364420922610165253e-08, -7.376064995482133598e-08, -7.387694246740237072e-08, -7.399308660717815164e-08, -7.410908221779657430e-08, -7.422492914315931328e-08, -7.434062722747210153e-08, -7.445617631521104754e-08, -7.457157625111866490e-08, -7.468682688025182233e-08, -7.480192804792286159e-08, -7.491687959975407235e-08, -7.503168138161783076e-08, -7.514633323968575380e-08, -7.526083502042879199e-08, -7.537518657055865169e-08, -7.548938773713000824e-08, -7.560343836742663288e-08, -7.571733830903778460e-08, -7.583108740985435875e-08, -7.594468551801234763e-08, -7.605813248197076747e-08, -7.617142815045689249e-08, -7.628457237246207266e-08, -7.639756499731561087e-08, -7.651040587457316633e-08, -7.662309485411919261e-08, -7.673563178609655450e-08, -7.684801652096096314e-08, -7.696024890942153807e-08, -7.707232880249050430e-08, -7.718425605147621750e-08, -7.729603050795281638e-08, -7.740765202380733894e-08, -7.751912045118216387e-08, -7.763043564252239153e-08, -7.774159745057614831e-08, -7.785260572834259998e-08, -7.796346032914495535e-08, -7.807416110657841347e-08, -7.818470791450508139e-08, -7.829510060712803664e-08, -7.840533903888018060e-08, -7.851542306452563101e-08, -7.862535253910077377e-08, -7.873512731791616875e-08, -7.884474725660127047e-08, -7.895421221104990042e-08, -7.906352203746525882e-08, -7.917267659231920096e-08, -7.928167573240006803e-08, -7.939051931475334190e-08, -7.949920719673217591e-08, -7.960773923599405973e-08, -7.971611529045035463e-08, -7.982433521834002515e-08, -7.993239887817161728e-08, -8.004030612874447402e-08, -8.014805682916999060e-08, -8.025565083881371183e-08, -8.036308801737006953e-08, -8.047036822480815921e-08, -8.057749132137417524e-08, -8.068445716763652864e-08, -8.079126562443015462e-08, -8.089791655290260975e-08, -8.100440981448345959e-08, -8.111074527087992450e-08, -8.121692278412175907e-08, -8.132294221650636708e-08, -8.142880343064986169e-08, -8.153450628943024807e-08, -8.164005065603480427e-08, -8.174543639395382116e-08, -8.185066336695131360e-08, -8.195573143911068080e-08, -8.206064047477287295e-08, -8.216539033860878601e-08, -8.226998089556873095e-08, -8.237441201088144113e-08, -8.247868355010146640e-08, -8.258279537905170725e-08, -8.268674736387115305e-08, -8.279053937098342269e-08, -8.289417126709162949e-08, -8.299764291922470326e-08, -8.310095419468202880e-08, -8.320410496108355316e-08, -8.330709508631456973e-08, -8.340992443857238438e-08, -8.351259288635935399e-08, -8.361510029845436522e-08, -8.371744654395717139e-08, -8.381963149223508235e-08, -8.392165501296607053e-08, -8.402351697614009442e-08, -8.412521725200920301e-08, -8.422675571115795869e-08, -8.432813222444761244e-08, -8.442934666303675026e-08, -8.453039889840154261e-08, -8.463128880228145480e-08, -8.473201624674724792e-08, -8.483258110414416146e-08, -8.493298324713988973e-08, -8.503322254867039828e-08, -8.513329888198520042e-08, -8.523321212064183830e-08, -8.533296213847711024e-08, -8.543254880965078556e-08, -8.553197200859225477e-08, -8.563123161004556789e-08, -8.573032748906710509e-08, -8.582925952097487386e-08, -8.592802758143869150e-08, -8.602663154638079117e-08, -8.612507129204133451e-08, -8.622334669497551328e-08, -8.632145763200411698e-08, -8.641940398028320136e-08, -8.651718561725333257e-08, -8.661480242064153274e-08, -8.671225426850424039e-08, -8.680954103917430473e-08, -8.690666261130511076e-08, -8.700361886383087459e-08, -8.710040967601207886e-08, -8.719703492738109052e-08, -8.729349449778542576e-08, -8.738978826738944398e-08, -8.748591611662008484e-08, -8.758187792625858597e-08, -8.767767357734082429e-08, -8.777330295122277577e-08, -8.786876592957847723e-08, -8.796406239434927060e-08, -8.805919222781291542e-08, -8.815415531253471250e-08, -8.824895153136472450e-08, -8.834358076750172697e-08, -8.843804290439624954e-08, -8.853233782583967318e-08, -8.862646541591180683e-08, -8.872042555898160205e-08, -8.881421813974979585e-08, -8.890784304319701671e-08, -8.900130015463041106e-08, -8.909458935963337720e-08, -8.918771054410708311e-08, -8.928066359426620486e-08, -8.937344839660992894e-08, -8.946606483796521712e-08, -8.955851280543140521e-08, -8.965079218644382314e-08, -8.974290286872883610e-08, -8.983484474029874906e-08, -8.992661768951766360e-08, -9.001822160500257357e-08, -9.010965637571281970e-08, -9.020092189089902945e-08, -9.029201804010331545e-08, -9.038294471320018460e-08, -9.047370180034694695e-08, -9.056428919202533938e-08, -9.065470677901256768e-08, -9.074495445237846106e-08, -9.083503210352582534e-08, -9.092493962414078560e-08, -9.101467690623820836e-08, -9.110424384211181927e-08, -9.119364032437528420e-08, -9.128286624596255335e-08, -9.137192150007793927e-08, -9.146080598028093922e-08, -9.154951958038948818e-08, -9.163806219456345771e-08, -9.172643371725656043e-08, -9.181463404321570144e-08, -9.190266306752289327e-08, -9.199052068554360008e-08, -9.207820679296904962e-08, -9.216572128578891638e-08, -9.225306406028739086e-08, -9.234023501308231515e-08, -9.242723404107723290e-08, -9.251406104150637469e-08, -9.260071591188484196e-08, -9.268719855004856311e-08, -9.277350885415101124e-08, -9.285964672263604618e-08, -9.294561205427764561e-08, -9.303140474813208740e-08, -9.311702470357719108e-08, -9.320247182031283399e-08, -9.328774599831673350e-08, -9.337284713790560546e-08, -9.345777513969236254e-08, -9.354252990458157470e-08, -9.362711133382983347e-08, -9.371151932895526505e-08, -9.379575379182075129e-08, -9.387981462457585499e-08, -9.396370172970151410e-08, -9.404741500996207852e-08, -9.413095436844509415e-08, -9.421431970855550603e-08, -9.429751093399105465e-08, -9.438052794878164977e-08, -9.446337065724067926e-08, -9.454603896400427701e-08, -9.462853277403190526e-08, -9.471085199256319564e-08, -9.479299652517779735e-08, -9.487496627774902852e-08, -9.495676115645998314e-08, -9.503838106782236428e-08, -9.511982591862796496e-08, -9.520109561600962811e-08, -9.528219006739690962e-08, -9.536310918051924153e-08, -9.544385286344138828e-08, -9.552442102451772017e-08, -9.560481357243194451e-08, -9.568503041616903437e-08, -9.576507146501385224e-08, -9.584493662858651355e-08, -9.592462581679872485e-08, -9.600413893989356787e-08, -9.608347590839786713e-08, -9.616263663317724709e-08, -9.624162102539491871e-08, -9.632042899652380261e-08, -9.639906045836612993e-08, -9.647751532300727906e-08, -9.655579350287273857e-08, -9.663389491068857462e-08, -9.671181945947992217e-08, -9.678956706261013380e-08, -9.686713763373278997e-08, -9.694453108683072875e-08, -9.702174733619146859e-08, -9.709878629640244379e-08, -9.717564788238802247e-08, -9.725233200936486529e-08, -9.732883859288312566e-08, -9.740516754878096144e-08, -9.748131879322197641e-08, -9.755729224268971460e-08, -9.763308781396563738e-08, -9.770870542416401070e-08, -9.778414499068403441e-08, -9.785940643126583914e-08, -9.793448966395127131e-08, -9.800939460708386664e-08, -9.808412117934364470e-08, -9.815866929970418813e-08, -9.823303888746854895e-08, -9.830722986224551834e-08, -9.838124214394552387e-08, -9.845507565281674748e-08, -9.852873030940096069e-08, -9.860220603457318954e-08, -9.867550274949900560e-08, -9.874862037567002195e-08, -9.882155883489886392e-08, -9.889431804929690803e-08, -9.896689794130838825e-08, -9.903929843367010903e-08, -9.911151944944320905e-08, -9.918356091201453760e-08, -9.925542274505534854e-08, -9.932710487259262308e-08, -9.939860721892956782e-08, -9.946992970869933517e-08, -9.954107226686142345e-08, -9.961203481866255455e-08, -9.968281728969071201e-08, -9.975341960582969238e-08, -9.982384169329293360e-08, -9.989408347860094955e-08, -9.996414488857792864e-08, -1.000340258503866342e-07, -1.001037262914836707e-07, -1.001732461396604322e-07, -1.002425853230013996e-07, -1.003117437699162745e-07, -1.003807214091413826e-07, -1.004495181696986981e-07, -1.005181339809646519e-07, -1.005865687725970623e-07, -1.006548224745804900e-07, -1.007228950172270729e-07, -1.007907863311391236e-07, -1.008584963472588136e-07, -1.009260249968336168e-07, -1.009933722114111478e-07, -1.010605379228914003e-07, -1.011275220634505537e-07, -1.011943245656078620e-07, -1.012609453621810394e-07, -1.013273843863211870e-07, -1.013936415714734849e-07, -1.014597168514095652e-07, -1.015256101602240311e-07, -1.015913214323134263e-07, -1.016568506024069404e-07, -1.017221976055291922e-07, -1.017873623770308155e-07, -1.018523448525887504e-07, -1.019171449681718985e-07, -1.019817626600884379e-07, -1.020461978649542844e-07, -1.021104505196857857e-07, -1.021745205615499215e-07, -1.022384079280925836e-07, -1.023021125572026591e-07, -1.023656343870751185e-07, -1.024289733562112140e-07, -1.024921294034487612e-07, -1.025551024679244592e-07, -1.026178924891052173e-07, -1.026804994067668873e-07, -1.027429231609920393e-07, -1.028051636922000448e-07, -1.028672209411088547e-07, -1.029290948487698858e-07, -1.029907853565292434e-07, -1.030522924060702575e-07, -1.031136159393808061e-07, -1.031747558987655709e-07, -1.032357122268574193e-07, -1.032964848665844358e-07, -1.033570737612127507e-07, -1.034174788543167480e-07, -1.034777000897764055e-07, -1.035377374118084758e-07, -1.035975907649296406e-07, -1.036572600939864746e-07, -1.037167453441358311e-07, -1.037760464608409643e-07, -1.038351633899013213e-07, -1.038940960774183560e-07, -1.039528444698245402e-07, -1.040114085138502761e-07, -1.040697881565530267e-07, -1.041279833453123525e-07, -1.041859940278125076e-07, -1.042438201520699153e-07, -1.043014616664003457e-07, -1.043589185194438502e-07, -1.044161906601675540e-07, -1.044732780378337865e-07, -1.045301806020431741e-07, -1.045868983026976091e-07, -1.046434310900280825e-07, -1.046997789145773330e-07, -1.047559417271945534e-07, -1.048119194790647055e-07, -1.048677121216743876e-07, -1.049233196068420892e-07, -1.049787418866850510e-07, -1.050339789136467936e-07, -1.050890306404931863e-07, -1.051438970202960363e-07, -1.051985780064579039e-07, -1.052530735526813579e-07, -1.053073836129936056e-07, -1.053615081417486371e-07, -1.054154470935968378e-07, -1.054692004235245739e-07, -1.055227680868257378e-07, -1.055761500391095692e-07, -1.056293462363145923e-07, -1.056823566346750117e-07, -1.057351811907629982e-07, -1.057878198614533516e-07, -1.058402726039517174e-07, -1.058925393757629292e-07, -1.059446201347189075e-07, -1.059965148389731939e-07, -1.060482234469848972e-07, -1.060997459175438263e-07, -1.061510822097400767e-07, -1.062022322829897321e-07, -1.062531960970327078e-07, -1.063039736119051821e-07, -1.063545647879895579e-07, -1.064049695859578174e-07, -1.064551879668098111e-07, -1.065052198918701600e-07, -1.065550653227612969e-07, -1.066047242214418868e-07, -1.066541965501792192e-07, -1.067034822715488640e-07, -1.067525813484597644e-07, -1.068014937441234664e-07, -1.068502194220801912e-07, -1.068987583461803196e-07, -1.069471104805834656e-07, -1.069952757897821007e-07, -1.070432542385721857e-07, -1.070910457920794286e-07, -1.071386504157245431e-07, -1.071860680752749838e-07, -1.072332987367876524e-07, -1.072803423666465508e-07, -1.073271989315600814e-07, -1.073738683985361784e-07, -1.074203507349164014e-07, -1.074666459083510666e-07, -1.075127538867967455e-07, -1.075586746385528197e-07, -1.076044081322061858e-07, -1.076499543366809783e-07, -1.076953132212095460e-07, -1.077404847553344502e-07, -1.077854689089289789e-07, -1.078302656521694726e-07, -1.078748749555619662e-07, -1.079192967899137604e-07, -1.079635311263557752e-07, -1.080075779363394931e-07, -1.080514371916242268e-07, -1.080951088642969056e-07, -1.081385929267429054e-07, -1.081818893516821007e-07, -1.082249981121422362e-07, -1.082679191814575235e-07, -1.083106525333022977e-07, -1.083531981416415189e-07, -1.083955559807743678e-07, -1.084377260253088217e-07, -1.084797082501614158e-07, -1.085215026305798225e-07, -1.085631091421150182e-07, -1.086045277606426443e-07, -1.086457584623508046e-07, -1.086868012237357510e-07, -1.087276560216230856e-07, -1.087683228331430909e-07, -1.088088016357530040e-07, -1.088490924072112089e-07, -1.088891951255994971e-07, -1.089291097693213343e-07, -1.089688363170788315e-07, -1.090083747479130186e-07, -1.090477250411580785e-07, -1.090868871764728722e-07, -1.091258611338383584e-07, -1.091646468935350012e-07, -1.092032444361742827e-07, -1.092416537426708301e-07, -1.092798747942653384e-07, -1.093179075725078552e-07, -1.093557520592564566e-07, -1.093934082366987281e-07, -1.094308760873254134e-07, -1.094681555939533903e-07, -1.095052467397006702e-07, -1.095421495080085928e-07, -1.095788638826360688e-07, -1.096153898476481851e-07, -1.096517273874363083e-07, -1.096878764866926868e-07, -1.097238371304308991e-07, -1.097596093039858270e-07, -1.097951929929925197e-07, -1.098305881834137486e-07, -1.098657948615221272e-07, -1.099008130138948699e-07, -1.099356426274449737e-07, -1.099702836893771323e-07, -1.100047361872263428e-07, -1.100390001088353662e-07, -1.100730754423564747e-07, -1.101069621762663675e-07, -1.101406602993462255e-07, -1.101741698006998699e-07, -1.102074906697361329e-07, -1.102406228961883532e-07, -1.102735664700908707e-07, -1.103063213817987857e-07, -1.103388876219862788e-07, -1.103712651816271817e-07, -1.104034540520227438e-07, -1.104354542247799539e-07, -1.104672656918191766e-07, -1.104988884453820664e-07, -1.105303224780095718e-07, -1.105615677825703769e-07, -1.105926243522393549e-07, -1.106234921804999239e-07, -1.106541712611589893e-07, -1.106846615883277664e-07, -1.107149631564377678e-07, -1.107450759602285617e-07, -1.107749999947489095e-07, -1.108047352553702396e-07, -1.108342817377672574e-07, -1.108636394379371236e-07, -1.108928083521761071e-07, -1.109217884771064259e-07, -1.109505798096545018e-07, -1.109791823470602382e-07, -1.110075960868822480e-07, -1.110358210269790069e-07, -1.110638571655333644e-07, -1.110917045010354977e-07, -1.111193630322816140e-07, -1.111468327583909844e-07, -1.111741136787849530e-07, -1.112012057932055984e-07, -1.112281091017013072e-07, -1.112548236046275951e-07, -1.112813493026618502e-07, -1.113076861967846058e-07, -1.113338342882960045e-07, -1.113597935787970312e-07, -1.113855640702065200e-07, -1.114111457647558336e-07, -1.114365386649822194e-07, -1.114617427737416873e-07, -1.114867580941907320e-07, -1.115115846298027578e-07, -1.115362223843662517e-07, -1.115606713619687302e-07, -1.115849315670209188e-07, -1.116090030042349411e-07, -1.116328856786397906e-07, -1.116565795955721983e-07, -1.116800847606742244e-07, -1.117034011799070086e-07, -1.117265288595348759e-07, -1.117494678061404236e-07, -1.117722180266054768e-07, -1.117947795281272746e-07, -1.118171523182158888e-07, -1.118393364046848808e-07, -1.118613317956651714e-07, -1.118831384995873323e-07, -1.119047565251979980e-07, -1.119261858815552725e-07, -1.119474265780162493e-07, -1.119684786242624887e-07, -1.119893420302710196e-07, -1.120100168063326306e-07, -1.120305029630521080e-07, -1.120508005113321291e-07, -1.120709094623961054e-07, -1.120908298277671525e-07, -1.121105616192843690e-07, -1.121301048490874180e-07, -1.121494595296279748e-07, -1.121686256736694232e-07, -1.121876032942766639e-07, -1.122063924048314015e-07, -1.122249930190138665e-07, -1.122434051508160903e-07, -1.122616288145431095e-07, -1.122796640247956411e-07, -1.122975107964975323e-07, -1.123151691448667756e-07, -1.123326390854334022e-07, -1.123499206340406210e-07, -1.123670138068274668e-07, -1.123839186202506118e-07, -1.124006350910691853e-07, -1.124171632363444425e-07, -1.124335030734572348e-07, -1.124496546200808385e-07, -1.124656178942062467e-07, -1.124813929141263533e-07, -1.124969796984366947e-07, -1.125123782660470698e-07, -1.125275886361668094e-07, -1.125426108283181964e-07, -1.125574448623185461e-07, -1.125720907583061858e-07, -1.125865485367123048e-07, -1.126008182182776163e-07, -1.126148998240539464e-07, -1.126287933753885504e-07, -1.126424988939436472e-07, -1.126560164016820073e-07, -1.126693459208677724e-07, -1.126824874740821130e-07, -1.126954410841971686e-07, -1.127082067744000824e-07, -1.127207845681787868e-07, -1.127331744893229698e-07, -1.127453765619330215e-07, -1.127573908104078584e-07, -1.127692172594567683e-07, -1.127808559340893121e-07, -1.127923068596165416e-07, -1.128035700616596549e-07, -1.128146455661384956e-07, -1.128255333992822065e-07, -1.128362335876162728e-07, -1.128467461579737057e-07, -1.128570711374942216e-07, -1.128672085536120134e-07, -1.128771584340752849e-07, -1.128869208069250087e-07, -1.128964957005120924e-07, -1.129058831434884180e-07, -1.129150831648039437e-07, -1.129240957937191978e-07, -1.129329210597907198e-07, -1.129415589928817020e-07, -1.129500096231551994e-07, -1.129582729810741960e-07, -1.129663490974086195e-07, -1.129742380032255340e-07, -1.129819397298993973e-07, -1.129894543090998315e-07, -1.129967817728003055e-07, -1.130039221532784392e-07, -1.130108754831083667e-07, -1.130176417951706895e-07, -1.130242211226410810e-07, -1.130306134989984785e-07, -1.130368189580266060e-07, -1.130428375338021150e-07, -1.130486692607084552e-07, -1.130543141734257494e-07, -1.130597723069366967e-07, -1.130650436965234618e-07, -1.130701283777641813e-07, -1.130750263865442532e-07, -1.130797377590423074e-07, -1.130842625317414162e-07, -1.130886007414192340e-07, -1.130927524251549324e-07, -1.130967176203291211e-07, -1.131004963646168461e-07, -1.131040886959972912e-07, -1.131074946527433226e-07, -1.131107142734290325e-07, -1.131137475969280979e-07, -1.131165946624088444e-07, -1.131192555093420280e-07, -1.131217301774936749e-07, -1.131240187069276231e-07, -1.131261211380093070e-07, -1.131280375113961361e-07, -1.131297678680476855e-07, -1.131313122492194891e-07, -1.131326706964617024e-07, -1.131338432516261573e-07, -1.131348299568574545e-07, -1.131356308546016458e-07, -1.131362459875965065e-07, -1.131366753988813424e-07, -1.131369191317866401e-07, -1.131369772299423651e-07, -1.131368497372753683e-07, -1.131365366980051369e-07, -1.131360381566503066e-07, -1.131353541580238040e-07, -1.131344847472338921e-07, -1.131334299696859178e-07, -1.131321898710769908e-07, -1.131307644974032369e-07, -1.131291538949539215e-07, -1.131273581103114361e-07, -1.131253771903569368e-07, -1.131232111822628797e-07, -1.131208601334976394e-07, -1.131183240918236438e-07, -1.131156031052954277e-07, -1.131126972222644508e-07, -1.131096064913744653e-07, -1.131063309615629982e-07, -1.131028706820606897e-07, -1.130992257023934636e-07, -1.130953960723776701e-07, -1.130913818421241356e-07, -1.130871830620371571e-07, -1.130827997828120669e-07, -1.130782320554377998e-07, -1.130734799311973040e-07, -1.130685434616621803e-07, -1.130634226986992738e-07, -1.130581176944662131e-07, -1.130526285014122709e-07, -1.130469551722793169e-07, -1.130410977600985089e-07, -1.130350563181957591e-07, -1.130288309001853148e-07, -1.130224215599740866e-07, -1.130158283517586307e-07, -1.130090513300265250e-07, -1.130020905495569256e-07, -1.129949460654184883e-07, -1.129876179329698323e-07, -1.129801062078610620e-07, -1.129724109460302066e-07, -1.129645322037070058e-07, -1.129564700374090050e-07, -1.129482245039450100e-07, -1.129397956604114339e-07, -1.129311835641942426e-07, -1.129223882729699875e-07, -1.129134098447012257e-07, -1.129042483376411659e-07, -1.128949038103307300e-07, -1.128853763215999032e-07, -1.128756659305652191e-07, -1.128657726966323938e-07, -1.128556966794941951e-07, -1.128454379391325198e-07, -1.128349965358152047e-07, -1.128243725300974162e-07, -1.128135659828221793e-07, -1.128025769551195177e-07, -1.127914055084050906e-07, -1.127800517043822173e-07, -1.127685156050408584e-07, -1.127567972726565969e-07, -1.127448967697911936e-07, -1.127328141592922961e-07, -1.127205495042935978e-07, -1.127081028682148377e-07, -1.126954743147592331e-07, -1.126826639079182833e-07, -1.126696717119659074e-07, -1.126564977914620696e-07, -1.126431422112516421e-07, -1.126296050364630543e-07, -1.126158863325102917e-07, -1.126019861650910428e-07, -1.125879046001859979e-07, -1.125736417040621841e-07, -1.125591975432677771e-07, -1.125445721846356881e-07, -1.125297656952822537e-07, -1.125147781426063751e-07, -1.124996095942899949e-07, -1.124842601182976340e-07, -1.124687297828775162e-07, -1.124530186565595436e-07, -1.124371268081553361e-07, -1.124210543067596873e-07, -1.124048012217480763e-07, -1.123883676227783488e-07, -1.123717535797904386e-07, -1.123549591630034301e-07, -1.123379844429211825e-07, -1.123208294903252896e-07, -1.123034943762794994e-07, -1.122859791721275706e-07, -1.122682839494945564e-07, -1.122504087802850175e-07, -1.122323537366828238e-07, -1.122141188911549260e-07, -1.121957043164439181e-07, -1.121771100855740193e-07, -1.121583362718491947e-07, -1.121393829488498728e-07, -1.121202501904390869e-07, -1.121009380707553546e-07, -1.120814466642178522e-07, -1.120617760455241523e-07, -1.120419262896480527e-07, -1.120218974718431633e-07, -1.120016896676397693e-07, -1.119813029528464990e-07, -1.119607374035495294e-07, -1.119399930961107734e-07, -1.119190701071717307e-07, -1.118979685136477178e-07, -1.118766883927335192e-07, -1.118552298218990196e-07, -1.118335928788894955e-07, -1.118117776417280103e-07, -1.117897841887111530e-07, -1.117676125984152718e-07, -1.117452629496879637e-07, -1.117227353216536071e-07, -1.117000297937129911e-07, -1.116771464455396495e-07, -1.116540853570835529e-07, -1.116308466085670860e-07, -1.116074302804890572e-07, -1.115838364536223961e-07, -1.115600652090119031e-07, -1.115361166279783000e-07, -1.115119907921129751e-07, -1.114876877832840316e-07, -1.114632076836312060e-07, -1.114385505755653645e-07, -1.114137165417736515e-07, -1.113887056652119329e-07, -1.113635180291112939e-07, -1.113381537169740954e-07, -1.113126128125727826e-07, -1.112868953999551525e-07, -1.112610015634359501e-07, -1.112349313876058411e-07, -1.112086849573227435e-07, -1.111822623577170419e-07, -1.111556636741913361e-07, -1.111288889924154384e-07, -1.111019383983322365e-07, -1.110748119781519630e-07, -1.110475098183572244e-07, -1.110200320057002880e-07, -1.109923786272003559e-07, -1.109645497701488584e-07, -1.109365455221020824e-07, -1.109083659708899993e-07, -1.108800112046091839e-07, -1.108514813116217030e-07, -1.108227763805648429e-07, -1.107938965003344997e-07, -1.107648417601025036e-07, -1.107356122493050519e-07, -1.107062080576430527e-07, -1.106766292750901589e-07, -1.106468759918816375e-07, -1.106169482985218735e-07, -1.105868462857839336e-07, -1.105565700447021411e-07, -1.105261196665814996e-07, -1.104954952429889571e-07, -1.104646968657605670e-07, -1.104337246269938379e-07, -1.104025786190561509e-07, -1.103712589345779306e-07, -1.103397656664514276e-07, -1.103080989078400353e-07, -1.102762587521626603e-07, -1.102442452931105300e-07, -1.102120586246350963e-07, -1.101796988409487635e-07, -1.101471660365349334e-07, -1.101144603061327985e-07, -1.100815817447471227e-07, -1.100485304476493661e-07, -1.100153065103650325e-07, -1.099819100286914572e-07, -1.099483410986806676e-07, -1.099145998166490447e-07, -1.098806862791793485e-07, -1.098466005831084352e-07, -1.098123428255391958e-07, -1.097779131038312781e-07, -1.097433115156109070e-07, -1.097085381587617526e-07, -1.096735931314259754e-07, -1.096384765320100237e-07, -1.096031884591753026e-07, -1.095677290118493971e-07, -1.095320982892128113e-07, -1.094962963907082985e-07, -1.094603234160411787e-07, -1.094241794651651516e-07, -1.093878646383058538e-07, -1.093513790359366129e-07, -1.093147227587927810e-07, -1.092778959078707418e-07, -1.092408985844185934e-07, -1.092037308899464186e-07, -1.091663929262178145e-07, -1.091288847952548821e-07, -1.090912065993408200e-07, -1.090533584410075241e-07, -1.090153404230495232e-07, -1.089771526485113266e-07, -1.089387952206998916e-07, -1.089002682431752002e-07, -1.088615718197475853e-07, -1.088227060544938382e-07, -1.087836710517312544e-07, -1.087444669160452020e-07, -1.087050937522658154e-07, -1.086655516654807533e-07, -1.086258407610360592e-07, -1.085859611445235089e-07, -1.085459129217942289e-07, -1.085056961989492603e-07, -1.084653110823430659e-07, -1.084247576785875136e-07, -1.083840360945399259e-07, -1.083431464373153613e-07, -1.083020888142754047e-07, -1.082608633330398934e-07, -1.082194701014784468e-07, -1.081779092277073561e-07, -1.081361808201005296e-07, -1.080942849872757022e-07, -1.080522218381085697e-07, -1.080099914817226780e-07, -1.079675940274860213e-07, -1.079250295850277048e-07, -1.078822982642158295e-07, -1.078394001751721695e-07, -1.077963354282728999e-07, -1.077531041341305843e-07, -1.077097064036202473e-07, -1.076661423478548768e-07, -1.076224120782024043e-07, -1.075785157062726292e-07, -1.075344533439307178e-07, -1.074902251032851732e-07, -1.074458310966887353e-07, -1.074012714367470492e-07, -1.073565462363055103e-07, -1.073116556084637429e-07, -1.072665996665652902e-07, -1.072213785241936574e-07, -1.071759922951884977e-07, -1.071304410936250187e-07, -1.070847250338296926e-07, -1.070388442303737840e-07, -1.069927987980676326e-07, -1.069465888519757277e-07, -1.069002145073983248e-07, -1.068536758798822191e-07, -1.068069730852231276e-07, -1.067601062394513687e-07, -1.067130754588482740e-07, -1.066658808599317091e-07, -1.066185225594682493e-07, -1.065710006744608453e-07, -1.065233153221617667e-07, -1.064754666200626490e-07, -1.064274546858906695e-07, -1.063792796376262282e-07, -1.063309415934801713e-07, -1.062824406719096726e-07, -1.062337769916147132e-07, -1.061849506715273350e-07, -1.061359618308315321e-07, -1.060868105889410963e-07, -1.060374970655131559e-07, -1.059880213804494599e-07, -1.059383836538820044e-07, -1.058885840061885046e-07, -1.058386225579809598e-07, -1.057884994301110397e-07, -1.057382147436748626e-07, -1.056877686199960810e-07, -1.056371611806437751e-07, -1.055863925474175903e-07, -1.055354628423625334e-07, -1.054843721877576306e-07, -1.054331207061136909e-07, -1.053817085201850979e-07, -1.053301357529536770e-07, -1.052784025276494077e-07, -1.052265089677259789e-07, -1.051744551968772795e-07, -1.051222413390367632e-07, -1.050698675183648221e-07, -1.050173338592627367e-07, -1.049646404863594676e-07, -1.049117875245224807e-07, -1.048587750988576956e-07, -1.048056033346937878e-07, -1.047522723576015257e-07, -1.046987822933772398e-07, -1.046451332680587973e-07, -1.045913254079122749e-07, -1.045373588394319845e-07, -1.044832336893510356e-07, -1.044289500846261408e-07, -1.043745081524551129e-07, -1.043199080202629811e-07, -1.042651498156989871e-07, -1.042102336666581046e-07, -1.041551597012451466e-07, -1.040999280478138346e-07, -1.040445388349400510e-07, -1.039889921914237052e-07, -1.039332882463067726e-07, -1.038774271288484928e-07, -1.038214089685441759e-07, -1.037652338951097709e-07, -1.037089020384999711e-07, -1.036524135288923982e-07, -1.035957684966877346e-07, -1.035389670725218336e-07, -1.034820093872491096e-07, -1.034248955719612651e-07, -1.033676257579714620e-07, -1.033102000768126808e-07, -1.032526186602603647e-07, -1.031948816402931792e-07, -1.031369891491361171e-07, -1.030789413192302045e-07, -1.030207382832373445e-07, -1.029623801740562390e-07, -1.029038671247968450e-07, -1.028451992687990230e-07, -1.027863767396351439e-07, -1.027273996710799268e-07, -1.026682681971538231e-07, -1.026089824520857866e-07, -1.025495425703357199e-07, -1.024899486865767001e-07, -1.024302009357160484e-07, -1.023702994528768546e-07, -1.023102443733978842e-07, -1.022500358328553233e-07, -1.021896739670247683e-07, -1.021291589119223860e-07, -1.020684908037771073e-07, -1.020076697790312096e-07, -1.019466959743625911e-07, -1.018855695266531126e-07, -1.018242905730113489e-07, -1.017628592507726546e-07, -1.017012756974709338e-07, -1.016395400508814424e-07, -1.015776524489811093e-07, -1.015156130299704539e-07, -1.014534219322756105e-07, -1.013910792945258824e-07, -1.013285852555790599e-07, -1.012659399545019783e-07, -1.012031435305813709e-07, -1.011401961233273890e-07, -1.010770978724528364e-07, -1.010138489178976145e-07, -1.009504493998057201e-07, -1.008868994585522441e-07, -1.008231992347109068e-07, -1.007593488690781585e-07, -1.006953485026729808e-07, -1.006311982767052820e-07, -1.005668983326248658e-07, -1.005024488120757845e-07, -1.004378498569230071e-07, -1.003731016092504079e-07, -1.003082042113421843e-07, -1.002431578057051577e-07, -1.001779625350493185e-07, -1.001126185423009151e-07, -1.000471259706053127e-07, -9.998148496330432199e-08, -9.991569566396270873e-08, -9.984975821634458244e-08, -9.978367276443814586e-08, -9.971743945243430729e-08, -9.965105842472947317e-08, -9.958452982593870354e-08, -9.951785380087468183e-08, -9.945103049457548164e-08, -9.938406005227053984e-08, -9.931694261940637197e-08, -9.924967834164358112e-08, -9.918226736483594686e-08, -9.911470983505715969e-08, -9.904700589857841435e-08, -9.897915570188238590e-08, -9.891115939166541345e-08, -9.884301711481697287e-08, -9.877472901844295694e-08, -9.870629524984353338e-08, -9.863771595653888673e-08, -9.856899128624712931e-08, -9.850012138688575704e-08, -9.843110640658729310e-08, -9.836194649367549160e-08, -9.829264179669383229e-08, -9.822319246438167128e-08, -9.815359864567311609e-08, -9.808386048972477920e-08, -9.801397814587654985e-08, -9.794395176368229899e-08, -9.787378149289725316e-08, -9.780346748346880951e-08, -9.773300988556402466e-08, -9.766240884953227908e-08, -9.759166452593794076e-08, -9.752077706553222789e-08, -9.744974661928306675e-08, -9.737857333834978657e-08, -9.730725737408775179e-08, -9.723579887806097488e-08, -9.716419800201992143e-08, -9.709245489792974020e-08, -9.702056971794669174e-08, -9.694854261441661315e-08, -9.687637373990235406e-08, -9.680406324714592476e-08, -9.673161128909756008e-08, -9.665901801890445648e-08, -9.658628358989946945e-08, -9.651340815563127583e-08, -9.644039186982558236e-08, -9.636723488641212481e-08, -9.629393735952453568e-08, -9.622049944347576701e-08, -9.614692129278674386e-08, -9.607320306216236953e-08, -9.599934490650752647e-08, -9.592534698092927334e-08, -9.585120944071200306e-08, -9.577693244134783017e-08, -9.570251613850660053e-08, -9.562796068807591365e-08, -9.555326624610310091e-08, -9.547843296885647666e-08, -9.540346101278514384e-08, -9.532835053452111158e-08, -9.525310169090785604e-08, -9.517771463895931881e-08, -9.510218953589040002e-08, -9.502652653911317318e-08, -9.495072580621341975e-08, -9.487478749498153258e-08, -9.479871176338488146e-08, -9.472249876958652726e-08, -9.464614867194681012e-08, -9.456966162899783260e-08, -9.449303779947404545e-08, -9.441627734228301181e-08, -9.433938041653801793e-08, -9.426234718153061081e-08, -9.418517779673374806e-08, -9.410787242181877831e-08, -9.403043121662845524e-08, -9.395285434121326734e-08, -9.387514195578797459e-08, -9.379729422076174424e-08, -9.371931129674123458e-08, -9.364119334448783298e-08, -9.356294052498038929e-08, -9.348455299935830582e-08, -9.340603092895385693e-08, -9.332737447529206988e-08, -9.324858380006323605e-08, -9.316965906515536280e-08, -9.309060043262442150e-08, -9.301140806472661415e-08, -9.293208212389166540e-08, -9.285262277272410632e-08, -9.277303017402344439e-08, -9.269330449075413349e-08, -9.261344588608007733e-08, -9.253345452333600232e-08, -9.245333056602847667e-08, -9.237307417786788591e-08, -9.229268552271025230e-08, -9.221216476462274752e-08, -9.213151206783803231e-08, -9.205072759675855783e-08, -9.196981151598688674e-08, -9.188876399028139610e-08, -9.180758518459443349e-08, -9.172627526404182384e-08, -9.164483439392477320e-08, -9.156326273972965697e-08, -9.148156046709945897e-08, -9.139972774187037920e-08, -9.131776473003827014e-08, -9.123567159779299449e-08, -9.115344851149063197e-08, -9.107109563765163961e-08, -9.098861314299802856e-08, -9.090600119438974403e-08, -9.082325995889283814e-08, -9.074038960373423311e-08, -9.065739029630435498e-08, -9.057426220418909588e-08, -9.049100549512373015e-08, -9.040762033702741766e-08, -9.032410689800287301e-08, -9.024046534629155212e-08, -9.015669585034314867e-08, -9.007279857875153723e-08, -8.998877370029769402e-08, -8.990462138391735081e-08, -8.982034179873466450e-08, -8.973593511403523119e-08, -8.965140149926660230e-08, -8.956674112405812372e-08, -8.948195415819212342e-08, -8.939704077163931479e-08, -8.931200113452823730e-08, -8.922683541714491233e-08, -8.914154378996741280e-08, -8.905612642361633813e-08, -8.897058348888971466e-08, -8.888491515676535150e-08, -8.879912159835400221e-08, -8.871320298496874213e-08, -8.862715948806122910e-08, -8.854099127925939648e-08, -8.845469853036512379e-08, -8.836828141332534492e-08, -8.828174010026772945e-08, -8.819507476347032173e-08, -8.810828557538156537e-08, -8.802137270862373098e-08, -8.793433633596100691e-08, -8.784717663033803923e-08, -8.775989376484436960e-08, -8.767248791275489428e-08, -8.758495924748282738e-08, -8.749730794261632180e-08, -8.740953417190459901e-08, -8.732163810924288783e-08, -8.723361992871275105e-08, -8.714547980453021797e-08, -8.705721791108104211e-08, -8.696883442292191881e-08, -8.688032951474719953e-08, -8.679170336142718033e-08, -8.670295613797674845e-08, -8.661408801957549933e-08, -8.652509918157259383e-08, -8.643598979945169897e-08, -8.634676004887233377e-08, -8.625741010563275861e-08, -8.616794014570881959e-08, -8.607835034522185399e-08, -8.598864088044166804e-08, -8.589881192780845399e-08, -8.580886366389878959e-08, -8.571879626546597810e-08, -8.562860990940708014e-08, -8.553830477276184167e-08, -8.544788103274947377e-08, -8.535733886671724831e-08, -8.526667845218445102e-08, -8.517589996680722963e-08, -8.508500358840231078e-08, -8.499398949494934261e-08, -8.490285786455790017e-08, -8.481160887550703128e-08, -8.472024270620886057e-08, -8.462875953524792357e-08, -8.453715954134937654e-08, -8.444544290337990963e-08, -8.435360980037092121e-08, -8.426166041148541737e-08, -8.416959491605733283e-08, -8.407741349355804662e-08, -8.398511632359630270e-08, -8.389270358595991309e-08, -8.380017546054219834e-08, -8.370753212742155572e-08, -8.361477376680866521e-08, -8.352190055904989088e-08, -8.342891268466416652e-08, -8.333581032429042669e-08, -8.324259365873144063e-08, -8.314926286891851483e-08, -8.305581813594886838e-08, -8.296225964105372360e-08, -8.286858756560128394e-08, -8.277480209111927297e-08, -8.268090339926011339e-08, -8.258689167184159786e-08, -8.249276709081487377e-08, -8.239852983826138600e-08, -8.230418009643569182e-08, -8.220971804769253658e-08, -8.211514387456630281e-08, -8.202045775971826915e-08, -8.192565988593851620e-08, -8.183075043618576352e-08, -8.173572959353116105e-08, -8.164059754119819234e-08, -8.154535446256522881e-08, -8.145000054111163738e-08, -8.135453596049803673e-08, -8.125896090449350550e-08, -8.116327555701618689e-08, -8.106748010213492976e-08, -8.097157472403274717e-08, -8.087555960704900914e-08, -8.077943493564090269e-08, -8.068320089443385676e-08, -8.058685766814652685e-08, -8.049040544167199107e-08, -8.039384440002487677e-08, -8.029717472834236636e-08, -8.020039661192443142e-08, -8.010351023617780936e-08, -8.000651578665589343e-08, -7.990941344906173698e-08, -7.981220340919246699e-08, -7.971488585302175062e-08, -7.961746096662587837e-08, -7.951992893622401136e-08, -7.942228994818016661e-08, -7.932454418896679455e-08, -7.922669184520767339e-08, -7.912873310364156601e-08, -7.903066815114633403e-08, -7.893249717474314642e-08, -7.883422036155842925e-08, -7.873583789886924810e-08, -7.863734997406185638e-08, -7.853875677467967184e-08, -7.844005848836717382e-08, -7.834125530290914476e-08, -7.824234740623567292e-08, -7.814333498636323070e-08, -7.804421823148075437e-08, -7.794499732987195521e-08, -7.784567246995937852e-08, -7.774624384030445652e-08, -7.764671162957059627e-08, -7.754707602656617979e-08, -7.744733722021076220e-08, -7.734749539955575780e-08, -7.724755075378977379e-08, -7.714750347220183045e-08, -7.704735374422504956e-08, -7.694710175939586443e-08, -7.684674770739839652e-08, -7.674629177802899917e-08, -7.664573416119695899e-08, -7.654507504695093926e-08, -7.644431462544136630e-08, -7.634345308696430317e-08, -7.624249062192533164e-08, -7.614142742083881104e-08, -7.604026367436774174e-08, -7.593899957326831098e-08, -7.583763530843580469e-08, -7.573617107086852918e-08, -7.563460705169353976e-08, -7.553294344216813630e-08, -7.543118043364374520e-08, -7.532931821761057393e-08, -7.522735698565703282e-08, -7.512529692951220587e-08, -7.502313824101155909e-08, -7.492088111209809200e-08, -7.481852573484814561e-08, -7.471607230143366981e-08, -7.461352100416691751e-08, -7.451087203546431348e-08, -7.440812558784376759e-08, -7.430528185396721181e-08, -7.420234102658204901e-08, -7.409930329856687953e-08, -7.399616886291326350e-08, -7.389293791271013011e-08, -7.378961064118806161e-08, -7.368618724166169500e-08, -7.358266790757052526e-08, -7.347905283247816415e-08, -7.337534221003477962e-08, -7.327153623402327232e-08, -7.316763509832029886e-08, -7.306363899692986197e-08, -7.295954812394610719e-08, -7.285536267359694513e-08, -7.275108284020871424e-08, -7.264670881820280597e-08, -7.254224080214023984e-08, -7.243767898666026683e-08, -7.233302356652722082e-08, -7.222827473661443830e-08, -7.212343269188410152e-08, -7.201849762743635326e-08, -7.191346973844800600e-08, -7.180834922021476123e-08, -7.170313626815208298e-08, -7.159783107775440784e-08, -7.149243384464346558e-08, -7.138694476452959357e-08, -7.128136403323528162e-08, -7.117569184670096889e-08, -7.106992840094467745e-08, -7.096407389211020054e-08, -7.085812851642263333e-08, -7.075209247024447560e-08, -7.064596594999382692e-08, -7.053974915223410593e-08, -7.043344227361274638e-08, -7.032704551086629250e-08, -7.022055906086261835e-08, -7.011398312054024584e-08, -7.000731788695066987e-08, -6.990056355725905984e-08, -6.979372032870463434e-08, -6.968678839864671859e-08, -6.957976796452743528e-08, -6.947265922389542149e-08, -6.936546237441122854e-08, -6.925817761380736584e-08, -6.915080513993523180e-08, -6.904334515072284162e-08, -6.893579784422046119e-08, -6.882816341856214647e-08, -6.872044207196939633e-08, -6.861263400277733119e-08, -6.850473940939461775e-08, -6.839675849035067782e-08, -6.828869144425877626e-08, -6.818053846981115051e-08, -6.807229976583091785e-08, -6.796397553118550594e-08, -6.785556596488513369e-08, -6.774707126599738003e-08, -6.763849163369591473e-08, -6.752982726725986319e-08, -6.742107836603467086e-08, -6.731224512947878263e-08, -6.720332775711992807e-08, -6.709432644860371992e-08, -6.698524140365290383e-08, -6.687607282207171270e-08, -6.676682090377185994e-08, -6.665748584873278191e-08, -6.654806785704994524e-08, -6.643856712889371281e-08, -6.632898386450984664e-08, -6.621931826426847706e-08, -6.610957052857742732e-08, -6.599974085797769015e-08, -6.588982945307853707e-08, -6.577983651456372558e-08, -6.566976224323386399e-08, -6.555960683994445895e-08, -6.544937050565911970e-08, -6.533905344140884752e-08, -6.522865584831853201e-08, -6.511817792761130536e-08, -6.500761988056791121e-08, -6.489698190857514440e-08, -6.478626421308045527e-08, -6.467546699564238780e-08, -6.456459045788846623e-08, -6.445363480151479802e-08, -6.434260022833640608e-08, -6.423148694019983884e-08, -6.412029513907916290e-08, -6.400902502701030474e-08, -6.389767680609721814e-08, -6.378625067855549323e-08, -6.367474684664933184e-08, -6.356316551273569916e-08, -6.345150687926982945e-08, -6.333977114873987213e-08, -6.322795852376300355e-08, -6.311606920699775912e-08, -6.300410340119455082e-08, -6.289206130919534961e-08, -6.277994313389109557e-08, -6.266774907827304919e-08, -6.255547934539071777e-08, -6.244313413838785422e-08, -6.233071366046063485e-08, -6.221821811490907694e-08, -6.210564770509382678e-08, -6.199300263443643762e-08, -6.188028310646553299e-08, -6.176748932475071162e-08, -6.165462149295003424e-08, -6.154167981481293529e-08, -6.142866449411477632e-08, -6.131557573475561803e-08, -6.120241374066977302e-08, -6.108917871587768654e-08, -6.097587086448506301e-08, -6.086249039064170550e-08, -6.074903749859032601e-08, -6.063551239262609963e-08, -6.052191527712320053e-08, -6.040824635654021498e-08, -6.029450583537629420e-08, -6.018069391822340570e-08, -6.006681080971888619e-08, -5.995285671459643560e-08, -5.983883183764340810e-08, -5.972473638370540465e-08, -5.961057055771456910e-08, -5.949633456464530434e-08, -5.938202860957308148e-08, -5.926765289760473832e-08, -5.915320763392896385e-08, -5.903869302381264539e-08, -5.892410927256027721e-08, -5.880945658556402809e-08, -5.869473516826229630e-08, -5.857994522616606686e-08, -5.846508696486527090e-08, -5.835016058998407821e-08, -5.823516630723363167e-08, -5.812010432236364723e-08, -5.800497484121487704e-08, -5.788977806967572547e-08, -5.777451421368623281e-08, -5.765918347926729791e-08, -5.754378607247583837e-08, -5.742832219945945064e-08, -5.731279206641029966e-08, -5.719719587956612473e-08, -5.708153384525788506e-08, -5.696580616984187147e-08, -5.685001305975719871e-08, -5.673415472148163402e-08, -5.661823136156143521e-08, -5.650224318661445422e-08, -5.638619040328654138e-08, -5.627007321830514014e-08, -5.615389183842988120e-08, -5.603764647050546250e-08, -5.592133732141825204e-08, -5.580496459810023188e-08, -5.568852850755795603e-08, -5.557202925682848496e-08, -5.545546705303234495e-08, -5.533884210332978019e-08, -5.522215461491972708e-08, -5.510540479508920682e-08, -5.498859285114308784e-08, -5.487171899045994371e-08, -5.475478342046935525e-08, -5.463778634863361990e-08, -5.452072798250098252e-08, -5.440360852963647639e-08, -5.428642819767096515e-08, -5.416918719429984577e-08, -5.405188572724041233e-08, -5.393452400428343902e-08, -5.381710223324937266e-08, -5.369962062202793809e-08, -5.358207937853253076e-08, -5.346447871075475771e-08, -5.334681882671935289e-08, -5.322909993448357499e-08, -5.311132224219241019e-08, -5.299348595798239417e-08, -5.287559129008681629e-08, -5.275763844676474084e-08, -5.263962763630690322e-08, -5.252155906708390475e-08, -5.240343294747651118e-08, -5.228524948592597827e-08, -5.216700889093236446e-08, -5.204871137100991594e-08, -5.193035713474168050e-08, -5.181194639073414491e-08, -5.169347934764682816e-08, -5.157495621419639084e-08, -5.145637719911291377e-08, -5.133774251119262570e-08, -5.121905235924830564e-08, -5.110030695217433892e-08, -5.098150649885061205e-08, -5.086265120824798156e-08, -5.074374128935710998e-08, -5.062477695119333631e-08, -5.050575840284756413e-08, -5.038668585341327122e-08, -5.026755951203866164e-08, -5.014837958793018618e-08, -5.002914629028182175e-08, -4.990985982838100345e-08, -4.979052041151159295e-08, -4.967112824901045764e-08, -4.955168355026545234e-08, -4.943218652467053977e-08, -4.931263738168107930e-08, -4.919303633076245572e-08, -4.907338358144575846e-08, -4.895367934328169102e-08, -4.883392382584495178e-08, -4.871411723876547493e-08, -4.859425979168073191e-08, -4.847435169429242310e-08, -4.835439315632022848e-08, -4.823438438750101352e-08, -4.811432559764477970e-08, -4.799421699653722923e-08, -4.787405879405250650e-08, -4.775385120005442604e-08, -4.763359442445364728e-08, -4.751328867720609298e-08, -4.739293416826779839e-08, -4.727253110764997502e-08, -4.715207970537256940e-08, -4.703158017149580846e-08, -4.691103271612316411e-08, -4.679043754935610320e-08, -4.666979488135003136e-08, -4.654910492226215417e-08, -4.642836788230781145e-08, -4.630758397171429414e-08, -4.618675340071950095e-08, -4.606587637962955643e-08, -4.594495311871960225e-08, -4.582398382834168805e-08, -4.570296871885257507e-08, -4.558190800061861985e-08, -4.546080188406658296e-08, -4.533965057961110183e-08, -4.521845429770714720e-08, -4.509721324885253777e-08, -4.497592764351725266e-08, -4.485459769225070677e-08, -4.473322360558328326e-08, -4.461180559409337484e-08, -4.449034386835518538e-08, -4.436883863899516346e-08, -4.424729011664564060e-08, -4.412569851194885461e-08, -4.400406403558801852e-08, -4.388238689824035660e-08, -4.376066731063410034e-08, -4.363890548350094882e-08, -4.351710162757534732e-08, -4.339525595364779751e-08, -4.327336867248954431e-08, -4.315143999490551541e-08, -4.302947013173911234e-08, -4.290745929379859138e-08, -4.278540769196611904e-08, -4.266331553709869570e-08, -4.254118304008527075e-08, -4.241901041184567061e-08, -4.229679786328401183e-08, -4.217454560534532669e-08, -4.205225384896841377e-08, -4.192992280512725004e-08, -4.180755268478369589e-08, -4.168514369894425965e-08, -4.156269605861345114e-08, -4.144020997479253104e-08, -4.131768565853191441e-08, -4.119512332085763763e-08, -4.107252317282853315e-08, -4.094988542551474262e-08, -4.082721028997636242e-08, -4.070449797732149850e-08, -4.058174869863150246e-08, -4.045896266501356703e-08, -4.033614008760019006e-08, -4.021328117750193916e-08, -4.009038614586444121e-08, -3.996745520382086239e-08, -3.984448856252327495e-08, -3.972148643314779232e-08, -3.959844902684593748e-08, -3.947537655480300887e-08, -3.935226922818482318e-08, -3.922912725819543266e-08, -3.910595085602906269e-08, -3.898274023287498879e-08, -3.885949559994992901e-08, -3.873621716844834696e-08, -3.861290514960689244e-08, -3.848955975462942582e-08, -3.836618119473992450e-08, -3.824276968118189395e-08, -3.811932542517005377e-08, -3.799584863794939837e-08, -3.787233953074557274e-08, -3.774879831479751633e-08, -3.762522520136204890e-08, -3.750162040166557647e-08, -3.737798412696235786e-08, -3.725431658848092990e-08, -3.713061799748231442e-08, -3.700688856521204848e-08, -3.688312850290441284e-08, -3.675933802181472510e-08, -3.663551733317070815e-08, -3.651166664823098171e-08, -3.638778617823646383e-08, -3.626387613441004666e-08, -3.613993672801563064e-08, -3.601596817025531589e-08, -3.589197067238156793e-08, -3.576794444562237431e-08, -3.564388970118607541e-08, -3.551980665031437678e-08, -3.539569550420712198e-08, -3.527155647408598555e-08, -3.514738977114159296e-08, -3.502319560659066228e-08, -3.489897419162808723e-08, -3.477472573743211205e-08, -3.465045045519600920e-08, -3.452614855607944776e-08, -3.440182025126674676e-08, -3.427746575191941493e-08, -3.415308526917437056e-08, -3.402867901420347868e-08, -3.390424719811109976e-08, -3.377979003204627523e-08, -3.365530772712739456e-08, -3.353080049444686710e-08, -3.340626854512555723e-08, -3.328171209023573080e-08, -3.315713134085522557e-08, -3.303252650807265908e-08, -3.290789780291147370e-08, -3.278324543644259194e-08, -3.265856961968176668e-08, -3.253387056365934227e-08, -3.240914847936634218e-08, -3.228440357781282829e-08, -3.215963606997911708e-08, -3.203484616681579942e-08, -3.191003407930260946e-08, -3.178520001834523872e-08, -3.166034419488866651e-08, -3.153546681984152913e-08, -3.141056810408011019e-08, -3.128564825850315290e-08, -3.116070749395526316e-08, -3.103574602128078881e-08, -3.091076405132872309e-08, -3.078576179487687543e-08, -3.066073946274489734e-08, -3.053569726569161940e-08, -3.041063541447350315e-08, -3.028555411984476019e-08, -3.016045359250811840e-08, -3.003533404317422674e-08, -2.991019568251240163e-08, -2.978503872118273804e-08, -2.965986336984155242e-08, -2.953466983909168562e-08, -2.940945833954224853e-08, -2.928422908175377670e-08, -2.915898227630328639e-08, -2.903371813370761154e-08, -2.890843686447731274e-08, -2.878313867912256677e-08, -2.865782378807565315e-08, -2.853249240180525067e-08, -2.840714473071303648e-08, -2.828178098519277327e-08, -2.815640137563002802e-08, -2.803100611235306395e-08, -2.790559540569215929e-08, -2.778016946593063157e-08, -2.765472850333639623e-08, -2.752927272816808111e-08, -2.740380235062465779e-08, -2.727831758090581584e-08, -2.715281862915679651e-08, -2.702730570552780741e-08, -2.690177902012519245e-08, -2.677623878301601436e-08, -2.665068520426054640e-08, -2.652511849386293925e-08, -2.639953886183643929e-08, -2.627394651812633173e-08, -2.614834167266455440e-08, -2.602272453536896981e-08, -2.589709531609442256e-08, -2.577145422469181325e-08, -2.564580147095910292e-08, -2.552013726467343411e-08, -2.539446181559657706e-08, -2.526877533342512017e-08, -2.514307802785017920e-08, -2.501737010850296883e-08, -2.489165178501393939e-08, -2.476592326696347034e-08, -2.464018476388716748e-08, -2.451443648530807343e-08, -2.438867864068713266e-08, -2.426291143948330445e-08, -2.413713509110381617e-08, -2.401134980490357770e-08, -2.388555579023998375e-08, -2.375975325639560889e-08, -2.363394241263835683e-08, -2.350812346819906034e-08, -2.338229663224914739e-08, -2.325646211396081688e-08, -2.313062012243000498e-08, -2.300477086674134525e-08, -2.287891455591357473e-08, -2.275305139895912736e-08, -2.262718160483476782e-08, -2.250130538244633622e-08, -2.237542294068157400e-08, -2.224953448836064521e-08, -2.212364023429566381e-08, -2.199774038724123815e-08, -2.187183515589410371e-08, -2.174592474894768396e-08, -2.162000937501485149e-08, -2.149408924268808396e-08, -2.136816456051686878e-08, -2.124223553698612694e-08, -2.111630238057533330e-08, -2.099036529968189314e-08, -2.086442450267562363e-08, -2.073848019789837662e-08, -2.061253259361429198e-08, -2.048658189806967889e-08, -2.036062831944384821e-08, -2.023467206588099531e-08, -2.010871334549571243e-08, -1.998275236632334792e-08, -1.985678933637979152e-08, -1.973082446360634775e-08, -1.960485795594095946e-08, -1.947889002121332798e-08, -1.935292086725998712e-08, -1.922695070184697839e-08, -1.910097973267513496e-08, -1.897500816743470212e-08, -1.884903621372785689e-08, -1.872306407912370559e-08, -1.859709197115753279e-08, -1.847112009728145834e-08, -1.834514866492413991e-08, -1.821917788144111573e-08, -1.809320795414758077e-08, -1.796723909032351196e-08, -1.784127149716368993e-08, -1.771530538183790123e-08, -1.758934095143599037e-08, -1.746337841302745321e-08, -1.733741797361190538e-08, -1.721145984012430679e-08, -1.708550421946737713e-08, -1.695955131846211398e-08, -1.683360134391323600e-08, -1.670765450253170257e-08, -1.658171100098992315e-08, -1.645577104592643581e-08, -1.632983484386853275e-08, -1.620390260134789355e-08, -1.607797452479534461e-08, -1.595205082060116392e-08, -1.582613169511485281e-08, -1.570021735459525690e-08, -1.557430800527050694e-08, -1.544840385328301793e-08, -1.532250510474949277e-08, -1.519661196571123851e-08, -1.507072464213892428e-08, -1.494484333996590015e-08, -1.481896826503781682e-08, -1.469309962317313888e-08, -1.456723762011315499e-08, -1.444138246152151956e-08, -1.431553435304494141e-08, -1.418969350020755773e-08, -1.406386010852699414e-08, -1.393803438343629042e-08, -1.381221653028957665e-08, -1.368640675441654962e-08, -1.356060526104500741e-08, -1.343481225536681704e-08, -1.330902794248786835e-08, -1.318325252746082213e-08, -1.305748621529042058e-08, -1.293172921088344127e-08, -1.280598171910892741e-08, -1.268024394474291572e-08, -1.255451609252868321e-08, -1.242879836712682692e-08, -1.230309097311473447e-08, -1.217739411504745793e-08, -1.205170799735169910e-08, -1.192603282444249649e-08, -1.180036880064457542e-08, -1.167471613019816964e-08, -1.154907501731370298e-08, -1.142344566609423950e-08, -1.129782828059022299e-08, -1.117222306480498599e-08, -1.104663022261674005e-08, -1.092104995789454314e-08, -1.079548247439281923e-08, -1.066992797582300703e-08, -1.054438666579783282e-08, -1.041885874789195767e-08, -1.029334442559176430e-08, -1.016784390230068574e-08, -1.004235738137194518e-08, -9.916885066058488338e-09, -9.791427159573581086e-09, -9.665983865040662445e-09, -9.540555385492959115e-09, -9.415141923928630305e-09, -9.289743683232822499e-09, -9.164360866232878797e-09, -9.038993675703419464e-09, -8.913642314288464527e-09, -8.788306984617601364e-09, -8.662987889200244555e-09, -8.537685230486372442e-09, -8.412399210866095346e-09, -8.287130032619688890e-09, -8.161877897977958335e-09, -8.036643009072199111e-09, -7.911425567967108685e-09, -7.786225776666037502e-09, -7.661043837060721216e-09, -7.535879950991994096e-09, -7.410734320194043668e-09, -7.285607146360610810e-09, -7.160498631066991577e-09, -7.035408975830789488e-09, -6.910338382089448470e-09, -6.785287051177632777e-09, -6.660255184388028901e-09, -6.535242982893306044e-09, -6.410250647801432997e-09, -6.285278380155052786e-09, -6.160326380881583836e-09, -6.035394850853709200e-09, -5.910483990839197308e-09, -5.785594001533922185e-09, -5.660725083566953097e-09, -5.535877437450586221e-09, -5.411051263640724698e-09, -5.286246762481360748e-09, -5.161464134265086416e-09, -5.036703579183009438e-09, -4.911965297329906578e-09, -4.787249488737218208e-09, -4.662556353322803702e-09, -4.537886090951682137e-09, -4.413238901385712415e-09, -4.288614984283423689e-09, -4.164014539254998888e-09, -4.039437765784485822e-09, -3.914884863295902978e-09, -3.790356031103098312e-09, -3.665851468442761613e-09, -3.541371374479439697e-09, -3.416915948255614409e-09, -3.292485388752148839e-09, -3.168079894832713610e-09, -3.043699665304315406e-09, -2.919344898867153282e-09, -2.795015794119958529e-09, -2.670712549592734068e-09, -2.546435363696777440e-09, -2.422184434785149361e-09, -2.297959961102624747e-09, -2.173762140785375492e-09, -2.049591171915958947e-09, -1.925447252445599348e-09, -1.801330580254730189e-09, -1.677241353130528831e-09, -1.553179768744515829e-09, -1.429146024713067120e-09, -1.305140318519719019e-09, -1.181162847581178266e-09, -1.057213809191768365e-09, -9.332934005839008369e-10, -8.094018188780367822e-10, -6.855392610879230421e-10, -5.617059241534208241e-10, -4.379020048905047020e-10, -3.141277000516929161e-10, -1.903832062760558343e-10, -6.666872008891966563e-11, 5.701556203772998672e-11, 1.806694437903979875e-10, 3.042927288985064982e-10, 4.278852212119464810e-10, 5.514467246958466024e-10, 6.749770433757321729e-10, 7.984759814150220962e-10, 9.219433430602052506e-10, 1.045378932641121059e-09, 1.168782554620889351e-09, 1.292154013535569501e-09, 1.415493114044069511e-09, 1.538799660895363493e-09, 1.662073458923304840e-09, 1.785314313096509346e-09, 1.908522028458033686e-09, 2.031696410180765287e-09, 2.154837263496143142e-09, 2.277944393799049896e-09, 2.401017606532513828e-09, 2.524056707265073399e-09, 2.647061501685540371e-09, 2.770031795548328134e-09, 2.892967394750707477e-09, 3.015868105278120026e-09, 3.138733733199008777e-09, 3.261564084742033339e-09, 3.384358966180971061e-09, 3.507118183939417002e-09, 3.629841544530642527e-09, 3.752528854557886059e-09, 3.875179920764083179e-09, 3.997794549971739693e-09, 4.120372549138170752e-09, 4.242913725295346214e-09, 4.365417885599653826e-09, 4.487884837326661518e-09, 4.610314387838502498e-09, 4.732706344633535869e-09, 4.855060515280828957e-09, 4.977376707497194302e-09, 5.099654729092710710e-09, 5.221894387965466525e-09, 5.344095492178620596e-09, 5.466257849845686395e-09, 5.588381269234764216e-09, 5.710465558708680591e-09, 5.832510526725278641e-09, 5.954515981886942193e-09, 6.076481732880715361e-09, 6.198407588527834940e-09, 6.320293357751171753e-09, 6.442138849570078142e-09, 6.563943873149879839e-09, 6.685708237741993881e-09, 6.807431752738951835e-09, 6.929114227614525156e-09, 7.050755471973153369e-09, 7.172355295550309679e-09, 7.293913508152727244e-09, 7.415429919762287274e-09, 7.536904340421817648e-09, 7.658336580311679908e-09, 7.779726449744719327e-09, 7.901073759111877779e-09, 8.022378318958884139e-09, 8.143639939921189908e-09, 8.264858432773184806e-09, 8.386033608395789489e-09, 8.507165277771381625e-09, 8.628253252033109092e-09, 8.749297342405164229e-09, 8.870297360257589514e-09, 8.991253117046629572e-09, 9.112164424364140328e-09, 9.233031093932235489e-09, 9.353852937571048012e-09, 9.474629767247955621e-09, 9.595361395017944393e-09, 9.716047633072981513e-09, 9.836688293742197256e-09, 9.957283189437878364e-09, 1.007783213273174568e-08, 1.019833493630095249e-08, 1.031879141292292124e-08, 1.043920137555166259e-08, 1.055956463720408762e-08, 1.067988101106328803e-08, 1.080015031041929342e-08, 1.092037234866922844e-08, 1.104054693936640603e-08, 1.116067389616103336e-08, 1.128075303284924058e-08, 1.140078416333002599e-08, 1.152076710165419540e-08, 1.164070166196515251e-08, 1.176058765854807483e-08, 1.188042490582982432e-08, 1.200021321832530806e-08, 1.211995241071357386e-08, 1.223964229777843032e-08, 1.235928269443045312e-08, 1.247887341572882590e-08, 1.259841427682235897e-08, 1.271790509302501752e-08, 1.283734567976252215e-08, 1.295673585257254741e-08, 1.307607542715349564e-08, 1.319536421930544456e-08, 1.331460204497899729e-08, 1.343378872024322902e-08, 1.355292406128052715e-08, 1.367200788443538493e-08, 1.379104000615535407e-08, 1.391002024304521512e-08, 1.402894841180266745e-08, 1.414782432929397334e-08, 1.426664781249491871e-08, 1.438541867851281617e-08, 1.450413674460802330e-08, 1.462280182813531206e-08, 1.474141374661922167e-08, 1.485997231770060614e-08, 1.497847735913708600e-08, 1.509692868885137044e-08, 1.521532612487287168e-08, 1.533366948538575251e-08, 1.545195858869736940e-08, 1.557019325323315059e-08, 1.568837329758502582e-08, 1.580649854045273629e-08, 1.592456880069766747e-08, 1.604258389728430798e-08, 1.616054364932878846e-08, 1.627844787609338586e-08, 1.639629639695507726e-08, 1.651408903145382412e-08, 1.663182559923400127e-08, 1.674950592009275385e-08, 1.686712981398021902e-08, 1.698469710094679485e-08, 1.710220760121748401e-08, 1.721966113512848540e-08, 1.733705752317544526e-08, 1.745439658598180591e-08, 1.757167814429356146e-08, 1.768890201902754196e-08, 1.780606803121304426e-08, 1.792317600204567484e-08, 1.804022575282849421e-08, 1.815721710502055597e-08, 1.827414988023173516e-08, 1.839102390019116645e-08, 1.850783898679523710e-08, 1.862459496204930715e-08, 1.874129164811622191e-08, 1.885792886731604062e-08, 1.897450644206821987e-08, 1.909102419499246343e-08, 1.920748194879785690e-08, 1.932387952635723787e-08, 1.944021675070201112e-08, 1.955649344496985764e-08, 1.967270943247848927e-08, 1.978886453666299811e-08, 1.990495858112863063e-08, 2.002099138959303059e-08, 2.013696278593411957e-08, 2.025287259418482949e-08, 2.036872063850191460e-08, 2.048450674321384853e-08, 2.060023073276257754e-08, 2.071589243175153341e-08, 2.083149166494590473e-08, 2.094702825721490634e-08, 2.106250203363196411e-08, 2.117791281936456427e-08, 2.129326043974842505e-08, 2.140854472028175604e-08, 2.152376548657356600e-08, 2.163892256441747720e-08, 2.175401577973909021e-08, 2.186904495859114325e-08, 2.198400992722747211e-08, 2.209891051199262117e-08, 2.221374653942244516e-08, 2.232851783618578628e-08, 2.244322422908554294e-08, 2.255786554510550140e-08, 2.267244161135329009e-08, 2.278695225511294200e-08, 2.290139730377693346e-08, 2.301577658494621350e-08, 2.313008992632005316e-08, 2.324433715577010126e-08, 2.335851810133491185e-08, 2.347263259116827184e-08, 2.358668045361243630e-08, 2.370066151714594655e-08, 2.381457561037939835e-08, 2.392842256212775069e-08, 2.404220220130177657e-08, 2.415591435700699043e-08, 2.426955885848675804e-08, 2.438313553512242220e-08, 2.449664421648042557e-08, 2.461008473225536424e-08, 2.472345691231724292e-08, 2.483676058668009500e-08, 2.494999558549724117e-08, 2.506316173910830304e-08, 2.517625887798232952e-08, 2.528928683276997205e-08, 2.540224543424641579e-08, 2.551513451335898876e-08, 2.562795390122124925e-08, 2.574070342908272744e-08, 2.585338292837566453e-08, 2.596599223065326527e-08, 2.607853116766210277e-08, 2.619099957129082669e-08, 2.630339727357037499e-08, 2.641572410672086183e-08, 2.652797990309460469e-08, 2.664016449522316115e-08, 2.675227771578654457e-08, 2.686431939760830730e-08, 2.697628937370206131e-08, 2.708818747721510751e-08, 2.720001354148046211e-08, 2.731176739995988699e-08, 2.742344888629078427e-08, 2.753505783428141518e-08, 2.764659407787999000e-08, 2.775805745122133756e-08, 2.786944778857049483e-08, 2.798076492436957833e-08, 2.809200869323729770e-08, 2.820317892991850430e-08, 2.831427546935589125e-08, 2.842529814662897067e-08, 2.853624679700004503e-08, 2.864712125588413089e-08, 2.875792135884373442e-08, 2.886864694163555734e-08, 2.897929784015385818e-08, 2.908987389048231653e-08, 2.920037492883791711e-08, 2.931080079161700715e-08, 2.942115131539060466e-08, 2.953142633687379937e-08, 2.964162569297244206e-08, 2.975174922072637356e-08, 2.986179675735627953e-08, 2.997176814026359783e-08, 3.008166320697999103e-08, 3.019148179523868905e-08, 3.030122374291869091e-08, 3.041088888806555008e-08, 3.052047706891200772e-08, 3.062998812382185021e-08, 3.073942189136178792e-08, 3.084877821025038171e-08, 3.095805691935883042e-08, 3.106725785775652538e-08, 3.117638086465533809e-08, 3.128542577945610786e-08, 3.139439244170762018e-08, 3.150328069115262447e-08, 3.161209036767265783e-08, 3.172082131133337452e-08, 3.182947336238531362e-08, 3.193804636120777641e-08, 3.204654014840583157e-08, 3.215495456470404559e-08, 3.226328945101733577e-08, 3.237154464844634460e-08, 3.247971999822712075e-08, 3.258781534180195216e-08, 3.269583052076910657e-08, 3.280376537688330136e-08, 3.291161975210115213e-08, 3.301939348852555314e-08, 3.312708642845193979e-08, 3.323469841433775577e-08, 3.334222928879798631e-08, 3.344967889465041483e-08, 3.355704707486053936e-08, 3.366433367259239450e-08, 3.377153853114317773e-08, 3.387866149403841481e-08, 3.398570240492783435e-08, 3.409266110765508917e-08, 3.419953744625269396e-08, 3.430633126489328120e-08, 3.441304240795842259e-08, 3.451967071999012975e-08, 3.462621604568563310e-08, 3.473267822996661356e-08, 3.483905711787617556e-08, 3.494535255467266251e-08, 3.505156438577548645e-08, 3.515769245676537950e-08, 3.526373661342935936e-08, 3.536969670170616193e-08, 3.547557256773583236e-08, 3.558136405780611058e-08, 3.568707101839663579e-08, 3.579269329617430766e-08, 3.589823073796390485e-08, 3.600368319079316968e-08, 3.610905050183781714e-08, 3.621433251846692398e-08, 3.631952908824260441e-08, 3.642464005886645518e-08, 3.652966527827313280e-08, 3.663460459452218483e-08, 3.673945785589181907e-08, 3.684422491082537501e-08, 3.694890560793074818e-08, 3.705349979602551445e-08, 3.715800732408275303e-08, 3.726242804127555539e-08, 3.736676179694767693e-08, 3.747100844060910987e-08, 3.757516782198036058e-08, 3.767923979093841815e-08, 3.778322419756595511e-08, 3.788712089209824888e-08, 3.799092972496692968e-08, 3.809465054680003354e-08, 3.819828320836935382e-08, 3.830182756068180833e-08, 3.840528345487925784e-08, 3.850865074230526280e-08, 3.861192927450084824e-08, 3.871511890315677212e-08, 3.881821948018067252e-08, 3.892123085764954781e-08, 3.902415288780462808e-08, 3.912698542312003781e-08, 3.922972831620039745e-08, 3.933238141987373244e-08, 3.943494458712826329e-08, 3.953741767116138133e-08, 3.963980052532648417e-08, 3.974209300317654493e-08, 3.984429495845996972e-08, 3.994640624509115666e-08, 4.004842671719422392e-08, 4.015035622905093707e-08, 4.025219463514332539e-08, 4.035394179015416500e-08, 4.045559754891959791e-08, 4.055716176649557117e-08, 4.065863429811127655e-08, 4.076001499916371760e-08, 4.086130372528459880e-08, 4.096250033224131532e-08, 4.106360467602674515e-08, 4.116461661280763304e-08, 4.126553599892442504e-08, 4.136636269093483116e-08, 4.146709654556085932e-08, 4.156773741973242434e-08, 4.166828517054939024e-08, 4.176873965532427926e-08, 4.186910073153068887e-08, 4.196936825684589488e-08, 4.206954208915046761e-08, 4.216962208648290932e-08, 4.226960810710375080e-08, 4.236950000944537125e-08, 4.246929765213056024e-08, 4.256900089399131123e-08, 4.266860959401779449e-08, 4.276812361142367122e-08, 4.286754280560034060e-08, 4.296686703611600670e-08, 4.306609616275851319e-08, 4.316523004548413097e-08, 4.326426854446004212e-08, 4.336321152003553420e-08, 4.346205883273875107e-08, 4.356081034331822397e-08, 4.365946591269177824e-08, 4.375802540199300761e-08, 4.385648867252116696e-08, 4.395485558578237246e-08, 4.405312600348541942e-08, 4.415129978751423378e-08, 4.424937679996925110e-08, 4.434735690311329899e-08, 4.444523995943488642e-08, 4.454302583160331758e-08, 4.464071438246836762e-08, 4.473830547510231000e-08, 4.483579897274901520e-08, 4.493319473886586552e-08, 4.503049263709643170e-08, 4.512769253126574806e-08, 4.522479428542164506e-08, 4.532179776378514490e-08, 4.541870283079608226e-08, 4.551550935106245427e-08, 4.561221718940273919e-08, 4.570882621084062882e-08, 4.580533628057864480e-08, 4.590174726403855137e-08, 4.599805902681153916e-08, 4.609427143470000783e-08, 4.619038435371701676e-08, 4.628639765004153792e-08, 4.638231119008147377e-08, 4.647812484042088317e-08, 4.657383846785897134e-08, 4.666945193938441418e-08, 4.676496512217093122e-08, 4.686037788361732112e-08, 4.695569009129893598e-08, 4.705090161301229614e-08, 4.714601231672626007e-08, 4.724102207062217239e-08, 4.733593074308959560e-08, 4.743073820269987345e-08, 4.752544431824641788e-08, 4.762004895869566717e-08, 4.771455199322745235e-08, 4.780895329123510968e-08, 4.790325272227742479e-08, 4.799745015616175439e-08, 4.809154546285224230e-08, 4.818553851253150069e-08, 4.827942917559662632e-08, 4.837321732261472477e-08, 4.846690282438518051e-08, 4.856048555189638550e-08, 4.865396537632436272e-08, 4.874734216907380759e-08, 4.884061580172955560e-08, 4.893378614609585686e-08, 4.902685307416220363e-08, 4.911981645814242615e-08, 4.921267617042614048e-08, 4.930543208362023325e-08, 4.939808407054663158e-08, 4.949063200419579565e-08, 4.958307575780972138e-08, 4.967541520478999096e-08, 4.976765021875952690e-08, 4.985978067355796638e-08, 4.995180644319873396e-08, 5.004372740192968377e-08, 5.013554342418964941e-08, 5.022725438460492346e-08, 5.031886015804966815e-08, 5.041036061955499823e-08, 5.050175564439172558e-08, 5.059304510802296500e-08, 5.068422888610389603e-08, 5.077530685452097128e-08, 5.086627888934459508e-08, 5.095714486687255383e-08, 5.104790466358261514e-08, 5.113855815617129954e-08, 5.122910522155008862e-08, 5.131954573681996774e-08, 5.140987957930918518e-08, 5.150010662652284703e-08, 5.159022675620291100e-08, 5.168023984628533840e-08, 5.177014577489625609e-08, 5.185994442041114945e-08, 5.194963566136700262e-08, 5.203921937654176078e-08, 5.212869544490805431e-08, 5.221806374563417822e-08, 5.230732415812151376e-08, 5.239647656195835855e-08, 5.248552083695870478e-08, 5.257445686313578928e-08, 5.266328452069952598e-08, 5.275200369009342459e-08, 5.284061425194872513e-08, 5.292911608712698778e-08, 5.301750907667364506e-08, 5.310579310185599255e-08, 5.319396804416313597e-08, 5.328203378526105211e-08, 5.336999020707081364e-08, 5.345783719167734116e-08, 5.354557462140952063e-08, 5.363320237879362314e-08, 5.372072034655353654e-08, 5.380812840764876281e-08, 5.389542644522898929e-08, 5.398261434267085522e-08, 5.406969198355375173e-08, 5.415665925165552711e-08, 5.424351603099017319e-08, 5.433026220576228406e-08, 5.441689766040873936e-08, 5.450342227955253435e-08, 5.458983594804208097e-08, 5.467613855094505355e-08, 5.476232997352461237e-08, 5.484841010127693779e-08, 5.493437881988555667e-08, 5.502023601525889633e-08, 5.510598157353037724e-08, 5.519161538101758995e-08, 5.527713732427919856e-08, 5.536254729007491836e-08, 5.544784516536073806e-08, 5.553303083734729226e-08, 5.561810419341346412e-08, 5.570306512118441161e-08, 5.578791350847797946e-08, 5.587264924334722287e-08, 5.595727221403398612e-08, 5.604178230900643010e-08, 5.612617941695507511e-08, 5.621046342676842214e-08, 5.629463422757011646e-08, 5.637869170867309539e-08, 5.646263575961867746e-08, 5.654646627017400156e-08, 5.663018313029306993e-08, 5.671378623017336713e-08, 5.679727546021160911e-08, 5.688065071101967804e-08, 5.696391187344080196e-08, 5.704705883850643553e-08, 5.713009149749142963e-08, 5.721300974187435320e-08, 5.729581346333773144e-08, 5.737850255380467338e-08, 5.746107690539399235e-08, 5.754353641045710490e-08, 5.762588096154596260e-08, 5.770811045144952744e-08, 5.779022477314877981e-08, 5.787222381985404750e-08, 5.795410748500439690e-08, 5.803587566222843789e-08, 5.811752824539949343e-08, 5.819906512859216934e-08, 5.828048620609969193e-08, 5.836179137244774515e-08, 5.844298052235209240e-08, 5.852405355077428888e-08, 5.860501035288211580e-08, 5.868585082404942163e-08, 5.876657485989152540e-08, 5.884718235622351356e-08, 5.892767320909367132e-08, 5.900804731476143333e-08, 5.908830456969283086e-08, 5.916844487059649734e-08, 5.924846811438041670e-08, 5.932837419819123106e-08, 5.940816301937065817e-08, 5.948783447549260869e-08, 5.956738846435707168e-08, 5.964682488396881302e-08, 5.972614363257086631e-08, 5.980534460859931589e-08, 5.988442771073734808e-08, 5.996339283787589729e-08, 6.004223988911531358e-08, 6.012096876379852930e-08, 6.019957936146988537e-08, 6.027807158190948903e-08, 6.035644532510994690e-08, 6.043470049127345332e-08, 6.051283698084590991e-08, 6.059085469447456063e-08, 6.066875353304731271e-08, 6.074653339764981586e-08, 6.082419418960068031e-08, 6.090173581044709608e-08, 6.097915816194270423e-08, 6.105646114608142526e-08, 6.113364466505613975e-08, 6.121070862129352262e-08, 6.128765291745230934e-08, 6.136447745638356481e-08, 6.144118214120205909e-08, 6.151776687520664634e-08, 6.159423156193386609e-08, 6.167057610515316549e-08, 6.174680040883166796e-08, 6.182290437718412175e-08, 6.189888791462951591e-08, 6.197475092582852181e-08, 6.205049331564196207e-08, 6.212611498916519477e-08, 6.220161585172409010e-08, 6.227699580885247804e-08, 6.235225476632687676e-08, 6.242739263012411450e-08, 6.250240930645599170e-08, 6.257730470176924136e-08, 6.265207872270415672e-08, 6.272673127616620530e-08, 6.280126226924705626e-08, 6.287567160927796997e-08, 6.294995920382499377e-08, 6.302412496065255273e-08, 6.309816878777492020e-08, 6.317209059342017915e-08, 6.324589028602617234e-08, 6.331956777429153601e-08, 6.339312296709989048e-08, 6.346655577358903210e-08, 6.353986610310265244e-08, 6.361305386522804440e-08, 6.368611896975598737e-08, 6.375906132671292113e-08, 6.383188084636154152e-08, 6.390457743916081778e-08, 6.397715101583560808e-08, 6.404960148729928838e-08, 6.412192876470613607e-08, 6.419413275944619490e-08, 6.426621338311071865e-08, 6.433817054754152400e-08, 6.441000416479577255e-08, 6.448171414714331058e-08, 6.455330040711467198e-08, 6.462476285742816726e-08, 6.469610141105636241e-08, 6.476731598118797563e-08, 6.483840648122779793e-08, 6.490937282482811276e-08, 6.498021492585028836e-08, 6.505093269839719001e-08, 6.512152605679081305e-08, 6.519199491556964916e-08, 6.526233918952076771e-08, 6.533255879364032286e-08, 6.540265364316972452e-08, 6.547262365355249259e-08, 6.554246874048511866e-08, 6.561218881987988920e-08, 6.568178380786358855e-08, 6.575125362082497243e-08, 6.582059817534255844e-08, 6.588981738825033723e-08, 6.595891117659947079e-08, 6.602787945765939088e-08, 6.609672214894810698e-08, 6.616543916819418242e-08, 6.623403043336847167e-08, 6.630249586266297096e-08, 6.637083537448814486e-08, 6.643904888750340621e-08, 6.650713632057886729e-08, 6.657509759283159020e-08, 6.664293262358598805e-08, 6.671064133240569459e-08, 6.677822363909012313e-08, 6.684567946365372746e-08, 6.691300872635690534e-08, 6.698021134766581735e-08, 6.704728724829937078e-08, 6.711423634919520591e-08, 6.718105857151055636e-08, 6.724775383665185544e-08, 6.731432206623852558e-08, 6.738076318213283617e-08, 6.744707710641954836e-08, 6.751326376140357245e-08, 6.757932306963974639e-08, 6.764525495389547369e-08, 6.771105933718498859e-08, 6.777673614273233799e-08, 6.784228529400206001e-08, 6.790770671469498847e-08, 6.797300032872841382e-08, 6.803816606026766159e-08, 6.810320383368765824e-08, 6.816811357360363615e-08, 6.823289520487138503e-08, 6.829754865255412502e-08, 6.836207384196855090e-08, 6.842647069864887284e-08, 6.849073914835989248e-08, 6.855487911711113784e-08, 6.861889053111883943e-08, 6.868277331685384057e-08, 6.874652740100131040e-08, 6.881015271049372520e-08, 6.887364917247546506e-08, 6.893701671433116304e-08, 6.900025526368434195e-08, 6.906336474837566946e-08, 6.912634509649394093e-08, 6.918919623633989524e-08, 6.925191809645511983e-08, 6.931451060562301677e-08, 6.937697369283212895e-08, 6.943930728733862195e-08, 6.950151131859834938e-08, 6.956358571631117651e-08, 6.962553041041865093e-08, 6.968734533107225205e-08, 6.974903040867719858e-08, 6.981058557386129364e-08, 6.987201075747507027e-08, 6.993330589062045826e-08, 6.999447090461518228e-08, 7.005550573102238156e-08, 7.011641030163046638e-08, 7.017718454845164902e-08, 7.023782840374883705e-08, 7.029834180000152697e-08, 7.035872466993840184e-08, 7.041897694649491336e-08, 7.047909856287340805e-08, 7.053908945247807770e-08, 7.059894954895834341e-08, 7.065867878620528211e-08, 7.071827709832187455e-08, 7.077774441966474815e-08, 7.083708068481486171e-08, 7.089628582857414376e-08, 7.095535978600736773e-08, 7.101430249237920682e-08, 7.107311388321197785e-08, 7.113179389425181283e-08, 7.119034246146914873e-08, 7.124875952108618977e-08, 7.130704500954305268e-08, 7.136519886352816717e-08, 7.142322101994566518e-08, 7.148111141594183744e-08, 7.153886998890293647e-08, 7.159649667643625066e-08, 7.165399141639858582e-08, 7.171135414685867800e-08, 7.176858480614003493e-08, 7.182568333279107800e-08, 7.188264966558233658e-08, 7.193948374354747607e-08, 7.199618550592155723e-08, 7.205275489219736379e-08, 7.210919184209296379e-08, 7.216549629555170959e-08, 7.222166819276779437e-08, 7.227770747415595754e-08, 7.233361408037573104e-08, 7.238938795231613978e-08, 7.244502903109028859e-08, 7.250053725806461134e-08, 7.255591257482423521e-08, 7.261115492320330184e-08, 7.266626424525333591e-08, 7.272124048326844443e-08, 7.277608357978622989e-08, 7.283079347755564274e-08, 7.288537011959140325e-08, 7.293981344911519890e-08, 7.299412340959391998e-08, 7.304829994473746258e-08, 7.310234299847113386e-08, 7.315625251497425823e-08, 7.321002843864743420e-08, 7.326367071413618517e-08, 7.331717928631691719e-08, 7.337055410029087061e-08, 7.342379510141190012e-08, 7.347690223525445958e-08, 7.352987544764196432e-08, 7.358271468461598040e-08, 7.363541989246147670e-08, 7.368799101770441623e-08, 7.374042800709440518e-08, 7.379273080762978623e-08, 7.384489936652780715e-08, 7.389693363124899946e-08, 7.394883354949737695e-08, 7.400059906919292032e-08, 7.405223013850982606e-08, 7.410372670585011603e-08, 7.415508871983968027e-08, 7.420631612936657874e-08, 7.425740888352516364e-08, 7.430836693166610726e-08, 7.435919022336260012e-08, 7.440987870843593395e-08, 7.446043233692806583e-08, 7.451085105912323071e-08, 7.456113482554710765e-08, 7.461128358695002472e-08, 7.466129729433133768e-08, 7.471117589890990294e-08, 7.476091935214828416e-08, 7.481052760575199789e-08, 7.486000061164525398e-08, 7.490933832200473105e-08, 7.495854068923300082e-08, 7.500760766596865279e-08, 7.505653920509550574e-08, 7.510533525971599236e-08, 7.515399578318515968e-08, 7.520252072908811682e-08, 7.525091005123591893e-08, 7.529916370369218259e-08, 7.534728164074322783e-08, 7.539526381692112014e-08, 7.544311018698913854e-08, 7.549082070593816242e-08, 7.553839532901164585e-08, 7.558583401167483315e-08, 7.563313670964241984e-08, 7.568030337884659041e-08, 7.572733397547406274e-08, 7.577422845593683900e-08, 7.582098677688330972e-08, 7.586760889520710795e-08, 7.591409476802192326e-08, 7.596044435269374190e-08, 7.600665760681735491e-08, 7.605273448821618605e-08, 7.609867495496464553e-08, 7.614447896536140878e-08, 7.619014647794944079e-08, 7.623567745150550092e-08, 7.628107184503303570e-08, 7.632632961778692810e-08, 7.637145072924614101e-08, 7.641643513913769885e-08, 7.646128280741050899e-08, 7.650599369425660371e-08, 7.655056776010879764e-08, 7.659500496562777051e-08, 7.663930527172087393e-08, 7.668346863951783212e-08, 7.672749503039186481e-08, 7.677138440595964752e-08, 7.681513672805676087e-08, 7.685875195877216741e-08, 7.690223006041942579e-08, 7.694557099555739011e-08, 7.698877472697641916e-08, 7.703184121769599414e-08, 7.707477043098631799e-08, 7.711756233034154125e-08, 7.716021687950384951e-08, 7.720273404243840977e-08, 7.724511378335281254e-08, 7.728735606669602622e-08, 7.732946085714324321e-08, 7.737142811961832622e-08, 7.741325781926729884e-08, 7.745494992147880668e-08, 7.749650439188501727e-08, 7.753792119633667240e-08, 7.757920030094472500e-08, 7.762034167203421557e-08, 7.766134527617551979e-08, 7.770221108018152943e-08, 7.774293905108621188e-08, 7.778352915617495772e-08, 7.782398136295878595e-08, 7.786429563919582417e-08, 7.790447195286675790e-08, 7.794451027219525202e-08, 7.798441056564589932e-08, 7.802417280191028418e-08, 7.806379694992741726e-08, 7.810328297885898625e-08, 7.814263085811018756e-08, 7.818184055732825726e-08, 7.822091204637931005e-08, 7.825984529538936737e-08, 7.829864027469929265e-08, 7.833729695489429184e-08, 7.837581530680223260e-08, 7.841419530147265376e-08, 7.845243691020540562e-08, 7.849054010453046674e-08, 7.852850485620527050e-08, 7.856633113724435125e-08, 7.860401891987539123e-08, 7.864156817657805177e-08, 7.867897888006360475e-08, 7.871625100327109451e-08, 7.875338451938906954e-08, 7.879037940183157436e-08, 7.882723562425892835e-08, 7.886395316055054124e-08, 7.890053198484510747e-08, 7.893697207149554145e-08, 7.897327339510047651e-08, 7.900943593049989745e-08, 7.904545965275456026e-08, 7.908134453717624710e-08, 7.911709055930635222e-08, 7.915269769491369821e-08, 7.918816592002317632e-08, 7.922349521087387126e-08, 7.925868554395602623e-08, 7.929373689598995977e-08, 7.932864924392565545e-08, 7.936342256496054957e-08, 7.939805683651832888e-08, 7.943255203626565949e-08, 7.946690814210079157e-08, 7.950112513215317562e-08, 7.953520298479810020e-08, 7.956914167863703812e-08, 7.960294119251707532e-08, 7.963660150550669093e-08, 7.967012259692394765e-08, 7.970350444631605708e-08, 7.973674703345918115e-08, 7.976985033838283730e-08, 7.980281434133133199e-08, 7.983563902279950816e-08, 7.986832436351211200e-08, 7.990087034442348857e-08, 7.993327694673420484e-08, 7.996554415187159436e-08, 7.999767194150516271e-08, 8.002966029753557603e-08, 8.006150920209353612e-08, 8.009321863755619163e-08, 8.012478858652645197e-08, 8.015621903185103969e-08, 8.018750995660124696e-08, 8.021866134408921445e-08, 8.024967317786524469e-08, 8.028054544170735972e-08, 8.031127811963789766e-08, 8.034187119590286624e-08, 8.037232465498881733e-08, 8.040263848162252929e-08, 8.043281266075328542e-08, 8.046284717757743798e-08, 8.049274201751727200e-08, 8.052249716623652987e-08, 8.055211260963053806e-08, 8.058158833382408955e-08, 8.061092432518680959e-08, 8.064012057031367385e-08, 8.066917705604466231e-08, 8.069809376944191580e-08, 8.072687069780823838e-08, 8.075550782868407980e-08, 8.078400514983770198e-08, 8.081236264927963147e-08, 8.084058031524469976e-08, 8.086865813620813685e-08, 8.089659610088350665e-08, 8.092439419820657365e-08, 8.095205241735940361e-08, 8.097957074775188771e-08, 8.100694917902756586e-08, 8.103418770106999269e-08, 8.106128630398692188e-08, 8.108824497813006582e-08, 8.111506371408076225e-08, 8.114174250264904779e-08, 8.116828133488903692e-08, 8.119468020207986369e-08, 8.122093909574124600e-08, 8.124705800761998598e-08, 8.127303692970553422e-08, 8.129887585420978012e-08, 8.132457477358400576e-08, 8.135013368051757564e-08, 8.137555256792227984e-08, 8.140083142895394656e-08, 8.142597025699571323e-08, 8.145096904566513367e-08, 8.147582778881781762e-08, 8.150054648053229011e-08, 8.152512511513090253e-08, 8.154956368716524779e-08, 8.157386219141466479e-08, 8.159802062290096885e-08, 8.162203897687099488e-08, 8.164591724881140723e-08, 8.166965543443849559e-08, 8.169325352969632209e-08, 8.171671153077110766e-08, 8.174002943407448987e-08, 8.176320723625830628e-08, 8.178624493419419953e-08, 8.180914252500450753e-08, 8.183190000602750865e-08, 8.185451737484121806e-08, 8.187699462925950990e-08, 8.189933176731886914e-08, 8.192152878729837630e-08, 8.194358568770438144e-08, 8.196550246727233052e-08, 8.198727912497739309e-08, 8.200891566001994358e-08, 8.203041207183858444e-08, 8.205176836010015378e-08, 8.207298452469988422e-08, 8.209406056577312897e-08, 8.211499648367994321e-08, 8.213579227901940423e-08, 8.215644795261382220e-08, 8.217696350552110157e-08, 8.219733893903385432e-08, 8.221757425467020172e-08, 8.223766945418685040e-08, 8.225762453956351487e-08, 8.227743951301649655e-08, 8.229711437699571913e-08, 8.231664913417235394e-08, 8.233604378746359570e-08, 8.235529834000280455e-08, 8.237441279516512886e-08, 8.239338715655284094e-08, 8.241222142799414590e-08, 8.243091561355787238e-08, 8.244946971753568485e-08, 8.246788374445668173e-08, 8.248615769907287667e-08, 8.250429158637092468e-08, 8.252228541157046777e-08, 8.254013918011615432e-08, 8.255785289769019898e-08, 8.257542657019658021e-08, 8.259286020377419576e-08, 8.261015380479500980e-08, 8.262730737985187680e-08, 8.264432093578090851e-08, 8.266119447963528212e-08, 8.267792801870473521e-08, 8.269452156051101301e-08, 8.271097511279763777e-08, 8.272728868354589657e-08, 8.274346228096139459e-08, 8.275949591348337257e-08, 8.277538958977855250e-08, 8.279114331873917891e-08, 8.280675710949499642e-08, 8.282223097139784433e-08, 8.283756491403493124e-08, 8.285275894721611628e-08, 8.286781308098322651e-08, 8.288272732561085099e-08, 8.289750169159307942e-08, 8.291213618966568383e-08, 8.292663083078162080e-08, 8.294098562612717799e-08, 8.295520058712028014e-08, 8.296927572540008638e-08, 8.298321105284170747e-08, 8.299700658154491640e-08, 8.301066232383368522e-08, 8.302417829227202717e-08, 8.303755449963910185e-08, 8.305079095895058958e-08, 8.306388768344786527e-08, 8.307684468659618520e-08, 8.308966198209546026e-08, 8.310233958386764309e-08, 8.311487750606764685e-08, 8.312727576307237351e-08, 8.313953436949255908e-08, 8.315165334015926078e-08, 8.316363269013447141e-08, 8.317547243471056351e-08, 8.318717258939921174e-08, 8.319873316994814824e-08, 8.321015419232719986e-08, 8.322143567272975719e-08, 8.323257762758596978e-08, 8.324358007354213938e-08, 8.325444302747887825e-08, 8.326516650650056092e-08, 8.327575052793486097e-08, 8.328619510934239931e-08, 8.329650026850459448e-08, 8.330666602343346975e-08, 8.331669239236459894e-08, 8.332657939375797985e-08, 8.333632704630388416e-08, 8.334593536891469147e-08, 8.335540438073347873e-08, 8.336473410112277061e-08, 8.337392454967375096e-08, 8.338297574620515110e-08, 8.339188771075757203e-08, 8.340066046360116070e-08, 8.340929402522532646e-08, 8.341778841635065249e-08, 8.342614365792111366e-08, 8.343435977110203841e-08, 8.344243677728892309e-08, 8.345037469809853823e-08, 8.345817355537512237e-08, 8.346583337118616020e-08, 8.347335416782092667e-08, 8.348073596779874560e-08, 8.348797879385905025e-08, 8.349508266896888753e-08, 8.350204761631528145e-08, 8.350887365931174467e-08, 8.351556082159711387e-08, 8.352210912703085134e-08, 8.352851859970101238e-08, 8.353478926391404121e-08, 8.354092114420216927e-08, 8.354691426532324316e-08, 8.355276865225442485e-08, 8.355848433020002672e-08, 8.356406132458458971e-08, 8.356949966105833611e-08, 8.357479936549396671e-08, 8.357996046398423879e-08, 8.358498298284880860e-08, 8.358986694862713745e-08, 8.359461238808435473e-08, 8.359921932820385964e-08, 8.360368779619404453e-08, 8.360801781948716988e-08, 8.361220942573411010e-08, 8.361626264281195032e-08, 8.362017749881550285e-08, 8.362395402206383199e-08, 8.362759224109914224e-08, 8.363109218468061094e-08, 8.363445388179641867e-08, 8.363767736164946891e-08, 8.364076265366674502e-08, 8.364370978749778830e-08, 8.364651879301019808e-08, 8.364918970029590506e-08, 8.365172253966657884e-08, 8.365411734165246321e-08, 8.365637413700908625e-08, 8.365849295670917383e-08, 8.366047383194799648e-08, 8.366231679413938571e-08, 8.366402187492018092e-08, 8.366558910614437958e-08, 8.366701851988730622e-08, 8.366831014844649917e-08, 8.366946402433527841e-08, 8.367048018029145411e-08, 8.367135864926869751e-08, 8.367209946444138485e-08, 8.367270265920502093e-08, 8.367316826717162010e-08, 8.367349632217482817e-08, 8.367368685826752692e-08, 8.367373990971827387e-08, 8.367365551102014322e-08, 8.367343369687933061e-08, 8.367307450222494692e-08, 8.367257796220278464e-08, 8.367194411217600610e-08, 8.367117298772929921e-08, 8.367026462466284237e-08, 8.366921905899718810e-08, 8.366803632696770445e-08, 8.366671646503206588e-08, 8.366525950986121390e-08, 8.366366549834641121e-08, 8.366193446759716385e-08, 8.366006645493787274e-08, 8.365806149791234685e-08, 8.365591963428105026e-08, 8.365364090202009635e-08, 8.365122533932574767e-08, 8.364867298460777200e-08, 8.364598387649460398e-08, 8.364315805383187601e-08, 8.364019555567917574e-08, 8.363709642131523411e-08, 8.363386069023294905e-08, 8.363048840214328976e-08, 8.362697959697189538e-08, 8.362333431485967051e-08, 8.361955259616581603e-08, 8.361563448146289246e-08, 8.361158001154044637e-08, 8.360738922740231041e-08, 8.360306217026797977e-08, 8.359859888157316802e-08, 8.359399940296643225e-08, 8.358926377631379200e-08, 8.358439204369437501e-08, 8.357938424740320981e-08, 8.357424042994881688e-08, 8.356896063405410874e-08, 8.356354490265742216e-08, 8.355799327891020214e-08, 8.355230580617848417e-08, 8.354648252804289425e-08, 8.354052348829614747e-08, 8.353442873094643618e-08, 8.352819830021414773e-08, 8.352183224053448492e-08, 8.351533059655438237e-08, 8.350869341313455783e-08, 8.350192073535001520e-08, 8.349501260848710628e-08, 8.348796907804572786e-08, 8.348079018973822315e-08, 8.347347598948901127e-08, 8.346602652343626801e-08, 8.345844183792888186e-08, 8.345072197952879656e-08, 8.344286699501021702e-08, 8.343487693135840492e-08, 8.342675183577122723e-08, 8.341849175565740916e-08, 8.341009673863771213e-08, 8.340156683254399401e-08, 8.339290208541909006e-08, 8.338410254551812320e-08, 8.337516826130568491e-08, 8.336609928145827052e-08, 8.335689565486241304e-08, 8.334755743061556994e-08, 8.333808465802548784e-08, 8.332847738661025546e-08, 8.331873566609785365e-08, 8.330885954642724064e-08, 8.329884907774630061e-08, 8.328870431041287605e-08, 8.327842529499463539e-08, 8.326801208226838479e-08, 8.325746472322110044e-08, 8.324678326904726840e-08, 8.323596777115309324e-08, 8.322501828115115118e-08, 8.321393485086453257e-08, 8.320271753232366558e-08, 8.319136637776855284e-08, 8.317988143964724946e-08, 8.316826277061526741e-08, 8.315651042353814318e-08, 8.314462445148750694e-08, 8.313260490774358394e-08, 8.312045184579430782e-08, 8.310816531933489704e-08, 8.309574538226811962e-08, 8.308319208870421372e-08, 8.307050549295953763e-08, 8.305768564955949478e-08, 8.304473261323420584e-08, 8.303164643892149984e-08, 8.301842718176585541e-08, 8.300507489711736839e-08, 8.299158964053364448e-08, 8.297797146777634491e-08, 8.296422043481585835e-08, 8.295033659782660252e-08, 8.293632001318881095e-08, 8.292217073748891671e-08, 8.290788882751752754e-08, 8.289347434027217867e-08, 8.287892733295442116e-08, 8.286424786297025866e-08, 8.284943598793245025e-08, 8.283449176565626206e-08, 8.281941525416306718e-08, 8.280420651167742070e-08, 8.278886559662883324e-08, 8.277339256765102974e-08, 8.275778748358041427e-08, 8.274205040345941842e-08, 8.272618138653163086e-08, 8.271018049224551637e-08, 8.269404778025314526e-08, 8.267778331040857874e-08, 8.266138714277006589e-08, 8.264485933759685408e-08, 8.262819995535394025e-08, 8.261140905670673730e-08, 8.259448670252352250e-08, 8.257743295387465667e-08, 8.256024787203258415e-08, 8.254293151847275926e-08, 8.252548395487148902e-08, 8.250790524310589341e-08, 8.249019544525774352e-08, 8.247235462360591766e-08, 8.245438284063414376e-08, 8.243628015902463339e-08, 8.241804664166185371e-08, 8.239968235163136278e-08, 8.238118735221742733e-08, 8.236256170690761521e-08, 8.234380547938623089e-08, 8.232491873354094619e-08, 8.230590153345792978e-08, 8.228675394342253545e-08, 8.226747602792103583e-08, 8.224806785163760485e-08, 8.222852947945761326e-08, 8.220886097646559042e-08, 8.218906240794239204e-08, 8.216913383937197646e-08, 8.214907533643180932e-08, 8.212888696500264421e-08, 8.210856879116136251e-08, 8.208812088118183371e-08, 8.206754330154019615e-08, 8.204683611890609545e-08, 8.202599940014837559e-08, 8.200503321233597883e-08, 8.198393762272987246e-08, 8.196271269879407343e-08, 8.194135850818496784e-08, 8.191987511875972827e-08, 8.189826259856878319e-08, 8.187652101586263289e-08, 8.185465043908623789e-08, 8.183265093687969393e-08, 8.181052257808314211e-08, 8.178826543172705448e-08, 8.176587956704280871e-08, 8.174336505345584566e-08, 8.172072196058490178e-08, 8.169795035824803093e-08, 8.167505031645437232e-08, 8.165202190540993414e-08, 8.162886519551754064e-08, 8.160558025736879854e-08, 8.158216716175730541e-08, 8.155862597966517665e-08, 8.153495678227040397e-08, 8.151115964094719961e-08, 8.148723462725980231e-08, 8.146318181296906836e-08, 8.143900127002699233e-08, 8.141469307057987020e-08, 8.139025728696974197e-08, 8.136569399172715216e-08, 8.134100325757833641e-08, 8.131618515743970245e-08, 8.129123976442440791e-08, 8.126616715183320173e-08, 8.124096739316028725e-08, 8.121564056209647208e-08, 8.119018673251550973e-08, 8.116460597849109318e-08, 8.113889837428294503e-08, 8.111306399434417607e-08, 8.108710291332067651e-08, 8.106101520604488233e-08, 8.103480094754484119e-08, 8.100846021303470975e-08, 8.098199307792154320e-08, 8.095539961780440851e-08, 8.092867990846787288e-08, 8.090183402589052697e-08, 8.087486204623650137e-08, 8.084776404586365899e-08, 8.082054010131869815e-08, 8.079319028933420118e-08, 8.076571468683521221e-08, 8.073811337093199762e-08, 8.071038641892904581e-08, 8.068253390831353960e-08, 8.065455591676299277e-08, 8.062645252214695733e-08, 8.059822380251640917e-08, 8.056986983611486537e-08, 8.054139070137040352e-08, 8.051278647689979107e-08, 8.048405724150961021e-08, 8.045520307418843615e-08, 8.042622405411620734e-08, 8.039712026065531844e-08, 8.036789177335969942e-08, 8.033853867196705994e-08, 8.030906103639940549e-08, 8.027945894676834460e-08, 8.024973248336716114e-08, 8.021988172667948313e-08, 8.018990675737282420e-08, 8.015980765629597623e-08, 8.012958450449011347e-08, 8.009923738317457825e-08, 8.006876637375680716e-08, 8.003817155782943260e-08, 8.000745301716514765e-08, 7.997661083372786307e-08, 7.994564508965891656e-08, 7.991455586728775331e-08, 7.988334324912301891e-08, 7.985200731786223406e-08, 7.982054815638389336e-08, 7.978896584774734617e-08, 7.975726047519814350e-08, 7.972543212216079856e-08, 7.969348087224774676e-08, 7.966140680925062390e-08, 7.962921001714026621e-08, 7.959689058007662324e-08, 7.956444858239458333e-08, 7.953188410861413798e-08, 7.949919724343768193e-08, 7.946638807174368693e-08, 7.943345667859960569e-08, 7.940040314924630768e-08, 7.936722756910805825e-08, 7.933393002379325978e-08, 7.930051059908427402e-08, 7.926696938094846002e-08, 7.923330645552966409e-08, 7.919952190915273290e-08, 7.916561582832576337e-08, 7.913158829972977952e-08, 7.909743941022992916e-08, 7.906316924686533272e-08, 7.902877789686217254e-08, 7.899426544761452880e-08, 7.895963198670421858e-08, 7.892487760188750805e-08, 7.889000238109572126e-08, 7.885500641244549719e-08, 7.881988978422318582e-08, 7.878465258489552865e-08, 7.874929490311163076e-08, 7.871381682768939500e-08, 7.867821844762944510e-08, 7.864249985210470984e-08, 7.860666113046708017e-08, 7.857070237224813712e-08, 7.853462366714844484e-08, 7.849842510505000453e-08, 7.846210677600605043e-08, 7.842566877025113476e-08, 7.838911117819178390e-08, 7.835243409040739835e-08, 7.831563759765749225e-08, 7.827872179086967604e-08, 7.824168676115504870e-08, 7.820453259979055561e-08, 7.816725939823092641e-08, 7.812986724810949560e-08, 7.809235624122143390e-08, 7.805472646954907982e-08, 7.801697802523773312e-08, 7.797911100061014692e-08, 7.794112548816531014e-08, 7.790302158056870662e-08, 7.786479937066320744e-08, 7.782645895145839032e-08, 7.778800041614395987e-08, 7.774942385807717436e-08, 7.771072937078509574e-08, 7.767191704797098202e-08, 7.763298698350393762e-08, 7.759393927143095712e-08, 7.755477400596707850e-08, 7.751549128149358316e-08, 7.747609119257325582e-08, 7.743657383392445731e-08, 7.739693930044897078e-08, 7.735718768721409496e-08, 7.731731908945212790e-08, 7.727733360257468719e-08, 7.723723132215300322e-08, 7.719701234393438330e-08, 7.715667676383031359e-08, 7.711622467792294415e-08, 7.707565618246766971e-08, 7.703497137388001399e-08, 7.699417034875062472e-08, 7.695325320383074182e-08, 7.691222003604838361e-08, 7.687107094249464872e-08, 7.682980602042341171e-08, 7.678842536726768137e-08, 7.674692908061208536e-08, 7.670531725822115324e-08, 7.666358999802118458e-08, 7.662174739810038140e-08, 7.657978955672278445e-08, 7.653771657230850029e-08, 7.649552854344794205e-08, 7.645322556890225294e-08, 7.641080774758465829e-08, 7.636827517858844410e-08, 7.632562796116015641e-08, 7.628286619471856685e-08, 7.623998997883992904e-08, 7.619699941327317217e-08, 7.615389459792694411e-08, 7.611067563287179513e-08, 7.606734261834646447e-08, 7.602389565474632630e-08, 7.598033484263921863e-08, 7.593666028275122906e-08, 7.589287207596697268e-08, 7.584897032334381963e-08, 7.580495512609180447e-08, 7.576082658558740376e-08, 7.571658480337467420e-08, 7.567222988114475186e-08, 7.562776192076715263e-08, 7.558318102426036434e-08, 7.553848729380866825e-08, 7.549368083176186119e-08, 7.544876174062183532e-08, 7.540373012305797035e-08, 7.535858608189411035e-08, 7.531332972011720622e-08, 7.526796114087928762e-08, 7.522248044748197815e-08, 7.517688774339442868e-08, 7.513118313223796481e-08, 7.508536671780305407e-08, 7.503943860402824913e-08, 7.499339889501711530e-08, 7.494724769503178507e-08, 7.490098510848594370e-08, 7.485461123996272270e-08, 7.480812619419136679e-08, 7.476153007606466420e-08, 7.471482299063620711e-08, 7.466800504310764636e-08, 7.462107633884585720e-08, 7.457403698336744117e-08, 7.452688708234915520e-08, 7.447962674162852045e-08, 7.443225606719033592e-08, 7.438477516518242798e-08, 7.433718414189996703e-08, 7.428948310380396989e-08, 7.424167215750578846e-08, 7.419375140976782447e-08, 7.414572096751423647e-08, 7.409758093781582556e-08, 7.404933142790735991e-08, 7.400097254517271197e-08, 7.395250439714406435e-08, 7.390392709152053132e-08, 7.385524073614138465e-08, 7.380644543900832790e-08, 7.375754130826887341e-08, 7.370852845222773755e-08, 7.365940697934658924e-08, 7.361017699822894895e-08, 7.356083861763985576e-08, 7.351139194648687525e-08, 7.346183709384037541e-08, 7.341217416891645357e-08, 7.336240328107954374e-08, 7.331252453985176037e-08, 7.326253805489729449e-08, 7.321244393604165716e-08, 7.316224229325559917e-08, 7.311193323665430361e-08, 7.306151687651579570e-08, 7.301099332325465822e-08, 7.296036268744345884e-08, 7.290962507980300924e-08, 7.285878061119611823e-08, 7.280782939264748378e-08, 7.275677153531705121e-08, 7.270560715052317423e-08, 7.265433634972215380e-08, 7.260295924453060513e-08, 7.255147594670655819e-08, 7.249988656815174741e-08, 7.244819122092312599e-08, 7.239639001721470766e-08, 7.234448306937935129e-08, 7.229247048991004677e-08, 7.224035239144188700e-08, 7.218812888676998793e-08, 7.213580008881497197e-08, 7.208336611066242120e-08, 7.203082706553512380e-08, 7.197818306679655482e-08, 7.192543422796740659e-08, 7.187258066270040268e-08, 7.181962248479911794e-08, 7.176655980821637707e-08, 7.171339274703800217e-08, 7.166012141550339303e-08, 7.160674592798783202e-08, 7.155326639901394556e-08, 7.149968294325334521e-08, 7.144599567550960763e-08, 7.139220471073814012e-08, 7.133831016402716212e-08, 7.128431215062353967e-08, 7.123021078589378223e-08, 7.117600618536667225e-08, 7.112169846470453219e-08, 7.106728773970456130e-08, 7.101277412632054080e-08, 7.095815774063199660e-08, 7.090343869886566629e-08, 7.084861711739637263e-08, 7.079369311271990530e-08, 7.073866680149350636e-08, 7.068353830049850825e-08, 7.062830772666197272e-08, 7.057297519705661154e-08, 7.051754082888107966e-08, 7.046200473948442008e-08, 7.040636704634500715e-08, 7.035062786708482703e-08, 7.029478731946918646e-08, 7.023884552139007658e-08, 7.018280259088705753e-08, 7.012665864612659883e-08, 7.007041380542754327e-08, 7.001406818723079902e-08, 6.995762191012048902e-08, 6.990107509282598911e-08, 6.984442785419124955e-08, 6.978768031322083927e-08, 6.973083258903739561e-08, 6.967388480090552660e-08, 6.961683706823212855e-08, 6.955968951054613670e-08, 6.950244224752249359e-08, 6.944509539896155558e-08, 6.938764908480390269e-08, 6.933010342512963713e-08, 6.927245854014029125e-08, 6.921471455018205473e-08, 6.915687157572389733e-08, 6.909892973738110050e-08, 6.904088915589553744e-08, 6.898274995213720829e-08, 6.892451224711869267e-08, 6.886617616197267682e-08, 6.880774181797794694e-08, 6.874920933653821335e-08, 6.869057883918262665e-08, 6.863185044758695356e-08, 6.857302428354262047e-08, 6.851410046898389799e-08, 6.845507912596619563e-08, 6.839596037667986585e-08, 6.833674434345261280e-08, 6.827743114872891208e-08, 6.821802091509333056e-08, 6.815851376524968149e-08, 6.809890982204447671e-08, 6.803920920844674341e-08, 6.797941204754887122e-08, 6.791951846258226901e-08, 6.785952857689413775e-08, 6.779944251397453577e-08, 6.773926039743414421e-08, 6.767898235100380376e-08, 6.761860849855950216e-08, 6.755813896408673261e-08, 6.749757387170807531e-08, 6.743691334567237132e-08, 6.737615751034586839e-08, 6.731530649023730109e-08, 6.725436040996488302e-08, 6.719331939428036780e-08, 6.713218356806744767e-08, 6.707095305632077619e-08, 6.700962798417242477e-08, 6.694820847686944957e-08, 6.688669465979329379e-08, 6.682508665843744722e-08, 6.676338459843370425e-08, 6.670158860553149096e-08, 6.663969880559550935e-08, 6.657771532463161148e-08, 6.651563828875093297e-08, 6.645346782419797746e-08, 6.639120405733964479e-08, 6.632884711465493437e-08, 6.626639712276351923e-08, 6.620385420838843688e-08, 6.614121849838249295e-08, 6.607849011972700382e-08, 6.601566919951009146e-08, 6.595275586495263701e-08, 6.588975024338654909e-08, 6.582665246226985158e-08, 6.576346264918733217e-08, 6.570018093182908853e-08, 6.563680743801754077e-08, 6.557334229568251015e-08, 6.550978563289205632e-08, 6.544613757780686995e-08, 6.538239825873040645e-08, 6.531856780407586495e-08, 6.525464634236629417e-08, 6.519063400226042689e-08, 6.512653091251760755e-08, 6.506233720202174736e-08, 6.499805299978229047e-08, 6.493367843490962353e-08, 6.486921363664503947e-08, 6.480465873433539274e-08, 6.474001385744861051e-08, 6.467527913557710737e-08, 6.461045469841352569e-08, 6.454554067577871426e-08, 6.448053719759644958e-08, 6.441544439392035565e-08, 6.435026239491243700e-08, 6.428499133084293308e-08, 6.421963133210735157e-08, 6.415418252920263236e-08, 6.408864505275431874e-08, 6.402301903349460075e-08, 6.395730460226079319e-08, 6.389150189002462435e-08, 6.382561102784200969e-08, 6.375963214690956477e-08, 6.369356537851623175e-08, 6.362741085407043737e-08, 6.356116870510045028e-08, 6.349483906323066417e-08, 6.342842206021003948e-08, 6.336191782788555427e-08, 6.329532649823073860e-08, 6.322864820332189145e-08, 6.316188307534067476e-08, 6.309503124658918796e-08, 6.302809284946654225e-08, 6.296106801649726262e-08, 6.289395688030754449e-08, 6.282675957362483017e-08, 6.275947622930646245e-08, 6.269210698028931255e-08, 6.262465195964567107e-08, 6.255711130054469480e-08, 6.248948513625594038e-08, 6.242177360017566207e-08, 6.235397682578823199e-08, 6.228609494669904214e-08, 6.221812809660960949e-08, 6.215007640933324614e-08, 6.208194001879814302e-08, 6.201371905902201187e-08, 6.194541366414298868e-08, 6.187702396839091400e-08, 6.180855010611658205e-08, 6.173999221176893695e-08, 6.167135041989332580e-08, 6.160262486516142271e-08, 6.153381568231953333e-08, 6.146492300624513430e-08, 6.139594697190949793e-08, 6.132688771437892304e-08, 6.125774536884215765e-08, 6.118852007057220308e-08, 6.111921195495318079e-08, 6.104982115748274114e-08, 6.098034781373349687e-08, 6.091079205941149491e-08, 6.084115403030106656e-08, 6.077143386229770295e-08, 6.070163169140629481e-08, 6.063174765371607882e-08, 6.056178188543136904e-08, 6.049173452284600031e-08, 6.042160570236515261e-08, 6.035139556048091943e-08, 6.028110423380139808e-08, 6.021073185902609924e-08, 6.014027857294564259e-08, 6.006974451246952358e-08, 5.999912981458663376e-08, 5.992843461639218054e-08, 5.985765905509249151e-08, 5.978680326796253034e-08, 5.971586739240668472e-08, 5.964485156590458269e-08, 5.957375592604163214e-08, 5.950258061050862376e-08, 5.943132575707635317e-08, 5.935999150362692139e-08, 5.928857798812678865e-08, 5.921708534864474733e-08, 5.914551372335372193e-08, 5.907386325050510000e-08, 5.900213406846018484e-08, 5.893032631566083392e-08, 5.885844013066076598e-08, 5.878647565210079857e-08, 5.871443301870922528e-08, 5.864231236932023200e-08, 5.857011384284744047e-08, 5.849783757831862996e-08, 5.842548371483420619e-08, 5.835305239159628500e-08, 5.828054374790937400e-08, 5.820795792315216891e-08, 5.813529505681045561e-08, 5.806255528845084544e-08, 5.798973875773712690e-08, 5.791684560443361412e-08, 5.784387596837815427e-08, 5.777082998951455965e-08, 5.769770780786273659e-08, 5.762450956355066749e-08, 5.755123539678780215e-08, 5.747788544786759882e-08, 5.740445985718503396e-08, 5.733095876521013249e-08, 5.725738231251948666e-08, 5.718373063977052080e-08, 5.711000388769961198e-08, 5.703620219715307951e-08, 5.696232570904427078e-08, 5.688837456438945431e-08, 5.681434890428062867e-08, 5.674024886990327705e-08, 5.666607460253959001e-08, 5.659182624353979203e-08, 5.651750393435641993e-08, 5.644310781651309511e-08, 5.636863803163764387e-08, 5.629409472143516444e-08, 5.621947802769003200e-08, 5.614478809228383866e-08, 5.607002505716903609e-08, 5.599518906440048755e-08, 5.592028025610868048e-08, 5.584529877449936910e-08, 5.577024476188353166e-08, 5.569511836063518416e-08, 5.561991971322350147e-08, 5.554464896220162724e-08, 5.546930625019308160e-08, 5.539389171992588740e-08, 5.531840551418902078e-08, 5.524284777586287125e-08, 5.516721864791922848e-08, 5.509151827339341620e-08, 5.501574679541708171e-08, 5.493990435719169294e-08, 5.486399110201124957e-08, 5.478800717323559484e-08, 5.471195271432326457e-08, 5.463582786880377332e-08, 5.455963278027750182e-08, 5.448336759244900927e-08, 5.440703244906905785e-08, 5.433062749399754466e-08, 5.425415287116134857e-08, 5.417760872455693087e-08, 5.410099519828064320e-08, 5.402431243648513179e-08, 5.394756058341018802e-08, 5.387073978338353585e-08, 5.379385018079050412e-08, 5.371689192010946955e-08, 5.363986514588318339e-08, 5.356277000273734652e-08, 5.348560663538324326e-08, 5.340837518858961059e-08, 5.333107580721645328e-08, 5.325370863618395515e-08, 5.317627382051242195e-08, 5.309877150526281703e-08, 5.302120183560232696e-08, 5.294356495675993861e-08, 5.286586101402932439e-08, 5.278809015280044053e-08, 5.271025251851529610e-08, 5.263234825669814173e-08, 5.255437751295929459e-08, 5.247634043295056981e-08, 5.239823716243111087e-08, 5.232006784720742893e-08, 5.224183263316737677e-08, 5.216353166628016204e-08, 5.208516509256820990e-08, 5.200673305814085238e-08, 5.192823570916243236e-08, 5.184967319188751494e-08, 5.177104565263152589e-08, 5.169235323777419265e-08, 5.161359609377764975e-08, 5.153477436715829473e-08, 5.145588820452128494e-08, 5.137693775253108988e-08, 5.129792315791169634e-08, 5.121884456748193235e-08, 5.113970212809330287e-08, 5.106049598670098177e-08, 5.098122629030302393e-08, 5.090189318597423338e-08, 5.082249682086668605e-08, 5.074303734218035494e-08, 5.066351489719854651e-08, 5.058392963325777152e-08, 5.050428169776774287e-08, 5.042457123821408880e-08, 5.034479840212925596e-08, 5.026496333712663561e-08, 5.018506619086965350e-08, 5.010510711110567767e-08, 5.002508624563760312e-08, 4.994500374232293865e-08, 4.986485974910959397e-08, 4.978465441397375511e-08, 4.970438788498823607e-08, 4.962406031027580590e-08, 4.954367183801302027e-08, 4.946322261646254104e-08, 4.938271279392634429e-08, 4.930214251877921786e-08, 4.922151193947097158e-08, 4.914082120448080332e-08, 4.906007046238563739e-08, 4.897925986179743088e-08, 4.889838955140593551e-08, 4.881745967994520683e-08, 4.873647039622984131e-08, 4.865542184912466182e-08, 4.857431418754852928e-08, 4.849314756049310312e-08, 4.841192211699274516e-08, 4.833063800616163021e-08, 4.824929537716284923e-08, 4.816789437920799906e-08, 4.808643516159066667e-08, 4.800491787364003427e-08, 4.792334266475235851e-08, 4.784170968439577471e-08, 4.776001908206199614e-08, 4.767827100733677658e-08, 4.759646560983645567e-08, 4.751460303924366657e-08, 4.743268344530756764e-08, 4.735070697781407715e-08, 4.726867378662100527e-08, 4.718658402162865942e-08, 4.710443783280630079e-08, 4.702223537016101588e-08, 4.693997678377550212e-08, 4.685766222377657544e-08, 4.677529184033573939e-08, 4.669286578370188191e-08, 4.661038420415382825e-08, 4.652784725203784869e-08, 4.644525507775331846e-08, 4.636260783173897340e-08, 4.627990566451026535e-08, 4.619714872661106811e-08, 4.611433716864818072e-08, 4.603147114129028200e-08, 4.594855079523704684e-08, 4.586557628125712377e-08, 4.578254775015636461e-08, 4.569946535279810028e-08, 4.561632924010721720e-08, 4.553313956303814205e-08, 4.544989647261245534e-08, 4.536660011988448731e-08, 4.528325065597873299e-08, 4.519984823205883618e-08, 4.511639299933040855e-08, 4.503288510906157675e-08, 4.494932471255241646e-08, 4.486571196117464382e-08, 4.478204700632405586e-08, 4.469832999945461031e-08, 4.461456109207817418e-08, 4.453074043573293868e-08, 4.444686818202136362e-08, 4.436294448257862548e-08, 4.427896948909372042e-08, 4.419494335331186639e-08, 4.411086622700324899e-08, 4.402673826200100554e-08, 4.394255961016672178e-08, 4.385833042342739689e-08, 4.377405085374453339e-08, 4.368972105311780326e-08, 4.360534117360450314e-08, 4.352091136728867081e-08, 4.343643178631907586e-08, 4.335190258287775380e-08, 4.326732390917903327e-08, 4.318269591750529008e-08, 4.309801876015648922e-08, 4.301329258949317839e-08, 4.292851755790385074e-08, 4.284369381782565091e-08, 4.275882152174826603e-08, 4.267390082218160613e-08, 4.258893187169428462e-08, 4.250391482287790390e-08, 4.241884982838662770e-08, 4.233373704090369017e-08, 4.224857661314535315e-08, 4.216336869788220107e-08, 4.207811344790620595e-08, 4.199281101607039234e-08, 4.190746155525565088e-08, 4.182206521837143307e-08, 4.173662215839413251e-08, 4.165113252829864724e-08, 4.156559648113416274e-08, 4.148001416997284688e-08, 4.139438574791364833e-08, 4.130871136811796458e-08, 4.122299118375862146e-08, 4.113722534805652053e-08, 4.105141401427907074e-08, 4.096555733570849751e-08, 4.087965546568082611e-08, 4.079370855755333039e-08, 4.070771676473286211e-08, 4.062168024064334604e-08, 4.053559913876543169e-08, 4.044947361260328035e-08, 4.036330381568428715e-08, 4.027708990159910339e-08, 4.019083202393204085e-08, 4.010453033633729153e-08, 4.001818499248762921e-08, 3.993179614607785715e-08, 3.984536395086138932e-08, 3.975888856059781377e-08, 3.967237012909051278e-08, 3.958580881018864153e-08, 3.949920475773729867e-08, 3.941255812565226380e-08, 3.932586906785179145e-08, 3.923913773829599809e-08, 3.915236429098600189e-08, 3.906554887993179500e-08, 3.897869165919133283e-08, 3.889179278283438291e-08, 3.880485240498185240e-08, 3.871787067977307804e-08, 3.863084776136937971e-08, 3.854378380397504437e-08, 3.845667896180452338e-08, 3.836953338912633262e-08, 3.828234724021103276e-08, 3.819512066936804210e-08, 3.810785383094879310e-08, 3.802054687929495089e-08, 3.793319996881603586e-08, 3.784581325391823320e-08, 3.775838688904530860e-08, 3.767092102867813174e-08, 3.758341582730129792e-08, 3.749587143944347464e-08, 3.740828801964354010e-08, 3.732066572247352592e-08, 3.723300470254056924e-08, 3.714530511445451375e-08, 3.705756711286779301e-08, 3.696979085243838601e-08, 3.688197648787021665e-08, 3.679412417387955698e-08, 3.670623406519440516e-08, 3.661830631659630111e-08, 3.653034108284754121e-08, 3.644233851877433974e-08, 3.635429877919505609e-08, 3.626622201896116332e-08, 3.617810839295683791e-08, 3.608995805606523064e-08, 3.600177116320958739e-08, 3.591354786931857372e-08, 3.582528832934929037e-08, 3.573699269828982755e-08, 3.564866113112650201e-08, 3.556029378288352197e-08, 3.547189080858621403e-08, 3.538345236330170055e-08, 3.529497860210480659e-08, 3.520646968008118999e-08, 3.511792575235052886e-08, 3.502934697403157487e-08, 3.494073350028360492e-08, 3.485208548627246703e-08, 3.476340308716971347e-08, 3.467468645819100839e-08, 3.458593575454211624e-08, 3.449715113145678666e-08, 3.440833274420020873e-08, 3.431948074801602518e-08, 3.423059529820511300e-08, 3.414167655005363858e-08, 3.405272465888245699e-08, 3.396373978000810871e-08, 3.387472206878453601e-08, 3.378567168056922813e-08, 3.369658877072605350e-08, 3.360747349464812307e-08, 3.351832600772356484e-08, 3.342914646537609542e-08, 3.333993502303229678e-08, 3.325069183611926707e-08, 3.316141706010398112e-08, 3.307211085043915321e-08, 3.298277336260464235e-08, 3.289340475209245058e-08, 3.280400517439075505e-08, 3.271457478502627951e-08, 3.262511373950962765e-08, 3.253562219337394876e-08, 3.244610030217440839e-08, 3.235654822145361218e-08, 3.226696610678326265e-08, 3.217735411372956987e-08, 3.208771239788391666e-08, 3.199804111482746850e-08, 3.190834042017359798e-08, 3.181861046953269323e-08, 3.172885141851248214e-08, 3.163906342275941793e-08, 3.154924663788579453e-08, 3.145940121954983757e-08, 3.136952732340228835e-08, 3.127962510508930229e-08, 3.118969472029073082e-08, 3.109973632466647379e-08, 3.100975007389419888e-08, 3.091973612366929530e-08, 3.082969462967005938e-08, 3.073962574759968891e-08, 3.064952963315129007e-08, 3.055940644203081350e-08, 3.046925632996050201e-08, 3.037907945264424158e-08, 3.028887596580944985e-08, 3.019864602516835743e-08, 3.010838978645993600e-08, 3.001810740541573909e-08, 2.992779903776239688e-08, 2.983746483924502204e-08, 2.974710496559240532e-08, 2.965671957256279504e-08, 2.956630881588957777e-08, 2.947587285131979847e-08, 2.938541183461786631e-08, 2.929492592151080848e-08, 2.920441526776942659e-08, 2.911388002913450552e-08, 2.902332036135928085e-08, 2.893273642020905841e-08, 2.884212836142568848e-08, 2.875149634077099278e-08, 2.866084051398653042e-08, 2.857016103683681645e-08, 2.847945806507363724e-08, 2.838873175444004413e-08, 2.829798226069336560e-08, 2.820720973956973447e-08, 2.811641434682650901e-08, 2.802559623820782581e-08, 2.793475556944321018e-08, 2.784389249629085086e-08, 2.775300717446311080e-08, 2.766209975970822280e-08, 2.757117040775538130e-08, 2.748021927431823632e-08, 2.738924651513411843e-08, 2.729825228590853822e-08, 2.720723674236213375e-08, 2.711620004019516796e-08, 2.702514233511076586e-08, 2.693406378281849120e-08, 2.684296453899909541e-08, 2.675184475934686257e-08, 2.666070459953085768e-08, 2.656954421523706656e-08, 2.647836376213324395e-08, 2.638716339586863893e-08, 2.629594327211692555e-08, 2.620470354650104523e-08, 2.611344437467577259e-08, 2.602216591227272783e-08, 2.593086831490303692e-08, 2.583955173819742999e-08, 2.574821633775030082e-08, 2.565686226915912027e-08, 2.556548968802804283e-08, 2.547409874991232006e-08, 2.538268961040119074e-08, 2.529126242504227983e-08, 2.519981734939281420e-08, 2.510835453897994445e-08, 2.501687414934396342e-08, 2.492537633600228412e-08, 2.483386125445332751e-08, 2.474232906019984565e-08, 2.465077990871340592e-08, 2.455921395547706356e-08, 2.446763135595007416e-08, 2.437603226556733454e-08, 2.428441683977859432e-08, 2.419278523399322021e-08, 2.410113760361895099e-08, 2.400947410406628163e-08, 2.391779489069224806e-08, 2.382610011888341327e-08, 2.373438994398042838e-08, 2.364266452132149278e-08, 2.355092400624195703e-08, 2.345916855403817841e-08, 2.336739832001133500e-08, 2.327561345943141356e-08, 2.318381412756022829e-08, 2.309200047965562625e-08, 2.300017267093550498e-08, 2.290833085662107404e-08, 2.281647519189674010e-08, 2.272460583195787489e-08, 2.263272293195489456e-08, 2.254082664703633923e-08, 2.244891713233312340e-08, 2.235699454294219098e-08, 2.226505903397002818e-08, 2.217311076047674951e-08, 2.208114987751560716e-08, 2.198917654013290502e-08, 2.189719090333158616e-08, 2.180519312211505688e-08, 2.171318335145089331e-08, 2.162116174629467749e-08, 2.152912846159366338e-08, 2.143708365225057284e-08, 2.134502747316715169e-08, 2.125296007920445836e-08, 2.116088162522593356e-08, 2.106879226606156684e-08, 2.097669215651144019e-08, 2.088458145136962034e-08, 2.079246030538790841e-08, 2.070032887332340277e-08, 2.060818730988264454e-08, 2.051603576976081927e-08, 2.042387440764185956e-08, 2.033170337816212852e-08, 2.023952283595427685e-08, 2.014733293561073443e-08, 2.005513383170761915e-08, 1.996292567880839301e-08, 1.987070863142803533e-08, 1.977848284407609580e-08, 1.968624847121682108e-08, 1.959400566731296229e-08, 1.950175458678947833e-08, 1.940949538403714899e-08, 1.931722821343630181e-08, 1.922495322932104477e-08, 1.913267058602238891e-08, 1.904038043783229572e-08, 1.894808293900334295e-08, 1.885577824378860468e-08, 1.876346650638533684e-08, 1.867114788097858946e-08, 1.857882252172531824e-08, 1.848649058273760927e-08, 1.839415221812697624e-08, 1.830180758194766879e-08, 1.820945682824466550e-08, 1.811710011101333730e-08, 1.802473758424337070e-08, 1.793236940188215684e-08, 1.783999571783900345e-08, 1.774761668600849777e-08, 1.765523246023434879e-08, 1.756284319435343963e-08, 1.747044904215908745e-08, 1.737805015740110963e-08, 1.728564669382961142e-08, 1.719323880511862393e-08, 1.710082664494976514e-08, 1.700841036695620674e-08, 1.691599012472621776e-08, 1.682356607184317359e-08, 1.673113836182898683e-08, 1.663870714818406336e-08, 1.654627258438714025e-08, 1.645383482385889972e-08, 1.636139402000563435e-08, 1.626895032618311586e-08, 1.617650389572039801e-08, 1.608405488192363821e-08, 1.599160343803941702e-08, 1.589914971729906178e-08, 1.580669387287807507e-08, 1.571423605794802870e-08, 1.562177642560000652e-08, 1.552931512892888084e-08, 1.543685232097664067e-08, 1.534438815473617358e-08, 1.525192278319142697e-08, 1.515945635926074621e-08, 1.506698903583660906e-08, 1.497452096578983109e-08, 1.488205230191261924e-08, 1.478958319700319072e-08, 1.469711380378860539e-08, 1.460464427496931765e-08, 1.451217476321848992e-08, 1.441970542114583819e-08, 1.432723640134148092e-08, 1.423476785633542531e-08, 1.414229993864174214e-08, 1.404983280072201921e-08, 1.395736659498912339e-08, 1.386490147383111275e-08, 1.377243758957486708e-08, 1.367997509453404949e-08, 1.358751414095245276e-08, 1.349505488104408791e-08, 1.340259746699714962e-08, 1.331014205091692593e-08, 1.321768878491061564e-08, 1.312523782101036913e-08, 1.303278931121725465e-08, 1.294034340750119872e-08, 1.284790026176434541e-08, 1.275546002588523931e-08, 1.266302285168214007e-08, 1.257058889093720425e-08, 1.247815829540013643e-08, 1.238573121675175195e-08, 1.229330780664794319e-08, 1.220088821667917090e-08, 1.210847259841468857e-08, 1.201606110336588508e-08, 1.192365388298604983e-08, 1.183125108871461857e-08, 1.173885287190012156e-08, 1.164645938388490012e-08, 1.155407077594803773e-08, 1.146168719930940333e-08, 1.136930880516984236e-08, 1.127693574465412777e-08, 1.118456816885945927e-08, 1.109220622881864718e-08, 1.099985007552435542e-08, 1.090749985993270639e-08, 1.081515573292670636e-08, 1.072281784536053102e-08, 1.063048634801881004e-08, 1.053816139166093082e-08, 1.044584312698421909e-08, 1.035353170462810618e-08, 1.026122727519777154e-08, 1.016892998922765910e-08, 1.007663999722585218e-08, 9.984357449637270606e-09, 9.892082496843371246e-09, 9.799815289202640163e-09, 9.707555976993505572e-09, 9.615304710454553706e-09, 9.523061639788489358e-09, 9.430826915104984317e-09, 9.338600686505805835e-09, 9.246383104007298221e-09, 9.154174317593008074e-09, 9.061974477172823212e-09, 8.969783732627534549e-09, 8.877602233771794947e-09, 8.785430130358145928e-09, 8.693267572101045620e-09, 8.601114708640194875e-09, 8.508971689584849335e-09, 8.416838664477057875e-09, 8.324715782791583185e-09, 8.232603193976063053e-09, 8.140501047394007688e-09, 8.048409492369288802e-09, 7.956328678169577807e-09, 7.864258753989932886e-09, 7.772199868997200405e-09, 7.680152172272869961e-09, 7.588115812853662480e-09, 7.496090939731048802e-09, 7.404077701814565045e-09, 7.312076247976304169e-09, 7.220086727014036131e-09, 7.128109287675432690e-09, 7.036144078661807927e-09, 6.944191248591447664e-09, 6.852250946043957935e-09, 6.760323319519403909e-09, 6.668408517486897661e-09, 6.576506688327474725e-09, 6.484617980378488055e-09, 6.392742541917187664e-09, 6.300880521144296948e-09, 6.209032066228315656e-09, 6.117197325248510601e-09, 6.025376446235280419e-09, 5.933569577169995099e-09, 5.841776865948084699e-09, 5.749998460423583849e-09, 5.658234508372305674e-09, 5.566485157516046749e-09, 5.474750555526302797e-09, 5.383030849987567510e-09, 5.291326188441762903e-09, 5.199636718347396446e-09, 5.107962587123988102e-09, 5.016303942115304635e-09, 4.924660930593226677e-09, 4.833033699781835403e-09, 4.741422396820630287e-09, 4.649827168809001642e-09, 4.558248162769465753e-09, 4.466685525647388594e-09, 4.375139404351426693e-09, 4.283609945696363157e-09, 4.192097296451746721e-09, 4.100601603304962271e-09, 4.009123012885473853e-09, 3.917661671768588342e-09, 3.826217726438762540e-09, 3.734791323333972315e-09, 3.643382608804893722e-09, 3.551991729159404904e-09, 3.460618830625727751e-09, 3.369264059356306966e-09, 3.277927561451945538e-09, 3.186609482925040286e-09, 3.095309969743989882e-09, 3.004029167796440314e-09, 2.912767222889142204e-09, 2.821524280792204141e-09, 2.730300487161933271e-09, 2.639095987625701963e-09, 2.547910927724986912e-09, 2.456745452919185333e-09, 2.365599708625937125e-09, 2.274473840164139154e-09, 2.183367992802391569e-09, 2.092282311718216558e-09, 2.001216942042399363e-09, 1.910172028822342111e-09, 1.819147717025848167e-09, 1.728144151565242306e-09, 1.637161477260653817e-09, 1.546199838884396197e-09, 1.455259381124248185e-09, 1.364340248583250689e-09, 1.273442585824032711e-09, 1.182566537291655035e-09, 1.091712247398404312e-09, 1.000879860466898538e-09, 9.100695207339223818e-10, 8.192813723906710741e-10, 7.285155595258736739e-10, 6.377722261660383010e-10, 5.470515162792711254e-10, 4.563535737184368585e-10, 3.656785423058624094e-10, 2.750265657562853212e-10, 1.843977877211196952e-10, 9.379235178821740724e-11, 3.210401445284993123e-12, -8.734791987588387761e-11, -1.778824688400328929e-10, -2.683931021561455762e-10, -3.588796766544089485e-10, -4.493420492016180458e-10, -5.397800767579338480e-10, -6.301936163730547248e-10, -7.205825251460702588e-10, -8.109466602821908947e-10, -9.012858790525990735e-10, -9.916000387906401696e-10, -1.081888996948517656e-09, -1.172152611012804052e-09, -1.262390738581284550e-09, -1.352603237318808424e-09, -1.442789964957522298e-09, -1.532950779333356042e-09, -1.623085538341906341e-09, -1.713194099974906876e-09, -1.803276322296311642e-09, -1.893332063438422086e-09, -1.983361181638405684e-09, -2.073363535194172887e-09, -2.163338982504884153e-09, -2.253287382022838025e-09, -2.343208592310055657e-09, -2.433102471998210947e-09, -2.522968879784899539e-09, -2.612807674490079838e-09, -2.702618714971885872e-09, -2.792401860203216778e-09, -2.882156969227735338e-09, -2.971883901160083049e-09, -3.061582515222245465e-09, -3.151252670699618974e-09, -3.240894226977309975e-09, -3.330507043516271534e-09, -3.420090979849525245e-09, -3.509645895618480657e-09, -3.599171650529008264e-09, -3.688668104391746362e-09, -3.778135117078267092e-09, -3.867572548557267662e-09, -3.956980258890873675e-09, -4.046358108210727407e-09, -4.135705956754309721e-09, -4.225023664821066405e-09, -4.314311092808632068e-09, -4.403568101213126272e-09, -4.492794550589242063e-09, -4.581990301606561256e-09, -4.671155215001640829e-09, -4.760289151614359233e-09, -4.849391972364038173e-09, -4.938463538245665701e-09, -5.027503710366104393e-09, -5.116512349900378161e-09, -5.205489318131724339e-09, -5.294434476407926819e-09, -5.383347686177506855e-09, -5.472228808985855172e-09, -5.561077706451552259e-09, -5.649894240302464883e-09, -5.738678272332028761e-09, -5.827429664435482385e-09, -5.916148278609921612e-09, -6.004833976914733135e-09, -6.093486621527527610e-09, -6.182106074700632434e-09, -6.270692198777056336e-09, -6.359244856206807990e-09, -6.447763909503246526e-09, -6.536249221298905467e-09, -6.624700654306040348e-09, -6.713118071316743695e-09, -6.801501335239048979e-09, -6.889850309053250513e-09, -6.978164855848012370e-09, -7.066444838788746095e-09, -7.154690121153545911e-09, -7.242900566289675713e-09, -7.331076037649543975e-09, -7.419216398790999060e-09, -7.507321513333693781e-09, -7.595391245034808002e-09, -7.683425457705849983e-09, -7.771424015268564689e-09, -7.859386781750961668e-09, -7.947313621247921406e-09, -8.035204397977020087e-09, -8.123058976238912609e-09, -8.210877220417671723e-09, -8.298658995016619850e-09, -8.386404164614905399e-09, -8.474112593903428884e-09, -8.561784147661160734e-09, -8.649418690751501708e-09, -8.737016088158066721e-09, -8.824576204941310803e-09, -8.912098906278382664e-09, -8.999584057411774972e-09, -9.087031523724888958e-09, -9.174441170658889530e-09, -9.261812863768485371e-09, -9.349146468718097435e-09, -9.436441851242544711e-09, -9.523698877202518262e-09, -9.610917412545308342e-09, -9.698097323301173077e-09, -9.785238475638574273e-09, -9.872340735781611561e-09, -9.959403970085237924e-09, -1.004642804499199816e-08, -1.013341282703220588e-08, -1.022035818285966286e-08, -1.030726397920862243e-08, -1.039413008293306076e-08, -1.048095636096387188e-08, -1.056774268034431072e-08, -1.065448890822634691e-08, -1.074119491184723571e-08, -1.082786055856500903e-08, -1.091448571581554803e-08, -1.100107025114824954e-08, -1.108761403222584738e-08, -1.117411692678181252e-08, -1.126057880269481923e-08, -1.134699952790284235e-08, -1.143337897047780540e-08, -1.151971699858249272e-08, -1.160601348047106231e-08, -1.169226828452420272e-08, -1.177848127920632140e-08, -1.186465233310105897e-08, -1.195078131488788821e-08, -1.203686809333850094e-08, -1.212291253735217667e-08, -1.220891451591277905e-08, -1.229487389812843083e-08, -1.238079055318829527e-08, -1.246666435039817309e-08, -1.255249515918057191e-08, -1.263828284903210975e-08, -1.272402728959772643e-08, -1.280972835058881742e-08, -1.289538590183852100e-08, -1.298099981329732424e-08, -1.306656995499481089e-08, -1.315209619709420067e-08, -1.323757840984568310e-08, -1.332301646362190184e-08, -1.340841022889454881e-08, -1.349375957623095953e-08, -1.357906437632895726e-08, -1.366432449997441200e-08, -1.374953981808037280e-08, -1.383471020164452248e-08, -1.391983552178419227e-08, -1.400491564973267252e-08, -1.408995045681618897e-08, -1.417493981448915390e-08, -1.425988359429128837e-08, -1.434478166788310498e-08, -1.442963390704583341e-08, -1.451444018364295982e-08, -1.459920036967464050e-08, -1.468391433723914523e-08, -1.476858195852924923e-08, -1.485320310588644152e-08, -1.493777765172001348e-08, -1.502230546858056043e-08, -1.510678642911778884e-08, -1.519122040608072474e-08, -1.527560727235254301e-08, -1.535994690090815945e-08, -1.544423916484967059e-08, -1.552848393737499681e-08, -1.561268109181314350e-08, -1.569683050158205780e-08, -1.578093204022327094e-08, -1.586498558140208684e-08, -1.594899099886939616e-08, -1.603294816651588636e-08, -1.611685695832940889e-08, -1.620071724841097676e-08, -1.628452891099013366e-08, -1.636829182038290003e-08, -1.645200585104575819e-08, -1.653567087753737374e-08, -1.661928677451905218e-08, -1.670285341678887163e-08, -1.678637067924018491e-08, -1.686983843689614600e-08, -1.695325656488682033e-08, -1.703662493844563450e-08, -1.711994343294392929e-08, -1.720321192384913077e-08, -1.728643028676313151e-08, -1.736959839738040872e-08, -1.745271613152261039e-08, -1.753578336513480315e-08, -1.761879997426291341e-08, -1.770176583508818110e-08, -1.778468082388151254e-08, -1.786754481705721737e-08, -1.795035769113469026e-08, -1.803311932273907598e-08, -1.811582958863530948e-08, -1.819848836568658487e-08, -1.828109553088879256e-08, -1.836365096134789753e-08, -1.844615453427618727e-08, -1.852860612702685450e-08, -1.861100561705209224e-08, -1.869335288194148159e-08, -1.877564779938035147e-08, -1.885789024718401393e-08, -1.894008010329423711e-08, -1.902221724575664333e-08, -1.910430155275501391e-08, -1.918633290256976474e-08, -1.926831117361223783e-08, -1.935023624442462525e-08, -1.943210799364274600e-08, -1.951392630004883996e-08, -1.959569104252643031e-08, -1.967740210009466146e-08, -1.975905935188553505e-08, -1.984066267714057141e-08, -1.992221195524478025e-08, -2.000370706568527844e-08, -2.008514788808937675e-08, -2.016653430218322409e-08, -2.024786618782569546e-08, -2.032914342500510973e-08, -2.041036589381650526e-08, -2.049153347449585878e-08, -2.057264604737876604e-08, -2.065370349293469037e-08, -2.073470569176668478e-08, -2.081565252457064172e-08, -2.089654387220671187e-08, -2.097737961562057637e-08, -2.105815963589614155e-08, -2.113888381425183648e-08, -2.121955203200365452e-08, -2.130016417061745099e-08, -2.138072011167172999e-08, -2.146121973685783960e-08, -2.154166292801394913e-08, -2.162204956708382247e-08, -2.170237953615071594e-08, -2.178265271740770898e-08, -2.186286899319132076e-08, -2.194302824594100480e-08, -2.202313035823237849e-08, -2.210317521277777562e-08, -2.218316269238527118e-08, -2.226309268002939866e-08, -2.234296505877360687e-08, -2.242277971182217377e-08, -2.250253652251664297e-08, -2.258223537429884216e-08, -2.266187615076343552e-08, -2.274145873562031020e-08, -2.282098301269164477e-08, -2.290044886596323080e-08, -2.297985617950772376e-08, -2.305920483755451993e-08, -2.313849472444931055e-08, -2.321772572465449545e-08, -2.329689772278253822e-08, -2.337601060355510688e-08, -2.345506425184050206e-08, -2.353405855260605780e-08, -2.361299339098771730e-08, -2.369186865221333677e-08, -2.377068422165432466e-08, -2.384943998482200204e-08, -2.392813582733093537e-08, -2.400677163495070144e-08, -2.408534729356916387e-08, -2.416386268918911808e-08, -2.424231770797957974e-08, -2.432071223619932689e-08, -2.439904616026608527e-08, -2.447731936671728028e-08, -2.455553174220927925e-08, -2.463368317355085593e-08, -2.471177354766324750e-08, -2.478980275161303342e-08, -2.486777067259039046e-08, -2.494567719790564504e-08, -2.502352221502248286e-08, -2.510130561151735419e-08, -2.517902727511660767e-08, -2.525668709365655401e-08, -2.533428495511617934e-08, -2.541182074761732720e-08, -2.548929435938502695e-08, -2.556670567881650709e-08, -2.564405459440152786e-08, -2.572134099479149714e-08, -2.579856476875955400e-08, -2.587572580520117753e-08, -2.595282399316632116e-08, -2.602985922182027705e-08, -2.610683138047576083e-08, -2.618374035857244709e-08, -2.626058604567232398e-08, -2.633736833149294253e-08, -2.641408710586787082e-08, -2.649074225878258701e-08, -2.656733368033539999e-08, -2.664386126076970612e-08, -2.672032489047086252e-08, -2.679672445994435938e-08, -2.687305985984841755e-08, -2.694933098095475364e-08, -2.702553771418122393e-08, -2.710167995059132145e-08, -2.717775758135917295e-08, -2.725377049781931536e-08, -2.732971859143163987e-08, -2.740560175377739832e-08, -2.748141987660938324e-08, -2.755717285177753127e-08, -2.763286057129644752e-08, -2.770848292729952689e-08, -2.778403981207419852e-08, -2.785953111802401449e-08, -2.793495673769934811e-08, -2.801031656379495213e-08, -2.808561048912864719e-08, -2.816083840667298308e-08, -2.823600020951697657e-08, -2.831109579089770979e-08, -2.838612504420081659e-08, -2.846108786292489056e-08, -2.853598414073121853e-08, -2.861081377140524711e-08, -2.868557664887067459e-08, -2.876027266720353612e-08, -2.883490172059428582e-08, -2.890946370339602465e-08, -2.898395851009087721e-08, -2.905838603528910832e-08, -2.913274617376096280e-08, -2.920703882039886339e-08, -2.928126387024836050e-08, -2.935542121848049445e-08, -2.942951076042362206e-08, -2.950353239152520758e-08, -2.957748600738270624e-08, -2.965137150374440800e-08, -2.972518877647433532e-08, -2.979893772160135121e-08, -2.987261823528084092e-08, -2.994623021380889313e-08, -3.001977355363610392e-08, -3.009324815133003601e-08, -3.016665390362344342e-08, -3.023999070737962249e-08, -3.031325845959311336e-08, -3.038645705742059677e-08, -3.045958639814298279e-08, -3.053264637919673114e-08, -3.060563689815348269e-08, -3.067855785271640667e-08, -3.075140914075132246e-08, -3.082419066024925152e-08, -3.089690230936082145e-08, -3.096954398635838775e-08, -3.104211558966746008e-08, -3.111461701786334056e-08, -3.118704816965020607e-08, -3.125940894389259402e-08, -3.133169923957426171e-08, -3.140391895584620251e-08, -3.147606799199257925e-08, -3.154814624743100876e-08, -3.162015362174296906e-08, -3.169209001463739015e-08, -3.176395532598012811e-08, -3.183574945577466204e-08, -3.190747230415841473e-08, -3.197912377143339144e-08, -3.205070375802955235e-08, -3.212221216453782037e-08, -3.219364889167411533e-08, -3.226501384030915231e-08, -3.233630691146523885e-08, -3.240752800629646889e-08, -3.247867702611900420e-08, -3.254975387237426819e-08, -3.262075844665905523e-08, -3.269169065072594761e-08, -3.276255038644678718e-08, -3.283333755587571981e-08, -3.290405206117621816e-08, -3.297469380468468195e-08, -3.304526268887359206e-08, -3.311575861635202665e-08, -3.318618148989526764e-08, -3.325653121240894076e-08, -3.332680768696189761e-08, -3.339701081674971391e-08, -3.346714050512528184e-08, -3.353719665559483968e-08, -3.360717917179912525e-08, -3.367708795754208904e-08, -3.374692291675610629e-08, -3.381668395353059744e-08, -3.388637097211266341e-08, -3.395598387687096097e-08, -3.402552257235825744e-08, -3.409498696324262250e-08, -3.416437695435332678e-08, -3.423369245067789049e-08, -3.430293335732945942e-08, -3.437209957959259765e-08, -3.444119102289059738e-08, -3.451020759278263341e-08, -3.457914919500937060e-08, -3.464801573542475784e-08, -3.471680712005763647e-08, -3.478552325507049374e-08, -3.485416404679086262e-08, -3.492272940167661325e-08, -3.499121922634473224e-08, -3.505963342757201089e-08, -3.512797191225881463e-08, -3.519623458749127384e-08, -3.526442136047352117e-08, -3.533253213857242545e-08, -3.540056682931505066e-08, -3.546852534035625021e-08, -3.553640757952405609e-08, -3.560421345478750476e-08, -3.567194287425340793e-08, -3.573959574621169520e-08, -3.580717197906820074e-08, -3.587467148140529893e-08, -3.594209416194701714e-08, -3.600943992955910858e-08, -3.607670869327803670e-08, -3.614390036227586297e-08, -3.621101484588878139e-08, -3.627805205359924471e-08, -3.634501189503106752e-08, -3.641189427997981361e-08, -3.647869911837700876e-08, -3.654542632032238099e-08, -3.661207579604565801e-08, -3.667864745595145998e-08, -3.674514121058708581e-08, -3.681155697064048817e-08, -3.687789464698342591e-08, -3.694415415060610350e-08, -3.701033539267674794e-08, -3.707643828450746930e-08, -3.714246273755396962e-08, -3.720840866344414346e-08, -3.727427597394394513e-08, -3.734006458098508931e-08, -3.740577439664666782e-08, -3.747140533315212541e-08, -3.753695730289784713e-08, -3.760243021841805940e-08, -3.766782399241699745e-08, -3.773313853773434233e-08, -3.779837376737347085e-08, -3.786352959449790199e-08, -3.792860593241378712e-08, -3.799360269459720037e-08, -3.805851979465690226e-08, -3.812335714637860378e-08, -3.818811466369303723e-08, -3.825279226067756426e-08, -3.831738985158238754e-08, -3.838190735079786063e-08, -3.844634467288171211e-08, -3.851070173254123806e-08, -3.857497844462978157e-08, -3.863917472417472451e-08, -3.870329048634420844e-08, -3.876732564647716456e-08, -3.883128012005002794e-08, -3.889515382270449111e-08, -3.895894667024483060e-08, -3.902265857861863033e-08, -3.908628946394579250e-08, -3.914983924248345846e-08, -3.921330783065550275e-08, -3.927669514505087866e-08, -3.934000110239384638e-08, -3.940322561958718491e-08, -3.946636861367803282e-08, -3.952943000187087167e-08, -3.959240970153892122e-08, -3.965530763019219048e-08, -3.971812370551842636e-08, -3.978085784534799498e-08, -3.984350996768369983e-08, -3.990607999066777396e-08, -3.996856783260962693e-08, -4.003097341198154347e-08, -4.009329664740276853e-08, -4.015553745766479254e-08, -4.021769576169926341e-08, -4.027977147860502539e-08, -4.034176452764817207e-08, -4.040367482823210237e-08, -4.046550229993968697e-08, -4.052724686250008174e-08, -4.058890843580160538e-08, -4.065048693990268460e-08, -4.071198229500003748e-08, -4.077339442146972149e-08, -4.083472323983814242e-08, -4.089596867078180959e-08, -4.095713063515387175e-08, -4.101820905395273059e-08, -4.107920384834712744e-08, -4.114011493965375646e-08, -4.120094224936350943e-08, -4.126168569910907013e-08, -4.132234521069219803e-08, -4.138292070608242473e-08, -4.144341210738613716e-08, -4.150381933690234287e-08, -4.156414231705996306e-08, -4.162438097046028353e-08, -4.168453521987340773e-08, -4.174460498820937820e-08, -4.180459019855897314e-08, -4.186449077416443083e-08, -4.192430663841787468e-08, -4.198403771490022379e-08, -4.204368392732143083e-08, -4.210324519957557226e-08, -4.216272145570883974e-08, -4.222211261991975851e-08, -4.228141861658513439e-08, -4.234063937022896503e-08, -4.239977480555068979e-08, -4.245882484739329364e-08, -4.251778942077041882e-08, -4.257666845086277821e-08, -4.263546186300103601e-08, -4.269416958269199955e-08, -4.275279153558379170e-08, -4.281132764750722974e-08, -4.286977784444560351e-08, -4.292814205253326588e-08, -4.298642019809482126e-08, -4.304461220758582006e-08, -4.310271800764683644e-08, -4.316073752507197591e-08, -4.321867068680978192e-08, -4.327651741998772698e-08, -4.333427765188185189e-08, -4.339195130994225608e-08, -4.344953832177571362e-08, -4.350703861514368134e-08, -4.356445211798718706e-08, -4.362177875839584010e-08, -4.367901846463723258e-08, -4.373617116512442126e-08, -4.379323678844198050e-08, -4.385021526334660438e-08, -4.390710651873544886e-08, -4.396391048370003088e-08, -4.402062708746737942e-08, -4.407725625943940929e-08, -4.413379792918970507e-08, -4.419025202643631012e-08, -4.424661848108018727e-08, -4.430289722317238957e-08, -4.435908818293916034e-08, -4.441519129076476084e-08, -4.447120647718982918e-08, -4.452713367293522298e-08, -4.458297280887228716e-08, -4.463872381605037589e-08, -4.469438662566701459e-08, -4.474996116909180868e-08, -4.480544737786486869e-08, -4.486084518367951884e-08, -4.491615451840784039e-08, -4.497137531406983434e-08, -4.502650750285853466e-08, -4.508155101714012736e-08, -4.513650578942642195e-08, -4.519137175241353041e-08, -4.524614883895382243e-08, -4.530083698205504531e-08, -4.535543611491628977e-08, -4.540994617087262181e-08, -4.546436708344560683e-08, -4.551869878630909092e-08, -4.557294121331560440e-08, -4.562709429846718551e-08, -4.568115797593930250e-08, -4.573513218007915956e-08, -4.578901684538806791e-08, -4.584281190654683036e-08, -4.589651729838625396e-08, -4.595013295591095296e-08, -4.600365881429928262e-08, -4.605709480887713411e-08, -4.611044087515558122e-08, -4.616369694880053930e-08, -4.621686296564467671e-08, -4.626993886169732774e-08, -4.632292457311558096e-08, -4.637582003624156860e-08, -4.642862518757586434e-08, -4.648133996377831052e-08, -4.653396430169030572e-08, -4.658649813830717689e-08, -4.663894141080143308e-08, -4.669129405650703575e-08, -4.674355601291722825e-08, -4.679572721770764398e-08, -4.684780760870760646e-08, -4.689979712392711533e-08, -4.695169570152468554e-08, -4.700350327984421976e-08, -4.705521979738627544e-08, -4.710684519281889091e-08, -4.715837940498778295e-08, -4.720982237288774609e-08, -4.726117403569959788e-08, -4.731243433276337159e-08, -4.736360320357930221e-08, -4.741468058783045149e-08, -4.746566642535475588e-08, -4.751656065616823387e-08, -4.756736322044940857e-08, -4.761807405853705110e-08, -4.766869311095352038e-08, -4.771922031837579192e-08, -4.776965562166180189e-08, -4.781999896182227663e-08, -4.787025028004387387e-08, -4.792040951768631078e-08, -4.797047661626707101e-08, -4.802045151748530694e-08, -4.807033416319296113e-08, -4.812012449541788767e-08, -4.816982245636370661e-08, -4.821942798838532604e-08, -4.826894103402367702e-08, -4.831836153597546528e-08, -4.836768943711657709e-08, -4.841692468048609155e-08, -4.846606720928466589e-08, -4.851511696689653189e-08, -4.856407389686225184e-08, -4.861293794290381854e-08, -4.866170904889743109e-08, -4.871038715889532585e-08, -4.875897221712422799e-08, -4.880746416796976075e-08, -4.885586295599887860e-08, -4.890416852593329158e-08, -4.895238082267117713e-08, -4.900049979128731244e-08, -4.904852537700588999e-08, -4.909645752524820287e-08, -4.914429618157994341e-08, -4.919204129174609700e-08, -4.923969280166838115e-08, -4.928725065742127045e-08, -4.933471480526576540e-08, -4.938208519162048084e-08, -4.942936176308523705e-08, -4.947654446641611871e-08, -4.952363324854559184e-08, -4.957062805658085609e-08, -4.961752883778927316e-08, -4.966433553962015136e-08, -4.971104810967859354e-08, -4.975766649574630890e-08, -4.980419064578334678e-08, -4.985062050789978062e-08, -4.989695603040206977e-08, -4.994319716174333600e-08, -4.998934385055637797e-08, -5.003539604565133522e-08, -5.008135369599166689e-08, -5.012721675072856239e-08, -5.017298515917586796e-08, -5.021865887080851165e-08, -5.026423783529544502e-08, -5.030972200245040931e-08, -5.035511132227603411e-08, -5.040040574493875725e-08, -5.044560522076855346e-08, -5.049070970028044108e-08, -5.053571913414791305e-08, -5.058063347322679275e-08, -5.062545266852564740e-08, -5.067017667124868902e-08, -5.071480543274815524e-08, -5.075933890455625832e-08, -5.080377703838331907e-08, -5.084811978609408300e-08, -5.089236709974065531e-08, -5.093651893153901563e-08, -5.098057523386713864e-08, -5.102453595929698278e-08, -5.106840106054642779e-08, -5.111217049052242041e-08, -5.115584420229721779e-08, -5.119942214910655442e-08, -5.124290428437122165e-08, -5.128629056167203387e-08, -5.132958093477023674e-08, -5.137277535759369656e-08, -5.141587378423496796e-08, -5.145887616897188082e-08, -5.150178246624190425e-08, -5.154459263066536721e-08, -5.158730661701854538e-08, -5.162992438026469033e-08, -5.167244587553213241e-08, -5.171487105811152130e-08, -5.175719988348800660e-08, -5.179943230729324151e-08, -5.184156828534877347e-08, -5.188360777364083162e-08, -5.192555072832109446e-08, -5.196739710572591353e-08, -5.200914686235280826e-08, -5.205079995487921975e-08, -5.209235634015102296e-08, -5.213381597517845693e-08, -5.217517881715734032e-08, -5.221644482344424940e-08, -5.225761395157864675e-08, -5.229868615925895920e-08, -5.233966140436174861e-08, -5.238053964494070595e-08, -5.242132083921242386e-08, -5.246200494557607029e-08, -5.250259192259061783e-08, -5.254308172899322042e-08, -5.258347432369940523e-08, -5.262376966578256518e-08, -5.266396771450214927e-08, -5.270406842928054126e-08, -5.274407176971988113e-08, -5.278397769559036554e-08, -5.282378616682861987e-08, -5.286349714355575723e-08, -5.290311058605464096e-08, -5.294262645479128542e-08, -5.298204471039172138e-08, -5.302136531365988966e-08, -5.306058822557692636e-08, -5.309971340728768981e-08, -5.313874082011997759e-08, -5.317767042556179563e-08, -5.321650218527911941e-08, -5.325523606111793879e-08, -5.329387201508107043e-08, -5.333241000935875690e-08, -5.337085000630558500e-08, -5.340919196844859215e-08, -5.344743585849574994e-08, -5.348558163931314722e-08, -5.352362927395358401e-08, -5.356157872563723537e-08, -5.359942995774979854e-08, -5.363718293386223933e-08, -5.367483761770825978e-08, -5.371239397320182771e-08, -5.374985196442224123e-08, -5.378721155563053993e-08, -5.382447271124991066e-08, -5.386163539588129806e-08, -5.389869957430412590e-08, -5.393566521145773511e-08, -5.397253227246705286e-08, -5.400930072262262112e-08, -5.404597052738745233e-08, -5.408254165240508943e-08, -5.411901406347905210e-08, -5.415538772659841980e-08, -5.419166260791971979e-08, -5.422783867376632500e-08, -5.426391589064638726e-08, -5.429989422523117841e-08, -5.433577364437193171e-08, -5.437155411509051125e-08, -5.440723560457443558e-08, -5.444281808019615441e-08, -5.447830150949174037e-08, -5.451368586017931862e-08, -5.454897110013519772e-08, -5.458415719742888915e-08, -5.461924412028491143e-08, -5.465423183710736729e-08, -5.468912031647963266e-08, -5.472390952714440509e-08, -5.475859943803096757e-08, -5.479319001823580611e-08, -5.482768123702247071e-08, -5.486207306383917780e-08, -5.489636546829803806e-08, -5.493055842019099785e-08, -5.496465188947974762e-08, -5.499864584629331313e-08, -5.503254026094489690e-08, -5.506633510391148318e-08, -5.510003034585198302e-08, -5.513362595758828853e-08, -5.516712191012001654e-08, -5.520051817462352921e-08, -5.523381472244136598e-08, -5.526701152509778130e-08, -5.530010855427958059e-08, -5.533310578185175054e-08, -5.536600317985773051e-08, -5.539880072050051305e-08, -5.543149837617434151e-08, -5.546409611942832729e-08, -5.549659392299784961e-08, -5.552899175978668847e-08, -5.556128960286606504e-08, -5.559348742549052359e-08, -5.562558520108004449e-08, -5.565758290323518498e-08, -5.568948050571976125e-08, -5.572127798247561863e-08, -5.575297530762115587e-08, -5.578457245544094238e-08, -5.581606940040108394e-08, -5.584746611713087914e-08, -5.587876258043749686e-08, -5.590995876530602262e-08, -5.594105464688137308e-08, -5.597205020049986787e-08, -5.600294540165428288e-08, -5.603374022601676645e-08, -5.606443464943754237e-08, -5.609502864792874346e-08, -5.612552219768662631e-08, -5.615591527507209616e-08, -5.618620785662605278e-08, -5.621639991905867676e-08, -5.624649143924852960e-08, -5.627648239425638412e-08, -5.630637276130911104e-08, -5.633616251781337704e-08, -5.636585164133969673e-08, -5.639544010963595210e-08, -5.642492790062845132e-08, -5.645431499240276460e-08, -5.648360136323589157e-08, -5.651278699156061979e-08, -5.654187185599053863e-08, -5.657085593531561220e-08, -5.659973920848811072e-08, -5.662852165464405759e-08, -5.665720325308794313e-08, -5.668578398329011730e-08, -5.671426382491010297e-08, -5.674264275776310499e-08, -5.677092076184927921e-08, -5.679909781733676530e-08, -5.682717390456222277e-08, -5.685514900404410561e-08, -5.688302309646607230e-08, -5.691079616269032660e-08, -5.693846818374659950e-08, -5.696603914084397463e-08, -5.699350901535551586e-08, -5.702087778883141625e-08, -5.704814544299935532e-08, -5.707531195974863046e-08, -5.710237732115225256e-08, -5.712934150945070682e-08, -5.715620450705207843e-08, -5.718296629655121016e-08, -5.720962686069922232e-08, -5.723618618243193475e-08, -5.726264424485320404e-08, -5.728900103123451992e-08, -5.731525652502931215e-08, -5.734141070985621497e-08, -5.736746356951193811e-08, -5.739341508796255153e-08, -5.741926524934247300e-08, -5.744501403796708757e-08, -5.747066143831688550e-08, -5.749620743505257660e-08, -5.752165201299724288e-08, -5.754699515715249842e-08, -5.757223685269346008e-08, -5.759737708496285797e-08, -5.762241583948208001e-08, -5.764735310193538925e-08, -5.767218885818908808e-08, -5.769692309427692666e-08, -5.772155579640170444e-08, -5.774608695094587788e-08, -5.777051654445740570e-08, -5.779484456366175962e-08, -5.781907099545406939e-08, -5.784319582689690598e-08, -5.786721904523340395e-08, -5.789114063787220679e-08, -5.791496059240053634e-08, -5.793867889656903887e-08, -5.796229553830488100e-08, -5.798581050570960561e-08, -5.800922378705131672e-08, -5.803253537077717312e-08, -5.805574524549680514e-08, -5.807885339999747517e-08, -5.810185982324117262e-08, -5.812476450435226577e-08, -5.814756743263664602e-08, -5.817026859756493282e-08, -5.819286798878501376e-08, -5.821536559611319699e-08, -5.823776140953450906e-08, -5.826005541921255486e-08, -5.828224761547645484e-08, -5.830433798883306740e-08, -5.832632652995294665e-08, -5.834821322968261782e-08, -5.836999807904172510e-08, -5.839168106921671863e-08, -5.841326219157245484e-08, -5.843474143763620876e-08, -5.845611879911130589e-08, -5.847739426787580539e-08, -5.849856783597031071e-08, -5.851963949561542640e-08, -5.854060923919772918e-08, -5.856147705927567727e-08, -5.858224294858312424e-08, -5.860290690001670623e-08, -5.862346890665268990e-08, -5.864392896173457798e-08, -5.866428705867333425e-08, -5.868454319105776634e-08, -5.870469735264272680e-08, -5.872474953735760329e-08, -5.874469973929835118e-08, -5.876454795273761160e-08, -5.878429417211152291e-08, -5.880393839203101003e-08, -5.882348060728100362e-08, -5.884292081280708601e-08, -5.886225900373998905e-08, -5.888149517536770816e-08, -5.890062932315428926e-08, -5.891966144273763179e-08, -5.893859152991790155e-08, -5.895741958067428607e-08, -5.897614559115195827e-08, -5.899476955766439915e-08, -5.901329147670139830e-08, -5.903171134491734102e-08, -5.905002915914178297e-08, -5.906824491637195266e-08, -5.908635861377187128e-08, -5.910437024868300682e-08, -5.912227981861007962e-08, -5.914008732123523696e-08, -5.915779275440046389e-08, -5.917539611613016855e-08, -5.919289740460778290e-08, -5.921029661819092331e-08, -5.922759375541037140e-08, -5.924478881495909580e-08, -5.926188179570775674e-08, -5.927887269669322481e-08, -5.929576151711758175e-08, -5.931254825636343979e-08, -5.932923291397133651e-08, -5.934581548965971948e-08, -5.936229598331301502e-08, -5.937867439498324947e-08, -5.939495072489693799e-08, -5.941112497344498628e-08, -5.942719714119314617e-08, -5.944316722886975349e-08, -5.945903523737578000e-08, -5.947480116778370174e-08, -5.949046502133033903e-08, -5.950602679942772225e-08, -5.952148650365002906e-08, -5.953684413574337817e-08, -5.955209969762646463e-08, -5.956725319137872125e-08, -5.958230461925892682e-08, -5.959725398368402368e-08, -5.961210128724835463e-08, -5.962684653271089789e-08, -5.964148972299672292e-08, -5.965603086120591737e-08, -5.967046995060141097e-08, -5.968480699461910023e-08, -5.969904199686108539e-08, -5.971317496109548518e-08, -5.972720589126395417e-08, -5.974113479147225958e-08, -5.975496166599850013e-08, -5.976868651928380192e-08, -5.978230935594014023e-08, -5.979583018075037923e-08, -5.980924899865757822e-08, -5.982256581478442040e-08, -5.983578063441050185e-08, -5.984889346298797512e-08, -5.986190430613956402e-08, -5.987481316964896834e-08, -5.988762005947416490e-08, -5.990032498173818281e-08, -5.991292794272836235e-08, -5.992542894890814724e-08, -5.993782800689871463e-08, -5.995012512349570398e-08, -5.996232030565798062e-08, -5.997441356051622526e-08, -5.998640489536291512e-08, -5.999829431766005312e-08, -6.001008183503959140e-08, -6.002176745529632419e-08, -6.003335118639670223e-08, -6.004483303646860224e-08, -6.005621301380996923e-08, -6.006749112688779749e-08, -6.007866738432979257e-08, -6.008974179493759293e-08, -6.010071436767472623e-08, -6.011158511167191645e-08, -6.012235403622985006e-08, -6.013302115080997773e-08, -6.014358646504597573e-08, -6.015404998873491832e-08, -6.016441173183898496e-08, -6.017467170449054260e-08, -6.018482991698420468e-08, -6.019488637978456035e-08, -6.020484110351868347e-08, -6.021469409898350451e-08, -6.022444537713744605e-08, -6.023409494910701376e-08, -6.024364282618772288e-08, -6.025308901983443669e-08, -6.026243354167335738e-08, -6.027167640349370127e-08, -6.028081761725004139e-08, -6.028985719506531180e-08, -6.029879514922272109e-08, -6.030763149217700199e-08, -6.031636623654485586e-08, -6.032499939510643490e-08, -6.033353098081150970e-08, -6.034196100677170028e-08, -6.035028948626619362e-08, -6.035851643273778642e-08, -6.036664185979197185e-08, -6.037466578120420555e-08, -6.038258821091021768e-08, -6.039040916301461559e-08, -6.039812865178225467e-08, -6.040574669164484257e-08, -6.041326329719993336e-08, -6.042067848320646732e-08, -6.042799226459222225e-08, -6.043520465644349022e-08, -6.044231567401606252e-08, -6.044932533272799020e-08, -6.045623364815917378e-08, -6.046304063605803363e-08, -6.046974631233294698e-08, -6.047635069305979186e-08, -6.048285379447621632e-08, -6.048925563298219436e-08, -6.049555622514506840e-08, -6.050175558769257446e-08, -6.050785373751920819e-08, -6.051385069167943537e-08, -6.051974646739272112e-08, -6.052554108204356965e-08, -6.053123455317677293e-08, -6.053682689850388251e-08, -6.054231813589566571e-08, -6.054770828338773037e-08, -6.055299735918047194e-08, -6.055818538163249576e-08, -6.056327236927247551e-08, -6.056825834078418451e-08, -6.057314331501943951e-08, -6.057792731099088763e-08, -6.058261034787208577e-08, -6.058719244500206667e-08, -6.059167362187984642e-08, -6.059605389816926840e-08, -6.060033329369372263e-08, -6.060451182843985145e-08, -6.060858952255762902e-08, -6.061256639635682753e-08, -6.061644247031162298e-08, -6.062021776505557913e-08, -6.062389230138479746e-08, -6.062746610025950529e-08, -6.063093918279668398e-08, -6.063431157028098770e-08, -6.063758328415318941e-08, -6.064075434601739381e-08, -6.064382477764111681e-08, -6.064679460094860186e-08, -6.064966383802999179e-08, -6.065243251113414219e-08, -6.065510064266934938e-08, -6.065766825520930612e-08, -6.066013537148347980e-08, -6.066250201438607248e-08, -6.066476820696936375e-08, -6.066693397244862089e-08, -6.066899933419689749e-08, -6.067096431574936135e-08, -6.067282894080210328e-08, -6.067459323320881514e-08, -6.067625721698767201e-08, -6.067782091631257071e-08, -6.067928435551904573e-08, -6.068064755910486487e-08, -6.068191055172353085e-08, -6.068307335819191790e-08, -6.068413600348495127e-08, -6.068509851273564700e-08, -6.068596091124060436e-08, -6.068672322445156198e-08, -6.068738547798235944e-08, -6.068794769760590645e-08, -6.068840990925232998e-08, -6.068877213901306385e-08, -6.068903441313693116e-08, -6.068919675803341337e-08, -6.068925920026954003e-08, -6.068922176657016679e-08, -6.068908448382183993e-08, -6.068884737906662892e-08, -6.068851047950735420e-08, -6.068807381250311379e-08, -6.068753740557328023e-08, -6.068690128639465508e-08, -6.068616548280067480e-08, -6.068533002278661210e-08, -6.068439493450151587e-08, -6.068336024625525214e-08, -6.068222598651426893e-08, -6.068099218390200652e-08, -6.067965886720129298e-08, -6.067822606535067806e-08, -6.067669380744759639e-08, -6.067506212274666014e-08, -6.067333104065797822e-08, -6.067150059075108699e-08, -6.066957080275100632e-08, -6.066754170654125711e-08, -6.066541333216042023e-08, -6.066318570980438646e-08, -6.066085886982719026e-08, -6.065843284273771432e-08, -6.065590765920265413e-08, -6.065328335004368578e-08, -6.065055994624027167e-08, -6.064773747892714596e-08, -6.064481597939534684e-08, -6.064179547909201805e-08, -6.063867600962066028e-08, -6.063545760274045627e-08, -6.063214029036611191e-08, -6.062872410456767103e-08, -6.062520907757165353e-08, -6.062159524175889815e-08, -6.061788262966705059e-08, -6.061407127398810183e-08, -6.061016120756904989e-08, -6.060615246341283950e-08, -6.060204507467652244e-08, -6.059783907467300455e-08, -6.059353449686908697e-08, -6.058913137488590289e-08, -6.058462974250160425e-08, -6.058002963364589567e-08, -6.057533108240467999e-08, -6.057053412301763620e-08, -6.056563878987857684e-08, -6.056064511753596411e-08, -6.055555314069128203e-08, -6.055036289420080987e-08, -6.054507441307473547e-08, -6.053968773247657282e-08, -6.053420288772310920e-08, -6.052861991428517277e-08, -6.052293884778712965e-08, -6.051715972400626185e-08, -6.051128257887323054e-08, -6.050530744847212897e-08, -6.049923436903962220e-08, -6.049306337696566176e-08, -6.048679450879266514e-08, -6.048042780121576721e-08, -6.047396329108323052e-08, -6.046740101539529384e-08, -6.046074101130451632e-08, -6.045398331611673034e-08, -6.044712796728895044e-08, -6.044017500243082915e-08, -6.043312445930347906e-08, -6.042597637582061105e-08, -6.041873079004718432e-08, -6.041138774019993580e-08, -6.040394726464790950e-08, -6.039640940191037870e-08, -6.038877419065914875e-08, -6.038104166971649250e-08, -6.037321187805616931e-08, -6.036528485480304130e-08, -6.035726063923249099e-08, -6.034913927077187714e-08, -6.034092078899813923e-08, -6.033260523363927976e-08, -6.032419264457391431e-08, -6.031568306183090089e-08, -6.030707652558949883e-08, -6.029837307617935548e-08, -6.028957275407960631e-08, -6.028067559992034392e-08, -6.027168165448109604e-08, -6.026259095869049468e-08, -6.025340355362834078e-08, -6.024411948052242779e-08, -6.023473878075088428e-08, -6.022526149584074458e-08, -6.021568766746913988e-08, -6.020601733746153804e-08, -6.019625054779240529e-08, -6.018638734058564301e-08, -6.017642775811314513e-08, -6.016637184279657156e-08, -6.015621963720513804e-08, -6.014597118405676748e-08, -6.013562652621891062e-08, -6.012518570670544900e-08, -6.011464876867968608e-08, -6.010401575545232226e-08, -6.009328671048187844e-08, -6.008246167737566217e-08, -6.007154069988720004e-08, -6.006052382191895085e-08, -6.004941108751991012e-08, -6.003820254088684090e-08, -6.002689822636402233e-08, -6.001549818844187319e-08, -6.000400247175908275e-08, -5.999241112109952700e-08, -5.998072418139617299e-08, -5.996894169772708184e-08, -5.995706371531670581e-08, -5.994509027953737055e-08, -5.993302143590564881e-08, -5.992085723008630439e-08, -5.990859770788924811e-08, -5.989624291526976284e-08, -5.988379289833097840e-08, -5.987124770331967609e-08, -5.985860737662946509e-08, -5.984587196479887663e-08, -5.983304151451185366e-08, -5.982011607259870378e-08, -5.980709568603297581e-08, -5.979398040193541699e-08, -5.978077026756959230e-08, -5.976746533034580190e-08, -5.975406563781791805e-08, -5.974057123768417920e-08, -5.972698217778868551e-08, -5.971329850611770632e-08, -5.969952027080343887e-08, -5.968564752012251276e-08, -5.967168030249352825e-08, -5.965761866648143700e-08, -5.964346266079253930e-08, -5.962921233427815014e-08, -5.961486773593383156e-08, -5.960042891489564718e-08, -5.958589592044675982e-08, -5.957126880201037730e-08, -5.955654760915451033e-08, -5.954173239158861091e-08, -5.952682319916655017e-08, -5.951182008188428900e-08, -5.949672308987902440e-08, -5.948153227343284237e-08, -5.946624768296723197e-08, -5.945086936904869696e-08, -5.943539738238431548e-08, -5.941983177382227605e-08, -5.940417259435486209e-08, -5.938841989511379978e-08, -5.937257372737310362e-08, -5.935663414255030063e-08, -5.934060119220014381e-08, -5.932447492802228168e-08, -5.930825540185536225e-08, -5.929194266567909095e-08, -5.927553677161602399e-08, -5.925903777192608252e-08, -5.924244571901328917e-08, -5.922576066541887265e-08, -5.920898266382619118e-08, -5.919211176705970674e-08, -5.917514802808135212e-08, -5.915809149999541456e-08, -5.914094223604349332e-08, -5.912370028960997886e-08, -5.910636571421629570e-08, -5.908893856352454199e-08, -5.907141889133616606e-08, -5.905380675159017966e-08, -5.903610219836759167e-08, -5.901830528588547891e-08, -5.900041606850043374e-08, -5.898243460071027145e-08, -5.896436093714756497e-08, -5.894619513258588510e-08, -5.892793724193562497e-08, -5.890958732024550215e-08, -5.889114542270443137e-08, -5.887261160463575418e-08, -5.885398592150380999e-08, -5.883526842890753045e-08, -5.881645918258622305e-08, -5.879755823841548818e-08, -5.877856565240685517e-08, -5.875948148071135570e-08, -5.874030577961414383e-08, -5.872103860554069654e-08, -5.870168001505036171e-08, -5.868223006484006391e-08, -5.866268881174472128e-08, -5.864305631273245451e-08, -5.862333262491084033e-08, -5.860351780552038670e-08, -5.858361191193923782e-08, -5.856361500168343219e-08, -5.854352713240054991e-08, -5.852334836187682637e-08, -5.850307874803111719e-08, -5.848271834892106567e-08, -5.846226722273735221e-08, -5.844172542780513031e-08, -5.842109302258603165e-08, -5.840037006567438754e-08, -5.837955661580238390e-08, -5.835865273183413865e-08, -5.833765847276741561e-08, -5.831657389773774061e-08, -5.829539906601069870e-08, -5.827413403698798254e-08, -5.825277887020590351e-08, -5.823133362533118955e-08, -5.820979836216853573e-08, -5.818817314065190890e-08, -5.816645802085180043e-08, -5.814465306296810580e-08, -5.812275832733787367e-08, -5.810077387442978691e-08, -5.807869976484285236e-08, -5.805653605931183372e-08, -5.803428281870050841e-08, -5.801194010400891366e-08, -5.798950797636743051e-08, -5.796698649703620808e-08, -5.794437572741299205e-08, -5.792167572901975076e-08, -5.789888656351694242e-08, -5.787600829269355590e-08, -5.785304097846802391e-08, -5.782998468289482056e-08, -5.780683946815449556e-08, -5.778360539656047027e-08, -5.776028253056020902e-08, -5.773687093272606056e-08, -5.771337066576533644e-08, -5.768978179251266783e-08, -5.766610437593428705e-08, -5.764233847912869588e-08, -5.761848416532004155e-08, -5.759454149786573339e-08, -5.757051054025011655e-08, -5.754639135609160563e-08, -5.752218400913079309e-08, -5.749788856324474298e-08, -5.747350508243638976e-08, -5.744903363083581547e-08, -5.742447427270646353e-08, -5.739982707243629119e-08, -5.737509209454342086e-08, -5.735026940367742386e-08, -5.732535906460850090e-08, -5.730036114224350958e-08, -5.727527570161090965e-08, -5.725010280786935907e-08, -5.722484252630851477e-08, -5.719949492233933143e-08, -5.717406006150503321e-08, -5.714853800947202142e-08, -5.712292883203832492e-08, -5.709723259512701586e-08, -5.707144936478583900e-08, -5.704557920719247268e-08, -5.701962218864811644e-08, -5.699357837558494891e-08, -5.696744783455598987e-08, -5.694123063224286255e-08, -5.691492683545645532e-08, -5.688853651112515594e-08, -5.686205972631203698e-08, -5.683549654819984092e-08, -5.680884704409808062e-08, -5.678211128144471353e-08, -5.675528932779738023e-08, -5.672838125084297984e-08, -5.670138711839012616e-08, -5.667430699837341588e-08, -5.664714095885430875e-08, -5.661988906801452332e-08, -5.659255139416315075e-08, -5.656512800572934249e-08, -5.653761897127179307e-08, -5.651002435946995220e-08, -5.648234423912415041e-08, -5.645457867916539956e-08, -5.642672774863866390e-08, -5.639879151672048896e-08, -5.637077005270713647e-08, -5.634266342601488212e-08, -5.631447170618908151e-08, -5.628619496289125945e-08, -5.625783326591000897e-08, -5.622938668515305029e-08, -5.620085529065124772e-08, -5.617223915256058156e-08, -5.614353834115328739e-08, -5.611475292682791459e-08, -5.608588298009997587e-08, -5.605692857161197932e-08, -5.602788977212442871e-08, -5.599876665251785500e-08, -5.596955928379688611e-08, -5.594026773708238537e-08, -5.591089208362145713e-08, -5.588143239477889696e-08, -5.585188874203679466e-08, -5.582226119700405015e-08, -5.579254983140380687e-08, -5.576275471708095606e-08, -5.573287592600408881e-08, -5.570291353025193039e-08, -5.567286760203332487e-08, -5.564273821366850776e-08, -5.561252543760159976e-08, -5.558222934639052841e-08, -5.555185001271905855e-08, -5.552138750938560227e-08, -5.549084190930517105e-08, -5.546021328551552995e-08, -5.542950171116707295e-08, -5.539870725953469464e-08, -5.536783000400800302e-08, -5.533687001809171655e-08, -5.530582737541459768e-08, -5.527470214971583417e-08, -5.524349441485635490e-08, -5.521220424481394625e-08, -5.518083171367893744e-08, -5.514937689566591347e-08, -5.511783986509947437e-08, -5.508622069642306286e-08, -5.505451946419971872e-08, -5.502273624310245047e-08, -5.499087110792574964e-08, -5.495892413357553233e-08, -5.492689539507532647e-08, -5.489478496756764165e-08, -5.486259292630461869e-08, -5.483031934665816089e-08, -5.479796430410987560e-08, -5.476552787426537443e-08, -5.473301013283281292e-08, -5.470041115564618397e-08, -5.466773101864888006e-08, -5.463496979789625421e-08, -5.460212756956502341e-08, -5.456920440993804181e-08, -5.453620039541537177e-08, -5.450311560251421766e-08, -5.446995010785856954e-08, -5.443670398819147195e-08, -5.440337732036399919e-08, -5.436997018134367275e-08, -5.433648264821356133e-08, -5.430291479816273846e-08, -5.426926670849845866e-08, -5.423553845663460990e-08, -5.420173012010465081e-08, -5.416784177655004332e-08, -5.413387350372258201e-08, -5.409982537948991308e-08, -5.406569748182554200e-08, -5.403148988882169780e-08, -5.399720267867799743e-08, -5.396283592970178982e-08, -5.392838972032084157e-08, -5.389386412906110889e-08, -5.385925923457170530e-08, -5.382457511560293165e-08, -5.378981185101865736e-08, -5.375496951979696237e-08, -5.372004820101856317e-08, -5.368504797388006755e-08, -5.364996891768113018e-08, -5.361481111183930211e-08, -5.357957463587721941e-08, -5.354425956942414506e-08, -5.350886599222332090e-08, -5.347339398412075107e-08, -5.343784362507872807e-08, -5.340221499516390813e-08, -5.336650817454852879e-08, -5.333072324352218801e-08, -5.329486028246865659e-08, -5.325891937189263913e-08, -5.322290059240143711e-08, -5.318680402470602751e-08, -5.315062974963361611e-08, -5.311437784810936673e-08, -5.307804840117311029e-08, -5.304164148996517020e-08, -5.300515719573585183e-08, -5.296859559984568069e-08, -5.293195678375384180e-08, -5.289524082903221524e-08, -5.285844781735219425e-08, -5.282157783049954135e-08, -5.278463095036094174e-08, -5.274760725892542600e-08, -5.271050683829761161e-08, -5.267332977067270891e-08, -5.263607613836475765e-08, -5.259874602378679460e-08, -5.256133950945350045e-08, -5.252385667799262820e-08, -5.248629761212736761e-08, -5.244866239468914339e-08, -5.241095110861897174e-08, -5.237316383694810437e-08, -5.233530066282660917e-08, -5.229736166949676154e-08, -5.225934694030958133e-08, -5.222125655872221898e-08, -5.218309060828736762e-08, -5.214484917266727214e-08, -5.210653233562134802e-08, -5.206814018101721258e-08, -5.202967279281788021e-08, -5.199113025509751192e-08, -5.195251265202773705e-08, -5.191382006787773272e-08, -5.187505258702852407e-08, -5.183621029395262907e-08, -5.179729327322863007e-08, -5.175830160954141868e-08, -5.171923538766373972e-08, -5.168009469248409033e-08, -5.164087960898019731e-08, -5.160159022223535552e-08, -5.156222661743705815e-08, -5.152278887986437056e-08, -5.148327709490401072e-08, -5.144369134803613491e-08, -5.140403172484472052e-08, -5.136429831101667928e-08, -5.132449119232965471e-08, -5.128461045466794369e-08, -5.124465618400779251e-08, -5.120462846643423161e-08, -5.116452738812082626e-08, -5.112435303534616716e-08, -5.108410549448610163e-08, -5.104378485200969030e-08, -5.100339119449396404e-08, -5.096292460860329736e-08, -5.092238518110460872e-08, -5.088177299886652669e-08, -5.084108814884597642e-08, -5.080033071810514674e-08, -5.075950079379642228e-08, -5.071859846317255441e-08, -5.067762381358719736e-08, -5.063657693248141515e-08, -5.059545790740055612e-08, -5.055426682597765637e-08, -5.051300377595218039e-08, -5.047166884515381488e-08, -5.043026212150463271e-08, -5.038878369302935656e-08, -5.034723364783913953e-08, -5.030561207415020654e-08, -5.026391906026859445e-08, -5.022215469459119767e-08, -5.018031906561979044e-08, -5.013841226193966584e-08, -5.009643437223838950e-08, -5.005438548529122808e-08, -5.001226568997016881e-08, -4.997007507524632824e-08, -4.992781373017411009e-08, -4.988548174391001862e-08, -4.984307920569536067e-08, -4.980060620487396052e-08, -4.975806283087786622e-08, -4.971544917322850767e-08, -4.967276532154631834e-08, -4.963001136553578650e-08, -4.958718739500369289e-08, -4.954429349984375822e-08, -4.950132977003635865e-08, -4.945829629566507601e-08, -4.941519316689355661e-08, -4.937202047398324595e-08, -4.932877830728679118e-08, -4.928546675724074865e-08, -4.924208591438482742e-08, -4.919863586933698786e-08, -4.915511671281084550e-08, -4.911152853561526073e-08, -4.906787142863872831e-08, -4.902414548286877966e-08, -4.898035078937491649e-08, -4.893648743932389049e-08, -4.889255552396302072e-08, -4.884855513463845781e-08, -4.880448636278087698e-08, -4.876034929990440609e-08, -4.871614403762532645e-08, -4.867187066762976654e-08, -4.862752928170954202e-08, -4.858311997173708230e-08, -4.853864282966818332e-08, -4.849409794755801522e-08, -4.844948541753729288e-08, -4.840480533182979232e-08, -4.836005778275092791e-08, -4.831524286269329992e-08, -4.827036066414522996e-08, -4.822541127967425706e-08, -4.818039480193823514e-08, -4.813531132368629917e-08, -4.809016093774367811e-08, -4.804494373702989288e-08, -4.799965981454166354e-08, -4.795430926337568647e-08, -4.790889217669442226e-08, -4.786340864776313347e-08, -4.781785876992530749e-08, -4.777224263660401312e-08, -4.772656034131935733e-08, -4.768081197766359714e-08, -4.763499763931861622e-08, -4.758911742005808219e-08, -4.754317141372111583e-08, -4.749715971425092372e-08, -4.745108241565953384e-08, -4.740493961204839574e-08, -4.735873139760691140e-08, -4.731245786659749308e-08, -4.726611911337435686e-08, -4.721971523236513935e-08, -4.717324631809113388e-08, -4.712671246515048878e-08, -4.708011376822014629e-08, -4.703345032206593418e-08, -4.698672222152665738e-08, -4.693992956153412241e-08, -4.689307243709569378e-08, -4.684615094329452559e-08, -4.679916517530978444e-08, -4.675211522838125935e-08, -4.670500119784987375e-08, -4.665782317912222259e-08, -4.661058126769076879e-08, -4.656327555913424691e-08, -4.651590614910002761e-08, -4.646847313332429432e-08, -4.642097660761607529e-08, -4.637341666786709697e-08, -4.632579341005435159e-08, -4.627810693022223668e-08, -4.623035732450457792e-08, -4.618254468910349302e-08, -4.613466912031136163e-08, -4.608673071449334869e-08, -4.603872956808730515e-08, -4.599066577762385191e-08, -4.594253943969117505e-08, -4.589435065097337386e-08, -4.584609950822555283e-08, -4.579778610827343784e-08, -4.574941054803371153e-08, -4.570097292448639210e-08, -4.565247333469803410e-08, -4.560391187580394731e-08, -4.555528864501973097e-08, -4.550660373964322595e-08, -4.545785725703656157e-08, -4.540904929464713294e-08, -4.536017994998879417e-08, -4.531124932066209451e-08, -4.526225750433734431e-08, -4.521320459875572016e-08, -4.516409070174195709e-08, -4.511491591118488013e-08, -4.506568032506015499e-08, -4.501638404141155416e-08, -4.496702715835159213e-08, -4.491760977408020647e-08, -4.486813198685757994e-08, -4.481859389502346349e-08, -4.476899559699898277e-08, -4.471933719125893091e-08, -4.466961877637237978e-08, -4.461984045096628405e-08, -4.457000231374547909e-08, -4.452010446349385225e-08, -4.447014699905548320e-08, -4.442013001935688508e-08, -4.437005362338838307e-08, -4.431991791021982419e-08, -4.426972297898324620e-08, -4.421946892889359683e-08, -4.416915585923138944e-08, -4.411878386934211410e-08, -4.406835305865598403e-08, -4.401786352666041362e-08, -4.396731537292094283e-08, -4.391670869707340875e-08, -4.386604359881593184e-08, -4.381532017793044250e-08, -4.376453853425478193e-08, -4.371369876770232285e-08, -4.366280097826197611e-08, -4.361184526597991993e-08, -4.356083173098078894e-08, -4.350976047345073356e-08, -4.345863159364823288e-08, -4.340744519190637766e-08, -4.335620136861411654e-08, -4.330490022423944352e-08, -4.325354185930731558e-08, -4.320212637442284680e-08, -4.315065387025275967e-08, -4.309912444752676153e-08, -4.304753820705021035e-08, -4.299589524968495059e-08, -4.294419567637399632e-08, -4.289243958811295704e-08, -4.284062708596961873e-08, -4.278875827108455926e-08, -4.273683324465138208e-08, -4.268485210794066478e-08, -4.263281496227990158e-08, -4.258072190906608972e-08, -4.252857304976855511e-08, -4.247636848590834562e-08, -4.242410831908245093e-08, -4.237179265094168036e-08, -4.231942158321437325e-08, -4.226699521768683775e-08, -4.221451365620516399e-08, -4.216197700068794285e-08, -4.210938535310726723e-08, -4.205673881551138361e-08, -4.200403749000544847e-08, -4.195128147875166730e-08, -4.189847088399007336e-08, -4.184560580800871607e-08, -4.179268635316884706e-08, -4.173971262188619274e-08, -4.168668471664240912e-08, -4.163360273998816557e-08, -4.158046679452266377e-08, -4.152727698291815539e-08, -4.147403340789744277e-08, -4.142073617225722525e-08, -4.136738537884986148e-08, -4.131398113058354813e-08, -4.126052353043617681e-08, -4.120701268143546184e-08, -4.115344868668237931e-08, -4.109983164933196980e-08, -4.104616167259261714e-08, -4.099243885974950059e-08, -4.093866331412460565e-08, -4.088483513912022713e-08, -4.083095443818953475e-08, -4.077702131483828706e-08, -4.072303587264625214e-08, -4.066899821523706509e-08, -4.061490844629886786e-08, -4.056076666958536805e-08, -4.050657298889476235e-08, -4.045232750809434680e-08, -4.039803033110053211e-08, -4.034368156189580421e-08, -4.028928130450934168e-08, -4.023482966304071950e-08, -4.018032674163964641e-08, -4.012577264450660018e-08, -4.007116747591577693e-08, -4.001651134017385120e-08, -3.996180434166564291e-08, -3.990704658482361761e-08, -3.985223817412888569e-08, -3.979737921413406562e-08, -3.974246980943215556e-08, -3.968751006467753704e-08, -3.963250008458879410e-08, -3.957743997391718766e-08, -3.952232983749324906e-08, -3.946716978018440849e-08, -3.941195990691865239e-08, -3.935670032268563516e-08, -3.930139113251496071e-08, -3.924603244150128245e-08, -3.919062435478179071e-08, -3.913516697756514423e-08, -3.907966041508836414e-08, -3.902410477266393687e-08, -3.896850015564815637e-08, -3.891284666944372471e-08, -3.885714441952092132e-08, -3.880139351138705685e-08, -3.874559405060773502e-08, -3.868974614280994296e-08, -3.863384989364963900e-08, -3.857790540885893499e-08, -3.852191279420373148e-08, -3.846587215550750740e-08, -3.840978359865119433e-08, -3.835364722955339699e-08, -3.829746315419432847e-08, -3.824123147859556092e-08, -3.818495230883325379e-08, -3.812862575104050303e-08, -3.807225191138695933e-08, -3.801583089610257156e-08, -3.795936281145564330e-08, -3.790284776377735048e-08, -3.784628585944098904e-08, -3.778967720486200145e-08, -3.773302190652258696e-08, -3.767632007092858233e-08, -3.761957180465896694e-08, -3.756277721432246559e-08, -3.750593640658256242e-08, -3.744904948815764652e-08, -3.739211656579953832e-08, -3.733513774631865572e-08, -3.727811313656404263e-08, -3.722104284343569732e-08, -3.716392697388749726e-08, -3.710676563490588438e-08, -3.704955893353536870e-08, -3.699230697685487094e-08, -3.693500987200335190e-08, -3.687766772615850429e-08, -3.682028064653934014e-08, -3.676284874041898233e-08, -3.670537211510438212e-08, -3.664785087796174999e-08, -3.659028513639475115e-08, -3.653267499784484305e-08, -3.647502056981414524e-08, -3.641732195983302054e-08, -3.635957927548256772e-08, -3.630179262439734787e-08, -3.624396211423205238e-08, -3.618608785271055137e-08, -3.612816994758139144e-08, -3.607020850664805722e-08, -3.601220363774477133e-08, -3.595415544876328190e-08, -3.589606404763023080e-08, -3.583792954231014479e-08, -3.577975204081903435e-08, -3.572153165120299948e-08, -3.566326848156417671e-08, -3.560496264003910003e-08, -3.554661423479897887e-08, -3.548822337407221721e-08, -3.542979016611189550e-08, -3.537131471922138676e-08, -3.531279714174474806e-08, -3.525423754205660908e-08, -3.519563602858880730e-08, -3.513699270979661918e-08, -3.507830769418198743e-08, -3.501958109029405035e-08, -3.496081300670671536e-08, -3.490200355204529415e-08, -3.484315283496446007e-08, -3.478426096416763053e-08, -3.472532804838452729e-08, -3.466635419639832122e-08, -3.460733951702278225e-08, -3.454828411910282201e-08, -3.448918811154054009e-08, -3.443005160324900779e-08, -3.437087470320326217e-08, -3.431165752040574315e-08, -3.425240016388938382e-08, -3.419310274274032812e-08, -3.413376536606474443e-08, -3.407438814301290635e-08, -3.401497118277839869e-08, -3.395551459457671661e-08, -3.389601848767141777e-08, -3.383648297135180169e-08, -3.377690815494832178e-08, -3.371729414783380958e-08, -3.365764105940154452e-08, -3.359794899909227295e-08, -3.353821807636918101e-08, -3.347844840074506581e-08, -3.341864008175956479e-08, -3.335879322898195497e-08, -3.329890795202515539e-08, -3.323898436052387634e-08, -3.317902256416368318e-08, -3.311902267264622167e-08, -3.305898479571409291e-08, -3.299890904315267318e-08, -3.293879552475602748e-08, -3.287864435037761234e-08, -3.281845562988376849e-08, -3.275822947318075970e-08, -3.269796599021433601e-08, -3.263766529094737344e-08, -3.257732748538703854e-08, -3.251695268355907304e-08, -3.245654099553643415e-08, -3.239609253141529967e-08, -3.233560740131785399e-08, -3.227508571540711110e-08, -3.221452758386419034e-08, -3.215393311691580526e-08, -3.209330242481112236e-08, -3.203263561782211850e-08, -3.197193280627064623e-08, -3.191119410048037125e-08, -3.185041961083218695e-08, -3.178960944771619158e-08, -3.172876372155913740e-08, -3.166788254282401383e-08, -3.160696602198742234e-08, -3.154601426956755507e-08, -3.148502739610021977e-08, -3.142400551215466218e-08, -3.136294872833563720e-08, -3.130185715526030086e-08, -3.124073090358612926e-08, -3.117957008398515689e-08, -3.111837480717229266e-08, -3.105714518388108021e-08, -3.099588132486459125e-08, -3.093458334092285490e-08, -3.087325134285408045e-08, -3.081188544150838446e-08, -3.075048574775138815e-08, -3.068905237246732098e-08, -3.062758542658343245e-08, -3.056608502103482033e-08, -3.050455126678933212e-08, -3.044298427485023190e-08, -3.038138415621985730e-08, -3.031975102195346566e-08, -3.025808498311009949e-08, -3.019638615078650091e-08, -3.013465463608996020e-08, -3.007289055016743265e-08, -3.001109400418178186e-08, -2.994926510931411574e-08, -2.988740397677935073e-08, -2.982551071780231618e-08, -2.976358544364683144e-08, -2.970162826559125108e-08, -2.963963929492880569e-08, -2.957761864299304924e-08, -2.951556642112197272e-08, -2.945348274068293533e-08, -2.939136771307551991e-08, -2.932922144969496166e-08, -2.926704406198671555e-08, -2.920483566139638545e-08, -2.914259635939837104e-08, -2.908032626749565274e-08, -2.901802549719640568e-08, -2.895569416004217674e-08, -2.889333236758410482e-08, -2.883094023139921623e-08, -2.876851786309164897e-08, -2.870606537426957438e-08, -2.864358287657401607e-08, -2.858107048165196994e-08, -2.851852830118782705e-08, -2.845595644686658063e-08, -2.839335503040265834e-08, -2.833072416352873872e-08, -2.826806395798539826e-08, -2.820537452554963584e-08, -2.814265597799806655e-08, -2.807990842713304071e-08, -2.801713198478220051e-08, -2.795432676277478297e-08, -2.789149287297062745e-08, -2.782863042723575734e-08, -2.776573953745828504e-08, -2.770282031555072811e-08, -2.763987287342653714e-08, -2.757689732302825634e-08, -2.751389377630114638e-08, -2.745086234522275112e-08, -2.738780314177776127e-08, -2.732471627796124370e-08, -2.726160186579413947e-08, -2.719846001729893815e-08, -2.713529084453205692e-08, -2.707209445954560834e-08, -2.700887097441412484e-08, -2.694562050123503195e-08, -2.688234315210323390e-08, -2.681903903914123632e-08, -2.675570827447436384e-08, -2.669235097024707878e-08, -2.662896723862504242e-08, -2.656555719177085878e-08, -2.650212094187414429e-08, -2.643865860112318859e-08, -2.637517028173517970e-08, -2.631165609593182204e-08, -2.624811615594142094e-08, -2.618455057401522441e-08, -2.612095946240257132e-08, -2.605734293338113976e-08, -2.599370109923138050e-08, -2.593003407223728800e-08, -2.586634196471257232e-08, -2.580262488896296288e-08, -2.573888295731585133e-08, -2.567511628210884995e-08, -2.561132497567912433e-08, -2.554750915039316530e-08, -2.548366891860813968e-08, -2.541980439270453087e-08, -2.535591568505883856e-08, -2.529200290807320836e-08, -2.522806617415070238e-08, -2.516410559569795618e-08, -2.510012128514152378e-08, -2.503611335490246677e-08, -2.497208191742697647e-08, -2.490802708516093316e-08, -2.484394897055044214e-08, -2.477984768607086443e-08, -2.471572334417548854e-08, -2.465157605735205011e-08, -2.458740593808499261e-08, -2.452321309885741614e-08, -2.445899765217832812e-08, -2.439475971054448377e-08, -2.433049938646716358e-08, -2.426621679247233878e-08, -2.420191204107536624e-08, -2.413758524481176285e-08, -2.407323651621143390e-08, -2.400886596782067281e-08, -2.394447371217787175e-08, -2.388005986184254248e-08, -2.381562452937139425e-08, -2.375116782731731807e-08, -2.368668986826007838e-08, -2.362219076475355547e-08, -2.355767062938313864e-08, -2.349312957472753352e-08, -2.342856771336082678e-08, -2.336398515788011728e-08, -2.329938202086668484e-08, -2.323475841491327733e-08, -2.317011445262695947e-08, -2.310545024658999378e-08, -2.304076590941757781e-08, -2.297606155370559941e-08, -2.291133729206031927e-08, -2.284659323709860254e-08, -2.278182950142242180e-08, -2.271704619764993591e-08, -2.265224343838644603e-08, -2.258742133625549432e-08, -2.252258000387342645e-08, -2.245771955385222719e-08, -2.239284009881561738e-08, -2.232794175137421859e-08, -2.226302462415823675e-08, -2.219808882977929267e-08, -2.213313448085689517e-08, -2.206816169002163399e-08, -2.200317056987615998e-08, -2.193816123305310768e-08, -2.187313379216216891e-08, -2.180808835982049007e-08, -2.174302504865274158e-08, -2.167794397126533302e-08, -2.161284524027738940e-08, -2.154772896829508538e-08, -2.148259526792857271e-08, -2.141744425179413421e-08, -2.135227603248928229e-08, -2.128709072262317610e-08, -2.122188843478846424e-08, -2.115666928159146365e-08, -2.109143337562766513e-08, -2.102618082948065139e-08, -2.096091175575328175e-08, -2.089562626701422982e-08, -2.083032447585612435e-08, -2.076500649485692322e-08, -2.069967243658193507e-08, -2.063432241361186070e-08, -2.056895653850332335e-08, -2.050357492382240590e-08, -2.043817768211913730e-08, -2.037276492594404612e-08, -2.030733676785125752e-08, -2.024189332037235100e-08, -2.017643469604752200e-08, -2.011096100739721618e-08, -2.004547236695267889e-08, -1.997996888723080883e-08, -1.991445068073632532e-08, -1.984891785997914236e-08, -1.978337053744803120e-08, -1.971780882564196723e-08, -1.965223283704438804e-08, -1.958664268412314716e-08, -1.952103847935828743e-08, -1.945542033520264080e-08, -1.938978836410953878e-08, -1.932414267853592275e-08, -1.925848339090216275e-08, -1.919281061365129356e-08, -1.912712445919534727e-08, -1.906142503995174253e-08, -1.899571246831486269e-08, -1.892998685668684672e-08, -1.886424831745239666e-08, -1.879849696298081903e-08, -1.873273290564327656e-08, -1.866695625778676175e-08, -1.860116713176550661e-08, -1.853536563991474113e-08, -1.846955189455112346e-08, -1.840372600800035777e-08, -1.833788809255778081e-08, -1.827203826051898740e-08, -1.820617662416841863e-08, -1.814030329576799977e-08, -1.807441838758793119e-08, -1.800852201186695391e-08, -1.794261428084031829e-08, -1.787669530674004202e-08, -1.781076520176865880e-08, -1.774482407813051548e-08, -1.767887204800606336e-08, -1.761290922356858369e-08, -1.754693571698712589e-08, -1.748095164040013370e-08, -1.741495710594749345e-08, -1.734895222574100373e-08, -1.728293711189869014e-08, -1.721691187650489551e-08, -1.715087663164119655e-08, -1.708483148937502850e-08, -1.701877656174790937e-08, -1.695271196080667431e-08, -1.688663779856363523e-08, -1.682055418702445023e-08, -1.675446123818821618e-08, -1.668835906402158464e-08, -1.662224777649008551e-08, -1.655612748753183923e-08, -1.648999830907499375e-08, -1.642386035304027225e-08, -1.635771373131479121e-08, -1.629155855578363556e-08, -1.622539493830092060e-08, -1.615922299072115202e-08, -1.609304282487323928e-08, -1.602685455256322854e-08, -1.596065828559124004e-08, -1.589445413572565677e-08, -1.582824221473418672e-08, -1.576202263435814753e-08, -1.569579550631208263e-08, -1.562956094231242476e-08, -1.556331905403705341e-08, -1.549706995315955005e-08, -1.543081375132336030e-08, -1.536455056015851620e-08, -1.529828049128460089e-08, -1.523200365628448718e-08, -1.516572016673605176e-08, -1.509943013418300542e-08, -1.503313367016631933e-08, -1.496683088619854605e-08, -1.490052189376597517e-08, -1.483420680434605865e-08, -1.476788572938126039e-08, -1.470155878031048079e-08, -1.463522606854304853e-08, -1.456888770545851381e-08, -1.450254380243797032e-08, -1.443619447080968473e-08, -1.436983982190863872e-08, -1.430347996703660435e-08, -1.423711501746462390e-08, -1.417074508446161877e-08, -1.410437027925407600e-08, -1.403799071306010328e-08, -1.397160649706082672e-08, -1.390521774243155898e-08, -1.383882456031585564e-08, -1.377242706182826468e-08, -1.370602535807128373e-08, -1.363961956010936837e-08, -1.357320977900044939e-08, -1.350679612576968632e-08, -1.344037871140955186e-08, -1.337395764691107110e-08, -1.330753304320896297e-08, -1.324110501124207734e-08, -1.317467366191289294e-08, -1.310823910608993273e-08, -1.304180145463677316e-08, -1.297536081837144276e-08, -1.290891730809476144e-08, -1.284247103459344897e-08, -1.277602210859921263e-08, -1.270957064084947224e-08, -1.264311674203219378e-08, -1.257666052281737025e-08, -1.251020209385716727e-08, -1.244374156575934076e-08, -1.237727904911907518e-08, -1.231081465448991139e-08, -1.224434849242110710e-08, -1.217788067340252020e-08, -1.211141130792509715e-08, -1.204494050644028487e-08, -1.197846837936287625e-08, -1.191199503709943540e-08, -1.184552059000790309e-08, -1.177904514842621059e-08, -1.171256882267501931e-08, -1.164609172301711116e-08, -1.157961395971777440e-08, -1.151313564299001785e-08, -1.144665688302587136e-08, -1.138017778999631963e-08, -1.131369847402510711e-08, -1.124721904522044544e-08, -1.118073961364863135e-08, -1.111426028935143734e-08, -1.104778118234864613e-08, -1.098130240261207389e-08, -1.091482406009689888e-08, -1.084834626471276968e-08, -1.078186912635829203e-08, -1.071539275488038278e-08, -1.064891726010298798e-08, -1.058244275182978944e-08, -1.051596933980362814e-08, -1.044949713376691494e-08, -1.038302624340663962e-08, -1.031655677838592611e-08, -1.025008884834390021e-08, -1.018362256286947121e-08, -1.011715803153292527e-08, -1.005069536385990397e-08, -9.984234669348353197e-09, -9.917776057471383599e-09, -9.851319637650938069e-09, -9.784865519289624983e-09, -9.718413811741424425e-09, -9.651964624343523057e-09, -9.585518066389875773e-09, -9.519074247134213329e-09, -9.452633275806944951e-09, -9.386195261589075676e-09, -9.319760313643945270e-09, -9.253328541090867640e-09, -9.186900053004980285e-09, -9.120474958446056650e-09, -9.054053366417927957e-09, -8.987635385902814505e-09, -8.921221125835137137e-09, -8.854810695118884718e-09, -8.788404202630277663e-09, -8.722001757191390796e-09, -8.655603467602006426e-09, -8.589209442610313949e-09, -8.522819790944891968e-09, -8.456434621288147514e-09, -8.390054042279158245e-09, -8.323678162530963830e-09, -8.257307090604152410e-09, -8.190940935038756694e-09, -8.124579804327865232e-09, -8.058223806917529778e-09, -7.991873051235516430e-09, -7.925527645650522320e-09, -7.859187698504046881e-09, -7.792853318098503608e-09, -7.726524612685388063e-09, -7.660201690497182240e-09, -7.593884659706536501e-09, -7.527573628454961167e-09, -7.461268704852816593e-09, -7.394969996952924449e-09, -7.328677612782430720e-09, -7.262391660316406236e-09, -7.196112247500953132e-09, -7.129839482226842608e-09, -7.063573472361514405e-09, -6.997314325722452347e-09, -6.931062150077152907e-09, -6.864817053172076524e-09, -6.798579142691731950e-09, -6.732348526290465620e-09, -6.666125311580638763e-09, -6.599909606120996416e-09, -6.533701517448278130e-09, -6.467501153036418940e-09, -6.401308620325480008e-09, -6.335124026721484842e-09, -6.268947479570026442e-09, -6.202779086188175794e-09, -6.136618953837981482e-09, -6.070467189744007578e-09, -6.004323901095839162e-09, -5.938189195021816865e-09, -5.872063178620909787e-09, -5.805945958933396911e-09, -5.739837642978566683e-09, -5.673738337699185899e-09, -5.607648150022644893e-09, -5.541567186819782971e-09, -5.475495554907787676e-09, -5.409433361079115507e-09, -5.343380712060562190e-09, -5.277337714542213178e-09, -5.211304475177223617e-09, -5.145281100555589278e-09, -5.079267697235865625e-09, -5.013264371718853543e-09, -4.947271230464870042e-09, -4.881288379896578048e-09, -4.815315926372543911e-09, -4.749353976219107853e-09, -4.683402635701112529e-09, -4.617462011053832191e-09, -4.551532208456447496e-09, -4.485613334034935669e-09, -4.419705493879325494e-09, -4.353808794017321830e-09, -4.287923340446161169e-09, -4.222049239106248554e-09, -4.156186595881093894e-09, -4.090335516628977263e-09, -4.024496107127622922e-09, -3.958668473138040295e-09, -3.892852720349018491e-09, -3.827048954409034802e-09, -3.761257280926066103e-09, -3.695477805441215435e-09, -3.629710633460606443e-09, -3.563955870426083806e-09, -3.498213621747061760e-09, -3.432483992774178807e-09, -3.366767088802054713e-09, -3.301063015086586850e-09, -3.235371876818551142e-09, -3.169693779155565564e-09, -3.104028827195605890e-09, -3.038377125976908493e-09, -2.972738780509830038e-09, -2.907113895721370548e-09, -2.841502576516117170e-09, -2.775904927735350853e-09, -2.710321054159857105e-09, -2.644751060538736693e-09, -2.579195051548623575e-09, -2.513653131828373127e-09, -2.448125405952736710e-09, -2.382611978449667528e-09, -2.317112953803063972e-09, -2.251628436426399520e-09, -2.186158530694642387e-09, -2.120703340914905926e-09, -2.055262971358322786e-09, -1.989837526233741810e-09, -1.924427109690443673e-09, -1.859031825835432466e-09, -1.793651778707112332e-09, -1.728287072307133299e-09, -1.662937810574007317e-09, -1.597604097383005485e-09, -1.532286036575045882e-09, -1.466983731915843465e-09, -1.401697287124830364e-09, -1.336426805877858909e-09, -1.271172391766428029e-09, -1.205934148358492408e-09, -1.140712179143119132e-09, -1.075506587562287826e-09, -1.010317477010725215e-09, -9.451449508096200143e-10, -8.799891122384018611e-10, -8.148500645084519676e-10, -7.497279107861794934e-10, -6.846227541667301272e-10, -6.195346977057554059e-10, -5.544638443931417680e-10, -4.894102971528642470e-10, -4.243741588718162479e-10, -3.593555323590710062e-10, -2.943545203776154929e-10, -2.293712256325889921e-10, -1.644057507595467519e-10, -9.945819835617264174e-11, -3.452867094156410139e-11, 3.038272901495253797e-11, 9.527589909398378036e-11, 1.601507369522813881e-10, 2.250071402910510825e-10, 2.898450068821572191e-10, 3.546642345509121054e-10, 4.194647211733413290e-10, 4.842463647023753461e-10, 5.490090631361815696e-10, 6.137527145472351150e-10, 6.784772170506823984e-10, 7.431824688304968467e-10, 8.078683681367455819e-10, 8.725348132684131199e-10, 9.371817025995457572e-10, 1.001808934544740872e-09, 1.066416407599752705e-09, 1.131004020312736560e-09, 1.195571671284443608e-09, 1.260119259194312434e-09, 1.324646682768896180e-09, 1.389153840807984076e-09, 1.453640632167425451e-09, 1.518106955756430432e-09, 1.582552710563635653e-09, 1.646977795625590528e-09, 1.711382110055693687e-09, 1.775765553012636653e-09, 1.840128023726531794e-09, 1.904469421496149328e-09, 1.968789645671792410e-09, 2.033088595681355809e-09, 2.097366170998851470e-09, 2.161622271170404946e-09, 2.225856795814430343e-09, 2.290069644593030141e-09, 2.354260717252381453e-09, 2.418429913588395632e-09, 2.482577133472752115e-09, 2.546702276835759665e-09, 2.610805243663710625e-09, 2.674885934024798147e-09, 2.738944248037734611e-09, 2.802980085900573493e-09, 2.866993347859315382e-09, 2.930983934233856630e-09, 2.994951745415287785e-09, 3.058896681848851602e-09, 3.122818644059835448e-09, 3.186717532622244321e-09, 3.250593248184706488e-09, 3.314445691470657539e-09, 3.378274763246938951e-09, 3.442080364378407313e-09, 3.505862395767867366e-09, 3.569620758396423941e-09, 3.633355353320667062e-09, 3.697066081644196256e-09, 3.760752844557917067e-09, 3.824415543311478097e-09, 3.888054079213486076e-09, 3.951668353657330848e-09, 4.015258268089998601e-09, 4.078823724037783116e-09, 4.142364623083649147e-09, 4.205880866893147986e-09, 4.269372357183011071e-09, 4.332838995747134212e-09, 4.396280684456604058e-09, 4.459697325228567158e-09, 4.523088820080482251e-09, 4.586455071070390387e-09, 4.649795980337029872e-09, 4.713111450097074318e-09, 4.776401382616812455e-09, 4.839665680252147280e-09, 4.902904245420288282e-09, 4.966116980597054002e-09, 5.029303788356848852e-09, 5.092464571312992781e-09, 5.155599232172051327e-09, 5.218707673702551645e-09, 5.281789798735212466e-09, 5.344845510188625573e-09, 5.407874711038232388e-09, 5.470877304344726877e-09, 5.533853193217375051e-09, 5.596802280868094383e-09, 5.659724470551950566e-09, 5.722619665607057399e-09, 5.785487769451914921e-09, 5.848328685557056141e-09, 5.911142317485135518e-09, 5.973928568862408599e-09, 6.036687343376281089e-09, 6.099418544815001932e-09, 6.162122077008366047e-09, 6.224797843881629960e-09, 6.287445749424511553e-09, 6.350065697691398517e-09, 6.412657592826866870e-09, 6.475221339034694777e-09, 6.537756840603563872e-09, 6.600264001890113643e-09, 6.662742727316339942e-09, 6.725192921395092005e-09, 6.787614488699280653e-09, 6.850007333890052890e-09, 6.912371361686023264e-09, 6.974706476888741107e-09, 7.037012584382920490e-09, 7.099289589105408542e-09, 7.161537396099057241e-09, 7.223755910450656747e-09, 7.285945037344910585e-09, 7.348104682033241019e-09, 7.410234749834140594e-09, 7.472335146158590576e-09, 7.534405776479260053e-09, 7.596446546355920229e-09, 7.658457361418721319e-09, 7.720438127365609259e-09, 7.782388749987625854e-09, 7.844309135138145933e-09, 7.906199188761241369e-09, 7.968058816860731291e-09, 8.029887925525791596e-09, 8.091686420928081323e-09, 8.153454209305182495e-09, 8.215191196986017729e-09, 8.276897290359931877e-09, 8.338572395902260178e-09, 8.400216420174367965e-09, 8.461829269795787908e-09, 8.523410851483595473e-09, 8.584961072024423743e-09, 8.646479838272053012e-09, 8.707967057186488458e-09, 8.769422635775314683e-09, 8.830846481147222579e-09, 8.892238500475510805e-09, 8.953598601026428307e-09, 9.014926690128312206e-09, 9.076222675197150991e-09, 9.137486463733662914e-09, 9.198717963306777196e-09, 9.259917081578929208e-09, 9.321083726275441555e-09, 9.382217805209810986e-09, 9.443319226283776224e-09, 9.504387897459602449e-09, 9.565423726799314482e-09, 9.626426622434043118e-09, 9.687396492575319453e-09, 9.748333245526445310e-09, 9.809236789651894173e-09, 9.870107033416469915e-09, 9.930943885357573090e-09, 9.991747254085429233e-09, 1.005251704830811273e-08, 1.011325317680108174e-08, 1.017395554843251809e-08, 1.023462407214104793e-08, 1.029525865696087484e-08, 1.035585921199152319e-08, 1.041642564642269494e-08, 1.047695786953475764e-08, 1.053745579067076922e-08, 1.059791931927559039e-08, 1.065834836486555023e-08, 1.071874283703960825e-08, 1.077910264549059733e-08, 1.083942769997476040e-08, 1.089971791035096536e-08, 1.095997318655276460e-08, 1.102019343858873081e-08, 1.108037857656743954e-08, 1.114052851066720592e-08, 1.120064315116102582e-08, 1.126072240840010009e-08, 1.132076619281154985e-08, 1.138077441492276377e-08, 1.144074698533170390e-08, 1.150068381473434161e-08, 1.156058481389451349e-08, 1.162044989366899151e-08, 1.168027896500462927e-08, 1.174007193892201195e-08, 1.179982872654058934e-08, 1.185954923904550924e-08, 1.191923338772629971e-08, 1.197888108394958699e-08, 1.203849223915917330e-08, 1.209806676490096967e-08, 1.215760457279260700e-08, 1.221710557454879743e-08, 1.227656968196450117e-08, 1.233599680691251120e-08, 1.239538686136827193e-08, 1.245473975737979965e-08, 1.251405540709517302e-08, 1.257333372273273971e-08, 1.263257461660545368e-08, 1.269177800111886018e-08, 1.275094378875426429e-08, 1.281007189209360586e-08, 1.286916222378976376e-08, 1.292821469659094283e-08, 1.298722922334099477e-08, 1.304620571694938823e-08, 1.310514409044335755e-08, 1.316404425690786768e-08, 1.322290612953747174e-08, 1.328172962160658882e-08, 1.334051464646968425e-08, 1.339926111758563839e-08, 1.345796894848815339e-08, 1.351663805281310805e-08, 1.357526834426856097e-08, 1.363385973665949146e-08, 1.369241214388511296e-08, 1.375092547992275779e-08, 1.380939965885237007e-08, 1.386783459482688265e-08, 1.392623020209656274e-08, 1.398458639500949827e-08, 1.404290308798138595e-08, 1.410118019554744513e-08, 1.415941763230572117e-08, 1.421761531295490417e-08, 1.427577315229179776e-08, 1.433389106518442085e-08, 1.439196896661012911e-08, 1.445000677162838745e-08, 1.450800439537847047e-08, 1.456596175311703468e-08, 1.462387876016207531e-08, 1.468175533194375001e-08, 1.473959138396987707e-08, 1.479738683185263855e-08, 1.485514159127958751e-08, 1.491285557803735506e-08, 1.497052870801208713e-08, 1.502816089716013408e-08, 1.508575206155876853e-08, 1.514330211735049454e-08, 1.520081098078022775e-08, 1.525827856819305539e-08, 1.531570479600736280e-08, 1.537308958075242716e-08, 1.543043283904188153e-08, 1.548773448757128293e-08, 1.554499444315521306e-08, 1.560221262267166198e-08, 1.565938894311290302e-08, 1.571652332155588633e-08, 1.577361567516277822e-08, 1.583066592120472106e-08, 1.588767397703291177e-08, 1.594463976010238824e-08, 1.600156318795645510e-08, 1.605844417822400707e-08, 1.611528264864358987e-08, 1.617207851703429681e-08, 1.622883170132227159e-08, 1.628554211950927544e-08, 1.634220968970960587e-08, 1.639883433012403385e-08, 1.645541595903698147e-08, 1.651195449485383109e-08, 1.656844985604556051e-08, 1.662490196119874104e-08, 1.668131072898697001e-08, 1.673767607817092371e-08, 1.679399792762199160e-08, 1.685027619629339445e-08, 1.690651080324446708e-08, 1.696270166762436949e-08, 1.701884870866996270e-08, 1.707495184572924109e-08, 1.713101099823296672e-08, 1.718702608572060644e-08, 1.724299702781190329e-08, 1.729892374423042807e-08, 1.735480615480119365e-08, 1.741064417943479304e-08, 1.746643773815122877e-08, 1.752218675104875465e-08, 1.757789113834035443e-08, 1.763355082032775182e-08, 1.768916571740160897e-08, 1.774473575006536916e-08, 1.780026083890606721e-08, 1.785574090461830785e-08, 1.791117586798862533e-08, 1.796656564989313756e-08, 1.802191017132082297e-08, 1.807720935334526074e-08, 1.813246311715039247e-08, 1.818767138400264619e-08, 1.824283407527371036e-08, 1.829795111243846585e-08, 1.835302241705950113e-08, 1.840804791081027669e-08, 1.846302751544709679e-08, 1.851796115283226060e-08, 1.857284874493445268e-08, 1.862769021380253451e-08, 1.868248548160210926e-08, 1.873723447058730164e-08, 1.879193710311103150e-08, 1.884659330163532053e-08, 1.890120298870331696e-08, 1.895576608697552611e-08, 1.901028251919852309e-08, 1.906475220823110163e-08, 1.911917507701621285e-08, 1.917355104860405016e-08, 1.922788004614953464e-08, 1.928216199289706517e-08, 1.933639681220352064e-08, 1.939058442751089022e-08, 1.944472476236849473e-08, 1.949881774043335056e-08, 1.955286328544514589e-08, 1.960686132126165717e-08, 1.966081177183089634e-08, 1.971471456120132815e-08, 1.976856961353244816e-08, 1.982237685306669828e-08, 1.987613620416489658e-08, 1.992984759128131932e-08, 1.998351093896373071e-08, 2.003712617187619324e-08, 2.009069321477138690e-08, 2.014421199251315155e-08, 2.019768243005718378e-08, 2.025110445247293406e-08, 2.030447798491641897e-08, 2.035780295265301499e-08, 2.041107928105738900e-08, 2.046430689558602598e-08, 2.051748572182488782e-08, 2.057061568543743002e-08, 2.062369671219891310e-08, 2.067672872799441740e-08, 2.072971165879408721e-08, 2.078264543068794843e-08, 2.083552996986118584e-08, 2.088836520259393462e-08, 2.094115105528450758e-08, 2.099388745442131738e-08, 2.104657432660569671e-08, 2.109921159853714812e-08, 2.115179919701090867e-08, 2.120433704894016811e-08, 2.125682508132920201e-08, 2.130926322129799854e-08, 2.136165139605551747e-08, 2.141398953292138538e-08, 2.146627755932398656e-08, 2.151851540278579544e-08, 2.157070299094522409e-08, 2.162284025152769075e-08, 2.167492711237971288e-08, 2.172696350144484287e-08, 2.177894934676082581e-08, 2.183088457649445357e-08, 2.188276911888992560e-08, 2.193460290231557137e-08, 2.198638585523696372e-08, 2.203811790621714712e-08, 2.208979898393845543e-08, 2.214142901717633657e-08, 2.219300793482299665e-08, 2.224453566586114859e-08, 2.229601213938608789e-08, 2.234743728460324088e-08, 2.239881103081352691e-08, 2.245013330743549708e-08, 2.250140404397888089e-08, 2.255262317006596402e-08, 2.260379061543207460e-08, 2.265490630989911684e-08, 2.270597018342128756e-08, 2.275698216603473073e-08, 2.280794218789106804e-08, 2.285885017925571476e-08, 2.290970607048296506e-08, 2.296050979205063765e-08, 2.301126127453062484e-08, 2.306196044861114368e-08, 2.311260724508213459e-08, 2.316320159483282615e-08, 2.321374342887363218e-08, 2.326423267831013531e-08, 2.331466927436638035e-08, 2.336505314835930116e-08, 2.341538423171997927e-08, 2.346566245599379266e-08, 2.351588775281433320e-08, 2.356606005394870300e-08, 2.361617929124787698e-08, 2.366624539667951216e-08, 2.371625830232615764e-08, 2.376621794036127297e-08, 2.381612424308279515e-08, 2.386597714288936215e-08, 2.391577657227805636e-08, 2.396552246387752490e-08, 2.401521475039889472e-08, 2.406485336467976207e-08, 2.411443823965469855e-08, 2.416396930837801512e-08, 2.421344650399848012e-08, 2.426286975978042900e-08, 2.431223900910128267e-08, 2.436155418543820351e-08, 2.441081522238837451e-08, 2.446002205364372719e-08, 2.450917461301247817e-08, 2.455827283441845412e-08, 2.460731665187840386e-08, 2.465630599953441725e-08, 2.470524081163108175e-08, 2.475412102251274942e-08, 2.480294656665645539e-08, 2.485171737862299180e-08, 2.490043339310157555e-08, 2.494909454488381194e-08, 2.499770076886407520e-08, 2.504625200006044606e-08, 2.509474817358948940e-08, 2.514318922468675173e-08, 2.519157508869307637e-08, 2.523990570105262810e-08, 2.528818099733352637e-08, 2.533640091320252365e-08, 2.538456538444813670e-08, 2.543267434695364741e-08, 2.548072773672832058e-08, 2.552872548988308481e-08, 2.557666754263938997e-08, 2.562455383133855430e-08, 2.567238429241667774e-08, 2.572015886243671332e-08, 2.576787747806552449e-08, 2.581554007607450719e-08, 2.586314659335939913e-08, 2.591069696691592762e-08, 2.595819113386002587e-08, 2.600562903141450873e-08, 2.605301059690655147e-08, 2.610033576778842885e-08, 2.614760448161293794e-08, 2.619481667605537461e-08, 2.624197228888930052e-08, 2.628907125800661705e-08, 2.633611352141589449e-08, 2.638309901722819738e-08, 2.643002768367783358e-08, 2.647689945909583484e-08, 2.652371428194059224e-08, 2.657047209077609473e-08, 2.661717282427177034e-08, 2.666381642122290757e-08, 2.671040282052587642e-08, 2.675693196119857623e-08, 2.680340378236674425e-08, 2.684981822326226816e-08, 2.689617522324310125e-08, 2.694247472176833126e-08, 2.698871665842162260e-08, 2.703490097288563338e-08, 2.708102760496285368e-08, 2.712709649457317370e-08, 2.717310758174092013e-08, 2.721906080661438758e-08, 2.726495610944180400e-08, 2.731079343059148079e-08, 2.735657271055150845e-08, 2.740229388990595685e-08, 2.744795690937643288e-08, 2.749356170977614538e-08, 2.753910823204103364e-08, 2.758459641722671014e-08, 2.763002620648780419e-08, 2.767539754110752204e-08, 2.772071036247260318e-08, 2.776596461209414213e-08, 2.781116023158447701e-08, 2.785629716267662165e-08, 2.790137534722187011e-08, 2.794639472717718710e-08, 2.799135524462460705e-08, 2.803625684174754365e-08, 2.808109946085026497e-08, 2.812588304435801260e-08, 2.817060753479346009e-08, 2.821527287481749955e-08, 2.825987900718405443e-08, 2.830442587477048340e-08, 2.834891342057533701e-08, 2.839334158769714215e-08, 2.843771031936414750e-08, 2.848201955891323372e-08, 2.852626924978793482e-08, 2.857045933556824975e-08, 2.861458975992555777e-08, 2.865866046666387160e-08, 2.870267139969587891e-08, 2.874662250304340893e-08, 2.879051372085630865e-08, 2.883434499738949353e-08, 2.887811627702400756e-08, 2.892182750423918362e-08, 2.896547862365389334e-08, 2.900906957998099262e-08, 2.905260031805803979e-08, 2.909607078284443359e-08, 2.913948091940086598e-08, 2.918283067291887565e-08, 2.922611998869958620e-08, 2.926934881215152565e-08, 2.931251708882094098e-08, 2.935562476434656788e-08, 2.939867178450070858e-08, 2.944165809516513104e-08, 2.948458364233251494e-08, 2.952744837212364374e-08, 2.957025223076599068e-08, 2.961299516461147334e-08, 2.965567712012481028e-08, 2.969829804388072184e-08, 2.974085788258344168e-08, 2.978335658304359874e-08, 2.982579409219904567e-08, 2.986817035708964960e-08, 2.991048532488717663e-08, 2.995273894287371886e-08, 2.999493115844073491e-08, 3.003706191911681673e-08, 3.007913117252540408e-08, 3.012113886642364884e-08, 3.016308494867978991e-08, 3.020496936727290180e-08, 3.024679207031219767e-08, 3.028855300601380213e-08, 3.033025212271959109e-08, 3.037188936888485025e-08, 3.041346469307648172e-08, 3.045497804399121529e-08, 3.049642937043311570e-08, 3.053781862133445406e-08, 3.057914574573281811e-08, 3.062041069278998519e-08, 3.066161341178957967e-08, 3.070275385212502914e-08, 3.074383196331821244e-08, 3.078484769499660299e-08, 3.082580099691192994e-08, 3.086669181894018485e-08, 3.090752011106143182e-08, 3.094828582338821620e-08, 3.098898890614092784e-08, 3.102962930966717036e-08, 3.107020698442822183e-08, 3.111072188099796939e-08, 3.115117395008121310e-08, 3.119156314249068353e-08, 3.123188940916834996e-08, 3.127215270116215344e-08, 3.131235296964577968e-08, 3.135249016591460261e-08, 3.139256424137546040e-08, 3.143257514756378801e-08, 3.147252283612199804e-08, 3.151240725881751321e-08, 3.155222836754254805e-08, 3.159198611429450135e-08, 3.163168045120408695e-08, 3.167131133051292708e-08, 3.171087870458169840e-08, 3.175038252589852959e-08, 3.178982274705680637e-08, 3.182919932078311704e-08, 3.186851219991356198e-08, 3.190776133741353321e-08, 3.194694668635624741e-08, 3.198606819993982551e-08, 3.202512583148635966e-08, 3.206411953442949891e-08, 3.210304926233228321e-08, 3.214191496886582197e-08, 3.218071660782648626e-08, 3.221945413313699399e-08, 3.225812749882557163e-08, 3.229673665905408494e-08, 3.233528156809663156e-08, 3.237376218034719736e-08, 3.241217845032759079e-08, 3.245053033266569793e-08, 3.248881778212381842e-08, 3.252704075357788002e-08, 3.256519920201844452e-08, 3.260329308256774097e-08, 3.264132235045865538e-08, 3.267928696105208158e-08, 3.271718686982508927e-08, 3.275502203237014979e-08, 3.279279240441082603e-08, 3.283049794178178781e-08, 3.286813860044787669e-08, 3.290571433647919795e-08, 3.294322510608711281e-08, 3.298067086558487795e-08, 3.301805157141358581e-08, 3.305536718014136395e-08, 3.309261764844322489e-08, 3.312980293312834984e-08, 3.316692299112100400e-08, 3.320397777946068215e-08, 3.324096725531917499e-08, 3.327789137597943310e-08, 3.331475009885334796e-08, 3.335154338146966850e-08, 3.338827118147268425e-08, 3.342493345663892115e-08, 3.346153016485670022e-08, 3.349806126414465986e-08, 3.353452671263171816e-08, 3.357092646857323276e-08, 3.360726049034997508e-08, 3.364352873645621899e-08, 3.367973116551670126e-08, 3.371586773626678912e-08, 3.375193840756842828e-08, 3.378794313841065909e-08, 3.382388188788933408e-08, 3.385975461524180001e-08, 3.389556127980709389e-08, 3.393130184106010226e-08, 3.396697625859178165e-08, 3.400258449210958208e-08, 3.403812650145320323e-08, 3.407360224657484131e-08, 3.410901168755822089e-08, 3.414435478459724037e-08, 3.417963149801319058e-08, 3.421484178825277619e-08, 3.424998561587734905e-08, 3.428506294157913428e-08, 3.432007372616170869e-08, 3.435501793055532689e-08, 3.438989551581853584e-08, 3.442470644311699913e-08, 3.445945067375796055e-08, 3.449412816915317322e-08, 3.452873889084348997e-08, 3.456328280049720902e-08, 3.459775985989222670e-08, 3.463217003094168007e-08, 3.466651327567130201e-08, 3.470078955623648100e-08, 3.473499883491118352e-08, 3.476914107408651805e-08, 3.480321623628659711e-08, 3.483722428414893635e-08, 3.487116518044190478e-08, 3.490503888804664594e-08, 3.493884536997125239e-08, 3.497258458935157311e-08, 3.500625650943240005e-08, 3.503986109359984071e-08, 3.507339830534531924e-08, 3.510686810828961097e-08, 3.514027046618164465e-08, 3.517360534288052953e-08, 3.520687270238036407e-08, 3.524007250879258731e-08, 3.527320472634450972e-08, 3.530626931940330809e-08, 3.533926625243990752e-08, 3.537219549006229362e-08, 3.540505699699554108e-08, 3.543785073808282611e-08, 3.547057667829986575e-08, 3.550323478273744115e-08, 3.553582501661543321e-08, 3.556834734527015675e-08, 3.560080173416915055e-08, 3.563318814889342931e-08, 3.566550655515125460e-08, 3.569775691877918038e-08, 3.572993920572537044e-08, 3.576205338207250799e-08, 3.579409941402127852e-08, 3.582607726788879483e-08, 3.585798691013242649e-08, 3.588982830731380752e-08, 3.592160142613143393e-08, 3.595330623340173121e-08, 3.598494269605949773e-08, 3.601651078117273439e-08, 3.604801045592437387e-08, 3.607944168762713019e-08, 3.611080444371403575e-08, 3.614209869173629727e-08, 3.617332439937816522e-08, 3.620448153443921888e-08, 3.623557006485060559e-08, 3.626658995865547954e-08, 3.629754118403135554e-08, 3.632842370927349920e-08, 3.635923750280005548e-08, 3.638998253315921534e-08, 3.642065876901124283e-08, 3.645126617915127210e-08, 3.648180473249332635e-08, 3.651227439806980160e-08, 3.654267514504668027e-08, 3.657300694270512799e-08, 3.660326976045645570e-08, 3.663346356783229933e-08, 3.666358833448326324e-08, 3.669364403019316097e-08, 3.672363062486130029e-08, 3.675354808851839823e-08, 3.678339639131025576e-08, 3.681317550351035089e-08, 3.684288539551908417e-08, 3.687252603785428935e-08, 3.690209740116566600e-08, 3.693159945621713081e-08, 3.696103217390068108e-08, 3.699039552523759254e-08, 3.701968948136139924e-08, 3.704891401354053185e-08, 3.707806909315936530e-08, 3.710715469173236686e-08, 3.713617078089485820e-08, 3.716511733240137425e-08, 3.719399431813914959e-08, 3.722280171011246150e-08, 3.725153948045647376e-08, 3.728020760142137453e-08, 3.730880604538556499e-08, 3.733733478485466008e-08, 3.736579379245219098e-08, 3.739418304093288634e-08, 3.742250250316694921e-08, 3.745075215215248465e-08, 3.747893196101654520e-08, 3.750704190299933514e-08, 3.753508195147571710e-08, 3.756305207993846337e-08, 3.759095226200447625e-08, 3.761878247142092908e-08, 3.764654268204806745e-08, 3.767423286788090126e-08, 3.770185300303405730e-08, 3.772940306174166683e-08, 3.775688301837094452e-08, 3.778429284740577724e-08, 3.781163252345964786e-08, 3.783890202126505405e-08, 3.786610131568532031e-08, 3.789323038169934485e-08, 3.792028919441436460e-08, 3.794727772906609418e-08, 3.797419596100306902e-08, 3.800104386571343942e-08, 3.802782141879566186e-08, 3.805452859597746460e-08, 3.808116537311555653e-08, 3.810773172618044673e-08, 3.813422763127675342e-08, 3.816065306462954556e-08, 3.818700800258309876e-08, 3.821329242161458015e-08, 3.823950629831884152e-08, 3.826564960941997332e-08, 3.829172233176346969e-08, 3.831772444231489827e-08, 3.834365591817257268e-08, 3.836951673655193528e-08, 3.839530687479925534e-08, 3.842102631037465526e-08, 3.844667502087723040e-08, 3.847225298401624997e-08, 3.849776017763122109e-08, 3.852319657968974478e-08, 3.854856216827398989e-08, 3.857385692159967191e-08, 3.859908081800357249e-08, 3.862423383594040937e-08, 3.864931595400272846e-08, 3.867432715089288553e-08, 3.869926740544785504e-08, 3.872413669662490335e-08, 3.874893500350159538e-08, 3.877366230528754051e-08, 3.879831858131034380e-08, 3.882290381102804677e-08, 3.884741797401515796e-08, 3.887186104997422023e-08, 3.889623301873488434e-08, 3.892053386024567682e-08, 3.894476355458551433e-08, 3.896892208195040922e-08, 3.899300942266403097e-08, 3.901702555717826867e-08, 3.904097046605879177e-08, 3.906484413000985885e-08, 3.908864652984548545e-08, 3.911237764651442489e-08, 3.913603746108552389e-08, 3.915962595474849017e-08, 3.918314310882450686e-08, 3.920658890475258732e-08, 3.922996332410102329e-08, 3.925326634855976163e-08, 3.927649795993922641e-08, 3.929965814018129060e-08, 3.932274687134635888e-08, 3.934576413562480914e-08, 3.936870991532338041e-08, 3.939158419287731592e-08, 3.941438695084945644e-08, 3.943711817191656207e-08, 3.945977783889366442e-08, 3.948236593470748432e-08, 3.950488244241358428e-08, 3.952732734519545522e-08, 3.954970062635190368e-08, 3.957200226931457480e-08, 3.959423225763328139e-08, 3.961639057498642649e-08, 3.963847720517420058e-08, 3.966049213211761544e-08, 3.968243533986827815e-08, 3.970430681259653258e-08, 3.972610653460225249e-08, 3.974783449030230141e-08, 3.976949066424129930e-08, 3.979107504108993505e-08, 3.981258760563881888e-08, 3.983402834280795854e-08, 3.985539723763408025e-08, 3.987669427528199752e-08, 3.989791944104362511e-08, 3.991907272032661028e-08, 3.994015409867083668e-08, 3.996116356173694973e-08, 3.998210109530438459e-08, 4.000296668528838625e-08, 4.002376031771495586e-08, 4.004448197874395227e-08, 4.006513165465499021e-08, 4.008570933184823440e-08, 4.010621499685468971e-08, 4.012664863632379338e-08, 4.014701023703305672e-08, 4.016729978587901900e-08, 4.018751726988821258e-08, 4.020766267620381551e-08, 4.022773599209615344e-08, 4.024773720496265991e-08, 4.026766630231726194e-08, 4.028752327180479286e-08, 4.030730810118959043e-08, 4.032702077835955334e-08, 4.034666129133092563e-08, 4.036622962823567059e-08, 4.038572577733745191e-08, 4.040514972701970241e-08, 4.042450146578697400e-08, 4.044378098227330876e-08, 4.046298826523134660e-08, 4.048212330354139121e-08, 4.050118608620529546e-08, 4.052017660234501890e-08, 4.053909484121266633e-08, 4.055794079217871541e-08, 4.057671444474226047e-08, 4.059541578851937903e-08, 4.061404481325269401e-08, 4.063260150881100974e-08, 4.065108586518151669e-08, 4.066949787248068369e-08, 4.068783752094096354e-08, 4.070610480092525876e-08, 4.072429970291685638e-08, 4.074242221751911037e-08, 4.076047233546510973e-08, 4.077845004760593247e-08, 4.079635534492014831e-08, 4.081418821850724091e-08, 4.083194865958751526e-08, 4.084963665951008491e-08, 4.086725220974204580e-08, 4.088479530187936205e-08, 4.090226592763429933e-08, 4.091966407884603268e-08, 4.093698974747813850e-08, 4.095424292561398217e-08, 4.097142360546478470e-08, 4.098853177935835990e-08, 4.100556743974917945e-08, 4.102253057921720165e-08, 4.103942119045770700e-08, 4.105623926629980060e-08, 4.107298479968438266e-08, 4.108965778368373614e-08, 4.110625821148964181e-08, 4.112278607641376872e-08, 4.113924137189668048e-08, 4.115562409149676431e-08, 4.117193422890024325e-08, 4.118817177790991986e-08, 4.120433673245467224e-08, 4.122042908658805118e-08, 4.123644883448179502e-08, 4.125239597043604039e-08, 4.126827048886702036e-08, 4.128407238431681858e-08, 4.129980165145291267e-08, 4.131545828505788408e-08, 4.133104228004733812e-08, 4.134655363144952227e-08, 4.136199233441926248e-08, 4.137735838423660002e-08, 4.139265177629748066e-08, 4.140787250612674482e-08, 4.142302056936869098e-08, 4.143809596178680445e-08, 4.145309867927556287e-08, 4.146802871784177498e-08, 4.148288607362198455e-08, 4.149767074287020822e-08, 4.151238272196746463e-08, 4.152702200741107403e-08, 4.154158859582405501e-08, 4.155608248395343049e-08, 4.157050366866155221e-08, 4.158485214694252522e-08, 4.159912791590371877e-08, 4.161333097277790270e-08, 4.162746131492265847e-08, 4.164151893981081695e-08, 4.165550384504451389e-08, 4.166941602834382117e-08, 4.168325548754785845e-08, 4.169702222062602970e-08, 4.171071622566018909e-08, 4.172433750086068174e-08, 4.173788604455696015e-08, 4.175136185519800774e-08, 4.176476493135932685e-08, 4.177809527173356845e-08, 4.179135287513884363e-08, 4.180453774051105403e-08, 4.181764986691215036e-08, 4.183068925352008715e-08, 4.184365589963769672e-08, 4.185654980469087602e-08, 4.186937096822149935e-08, 4.188211938989852902e-08, 4.189479506950982299e-08, 4.190739800696115545e-08, 4.191992820228802238e-08, 4.193238565563758913e-08, 4.194477036728575685e-08, 4.195708233762614438e-08, 4.196932156717166326e-08, 4.198148805656081752e-08, 4.199358180654941862e-08, 4.200560281801734190e-08, 4.201755109196372226e-08, 4.202942662950681525e-08, 4.204122943189007187e-08, 4.205295950047391966e-08, 4.206461683674368383e-08, 4.207620144230064709e-08, 4.208771331886928912e-08, 4.209915246829663141e-08, 4.211051889254648016e-08, 4.212181259370849212e-08, 4.213303357398620365e-08, 4.214418183571013326e-08, 4.215525738132816646e-08, 4.216626021340712410e-08, 4.217719033463855925e-08, 4.218804774783029349e-08, 4.219883245591458282e-08, 4.220954446194150687e-08, 4.222018376907976956e-08, 4.223075038062243648e-08, 4.224124429997947697e-08, 4.225166553068445442e-08, 4.226201407638659851e-08, 4.227228994085809770e-08, 4.228249312799200142e-08, 4.229262364179864673e-08, 4.230268148641205072e-08, 4.231266666608172474e-08, 4.232257918517943083e-08, 4.233241904819893024e-08, 4.234218625974829396e-08, 4.235188082456152294e-08, 4.236150274748820509e-08, 4.237105203349855104e-08, 4.238052868768476408e-08, 4.238993271525388659e-08, 4.239926412153753438e-08, 4.240852291198285059e-08, 4.241770909216097606e-08, 4.242682266775733491e-08, 4.243586364457933060e-08, 4.244483202855485041e-08, 4.245372782572841411e-08, 4.246255104226752667e-08, 4.247130168445420794e-08, 4.247997975869223875e-08, 4.248858527150638008e-08, 4.249711822953580189e-08, 4.250557863954337407e-08, 4.251396650840813571e-08, 4.252228184312841862e-08, 4.253052465082370015e-08, 4.253869493872792623e-08, 4.254679271419863017e-08, 4.255481798470987188e-08, 4.256277075785278049e-08, 4.257065104134047772e-08, 4.257845884300210233e-08, 4.258619417078773352e-08, 4.259385703276295798e-08, 4.260144743711607628e-08, 4.260896539214907012e-08, 4.261641090628479541e-08, 4.262378398806574485e-08, 4.263108464614827093e-08, 4.263831288931365022e-08, 4.264546872645489487e-08, 4.265255216658588467e-08, 4.265956321884075822e-08, 4.266650189246680582e-08, 4.267336819683405151e-08, 4.268016214142820550e-08, 4.268688373585159726e-08, 4.269353298982760253e-08, 4.270010991319433032e-08, 4.270661451591092271e-08, 4.271304680805181090e-08, 4.271940679980825048e-08, 4.272569450149211980e-08, 4.273190992353000401e-08, 4.273805307646898532e-08, 4.274412397097015790e-08, 4.275012261781344536e-08, 4.275604902789809047e-08, 4.276190321223732812e-08, 4.276768518196496964e-08, 4.277339494832832879e-08, 4.277903252269512373e-08, 4.278459791654894409e-08, 4.279009114148799365e-08, 4.279551220923333564e-08, 4.280086113161678289e-08, 4.280613792059083716e-08, 4.281134258822400404e-08, 4.281647514669954221e-08, 4.282153560832049937e-08, 4.282652398550414027e-08, 4.283144029078716798e-08, 4.283628453681925854e-08, 4.284105673636855352e-08, 4.284575690232044237e-08, 4.285038504767470369e-08, 4.285494118554985289e-08, 4.285942532917790780e-08, 4.286383749190819370e-08, 4.286817768720869988e-08, 4.287244592865834388e-08, 4.287664222995820124e-08, 4.288076660491997798e-08, 4.288481906747474557e-08, 4.288879963166843447e-08, 4.289270831166128489e-08, 4.289654512173221430e-08, 4.290031007627348376e-08, 4.290400318979481398e-08, 4.290762447692044054e-08, 4.291117395238909408e-08, 4.291465163105780528e-08, 4.291805752789610139e-08, 4.292139165799161120e-08, 4.292465403654514828e-08, 4.292784467887315942e-08, 4.293096360040890919e-08, 4.293401081669781458e-08, 4.293698634340414854e-08, 4.293989019630388647e-08, 4.294272239128898113e-08, 4.294548294436814345e-08, 4.294817187166153539e-08, 4.295078918940742706e-08, 4.295333491395685645e-08, 4.295580906177476761e-08, 4.295821164944417307e-08, 4.296054269365814008e-08, 4.296280221122804917e-08, 4.296499021907736716e-08, 4.296710673424564411e-08, 4.296915177388455603e-08, 4.297112535526141880e-08, 4.297302749575811614e-08, 4.297485821286931284e-08, 4.297661752420541946e-08, 4.297830544748924383e-08, 4.297992200055793002e-08, 4.298146720136367299e-08, 4.298294106797032383e-08, 4.298434361855773746e-08, 4.298567487141818594e-08, 4.298693484495633864e-08, 4.298812355769412606e-08, 4.298924102826292460e-08, 4.299028727541029977e-08, 4.299126231799610189e-08, 4.299216617499261829e-08, 4.299299886548714085e-08, 4.299376040867882939e-08, 4.299445082388067698e-08, 4.299507013051890782e-08, 4.299561834813125666e-08, 4.299609549636998638e-08, 4.299650159499916819e-08, 4.299683666389691837e-08, 4.299710072305217552e-08, 4.299729379256797625e-08, 4.299741589265981402e-08, 4.299746704365490462e-08, 4.299744726599433681e-08, 4.299735658022943276e-08, 4.299719500702589719e-08, 4.299696256716092551e-08, 4.299665928152282005e-08, 4.299628517111421932e-08, 4.299584025704769747e-08, 4.299532456054948327e-08, 4.299473810295680649e-08, 4.299408090571815601e-08, 4.299335299039517241e-08, 4.299255437866025242e-08, 4.299168509229821658e-08, 4.299074515320457540e-08, 4.298973458338666759e-08, 4.298865340496370641e-08, 4.298750164016546274e-08, 4.298627931133427685e-08, 4.298498644092198784e-08, 4.298362305149283212e-08, 4.298218916572223241e-08, 4.298068480639557353e-08, 4.297910999641041258e-08, 4.297746475877404377e-08, 4.297574911660558288e-08, 4.297396309313451807e-08, 4.297210671170035249e-08, 4.297017999575394769e-08, 4.296818296885671623e-08, 4.296611565468070775e-08, 4.296397807700734499e-08, 4.296177025972893263e-08, 4.295949222684839916e-08, 4.295714400247835060e-08, 4.295472561084181828e-08, 4.295223707627164341e-08, 4.294967842321039104e-08, 4.294704967621143535e-08, 4.294435085993653104e-08, 4.294158199915857277e-08, 4.293874311875928572e-08, 4.293583424372976820e-08, 4.293285539917194747e-08, 4.292980661029563502e-08, 4.292668790242107423e-08, 4.292349930097708754e-08, 4.292024083150245284e-08, 4.291691251964436163e-08, 4.291351439115950428e-08, 4.291004647191330898e-08, 4.290650878788058369e-08, 4.290290136514489409e-08, 4.289922422989813341e-08, 4.289547740844093935e-08, 4.289166092718323013e-08, 4.288777481264253681e-08, 4.288381909144571067e-08, 4.287979379032775189e-08, 4.287569893613174337e-08, 4.287153455580926765e-08, 4.286730067641969219e-08, 4.286299732513104952e-08, 4.285862452921913067e-08, 4.285418231606729320e-08, 4.284967071316709653e-08, 4.284508974811838132e-08, 4.284043944862790631e-08, 4.283571984251045338e-08, 4.283093095768845041e-08, 4.282607282219130949e-08, 4.282114546415620784e-08, 4.281614891182757156e-08, 4.281108319355744628e-08, 4.280594833780450453e-08, 4.280074437313463466e-08, 4.279547132822090118e-08, 4.279012923184314106e-08, 4.278471811288818211e-08, 4.277923800034934009e-08, 4.277368892332723922e-08, 4.276807091102829683e-08, 4.276238399276628504e-08, 4.275662819796075585e-08, 4.275080355613790137e-08, 4.274491009693042149e-08, 4.273894785007686874e-08, 4.273291684542178728e-08, 4.272681711291682460e-08, 4.272064868261841545e-08, 4.271441158468937659e-08, 4.270810584939829145e-08, 4.270173150711947033e-08, 4.269528858833289755e-08, 4.268877712362388725e-08, 4.268219714368402318e-08, 4.267554867930935201e-08, 4.266883176140159444e-08, 4.266204642096797307e-08, 4.265519268912038524e-08, 4.264827059707630964e-08, 4.264128017615785999e-08, 4.263422145779188429e-08, 4.262709447351093103e-08, 4.261989925495144255e-08, 4.261263583385481389e-08, 4.260530424206704201e-08, 4.259790451153843469e-08, 4.259043667432415972e-08, 4.258290076258303393e-08, 4.257529680857901874e-08, 4.256762484467925478e-08, 4.255988490335574930e-08, 4.255207701718414537e-08, 4.254420121884385424e-08, 4.253625754111875009e-08, 4.252824601689514520e-08, 4.252016667916463537e-08, 4.251201956102159855e-08, 4.250380469566343309e-08, 4.249552211639189444e-08, 4.248717185661137462e-08, 4.247875394982961690e-08, 4.247026842965768933e-08, 4.246171532980925685e-08, 4.245309468410199737e-08, 4.244440652645539159e-08, 4.243565089089221190e-08, 4.242682781153763566e-08, 4.241793732261998632e-08, 4.240897945846970115e-08, 4.239995425351948341e-08, 4.239086174230543391e-08, 4.238170195946436437e-08, 4.237247493973674881e-08, 4.236318071796429488e-08, 4.235381932909077772e-08, 4.234439080816260904e-08, 4.233489519032684528e-08, 4.232533251083300737e-08, 4.231570280503320651e-08, 4.230600610837887513e-08, 4.229624245642523365e-08, 4.228641188482709505e-08, 4.227651442934199491e-08, 4.226655012582735250e-08, 4.225651901024274724e-08, 4.224642111864911130e-08, 4.223625648720681060e-08, 4.222602515217836456e-08, 4.221572714992623585e-08, 4.220536251691439876e-08, 4.219493128970715465e-08, 4.218443350496811951e-08, 4.217386919946388338e-08, 4.216323841005873626e-08, 4.215254117371872459e-08, 4.214177752750973884e-08, 4.213094750859675907e-08, 4.212005115424664755e-08, 4.210908850182425766e-08, 4.209805958879470369e-08, 4.208696445272433359e-08, 4.207580313127676517e-08, 4.206457566221683001e-08, 4.205328208340745011e-08, 4.204192243281164294e-08, 4.203049674849223687e-08, 4.201900506860950878e-08, 4.200744743142472438e-08, 4.199582387529614787e-08, 4.198413443868283377e-08, 4.197237916014093437e-08, 4.196055807832613493e-08, 4.194867123199295888e-08, 4.193671865999308037e-08, 4.192470040127838149e-08, 4.191261649489774948e-08, 4.190046697999843989e-08, 4.188825189582677141e-08, 4.187597128172563112e-08, 4.186362517713706850e-08, 4.185121362159966170e-08, 4.183873665475050278e-08, 4.182619431632550873e-08, 4.181358664615573551e-08, 4.180091368417161328e-08, 4.178817547039914795e-08, 4.177537204496366667e-08, 4.176250344808652231e-08, 4.174956972008545747e-08, 4.173657090137701979e-08, 4.172350703247245256e-08, 4.171037815398214164e-08, 4.169718430661097662e-08, 4.168392553116128894e-08, 4.167060186853312988e-08, 4.165721335972064414e-08, 4.164376004581601390e-08, 4.163024196800683826e-08, 4.161665916757654352e-08, 4.160301168590643465e-08, 4.158929956447099682e-08, 4.157552284484285194e-08, 4.156168156868796758e-08, 4.154777577777057375e-08, 4.153380551394933141e-08, 4.151977081917721333e-08, 4.150567173550440917e-08, 4.149150830507407708e-08, 4.147728057012708178e-08, 4.146298857299793806e-08, 4.144863235611528725e-08, 4.143421196200502067e-08, 4.141972743328464152e-08, 4.140517881266905519e-08, 4.139056614296673772e-08, 4.137588946707917999e-08, 4.136114882800516252e-08, 4.134634426883476673e-08, 4.133147583275415273e-08, 4.131654356304238294e-08, 4.130154750307291761e-08, 4.128648769631401854e-08, 4.127136418632580424e-08, 4.125617701676363152e-08, 4.124092623137465438e-08, 4.122561187400145699e-08, 4.121023398857966478e-08, 4.119479261913599234e-08, 4.117928780979403362e-08, 4.116371960476567255e-08, 4.114808804836010257e-08, 4.113239318497748051e-08, 4.111663505910961484e-08, 4.110081371534348609e-08, 4.108492919835658822e-08, 4.106898155291911237e-08, 4.105297082389593867e-08, 4.103689705623940341e-08, 4.102076029499915243e-08, 4.100456058531300899e-08, 4.098829797241218838e-08, 4.097197250162133096e-08, 4.095558421835385672e-08, 4.093913316811686885e-08, 4.092261939650756703e-08, 4.090604294921600031e-08, 4.088940387202159957e-08, 4.087270221079739945e-08, 4.085593801150631935e-08, 4.083911132020116340e-08, 4.082222218302861747e-08, 4.080527064622268455e-08, 4.078825675610980678e-08, 4.077118055910880578e-08, 4.075404210172417265e-08, 4.073684143055573600e-08, 4.071957859229074089e-08, 4.070225363370691270e-08, 4.068486660167420415e-08, 4.066741754314923000e-08, 4.064990650518118971e-08, 4.063233353490668593e-08, 4.061469867955319206e-08, 4.059700198643952212e-08, 4.057924350297058967e-08, 4.056142327664294006e-08, 4.054354135504019096e-08, 4.052559778583843222e-08, 4.050759261679929079e-08, 4.048952589577544966e-08, 4.047139767070780895e-08, 4.045320798962498969e-08, 4.043495690064684756e-08, 4.041664445197847096e-08, 4.039827069191487937e-08, 4.037983566884091747e-08, 4.036133943122641113e-08, 4.034278202763159381e-08, 4.032416350670342715e-08, 4.030548391717673927e-08, 4.028674330787638196e-08, 4.026794172771122875e-08, 4.024907922568065332e-08, 4.023015585086836210e-08, 4.021117165244888591e-08, 4.019212667968266988e-08, 4.017302098191559698e-08, 4.015385460858288566e-08, 4.013462760920371654e-08, 4.011534003338800200e-08, 4.009599193082974893e-08, 4.007658335130854100e-08, 4.005711434469388636e-08, 4.003758496093817664e-08, 4.001799525008249708e-08, 3.999834526225165687e-08, 3.997863504765784189e-08, 3.995886465660089273e-08, 3.993903413946285848e-08, 3.991914354671423040e-08, 3.989919292890858838e-08, 3.987918233668819929e-08, 3.985911182077888188e-08, 3.983898143199075453e-08, 3.981879122122094839e-08, 3.979854123944914063e-08, 3.977823153774338438e-08, 3.975786216725444424e-08, 3.973743317921649768e-08, 3.971694462495221066e-08, 3.969639655586443269e-08, 3.967578902344280111e-08, 3.965512207926149772e-08, 3.963439577497585403e-08, 3.961361016232989518e-08, 3.959276529314769093e-08, 3.957186121933799447e-08, 3.955089799289594311e-08, 3.952987566589600411e-08, 3.950879429049953178e-08, 3.948765391894853381e-08, 3.946645460357070724e-08, 3.944519639677428338e-08, 3.942387935105379826e-08, 3.940250351898490455e-08, 3.938106895322419290e-08, 3.935957570651608068e-08, 3.933802383168031824e-08, 3.931641338162591206e-08, 3.929474440934110588e-08, 3.927301696789514096e-08, 3.925123111044347727e-08, 3.922938689021897241e-08, 3.920748436053849905e-08, 3.918552357480270672e-08, 3.916350458648992052e-08, 3.914142744916320854e-08, 3.911929221646482323e-08, 3.909709894211925864e-08, 3.907484767993452096e-08, 3.905253848379540523e-08, 3.903017140767135023e-08, 3.900774650560893427e-08, 3.898526383174162936e-08, 3.896272344027495160e-08, 3.894012538550313720e-08, 3.891746972179720458e-08, 3.889475650360633079e-08, 3.887198578546542851e-08, 3.884915762198388974e-08, 3.882627206785344076e-08, 3.880332917784876411e-08, 3.878032900681695705e-08, 3.875727160969255975e-08, 3.873415704148379101e-08, 3.871098535728046935e-08, 3.868775661225408578e-08, 3.866447086165070992e-08, 3.864112816079876551e-08, 3.861772856510288276e-08, 3.859427213005020482e-08, 3.857075891120441219e-08, 3.854718896420636464e-08, 3.852356234477844225e-08, 3.849987910871733899e-08, 3.847613931190302277e-08, 3.845234301029076140e-08, 3.842849025991189683e-08, 3.840458111688187214e-08, 3.838061563738480623e-08, 3.835659387769159256e-08, 3.833251589414422904e-08, 3.830838174316446040e-08, 3.828419148125342750e-08, 3.825994516498549319e-08, 3.823564285101530319e-08, 3.821128459607132080e-08, 3.818687045696083634e-08, 3.816240049057006639e-08, 3.813787475385678856e-08, 3.811329330385963243e-08, 3.808865619768893419e-08, 3.806396349253711946e-08, 3.803921524566967705e-08, 3.801441151442558249e-08, 3.798955235622649630e-08, 3.796463782856051152e-08, 3.793966798899992819e-08, 3.791464289518891839e-08, 3.788956260484524022e-08, 3.786442717576726548e-08, 3.783923666582253150e-08, 3.781399113295828934e-08, 3.778869063519288793e-08, 3.776333523062143851e-08, 3.773792497741627133e-08, 3.771245993381961005e-08, 3.768694015815166495e-08, 3.766136570880298974e-08, 3.763573664424368642e-08, 3.761005302301535852e-08, 3.758431490373155439e-08, 3.755852234508353106e-08, 3.753267540583130080e-08, 3.750677414481476829e-08, 3.748081862094403609e-08, 3.745480889319994722e-08, 3.742874502064295918e-08, 3.740262706240024658e-08, 3.737645507767503827e-08, 3.735022912574669025e-08, 3.732394926595864181e-08, 3.729761555773688487e-08, 3.727122806057234837e-08, 3.724478683403140007e-08, 3.721829193775554887e-08, 3.719174343145286851e-08, 3.716514137490787748e-08, 3.713848582797336642e-08, 3.711177685057833910e-08, 3.708501450271798699e-08, 3.705819884446501827e-08, 3.703132993596067142e-08, 3.700440783741489382e-08, 3.697743260911530182e-08, 3.695040431141372082e-08, 3.692332300473748791e-08, 3.689618874958406522e-08, 3.686900160651792314e-08, 3.684176163618110836e-08, 3.681446889927932738e-08, 3.678712345659128376e-08, 3.675972536896886999e-08, 3.673227469732880965e-08, 3.670477150266213363e-08, 3.667721584602582228e-08, 3.664960778854870814e-08, 3.662194739143225024e-08, 3.659423471594137549e-08, 3.656646982341532473e-08, 3.653865277525738906e-08, 3.651078363294682119e-08, 3.648286245802799614e-08, 3.645488931211234349e-08, 3.642686425688426999e-08, 3.639878735409171650e-08, 3.637065866555815538e-08, 3.634247825316813139e-08, 3.631424617887806799e-08, 3.628596250471517542e-08, 3.625762729276860987e-08, 3.622924060520049804e-08, 3.620080250423662648e-08, 3.617231305217268181e-08, 3.614377231137472716e-08, 3.611518034426993118e-08, 3.608653721335838011e-08, 3.605784298120174876e-08, 3.602909771043503324e-08, 3.600030146375690271e-08, 3.597145430393088389e-08, 3.594255629379132343e-08, 3.591360749623352123e-08, 3.588460797422617791e-08, 3.585555779080035026e-08, 3.582645700905061595e-08, 3.579730569214467538e-08, 3.576810390330874042e-08, 3.573885170584020017e-08, 3.570954916309762863e-08, 3.568019633850781904e-08, 3.565079329556547947e-08, 3.562134009782451766e-08, 3.559183680890930390e-08, 3.556228349250374563e-08, 3.553268021236333781e-08, 3.550302703230491249e-08, 3.547332401620757190e-08, 3.544357122801991465e-08, 3.541376873174897140e-08, 3.538391659147276475e-08, 3.535401487132998606e-08, 3.532406363552019392e-08, 3.529406294831574543e-08, 3.526401287404026307e-08, 3.523391347709266919e-08, 3.520376482193031819e-08, 3.517356697307097513e-08, 3.514331999510327791e-08, 3.511302395267137815e-08, 3.508267891048564826e-08, 3.505228493332259540e-08, 3.502184208601464413e-08, 3.499135043346317278e-08, 3.496081004062682044e-08, 3.493022097253124769e-08, 3.489958329425872732e-08, 3.486889707096063813e-08, 3.483816236784662551e-08, 3.480737925018487939e-08, 3.477654778331483310e-08, 3.474566803262435967e-08, 3.471474006357447476e-08, 3.468376394168307096e-08, 3.465273973252559277e-08, 3.462166750174694141e-08, 3.459054731504442826e-08, 3.455937923818030167e-08, 3.452816333698157493e-08, 3.449689967732459441e-08, 3.446558832515879611e-08, 3.443422934648440496e-08, 3.440282280736591449e-08, 3.437136877393077662e-08, 3.433986731235949531e-08, 3.430831848889882177e-08, 3.427672236984863868e-08, 3.424507902157799423e-08, 3.421338851050231830e-08, 3.418165090310840993e-08, 3.414986626593715911e-08, 3.411803466558502256e-08, 3.408615616871619975e-08, 3.405423084204452101e-08, 3.402225875234643755e-08, 3.399023996646181552e-08, 3.395817455127666456e-08, 3.392606257374866121e-08, 3.389390410088394158e-08, 3.386169919974982002e-08, 3.382944793747625166e-08, 3.379715038124250480e-08, 3.376480659829202373e-08, 3.373241665592086804e-08, 3.369998062148473373e-08, 3.366749856240042893e-08, 3.363497054613414110e-08, 3.360239664021579035e-08, 3.356977691222535113e-08, 3.353711142980721870e-08, 3.350440026065854924e-08, 3.347164347252934582e-08, 3.343884113323576612e-08, 3.340599331063620034e-08, 3.337310007265943507e-08, 3.334016148727981800e-08, 3.330717762253106856e-08, 3.327414854650669475e-08, 3.324107432734795609e-08, 3.320795503325797197e-08, 3.317479073248996244e-08, 3.314158149335457374e-08, 3.310832738422199589e-08, 3.307502847350913145e-08, 3.304168482969391567e-08, 3.300829652130288893e-08, 3.297486361692445812e-08, 3.294138618519771972e-08, 3.290786429481322090e-08, 3.287429801452112534e-08, 3.284068741311877913e-08, 3.280703255946516984e-08, 3.277333352246918722e-08, 3.273959037108935184e-08, 3.270580317434667279e-08, 3.267197200130656223e-08, 3.263809692109108427e-08, 3.260417800288107916e-08, 3.257021531589712490e-08, 3.253620892942658937e-08, 3.250215891279935754e-08, 3.246806533540436843e-08, 3.243392826667622808e-08, 3.239974777610964214e-08, 3.236552393324792804e-08, 3.233125680768339212e-08, 3.229694646906550223e-08, 3.226259298708868513e-08, 3.222819643150744738e-08, 3.219375687212318011e-08, 3.215927437878472817e-08, 3.212474902140202866e-08, 3.209018086992609314e-08, 3.205556999436447926e-08, 3.202091646477542105e-08, 3.198622035126269380e-08, 3.195148172398981509e-08, 3.191670065316114538e-08, 3.188187720903565227e-08, 3.184701146192655319e-08, 3.181210348218866280e-08, 3.177715334023360657e-08, 3.174216110651726739e-08, 3.170712685155062504e-08, 3.167205064588725576e-08, 3.163693256013819509e-08, 3.160177266495998672e-08, 3.156657103105374284e-08, 3.153132772917928562e-08, 3.149604283013538748e-08, 3.146071640477544788e-08, 3.142534852400092877e-08, 3.138993925875666283e-08, 3.135448868004482292e-08, 3.131899685890678360e-08, 3.128346386643564804e-08, 3.124788977377647296e-08, 3.121227465211402635e-08, 3.117661857268740544e-08, 3.114092160677778779e-08, 3.110518382571614722e-08, 3.106940530088547068e-08, 3.103358610370697409e-08, 3.099772630565587173e-08, 3.096182597824729430e-08, 3.092588519305121128e-08, 3.088990402168039376e-08, 3.085388253579060639e-08, 3.081782080709016293e-08, 3.078171890732605613e-08, 3.074557690830120937e-08, 3.070939488185466404e-08, 3.067317289987529752e-08, 3.063691103430198198e-08, 3.060060935711040243e-08, 3.056426794032868051e-08, 3.052788685602480800e-08, 3.049146617631432298e-08, 3.045500597336201057e-08, 3.041850631936900552e-08, 3.038196728658820424e-08, 3.034538894730990491e-08, 3.030877137387715339e-08, 3.027211463867362003e-08, 3.023541881412350702e-08, 3.019868397270124296e-08, 3.016191018691754654e-08, 3.012509752933577818e-08, 3.008824607255859274e-08, 3.005135588922735708e-08, 3.001442705203880626e-08, 2.997745963371682008e-08, 2.994045370704433243e-08, 2.990340934483512110e-08, 2.986632661995080801e-08, 2.982920560529939677e-08, 2.979204637382321895e-08, 2.975484899851361163e-08, 2.971761355239764278e-08, 2.968034010855276891e-08, 2.964302874009404684e-08, 2.960567952017560941e-08, 2.956829252199899684e-08, 2.953086781880013027e-08, 2.949340548386490249e-08, 2.945590559051667756e-08, 2.941836821211495411e-08, 2.938079342207241186e-08, 2.934318129382612904e-08, 2.930553190086898551e-08, 2.926784531672836114e-08, 2.923012161496778031e-08, 2.919236086920128830e-08, 2.915456315307338052e-08, 2.911672854027234666e-08, 2.907885710453283822e-08, 2.904094891961414345e-08, 2.900300405933191468e-08, 2.896502259752906482e-08, 2.892700460809555680e-08, 2.888895016495338198e-08, 2.885085934207235269e-08, 2.881273221345674492e-08, 2.877456885314531486e-08, 2.873636933522774984e-08, 2.869813373381523730e-08, 2.865986212307321778e-08, 2.862155457719852828e-08, 2.858321117042273750e-08, 2.854483197702507624e-08, 2.850641707131275389e-08, 2.846796652763475575e-08, 2.842948042038434114e-08, 2.839095882397651101e-08, 2.835240181288077418e-08, 2.831380946159165011e-08, 2.827518184464523900e-08, 2.823651903661917871e-08, 2.819782111211873165e-08, 2.815908814579357982e-08, 2.812032021232375284e-08, 2.808151738642870042e-08, 2.804267974286916515e-08, 2.800380735643234616e-08, 2.796490030194932284e-08, 2.792595865427934175e-08, 2.788698248832817671e-08, 2.784797187902639047e-08, 2.780892690134458797e-08, 2.776984763029494159e-08, 2.773073414090949923e-08, 2.769158650827223588e-08, 2.765240480748954312e-08, 2.761318911370730545e-08, 2.757393950211106569e-08, 2.753465604791092403e-08, 2.749533882635961685e-08, 2.745598791273774657e-08, 2.741660338236320163e-08, 2.737718531059225495e-08, 2.733773377280597169e-08, 2.729824884442675291e-08, 2.725873060090269849e-08, 2.721917911772484231e-08, 2.717959447041252436e-08, 2.713997673451566386e-08, 2.710032598562290860e-08, 2.706064229934815525e-08, 2.702092575134898885e-08, 2.698117641730464672e-08, 2.694139437293143378e-08, 2.690157969398264979e-08, 2.686173245623485815e-08, 2.682185273550390339e-08, 2.678194060763152412e-08, 2.674199614849437257e-08, 2.670201943400549032e-08, 2.666201054009992193e-08, 2.662196954275184426e-08, 2.658189651795913781e-08, 2.654179154175995357e-08, 2.650165469021881635e-08, 2.646148603942764058e-08, 2.642128566551569613e-08, 2.638105364463473897e-08, 2.634079005297632902e-08, 2.630049496675763568e-08, 2.626016846222147095e-08, 2.621981061565146326e-08, 2.617942150334993529e-08, 2.613900120165541378e-08, 2.609854978693611132e-08, 2.605806733558302106e-08, 2.601755392402793600e-08, 2.597700962872057248e-08, 2.593643452614762846e-08, 2.589582869281673616e-08, 2.585519220527376672e-08, 2.581452514008875818e-08, 2.577382757385665665e-08, 2.573309958320738143e-08, 2.569234124479087290e-08, 2.565155263529518793e-08, 2.561073383143126650e-08, 2.556988490993276631e-08, 2.552900594757442280e-08, 2.548809702114028219e-08, 2.544715820745834708e-08, 2.540618958337700509e-08, 2.536519122576742440e-08, 2.532416321153869447e-08, 2.528310561761552853e-08, 2.524201852095411570e-08, 2.520090199854234597e-08, 2.515975612738463306e-08, 2.511858098451973528e-08, 2.507737664700634927e-08, 2.503614319193557067e-08, 2.499488069641596190e-08, 2.495358923759211072e-08, 2.491226889262903957e-08, 2.487091973871224528e-08, 2.482954185306614184e-08, 2.478813531292154895e-08, 2.474670019555166112e-08, 2.470523657824746386e-08, 2.466374453831979500e-08, 2.462222415311599089e-08, 2.458067549999603384e-08, 2.453909865634937361e-08, 2.449749369959647265e-08, 2.445586070716523138e-08, 2.441419975652573647e-08, 2.437251092515861283e-08, 2.433079429057313895e-08, 2.428904993030728653e-08, 2.424727792191245076e-08, 2.420547834297139023e-08, 2.416365127108181562e-08, 2.412179678387487558e-08, 2.407991495899898035e-08, 2.403800587412223701e-08, 2.399606960694192895e-08, 2.395410623516941485e-08, 2.391211583655036817e-08, 2.387009848884054404e-08, 2.382805426982313351e-08, 2.378598325730987200e-08, 2.374388552911713041e-08, 2.370176116310189095e-08, 2.365961023712888482e-08, 2.361743282908938911e-08, 2.357522901690084960e-08, 2.353299887849195842e-08, 2.349074249182056416e-08, 2.344845993485845836e-08, 2.340615128560177484e-08, 2.336381662207227677e-08, 2.332145602230171968e-08, 2.327906956435083689e-08, 2.323665732629164775e-08, 2.319421938622698245e-08, 2.315175582227402443e-08, 2.310926671256452541e-08, 2.306675213526372802e-08, 2.302421216853717596e-08, 2.298164689058710999e-08, 2.293905637962792712e-08, 2.289644071388821876e-08, 2.285379997162730113e-08, 2.281113423111103510e-08, 2.276844357063275718e-08, 2.272572806849735791e-08, 2.268298780303146617e-08, 2.264022285258521269e-08, 2.259743329551621250e-08, 2.255461921020909639e-08, 2.251178067505713419e-08, 2.246891776848207724e-08, 2.242603056891789267e-08, 2.238311915481223248e-08, 2.234018360463721669e-08, 2.229722399687324704e-08, 2.225424041002837957e-08, 2.221123292262212181e-08, 2.216820161318540301e-08, 2.212514656027806072e-08, 2.208206784246401215e-08, 2.203896553832887971e-08, 2.199583972648136749e-08, 2.195269048552873364e-08, 2.190951789411335510e-08, 2.186632203087937568e-08, 2.182310297449530460e-08, 2.177986080363629171e-08, 2.173659559700351324e-08, 2.169330743330796574e-08, 2.164999639127206744e-08, 2.160666254964072599e-08, 2.156330598716426871e-08, 2.151992678261850007e-08, 2.147652501478847244e-08, 2.143310076246823790e-08, 2.138965410447865582e-08, 2.134618511964192557e-08, 2.130269388680180950e-08, 2.125918048481564562e-08, 2.121564499254731992e-08, 2.117208748888686390e-08, 2.112850805272513626e-08, 2.108490676297179915e-08, 2.104128369855498732e-08, 2.099763893840491673e-08, 2.095397256147404454e-08, 2.091028464672012850e-08, 2.086657527311716887e-08, 2.082284451965703303e-08, 2.077909246533312028e-08, 2.073531918916014472e-08, 2.069152477015565933e-08, 2.064770928736214168e-08, 2.060387281982088485e-08, 2.056001544659217728e-08, 2.051613724674782175e-08, 2.047223829936379336e-08, 2.042831868354001905e-08, 2.038437847837476145e-08, 2.034041776298281691e-08, 2.029643661649525074e-08, 2.025243511804286357e-08, 2.020841334677606681e-08, 2.016437138184865341e-08, 2.012030930242807801e-08, 2.007622718769760765e-08, 2.003212511683946380e-08, 1.998800316905521406e-08, 1.994386142354657487e-08, 1.989969995953608783e-08, 1.985551885625036091e-08, 1.981131819292153760e-08, 1.976709804879832816e-08, 1.972285850312924763e-08, 1.967859963518505228e-08, 1.963432152423195221e-08, 1.959002424955047764e-08, 1.954570789043521428e-08, 1.950137252617818025e-08, 1.945701823608882071e-08, 1.941264509947713671e-08, 1.936825319566517962e-08, 1.932384260398815303e-08, 1.927941340377796171e-08, 1.923496567438322278e-08, 1.919049949515084278e-08, 1.914601494544620743e-08, 1.910151210463618809e-08, 1.905699105209099461e-08, 1.901245186719547132e-08, 1.896789462933148471e-08, 1.892331941789894373e-08, 1.887872631229863743e-08, 1.883411539193213575e-08, 1.878948673622211163e-08, 1.874484042457670945e-08, 1.870017653642907095e-08, 1.865549515121035926e-08, 1.861079634835179378e-08, 1.856608020730348009e-08, 1.852134680750761590e-08, 1.847659622842111283e-08, 1.843182854949675322e-08, 1.838704385020335678e-08, 1.834224221000933293e-08, 1.829742370838378262e-08, 1.825258842480808216e-08, 1.820773643875855213e-08, 1.816286782972728249e-08, 1.811798267720485442e-08, 1.807308106068006568e-08, 1.802816305966119251e-08, 1.798322875363920650e-08, 1.793827822212768446e-08, 1.789331154463610368e-08, 1.784832880067191980e-08, 1.780333006975877809e-08, 1.775831543141028841e-08, 1.771328496514902730e-08, 1.766823875050764963e-08, 1.762317686700266706e-08, 1.757809939417404673e-08, 1.753300641154910990e-08, 1.748789799866307238e-08, 1.744277423505913399e-08, 1.739763520027100839e-08, 1.735248097384406259e-08, 1.730731163531568957e-08, 1.726212726424031892e-08, 1.721692794015281577e-08, 1.717171374260861224e-08, 1.712648475115667524e-08, 1.708124104534125672e-08, 1.703598270472124312e-08, 1.699070980884275585e-08, 1.694542243725841791e-08, 1.690012066952908116e-08, 1.685480458519693620e-08, 1.680947426382539912e-08, 1.676412978496299014e-08, 1.671877122816367895e-08, 1.667339867298748356e-08, 1.662801219898243118e-08, 1.658261188570581347e-08, 1.653719781270682230e-08, 1.649177005953780608e-08, 1.644632870575607300e-08, 1.640087383090647388e-08, 1.635540551454277990e-08, 1.630992383620756881e-08, 1.626442887545580620e-08, 1.621892071182750556e-08, 1.617339942486686262e-08, 1.612786509412409165e-08, 1.608231779912832376e-08, 1.603675761942805268e-08, 1.599118463455411352e-08, 1.594559892404085853e-08, 1.590000056742622665e-08, 1.585438964423397560e-08, 1.580876623399484121e-08, 1.576313041622919972e-08, 1.571748227045824128e-08, 1.567182187620621001e-08, 1.562614931298236484e-08, 1.558046466030236704e-08, 1.553476799766883163e-08, 1.548905940459242041e-08, 1.544333896057424291e-08, 1.539760674510767949e-08, 1.535186283769024310e-08, 1.530610731780523573e-08, 1.526034026494363229e-08, 1.521456175858613080e-08, 1.516877187820318217e-08, 1.512297070327420395e-08, 1.507715831326019072e-08, 1.503133478762706375e-08, 1.498550020582803549e-08, 1.493965464731486589e-08, 1.489379819154007092e-08, 1.484793091793887684e-08, 1.480205290595091876e-08, 1.475616423500027420e-08, 1.471026498451689365e-08, 1.466435523391921986e-08, 1.461843506261531943e-08, 1.457250455001521442e-08, 1.452656377551260496e-08, 1.448061281850654138e-08, 1.443465175838365803e-08, 1.438868067451783249e-08, 1.434269964629011729e-08, 1.429670875306054961e-08, 1.425070807419002527e-08, 1.420469768903219229e-08, 1.415867767692536280e-08, 1.411264811721425294e-08, 1.406660908922208209e-08, 1.402056067227399861e-08, 1.397450294567780655e-08, 1.392843598874469971e-08, 1.388235988077194222e-08, 1.383627470104452116e-08, 1.379018052884697032e-08, 1.374407744344531120e-08, 1.369796552410867548e-08, 1.365184485009168446e-08, 1.360571550063380548e-08, 1.355957755497944745e-08, 1.351343109234981688e-08, 1.346727619196488279e-08, 1.342111293303492796e-08, 1.337494139475285771e-08, 1.332876165631558095e-08, 1.328257379689653119e-08, 1.323637789566485880e-08, 1.319017403178555013e-08, 1.314396228440157196e-08, 1.309774273265528560e-08, 1.305151545567072369e-08, 1.300528053256506813e-08, 1.295903804245097452e-08, 1.291278806441805817e-08, 1.286653067755479947e-08, 1.282026596092881073e-08, 1.277399399361201054e-08, 1.272771485464333616e-08, 1.268142862306977662e-08, 1.263513537791892851e-08, 1.258883519820050316e-08, 1.254252816292613589e-08, 1.249621435108159112e-08, 1.244989384164631529e-08, 1.240356671359344177e-08, 1.235723304587167399e-08, 1.231089291742706344e-08, 1.226454640718515580e-08, 1.221819359406244409e-08, 1.217183455696846803e-08, 1.212546937478777990e-08, 1.207909812640158022e-08, 1.203272089066782078e-08, 1.198633774644281720e-08, 1.193994877256350593e-08, 1.189355404784889013e-08, 1.184715365111216119e-08, 1.180074766114250572e-08, 1.175433615672696959e-08, 1.170791921663237079e-08, 1.166149691960514392e-08, 1.161506934439311988e-08, 1.156863656970765752e-08, 1.152219867426726746e-08, 1.147575573675948410e-08, 1.142930783586294963e-08, 1.138285505024702032e-08, 1.133639745855393249e-08, 1.128993513942026453e-08, 1.124346817145746346e-08, 1.119699663327289331e-08, 1.115052060345241971e-08, 1.110404016056176807e-08, 1.105755538315883868e-08, 1.101106634977515637e-08, 1.096457313893807694e-08, 1.091807582915252310e-08, 1.087157449890085037e-08, 1.082506922666466489e-08, 1.077856009088688221e-08, 1.073204717001333124e-08, 1.068553054246498741e-08, 1.063901028663940040e-08, 1.059248648093097495e-08, 1.054595920370266474e-08, 1.049942853330981833e-08, 1.045289454808202425e-08, 1.040635732633517788e-08, 1.035981694637311924e-08, 1.031327348646970309e-08, 1.026672702489043461e-08, 1.022017763987275769e-08, 1.017362540964739956e-08, 1.012707041242069715e-08, 1.008051272637411079e-08, 1.003395242968646540e-08, 9.987389600495400597e-09, 9.940824316939710719e-09, 9.894256657130807127e-09, 9.847686699154877138e-09, 9.801114521092651981e-09, 9.754540200991156933e-09, 9.707963816883816766e-09, 9.661385446792230877e-09, 9.614805168697931692e-09, 9.568223060584428594e-09, 9.521639200399131153e-09, 9.475053666074918684e-09, 9.428466535530385090e-09, 9.381877886651384470e-09, 9.335287797313186315e-09, 9.288696345362120379e-09, 9.242103608631620669e-09, 9.195509664924058904e-09, 9.148914592032575470e-09, 9.102318467722945962e-09, 9.055721369733510049e-09, 9.009123375795055242e-09, 8.962524563602585217e-09, 8.915925010835375639e-09, 8.869324795158640103e-09, 8.822723994195642564e-09, 8.776122685569345886e-09, 8.729520946864424396e-09, 8.682918855649013771e-09, 8.636316489474874822e-09, 8.589713925858889460e-09, 8.543111242305139806e-09, 8.496508516286882266e-09, 8.449905825258169423e-09, 8.403303246656005666e-09, 8.356700857881894446e-09, 8.310098736324091091e-09, 8.263496959337087070e-09, 8.216895604265943993e-09, 8.170294748417613605e-09, 8.123694469083420554e-09, 8.077094843530507691e-09, 8.030495948993681723e-09, 7.983897862697793408e-09, 7.937300661828930171e-09, 7.890704423554825949e-09, 7.844109225024540253e-09, 7.797515143350313128e-09, 7.750922255629505296e-09, 7.704330638926334005e-09, 7.657740370283971374e-09, 7.611151526726339376e-09, 7.564564185239853958e-09, 7.517978422795434669e-09, 7.471394316328404164e-09, 7.424811942760391954e-09, 7.378231378980979260e-09, 7.331652701849802540e-09, 7.285075988208439246e-09, 7.238501314862036138e-09, 7.191928758601611736e-09, 7.145358396185501822e-09, 7.098790304339508340e-09, 7.052224559776745937e-09, 7.005661239169336671e-09, 6.959100419172546312e-09, 6.912542176406429208e-09, 6.865986587467907599e-09, 6.819433728932598035e-09, 6.772883677336571215e-09, 6.726336509198389734e-09, 6.679792300998755301e-09, 6.633251129202775619e-09, 6.586713070241500055e-09, 6.540178200513856070e-09, 6.493646596398750047e-09, 6.447118334236503703e-09, 6.400593490351416265e-09, 6.354072141032985816e-09, 6.307554362535979611e-09, 6.261040231102694325e-09, 6.214529822924090981e-09, 6.168023214182516340e-09, 6.121520481022944319e-09, 6.075021699555133272e-09, 6.028526945873585862e-09, 5.982036296029110590e-09, 5.935549826048968608e-09, 5.889067611936827394e-09, 5.842589729654255896e-09, 5.796116255143032767e-09, 5.749647264306750692e-09, 5.703182833026868659e-09, 5.656723037144368399e-09, 5.610267952482005547e-09, 5.563817654825808089e-09, 5.517372219925082985e-09, 5.470931723514559788e-09, 5.424496241275667843e-09, 5.378065848879209706e-09, 5.331640621956605862e-09, 5.285220636101950274e-09, 5.238805966892170422e-09, 5.192396689858414305e-09, 5.145992880506346141e-09, 5.099594614317957065e-09, 5.053201966723134933e-09, 5.006815013142096207e-09, 4.960433828946658182e-09, 4.914058489482577827e-09, 4.867689070069360711e-09, 4.821325645981852917e-09, 4.774968292472513716e-09, 4.728617084750896518e-09, 4.682272098010136025e-09, 4.635933407387993817e-09, 4.589601088009553274e-09, 4.543275214958601611e-09, 4.496955863279578719e-09, 4.450643107997756229e-09, 4.404337024090654292e-09, 4.358037686508362093e-09, 4.311745170175308022e-09, 4.265459549961707880e-09, 4.219180900726240776e-09, 4.172909297277201425e-09, 4.126644814394805893e-09, 4.080387526831046845e-09, 4.034137509291351641e-09, 3.987894836456684600e-09, 3.941659582965264657e-09, 3.895431823424584295e-09, 3.849211632413380718e-09, 3.802999084463173179e-09, 3.756794254080527374e-09, 3.710597215726580653e-09, 3.664408043839407741e-09, 3.618226812815441441e-09, 3.572053597009457737e-09, 3.525888470756841433e-09, 3.479731508334765737e-09, 3.433582784006869529e-09, 3.387442371984467138e-09, 3.341310346448901659e-09, 3.295186781551263294e-09, 3.249071751394115283e-09, 3.202965330053692122e-09, 3.156867591561477005e-09, 3.110778609916315891e-09, 3.064698459086334904e-09, 3.018627212990486761e-09, 2.972564945520880517e-09, 2.926511730522250522e-09, 2.880467641814251012e-09, 2.834432753173052991e-09, 2.788407138333245095e-09, 2.742390870999938138e-09, 2.696384024830307816e-09, 2.650386673455934790e-09, 2.604398890464309340e-09, 2.558420749398751543e-09, 2.512452323778624255e-09, 2.466493687070765192e-09, 2.420544912713783705e-09, 2.374606074099606378e-09, 2.328677244585630797e-09, 2.282758497496580912e-09, 2.236849906106126259e-09, 2.190951543659139321e-09, 2.145063483351254658e-09, 2.099185798351108891e-09, 2.053318561781922706e-09, 2.007461846723441004e-09, 1.961615726224050266e-09, 1.915780273282298516e-09, 1.869955560869188250e-09, 1.824141661909766290e-09, 1.778338649283029279e-09, 1.732546595842102753e-09, 1.686765574385690175e-09, 1.640995657680354698e-09, 1.595236918452223576e-09, 1.549489429378781504e-09, 1.503753263111095506e-09, 1.458028492245281760e-09, 1.412315189342692730e-09, 1.366613426929810875e-09, 1.320923277479864764e-09, 1.275244813435066799e-09, 1.229578107188200373e-09, 1.183923231098771199e-09, 1.138280257474638313e-09, 1.092649258594210228e-09, 1.047030306688076762e-09, 1.001423473938907096e-09, 9.558288325016389724e-10, 9.102464544749387952e-10, 8.646764119234274544e-10, 8.191187768694547396e-10, 7.735736212848828515e-10, 7.280410171132712821e-10, 6.825210362413894386e-10, 6.370137505193975754e-10, 5.915192317607059667e-10, 5.460375517236520285e-10, 5.005687821336692765e-10, 4.551129946649572617e-10, 4.096702609525196853e-10, 3.642406525940788045e-10, 3.188242411317512111e-10, 2.734210980742088267e-10, 2.280312948763283731e-10, 1.826549029613446904e-10, 1.372919937025345289e-10, 9.194263842513242806e-11, 4.660690841836039820e-11, 1.284874917120952773e-12, -4.402339087384722727e-11, -8.931781780838049831e-11, -1.345983347787781264e-10, -1.798648707159146032e-10, -2.251173546075295780e-10, -2.703557154761096241e-10, -3.155798823971728201e-10, -3.607897844872565626e-10, -4.059853509020134480e-10, -4.511665108544751101e-10, -4.963331935929566236e-10, -5.414853284213513803e-10, -5.866228446770264447e-10, -6.317456717490998338e-10, -6.768537390765182011e-10, -7.219469761360735740e-10, -7.670253124606353454e-10, -8.120886776170937096e-10, -8.571370012246091274e-10, -9.021702129547059012e-10, -9.471882425092134394e-10, -9.921910196586486771e-10, -1.037178474198026951e-09, -1.082150535985195721e-09, -1.127107134918808713e-09, -1.172048200938432833e-09, -1.216973664042756275e-09, -1.261883454267565456e-09, -1.306777501705964824e-09, -1.351655736486342426e-09, -1.396518088790609442e-09, -1.441364488852240597e-09, -1.486194866944359036e-09, -1.531009153397900593e-09, -1.575807278579630222e-09, -1.620589172910320120e-09, -1.665354766864836786e-09, -1.710103990950198405e-09, -1.754836775743779421e-09, -1.799553051851262673e-09, -1.844252749934866106e-09, -1.888935800711423509e-09, -1.933602134932408715e-09, -1.978251683412148054e-09, -2.022884377007840003e-09, -2.067500146617700859e-09, -2.112098923209059928e-09, -2.156680637776425188e-09, -2.201245221379628725e-09, -2.245792605117905373e-09, -2.290322720150013470e-09, -2.334835497672288100e-09, -2.379330868936834520e-09, -2.423808765251528571e-09, -2.468269117958158845e-09, -2.512711858470534067e-09, -2.557136918232591363e-09, -2.601544228746464152e-09, -2.645933721570598651e-09, -2.690305328299902375e-09, -2.734658980593731374e-09, -2.778994610156087117e-09, -2.823312148733714805e-09, -2.867611528144101365e-09, -2.911892680233733849e-09, -2.956155536916049654e-09, -3.000400030149596471e-09, -3.044626091938210129e-09, -3.088833654348956973e-09, -3.133022649490347161e-09, -3.177193009530392024e-09, -3.221344666680725500e-09, -3.265477553214630886e-09, -3.309591601445274406e-09, -3.353686743743712934e-09, -3.397762912538932453e-09, -3.441820040298125595e-09, -3.485858059554581271e-09, -3.529876902887934907e-09, -3.573876502922266759e-09, -3.617856792353984513e-09, -3.661817703910271939e-09, -3.705759170386901795e-09, -3.749681124626413149e-09, -3.793583499518323965e-09, -3.837466228017000685e-09, -3.881329243119998921e-09, -3.925172477885952471e-09, -3.968995865422772766e-09, -4.012799338885870427e-09, -4.056582831495947926e-09, -4.100346276517364671e-09, -4.144089607278050552e-09, -4.187812757147785013e-09, -4.231515659556160098e-09, -4.275198247990632442e-09, -4.318860455984824460e-09, -4.362502217136368284e-09, -4.406123465083259150e-09, -4.449724133531673483e-09, -4.493304156236272074e-09, -4.536863467000311747e-09, -4.580401999693514114e-09, -4.623919688230385175e-09, -4.667416466588235443e-09, -4.710892268795219744e-09, -4.754347028928574491e-09, -4.797780681132523665e-09, -4.841193159596526446e-09, -4.884584398575208958e-09, -4.927954332366718603e-09, -4.971302895330644108e-09, -5.014630021885999680e-09, -5.057935646499569208e-09, -5.101219703703741928e-09, -5.144482128074942864e-09, -5.187722854251383296e-09, -5.230941816933260938e-09, -5.274138950863041605e-09, -5.317314190853258274e-09, -5.360467471764829850e-09, -5.403598728515048427e-09, -5.446707896085579773e-09, -5.489794909500912798e-09, -5.532859703855951815e-09, -5.575902214292514687e-09, -5.618922376019181022e-09, -5.661920124289623354e-09, -5.704895394420430400e-09, -5.747848121789312908e-09, -5.790778241823304750e-09, -5.833685690016532420e-09, -5.876570401908829101e-09, -5.919432313103424754e-09, -5.962271359266919648e-09, -6.005087476109957281e-09, -6.047880599414633015e-09, -6.090650665013046932e-09, -6.133397608795316737e-09, -6.176121366717330918e-09, -6.218821874779487726e-09, -6.261499069054141026e-09, -6.304152885665949794e-09, -6.346783260792269374e-09, -6.389390130680526410e-09, -6.431973431627096781e-09, -6.474533099994730995e-09, -6.517069072197141332e-09, -6.559581284716752309e-09, -6.602069674083133603e-09, -6.644534176890759616e-09, -6.686974729799027678e-09, -6.729391269511054092e-09, -6.771783732810530001e-09, -6.814152056521166370e-09, -6.856496177533972755e-09, -6.898816032805229876e-09, -6.941111559337355281e-09, -6.983382694206044795e-09, -7.025629374541014097e-09, -7.067851537526110394e-09, -7.110049120416743599e-09, -7.152222060518760959e-09, -7.194370295205992389e-09, -7.236493761908528493e-09, -7.278592398111148093e-09, -7.320666141370531860e-09, -7.362714929294365248e-09, -7.404738699560443058e-09, -7.446737389895802981e-09, -7.488710938094038487e-09, -7.530659282013449247e-09, -7.572582359565570627e-09, -7.614480108732584174e-09, -7.656352467544422923e-09, -7.698199374105613400e-09, -7.740020766576258741e-09, -7.781816583170104746e-09, -7.823586762181724340e-09, -7.865331241945977456e-09, -7.907049960874784169e-09, -7.948742857436013398e-09, -7.990409870153635106e-09, -8.032050937624971976e-09, -8.073665998499751895e-09, -8.115254991499430886e-09, -8.156817855396060305e-09, -8.198354529029649355e-09, -8.239864951306401543e-09, -8.281349061187243335e-09, -8.322806797705171790e-09, -8.364238099944242517e-09, -8.405642907057048003e-09, -8.447021158264467803e-09, -8.488372792835058506e-09, -8.529697750121165136e-09, -8.570995969517265989e-09, -8.612267390496065831e-09, -8.653511952587750209e-09, -8.694729595379985448e-09, -8.735920258535327502e-09, -8.777083881770079209e-09, -8.818220404871671014e-09, -8.859329767687288889e-09, -8.900411910122147183e-09, -8.941466772156477251e-09, -8.982494293824885996e-09, -9.023494415235419068e-09, -9.064467076548681174e-09, -9.105412217994995112e-09, -9.146329779874524192e-09, -9.187219702536516623e-09, -9.228081926415324265e-09, -9.268916391990848503e-09, -9.309723039814824743e-09, -9.350501810509498920e-09, -9.391252644748266508e-09, -9.431975483282584018e-09, -9.472670266922923988e-09, -9.513336936537224845e-09, -9.553975433077110883e-09, -9.594585697538488680e-09, -9.635167670997632028e-09, -9.675721294586383059e-09, -9.716246509511324637e-09, -9.756743257033115730e-09, -9.797211478483513135e-09, -9.837651115263435873e-09, -9.878062108831927295e-09, -9.918444400723166873e-09, -9.958797932525716241e-09, -9.999122645899582281e-09, -1.003941848257632465e-08, -1.007968538434035653e-08, -1.011992329305527381e-08, -1.016013215064513595e-08, -1.020031189909277032e-08, -1.024046248046603346e-08, -1.028058383687851838e-08, -1.032067591052527557e-08, -1.036073864366211684e-08, -1.040077197860607203e-08, -1.044077585775191435e-08, -1.048075022355179358e-08, -1.052069501853232725e-08, -1.056061018528312272e-08, -1.060049566645532458e-08, -1.064035140477818813e-08, -1.068017734303889610e-08, -1.071997342410103128e-08, -1.075973959088260331e-08, -1.079947578638178056e-08, -1.083918195365701801e-08, -1.087885803583406673e-08, -1.091850397611370306e-08, -1.095811971775157192e-08, -1.099770520408376151e-08, -1.103726037850880722e-08, -1.107678518448751955e-08, -1.111627956555981891e-08, -1.115574346532441012e-08, -1.119517682745541206e-08, -1.123457959569151663e-08, -1.127395171383415905e-08, -1.131329312576412266e-08, -1.135260377542134247e-08, -1.139188360682362925e-08, -1.143113256404618853e-08, -1.147035059123830648e-08, -1.150953763262178155e-08, -1.154869363247977249e-08, -1.158781853517344116e-08, -1.162691228512012324e-08, -1.166597482681880212e-08, -1.170500610483234601e-08, -1.174400606378700002e-08, -1.178297464838925739e-08, -1.182191180340591113e-08, -1.186081747368013946e-08, -1.189969160412114117e-08, -1.193853413970202634e-08, -1.197734502547652869e-08, -1.201612420655882733e-08, -1.205487162814185392e-08, -1.209358723547759919e-08, -1.213227097389320651e-08, -1.217092278878943338e-08, -1.220954262562986331e-08, -1.224813042995695644e-08, -1.228668614737285732e-08, -1.232520972355505174e-08, -1.236370110425678864e-08, -1.240216023528726744e-08, -1.244058706254589657e-08, -1.247898153198459225e-08, -1.251734358963304881e-08, -1.255567318159699669e-08, -1.259397025404027909e-08, -1.263223475321007929e-08, -1.267046662541540239e-08, -1.270866581704520384e-08, -1.274683227454858171e-08, -1.278496594445110030e-08, -1.282306677335310600e-08, -1.286113470791881846e-08, -1.289916969489279141e-08, -1.293717168108010178e-08, -1.297514061336254250e-08, -1.301307643869879296e-08, -1.305097910410475027e-08, -1.308884855668739242e-08, -1.312668474360793562e-08, -1.316448761210599295e-08, -1.320225710949853542e-08, -1.323999318316195538e-08, -1.327769578055691174e-08, -1.331536484921082514e-08, -1.335300033671594735e-08, -1.339060219075461174e-08, -1.342817035906173722e-08, -1.346570478945863673e-08, -1.350320542983011102e-08, -1.354067222814223625e-08, -1.357810513242289720e-08, -1.361550409077783784e-08, -1.365286905139063984e-08, -1.369019996250364944e-08, -1.372749677245099518e-08, -1.376475942962218865e-08, -1.380198788248653293e-08, -1.383918207959154104e-08, -1.387634196954552047e-08, -1.391346750104188730e-08, -1.395055862284217595e-08, -1.398761528377394805e-08, -1.402463743275544740e-08, -1.406162501875903026e-08, -1.409857799084448427e-08, -1.413549629813968063e-08, -1.417237988984067503e-08, -1.420922871522788238e-08, -1.424604272364625585e-08, -1.428282186452153603e-08, -1.431956608734977883e-08, -1.435627534169556051e-08, -1.439294957720773873e-08, -1.442958874360053334e-08, -1.446619279067060596e-08, -1.450276166827686022e-08, -1.453929532636425967e-08, -1.457579371494675964e-08, -1.461225678410565957e-08, -1.464868448401379799e-08, -1.468507676489955534e-08, -1.472143357707919003e-08, -1.475775487093878446e-08, -1.479404059693344926e-08, -1.483029070560325973e-08, -1.486650514755443916e-08, -1.490268387347482709e-08, -1.493882683412361234e-08, -1.497493398032962078e-08, -1.501100526300688283e-08, -1.504704063313605666e-08, -1.508304004178108760e-08, -1.511900344007095393e-08, -1.515493077921485057e-08, -1.519082201050056786e-08, -1.522667708528435691e-08, -1.526249595500629531e-08, -1.529827857117189063e-08, -1.533402488536681086e-08, -1.536973484925756934e-08, -1.540540841457435573e-08, -1.544104553313469677e-08, -1.547664615682351122e-08, -1.551221023760809184e-08, -1.554773772752835779e-08, -1.558322857869475371e-08, -1.561868274330396274e-08, -1.565410017362014942e-08, -1.568948082199186065e-08, -1.572482464083370529e-08, -1.576013158264148822e-08, -1.579540159999048986e-08, -1.583063464552574511e-08, -1.586583067197675062e-08, -1.590098963213945873e-08, -1.593611147889123622e-08, -1.597119616519091721e-08, -1.600624364406216696e-08, -1.604125386861703991e-08, -1.607622679203752037e-08, -1.611116236758228552e-08, -1.614606054859347175e-08, -1.618092128847828810e-08, -1.621574454073253796e-08, -1.625053025892068072e-08, -1.628527839669241838e-08, -1.631998890776438508e-08, -1.635466174593562862e-08, -1.638929686508542671e-08, -1.642389421916366851e-08, -1.645845376220571739e-08, -1.649297544831441813e-08, -1.652745923167494644e-08, -1.656190506655470972e-08, -1.659631290728729642e-08, -1.663068270829513090e-08, -1.666501442407169231e-08, -1.669930800918816848e-08, -1.673356341829986487e-08, -1.676778060612842685e-08, -1.680195952748468306e-08, -1.683610013725268090e-08, -1.687020239038909419e-08, -1.690426624193847645e-08, -1.693829164701532095e-08, -1.697227856081853641e-08, -1.700622693862203697e-08, -1.704013673577290917e-08, -1.707400790770605637e-08, -1.710784040992693049e-08, -1.714163419802710949e-08, -1.717538922766361126e-08, -1.720910545458961177e-08, -1.724278283462069612e-08, -1.727642132365742072e-08, -1.731002087768359272e-08, -1.734358145275062311e-08, -1.737710300499961240e-08, -1.741058549064569049e-08, -1.744402886597788754e-08, -1.747743308737361637e-08, -1.751079811128120228e-08, -1.754412389423435882e-08, -1.757741039284233432e-08, -1.761065756378898222e-08, -1.764386536384648560e-08, -1.767703374985818823e-08, -1.771016267875464188e-08, -1.774325210753604692e-08, -1.777630199328663207e-08, -1.780931229317293378e-08, -1.784228296443487270e-08, -1.787521396439945832e-08, -1.790810525046201867e-08, -1.794095678010842164e-08, -1.797376851089963651e-08, -1.800654040046955018e-08, -1.803927240654753597e-08, -1.807196448692565096e-08, -1.810461659948794794e-08, -1.813722870219355460e-08, -1.816980075307675297e-08, -1.820233271026125323e-08, -1.823482453194260784e-08, -1.826727617640440445e-08, -1.829968760200062706e-08, -1.833205876717024426e-08, -1.836438963043526689e-08, -1.839668015039168227e-08, -1.842893028572352278e-08, -1.846113999518549513e-08, -1.849330923761757512e-08, -1.852543797194439550e-08, -1.855752615715888438e-08, -1.858957375235130256e-08, -1.862158071667678827e-08, -1.865354700937725758e-08, -1.868547258977977656e-08, -1.871735741728131795e-08, -1.874920145137014547e-08, -1.878100465160749670e-08, -1.881276697764185691e-08, -1.884448838919885758e-08, -1.887616884608067083e-08, -1.890780830817948920e-08, -1.893940673546065780e-08, -1.897096408797824840e-08, -1.900248032585796002e-08, -1.903395540931136296e-08, -1.906538929863547195e-08, -1.909678195419625550e-08, -1.912813333645768979e-08, -1.915944340594958797e-08, -1.919071212328925241e-08, -1.922193944917950604e-08, -1.925312534439438212e-08, -1.928426976979951918e-08, -1.931537268633745709e-08, -1.934643405502623086e-08, -1.937745383698039420e-08, -1.940843199337951393e-08, -1.943936848549673087e-08, -1.947026327468212353e-08, -1.950111632236328056e-08, -1.953192759005827095e-08, -1.956269703935931876e-08, -1.959342463194655088e-08, -1.962411032957590367e-08, -1.965475409409254970e-08, -1.968535588741452296e-08, -1.971591567154665842e-08, -1.974643340857980131e-08, -1.977690906067660939e-08, -1.980734259009206368e-08, -1.983773395915893657e-08, -1.986808313028602168e-08, -1.989839006597919714e-08, -1.992865472881002915e-08, -1.995887708144468693e-08, -1.998905708662670091e-08, -2.001919470717763443e-08, -2.004928990601025578e-08, -2.007934264611236184e-08, -2.010935289056011552e-08, -2.013932060250891705e-08, -2.016924574519273555e-08, -2.019912828193658295e-08, -2.022896817614073472e-08, -2.025876539129548010e-08, -2.028851989096337082e-08, -2.031823163880009254e-08, -2.034790059853794772e-08, -2.037752673399225132e-08, -2.040711000906691928e-08, -2.043665038773827564e-08, -2.046614783407581805e-08, -2.049560231222764287e-08, -2.052501378642036242e-08, -2.055438222097229691e-08, -2.058370758027733114e-08, -2.061298982881865895e-08, -2.064222893115922431e-08, -2.067142485194076180e-08, -2.070057755589706460e-08, -2.072968700783767906e-08, -2.075875317266256903e-08, -2.078777601534634970e-08, -2.081675550095139688e-08, -2.084569159462610979e-08, -2.087458426159639122e-08, -2.090343346717891873e-08, -2.093223917676502789e-08, -2.096100135583373874e-08, -2.098971996995214289e-08, -2.101839498476034553e-08, -2.104702636599255852e-08, -2.107561407945907450e-08, -2.110415809105955469e-08, -2.113265836677446263e-08, -2.116111487266371753e-08, -2.118952757487939974e-08, -2.121789643965012366e-08, -2.124622143329576821e-08, -2.127450252221108206e-08, -2.130273967287907075e-08, -2.133093285186943166e-08, -2.135908202582991822e-08, -2.138718716149961126e-08, -2.141524822569258706e-08, -2.144326518531176115e-08, -2.147123800734779964e-08, -2.149916665886574877e-08, -2.152705110702452980e-08, -2.155489131906148076e-08, -2.158268726229825251e-08, -2.161043890414605644e-08, -2.163814621209056339e-08, -2.166580915371163034e-08, -2.169342769666620416e-08, -2.172100180870243006e-08, -2.174853145764454060e-08, -2.177601661140526016e-08, -2.180345723798424647e-08, -2.183085330546028536e-08, -2.185820478200336760e-08, -2.188551163585979302e-08, -2.191277383536422751e-08, -2.193999134894003387e-08, -2.196716414508427008e-08, -2.199429219239347749e-08, -2.202137545953520261e-08, -2.204841391526684033e-08, -2.207540752843500523e-08, -2.210235626796098314e-08, -2.212926010286045775e-08, -2.215611900222967019e-08, -2.218293293524568048e-08, -2.220970187117827886e-08, -2.223642577937534145e-08, -2.226310462927515520e-08, -2.228973839039796741e-08, -2.231632703234486080e-08, -2.234287052480999906e-08, -2.236936883756557878e-08, -2.239582194047565332e-08, -2.242222980347826569e-08, -2.244859239661164039e-08, -2.247490968998521886e-08, -2.250118165379905853e-08, -2.252740825834221484e-08, -2.255358947397942033e-08, -2.257972527117010319e-08, -2.260581562045453692e-08, -2.263186049245312897e-08, -2.265785985788455916e-08, -2.268381368753842647e-08, -2.270972195229971041e-08, -2.273558462313511594e-08, -2.276140167109230916e-08, -2.278717306731255991e-08, -2.281289878301536949e-08, -2.283857878951288670e-08, -2.286421305819406244e-08, -2.288980156053769264e-08, -2.291534426811017498e-08, -2.294084115255857707e-08, -2.296629218562142628e-08, -2.299169733911548467e-08, -2.301705658494632375e-08, -2.304236989510972071e-08, -2.306763724167586925e-08, -2.309285859681522724e-08, -2.311803393276933718e-08, -2.314316322187602206e-08, -2.316824643655443992e-08, -2.319328354930589109e-08, -2.321827453272500179e-08, -2.324321935948568509e-08, -2.326811800235243370e-08, -2.329297043417329877e-08, -2.331777662787793781e-08, -2.334253655648960875e-08, -2.336725019311087962e-08, -2.339191751093670458e-08, -2.341653848324008396e-08, -2.344111308338363482e-08, -2.346564128481973654e-08, -2.349012306107648864e-08, -2.351455838578178169e-08, -2.353894723263684410e-08, -2.356328957543377504e-08, -2.358758538805473710e-08, -2.361183464445878756e-08, -2.363603731869972238e-08, -2.366019338491129940e-08, -2.368430281731810420e-08, -2.370836559022842643e-08, -2.373238167803266499e-08, -2.375635105521524605e-08, -2.378027369633994557e-08, -2.380414957606313079e-08, -2.382797866911976105e-08, -2.385176095033477307e-08, -2.387549639462161190e-08, -2.389918497697500798e-08, -2.392282667248203488e-08, -2.394642145630873878e-08, -2.396996930371104726e-08, -2.399347019003448153e-08, -2.401692409070265193e-08, -2.404033098123386445e-08, -2.406369083722892476e-08, -2.408700363437016216e-08, -2.411026934843853231e-08, -2.413348795528784237e-08, -2.415665943086779947e-08, -2.417978375121105712e-08, -2.420286089243290749e-08, -2.422589083074231266e-08, -2.424887354242846795e-08, -2.427180900387221035e-08, -2.429469719153553980e-08, -2.431753808197305416e-08, -2.434033165181879373e-08, -2.436307787779655449e-08, -2.438577673672038116e-08, -2.440842820548253335e-08, -2.443103226106972805e-08, -2.445358888055109926e-08, -2.447609804108178126e-08, -2.449855971990835482e-08, -2.452097389435567515e-08, -2.454334054184343867e-08, -2.456565963987429479e-08, -2.458793116603406099e-08, -2.461015509800232721e-08, -2.463233141353915155e-08, -2.465446009049610805e-08, -2.467654110680895128e-08, -2.469857444049664025e-08, -2.472056006967176417e-08, -2.474249797252778741e-08, -2.476438812735041815e-08, -2.478623051250563753e-08, -2.480802510644919562e-08, -2.482977188772579751e-08, -2.485147083496247257e-08, -2.487312192687872902e-08, -2.489472514227252155e-08, -2.491628046003672216e-08, -2.493778785914784737e-08, -2.495924731866522773e-08, -2.498065881774210522e-08, -2.500202233561268299e-08, -2.502333785160260400e-08, -2.504460534512191677e-08, -2.506582479566402311e-08, -2.508699618281646795e-08, -2.510811948624720144e-08, -2.512919468571712903e-08, -2.515022176106712463e-08, -2.517120069222819179e-08, -2.519213145922054381e-08, -2.521301404214666540e-08, -2.523384842120148364e-08, -2.525463457666039705e-08, -2.527537248888866246e-08, -2.529606213834196075e-08, -2.531670350555509429e-08, -2.533729657115734602e-08, -2.535784131585956220e-08, -2.537833772046364181e-08, -2.539878576585670991e-08, -2.541918543300910594e-08, -2.543953670298468044e-08, -2.545983955692894985e-08, -2.548009397607974726e-08, -2.550029994175516545e-08, -2.552045743536362202e-08, -2.554056643840281380e-08, -2.556062693245284801e-08, -2.558063889918637020e-08, -2.560060232035619956e-08, -2.562051717780574150e-08, -2.564038345346841524e-08, -2.566020112935599381e-08, -2.567997018757901565e-08, -2.569969061032454330e-08, -2.571936237987063913e-08, -2.573898547858570684e-08, -2.575855988891760909e-08, -2.577808559340865275e-08, -2.579756257468497445e-08, -2.581699081545639836e-08, -2.583637029852654098e-08, -2.585570100678043326e-08, -2.587498292319412909e-08, -2.589421603082690334e-08, -2.591340031283007957e-08, -2.593253575243566450e-08, -2.595162233296594337e-08, -2.597066003783323835e-08, -2.598964885052878466e-08, -2.600858875464210973e-08, -2.602747973383934123e-08, -2.604632177187784153e-08, -2.606511485260504968e-08, -2.608385895994843609e-08, -2.610255407792914772e-08, -2.612120019065303815e-08, -2.613979728230847717e-08, -2.615834533718095882e-08, -2.617684433963198843e-08, -2.619529427411828641e-08, -2.621369512518027063e-08, -2.623204687744252625e-08, -2.625034951562307343e-08, -2.626860302452135006e-08, -2.628680738902900151e-08, -2.630496259411691707e-08, -2.632306862485381500e-08, -2.634112546638538108e-08, -2.635913310394852256e-08, -2.637709152286973698e-08, -2.639500070855625137e-08, -2.641286064650873443e-08, -2.643067132231206181e-08, -2.644843272163408533e-08, -2.646614483023957589e-08, -2.648380763396952081e-08, -2.650142111875941778e-08, -2.651898527062963651e-08, -2.653650007568389013e-08, -2.655396552011887678e-08, -2.657138159021351968e-08, -2.658874827233759625e-08, -2.660606555294595448e-08, -2.662333341857736480e-08, -2.664055185586335765e-08, -2.665772085151806244e-08, -2.667484039234676720e-08, -2.669191046523636956e-08, -2.670893105716347328e-08, -2.672590215519438155e-08, -2.674282374647489956e-08, -2.675969581824799313e-08, -2.677651835783366177e-08, -2.679329135264579327e-08, -2.681001479018255523e-08, -2.682668865802647109e-08, -2.684331294385236115e-08, -2.685988763541724096e-08, -2.687641272056873874e-08, -2.689288818723992057e-08, -2.690931402344745731e-08, -2.692569021730077654e-08, -2.694201675699143495e-08, -2.695829363080242580e-08, -2.697452082709810711e-08, -2.699069833433262240e-08, -2.700682614104845811e-08, -2.702290423587172860e-08, -2.703893260751954142e-08, -2.705491124479062038e-08, -2.707084013657323657e-08, -2.708671927184486750e-08, -2.710254863966375334e-08, -2.711832822918114242e-08, -2.713405802963183493e-08, -2.714973803033679680e-08, -2.716536822070767284e-08, -2.718094859023667523e-08, -2.719647912850891844e-08, -2.721195982519168580e-08, -2.722739067004358465e-08, -2.724277165290450443e-08, -2.725810276370415975e-08, -2.727338399246011513e-08, -2.728861532927337776e-08, -2.730379676433606381e-08, -2.731892828792172703e-08, -2.733400989039307801e-08, -2.734904156220194777e-08, -2.736402329388138988e-08, -2.737895507605655946e-08, -2.739383689943583928e-08, -2.740866875481439324e-08, -2.742345063307733952e-08, -2.743818252519049270e-08, -2.745286442221186162e-08, -2.746749631528407237e-08, -2.748207819563332277e-08, -2.749661005457760122e-08, -2.751109188351703513e-08, -2.752552367394174258e-08, -2.753990541742514862e-08, -2.755423710563116527e-08, -2.756851873030496678e-08, -2.758275028328134413e-08, -2.759693175648350398e-08, -2.761106314191469762e-08, -2.762514443167347084e-08, -2.763917561793673322e-08, -2.765315669297113020e-08, -2.766708764913187511e-08, -2.768096847885535414e-08, -2.769479917466946948e-08, -2.770857972918641297e-08, -2.772231013510206733e-08, -2.773599038520361283e-08, -2.774962047236049780e-08, -2.776320038953150281e-08, -2.777673012976009844e-08, -2.779020968617419392e-08, -2.780363905199205963e-08, -2.781701822051436313e-08, -2.783034718513208020e-08, -2.784362593931765400e-08, -2.785685447663200625e-08, -2.787003279072370010e-08, -2.788316087532478438e-08, -2.789623872425679562e-08, -2.790926633142216865e-08, -2.792224369081498987e-08, -2.793517079651295050e-08, -2.794804764267679069e-08, -2.796087422356077826e-08, -2.797365053349743559e-08, -2.798637656691080437e-08, -2.799905231830885529e-08, -2.801167778228332933e-08, -2.802425295351633526e-08, -2.803677782677224994e-08, -2.804925239690520593e-08, -2.806167665885055172e-08, -2.807405060763211100e-08, -2.808637423836105446e-08, -2.809864754623104914e-08, -2.811087052652558068e-08, -2.812304317460966162e-08, -2.813516548593612464e-08, -2.814723745604568867e-08, -2.815925908055941837e-08, -2.817123035519187959e-08, -2.818315127573530712e-08, -2.819502183807360723e-08, -2.820684203817422147e-08, -2.821861187208786536e-08, -2.823033133595547664e-08, -2.824200042599990379e-08, -2.825361913853272199e-08, -2.826518746994949502e-08, -2.827670541672918302e-08, -2.828817297544060112e-08, -2.829959014273455125e-08, -2.831095691535094919e-08, -2.832227329011075124e-08, -2.833353926392310771e-08, -2.834475483378411552e-08, -2.835591999676976069e-08, -2.836703475004950725e-08, -2.837809909087083231e-08, -2.838911301656952609e-08, -2.840007652456869928e-08, -2.841098961237235426e-08, -2.842185227757420937e-08, -2.843266451785133962e-08, -2.844342633096322046e-08, -2.845413771476148515e-08, -2.846479866717557158e-08, -2.847540918622543767e-08, -2.848596927001269068e-08, -2.849647891672794580e-08, -2.850693812464239888e-08, -2.851734689211448682e-08, -2.852770521758917624e-08, -2.853801309959371507e-08, -2.854827053674374378e-08, -2.855847752773570843e-08, -2.856863407135366344e-08, -2.857874016646793158e-08, -2.858879581202941619e-08, -2.859880100707840250e-08, -2.860875575073833713e-08, -2.861866004221468000e-08, -2.862851388080436401e-08, -2.863831726588175274e-08, -2.864807019691176292e-08, -2.865777267344156278e-08, -2.866742469510122723e-08, -2.867702626160947516e-08, -2.868657737276656230e-08, -2.869607802845980018e-08, -2.870552822865985037e-08, -2.871492797342044319e-08, -2.872427726288329456e-08, -2.873357609727165719e-08, -2.874282447689623338e-08, -2.875202240214831924e-08, -2.876116987350758359e-08, -2.877026689153564236e-08, -2.877931345687917541e-08, -2.878830957027099530e-08, -2.879725523252435291e-08, -2.880615044454094791e-08, -2.881499520730503918e-08, -2.882378952188342504e-08, -2.883253338943047902e-08, -2.884122681118214464e-08, -2.884986978846093148e-08, -2.885846232267208375e-08, -2.886700441530343137e-08, -2.887549606793027694e-08, -2.888393728220928125e-08, -2.889232805988383333e-08, -2.890066840277793590e-08, -2.890895831280169789e-08, -2.891719779194972970e-08, -2.892538684229882376e-08, -2.893352546601216325e-08, -2.894161366533297597e-08, -2.894965144259231643e-08, -2.895763880020336828e-08, -2.896557574066125896e-08, -2.897346226654865810e-08, -2.898129838052882258e-08, -2.898908408535097650e-08, -2.899681938384696938e-08, -2.900450427893051515e-08, -2.901213877360244970e-08, -2.901972287094418626e-08, -2.902725657412371408e-08, -2.903473988638917950e-08, -2.904217281107361418e-08, -2.904955535159476958e-08, -2.905688751145173549e-08, -2.906416929422948623e-08, -2.907140070359316313e-08, -2.907858174329319978e-08, -2.908571241716448822e-08, -2.909279272912160115e-08, -2.909982268316614057e-08, -2.910680228338056045e-08, -2.911373153393085338e-08, -2.912061043906780788e-08, -2.912743900312187327e-08, -2.913421723051054807e-08, -2.914094512573108090e-08, -2.914762269336684976e-08, -2.915424993808085376e-08, -2.916082686462058682e-08, -2.916735347781756459e-08, -2.917382978258389655e-08, -2.918025578391757011e-08, -2.918663148689582316e-08, -2.919295689668043147e-08, -2.919923201851722560e-08, -2.920545685773097229e-08, -2.921163141973431133e-08, -2.921775571001777316e-08, -2.922382973415613820e-08, -2.922985349780878761e-08, -2.923582700671374095e-08, -2.924175026669500155e-08, -2.924762328365755371e-08, -2.925344606358749510e-08, -2.925921861255596743e-08, -2.926494093671418685e-08, -2.927061304229770881e-08, -2.927623493562235507e-08, -2.928180662308845218e-08, -2.928732811117566982e-08, -2.929279940644764315e-08, -2.929822051555091397e-08, -2.930359144521090402e-08, -2.930891220224003792e-08, -2.931418279352823055e-08, -2.931940322604889241e-08, -2.932457350685914798e-08, -2.932969364309449875e-08, -2.933476364197581790e-08, -2.933978351080406289e-08, -2.934475325696060969e-08, -2.934967288791274196e-08, -2.935454241120500862e-08, -2.935936183446641044e-08, -2.936413116540710783e-08, -2.936885041181686906e-08, -2.937351958157024182e-08, -2.937813868262046512e-08, -2.938270772300511732e-08, -2.938722671084019680e-08, -2.939169565432470787e-08, -2.939611456173938690e-08, -2.940048344144525308e-08, -2.940480230188604370e-08, -2.940907115158456457e-08, -2.941328999914676968e-08, -2.941745885325984881e-08, -2.942157772268930917e-08, -2.942564661628656233e-08, -2.942966554297908080e-08, -2.943363451177911646e-08, -2.943755353177814855e-08, -2.944142261214778367e-08, -2.944524176214285267e-08, -2.944901099109715902e-08, -2.945273030842637722e-08, -2.945639972362683847e-08, -2.946001924627391276e-08, -2.946358888602633002e-08, -2.946710865262124353e-08, -2.947057855587878600e-08, -2.947399860569702380e-08, -2.947736881205562302e-08, -2.948068918501608438e-08, -2.948395973471721358e-08, -2.948718047138235419e-08, -2.949035140531152280e-08, -2.949347254688638535e-08, -2.949654390657029682e-08, -2.949956549490410247e-08, -2.950253732251123328e-08, -2.950545940009374871e-08, -2.950833173843488772e-08, -2.951115434839758316e-08, -2.951392724092332026e-08, -2.951665042703637510e-08, -2.951932391783849419e-08, -2.952194772451331824e-08, -2.952452185832225616e-08, -2.952704633060749601e-08, -2.952952115279185280e-08, -2.953194633637613144e-08, -2.953432189294272332e-08, -2.953664783415174833e-08, -2.953892417174379449e-08, -2.954115091753985510e-08, -2.954332808343820858e-08, -2.954545568141888196e-08, -2.954753372354021974e-08, -2.954956222193870521e-08, -2.955154118883353969e-08, -2.955347063651939320e-08, -2.955535057737275381e-08, -2.955718102384780172e-08, -2.955896198847923488e-08, -2.956069348387920513e-08, -2.956237552273946225e-08, -2.956400811783193629e-08, -2.956559128200592846e-08, -2.956712502819090039e-08, -2.956860936939384039e-08, -2.957004431870128837e-08, -2.957142988927914067e-08, -2.957276609437046954e-08, -2.957405294729834225e-08, -2.957529046146421299e-08, -2.957647865034743322e-08, -2.957761752750711113e-08, -2.957870710657902796e-08, -2.957974740127917499e-08, -2.958073842540136464e-08, -2.958168019281639341e-08, -2.958257271747572441e-08, -2.958341601340731844e-08, -2.958421009471812213e-08, -2.958495497559316792e-08, -2.958565067029451205e-08, -2.958629719316396416e-08, -2.958689455861994409e-08, -2.958744278116002291e-08, -2.958794187535828259e-08, -2.958839185586800933e-08, -2.958879273741960237e-08, -2.958914453482085861e-08, -2.958944726295853761e-08, -2.958970093679534735e-08, -2.958990557137294522e-08, -2.959006118181051861e-08, -2.959016778330346802e-08, -2.959022539112624593e-08, -2.959023402062950472e-08, -2.959019368724218444e-08, -2.959010440647018272e-08, -2.958996619389581215e-08, -2.958977906518016265e-08, -2.958954303606034870e-08, -2.958925812235129598e-08, -2.958892433994416977e-08, -2.958854170480751642e-08, -2.958811023298731634e-08, -2.958762994060582259e-08, -2.958710084386250057e-08, -2.958652295903331999e-08, -2.958589630247149265e-08, -2.958522089060655598e-08, -2.958449673994430355e-08, -2.958372386706799933e-08, -2.958290228863670020e-08, -2.958203202138667871e-08, -2.958111308213023853e-08, -2.958014548775568139e-08, -2.957912925522849818e-08, -2.957806440158965179e-08, -2.957695094395722807e-08, -2.957578889952446063e-08, -2.957457828556119319e-08, -2.957331911941366791e-08, -2.957201141850369152e-08, -2.957065520032959491e-08, -2.956925048246480703e-08, -2.956779728255898649e-08, -2.956629561833811751e-08, -2.956474550760273312e-08, -2.956314696823044969e-08, -2.956150001817379304e-08, -2.955980467546086353e-08, -2.955806095819562390e-08, -2.955626888455700262e-08, -2.955442847279992621e-08, -2.955253974125422073e-08, -2.955060270832554817e-08, -2.954861739249454617e-08, -2.954658381231681476e-08, -2.954450198642369729e-08, -2.954237193352108590e-08, -2.954019367239045388e-08, -2.953796722188769101e-08, -2.953569260094398367e-08, -2.953336982856537145e-08, -2.953099892383261152e-08, -2.952857990590165508e-08, -2.952611279400247606e-08, -2.952359760744007037e-08, -2.952103436559437979e-08, -2.951842308791908098e-08, -2.951576379394301484e-08, -2.951305650326951818e-08, -2.951030123557555015e-08, -2.950749801061349890e-08, -2.950464684820899772e-08, -2.950174776826250670e-08, -2.949880079074850201e-08, -2.949580593571525098e-08, -2.949276322328532821e-08, -2.948967267365567186e-08, -2.948653430709673325e-08, -2.948334814395252325e-08, -2.948011420464164124e-08, -2.947683250965569357e-08, -2.947350307956038544e-08, -2.947012593499499147e-08, -2.946670109667256418e-08, -2.946322858537936489e-08, -2.945970842197526739e-08, -2.945614062739341048e-08, -2.945252522264075388e-08, -2.944886222879687717e-08, -2.944515166701494257e-08, -2.944139355852157590e-08, -2.943758792461593016e-08, -2.943373478667071125e-08, -2.942983416613136072e-08, -2.942588608451629398e-08, -2.942189056341688049e-08, -2.941784762449727496e-08, -2.941375728949425857e-08, -2.940961958021772864e-08, -2.940543451854994756e-08, -2.940120212644559575e-08, -2.939692242593208263e-08, -2.939259543910940107e-08, -2.938822118814975352e-08, -2.938379969529752879e-08, -2.937933098286996056e-08, -2.937481507325609501e-08, -2.937025198891724080e-08, -2.936564175238670111e-08, -2.936098438626991918e-08, -2.935627991324442538e-08, -2.935152835605955269e-08, -2.934672973753626129e-08, -2.934188408056803194e-08, -2.933699140811937377e-08, -2.933205174322671757e-08, -2.932706510899822727e-08, -2.932203152861349879e-08, -2.931695102532363616e-08, -2.931182362245092396e-08, -2.930664934338982324e-08, -2.930142821160531717e-08, -2.929616025063388377e-08, -2.929084548408321472e-08, -2.928548393563210281e-08, -2.928007562903056112e-08, -2.927462058809909834e-08, -2.926911883672993309e-08, -2.926357039888564732e-08, -2.925797529859968256e-08, -2.925233355997635978e-08, -2.924664520719051215e-08, -2.924091026448791186e-08, -2.923512875618448260e-08, -2.922930070666683563e-08, -2.922342614039230616e-08, -2.921750508188823533e-08, -2.921153755575248309e-08, -2.920552358665274659e-08, -2.919946319932742708e-08, -2.919335641858490197e-08, -2.918720326930323038e-08, -2.918100377643129461e-08, -2.917475796498691421e-08, -2.916846586005852680e-08, -2.916212748680409617e-08, -2.915574287045102295e-08, -2.914931203629697514e-08, -2.914283500970874324e-08, -2.913631181612287223e-08, -2.912974248104533072e-08, -2.912312703005162674e-08, -2.911646548878665883e-08, -2.910975788296411058e-08, -2.910300423836756234e-08, -2.909620458084914455e-08, -2.908935893633034181e-08, -2.908246733080208216e-08, -2.907552979032345335e-08, -2.906854634102332076e-08, -2.906151700909814698e-08, -2.905444182081440714e-08, -2.904732080250676918e-08, -2.904015398057806070e-08, -2.903294138150081415e-08, -2.902568303181488127e-08, -2.901837895812909071e-08, -2.901102918712097675e-08, -2.900363374553546906e-08, -2.899619266018671906e-08, -2.898870595795610482e-08, -2.898117366579346516e-08, -2.897359581071754968e-08, -2.896597241981373902e-08, -2.895830352023607315e-08, -2.895058913920575245e-08, -2.894282930401303036e-08, -2.893502404201420571e-08, -2.892717338063428960e-08, -2.891927734736597302e-08, -2.891133596976853501e-08, -2.890334927546976833e-08, -2.889531729216385193e-08, -2.888724004761267779e-08, -2.887911756964594682e-08, -2.887094988615876678e-08, -2.886273702511570874e-08, -2.885447901454657854e-08, -2.884617588254842188e-08, -2.883782765728628531e-08, -2.882943436699050312e-08, -2.882099603995915236e-08, -2.881251270455628932e-08, -2.880398438921331934e-08, -2.879541112242806374e-08, -2.878679293276406831e-08, -2.877812984885229736e-08, -2.876942189938888712e-08, -2.876066911313752137e-08, -2.875187151892749255e-08, -2.874302914565333451e-08, -2.873414202227780032e-08, -2.872521017782706796e-08, -2.871623364139537913e-08, -2.870721244214144930e-08, -2.869814660929015185e-08, -2.868903617213274636e-08, -2.867988116002492318e-08, -2.867068160238885479e-08, -2.866143752871176317e-08, -2.865214896854641610e-08, -2.864281595151155066e-08, -2.863343850728988469e-08, -2.862401666563048585e-08, -2.861455045634665403e-08, -2.860503990931758231e-08, -2.859548505448763571e-08, -2.858588592186472984e-08, -2.857624254152357022e-08, -2.856655494360140381e-08, -2.855682315830221784e-08, -2.854704721589384462e-08, -2.853722714670785903e-08, -2.852736298114241403e-08, -2.851745474965797577e-08, -2.850750248278080433e-08, -2.849750621110027370e-08, -2.848746596527062866e-08, -2.847738177601099472e-08, -2.846725367410304219e-08, -2.845708169039355703e-08, -2.844686585579253504e-08, -2.843660620127454173e-08, -2.842630275787790168e-08, -2.841595555670364642e-08, -2.840556462891767494e-08, -2.839513000574814647e-08, -2.838465171848807453e-08, -2.837412979849373539e-08, -2.836356427718335123e-08, -2.835295518604025989e-08, -2.834230255660964254e-08, -2.833160642050008540e-08, -2.832086680938464514e-08, -2.831008375499652108e-08, -2.829925728913461054e-08, -2.828838744365916779e-08, -2.827747425049334259e-08, -2.826651774162392798e-08, -2.825551794909894825e-08, -2.824447490503005768e-08, -2.823338864159037672e-08, -2.822225919101644741e-08, -2.821108658560609924e-08, -2.819987085772079837e-08, -2.818861203978325542e-08, -2.817731016427761736e-08, -2.816596526375202846e-08, -2.815457737081435544e-08, -2.814314651813573442e-08, -2.813167273844929041e-08, -2.812015606454817199e-08, -2.810859652928969045e-08, -2.809699416559039977e-08, -2.808534900642942850e-08, -2.807366108484810254e-08, -2.806193043394737759e-08, -2.805015708689085670e-08, -2.803834107690234182e-08, -2.802648243726742528e-08, -2.801458120133334755e-08, -2.800263740250658844e-08, -2.799065107425628175e-08, -2.797862225011052601e-08, -2.796655096366051709e-08, -2.795443724855614098e-08, -2.794228113850887223e-08, -2.793008266729068208e-08, -2.791784186873276126e-08, -2.790555877672912323e-08, -2.789323342523138300e-08, -2.788086584825284671e-08, -2.786845607986744953e-08, -2.785600415420770756e-08, -2.784351010546759310e-08, -2.783097396789937153e-08, -2.781839577581620528e-08, -2.780577556359180307e-08, -2.779311336565765386e-08, -2.778040921650628260e-08, -2.776766315068859003e-08, -2.775487520281642687e-08, -2.774204540756031080e-08, -2.772917379964921139e-08, -2.771626041387261143e-08, -2.770330528507767798e-08, -2.769030844817236596e-08, -2.767726993812310532e-08, -2.766418978995371250e-08, -2.765106803874945686e-08, -2.763790471965192219e-08, -2.762469986786309303e-08, -2.761145351864208230e-08, -2.759816570730727539e-08, -2.758483646923659815e-08, -2.757146583986431074e-08, -2.755805385468468029e-08, -2.754460054924804687e-08, -2.753110595916561119e-08, -2.751757012010515311e-08, -2.750399306779177610e-08, -2.749037483800992226e-08, -2.747671546660007023e-08, -2.746301498946285120e-08, -2.744927344255500570e-08, -2.743549086189004198e-08, -2.742166728354187567e-08, -2.740780274363770274e-08, -2.739389727836574522e-08, -2.737995092397015582e-08, -2.736596371675113368e-08, -2.735193569306852759e-08, -2.733786688933653541e-08, -2.732375734202740654e-08, -2.730960708767174964e-08, -2.729541616285410552e-08, -2.728118460421804923e-08, -2.726691244846216665e-08, -2.725259973234322090e-08, -2.723824649267205620e-08, -2.722385276631885206e-08, -2.720941859020856060e-08, -2.719494400132119770e-08, -2.718042903669616087e-08, -2.716587373342461259e-08, -2.715127812865755027e-08, -2.713664225960052886e-08, -2.712196616351321083e-08, -2.710724987771447818e-08, -2.709249343957548078e-08, -2.707769688652448038e-08, -2.706286025604681087e-08, -2.704798358567917737e-08, -2.703306691301819272e-08, -2.701811027571217517e-08, -2.700311371146601552e-08, -2.698807725804122010e-08, -2.697300095325124220e-08, -2.695788483496699436e-08, -2.694272894111204084e-08, -2.692753330966834486e-08, -2.691229797866719273e-08, -2.689702298619952045e-08, -2.688170837040864107e-08, -2.686635416949106528e-08, -2.685096042170095166e-08, -2.683552716534322118e-08, -2.682005443877889093e-08, -2.680454228042468692e-08, -2.678899072874647633e-08, -2.677339982226968003e-08, -2.675776959956938611e-08, -2.674210009927627916e-08, -2.672639136007585602e-08, -2.671064342070482596e-08, -2.669485631995539876e-08, -2.667903009667149623e-08, -2.666316478975133960e-08, -2.664726043814805175e-08, -2.663131708086480992e-08, -2.661533475696049036e-08, -2.659931350554468214e-08, -2.658325336578286854e-08, -2.656715437689176513e-08, -2.655101657813936605e-08, -2.653484000885090964e-08, -2.651862470839785380e-08, -2.650237071621069395e-08, -2.648607807176741561e-08, -2.646974681460091586e-08, -2.645337698429720338e-08, -2.643696862049163977e-08, -2.642052176287442209e-08, -2.640403645118547416e-08, -2.638751272521789762e-08, -2.637095062481815386e-08, -2.635435018988171969e-08, -2.633771146035792469e-08, -2.632103447624537524e-08, -2.630431927759725177e-08, -2.628756590451685197e-08, -2.627077439715744512e-08, -2.625394479572610367e-08, -2.623707714047796255e-08, -2.622017147172321385e-08, -2.620322782982089301e-08, -2.618624625517948101e-08, -2.616922678826248953e-08, -2.615216946957980857e-08, -2.613507433969540262e-08, -2.611794143922094794e-08, -2.610077080882058718e-08, -2.608356248921017503e-08, -2.606631652115240446e-08, -2.604903294546337783e-08, -2.603171180300634679e-08, -2.601435313469830327e-08, -2.599695698150419251e-08, -2.597952338443842515e-08, -2.596205238456697166e-08, -2.594454402300286575e-08, -2.592699834091232227e-08, -2.590941537950944979e-08, -2.589179518005618780e-08, -2.587413778386781567e-08, -2.585644323230485628e-08, -2.583871156677994155e-08, -2.582094282875425231e-08, -2.580313705973601608e-08, -2.578529430128650255e-08, -2.576741459501186750e-08, -2.574949798256869167e-08, -2.573154450566425866e-08, -2.571355420605100949e-08, -2.569552712553283252e-08, -2.567746330595966693e-08, -2.565936278923241280e-08, -2.564122561729703836e-08, -2.562305183215164404e-08, -2.560484147584048035e-08, -2.558659459045394123e-08, -2.556831121813517491e-08, -2.554999140107042570e-08, -2.553163518149630001e-08, -2.551324260169720534e-08, -2.549481370400266362e-08, -2.547634853079419998e-08, -2.545784712449608493e-08, -2.543930952758241172e-08, -2.542073578257598794e-08, -2.540212593204321026e-08, -2.538348001860062567e-08, -2.536479808490932981e-08, -2.534608017367878191e-08, -2.532732632766673860e-08, -2.530853658967468792e-08, -2.528971100255331531e-08, -2.527084960919682911e-08, -2.525195245254997181e-08, -2.523301957560179299e-08, -2.521405102138643019e-08, -2.519504683298689409e-08, -2.517600705352883158e-08, -2.515693172618918466e-08, -2.513782089418566541e-08, -2.511867460078399547e-08, -2.509949288929784649e-08, -2.508027580308233849e-08, -2.506102338554180211e-08, -2.504173568012328031e-08, -2.502241273032074693e-08, -2.500305457967556006e-08, -2.498366127177016549e-08, -2.496423285023556120e-08, -2.494476935874464353e-08, -2.492527084101917866e-08, -2.490573734082395275e-08, -2.488616890196721206e-08, -2.486656556830468630e-08, -2.484692738373332527e-08, -2.482725439219877653e-08, -2.480754663768903598e-08, -2.478780416423449087e-08, -2.476802701591533798e-08, -2.474821523684817000e-08, -2.472836887120197327e-08, -2.470848796318362561e-08, -2.468857255704609203e-08, -2.466862269708857363e-08, -2.464863842764953613e-08, -2.462861979311483606e-08, -2.460856683791020669e-08, -2.458847960650966217e-08, -2.456835814342784113e-08, -2.454820249322166769e-08, -2.452801270049397117e-08, -2.450778880988723924e-08, -2.448753086609140334e-08, -2.446723891383715177e-08, -2.444691299789562857e-08, -2.442655316308722809e-08, -2.440615945426634846e-08, -2.438573191633761750e-08, -2.436527059424530484e-08, -2.434477553297384139e-08, -2.432424677755506873e-08, -2.430368437305793908e-08, -2.428308836459606248e-08, -2.426245879732779615e-08, -2.424179571644614954e-08, -2.422109916719428242e-08, -2.420036919485102589e-08, -2.417960584474086479e-08, -2.415880916222599351e-08, -2.413797919271459763e-08, -2.411711598165457074e-08, -2.409621957453235636e-08, -2.407529001688185830e-08, -2.405432735426979960e-08, -2.403333163231173344e-08, -2.401230289666110116e-08, -2.399124119300970544e-08, -2.397014656709610451e-08, -2.394901906469367429e-08, -2.392785873161892321e-08, -2.390666561373207453e-08, -2.388543975692601522e-08, -2.386418120714243923e-08, -2.384289001035711041e-08, -2.382156621258856778e-08, -2.380020985989751010e-08, -2.377882099838009240e-08, -2.375739967417627057e-08, -2.373594593346256851e-08, -2.371445982245852020e-08, -2.369294138741939053e-08, -2.367139067464452977e-08, -2.364980773047074958e-08, -2.362819260127146270e-08, -2.360654533346517643e-08, -2.358486597350394523e-08, -2.356315456788118590e-08, -2.354141116313263708e-08, -2.351963580582495083e-08, -2.349782854257248437e-08, -2.347598942002183179e-08, -2.345411848486062197e-08, -2.343221578381742921e-08, -2.341028136365445768e-08, -2.338831527117646173e-08, -2.336631755322311925e-08, -2.334428825667366723e-08, -2.332222742844848994e-08, -2.330013511550059895e-08, -2.327801136482517881e-08, -2.325585622345098768e-08, -2.323366973844956218e-08, -2.321145195692767022e-08, -2.318920292602774773e-08, -2.316692269293336800e-08, -2.314461130486092022e-08, -2.312226880907014445e-08, -2.309989525285207466e-08, -2.307749068353717487e-08, -2.305505514849559060e-08, -2.303258869512920132e-08, -2.301009137088129518e-08, -2.298756322322798616e-08, -2.296500429968392822e-08, -2.294241464780291422e-08, -2.291979431517004414e-08, -2.289714334941091343e-08, -2.287446179818325182e-08, -2.285174970918592312e-08, -2.282900713015171544e-08, -2.280623410884717249e-08, -2.278343069307838052e-08, -2.276059693068299759e-08, -2.273773286953947504e-08, -2.271483855755921243e-08, -2.269191404268654105e-08, -2.266895937290764423e-08, -2.264597459623760366e-08, -2.262295976073022965e-08, -2.259991491447456045e-08, -2.257684010559129220e-08, -2.255373538224213262e-08, -2.253060079261744631e-08, -2.250743638494672348e-08, -2.248424220749022548e-08, -2.246101830854762384e-08, -2.243776473645045973e-08, -2.241448153956307365e-08, -2.239116876628768768e-08, -2.236782646505624617e-08, -2.234445468433996467e-08, -2.232105347264187872e-08, -2.229762287849603322e-08, -2.227416295047737549e-08, -2.225067373718499990e-08, -2.222715528726049476e-08, -2.220360764937536251e-08, -2.218003087223194290e-08, -2.215642500457256161e-08, -2.213279009516621920e-08, -2.210912619281779606e-08, -2.208543334636810195e-08, -2.206171160468561422e-08, -2.203796101667608623e-08, -2.201418163127466278e-08, -2.199037349745263310e-08, -2.196653666420971500e-08, -2.194267118058330601e-08, -2.191877709564074429e-08, -2.189485445847892481e-08, -2.187090331823424870e-08, -2.184692372406532522e-08, -2.182291572517188444e-08, -2.179887937078231991e-08, -2.177481471015387389e-08, -2.175072179258206397e-08, -2.172660066738764007e-08, -2.170245138392582566e-08, -2.167827399158709534e-08, -2.165406853978403924e-08, -2.162983507797057341e-08, -2.160557365562493963e-08, -2.158128432225896652e-08, -2.155696712741829454e-08, -2.153262212067410750e-08, -2.150824935163306199e-08, -2.148384886992783773e-08, -2.145942072522733171e-08, -2.143496496722872057e-08, -2.141048164565721905e-08, -2.138597081027252873e-08, -2.136143251085983164e-08, -2.133686679724106973e-08, -2.131227371926177945e-08, -2.128765332680027674e-08, -2.126300566976883829e-08, -2.123833079809991077e-08, -2.121362876176611202e-08, -2.118889961076207284e-08, -2.116414339511489911e-08, -2.113936016488407922e-08, -2.111454997015260998e-08, -2.108971286103754162e-08, -2.106484888768164303e-08, -2.103995810025814654e-08, -2.101504054897239892e-08, -2.099009628405296094e-08, -2.096512535576183463e-08, -2.094012781438506983e-08, -2.091510371024292523e-08, -2.089005309368159992e-08, -2.086497601507246907e-08, -2.083987252482324753e-08, -2.081474267335901434e-08, -2.078958651114384844e-08, -2.076440408866195574e-08, -2.073919545642853824e-08, -2.071396066498941690e-08, -2.068869976491262078e-08, -2.066341280679843569e-08, -2.063809984127096365e-08, -2.061276091898364507e-08, -2.058739609062041691e-08, -2.056200540688647794e-08, -2.053658891851893958e-08, -2.051114667627778313e-08, -2.048567873095520031e-08, -2.046018513336763246e-08, -2.043466593435637604e-08, -2.040912118479332328e-08, -2.038355093557215102e-08, -2.035795523761885573e-08, -2.033233414188319047e-08, -2.030668769933796351e-08, -2.028101596098941444e-08, -2.025531897786282122e-08, -2.022959680101262823e-08, -2.020384948152316422e-08, -2.017807707049469273e-08, -2.015227961906418098e-08, -2.012645717838641366e-08, -2.010060979964677451e-08, -2.007473753405090990e-08, -2.004884043283604463e-08, -2.002291854726173740e-08, -1.999697192861063185e-08, -1.997100062819451155e-08, -1.994500469734538296e-08, -1.991898418742601045e-08, -1.989293914982099595e-08, -1.986686963593651755e-08, -1.984077569721084467e-08, -1.981465738509931641e-08, -1.978851475108594526e-08, -1.976234784667905620e-08, -1.973615672340737251e-08, -1.970994143283071942e-08, -1.968370202652579998e-08, -1.965743855609650170e-08, -1.963115107317366163e-08, -1.960483962940552401e-08, -1.957850427646946969e-08, -1.955214506606229510e-08, -1.952576204990620437e-08, -1.949935527975006658e-08, -1.947292480735974115e-08, -1.944647068452958880e-08, -1.941999296307180098e-08, -1.939349169482885716e-08, -1.936696693165916171e-08, -1.934041872544782700e-08, -1.931384712810281545e-08, -1.928725219155041646e-08, -1.926063396774711157e-08, -1.923399250866418551e-08, -1.920732786629855899e-08, -1.918064009267252734e-08, -1.915392923982446294e-08, -1.912719535981985318e-08, -1.910043850474196982e-08, -1.907365872669816880e-08, -1.904685607782064465e-08, -1.902003061025710320e-08, -1.899318237618186893e-08, -1.896631142778594231e-08, -1.893941781728774647e-08, -1.891250159692376026e-08, -1.888556281894988142e-08, -1.885860153564705470e-08, -1.883161779931226226e-08, -1.880461166227058722e-08, -1.877758317686047000e-08, -1.875053239544475288e-08, -1.872345937040962446e-08, -1.869636415415566960e-08, -1.866924679910914554e-08, -1.864210735771252557e-08, -1.861494588243056390e-08, -1.858776242575139751e-08, -1.856055704017705998e-08, -1.853332977823471468e-08, -1.850608069246594104e-08, -1.847880983543879822e-08, -1.845151725973766400e-08, -1.842420301796443914e-08, -1.839686716274470826e-08, -1.836950974671827353e-08, -1.834213082255069554e-08, -1.831473044292328109e-08, -1.828730866053354310e-08, -1.825986552810640065e-08, -1.823240109837400897e-08, -1.820491542409799410e-08, -1.817740855805455039e-08, -1.814988055303529413e-08, -1.812233146185783825e-08, -1.809476133735076740e-08, -1.806717023236637654e-08, -1.803955819976984810e-08, -1.801192529245103766e-08, -1.798427156331457423e-08, -1.795659706528106797e-08, -1.792890185129324122e-08, -1.790118597430601558e-08, -1.787344948729882035e-08, -1.784569244326525611e-08, -1.781791489521313108e-08, -1.779011689617641224e-08, -1.776229849919455904e-08, -1.773445975733490364e-08, -1.770660072367772188e-08, -1.767872145131683553e-08, -1.765082199337092481e-08, -1.762290240296756706e-08, -1.759496273325455925e-08, -1.756700303740058961e-08, -1.753902336858014325e-08, -1.751102377999604780e-08, -1.748300432485874758e-08, -1.745496505640045167e-08, -1.742690602786400009e-08, -1.739882729251499024e-08, -1.737072890363161251e-08, -1.734261091450474958e-08, -1.731447337844991093e-08, -1.728631634878584527e-08, -1.725813987885835014e-08, -1.722994402202405913e-08, -1.720172883165174885e-08, -1.717349436113331064e-08, -1.714524066386793157e-08, -1.711696779327353601e-08, -1.708867580278739112e-08, -1.706036474585034741e-08, -1.703203467593068470e-08, -1.700368564650223483e-08, -1.697531771105699124e-08, -1.694693092310470526e-08, -1.691852533616313205e-08, -1.689010100376975335e-08, -1.686165797947185134e-08, -1.683319631683313270e-08, -1.680471606943482380e-08, -1.677621729086540372e-08, -1.674770003473254875e-08, -1.671916435465266030e-08, -1.669061030426320969e-08, -1.666203793720766036e-08, -1.663344730714609215e-08, -1.660483846775691192e-08, -1.657621147272013786e-08, -1.654756637574169878e-08, -1.651890323053135830e-08, -1.649022209081563871e-08, -1.646152301033721879e-08, -1.643280604284468341e-08, -1.640407124210523891e-08, -1.637531866189400609e-08, -1.634654835600107112e-08, -1.631776037823231270e-08, -1.628895478239931375e-08, -1.626013162233139527e-08, -1.623129095186438651e-08, -1.620243282485313194e-08, -1.617355729516104563e-08, -1.614466441666096490e-08, -1.611575424324226073e-08, -1.608682682880013741e-08, -1.605788222724851003e-08, -1.602892049250919822e-08, -1.599994167851192617e-08, -1.597094583920591966e-08, -1.594193302854344189e-08, -1.591290330049375294e-08, -1.588385670903233663e-08, -1.585479330814824915e-08, -1.582571315184467161e-08, -1.579661629412848760e-08, -1.576750278902321365e-08, -1.573837269055691248e-08, -1.570922605277527566e-08, -1.568006292973080085e-08, -1.565088337548392328e-08, -1.562168744410995753e-08, -1.559247518968837065e-08, -1.556324666631569273e-08, -1.553400192809487611e-08, -1.550474102913500751e-08, -1.547546402356329551e-08, -1.544617096550804718e-08, -1.541686190911221732e-08, -1.538753690852780347e-08, -1.535819601791148168e-08, -1.532883929143763961e-08, -1.529946678328116124e-08, -1.527007854763223998e-08, -1.524067463868376917e-08, -1.521125511064497732e-08, -1.518182001773003286e-08, -1.515236941415938747e-08, -1.512290335416692295e-08, -1.509342189198891662e-08, -1.506392508187732912e-08, -1.503441297808870369e-08, -1.500488563488408012e-08, -1.497534310654141569e-08, -1.494578544733784052e-08, -1.491621271156330270e-08, -1.488662495351562509e-08, -1.485702222749541814e-08, -1.482740458781951331e-08, -1.479777208880357576e-08, -1.476812478477464931e-08, -1.473846273007061057e-08, -1.470878597902913761e-08, -1.467909458600137004e-08, -1.464938860534051541e-08, -1.461966809140915491e-08, -1.458993309858040964e-08, -1.456018368122700862e-08, -1.453041989373429869e-08, -1.450064179048809322e-08, -1.447084942589050930e-08, -1.444104285433666774e-08, -1.441122213024017683e-08, -1.438138730801591044e-08, -1.435153844208118097e-08, -1.432167558686807925e-08, -1.429179879680583735e-08, -1.426190812633322639e-08, -1.423200362989848375e-08, -1.420208536194811304e-08, -1.417215337694034068e-08, -1.414220772933375372e-08, -1.411224847359509191e-08, -1.408227566419975892e-08, -1.405228935562102590e-08, -1.402228960234351461e-08, -1.399227645885042734e-08, -1.396224997963750646e-08, -1.393221021920148198e-08, -1.390215723204117173e-08, -1.387209107266532961e-08, -1.384201179558066640e-08, -1.381191945530713109e-08, -1.378181410636032662e-08, -1.375169580326380849e-08, -1.372156460055019974e-08, -1.369142055274371428e-08, -1.366126371438639012e-08, -1.363109414001393071e-08, -1.360091188416970583e-08, -1.357071700140442067e-08, -1.354050954626485464e-08, -1.351028957330758594e-08, -1.348005713708617187e-08, -1.344981229216525069e-08, -1.341955509310874758e-08, -1.338928559448116845e-08, -1.335900385085505440e-08, -1.332870991679966265e-08, -1.329840384689455211e-08, -1.326808569571826097e-08, -1.323775551784817597e-08, -1.320741336787449522e-08, -1.317705930037576517e-08, -1.314669336994562336e-08, -1.311631563117487008e-08, -1.308592613865274228e-08, -1.305552494697940724e-08, -1.302511211074813193e-08, -1.299468768456051796e-08, -1.296425172301480862e-08, -1.293380428071345422e-08, -1.290334541226440914e-08, -1.287287517226954796e-08, -1.284239361533847943e-08, -1.281190079607579792e-08, -1.278139676909493870e-08, -1.275088158900684391e-08, -1.272035531041949772e-08, -1.268981798795217363e-08, -1.265926967621094833e-08, -1.262871042981539807e-08, -1.259814030338072499e-08, -1.256755935151884399e-08, -1.253696762885133644e-08, -1.250636518999096758e-08, -1.247575208955480402e-08, -1.244512838216517155e-08, -1.241449412243180963e-08, -1.238384936497856605e-08, -1.235319416441892244e-08, -1.232252857537022330e-08, -1.229185265245323439e-08, -1.226116645028082354e-08, -1.223047002347180766e-08, -1.219976342663933251e-08, -1.216904671440107018e-08, -1.213831994136765676e-08, -1.210758316215649635e-08, -1.207683643138048323e-08, -1.204607980364748907e-08, -1.201531333357333307e-08, -1.198453707576371968e-08, -1.195375108482698212e-08, -1.192295541537523714e-08, -1.189215012200615891e-08, -1.186133525933034382e-08, -1.183051088194624856e-08, -1.179967704445454832e-08, -1.176883380145792502e-08, -1.173798120754947190e-08, -1.170711931732677381e-08, -1.167624818538014963e-08, -1.164536786630020775e-08, -1.161447841467943263e-08, -1.158357988510000700e-08, -1.155267233214818000e-08, -1.152175581040112829e-08, -1.149083037444254337e-08, -1.145989607884431785e-08, -1.142895297818064225e-08, -1.139800112702295754e-08, -1.136704057993437663e-08, -1.133607139148402107e-08, -1.130509361622878338e-08, -1.127410730872618970e-08, -1.124311252353425420e-08, -1.121210931519978109e-08, -1.118109773827253095e-08, -1.115007784729342839e-08, -1.111904969680225157e-08, -1.108801334133882991e-08, -1.105696883543129818e-08, -1.102591623361037192e-08, -1.099485559039603156e-08, -1.096378696031198476e-08, -1.093271039787376502e-08, -1.090162595758988802e-08, -1.087053369396960728e-08, -1.083943366151115996e-08, -1.080832591471597610e-08, -1.077721050807677721e-08, -1.074608749607749350e-08, -1.071495693320657656e-08, -1.068381887393805527e-08, -1.065267337274744577e-08, -1.062152048409987646e-08, -1.059036026245787345e-08, -1.055919276228247059e-08, -1.052801803802135602e-08, -1.049683614412322040e-08, -1.046564713502474045e-08, -1.043445106516455825e-08, -1.040324798897157335e-08, -1.037203796086617525e-08, -1.034082103526806032e-08, -1.030959726658421607e-08, -1.027836670922326951e-08, -1.024712941758383217e-08, -1.021588544605405335e-08, -1.018463484902487825e-08, -1.015337768087151082e-08, -1.012211399596779182e-08, -1.009084384868082379e-08, -1.005956729336555633e-08, -1.002828438437953805e-08, -9.996995176063831842e-09, -9.965699722759088665e-09, -9.934398078792191887e-09, -9.903090298490736248e-09, -9.871776436170952683e-09, -9.840456546139026843e-09, -9.809130682698834893e-09, -9.777798900140164457e-09, -9.746461252752895804e-09, -9.715117794815222792e-09, -9.683768580593451044e-09, -9.652413664356488490e-09, -9.621053100350616362e-09, -9.589686942827198092e-09, -9.558315246024178584e-09, -9.526938064167045406e-09, -9.495555451482220837e-09, -9.464167462178245168e-09, -9.432774150459120775e-09, -9.401375570524154958e-09, -9.369971776555836781e-09, -9.338562822734455007e-09, -9.307148763226140376e-09, -9.275729652190465740e-09, -9.244305543781939951e-09, -9.212876492137876431e-09, -9.181442551392936660e-09, -9.150003775665605774e-09, -9.118560219075715561e-09, -9.087111935718796895e-09, -9.055658979693990467e-09, -9.024201405085418676e-09, -8.992739265963310596e-09, -8.961272616397288151e-09, -8.929801510437699956e-09, -8.898326002128634522e-09, -8.866846145509546497e-09, -8.835361994596075997e-09, -8.803873603408255468e-09, -8.772381025944868740e-09, -8.740884316198332006e-09, -8.709383528154275271e-09, -8.677878715779649145e-09, -8.646369933037238560e-09, -8.614857233872346810e-09, -8.583340672227214966e-09, -8.551820302029016179e-09, -8.520296177191045162e-09, -8.488768351620730266e-09, -8.457236879207488807e-09, -8.425701813837240784e-09, -8.394163209380595084e-09, -8.362621119692311810e-09, -8.331075598626275911e-09, -8.299526700009776823e-09, -8.267974477673109958e-09, -8.236418985423768666e-09, -8.204860277061305363e-09, -8.173298406377109848e-09, -8.141733427142367205e-09, -8.110165393122677395e-09, -8.078594358065778242e-09, -8.047020375709663380e-09, -8.015443499783862732e-09, -7.983863783997092705e-09, -7.952281282052074296e-09, -7.920696047632091415e-09, -7.889108134415395407e-09, -7.857517596063384634e-09, -7.825924486221529273e-09, -7.794328858527593484e-09, -7.762730766599328619e-09, -7.731130264049175532e-09, -7.699527404472268803e-09, -7.667922241445990063e-09, -7.636314828543611508e-09, -7.604705219315320378e-09, -7.573093467304205050e-09, -7.541479626034113679e-09, -7.509863749017661308e-09, -7.478245889757419351e-09, -7.446626101733865231e-09, -7.415004438419890296e-09, -7.383380953267366406e-09, -7.351755699721920210e-09, -7.320128731210589952e-09, -7.288500101143263942e-09, -7.256869862920451917e-09, -7.225238069921343857e-09, -7.193604775518344384e-09, -7.161970033064892520e-09, -7.130333895895389725e-09, -7.098696417338677155e-09, -7.067057650698941015e-09, -7.035417649270560460e-09, -7.003776466332510887e-09, -6.972134155143083215e-09, -6.940490768954480313e-09, -6.908846360993798465e-09, -6.877200984476597265e-09, -6.845554692606720950e-09, -6.813907538564061087e-09, -6.782259575519301068e-09, -6.750610856621846721e-09, -6.718961435010316608e-09, -6.687311363800313818e-09, -6.655660696099506300e-09, -6.624009484994986708e-09, -6.592357783553389041e-09, -6.560705644834340248e-09, -6.529053121871422673e-09, -6.497400267686890419e-09, -6.465747135286238911e-09, -6.434093777652682634e-09, -6.402440247762029503e-09, -6.370786598563532450e-09, -6.339132882993401424e-09, -6.307479153974751277e-09, -6.275825464405328061e-09, -6.244171867172193961e-09, -6.212518415139628128e-09, -6.180865161157012188e-09, -6.149212158060324962e-09, -6.117559458659563527e-09, -6.085907115753763988e-09, -6.054255182117408425e-09, -6.022603710517825455e-09, -5.990952753689330919e-09, -5.959302364361777194e-09, -5.927652595241397336e-09, -5.896003499011968935e-09, -5.864355128348548611e-09, -5.832707535898088699e-09, -5.801060774293251159e-09, -5.769414896152062647e-09, -5.737769954065690435e-09, -5.706126000613373024e-09, -5.674483088349942953e-09, -5.642841269814143267e-09, -5.611200597529639995e-09, -5.579561123992985008e-09, -5.547922901688179368e-09, -5.516285983073182010e-09, -5.484650420594826289e-09, -5.453016266676349405e-09, -5.421383573718763871e-09, -5.389752394108877853e-09, -5.358122780207101704e-09, -5.326494784362155232e-09, -5.294868458898865960e-09, -5.263243856117955714e-09, -5.231621028311164794e-09, -5.200000027734969133e-09, -5.168380906640817892e-09, -5.136763717248829108e-09, -5.105148511763027193e-09, -5.073535342371001309e-09, -5.041924261231642413e-09, -5.010315320490084619e-09, -4.978708572263957462e-09, -4.947104068658336355e-09, -4.915501861753335709e-09, -4.883902003605462199e-09, -4.852304546255666545e-09, -4.820709541716923388e-09, -4.789117041989332304e-09, -4.757527099047595116e-09, -4.725939764840980324e-09, -4.694355091308321544e-09, -4.662773130351843862e-09, -4.631193933865996864e-09, -4.599617553718032437e-09, -4.568044041749329088e-09, -4.536473449789115694e-09, -4.504905829635070808e-09, -4.473341233067048070e-09, -4.441779711848291331e-09, -4.410221317706266402e-09, -4.378666102361227730e-09, -4.347114117500201092e-09, -4.315565414794674503e-09, -4.284020045886823180e-09, -4.252478062404514597e-09, -4.220939515948867686e-09, -4.189404458094226372e-09, -4.157872940403106724e-09, -4.126345014400035714e-09, -4.094820731600378462e-09, -4.063300143490952431e-09, -4.031783301531375729e-09, -4.000270257167693259e-09, -3.968761061813046334e-09, -3.937255766861438615e-09, -3.905754423688883414e-09, -3.874257083634152714e-09, -3.842763798027593667e-09, -3.811274618164866431e-09, -3.779789595322043528e-09, -3.748308780755470049e-09, -3.716832225689421293e-09, -3.685359981330994500e-09, -3.653892098857774345e-09, -3.622428629428692581e-09, -3.590969624171610403e-09, -3.559515134198332603e-09, -3.528065210592196138e-09, -3.496619904407905936e-09, -3.465179266685374454e-09, -3.433743348430177468e-09, -3.402312200627370884e-09, -3.370885874242780729e-09, -3.339464420203564400e-09, -3.308047889427177298e-09, -3.276636332794972522e-09, -3.245229801167473937e-09, -3.213828345384105686e-09, -3.182432016250799782e-09, -3.151040864555088433e-09, -3.119654941053585487e-09, -3.088274296480220196e-09, -3.056898981547463089e-09, -3.025529046933982373e-09, -2.994164543299552624e-09, -2.962805521271328136e-09, -2.931452031458853355e-09, -2.900104124441628288e-09, -2.868761850770366226e-09, -2.837425260975222545e-09, -2.806094405553291861e-09, -2.774769334985088373e-09, -2.743450099715162531e-09, -2.712136750165766066e-09, -2.680829336736855297e-09, -2.649527909793559755e-09, -2.618232519681255486e-09, -2.586943216713115568e-09, -2.555660051178316568e-09, -2.524383073343281384e-09, -2.493112333439233482e-09, -2.461847881677292532e-09, -2.430589768234593488e-09, -2.399338043269378085e-09, -2.368092756908535017e-09, -2.336853959248833265e-09, -2.305621700365248910e-09, -2.274396030298319607e-09, -2.243176999069350650e-09, -2.211964656667891042e-09, -2.180759053051652430e-09, -2.149560238160228725e-09, -2.118368261895709056e-09, -2.087183174137820551e-09, -2.056005024738236092e-09, -2.024833863515077292e-09, -1.993669740267962143e-09, -1.962512704758622527e-09, -1.931362806727401917e-09, -1.900220095879372389e-09, -1.869084621899436049e-09, -1.837956434439821161e-09, -1.806835583121413289e-09, -1.775722117541933837e-09, -1.744616087263467614e-09, -1.713517541827535720e-09, -1.682426530742646890e-09, -1.651343103484175485e-09, -1.620267309508133841e-09, -1.589199198231742008e-09, -1.558138819048535164e-09, -1.527086221322785940e-09, -1.496041454383917021e-09, -1.465004567541559762e-09, -1.433975610066219666e-09, -1.402954631202989183e-09, -1.371941680171420938e-09, -1.340936806153101208e-09, -1.309940058306718258e-09, -1.278951485755593209e-09, -1.247971137598606271e-09, -1.216999062897767320e-09, -1.186035310693227982e-09, -1.155079929990891919e-09, -1.124132969762301090e-09, -1.093194478959663554e-09, -1.062264506489735656e-09, -1.031343101242539259e-09, -1.000430312072081813e-09, -9.695261877976622727e-10, -9.386307772175263965e-10, -9.077441290895637659e-10, -8.768662921449765310e-10, -8.459973150881771501e-10, -8.151372465844137678e-10, -7.842861352747478710e-10, -7.534440297636487511e-10, -7.226109786271719419e-10, -6.917870304142152939e-10, -6.609722336341425938e-10, -6.301666367717780748e-10, -5.993702882736307573e-10, -5.685832365628887520e-10, -5.378055300270258195e-10, -5.070372170190930125e-10, -4.762783458658759180e-10, -4.455289648554849316e-10, -4.147891222537167863e-10, -3.840588662848208460e-10, -3.533382451451179102e-10, -3.226273070042858081e-10, -2.919260999861456467e-10, -2.612346721973165886e-10, -2.305530717011455229e-10, -1.998813465326941561e-10, -1.692195446986563198e-10, -1.385677141649900183e-10, -1.079259028718792770e-10, -7.729415872000083821e-11, -4.667252958547853922e-11, -1.606106330751890103e-11, 1.454019231029091541e-11, 4.513118949186230234e-11, 7.571188050096097645e-11, 1.062822176262649693e-10, 1.368421531937165340e-10, 1.673916395665901035e-10, 1.979306291305616997e-10, 2.284590743196862563e-10, 2.589769275864699786e-10, 2.894841414278482095e-10, 3.199806683702545862e-10, 3.504664609696944530e-10, 3.809414718240765214e-10, 4.114056535583020605e-10, 4.418589588365812545e-10, 4.723013403543419292e-10, 5.027327508369325837e-10, 5.331531430519444872e-10, 5.635624697943113119e-10, 5.939606838999785520e-10, 6.243477382310114802e-10, 6.547235856879204495e-10, 6.850881792097021487e-10, 7.154414717589671014e-10, 7.457834163478378646e-10, 7.761139660094732319e-10, 8.064330738171617339e-10, 8.367406928830193455e-10, 8.670367763445088203e-10, 8.973212773834755976e-10, 9.275941492126656893e-10, 9.578553450744376564e-10, 9.881048182598170244e-10, 1.018342522080074151e-09, 1.048568409892566794e-09, 1.078782435083201405e-09, 1.108984551080013571e-09, 1.139174711338350519e-09, 1.169352869353139244e-09, 1.199518978657598378e-09, 1.229672992815155396e-09, 1.259814865431734798e-09, 1.289944550140903596e-09, 1.320062000616153713e-09, 1.350167170570926996e-09, 1.380260013745187807e-09, 1.410340483924410537e-09, 1.440408534926117242e-09, 1.470464120598608335e-09, 1.500507194839941210e-09, 1.530537711569641701e-09, 1.560555624754390728e-09, 1.590560888393276076e-09, 1.620553456517848029e-09, 1.650533283204331655e-09, 1.680500322558840745e-09, 1.710454528729597341e-09, 1.740395855898895879e-09, 1.770324258281854978e-09, 1.800239690138548042e-09, 1.830142105759298675e-09, 1.860031459478211499e-09, 1.889907705657054121e-09, 1.919770798704188200e-09, 1.949620693059820606e-09, 1.979457343201479153e-09, 2.009280703649414704e-09, 2.039090728951897212e-09, 2.068887373704106870e-09, 2.098670592534737920e-09, 2.128440340106081786e-09, 2.158196571126178357e-09, 2.187939240334131461e-09, 2.217668302512187773e-09, 2.247383712477808288e-09, 2.277085425082386188e-09, 2.306773395223351808e-09, 2.336447577829527813e-09, 2.366107927874564682e-09, 2.395754400362249977e-09, 2.425386950338712983e-09, 2.455005532891055721e-09, 2.484610103139417393e-09, 2.514200616249088440e-09, 2.543777027414514525e-09, 2.573339291878100417e-09, 2.602887364916861360e-09, 2.632421201842549224e-09, 2.661940758013679704e-09, 2.691445988820937965e-09, 2.720936849699254235e-09, 2.750413296119831854e-09, 2.779875283588908981e-09, 2.809322767659835021e-09, 2.838755703918403057e-09, 2.868174047996339924e-09, 2.897577755556601836e-09, 2.926966782305510775e-09, 2.956341083991437211e-09, 2.985700616396907554e-09, 3.015045335350621438e-09, 3.044375196712840397e-09, 3.073690156387557354e-09, 3.102990170322399006e-09, 3.132275194495477793e-09, 3.161545184934035719e-09, 3.190800097699904174e-09, 3.220039888894880192e-09, 3.249264514666072934e-09, 3.278473931191416447e-09, 3.307668094698239453e-09, 3.336846961447468272e-09, 3.366010487746894793e-09, 3.395158629936714879e-09, 3.424291344401478233e-09, 3.453408587568813707e-09, 3.482510315901551656e-09, 3.511596485909788771e-09, 3.540667054136236237e-09, 3.569721977168262238e-09, 3.598761211638006936e-09, 3.627784714207795967e-09, 3.656792441595381031e-09, 3.685784350546221072e-09, 3.714760397852109967e-09, 3.743720540349774872e-09, 3.772664734907841510e-09, 3.801592938445363842e-09, 3.830505107918641290e-09, 3.859401200321334543e-09, 3.888281172696348006e-09, 3.917144982121372339e-09, 3.945992585720919104e-09, 3.974823940655703906e-09, 4.003639004134599977e-09, 4.032437733400270049e-09, 4.061220085741010756e-09, 4.089986018490808880e-09, 4.118735489014954197e-09, 4.147468454735151857e-09, 4.176184873101818448e-09, 4.204884701612667920e-09, 4.233567897811395537e-09, 4.262234419274616697e-09, 4.290884223630312234e-09, 4.319517268544743245e-09, 4.348133511721286423e-09, 4.376732910918701508e-09, 4.405315423923759061e-09, 4.433881008576164238e-09, 4.462429622754220095e-09, 4.490961224374902038e-09, 4.519475771405639353e-09, 4.547973221850021529e-09, 4.576453533760988474e-09, 4.604916665226349898e-09, 4.633362574380756264e-09, 4.661791219404381924e-09, 4.690202558515152924e-09, 4.718596549980560798e-09, 4.746973152102044575e-09, 4.775332323233357493e-09, 4.803674021767533116e-09, 4.831998206135634638e-09, 4.860304834825075277e-09, 4.888593866352342820e-09, 4.916865259287738947e-09, 4.945118972241183152e-09, 4.973354963862192890e-09, 5.001573192851758588e-09, 5.029773617947952348e-09, 5.057956197937804616e-09, 5.086120891649461673e-09, 5.114267657951076393e-09, 5.142396455762382977e-09, 5.170507244040600972e-09, 5.198599981793472461e-09, 5.226674628064916270e-09, 5.254731141946893050e-09, 5.282769482579374668e-09, 5.310789609136216790e-09, 5.338791480849738555e-09, 5.366775056983629097e-09, 5.394740296851240650e-09, 5.422687159814089690e-09, 5.450615605269177917e-09, 5.478525592667121568e-09, 5.506417081496621104e-09, 5.534290031296198072e-09, 5.562144401646506465e-09, 5.589980152169052246e-09, 5.617797242537980668e-09, 5.645595632465741238e-09, 5.673375281716176196e-09, 5.701136150090402191e-09, 5.728878197438361039e-09, 5.756601383657674899e-09, 5.784305668685936122e-09, 5.811991012512397802e-09, 5.839657375163797546e-09, 5.867304716715998390e-09, 5.894932997294076484e-09, 5.922542177059513847e-09, 5.950132216228224295e-09, 5.977703075057771011e-09, 6.005254713846110893e-09, 6.032787092949680023e-09, 6.060300172756471426e-09, 6.087793913710355003e-09, 6.115268276294664616e-09, 6.142723221044838233e-09, 6.170158708534608148e-09, 6.197574699387363963e-09, 6.224971154275133499e-09, 6.252348033910766768e-09, 6.279705299059575230e-09, 6.307042910525383048e-09, 6.334360829161953759e-09, 6.361659015873172256e-09, 6.388937431600191227e-09, 6.416196037339526558e-09, 6.443434794128904273e-09, 6.470653663052481700e-09, 6.497852605245991703e-09, 6.525031581882827026e-09, 6.552190554191826328e-09, 6.579329483444645622e-09, 6.606448330955839330e-09, 6.633547058094347347e-09, 6.660625626269509898e-09, 6.687683996942547973e-09, 6.714722131619016963e-09, 6.741739991847750348e-09, 6.768737539231962944e-09, 6.795714735415719879e-09, 6.822671542096463423e-09, 6.849607921008657138e-09, 6.876523833947790663e-09, 6.903419242744019952e-09, 6.930294109279835847e-09, 6.957148395488771196e-09, 6.983982063343028716e-09, 7.010795074870898931e-09, 7.037587392144589865e-09, 7.064358977279900308e-09, 7.091109792447791241e-09, 7.117839799860564479e-09, 7.144548961783224822e-09, 7.171237240525960984e-09, 7.197904598443000775e-09, 7.224550997943970773e-09, 7.251176401479956673e-09, 7.277780771556337826e-09, 7.304364070718866613e-09, 7.330926261565164605e-09, 7.357467306743256793e-09, 7.383987168944416481e-09, 7.410485810914256123e-09, 7.436963195437859574e-09, 7.463419285357295164e-09, 7.489854043559136849e-09, 7.516267432973434370e-09, 7.542659416590916128e-09, 7.569029957437220856e-09, 7.595379018596245616e-09, 7.621706563196917532e-09, 7.648012554412823204e-09, 7.674296955473701564e-09, 7.700559729651725908e-09, 7.726800840273989364e-09, 7.753020250708932507e-09, 7.779217924377497067e-09, 7.805393824752007580e-09, 7.831547915348706907e-09, 7.857680159738901671e-09, 7.883790521535596667e-09, 7.909878964404453356e-09, 7.935945452063948678e-09, 7.961989948271842384e-09, 7.988012416848508486e-09, 8.014012821651449826e-09, 8.039991126592200683e-09, 8.065947295635263019e-09, 8.091881292786021372e-09, 8.117793082107731490e-09, 8.143682627707057903e-09, 8.169549893744918265e-09, 8.195394844429538344e-09, 8.221217444014873759e-09, 8.247017656811900999e-09, 8.272795447175122795e-09, 8.298550779514891462e-09, 8.324283618283972170e-09, 8.349993927988585810e-09, 8.375681673188501639e-09, 8.401346818483638605e-09, 8.426989328537102328e-09, 8.452609168049966019e-09, 8.478206301778096988e-09, 8.503780694531084616e-09, 8.529332311160151937e-09, 8.554861116575081413e-09, 8.580367075732356466e-09, 8.605850153633770165e-09, 8.631310315343427093e-09, 8.656747525962562317e-09, 8.682161750652358338e-09, 8.707552954620799536e-09, 8.732921103122749924e-09, 8.758266161470757783e-09, 8.783588095021936576e-09, 8.808886869188633925e-09, 8.834162449429211855e-09, 8.859414801258484159e-09, 8.884643890234944728e-09, 8.909849681971376974e-09, 8.935032142134794268e-09, 8.960191236434975218e-09, 8.985326930640630088e-09, 9.010439190567957583e-09, 9.035527982079265108e-09, 9.060593271099806857e-09, 9.085635023592746714e-09, 9.110653205581816380e-09, 9.135647783138408050e-09, 9.160618722381427172e-09, 9.185565989488049106e-09, 9.210489550680858119e-09, 9.235389372238344305e-09, 9.260265420488026410e-09, 9.285117661805204439e-09, 9.309946062623721278e-09, 9.334750589422929637e-09, 9.359531208739442976e-09, 9.384287887153298428e-09, 9.409020591304288654e-09, 9.433729287879034663e-09, 9.458413943615887687e-09, 9.483074525309415805e-09, 9.507710999797979693e-09, 9.532323333979624416e-09, 9.556911494800781797e-09, 9.581475449256202586e-09, 9.606015164399539412e-09, 9.630530607330469233e-09, 9.655021745205253121e-09, 9.679488545230065885e-09, 9.703930974659254021e-09, 9.728349000806457987e-09, 9.752742591031517932e-09, 9.777111712752222969e-09, 9.801456333431605685e-09, 9.825776420588384462e-09, 9.850071941795793851e-09, 9.874342864674900946e-09, 9.898589156904751586e-09, 9.922810786209812097e-09, 9.947007720370472834e-09, 9.971179927223086225e-09, 9.995327374648248938e-09, 1.001945003058724954e-08, 1.004354786302830916e-08, 1.006762084001660693e-08, 1.009166892964778168e-08, 1.011569210006664314e-08, 1.013969031947764407e-08, 1.016366355613219131e-08, 1.018761177834018663e-08, 1.021153495445760407e-08, 1.023543305289656671e-08, 1.025930604212442517e-08, 1.028315389065689035e-08, 1.030697656706827890e-08, 1.033077403997912040e-08, 1.035454627806636808e-08, 1.037829325006341037e-08, 1.040201492474893875e-08, 1.042571127096255662e-08, 1.044938225759263465e-08, 1.047302785358059388e-08, 1.049664802792579276e-08, 1.052024274967284811e-08, 1.054381198792755665e-08, 1.056735571184366514e-08, 1.059087389063364683e-08, 1.061436649355677355e-08, 1.063783348992918083e-08, 1.066127484912260066e-08, 1.068469054055794260e-08, 1.070808053371521987e-08, 1.073144479812120626e-08, 1.075478330335993462e-08, 1.077809601907218406e-08, 1.080138291494356357e-08, 1.082464396072579042e-08, 1.084787912621299141e-08, 1.087108838125772208e-08, 1.089427169576957044e-08, 1.091742903970435890e-08, 1.094056038307947032e-08, 1.096366569596284650e-08, 1.098674494847311224e-08, 1.100979811078959087e-08, 1.103282515314000733e-08, 1.105582604581051036e-08, 1.107880075913940079e-08, 1.110174926351548375e-08, 1.112467152938849949e-08, 1.114756752725680001e-08, 1.117043722767847792e-08, 1.119328060125712575e-08, 1.121609761866267758e-08, 1.123888825060827772e-08, 1.126165246786611300e-08, 1.128439024126573852e-08, 1.130710154168355925e-08, 1.132978634005812789e-08, 1.135244460737915329e-08, 1.137507631468643175e-08, 1.139768143308523090e-08, 1.142025993372351580e-08, 1.144281178781240178e-08, 1.146533696661445147e-08, 1.148783544144361035e-08, 1.151030718367499222e-08, 1.153275216473308033e-08, 1.155517035610244766e-08, 1.157756172931590833e-08, 1.159992625596462085e-08, 1.162226390769646514e-08, 1.164457465620992307e-08, 1.166685847326383754e-08, 1.168911533066543655e-08, 1.171134520028020310e-08, 1.173354805403177930e-08, 1.175572386389041224e-08, 1.177787260189299000e-08, 1.179999424011977635e-08, 1.182208875071467834e-08, 1.184415610587354832e-08, 1.186619627784423684e-08, 1.188820923893610528e-08, 1.191019496150857102e-08, 1.193215341798040165e-08, 1.195408458082359713e-08, 1.197598842256227313e-08, 1.199786491578221160e-08, 1.201971403311930679e-08, 1.204153574727012164e-08, 1.206333003098020973e-08, 1.208509685705401656e-08, 1.210683619835440479e-08, 1.212854802779129042e-08, 1.215023231834181940e-08, 1.217188904302815116e-08, 1.219351817493221889e-08, 1.221511968719464090e-08, 1.223669355300459435e-08, 1.225823974561398810e-08, 1.227975823832530483e-08, 1.230124900450098128e-08, 1.232271201755706210e-08, 1.234414725096219404e-08, 1.236555467824715003e-08, 1.238693427299326528e-08, 1.240828600884318396e-08, 1.242960985948882704e-08, 1.245090579868133501e-08, 1.247217380022992305e-08, 1.249341383799542903e-08, 1.251462588590004613e-08, 1.253580991791559503e-08, 1.255696590807327642e-08, 1.257809383046325076e-08, 1.259919365922462278e-08, 1.262026536855985926e-08, 1.264130893272437812e-08, 1.266232432602572288e-08, 1.268331152283785636e-08, 1.270427049757985747e-08, 1.272520122473499102e-08, 1.274610367883983692e-08, 1.276697783448418927e-08, 1.278782366632032076e-08, 1.280864114905164207e-08, 1.282943025744208038e-08, 1.285019096630782251e-08, 1.287092325052678610e-08, 1.289162708502687698e-08, 1.291230244479569528e-08, 1.293294930488039651e-08, 1.295356764037747581e-08, 1.297415742644705012e-08, 1.299471863830167797e-08, 1.301525125121079316e-08, 1.303575524050418392e-08, 1.305623058156122131e-08, 1.307667724982506694e-08, 1.309709522079254325e-08, 1.311748447001409054e-08, 1.313784497310290069e-08, 1.315817670572379322e-08, 1.317847964360270143e-08, 1.319875376252000857e-08, 1.321899903830995732e-08, 1.323921544686967095e-08, 1.325940296414815846e-08, 1.327956156615625399e-08, 1.329969122895458630e-08, 1.331979192866795020e-08, 1.333986364147391133e-08, 1.335990634360702142e-08, 1.337992001136275906e-08, 1.339990462108668032e-08, 1.341986014918837335e-08, 1.343978657213134520e-08, 1.345968386643343549e-08, 1.347955200867528339e-08, 1.349939097548983067e-08, 1.351920074357104024e-08, 1.353898128966797846e-08, 1.355873259058413358e-08, 1.357845462318588105e-08, 1.359814736439188243e-08, 1.361781079118326630e-08, 1.363744488059220159e-08, 1.365704960971110078e-08, 1.367662495569171667e-08, 1.369617089573919158e-08, 1.371568740712086683e-08, 1.373517446715545005e-08, 1.375463205322224477e-08, 1.377406014276062110e-08, 1.379345871326065529e-08, 1.381282774227650529e-08, 1.383216720741517763e-08, 1.385147708634478264e-08, 1.387075735678905692e-08, 1.389000799652634753e-08, 1.390922898339847606e-08, 1.392842029529971891e-08, 1.394758191018683607e-08, 1.396671380606844680e-08, 1.398581596101357107e-08, 1.400488835315081564e-08, 1.402393096066249776e-08, 1.404294376179354729e-08, 1.406192673484063754e-08, 1.408087985816113539e-08, 1.409980311017287294e-08, 1.411869646934380449e-08, 1.413755991421007050e-08, 1.415639342335606251e-08, 1.417519697542791613e-08, 1.419397054913220908e-08, 1.421271412322673476e-08, 1.423142767653370413e-08, 1.425011118793036045e-08, 1.426876463634906367e-08, 1.428738800078555068e-08, 1.430598126028876760e-08, 1.432454439396958326e-08, 1.434307738099267626e-08, 1.436158020058549996e-08, 1.438005283202788474e-08, 1.439849525466035294e-08, 1.441690744788432223e-08, 1.443528939115159554e-08, 1.445364106398246799e-08, 1.447196244594573397e-08, 1.449025351667211720e-08, 1.450851425585306476e-08, 1.452674464323171754e-08, 1.454494465861576629e-08, 1.456311428186805984e-08, 1.458125349290625267e-08, 1.459936227171507702e-08, 1.461744059832732760e-08, 1.463548845284139623e-08, 1.465350581541105444e-08, 1.467149266624549489e-08, 1.468944898561765277e-08, 1.470737475385405297e-08, 1.472526995134423834e-08, 1.474313455852852240e-08, 1.476096855591553387e-08, 1.477877192406299465e-08, 1.479654464359081240e-08, 1.481428669517966610e-08, 1.483199805956223462e-08, 1.484967871753616689e-08, 1.486732864995440060e-08, 1.488494783772481808e-08, 1.490253626182262754e-08, 1.492009390327141239e-08, 1.493762074316062439e-08, 1.495511676263516126e-08, 1.497258194289568591e-08, 1.499001626520699421e-08, 1.500741971088747672e-08, 1.502479226131775446e-08, 1.504213389793507393e-08, 1.505944460223249314e-08, 1.507672435576691522e-08, 1.509397314014928466e-08, 1.511119093705367309e-08, 1.512837772820720415e-08, 1.514553349539820627e-08, 1.516265822047628209e-08, 1.517975188534253782e-08, 1.519681447196620628e-08, 1.521384596236561179e-08, 1.523084633862476345e-08, 1.524781558288342231e-08, 1.526475367733754477e-08, 1.528166060424682315e-08, 1.529853634592535179e-08, 1.531538088474927351e-08, 1.533219420315173046e-08, 1.534897628362181532e-08, 1.536572710871274380e-08, 1.538244666103185898e-08, 1.539913492324968734e-08, 1.541579187809015812e-08, 1.543241750833867662e-08, 1.544901179684095624e-08, 1.546557472649802557e-08, 1.548210628027422565e-08, 1.549860644118711829e-08, 1.551507519231594651e-08, 1.553151251680105219e-08, 1.554791839783569363e-08, 1.556429281867797014e-08, 1.558063576264041946e-08, 1.559694721309776676e-08, 1.561322715348212369e-08, 1.562947556728166489e-08, 1.564569243804850277e-08, 1.566187774938944621e-08, 1.567803148497435842e-08, 1.569415362852682966e-08, 1.571024416383198579e-08, 1.572630307473554531e-08, 1.574233034513861805e-08, 1.575832595900549058e-08, 1.577428990035429562e-08, 1.579022215326466842e-08, 1.580612270187755155e-08, 1.582199153038699590e-08, 1.583782862305203233e-08, 1.585363396418709959e-08, 1.586940753816560778e-08, 1.588514932942327355e-08, 1.590085932244904098e-08, 1.591653750179640401e-08, 1.593218385207570373e-08, 1.594779835795333763e-08, 1.596338100416024311e-08, 1.597893177548172321e-08, 1.599445065676552317e-08, 1.600993763291521963e-08, 1.602539268889732441e-08, 1.604081580973266203e-08, 1.605620698050327499e-08, 1.607156618635307560e-08, 1.608689341247817123e-08, 1.610218864414275288e-08, 1.611745186666193938e-08, 1.613268306541320574e-08, 1.614788222583540047e-08, 1.616304933342091052e-08, 1.617818437372661977e-08, 1.619328733236647763e-08, 1.620835819501078765e-08, 1.622339694739366876e-08, 1.623840357530466095e-08, 1.625337806459524019e-08, 1.626832040117470571e-08, 1.628323057100866785e-08, 1.629810856012723059e-08, 1.631295435461504551e-08, 1.632776794062006336e-08, 1.634254930434467659e-08, 1.635729843205264455e-08, 1.637201531006854089e-08, 1.638669992477269455e-08, 1.640135226260892555e-08, 1.641597231007428462e-08, 1.643056005373066024e-08, 1.644511548019658288e-08, 1.645963857614678500e-08, 1.647412932832277237e-08, 1.648858772351679002e-08, 1.650301374858618540e-08, 1.651740739044561636e-08, 1.653176863606613458e-08, 1.654609747248278578e-08, 1.656039388678582831e-08, 1.657465786612862118e-08, 1.658888939771900810e-08, 1.660308846882627911e-08, 1.661725506678064441e-08, 1.663138917896821839e-08, 1.664549079283807382e-08, 1.665955989589404613e-08, 1.667359647570129459e-08, 1.668760051988655382e-08, 1.670157201612955424e-08, 1.671551095217752753e-08, 1.672941731582880855e-08, 1.674329109494672213e-08, 1.675713227745150310e-08, 1.677094085132046838e-08, 1.678471680459448551e-08, 1.679846012536994904e-08, 1.681217080180524570e-08, 1.682584882211687666e-08, 1.683949417457787589e-08, 1.685310684752510596e-08, 1.686668682935083728e-08, 1.688023410851032841e-08, 1.689374867351344508e-08, 1.690723051293151583e-08, 1.692067961539741145e-08, 1.693409596959716398e-08, 1.694747956428398906e-08, 1.696083038826311874e-08, 1.697414843040176410e-08, 1.698743367962861885e-08, 1.700068612492635524e-08, 1.701390575534191412e-08, 1.702709255997944416e-08, 1.704024652799918681e-08, 1.705336764862776309e-08, 1.706645591114314210e-08, 1.707951130488810088e-08, 1.709253381926110559e-08, 1.710552344372331272e-08, 1.711848016779084992e-08, 1.713140398104114551e-08, 1.714429487311199877e-08, 1.715715283369783445e-08, 1.716997785255545335e-08, 1.718276991949687552e-08, 1.719552902439527614e-08, 1.720825515718488293e-08, 1.722094830785465982e-08, 1.723360846645714782e-08, 1.724623562310213877e-08, 1.725882976795571582e-08, 1.727139089125010016e-08, 1.728391898326895700e-08, 1.729641403436061391e-08, 1.730887603493061621e-08, 1.732130497544143246e-08, 1.733370084641872452e-08, 1.734606363844394924e-08, 1.735839334216032740e-08, 1.737068994826748685e-08, 1.738295344752758702e-08, 1.739518383075783455e-08, 1.740738108883656469e-08, 1.741954521270318514e-08, 1.743167619335144934e-08, 1.744377402183895914e-08, 1.745583868927966065e-08, 1.746787018684665330e-08, 1.747986850577456883e-08, 1.749183363735285459e-08, 1.750376557293427696e-08, 1.751566430392883329e-08, 1.752752982180351035e-08, 1.753936211808834264e-08, 1.755116118436922579e-08, 1.756292701229329330e-08, 1.757465959356607759e-08, 1.758635891994964724e-08, 1.759802498326910861e-08, 1.760965777540542922e-08, 1.762125728830167137e-08, 1.763282351395618612e-08, 1.764435644442807600e-08, 1.765585607183676152e-08, 1.766732238835829531e-08, 1.767875538623060309e-08, 1.769015505774632695e-08, 1.770152139526127576e-08, 1.771285439118856219e-08, 1.772415403799820891e-08, 1.773542032822285289e-08, 1.774665325445131647e-08, 1.775785280933345140e-08, 1.776901898557695584e-08, 1.778015177594644456e-08, 1.779125117326928227e-08, 1.780231717042868491e-08, 1.781334976036947023e-08, 1.782434893609227079e-08, 1.783531469065793792e-08, 1.784624701718752846e-08, 1.785714590885856922e-08, 1.786801135891042040e-08, 1.787884336063767802e-08, 1.788964190739549765e-08, 1.790040699259968706e-08, 1.791113860972095895e-08, 1.792183675229255755e-08, 1.793250141390444194e-08, 1.794313258820523811e-08, 1.795373026890474707e-08, 1.796429444976736040e-08, 1.797482512462029572e-08, 1.798532228734687666e-08, 1.799578593189194261e-08, 1.800621605225529416e-08, 1.801661264249751642e-08, 1.802697569673904930e-08, 1.803730520915651813e-08, 1.804760117398838165e-08, 1.805786358552794728e-08, 1.806809243812939631e-08, 1.807828772620715857e-08, 1.808844944422933468e-08, 1.809857758672949493e-08, 1.810867214829383819e-08, 1.811873312356945039e-08, 1.812876050726381160e-08, 1.813875429413912486e-08, 1.814871447901998576e-08, 1.815864105678797934e-08, 1.816853402238147164e-08, 1.817839337080079442e-08, 1.818821909710206124e-08, 1.819801119640197824e-08, 1.820776966387388039e-08, 1.821749449475227429e-08, 1.822718568432652186e-08, 1.823684322794648172e-08, 1.824646712102210547e-08, 1.825605735901716773e-08, 1.826561393746021465e-08, 1.827513685193256983e-08, 1.828462609807630170e-08, 1.829408167159349889e-08, 1.830350356824077781e-08, 1.831289178383694230e-08, 1.832224631425765328e-08, 1.833156715543456518e-08, 1.834085430336323047e-08, 1.835010775409178718e-08, 1.835932750373076918e-08, 1.836851354844739541e-08, 1.837766588446566247e-08, 1.838678450807101657e-08, 1.839586941560453344e-08, 1.840492060346830167e-08, 1.841393806811922216e-08, 1.842292180607436822e-08, 1.843187181390985069e-08, 1.844078808825785334e-08, 1.844967062581149338e-08, 1.845851942331834294e-08, 1.846733447758786716e-08, 1.847611578548586876e-08, 1.848486334393459397e-08, 1.849357714991942276e-08, 1.850225720047803605e-08, 1.851090349271041804e-08, 1.851951602377316184e-08, 1.852809479087917833e-08, 1.853663979130258644e-08, 1.854515102237328354e-08, 1.855362848148089940e-08, 1.856207216607203995e-08, 1.857048207364986712e-08, 1.857885820177853255e-08, 1.858720054807760563e-08, 1.859550911022722196e-08, 1.860378388596217719e-08, 1.861202487307702584e-08, 1.862023206942546913e-08, 1.862840547291516033e-08, 1.863654508151713457e-08, 1.864465089325466843e-08, 1.865272290621296451e-08, 1.866076111853349688e-08, 1.866876552841413345e-08, 1.867673613411345389e-08, 1.868467293394528692e-08, 1.869257592628315062e-08, 1.870044510955735395e-08, 1.870828048225453030e-08, 1.871608204292186264e-08, 1.872384979016161095e-08, 1.873158372263653851e-08, 1.873928383906385694e-08, 1.874695013821987494e-08, 1.875458261893949869e-08, 1.876218128011330363e-08, 1.876974612069189204e-08, 1.877727713968040056e-08, 1.878477433614324491e-08, 1.879223770920352760e-08, 1.879966725803854804e-08, 1.880706298188644973e-08, 1.881442488004151855e-08, 1.882175295185350783e-08, 1.882904719673417634e-08, 1.883630761414789487e-08, 1.884353420361991799e-08, 1.885072696473059051e-08, 1.885788589711986717e-08, 1.886501100048232973e-08, 1.887210227457133609e-08, 1.887915971919841150e-08, 1.888618333423031701e-08, 1.889317311959381405e-08, 1.890012907526984438e-08, 1.890705120129803326e-08, 1.891393949777648762e-08, 1.892079396485739546e-08, 1.892761460275333557e-08, 1.893440141173205970e-08, 1.894115439211872264e-08, 1.894787354429709315e-08, 1.895455886870509391e-08, 1.896121036584074057e-08, 1.896782803625772468e-08, 1.897441188056547983e-08, 1.898096189943320505e-08, 1.898747809358462383e-08, 1.899396046380253357e-08, 1.900040901092548367e-08, 1.900682373584783833e-08, 1.901320463952339637e-08, 1.901955172296062329e-08, 1.902586498722700893e-08, 1.903214443344391239e-08, 1.903839006279275274e-08, 1.904460187650958927e-08, 1.905077987588751704e-08, 1.905692406227806314e-08, 1.906303443708648171e-08, 1.906911100177773939e-08, 1.907515375787209487e-08, 1.908116270694551583e-08, 1.908713785063280232e-08, 1.909307919062353030e-08, 1.909898672866538352e-08, 1.910486046656183077e-08, 1.911070040617165939e-08, 1.911650654941277365e-08, 1.912227889825732103e-08, 1.912801745473628802e-08, 1.913372222093439143e-08, 1.913939319899421104e-08, 1.914503039111540207e-08, 1.915063379955258425e-08, 1.915620342661861745e-08, 1.916173927467981723e-08, 1.916724134616198338e-08, 1.917270964354574786e-08, 1.917814416936694201e-08, 1.918354492621990201e-08, 1.918891191675333299e-08, 1.919424514367376990e-08, 1.919954460974303647e-08, 1.920481031777796060e-08, 1.921004227065413645e-08, 1.921524047130093150e-08, 1.922040492270590375e-08, 1.922553562791044080e-08, 1.923063259001308513e-08, 1.923569581216906424e-08, 1.924072529758805399e-08, 1.924572104953800011e-08, 1.925068307134008902e-08, 1.925561136637275465e-08, 1.926050593807139719e-08, 1.926536678992431339e-08, 1.927019392547968786e-08, 1.927498734833786062e-08, 1.927974706215664749e-08, 1.928447307065050964e-08, 1.928916537758715219e-08, 1.929382398679248729e-08, 1.929844890214640232e-08, 1.930304012758627035e-08, 1.930759766710290367e-08, 1.931212152474375658e-08, 1.931661170461291545e-08, 1.932106821086820364e-08, 1.932549104772488723e-08, 1.932988021945176743e-08, 1.933423573037404924e-08, 1.933855758487353996e-08, 1.934284578738455966e-08, 1.934710034240091590e-08, 1.935132125446807865e-08, 1.935550852818846759e-08, 1.935966216822067791e-08, 1.936378217927637340e-08, 1.936786856612481938e-08, 1.937192133358943836e-08, 1.937594048654751222e-08, 1.937992602993525450e-08, 1.938387796873995548e-08, 1.938779630800687429e-08, 1.939168105283472904e-08, 1.939553220837887659e-08, 1.939934977984785819e-08, 1.940313377250617219e-08, 1.940688419167450570e-08, 1.941060104272576405e-08, 1.941428433109124493e-08, 1.941793406225419958e-08, 1.942155024175389591e-08, 1.942513287518540673e-08, 1.942868196819636725e-08, 1.943219752649187524e-08, 1.943567955583033198e-08, 1.943912806202394521e-08, 1.944254305094263671e-08, 1.944592452850756383e-08, 1.944927250069726710e-08, 1.945258697354372619e-08, 1.945586795313264125e-08, 1.945911544560649997e-08, 1.946232945716037893e-08, 1.946550999404530515e-08, 1.946865706256613862e-08, 1.947177066908120825e-08, 1.947485082000536917e-08, 1.947789752180593632e-08, 1.948091078100661186e-08, 1.948389060418308131e-08, 1.948683699796735788e-08, 1.948974996904498990e-08, 1.949262952415462739e-08, 1.949547567009194290e-08, 1.949828841370378498e-08, 1.950106776189314128e-08, 1.950381372161675626e-08, 1.950652629988440328e-08, 1.950920550376149186e-08, 1.951185134036631814e-08, 1.951446381687208982e-08, 1.951704294050560600e-08, 1.951958871854666485e-08, 1.952210115833079339e-08, 1.952458026724605784e-08, 1.952702605273551536e-08, 1.952943852229455389e-08, 1.953181768347328763e-08, 1.953416354387595488e-08, 1.953647611115949523e-08, 1.953875539303608413e-08, 1.954100139726981415e-08, 1.954321413167919646e-08, 1.954539360413717399e-08, 1.954753982256853076e-08, 1.954965279495317077e-08, 1.955173252932359680e-08, 1.955377903376634636e-08, 1.955579231642142594e-08, 1.955777238548122902e-08, 1.955971924919298452e-08, 1.956163291585617935e-08, 1.956351339382472558e-08, 1.956536069150452192e-08, 1.956717481735515774e-08, 1.956895577989047884e-08, 1.957070358767609264e-08, 1.957241824933194906e-08, 1.957409977353008722e-08, 1.957574816899597217e-08, 1.957736344450894159e-08, 1.957894560889991615e-08, 1.958049467105403323e-08, 1.958201063990907862e-08, 1.958349352445524496e-08, 1.958494333373672652e-08, 1.958636007684896311e-08, 1.958774376294186932e-08, 1.958909440121693279e-08, 1.959041200092945425e-08, 1.959169657138651590e-08, 1.959294812194822226e-08, 1.959416666202779934e-08, 1.959535220109020837e-08, 1.959650474865429974e-08, 1.959762431428989469e-08, 1.959871090762020733e-08, 1.959976453832161301e-08, 1.960078521612126274e-08, 1.960177295080032902e-08, 1.960272775219149788e-08, 1.960364963017985887e-08, 1.960453859470352384e-08, 1.960539465575160858e-08, 1.960621782336666475e-08, 1.960700810764329353e-08, 1.960776551872725556e-08, 1.960849006681781352e-08, 1.960918176216530685e-08, 1.960984061507296491e-08, 1.961046663589562651e-08, 1.961105983503951162e-08, 1.961162022296421320e-08, 1.961214781018008995e-08, 1.961264260725025483e-08, 1.961310462478842111e-08, 1.961353387346191988e-08, 1.961393036398825242e-08, 1.961429410713726398e-08, 1.961462511373096843e-08, 1.961492339464229097e-08, 1.961518896079637174e-08, 1.961542182316994379e-08, 1.961562199279045627e-08, 1.961578948073822179e-08, 1.961592429814385546e-08, 1.961602645619037924e-08, 1.961609596611187864e-08, 1.961613283919337359e-08, 1.961613708677190710e-08, 1.961610872023545664e-08, 1.961604775102365876e-08, 1.961595419062686613e-08, 1.961582805058656771e-08, 1.961566934249650047e-08, 1.961547807800016131e-08, 1.961525426879338116e-08, 1.961499792662164494e-08, 1.961470906328286761e-08, 1.961438769062509127e-08, 1.961403382054717667e-08, 1.961364746499972638e-08, 1.961322863598349327e-08, 1.961277734555034005e-08, 1.961229360580306058e-08, 1.961177742889443031e-08, 1.961122882702909219e-08, 1.961064781246132334e-08, 1.961003439749682833e-08, 1.960938859449165067e-08, 1.960871041585203707e-08, 1.960799987403522500e-08, 1.960725698154869155e-08, 1.960648175095063323e-08, 1.960567419484929426e-08, 1.960483432590310560e-08, 1.960396215682198522e-08, 1.960305770036445952e-08, 1.960212096934096547e-08, 1.960115197661091242e-08, 1.960015073508430672e-08, 1.959911725772168551e-08, 1.959805155753284954e-08, 1.959695364757837847e-08, 1.959582354096858870e-08, 1.959466125086397011e-08, 1.959346679047470958e-08, 1.959224017306073400e-08, 1.959098141193230258e-08, 1.958969052044912996e-08, 1.958836751202091569e-08, 1.958701240010707285e-08, 1.958562519821648656e-08, 1.958420591990808303e-08, 1.958275457879001235e-08, 1.958127118852048560e-08, 1.957975576280665313e-08, 1.957820831540546822e-08, 1.957662886012359767e-08, 1.957501741081663109e-08, 1.957337398139007676e-08, 1.957169858579828631e-08, 1.956999123804493122e-08, 1.956825195218357848e-08, 1.956648074231609251e-08, 1.956467762259412406e-08, 1.956284260721849485e-08, 1.956097571043865152e-08, 1.955907694655349294e-08, 1.955714632991071497e-08, 1.955518387490716126e-08, 1.955318959598839639e-08, 1.955116350764901689e-08, 1.954910562443251561e-08, 1.954701596093092434e-08, 1.954489453178539618e-08, 1.954274135168549743e-08, 1.954055643536956499e-08, 1.953833979762466661e-08, 1.953609145328635274e-08, 1.953381141723872274e-08, 1.953149970441455387e-08, 1.952915632979490428e-08, 1.952678130840939755e-08, 1.952437465533575284e-08, 1.952193638570044996e-08, 1.951946651467788894e-08, 1.951696505749093599e-08, 1.951443202941080436e-08, 1.951186744575646210e-08, 1.950927132189550554e-08, 1.950664367324307406e-08, 1.950398451526288901e-08, 1.950129386346626438e-08, 1.949857173341267927e-08, 1.949581814070934437e-08, 1.949303310101168511e-08, 1.949021663002271626e-08, 1.948736874349310810e-08, 1.948448945722151735e-08, 1.948157878705431248e-08, 1.947863674888515022e-08, 1.947566335865565057e-08, 1.947265863235512873e-08, 1.946962258602003266e-08, 1.946655523573454528e-08, 1.946345659763009804e-08, 1.946032668788572500e-08, 1.945716552272763596e-08, 1.945397311842930584e-08, 1.945074949131195774e-08, 1.944749465774334530e-08, 1.944420863413882808e-08, 1.944089143696081235e-08, 1.943754308271865185e-08, 1.943416358796892903e-08, 1.943075296931508114e-08, 1.942731124340746314e-08, 1.942383842694364212e-08, 1.942033453666769260e-08, 1.941679958937074574e-08, 1.941323360189056253e-08, 1.940963659111162972e-08, 1.940600857396525913e-08, 1.940234956742908135e-08, 1.939865958852789285e-08, 1.939493865433246807e-08, 1.939118678196035027e-08, 1.938740398857556031e-08, 1.938359029138843787e-08, 1.937974570765573408e-08, 1.937587025468048247e-08, 1.937196394981190966e-08, 1.936802681044584231e-08, 1.936405885402398581e-08, 1.936006009803417247e-08, 1.935603056001035156e-08, 1.935197025753269522e-08, 1.934787920822719146e-08, 1.934375742976568055e-08, 1.933960493986639438e-08, 1.933542175629291418e-08, 1.933120789685496133e-08, 1.932696337940780835e-08, 1.932268822185258340e-08, 1.931838244213616100e-08, 1.931404605825068561e-08, 1.930967908823448486e-08, 1.930528155017099418e-08, 1.930085346218918364e-08, 1.929639484246369029e-08, 1.929190570921426231e-08, 1.928738608070631157e-08, 1.928283597525010295e-08, 1.927825541120166761e-08, 1.927364440696210149e-08, 1.926900298097743299e-08, 1.926433115173921192e-08, 1.925962893778361943e-08, 1.925489635769209338e-08, 1.925013343009126549e-08, 1.924534017365194221e-08, 1.924051660709097417e-08, 1.923566274916911877e-08, 1.923077861869213864e-08, 1.922586423451088435e-08, 1.922091961552038789e-08, 1.921594478066072946e-08, 1.921093974891624013e-08, 1.920590453931627938e-08, 1.920083917093418622e-08, 1.919574366288814940e-08, 1.919061803434077064e-08, 1.918546230449841616e-08, 1.918027649261266252e-08, 1.917506061797866881e-08, 1.916981469993582510e-08, 1.916453875786851349e-08, 1.915923281120404671e-08, 1.915389687941481227e-08, 1.914853098201646251e-08, 1.914313513856903626e-08, 1.913770936867662472e-08, 1.913225369198657730e-08, 1.912676812819099390e-08, 1.912125269702494147e-08, 1.911570741826743674e-08, 1.911013231174157192e-08, 1.910452739731353533e-08, 1.909889269489352460e-08, 1.909322822443469784e-08, 1.908753400593434156e-08, 1.908181005943309317e-08, 1.907605640501437847e-08, 1.907027306280597007e-08, 1.906446005297770438e-08, 1.905861739574377451e-08, 1.905274511136077821e-08, 1.904684322012867728e-08, 1.904091174239123776e-08, 1.903495069853407437e-08, 1.902896010898663250e-08, 1.902293999422085144e-08, 1.901689037475174675e-08, 1.901081127113746320e-08, 1.900470270397836814e-08, 1.899856469391790520e-08, 1.899239726164204832e-08, 1.898620042787982784e-08, 1.897997421340259597e-08, 1.897371863902389777e-08, 1.896743372560034129e-08, 1.896111949403043627e-08, 1.895477596525560986e-08, 1.894840316025964088e-08, 1.894200110006779291e-08, 1.893556980574877304e-08, 1.892910929841243235e-08, 1.892261959921139374e-08, 1.891610072933987079e-08, 1.890955271003433936e-08, 1.890297556257400416e-08, 1.889636930827871427e-08, 1.888973396851109390e-08, 1.888306956467496418e-08, 1.887637611821672619e-08, 1.886965365062406062e-08, 1.886290218342599398e-08, 1.885612173819383161e-08, 1.884931233653992025e-08, 1.884247400011870352e-08, 1.883560675062576901e-08, 1.882871060979773246e-08, 1.882178559941365389e-08, 1.881483174129271822e-08, 1.880784905729593592e-08, 1.880083756932603713e-08, 1.879379729932578425e-08, 1.878672826928028469e-08, 1.877963050121462184e-08, 1.877250401719543335e-08, 1.876534883933077876e-08, 1.875816498976855464e-08, 1.875095249069829449e-08, 1.874371136435007362e-08, 1.873644163299502857e-08, 1.872914331894411306e-08, 1.872181644455011297e-08, 1.871446103220590267e-08, 1.870707710434431597e-08, 1.869966468343976739e-08, 1.869222379200626363e-08, 1.868475445259860464e-08, 1.867725668781202293e-08, 1.866973052028120423e-08, 1.866217597268244147e-08, 1.865459306773097453e-08, 1.864698182818249243e-08, 1.863934227683362633e-08, 1.863167443651981869e-08, 1.862397833011722249e-08, 1.861625398054128512e-08, 1.860850141074771118e-08, 1.860072064373263784e-08, 1.859291170253062320e-08, 1.858507461021689614e-08, 1.857720938990576818e-08, 1.856931606475230768e-08, 1.856139465794899143e-08, 1.855344519272982397e-08, 1.854546769236757487e-08, 1.853746218017357020e-08, 1.852942867949998555e-08, 1.852136721373706996e-08, 1.851327780631450253e-08, 1.850516048070198796e-08, 1.849701526040707612e-08, 1.848884216897743847e-08, 1.848064122999878683e-08, 1.847241246709629946e-08, 1.846415590393466739e-08, 1.845587156421631764e-08, 1.844755947168338850e-08, 1.843921965011561197e-08, 1.843085212333278207e-08, 1.842245691519265709e-08, 1.841403404959118459e-08, 1.840558355046358008e-08, 1.839710544178259979e-08, 1.838859974756074766e-08, 1.838006649184802207e-08, 1.837150569873213090e-08, 1.836291739234098303e-08, 1.835430159683799983e-08, 1.834565833642720402e-08, 1.833698763534921941e-08, 1.832828951788308075e-08, 1.831956400834658449e-08, 1.831081113109405869e-08, 1.830203091051890078e-08, 1.829322337105094057e-08, 1.828438853715957353e-08, 1.827552643335072677e-08, 1.826663708416795086e-08, 1.825772051419311139e-08, 1.824877674804439710e-08, 1.823980581037886760e-08, 1.823080772589057401e-08, 1.822178251930986416e-08, 1.821273021540646958e-08, 1.820365083898494280e-08, 1.819454441488923332e-08, 1.818541096799939870e-08, 1.817625052323209762e-08, 1.816706310554261808e-08, 1.815784873992143302e-08, 1.814860745139685728e-08, 1.813933926503488208e-08, 1.813004420593612443e-08, 1.812072229924052222e-08, 1.811137357012259940e-08, 1.810199804379496000e-08, 1.809259574550549227e-08, 1.808316670054013477e-08, 1.807371093422054043e-08, 1.806422847190420884e-08, 1.805471933898679581e-08, 1.804518356089757375e-08, 1.803562116310461978e-08, 1.802603217111121251e-08, 1.801641661045595778e-08, 1.800677450671533639e-08, 1.799710588550034902e-08, 1.798741077245837245e-08, 1.797768919327398345e-08, 1.796794117366474009e-08, 1.795816673938728642e-08, 1.794836591623159524e-08, 1.793853873002429006e-08, 1.792868520662831423e-08, 1.791880537194089610e-08, 1.790889925189582872e-08, 1.789896687246123309e-08, 1.788900825964211921e-08, 1.787902343947703095e-08, 1.786901243804178495e-08, 1.785897528144645305e-08, 1.784891199583562699e-08, 1.783882260739093635e-08, 1.782870714232698544e-08, 1.781856562689420542e-08, 1.780839808737951934e-08, 1.779820455010136914e-08, 1.778798504141656473e-08, 1.777773958771416279e-08, 1.776746821541911967e-08, 1.775717095099179834e-08, 1.774684782092526851e-08, 1.773649885174884031e-08, 1.772612407002504013e-08, 1.771572350235132126e-08, 1.770529717536069251e-08, 1.769484511571860469e-08, 1.768436735012617006e-08, 1.767386390531726382e-08, 1.766333480806177993e-08, 1.765278008516281870e-08, 1.764219976345676618e-08, 1.763159386981532240e-08, 1.762096243114265922e-08, 1.761030547437894738e-08, 1.759962302649588976e-08, 1.758891511449978853e-08, 1.757818176543201833e-08, 1.756742300636519146e-08, 1.755663886440738970e-08, 1.754582936669874976e-08, 1.753499454041379257e-08, 1.752413441276125457e-08, 1.751324901098115617e-08, 1.750233836234866634e-08, 1.749140249417028434e-08, 1.748044143378794585e-08, 1.746945520857543631e-08, 1.745844384593916516e-08, 1.744740737331986654e-08, 1.743634581818929385e-08, 1.742525920805428949e-08, 1.741414757045356879e-08, 1.740301093295736928e-08, 1.739184932317129212e-08, 1.738066276873082614e-08, 1.736945129730632751e-08, 1.735821493659877462e-08, 1.734695371434253416e-08, 1.733566765830541079e-08, 1.732435679628549722e-08, 1.731302115611485017e-08, 1.730166076565594346e-08, 1.729027565280596273e-08, 1.727886584549261326e-08, 1.726743137167531113e-08, 1.725597225934665559e-08, 1.724448853652962659e-08, 1.723298023128107878e-08, 1.722144737168853866e-08, 1.720988998587059834e-08, 1.719830810197972129e-08, 1.718670174819761351e-08, 1.717507095273895570e-08, 1.716341574385007981e-08, 1.715173614980714260e-08, 1.714003219892051967e-08, 1.712830391952899858e-08, 1.711655134000429531e-08, 1.710477448875003849e-08, 1.709297339419895694e-08, 1.708114808481671451e-08, 1.706929858909856163e-08, 1.705742493557221726e-08, 1.704552715279437482e-08, 1.703360526935517559e-08, 1.702165931387417211e-08, 1.700968931500049359e-08, 1.699769530141724979e-08, 1.698567730183368942e-08, 1.697363534499375641e-08, 1.696156945967019053e-08, 1.694947967466497073e-08, 1.693736601881359993e-08, 1.692522852097862322e-08, 1.691306721005447519e-08, 1.690088211496668579e-08, 1.688867326466886608e-08, 1.687644068814638757e-08, 1.686418441441327530e-08, 1.685190447251433867e-08, 1.683960089152553206e-08, 1.682727370055000426e-08, 1.681492292872305823e-08, 1.680254860520734020e-08, 1.679015075919804100e-08, 1.677772941991821751e-08, 1.676528461662034778e-08, 1.675281637858740636e-08, 1.674032473513014120e-08, 1.672780971559129892e-08, 1.671527134934031429e-08, 1.670270966577679101e-08, 1.669012469433163660e-08, 1.667751646446008762e-08, 1.666488500565188730e-08, 1.665223034742167038e-08, 1.663955251931475009e-08, 1.662685155090632402e-08, 1.661412747179812572e-08, 1.660138031162251761e-08, 1.658861010003858331e-08, 1.657581686673672023e-08, 1.656300064143451682e-08, 1.655016145387720595e-08, 1.653729933384021916e-08, 1.652441431112527581e-08, 1.651150641556497226e-08, 1.649857567701899007e-08, 1.648562212537367248e-08, 1.647264579054753674e-08, 1.645964670248184759e-08, 1.644662489115101984e-08, 1.643358038655379735e-08, 1.642051321871827233e-08, 1.640742341770163723e-08, 1.639431101358617121e-08, 1.638117603648438192e-08, 1.636801851653440639e-08, 1.635483848390288960e-08, 1.634163596878552709e-08, 1.632841100140264787e-08, 1.631516361200438921e-08, 1.630189383086575674e-08, 1.628860168829228238e-08, 1.627528721461486269e-08, 1.626195044019041074e-08, 1.624859139540675298e-08, 1.623521011067339129e-08, 1.622180661643179976e-08, 1.620838094314823149e-08, 1.619493312131453255e-08, 1.618146318145289661e-08, 1.616797115410857251e-08, 1.615445706985514831e-08, 1.614092095929461415e-08, 1.612736285305090360e-08, 1.611378278177956839e-08, 1.610018077615879190e-08, 1.608655686689574857e-08, 1.607291108472133303e-08, 1.605924346039553685e-08, 1.604555402470326624e-08, 1.603184280845447779e-08, 1.601810984248715956e-08, 1.600435515766301323e-08, 1.599057878487224513e-08, 1.597678075503004575e-08, 1.596296109907558058e-08, 1.594911984797721127e-08, 1.593525703272570285e-08, 1.592137268433882282e-08, 1.590746683386199628e-08, 1.589353951236100031e-08, 1.587959075093295550e-08, 1.586562058069597297e-08, 1.585162903279517958e-08, 1.583761613840238701e-08, 1.582358192871163495e-08, 1.580952643494476299e-08, 1.579544968834625559e-08, 1.578135172018725561e-08, 1.576723256176491575e-08, 1.575309224439832889e-08, 1.573893079943404365e-08, 1.572474825824073078e-08, 1.571054465221544326e-08, 1.569632001277619813e-08, 1.568207437136760132e-08, 1.566780775945918006e-08, 1.565352020854230246e-08, 1.563921175013668245e-08, 1.562488241578267046e-08, 1.561053223704638527e-08, 1.559616124551979668e-08, 1.558176947281570623e-08, 1.556735695057401388e-08, 1.555292371045615607e-08, 1.553846978414869237e-08, 1.552399520336377202e-08, 1.550949999983396898e-08, 1.549498420531851231e-08, 1.548044785159760833e-08, 1.546589097047808539e-08, 1.545131359378925456e-08, 1.543671575338239354e-08, 1.542209748113459140e-08, 1.540745880894360013e-08, 1.539279976873423710e-08, 1.537812039245094041e-08, 1.536342071206276835e-08, 1.534870075956382293e-08, 1.533396056696782027e-08, 1.531920016631422167e-08, 1.530441958966336314e-08, 1.528961886909944983e-08, 1.527479803673119789e-08, 1.525995712468677216e-08, 1.524509616512003962e-08, 1.523021519020439864e-08, 1.521531423213929057e-08, 1.520039332314497520e-08, 1.518545249546306684e-08, 1.517049178135988934e-08, 1.515551121312110603e-08, 1.514051082305803275e-08, 1.512549064350281708e-08, 1.511045070680765414e-08, 1.509539104535148675e-08, 1.508031169152904697e-08, 1.506521267776261528e-08, 1.505009403649418552e-08, 1.503495580018575608e-08, 1.501979800132520948e-08, 1.500462067241804055e-08, 1.498942384599416252e-08, 1.497420755460228215e-08, 1.495897183081611022e-08, 1.494371670722882272e-08, 1.492844221645411966e-08, 1.491314839112907052e-08, 1.489783526390940270e-08, 1.488250286747525205e-08, 1.486715123452615012e-08, 1.485178039778103248e-08, 1.483639038998446076e-08, 1.482098124389558970e-08, 1.480555299229999089e-08, 1.479010566800218001e-08, 1.477463930382528594e-08, 1.475915393261726458e-08, 1.474364958724274283e-08, 1.472812630058856398e-08, 1.471258410556430557e-08, 1.469702303509421603e-08, 1.468144312212944699e-08, 1.466584439963657866e-08, 1.465022690060546976e-08, 1.463459065804319431e-08, 1.461893570498035629e-08, 1.460326207446594958e-08, 1.458756979956724873e-08, 1.457185891337580274e-08, 1.455612944899711681e-08, 1.454038143956192514e-08, 1.452461491821842869e-08, 1.450882991813275173e-08, 1.449302647249476694e-08, 1.447720461450975403e-08, 1.446136437740404777e-08, 1.444550579442615800e-08, 1.442962889883763588e-08, 1.441373372392595805e-08, 1.439782030299314468e-08, 1.438188866936206417e-08, 1.436593885637645138e-08, 1.434997089739540523e-08, 1.433398482580039325e-08, 1.431798067498881944e-08, 1.430195847837848442e-08, 1.428591826940763174e-08, 1.426986008152959108e-08, 1.425378394821935765e-08, 1.423768990296756695e-08, 1.422157797928743324e-08, 1.420544821070663153e-08, 1.418930063077279671e-08, 1.417313527305446817e-08, 1.415695217113227869e-08, 1.414075135861177903e-08, 1.412453286911177965e-08, 1.410829673627087058e-08, 1.409204299374776050e-08, 1.407577167521522516e-08, 1.405948281436699110e-08, 1.404317644491212083e-08, 1.402685260057867551e-08, 1.401051131511432712e-08, 1.399415262228057975e-08, 1.397777655585945984e-08, 1.396138314964771928e-08, 1.394497243746302113e-08, 1.392854445313855789e-08, 1.391209923052355947e-08, 1.389563680348701380e-08, 1.387915720591198744e-08, 1.386266047170228601e-08, 1.384614663477711061e-08, 1.382961572907051024e-08, 1.381306778853800420e-08, 1.379650284714750959e-08, 1.377992093888680077e-08, 1.376332209775798717e-08, 1.374670635778089972e-08, 1.373007375299415960e-08, 1.371342431744891150e-08, 1.369675808521597873e-08, 1.368007509037935994e-08, 1.366337536704323698e-08, 1.364665894932624420e-08, 1.362992587136185724e-08, 1.361317616730212192e-08, 1.359640987131232559e-08, 1.357962701757731675e-08, 1.356282764029607547e-08, 1.354601177368148836e-08, 1.352917945196678077e-08, 1.351233070939650709e-08, 1.349546558023334360e-08, 1.347858409875583192e-08, 1.346168629925526709e-08, 1.344477221604310425e-08, 1.342784188344162466e-08, 1.341089533579179722e-08, 1.339393260744664124e-08, 1.337695373277822762e-08, 1.335995874617185720e-08, 1.334294768202695411e-08, 1.332592057476024543e-08, 1.330887745880029024e-08, 1.329181836859448747e-08, 1.327474333860320462e-08, 1.325765240329958744e-08, 1.324054559717596567e-08, 1.322342295473506837e-08, 1.320628451049660827e-08, 1.318913029899491437e-08, 1.317196035477606991e-08, 1.315477471240526270e-08, 1.313757340645743798e-08, 1.312035647152366437e-08, 1.310312394221140027e-08, 1.308587585313824365e-08, 1.306861223893904250e-08, 1.305133313426012774e-08, 1.303403857376314140e-08, 1.301672859212558587e-08, 1.299940322403475240e-08, 1.298206250419498538e-08, 1.296470646732130978e-08, 1.294733514814742664e-08, 1.292994858141329048e-08, 1.291254680187909033e-08, 1.289512984431587112e-08, 1.287769774350591255e-08, 1.286025053424952853e-08, 1.284278825135581099e-08, 1.282531092964871629e-08, 1.280781860396753179e-08, 1.279031130916056440e-08, 1.277278908009244295e-08, 1.275525195163795738e-08, 1.273769995868632862e-08, 1.272013313614130452e-08, 1.270255151891566412e-08, 1.268495514193802034e-08, 1.266734404014622405e-08, 1.264971824849476733e-08, 1.263207780194857634e-08, 1.261442273548368129e-08, 1.259675308409102647e-08, 1.257906888277077096e-08, 1.256137016653980605e-08, 1.254365697042238658e-08, 1.252592932945698994e-08, 1.250818727869693647e-08, 1.249043085320050129e-08, 1.247266008804548265e-08, 1.245487501831617052e-08, 1.243707567911043716e-08, 1.241926210554004983e-08, 1.240143433272430808e-08, 1.238359239579748509e-08, 1.236573632990197530e-08, 1.234786617019573738e-08, 1.232998195184594975e-08, 1.231208371002996847e-08, 1.229417147993901149e-08, 1.227624529677199779e-08, 1.225830519574323856e-08, 1.224035121207601824e-08, 1.222238338100241086e-08, 1.220440173777105230e-08, 1.218640631763400128e-08, 1.216839715586081142e-08, 1.215037428772916254e-08, 1.213233774852522300e-08, 1.211428757355070057e-08, 1.209622379811295101e-08, 1.207814645753337890e-08, 1.206005558714083514e-08, 1.204195122227625569e-08, 1.202383339829268482e-08, 1.200570215054931935e-08, 1.198755751441900292e-08, 1.196939952528110068e-08, 1.195122821852931446e-08, 1.193304362956518777e-08, 1.191484579379812895e-08, 1.189663474665300965e-08, 1.187841052355659909e-08, 1.186017315995249958e-08, 1.184192269129129984e-08, 1.182365915303080654e-08, 1.180538258064339963e-08, 1.178709300960614917e-08, 1.176879047540735998e-08, 1.175047501354774791e-08, 1.173214665952998757e-08, 1.171380544887388117e-08, 1.169545141710273321e-08, 1.167708459975091750e-08, 1.165870503236401120e-08, 1.164031275049245199e-08, 1.162190778969886688e-08, 1.160349018555195768e-08, 1.158505997363205637e-08, 1.156661718952446794e-08, 1.154816186882768925e-08, 1.152969404714630854e-08, 1.151121376009156455e-08, 1.149272104328803019e-08, 1.147421593236352423e-08, 1.145569846295646491e-08, 1.143716867071634977e-08, 1.141862659129362094e-08, 1.140007226035484729e-08, 1.138150571356862429e-08, 1.136292698661417832e-08, 1.134433611518042866e-08, 1.132573313495988954e-08, 1.130711808165659943e-08, 1.128849099097930019e-08, 1.126985189864594680e-08, 1.125120084038416729e-08, 1.123253785192499270e-08, 1.121386296901038446e-08, 1.119517622738597667e-08, 1.117647766281015854e-08, 1.115776731104321024e-08, 1.113904520785566400e-08, 1.112031138902519724e-08, 1.110156589033372917e-08, 1.108280874757530214e-08, 1.106403999654566252e-08, 1.104525967304979294e-08, 1.102646781290168738e-08, 1.100766445191768403e-08, 1.098884962592455181e-08, 1.097002337075253878e-08, 1.095118572224039807e-08, 1.093233671623524231e-08, 1.091347638858627852e-08, 1.089460477515288972e-08, 1.087572191179696197e-08, 1.085682783439123560e-08, 1.083792257881223777e-08, 1.081900618094141404e-08, 1.080007867666900789e-08, 1.078114010188765003e-08, 1.076219049250036221e-08, 1.074322988441386202e-08, 1.072425831353832634e-08, 1.070527581579508905e-08, 1.068628242710572389e-08, 1.066727818340139662e-08, 1.064826312061573964e-08, 1.062923727468930719e-08, 1.061020068157044060e-08, 1.059115337720832989e-08, 1.057209539756120448e-08, 1.055302677858870831e-08, 1.053394755626041643e-08, 1.051485776654857402e-08, 1.049575744542895668e-08, 1.047664662888544473e-08, 1.045752535290296900e-08, 1.043839365347597289e-08, 1.041925156660128375e-08, 1.040009912827841231e-08, 1.038093637451665812e-08, 1.036176334132469541e-08, 1.034258006471873735e-08, 1.032338658071955482e-08, 1.030418292534917773e-08, 1.028496913463948768e-08, 1.026574524462112218e-08, 1.024651129133297237e-08, 1.022726731081417092e-08, 1.020801333911247633e-08, 1.018874941227757446e-08, 1.016947556636135308e-08, 1.015019183742294114e-08, 1.013089826152117805e-08, 1.011159487472363661e-08, 1.009228171309911383e-08, 1.007295881271771700e-08, 1.005362620965947293e-08, 1.003428393999926669e-08, 1.001493203982335047e-08, 9.995570545218194835e-09, 9.976199492271251376e-09, 9.956818917078882080e-09, 9.937428855735041840e-09, 9.918029344339187953e-09, 9.898620418996299972e-09, 9.879202115809622027e-09, 9.859774470889326712e-09, 9.840337520345234244e-09, 9.820891300291845024e-09, 9.801435846848528243e-09, 9.781971196132770423e-09, 9.762497384268592819e-09, 9.743014447378727934e-09, 9.723522421594668117e-09, 9.704021343041696896e-09, 9.684511247855521931e-09, 9.664992172170911206e-09, 9.645464152122508626e-09, 9.625927223852791496e-09, 9.606381423500777854e-09, 9.586826787210008759e-09, 9.567263351129165372e-09, 9.547691151400931795e-09, 9.528110224178778563e-09, 9.508520605611520840e-09, 9.488922331852114657e-09, 9.469315439057701577e-09, 9.449699963382212048e-09, 9.430075940985217892e-09, 9.410443408023682001e-09, 9.390802400661070562e-09, 9.371152955059691709e-09, 9.351495107381511123e-09, 9.331828893793153167e-09, 9.312154350458256080e-09, 9.292471513546600747e-09, 9.272780419226459274e-09, 9.253081103664849760e-09, 9.233373603036177030e-09, 9.213657953506852033e-09, 9.193934191252993510e-09, 9.174202352444992805e-09, 9.154462473256458993e-09, 9.134714589863988926e-09, 9.114958738439926092e-09, 9.095194955161309059e-09, 9.075423276202266371e-09, 9.055643737738946547e-09, 9.035856375950336993e-09, 9.016061227010759813e-09, 8.996258327098873193e-09, 8.976447712389306949e-09, 8.956629419061902136e-09, 8.936803483293814780e-09, 8.916969941259891418e-09, 8.897128829141288321e-09, 8.877280183110100825e-09, 8.857424039346393323e-09, 8.837560434026550908e-09, 8.817689403324271991e-09, 8.797810983418558865e-09, 8.777925210482213278e-09, 8.758032120691572347e-09, 8.738131750219092057e-09, 8.718224135238255752e-09, 8.698309311924225953e-09, 8.678387316446495685e-09, 8.658458184977896474e-09, 8.638521953686172684e-09, 8.618578658742989517e-09, 8.598628336316617424e-09, 8.578671022572516097e-09, 8.558706753678319059e-09, 8.538735565796395656e-09, 8.518757495092561268e-09, 8.498772577729205091e-09, 8.478780849864462961e-09, 8.458782347661010280e-09, 8.438777107274175431e-09, 8.418765164860125561e-09, 8.398746556576776474e-09, 8.378721318571942445e-09, 8.358689487001001489e-09, 8.338651098010662768e-09, 8.318606187748336893e-09, 8.298554792361915894e-09, 8.278496947992330250e-09, 8.258432690782657799e-09, 8.238362056870315157e-09, 8.218285082394144998e-09, 8.198201803486380823e-09, 8.178112256281921309e-09, 8.158016476910870795e-09, 8.137914501498342411e-09, 8.117806366172817567e-09, 8.097692107054340431e-09, 8.077571760263628496e-09, 8.057445361918950800e-09, 8.037312948132177311e-09, 8.017174555018410621e-09, 7.997030218683991823e-09, 7.976879975234800444e-09, 7.956723860776299112e-09, 7.936561911405772948e-09, 7.916394163221799127e-09, 7.896220652316213305e-09, 7.876041414779358902e-09, 7.855856486700891125e-09, 7.835665904161917094e-09, 7.815469703244460450e-09, 7.795267920022835505e-09, 7.775060590574432033e-09, 7.754847750964045154e-09, 7.734629437260976467e-09, 7.714405685527544515e-09, 7.694176531819814354e-09, 7.673942012195751900e-09, 7.653702162703693035e-09, 7.633457019390415229e-09, 7.613206618301332763e-09, 7.592950995472631887e-09, 7.572690186940555101e-09, 7.552424228733802673e-09, 7.532153156878551968e-09, 7.511877007399061294e-09, 7.491595816310218656e-09, 7.471309619626784672e-09, 7.451018453354627772e-09, 7.430722353500216916e-09, 7.410421356062805569e-09, 7.390115497035306027e-09, 7.369804812409291385e-09, 7.349489338167276278e-09, 7.329169110291898595e-09, 7.308844164758562529e-09, 7.288514537534920763e-09, 7.268180264590469767e-09, 7.247841381880227866e-09, 7.227497925363401404e-09, 7.207149930987202603e-09, 7.186797434696042854e-09, 7.166440472431660926e-09, 7.146079080125182861e-09, 7.125713293706530325e-09, 7.105343149095874181e-09, 7.084968682212932823e-09, 7.064589928969194199e-09, 7.044206925268730580e-09, 7.023819707013250157e-09, 7.003428310094477879e-09, 6.983032770403252783e-09, 6.962633123821988245e-09, 6.942229406224506542e-09, 6.921821653485385169e-09, 6.901409901463732514e-09, 6.880994186020920960e-09, 6.860574543008841745e-09, 6.840151008270404580e-09, 6.819723617648161836e-09, 6.799292406972258998e-09, 6.778857412068953805e-09, 6.758418668761369808e-09, 6.737976212857444350e-09, 6.717530080168041337e-09, 6.697080306490300922e-09, 6.676626927618900744e-09, 6.656169979337451588e-09, 6.635709497427764299e-09, 6.615245517662166091e-09, 6.594778075803416185e-09, 6.574307207614002482e-09, 6.553832948839967710e-09, 6.533355335228646649e-09, 6.512874402516780379e-09, 6.492390186431112675e-09, 6.471902722697173011e-09, 6.451412047026991271e-09, 6.430918195127647495e-09, 6.410421202702276066e-09, 6.389921105437702679e-09, 6.369417939022590193e-09, 6.348911739130972781e-09, 6.328402541431757749e-09, 6.307890381588551002e-09, 6.287375295251925388e-09, 6.266857318068804235e-09, 6.246336485674758644e-09, 6.225812833700600116e-09, 6.205286397764759744e-09, 6.184757213482708965e-09, 6.164225316459057511e-09, 6.143690742287507907e-09, 6.123153526559441611e-09, 6.102613704851943918e-09, 6.082071312735987260e-09, 6.061526385777643020e-09, 6.040978959525673831e-09, 6.020429069529720789e-09, 5.999876751323808648e-09, 5.979322040435778987e-09, 5.958764972387365484e-09, 5.938205582686076790e-09, 5.917643906834887782e-09, 5.897079980324321784e-09, 5.876513838637581575e-09, 5.855945517251348438e-09, 5.835375051627941324e-09, 5.814802477224779788e-09, 5.794227829485771394e-09, 5.773651143850547179e-09, 5.753072455746806103e-09, 5.732491800591071912e-09, 5.711909213793810085e-09, 5.691324730751572093e-09, 5.670738386857349223e-09, 5.650150217488453553e-09, 5.629560258014967604e-09, 5.608968543799852696e-09, 5.588375110190961699e-09, 5.567779992530585517e-09, 5.547183226147565099e-09, 5.526584846362491921e-09, 5.505984888488439217e-09, 5.485383387823186474e-09, 5.464780379658588916e-09, 5.444175899271946693e-09, 5.423569981935468663e-09, 5.402962662908360399e-09, 5.382353977437667097e-09, 5.361743960763434348e-09, 5.341132648110896247e-09, 5.320520074699796065e-09, 5.299906275736676098e-09, 5.279291286414751932e-09, 5.258675141922570551e-09, 5.238057877431764744e-09, 5.217439528107409416e-09, 5.196820129100238642e-09, 5.176199715551654242e-09, 5.155578322594702687e-09, 5.134955985346031592e-09, 5.114332738915515617e-09, 5.093708618397427142e-09, 5.073083658880066303e-09, 5.052457895437704250e-09, 5.031831363131570807e-09, 5.011204097014871317e-09, 4.990576132124976405e-09, 4.969947503492964333e-09, 4.949318246135642845e-09, 4.928688395055530135e-09, 4.908057985249580786e-09, 4.887427051696878140e-09, 4.866795629368091458e-09, 4.846163753222034852e-09, 4.825531458202087239e-09, 4.804898779245750420e-09, 4.784265751272338150e-09, 4.763632409191686346e-09, 4.742998787904043903e-09, 4.722364922292279825e-09, 4.701730847231294884e-09, 4.681096597580153478e-09, 4.660462208189041051e-09, 4.639827713891301648e-09, 4.619193149513091114e-09, 4.598558549865311259e-09, 4.577923949743671064e-09, 4.557289383938259645e-09, 4.536654887216679215e-09, 4.516020494342625212e-09, 4.495386240063441366e-09, 4.474752159110913797e-09, 4.454118286210030025e-09, 4.433484656066698651e-09, 4.412851303376356995e-09, 4.392218262823979371e-09, 4.371585569076108027e-09, 4.350953256790473254e-09, 4.330321360607982975e-09, 4.309689915157996840e-09, 4.289058955059140179e-09, 4.268428514911361410e-09, 4.247798629305444616e-09, 4.227169332814241435e-09, 4.206540660002335830e-09, 4.185912645417968334e-09, 4.165285323593927742e-09, 4.144658729052741677e-09, 4.124032896298759638e-09, 4.103407859828598643e-09, 4.082783654118776871e-09, 4.062160313634466896e-09, 4.041537872830384072e-09, 4.020916366138270468e-09, 4.000295827985466722e-09, 3.979676292778007783e-09, 3.959057794910435753e-09, 3.938440368765537670e-09, 3.917824048706467438e-09, 3.897208869086403166e-09, 3.876594864239588796e-09, 3.855982068491098976e-09, 3.835370516148746745e-09, 3.814760241504002539e-09, 3.794151278837151654e-09, 3.773543662409314440e-09, 3.752937426472138376e-09, 3.732332605259776895e-09, 3.711729232988834383e-09, 3.691127343868023094e-09, 3.670526972081379243e-09, 3.649928151807566923e-09, 3.629330917203033393e-09, 3.608735302411787186e-09, 3.588141341565230189e-09, 3.567549068774179485e-09, 3.546958518138595825e-09, 3.526369723739444998e-09, 3.505782719644152261e-09, 3.485197539907238851e-09, 3.464614218562362859e-09, 3.444032789632061758e-09, 3.423453287118787833e-09, 3.402875745014619288e-09, 3.382300197293215491e-09, 3.361726677909819880e-09, 3.341155220810887921e-09, 3.320585859917194848e-09, 3.300018629142452183e-09, 3.279453562380806149e-09, 3.258890693507688831e-09, 3.238330056388617315e-09, 3.217771684866718977e-09, 3.197215612771609195e-09, 3.176661873920154016e-09, 3.156110502103998746e-09, 3.135561531108199372e-09, 3.115014994694265360e-09, 3.094470926611692200e-09, 3.073929360588948042e-09, 3.053390330343340712e-09, 3.032853869572788510e-09, 3.012320011956777256e-09, 2.991788791161610822e-09, 2.971260240832317165e-09, 2.950734394602481026e-09, 2.930211286086049466e-09, 2.909690948877422440e-09, 2.889173416560196095e-09, 2.868658722694669868e-09, 2.848146900826733291e-09, 2.827637984488676223e-09, 2.807132007186678566e-09, 2.786629002419463188e-09, 2.766129003661282060e-09, 2.745632044371770045e-09, 2.725138157995780288e-09, 2.704647377955346915e-09, 2.684159737659471822e-09, 2.663675270496006725e-09, 2.643194009838770221e-09, 2.622715989039421563e-09, 2.602241241437322726e-09, 2.581769800351331117e-09, 2.561301699079803300e-09, 2.540836970909517377e-09, 2.520375649103041942e-09, 2.499917766908555955e-09, 2.479463357556207494e-09, 2.459012454254541159e-09, 2.438565090200182292e-09, 2.418121298565340345e-09, 2.397681112506687837e-09, 2.377244565165287561e-09, 2.356811689658535431e-09, 2.336382519089895160e-09, 2.315957086540838621e-09, 2.295535425076180341e-09, 2.275117567744822784e-09, 2.254703547571793501e-09, 2.234293397567912389e-09, 2.213887150720877165e-09, 2.193484840005018309e-09, 2.173086498373182763e-09, 2.152692158757665341e-09, 2.132301854075390602e-09, 2.111915617219928485e-09, 2.091533481072095461e-09, 2.071155478487459550e-09, 2.050781642305169240e-09, 2.030412005347935699e-09, 2.010046600413926818e-09, 1.989685460286568474e-09, 1.969328617726441474e-09, 1.948976105476552755e-09, 1.928627956263260179e-09, 1.908284202788102878e-09, 1.887944877737645537e-09, 1.867610013774432341e-09, 1.847279643546836423e-09, 1.826953799680904486e-09, 1.806632514781230715e-09, 1.786315821436275141e-09, 1.766003752210254367e-09, 1.745696339652939532e-09, 1.725393616291531528e-09, 1.705095614630697402e-09, 1.684802367161333297e-09, 1.664513906348107320e-09, 1.644230264639184912e-09, 1.623951474462634539e-09, 1.603677568222792651e-09, 1.583408578310039917e-09, 1.563144537088246490e-09, 1.542885476905478410e-09, 1.522631430084953625e-09, 1.502382428934860831e-09, 1.482138505740258066e-09, 1.461899692763938974e-09, 1.441666022251707946e-09, 1.421437526424323374e-09, 1.401214237487277621e-09, 1.380996187622662109e-09, 1.360783408989199582e-09, 1.340575933731922323e-09, 1.320373793965269961e-09, 1.300177021791677873e-09, 1.279985649289123981e-09, 1.259799708511905680e-09, 1.239619231499584761e-09, 1.219444250264371463e-09, 1.199274796800065051e-09, 1.179110903081945460e-09, 1.158952601058770728e-09, 1.138799922662464117e-09, 1.118652899800100176e-09, 1.098511564360961625e-09, 1.078375948208484065e-09, 1.058246083189978246e-09, 1.038122001128613650e-09, 1.018003733823333916e-09, 9.978913130586268716e-10, 9.777847705875392123e-10, 9.576841381503693309e-10, 9.375894474620885913e-10, 9.175007302132574301e-10, 8.974180180788132205e-10, 8.773413427056277178e-10, 8.572707357213035047e-10, 8.372062287350531816e-10, 8.171478533251771954e-10, 7.970956410577281367e-10, 7.770496234695159002e-10, 7.570098320778918873e-10, 7.369762983806700103e-10, 7.169490538480982841e-10, 6.969281299325816108e-10, 6.769135580597488492e-10, 6.569053696381933835e-10, 6.369035960514057343e-10, 6.169082686586430288e-10, 5.969194188001910068e-10, 5.769370777893461592e-10, 5.569612769229997106e-10, 5.369920474691912391e-10, 5.170294206759132910e-10, 4.970734277719756801e-10, 4.771240999545236433e-10, 4.571814684076225205e-10, 4.372455642853662096e-10, 4.173164187215868197e-10, 3.973940628297984739e-10, 3.774785276951877198e-10, 3.575698443843128944e-10, 3.376680439370805752e-10, 3.177731573720180812e-10, 2.978852156871120276e-10, 2.780042498518020441e-10, 2.581302908166601845e-10, 2.382633695045112456e-10, 2.184035168201099798e-10, 1.985507636421370878e-10, 1.787051408231580155e-10, 1.588666791992987953e-10, 1.390354095734124039e-10, 1.192113627344723217e-10, 9.939456944074252247e-11, 7.958506042944938594e-11, 5.978286641673873604e-11, 3.998801808968105636e-11, 2.020054611594211680e-11, 4.204811357933107073e-13, -1.935214623263637989e-11, -3.911730539252432131e-11, -5.887496577633574875e-11, -7.862509683616780429e-11, -9.836766805260747516e-11, -1.181026489250817176e-10, -1.378300089798334168e-10, -1.575497177690821342e-10, -1.772617448657826137e-10, -1.969660598715949115e-10, -2.166626324072404790e-10, -2.363514321204759767e-10, -2.560324286861274217e-10, -2.757055917973369358e-10, -2.953708911779269770e-10, -3.150282965736402376e-10, -3.346777777513101374e-10, -3.543193045112114574e-10, -3.739528466686410955e-10, -3.935783740706623735e-10, -4.131958565847223598e-10, -4.328052641074799025e-10, -4.524065665551900690e-10, -4.719997338716474572e-10, -4.915847360273496065e-10, -5.111615430142832260e-10, -5.307301248538469310e-10, -5.502904515872604454e-10, -5.698424932834859933e-10, -5.893862200392853749e-10, -6.089216019704862828e-10, -6.284486092242945760e-10, -6.479672119697010518e-10, -6.674773804010350147e-10, -6.869790847414944755e-10, -7.064722952335617139e-10, -7.259569821513076926e-10, -7.454331157916808122e-10, -7.649006664745335873e-10, -7.843596045505579971e-10, -8.038099003917077681e-10, -8.232515243990822318e-10, -8.426844469977498295e-10, -8.621086386359021123e-10, -8.815240697927711010e-10, -9.009307109690468118e-10, -9.203285326956610879e-10, -9.397175055233473388e-10, -9.590976000349243791e-10, -9.784687868356931726e-10, -9.978310365570066326e-10, -1.017184319859779867e-09, -1.036528607424954233e-09, -1.055863869965726790e-09, -1.075190078218877927e-09, -1.094507202944848092e-09, -1.113815214935560636e-09, -1.133114085004914826e-09, -1.152403783996664739e-09, -1.171684282779222499e-09, -1.190955552244845159e-09, -1.210217563317493121e-09, -1.229470286943313221e-09, -1.248713694099363828e-09, -1.267947755784096267e-09, -1.287172443025215730e-09, -1.306387726878862358e-09, -1.325593578424424620e-09, -1.344789968772402280e-09, -1.363976869054029007e-09, -1.383154250433484864e-09, -1.402322084099203265e-09, -1.421480341263101075e-09, -1.440628993172718516e-09, -1.459768011093081173e-09, -1.478897366323204304e-09, -1.498017030186552976e-09, -1.517126974031186400e-09, -1.536227169237478841e-09, -1.555317587208692442e-09, -1.574398199379668004e-09, -1.593468977207336596e-09, -1.612529892178549653e-09, -1.631580915809261510e-09, -1.650622019639351668e-09, -1.669653175240489836e-09, -1.688674354206624795e-09, -1.707685528161815322e-09, -1.726686668760272170e-09, -1.745677747676910213e-09, -1.764658736623758680e-09, -1.783629607331884361e-09, -1.802590331563566674e-09, -1.821540881111366256e-09, -1.840481227789631269e-09, -1.859411343446567618e-09, -1.878331199953941793e-09, -1.897240769214859884e-09, -1.916140023158643813e-09, -1.935028933740076953e-09, -1.953907472947041892e-09, -1.972775612791234094e-09, -1.991633325316721152e-09, -2.010480582590554697e-09, -2.029317356710537628e-09, -2.048143619805256370e-09, -2.066959344024675003e-09, -2.085764501556502687e-09, -2.104559064608175598e-09, -2.123343005418914327e-09, -2.142116296258916966e-09, -2.160878909420832528e-09, -2.179630817231764168e-09, -2.198371992044737641e-09, -2.217102406237960559e-09, -2.235822032226733384e-09, -2.254530842445587697e-09, -2.273228809364537406e-09, -2.291915905478047465e-09, -2.310592103313553007e-09, -2.329257375422160176e-09, -2.347911694386329401e-09, -2.366555032819105697e-09, -2.385187363358958718e-09, -2.403808658677543364e-09, -2.422418891470379107e-09, -2.441018034464520854e-09, -2.459606060418584175e-09, -2.478182942114301857e-09, -2.496748652368489482e-09, -2.515303164024503138e-09, -2.533846449951501158e-09, -2.552378483056327395e-09, -2.570899236265730564e-09, -2.589408682542527763e-09, -2.607906794876303241e-09, -2.626393546283493596e-09, -2.644868909814941180e-09, -2.663332858546708665e-09, -2.681785365587704413e-09, -2.700226404074635016e-09, -2.718655947171188871e-09, -2.737073968075702903e-09, -2.755480440011874154e-09, -2.773875336237310762e-09, -2.792258630033320004e-09, -2.810630294716839546e-09, -2.828990303631191224e-09, -2.847338630149467928e-09, -2.865675247677924635e-09, -2.884000129646762785e-09, -2.902313249522031759e-09, -2.920614580797094442e-09, -2.938904096992756675e-09, -2.957181771664866154e-09, -2.975447578395095978e-09, -2.993701490798521628e-09, -3.011943482518621900e-09, -3.030173527226483154e-09, -3.048391598628410208e-09, -3.066597670456703684e-09, -3.084791716478041415e-09, -3.102973710484363333e-09, -3.121143626300426518e-09, -3.139301437782981330e-09, -3.157447118815755794e-09, -3.175580643317139288e-09, -3.193701985230879650e-09, -3.211811118533709787e-09, -3.229908017235350568e-09, -3.247992655370225785e-09, -3.266065007009174614e-09, -3.284125046249437769e-09, -3.302172747222272527e-09, -3.320208084087880454e-09, -3.338231031034704303e-09, -3.356241562286892492e-09, -3.374239652095198049e-09, -3.392225274745336446e-09, -3.410198404548878751e-09, -3.428159015850726035e-09, -3.446107083028390965e-09, -3.464042580486937113e-09, -3.481965482666579916e-09, -3.499875764033544268e-09, -3.517773399087550498e-09, -3.535658362361890063e-09, -3.553530628415129334e-09, -3.571390171842816690e-09, -3.589236967268291294e-09, -3.607070989346098939e-09, -3.624892212765305322e-09, -3.642700612240458262e-09, -3.660496162523188501e-09, -3.678278838392315379e-09, -3.696048614662080594e-09, -3.713805466173265931e-09, -3.731549367800474523e-09, -3.749280294451404174e-09, -3.766998221061969057e-09, -3.784703122603687268e-09, -3.802394974074681513e-09, -3.820073750507098090e-09, -3.837739426967247511e-09, -3.855391978546421970e-09, -3.873031380376610948e-09, -3.890657607613323978e-09, -3.908270635447096729e-09, -3.925870439102652246e-09, -3.943456993830778861e-09, -3.961030274919888390e-09, -3.978590257687694693e-09, -3.996136917481395659e-09, -4.013670229685009465e-09, -4.031190169710422003e-09, -4.048696713004719838e-09, -4.066189835045447977e-09, -4.083669511339640417e-09, -4.101135717431413663e-09, -4.118588428892833823e-09, -4.136027621332184284e-09, -4.153453270383399301e-09, -4.170865351721537243e-09, -4.188263841045797742e-09, -4.205648714090801134e-09, -4.223019946626013565e-09, -4.240377514447426379e-09, -4.257721393389072133e-09, -4.275051559314926492e-09, -4.292367988118158808e-09, -4.309670655732414035e-09, -4.326959538114951477e-09, -4.344234611261926127e-09, -4.361495851199673488e-09, -4.378743233984582192e-09, -4.395976735710508013e-09, -4.413196332499841978e-09, -4.430402000511684559e-09, -4.447593715932951834e-09, -4.464771454985620756e-09, -4.481935193926117042e-09, -4.499084909040323967e-09, -4.516220576650919451e-09, -4.533342173107814683e-09, -4.550449674799354146e-09, -4.567543058144310987e-09, -4.584622299591212039e-09, -4.601687375629522961e-09, -4.618738262772801044e-09, -4.635774937574031973e-09, -4.652797376616783952e-09, -4.669805556515302007e-09, -4.686799453921671367e-09, -4.703779045517066724e-09, -4.720744308018964414e-09, -4.737695218176507733e-09, -4.754631752769506042e-09, -4.771553888615816527e-09, -4.788461602562520668e-09, -4.805354871493969392e-09, -4.822233672323025717e-09, -4.839097981998204144e-09, -4.855947777503860082e-09, -4.872783035851295177e-09, -4.889603734093932766e-09, -4.906409849310740350e-09, -4.923201358617265012e-09, -4.939978239164951817e-09, -4.956740468133204538e-09, -4.973488022740436782e-09, -4.990220880234815846e-09, -5.006939017901145681e-09, -5.023642413056295069e-09, -5.040331043048429170e-09, -5.057004885264091842e-09, -5.073663917119612890e-09, -5.090308116068933195e-09, -5.106937459595112878e-09, -5.123551925217265551e-09, -5.140151490489928838e-09, -5.156736132998292368e-09, -5.173305830365361985e-09, -5.189860560243291724e-09, -5.206400300320492601e-09, -5.222925028321729392e-09, -5.239434722000187971e-09, -5.255929359148516519e-09, -5.272408917591025209e-09, -5.288873375182964078e-09, -5.305322709821455043e-09, -5.321756899429101323e-09, -5.338175921968853524e-09, -5.354579755435546756e-09, -5.370968377855771594e-09, -5.387341767294978730e-09, -5.403699901848979692e-09, -5.420042759650921635e-09, -5.436370318865082654e-09, -5.452682557693958242e-09, -5.468979454369731408e-09, -5.485260987161185418e-09, -5.501527134373835321e-09, -5.517777874342149970e-09, -5.534013185440456742e-09, -5.550233046074392629e-09, -5.566437434684117002e-09, -5.582626329747262174e-09, -5.598799709770756708e-09, -5.614957553301318212e-09, -5.631099838917911102e-09, -5.647226545231893843e-09, -5.663337650893738959e-09, -5.679433134584757098e-09, -5.695512975023970069e-09, -5.711577150963631665e-09, -5.727625641188327684e-09, -5.743658424521962305e-09, -5.759675479819425060e-09, -5.775676785974149621e-09, -5.791662321909077671e-09, -5.807632066587238547e-09, -5.823585999003622193e-09, -5.839524098187927876e-09, -5.855446343207887801e-09, -5.871352713160801744e-09, -5.887243187184190313e-09, -5.903117744448371826e-09, -5.918976364156252206e-09, -5.934819025550391591e-09, -5.950645707904597693e-09, -5.966456390530705369e-09, -5.982251052774166098e-09, -5.998029674013228244e-09, -6.013792233665847319e-09, -6.029538711181309958e-09, -6.045269086047842321e-09, -6.060983337784430108e-09, -6.076681445947454199e-09, -6.092363390130040491e-09, -6.108029149957608015e-09, -6.123678705094572400e-09, -6.139312035236194017e-09, -6.154929120115269864e-09, -6.170529939502200569e-09, -6.186114473197595399e-09, -6.201682701042615320e-09, -6.217234602910092391e-09, -6.232770158711331668e-09, -6.248289348391578255e-09, -6.263792151929282767e-09, -6.279278549342927225e-09, -6.294748520682805362e-09, -6.310202046038459804e-09, -6.325639105530466512e-09, -6.341059679317339257e-09, -6.356463747594560169e-09, -6.371851290590399162e-09, -6.387222288572301421e-09, -6.402576721839219445e-09, -6.417914570727745756e-09, -6.433235815612576126e-09, -6.448540436898103765e-09, -6.463828415032730371e-09, -6.479099730493136469e-09, -6.494354363794802315e-09, -6.509592295491195610e-09, -6.524813506166574195e-09, -6.540017976446109923e-09, -6.555205686987168514e-09, -6.570376618486727713e-09, -6.585530751673243624e-09, -6.600668067313352527e-09, -6.615788546211011435e-09, -6.630892169203431678e-09, -6.645978917167264556e-09, -6.661048771010916834e-09, -6.676101711680949809e-09, -6.691137720162232341e-09, -6.706156777469826206e-09, -6.721158864662914999e-09, -6.736143962829531061e-09, -6.751112053096763723e-09, -6.766063116630039656e-09, -6.780997134625783294e-09, -6.795914088321823601e-09, -6.810813958989884091e-09, -6.825696727935175031e-09, -6.840562376506172371e-09, -6.855410886079992361e-09, -6.870242238075489960e-09, -6.885056413945872107e-09, -6.899853395178365201e-09, -6.914633163300965719e-09, -6.929395699874395883e-09, -6.944140986499262083e-09, -6.958869004807040263e-09, -6.973579736473297574e-09, -6.988273163202971044e-09, -7.002949266740271408e-09, -7.017608028868065203e-09, -7.032249431400656797e-09, -7.046873456193908936e-09, -7.061480085137958596e-09, -7.076069300156842267e-09, -7.090641083218070573e-09, -7.105195416318007851e-09, -7.119732281495244353e-09, -7.134251660822903468e-09, -7.148753536408562314e-09, -7.163237890400691332e-09, -7.177704704980993777e-09, -7.192153962370570684e-09, -7.206585644825821370e-09, -7.220999734637748598e-09, -7.235396214138394042e-09, -7.249775065692881636e-09, -7.264136271706776178e-09, -7.278479814617996804e-09, -7.292805676903671842e-09, -7.307113841079624299e-09, -7.321404289692936340e-09, -7.335677005335291707e-09, -7.349931970627499998e-09, -7.364169168232882105e-09, -7.378388580849462456e-09, -7.392590191210317258e-09, -7.406773982089393708e-09, -7.420939936294241567e-09, -7.435088036672068112e-09, -7.449218266105726314e-09, -7.463330607513023318e-09, -7.477425043852741486e-09, -7.491501558117570967e-09, -7.505560133340359877e-09, -7.519600752587060096e-09, -7.533623398962721027e-09, -7.547628055610831153e-09, -7.561614705709286364e-09, -7.575583332476468077e-09, -7.589533919163790339e-09, -7.603466449061974820e-09, -7.617380905500865526e-09, -7.631277271842678999e-09, -7.645155531491650908e-09, -7.659015667885880036e-09, -7.672857664503250903e-09, -7.686681504857627075e-09, -7.700487172498191077e-09, -7.714274651015284287e-09, -7.728043924033241895e-09, -7.741794975217035168e-09, -7.755527788264939320e-09, -7.769242346914520640e-09, -7.782938634942027696e-09, -7.796616636158576370e-09, -7.810276334415728367e-09, -7.823917713598557789e-09, -7.837540757631524116e-09, -7.851145450478478822e-09, -7.864731776136041313e-09, -7.878299718642944415e-09, -7.891849262072650962e-09, -7.905380390536222450e-09, -7.918893088184749305e-09, -7.932387339202223885e-09, -7.945863127814695720e-09, -7.959320438283870789e-09, -7.972759254906924574e-09, -7.986179562022499121e-09, -7.999581344003703440e-09, -8.012964585263634104e-09, -8.026329270250445255e-09, -8.039675383453143831e-09, -8.053002909394394751e-09, -8.066311832636517969e-09, -8.079602137781412381e-09, -8.092873809463923485e-09, -8.106126832361417169e-09, -8.119361191186045578e-09, -8.132576870687786171e-09, -8.145773855656876940e-09, -8.158952130916696044e-09, -8.172111681332983212e-09, -8.185252491807149514e-09, -8.198374547276540396e-09, -8.211477832720065479e-09, -8.224562333151160899e-09, -8.237628033623650716e-09, -8.250674919227948496e-09, -8.263702975090140796e-09, -8.276712186378154622e-09, -8.289702538294608935e-09, -8.302674016083000310e-09, -8.315626605019609795e-09, -8.328560290425657509e-09, -8.341475057653796432e-09, -8.354370892097184925e-09, -8.367247779188781973e-09, -8.380105704394858777e-09, -8.392944653224367404e-09, -8.405764611222005702e-09, -8.418565563968589536e-09, -8.431347497086796726e-09, -8.444110396233914329e-09, -8.456854247107920071e-09, -8.469579035443369605e-09, -8.482284747011067291e-09, -8.494971367623490850e-09, -8.507638883128081273e-09, -8.520287279413329215e-09, -8.532916542402088070e-09, -8.545526658057145856e-09, -8.558117612380556854e-09, -8.570689391409876285e-09, -8.583241981224180526e-09, -8.595775367936465322e-09, -8.608289537699957176e-09, -8.620784476707828797e-09, -8.633260171186277250e-09, -8.645716607406607416e-09, -8.658153771671333701e-09, -8.670571650326165879e-09, -8.682970229753067399e-09, -8.695349496370300050e-09, -8.707709436638000810e-09, -8.720050037051408894e-09, -8.732371284147127512e-09, -8.744673164496087869e-09, -8.756955664709498248e-09, -8.769218771437881172e-09, -8.781462471367524800e-09, -8.793686751226064740e-09, -8.805891597775722676e-09, -8.818076997818783960e-09, -8.830242938197634003e-09, -8.842389405787980360e-09, -8.854516387510737663e-09, -8.866623870318772874e-09, -8.878711841205827261e-09, -8.890780287205758693e-09, -8.902829195386394042e-09, -8.914858552858222846e-09, -8.926868346768195109e-09, -8.938858564299304404e-09, -8.950829192678791849e-09, -8.962780219165622594e-09, -8.974711631062074618e-09, -8.986623415705589349e-09, -8.998515560475179005e-09, -9.010388052784542794e-09, -9.022240880087489912e-09, -9.034074029878281998e-09, -9.045887489684585550e-09, -9.057681247079153374e-09, -9.069455289667092618e-09, -9.081209605094391350e-09, -9.092944181047304791e-09, -9.104659005246235832e-09, -9.116354065454402231e-09, -9.128029349471533500e-09, -9.139684845133450696e-09, -9.151320540320445757e-09, -9.162936422944748067e-09, -9.174532480961818777e-09, -9.186108702363721781e-09, -9.197665075179456239e-09, -9.209201587479944482e-09, -9.220718227371667679e-09, -9.232214983001954832e-09, -9.243691842554338987e-09, -9.255148794253864417e-09, -9.266585826360527090e-09, -9.278002927174542144e-09, -9.289400085036661536e-09, -9.300777288321930472e-09, -9.312134525448046901e-09, -9.323471784868944247e-09, -9.334789055077132327e-09, -9.346086324606071364e-09, -9.357363582023602512e-09, -9.368620815940433083e-09, -9.379858015003922759e-09, -9.391075167898378072e-09, -9.402272263350177616e-09, -9.413449290121356430e-09, -9.424606237014921464e-09, -9.435743092871372458e-09, -9.446859846567977327e-09, -9.457956487024289461e-09, -9.469033003195432672e-09, -9.480089384078129682e-09, -9.491125618704276589e-09, -9.502141696146116052e-09, -9.513137605515683080e-09, -9.524113335961373888e-09, -9.535068876673254743e-09, -9.546004216875832401e-09, -9.556919345836367277e-09, -9.567814252859106339e-09, -9.578688927285254985e-09, -9.589543358498044353e-09, -9.600377535916532426e-09, -9.611191449000980706e-09, -9.621985087248949927e-09, -9.632758440195038658e-09, -9.643511497415972127e-09, -9.654244248524386776e-09, -9.664956683174362455e-09, -9.675648791055407155e-09, -9.686320561897296022e-09, -9.696971985469833126e-09, -9.707603051579117567e-09, -9.718213750072865557e-09, -9.728804070834147007e-09, -9.739374003786391623e-09, -9.749923538893458393e-09, -9.760452666154020682e-09, -9.770961375609553487e-09, -9.781449657337251120e-09, -9.791917501455367484e-09, -9.802364898119821323e-09, -9.812791837523572529e-09, -9.823198309901701032e-09, -9.833584305525240994e-09, -9.843949814706630275e-09, -9.854294827794029356e-09, -9.864619335175816242e-09, -9.874923327280258893e-09, -9.885206794572168457e-09, -9.895469727557882200e-09, -9.905712116779278032e-09, -9.915933952818494398e-09, -9.926135226298338904e-09, -9.936315927875839619e-09, -9.946476048252745304e-09, -9.956615578164239360e-09, -9.966734508386487024e-09, -9.976832829735983554e-09, -9.986910533064141152e-09, -9.996967609265188544e-09, -1.000700404927032612e-08, -1.001701984404793274e-08, -1.002701498460846261e-08, -1.003698946199845158e-08, -1.004694326730531805e-08, -1.005687639165316095e-08, -1.006678882620750934e-08, -1.007668056216963312e-08, -1.008655159078105777e-08, -1.009640190332368510e-08, -1.010623149111399802e-08, -1.011604034551305953e-08, -1.012582845791552940e-08, -1.013559581975680603e-08, -1.014534242251295368e-08, -1.015506825769490723e-08, -1.016477331685608889e-08, -1.017445759158719029e-08, -1.018412107351565801e-08, -1.019376375431284539e-08, -1.020338562568326247e-08, -1.021298667937426889e-08, -1.022256690717063934e-08, -1.023212630089420619e-08, -1.024166485240879778e-08, -1.025118255361440347e-08, -1.026067939645243121e-08, -1.027015537289997351e-08, -1.027961047497434042e-08, -1.028904469473291889e-08, -1.029845802426965392e-08, -1.030785045571981980e-08, -1.031722198125401305e-08, -1.032657259308510741e-08, -1.033590228346319644e-08, -1.034521104467523286e-08, -1.035449886905204306e-08, -1.036376574895754229e-08, -1.037301167679856492e-08, -1.038223664501913699e-08, -1.039144064610064334e-08, -1.040062367256622820e-08, -1.040978571697520011e-08, -1.041892677192776841e-08, -1.042804683006196775e-08, -1.043714588405295333e-08, -1.044622392661772906e-08, -1.045528095050953933e-08, -1.046431694852290810e-08, -1.047333191348814153e-08, -1.048232583827568226e-08, -1.049129871579644849e-08, -1.050025053899602228e-08, -1.050918130086410419e-08, -1.051809099442387078e-08, -1.052697961274105372e-08, -1.053584714891875840e-08, -1.054469359609731826e-08, -1.055351894745865078e-08, -1.056232319622121331e-08, -1.057110633564396364e-08, -1.057986835902361867e-08, -1.058860925969426568e-08, -1.059732903103151477e-08, -1.060602766644739843e-08, -1.061470515939493929e-08, -1.062336150336314232e-08, -1.063199669188116219e-08, -1.064061071851768451e-08, -1.064920357687826237e-08, -1.065777526060958120e-08, -1.066632576339410698e-08, -1.067485507895442064e-08, -1.068336320105338183e-08, -1.069185012348905337e-08, -1.070031584010154531e-08, -1.070876034476816933e-08, -1.071718363140320876e-08, -1.072558569396412413e-08, -1.073396652644198263e-08, -1.074232612287020810e-08, -1.075066447731872948e-08, -1.075898158389829048e-08, -1.076727743675548976e-08, -1.077555203007707733e-08, -1.078380535808926636e-08, -1.079203741505516059e-08, -1.080024819527867852e-08, -1.080843769309977394e-08, -1.081660590289835347e-08, -1.082475281909421533e-08, -1.083287843614265704e-08, -1.084098274854080333e-08, -1.084906575082250574e-08, -1.085712743756028650e-08, -1.086516780336692179e-08, -1.087318684289093684e-08, -1.088118455082228211e-08, -1.088916092188829165e-08, -1.089711595085346805e-08, -1.090504963252362827e-08, -1.091296196174091075e-08, -1.092085293338760860e-08, -1.092872254238324964e-08, -1.093657078368767515e-08, -1.094439765229678158e-08, -1.095220314324636690e-08, -1.095998725161200985e-08, -1.096774997250479840e-08, -1.097549130107727879e-08, -1.098321123251905165e-08, -1.099090976205791846e-08, -1.099858688496210008e-08, -1.100624259653514952e-08, -1.101387689212227168e-08, -1.102148976710574401e-08, -1.102908121690510352e-08, -1.103665123698080284e-08, -1.104419982282990399e-08, -1.105172696998940857e-08, -1.105923267403382750e-08, -1.106671693057512647e-08, -1.107417973526595022e-08, -1.108162108379552971e-08, -1.108904097189334485e-08, -1.109643939532507628e-08, -1.110381634989585289e-08, -1.111117183145010126e-08, -1.111850583586898969e-08, -1.112581835907410581e-08, -1.113310939702257295e-08, -1.114037894571273449e-08, -1.114762700118002295e-08, -1.115485355949716015e-08, -1.116205861677754367e-08, -1.116924216917082644e-08, -1.117640421286676474e-08, -1.118354474409250674e-08, -1.119066375911234432e-08, -1.119776125423123025e-08, -1.120483722579065055e-08, -1.121189167017215328e-08, -1.121892458379324236e-08, -1.122593596311083025e-08, -1.123292580462105598e-08, -1.123989410485655875e-08, -1.124684086039027303e-08, -1.125376606783110739e-08, -1.126066972382727303e-08, -1.126755182506640626e-08, -1.127441236827120096e-08, -1.128125135020695078e-08, -1.128806876767317318e-08, -1.129486461750910680e-08, -1.130163889659340050e-08, -1.130839160184021068e-08, -1.131512273020450848e-08, -1.132183227867742443e-08, -1.132852024429030161e-08, -1.133518662411016271e-08, -1.134183141524343233e-08, -1.134845461483526204e-08, -1.135505622006770059e-08, -1.136163622816249481e-08, -1.136819463637730771e-08, -1.137473144200899907e-08, -1.138124664239371479e-08, -1.138774023490248463e-08, -1.139421221694875618e-08, -1.140066258597994933e-08, -1.140709133948342191e-08, -1.141349847498537117e-08, -1.141988399004746223e-08, -1.142624788227199463e-08, -1.143259014929818002e-08, -1.143891078880159123e-08, -1.144520979849960682e-08, -1.145148717614353796e-08, -1.145774291952550227e-08, -1.146397702647369240e-08, -1.147018949485617603e-08, -1.147638032257661777e-08, -1.148254950757778304e-08, -1.148869704784129986e-08, -1.149482294138403910e-08, -1.150092718626451191e-08, -1.150700978057550616e-08, -1.151307072244912394e-08, -1.151911001005641598e-08, -1.152512764160378835e-08, -1.153112361533782827e-08, -1.153709792954199700e-08, -1.154305058253610212e-08, -1.154898157268138467e-08, -1.155489089837266098e-08, -1.156077855804567957e-08, -1.156664455017272388e-08, -1.157248887326272475e-08, -1.157831152586447485e-08, -1.158411250656289151e-08, -1.158989181398184230e-08, -1.159564944678217312e-08, -1.160138540366143182e-08, -1.160709968335688089e-08, -1.161279228464177177e-08, -1.161846320632865692e-08, -1.162411244726527539e-08, -1.162974000633961685e-08, -1.163534588247601068e-08, -1.164093007463515572e-08, -1.164649258181863173e-08, -1.165203340306197094e-08, -1.165755253744083706e-08, -1.166304998406750978e-08, -1.166852574209093772e-08, -1.167397981069937379e-08, -1.167941218911700365e-08, -1.168482287660682095e-08, -1.169021187246870333e-08, -1.169557917603886978e-08, -1.170092478669307191e-08, -1.170624870384295434e-08, -1.171155092693908221e-08, -1.171683145546759106e-08, -1.172209028895278919e-08, -1.172732742695731145e-08, -1.173254286907969567e-08, -1.173773661495751761e-08, -1.174290866426366210e-08, -1.174805901670955890e-08, -1.175318767204476751e-08, -1.175829463005383714e-08, -1.176337989056102335e-08, -1.176844345342613889e-08, -1.177348531854759770e-08, -1.177850548586043963e-08, -1.178350395533599129e-08, -1.178848072698474299e-08, -1.179343580085274884e-08, -1.179836917702485109e-08, -1.180328085562121924e-08, -1.180817083680008964e-08, -1.181303912075756529e-08, -1.181788570772545032e-08, -1.182271059797457526e-08, -1.182751379181080006e-08, -1.183229528957789602e-08, -1.183705509165789981e-08, -1.184179319846761948e-08, -1.184650961046307141e-08, -1.185120432813605420e-08, -1.185587735201558127e-08, -1.186052868266874284e-08, -1.186515832069743688e-08, -1.186976626674277635e-08, -1.187435252148131556e-08, -1.187891708562806945e-08, -1.188345995993302449e-08, -1.188798114518432165e-08, -1.189248064220731350e-08, -1.189695845186316121e-08, -1.190141457505134431e-08, -1.190584901270641143e-08, -1.191026176580079116e-08, -1.191465283534437175e-08, -1.191902222238192037e-08, -1.192336992799725206e-08, -1.192769595330946777e-08, -1.193200029947459870e-08, -1.193628296768652788e-08, -1.194054395917385508e-08, -1.194478327520398811e-08, -1.194900091708003254e-08, -1.195319688614110943e-08, -1.195737118376459029e-08, -1.196152381136303657e-08, -1.196565477038691940e-08, -1.196976406232262113e-08, -1.197385168869231456e-08, -1.197791765105656360e-08, -1.198196195101089045e-08, -1.198598459018904963e-08, -1.198998557025886554e-08, -1.199396489292780276e-08, -1.199792255993704338e-08, -1.200185857306542939e-08, -1.200577293412907884e-08, -1.200966564497843446e-08, -1.201353670750273872e-08, -1.201738612362641573e-08, -1.202121389530960396e-08, -1.202502002455058813e-08, -1.202880451338239456e-08, -1.203256736387573426e-08, -1.203630857813692504e-08, -1.204002815830800072e-08, -1.204372610656869639e-08, -1.204740242513385099e-08, -1.205105711625569700e-08, -1.205469018222130776e-08, -1.205830162535472329e-08, -1.206189144801664759e-08, -1.206545965260289845e-08, -1.206900624154711403e-08, -1.207253121731678898e-08, -1.207603458241768168e-08, -1.207951633939078841e-08, -1.208297649081213488e-08, -1.208641503929647374e-08, -1.208983198749171602e-08, -1.209322733808412083e-08, -1.209660109379486423e-08, -1.209995325738057855e-08, -1.210328383163531115e-08, -1.210659281938784438e-08, -1.210988022350425151e-08, -1.211314604688495369e-08, -1.211639029246693178e-08, -1.211961296322390670e-08, -1.212281406216414574e-08, -1.212599359233311946e-08, -1.212915155681073066e-08, -1.213228795871337567e-08, -1.213540280119396920e-08, -1.213849608743919313e-08, -1.214156782067449929e-08, -1.214461800415832748e-08, -1.214764664118587079e-08, -1.215065373508884727e-08, -1.215363928923287121e-08, -1.215660330702097193e-08, -1.215954579189058117e-08, -1.216246674731591542e-08, -1.216536617680605350e-08, -1.216824408390506397e-08, -1.217110047219404002e-08, -1.217393534528843756e-08, -1.217674870684033012e-08, -1.217954056053598524e-08, -1.218231091009783149e-08, -1.218505975928452131e-08, -1.218778711188828739e-08, -1.219049297173929029e-08, -1.219317734270077945e-08, -1.219584022867235892e-08, -1.219848163358974576e-08, -1.220110156142224721e-08, -1.220370001617634566e-08, -1.220627700189291105e-08, -1.220883252264736629e-08, -1.221136658255255597e-08, -1.221387918575413229e-08, -1.221637033643473900e-08, -1.221884003881164063e-08, -1.222128829713649755e-08, -1.222371511569767546e-08, -1.222612049881735353e-08, -1.222850445085386368e-08, -1.223086697619969710e-08, -1.223320807928350103e-08, -1.223552776456771635e-08, -1.223782603655048340e-08, -1.224010289976561222e-08, -1.224235835878043017e-08, -1.224459241819868872e-08, -1.224680508265843092e-08, -1.224899635683184750e-08, -1.225116624542814715e-08, -1.225331475318904349e-08, -1.225544188489297859e-08, -1.225754764535240984e-08, -1.225963203941415075e-08, -1.226169507196097404e-08, -1.226373674790941131e-08, -1.226575707221157616e-08, -1.226775604985398134e-08, -1.226973368585714002e-08, -1.227168998527763705e-08, -1.227362495320557301e-08, -1.227553859476677770e-08, -1.227743091512025914e-08, -1.227930191946111691e-08, -1.228115161301817140e-08, -1.228298000105469510e-08, -1.228478708886959544e-08, -1.228657288179472809e-08, -1.228833738519781695e-08, -1.229008060448044240e-08, -1.229180254507813564e-08, -1.229350321246202474e-08, -1.229518261213655497e-08, -1.229684074964156334e-08, -1.229847763055059447e-08, -1.230009326047118515e-08, -1.230168764504619276e-08, -1.230326078995183159e-08, -1.230481270089952238e-08, -1.230634338363391701e-08, -1.230785284393428656e-08, -1.230934108761468833e-08, -1.231080812052241078e-08, -1.231225394853992073e-08, -1.231367857758268119e-08, -1.231508201360087860e-08, -1.231646426257925238e-08, -1.231782533053525196e-08, -1.231916522352191375e-08, -1.232048394762518272e-08, -1.232178150896571893e-08, -1.232305791369777428e-08, -1.232431316800911138e-08, -1.232554727812241807e-08, -1.232676025029338009e-08, -1.232795209081237844e-08, -1.232912280600288960e-08, -1.233027240222240704e-08, -1.233140088586262814e-08, -1.233250826334849303e-08, -1.233359454113940217e-08, -1.233465972572751569e-08, -1.233570382363911490e-08, -1.233672684143496133e-08, -1.233772878570785321e-08, -1.233870966308611617e-08, -1.233966948023008443e-08, -1.234060824383425311e-08, -1.234152596062717400e-08, -1.234242263736984259e-08, -1.234329828085799098e-08, -1.234415289791989751e-08, -1.234498649541811394e-08, -1.234579908024767870e-08, -1.234659065933752315e-08, -1.234736123965032428e-08, -1.234811082818148897e-08, -1.234883943196027730e-08, -1.234954705804893235e-08, -1.235023371354291511e-08, -1.235089940557152324e-08, -1.235154414129623996e-08, -1.235216792791324545e-08, -1.235277077265041412e-08, -1.235335268276949178e-08, -1.235391366556581272e-08, -1.235445372836667351e-08, -1.235497287853355808e-08, -1.235547112346054293e-08, -1.235594847057415653e-08, -1.235640492733543235e-08, -1.235684050123674736e-08, -1.235725519980448398e-08, -1.235764903059786034e-08, -1.235802200120830337e-08, -1.235837411926100878e-08, -1.235870539241338935e-08, -1.235901582835626104e-08, -1.235930543481228132e-08, -1.235957421953822056e-08, -1.235982219032253350e-08, -1.236004935498672898e-08, -1.236025572138538819e-08, -1.236044129740494538e-08, -1.236060609096528435e-08, -1.236075011001865646e-08, -1.236087336254923728e-08, -1.236097585657529216e-08, -1.236105760014601638e-08, -1.236111860134420363e-08, -1.236115886828473727e-08, -1.236117840911462336e-08, -1.236117723201397342e-08, -1.236115534519482977e-08, -1.236111275690186535e-08, -1.236104947541226462e-08, -1.236096550903488146e-08, -1.236086086611153293e-08, -1.236073555501599996e-08, -1.236058958415460810e-08, -1.236042296196538874e-08, -1.236023569691880700e-08, -1.236002779751800827e-08, -1.235979927229728458e-08, -1.235955012982412604e-08, -1.235928037869713138e-08, -1.235899002754768211e-08, -1.235867908503886728e-08, -1.235834755986552144e-08, -1.235799546075502375e-08, -1.235762279646636160e-08, -1.235722957579067652e-08, -1.235681580755079440e-08, -1.235638150060125520e-08, -1.235592666382890528e-08, -1.235545130615187495e-08, -1.235495543652068030e-08, -1.235443906391709326e-08, -1.235390219735469583e-08, -1.235334484587908851e-08, -1.235276701856711111e-08, -1.235216872452774766e-08, -1.235154997290103789e-08, -1.235091077285882493e-08, -1.235025113360504160e-08, -1.234957106437415688e-08, -1.234887057443307518e-08, -1.234814967307952992e-08, -1.234740836964311917e-08, -1.234664667348474484e-08, -1.234586459399639428e-08, -1.234506214060186818e-08, -1.234423932275611559e-08, -1.234339614994556139e-08, -1.234253263168749592e-08, -1.234164877753075650e-08, -1.234074459705551241e-08, -1.233982009987273881e-08, -1.233887529562505709e-08, -1.233791019398587469e-08, -1.233692480465973412e-08, -1.233591913738256938e-08, -1.233489320192083247e-08, -1.233384700807252243e-08, -1.233278056566630682e-08, -1.233169388456190393e-08, -1.233058697465001325e-08, -1.232945984585219639e-08, -1.232831250812093828e-08, -1.232714497143958926e-08, -1.232595724582207891e-08, -1.232474934131338913e-08, -1.232352126798921009e-08, -1.232227303595585421e-08, -1.232100465535049101e-08, -1.231971613634099830e-08, -1.231840748912557833e-08, -1.231707872393330866e-08, -1.231572985102388083e-08, -1.231436088068730422e-08, -1.231297182324427161e-08, -1.231156268904613608e-08, -1.231013348847436669e-08, -1.230868423194119371e-08, -1.230721492988889887e-08, -1.230572559279050854e-08, -1.230421623114917007e-08, -1.230268685549832875e-08, -1.230113747640182050e-08, -1.229956810445371802e-08, -1.229797875027842835e-08, -1.229636942453027600e-08, -1.229474013789397116e-08, -1.229309090108423740e-08, -1.229142172484604997e-08, -1.228973261995427015e-08, -1.228802359721393641e-08, -1.228629466746022474e-08, -1.228454584155794900e-08, -1.228277713040214325e-08, -1.228098854491770776e-08, -1.227918009605937258e-08, -1.227735179481179349e-08, -1.227550365218941471e-08, -1.227363567923654994e-08, -1.227174788702728643e-08, -1.226984028666531457e-08, -1.226791288928420746e-08, -1.226596570604708346e-08, -1.226399874814677159e-08, -1.226201202680559978e-08, -1.226000555327579360e-08, -1.225797933883885251e-08, -1.225593339480584439e-08, -1.225386773251734595e-08, -1.225178236334348412e-08, -1.224967729868364814e-08, -1.224755254996673777e-08, -1.224540812865110701e-08, -1.224324404622428452e-08, -1.224106031420317544e-08, -1.223885694413394066e-08, -1.223663394759200339e-08, -1.223439133618199625e-08, -1.223212912153771163e-08, -1.222984731532204875e-08, -1.222754592922721054e-08, -1.222522497497434130e-08, -1.222288446431358632e-08, -1.222052440902425393e-08, -1.221814482091451612e-08, -1.221574571182161368e-08, -1.221332709361153519e-08, -1.221088897817952334e-08, -1.220843137744931718e-08, -1.220595430337368647e-08, -1.220345776793410748e-08, -1.220094178314087708e-08, -1.219840636103301353e-08, -1.219585151367825311e-08, -1.219327725317287649e-08, -1.219068359164216362e-08, -1.218807054123959302e-08, -1.218543811414747047e-08, -1.218278632257649722e-08, -1.218011517876600984e-08, -1.217742469498375691e-08, -1.217471488352584274e-08, -1.217198575671708476e-08, -1.216923732691041625e-08, -1.216646960648717258e-08, -1.216368260785704321e-08, -1.216087634345798235e-08, -1.215805082575620900e-08, -1.215520606724612251e-08, -1.215234208045046974e-08, -1.214945887791998437e-08, -1.214655647223349940e-08, -1.214363487599814569e-08, -1.214069410184878284e-08, -1.213773416244866094e-08, -1.213475507048879192e-08, -1.213175683868804717e-08, -1.212873947979373155e-08, -1.212570300658038073e-08, -1.212264743185089110e-08, -1.211957276843568430e-08, -1.211647902919309766e-08, -1.211336622700929486e-08, -1.211023437479795329e-08, -1.210708348550077188e-08, -1.210391357208682760e-08, -1.210072464755293939e-08, -1.209751672492344981e-08, -1.209428981725038220e-08, -1.209104393761321897e-08, -1.208777909911892643e-08, -1.208449531490186878e-08, -1.208119259812413731e-08, -1.207787096197475135e-08, -1.207453041967062607e-08, -1.207117098445544585e-08, -1.206779266960064202e-08, -1.206439548840463681e-08, -1.206097945419304520e-08, -1.205754458031914308e-08, -1.205409088016277537e-08, -1.205061836713128416e-08, -1.204712705465885682e-08, -1.204361695620684370e-08, -1.204008808526388714e-08, -1.203654045534500333e-08, -1.203297407999289911e-08, -1.202938897277659894e-08, -1.202578514729236137e-08, -1.202216261716325219e-08, -1.201852139603893604e-08, -1.201486149759619419e-08, -1.201118293553816849e-08, -1.200748572359514224e-08, -1.200376987552384042e-08, -1.200003540510758348e-08, -1.199628232615669770e-08, -1.199251065250746793e-08, -1.198872039802328903e-08, -1.198491157659369147e-08, -1.198108420213471022e-08, -1.197723828858934968e-08, -1.197337384992630314e-08, -1.196949090014111088e-08, -1.196558945325527176e-08, -1.196166952331701085e-08, -1.195773112440070534e-08, -1.195377427060664140e-08, -1.194979897606168251e-08, -1.194580525491870364e-08, -1.194179312135681631e-08, -1.193776258958121138e-08, -1.193371367382282652e-08, -1.192964638833921479e-08, -1.192556074741333855e-08, -1.192145676535443145e-08, -1.191733445649771713e-08, -1.191319383520395101e-08, -1.190903491586030201e-08, -1.190485771287920283e-08, -1.190066224069920686e-08, -1.189644851378431324e-08, -1.189221654662452433e-08, -1.188796635373562408e-08, -1.188369794965865688e-08, -1.187941134896049995e-08, -1.187510656623338032e-08, -1.187078361609550674e-08, -1.186644251319029049e-08, -1.186208327218641159e-08, -1.185770590777843252e-08, -1.185331043468600416e-08, -1.184889686765432238e-08, -1.184446522145375581e-08, -1.184001551087983756e-08, -1.183554775075389059e-08, -1.183106195592178692e-08, -1.182655814125484595e-08, -1.182203632164998998e-08, -1.181749651202848193e-08, -1.181293872733724882e-08, -1.180836298254783953e-08, -1.180376929265714278e-08, -1.179915767268662616e-08, -1.179452813768318642e-08, -1.178988070271826609e-08, -1.178521538288824221e-08, -1.178053219331462654e-08, -1.177583114914290752e-08, -1.177111226554425916e-08, -1.176637555771413490e-08, -1.176162104087236850e-08, -1.175684873026421298e-08, -1.175205864115880372e-08, -1.174725078885013617e-08, -1.174242518865707086e-08, -1.173758185592225469e-08, -1.173272080601345275e-08, -1.172784205432232903e-08, -1.172294561626509659e-08, -1.171803150728298737e-08, -1.171309974284057306e-08, -1.170815033842730033e-08, -1.170318330955638404e-08, -1.169819867176586275e-08, -1.169319644061763588e-08, -1.168817663169754309e-08, -1.168313926061590034e-08, -1.167808434300666273e-08, -1.167301189452846017e-08, -1.166792193086324246e-08, -1.166281446771705185e-08, -1.165768952082057891e-08, -1.165254710592703669e-08, -1.164738723881475311e-08, -1.164220993528515261e-08, -1.163701521116358831e-08, -1.163180308229957695e-08, -1.162657356456553823e-08, -1.162132667385824570e-08, -1.161606242609740072e-08, -1.161078083722708660e-08, -1.160548192321451629e-08, -1.160016570005037483e-08, -1.159483218374903437e-08, -1.158948139034778330e-08, -1.158411333590819271e-08, -1.157872803651458282e-08, -1.157332550827441009e-08, -1.156790576731933759e-08, -1.156246882980300657e-08, -1.155701471190354946e-08, -1.155154342982132007e-08, -1.154605499978017075e-08, -1.154054943802745404e-08, -1.153502676083277366e-08, -1.152948698448949987e-08, -1.152393012531342946e-08, -1.151835619964357981e-08, -1.151276522384232792e-08, -1.150715721429400248e-08, -1.150153218740654820e-08, -1.149589015961003850e-08, -1.149023114735816120e-08, -1.148455516712672950e-08, -1.147886223541414527e-08, -1.147315236874242805e-08, -1.146742558365459616e-08, -1.146168189671774387e-08, -1.145592132452091548e-08, -1.145014388367526421e-08, -1.144434959081536239e-08, -1.143853846259732711e-08, -1.143271051569997660e-08, -1.142686576682510817e-08, -1.142100423269529956e-08, -1.141512593005720442e-08, -1.140923087567837762e-08, -1.140331908634936963e-08, -1.139739057888201595e-08, -1.139144537011156954e-08, -1.138548347689458826e-08, -1.137950491610939470e-08, -1.137350970465700933e-08, -1.136749785945967142e-08, -1.136146939746249347e-08, -1.135542433563186470e-08, -1.134936269095583984e-08, -1.134328448044525586e-08, -1.133718972113159611e-08, -1.133107843006855544e-08, -1.132495062433225685e-08, -1.131880632101885601e-08, -1.131264553724786650e-08, -1.130646829015925313e-08, -1.130027459691482158e-08, -1.129406447469858734e-08, -1.128783794071491287e-08, -1.128159501219045150e-08, -1.127533570637260889e-08, -1.126906004053089458e-08, -1.126276803195512874e-08, -1.125645969795769699e-08, -1.125013505587150900e-08, -1.124379412305025317e-08, -1.123743691687001469e-08, -1.123106345472670787e-08, -1.122467375403810284e-08, -1.121826783224300324e-08, -1.121184570680064409e-08, -1.120540739519237921e-08, -1.119895291491924767e-08, -1.119248228350368936e-08, -1.118599551848963762e-08, -1.117949263744075737e-08, -1.117297365794239226e-08, -1.116643859759975650e-08, -1.115988747403944524e-08, -1.115332030490909711e-08, -1.114673710787587056e-08, -1.114013790062842080e-08, -1.113352270087506348e-08, -1.112689152634579793e-08, -1.112024439479043119e-08, -1.111358132397899154e-08, -1.110690233170250935e-08, -1.110020743577148853e-08, -1.109349665401806040e-08, -1.108677000429335830e-08, -1.108002750446928443e-08, -1.107326917243842875e-08, -1.106649502611262809e-08, -1.105970508342467007e-08, -1.105289936232662890e-08, -1.104607788079099357e-08, -1.103924065681093260e-08, -1.103238770839839483e-08, -1.102551905358618892e-08, -1.101863471042598987e-08, -1.101173469699076597e-08, -1.100481903137241307e-08, -1.099788773168228723e-08, -1.099094081605233143e-08, -1.098397830263313822e-08, -1.097700020959610709e-08, -1.097000655513175033e-08, -1.096299735744957068e-08, -1.095597263478012424e-08, -1.094893240537125687e-08, -1.094187668749238564e-08, -1.093480549943140516e-08, -1.092771885949501685e-08, -1.092061678601081504e-08, -1.091349929732398985e-08, -1.090636641180044399e-08, -1.089921814782388773e-08, -1.089205452379858678e-08, -1.088487555814732411e-08, -1.087768126931159681e-08, -1.087047167575275102e-08, -1.086324679595005952e-08, -1.085600664840331911e-08, -1.084875125163029955e-08, -1.084148062416714231e-08, -1.083419478457069482e-08, -1.082689375141404539e-08, -1.081957754329142836e-08, -1.081224617881479960e-08, -1.080489967661432949e-08, -1.079753805534025086e-08, -1.079016133365994233e-08, -1.078276953025998137e-08, -1.077536266384649010e-08, -1.076794075314175043e-08, -1.076050381688901990e-08, -1.075305187384806660e-08, -1.074558494279852252e-08, -1.073810304253685609e-08, -1.073060619187941619e-08, -1.072309440966007306e-08, -1.071556771473012726e-08, -1.070802612596119327e-08, -1.070046966224008916e-08, -1.069289834247448124e-08, -1.068531218558894009e-08, -1.067771121052533098e-08, -1.067009543624529542e-08, -1.066246488172666119e-08, -1.065481956596587093e-08, -1.064715950797823695e-08, -1.063948472679442400e-08, -1.063179524146574329e-08, -1.062409107105910662e-08, -1.061637223465989016e-08, -1.060863875137194263e-08, -1.060089064031523289e-08, -1.059312792062850676e-08, -1.058535061146699580e-08, -1.057755873200424368e-08, -1.056975230143170254e-08, -1.056193133895686188e-08, -1.055409586380580790e-08, -1.054624589522076837e-08, -1.053838145246301941e-08, -1.053050255480919620e-08, -1.052260922155420140e-08, -1.051470147201095034e-08, -1.050677932550693162e-08, -1.049884280138962680e-08, -1.049089191902145963e-08, -1.048292669778272426e-08, -1.047494715707142646e-08, -1.046695331630080201e-08, -1.045894519490271648e-08, -1.045092281232441933e-08, -1.044288618803065822e-08, -1.043483534150378648e-08, -1.042677029224123369e-08, -1.041869105975852809e-08, -1.041059766358636845e-08, -1.040249012327398401e-08, -1.039436845838610044e-08, -1.038623268850344107e-08, -1.037808283322450367e-08, -1.036991891216267364e-08, -1.036174094494973783e-08, -1.035354895123199015e-08, -1.034534295067271154e-08, -1.033712296295261161e-08, -1.032888900776669364e-08, -1.032064110482769901e-08, -1.031237927386339065e-08, -1.030410353461812147e-08, -1.029581390685339511e-08, -1.028751041034478226e-08, -1.027919306488559332e-08, -1.027086189028349690e-08, -1.026251690636374911e-08, -1.025415813296676167e-08, -1.024578558994811514e-08, -1.023739929718041014e-08, -1.022899927455044007e-08, -1.022058554196272149e-08, -1.021215811933629625e-08, -1.020371702660513682e-08, -1.019526228372077341e-08, -1.018679391064821097e-08, -1.017831192736931904e-08, -1.016981635388122368e-08, -1.016130721019535785e-08, -1.015278451634082143e-08, -1.014424829235974076e-08, -1.013569855831114974e-08, -1.012713533426782671e-08, -1.011855864031959322e-08, -1.010996849657050166e-08, -1.010136492313919256e-08, -1.009274794016071110e-08, -1.008411756778355078e-08, -1.007547382617298857e-08, -1.006681673550848428e-08, -1.005814631598351514e-08, -1.004946258780844113e-08, -1.004076557120651961e-08, -1.003205528641703213e-08, -1.002333175369402866e-08, -1.001459499330496286e-08, -1.000584502553418270e-08, -9.997081870678610943e-09, -9.988305549050615490e-09, -9.979516080978105297e-09, -9.970713486801564123e-09, -9.961897786877776150e-09, -9.953069001576446118e-09, -9.944227151282470767e-09, -9.935372256395918987e-09, -9.926504337329439426e-09, -9.917623414511417020e-09, -9.908729508382942196e-09, -9.899822639401915347e-09, -9.890902828036861175e-09, -9.881970094773481611e-09, -9.873024460110430584e-09, -9.864065944559366954e-09, -9.855094568648188792e-09, -9.846110352916507046e-09, -9.837113317918768976e-09, -9.828103484224370649e-09, -9.819080872414525235e-09, -9.810045503085783486e-09, -9.800997396847280882e-09, -9.791936574322418458e-09, -9.782863056149144047e-09, -9.773776862977244093e-09, -9.764678015471667257e-09, -9.755566534309319927e-09, -9.746442440182336884e-09, -9.737305753795606379e-09, -9.728156495866555069e-09, -9.718994687127482316e-09, -9.709820348322125737e-09, -9.700633500210184226e-09, -9.691434163561939625e-09, -9.682222359162109732e-09, -9.672998107809671286e-09, -9.663761430313709172e-09, -9.654512347499712920e-09, -9.645250880203859234e-09, -9.635977049275988189e-09, -9.626690875580326184e-09, -9.617392379991609774e-09, -9.608081583399382048e-09, -9.598758506704157818e-09, -9.589423170821430484e-09, -9.580075596678240886e-09, -9.570715805213825815e-09, -9.561343817381406378e-09, -9.551959654145129083e-09, -9.542563336483725286e-09, -9.533154885387442354e-09, -9.523734321858075093e-09, -9.514301666912494503e-09, -9.504856941576379404e-09, -9.495400166890969538e-09, -9.485931363908825438e-09, -9.476450553693467785e-09, -9.466957757323165886e-09, -9.457452995885997758e-09, -9.447936290483947978e-09, -9.438407662229701530e-09, -9.428867132248700179e-09, -9.419314721679594111e-09, -9.409750451670865378e-09, -9.400174343384642860e-09, -9.390586417993330673e-09, -9.380986696683203098e-09, -9.371375200651408533e-09, -9.361751951105716375e-09, -9.352116969268671121e-09, -9.342470276370468687e-09, -9.332811893656556547e-09, -9.323141842382546570e-09, -9.313460143814641846e-09, -9.303766819233084374e-09, -9.294061889927008343e-09, -9.284345377198178992e-09, -9.274617302361192785e-09, -9.264877686738487859e-09, -9.255126551667672842e-09, -9.245363918494820074e-09, -9.235589808579073004e-09, -9.225804243288953656e-09, -9.216007244006268571e-09, -9.206198832123028394e-09, -9.196379029041479299e-09, -9.186547856176328113e-09, -9.176705334951560972e-09, -9.166851486804213614e-09, -9.156986333181209895e-09, -9.147109895539236055e-09, -9.137222195348244658e-09, -9.127323254086784328e-09, -9.117413093244823746e-09, -9.107491734324726066e-09, -9.097559198835849082e-09, -9.087615508302115583e-09, -9.077660684255192423e-09, -9.067694748238237652e-09, -9.057717721806282666e-09, -9.047729626522364319e-09, -9.037730483961859343e-09, -9.027720315709028391e-09, -9.017699143359232878e-09, -9.007666988519173212e-09, -8.997623872803542022e-09, -8.987569817839370159e-09, -8.977504845261624449e-09, -8.967428976718207165e-09, -8.957342233864463553e-09, -8.947244638367210199e-09, -8.937136211903328823e-09, -8.927016976158111917e-09, -8.916886952829349020e-09, -8.906746163622256095e-09, -8.896594630252843814e-09, -8.886432374448018472e-09, -8.876259417942260028e-09, -8.866075782481614084e-09, -8.855881489820295474e-09, -8.845676561722752912e-09, -8.835461019964429997e-09, -8.825234886327783165e-09, -8.814998182606760045e-09, -8.804750930602840572e-09, -8.794493152129174546e-09, -8.784224869007253057e-09, -8.773946103066941569e-09, -8.763656876149012752e-09, -8.753357210101740148e-09, -8.743047126784615525e-09, -8.732726648065294921e-09, -8.722395795819345530e-09, -8.712054591934151649e-09, -8.701703058303379184e-09, -8.691341216831564850e-09, -8.680969089430954682e-09, -8.670586698023067413e-09, -8.660194064539701976e-09, -8.649791210919097731e-09, -8.639378159110171285e-09, -8.628954931068719736e-09, -8.618521548761422568e-09, -8.608078034162686786e-09, -8.597624409254635337e-09, -8.587160696029411635e-09, -8.576686916485917155e-09, -8.566203092633803417e-09, -8.555709246489984583e-09, -8.545205400078668894e-09, -8.534691575435021428e-09, -8.524167794600043845e-09, -8.513634079624404243e-09, -8.503090452567059065e-09, -8.492536935493537534e-09, -8.481973550480365410e-09, -8.471400319609337596e-09, -8.460817264972284347e-09, -8.450224408667337384e-09, -8.439621772802632347e-09, -8.429009379493297861e-09, -8.418387250861505169e-09, -8.407755409038840481e-09, -8.397113876162799389e-09, -8.386462674380969084e-09, -8.375801825847458252e-09, -8.365131352723088976e-09, -8.354451277179317573e-09, -8.343761621390836290e-09, -8.333062407543980769e-09, -8.322353657830953017e-09, -8.311635394450264774e-09, -8.300907639610643462e-09, -8.290170415525587678e-09, -8.279423744416925731e-09, -8.268667648515146509e-09, -8.257902150055529930e-09, -8.247127271282646807e-09, -8.236343034446684506e-09, -8.225549461805673722e-09, -8.214746575626156837e-09, -8.203934398179174442e-09, -8.193112951744824757e-09, -8.182282258608190589e-09, -8.171442341064586973e-09, -8.160593221411721146e-09, -8.149734921958195973e-09, -8.138867465017827208e-09, -8.127990872910071977e-09, -8.117105167963858624e-09, -8.106210372512026405e-09, -8.095306508895252936e-09, -8.084393599462469445e-09, -8.073471666565088699e-09, -8.062540732565483609e-09, -8.051600819829416873e-09, -8.040651950730180184e-09, -8.029694147648748093e-09, -8.018727432969933266e-09, -8.007751829086954178e-09, -7.996767358397302521e-09, -7.985774043307123950e-09, -7.974771906227447794e-09, -7.963760969574855418e-09, -7.952741255773463802e-09, -7.941712787251456347e-09, -7.930675586446014525e-09, -7.919629675797330745e-09, -7.908575077752774033e-09, -7.897511814767260613e-09, -7.886439909297591027e-09, -7.875359383810784805e-09, -7.864270260776296697e-09, -7.853172562670667082e-09, -7.842066311977305247e-09, -7.830951531182790235e-09, -7.819828242781387251e-09, -7.808696469271396489e-09, -7.797556233157262437e-09, -7.786407556950306766e-09, -7.775250463164759512e-09, -7.764084974322354894e-09, -7.752911112948031629e-09, -7.741728901574624699e-09, -7.730538362738954445e-09, -7.719339518981940713e-09, -7.708132392852904194e-09, -7.696917006901709866e-09, -7.685693383687667455e-09, -7.674461545773307728e-09, -7.663221515725039275e-09, -7.651973316117157025e-09, -7.640716969526035439e-09, -7.629452498534962555e-09, -7.618179925730449107e-09, -7.606899273704657124e-09, -7.595610565055820143e-09, -7.584313822384312444e-09, -7.573009068297428501e-09, -7.561696325404841757e-09, -7.550375616323607417e-09, -7.539046963673899156e-09, -7.527710390079642741e-09, -7.516365918170959519e-09, -7.505013570580212501e-09, -7.493653369946835434e-09, -7.482285338913274659e-09, -7.470909500125136346e-09, -7.459525876235175160e-09, -7.448134489897413007e-09, -7.436735363771408112e-09, -7.425328520522609882e-09, -7.413913982816172418e-09, -7.402491773326113065e-09, -7.391061914727192798e-09, -7.379624429699271339e-09, -7.368179340927520560e-09, -7.356726671098395292e-09, -7.345266442904473983e-09, -7.333798679040358365e-09, -7.322323402206178219e-09, -7.310840635103565485e-09, -7.299350400440737289e-09, -7.287852720928023373e-09, -7.276347619278077862e-09, -7.264835118210288126e-09, -7.253315240444482425e-09, -7.241788008705725072e-09, -7.230253445722533031e-09, -7.218711574225199224e-09, -7.207162416950324652e-09, -7.195605996634791555e-09, -7.184042336020164847e-09, -7.172471457852562240e-09, -7.160893384878600238e-09, -7.149308139850342330e-09, -7.137715745521149848e-09, -7.126116224648521686e-09, -7.114509599994149712e-09, -7.102895894320122845e-09, -7.091275130393767708e-09, -7.079647330983056954e-09, -7.068012518861954506e-09, -7.056370716804185228e-09, -7.044721947588111991e-09, -7.033066233994748775e-09, -7.021403598806093082e-09, -7.009734064809982304e-09, -6.998057654793666541e-09, -6.986374391548406059e-09, -6.974684297869333988e-09, -6.962987396551518107e-09, -6.951283710394586444e-09, -6.939573262198844488e-09, -6.927856074767938709e-09, -6.916132170909193223e-09, -6.904401573429532618e-09, -6.892664305140430975e-09, -6.880920388853207692e-09, -6.869169847384320614e-09, -6.857412703550853760e-09, -6.845648980171107105e-09, -6.833878700067242732e-09, -6.822101886061253977e-09, -6.810318560979786241e-09, -6.798528747650012665e-09, -6.786732468899828521e-09, -6.774929747562034260e-09, -6.763120606468035706e-09, -6.751305068453370452e-09, -6.739483156353475175e-09, -6.727654893006373144e-09, -6.715820301253180457e-09, -6.703979403933769134e-09, -6.692132223892058586e-09, -6.680278783971024416e-09, -6.668419107018016353e-09, -6.656553215880399019e-09, -6.644681133406062294e-09, -6.632802882446115446e-09, -6.620918485850578343e-09, -6.609027966473758962e-09, -6.597131347169696443e-09, -6.585228650792209070e-09, -6.573319900200110471e-09, -6.561405118248144543e-09, -6.549484327796823945e-09, -6.537557551705799409e-09, -6.525624812834511566e-09, -6.513686134046450924e-09, -6.501741538202840686e-09, -6.489791048168123444e-09, -6.477834686805179245e-09, -6.465872476980665871e-09, -6.453904441560457763e-09, -6.441930603410194443e-09, -6.429950985398303031e-09, -6.417965610391254365e-09, -6.405974501259093532e-09, -6.393977680870973089e-09, -6.381975172095123288e-09, -6.369966997804084819e-09, -6.357953180865576735e-09, -6.345933744152602121e-09, -6.333908710536508044e-09, -6.321878102887565411e-09, -6.309841944079621029e-09, -6.297800256983536411e-09, -6.285753064471698393e-09, -6.273700389418618834e-09, -6.261642254694104592e-09, -6.249578683173440116e-09, -6.237509697727999771e-09, -6.225435321230628648e-09, -6.213355576555549096e-09, -6.201270486574058552e-09, -6.189180074159747397e-09, -6.177084362184046246e-09, -6.164983373520294017e-09, -6.152877131038988263e-09, -6.140765657613353754e-09, -6.128648976114808693e-09, -6.116527109412932466e-09, -6.104400080380401419e-09, -6.092267911885899925e-09, -6.080130626799280338e-09, -6.067988247991704436e-09, -6.055840798328915968e-09, -6.043688300681460462e-09, -6.031530777915300042e-09, -6.019368252897239726e-09, -6.007200748494792600e-09, -5.995028287571732895e-09, -5.982850892993638093e-09, -5.970668587623174829e-09, -5.958481394323122235e-09, -5.946289335956845912e-09, -5.934092435383790628e-09, -5.921890715464885110e-09, -5.909684199057512790e-09, -5.897472909021018347e-09, -5.885256868212135048e-09, -5.873036099485396688e-09, -5.860810625696152662e-09, -5.848580469696088783e-09, -5.836345654339011753e-09, -5.824106202474019137e-09, -5.811862136950244894e-09, -5.799613480617099264e-09, -5.787360256319409075e-09, -5.775102486903105446e-09, -5.762840195210602320e-09, -5.750573404083718899e-09, -5.738302136364261151e-09, -5.726026414889313494e-09, -5.713746262496924015e-09, -5.701461702020865103e-09, -5.689172756296120138e-09, -5.676879448154459732e-09, -5.664581800424786662e-09, -5.652279835936170794e-09, -5.639973577513218530e-09, -5.627663047981737335e-09, -5.615348270163905009e-09, -5.603029266878449178e-09, -5.590706060945531802e-09, -5.578378675179662714e-09, -5.566047132395827378e-09, -5.553711455404707434e-09, -5.541371667015850462e-09, -5.529027790038075291e-09, -5.516679847274814153e-09, -5.504327861529739989e-09, -5.491971855601608150e-09, -5.479611852289801819e-09, -5.467247874389718821e-09, -5.454879944693262144e-09, -5.442508085991897197e-09, -5.430132321071932746e-09, -5.417752672720072120e-09, -5.405369163718932379e-09, -5.392981816846872254e-09, -5.380590654883104954e-09, -5.368195700600540575e-09, -5.355796976771209090e-09, -5.343394506164546432e-09, -5.330988311544832722e-09, -5.318578415677135553e-09, -5.306164841319897629e-09, -5.293747611230228242e-09, -5.281326748163597207e-09, -5.268902274869382985e-09, -5.256474214096524803e-09, -5.244042588588619954e-09, -5.231607421088191225e-09, -5.219168734331958732e-09, -5.206726551056463091e-09, -5.194280893993376132e-09, -5.181831785869511656e-09, -5.169379249412443642e-09, -5.156923307340662797e-09, -5.144463982374278622e-09, -5.132001297227909795e-09, -5.119535274611092791e-09, -5.107065937233375672e-09, -5.094593307797097615e-09, -5.082117409002480218e-09, -5.069638263547668029e-09, -5.057155894123939168e-09, -5.044670323421349182e-09, -5.032181574124169973e-09, -5.019689668913803951e-09, -5.007194630469331631e-09, -4.994696481462801667e-09, -4.982195244565000434e-09, -4.969690942440017453e-09, -4.957183597752074593e-09, -4.944673233155661945e-09, -4.932159871306313501e-09, -4.919643534853339545e-09, -4.907124246440359360e-09, -4.894602028710290780e-09, -4.882076904298348931e-09, -4.869548895836840574e-09, -4.857018025955863070e-09, -4.844484317275972251e-09, -4.831947792418999462e-09, -4.819408473998175853e-09, -4.806866384623784498e-09, -4.794321546903211689e-09, -4.781773983436107094e-09, -4.769223716820104545e-09, -4.756670769645653809e-09, -4.744115164501581723e-09, -4.731556923970498038e-09, -4.718996070629150274e-09, -4.706432627051715899e-09, -4.693866615804799546e-09, -4.681298059453334115e-09, -4.668726980555751692e-09, -4.656153401664032355e-09, -4.643577345329274408e-09, -4.630998834091920415e-09, -4.618417890492962185e-09, -4.605834537064322323e-09, -4.593248796334192845e-09, -4.580660690827226265e-09, -4.568070243059737941e-09, -4.555477475545426033e-09, -4.542882410790594533e-09, -4.530285071297275872e-09, -4.517685479563782649e-09, -4.505083658079825615e-09, -4.492479629332365970e-09, -4.479873415800200640e-09, -4.467265039959868353e-09, -4.454654524280690680e-09, -4.442041891224960643e-09, -4.429427163253382248e-09, -4.416810362815480155e-09, -4.404191512360153676e-09, -4.391570634328512563e-09, -4.378947751154378280e-09, -4.366322885269395151e-09, -4.353696059095737109e-09, -4.341067295051220501e-09, -4.328436615549976582e-09, -4.315804042994818297e-09, -4.303169599788398117e-09, -4.290533308323140424e-09, -4.277895190988049209e-09, -4.265255270163390954e-09, -4.252613568226437748e-09, -4.239970107546799505e-09, -4.227324910486740774e-09, -4.214677999404455551e-09, -4.202029396649150513e-09, -4.189379124566947781e-09, -4.176727205496015306e-09, -4.164073661766539574e-09, -4.151418515705956698e-09, -4.138761789631638479e-09, -4.126103505855960553e-09, -4.113443686686870654e-09, -4.100782354420521749e-09, -4.088119531352217291e-09, -4.075455239766425494e-09, -4.062789501942462891e-09, -4.050122340154622546e-09, -4.037453776667212628e-09, -4.024783833740342536e-09, -4.012112533625268355e-09, -3.999439898568459274e-09, -3.986765950806833032e-09, -3.974090712573575124e-09, -3.961414206093250173e-09, -3.948736453581957432e-09, -3.936057477252328616e-09, -3.923377299306278484e-09, -3.910695941940689233e-09, -3.898013427345307797e-09, -3.885329777700595180e-09, -3.872645015183440623e-09, -3.859959161959856766e-09, -3.847272240190076740e-09, -3.834584272028596350e-09, -3.821895279619399591e-09, -3.809205285101677772e-09, -3.796514310605104665e-09, -3.783822378252866460e-09, -3.771129510162344197e-09, -3.758435728440113454e-09, -3.745741055187830567e-09, -3.733045512496869188e-09, -3.720349122454166387e-09, -3.707651907137340218e-09, -3.694953888615261712e-09, -3.682255088951093941e-09, -3.669555530197661460e-09, -3.656855234403611563e-09, -3.644154223605961382e-09, -3.631452519835493177e-09, -3.618750145116619918e-09, -3.606047121462570677e-09, -3.593343470881225152e-09, -3.580639215370352822e-09, -3.567934376920624307e-09, -3.555228977516265245e-09, -3.542523039130071295e-09, -3.529816583729391957e-09, -3.517109633270662084e-09, -3.504402209705213238e-09, -3.491694334974603841e-09, -3.478986031010879326e-09, -3.466277319739905259e-09, -3.453568223076505584e-09, -3.440858762930206157e-09, -3.428148961200535525e-09, -3.415438839776885140e-09, -3.402728420543810339e-09, -3.390017725373665548e-09, -3.377306776132756847e-09, -3.364595594676648548e-09, -3.351884202853315584e-09, -3.339172622503612926e-09, -3.326460875456422523e-09, -3.313748983534517594e-09, -3.301036968549235586e-09, -3.288324852306210121e-09, -3.275612656600630015e-09, -3.262900403217630939e-09, -3.250188113935599602e-09, -3.237475810521228031e-09, -3.224763514735386971e-09, -3.212051248328279431e-09, -3.199339033039457230e-09, -3.186626890603573621e-09, -3.173914842740250748e-09, -3.161202911165274702e-09, -3.148491117583028478e-09, -3.135779483687055693e-09, -3.123068031165305332e-09, -3.110356781692720617e-09, -3.097645756936413437e-09, -3.084934978555737554e-09, -3.072224468197354887e-09, -3.059514247501176731e-09, -3.046804338095431283e-09, -3.034094761600944301e-09, -3.021385539626367926e-09, -3.008676693773884092e-09, -2.995968245634432934e-09, -2.983260216787686735e-09, -2.970552628807891884e-09, -2.957845503253637483e-09, -2.945138861679131474e-09, -2.932432725626583953e-09, -2.919727116626800268e-09, -2.907022056204414584e-09, -2.894317565870415067e-09, -2.881613667127446941e-09, -2.868910381470318304e-09, -2.856207730378455007e-09, -2.843505735327116805e-09, -2.830804417777251986e-09, -2.818103799181250415e-09, -2.805403900982984478e-09, -2.792704744612896044e-09, -2.780006351493914525e-09, -2.767308743036047947e-09, -2.754611940642201750e-09, -2.741915965703384033e-09, -2.729220839599207656e-09, -2.716526583700990514e-09, -2.703833219366964914e-09, -2.691140767948705189e-09, -2.678449250783509776e-09, -2.665758689199766307e-09, -2.653069104517471494e-09, -2.640380518040712473e-09, -2.627692951068791137e-09, -2.615006424886110617e-09, -2.602320960767987879e-09, -2.589636579980643383e-09, -2.576953303776307897e-09, -2.564271153399127740e-09, -2.551590150080320811e-09, -2.538910315041268176e-09, -2.526231669494125358e-09, -2.513554234636898954e-09, -2.500878031659339471e-09, -2.488203081737507166e-09, -2.475529406039707060e-09, -2.462857025721569289e-09, -2.450185961926065229e-09, -2.437516235789323818e-09, -2.424847868430410912e-09, -2.412180880963160036e-09, -2.399515294485869025e-09, -2.386851130087230902e-09, -2.374188408846266057e-09, -2.361527151827484061e-09, -2.348867380086717364e-09, -2.336209114666290141e-09, -2.323552376598198802e-09, -2.310897186904623607e-09, -2.298243566593031754e-09, -2.285591536662113228e-09, -2.272941118096285423e-09, -2.260292331871703444e-09, -2.247645198951255244e-09, -2.234999740285138582e-09, -2.222355976814054775e-09, -2.209713929464291515e-09, -2.197073619153674436e-09, -2.184435066786640842e-09, -2.171798293254249629e-09, -2.159163319439482689e-09, -2.146530166209691924e-09, -2.133898854421984190e-09, -2.121269404923715536e-09, -2.108641838544853021e-09, -2.096016176109349690e-09, -2.083392438424866021e-09, -2.070770646289669446e-09, -2.058150820487248986e-09, -2.045532981792256479e-09, -2.032917150965581544e-09, -2.020303348754853270e-09, -2.007691595897660013e-09, -1.995081913116637184e-09, -1.982474321125471342e-09, -1.969868840623860181e-09, -1.957265492297574154e-09, -1.944664296823824463e-09, -1.932065274863619084e-09, -1.919468447067727977e-09, -1.906873834074461279e-09, -1.894281456507509128e-09, -1.881691334981800987e-09, -1.869103490095936535e-09, -1.856517942437578057e-09, -1.843934712583402464e-09, -1.831353821094180190e-09, -1.818775288520736478e-09, -1.806199135399013524e-09, -1.793625382254435300e-09, -1.781054049596881609e-09, -1.768485157926757934e-09, -1.755918727729973208e-09, -1.743354779477966911e-09, -1.730793333633103523e-09, -1.718234410641007041e-09, -1.705678030936560732e-09, -1.693124214941636722e-09, -1.680572983062943471e-09, -1.668024355697949004e-09, -1.655478353227240245e-09, -1.642934996019941873e-09, -1.630394304433666905e-09, -1.617856298809639840e-09, -1.605320999478578949e-09, -1.592788426755813223e-09, -1.580258600944502998e-09, -1.567731542336159632e-09, -1.555207271205728743e-09, -1.542685807817521924e-09, -1.530167172419736462e-09, -1.517651385250493961e-09, -1.505138466532785240e-09, -1.492628436475071897e-09, -1.480121315274505489e-09, -1.467617123111986989e-09, -1.455115880158663050e-09, -1.442617606568284097e-09, -1.430122322482662476e-09, -1.417630048031545692e-09, -1.405140803327772850e-09, -1.392654608473191271e-09, -1.380171483553732498e-09, -1.367691448642660831e-09, -1.355214523801083295e-09, -1.342740729073000404e-09, -1.330270084491322454e-09, -1.317802610072323279e-09, -1.305338325821631933e-09, -1.292877251729309722e-09, -1.280419407770367816e-09, -1.267964813907982085e-09, -1.255513490088579645e-09, -1.243065456247818961e-09, -1.230620732305599468e-09, -1.218179338166094448e-09, -1.205741293723679644e-09, -1.193306618852568271e-09, -1.180875333418213081e-09, -1.168447457269645222e-09, -1.156023010240026383e-09, -1.143602012152005821e-09, -1.131184482810121673e-09, -1.118770442007270131e-09, -1.106359909519262176e-09, -1.093952905110748676e-09, -1.081549448530323270e-09, -1.069149559511016812e-09, -1.056753257773557293e-09, -1.044360563021413996e-09, -1.031971494946772629e-09, -1.019586073225602855e-09, -1.007204317517644225e-09, -9.948262474723354093e-10, -9.824518827184669965e-10, -9.700812428755889333e-10, -9.577143475463371843e-10, -9.453512163169662291e-10, -9.329918687627567558e-10, -9.206363244403760275e-10, -9.082846028932857824e-10, -8.959367236522495025e-10, -8.835927062277019821e-10, -8.712525701211458094e-10, -8.589163348147779008e-10, -8.465840197785258093e-10, -8.342556444646063240e-10, -8.219312283134488068e-10, -8.096107907487980765e-10, -7.972943511776730495e-10, -7.849819289963239918e-10, -7.726735435798782850e-10, -7.603692142937147803e-10, -7.480689604858377106e-10, -7.357728014874002954e-10, -7.234807566180825522e-10, -7.111928451784872323e-10, -6.989090864555437913e-10, -6.866294997229789517e-10, -6.743541042337588568e-10, -6.620829192313924944e-10, -6.498159639396396044e-10, -6.375532575684340169e-10, -6.252948193138471520e-10, -6.130406683531985555e-10, -6.007908238509864738e-10, -5.885453049539751247e-10, -5.763041307944232869e-10, -5.640673204905885696e-10, -5.518348931418549057e-10, -5.396068678346254893e-10, -5.273832636369040191e-10, -5.151640996047645953e-10, -5.029493947747314209e-10, -4.907391681691771901e-10, -4.785334387968238417e-10, -4.663322256451650687e-10, -4.541355476917674658e-10, -4.419434238939963264e-10, -4.297558731949163870e-10, -4.175729145232763692e-10, -4.053945667886183259e-10, -3.932208488871813331e-10, -3.810517796970291373e-10, -3.688873780812579620e-10, -3.567276628885025872e-10, -3.445726529480624979e-10, -3.324223670758092456e-10, -3.202768240687604546e-10, -3.081360427109854255e-10, -2.960000417687315425e-10, -2.838688399909346437e-10, -2.717424561124217093e-10, -2.596209088490452304e-10, -2.475042169035739756e-10, -2.353923989608224995e-10, -2.232854736876233810e-10, -2.111834597381854148e-10, -1.990863757465351449e-10, -1.869942403329426881e-10, -1.749070720990597475e-10, -1.628248896311143130e-10, -1.507477115004299240e-10, -1.386755562585533948e-10, -1.266084424431462273e-10, -1.145463885725843755e-10, -1.024894131518415288e-10, -9.043753466762792660e-11, -7.839077158890424422e-11, -6.634914237007672026e-11, -5.431266544613862078e-11, -4.228135923854983260e-11, -3.025524215038002069e-11, -1.823433256628719572e-11, -6.218648857850556427e-12, 5.791790623958106100e-12, 1.779696754290428481e-11, 2.979686357966085212e-11, 4.179146043397442898e-11, 5.378073981880053698e-11, 6.576468346782521391e-11, 7.774327312906543395e-11, 8.971649057024681569e-11, 1.016843175729414254e-10, 1.136467359374131038e-10, 1.256037274820995217e-10, 1.375552740404347727e-10, 1.495013574656822401e-10, 1.614419596250830313e-10, 1.733770624046889352e-10, 1.853066477093853767e-10, 1.972306974570473339e-10, 2.091491935887012001e-10, 2.210621180573428274e-10, 2.329694528354367974e-10, 2.448711799144016307e-10, 2.567672812993062152e-10, 2.686577390163550664e-10, 2.805425351075831793e-10, 2.924216516308865301e-10, 3.042950706648322351e-10, 3.161627743028273412e-10, 3.280247446579392204e-10, 3.398809638597190418e-10, 3.517314140537021021e-10, 3.635760774062100750e-10, 3.754149360985416179e-10, 3.872479723322918156e-10, 3.990751683224808942e-10, 4.108965063076701230e-10, 4.227119685388315308e-10, 4.345215372868036464e-10, 4.463251948417910031e-10, 4.581229235080672354e-10, 4.699147056114539293e-10, 4.817005234940048499e-10, 4.934803595135254522e-10, 5.052541960510085114e-10, 5.170220154995302572e-10, 5.287838002743391853e-10, 5.405395328070520413e-10, 5.522891955456898034e-10, 5.640327709594473087e-10, 5.757702415329022654e-10, 5.875015897713371260e-10, 5.992267981949292809e-10, 6.109458493435519114e-10, 6.226587257762455243e-10, 6.343654100681056854e-10, 6.460658848150169737e-10, 6.577601326273719922e-10, 6.694481361374695684e-10, 6.811298779942700150e-10, 6.928053408628797969e-10, 7.044745074319719611e-10, 7.161373604027149454e-10, 7.277938824988506360e-10, 7.394440564608683280e-10, 7.510878650460689353e-10, 7.627252910333058730e-10, 7.743563172172293276e-10, 7.859809264130339637e-10, 7.975991014533289760e-10, 8.092108251876522238e-10, 8.208160804871951906e-10, 8.324148502390582144e-10, 8.440071173515299676e-10, 8.555928647483343134e-10, 8.671720753733610540e-10, 8.787447321907173202e-10, 8.903108181789344112e-10, 9.018703163410233128e-10, 9.134232096934151892e-10, 9.249694812733576179e-10, 9.365091141384140428e-10, 9.480420913612332005e-10, 9.595683960369201269e-10, 9.710880112767487573e-10, 9.826009202129450983e-10, 9.941071059955021689e-10, 1.005606551791734150e-09, 1.017099240790970842e-09, 1.028585156198854046e-09, 1.040064281242563485e-09, 1.051536599165096025e-09, 1.063002093230031470e-09, 1.074460746720944239e-09, 1.085912542938375667e-09, 1.097357465204506966e-09, 1.108795496857454774e-09, 1.120226621255993736e-09, 1.131650821779561678e-09, 1.143068081823078558e-09, 1.154478384804280454e-09, 1.165881714158493239e-09, 1.177278053338160041e-09, 1.188667385820142779e-09, 1.200049695094816398e-09, 1.211424964675973740e-09, 1.222793178095125031e-09, 1.234154318901532204e-09, 1.245508370666884539e-09, 1.256855316979619246e-09, 1.268195141449605161e-09, 1.279527827704030215e-09, 1.290853359392068179e-09, 1.302171720179221369e-09, 1.313482893751969196e-09, 1.324786863817853363e-09, 1.336083614100240985e-09, 1.347373128345637075e-09, 1.358655390318026626e-09, 1.369930383800910301e-09, 1.381198092599455315e-09, 1.392458500534780853e-09, 1.403711591451259801e-09, 1.414957349211323017e-09, 1.426195757695509586e-09, 1.437426800807132114e-09, 1.448650462466607028e-09, 1.459866726616131042e-09, 1.471075577216594943e-09, 1.482276998247130506e-09, 1.493470973709686250e-09, 1.504657487623457408e-09, 1.515836524030006798e-09, 1.527008066987148648e-09, 1.538172100576131215e-09, 1.549328608896028703e-09, 1.560477576065806322e-09, 1.571618986226401059e-09, 1.582752823535088168e-09, 1.593879072172676189e-09, 1.604997716338406971e-09, 1.616108740249989374e-09, 1.627212128148197985e-09, 1.638307864291276204e-09, 1.649395932959613537e-09, 1.660476318452571291e-09, 1.671549005088117995e-09, 1.682613977207374963e-09, 1.693671219169036340e-09, 1.704720715354503826e-09, 1.715762450162273018e-09, 1.726796408012545763e-09, 1.737822573346801890e-09, 1.748840930624632761e-09, 1.759851464328460957e-09, 1.770854158957909865e-09, 1.781848999034396601e-09, 1.792835969101176470e-09, 1.803815053718238639e-09, 1.814786237469516881e-09, 1.825749504956721698e-09, 1.836704840803976674e-09, 1.847652229654774653e-09, 1.858591656171516380e-09, 1.869523105040057927e-09, 1.880446560964162171e-09, 1.891362008670652545e-09, 1.902269432903716658e-09, 1.913168818429620807e-09, 1.924060150036146674e-09, 1.934943412529587828e-09, 1.945818590739326931e-09, 1.956685669512319682e-09, 1.967544633717568626e-09, 1.978395468246291484e-09, 1.989238158006245454e-09, 2.000072687931382061e-09, 2.010899042971305157e-09, 2.021717208098301539e-09, 2.032527168306876904e-09, 2.043328908608733618e-09, 2.054122414039872066e-09, 2.064907669654481507e-09, 2.075684660530066527e-09, 2.086453371761902858e-09, 2.097213788467586463e-09, 2.107965895786555007e-09, 2.118709678877078163e-09, 2.129445122920763678e-09, 2.140172213117163328e-09, 2.150890934688195025e-09, 2.161601272878158535e-09, 2.172303212948344326e-09, 2.182996740186455572e-09, 2.193681839896175334e-09, 2.204358497404151690e-09, 2.215026698059595722e-09, 2.225686427229189393e-09, 2.236337670304142643e-09, 2.246980412695244772e-09, 2.257614639832352011e-09, 2.268240337171382567e-09, 2.278857490183890432e-09, 2.289466084366566374e-09, 2.300066105235686316e-09, 2.310657538327222180e-09, 2.321240369201304110e-09, 2.331814583436759015e-09, 2.342380166636088125e-09, 2.352937104419078677e-09, 2.363485382432150231e-09, 2.374024986338105897e-09, 2.384555901822952028e-09, 2.395078114595466436e-09, 2.405591610382276246e-09, 2.416096374934783057e-09, 2.426592394024260242e-09, 2.437079653441337201e-09, 2.447558139002979935e-09, 2.458027836542093804e-09, 2.468488731916916159e-09, 2.478940811005636364e-09, 2.489384059706421019e-09, 2.499818463941816219e-09, 2.510244009653374188e-09, 2.520660682806076627e-09, 2.531068469385495005e-09, 2.541467355397177200e-09, 2.551857326871146125e-09, 2.562238369856530912e-09, 2.572610470426475812e-09, 2.582973614672766004e-09, 2.593327788710206281e-09, 2.603672978676747184e-09, 2.614009170728014041e-09, 2.624336351046631766e-09, 2.634654505831520317e-09, 2.644963621307166980e-09, 2.655263683718296427e-09, 2.665554679329846315e-09, 2.675836594431436957e-09, 2.686109415331932610e-09, 2.696373128363935959e-09, 2.706627719880772220e-09, 2.716873176256159504e-09, 2.727109483888476658e-09, 2.737336629195487508e-09, 2.747554598619171177e-09, 2.757763378620534839e-09, 2.767962955683795941e-09, 2.778153316316019072e-09, 2.788334447044225796e-09, 2.798506334419756372e-09, 2.808668965012956359e-09, 2.818822325417508566e-09, 2.828966402250551748e-09, 2.839101182147763016e-09, 2.849226651770140724e-09, 2.859342797798295262e-09, 2.869449606936733441e-09, 2.879547065911005135e-09, 2.889635161467259494e-09, 2.899713880376542567e-09, 2.909783209429627417e-09, 2.919843135441651713e-09, 2.929893645247011957e-09, 2.939934725703637525e-09, 2.949966363692519176e-09, 2.959988546114840800e-09, 2.970001259896296893e-09, 2.980004491981966098e-09, 2.989998229340430983e-09, 2.999982458963887227e-09, 3.009957167863417524e-09, 3.019922343075640874e-09, 3.029877971657488939e-09, 3.039824040688086635e-09, 3.049760537270790722e-09, 3.059687448527841251e-09, 3.069604761607062558e-09, 3.079512463677175627e-09, 3.089410541927772450e-09, 3.099298983573576836e-09, 3.109177775849294381e-09, 3.119046906013847219e-09, 3.128906361346687696e-09, 3.138756129151900767e-09, 3.148596196753165231e-09, 3.158426551497981859e-09, 3.168247180757646926e-09, 3.178058071922583192e-09, 3.187859212408911025e-09, 3.197650589653415002e-09, 3.207432191115235499e-09, 3.217204004277903968e-09, 3.226966016644149479e-09, 3.236718215742458268e-09, 3.246460589122429941e-09, 3.256193124354777476e-09, 3.265915809035619051e-09, 3.275628630781170021e-09, 3.285331577232172476e-09, 3.295024636050929381e-09, 3.304707794920971222e-09, 3.314381041551219625e-09, 3.324044363670874132e-09, 3.333697749034027872e-09, 3.343341185413797475e-09, 3.352974660610973726e-09, 3.362598162444370432e-09, 3.372211678757354606e-09, 3.381815197417341052e-09, 3.391408706311193661e-09, 3.400992193351699336e-09, 3.410565646473074335e-09, 3.420129053630769881e-09, 3.429682402805798736e-09, 3.439225681999609984e-09, 3.448758879238242306e-09, 3.458281982569601733e-09, 3.467794980063022406e-09, 3.477297859813334242e-09, 3.486790609935997045e-09, 3.496273218571484556e-09, 3.505745673880370595e-09, 3.515207964047459582e-09, 3.524660077281342343e-09, 3.534102001811621746e-09, 3.543533725893059358e-09, 3.552955237800642964e-09, 3.562366525833530157e-09, 3.571767578315193913e-09, 3.581158383588416502e-09, 3.590538930023871068e-09, 3.599909206010219454e-09, 3.609269199962661522e-09, 3.618618900318081263e-09, 3.627958295534902450e-09, 3.637287374097302709e-09, 3.646606124510168136e-09, 3.655914535303681248e-09, 3.665212595028319440e-09, 3.674500292258918508e-09, 3.683777615594303727e-09, 3.693044553654565941e-09, 3.702301095085045688e-09, 3.711547228551506592e-09, 3.720782942744111209e-09, 3.730008226377498785e-09, 3.739223068185803559e-09, 3.748427456931164381e-09, 3.757621381394465256e-09, 3.766804830381451102e-09, 3.775977792722335667e-09, 3.785140257267410853e-09, 3.794292212893210868e-09, 3.803433648498152156e-09, 3.812564553002028816e-09, 3.821684915352238791e-09, 3.830794724514599684e-09, 3.839893969481626348e-09, 3.848982639266827485e-09, 3.858060722909203846e-09, 3.867128209468305830e-09, 3.876185088028300733e-09, 3.885231347697891680e-09, 3.894266977605589464e-09, 3.903291966908025711e-09, 3.912306304780658676e-09, 3.921309980424049892e-09, 3.930302983063403431e-09, 3.939285301944132211e-09, 3.948256926338054414e-09, 3.957217845539076423e-09, 3.966168048862623725e-09, 3.975107525651888606e-09, 3.984036265268569864e-09, 3.992954257101325768e-09, 4.001861490560801874e-09, 4.010757955079760893e-09, 4.019643640116971269e-09, 4.028518535152490591e-09, 4.037382629691477246e-09, 4.046235913260770850e-09, 4.055078375412857755e-09, 4.063910005721045277e-09, 4.072730793783361850e-09, 4.081540729222649674e-09, 4.090339801682202987e-09, 4.099128000831764302e-09, 4.107905316363309092e-09, 4.116671737990551964e-09, 4.125427255455056214e-09, 4.134171858517125741e-09, 4.142905536964058660e-09, 4.151628280605330621e-09, 4.160340079272793338e-09, 4.169040922824312530e-09, 4.177730801139146459e-09, 4.186409704121922189e-09, 4.195077621699895139e-09, 4.203734543822647986e-09, 4.212380460465889904e-09, 4.221015361626864065e-09, 4.229639237328477742e-09, 4.238252077614680031e-09, 4.246853872554362005e-09, 4.255444612240843034e-09, 4.264024286789411577e-09, 4.272592886341052462e-09, 4.281150401057559068e-09, 4.289696821127235089e-09, 4.298232136760759453e-09, 4.306756338191309575e-09, 4.315269415678164551e-09, 4.323771359502287193e-09, 4.332262159969918952e-09, 4.340741807410164548e-09, 4.349210292174691711e-09, 4.357667604641266543e-09, 4.366113735209335552e-09, 4.374548674304140872e-09, 4.382972412372171599e-09, 4.391384939884885276e-09, 4.399786247338322427e-09, 4.408176325250663063e-09, 4.416555164165888614e-09, 4.424922754649215064e-09, 4.433279087290945958e-09, 4.441624152706364039e-09, 4.449957941531656561e-09, 4.458280444429700587e-09, 4.466591652085075089e-09, 4.474891555207925538e-09, 4.483180144531237518e-09, 4.491457410810693620e-09, 4.499723344828182344e-09, 4.507977937387468636e-09, 4.516221179318103970e-09, 4.524453061471084479e-09, 4.532673574722514535e-09, 4.540882709973106305e-09, 4.549080458145837178e-09, 4.557266810189583569e-09, 4.565441757074658276e-09, 4.573605289796450906e-09, 4.581757399375478332e-09, 4.589898076852933632e-09, 4.598027313298345783e-09, 4.606145099801047295e-09, 4.614251427475970263e-09, 4.622346287463127724e-09, 4.630429670923657254e-09, 4.638501569045424291e-09, 4.646561973039003685e-09, 4.654610874137775661e-09, 4.662648263601418166e-09, 4.670674132711527780e-09, 4.678688472775317213e-09, 4.686691275122297483e-09, 4.694682531108005189e-09, 4.702662232109444751e-09, 4.710630369528967884e-09, 4.718586934793952652e-09, 4.726531919352622898e-09, 4.734465314681573106e-09, 4.742387112277419664e-09, 4.750297303662339673e-09, 4.758195880383761572e-09, 4.766082834010239996e-09, 4.773958156137303110e-09, 4.781821838383136385e-09, 4.789673872388441975e-09, 4.797514249821885702e-09, 4.805342962371836829e-09, 4.813160001753838331e-09, 4.820965359706280737e-09, 4.828759027990503050e-09, 4.836540998394182528e-09, 4.844311262727075537e-09, 4.852069812825016963e-09, 4.859816640545498110e-09, 4.867551737771296365e-09, 4.875275096409977237e-09, 4.882986708391763539e-09, 4.890686565672768010e-09, 4.898374660230498415e-09, 4.906050984069337618e-09, 4.913715529216487087e-09, 4.921368287721802284e-09, 4.929009251663021279e-09, 4.936638413137777485e-09, 4.944255764270938414e-09, 4.951861297210284478e-09, 4.959455004126551179e-09, 4.967036877216912367e-09, 4.974606908700750034e-09, 4.982165090823095393e-09, 4.989711415852326825e-09, 4.997245876079890301e-09, 5.004768463823594862e-09, 5.012279171423467621e-09, 5.019777991245646476e-09, 5.027264915678063878e-09, 5.034739937134002883e-09, 5.042203048052004506e-09, 5.049654240891707005e-09, 5.057093508141206959e-09, 5.064520842308460726e-09, 5.071936235928661242e-09, 5.079339681560040901e-09, 5.086731171783906303e-09, 5.094110699207917194e-09, 5.101478256462068852e-09, 5.108833836202157972e-09, 5.116177431107238258e-09, 5.123509033879517856e-09, 5.130828637247603551e-09, 5.138136233962464960e-09, 5.145431816801095625e-09, 5.152715378562437502e-09, 5.159986912070838569e-09, 5.167246410175525917e-09, 5.174493865748419511e-09, 5.181729271687545962e-09, 5.188952620912942329e-09, 5.196163906369863101e-09, 5.203363121029035793e-09, 5.210550257882615207e-09, 5.217725309949824803e-09, 5.224888270272813352e-09, 5.232039131916494461e-09, 5.239177887973756989e-09, 5.246304531557596898e-09, 5.253419055808239282e-09, 5.260521453888219125e-09, 5.267611718986302133e-09, 5.274689844313123016e-09, 5.281755823104710098e-09, 5.288809648622113919e-09, 5.295851314149042322e-09, 5.302880812995390863e-09, 5.309898138493050655e-09, 5.316903283999200552e-09, 5.323896242896525520e-09, 5.330877008589236246e-09, 5.337845574508421827e-09, 5.344801934107929577e-09, 5.351746080865876290e-09, 5.358678008286130547e-09, 5.365597709894112294e-09, 5.372505179242291107e-09, 5.379400409906123087e-09, 5.386283395484254342e-09, 5.393154129601807378e-09, 5.400012605906309714e-09, 5.406858818071043139e-09, 5.413692759792014573e-09, 5.420514424791454216e-09, 5.427323806813577077e-09, 5.434120899627975235e-09, 5.440905697029545881e-09, 5.447678192835002268e-09, 5.454438380887770616e-09, 5.461186255054163583e-09, 5.467921809224673967e-09, 5.474645037315645617e-09, 5.481355933265104438e-09, 5.488054491037768627e-09, 5.494740704621672949e-09, 5.501414568028012399e-09, 5.508076075294357451e-09, 5.514725220480772931e-09, 5.521361997673102747e-09, 5.527986400980638069e-09, 5.534598424535961820e-09, 5.541198062498002624e-09, 5.547785309048192554e-09, 5.554360158394020700e-09, 5.560922604765111505e-09, 5.567472642416406101e-09, 5.574010265627903403e-09, 5.580535468702363855e-09, 5.587048245968633868e-09, 5.593548591777364336e-09, 5.600036500505882725e-09, 5.606511966554799982e-09, 5.612974984347858334e-09, 5.619425548335312800e-09, 5.625863652989857326e-09, 5.632289292809768074e-09, 5.638702462317016623e-09, 5.645103156056760424e-09, 5.651491368600457961e-09, 5.657867094542102601e-09, 5.664230328501840681e-09, 5.670581065121778526e-09, 5.676919299069482258e-09, 5.683245025037394623e-09, 5.689558237740853077e-09, 5.695858931921187569e-09, 5.702147102341909725e-09, 5.708422743791786649e-09, 5.714685851085019594e-09, 5.720936419057194088e-09, 5.727174442571884966e-09, 5.733399916513602181e-09, 5.739612835792409774e-09, 5.745813195343641327e-09, 5.752000990124521758e-09, 5.758176215118980683e-09, 5.764338865333360177e-09, 5.770488935799983231e-09, 5.776626421573465352e-09, 5.782751317733545180e-09, 5.788863619384990181e-09, 5.794963321655423654e-09, 5.801050419698293472e-09, 5.807124908689467414e-09, 5.813186783829919017e-09, 5.819236040345866544e-09, 5.825272673485103609e-09, 5.831296678523308910e-09, 5.837308050757059040e-09, 5.843306785508445802e-09, 5.849292878124934765e-09, 5.855266323975748831e-09, 5.861227118456647681e-09, 5.867175256986666205e-09, 5.873110735007709184e-09, 5.879033547989168608e-09, 5.884943691421042366e-09, 5.890841160820269617e-09, 5.896725951726186266e-09, 5.902598059704024756e-09, 5.908457480341310880e-09, 5.914304209250705965e-09, 5.920138242070002740e-09, 5.925959574458651178e-09, 5.931768202103815110e-09, 5.937564120713653866e-09, 5.943347326021792358e-09, 5.949117813786970355e-09, 5.954875579789865284e-09, 5.960620619837574722e-09, 5.966352929760449117e-09, 5.972072505411650907e-09, 5.977779342671823949e-09, 5.983473437442150997e-09, 5.989154785650590640e-09, 5.994823383248284857e-09, 6.000479226209554058e-09, 6.006122310534798001e-09, 6.011752632247012537e-09, 6.017370187394507725e-09, 6.022974972049241893e-09, 6.028566982306292237e-09, 6.034146214286708598e-09, 6.039712664134174133e-09, 6.045266328018051822e-09, 6.050807202129658845e-09, 6.056335282686503400e-09, 6.061850565929471467e-09, 6.067353048122211379e-09, 6.072842725555570823e-09, 6.078319594541100990e-09, 6.083783651416950237e-09, 6.089234892544452790e-09, 6.094673314308059270e-09, 6.100098913118265728e-09, 6.105511685408003840e-09, 6.110911627635588143e-09, 6.116298736282772165e-09, 6.121673007854453120e-09, 6.127034438881442964e-09, 6.132383025917138165e-09, 6.137718765540419797e-09, 6.143041654352561543e-09, 6.148351688979661601e-09, 6.153648866072540118e-09, 6.158933182304852388e-09, 6.164204634375747411e-09, 6.169463219006363957e-09, 6.174708932943922628e-09, 6.179941772958920888e-09, 6.185161735844794747e-09, 6.190368818420865178e-09, 6.195563017529013677e-09, 6.200744330036286230e-09, 6.205912752833115699e-09, 6.211068282833076152e-09, 6.216210916975490135e-09, 6.221340652222314337e-09, 6.226457485560786567e-09, 6.231561414000442943e-09, 6.236652434575706139e-09, 6.241730544345494127e-09, 6.246795740391583191e-09, 6.251848019821073745e-09, 6.256887379763430690e-09, 6.261913817372796203e-09, 6.266927329828203154e-09, 6.271927914330590637e-09, 6.276915568106806696e-09, 6.281890288406517155e-09, 6.286852072503276811e-09, 6.291800917695848793e-09, 6.296736821304717990e-09, 6.301659780676351863e-09, 6.306569793179725457e-09, 6.311466856209101557e-09, 6.316350967180882434e-09, 6.321222123536345337e-09, 6.326080322741011351e-09, 6.330925562283380637e-09, 6.335757839677076487e-09, 6.340577152457932820e-09, 6.345383498186469105e-09, 6.350176874447896979e-09, 6.354957278849363256e-09, 6.359724709023721042e-09, 6.364479162626674305e-09, 6.369220637337620776e-09, 6.373949130860967993e-09, 6.378664640922960233e-09, 6.383367165275613414e-09, 6.388056701693911776e-09, 6.392733247975778934e-09, 6.397396801944535427e-09, 6.402047361446135938e-09, 6.406684924351155356e-09, 6.411309488553523184e-09, 6.415921051970072730e-09, 6.420519612543021822e-09, 6.425105168236990820e-09, 6.429677717041674408e-09, 6.434237256968491517e-09, 6.438783786055325894e-09, 6.443317302361295010e-09, 6.447837803970169630e-09, 6.452345288990292745e-09, 6.456839755551858976e-09, 6.461321201810554170e-09, 6.465789625945092052e-09, 6.470245026156937955e-09, 6.474687400672901193e-09, 6.479116747742087739e-09, 6.483533065638375139e-09, 6.487936352658738306e-09, 6.492326607122993918e-09, 6.496703827376138029e-09, 6.501068011785694134e-09, 6.505419158743884509e-09, 6.509757266665109800e-09, 6.514082333988130293e-09, 6.518394359175770614e-09, 6.522693340713570594e-09, 6.526979277111735764e-09, 6.531252166902487067e-09, 6.535512008643281898e-09, 6.539758800914365653e-09, 6.543992542318583126e-09, 6.548213231484860946e-09, 6.552420867062827591e-09, 6.556615447727716086e-09, 6.560796972177498652e-09, 6.564965439133025672e-09, 6.569120847340061380e-09, 6.573263195566640195e-09, 6.577392482605525101e-09, 6.581508707271496147e-09, 6.585611868403583837e-09, 6.589701964864686970e-09, 6.593778995540406320e-09, 6.597842959340797425e-09, 6.601893855198001548e-09, 6.605931682068317760e-09, 6.609956438932181437e-09, 6.613968124791513970e-09, 6.617966738674339261e-09, 6.621952279629723861e-09, 6.625924746731033578e-09, 6.629884139075720893e-09, 6.633830455783002234e-09, 6.637763695997123689e-09, 6.641683858884469181e-09, 6.645590943635763248e-09, 6.649484949464566406e-09, 6.653365875607183325e-09, 6.657233721324571969e-09, 6.661088485899807456e-09, 6.664930168640542924e-09, 6.668758768876257495e-09, 6.672574285960427629e-09, 6.676376719270497346e-09, 6.680166068205494288e-09, 6.683942332190082906e-09, 6.687705510669943001e-09, 6.691455603114890679e-09, 6.695192609018746825e-09, 6.698916527896897753e-09, 6.702627359289524511e-09, 6.706325102759421616e-09, 6.710009757891674444e-09, 6.713681324296781843e-09, 6.717339801605956090e-09, 6.720985189475387009e-09, 6.724617487583331119e-09, 6.728236695632306148e-09, 6.731842813346582192e-09, 6.735435840474391116e-09, 6.739015776787426934e-09, 6.742582622079621585e-09, 6.746136376169132646e-09, 6.749677038895871718e-09, 6.753204610123560794e-09, 6.756719089739565999e-09, 6.760220477652975221e-09, 6.763708773797286447e-09, 6.767183978128482916e-09, 6.770646090624645168e-09, 6.774095111289174570e-09, 6.777531040145984913e-09, 6.780953877243850902e-09, 6.784363622653775240e-09, 6.787760276469220237e-09, 6.791143838807929262e-09, 6.794514309809413771e-09, 6.797871689637108936e-09, 6.801215978476964132e-09, 6.804547176537172447e-09, 6.807865284050169979e-09, 6.811170301270335446e-09, 6.814462228475929096e-09, 6.817741065966587182e-09, 6.821006814066423881e-09, 6.824259473121502612e-09, 6.827499043500807139e-09, 6.830725525597021605e-09, 6.833938919824054781e-09, 6.837139226620469556e-09, 6.840326446446667214e-09, 6.843500579785464807e-09, 6.846661627143604760e-09, 6.849809589049618259e-09, 6.852944466055714539e-09, 6.856066258736313459e-09, 6.859174967688217560e-09, 6.862270593531992626e-09, 6.865353136910027122e-09, 6.868422598488410716e-09, 6.871478978954768726e-09, 6.874522279019997541e-09, 6.877552499418100014e-09, 6.880569640905061322e-09, 6.883573704260441289e-09, 6.886564690285238608e-09, 6.889542599803776809e-09, 6.892507433663563640e-09, 6.895459192733382764e-09, 6.898397877906018488e-09, 6.901323490095726245e-09, 6.904236030240502380e-09, 6.907135499300153510e-09, 6.910021898256699358e-09, 6.912895228115745050e-09, 6.915755489904620782e-09, 6.918602684674011369e-09, 6.921436813496041318e-09, 6.924257877466007776e-09, 6.927065877701950393e-09, 6.929860815343709163e-09, 6.932642691554539083e-09, 6.935411507519027310e-09, 6.938167264444752487e-09, 6.940909963562321136e-09, 6.943639606123518088e-09, 6.946356193403799597e-09, 6.949059726700248558e-09, 6.951750207332406644e-09, 6.954427636642889733e-09, 6.957092015995429142e-09, 6.959743346777376330e-09, 6.962381630397474474e-09, 6.965006868287878445e-09, 6.967619061901809747e-09, 6.970218212715363086e-09, 6.972804322227358298e-09, 6.975377391958106199e-09, 6.977937423451167172e-09, 6.980484418271145901e-09, 6.983018378005668334e-09, 6.985539304264923423e-09, 6.988047198679974025e-09, 6.990542062906040806e-09, 6.993023898618774137e-09, 6.995492707516685183e-09, 6.997948491321061523e-09, 7.000391251773954629e-09, 7.002820990641079123e-09, 7.005237709709492546e-09, 7.007641410787785601e-09, 7.010032095708372623e-09, 7.012409766323880103e-09, 7.014774424510368559e-09, 7.017126072165434986e-09, 7.019464711208330308e-09, 7.021790343581282878e-09, 7.024102971247676188e-09, 7.026402596193806637e-09, 7.028689220426655926e-09, 7.030962845976944189e-09, 7.033223474895766669e-09, 7.035471109256872608e-09, 7.037705751156484914e-09, 7.039927402711424125e-09, 7.042136066061849674e-09, 7.044331743369097649e-09, 7.046514436815902471e-09, 7.048684148608518617e-09, 7.050840880973098390e-09, 7.052984636159277755e-09, 7.055115416437762617e-09, 7.057233224100718431e-09, 7.059338061463067217e-09, 7.061429930860778604e-09, 7.063508834652187534e-09, 7.065574775217103381e-09, 7.067627754956700768e-09, 7.069667776294790118e-09, 7.071694841676080570e-09, 7.073708953567895553e-09, 7.075710114458049416e-09, 7.077698326857264448e-09, 7.079673593297372584e-09, 7.081635916331225250e-09, 7.083585298535164972e-09, 7.085521742505070627e-09, 7.087445250859932519e-09, 7.089355826239830750e-09, 7.091253471305903784e-09, 7.093138188741922575e-09, 7.095009981252280518e-09, 7.096868851563811588e-09, 7.098714802424336161e-09, 7.100547836602837203e-09, 7.102367956890692765e-09, 7.104175166100063813e-09, 7.105969467065294642e-09, 7.107750862641281676e-09, 7.109519355704961568e-09, 7.111274949154841358e-09, 7.113017645910390499e-09, 7.114747448913069039e-09, 7.116464361125000824e-09, 7.118168385530065381e-09, 7.119859525133932652e-09, 7.121537782962573248e-09, 7.123203162064467017e-09, 7.124855665508541713e-09, 7.126495296385626352e-09, 7.128122057807609139e-09, 7.129735952907156229e-09, 7.131336984839093121e-09, 7.132925156778784206e-09, 7.134500471923562138e-09, 7.136062933491085054e-09, 7.137612544720655099e-09, 7.139149308873008322e-09, 7.140673229229541260e-09, 7.142184309093462378e-09, 7.143682551788331265e-09, 7.145167960659133142e-09, 7.146640539072608907e-09, 7.148100290415490760e-09, 7.149547218096472546e-09, 7.150981325544901155e-09, 7.152402616211145444e-09, 7.153811093567092549e-09, 7.155206761104706106e-09, 7.156589622338044570e-09, 7.157959680801605205e-09, 7.159316940050462218e-09, 7.160661403661481889e-09, 7.161993075231875833e-09, 7.163311958380143160e-09, 7.164618056745282166e-09, 7.165911373987939293e-09, 7.167191913788662949e-09, 7.168459679849361000e-09, 7.169714675893141948e-09, 7.170956905663047697e-09, 7.172186372923916359e-09, 7.173403081460713004e-09, 7.174607035079285704e-09, 7.175798237606887484e-09, 7.176976692890409464e-09, 7.178142404798495132e-09, 7.179295377220072100e-09, 7.180435614064425722e-09, 7.181563119262347218e-09, 7.182677896764452023e-09, 7.183779950542861437e-09, 7.184869284589841092e-09, 7.185945902917934124e-09, 7.187009809561100202e-09, 7.188061008573222469e-09, 7.189099504029385533e-09, 7.190125300024310442e-09, 7.191138400674486331e-09, 7.192138810115891535e-09, 7.193126532505363405e-09, 7.194101572020598303e-09, 7.195063932858968738e-09, 7.196013619239199232e-09, 7.196950635399942741e-09, 7.197874985600034602e-09, 7.198786674119551323e-09, 7.199685705258149604e-09, 7.200572083336473371e-09, 7.201445812695208310e-09, 7.202306897695106680e-09, 7.203155342717939401e-09, 7.203991152165146093e-09, 7.204814330459171800e-09, 7.205624882041945806e-09, 7.206422811375996673e-09, 7.207208122944354636e-09, 7.207980821249857595e-09, 7.208740910816081697e-09, 7.209488396186106351e-09, 7.210223281923515950e-09, 7.210945572612507396e-09, 7.211655272856405320e-09, 7.212352387279931031e-09, 7.213036920526711880e-09, 7.213708877261277242e-09, 7.214368262167987322e-09, 7.215015079950820569e-09, 7.215649335334636776e-09, 7.216271033063650939e-09, 7.216880177902628525e-09, 7.217476774635667870e-09, 7.218060828067224223e-09, 7.218632343021835950e-09, 7.219191324343614167e-09, 7.219737776897052547e-09, 7.220271705566113284e-09, 7.220793115254712652e-09, 7.221302010887036159e-09, 7.221798397406349058e-09, 7.222282279776814497e-09, 7.222753662981382547e-09, 7.223212552023205512e-09, 7.223658951925617249e-09, 7.224092867730899842e-09, 7.224514304501832081e-09, 7.224923267320410645e-09, 7.225319761288698788e-09, 7.225703791528278744e-09, 7.226075363180136748e-09, 7.226434481405500976e-09, 7.226781151384746350e-09, 7.227115378318320158e-09, 7.227437167425699805e-09, 7.227746523946242329e-09, 7.228043453139178606e-09, 7.228327960282544641e-09, 7.228600050674772227e-09, 7.228859729633154530e-09, 7.229107002494678236e-09, 7.229341874616083925e-09, 7.229564351372945431e-09, 7.229774438160896540e-09, 7.229972140394809609e-09, 7.230157463508391068e-09, 7.230330412955935045e-09, 7.230490994209913791e-09, 7.230639212762857857e-09, 7.230775074126393262e-09, 7.230898583831259684e-09, 7.231009747427949048e-09, 7.231108570485778257e-09, 7.231195058593617107e-09, 7.231269217359471391e-09, 7.231331052410756696e-09, 7.231380569393620113e-09, 7.231417773973685528e-09, 7.231442671835984966e-09, 7.231455268684139681e-09, 7.231455570241327959e-09, 7.231443582249837613e-09, 7.231419310470566364e-09, 7.231382760684297356e-09, 7.231333938689979446e-09, 7.231272850306244254e-09, 7.231199501370529351e-09, 7.231113897738961627e-09, 7.231016045287253126e-09, 7.230905949909527281e-09, 7.230783617519242041e-09, 7.230649054048607543e-09, 7.230502265448477745e-09, 7.230343257689046916e-09, 7.230172036759065469e-09, 7.229988608666355291e-09, 7.229792979437335772e-09, 7.229585155117256241e-09, 7.229365141770402762e-09, 7.229132945479518280e-09, 7.228888572346389090e-09, 7.228632028491113616e-09, 7.228363320052913865e-09, 7.228082453189682143e-09, 7.227789434077552566e-09, 7.227484268911799384e-09, 7.227166963906043712e-09, 7.226837525292729989e-09, 7.226495959322757878e-09, 7.226142272265429331e-09, 7.225776470408953166e-09, 7.225398560059924774e-09, 7.225008547543530427e-09, 7.224606439203192422e-09, 7.224192241401029822e-09, 7.223765960517690531e-09, 7.223327602952008850e-09, 7.222877175121478618e-09, 7.222414683461895873e-09, 7.221940134427330727e-09, 7.221453534490525240e-09, 7.220954890142134896e-09, 7.220444207891476371e-09, 7.219921494265950995e-09, 7.219386755811404568e-09, 7.218839999092005768e-09, 7.218281230689787067e-09, 7.217710457205407389e-09, 7.217127685257504428e-09, 7.216532921483101625e-09, 7.215926172537086208e-09, 7.215307445092640990e-09, 7.214676745841144274e-09, 7.214034081492017656e-09, 7.213379458772871602e-09, 7.212712884429119164e-09, 7.212034365224342413e-09, 7.211343907940292443e-09, 7.210641519376456757e-09, 7.209927206350512555e-09, 7.209200975698052946e-09, 7.208462834272578670e-09, 7.207712788945592399e-09, 7.206950846606254630e-09, 7.206177014161940377e-09, 7.205391298537735418e-09, 7.204593706676395763e-09, 7.203784245538715750e-09, 7.202962922103320422e-09, 7.202129743366507536e-09, 7.201284716342301329e-09, 7.200427848062643597e-09, 7.199559145576910624e-09, 7.198678615952335040e-09, 7.197786266273908215e-09, 7.196882103644113082e-09, 7.195966135183321180e-09, 7.195038368029214459e-09, 7.194098809337182322e-09, 7.193147466280293505e-09, 7.192184346049002425e-09, 7.191209455851413053e-09, 7.190222802913165587e-09, 7.189224394477289217e-09, 7.188214237804355153e-09, 7.187192340172299607e-09, 7.186158708876647959e-09, 7.185113351230204565e-09, 7.184056274563138783e-09, 7.182987486223066867e-09, 7.181906993574968417e-09, 7.180814804001130133e-09, 7.179710924901014294e-09, 7.178595363691602037e-09, 7.177468127806941716e-09, 7.176329224698383823e-09, 7.175178661834489996e-09, 7.174016446701071070e-09, 7.172842586801124214e-09, 7.171657089654727046e-09, 7.170459962799080653e-09, 7.169251213788681639e-09, 7.168030850194816721e-09, 7.166798879606186423e-09, 7.165555309628245812e-09, 7.164300147883683434e-09, 7.163033402012153313e-09, 7.161755079670203806e-09, 7.160465188531507565e-09, 7.159163736286534800e-09, 7.157850730642708784e-09, 7.156526179324367809e-09, 7.155190090072868582e-09, 7.153842470646269410e-09, 7.152483328819495644e-09, 7.151112672384266879e-09, 7.149730509149222693e-09, 7.148336846939623202e-09, 7.146931693597527733e-09, 7.145515056981823777e-09, 7.144086944968040869e-09, 7.142647365448361348e-09, 7.141196326331665016e-09, 7.139733835543479517e-09, 7.138259901025977019e-09, 7.136774530737927072e-09, 7.135277732654573354e-09, 7.133769514767915740e-09, 7.132249885086376949e-09, 7.130718851634862103e-09, 7.129176422454870392e-09, 7.127622605604265947e-09, 7.126057409157449069e-09, 7.124480841205172590e-09, 7.122892909854684979e-09, 7.121293623229628598e-09, 7.119682989469875918e-09, 7.118061016731732182e-09, 7.116427713187842759e-09, 7.114783087027087262e-09, 7.113127146454692050e-09, 7.111459899692003576e-09, 7.109781354976858968e-09, 7.108091520563078135e-09, 7.106390404720673048e-09, 7.104678015735984223e-09, 7.102954361911327516e-09, 7.101219451565210842e-09, 7.099473293032210928e-09, 7.097715894663112276e-09, 7.095947264824615173e-09, 7.094167411899474651e-09, 7.092376344286488914e-09, 7.090574070400416612e-09, 7.088760598672037232e-09, 7.086935937547949262e-09, 7.085100095490852260e-09, 7.083253080979278849e-09, 7.081394902507540122e-09, 7.079525568585915893e-09, 7.077645087740471064e-09, 7.075753468513097813e-09, 7.073850719461483327e-09, 7.071936849158967537e-09, 7.070011866194940156e-09, 7.068075779174169840e-09, 7.066128596717334409e-09, 7.064170327460681706e-09, 7.062200980056121409e-09, 7.060220563171278801e-09, 7.058229085489210221e-09, 7.056226555708908468e-09, 7.054212982544541797e-09, 7.052188374726032118e-09, 7.050152740998763001e-09, 7.048106090123603664e-09, 7.046048430876970184e-09, 7.043979772050583135e-09, 7.041900122451728975e-09, 7.039809490903098747e-09, 7.037707886242687162e-09, 7.035595317323911714e-09, 7.033471793015473712e-09, 7.031337322201428593e-09, 7.029191913781104856e-09, 7.027035576669034581e-09, 7.024868319795204889e-09, 7.022690152104658415e-09, 7.020501082557617386e-09, 7.018301120129567168e-09, 7.016090273811086688e-09, 7.013868552608023801e-09, 7.011635965541041996e-09, 7.009392521646265592e-09, 7.007138229974580775e-09, 7.004873099592109570e-09, 7.002597139579858290e-09, 7.000310359033850713e-09, 6.998012767065232303e-09, 6.995704372799854145e-09, 6.993385185378649304e-09, 6.991055213957449199e-09, 6.988714467706909149e-09, 6.986362955812625838e-09, 6.984000687474906532e-09, 6.981627671908965943e-09, 6.979243918344707857e-09, 6.976849436026866582e-09, 6.974444234215071468e-09, 6.972028322183348941e-09, 6.969601709220684990e-09, 6.967164404630498252e-09, 6.964716417731124738e-09, 6.962257757855360404e-09, 6.959788434350556276e-09, 6.957308456578763205e-09, 6.954817833916600349e-09, 6.952316575755119513e-09, 6.949804691499894485e-09, 6.947282190570958995e-09, 6.944749082403012689e-09, 6.942205376444885936e-09, 6.939651082160017945e-09, 6.937086209026170553e-09, 6.934510766535588707e-09, 6.931924764194734105e-09, 6.929328211524370397e-09, 6.926721118059669893e-09, 6.924103493349917431e-09, 6.921475346958784176e-09, 6.918836688464291221e-09, 6.916187527458281845e-09, 6.913527873547245390e-09, 6.910857736351282454e-09, 6.908177125505140522e-09, 6.905486050657429799e-09, 6.902784521470762175e-09, 6.900072547622014271e-09, 6.897350138802029653e-09, 6.894617304715542729e-09, 6.891874055081563394e-09, 6.889120399632698732e-09, 6.886356348115814773e-09, 6.883581910291431812e-09, 6.880797095934174402e-09, 6.878001914832394989e-09, 6.875196376788484096e-09, 6.872380491618499754e-09, 6.869554269152206376e-09, 6.866717719233500757e-09, 6.863870851719511272e-09, 6.861013676481564024e-09, 6.858146203404484704e-09, 6.855268442386726803e-09, 6.852380403340664435e-09, 6.849482096191919839e-09, 6.846573530879917588e-09, 6.843654717357961522e-09, 6.840725665592189184e-09, 6.837786385563021876e-09, 6.834836887263942904e-09, 6.831877180702091504e-09, 6.828907275898123040e-09, 6.825927182885943483e-09, 6.822936911713097358e-09, 6.819936472440201126e-09, 6.816925875141591690e-09, 6.813905129904905367e-09, 6.810874246830842135e-09, 6.807833236033644573e-09, 6.804782107640586663e-09, 6.801720871792556127e-09, 6.798649538643288456e-09, 6.795568118359850809e-09, 6.792476621122740452e-09, 6.789375057125074944e-09, 6.786263436573672437e-09, 6.783141769688049960e-09, 6.780010066700831218e-09, 6.776868337858105590e-09, 6.773716593418381745e-09, 6.770554843653614171e-09, 6.767383098848589411e-09, 6.764201369300966592e-09, 6.761009665321674472e-09, 6.757807997234066888e-09, 6.754596375374796263e-09, 6.751374810092954986e-09, 6.748143311750964635e-09, 6.744901890723716537e-09, 6.741650557398881959e-09, 6.738389322177364575e-09, 6.735118195471895916e-09, 6.731837187708889080e-09, 6.728546309326795125e-09, 6.725245570776912876e-09, 6.721934982523415400e-09, 6.718614555042753604e-09, 6.715284298824234437e-09, 6.711944224369413737e-09, 6.708594342192604951e-09, 6.705234662820818746e-09, 6.701865196793119467e-09, 6.698485954661423362e-09, 6.695096946989731790e-09, 6.691698184354907112e-09, 6.688289677345971246e-09, 6.684871436564117245e-09, 6.681443472623270124e-09, 6.678005796149214188e-09, 6.674558417780569933e-09, 6.671101348167859325e-09, 6.667634597973832545e-09, 6.664158177873902252e-09, 6.660672098555007042e-09, 6.657176370716752126e-09, 6.653671005070822035e-09, 6.650156012340656361e-09, 6.646631403262386132e-09, 6.643097188583745234e-09, 6.639553379064816537e-09, 6.635999985477272535e-09, 6.632437018605348116e-09, 6.628864489245007588e-09, 6.625282408203962878e-09, 6.621690786302174804e-09, 6.618089634371058155e-09, 6.614478963254557022e-09, 6.610858783808076914e-09, 6.607229106898579876e-09, 6.603589943405484471e-09, 6.599941304219419209e-09, 6.596283200242962882e-09, 6.592615642390523788e-09, 6.588938641587951792e-09, 6.585252208773219914e-09, 6.581556354895407730e-09, 6.577851090915449968e-09, 6.574136427806190276e-09, 6.570412376551518471e-09, 6.566678948147243216e-09, 6.562936153600483214e-09, 6.559184003930113886e-09, 6.555422510166003058e-09, 6.551651683350115242e-09, 6.547871534535476012e-09, 6.544082074786266299e-09, 6.540283315178843958e-09, 6.536475266799749440e-09, 6.532657940747983844e-09, 6.528831348133332221e-09, 6.524995500076558792e-09, 6.521150407710399563e-09, 6.517296082178153635e-09, 6.513432534634581526e-09, 6.509559776245843954e-09, 6.505677818188861604e-09, 6.501786671651972737e-09, 6.497886347834276403e-09, 6.493976857946221399e-09, 6.490058213209461512e-09, 6.486130424856205350e-09, 6.482193504130050974e-09, 6.478247462285203381e-09, 6.474292310587295895e-09, 6.470328060312689545e-09, 6.466354722748275371e-09, 6.462372309192397554e-09, 6.458380830953640771e-09, 6.454380299352152031e-09, 6.450370725718073165e-09, 6.446352121392892442e-09, 6.442324497728940812e-09, 6.438287866088388540e-09, 6.434242237845260217e-09, 6.430187624383316349e-09, 6.426124037097343759e-09, 6.422051487393043919e-09, 6.417969986686187570e-09, 6.413879546403472509e-09, 6.409780177981689792e-09, 6.405671892868774251e-09, 6.401554702522835867e-09, 6.397428618412255722e-09, 6.393293652016284879e-09, 6.389149814823928516e-09, 6.384997118335499368e-09, 6.380835574061112262e-09, 6.376665193520944675e-09, 6.372485988246460965e-09, 6.368297969778088820e-09, 6.364101149667673499e-09, 6.359895539476790390e-09, 6.355681150777084975e-09, 6.351457995151007371e-09, 6.347226084190367242e-09, 6.342985429497777233e-09, 6.338736042685404751e-09, 6.334477935375780120e-09, 6.330211119201832155e-09, 6.325935605805936898e-09, 6.321651406840884596e-09, 6.317358533968916862e-09, 6.313056998863007149e-09, 6.308746813205665477e-09, 6.304427988688901207e-09, 6.300100537015627595e-09, 6.295764469897245597e-09, 6.291419799056256934e-09, 6.287066536224448428e-09, 6.282704693143004500e-09, 6.278334281563706583e-09, 6.273955313247215894e-09, 6.269567799964311720e-09, 6.265171753495855858e-09, 6.260767185631244122e-09, 6.256354108170745618e-09, 6.251932532923297477e-09, 6.247502471708027696e-09, 6.243063936352931648e-09, 6.238616938696332053e-09, 6.234161490585693636e-09, 6.229697603877600784e-09, 6.225225290438754305e-09, 6.220744562144464303e-09, 6.216255430880318600e-09, 6.211757908540852632e-09, 6.207252007029511396e-09, 6.202737738260014300e-09, 6.198215114154417079e-09, 6.193684146644578384e-09, 6.189144847671935618e-09, 6.184597229185881180e-09, 6.180041303146511187e-09, 6.175477081521962778e-09, 6.170904576289897249e-09, 6.166323799437496745e-09, 6.161734762960315308e-09, 6.157137478863518815e-09, 6.152531959160831985e-09, 6.147918215875214177e-09, 6.143296261039070330e-09, 6.138666106692915057e-09, 6.134027764886847517e-09, 6.129381247679147683e-09, 6.124726567138160662e-09, 6.120063735339896217e-09, 6.115392764369784042e-09, 6.110713666322084815e-09, 6.106026453299298756e-09, 6.101331137413636360e-09, 6.096627730784957062e-09, 6.091916245542435177e-09, 6.087196693824217448e-09, 6.082469087776257548e-09, 6.077733439553828995e-09, 6.072989761320230613e-09, 6.068238065247670789e-09, 6.063478363517299731e-09, 6.058710668317823115e-09, 6.053934991847371515e-09, 6.049151346311665712e-09, 6.044359743925765357e-09, 6.039560196912697503e-09, 6.034752717503588132e-09, 6.029937317938557157e-09, 6.025114010465197243e-09, 6.020282807340685596e-09, 6.015443720829245347e-09, 6.010596763203813974e-09, 6.005741946746068945e-09, 6.000879283745003314e-09, 5.996008786498518043e-09, 5.991130467311978573e-09, 5.986244338499384454e-09, 5.981350412383150973e-09, 5.976448701292881616e-09, 5.971539217566972799e-09, 5.966621973551103437e-09, 5.961696981599895919e-09, 5.956764254075443733e-09, 5.951823803347463661e-09, 5.946875641794361191e-09, 5.941919781801457868e-09, 5.936956235762969083e-09, 5.931985016080513494e-09, 5.927006135163025342e-09, 5.922019605428278952e-09, 5.917025439300786029e-09, 5.912023649213470710e-09, 5.907014247606844856e-09, 5.901997246928571308e-09, 5.896972659635044622e-09, 5.891940498189170095e-09, 5.886900775062270413e-09, 5.881853502732486712e-09, 5.876798693686376690e-09, 5.871736360417756556e-09, 5.866666515427441294e-09, 5.861589171224396098e-09, 5.856504340324253237e-09, 5.851412035251079744e-09, 5.846312268535807419e-09, 5.841205052716236147e-09, 5.836090400338977766e-09, 5.830968323955967849e-09, 5.825838836128159890e-09, 5.820701949423151301e-09, 5.815557676415238001e-09, 5.810406029687139916e-09, 5.805247021827535982e-09, 5.800080665432906274e-09, 5.794906973107230089e-09, 5.789725957460690574e-09, 5.784537631111334888e-09, 5.779342006683665503e-09, 5.774139096809516194e-09, 5.768928914128227402e-09, 5.763711471285078721e-09, 5.758486780933337831e-09, 5.753254855732150358e-09, 5.748015708349030512e-09, 5.742769351456482056e-09, 5.737515797735526236e-09, 5.732255059873375740e-09, 5.726987150563490955e-09, 5.721712082507428708e-09, 5.716429868412177925e-09, 5.711140520991997620e-09, 5.705844052968489689e-09, 5.700540477068318376e-09, 5.695229806026582682e-09, 5.689912052583652406e-09, 5.684587229486997864e-09, 5.679255349491285016e-09, 5.673916425356565596e-09, 5.668570469850311147e-09, 5.663217495745575854e-09, 5.657857515822961098e-09, 5.652490542869014036e-09, 5.647116589676220151e-09, 5.641735669044378861e-09, 5.636347793778549623e-09, 5.630952976691473920e-09, 5.625551230600934903e-09, 5.620142568331493639e-09, 5.614727002714723207e-09, 5.609304546586595630e-09, 5.603875212791377072e-09, 5.598439014177958465e-09, 5.592995963601925940e-09, 5.587546073925591433e-09, 5.582089358016245681e-09, 5.576625828748112021e-09, 5.571155499000863256e-09, 5.565678381660370254e-09, 5.560194489619265258e-09, 5.554703835774916944e-09, 5.549206433031548836e-09, 5.543702294298440187e-09, 5.538191432491815257e-09, 5.532673860533260090e-09, 5.527149591349562870e-09, 5.521618637874941517e-09, 5.516081013047225422e-09, 5.510536729811943372e-09, 5.504985801119565733e-09, 5.499428239925755907e-09, 5.493864059193124791e-09, 5.488293271888671472e-09, 5.482715890985864416e-09, 5.477131929463239400e-09, 5.471541400305089377e-09, 5.465944316501839188e-09, 5.460340691048430084e-09, 5.454730536946118008e-09, 5.449113867200743970e-09, 5.443490694824705209e-09, 5.437861032835355435e-09, 5.432224894254954362e-09, 5.426582292111906003e-09, 5.420933239439049715e-09, 5.415277749275632193e-09, 5.409615834665677931e-09, 5.403947508657815507e-09, 5.398272784307377799e-09, 5.392591674673517606e-09, 5.386904192821087000e-09, 5.381210351820929322e-09, 5.375510164747101512e-09, 5.369803644680860288e-09, 5.364090804707039924e-09, 5.358371657916015979e-09, 5.352646217403981570e-09, 5.346914496270765275e-09, 5.341176507622246499e-09, 5.335432264568435584e-09, 5.329681780225090127e-09, 5.323925067711876149e-09, 5.318162140154402139e-09, 5.312393010682831870e-09, 5.306617692431259049e-09, 5.300836198540079672e-09, 5.295048542153083658e-09, 5.289254736419564985e-09, 5.283454794493574746e-09, 5.277648729533022834e-09, 5.271836554701870793e-09, 5.266018283167430250e-09, 5.260193928102128942e-09, 5.254363502683587649e-09, 5.248527020092828516e-09, 5.242684493516372783e-09, 5.236835936144498747e-09, 5.230981361172269945e-09, 5.225120781800015743e-09, 5.219254211231091336e-09, 5.213381662674369213e-09, 5.207503149342057056e-09, 5.201618684452108141e-09, 5.195728281225490821e-09, 5.189831952888100961e-09, 5.183929712670408737e-09, 5.178021573806018509e-09, 5.172107549534396870e-09, 5.166187653097651599e-09, 5.160261897742726999e-09, 5.154330296721365849e-09, 5.148392863288132440e-09, 5.142449610702742746e-09, 5.136500552228228906e-09, 5.130545701132006289e-09, 5.124585070686118341e-09, 5.118618674165408514e-09, 5.112646524849680860e-09, 5.106668636021682544e-09, 5.100685020969235479e-09, 5.094695692983620851e-09, 5.088700665359362393e-09, 5.082699951395768249e-09, 5.076693564394848965e-09, 5.070681517663716307e-09, 5.064663824512569909e-09, 5.058640498254744417e-09, 5.052611552208679838e-09, 5.046576999695200937e-09, 5.040536854039659644e-09, 5.034491128570291435e-09, 5.028439836619298122e-09, 5.022382991523170444e-09, 5.016320606620607716e-09, 5.010252695254912511e-09, 5.004179270771911957e-09, 4.998100346522104272e-09, 4.992015935858788508e-09, 4.985926052138313530e-09, 4.979830708721236072e-09, 4.973729918970449654e-09, 4.967623696253405559e-09, 4.961512053940416290e-09, 4.955395005404241976e-09, 4.949272564022754723e-09, 4.943144743174623212e-09, 4.937011556243968069e-09, 4.930873016617171436e-09, 4.924729137683181365e-09, 4.918579932835533456e-09, 4.912425415469516100e-09, 4.906265598984426210e-09, 4.900100496781617893e-09, 4.893930122266754043e-09, 4.887754488847904647e-09, 4.881573609935627854e-09, 4.875387498944334818e-09, 4.869196169290357407e-09, 4.862999634394146849e-09, 4.856797907678468823e-09, 4.850591002568161922e-09, 4.844378932492825165e-09, 4.838161710882262711e-09, 4.831939351171441979e-09, 4.825711866796997987e-09, 4.819479271197884337e-09, 4.813241577817137597e-09, 4.806998800098934188e-09, 4.800750951490819640e-09, 4.794498045443816949e-09, 4.788240095409350292e-09, 4.781977114843807759e-09, 4.775709117204505537e-09, 4.769436115951776538e-09, 4.763158124549230140e-09, 4.756875156461540299e-09, 4.750587225157008988e-09, 4.744294344105182257e-09, 4.737996526779823126e-09, 4.731693786654653252e-09, 4.725386137207918973e-09, 4.719073591919294341e-09, 4.712756164270068888e-09, 4.706433867745454642e-09, 4.700106715831193848e-09, 4.693774722016038865e-09, 4.687437899791779459e-09, 4.681096262650173135e-09, 4.674749824087564941e-09, 4.668398597600576204e-09, 4.662042596688653075e-09, 4.655681834853953199e-09, 4.649316325599344772e-09, 4.642946082430764829e-09, 4.636571118855392830e-09, 4.630191448382663958e-09, 4.623807084524715795e-09, 4.617418040794240958e-09, 4.611024330706880966e-09, 4.604625967779077222e-09, 4.598222965530467353e-09, 4.591815337481741987e-09, 4.585403097154836660e-09, 4.578986258075154449e-09, 4.572564833767340732e-09, 4.566138837760290116e-09, 4.559708283582745006e-09, 4.553273184765770529e-09, 4.546833554842747092e-09, 4.540389407347427333e-09, 4.533940755816083481e-09, 4.527487613785753735e-09, 4.521029994795443330e-09, 4.514567912386352011e-09, 4.508101380099777958e-09, 4.501630411479579472e-09, 4.495155020070032585e-09, 4.488675219418072710e-09, 4.482191023071389652e-09, 4.475702444578502877e-09, 4.469209497490248783e-09, 4.462712195357587020e-09, 4.456210551734175500e-09, 4.449704580174146935e-09, 4.443194294232306538e-09, 4.436679707466184253e-09, 4.430160833432883199e-09, 4.423637685691830873e-09, 4.417110277802631789e-09, 4.410578623326520004e-09, 4.404042735826392213e-09, 4.397502628864976362e-09, 4.390958316007066695e-09, 4.384409810817276305e-09, 4.377857126862685763e-09, 4.371300277710570857e-09, 4.364739276928678037e-09, 4.358174138086599196e-09, 4.351604874753553168e-09, 4.345031500501230402e-09, 4.338454028901270063e-09, 4.331872473525397340e-09, 4.325286847947869425e-09, 4.318697165741946756e-09, 4.312103440482610307e-09, 4.305505685745547464e-09, 4.298903915106163544e-09, 4.292298142142212231e-09, 4.285688380430356155e-09, 4.279074643548576477e-09, 4.272456945076212583e-09, 4.265835298591636061e-09, 4.259209717674964676e-09, 4.252580215905983667e-09, 4.245946806865733106e-09, 4.239309504134600419e-09, 4.232668321294854869e-09, 4.226023271928400930e-09, 4.219374369616815516e-09, 4.212721627943984198e-09, 4.206065060491354849e-09, 4.199404680843315968e-09, 4.192740502583396612e-09, 4.186072539294651866e-09, 4.179400804562154308e-09, 4.172725311969389153e-09, 4.166046075100791225e-09, 4.159363107541686216e-09, 4.152676422876125137e-09, 4.145986034689374953e-09, 4.139291956565858902e-09, 4.132594202090525487e-09, 4.125892784849124744e-09, 4.119187718425916960e-09, 4.112479016406392439e-09, 4.105766692374674154e-09, 4.099050759917001007e-09, 4.092331232616570357e-09, 4.085608124059061105e-09, 4.078881447829015605e-09, 4.072151217510022472e-09, 4.065417446687249410e-09, 4.058680148943859863e-09, 4.051939337863617808e-09, 4.045195027030953104e-09, 4.038447230027508009e-09, 4.031695960437397226e-09, 4.024941231842339114e-09, 4.018183057824490440e-09, 4.011421451966314853e-09, 4.004656427848461995e-09, 3.997887999052325144e-09, 3.991116179157575389e-09, 3.984340981744923582e-09, 3.977562420393814165e-09, 3.970780508682682418e-09, 3.963995260190339160e-09, 3.957206688493781204e-09, 3.950414807171017006e-09, 3.943619629798522255e-09, 3.936821169951390420e-09, 3.930019441206125315e-09, 3.923214457135658988e-09, 3.916406231315027006e-09, 3.909594777316409510e-09, 3.902780108712146285e-09, 3.895962239074338890e-09, 3.889141181972841433e-09, 3.882316950977912514e-09, 3.875489559657877611e-09, 3.868659021580700725e-09, 3.861825350314224261e-09, 3.854988559423719747e-09, 3.848148662474883054e-09, 3.841305673031013712e-09, 3.834459604656015919e-09, 3.827610470911944296e-09, 3.820758285358975767e-09, 3.813903061558333637e-09, 3.807044813067157422e-09, 3.800183553444201293e-09, 3.793319296245910761e-09, 3.786452055026767609e-09, 3.779581843341864081e-09, 3.772708674743230197e-09, 3.765832562782434412e-09, 3.758953521010770554e-09, 3.752071562975663730e-09, 3.745186702226019699e-09, 3.738298952307323829e-09, 3.731408326764987869e-09, 3.724514839141671536e-09, 3.717618502980205775e-09, 3.710719331821197657e-09, 3.703817339203183819e-09, 3.696912538664357203e-09, 3.690004943739950273e-09, 3.683094567965307163e-09, 3.676181424873379385e-09, 3.669265527994696056e-09, 3.662346890860053468e-09, 3.655425526996707169e-09, 3.648501449931141776e-09, 3.641574673189087927e-09, 3.634645210291934806e-09, 3.627713074762293340e-09, 3.620778280118845352e-09, 3.613840839879273426e-09, 3.606900767560265464e-09, 3.599958076675045964e-09, 3.593012780736406391e-09, 3.586064893254059035e-09, 3.579114427736931188e-09, 3.572161397690693120e-09, 3.565205816620653208e-09, 3.558247698029319824e-09, 3.551287055416368660e-09, 3.544323902281460931e-09, 3.537358252120188953e-09, 3.530390118427171862e-09, 3.523419514694954639e-09, 3.516446454412884384e-09, 3.509470951070050946e-09, 3.502493018151420676e-09, 3.495512669140702613e-09, 3.488529917520118111e-09, 3.481544776768037996e-09, 3.474557260361911204e-09, 3.467567381775828316e-09, 3.460575154482134151e-09, 3.453580591951634140e-09, 3.446583707651098318e-09, 3.439584515046390128e-09, 3.432583027599525382e-09, 3.425579258771733245e-09, 3.418573222020999919e-09, 3.411564930802275853e-09, 3.404554398569094949e-09, 3.397541638771083511e-09, 3.390526664857350436e-09, 3.383509490272416255e-09, 3.376490128459036293e-09, 3.369468592858200259e-09, 3.362444896906624647e-09, 3.355419054039724795e-09, 3.348391077689118041e-09, 3.341360981284240863e-09, 3.334328778252751714e-09, 3.327294482017761620e-09, 3.320258106001048606e-09, 3.313219663620203923e-09, 3.306179168291625614e-09, 3.299136633428058065e-09, 3.292092072438812035e-09, 3.285045498731480642e-09, 3.277996925709240688e-09, 3.270946366774095619e-09, 3.263893835324179742e-09, 3.256839344753844670e-09, 3.249782908456385704e-09, 3.242724539820084190e-09, 3.235664252231630807e-09, 3.228602059073450048e-09, 3.221537973725464601e-09, 3.214472009565289317e-09, 3.207404179965744710e-09, 3.200334498297862103e-09, 3.193262977928072038e-09, 3.186189632221251613e-09, 3.179114474538305807e-09, 3.172037518236203456e-09, 3.164958776669803674e-09, 3.157878263189253128e-09, 3.150795991143025923e-09, 3.143711973875423455e-09, 3.136626224726519810e-09, 3.129538757035306710e-09, 3.122449584134151402e-09, 3.115358719354889666e-09, 3.108266176024692815e-09, 3.101171967466434955e-09, 3.094076107001454947e-09, 3.086978607945541269e-09, 3.079879483611882157e-09, 3.072778747310826550e-09, 3.065676412347450110e-09, 3.058572492024628199e-09, 3.051466999640476995e-09, 3.044359948490543866e-09, 3.037251351865298948e-09, 3.030141223053150626e-09, 3.023029575337999566e-09, 3.015916421999059215e-09, 3.008801776314074774e-09, 3.001685651553843954e-09, 2.994568060988196666e-09, 2.987449017881966648e-09, 2.980328535495208604e-09, 2.973206627086227749e-09, 2.966083305907267719e-09, 2.958958585207543844e-09, 2.951832478233463587e-09, 2.944704998224575430e-09, 2.937576158419584544e-09, 2.930445972050871478e-09, 2.923314452347584985e-09, 2.916181612535751213e-09, 2.909047465835522086e-09, 2.901912025464361190e-09, 2.894775304634189588e-09, 2.887637316554457143e-09, 2.880498074429598104e-09, 2.873357591459232946e-09, 2.866215880839959626e-09, 2.859072955762635878e-09, 2.851928829415883571e-09, 2.844783514982006978e-09, 2.837637025639877162e-09, 2.830489374565147038e-09, 2.823340574926241618e-09, 2.816190639890427033e-09, 2.809039582618181157e-09, 2.801887416266446080e-09, 2.794734153988600812e-09, 2.787579808931798588e-09, 2.780424394240169296e-09, 2.773267923052148930e-09, 2.766110408502211286e-09, 2.758951863721208764e-09, 2.751792301833573602e-09, 2.744631735960679537e-09, 2.737470179217761800e-09, 2.730307644717166278e-09, 2.723144145565731078e-09, 2.715979694864675681e-09, 2.708814305712932002e-09, 2.701647991201415333e-09, 2.694480764419517714e-09, 2.687312638449532321e-09, 2.680143626369798820e-09, 2.672973741254763751e-09, 2.665802996172241321e-09, 2.658631404186627413e-09, 2.651458978356367998e-09, 2.644285731735480325e-09, 2.637111677373971468e-09, 2.629936828315144618e-09, 2.622761197598804819e-09, 2.615584798258286495e-09, 2.608407643323657531e-09, 2.601229745819145094e-09, 2.594051118763236954e-09, 2.586871775170593106e-09, 2.579691728049263958e-09, 2.572510990403944457e-09, 2.565329575233334561e-09, 2.558147495530045765e-09, 2.550964764283642644e-09, 2.543781394476351027e-09, 2.536597399086088370e-09, 2.529412791086670558e-09, 2.522227583443754163e-09, 2.515041789120886036e-09, 2.507855421073995105e-09, 2.500668492255101459e-09, 2.493481015609456779e-09, 2.486293004078683907e-09, 2.479104470598090573e-09, 2.471915428097013917e-09, 2.464725889500531100e-09, 2.457535867726774274e-09, 2.450345375690151625e-09, 2.443154426298739271e-09, 2.435963032454166281e-09, 2.428771207054568960e-09, 2.421578962990490089e-09, 2.414386313148040006e-09, 2.407193270407742269e-09, 2.399999847643301987e-09, 2.392806057724824378e-09, 2.385611913514742147e-09, 2.378417427870633690e-09, 2.371222613645255352e-09, 2.364027483683849372e-09, 2.356832050827434402e-09, 2.349636327910009227e-09, 2.342440327761001632e-09, 2.335244063202555250e-09, 2.328047547052741089e-09, 2.320850792122862993e-09, 2.313653811217482458e-09, 2.306456617137340643e-09, 2.299259222675172844e-09, 2.292061640618960133e-09, 2.284863883750763037e-09, 2.277665964845443546e-09, 2.270467896673927510e-09, 2.263269691999074111e-09, 2.256071363578567280e-09, 2.248872924164937196e-09, 2.241674386502835971e-09, 2.234475763332293018e-09, 2.227277067386077999e-09, 2.220078311391358910e-09, 2.212879508070032123e-09, 2.205680670136053906e-09, 2.198481810298636644e-09, 2.191282941259306973e-09, 2.184084075715080502e-09, 2.176885226355907475e-09, 2.169686405864770794e-09, 2.162487626919576539e-09, 2.155288902190403182e-09, 2.148090244343076245e-09, 2.140891666034960018e-09, 2.133693179917941203e-09, 2.126494798638350743e-09, 2.119296534834392117e-09, 2.112098401139226312e-09, 2.104900410178395982e-09, 2.097702574571536054e-09, 2.090504906932678964e-09, 2.083307419867533229e-09, 2.076110125976742951e-09, 2.068913037852937681e-09, 2.061716168083906721e-09, 2.054519529249935192e-09, 2.047323133924113810e-09, 2.040126994674049913e-09, 2.032931124059216756e-09, 2.025735534634148913e-09, 2.018540238945860647e-09, 2.011345249533667648e-09, 2.004150578932557386e-09, 1.996956239667461709e-09, 1.989762244259521083e-09, 1.982568605221858939e-09, 1.975375335059903033e-09, 1.968182446274281820e-09, 1.960989951356746451e-09, 1.953797862793582070e-09, 1.946606193062717641e-09, 1.939414954636927551e-09, 1.932224159981167264e-09, 1.925033821552814856e-09, 1.917843951803460204e-09, 1.910654563176236095e-09, 1.903465668109010721e-09, 1.896277279031712169e-09, 1.889089408366325937e-09, 1.881902068530164782e-09, 1.874715271930107400e-09, 1.867529030968963178e-09, 1.860343358041132379e-09, 1.853158265533072269e-09, 1.845973765826045417e-09, 1.838789871292091950e-09, 1.831606594296916204e-09, 1.824423947200174583e-09, 1.817241942351300783e-09, 1.810060592095705090e-09, 1.802879908769189675e-09, 1.795699904701669664e-09, 1.788520592214265807e-09, 1.781341983622535649e-09, 1.774164091233781887e-09, 1.766986927347005634e-09, 1.759810504256201076e-09, 1.752634834244673368e-09, 1.745459929591247446e-09, 1.738285802566085183e-09, 1.731112465430975938e-09, 1.723939930442324744e-09, 1.716768209846873303e-09, 1.709597315884770274e-09, 1.702427260789767935e-09, 1.695258056785088763e-09, 1.688089716089624115e-09, 1.680922250912249848e-09, 1.673755673455130279e-09, 1.666589995913656565e-09, 1.659425230473768912e-09, 1.652261389315184438e-09, 1.645098484608779148e-09, 1.637936528518235264e-09, 1.630775533200416973e-09, 1.623615510802639073e-09, 1.616456473465895050e-09, 1.609298433321915827e-09, 1.602141402496699140e-09, 1.594985393106280365e-09, 1.587830417259800331e-09, 1.580676487059665375e-09, 1.573523614597413921e-09, 1.566371811959963555e-09, 1.559221091223912579e-09, 1.552071464458797035e-09, 1.544922943727079946e-09, 1.537775541081496695e-09, 1.530629268568197894e-09, 1.523484138224163820e-09, 1.516340162078918547e-09, 1.509197352154825868e-09, 1.502055720464380066e-09, 1.494915279013457157e-09, 1.487776039798372807e-09, 1.480638014809059537e-09, 1.473501216026418916e-09, 1.466365655422598876e-09, 1.459231344962727066e-09, 1.452098296602261187e-09, 1.444966522290529117e-09, 1.437836033966489821e-09, 1.430706843561804666e-09, 1.423578963000707148e-09, 1.416452404197350117e-09, 1.409327179059095477e-09, 1.402203299483735481e-09, 1.395080777361353057e-09, 1.387959624574542254e-09, 1.380839852995739965e-09, 1.373721474490461440e-09, 1.366604500914297417e-09, 1.359488944116221396e-09, 1.352374815935841538e-09, 1.345262128203689352e-09, 1.338150892743027495e-09, 1.331041121367078309e-09, 1.323932825882384649e-09, 1.316826018086014433e-09, 1.309720709765571804e-09, 1.302616912702206621e-09, 1.295514638666350344e-09, 1.288413899421034475e-09, 1.281314706720653097e-09, 1.274217072309779590e-09, 1.267121007926388295e-09, 1.260026525297684487e-09, 1.252933636143670353e-09, 1.245842352174126817e-09, 1.238752685091925363e-09, 1.231664646590235058e-09, 1.224578248352921050e-09, 1.217493502056218781e-09, 1.210410419366059087e-09, 1.203329011941371551e-09, 1.196249291431333294e-09, 1.189171269475364844e-09, 1.182094957706434717e-09, 1.175020367745283634e-09, 1.167947511206794637e-09, 1.160876399695694022e-09, 1.153807044806863810e-09, 1.146739458128343997e-09, 1.139673651237094287e-09, 1.132609635701982285e-09, 1.125547423083753509e-09, 1.118487024932363524e-09, 1.111428452790187615e-09, 1.104371718189351469e-09, 1.097316832653513342e-09, 1.090263807698138678e-09, 1.083212654827763795e-09, 1.076163385539320537e-09, 1.069116011319065151e-09, 1.062070543646544833e-09, 1.055026993988783880e-09, 1.047985373806634793e-09, 1.040945694550527386e-09, 1.033907967660770093e-09, 1.026872204570527817e-09, 1.019838416701587383e-09, 1.012806615467401979e-09, 1.005776812273300020e-09, 9.987490185122869934e-10, 9.917232455713731928e-10, 9.846995048257995771e-10, 9.776778076423589030e-10, 9.706581653793676011e-10, 9.636405893839637896e-10, 9.566250909953510637e-10, 9.496116815418136139e-10, 9.426003723440108868e-10, 9.355911747122311385e-10, 9.285840999466832224e-10, 9.215791593393008772e-10, 9.145763641709848031e-10, 9.075757257152555948e-10, 9.005772552339611913e-10, 8.935809639803040467e-10, 8.865868631991162710e-10, 8.795949641226326337e-10, 8.726052779768049508e-10, 8.656178159755406681e-10, 8.586325893240377433e-10, 8.516496092187300522e-10, 8.446688868445742362e-10, 8.376904333783566668e-10, 8.307142599859611651e-10, 8.237403778241563318e-10, 8.167687980408783401e-10, 8.097995317725048580e-10, 8.028325901471862085e-10, 7.958679842817579179e-10, 7.889057252850745635e-10, 7.819458242552791474e-10, 7.749882922797905853e-10, 7.680331404385906119e-10, 7.610803797984800458e-10, 7.541300214194288478e-10, 7.471820763502828473e-10, 7.402365556290930633e-10, 7.332934702861009990e-10, 7.263528313395023402e-10, 7.194146497990433295e-10, 7.124789366632966536e-10, 7.055457029214806206e-10, 6.986149595536933553e-10, 6.916867175282187754e-10, 6.847609878048218724e-10, 6.778377813317216438e-10, 6.709171090488821349e-10, 6.639989818852852242e-10, 6.570834107592209639e-10, 6.501704065800995186e-10, 6.432599802456853841e-10, 6.363521426454155189e-10, 6.294469046576770923e-10, 6.225442771497944571e-10, 6.156442709810114452e-10, 6.087468969982643717e-10, 6.018521660392011405e-10, 5.949600889324302259e-10, 5.880706764933193187e-10, 5.811839395302805547e-10, 5.742998888390556272e-10, 5.674185352066057074e-10, 5.605398894080869617e-10, 5.536639622101323910e-10, 5.467907643681644240e-10, 5.399203066266453463e-10, 5.330525997208809679e-10, 5.261876543742994054e-10, 5.193254813017419169e-10, 5.124660912067474748e-10, 5.056094947815293980e-10, 4.987557027099783275e-10, 4.919047256634257180e-10, 4.850565743039458388e-10, 4.782112592831334082e-10, 4.713687912408889820e-10, 4.645291808087073066e-10, 4.576924386054612828e-10, 4.508585752403985310e-10, 4.440276013130986363e-10, 4.371995274107862075e-10, 4.303743641116065119e-10, 4.235521219819082910e-10, 4.167328115780364154e-10, 4.099164434466080604e-10, 4.031030281218023961e-10, 3.962925761286581956e-10, 3.894850979800426826e-10, 3.826806041802387555e-10, 3.758791052207412556e-10, 3.690806115835345670e-10, 3.622851337398825025e-10, 3.554926821491118833e-10, 3.487032672619003235e-10, 3.419168995160593664e-10, 3.351335893395251562e-10, 3.283533471503321750e-10, 3.215761833539210799e-10, 3.148021083464024995e-10, 3.080311325118572199e-10, 3.012632662241132781e-10, 2.944985198470415250e-10, 2.877369037318364232e-10, 2.809784282202949402e-10, 2.742231036418211717e-10, 2.674709403166907582e-10, 2.607219485533516399e-10, 2.539761386487103643e-10, 2.472335208899126962e-10, 2.404941055516335150e-10, 2.337579028993521401e-10, 2.270249231866555154e-10, 2.202951766552220789e-10, 2.135686735377885239e-10, 2.068454240539646784e-10, 2.001254384137989896e-10, 1.934087268150771335e-10, 1.866952994451018222e-10, 1.799851664809713322e-10, 1.732783380868911150e-10, 1.665748244174349827e-10, 1.598746356145527567e-10, 1.531777818108281434e-10, 1.464842731267975329e-10, 1.397941196712234846e-10, 1.331073315428686164e-10, 1.264239188278115846e-10, 1.197438916026971023e-10, 1.130672599320507431e-10, 1.063940338682682137e-10, 9.972422345486511378e-11, 9.305783872082641347e-11, 8.639488968682175941e-11, 7.973538636104253311e-11, 7.307933873948514741e-11, 6.642675680889989364e-11, 5.977765054263239454e-11, 5.313202990416178525e-11, 4.648990484413331927e-11, 3.985128530359272857e-11, 3.321618121131570984e-11, 2.658460248409057463e-11, 1.995655902847804384e-11, 1.333206073813987435e-11, 6.711117497074825967e-12, 9.373917694799058017e-14, -6.520064362921246656e-12, -1.313028327232577874e-11, -1.973690771578936858e-11, -2.633992786638424266e-11, -3.293933390987357493e-11, -3.953511604442726140e-11, -4.612726447768954388e-11, -5.271576943091486132e-11, -5.930062113603429256e-11, -6.588180983537559447e-11, -7.245932578579525990e-11, -7.903315925251113013e-11, -8.560330051470532861e-11, -9.216973986229861841e-11, -9.873246759596849687e-11, -1.052914740298014080e-10, -1.118467494880740406e-10, -1.183982843082047733e-10, -1.249460688369458390e-10, -1.314900934359766814e-10, -1.380303484757474051e-10, -1.445668243396070914e-10, -1.510995114235130963e-10, -1.576284001331173584e-10, -1.641534808878795029e-10, -1.706747441181496858e-10, -1.771921802648862146e-10, -1.837057797837701783e-10, -1.902155331390640180e-10, -1.967214308091921276e-10, -2.032234632835286008e-10, -2.097216210624077263e-10, -2.162158946597723095e-10, -2.227062745999684773e-10, -2.291927514203847716e-10, -2.356753156697125891e-10, -2.421539579076716598e-10, -2.486286687076393449e-10, -2.550994386534576672e-10, -2.615662583423595666e-10, -2.680291183814838842e-10, -2.744880093919689760e-10, -2.809429220060420711e-10, -2.873938468667568486e-10, -2.938407746320597544e-10, -3.002836959687037090e-10, -3.067226015577818431e-10, -3.131574820915432655e-10, -3.195883282734013865e-10, -3.260151308205590791e-10, -3.324378804608315301e-10, -3.388565679352688159e-10, -3.452711839964159804e-10, -3.516817194080469920e-10, -3.580881649477787389e-10, -3.644905114038973431e-10, -3.708887495782626502e-10, -3.772828702831333035e-10, -3.836728643437961445e-10, -3.900587225982698751e-10, -3.964404358955888133e-10, -4.028179950984130612e-10, -4.091913910798708469e-10, -4.155606147261533380e-10, -4.219256569365382680e-10, -4.282865086205055578e-10, -4.346431607018030114e-10, -4.409956041149753112e-10, -4.473438298079798733e-10, -4.536878287404718951e-10, -4.600275918835175824e-10, -4.663631102222102111e-10, -4.726943747524934957e-10, -4.790213764840843280e-10, -4.853441064372759313e-10, -4.916625556455693285e-10, -4.979767151553843458e-10, -5.042865760243384569e-10, -5.105921293238672909e-10, -5.168933661360391600e-10, -5.231902775561933519e-10, -5.294828546929147974e-10, -5.357710886651854674e-10, -5.420549706064216342e-10, -5.483344916613143523e-10, -5.546096429869987811e-10, -5.608804157542013816e-10, -5.671468011441019026e-10, -5.734087903523658869e-10, -5.796663745862700113e-10, -5.859195450647210088e-10, -5.921682930208501203e-10, -5.984126096988622604e-10, -6.046524863566334680e-10, -6.108879142634144456e-10, -6.171188847024499310e-10, -6.233453889677980837e-10, -6.295674183669469609e-10, -6.357849642208078998e-10, -6.419980178608706372e-10, -6.482065706332278527e-10, -6.544106138954127544e-10, -6.606101390175826706e-10, -6.668051373836545621e-10, -6.729956003881838630e-10, -6.791815194403424957e-10, -6.853628859611208287e-10, -6.915396913832956240e-10, -6.977119271540382405e-10, -7.038795847317534598e-10, -7.100426555886999950e-10, -7.162011312092474136e-10, -7.223550030896252954e-10, -7.285042627404860448e-10, -7.346489016837862132e-10, -7.407889114556412023e-10, -7.469242836026349016e-10, -7.530550096872460964e-10, -7.591810812818615412e-10, -7.653024899727888202e-10, -7.714192273599572175e-10, -7.775312850541211230e-10, -7.836386546808051673e-10, -7.897413278775051453e-10, -7.958392962936776769e-10, -8.019325515933319707e-10, -8.080210854518759907e-10, -8.141048895587070828e-10, -8.201839556155094304e-10, -8.262582753359989726e-10, -8.323278404484454776e-10, -8.383926426925979128e-10, -8.444526738225202261e-10, -8.505079256034779423e-10, -8.565583898144904280e-10, -8.626040582480666083e-10, -8.686449227085157597e-10, -8.746809750144884028e-10, -8.807122069959135624e-10, -8.867386104964846521e-10, -8.927601773737517049e-10, -8.987768994959488255e-10, -9.047887687474011594e-10, -9.107957770223269326e-10, -9.167979162302039918e-10, -9.227951782926535058e-10, -9.287875551434968331e-10, -9.347750387312527812e-10, -9.407576210160775545e-10, -9.467352939725612458e-10, -9.527080495866701626e-10, -9.586758798582771729e-10, -9.646387768008674358e-10, -9.705967324398916915e-10, -9.765497388152947455e-10, -9.824977879784282243e-10, -9.884408719945802999e-10, -9.943789829429889249e-10, -1.000312112913785194e-09, -1.006240254013281301e-09, -1.012163398358148016e-09, -1.018081538079305331e-09, -1.023994665321674509e-09, -1.029902772241381180e-09, -1.035805851009652400e-09, -1.041703893809520951e-09, -1.047596892838295098e-09, -1.053484840305929873e-09, -1.059367728434752652e-09, -1.065245549461958556e-09, -1.071118295636579870e-09, -1.076985959222225453e-09, -1.082848532494115712e-09, -1.088706007741524234e-09, -1.094558377267785847e-09, -1.100405633387300163e-09, -1.106247768430765765e-09, -1.112084774739387672e-09, -1.117916644668747508e-09, -1.123743370588543977e-09, -1.129564944879842276e-09, -1.135381359938935378e-09, -1.141192608174593448e-09, -1.146998682007804522e-09, -1.152799573875657708e-09, -1.158595276225506597e-09, -1.164385781520274800e-09, -1.170171082235375944e-09, -1.175951170858793489e-09, -1.181726039893490933e-09, -1.187495681854424650e-09, -1.193260089271060176e-09, -1.199019254685113591e-09, -1.204773170653071734e-09, -1.210521829743178367e-09, -1.216265224537911791e-09, -1.222003347633960443e-09, -1.227736191639542623e-09, -1.233463749178199116e-09, -1.239186012886098865e-09, -1.244902975411763922e-09, -1.250614629419867252e-09, -1.256320967585558474e-09, -1.262021982599622161e-09, -1.267717667165488825e-09, -1.273408013999257041e-09, -1.279093015832151001e-09, -1.284772665407505237e-09, -1.290446955483253603e-09, -1.296115878830262510e-09, -1.301779428232135916e-09, -1.307437596487592643e-09, -1.313090376407513963e-09, -1.318737760817705349e-09, -1.324379742555847483e-09, -1.330016314473997449e-09, -1.335647469438282878e-09, -1.341273200327326171e-09, -1.346893500034662763e-09, -1.352508361465494850e-09, -1.358117777540491044e-09, -1.363721741193129470e-09, -1.369320245369631797e-09, -1.374913283031441265e-09, -1.380500847152257242e-09, -1.386082930720460932e-09, -1.391659526737531944e-09, -1.397230628217720315e-09, -1.402796228190582852e-09, -1.408356319697921116e-09, -1.413910895796512774e-09, -1.419459949555204679e-09, -1.425003474057280053e-09, -1.430541462400211780e-09, -1.436073907694102345e-09, -1.441600803063988981e-09, -1.447122141647085637e-09, -1.452637916595022574e-09, -1.458148121073917500e-09, -1.463652748261753825e-09, -1.469151791352043824e-09, -1.474645243550699831e-09, -1.480133098078392530e-09, -1.485615348169020671e-09, -1.491091987069369649e-09, -1.496563008041561617e-09, -1.502028404360125194e-09, -1.507488169314660646e-09, -1.512942296206925518e-09, -1.518390778353210917e-09, -1.523833609084145887e-09, -1.529270781743022366e-09, -1.534702289688216758e-09, -1.540128126290331401e-09, -1.545548284934518123e-09, -1.550962759020505120e-09, -1.556371541959998369e-09, -1.561774627180298893e-09, -1.567172008121513088e-09, -1.572563678237523426e-09, -1.577949630997065231e-09, -1.583329859880885111e-09, -1.588704358385380345e-09, -1.594073120019988922e-09, -1.599436138307185816e-09, -1.604793406784907249e-09, -1.610144919003574286e-09, -1.615490668528518542e-09, -1.620830648937901827e-09, -1.626164853825032657e-09, -1.631493276795528207e-09, -1.636815911469667220e-09, -1.642132751482346993e-09, -1.647443790480345207e-09, -1.652749022127113229e-09, -1.658048440097432319e-09, -1.663342038081000490e-09, -1.668629809782203177e-09, -1.673911748917521467e-09, -1.679187849219131582e-09, -1.684458104432418988e-09, -1.689722508315862182e-09, -1.694981054643407730e-09, -1.700233737201675020e-09, -1.705480549792217563e-09, -1.710721486230031592e-09, -1.715956540343282260e-09, -1.721185705975658007e-09, -1.726408976983464256e-09, -1.731626347238265640e-09, -1.736837810623563835e-09, -1.742043361039612371e-09, -1.747242992398089383e-09, -1.752436698625683854e-09, -1.757624473663787282e-09, -1.762806311466068797e-09, -1.767982206001912518e-09, -1.773152151253945927e-09, -1.778316141217776215e-09, -1.783474169905545704e-09, -1.788626231340638516e-09, -1.793772319562438098e-09, -1.798912428623632273e-09, -1.804046552590138582e-09, -1.809174685543406536e-09, -1.814296821577663519e-09, -1.819412954802434588e-09, -1.824523079339766864e-09, -1.829627189326489395e-09, -1.834725278913964378e-09, -1.839817342266669371e-09, -1.844903373564316118e-09, -1.849983366999181651e-09, -1.855057316778362149e-09, -1.860125217123774592e-09, -1.865187062269399356e-09, -1.870242846465997003e-09, -1.875292563975734295e-09, -1.880336209076797795e-09, -1.885373776060717727e-09, -1.890405259232359712e-09, -1.895430652912172622e-09, -1.900449951433482880e-09, -1.905463149144630236e-09, -1.910470240407672402e-09, -1.915471219597948305e-09, -1.920466081106397081e-09, -1.925454819336843275e-09, -1.930437428708471348e-09, -1.935413903653088949e-09, -1.940384238617361548e-09, -1.945348428062553937e-09, -1.950306466463151323e-09, -1.955258348308923142e-09, -1.960204068102312481e-09, -1.965143620360647950e-09, -1.970076999616140384e-09, -1.975004200413423628e-09, -1.979925217312959214e-09, -1.984840044888697510e-09, -1.989748677727717065e-09, -1.994651110433697532e-09, -1.999547337621792384e-09, -2.004437353923273950e-09, -2.009321153982373171e-09, -2.014198732458695380e-09, -2.019070084024529896e-09, -2.023935203367141732e-09, -2.028794085188405150e-09, -2.033646724203417308e-09, -2.038493115142646034e-09, -2.043333252749348609e-09, -2.048167131781643027e-09, -2.052994747012561763e-09, -2.057816093227718708e-09, -2.062631165228537243e-09, -2.067439957829688874e-09, -2.072242465860055656e-09, -2.077038684163696753e-09, -2.081828607597191123e-09, -2.086612231032970640e-09, -2.091389549357036246e-09, -2.096160557468836776e-09, -2.100925250283479178e-09, -2.105683622729088155e-09, -2.110435669748974619e-09, -2.115181386299732350e-09, -2.119920767353361777e-09, -2.124653807894632932e-09, -2.129380502923337448e-09, -2.134100847454159102e-09, -2.138814836514357712e-09, -2.143522465147111360e-09, -2.148223728408882235e-09, -2.152918621370365823e-09, -2.157607139117430583e-09, -2.162289276748626068e-09, -2.166965029378320418e-09, -2.171634392134433888e-09, -2.176297360158451252e-09, -2.180953928607532359e-09, -2.185604092651896171e-09, -2.190247847476985495e-09, -2.194885188281997498e-09, -2.199516110279749289e-09, -2.204140608698671425e-09, -2.208758678780323473e-09, -2.213370315781692747e-09, -2.217975514972611847e-09, -2.222574271637943659e-09, -2.227166581077211192e-09, -2.231752438603374175e-09, -2.236331839544772521e-09, -2.240904779242411932e-09, -2.245471253053193628e-09, -2.250031256347613125e-09, -2.254584784509770169e-09, -2.259131832939389117e-09, -2.263672397049421361e-09, -2.268206472267945770e-09, -2.272734054036881186e-09, -2.277255137811760602e-09, -2.281769719063799944e-09, -2.286277793277338770e-09, -2.290779355952179953e-09, -2.295274402601013014e-09, -2.299762928751572233e-09, -2.304244929946291304e-09, -2.308720401741020790e-09, -2.313189339707035693e-09, -2.317651739428563833e-09, -2.322107596504813687e-09, -2.326556906549941712e-09, -2.330999665190677510e-09, -2.335435868070497368e-09, -2.339865510844685163e-09, -2.344288589184677128e-09, -2.348705098775524475e-09, -2.353115035315899187e-09, -2.357518394520155347e-09, -2.361915172115817411e-09, -2.366305363845899206e-09, -2.370688965466332221e-09, -2.375065972748045975e-09, -2.379436381476726886e-09, -2.383800187451492305e-09, -2.388157386486912558e-09, -2.392507974410474393e-09, -2.396851947064765159e-09, -2.401189300307258970e-09, -2.405520030008010946e-09, -2.409844132053844811e-09, -2.414161602343656163e-09, -2.418472436791575201e-09, -2.422776631326702436e-09, -2.427074181890959265e-09, -2.431365084442095189e-09, -2.435649334951529693e-09, -2.439926929404093755e-09, -2.444197863801223592e-09, -2.448462134156181620e-09, -2.452719736498350767e-09, -2.456970666870321137e-09, -2.461214921330163935e-09, -2.465452495948902773e-09, -2.469683386812563425e-09, -2.473907590022129985e-09, -2.478125101691220488e-09, -2.482335917950130589e-09, -2.486540034941287370e-09, -2.490737448822420342e-09, -2.494928155766128415e-09, -2.499112151957867781e-09, -2.503289433598932245e-09, -2.507459996904262851e-09, -2.511623838102327115e-09, -2.515780953438024082e-09, -2.519931339168190667e-09, -2.524074991565823172e-09, -2.528211906917481595e-09, -2.532342081523462505e-09, -2.536465511699656897e-09, -2.540582193775227877e-09, -2.544692124094516903e-09, -2.548795299015701268e-09, -2.552891714910789553e-09, -2.556981368167258617e-09, -2.561064255185883900e-09, -2.565140372382856181e-09, -2.569209716187161482e-09, -2.573272283043634194e-09, -2.577328069410732782e-09, -2.581377071760498434e-09, -2.585419286581327351e-09, -2.589454710373594964e-09, -2.593483339653766610e-09, -2.597505170951921361e-09, -2.601520200811849636e-09, -2.605528425792944550e-09, -2.609529842467806394e-09, -2.613524447424305218e-09, -2.617512237264093550e-09, -2.621493208602567113e-09, -2.625467358070669317e-09, -2.629434682312633470e-09, -2.633395177988028805e-09, -2.637348841769476228e-09, -2.641295670344612039e-09, -2.645235660415683031e-09, -2.649168808698510443e-09, -2.653095111924197262e-09, -2.657014566836722369e-09, -2.660927170195842702e-09, -2.664832918774966988e-09, -2.668731809361185519e-09, -2.672623838757197075e-09, -2.676509003778902649e-09, -2.680387301257337747e-09, -2.684258728037447741e-09, -2.688123280977831036e-09, -2.691980956952648611e-09, -2.695831752849282272e-09, -2.699675665570498973e-09, -2.703512692032105756e-09, -2.707342829164762517e-09, -2.711166073913916660e-09, -2.714982423238411780e-09, -2.718791874112430710e-09, -2.722594423523201333e-09, -2.726390068472907371e-09, -2.730178805978568858e-09, -2.733960633070060217e-09, -2.737735546792992565e-09, -2.741503544206408780e-09, -2.745264622383659481e-09, -2.749018778413152873e-09, -2.752766009396151129e-09, -2.756506312449663878e-09, -2.760239684703901307e-09, -2.763966123304349150e-09, -2.767685625409581618e-09, -2.771398188193013370e-09, -2.775103808842745658e-09, -2.778802484560288328e-09, -2.782494212562524383e-09, -2.786178990079290470e-09, -2.789856814355279403e-09, -2.793527682650105917e-09, -2.797191592236158073e-09, -2.800848540401551531e-09, -2.804498524447761742e-09, -2.808141541690575211e-09, -2.811777589460809556e-09, -2.815406665102137193e-09, -2.819028765973796012e-09, -2.822643889448757166e-09, -2.826252032913555092e-09, -2.829853193770175130e-09, -2.833447369433828414e-09, -2.837034557334802270e-09, -2.840614754916762016e-09, -2.844187959638575311e-09, -2.847754168972188777e-09, -2.851313380404320830e-09, -2.854865591436522473e-09, -2.858410799582937710e-09, -2.861949002374184670e-09, -2.865480197353022428e-09, -2.869004382077254820e-09, -2.872521554119437619e-09, -2.876031711065006217e-09, -2.879534850514913084e-09, -2.883030970083761652e-09, -2.886520067399702093e-09, -2.890002140106362779e-09, -2.893477185860464698e-09, -2.896945202333749612e-09, -2.900406187211722739e-09, -2.903860138193529093e-09, -2.907307052993603709e-09, -2.910746929339600792e-09, -2.914179764974363655e-09, -2.917605557653677263e-09, -2.921024305148130220e-09, -2.924436005242773967e-09, -2.927840655736152091e-09, -2.931238254441814888e-09, -2.934628799186243555e-09, -2.938012287811258941e-09, -2.941388718172455278e-09, -2.944758088138629014e-09, -2.948120395594721924e-09, -2.951475638437653770e-09, -2.954823814580061159e-09, -2.958164921948112133e-09, -2.961498958481501204e-09, -2.964825922135291074e-09, -2.968145810877612243e-09, -2.971458622691699530e-09, -2.974764355573760841e-09, -2.978063007534707629e-09, -2.981354576599892269e-09, -2.984639060808037683e-09, -2.987916458212950842e-09, -2.991186766881370449e-09, -2.994449984894681679e-09, -2.997706110348945130e-09, -3.000955141352805302e-09, -3.004197076031043746e-09, -3.007431912520657403e-09, -3.010659648973452642e-09, -3.013880283555922424e-09, -3.017093814447271408e-09, -3.020300239842111732e-09, -3.023499557948124162e-09, -3.026691766987877887e-09, -3.029876865197529777e-09, -3.033054850826800813e-09, -3.036225722140606040e-09, -3.039389477416887358e-09, -3.042546114948595446e-09, -3.045695633041602370e-09, -3.048838030016386140e-09, -3.051973304207957913e-09, -3.055101453963953693e-09, -3.058222477647931053e-09, -3.061336373635808543e-09, -3.064443140318102795e-09, -3.067542776099934313e-09, -3.070635279399154327e-09, -3.073720648648872239e-09, -3.076798882295693316e-09, -3.079869978799396092e-09, -3.082933936635692251e-09, -3.085990754292204880e-09, -3.089040430271963717e-09, -3.092082963091126686e-09, -3.095118351280667339e-09, -3.098146593384507504e-09, -3.101167687960992554e-09, -3.104181633582907542e-09, -3.107188428836159500e-09, -3.110188072321525687e-09, -3.113180562652720878e-09, -3.116165898457834596e-09, -3.119144078379500677e-09, -3.122115101073037362e-09, -3.125078965208847769e-09, -3.128035669470878443e-09, -3.130985212556169373e-09, -3.133927593177461677e-09, -3.136862810059479009e-09, -3.139790861942246627e-09, -3.142711747579201278e-09, -3.145625465737049757e-09, -3.148532015197596558e-09, -3.151431394755546471e-09, -3.154323603220181690e-09, -3.157208639414354719e-09, -3.160086502174245599e-09, -3.162957190350958360e-09, -3.165820702808571362e-09, -3.168677038425846662e-09, -3.171526196094364721e-09, -3.174368174720536520e-09, -3.177202973224060871e-09, -3.180030590538444297e-09, -3.182851025611679322e-09, -3.185664277404445768e-09, -3.188470344892347446e-09, -3.191269227064444745e-09, -3.194060922922971315e-09, -3.196845431485019455e-09, -3.199622751780669438e-09, -3.202392882854443698e-09, -3.205155823764305940e-09, -3.207911573581519278e-09, -3.210660131392178591e-09, -3.213401496295267055e-09, -3.216135667404355179e-09, -3.218862643845821122e-09, -3.221582424760304878e-09, -3.224295009302513473e-09, -3.227000396640233729e-09, -3.229698585955807950e-09, -3.232389576444254982e-09, -3.235073367315371669e-09, -3.237749957792266256e-09, -3.240419347111199989e-09, -3.243081534523206318e-09, -3.245736519292188384e-09, -3.248384300696347555e-09, -3.251024878027399680e-09, -3.253658250590144534e-09, -3.256284417704073864e-09, -3.258903378701587980e-09, -3.261515132929542177e-09, -3.264119679747491864e-09, -3.266717018529171156e-09, -3.269307148662219485e-09, -3.271890069547428871e-09, -3.274465780599949532e-09, -3.277034281247581763e-09, -3.279595570932326891e-09, -3.282149649110247078e-09, -3.284696515249921378e-09, -3.287236168834622058e-09, -3.289768609360757837e-09, -3.292293836338144381e-09, -3.294811849290949764e-09, -3.297322647755815944e-09, -3.299826231284040453e-09, -3.302322599439752048e-09, -3.304811751801426519e-09, -3.307293687960205034e-09, -3.309768407521242852e-09, -3.312235910103560023e-09, -3.314696195339095502e-09, -3.317149262874121217e-09, -3.319595112367573230e-09, -3.322033743492284651e-09, -3.324465155935132878e-09, -3.326889349395374891e-09, -3.329306323587319878e-09, -3.331716078237331944e-09, -3.334118613085905090e-09, -3.336513927887455598e-09, -3.338902022408826894e-09, -3.341282896431395970e-09, -3.343656549749639051e-09, -3.346022982170969049e-09, -3.348382193517211262e-09, -3.350734183622888208e-09, -3.353078952336548907e-09, -3.355416499519910267e-09, -3.357746825047722254e-09, -3.360069928808925945e-09, -3.362385810705351545e-09, -3.364694470652837976e-09, -3.366995908579483390e-09, -3.369290124428417052e-09, -3.371577118154726364e-09, -3.373856889727457814e-09, -3.376129439129423829e-09, -3.378394766355928091e-09, -3.380652871416592366e-09, -3.382903754333905212e-09, -3.385147415143238527e-09, -3.387383853894715733e-09, -3.389613070650204565e-09, -3.391835065486040970e-09, -3.394049838491592302e-09, -3.396257389768993447e-09, -3.398457719434569985e-09, -3.400650827617263660e-09, -3.402836714460051811e-09, -3.405015380118332725e-09, -3.407186824761208176e-09, -3.409351048571318402e-09, -3.411508051744171262e-09, -3.413657834489035181e-09, -3.415800397027590839e-09, -3.417935739595713753e-09, -3.420063862442089981e-09, -3.422184765828105704e-09, -3.424298450029751800e-09, -3.426404915334810195e-09, -3.428504162045258888e-09, -3.430596190475925715e-09, -3.432681000954448645e-09, -3.434758593822468987e-09, -3.436828969434108551e-09, -3.438892128157202977e-09, -3.440948070372616409e-09, -3.442996796473839079e-09, -3.445038306868360009e-09, -3.447072601976154098e-09, -3.449099682231038287e-09, -3.451119548079134242e-09, -3.453132199980083481e-09, -3.455137638407029178e-09, -3.457135863845287299e-09, -3.459126876794625066e-09, -3.461110677766583791e-09, -3.463087267286353267e-09, -3.465056645892623287e-09, -3.467018814136210939e-09, -3.468973772581872547e-09, -3.470921521806895804e-09, -3.472862062402053932e-09, -3.474795394970921184e-09, -3.476721520129694592e-09, -3.478640438508406195e-09, -3.480552150749475476e-09, -3.482456657508969985e-09, -3.484353959455118479e-09, -3.486244057269680326e-09, -3.488126951647560445e-09, -3.490002643296153356e-09, -3.491871132936448293e-09, -3.493732421301651946e-09, -3.495586509138329561e-09, -3.497433397206328007e-09, -3.499273086277632615e-09, -3.501105577137963226e-09, -3.502930870585639705e-09, -3.504748967431353234e-09, -3.506559868500011746e-09, -3.508363574628013128e-09, -3.510160086665600615e-09, -3.511949405475408608e-09, -3.513731531933480518e-09, -3.515506466927994497e-09, -3.517274211360347458e-09, -3.519034766145055395e-09, -3.520788132209000655e-09, -3.522534310492503961e-09, -3.524273301947909931e-09, -3.526005107540889067e-09, -3.527729728250198277e-09, -3.529447165066533583e-09, -3.531157418994283743e-09, -3.532860491050112871e-09, -3.534556382263442690e-09, -3.536245093676932295e-09, -3.537926626345288253e-09, -3.539600981336678665e-09, -3.541268159731671074e-09, -3.542928162623225013e-09, -3.544580991117772720e-09, -3.546226646333817479e-09, -3.547865129403094983e-09, -3.549496441469741190e-09, -3.551120583690320859e-09, -3.552737557234705604e-09, -3.554347363284898470e-09, -3.555950003036145251e-09, -3.557545477695362431e-09, -3.559133788483509539e-09, -3.560714936632872275e-09, -3.562288923388991082e-09, -3.563855750010286431e-09, -3.565415417766988037e-09, -3.566967927942729252e-09, -3.568513281833407618e-09, -3.570051480747178669e-09, -3.571582526005393537e-09, -3.573106418941550499e-09, -3.574623160902029107e-09, -3.576132753245550029e-09, -3.577635197343050567e-09, -3.579130494578709116e-09, -3.580618646348615883e-09, -3.582099654061984299e-09, -3.583573519139790715e-09, -3.585040243015953549e-09, -3.586499827136995385e-09, -3.587952272961535496e-09, -3.589397581961174928e-09, -3.590835755619350440e-09, -3.592266795432259706e-09, -3.593690702908817062e-09, -3.595107479569623252e-09, -3.596517126948816656e-09, -3.597919646591734440e-09, -3.599315040057043787e-09, -3.600703308915453146e-09, -3.602084454749687834e-09, -3.603458479155610861e-09, -3.604825383740762136e-09, -3.606185170125745643e-09, -3.607537839942759130e-09, -3.608883394836671511e-09, -3.610221836464931048e-09, -3.611553166496856461e-09, -3.612877386614593557e-09, -3.614194498511928645e-09, -3.615504503895402329e-09, -3.616807404483989393e-09, -3.618103202008176496e-09, -3.619391898211853100e-09, -3.620673494850063615e-09, -3.621947993690625772e-09, -3.623215396513758807e-09, -3.624475705111337347e-09, -3.625728921288081718e-09, -3.626975046860396171e-09, -3.628214083657337103e-09, -3.629446033519916560e-09, -3.630670898300976515e-09, -3.631888679866243107e-09, -3.633099380092941109e-09, -3.634303000871120320e-09, -3.635499544102251005e-09, -3.636689011700237609e-09, -3.637871405591444400e-09, -3.639046727713520041e-09, -3.640214980017270746e-09, -3.641376164464650641e-09, -3.642530283030114206e-09, -3.643677337700399138e-09, -3.644817330473666914e-09, -3.645950263360780781e-09, -3.647076138384385935e-09, -3.648194957578720092e-09, -3.649306722991062713e-09, -3.650411436679562000e-09, -3.651509100715247008e-09, -3.652599717180742213e-09, -3.653683288170415985e-09, -3.654759815791150698e-09, -3.655829302161337290e-09, -3.656891749411663150e-09, -3.657947159684365593e-09, -3.658995535134169877e-09, -3.660036877927066222e-09, -3.661071190241254030e-09, -3.662098474267072409e-09, -3.663118732206189532e-09, -3.664131966272704854e-09, -3.665138178692301671e-09, -3.666137371702288884e-09, -3.667129547552587007e-09, -3.668114708504008453e-09, -3.669092856829896182e-09, -3.670063994815165409e-09, -3.671028124756218407e-09, -3.671985248961842411e-09, -3.672935369752089615e-09, -3.673878489459229257e-09, -3.674814610427089182e-09, -3.675743735010914811e-09, -3.676665865578276969e-09, -3.677581004508045768e-09, -3.678489154191217374e-09, -3.679390317029960269e-09, -3.680284495438493714e-09, -3.681171691842816851e-09, -3.682051908680252509e-09, -3.682925148400271494e-09, -3.683791413463367618e-09, -3.684650706342247189e-09, -3.685503029521094474e-09, -3.686348385495292523e-09, -3.687186776772602732e-09, -3.688018205871736299e-09, -3.688842675323410949e-09, -3.689660187669784314e-09, -3.690470745464280229e-09, -3.691274351272440308e-09, -3.692071007670842824e-09, -3.692860717248191690e-09, -3.693643482604047978e-09, -3.694419306349825432e-09, -3.695188191108564645e-09, -3.695950139514507065e-09, -3.696705154213758803e-09, -3.697453237863391904e-09, -3.698194393132277732e-09, -3.698928622700895474e-09, -3.699655929260614153e-09, -3.700376315514764235e-09, -3.701089784177783567e-09, -3.701796337975720719e-09, -3.702495979645978139e-09, -3.703188711936939927e-09, -3.703874537609091009e-09, -3.704553459433649390e-09, -3.705225480193665482e-09, -3.705890602683074980e-09, -3.706548829707336618e-09, -3.707200164083429277e-09, -3.707844608639234074e-09, -3.708482166214489350e-09, -3.709112839659581327e-09, -3.709736631836484200e-09, -3.710353545618627376e-09, -3.710963583890189887e-09, -3.711566749547086389e-09, -3.712163045496189201e-09, -3.712752474655511936e-09, -3.713335039954737660e-09, -3.713910744334050081e-09, -3.714479590745421059e-09, -3.715041582151730071e-09, -3.715596721526832039e-09, -3.716145011856135532e-09, -3.716686456135813219e-09, -3.717221057373545919e-09, -3.717748818587743812e-09, -3.718269742808288832e-09, -3.718783833075758358e-09, -3.719291092441981492e-09, -3.719791523970118886e-09, -3.720285130733722232e-09, -3.720771915818348510e-09, -3.721251882319702551e-09, -3.721725033344879049e-09, -3.722191372012152872e-09, -3.722650901450348335e-09, -3.723103624799723044e-09, -3.723549545211340892e-09, -3.723988665846936817e-09, -3.724420989879784510e-09, -3.724846520493578901e-09, -3.725265260883306759e-09, -3.725677214254687937e-09, -3.726082383824185708e-09, -3.726480772819524171e-09, -3.726872384478967358e-09, -3.727257222052071145e-09, -3.727635288798627767e-09, -3.728006587990008333e-09, -3.728371122907796325e-09, -3.728728896844622222e-09, -3.729079913104162672e-09, -3.729424175000391068e-09, -3.729761685858527977e-09, -3.730092449014454671e-09, -3.730416467814471588e-09, -3.730733745616279370e-09, -3.731044285787645445e-09, -3.731348091707539751e-09, -3.731645166765473813e-09, -3.731935514361470143e-09, -3.732219137906647051e-09, -3.732496040822485766e-09, -3.732766226541357353e-09, -3.733029698506047903e-09, -3.733286460170038129e-09, -3.733536514997672933e-09, -3.733779866463586516e-09, -3.734016518053429471e-09, -3.734246473262991972e-09, -3.734469735598832428e-09, -3.734686308578303129e-09, -3.734896195728790894e-09, -3.735099400588925579e-09, -3.735295926707173873e-09, -3.735485777642999830e-09, -3.735668956966281710e-09, -3.735845468257133305e-09, -3.736015315106507780e-09, -3.736178501115575638e-09, -3.736335029896160638e-09, -3.736484905070438707e-09, -3.736628130270848600e-09, -3.736764709140615509e-09, -3.736894645333092624e-09, -3.737017942512226837e-09, -3.737134604352120337e-09, -3.737244634537374716e-09, -3.737348036763097588e-09, -3.737444814734348376e-09, -3.737534972167034150e-09, -3.737618512787018753e-09, -3.737695440330517365e-09, -3.737765758544296684e-09, -3.737829471184986708e-09, -3.737886582019911227e-09, -3.737937094826450066e-09, -3.737981013392001031e-09, -3.738018341514896434e-09, -3.738049083002876934e-09, -3.738073241674466321e-09, -3.738090821358081462e-09, -3.738101825892561700e-09, -3.738106259126656005e-09, -3.738104124919340602e-09, -3.738095427140014199e-09, -3.738080169667836228e-09, -3.738058356392425826e-09, -3.738029991213169475e-09, -3.737995078039723106e-09, -3.737953620791997206e-09, -3.737905623399605920e-09, -3.737851089802504805e-09, -3.737790023950717031e-09, -3.737722429803940475e-09, -3.737648311332455133e-09, -3.737567672515981616e-09, -3.737480517344663837e-09, -3.737386849818437044e-09, -3.737286673947050159e-09, -3.737179993750636527e-09, -3.737066813258890047e-09, -3.736947136511645026e-09, -3.736820967558512217e-09, -3.736688310459192325e-09, -3.736549169283050003e-09, -3.736403548109425704e-09, -3.736251451027634024e-09, -3.736092882136709759e-09, -3.735927845545594846e-09, -3.735756345373038278e-09, -3.735578385747567146e-09, -3.735393970807646293e-09, -3.735203104701287878e-09, -3.735005791586486476e-09, -3.734802035631042062e-09, -3.734591841012210112e-09, -3.734375211917301309e-09, -3.734152152543156285e-09, -3.733922667096475663e-09, -3.733686759793552882e-09, -3.733444434860243586e-09, -3.733195696532406518e-09, -3.732940549055269893e-09, -3.732678996683902066e-09, -3.732411043682796290e-09, -3.732136694326199930e-09, -3.731855952898022650e-09, -3.731568823691591563e-09, -3.731275311010002786e-09, -3.730975419165741763e-09, -3.730669152481001729e-09, -3.730356515287490153e-09, -3.730037511926221110e-09, -3.729712146748054606e-09, -3.729380424113119208e-09, -3.729042348391114789e-09, -3.728697923961313355e-09, -3.728347155212167791e-09, -3.727990046541857796e-09, -3.727626602357839077e-09, -3.727256827077140299e-09, -3.726880725125971832e-09, -3.726498300940079786e-09, -3.726109558964575606e-09, -3.725714503653950143e-09, -3.725313139472110041e-09, -3.724905470892121731e-09, -3.724491502396458754e-09, -3.724071238477044776e-09, -3.723644683634836275e-09, -3.723211842380282043e-09, -3.722772719233087432e-09, -3.722327318722200301e-09, -3.721875645385767581e-09, -3.721417703771124114e-09, -3.720953498434961808e-09, -3.720483033943046743e-09, -3.720006314870466083e-09, -3.719523345801414665e-09, -3.719034131329192930e-09, -3.718538676056390555e-09, -3.718036984594583298e-09, -3.717529061564627880e-09, -3.717014911596349315e-09, -3.716494539328729093e-09, -3.715967949409850586e-09, -3.715435146496822534e-09, -3.714896135255930004e-09, -3.714350920362303520e-09, -3.713799506500222636e-09, -3.713241898363043561e-09, -3.712678100652922049e-09, -3.712108118081154201e-09, -3.711531955368089196e-09, -3.710949617242807103e-09, -3.710361108443507661e-09, -3.709766433717242678e-09, -3.709165597820035565e-09, -3.708558605516743608e-09, -3.707945461581250703e-09, -3.707326170796115800e-09, -3.706700737952940175e-09, -3.706069167852134165e-09, -3.705431465302828243e-09, -3.704787635123202653e-09, -3.704137682139995650e-09, -3.703481611188882346e-09, -3.702819427114287772e-09, -3.702151134769407968e-09, -3.701476739016235211e-09, -3.700796244725453794e-09, -3.700109656776376744e-09, -3.699416980057248570e-09, -3.698718219464813063e-09, -3.698013379904594120e-09, -3.697302466290826680e-09, -3.696585483546247030e-09, -3.695862436602424917e-09, -3.695133330399359475e-09, -3.694398169885862618e-09, -3.693656960019196323e-09, -3.692909705765240138e-09, -3.692156412098455606e-09, -3.691397084001948722e-09, -3.690631726467298708e-09, -3.689860344494522854e-09, -3.689082943092289929e-09, -3.688299527277739450e-09, -3.687510102076422118e-09, -3.686714672522445402e-09, -3.685913243658362288e-09, -3.685105820535184509e-09, -3.684292408212329195e-09, -3.683473011757566758e-09, -3.682647636247180542e-09, -3.681816286765793108e-09, -3.680978968406432003e-09, -3.680135686270397407e-09, -3.679286445467444937e-09, -3.678431251115635521e-09, -3.677570108341304372e-09, -3.676703022279131302e-09, -3.675829998072032360e-09, -3.674951040871263231e-09, -3.674066155836302600e-09, -3.673175348134900961e-09, -3.672278622943051248e-09, -3.671375985444911081e-09, -3.670467440832906991e-09, -3.669552994307602071e-09, -3.668632651077729478e-09, -3.667706416360217659e-09, -3.666774295380202349e-09, -3.665836293370844175e-09, -3.664892415573460591e-09, -3.663942667237477077e-09, -3.662987053620435408e-09, -3.662025579987888190e-09, -3.661058251613514252e-09, -3.660085073778970579e-09, -3.659106051774077188e-09, -3.658121190896535060e-09, -3.657130496452089920e-09, -3.656133973754526863e-09, -3.655131628125548342e-09, -3.654123464894817596e-09, -3.653109489399937970e-09, -3.652089706986555490e-09, -3.651064123008098706e-09, -3.650032742825972673e-09, -3.648995571809431976e-09, -3.647952615335624571e-09, -3.646903878789538019e-09, -3.645849367564054492e-09, -3.644789087059807258e-09, -3.643723042685366383e-09, -3.642651239856983131e-09, -3.641573683998768639e-09, -3.640490380542585551e-09, -3.639401334928031478e-09, -3.638306552602473325e-09, -3.637206039020979875e-09, -3.636099799646424361e-09, -3.634987839949297934e-09, -3.633870165407788664e-09, -3.632746781507747204e-09, -3.631617693742694244e-09, -3.630482907613818848e-09, -3.629342428629867205e-09, -3.628196262307314263e-09, -3.627044414170117650e-09, -3.625886889749886824e-09, -3.624723694585763551e-09, -3.623554834224474432e-09, -3.622380314220278372e-09, -3.621200140134924810e-09, -3.620014317537665301e-09, -3.618822852005382968e-09, -3.617625749122309606e-09, -3.616423014480135697e-09, -3.615214653678096854e-09, -3.614000672322794315e-09, -3.612781076028247477e-09, -3.611555870415905474e-09, -3.610325061114699286e-09, -3.609088653760777459e-09, -3.607846653997746398e-09, -3.606599067476551671e-09, -3.605345899855442020e-09, -3.604087156800051257e-09, -3.602822843983258057e-09, -3.601552967085199189e-09, -3.600277531793408072e-09, -3.598996543802587299e-09, -3.597710008814707486e-09, -3.596417932538969220e-09, -3.595120320691807199e-09, -3.593817178996791377e-09, -3.592508513184712996e-09, -3.591194328993655312e-09, -3.589874632168671813e-09, -3.588549428462082359e-09, -3.587218723633262246e-09, -3.585882523448745604e-09, -3.584540833682120347e-09, -3.583193660114064565e-09, -3.581841008532449101e-09, -3.580482884732012461e-09, -3.579119294514666463e-09, -3.577750243689218718e-09, -3.576375738071624502e-09, -3.574995783484762180e-09, -3.573610385758460501e-09, -3.572219550729551542e-09, -3.570823284241841336e-09, -3.569421592146055285e-09, -3.568014480299827813e-09, -3.566601954567648608e-09, -3.565184020820967666e-09, -3.563760684938068736e-09, -3.562331952804087934e-09, -3.560897830311136986e-09, -3.559458323357964091e-09, -3.558013437850252115e-09, -3.556563179700422552e-09, -3.555107554827728580e-09, -3.553646569158176480e-09, -3.552180228624497925e-09, -3.550708539166194234e-09, -3.549231506729546710e-09, -3.547749137267477679e-09, -3.546261436739545936e-09, -3.544768411112121692e-09, -3.543270066358189297e-09, -3.541766408457319527e-09, -3.540257443395789936e-09, -3.538743177166486426e-09, -3.537223615768927232e-09, -3.535698765209166557e-09, -3.534168631499816905e-09, -3.532633220660184741e-09, -3.531092538715885848e-09, -3.529546591699238654e-09, -3.527995385649146358e-09, -3.526438926610784258e-09, -3.524877220636035670e-09, -3.523310273783069244e-09, -3.521738092116612345e-09, -3.520160681707892323e-09, -3.518578048634308122e-09, -3.516990198979968362e-09, -3.515397138835219432e-09, -3.513798874296815475e-09, -3.512195411467822851e-09, -3.510586756457750828e-09, -3.508972915382416754e-09, -3.507353894363869129e-09, -3.505729699530549317e-09, -3.504100337017177397e-09, -3.502465812964717422e-09, -3.500826133520467994e-09, -3.499181304837795083e-09, -3.497531333076500125e-09, -3.495876224402449445e-09, -3.494215984987694198e-09, -3.492550621010737131e-09, -3.490880138655827005e-09, -3.489204544113728694e-09, -3.487523843581092876e-09, -3.485838043260814616e-09, -3.484147149361949406e-09, -3.482451168099448468e-09, -3.480750105694527677e-09, -3.479043968374383422e-09, -3.477332762372219080e-09, -3.475616493927422442e-09, -3.473895169285180664e-09, -3.472168794696866557e-09, -3.470437376419651882e-09, -3.468700920716876273e-09, -3.466959433857720086e-09, -3.465212922117326408e-09, -3.463461391776767970e-09, -3.461704849122948714e-09, -3.459943300448828370e-09, -3.458176752053079178e-09, -3.456405210240303850e-09, -3.454628681320960293e-09, -3.452847171611383124e-09, -3.451060687433648001e-09, -3.449269235115593967e-09, -3.447472820990924775e-09, -3.445671451399168355e-09, -3.443865132685462164e-09, -3.442053871200758737e-09, -3.440237673301735942e-09, -3.438416545350817655e-09, -3.436590493716102213e-09, -3.434759524771256943e-09, -3.432923644895794035e-09, -3.431082860474656943e-09, -3.429237177898662104e-09, -3.427386603564088658e-09, -3.425531143872836022e-09, -3.423670805232495029e-09, -3.421805594056060483e-09, -3.419935516762238458e-09, -3.418060579775093088e-09, -3.416180789524386128e-09, -3.414296152445333351e-09, -3.412406674978678160e-09, -3.410512363570574549e-09, -3.408613224672625978e-09, -3.406709264741975120e-09, -3.404800490241218667e-09, -3.402886907638190601e-09, -3.400968523406275289e-09, -3.399045344024201509e-09, -3.397117375976131792e-09, -3.395184625751554881e-09, -3.393247099845144291e-09, -3.391304804757206634e-09, -3.389357746993052140e-09, -3.387405933063478138e-09, -3.385449369484482032e-09, -3.383488062777329536e-09, -3.381522019468651047e-09, -3.379551246090111181e-09, -3.377575749178754122e-09, -3.375595535276663242e-09, -3.373610610931312233e-09, -3.371620982695225552e-09, -3.369626657126083886e-09, -3.367627640786789915e-09, -3.365623940245165146e-09, -3.363615562074431751e-09, -3.361602512852741068e-09, -3.359584799163237714e-09, -3.357562427594389210e-09, -3.355535404739402413e-09, -3.353503737196782266e-09, -3.351467431569962887e-09, -3.349426494467211191e-09, -3.347380932502122382e-09, -3.345330752292916014e-09, -3.343275960462943472e-09, -3.341216563640544450e-09, -3.339152568458879868e-09, -3.337083981556083655e-09, -3.335010809575081594e-09, -3.332933059163729470e-09, -3.330850736974921420e-09, -3.328763849666088670e-09, -3.326672403899719414e-09, -3.324576406342970451e-09, -3.322475863668090707e-09, -3.320370782551601081e-09, -3.318261169675281686e-09, -3.316147031725518790e-09, -3.314028375393196458e-09, -3.311905207374376075e-09, -3.309777534369331859e-09, -3.307645363083415261e-09, -3.305508700226607465e-09, -3.303367552513229455e-09, -3.301221926662661253e-09, -3.299071829398625164e-09, -3.296917267449562975e-09, -3.294758247548606998e-09, -3.292594776433339364e-09, -3.290426860845994269e-09, -3.288254507533194513e-09, -3.286077723246356823e-09, -3.283896514741316312e-09, -3.281710888778269401e-09, -3.279520852122107589e-09, -3.277326411542025783e-09, -3.275127573811954083e-09, -3.272924345709913000e-09, -3.270716734018542020e-09, -3.268504745525067346e-09, -3.266288387020629811e-09, -3.264067665301288668e-09, -3.261842587167034756e-09, -3.259613159422521734e-09, -3.257379388876685985e-09, -3.255141282342603521e-09, -3.252898846637882061e-09, -3.250652088584186644e-09, -3.248401015007601939e-09, -3.246145632738556549e-09, -3.243885948611558321e-09, -3.241621969465450770e-09, -3.239353702143099160e-09, -3.237081153491858281e-09, -3.234804330363134865e-09, -3.232523239612298667e-09, -3.230237888099351241e-09, -3.227948282687740588e-09, -3.225654430245728071e-09, -3.223356337645379674e-09, -3.221054011762618523e-09, -3.218747459477934606e-09, -3.216436687675445100e-09, -3.214121703243566453e-09, -3.211802513074517662e-09, -3.209479124064719801e-09, -3.207151543114685181e-09, -3.204819777128557849e-09, -3.202483833014778225e-09, -3.200143717685402340e-09, -3.197799438056791283e-09, -3.195451001049047897e-09, -3.193098413586081709e-09, -3.190741682595901340e-09, -3.188380815010092965e-09, -3.186015817764436155e-09, -3.183646697798411697e-09, -3.181273462055101925e-09, -3.178896117481864868e-09, -3.176514671029350321e-09, -3.174129129652298486e-09, -3.171739500309386120e-09, -3.169345789962363781e-09, -3.166948005577485198e-09, -3.164546154124192056e-09, -3.162140242575914290e-09, -3.159730277909455904e-09, -3.157316267105742332e-09, -3.154898217149090446e-09, -3.152476135027330982e-09, -3.150050027732184907e-09, -3.147619902258686459e-09, -3.145185765605823800e-09, -3.142747624775950890e-09, -3.140305486774794104e-09, -3.137859358612143755e-09, -3.135409247300803576e-09, -3.132955159857341797e-09, -3.130497103301847960e-09, -3.128035084657676070e-09, -3.125569110952004191e-09, -3.123099189215067234e-09, -3.120625326480808357e-09, -3.118147529786654393e-09, -3.115665806173122519e-09, -3.113180162684412521e-09, -3.110690606367850929e-09, -3.108197144274297160e-09, -3.105699783458019441e-09, -3.103198530976425980e-09, -3.100693393890418994e-09, -3.098184379263883512e-09, -3.095671494164494293e-09, -3.093154745662681849e-09, -3.090634140832420330e-09, -3.088109686750937604e-09, -3.085581390498352535e-09, -3.083049259158558825e-09, -3.080513299818091364e-09, -3.077973519566857457e-09, -3.075429925498152541e-09, -3.072882524708037317e-09, -3.070331324295954004e-09, -3.067776331364232502e-09, -3.065217553018513922e-09, -3.062654996367601267e-09, -3.060088668523014833e-09, -3.057518576599641124e-09, -3.054944727715066563e-09, -3.052367128990340979e-09, -3.049785787549282359e-09, -3.047200710518505803e-09, -3.044611905028027776e-09, -3.042019378210317750e-09, -3.039423137201272203e-09, -3.036823189139519792e-09, -3.034219541166360140e-09, -3.031612200426482243e-09, -3.029001174066942902e-09, -3.026386469238104743e-09, -3.023768093092793324e-09, -3.021146052786867062e-09, -3.018520355479211024e-09, -3.015891008331048308e-09, -3.013258018506797406e-09, -3.010621393173203258e-09, -3.007981139500343929e-09, -3.005337264660720707e-09, -3.002689775829435951e-09, -3.000038680184573593e-09, -2.997383984906564275e-09, -2.994725697179000539e-09, -2.992063824187826185e-09, -2.989398373121457873e-09, -2.986729351171627185e-09, -2.984056765531717999e-09, -2.981380623398535000e-09, -2.978700931971181604e-09, -2.976017698451086434e-09, -2.973330930042752329e-09, -2.970640633952683493e-09, -2.967946817390370250e-09, -2.965249487567334481e-09, -2.962548651698112312e-09, -2.959844316999464986e-09, -2.957136490690450825e-09, -2.954425179992902104e-09, -2.951710392130711601e-09, -2.948992134330606433e-09, -2.946270413821570261e-09, -2.943545237834667521e-09, -2.940816613603964489e-09, -2.938084548365031253e-09, -2.935349049356589874e-09, -2.932610123819352195e-09, -2.929867778996048380e-09, -2.927122022132387270e-09, -2.924372860475707668e-09, -2.921620301275872102e-09, -2.918864351785292057e-09, -2.916105019257830723e-09, -2.913342310950470998e-09, -2.910576234121697943e-09, -2.907806796032520759e-09, -2.905034003946288327e-09, -2.902257865128021675e-09, -2.899478386845306091e-09, -2.896695576367465594e-09, -2.893909440966570033e-09, -2.891119987915864677e-09, -2.888327224491482899e-09, -2.885531157971412194e-09, -2.882731795635324201e-09, -2.879929144765516855e-09, -2.877123212645748890e-09, -2.874314006562045106e-09, -2.871501533802738960e-09, -2.868685801657248759e-09, -2.865866817417992165e-09, -2.863044588378572604e-09, -2.860219121834790908e-09, -2.857390425084594857e-09, -2.854558505427339261e-09, -2.851723370164704968e-09, -2.848885026599879945e-09, -2.846043482038018367e-09, -2.843198743786492497e-09, -2.840350819153896340e-09, -2.837499715451071768e-09, -2.834645439990205646e-09, -2.831788000085879114e-09, -2.828927403053849564e-09, -2.826063656211822809e-09, -2.823196766879667743e-09, -2.820326742378017159e-09, -2.817453590030205836e-09, -2.814577317160542144e-09, -2.811697931095244828e-09, -2.808815439162466994e-09, -2.805929848691456107e-09, -2.803041167013611545e-09, -2.800149401461464266e-09, -2.797254559369367095e-09, -2.794356648073530705e-09, -2.791455674911184027e-09, -2.788551647221525511e-09, -2.785644572344860785e-09, -2.782734457623528278e-09, -2.779821310401187422e-09, -2.776905138022687136e-09, -2.773985947834751146e-09, -2.771063747185135911e-09, -2.768138543423535974e-09, -2.765210343900845291e-09, -2.762279155969038115e-09, -2.759344986982208350e-09, -2.756407844295109576e-09, -2.753467735264366869e-09, -2.750524667247571452e-09, -2.747578647603820018e-09, -2.744629683693816058e-09, -2.741677782879040610e-09, -2.738722952522669608e-09, -2.735765199988781440e-09, -2.732804532643177096e-09, -2.729840957852684098e-09, -2.726874482985136648e-09, -2.723905115409987738e-09, -2.720932862497412077e-09, -2.717957731619273062e-09, -2.714979730148442424e-09, -2.711998865458588055e-09, -2.709015144925181102e-09, -2.706028575924148899e-09, -2.703039165832919702e-09, -2.700046922030033498e-09, -2.697051851894666373e-09, -2.694053962807851435e-09, -2.691053262150894764e-09, -2.688049757306436679e-09, -2.685043455658436439e-09, -2.682034364591309909e-09, -2.679022491490914727e-09, -2.676007843743692521e-09, -2.672990428737403448e-09, -2.669970253860394545e-09, -2.666947326502382249e-09, -2.663921654053776588e-09, -2.660893243905583988e-09, -2.657862103450351497e-09, -2.654828240080839162e-09, -2.651791661191030431e-09, -2.648752374175815344e-09, -2.645710386430456995e-09, -2.642665705351721054e-09, -2.639618338336475763e-09, -2.636568292782676690e-09, -2.633515576089351430e-09, -2.630460195655663651e-09, -2.627402158882000831e-09, -2.624341473169160734e-09, -2.621278145918726943e-09, -2.618212184533320738e-09, -2.615143596415666799e-09, -2.612072388969606913e-09, -2.608998569599172704e-09, -2.605922145709766847e-09, -2.602843124706405314e-09, -2.599761513995611195e-09, -2.596677320984149947e-09, -2.593590553079027737e-09, -2.590501217688538237e-09, -2.587409322220802237e-09, -2.584314874084722631e-09, -2.581217880690127509e-09, -2.578118349446660918e-09, -2.575016287764952486e-09, -2.571911703055733176e-09, -2.568804602730354332e-09, -2.565694994200943609e-09, -2.562582884879428484e-09, -2.559468282178609523e-09, -2.556351193511283156e-09, -2.553231626291156954e-09, -2.550109587931998455e-09, -2.546985085847757180e-09, -2.543858127453107674e-09, -2.540728720162506930e-09, -2.537596871391375197e-09, -2.534462588555140992e-09, -2.531325879069133161e-09, -2.528186750349813783e-09, -2.525045209812734214e-09, -2.521901264874839609e-09, -2.518754922952453082e-09, -2.515606191462398193e-09, -2.512455077821981986e-09, -2.509301589448176501e-09, -2.506145733758504264e-09, -2.502987518170283488e-09, -2.499826950101138856e-09, -2.496664036969155378e-09, -2.493498786191877501e-09, -2.490331205187400160e-09, -2.487161301373537876e-09, -2.483989082168617610e-09, -2.480814554990760767e-09, -2.477637727257819918e-09, -2.474458606388466130e-09, -2.471277199800251296e-09, -2.468093514911697588e-09, -2.464907559141003755e-09, -2.461719339905897877e-09, -2.458528864624808243e-09, -2.455336140715361605e-09, -2.452141175595644213e-09, -2.448943976683186452e-09, -2.445744551395643610e-09, -2.442542907150798778e-09, -2.439339051365774952e-09, -2.436132991457944112e-09, -2.432924734844033865e-09, -2.429714288941205260e-09, -2.426501661166068856e-09, -2.423286858934878698e-09, -2.420069889663978581e-09, -2.416850760769051382e-09, -2.413629479666088102e-09, -2.410406053770480864e-09, -2.407180490497041111e-09, -2.403952797261000078e-09, -2.400722981476545928e-09, -2.397491050557842006e-09, -2.394257011919078129e-09, -2.391020872973166118e-09, -2.387782641133651829e-09, -2.384542323812945399e-09, -2.381299928423301041e-09, -2.378055462376911758e-09, -2.374808933084900179e-09, -2.371560347958425330e-09, -2.368309714407867862e-09, -2.365057039843450017e-09, -2.361802331674416313e-09, -2.358545597310134515e-09, -2.355286844159154310e-09, -2.352026079629147743e-09, -2.348763311127949816e-09, -2.345498546062227135e-09, -2.342231791838331982e-09, -2.338963055862146383e-09, -2.335692345538430709e-09, -2.332419668272133928e-09, -2.329145031466807073e-09, -2.325868442525661617e-09, -2.322589908851579405e-09, -2.319309437846156840e-09, -2.316027036910803800e-09, -2.312742713445775001e-09, -2.309456474850862766e-09, -2.306168328525433837e-09, -2.302878281867465288e-09, -2.299586342274677355e-09, -2.296292517143571011e-09, -2.292996813870414791e-09, -2.289699239850397757e-09, -2.286399802477651424e-09, -2.283098509145899503e-09, -2.279795367247528159e-09, -2.276490384174767628e-09, -2.273183567318243006e-09, -2.269874924068033035e-09, -2.266564461813653146e-09, -2.263252187942980127e-09, -2.259938109843560719e-09, -2.256622234901554070e-09, -2.253304570502365349e-09, -2.249985124030767350e-09, -2.246663902869922757e-09, -2.243340914402507872e-09, -2.240016166009614534e-09, -2.236689665072021079e-09, -2.233361418969096328e-09, -2.230031435078951788e-09, -2.226699720779030602e-09, -2.223366283445234050e-09, -2.220031130452942290e-09, -2.216694269176137954e-09, -2.213355706987303998e-09, -2.210015451258619390e-09, -2.206673509360277450e-09, -2.203329888661908187e-09, -2.199984596531445064e-09, -2.196637640335969134e-09, -2.193289027441593234e-09, -2.189938765212564497e-09, -2.186586861012450527e-09, -2.183233322203012363e-09, -2.179878156145422921e-09, -2.176521370199226812e-09, -2.173162971722500813e-09, -2.169802968072427935e-09, -2.166441366604290326e-09, -2.163078174672765051e-09, -2.159713399630808642e-09, -2.156347048829691421e-09, -2.152979129620222558e-09, -2.149609649350530742e-09, -2.146238615368579229e-09, -2.142866035020386571e-09, -2.139491915650192470e-09, -2.136116264601647674e-09, -2.132739089216093443e-09, -2.129360396833783295e-09, -2.125980194793792015e-09, -2.122598490433092108e-09, -2.119215291087632445e-09, -2.115830604091418848e-09, -2.112444436777365675e-09, -2.109056796476270114e-09, -2.105667690518053370e-09, -2.102277126230700219e-09, -2.098885110940301604e-09, -2.095491651972242058e-09, -2.092096756648974173e-09, -2.088700432292542324e-09, -2.085302686222838980e-09, -2.081903525757764757e-09, -2.078502958214360415e-09, -2.075100990907126445e-09, -2.071697631149331665e-09, -2.068292886252865570e-09, -2.064886763526794486e-09, -2.061479270279689260e-09, -2.058070413817482858e-09, -2.054660201444623457e-09, -2.051248640464180326e-09, -2.047835738176758148e-09, -2.044421501881666653e-09, -2.041005938875839084e-09, -2.037589056455322773e-09, -2.034170861913004806e-09, -2.030751362541103083e-09, -2.027330565629500372e-09, -2.023908478465772433e-09, -2.020485108336555351e-09, -2.017060462525609516e-09, -2.013634548315187782e-09, -2.010207372986064417e-09, -2.006778943815863787e-09, -2.003349268081562160e-09, -1.999918353057163331e-09, -1.996486206015146187e-09, -1.993052834226210766e-09, -1.989618244958390272e-09, -1.986182445478271585e-09, -1.982745443049889734e-09, -1.979307244935494277e-09, -1.975867858395575774e-09, -1.972427290687903359e-09, -1.968985549068661703e-09, -1.965542640791356239e-09, -1.962098573108079573e-09, -1.958653353268444014e-09, -1.955206988519509188e-09, -1.951759486107175429e-09, -1.948310853273799431e-09, -1.944861097260925179e-09, -1.941410225306885133e-09, -1.937958244648165069e-09, -1.934505162519383820e-09, -1.931050986152192706e-09, -1.927595722776584137e-09, -1.924139379619782776e-09, -1.920681963907028054e-09, -1.917223482861589056e-09, -1.913763943703677195e-09, -1.910303353651817677e-09, -1.906841719921600456e-09, -1.903379049726957817e-09, -1.899915350279121714e-09, -1.896450628786748259e-09, -1.892984892456523635e-09, -1.889518148492154935e-09, -1.886050404095665109e-09, -1.882581666466301092e-09, -1.879111942800467212e-09, -1.875641240293012695e-09, -1.872169566135437517e-09, -1.868696927517155914e-09, -1.865223331625587792e-09, -1.861748785644384009e-09, -1.858273296756059287e-09, -1.854796872139612628e-09, -1.851319518972109497e-09, -1.847841244427429472e-09, -1.844362055677693754e-09, -1.840881959892002886e-09, -1.837400964236659265e-09, -1.833919075875810071e-09, -1.830436301970406669e-09, -1.826952649679511767e-09, -1.823468126159149009e-09, -1.819982738562305254e-09, -1.816496494040238551e-09, -1.813009399740573560e-09, -1.809521462808799989e-09, -1.806032690387639176e-09, -1.802543089616644566e-09, -1.799052667633506381e-09, -1.795561431572242779e-09, -1.792069388564589521e-09, -1.788576545739805582e-09, -1.785082910223633799e-09, -1.781588489139686607e-09, -1.778093289608196993e-09, -1.774597318747151321e-09, -1.771100583671012373e-09, -1.767603091492229988e-09, -1.764104849319964100e-09, -1.760605864260116998e-09, -1.757106143416623317e-09, -1.753605693889631891e-09, -1.750104522776887977e-09, -1.746602637173208195e-09, -1.743100044169956104e-09, -1.739596750856505270e-09, -1.736092764318308423e-09, -1.732588091638281332e-09, -1.729082739896692166e-09, -1.725576716170092987e-09, -1.722070027532655021e-09, -1.718562681054978145e-09, -1.715054683804981342e-09, -1.711546042847838390e-09, -1.708036765244922172e-09, -1.704526858055199923e-09, -1.701016328333894230e-09, -1.697505183133907028e-09, -1.693993429504666296e-09, -1.690481074492178384e-09, -1.686968125139918054e-09, -1.683454588487512231e-09, -1.679940471572357348e-09, -1.676425781427759841e-09, -1.672910525084262126e-09, -1.669394709569584689e-09, -1.665878341907452321e-09, -1.662361429119103723e-09, -1.658843978221952090e-09, -1.655325996230443110e-09, -1.651807490156188546e-09, -1.648288467006725886e-09, -1.644768933786986584e-09, -1.641248897497946104e-09, -1.637728365138122769e-09, -1.634207343702255100e-09, -1.630685840181525983e-09, -1.627163861564329878e-09, -1.623641414835003509e-09, -1.620118506975368560e-09, -1.616595144963456985e-09, -1.613071335773487849e-09, -1.609547086377420567e-09, -1.606022403742295933e-09, -1.602497294833202591e-09, -1.598971766610728704e-09, -1.595445826032436816e-09, -1.591919480052811738e-09, -1.588392735622066306e-09, -1.584865599687668772e-09, -1.581338079192861735e-09, -1.577810181078192218e-09, -1.574281912280303782e-09, -1.570753279732060184e-09, -1.567224290363308038e-09, -1.563694951099668104e-09, -1.560165268863998766e-09, -1.556635250575226618e-09, -1.553104903148243263e-09, -1.549574233495438083e-09, -1.546043248524118678e-09, -1.542511955139292877e-09, -1.538980360241814615e-09, -1.535448470728482989e-09, -1.531916293493429023e-09, -1.528383835426108312e-09, -1.524851103412730177e-09, -1.521318104336359830e-09, -1.517784845075011508e-09, -1.514251332504448896e-09, -1.510717573495628729e-09, -1.507183574916522238e-09, -1.503649343630570599e-09, -1.500114886498331438e-09, -1.496580210376167953e-09, -1.493045322116248297e-09, -1.489510228568030780e-09, -1.485974936575699192e-09, -1.482439452980934898e-09, -1.478903784621102618e-09, -1.475367938329271526e-09, -1.471831920935634895e-09, -1.468295739265567668e-09, -1.464759400140964223e-09, -1.461222910380384571e-09, -1.457686276797130955e-09, -1.454149506202130578e-09, -1.450612605401241887e-09, -1.447075581196827454e-09, -1.443538440387720688e-09, -1.440001189767982784e-09, -1.436463836128372834e-09, -1.432926386255144070e-09, -1.429388846930821619e-09, -1.425851224934386969e-09, -1.422313527039929454e-09, -1.418775760018223894e-09, -1.415237930635344242e-09, -1.411700045654260459e-09, -1.408162111832926478e-09, -1.404624135925628723e-09, -1.401086124683184007e-09, -1.397548084850897848e-09, -1.394010023171477794e-09, -1.390471946382443318e-09, -1.386933861217608535e-09, -1.383395774407052636e-09, -1.379857692675867530e-09, -1.376319622745733836e-09, -1.372781571333574642e-09, -1.369243545152417222e-09, -1.365705550911499537e-09, -1.362167595315052623e-09, -1.358629685063786001e-09, -1.355091826853487674e-09, -1.351554027376531664e-09, -1.348016293320685426e-09, -1.344478631369123492e-09, -1.340941048201330135e-09, -1.337403550491837713e-09, -1.333866144911839047e-09, -1.330328838127263815e-09, -1.326791636800132855e-09, -1.323254547588620613e-09, -1.319717577145686575e-09, -1.316180732120641947e-09, -1.312644019157908265e-09, -1.309107444897823687e-09, -1.305571015976748664e-09, -1.302034739025851646e-09, -1.298498620672565737e-09, -1.294962667539275348e-09, -1.291426886244727774e-09, -1.287891283402856742e-09, -1.284355865622873809e-09, -1.280820639510081691e-09, -1.277285611664645487e-09, -1.273750788683076016e-09, -1.270216177157032477e-09, -1.266681783673201474e-09, -1.263147614814790281e-09, -1.259613677159485983e-09, -1.256079977281021326e-09, -1.252546521748602108e-09, -1.249013317126313460e-09, -1.245480369974690464e-09, -1.241947686848697553e-09, -1.238415274299435607e-09, -1.234883138872713203e-09, -1.231351287110584760e-09, -1.227819725550076266e-09, -1.224288460723308527e-09, -1.220757499158320628e-09, -1.217226847377876307e-09, -1.213696511900854865e-09, -1.210166499241093107e-09, -1.206636815907334890e-09, -1.203107468404601961e-09, -1.199578463232266015e-09, -1.196049806885541539e-09, -1.192521505854971934e-09, -1.188993566625760944e-09, -1.185465995679404059e-09, -1.181938799491643938e-09, -1.178411984533904735e-09, -1.174885557273267492e-09, -1.171359524171202280e-09, -1.167833891685056500e-09, -1.164308666266915030e-09, -1.160783854364527496e-09, -1.157259462420165519e-09, -1.153735496872119292e-09, -1.150211964153409250e-09, -1.146688870691812122e-09, -1.143166222911337241e-09, -1.139644027229638299e-09, -1.136122290060845201e-09, -1.132601017813670643e-09, -1.129080216891498831e-09, -1.125559893693797065e-09, -1.122040054614136707e-09, -1.118520706041557825e-09, -1.115001854360635572e-09, -1.111483505950126920e-09, -1.107965667184530101e-09, -1.104448344432834738e-09, -1.100931544059327517e-09, -1.097415272423712341e-09, -1.093899535879899328e-09, -1.090384340777438324e-09, -1.086869693460226220e-09, -1.083355600267935291e-09, -1.079842067534785243e-09, -1.076329101589686110e-09, -1.072816708757044548e-09, -1.069304895355491009e-09, -1.065793667699581464e-09, -1.062283032097816712e-09, -1.058772994853995858e-09, -1.055263562267394363e-09, -1.051754740630762889e-09, -1.048246536233281776e-09, -1.044738955357873334e-09, -1.041232004282723432e-09, -1.037725689281305908e-09, -1.034220016621102709e-09, -1.030714992565094885e-09, -1.027210623370405395e-09, -1.023706915289791336e-09, -1.020203874570405245e-09, -1.016701507453903457e-09, -1.013199820177254466e-09, -1.009698818971574465e-09, -1.006198510063507908e-09, -1.002698899674056017e-09, -9.991999940185521692e-10, -9.957017993081692342e-10, -9.922043217472758985e-10, -9.887075675363311798e-10, -9.852115428699910102e-10, -9.817162539371407031e-10, -9.782217069223317660e-10, -9.747279080038456771e-10, -9.712348633552992365e-10, -9.677425791444186843e-10, -9.642510615338675018e-10, -9.607603166813425708e-10, -9.572703507383809662e-10, -9.537811698517909780e-10, -9.502927801623160079e-10, -9.468051878061379702e-10, -9.433183989135976432e-10, -9.398324196092298245e-10, -9.363472560132241322e-10, -9.328629142388398580e-10, -9.293794003952663585e-10, -9.258967205856776294e-10, -9.224148809073775791e-10, -9.189338874531683926e-10, -9.154537463094021069e-10, -9.119744635573488716e-10, -9.084960452733437737e-10, -9.050184975268389299e-10, -9.015418263832662559e-10, -8.980660379014511827e-10, -8.945911381353495289e-10, -8.911171331327073650e-10, -8.876440289365306028e-10, -8.841718315838426740e-10, -8.807005471058556526e-10, -8.772301815287171996e-10, -8.737607408723062907e-10, -8.702922311517374452e-10, -8.668246583761069261e-10, -8.633580285484628585e-10, -8.598923476672136084e-10, -8.564276217241725339e-10, -8.529638567059099089e-10, -8.495010585939141196e-10, -8.460392333625942306e-10, -8.425783869822691051e-10, -8.391185254164186837e-10, -8.356596546232939882e-10, -8.322017805558336797e-10, -8.287449091604737457e-10, -8.252890463786133676e-10, -8.218341981453678425e-10, -8.183803703904156160e-10, -8.149275690381079873e-10, -8.114758000062159304e-10, -8.080250692074367001e-10, -8.045753825480430463e-10, -8.011267459294767774e-10, -7.976791652464348708e-10, -7.942326463883769067e-10, -7.907871952389740622e-10, -7.873428176755162293e-10, -7.838995195704754902e-10, -7.804573067894921389e-10, -7.770161851928383774e-10, -7.735761606353262919e-10, -7.701372389650935517e-10, -7.666994260251202514e-10, -7.632627276519447134e-10, -7.598271496765393684e-10, -7.563926979243741384e-10, -7.529593782142443215e-10, -7.495271963596878626e-10, -7.460961581676703433e-10, -7.426662694400569492e-10, -7.392375359723943437e-10, -7.358099635539842866e-10, -7.323835579687717160e-10, -7.289583249940453512e-10, -7.255342704021245204e-10, -7.221113999583541786e-10, -7.186897194225583670e-10, -7.152692345489757967e-10, -7.118499510850192844e-10, -7.084318747728121368e-10, -7.050150113478867891e-10, -7.015993665400815717e-10, -6.981849460735954079e-10, -6.947717556657687565e-10, -6.913598010285987995e-10, -6.879490878673386120e-10, -6.845396218820222766e-10, -6.811314087661976424e-10, -6.777244542070771822e-10, -6.743187638863385998e-10, -6.709143434788676192e-10, -6.675111986543083276e-10, -6.641093350757697751e-10, -6.607087583998353840e-10, -6.573094742780876494e-10, -6.539114883544265230e-10, -6.505148062680622561e-10, -6.471194336514483785e-10, -6.437253761305006948e-10, -6.403326393259353520e-10, -6.369412288513425431e-10, -6.335511503148154323e-10, -6.301624093175782760e-10, -6.267750114555105031e-10, -6.233889623178706853e-10, -6.200042674874131700e-10, -6.166209325412673729e-10, -6.132389630496128417e-10, -6.098583645772659949e-10, -6.064791426823679039e-10, -6.031013029164133469e-10, -5.997248508257561748e-10, -5.963497919489408262e-10, -5.929761318196618766e-10, -5.896038759647675341e-10, -5.862330299044103935e-10, -5.828635991534299650e-10, -5.794955892193830540e-10, -5.761290056039607214e-10, -5.727638538030883723e-10, -5.694001393049642009e-10, -5.660378675930151200e-10, -5.626770441431997390e-10, -5.593176744255648074e-10, -5.559597639042135754e-10, -5.526033180360794980e-10, -5.492483422724037873e-10, -5.458948420573648769e-10, -5.425428228298939801e-10, -5.391922900209703130e-10, -5.358432490566084569e-10, -5.324957053558364188e-10, -5.291496643308642732e-10, -5.258051313884840614e-10, -5.224621119280557100e-10, -5.191206113429453955e-10, -5.157806350206362819e-10, -5.124421883407699647e-10, -5.091052766780734492e-10, -5.057699053996920099e-10, -5.024360798667395339e-10, -4.991038054342645030e-10, -4.957730874499916454e-10, -4.924439312558682461e-10, -4.891163421867774678e-10, -4.857903255713857974e-10, -4.824658867322720859e-10, -4.791430309846603080e-10, -4.758217636379501562e-10, -4.725020899943096967e-10, -4.691840153503494790e-10, -4.658675449951603609e-10, -4.625526842116974325e-10, -4.592394382769249286e-10, -4.559278124598278411e-10, -4.526178120243873915e-10, -4.493094422268591927e-10, -4.460027083173442720e-10, -4.426976155397775940e-10, -4.393941691306393647e-10, -4.360923743205196955e-10, -4.327922363328236002e-10, -4.294937603846321935e-10, -4.261969516868085699e-10, -4.229018154427425056e-10, -4.196083568498902553e-10, -4.163165810983558854e-10, -4.130264933724364479e-10, -4.097380988493432102e-10, -4.064514026993384507e-10, -4.031664100865939171e-10, -3.998831261678710592e-10, -3.966015560941037879e-10, -3.933217050091078149e-10, -3.900435780495777053e-10, -3.867671803464853824e-10, -3.834925170231018209e-10, -3.802195931966980413e-10, -3.769484139772397151e-10, -3.736789844682478460e-10, -3.704113097669260010e-10, -3.671453949628924493e-10, -3.638812451397093088e-10, -3.606188653734827500e-10, -3.573582607344025855e-10, -3.540994362854580726e-10, -3.508423970825830832e-10, -3.475871481754882993e-10, -3.443336946064016236e-10, -3.410820414115800590e-10, -3.378321936200709538e-10, -3.345841562536856872e-10, -3.313379343284078408e-10, -3.280935328524146858e-10, -3.248509568276131027e-10, -3.216102112490788558e-10, -3.183713011044945761e-10, -3.151342313756603476e-10, -3.118990070365563995e-10, -3.086656330550083749e-10, -3.054341143912669073e-10, -3.022044559995544479e-10, -2.989766628267953887e-10, -2.957507398127549250e-10, -2.925266918908674770e-10, -2.893045239869751877e-10, -2.860842410208465748e-10, -2.828658479049423254e-10, -2.796493495443773491e-10, -2.764347508383249173e-10, -2.732220566780654991e-10, -2.700112719484939359e-10, -2.668024015275773799e-10, -2.635954502857779220e-10, -2.603904230875886659e-10, -2.571873247895695880e-10, -2.539861602417363219e-10, -2.507869342875554021e-10, -2.475896517626916542e-10, -2.443943174965221417e-10, -2.412009363108813338e-10, -2.380095130209045704e-10, -2.348200524351328044e-10, -2.316325593542810845e-10, -2.284470385727505121e-10, -2.252634948772364070e-10, -2.220819330485203936e-10, -2.189023578588423190e-10, -2.157247740747886390e-10, -2.125491864553679556e-10, -2.093755997521261511e-10, -2.062040187105304932e-10, -2.030344480680282168e-10, -1.998668925554261835e-10, -1.967013568968782669e-10, -1.935378458086409889e-10, -1.903763640005954803e-10, -1.872169161749817909e-10, -1.840595070272320672e-10, -1.809041412461029015e-10, -1.777508235124260563e-10, -1.745995585006210159e-10, -1.714503508773133363e-10, -1.683032053028379681e-10, -1.651581264300049225e-10, -1.620151189042200394e-10, -1.588741873643151151e-10, -1.557353364412949300e-10, -1.525985707598553066e-10, -1.494638949371325929e-10, -1.463313135826983891e-10, -1.432008313000748394e-10, -1.400724526841084110e-10, -1.369461823239905247e-10, -1.338220248006432513e-10, -1.306999846882262788e-10, -1.275800665541268575e-10, -1.244622749577231646e-10, -1.213466144518928237e-10, -1.182330895816260067e-10, -1.151217048855333842e-10, -1.120124648946089738e-10, -1.089053741323619975e-10, -1.058004371156310214e-10, -1.026976583533482901e-10, -9.959704234803842278e-11, -9.649859359458884812e-11, -9.340231658023534145e-11, -9.030821578606455959e-11, -8.721629568441618969e-11, -8.412656074174149154e-11, -8.103901541668946011e-11, -7.795366416023807587e-11, -7.487051141705555972e-11, -7.178956162358078408e-11, -6.871081920965916470e-11, -6.563428859731073023e-11, -6.255997420154152181e-11, -5.948788043047433926e-11, -5.641801168412066226e-11, -5.335037235587135903e-11, -5.028496683113447496e-11, -4.722179948882102995e-11, -4.416087470012081695e-11, -4.110219682849769735e-11, -3.804577023117714963e-11, -3.499159925656319109e-11, -3.193968824708333631e-11, -2.889004153728630794e-11, -2.584266345396952267e-11, -2.279755831753346701e-11, -1.975473044007829655e-11, -1.671418412675450231e-11, -1.367592367589313681e-11, -1.063995337710716955e-11, -7.606277514128185034e-12, -4.574900362231218435e-12, 0.0 /* Need a final zero coefficient */ } } ; /* high_qual_coeffs */ bplaum-gavl-b9385e3/gavl/libsamplerate/mid_qual_coeffs.h000066400000000000000000022436441513252040200233440ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ /* Taken from libsamplerate, original copyright below */ /* ** Copyright (C) 2007-2008 Erik de Castro Lopo ** ** This program is free software; you can redistribute it and/or modify ** it under the terms of the GNU General Public License as published by ** the Free Software Foundation; either version 2 of the License, or ** (at your option) any later version. ** ** This program is distributed in the hope that it will be useful, ** but WITHOUT ANY WARRANTY; without even the implied warranty of ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ** GNU General Public License for more details. ** ** You should have received a copy of the GNU General Public License ** along with this program; if not, write to the Free Software ** Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA. */ /* ** This code is part of Secret Rabibt Code aka libsamplerate. A commercial ** use license for this code is available, please see: ** http://www.mega-nerd.com/SRC/procedure.html */ /* ** f = make_src_filter (cycles = 21, incr = 491, atten = 122.000000) ** ** Stop band atten. : 120.61 dB ** -3dB band width : 1.811 ** half length : 22437 ** increment : 491 */ static const struct slow_mid_qual_coeffs_s { int increment ; coeff_t coeffs [22438] ; } slow_mid_qual_coeffs = { 491, { 9.190632349861385109e-01, 9.190579273831620544e-01, 9.190420046848706281e-01, 9.190154672231939381e-01, 9.189783155513205903e-01, 9.189305504437105254e-01, 9.188721728960548285e-01, 9.188031841252660703e-01, 9.187235855694375619e-01, 9.186333788878118245e-01, 9.185325659607400661e-01, 9.184211488896345532e-01, 9.182991299969165411e-01, 9.181665118259576541e-01, 9.180232971410120513e-01, 9.178694889271632462e-01, 9.177050903902308487e-01, 9.175301049567006206e-01, 9.173445362736407649e-01, 9.171483882086021167e-01, 9.169416648495360977e-01, 9.167243705046783653e-01, 9.164965097024515561e-01, 9.162580871913481584e-01, 9.160091079398144931e-01, 9.157495771361238157e-01, 9.154795001882498617e-01, 9.151988827237356183e-01, 9.149077305895451095e-01, 9.146060498519228421e-01, 9.142938467962469229e-01, 9.139711279268634136e-01, 9.136378999669314549e-01, 9.132941698582575096e-01, 9.129399447611106222e-01, 9.125752320540596596e-01, 9.122000393337836854e-01, 9.118143744148777818e-01, 9.114182453296666431e-01, 9.110116603280005165e-01, 9.105946278770478131e-01, 9.101671566610971542e-01, 9.097292555813195625e-01, 9.092809337555683991e-01, 9.088222005181412211e-01, 9.083530654195477450e-01, 9.078735382262775877e-01, 9.073836289205553518e-01, 9.068833477000901588e-01, 9.063727049778221856e-01, 9.058517113816679789e-01, 9.053203777542537800e-01, 9.047787151526440752e-01, 9.042267348480692579e-01, 9.036644483256435212e-01, 9.030918672840801964e-01, 9.025090036354035394e-01, 9.019158695046503027e-01, 9.013124772295638687e-01, 9.006988393602999299e-01, 9.000749686590990839e-01, 8.994408780999827435e-01, 8.987965808684226232e-01, 8.981420903610175532e-01, 8.974774201851590805e-01, 8.968025841586921842e-01, 8.961175963095725505e-01, 8.954224708755219586e-01, 8.947172223036650163e-01, 8.940018652501846574e-01, 8.932764145799431121e-01, 8.925408853661255248e-01, 8.917952928898525977e-01, 8.910396526398144390e-01, 8.902739803118754347e-01, 8.894982918086901114e-01, 8.887126032393080077e-01, 8.879169309187701087e-01, 8.871112913677079437e-01, 8.862957013119301397e-01, 8.854701776820081971e-01, 8.846347376128601558e-01, 8.837893984433177197e-01, 8.829341777157024840e-01, 8.820690931753858433e-01, 8.811941627703521185e-01, 8.803094046507521364e-01, 8.794148371684512577e-01, 8.785104788765752959e-01, 8.775963485290545485e-01, 8.766724650801458463e-01, 8.757388476839771396e-01, 8.747955156940626642e-01, 8.738424886628276544e-01, 8.728797863411223990e-01, 8.719074286777279692e-01, 8.709254358188718292e-01, 8.699338281077153567e-01, 8.689326260838612370e-01, 8.679218504828314362e-01, 8.669015222355691552e-01, 8.658716624679085871e-01, 8.648322925000503369e-01, 8.637834338460406158e-01, 8.627251082132331161e-01, 8.616573375017505532e-01, 8.605801438039482054e-01, 8.594935494038545842e-01, 8.583975767766348630e-01, 8.572922485880160037e-01, 8.561775876937460783e-01, 8.550536171390092921e-01, 8.539203601578667646e-01, 8.527778401726748836e-01, 8.516260807935129851e-01, 8.504651058175859424e-01, 8.492949392286508470e-01, 8.481156051964116038e-01, 8.469271280759230747e-01, 8.457295324069898923e-01, 8.445228429135611670e-01, 8.433070845031135354e-01, 8.420822822660410933e-01, 8.408484614750260100e-01, 8.396056475844214662e-01, 8.383538662296191601e-01, 8.370931432264129279e-01, 8.358235045703655830e-01, 8.345449764361591027e-01, 8.332575851769530306e-01, 8.319613573237311099e-01, 8.306563195846453640e-01, 8.293424988443554025e-01, 8.280199221633630646e-01, 8.266886167773459526e-01, 8.253486100964876337e-01, 8.239999297047861937e-01, 8.226426033593938758e-01, 8.212766589899133107e-01, 8.199021246977172828e-01, 8.185190287552487343e-01, 8.171273996053307620e-01, 8.157272658604564075e-01, 8.143186563020841096e-01, 8.129015998799332676e-01, 8.114761257112590442e-01, 8.100422630801440427e-01, 8.086000414367682243e-01, 8.071494903966890400e-01, 8.056906397400991349e-01, 8.042235194111070351e-01, 8.027481595169910777e-01, 8.012645903274501213e-01, 7.997728422738685783e-01, 7.982729459485642387e-01, 7.967649321040266575e-01, 7.952488316521624245e-01, 7.937246756635402134e-01, 7.921924953666147351e-01, 7.906523221469667906e-01, 7.891041875465214517e-01, 7.875481232627762340e-01, 7.859841611480169465e-01, 7.844123332085419786e-01, 7.828326716038601640e-01, 7.812452086459110712e-01, 7.796499767982624229e-01, 7.780470086753159542e-01, 7.764363370415053867e-01, 7.748179948104801928e-01, 7.731920150443076789e-01, 7.715584309526551943e-01, 7.699172758919735626e-01, 7.682685833646747398e-01, 7.666123870183109146e-01, 7.649487206447473930e-01, 7.632776181793284875e-01, 7.615991137000481803e-01, 7.599132414267077973e-01, 7.582200357200843399e-01, 7.565195310810692852e-01, 7.548117621498410257e-01, 7.530967637050012264e-01, 7.513745706627268373e-01, 7.496452180759085593e-01, 7.479087411332924207e-01, 7.461651751586176884e-01, 7.444145556097488958e-01, 7.426569180778060941e-01, 7.408922982862901074e-01, 7.391207320902084543e-01, 7.373422554751976055e-01, 7.355569045566335840e-01, 7.337647155787578868e-01, 7.319657249137790922e-01, 7.301599690609852367e-01, 7.283474846458531937e-01, 7.265283084191426211e-01, 7.247024772560038963e-01, 7.228700281550752837e-01, 7.210309982375715521e-01, 7.191854247463771443e-01, 7.173333450451372384e-01, 7.154747966173405915e-01, 7.136098170654050499e-01, 7.117384441097539538e-01, 7.098607155879003150e-01, 7.079766694535134519e-01, 7.060863437754946181e-01, 7.041897767370496330e-01, 7.022870066347511875e-01, 7.003780718776047021e-01, 6.984630109861137415e-01, 6.965418625913292194e-01, 6.946146654339206972e-01, 6.926814583632128208e-01, 6.907422803362553987e-01, 6.887971704168563969e-01, 6.868461677746440230e-01, 6.848893116840982787e-01, 6.829266415235965004e-01, 6.809581967744615660e-01, 6.789840170199873404e-01, 6.770041419444806641e-01, 6.750186113322906856e-01, 6.730274650668458536e-01, 6.710307431296762548e-01, 6.690284855994397262e-01, 6.670207326509497436e-01, 6.650075245541966495e-01, 6.629889016733656604e-01, 6.609649044658548744e-01, 6.589355734812931686e-01, 6.569009493605521000e-01, 6.548610728347569188e-01, 6.528159847243016900e-01, 6.507657259378472059e-01, 6.487103374713369952e-01, 6.466498604069961242e-01, 6.445843359123345495e-01, 6.425138052391472510e-01, 6.404383097225108123e-01, 6.383578907797843316e-01, 6.362725899096030036e-01, 6.341824486908668179e-01, 6.320875087817382498e-01, 6.299878119186311798e-01, 6.278833999151931522e-01, 6.257743146613017338e-01, 6.236605981220407768e-01, 6.215422923366868968e-01, 6.194194394176928409e-01, 6.172920815496674152e-01, 6.151602609883521922e-01, 6.130240200596011046e-01, 6.108834011583562651e-01, 6.087384467476207872e-01, 6.065891993574344943e-01, 6.044357015838404124e-01, 6.022779960878675842e-01, 6.001161255944840178e-01, 5.979501328915760583e-01, 5.957800608289128830e-01, 5.936059523171076657e-01, 5.914278503265888443e-01, 5.892457978865548451e-01, 5.870598380839474606e-01, 5.848700140623979138e-01, 5.826763690212029001e-01, 5.804789462142687650e-01, 5.782777889490804402e-01, 5.760729405856517271e-01, 5.738644445354834644e-01, 5.716523442605190297e-01, 5.694366832720955118e-01, 5.672175051299007675e-01, 5.649948534409220402e-01, 5.627687718583990195e-01, 5.605393040807753469e-01, 5.583064938506450137e-01, 5.560703849537081966e-01, 5.538310212177105507e-01, 5.515884465114002655e-01, 5.493427047434678023e-01, 5.470938398614946241e-01, 5.448418958509020360e-01, 5.425869167338921439e-01, 5.403289465683932535e-01, 5.380680294470076008e-01, 5.358042094959520885e-01, 5.335375308740007982e-01, 5.312680377714298352e-01, 5.289957744089563985e-01, 5.267207850366882882e-01, 5.244431139330546499e-01, 5.221628054037583677e-01, 5.198799037807055878e-01, 5.175944534209612202e-01, 5.153064987056736879e-01, 5.130160840390248778e-01, 5.107232538471692118e-01, 5.084280525771708303e-01, 5.061305246959465487e-01, 5.038307146892031518e-01, 5.015286670603764652e-01, 4.992244263295749218e-01, 4.969180370325161356e-01, 4.946095437194681921e-01, 4.922989909541840015e-01, 4.899864233128516933e-01, 4.876718853830233624e-01, 4.853554217625615785e-01, 4.830370770585796225e-01, 4.807168958863756725e-01, 4.783949228683817001e-01, 4.760712026330969904e-01, 4.737457798140347620e-01, 4.714186990486617379e-01, 4.690900049773344405e-01, 4.667597422422511966e-01, 4.644279554863849913e-01, 4.620946893524336962e-01, 4.597599884817572535e-01, 4.574238975133261276e-01, 4.550864610826618750e-01, 4.527477238207830434e-01, 4.504077303531530130e-01, 4.480665252986199554e-01, 4.457241532683687835e-01, 4.433806588648644964e-01, 4.410360866808032965e-01, 4.386904812980580992e-01, 4.363438872866268747e-01, 4.339963492035851522e-01, 4.316479115920361376e-01, 4.292986189800601093e-01, 4.269485158796667568e-01, 4.245976467857516812e-01, 4.222460561750463470e-01, 4.198937885050729735e-01, 4.175408882131029231e-01, 4.151873997151118156e-01, 4.128333674047376389e-01, 4.104788356522376391e-01, 4.081238488034499290e-01, 4.057684511787542636e-01, 4.034126870720317060e-01, 4.010566007496311758e-01, 3.987002364493300588e-01, 3.963436383793022544e-01, 3.939868507170818934e-01, 3.916299176085331069e-01, 3.892728831668186840e-01, 3.869157914713690083e-01, 3.845586865668559340e-01, 3.822016124621629984e-01, 3.798446131293629069e-01, 3.774877325026881336e-01, 3.751310144775131805e-01, 3.727745029093312845e-01, 3.704182416127326238e-01, 3.680622743603884639e-01, 3.657066448820316396e-01, 3.633513968634422553e-01, 3.609965739454338851e-01, 3.586422197228419373e-01, 3.562883777435115751e-01, 3.539350915072877468e-01, 3.515824044650110447e-01, 3.492303600175108436e-01, 3.468790015145981065e-01, 3.445283722540682936e-01, 3.421785154806974427e-01, 3.398294743852442457e-01, 3.374812921034551771e-01, 3.351340117150671816e-01, 3.327876762428151336e-01, 3.304423286514424074e-01, 3.280980118467101692e-01, 3.257547686744098892e-01, 3.234126419193791291e-01, 3.210716743045173849e-01, 3.187319084898069810e-01, 3.163933870713313556e-01, 3.140561525802987863e-01, 3.117202474820692792e-01, 3.093857141751790718e-01, 3.070525949903712415e-01, 3.047209321896293677e-01, 3.023907679652058089e-01, 3.000621444386648573e-01, 2.977351036599155676e-01, 2.954096876062539678e-01, 2.930859381814076015e-01, 2.907638972145774048e-01, 2.884436064594896321e-01, 2.861251075934408972e-01, 2.838084422163551501e-01, 2.814936518498354356e-01, 2.791807779362223130e-01, 2.768698618376533860e-01, 2.745609448351263859e-01, 2.722540681275621988e-01, 2.699492728308742207e-01, 2.676465999770359372e-01, 2.653460905131571068e-01, 2.630477853005538380e-01, 2.607517251138323777e-01, 2.584579506399626303e-01, 2.561665024773684407e-01, 2.538774211350079968e-01, 2.515907470314657779e-01, 2.493065204940423107e-01, 2.470247817578479221e-01, 2.447455709649018207e-01, 2.424689281632305682e-01, 2.401948933059702695e-01, 2.379235062504720111e-01, 2.356548067574134042e-01, 2.333888344899041900e-01, 2.311256290126076363e-01, 2.288652297908512490e-01, 2.266076761897511394e-01, 2.243530074733340873e-01, 2.221012628036639069e-01, 2.198524812399700601e-01, 2.176067017377827095e-01, 2.153639631480640526e-01, 2.131243042163519785e-01, 2.108877635818975083e-01, 2.086543797768119768e-01, 2.064241912252161304e-01, 2.041972362423890019e-01, 2.019735530339234475e-01, 1.997531796948866234e-01, 1.975361542089770495e-01, 1.953225144476904152e-01, 1.931122981694899932e-01, 1.909055430189743885e-01, 1.887022865260525595e-01, 1.865025661051234740e-01, 1.843064190542557934e-01, 1.821138825543719975e-01, 1.799249936684388651e-01, 1.777397893406555962e-01, 1.755583063956519529e-01, 1.733805815376853743e-01, 1.712066513498422260e-01, 1.690365522932452125e-01, 1.668703207062609550e-01, 1.647079928037134544e-01, 1.625496046760998015e-01, 1.603951922888105230e-01, 1.582447914813536749e-01, 1.560984379665793786e-01, 1.539561673299155720e-01, 1.518180150285969310e-01, 1.496840163909078092e-01, 1.475542066154204024e-01, 1.454286207702433220e-01, 1.433072937922706958e-01, 1.411902604864334054e-01, 1.390775555249584849e-01, 1.369692134466284628e-01, 1.348652686560476988e-01, 1.327657554229089709e-01, 1.306707078812674727e-01, 1.285801600288170587e-01, 1.264941457261690716e-01, 1.244126986961386766e-01, 1.223358525230311133e-01, 1.202636406519352608e-01, 1.181960963880184096e-01, 1.161332528958274463e-01, 1.140751431985919384e-01, 1.120218001775331595e-01, 1.099732565711753762e-01, 1.079295449746630053e-01, 1.058906978390803943e-01, 1.038567474707753902e-01, 1.018277260306897219e-01, 9.980366553368975879e-02, 9.778459784790455300e-02, 9.577055469406584032e-02, 9.376156764485409079e-02, 9.175766812424655805e-02, 8.975888740687235079e-02, 8.776525661736865602e-02, 8.577680672974313802e-02, 8.379356856674115284e-02, 8.181557279921417014e-02, 7.984284994549635528e-02, 7.787543037078317743e-02, 7.591334428651391741e-02, 7.395662174976043446e-02, 7.200529266261787575e-02, 7.005938677160263028e-02, 6.811893366705192021e-02, 6.618396278252910991e-02, 6.425450339423315060e-02, 6.233058462041313197e-02, 6.041223542078567182e-02, 5.849948459595861322e-02, 5.659236078685713628e-02, 5.469089247415612892e-02, 5.279510797771662378e-02, 5.090503545602581559e-02, 4.902070290564224803e-02, 4.714213816064585783e-02, 4.526936889209169645e-02, 4.340242260746868946e-02, 4.154132665016377346e-02, 3.968610819892821884e-02, 3.783679426735115509e-02, 3.599341170333596185e-02, 3.415598718858217642e-02, 3.232454723807156455e-02, 3.049911819955901035e-02, 2.867972625306763890e-02, 2.686639741038932688e-02, 2.505915751458907478e-02, 2.325803223951459012e-02, 2.146304708931060651e-02, 1.967422739793688383e-02, 1.789159832869266151e-02, 1.611518487374387701e-02, 1.434501185365678888e-02, 1.258110391693542836e-02, 1.082348553956342420e-02, 9.072181024551642312e-03, 7.327214501490089335e-03, 5.588609926104382876e-03, 3.856391079816731595e-03, 2.130581569313045372e-03, 4.112048261128918277e-04, -1.301715893853703891e-03, -3.008157510666674764e-03, -4.708097120829565600e-03, -6.401511997679847077e-03, -8.088379591793346673e-03, -9.768677531385444243e-03, -1.144238362270462092e-02, -1.310947585042377024e-02, -1.476993237802585839e-02, -1.642373154818383557e-02, -1.807085188313660440e-02, -1.971127208506028711e-02, -2.134497103643320792e-02, -2.297192780039746321e-02, -2.459212162111552510e-02, -2.620553192412000687e-02, -2.781213831666087127e-02, -2.941192058804676171e-02, -3.100485870998073712e-02, -3.259093283689189213e-02, -3.417012330626258837e-02, -3.574241063894840337e-02, -3.730777553949572029e-02, -3.886619889645268056e-02, -4.041766178267684750e-02, -4.196214545563502207e-02, -4.349963135770099770e-02, -4.503010111644691060e-02, -4.655353654492962873e-02, -4.806991964197219330e-02, -4.957923259244118031e-02, -5.108145776751701894e-02, -5.257657772496109050e-02, -5.406457520937765077e-02, -5.554543315246938257e-02, -5.701913467328958290e-02, -5.848566307848800799e-02, -5.994500186255261043e-02, -6.139713470804509382e-02, -6.284204548583378902e-02, -6.427971825531779426e-02, -6.571013726464908222e-02, -6.713328695094904208e-02, -6.854915194051883209e-02, -6.995771704904532595e-02, -7.135896728180173010e-02, -7.275288783384496749e-02, -7.413946409020417960e-02, -7.551868162606749368e-02, -7.689052620696315565e-02, -7.825498378893407103e-02, -7.961204051870818255e-02, -8.096168273386479541e-02, -8.230389696299372781e-02, -8.363866992585079763e-02, -8.496598853350889602e-02, -8.628583988850112296e-02, -8.759821128496195208e-02, -8.890309020876198398e-02, -9.020046433763699578e-02, -9.149032154131311878e-02, -9.277264988162647885e-02, -9.404743761263691104e-02, -9.531467318073758022e-02, -9.657434522475939753e-02, -9.782644257607100990e-02, -9.907095425867107341e-02, -1.003078694892777928e-01, -1.015371776774138673e-01, -1.027588684254842066e-01, -1.039729315288496908e-01, -1.051793569758964209e-01, -1.063781349480981131e-01, -1.075692558200752463e-01, -1.087527101596490881e-01, -1.099284887278886014e-01, -1.110965824791536605e-01, -1.122569825611343941e-01, -1.134096803148829935e-01, -1.145546672748422035e-01, -1.156919351688680681e-01, -1.168214759182474166e-01, -1.179432816377107424e-01, -1.190573446354401682e-01, -1.201636574130715424e-01, -1.212622126656922456e-01, -1.223530032818331281e-01, -1.234360223434566306e-01, -1.245112631259390062e-01, -1.255787190980464096e-01, -1.266383839219092644e-01, -1.276902514529875965e-01, -1.287343157400339111e-01, -1.297705710250501576e-01, -1.307990117432406285e-01, -1.318196325229574750e-01, -1.328324281856444466e-01, -1.338373937457725815e-01, -1.348345244107727325e-01, -1.358238155809629033e-01, -1.368052628494691725e-01, -1.377788620021447863e-01, -1.387446090174797586e-01, -1.397025000665092775e-01, -1.406525315127157560e-01, -1.415946999119251926e-01, -1.425290020122001178e-01, -1.434554347537262409e-01, -1.443739952686944883e-01, -1.452846808811790458e-01, -1.461874891070080174e-01, -1.470824176536327244e-01, -1.479694644199892328e-01, -1.488486274963550238e-01, -1.497199051642035539e-01, -1.505832958960495460e-01, -1.514387983552939465e-01, -1.522864113960600008e-01, -1.531261340630272472e-01, -1.539579655912597933e-01, -1.547819054060284583e-01, -1.555979531226297785e-01, -1.564061085462002954e-01, -1.572063716715234871e-01, -1.579987426828348140e-01, -1.587832219536197687e-01, -1.595598100464094560e-01, -1.603285077125682634e-01, -1.610893158920797819e-01, -1.618422357133250944e-01, -1.625872684928586220e-01, -1.633244157351789183e-01, -1.640536791324917476e-01, -1.647750605644736632e-01, -1.654885620980248440e-01, -1.661941859870235405e-01, -1.668919346720686980e-01, -1.675818107802248824e-01, -1.682638171247568815e-01, -1.689379567048636122e-01, -1.696042327054044230e-01, -1.702626484966231479e-01, -1.709132076338646389e-01, -1.715559138572904652e-01, -1.721907710915855649e-01, -1.728177834456636197e-01, -1.734369552123671276e-01, -1.740482908681612872e-01, -1.746517950728253277e-01, -1.752474726691367890e-01, -1.758353286825550810e-01, -1.764153683208952716e-01, -1.769875969740035415e-01, -1.775520202134212855e-01, -1.781086437920502696e-01, -1.786574736438100441e-01, -1.791985158832926639e-01, -1.797317768054111087e-01, -1.802572628850462877e-01, -1.807749807766843297e-01, -1.812849373140552889e-01, -1.817871395097633569e-01, -1.822815945549154382e-01, -1.827683098187413702e-01, -1.832472928482144769e-01, -1.837185513676646009e-01, -1.841820932783877762e-01, -1.846379266582506562e-01, -1.850860597612929148e-01, -1.855265010173219875e-01, -1.859592590315060912e-01, -1.863843425839618873e-01, -1.868017606293377042e-01, -1.872115222963938452e-01, -1.876136368875747640e-01, -1.880081138785841266e-01, -1.883949629179472729e-01, -1.887741938265751485e-01, -1.891458165973220751e-01, -1.895098413945400795e-01, -1.898662785536271713e-01, -1.902151385805748440e-01, -1.905564321515070547e-01, -1.908901701122190653e-01, -1.912163634777095667e-01, -1.915350234317103051e-01, -1.918461613262105736e-01, -1.921497886809775124e-01, -1.924459171830743276e-01, -1.927345586863704607e-01, -1.930157252110531740e-01, -1.932894289431289492e-01, -1.935556822339275507e-01, -1.938144975995957087e-01, -1.940658877205916066e-01, -1.943098654411736514e-01, -1.945464437688827486e-01, -1.947756358740273808e-01, -1.949974550891566127e-01, -1.952119149085367322e-01, -1.954190289876166220e-01, -1.956188111424968790e-01, -1.958112753493901070e-01, -1.959964357440767968e-01, -1.961743066213625097e-01, -1.963449024345252369e-01, -1.965082377947637848e-01, -1.966643274706406652e-01, -1.968131863875193510e-01, -1.969548296270003107e-01, -1.970892724263536289e-01, -1.972165301779451041e-01, -1.973366184286627079e-01, -1.974495528793354937e-01, -1.975553493841510633e-01, -1.976540239500707841e-01, -1.977455927362358201e-01, -1.978300720533773538e-01, -1.979074783632173984e-01, -1.979778282778685006e-01, -1.980411385592297513e-01, -1.980974261183778840e-01, -1.981467080149586224e-01, -1.981890014565697022e-01, -1.982243237981424766e-01, -1.982526925413239660e-01, -1.982741253338477783e-01, -1.982886399689092749e-01, -1.982962543845317727e-01, -1.982969866629326061e-01, -1.982908550298856376e-01, -1.982778778540780218e-01, -1.982580736464675530e-01, -1.982314610596337956e-01, -1.981980588871263271e-01, -1.981578860628108452e-01, -1.981109616602116097e-01, -1.980573048918519430e-01, -1.979969351085877072e-01, -1.979298717989431133e-01, -1.978561345884379818e-01, -1.977757432389165293e-01, -1.976887176478709651e-01, -1.975950778477610914e-01, -1.974948440053329035e-01, -1.973880364209327498e-01, -1.972746755278200759e-01, -1.971547818914748951e-01, -1.970283762089042046e-01, -1.968954793079456533e-01, -1.967561121465653262e-01, -1.966102958121587474e-01, -1.964580515208399492e-01, -1.962994006167389505e-01, -1.961343645712849137e-01, -1.959629649824959630e-01, -1.957852235742604252e-01, -1.956011621956174340e-01, -1.954108028200353953e-01, -1.952141675446855962e-01, -1.950112785897158141e-01, -1.948021582975197619e-01, -1.945868291320025922e-01, -1.943653136778486501e-01, -1.941376346397789276e-01, -1.939038148418137653e-01, -1.936638772265284747e-01, -1.934178448543069084e-01, -1.931657409025933636e-01, -1.929075886651437644e-01, -1.926434115512693501e-01, -1.923732330850826677e-01, -1.920970769047395388e-01, -1.918149667616791398e-01, -1.915269265198594195e-01, -1.912329801549935704e-01, -1.909331517537815881e-01, -1.906274655131419415e-01, -1.903159457394377752e-01, -1.899986168477036386e-01, -1.896755033608688856e-01, -1.893466299089792415e-01, -1.890120212284156775e-01, -1.886717021611102052e-01, -1.883256976537637795e-01, -1.879740327570557090e-01, -1.876167326248569800e-01, -1.872538225134368906e-01, -1.868853277806705182e-01, -1.865112738852438279e-01, -1.861316863858549775e-01, -1.857465909404159565e-01, -1.853560133052509495e-01, -1.849599793342928122e-01, -1.845585149782788814e-01, -1.841516462839419832e-01, -1.837393993932036618e-01, -1.833218005423634112e-01, -1.828988760612835773e-01, -1.824706523725789786e-01, -1.820371559907975889e-01, -1.815984135216056616e-01, -1.811544516609651101e-01, -1.807052971943146902e-01, -1.802509769957474639e-01, -1.797915180271848767e-01, -1.793269473375513623e-01, -1.788572920619474760e-01, -1.783825794208199200e-01, -1.779028367191308468e-01, -1.774180913455263020e-01, -1.769283707715027520e-01, -1.764337025505696988e-01, -1.759341143174174282e-01, -1.754296337870740463e-01, -1.749202887540707296e-01, -1.744061070915970402e-01, -1.738871167506614024e-01, -1.733633457592479721e-01, -1.728348222214689811e-01, -1.723015743167230218e-01, -1.717636302988445329e-01, -1.712210184952562553e-01, -1.706737673061213545e-01, -1.701219052034905754e-01, -1.695654607304505901e-01, -1.690044625002734557e-01, -1.684389391955579962e-01, -1.678689195673798429e-01, -1.672944324344317613e-01, -1.667155066821666698e-01, -1.661321712619413249e-01, -1.655444551901550099e-01, -1.649523875473913603e-01, -1.643559974775558319e-01, -1.637553141870143614e-01, -1.631503669437308346e-01, -1.625411850764024169e-01, -1.619277979735971595e-01, -1.613102350828858056e-01, -1.606885259099785079e-01, -1.600627000178563852e-01, -1.594327870259047986e-01, -1.587988166090451014e-01, -1.581608184968653352e-01, -1.575188224727510355e-01, -1.568728583730151782e-01, -1.562229560860272370e-01, -1.555691455513421584e-01, -1.549114567588285030e-01, -1.542499197477955886e-01, -1.535845646061212433e-01, -1.529154214693787817e-01, -1.522425205199613163e-01, -1.515658919862105658e-01, -1.508855661415393901e-01, -1.502015733035588496e-01, -1.495139438332021009e-01, -1.488227081338478752e-01, -1.481278966504471217e-01, -1.474295398686431557e-01, -1.467276683138982185e-01, -1.460223125506163178e-01, -1.453135031812648192e-01, -1.446012708454984530e-01, -1.438856462192825147e-01, -1.431666600140145407e-01, -1.424443429756479529e-01, -1.417187258838134845e-01, -1.409898395509420199e-01, -1.402577148213876301e-01, -1.395223825705493303e-01, -1.387838737039929771e-01, -1.380422191565756351e-01, -1.372974498915662533e-01, -1.365495968997690046e-01, -1.357986911986465428e-01, -1.350447638314421495e-01, -1.342878458663030183e-01, -1.335279683954043173e-01, -1.327651625340714736e-01, -1.319994594199049298e-01, -1.312308902119038168e-01, -1.304594860895899600e-01, -1.296852782521335790e-01, -1.289082979174762944e-01, -1.281285763214592144e-01, -1.273461447169460803e-01, -1.265610343729507703e-01, -1.257732765737639424e-01, -1.249829026180795249e-01, -1.241899438181227056e-01, -1.233944314987776986e-01, -1.225963969967164835e-01, -1.217958716595282653e-01, -1.209928868448487266e-01, -1.201874739194905700e-01, -1.193796642585740891e-01, -1.185694892446600424e-01, -1.177569802668806259e-01, -1.169421687200731391e-01, -1.161250860039137744e-01, -1.153057635220514771e-01, -1.144842326812446492e-01, -1.136605248904952736e-01, -1.128346715601877132e-01, -1.120067041012253739e-01, -1.111766539241694496e-01, -1.103445524383789011e-01, -1.095104310511497286e-01, -1.086743211668582260e-01, -1.078362541861021262e-01, -1.069962615048431626e-01, -1.061543745135536260e-01, -1.053106245963597309e-01, -1.044650431301889504e-01, -1.036176614839176974e-01, -1.027685110175191041e-01, -1.019176230812139927e-01, -1.010650290146204999e-01, -1.002107601459072267e-01, -9.935484779094549967e-02, -9.849732325246546294e-02, -9.763821781920969944e-02, -9.677756276509209832e-02, -9.591538934835500130e-02, -9.505172881072967983e-02, -9.418661237659614605e-02, -9.332007125214691889e-02, -9.245213662454923598e-02, -9.158283966111123442e-02, -9.071221150844796521e-02, -8.984028329164922555e-02, -8.896708611344975037e-02, -8.809265105339894597e-02, -8.721700916703446771e-02, -8.634019148505563124e-02, -8.546222901249865556e-02, -8.458315272791444572e-02, -8.370299358254701394e-02, -8.282178249951348270e-02, -8.193955037298662758e-02, -8.105632806737848861e-02, -8.017214641652514739e-02, -7.928703622287416874e-02, -7.840102825667365216e-02, -7.751415325516218535e-02, -7.662644192176196190e-02, -7.573792492527164910e-02, -7.484863289906408534e-02, -7.395859644028197899e-02, -7.306784610903965804e-02, -7.217641242762286302e-02, -7.128432587969313339e-02, -7.039161690949324868e-02, -6.949831592105389089e-02, -6.860445327740317956e-02, -6.771005929977824689e-02, -6.681516426683822840e-02, -6.591979841387921035e-02, -6.502399193205235517e-02, -6.412777496758288731e-02, -6.323117762099134120e-02, -6.233422994631773739e-02, -6.143696195034705626e-02, -6.053940359183709874e-02, -5.964158478074842867e-02, -5.874353537747725729e-02, -5.784528519208916031e-02, -5.694686398355629231e-02, -5.604830145899593330e-02, -5.514962727291260886e-02, -5.425087102644017556e-02, -5.335206226658920081e-02, -5.245323048549390549e-02, -5.155440511966371403e-02, -5.065561554923501270e-02, -4.975689109722783443e-02, -4.885826102880189148e-02, -4.795975455051824932e-02, -4.706140080960100752e-02, -4.616322889320215866e-02, -4.526526782767004153e-02, -4.436754657781861316e-02, -4.347009404619985723e-02, -4.257293907237917618e-02, -4.167611043221376710e-02, -4.077963683713110854e-02, -3.988354693341313734e-02, -3.898786930148114699e-02, -3.809263245518437757e-02, -3.719786484108952851e-02, -3.630359483777548940e-02, -3.540985075512882024e-02, -3.451666083364200721e-02, -3.362405324371572218e-02, -3.273205608496281699e-02, -3.184069738551512097e-02, -3.095000510133325000e-02, -3.006000711551949645e-02, -2.917073123763230108e-02, -2.828220520300543661e-02, -2.739445667206867954e-02, -2.650751322967108067e-02, -2.562140238440870077e-02, -2.473615156795364034e-02, -2.385178813438674703e-02, -2.296833935953311243e-02, -2.208583244030043816e-02, -2.120429449402067013e-02, -2.032375255779379775e-02, -1.944423358783580608e-02, -1.856576445882891432e-02, -1.768837196327451358e-02, -1.681208281085015688e-02, -1.593692362776880436e-02, -1.506292095614137141e-02, -1.419010125334228822e-02, -1.331849089137860688e-02, -1.244811615626108259e-02, -1.157900324738007913e-02, -1.071117827688339297e-02, -9.844667269056943046e-03, -8.979496159710283198e-03, -8.115690795563606369e-03, -7.253276933638790752e-03, -6.392280240653525070e-03, -5.532726292418784463e-03, -4.674640573238895459e-03, -3.818048475316177144e-03, -2.962975298157581594e-03, -2.109446247985370584e-03, -1.257486437150360332e-03, -4.071208835497625608e-04, 4.416254899527989955e-04, 1.288727856103917936e-03, 2.134161483832644392e-03, 2.977901738819858837e-03, 3.819924084065656495e-03, 4.660204080450173689e-03, 5.498717387294599357e-03, 6.335439762916334275e-03, 7.170347065180650466e-03, 8.003415252051096843e-03, 8.834620382134322075e-03, 9.663938615221290968e-03, 1.049134621282744352e-02, 1.131681953872633144e-02, 1.214033505948173067e-02, 1.296186934497535817e-02, 1.378139906893190852e-02, 1.459890100943853943e-02, 1.541435204946387319e-02, 1.622772917737084694e-02, 1.703900948742618007e-02, 1.784817018030847649e-02, 1.865518856360981123e-02, 1.946004205233562226e-02, 2.026270816940014055e-02, 2.106316454611901340e-02, 2.186138892269620312e-02, 2.265735914871047640e-02, 2.345105318359553062e-02, 2.424244909711654322e-02, 2.503152506984553799e-02, 2.581825939362976385e-02, 2.660263047205869286e-02, 2.738461682092602906e-02, 2.816419706868916392e-02, 2.894134995692274059e-02, 2.971605434077162142e-02, 3.048828918939719412e-02, 3.125803358642074981e-02, 3.202526673036449473e-02, 3.278996793508710816e-02, 3.355211663021503976e-02, 3.431169236157279728e-02, 3.506867479160614282e-02, 3.582304369980302688e-02, 3.657477898311160130e-02, 3.732386065635161926e-02, 3.807026885262537047e-02, 3.881398382372207995e-02, 3.955498594051913563e-02, 4.029325569338068624e-02, 4.102877369255063938e-02, 4.176152066854230821e-02, 4.249147747252515761e-02, 4.321862507670611031e-02, 4.394294457470727944e-02, 4.466441718194132104e-02, 4.538302423598088858e-02, 4.609874719692400730e-02, 4.681156764775806778e-02, 4.752146729471744269e-02, 4.822842796763708584e-02, 4.893243162030429944e-02, 4.963346033080404118e-02, 5.033149630186199014e-02, 5.102652186118265126e-02, 5.171851946178442072e-02, 5.240747168232848252e-02, 5.309336122744753861e-02, 5.377617092806637189e-02, 5.445588374172065371e-02, 5.513248275287205291e-02, 5.580595117321775905e-02, 5.647627234199695950e-02, 5.714342972629322948e-02, 5.780740692133330000e-02, 5.846818765077928248e-02, 5.912575576702142760e-02, 5.978009525146244646e-02, 6.043119021479914643e-02, 6.107902489730181878e-02, 6.172358366908740207e-02, 6.236485103038832967e-02, 6.300281161181928158e-02, 6.363745017463873221e-02, 6.426875161100566169e-02, 6.489670094423362345e-02, 6.552128332903969787e-02, 6.614248405178961565e-02, 6.676028853073934233e-02, 6.737468231627116722e-02, 6.798565109112746085e-02, 6.859318067063896462e-02, 6.919725700294883375e-02, 6.979786616923443210e-02, 7.039499438392284036e-02, 7.098862799490290865e-02, 7.157875348373402002e-02, 7.216535746585003852e-02, 7.274842669075808066e-02, 7.332794804223585761e-02, 7.390390853852199515e-02, 7.447629533250424427e-02, 7.504509571190193240e-02, 7.561029709944663835e-02, 7.617188705305501240e-02, 7.672985326600156863e-02, 7.728418356708499637e-02, 7.783486592078980859e-02, 7.838188842744558960e-02, 7.892523932338159354e-02, 7.946490698107566697e-02, 8.000087990930167259e-02, 8.053314675327025163e-02, 8.106169629476690786e-02, 8.158651745228566454e-02, 8.210759928115832218e-02, 8.262493097367956674e-02, 8.313850185922837255e-02, 8.364830140438496431e-02, 8.415431921304285245e-02, 8.465654502651848157e-02, 8.515496872365528602e-02, 8.564958032092395701e-02, 8.614036997251864336e-02, 8.662732797044912780e-02, 8.711044474462915910e-02, 8.758971086295898323e-02, 8.806511703140673664e-02, 8.853665409408212339e-02, 8.900431303330950950e-02, 8.946808496969338442e-02, 8.992796116218310098e-02, 9.038393300813062081e-02, 9.083599204334591448e-02, 9.128412994214787912e-02, 9.172833851741038491e-02, 9.216860972060436641e-02, 9.260493564183765181e-02, 9.303730850988797818e-02, 9.346572069223295365e-02, 9.389016469507693863e-02, 9.431063316337252866e-02, 9.472711888083733267e-02, 9.513961476997029321e-02, 9.554811389205820904e-02, 9.595260944718277119e-02, 9.635309477422218660e-02, 9.674956335084826387e-02, 9.714200879351844731e-02, 9.753042485746703238e-02, 9.791480543668885927e-02, 9.829514456392052235e-02, 9.867143641061781878e-02, 9.904367528692763212e-02, 9.941185564165799793e-02, 9.977597206224188275e-02, 1.001360192746983263e-01, 1.004919921435895591e-01, 1.008438856719724164e-01, 1.011916950013485306e-01, 1.015354154116073354e-01, 1.018750423209683204e-01, 1.022105712859157911e-01, 1.025419980011329085e-01, 1.028693182994293021e-01, 1.031925281516662546e-01, 1.035116236666767803e-01, 1.038266010911824133e-01, 1.041374568097056669e-01, 1.044441873444791474e-01, 1.047467893553492291e-01, 1.050452596396778127e-01, 1.053395951322381868e-01, 1.056297929051085993e-01, 1.059158501675602909e-01, 1.061977642659436560e-01, 1.064755326835677279e-01, 1.067491530405779016e-01, 1.070186230938299510e-01, 1.072839407367579129e-01, 1.075451039992403046e-01, 1.078021110474614019e-01, 1.080549601837691998e-01, 1.083036498465280856e-01, 1.085481786099699586e-01, 1.087885451840396034e-01, 1.090247484142371631e-01, 1.092567872814559082e-01, 1.094846609018174932e-01, 1.097083685265021202e-01, 1.099279095415756358e-01, 1.101432834678127276e-01, 1.103544899605155838e-01, 1.105615288093303034e-01, 1.107643999380577282e-01, 1.109631034044619990e-01, 1.111576394000742957e-01, 1.113480082499938295e-01, 1.115342104126838263e-01, 1.117162464797655103e-01, 1.118941171758056075e-01, 1.120678233581040434e-01, 1.122373660164741466e-01, 1.124027462730216587e-01, 1.125639653819188457e-01, 1.127210247291753065e-01, 1.128739258324051309e-01, 1.130226703405906863e-01, 1.131672600338419626e-01, 1.133076968231531700e-01, 1.134439827501550480e-01, 1.135761199868644267e-01, 1.137041108354286401e-01, 1.138279577278690502e-01, 1.139476632258167033e-01, 1.140632300202501642e-01, 1.141746609312234984e-01, 1.142819589075965009e-01, 1.143851270267569054e-01, 1.144841684943423976e-01, 1.145790866439563016e-01, 1.146698849368823908e-01, 1.147565669617940376e-01, 1.148391364344608367e-01, 1.149175971974534943e-01, 1.149919532198401817e-01, 1.150622085968862202e-01, 1.151283675497450365e-01, 1.151904344251484247e-01, 1.152484136950913812e-01, 1.153023099565165382e-01, 1.153521279309927400e-01, 1.153978724643902054e-01, 1.154395485265540811e-01, 1.154771612109735945e-01, 1.155107157344481272e-01, 1.155402174367492762e-01, 1.155656717802802796e-01, 1.155870843497332628e-01, 1.156044608517408645e-01, 1.156178071145261832e-01, 1.156271290875492269e-01, 1.156324328411498237e-01, 1.156337245661875623e-01, 1.156310105736796240e-01, 1.156242972944318131e-01, 1.156135912786717401e-01, 1.155988991956739681e-01, 1.155802278333856459e-01, 1.155575840980460067e-01, 1.155309750138054092e-01, 1.155004077223396458e-01, 1.154658894824609344e-01, 1.154274276697283830e-01, 1.153850297760513205e-01, 1.153387034092934887e-01, 1.152884562928717105e-01, 1.152342962653528091e-01, 1.151762312800465454e-01, 1.151142694045968057e-01, 1.150484188205689456e-01, 1.149786878230339149e-01, 1.149050848201512154e-01, 1.148276183327461980e-01, 1.147462969938865956e-01, 1.146611295484560450e-01, 1.145721248527229452e-01, 1.144792918739091503e-01, 1.143826396897532349e-01, 1.142821774880731500e-01, 1.141779145663237016e-01, 1.140698603311543491e-01, 1.139580242979606889e-01, 1.138424160904357163e-01, 1.137230454401182145e-01, 1.135999221859367581e-01, 1.134730562737523707e-01, 1.133424577558981017e-01, 1.132081367907163821e-01, 1.130701036420929950e-01, 1.129283686789885194e-01, 1.127829423749675680e-01, 1.126338353077252358e-01, 1.124810581586112579e-01, 1.123246217121506435e-01, 1.121645368555623107e-01, 1.120008145782764308e-01, 1.118334659714461665e-01, 1.116625022274604639e-01, 1.114879346394518772e-01, 1.113097746008028244e-01, 1.111280336046494149e-01, 1.109427232433825294e-01, 1.107538552081471228e-01, 1.105614412883377251e-01, 1.103654933710936092e-01, 1.101660234407898648e-01, 1.099630435785269866e-01, 1.097565659616171196e-01, 1.095466028630702332e-01, 1.093331666510749256e-01, 1.091162697884799915e-01, 1.088959248322710210e-01, 1.086721444330465552e-01, 1.084449413344920066e-01, 1.082143283728496802e-01, 1.079803184763889062e-01, 1.077429246648720779e-01, 1.075021600490196488e-01, 1.072580378299725218e-01, 1.070105712987531182e-01, 1.067597738357224380e-01, 1.065056589100376316e-01, 1.062482400791050774e-01, 1.059875309880336097e-01, 1.057235453690833632e-01, 1.054562970411151712e-01, 1.051857999090357876e-01, 1.049120679632426917e-01, 1.046351152790657157e-01, 1.043549560162079365e-01, 1.040716044181830002e-01, 1.037850748117533639e-01, 1.034953816063630683e-01, 1.032025392935715102e-01, 1.029065624464844120e-01, 1.026074657191820699e-01, 1.023052638461480757e-01, 1.019999716416930963e-01, 1.016916039993806808e-01, 1.013801758914470580e-01, 1.010657023682232231e-01, 1.007481985575529870e-01, 1.004276796642093739e-01, 1.001041609693105461e-01, 9.977765782973362085e-02, 9.944818567752557181e-02, 9.911576001931479696e-02, 9.878039643571960571e-02, 9.844211058075447163e-02, 9.810091818123778395e-02, 9.775683503619382597e-02, 9.740987701625695994e-02, 9.706006006307223155e-02, 9.670740018869518340e-02, 9.635191347499004466e-02, 9.599361607302604738e-02, 9.563252420247460306e-02, 9.526865415100128909e-02, 9.490202227365962528e-02, 9.453264499228233864e-02, 9.416053879487110145e-02, 9.378572023498490950e-02, 9.340820593112907078e-02, 9.302801256613879577e-02, 9.264515688656607684e-02, 9.225965570206304256e-02, 9.187152588476360515e-02, 9.148078436866510788e-02, 9.108744814900887610e-02, 9.069153428165842301e-02, 9.029305988247791903e-02, 8.989204212670820482e-02, 8.948849824834312350e-02, 8.908244553950339650e-02, 8.867390134981041616e-02, 8.826288308575909458e-02, 8.784940821008821454e-02, 8.743349424115216817e-02, 8.701515875228980901e-02, 8.659441937119286004e-02, 8.617129377927386369e-02, 8.574579971103250819e-02, 8.531795495342238411e-02, 8.488777734521436857e-02, 8.445528477636236875e-02, 8.402049518736558198e-02, 8.358342656863104736e-02, 8.314409695983582260e-02, 8.270252444928742619e-02, 8.225872717328426564e-02, 8.181272331547521925e-02, 8.136453110621788554e-02, 8.091416882193715188e-02, 8.046165478448212560e-02, 8.000700736048345363e-02, 7.955024496070883799e-02, 7.909138603941888446e-02, 7.863044909372222946e-02, 7.816745266292945971e-02, 7.770241532790697625e-02, 7.723535571043102510e-02, 7.676629247253963229e-02, 7.629524431588495526e-02, 7.582222998108610612e-02, 7.534726824707928261e-02, 7.487037793046977252e-02, 7.439157788488190426e-02, 7.391088700030996883e-02, 7.342832420246665770e-02, 7.294390845213463703e-02, 7.245765874451400024e-02, 7.196959410857182993e-02, 7.147973360639094109e-02, 7.098809633251808304e-02, 7.049470141331172501e-02, 6.999956800629074383e-02, 6.950271529948102989e-02, 6.900416251076395280e-02, 6.850392888722357798e-02, 6.800203370449309226e-02, 6.749849626610290865e-02, 6.699333590282730011e-02, 6.648657197203076963e-02, 6.597822385701584968e-02, 6.546831096636943070e-02, 6.495685273330933929e-02, 6.444386861503183239e-02, 6.392937809205777311e-02, 6.341340066757955585e-02, 6.289595586680890582e-02, 6.237706323632246502e-02, 6.185674234341029948e-02, 6.133501277542201258e-02, 6.081189413911518293e-02, 6.028740606000180385e-02, 5.976156818169715834e-02, 5.923440016526682755e-02, 5.870592168857491355e-02, 5.817615244563349719e-02, 5.764511214594966737e-02, 5.711282051387563813e-02, 5.657929728795784569e-02, 5.604456222028585122e-02, 5.550863507584274936e-02, 5.497153563185583347e-02, 5.443328367714608124e-02, 5.389389901147991629e-02, 5.335340144492110165e-02, 5.281181079718162003e-02, 5.226914689697428895e-02, 5.172542958136654156e-02, 5.118067869513240331e-02, 5.063491409010693195e-02, 5.008815562454091430e-02, 4.954042316245493849e-02, 4.899173657299552703e-02, 4.844211572979159608e-02, 4.789158051030967950e-02, 4.734015079521310815e-02, 4.678784646771852462e-02, 4.623468741295520129e-02, 4.568069351732450406e-02, 4.512588466785955044e-02, 4.457028075158589453e-02, 4.401390165488382883e-02, 4.345676726284972841e-02, 4.289889745865927556e-02, 4.234031212293234980e-02, 4.178103113309632882e-02, 4.122107436275198461e-02, 4.066046168104092695e-02, 4.009921295201131913e-02, 3.953734803398728515e-02, 3.897488677893685971e-02, 3.841184903184327593e-02, 3.784825463007453900e-02, 3.728412340275675391e-02, 3.671947517014593348e-02, 3.615432974300223506e-02, 3.558870692196561963e-02, 3.502262649693039381e-02, 3.445610824642367231e-02, 3.388917193698297303e-02, 3.332183732253514441e-02, 3.275412414377701364e-02, 3.218605212755724920e-02, 3.161764098625815395e-02, 3.104891041717990074e-02, 3.047988010192603792e-02, 2.991056970578846036e-02, 2.934099887713631158e-02, 2.877118724680330711e-02, 2.820115442747860371e-02, 2.763092001309731816e-02, 2.706050357823376606e-02, 2.648992467749444052e-02, 2.591920284491351298e-02, 2.534835759334986768e-02, 2.477740841388362605e-02, 2.420637477521704953e-02, 2.363527612307361747e-02, 2.306413187960070638e-02, 2.249296144277369153e-02, 2.192178418579965316e-02, 2.135061945652438550e-02, 2.077948657684075551e-02, 2.020840484209705801e-02, 1.963739352050834427e-02, 1.906647185256950261e-02, 1.849565905046804404e-02, 1.792497429750028112e-02, 1.735443674748887027e-02, 1.678406552420035058e-02, 1.621387972076678008e-02, 1.564389839910706320e-02, 1.507414058935030270e-02, 1.450462528926140665e-02, 1.393537146366859852e-02, 1.336639804389102432e-02, 1.279772392716960021e-02, 1.222936797609982737e-02, 1.166134901806436391e-02, 1.109368584466934385e-02, 1.052639721118220177e-02, 9.959501835969834099e-03, 9.393018399940177704e-03, 8.826965545985472963e-03, 8.261361878425896310e-03, 7.696225962456655287e-03, 7.131576323596798377e-03, 6.567431447138396931e-03, 6.003809777599971101e-03, 5.440729718179292129e-03, 4.878209630210759117e-03, 4.316267832621930103e-03, 3.754922601394939871e-03, 3.194192169027075100e-03, 2.634094723995269137e-03, 2.074648410222489341e-03, 1.515871326544439724e-03, 9.577815261809084118e-04, 4.003970162065617904e-04, -1.562642429744725257e-04, -7.121843381519621981e-04, -1.267345403832345185e-03, -1.821729622757877181e-03, -2.375319226423679153e-03, -2.928096495594133264e-03, -3.480043760815640895e-03, -4.031143402927247175e-03, -4.581377853570486186e-03, -5.130729595695702507e-03, -5.679181164066179205e-03, -6.226715145760802587e-03, -6.773314180674660893e-03, -7.318960962015670473e-03, -7.863638236801374568e-03, -8.407328806351688916e-03, -8.950015526779514508e-03, -9.491681309480425738e-03, -1.003230912161858293e-02, -1.057188198661029345e-02, -1.111038298460692575e-02, -1.164779525297362367e-02, -1.218410198676608130e-02, -1.271928643920606540e-02, -1.325333192215328790e-02, -1.378622180657479435e-02, -1.431793952301350752e-02, -1.484846856205270481e-02, -1.537779247477824920e-02, -1.590589487323990775e-02, -1.643275943090778679e-02, -1.695836988312885568e-02, -1.748271002757850745e-02, -1.800576372471216630e-02, -1.852751489821160419e-02, -1.904794753543158359e-02, -1.956704568784189968e-02, -2.008479347146733748e-02, -2.060117506732618217e-02, -2.111617472186435099e-02, -2.162977674738865083e-02, -2.214196552249662192e-02, -2.265272549250304732e-02, -2.316204116986610509e-02, -2.366989713460843081e-02, -2.417627803473664308e-02, -2.468116858665893310e-02, -2.518455357559880661e-02, -2.568641785600618913e-02, -2.618674635196735143e-02, -2.668552405761034571e-02, -2.718273603750876247e-02, -2.767836742708236139e-02, -2.817240343299569696e-02, -2.866482933355291723e-02, -2.915563047909090072e-02, -2.964479229236912164e-02, -3.013230026895627814e-02, -3.061813997761563683e-02, -3.110229706068614111e-02, -3.158475723446103195e-02, -3.206550628956489346e-02, -3.254453009132615704e-02, -3.302181458014773890e-02, -3.349734577187515883e-02, -3.397110975816115819e-02, -3.444309270682747309e-02, -3.491328086222460214e-02, -3.538166054558810475e-02, -3.584821815539138146e-02, -3.631294016769773259e-02, -3.677581313650651190e-02, -3.723682369409982845e-02, -3.769595855138266338e-02, -3.815320449822387494e-02, -3.860854840379085440e-02, -3.906197721688409868e-02, -3.951347796626701603e-02, -3.996303776099318500e-02, -4.041064379073169149e-02, -4.085628332608786523e-02, -4.129994371892273253e-02, -4.174161240266845846e-02, -4.218127689264063868e-02, -4.261892478634904391e-02, -4.305454376380369458e-02, -4.348812158781886761e-02, -4.391964610431411259e-02, -4.434910524261240217e-02, -4.477648701573413992e-02, -4.520177952068980820e-02, -4.562497093876844573e-02, -4.604604953582377980e-02, -4.646500366255647968e-02, -4.688182175479485569e-02, -4.729649233377042350e-02, -4.770900400639280226e-02, -4.811934546551954739e-02, -4.852750549022394333e-02, -4.893347294605966680e-02, -4.933723678532259127e-02, -4.973878604730814362e-02, -5.013810985856800850e-02, -5.053519743316140650e-02, -5.093003807290445717e-02, -5.132262116761681509e-02, -5.171293619536403846e-02, -5.210097272269752916e-02, -5.248672040489194002e-02, -5.287016898617811350e-02, -5.325130829997406362e-02, -5.363012826911270348e-02, -5.400661890606531235e-02, -5.438077031316390642e-02, -5.475257268281816941e-02, -5.512201629773157141e-02, -5.548909153111245690e-02, -5.585378884688277368e-02, -5.621609879988397757e-02, -5.657601203607912771e-02, -5.693351929275265733e-02, -5.728861139870543989e-02, -5.764127927444902960e-02, -5.799151393239466296e-02, -5.833930647704012318e-02, -5.868464810515328089e-02, -5.902753010595210292e-02, -5.936794386128207979e-02, -5.970588084579041277e-02, -6.004133262709646784e-02, -6.037429086595917649e-02, -6.070474731644233402e-02, -6.103269382607497129e-02, -6.135812233601007498e-02, -6.168102488117883919e-02, -6.200139359044339049e-02, -6.231922068674428800e-02, -6.263449848724655933e-02, -6.294721940348170508e-02, -6.325737594148625464e-02, -6.356496070193826120e-02, -6.386996638028936968e-02, -6.417238576689431040e-02, -6.447221174713720082e-02, -6.476943730155461376e-02, -6.506405550595520393e-02, -6.535605953153604541e-02, -6.564544264499701243e-02, -6.593219820864985870e-02, -6.621631968052585360e-02, -6.649780061447972679e-02, -6.677663466028946337e-02, -6.705281556375505825e-02, -6.732633716679145564e-02, -6.759719340752012862e-02, -6.786537832035696716e-02, -6.813088603609683547e-02, -6.839371078199486809e-02, -6.865384688184511530e-02, -6.891128875605452564e-02, -6.916603092171628997e-02, -6.941806799267744021e-02, -6.966739467960426924e-02, -6.991400579004571070e-02, -7.015789622849051554e-02, -7.039906099642520565e-02, -7.063749519238513019e-02, -7.087319401200507796e-02, -7.110615274806442176e-02, -7.133636679053179108e-02, -7.156383162660372166e-02, -7.178854284074179248e-02, -7.201049611470679290e-02, -7.222968722758806026e-02, -7.244611205583206814e-02, -7.265976657326482513e-02, -7.287064685111470375e-02, -7.307874905802826115e-02, -7.328406946008640677e-02, -7.348660442081482447e-02, -7.368635040119259072e-02, -7.388330395965721220e-02, -7.407746175210652706e-02, -7.426882053189751143e-02, -7.445737714984203282e-02, -7.464312855419916182e-02, -7.482607179066477765e-02, -7.500620400235745444e-02, -7.518352242980172462e-02, -7.535802441090819204e-02, -7.552970738095023118e-02, -7.569856887253761935e-02, -7.586460651558714352e-02, -7.602781803729012633e-02, -7.618820126207685728e-02, -7.634575411157773495e-02, -7.650047460458174464e-02, -7.665236085699106416e-02, -7.680141108177293563e-02, -7.694762358890945564e-02, -7.709099678534202249e-02, -7.723152917491574176e-02, -7.736921935831750363e-02, -7.750406603301283892e-02, -7.763606799318044371e-02, -7.776522412964197162e-02, -7.789153342978868966e-02, -7.801499497750735701e-02, -7.813560795310030282e-02, -7.825337163320410239e-02, -7.836828539070507527e-02, -7.848034869465121688e-02, -7.858956111016091040e-02, -7.869592229833052843e-02, -7.879943201613610892e-02, -7.890009011633403180e-02, -7.899789654735855926e-02, -7.909285135321561522e-02, -7.918495467337399729e-02, -7.927420674265373002e-02, -7.936060789111153146e-02, -7.944415854392208876e-02, -7.952485922125902829e-02, -7.960271053816962705e-02, -7.967771320444942684e-02, -7.974986802451212997e-02, -7.981917589725705253e-02, -7.988563781593471802e-02, -7.994925486800705250e-02, -8.001002823500755201e-02, -8.006795919239662052e-02, -8.012304910941422942e-02, -8.017529944893107829e-02, -8.022471176729469022e-02, -8.027128771417457731e-02, -8.031502903240339553e-02, -8.035593755781576808e-02, -8.039401521908397241e-02, -8.042926403755103204e-02, -8.046168612706085244e-02, -8.049128369378535930e-02, -8.051805903604918047e-02, -8.054201454415137185e-02, -8.056315270018434005e-02, -8.058147607784947597e-02, -8.059698734227134509e-02, -8.060968924980749239e-02, -8.061958464785648482e-02, -8.062667647466324750e-02, -8.063096775912062530e-02, -8.063246162056990352e-02, -8.063116126859672106e-02, -8.062707000282591518e-02, -8.062019121271238320e-02, -8.061052837732993193e-02, -8.059808506515787896e-02, -8.058286493386304650e-02, -8.056487173008190783e-02, -8.054410928919755741e-02, -8.052058153511557070e-02, -8.049429248003638071e-02, -8.046524622422575324e-02, -8.043344695578176495e-02, -8.039889895039974144e-02, -8.036160657113503025e-02, -8.032157426816183277e-02, -8.027880657853071755e-02, -8.023330812592333050e-02, -8.018508362040356607e-02, -8.013413785816747570e-02, -8.008047572129053937e-02, -8.002410217747082943e-02, -7.996502227977152211e-02, -7.990324116636024487e-02, -7.983876406024549566e-02, -7.977159626901146605e-02, -7.970174318454900653e-02, -7.962921028278552305e-02, -7.955400312341211200e-02, -7.947612734960739223e-02, -7.939558868776043499e-02, -7.931239294718864241e-02, -7.922654601985744394e-02, -7.913805388009254038e-02, -7.904692258429427132e-02, -7.895315827064632030e-02, -7.885676715882442012e-02, -7.875775554970082526e-02, -7.865612982504785466e-02, -7.855189644723831188e-02, -7.844506195894383749e-02, -7.833563298283097165e-02, -7.822361622125473257e-02, -7.810901845595029369e-02, -7.799184654772250980e-02, -7.787210743613204311e-02, -7.774980813918051792e-02, -7.762495575299306616e-02, -7.749755745149848607e-02, -7.736762048610719422e-02, -7.723515218538730409e-02, -7.710015995473767925e-02, -7.696265127606051470e-02, -7.682263370742957453e-02, -7.668011488275798537e-02, -7.653510251146330989e-02, -7.638760437813052473e-02, -7.623762834217213957e-02, -7.608518233748813586e-02, -7.593027437212182540e-02, -7.577291252791458487e-02, -7.561310496015874461e-02, -7.545085989724746589e-02, -7.528618564032441007e-02, -7.511909056292874476e-02, -7.494958311064056633e-02, -7.477767180072351916e-02, -7.460336522176438945e-02, -7.442667203331282400e-02, -7.424760096551691335e-02, -7.406616081875874724e-02, -7.388236046328676421e-02, -7.369620883884638041e-02, -7.350771495430935554e-02, -7.331688788730084116e-02, -7.312373678382456943e-02, -7.292827085788614050e-02, -7.273049939111450590e-02, -7.253043173238218899e-02, -7.232807729742261882e-02, -7.212344556844652033e-02, -7.191654609375608409e-02, -7.170738848735802584e-02, -7.149598242857389818e-02, -7.128233766164919494e-02, -7.106646399536135916e-02, -7.084837130262473803e-02, -7.062806952009438588e-02, -7.040556864776979784e-02, -7.018087874859349484e-02, -6.995400994805141270e-02, -6.972497243377005771e-02, -6.949377645511187196e-02, -6.926043232276914152e-02, -6.902495040835739115e-02, -6.878734114400550381e-02, -6.854761502194529899e-02, -6.830578259409987585e-02, -6.806185447166897273e-02, -6.781584132471454862e-02, -6.756775388174379726e-02, -6.731760292929084288e-02, -6.706539931149697875e-02, -6.681115392968989264e-02, -6.655487774196078288e-02, -6.629658176274041970e-02, -6.603627706237351347e-02, -6.577397476669244458e-02, -6.550968605658825938e-02, -6.524342216758195756e-02, -6.497519438939264314e-02, -6.470501406550616119e-02, -6.443289259274068148e-02, -6.415884142081215713e-02, -6.388287205189886742e-02, -6.360499604020235231e-02, -6.332522499150991524e-02, -6.304357056275446125e-02, -6.276004446157291972e-02, -6.247465844586397310e-02, -6.218742432334468245e-02, -6.189835395110540595e-02, -6.160745923516382921e-02, -6.131475213001792018e-02, -6.102024463819785693e-02, -6.072394880981624166e-02, -6.042587674211781501e-02, -6.012604057902817128e-02, -5.982445251070026004e-02, -5.952112477306180371e-02, -5.921606964735958573e-02, -5.890929945970377335e-02, -5.860082658061234462e-02, -5.829066342455116456e-02, -5.797882244947703823e-02, -5.766531615637713465e-02, -5.735015708880845942e-02, -5.703335783243624474e-02, -5.671493101457135422e-02, -5.639488930370698677e-02, -5.607324540905390259e-02, -5.575001208007627357e-02, -5.542520210602428637e-02, -5.509882831546800835e-02, -5.477090357582996283e-02, -5.444144079291571986e-02, -5.411045291044555561e-02, -5.377795290958351654e-02, -5.344395380846742732e-02, -5.310846866173626890e-02, -5.277151056005919411e-02, -5.243309262966099754e-02, -5.209322803185014589e-02, -5.175192996254258937e-02, -5.140921165178801572e-02, -5.106508636329365469e-02, -5.071956739394813812e-02, -5.037266807334418034e-02, -5.002440176330155003e-02, -4.967478185738846697e-02, -4.932382178044337345e-02, -4.897153498809565797e-02, -4.861793496628525474e-02, -4.826303523078317309e-02, -4.790684932671046559e-02, -4.754939082805644673e-02, -4.719067333719809132e-02, -4.683071048441636575e-02, -4.646951592741498105e-02, -4.610710335083630096e-02, -4.574348646577875571e-02, -4.537867900931220194e-02, -4.501269474399419851e-02, -4.464554745738560232e-02, -4.427725096156497758e-02, -4.390781909264397653e-02, -4.353726571028161685e-02, -4.316560469719835091e-02, -4.279284995868991304e-02, -4.241901542214145809e-02, -4.204411503654013893e-02, -4.166816277198868990e-02, -4.129117261921873283e-02, -4.091315858910295200e-02, -4.053413471216760905e-02, -4.015411503810565469e-02, -3.977311363528829996e-02, -3.939114459027746179e-02, -3.900822200733783385e-02, -3.862436000794840923e-02, -3.823957273031457216e-02, -3.785387432888023124e-02, -3.746727897383874545e-02, -3.707980085064529335e-02, -3.669145415952819456e-02, -3.630225311500043239e-02, -3.591221194537174560e-02, -3.552134489225985958e-02, -3.512966621010248786e-02, -3.473719016566926415e-02, -3.434393103757314714e-02, -3.394990311578257453e-02, -3.355512070113409601e-02, -3.315959810484352122e-02, -3.276334964801892735e-02, -3.236638966117337535e-02, -3.196873248373656440e-02, -3.157039246356881795e-02, -3.117138395647334193e-02, -3.077172132570999558e-02, -3.037141894150807361e-02, -2.997049118058095832e-02, -2.956895242563938736e-02, -2.916681706490596715e-02, -2.876409949163010252e-02, -2.836081410360228802e-02, -2.795697530266948866e-02, -2.755259749425129426e-02, -2.714769508685485611e-02, -2.674228249159179074e-02, -2.633637412169491376e-02, -2.592998439203500136e-02, -2.552312771863811044e-02, -2.511581851820446007e-02, -2.470807120762553641e-02, -2.429990020350381030e-02, -2.389131992167181293e-02, -2.348234477671209269e-02, -2.307298918147697095e-02, -2.266326754661033421e-02, -2.225319428006821559e-02, -2.184278378664095133e-02, -2.143205046747626366e-02, -2.102100871960134801e-02, -2.060967293544775300e-02, -2.019805750237453623e-02, -1.978617680219405678e-02, -1.937404521069751098e-02, -1.896167709718065905e-02, -1.854908682397107475e-02, -1.813628874595625898e-02, -1.772329721011116355e-02, -1.731012655502743927e-02, -1.689679111044398857e-02, -1.648330519677641826e-02, -1.606968312464891746e-02, -1.565593919442648599e-02, -1.524208769574730837e-02, -1.482814290705705175e-02, -1.441411909514261729e-02, -1.400003051466842605e-02, -1.358589140771156861e-02, -1.317171600329985516e-02, -1.275751851694901899e-02, -1.234331315020175540e-02, -1.192911409016795751e-02, -1.151493550906453230e-02, -1.110079156375751858e-02, -1.068669639530485729e-02, -1.027266412849928666e-02, -9.858708871413103883e-03, -9.444844714944151606e-03, -9.031085732361488622e-03, -8.617445978853281036e-03, -8.203939491075741205e-03, -7.790580286701910551e-03, -7.377382363973220523e-03, -6.964359701250321527e-03, -6.551526256566859996e-03, -6.138895967182455768e-03, -5.726482749138683132e-03, -5.314300496814470740e-03, -4.902363082483721102e-03, -4.490684355874207702e-03, -4.079278143726318591e-03, -3.668158249354945468e-03, -3.257338452210606448e-03, -2.846832507443070731e-03, -2.436654145466198886e-03, -2.026817071522901085e-03, -1.617334965252489052e-03, -1.208221480259231680e-03, -7.994902436811283670e-04, -3.911548557610529516e-04, 1.677111058077926023e-05, 4.242741101741629079e-04, 8.313406260238004721e-04, 1.237957169732863214e-03, 1.644110281926440586e-03, 2.049786532671881486e-03, 2.454972521898892736e-03, 2.859654879818813826e-03, 3.263820267340243435e-03, 3.667455376485580579e-03, 4.070546930804781749e-03, 4.473081685789086388e-03, 4.875046429280869599e-03, 5.276427981884174861e-03, 5.677213197373867648e-03, 6.077388963101055044e-03, 6.476942200399119463e-03, 6.875859864988406213e-03, 7.274128947377056509e-03, 7.671736473262571673e-03, 8.068669503931742357e-03, 8.464915136656972136e-03, 8.860460505093223013e-03, 9.255292779672637249e-03, 9.649399167997339474e-03, 1.004276691523033928e-02, 1.043538330448613369e-02, 1.082723565721786969e-02, 1.121831133360458831e-02, 1.160859773293578846e-02, 1.199808229399418856e-02, 1.238675249543743848e-02, 1.277459585617868321e-02, 1.316159993576333093e-02, 1.354775233474598758e-02, 1.393304069506600892e-02, 1.431745270041902274e-02, 1.470097607662862807e-02, 1.508359859201690960e-02, 1.546530805777043306e-02, 1.584609232830710285e-02, 1.622593930164089454e-02, 1.660483691974278669e-02, 1.698277316890229802e-02, 1.735973608008629585e-02, 1.773571372929534651e-02, 1.811069423791929200e-02, 1.848466577309051603e-02, 1.885761654803489243e-02, 1.922953482242151582e-02, 1.960040890271130473e-02, 1.997022714250126091e-02, 2.033897794286903746e-02, 2.070664975271587979e-02, 2.107323106910502855e-02, 2.143871043760092049e-02, 2.180307645260595728e-02, 2.216631775769328794e-02, 2.252842304594031286e-02, 2.288938106025933256e-02, 2.324918059372480666e-02, 2.360781048990075875e-02, 2.396525964316528756e-02, 2.432151699903265657e-02, 2.467657155447372519e-02, 2.503041235823523503e-02, 2.538302851115518607e-02, 2.573440916647813659e-02, 2.608454353016740820e-02, 2.643342086121521634e-02, 2.678103047195084033e-02, 2.712736172834807891e-02, 2.747240405032783800e-02, 2.781614691206098916e-02, 2.815857984226893818e-02, 2.849969242452052992e-02, 2.883947429752827668e-02, 2.917791515544300093e-02, 2.951500474814375274e-02, 2.985073288152844187e-02, 3.018508941780147226e-02, 3.051806427575786199e-02, 3.084964743106703364e-02, 3.117982891655382907e-02, 3.150859882247699501e-02, 3.183594729680571528e-02, 3.216186454549446044e-02, 3.248634083275445811e-02, 3.280936648132455613e-02, 3.313093187273905005e-02, 3.345102744759234636e-02, 3.376964370580342462e-02, 3.408677120687665651e-02, 3.440240057016114711e-02, 3.471652247510688405e-02, 3.502912766151942275e-02, 3.534020692981312828e-02, 3.564975114125976813e-02, 3.595775121823711895e-02, 3.626419814447476991e-02, 3.656908296529646357e-02, 3.687239678786174979e-02, 3.717413078140495430e-02, 3.747427617747067785e-02, 3.777282427014849731e-02, 3.806976641630491903e-02, 3.836509403581284117e-02, 3.865879861177835830e-02, 3.895087169076628941e-02, 3.924130488302231268e-02, 3.953008986269310882e-02, 3.981721836804547054e-02, 4.010268220168012460e-02, 4.038647323074603945e-02, 4.066858338715204774e-02, 4.094900466777352810e-02, 4.122772913466016265e-02, 4.150474891523963511e-02, 4.178005620251827590e-02, 4.205364325528090919e-02, 4.232550239828787586e-02, 4.259562602246853152e-02, 4.286400658511372447e-02, 4.313063661006582422e-02, 4.339550868790523208e-02, 4.365861547613541366e-02, 4.391994969936587057e-02, 4.417950414949153165e-02, 4.443727168587049969e-02, 4.469324523549987604e-02, 4.494741779318756764e-02, 4.519978242172353888e-02, 4.545033225204764271e-02, 4.569906048341459970e-02, 4.594596038355773515e-02, 4.619102528884996839e-02, 4.643424860446098562e-02, 4.667562380451385079e-02, 4.691514443223870207e-02, 4.715280410012290258e-02, 4.738859649005978947e-02, 4.762251535349541764e-02, 4.785455451157124424e-02, 4.808470785526570285e-02, 4.831296934553317574e-02, 4.853933301343992673e-02, 4.876379296029758476e-02, 4.898634335779545462e-02, 4.920697844812826210e-02, 4.942569254412320506e-02, 4.964248002936416659e-02, 4.985733535831241015e-02, 5.007025305642578278e-02, 5.028122772027596166e-02, 5.049025401766154414e-02, 5.069732668771988887e-02, 5.090244054103713195e-02, 5.110559045975310299e-02, 5.130677139766675471e-02, 5.150597838033766501e-02, 5.170320650518459016e-02, 5.189845094158274802e-02, 5.209170693095781929e-02, 5.228296978687782537e-02, 5.247223489514173111e-02, 5.265949771386699285e-02, 5.284475377357324144e-02, 5.302799867726451510e-02, 5.320922810050816160e-02, 5.338843779151170033e-02, 5.356562357119716566e-02, 5.374078133327277879e-02, 5.391390704430269742e-02, 5.408499674377323374e-02, 5.425404654415744155e-02, 5.442105263097726797e-02, 5.458601126286231203e-02, 5.474891877160698028e-02, 5.490977156222513061e-02, 5.506856611300162130e-02, 5.522529897554126488e-02, 5.537996677481685920e-02, 5.553256620921263181e-02, 5.568309405056650480e-02, 5.583154714420941050e-02, 5.597792240900273386e-02, 5.612221683737193823e-02, 5.626442749533908799e-02, 5.640455152255246379e-02, 5.654258613231323560e-02, 5.667852861160008887e-02, 5.681237632109142205e-02, 5.694412669518481712e-02, 5.707377724201420643e-02, 5.720132554346434028e-02, 5.732676925518302019e-02, 5.745010610659129213e-02, 5.757133390088959440e-02, 5.769045051506336425e-02, 5.780745389988525829e-02, 5.792234207991459743e-02, 5.803511315349475091e-02, 5.814576529274893130e-02, 5.825429674357097964e-02, 5.836070582561687925e-02, 5.846499093229173827e-02, 5.856715053073460048e-02, 5.866718316180138948e-02, 5.876508744004534796e-02, 5.886086205369428503e-02, 5.895450576462613057e-02, 5.904601740834193591e-02, 5.913539589393613377e-02, 5.922264020406479285e-02, 5.930774939491100656e-02, 5.939072259614806143e-02, 5.947155901090028784e-02, 5.955025791570162791e-02, 5.962681866045101142e-02, 5.970124066836630244e-02, 5.977352343593546335e-02, 5.984366653286506826e-02, 5.991166960202637393e-02, 5.997753235939982247e-02, 6.004125459401647019e-02, 6.010283616789632161e-02, 6.016227701598628880e-02, 6.021957714609379314e-02, 6.027473663881898619e-02, 6.032775564748447950e-02, 6.037863439806250010e-02, 6.042737318909979088e-02, 6.047397239164051252e-02, 6.051843244914587028e-02, 6.056075387741225585e-02, 6.060093726448704393e-02, 6.063898327058152987e-02, 6.067489262798180655e-02, 6.070866614095681013e-02, 6.074030468566572749e-02, 6.076980921006056718e-02, 6.079718073378870963e-02, 6.082242034809136333e-02, 6.084552921570155620e-02, 6.086650857073751947e-02, 6.088535971859639073e-02, 6.090208403584315006e-02, 6.091668297009911887e-02, 6.092915803992764168e-02, 6.093951083471679103e-02, 6.094774301456059445e-02, 6.095385631013817973e-02, 6.095785252258952014e-02, 6.095973352339040252e-02, 6.095950125422446020e-02, 6.095715772685216666e-02, 6.095270502297909371e-02, 6.094614529412142878e-02, 6.093748076146855014e-02, 6.092671371574377714e-02, 6.091384651706437114e-02, 6.089888159479672769e-02, 6.088182144741112467e-02, 6.086266864233412510e-02, 6.084142581579844722e-02, 6.081809567269076677e-02, 6.079268098639753481e-02, 6.076518459864802685e-02, 6.073560941935628871e-02, 6.070395842646030687e-02, 6.067023466575852120e-02, 6.063444125074543556e-02, 6.059658136244441134e-02, 6.055665824923797680e-02, 6.051467522669694288e-02, 6.047063567740684764e-02, 6.042454305079233978e-02, 6.037640086293942498e-02, 6.032621269641617184e-02, 6.027398220009076019e-02, 6.021971308894749630e-02, 6.016340914390131550e-02, 6.010507421160960623e-02, 6.004471220428249378e-02, 5.998232709949078562e-02, 5.991792293997202229e-02, 5.985150383343446068e-02, 5.978307395235912813e-02, 5.971263753380014888e-02, 5.964019887918215607e-02, 5.956576235409705850e-02, 5.948933238809774732e-02, 5.941091347449023452e-02, 5.933051017012427875e-02, 5.924812709518093717e-02, 5.916376893295986761e-02, 5.907744042966268233e-02, 5.898914639417618400e-02, 5.889889169785273576e-02, 5.880668127428869546e-02, 5.871252011910215590e-02, 5.861641328970636222e-02, 5.851836590508399660e-02, 5.841838314555813233e-02, 5.831647025256120331e-02, 5.821263252840275237e-02, 5.810687533603505622e-02, 5.799920409881725858e-02, 5.788962430027688733e-02, 5.777814148387054594e-02, 5.766476125274203751e-02, 5.754948926947907328e-02, 5.743233125586839904e-02, 5.731329299264863175e-02, 5.719238031926159038e-02, 5.706959913360234310e-02, 5.694495539176641641e-02, 5.681845510779613001e-02, 5.669010435342562715e-02, 5.655990925782287959e-02, 5.642787600733064485e-02, 5.629401084520669479e-02, 5.615832007136059567e-02, 5.602081004208959297e-02, 5.588148716981398284e-02, 5.574035792280878504e-02, 5.559742882493519389e-02, 5.545270645536990589e-02, 5.530619744833302487e-02, 5.515790849281448222e-02, 5.500784633229773013e-02, 5.485601776448425365e-02, 5.470242964101335731e-02, 5.454708886718351996e-02, 5.439000240166987077e-02, 5.423117725624113789e-02, 5.407062049547496640e-02, 5.390833923647164044e-02, 5.374434064856668802e-02, 5.357863195304077980e-02, 5.341122042282967636e-02, 5.324211338223209383e-02, 5.307131820661516175e-02, 5.289884232212019310e-02, 5.272469320536576215e-02, 5.254887838314915849e-02, 5.237140543214788974e-02, 5.219228197861830454e-02, 5.201151569809316089e-02, 5.182911431507822991e-02, 5.164508560274734539e-02, 5.145943738263589889e-02, 5.127217752433306519e-02, 5.108331394517288265e-02, 5.089285460992350185e-02, 5.070080753047587901e-02, 5.050718076553058211e-02, 5.031198242028282752e-02, 5.011522064610827998e-02, 4.991690364024480020e-02, 4.971703964547460192e-02, 4.951563694980555541e-02, 4.931270388614966693e-02, 4.910824883200155810e-02, 4.890228020911547430e-02, 4.869480648318098848e-02, 4.848583616349690789e-02, 4.827537780264567341e-02, 4.806343999616458085e-02, 4.785003138221756436e-02, 4.763516064126436383e-02, 4.741883649572962989e-02, 4.720106770967028714e-02, 4.698186308844284204e-02, 4.676123147836757504e-02, 4.653918176639375986e-02, 4.631572287976245400e-02, 4.609086378566933789e-02, 4.586461349092482709e-02, 4.563698104161497543e-02, 4.540797552276072679e-02, 4.517760605797500190e-02, 4.494588180912080511e-02, 4.471281197596696511e-02, 4.447840579584280002e-02, 4.424267254329306009e-02, 4.400562152973085811e-02, 4.376726210308929527e-02, 4.352760364747376015e-02, 4.328665558281200032e-02, 4.304442736450318774e-02, 4.280092848306752545e-02, 4.255616846379326607e-02, 4.231015686638363998e-02, 4.206290328460323552e-02, 4.181441734592326182e-02, 4.156470871116545174e-02, 4.131378707414628398e-02, 4.106166216131934554e-02, 4.080834373141728477e-02, 4.055384157509318854e-02, 4.029816551456149448e-02, 4.004132540323636358e-02, 3.978333112537235650e-02, 3.952419259570155718e-02, 3.926391975907111975e-02, 3.900252259008071126e-02, 3.874001109271837245e-02, 3.847639529999571234e-02, 3.821168527358311667e-02, 3.794589110344370742e-02, 3.767902290746692751e-02, 3.741109083110142480e-02, 3.714210504698767235e-02, 3.687207575458907594e-02, 3.660101317982328295e-02, 3.632892757469322748e-02, 3.605582921691673215e-02, 3.578172840955531897e-02, 3.550663548064450503e-02, 3.523056078282122555e-02, 3.495351469295160385e-02, 3.467550761175898499e-02, 3.439654996345063720e-02, 3.411665219534355808e-02, 3.383582477749137035e-02, 3.355407820230967703e-02, 3.327142298420013994e-02, 3.298786965917676478e-02, 3.270342878448915386e-02, 3.241811093824626538e-02, 3.213192671904098463e-02, 3.184488674557200971e-02, 3.155700165626729864e-02, 3.126828210890678778e-02, 3.097873878024409722e-02, 3.068838236562784413e-02, 3.039722357862456592e-02, 3.010527315063872555e-02, 2.981254183053381676e-02, 2.951904038425356633e-02, 2.922477959444228293e-02, 2.892977026006430391e-02, 2.863402319602474308e-02, 2.833754923278945792e-02, 2.804035921600333756e-02, 2.774246400611119281e-02, 2.744387447797607196e-02, 2.714460152049846114e-02, 2.684465603623512747e-02, 2.654404894101841661e-02, 2.624279116357395789e-02, 2.594089364514005208e-02, 2.563836733908565410e-02, 2.533522321052872339e-02, 2.503147223595478602e-02, 2.472712540283522956e-02, 2.442219370924449476e-02, 2.411668816347972699e-02, 2.381061978367808585e-02, 2.350399959743439127e-02, 2.319683864142038643e-02, 2.288914796100240470e-02, 2.258093860985876597e-02, 2.227222164959932402e-02, 2.196300814938328960e-02, 2.165330918553663025e-02, 2.134313584117212420e-02, 2.103249920580676363e-02, 2.072141037498076085e-02, 2.040988044987618669e-02, 2.009792053693617089e-02, 1.978554174748349895e-02, 1.947275519734028779e-02, 1.915957200644721053e-02, 1.884600329848249572e-02, 1.853206020048260572e-02, 1.821775384246182572e-02, 1.790309535703187363e-02, 1.758809587902336255e-02, 1.727276654510595533e-02, 1.695711849340873420e-02, 1.664116286314245435e-02, 1.632491079422064909e-02, 1.600837342688059273e-02, 1.569156190130669565e-02, 1.537448735725228249e-02, 1.505716093366207993e-02, 1.473959376829560471e-02, 1.442179699735095418e-02, 1.410378175508775721e-02, 1.378555917345238545e-02, 1.346714038170172129e-02, 1.314853650602847319e-02, 1.282975866918687098e-02, 1.251081799011815807e-02, 1.219172558357715756e-02, 1.187249255975839773e-02, 1.155313002392431912e-02, 1.123364907603253797e-02, 1.091406081036339765e-02, 1.059437631514981160e-02, 1.027460667220603252e-02, 9.954762956556636663e-03, 9.634856236068070276e-03, 9.314897571078967903e-03, 8.994898014030819344e-03, 8.674868609101299421e-03, 8.354820391836078122e-03, 8.034764388781564029e-03, 7.714711617119713802e-03, 7.394673084301857206e-03, 7.074659787683494454e-03, 6.754682714160666068e-03, 6.434752839805614986e-03, 6.114881129504146084e-03, 5.795078536593415049e-03, 5.475356002500293175e-03, 5.155724456379775535e-03, 4.836194814755938320e-03, 4.516777981161897854e-03, 4.197484845780509455e-03, 3.878326285087576025e-03, 3.559313161494014922e-03, 3.240456322988873126e-03, 2.921766602784826514e-03, 2.603254818962751505e-03, 2.284931774117096841e-03, 1.966808255003778955e-03, 1.648895032187144708e-03, 1.331202859688308468e-03, 1.013742474634615233e-03, 6.965245969101002471e-04, 3.795599288058420953e-04, 6.285915467254162275e-05, -2.535670594268588400e-04, -5.697080660641302280e-04, -8.855532367899752923e-04, -1.201091962479042697e-03, -1.516313653674007103e-03, -1.831207740926959170e-03, -2.145763675141579112e-03, -2.459970927914333604e-03, -2.773818991872943965e-03, -3.087297381015633238e-03, -3.400395631049311831e-03, -3.713103299725090383e-03, -4.025409967174431447e-03, -4.337305236244289389e-03, -4.648778732829520269e-03, -4.959820106206004262e-03, -5.270419029362214194e-03, -5.580565199328917959e-03, -5.890248337509066540e-03, -6.199458190005678430e-03, -6.508184527948632919e-03, -6.816417147820781619e-03, -7.124145871783336623e-03, -7.431360547998411108e-03, -7.738051050952144544e-03, -8.044207281776545940e-03, -8.349819168568684696e-03, -8.654876666710175498e-03, -8.959369759185552978e-03, -9.263288456897925474e-03, -9.566622798984828271e-03, -9.869362853133048161e-03, -1.017149871589054233e-02, -1.047302051297883431e-02, -1.077391839960360233e-02, -1.107418256076376888e-02, -1.137380321155924238e-02, -1.167277059749829461e-02, -1.197107499480240533e-02, -1.226870671071055713e-02, -1.256565608378274086e-02, -1.286191348420051561e-02, -1.315746931406783747e-02, -1.345231400770978067e-02, -1.374643803197069143e-02, -1.403983188650943272e-02, -1.433248610409477292e-02, -1.462439125089949783e-02, -1.491553792679147297e-02, -1.520591676562495914e-02, -1.549551843553028871e-02, -1.578433363920156429e-02, -1.607235311418258802e-02, -1.635956763315388196e-02, -1.664596800421410186e-02, -1.693154507116420224e-02, -1.721628971378745890e-02, -1.750019284812929024e-02, -1.778324542677434811e-02, -1.806543843912499642e-02, -1.834676291167382581e-02, -1.862720990827931161e-02, -1.890677053043694072e-02, -1.918543591755002969e-02, -1.946319724719821134e-02, -1.974004573540671589e-02, -2.001597263691005241e-02, -2.029096924541853170e-02, -2.056502689388045590e-02, -2.083813695474322214e-02, -2.111029084021400978e-02, -2.138148000251775122e-02, -2.165169593415407212e-02, -2.192093016815180317e-02, -2.218917427832410930e-02, -2.245641987951886576e-02, -2.272265862787032145e-02, -2.298788222104748355e-02, -2.325208239850166600e-02, -2.351525094171103003e-02, -2.377737967442692529e-02, -2.403846046291355926e-02, -2.429848521619067461e-02, -2.455744588627195232e-02, -2.481533446840275201e-02, -2.507214300129514961e-02, -2.532786356736328390e-02, -2.558248829295506344e-02, -2.583600934858316586e-02, -2.608841894915431975e-02, -2.633970935419615439e-02, -2.658987286808375122e-02, -2.683890184026338499e-02, -2.708678866547472447e-02, -2.733352578397119440e-02, -2.757910568174019514e-02, -2.782352089071823964e-02, -2.806676398900820671e-02, -2.830882760109225404e-02, -2.854970439804405125e-02, -2.878938709773831012e-02, -2.902786846506084234e-02, -2.926514131211338521e-02, -2.950119849841987760e-02, -2.973603293112926996e-02, -2.996963756521692571e-02, -3.020200540368389586e-02, -3.043312949775546852e-02, -3.066300294707679022e-02, -3.089161889990713755e-02, -3.111897055331265191e-02, -3.134505115335641662e-02, -3.156985399528784708e-02, -3.179337242372963501e-02, -3.201559983286290240e-02, -3.223652966661002400e-02, -3.245615541881754357e-02, -3.267447063343414948e-02, -3.289146890469003132e-02, -3.310714387727202446e-02, -3.332148924649831756e-02, -3.353449875849000283e-02, -3.374616621034268876e-02, -3.395648545029412296e-02, -3.416545037789159300e-02, -3.437305494415599655e-02, -3.457929315174609886e-02, -3.478415905511812733e-02, -3.498764676068633062e-02, -3.518975042697974898e-02, -3.539046426479728474e-02, -3.558978253736214820e-02, -3.578769956047301443e-02, -3.598420970265375080e-02, -3.617930738530115292e-02, -3.637298708283200066e-02, -3.656524332282515277e-02, -3.675607068616555673e-02, -3.694546380718333189e-02, -3.713341737379273477e-02, -3.731992612762760619e-02, -3.750498486417733895e-02, -3.768858843291756494e-02, -3.787073173744227861e-02, -3.805140973559151957e-02, -3.823061743957868047e-02, -3.840834991611457444e-02, -3.858460228653117635e-02, -3.875936972690165877e-02, -3.893264746815981031e-02, -3.910443079621696294e-02, -3.927471505207656699e-02, -3.944349563194798902e-02, -3.961076798735697901e-02, -3.977652762525509672e-02, -3.994077010812675799e-02, -4.010349105409504594e-02, -4.026468613702371968e-02, -4.042435108661964621e-02, -4.058248168853173521e-02, -4.073907378444820149e-02, -4.089412327219155846e-02, -4.104762610581318139e-02, -4.119957829568306196e-02, -4.134997590858076333e-02, -4.149881506778189261e-02, -4.164609195314414314e-02, -4.179180280119016572e-02, -4.193594390518966958e-02, -4.207851161523871314e-02, -4.221950233833710736e-02, -4.235891253846401500e-02, -4.249673873665161389e-02, -4.263297751105663697e-02, -4.276762549702978894e-02, -4.290067938718337970e-02, -4.303213593145702176e-02, -4.316199193718126687e-02, -4.329024426913872375e-02, -4.341688984962442655e-02, -4.354192565850283775e-02, -4.366534873326371330e-02, -4.378715616907559449e-02, -4.390734511883770397e-02, -4.402591279322923268e-02, -4.414285646075716274e-02, -4.425817344780190454e-02, -4.437186113866109505e-02, -4.448391697559060665e-02, -4.459433845884520214e-02, -4.470312314671527620e-02, -4.481026865556295841e-02, -4.491577265985596812e-02, -4.501963289219865910e-02, -4.512184714336230779e-02, -4.522241326231255659e-02, -4.532132915623512254e-02, -4.541859279055930620e-02, -4.551420218898043907e-02, -4.560815543347856993e-02, -4.570045066433676972e-02, -4.579108608015700077e-02, -4.588005993787376557e-02, -4.596737055276535477e-02, -4.605301629846447059e-02, -4.613699560696565838e-02, -4.621930696863099652e-02, -4.629994893219394059e-02, -4.637892010476165477e-02, -4.645621915181401274e-02, -4.653184479720262612e-02, -4.660579582314586244e-02, -4.667807107022313440e-02, -4.674866943736685765e-02, -4.681758988185266007e-02, -4.688483141928711379e-02, -4.695039312359397532e-02, -4.701427412699839964e-02, -4.707647362000887126e-02, -4.713699085139760880e-02, -4.719582512817859649e-02, -4.725297581558410981e-02, -4.730844233703894453e-02, -4.736222417413284147e-02, -4.741432086659043421e-02, -4.746473201224087057e-02, -4.751345726698293082e-02, -4.756049634475089521e-02, -4.760584901747635239e-02, -4.764951511504921661e-02, -4.769149452527685767e-02, -4.773178719384044838e-02, -4.777039312425021556e-02, -4.780731237779797804e-02, -4.784254507350924057e-02, -4.787609138809141573e-02, -4.790795155588148391e-02, -4.793812586879121762e-02, -4.796661467625110836e-02, -4.799341838515095576e-02, -4.801853745978074128e-02, -4.804197242176705407e-02, -4.806372385001020375e-02, -4.808379238061719074e-02, -4.810217870683440589e-02, -4.811888357897738111e-02, -4.813390780435974903e-02, -4.814725224721889962e-02, -4.815891782864113041e-02, -4.816890552648405571e-02, -4.817721637529769063e-02, -4.818385146624309251e-02, -4.818881194700976034e-02, -4.819209902173104271e-02, -4.819371395089716570e-02, -4.819365805126699792e-02, -4.819193269577821959e-02, -4.818853931345431357e-02, -4.818347938931162588e-02, -4.817675446426313013e-02, -4.816836613502095688e-02, -4.815831605399711890e-02, -4.814660592920209925e-02, -4.813323752414238460e-02, -4.811821265771498018e-02, -4.810153320410152228e-02, -4.808320109265933756e-02, -4.806321830781184329e-02, -4.804158688893610946e-02, -4.801830893024960911e-02, -4.799338658069447067e-02, -4.796682204382023140e-02, -4.793861757766496728e-02, -4.790877549463466722e-02, -4.787729816138016486e-02, -4.784418799867379973e-02, -4.780944748128269223e-02, -4.777307913784129001e-02, -4.773508555072199927e-02, -4.769546935590419923e-02, -4.765423324284077944e-02, -4.761137995432414977e-02, -4.756691228634986335e-02, -4.752083308797826894e-02, -4.747314526119529587e-02, -4.742385176077097697e-02, -4.737295559411616036e-02, -4.732045982113838173e-02, -4.726636755409471119e-02, -4.721068195744436424e-02, -4.715340624769884942e-02, -4.709454369327053386e-02, -4.703409761431960601e-02, -4.697207138259974074e-02, -4.690846842130179384e-02, -4.684329220489558826e-02, -4.677654625897107593e-02, -4.670823416007649498e-02, -4.663835953555664493e-02, -4.656692606338756757e-02, -4.649393747201126942e-02, -4.641939754016849440e-02, -4.634331009672902624e-02, -4.626567902052154679e-02, -4.618650824016166251e-02, -4.610580173387752306e-02, -4.602356352933524575e-02, -4.593979770346184183e-02, -4.585450838226686615e-02, -4.576769974066238061e-02, -4.567937600228236250e-02, -4.558954143929872665e-02, -4.549820037223782643e-02, -4.540535716979402642e-02, -4.531101624864267846e-02, -4.521518207325108535e-02, -4.511785915568827798e-02, -4.501905205543316885e-02, -4.491876537918113726e-02, -4.481700378065004570e-02, -4.471377196038264779e-02, -4.460907466555085604e-02, -4.450291668975525639e-02, -4.439530287282546922e-02, -4.428623810061761701e-02, -4.417572730481238857e-02, -4.406377546270856538e-02, -4.395038759701863640e-02, -4.383556877566043702e-02, -4.371932411154887815e-02, -4.360165876238526056e-02, -4.348257793044650599e-02, -4.336208686237141147e-02, -4.324019084894727138e-02, -4.311689522489405013e-02, -4.299220536864727799e-02, -4.286612670214035026e-02, -4.273866469058475170e-02, -4.260982484224946909e-02, -4.247961270823868291e-02, -4.234803388226898030e-02, -4.221509400044389654e-02, -4.208079874102885198e-02, -4.194515382422375066e-02, -4.180816501193435064e-02, -4.166983810754284340e-02, -4.153017895567748252e-02, -4.138919344197949934e-02, -4.124688749287076101e-02, -4.110326707531898605e-02, -4.095833819660176650e-02, -4.081210690407020836e-02, -4.066457928491069851e-02, -4.051576146590552679e-02, -4.036565961319268925e-02, -4.021427993202473378e-02, -4.006162866652517029e-02, -3.990771209944581760e-02, -3.975253655192109020e-02, -3.959610838322231291e-02, -3.943843399051047416e-02, -3.927951980858845893e-02, -3.911937230965078366e-02, -3.895799800303442056e-02, -3.879540343496618721e-02, -3.863159518831146833e-02, -3.846657988231934333e-02, -3.830036417236910157e-02, -3.813295474971411386e-02, -3.796435834122510733e-02, -3.779458170913279486e-02, -3.762363165076928334e-02, -3.745151499830794151e-02, -3.727823861850332321e-02, -3.710380941242927971e-02, -3.692823431521626704e-02, -3.675152029578850760e-02, -3.657367435659860527e-02, -3.639470353336279884e-02, -3.621461489479418927e-02, -3.603341554233650823e-02, -3.585111260989409798e-02, -3.566771326356503458e-02, -3.548322470136976159e-02, -3.529765415298060510e-02, -3.511100887945043519e-02, -3.492329617294022415e-02, -3.473452335644471728e-02, -3.454469778351952625e-02, -3.435382683800535658e-02, -3.416191793375215197e-02, -3.396897851434274584e-02, -3.377501605281544445e-02, -3.358003805138540937e-02, -3.338405204116585978e-02, -3.318706558188833783e-02, -3.298908626162218305e-02, -3.279012169649338226e-02, -3.259017953040219823e-02, -3.238926743474049991e-02, -3.218739310810864174e-02, -3.198456427603126040e-02, -3.178078869067160750e-02, -3.157607413054729084e-02, -3.137042840024306667e-02, -3.116385933012424947e-02, -3.095637477604932727e-02, -3.074798261908187960e-02, -3.053869076520074333e-02, -3.032850714501227757e-02, -3.011743971345876361e-02, -2.990549644952865752e-02, -2.969268535596459799e-02, -2.947901445897259387e-02, -2.926449180792852628e-02, -2.904912547508570198e-02, -2.883292355528170245e-02, -2.861589416564302643e-02, -2.839804544529225122e-02, -2.817938555505131171e-02, -2.795992267714690269e-02, -2.773966501491360176e-02, -2.751862079249831755e-02, -2.729679825456143502e-02, -2.707420566598130532e-02, -2.685085131155455843e-02, -2.662674349569844195e-02, -2.640189054215152931e-02, -2.617630079367494825e-02, -2.594998261175176721e-02, -2.572294437628747446e-02, -2.549519448530907645e-02, -2.526674135466419960e-02, -2.503759341772020253e-02, -2.480775912506162639e-02, -2.457724694418877281e-02, -2.434606535921502238e-02, -2.411422287056476377e-02, -2.388172799466880408e-02, -2.364858926366300573e-02, -2.341481522508297164e-02, -2.318041444156099598e-02, -2.294539549052141553e-02, -2.270976696387663404e-02, -2.247353746772122116e-02, -2.223671562202844676e-02, -2.199931006034350905e-02, -2.176132942947965263e-02, -2.152278238921035911e-02, -2.128367761196581220e-02, -2.104402378252490449e-02, -2.080382959770994342e-02, -2.056310376607967810e-02, -2.032185500762339128e-02, -2.008009205345307607e-02, -1.983782364549729893e-02, -1.959505853619383786e-02, -1.935180548818230331e-02, -1.910807327399761946e-02, -1.886387067576157997e-02, -1.861920648487594074e-02, -1.837408950171459318e-02, -1.812852853531673331e-02, -1.788253240307727948e-02, -1.763610993044150560e-02, -1.738926995059542069e-02, -1.714202130415855285e-02, -1.689437283887624056e-02, -1.664633340931207656e-02, -1.639791187653862406e-02, -1.614911710783160231e-02, -1.589995797636059929e-02, -1.565044336088179319e-02, -1.540058214543002166e-02, -1.515038321901172359e-02, -1.489985547529647236e-02, -1.464900781230964177e-02, -1.439784913212591513e-02, -1.414638834055993201e-02, -1.389463434686135160e-02, -1.364259606340595746e-02, -1.339028240538946146e-02, -1.313770229052024785e-02, -1.288486463871350851e-02, -1.263177837178292191e-02, -1.237845241313639301e-02, -1.212489568746820921e-02, -1.187111712045369090e-02, -1.161712563844312894e-02, -1.136293016815685328e-02, -1.110853963637818166e-02, -1.085396296965038948e-02, -1.059920909397008178e-02, -1.034428693448308408e-02, -1.008920541518053791e-02, -9.833973458593743902e-03, -9.578599985490971955e-03, -9.323093914573563762e-03, -9.067464162173310277e-03, -8.811719641947927950e-03, -8.555869264580420741e-03, -8.299921937475201669e-03, -8.043886564456753999e-03, -7.787772045467711290e-03, -7.531587276268427583e-03, -7.275341148134297636e-03, -7.019042547557440004e-03, -6.762700355944790964e-03, -6.506323449319266310e-03, -6.249920698019990721e-03, -5.993500966404121354e-03, -5.737073112547368646e-03, -5.480645987946627419e-03, -5.224228437222215062e-03, -4.967829297820585029e-03, -4.711457399718278066e-03, -4.455121565124857755e-03, -4.198830608187782872e-03, -3.942593334696933675e-03, -3.686418541790675157e-03, -3.430315017659999518e-03, -3.174291541257058796e-03, -2.918356882000325194e-03, -2.662519799482811027e-03, -2.406789043179776919e-03, -2.151173352158020774e-03, -1.895681454783338347e-03, -1.640322068432381337e-03, -1.385103899201141223e-03, -1.130035641617361608e-03, -8.751259783502362546e-04, -6.203835799247027277e-04, -3.658171044325204090e-04, -1.114351972464500416e-04, 1.427535092659879619e-04, 3.967403960271835128e-04, 6.505168575349715978e-04, 9.040743021459496896e-04, 1.157404152358894713e-03, 1.410497845097456997e-03, 1.663346831991413272e-03, 1.915942579658723487e-03, 2.168276569985339974e-03, 2.420340300405178155e-03, 2.672125284178331929e-03, 2.923623050670949835e-03, 3.174825145630515068e-03, 3.425723131464205283e-03, 3.676308587514073942e-03, 3.926573110332396040e-03, 4.176508313955305980e-03, 4.426105830177932965e-03, 4.675357308825033031e-03, 4.924254418024512012e-03, 5.172788844477903616e-03, 5.420952293730155365e-03, 5.668736490439921054e-03, 5.916133178647458440e-03, 6.163134122042608458e-03, 6.409731104230886184e-03, 6.655915929000998620e-03, 6.901680420587838309e-03, 7.147016423938205680e-03, 7.391915804973368115e-03, 7.636370450851612084e-03, 7.880372270228933052e-03, 8.123913193521218115e-03, 8.366985173161568812e-03, 8.609580183860635408e-03, 8.851690222863483476e-03, 9.093307310206582769e-03, 9.334423488972936472e-03, 9.575030825547659746e-03, 9.815121409871190375e-03, 1.005468735569220277e-02, 1.029372080081947596e-02, 1.053221390737212222e-02, 1.077015886203006555e-02, 1.100754787628239854e-02, 1.124437318667508533e-02, 1.148062705505716388e-02, 1.171630176882771171e-02, 1.195138964117840527e-02, 1.218588301133870927e-02, 1.241977424481747853e-02, 1.265305573364454254e-02, 1.288571989661032278e-02, 1.311775917950654298e-02, 1.334916605536229026e-02, 1.357993302468250840e-02, 1.381005261568314831e-02, 1.403951738452622819e-02, 1.426831991555274973e-02, 1.449645282151618662e-02, 1.472390874381300507e-02, 1.495068035271317035e-02, 1.517676034758918061e-02, 1.540214145714347872e-02, 1.562681643963588496e-02, 1.585077808310851599e-02, 1.607401920561048539e-02, 1.629653265542033505e-02, 1.651831131126934443e-02, 1.673934808256050122e-02, 1.695963590958959877e-02, 1.717916776376256921e-02, 1.739793664781313573e-02, 1.761593559601792869e-02, 1.783315767441211175e-02, 1.804959598100195489e-02, 1.826524364597752886e-02, 1.848009383192267263e-02, 1.869413973402626536e-02, 1.890737458028849544e-02, 1.911979163172956853e-02, 1.933138418259487679e-02, 1.954214556055955745e-02, 1.975206912693131325e-02, 1.996114827685321891e-02, 2.016937643950366885e-02, 2.037674707829554774e-02, 2.058325369107523797e-02, 2.078888981031776911e-02, 2.099364900332346962e-02, 2.119752487241136421e-02, 2.140051105511208904e-02, 2.160260122435852387e-02, 2.180378908867731946e-02, 2.200406839237566484e-02, 2.220343291572988986e-02, 2.240187647517083089e-02, 2.259939292346849898e-02, 2.279597614991486082e-02, 2.299162008050662301e-02, 2.318631867812414107e-02, 2.338006594271169886e-02, 2.357285591145470358e-02, 2.376468265895527107e-02, 2.395554029740802962e-02, 2.414542297677284982e-02, 2.433432488494709570e-02, 2.452224024793563800e-02, 2.470916333002115550e-02, 2.489508843393019658e-02, 2.508000990100086453e-02, 2.526392211134685650e-02, 2.544681948402115201e-02, 2.562869647717732485e-02, 2.580954758823139628e-02, 2.598936735401911197e-02, 2.616815035095467271e-02, 2.634589119518640846e-02, 2.652258454275164753e-02, 2.669822508972909819e-02, 2.687280757239155632e-02, 2.704632676735546984e-02, 2.721877749172962879e-02, 2.739015460326264806e-02, 2.756045300048807351e-02, 2.772966762286941528e-02, 2.789779345094221472e-02, 2.806482550645560473e-02, 2.823075885251150746e-02, 2.839558859370369323e-02, 2.855930987625323464e-02, 2.872191788814460259e-02, 2.888340785925901447e-02, 2.904377506150637375e-02, 2.920301480895552346e-02, 2.936112245796436426e-02, 2.951809340730592035e-02, 2.967392309829521707e-02, 2.982860701491337960e-02, 2.998214068393063175e-02, 3.013451967502715073e-02, 3.028573960091325915e-02, 3.043579611744749377e-02, 3.058468492375314429e-02, 3.073240176233360543e-02, 3.087894241918508892e-02, 3.102430272390957477e-02, 3.116847854982460891e-02, 3.131146581407209806e-02, 3.145326047772543931e-02, 3.159385854589585874e-02, 3.173325606783530123e-02, 3.187144913703984089e-02, 3.200843389135021866e-02, 3.214420651305129051e-02, 3.227876322896932465e-02, 3.241210031056863256e-02, 3.254421407404577138e-02, 3.267510088042289290e-02, 3.280475713563807405e-02, 3.293317929063656335e-02, 3.306036384145739221e-02, 3.318630732932101313e-02, 3.331100634071352401e-02, 3.343445750747046225e-02, 3.355665750685804527e-02, 3.367760306165377970e-02, 3.379729094022449615e-02, 3.391571795660333621e-02, 3.403288097056535177e-02, 3.414877688770053682e-02, 3.426340265948638747e-02, 3.437675528335786684e-02, 3.448883180277667604e-02, 3.459962930729763853e-02, 3.470914493263538292e-02, 3.481737586072709834e-02, 3.492431931979551180e-02, 3.502997258440931211e-02, 3.513433297554234558e-02, 3.523739786063057738e-02, 3.533916465362867132e-02, 3.543963081506344009e-02, 3.553879385208651154e-02, 3.563665131852564172e-02, 3.573320081493307210e-02, 3.582843998863430995e-02, 3.592236653377334915e-02, 3.601497819135713457e-02, 3.610627274929843755e-02, 3.619624804245726718e-02, 3.628490195267933260e-02, 3.637223240883519920e-02, 3.645823738685539939e-02, 3.654291490976566137e-02, 3.662626304771939012e-02, 3.670827991802962098e-02, 3.678896368519790627e-02, 3.686831256094273701e-02, 3.694632480422611887e-02, 3.702299872127819136e-02, 3.709833266561997356e-02, 3.717232503808562405e-02, 3.724497428684171718e-02, 3.731627890740588788e-02, 3.738623744266306864e-02, 3.745484848288076901e-02, 3.752211066572234965e-02, 3.758802267625870747e-02, 3.765258324697849657e-02, 3.771579115779633701e-02, 3.777764523606016306e-02, 3.783814435655578901e-02, 3.789728744151123208e-02, 3.795507346059798920e-02, 3.801150143093195294e-02, 3.806657041707171840e-02, 3.812027953101626565e-02, 3.817262793219978328e-02, 3.822361482748581896e-02, 3.827323947116003516e-02, 3.832150116491998132e-02, 3.836839925786485889e-02, 3.841393314648246932e-02, 3.845810227463543340e-02, 3.850090613354515551e-02, 3.854234426177444162e-02, 3.858241624520869495e-02, 3.862112171703494662e-02, 3.865846035772015771e-02, 3.869443189498693314e-02, 3.872903610378839595e-02, 3.876227280628136845e-02, 3.879414187179720114e-02, 3.882464321681215053e-02, 3.885377680491545332e-02, 3.888154264677603361e-02, 3.890794080010710754e-02, 3.893297136963060068e-02, 3.895663450703810982e-02, 3.897893041095178840e-02, 3.899985932688297685e-02, 3.901942154718916755e-02, 3.903761741103010247e-02, 3.905444730432132416e-02, 3.906991165968676238e-02, 3.908401095641005074e-02, 3.909674572038326912e-02, 3.910811652405543626e-02, 3.911812398637815741e-02, 3.912676877275057807e-02, 3.913405159496266550e-02, 3.913997321113658889e-02, 3.914453442566696861e-02, 3.914773608915943226e-02, 3.914957909836734584e-02, 3.915006439612759431e-02, 3.914919297129441228e-02, 3.914696585867177836e-02, 3.914338413894432461e-02, 3.913844893860665003e-02, 3.913216142989146829e-02, 3.912452283069554199e-02, 3.911553440450481894e-02, 3.910519746031777127e-02, 3.909351335256698590e-02, 3.908048348103985298e-02, 3.906610929079719352e-02, 3.905039227209091551e-02, 3.903333396027936636e-02, 3.901493593574209551e-02, 3.899519982379302113e-02, 3.897412729459116126e-02, 3.895172006305153839e-02, 3.892797988875280196e-02, 3.890290857584489254e-02, 3.887650797295454097e-02, 3.884877997308908842e-02, 3.881972651353962633e-02, 3.878934957578208942e-02, 3.875765118537688458e-02, 3.872463341186761082e-02, 3.869029836867765582e-02, 3.865464821300632070e-02, 3.861768514572199579e-02, 3.857941141125584977e-02, 3.853982929749250746e-02, 3.849894113565995035e-02, 3.845674930021829308e-02, 3.841325620874662394e-02, 3.836846432182876299e-02, 3.832237614293747263e-02, 3.827499421831773163e-02, 3.822632113686743466e-02, 3.817635953001870253e-02, 3.812511207161575072e-02, 3.807258147779273710e-02, 3.801877050684965981e-02, 3.796368195912738080e-02, 3.790731867688070661e-02, 3.784968354415032404e-02, 3.779077948663394498e-02, 3.773060947155543188e-02, 3.766917650753256325e-02, 3.760648364444421632e-02, 3.754253397329565534e-02, 3.747733062608224475e-02, 3.741087677565298891e-02, 3.734317563557109504e-02, 3.727423045997497325e-02, 3.720404454343683581e-02, 3.713262122082020000e-02, 3.705996386713648200e-02, 3.698607589740000867e-02, 3.691096076648173185e-02, 3.683462196896204743e-02, 3.675706303898171323e-02, 3.667828755009259339e-02, 3.659829911510561334e-02, 3.651710138593901311e-02, 3.643469805346447737e-02, 3.635109284735237728e-02, 3.626628953591548576e-02, 3.618029192595203364e-02, 3.609310386258689218e-02, 3.600472922911215207e-02, 3.591517194682605774e-02, 3.582443597487114384e-02, 3.573252531007095611e-02, 3.563944398676543307e-02, 3.554519607664550357e-02, 3.544978568858653256e-02, 3.535321696848028883e-02, 3.525549409906547638e-02, 3.515662129975866135e-02, 3.505660282648188214e-02, 3.495544297149060647e-02, 3.485314606320048109e-02, 3.474971646601232589e-02, 3.464515858013641342e-02, 3.453947684141583929e-02, 3.443267572114830366e-02, 3.432475972590728203e-02, 3.421573339736153768e-02, 3.410560131209468965e-02, 3.399436808142207445e-02, 3.388203835120793400e-02, 3.376861680168111168e-02, 3.365410814724927729e-02, 3.353851713631293696e-02, 3.342184855107770830e-02, 3.330410720736565189e-02, 3.318529795442622110e-02, 3.306542567474547722e-02, 3.294449528385426373e-02, 3.282251173013660955e-02, 3.269947999463518329e-02, 3.257540509085745523e-02, 3.245029206458004134e-02, 3.232414599365244362e-02, 3.219697198779936792e-02, 3.206877518842285446e-02, 3.193956076840260422e-02, 3.180933393189597919e-02, 3.167809991413680221e-02, 3.154586398123367108e-02, 3.141263142996627428e-02, 3.127840758758216461e-02, 3.114319781159198899e-02, 3.100700748956309108e-02, 3.086984203891421363e-02, 3.073170690670692581e-02, 3.059260756943811901e-02, 3.045254953283036900e-02, 3.031153833162273867e-02, 3.016957952935862136e-02, 3.002667871817562770e-02, 2.988284151859190926e-02, 2.973807357929347459e-02, 2.959238057691976689e-02, 2.944576821584931822e-02, 2.929824222798289510e-02, 2.914980837252825405e-02, 2.900047243578204176e-02, 2.885024023091202483e-02, 2.869911759773830298e-02, 2.854711040251367224e-02, 2.839422453770320057e-02, 2.824046592176318246e-02, 2.808584049891964599e-02, 2.793035423894522917e-02, 2.777401313693676418e-02, 2.761682321309034960e-02, 2.745879051247763006e-02, 2.729992110481971324e-02, 2.714022108426198884e-02, 2.697969656914598821e-02, 2.681835370178397085e-02, 2.665619864822913604e-02, 2.649323759804825609e-02, 2.632947676409113855e-02, 2.616492238226189246e-02, 2.599958071128747814e-02, 2.583345803248688483e-02, 2.566656064953919125e-02, 2.549889488825139716e-02, 2.533046709632500587e-02, 2.516128364312291560e-02, 2.499135091943482587e-02, 2.482067533724264391e-02, 2.464926332948581475e-02, 2.447712134982420185e-02, 2.430425587240298002e-02, 2.413067339161478406e-02, 2.395638042186325548e-02, 2.378138349732370968e-02, 2.360568917170620395e-02, 2.342930401801543439e-02, 2.325223462831186444e-02, 2.307448761347139291e-02, 2.289606960294561511e-02, 2.271698724451986368e-02, 2.253724720407314711e-02, 2.235685616533534745e-02, 2.217582082964546231e-02, 2.199414791570874703e-02, 2.181184415935418300e-02, 2.162891631329006206e-02, 2.144537114686094134e-02, 2.126121544580271763e-02, 2.107645601199834365e-02, 2.089109966323285383e-02, 2.070515323294745344e-02, 2.051862356999407597e-02, 2.033151753838897610e-02, 2.014384201706698879e-02, 1.995560389963323827e-02, 1.976681009411762960e-02, 1.957746752272627316e-02, 1.938758312159392927e-02, 1.919716384053600858e-02, 1.900621664280056217e-02, 1.881474850481856809e-02, 1.862276641595629265e-02, 1.843027737826500798e-02, 1.823728840623209391e-02, 1.804380652653100880e-02, 1.784983877777181899e-02, 1.765539221025032995e-02, 1.746047388569797049e-02, 1.726509087703175307e-02, 1.706925026810185431e-02, 1.687295915344256061e-02, 1.667622463801951213e-02, 1.647905383697905249e-02, 1.628145387539623248e-02, 1.608343188802377824e-02, 1.588499501903887015e-02, 1.568615042179280147e-02, 1.548690525855737042e-02, 1.528726670027324291e-02, 1.508724192629739939e-02, 1.488683812415080368e-02, 1.468606248926533631e-02, 1.448492222473132980e-02, 1.428342454104480387e-02, 1.408157665585427036e-02, 1.387938579370845242e-02, 1.367685918580233834e-02, 1.347400406972472375e-02, 1.327082768920489174e-02, 1.306733729385999888e-02, 1.286354013894051677e-02, 1.265944348507900934e-02, 1.245505459803523084e-02, 1.225038074844389188e-02, 1.204542921156104979e-02, 1.184020726701153631e-02, 1.163472219853503228e-02, 1.142898129373349364e-02, 1.122299184381787135e-02, 1.101676114335571263e-02, 1.081029649001691295e-02, 1.060360518432260958e-02, 1.039669452939095962e-02, 1.018957183068507945e-02, 9.982244395760354536e-03, 9.774719534012271324e-03, 9.567004556423359257e-03, 9.359106775311510154e-03, 9.151033504077636660e-03, 8.942792056953613455e-03, 8.734389748750952254e-03, 8.525833894608396066e-03, 8.317131809740840528e-03, 8.108290809187831960e-03, 7.899318207562969207e-03, 7.690221318801668780e-03, 7.481007455912013458e-03, 7.271683930722933759e-03, 7.062258053634427706e-03, 6.852737133367259315e-03, 6.643128476713625920e-03, 6.433439388286207872e-03, 6.223677170270484720e-03, 6.013849122174232467e-03, 5.803962540579294185e-03, 5.594024718892734796e-03, 5.384042947099001997e-03, 5.174024511511204211e-03, 4.963976694523694784e-03, 4.753906774365251192e-03, 4.543822024850515187e-03, 4.333729715135012546e-03, 4.123637109467314862e-03, 3.913551466943596124e-03, 3.703480041261589077e-03, 3.493430080475851737e-03, 3.283408826751327801e-03, 3.073423516120447636e-03, 2.863481378237488391e-03, 2.653589636135308093e-03, 2.443755505981569289e-03, 2.233986196836339200e-03, 2.024288910407985934e-03, 1.814670840812705049e-03, 1.605139174331314143e-03, 1.395701089168377386e-03, 1.186363755211621495e-03, 9.771343337907146317e-04, 7.680199774377314409e-04, 5.590278296473556166e-04, 3.501650246384149985e-04, 1.414386871139108773e-04, -6.714406797532524471e-05, -2.755761356696215117e-04, -4.838504212369299103e-04, -6.919598404096564915e-04, -8.998973196200926337e-04, -1.107655796237313854e-03, -1.315228218800422108e-03, -1.522607547254347564e-03, -1.729786753183119906e-03, -1.936758820043437681e-03, -2.143516743396924572e-03, -2.350053531143047464e-03, -2.556362203750230187e-03, -2.762435794486947736e-03, -2.968267349652289888e-03, -3.173849928805214018e-03, -3.379176604994517819e-03, -3.584240464986861337e-03, -3.789034609494973740e-03, -3.993552153404298852e-03, -4.197786226001021942e-03, -4.401729971196341289e-03, -4.605376547753154901e-03, -4.808719129510105258e-03, -5.011750905605867785e-03, -5.214465080701932709e-03, -5.416854875205988872e-03, -5.618913525493401950e-03, -5.820634284128644101e-03, -6.022010420085259497e-03, -6.223035218966967846e-03, -6.423701983225124992e-03, -6.624004032378331096e-03, -6.823934703229525209e-03, -7.023487350083052090e-03, -7.222655344960342109e-03, -7.421432077815970189e-03, -7.619810956751992166e-03, -7.817785408231142305e-03, -8.015348877291375226e-03, -8.212494827756386742e-03, -8.409216742448382895e-03, -8.605508123398268594e-03, -8.801362492055639364e-03, -8.996773389497357554e-03, -9.191734376637086118e-03, -9.386239034430995595e-03, -9.580280964085745310e-03, -9.773853787263610954e-03, -9.966951146287629515e-03, -1.015956670434512571e-02, -1.035169414569211098e-02, -1.054332717585409855e-02, -1.073445952182879200e-02, -1.092508493228623763e-02, -1.111519717776823964e-02, -1.130479005088781685e-02, -1.149385736652666808e-02, -1.168239296203250031e-02, -1.187039069741461193e-02, -1.205784445554020090e-02, -1.224474814232723481e-02, -1.243109568693899838e-02, -1.261688104197600940e-02, -1.280209818366766228e-02, -1.298674111206232600e-02, -1.317080385121814808e-02, -1.335428044939008380e-02, -1.353716497921899839e-02, -1.371945153791762941e-02, -1.390113424745671560e-02, -1.408220725474928006e-02, -1.426266473183509034e-02, -1.444250087606311662e-02, -1.462170991027329087e-02, -1.480028608297755469e-02, -1.497822366853926446e-02, -1.515551696735254784e-02, -1.533216030601970530e-02, -1.550814803752814490e-02, -1.568347454142571956e-02, -1.585813422399643888e-02, -1.603212151843270289e-02, -1.620543088500921505e-02, -1.637805681125380219e-02, -1.654999381211829518e-02, -1.672123643014758465e-02, -1.689177923564882597e-02, -1.706161682685768122e-02, -1.723074383010550492e-02, -1.739915489998408726e-02, -1.756684471950997056e-02, -1.773380800028697551e-02, -1.790003948266882111e-02, -1.806553393591952758e-02, -1.823028615837306646e-02, -1.839429097759243473e-02, -1.855754325052635240e-02, -1.872003786366661926e-02, -1.888176973320252611e-02, -1.904273380517574471e-02, -1.920292505563232430e-02, -1.936233849077598559e-02, -1.952096914711735215e-02, -1.967881209162467004e-02, -1.983586242187164450e-02, -1.999211526618507179e-02, -2.014756578379050395e-02, -2.030220916495782332e-02, -2.045604063114460358e-02, -2.060905543513915847e-02, -2.076124886120123136e-02, -2.091261622520351401e-02, -2.106315287476944256e-02, -2.121285418941205869e-02, -2.136171558067034848e-02, -2.150973249224502268e-02, -2.165690040013229511e-02, -2.180321481275778600e-02, -2.194867127110818744e-02, -2.209326534886145096e-02, -2.223699265251750587e-02, -2.237984882152514732e-02, -2.252182952841035382e-02, -2.266293047890131918e-02, -2.280314741205369602e-02, -2.294247610037327897e-02, -2.308091234993929486e-02, -2.321845200052402927e-02, -2.335509092571364312e-02, -2.349082503302600891e-02, -2.362565026402827645e-02, -2.375956259445225274e-02, -2.389255803431026073e-02, -2.402463262800718508e-02, -2.415578245445383979e-02, -2.428600362717741115e-02, -2.441529229443087021e-02, -2.454364463930214582e-02, -2.467105687982060203e-02, -2.479752526906326901e-02, -2.492304609525907572e-02, -2.504761568189283263e-02, -2.517123038780650496e-02, -2.529388660730040247e-02, -2.541558077023262779e-02, -2.553630934211734843e-02, -2.565606882422114682e-02, -2.577485575365960971e-02, -2.589266670349036487e-02, -2.600949828280732512e-02, -2.612534713683156706e-02, -2.624020994700220627e-02, -2.635408343106486126e-02, -2.646696434316042970e-02, -2.657884947391070049e-02, -2.668973565050400745e-02, -2.679961973677885689e-02, -2.690849863330639982e-02, -2.701636927747217559e-02, -2.712322864355530203e-02, -2.722907374280770024e-02, -2.733390162353071737e-02, -2.743770937115195402e-02, -2.754049410829891714e-02, -2.764225299487278742e-02, -2.774298322812055947e-02, -2.784268204270538144e-02, -2.794134671077564899e-02, -2.803897454203365183e-02, -2.813556288380150705e-02, -2.823110912108676984e-02, -2.832561067664642745e-02, -2.841906501104941515e-02, -2.851146962273781033e-02, -2.860282204808687473e-02, -2.869311986146369162e-02, -2.878236067528441508e-02, -2.887054214006988875e-02, -2.895766194450049777e-02, -2.904371781546937967e-02, -2.912870751813411915e-02, -2.921262885596732917e-02, -2.929547967080571927e-02, -2.937725784289823769e-02, -2.945796129095207966e-02, -2.953758797217819268e-02, -2.961613588233447808e-02, -2.969360305576914522e-02, -2.976998756546063093e-02, -2.984528752305824761e-02, -2.991950107891983013e-02, -2.999262642214932037e-02, -3.006466178063167682e-02, -3.013560542106804088e-02, -3.020545564900779453e-02, -3.027421080888069091e-02, -3.034186928402699684e-02, -3.040842949672599091e-02, -3.047388990822378491e-02, -3.053824901875952513e-02, -3.060150536758995260e-02, -3.066365753301263097e-02, -3.072470413238886228e-02, -3.078464382216340028e-02, -3.084347529788432352e-02, -3.090119729422105208e-02, -3.095780858498090385e-02, -3.101330798312432885e-02, -3.106769434077895700e-02, -3.112096654925215755e-02, -3.117312353904214822e-02, -3.122416427984811213e-02, -3.127408778057861466e-02, -3.132289308935849725e-02, -3.137057929353534447e-02, -3.141714551968324137e-02, -3.146259093360639220e-02, -3.150691474034070239e-02, -3.155011618415422964e-02, -3.159219454854636511e-02, -3.163314915624525908e-02, -3.167297936920464296e-02, -3.171168458859845857e-02, -3.174926425481500170e-02, -3.178571784744874812e-02, -3.182104488529178404e-02, -3.185524492632346022e-02, -3.188831756769851256e-02, -3.192026244573401700e-02, -3.195107923589565746e-02, -3.198076765278123901e-02, -3.200932745010416636e-02, -3.203675842067514601e-02, -3.206306039638223693e-02, -3.208823324817009631e-02, -3.211227688601762942e-02, -3.213519125891409894e-02, -3.215697635483470707e-02, -3.217763220071370722e-02, -3.219715886241709957e-02, -3.221555644471373742e-02, -3.223282509124499040e-02, -3.224896498449319332e-02, -3.226397634574883905e-02, -3.227785943507630734e-02, -3.229061455127852504e-02, -3.230224203185996790e-02, -3.231274225298885749e-02, -3.232211562945740135e-02, -3.233036261464142941e-02, -3.233748370045810144e-02, -3.234347941732289983e-02, -3.234835033410499855e-02, -3.235209705808109182e-02, -3.235472023488864673e-02, -3.235622054847708817e-02, -3.235659872105840079e-02, -3.235585551305591306e-02, -3.235399172305213067e-02, -3.235100818773500170e-02, -3.234690578184324511e-02, -3.234168541811028447e-02, -3.233534804720666900e-02, -3.232789465768164811e-02, -3.231932627590312912e-02, -3.230964396599660116e-02, -3.229884882978276139e-02, -3.228694200671385767e-02, -3.227392467380860164e-02, -3.225979804558607583e-02, -3.224456337399872474e-02, -3.222822194836302140e-02, -3.221077509529027272e-02, -3.219222417861491992e-02, -3.217257059932268626e-02, -3.215181579547667784e-02, -3.212996124214287375e-02, -3.210700845131374964e-02, -3.208295897183143647e-02, -3.205781438930890848e-02, -3.203157632605083127e-02, -3.200424644097209920e-02, -3.197582642951619231e-02, -3.194631802357193739e-02, -3.191572299138863145e-02, -3.188404313749091529e-02, -3.185128030259157250e-02, -3.181743636350382182e-02, -3.178251323305173598e-02, -3.174651285998011246e-02, -3.170943722886302579e-02, -3.167128836001074921e-02, -3.163206830937623920e-02, -3.159177916845995471e-02, -3.155042306421346893e-02, -3.150800215894252604e-02, -3.146451865020816890e-02, -3.141997477072722145e-02, -3.137437278827146653e-02, -3.132771500556590094e-02, -3.128000376018543610e-02, -3.123124142445093607e-02, -3.118143040532366655e-02, -3.113057314429898761e-02, -3.107867211729903670e-02, -3.102572983456357292e-02, -3.097174884054076927e-02, -3.091673171377604459e-02, -3.086068106680010456e-02, -3.080359954601598338e-02, -3.074548983158499962e-02, -3.068635463731118201e-02, -3.062619671052560499e-02, -3.056501883196831998e-02, -3.050282381567042192e-02, -3.043961450883426664e-02, -3.037539379171316778e-02, -3.031016457748949428e-02, -3.024392981215225790e-02, -3.017669247437310479e-02, -3.010845557538209191e-02, -3.003922215884124308e-02, -2.996899530071836862e-02, -2.989777810915871664e-02, -2.982557372435642659e-02, -2.975238531842462272e-02, -2.967821609526432799e-02, -2.960306929043293386e-02, -2.952694817101107067e-02, -2.944985603546875982e-02, -2.937179621353038644e-02, -2.929277206603954700e-02, -2.921278698482115965e-02, -2.913184439254465699e-02, -2.904994774258463919e-02, -2.896710051888121834e-02, -2.888330623579958914e-02, -2.879856843798815971e-02, -2.871289070023605103e-02, -2.862627662732963180e-02, -2.853872985390795008e-02, -2.845025404431733920e-02, -2.836085289246543031e-02, -2.827053012167349971e-02, -2.817928948452856630e-02, -2.808713476273430945e-02, -2.799406976696127217e-02, -2.790009833669554809e-02, -2.780522434008783975e-02, -2.770945167380007429e-02, -2.761278426285258478e-02, -2.751522606046888711e-02, -2.741678104792164353e-02, -2.731745323437563891e-02, -2.721724665673099300e-02, -2.711616537946578628e-02, -2.701421349447717321e-02, -2.691139512092183966e-02, -2.680771440505578390e-02, -2.670317552007335851e-02, -2.659778266594506335e-02, -2.649154006925513380e-02, -2.638445198303774122e-02, -2.627652268661263141e-02, -2.616775648542009683e-02, -2.605815771085522037e-02, -2.594773072010065143e-02, -2.583647989595979147e-02, -2.572440964668787702e-02, -2.561152440582354500e-02, -2.549782863201859734e-02, -2.538332680886799808e-02, -2.526802344473786169e-02, -2.515192307259437807e-02, -2.503503024983027778e-02, -2.491734955809185581e-02, -2.479888560310459025e-02, -2.467964301449855277e-02, -2.455962644563235847e-02, -2.443884057341726146e-02, -2.431729009813999448e-02, -2.419497974328516793e-02, -2.407191425535708598e-02, -2.394809840370046641e-02, -2.382353698032086547e-02, -2.369823479970435340e-02, -2.357219669863688111e-02, -2.344542753602172833e-02, -2.331793219269839498e-02, -2.318971557125883154e-02, -2.306078259586426607e-02, -2.293113821206095235e-02, -2.280078738659578955e-02, -2.266973510723007193e-02, -2.253798638255474079e-02, -2.240554624180268739e-02, -2.227241973466238811e-02, -2.213861193108979109e-02, -2.200412792112037969e-02, -2.186897281467985177e-02, -2.173315174139509379e-02, -2.159666985040420775e-02, -2.145953231016553900e-02, -2.132174430826746375e-02, -2.118331105123606381e-02, -2.104423776434341531e-02, -2.090452969141478115e-02, -2.076419209463601853e-02, -2.062323025435881460e-02, -2.048164946890804194e-02, -2.033945505438608872e-02, -2.019665234447805616e-02, -2.005324669025632459e-02, -1.990924345998469625e-02, -1.976464803892110864e-02, -1.961946582912189180e-02, -1.947370224924338186e-02, -1.932736273434448523e-02, -1.918045273568861828e-02, -1.903297772054459575e-02, -1.888494317198787312e-02, -1.873635458870081399e-02, -1.858721748477324201e-02, -1.843753738950107066e-02, -1.828731984718711193e-02, -1.813657041693867225e-02, -1.798529467246682764e-02, -1.783349820188425208e-02, -1.768118660750349000e-02, -1.752836550563380627e-02, -1.737504052637872318e-02, -1.722121731343255815e-02, -1.706690152387747503e-02, -1.691209882797834949e-02, -1.675681490898013951e-02, -1.660105546290210551e-02, -1.644482619833365772e-02, -1.628813283622896832e-02, -1.613098110970202781e-02, -1.597337676382026839e-02, -1.581532555539919699e-02, -1.565683325279592850e-02, -1.549790563570262007e-02, -1.533854849494023682e-02, -1.517876763225092622e-02, -1.501856886009115925e-02, -1.485795800142423670e-02, -1.469694088951293762e-02, -1.453552336771072109e-02, -1.437371128925485873e-02, -1.421151051705718364e-02, -1.404892692349614565e-02, -1.388596639020774591e-02, -1.372263480787732498e-02, -1.355893807602950515e-02, -1.339488210282020059e-02, -1.323047280482640177e-02, -1.306571610683699043e-02, -1.290061794164303055e-02, -1.273518424982831784e-02, -1.256942097955895087e-02, -1.240333408637363938e-02, -1.223692953297348361e-02, -1.207021328901167895e-02, -1.190319133088352591e-02, -1.173586964151535246e-02, -1.156825421015453791e-02, -1.140035103215857569e-02, -1.123216610878496717e-02, -1.106370544697938239e-02, -1.089497505916626682e-02, -1.072598096303693967e-02, -1.055672918133917539e-02, -1.038722574166609305e-02, -1.021747667624580726e-02, -1.004748802172921243e-02, -9.877265818980634701e-03, -9.706816112865510396e-03, -9.536144952040109812e-03, -9.365258388740322487e-03, -9.194162478571054828e-03, -9.022863280294793342e-03, -8.851366855620984922e-03, -8.679679268995585395e-03, -8.507806587389124889e-03, -8.335754880087448138e-03, -8.163530218479833622e-03, -7.991138675848901210e-03, -7.818586327159883151e-03, -7.645879248850672230e-03, -7.473023518620261832e-03, -7.300025215219971969e-03, -7.126890418242071493e-03, -6.953625207910332784e-03, -6.780235664869733829e-03, -6.606727869977159495e-03, -6.433107904091067177e-03, -6.259381847862280010e-03, -6.085555781524558915e-03, -5.911635784685204120e-03, -5.737627936116367934e-03, -5.563538313545551318e-03, -5.389372993447197682e-03, -5.215138050833963146e-03, -5.040839559048849831e-03, -4.866483589555837749e-03, -4.692076211733416276e-03, -4.517623492665615893e-03, -4.343131496934970678e-03, -4.168606286414993332e-03, -3.994053920063510635e-03, -3.819480453715101177e-03, -3.644891939874956438e-03, -3.470294427512249195e-03, -3.295693961854606960e-03, -3.121096584181022853e-03, -2.946508331617845190e-03, -2.771935236932227854e-03, -2.597383328327730438e-03, -2.422858629239335506e-03, -2.248367158129460728e-03, -2.073914928283230718e-03, -1.899507947605078538e-03, -1.725152218415164406e-03, -1.550853737246128987e-03, -1.376618494640682172e-03, -1.202452474948495368e-03, -1.028361656124486979e-03, -8.543520095268402085e-04, -6.804294997161049489e-04, -5.066000842529871364e-04, -3.328697134991459019e-04, -1.592443304157407837e-04, 1.427012963595713283e-05, 1.876677390942900871e-04, 3.609425783958070534e-04, 5.340887361750209540e-04, 7.071003094617644849e-04, 8.799714038791712177e-04, 1.052696133841647284e-03, 1.225268622751578230e-03, 1.397683003195592704e-03, 1.569933417141219922e-03, 1.742014016132769879e-03, 1.913918961485100434e-03, 2.085642424480469836e-03, 2.257178586561334101e-03, 2.428521639524397306e-03, 2.599665785714316227e-03, 2.770605238216777670e-03, 2.941334221049340166e-03, 3.111846969355572517e-03, 3.282137729593889719e-03, 3.452200759730636361e-03, 3.622030329428905637e-03, 3.791620720238545340e-03, 3.960966225785719774e-03, 4.130061151961897901e-03, 4.298899817110462748e-03, 4.467476552216401685e-03, 4.635785701091860687e-03, 4.803821620562829207e-03, 4.971578680655551821e-03, 5.139051264781509601e-03, 5.306233769921847240e-03, 5.473120606812043910e-03, 5.639706200125558025e-03, 5.805984988655794529e-03, 5.971951425499591806e-03, 6.137599978238397064e-03, 6.302925129119171972e-03, 6.467921375235353813e-03, 6.632583228706884215e-03, 6.796905216858062544e-03, 6.960881882398097659e-03, 7.124507783597640309e-03, 7.287777494466331218e-03, 7.450685604929750683e-03, 7.613226721005292644e-03, 7.775395464976892976e-03, 7.937186475570675442e-03, 8.098594408128030261e-03, 8.259613934778883490e-03, 8.420239744614810284e-03, 8.580466543860569562e-03, 8.740289056044948240e-03, 8.899702022171707833e-03, 9.058700200889377441e-03, 9.217278368659456017e-03, 9.375431319925636373e-03, 9.533153867280931906e-03, 9.690440841634272509e-03, 9.847287092377029344e-03, 1.000368748754857165e-02, 1.015963691399949208e-02, 1.031513027755733003e-02, 1.047016250318834156e-02, 1.062472853515999092e-02, 1.077882333720293732e-02, 1.093244189267148468e-02, 1.108557920470326121e-02, 1.123823029637925110e-02, 1.139039021088145143e-02, 1.154205401165041278e-02, 1.169321678254269838e-02, 1.184387362798644365e-02, 1.199401967313636248e-02, 1.214365006402848626e-02, 1.229275996773403386e-02, 1.244134457251068124e-02, 1.258939908795639849e-02, 1.273691874515923798e-02, 1.288389879684765510e-02, 1.303033451754032762e-02, 1.317622120369482674e-02, 1.332155417385399998e-02, 1.346632876879472022e-02, 1.361054035167236914e-02, 1.375418430816635444e-02, 1.389725604662457245e-02, 1.403975099820661300e-02, 1.418166461702592002e-02, 1.432299238029171792e-02, 1.446372978845002731e-02, 1.460387236532248618e-02, 1.474341565824609235e-02, 1.488235523821109831e-02, 1.502068669999757911e-02, 1.515840566231226559e-02, 1.529550776792384242e-02, 1.543198868379625117e-02, 1.556784410122366916e-02, 1.570306973596197544e-02, 1.583766132836047710e-02, 1.597161464349286519e-02, 1.610492547128709873e-02, 1.623758962665301786e-02, 1.636960294961189652e-02, 1.650096130542204331e-02, 1.663166058470503042e-02, 1.676169670357096145e-02, 1.689106560374238966e-02, 1.701976325267692131e-02, 1.714778564368987790e-02, 1.727512879607541463e-02, 1.740178875522601504e-02, 1.752776159275231532e-02, 1.765304340660108634e-02, 1.777763032117215050e-02, 1.790151848743505233e-02, 1.802470408304427188e-02, 1.814718331245259927e-02, 1.826895240702566120e-02, 1.839000762515331441e-02, 1.851034525236080683e-02, 1.862996160141953961e-02, 1.874885301245588984e-02, 1.886701585305926993e-02, 1.898444651838999617e-02, 1.910114143128463504e-02, 1.921709704236146052e-02, 1.933230983012480808e-02, 1.944677630106780158e-02, 1.956049298977436540e-02, 1.967345645902069534e-02, 1.978566329987502606e-02, 1.989711013179604540e-02, 2.000779360273171464e-02, 2.011771038921536872e-02, 2.022685719646185459e-02, 2.033523075846227837e-02, 2.044282783807782264e-02, 2.054964522713178046e-02, 2.065567974650213759e-02, 2.076092824621122990e-02, 2.086538760551549451e-02, 2.096905473299415582e-02, 2.107192656663622182e-02, 2.117400007392666525e-02, 2.127527225193203558e-02, 2.137574012738435031e-02, 2.147540075676379959e-02, 2.157425122638124276e-02, 2.167228865245898056e-02, 2.176951018121016032e-02, 2.186591298891790366e-02, 2.196149428201302906e-02, 2.205625129714974125e-02, 2.215018130128231649e-02, 2.224328159173863742e-02, 2.233554949629345740e-02, 2.242698237324079399e-02, 2.251757761146537876e-02, 2.260733263051144248e-02, 2.269624488065293336e-02, 2.278431184296046685e-02, 2.287153102936801546e-02, 2.295789998273886981e-02, 2.304341627692980607e-02, 2.312807751685410501e-02, 2.321188133854456409e-02, 2.329482540921393521e-02, 2.337690742731499821e-02, 2.345812512259980859e-02, 2.353847625617705094e-02, 2.361795862056883730e-02, 2.369657003976634660e-02, 2.377430836928422567e-02, 2.385117149621337335e-02, 2.392715733927396754e-02, 2.400226384886581729e-02, 2.407648900711837139e-02, 2.414983082793995331e-02, 2.422228735706480687e-02, 2.429385667210001362e-02, 2.436453688257099806e-02, 2.443432612996527392e-02, 2.450322258777623552e-02, 2.457122446154478071e-02, 2.463832998890016709e-02, 2.470453743960009108e-02, 2.476984511556896626e-02, 2.483425135093558778e-02, 2.489775451206958923e-02, 2.496035299761625165e-02, 2.502204523853107654e-02, 2.508282969811246113e-02, 2.514270487203358953e-02, 2.520166928837308529e-02, 2.525972150764447741e-02, 2.531686012282503839e-02, 2.537308375938215205e-02, 2.542839107530048617e-02, 2.548278076110627871e-02, 2.553625153989148508e-02, 2.558880216733642673e-02, 2.564043143173149256e-02, 2.569113815399715409e-02, 2.574092118770400853e-02, 2.578977941909024740e-02, 2.583771176707915646e-02, 2.588471718329470386e-02, 2.593079465207653519e-02, 2.597594319049341058e-02, 2.602016184835584736e-02, 2.606344970822745480e-02, 2.610580588543500585e-02, 2.614722952807754797e-02, 2.618771981703453544e-02, 2.622727596597243874e-02, 2.626589722135054886e-02, 2.630358286242547722e-02, 2.634033220125447591e-02, 2.637614458269786286e-02, 2.641101938442010424e-02, 2.644495601688977640e-02, 2.647795392337858045e-02, 2.651001257995891022e-02, 2.654113149550076101e-02, 2.657131021166683760e-02, 2.660054830290738137e-02, 2.662884537645306485e-02, 2.665620107230712646e-02, 2.668261506323670387e-02, 2.670808705476243258e-02, 2.673261678514701409e-02, 2.675620402538339201e-02, 2.677884857918074596e-02, 2.680055028295023206e-02, 2.682130900578901314e-02, 2.684112464946362617e-02, 2.685999714839181624e-02, 2.687792646962372176e-02, 2.689491261282142207e-02, 2.691095561023793686e-02, 2.692605552669453256e-02, 2.694021245955745270e-02, 2.695342653871309752e-02, 2.696569792654264844e-02, 2.697702681789478085e-02, 2.698741344005808201e-02, 2.699685805273200137e-02, 2.700536094799652412e-02, 2.701292245028120292e-02, 2.701954291633272554e-02, 2.702522273518143808e-02, 2.702996232810703225e-02, 2.703376214860291407e-02, 2.703662268233945898e-02, 2.703854444712614630e-02, 2.703952799287312470e-02, 2.703957390155075496e-02, 2.703868278714928117e-02, 2.703685529563602460e-02, 2.703409210491271655e-02, 2.703039392477123506e-02, 2.702576149684807888e-02, 2.702019559457825848e-02, 2.701369702314778548e-02, 2.700626661944505527e-02, 2.699790525201160862e-02, 2.698861382099120368e-02, 2.697839325807823915e-02, 2.696724452646514711e-02, 2.695516862078862694e-02, 2.694216656707465116e-02, 2.692823942268271140e-02, 2.691338827624906171e-02, 2.689761424762835557e-02, 2.688091848783511623e-02, 2.686330217898348985e-02, 2.684476653422624565e-02, 2.682531279769255830e-02, 2.680494224442509996e-02, 2.678365618031573747e-02, 2.676145594204052541e-02, 2.673834289699345695e-02, 2.671431844321912538e-02, 2.668938400934478192e-02, 2.666354105451094678e-02, 2.663679106830125348e-02, 2.660913557067118990e-02, 2.658057611187589903e-02, 2.655111427239683838e-02, 2.652075166286785649e-02, 2.648948992399963176e-02, 2.645733072650366738e-02, 2.642427577101505790e-02, 2.639032678801446138e-02, 2.635548553774864911e-02, 2.631975381015071863e-02, 2.628313342475883593e-02, 2.624562623063405806e-02, 2.620723410627774294e-02, 2.616795895954709267e-02, 2.612780272757033936e-02, 2.608676737666114701e-02, 2.604485490223136870e-02, 2.600206732870353685e-02, 2.595840670942189607e-02, 2.591387512656297479e-02, 2.586847469104473773e-02, 2.582220754243538460e-02, 2.577507584886045561e-02, 2.572708180690964908e-02, 2.567822764154271270e-02, 2.562851560599365905e-02, 2.557794798167527250e-02, 2.552652707808165597e-02, 2.547425523269031267e-02, 2.542113481086329813e-02, 2.536716820574775808e-02, 2.531235783817458937e-02, 2.525670615655770460e-02, 2.520021563679113522e-02, 2.514288878214575307e-02, 2.508472812316510717e-02, 2.502573621756071925e-02, 2.496591565010545730e-02, 2.490526903252734958e-02, 2.484379900340185146e-02, 2.478150822804298103e-02, 2.471839939839432648e-02, 2.465447523291870030e-02, 2.458973847648720373e-02, 2.452419190026695200e-02, 2.445783830160899383e-02, 2.439068050393422213e-02, 2.432272135661921186e-02, 2.425396373488106910e-02, 2.418441053966127047e-02, 2.411406469750883644e-02, 2.404292916046315079e-02, 2.397100690593455957e-02, 2.389830093658639604e-02, 2.382481428021375816e-02, 2.375054998962340680e-02, 2.367551114251207484e-02, 2.359970084134392632e-02, 2.352312221322724883e-02, 2.344577840979123265e-02, 2.336767260706032467e-02, 2.328880800532946369e-02, 2.320918782903755306e-02, 2.312881532664080864e-02, 2.304769377048459730e-02, 2.296582645667543179e-02, 2.288321670495141111e-02, 2.279986785855253259e-02, 2.271578328409030317e-02, 2.263096637141572345e-02, 2.254542053348768116e-02, 2.245914920624014072e-02, 2.237215584844855221e-02, 2.228444394159532008e-02, 2.219601698973591719e-02, 2.210687851936197004e-02, 2.201703207926593298e-02, 2.192648124040389931e-02, 2.183522959575783656e-02, 2.174328076019725262e-02, 2.165063837034060870e-02, 2.155730608441520230e-02, 2.146328758211712984e-02, 2.136858656447056595e-02, 2.127320675368563410e-02, 2.117715189301673170e-02, 2.108042574661944668e-02, 2.098303209940706807e-02, 2.088497475690637845e-02, 2.078625754511327986e-02, 2.068688431034723316e-02, 2.058685891910513183e-02, 2.048618525791521400e-02, 2.038486723318956931e-02, 2.028290877107639251e-02, 2.018031381731211216e-02, 2.007708633707185053e-02, 1.997323031482039005e-02, 1.986874975416220296e-02, 1.976364867769043673e-02, 1.965793112683598964e-02, 1.955160116171619777e-02, 1.944466286098165894e-02, 1.933712032166413908e-02, 1.922897765902326431e-02, 1.912023900639222077e-02, 1.901090851502363482e-02, 1.890099035393466922e-02, 1.879048870975164043e-02, 1.867940778655364023e-02, 1.856775180571698311e-02, 1.845552500575733598e-02, 1.834273164217297553e-02, 1.822937598728661610e-02, 1.811546233008703988e-02, 1.800099497607002969e-02, 1.788597824707991932e-02, 1.777041648114840652e-02, 1.765431403233556559e-02, 1.753767527056864992e-02, 1.742050458148083555e-02, 1.730280636624986768e-02, 1.718458504143620391e-02, 1.706584503882006137e-02, 1.694659080523904654e-02, 1.682682680242484838e-02, 1.670655750683937638e-02, 1.658578740951064182e-02, 1.646452101586876049e-02, 1.634276284558048783e-02, 1.622051743238397958e-02, 1.609778932392419426e-02, 1.597458308158537094e-02, 1.585090328032566845e-02, 1.572675450851029541e-02, 1.560214136774425511e-02, 1.547706847270462552e-02, 1.535154045097384887e-02, 1.522556194287018674e-02, 1.509913760128024293e-02, 1.497227209149007247e-02, 1.484497009101580153e-02, 1.471723628943425247e-02, 1.458907538821377359e-02, 1.446049210054328564e-02, 1.433149115116272819e-02, 1.420207727619240100e-02, 1.407225522296166008e-02, 1.394202974983805438e-02, 1.381140562605604957e-02, 1.368038763154505975e-02, 1.354898055675716508e-02, 1.341718920249620681e-02, 1.328501837974356732e-02, 1.315247290948682625e-02, 1.301955762254639742e-02, 1.288627735940229245e-02, 1.275263697002040029e-02, 1.261864131368021190e-02, 1.248429525879919157e-02, 1.234960368276009218e-02, 1.221457147173649754e-02, 1.207920352051795529e-02, 1.194350473233585057e-02, 1.180748001868864999e-02, 1.167113429916675355e-02, 1.153447250127715915e-02, 1.139749956026906222e-02, 1.126022041895750891e-02, 1.112264002754829312e-02, 1.098476334346236948e-02, 1.084659533115965406e-02, 1.070814096196290137e-02, 1.056940521388274878e-02, 1.043039307143982242e-02, 1.029110952548958902e-02, 1.015155957304581837e-02, 1.001174821710356169e-02, 9.871680466462499567e-03, 9.731361335551406977e-03, 9.590795844249579150e-03, 9.449989017711180397e-03, 9.308945886188217320e-03, 9.167671484852981181e-03, 9.026170853621350715e-03, 8.884449036975935327e-03, 8.742511083788422066e-03, 8.600362047142311173e-03, 8.458006984156623068e-03, 8.315450955807572250e-03, 8.172699026751788567e-03, 8.029756265149227967e-03, 7.886627742485496917e-03, 7.743318533394381517e-03, 7.599833715481738375e-03, 7.456178369146524917e-03, 7.312357577404790011e-03, 7.168376425712182261e-03, 7.024240001786364630e-03, 6.879953395430116886e-03, 6.735521698354520435e-03, 6.590950004001026007e-03, 6.446243407365244774e-03, 6.301407004819813140e-03, 6.156445893937156043e-03, 6.011365173312808834e-03, 5.866169942389056619e-03, 5.720865301277692355e-03, 5.575456350583458433e-03, 5.429948191228325255e-03, 5.284345924274186888e-03, 5.138654650746986123e-03, 4.992879471460830859e-03, 4.847025486841466044e-03, 4.701097796750216586e-03, 4.555101500309456826e-03, 4.409041695724982661e-03, 4.262923480112671033e-03, 4.116751949321147824e-03, 3.970532197757900908e-03, 3.824269318213967695e-03, 3.677968401688795717e-03, 3.531634537215375992e-03, 3.385272811686903822e-03, 3.238888309680765937e-03, 3.092486113285572089e-03, 2.946071301927081186e-03, 2.799648952194017278e-03, 2.653224137664800166e-03, 2.506801928734503707e-03, 2.360387392441326213e-03, 2.213985592293632454e-03, 2.067601588098103710e-03, 1.921240435786485080e-03, 1.774907187243770883e-03, 1.628606890136575450e-03, 1.482344587741034900e-03, 1.336125318771251656e-03, 1.189954117209411242e-03, 1.043836012133179903e-03, 8.977760275463510286e-04, 7.517791822084059694e-04, 6.058504894640585935e-04, 4.599949570738438159e-04, 3.142175870450486302e-04, 1.685233754617562079e-04, 2.291731231684970379e-05, -1.225956186565327420e-04, -2.680104401535781397e-04, -4.133221814653443085e-04, -5.585258786459684115e-04, -7.036165746802448048e-04, -8.485893196504932113e-04, -9.934391709022197172e-04, -1.138161193211061463e-03, -1.282750458948161846e-03, -1.427202048245250487e-03, -1.571511049160075361e-03, -1.715672557841153812e-03, -1.859681678690775419e-03, -2.003533524530585683e-03, -2.147223216763767713e-03, -2.290745885538263658e-03, -2.434096669909839583e-03, -2.577270718004019950e-03, -2.720263187177549176e-03, -2.863069244180643791e-03, -3.005684065317124325e-03, -3.148102836605065017e-03, -3.290320753937273513e-03, -3.432333023240669891e-03, -3.574134860635235899e-03, -3.715721492593151987e-03, -3.857088156097276434e-03, -3.998230098797715855e-03, -4.139142579170927531e-03, -4.279820866675360103e-03, -4.420260241908030574e-03, -4.560455996760779535e-03, -4.700403434575827280e-03, -4.840097870299543172e-03, -4.979534630638556870e-03, -5.118709054212478189e-03, -5.257616491707528539e-03, -5.396252306029749972e-03, -5.534611872457287883e-03, -5.672690578791775989e-03, -5.810483825510545305e-03, -5.947987025916703745e-03, -6.085195606289405673e-03, -6.222105006034032125e-03, -6.358710677831066506e-03, -6.495008087784452482e-03, -6.630992715570114063e-03, -6.766660054583568430e-03, -6.902005612085633166e-03, -7.037024909350550819e-03, -7.171713481810510459e-03, -7.306066879201033974e-03, -7.440080665705905288e-03, -7.573750420101347559e-03, -7.707071735898306936e-03, -7.840040221486904715e-03, -7.972651500277500719e-03, -8.104901210842443623e-03, -8.236785007057479541e-03, -8.368298558241969720e-03, -8.499437549298223538e-03, -8.630197680851192307e-03, -8.760574669386950522e-03, -8.890564247389896868e-03, -9.020162163480669945e-03, -9.149364182552525288e-03, -9.278166085906966454e-03, -9.406563671389389994e-03, -9.534552753523904689e-03, -9.662129163646185348e-03, -9.789288750038257353e-03, -9.916027378060134415e-03, -1.004234093028183797e-02, -1.016822530661502105e-02, -1.029367642444365544e-02, -1.041869021875293198e-02, -1.054326264225992522e-02, -1.066738966554110768e-02, -1.079106727716027010e-02, -1.091429148379606355e-02, -1.103705831036811726e-02, -1.115936380016254587e-02, -1.128120401495737862e-02, -1.140257503514678465e-02, -1.152347295986402669e-02, -1.164389390710497858e-02, -1.176383401384995149e-02, -1.188328943618488162e-02, -1.200225634942218497e-02, -1.212073094822093029e-02, -1.223870944670485232e-02, -1.235618807858226281e-02, -1.247316309726264651e-02, -1.258963077597365608e-02, -1.270558740787775150e-02, -1.282102930618706817e-02, -1.293595280427807352e-02, -1.305035425580582109e-02, -1.316423003481652886e-02, -1.327757653585985922e-02, -1.339039017410088156e-02, -1.350266738543038671e-02, -1.361440462657482163e-02, -1.372559837520571230e-02, -1.383624513004809604e-02, -1.394634141098707696e-02, -1.405588375917628426e-02, -1.416486873714232000e-02, -1.427329292889057723e-02, -1.438115294000960435e-02, -1.448844539777470117e-02, -1.459516695124992922e-02, -1.470131427139115959e-02, -1.480688405114629139e-02, -1.491187300555560369e-02, -1.501627787185164618e-02, -1.512009540955744358e-02, -1.522332240058422818e-02, -1.532595564932872668e-02, -1.542799198276907820e-02, -1.552942825055975834e-02, -1.563026132512657790e-02, -1.573048810175993809e-02, -1.583010549870741968e-02, -1.592911045726590896e-02, -1.602749994187278870e-02, -1.612527094019517229e-02, -1.622242046322053613e-02, -1.631894554534410111e-02, -1.641484324445681778e-02, -1.651011064203211642e-02, -1.660474484321154687e-02, -1.669874297688987361e-02, -1.679210219579945970e-02, -1.688481967659248920e-02, -1.697689261992463283e-02, -1.706831825053561902e-02, -1.715909381732993316e-02, -1.724921659345668434e-02, -1.733868387638842767e-02, -1.742749298799872379e-02, -1.751564127463973303e-02, -1.760312610721784590e-02, -1.768994488126899092e-02, -1.777609501703314096e-02, -1.786157395952775104e-02, -1.794637917861995752e-02, -1.803050816909852402e-02, -1.811395845074471184e-02, -1.819672756840142250e-02, -1.827881309204278798e-02, -1.836021261684185266e-02, -1.844092376323755098e-02, -1.852094417700113696e-02, -1.860027152930137512e-02, -1.867890351676846153e-02, -1.875683786155812535e-02, -1.883407231141354110e-02, -1.891060463972702582e-02, -1.898643264560096952e-02, -1.906155415390711413e-02, -1.913596701534553066e-02, -1.920966910650268727e-02, -1.928265832990805340e-02, -1.935493261409006530e-02, -1.942648991363144992e-02, -1.949732820922337254e-02, -1.956744550771814112e-02, -1.963683984218203560e-02, -1.970550927194642671e-02, -1.977345188265776377e-02, -1.984066578632767697e-02, -1.990714912138112289e-02, -1.997290005270370775e-02, -2.003791677168861515e-02, -2.010219749628245831e-02, -2.016574047102922748e-02, -2.022854396711497998e-02, -2.029060628240994535e-02, -2.035192574151081443e-02, -2.041250069578154011e-02, -2.047232952339312489e-02, -2.053141062936294364e-02, -2.058974244559272707e-02, -2.064732343090555297e-02, -2.070415207108192504e-02, -2.076022687889543181e-02, -2.081554639414654601e-02, -2.087010918369605617e-02, -2.092391384149750247e-02, -2.097695898862862729e-02, -2.102924327332133039e-02, -2.108076537099192599e-02, -2.113152398426891218e-02, -2.118151784302092430e-02, -2.123074570438338374e-02, -2.127920635278394285e-02, -2.132689859996710763e-02, -2.137382128501827752e-02, -2.141997327438635579e-02, -2.146535346190535029e-02, -2.150996076881553018e-02, -2.155379414378315317e-02, -2.159685256291946423e-02, -2.163913502979845915e-02, -2.168064057547436363e-02, -2.172136825849706881e-02, -2.176131716492767793e-02, -2.180048640835252627e-02, -2.183887512989617086e-02, -2.187648249823371388e-02, -2.191330770960237678e-02, -2.194934998781103777e-02, -2.198460858425039730e-02, -2.201908277790084675e-02, -2.205277187533984454e-02, -2.208567521074877513e-02, -2.211779214591815326e-02, -2.214912207025205443e-02, -2.217966440077214635e-02, -2.220941858211982617e-02, -2.223838408655824661e-02, -2.226656041397285721e-02, -2.229394709187123083e-02, -2.232054367538185979e-02, -2.234634974725192846e-02, -2.237136491784458281e-02, -2.239558882513429522e-02, -2.241902113470234381e-02, -2.244166153973074784e-02, -2.246350976099515881e-02, -2.248456554685739073e-02, -2.250482867325626080e-02, -2.252429894369804494e-02, -2.254297618924576765e-02, -2.256086026850767992e-02, -2.257795106762433210e-02, -2.259424850025546286e-02, -2.260975250756524710e-02, -2.262446305820708936e-02, -2.263838014830715437e-02, -2.265150380144716549e-02, -2.266383406864608957e-02, -2.267537102834113819e-02, -2.268611478636751652e-02, -2.269606547593752341e-02, -2.270522325761853422e-02, -2.271358831931004699e-02, -2.272116087622008673e-02, -2.272794117084021848e-02, -2.273392947292002600e-02, -2.273912607944043873e-02, -2.274353131458628496e-02, -2.274714552971776257e-02, -2.274996910334114303e-02, -2.275200244107850739e-02, -2.275324597563636170e-02, -2.275370016677385338e-02, -2.275336550126943677e-02, -2.275224249288709116e-02, -2.275033168234133138e-02, -2.274763363726172230e-02, -2.274414895215584945e-02, -2.273987824837205018e-02, -2.273482217406064265e-02, -2.272898140413487714e-02, -2.272235664023035742e-02, -2.271494861066413948e-02, -2.270675807039231747e-02, -2.269778580096736345e-02, -2.268803261049419026e-02, -2.267749933358528466e-02, -2.266618683131520900e-02, -2.265409599117402389e-02, -2.264122772701984351e-02, -2.262758297903059643e-02, -2.261316271365491209e-02, -2.259796792356203940e-02, -2.258199962759077292e-02, -2.256525887069798716e-02, -2.254774672390566850e-02, -2.252946428424760367e-02, -2.251041267471491983e-02, -2.249059304420072611e-02, -2.247000656744422425e-02, -2.244865444497351828e-02, -2.242653790304795225e-02, -2.240365819359937949e-02, -2.238001659417252973e-02, -2.235561440786480378e-02, -2.233045296326504822e-02, -2.230453361439124066e-02, -2.227785774062796334e-02, -2.225042674666236758e-02, -2.222224206241973574e-02, -2.219330514299809945e-02, -2.216361746860196630e-02, -2.213318054447508884e-02, -2.210199590083307061e-02, -2.207006509279409515e-02, -2.203738970030971397e-02, -2.200397132809459727e-02, -2.196981160555513610e-02, -2.193491218671758669e-02, -2.189927475015553474e-02, -2.186290099891595798e-02, -2.182579266044511884e-02, -2.178795148651340233e-02, -2.174937925313927267e-02, -2.171007776051250837e-02, -2.167004883291693412e-02, -2.162929431865179275e-02, -2.158781608995275977e-02, -2.154561604291231960e-02, -2.150269609739862905e-02, -2.145905819697458555e-02, -2.141470430881544859e-02, -2.136963642362592342e-02, -2.132385655555626286e-02, -2.127736674211827550e-02, -2.123016904409963032e-02, -2.118226554547809892e-02, -2.113365835333498241e-02, -2.108434959776728929e-02, -2.103434143179989946e-02, -2.098363603129648619e-02, -2.093223559486982743e-02, -2.088014234379131223e-02, -2.082735852190018347e-02, -2.077388639551124017e-02, -2.071972825332259877e-02, -2.066488640632232685e-02, -2.060936318769432396e-02, -2.055316095272367513e-02, -2.049628207870161228e-02, -2.043872896482880341e-02, -2.038050403211884992e-02, -2.032160972330105883e-02, -2.026204850272175784e-02, -2.020182285624563118e-02, -2.014093529115654202e-02, -2.007938833605663401e-02, -2.001718454076589424e-02, -1.995432647622053662e-02, -1.989081673437059772e-02, -1.982665792807720637e-02, -1.976185269100888542e-02, -1.969640367753764179e-02, -1.963031356263347099e-02, -1.956358504175966309e-02, -1.949622083076607212e-02, -1.942822366578255203e-02, -1.935959630311154256e-02, -1.929034151912006195e-02, -1.922046211013061362e-02, -1.914996089231281451e-02, -1.907884070157240403e-02, -1.900710439344140482e-02, -1.893475484296692005e-02, -1.886179494459913966e-02, -1.878822761207914194e-02, -1.871405577832618503e-02, -1.863928239532363501e-02, -1.856391043400536928e-02, -1.848794288414094128e-02, -1.841138275422012430e-02, -1.833423307133727476e-02, -1.825649688107483862e-02, -1.817817724738634427e-02, -1.809927725247868421e-02, -1.801979999669454935e-02, -1.793974859839314942e-02, -1.785912619383124567e-02, -1.777793593704372552e-02, -1.769618099972276523e-02, -1.761386457109714518e-02, -1.753098985781153391e-02, -1.744756008380344767e-02, -1.736357849018189958e-02, -1.727904833510399141e-02, -1.719397289365155040e-02, -1.710835545770711050e-02, -1.702219933582982750e-02, -1.693550785313002391e-02, -1.684828435114404596e-02, -1.676053218770860720e-02, -1.667225473683374773e-02, -1.658345538857645615e-02, -1.649413754891326800e-02, -1.640430463961214946e-02, -1.631396009810423542e-02, -1.622310737735577213e-02, -1.613174994573776319e-02, -1.603989128689708651e-02, -1.594753489962638313e-02, -1.585468429773310983e-02, -1.576134300990859882e-02, -1.566751457959735666e-02, -1.557320256486404569e-02, -1.547841053826206140e-02, -1.538314208670076358e-02, -1.528740081131192523e-02, -1.519119032731666361e-02, -1.509451426389145715e-02, -1.499737626403355173e-02, -1.489977998442652482e-02, -1.480172909530525285e-02, -1.470322728032014484e-02, -1.460427823640148351e-02, -1.450488567362328597e-02, -1.440505331506649125e-02, -1.430478489668178532e-02, -1.420408416715326395e-02, -1.410295488775945884e-02, -1.400140083223608972e-02, -1.389942578663771848e-02, -1.379703354919874225e-02, -1.369422793019418536e-02, -1.359101275180127875e-02, -1.348739184795838195e-02, -1.338336906422606457e-02, -1.327894825764642378e-02, -1.317413329660224210e-02, -1.306892806067627352e-02, -1.296333644051009780e-02, -1.285736233766237614e-02, -1.275100966446686586e-02, -1.264428234389095365e-02, -1.253718430939260858e-02, -1.242971950477799771e-02, -1.232189188405869405e-02, -1.221370541130826527e-02, -1.210516406051866979e-02, -1.199627181545734680e-02, -1.188703266952217431e-02, -1.177745062559797801e-02, -1.166752969591214155e-02, -1.155727390188950737e-02, -1.144668727400779268e-02, -1.133577385165260819e-02, -1.122453768297161127e-02, -1.111298282472945181e-02, -1.100111334216199652e-02, -1.088893330883010553e-02, -1.077644680647357744e-02, -1.066365792486514454e-02, -1.055057076166350527e-02, -1.043718942226662567e-02, -1.032351801966543102e-02, -1.020956067429608372e-02, -1.009532151389309559e-02, -9.980804673342068972e-03, -9.866014294531775045e-03, -9.750954526206979944e-03, -9.635629523820216091e-03, -9.520043449383654155e-03, -9.404200471322067892e-03, -9.288104764323130980e-03, -9.171760509190053992e-03, -9.055171892693024416e-03, -8.938343107420297987e-03, -8.821278351629404518e-03, -8.703981829099321707e-03, -8.586457748980202975e-03, -8.468710325645341375e-03, -8.350743778541955611e-03, -8.232562332041785252e-03, -8.114170215291913180e-03, -7.995571662065858662e-03, -7.876770910613678164e-03, -7.757772203512596117e-03, -7.638579787518150893e-03, -7.519197913413848931e-03, -7.399630835861967237e-03, -7.279882813254146857e-03, -7.159958107561304602e-03, -7.039860984183864828e-03, -6.919595711803034656e-03, -6.799166562229660982e-03, -6.678577810255433705e-03, -6.557833733503068939e-03, -6.436938612276165220e-03, -6.315896729409391057e-03, -6.194712370119691627e-03, -6.073389821855109359e-03, -5.951933374146112059e-03, -5.830347318455689383e-03, -5.708635948029338290e-03, -5.586803557745648706e-03, -5.464854443966910870e-03, -5.342792904389175382e-03, -5.220623237892694016e-03, -5.098349744393057027e-03, -4.975976724691116154e-03, -4.853508480323891205e-03, -4.730949313415542569e-03, -4.608303526527789476e-03, -4.485575422510628373e-03, -4.362769304354342792e-03, -4.239889475039071605e-03, -4.116940237386972415e-03, -3.993925893913327640e-03, -3.870850746677485365e-03, -3.747719097134599893e-03, -3.624535245987407870e-03, -3.501303493037245460e-03, -3.378028137036475850e-03, -3.254713475540381602e-03, -3.131363804758847090e-03, -3.007983419408793817e-03, -2.884576612566757542e-03, -2.761147675521031727e-03, -2.637700897624235992e-03, -2.514240566146805269e-03, -2.390770966129234301e-03, -2.267296380235498277e-03, -2.143821088606640002e-03, -2.020349368713863537e-03, -1.896885495212083860e-03, -1.773433739794856925e-03, -1.649998371046929252e-03, -1.526583654299577385e-03, -1.403193851484911070e-03, -1.279833220990185321e-03, -1.156506017512916751e-03, -1.033216491916293719e-03, -9.099688910837541332e-04, -7.867674577752378122e-04, -6.636164304828861106e-04, -5.405200432867124935e-04, -4.174825257110998137e-04, -2.945081025815410466e-04, -1.716009938810469850e-04, -4.876541460702524413e-05, 7.399442537038658876e-05, 1.966743214522470714e-04, 3.192700744519398094e-04, 4.417774907372183537e-04, 5.641923823721127409e-04, 6.865105672584077660e-04, 8.087278692756437329e-04, 9.308401184233330416e-04, 1.052843150960382137e-03, 1.174732809545360164e-03, 1.296504943376712441e-03, 1.418155408332052135e-03, 1.539680067107132436e-03, 1.661074789355097359e-03, 1.782335451825100897e-03, 1.903457938499860834e-03, 2.024438140734280932e-03, 2.145271957392683171e-03, 2.265955294985793223e-03, 2.386484067807952743e-03, 2.506854198073739902e-03, 2.627061616053086562e-03, 2.747102260208499243e-03, 2.866972077329447716e-03, 2.986667022667534224e-03, 3.106183060071405957e-03, 3.225516162121221716e-03, 3.344662310261458001e-03, 3.463617494935885676e-03, 3.582377715719659191e-03, 3.700938981452131342e-03, 3.819297310369545312e-03, 3.937448730236663315e-03, 4.055389278478044833e-03, 4.173115002309503094e-03, 4.290621958868744493e-03, 4.407906215345009683e-03, 4.524963849109518710e-03, 4.641790947844548314e-03, 4.758383609672180506e-03, 4.874737943283089306e-03, 4.990850068064676959e-03, 5.106716114227768596e-03, 5.222332222935020807e-03, 5.337694546426706432e-03, 5.452799248146997235e-03, 5.567642502870082631e-03, 5.682220496825196414e-03, 5.796529427821185514e-03, 5.910565505371439578e-03, 6.024324950817197717e-03, 6.137803997450883876e-03, 6.250998890639326844e-03, 6.363905887945945500e-03, 6.476521259252390229e-03, 6.588841286880223365e-03, 6.700862265711889261e-03, 6.812580503310372917e-03, 6.923992320039829181e-03, 7.035094049184498037e-03, 7.145882037067385721e-03, 7.256352643168840870e-03, 7.366502240244394289e-03, 7.476327214441089511e-03, 7.585823965415458732e-03, 7.694988906448703252e-03, 7.803818464562471517e-03, 7.912309080634149713e-03, 8.020457209511236418e-03, 8.128259320124913215e-03, 8.235711895604218985e-03, 8.342811433388119119e-03, 8.449554445337934677e-03, 8.555937457849266750e-03, 8.661957011963006617e-03, 8.767609663475579157e-03, 8.872891983049285142e-03, 8.977800556321715447e-03, 9.082331984013739326e-03, 9.186482882038946376e-03, 9.290249881610300811e-03, 9.393629629347328286e-03, 9.496618787382900273e-03, 9.599214033468504020e-03, 9.701412061079843843e-03, 9.803209579521523012e-03, 9.904603314030183472e-03, 1.000559000587908885e-02, 1.010616641247996834e-02, 1.020632930748534284e-02, 1.030607548089013635e-02, 1.040540173913275489e-02, 1.050430490519447049e-02, 1.060278181870017919e-02, 1.070082933601651520e-02, 1.079844433035032428e-02, 1.089562369184667555e-02, 1.099236432768559667e-02, 1.108866316217835789e-02, 1.118451713686353412e-02, 1.127992321060189602e-02, 1.137487835967062287e-02, 1.146937957785748065e-02, 1.156342387655382060e-02, 1.165700828484619693e-02, 1.175012984960944161e-02, 1.184278563559693423e-02, 1.193497272553099148e-02, 1.202668822019265643e-02, 1.211792923851129876e-02, 1.220869291765190427e-02, 1.229897641310395175e-02, 1.238877689876734592e-02, 1.247809156703925948e-02, 1.256691762889990821e-02, 1.265525231399690712e-02, 1.274309287072975666e-02, 1.283043656633353798e-02, 1.291728068696155855e-02, 1.300362253776720690e-02, 1.308945944298555569e-02, 1.317478874601430219e-02, 1.325960780949325853e-02, 1.334391401538365281e-02, 1.342770476504728631e-02, 1.351097747932332449e-02, 1.359372959860644624e-02, 1.367595858292232000e-02, 1.375766191200363149e-02, 1.383883708536518334e-02, 1.391948162237794870e-02, 1.399959306234187240e-02, 1.407916896455966259e-02, 1.415820690840819719e-02, 1.423670449340956948e-02, 1.431465933930179367e-02, 1.439206908610891032e-02, 1.446893139420930841e-02, 1.454524394440433015e-02, 1.462100443798604321e-02, 1.469621059680334407e-02, 1.477086016332868242e-02, 1.484495090072272469e-02, 1.491848059289905583e-02, 1.499144704458813503e-02, 1.506384808140014651e-02, 1.513568154988661173e-02, 1.520694531760288966e-02, 1.527763727316827636e-02, 1.534775532632576441e-02, 1.541729740800147630e-02, 1.548626147036315064e-02, 1.555464548687730819e-02, 1.562244745236675628e-02, 1.568966538306579978e-02, 1.575629731667621547e-02, 1.582234131242160960e-02, 1.588779545110093755e-02, 1.595265783514151353e-02, 1.601692658865138189e-02, 1.608059985747074816e-02, 1.614367580922199119e-02, 1.620615263336012621e-02, 1.626802854122168240e-02, 1.632930176607275824e-02, 1.638997056315654940e-02, 1.645003320974021063e-02, 1.650948800516041995e-02, 1.656833327086880067e-02, 1.662656735047578910e-02, 1.668418860979449525e-02, 1.674119543688341524e-02, 1.679758624208790158e-02, 1.685335945808172364e-02, 1.690851353990724740e-02, 1.696304696501492459e-02, 1.701695823330185917e-02, 1.707024586714987052e-02, 1.712290841146273807e-02, 1.717494443370218629e-02, 1.722635252392349173e-02, 1.727713129481052781e-02, 1.732727938170896057e-02, 1.737679544266008611e-02, 1.742567815843261078e-02, 1.747392623255423008e-02, 1.752153839134243732e-02, 1.756851338393440945e-02, 1.761484998231563001e-02, 1.766054698134867165e-02, 1.770560319880053191e-02, 1.775001747536888649e-02, 1.779378867470824202e-02, 1.783691568345490558e-02, 1.787939741125114945e-02, 1.792123279076842171e-02, 1.796242077773028273e-02, 1.800296035093375269e-02, 1.804285051227065562e-02, 1.808209028674747157e-02, 1.812067872250464062e-02, 1.815861489083537769e-02, 1.819589788620319323e-02, 1.823252682625850843e-02, 1.826850085185518016e-02, 1.830381912706565903e-02, 1.833848083919515162e-02, 1.837248519879548792e-02, 1.840583143967802066e-02, 1.843851881892536598e-02, 1.847054661690291852e-02, 1.850191413726888501e-02, 1.853262070698417918e-02, 1.856266567632097741e-02, 1.859204841887079560e-02, 1.862076833155142108e-02, 1.864882483461351159e-02, 1.867621737164594509e-02, 1.870294540958048271e-02, 1.872900843869576906e-02, 1.875440597262031939e-02, 1.877913754833488574e-02, 1.880320272617378580e-02, 1.882660108982582570e-02, 1.884933224633368598e-02, 1.887139582609340810e-02, 1.889279148285237867e-02, 1.891351889370680023e-02, 1.893357775909837795e-02, 1.895296780280989954e-02, 1.897168877196058964e-02, 1.898974043700002098e-02, 1.900712259170158486e-02, 1.902383505315527121e-02, 1.903987766175902971e-02, 1.905525028121022452e-02, 1.906995279849559369e-02, 1.908398512388055288e-02, 1.909734719089801330e-02, 1.911003895633593685e-02, 1.912206040022464831e-02, 1.913341152582260368e-02, 1.914409235960211342e-02, 1.915410295123387216e-02, 1.916344337357066621e-02, 1.917211372263061611e-02, 1.918011411757922571e-02, 1.918744470071081717e-02, 1.919410563742927553e-02, 1.920009711622791895e-02, 1.920541934866842534e-02, 1.921007256935930094e-02, 1.921405703593342604e-02, 1.921737302902446626e-02, 1.922002085224315884e-02, 1.922200083215233266e-02, 1.922331331824129672e-02, 1.922395868289938567e-02, 1.922393732138893627e-02, 1.922324965181723341e-02, 1.922189611510789764e-02, 1.921987717497119705e-02, 1.921719331787400536e-02, 1.921384505300866366e-02, 1.920983291226120715e-02, 1.920515745017882525e-02, 1.919981924393643694e-02, 1.919381889330281504e-02, 1.918715702060544773e-02, 1.917983427069525071e-02, 1.917185131090988481e-02, 1.916320883103691045e-02, 1.915390754327575204e-02, 1.914394818219909353e-02, 1.913333150471354174e-02, 1.912205829001954738e-02, 1.911012933957028856e-02, 1.909754547703048158e-02, 1.908430754823357833e-02, 1.907041642113888741e-02, 1.905587298578782784e-02, 1.904067815425910734e-02, 1.902483286062357781e-02, 1.900833806089816114e-02, 1.899119473299908795e-02, 1.897340387669427947e-02, 1.895496651355524365e-02, 1.893588368690819063e-02, 1.891615646178405191e-02, 1.889578592486838848e-02, 1.887477318445011584e-02, 1.885311937036975374e-02, 1.883082563396679468e-02, 1.880789314802645482e-02, 1.878432310672585245e-02, 1.876011672557915261e-02, 1.873527524138219116e-02, 1.870979991215654045e-02, 1.868369201709266930e-02, 1.865695285649236063e-02, 1.862958375171064329e-02, 1.860158604509687397e-02, 1.857296109993531591e-02, 1.854371030038461099e-02, 1.851383505141721356e-02, 1.848333677875734285e-02, 1.845221692881920256e-02, 1.842047696864362177e-02, 1.838811838583445657e-02, 1.835514268849442257e-02, 1.832155140516013650e-02, 1.828734608473618281e-02, 1.825252829642902072e-02, 1.821709962968008287e-02, 1.818106169409788170e-02, 1.814441611938988688e-02, 1.810716455529356311e-02, 1.806930867150667586e-02, 1.803085015761718771e-02, 1.799179072303231514e-02, 1.795213209690686360e-02, 1.791187602807130588e-02, 1.787102428495874681e-02, 1.782957865553158258e-02, 1.778754094720736215e-02, 1.774491298678437107e-02, 1.770169662036587613e-02, 1.765789371328437690e-02, 1.761350615002507669e-02, 1.756853583414880876e-02, 1.752298468821389052e-02, 1.747685465369816504e-02, 1.743014769091950217e-02, 1.738286577895672980e-02, 1.733501091556901089e-02, 1.728658511711513024e-02, 1.723759041847225046e-02, 1.718802887295380402e-02, 1.713790255222680248e-02, 1.708721354622873279e-02, 1.703596396308417610e-02, 1.698415592901989304e-02, 1.693179158828022821e-02, 1.687887310304175825e-02, 1.682540265332712476e-02, 1.677138243691824598e-02, 1.671681466926954254e-02, 1.666170158341985508e-02, 1.660604542990444521e-02, 1.654984847666611178e-02, 1.649311300896565483e-02, 1.643584132929191283e-02, 1.637803575727200117e-02, 1.631969862957930589e-02, 1.626083229984251130e-02, 1.620143913855357984e-02, 1.614152153297516989e-02, 1.608108188704705441e-02, 1.602012262129319173e-02, 1.595864617272719707e-02, 1.589665499475750171e-02, 1.583415155709276545e-02, 1.577113834564553355e-02, 1.570761786243669508e-02, 1.564359262549840091e-02, 1.557906516877692951e-02, 1.551403804203508284e-02, 1.544851381075452827e-02, 1.538249505603620122e-02, 1.531598437450189254e-02, 1.524898437819462681e-02, 1.518149769447843522e-02, 1.511352696593780062e-02, 1.504507485027690994e-02, 1.497614402021787104e-02, 1.490673716339916376e-02, 1.483685698227316802e-02, 1.476650619400304322e-02, 1.469568753035998925e-02, 1.462440373761927752e-02, 1.455265757645607741e-02, 1.448045182184086108e-02, 1.440778926293477362e-02, 1.433467270298388087e-02, 1.426110495921315002e-02, 1.418708886272073040e-02, 1.411262725837097130e-02, 1.403772300468706172e-02, 1.396237897374420951e-02, 1.388659805106094020e-02, 1.381038313549157875e-02, 1.373373713911713034e-02, 1.365666298713603607e-02, 1.357916361775516820e-02, 1.350124198207987292e-02, 1.342290104400330891e-02, 1.334414378009625424e-02, 1.326497317949619156e-02, 1.318539224379586955e-02, 1.310540398693122582e-02, 1.302501143506995529e-02, 1.294421762649881902e-02, 1.286302561151059405e-02, 1.278143845229153842e-02, 1.269945922280738167e-02, 1.261709100869000053e-02, 1.253433690712308160e-02, 1.245120002672745092e-02, 1.236768348744680078e-02, 1.228379042043228203e-02, 1.219952396792690560e-02, 1.211488728315037421e-02, 1.202988353018238574e-02, 1.194451588384689948e-02, 1.185878752959517758e-02, 1.177270166338870681e-02, 1.168626149158237711e-02, 1.159947023080680657e-02, 1.151233110785025195e-02, 1.142484735954087116e-02, 1.133702223262840481e-02, 1.124885898366548807e-02, 1.116036087888837465e-02, 1.107153119409851061e-02, 1.098237321454267716e-02, 1.089289023479312474e-02, 1.080308555862839574e-02, 1.071296249891229117e-02, 1.062252437747425449e-02, 1.053177452498839373e-02, 1.044071628085248629e-02, 1.034935299306685708e-02, 1.025768801811399733e-02, 1.016572472083561961e-02, 1.007346647431169549e-02, 9.980916659738693630e-03, 9.888078666307097836e-03, 9.794955891078819393e-03, 9.701551738865299770e-03, 9.607869622104001778e-03, 9.513912960736174013e-03, 9.419685182083433958e-03, 9.325189720724135975e-03, 9.230430018370516451e-03, 9.135409523744803320e-03, 9.040131692455122617e-03, 8.944599986871668712e-03, 8.848817876003325575e-03, 8.752788835372109222e-03, 8.656516346889436830e-03, 8.560003898731726249e-03, 8.463254985215442130e-03, 8.366273106671916551e-03, 8.269061769323144545e-03, 8.171624485155785933e-03, 8.073964771796700648e-03, 7.976086152387346084e-03, 7.877992155457846576e-03, 7.779686314802221683e-03, 7.681172169352324698e-03, 7.582453263051854020e-03, 7.483533144730685448e-03, 7.384415367979182791e-03, 7.285103491021882247e-03, 7.185601076591062279e-03, 7.085911691801206891e-03, 6.986038908022328305e-03, 6.885986300753385927e-03, 6.785757449496574410e-03, 6.685355937629942034e-03, 6.584785352281750763e-03, 6.484049284203445042e-03, 6.383151327642865198e-03, 6.282095080217611760e-03, 6.180884142789266726e-03, 6.079522119335117707e-03, 5.978012616822295060e-03, 5.876359245081048607e-03, 5.774565616677745060e-03, 5.672635346787597427e-03, 5.570572053068606130e-03, 5.468379355534291886e-03, 5.366060876426498837e-03, 5.263620240089391181e-03, 5.161061072841650887e-03, 5.058387002850427486e-03, 4.955601660004180231e-03, 4.852708675785660786e-03, 4.749711683145209015e-03, 4.646614316374858902e-03, 4.543420210980151155e-03, 4.440133003554318919e-03, 4.336756331651733624e-03, 4.233293833661081959e-03, 4.129749148678431812e-03, 4.026125916381596663e-03, 3.922427776902741824e-03, 3.818658370702809977e-03, 3.714821338444885494e-03, 3.610920320867558320e-03, 3.506958958659539896e-03, 3.402940892333166257e-03, 3.298869762098176946e-03, 3.194749207736021727e-03, 3.090582868474330350e-03, 2.986374382860920024e-03, 2.882127388637794208e-03, 2.777845522616391710e-03, 2.673532420551809254e-03, 2.569191717017110365e-03, 2.464827045279071888e-03, 2.360442037172083476e-03, 2.256040322974148683e-03, 2.151625531281681301e-03, 2.047201288884499884e-03, 1.942771220642053711e-03, 1.838338949358669493e-03, 1.733908095659088440e-03, 1.629482277864633451e-03, 1.525065111869564755e-03, 1.420660211017043704e-03, 1.316271185975206740e-03, 1.211901644614462974e-03, 1.107555191883890372e-03, 1.003235429687791315e-03, 8.989459567636706293e-04, 7.946903685585427575e-04, 6.904722571072911038e-04, 5.862952109099781994e-04, 4.821628148094715314e-04, 3.780786498696533785e-04, 2.740462932545903820e-04, 1.700693181055207260e-04, 6.615129342045394695e-05, -3.770421606677580958e-05, -1.414936500076040520e-04, -2.452134525597306691e-04, -3.488600725066301933e-04, -4.524299633787056546e-04, -5.559195835723291200e-04, -6.593253964698814413e-04, -7.626438705595621785e-04, -8.658714795538029630e-04, -9.690047025085711530e-04, -1.072040023942268756e-03, -1.174973933954016935e-03, -1.277802928340907159e-03, -1.380523508717356471e-03, -1.483132182631826399e-03, -1.585625463684000062e-03, -1.687999871642072462e-03, -1.790251932559834992e-03, -1.892378178892288251e-03, -1.994375149612764072e-03, -2.096239390327925105e-03, -2.197967453393707884e-03, -2.299555898030920028e-03, -2.401001290439449664e-03, -2.502300203913285833e-03, -2.603449218955047537e-03, -2.704444923389746902e-03, -2.805283912478201067e-03, -2.905962789030639652e-03, -3.006478163520059400e-03, -3.106826654194166752e-03, -3.207004887188090632e-03, -3.307009496636714903e-03, -3.406837124785505946e-03, -3.506484422102764450e-03, -3.605948047389703585e-03, -3.705224667891401057e-03, -3.804310959407415475e-03, -3.903203606400888759e-03, -4.001899302108397061e-03, -4.100394748649457792e-03, -4.198686657134403401e-03, -4.296771747773732268e-03, -4.394646749985233088e-03, -4.492308402501929768e-03, -4.589753453479691533e-03, -4.686978660603294787e-03, -4.783980791193223094e-03, -4.880756622311885166e-03, -4.977302940869038350e-03, -5.073616543726759340e-03, -5.169694237804412298e-03, -5.265532840183511157e-03, -5.361129178210854128e-03, -5.456480089602535125e-03, -5.551582422547319401e-03, -5.646433035808625343e-03, -5.741028798827675465e-03, -5.835366591824510223e-03, -5.929443305899749495e-03, -6.023255843135806760e-03, -6.116801116697255861e-03, -6.210076050930149992e-03, -6.303077581462931435e-03, -6.395802655304913542e-03, -6.488248230944782674e-03, -6.580411278449150442e-03, -6.672288779560638441e-03, -6.763877727794473729e-03, -6.855175128536194519e-03, -6.946177999137275946e-03, -7.036883369011399415e-03, -7.127288279730179844e-03, -7.217389785117512072e-03, -7.307184951344372625e-03, -7.396670857022979648e-03, -7.485844593300210355e-03, -7.574703263949853632e-03, -7.663243985466459442e-03, -7.751463887156488132e-03, -7.839360111229863939e-03, -7.926929812891069654e-03, -8.014170160430055673e-03, -8.101078335311441211e-03, -8.187651532264892534e-03, -8.273886959373276395e-03, -8.359781838161519513e-03, -8.445333403684772422e-03, -8.530538904615249732e-03, -8.615395603329398244e-03, -8.699900775994435370e-03, -8.784051712653980284e-03, -8.867845717313183745e-03, -8.951280108023566481e-03, -9.034352216967685839e-03, -9.117059390542067709e-03, -9.199398989440702237e-03, -9.281368388737946257e-03, -9.362964977969755187e-03, -9.444186161216075459e-03, -9.525029357180981801e-03, -9.605491999273423412e-03, -9.685571535687232878e-03, -9.765265429479868739e-03, -9.844571158651350615e-03, -9.923486216222545536e-03, -1.000200811031260947e-02, -1.008013436421564303e-02, -1.015786251647746163e-02, -1.023519012097144805e-02, -1.031211474697353754e-02, -1.038863397923694108e-02, -1.046474541806664306e-02, -1.054044667939213475e-02, -1.061573539484119040e-02, -1.069060921181149391e-02, -1.076506579354261431e-02, -1.083910281918742079e-02, -1.091271798388242058e-02, -1.098590899881721206e-02, -1.105867359130480176e-02, -1.113100950484971832e-02, -1.120291449921624258e-02, -1.127438635049585886e-02, -1.134542285117465937e-02, -1.141602181019905210e-02, -1.148618105304193872e-02, -1.155589842176749614e-02, -1.162517177509573077e-02, -1.169399898846669797e-02, -1.176237795410316374e-02, -1.183030658107355783e-02, -1.189778279535406297e-02, -1.196480453988999458e-02, -1.203136977465590375e-02, -1.209747647671677653e-02, -1.216312264028689832e-02, -1.222830627678854476e-02, -1.229302541491060149e-02, -1.235727810066625937e-02, -1.242106239744936343e-02, -1.248437638609156165e-02, -1.254721816491722285e-02, -1.260958584979889920e-02, -1.267147757421183997e-02, -1.273289148928736375e-02, -1.279382576386618557e-02, -1.285427858455096342e-02, -1.291424815575812832e-02, -1.297373269976871343e-02, -1.303273045677920926e-02, -1.309123968495149934e-02, -1.314925866046177082e-02, -1.320678567754913352e-02, -1.326381904856393373e-02, -1.332035710401433329e-02, -1.337639819261355993e-02, -1.343194068132532414e-02, -1.348698295540926712e-02, -1.354152341846578782e-02, -1.359556049247979959e-02, -1.364909261786366283e-02, -1.370211825350049067e-02, -1.375463587678569383e-02, -1.380664398366820110e-02, -1.385814108869117683e-02, -1.390912572503214505e-02, -1.395959644454196000e-02, -1.400955181778349573e-02, -1.405899043406978917e-02, -1.410791090150091513e-02, -1.415631184700099146e-02, -1.420419191635368707e-02, -1.425154977423769530e-02, -1.429838410426125840e-02, -1.434469360899618198e-02, -1.439047701001039056e-02, -1.443573304790142509e-02, -1.448046048232757080e-02, -1.452465809203922625e-02, -1.456832467490938414e-02, -1.461145904796355526e-02, -1.465406004740853023e-02, -1.469612652866135634e-02, -1.473765736637651022e-02, -1.477865145447332385e-02, -1.481910770616236446e-02, -1.485902505397088472e-02, -1.489840244976809239e-02, -1.493723886478938098e-02, -1.497553328965996015e-02, -1.501328473441776619e-02, -1.505049222853576882e-02, -1.508715482094367781e-02, -1.512327158004862261e-02, -1.515884159375542606e-02, -1.519386396948612869e-02, -1.522833783419900999e-02, -1.526226233440640574e-02, -1.529563663619222524e-02, -1.532845992522890999e-02, -1.536073140679345556e-02, -1.539245030578255923e-02, -1.542361586672746226e-02, -1.545422735380815558e-02, -1.548428405086628781e-02, -1.551378526141820174e-02, -1.554273030866654658e-02, -1.557111853551162994e-02, -1.559894930456207605e-02, -1.562622199814462862e-02, -1.565293601831317660e-02, -1.567909078685747123e-02, -1.570468574531082295e-02, -1.572972035495718429e-02, -1.575419409683759264e-02, -1.577810647175590525e-02, -1.580145700028390277e-02, -1.582424522276544565e-02, -1.584647069932046404e-02, -1.586813300984758410e-02, -1.588923175402669197e-02, -1.590976655132043255e-02, -1.592973704097502829e-02, -1.594914288202073371e-02, -1.596798375327124209e-02, -1.598625935332243647e-02, -1.600396940055088049e-02, -1.602111363311100461e-02, -1.603769180893207733e-02, -1.605370370571422220e-02, -1.606914912092401518e-02, -1.608402787178913121e-02, -1.609833979529236639e-02, -1.611208474816519867e-02, -1.612526260688037019e-02, -1.613787326764397692e-02, -1.614991664638687832e-02, -1.616139267875515637e-02, -1.617230132010046353e-02, -1.618264254546906630e-02, -1.619241634959064924e-02, -1.620162274686613030e-02, -1.621026177135519164e-02, -1.621833347676268633e-02, -1.622583793642466687e-02, -1.623277524329374069e-02, -1.623914550992363801e-02, -1.624494886845310668e-02, -1.625018547058913743e-02, -1.625485548758974844e-02, -1.625895911024582974e-02, -1.626249654886236309e-02, -1.626546803323902432e-02, -1.626787381265029642e-02, -1.626971415582451064e-02, -1.627098935092266205e-02, -1.627169970551623976e-02, -1.627184554656465817e-02, -1.627142722039167863e-02, -1.627044509266169919e-02, -1.626889954835478505e-02, -1.626679099174156359e-02, -1.626411984635712724e-02, -1.626088655497445398e-02, -1.625709157957712023e-02, -1.625273540133129191e-02, -1.624781852055739648e-02, -1.624234145670051116e-02, -1.623630474830084838e-02, -1.622970895296310320e-02, -1.622255464732529767e-02, -1.621484242702695214e-02, -1.620657290667673958e-02, -1.619774671981933853e-02, -1.618836451890188002e-02, -1.617842697523936765e-02, -1.616793477897988593e-02, -1.615688863906890316e-02, -1.614528928321313714e-02, -1.613313745784364026e-02, -1.612043392807823577e-02, -1.610717947768356903e-02, -1.609337490903618717e-02, -1.607902104308343502e-02, -1.606411871930311930e-02, -1.604866879566329424e-02, -1.603267214858079825e-02, -1.601612967287956851e-02, -1.599904228174808818e-02, -1.598141090669648670e-02, -1.596323649751276580e-02, -1.594452002221859871e-02, -1.592526246702436268e-02, -1.590546483628391128e-02, -1.588512815244834050e-02, -1.586425345601918252e-02, -1.584284180550137727e-02, -1.582089427735547393e-02, -1.579841196594878802e-02, -1.577539598350683955e-02, -1.575184746006334097e-02, -1.572776754341019545e-02, -1.570315739904669383e-02, -1.567801821012795513e-02, -1.565235117741309648e-02, -1.562615751921279592e-02, -1.559943847133595830e-02, -1.557219528703605339e-02, -1.554442923695702888e-02, -1.551614160907834050e-02, -1.548733370865956749e-02, -1.545800685818437409e-02, -1.542816239730421257e-02, -1.539780168278103746e-02, -1.536692608842961383e-02, -1.533553700505954111e-02, -1.530363584041638352e-02, -1.527122401912222281e-02, -1.523830298261611392e-02, -1.520487418909334358e-02, -1.517093911344477401e-02, -1.513649924719524635e-02, -1.510155609844145326e-02, -1.506611119178956175e-02, -1.503016606829210566e-02, -1.499372228538421205e-02, -1.495678141681948403e-02, -1.491934505260548820e-02, -1.488141479893850642e-02, -1.484299227813752967e-02, -1.480407912857848070e-02, -1.476467700462711675e-02, -1.472478757657176389e-02, -1.468441253055590562e-02, -1.464355356850928838e-02, -1.460221240807978507e-02, -1.456039078256366262e-02, -1.451809044083586346e-02, -1.447531314727971627e-02, -1.443206068171653568e-02, -1.438833483933363820e-02, -1.434413743061304682e-02, -1.429947028125928311e-02, -1.425433523212640829e-02, -1.420873413914482825e-02, -1.416266887324782627e-02, -1.411614132029707057e-02, -1.406915338100829700e-02, -1.402170697087604979e-02, -1.397380402009797129e-02, -1.392544647349904484e-02, -1.387663629045500328e-02, -1.382737544481520489e-02, -1.377766592482535489e-02, -1.372750973304993211e-02, -1.367690888629323996e-02, -1.362586541552132657e-02, -1.357438136578225339e-02, -1.352245879612682354e-02, -1.347009977952845147e-02, -1.341730640280247924e-02, -1.336408076652520829e-02, -1.331042498495320706e-02, -1.325634118594055597e-02, -1.320183151085717495e-02, -1.314689811450625752e-02, -1.309154316504113416e-02, -1.303576884388157539e-02, -1.297957734563045216e-02, -1.292297087798894260e-02, -1.286595166167219667e-02, -1.280852193032431738e-02, -1.275068393043249544e-02, -1.269243992124167476e-02, -1.263379217466806953e-02, -1.257474297521239334e-02, -1.251529461987301549e-02, -1.245544941805870262e-02, -1.239520969150068735e-02, -1.233457777416442462e-02, -1.227355601216133067e-02, -1.221214676365988717e-02, -1.215035239879602019e-02, -1.208817529958418867e-02, -1.202561785982670522e-02, -1.196268248502397116e-02, -1.189937159228364634e-02, -1.183568761022943915e-02, -1.177163297891013760e-02, -1.170721014970772279e-02, -1.164242158524528455e-02, -1.157726975929466127e-02, -1.151175715668404514e-02, -1.144588627320481354e-02, -1.137965961551783492e-02, -1.131307970106048590e-02, -1.124614905795225453e-02, -1.117887022490037831e-02, -1.111124575110573193e-02, -1.104327819616731862e-02, -1.097497012998760631e-02, -1.090632413267689747e-02, -1.083734279445721163e-02, -1.076802871556650082e-02, -1.069838450616260837e-02, -1.062841278622586941e-02, -1.055811618546261335e-02, -1.048749734320805933e-02, -1.041655890832871890e-02, -1.034530353912434253e-02, -1.027373390323051139e-02, -1.020185267751970784e-02, -1.012966254800327058e-02, -1.005716620973243040e-02, -9.984366366699030243e-03, -9.911265731736607770e-03, -9.837867026420765021e-03, -9.764172980969043625e-03, -9.690186334141153920e-03, -9.615909833139141619e-03, -9.541346233506057400e-03, -9.466498299025639593e-03, -9.391368801621658574e-03, -9.315960521256490962e-03, -9.240276245829443999e-03, -9.164318771075860570e-03, -9.088090900464562347e-03, -9.011595445096541937e-03, -8.934835223602374810e-03, -8.857813062039695401e-03, -8.780531793790995881e-03, -8.702994259460694604e-03, -8.625203306771899239e-03, -8.547161790463494307e-03, -8.468872572186926864e-03, -8.390338520402541161e-03, -8.311562510275666976e-03, -8.232547423573250908e-03, -8.153296148559580417e-03, -8.073811579891891632e-03, -7.994096618516560032e-03, -7.914154171564033446e-03, -7.833987152244703545e-03, -7.753598479743899555e-03, -7.672991079116803920e-03, -7.592167881183427801e-03, -7.511131822424126948e-03, -7.429885844873071465e-03, -7.348432896013512745e-03, -7.266775928672270651e-03, -7.184917900913851199e-03, -7.102861775934335258e-03, -7.020610521955991494e-03, -6.938167112121049716e-03, -6.855534524385129003e-03, -6.772715741411793403e-03, -6.689713750465358169e-03, -6.606531543305180915e-03, -6.523172116078787032e-03, -6.439638469215128690e-03, -6.355933607317943573e-03, -6.272060539059686086e-03, -6.188022277073482701e-03, -6.103821837846914837e-03, -6.019462241615114798e-03, -5.934946512253571130e-03, -5.850277677170630415e-03, -5.765458767201120556e-03, -5.680492816498221992e-03, -5.595382862427049353e-03, -5.510131945456873959e-03, -5.424743109053587441e-03, -5.339219399572860125e-03, -5.253563866152425113e-03, -5.167779560604406595e-03, -5.081869537308088790e-03, -4.995836853102523546e-03, -4.909684567178897695e-03, -4.823415740972634112e-03, -4.737033438056455562e-03, -4.650540724032582035e-03, -4.563940666424741617e-03, -4.477236334571446826e-03, -4.390430799517563119e-03, -4.303527133907454269e-03, -4.216528411877203987e-03, -4.129437708946700515e-03, -4.042258101912808016e-03, -3.954992668741562183e-03, -3.867644488460480773e-03, -3.780216641051363773e-03, -3.692712207343115671e-03, -3.605134268904144033e-03, -3.517485907934766315e-03, -3.429770207160556458e-03, -3.341990249724780763e-03, -3.254149119080950846e-03, -3.166249898886402698e-03, -3.078295672894431571e-03, -2.990289524848022823e-03, -2.902234538372582256e-03, -2.814133796868923624e-03, -2.725990383406524595e-03, -2.637807380617601932e-03, -2.549587870589224703e-03, -2.461334934757474033e-03, -2.373051653801136647e-03, -2.284741107535107410e-03, -2.196406374803828304e-03, -2.108050533375849765e-03, -2.019676659836925313e-03, -1.931287829484806644e-03, -1.842887116223071615e-03, -1.754477592455084937e-03, -1.666062328979006635e-03, -1.577644394882002105e-03, -1.489226857434644948e-03, -1.400812781985787949e-03, -1.312405231858214697e-03, -1.224007268242254627e-03, -1.135621950092263396e-03, -1.047252334020938114e-03, -9.589014741955454195e-04, -8.705724222331929748e-04, -7.822682270963814393e-04, -6.939919349890169044e-04, -6.057465892532377808e-04, -5.175352302643749071e-04, -4.293608953280970844e-04, -3.412266185770983186e-04, -2.531354308676335451e-04, -1.650903596761246382e-04, -7.709442899701688312e-05, 1.084934076078174458e-05, 9.873793287567347876e-05, 1.865683344160195818e-04, 2.743375363425893591e-04, 3.620425336098599938e-04, 4.496803252680676250e-04, 5.372479145649475653e-04, 6.247423090468417909e-04, 7.121605206595957175e-04, 7.994995658496585351e-04, 8.867564656650857476e-04, 9.739282458553426931e-04, 1.061011936971860935e-03, 1.148004574468343116e-03, 1.234903198799802660e-03, 1.321704855522920453e-03, 1.408406595394625597e-03, 1.495005474471442809e-03, 1.581498554208609969e-03, 1.667882901558024938e-03, 1.754155589066851801e-03, 1.840313694975782973e-03, 1.926354303316628888e-03, 2.012274504009623193e-03, 2.098071392960927217e-03, 2.183742072159911961e-03, 2.269283649775279132e-03, 2.354693240251814253e-03, 2.439967964406884130e-03, 2.525104949525616791e-03, 2.610101329457301805e-03, 2.694954244710039398e-03, 2.779660842546052661e-03, 2.864218277076647622e-03, 2.948623709356558344e-03, 3.032874307477366558e-03, 3.116967246662576217e-03, 3.200899709360450259e-03, 3.284668885337120592e-03, 3.368271971769712381e-03, 3.451706173339270586e-03, 3.534968702322395431e-03, 3.618056778683586064e-03, 3.700967630167094607e-03, 3.783698492387607953e-03, 3.866246608922008134e-03, 3.948609231399311664e-03, 4.030783619591324016e-03, 4.112767041502787130e-03, 4.194556773460918035e-03, 4.276150100204033702e-03, 4.357544314971672529e-03, 4.438736719592482373e-03, 4.519724624572392206e-03, 4.600505349182682294e-03, 4.681076221547825385e-03, 4.761434578731930586e-03, 4.841577766826405012e-03, 4.921503141035617895e-03, 5.001208065763321046e-03, 5.080689914698616541e-03, 5.159946070900697096e-03, 5.238973926884092983e-03, 5.317770884703398523e-03, 5.396334356037289087e-03, 5.474661762272099198e-03, 5.552750534585431871e-03, 5.630598114029463502e-03, 5.708201951612938176e-03, 5.785559508383787339e-03, 5.862668255511091150e-03, 5.939525674366003330e-03, 6.016129256603351683e-03, 6.092476504241727681e-03, 6.168564929743899569e-03, 6.244392056096888070e-03, 6.319955416890802626e-03, 6.395252556398078360e-03, 6.470281029652157068e-03, 6.545038402525452624e-03, 6.619522251806895727e-03, 6.693730165279313839e-03, 6.767659741796532707e-03, 6.841308591359330366e-03, 6.914674335191608838e-03, 6.987754605816167731e-03, 7.060547047129256577e-03, 7.133049314475884382e-03, 7.205259074723411802e-03, 7.277174006335595212e-03, 7.348791799446125102e-03, 7.420110155931267625e-03, 7.491126789481819190e-03, 7.561839425676039443e-03, 7.632245802050555486e-03, 7.702343668171306862e-03, 7.772130785704297988e-03, 7.841604928486036602e-03, 7.910763882592488153e-03, 7.979605446409019850e-03, 8.048127430698517187e-03, 8.116327658669793624e-03, 8.184203966045732262e-03, 8.251754201130034536e-03, 8.318976224874201353e-03, 8.385867910944212397e-03, 8.452427145786077858e-03, 8.518651828690841990e-03, 8.584539871860284027e-03, 8.650089200470825399e-03, 8.715297752737365816e-03, 8.780163479976794971e-03, 8.844684346671193714e-03, 8.908858330529675212e-03, 8.972683422551013671e-03, 9.036157627084373534e-03, 9.099278961890664916e-03, 9.162045458202995249e-03, 9.224455160786283053e-03, 9.286506127996850893e-03, 9.348196431841405973e-03, 9.409524158035389302e-03, 9.470487406060615343e-03, 9.531084289222890860e-03, 9.591312934708976293e-03, 9.651171483642561819e-03, 9.710658091140243406e-03, 9.769770926367125907e-03, 9.828508172590949901e-03, 9.886868027237049467e-03, 9.944848701941561356e-03, 1.000244842260475560e-02, 1.005966542944389946e-02, 1.011649797704539284e-02, 1.017294433441578994e-02, 1.022900278503374207e-02, 1.028467162690010865e-02, 1.033994917258787387e-02, 1.039483374929168341e-02, 1.044932369887713840e-02, 1.050341737792864251e-02, 1.055711315779756139e-02, 1.061040942464965865e-02, 1.066330457951144249e-02, 1.071579703831699627e-02, 1.076788523195298594e-02, 1.081956760630425722e-02, 1.087084262229842321e-02, 1.092170875594954821e-02, 1.097216449840195465e-02, 1.102220835597313500e-02, 1.107183885019589684e-02, 1.112105451786053224e-02, 1.116985391105575036e-02, 1.121823559720956653e-02, 1.126619815912948894e-02, 1.131374019504221250e-02, 1.136086031863211589e-02, 1.140755715908051485e-02, 1.145382936110309578e-02, 1.149967558498732334e-02, 1.154509450662928420e-02, 1.159008481757003994e-02, 1.163464522503099979e-02, 1.167877445194937490e-02, 1.172247123701234545e-02, 1.176573433469126247e-02, 1.180856251527502912e-02, 1.185095456490280891e-02, 1.189290928559623775e-02, 1.193442549529141923e-02, 1.197550202786974542e-02, 1.201613773318829445e-02, 1.205633147711027489e-02, 1.209608214153413269e-02, 1.213538862442223309e-02, 1.217424983982931704e-02, 1.221266471793015264e-02, 1.225063220504644251e-02, 1.228815126367364084e-02, 1.232522087250658913e-02, 1.236184002646494896e-02, 1.239800773671819595e-02, 1.243372303070944609e-02, 1.246898495217938461e-02, 1.250379256118913998e-02, 1.253814493414286135e-02, 1.257204116380946680e-02, 1.260548035934391103e-02, 1.263846164630818593e-02, 1.267098416669107039e-02, 1.270304707892787321e-02, 1.273464955791951854e-02, 1.276579079505061123e-02, 1.279646999820757171e-02, 1.282668639179556161e-02, 1.285643921675534186e-02, 1.288572773057917835e-02, 1.291455120732649953e-02, 1.294290893763830677e-02, 1.297080022875211035e-02, 1.299822440451523647e-02, 1.302518080539797826e-02, 1.305166878850619501e-02, 1.307768772759337547e-02, 1.310323701307180601e-02, 1.312831605202342475e-02, 1.315292426821015187e-02, 1.317706110208333344e-02, 1.320072601079285736e-02, 1.322391846819554080e-02, 1.324663796486309775e-02, 1.326888400808922883e-02, 1.329065612189665908e-02, 1.331195384704267348e-02, 1.333277674102521099e-02, 1.335312437808758475e-02, 1.337299634922267492e-02, 1.339239226217688560e-02, 1.341131174145338174e-02, 1.342975442831441379e-02, 1.344771998078369245e-02, 1.346520807364751972e-02, 1.348221839845578987e-02, 1.349875066352229994e-02, 1.351480459392435766e-02, 1.353037993150186039e-02, 1.354547643485589856e-02, 1.356009387934675042e-02, 1.357423205709100585e-02, 1.358789077695863462e-02, 1.360106986456907120e-02, 1.361376916228681545e-02, 1.362598852921650255e-02, 1.363772784119742995e-02, 1.364898699079735052e-02, 1.365976588730592398e-02, 1.367006445672726105e-02, 1.367988264177234271e-02, 1.368922040185034314e-02, 1.369807771305992482e-02, 1.370645456817937147e-02, 1.371435097665675215e-02, 1.372176696459906885e-02, 1.372870257476097207e-02, 1.373515786653293873e-02, 1.374113291592891570e-02, 1.374662781557328683e-02, 1.375164267468727795e-02, 1.375617761907488475e-02, 1.376023279110826988e-02, 1.376380834971238469e-02, 1.376690447034916928e-02, 1.376952134500117851e-02, 1.377165918215474821e-02, 1.377331820678236694e-02, 1.377449866032460363e-02, 1.377520080067156857e-02, 1.377542490214365110e-02, 1.377517125547179748e-02, 1.377444016777726842e-02, 1.377323196255066627e-02, 1.377154697963060663e-02, 1.376938557518171853e-02, 1.376674812167216246e-02, 1.376363500785047350e-02, 1.376004663872207323e-02, 1.375598343552492976e-02, 1.375144583570496806e-02, 1.374643429289080197e-02, 1.374094927686778794e-02, 1.373499127355187407e-02, 1.372856078496246905e-02, 1.372165832919517922e-02, 1.371428444039374250e-02, 1.370643966872154250e-02, 1.369812458033247034e-02, 1.368933975734142917e-02, 1.368008579779412225e-02, 1.367036331563646276e-02, 1.366017294068320662e-02, 1.364951531858647066e-02, 1.363839111080323782e-02, 1.362680099456272526e-02, 1.361474566283294406e-02, 1.360222582428697452e-02, 1.358924220326845726e-02, 1.357579553975688490e-02, 1.356188658933204713e-02, 1.354751612313808730e-02, 1.353268492784721194e-02, 1.351739380562255732e-02, 1.350164357408079226e-02, 1.348543506625414154e-02, 1.346876913055175540e-02, 1.345164663072093841e-02, 1.343406844580737752e-02, 1.341603547011526766e-02, 1.339754861316668107e-02, 1.337860879966069026e-02, 1.335921696943156295e-02, 1.333937407740697773e-02, 1.331908109356545744e-02, 1.329833900289317458e-02, 1.327714880534061094e-02, 1.325551151577839676e-02, 1.323342816395288446e-02, 1.321089979444124186e-02, 1.318792746660570406e-02, 1.316451225454789119e-02, 1.314065524706223287e-02, 1.311635754758896932e-02, 1.309162027416688710e-02, 1.306644455938535225e-02, 1.304083155033590284e-02, 1.301478240856353621e-02, 1.298829831001727109e-02, 1.296138044500045640e-02, 1.293403001812058403e-02, 1.290624824823835559e-02, 1.287803636841668674e-02, 1.284939562586919631e-02, 1.282032728190777779e-02, 1.279083261189029389e-02, 1.276091290516751658e-02, 1.273056946502972020e-02, 1.269980360865257188e-02, 1.266861666704307589e-02, 1.263700998498463145e-02, 1.260498492098158230e-02, 1.257254284720398484e-02, 1.253968514943094165e-02, 1.250641322699451961e-02, 1.247272849272253875e-02, 1.243863237288101234e-02, 1.240412630711642747e-02, 1.236921174839764048e-02, 1.233389016295676974e-02, 1.229816303023019072e-02, 1.226203184279922587e-02, 1.222549810632985075e-02, 1.218856333951232919e-02, 1.215122907400066968e-02, 1.211349685435097849e-02, 1.207536823796017712e-02, 1.203684479500385582e-02, 1.199792810837369862e-02, 1.195861977361477139e-02, 1.191892139886227379e-02, 1.187883460477782635e-02, 1.183836102448534468e-02, 1.179750230350684083e-02, 1.175626009969746658e-02, 1.171463608318017852e-02, 1.167263193628032686e-02, 1.163024935345964052e-02, 1.158749004124970221e-02, 1.154435571818543393e-02, 1.150084811473781055e-02, 1.145696897324647093e-02, 1.141272004785186256e-02, 1.136810310442685698e-02, 1.132311992050838954e-02, 1.127777228522843130e-02, 1.123206199924450983e-02, 1.118599087467021282e-02, 1.113956073500515544e-02, 1.109277341506467902e-02, 1.104563076090878983e-02, 1.099813462977149159e-02, 1.095028688998920738e-02, 1.090208942092887358e-02, 1.085354411291617263e-02, 1.080465286716275272e-02, 1.075541759569374582e-02, 1.070584022127459359e-02, 1.065592267733752284e-02, 1.060566690790775216e-02, 1.055507486752993093e-02, 1.050414852119305534e-02, 1.045288984425612154e-02, 1.040130082237319259e-02, 1.034938345141796917e-02, 1.029713973740796311e-02, 1.024457169642900047e-02, 1.019168135455847737e-02, 1.013847074778922996e-02, 1.008494192195255081e-02, 1.003109693264086534e-02, 9.976937845130687613e-03, 9.922466734304658323e-03, 9.867685684573565541e-03, 9.812596789797962960e-03, 9.757202153210223564e-03, 9.701503887334787454e-03, 9.645504113909623978e-03, 9.589204963806855983e-03, 9.532608576953021523e-03, 9.475717102248964324e-03, 9.418532697490072936e-03, 9.361057529285430473e-03, 9.303293772977457021e-03, 9.245243612560884172e-03, 9.186909240601313226e-03, 9.128292858154217482e-03, 9.069396674683000842e-03, 9.010222907977032125e-03, 8.950773784069523259e-03, 8.891051537155341550e-03, 8.831058409508223475e-03, 8.770796651397756022e-03, 8.710268521006621703e-03, 8.649476284347154889e-03, 8.588422215177611910e-03, 8.527108594918893919e-03, 8.465537712570032902e-03, 8.403711864624565861e-03, 8.341633354985856022e-03, 8.279304494882492108e-03, 8.216727602783474235e-03, 8.153905004313804009e-03, 8.090839032168435294e-03, 8.027532026027387260e-03, 7.963986332470307516e-03, 7.900204304890558193e-03, 7.836188303409076517e-03, 7.771940694788673394e-03, 7.707463852347639852e-03, 7.642760155872944071e-03, 7.577831991534224668e-03, 7.512681751796333740e-03, 7.447311835332892128e-03, 7.381724646939077060e-03, 7.315922597444000398e-03, 7.249908103623524912e-03, 7.183683588113070999e-03, 7.117251479319094618e-03, 7.050614211331647681e-03, 6.983774223836457934e-03, 6.916733962026669694e-03, 6.849495876514232438e-03, 6.782062423242072625e-03, 6.714436063394874261e-03, 6.646619263310956684e-03, 6.578614494393243348e-03, 6.510424233020035457e-03, 6.442050960456524589e-03, 6.373497162765302641e-03, 6.304765330717023580e-03, 6.235857959701086861e-03, 6.166777549636329528e-03, 6.097526604881391317e-03, 6.028107634144600109e-03, 5.958523150394828827e-03, 5.888775670771299355e-03, 5.818867716493412480e-03, 5.748801812771252642e-03, 5.678580488714787301e-03, 5.608206277244285817e-03, 5.537681714999733926e-03, 5.467009342250256886e-03, 5.396191702804154985e-03, 5.325231343918205261e-03, 5.254130816206915508e-03, 5.182892673552050647e-03, 5.111519473012162557e-03, 5.040013774731693166e-03, 4.968378141849874585e-03, 4.896615140410511338e-03, 4.824727339270694880e-03, 4.752717310010077557e-03, 4.680587626839689472e-03, 4.608340866511101419e-03, 4.535979608225580023e-03, 4.463506433542909803e-03, 4.390923926289986255e-03, 4.318234672470317066e-03, 4.245441260172636011e-03, 4.172546279479466547e-03, 4.099552322376659452e-03, 4.026461982661497588e-03, 3.953277855852197105e-03, 3.880002539096428105e-03, 3.806638631079976680e-03, 3.733188731936024941e-03, 3.659655443153816533e-03, 3.586041367487296117e-03, 3.512349108864200754e-03, 3.438581272295084500e-03, 3.364740463782081494e-03, 3.290829290227577537e-03, 3.216850359343675740e-03, 3.142806279560935324e-03, 3.068699659937129069e-03, 2.994533110066895879e-03, 2.920309239990162564e-03, 2.846030660101848877e-03, 2.771699981060818819e-03, 2.697319813698906103e-03, 2.622892768930282659e-03, 2.548421457661428219e-03, 2.473908490699426328e-03, 2.399356478662039317e-03, 2.324768031887311862e-03, 2.250145760342964641e-03, 2.175492273535773683e-03, 2.100810180421906412e-03, 2.026102089316008260e-03, 1.951370607801693538e-03, 1.876618342641225975e-03, 1.801847899685298784e-03, 1.727061883783685995e-03, 1.652262898695184721e-03, 1.577453546997768189e-03, 1.502636429999059048e-03, 1.427814147647470762e-03, 1.352989298441743512e-03, 1.278164479342286603e-03, 1.203342285682085450e-03, 1.128525311077476726e-03, 1.053716147338906598e-03, 9.789173843827499600e-04, 9.041316101418683110e-04, 8.293614104776662107e-04, 7.546093690913539950e-04, 6.798780674353603268e-04, 6.051700846256634998e-04, 5.304879973534834970e-04, 4.558343797971634590e-04, 3.812118035345843088e-04, 3.066228374557106195e-04, 2.320700476749260922e-04, 1.575559974434305899e-04, 8.308324706260158227e-05, 8.654353796701388379e-06, -6.572812821425376699e-05, -1.400616480405653553e-04, -2.143436580501050523e-04, -2.885716139940516182e-04, -3.627429750933549549e-04, -4.368552041249363456e-04, -5.109057675074390884e-04, -5.848921353862669183e-04, -6.588117817201385226e-04, -7.326621843657555450e-04, -8.064408251628123843e-04, -8.801451900191028122e-04, -9.537727689954961620e-04, -1.027321056389929712e-03, -1.100787550821998896e-03, -1.174169755317343907e-03, -1.247465177390946452e-03, -1.320671329131541290e-03, -1.393785727284493512e-03, -1.466805893335346514e-03, -1.539729353593065949e-03, -1.612553639272791897e-03, -1.685276286577856589e-03, -1.757894836783225039e-03, -1.830406836317062611e-03, -1.902809836842590547e-03, -1.975101395339952989e-03, -2.047279074187973412e-03, -2.119340441244770695e-03, -2.191283069929440309e-03, -2.263104539302206782e-03, -2.334802434145183750e-03, -2.406374345042894183e-03, -2.477817868461732864e-03, -2.549130606830016937e-03, -2.620310168617607984e-03, -2.691354168414987653e-03, -2.762260227012067453e-03, -2.833025971477055351e-03, -2.903649035235150201e-03, -2.974127058146209222e-03, -3.044457686582880806e-03, -3.114638573508505311e-03, -3.184667378553859667e-03, -3.254541768094878183e-03, -3.324259415328889317e-03, -3.393818000351311696e-03, -3.463215210232161931e-03, -3.532448739091453068e-03, -3.601516288175060990e-03, -3.670415565930259475e-03, -3.739144288080574387e-03, -3.807700177700332114e-03, -3.876080965289281730e-03, -3.944284388847004233e-03, -4.012308193946169908e-03, -4.080150133806381176e-03, -4.147807969367549655e-03, -4.215279469362277938e-03, -4.282562410389018949e-03, -4.349654576983841454e-03, -4.416553761692518232e-03, -4.483257765142386990e-03, -4.549764396113498317e-03, -4.616071471609033312e-03, -4.682176816926869600e-03, -4.748078265729367524e-03, -4.813773660113206641e-03, -4.879260850679185794e-03, -4.944537696601749091e-03, -5.009602065697390388e-03, -5.074451834493866158e-03, -5.139084888297909548e-03, -5.203499121263349507e-03, -5.267692436458998317e-03, -5.331662745935269315e-03, -5.395407970791326301e-03, -5.458926041241761104e-03, -5.522214896682599815e-03, -5.585272485756570017e-03, -5.648096766419458299e-03, -5.710685706004608141e-03, -5.773037281287514075e-03, -5.835149478550334320e-03, -5.897020293646010498e-03, -5.958647732061412433e-03, -6.020029808981010311e-03, -6.081164549349276152e-03, -6.142049987933317738e-03, -6.202684169385174265e-03, -6.263065148303072899e-03, -6.323190989292905642e-03, -6.383059767029361856e-03, -6.442669566316225511e-03, -6.502018482146416575e-03, -6.561104619761931774e-03, -6.619926094713288363e-03, -6.678481032918178600e-03, -6.736767570720247379e-03, -6.794783854947092708e-03, -6.852528042968320833e-03, -6.909998302752707981e-03, -6.967192812925016021e-03, -7.024109762822705778e-03, -7.080747352552266109e-03, -7.137103793044574131e-03, -7.193177306110322237e-03, -7.248966124495315015e-03, -7.304468491934277760e-03, -7.359682663205658129e-03, -7.414606904184672248e-03, -7.469239491896902464e-03, -7.523578714571176919e-03, -7.577622871691658962e-03, -7.631370274049992068e-03, -7.684819243797008474e-03, -7.737968114493700561e-03, -7.790815231161806256e-03, -7.843358950334163721e-03, -7.895597640104825773e-03, -7.947529680178005984e-03, -7.999153461917271959e-03, -8.050467388394242502e-03, -8.101469874436308116e-03, -8.152159346674714077e-03, -8.202534243591359797e-03, -8.252593015565858406e-03, -8.302334124921859071e-03, -8.351756045972949516e-03, -8.400857265067675564e-03, -8.449636280635275387e-03, -8.498091603229741484e-03, -8.546221755573998879e-03, -8.594025272603523016e-03, -8.641500701509837942e-03, -8.688646601782822748e-03, -8.735461545253422194e-03, -8.781944116135158643e-03, -8.828092911065631848e-03, -8.873906539147670067e-03, -8.919383621989398700e-03, -8.964522793744475471e-03, -9.009322701151671609e-03, -9.053782003574003742e-03, -9.097899373036913429e-03, -9.141673494267100672e-03, -9.185103064729789255e-03, -9.228186794666000739e-03, -9.270923407129287239e-03, -9.313311638022356634e-03, -9.355350236132367256e-03, -9.397037963166772478e-03, -9.438373593787838245e-03, -9.479355915647228251e-03, -9.519983729420087790e-03, -9.560255848838130135e-03, -9.600171100722884251e-03, -9.639728325018255550e-03, -9.678926374822502052e-03, -9.717764116419665837e-03, -9.756240429310726950e-03, -9.794354206244436367e-03, -9.832104353247115083e-03, -9.869489789652421963e-03, -9.906509448130687914e-03, -9.943162274717273416e-03, -9.979447228841137676e-03, -1.001536328335225073e-02, -1.005090942454888413e-02, -1.008608465220469166e-02, -1.012088797959445272e-02, -1.015531843352023185e-02, -1.018937505433654966e-02, -1.022305689597528301e-02, -1.025636302596980194e-02, -1.028929252547891235e-02, -1.032184448931031812e-02, -1.035401802594324537e-02, -1.038581225755096267e-02, -1.041722632002271311e-02, -1.044825936298487100e-02, -1.047891054982214888e-02, -1.050917905769773765e-02, -1.053906407757330098e-02, -1.056856481422855688e-02, -1.059768048628009600e-02, -1.062641032619955454e-02, -1.065475358033208218e-02, -1.068270950891349151e-02, -1.071027738608713344e-02, -1.073745649992057134e-02, -1.076424615242149545e-02, -1.079064565955311153e-02, -1.081665435124923823e-02, -1.084227157142876596e-02, -1.086749667800953646e-02, -1.089232904292206788e-02, -1.091676805212238484e-02, -1.094081310560448411e-02, -1.096446361741261998e-02, -1.098771901565256080e-02, -1.101057874250258896e-02, -1.103304225422431159e-02, -1.105510902117242192e-02, -1.107677852780434603e-02, -1.109805027268920274e-02, -1.111892376851654485e-02, -1.113939854210411508e-02, -1.115947413440571308e-02, -1.117915010051793827e-02, -1.119842600968698650e-02, -1.121730144531466085e-02, -1.123577600496388287e-02, -1.125384930036374756e-02, -1.127152095741421403e-02, -1.128879061619015960e-02, -1.130565793094487695e-02, -1.132212257011319667e-02, -1.133818421631428187e-02, -1.135384256635335598e-02, -1.136909733122368552e-02, -1.138394823610747349e-02, -1.139839502037658103e-02, -1.141243743759264885e-02, -1.142607525550666005e-02, -1.143930825605816645e-02, -1.145213623537389910e-02, -1.146455900376601791e-02, -1.147657638572957550e-02, -1.148818821993993593e-02, -1.149939435924934687e-02, -1.151019467068307989e-02, -1.152058903543524970e-02, -1.153057734886398823e-02, -1.154015952048610509e-02, -1.154933547397145495e-02, -1.155810514713660926e-02, -1.156646849193808391e-02, -1.157442547446523376e-02, -1.158197607493247940e-02, -1.158912028767102032e-02, -1.159585812112031919e-02, -1.160218959781889395e-02, -1.160811475439454954e-02, -1.161363364155435646e-02, -1.161874632407407411e-02, -1.162345288078693063e-02, -1.162775340457211821e-02, -1.163164800234273329e-02, -1.163513679503321886e-02, -1.163821991758636452e-02, -1.164089751893977905e-02, -1.164316976201196056e-02, -1.164503682368778388e-02, -1.164649889480369981e-02, -1.164755618013210703e-02, -1.164820889836572920e-02, -1.164845728210111946e-02, -1.164830157782179541e-02, -1.164774204588110013e-02, -1.164677896048432748e-02, -1.164541260967046771e-02, -1.164364329529360247e-02, -1.164147133300361993e-02, -1.163889705222662801e-02, -1.163592079614490793e-02, -1.163254292167617381e-02, -1.162876379945276990e-02, -1.162458381379992758e-02, -1.162000336271395116e-02, -1.161502285783979835e-02, -1.160964272444816453e-02, -1.160386340141206056e-02, -1.159768534118315979e-02, -1.159110900976745989e-02, -1.158413488670055266e-02, -1.157676346502252603e-02, -1.156899525125228492e-02, -1.156083076536149404e-02, -1.155227054074807296e-02, -1.154331512420918651e-02, -1.153396507591388301e-02, -1.152422096937515475e-02, -1.151408339142167420e-02, -1.150355294216902531e-02, -1.149263023499047000e-02, -1.148131589648733290e-02, -1.146961056645891437e-02, -1.145751489787194891e-02, -1.144502955682964382e-02, -1.143215522254032758e-02, -1.141889258728549794e-02, -1.140524235638764108e-02, -1.139120524817759626e-02, -1.137678199396120575e-02, -1.136197333798594569e-02, -1.134678003740684053e-02, -1.133120286225208773e-02, -1.131524259538818807e-02, -1.129890003248466314e-02, -1.128217598197839115e-02, -1.126507126503746743e-02, -1.124758671552466942e-02, -1.122972317996055736e-02, -1.121148151748602509e-02, -1.119286259982459585e-02, -1.117386731124415250e-02, -1.115449654851832610e-02, -1.113475122088766756e-02, -1.111463225001990338e-02, -1.109414056997033889e-02, -1.107327712714152416e-02, -1.105204288024270141e-02, -1.103043880024859140e-02, -1.100846587035811050e-02, -1.098612508595242336e-02, -1.096341745455280299e-02, -1.094034399577788717e-02, -1.091690574130067294e-02, -1.089310373480518145e-02, -1.086893903194256772e-02, -1.084441270028689910e-02, -1.081952581929059541e-02, -1.079427948023951520e-02, -1.076867478620758406e-02, -1.074271285201090602e-02, -1.071639480416194251e-02, -1.068972178082272691e-02, -1.066269493175810851e-02, -1.063531541828867215e-02, -1.060758441324283381e-02, -1.057950310090906808e-02, -1.055107267698754923e-02, -1.052229434854122340e-02, -1.049316933394705588e-02, -1.046369886284636945e-02, -1.043388417609504917e-02, -1.040372652571340886e-02, -1.037322717483575747e-02, -1.034238739765949884e-02, -1.031120847939366592e-02, -1.027969171620779325e-02, -1.024783841517961161e-02, -1.021564989424290221e-02, -1.018312748213500568e-02, -1.015027251834360600e-02, -1.011708635305369301e-02, -1.008357034709387624e-02, -1.004972587188220079e-02, -1.001555430937203263e-02, -9.981057051997576160e-03, -9.946235502618510499e-03, -9.911091074464965789e-03, -9.875625191081895821e-03, -9.839839286273121058e-03, -9.803734804044887674e-03, -9.767313198549615674e-03, -9.730575934028607918e-03, -9.693524484755217108e-03, -9.656160334977105519e-03, -9.618484978858326054e-03, -9.580499920421451862e-03, -9.542206673488940957e-03, -9.503606761624306537e-03, -9.464701718073172815e-03, -9.425493085704157378e-03, -9.385982416948667612e-03, -9.346171273741351107e-03, -9.306061227459833107e-03, -9.265653858864082715e-03, -9.224950758035550119e-03, -9.183953524316310763e-03, -9.142663766247291837e-03, -9.101083101506961953e-03, -9.059213156849321713e-03, -9.017055568041327032e-03, -8.974611979800952571e-03, -8.931884045734068620e-03, -8.888873428271343996e-03, -8.845581798605148954e-03, -8.802010836625953280e-03, -8.758162230858474590e-03, -8.714037678397412029e-03, -8.669638884843396814e-03, -8.624967564238252352e-03, -8.580025438999923024e-03, -8.534814239857850537e-03, -8.489335705787096065e-03, -8.443591583943121578e-03, -8.397583629595851279e-03, -8.351313606063358319e-03, -8.304783284645905414e-03, -8.257994444559246458e-03, -8.210948872867633239e-03, -8.163648364417012970e-03, -8.116094721767851128e-03, -8.068289755127522334e-03, -8.020235282282465322e-03, -7.971933128530610257e-03, -7.923385126613067056e-03, -7.874593116645588198e-03, -7.825558946050427053e-03, -7.776284469487053895e-03, -7.726771548783680291e-03, -7.677022052867775621e-03, -7.627037857696629571e-03, -7.576820846187794917e-03, -7.526372908149692523e-03, -7.475695940210969059e-03, -7.424791845750682191e-03, -7.373662534827987898e-03, -7.322309924111516412e-03, -7.270735936808390802e-03, -7.218942502593746029e-03, -7.166931557539162924e-03, -7.114705044041747493e-03, -7.062264910752570103e-03, -7.009613112504795886e-03, -6.956751610242266175e-03, -6.903682370947366968e-03, -6.850407367568658867e-03, -6.796928578949034370e-03, -6.743247989753013878e-03, -6.689367590393994860e-03, -6.635289376961860976e-03, -6.581015351149664856e-03, -6.526547520180898086e-03, -6.471887896736185260e-03, -6.417038498879749919e-03, -6.362001349985991518e-03, -6.306778478666309577e-03, -6.251371918694581704e-03, -6.195783708933684172e-03, -6.140015893261548466e-03, -6.084070520496857870e-03, -6.027949644324580997e-03, -5.971655323221999705e-03, -5.915189620383731750e-03, -5.858554603647451661e-03, -5.801752345418986247e-03, -5.744784922597273059e-03, -5.687654416499737797e-03, -5.630362912787031590e-03, -5.572912501387698031e-03, -5.515305276423063986e-03, -5.457543336131907494e-03, -5.399628782794937444e-03, -5.341563722658955807e-03, -5.283350265861584509e-03, -5.224990526355404244e-03, -5.166486621831771486e-03, -5.107840673645542770e-03, -5.049054806738368685e-03, -4.990131149563236876e-03, -4.931071834008021043e-03, -4.871878995319098467e-03, -4.812554772025473201e-03, -4.753101305862226199e-03, -4.693520741693899510e-03, -4.633815227438242181e-03, -4.573986913989756646e-03, -4.514037955142986662e-03, -4.453970507515669919e-03, -4.393786730472448374e-03, -4.333488786047921121e-03, -4.273078838869686855e-03, -4.212559056081938841e-03, -4.151931607268115332e-03, -4.091198664374426017e-03, -4.030362401632753971e-03, -3.969424995483510771e-03, -3.908388624498746605e-03, -3.847255469305609077e-03, -3.786027712508435034e-03, -3.724707538612243192e-03, -3.663297133945640858e-03, -3.601798686583667763e-03, -3.540214386270423494e-03, -3.478546424342479886e-03, -3.416796993651161074e-03, -3.354968288485956750e-03, -3.293062504497140924e-03, -3.231081838618463532e-03, -3.169028488990416250e-03, -3.106904654882967909e-03, -3.044712536618240060e-03, -2.982454335493545539e-03, -2.920132253704793481e-03, -2.857748494268537356e-03, -2.795305260945486238e-03, -2.732804758163528622e-03, -2.670249190940591870e-03, -2.607640764807488652e-03, -2.544981685731459008e-03, -2.482274160038702802e-03, -2.419520394338039310e-03, -2.356722595443827822e-03, -2.293882970299008367e-03, -2.231003725898760004e-03, -2.168087069213613972e-03, -2.105135207112651848e-03, -2.042150346287067118e-03, -1.979134693173770568e-03, -1.916090453878758213e-03, -1.853019834100487484e-03, -1.789925039053932984e-03, -1.726808273394105347e-03, -1.663671741139575956e-03, -1.600517645596858394e-03, -1.537348189283727811e-03, -1.474165573853725110e-03, -1.410972000020032074e-03, -1.347769667479437354e-03, -1.284560774836677370e-03, -1.221347519529267277e-03, -1.158132097751012231e-03, -1.094916704377040017e-03, -1.031703532888466127e-03, -9.684947752969288439e-04, -9.052926220691658509e-04, -8.420992620523414310e-04, -7.789168823988288585e-04, -7.157476684910744295e-04, -6.525938038673398042e-04, -5.894574701464155506e-04, -5.263408469535913858e-04, -4.632461118459744879e-04, -4.001754402380083842e-04, -3.371310053273465367e-04, -2.741149780212911763e-04, -2.111295268619290343e-04, -1.481768179528349658e-04, -8.525901488544691093e-05, -2.237827866535364188e-05, 4.046323236136215479e-05, 1.032633625808792108e-04, 1.660199591853928124e-04, 2.287308722455853708e-04, 2.913939547837128465e-04, 3.540070628465379109e-04, 4.165680555774341209e-04, 4.790747952890165684e-04, 5.415251475355384227e-04, 6.039169811848338169e-04, 6.662481684900863933e-04, 7.285165851617564142e-04, 7.907201104393997773e-04, 8.528566271626482386e-04, 9.149240218426940054e-04, 9.769201847336138680e-04, 1.038843009902744871e-03, 1.100690395302029697e-03, 1.162460242838037798e-03, 1.224150458442581227e-03, 1.285758952143110359e-03, 1.347283638132279774e-03, 1.408722434837982301e-03, 1.470073264993120021e-03, 1.531334055704890434e-03, 1.592502738523860319e-03, 1.653577249513157790e-03, 1.714555529317514067e-03, 1.775435523231478230e-03, 1.836215181268034636e-03, 1.896892458227065949e-03, 1.957465313762832802e-03, 2.017931712452353775e-03, 2.078289623862501247e-03, 2.138537022617561720e-03, 2.198671888466552198e-03, 2.258692206350047370e-03, 2.318595966466396180e-03, 2.378381164339084600e-03, 2.438045800882449564e-03, 2.497587882467646164e-03, 2.557005420988598798e-03, 2.616296433927745024e-03, 2.675458944420889065e-03, 2.734490981322824227e-03, 2.793390579271708488e-03, 2.852155778753865528e-03, 2.910784626168364583e-03, 2.969275173890681754e-03, 3.027625480336824503e-03, 3.085833610027120897e-03, 3.143897633649158415e-03, 3.201815628121101789e-03, 3.259585676654786195e-03, 3.317205868817775689e-03, 3.374674300596267745e-03, 3.431989074456692854e-03, 3.489148299407688388e-03, 3.546150091061818325e-03, 3.602992571696721387e-03, 3.659673870315688880e-03, 3.716192122709150673e-03, 3.772545471514705730e-03, 3.828732066277179547e-03, 3.884750063508678533e-03, 3.940597626748425404e-03, 3.996272926621569771e-03, 4.051774140898863931e-03, 4.107099454554861973e-03, 4.162247059826647971e-03, 4.217215156272244130e-03, 4.272001950828037929e-03, 4.326605657866649905e-03, 4.381024499254372075e-03, 4.435256704408034774e-03, 4.489300510351376498e-03, 4.543154161772123244e-03, 4.596815911077757263e-03, 4.650284018451154855e-03, 4.703556751906285728e-03, 4.756632387343561960e-03, 4.809509208604297904e-03, 4.862185507525776385e-03, 4.914659583995067624e-03, 4.966929746003165627e-03, 5.018994309698832264e-03, 5.070851599441469036e-03, 5.122499947854363550e-03, 5.173937695877473680e-03, 5.225163192819631472e-03, 5.276174796410456475e-03, 5.326970872852158922e-03, 5.377549796871144289e-03, 5.427909951768681955e-03, 5.478049729471706590e-03, 5.527967530583552738e-03, 5.577661764433403113e-03, 5.627130849126638079e-03, 5.676373211593643830e-03, 5.725387287639173081e-03, 5.774171521991049161e-03, 5.822724368348519697e-03, 5.871044289429851355e-03, 5.919129757020716483e-03, 5.966979252021086151e-03, 6.014591264492144020e-03, 6.061964293703055347e-03, 6.109096848177438498e-03, 6.155987445738881486e-03, 6.202634613556771634e-03, 6.249036888191630834e-03, 6.295192815639622484e-03, 6.341100951377481691e-03, 6.386759860406317907e-03, 6.432168117295548534e-03, 6.477324306226421406e-03, 6.522227021035088834e-03, 6.566874865254905373e-03, 6.611266452159409064e-03, 6.655400404803977349e-03, 6.699275356067286961e-03, 6.742889948692776421e-03, 6.786242835329623670e-03, 6.829332678572868492e-03, 6.872158151004048414e-03, 6.914717935230468501e-03, 6.957010723924821581e-03, 6.999035219864431154e-03, 7.040790135969372809e-03, 7.082274195341109989e-03, 7.123486131300334374e-03, 7.164424687424417702e-03, 7.205088617584422088e-03, 7.245476685981949889e-03, 7.285587667185660504e-03, 7.325420346166925875e-03, 7.364973518335538906e-03, 7.404245989575152127e-03, 7.443236576277710223e-03, 7.481944105378206082e-03, 7.520367414388478416e-03, 7.558505351430971214e-03, 7.596356775272163596e-03, 7.633920555355059451e-03, 7.671195571831971975e-03, 7.708180715596558812e-03, 7.744874888315485956e-03, 7.781277002459632830e-03, 7.817385981335063169e-03, 7.853200759113724422e-03, 7.888720280863176573e-03, 7.923943502576583781e-03, 7.958869391201984361e-03, 7.993496924671108020e-03, 8.027825091928033480e-03, 8.061852892957108857e-03, 8.095579338810776626e-03, 8.129003451636966637e-03, 8.162124264705925350e-03, 8.194940822436469138e-03, 8.227452180422529029e-03, 8.259657405458619914e-03, 8.291555575565026995e-03, 8.323145780012780603e-03, 8.354427119348242434e-03, 8.385398705416954521e-03, 8.416059661387509036e-03, 8.446409121774588885e-03, 8.476446232461911159e-03, 8.506170150724795889e-03, 8.535580045251869169e-03, 8.564675096166865162e-03, 8.593454495049905953e-03, 8.621917444958179452e-03, 8.650063160446136781e-03, 8.677890867585785067e-03, 8.705399803986064305e-03, 8.732589218811970949e-03, 8.759458372803240883e-03, 8.786006538292831167e-03, 8.812232999224577784e-03, 8.838137051170872477e-03, 8.863718001349584971e-03, 8.888975168640740609e-03, 8.913907883602856241e-03, 8.938515488488570082e-03, 8.962797337260085956e-03, 8.986752795604353861e-03, 9.010381240947355416e-03, 9.033682062468375434e-03, 9.056654661113675009e-03, 9.079298449609952970e-03, 9.101612852477024979e-03, 9.123597306040348229e-03, 9.145251258443285944e-03, 9.166574169658422977e-03, 9.187565511498997639e-03, 9.208224767629606677e-03, 9.228551433576610147e-03, 9.248545016738121682e-03, 9.268205036393580704e-03, 9.287531023712589096e-03, 9.306522521764061875e-03, 9.325179085524226003e-03, 9.343500281884497757e-03, 9.361485689658987155e-03, 9.379134899591514904e-03, 9.396447514362218228e-03, 9.413423148593712611e-03, 9.430061428856890970e-03, 9.446361993676240590e-03, 9.462324493534814834e-03, 9.477948590878682716e-03, 9.493233960121064477e-03, 9.508180287646042159e-03, 9.522787271811697721e-03, 9.537054622953036048e-03, 9.550982063384415299e-03, 9.564569327401477652e-03, 9.577816161282812907e-03, 9.590722323291039214e-03, 9.603287583673557684e-03, 9.615511724663008616e-03, 9.627394540477073742e-03, 9.638935837317830907e-03, 9.650135433371226715e-03, 9.660993158805331396e-03, 9.671508855768836538e-03, 9.681682378388756574e-03, 9.691513592767949867e-03, 9.701002376982053449e-03, 9.710148621076114192e-03, 9.718952227060654453e-03, 9.727413108907593739e-03, 9.735531192545502505e-03, 9.743306415854529820e-03, 9.750738728660961543e-03, 9.757828092731313588e-03, 9.764574481766047018e-03, 9.770977881392806097e-03, 9.777038289159387455e-03, 9.782755714526129853e-03, 9.788130178857972624e-03, 9.793161715416139404e-03, 9.797850369349403801e-03, 9.802196197684855464e-03, 9.806199269318329609e-03, 9.809859665004532978e-03, 9.813177477346527941e-03, 9.816152810785004970e-03, 9.818785781587067649e-03, 9.821076517834646455e-03, 9.823025159412487536e-03, 9.824631857995752907e-03, 9.825896777037183491e-03, 9.826820091753953393e-03, 9.827401989113969047e-03, 9.827642667821915104e-03, 9.827542338304901329e-03, 9.827101222697502345e-03, 9.826319554826693295e-03, 9.825197580196143657e-03, 9.823735555970358399e-03, 9.821933750958099230e-03, 9.819792445595746863e-03, 9.817311931930052665e-03, 9.814492513600586721e-03, 9.811334505821693239e-03, 9.807838235364334939e-03, 9.804004040537082215e-03, 9.799832271167157813e-03, 9.795323288580855270e-03, 9.790477465583657252e-03, 9.785295186439854284e-03, 9.779776846851962260e-03, 9.773922853939583100e-03, 9.767733626217999995e-03, 9.761209593576309490e-03, 9.754351197255189260e-03, 9.747158889824341504e-03, 9.739633135159513067e-03, 9.731774408419144318e-03, 9.723583196020596509e-03, 9.715059995616033908e-03, 9.706205316068056144e-03, 9.697019677424712977e-03, 9.687503610894284897e-03, 9.677657658819753192e-03, 9.667482374652813792e-03, 9.656978322927438352e-03, 9.646146079233260118e-03, 9.634986230188479286e-03, 9.623499373412362431e-03, 9.611686117497537235e-03, 9.599547081981660984e-03, 9.587082897319040495e-03, 9.574294204851655291e-03, 9.561181656779885879e-03, 9.547745916132934982e-03, 9.533987656738854982e-03, 9.519907563194185060e-03, 9.505506330833230974e-03, 9.490784665697171371e-03, 9.475743284502470207e-03, 9.460382914609283961e-03, 9.444704293989344968e-03, 9.428708171193353818e-03, 9.412395305318468908e-03, 9.395766465974961582e-03, 9.378822433252786278e-03, 9.361563997687763830e-03, 9.343991960227473331e-03, 9.326107132196691241e-03, 9.307910335262485277e-03, 9.289402401399192086e-03, 9.270584172852770408e-03, 9.251456502104984242e-03, 9.232020251837258148e-03, 9.212276294894100603e-03, 9.192225514246287962e-03, 9.171868802953717092e-03, 9.151207064127869426e-03, 9.130241210893905515e-03, 9.108972166352787350e-03, 9.087400863542453508e-03, 9.065528245399223292e-03, 9.043355264718663106e-03, 9.020882884116211697e-03, 8.998112075987213868e-03, 8.975043822467099891e-03, 8.951679115390962990e-03, 8.928018956252675373e-03, 8.904064356164189883e-03, 8.879816335813965622e-03, 8.855275925425544481e-03, 8.830444164715588184e-03, 8.805322102851556240e-03, 8.779910798409278072e-03, 8.754211319330211169e-03, 8.728224742878114631e-03, 8.701952155595788635e-03, 8.675394653261336853e-03, 8.648553340844114881e-03, 8.621429332460467040e-03, 8.594023751329150917e-03, 8.566337729726420172e-03, 8.538372408940925196e-03, 8.510128939228263356e-03, 8.481608479765104236e-03, 8.452812198603455382e-03, 8.423741272624157839e-03, 8.394396887490343517e-03, 8.364780237600632357e-03, 8.334892526042121316e-03, 8.304734964542846015e-03, 8.274308773424093183e-03, 8.243615181552676682e-03, 8.212655426292642807e-03, 8.181430753456628638e-03, 8.149942417257556929e-03, 8.118191680259154858e-03, 8.086179813327196153e-03, 8.053908095579691978e-03, 8.021377814337168552e-03, 7.988590265072873647e-03, 7.955546751362280525e-03, 7.922248584832662990e-03, 7.888697085112342591e-03, 7.854893579779788360e-03, 7.820839404312256854e-03, 7.786535902034231842e-03, 7.751984424065929032e-03, 7.717186329271187584e-03, 7.682142984205298300e-03, 7.646855763062511760e-03, 7.611326047623397269e-03, 7.575555227202082978e-03, 7.539544698593054518e-03, 7.503295866017596280e-03, 7.466810141070586576e-03, 7.430088942666458404e-03, 7.393133696985184494e-03, 7.355945837418199906e-03, 7.318526804513745231e-03, 7.280878045922417087e-03, 7.243001016342202544e-03, 7.204897177463267209e-03, 7.166567997912753722e-03, 7.128014953199578521e-03, 7.089239525658173890e-03, 7.050243204392903952e-03, 7.011027485222023556e-03, 6.971593870621277216e-03, 6.931943869667249979e-03, 6.892078997980994118e-03, 6.852000777670948922e-03, 6.811710737275768549e-03, 6.771210411707393600e-03, 6.730501342193257082e-03, 6.689585076218892805e-03, 6.648463167470081495e-03, 6.607137175774767911e-03, 6.565608667044845262e-03, 6.523879213218322128e-03, 6.481950392200105070e-03, 6.439823787803672893e-03, 6.397500989692334571e-03, 6.354983593320104665e-03, 6.312273199872342824e-03, 6.269371416206797470e-03, 6.226279854793739625e-03, 6.183000133656570314e-03, 6.139533876311959598e-03, 6.095882711709671616e-03, 6.052048274172813769e-03, 6.008032203337359059e-03, 5.963836144091688371e-03, 5.919461746516141432e-03, 5.874910665822384755e-03, 5.830184562292559276e-03, 5.785285101218067168e-03, 5.740213952838857381e-03, 5.694972792281972201e-03, 5.649563299500067783e-03, 5.603987159210296366e-03, 5.558246060832187571e-03, 5.512341698426369285e-03, 5.466275770632519210e-03, 5.420049980607138593e-03, 5.373666035961876739e-03, 5.327125648701110452e-03, 5.280430535159485322e-03, 5.233582415939605319e-03, 5.186583015849574076e-03, 5.139434063840279433e-03, 5.092137292942376138e-03, 5.044694440203852277e-03, 4.997107246626865396e-03, 4.949377457104471925e-03, 4.901506820357946423e-03, 4.853497088873032217e-03, 4.805350018836997833e-03, 4.757067370075092338e-03, 4.708650905986890532e-03, 4.660102393482724002e-03, 4.611423602920474742e-03, 4.562616308041092875e-03, 4.513682285905160421e-03, 4.464623316829089035e-03, 4.415441184320982072e-03, 4.366137675016432476e-03, 4.316714578614817659e-03, 4.267173687814651561e-03, 4.217516798249744230e-03, 4.167745708424761171e-03, 4.117862219650605775e-03, 4.067868135980432301e-03, 4.017765264144984930e-03, 3.967555413487884770e-03, 3.917240395901216976e-03, 3.866822025761264010e-03, 3.816302119863129554e-03, 3.765682497356482618e-03, 3.714964979680825466e-03, 3.664151390500620595e-03, 3.613243555640274600e-03, 3.562243303019714449e-03, 3.511152462588991007e-03, 3.459972866263840135e-03, 3.408706347860499582e-03, 3.357354743030586605e-03, 3.305919889196498596e-03, 3.254403625486182710e-03, 3.202807792668003941e-03, 3.151134233085833500e-03, 3.099384790594104239e-03, 3.047561310492645330e-03, 2.995665639461397682e-03, 2.943699625495717863e-03, 2.891665117841119102e-03, 2.839563966927989742e-03, 2.787398024306930559e-03, 2.735169142583204326e-03, 2.682879175352089179e-03, 2.630529977133602704e-03, 2.578123403307348328e-03, 2.525661310047499618e-03, 2.473145554258229101e-03, 2.420577993507942293e-03, 2.367960485964699154e-03, 2.315294890331318078e-03, 2.262583065780284300e-03, 2.209826871888658298e-03, 2.157028168573510690e-03, 2.104188816026917371e-03, 2.051310674650875729e-03, 1.998395604992992802e-03, 1.945445467681188121e-03, 1.892462123359403559e-03, 1.839447432622744400e-03, 1.786403255952702168e-03, 1.733331453652612068e-03, 1.680233885783556039e-03, 1.627112412099111565e-03, 1.573968891981315657e-03, 1.520805184376375352e-03, 1.467623147730174596e-03, 1.414424639923819726e-03, 1.361211518209859981e-03, 1.307985639147634565e-03, 1.254748858539622616e-03, 1.201503031367237399e-03, 1.148250011726672550e-03, 1.094991652765424416e-03, 1.041729806618279467e-03, 9.884663243434699612e-04, 9.352030558591477218e-04, 8.819418498799381449e-04, 8.286845538533339599e-04, 7.754330138960990751e-04, 7.221890747313393149e-04, 6.689545796250819052e-04, 6.157313703229568740e-04, 5.625212869875974948e-04, 5.093261681351904987e-04, 4.561478505730758482e-04, 4.029881693368073375e-04, 3.498489576273183604e-04, 2.967320467487643827e-04, 2.436392660458966332e-04, 1.905724428416119499e-04, 1.375334023748625545e-04, 8.452396773868434382e-05, 3.154595981807963354e-05, -2.139880277204428150e-05, -7.430850374824364709e-05, -1.271813292204252278e-04, -1.800154677532257773e-04, -2.328091104275871318e-04, -2.855604509018841051e-04, -3.382676854729227867e-04, -3.909290131370648787e-04, -4.435426356512794997e-04, -4.961067575934901761e-04, -5.486195864233519084e-04, -6.010793325428956954e-04, -6.534842093563903711e-04, -7.058324333310175402e-04, -7.581222240564444758e-04, -8.103518043048941241e-04, -8.625194000910486837e-04, -9.146232407312527906e-04, -9.666615589031128707e-04, -1.018632590704893204e-03, -1.070534575714492077e-03, -1.122365757048264740e-03, -1.174124381419940468e-03, -1.225808699199420039e-03, -1.277416964470876829e-03, -1.328947435091215904e-03, -1.380398372748392393e-03, -1.431768043018942504e-03, -1.483054715426220579e-03, -1.534256663497612656e-03, -1.585372164822118233e-03, -1.636399501107736005e-03, -1.687336958238476198e-03, -1.738182826330797849e-03, -1.788935399791078676e-03, -1.839592977371667026e-03, -1.890153862227182333e-03, -1.940616361970752025e-03, -1.990978788730162798e-03, -2.041239459203183105e-03, -2.091396694713596252e-03, -2.141448821266162070e-03, -2.191394169601946790e-03, -2.241231075253473370e-03, -2.290957878599133267e-03, -2.340572924917901348e-03, -2.390074564443828761e-03, -2.439461152420123805e-03, -2.488731049152662512e-03, -2.537882620064437714e-03, -2.586914235748656761e-03, -2.635824272021959798e-03, -2.684611109977651493e-03, -2.733273136038706381e-03, -2.781808742010044317e-03, -2.830216325131368425e-03, -2.878494288129014676e-03, -2.926641039268057781e-03, -2.974654992404242304e-03, -3.022534567035187799e-03, -3.070278188351798637e-03, -3.117884287289503838e-03, -3.165351300578907959e-03, -3.212677670796319686e-03, -3.259861846414184149e-03, -3.306902281851403780e-03, -3.353797437522858162e-03, -3.400545779889219220e-03, -3.447145781506518770e-03, -3.493595921074912469e-03, -3.539894683488022283e-03, -3.586040559881204740e-03, -3.632032047680157014e-03, -3.677867650649139196e-03, -3.723545878938901241e-03, -3.769065249133877853e-03, -3.814424284300290194e-03, -3.859621514032918373e-03, -3.904655474501891269e-03, -3.949524708499478100e-03, -3.994227765486566863e-03, -4.038763201638482722e-03, -4.083129579890998513e-03, -4.127325469986025189e-03, -4.171349448516623558e-03, -4.215200098972382049e-03, -4.258876011783914971e-03, -4.302375784367460515e-03, -4.345698021169248047e-03, -4.388841333709396150e-03, -4.431804340625226935e-03, -4.474585667715319341e-03, -4.517183947982252729e-03, -4.559597821675418980e-03, -4.601825936333727926e-03, -4.643866946827995314e-03, -4.685719515402646425e-03, -4.727382311717818683e-03, -4.768854012890457253e-03, -4.810133303535644826e-03, -4.851218875807574056e-03, -4.892109429439858194e-03, -4.932803671785957085e-03, -4.973300317859285710e-03, -5.013598090372811851e-03, -5.053695719778360587e-03, -5.093591944305869354e-03, -5.133285510002273504e-03, -5.172775170769823745e-03, -5.212059688404416594e-03, -5.251137832633667214e-03, -5.290008381154213783e-03, -5.328670119669382671e-03, -5.367121841925938559e-03, -5.405362349750883130e-03, -5.443390453088061201e-03, -5.481204970033951539e-03, -5.518804726873620739e-03, -5.556188558116275517e-03, -5.593355306530422080e-03, -5.630303823178582287e-03, -5.667032967451949080e-03, -5.703541607104829422e-03, -5.739828618288236352e-03, -5.775892885583674453e-03, -5.811733302036615686e-03, -5.847348769189117390e-03, -5.882738197112881776e-03, -5.917900504441320556e-03, -5.952834618401647328e-03, -5.987539474846804294e-03, -6.022014018286686414e-03, -6.056257201919003873e-03, -6.090267987660512305e-03, -6.124045346177131068e-03, -6.157588256914045891e-03, -6.190895708125529646e-03, -6.223966696904554077e-03, -6.256800229211594011e-03, -6.289395319903801941e-03, -6.321750992763126159e-03, -6.353866280524658738e-03, -6.385740224904490857e-03, -6.417371876627006935e-03, -6.448760295452132807e-03, -6.479904550202232605e-03, -6.510803718788542478e-03, -6.541456888237116851e-03, -6.571863154715021013e-03, -6.602021623555607774e-03, -6.631931409283598096e-03, -6.661591635639950958e-03, -6.691001435606536325e-03, -6.720159951429930355e-03, -6.749066334645476874e-03, -6.777719746100658443e-03, -6.806119355978151701e-03, -6.834264343818763007e-03, -6.862153898543738723e-03, -6.889787218476892475e-03, -6.917163511366409764e-03, -6.944281994406318638e-03, -6.971141894257327186e-03, -6.997742447067827574e-03, -7.024082898494089962e-03, -7.050162503720494578e-03, -7.075980527479031751e-03, -7.101536244068723004e-03, -7.126828937374781944e-03, -7.151857900887070851e-03, -7.176622437718472268e-03, -7.201121860622881551e-03, -7.225355492012937482e-03, -7.249322663977078932e-03, -7.273022718296585053e-03, -7.296455006462264185e-03, -7.319618889690427191e-03, -7.342513738939051605e-03, -7.365138934923109656e-03, -7.387493868129770512e-03, -7.409577938833420384e-03, -7.431390557109923689e-03, -7.452931142850768853e-03, -7.474199125777057987e-03, -7.495193945452767112e-03, -7.515915051297784345e-03, -7.536361902600756391e-03, -7.556533968531464057e-03, -7.576430728152719861e-03, -7.596051670432153735e-03, -7.615396294253566796e-03, -7.634464108427718720e-03, -7.653254631703155890e-03, -7.671767392776334370e-03, -7.690001930301545996e-03, -7.707957792900550428e-03, -7.725634539171729286e-03, -7.743031737698866449e-03, -7.760148967059764431e-03, -7.776985815834371561e-03, -7.793541882612486753e-03, -7.809816776001235299e-03, -7.825810114632203787e-03, -7.841521527168129196e-03, -7.856950652309268798e-03, -7.872097138799450874e-03, -7.886960645431664862e-03, -7.901540841053546552e-03, -7.915837404572127756e-03, -7.929850024958629354e-03, -7.943578401252591667e-03, -7.957022242565919834e-03, -7.970181268086183254e-03, -7.983055207080130139e-03, -7.995643798896279186e-03, -8.007946792967589322e-03, -8.019963948813433816e-03, -8.031695036041525820e-03, -8.043139834349257583e-03, -8.054298133524899136e-03, -8.065169733448195044e-03, -8.075754444090784204e-03, -8.086052085516338625e-03, -8.096062487880075972e-03, -8.105785491428155881e-03, -8.115220946496685961e-03, -8.124368713510363507e-03, -8.133228662980647103e-03, -8.141800675503707910e-03, -8.150084641758138099e-03, -8.158080462501987942e-03, -8.165788048569768212e-03, -8.173207320868961651e-03, -8.180338210376118108e-03, -8.187180658132816105e-03, -8.193734615241067554e-03, -8.200000042858432772e-03, -8.205976912192877032e-03, -8.211665204497207299e-03, -8.217064911063064886e-03, -8.222176033214883412e-03, -8.226998582303078275e-03, -8.231532579697262153e-03, -8.235778056778851608e-03, -8.239735054933581757e-03, -8.243403625543368682e-03, -8.246783829978147559e-03, -8.249875739587145262e-03, -8.252679435689870210e-03, -8.255195009566842004e-03, -8.257422562449866568e-03, -8.259362205512025060e-03, -8.261014059857326244e-03, -8.262378256510050090e-03, -8.263454936403622983e-03, -8.264244250369314274e-03, -8.264746359124563319e-03, -8.264961433260812132e-03, -8.264889653231254768e-03, -8.264531209338087103e-03, -8.263886301719387123e-03, -8.262955140335807858e-03, -8.261737944956878271e-03, -8.260234945146839244e-03, -8.258446380250422311e-03, -8.256372499378014304e-03, -8.254013561390643322e-03, -8.251369834884629897e-03, -8.248441598175939790e-03, -8.245229139284018099e-03, -8.241732755915571335e-03, -8.237952755447777026e-03, -8.233889454911364966e-03, -8.229543180973237018e-03, -8.224914269918840587e-03, -8.220003067634115354e-03, -8.214809929587301232e-03, -8.209335220810239780e-03, -8.203579315879462250e-03, -8.197542598896925478e-03, -8.191225463470360943e-03, -8.184628312693521465e-03, -8.177751559125794739e-03, -8.170595624771782167e-03, -8.163160941060438811e-03, -8.155447948823845578e-03, -8.147457098275801002e-03, -8.139188848989988012e-03, -8.130643669877930801e-03, -8.121822039166469442e-03, -8.112724444375168584e-03, -8.103351382293191851e-03, -8.093703358956044411e-03, -8.083780889621883584e-03, -8.073584498747501600e-03, -8.063114719964209476e-03, -8.052372096053216077e-03, -8.041357178920738313e-03, -8.030070529572871929e-03, -8.018512718090130970e-03, -8.006684323601673259e-03, -7.994585934259204954e-03, -7.982218147210796630e-03, -7.969581568573969044e-03, -7.956676813408933291e-03, -7.943504505691303605e-03, -7.930065278284558622e-03, -7.916359772912209478e-03, -7.902388640129695552e-03, -7.888152539295990515e-03, -7.873652138544852755e-03, -7.858888114756001214e-03, -7.843861153525638966e-03, -7.828571949137034039e-03, -7.813021204530744626e-03, -7.797209631274335147e-03, -7.781137949532133079e-03, -7.764806888034528690e-03, -7.748217184046874914e-03, -7.731369583338530346e-03, -7.714264840151144158e-03, -7.696903717166927138e-03, -7.679286985476664260e-03, -7.661415424547342139e-03, -7.643289822189525823e-03, -7.624910974524575988e-03, -7.606279685951427248e-03, -7.587396769113329172e-03, -7.568263044864044324e-03, -7.548879342233975193e-03, -7.529246498396003143e-03, -7.509365358631042014e-03, -7.489236776293269060e-03, -7.468861612775175469e-03, -7.448240737472515416e-03, -7.427375027748503097e-03, -7.406265368898326366e-03, -7.384912654113139942e-03, -7.363317784443742034e-03, -7.341481668764099182e-03, -7.319405223734733179e-03, -7.297089373765536409e-03, -7.274535050978740702e-03, -7.251743195171365779e-03, -7.228714753777398805e-03, -7.205450681830074568e-03, -7.181951941923503391e-03, -7.158219504174272163e-03, -7.134254346182732250e-03, -7.110057452994258780e-03, -7.085629817059972170e-03, -7.060972438197343423e-03, -7.036086323550706616e-03, -7.010972487551391484e-03, -6.985631951877554167e-03, -6.960065745414088616e-03, -6.934274904211936916e-03, -6.908260471447484619e-03, -6.882023497381561418e-03, -6.855565039318264886e-03, -6.828886161563469358e-03, -6.801987935383554257e-03, -6.774871438963152304e-03, -6.747537757363346149e-03, -6.719987982479443470e-03, -6.692223212998457162e-03, -6.664244554356384305e-03, -6.636053118695479057e-03, -6.607650024821048497e-03, -6.579036398158182551e-03, -6.550213370708371161e-03, -6.521182081005665217e-03, -6.491943674072945050e-03, -6.462499301377766514e-03, -6.432850120788078697e-03, -6.402997296527635461e-03, -6.372941999131759121e-03, -6.342685405401934061e-03, -6.312228698361075155e-03, -6.281573067208350361e-03, -6.250719707273597395e-03, -6.219669819971759481e-03, -6.188424612757230034e-03, -6.156985299077714219e-03, -6.125353098328261379e-03, -6.093529235804864656e-03, -6.061514942657885395e-03, -6.029311455845621538e-03, -5.996920018087273201e-03, -5.964341877815992378e-03, -5.931578289131684591e-03, -5.898630511753797517e-03, -5.865499810973720182e-03, -5.832187457606990456e-03, -5.798694727945759297e-03, -5.765022903710618346e-03, -5.731173272002380685e-03, -5.697147125254025529e-03, -5.662945761181951629e-03, -5.628570482737661751e-03, -5.594022598058855621e-03, -5.559303420420428320e-03, -5.524414268185646494e-03, -5.489356464756827564e-03, -5.454131338525939135e-03, -5.418740222825205351e-03, -5.383184455877518954e-03, -5.347465380746665130e-03, -5.311584345287254788e-03, -5.275542702094978761e-03, -5.239341808456299959e-03, -5.202983026298047507e-03, -5.166467722137317066e-03, -5.129797267030509859e-03, -5.092973036523065593e-03, -5.055996410598454643e-03, -5.018868773627240508e-03, -4.981591514316032962e-03, -4.944166025656675408e-03, -4.906593704874445162e-03, -4.868875953376990140e-03, -4.831014176702883023e-03, -4.793009784469877063e-03, -4.754864190323154077e-03, -4.716578811883732902e-03, -4.678155070696266363e-03, -4.639594392177254570e-03, -4.600898205562835817e-03, -4.562067943856446504e-03, -4.523105043776710042e-03, -4.484010945704936316e-03, -4.444787093632503183e-03, -4.405434935108289152e-03, -4.365955921186367994e-03, -4.326351506372581000e-03, -4.286623148572106697e-03, -4.246772309036463307e-03, -4.206800452310467849e-03, -4.166709046178954969e-03, -4.126499561613912979e-03, -4.086173472720864425e-03, -4.045732256685839918e-03, -4.005177393721881876e-03, -3.964510367015356557e-03, -3.923732662672737952e-03, -3.882845769666851739e-03, -3.841851179783077174e-03, -3.800750387565728083e-03, -3.759544890264346264e-03, -3.718236187779754183e-03, -3.676825782609951555e-03, -3.635315179796496775e-03, -3.593705886870298544e-03, -3.551999413797409660e-03, -3.510197272925242359e-03, -3.468300978927987832e-03, -3.426312048752790367e-03, -3.384232001565296109e-03, -3.342062358695204859e-03, -3.299804643582263802e-03, -3.257460381721701340e-03, -3.215031100609725984e-03, -3.172518329689179208e-03, -3.129923600295167908e-03, -3.087248445600417144e-03, -3.044494400560634161e-03, -3.001663001860180747e-03, -2.958755787857402994e-03, -2.915774298529815334e-03, -2.872720075419841427e-03, -2.829594661579767478e-03, -2.786399601517409834e-03, -2.743136441141296421e-03, -2.699806727705881572e-03, -2.656412009756850198e-03, -2.612953837076816607e-03, -2.569433760629941717e-03, -2.525853332507581577e-03, -2.482214105873634460e-03, -2.438517634909659858e-03, -2.394765474760032157e-03, -2.350959181477550557e-03, -2.307100311968326035e-03, -2.263190423937401670e-03, -2.219231075833899818e-03, -2.175223826796167121e-03, -2.131170236597403067e-03, -2.087071865590822348e-03, -2.042930274654848870e-03, -1.998747025138782486e-03, -1.954523678808036367e-03, -1.910261797789365073e-03, -1.865962944516660286e-03, -1.821628681675996732e-03, -1.777260572151452859e-03, -1.732860178970473770e-03, -1.688429065249311785e-03, -1.643968794138628330e-03, -1.599480928769480507e-03, -1.554967032198334691e-03, -1.510428667353100156e-03, -1.465867396978913105e-03, -1.421284783583796245e-03, -1.376682389384289301e-03, -1.332061776251691450e-03, -1.287424505657525087e-03, -1.242772138619859575e-03, -1.198106235649155568e-03, -1.153428356694151174e-03, -1.108740061088301938e-03, -1.064042907495777813e-03, -1.019338453857582651e-03, -9.746282573379494050e-04, -9.299138742707950675e-04, -8.851968601060221983e-04, -8.404787693558401834e-04, -7.957611555416282696e-04, -7.510455711403962514e-04, -7.063335675313077173e-04, -6.616266949428156524e-04, -6.169265023990716263e-04, -5.722345376672119920e-04, -5.275523472041916467e-04, -4.828814761036936878e-04, -4.382234680436028528e-04, -3.935798652330907074e-04, -3.489522083598248117e-04, -3.043420365374958285e-04, -2.597508872534213392e-04, -2.151802963160355747e-04, -1.706317978024115092e-04, -1.261069240063661466e-04, -8.160720538617621258e-05, -3.713417051239320700e-05, 7.310653983705088637e-06, 5.172574346236636760e-05, 9.610957532670665602e-05, 1.404606290744316998e-04, 1.847773863497182052e-04, 2.290583309940219601e-04, 2.733019490974734011e-04, 3.175067290506943863e-04, 3.616711615950029906e-04, 4.057937398737899428e-04, 4.498729594834496468e-04, 4.939073185237722718e-04, 5.378953176486954727e-04, 5.818354601169213993e-04, 6.257262518419496981e-04, 6.695662014424009741e-04, 7.133538202925205534e-04, 7.570876225713017325e-04, 8.007661253129485590e-04, 8.443878484566738878e-04, 8.879513148957390379e-04, 9.314550505269920738e-04, 9.748975843007780771e-04, 1.018277448269265615e-03, 1.061593177635863266e-03, 1.104843310804208426e-03, 1.148026389426561652e-03, 1.191140958452559977e-03, 1.234185566177799795e-03, 1.277158764291809988e-03, 1.320059107926288512e-03, 1.362885155703510076e-03, 1.405635469783307655e-03, 1.448308615911498599e-03, 1.490903163466976520e-03, 1.533417685509523738e-03, 1.575850758826466890e-03, 1.618200963979818689e-03, 1.660466885353755785e-03, 1.702647111200529745e-03, 1.744740233687412352e-03, 1.786744848943194654e-03, 1.828659557104074301e-03, 1.870482962359864675e-03, 1.912213673000015589e-03, 1.953850301459000589e-03, 1.995391464361956878e-03, 2.036835782570415448e-03, 2.078181881226687667e-03, 2.119428389799437977e-03, 2.160573942128611504e-03, 2.201617176469553711e-03, 2.242556735537552023e-03, 2.283391266552714863e-03, 2.324119421283227412e-03, 2.364739856089650809e-03, 2.405251231968704839e-03, 2.445652214596499840e-03, 2.485941474371975487e-03, 2.526117686460202950e-03, 2.566179530834985373e-03, 2.606125692321721588e-03, 2.645954860640292814e-03, 2.685665730446669570e-03, 2.725257001375590207e-03, 2.764727378082610602e-03, 2.804075570285303846e-03, 2.843300292805138203e-03, 2.882400265608877146e-03, 2.921374213849412156e-03, 2.960220867906847905e-03, 2.998938963429289509e-03, 3.037527241373109803e-03, 3.075984448043331525e-03, 3.114309335133829976e-03, 3.152500659766927643e-03, 3.190557184533110262e-03, 3.228477677530780174e-03, 3.266260912404953670e-03, 3.303905668386299208e-03, 3.341410730330489180e-03, 3.378774888756009946e-03, 3.415996939882809304e-03, 3.453075685670534568e-03, 3.490009933856074147e-03, 3.526798497991368454e-03, 3.563440197480956251e-03, 3.599933857618892175e-03, 3.636278309625829482e-03, 3.672472390685894202e-03, 3.708514943982909196e-03, 3.744404818736712763e-03, 3.780140870239560944e-03, 3.815721959891366262e-03, 3.851146955235381416e-03, 3.886414729994040838e-03, 3.921524164103316890e-03, 3.956474143747935185e-03, 3.991263561396040868e-03, 4.025891315833313687e-03, 4.060356312197196255e-03, 4.094657462010889426e-03, 4.128793683216757000e-03, 4.162763900209755577e-03, 4.196567043870915587e-03, 4.230202051599536023e-03, 4.263667867346368837e-03, 4.296963441646063468e-03, 4.330087731648829888e-03, 4.363039701152633329e-03, 4.395818320634907635e-03, 4.428422567283673596e-03, 4.460851425028817749e-03, 4.493103884573028568e-03, 4.525178943422227852e-03, 4.557075605915989966e-03, 4.588792883257804094e-03, 4.620329793544647803e-03, 4.651685361796645615e-03, 4.682858619986702414e-03, 4.713848607068965926e-03, 4.744654369008005634e-03, 4.775274958807516380e-03, 4.805709436538106033e-03, 4.835956869365551532e-03, 4.866016331578675892e-03, 4.895886904616514844e-03, 4.925567677095672552e-03, 4.955057744837382434e-03, 4.984356210893888840e-03, 5.013462185575010867e-03, 5.042374786474377452e-03, 5.071093138495033625e-03, 5.099616373875087531e-03, 5.127943632213308005e-03, 5.156074060493741167e-03, 5.184006813110581154e-03, 5.211741051893022635e-03, 5.239275946128976215e-03, 5.266610672589243543e-03, 5.293744415551263939e-03, 5.320676366822277292e-03, 5.347405725762565017e-03, 5.373931699308358810e-03, 5.400253501994163943e-03, 5.426370355975174489e-03, 5.452281491049349414e-03, 5.477986144678897995e-03, 5.503483562011805136e-03, 5.528772995903173670e-03, 5.553853706935773030e-03, 5.578724963440631276e-03, 5.603386041517751173e-03, 5.627836225055627556e-03, 5.652074805751183643e-03, 5.676101083129289279e-03, 5.699914364561757020e-03, 5.723513965286300062e-03, 5.746899208425205671e-03, 5.770069425003398859e-03, 5.793023953966610143e-03, 5.815762142199262276e-03, 5.838283344541454929e-03, 5.860586923806479324e-03, 5.882672250797681482e-03, 5.904538704324800713e-03, 5.926185671220367962e-03, 5.947612546355769345e-03, 5.968818732656783199e-03, 5.989803641119087647e-03, 6.010566690823426414e-03, 6.031107308950281118e-03, 6.051424930794470705e-03, 6.071518999779508888e-03, 6.091388967471352694e-03, 6.111034293592108521e-03, 6.130454446033634097e-03, 6.149648900870147324e-03, 6.168617142371372007e-03, 6.187358663014968889e-03, 6.205872963498559880e-03, 6.224159552751679439e-03, 6.242217947947528191e-03, 6.260047674514048269e-03, 6.277648266145029014e-03, 6.295019264810897824e-03, 6.312160220768997521e-03, 6.329070692573737084e-03, 6.345750247086559374e-03, 6.362198459485234048e-03, 6.378414913273239804e-03, 6.394399200288775412e-03, 6.410150920713220818e-03, 6.425669683079451681e-03, 6.440955104280241504e-03, 6.456006809575557011e-03, 6.470824432600300220e-03, 6.485407615371427750e-03, 6.499756008294696290e-03, 6.513869270171348223e-03, 6.527747068204360972e-03, 6.541389078004332044e-03, 6.554794983595226172e-03, 6.567964477419838826e-03, 6.580897260344645630e-03, 6.593593041664774952e-03, 6.606051539108486956e-03, 6.618272478841292703e-03, 6.630255595469773146e-03, 6.642000632045462309e-03, 6.653507340067833613e-03, 6.664775479487444060e-03, 6.675804818708704590e-03, 6.686595134592149964e-03, 6.697146212456646201e-03, 6.707457846081225049e-03, 6.717529837706530740e-03, 6.727361998036060324e-03, 6.736954146237270416e-03, 6.746306109941899859e-03, 6.755417725246546518e-03, 6.764288836712718453e-03, 6.772919297366427130e-03, 6.781308968697770216e-03, 6.789457720660085904e-03, 6.797365431668761157e-03, 6.805031988599864745e-03, 6.812457286788422932e-03, 6.819641230026336071e-03, 6.826583730560172904e-03, 6.833284709088562406e-03, 6.839744094759197916e-03, 6.845961825165754536e-03, 6.851937846344421414e-03, 6.857672112770065408e-03, 6.863164587352167494e-03, 6.868415241430599581e-03, 6.873424054770853157e-03, 6.878191015559132621e-03, 6.882716120397189274e-03, 6.886999374296765876e-03, 6.891040790673802659e-03, 6.894840391342384016e-03, 6.898398206508320890e-03, 6.901714274762464282e-03, 6.904788643073838349e-03, 6.907621366782335480e-03, 6.910212509591190204e-03, 6.912562143559207624e-03, 6.914670349092657056e-03, 6.916537214936804845e-03, 6.918162838167385593e-03, 6.919547324181552113e-03, 6.920690786688650162e-03, 6.921593347700764204e-03, 6.922255137522799993e-03, 6.922676294742526396e-03, 6.922856966220088983e-03, 6.922797307077469854e-03, 6.922497480687494695e-03, 6.921957658662647277e-03, 6.921178020843555233e-03, 6.920158755287243377e-03, 6.918900058255136355e-03, 6.917402134200631957e-03, 6.915665195756572070e-03, 6.913689463722363232e-03, 6.911475167050803135e-03, 6.909022542834677288e-03, 6.906331836293051231e-03, 6.903403300757206262e-03, 6.900237197656595121e-03, 6.896833796504112449e-03, 6.893193374881395608e-03, 6.889316218423775090e-03, 6.885202620804891857e-03, 6.880852883721138603e-03, 6.876267316875729792e-03, 6.871446237962625103e-03, 6.866389972650062574e-03, 6.861098854563938212e-03, 6.855573225270810041e-03, 6.849813434260680969e-03, 6.843819838929652427e-03, 6.837592804562022883e-03, 6.831132704312368152e-03, 6.824439919187302514e-03, 6.817514838026905895e-03, 6.810357857486005334e-03, 6.802969382015039250e-03, 6.795349823840840173e-03, 6.787499602947032369e-03, 6.779419147054295026e-03, 6.771108891600118897e-03, 6.762569279718645340e-03, 6.753800762220058679e-03, 6.744803797569659358e-03, 6.735578851866829558e-03, 6.726126398823781098e-03, 6.716446919743777715e-03, 6.706540903499473572e-03, 6.696408846510721810e-03, 6.686051252722231310e-03, 6.675468633581092479e-03, 6.664661508013801708e-03, 6.653630402403252868e-03, 6.642375850565436501e-03, 6.630898393725916974e-03, 6.619198580495818697e-03, 6.607276966848027455e-03, 6.595134116092807135e-03, 6.582770598853190068e-03, 6.570186993040347430e-03, 6.557383883828532024e-03, 6.544361863629765200e-03, 6.531121532068494273e-03, 6.517663495955828418e-03, 6.503988369263496126e-03, 6.490096773097868595e-03, 6.475989335673465290e-03, 6.461666692286146402e-03, 6.447129485286573307e-03, 6.432378364052904023e-03, 6.417413984963501669e-03, 6.402237011369443440e-03, 6.386848113566725993e-03, 6.371247968768246200e-03, 6.355437261075630104e-03, 6.339416681450814675e-03, 6.323186927687332072e-03, 6.306748704381460319e-03, 6.290102722903216127e-03, 6.273249701366842915e-03, 6.256190364601539947e-03, 6.238925444121603409e-03, 6.221455678096378394e-03, 6.203781811320301098e-03, 6.185904595182402377e-03, 6.167824787635738451e-03, 6.149543153166621250e-03, 6.131060462763654462e-03, 6.112377493886431319e-03, 6.093495030434251461e-03, 6.074413862714446617e-03, 6.055134787410531086e-03, 6.035658607550299301e-03, 6.015986132473565180e-03, 5.996118177799611773e-03, 5.976055565394830862e-03, 5.955799123339871638e-03, 5.935349685896335742e-03, 5.914708093474063851e-03, 5.893875192597413520e-03, 5.872851835871784228e-03, 5.851638881949887405e-03, 5.830237195497769281e-03, 5.808647647160703614e-03, 5.786871113528757431e-03, 5.764908477102479931e-03, 5.742760626258068372e-03, 5.720428455212475845e-03, 5.697912863988505161e-03, 5.675214758379520247e-03, 5.652335049913827063e-03, 5.629274655819525505e-03, 5.606034498988434964e-03, 5.582615507940102278e-03, 5.559018616786007456e-03, 5.535244765193075497e-03, 5.511294898347202965e-03, 5.487169966916853082e-03, 5.462870927016082699e-03, 5.438398740167652533e-03, 5.413754373265985617e-03, 5.388938798539878554e-03, 5.363952993514991587e-03, 5.338797940976386380e-03, 5.313474628930733336e-03, 5.287984050568284716e-03, 5.262327204225020379e-03, 5.236505093344458704e-03, 5.210518726438943642e-03, 5.184369117051558853e-03, 5.158057283717254297e-03, 5.131584249923997962e-03, 5.104951044073938009e-03, 5.078158699444293434e-03, 5.051208254147947219e-03, 5.024100751094270206e-03, 4.996837237949561597e-03, 4.969418767097050563e-03, 4.941846395597707976e-03, 4.914121185149825620e-03, 4.886244202048923256e-03, 4.858216517147876876e-03, 4.830039205816460610e-03, 4.801713347900548635e-03, 4.773240027681999696e-03, 4.744620333837661248e-03, 4.715855359398496774e-03, 4.686946201708766004e-03, 4.657893962384831305e-03, 4.628699747273872997e-03, 4.599364666412680998e-03, 4.569889833986226155e-03, 4.540276368285730245e-03, 4.510525391667553896e-03, 4.480638030510998571e-03, 4.450615415176297635e-03, 4.420458679962983861e-03, 4.390168963067502331e-03, 4.359747406540913535e-03, 4.329195156246743934e-03, 4.298513361818440993e-03, 4.267703176616687716e-03, 4.236765757686999923e-03, 4.205702265716817004e-03, 4.174513864992584859e-03, 4.143201723356988025e-03, 4.111767012165847002e-03, 4.080210906244747561e-03, 4.048534583846148845e-03, 4.016739226606062980e-03, 3.984826019500159640e-03, 3.952796150800858520e-03, 3.920650812033510228e-03, 3.888391197932561990e-03, 3.856018506398098053e-03, 3.823533938451900444e-03, 3.790938698193385692e-03, 3.758233992755888059e-03, 3.725421032262469633e-03, 3.692501029781640638e-03, 3.659475201283434505e-03, 3.626344765595013262e-03, 3.593110944356045673e-03, 3.559774961974752384e-03, 3.526338045583284498e-03, 3.492801424992763443e-03, 3.459166332649254126e-03, 3.425434003588802637e-03, 3.391605675392603183e-03, 3.357682588142465140e-03, 3.323665984375805214e-03, 3.289557109040659125e-03, 3.255357209450969978e-03, 3.221067535241439045e-03, 3.186689338322209585e-03, 3.152223872834365986e-03, 3.117672395104289281e-03, 3.083036163598390413e-03, 3.048316438878282807e-03, 3.013514483555253254e-03, 2.978631562244791336e-03, 2.943668941521508740e-03, 2.908627889873591481e-03, 2.873509677657236534e-03, 2.838315577051415874e-03, 2.803046862012236774e-03, 2.767704808227306433e-03, 2.732290693070368523e-03, 2.696805795555646135e-03, 2.661251396291865103e-03, 2.625628777437285198e-03, 2.589939222653528730e-03, 2.554184017059778645e-03, 2.518364447187545607e-03, 2.482481800934628873e-03, 2.446537367519292707e-03, 2.410532437434731619e-03, 2.374468302403188666e-03, 2.338346255330031251e-03, 2.302167590258195982e-03, 2.265933602322244955e-03, 2.229645587702456296e-03, 2.193304843579210479e-03, 2.156912668087114255e-03, 2.120470360268848775e-03, 2.083979220029832588e-03, 2.047440548092295705e-03, 2.010855645948924318e-03, 1.974225815817752788e-03, 1.937552360595998311e-03, 1.900836583814144746e-03, 1.864079789590423900e-03, 1.827283282584888074e-03, 1.790448367953500174e-03, 1.753576351302636900e-03, 1.716668538643245211e-03, 1.679726236344770019e-03, 1.642750751090128790e-03, 1.605743389829516077e-03, 1.568705459734606169e-03, 1.531638268153382625e-03, 1.494543122564397954e-03, 1.457421330530673988e-03, 1.420274199654805941e-03, 1.383103037533093931e-03, 1.345909151709942953e-03, 1.308693849632633225e-03, 1.271458438605769592e-03, 1.234204225745722493e-03, 1.196932517935541621e-03, 1.159644621779514851e-03, 1.122341843557540884e-03, 1.085025489180590878e-03, 1.047696864144956634e-03, 1.010357273487016375e-03, 9.730080217386040051e-04, 9.356504128816294950e-04, 8.982857503029848586e-04, 8.609153367498366405e-04, 8.235404742845856647e-04, 7.861624642398756801e-04, 7.487826071740569375e-04, 7.114022028263114949e-04, 6.740225500718343603e-04, 6.366449468774720583e-04, 5.992706902570754017e-04, 5.619010762266812842e-04, 5.245373997605741944e-04, 4.871809547468279643e-04, 4.498330339424663651e-04, 4.124949289299474067e-04, 3.751679300726488693e-04, 3.378533264706862519e-04, 3.005524059171712321e-04, 2.632664548541371126e-04, 2.259967583285409760e-04, 1.887445999487515882e-04, 1.515112618407108498e-04, 1.142980246041755041e-04, 7.710616726944776725e-05, 3.993696725382956747e-05, 2.791700317938687076e-06, -3.432835947708023786e-05, -7.142193981283992941e-05, -1.084877701573526122e-04, -1.455245818073255273e-04, -1.825311079314393032e-04, -2.195060836132626983e-04, -2.564482458937150525e-04, -2.933563338138312740e-04, -3.302290884574314556e-04, -3.670652529932863376e-04, -4.038635727175385608e-04, -4.406227950962912122e-04, -4.773416698070177345e-04, -5.140189487811164812e-04, -5.506533862459150408e-04, -5.872437387659844646e-04, -6.237887652851423432e-04, -6.602872271681299718e-04, -6.967378882418101896e-04, -7.331395148366647843e-04, -7.694908758281665626e-04, -8.057907426776331726e-04, -8.420378894733750695e-04, -8.782310929717124020e-04, -9.143691326374758181e-04, -9.504507906847409161e-04, -9.864748521176999567e-04, -1.022440104770359166e-03, -1.058345339347336938e-03, -1.094189349464083291e-03, -1.129970931686433621e-03, -1.165688885570777744e-03, -1.201342013703910611e-03, -1.236929121742405546e-03, -1.272449018452201722e-03, -1.307900515748111831e-03, -1.343282428732765982e-03, -1.378593575735820786e-03, -1.413832778353032917e-03, -1.448998861484787756e-03, -1.484090653374855280e-03, -1.519106985649195177e-03, -1.554046693353863806e-03, -1.588908614993314291e-03, -1.623691592568998667e-03, -1.658394471616608931e-03, -1.693016101244206473e-03, -1.727555334169925648e-03, -1.762011026759215462e-03, -1.796382039062291176e-03, -1.830667234851415890e-03, -1.864865481657696205e-03, -1.898975650808049824e-03, -1.932996617462059107e-03, -1.966927260648223749e-03, -2.000766463300492765e-03, -2.034513112294727716e-03, -2.068166098484336760e-03, -2.101724316736266682e-03, -2.135186665967208318e-03, -2.168552049178547325e-03, -2.201819373492050046e-03, -2.234987550185233221e-03, -2.268055494726151262e-03, -2.301022126808427697e-03, -2.333886370386117903e-03, -2.366647153708011098e-03, -2.399303409352086715e-03, -2.431854074260057091e-03, -2.464298089770759585e-03, -2.496634401654481122e-03, -2.528861960146735859e-03, -2.560979719981296490e-03, -2.592986640423843546e-03, -2.624881685305131569e-03, -2.656663823053748933e-03, -2.688332026728997796e-03, -2.719885274053602739e-03, -2.751322547445894662e-03, -2.782642834052133449e-03, -2.813845125778674950e-03, -2.844928419323599321e-03, -2.875891716208407896e-03, -2.906734022809816763e-03, -2.937454350390457467e-03, -2.968051715130382625e-03, -2.998525138158034207e-03, -3.028873645580577780e-03, -3.059096268514592369e-03, -3.089192043116541740e-03, -3.119160010612622488e-03, -3.148999217328782557e-03, -3.178708714720588410e-03, -3.208287559402498920e-03, -3.237734813177313604e-03, -3.267049543065380160e-03, -3.296230821333318017e-03, -3.325277725522801740e-03, -3.354189338479314931e-03, -3.382964748380078417e-03, -3.411603048762216952e-03, -3.440103338551093754e-03, -3.468464722087412095e-03, -3.496686309155019445e-03, -3.524767215008211586e-03, -3.552706560398617795e-03, -3.580503471602136754e-03, -3.608157080445719388e-03, -3.635666524333564052e-03, -3.663030946273410169e-03, -3.690249494902831870e-03, -3.717321324514494697e-03, -3.744245595082114440e-03, -3.771021472285898159e-03, -3.797648127537381953e-03, -3.824124738004386695e-03, -3.850450486636161976e-03, -3.876624562187337870e-03, -3.902646159242463032e-03, -3.928514478240129927e-03, -3.954228725496631257e-03, -3.979788113229631996e-03, -4.005191859581700049e-03, -4.030439188643260111e-03, -4.055529330475606507e-03, -4.080461521133898692e-03, -4.105235002689133252e-03, -4.129849023250808937e-03, -4.154302836989020968e-03, -4.178595704155966400e-03, -4.202726891107741794e-03, -4.226695670325770517e-03, -4.250501320437746929e-03, -4.274143126238696792e-03, -4.297620378711653442e-03, -4.320932375048024306e-03, -4.344078418667846400e-03, -4.367057819239882240e-03, -4.389869892701200524e-03, -4.412513961276767240e-03, -4.434989353498958696e-03, -4.457295404226265315e-03, -4.479431454662189706e-03, -4.501396852374239289e-03, -4.523190951311749711e-03, -4.544813111824354442e-03, -4.566262700679619979e-03, -4.587539091081086970e-03, -4.608641662685280908e-03, -4.629569801619067178e-03, -4.650322900496665218e-03, -4.670900358436223809e-03, -4.691301581076315688e-03, -4.711525980592279512e-03, -4.731572975712047477e-03, -4.751441991731960787e-03, -4.771132460532455898e-03, -4.790643820592951040e-03, -4.809975517007172505e-03, -4.829127001498005611e-03, -4.848097732431760204e-03, -4.866887174832646053e-03, -4.885494800396903044e-03, -4.903920087506456922e-03, -4.922162521242615801e-03, -4.940221593399417993e-03, -4.958096802496630290e-03, -4.975787653792668186e-03, -4.993293659297261093e-03, -5.010614337783663927e-03, -5.027749214800854814e-03, -5.044697822685554126e-03, -5.061459700573622475e-03, -5.078034394411443976e-03, -5.094421456967394499e-03, -5.110620447842356695e-03, -5.126630933480539470e-03, -5.142452487179944437e-03, -5.158084689102357054e-03, -5.173527126283364655e-03, -5.188779392642089115e-03, -5.203841088990434662e-03, -5.218711823042343489e-03, -5.233391209422821530e-03, -5.247878869676429921e-03, -5.262174432275815508e-03, -5.276277532629995888e-03, -5.290187813092073719e-03, -5.303904922967010022e-03, -5.317428518519276039e-03, -5.330758262979719275e-03, -5.343893826552669792e-03, -5.356834886422721237e-03, -5.369581126761001875e-03, -5.382132238731496786e-03, -5.394487920496994493e-03, -5.406647877224744769e-03, -5.418611821091919543e-03, -5.430379471290961921e-03, -5.441950554034281212e-03, -5.453324802559210774e-03, -5.464501957132409000e-03, -5.475481765054007917e-03, -5.486263980661622124e-03, -5.496848365334134831e-03, -5.507234687495087509e-03, -5.517422722615908208e-03, -5.527412253218988089e-03, -5.537203068880280910e-03, -5.546794966231876484e-03, -5.556187748964224599e-03, -5.565381227828090915e-03, -5.574375220636283886e-03, -5.583169552265267177e-03, -5.591764054656234335e-03, -5.600158566816201659e-03, -5.608352934818810510e-03, -5.616347011804708085e-03, -5.624140657981880481e-03, -5.631733740625694332e-03, -5.639126134078593228e-03, -5.646317719749614598e-03, -5.653308386113765210e-03, -5.660098028710944772e-03, -5.666686550144724686e-03, -5.673073860081010583e-03, -5.679259875246167946e-03, -5.685244519425159022e-03, -5.691027723459396968e-03, -5.696609425244184531e-03, -5.701989569726047778e-03, -5.707168108899937121e-03, -5.712145001805884505e-03, -5.716920214525669265e-03, -5.721493720179172612e-03, -5.725865498920420724e-03, -5.730035537933482991e-03, -5.734003831428073628e-03, -5.737770380634884398e-03, -5.741335193800762952e-03, -5.744698286183617074e-03, -5.747859680046954640e-03, -5.750819404654401029e-03, -5.753577496263847027e-03, -5.756133998121295767e-03, -5.758488960454629865e-03, -5.760642440467061108e-03, -5.762594502330276557e-03, -5.764345217177457154e-03, -5.765894663096021375e-03, -5.767242925120047957e-03, -5.768390095222626635e-03, -5.769336272307825503e-03, -5.770081562202492714e-03, -5.770626077647791896e-03, -5.770969938290536339e-03, -5.771113270674273384e-03, -5.771056208230092993e-03, -5.770798891267278456e-03, -5.770341466963654388e-03, -5.769684089355788144e-03, -5.768826919328847759e-03, -5.767770124606282946e-03, -5.766513879739304863e-03, -5.765058366096107410e-03, -5.763403771850841330e-03, -5.761550291972360183e-03, -5.759498128212799800e-03, -5.757247489095821194e-03, -5.754798589904737242e-03, -5.752151652670304573e-03, -5.749306906158418301e-03, -5.746264585857417326e-03, -5.743024933965339314e-03, -5.739588199376801855e-03, -5.735954637669731827e-03, -5.732124511091887462e-03, -5.728098088547114129e-03, -5.723875645581376348e-03, -5.719457464368605908e-03, -5.714843833696320145e-03, -5.710035048950971338e-03, -5.705031412103126094e-03, -5.699833231692421828e-03, -5.694440822812321147e-03, -5.688854507094511480e-03, -5.683074612693328996e-03, -5.677101474269804354e-03, -5.670935432975417884e-03, -5.664576836435869511e-03, -5.658026038734486132e-03, -5.651283400395358363e-03, -5.644349288366428720e-03, -5.637224076002280565e-03, -5.629908143046623466e-03, -5.622401875614797644e-03, -5.614705666175856882e-03, -5.606819913534460617e-03, -5.598745022812777299e-03, -5.590481405431858668e-03, -5.582029479093036581e-03, -5.573389667759065698e-03, -5.564562401635037188e-03, -5.555548117148957632e-03, -5.546347256932469307e-03, -5.536960269801018825e-03, -5.527387610733961593e-03, -5.517629740854538764e-03, -5.507687127409508984e-03, -5.497560243748650897e-03, -5.487249569304123407e-03, -5.476755589569555320e-03, -5.466078796078850492e-03, -5.455219686385071043e-03, -5.444178764038858261e-03, -5.432956538566696518e-03, -5.421553525449183258e-03, -5.409970246098881781e-03, -5.398207227838059535e-03, -5.386265003876284166e-03, -5.374144113287762821e-03, -5.361845100988515793e-03, -5.349368517713386229e-03, -5.336714919992844273e-03, -5.323884870129526672e-03, -5.310878936174783307e-03, -5.297697691904897609e-03, -5.284341716797013797e-03, -5.270811596005200300e-03, -5.257107920336114189e-03, -5.243231286224355955e-03, -5.229182295708024661e-03, -5.214961556403790825e-03, -5.200569681481813193e-03, -5.186007289640676317e-03, -5.171275005081935223e-03, -5.156373457484576817e-03, -5.141303281979350305e-03, -5.126065119122860843e-03, -5.110659614871465410e-03, -5.095087420555121857e-03, -5.079349192850967330e-03, -5.063445593756649502e-03, -5.047377290563756676e-03, -5.031144955830874933e-03, -5.014749267356379860e-03, -4.998190908151411288e-03, -4.981470566412372729e-03, -4.964588935493342327e-03, -4.947546713878460400e-03, -4.930344605154042027e-03, -4.912983317980409471e-03, -4.895463566063884206e-03, -4.877786068128373009e-03, -4.859951547886717273e-03, -4.841960734012339812e-03, -4.823814360110226414e-03, -4.805513164687893503e-03, -4.787057891126509333e-03, -4.768449287651493028e-03, -4.749688107303068514e-03, -4.730775107906834941e-03, -4.711711052043954587e-03, -4.692496707021306945e-03, -4.673132844841568212e-03, -4.653620242173053985e-03, -4.633959680319325175e-03, -4.614151945188955245e-03, -4.594197827264898462e-03, -4.574098121573604014e-03, -4.553853627654556868e-03, -4.533465149529050144e-03, -4.512933495668993052e-03, -4.492259478965969499e-03, -4.471443916699681734e-03, -4.450487630506389652e-03, -4.429391446347472408e-03, -4.408156194477506028e-03, -4.386782709412401747e-03, -4.365271829897467148e-03, -4.343624398875207092e-03, -4.321841263453010153e-03, -4.299923274870868888e-03, -4.277871288468871117e-03, -4.255686163654327780e-03, -4.233368763869363970e-03, -4.210919956557983464e-03, -4.188340613132744694e-03, -4.165631608942124524e-03, -4.142793823237044155e-03, -4.119828139137546828e-03, -4.096735443599462505e-03, -4.073516627380817552e-03, -4.050172585008088300e-03, -4.026704214742578627e-03, -4.003112418546494848e-03, -3.979398102048788133e-03, -3.955562174511448835e-03, -3.931605548795043606e-03, -3.907529141324321900e-03, -3.883333872054159450e-03, -3.859020664434970483e-03, -3.834590445377801179e-03, -3.810044145220108352e-03, -3.785382697690729305e-03, -3.760607039874977464e-03, -3.735718112179840789e-03, -3.710716858298840175e-03, -3.685604225176778142e-03, -3.660381162974708259e-03, -3.635048625034529874e-03, -3.609607567843351687e-03, -3.584058950998464648e-03, -3.558403737171414102e-03, -3.532642892072276625e-03, -3.506777384414233069e-03, -3.480808185877566976e-03, -3.454736271073653459e-03, -3.428562617509220856e-03, -3.402288205550159199e-03, -3.375914018385334312e-03, -3.349441041990512940e-03, -3.322870265092074931e-03, -3.296202679130518995e-03, -3.269439278224235603e-03, -3.242581059132984556e-03, -3.215629021221136623e-03, -3.188584166421351042e-03, -3.161447499197880904e-03, -3.134220026509443140e-03, -3.106902757772898611e-03, -3.079496704826179768e-03, -3.052002881891233491e-03, -3.024422305537325609e-03, -2.996755994643815913e-03, -2.969004970363028125e-03, -2.941170256083290319e-03, -2.913252877391622753e-03, -2.885253862036404882e-03, -2.857174239890283938e-03, -2.829015042912739596e-03, -2.800777305112483843e-03, -2.772462062510372156e-03, -2.744070353101861481e-03, -2.715603216819092655e-03, -2.687061695493841041e-03, -2.658446832819667035e-03, -2.629759674314175420e-03, -2.601001267281559653e-03, -2.572172660774762337e-03, -2.543274905557640474e-03, -2.514309054067365330e-03, -2.485276160376539544e-03, -2.456177280155086122e-03, -2.427013470632891599e-03, -2.397785790561519827e-03, -2.368495300176185099e-03, -2.339143061158176738e-03, -2.309730136596644876e-03, -2.280257590950501585e-03, -2.250726490010642941e-03, -2.221137900861748678e-03, -2.191492891844142987e-03, -2.161792532515914664e-03, -2.132037893614715900e-03, -2.102230047019522895e-03, -2.072370065712753843e-03, -2.042459023742025648e-03, -2.012497996181746279e-03, -1.982488059095505531e-03, -1.952430289497423654e-03, -1.922325765314248942e-03, -1.892175565346879834e-03, -1.861980769232540137e-03, -1.831742457406565234e-03, -1.801461711063749626e-03, -1.771139612120748537e-03, -1.740777243177608685e-03, -1.710375687479514378e-03, -1.679936028878809429e-03, -1.649459351796739130e-03, -1.618946741185152329e-03, -1.588399282488579724e-03, -1.557818061606006631e-03, -1.527204164852439747e-03, -1.496558678921360800e-03, -1.465882690846186413e-03, -1.435177287962096163e-03, -1.404443557868347014e-03, -1.373682588389944824e-03, -1.342895467539549376e-03, -1.312083283479644836e-03, -1.281247124484429173e-03, -1.250388078901738288e-03, -1.219507235115286064e-03, -1.188605681506627954e-03, -1.157684506417155576e-03, -1.126744798110420470e-03, -1.095787644734223234e-03, -1.064814134282495578e-03, -1.033825354558100479e-03, -1.002822393134637259e-03, -9.718063373186457523e-04, -9.407782741123305688e-04, -9.097392901756490378e-04, -8.786904717886333390e-04, -8.476329048140350758e-04, -8.165676746596979303e-04, -7.854958662409396424e-04, -7.544185639433437099e-04, -7.233368515852502210e-04, -6.922518123802773706e-04, -6.611645289002518293e-04, -6.300760830378660015e-04, -5.989875559692127687e-04, -5.679000281170404688e-04, -5.368145791135660620e-04, -5.057322877629800593e-04, -4.746542320050438379e-04, -4.435814888778529344e-04, -4.125151344808724186e-04, -3.814562439383414926e-04, -3.504058913623886071e-04, -3.193651498162206298e-04, -2.883350912777005908e-04, -2.573167866026539988e-04, -2.263113054882466601e-04, -1.953197164367568488e-04, -1.643430867191181418e-04, -1.333824823383446983e-04, -1.024389679936998015e-04, -7.151360704444580248e-05, -4.060746147329469621e-05, -9.721591850978506961e-06, 2.114294270000422832e-05, 5.198508454134074977e-05, 8.280377755448202319e-05, 1.135979671764772024e-04, 1.443666004357311303e-04, 1.751086259873432241e-04, 2.058229941486652544e-04, 2.365086569349976583e-04, 2.671645680943107617e-04, 2.977896831429220235e-04, 3.283829594007117085e-04, 3.589433560257759403e-04, 3.894698340496509392e-04, 4.199613564122667785e-04, 4.504168879965114790e-04, 4.808353956630409456e-04, 5.112158482849898629e-04, 5.415572167822562278e-04, 5.718584741560284179e-04, 6.021185955232084483e-04, 6.323365581504117924e-04, 6.625113414881567218e-04, 6.926419272051804977e-04, 7.227272992217690468e-04, 7.527664437440139550e-04, 7.827583492975939304e-04, 8.127020067609840243e-04, 8.425964093992186627e-04, 8.724405528973475229e-04, 9.022334353935168192e-04, 9.319740575122574533e-04, 9.616614223976476146e-04, 9.912945357460789964e-04, 1.020872405839189220e-03, 1.050394043576713919e-03, 1.079858462508892026e-03, 1.109264678869032166e-03, 1.138611711606159508e-03, 1.167898582416887618e-03, 1.197124315777641380e-03, 1.226287938977123869e-03, 1.255388482147646321e-03, 1.284424978297214444e-03, 1.313396463341261720e-03, 1.342301976133983494e-03, 1.371140558499856681e-03, 1.399911255265045423e-03, 1.428613114288360044e-03, 1.457245186492357606e-03, 1.485806525894543947e-03, 1.514296189637582809e-03, 1.542713238020385329e-03, 1.571056734528679779e-03, 1.599325745865064338e-03, 1.627519341979322695e-03, 1.655636596098959516e-03, 1.683676584758636531e-03, 1.711638387830293406e-03, 1.739521088552928828e-03, 1.767323773561953974e-03, 1.795045532918754802e-03, 1.822685460140049864e-03, 1.850242652226873844e-03, 1.877716209693638732e-03, 1.905105236597268506e-03, 1.932408840565385134e-03, 1.959626132825301008e-03, 1.986756228232504189e-03, 2.013798245298583332e-03, 2.040751306219602563e-03, 2.067614536904160191e-03, 2.094387067001018086e-03, 2.121068029926911468e-03, 2.147656562894180009e-03, 2.174151806937958762e-03, 2.200552906943514797e-03, 2.226859011673432923e-03, 2.253069273794340837e-03, 2.279182849903754401e-03, 2.305198900556928998e-03, 2.331116590292945431e-03, 2.356935087661107646e-03, 2.382653565247446273e-03, 2.408271199700206047e-03, 2.433787171755937354e-03, 2.459200666265206562e-03, 2.484510872217927761e-03, 2.509716982768781229e-03, 2.534818195262510468e-03, 2.559813711258733526e-03, 2.584702736556887884e-03, 2.609484481221010978e-03, 2.634158159604097892e-03, 2.658722990372467711e-03, 2.683178196530202741e-03, 2.707523005442828787e-03, 2.731756648861188418e-03, 2.755878362945540609e-03, 2.779887388288521111e-03, 2.803782969938773285e-03, 2.827564357424144394e-03, 2.851230804774506321e-03, 2.874781570544672135e-03, 2.898215917837115331e-03, 2.921533114324276637e-03, 2.944732432270912893e-03, 2.967813148556457201e-03, 2.990774544696485262e-03, 3.013615906864853481e-03, 3.036336525915313191e-03, 3.058935697402620935e-03, 3.081412721603982684e-03, 3.103766903540138098e-03, 3.125997552996097415e-03, 3.148103984541865321e-03, 3.170085517553074619e-03, 3.191941476231148055e-03, 3.213671189623497435e-03, 3.235273991643583535e-03, 3.256749221090551871e-03, 3.278096221668838108e-03, 3.299314342007806430e-03, 3.320402935680577799e-03, 3.341361361223338291e-03, 3.362188982154282711e-03, 3.382885166991949754e-03, 3.403449289273917117e-03, 3.423880727575133193e-03, 3.444178865525837196e-03, 3.464343091829586406e-03, 3.484372800281016272e-03, 3.504267389783244022e-03, 3.524026264365286154e-03, 3.543648833199253018e-03, 3.563134510617204688e-03, 3.582482716127922268e-03, 3.601692874433685704e-03, 3.620764415446356844e-03, 3.639696774303642895e-03, 3.658489391385378979e-03, 3.677141712328920765e-03, 3.695653188044961245e-03, 3.714023274732975843e-03, 3.732251433896327086e-03, 3.750337132357291214e-03, 3.768279842272032314e-03, 3.786079041145031313e-03, 3.803734211843578725e-03, 3.821244842612192810e-03, 3.838610427086299598e-03, 3.855830464306348338e-03, 3.872904458731434279e-03, 3.889831920252616142e-03, 3.906612364206113464e-03, 3.923245311386667870e-03, 3.939730288060007066e-03, 3.956066825975685687e-03, 3.972254462379548427e-03, 3.988292740025841873e-03, 4.004181207189359305e-03, 4.019919417677315747e-03, 4.035506930840823160e-03, 4.050943311586462786e-03, 4.066228130387594675e-03, 4.081360963295126848e-03, 4.096341391948555080e-03, 4.111169003586640988e-03, 4.125843391057633890e-03, 4.140364152829604551e-03, 4.154730893000543879e-03, 4.168943221308011454e-03, 4.183000753138837839e-03, 4.196903109538612647e-03, 4.210649917220717249e-03, 4.224240808575441611e-03, 4.237675421678794088e-03, 4.250953400301008510e-03, 4.264074393914951515e-03, 4.277038057704423205e-03, 4.289844052571995490e-03, 4.302492045146744624e-03, 4.314981707792066995e-03, 4.327312718612767208e-03, 4.339484761462323106e-03, 4.351497525949929619e-03, 4.363350707447043869e-03, 4.375044007094105493e-03, 4.386577131806783381e-03, 4.397949794282120933e-03, 4.409161713004424582e-03, 4.420212612251062968e-03, 4.431102222097900098e-03, 4.441830278424586248e-03, 4.452396522919782954e-03, 4.462800703085907476e-03, 4.473042572243796609e-03, 4.483121889537429461e-03, 4.493038419937902574e-03, 4.502791934247656579e-03, 4.512382209104331618e-03, 4.521809026984370365e-03, 4.531072176206488340e-03, 4.540171450934924781e-03, 4.549106651182468868e-03, 4.557877582813230077e-03, 4.566484057545462313e-03, 4.574925892953676798e-03, 4.583202912471058543e-03, 4.591314945391482098e-03, 4.599261826871218518e-03, 4.607043397930500953e-03, 4.614659505455063343e-03, 4.622110002197181260e-03, 4.629394746776697989e-03, 4.636513603681825975e-03, 4.643466443269638616e-03, 4.650253141766504811e-03, 4.656873581268203451e-03, 4.663327649739880919e-03, 4.669615241015780474e-03, 4.675736254798893571e-03, 4.681690596660054333e-03, 4.687478178037338475e-03, 4.693098916234863735e-03, 4.698552734421495777e-03, 4.703839561629405766e-03, 4.708959332752409369e-03, 4.713911988544038610e-03, 4.718697475615455869e-03, 4.723315746433216084e-03, 4.727766759316703697e-03, 4.732050478435455114e-03, 4.736166873806320690e-03, 4.740115921290258966e-03, 4.743897602589097068e-03, 4.747511905242071673e-03, 4.750958822622026491e-03, 4.754238353931534294e-03, 4.757350504198843734e-03, 4.760295284273534724e-03, 4.763072710821988215e-03, 4.765682806322732792e-03, 4.768125599061496384e-03, 4.770401123126112239e-03, 4.772509418401224557e-03, 4.774450530562803288e-03, 4.776224511072367507e-03, 4.777831417171191433e-03, 4.779271311874143564e-03, 4.780544263963396566e-03, 4.781650347981974969e-03, 4.782589644227001890e-03, 4.783362238742911929e-03, 4.783968223314291092e-03, 4.784407695458635194e-03, 4.784680758418889679e-03, 4.784787521155786476e-03, 4.784728098339967491e-03, 4.784502610343958039e-03, 4.784111183233913898e-03, 4.783553948761199229e-03, 4.782831044353722492e-03, 4.781942613107168297e-03, 4.780888803775931728e-03, 4.779669770763955543e-03, 4.778285674115347915e-03, 4.776736679504747785e-03, 4.775022958227586982e-03, 4.773144687190138125e-03, 4.771102048899315308e-03, 4.768895231452421890e-03, 4.766524428526530514e-03, 4.763989839367813693e-03, 4.761291668780665357e-03, 4.758430127116572601e-03, 4.755405430262867744e-03, 4.752217799631248789e-03, 4.748867462146190606e-03, 4.745354650233048199e-03, 4.741679601806093186e-03, 4.737842560256323027e-03, 4.733843774439056018e-03, 4.729683498661394446e-03, 4.725361992669504727e-03, 4.720879521635661623e-03, 4.716236356145177104e-03, 4.711432772183105425e-03, 4.706469051120798150e-03, 4.701345479702258821e-03, 4.696062350030363181e-03, 4.690619959552788827e-03, 4.685018611047945744e-03, 4.679258612610599777e-03, 4.673340277637261925e-03, 4.667263924811666104e-03, 4.661029878089801952e-03, 4.654638466684837481e-03, 4.648090025051992286e-03, 4.641384892873112386e-03, 4.634523415041101081e-03, 4.627505941644230111e-03, 4.620332827950229641e-03, 4.613004434390162271e-03, 4.605521126542302252e-03, 4.597883275115636527e-03, 4.590091255933311139e-03, 4.582145449915960532e-03, 4.574046243064703796e-03, 4.565794026444139168e-03, 4.557389196165105225e-03, 4.548832153367305883e-03, 4.540123304201661332e-03, 4.531263059812683236e-03, 4.522251836320559382e-03, 4.513090054803079593e-03, 4.503778141277483583e-03, 4.494316526682071156e-03, 4.484705646857625912e-03, 4.474945942528844173e-03, 4.465037859285438636e-03, 4.454981847563084171e-03, 4.444778362624400916e-03, 4.434427864539561802e-03, 4.423930818166788188e-03, 4.413287693132868922e-03, 4.402498963813366271e-03, 4.391565109312529566e-03, 4.380486613443475979e-03, 4.369263964707845692e-03, 4.357897656275384196e-03, 4.346388185963572307e-03, 4.334736056216855447e-03, 4.322941774085857329e-03, 4.311005851206450509e-03, 4.298928803778674299e-03, 4.286711152545371641e-03, 4.274353422770974312e-03, 4.261856144219899542e-03, 4.249219851134773164e-03, 4.236445082214794142e-03, 4.223532380593727868e-03, 4.210482293817702573e-03, 4.197295373823123690e-03, 4.183972176914277710e-03, 4.170513263740736540e-03, 4.156919199274843393e-03, 4.143190552788877760e-03, 4.129327897832121494e-03, 4.115331812207879796e-03, 4.101202877950318321e-03, 4.086941681300994104e-03, 4.072548812685718687e-03, 4.058024866690759444e-03, 4.043370442039175353e-03, 4.028586141567082508e-03, 4.013672572199714940e-03, 3.998630344927217410e-03, 3.983460074780616894e-03, 3.968162380807431500e-03, 3.952737886047156222e-03, 3.937187217506841509e-03, 3.921511006136331814e-03, 3.905709886803421325e-03, 3.889784498269030499e-03, 3.873735483162124571e-03, 3.857563487954449033e-03, 3.841269162935409976e-03, 3.824853162186731513e-03, 3.808316143556624445e-03, 3.791658768634564251e-03, 3.774881702725334850e-03, 3.757985614823200309e-03, 3.740971177586059192e-03, 3.723839067309297080e-03, 3.706589963899609153e-03, 3.689224550848805868e-03, 3.671743515207359729e-03, 3.654147547557918662e-03, 3.636437341988761271e-03, 3.618613596067114194e-03, 3.600677010812189296e-03, 3.582628290668520964e-03, 3.564468143478903995e-03, 3.546197280457082969e-03, 3.527816416160854066e-03, 3.509326268464615234e-03, 3.490727558531959724e-03, 3.472021010788268764e-03, 3.453207352893112106e-03, 3.434287315712483343e-03, 3.415261633291183548e-03, 3.396131042824906097e-03, 3.376896284632138930e-03, 3.357558102126441055e-03, 3.338117241788100212e-03, 3.318574453135853409e-03, 3.298930488698833836e-03, 3.279186103988065894e-03, 3.259342057467902540e-03, 3.239399110527660820e-03, 3.219358027452897016e-03, 3.199219575396654910e-03, 3.178984524350792536e-03, 3.158653647117045261e-03, 3.138227719278043320e-03, 3.117707519168386610e-03, 3.097093827845529956e-03, 3.076387429060422479e-03, 3.055589109228624457e-03, 3.034699657400736789e-03, 3.013719865232946261e-03, 2.992650526957824943e-03, 2.971492439354675094e-03, 2.950246401719819854e-03, 2.928913215837176693e-03, 2.907493685948391113e-03, 2.885988618722985528e-03, 2.864398823228692017e-03, 2.842725110901413860e-03, 2.820968295515210045e-03, 2.799129193152381703e-03, 2.777208622173344722e-03, 2.755207403186302022e-03, 2.733126359017294411e-03, 2.710966314679887166e-03, 2.688728097344569943e-03, 2.666412536308747794e-03, 2.644020462966144118e-03, 2.621552710776254777e-03, 2.599010115233981767e-03, 2.576393513838965907e-03, 2.553703746064897410e-03, 2.530941653328996465e-03, 2.508108078961208878e-03, 2.485203868173368330e-03, 2.462229868028545116e-03, 2.439186927410158957e-03, 2.416075896990872805e-03, 2.392897629201985385e-03, 2.369652978202388318e-03, 2.346342799847234845e-03, 2.322967951657346677e-03, 2.299529292787887494e-03, 2.276027683997213814e-03, 2.252463987615875487e-03, 2.228839067515365081e-03, 2.205153789076810898e-03, 2.181409019159898099e-03, 2.157605626071547843e-03, 2.133744479534392148e-03, 2.109826450655884981e-03, 2.085852411896614491e-03, 2.061823237038882400e-03, 2.037739801155580462e-03, 2.013602980578607649e-03, 1.989413652867336787e-03, 1.965172696777325780e-03, 1.940880992228753666e-03, 1.916539420274824797e-03, 1.892148863070418265e-03, 1.867710203840475388e-03, 1.843224326848352281e-03, 1.818692117364423310e-03, 1.794114461634471833e-03, 1.769492246847830050e-03, 1.744826361106280831e-03, 1.720117693392081773e-03, 1.695367133536294360e-03, 1.670575572187476751e-03, 1.645743900779866138e-03, 1.620873011501667562e-03, 1.595963797263604900e-03, 1.571017151667191249e-03, 1.546033968972988044e-03, 1.521015144069164928e-03, 1.495961572439740870e-03, 1.470874150132881874e-03, 1.445753773729432012e-03, 1.420601340311212438e-03, 1.395417747429216100e-03, 1.370203893072276463e-03, 1.344960675635436999e-03, 1.319688993887953559e-03, 1.294389746942198587e-03, 1.269063834221833068e-03, 1.243712155430169502e-03, 1.218335610518807895e-03, 1.192935099655980085e-03, 1.167511523194946117e-03, 1.142065781642656467e-03, 1.116598775628199151e-03, 1.091111405871064265e-03, 1.065604573150193265e-03, 1.040079178272161099e-03, 1.014536122039705508e-03, 9.889763052206375273e-04, 9.634006285164089470e-04, 9.378099925303987495e-04, 9.122052977370962877e-04, 8.865874444505453646e-04, 8.609573327930381123e-04, 8.353158626640458774e-04, 8.096639337089449762e-04, 7.840024452877271616e-04, 7.583322964440632153e-04, 7.326543858741269314e-04, 7.069696118952726238e-04, 6.812788724154956446e-04, 6.555830649020618619e-04, 6.298830863504853829e-04, 6.041798332539347538e-04, 5.784742015721440044e-04, 5.527670867004985753e-04, 5.270593834394299163e-04, 5.013519859635497686e-04, 4.756457877908557876e-04, 4.499416817522415004e-04, 4.242405599607809675e-04, 3.985433137810593589e-04, 3.728508337988328575e-04, 3.471640097904833233e-04, 3.214837306923774927e-04, 2.958108845708255254e-04, 2.701463585916985153e-04, 2.444910389897813480e-04, 2.188458110390504360e-04, 1.932115590222649383e-04, 1.675891662007986452e-04, 1.419795147847756291e-04, 1.163834859029883235e-04, 9.080195957287256353e-05, 6.523581467082280761e-05, 3.968592890228980112e-05, 1.415317877194101341e-05, -1.136156044583797919e-05, -3.685741473662481363e-05, -6.233351137572971283e-05, -8.778897895734495064e-05, -1.132229474240262706e-04, -1.386345480964154499e-04, -1.640229137020295059e-04, -1.893871784047209631e-04, -2.147264778338800115e-04, -2.400399491133198347e-04, -2.653267308903651308e-04, -2.905859633648651455e-04, -3.158167883178597340e-04, -3.410183491404079979e-04, -3.661897908625303039e-04, -3.913302601813334097e-04, -4.164389054899176245e-04, -4.415148769058907844e-04, -4.665573262994130929e-04, -4.915654073217061090e-04, -5.165382754333231559e-04, -5.414750879321004323e-04, -5.663750039812890779e-04, -5.912371846376073860e-04, -6.160607928789350136e-04, -6.408449936321838078e-04, -6.655889538010888347e-04, -6.902918422936414047e-04, -7.149528300496597920e-04, -7.395710900684641454e-04, -7.641457974357330433e-04, -7.886761293511002340e-04, -8.131612651553743985e-04, -8.376003863572644087e-04, -8.619926766605366403e-04, -8.863373219909643358e-04, -9.106335105228922921e-04, -9.348804327060132938e-04, -9.590772812920184522e-04, -9.832232513608961562e-04, -1.007317540347393760e-03, -1.031359348067371288e-03, -1.055347876743798321e-03, -1.079282331032872973e-03, -1.103161918050193230e-03, -1.126985847396292945e-03, -1.150753331182444985e-03, -1.174463584056664733e-03, -1.198115823228773158e-03, -1.221709268496098044e-03, -1.245243142268706409e-03, -1.268716669594726698e-03, -1.292129078185285437e-03, -1.315479598439576363e-03, -1.338767463469831996e-03, -1.361991909125918757e-03, -1.385152174020064155e-03, -1.408247499551500484e-03, -1.431277129930693922e-03, -1.454240312203730623e-03, -1.477136296276721460e-03, -1.499964334939427003e-03, -1.522723683889551892e-03, -1.545413601756638697e-03, -1.568033350125479317e-03, -1.590582193559895432e-03, -1.613059399626286944e-03, -1.635464238916811133e-03, -1.657795985072696692e-03, -1.680053914807436762e-03, -1.702237307929605750e-03, -1.724345447365808852e-03, -1.746377619183488899e-03, -1.768333112613376928e-03, -1.790211220072026894e-03, -1.812011237184359483e-03, -1.833732462805593788e-03, -1.855374199043387804e-03, -1.876935751280139810e-03, -1.898416428194394214e-03, -1.919815541782765632e-03, -1.941132407381545959e-03, -1.962366343688017826e-03, -1.983516672781830519e-03, -2.004582720146246000e-03, -2.025563814689034306e-03, -2.046459288763445052e-03, -2.067268478189149012e-03, -2.087990722272514005e-03, -2.108625363827364759e-03, -2.129171749195417525e-03, -2.149629228266253678e-03, -2.169997154497448153e-03, -2.190274884934827540e-03, -2.210461780231850852e-03, -2.230557204669511573e-03, -2.250560526175888424e-03, -2.270471116345387352e-03, -2.290288350458061575e-03, -2.310011607498777247e-03, -2.329640270176030863e-03, -2.349173724940810479e-03, -2.368611362005447821e-03, -2.387952575361773893e-03, -2.407196762799759023e-03, -2.426343325925832840e-03, -2.445391670180653045e-03, -2.464341204857272739e-03, -2.483191343118929147e-03, -2.501941502016568220e-03, -2.520591102506413057e-03, -2.539139569467366644e-03, -2.557586331718083271e-03, -2.575930822034069867e-03, -2.594172477164655502e-03, -2.612310737849619143e-03, -2.630345048835790091e-03, -2.648274858893711736e-03, -2.666099620833527282e-03, -2.683818791521430137e-03, -2.701431831895659361e-03, -2.718938206982106972e-03, -2.736337385910116073e-03, -2.753628841928082958e-03, -2.770812052418673236e-03, -2.787886498914084795e-03, -2.804851667111195410e-03, -2.821707046886314831e-03, -2.838452132309977633e-03, -2.855086421661626791e-03, -2.871609417443870063e-03, -2.888020626396830062e-03, -2.904319559512375058e-03, -2.920505732047843240e-03, -2.936578663539903596e-03, -2.952537877818393365e-03, -2.968382903019509307e-03, -2.984113271599235766e-03, -2.999728520346587983e-03, -3.015228190396442107e-03, -3.030611827242448916e-03, -3.045878980749762779e-03, -3.061029205167420213e-03, -3.076062059140731875e-03, -3.090977105723610816e-03, -3.105773912390295301e-03, -3.120452051047446773e-03, -3.135011098045851000e-03, -3.149450634191777038e-03, -3.163770244758400824e-03, -3.177969519497181924e-03, -3.192048052648650044e-03, -3.206005442953415753e-03, -3.219841293662882402e-03, -3.233555212549738163e-03, -3.247146811918333580e-03, -3.260615708614970649e-03, -3.273961524037847983e-03, -3.287183884146954813e-03, -3.300282419473945898e-03, -3.313256765131388035e-03, -3.326106560822374766e-03, -3.338831450849741658e-03, -3.351431084124936385e-03, -3.363905114177034080e-03, -3.376253199161451720e-03, -3.388475001868394929e-03, -3.400570189731295673e-03, -3.412538434835073447e-03, -3.424379413924034769e-03, -3.436092808409844674e-03, -3.447678304379220206e-03, -3.459135592601427899e-03, -3.470464368535605606e-03, -3.481664332338145051e-03, -3.492735188869478067e-03, -3.503676647700983398e-03, -3.514488423121893499e-03, -3.525170234145498342e-03, -3.535721804515668410e-03, -3.546142862713040720e-03, -3.556433141960935532e-03, -3.566592380231240096e-03, -3.576620320250127605e-03, -3.586516709503422690e-03, -3.596281300242057128e-03, -3.605913849487172532e-03, -3.615414119035089031e-03, -3.624781875462130404e-03, -3.634016890129343393e-03, -3.643118939186847528e-03, -3.652087803578167157e-03, -3.660923269044518390e-03, -3.669625126128547854e-03, -3.678193170178239296e-03, -3.686627201350598133e-03, -3.694927024614957402e-03, -3.703092449756340086e-03, -3.711123291378629757e-03, -3.719019368907363048e-03, -3.726780506592602352e-03, -3.734406533511572604e-03, -3.741897283570940706e-03, -3.749252595509212048e-03, -3.756472312898792663e-03, -3.763556284147850147e-03, -3.770504362502080480e-03, -3.777316406046367283e-03, -3.783992277706055545e-03, -3.790531845248291259e-03, -3.796934981283062692e-03, -3.803201563264069045e-03, -3.809331473489480698e-03, -3.815324599102492154e-03, -3.821180832091690231e-03, -3.826900069291290420e-03, -3.832482212381238800e-03, -3.837927167886933180e-03, -3.843234847179125956e-03, -3.848405166473366397e-03, -3.853438046829377878e-03, -3.858333414150259474e-03, -3.863091199181578703e-03, -3.867711337510172393e-03, -3.872193769562859086e-03, -3.876538440605043021e-03, -3.880745300738961193e-03, -3.884814304901970314e-03, -3.888745412864550582e-03, -3.892538589228145950e-03, -3.896193803422893370e-03, -3.899711029705122192e-03, -3.903090247154752078e-03, -3.906331439672412927e-03, -3.909434595976584749e-03, -3.912399709600357205e-03, -3.915226778888166587e-03, -3.917915806992373212e-03, -3.920466801869527430e-03, -3.922879776276664253e-03, -3.925154747767281398e-03, -3.927291738687243607e-03, -3.929290776170455378e-03, -3.931151892134469514e-03, -3.932875123275766070e-03, -3.934460511065054726e-03, -3.935908101742302198e-03, -3.937217946311609602e-03, -3.938390100535934558e-03, -3.939424624931701403e-03, -3.940321584763133850e-03, -3.941081050036555553e-03, -3.941703095494455619e-03, -3.942187800609389323e-03, -3.942535249577733963e-03, -3.942745531313335446e-03, -3.942818739440887704e-03, -3.942754972289228867e-03, -3.942554332884494299e-03, -3.942216928943031128e-03, -3.941742872864203474e-03, -3.941132281723077127e-03, -3.940385277262857880e-03, -3.939501985887263955e-03, -3.938482538652625202e-03, -3.937327071259984906e-03, -3.936035724046917962e-03, -3.934608641979189456e-03, -3.933045974642384625e-03, -3.931347876233246517e-03, -3.929514505550905229e-03, -3.927546025988009996e-03, -3.925442605521611492e-03, -3.923204416703933092e-03, -3.920831636653061489e-03, -3.918324447043317234e-03, -3.915683034095645242e-03, -3.912907588567761559e-03, -3.909998305744150082e-03, -3.906955385425940445e-03, -3.903779031920649300e-03, -3.900469454031675262e-03, -3.897026865047791694e-03, -3.893451482732350217e-03, -3.889743529312430018e-03, -3.885903231467805006e-03, -3.881930820319770895e-03, -3.877826531419789266e-03, -3.873590604738051408e-03, -3.869223284651833548e-03, -3.864724819933798745e-03, -3.860095463739974392e-03, -3.855335473597807771e-03, -3.850445111393919345e-03, -3.845424643361781015e-03, -3.840274340069216134e-03, -3.834994476405804119e-03, -3.829585331570091195e-03, -3.824047189056697070e-03, -3.818380336643277615e-03, -3.812585066377283723e-03, -3.806661674562735343e-03, -3.800610461746657676e-03, -3.794431732705532551e-03, -3.788125796431556381e-03, -3.781692966118731149e-03, -3.775133559148876466e-03, -3.768447897077481165e-03, -3.761636305619407011e-03, -3.754699114634452769e-03, -3.747636658112845406e-03, -3.740449274160518797e-03, -3.733137304984277937e-03, -3.725701096876886820e-03, -3.718141000201972447e-03, -3.710457369378748413e-03, -3.702650562866803552e-03, -3.694720943150495932e-03, -3.686668876723368099e-03, -3.678494734072485558e-03, -3.670198889662527626e-03, -3.661781721919766825e-03, -3.653243613216015755e-03, -3.644584949852377066e-03, -3.635806122042791778e-03, -3.626907523897678672e-03, -3.617889553407238439e-03, -3.608752612424709263e-03, -3.599497106649548681e-03, -3.590123445610456706e-03, -3.580632042648162171e-03, -3.571023314898366923e-03, -3.561297683274315326e-03, -3.551455572449258805e-03, -3.541497410839016240e-03, -3.531423630584204758e-03, -3.521234667532369914e-03, -3.510930961220162707e-03, -3.500512954855232971e-03, -3.489981095298013043e-03, -3.479335833043572124e-03, -3.468577622203109813e-03, -3.457706920485475663e-03, -3.446724189178615450e-03, -3.435629893130785414e-03, -3.424424500731675439e-03, -3.413108483893568211e-03, -3.401682318032267678e-03, -3.390146482047778562e-03, -3.378501458305260829e-03, -3.366747732615492372e-03, -3.354885794215431861e-03, -3.342916135748656269e-03, -3.330839253245621457e-03, -3.318655646103869407e-03, -3.306365817068164341e-03, -3.293970272210492659e-03, -3.281469520909809610e-03, -3.268864075832096476e-03, -3.256154452909865681e-03, -3.243341171321727050e-03, -3.230424753472059020e-03, -3.217405724970275223e-03, -3.204284614610130970e-03, -3.191061954349007183e-03, -3.177738279286955372e-03, -3.164314127645715714e-03, -3.150790040747690913e-03, -3.137166562994750038e-03, -3.123444241846907912e-03, -3.109623627801088620e-03, -3.095705274369599767e-03, -3.081689738058659631e-03, -3.067577578346661511e-03, -3.053369357662615892e-03, -3.039065641364304196e-03, -3.024666997716279893e-03, -3.010173997868069093e-03, -2.995587215832107037e-03, -2.980907228461414805e-03, -2.966134615427604322e-03, -2.951269959198489588e-03, -2.936313845015648023e-03, -2.921266860872063793e-03, -2.906129597489543002e-03, -2.890902648296036527e-03, -2.875586609403050879e-03, -2.860182079582837024e-03, -2.844689660245392285e-03, -2.829109955415830442e-03, -2.813443571711165062e-03, -2.797691118317198206e-03, -2.781853206965567444e-03, -2.765930451910405142e-03, -2.749923469905029855e-03, -2.733832880178655930e-03, -2.717659304412960858e-03, -2.701403366718493470e-03, -2.685065693611249100e-03, -2.668646913988958948e-03, -2.652147659107355164e-03, -2.635568562556528296e-03, -2.618910260237033646e-03, -2.602173390335892674e-03, -2.585358593302913149e-03, -2.568466511826471982e-03, -2.551497790809392156e-03, -2.534453077345014821e-03, -2.517333020692906660e-03, -2.500138272254545137e-03, -2.482869485549130378e-03, -2.465527316189183686e-03, -2.448112421856053246e-03, -2.430625462275586793e-03, -2.413067099193515457e-03, -2.395437996350861017e-03, -2.377738819459388267e-03, -2.359970236176915561e-03, -2.342132916082428039e-03, -2.324227530651535624e-03, -2.306254753231608366e-03, -2.288215259016646800e-03, -2.270109725022718267e-03, -2.251938830062802550e-03, -2.233703254721757653e-03, -2.215403681331401357e-03, -2.197040793945345162e-03, -2.178615278313802191e-03, -2.160127821858526947e-03, -2.141579113647586359e-03, -2.122969844369911388e-03, -2.104300706310353007e-03, -2.085572393324111509e-03, -2.066785600811316733e-03, -2.047941025691830778e-03, -2.029039366379810014e-03, -2.010081322757941834e-03, -1.991067596152308085e-03, -1.971998889306684696e-03, -1.952875906356931314e-03, -1.933699352805522955e-03, -1.914469935495878268e-03, -1.895188362586646812e-03, -1.875855343526154195e-03, -1.856471589026665713e-03, -1.837037811038482382e-03, -1.817554722724549782e-03, -1.798023038434415962e-03, -1.778443473678384488e-03, -1.758816745101955681e-03, -1.739143570459826147e-03, -1.719424668589985454e-03, -1.699660759387984109e-03, -1.679852563780959759e-03, -1.660000803701673373e-03, -1.640106202062704792e-03, -1.620169482730468092e-03, -1.600191370499156251e-03, -1.580172591064934106e-03, -1.560113870999902536e-03, -1.540015937725948587e-03, -1.519879519489000450e-03, -1.499705345332960410e-03, -1.479494145073417723e-03, -1.459246649271984464e-03, -1.438963589210077998e-03, -1.418645696862837679e-03, -1.398293704873217408e-03, -1.377908346525861779e-03, -1.357490355720993502e-03, -1.337040466948488182e-03, -1.316559415261761524e-03, -1.296047936251628783e-03, -1.275506766020409032e-03, -1.254936641155806731e-03, -1.234338298704700052e-03, -1.213712476147361160e-03, -1.193059911371356424e-03, -1.172381342645225462e-03, -1.151677508592832168e-03, -1.130949148167145670e-03, -1.110197000624171988e-03, -1.089421805497093210e-03, -1.068624302570199370e-03, -1.047805231852810999e-03, -1.026965333553471645e-03, -1.006105348053915310e-03, -9.852260158829241696e-04, -9.643280776907884547e-04, -9.434122742230831781e-04, -9.224793462947113599e-04, -9.015300347642920273e-04, -8.805650805081132338e-04, -8.595852243942221204e-04, -8.385912072567520926e-04, -8.175837698700231821e-04, -7.965636529226811143e-04, -7.755315969920811891e-04, -7.544883425184541279e-04, -7.334346297791220120e-04, -7.123711988629378902e-04, -6.912987896445758765e-04, -6.702181417586752050e-04, -6.491299945746222292e-04, -6.280350871706721428e-04, -6.069341583083195241e-04, -5.858279464070612541e-04, -5.647171895187093815e-04, -5.436026253018773520e-04, -5.224849909966959799e-04, -5.013650233993343719e-04, -4.802434588365601530e-04, -4.591210331405535584e-04, -4.379984816235427407e-04, -4.168765390524637425e-04, -3.957559396238955851e-04, -3.746374169388205300e-04, -3.535217039773128913e-04, -3.324095330737109684e-04, -3.113016358915037256e-04, -2.901987433980109305e-04, -2.691015858398123684e-04, -2.480108927176114279e-04, -2.269273927612973666e-04, -2.058518139052563476e-04, -1.847848832634994885e-04, -1.637273271048368824e-04, -1.426798708283303382e-04, -1.216432389385911763e-04, -1.006181550209736422e-04, -7.960534171743082171e-05, -5.860552070170776327e-05, -3.761941265484430267e-05, -1.664773724103225223e-05, 4.308786916777418395e-06, 2.524944226146522429e-05, 4.617351232557014452e-05, 6.708028175566784358e-05, 8.796903633653994849e-05, 1.088390630150838797e-04, 1.296896499243903724e-04, 1.505200864077633387e-04, 1.713296630424509257e-04, 1.921176716635178579e-04, 2.128834053878085012e-04, 2.336261586372400246e-04, 2.543452271627408257e-04, 2.750399080678704979e-04, 2.957094998320490250e-04, 3.163533023341733334e-04, 3.369706168760397457e-04, 3.575607462055036228e-04, 3.781229945397871091e-04, 3.986566675887307149e-04, 4.191610725777394257e-04, 4.396355182708891647e-04, 4.600793149939640830e-04, 4.804917746571881051e-04, 5.008722107780962281e-04, 5.212199385044725530e-04, 5.415342746366214781e-04, 5.618145376502610075e-04, 5.820600477190839136e-04, 6.022701267369346594e-04, 6.224440983403472507e-04, 6.425812879308757898e-04, 6.626810226971588565e-04, 6.827426316371288479e-04, 7.027654455801275344e-04, 7.227487972087354943e-04, 7.426920210807277500e-04, 7.625944536509633763e-04, 7.824554332929544017e-04, 8.022743003205570073e-04, 8.220503970097083708e-04, 8.417830676196175069e-04, 8.614716584142138216e-04, 8.811155176837288071e-04, 9.007139957655305043e-04, 9.202664450654405442e-04, 9.397722200788232892e-04, 9.592306774113869023e-04, 9.786411758001220020e-04, 9.980030761341431716e-04, 1.017315741475221472e-03, 1.036578537078426676e-03, 1.055790830412810157e-03, 1.074951991181429456e-03, 1.094061391341947468e-03, 1.113118405126884260e-03, 1.132122409063526704e-03, 1.151072781993976247e-03, 1.169968905095373829e-03, 1.188810161899367390e-03, 1.207595938312021073e-03, 1.226325622633510403e-03, 1.244998605577525390e-03, 1.263614280290770555e-03, 1.282172042372397734e-03, 1.300671289893093026e-03, 1.319111423414271074e-03, 1.337491846007299702e-03, 1.355811963272073170e-03, 1.374071183356116678e-03, 1.392268916973370173e-03, 1.410404577422572948e-03, 1.428477580605932301e-03, 1.446487345047604844e-03, 1.464433291911865567e-03, 1.482314845021392470e-03, 1.500131430875424566e-03, 1.517882478667638424e-03, 1.535567420304092797e-03, 1.553185690421066351e-03, 1.570736726402627162e-03, 1.588219968398199610e-03, 1.605634859340192852e-03, 1.622980844961099131e-03, 1.640257373810766412e-03, 1.657463897273776625e-03, 1.674599869586108989e-03, 1.691664747852199713e-03, 1.708657992061789416e-03, 1.725579065106435956e-03, 1.742427432796153251e-03, 1.759202563875899824e-03, 1.775903930041798466e-03, 1.792531005957390599e-03, 1.809083269269802161e-03, 1.825560200625598760e-03, 1.841961283686681383e-03, 1.858286005146181450e-03, 1.874533854743861251e-03, 1.890704325281656207e-03, 1.906796912639322069e-03, 1.922811115789372412e-03, 1.938746436812379759e-03, 1.954602380912081987e-03, 1.970378456430132031e-03, 1.986074174860973356e-03, 2.001689050866565373e-03, 2.017222602290807444e-03, 2.032674350173998678e-03, 2.048043818767303348e-03, 2.063330535546624347e-03, 2.078534031226882996e-03, 2.093653839775990073e-03, 2.108689498428448217e-03, 2.123640547699173764e-03, 2.138506531397074868e-03, 2.153286996638395425e-03, 2.167981493860067672e-03, 2.182589576832948131e-03, 2.197110802674765578e-03, 2.211544731863112831e-03, 2.225890928248291500e-03, 2.240148959065886135e-03, 2.254318394949334468e-03, 2.268398809942501117e-03, 2.282389781511697489e-03, 2.296290890558011326e-03, 2.310101721429425048e-03, 2.323821861932480904e-03, 2.337450903344211531e-03, 2.350988440423793392e-03, 2.364434071423979471e-03, 2.377787398102497712e-03, 2.391048025733382223e-03, 2.404215563117993119e-03, 2.417289622596026366e-03, 2.430269820056439947e-03, 2.443155774948088145e-03, 2.455947110290321138e-03, 2.468643452683565512e-03, 2.481244432319493643e-03, 2.493749682991208260e-03, 2.506158842103532389e-03, 2.518471550682654415e-03, 2.530687453386055476e-03, 2.542806198512199186e-03, 2.554827438009952927e-03, 2.566750827488028207e-03, 2.578576026224283120e-03, 2.590302697174739870e-03, 2.601930506982593188e-03, 2.613459125987208781e-03, 2.624888228232539339e-03, 2.636217491475929559e-03, 2.647446597196567285e-03, 2.658575230603616758e-03, 2.669603080644457251e-03, 2.680529840012854485e-03, 2.691355205156608157e-03, 2.702078876285465316e-03, 2.712700557378752275e-03, 2.723219956192732012e-03, 2.733636784268051335e-03, 2.743950756936901388e-03, 2.754161593330125245e-03, 2.764269016384091754e-03, 2.774272752847487845e-03, 2.784172533288072678e-03, 2.793968092099038871e-03, 2.803659167505471745e-03, 2.813245501570652441e-03, 2.822726840202000216e-03, 2.832102933157104076e-03, 2.841373534049636881e-03, 2.850538400354873936e-03, 2.859597293415329540e-03, 2.868549978446168890e-03, 2.877396224540415721e-03, 2.886135804674087087e-03, 2.894768495711248345e-03, 2.903294078408756324e-03, 2.911712337420998588e-03, 2.920023061304563312e-03, 2.928226042522448589e-03, 2.936321077448524140e-03, 2.944307966371676865e-03, 2.952186513499686655e-03, 2.959956526963172449e-03, 2.967617818819377837e-03, 2.975170205055635737e-03, 2.982613505592885978e-03, 2.989947544288984287e-03, 2.997172148941820886e-03, 3.004287151292384453e-03, 3.011292387027667342e-03, 3.018187695783343134e-03, 3.024972921146413390e-03, 3.031647910657729941e-03, 3.038212515814171961e-03, 3.044666592070964864e-03, 3.051009998843695181e-03, 3.057242599510207048e-03, 3.063364261412289662e-03, 3.069374855857465775e-03, 3.075274258120358657e-03, 3.081062347444011359e-03, 3.086739007041273616e-03, 3.092304124095627584e-03, 3.097757589762248180e-03, 3.103099299168879128e-03, 3.108329151416238442e-03, 3.113447049578764794e-03, 3.118452900704853439e-03, 3.123346615817120323e-03, 3.128128109912504864e-03, 3.132797301962238733e-03, 3.137354114911583905e-03, 3.141798475679602812e-03, 3.146130315158656571e-03, 3.150349568213764873e-03, 3.154456173681932912e-03, 3.158450074371231108e-03, 3.162331217059796348e-03, 3.166099552494640226e-03, 3.169755035390428230e-03, 3.173297624428003498e-03, 3.176727282252777857e-03, 3.180043975473134145e-03, 3.183247674658491993e-03, 3.186338354337373176e-03, 3.189315992995267468e-03, 3.192180573072400922e-03, 3.194932080961300318e-03, 3.197570507004361944e-03, 3.200095845491074311e-03, 3.202508094655288125e-03, 3.204807256672301957e-03, 3.206993337655733231e-03, 3.209066347654356693e-03, 3.211026300648765937e-03, 3.212873214547867090e-03, 3.214607111185313528e-03, 3.216228016315740221e-03, 3.217735959610870146e-03, 3.219130974655540038e-03, 3.220413098943549195e-03, 3.221582373873347390e-03, 3.222638844743665101e-03, 3.223582560748949020e-03, 3.224413574974700422e-03, 3.225131944392623570e-03, 3.225737729855760252e-03, 3.226230996093340693e-03, 3.226611811705618407e-03, 3.226880249158540267e-03, 3.227036384778259569e-03, 3.227080298745538083e-03, 3.227012075090032305e-03, 3.226831801684429662e-03, 3.226539570238458506e-03, 3.226135476292774952e-03, 3.225619619212705298e-03, 3.224992102181876985e-03, 3.224253032195735502e-03, 3.223402520054850524e-03, 3.222440680358239391e-03, 3.221367631496409572e-03, 3.220183495644391575e-03, 3.218888398754539415e-03, 3.217482470549333680e-03, 3.215965844513928723e-03, 3.214338657888662562e-03, 3.212601051661398508e-03, 3.210753170559755773e-03, 3.208795163043211274e-03, 3.206727181295085643e-03, 3.204549381214389162e-03, 3.202261922407568812e-03, 3.199864968180095737e-03, 3.197358685527955120e-03, 3.194743245129035014e-03, 3.192018821334329133e-03, 3.189185592159078479e-03, 3.186243739273775938e-03, 3.183193447995021248e-03, 3.180034907276285770e-03, 3.176768309698567959e-03, 3.173393851460874944e-03, 3.169911732370632538e-03, 3.166322155834024998e-03, 3.162625328846011691e-03, 3.158821461980536316e-03, 3.154910769380357954e-03, 3.150893468746836582e-03, 3.146769781329705144e-03, 3.142539931916596158e-03, 3.138204148822476384e-03, 3.133762663879072815e-03, 3.129215712424018078e-03, 3.124563533290001041e-03, 3.119806368793799026e-03, 3.114944464725088839e-03, 3.109978070335288163e-03, 3.104907438326199622e-03, 3.099732824838568115e-03, 3.094454489440481588e-03, 3.089072695115736237e-03, 3.083587708252070320e-03, 3.077999798629237928e-03, 3.072309239406976079e-03, 3.066516307113003898e-03, 3.060621281630690471e-03, 3.054624446186762158e-03, 3.048526087338923607e-03, 3.042326494963238075e-03, 3.036025962241496040e-03, 3.029624785648536538e-03, 3.023123264939250182e-03, 3.016521703135749584e-03, 3.009820406514262647e-03, 3.003019684591857596e-03, 2.996119850113346684e-03, 2.989121219037761418e-03, 2.982024110524918864e-03, 2.974828846921910314e-03, 2.967535753749285955e-03, 2.960145159687361388e-03, 2.952657396562342450e-03, 2.945072799332293465e-03, 2.937391706073043916e-03, 2.929614457964117239e-03, 2.921741399274326110e-03, 2.913772877347440594e-03, 2.905709242587780836e-03, 2.897550848445556472e-03, 2.889298051402259399e-03, 2.880951210955871779e-03, 2.872510689606090108e-03, 2.863976852839279080e-03, 2.855350069113483588e-03, 2.846630709843348331e-03, 2.837819149384793703e-03, 2.828915765019764540e-03, 2.819920936940854394e-03, 2.810835048235748104e-03, 2.801658484871638339e-03, 2.792391635679681173e-03, 2.783034892338986759e-03, 2.773588649361064060e-03, 2.764053304073732162e-03, 2.754429256604993409e-03, 2.744716909867203191e-03, 2.734916669540638640e-03, 2.725028944057295878e-03, 2.715054144584646070e-03, 2.704992685008992485e-03, 2.694844981919068683e-03, 2.684611454589479716e-03, 2.674292524963851891e-03, 2.663888617638195903e-03, 2.653400159844075245e-03, 2.642827581431544774e-03, 2.632171314852272716e-03, 2.621431795142368203e-03, 2.610609459905350628e-03, 2.599704749294742996e-03, 2.588718105996834842e-03, 2.577649975213395280e-03, 2.566500804644023491e-03, 2.555271044468700008e-03, 2.543961147330263840e-03, 2.532571568316566504e-03, 2.521102764942793461e-03, 2.509555197133725695e-03, 2.497929327205613594e-03, 2.486225619848467586e-03, 2.474444542107927681e-03, 2.462586563366985989e-03, 2.450652155328139452e-03, 2.438641791994881208e-03, 2.426555949653485568e-03, 2.414395106854730095e-03, 2.402159744395282459e-03, 2.389850345299295020e-03, 2.377467394799912676e-03, 2.365011380320476697e-03, 2.352482791455937604e-03, 2.339882119954158745e-03, 2.327209859696953605e-03, 2.314466506681304384e-03, 2.301652559000488645e-03, 2.288768516824943571e-03, 2.275814882383315422e-03, 2.262792159943301674e-03, 2.249700855792603326e-03, 2.236541478219529824e-03, 2.223314537493816054e-03, 2.210020545847378622e-03, 2.196660017454760746e-03, 2.183233468413771448e-03, 2.169741416726110421e-03, 2.156184382277632951e-03, 2.142562886818841217e-03, 2.128877453945395536e-03, 2.115128609078061831e-03, 2.101316879443378572e-03, 2.087442794053693575e-03, 2.073506883687126212e-03, 2.059509680868122899e-03, 2.045451719847147815e-03, 2.031333536580870631e-03, 2.017155668712222825e-03, 2.002918655550166901e-03, 1.988623038049674649e-03, 1.974269358791686316e-03, 1.959858161962736278e-03, 1.945389993334805528e-03, 1.930865400245184143e-03, 1.916284931575938004e-03, 1.901649137733726815e-03, 1.886958570629326121e-03, 1.872213783657358148e-03, 1.857415331675654020e-03, 1.842563770984821095e-03, 1.827659659307861919e-03, 1.812703555769396577e-03, 1.797696020875166499e-03, 1.782637616491516801e-03, 1.767528905824542742e-03, 1.752370453399503328e-03, 1.737162825040222550e-03, 1.721906587847995586e-03, 1.706602310181241358e-03, 1.691250561634494382e-03, 1.675851913017376233e-03, 1.660406936334171343e-03, 1.644916204762585966e-03, 1.629380292632956429e-03, 1.613799775407441560e-03, 1.598175229658840412e-03, 1.582507233049731780e-03, 1.566796364311578808e-03, 1.551043203223481659e-03, 1.535248330591260438e-03, 1.519412328226500599e-03, 1.503535778925233629e-03, 1.487619266447016281e-03, 1.471663375493708400e-03, 1.455668691688514430e-03, 1.439635801554599043e-03, 1.423565292494039739e-03, 1.407457752766748870e-03, 1.391313771469078866e-03, 1.375133938512706957e-03, 1.358918844603545064e-03, 1.342669081220287117e-03, 1.326385240593261914e-03, 1.310067915683326301e-03, 1.293717700160362414e-03, 1.277335188382117083e-03, 1.260920975373108679e-03, 1.244475656802885178e-03, 1.227999828965276432e-03, 1.211494088756838276e-03, 1.194959033655338494e-03, 1.178395261698955308e-03, 1.161803371464544335e-03, 1.145183962046487751e-03, 1.128537633035503777e-03, 1.111864984497099029e-03, 1.095166616950379737e-03, 1.078443131346856028e-03, 1.061695129048896872e-03, 1.044923211808546732e-03, 1.028127981746343499e-03, 1.011310041329766506e-03, 9.944699933521130176e-04, 9.776084409111253544e-04, 9.607259873878630421e-04, 9.438232364251844357e-04, 9.269007919065958868e-04, 9.099592579351170650e-04, 8.929992388117661585e-04, 8.760213390144557704e-04, 8.590261631768711425e-04, 8.420143160670028439e-04, 8.249864025660497147e-04, 8.079430276473599732e-04, 7.908847963549791920e-04, 7.738123137826105960e-04, 7.567261850525817566e-04, 7.396270152944452603e-04, 7.225154096240274772e-04, 7.053919731222282885e-04, 6.882573108140978280e-04, 6.711120276475123934e-04, 6.539567284722411049e-04, 6.367920180190405352e-04, 6.196185008783824466e-04, 6.024367814795905966e-04, 5.852474640699900123e-04, 5.680511526937052002e-04, 5.508484511708671002e-04, 5.336399630768638410e-04, 5.164262917210167602e-04, 4.992080401262639737e-04, 4.819858110080800159e-04, 4.647602067534357040e-04, 4.475318294005590104e-04, 4.303012806177380434e-04, 4.130691616827708622e-04, 3.958360734624042873e-04, 3.786026163914317294e-04, 3.613693904521913603e-04, 3.441369951540993572e-04, 3.269060295128440089e-04, 3.096770920299790251e-04, 2.924507806725580995e-04, 2.752276928524277329e-04, 2.580084254059257639e-04, 2.407935745736235395e-04, 2.235837359797234174e-04, 2.063795046119099529e-04, 1.891814748009962798e-04, 1.719902402008489960e-04, 1.548063937679436072e-04, 1.376305277413319669e-04, 1.204632336226494802e-04, 1.033051021557907314e-04, 8.615672330700057725e-05, 6.901868624500784983e-05, 5.189157932082953667e-05, 3.477599004799140252e-05, 1.767250508283470036e-05, 5.817102042483011815e-07, -1.649580970556165701e-05, -3.355947068104061961e-05, -5.060868969320613843e-05, -6.764288466873769436e-05, -8.466147451000654504e-05, -1.016638791144389115e-04, -1.186495193938698545e-04, -1.356178172942185893e-04, -1.525681958147387255e-04, -1.695000790272216699e-04, -1.864128920955139730e-04, -2.033060612946117147e-04, -2.201790140297043533e-04, -2.370311788555291702e-04, -2.538619854952655535e-04, -2.706708648596152208e-04, -2.874572490655805741e-04, -3.042205714556028471e-04, -3.209602666162620710e-04, -3.376757703969292560e-04, -3.543665199287255631e-04, -3.710319536430503433e-04, -3.876715112900554010e-04, -4.042846339574174123e-04, -4.208707640886937928e-04, -4.374293455015668391e-04, -4.539598234066371803e-04, -4.704616444251858830e-04, -4.869342566076348910e-04, -5.033771094519475615e-04, -5.197896539211989755e-04, -5.361713424620450502e-04, -5.525216290225209645e-04, -5.688399690698212616e-04, -5.851258196083648257e-04, -6.013786391974347426e-04, -6.175978879687543015e-04, -6.337830276443470572e-04, -6.499335215539753545e-04, -6.660488346525003569e-04, -6.821284335375427240e-04, -6.981717864666570246e-04, -7.141783633746936078e-04, -7.301476358908313112e-04, -7.460790773559497404e-04, -7.619721628395594113e-04, -7.778263691566632623e-04, -7.936411748849067811e-04, -8.094160603812844759e-04, -8.251505077987782589e-04, -8.408440011032780473e-04, -8.564960260900683587e-04, -8.721060704002296876e-04, -8.876736235373331591e-04, -9.031981768836940200e-04, -9.186792237165040259e-04, -9.341162592244755701e-04, -9.495087805234736023e-04, -9.648562866728153074e-04, -9.801582786914471608e-04, -9.954142595733730167e-04, -1.010623734303864448e-03, -1.025786209875047131e-03, -1.040901195301440711e-03, -1.055968201635741534e-03, -1.070986741984194471e-03, -1.085956331521887100e-03, -1.100876487508279170e-03, -1.115746729302316814e-03, -1.130566578377481058e-03, -1.145335558337052737e-03, -1.160053194928943512e-03, -1.174719016060653959e-03, -1.189332551813925259e-03, -1.203893334459678853e-03, -1.218400898472508107e-03, -1.232854780545124436e-03, -1.247254519603012684e-03, -1.261599656818680358e-03, -1.275889735625817742e-03, -1.290124301733684611e-03, -1.304302903141093184e-03, -1.318425090150261410e-03, -1.332490415381103839e-03, -1.346498433784584650e-03, -1.360448702656653561e-03, -1.374340781652071998e-03, -1.388174232797503328e-03, -1.401948620505332962e-03, -1.415663511586873723e-03, -1.429318475265512877e-03, -1.442913083190082305e-03, -1.456446909447817748e-03, -1.469919530577209208e-03, -1.483330525581101579e-03, -1.496679475939345985e-03, -1.509965965621383032e-03, -1.523189581099033789e-03, -1.536349911358841913e-03, -1.549446547914526797e-03, -1.562479084819148097e-03, -1.575447118677479521e-03, -1.588350248658021132e-03, -1.601188076504874184e-03, -1.613960206549843856e-03, -1.626666245724121959e-03, -1.639305803569900697e-03, -1.651878492252147100e-03, -1.664383926569994523e-03, -1.676821723968053039e-03, -1.689191504547871842e-03, -1.701492891079052754e-03, -1.713725509010190912e-03, -1.725888986480212696e-03, -1.737982954328848046e-03, -1.750007046107611257e-03, -1.761960898090625654e-03, -1.773844149284828755e-03, -1.785656441440761815e-03, -1.797397419062814672e-03, -1.809066729419389922e-03, -1.820664022553250549e-03, -1.832188951291454900e-03, -1.843641171255244173e-03, -1.855020340870024891e-03, -1.866326121375043879e-03, -1.877558176832909952e-03, -1.888716174139296001e-03, -1.899799783032231045e-03, -1.910808676101479224e-03, -1.921742528797605902e-03, -1.932601019441257569e-03, -1.943383829232062055e-03, -1.954090642257417729e-03, -1.964721145501425147e-03, -1.975275028853488470e-03, -1.985751985116759443e-03, -1.996151710016768731e-03, -2.006473902209661517e-03, -2.016718263290338559e-03, -2.026884497800854421e-03, -2.036972313238080614e-03, -2.046981420061782467e-03, -2.056911531702530337e-03, -2.066762364569079986e-03, -2.076533638056201822e-03, -2.086225074552036565e-03, -2.095836399445395824e-03, -2.105367341133113860e-03, -2.114817631027121354e-03, -2.124187003561391670e-03, -2.133475196198975597e-03, -2.142681949438734676e-03, -2.151807006821945725e-03, -2.160850114939025929e-03, -2.169811023435881496e-03, -2.178689485020306616e-03, -2.187485255468139562e-03, -2.196198093629492948e-03, -2.204827761434732889e-03, -2.213374023900284253e-03, -2.221836649134557341e-03, -2.230215408343553217e-03, -2.238510075836361475e-03, -2.246720429030736946e-03, -2.254846248458377590e-03, -2.262887317770027190e-03, -2.270843423740868169e-03, -2.278714356275198406e-03, -2.286499908411471476e-03, -2.294199876327154743e-03, -2.301814059343170252e-03, -2.309342259928545520e-03, -2.316784283704942469e-03, -2.324139939450758745e-03, -2.331409039105489245e-03, -2.338591397773778866e-03, -2.345686833729308720e-03, -2.352695168418789898e-03, -2.359616226465625476e-03, -2.366449835673515266e-03, -2.373195827030067078e-03, -2.379854034710134764e-03, -2.386424296079064315e-03, -2.392906451695991574e-03, -2.399300345316785193e-03, -2.405605823897073291e-03, -2.411822737594990392e-03, -2.417950939773975960e-03, -2.423990287005361316e-03, -2.429940639070788267e-03, -2.435801858964683261e-03, -2.441573812896472625e-03, -2.447256370292683753e-03, -2.452849403799065367e-03, -2.458352789282454952e-03, -2.463766405832544266e-03, -2.469090135763703404e-03, -2.474323864616379855e-03, -2.479467481158641965e-03, -2.484520877387640884e-03, -2.489483948530601086e-03, -2.494356593046149172e-03, -2.499138712625235004e-03, -2.503830212191987797e-03, -2.508430999904583906e-03, -2.512940987155854854e-03, -2.517360088573823793e-03, -2.521688222022191658e-03, -2.525925308600637711e-03, -2.530071272644994311e-03, -2.534126041727406946e-03, -2.538089546656280455e-03, -2.541961721476165836e-03, -2.545742503467477054e-03, -2.549431833146199172e-03, -2.553029654263378346e-03, -2.556535913804529412e-03, -2.559950561988982767e-03, -2.563273552269072515e-03, -2.566504841329154615e-03, -2.569644389084662327e-03, -2.572692158680916618e-03, -2.575648116491852883e-03, -2.578512232118726401e-03, -2.581284478388535478e-03, -2.583964831352494450e-03, -2.586553270284343634e-03, -2.589049777678469316e-03, -2.591454339248050638e-03, -2.593766943922974893e-03, -2.595987583847706847e-03, -2.598116254379029266e-03, -2.600152954083700171e-03, -2.602097684735915368e-03, -2.603950451314773588e-03, -2.605711262001578557e-03, -2.607380128176964556e-03, -2.608957064418064489e-03, -2.610442088495431613e-03, -2.611835221369905764e-03, -2.613136487189372456e-03, -2.614345913285426575e-03, -2.615463530169873877e-03, -2.616489371531168298e-03, -2.617423474230767735e-03, -2.618265878299298570e-03, -2.619016626932676398e-03, -2.619675766488092743e-03, -2.620243346479944092e-03, -2.620719419575551039e-03, -2.621104041590865269e-03, -2.621397271486054694e-03, -2.621599171360936356e-03, -2.621709806450329104e-03, -2.621729245119329074e-03, -2.621657558858413867e-03, -2.621494822278536748e-03, -2.621241113105987532e-03, -2.620896512177283821e-03, -2.620461103433857544e-03, -2.619934973916676884e-03, -2.619318213760788404e-03, -2.618610916189677024e-03, -2.617813177509622103e-03, -2.616925097103871799e-03, -2.615946777426744578e-03, -2.614878323997642685e-03, -2.613719845394937239e-03, -2.612471453249755760e-03, -2.611133262239682083e-03, -2.609705390082333546e-03, -2.608187957528867919e-03, -2.606581088357365870e-03, -2.604884909366092863e-03, -2.603099550366718123e-03, -2.601225144177377914e-03, -2.599261826615687204e-03, -2.597209736491587831e-03, -2.595069015600168921e-03, -2.592839808714354159e-03, -2.590522263577480638e-03, -2.588116530895784046e-03, -2.585622764330814446e-03, -2.583041120491725434e-03, -2.580371758927477860e-03, -2.577614842118926882e-03, -2.574770535470858289e-03, -2.571839007303886905e-03, -2.568820428846241375e-03, -2.565714974225561523e-03, -2.562522820460441577e-03, -2.559244147451999411e-03, -2.555879137975350379e-03, -2.552427977670860409e-03, -2.548890855035479321e-03, -2.545267961413874656e-03, -2.541559490989460553e-03, -2.537765640775423159e-03, -2.533886610605586443e-03, -2.529922603125147468e-03, -2.525873823781459374e-03, -2.521740480814609227e-03, -2.517522785247862729e-03, -2.513220950878219517e-03, -2.508835194266660542e-03, -2.504365734728393293e-03, -2.499812794323096575e-03, -2.495176597844889470e-03, -2.490457372812371426e-03, -2.485655349458532667e-03, -2.480770760720511087e-03, -2.475803842229359984e-03, -2.470754832299672243e-03, -2.465623971919132535e-03, -2.460411504737971058e-03, -2.455117677058338797e-03, -2.449742737823678001e-03, -2.444286938607828988e-03, -2.438750533604205472e-03, -2.433133779614897029e-03, -2.427436936039533040e-03, -2.421660264864217756e-03, -2.415804030650362585e-03, -2.409868500523330587e-03, -2.403853944161117411e-03, -2.397760633782941575e-03, -2.391588844137620094e-03, -2.385338852492089375e-03, -2.379010938619688462e-03, -2.372605384788281820e-03, -2.366122475748636683e-03, -2.359562498722322064e-03, -2.352925743389808547e-03, -2.346212501878410656e-03, -2.339423068750080912e-03, -2.332557740989229904e-03, -2.325616817990466562e-03, -2.318600601546145449e-03, -2.311509395833970856e-03, -2.304343507404537153e-03, -2.297103245168618472e-03, -2.289788920384601065e-03, -2.282400846645691889e-03, -2.274939339867196580e-03, -2.267404718273537210e-03, -2.259797302385340746e-03, -2.252117415006508420e-03, -2.244365381210991061e-03, -2.236541528329695841e-03, -2.228646185937323190e-03, -2.220679685838953046e-03, -2.212642362056764251e-03, -2.204534550816645080e-03, -2.196356590534531000e-03, -2.188108821803062473e-03, -2.179791587377859392e-03, -2.171405232163728730e-03, -2.162950103201105936e-03, -2.154426549652156339e-03, -2.145834922786777656e-03, -2.137175575968873562e-03, -2.128448864642174931e-03, -2.119655146316225865e-03, -2.110794780552320733e-03, -2.101868128949198767e-03, -2.092875555128855328e-03, -2.083817424722296356e-03, -2.074694105355035650e-03, -2.065505966632739596e-03, -2.056253380126815081e-03, -2.046936719359723766e-03, -2.037556359790489331e-03, -2.028112678799986156e-03, -2.018606055676321672e-03, -2.009036871599933355e-03, -1.999405509628864389e-03, -1.989712354683912266e-03, -1.979957793533612589e-03, -1.970142214779297025e-03, -1.960266008840141298e-03, -1.950329567937958810e-03, -1.940333286082108121e-03, -1.930277559054421020e-03, -1.920162784393713608e-03, -1.909989361380793520e-03, -1.899757691022988578e-03, -1.889468176038648769e-03, -1.879121220841985847e-03, -1.868717231527378857e-03, -1.858256615853903218e-03, -1.847739783229880627e-03, -1.837167144697080933e-03, -1.826539112915175327e-03, -1.815856102146073308e-03, -1.805118528238050394e-03, -1.794326808610024809e-03, -1.783481362235813565e-03, -1.772582609628096462e-03, -1.761630972822604297e-03, -1.750626875362130790e-03, -1.739570742280604565e-03, -1.728463000086948205e-03, -1.717304076749042677e-03, -1.706094401677717143e-03, -1.694834405710432578e-03, -1.683524521095187227e-03, -1.672165181474358307e-03, -1.660756821868290432e-03, -1.649299878659098726e-03, -1.637794789574415107e-03, -1.626241993670769640e-03, -1.614641931317498807e-03, -1.602995044180207307e-03, -1.591301775204105162e-03, -1.579562568597891493e-03, -1.567777869816914908e-03, -1.555948125546735691e-03, -1.544073783686638560e-03, -1.532155293332825366e-03, -1.520193104761887945e-03, -1.508187669414200530e-03, -1.496139439877064740e-03, -1.484048869868059275e-03, -1.471916414218397843e-03, -1.459742528855953155e-03, -1.447527670788567589e-03, -1.435272298087297057e-03, -1.422976869869402479e-03, -1.410641846281582377e-03, -1.398267688483028530e-03, -1.385854858628626264e-03, -1.373403819851821018e-03, -1.360915036247790878e-03, -1.348388972856510038e-03, -1.335826095645604745e-03, -1.323226871493403314e-03, -1.310591768172013035e-03, -1.297921254330072901e-03, -1.285215799475769149e-03, -1.272475873959882237e-03, -1.259701948958351359e-03, -1.246894496455535880e-03, -1.234053989226921010e-03, -1.221180900821773390e-03, -1.208275705546386913e-03, -1.195338878446561368e-03, -1.182370895290567672e-03, -1.169372232552012489e-03, -1.156343367392464539e-03, -1.143284777644328759e-03, -1.130196941793702248e-03, -1.117080338962963279e-03, -1.103935448893619657e-03, -1.090762751929138423e-03, -1.077562728997507116e-03, -1.064335861594093184e-03, -1.051082631764306509e-03, -1.037803522086443641e-03, -1.024499015654222389e-03, -1.011169596059586367e-03, -9.978157473755110748e-04, -9.844379541385115881e-04, -9.710367013314586109e-04, -9.576124743663553792e-04, -9.441657590668645506e-04, -9.306970416510967122e-04, -9.172068087144401955e-04, -9.036955472119038687e-04, -8.901637444412496608e-04, -8.766118880254890940e-04, -8.630404658954084381e-04, -8.494499662726913685e-04, -8.358408776522746608e-04, -8.222136887852057614e-04, -8.085688886614483166e-04, -7.949069664924277110e-04, -7.812284116938512327e-04, -7.675337138685592482e-04, -7.538233627890643428e-04, -7.400978483804155055e-04, -7.263576607030540738e-04, -7.126032899353896286e-04, -6.988352263567237021e-04, -6.850539603299628244e-04, -6.712599822845673843e-04, -6.574537826991594001e-04, -6.436358520844570694e-04, -6.298066809662091012e-04, -6.159667598678487824e-04, -6.021165792934638720e-04, -5.882566297107762535e-04, -5.743874015338354660e-04, -5.605093851060412909e-04, -5.466230706831593997e-04, -5.327289484160722391e-04, -5.188275083338409746e-04, -5.049192403268192584e-04, -4.910046341292870209e-04, -4.770841793028953001e-04, -4.631583652195109648e-04, -4.492276810440716289e-04, -4.352926157180945577e-04, -4.213536579424142711e-04, -4.074112961604362286e-04, -3.934660185413807552e-04, -3.795183129632495752e-04, -3.655686669961199912e-04, -3.516175678854574407e-04, -3.376655025351574355e-04, -3.237129574909094554e-04, -3.097604189235913619e-04, -2.958083726123844669e-04, -2.818573039282544664e-04, -2.679076978172545095e-04, -2.539600387840648416e-04, -2.400148108752173505e-04, -2.260724976626562967e-04, -2.121335822273299977e-04, -1.981985471425053093e-04, -1.842678744574233857e-04, -1.703420456809773146e-04, -1.564215417651290002e-04, -1.425068430886536396e-04, -1.285984294409557550e-04, -1.146967800054122573e-04, -1.008023733435576224e-04, -8.691568737866478794e-05, -7.303719937936182843e-05, -5.916738594392185210e-05, -4.530672298378503213e-05, -3.145568570761954038e-05, -1.761474860538695696e-05, -3.784385432144545134e-06, 1.003493080781320573e-05, 2.384272787677377340e-05, 3.763853431968683806e-05, 5.142187947990367949e-05, 6.519229351487651567e-05, 7.894930741211600542e-05, 9.269245300477468277e-05, 1.064212629873866587e-04, 1.201352709313665217e-04, 1.338340113007963105e-04, 1.475170194678704621e-04, 1.611838317282952772e-04, 1.748339853169438105e-04, 1.884670184231668243e-04, 2.020824702060562954e-04, 2.156798808099616763e-04, 2.292587913796625184e-04, 2.428187440754936888e-04, 2.563592820887157248e-04, 2.698799496565497912e-04, 2.833802920771181480e-04, 2.968598557248405541e-04, 3.103181880649821724e-04, 3.237548376687864851e-04, 3.371693542285444565e-04, 3.505612885719995683e-04, 3.639301926774864268e-04, 3.772756196885171842e-04, 3.905971239283597221e-04, 4.038942609148517553e-04, 4.171665873748641438e-04, 4.304136612587164987e-04, 4.436350417548291444e-04, 4.568302893040243964e-04, 4.699989656137736819e-04, 4.831406336726886070e-04, 4.962548577646155304e-04, 5.093412034828837150e-04, 5.223992377442921321e-04, 5.354285288033688341e-04, 5.484286462662718359e-04, 5.613991611046417491e-04, 5.743396456696796054e-04, 5.872496737058781682e-04, 6.001288203646896026e-04, 6.129766622184250552e-04, 6.257927772738085910e-04, 6.385767449854253116e-04, 6.513281462696002277e-04, 6.640465635174451139e-04, 6.767315806084485495e-04, 6.893827829239955940e-04, 7.019997573602329306e-04, 7.145820923416265971e-04, 7.271293778339721955e-04, 7.396412053573895966e-04, 7.521171679995203915e-04, 7.645568604283829511e-04, 7.769598789051636268e-04, 7.893258212972229480e-04, 8.016542870907484783e-04, 8.139448774033519437e-04, 8.261971949968673718e-04, 8.384108442897719293e-04, 8.505854313697414158e-04, 8.627205640059568267e-04, 8.748158516614874597e-04, 8.868709055057746350e-04, 8.988853384264395251e-04, 9.108587650417573336e-04, 9.227908017125892662e-04, 9.346810665543010561e-04, 9.465291794488509512e-04, 9.583347620565619814e-04, 9.700974378278031524e-04, 9.818168320148811922e-04, 9.934925716835810161e-04, 1.005124285724643416e-03, 1.016711604865424461e-03, 1.028254161681230834e-03, 1.039751590606563005e-03, 1.051203527946563323e-03, 1.062609611888090709e-03, 1.073969482510894443e-03, 1.085282781798541400e-03, 1.096549153649555583e-03, 1.107768243888224147e-03, 1.118939700275323190e-03, 1.130063172519025702e-03, 1.141138312285480986e-03, 1.152164773209312341e-03, 1.163142210904289080e-03, 1.174070282973681094e-03, 1.184948649020485696e-03, 1.195776970658007487e-03, 1.206554911519707026e-03, 1.217282137269453919e-03, 1.227958315611757780e-03, 1.238583116301336532e-03, 1.249156211153327643e-03, 1.259677274052940993e-03, 1.270145980965112610e-03, 1.280562009944304124e-03, 1.290925041143962428e-03, 1.301234756825922967e-03, 1.311490841369952450e-03, 1.321692981282995144e-03, 1.331840865208296218e-03, 1.341934183934728481e-03, 1.351972630405738141e-03, 1.361955899728375984e-03, 1.371883689182099367e-03, 1.381755698227735531e-03, 1.391571628516134187e-03, 1.401331183896738133e-03, 1.411034070426305442e-03, 1.420679996377294035e-03, 1.430268672246206565e-03, 1.439799810762027463e-03, 1.449273126894383510e-03, 1.458688337861585799e-03, 1.468045163138944264e-03, 1.477343324466433858e-03, 1.486582545856708973e-03, 1.495762553603052596e-03, 1.504883076286776204e-03, 1.513943844785108420e-03, 1.522944592278623098e-03, 1.531885054258645944e-03, 1.540764968534732689e-03, 1.549584075241897466e-03, 1.558342116847726260e-03, 1.567038838159603769e-03, 1.575673986331685037e-03, 1.584247310871744361e-03, 1.592758563648128062e-03, 1.601207498896456806e-03, 1.609593873226296485e-03, 1.617917445627661257e-03, 1.626177977477630873e-03, 1.634375232546680023e-03, 1.642508977004914026e-03, 1.650578979428419862e-03, 1.658585010805350502e-03, 1.666526844541858744e-03, 1.674404256468221656e-03, 1.682217024844604629e-03, 1.689964930366786612e-03, 1.697647756171960813e-03, 1.705265287844256105e-03, 1.712817313420174955e-03, 1.720303623394203296e-03, 1.727724010723885248e-03, 1.735078270835176692e-03, 1.742366201627682399e-03, 1.749587603479466850e-03, 1.756742279252218077e-03, 1.763830034296034414e-03, 1.770850676454154438e-03, 1.777804016067738952e-03, 1.784689865980413140e-03, 1.791508041542726106e-03, 1.798258360616640994e-03, 1.804940643579835795e-03, 1.811554713329843703e-03, 1.818100395288312727e-03, 1.824577517404984929e-03, 1.830985910161663085e-03, 1.837325406576016456e-03, 1.843595842205445531e-03, 1.849797055150713453e-03, 1.855928886059470765e-03, 1.861991178129858426e-03, 1.867983777113846073e-03, 1.873906531320505874e-03, 1.879759291619306771e-03, 1.885541911443204240e-03, 1.891254246791608182e-03, 1.896896156233477456e-03, 1.902467500909993956e-03, 1.907968144537376112e-03, 1.913397953409655319e-03, 1.918756796401043831e-03, 1.924044544968564604e-03, 1.929261073154400980e-03, 1.934406257588114960e-03, 1.939479977488959379e-03, 1.944482114667925310e-03, 1.949412553529728540e-03, 1.954271181074799298e-03, 1.959057886901082249e-03, 1.963772563205741072e-03, 1.968415104786856110e-03, 1.972985409044957211e-03, 1.977483375984490435e-03, 1.981908908215129078e-03, 1.986261910953155373e-03, 1.990542292022571148e-03, 1.994749961856175959e-03, 1.998884833496626136e-03, 2.002946822597313423e-03, 2.006935847423141697e-03, 2.010851828851323211e-03, 2.014694690371954516e-03, 2.018464358088560735e-03, 2.022160760718570878e-03, 2.025783829593660011e-03, 2.029333498659963066e-03, 2.032809704478360634e-03, 2.036212386224432562e-03, 2.039541485688503488e-03, 2.042796947275586465e-03, 2.045978718005082419e-03, 2.049086747510584124e-03, 2.052120988039468543e-03, 2.055081394452392025e-03, 2.057967924222793739e-03, 2.060780537436214793e-03, 2.063519196789532790e-03, 2.066183867590179902e-03, 2.068774517755183565e-03, 2.071291117810150368e-03, 2.073733640888187919e-03, 2.076102062728693142e-03, 2.078396361676073355e-03, 2.080616518678343740e-03, 2.082762517285720923e-03, 2.084834343649020084e-03, 2.086831986518014777e-03, 2.088755437239719556e-03, 2.090604689756560275e-03, 2.092379740604448108e-03, 2.094080588910797198e-03, 2.095707236392428674e-03, 2.097259687353357580e-03, 2.098737948682601918e-03, 2.100142029851721943e-03, 2.101471942912438388e-03, 2.102727702494117112e-03, 2.103909325801078117e-03, 2.105016832609929271e-03, 2.106050245266780346e-03, 2.107009588684301792e-03, 2.107894890338809536e-03, 2.108706180267171538e-03, 2.109443491063663165e-03, 2.110106857876746251e-03, 2.110696318405726277e-03, 2.111211912897355356e-03, 2.111653684142340229e-03, 2.112021677471759631e-03, 2.112315940753387109e-03, 2.112536524387950091e-03, 2.112683481305283138e-03, 2.112756866960412670e-03, 2.112756739329533281e-03, 2.112683158905939371e-03, 2.112536188695814544e-03, 2.112315894213987605e-03, 2.112022343479581874e-03, 2.111655607011592509e-03, 2.111215757824335456e-03, 2.110702871422896840e-03, 2.110117025798416250e-03, 2.109458301423333161e-03, 2.108726781246521038e-03, 2.107922550688401050e-03, 2.107045697635872780e-03, 2.106096312437240586e-03, 2.105074487897046730e-03, 2.103980319270796519e-03, 2.102813904259625329e-03, 2.101575343004864153e-03, 2.100264738082545293e-03, 2.098882194497815688e-03, 2.097427819679274340e-03, 2.095901723473217373e-03, 2.094304018137826701e-03, 2.092634818337245090e-03, 2.090894241135625182e-03, 2.089082405991029776e-03, 2.087199434749298279e-03, 2.085245451637858950e-03, 2.083220583259387613e-03, 2.081124958585432554e-03, 2.078958708949997340e-03, 2.076721968042984437e-03, 2.074414871903566826e-03, 2.072037558913545751e-03, 2.069590169790545397e-03, 2.067072847581198029e-03, 2.064485737654243262e-03, 2.061828987693473808e-03, 2.059102747690749746e-03, 2.056307169938837581e-03, 2.053442409024124841e-03, 2.050508621819431814e-03, 2.047505967476580865e-03, 2.044434607418977451e-03, 2.041294705334110917e-03, 2.038086427165959006e-03, 2.034809941107314744e-03, 2.031465417592101617e-03, 2.028053029287517437e-03, 2.024572951086202506e-03, 2.021025360098280699e-03, 2.017410435643345479e-03, 2.013728359242357869e-03, 2.009979314609512333e-03, 2.006163487644011152e-03, 2.002281066421740356e-03, 1.998332241186918327e-03, 1.994317204343682391e-03, 1.990236150447547911e-03, 1.986089276196848722e-03, 1.981876780424123366e-03, 1.977598864087367746e-03, 1.973255730261267837e-03, 1.968847584128403331e-03, 1.964374632970249633e-03, 1.959837086158296073e-03, 1.955235155144985013e-03, 1.950569053454505016e-03, 1.945838996673796744e-03, 1.941045202443159425e-03, 1.936187890447020827e-03, 1.931267282404606394e-03, 1.926283602060424073e-03, 1.921237075174835225e-03, 1.916127929514514945e-03, 1.910956394842768620e-03, 1.905722702909912669e-03, 1.900427087443524315e-03, 1.895069784138626087e-03, 1.889651030647817621e-03, 1.884171066571403578e-03, 1.878630133447349148e-03, 1.873028474741268322e-03, 1.867366335836318251e-03, 1.861643964023076709e-03, 1.855861608489251706e-03, 1.850019520309443806e-03, 1.844117952434858130e-03, 1.838157159682819904e-03, 1.832137398726381081e-03, 1.826058928083855188e-03, 1.819922008108162004e-03, 1.813726900976284128e-03, 1.807473870678615556e-03, 1.801163183008099283e-03, 1.794795105549638978e-03, 1.788369907669168715e-03, 1.781887860502688430e-03, 1.775349236945506035e-03, 1.768754311641083585e-03, 1.762103360970061674e-03, 1.755396663039198845e-03, 1.748634497670127760e-03, 1.741817146388230202e-03, 1.734944892411401053e-03, 1.728018020638672414e-03, 1.721036817638919685e-03, 1.714001571639494140e-03, 1.706912572514700027e-03, 1.699770111774344091e-03, 1.692574482552179713e-03, 1.685325979594372303e-03, 1.678024899247770613e-03, 1.670671539448269783e-03, 1.663266199709131010e-03, 1.655809181109113874e-03, 1.648300786280702769e-03, 1.640741319398281942e-03, 1.633131086166164821e-03, 1.625470393806639595e-03, 1.617759551048077692e-03, 1.609998868112706358e-03, 1.602188656704740767e-03, 1.594329229998150965e-03, 1.586420902624418846e-03, 1.578463990660538847e-03, 1.570458811616589744e-03, 1.562405684423515476e-03, 1.554304929420853923e-03, 1.546156868344276611e-03, 1.537961824313212756e-03, 1.529720121818502589e-03, 1.521432086709751004e-03, 1.513098046182983266e-03, 1.504718328767960713e-03, 1.496293264315633718e-03, 1.487823183985612432e-03, 1.479308420233270849e-03, 1.470749306797338764e-03, 1.462146178687012774e-03, 1.453499372169110440e-03, 1.444809224755494621e-03, 1.436076075190113139e-03, 1.427300263436045383e-03, 1.418482130662850537e-03, 1.409622019233407750e-03, 1.400720272691062052e-03, 1.391777235746696545e-03, 1.382793254265570404e-03, 1.373768675254356158e-03, 1.364703846848107143e-03, 1.355599118297046504e-03, 1.346454839953469375e-03, 1.337271363258676080e-03, 1.328049040729629721e-03, 1.318788225945840588e-03, 1.309489273536077738e-03, 1.300152539165186838e-03, 1.290778379520667951e-03, 1.281367152299423126e-03, 1.271919216194482066e-03, 1.262434930881500134e-03, 1.252914657005442609e-03, 1.243358756167227321e-03, 1.233767590910178407e-03, 1.224141524706606277e-03, 1.214480921944446120e-03, 1.204786147913507188e-03, 1.195057568792231434e-03, 1.185295551634034513e-03, 1.175500464353615784e-03, 1.165672675713652542e-03, 1.155812555310984464e-03, 1.145920473563070627e-03, 1.135996801694428952e-03, 1.126041911722864674e-03, 1.116056176445858394e-03, 1.106039969426959781e-03, 1.095993664981965944e-03, 1.085917638165263517e-03, 1.075812264756172056e-03, 1.065677921245086410e-03, 1.055514984819789972e-03, 1.045323833351663196e-03, 1.035104845381990771e-03, 1.024858400108028325e-03, 1.014584877369272518e-03, 1.004284657633722905e-03, 9.939581219839152375e-04, 9.836056521031514514e-04, 9.732276302617416794e-04, 9.628244393029964689e-04, 9.523964626294466806e-04, 9.419440841890658811e-04, 9.314676884611259493e-04, 9.209676604426418394e-04, 9.104443856343186941e-04, 8.998982500265211839e-04, 8.893296400856626508e-04, 8.787389427401446317e-04, 8.681265453663104771e-04, 8.574928357748379639e-04, 8.468382021965543526e-04, 8.361630332686124847e-04, 8.254677180206433521e-04, 8.147526458606703598e-04, 8.040182065612653649e-04, 7.932647902456876942e-04, 7.824927873738035016e-04, 7.717025887282345439e-04, 7.608945854004969811e-04, 7.500691687769247456e-04, 7.392267305248401100e-04, 7.283676625785744183e-04, 7.174923571256488445e-04, 7.066012065926979792e-04, 6.956946036316235919e-04, 6.847729411057636812e-04, 6.738366120758258184e-04, 6.628860097860484997e-04, 6.519215276503942651e-04, 6.409435592384841269e-04, 6.299524982617935075e-04, 6.189487385598709457e-04, 6.079326740861809098e-04, 5.969046988945631970e-04, 5.858652071252303537e-04, 5.748145929907501339e-04, 5.637532507625433878e-04, 5.526815747567657977e-04, 5.415999593205905521e-04, 5.305087988184719380e-04, 5.194084876181841778e-04, 5.082994200771124519e-04, 4.971819905285536790e-04, 4.860565932677927037e-04, 4.749236225384207495e-04, 4.637834725186874276e-04, 4.526365373076032166e-04, 4.414832109113394471e-04, 4.303238872294752517e-04, 4.191589600414256304e-04, 4.079888229926087657e-04, 3.968138695808784248e-04, 3.856344931429704572e-04, 3.744510868407237769e-04, 3.632640436475634521e-04, 3.520737563349943646e-04, 3.408806174588811734e-04, 3.296850193459841503e-04, 3.184873540805376242e-04, 3.072880134904547550e-04, 2.960873891341862449e-04, 2.848858722870988014e-04, 2.736838539278663401e-04, 2.624817247254022587e-04, 2.512798750251605422e-04, 2.400786948358675954e-04, 2.288785738162484366e-04, 2.176799012615346959e-04, 2.064830660902371054e-04, 1.952884568309465026e-04, 1.840964616089101882e-04, 1.729074681328839416e-04, 1.617218636820032273e-04, 1.505400350924415720e-04, 1.393623687443367397e-04, 1.281892505487441480e-04, 1.170210659343737274e-04, 1.058581998346278647e-04, 9.470103667450128593e-05, 8.354996035767432098e-05, 7.240535425336543421e-05, 6.126760118345450765e-05, 5.013708340963751178e-05, 3.901418262036876765e-05, 2.789927991807623472e-05, 1.679275580640780355e-05, 5.694990177268111283e-06, -5.393637701871444205e-06, -1.647274920060317176e-05, -2.754196633858244566e-05, -3.860091179785114649e-05, -4.964920893563560302e-05, -6.068648179711078077e-05, -7.171235512762116492e-05, -8.272645438550835261e-05, -9.372840575450274521e-05, -1.047178361561054217e-04, -1.156943732621754073e-04, -1.266576455072369542e-04, -1.376072821007541459e-04, -1.485429130396052541e-04, -1.594641691202777626e-04, -1.703706819510302157e-04, -1.812620839642499276e-04, -1.921380084285084159e-04, -2.029980894607346883e-04, -2.138419620381927760e-04, -2.246692620106818003e-04, -2.354796261124546069e-04, -2.462726919741019499e-04, -2.570480981346270075e-04, -2.678054840532421792e-04, -2.785444901211268790e-04, -2.892647576733759851e-04, -2.999659290006674280e-04, -3.106476473608668393e-04, -3.213095569909746470e-04, -3.319513031184054643e-04, -3.425725319727157417e-04, -3.531728907972934181e-04, -3.637520278604978270e-04, -3.743095924673848552e-04, -3.848452349709975532e-04, -3.953586067836319172e-04, -4.058493603882894251e-04, -4.163171493498559199e-04, -4.267616283262275299e-04, -4.371824530796190596e-04, -4.475792804875989997e-04, -4.579517685540755311e-04, -4.682995764204541029e-04, -4.786223643765085117e-04, -4.889197938713348663e-04, -4.991915275241225409e-04, -5.094372291351150243e-04, -5.196565636962964139e-04, -5.298491974020335098e-04, -5.400147976598789141e-04, -5.501530331011165228e-04, -5.602635735912360037e-04, -5.703460902405902864e-04, -5.804002554147807014e-04, -5.904257427449707786e-04, -6.004222271383954186e-04, -6.103893847885736440e-04, -6.203268931854535873e-04, -6.302344311258662596e-04, -6.401116787233423512e-04, -6.499583174183374504e-04, -6.597740299883953548e-04, -6.695585005578064694e-04, -6.793114146077801167e-04, -6.890324589862116805e-04, -6.987213219173989001e-04, -7.083776930119406370e-04, -7.180012632763465913e-04, -7.275917251225925931e-04, -7.371487723778411254e-04, -7.466721002938821227e-04, -7.561614055565216196e-04, -7.656163862951137315e-04, -7.750367420918177893e-04, -7.844221739909175992e-04, -7.937723845079566048e-04, -8.030870776390365475e-04, -8.123659588698566763e-04, -8.216087351846765221e-04, -8.308151150754513855e-04, -8.399848085506821365e-04, -8.491175271442006137e-04, -8.582129839241233989e-04, -8.672708935015087384e-04, -8.762909720389590361e-04, -8.852729372594744491e-04, -8.942165084547236149e-04, -9.031214064936711906e-04, -9.119873538311361110e-04, -9.208140745158811466e-04, -9.296012941991518624e-04, -9.383487401428387093e-04, -9.470561412275869647e-04, -9.557232279610387285e-04, -9.643497324858288063e-04, -9.729353885874975419e-04, -9.814799317025525108e-04, -9.899830989262515743e-04, -9.984446290203469014e-04, -1.006864262420928196e-03, -1.015241741246011246e-03, -1.023576809303170486e-03, -1.031869212096995060e-03, -1.040118696836679537e-03, -1.048325012443358968e-03, -1.056487909557386490e-03, -1.064607140545726716e-03, -1.072682459509081976e-03, -1.080713622288984738e-03, -1.088700386474978710e-03, -1.096642511411556435e-03, -1.104539758205041371e-03, -1.112391889730558660e-03, -1.120198670638793614e-03, -1.127959867362625292e-03, -1.135675248124014443e-03, -1.143344582940337192e-03, -1.150967643631035974e-03, -1.158544203824180691e-03, -1.166074038962614185e-03, -1.173556926310480655e-03, -1.180992644959401707e-03, -1.188380975834583660e-03, -1.195721701701070797e-03, -1.203014607169705001e-03, -1.210259478703049193e-03, -1.217456104621409633e-03, -1.224604275108597809e-03, -1.231703782217643530e-03, -1.238754419876599532e-03, -1.245755983894079356e-03, -1.252708271964856832e-03, -1.259611083675259971e-03, -1.266464220508691733e-03, -1.273267485850917242e-03, -1.280020684995276416e-03, -1.286723625147976387e-03, -1.293376115433169694e-03, -1.299977966897961339e-03, -1.306528992517467895e-03, -1.313029007199697498e-03, -1.319477827790317736e-03, -1.325875273077590719e-03, -1.332221163796855172e-03, -1.338515322635261797e-03, -1.344757574236391754e-03, -1.350947745204537313e-03, -1.357085664109286723e-03, -1.363171161489781444e-03, -1.369204069858923284e-03, -1.375184223707665455e-03, -1.381111459509077027e-03, -1.386985615722325206e-03, -1.392806532796741310e-03, -1.398574053175672283e-03, -1.404288021300243534e-03, -1.409948283613201778e-03, -1.415554688562544513e-03, -1.421107086605121741e-03, -1.426605330210123411e-03, -1.432049273862616087e-03, -1.437438774066871231e-03, -1.442773689349650121e-03, -1.448053880263489848e-03, -1.453279209389847938e-03, -1.458449541342132262e-03, -1.463564742768800123e-03, -1.468624682356246998e-03, -1.473629230831620049e-03, -1.478578260965763679e-03, -1.483471647575747244e-03, -1.488309267527605914e-03, -1.493090999738954467e-03, -1.497816725181360829e-03, -1.502486326882822602e-03, -1.507099689930188526e-03, -1.511656701471278527e-03, -1.516157250717215616e-03, -1.520601228944444680e-03, -1.524988529496873555e-03, -1.529319047787796844e-03, -1.533592681301766160e-03, -1.537809329596500707e-03, -1.541968894304579507e-03, -1.546071279135102393e-03, -1.550116389875363151e-03, -1.554104134392332278e-03, -1.558034422634074897e-03, -1.561907166631258453e-03, -1.565722280498305433e-03, -1.569479680434705902e-03, -1.573179284726227475e-03, -1.576821013745869846e-03, -1.580404789954990407e-03, -1.583930537904190260e-03, -1.587398184234161411e-03, -1.590807657676523990e-03, -1.594158889054514503e-03, -1.597451811283603831e-03, -1.600686359372108496e-03, -1.603862470421668152e-03, -1.606980083627626349e-03, -1.610039140279440149e-03, -1.613039583760916048e-03, -1.615981359550417709e-03, -1.618864415220959418e-03, -1.621688700440316461e-03, -1.624454166970960931e-03, -1.627160768669963942e-03, -1.629808461488854677e-03, -1.632397203473363650e-03, -1.634926954763088339e-03, -1.637397677591147325e-03, -1.639809336283681558e-03, -1.642161897259317247e-03, -1.644455329028619633e-03, -1.646689602193324078e-03, -1.648864689445633715e-03, -1.650980565567420613e-03, -1.653037207429252156e-03, -1.655034593989486392e-03, -1.656972706293211896e-03, -1.658851527471104587e-03, -1.660671042738278043e-03, -1.662431239393022137e-03, -1.664132106815427621e-03, -1.665773636466051470e-03, -1.667355821884381655e-03, -1.668878658687322075e-03, -1.670342144567574065e-03, -1.671746279291941350e-03, -1.673091064699571903e-03, -1.674376504700115240e-03, -1.675602605271842190e-03, -1.676769374459654953e-03, -1.677876822373049887e-03, -1.678924961183999622e-03, -1.679913805124774902e-03, -1.680843370485673180e-03, -1.681713675612718376e-03, -1.682524740905244186e-03, -1.683276588813427963e-03, -1.683969243835777094e-03, -1.684602732516499602e-03, -1.685177083442842639e-03, -1.685692327242351842e-03, -1.686148496580050461e-03, -1.686545626155542578e-03, -1.686883752700112874e-03, -1.687162914973646408e-03, -1.687383153761579406e-03, -1.687544511871735993e-03, -1.687647034131086647e-03, -1.687690767382484316e-03, -1.687675760481275634e-03, -1.687602064291896745e-03, -1.687469731684360921e-03, -1.687278817530703029e-03, -1.687029378701349622e-03, -1.686721474061425932e-03, -1.686355164466978940e-03, -1.685930512761157083e-03, -1.685447583770317750e-03, -1.684906444300063658e-03, -1.684307163131196824e-03, -1.683649811015649990e-03, -1.682934460672305286e-03, -1.682161186782782326e-03, -1.681330065987139992e-03, -1.680441176879531604e-03, -1.679494600003761861e-03, -1.678490417848838793e-03, -1.677428714844378908e-03, -1.676309577356031649e-03, -1.675133093680792381e-03, -1.673899354042236677e-03, -1.672608450585758499e-03, -1.671260477373677413e-03, -1.669855530380292023e-03, -1.668393707486929721e-03, -1.666875108476854406e-03, -1.665299835030154474e-03, -1.663667990718580274e-03, -1.661979681000284219e-03, -1.660235013214516860e-03, -1.658434096576280690e-03, -1.656577042170873136e-03, -1.654663962948419798e-03, -1.652694973718329616e-03, -1.650670191143674588e-03, -1.648589733735517223e-03, -1.646453721847202000e-03, -1.644262277668552498e-03, -1.642015525220020178e-03, -1.639713590346779815e-03, -1.637356600712788724e-03, -1.634944685794713056e-03, -1.632477976875888791e-03, -1.629956607040169547e-03, -1.627380711165702818e-03, -1.624750425918715119e-03, -1.622065889747170480e-03, -1.619327242874395775e-03, -1.616534627292671566e-03, -1.613688186756760722e-03, -1.610788066777304106e-03, -1.607834414614307773e-03, -1.604827379270428291e-03, -1.601767111484291885e-03, -1.598653763723746363e-03, -1.595487490179007227e-03, -1.592268446755808111e-03, -1.588996791068482926e-03, -1.585672682432970153e-03, -1.582296281859765959e-03, -1.578867752046892933e-03, -1.575387257372691009e-03, -1.571854963888673004e-03, -1.568271039312245938e-03, -1.564635653019464442e-03, -1.560948976037609612e-03, -1.557211181037838552e-03, -1.553422442327742192e-03, -1.549582935843788183e-03, -1.545692839143811281e-03, -1.541752331399407882e-03, -1.537761593388259872e-03, -1.533720807486427468e-03, -1.529630157660655720e-03, -1.525489829460456147e-03, -1.521300010010389172e-03, -1.517060888002091327e-03, -1.512772653686288811e-03, -1.508435498864910997e-03, -1.504049616882948293e-03, -1.499615202620405196e-03, -1.495132452484180261e-03, -1.490601564399833111e-03, -1.486022737803387650e-03, -1.481396173633066533e-03, -1.476722074320930677e-03, -1.472000643784531979e-03, -1.467232087418538075e-03, -1.462416612086208344e-03, -1.457554426110944067e-03, -1.452645739267712172e-03, -1.447690762774505192e-03, -1.442689709283650080e-03, -1.437642792873161917e-03, -1.432550229038060318e-03, -1.427412234681540342e-03, -1.422229028106228180e-03, -1.417000829005333855e-03, -1.411727858453740592e-03, -1.406410338899087261e-03, -1.401048494152860998e-03, -1.395642549381268232e-03, -1.390192731096331642e-03, -1.384699267146750771e-03, -1.379162386708698883e-03, -1.373582320276800451e-03, -1.367959299654865780e-03, -1.362293557946590719e-03, -1.356585329546417060e-03, -1.350834850130108213e-03, -1.345042356645433958e-03, -1.339208087302825060e-03, -1.333332281565880210e-03, -1.327415180141942137e-03, -1.321457024972643585e-03, -1.315458059224303231e-03, -1.309418527278399672e-03, -1.303338674722008539e-03, -1.297218748338105181e-03, -1.291058996095935212e-03, -1.284859667141304614e-03, -1.278621011786890008e-03, -1.272343281502401249e-03, -1.266026728904824043e-03, -1.259671607748635456e-03, -1.253278172915856144e-03, -1.246846680406198419e-03, -1.240377387327208257e-03, -1.233870551884205195e-03, -1.227326433370356249e-03, -1.220745292156716648e-03, -1.214127389682039199e-03, -1.207472988442884199e-03, -1.200782351983445710e-03, -1.194055744885322767e-03, -1.187293432757577458e-03, -1.180495682226381446e-03, -1.173662760924865231e-03, -1.166794937482936194e-03, -1.159892481516928585e-03, -1.152955663619357812e-03, -1.145984755348658903e-03, -1.138980029218765802e-03, -1.131941758688785864e-03, -1.124870218152663071e-03, -1.117765682928690326e-03, -1.110628429249121930e-03, -1.103458734249698455e-03, -1.096256875959229294e-03, -1.089023133289001525e-03, -1.081757786022297194e-03, -1.074461114803908863e-03, -1.067133401129470192e-03, -1.059774927334928120e-03, -1.052385976585980135e-03, -1.044966832867350211e-03, -1.037517780972201358e-03, -1.030039106491528441e-03, -1.022531095803295986e-03, -1.014994036061961109e-03, -1.007428215187642544e-03, -9.998339218552925074e-04, -9.922114454841575969e-04, -9.845610762268218463e-04, -9.768831049584880862e-04, -9.691778232662328491e-04, -9.614455234380709986e-04, -9.536864984521881920e-04, -9.459010419661369141e-04, -9.380894483058657609e-04, -9.302520124549044141e-04, -9.223890300435129462e-04, -9.145007973376844323e-04, -9.065876112282719203e-04, -8.986497692201181114e-04, -8.906875694210047382e-04, -8.827013105307699933e-04, -8.746912918303075641e-04, -8.666578131706672563e-04, -8.586011749619550408e-04, -8.505216781623951882e-04, -8.424196242673797188e-04, -8.342953152983453554e-04, -8.261490537917942417e-04, -8.179811427883309236e-04, -8.097918858215022225e-04, -8.015815869068038590e-04, -7.933505505307068091e-04, -7.850990816393778066e-04, -7.768274856278670291e-04, -7.685360683289115414e-04, -7.602251360017354877e-04, -7.518949953212293201e-04, -7.435459533666263906e-04, -7.351783176104986252e-04, -7.267923959077086113e-04, -7.183884964841890817e-04, -7.099669279258967371e-04, -7.015279991677578295e-04, -6.930720194824361528e-04, -6.845992984692816615e-04, -6.761101460432679226e-04, -6.676048724237571789e-04, -6.590837881234632789e-04, -6.505472039372838531e-04, -6.419954309312617255e-04, -6.334287804313536640e-04, -6.248475640123590498e-04, -6.162520934868660023e-04, -6.076426808940156837e-04, -5.990196384884407263e-04, -5.903832787292164538e-04, -5.817339142686288713e-04, -5.730718579411211164e-04, -5.643974227522754713e-04, -5.557109218674858350e-04, -5.470126686011248093e-04, -5.383029764053267599e-04, -5.295821588587784666e-04, -5.208505296559009547e-04, -5.121084025955464697e-04, -5.033560915700088963e-04, -4.945939105540206240e-04, -4.858221735935694895e-04, -4.770411947949065932e-04, -4.682512883135697820e-04, -4.594527683432175595e-04, -4.506459491046668265e-04, -4.418311448349313258e-04, -4.330086697760940958e-04, -4.241788381643801223e-04, -4.153419642191290805e-04, -4.064983621318995371e-04, -3.976483460553640096e-04, -3.887922300924204861e-04, -3.799303282853054640e-04, -3.710629546045264679e-04, -3.621904229380032772e-04, -3.533130470802178812e-04, -3.444311407211904743e-04, -3.355450174356526668e-04, -3.266549906722380440e-04, -3.177613737424974630e-04, -3.088644798101176383e-04, -2.999646218801749089e-04, -2.910621127880838577e-04, -2.821572651890765383e-04, -2.732503915472697599e-04, -2.643418041248705541e-04, -2.554318149714932592e-04, -2.465207359133792984e-04, -2.376088785427645444e-04, -2.286965542070517178e-04, -2.197840739981896238e-04, -2.108717487420765666e-04, -2.019598889877818079e-04, -1.930488049969875520e-04, -1.841388067334424504e-04, -1.752302038522455098e-04, -1.663233056893448629e-04, -1.574184212510731842e-04, -1.485158592033871457e-04, -1.396159278616411687e-04, -1.307189351799714031e-04, -1.218251887407079516e-04, -1.129349957442123581e-04, -1.040486629982233154e-04, -9.516649690754836919e-05, -8.628880346375612342e-05, -7.741588823469970312e-05, -6.854805635425640709e-05, -5.968561251209189079e-05, -5.082886094325584373e-05, -4.197810541799623538e-05, -3.313364923159705430e-05, -2.429579519405073357e-05, -1.546484561996956149e-05, -6.641102318394703775e-06, 2.175133417239181911e-06, 1.098356081932656723e-05, 1.978387965609399896e-05, 2.857579024157589487e-05, 3.735899344575398207e-05, 4.613319070447661108e-05, 5.489808402935040144e-05, 6.365337601779317775e-05, 7.239876986286759527e-05, 8.113396936306343534e-05, 8.985867893236808171e-05, 9.857260360979877188e-05, 1.072754490693069601e-04, 1.159669216296498696e-04, 1.246467282638319559e-04, 1.333145766090209922e-04, 1.419701749761142974e-04, 1.506132323592958018e-04, 1.592434584457509184e-04, 1.678605636251562130e-04, 1.764642589991399346e-04, 1.850542563908954467e-04, 1.936302683545738338e-04, 2.021920081846413782e-04, 2.107391899253936523e-04, 2.192715283802431183e-04, 2.277887391209755866e-04, 2.362905384971565365e-04, 2.447766436452975848e-04, 2.532467724981062214e-04, 2.617006437935804220e-04, 2.701379770842724242e-04, 2.785584927463274495e-04, 2.869619119884903881e-04, 2.953479568612558687e-04, 3.037163502657987233e-04, 3.120668159628676975e-04, 3.203990785818209750e-04, 3.287128636294461620e-04, 3.370078974987135933e-04, 3.452839074778038878e-04, 3.535406217586018049e-04, 3.617777694455424670e-04, 3.699950805644150811e-04, 3.781922860707375876e-04, 3.863691178585886249e-04, 3.945253087690807326e-04, 4.026605925988248802e-04, 4.107747041085313888e-04, 4.188673790313878322e-04, 4.269383540813956302e-04, 4.349873669618451485e-04, 4.430141563735710310e-04, 4.510184620231619951e-04, 4.590000246313102731e-04, 4.669585859409160775e-04, 4.748938887252755498e-04, 4.828056767960925270e-04, 4.906936950116624245e-04, 4.985576892848198180e-04, 5.063974065908500828e-04, 5.142125949755298924e-04, 5.220030035629505492e-04, 5.297683825632913896e-04, 5.375084832807306649e-04, 5.452230581211314504e-04, 5.529118605996566479e-04, 5.605746453486456062e-04, 5.682111681249677219e-04, 5.758211858176949050e-04, 5.834044564557391323e-04, 5.909607392150700899e-04, 5.984897944263479564e-04, 6.059913835822169394e-04, 6.134652693445843919e-04, 6.209112155520156136e-04, 6.283289872268973909e-04, 6.357183505825825644e-04, 6.430790730306304393e-04, 6.504109231878409808e-04, 6.577136708832383768e-04, 6.649870871651810192e-04, 6.722309443082358877e-04, 6.794450158200260456e-04, 6.866290764481879647e-04, 6.937829021870829541e-04, 7.009062702845844824e-04, 7.079989592487035202e-04, 7.150607488543382411e-04, 7.220914201498112184e-04, 7.290907554633709519e-04, 7.360585384097854435e-04, 7.429945538967281478e-04, 7.498985881311290118e-04, 7.567704286256091064e-04, 7.636098642047234623e-04, 7.704166850111276868e-04, 7.771906825119581684e-04, 7.839316495047332807e-04, 7.906393801235557777e-04, 7.973136698452215143e-04, 8.039543154949979186e-04, 8.105611152527244720e-04, 8.171338686586189374e-04, 8.236723766190512776e-04, 8.301764414124033348e-04, 8.366458666947349790e-04, 8.430804575053986493e-04, 8.494800202727394384e-04, 8.558443628196018638e-04, 8.621732943687790678e-04, 8.684666255485545003e-04, 8.747241683980334827e-04, 8.809457363725042628e-04, 8.871311443486598570e-04, 8.932802086299247366e-04, 8.993927469515809346e-04, 9.054685784858287770e-04, 9.115075238469614542e-04, 9.175094050963154878e-04, 9.234740457471753367e-04, 9.294012707697772062e-04, 9.352909065960940665e-04, 9.411427811245662431e-04, 9.469567237250022277e-04, 9.527325652430538314e-04, 9.584701380049278014e-04, 9.641692758220411687e-04, 9.698298139953369151e-04, 9.754515893198953012e-04, 9.810344400892657968e-04, 9.865782060997816631e-04, 9.920827286549035919e-04, 9.975478505694190378e-04, 1.002973416173564680e-03, 1.008359271317221416e-03, 1.013705263373931549e-03, 1.019011241244850707e-03, 1.024277055362774131e-03, 1.029502557695969982e-03, 1.034687601752027394e-03, 1.039832042581570297e-03, 1.044935736782055379e-03, 1.049998542501388334e-03, 1.055020319441472886e-03, 1.060000928861834849e-03, 1.064940233583064246e-03, 1.069838097990195641e-03, 1.074694388036153076e-03, 1.079508971245021331e-03, 1.084281716715261232e-03, 1.089012495122965510e-03, 1.093701178724963306e-03, 1.098347641361844445e-03, 1.102951758461111426e-03, 1.107513407039978186e-03, 1.112032465708343411e-03, 1.116508814671708129e-03, 1.120942335733794487e-03, 1.125332912299417589e-03, 1.129680429377082811e-03, 1.133984773581581378e-03, 1.138245833136584647e-03, 1.142463497877127141e-03, 1.146637659251979876e-03, 1.150768210326108239e-03, 1.154855045782940360e-03, 1.158898061926596666e-03, 1.162897156684146970e-03, 1.166852229607708187e-03, 1.170763181876549423e-03, 1.174629916299059582e-03, 1.178452337314769838e-03, 1.182230350996239278e-03, 1.185963865050850777e-03, 1.189652788822667369e-03, 1.193297033294118611e-03, 1.196896511087642938e-03, 1.200451136467348221e-03, 1.203960825340541800e-03, 1.207425495259162058e-03, 1.210845065421330352e-03, 1.214219456672589390e-03, 1.217548591507281678e-03, 1.220832394069843200e-03, 1.224070790155891300e-03, 1.227263707213453302e-03, 1.230411074344001706e-03, 1.233512822303459242e-03, 1.236568883503198074e-03, 1.239579192010915615e-03, 1.242543683551446598e-03, 1.245462295507600943e-03, 1.248334966920861553e-03, 1.251161638492013150e-03, 1.253942252581809061e-03, 1.256676753211479055e-03, 1.259365086063228079e-03, 1.262007198480642831e-03, 1.264603039469102677e-03, 1.267152559696074115e-03, 1.269655711491328486e-03, 1.272112448847195461e-03, 1.274522727418666472e-03, 1.276886504523458031e-03, 1.279203739142069189e-03, 1.281474391917721261e-03, 1.283698425156232052e-03, 1.285875802825937799e-03, 1.288006490557389375e-03, 1.290090455643119619e-03, 1.292127667037360579e-03, 1.294118095355558003e-03, 1.296061712873987967e-03, 1.297958493529267465e-03, 1.299808412917737282e-03, 1.301611448294881295e-03, 1.303367578574648198e-03, 1.305076784328686266e-03, 1.306739047785595480e-03, 1.308354352830043248e-03, 1.309922685001867551e-03, 1.311444031495120682e-03, 1.312918381157037731e-03, 1.314345724486955204e-03, 1.315726053635197330e-03, 1.317059362401852649e-03, 1.318345646235552547e-03, 1.319584902232137473e-03, 1.320777129133317946e-03, 1.321922327325251653e-03, 1.323020498837053317e-03, 1.324071647339277466e-03, 1.325075778142325092e-03, 1.326032898194792189e-03, 1.326943016081785125e-03, 1.327806142023155341e-03, 1.328622287871674204e-03, 1.329391467111203312e-03, 1.330113694854723411e-03, 1.330788987842383914e-03, 1.331417364439478699e-03, 1.331998844634317818e-03, 1.332533450036127182e-03, 1.333021203872819874e-03, 1.333462130988752716e-03, 1.333856257842414537e-03, 1.334203612504068683e-03, 1.334504224653327003e-03, 1.334758125576679172e-03, 1.334965348164972570e-03, 1.335125926910825812e-03, 1.335239897905995433e-03, 1.335307298838693361e-03, 1.335328168990832171e-03, 1.335302549235241722e-03, 1.335230482032818576e-03, 1.335112011429622500e-03, 1.334947183053914214e-03, 1.334736044113169927e-03, 1.334478643390998084e-03, 1.334175031244028142e-03, 1.333825259598761396e-03, 1.333429381948338533e-03, 1.332987453349282047e-03, 1.332499530418163177e-03, 1.331965671328227008e-03, 1.331385935805979182e-03, 1.330760385127708213e-03, 1.330089082115939710e-03, 1.329372091135884318e-03, 1.328609478091786556e-03, 1.327801310423250020e-03, 1.326947657101516407e-03, 1.326048588625663429e-03, 1.325104177018795147e-03, 1.324114495824145997e-03, 1.323079620101151425e-03, 1.321999626421471253e-03, 1.320874592864949284e-03, 1.319704599015543650e-03, 1.318489725957187322e-03, 1.317230056269622388e-03, 1.315925674024157575e-03, 1.314576664779401691e-03, 1.313183115576943951e-03, 1.311745114936967074e-03, 1.310262752853837403e-03, 1.308736120791639942e-03, 1.307165311679652680e-03, 1.305550419907783831e-03, 1.303891541321978292e-03, 1.302188773219540175e-03, 1.300442214344430187e-03, 1.298651964882541112e-03, 1.296818126456863139e-03, 1.294940802122661761e-03, 1.293020096362596481e-03, 1.291056115081764709e-03, 1.289048965602741965e-03, 1.286998756660528206e-03, 1.284905598397524055e-03, 1.282769602358364370e-03, 1.280590881484785191e-03, 1.278369550110422829e-03, 1.276105723955552659e-03, 1.273799520121794314e-03, 1.271451057086795625e-03, 1.269060454698826140e-03, 1.266627834171363482e-03, 1.264153318077657811e-03, 1.261637030345153605e-03, 1.259079096250011187e-03, 1.256479642411477762e-03, 1.253838796786223113e-03, 1.251156688662736442e-03, 1.248433448655534130e-03, 1.245669208699429296e-03, 1.242864102043738901e-03, 1.240018263246424075e-03, 1.237131828168194000e-03, 1.234204933966629326e-03, 1.231237719090155303e-03, 1.228230323272079538e-03, 1.225182887524551255e-03, 1.222095554132434682e-03, 1.218968466647229716e-03, 1.215801769880885683e-03, 1.212595609899620947e-03, 1.209350134017658394e-03, 1.206065490790956575e-03, 1.202741830010919380e-03, 1.199379302698000980e-03, 1.195978061095338742e-03, 1.192538258662336707e-03, 1.189060050068172945e-03, 1.185543591185306495e-03, 1.181989039082974096e-03, 1.178396552020560080e-03, 1.174766289441008535e-03, 1.171098411964224427e-03, 1.167393081380289953e-03, 1.163650460642861543e-03, 1.159870713862364965e-03, 1.156054006299164424e-03, 1.152200504356851347e-03, 1.148310375575298985e-03, 1.144383788623803532e-03, 1.140420913294190120e-03, 1.136421920493817543e-03, 1.132386982238607056e-03, 1.128316271646049272e-03, 1.124209962928106104e-03, 1.120068231384145890e-03, 1.115891253393859646e-03, 1.111679206410058282e-03, 1.107432268951529224e-03, 1.103150620595808474e-03, 1.098834441971982805e-03, 1.094483914753358392e-03, 1.090099221650178869e-03, 1.085680546402347521e-03, 1.081228073771984015e-03, 1.076741989536078277e-03, 1.072222480479102314e-03, 1.067669734385496465e-03, 1.063083940032221808e-03, 1.058465287181312338e-03, 1.053813966572214860e-03, 1.049130169914367847e-03, 1.044414089879560628e-03, 1.039665920094249001e-03, 1.034885855132055155e-03, 1.030074090505983531e-03, 1.025230822660772208e-03, 1.020356248965206781e-03, 1.015450567704311068e-03, 1.010513978071613493e-03, 1.005546680161382034e-03, 1.000548874960741855e-03, 9.955207643418668810e-04, 9.904625510541418838e-04, 9.853744387162107279e-04, 9.802566318081050618e-04, 9.751093356632819370e-04, 9.699327564607153123e-04, 9.647271012168377215e-04, 9.594925777775743141e-04, 9.542293948103555386e-04, 9.489377617959874689e-04, 9.436178890206282747e-04, 9.382699875677296721e-04, 9.328942693098521725e-04, 9.274909469005708637e-04, 9.220602337663724073e-04, 9.166023440983521106e-04, 9.111174928441763020e-04, 9.056058956998054230e-04, 9.000677691011814505e-04, 8.945033302161382307e-04, 8.889127969360583262e-04, 8.832963878675109985e-04, 8.776543223241176561e-04, 8.719868203180868374e-04, 8.662941025519472777e-04, 8.605763904102082260e-04, 8.548339059509340015e-04, 8.490668718973875054e-04, 8.432755116296690705e-04, 8.374600491762256406e-04, 8.316207092054559010e-04, 8.257577170173019659e-04, 8.198712985347126952e-04, 8.139616802952159749e-04, 8.080290894424101145e-04, 8.020737537175063117e-04, 7.960959014507400363e-04, 7.900957615528756556e-04, 7.840735635067089997e-04, 7.780295373584304990e-04, 7.719639137090982591e-04, 7.658769237061030044e-04, 7.597687990344968462e-04, 7.536397719084299285e-04, 7.474900750625995422e-04, 7.413199417434725332e-04, 7.351296057008325363e-04, 7.289193011790576779e-04, 7.226892629083808217e-04, 7.164397260964157702e-04, 7.101709264193303405e-04, 7.038831000132227296e-04, 6.975764834654804222e-04, 6.912513138059971779e-04, 6.849078284985137249e-04, 6.785462654319569364e-04, 6.721668629116212554e-04, 6.657698596505078710e-04, 6.593554947606233450e-04, 6.529240077441652657e-04, 6.464756384848308491e-04, 6.400106272390439005e-04, 6.335292146272634159e-04, 6.270316416251297707e-04, 6.205181495547575999e-04, 6.139889800760048267e-04, 6.074443751776164658e-04, 6.008845771684934341e-04, 5.943098286689637482e-04, 5.877203726019104976e-04, 5.811164521840289469e-04, 5.744983109171132368e-04, 5.678661925790867791e-04, 5.612203412154260010e-04, 5.545610011302659842e-04, 5.478884168775232343e-04, 5.412028332523002340e-04, 5.345044952819250550e-04, 5.277936482172163740e-04, 5.210705375237395997e-04, 5.143354088729195587e-04, 5.075885081332942366e-04, 5.008300813617724227e-04, 4.940603747947466123e-04, 4.872796348393572115e-04, 4.804881080647489876e-04, 4.736860411931917252e-04, 4.668736810913507178e-04, 4.600512747615535195e-04, 4.532190693329189485e-04, 4.463773120526464983e-04, 4.395262502772244884e-04, 4.326661314637179575e-04, 4.257972031609243927e-04, 4.189197130006590752e-04, 4.120339086890591825e-04, 4.051400379977358312e-04, 3.982383487550915152e-04, 3.913290888376291950e-04, 3.844125061611313918e-04, 3.774888486719866240e-04, 3.705583643385449008e-04, 3.636213011422263970e-04, 3.566779070690375168e-04, 3.497284301007847905e-04, 3.427731182062867653e-04, 3.358122193329186921e-04, 3.288459813977606650e-04, 3.218746522790085179e-04, 3.148984798073750169e-04, 3.079177117573507027e-04, 3.009325958386286108e-04, 2.939433796875278522e-04, 2.869503108582935422e-04, 2.799536368145437459e-04, 2.729536049207351264e-04, 2.659504624334856418e-04, 2.589444564930812841e-04, 2.519358341148838858e-04, 2.449248421808643142e-04, 2.379117274309715442e-04, 2.308967364546693219e-04, 2.238801156824832641e-04, 2.168621113774124045e-04, 2.098429696265062441e-04, 2.028229363324506648e-04, 1.958022572050234131e-04, 1.887811777527103718e-04, 1.817599432743553594e-04, 1.747387988505725719e-04, 1.677179893355776070e-04, 1.606977593487146953e-04, 1.536783532659995166e-04, 1.466600152119983363e-04, 1.396429890513185628e-04, 1.326275183803704918e-04, 1.256138465191267736e-04, 1.186022165027489838e-04, 1.115928710733831813e-04, 1.045860526719730703e-04, 9.758200342993907388e-05, 9.058096516102830521e-05, 8.358317935318291549e-05, 7.658888716027496336e-05, 6.959832939401281858e-05, 6.261174651586647153e-05, 5.562937862886168798e-05, 4.865146546956139223e-05, 4.167824639996744931e-05, 3.470996039954273271e-05, 2.774684605708660799e-05, 2.078914156278256393e-05, 1.383708470026656214e-05, 6.890912838566480117e-06, -4.913707578592772503e-08, -6.982828526621039276e-06, -1.390992543612590632e-05, -2.083019217266539693e-05, -2.774339355856376133e-05, -3.464929487811433068e-05, -4.154766188516390599e-05, -4.843826081099238378e-05, -5.532085837216674034e-05, -6.219522177805544383e-05, -6.906111873871813929e-05, -7.591831747252026480e-05, -8.276658671374057961e-05, -8.960569572030233879e-05, -9.643541428133037209e-05, -1.032555127246812069e-04, -1.100657619245988365e-04, -1.168659333091944143e-04, -1.236557988678968500e-04, -1.304351311590309090e-04, -1.372037033171992601e-04, -1.439612890607381678e-04, -1.507076626990466858e-04, -1.574425991400530691e-04, -1.641658738975048412e-04, -1.708772630982331113e-04, -1.775765434895319522e-04, -1.842634924463679115e-04, -1.909378879785556676e-04, -1.975995087380538978e-04, -2.042481340260857484e-04, -2.108835438002127391e-04, -2.175055186816232851e-04, -2.241138399620029608e-04, -2.307082896106800701e-04, -2.372886502817431078e-04, -2.438547053208198700e-04, -2.504062387722173311e-04, -2.569430353857779493e-04, -2.634648806237349411e-04, -2.699715606676703116e-04, -2.764628624253014717e-04, -2.829385735372370652e-04, -2.893984823838406184e-04, -2.958423780919223448e-04, -3.022700505413981518e-04, -3.086812903720562011e-04, -3.150758889901330824e-04, -3.214536385749574253e-04, -3.278143320854560333e-04, -3.341577632667929419e-04, -3.404837266568277402e-04, -3.467920175925417992e-04, -3.530824322165747103e-04, -3.593547674835782520e-04, -3.656088211665443899e-04, -3.718443918632335660e-04, -3.780612790024309245e-04, -3.842592828501668130e-04, -3.904382045160389829e-04, -3.965978459593645688e-04, -4.027380099952789427e-04, -4.088585003010300500e-04, -4.149591214218714815e-04, -4.210396787772009014e-04, -4.270999786666738627e-04, -4.331398282759865628e-04, -4.391590356829823947e-04, -4.451574098635047963e-04, -4.511347606972195240e-04, -4.570908989735368902e-04, -4.630256363973645948e-04, -4.689387855948216866e-04, -4.748301601190486410e-04, -4.806995744558443975e-04, -4.865468440292690833e-04, -4.923717852073391642e-04, -4.981742153075393665e-04, -5.039539526023775317e-04, -5.097108163248212408e-04, -5.154446266738409600e-04, -5.211552048197731551e-04, -5.268423729096598793e-04, -5.325059540726688077e-04, -5.381457724253405593e-04, -5.437616530768128167e-04, -5.493534221341171957e-04, -5.549209067073139186e-04, -5.604639349145882146e-04, -5.659823358874331318e-04, -5.714759397756634298e-04, -5.769445777523928270e-04, -5.823880820190882254e-04, -5.878062858104544756e-04, -5.931990233993579553e-04, -5.985661301016203693e-04, -6.039074422809192350e-04, -6.092227973535132689e-04, -6.145120337929350311e-04, -6.197749911347634737e-04, -6.250115099812222604e-04, -6.302214320057560742e-04, -6.354045999576603786e-04, -6.405608576665803135e-04, -6.456900500469258926e-04, -6.507920231024541665e-04, -6.558666239304962019e-04, -6.609137007263934200e-04, -6.659331027878739786e-04, -6.709246805191642835e-04, -6.758882854353462886e-04, -6.808237701664931855e-04, -6.857309884617664945e-04, -6.906097951935905683e-04, -6.954600463616633817e-04, -7.002815990969358780e-04, -7.050743116656409733e-04, -7.098380434731914801e-04, -7.145726550680096172e-04, -7.192780081454444498e-04, -7.239539655515225781e-04, -7.286003912866587107e-04, -7.332171505094309651e-04, -7.378041095401980916e-04, -7.423611358647298156e-04, -7.468880981377335306e-04, -7.513848661864549333e-04, -7.558513110141166797e-04, -7.602873048033330795e-04, -7.646927209195589431e-04, -7.690674339144149387e-04, -7.734113195289488716e-04, -7.777242546969679801e-04, -7.820061175482145637e-04, -7.862567874114939062e-04, -7.904761448179203768e-04, -7.946640715038440174e-04, -7.988204504139658890e-04, -8.029451657043791503e-04, -8.070381027453751898e-04, -8.110991481244583584e-04, -8.151281896491629434e-04, -8.191251163498158242e-04, -8.230898184823724198e-04, -8.270221875310948849e-04, -8.309221162111916003e-04, -8.347894984715085965e-04, -8.386242294970661527e-04, -8.424262057115749049e-04, -8.461953247799755898e-04, -8.499314856108412027e-04, -8.536345883587958530e-04, -8.573045344268170670e-04, -8.609412264686017342e-04, -8.645445683908025997e-04, -8.681144653551939577e-04, -8.716508237809084689e-04, -8.751535513465194798e-04, -8.786225569920904895e-04, -8.820577509212572517e-04, -8.854590446031705567e-04, -8.888263507744094145e-04, -8.921595834409556036e-04, -8.954586578799268769e-04, -8.987234906414228158e-04, -9.019539995503202687e-04, -9.051501037078724414e-04, -9.083117234934525103e-04, -9.114387805661303783e-04, -9.145311978662115909e-04, -9.175888996168072610e-04, -9.206118113252717214e-04, -9.235998597846069996e-04, -9.265529730748901707e-04, -9.294710805645713635e-04, -9.323541129117488913e-04, -9.352020020654370092e-04, -9.380146812667520314e-04, -9.407920850500130130e-04, -9.435341492439080265e-04, -9.462408109724991089e-04, -9.489120086562512777e-04, -9.515476820129577891e-04, -9.541477720587016086e-04, -9.567122211086919814e-04, -9.592409727780684767e-04, -9.617339719827181508e-04, -9.641911649399729058e-04, -9.666124991692828881e-04, -9.689979234928709122e-04, -9.713473880363282303e-04, -9.736608442291015556e-04, -9.759382448050748452e-04, -9.781795438029358691e-04, -9.803846965666057709e-04, -9.825536597456499804e-04, -9.846863912954841036e-04, -9.867828504777338781e-04, -9.888429978604069102e-04, -9.908667953180511859e-04, -9.928542060319244227e-04, -9.948051944900465453e-04, -9.967197264872257063e-04, -9.985977691250706462e-04, -1.000439290811920871e-03, -1.002244261262728257e-03, -1.004012651498933885e-03, -1.005744433848253586e-03, -1.007439581944457197e-03, -1.009098070727040049e-03, -1.010719876440943675e-03, -1.012304976636147500e-03, -1.013853350167237110e-03, -1.015364977192958216e-03, -1.016839839175703603e-03, -1.018277918880916393e-03, -1.019679200376535791e-03, -1.021043669032315349e-03, -1.022371311519126684e-03, -1.023662115808248027e-03, -1.024916071170539796e-03, -1.026133168175637732e-03, -1.027313398691084238e-03, -1.028456755881388806e-03, -1.029563234207076959e-03, -1.030632829423679120e-03, -1.031665538580666579e-03, -1.032661360020375963e-03, -1.033620293376845672e-03, -1.034542339574627372e-03, -1.035427500827582102e-03, -1.036275780637578364e-03, -1.037087183793175462e-03, -1.037861716368275629e-03, -1.038599385720700681e-03, -1.039300200490756105e-03, -1.039964170599718156e-03, -1.040591307248313162e-03, -1.041181622915129598e-03, -1.041735131354980725e-03, -1.042251847597259638e-03, -1.042731787944210830e-03, -1.043174969969173568e-03, -1.043581412514797734e-03, -1.043951135691195686e-03, -1.044284160874050767e-03, -1.044580510702703248e-03, -1.044840209078177519e-03, -1.045063281161165902e-03, -1.045249753369979946e-03, -1.045399653378462253e-03, -1.045513010113816770e-03, -1.045589853754478769e-03, -1.045630215727840623e-03, -1.045634128708029841e-03, -1.045601626613570445e-03, -1.045532744605060394e-03, -1.045427519082770939e-03, -1.045285987684217797e-03, -1.045108189281689385e-03, -1.044894163979737329e-03, -1.044643953112622510e-03, -1.044357599241716459e-03, -1.044035146152874540e-03, -1.043676638853751693e-03, -1.043282123571096258e-03, -1.042851647747981142e-03, -1.042385260041021541e-03, -1.041883010317524788e-03, -1.041344949652629141e-03, -1.040771130326378609e-03, -1.040161605820758743e-03, -1.039516430816723102e-03, -1.038835661191144693e-03, -1.038119354013733366e-03, -1.037367567543953217e-03, -1.036580361227832205e-03, -1.035757795694809301e-03, -1.034899932754482091e-03, -1.034006835393333360e-03, -1.033078567771453758e-03, -1.032115195219177961e-03, -1.031116784233694367e-03, -1.030083402475655014e-03, -1.029015118765692688e-03, -1.027912003080923287e-03, -1.026774126551441464e-03, -1.025601561456726063e-03, -1.024394381222034495e-03, -1.023152660414776947e-03, -1.021876474740819911e-03, -1.020565901040774949e-03, -1.019221017286238689e-03, -1.017841902576026520e-03, -1.016428637132312180e-03, -1.014981302296791635e-03, -1.013499980526782118e-03, -1.011984755391283873e-03, -1.010435711567006338e-03, -1.008852934834389556e-03, -1.007236512073532127e-03, -1.005586531260141935e-03, -1.003903081461424412e-03, -1.002186252831929617e-03, -1.000436136609384559e-03, -9.986528251104910461e-04, -9.968364117266456919e-04, -9.949869909197100060e-04, -9.931046582176681660e-04, -9.911895102102659220e-04, -9.892416445446826790e-04, -9.872611599210667516e-04, -9.852481560881189756e-04, -9.832027338386147355e-04, -9.811249950048769874e-04, -9.790150424542468956e-04, -9.768729800845134866e-04, -9.746989128192940811e-04, -9.724929466033987871e-04, -9.702551883981759117e-04, -9.679857461767852733e-04, -9.656847289194843073e-04, -9.633522466088544327e-04, -9.609884102250294781e-04, -9.585933317408363956e-04, -9.561671241169576599e-04, -9.537099012970576706e-04, -9.512217782028455125e-04, -9.487028707291379325e-04, -9.461532957389022589e-04, -9.435731710582193066e-04, -9.409626154712719777e-04, -9.383217487152996014e-04, -9.356506914754482993e-04, -9.329495653797184943e-04, -9.302184929937970612e-04, -9.274575978158340747e-04, -9.246670042713208207e-04, -9.218468377077907588e-04, -9.189972243895846689e-04, -9.161182914925853314e-04, -9.132101670988634120e-04, -9.102729801913593414e-04, -9.073068606485362470e-04, -9.043119392389385594e-04, -9.012883476158068882e-04, -8.982362183116377125e-04, -8.951556847326868011e-04, -8.920468811534831496e-04, -8.889099427113010673e-04, -8.857450054006482014e-04, -8.825522060676369018e-04, -8.793316824044129397e-04, -8.760835729435631925e-04, -8.728080170524128495e-04, -8.695051549273914628e-04, -8.661751275883468500e-04, -8.628180768727989301e-04, -8.594341454302085234e-04, -8.560234767162485346e-04, -8.525862149869356012e-04, -8.491225052929162386e-04, -8.456324934735877548e-04, -8.421163261512045264e-04, -8.385741507250963830e-04, -8.350061153656844612e-04, -8.314123690086001666e-04, -8.277930613487567571e-04, -8.241483428343486083e-04, -8.204783646608863673e-04, -8.167832787652278773e-04, -8.130632378194886482e-04, -8.093183952250334245e-04, -8.055489051064373962e-04, -8.017549223053490725e-04, -7.979366023744099675e-04, -7.940941015711598661e-04, -7.902275768518467886e-04, -7.863371858652950684e-04, -7.824230869467139072e-04, -7.784854391115291318e-04, -7.745244020491238784e-04, -7.705401361166203675e-04, -7.665328023326656911e-04, -7.625025623711080948e-04, -7.584495785547311570e-04, -7.543740138489842808e-04, -7.502760318556131154e-04, -7.461557968063408253e-04, -7.420134735565646475e-04, -7.378492275788789759e-04, -7.336632249568144195e-04, -7.294556323783818116e-04, -7.252266171296103655e-04, -7.209763470882260160e-04, -7.167049907171195357e-04, -7.124127170579132046e-04, -7.080996957245257444e-04, -7.037660968966224367e-04, -6.994120913131502424e-04, -6.950378502658434302e-04, -6.906435455926471321e-04, -6.862293496711998784e-04, -6.817954354123171093e-04, -6.773419762533485931e-04, -6.728691461516917533e-04, -6.683771195780882635e-04, -6.638660715101387831e-04, -6.593361774256499682e-04, -6.547876132959252115e-04, -6.502205555792787278e-04, -6.456351812142635191e-04, -6.410316676130697758e-04, -6.364101926548730798e-04, -6.317709346790990150e-04, -6.271140724787720210e-04, -6.224397852938416947e-04, -6.177482528044181279e-04, -6.130396551240857410e-04, -6.083141727932062743e-04, -6.035719867721291891e-04, -5.988132784344822991e-04, -5.940382295604081922e-04, -5.892470223298478145e-04, -5.844398393157047931e-04, -5.796168634771106968e-04, -5.747782781526720834e-04, -5.699242670536212689e-04, -5.650550142570497135e-04, -5.601707041991507317e-04, -5.552715216683341577e-04, -5.503576517984547440e-04, -5.454292800620228875e-04, -5.404865922633174521e-04, -5.355297745315843513e-04, -5.305590133142541048e-04, -5.255744953699736715e-04, -5.205764077619130185e-04, -5.155649378508469355e-04, -5.105402732882350064e-04, -5.055026020095174447e-04, -5.004521122271284950e-04, -4.953889924236790782e-04, -4.903134313451270763e-04, -4.852256179938381681e-04, -4.801257416217534577e-04, -4.750139917235496768e-04, -4.698905580296915629e-04, -4.647556304995963442e-04, -4.596093993147826119e-04, -4.544520548719284988e-04, -4.492837877760317189e-04, -4.441047888335062353e-04, -4.389152490453525454e-04, -4.337153596001922786e-04, -4.285053118674351743e-04, -4.232852973904220996e-04, -4.180555078794770483e-04, -4.128161352050583981e-04, -4.075673713909169988e-04, -4.023094086071427500e-04, -3.970424391633220387e-04, -3.917666555017125778e-04, -3.864822501902346902e-04, -3.811894159157528327e-04, -3.758883454771375695e-04, -3.705792317783217996e-04, -3.652622678215956711e-04, -3.599376467006085980e-04, -3.546055615935619345e-04, -3.492662057563908611e-04, -3.439197725158356280e-04, -3.385664552626355844e-04, -3.332064474447201177e-04, -3.278399425602990334e-04, -3.224671341510608664e-04, -3.170882157953855592e-04, -3.117033811014453034e-04, -3.063128237004334267e-04, -3.009167372397281181e-04, -2.955153153761375779e-04, -2.901087517690214049e-04, -2.846972400735334153e-04, -2.792809739338741643e-04, -2.738601469764329337e-04, -2.684349528030499036e-04, -2.630055849842917134e-04, -2.575722370526098209e-04, -2.521351024956329772e-04, -2.466943747494730371e-04, -2.412502471918466995e-04, -2.358029131355176286e-04, -2.303525658215004046e-04, -2.248993984122740948e-04, -2.194436039852368985e-04, -2.139853755259360903e-04, -2.085249059213123023e-04, -2.030623879531936332e-04, -1.975980142914925510e-04, -1.921319774876060560e-04, -1.866644699678138384e-04, -1.811956840265718913e-04, -1.757258118199292354e-04, -1.702550453589622888e-04, -1.647835765030968317e-04, -1.593115969535642237e-04, -1.538392982468665096e-04, -1.483668717481367665e-04, -1.428945086446425363e-04, -1.374223999392225001e-04, -1.319507364438163657e-04, -1.264797087728732712e-04, -1.210095073368948457e-04, -1.155403223359896954e-04, -1.100723437533229792e-04, -1.046057613486993143e-04, -9.914076465215889539e-05, -9.367754295746940827e-05, -8.821628531575050123e-05, -8.275718052912717714e-05, -7.730041714419935912e-05, -7.184618344584266648e-05, -6.639466745077478619e-05, -6.094605690113776166e-05, -5.550053925834408836e-05, -5.005830169662453858e-05, -4.461953109678957406e-05, -3.918441403999252718e-05, -3.375313680139212756e-05, -2.832588534394949684e-05, -2.290284531224215863e-05, -1.748420202617706522e-05, -1.207014047483894625e-05, -6.660845310356076629e-06, -1.256500841665996954e-06, 4.142708971569870839e-06, 9.536600525112154351e-06, 1.492499057619274568e-05, 2.030769624967599987e-05, 2.568453504408354536e-05, 3.105532483760099782e-05, 3.641988389418168801e-05, 4.177803086951488985e-05, 4.712958481697404487e-05, 5.247436519366268352e-05, 5.781219186632302208e-05, 6.314288511721191828e-05, 6.846626565015140385e-05, 7.378215459624679388e-05, 7.909037351983140118e-05, 8.439074442438941083e-05, 8.968308975821263722e-05, 9.496723242034604481e-05, 1.002429957663184478e-04, 1.055102036138641974e-04, 1.107686802487392895e-04, 1.160182504303993719e-04, 1.212587393976569491e-04, 1.264899728744298352e-04, 1.317117770753533778e-04, 1.369239787113688423e-04, 1.421264049954059868e-04, 1.473188836479250561e-04, 1.525012429024379188e-04, 1.576733115111194098e-04, 1.628349187502669388e-04, 1.679858944258158266e-04, 1.731260688787515884e-04, 1.782552729906257849e-04, 1.833733381889341807e-04, 1.884800964524708860e-04, 1.935753803167702394e-04, 1.986590228794117541e-04, 2.037308578053001560e-04, 2.087907193320324008e-04, 2.138384422751280010e-04, 2.188738620332202132e-04, 2.238968145934106143e-04, 2.289071365362968448e-04, 2.339046650412136428e-04, 2.388892378914447931e-04, 2.438606934791750038e-04, 2.488188708107133486e-04, 2.537636095115039341e-04, 2.586947498311209276e-04, 2.636121326483504570e-04, 2.685155994761332710e-04, 2.734049924664817052e-04, 2.782801544154755221e-04, 2.831409287681265646e-04, 2.879871596232135922e-04, 2.928186917381939342e-04, 2.976353705339744127e-04, 3.024370420997210258e-04, 3.072235531975709452e-04, 3.119947512674359647e-04, 3.167504844316666301e-04, 3.214906014996939251e-04, 3.262149519727448464e-04, 3.309233860484240793e-04, 3.356157546252652073e-04, 3.402919093073620985e-04, 3.449517024088623275e-04, 3.495949869584225956e-04, 3.542216167038053686e-04, 3.588314461161693360e-04, 3.634243303945546466e-04, 3.680001254703288969e-04, 3.725586880113943228e-04, 3.770998754266320532e-04, 3.816235458701503934e-04, 3.861295582455114245e-04, 3.906177722100302447e-04, 3.950880481789426427e-04, 3.995402473295382923e-04, 4.039742316053696806e-04, 4.083898637203266474e-04, 4.127870071626776947e-04, 4.171655261991858896e-04, 4.215252858790878858e-04, 4.258661520380436181e-04, 4.301879913021596684e-04, 4.344906710918574277e-04, 4.387740596257891259e-04, 4.430380259246505920e-04, 4.472824398150707201e-04, 4.515071719333702905e-04, 4.557120937292936848e-04, 4.598970774697981189e-04, 4.640619962427209016e-04, 4.682067239604121634e-04, 4.723311353634274861e-04, 4.764351060240935181e-04, 4.805185123500354269e-04, 4.845812315878257810e-04, 4.886231418263460103e-04, 4.926441220003196586e-04, 4.966440518938045447e-04, 5.006228121434661308e-04, 5.045802842420517948e-04, 5.085163505416884309e-04, 5.124308942571550052e-04, 5.163237994692042266e-04, 5.201949511277739529e-04, 5.240442350551527363e-04, 5.278715379492098783e-04, 5.316767473864941881e-04, 5.354597518253069368e-04, 5.392204406088238174e-04, 5.429587039680883187e-04, 5.466744330250291684e-04, 5.503675197953786799e-04, 5.540378571916648254e-04, 5.576853390260723365e-04, 5.613098600132774597e-04, 5.649113157733260792e-04, 5.684896028344019019e-04, 5.720446186355427091e-04, 5.755762615294334784e-04, 5.790844307850486926e-04, 5.825690265902807707e-04, 5.860299500546479719e-04, 5.894671032117649668e-04, 5.928803890219376581e-04, 5.962697113747352342e-04, 5.996349750913461396e-04, 6.029760859271178193e-04, 6.062929505739329643e-04, 6.095854766625461840e-04, 6.128535727649765154e-04, 6.160971483967860908e-04, 6.193161140193128352e-04, 6.225103810419527119e-04, 6.256798618243304038e-04, 6.288244696784329145e-04, 6.319441188707793826e-04, 6.350387246244833424e-04, 6.381082031213075037e-04, 6.411524715036643219e-04, 6.441714478766291446e-04, 6.471650513098705249e-04, 6.501332018395310957e-04, 6.530758204701513775e-04, 6.559928291764805051e-04, 6.588841509052539933e-04, 6.617497095770068487e-04, 6.645894300877820552e-04, 6.674032383107944989e-04, 6.701910610981423816e-04, 6.729528262823973117e-04, 6.756884626781701087e-04, 6.783979000837320108e-04, 6.810810692824369314e-04, 6.837379020442409683e-04, 6.863683311271892790e-04, 6.889722902787230856e-04, 6.915497142371327234e-04, 6.941005387328573820e-04, 6.966247004897616448e-04, 6.991221372264366405e-04, 7.015927876574044831e-04, 7.040365914942878006e-04, 7.064534894469953101e-04, 7.088434232248260781e-04, 7.112063355375188110e-04, 7.135421700963402855e-04, 7.158508716150683952e-04, 7.181323858109666313e-04, 7.203866594057007754e-04, 7.226136401262718556e-04, 7.248132767058608483e-04, 7.269855188846295786e-04, 7.291303174105546884e-04, 7.312476240401567622e-04, 7.333373915392041916e-04, 7.353995736834247369e-04, 7.374341252591368580e-04, 7.394410020638285700e-04, 7.414201609067992910e-04, 7.433715596096182425e-04, 7.452951570066621055e-04, 7.471909129456056221e-04, 7.490587882877828511e-04, 7.508987449086383052e-04, 7.527107456980605595e-04, 7.544947545606843107e-04, 7.562507364162082647e-04, 7.579786571996227108e-04, 7.596784838614114004e-04, 7.613501843677586292e-04, 7.629937277006503937e-04, 7.646090838580184811e-04, 7.661962238537797180e-04, 7.677551197178618825e-04, 7.692857444962511925e-04, 7.707880722508854031e-04, 7.722620780596120647e-04, 7.737077380161091599e-04, 7.751250292296649018e-04, 7.765139298250676872e-04, 7.778744189423480570e-04, 7.792064767365317144e-04, 7.805100843773641380e-04, 7.817852240489829357e-04, 7.830318789495419518e-04, 7.842500332908374340e-04, 7.854396722978802077e-04, 7.866007822084016042e-04, 7.877333502723910495e-04, 7.888373647515349888e-04, 7.899128149186553788e-04, 7.909596910571057866e-04, 7.919779844601335540e-04, 7.929676874301979424e-04, 7.939287932782540178e-04, 7.948612963230295954e-04, 7.957651918902326890e-04, 7.966404763117262153e-04, 7.974871469247019409e-04, 7.983052020707870995e-04, 7.990946410951118694e-04, 7.998554643453875852e-04, 8.005876731708947433e-04, 8.012912699214730676e-04, 8.019662579464677732e-04, 8.026126415936325710e-04, 8.032304262080092530e-04, 8.038196181307850517e-04, 8.043802246980747556e-04, 8.049122542397163776e-04, 8.054157160780107700e-04, 8.058906205264146187e-04, 8.063369788882313776e-04, 8.067548034552441977e-04, 8.071441075063179576e-04, 8.075049053059850292e-04, 8.078372121029805215e-04, 8.081410441287377325e-04, 8.084164185958818676e-04, 8.086633536966562116e-04, 8.088818686013411448e-04, 8.090719834566152636e-04, 8.092337193839120547e-04, 8.093670984777242032e-04, 8.094721438038737478e-04, 8.095488793977691179e-04, 8.095973302626120792e-04, 8.096175223675689024e-04, 8.096094826459341578e-04, 8.095732389932340121e-04, 8.095088202653166233e-04, 8.094162562763975409e-04, 8.092955777970859159e-04, 8.091468165523677761e-04, 8.089700052195641488e-04, 8.087651774262582822e-04, 8.085323677481871980e-04, 8.082716117071006090e-04, 8.079829457685973933e-04, 8.076664073399224958e-04, 8.073220347677394345e-04, 8.069498673358594396e-04, 8.065499452629619178e-04, 8.061223097002577801e-04, 8.056670027291479991e-04, 8.051840673588278466e-04, 8.046735475238796405e-04, 8.041354880818228808e-04, 8.035699348106476901e-04, 8.029769344062965370e-04, 8.023565344801446590e-04, 8.017087835564225880e-04, 8.010337310696298953e-04, 8.003314273619051332e-04, 7.996019236803823338e-04, 7.988452721744976337e-04, 7.980615258932864664e-04, 7.972507387826368447e-04, 7.964129656825282228e-04, 7.955482623242176666e-04, 7.946566853274374077e-04, 7.937382921975122754e-04, 7.927931413224972943e-04, 7.918212919702607468e-04, 7.908228042855317821e-04, 7.897977392869490014e-04, 7.887461588640586269e-04, 7.876681257742840486e-04, 7.865637036398866969e-04, 7.854329569448789943e-04, 7.842759510319227776e-04, 7.830927520991912919e-04, 7.818834271972155718e-04, 7.806480442256898394e-04, 7.793866719302669282e-04, 7.780993798993106640e-04, 7.767862385606291633e-04, 7.754473191781839549e-04, 7.740826938487735138e-04, 7.726924354986823172e-04, 7.712766178803085425e-04, 7.698353155687750679e-04, 7.683686039584927685e-04, 7.668765592597292331e-04, 7.653592584951234880e-04, 7.638167794961861923e-04, 7.622492008997814022e-04, 7.606566021445830723e-04, 7.590390634674799505e-04, 7.573966658999979271e-04, 7.557294912646853047e-04, 7.540376221714233671e-04, 7.523211420138068784e-04, 7.505801349654176802e-04, 7.488146859761091309e-04, 7.470248807682772088e-04, 7.452108058330804419e-04, 7.433725484266520299e-04, 7.415101965663034025e-04, 7.396238390266588218e-04, 7.377135653358222935e-04, 7.357794657714921121e-04, 7.338216313570454811e-04, 7.318401538576178216e-04, 7.298351257761545412e-04, 7.278066403494536964e-04, 7.257547915441482644e-04, 7.236796740526988238e-04, 7.215813832893810302e-04, 7.194600153861954641e-04, 7.173156671888024144e-04, 7.151484362524373637e-04, 7.129584208377604459e-04, 7.107457199067274784e-04, 7.085104331184505872e-04, 7.062526608249720950e-04, 7.039725040670914268e-04, 7.016700645701501662e-04, 6.993454447397392647e-04, 6.969987476574989512e-04, 6.946300770768122808e-04, 6.922395374184635557e-04, 6.898272337663859761e-04, 6.873932718632741988e-04, 6.849377581062314826e-04, 6.824607995424156410e-04, 6.799625038646101840e-04, 6.774429794068226752e-04, 6.749023351398709437e-04, 6.723406806668944880e-04, 6.697581262189100052e-04, 6.671547826503297337e-04, 6.645307614344314389e-04, 6.618861746588575656e-04, 6.592211350210664669e-04, 6.565357558237893808e-04, 6.538301509704408940e-04, 6.511044349605316821e-04, 6.483587228850827685e-04, 6.455931304219723454e-04, 6.428077738313162049e-04, 6.400027699508201986e-04, 6.371782361910900867e-04, 6.343342905309513630e-04, 6.314710515127771023e-04, 6.285886382377061949e-04, 6.256871703609873494e-04, 6.227667680871986277e-04, 6.198275521654534291e-04, 6.168696438846962447e-04, 6.138931650688516121e-04, 6.108982380720437595e-04, 6.078849857738000953e-04, 6.048535315741740328e-04, 6.018039993889274467e-04, 5.987365136446873249e-04, 5.956511992740372600e-04, 5.925481817106480805e-04, 5.894275868844089158e-04, 5.862895412164641521e-04, 5.831341716143296442e-04, 5.799616054669383446e-04, 5.767719706397206282e-04, 5.735653954696080716e-04, 5.703420087600790831e-04, 5.671019397761962923e-04, 5.638453182395781289e-04, 5.605722743234096495e-04, 5.572829386474481604e-04, 5.539774422729585842e-04, 5.506559166976907841e-04, 5.473184938508689245e-04, 5.439653060880461719e-04, 5.405964861861393750e-04, 5.372121673383002454e-04, 5.338124831487895761e-04, 5.303975676279690937e-04, 5.269675551871457527e-04, 5.235225806334174378e-04, 5.200627791646430251e-04, 5.165882863642302968e-04, 5.130992381960214344e-04, 5.095957709991694043e-04, 5.060780214829311858e-04, 5.025461267215298447e-04, 4.990002241489996946e-04, 4.954404515539628275e-04, 4.918669470744596378e-04, 4.882798491927809186e-04, 4.846792967302175582e-04, 4.810654288418840172e-04, 4.774383850114784873e-04, 4.737983050461042544e-04, 4.701453290709878448e-04, 4.664795975242650968e-04, 4.628012511517678833e-04, 4.591104310017354818e-04, 4.554072784195751134e-04, 4.516919350426390695e-04, 4.479645427949119590e-04, 4.442252438817632780e-04, 4.404741807847180855e-04, 4.367114962560791447e-04, 4.329373333137633549e-04, 4.291518352359646044e-04, 4.253551455558110929e-04, 4.215474080561872907e-04, 4.177287667643441523e-04, 4.138993659466307074e-04, 4.100593501032241879e-04, 4.062088639627654493e-04, 4.023480524770779851e-04, 3.984770608158919817e-04, 3.945960343614649413e-04, 3.907051187033032435e-04, 3.868044596328656546e-04, 3.828942031381954978e-04, 3.789744953986290410e-04, 3.750454827794597588e-04, 3.711073118266491064e-04, 3.671601292614462206e-04, 3.632040819750935977e-04, 3.592393170235192194e-04, 3.552659816219668788e-04, 3.512842231396859751e-04, 3.472941890946343183e-04, 3.432960271480985895e-04, 3.392898850993909658e-04, 3.352759108805616287e-04, 3.312542525509678875e-04, 3.272250582920719600e-04, 3.231884764020604025e-04, 3.191446552904624555e-04, 3.150937434729509691e-04, 3.110358895659198200e-04, 3.069712422812003231e-04, 3.028999504207764508e-04, 2.988221628714084915e-04, 2.947380285993509244e-04, 2.906476966450733312e-04, 2.865513161178917523e-04, 2.824490361906951269e-04, 2.783410060946716800e-04, 2.742273751139537763e-04, 2.701082925803509208e-04, 2.659839078680851978e-04, 2.618543703884510334e-04, 2.577198295845655970e-04, 2.535804349260690040e-04, 2.494363359038927696e-04, 2.452876820249253170e-04, 2.411346228067783439e-04, 2.369773077725528365e-04, 2.328158864455248255e-04, 2.286505083439224859e-04, 2.244813229757127511e-04, 2.203084798332983715e-04, 2.161321283883147469e-04, 2.119524180864417481e-04, 2.077694983420694426e-04, 2.035835185332142427e-04, 1.993946279962468919e-04, 1.952029760206311837e-04, 1.910087118438572409e-04, 1.868119846461404178e-04, 1.826129435452815311e-04, 1.784117375915205046e-04, 1.742085157623095390e-04, 1.700034269571836702e-04, 1.657966199926384830e-04, 1.615882435969271606e-04, 1.573784464049535398e-04, 1.531673769531766865e-04, 1.489551836744313089e-04, 1.447420148928568089e-04, 1.405280188187795496e-04, 1.363133435436576270e-04, 1.320981370349393394e-04, 1.278825471310213494e-04, 1.236667215362126729e-04, 1.194508078156219339e-04, 1.152349533901436213e-04, 1.110193055314539801e-04, 1.068040113569272828e-04, 1.025892178246517924e-04, 9.837507172846837213e-05, 9.416171969286832473e-05, 8.994930816814143877e-05, 8.573798342534791968e-05, 8.152789155129717849e-05, 7.731917844373348628e-05, 7.311198980628809147e-05, 6.890647114359636631e-05, 6.470276775641560377e-05, 6.050102473665496032e-05, 5.630138696256780528e-05, 5.210399909380643079e-05, 4.790900556658911222e-05, 4.371655058888034159e-05, 3.952677813549303914e-05, 3.533983194329480765e-05, 3.115585550642686511e-05, 2.697499207144599906e-05, 2.279738463257082799e-05, 1.862317592695097657e-05, 1.445250842980009386e-05, 1.028552434978355900e-05, 6.122365624229527987e-06, 1.963173914354139532e-06, -2.191909399307805455e-06, -6.342743221698878667e-06, -1.048918674786956803e-05, -1.463109946760408130e-05, -1.876834117012134975e-05, -2.290077194867067017e-05, -2.702825220511210672e-05, -3.115064265457150446e-05, -3.526780432998958143e-05, -3.937959858665561496e-05, -4.348588710681530083e-05, -4.758653190416223022e-05, -5.168139532837312094e-05, -5.577034006956731714e-05, -5.985322916284904076e-05, -6.392992599274387232e-05, -6.800029429761756587e-05, -7.206419817416877282e-05, -7.612150208181388072e-05, -8.017207084705626672e-05, -8.421576966792508904e-05, -8.825246411831133672e-05, -9.228202015227184116e-05, -9.630430410846711894e-05, -1.003191827143430040e-04, -1.043265230904824321e-04, -1.083261927549382646e-04, -1.123180596273612263e-04, -1.163019920333456850e-04, -1.202778587086088317e-04, -1.242455288031627035e-04, -1.282048718855528042e-04, -1.321557579469925879e-04, -1.360980574054779105e-04, -1.400316411099682427e-04, -1.439563803444644352e-04, -1.478721468320641497e-04, -1.517788127390868962e-04, -1.556762506790810815e-04, -1.595643337168700345e-04, -1.634429353725202680e-04, -1.673119296253876124e-04, -1.711711909180511893e-04, -1.750205941602354584e-04, -1.788600147327902427e-04, -1.826893284915673743e-04, -1.865084117712798853e-04, -1.903171413894207207e-04, -1.941153946500767181e-04, -1.979030493477156982e-04, -2.016799837710877500e-04, -2.054460767068859580e-04, -2.092012074435604897e-04, -2.129452557751097797e-04, -2.166781020046869115e-04, -2.203996269483478397e-04, -2.241097119387793922e-04, -2.278082388288294596e-04, -2.314950899952372199e-04, -2.351701483422017356e-04, -2.388332973049388144e-04, -2.424844208532982604e-04, -2.461234034952754419e-04, -2.497501302805005523e-04, -2.533644868037883153e-04, -2.569663592085805431e-04, -2.605556341903700747e-04, -2.641321990001794921e-04, -2.676959414479296285e-04, -2.712467499058333919e-04, -2.747845133117211218e-04, -2.783091211724257933e-04, -2.818204635670651143e-04, -2.853184311503021548e-04, -2.888029151556634395e-04, -2.922738073987491076e-04, -2.957310002804216056e-04, -2.991743867900526020e-04, -3.026038605086632700e-04, -3.060193156120324790e-04, -3.094206468739132423e-04, -3.128077496690150321e-04, -3.161805199761264450e-04, -3.195388543812149895e-04, -3.228826500803346454e-04, -3.262118048827233213e-04, -3.295262172137374641e-04, -3.328257861177762070e-04, -3.361104112612581544e-04, -3.393799929354906694e-04, -3.426344320595245234e-04, -3.458736301830481197e-04, -3.490974894891895057e-04, -3.523059127972889490e-04, -3.554988035657231753e-04, -3.586760658946206988e-04, -3.618376045285989447e-04, -3.649833248594339346e-04, -3.681131329287763211e-04, -3.712269354307747233e-04, -3.743246397146759150e-04, -3.774061537874640981e-04, -3.804713863164073677e-04, -3.835202466315781032e-04, -3.865526447284191119e-04, -3.895684912702074244e-04, -3.925676975904945627e-04, -3.955501756956266053e-04, -3.985158382670605311e-04, -4.014645986637956510e-04, -4.043963709247800492e-04, -4.073110697711497855e-04, -4.102086106086150078e-04, -4.130889095297162849e-04, -4.159518833160564914e-04, -4.187974494405718312e-04, -4.216255260697148247e-04, -4.244360320656046610e-04, -4.272288869882246592e-04, -4.300040110975179766e-04, -4.327613253554627717e-04, -4.355007514281856399e-04, -4.382222116879796927e-04, -4.409256292152973216e-04, -4.436109278007842154e-04, -4.462780319472062045e-04, -4.489268668714023426e-04, -4.515573585061591669e-04, -4.541694335021370004e-04, -4.567630192296945552e-04, -4.593380437806990086e-04, -4.618944359703641592e-04, -4.644321253389956669e-04, -4.669510421537198682e-04, -4.694511174102391528e-04, -4.719322828344936667e-04, -4.743944708843056673e-04, -4.768376147510778717e-04, -4.792616483613185499e-04, -4.816665063782572570e-04, -4.840521242034328099e-04, -4.864184379781392878e-04, -4.887653845849875001e-04, -4.910929016493441020e-04, -4.934009275407648561e-04, -4.956894013744314164e-04, -4.979582630125267478e-04, -5.002074530655732480e-04, -5.024369128937963488e-04, -5.046465846084096209e-04, -5.068364110728711472e-04, -5.090063359041649416e-04, -5.111563034739979080e-04, -5.132862589100021123e-04, -5.153961480968690745e-04, -5.174859176775289471e-04, -5.195555150542333078e-04, -5.216048883896219060e-04, -5.236339866078035038e-04, -5.256427593953671117e-04, -5.276311572023592881e-04, -5.295991312432845330e-04, -5.315466334980310879e-04, -5.334736167127590058e-04, -5.353800344008440579e-04, -5.372658408436644306e-04, -5.391309910914612565e-04, -5.409754409641723662e-04, -5.427991470521338754e-04, -5.446020667168816271e-04, -5.463841580918508273e-04, -5.481453800830460819e-04, -5.498856923697329011e-04, -5.516050554050554774e-04, -5.533034304166338643e-04, -5.549807794071562762e-04, -5.566370651549240080e-04, -5.582722512143591673e-04, -5.598863019165212966e-04, -5.614791823695569921e-04, -5.630508584591426913e-04, -5.646012968488869129e-04, -5.661304649807269657e-04, -5.676383310752780619e-04, -5.691248641321425316e-04, -5.705900339302359507e-04, -5.720338110280472413e-04, -5.734561667638651610e-04, -5.748570732560228996e-04, -5.762365034030694907e-04, -5.775944308839210586e-04, -5.789308301580147744e-04, -5.802456764654073023e-04, -5.815389458268270572e-04, -5.828106150437761205e-04, -5.840606616984941359e-04, -5.852890641539828121e-04, -5.864958015539906361e-04, -5.876808538229068377e-04, -5.888442016657117334e-04, -5.899858265678480313e-04, -5.911057107950715367e-04, -5.922038373932919913e-04, -5.932801901883750974e-04, -5.943347537859077889e-04, -5.953675135709560196e-04, -5.963784557077862324e-04, -5.973675671395502901e-04, -5.983348355879607562e-04, -5.992802495529256281e-04, -6.002037983121684319e-04, -6.011054719207968187e-04, -6.019852612108830868e-04, -6.028431577909788928e-04, -6.036791540456271435e-04, -6.044932431348390856e-04, -6.052854189935475424e-04, -6.060556763310210107e-04, -6.068040106302798184e-04, -6.075304181474490721e-04, -6.082348959111083531e-04, -6.089174417216230897e-04, -6.095780541504153228e-04, -6.102167325392310023e-04, -6.108334769994055481e-04, -6.114282884110374718e-04, -6.120011684221977758e-04, -6.125521194480911067e-04, -6.130811446701708292e-04, -6.135882480352661348e-04, -6.140734342546560250e-04, -6.145367088031177070e-04, -6.149780779179629545e-04, -6.153975485980498579e-04, -6.157951286027385203e-04, -6.161708264508632344e-04, -6.165246514196488217e-04, -6.168566135436185163e-04, -6.171667236134546850e-04, -6.174549931748643181e-04, -6.177214345273962732e-04, -6.179660607232365099e-04, -6.181888855659877120e-04, -6.183899236094177925e-04, -6.185691901561730542e-04, -6.187267012564867967e-04, -6.188624737068503011e-04, -6.189765250486558429e-04, -6.190688735668237663e-04, -6.191395382884032133e-04, -6.191885389811366399e-04, -6.192158961520189114e-04, -6.192216310458151978e-04, -6.192057656435624984e-04, -6.191683226610496986e-04, -6.191093255472567523e-04, -6.190287984827980931e-04, -6.189267663783119431e-04, -6.188032548728387809e-04, -6.186582903321892913e-04, -6.184918998472626597e-04, -6.183041112323545661e-04, -6.180949530234442543e-04, -6.178644544764535194e-04, -6.176126455654801098e-04, -6.173395569810077085e-04, -6.170452201281006284e-04, -6.167296671245690171e-04, -6.163929307991048963e-04, -6.160350446894051913e-04, -6.156560430402689557e-04, -6.152559608016694437e-04, -6.148348336267999434e-04, -6.143926978701053001e-04, -6.139295905852934889e-04, -6.134455495232993749e-04, -6.129406131302638687e-04, -6.124148205454583299e-04, -6.118682115992002965e-04, -6.113008268107554457e-04, -6.107127073861997636e-04, -6.101038952162644770e-04, -6.094744328741759972e-04, -6.088243636134469663e-04, -6.081537313656636178e-04, -6.074625807382529703e-04, -6.067509570122140263e-04, -6.060189061398409474e-04, -6.052664747424182576e-04, -6.044937101078982650e-04, -6.037006601885510542e-04, -6.028873735986067794e-04, -6.020538996118607713e-04, -6.012002881592650892e-04, -6.003265898265066312e-04, -5.994328558515527169e-04, -5.985191381221832262e-04, -5.975854891734927064e-04, -5.966319621853970320e-04, -5.956586109800830363e-04, -5.946654900194719116e-04, -5.936526544026431455e-04, -5.926201598632436021e-04, -5.915680627668748123e-04, -5.904964201084772274e-04, -5.894052895096540826e-04, -5.882947292160319074e-04, -5.871647980945590185e-04, -5.860155556307927380e-04, -5.848470619261819485e-04, -5.836593776953231949e-04, -5.824525642631895716e-04, -5.812266835623525630e-04, -5.799817981301792725e-04, -5.787179711060220621e-04, -5.774352662283634141e-04, -5.761337478319708766e-04, -5.748134808450266380e-04, -5.734745307862269608e-04, -5.721169637618717498e-04, -5.707408464629464212e-04, -5.693462461621697293e-04, -5.679332307110253287e-04, -5.665018685368019028e-04, -5.650522286395598913e-04, -5.635843805891618602e-04, -5.620983945222121246e-04, -5.605943411390014669e-04, -5.590722917004733224e-04, -5.575323180251127693e-04, -5.559744924858600222e-04, -5.543988880070024579e-04, -5.528055780610286948e-04, -5.511946366654886346e-04, -5.495661383798437468e-04, -5.479201583022637930e-04, -5.462567720664432847e-04, -5.445760558384051464e-04, -5.428780863132523374e-04, -5.411629407119379056e-04, -5.394306967780089111e-04, -5.376814327743420019e-04, -5.359152274798394166e-04, -5.341321601861401648e-04, -5.323323106943111515e-04, -5.305157593114988345e-04, -5.286825868475931349e-04, -5.268328746118826735e-04, -5.249667044096563385e-04, -5.230841585388290322e-04, -5.211853197865536471e-04, -5.192702714257683158e-04, -5.173390972118150017e-04, -5.153918813789747132e-04, -5.134287086369905767e-04, -5.114496641676510814e-04, -5.094548336212589412e-04, -5.074443031131625152e-04, -5.054181592202514495e-04, -5.033764889774196847e-04, -5.013193798740397380e-04, -4.992469198504351441e-04, -4.971591972942945642e-04, -4.950563010371177713e-04, -4.929383203506471078e-04, -4.908053449432454906e-04, -4.886574649563142072e-04, -4.864947709606651759e-04, -4.843173539529117984e-04, -4.821253053518022432e-04, -4.799187169945834104e-04, -4.776976811333543804e-04, -4.754622904313672788e-04, -4.732126379593568728e-04, -4.709488171918626317e-04, -4.686709220034980419e-04, -4.663790466652465382e-04, -4.640732858407570563e-04, -4.617537345825791948e-04, -4.594204883284330179e-04, -4.570736428974772310e-04, -4.547132944864867724e-04, -4.523395396661517801e-04, -4.499524753772600081e-04, -4.475521989268783744e-04, -4.451388079846178305e-04, -4.427124005787705114e-04, -4.402730750925058128e-04, -4.378209302600714003e-04, -4.353560651629133382e-04, -4.328785792258610528e-04, -4.303885722132850828e-04, -4.278861442252072326e-04, -4.253713956934523596e-04, -4.228444273777876928e-04, -4.203053403620071282e-04, -4.177542360500658856e-04, -4.151912161621689238e-04, -4.126163827308963273e-04, -4.100298380972492752e-04, -4.074316849067566174e-04, -4.048220261055625845e-04, -4.022009649364658183e-04, -3.995686049349941806e-04, -3.969250499254837897e-04, -3.942704040170865007e-04, -3.916047715998412443e-04, -3.889282573407287780e-04, -3.862409661796424110e-04, -3.835430033254899726e-04, -3.808344742521838902e-04, -3.781154846946167933e-04, -3.753861406447554588e-04, -3.726465483475792807e-04, -3.698968142971049890e-04, -3.671370452324029658e-04, -3.643673481335547425e-04, -3.615878302176550596e-04, -3.587985989348221644e-04, -3.559997619641304270e-04, -3.531914272096155975e-04, -3.503737027962569692e-04, -3.475466970659134638e-04, -3.447105185733121920e-04, -3.418652760819985786e-04, -3.390110785603189596e-04, -3.361480351773383449e-04, -3.332762552988153171e-04, -3.303958484831651674e-04, -3.275069244773739174e-04, -3.246095932129608040e-04, -3.217039648019402774e-04, -3.187901495327224153e-04, -3.158682578660709631e-04, -3.129384004310637054e-04, -3.100006880209819297e-04, -3.070552315892662444e-04, -3.041021422454750524e-04, -3.011415312511400255e-04, -2.981735100157859985e-04, -2.951981900928157170e-04, -2.922156831753968081e-04, -2.892261010924789639e-04, -2.862295558046435069e-04, -2.832261594000568764e-04, -2.802160240904169597e-04, -2.771992622068371348e-04, -2.741759861957921134e-04, -2.711463086150643262e-04, -2.681103421296289957e-04, -2.650681995075991116e-04, -2.620199936161758279e-04, -2.589658374175321260e-04, -2.559058439647700963e-04, -2.528401263978371821e-04, -2.497687979394841657e-04, -2.466919718911537648e-04, -2.436097616289358545e-04, -2.405222805995268077e-04, -2.374296423161179298e-04, -2.343319603543603561e-04, -2.312293483483235802e-04, -2.281219199863990395e-04, -2.250097890072605953e-04, -2.218930691958490270e-04, -2.187718743792344998e-04, -2.156463184226692018e-04, -2.125165152254974890e-04, -2.093825787170703408e-04, -2.062446228528014118e-04, -2.031027616100538941e-04, -1.999571089841372089e-04, -1.968077789842991184e-04, -1.936548856296604545e-04, -1.904985429452152540e-04, -1.873388649578360422e-04, -1.841759656922168568e-04, -1.810099591668891037e-04, -1.778409593902383599e-04, -1.746690803564612490e-04, -1.714944360416001336e-04, -1.683171403995389946e-04, -1.651373073580485326e-04, -1.619550508147597659e-04, -1.587704846332155836e-04, -1.555837226389194519e-04, -1.523948786153299644e-04, -1.492040662999244297e-04, -1.460113993802669848e-04, -1.428169914900206017e-04, -1.396209562050251753e-04, -1.364234070393964017e-04, -1.332244574415121703e-04, -1.300242207901904795e-04, -1.268228103907297142e-04, -1.236203394709516870e-04, -1.204169211773936627e-04, -1.172126685713664837e-04, -1.140076946250221014e-04, -1.108021122175711193e-04, -1.075960341313265945e-04, -1.043895730478680751e-04, -1.011828415442064935e-04, -9.797595208888789547e-05, -9.476901703817362007e-05, -9.156214863222875968e-05, -8.835545899124883421e-05, -8.514906011166596439e-05, -8.194306386236004601e-05, -7.873758198081212255e-05, -7.553272606934206812e-05, -7.232860759130854016e-05, -6.912533786736448397e-05, -6.592302807164487455e-05, -6.272178922803207381e-05, -5.952173220643080333e-05, -5.632296771898314704e-05, -5.312560631636255857e-05, -4.992975838407696893e-05, -4.673553413871244617e-05, -4.354304362425660477e-05, -4.035239670843832559e-05, -3.716370307896371087e-05, -3.397707223994543373e-05, -3.079261350819724013e-05, -2.761043600953867275e-05, -2.443064867525565571e-05, -2.125336023838858278e-05, -1.807867923014542757e-05, -1.490671397631821315e-05, -1.173757259364196804e-05, -8.571362986233174608e-06, -5.408192842039840435e-06, -2.248169629233924849e-06, 9.085994073158900746e-07, 4.062007249559963914e-06, 7.211947109840360059e-06, 1.035831243437538848e-05, 1.350099690677804931e-05, 1.663989445151674347e-05, 1.977489923743988608e-05, 2.290590568121984836e-05, 2.603280845078441007e-05, 2.915550246880447023e-05, 3.227388291610041378e-05, 3.538784523503596597e-05, 3.849728513296748328e-05, 4.160209858561236292e-05, 4.470218184039641198e-05, 4.779743141990192208e-05, 5.088774412512074341e-05, 5.397301703883864219e-05, 5.705314752900416748e-05, 6.012803325194276179e-05, 6.319757215573732379e-05, 6.626166248348101806e-05, 6.932020277652611406e-05, 7.237309187778388417e-05, 7.542022893494506361e-05, 7.846151340368422351e-05, 8.149684505092017015e-05, 8.452612395799063798e-05, 8.754925052381620841e-05, 9.056612546811526740e-05, 9.357664983453636040e-05, 9.658072499377798412e-05, 9.957825264675863105e-05, 1.025691348276992982e-04, 1.055532739072324638e-04, 1.085305725954559193e-04, 1.115009339450413528e-04, 1.144642613542636370e-04, 1.174204585700133123e-04, 1.203694296908608944e-04, 1.233110791700392842e-04, 1.262453118184091280e-04, 1.291720328074765867e-04, 1.320911476723274705e-04, 1.350025623145396372e-04, 1.379061830051878036e-04, 1.408019163876573490e-04, 1.436896694805827462e-04, 1.465693496807631176e-04, 1.494408647659332110e-04, 1.523041228976822355e-04, 1.551590326242550325e-04, 1.580055028833392348e-04, 1.608434430049030569e-04, 1.636727627139501718e-04, 1.664933721332581887e-04, 1.693051817861664619e-04, 1.721081025992772181e-04, 1.749020459051485248e-04, 1.776869234450233627e-04, 1.804626473714810147e-04, 1.832291302511037702e-04, 1.859862850670928333e-04, 1.887340252219307985e-04, 1.914722645399650060e-04, 1.942009172699763961e-04, 1.969198980877891300e-04, 1.996291220988007380e-04, 2.023285048404991216e-04, 2.050179622850149016e-04, 2.076974108416031564e-04, 2.103667673590943422e-04, 2.130259491284320315e-04, 2.156748738850263088e-04, 2.183134598112238813e-04, 2.209416255387514376e-04, 2.235592901510201726e-04, 2.261663731855686858e-04, 2.287627946363877268e-04, 2.313484749562338288e-04, 2.339233350589864997e-04, 2.364872963219185416e-04, 2.390402805879580212e-04, 2.415822101679853697e-04, 2.441130078430523375e-04, 2.466325968665815968e-04, 2.491409009666123138e-04, 2.516378443479499322e-04, 2.541233516943481024e-04, 2.565973481706226595e-04, 2.590597594248182927e-04, 2.615105115902947126e-04, 2.639495312877900512e-04, 2.663767456275328328e-04, 2.687920822112623855e-04, 2.711954691342454023e-04, 2.735868349873153802e-04, 2.759661088588475481e-04, 2.783332203367077208e-04, 2.806880995102372018e-04, 2.830306769721676469e-04, 2.853608838205087686e-04, 2.876786516604782707e-04, 2.899839126063509000e-04, 2.922765992832912366e-04, 2.945566448292232919e-04, 2.968239828966126115e-04, 2.990785476542692496e-04, 3.013202737890967493e-04, 3.035490965078737041e-04, 3.057649515389691277e-04, 3.079677751340319670e-04, 3.101575040697167177e-04, 3.123340756493348815e-04, 3.144974277044852262e-04, 3.166474985967178738e-04, 3.187842272191221144e-04, 3.209075529978961685e-04, 3.230174158939708336e-04, 3.251137564044837827e-04, 3.271965155643439594e-04, 3.292656349477634473e-04, 3.313210566696717574e-04, 3.333627233872442277e-04, 3.353905783013171786e-04, 3.374045651577999775e-04, 3.394046282491060230e-04, 3.413907124155172133e-04, 3.433627630465302546e-04, 3.453207260822255199e-04, 3.472645480145729172e-04, 3.491941758887091873e-04, 3.511095573042519570e-04, 3.530106404165289538e-04, 3.548973739378270061e-04, 3.567697071385853166e-04, 3.586275898486170326e-04, 3.604709724582657649e-04, 3.622998059195475231e-04, 3.641140417472995910e-04, 3.659136320202863580e-04, 3.676985293822643318e-04, 3.694686870430808679e-04, 3.712240587797045418e-04, 3.729645989372330230e-04, 3.746902624299445345e-04, 3.764010047422215927e-04, 3.780967819295399089e-04, 3.797775506194354424e-04, 3.814432680123662337e-04, 3.830938918826428665e-04, 3.847293805793243439e-04, 3.863496930270196930e-04, 3.879547887267716447e-04, 3.895446277568475040e-04, 3.911191707735202643e-04, 3.926783790118635437e-04, 3.942222142864887889e-04, 3.957506389922609566e-04, 3.972636161050249835e-04, 3.987611091822865564e-04, 4.002430823638575925e-04, 4.017095003725249750e-04, 4.031603285146561884e-04, 4.045955326808080982e-04, 4.060150793462865616e-04, 4.074189355717365048e-04, 4.088070690036545336e-04, 4.101794478748993760e-04, 4.115360410052106184e-04, 4.128768178016641792e-04, 4.142017482591180241e-04, 4.155108029606594542e-04, 4.168039530780101630e-04, 4.180811703718910173e-04, 4.193424271924330775e-04, 4.205876964794781929e-04, 4.218169517629213926e-04, 4.230301671630330566e-04, 4.242273173907018849e-04, 4.254083777477293132e-04, 4.265733241270551349e-04, 4.277221330129674028e-04, 4.288547814813199201e-04, 4.299712471996981235e-04, 4.310715084275624142e-04, 4.321555440164084037e-04, 4.332233334098622686e-04, 4.342748566437679212e-04, 4.353100943462749920e-04, 4.363290277378814390e-04, 4.373316386314608155e-04, 4.383179094322644923e-04, 4.392878231379250737e-04, 4.402413633384142755e-04, 4.411785142159785236e-04, 4.420992605450830095e-04, 4.430035876923051129e-04, 4.438914816162095557e-04, 4.447629288672291402e-04, 4.456179165874963178e-04, 4.464564325106518822e-04, 4.472784649616788144e-04, 4.480840028566412622e-04, 4.488730357024674276e-04, 4.496455535966942382e-04, 4.504015472271598124e-04, 4.511410078717227601e-04, 4.518639273979317716e-04, 4.525702982626724391e-04, 4.532601135118208540e-04, 4.539333667798478187e-04, 4.545900522894110243e-04, 4.552301648509383914e-04, 4.558536998621819753e-04, 4.564606533077386402e-04, 4.570510217585829304e-04, 4.576248023715507197e-04, 4.581819928888074094e-04, 4.587225916373142845e-04, 4.592465975282551877e-04, 4.597540100564493693e-04, 4.602448292997426537e-04, 4.607190559183878720e-04, 4.611766911543958044e-04, 4.616177368308614572e-04, 4.620421953512901764e-04, 4.624500696988885257e-04, 4.628413634358270832e-04, 4.632160807025117490e-04, 4.635742262168107632e-04, 4.639158052732666538e-04, 4.642408237423050941e-04, 4.645492880693974109e-04, 4.648412052742233636e-04, 4.651165829498146785e-04, 4.653754292616635638e-04, 4.656177529468281885e-04, 4.658435633130129537e-04, 4.660528702376251281e-04, 4.662456841668207504e-04, 4.664220161145283595e-04, 4.665818776614450228e-04, 4.667252809540293839e-04, 4.668522387034660325e-04, 4.669627641846072147e-04, 4.670568712349087970e-04, 4.671345742533333247e-04, 4.671958881992458162e-04, 4.672408285912818017e-04, 4.672694115062051706e-04, 4.672816535777399435e-04, 4.672775719953896844e-04, 4.672571845032351206e-04, 4.672205093987145236e-04, 4.671675655313846831e-04, 4.670983723016658884e-04, 4.670129496595690753e-04, 4.669113181033992285e-04, 4.667934986784483221e-04, 4.666595129756697736e-04, 4.665093831303249801e-04, 4.663431318206253014e-04, 4.661607822663494305e-04, 4.659623582274440685e-04, 4.657478840026049206e-04, 4.655173844278470674e-04, 4.652708848750484474e-04, 4.650084112504843407e-04, 4.647299899933398986e-04, 4.644356480742053246e-04, 4.641254129935572324e-04, 4.637993127802194585e-04, 4.634573759898105391e-04, 4.630996317031664121e-04, 4.627261095247605727e-04, 4.623368395810890995e-04, 4.619318525190577954e-04, 4.615111795043335503e-04, 4.610748522197000935e-04, 4.606229028633767762e-04, 4.601553641473365942e-04, 4.596722692955974854e-04, 4.591736520425064171e-04, 4.586595466309942000e-04, 4.581299878108344224e-04, 4.575850108368651956e-04, 4.570246514672037983e-04, 4.564489459614547075e-04, 4.558579310788811456e-04, 4.552516440765832953e-04, 4.546301227076468619e-04, 4.539934052192734753e-04, 4.533415303509126092e-04, 4.526745373323598910e-04, 4.519924658818471165e-04, 4.512953562041267363e-04, 4.505832489885180144e-04, 4.498561854069646807e-04, 4.491142071120569120e-04, 4.483573562350536934e-04, 4.475856753838733577e-04, 4.467992076410936121e-04, 4.459979965619085759e-04, 4.451820861720944380e-04, 4.443515209659479001e-04, 4.435063459042188207e-04, 4.426466064120195476e-04, 4.417723483767223790e-04, 4.408836181458559403e-04, 4.399804625249631798e-04, 4.390629287754658702e-04, 4.381310646125140935e-04, 4.371849182028055849e-04, 4.362245381624045354e-04, 4.352499735545582249e-04, 4.342612738874614521e-04, 4.332584891120592357e-04, 4.322416696197972576e-04, 4.312108662403607053e-04, 4.301661302394392430e-04, 4.291075133164244920e-04, 4.280350676021317958e-04, 4.269488456565061576e-04, 4.258489004662909341e-04, 4.247352854427120339e-04, 4.236080544191417872e-04, 4.224672616487353850e-04, 4.213129618020723601e-04, 4.201452099647876590e-04, 4.189640616351733332e-04, 4.177695727217762721e-04, 4.165617995409934965e-04, 4.153407988146542258e-04, 4.141066276675647016e-04, 4.128593436250719857e-04, 4.115990046106124704e-04, 4.103256689432263453e-04, 4.090393953350821466e-04, 4.077402428889936631e-04, 4.064282710958981365e-04, 4.051035398323516454e-04, 4.037661093580081190e-04, 4.024160403130726000e-04, 4.010533937157509843e-04, 3.996782309597162949e-04, 3.982906138114988988e-04, 3.968906044079513170e-04, 3.954782652536374655e-04, 3.940536592182181021e-04, 3.926168495338786110e-04, 3.911678997926778026e-04, 3.897068739439286987e-04, 3.882338362915720522e-04, 3.867488514915060657e-04, 3.852519845489371978e-04, 3.837433008157242471e-04, 3.822228659876809658e-04, 3.806907461018970503e-04, 3.791470075340564751e-04, 3.775917169957095326e-04, 3.760249415315750120e-04, 3.744467485168102871e-04, 3.728572056542912697e-04, 3.712563809718577232e-04, 3.696443428195687669e-04, 3.680211598669621219e-04, 3.663869011002663561e-04, 3.647416358196356261e-04, 3.630854336363811136e-04, 3.614183644701632120e-04, 3.597404985461995436e-04, 3.580519063924802407e-04, 3.563526588369090664e-04, 3.546428270045379953e-04, 3.529224823147112614e-04, 3.511916964782126603e-04, 3.494505414944692285e-04, 3.476990896486621707e-04, 3.459374135088842434e-04, 3.441655859232905807e-04, 3.423836800172041996e-04, 3.405917691902502365e-04, 3.387899271134843840e-04, 3.369782277264827294e-04, 3.351567452344539279e-04, 3.333255541053511050e-04, 3.314847290669380056e-04, 3.296343451038909211e-04, 3.277744774548732956e-04, 3.259052016096209564e-04, 3.240265933059882598e-04, 3.221387285270224795e-04, 3.202416834980367864e-04, 3.183355346836296679e-04, 3.164203587847511860e-04, 3.144962327357511819e-04, 3.125632337013957147e-04, 3.106214390739068100e-04, 3.086709264700072497e-04, 3.067117737278970578e-04, 3.047440589043241485e-04, 3.027678602715731717e-04, 3.007832563144453592e-04, 2.987903257273184397e-04, 2.967891474111177029e-04, 2.947798004702863054e-04, 2.927623642098342886e-04, 2.907369181322795571e-04, 2.887035419346474572e-04, 2.866623155054684588e-04, 2.846133189217250415e-04, 2.825566324458409742e-04, 2.804923365226680461e-04, 2.784205117764215688e-04, 2.763412390076613618e-04, 2.742545991902678036e-04, 2.721606734683706128e-04, 2.700595431533260918e-04, 2.679512897206588642e-04, 2.658359948070293066e-04, 2.637137402071755565e-04, 2.615846078708275479e-04, 2.594486798997124445e-04, 2.573060385444451482e-04, 2.551567662014868950e-04, 2.530009454100995685e-04, 2.508386588492504655e-04, 2.486699893345648742e-04, 2.464950198152724196e-04, 2.443138333711105271e-04, 2.421265132092706592e-04, 2.399331426613412718e-04, 2.377338051802090557e-04, 2.355285843370046853e-04, 2.333175638180193473e-04, 2.311008274216529016e-04, 2.288784590553089428e-04, 2.266505427323334200e-04, 2.244171625689555063e-04, 2.221784027811817388e-04, 2.199343476817356682e-04, 2.176850816769960453e-04, 2.154306892638919362e-04, 2.131712550268407733e-04, 2.109068636346947000e-04, 2.086375998376094484e-04, 2.063635484640345132e-04, 2.040847944176105719e-04, 2.018014226740629739e-04, 1.995135182781994224e-04, 1.972211663407786360e-04, 1.949244520354615449e-04, 1.926234605957580963e-04, 1.903182773119268428e-04, 1.880089875279238618e-04, 1.856956766383542233e-04, 1.833784300853742884e-04, 1.810573333556474325e-04, 1.787324719772986567e-04, 1.764039315168246930e-04, 1.740717975760575607e-04, 1.717361557891002315e-04, 1.693970918192953085e-04, 1.670546913561437512e-04, 1.647090401122718734e-04, 1.623602238204041701e-04, 1.600083282302875711e-04, 1.576534391056663275e-04, 1.552956422212641073e-04, 1.529350233597161104e-04, 1.505716683085541732e-04, 1.482056628571951800e-04, 1.458370927938849957e-04, 1.434660439026914848e-04, 1.410926019605108941e-04, 1.387168527339910221e-04, 1.363388819765940885e-04, 1.339587754255551131e-04, 1.315766187988467735e-04, 1.291924977922529263e-04, 1.268064980763105340e-04, 1.244187052933432870e-04, 1.220292050544901724e-04, 1.196380829366912421e-04, 1.172454244797248004e-04, 1.148513151832536303e-04, 1.124558405038200601e-04, 1.100590858519014727e-04, 1.076611365889665350e-04, 1.052620780244888977e-04, 1.028619954130201482e-04, 1.004609739512355218e-04, 9.805909877501749346e-05, 9.565645495648902028e-05, 9.325312750110331314e-05, 9.084920134473885224e-05, 8.844476135074806687e-05, 8.603989230706530740e-05, 8.363467892331827324e-05, 8.122920582789540855e-05, 7.882355756506970363e-05, 7.641781859213564226e-05, 7.401207327646574185e-05, 7.160640589271114343e-05, 6.920090061989899919e-05, 6.679564153853753065e-05, 6.439071262783644604e-05, 6.198619776279526113e-05, 5.958218071138609477e-05, 5.717874513173604428e-05, 5.477597456926659253e-05, 5.237395245389007124e-05, 4.997276209721475713e-05, 4.757248668970427582e-05, 4.517320929789675200e-05, 4.277501286163184715e-05, 4.037798019123245056e-05, 3.798219396475260151e-05, 3.558773672519759492e-05, 3.319469087778752279e-05, 3.080313868717025801e-05, 2.841316227469468589e-05, 2.602484361569175887e-05, 2.363826453671236276e-05, 2.125350671282456676e-05, 1.887065166491977403e-05, 1.648978075697524339e-05, 1.411097519337696205e-05, 1.173431601625678239e-05, 9.359884102752299179e-06, 6.987760162412990763e-06, 4.618024734506339166e-06, 2.250758185332994009e-06, -1.139592943460997295e-07, -2.476047691976475657e-06, -4.835427175867579754e-06, -7.192018097732475792e-06, -9.545740995355304581e-06, -1.189651659516344231e-05, -1.424426581479630246e-05, -1.658890976571526115e-05, -1.893036975575310856e-05, -2.126856729165356046e-05, -2.360342408165203541e-05, -2.593486203799535086e-05, -2.826280327945194246e-05, -3.058717013386214143e-05, -3.290788514062223077e-05, -3.522487105319239124e-05, -3.753805084155972750e-05, -3.984734769474820968e-05, -4.215268502326642916e-05, -4.445398646154595577e-05, -4.675117587041871937e-05, -4.904417733953356099e-05, -5.133291518976179960e-05, -5.361731397564326680e-05, -5.589729848776915953e-05, -5.817279375515100150e-05, -6.044372504765935949e-05, -6.271001787831994635e-05, -6.497159800570334490e-05, -6.722839143630304954e-05, -6.948032442679744406e-05, -7.172732348643322351e-05, -7.396931537931442969e-05, -7.620622712668445272e-05, -7.843798600924763316e-05, -8.066451956942798042e-05, -8.288575561361803841e-05, -8.510162221446331313e-05, -8.731204771308690642e-05, -8.951696072130161362e-05, -9.171629012385885710e-05, -9.390996508063228295e-05, -9.609791502882000596e-05, -9.828006968510332396e-05, -1.004563590478474043e-04, -1.026267133992400486e-04, -1.047910633074188301e-04, -1.069493396286341579e-04, -1.091014735093504337e-04, -1.112473963883362719e-04, -1.133870399987890883e-04, -1.155203363703990961e-04, -1.176472178313953305e-04, -1.197676170106592606e-04, -1.218814668396951776e-04, -1.239887005546941225e-04, -1.260892516985776348e-04, -1.281830541229342997e-04, -1.302700419900651365e-04, -1.323501497749413015e-04, -1.344233122671481984e-04, -1.364894645728694596e-04, -1.385485421168049811e-04, -1.406004806440810972e-04, -1.426452162221888086e-04, -1.446826852428661472e-04, -1.467128244239635187e-04, -1.487355708113438483e-04, -1.507508617807235289e-04, -1.527586350394968622e-04, -1.547588286285951674e-04, -1.567513809242809190e-04, -1.587362306399566565e-04, -1.607133168279312315e-04, -1.626825788812234319e-04, -1.646439565353026413e-04, -1.665973898698204188e-04, -1.685428193103691828e-04, -1.704801856301821046e-04, -1.724094299518231360e-04, -1.743304937489001025e-04, -1.762433188477262975e-04, -1.781478474289576277e-04, -1.800440220292915305e-04, -1.819317855430339719e-04, -1.838110812237446685e-04, -1.856818526858653427e-04, -1.875440439062452764e-04, -1.893975992257657440e-04, -1.912424633508784139e-04, -1.930785813551326642e-04, -1.949058986807341502e-04, -1.967243611400427115e-04, -1.985339149170557227e-04, -2.003345065689232120e-04, -2.021260830273986320e-04, -2.039085916002819328e-04, -2.056819799728869756e-04, -2.074461962094438668e-04, -2.092011887545202925e-04, -2.109469064343977242e-04, -2.126832984584741044e-04, -2.144103144206201302e-04, -2.161279043005096229e-04, -2.178360184649824789e-04, -2.195346076693506726e-04, -2.212236230586868304e-04, -2.229030161691393681e-04, -2.245727389291929572e-04, -2.262327436609087709e-04, -2.278829830812132752e-04, -2.295234103030713085e-04, -2.311539788367216657e-04, -2.327746425908999424e-04, -2.343853558739638829e-04, -2.359860733951051385e-04, -2.375767502654831261e-04, -2.391573419993466899e-04, -2.407278045151767687e-04, -2.422880941367792180e-04, -2.438381675943598502e-04, -2.453779820256201294e-04, -2.469074949768038335e-04, -2.484266644037227360e-04, -2.499354486728099086e-04, -2.514338065621144771e-04, -2.529216972622859135e-04, -2.543990803775748638e-04, -2.558659159267800357e-04, -2.573221643442039769e-04, -2.587677864805675455e-04, -2.602027436039487749e-04, -2.616269974006728413e-04, -2.630405099761820814e-04, -2.644432438559275321e-04, -2.658351619862104340e-04, -2.672162277350069296e-04, -2.685864048928109766e-04, -2.699456576734278750e-04, -2.712939507147492553e-04, -2.726312490795658504e-04, -2.739575182562754797e-04, -2.752727241596490920e-04, -2.765768331315761547e-04, -2.778698119417266133e-04, -2.791516277882845711e-04, -2.804222482986127966e-04, -2.816816415299000466e-04, -2.829297759698325121e-04, -2.841666205372087245e-04, -2.853921445825464910e-04, -2.866063178886988304e-04, -2.878091106714275702e-04, -2.890004935799564520e-04, -2.901804376975452714e-04, -2.913489145420056865e-04, -2.925058960662293875e-04, -2.936513546586777762e-04, -2.947852631438808079e-04, -2.959075947829078058e-04, -2.970183232738041234e-04, -2.981174227520507923e-04, -2.992048677909770068e-04, -3.002806334021593270e-04, -3.013446950358265202e-04, -3.023970285812287314e-04, -3.034376103669809044e-04, -3.044664171614393255e-04, -3.054834261729900751e-04, -3.064886150503766198e-04, -3.074819618830130379e-04, -3.084634452012223818e-04, -3.094330439765360799e-04, -3.103907376219247637e-04, -3.113365059920235106e-04, -3.122703293833623992e-04, -3.131921885345585223e-04, -3.141020646264928193e-04, -3.149999392824904339e-04, -3.158857945684658344e-04, -3.167596129930534059e-04, -3.176213775077397767e-04, -3.184710715069595001e-04, -3.193086788281887826e-04, -3.201341837520082058e-04, -3.209475710021750423e-04, -3.217488257456560530e-04, -3.225379335926461350e-04, -3.233148805965934758e-04, -3.240796532541876263e-04, -3.248322385053268669e-04, -3.255726237331009140e-04, -3.263007967637243504e-04, -3.270167458664689168e-04, -3.277204597535875630e-04, -3.284119275802105278e-04, -3.290911389442200048e-04, -3.297580838861458963e-04, -3.304127528889890344e-04, -3.310551368780754642e-04, -3.316852272208876875e-04, -3.323030157268494489e-04, -3.329084946471374097e-04, -3.335016566744514058e-04, -3.340824949427684959e-04, -3.346510030271022691e-04, -3.352071749432266982e-04, -3.357510051473851947e-04, -3.362824885360034028e-04, -3.368016204453670292e-04, -3.373083966512867705e-04, -3.378028133687669267e-04, -3.382848672516250085e-04, -3.387545553921413239e-04, -3.392118753206416139e-04, -3.396568250051043548e-04, -3.400894028507488154e-04, -3.405096076995764941e-04, -3.409174388299389012e-04, -3.413128959560680995e-04, -3.416959792275864284e-04, -3.420666892290225155e-04, -3.424250269792968233e-04, -3.427709939311909316e-04, -3.431045919708170921e-04, -3.434258234170579666e-04, -3.437346910209959031e-04, -3.440311979653319120e-04, -3.443153478637875657e-04, -3.445871447604909607e-04, -3.448465931293432187e-04, -3.450936978733858541e-04, -3.453284643241399531e-04, -3.455508982409302818e-04, -3.457610058102085818e-04, -3.459587936448474291e-04, -3.461442687834250941e-04, -3.463174386895036261e-04, -3.464783112508803740e-04, -3.466268947788322973e-04, -3.467631980073503030e-04, -3.468872300923437116e-04, -3.469990006108486275e-04, -3.470985195602179310e-04, -3.471857973572835157e-04, -3.472608448375257896e-04, -3.473236732542124929e-04, -3.473742942775333428e-04, -3.474127199937145647e-04, -3.474389629041271907e-04, -3.474530359243715050e-04, -3.474549523833589957e-04, -3.474447260223739774e-04, -3.474223709941186809e-04, -3.473879018617541674e-04, -3.473413335979242756e-04, -3.472826815837561499e-04, -3.472119616078660274e-04, -3.471291898653342325e-04, -3.470343829566808775e-04, -3.469275578868154328e-04, -3.468087320639852682e-04, -3.466779232987000155e-04, -3.465351498026552810e-04, -3.463804301876283317e-04, -3.462137834643777925e-04, -3.460352290415146664e-04, -3.458447867243708072e-04, -3.456424767138495564e-04, -3.454283196052703093e-04, -3.452023363871887943e-04, -3.449645484402159433e-04, -3.447149775358203361e-04, -3.444536458351144903e-04, -3.441805758876352963e-04, -3.438957906301077019e-04, -3.435993133851945728e-04, -3.432911678602424874e-04, -3.429713781460032459e-04, -3.426399687153562461e-04, -3.422969644220061943e-04, -3.419423904991795147e-04, -3.415762725583007552e-04, -3.411986365876650364e-04, -3.408095089510884907e-04, -3.404089163865570752e-04, -3.399968860048563032e-04, -3.395734452881962588e-04, -3.391386220888159032e-04, -3.386924446275821777e-04, -3.382349414925830337e-04, -3.377661416376902693e-04, -3.372860743811352665e-04, -3.367947694040543177e-04, -3.362922567490312948e-04, -3.357785668186277425e-04, -3.352537303739060864e-04, -3.347177785329264951e-04, -3.341707427692584332e-04, -3.336126549104582247e-04, -3.330435471365414120e-04, -3.324634519784571752e-04, -3.318724023165340199e-04, -3.312704313789250309e-04, -3.306575727400449410e-04, -3.300338603189870330e-04, -3.293993283779351631e-04, -3.287540115205719350e-04, -3.280979446904600406e-04, -3.274311631694306474e-04, -3.267537025759531923e-04, -3.260655988634914601e-04, -3.253668883188602580e-04, -3.246576075605667492e-04, -3.239377935371342220e-04, -3.232074835254289489e-04, -3.224667151289711624e-04, -3.217155262762384955e-04, -3.209539552189528337e-04, -3.201820405303666792e-04, -3.193998211035420343e-04, -3.186073361496017460e-04, -3.178046251959928308e-04, -3.169917280847345123e-04, -3.161686849706443585e-04, -3.153355363195760189e-04, -3.144923229066344658e-04, -3.136390858143763265e-04, -3.127758664310251245e-04, -3.119027064486582217e-04, -3.110196478613769027e-04, -3.101267329635019367e-04, -3.092240043477244705e-04, -3.083115049032666803e-04, -3.073892778140380308e-04, -3.064573665567624791e-04, -3.055158148991206401e-04, -3.045646668978766098e-04, -3.036039668969818593e-04, -3.026337595256923000e-04, -3.016540896966719604e-04, -3.006650026040731888e-04, -2.996665437216319817e-04, -2.986587588007351760e-04, -2.976416938685037426e-04, -2.966153952258385120e-04, -2.955799094454812409e-04, -2.945352833700679821e-04, -2.934815641101539926e-04, -2.924187990422545810e-04, -2.913470358068745696e-04, -2.902663223065145011e-04, -2.891767067036858977e-04, -2.880782374189269548e-04, -2.869709631287710710e-04, -2.858549327637701309e-04, -2.847301955064623848e-04, -2.835968007893348536e-04, -2.824547982928240055e-04, -2.813042379432560431e-04, -2.801451699108123438e-04, -2.789776446074848171e-04, -2.778017126850119631e-04, -2.766174250328198099e-04, -2.754248327759651824e-04, -2.742239872730473115e-04, -2.730149401141329971e-04, -2.717977431186827998e-04, -2.705724483334443278e-04, -2.693391080303630340e-04, -2.680977747044793508e-04, -2.668485010718276698e-04, -2.655913400673114134e-04, -2.643263448425881902e-04, -2.630535687639590160e-04, -2.617730654102196422e-04, -2.604848885705368200e-04, -2.591890922423171388e-04, -2.578857306290453983e-04, -2.565748581381476455e-04, -2.552565293788432621e-04, -2.539307991599698382e-04, -2.525977224878305969e-04, -2.512573545640386214e-04, -2.499097507833110995e-04, -2.485549667313339335e-04, -2.471930581825615143e-04, -2.458240810980175258e-04, -2.444480916231409062e-04, -2.430651460855632337e-04, -2.416753009929237066e-04, -2.402786130306762088e-04, -2.388751390598696229e-04, -2.374649361149466017e-04, -2.360480614015408754e-04, -2.346245722942464794e-04, -2.331945263344053847e-04, -2.317579812278978133e-04, -2.303149948428945509e-04, -2.288656252076453105e-04, -2.274099305082379031e-04, -2.259479690863772225e-04, -2.244797994371286953e-04, -2.230054802066868845e-04, -2.215250701901428189e-04, -2.200386283292193120e-04, -2.185462137100298611e-04, -2.170478855608389847e-04, -2.155437032497881621e-04, -2.140337262826512909e-04, -2.125180143005880309e-04, -2.109966270778476530e-04, -2.094696245195501927e-04, -2.079370666594009790e-04, -2.063990136574038892e-04, -2.048555257976375152e-04, -2.033066634859470047e-04, -2.017524872476864550e-04, -2.001930577254539868e-04, -1.986284356767997143e-04, -1.970586819719535008e-04, -1.954838575915635035e-04, -1.939040236243918364e-04, -1.923192412650470977e-04, -1.907295718117106348e-04, -1.891350766638361385e-04, -1.875358173198774262e-04, -1.859318553749967642e-04, -1.843232525187964448e-04, -1.827100705330078915e-04, -1.810923712892176262e-04, -1.794702167465910946e-04, -1.778436689495616627e-04, -1.762127900255543611e-04, -1.745776421827086272e-04, -1.729382877075663790e-04, -1.712947889627954620e-04, -1.696472083849151014e-04, -1.679956084819648674e-04, -1.663400518312669902e-04, -1.646806010771129439e-04, -1.630173189284529571e-04, -1.613502681566538833e-04, -1.596795115931883588e-04, -1.580051121273238265e-04, -1.563271327038883742e-04, -1.546456363209392393e-04, -1.529606860274956338e-04, -1.512723449212647925e-04, -1.495806761463344930e-04, -1.478857428909037118e-04, -1.461876083850123325e-04, -1.444863358982375408e-04, -1.427819887374256471e-04, -1.410746302444266999e-04, -1.393643237937954352e-04, -1.376511327905296307e-04, -1.359351206677910317e-04, -1.342163508846486110e-04, -1.324948869237844789e-04, -1.307707922892377666e-04, -1.290441305041498381e-04, -1.273149651084755666e-04, -1.255833596567337775e-04, -1.238493777157573391e-04, -1.221130828624121371e-04, -1.203745386813520168e-04, -1.186338087627821419e-04, -1.168909567001617328e-04, -1.151460460880099395e-04, -1.133991405196329877e-04, -1.116503035848572754e-04, -1.098995988678417635e-04, -1.081470899447932921e-04, -1.063928403817494535e-04, -1.046369137323567919e-04, -1.028793735356176953e-04, -1.011202833136759125e-04, -9.935970656960644817e-05, -9.759770678517043681e-05, -9.583434741861026924e-05, -9.406969190244984097e-05, -9.230380364125933396e-05, -9.053674600946567030e-05, -8.876858234914139034e-05, -8.699937596782250605e-05, -8.522919013628890879e-05, -8.345808808638402519e-05, -8.168613300884085629e-05, -7.991338805107395910e-05, -7.813991631501132694e-05, -7.636578085493227338e-05, -7.459104467527134016e-05, -7.281577072846352663e-05, -7.104002191279907381e-05, -6.926386107021868506e-05, -6.748735098421495789e-05, -6.571055437765771837e-05, -6.393353391062474940e-05, -6.215635217831653114e-05, -6.037907170887482622e-05, -5.860175496126965783e-05, -5.682446432318681627e-05, -5.504726210888180279e-05, -5.327021055707770381e-05, -5.149337182886793741e-05, -4.971680800558536233e-05, -4.794058108671611038e-05, -4.616475298781709156e-05, -4.438938553840276205e-05, -4.261454047987333585e-05, -4.084027946344990140e-05, -3.906666404807705955e-05, -3.729375569837272444e-05, -3.552161578255872028e-05, -3.375030557042293532e-05, -3.197988623124410466e-05, -3.021041883176161461e-05, -2.844196433415065007e-05, -2.667458359396532411e-05, -2.490833735812642244e-05, -2.314328626291511102e-05, -2.137949083193460548e-05, -1.961701147411656389e-05, -1.785590848173807080e-05, -1.609624202838127720e-05, -1.433807216700148944e-05, -1.258145882792123937e-05, -1.082646181683097320e-05, -9.073140812876971144e-06, -7.321555366654213098e-06, -5.571764898269951198e-06, -3.823828695409499071e-06, -2.077805911371170882e-06, -3.337555631462109005e-07, 1.408263470494281391e-06, 3.148192450947390809e-06, 4.885972781656096202e-06, 6.621546010042845337e-06, 8.354853829393779218e-06, 1.008583808073136904e-05, 1.181444075474264899e-05, 1.354060399359919871e-05, 1.526427009284940045e-05, 1.698538150330287396e-05, 1.870388083282798202e-05, 2.041971084824172869e-05, 2.213281447712934361e-05, 2.384313480966037145e-05, 2.555061510043408568e-05, 2.725519877027979271e-05, 2.895682940804879444e-05, 3.065545077243629521e-05, 3.235100679375700638e-05, 3.404344157571324300e-05, 3.573269939719221584e-05, 3.741872471401271841e-05, 3.910146216068953722e-05, 4.078085655216379780e-05, 4.245685288556682609e-05, 4.412939634193747729e-05, 4.579843228793225468e-05, 4.746390627756269618e-05, 4.912576405388786139e-05, 5.078395155069788749e-05, 5.243841489422560565e-05, 5.408910040481267517e-05, 5.573595459856728118e-05, 5.737892418904863920e-05, 5.901795608890704747e-05, 6.065299741151007498e-05, 6.228399547262131305e-05, 6.391089779197211608e-05, 6.553365209490185034e-05, 6.715220631398753799e-05, 6.876650859059009197e-05, 7.037650727648529488e-05, 7.198215093542717784e-05, 7.358338834470490775e-05, 7.518016849672695570e-05, 7.677244060055888871e-05, 7.836015408345385657e-05, 7.994325859240618585e-05, 8.152170399566256796e-05, 8.309544038422206640e-05, 8.466441807336241594e-05, 8.622858760411755978e-05, 8.778789974476800743e-05, 8.934230549229964225e-05, 9.089175607388921396e-05, 9.243620294834814359e-05, 9.397559780755341283e-05, 9.550989257790557202e-05, 9.703903942174033070e-05, 9.856299073873128487e-05, 1.000816991673172420e-04, 1.015951175860831828e-04, 1.031031991151302324e-04, 1.046058971174895134e-04, 1.061031652004372435e-04, 1.075949572168700583e-04, 1.090812272666689389e-04, 1.105619296979858064e-04, 1.120370191086031663e-04, 1.135064503472337823e-04, 1.149701785148090195e-04, 1.164281589657927631e-04, 1.178803473094499336e-04, 1.193266994111055447e-04, 1.207671713934262570e-04, 1.222017196376570054e-04, 1.236303007848491020e-04, 1.250528717371095081e-04, 1.264693896588017915e-04, 1.278798119777601076e-04, 1.292840963864697328e-04, 1.306822008432736190e-04, 1.320740835735343332e-04, 1.334597030707871063e-04, 1.348390180979125062e-04, 1.362119876882666102e-04, 1.375785711468011216e-04, 1.389387280512034077e-04, 1.402924182529940924e-04, 1.416396018786102824e-04, 1.429802393305299119e-04, 1.443142912883029817e-04, 1.456417187096335655e-04, 1.469624828314567485e-04, 1.482765451709362552e-04, 1.495838675265184032e-04, 1.508844119789691691e-04, 1.521781408923413243e-04, 1.534650169150062425e-04, 1.547450029806271077e-04, 1.560180623091243410e-04, 1.572841584076566145e-04, 1.585432550715660312e-04, 1.597953163853056062e-04, 1.610403067233911144e-04, 1.622781907513069148e-04, 1.635089334264041845e-04, 1.647324999988141424e-04, 1.659488560123206151e-04, 1.671579673052372376e-04, 1.683598000112571157e-04, 1.695543205603179378e-04, 1.707414956794345881e-04, 1.719212923935127860e-04, 1.730936780261838406e-04, 1.742586202005990184e-04, 1.754160868402104671e-04, 1.765660461695719801e-04, 1.777084667150960679e-04, 1.788433173058005669e-04, 1.799705670740855241e-04, 1.810901854564287946e-04, 1.822021421941263345e-04, 1.833064073340197006e-04, 1.844029512291565736e-04, 1.854917445395107766e-04, 1.865727582326443977e-04, 1.876459635843636504e-04, 1.887113321793897785e-04, 1.897688359119871612e-04, 1.908184469865865397e-04, 1.918601379184174324e-04, 1.928938815341040393e-04, 1.939196509722520396e-04, 1.949374196840444418e-04, 1.959471614338028484e-04, 1.969488502995489368e-04, 1.979424606735411668e-04, 1.989279672628242268e-04, 1.999053450897450329e-04, 2.008745694924540641e-04, 2.018356161254214963e-04, 2.027884609599164205e-04, 2.037330802844741057e-04, 2.046694507053757866e-04, 2.055975491470918575e-04, 2.065173528527125719e-04, 2.074288393844034349e-04, 2.083319866237904195e-04, 2.092267727723780084e-04, 2.101131763519565286e-04, 2.109911762049535412e-04, 2.118607514948268108e-04, 2.127218817064139872e-04, 2.135745466462707419e-04, 2.144187264430180099e-04, 2.152544015476567344e-04, 2.160815527338730692e-04, 2.169001610983474037e-04, 2.177102080610353069e-04, 2.185116753654365446e-04, 2.193045450788706297e-04, 2.200887995927198733e-04, 2.208644216226643311e-04, 2.216313942089217647e-04, 2.223897007164534227e-04, 2.231393248351739157e-04, 2.238802505801342564e-04, 2.246124622917153085e-04, 2.253359446357891429e-04, 2.260506826038725340e-04, 2.267566615132812411e-04, 2.274538670072590561e-04, 2.281422850550943009e-04, 2.288219019522401193e-04, 2.294927043204088844e-04, 2.301546791076483091e-04, 2.308078135884433074e-04, 2.314520953637461077e-04, 2.320875123610491655e-04, 2.327140528344266886e-04, 2.333317053645474573e-04, 2.339404588587064564e-04, 2.345403025508244416e-04, 2.351312260014386420e-04, 2.357132190976906174e-04, 2.362862720532959548e-04, 2.368503754084961025e-04, 2.374055200300155717e-04, 2.379516971109948780e-04, 2.384888981709089013e-04, 2.390171150554883084e-04, 2.395363399366166619e-04, 2.400465653122224065e-04, 2.405477840061526955e-04, 2.410399891680482462e-04, 2.415231742731948857e-04, 2.419973331223648511e-04, 2.424624598416571944e-04, 2.429185488823155286e-04, 2.433655950205341990e-04, 2.438035933572666781e-04, 2.442325393180082098e-04, 2.446524286525663923e-04, 2.450632574348449340e-04, 2.454650220625743647e-04, 2.458577192570688763e-04, 2.462413460629618318e-04, 2.466158998479121628e-04, 2.469813783023258927e-04, 2.473377794390515844e-04, 2.476851015930616384e-04, 2.480233434211388506e-04, 2.483525039015336416e-04, 2.486725823336194971e-04, 2.489835783375405481e-04, 2.492854918538394728e-04, 2.495783231430794892e-04, 2.498620727854570242e-04, 2.501367416804008842e-04, 2.504023310461557040e-04, 2.506588424193689204e-04, 2.509062776546506948e-04, 2.511446389241341060e-04, 2.513739287170174003e-04, 2.515941498391026094e-04, 2.518053054123185557e-04, 2.520073988742323645e-04, 2.522004339775543095e-04, 2.523844147896320321e-04, 2.525593456919275766e-04, 2.527252313794938290e-04, 2.528820768604318195e-04, 2.530298874553403273e-04, 2.531686687967628835e-04, 2.532984268286067467e-04, 2.534191678055681680e-04, 2.535308982925446987e-04, 2.536336251640243511e-04, 2.537273556034816977e-04, 2.538120971027521783e-04, 2.538878574613999558e-04, 2.539546447860787791e-04, 2.540124674898752819e-04, 2.540613342916483780e-04, 2.541012542153570563e-04, 2.541322365893778756e-04, 2.541542910458098820e-04, 2.541674275197747029e-04, 2.541716562487030331e-04, 2.541669877716125564e-04, 2.541534329283751331e-04, 2.541310028589737965e-04, 2.540997090027559001e-04, 2.540595630976642556e-04, 2.540105771794701141e-04, 2.539527635809943297e-04, 2.538861349313109583e-04, 2.538107041549536765e-04, 2.537264844711015991e-04, 2.536334893927610326e-04, 2.535317327259405053e-04, 2.534212285688066074e-04, 2.533019913108423794e-04, 2.531740356319878106e-04, 2.530373765017760552e-04, 2.528920291784547952e-04, 2.527380092081051629e-04, 2.525753324237468953e-04, 2.524040149444354642e-04, 2.522240731743521599e-04, 2.520355238018808387e-04, 2.518383837986798456e-04, 2.516326704187434754e-04, 2.514184011974527526e-04, 2.511955939506217684e-04, 2.509642667735295413e-04, 2.507244380399485184e-04, 2.504761264011613666e-04, 2.502193507849666504e-04, 2.499541303946834262e-04, 2.496804847081407117e-04, 2.493984334766581189e-04, 2.491079967240238851e-04, 2.488091947454601103e-04, 2.485020481065775325e-04, 2.481865776423268868e-04, 2.478628044559419712e-04, 2.475307499178667201e-04, 2.471904356646838501e-04, 2.468418835980331510e-04, 2.464851158835113464e-04, 2.461201549495815486e-04, 2.457470234864609759e-04, 2.453657444450025975e-04, 2.449763410355772675e-04, 2.445788367269378059e-04, 2.441732552450798276e-04, 2.437596205720983695e-04, 2.433379569450259245e-04, 2.429082888546761393e-04, 2.424706410444718466e-04, 2.420250385092651273e-04, 2.415715064941538232e-04, 2.411100704932906487e-04, 2.406407562486783172e-04, 2.401635897489653722e-04, 2.396785972282298202e-04, 2.391858051647607051e-04, 2.386852402798212498e-04, 2.381769295364192900e-04, 2.376609001380633143e-04, 2.371371795275066334e-04, 2.366057953854931479e-04, 2.360667756294951736e-04, 2.355201484124377703e-04, 2.349659421214198702e-04, 2.344041853764384435e-04, 2.338349070290809506e-04, 2.332581361612411585e-04, 2.326739020838106988e-04, 2.320822343353571540e-04, 2.314831626808217142e-04, 2.308767171101835751e-04, 2.302629278371346095e-04, 2.296418252977360951e-04, 2.290134401490810797e-04, 2.283778032679431949e-04, 2.277349457494174181e-04, 2.270848989055589660e-04, 2.264276942640204788e-04, 2.257633635666698524e-04, 2.250919387682129768e-04, 2.244134520348128956e-04, 2.237279357426851683e-04, 2.230354224767161085e-04, 2.223359450290488220e-04, 2.216295363976716296e-04, 2.209162297850169254e-04, 2.201960585965246362e-04, 2.194690564392264161e-04, 2.187352571203150147e-04, 2.179946946456994418e-04, 2.172474032185700533e-04, 2.164934172379514936e-04, 2.157327712972447148e-04, 2.149655001827733051e-04, 2.141916388723227166e-04, 2.134112225336661840e-04, 2.126242865230963620e-04, 2.118308663839513261e-04, 2.110309978451221946e-04, 2.102247168195730035e-04, 2.094120594028465402e-04, 2.085930618715713157e-04, 2.077677606819526806e-04, 2.069361924682697684e-04, 2.060983940413735230e-04, 2.052544023871569168e-04, 2.044042546650445759e-04, 2.035479882064720233e-04, 2.026856405133484163e-04, 2.018172492565295561e-04, 2.009428522742874818e-04, 2.000624875707536921e-04, 1.991761933143927242e-04, 1.982840078364487895e-04, 1.973859696293771239e-04, 1.964821173453162374e-04, 1.955724897945040311e-04, 1.946571259437248128e-04, 1.937360649147434649e-04, 1.928093459827275513e-04, 1.918770085746745460e-04, 1.909390922678429387e-04, 1.899956367881556118e-04, 1.890466820086241417e-04, 1.880922679477648883e-04, 1.871324347679953243e-04, 1.861672227740477931e-04, 1.851966724113680070e-04, 1.842208242645230587e-04, 1.832397190555826801e-04, 1.822533976425216710e-04, 1.812619010176148729e-04, 1.802652703058122482e-04, 1.792635467631297072e-04, 1.782567717750380653e-04, 1.772449868548298005e-04, 1.762282336420009090e-04, 1.752065539006359047e-04, 1.741799895177535706e-04, 1.731485825017057276e-04, 1.721123749805319851e-04, 1.710714092003098289e-04, 1.700257275235466953e-04, 1.689753724275153688e-04, 1.679203865026223112e-04, 1.668608124507696226e-04, 1.657966930836964287e-04, 1.647280713213367478e-04, 1.636549901901793646e-04, 1.625774928216002185e-04, 1.614956224502179399e-04, 1.604094224122458630e-04, 1.593189361438209720e-04, 1.582242071793559955e-04, 1.571252791498758603e-04, 1.560221957813655031e-04, 1.549150008930939924e-04, 1.538037383959586801e-04, 1.526884522908265624e-04, 1.515691866668553926e-04, 1.504459856998329543e-04, 1.493188936505160911e-04, 1.481879548629491086e-04, 1.470532137627978710e-04, 1.459147148556897788e-04, 1.447725027255245282e-04, 1.436266220328107275e-04, 1.424771175130018367e-04, 1.413240339747959219e-04, 1.401674162984926550e-04, 1.390073094343048860e-04, 1.378437584006663385e-04, 1.366768082825908868e-04, 1.355065042299668078e-04, 1.343328914558912025e-04, 1.331560152350018693e-04, 1.319759209017845668e-04, 1.307926538489037214e-04, 1.296062595255340034e-04, 1.284167834356670734e-04, 1.272242711364437822e-04, 1.260287682364849863e-04, 1.248303203941986757e-04, 1.236289733161153974e-04, 1.224247727552074444e-04, 1.212177645092228976e-04, 1.200079944189948124e-04, 1.187955083667757759e-04, 1.175803522745720575e-04, 1.163625721024517923e-04, 1.151422138468843767e-04, 1.139193235390733856e-04, 1.126939472432705159e-04, 1.114661310551135181e-04, 1.102359210999678146e-04, 1.090033635312273645e-04, 1.077685045286839836e-04, 1.065313902968447433e-04, 1.052920670632483271e-04, 1.040505810768396620e-04, 1.028069786062748772e-04, 1.015613059382719616e-04, 1.003136093759594014e-04, 9.906393523720000410e-05, 9.781232985294319551e-05, 9.655883956557731712e-05, 9.530351072725912805e-05, 9.404638969827012747e-05, 9.278752284537424575e-05, 9.152695654015217117e-05, 9.026473715736677960e-05, 8.900091107331022761e-05, 8.773552466417485743e-05, 8.646862430439302587e-05, 8.520025636500784668e-05, 8.393046721204431226e-05, 8.265930320485759296e-05, 8.138681069450903781e-05, 8.011303602214466879e-05, 7.883802551734986341e-05, 7.756182549653232138e-05, 7.628448226130869043e-05, 7.500604209686519846e-05, 7.372655127034890080e-05, 7.244605602926513447e-05, 7.116460259983033057e-05, 6.988223718540192682e-05, 6.859900596485298593e-05, 6.731495509094953793e-05, 6.603013068878831266e-05, 6.474457885416511028e-05, 6.345834565199078199e-05, 6.217147711470825413e-05, 6.088401924068444633e-05, 5.959601799263318424e-05, 5.830751929604122261e-05, 5.701856903757009733e-05, 5.572921306348851825e-05, 5.443949717810833298e-05, 5.314946714219649594e-05, 5.185916867142081036e-05, 5.056864743478076249e-05, 4.927794905306088005e-05, 4.798711909725599640e-05, 4.669620308702950143e-05, 4.540524648917313078e-05, 4.411429471604436624e-05, 4.282339312403530505e-05, 4.153258701204434825e-05, 4.024192161992546632e-05, 3.895144212696797825e-05, 3.766119365038407606e-05, 3.637122124375397715e-05, 3.508156989554928843e-05, 3.379228452760169271e-05, 3.250340999357636493e-05, 3.121499107750768938e-05, 2.992707249226543207e-05, 2.863969887807180632e-05, 2.735291480101950727e-05, 2.606676475156658178e-05, 2.478129314306364820e-05, 2.349654431028547663e-05, 2.221256250793961470e-05, 2.092939190920728174e-05, 1.964707660428885745e-05, 1.836566059892662587e-05, 1.708518781296296948e-05, 1.580570207888476006e-05, 1.452724714039143925e-05, 1.324986665093697166e-05, 1.197360417230447818e-05, 1.069850317318606996e-05, 9.424607027739795737e-06, 8.151959014179596208e-06, 6.880602313370171242e-06, 5.610580007399637890e-06, 4.341935078184899107e-06, 3.074710406085300690e-06, 1.808948768475808304e-06, 5.446928383989096508e-07, -7.180148168362075570e-07, -1.979131737048930197e-06, -3.238615570522119734e-06, -4.496424075386408844e-06, -5.752515120998873115e-06, -7.006846689258187335e-06, -8.259376875987296666e-06, -9.510063892264602613e-06, -1.075886606575263161e-05, -1.200574184204806324e-05, -1.325064978599878937e-05, -1.449354858301492638e-05, -1.573439704040153166e-05, -1.697315408865764387e-05, -1.820977878276983439e-05, -1.944423030352651952e-05, -2.067646795879647204e-05, -2.190645118481880153e-05, -2.313413954746912636e-05, -2.435949274354964214e-05, -2.558247060204550530e-05, -2.680303308537577888e-05, -2.802114029066407334e-05, -2.923675245097673259e-05, -3.044982993655440635e-05, -3.166033325606376153e-05, -3.286822305781628134e-05, -3.407346013097800114e-05, -3.527600540681618846e-05, -3.647581995986938350e-05, -3.767286500916668611e-05, -3.886710191944030718e-05, -4.005849220227566319e-05, -4.124699751732548614e-05, -4.243257967347268458e-05, -4.361520062999010112e-05, -4.479482249771946035e-05, -4.597140754021680130e-05, -4.714491817489179773e-05, -4.831531697416636370e-05, -4.948256666659907966e-05, -5.064663013800463793e-05, -5.180747043259000526e-05, -5.296505075405724623e-05, -5.411933446671401727e-05, -5.527028509656192946e-05, -5.641786633240519273e-05, -5.756204202692676101e-05, -5.870277619775746402e-05, -5.984003302856355690e-05, -6.097377687010093063e-05, -6.210397224126283763e-05, -6.323058383014574374e-05, -6.435357649508150228e-05, -6.547291526566067826e-05, -6.658856534378977427e-05, -6.770049210467434431e-05, -6.880866109784741379e-05, -6.991303804819054047e-05, -7.101358885689487840e-05, -7.211027960248054473e-05, -7.320307654176841730e-05, -7.429194611084508808e-05, -7.537685492604744074e-05, -7.645776978491243883e-05, -7.753465766712103224e-05, -7.860748573545866538e-05, -7.967622133674323235e-05, -8.074083200274496822e-05, -8.180128545112448721e-05, -8.285754958633706154e-05, -8.390959250053051696e-05, -8.495738247445779219e-05, -8.600088797835758216e-05, -8.704007767283999562e-05, -8.807492040975105731e-05, -8.910538523305462514e-05, -9.013144137968244528e-05, -9.115305828037637405e-05, -9.217020556054804175e-05, -9.318285304110298186e-05, -9.419097073926184646e-05, -9.519452886939276171e-05, -9.619349784381526385e-05, -9.718784827359122462e-05, -9.817755096934835705e-05, -9.916257694203322096e-05, -1.001428974037043575e-04, -1.011184837683172381e-04, -1.020893076524557482e-04, -1.030553408761100215e-04, -1.040165554634148897e-04, -1.049729236433791441e-04, -1.059244178506295558e-04, -1.068710107261247144e-04, -1.078126751178599897e-04, -1.087493840815880928e-04, -1.096811108815070424e-04, -1.106078289909413835e-04, -1.115295120930364010e-04, -1.124461340814203241e-04, -1.133576690608719642e-04, -1.142640913479660861e-04, -1.151653754717347307e-04, -1.160614961742975702e-04, -1.169524284114851755e-04, -1.178381473534741549e-04, -1.187186283853938334e-04, -1.195938471079232413e-04, -1.204637793379019538e-04, -1.213284011089104509e-04, -1.221876886718401499e-04, -1.230416184954905576e-04, -1.238901672671010028e-04, -1.247333118929212661e-04, -1.255710294987587088e-04, -1.264032974305102908e-04, -1.272300932546930165e-04, -1.280513947589578198e-04, -1.288671799526124745e-04, -1.296774270671184842e-04, -1.304821145565805186e-04, -1.312812210982427878e-04, -1.320747255929631645e-04, -1.328626071656733459e-04, -1.336448451658530572e-04, -1.344214191679748451e-04, -1.351923089719428005e-04, -1.359574946035365934e-04, -1.367169563148357212e-04, -1.374706745846251629e-04, -1.382186301188279216e-04, -1.389608038508802126e-04, -1.396971769421342718e-04, -1.404277307822541707e-04, -1.411524469895631404e-04, -1.418713074114345352e-04, -1.425842941246375302e-04, -1.432913894356834699e-04, -1.439925758811756858e-04, -1.446878362281358687e-04, -1.453771534743216040e-04, -1.460605108485528523e-04, -1.467378918110107556e-04, -1.474092800535296670e-04, -1.480746594998980710e-04, -1.487340143061296072e-04, -1.493873288607390807e-04, -1.500345877849973582e-04, -1.506757759331978921e-04, -1.513108783928950008e-04, -1.519398804851365659e-04, -1.525627677647030172e-04, -1.531795260203213001e-04, -1.537901412748724731e-04, -1.543945997856018535e-04, -1.549928880443109482e-04, -1.555849927775345039e-04, -1.561709009467364222e-04, -1.567505997484549890e-04, -1.573240766144746387e-04, -1.578913192119859557e-04, -1.584523154437074573e-04, -1.590070534480365959e-04, -1.595555215991698072e-04, -1.600977085072144001e-04, -1.606336030183057588e-04, -1.611631942147045418e-04, -1.616864714148802190e-04, -1.622034241736069430e-04, -1.627140422820305254e-04, -1.632183157677305886e-04, -1.637162348947869734e-04, -1.642077901638237846e-04, -1.646929723120502381e-04, -1.651717723132891758e-04, -1.656441813780085614e-04, -1.661101909533315639e-04, -1.665697927230395654e-04, -1.670229786075785048e-04, -1.674697407640450260e-04, -1.679100715861622740e-04, -1.683439637042634417e-04, -1.687714099852501094e-04, -1.691924035325449466e-04, -1.696069376860520302e-04, -1.700150060220808419e-04, -1.704166023532863389e-04, -1.708117207285957974e-04, -1.712003554331125354e-04, -1.715825009880269812e-04, -1.719581521505229708e-04, -1.723273039136506257e-04, -1.726899515062232178e-04, -1.730460903926834605e-04, -1.733957162729666006e-04, -1.737388250823631317e-04, -1.740754129913643492e-04, -1.744054764054994494e-04, -1.747290119651748229e-04, -1.750460165454943489e-04, -1.753564872560722343e-04, -1.756604214408476693e-04, -1.759578166778806184e-04, -1.762486707791445473e-04, -1.765329817903072524e-04, -1.768107479905120137e-04, -1.770819678921413745e-04, -1.773466402405756901e-04, -1.776047640139495881e-04, -1.778563384228910014e-04, -1.781013629102586016e-04, -1.783398371508690676e-04, -1.785717610512195031e-04, -1.787971347491934548e-04, -1.790159586137734095e-04, -1.792282332447294108e-04, -1.794339594723093573e-04, -1.796331383569258031e-04, -1.798257711888182563e-04, -1.800118594877267528e-04, -1.801914050025463752e-04, -1.803644097109737487e-04, -1.805308758191553800e-04, -1.806908057613164538e-04, -1.808442021993881654e-04, -1.809910680226299573e-04, -1.811314063472383123e-04, -1.812652205159478482e-04, -1.813925140976337677e-04, -1.815132908868963117e-04, -1.816275549036418225e-04, -1.817353103926566259e-04, -1.818365618231754916e-04, -1.819313138884383297e-04, -1.820195715052398135e-04, -1.821013398134776193e-04, -1.821766241756863822e-04, -1.822454301765652008e-04, -1.823077636225030275e-04, -1.823636305410920519e-04, -1.824130371806331958e-04, -1.824559900096393860e-04, -1.824924957163258170e-04, -1.825225612080964995e-04, -1.825461936110244399e-04, -1.825634002693198661e-04, -1.825741887447973697e-04, -1.825785668163316629e-04, -1.825765424793094065e-04, -1.825681239450706284e-04, -1.825533196403450475e-04, -1.825321382066837615e-04, -1.825045884998782774e-04, -1.824706795893784304e-04, -1.824304207576995151e-04, -1.823838214998261913e-04, -1.823308915226047339e-04, -1.822716407441320587e-04, -1.822060792931381058e-04, -1.821342175083605266e-04, -1.820560659379111300e-04, -1.819716353386392391e-04, -1.818809366754839884e-04, -1.817839811208264050e-04, -1.816807800538262831e-04, -1.815713450597606585e-04, -1.814556879293510608e-04, -1.813338206580860767e-04, -1.812057554455368392e-04, -1.810715046946656049e-04, -1.809310810111300751e-04, -1.807844972025789360e-04, -1.806317662779418417e-04, -1.804729014467158733e-04, -1.803079161182383379e-04, -1.801368239009649064e-04, -1.799596386017289409e-04, -1.797763742250039392e-04, -1.795870449721572782e-04, -1.793916652406948506e-04, -1.791902496235038035e-04, -1.789828129080874171e-04, -1.787693700757942371e-04, -1.785499363010407557e-04, -1.783245269505291056e-04, -1.780931575824585471e-04, -1.778558439457310185e-04, -1.776126019791501821e-04, -1.773634478106175967e-04, -1.771083977563196743e-04, -1.768474683199085652e-04, -1.765806761916838296e-04, -1.763080382477592010e-04, -1.760295715492312199e-04, -1.757452933413390856e-04, -1.754552210526194665e-04, -1.751593722940540730e-04, -1.748577648582191283e-04, -1.745504167184149164e-04, -1.742373460278082598e-04, -1.739185711185566193e-04, -1.735941105009274781e-04, -1.732639828624223609e-04, -1.729282070668846435e-04, -1.725868021536064684e-04, -1.722397873364351186e-04, -1.718871820028644831e-04, -1.715290057131288806e-04, -1.711652781992939834e-04, -1.707960193643319924e-04, -1.704212492812016110e-04, -1.700409881919235722e-04, -1.696552565066424792e-04, -1.692640748026914637e-04, -1.688674638236499059e-04, -1.684654444783993655e-04, -1.680580378401653910e-04, -1.676452651455659696e-04, -1.672271477936518726e-04, -1.668037073449352104e-04, -1.663749655204242760e-04, -1.659409442006490364e-04, -1.655016654246796318e-04, -1.650571513891427062e-04, -1.646074244472387404e-04, -1.641525071077430957e-04, -1.636924220340138872e-04, -1.632271920429934878e-04, -1.627568401041943659e-04, -1.622813893387030555e-04, -1.618008630181590006e-04, -1.613152845637352427e-04, -1.608246775451269140e-04, -1.603290656795160413e-04, -1.598284728305475173e-04, -1.593229230072979970e-04, -1.588124403632332475e-04, -1.582970491951708378e-04, -1.577767739422375698e-04, -1.572516391848175312e-04, -1.567216696435003653e-04, -1.561868901780303536e-04, -1.556473257862415398e-04, -1.551030016029978948e-04, -1.545539428991258386e-04, -1.540001750803473310e-04, -1.534417236862029065e-04, -1.528786143889750886e-04, -1.523108729926141082e-04, -1.517385254316474131e-04, -1.511615977700947607e-04, -1.505801162003850193e-04, -1.499941070422536695e-04, -1.494035967416507691e-04, -1.488086118696474263e-04, -1.482091791213196140e-04, -1.476053253146584381e-04, -1.469970773894543577e-04, -1.463844624061801049e-04, -1.457675075448910593e-04, -1.451462401040951847e-04, -1.445206874996382248e-04, -1.438908772635859724e-04, -1.432568370430905463e-04, -1.426185945992657750e-04, -1.419761778060623378e-04, -1.413296146491254215e-04, -1.406789332246638708e-04, -1.400241617383160314e-04, -1.393653285040007941e-04, -1.387024619427811880e-04, -1.380355905817142045e-04, -1.373647430527111116e-04, -1.366899480913779264e-04, -1.360112345358680040e-04, -1.353286313257320785e-04, -1.346421675007523119e-04, -1.339518721997900585e-04, -1.332577746596274757e-04, -1.325599042137975351e-04, -1.318582902914237356e-04, -1.311529624160579746e-04, -1.304439502045035384e-04, -1.297312833656484999e-04, -1.290149916993015033e-04, -1.282951050949993576e-04, -1.275716535308531478e-04, -1.268446670723617927e-04, -1.261141758712232708e-04, -1.253802101641751209e-04, -1.246428002717956936e-04, -1.239019765973267077e-04, -1.231577696254946143e-04, -1.224102099213130140e-04, -1.216593281289018254e-04, -1.209051549703030242e-04, -1.201477212442807164e-04, -1.193870578251345196e-04, -1.186231956615130527e-04, -1.178561657752098888e-04, -1.170859992599766926e-04, -1.163127272803225206e-04, -1.155363810703263490e-04, -1.147569919324271714e-04, -1.139745912362324069e-04, -1.131892104173229732e-04, -1.124008809760428161e-04, -1.116096344763034813e-04, -1.108155025443885786e-04, -1.100185168677391767e-04, -1.092187091937578478e-04, -1.084161113286116805e-04, -1.076107551360083378e-04, -1.068026725360152662e-04, -1.059918955038434781e-04, -1.051784560686322293e-04, -1.043623863122651645e-04, -1.035437183681457658e-04, -1.027224844199966933e-04, -1.018987167006602239e-04, -1.010724474908790389e-04, -1.002437091180949412e-04, -9.941253395524840032e-05, -9.857895441955837686e-05, -9.774300297132163689e-05, -9.690471211271142868e-05, -9.606411438655779590e-05, -9.522124237514915479e-05, -9.437612869902159266e-05, -9.352880601575852060e-05, -9.267930701877419861e-05, -9.182766443611142316e-05, -9.097391102924314498e-05, -9.011807959185397492e-05, -8.926020294864151709e-05, -8.840031395411717351e-05, -8.753844549139025205e-05, -8.667463047096955709e-05, -8.580890182956689113e-05, -8.494129252888212489e-05, -8.407183555440741725e-05, -8.320056391423181455e-05, -8.232751063782899059e-05, -8.145270877486337742e-05, -8.057619139399704151e-05, -7.969799158168016132e-05, -7.881814244096163049e-05, -7.793667709028861555e-05, -7.705362866232014067e-05, -7.616903030272012662e-05, -7.528291516897048761e-05, -7.439531642918523094e-05, -7.350626726090823937e-05, -7.261580084992840087e-05, -7.172395038909805853e-05, -7.083074907713423545e-05, -6.993623011743750476e-05, -6.904042671691702630e-05, -6.814337208478443936e-05, -6.724509943139868600e-05, -6.634564196707426953e-05, -6.544503290088958081e-05, -6.454330543953721027e-05, -6.364049278612536240e-05, -6.273662813901244686e-05, -6.183174469064137136e-05, -6.092587562635654838e-05, -6.001905412324112224e-05, -5.911131334895745545e-05, -5.820268646056820803e-05, -5.729320660338046951e-05, -5.638290690979031112e-05, -5.547182049811131215e-05, -5.455998047142553603e-05, -5.364741991642378637e-05, -5.273417190226172620e-05, -5.182026947939526195e-05, -5.090574567843844482e-05, -4.999063350902295110e-05, -4.907496595864112326e-05, -4.815877599150988192e-05, -4.724209654743732802e-05, -4.632496054067239074e-05, -4.540740085877575293e-05, -4.448945036149627881e-05, -4.357114187961620320e-05, -4.265250821385204182e-05, -4.173358213371594866e-05, -4.081439637638023104e-05, -3.989498364558491427e-05, -3.897537661049697800e-05, -3.805560790460379240e-05, -3.713571012460757073e-05, -3.621571582930308459e-05, -3.529565753847758492e-05, -3.437556773181348106e-05, -3.345547884777428906e-05, -3.253542328251334833e-05, -3.161543338878512684e-05, -3.069554147484003959e-05, -2.977577980334398359e-05, -2.885618059028785404e-05, -2.793677600391348290e-05, -2.701759816362029885e-05, -2.609867913889508769e-05, -2.518005094824508650e-05, -2.426174555811442190e-05, -2.334379488182336724e-05, -2.242623077851109645e-05, -2.150908505206193760e-05, -2.059238945005458792e-05, -1.967617566271486932e-05, -1.876047532185217014e-05, -1.784531999981886515e-05, -1.693074120847545477e-05, -1.601677039812668827e-05, -1.510343895651326084e-05, -1.419077820776580416e-05, -1.327881941136239376e-05, -1.236759376113135585e-05, -1.145713238420517479e-05, -1.054746634001075531e-05, -9.638626619261631142e-06, -8.730644142933770109e-06, -7.823549761265219694e-06, -6.917374252759404239e-06, -6.012148323172715587e-06, -5.107902604525509790e-06, -4.204667654117172963e-06, -3.302473953525395900e-06, -2.401351907631273461e-06, -1.501331843635360604e-06, -6.024440100907752780e-07, 2.952814240813488971e-07, 1.191814370550560616e-06, 2.087124822544718775e-06, 2.981182855800449203e-06, 3.873958629533237150e-06, 4.765422387370817619e-06, 5.655544458312672488e-06, 6.544295257674329934e-06, 7.431645288005860712e-06, 8.317565140049265089e-06, 9.202025493650286029e-06, 1.008499711868988624e-05, 1.096645087600670940e-05, 1.184635771831740180e-05, 1.272468869110877350e-05, 1.360141493356852997e-05, 1.447650767946839209e-05, 1.534993825807918981e-05, 1.622167809504512388e-05, 1.709169871329599150e-05, 1.795997173391202393e-05, 1.882646887700788730e-05, 1.969116196260968364e-05, 2.055402291153119961e-05, 2.141502374622265733e-05, 2.227413659165448814e-05, 2.313133367615436721e-05, 2.398658733226025704e-05, 2.483986999757942419e-05, 2.569115421561321566e-05, 2.654041263660582986e-05, 2.738761801837843408e-05, 2.823274322713895842e-05, 2.907576123831658591e-05, 2.991664513738264263e-05, 3.075536812064811308e-05, 3.159190349608258556e-05, 3.242622468411841504e-05, 3.325830521842883816e-05, 3.408811874674232763e-05, 3.491563903161259936e-05, 3.574083995120635993e-05, 3.656369550008192634e-05, 3.738417978996398335e-05, 3.820226705049147969e-05, 3.901793163000071338e-05, 3.983114799626283998e-05, 4.064189073725000368e-05, 4.145013456186270824e-05, 4.225585430069115050e-05, 4.305902490673210845e-05, 4.385962145612164501e-05, 4.465761914886132026e-05, 4.545299330954223513e-05, 4.624571938804247838e-05, 4.703577296025655071e-05, 4.782312972877953019e-05, 4.860776552360599644e-05, 4.938965630283344066e-05, 5.016877815333190276e-05, 5.094510729143668170e-05, 5.171862006362476922e-05, 5.248929294716893546e-05, 5.325710255081278033e-05, 5.402202561543325557e-05, 5.478403901467974774e-05, 5.554311975563655285e-05, 5.629924497944692956e-05, 5.705239196197055263e-05, 5.780253811439589059e-05, 5.854966098386711859e-05, 5.929373825411444641e-05, 6.003474774605410918e-05, 6.077266741839936951e-05, 6.150747536827406070e-05, 6.223914983179369882e-05, 6.296766918465726733e-05, 6.369301194274349439e-05, 6.441515676267491584e-05, 6.513408244240155543e-05, 6.584976792177056463e-05, 6.656219228307079028e-05, 6.727133475160919070e-05, 6.797717469624548284e-05, 6.867969162994176505e-05, 6.937886521030273439e-05, 7.007467524011137729e-05, 7.076710166783914098e-05, 7.145612458818644886e-05, 7.214172424258097273e-05, 7.282388101970076037e-05, 7.350257545596115068e-05, 7.417778823603089463e-05, 7.484950019330741523e-05, 7.551769231040494251e-05, 7.618234571963618381e-05, 7.684344170348963033e-05, 7.750096169508325500e-05, 7.815488727864462434e-05, 7.880520018995008165e-05, 7.945188231677633079e-05, 8.009491569935304990e-05, 8.073428253078868469e-05, 8.136996515750435975e-05, 8.200194607966915857e-05, 8.263020795160580490e-05, 8.325473358220520747e-05, 8.387550593534295624e-05, 8.449250813026791399e-05, 8.510572344200524142e-05, 8.571513530174807870e-05, 8.632072729722484606e-05, 8.692248317309331067e-05, 8.752038683129901024e-05, 8.811442233144304160e-05, 8.870457389114338456e-05, 8.929082588638862286e-05, 8.987316285187106537e-05, 9.045156948134251338e-05, 9.102603062793538779e-05, 9.159653130450137965e-05, 9.216305668392023092e-05, 9.272559209943155459e-05, 9.328412304492929037e-05, 9.383863517526969946e-05, 9.438911430656809717e-05, 9.493554641649538212e-05, 9.547791764454981872e-05, 9.601621429235263126e-05, 9.655042282390628803e-05, 9.708052986586289553e-05, 9.760652220779222682e-05, 9.812838680242494871e-05, 9.864611076590789718e-05, 9.915968137804796864e-05, 9.966908608253591284e-05, 1.001743124871836511e-04, 1.006753483641505495e-04, 1.011721816501509347e-04, 1.016648004466722905e-04, 1.021531930201818650e-04, 1.026373478023125444e-04, 1.031172533900710195e-04, 1.035928985460102687e-04, 1.040642721984211093e-04, 1.045313634414944215e-04, 1.049941615355039177e-04, 1.054526559069498941e-04, 1.059068361487303583e-04, 1.063566920202775173e-04, 1.068022134477129804e-04, 1.072433905239719281e-04, 1.076802135089481642e-04, 1.081126728296077813e-04, 1.085407590801087480e-04, 1.089644630219215672e-04, 1.093837755839255533e-04, 1.097986878625127665e-04, 1.102091911216893311e-04, 1.106152767931523875e-04, 1.110169364763758927e-04, 1.114141619386907023e-04, 1.118069451153470476e-04, 1.121952781095839519e-04, 1.125791531926881702e-04, 1.129585628040368796e-04, 1.133334995511501008e-04, 1.137039562097310843e-04, 1.140699257236937680e-04, 1.144314012051948288e-04, 1.147883759346569253e-04, 1.151408433607740240e-04, 1.154887971005323107e-04, 1.158322309392037936e-04, 1.161711388303520364e-04, 1.165055148958135504e-04, 1.168353534256955583e-04, 1.171606488783407714e-04, 1.174813958803127119e-04, 1.177975892263542019e-04, 1.181092238793556910e-04, 1.184162949703029973e-04, 1.187187977982362983e-04, 1.190167278301852000e-04, 1.193100807011072902e-04, 1.195988522138254984e-04, 1.198830383389472417e-04, 1.201626352147854541e-04, 1.204376391472792771e-04, 1.207080466098931610e-04, 1.209738542435215096e-04, 1.212350588563896518e-04, 1.214916574239373304e-04, 1.217436470887086827e-04, 1.219910251602316097e-04, 1.222337891148846220e-04, 1.224719365957710460e-04, 1.227054654125758813e-04, 1.229343735414234321e-04, 1.231586591247274835e-04, 1.233783204710379956e-04, 1.235933560548721033e-04, 1.238037645165556062e-04, 1.240095446620432347e-04, 1.242106954627461807e-04, 1.244072160553410340e-04, 1.245991057415880973e-04, 1.247863639881286672e-04, 1.249689904262876012e-04, 1.251469848518637956e-04, 1.253203472249227505e-04, 1.254890776695720585e-04, 1.256531764737451066e-04, 1.258126440889665361e-04, 1.259674811301178380e-04, 1.261176883752020540e-04, 1.262632667650915913e-04, 1.264042174032825963e-04, 1.265405415556367791e-04, 1.266722406501169496e-04, 1.267993162765220384e-04, 1.269217701862141486e-04, 1.270396042918389679e-04, 1.271528206670432789e-04, 1.272614215461862364e-04, 1.273654093240424320e-04, 1.274647865555052825e-04, 1.275595559552792258e-04, 1.276497203975718612e-04, 1.277352829157760346e-04, 1.278162467021519769e-04, 1.278926151074969212e-04, 1.279643916408172396e-04, 1.280315799689897116e-04, 1.280941839164217891e-04, 1.281522074647016432e-04, 1.282056547522501897e-04, 1.282545300739606185e-04, 1.282988378808358910e-04, 1.283385827796232825e-04, 1.283737695324414709e-04, 1.284044030564011473e-04, 1.284304884232255993e-04, 1.284520308588603171e-04, 1.284690357430805935e-04, 1.284815086090963592e-04, 1.284894551431463663e-04, 1.284928811840932927e-04, 1.284917927230116367e-04, 1.284861959027673725e-04, 1.284760970175989592e-04, 1.284615025126892719e-04, 1.284424189837336003e-04, 1.284188531765034476e-04, 1.283908119864055856e-04, 1.283583024580350375e-04, 1.283213317847250535e-04, 1.282799073080907422e-04, 1.282340365175699932e-04, 1.281837270499577570e-04, 1.281289866889366677e-04, 1.280698233646027041e-04, 1.280062451529876257e-04, 1.279382602755736839e-04, 1.278658770988078184e-04, 1.277891041336076130e-04, 1.277079500348651917e-04, 1.276224236009459653e-04, 1.275325337731827698e-04, 1.274382896353649084e-04, 1.273397004132248639e-04, 1.272367754739175559e-04, 1.271295243254984600e-04, 1.270179566163950056e-04, 1.269020821348746655e-04, 1.267819108085093880e-04, 1.266574527036339287e-04, 1.265287180248019611e-04, 1.263957171142360064e-04, 1.262584604512751135e-04, 1.261169586518176339e-04, 1.259712224677588725e-04, 1.258212627864269779e-04, 1.256670906300113503e-04, 1.255087171549896141e-04, 1.253461536515512828e-04, 1.251794115430136995e-04, 1.250085023852383836e-04, 1.248334378660397612e-04, 1.246542298045934076e-04, 1.244708901508351825e-04, 1.242834309848641326e-04, 1.240918645163340103e-04, 1.238962030838462291e-04, 1.236964591543354729e-04, 1.234926453224550894e-04, 1.232847743099538902e-04, 1.230728589650547408e-04, 1.228569122618265632e-04, 1.226369472995509724e-04, 1.224129773020896984e-04, 1.221850156172453407e-04, 1.219530757161173793e-04, 1.217171711924584841e-04, 1.214773157620262429e-04, 1.212335232619264738e-04, 1.209858076499619996e-04, 1.207341830039695355e-04, 1.204786635211565782e-04, 1.202192635174392153e-04, 1.199559974267663017e-04, 1.196888798004520926e-04, 1.194179253064969905e-04, 1.191431487289076695e-04, 1.188645649670141090e-04, 1.185821890347872241e-04, 1.182960360601446778e-04, 1.180061212842623588e-04, 1.177124600608760467e-04, 1.174150678555863162e-04, 1.171139602451523425e-04, 1.168091529167905303e-04, 1.165006616674679399e-04, 1.161885024031892341e-04, 1.158726911382824601e-04, 1.155532439946868644e-04, 1.152301772012276424e-04, 1.149035070928978856e-04, 1.145732501101350112e-04, 1.142394227980874630e-04, 1.139020418058898806e-04, 1.135611238859260056e-04, 1.132166858930924123e-04, 1.128687447840643682e-04, 1.125173176165511903e-04, 1.121624215485506521e-04, 1.118040738376078509e-04, 1.114422918400608334e-04, 1.110770930102897308e-04, 1.107084948999681993e-04, 1.103365151572992199e-04, 1.099611715262632718e-04, 1.095824818458501212e-04, 1.092004640493029560e-04, 1.088151361633424768e-04, 1.084265163074088901e-04, 1.080346226928835464e-04, 1.076394736223217042e-04, 1.072410874886718234e-04, 1.068394827745053479e-04, 1.064346780512280842e-04, 1.060266919783064195e-04, 1.056155433024818857e-04, 1.052012508569847866e-04, 1.047838335607436663e-04, 1.043633104176028129e-04, 1.039397005155208437e-04, 1.035130230257845225e-04, 1.030832972022132136e-04, 1.026505423803556361e-04, 1.022147779766975569e-04, 1.017760234878557670e-04, 1.013342984897746207e-04, 1.008896226369277094e-04, 1.004420156615070016e-04, 9.999149737261256313e-05, 9.953808765544943542e-05, 9.908180647051075636e-05, 9.862267385276454106e-05, 9.816070991084661532e-05, 9.769593482623487371e-05, 9.722836885244083062e-05, 9.675803231418238757e-05, 9.628494560657163031e-05, 9.580912919428301528e-05, 9.533060361074271170e-05, 9.484938945729212603e-05, 9.436550740237209403e-05, 9.387897818068666276e-05, 9.338982259238482961e-05, 9.289806150221876775e-05, 9.240371583872346458e-05, 9.190680659338318706e-05, 9.140735481979174004e-05, 9.090538163282673790e-05, 9.040090820781176019e-05, 8.989395577967375036e-05, 8.938454564211442785e-05, 8.887269914677176606e-05, 8.835843770237281037e-05, 8.784178277390430412e-05, 8.732275588176149504e-05, 8.680137860091756863e-05, 8.627767256006760278e-05, 8.575165944079697112e-05, 8.522336097673384936e-05, 8.469279895270370013e-05, 8.415999520388011237e-05, 8.362497161494898983e-05, 8.308775011924755902e-05, 8.254835269792869332e-05, 8.200680137911156250e-05, 8.146311823702630565e-05, 8.091732539117420817e-05, 8.036944500547171062e-05, 7.981949928739913382e-05, 7.926751048716019175e-05, 7.871350089682433349e-05, 7.815749284947355732e-05, 7.759950871835902351e-05, 7.703957091604317928e-05, 7.647770189354594962e-05, 7.591392413950464322e-05, 7.534826017930776982e-05, 7.478073257425246604e-05, 7.421136392068941221e-05, 7.364017684916770860e-05, 7.306719402358060537e-05, 7.249243814032418887e-05, 7.191593192743057548e-05, 7.133769814372726192e-05, 7.075775957797366669e-05, 7.017613904802144252e-05, 6.959285939994649126e-05, 6.900794350720966942e-05, 6.842141426980163726e-05, 6.783329461339003888e-05, 6.724360748846380928e-05, 6.665237586949324285e-05, 6.605962275406314669e-05, 6.546537116203540285e-05, 6.486964413469693445e-05, 6.427246473390174945e-05, 6.367385604123233735e-05, 6.307384115714270224e-05, 6.247244320010872777e-05, 6.186968530579037349e-05, 6.126559062617670010e-05, 6.066018232873614631e-05, 6.005348359557971457e-05, 5.944551762260716853e-05, 5.883630761866076592e-05, 5.822587680469341111e-05, 5.761424841290975024e-05, 5.700144568593581458e-05, 5.638749187596620071e-05, 5.577241024393500140e-05, 5.515622405865875061e-05, 5.453895659601687505e-05, 5.392063113809588597e-05, 5.330127097236401671e-05, 5.268089939082399323e-05, 5.205953968918941317e-05, 5.143721516603453481e-05, 5.081394912197322435e-05, 5.018976485882552967e-05, 4.956468567877652244e-05, 4.893873488355664800e-05, 4.831193577360924787e-05, 4.768431164725405710e-05, 4.705588579987165387e-05, 4.642668152307624028e-05, 4.579672210388313099e-05, 4.516603082389661800e-05, 4.453463095847968187e-05, 4.390254577593236975e-05, 4.326979853668558263e-05, 4.263641249246714773e-05, 4.200241088549816715e-05, 4.136781694767275794e-05, 4.073265389974401959e-05, 4.009694495050920865e-05, 3.946071329601255194e-05, 3.882398211872058891e-05, 3.818677458672821028e-05, 3.754911385294185409e-05, 3.691102305428816007e-05, 3.627252531089499038e-05, 3.563364372531120389e-05, 3.499440138169012998e-05, 3.435482134500644248e-05, 3.371492666024863239e-05, 3.307474035163948005e-05, 3.243428542182762658e-05, 3.179358485111165100e-05, 3.115266159665085920e-05, 3.051153859167018086e-05, 2.987023874468685547e-05, 2.922878493872556820e-05, 2.858720003052916093e-05, 2.794550684979286022e-05, 2.730372819838677219e-05, 2.666188684957304119e-05, 2.602000554724588161e-05, 2.537810700515306993e-05, 2.473621390612689978e-05, 2.409434890133213189e-05, 2.345253460948628331e-05, 2.281079361611086382e-05, 2.216914847276788082e-05, 2.152762169630188368e-05, 2.088623576808264857e-05, 2.024501313326714172e-05, 1.960397620003284614e-05, 1.896314733884459027e-05, 1.832254888169719884e-05, 1.768220312138699715e-05, 1.704213231075473977e-05, 1.640235866196212581e-05, 1.576290434575326077e-05, 1.512379149072065329e-05, 1.448504218257062422e-05, 1.384667846340775344e-05, 1.320872233099333137e-05, 1.257119573803645674e-05, 1.193412059147283715e-05, 1.129751875173838041e-05, 1.066141203206686703e-05, 1.002582219776904043e-05, 9.390770965521807415e-06, 8.756280002674018430e-06, 8.122370926533653768e-06, 7.489065303663868882e-06, 6.856384649195353557e-06, 6.224350426121986744e-06, 5.592984044606705769e-06, 4.962306861305528297e-06, 4.332340178664007615e-06, 3.703105244246982238e-06, 3.074623250045389130e-06, 2.446915331811808288e-06, 1.820002568367166485e-06, 1.193905980949734002e-06, 5.686465325277691493e-07, -5.575487285304644198e-08, -6.792773907448401563e-07, -1.301900236944085969e-06, -1.923602688165210920e-06, -2.544364082680986205e-06, -3.164163820976385644e-06, -3.782981366397813248e-06, -4.400796245802158099e-06, -5.017588050186235963e-06, -5.633336435341474612e-06, -6.248021122475436530e-06, -6.861621898845164503e-06, -7.474118618394712831e-06, -8.085491202368466090e-06, -8.695719639942215106e-06, -9.304783988843304504e-06, -9.912664375954183488e-06, -1.051934099793345803e-05, -1.112479412182761974e-05, -1.172900408566606791e-05, -1.233195129907195915e-05, -1.293361624386246407e-05, -1.353397947463050106e-05, -1.413302161935288219e-05, -1.473072337996534868e-05, -1.532706553295916325e-05, -1.592202892994946760e-05, -1.651559449827052120e-05, -1.710774324152980488e-05, -1.769845624019637497e-05, -1.828771465215499564e-05, -1.887549971328155552e-05, -1.946179273799034581e-05, -2.004657511980633609e-05, -2.062982833190547631e-05, -2.121153392766515300e-05, -2.179167354121897552e-05, -2.237022888798842138e-05, -2.294718176522451720e-05, -2.352251405255091217e-05, -2.409620771248360396e-05, -2.466824479095987345e-05, -2.523860741787020118e-05, -2.580727780756699865e-05, -2.637423825938933511e-05, -2.693947115817652075e-05, -2.750295897476430872e-05, -2.806468426650501405e-05, -2.862462967775755948e-05, -2.918277794038877664e-05, -2.973911187426810042e-05, -3.029361438776029481e-05, -3.084626847819818535e-05, -3.139705723238017584e-05, -3.194596382703590294e-05, -3.249297152931071537e-05, -3.303806369722434559e-05, -3.358122378015165860e-05, -3.412243531927313121e-05, -3.466168194803569889e-05, -3.519894739260904230e-05, -3.573421547233996282e-05, -3.626747010018807605e-05, -3.679869528318357541e-05, -3.732787512285343890e-05, -3.785499381565763066e-05, -3.838003565342774887e-05, -3.890298502378413190e-05, -3.942382641056034373e-05, -3.994254439423548607e-05, -4.045912365232555468e-05, -4.097354895980823651e-05, -4.148580518953054268e-05, -4.199587731260208921e-05, -4.250375039880140181e-05, -4.300940961697082297e-05, -4.351284023539532541e-05, -4.401402762220268434e-05, -4.451295724573500642e-05, -4.500961467493005047e-05, -4.550398557969644270e-05, -4.599605573128578848e-05, -4.648581100264606125e-05, -4.697323736879700751e-05, -4.745832090717593281e-05, -4.794104779800016403e-05, -4.842140432460515111e-05, -4.889937687380196914e-05, -4.937495193620665830e-05, -4.984811610657907774e-05, -5.031885608415570142e-05, -5.078715867298121454e-05, -5.125301078222226135e-05, -5.171639942649958372e-05, -5.217731172619310883e-05, -5.263573490775318294e-05, -5.309165630401457673e-05, -5.354506335448944344e-05, -5.399594360567233208e-05, -5.444428471133557152e-05, -5.489007443280881170e-05, -5.533330063927232743e-05, -5.577395130803952081e-05, -5.621201452482593887e-05, -5.664747848402928239e-05, -5.708033148899782042e-05, -5.751056195228484579e-05, -5.793815839592066753e-05, -5.836310945165795229e-05, -5.878540386123149239e-05, -5.920503047659557156e-05, -5.962197826017918615e-05, -6.003623628510942461e-05, -6.044779373545825906e-05, -6.085663990646246214e-05, -6.126276420475775398e-05, -6.166615614858962538e-05, -6.206680536804276170e-05, -6.246470160524302299e-05, -6.285983471456668822e-05, -6.325219466285137327e-05, -6.364177152958735192e-05, -6.402855550711508399e-05, -6.441253690082210642e-05, -6.479370612932165555e-05, -6.517205372463561277e-05, -6.554757033237868327e-05, -6.592024671192342521e-05, -6.629007373657662232e-05, -6.665704239374386575e-05, -6.702114378508195228e-05, -6.738236912666610893e-05, -6.774070974913359551e-05, -6.809615709783453077e-05, -6.844870273297710766e-05, -6.879833832976684556e-05, -6.914505567853355039e-05, -6.948884668487257256e-05, -6.982970336976173818e-05, -7.016761786969062664e-05, -7.050258243676985818e-05, -7.083458943885569581e-05, -7.116363135964506208e-05, -7.148970079879194176e-05, -7.181279047199880716e-05, -7.213289321111999682e-05, -7.245000196424561921e-05, -7.276410979579796539e-05, -7.307520988660740318e-05, -7.338329553399098183e-05, -7.368836015183327279e-05, -7.399039727064959232e-05, -7.428940053765422486e-05, -7.458536371682649162e-05, -7.487828068896246702e-05, -7.516814545172741341e-05, -7.545495211971084502e-05, -7.573869492446410907e-05, -7.601936821454512269e-05, -7.629696645555583212e-05, -7.657148423016670209e-05, -7.684291623815294175e-05, -7.711125729641124201e-05, -7.737650233898160873e-05, -7.763864641706328686e-05, -7.789768469902625303e-05, -7.815361247041097159e-05, -7.840642513393934504e-05, -7.865611820950585073e-05, -7.890268733417691736e-05, -7.914612826217439097e-05, -7.938643686486866378e-05, -7.962360913075390014e-05, -7.985764116542591888e-05, -8.008852919155679581e-05, -8.031626954886464159e-05, -8.054085869407389287e-05, -8.076229320088036028e-05, -8.098056975990718272e-05, -8.119568517865204029e-05, -8.140763638144178041e-05, -8.161642040937130949e-05, -8.182203442024758031e-05, -8.202447568852058257e-05, -8.222374160522193641e-05, -8.241982967788378048e-05, -8.261273753047048080e-05, -8.280246290329136604e-05, -8.298900365292210927e-05, -8.317235775211005006e-05, -8.335252328968763443e-05, -8.352949847047152988e-05, -8.370328161516191656e-05, -8.387387116023904080e-05, -8.404126565785606886e-05, -8.420546377572122058e-05, -8.436646429698789907e-05, -8.452426612012838112e-05, -8.467886825881031304e-05, -8.483026984177053666e-05, -8.497847011267900834e-05, -8.512346843000541505e-05, -8.526526426687825518e-05, -8.540385721093718375e-05, -8.553924696418820366e-05, -8.567143334285144370e-05, -8.580041627720267532e-05, -8.592619581141530368e-05, -8.604877210339833367e-05, -8.616814542462326344e-05, -8.628431615995866232e-05, -8.639728480749045067e-05, -8.650705197834629987e-05, -8.661361839650910882e-05, -8.671698489863530527e-05, -8.681715243385848318e-05, -8.691412206360001980e-05, -8.700789496136810514e-05, -8.709847241255837084e-05, -8.718585581424549290e-05, -8.727004667497822326e-05, -8.735104661456318637e-05, -8.742885736384824202e-05, -8.750348076450507569e-05, -8.757491876880262743e-05, -8.764317343938039871e-05, -8.770824694901854736e-05, -8.777014158040174834e-05, -8.782885972588042533e-05, -8.788440388723046438e-05, -8.793677667540564995e-05, -8.798598081029018216e-05, -8.803201912044573247e-05, -8.807489454285378301e-05, -8.811461012265841316e-05, -8.815116901290020925e-05, -8.818457447425140751e-05, -8.821482987474516880e-05, -8.824193868950264423e-05, -8.826590450045338659e-05, -8.828673099605780807e-05, -8.830442197102115424e-05, -8.831898132600694937e-05, -8.833041306734530542e-05, -8.833872130674032296e-05, -8.834391026097091913e-05, -8.834598425159074760e-05, -8.834494770462315827e-05, -8.834080515025570979e-05, -8.833356122252653691e-05, -8.832322065901227653e-05, -8.830978830050965098e-05, -8.829326909071538449e-05, -8.827366807590174215e-05, -8.825099040459032053e-05, -8.822524132722051222e-05, -8.819642619581737411e-05, -8.816455046365366793e-05, -8.812961968491066765e-05, -8.809163951433589040e-05, -8.805061570689537930e-05, -8.800655411742644701e-05, -8.795946070028372440e-05, -8.790934150898470779e-05, -8.785620269585141652e-05, -8.780005051164863539e-05, -8.774089130521977177e-05, -8.767873152311891807e-05, -8.761357770924130142e-05, -8.754543650444930169e-05, -8.747431464619596225e-05, -8.740021896814629176e-05, -8.732315639979467629e-05, -8.724313396607997399e-05, -8.716015878699776378e-05, -8.707423807720901607e-05, -8.698537914564708309e-05, -8.689358939512097568e-05, -8.679887632191602461e-05, -8.670124751539183127e-05, -8.660071065757758918e-05, -8.649727352276470865e-05, -8.639094397709622933e-05, -8.628172997815373925e-05, -8.616963957454220669e-05, -8.605468090547117995e-05, -8.593686220033350709e-05, -8.581619177828221244e-05, -8.569267804780515056e-05, -8.556632950629352089e-05, -8.543715473961318771e-05, -8.530516242166929174e-05, -8.517036131396897775e-05, -8.503276026518465092e-05, -8.489236821071021279e-05, -8.474919417221874753e-05, -8.460324725721427204e-05, -8.445453665858462453e-05, -8.430307165414772594e-05, -8.414886160620121589e-05, -8.399191596106253413e-05, -8.383224424861417904e-05, -8.366985608183923539e-05, -8.350476115636145584e-05, -8.333696924997654673e-05, -8.316649022218722156e-05, -8.299333401373212870e-05, -8.281751064611290883e-05, -8.263903022112106269e-05, -8.245790292036086144e-05, -8.227413900476843525e-05, -8.208774881413384344e-05, -8.189874276661666648e-05, -8.170713135825959225e-05, -8.151292516250347950e-05, -8.131613482969531981e-05, -8.111677108659741929e-05, -8.091484473589571284e-05, -8.071036665570124804e-05, -8.050334779905507065e-05, -8.029379919342759426e-05, -8.008173194021726523e-05, -7.986715721424518890e-05, -7.965008626325439088e-05, -7.943053040739763988e-05, -7.920850103873197916e-05, -7.898400962070459784e-05, -7.875706768764412322e-05, -7.852768684424013600e-05, -7.829587876503348682e-05, -7.806165519389264020e-05, -7.782502794349749938e-05, -7.758600889481486937e-05, -7.734460999657814828e-05, -7.710084326475896851e-05, -7.685472078204253778e-05, -7.660625469730052714e-05, -7.635545722505783321e-05, -7.610234064496386702e-05, -7.584691730125947887e-05, -7.558919960223839450e-05, -7.532920001971573915e-05, -7.506693108848959569e-05, -7.480240540579838847e-05, -7.453563563078505715e-05, -7.426663448395130990e-05, -7.399541474661395027e-05, -7.372198926036468698e-05, -7.344637092651743479e-05, -7.316857270556582037e-05, -7.288860761663183837e-05, -7.260648873691578149e-05, -7.232222920114266039e-05, -7.203584220101474933e-05, -7.174734098465177195e-05, -7.145673885603995041e-05, -7.116404917447121531e-05, -7.086928535399056078e-05, -7.057246086283091766e-05, -7.027358922285829943e-05, -6.997268400900919622e-05, -6.966975884872874118e-05, -6.936482742140422846e-05, -6.905790345780647797e-05, -6.874900073951732248e-05, -6.843813309836921063e-05, -6.812531441587643438e-05, -6.781055862266379525e-05, -6.749387969790195173e-05, -6.717529166873340203e-05, -6.685480860970044546e-05, -6.653244464217917468e-05, -6.620821393380185347e-05, -6.588213069788209978e-05, -6.555420919284555767e-05, -6.522446372164990335e-05, -6.489290863120848328e-05, -6.455955831181954953e-05, -6.422442719658088542e-05, -6.388752976081866141e-05, -6.354888052150154580e-05, -6.320849403666927596e-05, -6.286638490484205272e-05, -6.252256776445088706e-05, -6.217705729324737396e-05, -6.182986820772794039e-05, -6.148101526254557076e-05, -6.113051324993372968e-05, -6.077837699911396740e-05, -6.042462137571917851e-05, -6.006926128120685201e-05, -5.971231165227442887e-05, -5.935378746027074288e-05, -5.899370371061640614e-05, -5.863207544221014065e-05, -5.826891772684785598e-05, -5.790424566863610945e-05, -5.753807440339950833e-05, -5.717041909810034999e-05, -5.680129495024546841e-05, -5.643071718729775638e-05, -5.605870106609462652e-05, -5.568526187225433609e-05, -5.531041491958633684e-05, -5.493417554950761510e-05, -5.455655913044964677e-05, -5.417758105726791366e-05, -5.379725675066096769e-05, -5.341560165657167344e-05, -5.303263124560543882e-05, -5.264836101243477800e-05, -5.226280647521728461e-05, -5.187598317499646092e-05, -5.148790667512404820e-05, -5.109859256066130311e-05, -5.070805643779714711e-05, -5.031631393325230924e-05, -4.992338069369868845e-05, -4.952927238516060290e-05, -4.913400469243442339e-05, -4.873759331849922808e-05, -4.834005398392349326e-05, -4.794140242628299191e-05, -4.754165439957169250e-05, -4.714082567360894431e-05, -4.673893203345903628e-05, -4.633598927884416250e-05, -4.593201322355216999e-05, -4.552701969485745245e-05, -4.512102453292990423e-05, -4.471404359024867863e-05, -4.430609273102518233e-05, -4.389718783060873604e-05, -4.348734477490947403e-05, -4.307657945981225835e-05, -4.266490779059236833e-05, -4.225234568133118344e-05, -4.183890905434221337e-05, -4.142461383957948286e-05, -4.100947597406484250e-05, -4.059351140130022952e-05, -4.017673607069634071e-05, -3.975916593698287384e-05, -3.934081695963874555e-05, -3.892170510231242943e-05, -3.850184633224354772e-05, -3.808125661968411740e-05, -3.765995193733019788e-05, -3.723794825973633372e-05, -3.681526156275023129e-05, -3.639190782293836202e-05, -3.596790301700766249e-05, -3.554326312124045508e-05, -3.511800411092171135e-05, -3.469214195976345590e-05, -3.426569263934300057e-05, -3.383867211853393482e-05, -3.341109636293315872e-05, -3.298298133430213266e-05, -3.255434298999571280e-05, -3.212519728239682096e-05, -3.169556015836203790e-05, -3.126544755864805352e-05, -3.083487541735845951e-05, -3.040385966138062153e-05, -2.997241620982529574e-05, -2.954056097346664857e-05, -2.910830985419444997e-05, -2.867567874444683585e-05, -2.824268352666494753e-05, -2.780934007273126764e-05, -2.737566424342652630e-05, -2.694167188786718311e-05, -2.650737884296492533e-05, -2.607280093287594054e-05, -2.563795396845234767e-05, -2.520285374669323152e-05, -2.476751605020780685e-05, -2.433195664666105564e-05, -2.389619128824027250e-05, -2.346023571111360736e-05, -2.302410563488442377e-05, -2.258781676206124937e-05, -2.215138477751522086e-05, -2.171482534794368170e-05, -2.127815412134465237e-05, -2.084138672647828009e-05, -2.040453877233409233e-05, -1.996762584760853335e-05, -1.953066352017126907e-05, -1.909366733653743809e-05, -1.865665282135244225e-05, -1.821963547685721466e-05, -1.778263078237570386e-05, -1.734565419378691814e-05, -1.690872114301532339e-05, -1.647184703750179317e-05, -1.603504725970282581e-05, -1.559833716656460479e-05, -1.516173208902037270e-05, -1.472524733147193533e-05, -1.428889817128959880e-05, -1.385269985829893536e-05, -1.341666761427490312e-05, -1.298081663244770738e-05, -1.254516207699006446e-05, -1.210971908252558378e-05, -1.167450275362782243e-05, -1.123952816432302429e-05, -1.080481035759382310e-05, -1.037036434489603729e-05, -9.936205105656713152e-06, -9.502347586794675395e-06, -9.068806702225443175e-06, -8.635597332385602451e-06, -8.202734323737344228e-06, -7.770232488301851052e-06, -7.338106603167762090e-06, -6.906371410023311096e-06, -6.475041614672838314e-06, -6.044131886572840882e-06, -5.613656858349518961e-06, -5.183631125338718259e-06, -4.754069245117851155e-06, -4.324985737034575381e-06, -3.896395081750927663e-06, -3.468311720780319843e-06, -3.040750056022464431e-06, -2.613724449314812633e-06, -2.187249221976859945e-06, -1.761338654351428049e-06, -1.336006985362486935e-06, -9.112684120607396110e-07, -4.871370891765281596e-07, -6.362712868514867777e-08, 3.592474006461222205e-07, 7.814724736893390697e-07, 1.203034109396238965e-06, 1.623918371234312678e-06, 2.044111367621653878e-06, 2.463599252348319692e-06, 2.882368225015842866e-06, 3.300404531454056893e-06, 3.717694464152948560e-06, 4.134224362674899989e-06, 4.549980614084981797e-06, 4.964949653358522058e-06, 5.379117963797626287e-06, 5.792472077444214839e-06, 6.204998575492761743e-06, 6.616684088689541133e-06, 7.027515297748717792e-06, 7.437478933745757524e-06, 7.846561778518595522e-06, 8.254750665071460160e-06, 8.662032477962061081e-06, 9.068394153700423124e-06, 9.473822681140410366e-06, 9.878305101859544168e-06, 1.028182851055056278e-05, 1.068438005540629619e-05, 1.108594693849336179e-05, 1.148651641613593131e-05, 1.188607579929227252e-05, 1.228461245391885483e-05, 1.268211380135157338e-05, 1.307856731866475892e-05, 1.347396053904449399e-05, 1.386828105214237114e-05, 1.426151650444757083e-05, 1.465365459963077372e-05, 1.504468309891088697e-05, 1.543458982139872109e-05, 1.582336264445461402e-05, 1.621098950402690211e-05, 1.659745839500719795e-05, 1.698275737156351991e-05, 1.736687454748169388e-05, 1.774979809650293318e-05, 1.813151625266070014e-05, 1.851201731060441504e-05, 1.889128962593864870e-05, 1.926932161554044816e-05, 1.964610175788376385e-05, 2.002161859336546579e-05, 2.039586072461596413e-05, 2.076881681681987549e-05, 2.114047559802952679e-05, 2.151082585946703093e-05, 2.187985645583708248e-05, 2.224755630563299749e-05, 2.261391439143162324e-05, 2.297891976019795501e-05, 2.334256152358166536e-05, 2.370482885820233404e-05, 2.406571100594982616e-05, 2.442519727426381985e-05, 2.478327703642591747e-05, 2.513993973183369459e-05, 2.549517486629057164e-05, 2.584897201226992895e-05, 2.620132080919957088e-05, 2.655221096372413665e-05, 2.690163224998076214e-05, 2.724957450985603916e-05, 2.759602765325790965e-05, 2.794098165836768173e-05, 2.828442657189735149e-05, 2.862635250934865617e-05, 2.896674965525785993e-05, 2.930560826344599446e-05, 2.964291865726884550e-05, 2.997867122985263473e-05, 3.031285644433437716e-05, 3.064546483410373956e-05, 3.097648700302972342e-05, 3.130591362569682453e-05, 3.163373544763383008e-05, 3.195994328553100134e-05, 3.228452802747200481e-05, 3.260748063314599575e-05, 3.292879213406703354e-05, 3.324845363378757469e-05, 3.356645630811147790e-05, 3.388279140529373439e-05, 3.419745024625429973e-05, 3.451042422477251835e-05, 3.482170480769270187e-05, 3.513128353511246852e-05, 3.543915202058470291e-05, 3.574530195130046776e-05, 3.604972508827759402e-05, 3.635241326654588978e-05, 3.665335839533057365e-05, 3.695255245822428350e-05, 3.724998751337124848e-05, 3.754565569363236562e-05, 3.783954920675574479e-05, 3.813166033554747734e-05, 3.842198143803048527e-05, 3.871050494760574210e-05, 3.899722337321544528e-05, 3.928212929949080650e-05, 3.956521538690510039e-05, 3.984647437192675388e-05, 4.012589906715901172e-05, 4.040348236148758455e-05, 4.067921722022118178e-05, 4.095309668522154132e-05, 4.122511387504577859e-05, 4.149526198507145596e-05, 4.176353428762668028e-05, 4.202992413211622267e-05, 4.229442494514452125e-05, 4.255703023062904806e-05, 4.281773356992375225e-05, 4.307652862192619278e-05, 4.333340912319348030e-05, 4.358836888804293856e-05, 4.384140180866454294e-05, 4.409250185521558485e-05, 4.434166307592094690e-05, 4.458887959716879048e-05, 4.483414562360520664e-05, 4.507745543821877030e-05, 4.531880340243355122e-05, 4.555818395618758997e-05, 4.579559161801409104e-05, 4.603102098512264998e-05, 4.626446673346891334e-05, 4.649592361783085910e-05, 4.672538647187733180e-05, 4.695285020822945578e-05, 4.717830981852738143e-05, 4.740176037349154935e-05, 4.762319702297518608e-05, 4.784261499602224113e-05, 4.806000960091929999e-05, 4.827537622523838295e-05, 4.848871033588886487e-05, 4.870000747915456842e-05, 4.890926328073801310e-05, 4.911647344579150474e-05, 4.932163375895805057e-05, 4.952474008439376155e-05, 4.972578836580294662e-05, 4.992477462645732346e-05, 5.012169496922321156e-05, 5.031654557657491543e-05, 5.050932271061777057e-05, 5.070002271309582108e-05, 5.088864200540324436e-05, 5.107517708859487469e-05, 5.125962454338732130e-05, 5.144198103016188217e-05, 5.162224328896624487e-05, 5.180040813950653798e-05, 5.197647248114103599e-05, 5.215043329287366759e-05, 5.232228763333718346e-05, 5.249203264078074215e-05, 5.265966553305267126e-05, 5.282518360757452113e-05, 5.298858424132104098e-05, 5.314986489079369728e-05, 5.330902309198812732e-05, 5.346605646036413400e-05, 5.362096269081196025e-05, 5.377373955760846025e-05, 5.392438491438283861e-05, 5.407289669406800355e-05, 5.421927290885821530e-05, 5.436351165015556035e-05, 5.450561108852343243e-05, 5.464556947362574264e-05, 5.478338513417402392e-05, 5.491905647786407980e-05, 5.505258199131555363e-05, 5.518396024000298016e-05, 5.531318986819138388e-05, 5.544026959886113703e-05, 5.556519823363515549e-05, 5.568797465270359408e-05, 5.580859781474214521e-05, 5.592706675683065592e-05, 5.604338059437037617e-05, 5.615753852099311622e-05, 5.626953980847224725e-05, 5.637938380663098454e-05, 5.648706994324421981e-05, 5.659259772394273873e-05, 5.669596673211207836e-05, 5.679717662878609242e-05, 5.689622715254450774e-05, 5.699311811940129208e-05, 5.708784942269410614e-05, 5.718042103297065213e-05, 5.727083299787233883e-05, 5.735908544201247147e-05, 5.744517856685724702e-05, 5.752911265059880089e-05, 5.761088804803107252e-05, 5.769050519041601488e-05, 5.776796458535618712e-05, 5.784326681665611226e-05, 5.791641254418643340e-05, 5.798740250374357730e-05, 5.805623750690911306e-05, 5.812291844090194823e-05, 5.818744626843379790e-05, 5.824982202755745061e-05, 5.831004683151426172e-05, 5.836812186858104381e-05, 5.842404840191012645e-05, 5.847782776937210630e-05, 5.852946138339276948e-05, 5.857895073078676825e-05, 5.862629737259223946e-05, 5.867150294390146577e-05, 5.871456915368717289e-05, 5.875549778462953155e-05, 5.879429069294002212e-05, 5.883094980817970198e-05, 5.886547713308034604e-05, 5.889787474335898040e-05, 5.892814478753169097e-05, 5.895628948672607003e-05, 5.898231113449013918e-05, 5.900621209659740298e-05, 5.902799481085329854e-05, 5.904766178689603437e-05, 5.906521560599746311e-05, 5.908065892085935988e-05, 5.909399445541035808e-05, 5.910522500459784349e-05, 5.911435343417868293e-05, 5.912138268050813014e-05, 5.912631575032668515e-05, 5.912915572054258976e-05, 5.912990573801620009e-05, 5.912856901933723723e-05, 5.912514885060392848e-05, 5.911964858719771689e-05, 5.911207165355637170e-05, 5.910242154294564172e-05, 5.909070181722801538e-05, 5.907691610662864828e-05, 5.906106810950152106e-05, 5.904316159209094207e-05, 5.902320038829237233e-05, 5.900118839941093985e-05, 5.897712959391811758e-05, 5.895102800720508770e-05, 5.892288774133601110e-05, 5.889271296479792227e-05, 5.886050791224880141e-05, 5.882627688426410144e-05, 5.879002424708054431e-05, 5.875175443233900921e-05, 5.871147193682424952e-05, 5.866918132220346453e-05, 5.862488721476300099e-05, 5.857859430514220176e-05, 5.853030734806640751e-05, 5.848003116207734951e-05, 5.842777062926228200e-05, 5.837353069498028222e-05, 5.831731636758804205e-05, 5.825913271816212253e-05, 5.819898488022093736e-05, 5.813687804944393773e-05, 5.807281748338935382e-05, 5.800680850121014065e-05, 5.793885648336808070e-05, 5.786896687134602992e-05, 5.779714516735814434e-05, 5.772339693405923258e-05, 5.764772779425156725e-05, 5.757014343059021913e-05, 5.749064958528656856e-05, 5.740925205981056993e-05, 5.732595671459043448e-05, 5.724076946871207587e-05, 5.715369629961506608e-05, 5.706474324278856407e-05, 5.697391639146483894e-05, 5.688122189631100419e-05, 5.678666596512036563e-05, 5.669025486249976462e-05, 5.659199490955803258e-05, 5.649189248359164008e-05, 5.638995401776813018e-05, 5.628618600080973465e-05, 5.618059497667358856e-05, 5.607318754423160605e-05, 5.596397035694954288e-05, 5.585295012256154609e-05, 5.574013360274778005e-05, 5.562552761280663819e-05, 5.550913902132734791e-05, 5.539097474986008846e-05, 5.527104177258780295e-05, 5.514934711599149162e-05, 5.502589785851900837e-05, 5.490070113024868705e-05, 5.477376411255516323e-05, 5.464509403776987665e-05, 5.451469818884427057e-05, 5.438258389900918965e-05, 5.424875855143335628e-05, 5.411322957888049166e-05, 5.397600446336713476e-05, 5.383709073581504040e-05, 5.369649597570647743e-05, 5.355422781073782619e-05, 5.341029391646770746e-05, 5.326470201597022745e-05, 5.311745987948206330e-05, 5.296857532404957553e-05, 5.281805621317798736e-05, 5.266591045647481094e-05, 5.251214600929433743e-05, 5.235677087238186966e-05, 5.219979309151482407e-05, 5.204122075714320925e-05, 5.188106200403242205e-05, 5.171932501089898269e-05, 5.155601800005105400e-05, 5.139114923702278070e-05, 5.122472703021336524e-05, 5.105675973051784956e-05, 5.088725573096577760e-05, 5.071622346635020162e-05, 5.054367141286250940e-05, 5.036960808772141700e-05, 5.019404204880568852e-05, 5.001698189427992368e-05, 4.983843626222595624e-05, 4.965841383027034921e-05, 4.947692331520852228e-05, 4.929397347263366332e-05, 4.910957309656069993e-05, 4.892373101904846179e-05, 4.873645610982596971e-05, 4.854775727591486222e-05, 4.835764346124900325e-05, 4.816612364629839949e-05, 4.797320684768808976e-05, 4.777890211781632971e-05, 4.758321854447769599e-05, 4.738616525047842490e-05, 4.718775139325350604e-05, 4.698798616448652041e-05, 4.678687878972309519e-05, 4.658443852798705554e-05, 4.638067467139804002e-05, 4.617559654478235336e-05, 4.596921350529023628e-05, 4.576153494200597965e-05, 4.555257027556411012e-05, 4.534232895775703090e-05, 4.513082047115256947e-05, 4.491805432869964645e-05, 4.470404007334332285e-05, 4.448878727763113983e-05, 4.427230554332725111e-05, 4.405460450101624198e-05, 4.383569380971692292e-05, 4.361558315648929952e-05, 4.339428225604044471e-05, 4.317180085033535142e-05, 4.294814870820305556e-05, 4.272333562494094283e-05, 4.249737142192482221e-05, 4.227026594621511663e-05, 4.204202907015930634e-05, 4.181267069100180587e-05, 4.158220073048627871e-05, 4.135062913446013386e-05, 4.111796587248371161e-05, 4.088422093742937949e-05, 4.064940434509025724e-05, 4.041352613378188094e-05, 4.017659636394659115e-05, 3.993862511775557656e-05, 3.969962249871726015e-05, 3.945959863127493816e-05, 3.921856366041492919e-05, 3.897652775126532443e-05, 3.873350108870356754e-05, 3.848949387695388354e-05, 3.824451633919472314e-05, 3.799857871716051492e-05, 3.775169127074362086e-05, 3.750386427759596654e-05, 3.725510803273531315e-05, 3.700543284814239507e-05, 3.675484905236826925e-05, 3.650336699013658924e-05, 3.625099702194274170e-05, 3.599774952366119590e-05, 3.574363488614524327e-05, 3.548866351482874972e-05, 3.523284582933404707e-05, 3.497619226307146270e-05, 3.471871326284139698e-05, 3.446041928844178792e-05, 3.420132081226799988e-05, 3.394142831891605979e-05, 3.368075230479130081e-05, 3.341930327770664514e-05, 3.315709175649080720e-05, 3.289412827059142141e-05, 3.263042335967892221e-05, 3.236598757325051881e-05, 3.210083147024035683e-05, 3.183496561861872255e-05, 3.156840059500297028e-05, 3.130114698425890855e-05, 3.103321537911246609e-05, 3.076461637974981769e-05, 3.049536059343004621e-05, 3.022545863409091988e-05, 2.995492112195628916e-05, 2.968375868314240956e-05, 2.941198194927150143e-05, 2.913960155707353612e-05, 2.886662814800181173e-05, 2.859307236784160359e-05, 2.831894486631692071e-05, 2.804425629670637636e-05, 2.776901731545046635e-05, 2.749323858176280455e-05, 2.721693075724719292e-05, 2.694010450550694279e-05, 2.666277049175654073e-05, 2.638493938244008732e-05, 2.610662184484173655e-05, 2.582782854670034661e-05, 2.554857015583039543e-05, 2.526885733973121385e-05, 2.498870076520983574e-05, 2.470811109799267406e-05, 2.442709900234972620e-05, 2.414567514070556229e-05, 2.386385017326736924e-05, 2.358163475763749761e-05, 2.329903954843998102e-05, 2.301607519693657955e-05, 2.273275235065494579e-05, 2.244908165300413285e-05, 2.216507374290424453e-05, 2.188073925440996636e-05, 2.159608881633185044e-05, 2.131113305186678545e-05, 2.102588257822330653e-05, 2.074034800624520434e-05, 2.045453994004501729e-05, 2.016846897663246871e-05, 1.988214570554065083e-05, 1.959558070846185144e-05, 1.930878455887556080e-05, 1.902176782168012064e-05, 1.873454105283225751e-05, 1.844711479897403585e-05, 1.815949959707348230e-05, 1.787170597405879276e-05, 1.758374444645473511e-05, 1.729562552001940752e-05, 1.700735968938912502e-05, 1.671895743771121377e-05, 1.643042923629095753e-05, 1.614178554422816638e-05, 1.585303680806613569e-05, 1.556419346142845879e-05, 1.527526592466975800e-05, 1.498626460452061686e-05, 1.469719989373398455e-05, 1.440808217073114155e-05, 1.411892179925660315e-05, 1.382972912802073083e-05, 1.354051449035746828e-05, 1.325128820387594320e-05, 1.296206057011024967e-05, 1.267284187417882569e-05, 1.238364238443892984e-05, 1.209447235213986258e-05, 1.180534201108638582e-05, 1.151626157729743988e-05, 1.122724124866271219e-05, 1.093829120460977544e-05, 1.064942160576292805e-05, 1.036064259360675446e-05, 1.007196429015752710e-05, 9.783396797622446745e-06, 9.494950198072855542e-06, 9.206634553111385210e-06, 8.918459903541568469e-06, 8.630436269038206003e-06, 8.342573647826393487e-06, 8.054882016348239532e-06, 7.767371328944549014e-06, 7.480051517526239506e-06, 7.192932491258548766e-06, 6.906024136233123714e-06, 6.619336315154956213e-06, 6.332878867023199875e-06, 6.046661606814069725e-06, 5.760694325163667328e-06, 5.474986788059783613e-06, 5.189548736522045681e-06, 4.904389886297172988e-06, 4.619519927548758298e-06, 4.334948524545081837e-06, 4.050685315357956351e-06, 3.766739911553316981e-06, 3.483121897886810749e-06, 3.199840832006893728e-06, 2.916906244149839882e-06, 2.634327636839011763e-06, 2.352114484591655819e-06, 2.070276233618403059e-06, 1.788822301527623846e-06, 1.507762077038085314e-06, 1.227104919679563336e-06, 9.468601595085163266e-07, 6.670370968137836451e-07, 3.876450018353160248e-07, 1.086931144702606842e-07, -1.698093560018521464e-07, -4.478532312098952914e-07, -7.254293639662186061e-07, -1.002528638551576897e-06, -1.279141970987068832e-06, -1.555260309317894086e-06, -1.830874633882091118e-06, -2.105975957585071664e-06, -2.380555326171853736e-06, -2.654603818498988850e-06, -2.928112546797570409e-06, -3.201072656947214984e-06, -3.473475328735126493e-06, -3.745311776120159143e-06, -4.016573247498492282e-06, -4.287251025958453486e-06, -4.557336429542851009e-06, -4.826820811506356610e-06, -5.095695560565298952e-06, -5.363952101154910054e-06, -5.631581893682354355e-06, -5.898576434772019296e-06, -6.164927257517767660e-06, -6.430625931730005223e-06, -6.695664064174694817e-06, -6.960033298823574099e-06, -7.223725317089608687e-06, -7.486731838071820257e-06, -7.749044618787265151e-06, -8.010655454414945982e-06, -8.271556178521036852e-06, -8.531738663299270450e-06, -8.791194819795910008e-06, -9.049916598143935273e-06, -9.307895987784455227e-06, -9.565125017699310108e-06, -9.821595756628929982e-06, -1.007730031329480286e-05, -1.033223083662351661e-05, -1.058637951596039761e-05, -1.083973858128730663e-05, -1.109230030344108184e-05, -1.134405699432125504e-05, -1.159500100710169298e-05, -1.184512473644348723e-05, -1.209442061869731206e-05, -1.234288113211256028e-05, -1.259049879704165429e-05, -1.283726617613612245e-05, -1.308317587455350712e-05, -1.332822054015033236e-05, -1.357239286368014872e-05, -1.381568557898861505e-05, -1.405809146320699640e-05, -1.429960333693731871e-05, -1.454021406444781480e-05, -1.477991655385414374e-05, -1.501870375730928207e-05, -1.525656867118111272e-05, -1.549350433624004282e-05, -1.572950383783306894e-05, -1.596456030606204708e-05, -1.619866691595988565e-05, -1.643181688766585420e-05, -1.666400348659236082e-05, -1.689522002360119936e-05, -1.712545985516603068e-05, -1.735471638353872976e-05, -1.758298305691688817e-05, -1.781025336960175180e-05, -1.803652086215882174e-05, -1.826177912158235482e-05, -1.848602178144122946e-05, -1.870924252203938389e-05, -1.893143507056892585e-05, -1.915259320125619488e-05, -1.937271073551397421e-05, -1.959178154208821037e-05, -1.980979953719763816e-05, -2.002675868468247212e-05, -2.024265299614053497e-05, -2.045747653106753637e-05, -2.067122339699562723e-05, -2.088388774962347680e-05, -2.109546379295527087e-05, -2.130594577942659772e-05, -2.151532801003356647e-05, -2.172360483446336875e-05, -2.193077065121439473e-05, -2.213681990772286456e-05, -2.234174710048388628e-05, -2.254554677516660156e-05, -2.274821352673400010e-05, -2.294974199955927154e-05, -2.315012688753498800e-05, -2.334936293418761612e-05, -2.354744493278682161e-05, -2.374436772644813301e-05, -2.394012620824371670e-05, -2.413471532130090033e-05, -2.432813005890737773e-05, -2.452036546460598175e-05, -2.471141663229792397e-05, -2.490127870633087603e-05, -2.508994688159829603e-05, -2.527741640362635113e-05, -2.546368256866695555e-05, -2.564874072378069521e-05, -2.583258626692767361e-05, -2.601521464704629273e-05, -2.619662136413498490e-05, -2.637680196933493406e-05, -2.655575206500357787e-05, -2.673346730479126760e-05, -2.690994339371744688e-05, -2.708517608823830930e-05, -2.725916119631662440e-05, -2.743189457749224474e-05, -2.760337214294374274e-05, -2.777358985555466902e-05, -2.794254372997564330e-05, -2.811022983267956398e-05, -2.827664428202468163e-05, -2.844178324830592242e-05, -2.860564295381045683e-05, -2.876821967286956520e-05, -2.892950973190916493e-05, -2.908950950949363258e-05, -2.924821543637630398e-05, -2.940562399553942028e-05, -2.956173172223929517e-05, -2.971653520404256448e-05, -2.987003108086840568e-05, -3.002221604502082681e-05, -3.017308684122346594e-05, -3.032264026665203936e-05, -3.047087317096562752e-05, -3.061778245633137120e-05, -3.076336507745541863e-05, -3.090761804160300363e-05, -3.105053840862156278e-05, -3.119212329096316148e-05, -3.133236985370020135e-05, -3.147127531454255059e-05, -3.160883694385442367e-05, -3.174505206466401042e-05, -3.187991805267412828e-05, -3.201343233627337604e-05, -3.214559239654001666e-05, -3.227639576724888225e-05, -3.240584003487468093e-05, -3.253392283858986904e-05, -3.266064187026751752e-05, -3.278599487447570116e-05, -3.290997964847389363e-05, -3.303259404220663167e-05, -3.315383595829574272e-05, -3.327370335202652811e-05, -3.339219423133970611e-05, -3.350930665681366486e-05, -3.362503874165126221e-05, -3.373938865165871770e-05, -3.385235460522961374e-05, -3.396393487331991838e-05, -3.407412777942495948e-05, -3.418293169955479983e-05, -3.429034506220716598e-05, -3.439636634833599953e-05, -3.450099409132391848e-05, -3.460422687694624200e-05, -3.470606334333660767e-05, -3.480650218095256843e-05, -3.490554213253399979e-05, -3.500318199306509865e-05, -3.509942060973237038e-05, -3.519425688187838763e-05, -3.528768976095758878e-05, -3.537971825048960301e-05, -3.547034140600743222e-05, -3.555955833500824180e-05, -3.564736819690044481e-05, -3.573377020294620535e-05, -3.581876361620835332e-05, -3.590234775148909316e-05, -3.598452197527195830e-05, -3.606528570565787039e-05, -3.614463841230403774e-05, -3.622257961635504066e-05, -3.629910889037861287e-05, -3.637422585829442294e-05, -3.644793019530503096e-05, -3.652022162782147835e-05, -3.659109993339133078e-05, -3.666056494062071720e-05, -3.672861652909671453e-05, -3.679525462930946132e-05, -3.686047922256895196e-05, -3.692429034092315913e-05, -3.698668806707444858e-05, -3.704767253429120305e-05, -3.710724392632068638e-05, -3.716540247730001689e-05, -3.722214847166347492e-05, -3.727748224405059632e-05, -3.733140417921138613e-05, -3.738391471190890972e-05, -3.743501432682177566e-05, -3.748470355844503958e-05, -3.753298299098769289e-05, -3.757985325827048348e-05, -3.762531504362167647e-05, -3.766936907976918965e-05, -3.771201614873441617e-05, -3.775325708172118876e-05, -3.779309275900654628e-05, -3.783152410982569314e-05, -3.786855211226036034e-05, -3.790417779312012600e-05, -3.793840222782755768e-05, -3.797122654029673434e-05, -3.800265190281483106e-05, -3.803267953591799152e-05, -3.806131070826953818e-05, -3.808854673653297153e-05, -3.811438898524590452e-05, -3.813883886669212670e-05, -3.816189784077084939e-05, -3.818356741486556472e-05, -3.820384914371198975e-05, -3.822274462926269708e-05, -3.824025552055112202e-05, -3.825638351355523093e-05, -3.827113035105732030e-05, -3.828449782250458166e-05, -3.829648776386752499e-05, -3.830710205749539369e-05, -3.831634263197275167e-05, -3.832421146197270950e-05, -3.833071056810936450e-05, -3.833584201678908208e-05, -3.833960792005982552e-05, -3.834201043545896109e-05, -3.834305176586069047e-05, -3.834273415932072524e-05, -3.834105990892075808e-05, -3.833803135261071136e-05, -3.833365087305009124e-05, -3.832792089744784425e-05, -3.832084389740051978e-05, -3.831242238872969395e-05, -3.830265893131780110e-05, -3.829155612894236604e-05, -3.827911662910946382e-05, -3.826534312288503819e-05, -3.825023834472583386e-05, -3.823380507230846520e-05, -3.821604612635725852e-05, -3.819696437047086105e-05, -3.817656271094812479e-05, -3.815484409661135454e-05, -3.813181151862972515e-05, -3.810746801034077449e-05, -3.808181664707048681e-05, -3.805486054595296966e-05, -3.802660286574763022e-05, -3.799704680665662282e-05, -3.796619561013968752e-05, -3.793405255872869054e-05, -3.790062097584093143e-05, -3.786590422559055289e-05, -3.782990571259976082e-05, -3.779262888180826225e-05, -3.775407721828165293e-05, -3.771425424701849036e-05, -3.767316353275689238e-05, -3.763080867977940119e-05, -3.758719333171660039e-05, -3.754232117135019681e-05, -3.749619592041501803e-05, -3.744882133939888907e-05, -3.740020122734271897e-05, -3.735033942163888671e-05, -3.729923979782845465e-05, -3.724690626939756901e-05, -3.719334278757299283e-05, -3.713855334111611434e-05, -3.708254195611651491e-05, -3.702531269578359209e-05, -3.696686966023811507e-05, -3.690721698630285158e-05, -3.684635884729119598e-05, -3.678429945279568881e-05, -3.672104304847539121e-05, -3.665659391584187696e-05, -3.659095637204473660e-05, -3.652413476965642435e-05, -3.645613349645506526e-05, -3.638695697520760123e-05, -3.631660966345107356e-05, -3.624509605327396649e-05, -3.617242067109475209e-05, -3.609858807744277304e-05, -3.602360286673441585e-05, -3.594746966705206914e-05, -3.587019313991897553e-05, -3.579177798007636706e-05, -3.571222891525629778e-05, -3.563155070595697669e-05, -3.554974814521563421e-05, -3.546682605837993843e-05, -3.538278930288024491e-05, -3.529764276800040991e-05, -3.521139137464642839e-05, -3.512404007511674581e-05, -3.503559385287060478e-05, -3.494605772229446723e-05, -3.485543672847070667e-05, -3.476373594694198395e-05, -3.467096048347729001e-05, -3.457711547383739901e-05, -3.448220608353755686e-05, -3.438623750761184340e-05, -3.428921497037548140e-05, -3.419114372518656283e-05, -3.409202905420671121e-05, -3.399187626816404113e-05, -3.389069070611016823e-05, -3.378847773518211839e-05, -3.368524275035904633e-05, -3.358099117422232198e-05, -3.347572845671053468e-05, -3.336946007487949148e-05, -3.326219153265589994e-05, -3.315392836059495411e-05, -3.304467611563422739e-05, -3.293444038084974735e-05, -3.282322676520823526e-05, -3.271104090332221188e-05, -3.259788845520339570e-05, -3.248377510601324831e-05, -3.236870656581705707e-05, -3.225268856933483964e-05, -3.213572687569119819e-05, -3.201782726816760635e-05, -3.189899555395216851e-05, -3.177923756388845768e-05, -3.165855915222595245e-05, -3.153696619636775668e-05, -3.141446459661879356e-05, -3.129106027593559207e-05, -3.116675917967164181e-05, -3.104156727532612231e-05, -3.091549055229013876e-05, -3.078853502159270702e-05, -3.066070671564654205e-05, -3.053201168799575733e-05, -3.040245601305837357e-05, -3.027204578587398763e-05, -3.014078712184599669e-05, -3.000868615648847427e-05, -2.987574904516730344e-05, -2.974198196284626682e-05, -2.960739110383007712e-05, -2.947198268150718746e-05, -2.933576292809198839e-05, -2.919873809436979338e-05, -2.906091444943594593e-05, -2.892229828044059155e-05, -2.878289589233058349e-05, -2.864271360758929790e-05, -2.850175776598046733e-05, -2.836003472428799259e-05, -2.821755085605663884e-05, -2.807431255133525922e-05, -2.793032621641609167e-05, -2.778559827357468599e-05, -2.764013516081242268e-05, -2.749394333159515250e-05, -2.734702925459331322e-05, -2.719939941342441463e-05, -2.705106030638993318e-05, -2.690201844621788852e-05, -2.675228035980021583e-05, -2.660185258793539654e-05, -2.645074168506421461e-05, -2.629895421901388473e-05, -2.614649677073380520e-05, -2.599337593403773126e-05, -2.583959831534102207e-05, -2.568517053340283436e-05, -2.553009921906197017e-05, -2.537439101497928053e-05, -2.521805257537656250e-05, -2.506109056577553071e-05, -2.490351166273647719e-05, -2.474532255360027873e-05, -2.458652993622448846e-05, -2.442714051872582094e-05, -2.426716101921969968e-05, -2.410659816555775484e-05, -2.394545869507050818e-05, -2.378374935430530447e-05, -2.362147689876585899e-05, -2.345864809265536265e-05, -2.329526970861445738e-05, -2.313134852746119027e-05, -2.296689133793368832e-05, -2.280190493642827624e-05, -2.263639612674341831e-05, -2.247037171981685025e-05, -2.230383853346973454e-05, -2.213680339214814605e-05, -2.196927312666208077e-05, -2.180125457392975358e-05, -2.163275457671906679e-05, -2.146377998338756430e-05, -2.129433764762761697e-05, -2.112443442820884665e-05, -2.095407718871895107e-05, -2.078327279730956347e-05, -2.061202812643770082e-05, -2.044035005260891300e-05, -2.026824545612481953e-05, -2.009572122082317884e-05, -1.992278423382543863e-05, -1.974944138528079296e-05, -1.957569956811059514e-05, -1.940156567775348217e-05, -1.922704661191454792e-05, -1.905214927030744870e-05, -1.887688055440437271e-05, -1.870124736718004635e-05, -1.852525661286237785e-05, -1.834891519667597237e-05, -1.817223002459377170e-05, -1.799520800308471643e-05, -1.781785603886230928e-05, -1.764018103863261602e-05, -1.746218990884743327e-05, -1.728388955544989407e-05, -1.710528688362864870e-05, -1.692638879756865405e-05, -1.674720220020020457e-05, -1.656773399295423456e-05, -1.638799107551217919e-05, -1.620798034555883405e-05, -1.602770869853862304e-05, -1.584718302740742118e-05, -1.566641022238606117e-05, -1.548539717071813624e-05, -1.530415075642301549e-05, -1.512267786005164933e-05, -1.494098535844642385e-05, -1.475908012449409821e-05, -1.457696902688660254e-05, -1.439465892987799030e-05, -1.421215669304296277e-05, -1.402946917103519525e-05, -1.384660321335127581e-05, -1.366356566408647518e-05, -1.348036336169977977e-05, -1.329700313877223832e-05, -1.311349182177320447e-05, -1.292983623081866644e-05, -1.274604317943864158e-05, -1.256211947434076103e-05, -1.237807191517469630e-05, -1.219390729429639614e-05, -1.200963239653789849e-05, -1.182525399896950913e-05, -1.164077887067119590e-05, -1.145621377250057962e-05, -1.127156545685922414e-05, -1.108684066746581107e-05, -1.090204613912394776e-05, -1.071718859749296523e-05, -1.053227475886297502e-05, -1.034731132992496245e-05, -1.016230500754335315e-05, -9.977262478532865684e-06, -9.792190419430813771e-06, -9.607095496272283466e-06, -9.421984364370238302e-06, -9.236863668087909684e-06, -9.051740040620555463e-06, -8.866620103770735315e-06, -8.681510467731490640e-06, -8.496417730861525073e-06, -8.311348479472294284e-06, -8.126309287604658639e-06, -7.941306716815481714e-06, -7.756347315957696500e-06, -7.571437620968535307e-06, -7.386584154649924615e-06, -7.201793426458470873e-06, -7.017071932291848962e-06, -6.832426154274008185e-06, -6.647862560546742027e-06, -6.463387605058422042e-06, -6.279007727351578086e-06, -6.094729352357750321e-06, -5.910558890189114880e-06, -5.726502735928916053e-06, -5.542567269428886503e-06, -5.358758855101453138e-06, -5.175083841715077019e-06, -4.991548562194799960e-06, -4.808159333415089077e-06, -4.624922456001809798e-06, -4.441844214130421960e-06, -4.258930875325916552e-06, -4.076188690263356400e-06, -3.893623892574035218e-06, -3.711242698644000656e-06, -3.529051307422225055e-06, -3.347055900222299362e-06, -3.165262640532555452e-06, -2.983677673818009492e-06, -2.802307127334631336e-06, -2.621157109933241574e-06, -2.440233711873597538e-06, -2.259543004632077439e-06, -2.079091040717726835e-06, -1.898883853480690478e-06, -1.718927456930304158e-06, -1.539227845549882901e-06, -1.359790994110375839e-06, -1.180622857490685532e-06, -1.001729370495117759e-06, -8.231164476701934886e-07, -6.447899831284926051e-07, -4.667558503697162356e-07, -2.890199021006317412e-07, -1.115879700621159867e-07, 6.553413514875661085e-08, 2.423406242533919959e-07, 4.188257294610106690e-07, 5.949837046454449168e-07, 7.708088255127391433e-07, 9.462953897723443870e-07, 1.121437717306370856e-06, 1.296230150338159768e-06, 1.470667053595075139e-06, 1.644742814478691551e-06, 1.818451843225367247e-06, 1.991788573072934707e-06, 2.164747460419015343e-06, 2.337322984986742554e-06, 2.509509649980827757e-06, 2.681301982247215299e-06, 2.852694532431100262e-06, 3.023681875134739602e-06, 3.194258609069374275e-06, 3.364419357214090274e-06, 3.534158766965082771e-06, 3.703471510287963654e-06, 3.872352283871004184e-06, 4.040795809271372273e-06, 4.208796833066042412e-06, 4.376350126999426738e-06, 4.543450488126117025e-06, 4.710092738958259105e-06, 4.876271727610091408e-06, 5.041982327937555483e-06, 5.207219439682118796e-06, 5.371977988611340702e-06, 5.536252926654062284e-06, 5.700039232042755331e-06, 5.863331909446321847e-06, 6.026125990108750813e-06, 6.188416531979610384e-06, 6.350198619851843206e-06, 6.511467365487804081e-06, 6.672217907754643773e-06, 6.832445412749991763e-06, 6.992145073933239581e-06, 7.151312112248778165e-06, 7.309941776256052997e-06, 7.468029342250372178e-06, 7.625570114386874781e-06, 7.782559424802884760e-06, 7.938992633739787977e-06, 8.094865129659387432e-06, 8.250172329366438427e-06, 8.404909678122115412e-06, 8.559072649760172391e-06, 8.712656746803802967e-06, 8.865657500575736000e-06, 9.018070471312618930e-06, 9.169891248276180689e-06, 9.321115449859551278e-06, 9.471738723698001157e-06, 9.621756746776539843e-06, 9.771165225533018454e-06, 9.919959895964938868e-06, 1.006813652373300689e-05, 1.021569090425964897e-05, 1.036261886283389517e-05, 1.050891625470748699e-05, 1.065457896519577753e-05, 1.079960290977150490e-05, 1.094398403416473696e-05, 1.108771831445203512e-05, 1.123080175715398342e-05, 1.137323039932354420e-05, 1.151500030863975353e-05, 1.165610758349336807e-05, 1.179654835307897482e-05, 1.193631877747840527e-05, 1.207541504774645677e-05, 1.221383338599714935e-05, 1.235157004548413281e-05, 1.248862131068278115e-05, 1.262498349737275632e-05, 1.276065295271404631e-05, 1.289562605532508193e-05, 1.302989921536115174e-05, 1.316346887458679457e-05, 1.329633150645173602e-05, 1.342848361616370449e-05, 1.355992174075666306e-05, 1.369064244916441500e-05, 1.382064234228673668e-05, 1.394991805305760607e-05, 1.407846624651175076e-05, 1.420628361985013882e-05, 1.433336690250032485e-05, 1.445971285618254562e-05, 1.458531827496751316e-05, 1.471017998533879870e-05, 1.483429484624811347e-05, 1.495765974917623744e-05, 1.508027161818546932e-05, 1.520212740997507670e-05, 1.532322411393468456e-05, 1.544355875219714365e-05, 1.556312837968662168e-05, 1.568193008417141068e-05, 1.579996098630915354e-05, 1.591721823969386105e-05, 1.603369903090322721e-05, 1.614940057954072339e-05, 1.626432013827868174e-05, 1.637845499290346924e-05, 1.649180246234997204e-05, 1.660435989874440793e-05, 1.671612468744200912e-05, 1.682709424706155409e-05, 1.693726602952234906e-05, 1.704663752007838710e-05, 1.715520623734827555e-05, 1.726296973334999818e-05, 1.736992559352839641e-05, 1.747607143678500853e-05, 1.758140491550580156e-05, 1.768592371558803578e-05, 1.778962555646259588e-05, 1.789250819112083514e-05, 1.799456940613454507e-05, 1.809580702167926238e-05, 1.819621889155157555e-05, 1.829580290319101214e-05, 1.839455697769471623e-05, 1.849247906983420608e-05, 1.858956716807035983e-05, 1.868581929456809631e-05, 1.878123350520603119e-05, 1.887580788959099173e-05, 1.896954057106507090e-05, 1.906242970671462284e-05, 1.915447348737898733e-05, 1.924567013765472831e-05, 1.933601791590164784e-05, 1.942551511424682134e-05, 1.951416005858473652e-05, 1.960195110858001407e-05, 1.968888665766764816e-05, 1.977496513304982504e-05, 1.986018499569497774e-05, 1.994454474033385580e-05, 2.002804289545245090e-05, 2.011067802328814113e-05, 2.019244871982018053e-05, 2.027335361476271614e-05, 2.035339137155255004e-05, 2.043256068734108244e-05, 2.051086029297814682e-05, 2.058828895300142888e-05, 2.066484546561956308e-05, 2.074052866269771617e-05, 2.081533740973832904e-05, 2.088927060586533822e-05, 2.096232718380204116e-05, 2.103450610985089963e-05, 2.110580638387247568e-05, 2.117622703926080668e-05, 2.124576714291940722e-05, 2.131442579523668481e-05, 2.138220213005790986e-05, 2.144909531465678587e-05, 2.151510454970810720e-05, 2.158022906925539564e-05, 2.164446814068080027e-05, 2.170782106467260186e-05, 2.177028717518956293e-05, 2.183186583942755131e-05, 2.189255645778323967e-05, 2.195235846381582643e-05, 2.201127132420952569e-05, 2.206929453873427514e-05, 2.212642764020308623e-05, 2.218267019443251483e-05, 2.223802180019767021e-05, 2.229248208918961272e-05, 2.234605072596852976e-05, 2.239872740791926320e-05, 2.245051186520152415e-05, 2.250140386070312656e-05, 2.255140318998893491e-05, 2.260050968125086208e-05, 2.264872319525502813e-05, 2.269604362528977273e-05, 2.274247089711057437e-05, 2.278800496888460351e-05, 2.283264583113537075e-05, 2.287639350668438991e-05, 2.291924805059266165e-05, 2.296120955010145907e-05, 2.300227812457197152e-05, 2.304245392542205500e-05, 2.308173713606504921e-05, 2.312012797184468145e-05, 2.315762667997103085e-05, 2.319423353945349424e-05, 2.322994886103497169e-05, 2.326477298712278585e-05, 2.329870629171963863e-05, 2.333174918035359882e-05, 2.336390209000734102e-05, 2.339516548904475523e-05, 2.342553987713908125e-05, 2.345502578519764131e-05, 2.348362377528641687e-05, 2.351133444055462541e-05, 2.353815840515641395e-05, 2.356409632417335551e-05, 2.358914888353495678e-05, 2.361331679993769532e-05, 2.363660082076426343e-05, 2.365900172400159230e-05, 2.368052031815677216e-05, 2.370115744217360932e-05, 2.372091396534726224e-05, 2.373979078723741724e-05, 2.375778883758215541e-05, 2.377490907620903449e-05, 2.379115249294684158e-05, 2.380652010753467942e-05, 2.382101296953253661e-05, 2.383463215822764647e-05, 2.384737878254324464e-05, 2.385925398094386737e-05, 2.387025892134153081e-05, 2.388039480099941658e-05, 2.388966284643639080e-05, 2.389806431332901934e-05, 2.390560048641332216e-05, 2.391227267938589069e-05, 2.391808223480409038e-05, 2.392303052398456927e-05, 2.392711894690223060e-05, 2.393034893208719301e-05, 2.393272193652108318e-05, 2.393423944553323704e-05, 2.393490297269499682e-05, 2.393471405971395730e-05, 2.393367427632713126e-05, 2.393178522019268506e-05, 2.392904851678197929e-05, 2.392546581926992873e-05, 2.392103880842453919e-05, 2.391576919249628153e-05, 2.390965870710606991e-05, 2.390270911513241666e-05, 2.389492220659819414e-05, 2.388629979855643099e-05, 2.387684373497507835e-05, 2.386655588662116968e-05, 2.385543815094455018e-05, 2.384349245196004780e-05, 2.383072074012966785e-05, 2.381712499224361877e-05, 2.380270721130055183e-05, 2.378746942638718082e-05, 2.377141369255730878e-05, 2.375454209070969943e-05, 2.373685672746560633e-05, 2.371835973504540429e-05, 2.369905327114455319e-05, 2.367893951880875551e-05, 2.365802068630852432e-05, 2.363629900701291774e-05, 2.361377673926277882e-05, 2.359045616624309098e-05, 2.356633959585465260e-05, 2.354142936058544993e-05, 2.351572781738052575e-05, 2.348923734751219022e-05, 2.346196035644875104e-05, 2.343389927372313195e-05, 2.340505655280062031e-05, 2.337543467094591349e-05, 2.334503612908945364e-05, 2.331386345169361344e-05, 2.328191918661771969e-05, 2.324920590498261278e-05, 2.321572620103479949e-05, 2.318148269200976565e-05, 2.314647801799475337e-05, 2.311071484179094541e-05, 2.307419584877514469e-05, 2.303692374676077957e-05, 2.299890126585827898e-05, 2.296013115833513572e-05, 2.292061619847485522e-05, 2.288035918243628368e-05, 2.283936292811136409e-05, 2.279763027498289574e-05, 2.275516408398186671e-05, 2.271196723734400383e-05, 2.266804263846520441e-05, 2.262339321175831994e-05, 2.257802190250726655e-05, 2.253193167672166395e-05, 2.248512552099131857e-05, 2.243760644233930063e-05, 2.238937746807496357e-05, 2.234044164564716006e-05, 2.229080204249561135e-05, 2.224046174590296461e-05, 2.218942386284580311e-05, 2.213769151984532456e-05, 2.208526786281750771e-05, 2.203215605692341117e-05, 2.197835928641778824e-05, 2.192388075449905373e-05, 2.186872368315656386e-05, 2.181289131301998672e-05, 2.175638690320576908e-05, 2.169921373116537181e-05, 2.164137509253184169e-05, 2.158287430096642056e-05, 2.152371468800409729e-05, 2.146389960290039312e-05, 2.140343241247542622e-05, 2.134231650095986697e-05, 2.128055526983953444e-05, 2.121815213769892913e-05, 2.115511054006619882e-05, 2.109143392925587503e-05, 2.102712577421207707e-05, 2.096218956035237677e-05, 2.089662878940965742e-05, 2.083044697927429798e-05, 2.076364766383668933e-05, 2.069623439282864257e-05, 2.062821073166416720e-05, 2.055958026128188910e-05, 2.049034657798457502e-05, 2.042051329328059515e-05, 2.035008403372327824e-05, 2.027906244075206241e-05, 2.020745217053060346e-05, 2.013525689378813913e-05, 2.006248029565710272e-05, 1.998912607551331849e-05, 1.991519794681377112e-05, 1.984069963693618104e-05, 1.976563488701615391e-05, 1.969000745178610203e-05, 1.961382109941329843e-05, 1.953707961133661634e-05, 1.945978678210504747e-05, 1.938194641921472605e-05, 1.930356234294522112e-05, 1.922463838619768546e-05, 1.914517839433135788e-05, 1.906518622499943537e-05, 1.898466574798666977e-05, 1.890362084504488413e-05, 1.882205540972878047e-05, 1.873997334723369567e-05, 1.865737857422948481e-05, 1.857427501869769764e-05, 1.849066661976682060e-05, 1.840655732754759662e-05, 1.832195110296811456e-05, 1.823685191761068768e-05, 1.815126375354541159e-05, 1.806519060316660224e-05, 1.797863646902665206e-05, 1.789160536367261702e-05, 1.780410130947906311e-05, 1.771612833848529712e-05, 1.762769049222837241e-05, 1.753879182157905923e-05, 1.744943638657549433e-05, 1.735962825625933078e-05, 1.726937150850846940e-05, 1.717867022987333740e-05, 1.708752851541130361e-05, 1.699595046852034154e-05, 1.690394020077466434e-05, 1.681150183175921455e-05, 1.671863948890303918e-05, 1.662535730731544304e-05, 1.653165942962043442e-05, 1.643755000579026287e-05, 1.634303319298180624e-05, 1.624811315536986783e-05, 1.615279406398197791e-05, 1.605708009653492309e-05, 1.596097543726745393e-05, 1.586448427677683131e-05, 1.576761081185333992e-05, 1.567035924531503887e-05, 1.557273378584253949e-05, 1.547473864781619878e-05, 1.537637805114907099e-05, 1.527765622112435182e-05, 1.517857738822912957e-05, 1.507914578799205467e-05, 1.497936566081667068e-05, 1.487924125181926680e-05, 1.477877681066443828e-05, 1.467797659140105846e-05, 1.457684485229793409e-05, 1.447538585568187123e-05, 1.437360386777206001e-05, 1.427150315851847425e-05, 1.416908800143883124e-05, 1.406636267345419953e-05, 1.396333145472803049e-05, 1.385999862850220665e-05, 1.375636848093454683e-05, 1.365244530093824097e-05, 1.354823338001849465e-05, 1.344373701211039183e-05, 1.333896049341878351e-05, 1.323390812225551688e-05, 1.312858419887807208e-05, 1.302299302533071648e-05, 1.291713890528113739e-05, 1.281102614386189446e-05, 1.270465904750942413e-05, 1.259804192380390124e-05, 1.249117908130890082e-05, 1.238407482941406677e-05, 1.227673347817340312e-05, 1.216915933814824091e-05, 1.206135672024679995e-05, 1.195332993556785368e-05, 1.184508329524003682e-05, 1.173662111026608621e-05, 1.162794769136494878e-05, 1.151906734881412497e-05, 1.140998439229219518e-05, 1.130070313072396858e-05, 1.119122787212162884e-05, 1.108156292343087231e-05, 1.097171259037500992e-05, 1.086168117729825251e-05, 1.075147298701251645e-05, 1.064109232064147473e-05, 1.053054347746589551e-05, 1.041983075477171152e-05, 1.030895844769490121e-05, 1.019793084906782850e-05, 1.008675224926811519e-05, 9.975426936064558852e-06, 9.863959194464877006e-06, 9.752353306566170191e-06, 9.640613551400839916e-06, 9.528744204787876777e-06, 9.416749539180357251e-06, 9.304633823517478907e-06, 9.192401323071813253e-06, 9.080056299303519514e-06, 8.967603009708400468e-06, 8.855045707671638493e-06, 8.742388642317743683e-06, 8.629636058365221623e-06, 8.516792195976455440e-06, 8.403861290613386632e-06, 8.290847572890793716e-06, 8.177755268428994891e-06, 8.064588597710186171e-06, 7.951351775932936368e-06, 7.838049012866245011e-06, 7.724684512707476287e-06, 7.611262473938566723e-06, 7.497787089181416341e-06, 7.384262545057384519e-06, 7.270693022043545966e-06, 7.157082694330919421e-06, 7.043435729685557647e-06, 6.929756289305138815e-06, 6.816048527680886589e-06, 6.702316592457180339e-06, 6.588564624292186883e-06, 6.474796756718737017e-06, 6.361017116008632536e-06, 6.247229821032179367e-06, 6.133438983123528816e-06, 6.019648705942142784e-06, 5.905863085339135362e-06, 5.792086209219025189e-06, 5.678322157407190049e-06, 5.564575001515090371e-06, 5.450848804806159351e-06, 5.337147622061865870e-06, 5.223475499451135892e-06, 5.109836474395393010e-06, 4.996234575439402866e-06, 4.882673822120103317e-06, 4.769158224834579108e-06, 4.655691784712203944e-06, 4.542278493484839462e-06, 4.428922333356677609e-06, 4.315627276878344444e-06, 4.202397286819125215e-06, 4.089236316038654115e-06, 3.976148307362718922e-06, 3.863137193456065452e-06, 3.750206896697139170e-06, 3.637361329056045534e-06, 3.524604391967867745e-06, 3.411939976211584235e-06, 3.299371961786785985e-06, 3.186904217791437391e-06, 3.074540602300088594e-06, 2.962284962245597495e-06, 2.850141133296198591e-06, 2.738112939738512482e-06, 2.626204194356701368e-06, 2.514418698316729628e-06, 2.402760241046049136e-06, 2.291232600119179089e-06, 2.179839541141053054e-06, 2.068584817631273606e-06, 1.957472170908511394e-06, 1.846505329978235789e-06, 1.735688011417616450e-06, 1.625023919262481062e-06, 1.514516744897550025e-06, 1.404170166942085317e-06, 1.293987851141493778e-06, 1.183973450255115155e-06, 1.074130603949209010e-06, 9.644629386850627366e-07, 8.549740676146555146e-07, 7.456675904701764205e-07, 6.365470934597509637e-07, 5.276161491594079634e-07, 4.188783164102114739e-07, 3.103371402108453072e-07, 2.019961516161545790e-07, 9.385886763377096312e-08, -1.407120887985109076e-08, -1.217905893192894663e-07, -2.292957994316432546e-07, -3.365833794183395030e-07, -4.436498840325718396e-07, -5.504918826783609991e-07, -6.571059595101858821e-07, -7.634887135282474450e-07, -8.696367586766381244e-07, -9.755467239394675300e-07, -1.081215253433690268e-06, -1.186639006506335581e-06, -1.291814657826114387e-06, -1.396738897477108534e-06, -1.501408431051205810e-06, -1.605819979740030973e-06, -1.709970280423336600e-06, -1.813856085761725033e-06, -1.917474164283543585e-06, -2.020821300475335795e-06, -2.123894294867226167e-06, -2.226689964122856429e-06, -2.329205141121998989e-06, -2.431436675048983361e-06, -2.533381431475018453e-06, -2.635036292444089751e-06, -2.736398156553769653e-06, -2.837463939040303621e-06, -2.938230571857904324e-06, -3.038695003759765681e-06, -3.138854200379595289e-06, -3.238705144309056523e-06, -3.338244835176744624e-06, -3.437470289727350393e-06, -3.536378541896539602e-06, -3.634966642887346467e-06, -3.733231661246981753e-06, -3.831170682939380721e-06, -3.928780811420458191e-06, -4.026059167711330735e-06, -4.123002890468281591e-06, -4.219609136056849793e-06, -4.315875078620500825e-06, -4.411797910151173452e-06, -4.507374840558520431e-06, -4.602603097738638457e-06, -4.697479927639311723e-06, -4.792002594329335637e-06, -4.886168380062160338e-06, -4.979974585342869825e-06, -5.073418528990297424e-06, -5.166497548203035915e-06, -5.259208998619991913e-06, -5.351550254382690228e-06, -5.443518708196553308e-06, -5.535111771391841871e-06, -5.626326873981242137e-06, -5.717161464721026685e-06, -5.807613011166785836e-06, -5.897678999730726042e-06, -5.987356935739235094e-06, -6.076644343486445941e-06, -6.165538766290217101e-06, -6.254037766546213173e-06, -6.342138925778936028e-06, -6.429839844695381809e-06, -6.517138143236806501e-06, -6.604031460627693751e-06, -6.690517455426898720e-06, -6.776593805576725172e-06, -6.862258208449132812e-06, -6.947508380895431866e-06, -7.032342059290811599e-06, -7.116756999581770778e-06, -7.200750977329073245e-06, -7.284321787754370315e-06, -7.367467245780485652e-06, -7.450185186076384258e-06, -7.532473463096870360e-06, -7.614329951125164369e-06, -7.695752544310966849e-06, -7.776739156711943648e-06, -7.857287722330266052e-06, -7.937396195150590896e-06, -8.017062549176968330e-06, -8.096284778469479382e-06, -8.175060897177658186e-06, -8.253388939577119380e-06, -8.331266960101213416e-06, -8.408693033373872814e-06, -8.485665254242844642e-06, -8.562181737809004641e-06, -8.638240619457924441e-06, -8.713840054889521110e-06, -8.788978220145060558e-06, -8.863653311636210771e-06, -8.937863546172551744e-06, -9.011607160986285131e-06, -9.084882413758905612e-06, -9.157687582645996941e-06, -9.230020966299256493e-06, -9.301880883891684333e-06, -9.373265675137930637e-06, -9.444173700317411228e-06, -9.514603340292949069e-06, -9.584552996532990249e-06, -9.654021091127875485e-06, -9.723006066810289187e-06, -9.791506386970971927e-06, -9.859520535676753763e-06, -9.927047017684755597e-06, -9.994084358459280707e-06, -1.006063110418440504e-05, -1.012668582177755855e-05, -1.019224709890322000e-05, -1.025731354398342191e-05, -1.032188378620919052e-05, -1.038595647555174365e-05, -1.044953028277051031e-05, -1.051260389942204836e-05, -1.057517603786881968e-05, -1.063724543128492975e-05, -1.069881083366342730e-05, -1.075987101982201509e-05, -1.082042478540611778e-05, -1.088047094689476888e-05, -1.094000834160236573e-05, -1.099903582768154611e-05, -1.105755228412500252e-05, -1.111555661076649184e-05, -1.117304772827958517e-05, -1.123002457817852496e-05, -1.128648612281541798e-05, -1.134243134537914943e-05, -1.139785924989093937e-05, -1.145276886120225397e-05, -1.150715922498889320e-05, -1.156102940774580530e-05, -1.161437849678122871e-05, -1.166720560021030543e-05, -1.171950984694617531e-05, -1.177129038669325742e-05, -1.182254638993682810e-05, -1.187327704793321745e-05, -1.192348157270005147e-05, -1.197315919700379226e-05, -1.202230917434799809e-05, -1.207093077896118712e-05, -1.211902330578208720e-05, -1.216658607044537520e-05, -1.221361840926753156e-05, -1.226011967922964383e-05, -1.230608925796179077e-05, -1.235152654372581371e-05, -1.239643095539603636e-05, -1.244080193244185154e-05, -1.248463893490737035e-05, -1.252794144339125599e-05, -1.257070895902612057e-05, -1.261294100345693590e-05, -1.265463711881757241e-05, -1.269579686770896936e-05, -1.273641983317414234e-05, -1.277650561867479497e-05, -1.281605384806466109e-05, -1.285506416556505429e-05, -1.289353623573698530e-05, -1.293146974345408062e-05, -1.296886439387451869e-05, -1.300571991241262201e-05, -1.304203604470853344e-05, -1.307781255659910363e-05, -1.311304923408608326e-05, -1.314774588330464220e-05, -1.318190233049179721e-05, -1.321551842195254927e-05, -1.324859402402703222e-05, -1.328112902305609955e-05, -1.331312332534562531e-05, -1.334457685713147085e-05, -1.337548956454335208e-05, -1.340586141356709231e-05, -1.343569239000753911e-05, -1.346498249945053765e-05, -1.349373176722269493e-05, -1.352194023835308710e-05, -1.354960797753199712e-05, -1.357673506907069084e-05, -1.360332161685897898e-05, -1.362936774432406993e-05, -1.365487359438648678e-05, -1.367983932941739552e-05, -1.370426513119377833e-05, -1.372815120085429130e-05, -1.375149775885301479e-05, -1.377430504491427092e-05, -1.379657331798531854e-05, -1.381830285618886176e-05, -1.383949395677576688e-05, -1.386014693607583452e-05, -1.388026212944881572e-05, -1.389983989123508241e-05, -1.391888059470451411e-05, -1.393738463200573347e-05, -1.395535241411474396e-05, -1.397278437078218169e-05, -1.398968095048100947e-05, -1.400604262035310797e-05, -1.402186986615466410e-05, -1.403716319220204736e-05, -1.405192312131688646e-05, -1.406615019476963834e-05, -1.407984497222373819e-05, -1.409300803167881434e-05, -1.410563996941250900e-05, -1.411774139992320523e-05, -1.412931295587089054e-05, -1.414035528801840156e-05, -1.415086906517111360e-05, -1.416085497411741291e-05, -1.417031371956709024e-05, -1.417924602409053067e-05, -1.418765262805631776e-05, -1.419553428956931038e-05, -1.420289178440689160e-05, -1.420972590595620357e-05, -1.421603746514952904e-05, -1.422182729039972548e-05, -1.422709622753539819e-05, -1.423184513973487583e-05, -1.423607490746025704e-05, -1.423978642839077772e-05, -1.424298061735542787e-05, -1.424565840626517376e-05, -1.424782074404510710e-05, -1.424946859656528662e-05, -1.425060294657195887e-05, -1.425122479361761711e-05, -1.425133515399070262e-05, -1.425093506064518407e-05, -1.425002556312921193e-05, -1.424860772751354593e-05, -1.424668263631940810e-05, -1.424425138844613944e-05, -1.424131509909761647e-05, -1.423787489970923020e-05, -1.423393193787361318e-05, -1.422948737726639709e-05, -1.422454239757111650e-05, -1.421909819440407533e-05, -1.421315597923849167e-05, -1.420671697932810048e-05, -1.419978243763070550e-05, -1.419235361273099253e-05, -1.418443177876293609e-05, -1.417601822533197406e-05, -1.416711425743653347e-05, -1.415772119538917681e-05, -1.414784037473747391e-05, -1.413747314618428425e-05, -1.412662087550782251e-05, -1.411528494348110063e-05, -1.410346674579111407e-05, -1.409116769295767407e-05, -1.407838921025161135e-05, -1.406513273761285447e-05, -1.405139972956804403e-05, -1.403719165514760814e-05, -1.402250999780270406e-05, -1.400735625532159062e-05, -1.399173193974581604e-05, -1.397563857728580431e-05, -1.395907770823627044e-05, -1.394205088689116148e-05, -1.392455968145840768e-05, -1.390660567397405201e-05, -1.388819046021641012e-05, -1.386931564961937658e-05, -1.384998286518592241e-05, -1.383019374340087954e-05, -1.380994993414360828e-05, -1.378925310060021937e-05, -1.376810491917553667e-05, -1.374650707940470257e-05, -1.372446128386453932e-05, -1.370196924808432435e-05, -1.367903270045676872e-05, -1.365565338214827402e-05, -1.363183304700889787e-05, -1.360757346148231764e-05, -1.358287640451533523e-05, -1.355774366746677182e-05, -1.353217705401681000e-05, -1.350617838007536168e-05, -1.347974947369049711e-05, -1.345289217495659091e-05, -1.342560833592212761e-05, -1.339789982049708368e-05, -1.336976850436059588e-05, -1.334121627486762158e-05, -1.331224503095604129e-05, -1.328285668305292771e-05, -1.325305315298112811e-05, -1.322283637386502855e-05, -1.319220829003668233e-05, -1.316117085694107270e-05, -1.312972604104185165e-05, -1.309787581972607754e-05, -1.306562218120952524e-05, -1.303296712444106292e-05, -1.299991265900727274e-05, -1.296646080503685131e-05, -1.293261359310445963e-05, -1.289837306413482705e-05, -1.286374126930631323e-05, -1.282872026995437853e-05, -1.279331213747478681e-05, -1.275751895322715208e-05, -1.272134280843730102e-05, -1.268478580410057060e-05, -1.264785005088391142e-05, -1.261053766902879739e-05, -1.257285078825291402e-05, -1.253479154765280043e-05, -1.249636209560553257e-05, -1.245756458967060968e-05, -1.241840119649132239e-05, -1.237887409169679334e-05, -1.233898545980259995e-05, -1.229873749411257273e-05, -1.225813239661997538e-05, -1.221717237790777851e-05, -1.217585965705020052e-05, -1.213419646151322699e-05, -1.209218502705475563e-05, -1.204982759762563915e-05, -1.200712642527018427e-05, -1.196408377002568176e-05, -1.192070189982339000e-05, -1.187698309038812767e-05, -1.183292962513814941e-05, -1.178854379508574814e-05, -1.174382789873619391e-05, -1.169878424198821092e-05, -1.165341513803322800e-05, -1.160772290725499846e-05, -1.156170987712889123e-05, -1.151537838212213414e-05, -1.146873076359224955e-05, -1.142176936968711971e-05, -1.137449655524374262e-05, -1.132691468168799417e-05, -1.127902611693305020e-05, -1.123083323527922830e-05, -1.118233841731293334e-05, -1.113354404980563021e-05, -1.108445252561270464e-05, -1.103506624357308139e-05, -1.098538760840726005e-05, -1.093541903061713819e-05, -1.088516292638489428e-05, -1.083462171747128606e-05, -1.078379783111546018e-05, -1.073269369993332514e-05, -1.068131176181627158e-05, -1.062965445983099705e-05, -1.057772424211785364e-05, -1.052552356178963427e-05, -1.047305487683121116e-05, -1.042032064999794779e-05, -1.036732334871471394e-05, -1.031406544497572062e-05, -1.026054941524253227e-05, -1.020677774034415921e-05, -1.015275290537532894e-05, -1.009847739959664136e-05, -1.004395371633261642e-05, -9.989184352872384638e-06, -9.934171810367785647e-06, -9.878918593733770646e-06, -9.823427211546985468e-06, -9.767700175946281480e-06, -9.711740002531117362e-06, -9.655549210262264826e-06, -9.599130321361358981e-06, -9.542485861210113265e-06, -9.485618358251031944e-06, -9.428530343887141734e-06, -9.371224352381416804e-06, -9.313702920757855496e-06, -9.255968588701730333e-06, -9.198023898459097724e-06, -9.139871394738386293e-06, -9.081513624610204732e-06, -9.022953137407908612e-06, -8.964192484629383517e-06, -8.905234219837349270e-06, -8.846080898560023298e-06, -8.786735078193281547e-06, -8.727199317901135502e-06, -8.667476178517132467e-06, -8.607568222447024706e-06, -8.547478013569068580e-06, -8.487208117137132451e-06, -8.426761099681565024e-06, -8.366139528912553975e-06, -8.305345973620928226e-06, -8.244383003582358516e-06, -8.183253189458508661e-06, -8.121959102700900701e-06, -8.060503315452955536e-06, -7.998888400454152848e-06, -7.937116930942007362e-06, -7.875191480556620091e-06, -7.813114623244291074e-06, -7.750888933160513767e-06, -7.688516984574959975e-06, -7.626001351775381423e-06, -7.563344608971258059e-06, -7.500549330199428426e-06, -7.437618089228823014e-06, -7.374553459464549639e-06, -7.311358013854282751e-06, -7.248034324792887525e-06, -7.184584964027791029e-06, -7.121012502566128785e-06, -7.057319510579317183e-06, -6.993508557310410953e-06, -6.929582210980173986e-06, -6.865543038693727828e-06, -6.801393606347233218e-06, -6.737136478536295334e-06, -6.672774218461890616e-06, -6.608309387839307337e-06, -6.543744546804962664e-06, -6.479082253825755730e-06, -6.414325065606069349e-06, -6.349475536997549143e-06, -6.284536220907820503e-06, -6.219509668209529949e-06, -6.154398427649328057e-06, -6.089205045758714153e-06, -6.023932066762442414e-06, -5.958582032490061125e-06, -5.893157482286228840e-06, -5.827660952920657831e-06, -5.762094978500356398e-06, -5.696462090380049205e-06, -5.630764817073703838e-06, -5.565005684167559159e-06, -5.499187214231509565e-06, -5.433311926731222782e-06, -5.367382337942021172e-06, -5.301400960861037644e-06, -5.235370305120476093e-06, -5.169292876902587077e-06, -5.103171178852093930e-06, -5.037007709991598732e-06, -4.970804965635773639e-06, -4.904565437306151908e-06, -4.838291612646055295e-06, -4.771985975337445917e-06, -4.705651005015213287e-06, -4.639289177184708887e-06, -4.572902963137025930e-06, -4.506494829867235268e-06, -4.440067239989918422e-06, -4.373622651658005732e-06, -4.307163518480360894e-06, -4.240692289439770390e-06, -4.174211408811092995e-06, -4.107723316081253280e-06, -4.041230445866843946e-06, -3.974735227835052750e-06, -3.908240086623402752e-06, -3.841747441759117315e-06, -3.775259707580980045e-06, -3.708779293159354132e-06, -3.642308602217397696e-06, -3.575850033053969811e-06, -3.509405978464784870e-06, -3.442978825664532561e-06, -3.376570956210725373e-06, -3.310184745925999836e-06, -3.243822564821433787e-06, -3.177486777021876599e-06, -3.111179740688543924e-06, -3.044903807945070447e-06, -2.978661324801340447e-06, -2.912454631080273234e-06, -2.846286060341835399e-06, -2.780157939811371242e-06, -2.714072590304354054e-06, -2.648032326154760168e-06, -2.582039455141228437e-06, -2.516096278416180939e-06, -2.450205090432364896e-06, -2.384368178872734856e-06, -2.318587824579320990e-06, -2.252866301481645491e-06, -2.187205876527602984e-06, -2.121608809613320700e-06, -2.056077353512826362e-06, -1.990613753810302492e-06, -1.925220248831316651e-06, -1.859899069573744208e-06, -1.794652439641236446e-06, -1.729482575174964525e-06, -1.664391684786535112e-06, -1.599381969492874299e-06, -1.534455622648481904e-06, -1.469614829880963588e-06, -1.404861769025376054e-06, -1.340198610059256238e-06, -1.275627515037949703e-06, -1.211150638032036296e-06, -1.146770125062153075e-06, -1.082488114037271026e-06, -1.018306734690843806e-06, -9.542281085199710878e-07, -8.902543487218015255e-07, -8.263875601343361630e-07, -7.626298391737098795e-07, -6.989832737751242877e-07, -6.354499433316156165e-07, -5.720319186358712767e-07, -5.087312618194472000e-07, -4.455500262954725190e-07, -3.824902567002777208e-07, -3.195539888347248571e-07, -2.567432496079552391e-07, -1.940600569802213045e-07, -1.315064199055783535e-07, -6.908433827714173601e-08, -6.795802871439582754e-09, 5.535720470752680232e-08, 1.173727120816574063e-07, 1.792487561537736774e-07, 2.409833831614232718e-07, 3.025746487287260703e-07, 3.640206179207551096e-07, 4.253193652946031667e-07, 4.864689749516357177e-07, 5.474675405889767777e-07, 6.083131655506686842e-07, 6.690039628767349458e-07, 7.295380553547482429e-07, 7.899135755679503698e-07, 8.501286659454289839e-07, 9.101814788092998822e-07, 9.700701764243819894e-07, 1.029792931044428099e-06, 1.089347924959520071e-06, 1.148733350542840724e-06, 1.207947410297249631e-06, 1.266988316899775013e-06, 1.325854293248425644e-06, 1.384543572505563178e-06, 1.443054398142295566e-06, 1.501385023983092615e-06, 1.559533714247895589e-06, 1.617498743595774353e-06, 1.675278397167371552e-06, 1.732870970625587304e-06, 1.790274770197762918e-06, 1.847488112716836534e-06, 1.904509325660705590e-06, 1.961336747192977998e-06, 2.017968726202504238e-06, 2.074403622341018644e-06, 2.130639806063139699e-06, 2.186675658663011402e-06, 2.242509572312909764e-06, 2.298139950098927877e-06, 2.353565206059147038e-06, 2.408783765217655280e-06, 2.463794063621745248e-06, 2.518594548375641360e-06, 2.573183677676146341e-06, 2.627559920845437063e-06, 2.681721758366097413e-06, 2.735667681912958676e-06, 2.789396194385899199e-06, 2.842905809942093048e-06, 2.896195054027954587e-06, 2.949262463409156057e-06, 3.002106586202714027e-06, 3.054725981905856279e-06, 3.107119221425796288e-06, 3.159284887109610613e-06, 3.211221572771865301e-06, 3.262927883723475145e-06, 3.314402436799513898e-06, 3.365643860385298645e-06, 3.416650794443830289e-06, 3.467421890542230295e-06, 3.517955811876505811e-06, 3.568251233297473966e-06, 3.618306841335610423e-06, 3.668121334224060723e-06, 3.717693421923770064e-06, 3.767021826145546808e-06, 3.816105280373762891e-06, 3.864942529887502117e-06, 3.913532331783751496e-06, 3.961873454996910956e-06, 4.009964680321029224e-06, 4.057804800428972187e-06, 4.105392619893167571e-06, 4.152726955203748390e-06, 4.199806634788781787e-06, 4.246630499031346909e-06, 4.293197400287546220e-06, 4.339506202904529509e-06, 4.385555783236483340e-06, 4.431345029661199007e-06, 4.476872842596713348e-06, 4.522138134515610052e-06, 4.567139829960088368e-06, 4.611876865557067402e-06, 4.656348190031120309e-06, 4.700552764218612118e-06, 4.744489561080753360e-06, 4.788157565715010445e-06, 4.831555775368315145e-06, 4.874683199447634714e-06, 4.917538859531329756e-06, 4.960121789379774322e-06, 5.002431034945596540e-06, 5.044465654382218400e-06, 5.086224718054219202e-06, 5.127707308544807235e-06, 5.168912520664920298e-06, 5.209839461459900318e-06, 5.250487250217348738e-06, 5.290855018473898540e-06, 5.330941910020542934e-06, 5.370747080908983020e-06, 5.410269699457119104e-06, 5.449508946253051232e-06, 5.488464014160028408e-06, 5.527134108320382212e-06, 5.565518446157890022e-06, 5.603616257381895830e-06, 5.641426783988786620e-06, 5.678949280264292063e-06, 5.716183012785083714e-06, 5.753127260419931215e-06, 5.789781314329349924e-06, 5.826144477966822343e-06, 5.862216067077408131e-06, 5.897995409697789000e-06, 5.933481846153965632e-06, 5.968674729060630875e-06, 6.003573423318008614e-06, 6.038177306109331310e-06, 6.072485766897830489e-06, 6.106498207423363857e-06, 6.140214041697550793e-06, 6.173632696000366427e-06, 6.206753608874221726e-06, 6.239576231118649210e-06, 6.272100025784989517e-06, 6.304324468169304273e-06, 6.336249045806109748e-06, 6.367873258461242293e-06, 6.399196618123435446e-06, 6.430218648996748306e-06, 6.460938887492114683e-06, 6.491356882217805509e-06, 6.521472193970363887e-06, 6.551284395724859137e-06, 6.580793072623731366e-06, 6.609997821966972667e-06, 6.638898253200128043e-06, 6.667493987903296694e-06, 6.695784659778339270e-06, 6.723769914637296393e-06, 6.751449410388255067e-06, 6.778822817023021803e-06, 6.805889816602504527e-06, 6.832650103243157514e-06, 6.859103383101530656e-06, 6.885249374360169753e-06, 6.911087807211246755e-06, 6.936618423840737185e-06, 6.961840978412596719e-06, 6.986755237051362281e-06, 7.011360977825115667e-06, 7.035657990728420070e-06, 7.059646077663543051e-06, 7.083325052422180111e-06, 7.106694740667073228e-06, 7.129754979912064077e-06, 7.152505619502967182e-06, 7.174946520597496080e-06, 7.197077556144200998e-06, 7.218898610862311168e-06, 7.240409581219900854e-06, 7.261610375412445021e-06, 7.282500913340772762e-06, 7.303081126588752214e-06, 7.323350958399773533e-06, 7.343310363654294057e-06, 7.362959308845503041e-06, 7.382297772055809725e-06, 7.401325742931882959e-06, 7.420043222660490441e-06, 7.438450223942713340e-06, 7.456546770968550549e-06, 7.474332899390909697e-06, 7.491808656299555800e-06, 7.508974100193796991e-06, 7.525829300956125702e-06, 7.542374339824161545e-06, 7.558609309362868630e-06, 7.574534313436769495e-06, 7.590149467180819882e-06, 7.605454896971666366e-06, 7.620450740398671051e-06, 7.635137146233752115e-06, 7.649514274401409010e-06, 7.663582295948651098e-06, 7.677341393013908149e-06, 7.690791758796076377e-06, 7.703933597523239201e-06, 7.716767124420317365e-06, 7.729292565677532207e-06, 7.741510158417430666e-06, 7.753420150662288069e-06, 7.765022801300834975e-06, 7.776318380054873924e-06, 7.787307167445022026e-06, 7.797989454756927905e-06, 7.808365544006380714e-06, 7.818435747904722396e-06, 7.828200389823384105e-06, 7.837659803758624226e-06, 7.846814334295414278e-06, 7.855664336571285852e-06, 7.864210176239872622e-06, 7.872452229434189771e-06, 7.880390882729137536e-06, 7.888026533104565492e-06, 7.895359587906979881e-06, 7.902390464811627035e-06, 7.909119591784222731e-06, 7.915547407041981898e-06, 7.921674359014805876e-06, 7.927500906306058010e-06, 7.933027517652515938e-06, 7.938254671884784655e-06, 7.943182857887076001e-06, 7.947812574556493482e-06, 7.952144330762393325e-06, 7.956178645305289824e-06, 7.959916046875313458e-06, 7.963357074010679173e-06, 7.966502275055610863e-06, 7.969352208118250615e-06, 7.971907441027914032e-06, 7.974168551292653886e-06, 7.976136126055693827e-06, 7.977810762052583757e-06, 7.979193065567171062e-06, 7.980283652388002130e-06, 7.981083147763917498e-06, 7.981592186359951925e-06, 7.981811412212350170e-06, 7.981741478683835179e-06, 7.981383048418229145e-06, 7.980736793295216863e-06, 7.979803394384428077e-06, 7.978583541899702779e-06, 7.977077935152724632e-06, 7.975287282506547654e-06, 7.973212301329141546e-06, 7.970853717946159439e-06, 7.968212267593958062e-06, 7.965288694372211329e-06, 7.962083751196088549e-06, 7.958598199748532598e-06, 7.954832810432112863e-06, 7.950788362320739290e-06, 7.946465643111005417e-06, 7.941865449073526336e-06, 7.936988585003824332e-06, 7.931835864173229769e-06, 7.926408108279326282e-06, 7.920706147396478961e-06, 7.914730819925778099e-06, 7.908482972545120151e-06, 7.901963460158860093e-06, 7.895173145847394328e-06, 7.888112900816436968e-06, 7.880783604346182605e-06, 7.873186143740221760e-06, 7.865321414274280138e-06, 7.857190319144737663e-06, 7.848793769417027229e-06, 7.840132683973769179e-06, 7.831207989462741459e-06, 7.822020620244714249e-06, 7.812571518341108405e-06, 7.802861633381318483e-06, 7.792891922550071335e-06, 7.782663350534515349e-06, 7.772176889471106399e-06, 7.761433518892400628e-06, 7.750434225673647319e-06, 7.739180003979200518e-06, 7.727671855208759539e-06, 7.715910787943553576e-06, 7.703897817892231545e-06, 7.691633967836682467e-06, 7.679120267577649179e-06, 7.666357753880381000e-06, 7.653347470419756169e-06, 7.640090467725670236e-06, 7.626587803128003486e-06, 7.612840540701673069e-06, 7.598849751211248895e-06, 7.584616512055740648e-06, 7.570141907213180649e-06, 7.555427027184871301e-06, 7.540472968939712158e-06, 7.525280835858423649e-06, 7.509851737677451477e-06, 7.494186790432926914e-06, 7.478287116404581368e-06, 7.462153844059151025e-06, 7.445788107994190615e-06, 7.429191048881450104e-06, 7.412363813410005752e-06, 7.395307554229899386e-06, 7.378023429894975533e-06, 7.360512604806010785e-06, 7.342776249153693231e-06, 7.324815538861361338e-06, 7.306631655527773321e-06, 7.288225786369923953e-06, 7.269599124165388720e-06, 7.250752867194972919e-06, 7.231688219185107488e-06, 7.212406389250042391e-06, 7.192908591834103542e-06, 7.173196046654075077e-06, 7.153269978641006499e-06, 7.133131617882447572e-06, 7.112782199564273251e-06, 7.092222963912678018e-06, 7.071455156135774655e-06, 7.050480026365592816e-06, 7.029298829599727774e-06, 7.007912825642927336e-06, 6.986323279048588970e-06, 6.964531459060604215e-06, 6.942538639554406041e-06, 6.920346098978726856e-06, 6.897955120296966047e-06, 6.875366990928347438e-06, 6.852583002689468096e-06, 6.829604451735377868e-06, 6.806432638500796990e-06, 6.783068867641536980e-06, 6.759514447975525126e-06, 6.735770692423790005e-06, 6.711838917951935737e-06, 6.687720445510890343e-06, 6.663416599978057283e-06, 6.638928710098572867e-06, 6.614258108426013958e-06, 6.589406131263696043e-06, 6.564374118605419042e-06, 6.539163414076766233e-06, 6.513775364875601883e-06, 6.488211321713700508e-06, 6.462472638757092042e-06, 6.436560673567515766e-06, 6.410476787043006872e-06, 6.384222343359264847e-06, 6.357798709910185828e-06, 6.331207257249174231e-06, 6.304449359030219754e-06, 6.277526391948508502e-06, 6.250439735681843043e-06, 6.223190772831578795e-06, 6.195780888863405414e-06, 6.168211472048783785e-06, 6.140483913406089933e-06, 6.112599606641336272e-06, 6.084559948089802566e-06, 6.056366336656928272e-06, 6.028020173759440364e-06, 5.999522863267125751e-06, 5.970875811443499998e-06, 5.942080426887649208e-06, 5.913138120475334963e-06, 5.884050305300427087e-06, 5.854818396616257621e-06, 5.825443811777592291e-06, 5.795927970181632121e-06, 5.766272293210054361e-06, 5.736478204170354601e-06, 5.706547128237925818e-06, 5.676480492397269202e-06, 5.646279725384609373e-06, 5.615946257629076408e-06, 5.585481521195239741e-06, 5.554886949724689146e-06, 5.524163978378601671e-06, 5.493314043779334476e-06, 5.462338583953167105e-06, 5.431239038272593975e-06, 5.400016847398361065e-06, 5.368673453222341168e-06, 5.337210298810053389e-06, 5.305628828342853989e-06, 5.273930487061187725e-06, 5.242116721207376697e-06, 5.210188977968122910e-06, 5.178148705418016255e-06, 5.145997352462253910e-06, 5.113736368779790870e-06, 5.081367204767137624e-06, 5.048891311481110042e-06, 5.016310140582780355e-06, 4.983625144280901290e-06, 4.950837775275528399e-06, 4.917949486701720319e-06, 4.884961732073997981e-06, 4.851875965229655230e-06, 4.818693640273513643e-06, 4.785416211521631263e-06, 4.752045133446260703e-06, 4.718581860619609545e-06, 4.685027847659085591e-06, 4.651384549171832295e-06, 4.617653419699547115e-06, 4.583835913663273590e-06, 4.549933485309034540e-06, 4.515947588652335305e-06, 4.481879677424123050e-06, 4.447731205016297133e-06, 4.413503624426844239e-06, 4.379198388206215267e-06, 4.344816948402852639e-06, 4.310360756509111484e-06, 4.275831263408076131e-06, 4.241229919319490609e-06, 4.206558173746063535e-06, 4.171817475420622575e-06, 4.137009272252486246e-06, 4.102135011274343091e-06, 4.067196138589956718e-06, 4.032194099320640083e-06, 3.997130337553349324e-06, 3.962006296287599347e-06, 3.926823417383733838e-06, 3.891583141510677728e-06, 3.856286908093506697e-06, 3.820936155262290624e-06, 3.785532319800362317e-06, 3.750076837092473592e-06, 3.714571141074038096e-06, 3.679016664179635512e-06, 3.643414837291965966e-06, 3.607767089691693822e-06, 3.572074849006406319e-06, 3.536339541160087212e-06, 3.500562590323376452e-06, 3.464745418863073052e-06, 3.428889447292212655e-06, 3.392996094221053551e-06, 3.357066776306756140e-06, 3.321102908204742918e-06, 3.285105902519000086e-06, 3.249077169753801753e-06, 3.213018118264044585e-06, 3.176930154207820734e-06, 3.140814681497106125e-06, 3.104673101750311783e-06, 3.068506814243705649e-06, 3.032317215864359476e-06, 2.996105701061722684e-06, 2.959873661800952965e-06, 2.923622487515715790e-06, 2.887353565060751842e-06, 2.851068278665655691e-06, 2.814768009888235623e-06, 2.778454137567654932e-06, 2.742128037778975468e-06, 2.705791083787162907e-06, 2.669444646000909474e-06, 2.633090091927805150e-06, 2.596728786128565284e-06, 2.560362090171934556e-06, 2.523991362590539620e-06, 2.487617958835407249e-06, 2.451243231232216775e-06, 2.414868528936883375e-06, 2.378495197891515323e-06, 2.342124580780538110e-06, 2.305758016987929438e-06, 2.269396842553025282e-06, 2.233042390128217790e-06, 2.196695988935488520e-06, 2.160358964724540870e-06, 2.124032639729546340e-06, 2.087718332627769516e-06, 2.051417358497473918e-06, 2.015131028776209865e-06, 1.978860651219132405e-06, 1.942607529858466978e-06, 1.906372964961660906e-06, 1.870158252991403437e-06, 1.833964686565078070e-06, 1.797793554414028945e-06, 1.761646141344148619e-06, 1.725523728196039985e-06, 1.689427591804621271e-06, 1.653359004961335031e-06, 1.617319236374228328e-06, 1.581309550629114583e-06, 1.545331208151615267e-06, 1.509385465168393120e-06, 1.473473573669061282e-06, 1.437596781369137890e-06, 1.401756331671624870e-06, 1.365953463630407435e-06, 1.330189411912970872e-06, 1.294465406763569214e-06, 1.258782673966552110e-06, 1.223142434810857409e-06, 1.187545906053100431e-06, 1.151994299882583884e-06, 1.116488823885169156e-06, 1.081030681008778353e-06, 1.045621069527533895e-06, 1.010261183007808795e-06, 9.749522102736120252e-07, 9.396953353723328094e-07, 9.044917375405781964e-07, 8.693425911711894910e-07, 8.342490657789357258e-07, 7.992123259681408026e-07, 7.642335313997488404e-07, 7.293138367582319742e-07, 6.944543917199337690e-07, 6.596563409205194381e-07, 6.249208239231025223e-07, 5.902489751873889621e-07, 5.556419240379346442e-07, 5.211007946330052933e-07, 4.866267059344408404e-07, 4.522207716767289791e-07, 4.178841003367633894e-07, 3.836177951046833050e-07, 3.494229538533585163e-07, 3.153006691097809385e-07, 2.812520280253407956e-07, 2.472781123477650550e-07, 2.133799983916186570e-07, 1.795587570112023733e-07, 1.458154535716042906e-07, 1.121511479217408562e-07, 7.856689436629406833e-08, 4.506374163930164988e-08, 1.164273287640902035e-08, -2.169509441098402914e-08, -5.494870836210749564e-08, -8.811708279332675757e-08, -1.211991972233221677e-07, -1.541940368987142480e-07, -1.871005928197270184e-07, -2.199178617644482106e-07, -2.526448463135336599e-07, -2.852805548750229612e-07, -3.178240017077620741e-07, -3.502742069456566824e-07, -3.826301966212441940e-07, -4.148910026881930011e-07, -4.470556630450987587e-07, -4.791232215575047535e-07, -5.110927280804921136e-07, -5.429632384808429018e-07, -5.747338146589899689e-07, -6.064035245698203474e-07, -6.379714422447647063e-07, -6.694366478120401676e-07, -7.007982275179241745e-07, -7.320552737464307487e-07, -7.632068850403326841e-07, -7.942521661198764212e-07, -8.251902279032251881e-07, -8.560201875250045748e-07, -8.867411683558652886e-07, -9.173523000204439582e-07, -9.478527184165916287e-07, -9.782415657327725596e-07, -1.008517990465944349e-06, -1.038681147439538114e-06, -1.068730197820151922e-06, -1.098664309134666572e-06, -1.128482655287342322e-06, -1.158184416575597630e-06, -1.187768779706177104e-06, -1.217234937811407552e-06, -1.246582090464109145e-06, -1.275809443693296022e-06, -1.304916209999166868e-06, -1.333901608367123094e-06, -1.362764864282952332e-06, -1.391505209746321877e-06, -1.420121883284817199e-06, -1.448614129967521156e-06, -1.476981201418413627e-06, -1.505222355828639092e-06, -1.533336857969997116e-06, -1.561323979206647705e-06, -1.589182997507807699e-06, -1.616913197458892217e-06, -1.644513870273843008e-06, -1.671984313805741992e-06, -1.699323832557871387e-06, -1.726531737694502791e-06, -1.753607347051480018e-06, -1.780549985145770232e-06, -1.807358983186058644e-06, -1.834033679081681105e-06, -1.860573417451919868e-06, -1.886977549635434247e-06, -1.913245433698379631e-06, -1.939376434443257715e-06, -1.965369923417109637e-06, -1.991225278918809772e-06, -2.016941886007084815e-06, -2.042519136507907522e-06, -2.067956429021045552e-06, -2.093253168927218047e-06, -2.118408768394592793e-06, -2.143422646384379186e-06, -2.168294228657441437e-06, -2.193022947779355785e-06, -2.217608243126233845e-06, -2.242049560889237298e-06, -2.266346354080133576e-06, -2.290498082534893213e-06, -2.314504212918714869e-06, -2.338364218729418542e-06, -2.362077580301612546e-06, -2.385643784809561144e-06, -2.409062326271012712e-06, -2.432332705549490537e-06, -2.455454430357022809e-06, -2.478427015256509651e-06, -2.501249981664000792e-06, -2.523922857849917411e-06, -2.546445178941280258e-06, -2.568816486922377118e-06, -2.591036330635799574e-06, -2.613104265783507732e-06, -2.635019854926753987e-06, -2.656782667486659005e-06, -2.678392279744109655e-06, -2.699848274838937812e-06, -2.721150242769640409e-06, -2.742297780392589162e-06, -2.763290491420448306e-06, -2.784127986421131477e-06, -2.804809882816106797e-06, -2.825335804877958695e-06, -2.845705383728794205e-06, -2.865918257337238551e-06, -2.885974070516173984e-06, -2.905872474919186484e-06, -2.925613129038060233e-06, -2.945195698198377281e-06, -2.964619854556483474e-06, -2.983885277094919557e-06, -3.002991651618601905e-06, -3.021938670749757261e-06, -3.040726033923742634e-06, -3.059353447383513323e-06, -3.077820624174338705e-06, -3.096127284138582815e-06, -3.114273153909536676e-06, -3.132257966905441637e-06, -3.150081463323503814e-06, -3.167743390132937404e-06, -3.185243501068165559e-06, -3.202581556622106797e-06, -3.219757324038456415e-06, -3.236770577304444784e-06, -3.253621097143098854e-06, -3.270308671004735824e-06, -3.286833093059280555e-06, -3.303194164187289564e-06, -3.319391691971370151e-06, -3.335425490687220490e-06, -3.351295381294486329e-06, -3.367001191426838424e-06, -3.382542755382780959e-06, -3.397919914115302500e-06, -3.413132515222005517e-06, -3.428180412934294436e-06, -3.443063468107225638e-06, -3.457781548208192798e-06, -3.472334527305886231e-06, -3.486722286059021002e-06, -3.500944711704833794e-06, -3.515001698046942812e-06, -3.528893145443792553e-06, -3.542618960795974152e-06, -3.556179057533785431e-06, -3.569573355604762150e-06, -3.582801781460468103e-06, -3.595864268043344513e-06, -3.608760754773636919e-06, -3.621491187535421679e-06, -3.634055518662814576e-06, -3.646453706926192559e-06, -3.658685717517570987e-06, -3.670751522036407362e-06, -3.682651098474895134e-06, -3.694384431202714153e-06, -3.705951510952344381e-06, -3.717352334803400871e-06, -3.728586906167205056e-06, -3.739655234771104900e-06, -3.750557336642507061e-06, -3.761293234092410141e-06, -3.771862955699422448e-06, -3.782266536292831923e-06, -3.792504016936138129e-06, -3.802575444909667742e-06, -3.812480873693865985e-06, -3.822220362951472506e-06, -3.831793978510052178e-06, -3.841201792344222650e-06, -3.850443882557765432e-06, -3.859520333365148303e-06, -3.868431235073516535e-06, -3.877176684063824391e-06, -3.885756782772063181e-06, -3.894171639670522351e-06, -3.902421369248349229e-06, -3.910506091992418790e-06, -3.918425934367810389e-06, -3.926181028797873689e-06, -3.933771513644461453e-06, -3.941197533187918394e-06, -3.948459237606612617e-06, -3.955556782956647492e-06, -3.962490331151247412e-06, -3.969260049939681915e-06, -3.975866112886626037e-06, -3.982308699350665157e-06, -3.988587994463233517e-06, -3.994704189106805672e-06, -4.000657479893558878e-06, -4.006448069143105445e-06, -4.012076164860785823e-06, -4.017541980715251876e-06, -4.022845736016246665e-06, -4.027987655691876015e-06, -4.032967970266160446e-06, -4.037786915835942513e-06, -4.042444734047876313e-06, -4.046941672075414444e-06, -4.051277982595210511e-06, -4.055453923763708838e-06, -4.059469759193600331e-06, -4.063325757929795548e-06, -4.067022194425480766e-06, -4.070559348518076651e-06, -4.073937505404852174e-06, -4.077156955618562255e-06, -4.080217995002712699e-06, -4.083120924687068248e-06, -4.085866051062458423e-06, -4.088453685756021301e-06, -4.090884145605789132e-06, -4.093157752635610239e-06, -4.095274834029422082e-06, -4.097235722105901260e-06, -4.099040754292550230e-06, -4.100690273099827226e-06, -4.102184626095227053e-06, -4.103524165877049322e-06, -4.104709250048095536e-06, -4.105740241189356860e-06, -4.106617506833363074e-06, -4.107341419437490873e-06, -4.107912356357268775e-06, -4.108330699819289855e-06, -4.108596836894308286e-06, -4.108711159469973344e-06, -4.108674064223463474e-06, -4.108485952594177941e-06, -4.108147230756098998e-06, -4.107658309590143879e-06, -4.107019604656399062e-06, -4.106231536166276601e-06, -4.105294528954315550e-06, -4.104209012450240891e-06, -4.102975420650602327e-06, -4.101594192090507948e-06, -4.100065769815052958e-06, -4.098390601350927137e-06, -4.096569138677556423e-06, -4.094601838198403745e-06, -4.092489160712084351e-06, -4.090231571383399822e-06, -4.087829539714188283e-06, -4.085283539514210181e-06, -4.082594048871844340e-06, -4.079761550124650172e-06, -4.076786529829977331e-06, -4.073669478735326335e-06, -4.070410891748737143e-06, -4.067011267909015096e-06, -4.063471110355881481e-06, -4.059790926300069875e-06, -4.055971226993279349e-06, -4.052012527698073455e-06, -4.047915347657714845e-06, -4.043680210065899087e-06, -4.039307642036353807e-06, -4.034798174572495426e-06, -4.030152342536833486e-06, -4.025370684620433415e-06, -4.020453743312244618e-06, -4.015402064868365888e-06, -4.010216199281237122e-06, -4.004896700248742947e-06, -3.999444125143327358e-06, -3.993859034980878811e-06, -3.988141994389724580e-06, -3.982293571579427760e-06, -3.976314338309608828e-06, -3.970204869858647776e-06, -3.963965744992346437e-06, -3.957597545932555227e-06, -3.951100858325662673e-06, -3.944476271211105274e-06, -3.937724376989811280e-06, -3.930845771392550467e-06, -3.923841053448249171e-06, -3.916710825452307871e-06, -3.909455692934759520e-06, -3.902076264628437208e-06, -3.894573152437140117e-06, -3.886946971403699534e-06, -3.879198339677958465e-06, -3.871327878484807999e-06, -3.863336212092142355e-06, -3.855223967778669942e-06, -3.846991775801908213e-06, -3.838640269365885454e-06, -3.830170084589036544e-06, -3.821581860471858149e-06, -3.812876238864704958e-06, -3.804053864435430906e-06, -3.795115384637082487e-06, -3.786061449675465866e-06, -3.776892712476813935e-06, -3.767609828655295827e-06, -3.758213456480615359e-06, -3.748704256845488784e-06, -3.739082893233138626e-06, -3.729350031684836229e-06, -3.719506340767251175e-06, -3.709552491539975620e-06, -3.699489157522938933e-06, -3.689317014663700367e-06, -3.679036741304984408e-06, -3.668649018151976825e-06, -3.658154528239666051e-06, -3.647553956900269258e-06, -3.636847991730502154e-06, -3.626037322558885636e-06, -3.615122641413206163e-06, -3.604104642487703403e-06, -3.592984022110450563e-06, -3.581761478710651300e-06, -3.570437712785945513e-06, -3.559013426869655011e-06, -3.547489325498259558e-06, -3.535866115178559951e-06, -3.524144504355078260e-06, -3.512325203377294172e-06, -3.500408924467105798e-06, -3.488396381685989356e-06, -3.476288290902484117e-06, -3.464085369759508796e-06, -3.451788337641755436e-06, -3.439397915642939731e-06, -3.426914826533382109e-06, -3.414339794727210191e-06, -3.401673546249939033e-06, -3.388916808705897197e-06, -3.376070311245557120e-06, -3.363134784533203014e-06, -3.350110960714313751e-06, -3.336999573383019428e-06, -3.323801357549799342e-06, -3.310517049609024117e-06, -3.297147387306433020e-06, -3.283693109706965349e-06, -3.270154957162217423e-06, -3.256533671278162159e-06, -3.242829994883037630e-06, -3.229044671994862502e-06, -3.215178447789392355e-06, -3.201232068567857892e-06, -3.187206281724854770e-06, -3.173101835716092391e-06, -3.158919480026606032e-06, -3.144659965138442111e-06, -3.130324042498882593e-06, -3.115912464488310257e-06, -3.101425984388505097e-06, -3.086865356350565068e-06, -3.072231335363243145e-06, -3.057524677221170464e-06, -3.042746138493111637e-06, -3.027896476490210342e-06, -3.012976449234560583e-06, -2.997986815427398910e-06, -2.982928334417757002e-06, -2.967801766171014298e-06, -2.952607871237327806e-06, -2.937347410720479505e-06, -2.922021146246434056e-06, -2.906629839932048135e-06, -2.891174254354167709e-06, -2.875655152518266637e-06, -2.860073297827402068e-06, -2.844429454051371428e-06, -2.828724385295646222e-06, -2.812958855970459557e-06, -2.797133630760250285e-06, -2.781249474592670910e-06, -2.765307152608114304e-06, -2.749307430128918138e-06, -2.733251072629106740e-06, -2.717138845703576465e-06, -2.700971515038112421e-06, -2.684749846378775849e-06, -2.668474605501863680e-06, -2.652146558183563577e-06, -2.635766470170120165e-06, -2.619335107147504898e-06, -2.602853234711754237e-06, -2.586321618339091833e-06, -2.569741023356006239e-06, -2.553112214909729275e-06, -2.536435957938605962e-06, -2.519713017142377650e-06, -2.502944156952997066e-06, -2.486130141505246865e-06, -2.469271734607292949e-06, -2.452369699711744741e-06, -2.435424799886390622e-06, -2.418437797785154436e-06, -2.401409455619453501e-06, -2.384340535129185187e-06, -2.367231797553921440e-06, -2.350084003604543773e-06, -2.332897913434455572e-06, -2.315674286611129420e-06, -2.298413882088063103e-06, -2.281117458176151167e-06, -2.263785772515834051e-06, -2.246419582048767803e-06, -2.229019642990194706e-06, -2.211586710800637137e-06, -2.194121540158659525e-06, -2.176624884932774387e-06, -2.159097498154223769e-06, -2.141540131989234688e-06, -2.123953537712024183e-06, -2.106338465677124217e-06, -2.088695665292612462e-06, -2.071025884993028851e-06, -2.053329872212256970e-06, -2.035608373356963218e-06, -2.017862133779817441e-06, -2.000091897752724998e-06, -1.982298408440581863e-06, -1.964482407874919200e-06, -1.946644636927417487e-06, -1.928785835284053380e-06, -1.910906741418868367e-06, -1.893008092568010602e-06, -1.875090624704293209e-06, -1.857155072511081739e-06, -1.839202169357048566e-06, -1.821232647270617898e-06, -1.803247236914603078e-06, -1.785246667560922219e-06, -1.767231667065877552e-06, -1.749202961844742955e-06, -1.731161276847284484e-06, -1.713107335532735218e-06, -1.695041859845541729e-06, -1.676965570190475725e-06, -1.658879185408613455e-06, -1.640783422753074155e-06, -1.622678997864840210e-06, -1.604566624748703761e-06, -1.586447015749716848e-06, -1.568320881529058390e-06, -1.550188931040788845e-06, -1.532051871508355421e-06, -1.513910408401046257e-06, -1.495765245411073946e-06, -1.477617084430297796e-06, -1.459466625527239170e-06, -1.441314566924590222e-06, -1.423161604976310333e-06, -1.405008434145023465e-06, -1.386855746979858294e-06, -1.368704234093967956e-06, -1.350554584142346890e-06, -1.332407483800186605e-06, -1.314263617740582408e-06, -1.296123668613115753e-06, -1.277988317022164265e-06, -1.259858241505384357e-06, -1.241734118512338464e-06, -1.223616622383669684e-06, -1.205506425329633937e-06, -1.187404197409560689e-06, -1.169310606510773263e-06, -1.151226318328355978e-06, -1.133151996344209143e-06, -1.115088301807099095e-06, -1.097035893712385744e-06, -1.078995428781933911e-06, -1.060967561444086931e-06, -1.042952943814242065e-06, -1.024952225674773075e-06, -1.006966054455933857e-06, -9.889950752164876488e-07, -9.710399306242885899e-07, -9.531012609375619718e-07, -9.351797039857770714e-07, -9.172758951508739360e-07, -8.993904673489714949e-07, -8.815240510116896362e-07, -8.636772740677657326e-07, -8.458507619251851054e-07, -8.280451374529334993e-07, -8.102610209630994881e-07, -7.924990301935440748e-07, -7.747597802898812302e-07, -7.570438837884476603e-07, -7.393519505987189316e-07, -7.216845879865676533e-07, -7.040424005568230687e-07, -6.864259902370403160e-07, -6.688359562603469520e-07, -6.512728951493209510e-07, -6.337374006993094491e-07, -6.162300639626009810e-07, -5.987514732319360781e-07, -5.813022140249769187e-07, -5.638828690685370577e-07, -5.464940182827447683e-07, -5.291362387658998937e-07, -5.118101047791142805e-07, -4.945161877309505189e-07, -4.772550561627735661e-07, -4.600272757338931010e-07, -4.428334092066732137e-07, -4.256740164323354455e-07, -4.085496543363808753e-07, -3.914608769043499073e-07, -3.744082351681478245e-07, -3.573922771917193967e-07, -3.404135480576487662e-07, -3.234725898534596961e-07, -3.065699416581685512e-07, -2.897061395289459117e-07, -2.728817164883716921e-07, -2.560972025110559375e-07, -2.393531245112056513e-07, -2.226500063296816017e-07, -2.059883687218756926e-07, -1.893687293449629056e-07, -1.727916027460974194e-07, -1.562575003503315910e-07, -1.397669304487320300e-07, -1.233203981865752686e-07, -1.069184055521343685e-07, -9.056145136487337267e-08, -7.425003126458912411e-08, -5.798463770031509434e-08, -4.176575991918963677e-08, -2.559388395598939245e-08, -9.469492622430668399e-09, 6.606934503293871912e-09, 2.263492108685763881e-08, 3.861399404755873835e-08, 5.454368356869616396e-08, 7.042352310701285809e-08, 8.625304940263784327e-08, 1.020318024882154903e-07, 1.177593256986449280e-07, 1.334351656798934611e-07, 1.490588723980747774e-07, 1.646299991483308832e-07, 1.801481025636315311e-07, 1.956127426229954159e-07, 2.110234826602816885e-07, 2.263798893720542066e-07, 2.416815328256779525e-07, 2.569279864674402257e-07, 2.721188271299872220e-07, 2.872536350401322477e-07, 3.023319938263174973e-07, 3.173534905255769825e-07, 3.323177155908737430e-07, 3.472242628981247673e-07, 3.620727297527363281e-07, 3.768627168964648437e-07, 3.915938285139325198e-07, 4.062656722386272016e-07, 4.208778591594652912e-07, 4.354300038264820086e-07, 4.499217242569753454e-07, 4.643526419408784774e-07, 4.787223818467419344e-07, 4.930305724266091220e-07, 5.072768456216916540e-07, 5.214608368671119962e-07, 5.355821850971194946e-07, 5.496405327495329579e-07, 5.636355257707482100e-07, 5.775668136198690699e-07, 5.914340492730585601e-07, 6.052368892278866205e-07, 6.189749935070865937e-07, 6.326480256624668235e-07, 6.462556527788077471e-07, 6.597975454771181019e-07, 6.732733779180476212e-07, 6.866828278053389050e-07, 7.000255763886074880e-07, 7.133013084664883557e-07, 7.265097123894373994e-07, 7.396504800620788626e-07, 7.527233069458815414e-07, 7.657278920615414879e-07, 7.786639379909242574e-07, 7.915311508792689934e-07, 8.043292404371007108e-07, 8.170579199416379583e-07, 8.297169062387358067e-07, 8.423059197439962027e-07, 8.548246844443194158e-07, 8.672729278987031082e-07, 8.796503812396296684e-07, 8.919567791734229186e-07, 9.041918599813188698e-07, 9.163553655197047967e-07, 9.284470412207550423e-07, 9.404666360923930070e-07, 9.524139027187146650e-07, 9.642885972596556806e-07, 9.760904794508198837e-07, 9.878193126033280750e-07, 9.994748636031009058e-07, 1.011056902910284379e-06, 1.022565204558676830e-06, 1.033999546154531647e-06, 1.045359708875537655e-06, 1.056645477469797381e-06, 1.067856640254224891e-06, 1.078992989113237127e-06, 1.090054319497168894e-06, 1.101040430420195088e-06, 1.111951124458769404e-06, 1.122786207749324007e-06, 1.133545489986163592e-06, 1.144228784419161036e-06, 1.154835907851344410e-06, 1.165366680636030409e-06, 1.175820926674377908e-06, 1.186198473412256058e-06, 1.196499151837448019e-06, 1.206722796476234031e-06, 1.216869245390409851e-06, 1.226938340173595605e-06, 1.236929925947745792e-06, 1.246843851359446908e-06, 1.256679968576194735e-06, 1.266438133282188186e-06, 1.276118204674541799e-06, 1.285720045458798578e-06, 1.295243521844606738e-06, 1.304688503541367438e-06, 1.314054863753402669e-06, 1.323342479175359467e-06, 1.332551229987350482e-06, 1.341680999849717200e-06, 1.350731675898045361e-06, 1.359703148737965878e-06, 1.368595312439533497e-06, 1.377408064531886890e-06, 1.386141305997600219e-06, 1.394794941266679788e-06, 1.403368878210943344e-06, 1.411863028137770879e-06, 1.420277305784052158e-06, 1.428611629309903215e-06, 1.436865920292337114e-06, 1.445040103718500175e-06, 1.453134107979307583e-06, 1.461147864862448800e-06, 1.469081309545711042e-06, 1.476934380589726345e-06, 1.484707019931127752e-06, 1.492399172875076366e-06, 1.500010788087952086e-06, 1.507541817589890617e-06, 1.514992216747244665e-06, 1.522361944264712453e-06, 1.529650962177716973e-06, 1.536859235844277645e-06, 1.543986733936964134e-06, 1.551033428434859284e-06, 1.557999294615083915e-06, 1.564884311044529570e-06, 1.571688459571383315e-06, 1.578411725316291705e-06, 1.585054096663782879e-06, 1.591615565253449794e-06, 1.598096125970853516e-06, 1.604495776938571776e-06, 1.610814519507071553e-06, 1.617052358245204730e-06, 1.623209300931077081e-06, 1.629285358542355880e-06, 1.635280545246839252e-06, 1.641194878392567062e-06, 1.647028378498249652e-06, 1.652781069243097523e-06, 1.658452977457013110e-06, 1.664044133110312463e-06, 1.669554569303669062e-06, 1.674984322257609125e-06, 1.680333431302315870e-06, 1.685601938866915823e-06, 1.690789890468927749e-06, 1.695897334703604861e-06, 1.700924323233021224e-06, 1.705870910775203687e-06, 1.710737155093222733e-06, 1.715523116983951931e-06, 1.720228860266907850e-06, 1.724854451773039368e-06, 1.729399961333226234e-06, 1.733865461766904901e-06, 1.738251028870519226e-06, 1.742556741405715379e-06, 1.746782681087769249e-06, 1.750928932573648788e-06, 1.754995583450096047e-06, 1.758982724221663890e-06, 1.762890448298634134e-06, 1.766718851984692578e-06, 1.770468034464832742e-06, 1.774138097792847941e-06, 1.777729146879045919e-06, 1.781241289477537427e-06, 1.784674636173838201e-06, 1.788029300372015870e-06, 1.791305398281974727e-06, 1.794503048906588655e-06, 1.797622374028855880e-06, 1.800663498198728450e-06, 1.803626548720206846e-06, 1.806511655638036901e-06, 1.809318951724489949e-06, 1.812048572466118616e-06, 1.814700656050261467e-06, 1.817275343351633842e-06, 1.819772777918817677e-06, 1.822193105960568159e-06, 1.824536476332133298e-06, 1.826803040521572015e-06, 1.828992952635823200e-06, 1.831106369386872188e-06, 1.833143450077816848e-06, 1.835104356588684232e-06, 1.836989253362483545e-06, 1.838798307390927067e-06, 1.840531688200234525e-06, 1.842189567836822466e-06, 1.843772120852997025e-06, 1.845279524292365900e-06, 1.846711957675503166e-06, 1.848069602985278878e-06, 1.849352644652328219e-06, 1.850561269540274585e-06, 1.851695666931093707e-06, 1.852756028510253302e-06, 1.853742548351831129e-06, 1.854655422903636853e-06, 1.855494850972260857e-06, 1.856261033707967834e-06, 1.856954174589718065e-06, 1.857574479409932049e-06, 1.858122156259344499e-06, 1.858597415511761980e-06, 1.859000469808722935e-06, 1.859331534044194970e-06, 1.859590825349184058e-06, 1.859778563076203977e-06, 1.859894968783864971e-06, 1.859940266221290034e-06, 1.859914681312496259e-06, 1.859818442140791858e-06, 1.859651778933095039e-06, 1.859414924044130277e-06, 1.859108111940732161e-06, 1.858731579185979827e-06, 1.858285564423347280e-06, 1.857770308360766894e-06, 1.857186053754750718e-06, 1.856533045394311251e-06, 1.855811530085010328e-06, 1.855021756632828017e-06, 1.854163975828136325e-06, 1.853238440429458194e-06, 1.852245405147374932e-06, 1.851185126628259792e-06, 1.850057863438030609e-06, 1.848863876045888253e-06, 1.847603426807989428e-06, 1.846276779951066965e-06, 1.844884201556096273e-06, 1.843425959541840666e-06, 1.841902323648411720e-06, 1.840313565420814182e-06, 1.838659958192409762e-06, 1.836941777068429433e-06, 1.835159298909378355e-06, 1.833312802314450549e-06, 1.831402567604927263e-06, 1.829428876807545267e-06, 1.827392013637822165e-06, 1.825292263483368362e-06, 1.823129913387220843e-06, 1.820905252031041216e-06, 1.818618569718422388e-06, 1.816270158358087878e-06, 1.813860311447118657e-06, 1.811389324054116464e-06, 1.808857492802424507e-06, 1.806265115853215178e-06, 1.803612492888676027e-06, 1.800899925095107009e-06, 1.798127715146042289e-06, 1.795296167185323141e-06, 1.792405586810187567e-06, 1.789456281054346580e-06, 1.786448558371005430e-06, 1.783382728615927176e-06, 1.780259103030455397e-06, 1.777077994224539015e-06, 1.773839716159736579e-06, 1.770544584132213137e-06, 1.767192914755772896e-06, 1.763785025944788119e-06, 1.760321236897220350e-06, 1.756801868077587220e-06, 1.753227241199924585e-06, 1.749597679210760532e-06, 1.745913506272093195e-06, 1.742175047744322612e-06, 1.738382630169228121e-06, 1.734536581252920761e-06, 1.730637229848794615e-06, 1.726684905940503992e-06, 1.722679940624890628e-06, 1.718622666094993477e-06, 1.714513415622949023e-06, 1.710352523543003818e-06, 1.706140325234456090e-06, 1.701877157104647321e-06, 1.697563356571941752e-06, 1.693199262048693400e-06, 1.688785212924266224e-06, 1.684321549548012362e-06, 1.679808613212269424e-06, 1.675246746135400994e-06, 1.670636291444820386e-06, 1.665977593160000232e-06, 1.661270996175566966e-06, 1.656516846244315702e-06, 1.651715489960264064e-06, 1.646867274741803649e-06, 1.641972548814752373e-06, 1.637031661195450873e-06, 1.632044961673928574e-06, 1.627012800797031641e-06, 1.621935529851539068e-06, 1.616813500847410698e-06, 1.611647066500915598e-06, 1.606436580217884097e-06, 1.601182396076924254e-06, 1.595884868812653995e-06, 1.590544353798986395e-06, 1.585161207032436781e-06, 1.579735785115390021e-06, 1.574268445239487023e-06, 1.568759545168931633e-06, 1.563209443223917578e-06, 1.557618498263994651e-06, 1.551987069671508369e-06, 1.546315517335077958e-06, 1.540604201633058671e-06, 1.534853483417025704e-06, 1.529063723995368018e-06, 1.523235285116787496e-06, 1.517368528953922624e-06, 1.511463818086986567e-06, 1.505521515487367128e-06, 1.499541984501366256e-06, 1.493525588833851676e-06, 1.487472692532070088e-06, 1.481383659969318915e-06, 1.475258855828897779e-06, 1.469098645087807142e-06, 1.462903393000733666e-06, 1.456673465083877811e-06, 1.450409227098982183e-06, 1.444111045037209321e-06, 1.437779285103261100e-06, 1.431414313699396487e-06, 1.425016497409481491e-06, 1.418586202983189668e-06, 1.412123797320145874e-06, 1.405629647454077433e-06, 1.399104120537141064e-06, 1.392547583824214865e-06, 1.385960404657140959e-06, 1.379342950449197264e-06, 1.372695588669447288e-06, 1.366018686827180133e-06, 1.359312612456507625e-06, 1.352577733100782509e-06, 1.345814416297297854e-06, 1.339023029561846706e-06, 1.332203940373416410e-06, 1.325357516158880610e-06, 1.318484124277866368e-06, 1.311584132007448916e-06, 1.304657906527129102e-06, 1.297705814903630207e-06, 1.290728224075977460e-06, 1.283725500840376806e-06, 1.276698011835373408e-06, 1.269646123526945346e-06, 1.262570202193635226e-06, 1.255470613911754846e-06, 1.248347724540703357e-06, 1.241201899708171931e-06, 1.234033504795612699e-06, 1.226842904923644581e-06, 1.219630464937454044e-06, 1.212396549392398077e-06, 1.205141522539582188e-06, 1.197865748311391811e-06, 1.190569590307297301e-06, 1.183253411779588210e-06, 1.175917575619095695e-06, 1.168562444341149138e-06, 1.161188380071437472e-06, 1.153795744531934032e-06, 1.146384899027068323e-06, 1.138956204429668021e-06, 1.131510021167209937e-06, 1.124046709207991782e-06, 1.116566628047375501e-06, 1.109070136694115953e-06, 1.101557593656832310e-06, 1.094029356930335888e-06, 1.086485783982252532e-06, 1.078927231739488299e-06, 1.071354056574987581e-06, 1.063766614294275447e-06, 1.056165260122355734e-06, 1.048550348690486747e-06, 1.040922234023065379e-06, 1.033281269524540025e-06, 1.025627807966532718e-06, 1.017962201474750990e-06, 1.010284801516361359e-06, 1.002595958886949474e-06, 9.948960236980155736e-07, 9.871853453641984810e-07, 9.794642725907486194e-07, 9.717331533608866814e-07, 9.639923349235500270e-07, 9.562421637807930679e-07, 9.484829856756430390e-07, 9.407151455797571401e-07, 9.329389876812929181e-07, 9.251548553727073925e-07, 9.173630912387782102e-07, 9.095640370446830324e-07, 9.017580337240286304e-07, 8.939454213670242934e-07, 8.861265392087654574e-07, 8.783017256174526414e-07, 8.704713180828340007e-07, 8.626356532047146893e-07, 8.547950666814085188e-07, 8.469498932983733174e-07, 8.391004669168073252e-07, 8.312471204624477132e-07, 8.233901859144520046e-07, 8.155299942941949002e-07, 8.076668756542601319e-07, 7.998011590675244315e-07, 7.919331726161567964e-07, 7.840632433808785349e-07, 7.761916974302901224e-07, 7.683188598101073175e-07, 7.604450545326436607e-07, 7.525706045661643284e-07, 7.446958318246865861e-07, 7.368210571573467716e-07, 7.289466003383487673e-07, 7.210727800566312566e-07, 7.131999139057978788e-07, 7.053283183739326108e-07, 6.974583088338631233e-07, 6.895901995329825153e-07, 6.817243035836685244e-07, 6.738609329534398396e-07, 6.660003984551939400e-07, 6.581430097378136062e-07, 6.502890752765583893e-07, 6.424389023635504203e-07, 6.345927970985985012e-07, 6.267510643798419914e-07, 6.189140078944566326e-07, 6.110819301097352919e-07, 6.032551322639600172e-07, 5.954339143573428078e-07, 5.876185751433930787e-07, 5.798094121198454076e-07, 5.720067215201856060e-07, 5.642107983048827636e-07, 5.564219361529011306e-07, 5.486404274530960637e-07, 5.408665632960587920e-07, 5.331006334655316329e-07, 5.253429264304156008e-07, 5.175937293364890715e-07, 5.098533279984055447e-07, 5.021220068916115732e-07, 4.944000491445033434e-07, 4.866877365306805596e-07, 4.789853494610943419e-07, 4.712931669764286420e-07, 4.636114667395562497e-07, 4.559405250279441367e-07, 4.482806167263071933e-07, 4.406320153193431731e-07, 4.329949928843925707e-07, 4.253698200843288388e-07, 4.177567661603849720e-07, 4.101560989252162009e-07, 4.025680847560502489e-07, 3.949929885877513494e-07, 3.874310739061089395e-07, 3.798826027411924746e-07, 3.723478356606713030e-07, 3.648270317633791743e-07, 3.573204486729592691e-07, 3.498283425314283362e-07, 3.423509679929888528e-07, 3.348885782177328695e-07, 3.274414248657766778e-07, 3.200097580909998072e-07, 3.125938265353537580e-07, 3.051938773228941246e-07, 2.978101560540912871e-07, 2.904429068000295061e-07, 2.830923720970535687e-07, 2.757587929409955704e-07, 2.684424087819899625e-07, 2.611434575190375053e-07, 2.538621754946526033e-07, 2.465987974898900564e-07, 2.393535567191647124e-07, 2.321266848251428529e-07, 2.249184118740239281e-07, 2.177289663506049490e-07, 2.105585751534286032e-07, 2.034074635903109209e-07, 1.962758553736544302e-07, 1.891639726158516527e-07, 1.820720358250875531e-07, 1.750002639007453113e-07, 1.679488741293799782e-07, 1.609180821804174272e-07, 1.539081021021311335e-07, 1.469191463175073560e-07, 1.399514256205530000e-07, 1.330051491721930136e-07, 1.260805244967435535e-07, 1.191777574781080271e-07, 1.122970523562509863e-07, 1.054386117235922952e-07, 9.860263652164807549e-08, 9.178932603774776547e-08, 8.499887790167887698e-08, 7.823148808253934152e-08, 7.148735088567252159e-08, 6.476665894955666743e-08, 5.806960324293555326e-08, 5.139637306203214909e-08, 4.474715602768161280e-08, 3.812213808267680792e-08, 3.152150348919307871e-08, 2.494543482616859222e-08, 1.839411298692410962e-08, 1.186771717686317095e-08, 5.366424911096248732e-09, -1.109587987697465870e-09, -7.560147391483507433e-09, -1.398508086884859499e-08, -2.038421768689729432e-08, -2.675738881322390898e-08, -3.310442691767998166e-08, -3.942516637406091046e-08, -4.571944326183737194e-08, -5.198709536765164785e-08, -5.822796218673526705e-08, -6.444188492440100781e-08, -7.062870649730131077e-08, -7.678827153479307405e-08, -8.292042637988419269e-08, -8.902501909056209675e-08, -9.510189944058539628e-08, -1.011509189205320183e-07, -1.071719307385870668e-07, -1.131647898214326041e-07, -1.191293528147321140e-07, -1.250654780839818629e-07, -1.309730257148403556e-07, -1.368518575136786286e-07, -1.427018370080512539e-07, -1.485228294468237773e-07, -1.543147018004943529e-07, -1.600773227614306211e-07, -1.658105627437721939e-07, -1.715142938835196199e-07, -1.771883900385460574e-07, -1.828327267882717492e-07, -1.884471814335248707e-07, -1.940316329963300631e-07, -1.995859622193245628e-07, -2.051100515655417583e-07, -2.106037852176833236e-07, -2.160670490776346633e-07, -2.214997307657343459e-07, -2.269017196201388560e-07, -2.322729066958079014e-07, -2.376131847638299107e-07, -2.429224483102614389e-07, -2.482005935351996664e-07, -2.534475183516132026e-07, -2.586631223842403076e-07, -2.638473069682806232e-07, -2.689999751480047688e-07, -2.741210316754420219e-07, -2.792103830088809119e-07, -2.842679373112990321e-07, -2.892936044488330865e-07, -2.942872959890387138e-07, -2.992489251990896425e-07, -3.041784070440271379e-07, -3.090756581848196620e-07, -3.139405969764790721e-07, -3.187731434659757547e-07, -3.235732193900873212e-07, -3.283407481733080241e-07, -3.330756549255922618e-07, -3.377778664400150202e-07, -3.424473111904856254e-07, -3.470839193292531253e-07, -3.516876226843515323e-07, -3.562583547571017122e-07, -3.607960507194287238e-07, -3.653006474112486703e-07, -3.697720833375272181e-07, -3.742102986656445303e-07, -3.786152352223178902e-07, -3.829868364907365592e-07, -3.873250476074805891e-07, -3.916298153595313773e-07, -3.959010881809312345e-07, -4.001388161497651409e-07, -4.043429509847021521e-07, -4.085134460417228874e-07, -4.126502563107798375e-07, -4.167533384121798987e-07, -4.208226505931294843e-07, -4.248581527241984797e-07, -4.288598062955290288e-07, -4.328275744131875218e-07, -4.367614217954549615e-07, -4.406613147688479203e-07, -4.445272212642985275e-07, -4.483591108132524530e-07, -4.521569545435005522e-07, -4.559207251752838384e-07, -4.596503970169999255e-07, -4.633459459611019058e-07, -4.670073494798025173e-07, -4.706345866208637541e-07, -4.742276380030641816e-07, -4.777864858119639833e-07, -4.813111137952719557e-07, -4.848015072584004906e-07, -4.882576530598332052e-07, -4.916795396065432352e-07, -4.950671568492623433e-07, -4.984204962776691377e-07, -5.017395509156569100e-07, -5.050243153164489027e-07, -5.082747855576638123e-07, -5.114909592364076574e-07, -5.146728354642226033e-07, -5.178204148619590246e-07, -5.209336995547240125e-07, -5.240126931666630166e-07, -5.270574008157925203e-07, -5.300678291086838502e-07, -5.330439861350935170e-07, -5.359858814626552831e-07, -5.388935261314193413e-07, -5.417669326483655531e-07, -5.446061149819549094e-07, -5.474110885564199985e-07, -5.501818702462988915e-07, -5.529184783706282014e-07, -5.556209326873165612e-07, -5.582892543873255075e-07, -5.609234660889470316e-07, -5.635235918318139980e-07, -5.660896570711497438e-07, -5.686216886716872285e-07, -5.711197149017479566e-07, -5.735837654272402198e-07, -5.760138713054845441e-07, -5.784100649791428990e-07, -5.807723802701020609e-07, -5.831008523731615234e-07, -5.853955178498308869e-07, -5.876564146220990842e-07, -5.898835819659789306e-07, -5.920770605051929170e-07, -5.942368922048047924e-07, -5.963631203646429885e-07, -5.984557896129335790e-07, -6.005149458996603880e-07, -6.025406364900334136e-07, -6.045329099578567711e-07, -6.064918161789325301e-07, -6.084174063242608401e-07, -6.103097328534343434e-07, -6.121688495077601625e-07, -6.139948113035335048e-07, -6.157876745251456738e-07, -6.175474967182699005e-07, -6.192743366829144026e-07, -6.209682544664493978e-07, -6.226293113566702211e-07, -6.242575698747648345e-07, -6.258530937682646064e-07, -6.274159480039851392e-07, -6.289461987608961579e-07, -6.304439134229436470e-07, -6.319091605719112681e-07, -6.333420099801796053e-07, -6.347425326035377139e-07, -6.361108005738603086e-07, -6.374468871917945875e-07, -6.387508669194587016e-07, -6.400228153730692861e-07, -6.412628093155326752e-07, -6.424709266490605745e-07, -6.436472464077067479e-07, -6.447918487498438828e-07, -6.459048149507109705e-07, -6.469862273948525844e-07, -6.480361695686054861e-07, -6.490547260524330827e-07, -6.500419825134038805e-07, -6.509980256974859205e-07, -6.519229434219116229e-07, -6.528168245674840814e-07, -6.536797590709065443e-07, -6.545118379169698064e-07, -6.553131531308810549e-07, -6.560837977704204503e-07, -6.568238659181500113e-07, -6.575334526736343586e-07, -6.582126541455283681e-07, -6.588615674437405283e-07, -6.594802906715733211e-07, -6.600689229177529599e-07, -6.606275642485439360e-07, -6.611563156998070262e-07, -6.616552792689896432e-07, -6.621245579071653142e-07, -6.625642555110557949e-07, -6.629744769149445524e-07, -6.633553278827069259e-07, -6.637069150997037036e-07, -6.640293461647228753e-07, -6.643227295818859147e-07, -6.645871747525740728e-07, -6.648227919672475223e-07, -6.650296923973737689e-07, -6.652079880872329250e-07, -6.653577919457653352e-07, -6.654792177383913559e-07, -6.655723800788414043e-07, -6.656373944209342340e-07, -6.656743770503450444e-07, -6.656834450763978377e-07, -6.656647164238303531e-07, -6.656183098245145309e-07, -6.655443448092293880e-07, -6.654429416993693059e-07, -6.653142215986493552e-07, -6.651583063848331716e-07, -6.649753187014127628e-07, -6.647653819493347970e-07, -6.645286202786437755e-07, -6.642651585801598285e-07, -6.639751224771590509e-07, -6.636586383170249347e-07, -6.633158331628918589e-07, -6.629468347853220381e-07, -6.625517716539106850e-07, -6.621307729289247362e-07, -6.616839684529443312e-07, -6.612114887424754921e-07, -6.607134649795909672e-07, -6.601900290035069119e-07, -6.596413133022496726e-07, -6.590674510042068450e-07, -6.584685758697704467e-07, -6.578448222829255629e-07, -6.571963252428704370e-07, -6.565232203555872231e-07, -6.558256438254704409e-07, -6.551037324469107509e-07, -6.543576235958847644e-07, -6.535874552215767226e-07, -6.527933658379521071e-07, -6.519754945153670375e-07, -6.511339808721749161e-07, -6.502689650663230137e-07, -6.493805877869431270e-07, -6.484689902459815160e-07, -6.475343141697855383e-07, -6.465767017907242689e-07, -6.455962958388107099e-07, -6.445932395333010231e-07, -6.435676765743410912e-07, -6.425197511345766565e-07, -6.414496078507878116e-07, -6.403573918155294198e-07, -6.392432485687807464e-07, -6.381073240895785732e-07, -6.369497647876883236e-07, -6.357707174952635407e-07, -6.345703294585043072e-07, -6.333487483293439343e-07, -6.321061221571345924e-07, -6.308425993803343179e-07, -6.295583288182100079e-07, -6.282534596625593672e-07, -6.269281414694096676e-07, -6.255825241507612945e-07, -6.242167579663261053e-07, -6.228309935152735161e-07, -6.214253817279935308e-07, -6.200000738578615685e-07, -6.185552214730401376e-07, -6.170909764482480049e-07, -6.156074909565835750e-07, -6.141049174613392696e-07, -6.125834087078333771e-07, -6.110431177152567248e-07, -6.094841977685253875e-07, -6.079068024101687580e-07, -6.063110854321931608e-07, -6.046972008679991460e-07, -6.030653029842919010e-07, -6.014155462730126265e-07, -5.997480854432827240e-07, -5.980630754133756172e-07, -5.963606713026772446e-07, -5.946410284236963157e-07, -5.929043022740692727e-07, -5.911506485285904517e-07, -5.893802230312536785e-07, -5.875931817873216054e-07, -5.857896809554094467e-07, -5.839698768395748561e-07, -5.821339258814451787e-07, -5.802819846523548677e-07, -5.784142098454930654e-07, -5.765307582680966067e-07, -5.746317868336248108e-07, -5.727174525540065886e-07, -5.707879125318483750e-07, -5.688433239527013537e-07, -5.668838440773494331e-07, -5.649096302341043178e-07, -5.629208398111154021e-07, -5.609176302487439321e-07, -5.589001590319020166e-07, -5.568685836824453180e-07, -5.548230617516006840e-07, -5.527637508123920844e-07, -5.506908084520898423e-07, -5.486043922647121685e-07, -5.465046598435188619e-07, -5.443917687735453489e-07, -5.422658766241581112e-07, -5.401271409416394416e-07, -5.379757192417755879e-07, -5.358117690025170011e-07, -5.336354476565977132e-07, -5.314469125842605953e-07, -5.292463211059292518e-07, -5.270338304749645121e-07, -5.248095978704105467e-07, -5.225737803897913811e-07, -5.203265350419327153e-07, -5.180680187398060833e-07, -5.157983882933832835e-07, -5.135178004025555005e-07, -5.112264116500417339e-07, -5.089243784943540835e-07, -5.066118572627940576e-07, -5.042890041444465515e-07, -5.019559751832464596e-07, -4.996129262710179701e-07, -4.972600131405970812e-07, -4.948973913589726458e-07, -4.925252163204334515e-07, -4.901436432397649579e-07, -4.877528271454765269e-07, -4.853529228730506761e-07, -4.829440850582201782e-07, -4.805264681303101704e-07, -4.781002263055659699e-07, -4.756655135805432525e-07, -4.732224837254955305e-07, -4.707712902778706874e-07, -4.683120865357223318e-07, -4.658450255512726115e-07, -4.633702601244278591e-07, -4.608879427963659167e-07, -4.583982258431194385e-07, -4.559012612692587716e-07, -4.533972008015285152e-07, -4.508861958825846646e-07, -4.483683976647296916e-07, -4.458439570036682165e-07, -4.433130244523581853e-07, -4.407757502548381162e-07, -4.382322843400862702e-07, -4.356827763159874467e-07, -4.331273754632487990e-07, -4.305662307293776418e-07, -4.279994907227414739e-07, -4.254273037066071954e-07, -4.228498175932105538e-07, -4.202671799379471918e-07, -4.176795379334659692e-07, -4.150870384039331731e-07, -4.124898277992400835e-07, -4.098880521892947120e-07, -4.072818572583052825e-07, -4.046713882991790140e-07, -4.020567902078620350e-07, -3.994382074777995756e-07, -3.968157841943798026e-07, -3.941896640294461046e-07, -3.915599902358122358e-07, -3.889269056418540110e-07, -3.862905526461347224e-07, -3.836510732120467033e-07, -3.810086088624933911e-07, -3.783633006746363987e-07, -3.757152892746383522e-07, -3.730647148324842901e-07, -3.704117170568417085e-07, -3.677564351899312473e-07, -3.650990080024438572e-07, -3.624395737885219175e-07, -3.597782703607358018e-07, -3.571152350451418639e-07, -3.544506046763816642e-07, -3.517845155927761135e-07, -3.491171036315140613e-07, -3.464485041238147316e-07, -3.437788518901955621e-07, -3.411082812357694237e-07, -3.384369259455416292e-07, -3.357649192797817984e-07, -3.330923939694333626e-07, -3.304194822115422868e-07, -3.277463156647441843e-07, -3.250730254448178699e-07, -3.223997421202230842e-07, -3.197265957077266280e-07, -3.170537156680142013e-07, -3.143812309014500513e-07, -3.117092697437258165e-07, -3.090379599617033952e-07, -3.063674287491919569e-07, -3.036978027228219386e-07, -3.010292079179068657e-07, -2.983617697844422327e-07, -2.956956131830241813e-07, -2.930308623809219670e-07, -2.903676410481240094e-07, -2.877060722534160239e-07, -2.850462784605828731e-07, -2.823883815245724602e-07, -2.797325026877001216e-07, -2.770787625759848387e-07, -2.744272811954280105e-07, -2.717781779283535302e-07, -2.691315715298622639e-07, -2.664875801242488895e-07, -2.638463212014596053e-07, -2.612079116136922450e-07, -2.585724675718838971e-07, -2.559401046423967298e-07, -2.533109377436360530e-07, -2.506850811427683831e-07, -2.480626484524263263e-07, -2.454437526275566631e-07, -2.428285059621801822e-07, -2.402170200863171102e-07, -2.376094059628691832e-07, -2.350057738845927478e-07, -2.324062334710691629e-07, -2.298108936657649861e-07, -2.272198627331329775e-07, -2.246332482557178142e-07, -2.220511571313259416e-07, -2.194736955702534463e-07, -2.169009690925126849e-07, -2.143330825251493867e-07, -2.117701399996011547e-07, -2.092122449490600172e-07, -2.066595001059089350e-07, -2.041120074991606654e-07, -2.015698684520349831e-07, -1.990331835794390744e-07, -1.965020527856323478e-07, -1.939765752618286413e-07, -1.914568494839053434e-07, -1.889429732100841105e-07, -1.864350434787728651e-07, -1.839331566063013332e-07, -1.814374081848429011e-07, -1.789478930802844076e-07, -1.764647054301375457e-07, -1.739879386415844932e-07, -1.715176853894679824e-07, -1.690540376143371427e-07, -1.665970865206143887e-07, -1.641469225747214126e-07, -1.617036355032457818e-07, -1.592673142912421610e-07, -1.568380471804777895e-07, -1.544159216677330419e-07, -1.520010245032329083e-07, -1.495934416889795042e-07, -1.471932584772696570e-07, -1.448005593691486737e-07, -1.424154281129690348e-07, -1.400379477029233071e-07, -1.376682003777339423e-07, -1.353062676192383351e-07, -1.329522301511576340e-07, -1.306061679378048843e-07, -1.282681601828891757e-07, -1.259382853283204531e-07, -1.236166210530928087e-07, -1.213032442722190741e-07, -1.189982311356551542e-07, -1.167016570273045652e-07, -1.144135965640631401e-07, -1.121341235948722840e-07, -1.098633111998510967e-07, -1.076012316894790513e-07, -1.053479566037679408e-07, -1.031035567115224578e-07, -1.008681020095959434e-07, -9.864166172223154154e-08, -9.642430430044873533e-08, -9.421609742141590724e-08, -9.201710798790867487e-08, -8.982740212780445048e-08, -8.764704519358142102e-08, -8.547610176190389902e-08, -8.331463563324712669e-08, -8.116270983151930072e-08, -7.902038660375401991e-08, -7.688772741984876373e-08, -7.476479297230374149e-08, -7.265164317604658298e-08, -7.054833716829560884e-08, -6.845493330842018921e-08, -6.637148917788015443e-08, -6.429806158015576924e-08, -6.223470654081328515e-08, -6.018147930747472525e-08, -5.813843434996179371e-08, -5.610562536037877258e-08, -5.408310525329052440e-08, -5.207092616588070870e-08, -5.006913945825099641e-08, -4.807779571362271658e-08, -4.609694473871045755e-08, -4.412663556404464086e-08, -4.216691644433219185e-08, -4.021783485893574861e-08, -3.827943751230757436e-08, -3.635177033446494818e-08, -3.443487848157963368e-08, -3.252880633652612113e-08, -3.063359750946706619e-08, -2.874929483855499710e-08, -2.687594039058986707e-08, -2.501357546171638738e-08, -2.316224057824240677e-08, -2.132197549736501061e-08, -1.949281920806151351e-08, -1.767480993192207946e-08, -1.586798512407024487e-08, -1.407238147406689458e-08, -1.228803490694432861e-08, -1.051498058414832826e-08, -8.753252904642081593e-09, -7.002885505952706649e-09, -5.263911265302983461e-09, -3.536362300736567822e-09, 0.0 /* Need a final zero coefficient */ } } ; /* mid_qual_coeffs */ bplaum-gavl-b9385e3/gavl/libsamplerate/samplerate.c000066400000000000000000000262731513252040200223470ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ /* Taken from libsamplerate, original copyright below */ /* ** Copyright (C) 2002-2008 Erik de Castro Lopo ** ** This program is free software; you can redistribute it and/or modify ** it under the terms of the GNU General Public License as published by ** the Free Software Foundation; either version 2 of the License, or ** (at your option) any later version. ** ** This program is distributed in the hope that it will be useful, ** but WITHOUT ANY WARRANTY; without even the implied warranty of ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ** GNU General Public License for more details. ** ** You should have received a copy of the GNU General Public License ** along with this program; if not, write to the Free Software ** Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA. */ /* ** This code is part of Secret Rabibt Code aka libsamplerate. A commercial ** use license for this code is available, please see: ** http://www.mega-nerd.com/SRC/procedure.html */ #include #include #include #include "config.h" #include "samplerate.h" #include "float_cast.h" #include "common.h" static int psrc_set_converter (SRC_PRIVATE *psrc, int converter_type, int d) ; static inline int is_bad_src_ratio (double ratio) { return (ratio < (1.0 / SRC_MAX_RATIO) || ratio > (1.0 * SRC_MAX_RATIO)) ; } /* is_bad_src_ratio */ SRC_STATE * gavl_src_new (int converter_type, int channels, int *error, int d) { SRC_PRIVATE *psrc ; if (error) *error = SRC_ERR_NO_ERROR ; if (channels < 1) { if (error) *error = SRC_ERR_BAD_CHANNEL_COUNT ; return NULL ; } ; if ((psrc = calloc (1, sizeof (*psrc))) == NULL) { if (error) *error = SRC_ERR_MALLOC_FAILED ; return NULL ; } ; psrc->channels = channels ; psrc->mode = SRC_MODE_PROCESS ; if (psrc_set_converter (psrc, converter_type, d) != SRC_ERR_NO_ERROR) { if (error) *error = SRC_ERR_BAD_CONVERTER ; free (psrc) ; psrc = NULL ; } ; gavl_src_reset ((SRC_STATE*) psrc) ; return (SRC_STATE*) psrc ; } /* src_new */ SRC_STATE* gavl_src_callback_new (src_callback_t func, int converter_type, int channels, int *error, void* cb_data, int d) { SRC_STATE *src_state ; if (func == NULL) { if (error) *error = SRC_ERR_BAD_CALLBACK ; return NULL ; } ; if (error != NULL) *error = 0 ; src_state = gavl_src_new (converter_type, channels, error, d) ; gavl_src_reset (src_state) ; ((SRC_PRIVATE*) src_state)->mode = SRC_MODE_CALLBACK ; ((SRC_PRIVATE*) src_state)->callback_func = func ; ((SRC_PRIVATE*) src_state)->user_callback_data = cb_data ; return src_state ; } /* src_callback_new */ SRC_STATE * gavl_src_delete (SRC_STATE *state) { SRC_PRIVATE *psrc ; psrc = (SRC_PRIVATE*) state ; if (psrc) { if (psrc->private_data) free (psrc->private_data) ; memset (psrc, 0, sizeof (SRC_PRIVATE)) ; free (psrc) ; } ; return NULL ; } /* src_state */ int gavl_src_process (SRC_STATE *state, SRC_DATA *data) { SRC_PRIVATE *psrc ; int error ; psrc = (SRC_PRIVATE*) state ; if (psrc == NULL) return SRC_ERR_BAD_STATE ; if (psrc->vari_process == NULL || psrc->const_process == NULL) return SRC_ERR_BAD_PROC_PTR ; if (psrc->mode != SRC_MODE_PROCESS) return SRC_ERR_BAD_MODE ; /* Check for valid SRC_DATA first. */ if (data == NULL) return SRC_ERR_BAD_DATA ; /* Check src_ratio is in range. */ if (is_bad_src_ratio (data->src_ratio)) return SRC_ERR_BAD_SRC_RATIO ; if (data->input_frames < 0) data->input_frames = 0 ; if (data->output_frames < 0) data->output_frames = 0 ; /* Set the input and output counts to zero. */ data->input_frames_used = 0 ; data->output_frames_gen = 0 ; /* Special case for when last_ratio has not been set. */ if (psrc->last_ratio < (1.0 / SRC_MAX_RATIO)) psrc->last_ratio = data->src_ratio ; /* Now process. */ if (fabs (psrc->last_ratio - data->src_ratio) < 1e-15) error = psrc->const_process (psrc, data) ; else error = psrc->vari_process (psrc, data) ; return error ; } /* src_process */ /*========================================================================== */ int gavl_src_set_ratio (SRC_STATE *state, double new_ratio) { SRC_PRIVATE *psrc ; psrc = (SRC_PRIVATE*) state ; if (psrc == NULL) return SRC_ERR_BAD_STATE ; if (psrc->vari_process == NULL || psrc->const_process == NULL) return SRC_ERR_BAD_PROC_PTR ; if (is_bad_src_ratio (new_ratio)) return SRC_ERR_BAD_SRC_RATIO ; psrc->last_ratio = new_ratio ; return SRC_ERR_NO_ERROR ; } /* src_set_ratio */ int gavl_src_reset (SRC_STATE *state) { SRC_PRIVATE *psrc ; if ((psrc = (SRC_PRIVATE*) state) == NULL) return SRC_ERR_BAD_STATE ; if (psrc->reset != NULL) psrc->reset (psrc) ; psrc->last_position = 0.0 ; psrc->last_ratio = 0.0 ; psrc->saved_data_d = NULL ; psrc->saved_data_f = NULL ; psrc->saved_frames = 0 ; psrc->error = SRC_ERR_NO_ERROR ; return SRC_ERR_NO_ERROR ; } /* src_reset */ /*============================================================================== ** Control functions. */ const char * gavl_src_get_name (int converter_type) { const char *desc ; if ((desc = sinc_get_name (converter_type)) != NULL) return desc ; if ((desc = zoh_get_name (converter_type)) != NULL) return desc ; if ((desc = linear_get_name (converter_type)) != NULL) return desc ; return NULL ; } /* src_get_name */ const char * gavl_src_get_description (int converter_type) { const char *desc ; if ((desc = sinc_get_description (converter_type)) != NULL) return desc ; if ((desc = zoh_get_description (converter_type)) != NULL) return desc ; if ((desc = linear_get_description (converter_type)) != NULL) return desc ; return NULL ; } /* src_get_description */ const char * gavl_src_get_version (void) { return PACKAGE "-" VERSION " (c) 2002-2008 Erik de Castro Lopo" ; } /* src_get_version */ int gavl_src_is_valid_ratio (double ratio) { if (is_bad_src_ratio (ratio)) return SRC_FALSE ; return SRC_TRUE ; } /* src_is_valid_ratio */ /*============================================================================== ** Error reporting functions. */ int gavl_src_error (SRC_STATE *state) { if (state) return ((SRC_PRIVATE*) state)->error ; return SRC_ERR_NO_ERROR ; } /* src_error */ const char* gavl_src_strerror (int error) { switch (error) { case SRC_ERR_NO_ERROR : return "No error." ; case SRC_ERR_MALLOC_FAILED : return "Malloc failed." ; case SRC_ERR_BAD_STATE : return "SRC_STATE pointer is NULL." ; case SRC_ERR_BAD_DATA : return "SRC_DATA pointer is NULL." ; case SRC_ERR_BAD_DATA_PTR : return "SRC_DATA->data_out is NULL." ; case SRC_ERR_NO_PRIVATE : return "Internal error. No private data." ; case SRC_ERR_BAD_SRC_RATIO : return "SRC ratio outside [1/12, 12] range." ; case SRC_ERR_BAD_SINC_STATE : return "src_process() called without reset after end_of_input." ; case SRC_ERR_BAD_PROC_PTR : return "Internal error. No process pointer." ; case SRC_ERR_SHIFT_BITS : return "Internal error. SHIFT_BITS too large." ; case SRC_ERR_FILTER_LEN : return "Internal error. Filter length too large." ; case SRC_ERR_BAD_CONVERTER : return "Bad converter number." ; case SRC_ERR_BAD_CHANNEL_COUNT : return "Channel count must be >= 1." ; case SRC_ERR_SINC_BAD_BUFFER_LEN : return "Internal error. Bad buffer length. Please report this." ; case SRC_ERR_SIZE_INCOMPATIBILITY : return "Internal error. Input data / internal buffer size difference. Please report this." ; case SRC_ERR_BAD_PRIV_PTR : return "Internal error. Private pointer is NULL. Please report this." ; case SRC_ERR_DATA_OVERLAP : return "Input and output data arrays overlap." ; case SRC_ERR_BAD_CALLBACK : return "Supplied callback function pointer is NULL." ; case SRC_ERR_BAD_MODE : return "Calling mode differs from initialisation mode (ie process v callback)." ; case SRC_ERR_NULL_CALLBACK : return "Callback function pointer is NULL in src_callback_read ()." ; case SRC_ERR_NO_VARIABLE_RATIO : return "This converter only allows constant conversion ratios." ; case SRC_ERR_MAX_ERROR : return "Placeholder. No error defined for this error number." ; default : break ; } return NULL ; } /* src_strerror */ /*============================================================================== ** Simple interface for performing a single conversion from input buffer to ** output buffer at a fixed conversion ratio. */ #if 0 void src_short_to_float_array (const short *in, float *out, int len) { while (len) { len -- ; out [len] = (float) (in [len] / (1.0 * 0x8000)) ; } ; return ; } /* src_short_to_float_array */ void src_float_to_short_array (const float *in, short *out, int len) { double scaled_value ; while (len) { len -- ; scaled_value = in [len] * (8.0 * 0x10000000) ; if (CPU_CLIPS_POSITIVE == 0 && scaled_value >= (1.0 * 0x7FFFFFFF)) { out [len] = 32767 ; continue ; } ; if (CPU_CLIPS_NEGATIVE == 0 && scaled_value <= (-8.0 * 0x10000000)) { out [len] = -32768 ; continue ; } ; out [len] = (short) (lrint (scaled_value) >> 16) ; } ; } /* src_float_to_short_array */ void src_int_to_float_array (const int *in, float *out, int len) { while (len) { len -- ; out [len] = (float) (in [len] / (8.0 * 0x10000000)) ; } ; return ; } /* src_int_to_float_array */ void src_float_to_int_array (const float *in, int *out, int len) { double scaled_value ; while (len) { len -- ; scaled_value = in [len] * (8.0 * 0x10000000) ; if (CPU_CLIPS_POSITIVE == 0 && scaled_value >= (1.0 * 0x7FFFFFFF)) { out [len] = 0x7fffffff ; continue ; } ; if (CPU_CLIPS_NEGATIVE == 0 && scaled_value <= (-8.0 * 0x10000000)) { out [len] = -1 - 0x7fffffff ; continue ; } ; out [len] = lrint (scaled_value) ; } ; } /* src_float_to_int_array */ #endif /*============================================================================== ** Private functions. */ static int psrc_set_converter (SRC_PRIVATE *psrc, int converter_type, int d) { if (gavl_sinc_set_converter (psrc, converter_type, d) == SRC_ERR_NO_ERROR) return SRC_ERR_NO_ERROR ; if (gavl_zoh_set_converter (psrc, converter_type, d) == SRC_ERR_NO_ERROR) return SRC_ERR_NO_ERROR ; if (gavl_linear_set_converter (psrc, converter_type, d) == SRC_ERR_NO_ERROR) return SRC_ERR_NO_ERROR ; return SRC_ERR_BAD_CONVERTER ; } /* psrc_set_converter */ bplaum-gavl-b9385e3/gavl/libsamplerate/src_linear.c000066400000000000000000000262741513252040200223340ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ /* Taken from libsamplerate, original copyright below */ /* ** Copyright (C) 2002-2008 Erik de Castro Lopo ** ** This program is free software; you can redistribute it and/or modify ** it under the terms of the GNU General Public License as published by ** the Free Software Foundation; either version 2 of the License, or ** (at your option) any later version. ** ** This program is distributed in the hope that it will be useful, ** but WITHOUT ANY WARRANTY; without even the implied warranty of ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ** GNU General Public License for more details. ** ** You should have received a copy of the GNU General Public License ** along with this program; if not, write to the Free Software ** Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA. */ /* ** This code is part of Secret Rabibt Code aka libsamplerate. A commercial ** use license for this code is available, please see: ** http://www.mega-nerd.com/SRC/procedure.html */ #include #include #include #include "config.h" #include "common.h" static int linear_vari_process_f (SRC_PRIVATE *psrc, SRC_DATA *data) ; static int linear_vari_process_d (SRC_PRIVATE *psrc, SRC_DATA *data) ; static void linear_reset (SRC_PRIVATE *psrc) ; /*======================================================================================== */ #define LINEAR_MAGIC_MARKER MAKE_MAGIC ('l', 'i', 'n', 'e', 'a', 'r') #define SRC_DEBUG 0 typedef struct { int linear_magic_marker ; int channels ; int reset ; long in_count, in_used ; long out_count, out_gen ; float last_value_f [1] ; double last_value_d [1] ; int d; } LINEAR_DATA ; /*---------------------------------------------------------------------------------------- */ static int linear_vari_process_f (SRC_PRIVATE *psrc, SRC_DATA *data) { LINEAR_DATA *linear ; double src_ratio, input_index, rem ; int ch ; if (psrc->private_data == NULL) return SRC_ERR_NO_PRIVATE ; linear = (LINEAR_DATA*) psrc->private_data ; if (linear->reset) { /* If we have just been reset, set the last_value data. */ for (ch = 0 ; ch < linear->channels ; ch++) linear->last_value_f [ch] = data->data_in_f [ch] ; linear->reset = 0 ; } ; linear->in_count = data->input_frames * linear->channels ; linear->out_count = data->output_frames * linear->channels ; linear->in_used = linear->out_gen = 0 ; src_ratio = psrc->last_ratio ; input_index = psrc->last_position ; /* Calculate samples before first sample in input array. */ while (input_index < 1.0 && linear->out_gen < linear->out_count) { if (linear->in_used + linear->channels * input_index > linear->in_count) break ; if (linear->out_count > 0 && fabs (psrc->last_ratio - data->src_ratio) > SRC_MIN_RATIO_DIFF) src_ratio = psrc->last_ratio + linear->out_gen * (data->src_ratio - psrc->last_ratio) / linear->out_count ; for (ch = 0 ; ch < linear->channels ; ch++) { data->data_out_f [linear->out_gen] = (float) (linear->last_value_f [ch] + input_index * (data->data_in_f [ch] - linear->last_value_f [ch])) ; linear->out_gen ++ ; } ; /* Figure out the next index. */ input_index += 1.0 / src_ratio ; } ; rem = fmod_one (input_index) ; linear->in_used += linear->channels * lrint (input_index - rem) ; input_index = rem ; /* Main processing loop. */ while (linear->out_gen < linear->out_count && linear->in_used + linear->channels * input_index <= linear->in_count) { if (linear->out_count > 0 && fabs (psrc->last_ratio - data->src_ratio) > SRC_MIN_RATIO_DIFF) src_ratio = psrc->last_ratio + linear->out_gen * (data->src_ratio - psrc->last_ratio) / linear->out_count ; if (SRC_DEBUG && linear->in_used < linear->channels && input_index < 1.0) { printf ("Whoops!!!! in_used : %ld channels : %d input_index : %f\n", linear->in_used, linear->channels, input_index) ; exit (1) ; } ; for (ch = 0 ; ch < linear->channels ; ch++) { data->data_out_f [linear->out_gen] = (float) (data->data_in_f [linear->in_used - linear->channels + ch] + input_index * (data->data_in_f [linear->in_used + ch] - data->data_in_f [linear->in_used - linear->channels + ch])) ; linear->out_gen ++ ; } ; /* Figure out the next index. */ input_index += 1.0 / src_ratio ; rem = fmod_one (input_index) ; linear->in_used += linear->channels * lrint (input_index - rem) ; input_index = rem ; } ; if (linear->in_used > linear->in_count) { input_index += (linear->in_used - linear->in_count) / linear->channels ; linear->in_used = linear->in_count ; } ; psrc->last_position = input_index ; if (linear->in_used > 0) for (ch = 0 ; ch < linear->channels ; ch++) linear->last_value_f [ch] = data->data_in_f [linear->in_used - linear->channels + ch] ; /* Save current ratio rather then target ratio. */ psrc->last_ratio = src_ratio ; data->input_frames_used = linear->in_used / linear->channels ; data->output_frames_gen = linear->out_gen / linear->channels ; return SRC_ERR_NO_ERROR ; } /* linear_vari_process_f */ static int linear_vari_process_d (SRC_PRIVATE *psrc, SRC_DATA *data) { LINEAR_DATA *linear ; double src_ratio, input_index, rem ; int ch ; if (psrc->private_data == NULL) return SRC_ERR_NO_PRIVATE ; linear = (LINEAR_DATA*) psrc->private_data ; if (linear->reset) { /* If we have just been reset, set the last_value data. */ for (ch = 0 ; ch < linear->channels ; ch++) linear->last_value_d [ch] = data->data_in_d [ch] ; linear->reset = 0 ; } ; linear->in_count = data->input_frames * linear->channels ; linear->out_count = data->output_frames * linear->channels ; linear->in_used = linear->out_gen = 0 ; src_ratio = psrc->last_ratio ; input_index = psrc->last_position ; /* Calculate samples before first sample in input array. */ while (input_index < 1.0 && linear->out_gen < linear->out_count) { if (linear->in_used + linear->channels * input_index > linear->in_count) break ; if (linear->out_count > 0 && fabs (psrc->last_ratio - data->src_ratio) > SRC_MIN_RATIO_DIFF) src_ratio = psrc->last_ratio + linear->out_gen * (data->src_ratio - psrc->last_ratio) / linear->out_count ; for (ch = 0 ; ch < linear->channels ; ch++) { data->data_out_d [linear->out_gen] = (float) (linear->last_value_d [ch] + input_index * (data->data_in_d [ch] - linear->last_value_d [ch])) ; linear->out_gen ++ ; } ; /* Figure out the next index. */ input_index += 1.0 / src_ratio ; } ; rem = fmod_one (input_index) ; linear->in_used += linear->channels * lrint (input_index - rem) ; input_index = rem ; /* Main processing loop. */ while (linear->out_gen < linear->out_count && linear->in_used + linear->channels * input_index <= linear->in_count) { if (linear->out_count > 0 && fabs (psrc->last_ratio - data->src_ratio) > SRC_MIN_RATIO_DIFF) src_ratio = psrc->last_ratio + linear->out_gen * (data->src_ratio - psrc->last_ratio) / linear->out_count ; if (SRC_DEBUG && linear->in_used < linear->channels && input_index < 1.0) { printf ("Whoops!!!! in_used : %ld channels : %d input_index : %f\n", linear->in_used, linear->channels, input_index) ; exit (1) ; } ; for (ch = 0 ; ch < linear->channels ; ch++) { data->data_out_d [linear->out_gen] = (float) (data->data_in_d [linear->in_used - linear->channels + ch] + input_index * (data->data_in_d [linear->in_used + ch] - data->data_in_d [linear->in_used - linear->channels + ch])) ; linear->out_gen ++ ; } ; /* Figure out the next index. */ input_index += 1.0 / src_ratio ; rem = fmod_one (input_index) ; linear->in_used += linear->channels * lrint (input_index - rem) ; input_index = rem ; } ; if (linear->in_used > linear->in_count) { input_index += (linear->in_used - linear->in_count) / linear->channels ; linear->in_used = linear->in_count ; } ; psrc->last_position = input_index ; if (linear->in_used > 0) for (ch = 0 ; ch < linear->channels ; ch++) linear->last_value_d [ch] = data->data_in_d [linear->in_used - linear->channels + ch] ; /* Save current ratio rather then target ratio. */ psrc->last_ratio = src_ratio ; data->input_frames_used = linear->in_used / linear->channels ; data->output_frames_gen = linear->out_gen / linear->channels ; return SRC_ERR_NO_ERROR ; } /* linear_vari_process_d */ /*------------------------------------------------------------------------------ */ const char* linear_get_name (int src_enum) { if (src_enum == SRC_LINEAR) return "Linear Interpolator" ; return NULL ; } /* linear_get_name */ const char* linear_get_description (int src_enum) { if (src_enum == SRC_LINEAR) return "Linear interpolator, very fast, poor quality." ; return NULL ; } /* linear_get_descrition */ int gavl_linear_set_converter (SRC_PRIVATE *psrc, int src_enum, int d) { LINEAR_DATA *linear = NULL ; if (src_enum != SRC_LINEAR) return SRC_ERR_BAD_CONVERTER ; if (psrc->private_data != NULL) { linear = (LINEAR_DATA*) psrc->private_data ; if (linear->linear_magic_marker != LINEAR_MAGIC_MARKER) { free (psrc->private_data) ; psrc->private_data = NULL ; } ; } ; if (psrc->private_data == NULL) { linear = calloc (1, sizeof (*linear) + psrc->channels * sizeof (float)) ; if (linear == NULL) return SRC_ERR_MALLOC_FAILED ; psrc->private_data = linear ; } ; linear->linear_magic_marker = LINEAR_MAGIC_MARKER ; linear->channels = psrc->channels ; if(d) { psrc->const_process = linear_vari_process_d ; psrc->vari_process = linear_vari_process_d ; } else { psrc->const_process = linear_vari_process_f ; psrc->vari_process = linear_vari_process_f ; } linear->d = d; psrc->reset = linear_reset ; linear_reset (psrc) ; return SRC_ERR_NO_ERROR ; } /* linear_set_converter */ /*=================================================================================== */ static void linear_reset (SRC_PRIVATE *psrc) { LINEAR_DATA *linear = NULL ; linear = (LINEAR_DATA*) psrc->private_data ; if (linear == NULL) return ; linear->channels = psrc->channels ; linear->reset = 1 ; if(linear->d) memset (linear->last_value_d, 0, sizeof (linear->last_value_d [0]) * linear->channels) ; else memset (linear->last_value_f, 0, sizeof (linear->last_value_f [0]) * linear->channels) ; } /* linear_reset */ bplaum-gavl-b9385e3/gavl/libsamplerate/src_sinc.c000066400000000000000000000564211513252040200220130ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ /* Taken from libsamplerate, original copyright below */ /* ** Copyright (C) 2002-2008 Erik de Castro Lopo ** ** This program is free software; you can redistribute it and/or modify ** it under the terms of the GNU General Public License as published by ** the Free Software Foundation; either version 2 of the License, or ** (at your option) any later version. ** ** This program is distributed in the hope that it will be useful, ** but WITHOUT ANY WARRANTY; without even the implied warranty of ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ** GNU General Public License for more details. ** ** You should have received a copy of the GNU General Public License ** along with this program; if not, write to the Free Software ** Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA. */ /* ** This code is part of Secret Rabibt Code aka libsamplerate. A commercial ** use license for this code is available, please see: ** http://www.mega-nerd.com/SRC/procedure.html */ #include #include #include #include "config.h" #include "common.h" #define SINC_MAGIC_MARKER MAKE_MAGIC (' ', 's', 'i', 'n', 'c', ' ') /*======================================================================================== */ #define MAKE_INCREMENT_T(x) ((increment_t) (x)) #define SHIFT_BITS 12 #define FP_ONE ((double) (((increment_t) 1) << SHIFT_BITS)) #define INV_FP_ONE (1.0 / FP_ONE) /*======================================================================================== */ typedef int32_t increment_t ; typedef double coeff_t ; #include "fastest_coeffs.h" #include "mid_qual_coeffs.h" #include "high_qual_coeffs.h" typedef struct { int sinc_magic_marker ; int channels ; long in_count, in_used ; long out_count, out_gen ; int coeff_half_len, index_inc ; double src_ratio, input_index ; coeff_t const *coeffs ; int b_current, b_end, b_real_end, b_len ; int d; float buffer_f [1] ; double buffer_d [1] ; } SINC_FILTER ; static int sinc_vari_process_d (SRC_PRIVATE *psrc, SRC_DATA *data) ; static int sinc_vari_process_f (SRC_PRIVATE *psrc, SRC_DATA *data) ; static double calc_output_f (SINC_FILTER *filter, increment_t increment, increment_t start_filter_index, int ch) ; static double calc_output_d (SINC_FILTER *filter, increment_t increment, increment_t start_filter_index, int ch) ; static void prepare_data_f (SINC_FILTER *filter, SRC_DATA *data, int half_filter_chan_len) ; static void prepare_data_d (SINC_FILTER *filter, SRC_DATA *data, int half_filter_chan_len) ; static void sinc_reset (SRC_PRIVATE *psrc) ; static inline increment_t double_to_fp (double x) { if (sizeof (increment_t) == 8) return (llrint ((x) * FP_ONE)) ; return (lrint ((x) * FP_ONE)) ; } /* double_to_fp */ static inline increment_t int_to_fp (int x) { return (((increment_t) (x)) << SHIFT_BITS) ; } /* int_to_fp */ static inline int fp_to_int (increment_t x) { return (((x) >> SHIFT_BITS)) ; } /* fp_to_int */ static inline increment_t fp_fraction_part (increment_t x) { return ((x) & ((((increment_t) 1) << SHIFT_BITS) - 1)) ; } /* fp_fraction_part */ static inline double fp_to_double (increment_t x) { return fp_fraction_part (x) * INV_FP_ONE ; } /* fp_to_double */ /*---------------------------------------------------------------------------------------- */ const char* sinc_get_name (int src_enum) { switch (src_enum) { case SRC_SINC_BEST_QUALITY : return "Best Sinc Interpolator" ; case SRC_SINC_MEDIUM_QUALITY : return "Medium Sinc Interpolator" ; case SRC_SINC_FASTEST : return "Fastest Sinc Interpolator" ; default: break ; } ; return NULL ; } /* sinc_get_descrition */ const char* sinc_get_description (int src_enum) { switch (src_enum) { case SRC_SINC_FASTEST : return "Band limited sinc interpolation, fastest, 97dB SNR, 80% BW." ; case SRC_SINC_MEDIUM_QUALITY : return "Band limited sinc interpolation, medium quality, 121dB SNR, 90% BW." ; case SRC_SINC_BEST_QUALITY : return "Band limited sinc interpolation, best quality, 145dB SNR, 96% BW." ; default : break ; } ; return NULL ; } /* sinc_get_descrition */ int gavl_sinc_set_converter (SRC_PRIVATE *psrc, int src_enum, int d) { SINC_FILTER *filter, temp_filter ; increment_t count ; int bits ; /* Quick sanity check. */ if (SHIFT_BITS >= sizeof (increment_t) * 8 - 1) return SRC_ERR_SHIFT_BITS ; if (psrc->private_data != NULL) { filter = (SINC_FILTER*) psrc->private_data ; if (filter->sinc_magic_marker != SINC_MAGIC_MARKER) { free (psrc->private_data) ; psrc->private_data = NULL ; } ; } ; memset (&temp_filter, 0, sizeof (temp_filter)) ; temp_filter.sinc_magic_marker = SINC_MAGIC_MARKER ; temp_filter.channels = psrc->channels ; if(d) { psrc->const_process = sinc_vari_process_d ; psrc->vari_process = sinc_vari_process_d ; } else { psrc->const_process = sinc_vari_process_f ; psrc->vari_process = sinc_vari_process_f ; } psrc->reset = sinc_reset ; switch (src_enum) { case SRC_SINC_FASTEST : temp_filter.coeffs = fastest_coeffs.coeffs ; temp_filter.coeff_half_len = ARRAY_LEN (fastest_coeffs.coeffs) - 1 ; temp_filter.index_inc = fastest_coeffs.increment ; break ; case SRC_SINC_MEDIUM_QUALITY : temp_filter.coeffs = slow_mid_qual_coeffs.coeffs ; temp_filter.coeff_half_len = ARRAY_LEN (slow_mid_qual_coeffs.coeffs) - 1 ; temp_filter.index_inc = slow_mid_qual_coeffs.increment ; break ; case SRC_SINC_BEST_QUALITY : temp_filter.coeffs = slow_high_qual_coeffs.coeffs ; temp_filter.coeff_half_len = ARRAY_LEN (slow_high_qual_coeffs.coeffs) - 1 ; temp_filter.index_inc = slow_high_qual_coeffs.increment ; break ; default : return SRC_ERR_BAD_CONVERTER ; } ; /* ** FIXME : This needs to be looked at more closely to see if there is ** a better way. Need to look at prepare_data () at the same time. */ temp_filter.b_len = 2 * lrint (1.0 + temp_filter.coeff_half_len / (temp_filter.index_inc * 1.0) * SRC_MAX_RATIO) ; temp_filter.b_len = MAX (temp_filter.b_len, 4096) ; temp_filter.b_len *= temp_filter.channels ; temp_filter.d = d; if(d) { if ((filter = calloc (1, sizeof (SINC_FILTER) + sizeof (filter->buffer_d [0]) * (temp_filter.b_len + temp_filter.channels))) == NULL) return SRC_ERR_MALLOC_FAILED ; } else { if ((filter = calloc (1, sizeof (SINC_FILTER) + sizeof (filter->buffer_f [0]) * (temp_filter.b_len + temp_filter.channels))) == NULL) return SRC_ERR_MALLOC_FAILED ; } *filter = temp_filter ; memset (&temp_filter, 0xEE, sizeof (temp_filter)) ; psrc->private_data = filter ; sinc_reset (psrc) ; count = filter->coeff_half_len ; for (bits = 0 ; (MAKE_INCREMENT_T (1) << bits) < count ; bits++) count |= (MAKE_INCREMENT_T (1) << bits) ; if (bits + SHIFT_BITS - 1 >= (int) (sizeof (increment_t) * 8)) return SRC_ERR_FILTER_LEN ; return SRC_ERR_NO_ERROR ; } /* sinc_set_converter */ static void sinc_reset (SRC_PRIVATE *psrc) { SINC_FILTER *filter ; filter = (SINC_FILTER*) psrc->private_data ; if (filter == NULL) return ; filter->b_current = filter->b_end = 0 ; filter->b_real_end = -1 ; filter->src_ratio = filter->input_index = 0.0 ; if(filter->d) { memset (filter->buffer_d, 0, filter->b_len * sizeof (filter->buffer_d [0])) ; /* Set this for a sanity check */ memset (filter->buffer_d + filter->b_len, 0xAA, filter->channels * sizeof (filter->buffer_d [0])) ; } else { memset (filter->buffer_f, 0, filter->b_len * sizeof (filter->buffer_f [0])) ; /* Set this for a sanity check */ memset (filter->buffer_f + filter->b_len, 0xAA, filter->channels * sizeof (filter->buffer_f [0])) ; } } /* sinc_reset */ /*======================================================================================== ** Beware all ye who dare pass this point. There be dragons here. */ static int sinc_vari_process_f (SRC_PRIVATE *psrc, SRC_DATA *data) { SINC_FILTER *filter ; double input_index, src_ratio, count, float_increment, terminate, rem ; increment_t increment, start_filter_index ; int half_filter_chan_len, samples_in_hand, ch ; if (psrc->private_data == NULL) return SRC_ERR_NO_PRIVATE ; filter = (SINC_FILTER*) psrc->private_data ; #if 0 /* If there is not a problem, this will be optimised out. */ if (sizeof (filter->buffer [0]) != sizeof (data->data_in [0])) return SRC_ERR_SIZE_INCOMPATIBILITY ; #endif filter->in_count = data->input_frames * filter->channels ; filter->out_count = data->output_frames * filter->channels ; filter->in_used = filter->out_gen = 0 ; src_ratio = psrc->last_ratio ; /* Check the sample rate ratio wrt the buffer len. */ count = (filter->coeff_half_len + 2.0) / filter->index_inc ; if (MIN (psrc->last_ratio, data->src_ratio) < 1.0) count /= MIN (psrc->last_ratio, data->src_ratio) ; /* Maximum coefficientson either side of center point. */ half_filter_chan_len = filter->channels * (lrint (count) + 1) ; input_index = psrc->last_position ; float_increment = filter->index_inc ; rem = fmod_one (input_index) ; filter->b_current = (filter->b_current + filter->channels * lrint (input_index - rem)) % filter->b_len ; input_index = rem ; terminate = 1.0 / src_ratio + 1e-20 ; /* Main processing loop. */ while (filter->out_gen < filter->out_count) { /* Need to reload buffer? */ samples_in_hand = (filter->b_end - filter->b_current + filter->b_len) % filter->b_len ; if (samples_in_hand <= half_filter_chan_len) { prepare_data_f (filter, data, half_filter_chan_len) ; samples_in_hand = (filter->b_end - filter->b_current + filter->b_len) % filter->b_len ; if (samples_in_hand <= half_filter_chan_len) break ; } ; /* This is the termination condition. */ if (filter->b_real_end >= 0) { if (filter->b_current + input_index + terminate >= filter->b_real_end) break ; } ; if (filter->out_count > 0 && fabs (psrc->last_ratio - data->src_ratio) > 1e-10) src_ratio = psrc->last_ratio + filter->out_gen * (data->src_ratio - psrc->last_ratio) / filter->out_count ; float_increment = filter->index_inc * 1.0 ; if (src_ratio < 1.0) float_increment = filter->index_inc * src_ratio ; increment = double_to_fp (float_increment) ; start_filter_index = double_to_fp (input_index * float_increment) ; for (ch = 0 ; ch < filter->channels ; ch++) { data->data_out_f [filter->out_gen] = (float) ((float_increment / filter->index_inc) * calc_output_f (filter, increment, start_filter_index, ch)) ; filter->out_gen ++ ; } ; /* Figure out the next index. */ input_index += 1.0 / src_ratio ; rem = fmod_one (input_index) ; filter->b_current = (filter->b_current + filter->channels * lrint (input_index - rem)) % filter->b_len ; input_index = rem ; } ; psrc->last_position = input_index ; /* Save current ratio rather then target ratio. */ psrc->last_ratio = src_ratio ; data->input_frames_used = filter->in_used / filter->channels ; data->output_frames_gen = filter->out_gen / filter->channels ; return SRC_ERR_NO_ERROR ; } /* sinc_vari_process_f */ static int sinc_vari_process_d (SRC_PRIVATE *psrc, SRC_DATA *data) { SINC_FILTER *filter ; double input_index, src_ratio, count, float_increment, terminate, rem ; increment_t increment, start_filter_index ; int half_filter_chan_len, samples_in_hand, ch ; if (psrc->private_data == NULL) return SRC_ERR_NO_PRIVATE ; filter = (SINC_FILTER*) psrc->private_data ; #if 0 /* If there is not a problem, this will be optimised out. */ if (sizeof (filter->buffer [0]) != sizeof (data->data_in [0])) return SRC_ERR_SIZE_INCOMPATIBILITY ; #endif filter->in_count = data->input_frames * filter->channels ; filter->out_count = data->output_frames * filter->channels ; filter->in_used = filter->out_gen = 0 ; src_ratio = psrc->last_ratio ; /* Check the sample rate ratio wrt the buffer len. */ count = (filter->coeff_half_len + 2.0) / filter->index_inc ; if (MIN (psrc->last_ratio, data->src_ratio) < 1.0) count /= MIN (psrc->last_ratio, data->src_ratio) ; /* Maximum coefficientson either side of center point. */ half_filter_chan_len = filter->channels * (lrint (count) + 1) ; input_index = psrc->last_position ; float_increment = filter->index_inc ; rem = fmod_one (input_index) ; filter->b_current = (filter->b_current + filter->channels * lrint (input_index - rem)) % filter->b_len ; input_index = rem ; terminate = 1.0 / src_ratio + 1e-20 ; /* Main processing loop. */ while (filter->out_gen < filter->out_count) { /* Need to reload buffer? */ samples_in_hand = (filter->b_end - filter->b_current + filter->b_len) % filter->b_len ; if (samples_in_hand <= half_filter_chan_len) { prepare_data_d (filter, data, half_filter_chan_len) ; samples_in_hand = (filter->b_end - filter->b_current + filter->b_len) % filter->b_len ; if (samples_in_hand <= half_filter_chan_len) break ; } ; /* This is the termination condition. */ if (filter->b_real_end >= 0) { if (filter->b_current + input_index + terminate >= filter->b_real_end) break ; } ; if (filter->out_count > 0 && fabs (psrc->last_ratio - data->src_ratio) > 1e-10) src_ratio = psrc->last_ratio + filter->out_gen * (data->src_ratio - psrc->last_ratio) / filter->out_count ; float_increment = filter->index_inc * 1.0 ; if (src_ratio < 1.0) float_increment = filter->index_inc * src_ratio ; increment = double_to_fp (float_increment) ; start_filter_index = double_to_fp (input_index * float_increment) ; for (ch = 0 ; ch < filter->channels ; ch++) { data->data_out_d [filter->out_gen] = (float) ((float_increment / filter->index_inc) * calc_output_d (filter, increment, start_filter_index, ch)) ; filter->out_gen ++ ; } ; /* Figure out the next index. */ input_index += 1.0 / src_ratio ; rem = fmod_one (input_index) ; filter->b_current = (filter->b_current + filter->channels * lrint (input_index - rem)) % filter->b_len ; input_index = rem ; } ; psrc->last_position = input_index ; /* Save current ratio rather then target ratio. */ psrc->last_ratio = src_ratio ; data->input_frames_used = filter->in_used / filter->channels ; data->output_frames_gen = filter->out_gen / filter->channels ; return SRC_ERR_NO_ERROR ; } /* sinc_vari_process_d */ /*---------------------------------------------------------------------------------------- */ static void prepare_data_f (SINC_FILTER *filter, SRC_DATA *data, int half_filter_chan_len) { int len = 0 ; if (filter->b_real_end >= 0) return ; /* This doesn't make sense, so return. */ if (filter->b_current == 0) { /* Initial state. Set up zeros at the start of the buffer and ** then load new data after that. */ len = filter->b_len - 2 * half_filter_chan_len ; filter->b_current = filter->b_end = half_filter_chan_len ; } else if (filter->b_end + half_filter_chan_len + filter->channels < filter->b_len) { /* Load data at current end position. */ len = MAX (filter->b_len - filter->b_current - half_filter_chan_len, 0) ; } else { /* Move data at end of buffer back to the start of the buffer. */ len = filter->b_end - filter->b_current ; memmove (filter->buffer_f, filter->buffer_f + filter->b_current - half_filter_chan_len, (half_filter_chan_len + len) * sizeof (filter->buffer_f [0])) ; filter->b_current = half_filter_chan_len ; filter->b_end = filter->b_current + len ; /* Now load data at current end of buffer. */ len = MAX (filter->b_len - filter->b_current - half_filter_chan_len, 0) ; } ; len = MIN (filter->in_count - filter->in_used, len) ; len -= (len % filter->channels) ; memcpy (filter->buffer_f + filter->b_end, data->data_in_f + filter->in_used, len * sizeof (filter->buffer_f [0])) ; filter->b_end += len ; filter->in_used += len ; if (filter->in_used == filter->in_count && filter->b_end - filter->b_current < 2 * half_filter_chan_len && data->end_of_input) { /* Handle the case where all data in the current buffer has been ** consumed and this is the last buffer. */ if (filter->b_len - filter->b_end < half_filter_chan_len + 5) { /* If necessary, move data down to the start of the buffer. */ len = filter->b_end - filter->b_current ; memmove (filter->buffer_f, filter->buffer_f + filter->b_current - half_filter_chan_len, (half_filter_chan_len + len) * sizeof (filter->buffer_f [0])) ; filter->b_current = half_filter_chan_len ; filter->b_end = filter->b_current + len ; } ; filter->b_real_end = filter->b_end ; len = half_filter_chan_len + 5 ; memset (filter->buffer_f + filter->b_end, 0, len * sizeof (filter->buffer_f [0])) ; filter->b_end += len ; } ; return ; } /* prepare_data_f */ static void prepare_data_d (SINC_FILTER *filter, SRC_DATA *data, int half_filter_chan_len) { int len = 0 ; if (filter->b_real_end >= 0) return ; /* This doesn't make sense, so return. */ if (filter->b_current == 0) { /* Initial state. Set up zeros at the start of the buffer and ** then load new data after that. */ len = filter->b_len - 2 * half_filter_chan_len ; filter->b_current = filter->b_end = half_filter_chan_len ; } else if (filter->b_end + half_filter_chan_len + filter->channels < filter->b_len) { /* Load data at current end position. */ len = MAX (filter->b_len - filter->b_current - half_filter_chan_len, 0) ; } else { /* Move data at end of buffer back to the start of the buffer. */ len = filter->b_end - filter->b_current ; memmove (filter->buffer_d, filter->buffer_d + filter->b_current - half_filter_chan_len, (half_filter_chan_len + len) * sizeof (filter->buffer_d [0])) ; filter->b_current = half_filter_chan_len ; filter->b_end = filter->b_current + len ; /* Now load data at current end of buffer. */ len = MAX (filter->b_len - filter->b_current - half_filter_chan_len, 0) ; } ; len = MIN (filter->in_count - filter->in_used, len) ; len -= (len % filter->channels) ; memcpy (filter->buffer_d + filter->b_end, data->data_in_d + filter->in_used, len * sizeof (filter->buffer_d [0])) ; filter->b_end += len ; filter->in_used += len ; if (filter->in_used == filter->in_count && filter->b_end - filter->b_current < 2 * half_filter_chan_len && data->end_of_input) { /* Handle the case where all data in the current buffer has been ** consumed and this is the last buffer. */ if (filter->b_len - filter->b_end < half_filter_chan_len + 5) { /* If necessary, move data down to the start of the buffer. */ len = filter->b_end - filter->b_current ; memmove (filter->buffer_d, filter->buffer_d + filter->b_current - half_filter_chan_len, (half_filter_chan_len + len) * sizeof (filter->buffer_d [0])) ; filter->b_current = half_filter_chan_len ; filter->b_end = filter->b_current + len ; } ; filter->b_real_end = filter->b_end ; len = half_filter_chan_len + 5 ; memset (filter->buffer_d + filter->b_end, 0, len * sizeof (filter->buffer_d [0])) ; filter->b_end += len ; } ; return ; } /* prepare_data_d */ static double calc_output_f (SINC_FILTER *filter, increment_t increment, increment_t start_filter_index, int ch) { double fraction, left, right, icoeff ; increment_t filter_index, max_filter_index ; int data_index, coeff_count, indx ; /* Convert input parameters into fixed point. */ max_filter_index = int_to_fp (filter->coeff_half_len) ; /* First apply the left half of the filter. */ filter_index = start_filter_index ; coeff_count = (max_filter_index - filter_index) / increment ; filter_index = filter_index + coeff_count * increment ; data_index = filter->b_current - filter->channels * coeff_count + ch ; left = 0.0 ; do { fraction = fp_to_double (filter_index) ; indx = fp_to_int (filter_index) ; icoeff = filter->coeffs [indx] + fraction * (filter->coeffs [indx + 1] - filter->coeffs [indx]) ; left += icoeff * filter->buffer_f [data_index] ; filter_index -= increment ; data_index = data_index + filter->channels ; } while (filter_index >= MAKE_INCREMENT_T (0)) ; /* Now apply the right half of the filter. */ filter_index = increment - start_filter_index ; coeff_count = (max_filter_index - filter_index) / increment ; filter_index = filter_index + coeff_count * increment ; data_index = filter->b_current + filter->channels * (1 + coeff_count) + ch ; right = 0.0 ; do { fraction = fp_to_double (filter_index) ; indx = fp_to_int (filter_index) ; icoeff = filter->coeffs [indx] + fraction * (filter->coeffs [indx + 1] - filter->coeffs [indx]) ; right += icoeff * filter->buffer_f [data_index] ; filter_index -= increment ; data_index = data_index - filter->channels ; } while (filter_index > MAKE_INCREMENT_T (0)) ; return (left + right) ; } /* calc_output_f */ static double calc_output_d (SINC_FILTER *filter, increment_t increment, increment_t start_filter_index, int ch) { double fraction, left, right, icoeff ; increment_t filter_index, max_filter_index ; int data_index, coeff_count, indx ; /* Convert input parameters into fixed point. */ max_filter_index = int_to_fp (filter->coeff_half_len) ; /* First apply the left half of the filter. */ filter_index = start_filter_index ; coeff_count = (max_filter_index - filter_index) / increment ; filter_index = filter_index + coeff_count * increment ; data_index = filter->b_current - filter->channels * coeff_count + ch ; left = 0.0 ; do { fraction = fp_to_double (filter_index) ; indx = fp_to_int (filter_index) ; icoeff = filter->coeffs [indx] + fraction * (filter->coeffs [indx + 1] - filter->coeffs [indx]) ; left += icoeff * filter->buffer_d [data_index] ; filter_index -= increment ; data_index = data_index + filter->channels ; } while (filter_index >= MAKE_INCREMENT_T (0)) ; /* Now apply the right half of the filter. */ filter_index = increment - start_filter_index ; coeff_count = (max_filter_index - filter_index) / increment ; filter_index = filter_index + coeff_count * increment ; data_index = filter->b_current + filter->channels * (1 + coeff_count) + ch ; right = 0.0 ; do { fraction = fp_to_double (filter_index) ; indx = fp_to_int (filter_index) ; icoeff = filter->coeffs [indx] + fraction * (filter->coeffs [indx + 1] - filter->coeffs [indx]) ; right += icoeff * filter->buffer_d [data_index] ; filter_index -= increment ; data_index = data_index - filter->channels ; } while (filter_index > MAKE_INCREMENT_T (0)) ; return (left + right) ; } /* calc_output_d */ bplaum-gavl-b9385e3/gavl/libsamplerate/src_zoh.c000066400000000000000000000235141513252040200216540ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ /* Taken from libsamplerate, original copyright below */ /* ** Copyright (C) 2002-2008 Erik de Castro Lopo ** ** This program is free software; you can redistribute it and/or modify ** it under the terms of the GNU General Public License as published by ** the Free Software Foundation; either version 2 of the License, or ** (at your option) any later version. ** ** This program is distributed in the hope that it will be useful, ** but WITHOUT ANY WARRANTY; without even the implied warranty of ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ** GNU General Public License for more details. ** ** You should have received a copy of the GNU General Public License ** along with this program; if not, write to the Free Software ** Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA. */ /* ** This code is part of Secret Rabibt Code aka libsamplerate. A commercial ** use license for this code is available, please see: ** http://www.mega-nerd.com/SRC/procedure.html */ #include #include #include #include "config.h" #include "common.h" static int zoh_vari_process_f (SRC_PRIVATE *psrc, SRC_DATA *data) ; static int zoh_vari_process_d (SRC_PRIVATE *psrc, SRC_DATA *data) ; static void zoh_reset (SRC_PRIVATE *psrc) ; /*======================================================================================== */ #define ZOH_MAGIC_MARKER MAKE_MAGIC ('s', 'r', 'c', 'z', 'o', 'h') typedef struct { int zoh_magic_marker ; int channels ; int reset ; long in_count, in_used ; long out_count, out_gen ; float last_value_f [1] ; double last_value_d [1] ; int d; } ZOH_DATA ; /*---------------------------------------------------------------------------------------- */ static int zoh_vari_process_f (SRC_PRIVATE *psrc, SRC_DATA *data) { ZOH_DATA *zoh ; double src_ratio, input_index, rem ; int ch ; if (psrc->private_data == NULL) return SRC_ERR_NO_PRIVATE ; zoh = (ZOH_DATA*) psrc->private_data ; if (zoh->reset) { /* If we have just been reset, set the last_value data. */ for (ch = 0 ; ch < zoh->channels ; ch++) zoh->last_value_f [ch] = data->data_in_f [ch] ; zoh->reset = 0 ; } ; zoh->in_count = data->input_frames * zoh->channels ; zoh->out_count = data->output_frames * zoh->channels ; zoh->in_used = zoh->out_gen = 0 ; src_ratio = psrc->last_ratio ; input_index = psrc->last_position ; /* Calculate samples before first sample in input array. */ while (input_index < 1.0 && zoh->out_gen < zoh->out_count) { if (zoh->in_used + zoh->channels * input_index >= zoh->in_count) break ; if (zoh->out_count > 0 && fabs (psrc->last_ratio - data->src_ratio) > SRC_MIN_RATIO_DIFF) src_ratio = psrc->last_ratio + zoh->out_gen * (data->src_ratio - psrc->last_ratio) / zoh->out_count ; for (ch = 0 ; ch < zoh->channels ; ch++) { data->data_out_f [zoh->out_gen] = zoh->last_value_f [ch] ; zoh->out_gen ++ ; } ; /* Figure out the next index. */ input_index += 1.0 / src_ratio ; } ; rem = fmod_one (input_index) ; zoh->in_used += zoh->channels * lrint (input_index - rem) ; input_index = rem ; /* Main processing loop. */ while (zoh->out_gen < zoh->out_count && zoh->in_used + zoh->channels * input_index <= zoh->in_count) { if (zoh->out_count > 0 && fabs (psrc->last_ratio - data->src_ratio) > SRC_MIN_RATIO_DIFF) src_ratio = psrc->last_ratio + zoh->out_gen * (data->src_ratio - psrc->last_ratio) / zoh->out_count ; for (ch = 0 ; ch < zoh->channels ; ch++) { data->data_out_f [zoh->out_gen] = data->data_in_f [zoh->in_used - zoh->channels + ch] ; zoh->out_gen ++ ; } ; /* Figure out the next index. */ input_index += 1.0 / src_ratio ; rem = fmod_one (input_index) ; zoh->in_used += zoh->channels * lrint (input_index - rem) ; input_index = rem ; } ; if (zoh->in_used > zoh->in_count) { input_index += (zoh->in_used - zoh->in_count) / zoh->channels ; zoh->in_used = zoh->in_count ; } ; psrc->last_position = input_index ; if (zoh->in_used > 0) for (ch = 0 ; ch < zoh->channels ; ch++) zoh->last_value_f [ch] = data->data_in_f [zoh->in_used - zoh->channels + ch] ; /* Save current ratio rather then target ratio. */ psrc->last_ratio = src_ratio ; data->input_frames_used = zoh->in_used / zoh->channels ; data->output_frames_gen = zoh->out_gen / zoh->channels ; return SRC_ERR_NO_ERROR ; } /* zoh_vari_process_f */ static int zoh_vari_process_d (SRC_PRIVATE *psrc, SRC_DATA *data) { ZOH_DATA *zoh ; double src_ratio, input_index, rem ; int ch ; if (psrc->private_data == NULL) return SRC_ERR_NO_PRIVATE ; zoh = (ZOH_DATA*) psrc->private_data ; if (zoh->reset) { /* If we have just been reset, set the last_value data. */ for (ch = 0 ; ch < zoh->channels ; ch++) zoh->last_value_d [ch] = data->data_in_d [ch] ; zoh->reset = 0 ; } ; zoh->in_count = data->input_frames * zoh->channels ; zoh->out_count = data->output_frames * zoh->channels ; zoh->in_used = zoh->out_gen = 0 ; src_ratio = psrc->last_ratio ; input_index = psrc->last_position ; /* Calculate samples before first sample in input array. */ while (input_index < 1.0 && zoh->out_gen < zoh->out_count) { if (zoh->in_used + zoh->channels * input_index >= zoh->in_count) break ; if (zoh->out_count > 0 && fabs (psrc->last_ratio - data->src_ratio) > SRC_MIN_RATIO_DIFF) src_ratio = psrc->last_ratio + zoh->out_gen * (data->src_ratio - psrc->last_ratio) / zoh->out_count ; for (ch = 0 ; ch < zoh->channels ; ch++) { data->data_out_d [zoh->out_gen] = zoh->last_value_d [ch] ; zoh->out_gen ++ ; } ; /* Figure out the next index. */ input_index += 1.0 / src_ratio ; } ; rem = fmod_one (input_index) ; zoh->in_used += zoh->channels * lrint (input_index - rem) ; input_index = rem ; /* Main processing loop. */ while (zoh->out_gen < zoh->out_count && zoh->in_used + zoh->channels * input_index <= zoh->in_count) { if (zoh->out_count > 0 && fabs (psrc->last_ratio - data->src_ratio) > SRC_MIN_RATIO_DIFF) src_ratio = psrc->last_ratio + zoh->out_gen * (data->src_ratio - psrc->last_ratio) / zoh->out_count ; for (ch = 0 ; ch < zoh->channels ; ch++) { data->data_out_d [zoh->out_gen] = data->data_in_d [zoh->in_used - zoh->channels + ch] ; zoh->out_gen ++ ; } ; /* Figure out the next index. */ input_index += 1.0 / src_ratio ; rem = fmod_one (input_index) ; zoh->in_used += zoh->channels * lrint (input_index - rem) ; input_index = rem ; } ; if (zoh->in_used > zoh->in_count) { input_index += (zoh->in_used - zoh->in_count) / zoh->channels ; zoh->in_used = zoh->in_count ; } ; psrc->last_position = input_index ; if (zoh->in_used > 0) for (ch = 0 ; ch < zoh->channels ; ch++) zoh->last_value_d [ch] = data->data_in_d [zoh->in_used - zoh->channels + ch] ; /* Save current ratio rather then target ratio. */ psrc->last_ratio = src_ratio ; data->input_frames_used = zoh->in_used / zoh->channels ; data->output_frames_gen = zoh->out_gen / zoh->channels ; return SRC_ERR_NO_ERROR ; } /* zoh_vari_process_d */ /*------------------------------------------------------------------------------ */ const char* zoh_get_name (int src_enum) { if (src_enum == SRC_ZERO_ORDER_HOLD) return "ZOH Interpolator" ; return NULL ; } /* zoh_get_name */ const char* zoh_get_description (int src_enum) { if (src_enum == SRC_ZERO_ORDER_HOLD) return "Zero order hold interpolator, very fast, poor quality." ; return NULL ; } /* zoh_get_descrition */ int gavl_zoh_set_converter (SRC_PRIVATE *psrc, int src_enum, int d) { ZOH_DATA *zoh = NULL ; if (src_enum != SRC_ZERO_ORDER_HOLD) return SRC_ERR_BAD_CONVERTER ; if (psrc->private_data != NULL) { zoh = (ZOH_DATA*) psrc->private_data ; if (zoh->zoh_magic_marker != ZOH_MAGIC_MARKER) { free (psrc->private_data) ; psrc->private_data = NULL ; } ; } ; if (psrc->private_data == NULL) { zoh = calloc (1, sizeof (*zoh) + psrc->channels * sizeof (float)) ; if (zoh == NULL) return SRC_ERR_MALLOC_FAILED ; psrc->private_data = zoh ; } ; zoh->zoh_magic_marker = ZOH_MAGIC_MARKER ; zoh->channels = psrc->channels ; zoh->d = d; if(d) { psrc->const_process = zoh_vari_process_d ; psrc->vari_process = zoh_vari_process_d ; } else { psrc->const_process = zoh_vari_process_f ; psrc->vari_process = zoh_vari_process_f ; } psrc->reset = zoh_reset ; zoh_reset (psrc) ; return SRC_ERR_NO_ERROR ; } /* zoh_set_converter */ /*=================================================================================== */ static void zoh_reset (SRC_PRIVATE *psrc) { ZOH_DATA *zoh ; zoh = (ZOH_DATA*) psrc->private_data ; if (zoh == NULL) return ; zoh->channels = psrc->channels ; zoh->reset = 1 ; if(zoh->d) memset (zoh->last_value_d, 0, sizeof (zoh->last_value_d [0]) * zoh->channels) ; else memset (zoh->last_value_f, 0, sizeof (zoh->last_value_f [0]) * zoh->channels) ; return ; } /* zoh_reset */ bplaum-gavl-b9385e3/gavl/log.c000066400000000000000000000144431513252040200161430ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #define _GNU_SOURCE #include #include #include #include #include #include static gavl_handle_msg_func gavl_log_handler = gavl_log_stderr; static void * gavl_log_priv = NULL; static int gavl_log_mask = GAVL_LOG_ERROR | GAVL_LOG_WARNING | GAVL_LOG_INFO; static const struct { gavl_log_level_t level; const char * name; } level_names[] = { { GAVL_LOG_DEBUG, "Debug" }, { GAVL_LOG_WARNING, "Warning" }, { GAVL_LOG_ERROR, "Error" }, { GAVL_LOG_INFO, "Info" }, { 0, NULL } }; const char * gavl_log_level_to_string(gavl_log_level_t level) { int index = 0; while(level_names[index].name) { if(level_names[index].level == level) return level_names[index].name; index++; } return NULL; } static void logs_internal(gavl_log_level_t level, const char * domain, const char * message) { char ** lines; int i; if(level & gavl_log_mask) { lines = gavl_strbreak(message, '\n'); i = 0; while(lines[i]) { gavl_msg_t msg; gavl_strtrim(lines[i]); if(*(lines[i]) == '\0') { i++; continue; } gavl_msg_init(&msg); gavl_log_msg_set(&msg, level, domain, lines[i]); gavl_log_handler(gavl_log_priv, &msg); gavl_msg_free(&msg); i++; } gavl_strbreak_free(lines); } } void gavl_logv_translate(const char * translation_domain, gavl_log_level_t level, const char * domain, const char * format, va_list argp) { char * msg_string; #ifndef HAVE_VASPRINTF int len; len = vsnprintf(NULL, 0, format, argp); msg_string = malloc(len+1); vsnprintf(msg_string, len+1, format, argp); #else if(vasprintf(&msg_string, format, argp) < 0) return; // Should never happen #endif logs_internal(level, domain, msg_string); free(msg_string); } void gavl_log_translate(const char * translation_domain, gavl_log_level_t level, const char * domain, const char * format, ...) { va_list argp; /* arg ptr */ va_start( argp, format); gavl_logv_translate(translation_domain, level, domain, format, argp); va_end(argp); } int gavl_log_msg_get(const gavl_msg_t * msg, gavl_log_level_t * level, const char ** domain, const char ** message) { switch(msg->ID) { case GAVL_LOG_ERROR: case GAVL_LOG_DEBUG: case GAVL_LOG_INFO: case GAVL_LOG_WARNING: *level = msg->ID; *domain = gavl_msg_get_arg_string_c(msg, 0); *message = gavl_msg_get_arg_string_c(msg, 1); break; default: return 0; } return 1; } void gavl_log_msg_set(gavl_msg_t * msg, gavl_log_level_t level, const char * domain, const char * message) { gavl_msg_set_id_ns(msg, level, GAVL_MSG_NS_LOG); gavl_msg_set_arg_string(msg, 0, domain); gavl_msg_set_arg_string(msg, 1, message); } /* stderr logging */ /* Default log functions */ static void log_stderr_nocolor(gavl_log_level_t level, const char * domain, const char * msg) { fprintf(stderr, "[%s] %s: %s\n", domain, gavl_log_level_to_string(level), msg); } #ifdef HAVE_ISATTY static char term_error[] = "\33[31m"; static char term_warn[] = "\33[33m"; static char term_debug[] = "\33[32m"; static char term_reset[] = "\33[0m"; static void log_stderr(gavl_log_level_t level, const char * domain, const char * msg) { int use_color; if(isatty(fileno(stderr)) && getenv("TERM")) use_color = 1; else use_color = 0; if(use_color) { switch(level) { case GAVL_LOG_INFO: fprintf(stderr, "[%s] %s\n", domain, msg); break; case GAVL_LOG_WARNING: fprintf(stderr, "%s[%s] %s%s\n", term_warn, domain, msg, term_reset); break; case GAVL_LOG_ERROR: fprintf(stderr, "%s[%s] %s%s\n", term_error, domain, msg, term_reset); break; case GAVL_LOG_DEBUG: fprintf(stderr, "%s[%s] %s%s\n", term_debug, domain, msg, term_reset); break; } } else { log_stderr_nocolor(level, domain, msg); } } #else #define log_stderr log_stderr_nocolor #endif int gavl_log_stderr(void * data, gavl_msg_t * msg) { const char * domain = NULL; const char * message = NULL; gavl_log_level_t level; if(gavl_log_msg_get(msg, &level, &domain, &message)) { log_stderr(level, domain, message); } return 1; } void gavl_set_log_callback(gavl_handle_msg_func handler, void * priv) { gavl_log_handler = handler; gavl_log_priv = priv; } void gavl_set_log_mask(int mask) { gavl_log_mask = mask; } void gavl_set_log_verbose(int level) { gavl_log_mask = 0; if(level >= 1) gavl_log_mask |= GAVL_LOG_ERROR; if(level >= 2) gavl_log_mask |= GAVL_LOG_WARNING; if(level >= 3) gavl_log_mask |= GAVL_LOG_INFO; if(level >= 4) gavl_log_mask |= GAVL_LOG_DEBUG; } bplaum-gavl-b9385e3/gavl/md5.c000066400000000000000000000042141513252040200160420ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include #include void * gavl_md5_buffer(const void *buffer, int len, void *resblock) { struct md5_ctx ctx; md5_init(&ctx); md5_update(&ctx, len, buffer); md5_digest(&ctx, GAVL_MD5_SIZE, resblock); return resblock; } char * gavl_md5_buffer_str(const void *buffer, int len, char * ret) { uint8_t md5[GAVL_MD5_SIZE]; gavl_md5_buffer(buffer, len, md5); gavl_md5_2_string(md5, ret); return ret; } static const char * hex_digits = "0123456789abcdef"; char * gavl_md5_2_string(const void * md5v, char * str) { int i; const uint8_t * md5 = md5v; for(i = 0; i < GAVL_MD5_SIZE; i++) { str[0] = hex_digits[ (*md5 >> 4) & 0xf ]; str[1] = hex_digits[ *md5 & 0xf ]; str += 2; md5++; } *str = '\0'; return str; } int gavl_string_2_md5(const char * str, void * md5v) { const char * pos1; const char * pos2; int i; char * md5 = md5v; for(i = 0; i < GAVL_MD5_SIZE; i++) { pos1 = strchr(hex_digits, str[2*i]); pos2 = strchr(hex_digits, str[2*i+1]); if(!pos1 || !pos2) return 0; *md5 = ((int)(pos1 - hex_digits) << 4) | (int)(pos2 - hex_digits); md5++; } return 1; } bplaum-gavl-b9385e3/gavl/memalign.c000066400000000000000000000023621513252040200171500ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include void * gavl_memalign(size_t boundary, size_t size) { #if HAVE_POSIX_MEMALIGN void * ret; if(posix_memalign(&ret, boundary, size)) return NULL; return ret; #elif HAVE_MEMALIGN return memalign(boundary, size); #else return malloc(size); #endif } bplaum-gavl-b9385e3/gavl/memcpy.c000066400000000000000000000366111513252040200166550ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ /* * Adapted for gavl, original comments below. */ /* * Copyright (C) 2001-2004 the xine project * * This file is part of xine, a free video player. * * xine 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. * * xine is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA * * These are the MMX/MMX2/SSE optimized versions of memcpy * * This code was adapted from Linux Kernel sources by Nick Kurshev to * the mplayer program. (http://mplayer.sourceforge.net) * * Miguel Freitas split the #ifdefs into several specialized functions that * are benchmarked at runtime by xine. Some original comments from Nick * have been preserved documenting some MMX/SSE oddities. * Also added kernel memcpy function that seems faster than libc one. * */ #include #include #include #include #include #if 0 #if defined (ARCH_PPC) && !defined (HOST_OS_DARWIN) #include "ppcasm_string.h" #endif #endif #ifdef HAVE_SYS_TIMES_H #include #endif #include #include void *(*gavl_memcpy)(void *to, const void *from, size_t len) = NULL; /* Original comments from mplayer (file: aclib.c) This part of code was taken by me from Linux-2.4.3 and slightly modified for MMX, MMX2, SSE instruction set. I have done it since linux uses page aligned blocks but mplayer uses weakly ordered data and original sources can not speedup them. Only using PREFETCHNTA and MOVNTQ together have effect! >From IA-32 Intel Architecture Software Developer's Manual Volume 1, Order Number 245470: "10.4.6. Cacheability Control, Prefetch, and Memory Ordering Instructions" Data referenced by a program can be temporal (data will be used again) or non-temporal (data will be referenced once and not reused in the immediate future). To make efficient use of the processor's caches, it is generally desirable to cache temporal data and not cache non-temporal data. Overloading the processor's caches with non-temporal data is sometimes referred to as "polluting the caches". The non-temporal data is written to memory with Write-Combining semantics. The PREFETCHh instructions permits a program to load data into the processor at a suggested cache level, so that it is closer to the processors load and store unit when it is needed. If the data is already present in a level of the cache hierarchy that is closer to the processor, the PREFETCHh instruction will not result in any data movement. But we should you PREFETCHNTA: Non-temporal data fetch data into location close to the processor, minimizing cache pollution. The MOVNTQ (store quadword using non-temporal hint) instruction stores packed integer data from an MMX register to memory, using a non-temporal hint. The MOVNTPS (store packed single-precision floating-point values using non-temporal hint) instruction stores packed floating-point data from an XMM register to memory, using a non-temporal hint. The SFENCE (Store Fence) instruction controls write ordering by creating a fence for memory store operations. This instruction guarantees that the results of every store instruction that precedes the store fence in program order is globally visible before any store instruction that follows the fence. The SFENCE instruction provides an efficient way of ensuring ordering between procedures that produce weakly-ordered data and procedures that consume that data. If you have questions please contact with me: Nick Kurshev: nickols_k@mail.ru. */ /* mmx v.1 Note: Since we added alignment of destinition it speedups of memory copying on PentMMX, Celeron-1 and P2 upto 12% versus standard (non MMX-optimized) version. Note: on K6-2+ it speedups memory copying upto 25% and on K7 and P3 about 500% (5 times). */ /* Additional notes on gcc assembly and processors: [MF] prefetch is specific for AMD processors, the intel ones should be prefetch0, prefetch1, prefetch2 which are not recognized by my gcc. prefetchnta is supported both on athlon and pentium 3. therefore i will take off prefetchnta instructions from the mmx1 version to avoid problems on pentium mmx and k6-2. quote of the day: "Using prefetches efficiently is more of an art than a science" */ #if defined(ARCH_X86) #define small_memcpy(to,from,n)\ {\ register unsigned long int dummy;\ __asm__ __volatile__(\ "rep; movsb"\ :"=&D"(to), "=&S"(from), "=&c"(dummy)\ :"0" (to), "1" (from),"2" (n)\ : "memory");\ } /* linux kernel __memcpy (from: /include/asm/string.h) */ static __inline__ void * linux_kernel_memcpy_impl ( void * to, const void * from, size_t n) { int d0, d1, d2; if( n < 4 ) { small_memcpy(to,from,n); } else __asm__ __volatile__( "rep ; movsl\n\t" "testb $2,%b4\n\t" "je 1f\n\t" "movsw\n" "1:\ttestb $1,%b4\n\t" "je 2f\n\t" "movsb\n" "2:" : "=&c" (d0), "=&D" (d1), "=&S" (d2) :"0" (n/4), "q" (n),"1" ((long) to),"2" ((long) from) : "memory"); return (to); } #define SSE_MMREG_SIZE 16 #define MMX_MMREG_SIZE 8 #define MMX1_MIN_LEN 0x800 /* 2K blocks */ #define MIN_LEN 0x40 /* 64-byte blocks */ #ifdef HAVE_SSE /* SSE note: i tried to move 128 bytes a time instead of 64 but it didn't make any measurable difference. i'm using 64 for the sake of simplicity. [MF] */ static void * sse_memcpy(void * to, const void * from, size_t len) { void *retval; size_t i; retval = to; // fprintf(stderr, "sse_memcpy 1\n"); /* PREFETCH has effect even for MOVSB instruction ;) */ __asm__ __volatile__ ( " prefetchnta (%0)\n" " prefetchnta 32(%0)\n" " prefetchnta 64(%0)\n" " prefetchnta 96(%0)\n" " prefetchnta 128(%0)\n" " prefetchnta 160(%0)\n" " prefetchnta 192(%0)\n" " prefetchnta 224(%0)\n" " prefetchnta 256(%0)\n" " prefetchnta 288(%0)\n" : : "r" (from) ); if(len >= MIN_LEN) { register unsigned long int delta; /* Align destinition to MMREG_SIZE -boundary */ delta = ((unsigned long int)to) & (SSE_MMREG_SIZE-1); if(delta) { delta=SSE_MMREG_SIZE-delta; len -= delta; small_memcpy(to, from, delta); } i = len >> 6; /* len/64 */ len&=63; if(((unsigned long)from) & 15) /* if SRC is misaligned */ for(; i>0; i--) { __asm__ __volatile__ ( "prefetchnta 320(%0)\n" "prefetchnta 352(%0)\n" "movups (%0), %%xmm0\n" "movups 16(%0), %%xmm1\n" "movups 32(%0), %%xmm2\n" "movups 48(%0), %%xmm3\n" "movntps %%xmm0, (%1)\n" "movntps %%xmm1, 16(%1)\n" "movntps %%xmm2, 32(%1)\n" "movntps %%xmm3, 48(%1)\n" :: "r" (from), "r" (to) : "memory"); from = ((const unsigned char *)from) + 64; to = ((unsigned char *)to) + 64; } else /* Only if SRC is aligned on 16-byte boundary. It allows to use movaps instead of movups, which required data to be aligned or a general-protection exception (#GP) is generated. */ for(; i>0; i--) { __asm__ __volatile__ ( "prefetchnta 320(%0)\n" "prefetchnta 352(%0)\n" "movaps (%0), %%xmm0\n" "movaps 16(%0), %%xmm1\n" "movaps 32(%0), %%xmm2\n" "movaps 48(%0), %%xmm3\n" "movntps %%xmm0, (%1)\n" "movntps %%xmm1, 16(%1)\n" "movntps %%xmm2, 32(%1)\n" "movntps %%xmm3, 48(%1)\n" :: "r" (from), "r" (to) : "memory"); from = ((const unsigned char *)from) + 64; to = ((unsigned char *)to) + 64; } /* since movntq is weakly-ordered, a "sfence" * is needed to become ordered again. */ __asm__ __volatile__ ("sfence":::"memory"); /* enables to use FPU */ __asm__ __volatile__ ("emms":::"memory"); } /* * Now do the tail of the block */ if(len) linux_kernel_memcpy_impl(to, from, len); return retval; } #endif // HAVE_SSE #ifdef HAVE_MMX static void * mmx_memcpy(void * to, const void * from, size_t len) { void *retval; size_t i; retval = to; if(len >= MMX1_MIN_LEN) { register unsigned long int delta; /* Align destinition to MMREG_SIZE -boundary */ delta = ((unsigned long int)to) & (MMX_MMREG_SIZE-1); if(delta) { delta=MMX_MMREG_SIZE-delta; len -= delta; small_memcpy(to, from, delta); } i = len >> 6; /* len/64 */ len&=63; for(; i>0; i--) { __asm__ __volatile__ ( "movq (%0), %%mm0\n" "movq 8(%0), %%mm1\n" "movq 16(%0), %%mm2\n" "movq 24(%0), %%mm3\n" "movq 32(%0), %%mm4\n" "movq 40(%0), %%mm5\n" "movq 48(%0), %%mm6\n" "movq 56(%0), %%mm7\n" "movq %%mm0, (%1)\n" "movq %%mm1, 8(%1)\n" "movq %%mm2, 16(%1)\n" "movq %%mm3, 24(%1)\n" "movq %%mm4, 32(%1)\n" "movq %%mm5, 40(%1)\n" "movq %%mm6, 48(%1)\n" "movq %%mm7, 56(%1)\n" :: "r" (from), "r" (to) : "memory"); from = ((const unsigned char *)from) + 64; to = ((unsigned char *)to) + 64; } __asm__ __volatile__ ("emms":::"memory"); } /* * Now do the tail of the block */ if(len) linux_kernel_memcpy_impl(to, from, len); return retval; } static void * mmx2_memcpy(void * to, const void * from, size_t len) { void *retval; size_t i; retval = to; /* PREFETCH has effect even for MOVSB instruction ;) */ __asm__ __volatile__ ( " prefetchnta (%0)\n" " prefetchnta 32(%0)\n" " prefetchnta 64(%0)\n" " prefetchnta 96(%0)\n" " prefetchnta 128(%0)\n" " prefetchnta 160(%0)\n" " prefetchnta 192(%0)\n" " prefetchnta 224(%0)\n" " prefetchnta 256(%0)\n" " prefetchnta 288(%0)\n" : : "r" (from) ); if(len >= MIN_LEN) { register unsigned long int delta; /* Align destinition to MMREG_SIZE -boundary */ delta = ((unsigned long int)to) & (MMX_MMREG_SIZE-1); if(delta) { delta=MMX_MMREG_SIZE-delta; len -= delta; small_memcpy(to, from, delta); } i = len >> 6; /* len/64 */ len&=63; for(; i>0; i--) { __asm__ __volatile__ ( "prefetchnta 320(%0)\n" "prefetchnta 352(%0)\n" "movq (%0), %%mm0\n" "movq 8(%0), %%mm1\n" "movq 16(%0), %%mm2\n" "movq 24(%0), %%mm3\n" "movq 32(%0), %%mm4\n" "movq 40(%0), %%mm5\n" "movq 48(%0), %%mm6\n" "movq 56(%0), %%mm7\n" "movntq %%mm0, (%1)\n" "movntq %%mm1, 8(%1)\n" "movntq %%mm2, 16(%1)\n" "movntq %%mm3, 24(%1)\n" "movntq %%mm4, 32(%1)\n" "movntq %%mm5, 40(%1)\n" "movntq %%mm6, 48(%1)\n" "movntq %%mm7, 56(%1)\n" :: "r" (from), "r" (to) : "memory"); from = ((const unsigned char *)from) + 64; to = ((unsigned char *)to) + 64; } /* since movntq is weakly-ordered, a "sfence" * is needed to become ordered again. */ __asm__ __volatile__ ("sfence":::"memory"); __asm__ __volatile__ ("emms":::"memory"); } /* * Now do the tail of the block */ if(len) linux_kernel_memcpy_impl(to, from, len); return retval; } #endif // HAVE_MMX static void *linux_kernel_memcpy(void *to, const void *from, size_t len) { return linux_kernel_memcpy_impl(to,from,len); } #endif /* ARCH_X86 */ static struct { char *name; void *(* function)(void *to, const void *from, size_t len); uint64_t time; /* This type could be used for non-MSC build too! */ uint32_t cpu_require; } memcpy_method[] = { #ifdef ARCH_X86 #ifdef HAVE_SSE { "SSE", sse_memcpy, 0, GAVL_ACCEL_MMXEXT|GAVL_ACCEL_SSE }, #endif // HAVE_SSE #ifdef HAVE_MMX { "MMXEXT", mmx2_memcpy, 0, GAVL_ACCEL_MMXEXT }, { "MMX", mmx_memcpy, 0, GAVL_ACCEL_MMX }, #endif // HAVE_MMX { "KERNEL", linux_kernel_memcpy, 0, 0 }, #endif /* ARCH_X86 */ #if 0 #if defined (ARCH_PPC) && !defined (HOST_OS_DARWIN) { "ppcasm_memcpy()", ppcasm_memcpy, 0, 0 }, { "ppcasm_cacheable_memcpy()", ppcasm_cacheable_memcpy, 0, GAVL_ACCEL_ACCEL_PPC_CACHE32 }, #endif /* ARCH_PPC && !HOST_OS_DARWIN */ #endif { "LIBC", memcpy, 0, 0 }, /* Assumed to be the slowest */ { NULL, NULL, 0, 0 } }; #define BUFSIZE 1024*1024 void gavl_init_memcpy() { uint64_t t; char *buf1, *buf2; int i, j, best; int config_flags = -1; char * mmx_env; int benchmark = 0; if(gavl_memcpy) return; mmx_env = getenv("GAVL_MEMCPY"); if(mmx_env && !strcasecmp(mmx_env, "AUTO")) benchmark = 1; // fprintf(stderr, "gavl_init_memcpy\n"); config_flags = gavl_accel_supported(); best = 0; if( (buf1 = malloc(BUFSIZE)) == NULL ) return; if( (buf2 = malloc(BUFSIZE)) == NULL ) { free(buf1); return; } // xprintf(xine, XINE_VERBOSITY_LOG, _("Benchmarking memcpy methods (smaller is better):\n")); /* make sure buffers are present on physical memory */ memset(buf1,0,BUFSIZE); memset(buf2,0,BUFSIZE); for(i=0; memcpy_method[i].name; i++) { if( (config_flags & memcpy_method[i].cpu_require) != memcpy_method[i].cpu_require ) { if((mmx_env) && !strcasecmp(memcpy_method[i].name, mmx_env)) { mmx_env = NULL; } continue; } if(benchmark) { t = gavl_benchmark_get_time(config_flags); for(j=0;j<50;j++) { memcpy_method[i].function(buf2,buf1,BUFSIZE); memcpy_method[i].function(buf1,buf2,BUFSIZE); } t = gavl_benchmark_get_time(config_flags) - t; memcpy_method[i].time = t; fprintf(stderr, "%6s: %" PRIu64 "\n", memcpy_method[i].name, t); if( i && (t < memcpy_method[best].time )) best = i; } else if(mmx_env) { if(!strcasecmp(memcpy_method[i].name, mmx_env)) { best = i; break; } } else { best = i; break; } } gavl_memcpy = memcpy_method[best].function; if(benchmark) { fprintf(stderr, "Using %s memcpy implementation. To make this permanent,\nset the environment variable GAVL_MEMCPY to %s\n", memcpy_method[best].name, memcpy_method[best].name); } free(buf1); free(buf2); } bplaum-gavl-b9385e3/gavl/metadata.c000066400000000000000000000413351513252040200171420ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include #include #include #include #include #include #include /* Time <-> String */ void gavl_metadata_date_to_string(int year, int month, int day, char * ret) { snprintf(ret, GAVL_METADATA_DATE_STRING_LEN, "%04d-%02d-%02d", year, month, day); } void gavl_metadata_date_time_to_string(int year, int month, int day, int hour, int minute, int second, char * ret) { snprintf(ret, GAVL_METADATA_DATE_TIME_STRING_LEN, "%04d-%02d-%02d %02d:%02d:%02d", year, month, day, hour, minute, second); } void gavl_dictionary_set_date(gavl_dictionary_t * m, const char * key, int year, int month, int day) { // YYYY-MM-DD char buf[GAVL_METADATA_DATE_STRING_LEN]; gavl_metadata_date_to_string(year, month, day, buf); gavl_dictionary_set_string(m, key, buf); } void gavl_dictionary_set_date_time(gavl_dictionary_t * m, const char * key, int year, int month, int day, int hour, int minute, int second) { // YYYY-MM-DD HH:MM:SS char buf[GAVL_METADATA_DATE_TIME_STRING_LEN]; gavl_metadata_date_time_to_string(year, month, day, hour, minute, second, buf); gavl_dictionary_set_string(m, key, buf); } int gavl_dictionary_get_date(const gavl_dictionary_t * m, const char * key, int * year, int * month, int * day) { const char * val = gavl_dictionary_get_string(m, key); if(!val) return 0; if(sscanf(val, "%04d-%02d-%02d", year, month, day) < 3) return 0; return 1; } GAVL_PUBLIC int gavl_dictionary_get_year(const gavl_dictionary_t * m, const char * key) { int year; int month; int day; if(gavl_dictionary_get_date(m, key, &year, &month, &day) && (year != 9999)) return year; else return 0; } GAVL_PUBLIC int gavl_dictionary_get_date_time(const gavl_dictionary_t * m, const char * key, int * year, int * month, int * day, int * hour, int * minute, int * second) { const char * val = gavl_dictionary_get_string(m, key); if(!val) return 0; if(sscanf(val, "%04d-%02d-%02d %02d:%02d:%02d", year, month, day, hour, minute, second) < 6) return 0; return 1; } int gavl_metadata_equal(const gavl_dictionary_t * m1, const gavl_dictionary_t * m2) { return !gavl_dictionary_compare(m1, m2); } static const char * compression_fields[] = { GAVL_META_SOFTWARE, GAVL_META_MIMETYPE, GAVL_META_FORMAT, GAVL_META_BITRATE, GAVL_META_AUDIO_BITS, GAVL_META_VIDEO_BPP, NULL, }; const char * implicit_fields[] = { GAVL_META_URI, GAVL_META_AVG_BITRATE, GAVL_META_AVG_FRAMERATE, GAVL_META_STREAM_DURATION, GAVL_META_WIDTH, GAVL_META_HEIGHT, GAVL_META_FORMAT, GAVL_META_AUDIO_CODEC, GAVL_META_VIDEO_CODEC, GAVL_META_AUDIO_SAMPLERATE, GAVL_META_AUDIO_CHANNELS, GAVL_META_SRC, GAVL_META_AUDIO_BITRATE, GAVL_META_VIDEO_BITRATE, NULL, }; void gavl_metadata_delete_compression_fields(gavl_dictionary_t * m) { gavl_dictionary_delete_fields(m, compression_fields); } void gavl_metadata_delete_implicit_fields(gavl_dictionary_t * m) { gavl_dictionary_delete_fields(m, implicit_fields); } void gavl_dictionary_set_string_endian(gavl_dictionary_t * m) { int val; #ifdef WORDS_BIGENDIAN val = 1; #else val = 0; #endif gavl_dictionary_set_int(m, "BigEndian", val); } int gavl_metadata_do_swap_endian(const gavl_dictionary_t * m) { int val; if(!m) return 0; if(!gavl_dictionary_get_int(m, "BigEndian", &val)) val = 0; #ifdef WORDS_BIGENDIAN if(!val) return 1; #else if(val) return 1; #endif else return 0; } /* Array functions */ void gavl_metadata_append_nocpy(gavl_dictionary_t * m, const char * key, char * val) { gavl_value_t v; gavl_value_init(&v); gavl_value_set_string_nocopy(&v, val); gavl_dictionary_append_nocopy(m, key, &v); } void gavl_metadata_append(gavl_dictionary_t * m, const char * key, const char * val) { gavl_metadata_append_nocpy(m, key, gavl_strdup(val)); } static char * metadata_get_arr_internal(const gavl_dictionary_t * m, const char * key, int i, int ign) { const gavl_value_t * val; if(ign) val = gavl_dictionary_get_i(m, key); else val = gavl_dictionary_get(m, key); if(!val) return NULL; if(val->type == GAVL_TYPE_ARRAY) { if(i < 0) return NULL; if(i >= val->v.array->num_entries) return NULL; if(val->v.array->entries[i].type != GAVL_TYPE_STRING) return NULL; return val->v.array->entries[i].v.str; } else if((val->type == GAVL_TYPE_STRING) && !i) return val->v.str; else return NULL; } const char * gavl_dictionary_get_arr(const gavl_dictionary_t * m, const char * key, int i) { return metadata_get_arr_internal(m, key, i, 0); } const char * gavl_dictionary_get_arr_i(const gavl_dictionary_t * m, const char * key, int i) { return metadata_get_arr_internal(m, key, i, 1); } int gavl_dictionary_get_arr_len(const gavl_dictionary_t * m, const char * key) { const gavl_value_t * val = gavl_dictionary_get(m, key); if(!val) return 0; else if(val->type == GAVL_TYPE_STRING) return 1; else if(val->type == GAVL_TYPE_ARRAY) return val->v.array->num_entries; else return 0; } char * gavl_metadata_join_arr(const gavl_dictionary_t * m, const char * key, const char * glue) { return gavl_value_join_arr(gavl_dictionary_get(m, key), glue); } // void gavl_metadata_add_image_embedded(gavl_dictionary_t * m, const char * key, int w, int h, const char * mimetype, const uint8_t * image_data, int len) { gavl_value_t child; gavl_value_t val; gavl_dictionary_t * dict; gavl_value_init(&child); dict = gavl_value_set_dictionary(&child); gavl_value_init(&val); if(mimetype) { gavl_value_set_string(&val, mimetype); gavl_dictionary_set_nocopy(dict, GAVL_META_MIMETYPE, &val); } if(w > 0) { gavl_value_set_int(&val, w); gavl_dictionary_set_nocopy(dict, GAVL_META_WIDTH, &val); } if(h > 0) { gavl_value_set_int(&val, h); gavl_dictionary_set_nocopy(dict, GAVL_META_HEIGHT, &val); } if(image_data) { gavl_buffer_t * buf = gavl_value_set_binary(&val); gavl_buffer_append_data(buf, image_data, len); gavl_dictionary_set_nocopy(dict, GAVL_META_IMAGE_BUFFER, &val); } gavl_dictionary_append_nocopy(m, key, &child); } // gavl_dictionary_t * gavl_metadata_add_image_uri(gavl_dictionary_t * m, const char * key, int w, int h, const char * mimetype, const char * uri) { gavl_value_t child; gavl_value_t val; gavl_dictionary_t * dict; gavl_value_init(&child); dict = gavl_value_set_dictionary(&child); gavl_value_init(&val); gavl_value_set_string(&val, uri); gavl_dictionary_set_nocopy(dict, GAVL_META_URI, &val); if(mimetype) { gavl_value_set_string(&val, mimetype); gavl_dictionary_set_nocopy(dict, GAVL_META_MIMETYPE, &val); } if(w > 0) { gavl_value_set_int(&val, w); gavl_dictionary_set_nocopy(dict, GAVL_META_WIDTH, &val); } if(h > 0) { gavl_value_set_int(&val, h); gavl_dictionary_set_nocopy(dict, GAVL_META_HEIGHT, &val); } gavl_dictionary_append_nocopy(m, key, &child); return dict; } /* Generic routine */ static const gavl_dictionary_t * get_image(const gavl_dictionary_t * m, const char * key, int idx) { const gavl_dictionary_t * dict = NULL; const gavl_value_t * val; if(!(val = gavl_dictionary_get(m, key))) return NULL; if((val->type == GAVL_TYPE_DICTIONARY) && !idx) dict = val->v.dictionary; else if(val->type == GAVL_TYPE_ARRAY) { if((val = gavl_array_get(val->v.array, idx)) && (val->type == GAVL_TYPE_DICTIONARY)) dict = val->v.dictionary; } return dict; } const char * gavl_dictionary_get_string_image_uri(const gavl_dictionary_t * m, const char * key, int i, int * wp, int * hp, const char ** mimetype) { const gavl_dictionary_t * dict = NULL; const gavl_value_t * val; const char * ret; if(mimetype) *mimetype = NULL; if(!(dict = get_image(m, key, i))) return NULL; if(!(val = gavl_dictionary_get(dict, GAVL_META_URI))) return NULL; ret = gavl_value_get_string(val); /* mimetype, width, height */ if(mimetype && (val = gavl_dictionary_get(dict, GAVL_META_MIMETYPE))) *mimetype = gavl_strdup(gavl_value_get_string(val)); if(wp && (val = gavl_dictionary_get(dict, GAVL_META_WIDTH))) gavl_value_get_int(val, wp); if(hp && (val = gavl_dictionary_get(dict, GAVL_META_HEIGHT))) gavl_value_get_int(val, hp); return ret; } const gavl_dictionary_t * gavl_dictionary_get_image_max_proto(const gavl_dictionary_t * m, const char * key, int w, int h, const char * mimetype, const char * protocol) { int i = 0; const gavl_dictionary_t * dict; int w_max = 0, i_max = -1; int val_w = -1; int val_h = -1; const char * val_string; const char * uri; while((dict = get_image(m, key, i))) { if(!gavl_dictionary_get_int(dict, GAVL_META_WIDTH, &val_w)) val_w = -1; if(!gavl_dictionary_get_int(dict, GAVL_META_HEIGHT, &val_h)) val_h = -1; #if 0 fprintf(stderr, "Testing image:\n"); gavl_dictionary_dump(dict, 2); fprintf(stderr, "\n"); #endif /* Too wide */ if((w > 0) && (val_w > 0) && (val_w > w)) { i++; continue; } /* Too high */ if((h > 0) && (val_h > 0) && (val_h > h)) { i++; continue; } /* mimetype */ if(mimetype && (val_string = gavl_dictionary_get_string(dict, GAVL_META_MIMETYPE)) && strcmp(val_string, mimetype)) { i++; continue; } if(!(uri = gavl_dictionary_get_string(dict, GAVL_META_URI))) { i++; continue; } if(protocol && (!gavl_string_starts_with(uri, protocol) || !gavl_string_starts_with(uri + strlen(protocol), "://"))) { i++; continue; } /* Check if the file is accessible */ if(*uri == '/') { if(access(uri, R_OK)) { i++; continue; } } if((i_max < 0) || ((val_w > 0) && (w_max < val_w))) { i_max = i; w_max = val_w; } // fprintf(stderr, "i_max: %d w_max: %d\n", i_max, w_max); i++; } if(i_max < 0) i_max = 0; return get_image(m, key, i_max); } const gavl_dictionary_t * gavl_dictionary_get_image_max(const gavl_dictionary_t * m, const char * key, int w, int h, const char * mimetype) { return gavl_dictionary_get_image_max_proto(m, key, w, h, mimetype, NULL); } const char * gavl_dictionary_get_string_image_max(const gavl_dictionary_t * m, const char * key, int w, int h, const char * mimetype) { const gavl_dictionary_t * dict; if((dict = gavl_dictionary_get_image_max(m, key, w, h, mimetype))) return gavl_dictionary_get_string(dict, GAVL_META_URI); else return NULL; } gavl_dictionary_t * gavl_metadata_add_src(gavl_dictionary_t * m, const char * key, const char * mimetype, const char * location) { int idx; gavl_value_t val; gavl_value_t child_val; gavl_dictionary_t * ret; gavl_value_t * valp; const char * loc; idx = 0; if(location) { /* Check if the location is already there */ while((valp = gavl_dictionary_get_item_nc(m, key, idx))) { if((ret = gavl_value_get_dictionary_nc(valp)) && (loc = gavl_dictionary_get_string(ret, GAVL_META_URI)) && !strcmp(loc, location)) return NULL; else idx++; } } ret = NULL; idx = 0; gavl_value_init(&val); gavl_value_init(&child_val); ret = gavl_value_set_dictionary(&val); if(mimetype) gavl_dictionary_set_string(ret, GAVL_META_MIMETYPE, mimetype); if(location) gavl_dictionary_set_string(ret, GAVL_META_URI, location); gavl_dictionary_append_nocopy(m, key, &val); idx = gavl_dictionary_find(m, key, 0); valp = &m->entries[idx].v; if(valp->type == GAVL_TYPE_ARRAY) return valp->v.array->entries[valp->v.array->num_entries-1].v.dictionary; else if(valp->type == GAVL_TYPE_DICTIONARY) return valp->v.dictionary; else return NULL; } const gavl_dictionary_t * gavl_metadata_get_src(const gavl_dictionary_t * m, const char * key, int idx, const char ** mimetype, const char ** location) { const gavl_value_t * val; const gavl_dictionary_t * dict; if(!(val = gavl_dictionary_get_item(m, key, idx)) || (val->type != GAVL_TYPE_DICTIONARY)) return NULL; dict = val->v.dictionary; /* Src without URI is invalid */ if(!gavl_dictionary_get_string(dict, GAVL_META_URI)) return NULL; if(location) *location = gavl_dictionary_get_string(dict, GAVL_META_URI); if(mimetype) *mimetype = gavl_dictionary_get_string(dict, GAVL_META_MIMETYPE); return dict; } gavl_dictionary_t * gavl_metadata_get_src_nc(gavl_dictionary_t * m, const char * key, int idx) { gavl_value_t * val; gavl_dictionary_t * dict; if(!(val = gavl_dictionary_get_item_nc(m, key, idx)) || (val->type != GAVL_TYPE_DICTIONARY)) return NULL; dict = val->v.dictionary; return dict; } int gavl_metadata_has_src(const gavl_dictionary_t * m, const char * key, const char * location) { int i = 0; const char * loc; while(gavl_metadata_get_src(m, key, i, NULL, &loc)) { if(!strcmp(loc, location)) return 1; i++; } return 0; } bplaum-gavl-b9385e3/gavl/mix.c000066400000000000000000000652631513252040200161650ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include #include #include #include // #define DUMP_MATRIX /* * Mixing coefficients (should be made variable) */ /* If we have more output- than input channels */ #define FRONT_TO_REAR 1.0 #define FRONT_TO_CENTER 1.0 /* If we have more input than output channels */ #define CENTER_TO_LR 1.0 #define REAR_TO_FRONT 1.0 /* Macros */ #define MINUS_3dB 0.707 #define MINUS_6dB 0.5 #define CLAMP(x,a,b) if(xb)x=b; #ifdef DUMP_MATRIX static void input_channel_dump(gavl_mix_input_channel_t * c) { fprintf(stderr, "Index: %d, Factor [ 0x%08x %f ]\n", c->index, c->factor.f_int, c->factor.f_float); } static void output_channel_dump(gavl_mix_output_channel_t * c) { int i; fprintf(stderr, "Output channel %d, num_inputs: %d, func: %p\n", c->index, c->num_inputs, c->func); for(i = 0; i < c->num_inputs; i++) { input_channel_dump(&c->inputs[i]); } } #endif void gavl_mix_audio(gavl_audio_convert_context_t * ctx) { int i; for(i = 0; i < ctx->output_format.num_channels; i++) { if(ctx->mix_matrix->output_channels[i].func) ctx->mix_matrix->output_channels[i].func(&ctx->mix_matrix->output_channels[i], ctx->input_frame, ctx->output_frame); else /* This happens, if channels in the output are muted */ gavl_audio_frame_mute_channel(ctx->output_frame, &ctx->output_format, i); } } #ifdef DUMP_MATRIX static void dump_matrix(gavl_audio_format_t * in, gavl_audio_format_t * out, double matrix[GAVL_MAX_CHANNELS][GAVL_MAX_CHANNELS]) { int i, j; fprintf(stderr, "Mix Matrix:\n"); for(i = 0; i < out->num_channels; i++) { for(j = 0; j < in->num_channels; j++) { fprintf(stderr, "%5.3f ", matrix[i][j]); } fprintf(stderr, "\n"); } // fprintf(stderr, "End Mix Matrix\n"); } #endif static void normalize_matrix(double ret[GAVL_MAX_CHANNELS][GAVL_MAX_CHANNELS], int in_channels, int out_channels) { double max_ampl; double ampl; int i, j; /* Normalize matrix */ max_ampl = 0.0; for(i = 0; i < out_channels; i++) { ampl = 0.0; for(j = 0; j < in_channels; j++) ampl += fabs(ret[i][j]); if(ampl > max_ampl) max_ampl = ampl; } for(i = 0; i < out_channels; i++) for(j = 0; j < in_channels; j++) ret[i][j] /= max_ampl; } #define IN_INDEX(id) in_index = gavl_channel_index(in, id); #define OUT_INDEX(id) out_index = gavl_channel_index(out, id); static int init_matrix_predefined(double ret[GAVL_MAX_CHANNELS][GAVL_MAX_CHANNELS], gavl_audio_options_t * opt, gavl_audio_format_t * in, gavl_audio_format_t * out) { int input_front; int output_front; int input_rear; int output_rear; // int input_side; // int output_side; int input_lfe; int output_lfe; int in_index, out_index; float center_level; float rear_level; if(in->center_level > 0.0) center_level = in->center_level; else center_level = 1.0; if(in->rear_level > 0.0) rear_level = in->rear_level; else rear_level = 1.0; input_front = gavl_front_channels(in); output_front = gavl_front_channels(out); input_rear = gavl_rear_channels(in); output_rear = gavl_rear_channels(out); // input_side = gavl_side_channels(in); // output_side = gavl_side_channels(out); input_lfe = gavl_lfe_channels(in); output_lfe = gavl_lfe_channels(out); /* Check if we can handle this at all */ if((input_front > 3) || (output_front > 5) || (input_rear > 2) || (output_rear > 2) || (input_lfe > 1) || (output_lfe > 1) || (input_front + input_rear + input_lfe < in->num_channels) || (output_front + output_rear + output_lfe < out->num_channels)) { return 0; } /* Handle front channels */ switch(input_front) { case 1: switch(output_front) { case 1: /* 1 Front -> 1 Front */ OUT_INDEX(GAVL_CHID_FRONT_CENTER); IN_INDEX(GAVL_CHID_FRONT_CENTER); ret[out_index][in_index] = 1.0; break; case 2: /* 1 Front -> 2 Front */ OUT_INDEX(GAVL_CHID_FRONT_LEFT); IN_INDEX(GAVL_CHID_FRONT_CENTER); ret[out_index][in_index] = 1.0; OUT_INDEX(GAVL_CHID_FRONT_RIGHT); IN_INDEX(GAVL_CHID_FRONT_CENTER); ret[out_index][in_index] = 1.0; break; case 3: /* 1 Front -> 3 Front */ OUT_INDEX(GAVL_CHID_FRONT_LEFT); IN_INDEX(GAVL_CHID_FRONT_CENTER); ret[out_index][in_index] = 1.0; OUT_INDEX(GAVL_CHID_FRONT_RIGHT); IN_INDEX(GAVL_CHID_FRONT_CENTER); ret[out_index][in_index] = 1.0; OUT_INDEX(GAVL_CHID_FRONT_CENTER); IN_INDEX(GAVL_CHID_FRONT_CENTER); ret[out_index][in_index] = 1.0; break; case 4: /* 1 Front -> 4 Front */ OUT_INDEX(GAVL_CHID_FRONT_LEFT); IN_INDEX(GAVL_CHID_FRONT_CENTER); ret[out_index][in_index] = 1.0; OUT_INDEX(GAVL_CHID_FRONT_RIGHT); IN_INDEX(GAVL_CHID_FRONT_CENTER); ret[out_index][in_index] = 1.0; OUT_INDEX(GAVL_CHID_FRONT_CENTER_LEFT); IN_INDEX(GAVL_CHID_FRONT_CENTER); ret[out_index][in_index] = 1.0; OUT_INDEX(GAVL_CHID_FRONT_CENTER_RIGHT); IN_INDEX(GAVL_CHID_FRONT_CENTER); ret[out_index][in_index] = 1.0; break; case 5: /* 1 Front -> 5 Front */ OUT_INDEX(GAVL_CHID_FRONT_LEFT); IN_INDEX(GAVL_CHID_FRONT_CENTER); ret[out_index][in_index] = 1.0; OUT_INDEX(GAVL_CHID_FRONT_RIGHT); IN_INDEX(GAVL_CHID_FRONT_CENTER); ret[out_index][in_index] = 1.0; OUT_INDEX(GAVL_CHID_FRONT_CENTER); IN_INDEX(GAVL_CHID_FRONT_CENTER); ret[out_index][in_index] = 1.0; OUT_INDEX(GAVL_CHID_FRONT_CENTER_LEFT); IN_INDEX(GAVL_CHID_FRONT_CENTER); ret[out_index][in_index] = 1.0; OUT_INDEX(GAVL_CHID_FRONT_CENTER_RIGHT); IN_INDEX(GAVL_CHID_FRONT_CENTER); ret[out_index][in_index] = 1.0; break; } break; case 2: switch(output_front) { case 1: /* 2 Front -> 1 Front */ switch(opt->conversion_flags & GAVL_AUDIO_STEREO_TO_MONO_MASK) { case GAVL_AUDIO_STEREO_TO_MONO_LEFT: OUT_INDEX(GAVL_CHID_FRONT_CENTER); IN_INDEX(GAVL_CHID_FRONT_LEFT); ret[out_index][in_index] = 1.0; break; case GAVL_AUDIO_STEREO_TO_MONO_RIGHT: OUT_INDEX(GAVL_CHID_FRONT_CENTER); IN_INDEX(GAVL_CHID_FRONT_RIGHT); ret[out_index][in_index] = 1.0; break; case GAVL_AUDIO_STEREO_TO_MONO_MIX: OUT_INDEX(GAVL_CHID_FRONT_CENTER); IN_INDEX(GAVL_CHID_FRONT_LEFT); ret[out_index][in_index] = 1.0; OUT_INDEX(GAVL_CHID_FRONT_CENTER); IN_INDEX(GAVL_CHID_FRONT_RIGHT); ret[out_index][in_index] = 1.0; break; } break; case 2: /* 2 Front -> 2 Front */ OUT_INDEX(GAVL_CHID_FRONT_LEFT); IN_INDEX(GAVL_CHID_FRONT_LEFT); ret[out_index][in_index] = 1.0; OUT_INDEX(GAVL_CHID_FRONT_RIGHT); IN_INDEX(GAVL_CHID_FRONT_RIGHT); ret[out_index][in_index] = 1.0; break; case 3: /* 2 Front -> 3 Front */ OUT_INDEX(GAVL_CHID_FRONT_LEFT); IN_INDEX(GAVL_CHID_FRONT_LEFT); ret[out_index][in_index] = 1.0; OUT_INDEX(GAVL_CHID_FRONT_RIGHT); IN_INDEX(GAVL_CHID_FRONT_RIGHT); ret[out_index][in_index] = 1.0; OUT_INDEX(GAVL_CHID_FRONT_CENTER); IN_INDEX(GAVL_CHID_FRONT_LEFT); ret[out_index][in_index] = 0.5; OUT_INDEX(GAVL_CHID_FRONT_CENTER); IN_INDEX(GAVL_CHID_FRONT_RIGHT); ret[out_index][in_index] = 0.5; break; case 4: /* 2 Front -> 4 Front */ OUT_INDEX(GAVL_CHID_FRONT_LEFT); IN_INDEX(GAVL_CHID_FRONT_LEFT); ret[out_index][in_index] = 1.0; OUT_INDEX(GAVL_CHID_FRONT_RIGHT); IN_INDEX(GAVL_CHID_FRONT_RIGHT); ret[out_index][in_index] = 1.0; OUT_INDEX(GAVL_CHID_FRONT_CENTER_LEFT); IN_INDEX(GAVL_CHID_FRONT_LEFT); ret[out_index][in_index] = 0.5; OUT_INDEX(GAVL_CHID_FRONT_CENTER_RIGHT); IN_INDEX(GAVL_CHID_FRONT_RIGHT); ret[out_index][in_index] = 0.5; break; case 5: /* 2 Front -> 5 Front */ OUT_INDEX(GAVL_CHID_FRONT_LEFT); IN_INDEX(GAVL_CHID_FRONT_LEFT); ret[out_index][in_index] = 1.0; OUT_INDEX(GAVL_CHID_FRONT_RIGHT); IN_INDEX(GAVL_CHID_FRONT_RIGHT); ret[out_index][in_index] = 1.0; OUT_INDEX(GAVL_CHID_FRONT_CENTER_LEFT); IN_INDEX(GAVL_CHID_FRONT_LEFT); ret[out_index][in_index] = 0.5; OUT_INDEX(GAVL_CHID_FRONT_CENTER_RIGHT); IN_INDEX(GAVL_CHID_FRONT_RIGHT); ret[out_index][in_index] = 0.5; OUT_INDEX(GAVL_CHID_FRONT_CENTER); IN_INDEX(GAVL_CHID_FRONT_LEFT); ret[out_index][in_index] = 0.5; OUT_INDEX(GAVL_CHID_FRONT_CENTER); IN_INDEX(GAVL_CHID_FRONT_RIGHT); ret[out_index][in_index] = 0.5; break; } break; case 3: switch(output_front) { case 1: /* 3 Front -> 1 Front */ OUT_INDEX(GAVL_CHID_FRONT_CENTER); IN_INDEX(GAVL_CHID_FRONT_LEFT); ret[out_index][in_index] = 1.0; OUT_INDEX(GAVL_CHID_FRONT_CENTER); IN_INDEX(GAVL_CHID_FRONT_RIGHT); ret[out_index][in_index] = 1.0; OUT_INDEX(GAVL_CHID_FRONT_CENTER); IN_INDEX(GAVL_CHID_FRONT_CENTER); ret[out_index][in_index] = center_level; break; case 2: /* 3 Front -> 2 Front */ OUT_INDEX(GAVL_CHID_FRONT_LEFT); IN_INDEX(GAVL_CHID_FRONT_LEFT); ret[out_index][in_index] = 1.0; OUT_INDEX(GAVL_CHID_FRONT_RIGHT); IN_INDEX(GAVL_CHID_FRONT_RIGHT); ret[out_index][in_index] = 1.0; OUT_INDEX(GAVL_CHID_FRONT_LEFT); IN_INDEX(GAVL_CHID_FRONT_CENTER); ret[out_index][in_index] = center_level; OUT_INDEX(GAVL_CHID_FRONT_RIGHT); IN_INDEX(GAVL_CHID_FRONT_CENTER); ret[out_index][in_index] = center_level; break; case 3: /* 3 Front -> 3 Front */ OUT_INDEX(GAVL_CHID_FRONT_LEFT); IN_INDEX(GAVL_CHID_FRONT_LEFT); ret[out_index][in_index] = 1.0; OUT_INDEX(GAVL_CHID_FRONT_RIGHT); IN_INDEX(GAVL_CHID_FRONT_RIGHT); ret[out_index][in_index] = 1.0; OUT_INDEX(GAVL_CHID_FRONT_CENTER); IN_INDEX(GAVL_CHID_FRONT_CENTER); ret[out_index][in_index] = 1.0; break; case 4: /* 3 Front -> 4 Front */ OUT_INDEX(GAVL_CHID_FRONT_LEFT); IN_INDEX(GAVL_CHID_FRONT_LEFT); ret[out_index][in_index] = 1.0; OUT_INDEX(GAVL_CHID_FRONT_RIGHT); IN_INDEX(GAVL_CHID_FRONT_RIGHT); ret[out_index][in_index] = 1.0; OUT_INDEX(GAVL_CHID_FRONT_CENTER_LEFT); OUT_INDEX(GAVL_CHID_FRONT_CENTER_LEFT); ret[out_index][in_index] = 0.5; OUT_INDEX(GAVL_CHID_FRONT_CENTER_RIGHT); IN_INDEX(GAVL_CHID_FRONT_CENTER); ret[out_index][in_index] = 0.5; break; case 5: /* 3 Front -> 5 Front */ OUT_INDEX(GAVL_CHID_FRONT_LEFT); IN_INDEX(GAVL_CHID_FRONT_LEFT); ret[out_index][in_index] = 1.0; OUT_INDEX(GAVL_CHID_FRONT_RIGHT); IN_INDEX(GAVL_CHID_FRONT_RIGHT); ret[out_index][in_index] = 1.0; OUT_INDEX(GAVL_CHID_FRONT_CENTER_LEFT); IN_INDEX(GAVL_CHID_FRONT_CENTER); ret[out_index][in_index] = 0.5; OUT_INDEX(GAVL_CHID_FRONT_CENTER_RIGHT); IN_INDEX(GAVL_CHID_FRONT_CENTER); ret[out_index][in_index] = 0.5; OUT_INDEX(GAVL_CHID_FRONT_CENTER); IN_INDEX(GAVL_CHID_FRONT_CENTER); ret[out_index][in_index] = 0.5; break; } break; } /* Handle rear channels */ switch(input_rear) { case 0: switch(output_rear) { case 0: /* 0 Rear -> 0 Rear */ break; case 1: /* 0 Rear -> 1 Rear */ switch(opt->conversion_flags & GAVL_AUDIO_FRONT_TO_REAR_MASK) { case GAVL_AUDIO_FRONT_TO_REAR_COPY: if(input_front > 1) { OUT_INDEX(GAVL_CHID_REAR_CENTER); IN_INDEX(GAVL_CHID_FRONT_LEFT); ret[out_index][in_index] = 0.5; OUT_INDEX(GAVL_CHID_REAR_CENTER); IN_INDEX(GAVL_CHID_FRONT_RIGHT); ret[out_index][in_index] = 0.5; } else { OUT_INDEX(GAVL_CHID_REAR_CENTER); IN_INDEX(GAVL_CHID_FRONT_CENTER); ret[out_index][in_index] = 1.0; } break; case GAVL_AUDIO_FRONT_TO_REAR_MUTE: break; case GAVL_AUDIO_FRONT_TO_REAR_DIFF: if(input_front > 1) { OUT_INDEX(GAVL_CHID_REAR_CENTER); IN_INDEX(GAVL_CHID_FRONT_LEFT); ret[out_index][in_index] = -0.5; OUT_INDEX(GAVL_CHID_REAR_CENTER); IN_INDEX(GAVL_CHID_FRONT_RIGHT); ret[out_index][in_index] = 0.5; } else { OUT_INDEX(GAVL_CHID_REAR_CENTER); IN_INDEX(GAVL_CHID_FRONT_CENTER); ret[out_index][in_index] = 1.0; } } break; case 2: /* 0 Rear -> 2 Rear */ switch(opt->conversion_flags & GAVL_AUDIO_FRONT_TO_REAR_MASK) { case GAVL_AUDIO_FRONT_TO_REAR_COPY: if(input_front > 1) { OUT_INDEX(GAVL_CHID_REAR_LEFT); IN_INDEX(GAVL_CHID_FRONT_LEFT); ret[out_index][in_index] = 1.0; OUT_INDEX(GAVL_CHID_REAR_RIGHT); IN_INDEX(GAVL_CHID_FRONT_RIGHT); ret[out_index][in_index] = 1.0; } else { OUT_INDEX(GAVL_CHID_REAR_LEFT); IN_INDEX(GAVL_CHID_FRONT_CENTER); ret[out_index][in_index] = 1.0; OUT_INDEX(GAVL_CHID_REAR_RIGHT); IN_INDEX(GAVL_CHID_FRONT_CENTER); ret[out_index][in_index] = 1.0; } break; case GAVL_AUDIO_FRONT_TO_REAR_MUTE: break; case GAVL_AUDIO_FRONT_TO_REAR_DIFF: if(input_front > 1) { OUT_INDEX(GAVL_CHID_REAR_LEFT); IN_INDEX(GAVL_CHID_FRONT_LEFT); ret[out_index][in_index] = -0.5; OUT_INDEX(GAVL_CHID_REAR_LEFT); IN_INDEX(GAVL_CHID_FRONT_RIGHT); ret[out_index][in_index] = 0.5; OUT_INDEX(GAVL_CHID_REAR_RIGHT); IN_INDEX(GAVL_CHID_FRONT_LEFT); ret[out_index][in_index] = -0.5; OUT_INDEX(GAVL_CHID_REAR_RIGHT); IN_INDEX(GAVL_CHID_FRONT_RIGHT); ret[out_index][in_index] = 0.5; } else { OUT_INDEX(GAVL_CHID_REAR_LEFT); IN_INDEX(GAVL_CHID_FRONT_CENTER); ret[out_index][in_index] = 1.0; OUT_INDEX(GAVL_CHID_REAR_RIGHT); IN_INDEX(GAVL_CHID_FRONT_CENTER); ret[out_index][in_index] = 1.0; } } break; } break; case 1: switch(output_rear) { case 0: /* 1 Rear -> 0 Rear */ switch(output_front) { case 1: /* 1 Rear -> 1 Front */ OUT_INDEX(GAVL_CHID_FRONT_CENTER); IN_INDEX(GAVL_CHID_REAR_CENTER); ret[out_index][in_index] = rear_level; break; case 2: /* 1 Rear -> 2 Front */ case 3: OUT_INDEX(GAVL_CHID_FRONT_LEFT); IN_INDEX(GAVL_CHID_REAR_CENTER); ret[out_index][in_index] = rear_level; OUT_INDEX(GAVL_CHID_FRONT_RIGHT); IN_INDEX(GAVL_CHID_REAR_CENTER); ret[out_index][in_index] = rear_level; break; } break; case 1: /* 1 Rear -> 1 Rear */ OUT_INDEX(GAVL_CHID_REAR_CENTER); IN_INDEX(GAVL_CHID_REAR_CENTER); ret[out_index][in_index] = 1.0; break; case 2: /* 1 Rear -> 2 Rear */ OUT_INDEX(GAVL_CHID_REAR_LEFT); IN_INDEX(GAVL_CHID_REAR_CENTER); ret[out_index][in_index] = 1.0; OUT_INDEX(GAVL_CHID_REAR_RIGHT); IN_INDEX(GAVL_CHID_REAR_CENTER); ret[out_index][in_index] = 1.0; break; } break; case 2: switch(output_rear) { case 0: /* 2 Rear -> 0 Rear */ if(output_front == 1) { /* 2 Rear -> 1 Front */ OUT_INDEX(GAVL_CHID_FRONT_CENTER); IN_INDEX(GAVL_CHID_REAR_LEFT); ret[out_index][in_index] = rear_level; OUT_INDEX(GAVL_CHID_FRONT_CENTER); IN_INDEX(GAVL_CHID_REAR_RIGHT); ret[out_index][in_index] = rear_level; } else { OUT_INDEX(GAVL_CHID_FRONT_LEFT); IN_INDEX(GAVL_CHID_REAR_LEFT); ret[out_index][in_index] = rear_level; OUT_INDEX(GAVL_CHID_FRONT_RIGHT); IN_INDEX(GAVL_CHID_REAR_RIGHT); ret[out_index][in_index] = rear_level; break; } break; case 1: /* 2 Rear -> 1 Rear */ OUT_INDEX(GAVL_CHID_REAR_CENTER); IN_INDEX(GAVL_CHID_REAR_LEFT); ret[out_index][in_index] = 1.0; OUT_INDEX(GAVL_CHID_REAR_CENTER); IN_INDEX(GAVL_CHID_REAR_LEFT); ret[out_index][in_index] = 1.0; break; case 2: /* 2 Rear -> 2 Rear */ OUT_INDEX(GAVL_CHID_REAR_LEFT); IN_INDEX(GAVL_CHID_REAR_LEFT); ret[out_index][in_index] = 1.0; OUT_INDEX(GAVL_CHID_REAR_RIGHT); IN_INDEX(GAVL_CHID_REAR_RIGHT); ret[out_index][in_index] = 1.0; break; case 3: /* 2 Rear -> 3 Rear */ OUT_INDEX(GAVL_CHID_REAR_LEFT); IN_INDEX(GAVL_CHID_REAR_LEFT); ret[out_index][in_index] = 1.0; OUT_INDEX(GAVL_CHID_REAR_RIGHT); IN_INDEX(GAVL_CHID_REAR_RIGHT); ret[out_index][in_index] = 1.0; OUT_INDEX(GAVL_CHID_REAR_CENTER); IN_INDEX(GAVL_CHID_REAR_LEFT); ret[out_index][in_index] = 0.5; OUT_INDEX(GAVL_CHID_REAR_CENTER); IN_INDEX(GAVL_CHID_REAR_RIGHT); ret[out_index][in_index] = 0.5; break; } break; } /* Handle LFE */ if(input_lfe && output_lfe) { OUT_INDEX(GAVL_CHID_LFE); IN_INDEX(GAVL_CHID_LFE); ret[out_index][in_index] = 1.0; } normalize_matrix(ret, in->num_channels, out->num_channels); #ifdef DUMP_MATRIX dump_matrix(in, out, ret); #endif return 1; } static void init_matrix(double ret[GAVL_MAX_CHANNELS][GAVL_MAX_CHANNELS], gavl_audio_options_t * opt, gavl_audio_format_t * in, gavl_audio_format_t * out) { int i, j; #if 0 fprintf(stderr, "INIT MATRIX\n"); fprintf(stderr, "In:\n"); gavl_audio_format_dump(in); fprintf(stderr, "Out:\n"); gavl_audio_format_dump(out); #endif /* 1. Check for user defined matrix */ if(opt->mix_matrix) { for(i = 0; i < out->num_channels; i++) { for(j = 0; j < in->num_channels; j++) { ret[i][j] = opt->mix_matrix[i][j]; } } if(opt->conversion_flags & GAVL_AUDIO_NORMALIZE_MIX_MATRIX) normalize_matrix(ret, in->num_channels, out->num_channels); #ifdef DUMP_MATRIX dump_matrix(in, out, ret); #endif return; } /* 2. Check for predefined matrix */ if(init_matrix_predefined(ret, opt, in, out)) return; /* 3. Default (possibly wrong) */ for(i = 0; i < out->num_channels; i++) { for(j = 0; j < in->num_channels; j++) { ret[i][j] = (i == j) ? 1.0 : 0.0; } } #ifdef DUMP_MATRIX dump_matrix(in, out, ret); #endif return; } static void set_factor(gavl_mix_input_channel_t * ret, double fac, gavl_sample_format_t format) { switch(format) { case GAVL_SAMPLE_U8: case GAVL_SAMPLE_S8: ret->factor.f_int = (int)(fac * INT8_MAX + 0.5); break; case GAVL_SAMPLE_U16: case GAVL_SAMPLE_S16: ret->factor.f_int = (int)(fac * INT16_MAX + 0.5); break; case GAVL_SAMPLE_S32: ret->factor.f_int = (int)(fac * (INT32_MAX>>1) + 0.5); break; case GAVL_SAMPLE_FLOAT: case GAVL_SAMPLE_DOUBLE: ret->factor.f_float = fac; break; case GAVL_SAMPLE_NONE: break; } } static void init_context(gavl_mix_matrix_t * ctx, double matrix[GAVL_MAX_CHANNELS][GAVL_MAX_CHANNELS], gavl_audio_format_t * in_format, gavl_audio_format_t * out_format) { int i, j; int num_inputs; gavl_mixer_table_t tab; // fprintf(stderr, "init_context..."); memset(&tab, 0, sizeof(tab)); gavl_setup_mix_funcs_c(&tab, in_format); for(i = 0; i < out_format->num_channels; i++) { ctx->output_channels[i].index = i; num_inputs = 0; for(j = 0; j < in_format->num_channels; j++) { // fprintf(stderr, "matrix[%d][%d]: %f\n", // i, j, matrix[i][j]); if(matrix[i][j] != 0.0) { set_factor(&ctx->output_channels[i].inputs[num_inputs], matrix[i][j], in_format->sample_format); ctx->output_channels[i].inputs[num_inputs].index = j; num_inputs++; } } ctx->output_channels[i].num_inputs = num_inputs; // fprintf(stderr, "Fac: %f\n", matrix[i][ctx->output_channels[i].inputs[0].index]); /* Check, if we just need to copy */ if((ctx->output_channels[i].num_inputs == 1) && (fabs(matrix[i][ctx->output_channels[i].inputs[0].index]- 1.0) < 0.01)) { ctx->output_channels[i].func = tab.copy_func; #ifdef DUMP_MATRIX fprintf(stderr, "Copying channel %d [%s] to %d [%s]\n", ctx->output_channels[i].inputs[0].index, gavl_channel_id_to_string(in_format->channel_locations[ctx->output_channels[i].inputs[0].index]), i, gavl_channel_id_to_string(out_format->channel_locations[i])); #endif } else { switch(ctx->output_channels[i].num_inputs) { case 0: break; case 1: ctx->output_channels[i].func = tab.mix_1_to_1; break; case 2: ctx->output_channels[i].func = tab.mix_2_to_1; break; case 3: ctx->output_channels[i].func = tab.mix_3_to_1; break; case 4: ctx->output_channels[i].func = tab.mix_4_to_1; break; case 5: ctx->output_channels[i].func = tab.mix_5_to_1; break; case 6: ctx->output_channels[i].func = tab.mix_6_to_1; break; default: ctx->output_channels[i].func = tab.mix_all_to_1; break; } } #ifdef DUMP_MATRIX output_channel_dump(&ctx->output_channels[i]); #endif } // fprintf(stderr, "done\n"); } gavl_mix_matrix_t * gavl_create_mix_matrix(gavl_audio_options_t * opt, gavl_audio_format_t * in, gavl_audio_format_t * out) { double mix_matrix[GAVL_MAX_CHANNELS][GAVL_MAX_CHANNELS]; gavl_mix_matrix_t * ret; ret = calloc(1, sizeof(*ret)); memset(&mix_matrix, 0, sizeof(mix_matrix)); // gavl_audio_format_dump(out); // fprintf(stderr, "Init Matrix..."); init_matrix(mix_matrix, opt, in, out); // fprintf(stderr, "done\n"); // fprintf(stderr, "Init mix context\n"); init_context(ret, mix_matrix, in, out); // fprintf(stderr, "done\n"); return ret; } void gavl_destroy_mix_matrix(gavl_mix_matrix_t * ctx) { free(ctx); } gavl_audio_convert_context_t * gavl_mix_context_create(gavl_audio_options_t * opt, gavl_audio_format_t * in_format, gavl_audio_format_t * out_format) { gavl_audio_convert_context_t * ret; #if 0 fprintf(stderr, "gavl_mix_context_create\n"); gavl_audio_format_dump(in_format); gavl_audio_format_dump(out_format); #endif ret = gavl_audio_convert_context_create(in_format, out_format); ret->output_format.num_channels = out_format->num_channels; memcpy(ret->output_format.channel_locations, out_format->channel_locations, GAVL_MAX_CHANNELS * sizeof(out_format->channel_locations[0])); ret->mix_matrix = gavl_create_mix_matrix(opt, &ret->input_format, &ret->output_format); ret->func = gavl_mix_audio; return ret; } bplaum-gavl-b9385e3/gavl/mmx/000077500000000000000000000000001513252040200160115ustar00rootroot00000000000000bplaum-gavl-b9385e3/gavl/mmx/Makefile.am000066400000000000000000000005001513252040200200400ustar00rootroot00000000000000AM_CFLAGS = @LIBGAVL_CFLAGS@ noinst_LTLIBRARIES = libgavl_mmx.la libgavl_mmx_la_SOURCES = \ scale_x_mmx.c \ scale_y_mmx.c \ deinterlace_blend_mmx.c \ dsp_mmx.c \ transform_mmx.c \ rgb_rgb_mmx.c \ rgb_yuv_mmx.c \ yuv_rgb_mmx.c \ yuv_yuv_mmx.c noinst_HEADERS=mmx.h mmx_macros.h interpolate.h scale_y.h scale_y_linear.h bplaum-gavl-b9385e3/gavl/mmx/_rgb_rgb_mmx.c000066400000000000000000002642541513252040200206160ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #define INTERPOLATE_USE_16 #include "interpolate.h" #ifndef MMXEXT static const mmx_t rgb_rgb_rgb32_upper_mask = { 0x00ff000000ff0000LL }; static const mmx_t rgb_rgb_rgb32_middle_mask = { 0x0000ff000000ff00LL }; static const mmx_t rgb_rgb_rgb32_lower_mask = { 0x000000ff000000ffLL }; static const mmx_t rgb_rgb_rgb32_upper_lower_mask = { 0x00ff00ff00ff00ffLL }; static const mmx_t rgba32_alpha_mask = { 0xFF000000FF000000LL }; static const mmx_t rgb_rgb_rgb16_upper_mask = { 0xf800f800f800f800LL }; static const mmx_t rgb_rgb_rgb16_middle_mask = { 0x07e007e007e007e0LL }; static const mmx_t rgb_rgb_rgb16_lower_mask = { 0x001f001f001f001fLL }; static const mmx_t rgb_rgb_rgb15_upper_mask = { 0x7C007C007C007C00LL }; static const mmx_t rgb_rgb_rgb15_middle_mask = { 0x03e003e003e003e0LL }; static const mmx_t rgb_rgb_rgb15_lower_mask = { 0x001f001f001f001fLL }; static const mmx_t rgb_rgb_rgb15_up_mask = { 0x7fe07fe07fe07fe0LL }; static const mmx_t rgb_rgb_rgb16_up_mask = { 0xffe0ffe0ffe0ffe0LL }; /* * Macros for pixel conversion */ /* * Load pixels for 32 bit formats */ #define LOAD_32 movq_m2r(*src,mm0);/* mm0: 00 B1 G1 R1 00 B0 G0 R0 */\ movq_m2r(*(src+8),mm1);/* mm1: 00 B3 G3 R3 00 B2 G2 R2 */\ movq_m2r(*(src+16),mm2);/* mm2: 00 B5 G5 R5 00 B4 G4 R4 */\ movq_m2r(*(src+24),mm3);/* mm3: 00 B7 G7 R7 00 B6 G6 R6 */ /* * Load pixels for 24 bit formats */ static const mmx_t rgb_rgb_rgb24_l = { 0x0000000000FFFFFFLL }; static const mmx_t rgb_rgb_rgb24_u = { 0x0000FFFFFF000000LL }; #define LOAD_24 movq_m2r(*src,mm0);\ movd_m2r(*(src+8),mm1);\ movq_r2r(mm0, mm4);\ psrlq_i2r(48, mm4);\ psllq_i2r(16 , mm1);\ por_r2r(mm4, mm1);\ movq_r2r(mm0, mm4);\ pand_m2r(rgb_rgb_rgb24_l, mm0);\ pand_m2r(rgb_rgb_rgb24_u, mm4);\ psllq_i2r(8, mm4);\ por_r2r(mm4, mm0);\ movq_r2r(mm1, mm4);\ pand_m2r(rgb_rgb_rgb24_l, mm1);\ pand_m2r(rgb_rgb_rgb24_u, mm4);\ psllq_i2r(8, mm4);\ por_r2r(mm4, mm1);\ movq_m2r(*(src+12),mm2);\ movd_m2r(*(src+20),mm3);\ movq_r2r(mm2, mm4);\ psrlq_i2r(48, mm4);\ psllq_i2r(16 , mm3);\ por_r2r(mm4, mm3);\ movq_r2r(mm2, mm4);\ pand_m2r(rgb_rgb_rgb24_l, mm2);\ pand_m2r(rgb_rgb_rgb24_u, mm4);\ psllq_i2r(8, mm4);\ por_r2r(mm4, mm2);\ movq_r2r(mm3, mm4);\ pand_m2r(rgb_rgb_rgb24_l, mm3);\ pand_m2r(rgb_rgb_rgb24_u, mm4);\ psllq_i2r(8, mm4);\ por_r2r(mm4, mm3); /* * Load pixels for 15/16 bit formats */ #define LOAD_16 PREFETCH(src);\ movq_m2r(*src,mm0);/* mm0: P3 P3 P2 P2 P1 P1 P0 P0 */\ movq_m2r(*(src+8),mm1);/* mm1: P7 P7 P6 P6 P5 P5 P4 P4 */ /* * Write pixels for 32 bit formats */ #define WRITE_32 MOVQ_R2M(mm0,*dst);/* mm0: 00 B1 G1 R1 00 B0 G0 R0 */\ MOVQ_R2M(mm1,*(dst+8));/* mm1: 00 B3 G3 R3 00 B2 G2 R2 */\ MOVQ_R2M(mm2,*(dst+16));/* mm2: 00 B5 G5 R5 00 B4 G4 R4 */\ MOVQ_R2M(mm3,*(dst+24));/* mm3: 00 B7 G7 R7 00 B6 G6 R6 */ /* * Write RGBA32, must call INIT_WRITE_RGBA32 before */ #define INIT_WRITE_RGBA_32 movq_m2r(rgba32_alpha_mask, mm7); #define WRITE_RGBA_32 por_r2r(mm7, mm0);\ por_r2r(mm7, mm1);\ por_r2r(mm7, mm2);\ por_r2r(mm7, mm3);\ MOVQ_R2M(mm0,*dst);/* mm0: 00 B1 G1 R1 00 B0 G0 R0 */\ MOVQ_R2M(mm1,*(dst+8));/* mm1: 00 B3 G3 R3 00 B2 G2 R2 */\ MOVQ_R2M(mm2,*(dst+16));/* mm2: 00 B5 G5 R5 00 B4 G4 R4 */\ MOVQ_R2M(mm3,*(dst+24));/* mm3: 00 B7 G7 R7 00 B6 G6 R6 */ /* * Write pixels for 24 bit formats (Start format is RGB32) */ static const mmx_t rgb_rgb_lower_dword = { 0x00000000FFFFFFFFLL }; static const mmx_t rgb_rgb_upper_dword = { 0xFFFFFFFF00000000LL }; static const mmx_t write_24_lower_mask = { 0x0000000000FFFFFFLL }; static const mmx_t write_24_upper_mask = { 0x00FFFFFF00000000LL }; #define WRITE_24 movq_r2r(mm0, mm4);\ pand_m2r(write_24_upper_mask, mm4);\ pand_m2r(write_24_lower_mask, mm0);\ psrlq_i2r(8, mm4);\ por_r2r(mm4, mm0);\ movq_r2r(mm1, mm4);\ pand_m2r(write_24_upper_mask, mm4);\ pand_m2r(write_24_lower_mask, mm1);\ psrlq_i2r(8, mm4);\ por_r2r(mm4, mm1);\ movq_r2r(mm2, mm4);\ pand_m2r(write_24_upper_mask, mm4);\ pand_m2r(write_24_lower_mask, mm2);\ psrlq_i2r(8, mm4);\ por_r2r(mm4, mm2);\ movq_r2r(mm3, mm4);\ pand_m2r(write_24_upper_mask, mm4);\ pand_m2r(write_24_lower_mask, mm3);\ psrlq_i2r(8, mm4);\ por_r2r(mm4, mm3);\ movq_r2r(mm1, mm5);\ psllq_i2r(48, mm5);\ por_r2r(mm5, mm0);\ psrlq_i2r(16, mm1);\ movq_r2r(mm3, mm5);\ psllq_i2r(48, mm5);\ por_r2r(mm5, mm2);\ psrlq_i2r(16, mm3);\ MOVQ_R2M(mm0,*dst);\ movd_r2m(mm1,*(dst+8));\ MOVQ_R2M(mm2,*(dst+12));\ movd_r2m(mm3,*(dst+20)); /* * Write pixels for 15/16 bit formats */ #define WRITE_16 MOVQ_R2M(mm0,*dst);/* mm0: P3 P3 P2 P2 P1 P1 P0 P0 */\ MOVQ_R2M(mm1,*(dst+8));/* mm1: P7 P7 P6 P6 P5 P5 P4 P4 */ #define INIT_SWAP_16 movq_m2r(rgb_rgb_rgb16_upper_mask, mm4);\ movq_m2r(rgb_rgb_rgb16_lower_mask, mm5);\ movq_m2r(rgb_rgb_rgb16_middle_mask, mm6); #define SWAP_16 movq_r2r(mm0, mm2);\ movq_r2r(mm0, mm3);\ pand_r2r(mm4, mm2);\ pand_r2r(mm5, mm3);\ pand_r2r(mm6, mm0);\ psrlq_i2r(11,mm2);\ psllq_i2r(11,mm3);\ por_r2r(mm2,mm0);\ por_r2r(mm3,mm0);\ movq_r2r(mm1, mm2);\ movq_r2r(mm1, mm3);\ pand_r2r(mm4, mm2);\ pand_r2r(mm5, mm3);\ pand_r2r(mm6, mm1);\ psrlq_i2r(11,mm2);\ psllq_i2r(11,mm3);\ por_r2r(mm2,mm1);\ por_r2r(mm3,mm1); #define INIT_SWAP_16_TO_15 movq_m2r(rgb_rgb_rgb16_upper_mask, mm4);\ movq_m2r(rgb_rgb_rgb16_lower_mask, mm5);\ movq_m2r(rgb_rgb_rgb16_middle_mask, mm6);\ movq_m2r(rgb_rgb_rgb15_middle_mask, mm7); #define SWAP_16_TO_15 movq_r2r(mm0, mm2);\ movq_r2r(mm0, mm3);\ pand_r2r(mm4, mm2);\ pand_r2r(mm5, mm3);\ pand_r2r(mm6, mm0);\ psrlq_i2r(11,mm2);\ psllq_i2r(10,mm3);\ psrlq_i2r(1,mm0);\ pand_r2r(mm7, mm0);\ por_r2r(mm2,mm0);\ por_r2r(mm3,mm0);\ movq_r2r(mm1, mm2);\ movq_r2r(mm1, mm3);\ pand_r2r(mm4, mm2);\ pand_r2r(mm5, mm3);\ pand_r2r(mm6, mm1);\ psrlq_i2r(11,mm2);\ psllq_i2r(10,mm3);\ psrlq_i2r(1,mm1);\ pand_r2r(mm7, mm1);\ por_r2r(mm2,mm1);\ por_r2r(mm3,mm1); #define INIT_SWAP_15 movq_m2r(rgb_rgb_rgb15_upper_mask, mm4);\ movq_m2r(rgb_rgb_rgb15_lower_mask, mm5);\ movq_m2r(rgb_rgb_rgb15_middle_mask, mm6); #define SWAP_15 movq_r2r(mm0, mm2);\ movq_r2r(mm0, mm3);\ pand_r2r(mm4, mm2);\ pand_r2r(mm5, mm3);\ pand_r2r(mm6, mm0);\ psrlq_i2r(10,mm2);\ psllq_i2r(10,mm3);\ por_r2r(mm2,mm0);\ por_r2r(mm3,mm0);\ movq_r2r(mm1, mm2);\ movq_r2r(mm1, mm3);\ pand_r2r(mm4, mm2);\ pand_r2r(mm5, mm3);\ pand_r2r(mm6, mm1);\ psrlq_i2r(10,mm2);\ psllq_i2r(10,mm3);\ por_r2r(mm2,mm1);\ por_r2r(mm3,mm1); #define INIT_SWAP_15_TO_16 movq_m2r(rgb_rgb_rgb15_upper_mask, mm4);\ movq_m2r(rgb_rgb_rgb15_lower_mask, mm5);\ movq_m2r(rgb_rgb_rgb15_middle_mask, mm6); #define SWAP_15_TO_16 movq_r2r(mm0, mm2);\ movq_r2r(mm0, mm3);\ pand_r2r(mm4, mm2);\ pand_r2r(mm5, mm3);\ pand_r2r(mm6, mm0);\ psrlq_i2r(10,mm2);\ psllq_i2r(11,mm3);\ psllq_i2r(1,mm0);\ por_r2r(mm2,mm0);\ por_r2r(mm3,mm0);\ movq_r2r(mm1, mm2);\ movq_r2r(mm1, mm3);\ pand_r2r(mm4, mm2);\ pand_r2r(mm5, mm3);\ pand_r2r(mm6, mm1);\ psrlq_i2r(10,mm2);\ psllq_i2r(11,mm3);\ psllq_i2r(1,mm1);\ por_r2r(mm2,mm1);\ por_r2r(mm3,mm1); #define SWAP_32 movq_r2r(mm0, mm4);\ movq_r2r(mm0, mm5);\ pand_m2r(rgb_rgb_rgb32_middle_mask, mm0);\ pand_m2r(rgb_rgb_rgb32_lower_mask, mm4);\ pand_m2r(rgb_rgb_rgb32_upper_mask, mm5);\ psllq_i2r(16, mm4);\ psrlq_i2r(16, mm5);\ por_r2r(mm4, mm0);\ por_r2r(mm5, mm0);\ movq_r2r(mm1, mm4);\ movq_r2r(mm1, mm5);\ pand_m2r(rgb_rgb_rgb32_middle_mask, mm1);\ pand_m2r(rgb_rgb_rgb32_lower_mask, mm4);\ pand_m2r(rgb_rgb_rgb32_upper_mask, mm5);\ psllq_i2r(16, mm4);\ psrlq_i2r(16, mm5);\ por_r2r(mm4, mm1);\ por_r2r(mm5, mm1);\ movq_r2r(mm2, mm4);\ movq_r2r(mm2, mm5);\ pand_m2r(rgb_rgb_rgb32_middle_mask, mm2);\ pand_m2r(rgb_rgb_rgb32_lower_mask, mm4);\ pand_m2r(rgb_rgb_rgb32_upper_mask, mm5);\ psllq_i2r(16, mm4);\ psrlq_i2r(16, mm5);\ por_r2r(mm4, mm2);\ por_r2r(mm5, mm2);\ movq_r2r(mm3, mm4);\ movq_r2r(mm3, mm5);\ pand_m2r(rgb_rgb_rgb32_middle_mask, mm3);\ pand_m2r(rgb_rgb_rgb32_lower_mask, mm4);\ pand_m2r(rgb_rgb_rgb32_upper_mask, mm5);\ psllq_i2r(16, mm4);\ psrlq_i2r(16, mm5);\ por_r2r(mm4, mm3);\ por_r2r(mm5, mm3); static const mmx_t rgb_rgb_swap_24_mask_11 = { 0x0000FF0000FF0000LL }; static const mmx_t rgb_rgb_swap_24_mask_12 = { 0x00000000FF0000FFLL }; static const mmx_t rgb_rgb_swap_24_mask_13 = { 0xFFFF00FF0000FF00LL }; static const mmx_t rgb_rgb_swap_24_mask_21 = { 0xFF00FFFFFFFFFFFFLL }; static const mmx_t rgb_rgb_swap_24_mask_22 = { 0x00000000000000FFLL }; static const mmx_t rgb_rgb_swap_24_mask_23 = { 0x00000000FFFFFF00LL }; static const mmx_t rgb_rgb_swap_24_mask_31 = { 0x00000000FF000000LL }; static const mmx_t rgb_rgb_swap_24_mask_32 = { 0x000000000000FF00LL }; static const mmx_t rgb_rgb_swap_24_mask_33 = { 0x0000000000FF00FFLL }; #define SWAP_24 movq_m2r(*src, mm0);\ movd_m2r(*(src+8), mm1);\ movq_r2r(mm0, mm2);\ movq_r2r(mm0, mm3);\ pand_m2r(rgb_rgb_swap_24_mask_13, mm0);\ pand_m2r(rgb_rgb_swap_24_mask_12, mm2);\ pand_m2r(rgb_rgb_swap_24_mask_11, mm3);\ psrlq_i2r(16, mm3);\ psllq_i2r(16, mm2);\ por_r2r(mm2, mm0);\ por_r2r(mm3, mm0);\ movq_r2r(mm0, mm2);\ movq_r2r(mm1, mm3);\ pand_m2r(rgb_rgb_swap_24_mask_21, mm0);\ pand_m2r(rgb_rgb_swap_24_mask_22, mm3);\ psllq_i2r(48, mm3);\ por_r2r(mm3, mm0);\ pand_m2r(rgb_rgb_swap_24_mask_23, mm1);\ psrlq_i2r(48, mm2);\ pand_m2r(rgb_rgb_swap_24_mask_22, mm2);\ por_r2r(mm2, mm1);\ movq_r2r(mm1, mm2);\ movq_r2r(mm1, mm3);\ pand_m2r(rgb_rgb_swap_24_mask_31, mm2);\ pand_m2r(rgb_rgb_swap_24_mask_32, mm3);\ pand_m2r(rgb_rgb_swap_24_mask_33, mm1);\ psrlq_i2r(16, mm2);\ psllq_i2r(16, mm3);\ por_r2r(mm3, mm1);\ por_r2r(mm2, mm1);\ MOVQ_R2M(mm0, *dst);\ movd_r2m(mm1, *(dst+8));\ movq_m2r(*(src+12), mm0);\ movd_m2r(*(src+20), mm1);\ movq_r2r(mm0, mm2);\ movq_r2r(mm0, mm3);\ pand_m2r(rgb_rgb_swap_24_mask_13, mm0);\ pand_m2r(rgb_rgb_swap_24_mask_12, mm2);\ pand_m2r(rgb_rgb_swap_24_mask_11, mm3);\ psrlq_i2r(16, mm3);\ psllq_i2r(16, mm2);\ por_r2r(mm2, mm0);\ por_r2r(mm3, mm0);\ movq_r2r(mm0, mm2);\ movq_r2r(mm1, mm3);\ pand_m2r(rgb_rgb_swap_24_mask_21, mm0);\ pand_m2r(rgb_rgb_swap_24_mask_22, mm3);\ psllq_i2r(48, mm3);\ por_r2r(mm3, mm0);\ pand_m2r(rgb_rgb_swap_24_mask_23, mm1);\ psrlq_i2r(48, mm2);\ pand_m2r(rgb_rgb_swap_24_mask_22, mm2);\ por_r2r(mm2, mm1);\ movq_r2r(mm1, mm2);\ movq_r2r(mm1, mm3);\ pand_m2r(rgb_rgb_swap_24_mask_31, mm2);\ pand_m2r(rgb_rgb_swap_24_mask_32, mm3);\ pand_m2r(rgb_rgb_swap_24_mask_33, mm1);\ psrlq_i2r(16, mm2);\ psllq_i2r(16, mm3);\ por_r2r(mm3, mm1);\ por_r2r(mm2, mm1);\ MOVQ_R2M(mm0, *(dst+12));\ movd_r2m(mm1, *(dst+20)); /* Pack 15 bits to 16 bits */ #define INIT_RGB_15_TO_16 movq_m2r(rgb_rgb_rgb15_up_mask, mm3);\ movq_m2r(rgb_rgb_rgb15_lower_mask, mm4); \ #define RGB_15_TO_16 movq_r2r(mm0, mm2);\ pand_r2r(mm3, mm2);\ psllq_i2r(1, mm2);\ pand_r2r(mm4, mm0);\ por_r2r(mm2, mm0);\ movq_r2r(mm1, mm2);\ pand_r2r(mm3, mm2);\ psllq_i2r(1, mm2);\ pand_r2r(mm4, mm1);\ por_r2r(mm2, mm1); #define INIT_RGB_16_TO_15 movq_m2r(rgb_rgb_rgb16_up_mask, mm3);\ movq_m2r(rgb_rgb_rgb16_lower_mask, mm4); #define RGB_16_TO_15 movq_r2r(mm0, mm2);\ psrlq_i2r(1, mm2);\ pand_r2r(mm3, mm2);\ pand_r2r(mm4, mm0);\ por_r2r(mm2, mm0);\ movq_r2r(mm1, mm2);\ psrlq_i2r(1, mm2);\ pand_r2r(mm3, mm2);\ pand_r2r(mm4, mm1);\ por_r2r(mm2, mm1); #define RGB_15_TO_32 pxor_r2r(mm3, mm3);/* Zero mm3 */\ movq_r2r(mm0, mm2);/* mm2: P3 P3 P2 P2 P1 P1 P0 P0 */\ pand_m2r(rgb_rgb_rgb15_lower_mask, mm2);\ psllq_i2r(3, mm2);\ movq_r2r(mm2, mm6);\ punpcklbw_r2r(mm3, mm6);/* mm6: 00 00 00 R1 00 00 00 R0 */\ movq_r2r(mm2, mm7);\ punpckhbw_r2r(mm3, mm7);/* mm7: 00 00 00 R3 00 00 00 R2 */\ movq_r2r(mm0, mm2);/* mm2: P3 P3 P2 P2 P1 P1 P0 P0 */\ pand_m2r(rgb_rgb_rgb15_middle_mask, mm2);\ psrlq_i2r(2, mm2);\ punpcklbw_r2r(mm2, mm3);/* mm3: 00 00 G1 00 00 00 G0 00 */\ por_r2r(mm3, mm6);/* mm6: 00 00 G1 R1 00 00 G0 R0 */\ pxor_r2r(mm3, mm3);/* Zero mm3;*/\ punpckhbw_r2r(mm2, mm3);/* mm3: 00 00 00 R3 00 00 00 R2 */\ por_r2r(mm3, mm7);/* mm7: 00 00 G3 R3 00 00 G2 R2 */\ pand_m2r(rgb_rgb_rgb15_upper_mask, mm0);\ psllq_i2r(1, mm0);\ movq_r2r(mm0, mm2);\ pxor_r2r(mm3, mm3);/* Zero mm3;*/\ punpcklbw_r2r(mm3, mm2);/* mm2: 00 B1 00 00 00 B0 00 00 */\ por_r2r(mm2, mm6);\ punpckhbw_r2r(mm3, mm0);/* mm2: 00 B1 00 00 00 B0 00 00 */\ por_r2r(mm0, mm7);\ MOVQ_R2M(mm6,*dst);/* mm6: 00 B1 G1 R1 00 B0 G0 R0 */\ MOVQ_R2M(mm7,*(dst+8));/* mm7: 00 B3 G3 R3 00 B2 G2 R2 */\ movq_r2r(mm1, mm2);/* mm2: P3 P3 P2 P2 P1 P1 P0 P0 */\ pand_m2r(rgb_rgb_rgb15_lower_mask, mm2);\ psllq_i2r(3, mm2);\ movq_r2r(mm2, mm6);\ punpcklbw_r2r(mm3, mm6);/* mm6: 00 00 00 R1 00 00 00 R0 */\ movq_r2r(mm2, mm7);\ punpckhbw_r2r(mm3, mm7);/* mm7: 00 00 00 R3 00 00 00 R2 */\ movq_r2r(mm1, mm2);/* mm2: P3 P3 P2 P2 P1 P1 P0 P0 */\ pand_m2r(rgb_rgb_rgb15_middle_mask, mm2);\ psrlq_i2r(2, mm2);\ punpcklbw_r2r(mm2, mm3);/* mm3: 00 00 G1 00 00 00 G0 00 */\ por_r2r(mm3, mm6);/* mm6: 00 00 G1 R1 00 00 G0 R0 */\ pxor_r2r(mm3, mm3);/* Zero mm3;*/\ punpckhbw_r2r(mm2, mm3);/* mm3: 00 00 00 R3 00 00 00 R2 */\ por_r2r(mm3, mm7);/* mm7: 00 00 G3 R3 00 00 G2 R2 */\ pand_m2r(rgb_rgb_rgb15_upper_mask, mm1);\ psllq_i2r(1, mm1);\ movq_r2r(mm1, mm2);\ pxor_r2r(mm3, mm3);/* Zero mm3;*/\ punpcklbw_r2r(mm3, mm2);/* mm2: 00 B1 00 00 00 B0 00 00 */\ por_r2r(mm2, mm6);\ punpckhbw_r2r(mm3, mm1);/* mm2: 00 B1 00 00 00 B0 00 00 */\ por_r2r(mm1, mm7);\ MOVQ_R2M(mm6,*(dst+16));/* mm6: 00 B1 G1 R1 00 B0 G0 R0 */\ MOVQ_R2M(mm7,*(dst+24));/* mm7: 00 B3 G3 R3 00 B2 G2 R2 */ #define RGB_15_TO_24 pxor_r2r(mm3, mm3);/* Zero mm3 */\ movq_r2r(mm0, mm2);/* mm2: P3 P3 P2 P2 P1 P1 P0 P0 */\ pand_m2r(rgb_rgb_rgb15_lower_mask, mm2);\ psllq_i2r(3, mm2);\ movq_r2r(mm2, mm6);\ punpcklbw_r2r(mm3, mm6);/* mm6: 00 00 00 R1 00 00 00 R0 */\ movq_r2r(mm2, mm7);\ punpckhbw_r2r(mm3, mm7);/* mm7: 00 00 00 R3 00 00 00 R2 */\ movq_r2r(mm0, mm2);/* mm2: P3 P3 P2 P2 P1 P1 P0 P0 */\ pand_m2r(rgb_rgb_rgb15_middle_mask, mm2);\ psrlq_i2r(2, mm2);\ punpcklbw_r2r(mm2, mm3);/* mm3: 00 00 G1 00 00 00 G0 00 */\ por_r2r(mm3, mm6);/* mm6: 00 00 G1 R1 00 00 G0 R0 */\ pxor_r2r(mm3, mm3);/* Zero mm3;*/\ punpckhbw_r2r(mm2, mm3);/* mm3: 00 00 00 R3 00 00 00 R2 */\ por_r2r(mm3, mm7);/* mm7: 00 00 G3 R3 00 00 G2 R2 */\ pand_m2r(rgb_rgb_rgb15_upper_mask, mm0);\ psllq_i2r(1, mm0);\ movq_r2r(mm0, mm2);\ pxor_r2r(mm3, mm3);/* Zero mm3;*/\ punpcklbw_r2r(mm3, mm2);/* mm2: 00 B1 00 00 00 B0 00 00 */\ por_r2r(mm2, mm6);\ punpckhbw_r2r(mm3, mm0);/* mm2: 00 B1 00 00 00 B0 00 00 */\ por_r2r(mm0, mm7);\ /* 32 -> 24 */\ movq_r2r(mm6, mm5);\ pand_m2r(rgb_rgb_lower_dword, mm5);\ pand_m2r(rgb_rgb_upper_dword, mm6);\ psrlq_i2r(8, mm6);\ por_r2r(mm5, mm6);\ movq_r2r(mm7, mm5);\ pand_m2r(rgb_rgb_lower_dword, mm5);\ pand_m2r(rgb_rgb_upper_dword, mm7);\ psrlq_i2r(8, mm7);\ por_r2r(mm5, mm7);\ movq_r2r(mm7, mm5);\ psllq_i2r(48, mm5);\ por_r2r(mm5, mm6);\ psrlq_i2r(16, mm7);\ MOVQ_R2M(mm6,*dst);\ movd_r2m(mm7,*(dst+8));\ /* Next 4 pixels */\ movq_r2r(mm1, mm2);/* mm2: P3 P3 P2 P2 P1 P1 P0 P0 */\ pand_m2r(rgb_rgb_rgb15_lower_mask, mm2);\ psllq_i2r(3, mm2);\ movq_r2r(mm2, mm6);\ punpcklbw_r2r(mm3, mm6);/* mm6: 00 00 00 R1 00 00 00 R0 */\ movq_r2r(mm2, mm7);\ punpckhbw_r2r(mm3, mm7);/* mm7: 00 00 00 R3 00 00 00 R2 */\ movq_r2r(mm1, mm2);/* mm2: P3 P3 P2 P2 P1 P1 P0 P0 */\ pand_m2r(rgb_rgb_rgb15_middle_mask, mm2);\ psrlq_i2r(2, mm2);\ punpcklbw_r2r(mm2, mm3);/* mm3: 00 00 G1 00 00 00 G0 00 */\ por_r2r(mm3, mm6);/* mm6: 00 00 G1 R1 00 00 G0 R0 */\ pxor_r2r(mm3, mm3);/* Zero mm3;*/\ punpckhbw_r2r(mm2, mm3);/* mm3: 00 00 00 R3 00 00 00 R2 */\ por_r2r(mm3, mm7);/* mm7: 00 00 G3 R3 00 00 G2 R2 */\ pand_m2r(rgb_rgb_rgb15_upper_mask, mm1);\ psllq_i2r(1, mm1);\ movq_r2r(mm1, mm2);\ pxor_r2r(mm3, mm3);/* Zero mm3;*/\ punpcklbw_r2r(mm3, mm2);/* mm2: 00 B1 00 00 00 B0 00 00 */\ por_r2r(mm2, mm6);\ punpckhbw_r2r(mm3, mm1);/* mm2: 00 B1 00 00 00 B0 00 00 */\ por_r2r(mm1, mm7);\ /* 32 -> 24 */\ movq_r2r(mm6, mm5);\ pand_m2r(rgb_rgb_lower_dword, mm5);\ pand_m2r(rgb_rgb_upper_dword, mm6);\ psrlq_i2r(8, mm6);\ por_r2r(mm5, mm6);\ movq_r2r(mm7, mm5);\ pand_m2r(rgb_rgb_lower_dword, mm5);\ pand_m2r(rgb_rgb_upper_dword, mm7);\ psrlq_i2r(8, mm7);\ por_r2r(mm5, mm7);\ movq_r2r(mm7, mm5);\ psllq_i2r(48, mm5);\ por_r2r(mm5, mm6);\ psrlq_i2r(16, mm7);\ MOVQ_R2M(mm6,*(dst+12));\ movd_r2m(mm7,*(dst+20)); #define RGB_15_TO_32_RGBA pxor_r2r(mm3, mm3);/* Zero mm3 */\ movq_r2r(mm0, mm2);/* mm2: P3 P3 P2 P2 P1 P1 P0 P0 */\ pand_m2r(rgb_rgb_rgb15_lower_mask, mm2);\ psllq_i2r(3, mm2);\ movq_r2r(mm2, mm6);\ punpcklbw_r2r(mm3, mm6);/* mm6: 00 00 00 R1 00 00 00 R0 */\ movq_r2r(mm2, mm7);\ punpckhbw_r2r(mm3, mm7);/* mm7: 00 00 00 R3 00 00 00 R2 */\ movq_r2r(mm0, mm2);/* mm2: P3 P3 P2 P2 P1 P1 P0 P0 */\ pand_m2r(rgb_rgb_rgb15_middle_mask, mm2);\ psrlq_i2r(2, mm2);\ punpcklbw_r2r(mm2, mm3);/* mm3: 00 00 G1 00 00 00 G0 00 */\ por_r2r(mm3, mm6);/* mm6: 00 00 G1 R1 00 00 G0 R0 */\ pxor_r2r(mm3, mm3);/* Zero mm3;*/\ punpckhbw_r2r(mm2, mm3);/* mm3: 00 00 00 R3 00 00 00 R2 */\ por_r2r(mm3, mm7);/* mm7: 00 00 G3 R3 00 00 G2 R2 */\ pand_m2r(rgb_rgb_rgb15_upper_mask, mm0);\ psllq_i2r(1, mm0);\ movq_r2r(mm0, mm2);\ pxor_r2r(mm3, mm3);/* Zero mm3;*/\ punpcklbw_r2r(mm3, mm2);/* mm2: 00 B1 00 00 00 B0 00 00 */\ por_r2r(mm2, mm6);\ punpckhbw_r2r(mm3, mm0);/* mm2: 00 B1 00 00 00 B0 00 00 */\ por_r2r(mm0, mm7);\ por_m2r(rgba32_alpha_mask, mm6);\ por_m2r(rgba32_alpha_mask, mm7);\ MOVQ_R2M(mm6,*dst);/* mm6: 00 B1 G1 R1 00 B0 G0 R0 */\ MOVQ_R2M(mm7,*(dst+8));/* mm7: 00 B3 G3 R3 00 B2 G2 R2 */\ movq_r2r(mm1, mm2);/* mm2: P3 P3 P2 P2 P1 P1 P0 P0 */\ pand_m2r(rgb_rgb_rgb15_lower_mask, mm2);\ psllq_i2r(3, mm2);\ movq_r2r(mm2, mm6);\ punpcklbw_r2r(mm3, mm6);/* mm6: 00 00 00 R1 00 00 00 R0 */\ movq_r2r(mm2, mm7);\ punpckhbw_r2r(mm3, mm7);/* mm7: 00 00 00 R3 00 00 00 R2 */\ movq_r2r(mm1, mm2);/* mm2: P3 P3 P2 P2 P1 P1 P0 P0 */\ pand_m2r(rgb_rgb_rgb15_middle_mask, mm2);\ psrlq_i2r(2, mm2);\ punpcklbw_r2r(mm2, mm3);/* mm3: 00 00 G1 00 00 00 G0 00 */\ por_r2r(mm3, mm6);/* mm6: 00 00 G1 R1 00 00 G0 R0 */\ pxor_r2r(mm3, mm3);/* Zero mm3;*/\ punpckhbw_r2r(mm2, mm3);/* mm3: 00 00 00 R3 00 00 00 R2 */\ por_r2r(mm3, mm7);/* mm7: 00 00 G3 R3 00 00 G2 R2 */\ pand_m2r(rgb_rgb_rgb15_upper_mask, mm1);\ psllq_i2r(1, mm1);\ movq_r2r(mm1, mm2);\ pxor_r2r(mm3, mm3);/* Zero mm3;*/\ punpcklbw_r2r(mm3, mm2);/* mm2: 00 B1 00 00 00 B0 00 00 */\ por_r2r(mm2, mm6);\ punpckhbw_r2r(mm3, mm1);/* mm2: 00 B1 00 00 00 B0 00 00 */\ por_r2r(mm1, mm7);\ por_m2r(rgba32_alpha_mask, mm6);\ por_m2r(rgba32_alpha_mask, mm7);\ MOVQ_R2M(mm6,*(dst+16));/* mm6: 00 B1 G1 R1 00 B0 G0 R0 */\ MOVQ_R2M(mm7,*(dst+24));/* mm7: 00 B3 G3 R3 00 B2 G2 R2 */ #define RGB_16_TO_32 pxor_r2r(mm3, mm3);/* Zero mm3 */\ movq_r2r(mm0, mm2);/* mm2: P3 P3 P2 P2 P1 P1 P0 P0 */\ pand_m2r(rgb_rgb_rgb16_lower_mask, mm2);\ psllq_i2r(3, mm2);\ movq_r2r(mm2, mm6);\ punpcklbw_r2r(mm3, mm6);/* mm6: 00 00 00 R1 00 00 00 R0 */\ movq_r2r(mm2, mm7);\ punpckhbw_r2r(mm3, mm7);/* mm7: 00 00 00 R3 00 00 00 R2 */\ movq_r2r(mm0, mm2);/* mm2: P3 P3 P2 P2 P1 P1 P0 P0 */\ pand_m2r(rgb_rgb_rgb16_middle_mask, mm2);\ psrlq_i2r(3, mm2);\ punpcklbw_r2r(mm2, mm3);/* mm3: 00 00 G1 00 00 00 G0 00 */\ por_r2r(mm3, mm6);/* mm6: 00 00 G1 R1 00 00 G0 R0 */\ pxor_r2r(mm3, mm3);/* Zero mm3;*/\ punpckhbw_r2r(mm2, mm3);/* mm3: 00 00 00 R3 00 00 00 R2 */\ por_r2r(mm3, mm7);/* mm7: 00 00 G3 R3 00 00 G2 R2 */\ pand_m2r(rgb_rgb_rgb16_upper_mask, mm0);\ movq_r2r(mm0, mm2);\ pxor_r2r(mm3, mm3);/* Zero mm3;*/\ punpcklbw_r2r(mm3, mm2);/* mm2: 00 B1 00 00 00 B0 00 00 */\ por_r2r(mm2, mm6);\ punpckhbw_r2r(mm3, mm0);/* mm2: 00 B1 00 00 00 B0 00 00 */\ por_r2r(mm0, mm7);\ MOVQ_R2M(mm6,*dst);/* mm6: 00 B1 G1 R1 00 B0 G0 R0 */\ MOVQ_R2M(mm7,*(dst+8));/* mm7: 00 B3 G3 R3 00 B2 G2 R2 */\ movq_r2r(mm1, mm2);/* mm2: P3 P3 P2 P2 P1 P1 P0 P0 */\ pand_m2r(rgb_rgb_rgb16_lower_mask, mm2);\ psllq_i2r(3, mm2);\ movq_r2r(mm2, mm6);\ punpcklbw_r2r(mm3, mm6);/* mm6: 00 00 00 R1 00 00 00 R0 */\ movq_r2r(mm2, mm7);\ punpckhbw_r2r(mm3, mm7);/* mm7: 00 00 00 R3 00 00 00 R2 */\ movq_r2r(mm1, mm2);/* mm2: P3 P3 P2 P2 P1 P1 P0 P0 */\ pand_m2r(rgb_rgb_rgb16_middle_mask, mm2);\ psrlq_i2r(3, mm2);\ punpcklbw_r2r(mm2, mm3);/* mm3: 00 00 G1 00 00 00 G0 00 */\ por_r2r(mm3, mm6);/* mm6: 00 00 G1 R1 00 00 G0 R0 */\ pxor_r2r(mm3, mm3);/* Zero mm3;*/\ punpckhbw_r2r(mm2, mm3);/* mm3: 00 00 00 R3 00 00 00 R2 */\ por_r2r(mm3, mm7);/* mm7: 00 00 G3 R3 00 00 G2 R2 */\ pand_m2r(rgb_rgb_rgb16_upper_mask, mm1);\ movq_r2r(mm1, mm2);\ pxor_r2r(mm3, mm3);/* Zero mm3;*/\ punpcklbw_r2r(mm3, mm2);/* mm2: 00 B1 00 00 00 B0 00 00 */\ por_r2r(mm2, mm6);\ punpckhbw_r2r(mm3, mm1);/* mm2: 00 B1 00 00 00 B0 00 00 */\ por_r2r(mm1, mm7);\ MOVQ_R2M(mm6,*(dst+16));/* mm6: 00 B1 G1 R1 00 B0 G0 R0 */\ MOVQ_R2M(mm7,*(dst+24));/* mm7: 00 B3 G3 R3 00 B2 G2 R2 */ #define RGB_16_TO_24 pxor_r2r(mm3, mm3);/* Zero mm3 */\ movq_r2r(mm0, mm2);/* mm2: P3 P3 P2 P2 P1 P1 P0 P0 */\ pand_m2r(rgb_rgb_rgb16_lower_mask, mm2);\ psllq_i2r(3, mm2);\ movq_r2r(mm2, mm6);\ punpcklbw_r2r(mm3, mm6);/* mm6: 00 00 00 R1 00 00 00 R0 */\ movq_r2r(mm2, mm7);\ punpckhbw_r2r(mm3, mm7);/* mm7: 00 00 00 R3 00 00 00 R2 */\ movq_r2r(mm0, mm2);/* mm2: P3 P3 P2 P2 P1 P1 P0 P0 */\ pand_m2r(rgb_rgb_rgb16_middle_mask, mm2);\ psrlq_i2r(3, mm2);\ punpcklbw_r2r(mm2, mm3);/* mm3: 00 00 G1 00 00 00 G0 00 */\ por_r2r(mm3, mm6);/* mm6: 00 00 G1 R1 00 00 G0 R0 */\ pxor_r2r(mm3, mm3);/* Zero mm3;*/\ punpckhbw_r2r(mm2, mm3);/* mm3: 00 00 00 R3 00 00 00 R2 */\ por_r2r(mm3, mm7);/* mm7: 00 00 G3 R3 00 00 G2 R2 */\ pand_m2r(rgb_rgb_rgb16_upper_mask, mm0);\ movq_r2r(mm0, mm2);\ pxor_r2r(mm3, mm3);/* Zero mm3;*/\ punpcklbw_r2r(mm3, mm2);/* mm2: 00 B1 00 00 00 B0 00 00 */\ por_r2r(mm2, mm6);\ punpckhbw_r2r(mm3, mm0);/* mm2: 00 B1 00 00 00 B0 00 00 */\ por_r2r(mm0, mm7);\ /* 32 -> 24 */\ movq_r2r(mm6, mm5);\ pand_m2r(rgb_rgb_lower_dword, mm5);\ pand_m2r(rgb_rgb_upper_dword, mm6);\ psrlq_i2r(8, mm6);\ por_r2r(mm5, mm6);\ movq_r2r(mm7, mm5);\ pand_m2r(rgb_rgb_lower_dword, mm5);\ pand_m2r(rgb_rgb_upper_dword, mm7);\ psrlq_i2r(8, mm7);\ por_r2r(mm5, mm7);\ movq_r2r(mm7, mm5);\ psllq_i2r(48, mm5);\ por_r2r(mm5, mm6);\ psrlq_i2r(16, mm7);\ MOVQ_R2M(mm6,*dst);\ movd_r2m(mm7,*(dst+8));\ movq_r2r(mm1, mm2);/* mm2: P3 P3 P2 P2 P1 P1 P0 P0 */\ pand_m2r(rgb_rgb_rgb16_lower_mask, mm2);\ psllq_i2r(3, mm2);\ movq_r2r(mm2, mm6);\ punpcklbw_r2r(mm3, mm6);/* mm6: 00 00 00 R1 00 00 00 R0 */\ movq_r2r(mm2, mm7);\ punpckhbw_r2r(mm3, mm7);/* mm7: 00 00 00 R3 00 00 00 R2 */\ movq_r2r(mm1, mm2);/* mm2: P3 P3 P2 P2 P1 P1 P0 P0 */\ pand_m2r(rgb_rgb_rgb16_middle_mask, mm2);\ psrlq_i2r(3, mm2);\ punpcklbw_r2r(mm2, mm3);/* mm3: 00 00 G1 00 00 00 G0 00 */\ por_r2r(mm3, mm6);/* mm6: 00 00 G1 R1 00 00 G0 R0 */\ pxor_r2r(mm3, mm3);/* Zero mm3;*/\ punpckhbw_r2r(mm2, mm3);/* mm3: 00 00 00 R3 00 00 00 R2 */\ por_r2r(mm3, mm7);/* mm7: 00 00 G3 R3 00 00 G2 R2 */\ pand_m2r(rgb_rgb_rgb16_upper_mask, mm1);\ movq_r2r(mm1, mm2);\ pxor_r2r(mm3, mm3);/* Zero mm3;*/\ punpcklbw_r2r(mm3, mm2);/* mm2: 00 B1 00 00 00 B0 00 00 */\ por_r2r(mm2, mm6);\ punpckhbw_r2r(mm3, mm1);/* mm2: 00 B1 00 00 00 B0 00 00 */\ por_r2r(mm1, mm7);\ /* 32 -> 24 */\ movq_r2r(mm6, mm5);\ pand_m2r(rgb_rgb_lower_dword, mm5);\ pand_m2r(rgb_rgb_upper_dword, mm6);\ psrlq_i2r(8, mm6);\ por_r2r(mm5, mm6);\ movq_r2r(mm7, mm5);\ pand_m2r(rgb_rgb_lower_dword, mm5);\ pand_m2r(rgb_rgb_upper_dword, mm7);\ psrlq_i2r(8, mm7);\ por_r2r(mm5, mm7);\ movq_r2r(mm7, mm5);\ psllq_i2r(48, mm5);\ por_r2r(mm5, mm6);\ psrlq_i2r(16, mm7);\ MOVQ_R2M(mm6,*(dst+12));\ movd_r2m(mm7,*(dst+20)); #define RGB_16_TO_32_RGBA pxor_r2r(mm3, mm3);/* Zero mm3 */\ movq_r2r(mm0, mm2);/* mm2: P3 P3 P2 P2 P1 P1 P0 P0 */\ pand_m2r(rgb_rgb_rgb16_lower_mask, mm2);\ psllq_i2r(3, mm2);\ movq_r2r(mm2, mm6);\ punpcklbw_r2r(mm3, mm6);/* mm6: 00 00 00 R1 00 00 00 R0 */\ movq_r2r(mm2, mm7);\ punpckhbw_r2r(mm3, mm7);/* mm7: 00 00 00 R3 00 00 00 R2 */\ movq_r2r(mm0, mm2);/* mm2: P3 P3 P2 P2 P1 P1 P0 P0 */\ pand_m2r(rgb_rgb_rgb16_middle_mask, mm2);\ psrlq_i2r(3, mm2);\ punpcklbw_r2r(mm2, mm3);/* mm3: 00 00 G1 00 00 00 G0 00 */\ por_r2r(mm3, mm6);/* mm6: 00 00 G1 R1 00 00 G0 R0 */\ pxor_r2r(mm3, mm3);/* Zero mm3;*/\ punpckhbw_r2r(mm2, mm3);/* mm3: 00 00 00 R3 00 00 00 R2 */\ por_r2r(mm3, mm7);/* mm7: 00 00 G3 R3 00 00 G2 R2 */\ pand_m2r(rgb_rgb_rgb16_upper_mask, mm0);\ movq_r2r(mm0, mm2);\ pxor_r2r(mm3, mm3);/* Zero mm3;*/\ punpcklbw_r2r(mm3, mm2);/* mm2: 00 B1 00 00 00 B0 00 00 */\ por_r2r(mm2, mm6);\ punpckhbw_r2r(mm3, mm0);/* mm2: 00 B1 00 00 00 B0 00 00 */\ por_r2r(mm0, mm7);\ por_m2r(rgba32_alpha_mask, mm6);\ por_m2r(rgba32_alpha_mask, mm7);\ MOVQ_R2M(mm6,*dst);/* mm6: 00 B1 G1 R1 00 B0 G0 R0 */\ MOVQ_R2M(mm7,*(dst+8));/* mm7: 00 B3 G3 R3 00 B2 G2 R2 */\ movq_r2r(mm1, mm2);/* mm2: P3 P3 P2 P2 P1 P1 P0 P0 */\ pand_m2r(rgb_rgb_rgb16_lower_mask, mm2);\ psllq_i2r(3, mm2);\ movq_r2r(mm2, mm6);\ punpcklbw_r2r(mm3, mm6);/* mm6: 00 00 00 R1 00 00 00 R0 */\ movq_r2r(mm2, mm7);\ punpckhbw_r2r(mm3, mm7);/* mm7: 00 00 00 R3 00 00 00 R2 */\ movq_r2r(mm1, mm2);/* mm2: P3 P3 P2 P2 P1 P1 P0 P0 */\ pand_m2r(rgb_rgb_rgb16_middle_mask, mm2);\ psrlq_i2r(3, mm2);\ punpcklbw_r2r(mm2, mm3);/* mm3: 00 00 G1 00 00 00 G0 00 */\ por_r2r(mm3, mm6);/* mm6: 00 00 G1 R1 00 00 G0 R0 */\ pxor_r2r(mm3, mm3);/* Zero mm3;*/\ punpckhbw_r2r(mm2, mm3);/* mm3: 00 00 00 R3 00 00 00 R2 */\ por_r2r(mm3, mm7);/* mm7: 00 00 G3 R3 00 00 G2 R2 */\ pand_m2r(rgb_rgb_rgb16_upper_mask, mm1);\ movq_r2r(mm1, mm2);\ pxor_r2r(mm3, mm3);/* Zero mm3;*/\ punpcklbw_r2r(mm3, mm2);/* mm2: 00 B1 00 00 00 B0 00 00 */\ por_r2r(mm2, mm6);\ punpckhbw_r2r(mm3, mm1);/* mm2: 00 B1 00 00 00 B0 00 00 */\ por_r2r(mm1, mm7);\ por_m2r(rgba32_alpha_mask, mm6);\ por_m2r(rgba32_alpha_mask, mm7);\ MOVQ_R2M(mm6,*(dst+16));/* mm6: 00 B1 G1 R1 00 B0 G0 R0 */\ MOVQ_R2M(mm7,*(dst+24));/* mm7: 00 B3 G3 R3 00 B2 G2 R2 */ #define RGB_15_TO_32_SWAP pxor_r2r(mm3, mm3);/* Zero mm3 */\ movq_r2r(mm0, mm2);/* mm2: P3 P3 P2 P2 P1 P1 P0 P0 */\ pand_m2r(rgb_rgb_rgb15_upper_mask, mm2);\ psrlq_i2r(7, mm2);\ movq_r2r(mm2, mm6);\ punpcklbw_r2r(mm3, mm6);/* mm6: 00 00 00 R1 00 00 00 R0 */\ movq_r2r(mm2, mm7);\ punpckhbw_r2r(mm3, mm7);/* mm7: 00 00 00 R3 00 00 00 R2 */\ movq_r2r(mm0, mm2);/* mm2: P3 P3 P2 P2 P1 P1 P0 P0 */\ pand_m2r(rgb_rgb_rgb15_middle_mask, mm2);\ psrlq_i2r(2, mm2);\ punpcklbw_r2r(mm2, mm3);/* mm3: 00 00 G1 00 00 00 G0 00 */\ por_r2r(mm3, mm6);/* mm6: 00 00 G1 R1 00 00 G0 R0 */\ pxor_r2r(mm3, mm3);/* Zero mm3;*/\ punpckhbw_r2r(mm2, mm3);/* mm3: 00 00 00 R3 00 00 00 R2 */\ por_r2r(mm3, mm7);/* mm7: 00 00 G3 R3 00 00 G2 R2 */\ pand_m2r(rgb_rgb_rgb15_lower_mask, mm0);\ psllq_i2r(11, mm0);\ movq_r2r(mm0, mm2);\ pxor_r2r(mm3, mm3);/* Zero mm3;*/\ punpcklbw_r2r(mm3, mm2);/* mm2: 00 B1 00 00 00 B0 00 00 */\ por_r2r(mm2, mm6);\ punpckhbw_r2r(mm3, mm0);/* mm2: 00 B1 00 00 00 B0 00 00 */\ por_r2r(mm0, mm7);\ MOVQ_R2M(mm6,*dst);/* mm6: 00 B1 G1 R1 00 B0 G0 R0 */\ MOVQ_R2M(mm7,*(dst+8));/* mm7: 00 B3 G3 R3 00 B2 G2 R2 */\ movq_r2r(mm1, mm2);\ pand_m2r(rgb_rgb_rgb15_upper_mask, mm2);\ psrlq_i2r(7, mm2);\ movq_r2r(mm2, mm6);\ punpcklbw_r2r(mm3, mm6);\ movq_r2r(mm2, mm7);\ punpckhbw_r2r(mm3, mm7);\ movq_r2r(mm1, mm2);\ pand_m2r(rgb_rgb_rgb15_middle_mask, mm2);\ psrlq_i2r(2, mm2);\ punpcklbw_r2r(mm2, mm3);\ por_r2r(mm3, mm6);\ pxor_r2r(mm3, mm3);\ punpckhbw_r2r(mm2, mm3);\ por_r2r(mm3, mm7);\ pand_m2r(rgb_rgb_rgb15_lower_mask, mm1);\ psllq_i2r(11, mm1);\ movq_r2r(mm1, mm2);\ pxor_r2r(mm3, mm3);\ punpcklbw_r2r(mm3, mm2);\ por_r2r(mm2, mm6);\ punpckhbw_r2r(mm3, mm1);\ por_r2r(mm1, mm7);\ MOVQ_R2M(mm6,*(dst+16));\ MOVQ_R2M(mm7,*(dst+24)); #define RGB_15_TO_24_SWAP pxor_r2r(mm3, mm3);/* Zero mm3 */\ movq_r2r(mm0, mm2);/* mm2: P3 P3 P2 P2 P1 P1 P0 P0 */\ pand_m2r(rgb_rgb_rgb15_upper_mask, mm2);\ psrlq_i2r(7, mm2);\ movq_r2r(mm2, mm6);\ punpcklbw_r2r(mm3, mm6);/* mm6: 00 00 00 R1 00 00 00 R0 */\ movq_r2r(mm2, mm7);\ punpckhbw_r2r(mm3, mm7);/* mm7: 00 00 00 R3 00 00 00 R2 */\ movq_r2r(mm0, mm2);/* mm2: P3 P3 P2 P2 P1 P1 P0 P0 */\ pand_m2r(rgb_rgb_rgb15_middle_mask, mm2);\ psrlq_i2r(2, mm2);\ punpcklbw_r2r(mm2, mm3);/* mm3: 00 00 G1 00 00 00 G0 00 */\ por_r2r(mm3, mm6);/* mm6: 00 00 G1 R1 00 00 G0 R0 */\ pxor_r2r(mm3, mm3);/* Zero mm3;*/\ punpckhbw_r2r(mm2, mm3);/* mm3: 00 00 00 R3 00 00 00 R2 */\ por_r2r(mm3, mm7);/* mm7: 00 00 G3 R3 00 00 G2 R2 */\ pand_m2r(rgb_rgb_rgb15_lower_mask, mm0);\ psllq_i2r(11, mm0);\ movq_r2r(mm0, mm2);\ pxor_r2r(mm3, mm3);/* Zero mm3;*/\ punpcklbw_r2r(mm3, mm2);/* mm2: 00 B1 00 00 00 B0 00 00 */\ por_r2r(mm2, mm6);\ punpckhbw_r2r(mm3, mm0);/* mm2: 00 B1 00 00 00 B0 00 00 */\ por_r2r(mm0, mm7);\ /* 32 -> 24 */\ movq_r2r(mm6, mm5);\ pand_m2r(rgb_rgb_lower_dword, mm5);\ pand_m2r(rgb_rgb_upper_dword, mm6);\ psrlq_i2r(8, mm6);\ por_r2r(mm5, mm6);\ movq_r2r(mm7, mm5);\ pand_m2r(rgb_rgb_lower_dword, mm5);\ pand_m2r(rgb_rgb_upper_dword, mm7);\ psrlq_i2r(8, mm7);\ por_r2r(mm5, mm7);\ movq_r2r(mm7, mm5);\ psllq_i2r(48, mm5);\ por_r2r(mm5, mm6);\ psrlq_i2r(16, mm7);\ MOVQ_R2M(mm6,*dst);\ movd_r2m(mm7,*(dst+8));\ /* Next 4 pixels */\ movq_r2r(mm1, mm2);\ pand_m2r(rgb_rgb_rgb15_upper_mask, mm2);\ psrlq_i2r(7, mm2);\ movq_r2r(mm2, mm6);\ punpcklbw_r2r(mm3, mm6);\ movq_r2r(mm2, mm7);\ punpckhbw_r2r(mm3, mm7);\ movq_r2r(mm1, mm2);\ pand_m2r(rgb_rgb_rgb15_middle_mask, mm2);\ psrlq_i2r(2, mm2);\ punpcklbw_r2r(mm2, mm3);\ por_r2r(mm3, mm6);\ pxor_r2r(mm3, mm3);\ punpckhbw_r2r(mm2, mm3);\ por_r2r(mm3, mm7);\ pand_m2r(rgb_rgb_rgb15_lower_mask, mm1);\ psllq_i2r(11, mm1);\ movq_r2r(mm1, mm2);\ pxor_r2r(mm3, mm3);\ punpcklbw_r2r(mm3, mm2);\ por_r2r(mm2, mm6);\ punpckhbw_r2r(mm3, mm1);\ por_r2r(mm1, mm7);\ movq_r2r(mm6, mm5);\ pand_m2r(rgb_rgb_lower_dword, mm5);\ pand_m2r(rgb_rgb_upper_dword, mm6);\ psrlq_i2r(8, mm6);\ por_r2r(mm5, mm6);\ movq_r2r(mm7, mm5);\ pand_m2r(rgb_rgb_lower_dword, mm5);\ pand_m2r(rgb_rgb_upper_dword, mm7);\ psrlq_i2r(8, mm7);\ por_r2r(mm5, mm7);\ movq_r2r(mm7, mm5);\ psllq_i2r(48, mm5);\ por_r2r(mm5, mm6);\ psrlq_i2r(16, mm7);\ MOVQ_R2M(mm6,*(dst+12));\ movd_r2m(mm7,*(dst+20)); #define RGB_15_TO_32_SWAP_RGBA pxor_r2r(mm3, mm3);/* Zero mm3 */\ movq_r2r(mm0, mm2);/* mm2: P3 P3 P2 P2 P1 P1 P0 P0 */\ pand_m2r(rgb_rgb_rgb15_upper_mask, mm2);\ psrlq_i2r(7, mm2);\ movq_r2r(mm2, mm6);\ punpcklbw_r2r(mm3, mm6);/* mm6: 00 00 00 R1 00 00 00 R0 */\ movq_r2r(mm2, mm7);\ punpckhbw_r2r(mm3, mm7);/* mm7: 00 00 00 R3 00 00 00 R2 */\ movq_r2r(mm0, mm2);/* mm2: P3 P3 P2 P2 P1 P1 P0 P0 */\ pand_m2r(rgb_rgb_rgb15_middle_mask, mm2);\ psrlq_i2r(2, mm2);\ punpcklbw_r2r(mm2, mm3);/* mm3: 00 00 G1 00 00 00 G0 00 */\ por_r2r(mm3, mm6);/* mm6: 00 00 G1 R1 00 00 G0 R0 */\ pxor_r2r(mm3, mm3);/* Zero mm3;*/\ punpckhbw_r2r(mm2, mm3);/* mm3: 00 00 00 R3 00 00 00 R2 */\ por_r2r(mm3, mm7);/* mm7: 00 00 G3 R3 00 00 G2 R2 */\ pand_m2r(rgb_rgb_rgb15_lower_mask, mm0);\ psllq_i2r(11, mm0);\ movq_r2r(mm0, mm2);\ pxor_r2r(mm3, mm3);/* Zero mm3;*/\ punpcklbw_r2r(mm3, mm2);/* mm2: 00 B1 00 00 00 B0 00 00 */\ por_r2r(mm2, mm6);\ punpckhbw_r2r(mm3, mm0);/* mm2: 00 B1 00 00 00 B0 00 00 */\ por_r2r(mm0, mm7);\ por_m2r(rgba32_alpha_mask, mm6);\ por_m2r(rgba32_alpha_mask, mm7);\ MOVQ_R2M(mm6,*dst);/* mm6: 00 B1 G1 R1 00 B0 G0 R0 */\ MOVQ_R2M(mm7,*(dst+8));/* mm7: 00 B3 G3 R3 00 B2 G2 R2 */\ movq_r2r(mm1, mm2);\ pand_m2r(rgb_rgb_rgb15_upper_mask, mm2);\ psrlq_i2r(7, mm2);\ movq_r2r(mm2, mm6);\ punpcklbw_r2r(mm3, mm6);\ movq_r2r(mm2, mm7);\ punpckhbw_r2r(mm3, mm7);\ movq_r2r(mm1, mm2);\ pand_m2r(rgb_rgb_rgb15_middle_mask, mm2);\ psrlq_i2r(2, mm2);\ punpcklbw_r2r(mm2, mm3);\ por_r2r(mm3, mm6);\ pxor_r2r(mm3, mm3);\ punpckhbw_r2r(mm2, mm3);\ por_r2r(mm3, mm7);\ pand_m2r(rgb_rgb_rgb15_lower_mask, mm1);\ psllq_i2r(11, mm1);\ movq_r2r(mm1, mm2);\ pxor_r2r(mm3, mm3);\ punpcklbw_r2r(mm3, mm2);\ por_r2r(mm2, mm6);\ punpckhbw_r2r(mm3, mm1);\ por_r2r(mm1, mm7);\ por_m2r(rgba32_alpha_mask, mm6);\ por_m2r(rgba32_alpha_mask, mm7);\ MOVQ_R2M(mm6,*(dst+16));\ MOVQ_R2M(mm7,*(dst+24)); #define RGB_15_TO_32_SWAP_RGBA pxor_r2r(mm3, mm3);/* Zero mm3 */\ movq_r2r(mm0, mm2);/* mm2: P3 P3 P2 P2 P1 P1 P0 P0 */\ pand_m2r(rgb_rgb_rgb15_upper_mask, mm2);\ psrlq_i2r(7, mm2);\ movq_r2r(mm2, mm6);\ punpcklbw_r2r(mm3, mm6);/* mm6: 00 00 00 R1 00 00 00 R0 */\ movq_r2r(mm2, mm7);\ punpckhbw_r2r(mm3, mm7);/* mm7: 00 00 00 R3 00 00 00 R2 */\ movq_r2r(mm0, mm2);/* mm2: P3 P3 P2 P2 P1 P1 P0 P0 */\ pand_m2r(rgb_rgb_rgb15_middle_mask, mm2);\ psrlq_i2r(2, mm2);\ punpcklbw_r2r(mm2, mm3);/* mm3: 00 00 G1 00 00 00 G0 00 */\ por_r2r(mm3, mm6);/* mm6: 00 00 G1 R1 00 00 G0 R0 */\ pxor_r2r(mm3, mm3);/* Zero mm3;*/\ punpckhbw_r2r(mm2, mm3);/* mm3: 00 00 00 R3 00 00 00 R2 */\ por_r2r(mm3, mm7);/* mm7: 00 00 G3 R3 00 00 G2 R2 */\ pand_m2r(rgb_rgb_rgb15_lower_mask, mm0);\ psllq_i2r(11, mm0);\ movq_r2r(mm0, mm2);\ pxor_r2r(mm3, mm3);/* Zero mm3;*/\ punpcklbw_r2r(mm3, mm2);/* mm2: 00 B1 00 00 00 B0 00 00 */\ por_r2r(mm2, mm6);\ punpckhbw_r2r(mm3, mm0);/* mm2: 00 B1 00 00 00 B0 00 00 */\ por_r2r(mm0, mm7);\ por_m2r(rgba32_alpha_mask, mm6);\ por_m2r(rgba32_alpha_mask, mm7);\ MOVQ_R2M(mm6,*dst);/* mm6: 00 B1 G1 R1 00 B0 G0 R0 */\ MOVQ_R2M(mm7,*(dst+8));/* mm7: 00 B3 G3 R3 00 B2 G2 R2 */\ movq_r2r(mm1, mm2);\ pand_m2r(rgb_rgb_rgb15_upper_mask, mm2);\ psrlq_i2r(7, mm2);\ movq_r2r(mm2, mm6);\ punpcklbw_r2r(mm3, mm6);\ movq_r2r(mm2, mm7);\ punpckhbw_r2r(mm3, mm7);\ movq_r2r(mm1, mm2);\ pand_m2r(rgb_rgb_rgb15_middle_mask, mm2);\ psrlq_i2r(2, mm2);\ punpcklbw_r2r(mm2, mm3);\ por_r2r(mm3, mm6);\ pxor_r2r(mm3, mm3);\ punpckhbw_r2r(mm2, mm3);\ por_r2r(mm3, mm7);\ pand_m2r(rgb_rgb_rgb15_lower_mask, mm1);\ psllq_i2r(11, mm1);\ movq_r2r(mm1, mm2);\ pxor_r2r(mm3, mm3);\ punpcklbw_r2r(mm3, mm2);\ por_r2r(mm2, mm6);\ punpckhbw_r2r(mm3, mm1);\ por_r2r(mm1, mm7);\ por_m2r(rgba32_alpha_mask, mm6);\ por_m2r(rgba32_alpha_mask, mm7);\ MOVQ_R2M(mm6,*(dst+16));\ MOVQ_R2M(mm7,*(dst+24)); #define RGB_16_TO_32_SWAP pxor_r2r(mm3, mm3);/* Zero mm3 */\ movq_r2r(mm0, mm2);/* mm2: P3 P3 P2 P2 P1 P1 P0 P0 */\ pand_m2r(rgb_rgb_rgb16_upper_mask, mm2);\ psrlq_i2r(8, mm2);\ movq_r2r(mm2, mm6);\ punpcklbw_r2r(mm3, mm6);/* mm6: 00 00 00 R1 00 00 00 R0 */\ movq_r2r(mm2, mm7);\ punpckhbw_r2r(mm3, mm7);/* mm7: 00 00 00 R3 00 00 00 R2 */\ movq_r2r(mm0, mm2);/* mm2: P3 P3 P2 P2 P1 P1 P0 P0 */\ pand_m2r(rgb_rgb_rgb16_middle_mask, mm2);\ psrlq_i2r(3, mm2);\ punpcklbw_r2r(mm2, mm3);/* mm3: 00 00 G1 00 00 00 G0 00 */\ por_r2r(mm3, mm6);/* mm6: 00 00 G1 R1 00 00 G0 R0 */\ pxor_r2r(mm3, mm3);/* Zero mm3;*/\ punpckhbw_r2r(mm2, mm3);/* mm3: 00 00 00 R3 00 00 00 R2 */\ por_r2r(mm3, mm7);/* mm7: 00 00 G3 R3 00 00 G2 R2 */\ pand_m2r(rgb_rgb_rgb16_lower_mask, mm0);\ psllq_i2r(11, mm0);\ movq_r2r(mm0, mm2);\ pxor_r2r(mm3, mm3);/* Zero mm3;*/\ punpcklbw_r2r(mm3, mm2);/* mm2: 00 B1 00 00 00 B0 00 00 */\ por_r2r(mm2, mm6);\ punpckhbw_r2r(mm3, mm0);/* mm2: 00 B1 00 00 00 B0 00 00 */\ por_r2r(mm0, mm7);\ MOVQ_R2M(mm6,*dst);/* mm6: 00 B1 G1 R1 00 B0 G0 R0 */\ MOVQ_R2M(mm7,*(dst+8));/* mm7: 00 B3 G3 R3 00 B2 G2 R2 */\ movq_r2r(mm1, mm2);/* mm2: P3 P3 P2 P2 P1 P1 P0 P0 */\ pand_m2r(rgb_rgb_rgb16_upper_mask, mm2);\ psrlq_i2r(8, mm2);\ movq_r2r(mm2, mm6);\ punpcklbw_r2r(mm3, mm6);/* mm6: 00 00 00 R1 00 00 00 R0 */\ movq_r2r(mm2, mm7);\ punpckhbw_r2r(mm3, mm7);/* mm7: 00 00 00 R3 00 00 00 R2 */\ movq_r2r(mm1, mm2);/* mm2: P3 P3 P2 P2 P1 P1 P0 P0 */\ pand_m2r(rgb_rgb_rgb16_middle_mask, mm2);\ psrlq_i2r(3, mm2);\ punpcklbw_r2r(mm2, mm3);/* mm3: 00 00 G1 00 00 00 G0 00 */\ por_r2r(mm3, mm6);/* mm6: 00 00 G1 R1 00 00 G0 R0 */\ pxor_r2r(mm3, mm3);/* Zero mm3;*/\ punpckhbw_r2r(mm2, mm3);/* mm3: 00 00 00 R3 00 00 00 R2 */\ por_r2r(mm3, mm7);/* mm7: 00 00 G3 R3 00 00 G2 R2 */\ pand_m2r(rgb_rgb_rgb16_lower_mask, mm1);\ psllq_i2r(11, mm1);\ movq_r2r(mm1, mm2);\ pxor_r2r(mm3, mm3);/* Zero mm3;*/\ punpcklbw_r2r(mm3, mm2);/* mm2: 00 B1 00 00 00 B0 00 00 */\ por_r2r(mm2, mm6);\ punpckhbw_r2r(mm3, mm1);/* mm2: 00 B1 00 00 00 B0 00 00 */\ por_r2r(mm1, mm7);\ MOVQ_R2M(mm6,*(dst+16));/* mm6: 00 B1 G1 R1 00 B0 G0 R0 */\ MOVQ_R2M(mm7,*(dst+24));/* mm7: 00 B3 G3 R3 00 B2 G2 R2 */ #define RGB_16_TO_24_SWAP pxor_r2r(mm3, mm3);/* Zero mm3 */\ movq_r2r(mm0, mm2);/* mm2: P3 P3 P2 P2 P1 P1 P0 P0 */\ pand_m2r(rgb_rgb_rgb16_upper_mask, mm2);\ psrlq_i2r(8, mm2);\ movq_r2r(mm2, mm6);\ punpcklbw_r2r(mm3, mm6);/* mm6: 00 00 00 R1 00 00 00 R0 */\ movq_r2r(mm2, mm7);\ punpckhbw_r2r(mm3, mm7);/* mm7: 00 00 00 R3 00 00 00 R2 */\ movq_r2r(mm0, mm2);/* mm2: P3 P3 P2 P2 P1 P1 P0 P0 */\ pand_m2r(rgb_rgb_rgb16_middle_mask, mm2);\ psrlq_i2r(3, mm2);\ punpcklbw_r2r(mm2, mm3);/* mm3: 00 00 G1 00 00 00 G0 00 */\ por_r2r(mm3, mm6);/* mm6: 00 00 G1 R1 00 00 G0 R0 */\ pxor_r2r(mm3, mm3);/* Zero mm3;*/\ punpckhbw_r2r(mm2, mm3);/* mm3: 00 00 00 R3 00 00 00 R2 */\ por_r2r(mm3, mm7);/* mm7: 00 00 G3 R3 00 00 G2 R2 */\ pand_m2r(rgb_rgb_rgb16_lower_mask, mm0);\ psllq_i2r(11, mm0);\ movq_r2r(mm0, mm2);\ pxor_r2r(mm3, mm3);/* Zero mm3;*/\ punpcklbw_r2r(mm3, mm2);/* mm2: 00 B1 00 00 00 B0 00 00 */\ por_r2r(mm2, mm6);\ punpckhbw_r2r(mm3, mm0);/* mm2: 00 B1 00 00 00 B0 00 00 */\ por_r2r(mm0, mm7);\ /* 32 -> 24 */\ movq_r2r(mm6, mm5);\ pand_m2r(rgb_rgb_lower_dword, mm5);\ pand_m2r(rgb_rgb_upper_dword, mm6);\ psrlq_i2r(8, mm6);\ por_r2r(mm5, mm6);\ movq_r2r(mm7, mm5);\ pand_m2r(rgb_rgb_lower_dword, mm5);\ pand_m2r(rgb_rgb_upper_dword, mm7);\ psrlq_i2r(8, mm7);\ por_r2r(mm5, mm7);\ movq_r2r(mm7, mm5);\ psllq_i2r(48, mm5);\ por_r2r(mm5, mm6);\ psrlq_i2r(16, mm7);\ MOVQ_R2M(mm6,*dst);\ movd_r2m(mm7,*(dst+8));\ /* Next 4 pixels */\ movq_r2r(mm1, mm2);/* mm2: P3 P3 P2 P2 P1 P1 P0 P0 */\ pand_m2r(rgb_rgb_rgb16_upper_mask, mm2);\ psrlq_i2r(8, mm2);\ movq_r2r(mm2, mm6);\ punpcklbw_r2r(mm3, mm6);/* mm6: 00 00 00 R1 00 00 00 R0 */\ movq_r2r(mm2, mm7);\ punpckhbw_r2r(mm3, mm7);/* mm7: 00 00 00 R3 00 00 00 R2 */\ movq_r2r(mm1, mm2);/* mm2: P3 P3 P2 P2 P1 P1 P0 P0 */\ pand_m2r(rgb_rgb_rgb16_middle_mask, mm2);\ psrlq_i2r(3, mm2);\ punpcklbw_r2r(mm2, mm3);/* mm3: 00 00 G1 00 00 00 G0 00 */\ por_r2r(mm3, mm6);/* mm6: 00 00 G1 R1 00 00 G0 R0 */\ pxor_r2r(mm3, mm3);/* Zero mm3;*/\ punpckhbw_r2r(mm2, mm3);/* mm3: 00 00 00 R3 00 00 00 R2 */\ por_r2r(mm3, mm7);/* mm7: 00 00 G3 R3 00 00 G2 R2 */\ pand_m2r(rgb_rgb_rgb16_lower_mask, mm1);\ psllq_i2r(11, mm1);\ movq_r2r(mm1, mm2);\ pxor_r2r(mm3, mm3);/* Zero mm3;*/\ punpcklbw_r2r(mm3, mm2);/* mm2: 00 B1 00 00 00 B0 00 00 */\ por_r2r(mm2, mm6);\ punpckhbw_r2r(mm3, mm1);/* mm2: 00 B1 00 00 00 B0 00 00 */\ por_r2r(mm1, mm7);\ /* 32 -> 24 */\ movq_r2r(mm6, mm5);\ pand_m2r(rgb_rgb_lower_dword, mm5);\ pand_m2r(rgb_rgb_upper_dword, mm6);\ psrlq_i2r(8, mm6);\ por_r2r(mm5, mm6);\ movq_r2r(mm7, mm5);\ pand_m2r(rgb_rgb_lower_dword, mm5);\ pand_m2r(rgb_rgb_upper_dword, mm7);\ psrlq_i2r(8, mm7);\ por_r2r(mm5, mm7);\ movq_r2r(mm7, mm5);\ psllq_i2r(48, mm5);\ por_r2r(mm5, mm6);\ psrlq_i2r(16, mm7);\ MOVQ_R2M(mm6,*(dst+12));\ movd_r2m(mm7,*(dst+20)); #define RGB_16_TO_32_SWAP_RGBA pxor_r2r(mm3, mm3);/* Zero mm3 */\ movq_r2r(mm0, mm2);/* mm2: P3 P3 P2 P2 P1 P1 P0 P0 */\ pand_m2r(rgb_rgb_rgb16_upper_mask, mm2);\ psrlq_i2r(8, mm2);\ movq_r2r(mm2, mm6);\ punpcklbw_r2r(mm3, mm6);/* mm6: 00 00 00 R1 00 00 00 R0 */\ movq_r2r(mm2, mm7);\ punpckhbw_r2r(mm3, mm7);/* mm7: 00 00 00 R3 00 00 00 R2 */\ movq_r2r(mm0, mm2);/* mm2: P3 P3 P2 P2 P1 P1 P0 P0 */\ pand_m2r(rgb_rgb_rgb16_middle_mask, mm2);\ psrlq_i2r(3, mm2);\ punpcklbw_r2r(mm2, mm3);/* mm3: 00 00 G1 00 00 00 G0 00 */\ por_r2r(mm3, mm6);/* mm6: 00 00 G1 R1 00 00 G0 R0 */\ pxor_r2r(mm3, mm3);/* Zero mm3;*/\ punpckhbw_r2r(mm2, mm3);/* mm3: 00 00 00 R3 00 00 00 R2 */\ por_r2r(mm3, mm7);/* mm7: 00 00 G3 R3 00 00 G2 R2 */\ pand_m2r(rgb_rgb_rgb16_lower_mask, mm0);\ psllq_i2r(11, mm0);\ movq_r2r(mm0, mm2);\ pxor_r2r(mm3, mm3);/* Zero mm3;*/\ punpcklbw_r2r(mm3, mm2);/* mm2: 00 B1 00 00 00 B0 00 00 */\ por_r2r(mm2, mm6);\ punpckhbw_r2r(mm3, mm0);/* mm2: 00 B1 00 00 00 B0 00 00 */\ por_r2r(mm0, mm7);\ por_m2r(rgba32_alpha_mask, mm6);\ por_m2r(rgba32_alpha_mask, mm7);\ MOVQ_R2M(mm6,*dst);/* mm6: 00 B1 G1 R1 00 B0 G0 R0 */\ MOVQ_R2M(mm7,*(dst+8));/* mm7: 00 B3 G3 R3 00 B2 G2 R2 */\ movq_r2r(mm1, mm2);/* mm2: P3 P3 P2 P2 P1 P1 P0 P0 */\ pand_m2r(rgb_rgb_rgb16_upper_mask, mm2);\ psrlq_i2r(8, mm2);\ movq_r2r(mm2, mm6);\ punpcklbw_r2r(mm3, mm6);/* mm6: 00 00 00 R1 00 00 00 R0 */\ movq_r2r(mm2, mm7);\ punpckhbw_r2r(mm3, mm7);/* mm7: 00 00 00 R3 00 00 00 R2 */\ movq_r2r(mm1, mm2);/* mm2: P3 P3 P2 P2 P1 P1 P0 P0 */\ pand_m2r(rgb_rgb_rgb16_middle_mask, mm2);\ psrlq_i2r(3, mm2);\ punpcklbw_r2r(mm2, mm3);/* mm3: 00 00 G1 00 00 00 G0 00 */\ por_r2r(mm3, mm6);/* mm6: 00 00 G1 R1 00 00 G0 R0 */\ pxor_r2r(mm3, mm3);/* Zero mm3;*/\ punpckhbw_r2r(mm2, mm3);/* mm3: 00 00 00 R3 00 00 00 R2 */\ por_r2r(mm3, mm7);/* mm7: 00 00 G3 R3 00 00 G2 R2 */\ pand_m2r(rgb_rgb_rgb16_lower_mask, mm1);\ psllq_i2r(11, mm1);\ movq_r2r(mm1, mm2);\ pxor_r2r(mm3, mm3);/* Zero mm3;*/\ punpcklbw_r2r(mm3, mm2);/* mm2: 00 B1 00 00 00 B0 00 00 */\ por_r2r(mm2, mm6);\ punpckhbw_r2r(mm3, mm1);/* mm2: 00 B1 00 00 00 B0 00 00 */\ por_r2r(mm1, mm7);\ por_m2r(rgba32_alpha_mask, mm6);\ por_m2r(rgba32_alpha_mask, mm7);\ MOVQ_R2M(mm6,*(dst+16));/* mm6: 00 B1 G1 R1 00 B0 G0 R0 */\ MOVQ_R2M(mm7,*(dst+24));/* mm7: 00 B3 G3 R3 00 B2 G2 R2 */ #define RGB_32_TO_16 movq_r2r(mm0, mm4);\ movq_r2r(mm1, mm5);\ pand_m2r(rgb_rgb_rgb32_upper_lower_mask, mm4);/* mm4: 00 B1 00 R1 00 B0 00 R0 */\ pand_m2r(rgb_rgb_rgb32_upper_lower_mask, mm5);/* mm5: 00 B3 00 R3 00 B3 00 R2 */\ packuswb_r2r(mm5, mm4);/* mm4: B3 R3 B2 R2 B1 R1 B0 R0 */\ movq_r2r(mm4, mm6);\ pand_m2r(rgb_rgb_rgb16_upper_mask, mm6);\ psrlq_i2r(3, mm4);\ pand_m2r(rgb_rgb_rgb16_lower_mask, mm4);\ por_r2r(mm4, mm6);\ pand_m2r(rgb_rgb_rgb32_middle_mask, mm0);/* mm0: 00 00 G1 00 00 00 G0 00 */\ pand_m2r(rgb_rgb_rgb32_middle_mask, mm1);/* mm1: 00 00 G3 00 00 00 G2 00 */\ psrlq_i2r(1, mm0);\ psrlq_i2r(1, mm1);\ packssdw_r2r(mm1, mm0);/* mm0: G3 00 G2 00 G1 00 G0 00 */\ psrlq_i2r(4, mm0);\ pand_m2r(rgb_rgb_rgb16_middle_mask, mm0);\ por_r2r(mm0, mm6);\ MOVQ_R2M(mm6, *dst);\ movq_r2r(mm2, mm4);\ movq_r2r(mm3, mm5);\ pand_m2r(rgb_rgb_rgb32_upper_lower_mask, mm4);\ pand_m2r(rgb_rgb_rgb32_upper_lower_mask, mm5);\ packuswb_r2r(mm5, mm4);\ movq_r2r(mm4, mm6);\ pand_m2r(rgb_rgb_rgb16_upper_mask, mm6);\ psrlq_i2r(3, mm4);\ pand_m2r(rgb_rgb_rgb16_lower_mask, mm4);\ por_r2r(mm4, mm6);\ pand_m2r(rgb_rgb_rgb32_middle_mask, mm2);\ pand_m2r(rgb_rgb_rgb32_middle_mask, mm3);\ psrlq_i2r(1, mm2);\ psrlq_i2r(1, mm3);\ packssdw_r2r(mm3, mm2);\ psrlq_i2r(4, mm2);\ pand_m2r(rgb_rgb_rgb16_middle_mask, mm2);\ por_r2r(mm2, mm6);\ MOVQ_R2M(mm6, *(dst+8)); #define RGB_32_TO_16_SWAP movq_r2r(mm0, mm4);\ movq_r2r(mm1, mm5);\ pand_m2r(rgb_rgb_rgb32_upper_lower_mask, mm4);/* mm4: 00 B1 00 R1 00 B0 00 R0 */\ pand_m2r(rgb_rgb_rgb32_upper_lower_mask, mm5);/* mm5: 00 B3 00 R3 00 B3 00 R2 */\ packuswb_r2r(mm5, mm4);/* mm4: B3 R3 B2 R2 B1 R1 B0 R0 */\ movq_r2r(mm4, mm6);\ psrlw_i2r(11, mm6);\ psllq_i2r(8, mm4);\ pand_m2r(rgb_rgb_rgb16_upper_mask, mm4);\ por_r2r(mm4, mm6);\ pand_m2r(rgb_rgb_rgb32_middle_mask, mm0);/* mm0: 00 00 G1 00 00 00 G0 00 */\ pand_m2r(rgb_rgb_rgb32_middle_mask, mm1);/* mm1: 00 00 G3 00 00 00 G2 00 */\ psrlq_i2r(1, mm0);\ psrlq_i2r(1, mm1);\ packssdw_r2r(mm1, mm0);/* mm0: G3 00 G2 00 G1 00 G0 00 */\ psrlq_i2r(4, mm0);\ pand_m2r(rgb_rgb_rgb16_middle_mask, mm0);\ por_r2r(mm0, mm6);\ MOVQ_R2M(mm6, *dst);\ movq_r2r(mm2, mm4);\ movq_r2r(mm3, mm5);\ pand_m2r(rgb_rgb_rgb32_upper_lower_mask, mm4);\ pand_m2r(rgb_rgb_rgb32_upper_lower_mask, mm5);\ packuswb_r2r(mm5, mm4);\ movq_r2r(mm4, mm6);\ psrlw_i2r(11, mm6);\ psllq_i2r(8, mm4);\ pand_m2r(rgb_rgb_rgb16_upper_mask, mm4);\ por_r2r(mm4, mm6);\ pand_m2r(rgb_rgb_rgb32_middle_mask, mm2);\ pand_m2r(rgb_rgb_rgb32_middle_mask, mm3);\ psrlq_i2r(1, mm2);\ psrlq_i2r(1, mm3);\ packssdw_r2r(mm3, mm2);\ psrlq_i2r(4, mm2);\ pand_m2r(rgb_rgb_rgb16_middle_mask, mm2);\ por_r2r(mm2, mm6);\ MOVQ_R2M(mm6, *(dst+8)); #define RGB_32_TO_15 movq_r2r(mm0, mm4);\ movq_r2r(mm1, mm5);\ pand_m2r(rgb_rgb_rgb32_upper_lower_mask, mm4);/* mm4: 00 B1 00 R1 00 B0 00 R0 */\ pand_m2r(rgb_rgb_rgb32_upper_lower_mask, mm5);/* mm5: 00 B3 00 R3 00 B3 00 R2 */\ packuswb_r2r(mm5, mm4);/* mm4: B3 R3 B2 R2 B1 R1 B0 R0 */\ movq_r2r(mm4, mm6);\ psrlq_i2r(1, mm6);\ pand_m2r(rgb_rgb_rgb15_upper_mask, mm6);\ psrlq_i2r(3, mm4);\ pand_m2r(rgb_rgb_rgb15_lower_mask, mm4);\ por_r2r(mm4, mm6);\ pand_m2r(rgb_rgb_rgb32_middle_mask, mm0);/* mm0: 00 00 G1 00 00 00 G0 00 */\ pand_m2r(rgb_rgb_rgb32_middle_mask, mm1);/* mm1: 00 00 G3 00 00 00 G2 00 */\ psrlq_i2r(1, mm0);\ psrlq_i2r(1, mm1);\ packssdw_r2r(mm1, mm0);/* mm0: G3 00 G2 00 G1 00 G0 00 */\ psrlq_i2r(5, mm0);\ pand_m2r(rgb_rgb_rgb15_middle_mask, mm0);\ por_r2r(mm0, mm6);\ MOVQ_R2M(mm6, *dst);\ movq_r2r(mm2, mm4);\ movq_r2r(mm3, mm5);\ pand_m2r(rgb_rgb_rgb32_upper_lower_mask, mm4);\ pand_m2r(rgb_rgb_rgb32_upper_lower_mask, mm5);\ packuswb_r2r(mm5, mm4);\ movq_r2r(mm4, mm6);\ psrlq_i2r(1, mm6);\ pand_m2r(rgb_rgb_rgb15_upper_mask, mm6);\ psrlq_i2r(3, mm4);\ pand_m2r(rgb_rgb_rgb15_lower_mask, mm4);\ por_r2r(mm4, mm6);\ pand_m2r(rgb_rgb_rgb32_middle_mask, mm2);\ pand_m2r(rgb_rgb_rgb32_middle_mask, mm3);\ psrlq_i2r(1, mm2);\ psrlq_i2r(1, mm3);\ packssdw_r2r(mm3, mm2);\ psrlq_i2r(5, mm2);\ pand_m2r(rgb_rgb_rgb15_middle_mask, mm2);\ por_r2r(mm2, mm6);\ MOVQ_R2M(mm6, *(dst+8)); #define RGB_32_TO_15_SWAP movq_r2r(mm0, mm4);\ movq_r2r(mm1, mm5);\ pand_m2r(rgb_rgb_rgb32_upper_lower_mask, mm4);/* mm4: 00 B1 00 R1 00 B0 00 R0 */\ pand_m2r(rgb_rgb_rgb32_upper_lower_mask, mm5);/* mm5: 00 B3 00 R3 00 B3 00 R2 */\ packuswb_r2r(mm5, mm4);/* mm4: B3 R3 B2 R2 B1 R1 B0 R0 */\ movq_r2r(mm4, mm6);\ psrlw_i2r(11, mm6);\ psllw_i2r(7, mm4);\ pand_m2r(rgb_rgb_rgb15_upper_mask, mm4);\ por_r2r(mm4, mm6);\ pand_m2r(rgb_rgb_rgb32_middle_mask, mm0);/* mm0: 00 00 G1 00 00 00 G0 00 */\ pand_m2r(rgb_rgb_rgb32_middle_mask, mm1);/* mm1: 00 00 G3 00 00 00 G2 00 */\ psrlq_i2r(1, mm0);\ psrlq_i2r(1, mm1);\ packssdw_r2r(mm1, mm0);/* mm0: G3 00 G2 00 G1 00 G0 00 */\ psrlq_i2r(5, mm0);\ pand_m2r(rgb_rgb_rgb15_middle_mask, mm0);\ por_r2r(mm0, mm6);\ MOVQ_R2M(mm6, *dst);\ movq_r2r(mm2, mm4);\ movq_r2r(mm3, mm5);\ pand_m2r(rgb_rgb_rgb32_upper_lower_mask, mm4);\ pand_m2r(rgb_rgb_rgb32_upper_lower_mask, mm5);\ packuswb_r2r(mm5, mm4);\ movq_r2r(mm4, mm6);\ psrlw_i2r(11, mm6);\ psllw_i2r(7, mm4);\ pand_m2r(rgb_rgb_rgb15_upper_mask, mm4);\ por_r2r(mm4, mm6);\ pand_m2r(rgb_rgb_rgb32_middle_mask, mm2);\ pand_m2r(rgb_rgb_rgb32_middle_mask, mm3);\ psrlq_i2r(1, mm2);\ psrlq_i2r(1, mm3);\ packssdw_r2r(mm3, mm2);\ psrlq_i2r(5, mm2);\ pand_m2r(rgb_rgb_rgb15_middle_mask, mm2);\ por_r2r(mm2, mm6);\ MOVQ_R2M(mm6, *(dst+8)); #define FUNC_NAME swap_rgb_24_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 24 #define OUT_ADVANCE 24 #define NUM_PIXELS 8 #define CONVERT SWAP_24 #define CLEANUP emms(); #include "../csp_packed_packed.h" #define FUNC_NAME swap_rgb_32_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 32 #define OUT_ADVANCE 32 #define NUM_PIXELS 8 #define CONVERT \ LOAD_32 \ SWAP_32 \ WRITE_32 #define CLEANUP emms(); #include "../csp_packed_packed.h" #define FUNC_NAME swap_rgb_16_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE 16 #define NUM_PIXELS 8 #define CONVERT \ LOAD_16 \ SWAP_16 \ WRITE_16 #define INIT INIT_SWAP_16 #define CLEANUP emms(); #include "../csp_packed_packed.h" #define FUNC_NAME swap_rgb_15_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE 16 #define NUM_PIXELS 8 #define CONVERT \ LOAD_16 \ SWAP_15 \ WRITE_16 #define INIT INIT_SWAP_15 #define CLEANUP emms(); #include "../csp_packed_packed.h" #define FUNC_NAME rgb_15_to_16_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE 16 #define NUM_PIXELS 8 #define CONVERT \ LOAD_16 \ RGB_15_TO_16 \ WRITE_16 #define INIT INIT_RGB_15_TO_16 #define CLEANUP emms(); #include "../csp_packed_packed.h" #define FUNC_NAME rgb_15_to_24_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE 24 #define NUM_PIXELS 8 #define CONVERT \ LOAD_16 \ RGB_15_TO_24_SWAP #define CLEANUP emms(); #include "../csp_packed_packed.h" #define FUNC_NAME rgb_15_to_32_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE 32 #define NUM_PIXELS 8 #define CONVERT \ LOAD_16 \ RGB_15_TO_32_SWAP #define CLEANUP emms(); #include "../csp_packed_packed.h" #define FUNC_NAME rgb_16_to_15_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE 16 #define NUM_PIXELS 8 #define INIT INIT_RGB_16_TO_15 #define CONVERT \ LOAD_16 \ RGB_16_TO_15 \ WRITE_16 #define CLEANUP emms(); #include "../csp_packed_packed.h" #define FUNC_NAME rgb_16_to_24_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE 24 #define NUM_PIXELS 8 #define CONVERT \ LOAD_16 \ RGB_16_TO_24_SWAP #define CLEANUP emms(); #include "../csp_packed_packed.h" #define FUNC_NAME rgb_16_to_32_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE 32 #define NUM_PIXELS 8 #define CONVERT \ LOAD_16 \ RGB_16_TO_32_SWAP #define CLEANUP emms(); #include "../csp_packed_packed.h" #define FUNC_NAME rgb_24_to_15_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 24 #define OUT_ADVANCE 16 #define NUM_PIXELS 8 #define CONVERT \ LOAD_24 \ RGB_32_TO_15_SWAP #define CLEANUP emms(); #include "../csp_packed_packed.h" #define FUNC_NAME rgb_24_to_16_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 24 #define OUT_ADVANCE 16 #define NUM_PIXELS 8 #define CONVERT \ LOAD_24 \ RGB_32_TO_16_SWAP #define CLEANUP emms(); #include "../csp_packed_packed.h" #define FUNC_NAME rgb_24_to_32_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 24 #define OUT_ADVANCE 32 #define NUM_PIXELS 8 #define CONVERT \ LOAD_24 \ WRITE_32 #define CLEANUP emms(); #include "../csp_packed_packed.h" #define FUNC_NAME rgb_32_to_15_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 32 #define OUT_ADVANCE 16 #define NUM_PIXELS 8 #define CONVERT \ LOAD_32 \ RGB_32_TO_15_SWAP #define CLEANUP emms(); #include "../csp_packed_packed.h" #define FUNC_NAME rgb_32_to_16_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 32 #define OUT_ADVANCE 16 #define NUM_PIXELS 8 #define CONVERT \ LOAD_32 \ RGB_32_TO_16_SWAP #define CLEANUP emms(); #include "../csp_packed_packed.h" #define FUNC_NAME rgb_32_to_24_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 32 #define OUT_ADVANCE 24 #define NUM_PIXELS 8 #define CONVERT \ LOAD_32 \ WRITE_24 #define CLEANUP emms(); #include "../csp_packed_packed.h" #define FUNC_NAME rgb_15_to_16_swap_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE 16 #define NUM_PIXELS 8 #define CONVERT \ LOAD_16 \ SWAP_15_TO_16 \ WRITE_16 #define INIT INIT_SWAP_15_TO_16 #define CLEANUP emms(); #include "../csp_packed_packed.h" #define FUNC_NAME rgb_15_to_24_swap_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE 24 #define NUM_PIXELS 8 #define CONVERT \ LOAD_16 \ RGB_15_TO_24 #define CLEANUP emms(); #include "../csp_packed_packed.h" #define FUNC_NAME rgb_15_to_32_swap_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE 32 #define NUM_PIXELS 8 #define CONVERT \ LOAD_16 \ RGB_15_TO_32 #define CLEANUP emms(); #include "../csp_packed_packed.h" #define FUNC_NAME rgb_16_to_15_swap_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE 16 #define NUM_PIXELS 8 #define CONVERT \ LOAD_16 \ SWAP_16_TO_15 \ WRITE_16 #define INIT INIT_SWAP_16_TO_15 #define CLEANUP emms(); #include "../csp_packed_packed.h" #define FUNC_NAME rgb_16_to_24_swap_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE 24 #define NUM_PIXELS 8 #define CONVERT \ LOAD_16 \ RGB_16_TO_24 #define CLEANUP emms(); #include "../csp_packed_packed.h" #define FUNC_NAME rgb_16_to_32_swap_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE 32 #define NUM_PIXELS 8 #define CONVERT \ LOAD_16 \ RGB_16_TO_32 #define CLEANUP emms(); #include "../csp_packed_packed.h" #define FUNC_NAME rgb_24_to_15_swap_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 24 #define OUT_ADVANCE 16 #define NUM_PIXELS 8 #define CONVERT \ LOAD_24 \ RGB_32_TO_15 #define CLEANUP emms(); #include "../csp_packed_packed.h" #define FUNC_NAME rgb_24_to_16_swap_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 24 #define OUT_ADVANCE 16 #define NUM_PIXELS 8 #define CONVERT \ LOAD_24 \ RGB_32_TO_16 #define CLEANUP emms(); #include "../csp_packed_packed.h" #define FUNC_NAME rgb_24_to_32_swap_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 24 #define OUT_ADVANCE 32 #define NUM_PIXELS 8 #define CONVERT \ LOAD_24 \ SWAP_32 \ WRITE_32 #define CLEANUP emms(); #include "../csp_packed_packed.h" #define FUNC_NAME rgb_32_to_15_swap_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 32 #define OUT_ADVANCE 16 #define NUM_PIXELS 8 #define CONVERT \ LOAD_32 \ RGB_32_TO_15 #define CLEANUP emms(); #include "../csp_packed_packed.h" #define FUNC_NAME rgb_32_to_16_swap_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 32 #define OUT_ADVANCE 16 #define NUM_PIXELS 8 #define CONVERT \ LOAD_32 \ RGB_32_TO_16 #define CLEANUP emms(); #include "../csp_packed_packed.h" #define FUNC_NAME rgb_32_to_24_swap_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 32 #define OUT_ADVANCE 24 #define NUM_PIXELS 8 #define CONVERT \ LOAD_32 \ SWAP_32 \ WRITE_24 #define CLEANUP emms(); #include "../csp_packed_packed.h" /* Conversion from RGB formats to RGBA */ #define FUNC_NAME rgb_15_to_rgba_32_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE 32 #define NUM_PIXELS 8 #define CONVERT \ LOAD_16 \ RGB_15_TO_32_SWAP_RGBA #define CLEANUP emms(); #include "../csp_packed_packed.h" #define FUNC_NAME bgr_15_to_rgba_32_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE 32 #define NUM_PIXELS 8 #define CONVERT \ LOAD_16 \ RGB_15_TO_32_RGBA #define CLEANUP emms(); #include "../csp_packed_packed.h" #define FUNC_NAME rgb_16_to_rgba_32_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE 32 #define NUM_PIXELS 8 #define CONVERT \ LOAD_16 \ RGB_16_TO_32_SWAP_RGBA #define CLEANUP emms(); #include "../csp_packed_packed.h" #define FUNC_NAME bgr_16_to_rgba_32_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE 32 #define NUM_PIXELS 8 #define CONVERT \ LOAD_16 \ RGB_16_TO_32_RGBA #define CLEANUP emms(); #include "../csp_packed_packed.h" #define FUNC_NAME rgb_24_to_rgba_32_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 24 #define OUT_ADVANCE 32 #define NUM_PIXELS 8 #define CONVERT \ LOAD_24 \ WRITE_RGBA_32 #define INIT INIT_WRITE_RGBA_32 #define CLEANUP emms(); #include "../csp_packed_packed.h" #define FUNC_NAME bgr_24_to_rgba_32_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 24 #define OUT_ADVANCE 32 #define NUM_PIXELS 8 #define CONVERT \ LOAD_24 \ SWAP_32 \ WRITE_RGBA_32 #define INIT INIT_WRITE_RGBA_32 #define CLEANUP emms(); #include "../csp_packed_packed.h" #define FUNC_NAME rgb_32_to_rgba_32_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 32 #define OUT_ADVANCE 32 #define NUM_PIXELS 8 #define CONVERT \ LOAD_32 \ WRITE_RGBA_32 #define INIT INIT_WRITE_RGBA_32 #define CLEANUP emms(); #include "../csp_packed_packed.h" #define FUNC_NAME bgr_32_to_rgba_32_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 32 #define OUT_ADVANCE 32 #define NUM_PIXELS 8 #define CONVERT \ LOAD_32 \ SWAP_32 \ WRITE_RGBA_32 #define INIT INIT_WRITE_RGBA_32 #define CLEANUP emms(); #include "../csp_packed_packed.h" /* Conversion from RGBA to RGB formats */ #define INIT_RGBA_32 INTERPOLATE_INIT_TEMP;\ tmp.ub[0] = ctx->options->background_16[0]>>8; \ tmp.ub[2] = ctx->options->background_16[1]>>8; \ tmp.ub[4] = ctx->options->background_16[2]>>8; \ tmp.ub[6] = 0xff;\ movq_m2r(tmp, mm1);\ /* rgba_32_to_rgb_15_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME rgba_32_to_rgb_15_mmx #define CONVERT \ INTERPOLATE_LOAD_SRC_RGBA32 \ INTERPOLATE_1D \ INTERPOLATE_WRITE_15_SWAP #define INIT \ INIT_RGBA_32 #define CLEANUP emms(); #include "../csp_packed_packed.h" /* rgba_32_to_bgr_15_mmx */ #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME rgba_32_to_bgr_15_mmx #define CONVERT \ INTERPOLATE_LOAD_SRC_RGBA32 \ INTERPOLATE_1D \ INTERPOLATE_WRITE_15 #define INIT \ INIT_RGBA_32 #define CLEANUP emms(); #include "../csp_packed_packed.h" /* rgba_32_to_rgb_16_mmx */ #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME rgba_32_to_rgb_16_mmx #define CONVERT \ INTERPOLATE_LOAD_SRC_RGBA32 \ INTERPOLATE_1D \ INTERPOLATE_WRITE_16_SWAP #define INIT \ INIT_RGBA_32 #define CLEANUP emms(); #include "../csp_packed_packed.h" /* rgba_32_to_bgr_16_mmx */ #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME rgba_32_to_bgr_16_mmx #define CONVERT \ INTERPOLATE_LOAD_SRC_RGBA32 \ INTERPOLATE_1D \ INTERPOLATE_WRITE_16 #define INIT \ INIT_RGBA_32 #define CLEANUP emms(); #include "../csp_packed_packed.h" /* rgba_32_to_rgb_24_mmx */ #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define FUNC_NAME rgba_32_to_rgb_24_mmx #define CONVERT \ INTERPOLATE_LOAD_SRC_RGBA32 \ INTERPOLATE_1D \ INTERPOLATE_WRITE_RGB24 #define INIT \ INIT_RGBA_32 #define CLEANUP emms(); #include "../csp_packed_packed.h" /* rgba_32_to_bgr_24_mmx */ #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define FUNC_NAME rgba_32_to_bgr_24_mmx #define CONVERT \ INTERPOLATE_LOAD_SRC_RGBA32 \ INTERPOLATE_1D \ INTERPOLATE_WRITE_BGR24 #define INIT \ INIT_RGBA_32 #define CLEANUP emms(); #include "../csp_packed_packed.h" /* rgba_32_to_rgb_32_mmx */ #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME rgba_32_to_rgb_32_mmx #define CONVERT \ INTERPOLATE_LOAD_SRC_RGBA32 \ INTERPOLATE_1D \ INTERPOLATE_WRITE_RGB32 #define INIT \ INIT_RGBA_32 #define CLEANUP emms(); #include "../csp_packed_packed.h" /* rgba_32_to_bgr_32_mmx */ #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME rgba_32_to_bgr_32_mmx #define CONVERT \ INTERPOLATE_LOAD_SRC_RGBA32 \ INTERPOLATE_1D \ INTERPOLATE_WRITE_BGR24 #define INIT \ INIT_RGBA_32 #define CLEANUP emms(); #include "../csp_packed_packed.h" void gavl_init_rgb_rgb_funcs_mmx(gavl_pixelformat_function_table_t * tab, int width, const gavl_video_options_t * opt) { if(width % 8) return; /* Lossless conversions */ tab->swap_rgb_24 = swap_rgb_24_mmx; tab->swap_rgb_32 = swap_rgb_32_mmx; tab->swap_rgb_16 = swap_rgb_16_mmx; tab->swap_rgb_15 = swap_rgb_15_mmx; /* Conversion from RGB formats to RGBA (lossless) */ tab->rgb_24_to_rgba_32 = rgb_24_to_rgba_32_mmx; tab->bgr_24_to_rgba_32 = bgr_24_to_rgba_32_mmx; tab->rgb_32_to_rgba_32 = rgb_32_to_rgba_32_mmx; tab->bgr_32_to_rgba_32 = bgr_32_to_rgba_32_mmx; /* RGBA -> */ if(opt->alpha_mode == GAVL_ALPHA_IGNORE) { tab->rgba_32_to_rgb_24 = rgb_32_to_24_mmx; tab->rgba_32_to_bgr_24 = rgb_32_to_24_swap_mmx; tab->rgba_32_to_bgr_32 = swap_rgb_32_mmx; } /* Conversions from fewer to more bits are not that good */ if(opt->quality < 3) { tab->rgb_15_to_16 = rgb_15_to_16_mmx; tab->rgb_15_to_24 = rgb_15_to_24_mmx; tab->rgb_15_to_32 = rgb_15_to_32_mmx; tab->rgb_16_to_24 = rgb_16_to_24_mmx; tab->rgb_16_to_32 = rgb_16_to_32_mmx; tab->rgb_15_to_16_swap = rgb_15_to_16_swap_mmx; tab->rgb_15_to_24_swap = rgb_15_to_24_swap_mmx; tab->rgb_15_to_32_swap = rgb_15_to_32_swap_mmx; tab->rgb_16_to_24_swap = rgb_16_to_24_swap_mmx; tab->rgb_16_to_32_swap = rgb_16_to_32_swap_mmx; tab->rgb_15_to_rgba_32 = rgb_15_to_rgba_32_mmx; tab->bgr_15_to_rgba_32 = bgr_15_to_rgba_32_mmx; tab->rgb_16_to_rgba_32 = rgb_16_to_rgba_32_mmx; tab->bgr_16_to_rgba_32 = bgr_16_to_rgba_32_mmx; if(opt->alpha_mode == GAVL_ALPHA_BLEND_COLOR) { tab->rgba_32_to_rgb_15 = rgba_32_to_rgb_15_mmx; tab->rgba_32_to_bgr_15 = rgba_32_to_bgr_15_mmx; tab->rgba_32_to_rgb_16 = rgba_32_to_rgb_16_mmx; tab->rgba_32_to_bgr_16 = rgba_32_to_bgr_16_mmx; tab->rgba_32_to_rgb_24 = rgba_32_to_rgb_24_mmx; tab->rgba_32_to_bgr_24 = rgba_32_to_bgr_24_mmx; tab->rgba_32_to_rgb_32 = rgba_32_to_rgb_32_mmx; tab->rgba_32_to_bgr_32 = rgba_32_to_bgr_32_mmx; } } /* Conversions from more to fewer bits are the same as the C versions. High quality versions however, might be better */ if(opt->quality < 4) { tab->rgb_16_to_15 = rgb_16_to_15_mmx; tab->rgb_24_to_15 = rgb_24_to_15_mmx; tab->rgb_24_to_16 = rgb_24_to_16_mmx; tab->rgb_24_to_32 = rgb_24_to_32_mmx; tab->rgb_32_to_15 = rgb_32_to_15_mmx; tab->rgb_32_to_16 = rgb_32_to_16_mmx; tab->rgb_32_to_24 = rgb_32_to_24_mmx; tab->rgb_16_to_15_swap = rgb_16_to_15_swap_mmx; tab->rgb_24_to_15_swap = rgb_24_to_15_swap_mmx; tab->rgb_24_to_16_swap = rgb_24_to_16_swap_mmx; tab->rgb_24_to_32_swap = rgb_24_to_32_swap_mmx; tab->rgb_32_to_15_swap = rgb_32_to_15_swap_mmx; tab->rgb_32_to_16_swap = rgb_32_to_16_swap_mmx; tab->rgb_32_to_24_swap = rgb_32_to_24_swap_mmx; /* RGBA -> */ if(opt->alpha_mode == GAVL_ALPHA_IGNORE) { tab->rgba_32_to_rgb_15 = rgb_32_to_15_mmx; tab->rgba_32_to_bgr_15 = rgb_32_to_15_swap_mmx; tab->rgba_32_to_rgb_16 = rgb_32_to_16_mmx; tab->rgba_32_to_bgr_16 = rgb_32_to_16_swap_mmx; } } } #else void gavl_init_rgb_rgb_funcs_mmxext(gavl_pixelformat_function_table_t * tab, int width, const gavl_video_options_t * opt) { } #endif // !MMXEXT bplaum-gavl-b9385e3/gavl/mmx/_rgb_yuv_mmx.c000066400000000000000000002050661513252040200206630ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ /* * Support for mmxext * this macro produces another set of * functions in ../mmxext */ #ifndef MMXEXT static const mmx_t rgb_yuv_rgb24_l = { 0x0000000000FFFFFFLL }; static const mmx_t rgb_yuv_rgb24_u = { 0x0000FFFFFF000000LL }; static const mmx_t rgb_yuv_rgb16_upper_mask = { 0xf800f800f800f800LL }; static const mmx_t rgb_yuv_rgb16_middle_mask = { 0x07e007e007e007e0LL }; static const mmx_t rgb_yuv_rgb16_lower_mask = { 0x001f001f001f001fLL }; static const mmx_t rgb_yuv_rgb15_upper_mask = { 0x7C007C007C007C00LL }; static const mmx_t rgb_yuv_rgb15_middle_mask = { 0x03e003e003e003e0LL }; static const mmx_t rgb_yuv_rgb15_lower_mask = { 0x001f001f001f001fLL }; #define RGB_YUV_LOAD_RGB_24 movq_m2r(*src, mm0);/* mm0: G2 R2 B1 G1 R1 B0 G0 R0 */\ movd_m2r(*(src+8), mm1);/* mm1: 00 00 00 00 B3 G3 R3 B2 */\ movq_r2r(mm0, mm2);/* mm2: G2 R2 B1 G1 R1 B0 G0 R0 */\ psrlq_i2r(48, mm2);/* mm2: 00 00 00 00 00 00 G2 R2 */\ psllq_i2r(16 , mm1);/* mm1: 00 00 B3 G3 R3 B2 00 00 */\ por_r2r(mm2, mm1);/* mm1: 00 00 B3 G3 R3 B2 G2 R2 */\ movq_r2r(mm0, mm2);/* mm2: 00 00 B3 G3 R3 B2 G2 R2 */\ pand_m2r(rgb_yuv_rgb24_l, mm0);/*mm0: 00 00 00 00 00 B0 G0 R0 */\ pand_m2r(rgb_yuv_rgb24_u, mm2);\ psllq_i2r(8, mm2);\ por_r2r(mm2, mm0);\ movq_r2r(mm1, mm2);\ pand_m2r(rgb_yuv_rgb24_l, mm1);\ pand_m2r(rgb_yuv_rgb24_u, mm2);\ psllq_i2r(8, mm2);\ por_r2r(mm2, mm1); #define LOAD_RGB_32 movq_m2r(*src, mm0);\ movq_m2r(*(src+8),mm1); #define LOAD_RGB_15 movq_m2r(*src, mm5);\ pxor_r2r(mm3, mm3);/* Zero mm3 */\ movq_r2r(mm5, mm2);/* mm2: P3 P3 P2 P2 P1 P1 P0 P0 */\ pand_m2r(rgb_yuv_rgb15_lower_mask, mm2);\ psllq_i2r(3, mm2);\ movq_r2r(mm2, mm0);\ punpcklbw_r2r(mm3, mm0);/* mm0: 00 00 00 R1 00 00 00 R0 */\ movq_r2r(mm2, mm1);\ punpckhbw_r2r(mm3, mm1);/* mm1: 00 00 00 R3 00 00 00 R2 */\ movq_r2r(mm5, mm2);/* mm2: P3 P3 P2 P2 P1 P1 P0 P0 */\ pand_m2r(rgb_yuv_rgb15_middle_mask, mm2);\ psrlq_i2r(2, mm2);\ punpcklbw_r2r(mm2, mm3);/* mm3: 00 00 G1 00 00 00 G0 00 */\ por_r2r(mm3, mm0);/* mm0: 00 00 G1 R1 00 00 G0 R0 */\ pxor_r2r(mm3, mm3);/* Zero mm3;*/\ punpckhbw_r2r(mm2, mm3);/* mm3: 00 00 00 R3 00 00 00 R2 */\ por_r2r(mm3, mm1);/* mm1: 00 00 G3 R3 00 00 G2 R2 */\ pand_m2r(rgb_yuv_rgb15_upper_mask, mm5);\ psllq_i2r(1, mm5);\ movq_r2r(mm5, mm2);\ pxor_r2r(mm3, mm3);/* Zero mm3;*/\ punpcklbw_r2r(mm3, mm2);/* mm2: 00 B1 00 00 00 B0 00 00 */\ por_r2r(mm2, mm0);\ punpckhbw_r2r(mm3, mm5);/* mm2: 00 B1 00 00 00 B0 00 00 */\ por_r2r(mm5, mm1); #define LOAD_RGB_16 movq_m2r(*src, mm5);\ pxor_r2r(mm3, mm3);/* Zero mm3 */\ movq_r2r(mm5, mm2);/* mm2: P3 P3 P2 P2 P1 P1 P0 P0 */\ pand_m2r(rgb_yuv_rgb16_lower_mask, mm2);\ psllq_i2r(3, mm2);\ movq_r2r(mm2, mm0);\ punpcklbw_r2r(mm3, mm0);/* mm0: 00 00 00 R1 00 00 00 R0 */\ movq_r2r(mm2, mm1);\ punpckhbw_r2r(mm3, mm1);/* mm1: 00 00 00 R3 00 00 00 R2 */\ movq_r2r(mm5, mm2);/* mm2: P3 P3 P2 P2 P1 P1 P0 P0 */\ pand_m2r(rgb_yuv_rgb16_middle_mask, mm2);\ psrlq_i2r(3, mm2);\ punpcklbw_r2r(mm2, mm3);/* mm3: 00 00 G1 00 00 00 G0 00 */\ por_r2r(mm3, mm0);/* mm0: 00 00 G1 R1 00 00 G0 R0 */\ pxor_r2r(mm3, mm3);/* Zero mm3;*/\ punpckhbw_r2r(mm2, mm3);/* mm3: 00 00 00 R3 00 00 00 R2 */\ por_r2r(mm3, mm1);/* mm1: 00 00 G3 R3 00 00 G2 R2 */\ pand_m2r(rgb_yuv_rgb16_upper_mask, mm5);\ movq_r2r(mm5, mm2);\ pxor_r2r(mm3, mm3);/* Zero mm3;*/\ punpcklbw_r2r(mm3, mm2);/* mm2: 00 B1 00 00 00 B0 00 00 */\ por_r2r(mm2, mm0);\ punpckhbw_r2r(mm3, mm5);/* mm2: 00 B1 00 00 00 B0 00 00 */\ por_r2r(mm5, mm1); // RGB to Y conversion // Input: // mm0: 00 B1 G1 R1 00 B0 G0 R0 // mm1: 00 B3 G3 R3 00 B2 G2 R2 #define R_TO_Y (int16_t)( 0.29900*219.0/255.0*32768.0) #define G_TO_Y (int16_t)( 0.58700*219.0/255.0*32768.0) #define B_TO_Y (int16_t)( 0.11400*219.0/255.0*32768.0) #define R_TO_U (int16_t)(-0.16874*224.0/255.0*32768.0) #define G_TO_U (int16_t)(-0.33126*224.0/255.0*32768.0) #define B_TO_U (int16_t)( 0.50000*224.0/255.0*32768.0) #define R_TO_V (int16_t)( 0.50000*224.0/255.0*32768.0) #define G_TO_V (int16_t)(-0.41869*224.0/255.0*32768.0) #define B_TO_V (int16_t)(-0.08131*224.0/255.0*32768.0) #define R_TO_YJ (int16_t)( 0.29900*32768.0) #define G_TO_YJ (int16_t)( 0.58700*32768.0) #define B_TO_YJ (int16_t)( 0.11400*32768.0) #define R_TO_UJ (int16_t)(-0.16874*32768.0) #define G_TO_UJ (int16_t)(-0.33126*32768.0) #define B_TO_UJ (int16_t)( 0.50000*32768.0) #define R_TO_VJ (int16_t)( 0.50000*32768.0) #define G_TO_VJ (int16_t)(-0.41869*32768.0) #define B_TO_VJ (int16_t)(-0.08131*32768.0) static const mmx_t rgb_to_y = { w: { R_TO_Y, G_TO_Y, B_TO_Y, 0 } }; static const mmx_t rgb_to_u = { w: { R_TO_U, G_TO_U, B_TO_U, 0 } }; static const mmx_t rgb_to_v = { w: { R_TO_V, G_TO_V, B_TO_V, 0 } }; static const mmx_t bgr_to_y = { w: { B_TO_Y, G_TO_Y, R_TO_Y, 0 } }; static const mmx_t bgr_to_u = { w: { B_TO_U, G_TO_U, R_TO_U, 0 } }; static const mmx_t bgr_to_v = { w: { B_TO_V, G_TO_V, R_TO_V, 0 } }; static const mmx_t rgb_to_yj = { w: { R_TO_YJ, G_TO_YJ, B_TO_YJ, 0 } }; static const mmx_t rgb_to_uj = { w: { R_TO_UJ, G_TO_UJ, B_TO_UJ, 0 } }; static const mmx_t rgb_to_vj = { w: { R_TO_VJ, G_TO_VJ, B_TO_VJ, 0 } }; static const mmx_t bgr_to_yj = { w: { B_TO_YJ, G_TO_YJ, R_TO_YJ, 0 } }; static const mmx_t bgr_to_uj = { w: { B_TO_UJ, G_TO_UJ, R_TO_UJ, 0 } }; static const mmx_t bgr_to_vj = { w: { B_TO_VJ, G_TO_VJ, R_TO_VJ, 0 } }; static const mmx_t rgb_yuv_y_add = { 0x0010001000100010LL }; static const mmx_t lower_dword = { 0x00000000FFFFFFFFLL}; static const mmx_t upper_dword = { 0xFFFFFFFF00000000LL}; static const mmx_t chroma_mask = { 0x000000FF000000FFLL }; static const mmx_t sign_mask = { 0x0000008000000080LL }; #define RGB_TO_Y pxor_r2r(mm7, mm7);/* Zero mm7 */\ movq_r2r(mm0, mm2);/* mm2: 00 B1 G1 R1 00 B0 G0 R0 */\ punpcklbw_r2r(mm7, mm2);/* mm2: 00 00 00 B0 00 G0 00 R0 */\ pmaddwd_m2r(rgb_to_y, mm2);/* mm2: 00 00 BY*B0 GY*G0+RY*R0 */\ movq_r2r(mm2, mm3);/* mm3: 00 00 BY*B0 GY*G0+RY*R0 */\ pand_m2r(lower_dword, mm3);/* mm3: 00 00 00 00 GY*G0+RY*R0 */\ movq_r2r(mm3, mm4);/* mm4: 00 00 00 00 GY*G0+RY*R0 */\ psrlq_i2r(32, mm2);/* mm2: 00 00 00 00 00 00 BY*B0 */\ movq_r2r(mm2, mm5);/* mm5: 00 00 00 00 00 00 BY*B0 */\ movq_r2r(mm0, mm2);/* mm2: 00 B1 G1 R1 00 B0 G0 R0 */\ punpckhbw_r2r(mm7, mm2);/* mm2: 00 00 00 B1 00 G1 00 R1 */\ pmaddwd_m2r(rgb_to_y, mm2);/* mm2: 00 00 BY*B1 GY*G1+RY*R1 */\ movq_r2r(mm2, mm3);/* mm3: 00 00 BY*B1 GY*G1+RY*R1 */\ psllq_i2r(32, mm3);/* mm3: GY*G1+RY*R1 00 00 00 00 */\ por_r2r(mm3, mm4);/* mm4: GY*G1+RY*R1 GY*G0+RY*R0 */\ pand_m2r(upper_dword, mm2);/* mm2: 00 00 BY*B1 00 00 00 00 */\ por_r2r(mm2, mm5);/* mm5: 00 00 BY*B1 00 00 BY*B0 */\ paddd_r2r(mm4, mm5);/* mm5: 00 Y1 Y1 Y1 00 Y0 Y0 Y0 */\ psrld_i2r(15, mm5);/* mm5: 00 00 00 Y1 00 00 00 Y0 */\ packssdw_r2r(mm7, mm5);/* mm5: 00 00 00 00 00 Y1 00 Y0 */\ movq_r2r(mm5, mm6);/* mm6: 00 00 00 00 00 Y1 00 Y0 */\ movq_r2r(mm1, mm2);/* mm2: 00 B1 G1 R1 00 B0 G0 R0 */\ punpcklbw_r2r(mm7, mm2);/* mm2: 00 00 00 B0 00 G0 00 R0 */\ pmaddwd_m2r(rgb_to_y, mm2);/* mm2: 00 00 BY*B0 GY*G0+RY*R0 */\ movq_r2r(mm2, mm3);/* mm3: 00 00 BY*B0 GY*G0+RY*R0 */\ pand_m2r(lower_dword, mm3);/* mm3: 00 00 00 00 GY*G0+RY*R0 */\ movq_r2r(mm3, mm4);/* mm4: 00 00 00 00 GY*G0+RY*R0 */\ psrlq_i2r(32, mm2);/* mm2: 00 00 00 00 00 00 BY*B0 */\ movq_r2r(mm2, mm5);/* mm5: 00 00 00 00 00 00 BY*B0 */\ movq_r2r(mm1, mm2);/* mm2: 00 B1 G1 R1 00 B0 G0 R0 */\ punpckhbw_r2r(mm7, mm2);/* mm2: 00 00 00 B1 00 G1 00 R1 */\ pmaddwd_m2r(rgb_to_y, mm2);/* mm2: 00 00 BY*B1 GY*G1+RY*R1 */\ movq_r2r(mm2, mm3);/* mm3: 00 00 BY*B1 GY*G1+RY*R1 */\ psllq_i2r(32, mm3);/* mm3: GY*G1+RY*R1 00 00 00 00 */\ por_r2r(mm3, mm4);/* mm4: GY*G1+RY*R1 GY*G0+RY*R0 */\ pand_m2r(upper_dword, mm2);/* mm2: 00 00 BY*B1 00 00 00 00 */\ por_r2r(mm2, mm5);/* mm5: 00 00 BY*B1 00 00 BY*B0 */\ paddd_r2r(mm4, mm5);/* mm5: 00 Y1 Y1 Y1 00 Y0 Y0 Y0 */\ psrld_i2r(15, mm5);/* mm5: 00 00 00 Y1 00 00 00 Y0 */\ packssdw_r2r(mm5, mm7);/* mm7: 00 Y1 00 Y0 00 00 00 00 */\ por_r2r(mm7, mm6);/* mm6: 00 Y3 00 Y2 00 Y1 00 Y0 */\ paddusb_m2r(rgb_yuv_y_add, mm6); #define RGB_TO_YJ pxor_r2r(mm7, mm7);/* Zero mm7 */\ movq_r2r(mm0, mm2);/* mm2: 00 B1 G1 R1 00 B0 G0 R0 */\ punpcklbw_r2r(mm7, mm2);/* mm2: 00 00 00 B0 00 G0 00 R0 */\ pmaddwd_m2r(rgb_to_yj, mm2);/* mm2: 00 00 BY*B0 GY*G0+RY*R0 */\ movq_r2r(mm2, mm3);/* mm3: 00 00 BY*B0 GY*G0+RY*R0 */\ pand_m2r(lower_dword, mm3);/* mm3: 00 00 00 00 GY*G0+RY*R0 */\ movq_r2r(mm3, mm4);/* mm4: 00 00 00 00 GY*G0+RY*R0 */\ psrlq_i2r(32, mm2);/* mm2: 00 00 00 00 00 00 BY*B0 */\ movq_r2r(mm2, mm5);/* mm5: 00 00 00 00 00 00 BY*B0 */\ movq_r2r(mm0, mm2);/* mm2: 00 B1 G1 R1 00 B0 G0 R0 */\ punpckhbw_r2r(mm7, mm2);/* mm2: 00 00 00 B1 00 G1 00 R1 */\ pmaddwd_m2r(rgb_to_yj, mm2);/* mm2: 00 00 BY*B1 GY*G1+RY*R1 */\ movq_r2r(mm2, mm3);/* mm3: 00 00 BY*B1 GY*G1+RY*R1 */\ psllq_i2r(32, mm3);/* mm3: GY*G1+RY*R1 00 00 00 00 */\ por_r2r(mm3, mm4);/* mm4: GY*G1+RY*R1 GY*G0+RY*R0 */\ pand_m2r(upper_dword, mm2);/* mm2: 00 00 BY*B1 00 00 00 00 */\ por_r2r(mm2, mm5);/* mm5: 00 00 BY*B1 00 00 BY*B0 */\ paddd_r2r(mm4, mm5);/* mm5: 00 Y1 Y1 Y1 00 Y0 Y0 Y0 */\ psrld_i2r(15, mm5);/* mm5: 00 00 00 Y1 00 00 00 Y0 */\ packssdw_r2r(mm7, mm5);/* mm5: 00 00 00 00 00 Y1 00 Y0 */\ movq_r2r(mm5, mm6);/* mm6: 00 00 00 00 00 Y1 00 Y0 */\ movq_r2r(mm1, mm2);/* mm2: 00 B1 G1 R1 00 B0 G0 R0 */\ punpcklbw_r2r(mm7, mm2);/* mm2: 00 00 00 B0 00 G0 00 R0 */\ pmaddwd_m2r(rgb_to_yj, mm2);/* mm2: 00 00 BY*B0 GY*G0+RY*R0 */\ movq_r2r(mm2, mm3);/* mm3: 00 00 BY*B0 GY*G0+RY*R0 */\ pand_m2r(lower_dword, mm3);/* mm3: 00 00 00 00 GY*G0+RY*R0 */\ movq_r2r(mm3, mm4);/* mm4: 00 00 00 00 GY*G0+RY*R0 */\ psrlq_i2r(32, mm2);/* mm2: 00 00 00 00 00 00 BY*B0 */\ movq_r2r(mm2, mm5);/* mm5: 00 00 00 00 00 00 BY*B0 */\ movq_r2r(mm1, mm2);/* mm2: 00 B1 G1 R1 00 B0 G0 R0 */\ punpckhbw_r2r(mm7, mm2);/* mm2: 00 00 00 B1 00 G1 00 R1 */\ pmaddwd_m2r(rgb_to_yj, mm2);/* mm2: 00 00 BY*B1 GY*G1+RY*R1 */\ movq_r2r(mm2, mm3);/* mm3: 00 00 BY*B1 GY*G1+RY*R1 */\ psllq_i2r(32, mm3);/* mm3: GY*G1+RY*R1 00 00 00 00 */\ por_r2r(mm3, mm4);/* mm4: GY*G1+RY*R1 GY*G0+RY*R0 */\ pand_m2r(upper_dword, mm2);/* mm2: 00 00 BY*B1 00 00 00 00 */\ por_r2r(mm2, mm5);/* mm5: 00 00 BY*B1 00 00 BY*B0 */\ paddd_r2r(mm4, mm5);/* mm5: 00 Y1 Y1 Y1 00 Y0 Y0 Y0 */\ psrld_i2r(15, mm5);/* mm5: 00 00 00 Y1 00 00 00 Y0 */\ packssdw_r2r(mm5, mm7);/* mm7: 00 Y1 00 Y0 00 00 00 00 */\ por_r2r(mm7, mm6);/* mm6: 00 Y3 00 Y2 00 Y1 00 Y0 */ // paddusb_m2r(rgb_yuv_y_add, mm6); #define RGB_TO_UV_2 pxor_r2r(mm7, mm7);/* Zero mm7 */\ movq_r2r(mm0, mm2);/* mm2: 00 B1 G1 R1 00 B0 G0 R0 */\ punpcklbw_r2r(mm7, mm2);/* mm2: 00 00 00 B0 00 G0 00 R0 */\ pmaddwd_m2r(rgb_to_u, mm2);/* mm2: 00 00 BU*B0 GU*G0+RU*R0 */\ movq_r2r(mm2, mm4);/* mm4: 00 00 BU*B0 GU*G0+RU*R0 */\ pand_m2r(lower_dword, mm4);/* mm4: 00 00 00 00 GU*G0+RU*R0 */\ psrlq_i2r(32, mm2); /* mm2: 00 00 00 00 00 00 BU*B0 */\ paddd_r2r(mm2, mm4);/* mm4: 00 00 00 00 00 U0 U0 U0 */\ punpcklbw_r2r(mm7, mm0);/* mm2: 00 00 00 B0 00 G0 00 R0 */\ pmaddwd_m2r(rgb_to_v, mm0);/* mm2: 00 00 BV*B0 GV*G0+RV*R0 */\ movq_r2r(mm0, mm5);/* mm3: 00 00 BV*B0 GV*G0+RV*R0 */\ pand_m2r(lower_dword, mm5);/* mm5: 00 00 00 00 GV*G0+RV*R0 */\ psrlq_i2r(32, mm0); /* mm2: 00 00 00 00 00 00 BV*B0 */\ paddd_r2r(mm0, mm5);/* mm5: 00 00 00 00 00 V0 V0 V0 */\ movq_r2r(mm1, mm2);/* mm2: 00 B1 G1 R1 00 B0 G0 R0 */\ punpcklbw_r2r(mm7, mm2);/* mm1: 00 00 00 B2 00 G2 00 R2 */\ pmaddwd_m2r(rgb_to_u, mm2);/* mm1: 00 00 BU*B2 GU*G2+RU*R2 */\ movq_r2r(mm2, mm3);/* mm3: 00 00 BU*B2 GU*G2+RU*R2 */\ pand_m2r(lower_dword, mm3);/* mm4: 00 00 00 00 GU*G2+RU*R2 */\ psrlq_i2r(32, mm2); /* mm2: 00 00 00 00 00 00 BU*B2 */\ paddd_r2r(mm2, mm3);/* mm3: 00 00 00 00 00 U2 U2 U2 */\ psllq_i2r(32, mm3); /* mm3: 00 U2 U2 U2 00 00 00 00 */\ por_r2r(mm3, mm4);/* mm4: 00 U2 U2 U2 00 U0 U0 U0 */\ punpcklbw_r2r(mm7, mm1);/* mm1: 00 00 00 B2 00 G2 00 R2 */\ pmaddwd_m2r(rgb_to_v, mm1);/* mm1: 00 00 BV*B2 GV*G2+RV*R2 */\ movq_r2r(mm1, mm3);/* mm3: 00 00 BV*B2 GV*G2+RV*R2 */\ pand_m2r(lower_dword, mm3);/* mm5: 00 00 00 00 GV*G2+RV*R2 */\ psrlq_i2r(32, mm1); /* mm2: 00 00 00 00 00 00 BV*B2 */\ paddd_r2r(mm1, mm3);/* mm3: 00 00 00 00 00 V2 V2 V2 */\ psllq_i2r(32, mm3); /* mm3: 00 V2 V2 V2 00 00 00 00 */\ por_r2r(mm3, mm5);/* mm4: 00 V2 V2 V2 00 V0 V0 V0 */\ psrad_i2r(15, mm4);/* mm4: 00 00 00 U2 00 00 00 U0 */\ psrad_i2r(15, mm5);/* mm5: 00 00 00 V2 00 00 00 V0 */\ pand_m2r(chroma_mask, mm4);\ pand_m2r(chroma_mask, mm5);\ pxor_m2r(sign_mask, mm4);\ pxor_m2r(sign_mask, mm5); #define RGB_TO_UVJ_2 pxor_r2r(mm7, mm7);/* Zero mm7 */\ movq_r2r(mm0, mm2);/* mm2: 00 B1 G1 R1 00 B0 G0 R0 */\ punpcklbw_r2r(mm7, mm2);/* mm2: 00 00 00 B0 00 G0 00 R0 */\ pmaddwd_m2r(rgb_to_uj, mm2);/* mm2: 00 00 BU*B0 GU*G0+RU*R0 */\ movq_r2r(mm2, mm4);/* mm4: 00 00 BU*B0 GU*G0+RU*R0 */\ pand_m2r(lower_dword, mm4);/* mm4: 00 00 00 00 GU*G0+RU*R0 */\ psrlq_i2r(32, mm2); /* mm2: 00 00 00 00 00 00 BU*B0 */\ paddd_r2r(mm2, mm4);/* mm4: 00 00 00 00 00 U0 U0 U0 */\ punpcklbw_r2r(mm7, mm0);/* mm2: 00 00 00 B0 00 G0 00 R0 */\ pmaddwd_m2r(rgb_to_vj, mm0);/* mm2: 00 00 BV*B0 GV*G0+RV*R0 */\ movq_r2r(mm0, mm5);/* mm3: 00 00 BV*B0 GV*G0+RV*R0 */\ pand_m2r(lower_dword, mm5);/* mm5: 00 00 00 00 GV*G0+RV*R0 */\ psrlq_i2r(32, mm0); /* mm2: 00 00 00 00 00 00 BV*B0 */\ paddd_r2r(mm0, mm5);/* mm5: 00 00 00 00 00 V0 V0 V0 */\ movq_r2r(mm1, mm2);/* mm2: 00 B1 G1 R1 00 B0 G0 R0 */\ punpcklbw_r2r(mm7, mm2);/* mm1: 00 00 00 B2 00 G2 00 R2 */\ pmaddwd_m2r(rgb_to_uj, mm2);/* mm1: 00 00 BU*B2 GU*G2+RU*R2 */\ movq_r2r(mm2, mm3);/* mm3: 00 00 BU*B2 GU*G2+RU*R2 */\ pand_m2r(lower_dword, mm3);/* mm4: 00 00 00 00 GU*G2+RU*R2 */\ psrlq_i2r(32, mm2); /* mm2: 00 00 00 00 00 00 BU*B2 */\ paddd_r2r(mm2, mm3);/* mm3: 00 00 00 00 00 U2 U2 U2 */\ psllq_i2r(32, mm3); /* mm3: 00 U2 U2 U2 00 00 00 00 */\ por_r2r(mm3, mm4);/* mm4: 00 U2 U2 U2 00 U0 U0 U0 */\ punpcklbw_r2r(mm7, mm1);/* mm1: 00 00 00 B2 00 G2 00 R2 */\ pmaddwd_m2r(rgb_to_vj, mm1);/* mm1: 00 00 BV*B2 GV*G2+RV*R2 */\ movq_r2r(mm1, mm3);/* mm3: 00 00 BV*B2 GV*G2+RV*R2 */\ pand_m2r(lower_dword, mm3);/* mm5: 00 00 00 00 GV*G2+RV*R2 */\ psrlq_i2r(32, mm1); /* mm2: 00 00 00 00 00 00 BV*B2 */\ paddd_r2r(mm1, mm3);/* mm3: 00 00 00 00 00 V2 V2 V2 */\ psllq_i2r(32, mm3); /* mm3: 00 V2 V2 V2 00 00 00 00 */\ por_r2r(mm3, mm5);/* mm4: 00 V2 V2 V2 00 V0 V0 V0 */\ psrad_i2r(15, mm4);/* mm4: 00 00 00 U2 00 00 00 U0 */\ psrad_i2r(15, mm5);/* mm4: 00 00 00 V2 00 00 00 V0 */\ pand_m2r(chroma_mask, mm4);\ pand_m2r(chroma_mask, mm5);\ pxor_m2r(sign_mask, mm4);\ pxor_m2r(sign_mask, mm5); #define BGR_TO_Y pxor_r2r(mm7, mm7);/* Zero mm7 */\ movq_r2r(mm0, mm2);/* mm2: 00 B1 G1 R1 00 B0 G0 R0 */\ punpcklbw_r2r(mm7, mm2);/* mm2: 00 00 00 B0 00 G0 00 R0 */\ pmaddwd_m2r(bgr_to_y, mm2);/* mm2: 00 00 BY*B0 GY*G0+RY*R0 */\ movq_r2r(mm2, mm3);/* mm3: 00 00 BY*B0 GY*G0+RY*R0 */\ pand_m2r(lower_dword, mm3);/* mm3: 00 00 00 00 GY*G0+RY*R0 */\ movq_r2r(mm3, mm4);/* mm4: 00 00 00 00 GY*G0+RY*R0 */\ psrlq_i2r(32, mm2);/* mm2: 00 00 00 00 00 00 BY*B0 */\ movq_r2r(mm2, mm5);/* mm5: 00 00 00 00 00 00 BY*B0 */\ movq_r2r(mm0, mm2);/* mm2: 00 B1 G1 R1 00 B0 G0 R0 */\ punpckhbw_r2r(mm7, mm2);/* mm2: 00 00 00 B1 00 G1 00 R1 */\ pmaddwd_m2r(bgr_to_y, mm2);/* mm2: 00 00 BY*B1 GY*G1+RY*R1 */\ movq_r2r(mm2, mm3);/* mm3: 00 00 BY*B1 GY*G1+RY*R1 */\ psllq_i2r(32, mm3);/* mm3: GY*G1+RY*R1 00 00 00 00 */\ por_r2r(mm3, mm4);/* mm4: GY*G1+RY*R1 GY*G0+RY*R0 */\ pand_m2r(upper_dword, mm2);/* mm2: 00 00 BY*B1 00 00 00 00 */\ por_r2r(mm2, mm5);/* mm5: 00 00 BY*B1 00 00 BY*B0 */\ paddd_r2r(mm4, mm5);/* mm5: 00 Y1 Y1 Y1 00 Y0 Y0 Y0 */\ psrld_i2r(15, mm5);/* mm5: 00 00 00 Y1 00 00 00 Y0 */\ packssdw_r2r(mm7, mm5);/* mm5: 00 00 00 00 00 Y1 00 Y0 */\ movq_r2r(mm5, mm6);/* mm6: 00 00 00 00 00 Y1 00 Y0 */\ movq_r2r(mm1, mm2);/* mm2: 00 B1 G1 R1 00 B0 G0 R0 */\ punpcklbw_r2r(mm7, mm2);/* mm2: 00 00 00 B0 00 G0 00 R0 */\ pmaddwd_m2r(bgr_to_y, mm2);/* mm2: 00 00 BY*B0 GY*G0+RY*R0 */\ movq_r2r(mm2, mm3);/* mm3: 00 00 BY*B0 GY*G0+RY*R0 */\ pand_m2r(lower_dword, mm3);/* mm3: 00 00 00 00 GY*G0+RY*R0 */\ movq_r2r(mm3, mm4);/* mm4: 00 00 00 00 GY*G0+RY*R0 */\ psrlq_i2r(32, mm2);/* mm2: 00 00 00 00 00 00 BY*B0 */\ movq_r2r(mm2, mm5);/* mm5: 00 00 00 00 00 00 BY*B0 */\ movq_r2r(mm1, mm2);/* mm2: 00 B1 G1 R1 00 B0 G0 R0 */\ punpckhbw_r2r(mm7, mm2);/* mm2: 00 00 00 B1 00 G1 00 R1 */\ pmaddwd_m2r(bgr_to_y, mm2);/* mm2: 00 00 BY*B1 GY*G1+RY*R1 */\ movq_r2r(mm2, mm3);/* mm3: 00 00 BY*B1 GY*G1+RY*R1 */\ psllq_i2r(32, mm3);/* mm3: GY*G1+RY*R1 00 00 00 00 */\ por_r2r(mm3, mm4);/* mm4: GY*G1+RY*R1 GY*G0+RY*R0 */\ pand_m2r(upper_dword, mm2);/* mm2: 00 00 BY*B1 00 00 00 00 */\ por_r2r(mm2, mm5);/* mm5: 00 00 BY*B1 00 00 BY*B0 */\ paddd_r2r(mm4, mm5);/* mm5: 00 Y1 Y1 Y1 00 Y0 Y0 Y0 */\ psrld_i2r(15, mm5);/* mm5: 00 00 00 Y1 00 00 00 Y0 */\ packssdw_r2r(mm5, mm7);/* mm7: 00 Y1 00 Y0 00 00 00 00 */\ por_r2r(mm7, mm6);/* mm6: 00 Y3 00 Y2 00 Y1 00 Y0 */\ paddusb_m2r(rgb_yuv_y_add, mm6); #define BGR_TO_YJ pxor_r2r(mm7, mm7);/* Zero mm7 */\ movq_r2r(mm0, mm2);/* mm2: 00 B1 G1 R1 00 B0 G0 R0 */\ punpcklbw_r2r(mm7, mm2);/* mm2: 00 00 00 B0 00 G0 00 R0 */\ pmaddwd_m2r(bgr_to_yj, mm2);/* mm2: 00 00 BY*B0 GY*G0+RY*R0 */\ movq_r2r(mm2, mm3);/* mm3: 00 00 BY*B0 GY*G0+RY*R0 */\ pand_m2r(lower_dword, mm3);/* mm3: 00 00 00 00 GY*G0+RY*R0 */\ movq_r2r(mm3, mm4);/* mm4: 00 00 00 00 GY*G0+RY*R0 */\ psrlq_i2r(32, mm2);/* mm2: 00 00 00 00 00 00 BY*B0 */\ movq_r2r(mm2, mm5);/* mm5: 00 00 00 00 00 00 BY*B0 */\ movq_r2r(mm0, mm2);/* mm2: 00 B1 G1 R1 00 B0 G0 R0 */\ punpckhbw_r2r(mm7, mm2);/* mm2: 00 00 00 B1 00 G1 00 R1 */\ pmaddwd_m2r(bgr_to_yj, mm2);/* mm2: 00 00 BY*B1 GY*G1+RY*R1 */\ movq_r2r(mm2, mm3);/* mm3: 00 00 BY*B1 GY*G1+RY*R1 */\ psllq_i2r(32, mm3);/* mm3: GY*G1+RY*R1 00 00 00 00 */\ por_r2r(mm3, mm4);/* mm4: GY*G1+RY*R1 GY*G0+RY*R0 */\ pand_m2r(upper_dword, mm2);/* mm2: 00 00 BY*B1 00 00 00 00 */\ por_r2r(mm2, mm5);/* mm5: 00 00 BY*B1 00 00 BY*B0 */\ paddd_r2r(mm4, mm5);/* mm5: 00 Y1 Y1 Y1 00 Y0 Y0 Y0 */\ psrld_i2r(15, mm5);/* mm5: 00 00 00 Y1 00 00 00 Y0 */\ packssdw_r2r(mm7, mm5);/* mm5: 00 00 00 00 00 Y1 00 Y0 */\ movq_r2r(mm5, mm6);/* mm6: 00 00 00 00 00 Y1 00 Y0 */\ movq_r2r(mm1, mm2);/* mm2: 00 B1 G1 R1 00 B0 G0 R0 */\ punpcklbw_r2r(mm7, mm2);/* mm2: 00 00 00 B0 00 G0 00 R0 */\ pmaddwd_m2r(bgr_to_yj, mm2);/* mm2: 00 00 BY*B0 GY*G0+RY*R0 */\ movq_r2r(mm2, mm3);/* mm3: 00 00 BY*B0 GY*G0+RY*R0 */\ pand_m2r(lower_dword, mm3);/* mm3: 00 00 00 00 GY*G0+RY*R0 */\ movq_r2r(mm3, mm4);/* mm4: 00 00 00 00 GY*G0+RY*R0 */\ psrlq_i2r(32, mm2);/* mm2: 00 00 00 00 00 00 BY*B0 */\ movq_r2r(mm2, mm5);/* mm5: 00 00 00 00 00 00 BY*B0 */\ movq_r2r(mm1, mm2);/* mm2: 00 B1 G1 R1 00 B0 G0 R0 */\ punpckhbw_r2r(mm7, mm2);/* mm2: 00 00 00 B1 00 G1 00 R1 */\ pmaddwd_m2r(bgr_to_yj, mm2);/* mm2: 00 00 BY*B1 GY*G1+RY*R1 */\ movq_r2r(mm2, mm3);/* mm3: 00 00 BY*B1 GY*G1+RY*R1 */\ psllq_i2r(32, mm3);/* mm3: GY*G1+RY*R1 00 00 00 00 */\ por_r2r(mm3, mm4);/* mm4: GY*G1+RY*R1 GY*G0+RY*R0 */\ pand_m2r(upper_dword, mm2);/* mm2: 00 00 BY*B1 00 00 00 00 */\ por_r2r(mm2, mm5);/* mm5: 00 00 BY*B1 00 00 BY*B0 */\ paddd_r2r(mm4, mm5);/* mm5: 00 Y1 Y1 Y1 00 Y0 Y0 Y0 */\ psrld_i2r(15, mm5);/* mm5: 00 00 00 Y1 00 00 00 Y0 */\ packssdw_r2r(mm5, mm7);/* mm7: 00 Y1 00 Y0 00 00 00 00 */\ por_r2r(mm7, mm6);/* mm6: 00 Y3 00 Y2 00 Y1 00 Y0 */ #define BGR_TO_UV_2 pxor_r2r(mm7, mm7);/* Zero mm7 */\ movq_r2r(mm0, mm2);/* mm2: 00 B1 G1 R1 00 B0 G0 R0 */\ punpcklbw_r2r(mm7, mm2);/* mm2: 00 00 00 B0 00 G0 00 R0 */\ pmaddwd_m2r(bgr_to_u, mm2);/* mm2: 00 00 BU*B0 GU*G0+RU*R0 */\ movq_r2r(mm2, mm4);/* mm4: 00 00 BU*B0 GU*G0+RU*R0 */\ pand_m2r(lower_dword, mm4);/* mm4: 00 00 00 00 GU*G0+RU*R0 */\ psrlq_i2r(32, mm2); /* mm2: 00 00 00 00 00 00 BU*B0 */\ paddd_r2r(mm2, mm4);/* mm4: 00 00 00 00 00 U0 U0 U0 */\ punpcklbw_r2r(mm7, mm0);/* mm2: 00 00 00 B0 00 G0 00 R0 */\ pmaddwd_m2r(bgr_to_v, mm0);/* mm2: 00 00 BV*B0 GV*G0+RV*R0 */\ movq_r2r(mm0, mm5);/* mm3: 00 00 BV*B0 GV*G0+RV*R0 */\ pand_m2r(lower_dword, mm5);/* mm5: 00 00 00 00 GV*G0+RV*R0 */\ psrlq_i2r(32, mm0); /* mm2: 00 00 00 00 00 00 BV*B0 */\ paddd_r2r(mm0, mm5);/* mm5: 00 00 00 00 00 V0 V0 V0 */\ movq_r2r(mm1, mm2);/* mm2: 00 B1 G1 R1 00 B0 G0 R0 */\ punpcklbw_r2r(mm7, mm2);/* mm1: 00 00 00 B2 00 G2 00 R2 */\ pmaddwd_m2r(bgr_to_u, mm2);/* mm1: 00 00 BU*B2 GU*G2+RU*R2 */\ movq_r2r(mm2, mm3);/* mm3: 00 00 BU*B2 GU*G2+RU*R2 */\ pand_m2r(lower_dword, mm3);/* mm4: 00 00 00 00 GU*G2+RU*R2 */\ psrlq_i2r(32, mm2); /* mm2: 00 00 00 00 00 00 BU*B2 */\ paddd_r2r(mm2, mm3);/* mm3: 00 00 00 00 00 U2 U2 U2 */\ psllq_i2r(32, mm3); /* mm3: 00 U2 U2 U2 00 00 00 00 */\ por_r2r(mm3, mm4);/* mm4: 00 U2 U2 U2 00 U0 U0 U0 */\ punpcklbw_r2r(mm7, mm1);/* mm1: 00 00 00 B2 00 G2 00 R2 */\ pmaddwd_m2r(bgr_to_v, mm1);/* mm1: 00 00 BV*B2 GV*G2+RV*R2 */\ movq_r2r(mm1, mm3);/* mm3: 00 00 BV*B2 GV*G2+RV*R2 */\ pand_m2r(lower_dword, mm3);/* mm5: 00 00 00 00 GV*G2+RV*R2 */\ psrlq_i2r(32, mm1); /* mm2: 00 00 00 00 00 00 BV*B2 */\ paddd_r2r(mm1, mm3);/* mm3: 00 00 00 00 00 V2 V2 V2 */\ psllq_i2r(32, mm3); /* mm3: 00 V2 V2 V2 00 00 00 00 */\ por_r2r(mm3, mm5);/* mm4: 00 V2 V2 V2 00 V0 V0 V0 */\ psrad_i2r(15, mm4);/* mm4: 00 00 00 U2 00 00 00 U0 */\ psrad_i2r(15, mm5);/* mm5: 00 00 00 V2 00 00 00 V0 */\ pand_m2r(chroma_mask, mm4);\ pand_m2r(chroma_mask, mm5);\ pxor_m2r(sign_mask, mm4);\ pxor_m2r(sign_mask, mm5); #define BGR_TO_UVJ_2 pxor_r2r(mm7, mm7);/* Zero mm7 */\ movq_r2r(mm0, mm2);/* mm2: 00 B1 G1 R1 00 B0 G0 R0 */\ punpcklbw_r2r(mm7, mm2);/* mm2: 00 00 00 B0 00 G0 00 R0 */\ pmaddwd_m2r(bgr_to_uj, mm2);/* mm2: 00 00 BU*B0 GU*G0+RU*R0 */\ movq_r2r(mm2, mm4);/* mm4: 00 00 BU*B0 GU*G0+RU*R0 */\ pand_m2r(lower_dword, mm4);/* mm4: 00 00 00 00 GU*G0+RU*R0 */\ psrlq_i2r(32, mm2); /* mm2: 00 00 00 00 00 00 BU*B0 */\ paddd_r2r(mm2, mm4);/* mm4: 00 00 00 00 00 U0 U0 U0 */\ punpcklbw_r2r(mm7, mm0);/* mm2: 00 00 00 B0 00 G0 00 R0 */\ pmaddwd_m2r(bgr_to_vj, mm0);/* mm2: 00 00 BV*B0 GV*G0+RV*R0 */\ movq_r2r(mm0, mm5);/* mm3: 00 00 BV*B0 GV*G0+RV*R0 */\ pand_m2r(lower_dword, mm5);/* mm5: 00 00 00 00 GV*G0+RV*R0 */\ psrlq_i2r(32, mm0); /* mm2: 00 00 00 00 00 00 BV*B0 */\ paddd_r2r(mm0, mm5);/* mm5: 00 00 00 00 00 V0 V0 V0 */\ movq_r2r(mm1, mm2);/* mm2: 00 B1 G1 R1 00 B0 G0 R0 */\ punpcklbw_r2r(mm7, mm2);/* mm1: 00 00 00 B2 00 G2 00 R2 */\ pmaddwd_m2r(bgr_to_uj, mm2);/* mm1: 00 00 BU*B2 GU*G2+RU*R2 */\ movq_r2r(mm2, mm3);/* mm3: 00 00 BU*B2 GU*G2+RU*R2 */\ pand_m2r(lower_dword, mm3);/* mm4: 00 00 00 00 GU*G2+RU*R2 */\ psrlq_i2r(32, mm2); /* mm2: 00 00 00 00 00 00 BU*B2 */\ paddd_r2r(mm2, mm3);/* mm3: 00 00 00 00 00 U2 U2 U2 */\ psllq_i2r(32, mm3); /* mm3: 00 U2 U2 U2 00 00 00 00 */\ por_r2r(mm3, mm4);/* mm4: 00 U2 U2 U2 00 U0 U0 U0 */\ punpcklbw_r2r(mm7, mm1);/* mm1: 00 00 00 B2 00 G2 00 R2 */\ pmaddwd_m2r(bgr_to_vj, mm1);/* mm1: 00 00 BV*B2 GV*G2+RV*R2 */\ movq_r2r(mm1, mm3);/* mm3: 00 00 BV*B2 GV*G2+RV*R2 */\ pand_m2r(lower_dword, mm3);/* mm5: 00 00 00 00 GV*G2+RV*R2 */\ psrlq_i2r(32, mm1); /* mm2: 00 00 00 00 00 00 BV*B2 */\ paddd_r2r(mm1, mm3);/* mm3: 00 00 00 00 00 V2 V2 V2 */\ psllq_i2r(32, mm3); /* mm3: 00 V2 V2 V2 00 00 00 00 */\ por_r2r(mm3, mm5);/* mm4: 00 V2 V2 V2 00 V0 V0 V0 */\ psrad_i2r(15, mm4);/* mm4: 00 00 00 U2 00 00 00 U0 */\ psrad_i2r(15, mm5);/* mm5: 00 00 00 V2 00 00 00 V0 */\ pand_m2r(chroma_mask, mm4);\ pand_m2r(chroma_mask, mm5);\ pxor_m2r(sign_mask, mm4);\ pxor_m2r(sign_mask, mm5); #define OUTPUT_YUY2 psllq_i2r(8, mm4);\ por_r2r(mm4, mm6);\ psllq_i2r(24, mm5);\ por_r2r(mm5, mm6);\ MOVQ_R2M(mm6, *dst); #define OUTPUT_UYVY psllq_i2r(8, mm6);\ por_r2r(mm4, mm6);\ psllq_i2r(16, mm5);\ por_r2r(mm5, mm6);\ MOVQ_R2M(mm6, *dst); #define OUTPUT_PLANAR_Y pxor_r2r(mm7, mm7);\ packuswb_r2r(mm7, mm6);\ movd_r2m(mm6, *dst_y); #define OUTPUT_PLANAR_UV2 pxor_r2r(mm7, mm7);\ packssdw_r2r(mm7, mm4);\ packssdw_r2r(mm7, mm5);\ packuswb_r2r(mm7, mm4);\ packuswb_r2r(mm7, mm5);\ movd_r2m(mm4, i_tmp);\ *((uint16_t*)(dst_u))=(uint16_t)i_tmp;\ movd_r2m(mm5, i_tmp);\ *((uint16_t*)(dst_v))=(uint16_t)i_tmp; #define OUTPUT_PLANAR_UV4 movd_r2m(mm4, i_tmp);\ *dst_u=i_tmp & 0xff;\ movd_r2m(mm5, i_tmp);\ *dst_v=i_tmp & 0xff;\ /*************************************** * -> YUY2 ***************************************/ #define FUNC_NAME rgb_15_to_yuy2_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE 8 #define NUM_PIXELS 4 #define CONVERT \ LOAD_RGB_15 \ BGR_TO_Y \ BGR_TO_UV_2 \ OUTPUT_YUY2 #define CLEANUP emms(); // #define INIT #include "../csp_packed_packed.h" #define FUNC_NAME bgr_15_to_yuy2_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE 8 #define NUM_PIXELS 4 #define CONVERT \ LOAD_RGB_15 \ RGB_TO_Y \ RGB_TO_UV_2 \ OUTPUT_YUY2 #define CLEANUP emms(); // #define INIT #include "../csp_packed_packed.h" #define FUNC_NAME rgb_16_to_yuy2_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE 8 #define NUM_PIXELS 4 #define CONVERT \ LOAD_RGB_16 \ BGR_TO_Y \ BGR_TO_UV_2 \ OUTPUT_YUY2 #define CLEANUP emms(); // #define INIT #include "../csp_packed_packed.h" #define FUNC_NAME bgr_16_to_yuy2_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE 8 #define NUM_PIXELS 4 #define CONVERT \ LOAD_RGB_16 \ RGB_TO_Y \ RGB_TO_UV_2 \ OUTPUT_YUY2 #define CLEANUP emms(); // #define INIT #include "../csp_packed_packed.h" #define FUNC_NAME rgb_24_to_yuy2_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 12 #define OUT_ADVANCE 8 #define NUM_PIXELS 4 #define CONVERT \ RGB_YUV_LOAD_RGB_24 \ RGB_TO_Y \ RGB_TO_UV_2 \ OUTPUT_YUY2 #define CLEANUP emms(); // #define INIT #include "../csp_packed_packed.h" #define FUNC_NAME bgr_24_to_yuy2_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 12 #define OUT_ADVANCE 8 #define NUM_PIXELS 4 #define CONVERT \ RGB_YUV_LOAD_RGB_24 \ BGR_TO_Y \ BGR_TO_UV_2 \ OUTPUT_YUY2 #define CLEANUP emms(); // #define INIT #include "../csp_packed_packed.h" #define FUNC_NAME rgb_32_to_yuy2_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE 8 #define NUM_PIXELS 4 #define CONVERT \ LOAD_RGB_32 \ RGB_TO_Y \ RGB_TO_UV_2 \ OUTPUT_YUY2 #define CLEANUP emms(); // #define INIT #include "../csp_packed_packed.h" #define FUNC_NAME bgr_32_to_yuy2_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE 8 #define NUM_PIXELS 4 #define CONVERT \ LOAD_RGB_32 \ BGR_TO_Y \ BGR_TO_UV_2 \ OUTPUT_YUY2 #define CLEANUP emms(); // #define INIT #include "../csp_packed_packed.h" /*************************************** * -> UYVY ***************************************/ #define FUNC_NAME rgb_15_to_uyvy_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE 8 #define NUM_PIXELS 4 #define CONVERT \ LOAD_RGB_15 \ BGR_TO_Y \ BGR_TO_UV_2 \ OUTPUT_UYVY #define CLEANUP emms(); // #define INIT #include "../csp_packed_packed.h" #define FUNC_NAME bgr_15_to_uyvy_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE 8 #define NUM_PIXELS 4 #define CONVERT \ LOAD_RGB_15 \ RGB_TO_Y \ RGB_TO_UV_2 \ OUTPUT_UYVY #define CLEANUP emms(); // #define INIT #include "../csp_packed_packed.h" #define FUNC_NAME rgb_16_to_uyvy_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE 8 #define NUM_PIXELS 4 #define CONVERT \ LOAD_RGB_16 \ BGR_TO_Y \ BGR_TO_UV_2 \ OUTPUT_UYVY #define CLEANUP emms(); // #define INIT #include "../csp_packed_packed.h" #define FUNC_NAME bgr_16_to_uyvy_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE 8 #define NUM_PIXELS 4 #define CONVERT \ LOAD_RGB_16 \ RGB_TO_Y \ RGB_TO_UV_2 \ OUTPUT_UYVY #define CLEANUP emms(); // #define INIT #include "../csp_packed_packed.h" #define FUNC_NAME rgb_24_to_uyvy_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 12 #define OUT_ADVANCE 8 #define NUM_PIXELS 4 #define CONVERT \ RGB_YUV_LOAD_RGB_24 \ RGB_TO_Y \ RGB_TO_UV_2 \ OUTPUT_UYVY #define CLEANUP emms(); // #define INIT #include "../csp_packed_packed.h" #define FUNC_NAME bgr_24_to_uyvy_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 12 #define OUT_ADVANCE 8 #define NUM_PIXELS 4 #define CONVERT \ RGB_YUV_LOAD_RGB_24 \ BGR_TO_Y \ BGR_TO_UV_2 \ OUTPUT_UYVY #define CLEANUP emms(); // #define INIT #include "../csp_packed_packed.h" #define FUNC_NAME rgb_32_to_uyvy_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE 8 #define NUM_PIXELS 4 #define CONVERT \ LOAD_RGB_32 \ RGB_TO_Y \ RGB_TO_UV_2 \ OUTPUT_UYVY #define CLEANUP emms(); // #define INIT #include "../csp_packed_packed.h" #define FUNC_NAME bgr_32_to_uyvy_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE 8 #define NUM_PIXELS 4 #define CONVERT \ LOAD_RGB_32 \ BGR_TO_Y \ BGR_TO_UV_2 \ OUTPUT_UYVY #define CLEANUP emms(); // #define INIT #include "../csp_packed_packed.h" /*************************************** * -> YUV 420 P ***************************************/ #define FUNC_NAME rgb_15_to_yuv_420_p_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 2 #define NUM_PIXELS 4 #define CONVERT_YUV \ LOAD_RGB_15 \ BGR_TO_Y \ BGR_TO_UV_2 \ OUTPUT_PLANAR_Y \ OUTPUT_PLANAR_UV2 #define CONVERT_Y \ LOAD_RGB_15 \ BGR_TO_Y \ OUTPUT_PLANAR_Y #define CHROMA_SUB 2 #define INIT int i_tmp; #define CLEANUP emms(); #include "../csp_packed_planar.h" #define FUNC_NAME bgr_15_to_yuv_420_p_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 2 #define NUM_PIXELS 4 #define CONVERT_YUV \ LOAD_RGB_15 \ RGB_TO_Y \ RGB_TO_UV_2 \ OUTPUT_PLANAR_Y \ OUTPUT_PLANAR_UV2 #define CONVERT_Y \ LOAD_RGB_15 \ RGB_TO_Y \ OUTPUT_PLANAR_Y #define CHROMA_SUB 2 #define INIT int i_tmp; #define CLEANUP emms(); #include "../csp_packed_planar.h" #define FUNC_NAME rgb_16_to_yuv_420_p_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 2 #define NUM_PIXELS 4 #define CONVERT_YUV \ LOAD_RGB_16 \ BGR_TO_Y \ BGR_TO_UV_2 \ OUTPUT_PLANAR_Y \ OUTPUT_PLANAR_UV2 #define CONVERT_Y \ LOAD_RGB_16 \ BGR_TO_Y \ OUTPUT_PLANAR_Y #define CHROMA_SUB 2 #define INIT int i_tmp; #define CLEANUP emms(); #include "../csp_packed_planar.h" #define FUNC_NAME bgr_16_to_yuv_420_p_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 2 #define NUM_PIXELS 4 #define CONVERT_YUV \ LOAD_RGB_16 \ RGB_TO_Y \ RGB_TO_UV_2 \ OUTPUT_PLANAR_Y \ OUTPUT_PLANAR_UV2 #define CONVERT_Y \ LOAD_RGB_16 \ RGB_TO_Y \ OUTPUT_PLANAR_Y #define CHROMA_SUB 2 #define INIT int i_tmp; #define CLEANUP emms(); #include "../csp_packed_planar.h" #define FUNC_NAME rgb_24_to_yuv_420_p_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 12 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 2 #define NUM_PIXELS 4 #define CONVERT_YUV \ RGB_YUV_LOAD_RGB_24 \ RGB_TO_Y \ RGB_TO_UV_2 \ OUTPUT_PLANAR_Y \ OUTPUT_PLANAR_UV2 #define CONVERT_Y \ RGB_YUV_LOAD_RGB_24 \ RGB_TO_Y \ OUTPUT_PLANAR_Y #define CHROMA_SUB 2 #define INIT int i_tmp; #define CLEANUP emms(); #include "../csp_packed_planar.h" #define FUNC_NAME bgr_24_to_yuv_420_p_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 12 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 2 #define NUM_PIXELS 4 #define CONVERT_YUV \ RGB_YUV_LOAD_RGB_24 \ BGR_TO_Y \ BGR_TO_UV_2 \ OUTPUT_PLANAR_Y \ OUTPUT_PLANAR_UV2 #define CONVERT_Y \ RGB_YUV_LOAD_RGB_24 \ BGR_TO_Y \ OUTPUT_PLANAR_Y #define CHROMA_SUB 2 #define INIT int i_tmp; #define CLEANUP emms(); #include "../csp_packed_planar.h" #define FUNC_NAME rgb_32_to_yuv_420_p_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 2 #define NUM_PIXELS 4 #define CONVERT_YUV \ LOAD_RGB_32 \ RGB_TO_Y \ RGB_TO_UV_2 \ OUTPUT_PLANAR_Y \ OUTPUT_PLANAR_UV2 #define CONVERT_Y \ LOAD_RGB_32 \ RGB_TO_Y \ OUTPUT_PLANAR_Y #define CHROMA_SUB 2 #define INIT int i_tmp; #define CLEANUP emms(); #include "../csp_packed_planar.h" #define FUNC_NAME bgr_32_to_yuv_420_p_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 2 #define NUM_PIXELS 4 #define CONVERT_YUV \ LOAD_RGB_32 \ BGR_TO_Y \ BGR_TO_UV_2 \ OUTPUT_PLANAR_Y \ OUTPUT_PLANAR_UV2 #define CONVERT_Y \ LOAD_RGB_32 \ BGR_TO_Y \ OUTPUT_PLANAR_Y #define CHROMA_SUB 2 #define INIT int i_tmp; #define CLEANUP emms(); #include "../csp_packed_planar.h" /*************************************** * -> YUV 410 P ***************************************/ #define FUNC_NAME rgb_15_to_yuv_410_p_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 4 #define CONVERT_YUV \ LOAD_RGB_15 \ BGR_TO_Y \ BGR_TO_UV_2 \ OUTPUT_PLANAR_Y \ OUTPUT_PLANAR_UV4 #define CONVERT_Y \ LOAD_RGB_15 \ BGR_TO_Y \ OUTPUT_PLANAR_Y #define CHROMA_SUB 4 #define INIT int i_tmp; #define CLEANUP emms(); #include "../csp_packed_planar.h" #define FUNC_NAME bgr_15_to_yuv_410_p_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 4 #define CONVERT_YUV \ LOAD_RGB_15 \ RGB_TO_Y \ RGB_TO_UV_2 \ OUTPUT_PLANAR_Y \ OUTPUT_PLANAR_UV4 #define CONVERT_Y \ LOAD_RGB_15 \ RGB_TO_Y \ OUTPUT_PLANAR_Y #define CHROMA_SUB 4 #define INIT int i_tmp; #define CLEANUP emms(); #include "../csp_packed_planar.h" #define FUNC_NAME rgb_16_to_yuv_410_p_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 4 #define CONVERT_YUV \ LOAD_RGB_16 \ BGR_TO_Y \ BGR_TO_UV_2 \ OUTPUT_PLANAR_Y \ OUTPUT_PLANAR_UV4 #define CONVERT_Y \ LOAD_RGB_16 \ BGR_TO_Y \ OUTPUT_PLANAR_Y #define CHROMA_SUB 4 #define INIT int i_tmp; #define CLEANUP emms(); #include "../csp_packed_planar.h" #define FUNC_NAME bgr_16_to_yuv_410_p_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 4 #define CONVERT_YUV \ LOAD_RGB_16 \ RGB_TO_Y \ RGB_TO_UV_2 \ OUTPUT_PLANAR_Y \ OUTPUT_PLANAR_UV4 #define CONVERT_Y \ LOAD_RGB_16 \ RGB_TO_Y \ OUTPUT_PLANAR_Y #define CHROMA_SUB 4 #define INIT int i_tmp; #define CLEANUP emms(); #include "../csp_packed_planar.h" #define FUNC_NAME rgb_24_to_yuv_410_p_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 12 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 4 #define CONVERT_YUV \ RGB_YUV_LOAD_RGB_24 \ RGB_TO_Y \ RGB_TO_UV_2 \ OUTPUT_PLANAR_Y \ OUTPUT_PLANAR_UV4 #define CONVERT_Y \ RGB_YUV_LOAD_RGB_24 \ RGB_TO_Y \ OUTPUT_PLANAR_Y #define CHROMA_SUB 4 #define INIT int i_tmp; #define CLEANUP emms(); #include "../csp_packed_planar.h" #define FUNC_NAME bgr_24_to_yuv_410_p_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 12 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 4 #define CONVERT_YUV \ RGB_YUV_LOAD_RGB_24 \ BGR_TO_Y \ BGR_TO_UV_2 \ OUTPUT_PLANAR_Y \ OUTPUT_PLANAR_UV4 #define CONVERT_Y \ RGB_YUV_LOAD_RGB_24 \ BGR_TO_Y \ OUTPUT_PLANAR_Y #define CHROMA_SUB 4 #define INIT int i_tmp; #define CLEANUP emms(); #include "../csp_packed_planar.h" #define FUNC_NAME rgb_32_to_yuv_410_p_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 4 #define CONVERT_YUV \ LOAD_RGB_32 \ RGB_TO_Y \ RGB_TO_UV_2 \ OUTPUT_PLANAR_Y \ OUTPUT_PLANAR_UV4 #define CONVERT_Y \ LOAD_RGB_32 \ RGB_TO_Y \ OUTPUT_PLANAR_Y #define CHROMA_SUB 4 #define INIT int i_tmp; #define CLEANUP emms(); #include "../csp_packed_planar.h" #define FUNC_NAME bgr_32_to_yuv_410_p_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 4 #define CONVERT_YUV \ LOAD_RGB_32 \ BGR_TO_Y \ BGR_TO_UV_2 \ OUTPUT_PLANAR_Y \ OUTPUT_PLANAR_UV4 #define CONVERT_Y \ LOAD_RGB_32 \ BGR_TO_Y \ OUTPUT_PLANAR_Y #define CHROMA_SUB 4 #define INIT int i_tmp; #define CLEANUP emms(); #include "../csp_packed_planar.h" /*************************************** * -> YUV 422 P ***************************************/ #define FUNC_NAME rgb_15_to_yuv_422_p_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 2 #define NUM_PIXELS 4 #define CONVERT_YUV \ LOAD_RGB_15 \ BGR_TO_Y \ BGR_TO_UV_2 \ OUTPUT_PLANAR_Y \ OUTPUT_PLANAR_UV2 #define CHROMA_SUB 1 #define INIT int i_tmp; #define CLEANUP emms(); #include "../csp_packed_planar.h" #define FUNC_NAME bgr_15_to_yuv_422_p_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 2 #define NUM_PIXELS 4 #define CONVERT_YUV \ LOAD_RGB_15 \ RGB_TO_Y \ RGB_TO_UV_2 \ OUTPUT_PLANAR_Y \ OUTPUT_PLANAR_UV2 #define CHROMA_SUB 1 #define INIT int i_tmp; #define CLEANUP emms(); #include "../csp_packed_planar.h" #define FUNC_NAME rgb_16_to_yuv_422_p_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 2 #define NUM_PIXELS 4 #define CONVERT_YUV \ LOAD_RGB_16 \ BGR_TO_Y \ BGR_TO_UV_2 \ OUTPUT_PLANAR_Y \ OUTPUT_PLANAR_UV2 #define CHROMA_SUB 1 #define INIT int i_tmp; #define CLEANUP emms(); #include "../csp_packed_planar.h" #define FUNC_NAME bgr_16_to_yuv_422_p_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 2 #define NUM_PIXELS 4 #define CONVERT_YUV \ LOAD_RGB_16 \ RGB_TO_Y \ RGB_TO_UV_2 \ OUTPUT_PLANAR_Y \ OUTPUT_PLANAR_UV2 #define CHROMA_SUB 1 #define INIT int i_tmp; #define CLEANUP emms(); #include "../csp_packed_planar.h" #define FUNC_NAME rgb_24_to_yuv_422_p_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 12 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 2 #define NUM_PIXELS 4 #define CONVERT_YUV \ RGB_YUV_LOAD_RGB_24 \ RGB_TO_Y \ RGB_TO_UV_2 \ OUTPUT_PLANAR_Y \ OUTPUT_PLANAR_UV2 #define CHROMA_SUB 1 #define INIT int i_tmp; #define CLEANUP emms(); #include "../csp_packed_planar.h" #define FUNC_NAME bgr_24_to_yuv_422_p_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 12 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 2 #define NUM_PIXELS 4 #define CONVERT_YUV \ RGB_YUV_LOAD_RGB_24 \ BGR_TO_Y \ BGR_TO_UV_2 \ OUTPUT_PLANAR_Y \ OUTPUT_PLANAR_UV2 #define CHROMA_SUB 1 #define INIT int i_tmp; #define CLEANUP emms(); #include "../csp_packed_planar.h" #define FUNC_NAME rgb_32_to_yuv_422_p_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 2 #define NUM_PIXELS 4 #define CONVERT_YUV \ LOAD_RGB_32 \ RGB_TO_Y \ RGB_TO_UV_2 \ OUTPUT_PLANAR_Y \ OUTPUT_PLANAR_UV2 #define CHROMA_SUB 1 #define INIT int i_tmp; #define CLEANUP emms(); #include "../csp_packed_planar.h" #define FUNC_NAME bgr_32_to_yuv_422_p_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 2 #define NUM_PIXELS 4 #define CONVERT_YUV \ LOAD_RGB_32 \ BGR_TO_Y \ BGR_TO_UV_2 \ OUTPUT_PLANAR_Y \ OUTPUT_PLANAR_UV2 #define CHROMA_SUB 1 #define INIT int i_tmp; #define CLEANUP emms(); #include "../csp_packed_planar.h" /*************************************** * -> YUV 411 P ***************************************/ #define FUNC_NAME rgb_15_to_yuv_411_p_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 4 #define CONVERT_YUV \ LOAD_RGB_15 \ BGR_TO_Y \ BGR_TO_UV_2 \ OUTPUT_PLANAR_Y \ OUTPUT_PLANAR_UV4 #define CHROMA_SUB 1 #define INIT int i_tmp; #define CLEANUP emms(); #include "../csp_packed_planar.h" #define FUNC_NAME bgr_15_to_yuv_411_p_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 4 #define CONVERT_YUV \ LOAD_RGB_15 \ RGB_TO_Y \ RGB_TO_UV_2 \ OUTPUT_PLANAR_Y \ OUTPUT_PLANAR_UV4 #define CHROMA_SUB 1 #define INIT int i_tmp; #define CLEANUP emms(); #include "../csp_packed_planar.h" #define FUNC_NAME rgb_16_to_yuv_411_p_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 4 #define CONVERT_YUV \ LOAD_RGB_16 \ BGR_TO_Y \ BGR_TO_UV_2 \ OUTPUT_PLANAR_Y \ OUTPUT_PLANAR_UV4 #define CHROMA_SUB 1 #define INIT int i_tmp; #define CLEANUP emms(); #include "../csp_packed_planar.h" #define FUNC_NAME bgr_16_to_yuv_411_p_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 4 #define CONVERT_YUV \ LOAD_RGB_16 \ RGB_TO_Y \ RGB_TO_UV_2 \ OUTPUT_PLANAR_Y \ OUTPUT_PLANAR_UV4 #define CHROMA_SUB 1 #define INIT int i_tmp; #define CLEANUP emms(); #include "../csp_packed_planar.h" #define FUNC_NAME rgb_24_to_yuv_411_p_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 12 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 4 #define CONVERT_YUV \ RGB_YUV_LOAD_RGB_24 \ RGB_TO_Y \ RGB_TO_UV_2 \ OUTPUT_PLANAR_Y \ OUTPUT_PLANAR_UV4 #define CHROMA_SUB 1 #define INIT int i_tmp; #define CLEANUP emms(); #include "../csp_packed_planar.h" #define FUNC_NAME bgr_24_to_yuv_411_p_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 12 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 4 #define CONVERT_YUV \ RGB_YUV_LOAD_RGB_24 \ BGR_TO_Y \ BGR_TO_UV_2 \ OUTPUT_PLANAR_Y \ OUTPUT_PLANAR_UV4 #define CHROMA_SUB 1 #define INIT int i_tmp; #define CLEANUP emms(); #include "../csp_packed_planar.h" #define FUNC_NAME rgb_32_to_yuv_411_p_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 4 #define CONVERT_YUV \ LOAD_RGB_32 \ RGB_TO_Y \ RGB_TO_UV_2 \ OUTPUT_PLANAR_Y \ OUTPUT_PLANAR_UV4 #define CHROMA_SUB 1 #define INIT int i_tmp; #define CLEANUP emms(); #include "../csp_packed_planar.h" #define FUNC_NAME bgr_32_to_yuv_411_p_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 4 #define CONVERT_YUV \ LOAD_RGB_32 \ BGR_TO_Y \ BGR_TO_UV_2 \ OUTPUT_PLANAR_Y \ OUTPUT_PLANAR_UV4 #define CHROMA_SUB 1 #define INIT int i_tmp; #define CLEANUP emms(); #include "../csp_packed_planar.h" /* JPEG */ /*************************************** * -> YUVJ 420 P ***************************************/ #define FUNC_NAME rgb_15_to_yuvj_420_p_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 2 #define NUM_PIXELS 4 #define CONVERT_YUV \ LOAD_RGB_15 \ BGR_TO_YJ \ BGR_TO_UVJ_2 \ OUTPUT_PLANAR_Y \ OUTPUT_PLANAR_UV2 #define CONVERT_Y \ LOAD_RGB_15 \ BGR_TO_YJ \ OUTPUT_PLANAR_Y #define CHROMA_SUB 2 #define INIT int i_tmp; #define CLEANUP emms(); #include "../csp_packed_planar.h" #define FUNC_NAME bgr_15_to_yuvj_420_p_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 2 #define NUM_PIXELS 4 #define CONVERT_YUV \ LOAD_RGB_15 \ RGB_TO_YJ \ RGB_TO_UVJ_2 \ OUTPUT_PLANAR_Y \ OUTPUT_PLANAR_UV2 #define CONVERT_Y \ LOAD_RGB_15 \ RGB_TO_YJ \ OUTPUT_PLANAR_Y #define CHROMA_SUB 2 #define INIT int i_tmp; #define CLEANUP emms(); #include "../csp_packed_planar.h" #define FUNC_NAME rgb_16_to_yuvj_420_p_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 2 #define NUM_PIXELS 4 #define CONVERT_YUV \ LOAD_RGB_16 \ BGR_TO_YJ \ BGR_TO_UVJ_2 \ OUTPUT_PLANAR_Y \ OUTPUT_PLANAR_UV2 #define CONVERT_Y \ LOAD_RGB_16 \ BGR_TO_YJ \ OUTPUT_PLANAR_Y #define CHROMA_SUB 2 #define INIT int i_tmp; #define CLEANUP emms(); #include "../csp_packed_planar.h" #define FUNC_NAME bgr_16_to_yuvj_420_p_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 2 #define NUM_PIXELS 4 #define CONVERT_YUV \ LOAD_RGB_16 \ RGB_TO_YJ \ RGB_TO_UVJ_2 \ OUTPUT_PLANAR_Y \ OUTPUT_PLANAR_UV2 #define CONVERT_Y \ LOAD_RGB_16 \ RGB_TO_YJ \ OUTPUT_PLANAR_Y #define CHROMA_SUB 2 #define INIT int i_tmp; #define CLEANUP emms(); #include "../csp_packed_planar.h" #define FUNC_NAME rgb_24_to_yuvj_420_p_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 12 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 2 #define NUM_PIXELS 4 #define CONVERT_YUV \ RGB_YUV_LOAD_RGB_24 \ RGB_TO_YJ \ RGB_TO_UVJ_2 \ OUTPUT_PLANAR_Y \ OUTPUT_PLANAR_UV2 #define CONVERT_Y \ RGB_YUV_LOAD_RGB_24 \ RGB_TO_YJ \ OUTPUT_PLANAR_Y #define CHROMA_SUB 2 #define INIT int i_tmp; #define CLEANUP emms(); #include "../csp_packed_planar.h" #define FUNC_NAME bgr_24_to_yuvj_420_p_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 12 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 2 #define NUM_PIXELS 4 #define CONVERT_YUV \ RGB_YUV_LOAD_RGB_24 \ BGR_TO_YJ \ BGR_TO_UVJ_2 \ OUTPUT_PLANAR_Y \ OUTPUT_PLANAR_UV2 #define CONVERT_Y \ RGB_YUV_LOAD_RGB_24 \ BGR_TO_YJ \ OUTPUT_PLANAR_Y #define CHROMA_SUB 2 #define INIT int i_tmp; #define CLEANUP emms(); #include "../csp_packed_planar.h" #define FUNC_NAME rgb_32_to_yuvj_420_p_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 2 #define NUM_PIXELS 4 #define CONVERT_YUV \ LOAD_RGB_32 \ RGB_TO_YJ \ RGB_TO_UVJ_2 \ OUTPUT_PLANAR_Y \ OUTPUT_PLANAR_UV2 #define CONVERT_Y \ LOAD_RGB_32 \ RGB_TO_YJ \ OUTPUT_PLANAR_Y #define CHROMA_SUB 2 #define INIT int i_tmp; #define CLEANUP emms(); #include "../csp_packed_planar.h" #define FUNC_NAME bgr_32_to_yuvj_420_p_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 2 #define NUM_PIXELS 4 #define CONVERT_YUV \ LOAD_RGB_32 \ BGR_TO_YJ \ BGR_TO_UVJ_2 \ OUTPUT_PLANAR_Y \ OUTPUT_PLANAR_UV2 #define CONVERT_Y \ LOAD_RGB_32 \ BGR_TO_YJ \ OUTPUT_PLANAR_Y #define CHROMA_SUB 2 #define INIT int i_tmp; #define CLEANUP emms(); #include "../csp_packed_planar.h" /*************************************** * -> YUV 422 P ***************************************/ #define FUNC_NAME rgb_15_to_yuvj_422_p_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 2 #define NUM_PIXELS 4 #define CONVERT_YUV \ LOAD_RGB_15 \ BGR_TO_YJ \ BGR_TO_UVJ_2 \ OUTPUT_PLANAR_Y \ OUTPUT_PLANAR_UV2 #define CHROMA_SUB 1 #define INIT int i_tmp; #define CLEANUP emms(); #include "../csp_packed_planar.h" #define FUNC_NAME bgr_15_to_yuvj_422_p_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 2 #define NUM_PIXELS 4 #define CONVERT_YUV \ LOAD_RGB_15 \ RGB_TO_YJ \ RGB_TO_UVJ_2 \ OUTPUT_PLANAR_Y \ OUTPUT_PLANAR_UV2 #define CHROMA_SUB 1 #define INIT int i_tmp; #define CLEANUP emms(); #include "../csp_packed_planar.h" #define FUNC_NAME rgb_16_to_yuvj_422_p_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 2 #define NUM_PIXELS 4 #define CONVERT_YUV \ LOAD_RGB_16 \ BGR_TO_YJ \ BGR_TO_UVJ_2 \ OUTPUT_PLANAR_Y \ OUTPUT_PLANAR_UV2 #define CHROMA_SUB 1 #define INIT int i_tmp; #define CLEANUP emms(); #include "../csp_packed_planar.h" #define FUNC_NAME bgr_16_to_yuvj_422_p_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 2 #define NUM_PIXELS 4 #define CONVERT_YUV \ LOAD_RGB_16 \ RGB_TO_YJ \ RGB_TO_UVJ_2 \ OUTPUT_PLANAR_Y \ OUTPUT_PLANAR_UV2 #define CHROMA_SUB 1 #define INIT int i_tmp; #define CLEANUP emms(); #include "../csp_packed_planar.h" #define FUNC_NAME rgb_24_to_yuvj_422_p_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 12 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 2 #define NUM_PIXELS 4 #define CONVERT_YUV \ RGB_YUV_LOAD_RGB_24 \ RGB_TO_YJ \ RGB_TO_UVJ_2 \ OUTPUT_PLANAR_Y \ OUTPUT_PLANAR_UV2 #define CHROMA_SUB 1 #define INIT int i_tmp; #define CLEANUP emms(); #include "../csp_packed_planar.h" #define FUNC_NAME bgr_24_to_yuvj_422_p_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 12 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 2 #define NUM_PIXELS 4 #define CONVERT_YUV \ RGB_YUV_LOAD_RGB_24 \ BGR_TO_YJ \ BGR_TO_UVJ_2 \ OUTPUT_PLANAR_Y \ OUTPUT_PLANAR_UV2 #define CHROMA_SUB 1 #define INIT int i_tmp; #define CLEANUP emms(); #include "../csp_packed_planar.h" #define FUNC_NAME rgb_32_to_yuvj_422_p_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 2 #define NUM_PIXELS 4 #define CONVERT_YUV \ LOAD_RGB_32 \ RGB_TO_YJ \ RGB_TO_UVJ_2 \ OUTPUT_PLANAR_Y \ OUTPUT_PLANAR_UV2 #define CHROMA_SUB 1 #define INIT int i_tmp; #define CLEANUP emms(); #include "../csp_packed_planar.h" #define FUNC_NAME bgr_32_to_yuvj_422_p_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 2 #define NUM_PIXELS 4 #define CONVERT_YUV \ LOAD_RGB_32 \ BGR_TO_YJ \ BGR_TO_UVJ_2 \ OUTPUT_PLANAR_Y \ OUTPUT_PLANAR_UV2 #define CHROMA_SUB 1 #define INIT int i_tmp; #define CLEANUP emms(); #include "../csp_packed_planar.h" /*************************************** * -> END ***************************************/ void gavl_init_rgb_yuv_funcs_mmx(gavl_pixelformat_function_table_t * tab, int width, const gavl_video_options_t * opt) { if(width % 4) return; if(opt->quality && (opt->quality >= 3)) return; tab->rgb_15_to_yuy2 = rgb_15_to_yuy2_mmx; tab->rgb_15_to_uyvy = rgb_15_to_uyvy_mmx; tab->rgb_15_to_yuv_420_p = rgb_15_to_yuv_420_p_mmx; tab->rgb_15_to_yuv_410_p = rgb_15_to_yuv_410_p_mmx; tab->rgb_15_to_yuv_422_p = rgb_15_to_yuv_422_p_mmx; tab->rgb_15_to_yuv_411_p = rgb_15_to_yuv_411_p_mmx; tab->rgb_15_to_yuvj_420_p = rgb_15_to_yuvj_420_p_mmx; tab->rgb_15_to_yuvj_422_p = rgb_15_to_yuvj_422_p_mmx; tab->bgr_15_to_yuy2 = bgr_15_to_yuy2_mmx; tab->bgr_15_to_uyvy = bgr_15_to_uyvy_mmx; tab->bgr_15_to_yuv_420_p = bgr_15_to_yuv_420_p_mmx; tab->bgr_15_to_yuv_410_p = bgr_15_to_yuv_410_p_mmx; tab->bgr_15_to_yuv_422_p = bgr_15_to_yuv_422_p_mmx; tab->bgr_15_to_yuv_411_p = bgr_15_to_yuv_411_p_mmx; tab->bgr_15_to_yuvj_420_p = bgr_15_to_yuvj_420_p_mmx; tab->bgr_15_to_yuvj_422_p = bgr_15_to_yuvj_422_p_mmx; tab->rgb_16_to_yuy2 = rgb_16_to_yuy2_mmx; tab->rgb_16_to_uyvy = rgb_16_to_uyvy_mmx; tab->rgb_16_to_yuv_420_p = rgb_16_to_yuv_420_p_mmx; tab->rgb_16_to_yuv_410_p = rgb_16_to_yuv_410_p_mmx; tab->rgb_16_to_yuv_422_p = rgb_16_to_yuv_422_p_mmx; tab->rgb_16_to_yuv_411_p = rgb_16_to_yuv_411_p_mmx; tab->rgb_16_to_yuvj_420_p = rgb_16_to_yuvj_420_p_mmx; tab->rgb_16_to_yuvj_422_p = rgb_16_to_yuvj_422_p_mmx; tab->bgr_16_to_yuy2 = bgr_16_to_yuy2_mmx; tab->bgr_16_to_uyvy = bgr_16_to_uyvy_mmx; tab->bgr_16_to_yuv_420_p = bgr_16_to_yuv_420_p_mmx; tab->bgr_16_to_yuv_410_p = bgr_16_to_yuv_410_p_mmx; tab->bgr_16_to_yuv_422_p = bgr_16_to_yuv_422_p_mmx; tab->bgr_16_to_yuv_411_p = bgr_16_to_yuv_411_p_mmx; tab->bgr_16_to_yuvj_420_p = bgr_16_to_yuvj_420_p_mmx; tab->bgr_16_to_yuvj_422_p = bgr_16_to_yuvj_422_p_mmx; tab->rgb_24_to_yuy2 = rgb_24_to_yuy2_mmx; tab->rgb_24_to_uyvy = rgb_24_to_uyvy_mmx; tab->rgb_24_to_yuv_420_p = rgb_24_to_yuv_420_p_mmx; tab->rgb_24_to_yuv_410_p = rgb_24_to_yuv_410_p_mmx; tab->rgb_24_to_yuv_422_p = rgb_24_to_yuv_422_p_mmx; tab->rgb_24_to_yuv_411_p = rgb_24_to_yuv_411_p_mmx; tab->rgb_24_to_yuvj_420_p = rgb_24_to_yuvj_420_p_mmx; tab->rgb_24_to_yuvj_422_p = rgb_24_to_yuvj_422_p_mmx; tab->bgr_24_to_yuy2 = bgr_24_to_yuy2_mmx; tab->bgr_24_to_uyvy = bgr_24_to_uyvy_mmx; tab->bgr_24_to_yuv_420_p = bgr_24_to_yuv_420_p_mmx; tab->bgr_24_to_yuv_410_p = bgr_24_to_yuv_410_p_mmx; tab->bgr_24_to_yuv_422_p = bgr_24_to_yuv_422_p_mmx; tab->bgr_24_to_yuv_411_p = bgr_24_to_yuv_411_p_mmx; tab->bgr_24_to_yuvj_420_p = bgr_24_to_yuvj_420_p_mmx; tab->bgr_24_to_yuvj_422_p = bgr_24_to_yuvj_422_p_mmx; tab->rgb_32_to_yuy2 = rgb_32_to_yuy2_mmx; tab->rgb_32_to_uyvy = rgb_32_to_uyvy_mmx; tab->rgb_32_to_yuv_420_p = rgb_32_to_yuv_420_p_mmx; tab->rgb_32_to_yuv_410_p = rgb_32_to_yuv_410_p_mmx; tab->rgb_32_to_yuv_422_p = rgb_32_to_yuv_422_p_mmx; tab->rgb_32_to_yuv_411_p = rgb_32_to_yuv_411_p_mmx; tab->rgb_32_to_yuvj_420_p = rgb_32_to_yuvj_420_p_mmx; tab->rgb_32_to_yuvj_422_p = rgb_32_to_yuvj_422_p_mmx; tab->bgr_32_to_yuy2 = bgr_32_to_yuy2_mmx; tab->bgr_32_to_uyvy = bgr_32_to_uyvy_mmx; tab->bgr_32_to_yuv_420_p = bgr_32_to_yuv_420_p_mmx; tab->bgr_32_to_yuv_410_p = bgr_32_to_yuv_410_p_mmx; tab->bgr_32_to_yuv_422_p = bgr_32_to_yuv_422_p_mmx; tab->bgr_32_to_yuv_411_p = bgr_32_to_yuv_411_p_mmx; tab->bgr_32_to_yuvj_420_p = bgr_32_to_yuvj_420_p_mmx; tab->bgr_32_to_yuvj_422_p = bgr_32_to_yuvj_422_p_mmx; // tab->rgba_32_to_yuy2 = rgba_32_to_yuy2_mmx; // tab->rgba_32_to_yuv_420_p = rgba_32_to_yuv_420_p_mmx; // tab->rgba_32_to_yuv_422_p = rgba_32_to_yuv_422_p_mmx; } #else void gavl_init_rgb_yuv_funcs_mmxext(gavl_pixelformat_function_table_t * tab, int width, const gavl_video_options_t * opt) { } #endif /* !MMXEXT */ bplaum-gavl-b9385e3/gavl/mmx/_yuv_rgb_mmx.c000066400000000000000000002115271513252040200206620ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ /* * Support for mmxext * this macro produces another set of * functions in ../mmxext */ /* Constants for YUV -> RGB conversion */ static const mmx_t mmx_80w = { 0x0080008000800080LL }; static const mmx_t mmx_U_green = { 0xf37df37df37df37dLL }; // U Green: -3203 (= -0.34414*255.0/224.0 * 8192) static const mmx_t mmx_U_blue = { 0x4093409340934093LL }; // U Blue: 16531 (= 1.77200*255.0/224.0 * 8192) static const mmx_t mmx_V_red = { 0x3312331233123312LL }; // V red: 13074 (= 1.40200*255.0/224.0 * 8192) static const mmx_t mmx_V_green = { 0xe5fce5fce5fce5fcLL }; // V Green: -6660 (= -0.71414*255.0/224.0 * 8192) static const mmx_t mmx_Y_coeff = { 0x253f253f253f253fLL }; // Y Coeff: 9535 (= 255.0/219.0 * 8192) #if 1 static const mmx_t mmx_UJ_green = { 0xf4fdf4fdf4fdf4fdLL }; // U Green: -2819 (= -0.34414 * 8192) static const mmx_t mmx_UJ_blue = { 0x38b438b438b438b4LL }; // U Blue: 14516 (= 1.77200 * 8192) static const mmx_t mmx_VJ_red = { 0x2cdd2cdd2cdd2cddLL }; // V red: 11485 (= 1.40200 * 8192) static const mmx_t mmx_VJ_green = { 0xe926e926e926e926LL }; // V Green: -5850 (= -0.71414 * 8192) static const mmx_t mmx_YJ_coeff = { 0x2000200020002000LL }; // Y Coeff: 8192 (= 8192) #endif static const mmx_t mmx_10w = { 0x1010101010101010LL }; static const mmx_t mmx_00ffw = { 0x00ff00ff00ff00ffLL }; static const mmx_t mmx_ff00w = { 0xff00ff00ff00ff00LL }; /* Macros for loading the YUV images into the MMX registers */ #define LOAD_YUV_PLANAR_2 movq_m2r (*src_y, mm6);\ movd_m2r (*src_u, mm0);\ movd_m2r (*src_v, mm1);\ pxor_r2r (mm4, mm4); #define INIT_YUV_PLANAR_4 int32_t i_tmp; #define LOAD_YUV_PLANAR_4 movq_m2r (*src_y, mm6);\ i_tmp = (((int32_t)src_u[1])) << 8 | src_u[0];\ movd_m2r (i_tmp, mm0); \ i_tmp = (((int32_t)src_v[1])) << 8 | src_v[0];\ movd_m2r (i_tmp, mm1);\ pxor_r2r (mm4, mm4);\ punpcklbw_r2r(mm4, mm0);\ punpcklbw_r2r(mm4, mm1);\ movq_r2r (mm0, mm2);\ psllw_i2r(8,mm2);\ por_r2r(mm2, mm0);\ movq_r2r (mm1, mm2);\ psllw_i2r(8,mm2);\ por_r2r(mm2, mm1); #define LOAD_YUY2 movq_m2r(*src,mm0);/* mm0: V2 Y3 U2 Y2 V0 Y1 U0 Y0 */\ movq_m2r(*(src+8),mm1);/* mm1: V6 Y7 U6 Y6 V4 Y5 U4 Y4 */\ movq_r2r(mm0,mm2);/* mm2: V2 Y3 U2 Y2 V0 Y1 U0 Y0 */\ pand_m2r(mmx_00ffw,mm2);/* mm2: 00 Y3 00 Y2 00 Y1 00 Y0 */\ pxor_r2r(mm4, mm4);/* Zero mm4 */\ packuswb_r2r(mm4,mm2);/* mm2: 00 00 00 00 Y3 Y2 Y1 Y0 */\ movq_r2r(mm1,mm3);/* mm3: V6 Y7 U6 Y6 V4 Y5 U4 Y4 */\ pand_m2r(mmx_00ffw,mm3);/* mm3: 00 Y7 00 Y6 00 Y5 00 Y4 */\ pxor_r2r(mm6, mm6);/* Zero mm6 */\ packuswb_r2r(mm3,mm6);/* mm6: Y7 Y6 Y5 Y4 00 00 00 00 */\ por_r2r(mm2,mm6);/* mm6: Y7 Y6 Y5 Y4 Y3 Y2 Y1 Y0 */\ psrlw_i2r(8,mm0);/* mm0: 00 V2 00 U2 00 V0 00 U0 */\ psrlw_i2r(8,mm1);/* mm1: 00 V6 00 U6 00 V4 00 U4 */\ packuswb_r2r(mm1,mm0);/* mm0: V6 U6 V4 U4 V2 U2 V0 U0 */\ movq_r2r(mm0,mm1);/* mm1: V6 U6 V4 U4 V2 U2 V0 U0 */\ pand_m2r(mmx_00ffw,mm0);/* mm0: 00 U6 00 U4 00 U2 00 U0 */\ psrlw_i2r(8,mm1);/* mm1: 00 V6 00 V4 00 V2 00 V0 */\ packuswb_r2r(mm4,mm0);/* mm0: 00 00 00 00 U6 U4 U2 U0 */\ packuswb_r2r(mm4,mm1);/* mm1: 00 00 00 00 V6 V4 V2 V0 */ #define LOAD_UYVY movq_m2r(*src,mm0);/* mm0: Y3 V2 Y2 U2 Y1 V0 Y0 U0 */\ movq_m2r(*(src+8),mm1);/* mm1: Y7 V6 Y6 U6 Y5 V4 Y4 U4 */\ movq_r2r(mm0,mm2);/* mm2: Y3 V2 Y2 U2 Y1 V0 Y0 U0 */\ pand_m2r(mmx_ff00w,mm2);/* mm2: Y3 00 Y2 00 Y1 00 Y0 00 */\ psrlw_i2r(8,mm2);/* mm2: 00 Y3 00 Y2 00 Y1 00 Y0 */\ pxor_r2r(mm4, mm4);/* Zero mm4 */ \ packuswb_r2r(mm4,mm2);/* mm2: 00 00 00 00 Y3 Y2 Y1 Y0 */\ movq_r2r(mm1,mm3);/* mm3: Y7 V6 Y6 U6 Y5 V4 Y4 U4 */\ pand_m2r(mmx_ff00w,mm3);/* mm3: Y7 00 Y6 00 Y5 00 Y4 00 */\ psrlw_i2r(8,mm3);/* mm3: 00 Y7 00 Y6 00 Y5 00 Y4 */\ pxor_r2r(mm6, mm6);/* Zero mm6 */\ packuswb_r2r(mm3,mm6);/* mm6: Y7 Y6 Y5 Y4 00 00 00 00 */\ por_r2r(mm2,mm6);/* mm6: Y7 Y6 Y5 Y4 Y3 Y2 Y1 Y0 */\ pand_m2r(mmx_00ffw,mm0);/* mm0: 00 V2 00 U2 00 V0 00 U0 */\ pand_m2r(mmx_00ffw,mm1);/* mm1: 00 V6 00 U6 00 V4 00 U4 */\ packuswb_r2r(mm1,mm0);/* mm0: V6 U6 V4 U4 V2 U2 V0 U0 */\ movq_r2r(mm0,mm1);/* mm1: V6 U6 V4 U4 V2 U2 V0 U0 */\ pand_m2r(mmx_00ffw,mm0);/* mm0: 00 U6 00 U4 00 U2 00 U0 */\ psrlw_i2r(8,mm1);/* mm1: 00 V6 00 V4 00 V2 00 V0 */\ packuswb_r2r(mm4,mm0);/* mm0: 00 00 00 00 U6 U4 U2 U0 */\ packuswb_r2r(mm4,mm1);/* mm1: 00 00 00 00 V6 V4 V2 V0 */ /* This macro converts 8 Pixels at once (taken from mpeg2dec) */ /* * Before the conversion: * * mm0 = 00 00 00 00 u3 u2 u1 u0 * mm1 = 00 00 00 00 v3 v2 v1 v0 * mm6 = Y7 Y6 Y5 Y4 Y3 Y2 Y1 Y0 * mm4 = 00 00 00 00 00 00 00 00 (must be zerod before!) * After the conversion: * * mm0 = B7 B6 B5 B4 B3 B2 B1 B0 * mm1 = R7 R6 R5 R4 R3 R2 R1 R0 * mm2 = G7 G6 G5 G4 G3 G2 G1 G0 * */ #define YUV_2_RGB punpcklbw_r2r (mm4, mm0);/* mm0 = u3 u2 u1 u0 */\ punpcklbw_r2r (mm4, mm1);/* mm1 = v3 v2 v1 v0 */\ psubsw_m2r (mmx_80w, mm0);/* u -= 128 */\ psubsw_m2r (mmx_80w, mm1);/* v -= 128 */\ psllw_i2r (3, mm0);/* promote precision */\ psllw_i2r (3, mm1);/* promote precision */\ movq_r2r (mm0, mm2);/* mm2 = u3 u2 u1 u0 */\ movq_r2r (mm1, mm3);/* mm3 = v3 v2 v1 v0 */\ pmulhw_m2r (mmx_U_green, mm2);/* mm2 = u * u_green */\ pmulhw_m2r (mmx_V_green, mm3);/* mm3 = v * v_green */\ pmulhw_m2r (mmx_U_blue, mm0);/* mm0 = chroma_b */\ pmulhw_m2r (mmx_V_red, mm1);/* mm1 = chroma_r */\ paddsw_r2r (mm3, mm2);/* mm2 = chroma_g */\ psubusb_m2r (mmx_10w, mm6);/* Y -= 16 */\ movq_r2r (mm6, mm7);/* mm7 = Y7 Y6 Y5 Y4 Y3 Y2 Y1 Y0 */\ pand_m2r (mmx_00ffw, mm6);/* mm6 = Y6 Y4 Y2 Y0 */\ psrlw_i2r (8, mm7);/* mm7 = Y7 Y5 Y3 Y1 */\ psllw_i2r (3, mm6);/* promote precision */\ psllw_i2r (3, mm7);/* promote precision */\ pmulhw_m2r (mmx_Y_coeff, mm6);/* mm6 = luma_rgb even */\ pmulhw_m2r (mmx_Y_coeff, mm7);/* mm7 = luma_rgb odd */\ movq_r2r (mm0, mm3);/* mm3 = chroma_b */\ movq_r2r (mm1, mm4);/* mm4 = chroma_r */\ movq_r2r (mm2, mm5);/* mm5 = chroma_g */\ paddsw_r2r (mm6, mm0);/* mm0 = B6 B4 B2 B0 */\ paddsw_r2r (mm7, mm3);/* mm3 = B7 B5 B3 B1 */\ paddsw_r2r (mm6, mm1);/* mm1 = R6 R4 R2 R0 */\ paddsw_r2r (mm7, mm4);/* mm4 = R7 R5 R3 R1 */\ paddsw_r2r (mm6, mm2);/* mm2 = G6 G4 G2 G0 */\ paddsw_r2r (mm7, mm5);/* mm5 = G7 G5 G3 G1 */\ packuswb_r2r (mm0, mm0);/* saturate to 0-255 */\ packuswb_r2r (mm1, mm1);/* saturate to 0-255 */\ packuswb_r2r (mm2, mm2);/* saturate to 0-255 */\ packuswb_r2r (mm3, mm3);/* saturate to 0-255 */\ packuswb_r2r (mm4, mm4);/* saturate to 0-255 */\ packuswb_r2r (mm5, mm5);/* saturate to 0-255 */\ punpcklbw_r2r (mm3, mm0);/* mm0 = B7 B6 B5 B4 B3 B2 B1 B0 */\ punpcklbw_r2r (mm4, mm1);/* mm1 = R7 R6 R5 R4 R3 R2 R1 R0 */\ punpcklbw_r2r (mm5, mm2);/* mm2 = G7 G6 G5 G4 G3 G2 G1 G0 */ /* Same as above, but for JPEG quantization */ #define YUVJ_2_RGB punpcklbw_r2r (mm4, mm0);/* mm0 = u3 u2 u1 u0 */\ punpcklbw_r2r (mm4, mm1);/* mm1 = v3 v2 v1 v0 */\ psubsw_m2r (mmx_80w, mm0);/* u -= 128 */\ psubsw_m2r (mmx_80w, mm1);/* v -= 128 */\ psllw_i2r (3, mm0);/* promote precision */\ psllw_i2r (3, mm1);/* promote precision */\ movq_r2r (mm0, mm2);/* mm2 = u3 u2 u1 u0 */\ movq_r2r (mm1, mm3);/* mm3 = v3 v2 v1 v0 */\ pmulhw_m2r (mmx_UJ_green, mm2);/* mm2 = u * u_green */\ pmulhw_m2r (mmx_VJ_green, mm3);/* mm3 = v * v_green */\ pmulhw_m2r (mmx_UJ_blue, mm0);/* mm0 = chroma_b */\ pmulhw_m2r (mmx_VJ_red, mm1);/* mm1 = chroma_r */\ paddsw_r2r (mm3, mm2);/* mm2 = chroma_g */\ /* psubusb_m2r (mmx_10w, mm6); Y -= 16 */\ movq_r2r (mm6, mm7);/* mm7 = Y7 Y6 Y5 Y4 Y3 Y2 Y1 Y0 */\ pand_m2r (mmx_00ffw, mm6);/* mm6 = Y6 Y4 Y2 Y0 */\ psrlw_i2r (8, mm7);/* mm7 = Y7 Y5 Y3 Y1 */\ psllw_i2r (3, mm6);/* promote precision */\ psllw_i2r (3, mm7);/* promote precision */\ pmulhw_m2r (mmx_YJ_coeff, mm6);/* mm6 = luma_rgb even */\ pmulhw_m2r (mmx_YJ_coeff, mm7);/* mm7 = luma_rgb odd */\ movq_r2r (mm0, mm3);/* mm3 = chroma_b */\ movq_r2r (mm1, mm4);/* mm4 = chroma_r */\ movq_r2r (mm2, mm5);/* mm5 = chroma_g */\ paddsw_r2r (mm6, mm0);/* mm0 = B6 B4 B2 B0 */\ paddsw_r2r (mm7, mm3);/* mm3 = B7 B5 B3 B1 */\ paddsw_r2r (mm6, mm1);/* mm1 = R6 R4 R2 R0 */\ paddsw_r2r (mm7, mm4);/* mm4 = R7 R5 R3 R1 */\ paddsw_r2r (mm6, mm2);/* mm2 = G6 G4 G2 G0 */\ paddsw_r2r (mm7, mm5);/* mm5 = G7 G5 G3 G1 */\ packuswb_r2r (mm0, mm0);/* saturate to 0-255 */\ packuswb_r2r (mm1, mm1);/* saturate to 0-255 */\ packuswb_r2r (mm2, mm2);/* saturate to 0-255 */\ packuswb_r2r (mm3, mm3);/* saturate to 0-255 */\ packuswb_r2r (mm4, mm4);/* saturate to 0-255 */\ packuswb_r2r (mm5, mm5);/* saturate to 0-255 */\ punpcklbw_r2r (mm3, mm0);/* mm0 = B7 B6 B5 B4 B3 B2 B1 B0 */\ punpcklbw_r2r (mm4, mm1);/* mm1 = R7 R6 R5 R4 R3 R2 R1 R0 */\ punpcklbw_r2r (mm5, mm2);/* mm2 = G7 G6 G5 G4 G3 G2 G1 G0 */ /******************************************* * Output Macros *******************************************/ /* * mm0 = B7 B6 B5 B4 B3 B2 B1 B0 * mm1 = R7 R6 R5 R4 R3 R2 R1 R0 * mm2 = G7 G6 G5 G4 G3 G2 G1 G0 */ #define OUTPUT_BGR_32 pxor_r2r (mm3, mm3);\ movq_r2r (mm0, mm6);\ punpcklbw_r2r (mm2, mm6);\ movq_r2r (mm1, mm7);\ punpcklbw_r2r (mm3, mm7);\ movq_r2r (mm0, mm4);\ punpcklwd_r2r (mm7, mm6);\ movq_r2r (mm1, mm5);\ MOVQ_R2M (mm6, *dst);\ movq_r2r (mm0, mm6);\ punpcklbw_r2r (mm2, mm6);\ punpckhwd_r2r (mm7, mm6);\ MOVQ_R2M (mm6, *(dst+8));\ punpckhbw_r2r (mm2, mm4);\ punpckhbw_r2r (mm3, mm5);\ punpcklwd_r2r (mm5, mm4);\ MOVQ_R2M (mm4, *(dst+16));\ movq_r2r (mm0, mm4);\ punpckhbw_r2r (mm2, mm4);\ punpckhwd_r2r (mm5, mm4);\ MOVQ_R2M (mm4, *(dst+24)); #define OUTPUT_RGB_32 pxor_r2r (mm3, mm3);\ movq_r2r (mm1, mm6);\ punpcklbw_r2r (mm2, mm6);\ movq_r2r (mm0, mm7);\ punpcklbw_r2r (mm3, mm7);\ movq_r2r (mm1, mm4);\ punpcklwd_r2r (mm7, mm6);\ movq_r2r (mm0, mm5);\ MOVQ_R2M (mm6, *dst);\ movq_r2r (mm1, mm6);\ punpcklbw_r2r (mm2, mm6);\ punpckhwd_r2r (mm7, mm6);\ MOVQ_R2M (mm6, *(dst+8));\ punpckhbw_r2r (mm2, mm4);\ punpckhbw_r2r (mm3, mm5);\ punpcklwd_r2r (mm5, mm4);\ MOVQ_R2M (mm4, *(dst+16));\ movq_r2r (mm1, mm4);\ punpckhbw_r2r (mm2, mm4);\ punpckhwd_r2r (mm5, mm4);\ MOVQ_R2M (mm4, *(dst+24)); #ifdef MMXEXT /* * mm0 = B7 B6 B5 B4 B3 B2 B1 B0 * mm1 = R7 R6 R5 R4 R3 R2 R1 R0 * mm2 = G7 G6 G5 G4 G3 G2 G1 G0 */ static const mmx_t M24A= { 0x00FF0000FF0000FFLL }; static const mmx_t M24B= { 0xFF0000FF0000FF00LL }; static const mmx_t M24C= { 0x0000FF0000FF0000LL }; #define OUTPUT_RGB_24 \ movq_m2r(M24A, mm4); \ movq_m2r(M24C, mm7); \ pshufw_r2r(mm1, mm5, 0x50); /* B3 B2 B3 B2 B1 B0 B1 B0 */ \ pshufw_r2r(mm2, mm3, 0x50); /* G3 G2 G3 G2 G1 G0 G1 G0 */ \ pshufw_r2r(mm0, mm6, 0x00); /* R1 R0 R1 R0 R1 R0 R1 R0 */ \ pand_r2r(mm4, mm5); /* B2 B1 B0 */ \ pand_r2r(mm4, mm3); /* G2 G1 G0 */ \ pand_r2r(mm7, mm6); /* R1 R0 */ \ psllq_i2r(8, mm3); /* G2 G1 G0 */ \ por_r2r(mm5, mm6);\ por_r2r(mm3, mm6);\ MOVQ_R2M(mm6, *(dst));\ psrlq_i2r(8, mm2); /* 00 G7 G6 G5 G4 G3 G2 G1 */\ pshufw_r2r(mm1, mm5, 0xA5); /* B5 B4 B5 B4 B3 B2 B3 B2 */ \ pshufw_r2r(mm2, mm3, 0x55); /* G4 G3 G4 G3 G4 G3 G4 G3 */ \ pshufw_r2r(mm0, mm6, 0xA5); /* R5 R4 R5 R4 R3 R2 R3 R2 */ \ pand_m2r(M24B, mm5); /* B5 B4 B3 */ \ pand_r2r(mm7, mm3); /* G4 G3 */ \ pand_r2r(mm4, mm6); /* R4 R3 R2 */ \ por_r2r(mm5, mm3); /* B5 G4 B4 G3 B3 */\ por_r2r(mm3, mm6 );\ MOVQ_R2M(mm6, *(dst+8));\ pshufw_r2r(mm1, mm5, 0xFF); /* B7 B6 B7 B6 B7 B6 B6 B7 */\ pshufw_r2r(mm2, mm3, 0xFA); /* 00 G7 00 G7 G6 G5 G6 G5 */\ pshufw_r2r(mm0, mm6, 0xFA); /* R7 R6 R7 R6 R5 R4 R5 R4 */\ pand_r2r(mm7, mm5); /* B7 B6 */\ pand_r2r(mm4, mm3); /* G7 G6 G5 */\ pand_m2r(M24B, mm6); /* R7 R6 R5 */\ por_r2r(mm5, mm3);\ por_r2r(mm3, mm6);\ MOVQ_R2M(mm6, *(dst+16)); #define OUTPUT_BGR_24 \ movq_m2r(M24A, mm4); \ movq_m2r(M24C, mm7); \ pshufw_r2r(mm0, mm5, 0x50); /* B3 B2 B3 B2 B1 B0 B1 B0 */ \ pshufw_r2r(mm2, mm3, 0x50); /* G3 G2 G3 G2 G1 G0 G1 G0 */ \ pshufw_r2r(mm1, mm6, 0x00); /* R1 R0 R1 R0 R1 R0 R1 R0 */ \ pand_r2r(mm4, mm5); /* B2 B1 B0 */ \ pand_r2r(mm4, mm3); /* G2 G1 G0 */ \ pand_r2r(mm7, mm6); /* R1 R0 */ \ psllq_i2r(8, mm3); /* G2 G1 G0 */ \ por_r2r(mm5, mm6);\ por_r2r(mm3, mm6);\ MOVQ_R2M(mm6, *(dst));\ psrlq_i2r(8, mm2); /* 00 G7 G6 G5 G4 G3 G2 G1 */\ pshufw_r2r(mm0, mm5, 0xA5); /* B5 B4 B5 B4 B3 B2 B3 B2 */ \ pshufw_r2r(mm2, mm3, 0x55); /* G4 G3 G4 G3 G4 G3 G4 G3 */ \ pshufw_r2r(mm1, mm6, 0xA5); /* R5 R4 R5 R4 R3 R2 R3 R2 */ \ pand_m2r(M24B, mm5); /* B5 B4 B3 */ \ pand_r2r(mm7, mm3); /* G4 G3 */ \ pand_r2r(mm4, mm6); /* R4 R3 R2 */ \ por_r2r(mm5, mm3); /* B5 G4 B4 G3 B3 */\ por_r2r(mm3, mm6 );\ MOVQ_R2M(mm6, *(dst+8));\ pshufw_r2r(mm0, mm5, 0xFF); /* B7 B6 B7 B6 B7 B6 B6 B7 */\ pshufw_r2r(mm2, mm3, 0xFA); /* 00 G7 00 G7 G6 G5 G6 G5 */\ pshufw_r2r(mm1, mm6, 0xFA); /* R7 R6 R7 R6 R5 R4 R5 R4 */\ pand_r2r(mm7, mm5); /* B7 B6 */\ pand_r2r(mm4, mm3); /* G7 G6 G5 */\ pand_m2r(M24B, mm6); /* R7 R6 R5 */\ por_r2r(mm5, mm3);\ por_r2r(mm3, mm6);\ MOVQ_R2M(mm6, *(dst+16)); #else /* * mm0 = B7 B6 B5 B4 B3 B2 B1 B0 * mm1 = R7 R6 R5 R4 R3 R2 R1 R0 * mm2 = G7 G6 G5 G4 G3 G2 G1 G0 */ static const mmx_t yuv_rgb_lowest_word = { 0x000000000000FFFFLL }; static const mmx_t yuv_rgb_lowest_byte = { 0x00000000000000FFLL }; #define OUTPUT_RGB_24 pxor_r2r(mm3, mm3);/* Zero -> mm3 */\ movq_r2r(mm2, mm4);/* mm4: G7 G6 G5 G4 G3 G2 G1 G0 */\ movq_r2r(mm1, mm5);/* mm5: R7 R6 R5 R4 R3 R2 R1 R0 */\ movq_r2r(mm1, mm5);/* mm5: R7 R6 R5 R4 R3 R2 R1 R0 */\ punpcklbw_r2r(mm3, mm5);/* mm5: 00 R3 00 R2 00 R1 00 R0 */\ punpcklbw_r2r(mm4, mm3);/* mm3: G3 00 G2 00 G1 00 G0 00 */\ por_r2r(mm5, mm3);/* mm3: G3 R3 G2 R2 G1 R1 G0 R0 */\ movq_r2r(mm0, mm5);/* mm5: B7 B6 B5 B4 B3 B2 B1 B0 */\ pand_m2r(yuv_rgb_lowest_byte, mm5);/* mm5: 00 00 00 00 00 00 00 B0 */\ movq_r2r(mm3, mm7);/* mm7: G3 R3 G2 R2 G1 R1 G0 R0 */\ pand_m2r(yuv_rgb_lowest_word, mm7);/* mm7: 00 00 00 00 00 00 G0 R0 */\ psllq_i2r(16, mm5);/* mm5: 00 00 00 00 00 B0 00 00 */\ por_r2r(mm5, mm7);/* mm7: 00 00 00 00 00 B0 G0 R0 */\ psrlq_i2r(16, mm3);/* mm3: 00 00 G3 R3 G2 R2 G1 R1 */\ psrlq_i2r(8, mm0);/* mm0: 00 B7 B6 B5 B4 B3 B2 B1 */\ movq_r2r(mm0, mm5);/* mm5: 00 B7 B6 B5 B4 B3 B2 B1 */\ pand_m2r(yuv_rgb_lowest_byte, mm5);/* mm5: 00 00 00 00 00 00 00 B1 */\ psllq_i2r(40, mm5);/* mm5: 00 00 B1 00 00 00 00 00 */\ por_r2r(mm5, mm7);/* mm7: 00 00 B1 00 00 B0 G0 R0 */\ movq_r2r(mm3, mm6);/* mm7: 00 00 G3 R3 G2 R2 G1 R1 */\ pand_m2r(yuv_rgb_lowest_word, mm6);/* mm6: 00 00 00 00 00 00 G1 R1 */\ psllq_i2r(24, mm6);/* mm6: 00 00 00 G1 R1 00 00 00 */\ por_r2r(mm6, mm7);/* mm7: 00 00 B1 G1 R1 B0 G0 R0 */\ psrlq_i2r(16, mm3);/* mm3: 00 00 00 00 G3 R3 G2 R2 */\ psrlq_i2r(8, mm0);/* mm0: 00 00 B7 B6 B5 B4 B3 B2 */\ movq_r2r(mm3, mm6);/* mm6: 00 00 00 00 G3 R3 G2 R2 */\ pand_m2r(yuv_rgb_lowest_word, mm6);/* mm6: 00 00 00 00 00 00 G2 R2 */\ psllq_i2r(48, mm6);/* mm6: G2 R2 00 00 00 00 00 00 */\ por_r2r(mm6, mm7);/* mm7: G2 R2 B1 G1 R1 B0 G0 R0 */\ MOVQ_R2M(mm7, *dst);\ movq_r2r(mm0, mm7);/* mm7: 00 00 B7 B6 B5 B4 B3 B2 */\ pand_m2r(yuv_rgb_lowest_byte, mm7);/* mm7: 00 00 00 00 00 00 00 B2 */\ psrlq_i2r(16, mm3);/* mm3: 00 00 00 00 00 00 G3 R3 */\ psllq_i2r(8, mm3);/* mm3: 00 00 00 00 00 G3 R3 00 */\ por_r2r(mm3, mm7);/* mm7: 00 00 00 00 00 G3 R3 B2 */\ psrlq_i2r(8, mm0);/* mm0: 00 00 00 B7 B6 B5 B4 B3 */\ movq_r2r(mm0, mm5);/* mm5: 00 00 00 B7 B6 B5 B4 B3 */\ pand_m2r(yuv_rgb_lowest_byte, mm5);/* mm5: 00 00 00 00 00 00 00 B3 */\ psllq_i2r(24, mm5);/* mm5: 00 00 00 00 B3 00 00 00 */\ por_r2r(mm5, mm7);/* mm7: 00 00 00 00 B3 G3 R3 B2 */\ psrlq_i2r(32, mm1);/* mm1: 00 00 00 00 R7 R6 R5 R4 */\ psrlq_i2r(32, mm2);/* mm2: 00 00 00 00 G7 G6 G5 G4 */\ psrlq_i2r(8, mm0);/* mm0: 00 00 00 00 B7 B6 B5 B4 */\ punpcklbw_r2r(mm0, mm2);/* mm2: B7 G7 B6 G6 B5 G5 B4 G4 */\ movq_r2r(mm1, mm5);/* mm5: 00 00 00 00 R7 R6 R5 R4 */\ pand_m2r(yuv_rgb_lowest_byte, mm5);/* mm5: 00 00 00 00 00 00 00 R4 */\ psllq_i2r(32, mm5);/* mm5: 00 00 00 R4 00 00 00 00 */\ por_r2r(mm5, mm7);/* mm7: 00 00 00 R4 B3 G3 R3 B2 */\ movq_r2r(mm2, mm6);/* mm6: B7 G7 B6 G6 B5 G5 B4 G4 */\ pand_m2r(yuv_rgb_lowest_word, mm6);/* mm6: 00 00 00 00 00 00 B4 G4 */\ psllq_i2r(40, mm6);/* mm6: 00 B4 G4 00 00 00 00 00 */\ por_r2r(mm6, mm7);/* mm7: 00 B4 G4 R4 B3 G3 R3 B2 */\ psrlq_i2r(8, mm1);/* mm1: 00 00 00 00 00 R7 R6 R5 */\ psrlq_i2r(16, mm2);/* mm2: 00 00 B7 G7 B6 G6 B5 G5 */\ movq_r2r(mm1, mm5);/* mm5: 00 00 00 00 00 R7 R6 R5 */\ psllq_i2r(56, mm5);/* mm5: R5 00 00 00 00 00 00 00 */\ por_r2r(mm5, mm7);/* mm7: R5 B4 G4 R4 B3 G3 R3 B2 */\ MOVQ_R2M(mm7, *(dst+8));\ movq_r2r(mm2, mm7);/* mm7: 00 00 B7 G7 B6 G6 B5 G5 */\ pand_m2r(yuv_rgb_lowest_word, mm7);/* mm7: 00 00 00 00 00 00 B5 G5 */\ psrlq_i2r(8, mm1);/* mm1: 00 00 00 00 00 00 R7 R6 */\ psrlq_i2r(16, mm2);/* mm2: 00 00 00 00 B7 G7 B6 G6 */\ movq_r2r(mm1, mm5);/* mm5: 00 00 00 00 00 00 R7 R6 */\ pand_m2r(yuv_rgb_lowest_byte, mm5);/* mm5: 00 00 00 00 00 00 00 R6 */\ psllq_i2r(16, mm5);/* mm5: 00 00 00 00 00 R6 00 00 */\ por_r2r(mm5, mm7);/* mm7: 00 00 00 00 00 R6 B5 G5 */\ movq_r2r(mm2, mm6);/* mm6: 00 00 00 00 B7 G7 B6 G6 */\ pand_m2r(yuv_rgb_lowest_word, mm6);/* mm6: 00 00 00 00 00 00 B6 G6 */\ psllq_i2r(24, mm6);/* mm5: 00 00 00 B6 G6 00 00 00 */\ por_r2r(mm6, mm7);/* mm7: 00 00 00 B6 G6 R6 B5 G5 */\ psrlq_i2r(8, mm1);/* mm1: 00 00 00 00 00 00 00 R7 */\ psrlq_i2r(16, mm2);/* mm2: 00 00 00 00 00 00 B7 G7 */\ psllq_i2r(40, mm1);/* mm1: 00 00 R7 00 00 00 00 00 */\ psllq_i2r(48, mm2);/* mm2: B7 G7 00 00 00 00 00 00 */\ por_r2r(mm1, mm7);\ por_r2r(mm2, mm7);\ MOVQ_R2M(mm7, *(dst+16));\ #define OUTPUT_BGR_24 pxor_r2r(mm3, mm3);/* Zero -> mm3 */\ movq_r2r(mm2, mm4);/* mm4: G7 G6 G5 G4 G3 G2 G1 G0 */\ movq_r2r(mm0, mm5);/* mm5: R7 R6 R5 R4 R3 R2 R1 R0 */\ movq_r2r(mm0, mm5);/* mm5: R7 R6 R5 R4 R3 R2 R1 R0 */\ punpcklbw_r2r(mm3, mm5);/* mm5: 00 R3 00 R2 00 R1 00 R0 */\ punpcklbw_r2r(mm4, mm3);/* mm3: G3 00 G2 00 G1 00 G0 00 */\ por_r2r(mm5, mm3);/* mm3: G3 R3 G2 R2 G1 R1 G0 R0 */\ movq_r2r(mm1, mm5);/* mm5: B7 B6 B5 B4 B3 B2 B1 B0 */\ pand_m2r(yuv_rgb_lowest_byte, mm5);/* mm5: 00 00 00 00 00 00 00 B0 */\ movq_r2r(mm3, mm7);/* mm7: G3 R3 G2 R2 G1 R1 G0 R0 */\ pand_m2r(yuv_rgb_lowest_word, mm7);/* mm7: 00 00 00 00 00 00 G0 R0 */\ psllq_i2r(16, mm5);/* mm5: 00 00 00 00 00 B0 00 00 */\ por_r2r(mm5, mm7);/* mm7: 00 00 00 00 00 B0 G0 R0 */\ psrlq_i2r(16, mm3);/* mm3: 00 00 G3 R3 G2 R2 G1 R1 */\ psrlq_i2r(8, mm1);/* mm1: 00 B7 B6 B5 B4 B3 B2 B1 */\ movq_r2r(mm1, mm5);/* mm5: 00 B7 B6 B5 B4 B3 B2 B1 */\ pand_m2r(yuv_rgb_lowest_byte, mm5);/* mm5: 00 00 00 00 00 00 00 B1 */\ psllq_i2r(40, mm5);/* mm5: 00 00 B1 00 00 00 00 00 */\ por_r2r(mm5, mm7);/* mm7: 00 00 B1 00 00 B0 G0 R0 */\ movq_r2r(mm3, mm6);/* mm7: 00 00 G3 R3 G2 R2 G1 R1 */\ pand_m2r(yuv_rgb_lowest_word, mm6);/* mm6: 00 00 00 00 00 00 G1 R1 */\ psllq_i2r(24, mm6);/* mm6: 00 00 00 G1 R1 00 00 00 */\ por_r2r(mm6, mm7);/* mm7: 00 00 B1 G1 R1 B0 G0 R0 */\ psrlq_i2r(16, mm3);/* mm3: 00 00 00 00 G3 R3 G2 R2 */\ psrlq_i2r(8, mm1);/* mm1: 00 00 B7 B6 B5 B4 B3 B2 */\ movq_r2r(mm3, mm6);/* mm6: 00 00 00 00 G3 R3 G2 R2 */\ pand_m2r(yuv_rgb_lowest_word, mm6);/* mm6: 00 00 00 00 00 00 G2 R2 */\ psllq_i2r(48, mm6);/* mm6: G2 R2 00 00 00 00 00 00 */\ por_r2r(mm6, mm7);/* mm7: G2 R2 B1 G1 R1 B0 G0 R0 */\ MOVQ_R2M(mm7, *dst);\ movq_r2r(mm1, mm7);/* mm7: 00 00 B7 B6 B5 B4 B3 B2 */\ pand_m2r(yuv_rgb_lowest_byte, mm7);/* mm7: 00 00 00 00 00 00 00 B2 */\ psrlq_i2r(16, mm3);/* mm3: 00 00 00 00 00 00 G3 R3 */\ psllq_i2r(8, mm3);/* mm3: 00 00 00 00 00 G3 R3 00 */\ por_r2r(mm3, mm7);/* mm7: 00 00 00 00 00 G3 R3 B2 */\ psrlq_i2r(8, mm1);/* mm1: 00 00 00 B7 B6 B5 B4 B3 */\ movq_r2r(mm1, mm5);/* mm5: 00 00 00 B7 B6 B5 B4 B3 */\ pand_m2r(yuv_rgb_lowest_byte, mm5);/* mm5: 00 00 00 00 00 00 00 B3 */\ psllq_i2r(24, mm5);/* mm5: 00 00 00 00 B3 00 00 00 */\ por_r2r(mm5, mm7);/* mm7: 00 00 00 00 B3 G3 R3 B2 */\ psrlq_i2r(32, mm0);/* mm0: 00 00 00 00 R7 R6 R5 R4 */\ psrlq_i2r(32, mm2);/* mm2: 00 00 00 00 G7 G6 G5 G4 */\ psrlq_i2r(8, mm1);/* mm1: 00 00 00 00 B7 B6 B5 B4 */\ punpcklbw_r2r(mm1, mm2);/* mm2: B7 G7 B6 G6 B5 G5 B4 G4 */\ movq_r2r(mm0, mm5);/* mm5: 00 00 00 00 R7 R6 R5 R4 */\ pand_m2r(yuv_rgb_lowest_byte, mm5);/* mm5: 00 00 00 00 00 00 00 R4 */\ psllq_i2r(32, mm5);/* mm5: 00 00 00 R4 00 00 00 00 */\ por_r2r(mm5, mm7);/* mm7: 00 00 00 R4 B3 G3 R3 B2 */\ movq_r2r(mm2, mm6);/* mm6: B7 G7 B6 G6 B5 G5 B4 G4 */\ pand_m2r(yuv_rgb_lowest_word, mm6);/* mm6: 00 00 00 00 00 00 B4 G4 */\ psllq_i2r(40, mm6);/* mm6: 00 B4 G4 00 00 00 00 00 */\ por_r2r(mm6, mm7);/* mm7: 00 B4 G4 R4 B3 G3 R3 B2 */\ psrlq_i2r(8, mm0);/* mm0: 00 00 00 00 00 R7 R6 R5 */\ psrlq_i2r(16, mm2);/* mm2: 00 00 B7 G7 B6 G6 B5 G5 */\ movq_r2r(mm0, mm5);/* mm5: 00 00 00 00 00 R7 R6 R5 */\ psllq_i2r(56, mm5);/* mm5: R5 00 00 00 00 00 00 00 */\ por_r2r(mm5, mm7);/* mm7: R5 B4 G4 R4 B3 G3 R3 B2 */\ MOVQ_R2M(mm7, *(dst+8));\ movq_r2r(mm2, mm7);/* mm7: 00 00 B7 G7 B6 G6 B5 G5 */\ pand_m2r(yuv_rgb_lowest_word, mm7);/* mm7: 00 00 00 00 00 00 B5 G5 */\ psrlq_i2r(8, mm0);/* mm0: 00 00 00 00 00 00 R7 R6 */\ psrlq_i2r(16, mm2);/* mm2: 00 00 00 00 B7 G7 B6 G6 */\ movq_r2r(mm0, mm5);/* mm5: 00 00 00 00 00 00 R7 R6 */\ pand_m2r(yuv_rgb_lowest_byte, mm5);/* mm5: 00 00 00 00 00 00 00 R6 */\ psllq_i2r(16, mm5);/* mm5: 00 00 00 00 00 R6 00 00 */\ por_r2r(mm5, mm7);/* mm7: 00 00 00 00 00 R6 B5 G5 */\ movq_r2r(mm2, mm6);/* mm6: 00 00 00 00 B7 G7 B6 G6 */\ pand_m2r(yuv_rgb_lowest_word, mm6);/* mm6: 00 00 00 00 00 00 B6 G6 */\ psllq_i2r(24, mm6);/* mm5: 00 00 00 B6 G6 00 00 00 */\ por_r2r(mm6, mm7);/* mm7: 00 00 00 B6 G6 R6 B5 G5 */\ psrlq_i2r(8, mm0);/* mm0: 00 00 00 00 00 00 00 R7 */\ psrlq_i2r(16, mm2);/* mm2: 00 00 00 00 00 00 B7 G7 */\ psllq_i2r(40, mm0);/* mm0: 00 00 R7 00 00 00 00 00 */\ psllq_i2r(48, mm2);/* mm2: B7 G7 00 00 00 00 00 00 */\ por_r2r(mm0, mm7);\ por_r2r(mm2, mm7);\ MOVQ_R2M(mm7, *(dst+16));\ #endif static const mmx_t rgba32_alphamask = {0xff000000ff000000LL}; #define OUTPUT_RGBA_32 pxor_r2r (mm3, mm3);\ movq_r2r (mm1, mm6);\ punpcklbw_r2r (mm2, mm6);\ movq_r2r (mm0, mm7);\ punpcklbw_r2r (mm3, mm7);\ movq_r2r (mm1, mm4);\ punpcklwd_r2r (mm7, mm6);\ movq_r2r (mm0, mm5);\ por_m2r (rgba32_alphamask, mm6);\ MOVQ_R2M (mm6, *dst);\ movq_r2r (mm1, mm6);\ punpcklbw_r2r (mm2, mm6);\ punpckhwd_r2r (mm7, mm6);\ por_m2r (rgba32_alphamask, mm6);\ MOVQ_R2M (mm6, *(dst+8));\ punpckhbw_r2r (mm2, mm4);\ punpckhbw_r2r (mm3, mm5);\ punpcklwd_r2r (mm5, mm4);\ por_m2r (rgba32_alphamask, mm4);\ MOVQ_R2M (mm4, *(dst+16));\ movq_r2r (mm1, mm4);\ punpckhbw_r2r (mm2, mm4);\ punpckhwd_r2r (mm5, mm4);\ por_m2r (rgba32_alphamask, mm4);\ MOVQ_R2M (mm4, *(dst+24)); static const mmx_t rgb16_bluemask = {0xf8f8f8f8f8f8f8f8LL}; static const mmx_t rgb16_greenmask = {0xfcfcfcfcfcfcfcfcLL}; static const mmx_t rgb16_redmask = {0xf8f8f8f8f8f8f8f8LL}; #define OUTPUT_RGB_16 pand_m2r (rgb16_bluemask, mm0);/* mm0 = b7b6b5b4b3______ */\ pxor_r2r (mm4, mm4);/* mm4 = 0 */\ pand_m2r (rgb16_greenmask, mm2);/* mm2 = g7g6g5g4g3g2____ */\ psrlq_i2r (3, mm0);/* mm0 = ______b7b6b5b4b3 */\ movq_r2r (mm2, mm7);/* mm7 = g7g6g5g4g3g2____ */\ movq_r2r (mm0, mm5);/* mm5 = ______b7b6b5b4b3 */\ pand_m2r (rgb16_redmask, mm1);/* mm1 = r7r6r5r4r3______ */\ punpcklbw_r2r (mm4, mm2);\ punpcklbw_r2r (mm1, mm0);\ psllq_i2r (3, mm2);\ punpckhbw_r2r (mm4, mm7);\ por_r2r (mm2, mm0);\ psllq_i2r (3, mm7);\ MOVQ_R2M (mm0, *dst);\ punpckhbw_r2r (mm1, mm5);\ por_r2r (mm7, mm5);\ MOVQ_R2M (mm5, *(dst+8)); #define OUTPUT_BGR_16 pand_m2r (rgb16_bluemask, mm1);/* mm0 = b7b6b5b4b3______ */\ pxor_r2r (mm4, mm4);/* mm4 = 0 */\ pand_m2r (rgb16_greenmask, mm2);/* mm2 = g7g6g5g4g3g2____ */\ psrlq_i2r (3, mm1);/* mm0 = ______b7b6b5b4b3 */\ movq_r2r (mm2, mm7);/* mm7 = g7g6g5g4g3g2____ */\ movq_r2r (mm1, mm5);/* mm5 = ______b7b6b5b4b3 */\ pand_m2r (rgb16_redmask, mm0);/* mm1 = r7r6r5r4r3______ */\ punpcklbw_r2r (mm4, mm2);\ punpcklbw_r2r (mm0, mm1);\ psllq_i2r (3, mm2);\ punpckhbw_r2r (mm4, mm7);\ por_r2r (mm2, mm1);\ psllq_i2r (3, mm7);\ MOVQ_R2M (mm1, *dst);\ punpckhbw_r2r (mm0, mm5);\ por_r2r (mm7, mm5);\ MOVQ_R2M (mm5, *(dst+8));\ static const mmx_t rgb15_bluemask = {0xf8f8f8f8f8f8f8f8LL}; static const mmx_t rgb15_greenmask = {0xf8f8f8f8f8f8f8f8LL}; static const mmx_t rgb15_redmask = {0xf8f8f8f8f8f8f8f8LL}; #define OUTPUT_RGB_15 pand_m2r (rgb15_bluemask, mm0);/* mm0 = b7b6b5b4b3______ */\ pxor_r2r (mm4, mm4);/* mm4 = 0 */\ pand_m2r (rgb15_greenmask, mm2);/* mm2 = g7g6g5g4g3g2____ */\ psrlq_i2r (3, mm0);/* mm0 = ______b7b6b5b4b3 */\ movq_r2r (mm2, mm7);/* mm7 = g7g6g5g4g3g2____ */\ movq_r2r (mm0, mm5);/* mm5 = ______b7b6b5b4b3 */\ pand_m2r (rgb15_redmask, mm1);/* mm1 = r7r6r5r4r3______ */\ punpcklbw_r2r (mm4, mm2);\ psrlq_i2r (1, mm1);\ punpcklbw_r2r (mm1, mm0);\ psllq_i2r (2, mm2);\ punpckhbw_r2r (mm4, mm7);\ por_r2r (mm2, mm0);\ psllq_i2r (2, mm7);\ MOVQ_R2M(mm0, *dst);\ punpckhbw_r2r (mm1, mm5);\ por_r2r (mm7, mm5);\ MOVQ_R2M(mm5, *(dst+8)); #define OUTPUT_BGR_15 pand_m2r (rgb15_bluemask, mm1);/* mm0 = b7b6b5b4b3______ */\ pxor_r2r (mm4, mm4);/* mm4 = 0 */\ pand_m2r (rgb15_greenmask, mm2);/* mm2 = g7g6g5g4g3g2____ */\ psrlq_i2r (3, mm1);/* mm0 = ______b7b6b5b4b3 */\ movq_r2r (mm2, mm7);/* mm7 = g7g6g5g4g3g2____ */\ movq_r2r (mm1, mm5);/* mm5 = ______b7b6b5b4b3 */\ pand_m2r (rgb15_redmask, mm0);/* mm1 = r7r6r5r4r3______ */\ punpcklbw_r2r (mm4, mm2);\ psrlq_i2r (1, mm0);\ punpcklbw_r2r (mm0, mm1);\ psllq_i2r (2, mm2);\ punpckhbw_r2r (mm4, mm7);\ por_r2r (mm2, mm1);\ psllq_i2r (2, mm7);\ MOVQ_R2M(mm1, *dst);\ punpckhbw_r2r (mm0, mm5);\ por_r2r (mm7, mm5);\ MOVQ_R2M(mm5, *(dst+8)); /*********************************************************** * YUY2 -> ***********************************************************/ #ifndef MMXEXT #define FUNC_NAME yuy2_to_rgb_15_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE 16 #define NUM_PIXELS 8 #define CONVERT \ LOAD_YUY2 \ YUV_2_RGB \ OUTPUT_RGB_15 #define CLEANUP emms(); // #define INIT #include "../csp_packed_packed.h" #define FUNC_NAME yuy2_to_bgr_15_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE 16 #define NUM_PIXELS 8 #define CONVERT \ LOAD_YUY2 \ YUV_2_RGB \ OUTPUT_BGR_15 #define CLEANUP emms(); // #define INIT #include "../csp_packed_packed.h" #define FUNC_NAME yuy2_to_rgb_16_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE 16 #define NUM_PIXELS 8 #define CONVERT \ LOAD_YUY2 \ YUV_2_RGB \ OUTPUT_RGB_16 #define CLEANUP emms(); // #define INIT #include "../csp_packed_packed.h" #define FUNC_NAME yuy2_to_bgr_16_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE 16 #define NUM_PIXELS 8 #define CONVERT \ LOAD_YUY2 \ YUV_2_RGB \ OUTPUT_BGR_16 #define CLEANUP emms(); #include "../csp_packed_packed.h" #endif // !MMXEXT #define FUNC_NAME yuy2_to_rgb_24_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE 24 #define NUM_PIXELS 8 #define CONVERT \ LOAD_YUY2 \ YUV_2_RGB \ OUTPUT_RGB_24 #define CLEANUP emms(); // #define INIT #include "../csp_packed_packed.h" #define FUNC_NAME yuy2_to_bgr_24_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE 24 #define NUM_PIXELS 8 #define CONVERT \ LOAD_YUY2 \ YUV_2_RGB \ OUTPUT_BGR_24 #define CLEANUP emms(); // #define INIT #include "../csp_packed_packed.h" #ifndef MMXEXT #define FUNC_NAME yuy2_to_rgb_32_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE 32 #define NUM_PIXELS 8 #define CONVERT \ LOAD_YUY2 \ YUV_2_RGB \ OUTPUT_RGB_32 #define CLEANUP emms(); // #define INIT #include "../csp_packed_packed.h" #define FUNC_NAME yuy2_to_bgr_32_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE 32 #define NUM_PIXELS 8 #define CONVERT \ LOAD_YUY2 \ YUV_2_RGB \ OUTPUT_BGR_32 #define CLEANUP emms(); // #define INIT #include "../csp_packed_packed.h" #define FUNC_NAME yuy2_to_rgba_32_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE 32 #define NUM_PIXELS 8 #define CONVERT \ LOAD_YUY2 \ YUV_2_RGB \ OUTPUT_RGBA_32 #define CLEANUP emms(); // #define INIT #include "../csp_packed_packed.h" #endif // !MMXEXT /*********************************************************** * UYVY -> ***********************************************************/ #ifndef MMXEXT #define FUNC_NAME uyvy_to_rgb_15_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE 16 #define NUM_PIXELS 8 #define CONVERT \ LOAD_UYVY \ YUV_2_RGB \ OUTPUT_RGB_15 #define CLEANUP emms(); // #define INIT #include "../csp_packed_packed.h" #define FUNC_NAME uyvy_to_bgr_15_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE 16 #define NUM_PIXELS 8 #define CONVERT \ LOAD_UYVY \ YUV_2_RGB \ OUTPUT_BGR_15 #define CLEANUP emms(); // #define INIT #include "../csp_packed_packed.h" #define FUNC_NAME uyvy_to_rgb_16_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE 16 #define NUM_PIXELS 8 #define CONVERT \ LOAD_UYVY \ YUV_2_RGB \ OUTPUT_RGB_16 #define CLEANUP emms(); // #define INIT #include "../csp_packed_packed.h" #define FUNC_NAME uyvy_to_bgr_16_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE 16 #define NUM_PIXELS 8 #define CONVERT \ LOAD_UYVY \ YUV_2_RGB \ OUTPUT_BGR_16 #define CLEANUP emms(); // #define INIT #include "../csp_packed_packed.h" #endif // !MMXEXT #define FUNC_NAME uyvy_to_rgb_24_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE 24 #define NUM_PIXELS 8 #define CONVERT \ LOAD_UYVY \ YUV_2_RGB \ OUTPUT_RGB_24 #define CLEANUP emms(); // #define INIT #include "../csp_packed_packed.h" #define FUNC_NAME uyvy_to_bgr_24_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE 24 #define NUM_PIXELS 8 #define CONVERT \ LOAD_UYVY \ YUV_2_RGB \ OUTPUT_BGR_24 #define CLEANUP emms(); // #define INIT #include "../csp_packed_packed.h" #ifndef MMXEXT #define FUNC_NAME uyvy_to_rgb_32_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE 32 #define NUM_PIXELS 8 #define CONVERT \ LOAD_UYVY \ YUV_2_RGB \ OUTPUT_RGB_32 #define CLEANUP emms(); // #define INIT #include "../csp_packed_packed.h" #define FUNC_NAME uyvy_to_bgr_32_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE 32 #define NUM_PIXELS 8 #define CONVERT \ LOAD_UYVY \ YUV_2_RGB \ OUTPUT_BGR_32 #define CLEANUP emms(); // #define INIT #include "../csp_packed_packed.h" #define FUNC_NAME uyvy_to_rgba_32_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE 32 #define NUM_PIXELS 8 #define CONVERT \ LOAD_UYVY \ YUV_2_RGB \ OUTPUT_RGBA_32 #define CLEANUP emms(); // #define INIT #include "../csp_packed_packed.h" #endif // !MMXEXT /*************************************************** * YUV 420 P -> ***************************************************/ #ifndef MMXEXT #define FUNC_NAME yuv_420_p_to_rgb_15_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 8 #define IN_ADVANCE_UV 4 #define OUT_ADVANCE 16 #define NUM_PIXELS 8 #define CONVERT \ LOAD_YUV_PLANAR_2 \ YUV_2_RGB \ OUTPUT_RGB_15 #define CHROMA_SUB 2 // #define INIT #define CLEANUP emms(); #include "../csp_planar_packed.h" #define FUNC_NAME yuv_420_p_to_bgr_15_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 8 #define IN_ADVANCE_UV 4 #define OUT_ADVANCE 16 #define NUM_PIXELS 8 #define CONVERT \ LOAD_YUV_PLANAR_2 \ YUV_2_RGB \ OUTPUT_BGR_15 #define CHROMA_SUB 2 // #define INIT #define CLEANUP emms(); #include "../csp_planar_packed.h" #define FUNC_NAME yuv_420_p_to_rgb_16_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 8 #define IN_ADVANCE_UV 4 #define OUT_ADVANCE 16 #define NUM_PIXELS 8 #define CONVERT \ LOAD_YUV_PLANAR_2 \ YUV_2_RGB \ OUTPUT_RGB_16 #define CHROMA_SUB 2 // #define INIT #define CLEANUP emms(); #include "../csp_planar_packed.h" #define FUNC_NAME yuv_420_p_to_bgr_16_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 8 #define IN_ADVANCE_UV 4 #define OUT_ADVANCE 16 #define NUM_PIXELS 8 #define CONVERT \ LOAD_YUV_PLANAR_2 \ YUV_2_RGB \ OUTPUT_BGR_16 #define CHROMA_SUB 2 // #define INIT #define CLEANUP emms(); #include "../csp_planar_packed.h" #endif // !MMXEXT #define FUNC_NAME yuv_420_p_to_rgb_24_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 8 #define IN_ADVANCE_UV 4 #define OUT_ADVANCE 24 #define NUM_PIXELS 8 #define CONVERT \ LOAD_YUV_PLANAR_2 \ YUV_2_RGB \ OUTPUT_RGB_24 #define CHROMA_SUB 2 // #define INIT #define CLEANUP emms(); #include "../csp_planar_packed.h" #define FUNC_NAME yuv_420_p_to_bgr_24_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 8 #define IN_ADVANCE_UV 4 #define OUT_ADVANCE 24 #define NUM_PIXELS 8 #define CONVERT \ LOAD_YUV_PLANAR_2 \ YUV_2_RGB \ OUTPUT_BGR_24 #define CHROMA_SUB 2 // #define INIT #define CLEANUP emms(); #include "../csp_planar_packed.h" #ifndef MMXEXT #define FUNC_NAME yuv_420_p_to_rgb_32_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 8 #define IN_ADVANCE_UV 4 #define OUT_ADVANCE 32 #define NUM_PIXELS 8 #define CONVERT \ LOAD_YUV_PLANAR_2 \ YUV_2_RGB \ OUTPUT_RGB_32 #define CHROMA_SUB 2 // #define INIT #define CLEANUP emms(); #include "../csp_planar_packed.h" #define FUNC_NAME yuv_420_p_to_bgr_32_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 8 #define IN_ADVANCE_UV 4 #define OUT_ADVANCE 32 #define NUM_PIXELS 8 #define CONVERT \ LOAD_YUV_PLANAR_2 \ YUV_2_RGB \ OUTPUT_BGR_32 #define CHROMA_SUB 2 // #define INIT #define CLEANUP emms(); #include "../csp_planar_packed.h" #define FUNC_NAME yuv_420_p_to_rgba_32_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 8 #define IN_ADVANCE_UV 4 #define OUT_ADVANCE 32 #define NUM_PIXELS 8 #define CONVERT \ LOAD_YUV_PLANAR_2 \ YUV_2_RGB \ OUTPUT_RGBA_32 #define CHROMA_SUB 2 // #define INIT #define CLEANUP emms(); #include "../csp_planar_packed.h" #endif // !MMXEXT /*************************************************** * YUV 410 P -> ***************************************************/ #ifndef MMXEXT #define FUNC_NAME yuv_410_p_to_rgb_15_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 8 #define IN_ADVANCE_UV 2 #define OUT_ADVANCE 16 #define NUM_PIXELS 8 #define CONVERT \ LOAD_YUV_PLANAR_4 \ YUV_2_RGB \ OUTPUT_RGB_15 #define CHROMA_SUB 4 #define INIT INIT_YUV_PLANAR_4 #define CLEANUP emms(); #include "../csp_planar_packed.h" #define FUNC_NAME yuv_410_p_to_bgr_15_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 8 #define IN_ADVANCE_UV 2 #define OUT_ADVANCE 16 #define NUM_PIXELS 8 #define CONVERT \ LOAD_YUV_PLANAR_4 \ YUV_2_RGB \ OUTPUT_BGR_15 #define CHROMA_SUB 4 #define INIT INIT_YUV_PLANAR_4 #define CLEANUP emms(); #include "../csp_planar_packed.h" #define FUNC_NAME yuv_410_p_to_rgb_16_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 8 #define IN_ADVANCE_UV 2 #define OUT_ADVANCE 16 #define NUM_PIXELS 8 #define CONVERT \ LOAD_YUV_PLANAR_4 \ YUV_2_RGB \ OUTPUT_RGB_16 #define CHROMA_SUB 4 #define INIT INIT_YUV_PLANAR_4 #define CLEANUP emms(); #include "../csp_planar_packed.h" #define FUNC_NAME yuv_410_p_to_bgr_16_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 8 #define IN_ADVANCE_UV 2 #define OUT_ADVANCE 16 #define NUM_PIXELS 8 #define CONVERT \ LOAD_YUV_PLANAR_4 \ YUV_2_RGB \ OUTPUT_BGR_16 #define CHROMA_SUB 4 #define INIT INIT_YUV_PLANAR_4 #define CLEANUP emms(); #include "../csp_planar_packed.h" #endif // !MMXEXT #define FUNC_NAME yuv_410_p_to_rgb_24_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 8 #define IN_ADVANCE_UV 2 #define OUT_ADVANCE 24 #define NUM_PIXELS 8 #define CONVERT \ LOAD_YUV_PLANAR_4 \ YUV_2_RGB \ OUTPUT_RGB_24 #define CHROMA_SUB 4 #define INIT INIT_YUV_PLANAR_4 #define CLEANUP emms(); #include "../csp_planar_packed.h" #define FUNC_NAME yuv_410_p_to_bgr_24_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 8 #define IN_ADVANCE_UV 2 #define OUT_ADVANCE 24 #define NUM_PIXELS 8 #define CONVERT \ LOAD_YUV_PLANAR_4 \ YUV_2_RGB \ OUTPUT_BGR_24 #define CHROMA_SUB 4 #define INIT INIT_YUV_PLANAR_4 #define CLEANUP emms(); #include "../csp_planar_packed.h" #ifndef MMXEXT #define FUNC_NAME yuv_410_p_to_rgb_32_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 8 #define IN_ADVANCE_UV 2 #define OUT_ADVANCE 32 #define NUM_PIXELS 8 #define CONVERT \ LOAD_YUV_PLANAR_4 \ YUV_2_RGB \ OUTPUT_RGB_32 #define CHROMA_SUB 4 #define INIT INIT_YUV_PLANAR_4 #define CLEANUP emms(); #include "../csp_planar_packed.h" #define FUNC_NAME yuv_410_p_to_bgr_32_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 8 #define IN_ADVANCE_UV 2 #define OUT_ADVANCE 32 #define NUM_PIXELS 8 #define CONVERT \ LOAD_YUV_PLANAR_4 \ YUV_2_RGB \ OUTPUT_BGR_32 #define CHROMA_SUB 4 #define INIT INIT_YUV_PLANAR_4 #define CLEANUP emms(); #include "../csp_planar_packed.h" #define FUNC_NAME yuv_410_p_to_rgba_32_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 8 #define IN_ADVANCE_UV 2 #define OUT_ADVANCE 32 #define NUM_PIXELS 8 #define CONVERT \ LOAD_YUV_PLANAR_4 \ YUV_2_RGB \ OUTPUT_RGBA_32 #define CHROMA_SUB 4 #define INIT INIT_YUV_PLANAR_4 #define CLEANUP emms(); #include "../csp_planar_packed.h" #endif // !MMXEXT /******************************************************** * YUV 422 -> ********************************************************/ #ifndef MMXEXT #define FUNC_NAME yuv_422_p_to_rgb_15_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 8 #define IN_ADVANCE_UV 4 #define OUT_ADVANCE 16 #define NUM_PIXELS 8 #define CONVERT \ LOAD_YUV_PLANAR_2 \ YUV_2_RGB \ OUTPUT_RGB_15 #define CHROMA_SUB 1 #define CLEANUP emms(); #include "../csp_planar_packed.h" #define FUNC_NAME yuv_422_p_to_bgr_15_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 8 #define IN_ADVANCE_UV 4 #define OUT_ADVANCE 16 #define NUM_PIXELS 8 #define CONVERT \ LOAD_YUV_PLANAR_2 \ YUV_2_RGB \ OUTPUT_BGR_15 #define CHROMA_SUB 1 #define CLEANUP emms(); #include "../csp_planar_packed.h" #define FUNC_NAME yuv_422_p_to_rgb_16_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 8 #define IN_ADVANCE_UV 4 #define OUT_ADVANCE 16 #define NUM_PIXELS 8 #define CONVERT \ LOAD_YUV_PLANAR_2 \ YUV_2_RGB \ OUTPUT_RGB_16 #define CHROMA_SUB 1 #define CLEANUP emms(); #include "../csp_planar_packed.h" #define FUNC_NAME yuv_422_p_to_bgr_16_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 8 #define IN_ADVANCE_UV 4 #define OUT_ADVANCE 16 #define NUM_PIXELS 8 #define CONVERT \ LOAD_YUV_PLANAR_2 \ YUV_2_RGB \ OUTPUT_BGR_16 #define CHROMA_SUB 1 #define CLEANUP emms(); #include "../csp_planar_packed.h" #endif // MMXEXT #define FUNC_NAME yuv_422_p_to_rgb_24_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 8 #define IN_ADVANCE_UV 4 #define OUT_ADVANCE 24 #define NUM_PIXELS 8 #define CONVERT \ LOAD_YUV_PLANAR_2 \ YUV_2_RGB \ OUTPUT_RGB_24 #define CHROMA_SUB 1 #define CLEANUP emms(); #include "../csp_planar_packed.h" #define FUNC_NAME yuv_422_p_to_bgr_24_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 8 #define IN_ADVANCE_UV 4 #define OUT_ADVANCE 24 #define NUM_PIXELS 8 #define CONVERT \ LOAD_YUV_PLANAR_2 \ YUV_2_RGB \ OUTPUT_BGR_24 #define CHROMA_SUB 1 #define CLEANUP emms(); #include "../csp_planar_packed.h" #ifndef MMXEXT #define FUNC_NAME yuv_422_p_to_rgb_32_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 8 #define IN_ADVANCE_UV 4 #define OUT_ADVANCE 32 #define NUM_PIXELS 8 #define CONVERT \ LOAD_YUV_PLANAR_2 \ YUV_2_RGB \ OUTPUT_RGB_32 #define CHROMA_SUB 1 #define CLEANUP emms(); #include "../csp_planar_packed.h" #define FUNC_NAME yuv_422_p_to_bgr_32_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 8 #define IN_ADVANCE_UV 4 #define OUT_ADVANCE 32 #define NUM_PIXELS 8 #define CONVERT \ LOAD_YUV_PLANAR_2 \ YUV_2_RGB \ OUTPUT_BGR_32 #define CHROMA_SUB 1 #define CLEANUP emms(); #include "../csp_planar_packed.h" #define FUNC_NAME yuv_422_p_to_rgba_32_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 8 #define IN_ADVANCE_UV 4 #define OUT_ADVANCE 32 #define NUM_PIXELS 8 #define CONVERT \ LOAD_YUV_PLANAR_2 \ YUV_2_RGB \ OUTPUT_RGBA_32 #define CHROMA_SUB 1 #define CLEANUP emms(); #include "../csp_planar_packed.h" #endif // !MMXEXT /******************************************************** * YUV 411 -> ********************************************************/ #ifndef MMXEXT #define FUNC_NAME yuv_411_p_to_rgb_15_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 8 #define IN_ADVANCE_UV 2 #define OUT_ADVANCE 16 #define NUM_PIXELS 8 #define CONVERT \ LOAD_YUV_PLANAR_4 \ YUV_2_RGB \ OUTPUT_RGB_15 #define CHROMA_SUB 1 #define INIT INIT_YUV_PLANAR_4 #define CLEANUP emms(); #include "../csp_planar_packed.h" #define FUNC_NAME yuv_411_p_to_bgr_15_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 8 #define IN_ADVANCE_UV 2 #define OUT_ADVANCE 16 #define NUM_PIXELS 8 #define CONVERT \ LOAD_YUV_PLANAR_4 \ YUV_2_RGB \ OUTPUT_BGR_15 #define CHROMA_SUB 1 #define INIT INIT_YUV_PLANAR_4 #define CLEANUP emms(); #include "../csp_planar_packed.h" #define FUNC_NAME yuv_411_p_to_rgb_16_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 8 #define IN_ADVANCE_UV 2 #define OUT_ADVANCE 16 #define NUM_PIXELS 8 #define CONVERT \ LOAD_YUV_PLANAR_4 \ YUV_2_RGB \ OUTPUT_RGB_16 #define CHROMA_SUB 1 #define INIT INIT_YUV_PLANAR_4 #define CLEANUP emms(); #include "../csp_planar_packed.h" #define FUNC_NAME yuv_411_p_to_bgr_16_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 8 #define IN_ADVANCE_UV 2 #define OUT_ADVANCE 16 #define NUM_PIXELS 8 #define CONVERT \ LOAD_YUV_PLANAR_4 \ YUV_2_RGB \ OUTPUT_BGR_16 #define CHROMA_SUB 1 #define INIT INIT_YUV_PLANAR_4 #define CLEANUP emms(); #include "../csp_planar_packed.h" #endif // MMXEXT #define FUNC_NAME yuv_411_p_to_rgb_24_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 8 #define IN_ADVANCE_UV 2 #define OUT_ADVANCE 24 #define NUM_PIXELS 8 #define CONVERT \ LOAD_YUV_PLANAR_4 \ YUV_2_RGB \ OUTPUT_RGB_24 #define CHROMA_SUB 1 #define INIT INIT_YUV_PLANAR_4 #define CLEANUP emms(); #include "../csp_planar_packed.h" #define FUNC_NAME yuv_411_p_to_bgr_24_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 8 #define IN_ADVANCE_UV 2 #define OUT_ADVANCE 24 #define NUM_PIXELS 8 #define CONVERT \ LOAD_YUV_PLANAR_4 \ YUV_2_RGB \ OUTPUT_BGR_24 #define CHROMA_SUB 1 #define INIT INIT_YUV_PLANAR_4 #define CLEANUP emms(); #include "../csp_planar_packed.h" #ifndef MMXEXT #define FUNC_NAME yuv_411_p_to_rgb_32_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 8 #define IN_ADVANCE_UV 2 #define OUT_ADVANCE 32 #define NUM_PIXELS 8 #define CONVERT \ LOAD_YUV_PLANAR_4 \ YUV_2_RGB \ OUTPUT_RGB_32 #define CHROMA_SUB 1 #define INIT INIT_YUV_PLANAR_4 #define CLEANUP emms(); #include "../csp_planar_packed.h" #define FUNC_NAME yuv_411_p_to_bgr_32_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 8 #define IN_ADVANCE_UV 2 #define OUT_ADVANCE 32 #define NUM_PIXELS 8 #define CONVERT \ LOAD_YUV_PLANAR_4 \ YUV_2_RGB \ OUTPUT_BGR_32 #define CHROMA_SUB 1 #define INIT INIT_YUV_PLANAR_4 #define CLEANUP emms(); #include "../csp_planar_packed.h" #define FUNC_NAME yuv_411_p_to_rgba_32_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 8 #define IN_ADVANCE_UV 2 #define OUT_ADVANCE 32 #define NUM_PIXELS 8 #define CONVERT \ LOAD_YUV_PLANAR_4 \ YUV_2_RGB \ OUTPUT_RGBA_32 #define CHROMA_SUB 1 #define INIT INIT_YUV_PLANAR_4 #define CLEANUP emms(); #include "../csp_planar_packed.h" #endif // !MMXEXT /* JPEG */ /*************************************************** * YUVJ 420 P -> ***************************************************/ #ifndef MMXEXT #define FUNC_NAME yuvj_420_p_to_rgb_15_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 8 #define IN_ADVANCE_UV 4 #define OUT_ADVANCE 16 #define NUM_PIXELS 8 #define CONVERT \ LOAD_YUV_PLANAR_2 \ YUVJ_2_RGB \ OUTPUT_RGB_15 #define CHROMA_SUB 2 #define CLEANUP emms(); #include "../csp_planar_packed.h" #define FUNC_NAME yuvj_420_p_to_bgr_15_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 8 #define IN_ADVANCE_UV 4 #define OUT_ADVANCE 16 #define NUM_PIXELS 8 #define CONVERT \ LOAD_YUV_PLANAR_2 \ YUVJ_2_RGB \ OUTPUT_BGR_15 #define CHROMA_SUB 2 #define CLEANUP emms(); #include "../csp_planar_packed.h" #define FUNC_NAME yuvj_420_p_to_rgb_16_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 8 #define IN_ADVANCE_UV 4 #define OUT_ADVANCE 16 #define NUM_PIXELS 8 #define CONVERT \ LOAD_YUV_PLANAR_2 \ YUVJ_2_RGB \ OUTPUT_RGB_16 #define CHROMA_SUB 2 #define CLEANUP emms(); #include "../csp_planar_packed.h" #define FUNC_NAME yuvj_420_p_to_bgr_16_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 8 #define IN_ADVANCE_UV 4 #define OUT_ADVANCE 16 #define NUM_PIXELS 8 #define CONVERT \ LOAD_YUV_PLANAR_2 \ YUVJ_2_RGB \ OUTPUT_BGR_16 #define CHROMA_SUB 2 #define CLEANUP emms(); #include "../csp_planar_packed.h" #endif // !MMXEXT #define FUNC_NAME yuvj_420_p_to_rgb_24_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 8 #define IN_ADVANCE_UV 4 #define OUT_ADVANCE 24 #define NUM_PIXELS 8 #define CONVERT \ LOAD_YUV_PLANAR_2 \ YUVJ_2_RGB \ OUTPUT_RGB_24 #define CHROMA_SUB 2 #define CLEANUP emms(); #include "../csp_planar_packed.h" #define FUNC_NAME yuvj_420_p_to_bgr_24_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 8 #define IN_ADVANCE_UV 4 #define OUT_ADVANCE 24 #define NUM_PIXELS 8 #define CONVERT \ LOAD_YUV_PLANAR_2 \ YUVJ_2_RGB \ OUTPUT_BGR_24 #define CHROMA_SUB 2 #define CLEANUP emms(); #ifndef MMXEXT #include "../csp_planar_packed.h" #define FUNC_NAME yuvj_420_p_to_rgb_32_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 8 #define IN_ADVANCE_UV 4 #define OUT_ADVANCE 32 #define NUM_PIXELS 8 #define CONVERT \ LOAD_YUV_PLANAR_2 \ YUVJ_2_RGB \ OUTPUT_RGB_32 #define CHROMA_SUB 2 #define CLEANUP emms(); #include "../csp_planar_packed.h" #define FUNC_NAME yuvj_420_p_to_bgr_32_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 8 #define IN_ADVANCE_UV 4 #define OUT_ADVANCE 32 #define NUM_PIXELS 8 #define CONVERT \ LOAD_YUV_PLANAR_2 \ YUVJ_2_RGB \ OUTPUT_BGR_32 #define CHROMA_SUB 2 #define CLEANUP emms(); #include "../csp_planar_packed.h" #define FUNC_NAME yuvj_420_p_to_rgba_32_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 8 #define IN_ADVANCE_UV 4 #define OUT_ADVANCE 32 #define NUM_PIXELS 8 #define CONVERT \ LOAD_YUV_PLANAR_2 \ YUVJ_2_RGB \ OUTPUT_RGBA_32 #define CHROMA_SUB 2 #define CLEANUP emms(); #include "../csp_planar_packed.h" #endif // !MMXEXT /******************************************************** * YUVJ 422 -> ********************************************************/ #ifndef MMXEXT #define FUNC_NAME yuvj_422_p_to_rgb_15_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 8 #define IN_ADVANCE_UV 4 #define OUT_ADVANCE 16 #define NUM_PIXELS 8 #define CONVERT \ LOAD_YUV_PLANAR_2 \ YUVJ_2_RGB \ OUTPUT_RGB_15 #define CHROMA_SUB 1 #define CLEANUP emms(); #include "../csp_planar_packed.h" #define FUNC_NAME yuvj_422_p_to_bgr_15_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 8 #define IN_ADVANCE_UV 4 #define OUT_ADVANCE 16 #define NUM_PIXELS 8 #define CONVERT \ LOAD_YUV_PLANAR_2 \ YUVJ_2_RGB \ OUTPUT_BGR_15 #define CHROMA_SUB 1 #define CLEANUP emms(); #include "../csp_planar_packed.h" #define FUNC_NAME yuvj_422_p_to_rgb_16_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 8 #define IN_ADVANCE_UV 4 #define OUT_ADVANCE 16 #define NUM_PIXELS 8 #define CONVERT \ LOAD_YUV_PLANAR_2 \ YUVJ_2_RGB \ OUTPUT_RGB_16 #define CHROMA_SUB 1 #define CLEANUP emms(); #include "../csp_planar_packed.h" #define FUNC_NAME yuvj_422_p_to_bgr_16_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 8 #define IN_ADVANCE_UV 4 #define OUT_ADVANCE 16 #define NUM_PIXELS 8 #define CONVERT \ LOAD_YUV_PLANAR_2 \ YUVJ_2_RGB \ OUTPUT_BGR_16 #define CHROMA_SUB 1 #define CLEANUP emms(); #endif // !MMXEXT #include "../csp_planar_packed.h" #define FUNC_NAME yuvj_422_p_to_rgb_24_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 8 #define IN_ADVANCE_UV 4 #define OUT_ADVANCE 24 #define NUM_PIXELS 8 #define CONVERT \ LOAD_YUV_PLANAR_2 \ YUVJ_2_RGB \ OUTPUT_RGB_24 #define CHROMA_SUB 1 #define CLEANUP emms(); #include "../csp_planar_packed.h" #define FUNC_NAME yuvj_422_p_to_bgr_24_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 8 #define IN_ADVANCE_UV 4 #define OUT_ADVANCE 24 #define NUM_PIXELS 8 #define CONVERT \ LOAD_YUV_PLANAR_2 \ YUVJ_2_RGB \ OUTPUT_BGR_24 #define CHROMA_SUB 1 #define CLEANUP emms(); #include "../csp_planar_packed.h" #ifndef MMXEXT #define FUNC_NAME yuvj_422_p_to_rgb_32_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 8 #define IN_ADVANCE_UV 4 #define OUT_ADVANCE 32 #define NUM_PIXELS 8 #define CONVERT \ LOAD_YUV_PLANAR_2 \ YUVJ_2_RGB \ OUTPUT_RGB_32 #define CHROMA_SUB 1 #define CLEANUP emms(); #include "../csp_planar_packed.h" #define FUNC_NAME yuvj_422_p_to_bgr_32_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 8 #define IN_ADVANCE_UV 4 #define OUT_ADVANCE 32 #define NUM_PIXELS 8 #define CONVERT \ LOAD_YUV_PLANAR_2 \ YUVJ_2_RGB \ OUTPUT_BGR_32 #define CHROMA_SUB 1 #define CLEANUP emms(); #include "../csp_planar_packed.h" #define FUNC_NAME yuvj_422_p_to_rgba_32_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 8 #define IN_ADVANCE_UV 4 #define OUT_ADVANCE 32 #define NUM_PIXELS 8 #define CONVERT \ LOAD_YUV_PLANAR_2 \ YUVJ_2_RGB \ OUTPUT_RGBA_32 #define CHROMA_SUB 1 #define CLEANUP emms(); #include "../csp_planar_packed.h" #endif // !MMXEXT #ifdef MMXEXT void gavl_init_yuv_rgb_funcs_mmxext(gavl_pixelformat_function_table_t * tab, int width, const gavl_video_options_t * opt) #else /* !MMXEXT */ void gavl_init_yuv_rgb_funcs_mmx(gavl_pixelformat_function_table_t * tab, int width, const gavl_video_options_t * opt) #endif /* MMXEXT */ { if(width % 8) return; if(opt->quality && (opt->quality >= 3)) return; tab->yuy2_to_rgb_24 = yuy2_to_rgb_24_mmx; tab->yuy2_to_bgr_24 = yuy2_to_bgr_24_mmx; tab->uyvy_to_rgb_24 = uyvy_to_rgb_24_mmx; tab->uyvy_to_bgr_24 = uyvy_to_bgr_24_mmx; tab->yuv_420_p_to_rgb_24 = yuv_420_p_to_rgb_24_mmx; tab->yuv_420_p_to_bgr_24 = yuv_420_p_to_bgr_24_mmx; tab->yuv_410_p_to_rgb_24 = yuv_410_p_to_rgb_24_mmx; tab->yuv_410_p_to_bgr_24 = yuv_410_p_to_bgr_24_mmx; tab->yuv_422_p_to_rgb_24 = yuv_422_p_to_rgb_24_mmx; tab->yuv_422_p_to_bgr_24 = yuv_422_p_to_bgr_24_mmx; tab->yuv_411_p_to_rgb_24 = yuv_411_p_to_rgb_24_mmx; tab->yuv_411_p_to_bgr_24 = yuv_411_p_to_bgr_24_mmx; tab->yuvj_420_p_to_rgb_24 = yuvj_420_p_to_rgb_24_mmx; tab->yuvj_420_p_to_bgr_24 = yuvj_420_p_to_bgr_24_mmx; tab->yuvj_422_p_to_rgb_24 = yuvj_422_p_to_rgb_24_mmx; tab->yuvj_422_p_to_bgr_24 = yuvj_422_p_to_bgr_24_mmx; #ifndef MMXEXT tab->yuy2_to_rgb_15 = yuy2_to_rgb_15_mmx; tab->yuy2_to_bgr_15 = yuy2_to_bgr_15_mmx; tab->yuy2_to_rgb_16 = yuy2_to_rgb_16_mmx; tab->yuy2_to_bgr_16 = yuy2_to_bgr_16_mmx; tab->yuy2_to_rgb_32 = yuy2_to_rgb_32_mmx; tab->yuy2_to_bgr_32 = yuy2_to_bgr_32_mmx; tab->yuy2_to_rgba_32 = yuy2_to_rgba_32_mmx; tab->uyvy_to_rgb_15 = uyvy_to_rgb_15_mmx; tab->uyvy_to_bgr_15 = uyvy_to_bgr_15_mmx; tab->uyvy_to_rgb_16 = uyvy_to_rgb_16_mmx; tab->uyvy_to_bgr_16 = uyvy_to_bgr_16_mmx; tab->uyvy_to_rgb_32 = uyvy_to_rgb_32_mmx; tab->uyvy_to_bgr_32 = uyvy_to_bgr_32_mmx; tab->uyvy_to_rgba_32 = uyvy_to_rgba_32_mmx; tab->yuv_420_p_to_rgb_15 = yuv_420_p_to_rgb_15_mmx; tab->yuv_420_p_to_bgr_15 = yuv_420_p_to_bgr_15_mmx; tab->yuv_420_p_to_rgb_16 = yuv_420_p_to_rgb_16_mmx; tab->yuv_420_p_to_bgr_16 = yuv_420_p_to_bgr_16_mmx; tab->yuv_420_p_to_rgb_32 = yuv_420_p_to_rgb_32_mmx; tab->yuv_420_p_to_bgr_32 = yuv_420_p_to_bgr_32_mmx; tab->yuv_420_p_to_rgba_32 = yuv_420_p_to_rgba_32_mmx; tab->yuv_410_p_to_rgb_15 = yuv_410_p_to_rgb_15_mmx; tab->yuv_410_p_to_bgr_15 = yuv_410_p_to_bgr_15_mmx; tab->yuv_410_p_to_rgb_16 = yuv_410_p_to_rgb_16_mmx; tab->yuv_410_p_to_bgr_16 = yuv_410_p_to_bgr_16_mmx; tab->yuv_410_p_to_rgb_32 = yuv_410_p_to_rgb_32_mmx; tab->yuv_410_p_to_bgr_32 = yuv_410_p_to_bgr_32_mmx; tab->yuv_410_p_to_rgba_32 = yuv_410_p_to_rgba_32_mmx; tab->yuv_422_p_to_rgb_15 = yuv_422_p_to_rgb_15_mmx; tab->yuv_422_p_to_bgr_15 = yuv_422_p_to_bgr_15_mmx; tab->yuv_422_p_to_rgb_16 = yuv_422_p_to_rgb_16_mmx; tab->yuv_422_p_to_bgr_16 = yuv_422_p_to_bgr_16_mmx; tab->yuv_422_p_to_rgb_32 = yuv_422_p_to_rgb_32_mmx; tab->yuv_422_p_to_bgr_32 = yuv_422_p_to_bgr_32_mmx; tab->yuv_422_p_to_rgba_32 = yuv_422_p_to_rgba_32_mmx; tab->yuv_411_p_to_rgb_15 = yuv_411_p_to_rgb_15_mmx; tab->yuv_411_p_to_bgr_15 = yuv_411_p_to_bgr_15_mmx; tab->yuv_411_p_to_rgb_16 = yuv_411_p_to_rgb_16_mmx; tab->yuv_411_p_to_bgr_16 = yuv_411_p_to_bgr_16_mmx; tab->yuv_411_p_to_rgb_32 = yuv_411_p_to_rgb_32_mmx; tab->yuv_411_p_to_bgr_32 = yuv_411_p_to_bgr_32_mmx; tab->yuv_411_p_to_rgba_32 = yuv_411_p_to_rgba_32_mmx; tab->yuvj_420_p_to_rgb_15 = yuvj_420_p_to_rgb_15_mmx; tab->yuvj_420_p_to_bgr_15 = yuvj_420_p_to_bgr_15_mmx; tab->yuvj_420_p_to_rgb_16 = yuvj_420_p_to_rgb_16_mmx; tab->yuvj_420_p_to_bgr_16 = yuvj_420_p_to_bgr_16_mmx; tab->yuvj_420_p_to_rgb_32 = yuvj_420_p_to_rgb_32_mmx; tab->yuvj_420_p_to_bgr_32 = yuvj_420_p_to_bgr_32_mmx; tab->yuvj_420_p_to_rgba_32 = yuvj_420_p_to_rgba_32_mmx; tab->yuvj_422_p_to_rgb_15 = yuvj_422_p_to_rgb_15_mmx; tab->yuvj_422_p_to_bgr_15 = yuvj_422_p_to_bgr_15_mmx; tab->yuvj_422_p_to_rgb_16 = yuvj_422_p_to_rgb_16_mmx; tab->yuvj_422_p_to_bgr_16 = yuvj_422_p_to_bgr_16_mmx; tab->yuvj_422_p_to_rgb_32 = yuvj_422_p_to_rgb_32_mmx; tab->yuvj_422_p_to_bgr_32 = yuvj_422_p_to_bgr_32_mmx; tab->yuvj_422_p_to_rgba_32 = yuvj_422_p_to_rgba_32_mmx; #endif } bplaum-gavl-b9385e3/gavl/mmx/_yuv_yuv_mmx.c000066400000000000000000000355661513252040200207420ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #ifndef MMXEXT #include "mmx_macros.h" /* Pixel conversion Macros */ /* * Convert a single scanline from YUY2 to separate planes * preserving the horizontal subsampling. * This macro does practically the same as the LOAD_YUY2 * macro in _yuv_rgb_mmx.c */ #define YUY2_TO_YUV_PLANAR movq_m2r(*src,mm0);\ movq_m2r(*(src+8),mm1);\ movq_r2r(mm0,mm2);/* mm2: V2 Y3 U2 Y2 V0 Y1 U0 Y0 */\ pand_m2r(mmx_00ffw,mm2);/* mm2: 00 Y3 00 Y2 00 Y1 00 Y0 */\ pxor_r2r(mm4, mm4);/* Zero mm4 */\ packuswb_r2r(mm4,mm2);/* mm2: 00 00 00 00 Y3 Y2 Y1 Y0 */\ movq_r2r(mm1,mm3);/* mm3: V6 Y7 U6 Y6 V4 Y5 U4 Y4 */\ pand_m2r(mmx_00ffw,mm3);/* mm3: 00 Y7 00 Y6 00 Y5 00 Y4 */\ pxor_r2r(mm6, mm6);/* Zero mm6 */\ packuswb_r2r(mm3,mm6);/* mm6: Y7 Y6 Y5 Y4 00 00 00 00 */\ por_r2r(mm2,mm6);/* mm6: Y7 Y6 Y5 Y4 Y3 Y2 Y1 Y0 */\ psrlw_i2r(8,mm0);/* mm0: 00 V2 00 U2 00 V0 00 U0 */\ psrlw_i2r(8,mm1);/* mm1: 00 V6 00 U6 00 V4 00 U4 */\ packuswb_r2r(mm1,mm0);/* mm0: V6 U6 V4 U4 V2 U2 V0 U0 */\ movq_r2r(mm0,mm1);/* mm1: V6 U6 V4 U4 V2 U2 V0 U0 */\ pand_m2r(mmx_00ffw,mm0);/* mm0: 00 U6 00 U4 00 U2 00 U0 */\ psrlw_i2r(8,mm1);/* mm1: 00 V6 00 V4 00 V2 00 V0 */\ packuswb_r2r(mm4,mm0);/* mm0: 00 00 00 00 U6 U4 U2 U0 */\ packuswb_r2r(mm4,mm1);/* mm1: 00 00 00 00 V6 V4 V2 V0 */\ MOVQ_R2M(mm6, *dst_y);\ movd_r2m(mm0, *dst_u);\ movd_r2m(mm1, *dst_v); #define UYVY_TO_YUV_PLANAR movq_m2r(*src,mm0);/* mm0: Y3 V2 Y2 U2 Y1 V0 Y0 U0 */\ movq_m2r(*(src+8),mm1);/* mm1: Y7 V6 Y6 U6 Y5 V4 Y4 U4 */\ movq_r2r(mm0,mm2);/* mm2: Y3 V2 Y2 U2 Y1 V0 Y0 U0 */\ pand_m2r(mmx_ff00w,mm2);/* mm2: Y3 00 Y2 00 Y1 00 Y0 00 */\ psrlw_i2r(8,mm2);/* mm0: 00 Y3 00 Y2 00 Y1 00 Y0 */\ pxor_r2r(mm4, mm4);/* Zero mm4 */ \ packuswb_r2r(mm4,mm2);/* mm2: 00 00 00 00 Y3 Y2 Y1 Y0 */\ movq_r2r(mm1,mm3);/* mm3: Y7 V6 Y6 U6 Y5 V4 Y4 U4 */\ pand_m2r(mmx_ff00w,mm3);/* mm3: Y7 00 Y6 00 Y5 00 Y4 00 */\ psrlw_i2r(8,mm3);/* mm3: 00 Y3 00 Y2 00 Y1 00 Y0 */\ pxor_r2r(mm6, mm6);/* Zero mm6 */\ packuswb_r2r(mm3,mm6);/* mm6: Y7 Y6 Y5 Y4 00 00 00 00 */\ por_r2r(mm2,mm6);/* mm6: Y7 Y6 Y5 Y4 Y3 Y2 Y1 Y0 */\ pand_m2r(mmx_00ffw,mm0);/* mm0: 00 V2 00 U2 00 V0 00 U0 */\ pand_m2r(mmx_00ffw,mm1);/* mm1: 00 V6 00 U6 00 V4 00 U4 */\ packuswb_r2r(mm1,mm0);/* mm0: V6 U6 V4 U4 V2 U2 V0 U0 */\ movq_r2r(mm0,mm1);/* mm1: V6 U6 V4 U4 V2 U2 V0 U0 */\ pand_m2r(mmx_00ffw,mm0);/* mm0: 00 U6 00 U4 00 U2 00 U0 */\ psrlw_i2r(8,mm1);/* mm1: 00 V6 00 V4 00 V2 00 V0 */\ packuswb_r2r(mm4,mm0);/* mm0: 00 00 00 00 U6 U4 U2 U0 */\ packuswb_r2r(mm4,mm1);/* mm1: 00 00 00 00 V6 V4 V2 V0 */\ MOVQ_R2M(mm6, *dst_y);\ movd_r2m(mm0, *dst_u);\ movd_r2m(mm1, *dst_v); /* * Convert a single scanline from YUY2 to a luminance plane * preserving the horizontal subsampling */ #define YUY2_TO_Y_PLANAR movq_m2r(*src,mm0);\ movq_m2r(*(src+8),mm1);\ movq_r2r(mm0,mm2);/* mm2: V2 Y3 U2 Y2 V0 Y1 U0 Y0 */\ pand_m2r(mmx_00ffw,mm2);/* mm2: 00 Y3 00 Y2 00 Y1 00 Y0 */\ pxor_r2r(mm4, mm4);/* Zero mm4 */\ packuswb_r2r(mm4,mm2);/* mm2: 00 00 00 00 Y3 Y2 Y1 Y0 */\ movq_r2r(mm1,mm3);/* mm3: V6 Y7 U6 Y6 V4 Y5 U4 Y4 */\ pand_m2r(mmx_00ffw,mm3);/* mm3: 00 Y7 00 Y6 00 Y5 00 Y4 */\ pxor_r2r(mm6, mm6);/* Zero mm6 */\ packuswb_r2r(mm3,mm6);/* mm6: Y7 Y6 Y5 Y4 00 00 00 00 */\ por_r2r(mm2,mm6);/* mm6: Y7 Y6 Y5 Y4 Y3 Y2 Y1 Y0 */\ MOVQ_R2M(mm6, *dst_y); #define UYVY_TO_Y_PLANAR movq_m2r(*src,mm0);/* mm0: Y3 V2 Y2 U2 Y1 V0 Y0 U0 */\ movq_m2r(*(src+8),mm1);/* mm1: Y7 V6 Y6 U6 Y5 V4 Y4 U4 */\ movq_r2r(mm0,mm2);/* mm2: Y3 V2 Y2 U2 Y1 V0 Y0 U0 */\ pand_m2r(mmx_ff00w,mm2);/* mm2: Y3 00 Y2 00 Y1 00 Y0 00 */\ psrlw_i2r(8,mm2);/* mm2: 00 Y3 00 Y2 00 Y1 00 Y0 */\ pxor_r2r(mm4, mm4);/* Zero mm4 */\ packuswb_r2r(mm4,mm2);/* mm2: 00 00 00 00 Y3 Y2 Y1 Y0 */\ movq_r2r(mm1,mm3);/* mm3: Y7 V6 Y6 U6 Y5 V4 Y4 U4 */\ pand_m2r(mmx_ff00w,mm3);/* mm3: Y7 00 Y6 00 Y5 00 Y4 00 */\ psrlw_i2r(8,mm3);/* mm3: 00 Y7 00 Y6 00 Y5 00 Y4 */\ pxor_r2r(mm6, mm6);/* Zero mm6 */\ packuswb_r2r(mm3,mm6);/* mm6: Y7 Y6 Y5 Y4 00 00 00 00 */\ por_r2r(mm2,mm6);/* mm6: Y7 Y6 Y5 Y4 Y3 Y2 Y1 Y0 */\ MOVQ_R2M(mm6, *dst_y); #define PLANAR_TO_YUY2 movq_m2r(*src_y, mm0);/* mm0: Y7 Y6 Y5 Y4 Y3 Y2 Y1 Y0 */\ movd_m2r(*src_u, mm1);/* mm1: 00 00 00 00 U6 U4 U2 U0 */\ movd_m2r(*src_v, mm2);/* mm2: 00 00 00 00 V6 V4 V2 V0 */\ pxor_r2r(mm3, mm3);/* Zero mm3 */\ movq_r2r(mm0, mm7);/* mm7: Y7 Y6 Y5 Y4 Y3 Y2 Y1 Y0 */\ punpcklbw_r2r(mm3, mm0);/* mm0: 00 Y3 00 Y2 00 Y1 00 Y0 */\ punpckhbw_r2r(mm3, mm7);/* mm7: 00 Y7 00 Y6 00 Y5 00 Y4 */\ pxor_r2r(mm4, mm4); /* Zero mm4 */\ punpcklbw_r2r(mm1, mm4);/* mm4: U6 00 U4 00 U2 00 U0 00 */\ pxor_r2r(mm5, mm5); /* Zero mm5 */\ punpcklbw_r2r(mm2, mm5);/* mm5: V6 00 V4 00 V2 00 V0 00 */\ movq_r2r(mm4, mm6);/* mm6: U6 00 U4 00 U2 00 U0 00 */\ punpcklwd_r2r(mm3, mm6);/* mm6: 00 00 U2 00 00 00 U0 00 */\ por_r2r(mm6, mm0); /* mm0: 00 Y3 U2 Y2 00 Y1 U0 Y0 */\ punpcklwd_r2r(mm3, mm4);/* mm4: 00 00 U6 00 00 00 U4 00 */\ por_r2r(mm4, mm7); /* mm7: 00 Y7 U6 Y6 00 Y5 U4 Y4 */\ pxor_r2r(mm6, mm6); /* Zero mm6 */\ punpcklwd_r2r(mm5, mm6);/* mm6: V2 00 00 00 V0 00 00 00 */\ por_r2r(mm6, mm0); /* mm0: V2 Y3 U2 Y2 V0 Y1 U0 Y0 */\ punpckhwd_r2r(mm5, mm3);/* mm3: V6 00 00 00 V4 00 00 00 */\ por_r2r(mm3, mm7); /* mm7: V6 Y7 U6 Y6 V4 Y5 U4 Y4 */\ MOVQ_R2M(mm0, *dst);\ MOVQ_R2M(mm7, *(dst+8)); #define PLANAR_TO_UYVY movq_m2r(*src_y, mm0);/* mm0: Y7 Y6 Y5 Y4 Y3 Y2 Y1 Y0 */\ movd_m2r(*src_u, mm1);/* mm1: 00 00 00 00 U6 U4 U2 U0 */\ movd_m2r(*src_v, mm2);/* mm2: 00 00 00 00 V6 V4 V2 V0 */\ pxor_r2r(mm3, mm3);/* Zero mm3 */\ movq_r2r(mm0, mm7);/* mm7: Y7 Y6 Y5 Y4 Y3 Y2 Y1 Y0 */\ punpcklbw_r2r(mm3, mm0);/* mm0: 00 Y3 00 Y2 00 Y1 00 Y0 */\ punpckhbw_r2r(mm3, mm7);/* mm7: 00 Y7 00 Y6 00 Y5 00 Y4 */\ psllw_i2r(8,mm0);/* mm0: Y3 00 Y2 00 Y1 00 Y0 00 */\ psllw_i2r(8,mm7);/* mm7: Y7 00 Y6 00 Y5 00 Y4 00 */\ pxor_r2r(mm4, mm4); /* Zero mm4 */\ punpcklbw_r2r(mm1, mm4);/* mm4: U6 00 U4 00 U2 00 U0 00 */\ pxor_r2r(mm5, mm5); /* Zero mm5 */\ punpcklbw_r2r(mm2, mm5);/* mm5: V6 00 V4 00 V2 00 V0 00 */\ movq_r2r(mm4, mm6);/* mm6: U6 00 U4 00 U2 00 U0 00 */\ punpcklwd_r2r(mm3, mm6);/* mm6: 00 00 U2 00 00 00 U0 00 */\ psrlw_i2r(8,mm6);/* mm6: 00 00 00 U2 00 00 00 U0 */\ por_r2r(mm6, mm0); /* mm0: Y3 00 Y2 U2 Y1 00 Y0 U0 */\ punpcklwd_r2r(mm3, mm4);/* mm4: 00 00 U6 00 00 00 U4 00 */\ psrlw_i2r(8,mm4);/* mm4: 00 00 00 U6 00 00 00 U4 */\ por_r2r(mm4, mm7); /* mm7: Y7 00 Y6 U6 Y5 00 Y4 U4 */\ pxor_r2r(mm6, mm6); /* Zero mm6 */\ punpcklwd_r2r(mm5, mm6);/* mm6: V2 00 00 00 V0 00 00 00 */\ psrlw_i2r(8,mm6);/* mm6: 00 V2 00 00 00 V0 00 00 */\ por_r2r(mm6, mm0); /* mm0: Y3 V2 Y2 U2 Y1 V0 Y0 U0 */\ punpckhwd_r2r(mm5, mm3);/* mm3: V6 00 00 00 V4 00 00 00 */\ psrlw_i2r(8,mm3);/* mm3: 00 V6 00 00 00 V4 00 00 */\ por_r2r(mm3, mm7); /* mm7: Y7 V6 Y6 U6 Y5 V4 Y4 U4 */\ MOVQ_R2M(mm0, *dst);\ MOVQ_R2M(mm7, *(dst+8)); /* YUY2 -> Planar */ #define FUNC_NAME yuy2_to_yuv_420_p_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE_Y 8 #define OUT_ADVANCE_UV 4 #define NUM_PIXELS 8 #define CONVERT_YUV \ YUY2_TO_YUV_PLANAR #define CONVERT_Y \ YUY2_TO_Y_PLANAR #define CHROMA_SUB 2 #define CLEANUP emms(); #include "../csp_packed_planar.h" #define FUNC_NAME yuy2_to_yuv_422_p_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE_Y 8 #define OUT_ADVANCE_UV 4 #define NUM_PIXELS 8 #define CONVERT_YUV \ YUY2_TO_YUV_PLANAR #define CHROMA_SUB 1 #define CLEANUP emms(); #include "../csp_packed_planar.h" /* UYVY -> Planar */ #define FUNC_NAME uyvy_to_yuv_420_p_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE_Y 8 #define OUT_ADVANCE_UV 4 #define NUM_PIXELS 8 #define CONVERT_YUV \ UYVY_TO_YUV_PLANAR #define CONVERT_Y \ UYVY_TO_Y_PLANAR #define CHROMA_SUB 2 #define CLEANUP emms(); #include "../csp_packed_planar.h" #define FUNC_NAME uyvy_to_yuv_422_p_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE_Y 8 #define OUT_ADVANCE_UV 4 #define NUM_PIXELS 8 #define CONVERT_YUV \ UYVY_TO_YUV_PLANAR #define CHROMA_SUB 1 #define CLEANUP emms(); #include "../csp_packed_planar.h" /* Planar -> YUY2 */ #define FUNC_NAME yuv_422_p_to_yuy2_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 8 #define IN_ADVANCE_UV 4 #define OUT_ADVANCE 16 #define NUM_PIXELS 8 #define CONVERT \ PLANAR_TO_YUY2 #define CHROMA_SUB 1 // #define INIT #define CLEANUP emms(); #include "../csp_planar_packed.h" #define FUNC_NAME yuv_420_p_to_yuy2_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 8 #define IN_ADVANCE_UV 4 #define OUT_ADVANCE 16 #define NUM_PIXELS 8 #define CONVERT \ PLANAR_TO_YUY2 #define CHROMA_SUB 2 // #define INIT #define CLEANUP emms(); #include "../csp_planar_packed.h" /* Planar -> UYVY */ #define FUNC_NAME yuv_422_p_to_uyvy_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 8 #define IN_ADVANCE_UV 4 #define OUT_ADVANCE 16 #define NUM_PIXELS 8 #define CONVERT \ PLANAR_TO_UYVY #define CHROMA_SUB 1 // #define INIT #define CLEANUP emms(); #include "../csp_planar_packed.h" #define FUNC_NAME yuv_420_p_to_uyvy_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 8 #define IN_ADVANCE_UV 4 #define OUT_ADVANCE 16 #define NUM_PIXELS 8 #define CONVERT \ PLANAR_TO_UYVY #define CHROMA_SUB 2 // #define INIT #define CLEANUP emms(); #include "../csp_planar_packed.h" void gavl_init_yuv_yuv_funcs_mmx(gavl_pixelformat_function_table_t * tab, int width, const gavl_video_options_t * opt) { if(width % 8) return; /* These are as good as the C-Functions. Higher quality will invoke a scaler, so this function won't get called anyway */ tab->yuy2_to_yuv_420_p = yuy2_to_yuv_420_p_mmx; tab->yuy2_to_yuv_422_p = yuy2_to_yuv_422_p_mmx; tab->uyvy_to_yuv_420_p = uyvy_to_yuv_420_p_mmx; tab->uyvy_to_yuv_422_p = uyvy_to_yuv_422_p_mmx; tab->yuv_420_p_to_yuy2 = yuv_420_p_to_yuy2_mmx; tab->yuv_420_p_to_uyvy = yuv_420_p_to_uyvy_mmx; tab->yuv_422_p_to_yuy2 = yuv_422_p_to_yuy2_mmx; tab->yuv_422_p_to_uyvy = yuv_422_p_to_uyvy_mmx; } #else // MMXEXT void gavl_init_yuv_yuv_funcs_mmxext(gavl_pixelformat_function_table_t * tab, int width, const gavl_video_options_t * opt) { } #endif bplaum-gavl-b9385e3/gavl/mmx/colorspace_mmx.c000066400000000000000000000031611513252040200211710ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include #include #include #include "mmx.h" /* * Support for mmxext * this macro produces another set of * functions in ../mmxext * I really wonder if this is the only difference between mmx and mmxext */ #ifdef MMXEXT // #define MOVQ_R2M(reg,mem) movntq_r2m(reg, mem) #define MOVQ_R2M(reg,mem) movq_r2m(reg, mem) #define CLEANUP emms(); // #define PREFETCH(ptr) mmx_fetch(ptr,t0) #define PREFETCH(ptr) #else #define MOVQ_R2M(reg,mem) movq_r2m(reg, mem) #define CLEANUP emms(); #define PREFETCH(ptr) #endif #include "_rgb_rgb_mmx.c" #include "_rgb_yuv_mmx.c" #include "_yuv_rgb_mmx.c" #include "_yuv_yuv_mmx.c" bplaum-gavl-b9385e3/gavl/mmx/deinterlace_blend_mmx.c000066400000000000000000000056561513252040200224750ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include #include #include #include "mmx.h" #ifdef MMXEXT #define MOVQ_R2M(reg,mem) movntq_r2m(reg, mem) #else #define MOVQ_R2M(reg,mem) movq_r2m(reg, mem) #endif static void blend_func_8_mmx(const uint8_t * t, const uint8_t * m, const uint8_t * b, uint8_t * dst, int num) { int i; int imax; imax = num / 8; pxor_r2r(mm7, mm7); for(i = 0; i < imax; i++) { movq_m2r(*t, mm0); movq_m2r(*m, mm1); movq_m2r(*b, mm2); movq_r2r(mm0, mm3); punpcklbw_r2r(mm7, mm0); punpckhbw_r2r(mm7, mm3); movq_r2r(mm1, mm4); punpcklbw_r2r(mm7, mm1); punpckhbw_r2r(mm7, mm4); movq_r2r(mm2, mm5); punpcklbw_r2r(mm7, mm2); punpckhbw_r2r(mm7, mm5); /* * mm0: 00 t3 00 t2 00 t1 00 t0 * mm1: 00 m3 00 m2 00 m1 00 m0 * mm2: 00 b3 00 b2 00 b1 00 b0 * mm3: 00 t7 00 t6 00 t5 00 t4 * mm4: 00 m7 00 m6 00 m5 00 m4 * mm5: 00 b7 00 b6 00 b5 00 b4 */ psllw_i2r(1, mm1); psllw_i2r(1, mm4); paddw_r2r(mm0, mm1); paddw_r2r(mm3, mm4); paddw_r2r(mm1, mm2); paddw_r2r(mm4, mm5); psrlw_i2r(2, mm2); psrlw_i2r(2, mm5); packuswb_r2r(mm5, mm2); MOVQ_R2M(mm2, *dst); m += 8; b += 8; t += 8; dst += 8; } emms(); imax = num % 8; for(i = 0; i < imax; i++) { *(dst++) = (*(t++) + (*(m++) << 1) + *(b++)) >> 2; } } void gavl_find_deinterlacer_blend_funcs_mmx(gavl_video_deinterlace_blend_func_table_t * tab, const gavl_video_options_t * opt, const gavl_video_format_t * format) { // tab->func_packed_15 = blend_func_packed_15_c; // tab->func_packed_16 = blend_func_packed_16_c; tab->func_8 = blend_func_8_mmx; // tab->func_16 = blend_func_16_c; // tab->func_float = blend_func_float_c; } bplaum-gavl-b9385e3/gavl/mmx/dsp_mmx.c000066400000000000000000000070421513252040200176270ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include #include #include #include #include "mmx.h" #ifdef MMXEXT #define MOVQ_R2M(reg,mem) movntq_r2m(reg, mem) #else #define MOVQ_R2M(reg,mem) movq_r2m(reg, mem) #endif #if 0 static mmx_t mm_tmp; #define DUMP_MM(name, reg) MOVQ_R2M(reg, mm_tmp);\ fprintf(stderr, "%s: %016llx\n", name, mm_tmp.q); #endif static void interpolate_8_mmx(const uint8_t * src_1, const uint8_t * src_2, uint8_t * dst, int num, float fac) { int i, imax; int32_t tmp; int32_t fac_i; int32_t anti_fac; fac_i = (float)(fac * 0x4000 + 0.5); anti_fac = 0x4000 - fac_i; // fprintf(stderr, "interpolate_8_mmx %d %d\n", fac, anti_fac); imax = num / 8; // imax = 0; /* Load factors */ /* * mm0: Input1 * mm1: Input2 * mm2: Factor1 * mm3: Factor1 * mm4: Output1 * mm5: Output2 * mm6: Scratch * mm7: 0 */ pxor_r2r(mm7, mm7); /* Load factor1 */ movd_m2r(fac_i, mm2); movq_r2r(mm2, mm6); psllq_i2r(16, mm6); por_r2r(mm6, mm2); movq_r2r(mm2, mm6); psllq_i2r(32, mm6); por_r2r(mm6, mm2); /* Load factor2 */ movd_m2r(anti_fac, mm3); movq_r2r(mm3, mm6); psllq_i2r(16, mm6); por_r2r(mm6, mm3); movq_r2r(mm3, mm6); psllq_i2r(32, mm6); por_r2r(mm6, mm3); for(i = 0; i < imax; i++) { /* Load input 1 */ movq_m2r(*src_1,mm0); movq_r2r(mm0,mm1); punpcklbw_r2r(mm7, mm0); punpckhbw_r2r(mm7, mm1); psllw_i2r(7, mm0); psllw_i2r(7, mm1); /* Accumulate mm0 */ pmulhw_r2r(mm2, mm0); movq_r2r(mm0, mm4); /* Accumulate mm1 */ pmulhw_r2r(mm2, mm1); movq_r2r(mm1, mm5); /* Load input 2 */ movq_m2r(*(src_2),mm0); movq_r2r(mm0,mm1); punpcklbw_r2r(mm7, mm0); punpckhbw_r2r(mm7, mm1); psllw_i2r(7, mm0); psllw_i2r(7, mm1); /* Accumulate mm0 */ pmulhw_r2r(mm3, mm0); paddsw_r2r(mm0, mm4); /* Accumulate mm1 */ pmulhw_r2r(mm3, mm1); paddsw_r2r(mm1, mm5); psraw_i2r(5, mm4); psraw_i2r(5, mm5); packuswb_r2r(mm5, mm4); MOVQ_R2M(mm4, *dst); dst += 8; src_1 += 8; src_2 += 8; } emms(); imax = num % 8; // imax = num; if(!imax) return; for(i = 0; i < imax; i++) { tmp = (*src_1 * fac_i + *src_2 * anti_fac) >> 15; *dst = (uint8_t)((tmp & ~0xFF)?((-tmp) >> 31) : tmp); /* Accum */ dst++; src_1++; src_2++; } } void gavl_dsp_init_mmx(gavl_dsp_funcs_t * funcs, int quality) { if(quality < 3) funcs->interpolate_8 = interpolate_8_mmx; } bplaum-gavl-b9385e3/gavl/mmx/interpolate.h000066400000000000000000000207501513252040200205140ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #ifdef INTERPOLATE_USE_16 /* Only used in functions, which are a bit too slow anyway */ static const mmx_t interpolate_rgb16_upper_mask = { 0x000000000000f800LL }; static const mmx_t interpolate_rgb16_middle_mask = { 0x00000000000007e0LL }; static const mmx_t interpolate_rgb16_lower_mask = { 0x000000000000001fLL }; static const mmx_t interpolate_rgb15_upper_mask = { 0x0000000000007C00LL }; static const mmx_t interpolate_rgb15_middle_mask = { 0x00000000000003e0LL }; static const mmx_t interpolate_rgb15_lower_mask = { 0x000000000000001fLL }; #endif #define INTERPOLATE_INIT_TEMP \ mmx_t tmp;\ pxor_r2r(mm5,mm5);\ tmp.q = 0; /* Interpolate C = src1 * F + src2 * (1 - F) = F * (A - B) + B * * before: * mm0: 00 A3 00 A2 00 A1 00 A0 (src 1) * mm1: 00 B3 00 B2 00 B1 00 B0 (src 2) * mm4: 00 F3 00 F2 00 F1 00 F0 0..7f * mm5: 00 00 00 00 00 00 00 00 (Must be cleared before) * * after: * mm7: 00 C3 00 C3 00 C1 00 C0 * mm0: destroyed */ #define INTERPOLATE_1D \ movq_r2r(mm0, mm7); /* mm7: A */ \ psubsw_r2r(mm1, mm7); /* mm7: A-B */ \ pmullw_r2r(mm4, mm7); /* mm7: F * (A_B) */ \ psraw_i2r(7, mm7); /* fit into 8 bits */ \ paddsw_r2r(mm1, mm7); /* mm7: F * (A_B)+B */ #define INTERPOLATE_LOAD_SRC_RGBA32 \ movd_m2r(*src, mm0);\ movq_r2r(mm0, mm4);\ punpcklbw_r2r(mm5, mm0);\ psrlq_i2r(25, mm4);\ movq_r2r(mm4, mm6);\ psllq_i2r(16, mm6);\ por_r2r(mm6, mm4);\ movq_r2r(mm4, mm6);\ psllq_i2r(32, mm6);\ por_r2r(mm6, mm4); #define INTERPOLATE_1D_LOAD_SRC_1_15 \ tmp.q = *src_1; \ movq_m2r(tmp, mm7); \ movq_r2r(mm7, mm0);/* Lower 5 bits */ \ pand_m2r(interpolate_rgb15_lower_mask, mm0); \ psllq_i2r(3, mm0); \ movq_r2r(mm7, mm6);/* Middle 5 bits */ \ pand_m2r(interpolate_rgb15_middle_mask, mm6); \ psllq_i2r(14, mm6); \ por_r2r(mm6, mm0); \ pand_m2r(interpolate_rgb15_upper_mask, mm7);/* Upper 5 bits */ \ psllq_i2r(25, mm7); \ por_r2r(mm7, mm0); #define INTERPOLATE_1D_LOAD_SRC_2_15 \ tmp.q = *src_2; \ movq_m2r(tmp, mm7); \ movq_r2r(mm7, mm1); \ pand_m2r(interpolate_rgb15_lower_mask, mm1); \ psllq_i2r(3, mm1); \ movq_r2r(mm7, mm6); \ pand_m2r(interpolate_rgb15_middle_mask, mm6); \ psllq_i2r(14, mm6); \ por_r2r(mm6, mm1); \ pand_m2r(interpolate_rgb15_upper_mask, mm7); \ psllq_i2r(25, mm7); \ por_r2r(mm7, mm1); #define INTERPOLATE_1D_LOAD_SRC_1_16 \ tmp.q = *src_1; \ movq_m2r(tmp, mm7); \ movq_r2r(mm7, mm0);/* Lower 5 bits */ \ pand_m2r(interpolate_rgb16_lower_mask, mm0); \ psllq_i2r(3, mm0); \ movq_r2r(mm7, mm6);/* Middle 6 bits */ \ pand_m2r(interpolate_rgb16_middle_mask, mm6); \ psllq_i2r(13, mm6); \ por_r2r(mm6, mm0); \ pand_m2r(interpolate_rgb16_upper_mask, mm7);/* Upper 5 bits */ \ psllq_i2r(24, mm7); \ por_r2r(mm7, mm0); #define INTERPOLATE_1D_LOAD_SRC_2_16 \ tmp.q = *src_1; \ movq_m2r(tmp, mm7); \ movq_r2r(mm7, mm1);/* Lower 5 bits */ \ pand_m2r(interpolate_rgb16_lower_mask, mm1); \ psllq_i2r(3, mm1); \ movq_r2r(mm7, mm6);/* Middle 6 bits */ \ pand_m2r(interpolate_rgb16_middle_mask, mm6); \ psllq_i2r(13, mm6); \ por_r2r(mm6, mm1); \ pand_m2r(interpolate_rgb16_upper_mask, mm7);/* Upper 5 bits */ \ psllq_i2r(24, mm7); \ por_r2r(mm7, mm1); #define INTERPOLATE_1D_LOAD_SRC_1_24 \ tmp.uw[0] = src_1[0]; \ tmp.uw[1] = src_1[1]; \ tmp.uw[2] = src_1[2]; \ movq_m2r(tmp, mm0); #define INTERPOLATE_1D_LOAD_SRC_2_24 \ tmp.uw[0] = src_2[0]; \ tmp.uw[1] = src_2[1]; \ tmp.uw[2] = src_2[2]; \ movq_m2r(tmp, mm1); #define INTERPOLATE_1D_LOAD_SRC_1_32 \ movd_m2r(*src_1, mm0); \ punpcklbw_r2r(mm5, mm0); #define INTERPOLATE_1D_LOAD_SRC_2_32 \ movd_m2r(*src_2, mm1); \ punpcklbw_r2r(mm5, mm1); #define INTERPOLATE_WRITE_RGBA32 \ packuswb_r2r(mm5, mm7);/* Pack result */\ movd_r2m(mm7, *dst); #define INTERPOLATE_WRITE_RGB32 \ packuswb_r2r(mm5, mm7);/* Pack result */\ movd_r2m(mm7, *dst); \ dst[3] = 0xff; #define INTERPOLATE_WRITE_RGB24 \ MOVQ_R2M(mm7, tmp); \ dst[0] = tmp.ub[0]; \ dst[1] = tmp.ub[2]; \ dst[2] = tmp.ub[4]; #define INTERPOLATE_WRITE_BGR24 \ MOVQ_R2M(mm7, tmp); \ dst[0] = tmp.ub[4]; \ dst[1] = tmp.ub[2]; \ dst[2] = tmp.ub[0]; #define INTERPOLATE_WRITE_15 \ psrlw_i2r(3, mm7);\ movq_r2r(mm7,mm6);\ pand_m2r(interpolate_rgb15_lower_mask, mm6);\ movq_r2r(mm6,mm0);\ movq_r2r(mm7,mm6);\ psrlq_i2r(11, mm6);\ pand_m2r(interpolate_rgb15_middle_mask, mm6);\ por_r2r(mm6,mm0);\ psrlq_i2r(22, mm7);\ pand_m2r(interpolate_rgb15_upper_mask, mm7);\ por_r2r(mm7,mm0);\ MOVQ_R2M(mm0, tmp);\ *dst = tmp.uw[0]; #define INTERPOLATE_WRITE_15_SWAP \ psrlw_i2r(3, mm7);\ movq_r2r(mm7,mm6);\ pand_m2r(interpolate_rgb15_lower_mask, mm6);\ movq_r2r(mm6,mm0);\ psllw_i2r(10, mm0);\ movq_r2r(mm7,mm6);\ psrlq_i2r(11, mm6);\ pand_m2r(interpolate_rgb15_middle_mask, mm6);\ por_r2r(mm6,mm0);\ psrlq_i2r(32, mm7);\ por_r2r(mm7,mm0);\ MOVQ_R2M(mm0, tmp);\ *dst = tmp.uw[0]; #define INTERPOLATE_WRITE_16 \ psrlw_i2r(2, mm7);\ movq_r2r(mm7,mm6);\ psrlw_i2r(1, mm6);\ pand_m2r(interpolate_rgb16_lower_mask, mm6);\ movq_r2r(mm6,mm0);\ movq_r2r(mm7,mm6); \ psrlq_i2r(11, mm6);\ pand_m2r(interpolate_rgb16_middle_mask, mm6);\ por_r2r(mm6,mm0);\ psrlq_i2r(22, mm7);\ pand_m2r(interpolate_rgb16_upper_mask, mm7);\ por_r2r(mm7,mm0);\ MOVQ_R2M(mm0, tmp);\ *dst = tmp.uw[0]; #define INTERPOLATE_WRITE_16_SWAP \ psrlw_i2r(2, mm7);\ movq_r2r(mm7,mm6);\ psrlw_i2r(1, mm6);\ pand_m2r(interpolate_rgb16_lower_mask, mm6);\ movq_r2r(mm6,mm0);\ psllw_i2r(11, mm0);\ movq_r2r(mm7,mm6);\ psrlq_i2r(11, mm6);\ pand_m2r(interpolate_rgb16_middle_mask, mm6);\ por_r2r(mm6,mm0);\ psrlq_i2r(33, mm7);\ pand_m2r(interpolate_rgb16_lower_mask, mm7);\ por_r2r(mm7,mm0);\ MOVQ_R2M(mm0, tmp);\ *dst = tmp.uw[0]; bplaum-gavl-b9385e3/gavl/mmx/mmx.h000066400000000000000000000377421513252040200170000ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ /* Taken from mpeg2dec, original copyright below */ /* * mmx.h * Copyright (C) 2000-2001 Michel Lespinasse * Copyright (C) 1999-2000 Aaron Holtzman * * This file is part of mpeg2dec, a free MPEG-2 video stream decoder. * See http://libmpeg2.sourceforge.net/ for updates. * * mpeg2dec 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. * * mpeg2dec is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ /* * The type of an value that fits in an MMX register (note that long * long constant values MUST be suffixed by LL and unsigned long long * values by ULL, lest they be truncated by the compiler) */ typedef union { long long q; /* Quadword (64-bit) value */ unsigned long long uq; /* Unsigned Quadword */ int d[2]; /* 2 Doubleword (32-bit) values */ unsigned int ud[2]; /* 2 Unsigned Doubleword */ short w[4]; /* 4 Word (16-bit) values */ unsigned short uw[4]; /* 4 Unsigned Word */ char b[8]; /* 8 Byte (8-bit) values */ unsigned char ub[8]; /* 8 Unsigned Byte */ float s[2]; /* Single-precision (32-bit) value */ } ATTR_ALIGN(8) mmx_t; /* On an 8-byte (64-bit) boundary */ #define mmx_i2r(op,imm,reg) \ __asm__ __volatile__ (#op " %0, %%" #reg \ : /* nothing */ \ : "i" (imm) ) #define mmx_m2r(op,mem,reg) \ __asm__ __volatile__ (#op " %0, %%" #reg \ : /* nothing */ \ : "m" (mem)) #define mmx_r2m(op,reg,mem) \ __asm__ __volatile__ (#op " %%" #reg ", %0" \ : "=m" (mem) \ : /* nothing */ ) #define mmx_r2r(op,regs,regd) \ __asm__ __volatile__ (#op " %" #regs ", %" #regd) #define emms() __asm__ __volatile__ ("emms") /* Move a 32-bit value from memory op1 to MMX register op2, clearing the upper 32 bits of op2 */ #define movd_m2r(var,reg) mmx_m2r (movd, var, reg) #define movd_r2m(reg,var) mmx_r2m (movd, reg, var) #define movd_v2r(var,reg) __asm__ __volatile__ ("movd %0, %%" #reg \ : /* nothing */ \ : "rm" (var)) #define movd_r2v(reg,var) __asm__ __volatile__ ("movd %%" #reg ", %0" \ : "=rm" (var) \ : /* nothing */ ) /* Move a 64-bit value from memory op1 to MMX register op2 */ #define movq_m2r(var,reg) mmx_m2r (movq, var, reg) #define movq_r2m(reg,var) mmx_r2m (movq, reg, var) #define movq_r2r(regs,regd) mmx_r2r (movq, regs, regd) /* Arithmetic functions */ /* Store the parallel sum of op1 and op2 using signed wrap-around addition in op2 (2x32, 4x16, 8x8) */ #define paddb_m2r(var,reg) mmx_m2r (paddb, var, reg) #define paddb_r2r(regs,regd) mmx_r2r (paddb, regs, regd) #define paddw_m2r(var,reg) mmx_m2r (paddw, var, reg) #define paddw_r2r(regs,regd) mmx_r2r (paddw, regs, regd) #define paddd_m2r(var,reg) mmx_m2r (paddd, var, reg) #define paddd_r2r(regs,regd) mmx_r2r (paddd, regs, regd) /* Store the parallel sum of op1 and op2 using signed saturation addition in op2 (4x16, 8x8): */ #define paddsb_m2r(var,reg) mmx_m2r (paddsb, var, reg) #define paddsb_r2r(regs,regd) mmx_r2r (paddsb, regs, regd) #define paddsw_m2r(var,reg) mmx_m2r (paddsw, var, reg) #define paddsw_r2r(regs,regd) mmx_r2r (paddsw, regs, regd) /* Store the parallel sum of op1 and op2 using unsigned saturation addition in op2 (4x16, 8x8) */ #define paddusb_m2r(var,reg) mmx_m2r (paddusb, var, reg) #define paddusb_r2r(regs,regd) mmx_r2r (paddusb, regs, regd) #define paddusw_m2r(var,reg) mmx_m2r (paddusw, var, reg) #define paddusw_r2r(regs,regd) mmx_r2r (paddusw, regs, regd) /* Parallel subtract op1 from op2 using signed wrap-around subtraction and store the difference in op2 (2x32, 4x16, 8x8) */ #define psubb_m2r(var,reg) mmx_m2r (psubb, var, reg) #define psubb_r2r(regs,regd) mmx_r2r (psubb, regs, regd) #define psubw_m2r(var,reg) mmx_m2r (psubw, var, reg) #define psubw_r2r(regs,regd) mmx_r2r (psubw, regs, regd) #define psubd_m2r(var,reg) mmx_m2r (psubd, var, reg) #define psubd_r2r(regs,regd) mmx_r2r (psubd, regs, regd) /* Parallel subtract op1 from op2 using signed saturation subtraction and store the difference in op2 (4x16, 8x8) */ #define psubsb_m2r(var,reg) mmx_m2r (psubsb, var, reg) #define psubsb_r2r(regs,regd) mmx_r2r (psubsb, regs, regd) #define psubsw_m2r(var,reg) mmx_m2r (psubsw, var, reg) #define psubsw_r2r(regs,regd) mmx_r2r (psubsw, regs, regd) /* Parallel subtract op1 from op2 using unsigned saturation subtraction and store the difference in op2 (4x16, 8x8) */ #define psubusb_m2r(var,reg) mmx_m2r (psubusb, var, reg) #define psubusb_r2r(regs,regd) mmx_r2r (psubusb, regs, regd) #define psubusw_m2r(var,reg) mmx_m2r (psubusw, var, reg) #define psubusw_r2r(regs,regd) mmx_r2r (psubusw, regs, regd) /* Parallel multiply op1 and op2 using unsigned saturation multiplication and store the low-order word of the result in op2 (4x16) */ #define pmullw_m2r(var,reg) mmx_m2r (pmullw, var, reg) #define pmullw_r2r(regs,regd) mmx_r2r (pmullw, regs, regd) /* Parallel multiply op1 and op2 using signed saturation multiplication and store the high-order word of the result in op2 (4x16) */ #define pmulhw_m2r(var,reg) mmx_m2r (pmulhw, var, reg) #define pmulhw_r2r(regs,regd) mmx_r2r (pmulhw, regs, regd) /* Parallel multiply the words of op1 and op2 using signed multiplication to form four signed doubleword intermediate results. Parallel add the intermediate results formed by the high-order doublewords of op1 and op2 into the high-order doubleword of op2, and parallel add the intermediate results formed by the low-order doublewords of op1 and op2 into the low-order doubleword of op2 (4x16) */ #define pmaddwd_m2r(var,reg) mmx_m2r (pmaddwd, var, reg) #define pmaddwd_r2r(regs,regd) mmx_r2r (pmaddwd, regs, regd) /* Store the bitwise-AND of op1 and op2 in op2 */ #define pand_m2r(var,reg) mmx_m2r (pand, var, reg) #define pand_r2r(regs,regd) mmx_r2r (pand, regs, regd) /* Store the bitwise-AND of op1 and the ones-compliment of op2 in op2 */ #define pandn_m2r(var,reg) mmx_m2r (pandn, var, reg) #define pandn_r2r(regs,regd) mmx_r2r (pandn, regs, regd) /* Store the bitwise-OR of op1 and op2 in op2 */ #define por_m2r(var,reg) mmx_m2r (por, var, reg) #define por_r2r(regs,regd) mmx_r2r (por, regs, regd) /* Store the bitwise-XOR of op1 and op2 in op2 */ #define pxor_m2r(var,reg) mmx_m2r (pxor, var, reg) #define pxor_r2r(regs,regd) mmx_r2r (pxor, regs, regd) /* The comparison functions: These functions store an mmx value in op2 in which every bit of each field for which the comparison is true set to '1', and every other bit set to '0'. For example, if op1 contains 0x01...005f33 and op2 contains 0x00...006f33, the result of mmx_pcmpeqb(op1,op2) would be 0x00...FF00FF, and the result of mmx_pcmpgtb(op1,op2) would be 0x00...00FF00. */ /* Set to true if op1 equals op2 (2x32, 4x16, 8x8) */ #define pcmpeqb_m2r(var,reg) mmx_m2r (pcmpeqb, var, reg) #define pcmpeqb_r2r(regs,regd) mmx_r2r (pcmpeqb, regs, regd) #define pcmpeqd_m2r(var,reg) mmx_m2r (pcmpeqd, var, reg) #define pcmpeqd_r2r(regs,regd) mmx_r2r (pcmpeqd, regs, regd) #define pcmpeqw_m2r(var,reg) mmx_m2r (pcmpeqw, var, reg) #define pcmpeqw_r2r(regs,regd) mmx_r2r (pcmpeqw, regs, regd) /* Set to true if op2 is greater than op1 (2x32, 4x16, 8x8) */ #define pcmpgtb_m2r(var,reg) mmx_m2r (pcmpgtb, var, reg) #define pcmpgtb_r2r(regs,regd) mmx_r2r (pcmpgtb, regs, regd) #define pcmpgtd_m2r(var,reg) mmx_m2r (pcmpgtd, var, reg) #define pcmpgtd_r2r(regs,regd) mmx_r2r (pcmpgtd, regs, regd) #define pcmpgtw_m2r(var,reg) mmx_m2r (pcmpgtw, var, reg) #define pcmpgtw_r2r(regs,regd) mmx_r2r (pcmpgtw, regs, regd) /* The bit shifting functions: In these operations, if an MMX register is used as the shift count (i.e. op1), the data in the register is taken as a single unsigned 64-bit value, and is used as the count for each of the fields of op2 */ /* Parallel shift left logical each of the fields in op2 by the unsigned number of bits in op1 (2x32, 4x16, 8x8). In the _i2r forms, op1 is an unsigned 64-bit immediate value, but only the lower 8 bits are used by the instruction */ #define pslld_i2r(imm,reg) mmx_i2r (pslld, imm, reg) #define pslld_m2r(var,reg) mmx_m2r (pslld, var, reg) #define pslld_r2r(regs,regd) mmx_r2r (pslld, regs, regd) #define psllq_i2r(imm,reg) mmx_i2r (psllq, imm, reg) #define psllq_m2r(var,reg) mmx_m2r (psllq, var, reg) #define psllq_r2r(regs,regd) mmx_r2r (psllq, regs, regd) #define psllw_i2r(imm,reg) mmx_i2r (psllw, imm, reg) #define psllw_m2r(var,reg) mmx_m2r (psllw, var, reg) #define psllw_r2r(regs,regd) mmx_r2r (psllw, regs, regd) /* Parallel shift right logical each of the fields in op2 by the unsigned number of bits in op1 (2x32, 4x16, 8x8). In the _i2r forms, op1 is an unsigned 64-bit immediate value, but only the lower 8 bits are used by the instruction */ #define psrld_i2r(imm,reg) mmx_i2r (psrld, imm, reg) #define psrld_m2r(var,reg) mmx_m2r (psrld, var, reg) #define psrld_r2r(regs,regd) mmx_r2r (psrld, regs, regd) #define psrlq_i2r(imm,reg) mmx_i2r (psrlq, imm, reg) #define psrlq_m2r(var,reg) mmx_m2r (psrlq, var, reg) #define psrlq_r2r(regs,regd) mmx_r2r (psrlq, regs, regd) #define psrlw_i2r(imm,reg) mmx_i2r (psrlw, imm, reg) #define psrlw_m2r(var,reg) mmx_m2r (psrlw, var, reg) #define psrlw_r2r(regs,regd) mmx_r2r (psrlw, regs, regd) /* Parallel shift right arithmetic each of the fields in op2 by the unsigned number of bits in op1 (4x16, 8x8). In the _i2r forms, op1 is an unsigned 64-bit immediate value, but only the lower 8 bits are used by the instruction */ #define psrad_i2r(imm,reg) mmx_i2r (psrad, imm, reg) #define psrad_m2r(var,reg) mmx_m2r (psrad, var, reg) #define psrad_r2r(regs,regd) mmx_r2r (psrad, regs, regd) #define psraw_i2r(imm,reg) mmx_i2r (psraw, imm, reg) #define psraw_m2r(var,reg) mmx_m2r (psraw, var, reg) #define psraw_r2r(regs,regd) mmx_r2r (psraw, regs, regd) /* The format conversion functions */ /* Pack and saturate the signed doublewords of op2 into the low-order words of the result, and pack and saturate the signed doublewords of op1 into the high-order words of the result. Copy the result to op2. */ #define packssdw_m2r(var,reg) mmx_m2r (packssdw, var, reg) #define packssdw_r2r(regs,regd) mmx_r2r (packssdw, regs, regd) /* Pack and saturate the signed words of op2 into the low-order bytes of the result, and pack and saturate the signed words of op1 into the high-order bytes of the result. Copy the result to op2. */ #define packsswb_m2r(var,reg) mmx_m2r (packsswb, var, reg) #define packsswb_r2r(regs,regd) mmx_r2r (packsswb, regs, regd) /* Pack and saturate the signed words of op2 into the low-order bytes of the result, and pack and saturate the signed words of op1 into the high-order bytes of the result. Copy the result to op2. */ #define packuswb_m2r(var,reg) mmx_m2r (packuswb, var, reg) #define packuswb_r2r(regs,regd) mmx_r2r (packuswb, regs, regd) /* Unpack and interleave the high-order bytes of op2 and op1 with the highest-order byte of op1 becoming the highest order byte of the result, the highest-order byte of op2 becoming the second highest byte of the result, the second highest byte of op1 becoming the third highest byte of the result, etc. Copy the result to op2 */ #define punpckhbw_m2r(var,reg) mmx_m2r (punpckhbw, var, reg) #define punpckhbw_r2r(regs,regd) mmx_r2r (punpckhbw, regs, regd) /* Same as above but with words */ #define punpckhwd_m2r(var,reg) mmx_m2r (punpckhwd, var, reg) #define punpckhwd_r2r(regs,regd) mmx_r2r (punpckhwd, regs, regd) /* Same as above but with doublewords */ #define punpckhdq_m2r(var,reg) mmx_m2r (punpckhdq, var, reg) #define punpckhdq_r2r(regs,regd) mmx_r2r (punpckhdq, regs, regd) /* Unpack and interleave the low-order bytes of op2 and op1 with the lowest-order byte of op2 becoming the lowest order byte of the result, the lowest-order byte of op1 becoming the second lowest byte of the result, the second lowest byte of op2 becoming the third lowest byte of the result, etc. Copy the result to op2. */ #define punpcklbw_m2r(var,reg) mmx_m2r (punpcklbw, var, reg) #define punpcklbw_r2r(regs,regd) mmx_r2r (punpcklbw, regs, regd) /* Same as above but with words */ #define punpcklwd_m2r(var,reg) mmx_m2r (punpcklwd, var, reg) #define punpcklwd_r2r(regs,regd) mmx_r2r (punpcklwd, regs, regd) /* Same as above but with doublewords */ #define punpckldq_m2r(var,reg) mmx_m2r (punpckldq, var, reg) #define punpckldq_r2r(regs,regd) mmx_r2r (punpckldq, regs, regd) /* 3DNOW extensions */ #define pavgusb_m2r(var,reg) mmx_m2r (pavgusb, var, reg) #define pavgusb_r2r(regs,regd) mmx_r2r (pavgusb, regs, regd) #define femms() __asm__ __volatile__ ("femms") /* AMD MMX extensions - also available in intel SSE */ #define mmx_m2ri(op,mem,reg,imm) \ __asm__ __volatile__ (#op " %1, %0, %%" #reg \ : /* nothing */ \ : "m" (mem), "i" (imm)) #define mmx_r2ri(op,regs,regd,imm) \ __asm__ __volatile__ (#op " %0, %%" #regs ", %%" #regd \ : /* nothing */ \ : "i" (imm) ) #define mmx_fetch(mem,hint) \ __asm__ __volatile__ ("prefetch" #hint " %0" \ : /* nothing */ \ : "m" (mem)) #define maskmovq(regs,maskreg) mmx_r2ri (maskmovq, regs, maskreg) #define movntq_r2m(mmreg,var) mmx_r2m (movntq, mmreg, var) #define pavgb_m2r(var,reg) mmx_m2r (pavgb, var, reg) #define pavgb_r2r(regs,regd) mmx_r2r (pavgb, regs, regd) #define pavgw_m2r(var,reg) mmx_m2r (pavgw, var, reg) #define pavgw_r2r(regs,regd) mmx_r2r (pavgw, regs, regd) #define pextrw_r2r(mmreg,reg,imm) mmx_r2ri (pextrw, mmreg, reg, imm) #define pinsrw_r2r(reg,mmreg,imm) mmx_r2ri (pinsrw, reg, mmreg, imm) #define pmaxsw_m2r(var,reg) mmx_m2r (pmaxsw, var, reg) #define pmaxsw_r2r(regs,regd) mmx_r2r (pmaxsw, regs, regd) #define pmaxub_m2r(var,reg) mmx_m2r (pmaxub, var, reg) #define pmaxub_r2r(regs,regd) mmx_r2r (pmaxub, regs, regd) #define pminsw_m2r(var,reg) mmx_m2r (pminsw, var, reg) #define pminsw_r2r(regs,regd) mmx_r2r (pminsw, regs, regd) #define pminub_m2r(var,reg) mmx_m2r (pminub, var, reg) #define pminub_r2r(regs,regd) mmx_r2r (pminub, regs, regd) #define pmovmskb(mmreg,reg) \ __asm__ __volatile__ ("movmskps %" #mmreg ", %" #reg) #define pmulhuw_m2r(var,reg) mmx_m2r (pmulhuw, var, reg) #define pmulhuw_r2r(regs,regd) mmx_r2r (pmulhuw, regs, regd) #define prefetcht0(mem) mmx_fetch (mem, t0) #define prefetcht1(mem) mmx_fetch (mem, t1) #define prefetcht2(mem) mmx_fetch (mem, t2) #define prefetchnta(mem) mmx_fetch (mem, nta) #define psadbw_m2r(var,reg) mmx_m2r (psadbw, var, reg) #define psadbw_r2r(regs,regd) mmx_r2r (psadbw, regs, regd) #define pshufw_m2r(var,reg,imm) mmx_m2ri(pshufw, var, reg, imm) #define pshufw_r2r(regs,regd,imm) mmx_r2ri(pshufw, regs, regd, imm) #define sfence() __asm__ __volatile__ ("sfence\n\t") bplaum-gavl-b9385e3/gavl/mmx/mmx_macros.h000066400000000000000000000027001513252040200203260ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include #include #include #include "mmx.h" /* * Support for mmxext * this macro produces another set of * functions in ../mmxext */ #ifdef MMXEXT // #define MOVQ_R2M(reg,mem) movntq_r2m(reg, mem) #define MOVQ_R2M(reg,mem) movq_r2m(reg, mem) #define CLEANUP emms(); // #define PREFETCH(ptr) mmx_fetch(ptr,t0) #define PREFETCH(ptr) #else #define MOVQ_R2M(reg,mem) movq_r2m(reg, mem) #define CLEANUP emms(); #define PREFETCH(ptr) #endif bplaum-gavl-b9385e3/gavl/mmx/rgb_rgb_mmx.c000066400000000000000000002643031513252040200204520ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include "mmx_macros.h" #define INTERPOLATE_USE_16 #include "interpolate.h" #ifndef MMXEXT static const mmx_t rgb_rgb_rgb32_upper_mask = { 0x00ff000000ff0000LL }; static const mmx_t rgb_rgb_rgb32_middle_mask = { 0x0000ff000000ff00LL }; static const mmx_t rgb_rgb_rgb32_lower_mask = { 0x000000ff000000ffLL }; static const mmx_t rgb_rgb_rgb32_upper_lower_mask = { 0x00ff00ff00ff00ffLL }; static const mmx_t rgba32_alpha_mask = { 0xFF000000FF000000LL }; static const mmx_t rgb_rgb_rgb16_upper_mask = { 0xf800f800f800f800LL }; static const mmx_t rgb_rgb_rgb16_middle_mask = { 0x07e007e007e007e0LL }; static const mmx_t rgb_rgb_rgb16_lower_mask = { 0x001f001f001f001fLL }; static const mmx_t rgb_rgb_rgb15_upper_mask = { 0x7C007C007C007C00LL }; static const mmx_t rgb_rgb_rgb15_middle_mask = { 0x03e003e003e003e0LL }; static const mmx_t rgb_rgb_rgb15_lower_mask = { 0x001f001f001f001fLL }; static const mmx_t rgb_rgb_rgb15_up_mask = { 0x7fe07fe07fe07fe0LL }; static const mmx_t rgb_rgb_rgb16_up_mask = { 0xffe0ffe0ffe0ffe0LL }; /* * Macros for pixel conversion */ /* * Load pixels for 32 bit formats */ #define LOAD_32 movq_m2r(*src,mm0);/* mm0: 00 B1 G1 R1 00 B0 G0 R0 */\ movq_m2r(*(src+8),mm1);/* mm1: 00 B3 G3 R3 00 B2 G2 R2 */\ movq_m2r(*(src+16),mm2);/* mm2: 00 B5 G5 R5 00 B4 G4 R4 */\ movq_m2r(*(src+24),mm3);/* mm3: 00 B7 G7 R7 00 B6 G6 R6 */ /* * Load pixels for 24 bit formats */ static const mmx_t rgb_rgb_rgb24_l = { 0x0000000000FFFFFFLL }; static const mmx_t rgb_rgb_rgb24_u = { 0x0000FFFFFF000000LL }; #define LOAD_24 movq_m2r(*src,mm0);\ movd_m2r(*(src+8),mm1);\ movq_r2r(mm0, mm4);\ psrlq_i2r(48, mm4);\ psllq_i2r(16 , mm1);\ por_r2r(mm4, mm1);\ movq_r2r(mm0, mm4);\ pand_m2r(rgb_rgb_rgb24_l, mm0);\ pand_m2r(rgb_rgb_rgb24_u, mm4);\ psllq_i2r(8, mm4);\ por_r2r(mm4, mm0);\ movq_r2r(mm1, mm4);\ pand_m2r(rgb_rgb_rgb24_l, mm1);\ pand_m2r(rgb_rgb_rgb24_u, mm4);\ psllq_i2r(8, mm4);\ por_r2r(mm4, mm1);\ movq_m2r(*(src+12),mm2);\ movd_m2r(*(src+20),mm3);\ movq_r2r(mm2, mm4);\ psrlq_i2r(48, mm4);\ psllq_i2r(16 , mm3);\ por_r2r(mm4, mm3);\ movq_r2r(mm2, mm4);\ pand_m2r(rgb_rgb_rgb24_l, mm2);\ pand_m2r(rgb_rgb_rgb24_u, mm4);\ psllq_i2r(8, mm4);\ por_r2r(mm4, mm2);\ movq_r2r(mm3, mm4);\ pand_m2r(rgb_rgb_rgb24_l, mm3);\ pand_m2r(rgb_rgb_rgb24_u, mm4);\ psllq_i2r(8, mm4);\ por_r2r(mm4, mm3); /* * Load pixels for 15/16 bit formats */ #define LOAD_16 PREFETCH(src);\ movq_m2r(*src,mm0);/* mm0: P3 P3 P2 P2 P1 P1 P0 P0 */\ movq_m2r(*(src+8),mm1);/* mm1: P7 P7 P6 P6 P5 P5 P4 P4 */ /* * Write pixels for 32 bit formats */ #define WRITE_32 MOVQ_R2M(mm0,*dst);/* mm0: 00 B1 G1 R1 00 B0 G0 R0 */\ MOVQ_R2M(mm1,*(dst+8));/* mm1: 00 B3 G3 R3 00 B2 G2 R2 */\ MOVQ_R2M(mm2,*(dst+16));/* mm2: 00 B5 G5 R5 00 B4 G4 R4 */\ MOVQ_R2M(mm3,*(dst+24));/* mm3: 00 B7 G7 R7 00 B6 G6 R6 */ /* * Write RGBA32, must call INIT_WRITE_RGBA32 before */ #define INIT_WRITE_RGBA_32 movq_m2r(rgba32_alpha_mask, mm7); #define WRITE_RGBA_32 por_r2r(mm7, mm0);\ por_r2r(mm7, mm1);\ por_r2r(mm7, mm2);\ por_r2r(mm7, mm3);\ MOVQ_R2M(mm0,*dst);/* mm0: 00 B1 G1 R1 00 B0 G0 R0 */\ MOVQ_R2M(mm1,*(dst+8));/* mm1: 00 B3 G3 R3 00 B2 G2 R2 */\ MOVQ_R2M(mm2,*(dst+16));/* mm2: 00 B5 G5 R5 00 B4 G4 R4 */\ MOVQ_R2M(mm3,*(dst+24));/* mm3: 00 B7 G7 R7 00 B6 G6 R6 */ /* * Write pixels for 24 bit formats (Start format is RGB32) */ static const mmx_t rgb_rgb_lower_dword = { 0x00000000FFFFFFFFLL }; static const mmx_t rgb_rgb_upper_dword = { 0xFFFFFFFF00000000LL }; static const mmx_t write_24_lower_mask = { 0x0000000000FFFFFFLL }; static const mmx_t write_24_upper_mask = { 0x00FFFFFF00000000LL }; #define WRITE_24 movq_r2r(mm0, mm4);\ pand_m2r(write_24_upper_mask, mm4);\ pand_m2r(write_24_lower_mask, mm0);\ psrlq_i2r(8, mm4);\ por_r2r(mm4, mm0);\ movq_r2r(mm1, mm4);\ pand_m2r(write_24_upper_mask, mm4);\ pand_m2r(write_24_lower_mask, mm1);\ psrlq_i2r(8, mm4);\ por_r2r(mm4, mm1);\ movq_r2r(mm2, mm4);\ pand_m2r(write_24_upper_mask, mm4);\ pand_m2r(write_24_lower_mask, mm2);\ psrlq_i2r(8, mm4);\ por_r2r(mm4, mm2);\ movq_r2r(mm3, mm4);\ pand_m2r(write_24_upper_mask, mm4);\ pand_m2r(write_24_lower_mask, mm3);\ psrlq_i2r(8, mm4);\ por_r2r(mm4, mm3);\ movq_r2r(mm1, mm5);\ psllq_i2r(48, mm5);\ por_r2r(mm5, mm0);\ psrlq_i2r(16, mm1);\ movq_r2r(mm3, mm5);\ psllq_i2r(48, mm5);\ por_r2r(mm5, mm2);\ psrlq_i2r(16, mm3);\ MOVQ_R2M(mm0,*dst);\ movd_r2m(mm1,*(dst+8));\ MOVQ_R2M(mm2,*(dst+12));\ movd_r2m(mm3,*(dst+20)); /* * Write pixels for 15/16 bit formats */ #define WRITE_16 MOVQ_R2M(mm0,*dst);/* mm0: P3 P3 P2 P2 P1 P1 P0 P0 */\ MOVQ_R2M(mm1,*(dst+8));/* mm1: P7 P7 P6 P6 P5 P5 P4 P4 */ #define INIT_SWAP_16 movq_m2r(rgb_rgb_rgb16_upper_mask, mm4);\ movq_m2r(rgb_rgb_rgb16_lower_mask, mm5);\ movq_m2r(rgb_rgb_rgb16_middle_mask, mm6); #define SWAP_16 movq_r2r(mm0, mm2);\ movq_r2r(mm0, mm3);\ pand_r2r(mm4, mm2);\ pand_r2r(mm5, mm3);\ pand_r2r(mm6, mm0);\ psrlq_i2r(11,mm2);\ psllq_i2r(11,mm3);\ por_r2r(mm2,mm0);\ por_r2r(mm3,mm0);\ movq_r2r(mm1, mm2);\ movq_r2r(mm1, mm3);\ pand_r2r(mm4, mm2);\ pand_r2r(mm5, mm3);\ pand_r2r(mm6, mm1);\ psrlq_i2r(11,mm2);\ psllq_i2r(11,mm3);\ por_r2r(mm2,mm1);\ por_r2r(mm3,mm1); #define INIT_SWAP_16_TO_15 movq_m2r(rgb_rgb_rgb16_upper_mask, mm4);\ movq_m2r(rgb_rgb_rgb16_lower_mask, mm5);\ movq_m2r(rgb_rgb_rgb16_middle_mask, mm6);\ movq_m2r(rgb_rgb_rgb15_middle_mask, mm7); #define SWAP_16_TO_15 movq_r2r(mm0, mm2);\ movq_r2r(mm0, mm3);\ pand_r2r(mm4, mm2);\ pand_r2r(mm5, mm3);\ pand_r2r(mm6, mm0);\ psrlq_i2r(11,mm2);\ psllq_i2r(10,mm3);\ psrlq_i2r(1,mm0);\ pand_r2r(mm7, mm0);\ por_r2r(mm2,mm0);\ por_r2r(mm3,mm0);\ movq_r2r(mm1, mm2);\ movq_r2r(mm1, mm3);\ pand_r2r(mm4, mm2);\ pand_r2r(mm5, mm3);\ pand_r2r(mm6, mm1);\ psrlq_i2r(11,mm2);\ psllq_i2r(10,mm3);\ psrlq_i2r(1,mm1);\ pand_r2r(mm7, mm1);\ por_r2r(mm2,mm1);\ por_r2r(mm3,mm1); #define INIT_SWAP_15 movq_m2r(rgb_rgb_rgb15_upper_mask, mm4);\ movq_m2r(rgb_rgb_rgb15_lower_mask, mm5);\ movq_m2r(rgb_rgb_rgb15_middle_mask, mm6); #define SWAP_15 movq_r2r(mm0, mm2);\ movq_r2r(mm0, mm3);\ pand_r2r(mm4, mm2);\ pand_r2r(mm5, mm3);\ pand_r2r(mm6, mm0);\ psrlq_i2r(10,mm2);\ psllq_i2r(10,mm3);\ por_r2r(mm2,mm0);\ por_r2r(mm3,mm0);\ movq_r2r(mm1, mm2);\ movq_r2r(mm1, mm3);\ pand_r2r(mm4, mm2);\ pand_r2r(mm5, mm3);\ pand_r2r(mm6, mm1);\ psrlq_i2r(10,mm2);\ psllq_i2r(10,mm3);\ por_r2r(mm2,mm1);\ por_r2r(mm3,mm1); #define INIT_SWAP_15_TO_16 movq_m2r(rgb_rgb_rgb15_upper_mask, mm4);\ movq_m2r(rgb_rgb_rgb15_lower_mask, mm5);\ movq_m2r(rgb_rgb_rgb15_middle_mask, mm6); #define SWAP_15_TO_16 movq_r2r(mm0, mm2);\ movq_r2r(mm0, mm3);\ pand_r2r(mm4, mm2);\ pand_r2r(mm5, mm3);\ pand_r2r(mm6, mm0);\ psrlq_i2r(10,mm2);\ psllq_i2r(11,mm3);\ psllq_i2r(1,mm0);\ por_r2r(mm2,mm0);\ por_r2r(mm3,mm0);\ movq_r2r(mm1, mm2);\ movq_r2r(mm1, mm3);\ pand_r2r(mm4, mm2);\ pand_r2r(mm5, mm3);\ pand_r2r(mm6, mm1);\ psrlq_i2r(10,mm2);\ psllq_i2r(11,mm3);\ psllq_i2r(1,mm1);\ por_r2r(mm2,mm1);\ por_r2r(mm3,mm1); #define SWAP_32 movq_r2r(mm0, mm4);\ movq_r2r(mm0, mm5);\ pand_m2r(rgb_rgb_rgb32_middle_mask, mm0);\ pand_m2r(rgb_rgb_rgb32_lower_mask, mm4);\ pand_m2r(rgb_rgb_rgb32_upper_mask, mm5);\ psllq_i2r(16, mm4);\ psrlq_i2r(16, mm5);\ por_r2r(mm4, mm0);\ por_r2r(mm5, mm0);\ movq_r2r(mm1, mm4);\ movq_r2r(mm1, mm5);\ pand_m2r(rgb_rgb_rgb32_middle_mask, mm1);\ pand_m2r(rgb_rgb_rgb32_lower_mask, mm4);\ pand_m2r(rgb_rgb_rgb32_upper_mask, mm5);\ psllq_i2r(16, mm4);\ psrlq_i2r(16, mm5);\ por_r2r(mm4, mm1);\ por_r2r(mm5, mm1);\ movq_r2r(mm2, mm4);\ movq_r2r(mm2, mm5);\ pand_m2r(rgb_rgb_rgb32_middle_mask, mm2);\ pand_m2r(rgb_rgb_rgb32_lower_mask, mm4);\ pand_m2r(rgb_rgb_rgb32_upper_mask, mm5);\ psllq_i2r(16, mm4);\ psrlq_i2r(16, mm5);\ por_r2r(mm4, mm2);\ por_r2r(mm5, mm2);\ movq_r2r(mm3, mm4);\ movq_r2r(mm3, mm5);\ pand_m2r(rgb_rgb_rgb32_middle_mask, mm3);\ pand_m2r(rgb_rgb_rgb32_lower_mask, mm4);\ pand_m2r(rgb_rgb_rgb32_upper_mask, mm5);\ psllq_i2r(16, mm4);\ psrlq_i2r(16, mm5);\ por_r2r(mm4, mm3);\ por_r2r(mm5, mm3); static const mmx_t rgb_rgb_swap_24_mask_11 = { 0x0000FF0000FF0000LL }; static const mmx_t rgb_rgb_swap_24_mask_12 = { 0x00000000FF0000FFLL }; static const mmx_t rgb_rgb_swap_24_mask_13 = { 0xFFFF00FF0000FF00LL }; static const mmx_t rgb_rgb_swap_24_mask_21 = { 0xFF00FFFFFFFFFFFFLL }; static const mmx_t rgb_rgb_swap_24_mask_22 = { 0x00000000000000FFLL }; static const mmx_t rgb_rgb_swap_24_mask_23 = { 0x00000000FFFFFF00LL }; static const mmx_t rgb_rgb_swap_24_mask_31 = { 0x00000000FF000000LL }; static const mmx_t rgb_rgb_swap_24_mask_32 = { 0x000000000000FF00LL }; static const mmx_t rgb_rgb_swap_24_mask_33 = { 0x0000000000FF00FFLL }; #define SWAP_24 movq_m2r(*src, mm0);\ movd_m2r(*(src+8), mm1);\ movq_r2r(mm0, mm2);\ movq_r2r(mm0, mm3);\ pand_m2r(rgb_rgb_swap_24_mask_13, mm0);\ pand_m2r(rgb_rgb_swap_24_mask_12, mm2);\ pand_m2r(rgb_rgb_swap_24_mask_11, mm3);\ psrlq_i2r(16, mm3);\ psllq_i2r(16, mm2);\ por_r2r(mm2, mm0);\ por_r2r(mm3, mm0);\ movq_r2r(mm0, mm2);\ movq_r2r(mm1, mm3);\ pand_m2r(rgb_rgb_swap_24_mask_21, mm0);\ pand_m2r(rgb_rgb_swap_24_mask_22, mm3);\ psllq_i2r(48, mm3);\ por_r2r(mm3, mm0);\ pand_m2r(rgb_rgb_swap_24_mask_23, mm1);\ psrlq_i2r(48, mm2);\ pand_m2r(rgb_rgb_swap_24_mask_22, mm2);\ por_r2r(mm2, mm1);\ movq_r2r(mm1, mm2);\ movq_r2r(mm1, mm3);\ pand_m2r(rgb_rgb_swap_24_mask_31, mm2);\ pand_m2r(rgb_rgb_swap_24_mask_32, mm3);\ pand_m2r(rgb_rgb_swap_24_mask_33, mm1);\ psrlq_i2r(16, mm2);\ psllq_i2r(16, mm3);\ por_r2r(mm3, mm1);\ por_r2r(mm2, mm1);\ MOVQ_R2M(mm0, *dst);\ movd_r2m(mm1, *(dst+8));\ movq_m2r(*(src+12), mm0);\ movd_m2r(*(src+20), mm1);\ movq_r2r(mm0, mm2);\ movq_r2r(mm0, mm3);\ pand_m2r(rgb_rgb_swap_24_mask_13, mm0);\ pand_m2r(rgb_rgb_swap_24_mask_12, mm2);\ pand_m2r(rgb_rgb_swap_24_mask_11, mm3);\ psrlq_i2r(16, mm3);\ psllq_i2r(16, mm2);\ por_r2r(mm2, mm0);\ por_r2r(mm3, mm0);\ movq_r2r(mm0, mm2);\ movq_r2r(mm1, mm3);\ pand_m2r(rgb_rgb_swap_24_mask_21, mm0);\ pand_m2r(rgb_rgb_swap_24_mask_22, mm3);\ psllq_i2r(48, mm3);\ por_r2r(mm3, mm0);\ pand_m2r(rgb_rgb_swap_24_mask_23, mm1);\ psrlq_i2r(48, mm2);\ pand_m2r(rgb_rgb_swap_24_mask_22, mm2);\ por_r2r(mm2, mm1);\ movq_r2r(mm1, mm2);\ movq_r2r(mm1, mm3);\ pand_m2r(rgb_rgb_swap_24_mask_31, mm2);\ pand_m2r(rgb_rgb_swap_24_mask_32, mm3);\ pand_m2r(rgb_rgb_swap_24_mask_33, mm1);\ psrlq_i2r(16, mm2);\ psllq_i2r(16, mm3);\ por_r2r(mm3, mm1);\ por_r2r(mm2, mm1);\ MOVQ_R2M(mm0, *(dst+12));\ movd_r2m(mm1, *(dst+20)); /* Pack 15 bits to 16 bits */ #define INIT_RGB_15_TO_16 movq_m2r(rgb_rgb_rgb15_up_mask, mm3);\ movq_m2r(rgb_rgb_rgb15_lower_mask, mm4); \ #define RGB_15_TO_16 movq_r2r(mm0, mm2);\ pand_r2r(mm3, mm2);\ psllq_i2r(1, mm2);\ pand_r2r(mm4, mm0);\ por_r2r(mm2, mm0);\ movq_r2r(mm1, mm2);\ pand_r2r(mm3, mm2);\ psllq_i2r(1, mm2);\ pand_r2r(mm4, mm1);\ por_r2r(mm2, mm1); #define INIT_RGB_16_TO_15 movq_m2r(rgb_rgb_rgb16_up_mask, mm3);\ movq_m2r(rgb_rgb_rgb16_lower_mask, mm4); #define RGB_16_TO_15 movq_r2r(mm0, mm2);\ psrlq_i2r(1, mm2);\ pand_r2r(mm3, mm2);\ pand_r2r(mm4, mm0);\ por_r2r(mm2, mm0);\ movq_r2r(mm1, mm2);\ psrlq_i2r(1, mm2);\ pand_r2r(mm3, mm2);\ pand_r2r(mm4, mm1);\ por_r2r(mm2, mm1); #define RGB_15_TO_32 pxor_r2r(mm3, mm3);/* Zero mm3 */\ movq_r2r(mm0, mm2);/* mm2: P3 P3 P2 P2 P1 P1 P0 P0 */\ pand_m2r(rgb_rgb_rgb15_lower_mask, mm2);\ psllq_i2r(3, mm2);\ movq_r2r(mm2, mm6);\ punpcklbw_r2r(mm3, mm6);/* mm6: 00 00 00 R1 00 00 00 R0 */\ movq_r2r(mm2, mm7);\ punpckhbw_r2r(mm3, mm7);/* mm7: 00 00 00 R3 00 00 00 R2 */\ movq_r2r(mm0, mm2);/* mm2: P3 P3 P2 P2 P1 P1 P0 P0 */\ pand_m2r(rgb_rgb_rgb15_middle_mask, mm2);\ psrlq_i2r(2, mm2);\ punpcklbw_r2r(mm2, mm3);/* mm3: 00 00 G1 00 00 00 G0 00 */\ por_r2r(mm3, mm6);/* mm6: 00 00 G1 R1 00 00 G0 R0 */\ pxor_r2r(mm3, mm3);/* Zero mm3;*/\ punpckhbw_r2r(mm2, mm3);/* mm3: 00 00 00 R3 00 00 00 R2 */\ por_r2r(mm3, mm7);/* mm7: 00 00 G3 R3 00 00 G2 R2 */\ pand_m2r(rgb_rgb_rgb15_upper_mask, mm0);\ psllq_i2r(1, mm0);\ movq_r2r(mm0, mm2);\ pxor_r2r(mm3, mm3);/* Zero mm3;*/\ punpcklbw_r2r(mm3, mm2);/* mm2: 00 B1 00 00 00 B0 00 00 */\ por_r2r(mm2, mm6);\ punpckhbw_r2r(mm3, mm0);/* mm2: 00 B1 00 00 00 B0 00 00 */\ por_r2r(mm0, mm7);\ MOVQ_R2M(mm6,*dst);/* mm6: 00 B1 G1 R1 00 B0 G0 R0 */\ MOVQ_R2M(mm7,*(dst+8));/* mm7: 00 B3 G3 R3 00 B2 G2 R2 */\ movq_r2r(mm1, mm2);/* mm2: P3 P3 P2 P2 P1 P1 P0 P0 */\ pand_m2r(rgb_rgb_rgb15_lower_mask, mm2);\ psllq_i2r(3, mm2);\ movq_r2r(mm2, mm6);\ punpcklbw_r2r(mm3, mm6);/* mm6: 00 00 00 R1 00 00 00 R0 */\ movq_r2r(mm2, mm7);\ punpckhbw_r2r(mm3, mm7);/* mm7: 00 00 00 R3 00 00 00 R2 */\ movq_r2r(mm1, mm2);/* mm2: P3 P3 P2 P2 P1 P1 P0 P0 */\ pand_m2r(rgb_rgb_rgb15_middle_mask, mm2);\ psrlq_i2r(2, mm2);\ punpcklbw_r2r(mm2, mm3);/* mm3: 00 00 G1 00 00 00 G0 00 */\ por_r2r(mm3, mm6);/* mm6: 00 00 G1 R1 00 00 G0 R0 */\ pxor_r2r(mm3, mm3);/* Zero mm3;*/\ punpckhbw_r2r(mm2, mm3);/* mm3: 00 00 00 R3 00 00 00 R2 */\ por_r2r(mm3, mm7);/* mm7: 00 00 G3 R3 00 00 G2 R2 */\ pand_m2r(rgb_rgb_rgb15_upper_mask, mm1);\ psllq_i2r(1, mm1);\ movq_r2r(mm1, mm2);\ pxor_r2r(mm3, mm3);/* Zero mm3;*/\ punpcklbw_r2r(mm3, mm2);/* mm2: 00 B1 00 00 00 B0 00 00 */\ por_r2r(mm2, mm6);\ punpckhbw_r2r(mm3, mm1);/* mm2: 00 B1 00 00 00 B0 00 00 */\ por_r2r(mm1, mm7);\ MOVQ_R2M(mm6,*(dst+16));/* mm6: 00 B1 G1 R1 00 B0 G0 R0 */\ MOVQ_R2M(mm7,*(dst+24));/* mm7: 00 B3 G3 R3 00 B2 G2 R2 */ #define RGB_15_TO_24 pxor_r2r(mm3, mm3);/* Zero mm3 */\ movq_r2r(mm0, mm2);/* mm2: P3 P3 P2 P2 P1 P1 P0 P0 */\ pand_m2r(rgb_rgb_rgb15_lower_mask, mm2);\ psllq_i2r(3, mm2);\ movq_r2r(mm2, mm6);\ punpcklbw_r2r(mm3, mm6);/* mm6: 00 00 00 R1 00 00 00 R0 */\ movq_r2r(mm2, mm7);\ punpckhbw_r2r(mm3, mm7);/* mm7: 00 00 00 R3 00 00 00 R2 */\ movq_r2r(mm0, mm2);/* mm2: P3 P3 P2 P2 P1 P1 P0 P0 */\ pand_m2r(rgb_rgb_rgb15_middle_mask, mm2);\ psrlq_i2r(2, mm2);\ punpcklbw_r2r(mm2, mm3);/* mm3: 00 00 G1 00 00 00 G0 00 */\ por_r2r(mm3, mm6);/* mm6: 00 00 G1 R1 00 00 G0 R0 */\ pxor_r2r(mm3, mm3);/* Zero mm3;*/\ punpckhbw_r2r(mm2, mm3);/* mm3: 00 00 00 R3 00 00 00 R2 */\ por_r2r(mm3, mm7);/* mm7: 00 00 G3 R3 00 00 G2 R2 */\ pand_m2r(rgb_rgb_rgb15_upper_mask, mm0);\ psllq_i2r(1, mm0);\ movq_r2r(mm0, mm2);\ pxor_r2r(mm3, mm3);/* Zero mm3;*/\ punpcklbw_r2r(mm3, mm2);/* mm2: 00 B1 00 00 00 B0 00 00 */\ por_r2r(mm2, mm6);\ punpckhbw_r2r(mm3, mm0);/* mm2: 00 B1 00 00 00 B0 00 00 */\ por_r2r(mm0, mm7);\ /* 32 -> 24 */\ movq_r2r(mm6, mm5);\ pand_m2r(rgb_rgb_lower_dword, mm5);\ pand_m2r(rgb_rgb_upper_dword, mm6);\ psrlq_i2r(8, mm6);\ por_r2r(mm5, mm6);\ movq_r2r(mm7, mm5);\ pand_m2r(rgb_rgb_lower_dword, mm5);\ pand_m2r(rgb_rgb_upper_dword, mm7);\ psrlq_i2r(8, mm7);\ por_r2r(mm5, mm7);\ movq_r2r(mm7, mm5);\ psllq_i2r(48, mm5);\ por_r2r(mm5, mm6);\ psrlq_i2r(16, mm7);\ MOVQ_R2M(mm6,*dst);\ movd_r2m(mm7,*(dst+8));\ /* Next 4 pixels */\ movq_r2r(mm1, mm2);/* mm2: P3 P3 P2 P2 P1 P1 P0 P0 */\ pand_m2r(rgb_rgb_rgb15_lower_mask, mm2);\ psllq_i2r(3, mm2);\ movq_r2r(mm2, mm6);\ punpcklbw_r2r(mm3, mm6);/* mm6: 00 00 00 R1 00 00 00 R0 */\ movq_r2r(mm2, mm7);\ punpckhbw_r2r(mm3, mm7);/* mm7: 00 00 00 R3 00 00 00 R2 */\ movq_r2r(mm1, mm2);/* mm2: P3 P3 P2 P2 P1 P1 P0 P0 */\ pand_m2r(rgb_rgb_rgb15_middle_mask, mm2);\ psrlq_i2r(2, mm2);\ punpcklbw_r2r(mm2, mm3);/* mm3: 00 00 G1 00 00 00 G0 00 */\ por_r2r(mm3, mm6);/* mm6: 00 00 G1 R1 00 00 G0 R0 */\ pxor_r2r(mm3, mm3);/* Zero mm3;*/\ punpckhbw_r2r(mm2, mm3);/* mm3: 00 00 00 R3 00 00 00 R2 */\ por_r2r(mm3, mm7);/* mm7: 00 00 G3 R3 00 00 G2 R2 */\ pand_m2r(rgb_rgb_rgb15_upper_mask, mm1);\ psllq_i2r(1, mm1);\ movq_r2r(mm1, mm2);\ pxor_r2r(mm3, mm3);/* Zero mm3;*/\ punpcklbw_r2r(mm3, mm2);/* mm2: 00 B1 00 00 00 B0 00 00 */\ por_r2r(mm2, mm6);\ punpckhbw_r2r(mm3, mm1);/* mm2: 00 B1 00 00 00 B0 00 00 */\ por_r2r(mm1, mm7);\ /* 32 -> 24 */\ movq_r2r(mm6, mm5);\ pand_m2r(rgb_rgb_lower_dword, mm5);\ pand_m2r(rgb_rgb_upper_dword, mm6);\ psrlq_i2r(8, mm6);\ por_r2r(mm5, mm6);\ movq_r2r(mm7, mm5);\ pand_m2r(rgb_rgb_lower_dword, mm5);\ pand_m2r(rgb_rgb_upper_dword, mm7);\ psrlq_i2r(8, mm7);\ por_r2r(mm5, mm7);\ movq_r2r(mm7, mm5);\ psllq_i2r(48, mm5);\ por_r2r(mm5, mm6);\ psrlq_i2r(16, mm7);\ MOVQ_R2M(mm6,*(dst+12));\ movd_r2m(mm7,*(dst+20)); #define RGB_15_TO_32_RGBA pxor_r2r(mm3, mm3);/* Zero mm3 */\ movq_r2r(mm0, mm2);/* mm2: P3 P3 P2 P2 P1 P1 P0 P0 */\ pand_m2r(rgb_rgb_rgb15_lower_mask, mm2);\ psllq_i2r(3, mm2);\ movq_r2r(mm2, mm6);\ punpcklbw_r2r(mm3, mm6);/* mm6: 00 00 00 R1 00 00 00 R0 */\ movq_r2r(mm2, mm7);\ punpckhbw_r2r(mm3, mm7);/* mm7: 00 00 00 R3 00 00 00 R2 */\ movq_r2r(mm0, mm2);/* mm2: P3 P3 P2 P2 P1 P1 P0 P0 */\ pand_m2r(rgb_rgb_rgb15_middle_mask, mm2);\ psrlq_i2r(2, mm2);\ punpcklbw_r2r(mm2, mm3);/* mm3: 00 00 G1 00 00 00 G0 00 */\ por_r2r(mm3, mm6);/* mm6: 00 00 G1 R1 00 00 G0 R0 */\ pxor_r2r(mm3, mm3);/* Zero mm3;*/\ punpckhbw_r2r(mm2, mm3);/* mm3: 00 00 00 R3 00 00 00 R2 */\ por_r2r(mm3, mm7);/* mm7: 00 00 G3 R3 00 00 G2 R2 */\ pand_m2r(rgb_rgb_rgb15_upper_mask, mm0);\ psllq_i2r(1, mm0);\ movq_r2r(mm0, mm2);\ pxor_r2r(mm3, mm3);/* Zero mm3;*/\ punpcklbw_r2r(mm3, mm2);/* mm2: 00 B1 00 00 00 B0 00 00 */\ por_r2r(mm2, mm6);\ punpckhbw_r2r(mm3, mm0);/* mm2: 00 B1 00 00 00 B0 00 00 */\ por_r2r(mm0, mm7);\ por_m2r(rgba32_alpha_mask, mm6);\ por_m2r(rgba32_alpha_mask, mm7);\ MOVQ_R2M(mm6,*dst);/* mm6: 00 B1 G1 R1 00 B0 G0 R0 */\ MOVQ_R2M(mm7,*(dst+8));/* mm7: 00 B3 G3 R3 00 B2 G2 R2 */\ movq_r2r(mm1, mm2);/* mm2: P3 P3 P2 P2 P1 P1 P0 P0 */\ pand_m2r(rgb_rgb_rgb15_lower_mask, mm2);\ psllq_i2r(3, mm2);\ movq_r2r(mm2, mm6);\ punpcklbw_r2r(mm3, mm6);/* mm6: 00 00 00 R1 00 00 00 R0 */\ movq_r2r(mm2, mm7);\ punpckhbw_r2r(mm3, mm7);/* mm7: 00 00 00 R3 00 00 00 R2 */\ movq_r2r(mm1, mm2);/* mm2: P3 P3 P2 P2 P1 P1 P0 P0 */\ pand_m2r(rgb_rgb_rgb15_middle_mask, mm2);\ psrlq_i2r(2, mm2);\ punpcklbw_r2r(mm2, mm3);/* mm3: 00 00 G1 00 00 00 G0 00 */\ por_r2r(mm3, mm6);/* mm6: 00 00 G1 R1 00 00 G0 R0 */\ pxor_r2r(mm3, mm3);/* Zero mm3;*/\ punpckhbw_r2r(mm2, mm3);/* mm3: 00 00 00 R3 00 00 00 R2 */\ por_r2r(mm3, mm7);/* mm7: 00 00 G3 R3 00 00 G2 R2 */\ pand_m2r(rgb_rgb_rgb15_upper_mask, mm1);\ psllq_i2r(1, mm1);\ movq_r2r(mm1, mm2);\ pxor_r2r(mm3, mm3);/* Zero mm3;*/\ punpcklbw_r2r(mm3, mm2);/* mm2: 00 B1 00 00 00 B0 00 00 */\ por_r2r(mm2, mm6);\ punpckhbw_r2r(mm3, mm1);/* mm2: 00 B1 00 00 00 B0 00 00 */\ por_r2r(mm1, mm7);\ por_m2r(rgba32_alpha_mask, mm6);\ por_m2r(rgba32_alpha_mask, mm7);\ MOVQ_R2M(mm6,*(dst+16));/* mm6: 00 B1 G1 R1 00 B0 G0 R0 */\ MOVQ_R2M(mm7,*(dst+24));/* mm7: 00 B3 G3 R3 00 B2 G2 R2 */ #define RGB_16_TO_32 pxor_r2r(mm3, mm3);/* Zero mm3 */\ movq_r2r(mm0, mm2);/* mm2: P3 P3 P2 P2 P1 P1 P0 P0 */\ pand_m2r(rgb_rgb_rgb16_lower_mask, mm2);\ psllq_i2r(3, mm2);\ movq_r2r(mm2, mm6);\ punpcklbw_r2r(mm3, mm6);/* mm6: 00 00 00 R1 00 00 00 R0 */\ movq_r2r(mm2, mm7);\ punpckhbw_r2r(mm3, mm7);/* mm7: 00 00 00 R3 00 00 00 R2 */\ movq_r2r(mm0, mm2);/* mm2: P3 P3 P2 P2 P1 P1 P0 P0 */\ pand_m2r(rgb_rgb_rgb16_middle_mask, mm2);\ psrlq_i2r(3, mm2);\ punpcklbw_r2r(mm2, mm3);/* mm3: 00 00 G1 00 00 00 G0 00 */\ por_r2r(mm3, mm6);/* mm6: 00 00 G1 R1 00 00 G0 R0 */\ pxor_r2r(mm3, mm3);/* Zero mm3;*/\ punpckhbw_r2r(mm2, mm3);/* mm3: 00 00 00 R3 00 00 00 R2 */\ por_r2r(mm3, mm7);/* mm7: 00 00 G3 R3 00 00 G2 R2 */\ pand_m2r(rgb_rgb_rgb16_upper_mask, mm0);\ movq_r2r(mm0, mm2);\ pxor_r2r(mm3, mm3);/* Zero mm3;*/\ punpcklbw_r2r(mm3, mm2);/* mm2: 00 B1 00 00 00 B0 00 00 */\ por_r2r(mm2, mm6);\ punpckhbw_r2r(mm3, mm0);/* mm2: 00 B1 00 00 00 B0 00 00 */\ por_r2r(mm0, mm7);\ MOVQ_R2M(mm6,*dst);/* mm6: 00 B1 G1 R1 00 B0 G0 R0 */\ MOVQ_R2M(mm7,*(dst+8));/* mm7: 00 B3 G3 R3 00 B2 G2 R2 */\ movq_r2r(mm1, mm2);/* mm2: P3 P3 P2 P2 P1 P1 P0 P0 */\ pand_m2r(rgb_rgb_rgb16_lower_mask, mm2);\ psllq_i2r(3, mm2);\ movq_r2r(mm2, mm6);\ punpcklbw_r2r(mm3, mm6);/* mm6: 00 00 00 R1 00 00 00 R0 */\ movq_r2r(mm2, mm7);\ punpckhbw_r2r(mm3, mm7);/* mm7: 00 00 00 R3 00 00 00 R2 */\ movq_r2r(mm1, mm2);/* mm2: P3 P3 P2 P2 P1 P1 P0 P0 */\ pand_m2r(rgb_rgb_rgb16_middle_mask, mm2);\ psrlq_i2r(3, mm2);\ punpcklbw_r2r(mm2, mm3);/* mm3: 00 00 G1 00 00 00 G0 00 */\ por_r2r(mm3, mm6);/* mm6: 00 00 G1 R1 00 00 G0 R0 */\ pxor_r2r(mm3, mm3);/* Zero mm3;*/\ punpckhbw_r2r(mm2, mm3);/* mm3: 00 00 00 R3 00 00 00 R2 */\ por_r2r(mm3, mm7);/* mm7: 00 00 G3 R3 00 00 G2 R2 */\ pand_m2r(rgb_rgb_rgb16_upper_mask, mm1);\ movq_r2r(mm1, mm2);\ pxor_r2r(mm3, mm3);/* Zero mm3;*/\ punpcklbw_r2r(mm3, mm2);/* mm2: 00 B1 00 00 00 B0 00 00 */\ por_r2r(mm2, mm6);\ punpckhbw_r2r(mm3, mm1);/* mm2: 00 B1 00 00 00 B0 00 00 */\ por_r2r(mm1, mm7);\ MOVQ_R2M(mm6,*(dst+16));/* mm6: 00 B1 G1 R1 00 B0 G0 R0 */\ MOVQ_R2M(mm7,*(dst+24));/* mm7: 00 B3 G3 R3 00 B2 G2 R2 */ #define RGB_16_TO_24 pxor_r2r(mm3, mm3);/* Zero mm3 */\ movq_r2r(mm0, mm2);/* mm2: P3 P3 P2 P2 P1 P1 P0 P0 */\ pand_m2r(rgb_rgb_rgb16_lower_mask, mm2);\ psllq_i2r(3, mm2);\ movq_r2r(mm2, mm6);\ punpcklbw_r2r(mm3, mm6);/* mm6: 00 00 00 R1 00 00 00 R0 */\ movq_r2r(mm2, mm7);\ punpckhbw_r2r(mm3, mm7);/* mm7: 00 00 00 R3 00 00 00 R2 */\ movq_r2r(mm0, mm2);/* mm2: P3 P3 P2 P2 P1 P1 P0 P0 */\ pand_m2r(rgb_rgb_rgb16_middle_mask, mm2);\ psrlq_i2r(3, mm2);\ punpcklbw_r2r(mm2, mm3);/* mm3: 00 00 G1 00 00 00 G0 00 */\ por_r2r(mm3, mm6);/* mm6: 00 00 G1 R1 00 00 G0 R0 */\ pxor_r2r(mm3, mm3);/* Zero mm3;*/\ punpckhbw_r2r(mm2, mm3);/* mm3: 00 00 00 R3 00 00 00 R2 */\ por_r2r(mm3, mm7);/* mm7: 00 00 G3 R3 00 00 G2 R2 */\ pand_m2r(rgb_rgb_rgb16_upper_mask, mm0);\ movq_r2r(mm0, mm2);\ pxor_r2r(mm3, mm3);/* Zero mm3;*/\ punpcklbw_r2r(mm3, mm2);/* mm2: 00 B1 00 00 00 B0 00 00 */\ por_r2r(mm2, mm6);\ punpckhbw_r2r(mm3, mm0);/* mm2: 00 B1 00 00 00 B0 00 00 */\ por_r2r(mm0, mm7);\ /* 32 -> 24 */\ movq_r2r(mm6, mm5);\ pand_m2r(rgb_rgb_lower_dword, mm5);\ pand_m2r(rgb_rgb_upper_dword, mm6);\ psrlq_i2r(8, mm6);\ por_r2r(mm5, mm6);\ movq_r2r(mm7, mm5);\ pand_m2r(rgb_rgb_lower_dword, mm5);\ pand_m2r(rgb_rgb_upper_dword, mm7);\ psrlq_i2r(8, mm7);\ por_r2r(mm5, mm7);\ movq_r2r(mm7, mm5);\ psllq_i2r(48, mm5);\ por_r2r(mm5, mm6);\ psrlq_i2r(16, mm7);\ MOVQ_R2M(mm6,*dst);\ movd_r2m(mm7,*(dst+8));\ movq_r2r(mm1, mm2);/* mm2: P3 P3 P2 P2 P1 P1 P0 P0 */\ pand_m2r(rgb_rgb_rgb16_lower_mask, mm2);\ psllq_i2r(3, mm2);\ movq_r2r(mm2, mm6);\ punpcklbw_r2r(mm3, mm6);/* mm6: 00 00 00 R1 00 00 00 R0 */\ movq_r2r(mm2, mm7);\ punpckhbw_r2r(mm3, mm7);/* mm7: 00 00 00 R3 00 00 00 R2 */\ movq_r2r(mm1, mm2);/* mm2: P3 P3 P2 P2 P1 P1 P0 P0 */\ pand_m2r(rgb_rgb_rgb16_middle_mask, mm2);\ psrlq_i2r(3, mm2);\ punpcklbw_r2r(mm2, mm3);/* mm3: 00 00 G1 00 00 00 G0 00 */\ por_r2r(mm3, mm6);/* mm6: 00 00 G1 R1 00 00 G0 R0 */\ pxor_r2r(mm3, mm3);/* Zero mm3;*/\ punpckhbw_r2r(mm2, mm3);/* mm3: 00 00 00 R3 00 00 00 R2 */\ por_r2r(mm3, mm7);/* mm7: 00 00 G3 R3 00 00 G2 R2 */\ pand_m2r(rgb_rgb_rgb16_upper_mask, mm1);\ movq_r2r(mm1, mm2);\ pxor_r2r(mm3, mm3);/* Zero mm3;*/\ punpcklbw_r2r(mm3, mm2);/* mm2: 00 B1 00 00 00 B0 00 00 */\ por_r2r(mm2, mm6);\ punpckhbw_r2r(mm3, mm1);/* mm2: 00 B1 00 00 00 B0 00 00 */\ por_r2r(mm1, mm7);\ /* 32 -> 24 */\ movq_r2r(mm6, mm5);\ pand_m2r(rgb_rgb_lower_dword, mm5);\ pand_m2r(rgb_rgb_upper_dword, mm6);\ psrlq_i2r(8, mm6);\ por_r2r(mm5, mm6);\ movq_r2r(mm7, mm5);\ pand_m2r(rgb_rgb_lower_dword, mm5);\ pand_m2r(rgb_rgb_upper_dword, mm7);\ psrlq_i2r(8, mm7);\ por_r2r(mm5, mm7);\ movq_r2r(mm7, mm5);\ psllq_i2r(48, mm5);\ por_r2r(mm5, mm6);\ psrlq_i2r(16, mm7);\ MOVQ_R2M(mm6,*(dst+12));\ movd_r2m(mm7,*(dst+20)); #define RGB_16_TO_32_RGBA pxor_r2r(mm3, mm3);/* Zero mm3 */\ movq_r2r(mm0, mm2);/* mm2: P3 P3 P2 P2 P1 P1 P0 P0 */\ pand_m2r(rgb_rgb_rgb16_lower_mask, mm2);\ psllq_i2r(3, mm2);\ movq_r2r(mm2, mm6);\ punpcklbw_r2r(mm3, mm6);/* mm6: 00 00 00 R1 00 00 00 R0 */\ movq_r2r(mm2, mm7);\ punpckhbw_r2r(mm3, mm7);/* mm7: 00 00 00 R3 00 00 00 R2 */\ movq_r2r(mm0, mm2);/* mm2: P3 P3 P2 P2 P1 P1 P0 P0 */\ pand_m2r(rgb_rgb_rgb16_middle_mask, mm2);\ psrlq_i2r(3, mm2);\ punpcklbw_r2r(mm2, mm3);/* mm3: 00 00 G1 00 00 00 G0 00 */\ por_r2r(mm3, mm6);/* mm6: 00 00 G1 R1 00 00 G0 R0 */\ pxor_r2r(mm3, mm3);/* Zero mm3;*/\ punpckhbw_r2r(mm2, mm3);/* mm3: 00 00 00 R3 00 00 00 R2 */\ por_r2r(mm3, mm7);/* mm7: 00 00 G3 R3 00 00 G2 R2 */\ pand_m2r(rgb_rgb_rgb16_upper_mask, mm0);\ movq_r2r(mm0, mm2);\ pxor_r2r(mm3, mm3);/* Zero mm3;*/\ punpcklbw_r2r(mm3, mm2);/* mm2: 00 B1 00 00 00 B0 00 00 */\ por_r2r(mm2, mm6);\ punpckhbw_r2r(mm3, mm0);/* mm2: 00 B1 00 00 00 B0 00 00 */\ por_r2r(mm0, mm7);\ por_m2r(rgba32_alpha_mask, mm6);\ por_m2r(rgba32_alpha_mask, mm7);\ MOVQ_R2M(mm6,*dst);/* mm6: 00 B1 G1 R1 00 B0 G0 R0 */\ MOVQ_R2M(mm7,*(dst+8));/* mm7: 00 B3 G3 R3 00 B2 G2 R2 */\ movq_r2r(mm1, mm2);/* mm2: P3 P3 P2 P2 P1 P1 P0 P0 */\ pand_m2r(rgb_rgb_rgb16_lower_mask, mm2);\ psllq_i2r(3, mm2);\ movq_r2r(mm2, mm6);\ punpcklbw_r2r(mm3, mm6);/* mm6: 00 00 00 R1 00 00 00 R0 */\ movq_r2r(mm2, mm7);\ punpckhbw_r2r(mm3, mm7);/* mm7: 00 00 00 R3 00 00 00 R2 */\ movq_r2r(mm1, mm2);/* mm2: P3 P3 P2 P2 P1 P1 P0 P0 */\ pand_m2r(rgb_rgb_rgb16_middle_mask, mm2);\ psrlq_i2r(3, mm2);\ punpcklbw_r2r(mm2, mm3);/* mm3: 00 00 G1 00 00 00 G0 00 */\ por_r2r(mm3, mm6);/* mm6: 00 00 G1 R1 00 00 G0 R0 */\ pxor_r2r(mm3, mm3);/* Zero mm3;*/\ punpckhbw_r2r(mm2, mm3);/* mm3: 00 00 00 R3 00 00 00 R2 */\ por_r2r(mm3, mm7);/* mm7: 00 00 G3 R3 00 00 G2 R2 */\ pand_m2r(rgb_rgb_rgb16_upper_mask, mm1);\ movq_r2r(mm1, mm2);\ pxor_r2r(mm3, mm3);/* Zero mm3;*/\ punpcklbw_r2r(mm3, mm2);/* mm2: 00 B1 00 00 00 B0 00 00 */\ por_r2r(mm2, mm6);\ punpckhbw_r2r(mm3, mm1);/* mm2: 00 B1 00 00 00 B0 00 00 */\ por_r2r(mm1, mm7);\ por_m2r(rgba32_alpha_mask, mm6);\ por_m2r(rgba32_alpha_mask, mm7);\ MOVQ_R2M(mm6,*(dst+16));/* mm6: 00 B1 G1 R1 00 B0 G0 R0 */\ MOVQ_R2M(mm7,*(dst+24));/* mm7: 00 B3 G3 R3 00 B2 G2 R2 */ #define RGB_15_TO_32_SWAP pxor_r2r(mm3, mm3);/* Zero mm3 */\ movq_r2r(mm0, mm2);/* mm2: P3 P3 P2 P2 P1 P1 P0 P0 */\ pand_m2r(rgb_rgb_rgb15_upper_mask, mm2);\ psrlq_i2r(7, mm2);\ movq_r2r(mm2, mm6);\ punpcklbw_r2r(mm3, mm6);/* mm6: 00 00 00 R1 00 00 00 R0 */\ movq_r2r(mm2, mm7);\ punpckhbw_r2r(mm3, mm7);/* mm7: 00 00 00 R3 00 00 00 R2 */\ movq_r2r(mm0, mm2);/* mm2: P3 P3 P2 P2 P1 P1 P0 P0 */\ pand_m2r(rgb_rgb_rgb15_middle_mask, mm2);\ psrlq_i2r(2, mm2);\ punpcklbw_r2r(mm2, mm3);/* mm3: 00 00 G1 00 00 00 G0 00 */\ por_r2r(mm3, mm6);/* mm6: 00 00 G1 R1 00 00 G0 R0 */\ pxor_r2r(mm3, mm3);/* Zero mm3;*/\ punpckhbw_r2r(mm2, mm3);/* mm3: 00 00 00 R3 00 00 00 R2 */\ por_r2r(mm3, mm7);/* mm7: 00 00 G3 R3 00 00 G2 R2 */\ pand_m2r(rgb_rgb_rgb15_lower_mask, mm0);\ psllq_i2r(11, mm0);\ movq_r2r(mm0, mm2);\ pxor_r2r(mm3, mm3);/* Zero mm3;*/\ punpcklbw_r2r(mm3, mm2);/* mm2: 00 B1 00 00 00 B0 00 00 */\ por_r2r(mm2, mm6);\ punpckhbw_r2r(mm3, mm0);/* mm2: 00 B1 00 00 00 B0 00 00 */\ por_r2r(mm0, mm7);\ MOVQ_R2M(mm6,*dst);/* mm6: 00 B1 G1 R1 00 B0 G0 R0 */\ MOVQ_R2M(mm7,*(dst+8));/* mm7: 00 B3 G3 R3 00 B2 G2 R2 */\ movq_r2r(mm1, mm2);\ pand_m2r(rgb_rgb_rgb15_upper_mask, mm2);\ psrlq_i2r(7, mm2);\ movq_r2r(mm2, mm6);\ punpcklbw_r2r(mm3, mm6);\ movq_r2r(mm2, mm7);\ punpckhbw_r2r(mm3, mm7);\ movq_r2r(mm1, mm2);\ pand_m2r(rgb_rgb_rgb15_middle_mask, mm2);\ psrlq_i2r(2, mm2);\ punpcklbw_r2r(mm2, mm3);\ por_r2r(mm3, mm6);\ pxor_r2r(mm3, mm3);\ punpckhbw_r2r(mm2, mm3);\ por_r2r(mm3, mm7);\ pand_m2r(rgb_rgb_rgb15_lower_mask, mm1);\ psllq_i2r(11, mm1);\ movq_r2r(mm1, mm2);\ pxor_r2r(mm3, mm3);\ punpcklbw_r2r(mm3, mm2);\ por_r2r(mm2, mm6);\ punpckhbw_r2r(mm3, mm1);\ por_r2r(mm1, mm7);\ MOVQ_R2M(mm6,*(dst+16));\ MOVQ_R2M(mm7,*(dst+24)); #define RGB_15_TO_24_SWAP pxor_r2r(mm3, mm3);/* Zero mm3 */\ movq_r2r(mm0, mm2);/* mm2: P3 P3 P2 P2 P1 P1 P0 P0 */\ pand_m2r(rgb_rgb_rgb15_upper_mask, mm2);\ psrlq_i2r(7, mm2);\ movq_r2r(mm2, mm6);\ punpcklbw_r2r(mm3, mm6);/* mm6: 00 00 00 R1 00 00 00 R0 */\ movq_r2r(mm2, mm7);\ punpckhbw_r2r(mm3, mm7);/* mm7: 00 00 00 R3 00 00 00 R2 */\ movq_r2r(mm0, mm2);/* mm2: P3 P3 P2 P2 P1 P1 P0 P0 */\ pand_m2r(rgb_rgb_rgb15_middle_mask, mm2);\ psrlq_i2r(2, mm2);\ punpcklbw_r2r(mm2, mm3);/* mm3: 00 00 G1 00 00 00 G0 00 */\ por_r2r(mm3, mm6);/* mm6: 00 00 G1 R1 00 00 G0 R0 */\ pxor_r2r(mm3, mm3);/* Zero mm3;*/\ punpckhbw_r2r(mm2, mm3);/* mm3: 00 00 00 R3 00 00 00 R2 */\ por_r2r(mm3, mm7);/* mm7: 00 00 G3 R3 00 00 G2 R2 */\ pand_m2r(rgb_rgb_rgb15_lower_mask, mm0);\ psllq_i2r(11, mm0);\ movq_r2r(mm0, mm2);\ pxor_r2r(mm3, mm3);/* Zero mm3;*/\ punpcklbw_r2r(mm3, mm2);/* mm2: 00 B1 00 00 00 B0 00 00 */\ por_r2r(mm2, mm6);\ punpckhbw_r2r(mm3, mm0);/* mm2: 00 B1 00 00 00 B0 00 00 */\ por_r2r(mm0, mm7);\ /* 32 -> 24 */\ movq_r2r(mm6, mm5);\ pand_m2r(rgb_rgb_lower_dword, mm5);\ pand_m2r(rgb_rgb_upper_dword, mm6);\ psrlq_i2r(8, mm6);\ por_r2r(mm5, mm6);\ movq_r2r(mm7, mm5);\ pand_m2r(rgb_rgb_lower_dword, mm5);\ pand_m2r(rgb_rgb_upper_dword, mm7);\ psrlq_i2r(8, mm7);\ por_r2r(mm5, mm7);\ movq_r2r(mm7, mm5);\ psllq_i2r(48, mm5);\ por_r2r(mm5, mm6);\ psrlq_i2r(16, mm7);\ MOVQ_R2M(mm6,*dst);\ movd_r2m(mm7,*(dst+8));\ /* Next 4 pixels */\ movq_r2r(mm1, mm2);\ pand_m2r(rgb_rgb_rgb15_upper_mask, mm2);\ psrlq_i2r(7, mm2);\ movq_r2r(mm2, mm6);\ punpcklbw_r2r(mm3, mm6);\ movq_r2r(mm2, mm7);\ punpckhbw_r2r(mm3, mm7);\ movq_r2r(mm1, mm2);\ pand_m2r(rgb_rgb_rgb15_middle_mask, mm2);\ psrlq_i2r(2, mm2);\ punpcklbw_r2r(mm2, mm3);\ por_r2r(mm3, mm6);\ pxor_r2r(mm3, mm3);\ punpckhbw_r2r(mm2, mm3);\ por_r2r(mm3, mm7);\ pand_m2r(rgb_rgb_rgb15_lower_mask, mm1);\ psllq_i2r(11, mm1);\ movq_r2r(mm1, mm2);\ pxor_r2r(mm3, mm3);\ punpcklbw_r2r(mm3, mm2);\ por_r2r(mm2, mm6);\ punpckhbw_r2r(mm3, mm1);\ por_r2r(mm1, mm7);\ movq_r2r(mm6, mm5);\ pand_m2r(rgb_rgb_lower_dword, mm5);\ pand_m2r(rgb_rgb_upper_dword, mm6);\ psrlq_i2r(8, mm6);\ por_r2r(mm5, mm6);\ movq_r2r(mm7, mm5);\ pand_m2r(rgb_rgb_lower_dword, mm5);\ pand_m2r(rgb_rgb_upper_dword, mm7);\ psrlq_i2r(8, mm7);\ por_r2r(mm5, mm7);\ movq_r2r(mm7, mm5);\ psllq_i2r(48, mm5);\ por_r2r(mm5, mm6);\ psrlq_i2r(16, mm7);\ MOVQ_R2M(mm6,*(dst+12));\ movd_r2m(mm7,*(dst+20)); #define RGB_15_TO_32_SWAP_RGBA pxor_r2r(mm3, mm3);/* Zero mm3 */\ movq_r2r(mm0, mm2);/* mm2: P3 P3 P2 P2 P1 P1 P0 P0 */\ pand_m2r(rgb_rgb_rgb15_upper_mask, mm2);\ psrlq_i2r(7, mm2);\ movq_r2r(mm2, mm6);\ punpcklbw_r2r(mm3, mm6);/* mm6: 00 00 00 R1 00 00 00 R0 */\ movq_r2r(mm2, mm7);\ punpckhbw_r2r(mm3, mm7);/* mm7: 00 00 00 R3 00 00 00 R2 */\ movq_r2r(mm0, mm2);/* mm2: P3 P3 P2 P2 P1 P1 P0 P0 */\ pand_m2r(rgb_rgb_rgb15_middle_mask, mm2);\ psrlq_i2r(2, mm2);\ punpcklbw_r2r(mm2, mm3);/* mm3: 00 00 G1 00 00 00 G0 00 */\ por_r2r(mm3, mm6);/* mm6: 00 00 G1 R1 00 00 G0 R0 */\ pxor_r2r(mm3, mm3);/* Zero mm3;*/\ punpckhbw_r2r(mm2, mm3);/* mm3: 00 00 00 R3 00 00 00 R2 */\ por_r2r(mm3, mm7);/* mm7: 00 00 G3 R3 00 00 G2 R2 */\ pand_m2r(rgb_rgb_rgb15_lower_mask, mm0);\ psllq_i2r(11, mm0);\ movq_r2r(mm0, mm2);\ pxor_r2r(mm3, mm3);/* Zero mm3;*/\ punpcklbw_r2r(mm3, mm2);/* mm2: 00 B1 00 00 00 B0 00 00 */\ por_r2r(mm2, mm6);\ punpckhbw_r2r(mm3, mm0);/* mm2: 00 B1 00 00 00 B0 00 00 */\ por_r2r(mm0, mm7);\ por_m2r(rgba32_alpha_mask, mm6);\ por_m2r(rgba32_alpha_mask, mm7);\ MOVQ_R2M(mm6,*dst);/* mm6: 00 B1 G1 R1 00 B0 G0 R0 */\ MOVQ_R2M(mm7,*(dst+8));/* mm7: 00 B3 G3 R3 00 B2 G2 R2 */\ movq_r2r(mm1, mm2);\ pand_m2r(rgb_rgb_rgb15_upper_mask, mm2);\ psrlq_i2r(7, mm2);\ movq_r2r(mm2, mm6);\ punpcklbw_r2r(mm3, mm6);\ movq_r2r(mm2, mm7);\ punpckhbw_r2r(mm3, mm7);\ movq_r2r(mm1, mm2);\ pand_m2r(rgb_rgb_rgb15_middle_mask, mm2);\ psrlq_i2r(2, mm2);\ punpcklbw_r2r(mm2, mm3);\ por_r2r(mm3, mm6);\ pxor_r2r(mm3, mm3);\ punpckhbw_r2r(mm2, mm3);\ por_r2r(mm3, mm7);\ pand_m2r(rgb_rgb_rgb15_lower_mask, mm1);\ psllq_i2r(11, mm1);\ movq_r2r(mm1, mm2);\ pxor_r2r(mm3, mm3);\ punpcklbw_r2r(mm3, mm2);\ por_r2r(mm2, mm6);\ punpckhbw_r2r(mm3, mm1);\ por_r2r(mm1, mm7);\ por_m2r(rgba32_alpha_mask, mm6);\ por_m2r(rgba32_alpha_mask, mm7);\ MOVQ_R2M(mm6,*(dst+16));\ MOVQ_R2M(mm7,*(dst+24)); #define RGB_15_TO_32_SWAP_RGBA pxor_r2r(mm3, mm3);/* Zero mm3 */\ movq_r2r(mm0, mm2);/* mm2: P3 P3 P2 P2 P1 P1 P0 P0 */\ pand_m2r(rgb_rgb_rgb15_upper_mask, mm2);\ psrlq_i2r(7, mm2);\ movq_r2r(mm2, mm6);\ punpcklbw_r2r(mm3, mm6);/* mm6: 00 00 00 R1 00 00 00 R0 */\ movq_r2r(mm2, mm7);\ punpckhbw_r2r(mm3, mm7);/* mm7: 00 00 00 R3 00 00 00 R2 */\ movq_r2r(mm0, mm2);/* mm2: P3 P3 P2 P2 P1 P1 P0 P0 */\ pand_m2r(rgb_rgb_rgb15_middle_mask, mm2);\ psrlq_i2r(2, mm2);\ punpcklbw_r2r(mm2, mm3);/* mm3: 00 00 G1 00 00 00 G0 00 */\ por_r2r(mm3, mm6);/* mm6: 00 00 G1 R1 00 00 G0 R0 */\ pxor_r2r(mm3, mm3);/* Zero mm3;*/\ punpckhbw_r2r(mm2, mm3);/* mm3: 00 00 00 R3 00 00 00 R2 */\ por_r2r(mm3, mm7);/* mm7: 00 00 G3 R3 00 00 G2 R2 */\ pand_m2r(rgb_rgb_rgb15_lower_mask, mm0);\ psllq_i2r(11, mm0);\ movq_r2r(mm0, mm2);\ pxor_r2r(mm3, mm3);/* Zero mm3;*/\ punpcklbw_r2r(mm3, mm2);/* mm2: 00 B1 00 00 00 B0 00 00 */\ por_r2r(mm2, mm6);\ punpckhbw_r2r(mm3, mm0);/* mm2: 00 B1 00 00 00 B0 00 00 */\ por_r2r(mm0, mm7);\ por_m2r(rgba32_alpha_mask, mm6);\ por_m2r(rgba32_alpha_mask, mm7);\ MOVQ_R2M(mm6,*dst);/* mm6: 00 B1 G1 R1 00 B0 G0 R0 */\ MOVQ_R2M(mm7,*(dst+8));/* mm7: 00 B3 G3 R3 00 B2 G2 R2 */\ movq_r2r(mm1, mm2);\ pand_m2r(rgb_rgb_rgb15_upper_mask, mm2);\ psrlq_i2r(7, mm2);\ movq_r2r(mm2, mm6);\ punpcklbw_r2r(mm3, mm6);\ movq_r2r(mm2, mm7);\ punpckhbw_r2r(mm3, mm7);\ movq_r2r(mm1, mm2);\ pand_m2r(rgb_rgb_rgb15_middle_mask, mm2);\ psrlq_i2r(2, mm2);\ punpcklbw_r2r(mm2, mm3);\ por_r2r(mm3, mm6);\ pxor_r2r(mm3, mm3);\ punpckhbw_r2r(mm2, mm3);\ por_r2r(mm3, mm7);\ pand_m2r(rgb_rgb_rgb15_lower_mask, mm1);\ psllq_i2r(11, mm1);\ movq_r2r(mm1, mm2);\ pxor_r2r(mm3, mm3);\ punpcklbw_r2r(mm3, mm2);\ por_r2r(mm2, mm6);\ punpckhbw_r2r(mm3, mm1);\ por_r2r(mm1, mm7);\ por_m2r(rgba32_alpha_mask, mm6);\ por_m2r(rgba32_alpha_mask, mm7);\ MOVQ_R2M(mm6,*(dst+16));\ MOVQ_R2M(mm7,*(dst+24)); #define RGB_16_TO_32_SWAP pxor_r2r(mm3, mm3);/* Zero mm3 */\ movq_r2r(mm0, mm2);/* mm2: P3 P3 P2 P2 P1 P1 P0 P0 */\ pand_m2r(rgb_rgb_rgb16_upper_mask, mm2);\ psrlq_i2r(8, mm2);\ movq_r2r(mm2, mm6);\ punpcklbw_r2r(mm3, mm6);/* mm6: 00 00 00 R1 00 00 00 R0 */\ movq_r2r(mm2, mm7);\ punpckhbw_r2r(mm3, mm7);/* mm7: 00 00 00 R3 00 00 00 R2 */\ movq_r2r(mm0, mm2);/* mm2: P3 P3 P2 P2 P1 P1 P0 P0 */\ pand_m2r(rgb_rgb_rgb16_middle_mask, mm2);\ psrlq_i2r(3, mm2);\ punpcklbw_r2r(mm2, mm3);/* mm3: 00 00 G1 00 00 00 G0 00 */\ por_r2r(mm3, mm6);/* mm6: 00 00 G1 R1 00 00 G0 R0 */\ pxor_r2r(mm3, mm3);/* Zero mm3;*/\ punpckhbw_r2r(mm2, mm3);/* mm3: 00 00 00 R3 00 00 00 R2 */\ por_r2r(mm3, mm7);/* mm7: 00 00 G3 R3 00 00 G2 R2 */\ pand_m2r(rgb_rgb_rgb16_lower_mask, mm0);\ psllq_i2r(11, mm0);\ movq_r2r(mm0, mm2);\ pxor_r2r(mm3, mm3);/* Zero mm3;*/\ punpcklbw_r2r(mm3, mm2);/* mm2: 00 B1 00 00 00 B0 00 00 */\ por_r2r(mm2, mm6);\ punpckhbw_r2r(mm3, mm0);/* mm2: 00 B1 00 00 00 B0 00 00 */\ por_r2r(mm0, mm7);\ MOVQ_R2M(mm6,*dst);/* mm6: 00 B1 G1 R1 00 B0 G0 R0 */\ MOVQ_R2M(mm7,*(dst+8));/* mm7: 00 B3 G3 R3 00 B2 G2 R2 */\ movq_r2r(mm1, mm2);/* mm2: P3 P3 P2 P2 P1 P1 P0 P0 */\ pand_m2r(rgb_rgb_rgb16_upper_mask, mm2);\ psrlq_i2r(8, mm2);\ movq_r2r(mm2, mm6);\ punpcklbw_r2r(mm3, mm6);/* mm6: 00 00 00 R1 00 00 00 R0 */\ movq_r2r(mm2, mm7);\ punpckhbw_r2r(mm3, mm7);/* mm7: 00 00 00 R3 00 00 00 R2 */\ movq_r2r(mm1, mm2);/* mm2: P3 P3 P2 P2 P1 P1 P0 P0 */\ pand_m2r(rgb_rgb_rgb16_middle_mask, mm2);\ psrlq_i2r(3, mm2);\ punpcklbw_r2r(mm2, mm3);/* mm3: 00 00 G1 00 00 00 G0 00 */\ por_r2r(mm3, mm6);/* mm6: 00 00 G1 R1 00 00 G0 R0 */\ pxor_r2r(mm3, mm3);/* Zero mm3;*/\ punpckhbw_r2r(mm2, mm3);/* mm3: 00 00 00 R3 00 00 00 R2 */\ por_r2r(mm3, mm7);/* mm7: 00 00 G3 R3 00 00 G2 R2 */\ pand_m2r(rgb_rgb_rgb16_lower_mask, mm1);\ psllq_i2r(11, mm1);\ movq_r2r(mm1, mm2);\ pxor_r2r(mm3, mm3);/* Zero mm3;*/\ punpcklbw_r2r(mm3, mm2);/* mm2: 00 B1 00 00 00 B0 00 00 */\ por_r2r(mm2, mm6);\ punpckhbw_r2r(mm3, mm1);/* mm2: 00 B1 00 00 00 B0 00 00 */\ por_r2r(mm1, mm7);\ MOVQ_R2M(mm6,*(dst+16));/* mm6: 00 B1 G1 R1 00 B0 G0 R0 */\ MOVQ_R2M(mm7,*(dst+24));/* mm7: 00 B3 G3 R3 00 B2 G2 R2 */ #define RGB_16_TO_24_SWAP pxor_r2r(mm3, mm3);/* Zero mm3 */\ movq_r2r(mm0, mm2);/* mm2: P3 P3 P2 P2 P1 P1 P0 P0 */\ pand_m2r(rgb_rgb_rgb16_upper_mask, mm2);\ psrlq_i2r(8, mm2);\ movq_r2r(mm2, mm6);\ punpcklbw_r2r(mm3, mm6);/* mm6: 00 00 00 R1 00 00 00 R0 */\ movq_r2r(mm2, mm7);\ punpckhbw_r2r(mm3, mm7);/* mm7: 00 00 00 R3 00 00 00 R2 */\ movq_r2r(mm0, mm2);/* mm2: P3 P3 P2 P2 P1 P1 P0 P0 */\ pand_m2r(rgb_rgb_rgb16_middle_mask, mm2);\ psrlq_i2r(3, mm2);\ punpcklbw_r2r(mm2, mm3);/* mm3: 00 00 G1 00 00 00 G0 00 */\ por_r2r(mm3, mm6);/* mm6: 00 00 G1 R1 00 00 G0 R0 */\ pxor_r2r(mm3, mm3);/* Zero mm3;*/\ punpckhbw_r2r(mm2, mm3);/* mm3: 00 00 00 R3 00 00 00 R2 */\ por_r2r(mm3, mm7);/* mm7: 00 00 G3 R3 00 00 G2 R2 */\ pand_m2r(rgb_rgb_rgb16_lower_mask, mm0);\ psllq_i2r(11, mm0);\ movq_r2r(mm0, mm2);\ pxor_r2r(mm3, mm3);/* Zero mm3;*/\ punpcklbw_r2r(mm3, mm2);/* mm2: 00 B1 00 00 00 B0 00 00 */\ por_r2r(mm2, mm6);\ punpckhbw_r2r(mm3, mm0);/* mm2: 00 B1 00 00 00 B0 00 00 */\ por_r2r(mm0, mm7);\ /* 32 -> 24 */\ movq_r2r(mm6, mm5);\ pand_m2r(rgb_rgb_lower_dword, mm5);\ pand_m2r(rgb_rgb_upper_dword, mm6);\ psrlq_i2r(8, mm6);\ por_r2r(mm5, mm6);\ movq_r2r(mm7, mm5);\ pand_m2r(rgb_rgb_lower_dword, mm5);\ pand_m2r(rgb_rgb_upper_dword, mm7);\ psrlq_i2r(8, mm7);\ por_r2r(mm5, mm7);\ movq_r2r(mm7, mm5);\ psllq_i2r(48, mm5);\ por_r2r(mm5, mm6);\ psrlq_i2r(16, mm7);\ MOVQ_R2M(mm6,*dst);\ movd_r2m(mm7,*(dst+8));\ /* Next 4 pixels */\ movq_r2r(mm1, mm2);/* mm2: P3 P3 P2 P2 P1 P1 P0 P0 */\ pand_m2r(rgb_rgb_rgb16_upper_mask, mm2);\ psrlq_i2r(8, mm2);\ movq_r2r(mm2, mm6);\ punpcklbw_r2r(mm3, mm6);/* mm6: 00 00 00 R1 00 00 00 R0 */\ movq_r2r(mm2, mm7);\ punpckhbw_r2r(mm3, mm7);/* mm7: 00 00 00 R3 00 00 00 R2 */\ movq_r2r(mm1, mm2);/* mm2: P3 P3 P2 P2 P1 P1 P0 P0 */\ pand_m2r(rgb_rgb_rgb16_middle_mask, mm2);\ psrlq_i2r(3, mm2);\ punpcklbw_r2r(mm2, mm3);/* mm3: 00 00 G1 00 00 00 G0 00 */\ por_r2r(mm3, mm6);/* mm6: 00 00 G1 R1 00 00 G0 R0 */\ pxor_r2r(mm3, mm3);/* Zero mm3;*/\ punpckhbw_r2r(mm2, mm3);/* mm3: 00 00 00 R3 00 00 00 R2 */\ por_r2r(mm3, mm7);/* mm7: 00 00 G3 R3 00 00 G2 R2 */\ pand_m2r(rgb_rgb_rgb16_lower_mask, mm1);\ psllq_i2r(11, mm1);\ movq_r2r(mm1, mm2);\ pxor_r2r(mm3, mm3);/* Zero mm3;*/\ punpcklbw_r2r(mm3, mm2);/* mm2: 00 B1 00 00 00 B0 00 00 */\ por_r2r(mm2, mm6);\ punpckhbw_r2r(mm3, mm1);/* mm2: 00 B1 00 00 00 B0 00 00 */\ por_r2r(mm1, mm7);\ /* 32 -> 24 */\ movq_r2r(mm6, mm5);\ pand_m2r(rgb_rgb_lower_dword, mm5);\ pand_m2r(rgb_rgb_upper_dword, mm6);\ psrlq_i2r(8, mm6);\ por_r2r(mm5, mm6);\ movq_r2r(mm7, mm5);\ pand_m2r(rgb_rgb_lower_dword, mm5);\ pand_m2r(rgb_rgb_upper_dword, mm7);\ psrlq_i2r(8, mm7);\ por_r2r(mm5, mm7);\ movq_r2r(mm7, mm5);\ psllq_i2r(48, mm5);\ por_r2r(mm5, mm6);\ psrlq_i2r(16, mm7);\ MOVQ_R2M(mm6,*(dst+12));\ movd_r2m(mm7,*(dst+20)); #define RGB_16_TO_32_SWAP_RGBA pxor_r2r(mm3, mm3);/* Zero mm3 */\ movq_r2r(mm0, mm2);/* mm2: P3 P3 P2 P2 P1 P1 P0 P0 */\ pand_m2r(rgb_rgb_rgb16_upper_mask, mm2);\ psrlq_i2r(8, mm2);\ movq_r2r(mm2, mm6);\ punpcklbw_r2r(mm3, mm6);/* mm6: 00 00 00 R1 00 00 00 R0 */\ movq_r2r(mm2, mm7);\ punpckhbw_r2r(mm3, mm7);/* mm7: 00 00 00 R3 00 00 00 R2 */\ movq_r2r(mm0, mm2);/* mm2: P3 P3 P2 P2 P1 P1 P0 P0 */\ pand_m2r(rgb_rgb_rgb16_middle_mask, mm2);\ psrlq_i2r(3, mm2);\ punpcklbw_r2r(mm2, mm3);/* mm3: 00 00 G1 00 00 00 G0 00 */\ por_r2r(mm3, mm6);/* mm6: 00 00 G1 R1 00 00 G0 R0 */\ pxor_r2r(mm3, mm3);/* Zero mm3;*/\ punpckhbw_r2r(mm2, mm3);/* mm3: 00 00 00 R3 00 00 00 R2 */\ por_r2r(mm3, mm7);/* mm7: 00 00 G3 R3 00 00 G2 R2 */\ pand_m2r(rgb_rgb_rgb16_lower_mask, mm0);\ psllq_i2r(11, mm0);\ movq_r2r(mm0, mm2);\ pxor_r2r(mm3, mm3);/* Zero mm3;*/\ punpcklbw_r2r(mm3, mm2);/* mm2: 00 B1 00 00 00 B0 00 00 */\ por_r2r(mm2, mm6);\ punpckhbw_r2r(mm3, mm0);/* mm2: 00 B1 00 00 00 B0 00 00 */\ por_r2r(mm0, mm7);\ por_m2r(rgba32_alpha_mask, mm6);\ por_m2r(rgba32_alpha_mask, mm7);\ MOVQ_R2M(mm6,*dst);/* mm6: 00 B1 G1 R1 00 B0 G0 R0 */\ MOVQ_R2M(mm7,*(dst+8));/* mm7: 00 B3 G3 R3 00 B2 G2 R2 */\ movq_r2r(mm1, mm2);/* mm2: P3 P3 P2 P2 P1 P1 P0 P0 */\ pand_m2r(rgb_rgb_rgb16_upper_mask, mm2);\ psrlq_i2r(8, mm2);\ movq_r2r(mm2, mm6);\ punpcklbw_r2r(mm3, mm6);/* mm6: 00 00 00 R1 00 00 00 R0 */\ movq_r2r(mm2, mm7);\ punpckhbw_r2r(mm3, mm7);/* mm7: 00 00 00 R3 00 00 00 R2 */\ movq_r2r(mm1, mm2);/* mm2: P3 P3 P2 P2 P1 P1 P0 P0 */\ pand_m2r(rgb_rgb_rgb16_middle_mask, mm2);\ psrlq_i2r(3, mm2);\ punpcklbw_r2r(mm2, mm3);/* mm3: 00 00 G1 00 00 00 G0 00 */\ por_r2r(mm3, mm6);/* mm6: 00 00 G1 R1 00 00 G0 R0 */\ pxor_r2r(mm3, mm3);/* Zero mm3;*/\ punpckhbw_r2r(mm2, mm3);/* mm3: 00 00 00 R3 00 00 00 R2 */\ por_r2r(mm3, mm7);/* mm7: 00 00 G3 R3 00 00 G2 R2 */\ pand_m2r(rgb_rgb_rgb16_lower_mask, mm1);\ psllq_i2r(11, mm1);\ movq_r2r(mm1, mm2);\ pxor_r2r(mm3, mm3);/* Zero mm3;*/\ punpcklbw_r2r(mm3, mm2);/* mm2: 00 B1 00 00 00 B0 00 00 */\ por_r2r(mm2, mm6);\ punpckhbw_r2r(mm3, mm1);/* mm2: 00 B1 00 00 00 B0 00 00 */\ por_r2r(mm1, mm7);\ por_m2r(rgba32_alpha_mask, mm6);\ por_m2r(rgba32_alpha_mask, mm7);\ MOVQ_R2M(mm6,*(dst+16));/* mm6: 00 B1 G1 R1 00 B0 G0 R0 */\ MOVQ_R2M(mm7,*(dst+24));/* mm7: 00 B3 G3 R3 00 B2 G2 R2 */ #define RGB_32_TO_16 movq_r2r(mm0, mm4);\ movq_r2r(mm1, mm5);\ pand_m2r(rgb_rgb_rgb32_upper_lower_mask, mm4);/* mm4: 00 B1 00 R1 00 B0 00 R0 */\ pand_m2r(rgb_rgb_rgb32_upper_lower_mask, mm5);/* mm5: 00 B3 00 R3 00 B3 00 R2 */\ packuswb_r2r(mm5, mm4);/* mm4: B3 R3 B2 R2 B1 R1 B0 R0 */\ movq_r2r(mm4, mm6);\ pand_m2r(rgb_rgb_rgb16_upper_mask, mm6);\ psrlq_i2r(3, mm4);\ pand_m2r(rgb_rgb_rgb16_lower_mask, mm4);\ por_r2r(mm4, mm6);\ pand_m2r(rgb_rgb_rgb32_middle_mask, mm0);/* mm0: 00 00 G1 00 00 00 G0 00 */\ pand_m2r(rgb_rgb_rgb32_middle_mask, mm1);/* mm1: 00 00 G3 00 00 00 G2 00 */\ psrlq_i2r(1, mm0);\ psrlq_i2r(1, mm1);\ packssdw_r2r(mm1, mm0);/* mm0: G3 00 G2 00 G1 00 G0 00 */\ psrlq_i2r(4, mm0);\ pand_m2r(rgb_rgb_rgb16_middle_mask, mm0);\ por_r2r(mm0, mm6);\ MOVQ_R2M(mm6, *dst);\ movq_r2r(mm2, mm4);\ movq_r2r(mm3, mm5);\ pand_m2r(rgb_rgb_rgb32_upper_lower_mask, mm4);\ pand_m2r(rgb_rgb_rgb32_upper_lower_mask, mm5);\ packuswb_r2r(mm5, mm4);\ movq_r2r(mm4, mm6);\ pand_m2r(rgb_rgb_rgb16_upper_mask, mm6);\ psrlq_i2r(3, mm4);\ pand_m2r(rgb_rgb_rgb16_lower_mask, mm4);\ por_r2r(mm4, mm6);\ pand_m2r(rgb_rgb_rgb32_middle_mask, mm2);\ pand_m2r(rgb_rgb_rgb32_middle_mask, mm3);\ psrlq_i2r(1, mm2);\ psrlq_i2r(1, mm3);\ packssdw_r2r(mm3, mm2);\ psrlq_i2r(4, mm2);\ pand_m2r(rgb_rgb_rgb16_middle_mask, mm2);\ por_r2r(mm2, mm6);\ MOVQ_R2M(mm6, *(dst+8)); #define RGB_32_TO_16_SWAP movq_r2r(mm0, mm4);\ movq_r2r(mm1, mm5);\ pand_m2r(rgb_rgb_rgb32_upper_lower_mask, mm4);/* mm4: 00 B1 00 R1 00 B0 00 R0 */\ pand_m2r(rgb_rgb_rgb32_upper_lower_mask, mm5);/* mm5: 00 B3 00 R3 00 B3 00 R2 */\ packuswb_r2r(mm5, mm4);/* mm4: B3 R3 B2 R2 B1 R1 B0 R0 */\ movq_r2r(mm4, mm6);\ psrlw_i2r(11, mm6);\ psllq_i2r(8, mm4);\ pand_m2r(rgb_rgb_rgb16_upper_mask, mm4);\ por_r2r(mm4, mm6);\ pand_m2r(rgb_rgb_rgb32_middle_mask, mm0);/* mm0: 00 00 G1 00 00 00 G0 00 */\ pand_m2r(rgb_rgb_rgb32_middle_mask, mm1);/* mm1: 00 00 G3 00 00 00 G2 00 */\ psrlq_i2r(1, mm0);\ psrlq_i2r(1, mm1);\ packssdw_r2r(mm1, mm0);/* mm0: G3 00 G2 00 G1 00 G0 00 */\ psrlq_i2r(4, mm0);\ pand_m2r(rgb_rgb_rgb16_middle_mask, mm0);\ por_r2r(mm0, mm6);\ MOVQ_R2M(mm6, *dst);\ movq_r2r(mm2, mm4);\ movq_r2r(mm3, mm5);\ pand_m2r(rgb_rgb_rgb32_upper_lower_mask, mm4);\ pand_m2r(rgb_rgb_rgb32_upper_lower_mask, mm5);\ packuswb_r2r(mm5, mm4);\ movq_r2r(mm4, mm6);\ psrlw_i2r(11, mm6);\ psllq_i2r(8, mm4);\ pand_m2r(rgb_rgb_rgb16_upper_mask, mm4);\ por_r2r(mm4, mm6);\ pand_m2r(rgb_rgb_rgb32_middle_mask, mm2);\ pand_m2r(rgb_rgb_rgb32_middle_mask, mm3);\ psrlq_i2r(1, mm2);\ psrlq_i2r(1, mm3);\ packssdw_r2r(mm3, mm2);\ psrlq_i2r(4, mm2);\ pand_m2r(rgb_rgb_rgb16_middle_mask, mm2);\ por_r2r(mm2, mm6);\ MOVQ_R2M(mm6, *(dst+8)); #define RGB_32_TO_15 movq_r2r(mm0, mm4);\ movq_r2r(mm1, mm5);\ pand_m2r(rgb_rgb_rgb32_upper_lower_mask, mm4);/* mm4: 00 B1 00 R1 00 B0 00 R0 */\ pand_m2r(rgb_rgb_rgb32_upper_lower_mask, mm5);/* mm5: 00 B3 00 R3 00 B3 00 R2 */\ packuswb_r2r(mm5, mm4);/* mm4: B3 R3 B2 R2 B1 R1 B0 R0 */\ movq_r2r(mm4, mm6);\ psrlq_i2r(1, mm6);\ pand_m2r(rgb_rgb_rgb15_upper_mask, mm6);\ psrlq_i2r(3, mm4);\ pand_m2r(rgb_rgb_rgb15_lower_mask, mm4);\ por_r2r(mm4, mm6);\ pand_m2r(rgb_rgb_rgb32_middle_mask, mm0);/* mm0: 00 00 G1 00 00 00 G0 00 */\ pand_m2r(rgb_rgb_rgb32_middle_mask, mm1);/* mm1: 00 00 G3 00 00 00 G2 00 */\ psrlq_i2r(1, mm0);\ psrlq_i2r(1, mm1);\ packssdw_r2r(mm1, mm0);/* mm0: G3 00 G2 00 G1 00 G0 00 */\ psrlq_i2r(5, mm0);\ pand_m2r(rgb_rgb_rgb15_middle_mask, mm0);\ por_r2r(mm0, mm6);\ MOVQ_R2M(mm6, *dst);\ movq_r2r(mm2, mm4);\ movq_r2r(mm3, mm5);\ pand_m2r(rgb_rgb_rgb32_upper_lower_mask, mm4);\ pand_m2r(rgb_rgb_rgb32_upper_lower_mask, mm5);\ packuswb_r2r(mm5, mm4);\ movq_r2r(mm4, mm6);\ psrlq_i2r(1, mm6);\ pand_m2r(rgb_rgb_rgb15_upper_mask, mm6);\ psrlq_i2r(3, mm4);\ pand_m2r(rgb_rgb_rgb15_lower_mask, mm4);\ por_r2r(mm4, mm6);\ pand_m2r(rgb_rgb_rgb32_middle_mask, mm2);\ pand_m2r(rgb_rgb_rgb32_middle_mask, mm3);\ psrlq_i2r(1, mm2);\ psrlq_i2r(1, mm3);\ packssdw_r2r(mm3, mm2);\ psrlq_i2r(5, mm2);\ pand_m2r(rgb_rgb_rgb15_middle_mask, mm2);\ por_r2r(mm2, mm6);\ MOVQ_R2M(mm6, *(dst+8)); #define RGB_32_TO_15_SWAP movq_r2r(mm0, mm4);\ movq_r2r(mm1, mm5);\ pand_m2r(rgb_rgb_rgb32_upper_lower_mask, mm4);/* mm4: 00 B1 00 R1 00 B0 00 R0 */\ pand_m2r(rgb_rgb_rgb32_upper_lower_mask, mm5);/* mm5: 00 B3 00 R3 00 B3 00 R2 */\ packuswb_r2r(mm5, mm4);/* mm4: B3 R3 B2 R2 B1 R1 B0 R0 */\ movq_r2r(mm4, mm6);\ psrlw_i2r(11, mm6);\ psllw_i2r(7, mm4);\ pand_m2r(rgb_rgb_rgb15_upper_mask, mm4);\ por_r2r(mm4, mm6);\ pand_m2r(rgb_rgb_rgb32_middle_mask, mm0);/* mm0: 00 00 G1 00 00 00 G0 00 */\ pand_m2r(rgb_rgb_rgb32_middle_mask, mm1);/* mm1: 00 00 G3 00 00 00 G2 00 */\ psrlq_i2r(1, mm0);\ psrlq_i2r(1, mm1);\ packssdw_r2r(mm1, mm0);/* mm0: G3 00 G2 00 G1 00 G0 00 */\ psrlq_i2r(5, mm0);\ pand_m2r(rgb_rgb_rgb15_middle_mask, mm0);\ por_r2r(mm0, mm6);\ MOVQ_R2M(mm6, *dst);\ movq_r2r(mm2, mm4);\ movq_r2r(mm3, mm5);\ pand_m2r(rgb_rgb_rgb32_upper_lower_mask, mm4);\ pand_m2r(rgb_rgb_rgb32_upper_lower_mask, mm5);\ packuswb_r2r(mm5, mm4);\ movq_r2r(mm4, mm6);\ psrlw_i2r(11, mm6);\ psllw_i2r(7, mm4);\ pand_m2r(rgb_rgb_rgb15_upper_mask, mm4);\ por_r2r(mm4, mm6);\ pand_m2r(rgb_rgb_rgb32_middle_mask, mm2);\ pand_m2r(rgb_rgb_rgb32_middle_mask, mm3);\ psrlq_i2r(1, mm2);\ psrlq_i2r(1, mm3);\ packssdw_r2r(mm3, mm2);\ psrlq_i2r(5, mm2);\ pand_m2r(rgb_rgb_rgb15_middle_mask, mm2);\ por_r2r(mm2, mm6);\ MOVQ_R2M(mm6, *(dst+8)); #define FUNC_NAME swap_rgb_24_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 24 #define OUT_ADVANCE 24 #define NUM_PIXELS 8 #define CONVERT SWAP_24 #define CLEANUP emms(); #include "../csp_packed_packed.h" #define FUNC_NAME swap_rgb_32_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 32 #define OUT_ADVANCE 32 #define NUM_PIXELS 8 #define CONVERT \ LOAD_32 \ SWAP_32 \ WRITE_32 #define CLEANUP emms(); #include "../csp_packed_packed.h" #define FUNC_NAME swap_rgb_16_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE 16 #define NUM_PIXELS 8 #define CONVERT \ LOAD_16 \ SWAP_16 \ WRITE_16 #define INIT INIT_SWAP_16 #define CLEANUP emms(); #include "../csp_packed_packed.h" #define FUNC_NAME swap_rgb_15_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE 16 #define NUM_PIXELS 8 #define CONVERT \ LOAD_16 \ SWAP_15 \ WRITE_16 #define INIT INIT_SWAP_15 #define CLEANUP emms(); #include "../csp_packed_packed.h" #define FUNC_NAME rgb_15_to_16_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE 16 #define NUM_PIXELS 8 #define CONVERT \ LOAD_16 \ RGB_15_TO_16 \ WRITE_16 #define INIT INIT_RGB_15_TO_16 #define CLEANUP emms(); #include "../csp_packed_packed.h" #define FUNC_NAME rgb_15_to_24_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE 24 #define NUM_PIXELS 8 #define CONVERT \ LOAD_16 \ RGB_15_TO_24_SWAP #define CLEANUP emms(); #include "../csp_packed_packed.h" #define FUNC_NAME rgb_15_to_32_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE 32 #define NUM_PIXELS 8 #define CONVERT \ LOAD_16 \ RGB_15_TO_32_SWAP #define CLEANUP emms(); #include "../csp_packed_packed.h" #define FUNC_NAME rgb_16_to_15_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE 16 #define NUM_PIXELS 8 #define INIT INIT_RGB_16_TO_15 #define CONVERT \ LOAD_16 \ RGB_16_TO_15 \ WRITE_16 #define CLEANUP emms(); #include "../csp_packed_packed.h" #define FUNC_NAME rgb_16_to_24_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE 24 #define NUM_PIXELS 8 #define CONVERT \ LOAD_16 \ RGB_16_TO_24_SWAP #define CLEANUP emms(); #include "../csp_packed_packed.h" #define FUNC_NAME rgb_16_to_32_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE 32 #define NUM_PIXELS 8 #define CONVERT \ LOAD_16 \ RGB_16_TO_32_SWAP #define CLEANUP emms(); #include "../csp_packed_packed.h" #define FUNC_NAME rgb_24_to_15_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 24 #define OUT_ADVANCE 16 #define NUM_PIXELS 8 #define CONVERT \ LOAD_24 \ RGB_32_TO_15_SWAP #define CLEANUP emms(); #include "../csp_packed_packed.h" #define FUNC_NAME rgb_24_to_16_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 24 #define OUT_ADVANCE 16 #define NUM_PIXELS 8 #define CONVERT \ LOAD_24 \ RGB_32_TO_16_SWAP #define CLEANUP emms(); #include "../csp_packed_packed.h" #define FUNC_NAME rgb_24_to_32_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 24 #define OUT_ADVANCE 32 #define NUM_PIXELS 8 #define CONVERT \ LOAD_24 \ WRITE_32 #define CLEANUP emms(); #include "../csp_packed_packed.h" #define FUNC_NAME rgb_32_to_15_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 32 #define OUT_ADVANCE 16 #define NUM_PIXELS 8 #define CONVERT \ LOAD_32 \ RGB_32_TO_15_SWAP #define CLEANUP emms(); #include "../csp_packed_packed.h" #define FUNC_NAME rgb_32_to_16_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 32 #define OUT_ADVANCE 16 #define NUM_PIXELS 8 #define CONVERT \ LOAD_32 \ RGB_32_TO_16_SWAP #define CLEANUP emms(); #include "../csp_packed_packed.h" #define FUNC_NAME rgb_32_to_24_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 32 #define OUT_ADVANCE 24 #define NUM_PIXELS 8 #define CONVERT \ LOAD_32 \ WRITE_24 #define CLEANUP emms(); #include "../csp_packed_packed.h" #define FUNC_NAME rgb_15_to_16_swap_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE 16 #define NUM_PIXELS 8 #define CONVERT \ LOAD_16 \ SWAP_15_TO_16 \ WRITE_16 #define INIT INIT_SWAP_15_TO_16 #define CLEANUP emms(); #include "../csp_packed_packed.h" #define FUNC_NAME rgb_15_to_24_swap_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE 24 #define NUM_PIXELS 8 #define CONVERT \ LOAD_16 \ RGB_15_TO_24 #define CLEANUP emms(); #include "../csp_packed_packed.h" #define FUNC_NAME rgb_15_to_32_swap_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE 32 #define NUM_PIXELS 8 #define CONVERT \ LOAD_16 \ RGB_15_TO_32 #define CLEANUP emms(); #include "../csp_packed_packed.h" #define FUNC_NAME rgb_16_to_15_swap_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE 16 #define NUM_PIXELS 8 #define CONVERT \ LOAD_16 \ SWAP_16_TO_15 \ WRITE_16 #define INIT INIT_SWAP_16_TO_15 #define CLEANUP emms(); #include "../csp_packed_packed.h" #define FUNC_NAME rgb_16_to_24_swap_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE 24 #define NUM_PIXELS 8 #define CONVERT \ LOAD_16 \ RGB_16_TO_24 #define CLEANUP emms(); #include "../csp_packed_packed.h" #define FUNC_NAME rgb_16_to_32_swap_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE 32 #define NUM_PIXELS 8 #define CONVERT \ LOAD_16 \ RGB_16_TO_32 #define CLEANUP emms(); #include "../csp_packed_packed.h" #define FUNC_NAME rgb_24_to_15_swap_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 24 #define OUT_ADVANCE 16 #define NUM_PIXELS 8 #define CONVERT \ LOAD_24 \ RGB_32_TO_15 #define CLEANUP emms(); #include "../csp_packed_packed.h" #define FUNC_NAME rgb_24_to_16_swap_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 24 #define OUT_ADVANCE 16 #define NUM_PIXELS 8 #define CONVERT \ LOAD_24 \ RGB_32_TO_16 #define CLEANUP emms(); #include "../csp_packed_packed.h" #define FUNC_NAME rgb_24_to_32_swap_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 24 #define OUT_ADVANCE 32 #define NUM_PIXELS 8 #define CONVERT \ LOAD_24 \ SWAP_32 \ WRITE_32 #define CLEANUP emms(); #include "../csp_packed_packed.h" #define FUNC_NAME rgb_32_to_15_swap_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 32 #define OUT_ADVANCE 16 #define NUM_PIXELS 8 #define CONVERT \ LOAD_32 \ RGB_32_TO_15 #define CLEANUP emms(); #include "../csp_packed_packed.h" #define FUNC_NAME rgb_32_to_16_swap_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 32 #define OUT_ADVANCE 16 #define NUM_PIXELS 8 #define CONVERT \ LOAD_32 \ RGB_32_TO_16 #define CLEANUP emms(); #include "../csp_packed_packed.h" #define FUNC_NAME rgb_32_to_24_swap_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 32 #define OUT_ADVANCE 24 #define NUM_PIXELS 8 #define CONVERT \ LOAD_32 \ SWAP_32 \ WRITE_24 #define CLEANUP emms(); #include "../csp_packed_packed.h" /* Conversion from RGB formats to RGBA */ #define FUNC_NAME rgb_15_to_rgba_32_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE 32 #define NUM_PIXELS 8 #define CONVERT \ LOAD_16 \ RGB_15_TO_32_SWAP_RGBA #define CLEANUP emms(); #include "../csp_packed_packed.h" #define FUNC_NAME bgr_15_to_rgba_32_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE 32 #define NUM_PIXELS 8 #define CONVERT \ LOAD_16 \ RGB_15_TO_32_RGBA #define CLEANUP emms(); #include "../csp_packed_packed.h" #define FUNC_NAME rgb_16_to_rgba_32_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE 32 #define NUM_PIXELS 8 #define CONVERT \ LOAD_16 \ RGB_16_TO_32_SWAP_RGBA #define CLEANUP emms(); #include "../csp_packed_packed.h" #define FUNC_NAME bgr_16_to_rgba_32_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE 32 #define NUM_PIXELS 8 #define CONVERT \ LOAD_16 \ RGB_16_TO_32_RGBA #define CLEANUP emms(); #include "../csp_packed_packed.h" #define FUNC_NAME rgb_24_to_rgba_32_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 24 #define OUT_ADVANCE 32 #define NUM_PIXELS 8 #define CONVERT \ LOAD_24 \ WRITE_RGBA_32 #define INIT INIT_WRITE_RGBA_32 #define CLEANUP emms(); #include "../csp_packed_packed.h" #define FUNC_NAME bgr_24_to_rgba_32_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 24 #define OUT_ADVANCE 32 #define NUM_PIXELS 8 #define CONVERT \ LOAD_24 \ SWAP_32 \ WRITE_RGBA_32 #define INIT INIT_WRITE_RGBA_32 #define CLEANUP emms(); #include "../csp_packed_packed.h" #define FUNC_NAME rgb_32_to_rgba_32_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 32 #define OUT_ADVANCE 32 #define NUM_PIXELS 8 #define CONVERT \ LOAD_32 \ WRITE_RGBA_32 #define INIT INIT_WRITE_RGBA_32 #define CLEANUP emms(); #include "../csp_packed_packed.h" #define FUNC_NAME bgr_32_to_rgba_32_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 32 #define OUT_ADVANCE 32 #define NUM_PIXELS 8 #define CONVERT \ LOAD_32 \ SWAP_32 \ WRITE_RGBA_32 #define INIT INIT_WRITE_RGBA_32 #define CLEANUP emms(); #include "../csp_packed_packed.h" /* Conversion from RGBA to RGB formats */ #define INIT_RGBA_32 INTERPOLATE_INIT_TEMP;\ tmp.ub[0] = ctx->options->background_16[0]>>8; \ tmp.ub[2] = ctx->options->background_16[1]>>8; \ tmp.ub[4] = ctx->options->background_16[2]>>8; \ tmp.ub[6] = 0xff;\ movq_m2r(tmp, mm1);\ /* rgba_32_to_rgb_15_c */ #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME rgba_32_to_rgb_15_mmx #define CONVERT \ INTERPOLATE_LOAD_SRC_RGBA32 \ INTERPOLATE_1D \ INTERPOLATE_WRITE_15_SWAP #define INIT \ INIT_RGBA_32 #define CLEANUP emms(); #include "../csp_packed_packed.h" /* rgba_32_to_bgr_15_mmx */ #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME rgba_32_to_bgr_15_mmx #define CONVERT \ INTERPOLATE_LOAD_SRC_RGBA32 \ INTERPOLATE_1D \ INTERPOLATE_WRITE_15 #define INIT \ INIT_RGBA_32 #define CLEANUP emms(); #include "../csp_packed_packed.h" /* rgba_32_to_rgb_16_mmx */ #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME rgba_32_to_rgb_16_mmx #define CONVERT \ INTERPOLATE_LOAD_SRC_RGBA32 \ INTERPOLATE_1D \ INTERPOLATE_WRITE_16_SWAP #define INIT \ INIT_RGBA_32 #define CLEANUP emms(); #include "../csp_packed_packed.h" /* rgba_32_to_bgr_16_mmx */ #define IN_TYPE uint8_t #define OUT_TYPE uint16_t #define IN_ADVANCE 4 #define OUT_ADVANCE 1 #define NUM_PIXELS 1 #define FUNC_NAME rgba_32_to_bgr_16_mmx #define CONVERT \ INTERPOLATE_LOAD_SRC_RGBA32 \ INTERPOLATE_1D \ INTERPOLATE_WRITE_16 #define INIT \ INIT_RGBA_32 #define CLEANUP emms(); #include "../csp_packed_packed.h" /* rgba_32_to_rgb_24_mmx */ #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define FUNC_NAME rgba_32_to_rgb_24_mmx #define CONVERT \ INTERPOLATE_LOAD_SRC_RGBA32 \ INTERPOLATE_1D \ INTERPOLATE_WRITE_RGB24 #define INIT \ INIT_RGBA_32 #define CLEANUP emms(); #include "../csp_packed_packed.h" /* rgba_32_to_bgr_24_mmx */ #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE 3 #define NUM_PIXELS 1 #define FUNC_NAME rgba_32_to_bgr_24_mmx #define CONVERT \ INTERPOLATE_LOAD_SRC_RGBA32 \ INTERPOLATE_1D \ INTERPOLATE_WRITE_BGR24 #define INIT \ INIT_RGBA_32 #define CLEANUP emms(); #include "../csp_packed_packed.h" /* rgba_32_to_rgb_32_mmx */ #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME rgba_32_to_rgb_32_mmx #define CONVERT \ INTERPOLATE_LOAD_SRC_RGBA32 \ INTERPOLATE_1D \ INTERPOLATE_WRITE_RGB32 #define INIT \ INIT_RGBA_32 #define CLEANUP emms(); #include "../csp_packed_packed.h" /* rgba_32_to_bgr_32_mmx */ #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 4 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define FUNC_NAME rgba_32_to_bgr_32_mmx #define CONVERT \ INTERPOLATE_LOAD_SRC_RGBA32 \ INTERPOLATE_1D \ INTERPOLATE_WRITE_BGR24 #define INIT \ INIT_RGBA_32 #define CLEANUP emms(); #include "../csp_packed_packed.h" void gavl_init_rgb_rgb_funcs_mmx(gavl_pixelformat_function_table_t * tab, int width, const gavl_video_options_t * opt) { if(width % 8) return; /* Lossless conversions */ tab->swap_rgb_24 = swap_rgb_24_mmx; tab->swap_rgb_32 = swap_rgb_32_mmx; tab->swap_rgb_16 = swap_rgb_16_mmx; tab->swap_rgb_15 = swap_rgb_15_mmx; /* Conversion from RGB formats to RGBA (lossless) */ tab->rgb_24_to_rgba_32 = rgb_24_to_rgba_32_mmx; tab->bgr_24_to_rgba_32 = bgr_24_to_rgba_32_mmx; tab->rgb_32_to_rgba_32 = rgb_32_to_rgba_32_mmx; tab->bgr_32_to_rgba_32 = bgr_32_to_rgba_32_mmx; /* RGBA -> */ if(opt->alpha_mode == GAVL_ALPHA_IGNORE) { tab->rgba_32_to_rgb_24 = rgb_32_to_24_mmx; tab->rgba_32_to_bgr_24 = rgb_32_to_24_swap_mmx; tab->rgba_32_to_bgr_32 = swap_rgb_32_mmx; } /* Conversions from fewer to more bits are not that good */ if(opt->quality < 3) { tab->rgb_15_to_16 = rgb_15_to_16_mmx; tab->rgb_15_to_24 = rgb_15_to_24_mmx; tab->rgb_15_to_32 = rgb_15_to_32_mmx; tab->rgb_16_to_24 = rgb_16_to_24_mmx; tab->rgb_16_to_32 = rgb_16_to_32_mmx; tab->rgb_15_to_16_swap = rgb_15_to_16_swap_mmx; tab->rgb_15_to_24_swap = rgb_15_to_24_swap_mmx; tab->rgb_15_to_32_swap = rgb_15_to_32_swap_mmx; tab->rgb_16_to_24_swap = rgb_16_to_24_swap_mmx; tab->rgb_16_to_32_swap = rgb_16_to_32_swap_mmx; tab->rgb_15_to_rgba_32 = rgb_15_to_rgba_32_mmx; tab->bgr_15_to_rgba_32 = bgr_15_to_rgba_32_mmx; tab->rgb_16_to_rgba_32 = rgb_16_to_rgba_32_mmx; tab->bgr_16_to_rgba_32 = bgr_16_to_rgba_32_mmx; if(opt->alpha_mode == GAVL_ALPHA_BLEND_COLOR) { tab->rgba_32_to_rgb_15 = rgba_32_to_rgb_15_mmx; tab->rgba_32_to_bgr_15 = rgba_32_to_bgr_15_mmx; tab->rgba_32_to_rgb_16 = rgba_32_to_rgb_16_mmx; tab->rgba_32_to_bgr_16 = rgba_32_to_bgr_16_mmx; tab->rgba_32_to_rgb_24 = rgba_32_to_rgb_24_mmx; tab->rgba_32_to_bgr_24 = rgba_32_to_bgr_24_mmx; tab->rgba_32_to_rgb_32 = rgba_32_to_rgb_32_mmx; tab->rgba_32_to_bgr_32 = rgba_32_to_bgr_32_mmx; } } /* Conversions from more to fewer bits are the same as the C versions. High quality versions however, might be better */ if(opt->quality < 4) { tab->rgb_16_to_15 = rgb_16_to_15_mmx; tab->rgb_24_to_15 = rgb_24_to_15_mmx; tab->rgb_24_to_16 = rgb_24_to_16_mmx; tab->rgb_24_to_32 = rgb_24_to_32_mmx; tab->rgb_32_to_15 = rgb_32_to_15_mmx; tab->rgb_32_to_16 = rgb_32_to_16_mmx; tab->rgb_32_to_24 = rgb_32_to_24_mmx; tab->rgb_16_to_15_swap = rgb_16_to_15_swap_mmx; tab->rgb_24_to_15_swap = rgb_24_to_15_swap_mmx; tab->rgb_24_to_16_swap = rgb_24_to_16_swap_mmx; tab->rgb_24_to_32_swap = rgb_24_to_32_swap_mmx; tab->rgb_32_to_15_swap = rgb_32_to_15_swap_mmx; tab->rgb_32_to_16_swap = rgb_32_to_16_swap_mmx; tab->rgb_32_to_24_swap = rgb_32_to_24_swap_mmx; /* RGBA -> */ if(opt->alpha_mode == GAVL_ALPHA_IGNORE) { tab->rgba_32_to_rgb_15 = rgb_32_to_15_mmx; tab->rgba_32_to_bgr_15 = rgb_32_to_15_swap_mmx; tab->rgba_32_to_rgb_16 = rgb_32_to_16_mmx; tab->rgba_32_to_bgr_16 = rgb_32_to_16_swap_mmx; } } } #else void gavl_init_rgb_rgb_funcs_mmxext(gavl_pixelformat_function_table_t * tab, int width, const gavl_video_options_t * opt) { } #endif // !MMXEXT bplaum-gavl-b9385e3/gavl/mmx/rgb_yuv_mmx.c000066400000000000000000002051171513252040200205210ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include "mmx_macros.h" /* * Support for mmxext * this macro produces another set of * functions in ../mmxext */ #ifndef MMXEXT static const mmx_t rgb_yuv_rgb24_l = { 0x0000000000FFFFFFLL }; static const mmx_t rgb_yuv_rgb24_u = { 0x0000FFFFFF000000LL }; static const mmx_t rgb_yuv_rgb16_upper_mask = { 0xf800f800f800f800LL }; static const mmx_t rgb_yuv_rgb16_middle_mask = { 0x07e007e007e007e0LL }; static const mmx_t rgb_yuv_rgb16_lower_mask = { 0x001f001f001f001fLL }; static const mmx_t rgb_yuv_rgb15_upper_mask = { 0x7C007C007C007C00LL }; static const mmx_t rgb_yuv_rgb15_middle_mask = { 0x03e003e003e003e0LL }; static const mmx_t rgb_yuv_rgb15_lower_mask = { 0x001f001f001f001fLL }; #define RGB_YUV_LOAD_RGB_24 movq_m2r(*src, mm0);/* mm0: G2 R2 B1 G1 R1 B0 G0 R0 */\ movd_m2r(*(src+8), mm1);/* mm1: 00 00 00 00 B3 G3 R3 B2 */\ movq_r2r(mm0, mm2);/* mm2: G2 R2 B1 G1 R1 B0 G0 R0 */\ psrlq_i2r(48, mm2);/* mm2: 00 00 00 00 00 00 G2 R2 */\ psllq_i2r(16 , mm1);/* mm1: 00 00 B3 G3 R3 B2 00 00 */\ por_r2r(mm2, mm1);/* mm1: 00 00 B3 G3 R3 B2 G2 R2 */\ movq_r2r(mm0, mm2);/* mm2: 00 00 B3 G3 R3 B2 G2 R2 */\ pand_m2r(rgb_yuv_rgb24_l, mm0);/*mm0: 00 00 00 00 00 B0 G0 R0 */\ pand_m2r(rgb_yuv_rgb24_u, mm2);\ psllq_i2r(8, mm2);\ por_r2r(mm2, mm0);\ movq_r2r(mm1, mm2);\ pand_m2r(rgb_yuv_rgb24_l, mm1);\ pand_m2r(rgb_yuv_rgb24_u, mm2);\ psllq_i2r(8, mm2);\ por_r2r(mm2, mm1); #define LOAD_RGB_32 movq_m2r(*src, mm0);\ movq_m2r(*(src+8),mm1); #define LOAD_RGB_15 movq_m2r(*src, mm5);\ pxor_r2r(mm3, mm3);/* Zero mm3 */\ movq_r2r(mm5, mm2);/* mm2: P3 P3 P2 P2 P1 P1 P0 P0 */\ pand_m2r(rgb_yuv_rgb15_lower_mask, mm2);\ psllq_i2r(3, mm2);\ movq_r2r(mm2, mm0);\ punpcklbw_r2r(mm3, mm0);/* mm0: 00 00 00 R1 00 00 00 R0 */\ movq_r2r(mm2, mm1);\ punpckhbw_r2r(mm3, mm1);/* mm1: 00 00 00 R3 00 00 00 R2 */\ movq_r2r(mm5, mm2);/* mm2: P3 P3 P2 P2 P1 P1 P0 P0 */\ pand_m2r(rgb_yuv_rgb15_middle_mask, mm2);\ psrlq_i2r(2, mm2);\ punpcklbw_r2r(mm2, mm3);/* mm3: 00 00 G1 00 00 00 G0 00 */\ por_r2r(mm3, mm0);/* mm0: 00 00 G1 R1 00 00 G0 R0 */\ pxor_r2r(mm3, mm3);/* Zero mm3;*/\ punpckhbw_r2r(mm2, mm3);/* mm3: 00 00 00 R3 00 00 00 R2 */\ por_r2r(mm3, mm1);/* mm1: 00 00 G3 R3 00 00 G2 R2 */\ pand_m2r(rgb_yuv_rgb15_upper_mask, mm5);\ psllq_i2r(1, mm5);\ movq_r2r(mm5, mm2);\ pxor_r2r(mm3, mm3);/* Zero mm3;*/\ punpcklbw_r2r(mm3, mm2);/* mm2: 00 B1 00 00 00 B0 00 00 */\ por_r2r(mm2, mm0);\ punpckhbw_r2r(mm3, mm5);/* mm2: 00 B1 00 00 00 B0 00 00 */\ por_r2r(mm5, mm1); #define LOAD_RGB_16 movq_m2r(*src, mm5);\ pxor_r2r(mm3, mm3);/* Zero mm3 */\ movq_r2r(mm5, mm2);/* mm2: P3 P3 P2 P2 P1 P1 P0 P0 */\ pand_m2r(rgb_yuv_rgb16_lower_mask, mm2);\ psllq_i2r(3, mm2);\ movq_r2r(mm2, mm0);\ punpcklbw_r2r(mm3, mm0);/* mm0: 00 00 00 R1 00 00 00 R0 */\ movq_r2r(mm2, mm1);\ punpckhbw_r2r(mm3, mm1);/* mm1: 00 00 00 R3 00 00 00 R2 */\ movq_r2r(mm5, mm2);/* mm2: P3 P3 P2 P2 P1 P1 P0 P0 */\ pand_m2r(rgb_yuv_rgb16_middle_mask, mm2);\ psrlq_i2r(3, mm2);\ punpcklbw_r2r(mm2, mm3);/* mm3: 00 00 G1 00 00 00 G0 00 */\ por_r2r(mm3, mm0);/* mm0: 00 00 G1 R1 00 00 G0 R0 */\ pxor_r2r(mm3, mm3);/* Zero mm3;*/\ punpckhbw_r2r(mm2, mm3);/* mm3: 00 00 00 R3 00 00 00 R2 */\ por_r2r(mm3, mm1);/* mm1: 00 00 G3 R3 00 00 G2 R2 */\ pand_m2r(rgb_yuv_rgb16_upper_mask, mm5);\ movq_r2r(mm5, mm2);\ pxor_r2r(mm3, mm3);/* Zero mm3;*/\ punpcklbw_r2r(mm3, mm2);/* mm2: 00 B1 00 00 00 B0 00 00 */\ por_r2r(mm2, mm0);\ punpckhbw_r2r(mm3, mm5);/* mm2: 00 B1 00 00 00 B0 00 00 */\ por_r2r(mm5, mm1); // RGB to Y conversion // Input: // mm0: 00 B1 G1 R1 00 B0 G0 R0 // mm1: 00 B3 G3 R3 00 B2 G2 R2 #define R_TO_Y (int16_t)( 0.29900*219.0/255.0*32768.0) #define G_TO_Y (int16_t)( 0.58700*219.0/255.0*32768.0) #define B_TO_Y (int16_t)( 0.11400*219.0/255.0*32768.0) #define R_TO_U (int16_t)(-0.16874*224.0/255.0*32768.0) #define G_TO_U (int16_t)(-0.33126*224.0/255.0*32768.0) #define B_TO_U (int16_t)( 0.50000*224.0/255.0*32768.0) #define R_TO_V (int16_t)( 0.50000*224.0/255.0*32768.0) #define G_TO_V (int16_t)(-0.41869*224.0/255.0*32768.0) #define B_TO_V (int16_t)(-0.08131*224.0/255.0*32768.0) #define R_TO_YJ (int16_t)( 0.29900*32768.0) #define G_TO_YJ (int16_t)( 0.58700*32768.0) #define B_TO_YJ (int16_t)( 0.11400*32768.0) #define R_TO_UJ (int16_t)(-0.16874*32768.0) #define G_TO_UJ (int16_t)(-0.33126*32768.0) #define B_TO_UJ (int16_t)( 0.50000*32768.0) #define R_TO_VJ (int16_t)( 0.50000*32768.0) #define G_TO_VJ (int16_t)(-0.41869*32768.0) #define B_TO_VJ (int16_t)(-0.08131*32768.0) static const mmx_t rgb_to_y = { w: { R_TO_Y, G_TO_Y, B_TO_Y, 0 } }; static const mmx_t rgb_to_u = { w: { R_TO_U, G_TO_U, B_TO_U, 0 } }; static const mmx_t rgb_to_v = { w: { R_TO_V, G_TO_V, B_TO_V, 0 } }; static const mmx_t bgr_to_y = { w: { B_TO_Y, G_TO_Y, R_TO_Y, 0 } }; static const mmx_t bgr_to_u = { w: { B_TO_U, G_TO_U, R_TO_U, 0 } }; static const mmx_t bgr_to_v = { w: { B_TO_V, G_TO_V, R_TO_V, 0 } }; static const mmx_t rgb_to_yj = { w: { R_TO_YJ, G_TO_YJ, B_TO_YJ, 0 } }; static const mmx_t rgb_to_uj = { w: { R_TO_UJ, G_TO_UJ, B_TO_UJ, 0 } }; static const mmx_t rgb_to_vj = { w: { R_TO_VJ, G_TO_VJ, B_TO_VJ, 0 } }; static const mmx_t bgr_to_yj = { w: { B_TO_YJ, G_TO_YJ, R_TO_YJ, 0 } }; static const mmx_t bgr_to_uj = { w: { B_TO_UJ, G_TO_UJ, R_TO_UJ, 0 } }; static const mmx_t bgr_to_vj = { w: { B_TO_VJ, G_TO_VJ, R_TO_VJ, 0 } }; static const mmx_t rgb_yuv_y_add = { 0x0010001000100010LL }; static const mmx_t lower_dword = { 0x00000000FFFFFFFFLL}; static const mmx_t upper_dword = { 0xFFFFFFFF00000000LL}; static const mmx_t chroma_mask = { 0x000000FF000000FFLL }; static const mmx_t sign_mask = { 0x0000008000000080LL }; #define RGB_TO_Y pxor_r2r(mm7, mm7);/* Zero mm7 */\ movq_r2r(mm0, mm2);/* mm2: 00 B1 G1 R1 00 B0 G0 R0 */\ punpcklbw_r2r(mm7, mm2);/* mm2: 00 00 00 B0 00 G0 00 R0 */\ pmaddwd_m2r(rgb_to_y, mm2);/* mm2: 00 00 BY*B0 GY*G0+RY*R0 */\ movq_r2r(mm2, mm3);/* mm3: 00 00 BY*B0 GY*G0+RY*R0 */\ pand_m2r(lower_dword, mm3);/* mm3: 00 00 00 00 GY*G0+RY*R0 */\ movq_r2r(mm3, mm4);/* mm4: 00 00 00 00 GY*G0+RY*R0 */\ psrlq_i2r(32, mm2);/* mm2: 00 00 00 00 00 00 BY*B0 */\ movq_r2r(mm2, mm5);/* mm5: 00 00 00 00 00 00 BY*B0 */\ movq_r2r(mm0, mm2);/* mm2: 00 B1 G1 R1 00 B0 G0 R0 */\ punpckhbw_r2r(mm7, mm2);/* mm2: 00 00 00 B1 00 G1 00 R1 */\ pmaddwd_m2r(rgb_to_y, mm2);/* mm2: 00 00 BY*B1 GY*G1+RY*R1 */\ movq_r2r(mm2, mm3);/* mm3: 00 00 BY*B1 GY*G1+RY*R1 */\ psllq_i2r(32, mm3);/* mm3: GY*G1+RY*R1 00 00 00 00 */\ por_r2r(mm3, mm4);/* mm4: GY*G1+RY*R1 GY*G0+RY*R0 */\ pand_m2r(upper_dword, mm2);/* mm2: 00 00 BY*B1 00 00 00 00 */\ por_r2r(mm2, mm5);/* mm5: 00 00 BY*B1 00 00 BY*B0 */\ paddd_r2r(mm4, mm5);/* mm5: 00 Y1 Y1 Y1 00 Y0 Y0 Y0 */\ psrld_i2r(15, mm5);/* mm5: 00 00 00 Y1 00 00 00 Y0 */\ packssdw_r2r(mm7, mm5);/* mm5: 00 00 00 00 00 Y1 00 Y0 */\ movq_r2r(mm5, mm6);/* mm6: 00 00 00 00 00 Y1 00 Y0 */\ movq_r2r(mm1, mm2);/* mm2: 00 B1 G1 R1 00 B0 G0 R0 */\ punpcklbw_r2r(mm7, mm2);/* mm2: 00 00 00 B0 00 G0 00 R0 */\ pmaddwd_m2r(rgb_to_y, mm2);/* mm2: 00 00 BY*B0 GY*G0+RY*R0 */\ movq_r2r(mm2, mm3);/* mm3: 00 00 BY*B0 GY*G0+RY*R0 */\ pand_m2r(lower_dword, mm3);/* mm3: 00 00 00 00 GY*G0+RY*R0 */\ movq_r2r(mm3, mm4);/* mm4: 00 00 00 00 GY*G0+RY*R0 */\ psrlq_i2r(32, mm2);/* mm2: 00 00 00 00 00 00 BY*B0 */\ movq_r2r(mm2, mm5);/* mm5: 00 00 00 00 00 00 BY*B0 */\ movq_r2r(mm1, mm2);/* mm2: 00 B1 G1 R1 00 B0 G0 R0 */\ punpckhbw_r2r(mm7, mm2);/* mm2: 00 00 00 B1 00 G1 00 R1 */\ pmaddwd_m2r(rgb_to_y, mm2);/* mm2: 00 00 BY*B1 GY*G1+RY*R1 */\ movq_r2r(mm2, mm3);/* mm3: 00 00 BY*B1 GY*G1+RY*R1 */\ psllq_i2r(32, mm3);/* mm3: GY*G1+RY*R1 00 00 00 00 */\ por_r2r(mm3, mm4);/* mm4: GY*G1+RY*R1 GY*G0+RY*R0 */\ pand_m2r(upper_dword, mm2);/* mm2: 00 00 BY*B1 00 00 00 00 */\ por_r2r(mm2, mm5);/* mm5: 00 00 BY*B1 00 00 BY*B0 */\ paddd_r2r(mm4, mm5);/* mm5: 00 Y1 Y1 Y1 00 Y0 Y0 Y0 */\ psrld_i2r(15, mm5);/* mm5: 00 00 00 Y1 00 00 00 Y0 */\ packssdw_r2r(mm5, mm7);/* mm7: 00 Y1 00 Y0 00 00 00 00 */\ por_r2r(mm7, mm6);/* mm6: 00 Y3 00 Y2 00 Y1 00 Y0 */\ paddusb_m2r(rgb_yuv_y_add, mm6); #define RGB_TO_YJ pxor_r2r(mm7, mm7);/* Zero mm7 */\ movq_r2r(mm0, mm2);/* mm2: 00 B1 G1 R1 00 B0 G0 R0 */\ punpcklbw_r2r(mm7, mm2);/* mm2: 00 00 00 B0 00 G0 00 R0 */\ pmaddwd_m2r(rgb_to_yj, mm2);/* mm2: 00 00 BY*B0 GY*G0+RY*R0 */\ movq_r2r(mm2, mm3);/* mm3: 00 00 BY*B0 GY*G0+RY*R0 */\ pand_m2r(lower_dword, mm3);/* mm3: 00 00 00 00 GY*G0+RY*R0 */\ movq_r2r(mm3, mm4);/* mm4: 00 00 00 00 GY*G0+RY*R0 */\ psrlq_i2r(32, mm2);/* mm2: 00 00 00 00 00 00 BY*B0 */\ movq_r2r(mm2, mm5);/* mm5: 00 00 00 00 00 00 BY*B0 */\ movq_r2r(mm0, mm2);/* mm2: 00 B1 G1 R1 00 B0 G0 R0 */\ punpckhbw_r2r(mm7, mm2);/* mm2: 00 00 00 B1 00 G1 00 R1 */\ pmaddwd_m2r(rgb_to_yj, mm2);/* mm2: 00 00 BY*B1 GY*G1+RY*R1 */\ movq_r2r(mm2, mm3);/* mm3: 00 00 BY*B1 GY*G1+RY*R1 */\ psllq_i2r(32, mm3);/* mm3: GY*G1+RY*R1 00 00 00 00 */\ por_r2r(mm3, mm4);/* mm4: GY*G1+RY*R1 GY*G0+RY*R0 */\ pand_m2r(upper_dword, mm2);/* mm2: 00 00 BY*B1 00 00 00 00 */\ por_r2r(mm2, mm5);/* mm5: 00 00 BY*B1 00 00 BY*B0 */\ paddd_r2r(mm4, mm5);/* mm5: 00 Y1 Y1 Y1 00 Y0 Y0 Y0 */\ psrld_i2r(15, mm5);/* mm5: 00 00 00 Y1 00 00 00 Y0 */\ packssdw_r2r(mm7, mm5);/* mm5: 00 00 00 00 00 Y1 00 Y0 */\ movq_r2r(mm5, mm6);/* mm6: 00 00 00 00 00 Y1 00 Y0 */\ movq_r2r(mm1, mm2);/* mm2: 00 B1 G1 R1 00 B0 G0 R0 */\ punpcklbw_r2r(mm7, mm2);/* mm2: 00 00 00 B0 00 G0 00 R0 */\ pmaddwd_m2r(rgb_to_yj, mm2);/* mm2: 00 00 BY*B0 GY*G0+RY*R0 */\ movq_r2r(mm2, mm3);/* mm3: 00 00 BY*B0 GY*G0+RY*R0 */\ pand_m2r(lower_dword, mm3);/* mm3: 00 00 00 00 GY*G0+RY*R0 */\ movq_r2r(mm3, mm4);/* mm4: 00 00 00 00 GY*G0+RY*R0 */\ psrlq_i2r(32, mm2);/* mm2: 00 00 00 00 00 00 BY*B0 */\ movq_r2r(mm2, mm5);/* mm5: 00 00 00 00 00 00 BY*B0 */\ movq_r2r(mm1, mm2);/* mm2: 00 B1 G1 R1 00 B0 G0 R0 */\ punpckhbw_r2r(mm7, mm2);/* mm2: 00 00 00 B1 00 G1 00 R1 */\ pmaddwd_m2r(rgb_to_yj, mm2);/* mm2: 00 00 BY*B1 GY*G1+RY*R1 */\ movq_r2r(mm2, mm3);/* mm3: 00 00 BY*B1 GY*G1+RY*R1 */\ psllq_i2r(32, mm3);/* mm3: GY*G1+RY*R1 00 00 00 00 */\ por_r2r(mm3, mm4);/* mm4: GY*G1+RY*R1 GY*G0+RY*R0 */\ pand_m2r(upper_dword, mm2);/* mm2: 00 00 BY*B1 00 00 00 00 */\ por_r2r(mm2, mm5);/* mm5: 00 00 BY*B1 00 00 BY*B0 */\ paddd_r2r(mm4, mm5);/* mm5: 00 Y1 Y1 Y1 00 Y0 Y0 Y0 */\ psrld_i2r(15, mm5);/* mm5: 00 00 00 Y1 00 00 00 Y0 */\ packssdw_r2r(mm5, mm7);/* mm7: 00 Y1 00 Y0 00 00 00 00 */\ por_r2r(mm7, mm6);/* mm6: 00 Y3 00 Y2 00 Y1 00 Y0 */ // paddusb_m2r(rgb_yuv_y_add, mm6); #define RGB_TO_UV_2 pxor_r2r(mm7, mm7);/* Zero mm7 */\ movq_r2r(mm0, mm2);/* mm2: 00 B1 G1 R1 00 B0 G0 R0 */\ punpcklbw_r2r(mm7, mm2);/* mm2: 00 00 00 B0 00 G0 00 R0 */\ pmaddwd_m2r(rgb_to_u, mm2);/* mm2: 00 00 BU*B0 GU*G0+RU*R0 */\ movq_r2r(mm2, mm4);/* mm4: 00 00 BU*B0 GU*G0+RU*R0 */\ pand_m2r(lower_dword, mm4);/* mm4: 00 00 00 00 GU*G0+RU*R0 */\ psrlq_i2r(32, mm2); /* mm2: 00 00 00 00 00 00 BU*B0 */\ paddd_r2r(mm2, mm4);/* mm4: 00 00 00 00 00 U0 U0 U0 */\ punpcklbw_r2r(mm7, mm0);/* mm2: 00 00 00 B0 00 G0 00 R0 */\ pmaddwd_m2r(rgb_to_v, mm0);/* mm2: 00 00 BV*B0 GV*G0+RV*R0 */\ movq_r2r(mm0, mm5);/* mm3: 00 00 BV*B0 GV*G0+RV*R0 */\ pand_m2r(lower_dword, mm5);/* mm5: 00 00 00 00 GV*G0+RV*R0 */\ psrlq_i2r(32, mm0); /* mm2: 00 00 00 00 00 00 BV*B0 */\ paddd_r2r(mm0, mm5);/* mm5: 00 00 00 00 00 V0 V0 V0 */\ movq_r2r(mm1, mm2);/* mm2: 00 B1 G1 R1 00 B0 G0 R0 */\ punpcklbw_r2r(mm7, mm2);/* mm1: 00 00 00 B2 00 G2 00 R2 */\ pmaddwd_m2r(rgb_to_u, mm2);/* mm1: 00 00 BU*B2 GU*G2+RU*R2 */\ movq_r2r(mm2, mm3);/* mm3: 00 00 BU*B2 GU*G2+RU*R2 */\ pand_m2r(lower_dword, mm3);/* mm4: 00 00 00 00 GU*G2+RU*R2 */\ psrlq_i2r(32, mm2); /* mm2: 00 00 00 00 00 00 BU*B2 */\ paddd_r2r(mm2, mm3);/* mm3: 00 00 00 00 00 U2 U2 U2 */\ psllq_i2r(32, mm3); /* mm3: 00 U2 U2 U2 00 00 00 00 */\ por_r2r(mm3, mm4);/* mm4: 00 U2 U2 U2 00 U0 U0 U0 */\ punpcklbw_r2r(mm7, mm1);/* mm1: 00 00 00 B2 00 G2 00 R2 */\ pmaddwd_m2r(rgb_to_v, mm1);/* mm1: 00 00 BV*B2 GV*G2+RV*R2 */\ movq_r2r(mm1, mm3);/* mm3: 00 00 BV*B2 GV*G2+RV*R2 */\ pand_m2r(lower_dword, mm3);/* mm5: 00 00 00 00 GV*G2+RV*R2 */\ psrlq_i2r(32, mm1); /* mm2: 00 00 00 00 00 00 BV*B2 */\ paddd_r2r(mm1, mm3);/* mm3: 00 00 00 00 00 V2 V2 V2 */\ psllq_i2r(32, mm3); /* mm3: 00 V2 V2 V2 00 00 00 00 */\ por_r2r(mm3, mm5);/* mm4: 00 V2 V2 V2 00 V0 V0 V0 */\ psrad_i2r(15, mm4);/* mm4: 00 00 00 U2 00 00 00 U0 */\ psrad_i2r(15, mm5);/* mm5: 00 00 00 V2 00 00 00 V0 */\ pand_m2r(chroma_mask, mm4);\ pand_m2r(chroma_mask, mm5);\ pxor_m2r(sign_mask, mm4);\ pxor_m2r(sign_mask, mm5); #define RGB_TO_UVJ_2 pxor_r2r(mm7, mm7);/* Zero mm7 */\ movq_r2r(mm0, mm2);/* mm2: 00 B1 G1 R1 00 B0 G0 R0 */\ punpcklbw_r2r(mm7, mm2);/* mm2: 00 00 00 B0 00 G0 00 R0 */\ pmaddwd_m2r(rgb_to_uj, mm2);/* mm2: 00 00 BU*B0 GU*G0+RU*R0 */\ movq_r2r(mm2, mm4);/* mm4: 00 00 BU*B0 GU*G0+RU*R0 */\ pand_m2r(lower_dword, mm4);/* mm4: 00 00 00 00 GU*G0+RU*R0 */\ psrlq_i2r(32, mm2); /* mm2: 00 00 00 00 00 00 BU*B0 */\ paddd_r2r(mm2, mm4);/* mm4: 00 00 00 00 00 U0 U0 U0 */\ punpcklbw_r2r(mm7, mm0);/* mm2: 00 00 00 B0 00 G0 00 R0 */\ pmaddwd_m2r(rgb_to_vj, mm0);/* mm2: 00 00 BV*B0 GV*G0+RV*R0 */\ movq_r2r(mm0, mm5);/* mm3: 00 00 BV*B0 GV*G0+RV*R0 */\ pand_m2r(lower_dword, mm5);/* mm5: 00 00 00 00 GV*G0+RV*R0 */\ psrlq_i2r(32, mm0); /* mm2: 00 00 00 00 00 00 BV*B0 */\ paddd_r2r(mm0, mm5);/* mm5: 00 00 00 00 00 V0 V0 V0 */\ movq_r2r(mm1, mm2);/* mm2: 00 B1 G1 R1 00 B0 G0 R0 */\ punpcklbw_r2r(mm7, mm2);/* mm1: 00 00 00 B2 00 G2 00 R2 */\ pmaddwd_m2r(rgb_to_uj, mm2);/* mm1: 00 00 BU*B2 GU*G2+RU*R2 */\ movq_r2r(mm2, mm3);/* mm3: 00 00 BU*B2 GU*G2+RU*R2 */\ pand_m2r(lower_dword, mm3);/* mm4: 00 00 00 00 GU*G2+RU*R2 */\ psrlq_i2r(32, mm2); /* mm2: 00 00 00 00 00 00 BU*B2 */\ paddd_r2r(mm2, mm3);/* mm3: 00 00 00 00 00 U2 U2 U2 */\ psllq_i2r(32, mm3); /* mm3: 00 U2 U2 U2 00 00 00 00 */\ por_r2r(mm3, mm4);/* mm4: 00 U2 U2 U2 00 U0 U0 U0 */\ punpcklbw_r2r(mm7, mm1);/* mm1: 00 00 00 B2 00 G2 00 R2 */\ pmaddwd_m2r(rgb_to_vj, mm1);/* mm1: 00 00 BV*B2 GV*G2+RV*R2 */\ movq_r2r(mm1, mm3);/* mm3: 00 00 BV*B2 GV*G2+RV*R2 */\ pand_m2r(lower_dword, mm3);/* mm5: 00 00 00 00 GV*G2+RV*R2 */\ psrlq_i2r(32, mm1); /* mm2: 00 00 00 00 00 00 BV*B2 */\ paddd_r2r(mm1, mm3);/* mm3: 00 00 00 00 00 V2 V2 V2 */\ psllq_i2r(32, mm3); /* mm3: 00 V2 V2 V2 00 00 00 00 */\ por_r2r(mm3, mm5);/* mm4: 00 V2 V2 V2 00 V0 V0 V0 */\ psrad_i2r(15, mm4);/* mm4: 00 00 00 U2 00 00 00 U0 */\ psrad_i2r(15, mm5);/* mm4: 00 00 00 V2 00 00 00 V0 */\ pand_m2r(chroma_mask, mm4);\ pand_m2r(chroma_mask, mm5);\ pxor_m2r(sign_mask, mm4);\ pxor_m2r(sign_mask, mm5); #define BGR_TO_Y pxor_r2r(mm7, mm7);/* Zero mm7 */\ movq_r2r(mm0, mm2);/* mm2: 00 B1 G1 R1 00 B0 G0 R0 */\ punpcklbw_r2r(mm7, mm2);/* mm2: 00 00 00 B0 00 G0 00 R0 */\ pmaddwd_m2r(bgr_to_y, mm2);/* mm2: 00 00 BY*B0 GY*G0+RY*R0 */\ movq_r2r(mm2, mm3);/* mm3: 00 00 BY*B0 GY*G0+RY*R0 */\ pand_m2r(lower_dword, mm3);/* mm3: 00 00 00 00 GY*G0+RY*R0 */\ movq_r2r(mm3, mm4);/* mm4: 00 00 00 00 GY*G0+RY*R0 */\ psrlq_i2r(32, mm2);/* mm2: 00 00 00 00 00 00 BY*B0 */\ movq_r2r(mm2, mm5);/* mm5: 00 00 00 00 00 00 BY*B0 */\ movq_r2r(mm0, mm2);/* mm2: 00 B1 G1 R1 00 B0 G0 R0 */\ punpckhbw_r2r(mm7, mm2);/* mm2: 00 00 00 B1 00 G1 00 R1 */\ pmaddwd_m2r(bgr_to_y, mm2);/* mm2: 00 00 BY*B1 GY*G1+RY*R1 */\ movq_r2r(mm2, mm3);/* mm3: 00 00 BY*B1 GY*G1+RY*R1 */\ psllq_i2r(32, mm3);/* mm3: GY*G1+RY*R1 00 00 00 00 */\ por_r2r(mm3, mm4);/* mm4: GY*G1+RY*R1 GY*G0+RY*R0 */\ pand_m2r(upper_dword, mm2);/* mm2: 00 00 BY*B1 00 00 00 00 */\ por_r2r(mm2, mm5);/* mm5: 00 00 BY*B1 00 00 BY*B0 */\ paddd_r2r(mm4, mm5);/* mm5: 00 Y1 Y1 Y1 00 Y0 Y0 Y0 */\ psrld_i2r(15, mm5);/* mm5: 00 00 00 Y1 00 00 00 Y0 */\ packssdw_r2r(mm7, mm5);/* mm5: 00 00 00 00 00 Y1 00 Y0 */\ movq_r2r(mm5, mm6);/* mm6: 00 00 00 00 00 Y1 00 Y0 */\ movq_r2r(mm1, mm2);/* mm2: 00 B1 G1 R1 00 B0 G0 R0 */\ punpcklbw_r2r(mm7, mm2);/* mm2: 00 00 00 B0 00 G0 00 R0 */\ pmaddwd_m2r(bgr_to_y, mm2);/* mm2: 00 00 BY*B0 GY*G0+RY*R0 */\ movq_r2r(mm2, mm3);/* mm3: 00 00 BY*B0 GY*G0+RY*R0 */\ pand_m2r(lower_dword, mm3);/* mm3: 00 00 00 00 GY*G0+RY*R0 */\ movq_r2r(mm3, mm4);/* mm4: 00 00 00 00 GY*G0+RY*R0 */\ psrlq_i2r(32, mm2);/* mm2: 00 00 00 00 00 00 BY*B0 */\ movq_r2r(mm2, mm5);/* mm5: 00 00 00 00 00 00 BY*B0 */\ movq_r2r(mm1, mm2);/* mm2: 00 B1 G1 R1 00 B0 G0 R0 */\ punpckhbw_r2r(mm7, mm2);/* mm2: 00 00 00 B1 00 G1 00 R1 */\ pmaddwd_m2r(bgr_to_y, mm2);/* mm2: 00 00 BY*B1 GY*G1+RY*R1 */\ movq_r2r(mm2, mm3);/* mm3: 00 00 BY*B1 GY*G1+RY*R1 */\ psllq_i2r(32, mm3);/* mm3: GY*G1+RY*R1 00 00 00 00 */\ por_r2r(mm3, mm4);/* mm4: GY*G1+RY*R1 GY*G0+RY*R0 */\ pand_m2r(upper_dword, mm2);/* mm2: 00 00 BY*B1 00 00 00 00 */\ por_r2r(mm2, mm5);/* mm5: 00 00 BY*B1 00 00 BY*B0 */\ paddd_r2r(mm4, mm5);/* mm5: 00 Y1 Y1 Y1 00 Y0 Y0 Y0 */\ psrld_i2r(15, mm5);/* mm5: 00 00 00 Y1 00 00 00 Y0 */\ packssdw_r2r(mm5, mm7);/* mm7: 00 Y1 00 Y0 00 00 00 00 */\ por_r2r(mm7, mm6);/* mm6: 00 Y3 00 Y2 00 Y1 00 Y0 */\ paddusb_m2r(rgb_yuv_y_add, mm6); #define BGR_TO_YJ pxor_r2r(mm7, mm7);/* Zero mm7 */\ movq_r2r(mm0, mm2);/* mm2: 00 B1 G1 R1 00 B0 G0 R0 */\ punpcklbw_r2r(mm7, mm2);/* mm2: 00 00 00 B0 00 G0 00 R0 */\ pmaddwd_m2r(bgr_to_yj, mm2);/* mm2: 00 00 BY*B0 GY*G0+RY*R0 */\ movq_r2r(mm2, mm3);/* mm3: 00 00 BY*B0 GY*G0+RY*R0 */\ pand_m2r(lower_dword, mm3);/* mm3: 00 00 00 00 GY*G0+RY*R0 */\ movq_r2r(mm3, mm4);/* mm4: 00 00 00 00 GY*G0+RY*R0 */\ psrlq_i2r(32, mm2);/* mm2: 00 00 00 00 00 00 BY*B0 */\ movq_r2r(mm2, mm5);/* mm5: 00 00 00 00 00 00 BY*B0 */\ movq_r2r(mm0, mm2);/* mm2: 00 B1 G1 R1 00 B0 G0 R0 */\ punpckhbw_r2r(mm7, mm2);/* mm2: 00 00 00 B1 00 G1 00 R1 */\ pmaddwd_m2r(bgr_to_yj, mm2);/* mm2: 00 00 BY*B1 GY*G1+RY*R1 */\ movq_r2r(mm2, mm3);/* mm3: 00 00 BY*B1 GY*G1+RY*R1 */\ psllq_i2r(32, mm3);/* mm3: GY*G1+RY*R1 00 00 00 00 */\ por_r2r(mm3, mm4);/* mm4: GY*G1+RY*R1 GY*G0+RY*R0 */\ pand_m2r(upper_dword, mm2);/* mm2: 00 00 BY*B1 00 00 00 00 */\ por_r2r(mm2, mm5);/* mm5: 00 00 BY*B1 00 00 BY*B0 */\ paddd_r2r(mm4, mm5);/* mm5: 00 Y1 Y1 Y1 00 Y0 Y0 Y0 */\ psrld_i2r(15, mm5);/* mm5: 00 00 00 Y1 00 00 00 Y0 */\ packssdw_r2r(mm7, mm5);/* mm5: 00 00 00 00 00 Y1 00 Y0 */\ movq_r2r(mm5, mm6);/* mm6: 00 00 00 00 00 Y1 00 Y0 */\ movq_r2r(mm1, mm2);/* mm2: 00 B1 G1 R1 00 B0 G0 R0 */\ punpcklbw_r2r(mm7, mm2);/* mm2: 00 00 00 B0 00 G0 00 R0 */\ pmaddwd_m2r(bgr_to_yj, mm2);/* mm2: 00 00 BY*B0 GY*G0+RY*R0 */\ movq_r2r(mm2, mm3);/* mm3: 00 00 BY*B0 GY*G0+RY*R0 */\ pand_m2r(lower_dword, mm3);/* mm3: 00 00 00 00 GY*G0+RY*R0 */\ movq_r2r(mm3, mm4);/* mm4: 00 00 00 00 GY*G0+RY*R0 */\ psrlq_i2r(32, mm2);/* mm2: 00 00 00 00 00 00 BY*B0 */\ movq_r2r(mm2, mm5);/* mm5: 00 00 00 00 00 00 BY*B0 */\ movq_r2r(mm1, mm2);/* mm2: 00 B1 G1 R1 00 B0 G0 R0 */\ punpckhbw_r2r(mm7, mm2);/* mm2: 00 00 00 B1 00 G1 00 R1 */\ pmaddwd_m2r(bgr_to_yj, mm2);/* mm2: 00 00 BY*B1 GY*G1+RY*R1 */\ movq_r2r(mm2, mm3);/* mm3: 00 00 BY*B1 GY*G1+RY*R1 */\ psllq_i2r(32, mm3);/* mm3: GY*G1+RY*R1 00 00 00 00 */\ por_r2r(mm3, mm4);/* mm4: GY*G1+RY*R1 GY*G0+RY*R0 */\ pand_m2r(upper_dword, mm2);/* mm2: 00 00 BY*B1 00 00 00 00 */\ por_r2r(mm2, mm5);/* mm5: 00 00 BY*B1 00 00 BY*B0 */\ paddd_r2r(mm4, mm5);/* mm5: 00 Y1 Y1 Y1 00 Y0 Y0 Y0 */\ psrld_i2r(15, mm5);/* mm5: 00 00 00 Y1 00 00 00 Y0 */\ packssdw_r2r(mm5, mm7);/* mm7: 00 Y1 00 Y0 00 00 00 00 */\ por_r2r(mm7, mm6);/* mm6: 00 Y3 00 Y2 00 Y1 00 Y0 */ #define BGR_TO_UV_2 pxor_r2r(mm7, mm7);/* Zero mm7 */\ movq_r2r(mm0, mm2);/* mm2: 00 B1 G1 R1 00 B0 G0 R0 */\ punpcklbw_r2r(mm7, mm2);/* mm2: 00 00 00 B0 00 G0 00 R0 */\ pmaddwd_m2r(bgr_to_u, mm2);/* mm2: 00 00 BU*B0 GU*G0+RU*R0 */\ movq_r2r(mm2, mm4);/* mm4: 00 00 BU*B0 GU*G0+RU*R0 */\ pand_m2r(lower_dword, mm4);/* mm4: 00 00 00 00 GU*G0+RU*R0 */\ psrlq_i2r(32, mm2); /* mm2: 00 00 00 00 00 00 BU*B0 */\ paddd_r2r(mm2, mm4);/* mm4: 00 00 00 00 00 U0 U0 U0 */\ punpcklbw_r2r(mm7, mm0);/* mm2: 00 00 00 B0 00 G0 00 R0 */\ pmaddwd_m2r(bgr_to_v, mm0);/* mm2: 00 00 BV*B0 GV*G0+RV*R0 */\ movq_r2r(mm0, mm5);/* mm3: 00 00 BV*B0 GV*G0+RV*R0 */\ pand_m2r(lower_dword, mm5);/* mm5: 00 00 00 00 GV*G0+RV*R0 */\ psrlq_i2r(32, mm0); /* mm2: 00 00 00 00 00 00 BV*B0 */\ paddd_r2r(mm0, mm5);/* mm5: 00 00 00 00 00 V0 V0 V0 */\ movq_r2r(mm1, mm2);/* mm2: 00 B1 G1 R1 00 B0 G0 R0 */\ punpcklbw_r2r(mm7, mm2);/* mm1: 00 00 00 B2 00 G2 00 R2 */\ pmaddwd_m2r(bgr_to_u, mm2);/* mm1: 00 00 BU*B2 GU*G2+RU*R2 */\ movq_r2r(mm2, mm3);/* mm3: 00 00 BU*B2 GU*G2+RU*R2 */\ pand_m2r(lower_dword, mm3);/* mm4: 00 00 00 00 GU*G2+RU*R2 */\ psrlq_i2r(32, mm2); /* mm2: 00 00 00 00 00 00 BU*B2 */\ paddd_r2r(mm2, mm3);/* mm3: 00 00 00 00 00 U2 U2 U2 */\ psllq_i2r(32, mm3); /* mm3: 00 U2 U2 U2 00 00 00 00 */\ por_r2r(mm3, mm4);/* mm4: 00 U2 U2 U2 00 U0 U0 U0 */\ punpcklbw_r2r(mm7, mm1);/* mm1: 00 00 00 B2 00 G2 00 R2 */\ pmaddwd_m2r(bgr_to_v, mm1);/* mm1: 00 00 BV*B2 GV*G2+RV*R2 */\ movq_r2r(mm1, mm3);/* mm3: 00 00 BV*B2 GV*G2+RV*R2 */\ pand_m2r(lower_dword, mm3);/* mm5: 00 00 00 00 GV*G2+RV*R2 */\ psrlq_i2r(32, mm1); /* mm2: 00 00 00 00 00 00 BV*B2 */\ paddd_r2r(mm1, mm3);/* mm3: 00 00 00 00 00 V2 V2 V2 */\ psllq_i2r(32, mm3); /* mm3: 00 V2 V2 V2 00 00 00 00 */\ por_r2r(mm3, mm5);/* mm4: 00 V2 V2 V2 00 V0 V0 V0 */\ psrad_i2r(15, mm4);/* mm4: 00 00 00 U2 00 00 00 U0 */\ psrad_i2r(15, mm5);/* mm5: 00 00 00 V2 00 00 00 V0 */\ pand_m2r(chroma_mask, mm4);\ pand_m2r(chroma_mask, mm5);\ pxor_m2r(sign_mask, mm4);\ pxor_m2r(sign_mask, mm5); #define BGR_TO_UVJ_2 pxor_r2r(mm7, mm7);/* Zero mm7 */\ movq_r2r(mm0, mm2);/* mm2: 00 B1 G1 R1 00 B0 G0 R0 */\ punpcklbw_r2r(mm7, mm2);/* mm2: 00 00 00 B0 00 G0 00 R0 */\ pmaddwd_m2r(bgr_to_uj, mm2);/* mm2: 00 00 BU*B0 GU*G0+RU*R0 */\ movq_r2r(mm2, mm4);/* mm4: 00 00 BU*B0 GU*G0+RU*R0 */\ pand_m2r(lower_dword, mm4);/* mm4: 00 00 00 00 GU*G0+RU*R0 */\ psrlq_i2r(32, mm2); /* mm2: 00 00 00 00 00 00 BU*B0 */\ paddd_r2r(mm2, mm4);/* mm4: 00 00 00 00 00 U0 U0 U0 */\ punpcklbw_r2r(mm7, mm0);/* mm2: 00 00 00 B0 00 G0 00 R0 */\ pmaddwd_m2r(bgr_to_vj, mm0);/* mm2: 00 00 BV*B0 GV*G0+RV*R0 */\ movq_r2r(mm0, mm5);/* mm3: 00 00 BV*B0 GV*G0+RV*R0 */\ pand_m2r(lower_dword, mm5);/* mm5: 00 00 00 00 GV*G0+RV*R0 */\ psrlq_i2r(32, mm0); /* mm2: 00 00 00 00 00 00 BV*B0 */\ paddd_r2r(mm0, mm5);/* mm5: 00 00 00 00 00 V0 V0 V0 */\ movq_r2r(mm1, mm2);/* mm2: 00 B1 G1 R1 00 B0 G0 R0 */\ punpcklbw_r2r(mm7, mm2);/* mm1: 00 00 00 B2 00 G2 00 R2 */\ pmaddwd_m2r(bgr_to_uj, mm2);/* mm1: 00 00 BU*B2 GU*G2+RU*R2 */\ movq_r2r(mm2, mm3);/* mm3: 00 00 BU*B2 GU*G2+RU*R2 */\ pand_m2r(lower_dword, mm3);/* mm4: 00 00 00 00 GU*G2+RU*R2 */\ psrlq_i2r(32, mm2); /* mm2: 00 00 00 00 00 00 BU*B2 */\ paddd_r2r(mm2, mm3);/* mm3: 00 00 00 00 00 U2 U2 U2 */\ psllq_i2r(32, mm3); /* mm3: 00 U2 U2 U2 00 00 00 00 */\ por_r2r(mm3, mm4);/* mm4: 00 U2 U2 U2 00 U0 U0 U0 */\ punpcklbw_r2r(mm7, mm1);/* mm1: 00 00 00 B2 00 G2 00 R2 */\ pmaddwd_m2r(bgr_to_vj, mm1);/* mm1: 00 00 BV*B2 GV*G2+RV*R2 */\ movq_r2r(mm1, mm3);/* mm3: 00 00 BV*B2 GV*G2+RV*R2 */\ pand_m2r(lower_dword, mm3);/* mm5: 00 00 00 00 GV*G2+RV*R2 */\ psrlq_i2r(32, mm1); /* mm2: 00 00 00 00 00 00 BV*B2 */\ paddd_r2r(mm1, mm3);/* mm3: 00 00 00 00 00 V2 V2 V2 */\ psllq_i2r(32, mm3); /* mm3: 00 V2 V2 V2 00 00 00 00 */\ por_r2r(mm3, mm5);/* mm4: 00 V2 V2 V2 00 V0 V0 V0 */\ psrad_i2r(15, mm4);/* mm4: 00 00 00 U2 00 00 00 U0 */\ psrad_i2r(15, mm5);/* mm5: 00 00 00 V2 00 00 00 V0 */\ pand_m2r(chroma_mask, mm4);\ pand_m2r(chroma_mask, mm5);\ pxor_m2r(sign_mask, mm4);\ pxor_m2r(sign_mask, mm5); #define OUTPUT_YUY2 psllq_i2r(8, mm4);\ por_r2r(mm4, mm6);\ psllq_i2r(24, mm5);\ por_r2r(mm5, mm6);\ MOVQ_R2M(mm6, *dst); #define OUTPUT_UYVY psllq_i2r(8, mm6);\ por_r2r(mm4, mm6);\ psllq_i2r(16, mm5);\ por_r2r(mm5, mm6);\ MOVQ_R2M(mm6, *dst); #define OUTPUT_PLANAR_Y pxor_r2r(mm7, mm7);\ packuswb_r2r(mm7, mm6);\ movd_r2m(mm6, *dst_y); #define OUTPUT_PLANAR_UV2 pxor_r2r(mm7, mm7);\ packssdw_r2r(mm7, mm4);\ packssdw_r2r(mm7, mm5);\ packuswb_r2r(mm7, mm4);\ packuswb_r2r(mm7, mm5);\ movd_r2m(mm4, i_tmp);\ *((uint16_t*)(dst_u))=(uint16_t)i_tmp;\ movd_r2m(mm5, i_tmp);\ *((uint16_t*)(dst_v))=(uint16_t)i_tmp; #define OUTPUT_PLANAR_UV4 movd_r2m(mm4, i_tmp);\ *dst_u=i_tmp & 0xff;\ movd_r2m(mm5, i_tmp);\ *dst_v=i_tmp & 0xff;\ /*************************************** * -> YUY2 ***************************************/ #define FUNC_NAME rgb_15_to_yuy2_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE 8 #define NUM_PIXELS 4 #define CONVERT \ LOAD_RGB_15 \ BGR_TO_Y \ BGR_TO_UV_2 \ OUTPUT_YUY2 #define CLEANUP emms(); // #define INIT #include "../csp_packed_packed.h" #define FUNC_NAME bgr_15_to_yuy2_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE 8 #define NUM_PIXELS 4 #define CONVERT \ LOAD_RGB_15 \ RGB_TO_Y \ RGB_TO_UV_2 \ OUTPUT_YUY2 #define CLEANUP emms(); // #define INIT #include "../csp_packed_packed.h" #define FUNC_NAME rgb_16_to_yuy2_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE 8 #define NUM_PIXELS 4 #define CONVERT \ LOAD_RGB_16 \ BGR_TO_Y \ BGR_TO_UV_2 \ OUTPUT_YUY2 #define CLEANUP emms(); // #define INIT #include "../csp_packed_packed.h" #define FUNC_NAME bgr_16_to_yuy2_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE 8 #define NUM_PIXELS 4 #define CONVERT \ LOAD_RGB_16 \ RGB_TO_Y \ RGB_TO_UV_2 \ OUTPUT_YUY2 #define CLEANUP emms(); // #define INIT #include "../csp_packed_packed.h" #define FUNC_NAME rgb_24_to_yuy2_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 12 #define OUT_ADVANCE 8 #define NUM_PIXELS 4 #define CONVERT \ RGB_YUV_LOAD_RGB_24 \ RGB_TO_Y \ RGB_TO_UV_2 \ OUTPUT_YUY2 #define CLEANUP emms(); // #define INIT #include "../csp_packed_packed.h" #define FUNC_NAME bgr_24_to_yuy2_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 12 #define OUT_ADVANCE 8 #define NUM_PIXELS 4 #define CONVERT \ RGB_YUV_LOAD_RGB_24 \ BGR_TO_Y \ BGR_TO_UV_2 \ OUTPUT_YUY2 #define CLEANUP emms(); // #define INIT #include "../csp_packed_packed.h" #define FUNC_NAME rgb_32_to_yuy2_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE 8 #define NUM_PIXELS 4 #define CONVERT \ LOAD_RGB_32 \ RGB_TO_Y \ RGB_TO_UV_2 \ OUTPUT_YUY2 #define CLEANUP emms(); // #define INIT #include "../csp_packed_packed.h" #define FUNC_NAME bgr_32_to_yuy2_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE 8 #define NUM_PIXELS 4 #define CONVERT \ LOAD_RGB_32 \ BGR_TO_Y \ BGR_TO_UV_2 \ OUTPUT_YUY2 #define CLEANUP emms(); // #define INIT #include "../csp_packed_packed.h" /*************************************** * -> UYVY ***************************************/ #define FUNC_NAME rgb_15_to_uyvy_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE 8 #define NUM_PIXELS 4 #define CONVERT \ LOAD_RGB_15 \ BGR_TO_Y \ BGR_TO_UV_2 \ OUTPUT_UYVY #define CLEANUP emms(); // #define INIT #include "../csp_packed_packed.h" #define FUNC_NAME bgr_15_to_uyvy_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE 8 #define NUM_PIXELS 4 #define CONVERT \ LOAD_RGB_15 \ RGB_TO_Y \ RGB_TO_UV_2 \ OUTPUT_UYVY #define CLEANUP emms(); // #define INIT #include "../csp_packed_packed.h" #define FUNC_NAME rgb_16_to_uyvy_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE 8 #define NUM_PIXELS 4 #define CONVERT \ LOAD_RGB_16 \ BGR_TO_Y \ BGR_TO_UV_2 \ OUTPUT_UYVY #define CLEANUP emms(); // #define INIT #include "../csp_packed_packed.h" #define FUNC_NAME bgr_16_to_uyvy_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE 8 #define NUM_PIXELS 4 #define CONVERT \ LOAD_RGB_16 \ RGB_TO_Y \ RGB_TO_UV_2 \ OUTPUT_UYVY #define CLEANUP emms(); // #define INIT #include "../csp_packed_packed.h" #define FUNC_NAME rgb_24_to_uyvy_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 12 #define OUT_ADVANCE 8 #define NUM_PIXELS 4 #define CONVERT \ RGB_YUV_LOAD_RGB_24 \ RGB_TO_Y \ RGB_TO_UV_2 \ OUTPUT_UYVY #define CLEANUP emms(); // #define INIT #include "../csp_packed_packed.h" #define FUNC_NAME bgr_24_to_uyvy_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 12 #define OUT_ADVANCE 8 #define NUM_PIXELS 4 #define CONVERT \ RGB_YUV_LOAD_RGB_24 \ BGR_TO_Y \ BGR_TO_UV_2 \ OUTPUT_UYVY #define CLEANUP emms(); // #define INIT #include "../csp_packed_packed.h" #define FUNC_NAME rgb_32_to_uyvy_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE 8 #define NUM_PIXELS 4 #define CONVERT \ LOAD_RGB_32 \ RGB_TO_Y \ RGB_TO_UV_2 \ OUTPUT_UYVY #define CLEANUP emms(); // #define INIT #include "../csp_packed_packed.h" #define FUNC_NAME bgr_32_to_uyvy_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE 8 #define NUM_PIXELS 4 #define CONVERT \ LOAD_RGB_32 \ BGR_TO_Y \ BGR_TO_UV_2 \ OUTPUT_UYVY #define CLEANUP emms(); // #define INIT #include "../csp_packed_packed.h" /*************************************** * -> YUV 420 P ***************************************/ #define FUNC_NAME rgb_15_to_yuv_420_p_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 2 #define NUM_PIXELS 4 #define CONVERT_YUV \ LOAD_RGB_15 \ BGR_TO_Y \ BGR_TO_UV_2 \ OUTPUT_PLANAR_Y \ OUTPUT_PLANAR_UV2 #define CONVERT_Y \ LOAD_RGB_15 \ BGR_TO_Y \ OUTPUT_PLANAR_Y #define CHROMA_SUB 2 #define INIT int i_tmp; #define CLEANUP emms(); #include "../csp_packed_planar.h" #define FUNC_NAME bgr_15_to_yuv_420_p_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 2 #define NUM_PIXELS 4 #define CONVERT_YUV \ LOAD_RGB_15 \ RGB_TO_Y \ RGB_TO_UV_2 \ OUTPUT_PLANAR_Y \ OUTPUT_PLANAR_UV2 #define CONVERT_Y \ LOAD_RGB_15 \ RGB_TO_Y \ OUTPUT_PLANAR_Y #define CHROMA_SUB 2 #define INIT int i_tmp; #define CLEANUP emms(); #include "../csp_packed_planar.h" #define FUNC_NAME rgb_16_to_yuv_420_p_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 2 #define NUM_PIXELS 4 #define CONVERT_YUV \ LOAD_RGB_16 \ BGR_TO_Y \ BGR_TO_UV_2 \ OUTPUT_PLANAR_Y \ OUTPUT_PLANAR_UV2 #define CONVERT_Y \ LOAD_RGB_16 \ BGR_TO_Y \ OUTPUT_PLANAR_Y #define CHROMA_SUB 2 #define INIT int i_tmp; #define CLEANUP emms(); #include "../csp_packed_planar.h" #define FUNC_NAME bgr_16_to_yuv_420_p_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 2 #define NUM_PIXELS 4 #define CONVERT_YUV \ LOAD_RGB_16 \ RGB_TO_Y \ RGB_TO_UV_2 \ OUTPUT_PLANAR_Y \ OUTPUT_PLANAR_UV2 #define CONVERT_Y \ LOAD_RGB_16 \ RGB_TO_Y \ OUTPUT_PLANAR_Y #define CHROMA_SUB 2 #define INIT int i_tmp; #define CLEANUP emms(); #include "../csp_packed_planar.h" #define FUNC_NAME rgb_24_to_yuv_420_p_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 12 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 2 #define NUM_PIXELS 4 #define CONVERT_YUV \ RGB_YUV_LOAD_RGB_24 \ RGB_TO_Y \ RGB_TO_UV_2 \ OUTPUT_PLANAR_Y \ OUTPUT_PLANAR_UV2 #define CONVERT_Y \ RGB_YUV_LOAD_RGB_24 \ RGB_TO_Y \ OUTPUT_PLANAR_Y #define CHROMA_SUB 2 #define INIT int i_tmp; #define CLEANUP emms(); #include "../csp_packed_planar.h" #define FUNC_NAME bgr_24_to_yuv_420_p_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 12 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 2 #define NUM_PIXELS 4 #define CONVERT_YUV \ RGB_YUV_LOAD_RGB_24 \ BGR_TO_Y \ BGR_TO_UV_2 \ OUTPUT_PLANAR_Y \ OUTPUT_PLANAR_UV2 #define CONVERT_Y \ RGB_YUV_LOAD_RGB_24 \ BGR_TO_Y \ OUTPUT_PLANAR_Y #define CHROMA_SUB 2 #define INIT int i_tmp; #define CLEANUP emms(); #include "../csp_packed_planar.h" #define FUNC_NAME rgb_32_to_yuv_420_p_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 2 #define NUM_PIXELS 4 #define CONVERT_YUV \ LOAD_RGB_32 \ RGB_TO_Y \ RGB_TO_UV_2 \ OUTPUT_PLANAR_Y \ OUTPUT_PLANAR_UV2 #define CONVERT_Y \ LOAD_RGB_32 \ RGB_TO_Y \ OUTPUT_PLANAR_Y #define CHROMA_SUB 2 #define INIT int i_tmp; #define CLEANUP emms(); #include "../csp_packed_planar.h" #define FUNC_NAME bgr_32_to_yuv_420_p_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 2 #define NUM_PIXELS 4 #define CONVERT_YUV \ LOAD_RGB_32 \ BGR_TO_Y \ BGR_TO_UV_2 \ OUTPUT_PLANAR_Y \ OUTPUT_PLANAR_UV2 #define CONVERT_Y \ LOAD_RGB_32 \ BGR_TO_Y \ OUTPUT_PLANAR_Y #define CHROMA_SUB 2 #define INIT int i_tmp; #define CLEANUP emms(); #include "../csp_packed_planar.h" /*************************************** * -> YUV 410 P ***************************************/ #define FUNC_NAME rgb_15_to_yuv_410_p_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 4 #define CONVERT_YUV \ LOAD_RGB_15 \ BGR_TO_Y \ BGR_TO_UV_2 \ OUTPUT_PLANAR_Y \ OUTPUT_PLANAR_UV4 #define CONVERT_Y \ LOAD_RGB_15 \ BGR_TO_Y \ OUTPUT_PLANAR_Y #define CHROMA_SUB 4 #define INIT int i_tmp; #define CLEANUP emms(); #include "../csp_packed_planar.h" #define FUNC_NAME bgr_15_to_yuv_410_p_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 4 #define CONVERT_YUV \ LOAD_RGB_15 \ RGB_TO_Y \ RGB_TO_UV_2 \ OUTPUT_PLANAR_Y \ OUTPUT_PLANAR_UV4 #define CONVERT_Y \ LOAD_RGB_15 \ RGB_TO_Y \ OUTPUT_PLANAR_Y #define CHROMA_SUB 4 #define INIT int i_tmp; #define CLEANUP emms(); #include "../csp_packed_planar.h" #define FUNC_NAME rgb_16_to_yuv_410_p_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 4 #define CONVERT_YUV \ LOAD_RGB_16 \ BGR_TO_Y \ BGR_TO_UV_2 \ OUTPUT_PLANAR_Y \ OUTPUT_PLANAR_UV4 #define CONVERT_Y \ LOAD_RGB_16 \ BGR_TO_Y \ OUTPUT_PLANAR_Y #define CHROMA_SUB 4 #define INIT int i_tmp; #define CLEANUP emms(); #include "../csp_packed_planar.h" #define FUNC_NAME bgr_16_to_yuv_410_p_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 4 #define CONVERT_YUV \ LOAD_RGB_16 \ RGB_TO_Y \ RGB_TO_UV_2 \ OUTPUT_PLANAR_Y \ OUTPUT_PLANAR_UV4 #define CONVERT_Y \ LOAD_RGB_16 \ RGB_TO_Y \ OUTPUT_PLANAR_Y #define CHROMA_SUB 4 #define INIT int i_tmp; #define CLEANUP emms(); #include "../csp_packed_planar.h" #define FUNC_NAME rgb_24_to_yuv_410_p_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 12 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 4 #define CONVERT_YUV \ RGB_YUV_LOAD_RGB_24 \ RGB_TO_Y \ RGB_TO_UV_2 \ OUTPUT_PLANAR_Y \ OUTPUT_PLANAR_UV4 #define CONVERT_Y \ RGB_YUV_LOAD_RGB_24 \ RGB_TO_Y \ OUTPUT_PLANAR_Y #define CHROMA_SUB 4 #define INIT int i_tmp; #define CLEANUP emms(); #include "../csp_packed_planar.h" #define FUNC_NAME bgr_24_to_yuv_410_p_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 12 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 4 #define CONVERT_YUV \ RGB_YUV_LOAD_RGB_24 \ BGR_TO_Y \ BGR_TO_UV_2 \ OUTPUT_PLANAR_Y \ OUTPUT_PLANAR_UV4 #define CONVERT_Y \ RGB_YUV_LOAD_RGB_24 \ BGR_TO_Y \ OUTPUT_PLANAR_Y #define CHROMA_SUB 4 #define INIT int i_tmp; #define CLEANUP emms(); #include "../csp_packed_planar.h" #define FUNC_NAME rgb_32_to_yuv_410_p_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 4 #define CONVERT_YUV \ LOAD_RGB_32 \ RGB_TO_Y \ RGB_TO_UV_2 \ OUTPUT_PLANAR_Y \ OUTPUT_PLANAR_UV4 #define CONVERT_Y \ LOAD_RGB_32 \ RGB_TO_Y \ OUTPUT_PLANAR_Y #define CHROMA_SUB 4 #define INIT int i_tmp; #define CLEANUP emms(); #include "../csp_packed_planar.h" #define FUNC_NAME bgr_32_to_yuv_410_p_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 4 #define CONVERT_YUV \ LOAD_RGB_32 \ BGR_TO_Y \ BGR_TO_UV_2 \ OUTPUT_PLANAR_Y \ OUTPUT_PLANAR_UV4 #define CONVERT_Y \ LOAD_RGB_32 \ BGR_TO_Y \ OUTPUT_PLANAR_Y #define CHROMA_SUB 4 #define INIT int i_tmp; #define CLEANUP emms(); #include "../csp_packed_planar.h" /*************************************** * -> YUV 422 P ***************************************/ #define FUNC_NAME rgb_15_to_yuv_422_p_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 2 #define NUM_PIXELS 4 #define CONVERT_YUV \ LOAD_RGB_15 \ BGR_TO_Y \ BGR_TO_UV_2 \ OUTPUT_PLANAR_Y \ OUTPUT_PLANAR_UV2 #define CHROMA_SUB 1 #define INIT int i_tmp; #define CLEANUP emms(); #include "../csp_packed_planar.h" #define FUNC_NAME bgr_15_to_yuv_422_p_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 2 #define NUM_PIXELS 4 #define CONVERT_YUV \ LOAD_RGB_15 \ RGB_TO_Y \ RGB_TO_UV_2 \ OUTPUT_PLANAR_Y \ OUTPUT_PLANAR_UV2 #define CHROMA_SUB 1 #define INIT int i_tmp; #define CLEANUP emms(); #include "../csp_packed_planar.h" #define FUNC_NAME rgb_16_to_yuv_422_p_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 2 #define NUM_PIXELS 4 #define CONVERT_YUV \ LOAD_RGB_16 \ BGR_TO_Y \ BGR_TO_UV_2 \ OUTPUT_PLANAR_Y \ OUTPUT_PLANAR_UV2 #define CHROMA_SUB 1 #define INIT int i_tmp; #define CLEANUP emms(); #include "../csp_packed_planar.h" #define FUNC_NAME bgr_16_to_yuv_422_p_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 2 #define NUM_PIXELS 4 #define CONVERT_YUV \ LOAD_RGB_16 \ RGB_TO_Y \ RGB_TO_UV_2 \ OUTPUT_PLANAR_Y \ OUTPUT_PLANAR_UV2 #define CHROMA_SUB 1 #define INIT int i_tmp; #define CLEANUP emms(); #include "../csp_packed_planar.h" #define FUNC_NAME rgb_24_to_yuv_422_p_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 12 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 2 #define NUM_PIXELS 4 #define CONVERT_YUV \ RGB_YUV_LOAD_RGB_24 \ RGB_TO_Y \ RGB_TO_UV_2 \ OUTPUT_PLANAR_Y \ OUTPUT_PLANAR_UV2 #define CHROMA_SUB 1 #define INIT int i_tmp; #define CLEANUP emms(); #include "../csp_packed_planar.h" #define FUNC_NAME bgr_24_to_yuv_422_p_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 12 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 2 #define NUM_PIXELS 4 #define CONVERT_YUV \ RGB_YUV_LOAD_RGB_24 \ BGR_TO_Y \ BGR_TO_UV_2 \ OUTPUT_PLANAR_Y \ OUTPUT_PLANAR_UV2 #define CHROMA_SUB 1 #define INIT int i_tmp; #define CLEANUP emms(); #include "../csp_packed_planar.h" #define FUNC_NAME rgb_32_to_yuv_422_p_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 2 #define NUM_PIXELS 4 #define CONVERT_YUV \ LOAD_RGB_32 \ RGB_TO_Y \ RGB_TO_UV_2 \ OUTPUT_PLANAR_Y \ OUTPUT_PLANAR_UV2 #define CHROMA_SUB 1 #define INIT int i_tmp; #define CLEANUP emms(); #include "../csp_packed_planar.h" #define FUNC_NAME bgr_32_to_yuv_422_p_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 2 #define NUM_PIXELS 4 #define CONVERT_YUV \ LOAD_RGB_32 \ BGR_TO_Y \ BGR_TO_UV_2 \ OUTPUT_PLANAR_Y \ OUTPUT_PLANAR_UV2 #define CHROMA_SUB 1 #define INIT int i_tmp; #define CLEANUP emms(); #include "../csp_packed_planar.h" /*************************************** * -> YUV 411 P ***************************************/ #define FUNC_NAME rgb_15_to_yuv_411_p_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 4 #define CONVERT_YUV \ LOAD_RGB_15 \ BGR_TO_Y \ BGR_TO_UV_2 \ OUTPUT_PLANAR_Y \ OUTPUT_PLANAR_UV4 #define CHROMA_SUB 1 #define INIT int i_tmp; #define CLEANUP emms(); #include "../csp_packed_planar.h" #define FUNC_NAME bgr_15_to_yuv_411_p_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 4 #define CONVERT_YUV \ LOAD_RGB_15 \ RGB_TO_Y \ RGB_TO_UV_2 \ OUTPUT_PLANAR_Y \ OUTPUT_PLANAR_UV4 #define CHROMA_SUB 1 #define INIT int i_tmp; #define CLEANUP emms(); #include "../csp_packed_planar.h" #define FUNC_NAME rgb_16_to_yuv_411_p_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 4 #define CONVERT_YUV \ LOAD_RGB_16 \ BGR_TO_Y \ BGR_TO_UV_2 \ OUTPUT_PLANAR_Y \ OUTPUT_PLANAR_UV4 #define CHROMA_SUB 1 #define INIT int i_tmp; #define CLEANUP emms(); #include "../csp_packed_planar.h" #define FUNC_NAME bgr_16_to_yuv_411_p_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 4 #define CONVERT_YUV \ LOAD_RGB_16 \ RGB_TO_Y \ RGB_TO_UV_2 \ OUTPUT_PLANAR_Y \ OUTPUT_PLANAR_UV4 #define CHROMA_SUB 1 #define INIT int i_tmp; #define CLEANUP emms(); #include "../csp_packed_planar.h" #define FUNC_NAME rgb_24_to_yuv_411_p_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 12 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 4 #define CONVERT_YUV \ RGB_YUV_LOAD_RGB_24 \ RGB_TO_Y \ RGB_TO_UV_2 \ OUTPUT_PLANAR_Y \ OUTPUT_PLANAR_UV4 #define CHROMA_SUB 1 #define INIT int i_tmp; #define CLEANUP emms(); #include "../csp_packed_planar.h" #define FUNC_NAME bgr_24_to_yuv_411_p_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 12 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 4 #define CONVERT_YUV \ RGB_YUV_LOAD_RGB_24 \ BGR_TO_Y \ BGR_TO_UV_2 \ OUTPUT_PLANAR_Y \ OUTPUT_PLANAR_UV4 #define CHROMA_SUB 1 #define INIT int i_tmp; #define CLEANUP emms(); #include "../csp_packed_planar.h" #define FUNC_NAME rgb_32_to_yuv_411_p_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 4 #define CONVERT_YUV \ LOAD_RGB_32 \ RGB_TO_Y \ RGB_TO_UV_2 \ OUTPUT_PLANAR_Y \ OUTPUT_PLANAR_UV4 #define CHROMA_SUB 1 #define INIT int i_tmp; #define CLEANUP emms(); #include "../csp_packed_planar.h" #define FUNC_NAME bgr_32_to_yuv_411_p_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 1 #define NUM_PIXELS 4 #define CONVERT_YUV \ LOAD_RGB_32 \ BGR_TO_Y \ BGR_TO_UV_2 \ OUTPUT_PLANAR_Y \ OUTPUT_PLANAR_UV4 #define CHROMA_SUB 1 #define INIT int i_tmp; #define CLEANUP emms(); #include "../csp_packed_planar.h" /* JPEG */ /*************************************** * -> YUVJ 420 P ***************************************/ #define FUNC_NAME rgb_15_to_yuvj_420_p_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 2 #define NUM_PIXELS 4 #define CONVERT_YUV \ LOAD_RGB_15 \ BGR_TO_YJ \ BGR_TO_UVJ_2 \ OUTPUT_PLANAR_Y \ OUTPUT_PLANAR_UV2 #define CONVERT_Y \ LOAD_RGB_15 \ BGR_TO_YJ \ OUTPUT_PLANAR_Y #define CHROMA_SUB 2 #define INIT int i_tmp; #define CLEANUP emms(); #include "../csp_packed_planar.h" #define FUNC_NAME bgr_15_to_yuvj_420_p_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 2 #define NUM_PIXELS 4 #define CONVERT_YUV \ LOAD_RGB_15 \ RGB_TO_YJ \ RGB_TO_UVJ_2 \ OUTPUT_PLANAR_Y \ OUTPUT_PLANAR_UV2 #define CONVERT_Y \ LOAD_RGB_15 \ RGB_TO_YJ \ OUTPUT_PLANAR_Y #define CHROMA_SUB 2 #define INIT int i_tmp; #define CLEANUP emms(); #include "../csp_packed_planar.h" #define FUNC_NAME rgb_16_to_yuvj_420_p_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 2 #define NUM_PIXELS 4 #define CONVERT_YUV \ LOAD_RGB_16 \ BGR_TO_YJ \ BGR_TO_UVJ_2 \ OUTPUT_PLANAR_Y \ OUTPUT_PLANAR_UV2 #define CONVERT_Y \ LOAD_RGB_16 \ BGR_TO_YJ \ OUTPUT_PLANAR_Y #define CHROMA_SUB 2 #define INIT int i_tmp; #define CLEANUP emms(); #include "../csp_packed_planar.h" #define FUNC_NAME bgr_16_to_yuvj_420_p_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 2 #define NUM_PIXELS 4 #define CONVERT_YUV \ LOAD_RGB_16 \ RGB_TO_YJ \ RGB_TO_UVJ_2 \ OUTPUT_PLANAR_Y \ OUTPUT_PLANAR_UV2 #define CONVERT_Y \ LOAD_RGB_16 \ RGB_TO_YJ \ OUTPUT_PLANAR_Y #define CHROMA_SUB 2 #define INIT int i_tmp; #define CLEANUP emms(); #include "../csp_packed_planar.h" #define FUNC_NAME rgb_24_to_yuvj_420_p_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 12 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 2 #define NUM_PIXELS 4 #define CONVERT_YUV \ RGB_YUV_LOAD_RGB_24 \ RGB_TO_YJ \ RGB_TO_UVJ_2 \ OUTPUT_PLANAR_Y \ OUTPUT_PLANAR_UV2 #define CONVERT_Y \ RGB_YUV_LOAD_RGB_24 \ RGB_TO_YJ \ OUTPUT_PLANAR_Y #define CHROMA_SUB 2 #define INIT int i_tmp; #define CLEANUP emms(); #include "../csp_packed_planar.h" #define FUNC_NAME bgr_24_to_yuvj_420_p_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 12 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 2 #define NUM_PIXELS 4 #define CONVERT_YUV \ RGB_YUV_LOAD_RGB_24 \ BGR_TO_YJ \ BGR_TO_UVJ_2 \ OUTPUT_PLANAR_Y \ OUTPUT_PLANAR_UV2 #define CONVERT_Y \ RGB_YUV_LOAD_RGB_24 \ BGR_TO_YJ \ OUTPUT_PLANAR_Y #define CHROMA_SUB 2 #define INIT int i_tmp; #define CLEANUP emms(); #include "../csp_packed_planar.h" #define FUNC_NAME rgb_32_to_yuvj_420_p_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 2 #define NUM_PIXELS 4 #define CONVERT_YUV \ LOAD_RGB_32 \ RGB_TO_YJ \ RGB_TO_UVJ_2 \ OUTPUT_PLANAR_Y \ OUTPUT_PLANAR_UV2 #define CONVERT_Y \ LOAD_RGB_32 \ RGB_TO_YJ \ OUTPUT_PLANAR_Y #define CHROMA_SUB 2 #define INIT int i_tmp; #define CLEANUP emms(); #include "../csp_packed_planar.h" #define FUNC_NAME bgr_32_to_yuvj_420_p_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 2 #define NUM_PIXELS 4 #define CONVERT_YUV \ LOAD_RGB_32 \ BGR_TO_YJ \ BGR_TO_UVJ_2 \ OUTPUT_PLANAR_Y \ OUTPUT_PLANAR_UV2 #define CONVERT_Y \ LOAD_RGB_32 \ BGR_TO_YJ \ OUTPUT_PLANAR_Y #define CHROMA_SUB 2 #define INIT int i_tmp; #define CLEANUP emms(); #include "../csp_packed_planar.h" /*************************************** * -> YUV 422 P ***************************************/ #define FUNC_NAME rgb_15_to_yuvj_422_p_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 2 #define NUM_PIXELS 4 #define CONVERT_YUV \ LOAD_RGB_15 \ BGR_TO_YJ \ BGR_TO_UVJ_2 \ OUTPUT_PLANAR_Y \ OUTPUT_PLANAR_UV2 #define CHROMA_SUB 1 #define INIT int i_tmp; #define CLEANUP emms(); #include "../csp_packed_planar.h" #define FUNC_NAME bgr_15_to_yuvj_422_p_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 2 #define NUM_PIXELS 4 #define CONVERT_YUV \ LOAD_RGB_15 \ RGB_TO_YJ \ RGB_TO_UVJ_2 \ OUTPUT_PLANAR_Y \ OUTPUT_PLANAR_UV2 #define CHROMA_SUB 1 #define INIT int i_tmp; #define CLEANUP emms(); #include "../csp_packed_planar.h" #define FUNC_NAME rgb_16_to_yuvj_422_p_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 2 #define NUM_PIXELS 4 #define CONVERT_YUV \ LOAD_RGB_16 \ BGR_TO_YJ \ BGR_TO_UVJ_2 \ OUTPUT_PLANAR_Y \ OUTPUT_PLANAR_UV2 #define CHROMA_SUB 1 #define INIT int i_tmp; #define CLEANUP emms(); #include "../csp_packed_planar.h" #define FUNC_NAME bgr_16_to_yuvj_422_p_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 8 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 2 #define NUM_PIXELS 4 #define CONVERT_YUV \ LOAD_RGB_16 \ RGB_TO_YJ \ RGB_TO_UVJ_2 \ OUTPUT_PLANAR_Y \ OUTPUT_PLANAR_UV2 #define CHROMA_SUB 1 #define INIT int i_tmp; #define CLEANUP emms(); #include "../csp_packed_planar.h" #define FUNC_NAME rgb_24_to_yuvj_422_p_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 12 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 2 #define NUM_PIXELS 4 #define CONVERT_YUV \ RGB_YUV_LOAD_RGB_24 \ RGB_TO_YJ \ RGB_TO_UVJ_2 \ OUTPUT_PLANAR_Y \ OUTPUT_PLANAR_UV2 #define CHROMA_SUB 1 #define INIT int i_tmp; #define CLEANUP emms(); #include "../csp_packed_planar.h" #define FUNC_NAME bgr_24_to_yuvj_422_p_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 12 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 2 #define NUM_PIXELS 4 #define CONVERT_YUV \ RGB_YUV_LOAD_RGB_24 \ BGR_TO_YJ \ BGR_TO_UVJ_2 \ OUTPUT_PLANAR_Y \ OUTPUT_PLANAR_UV2 #define CHROMA_SUB 1 #define INIT int i_tmp; #define CLEANUP emms(); #include "../csp_packed_planar.h" #define FUNC_NAME rgb_32_to_yuvj_422_p_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 2 #define NUM_PIXELS 4 #define CONVERT_YUV \ LOAD_RGB_32 \ RGB_TO_YJ \ RGB_TO_UVJ_2 \ OUTPUT_PLANAR_Y \ OUTPUT_PLANAR_UV2 #define CHROMA_SUB 1 #define INIT int i_tmp; #define CLEANUP emms(); #include "../csp_packed_planar.h" #define FUNC_NAME bgr_32_to_yuvj_422_p_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE_Y 4 #define OUT_ADVANCE_UV 2 #define NUM_PIXELS 4 #define CONVERT_YUV \ LOAD_RGB_32 \ BGR_TO_YJ \ BGR_TO_UVJ_2 \ OUTPUT_PLANAR_Y \ OUTPUT_PLANAR_UV2 #define CHROMA_SUB 1 #define INIT int i_tmp; #define CLEANUP emms(); #include "../csp_packed_planar.h" /*************************************** * -> END ***************************************/ void gavl_init_rgb_yuv_funcs_mmx(gavl_pixelformat_function_table_t * tab, int width, const gavl_video_options_t * opt) { if(width % 4) return; if(opt->quality && (opt->quality >= 3)) return; tab->rgb_15_to_yuy2 = rgb_15_to_yuy2_mmx; tab->rgb_15_to_uyvy = rgb_15_to_uyvy_mmx; tab->rgb_15_to_yuv_420_p = rgb_15_to_yuv_420_p_mmx; tab->rgb_15_to_yuv_410_p = rgb_15_to_yuv_410_p_mmx; tab->rgb_15_to_yuv_422_p = rgb_15_to_yuv_422_p_mmx; tab->rgb_15_to_yuv_411_p = rgb_15_to_yuv_411_p_mmx; tab->rgb_15_to_yuvj_420_p = rgb_15_to_yuvj_420_p_mmx; tab->rgb_15_to_yuvj_422_p = rgb_15_to_yuvj_422_p_mmx; tab->bgr_15_to_yuy2 = bgr_15_to_yuy2_mmx; tab->bgr_15_to_uyvy = bgr_15_to_uyvy_mmx; tab->bgr_15_to_yuv_420_p = bgr_15_to_yuv_420_p_mmx; tab->bgr_15_to_yuv_410_p = bgr_15_to_yuv_410_p_mmx; tab->bgr_15_to_yuv_422_p = bgr_15_to_yuv_422_p_mmx; tab->bgr_15_to_yuv_411_p = bgr_15_to_yuv_411_p_mmx; tab->bgr_15_to_yuvj_420_p = bgr_15_to_yuvj_420_p_mmx; tab->bgr_15_to_yuvj_422_p = bgr_15_to_yuvj_422_p_mmx; tab->rgb_16_to_yuy2 = rgb_16_to_yuy2_mmx; tab->rgb_16_to_uyvy = rgb_16_to_uyvy_mmx; tab->rgb_16_to_yuv_420_p = rgb_16_to_yuv_420_p_mmx; tab->rgb_16_to_yuv_410_p = rgb_16_to_yuv_410_p_mmx; tab->rgb_16_to_yuv_422_p = rgb_16_to_yuv_422_p_mmx; tab->rgb_16_to_yuv_411_p = rgb_16_to_yuv_411_p_mmx; tab->rgb_16_to_yuvj_420_p = rgb_16_to_yuvj_420_p_mmx; tab->rgb_16_to_yuvj_422_p = rgb_16_to_yuvj_422_p_mmx; tab->bgr_16_to_yuy2 = bgr_16_to_yuy2_mmx; tab->bgr_16_to_uyvy = bgr_16_to_uyvy_mmx; tab->bgr_16_to_yuv_420_p = bgr_16_to_yuv_420_p_mmx; tab->bgr_16_to_yuv_410_p = bgr_16_to_yuv_410_p_mmx; tab->bgr_16_to_yuv_422_p = bgr_16_to_yuv_422_p_mmx; tab->bgr_16_to_yuv_411_p = bgr_16_to_yuv_411_p_mmx; tab->bgr_16_to_yuvj_420_p = bgr_16_to_yuvj_420_p_mmx; tab->bgr_16_to_yuvj_422_p = bgr_16_to_yuvj_422_p_mmx; tab->rgb_24_to_yuy2 = rgb_24_to_yuy2_mmx; tab->rgb_24_to_uyvy = rgb_24_to_uyvy_mmx; tab->rgb_24_to_yuv_420_p = rgb_24_to_yuv_420_p_mmx; tab->rgb_24_to_yuv_410_p = rgb_24_to_yuv_410_p_mmx; tab->rgb_24_to_yuv_422_p = rgb_24_to_yuv_422_p_mmx; tab->rgb_24_to_yuv_411_p = rgb_24_to_yuv_411_p_mmx; tab->rgb_24_to_yuvj_420_p = rgb_24_to_yuvj_420_p_mmx; tab->rgb_24_to_yuvj_422_p = rgb_24_to_yuvj_422_p_mmx; tab->bgr_24_to_yuy2 = bgr_24_to_yuy2_mmx; tab->bgr_24_to_uyvy = bgr_24_to_uyvy_mmx; tab->bgr_24_to_yuv_420_p = bgr_24_to_yuv_420_p_mmx; tab->bgr_24_to_yuv_410_p = bgr_24_to_yuv_410_p_mmx; tab->bgr_24_to_yuv_422_p = bgr_24_to_yuv_422_p_mmx; tab->bgr_24_to_yuv_411_p = bgr_24_to_yuv_411_p_mmx; tab->bgr_24_to_yuvj_420_p = bgr_24_to_yuvj_420_p_mmx; tab->bgr_24_to_yuvj_422_p = bgr_24_to_yuvj_422_p_mmx; tab->rgb_32_to_yuy2 = rgb_32_to_yuy2_mmx; tab->rgb_32_to_uyvy = rgb_32_to_uyvy_mmx; tab->rgb_32_to_yuv_420_p = rgb_32_to_yuv_420_p_mmx; tab->rgb_32_to_yuv_410_p = rgb_32_to_yuv_410_p_mmx; tab->rgb_32_to_yuv_422_p = rgb_32_to_yuv_422_p_mmx; tab->rgb_32_to_yuv_411_p = rgb_32_to_yuv_411_p_mmx; tab->rgb_32_to_yuvj_420_p = rgb_32_to_yuvj_420_p_mmx; tab->rgb_32_to_yuvj_422_p = rgb_32_to_yuvj_422_p_mmx; tab->bgr_32_to_yuy2 = bgr_32_to_yuy2_mmx; tab->bgr_32_to_uyvy = bgr_32_to_uyvy_mmx; tab->bgr_32_to_yuv_420_p = bgr_32_to_yuv_420_p_mmx; tab->bgr_32_to_yuv_410_p = bgr_32_to_yuv_410_p_mmx; tab->bgr_32_to_yuv_422_p = bgr_32_to_yuv_422_p_mmx; tab->bgr_32_to_yuv_411_p = bgr_32_to_yuv_411_p_mmx; tab->bgr_32_to_yuvj_420_p = bgr_32_to_yuvj_420_p_mmx; tab->bgr_32_to_yuvj_422_p = bgr_32_to_yuvj_422_p_mmx; // tab->rgba_32_to_yuy2 = rgba_32_to_yuy2_mmx; // tab->rgba_32_to_yuv_420_p = rgba_32_to_yuv_420_p_mmx; // tab->rgba_32_to_yuv_422_p = rgba_32_to_yuv_422_p_mmx; } #else void gavl_init_rgb_yuv_funcs_mmxext(gavl_pixelformat_function_table_t * tab, int width, const gavl_video_options_t * opt) { } #endif /* !MMXEXT */ bplaum-gavl-b9385e3/gavl/mmx/scale_x_mmx.c000066400000000000000000000716401513252040200204640ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include #include #include #include #include "mmx.h" #ifdef MMXEXT static const mmx_t min_13 = { .uw = { 0x0000, 0x0000, 0x0000, 0x0000 } }; static const mmx_t max_13 = { .uw = { 0x1FFF, 0x1FFF, 0x1FFF, 0x1FFF } }; #endif #ifdef MMXEXT #define MOVQ_R2M(reg,mem) movntq_r2m(reg, mem) #else #define MOVQ_R2M(reg,mem) movq_r2m(reg, mem) #endif #if 0 static mmx_t mm_tmp; #define DUMP_MM(name, reg) MOVQ_R2M(reg, mm_tmp);\ fprintf(stderr, "%s: %016llx\n", name, mm_tmp.q); #endif static const mmx_t factor_mask = { 0x000000000000FFFFLL }; /* * mm0: Input * mm1: Input * mm2: Factor * mm3: Factor * mm4: Output * mm5: Output * mm6: 0 * mm7: scratch * */ //#define LOAD_FACTOR_1 //#define LOAD_FACTOR_4 #ifdef MMXEXT #define LOAD_FACTOR_1_4 \ movd_m2r(*factors, mm2); \ pand_r2r(mm1, mm2); \ pshufw_r2r(mm2,mm7,0x00) #define LOAD_FACTOR_1_4_NOCLIP \ movd_m2r(*factors, mm2); \ pand_r2r(mm1, mm2); \ pshufw_r2r(mm2,mm7,0x00) #else #define LOAD_FACTOR_1_4 \ movd_m2r(*factors, mm2); \ pand_r2r(mm1, mm2); \ movq_r2r(mm2, mm7); \ psllq_i2r(16, mm7); \ por_r2r(mm7, mm2); \ movq_r2r(mm2, mm7); \ psllq_i2r(32, mm7); \ por_r2r(mm2, mm7) #define LOAD_FACTOR_1_4_NOCLIP \ movd_m2r(*factors, mm2); \ movq_r2r(mm2, mm7); \ psllq_i2r(16, mm7); \ por_r2r(mm7, mm2); \ movq_r2r(mm2, mm7); \ psllq_i2r(32, mm7); \ por_r2r(mm2, mm7) #endif #define RECLIP(a,idx) \ if(a < ctx->min_values_h[idx]) a = ctx->min_values_h[idx]; \ if(a > ctx->max_values_h[idx]) a = ctx->max_values_h[idx] /* scale_uint8_x_1_x_bicubic_mmx */ #ifndef MMXEXT /* scale_uint8_x_1_x_bilinear_mmx */ static void scale_uint8_x_1_x_bilinear_mmx(gavl_video_scale_context_t * ctx, int scanline, uint8_t * dest_start) { int i, imax, index; uint8_t * src, * dst, *src_start; mmx_t tmp_mm; /* * mm0: Input1 Input2 * mm1: Factor * mm2: * mm3: * mm4: * mm5: * mm6: 0 * mm7: scratch * */ src_start = ctx->src + scanline * ctx->src_stride; pxor_r2r(mm6, mm6); dst = dest_start; imax = ctx->dst_size / 4; // imax = 0; index = 0; for(i = 0; i < imax; i++) { /* Load pixels */ src = src_start + ctx->table_h.pixels[index].index; tmp_mm.uw[0] = *src; tmp_mm.uw[1] = *(src+1); src = src_start + ctx->table_h.pixels[index+1].index; tmp_mm.uw[2] = *src; tmp_mm.uw[3] = *(src+1); movq_m2r(tmp_mm, mm0); /* Load factors */ movq_m2r(ctx->table_h.pixels[index].factor_i[0], mm1); movq_m2r(ctx->table_h.pixels[index+1].factor_i[0], mm7); packssdw_r2r(mm7, mm1); pmaddwd_r2r(mm0, mm1); index += 2; /* Load pixels */ src = src_start + ctx->table_h.pixels[index].index; tmp_mm.uw[0] = *src; tmp_mm.uw[1] = *(src+1); src = src_start + ctx->table_h.pixels[index+1].index; tmp_mm.uw[2] = *src; tmp_mm.uw[3] = *(src+1); movq_m2r(tmp_mm, mm0); /* Load factors */ movq_m2r(ctx->table_h.pixels[index].factor_i[0], mm3); movq_m2r(ctx->table_h.pixels[index+1].factor_i[0], mm7); packssdw_r2r(mm7, mm3); pmaddwd_r2r(mm0, mm3); psrld_i2r(7, mm3); psrld_i2r(7, mm1); packssdw_r2r(mm3, mm1); psrlw_i2r(7, mm1); index += 2; packuswb_r2r(mm6, mm1); movd_r2m(mm1, *dst); // *dst = tmp_mm.ub[0]; // *(dst+1) = tmp_mm.ub[4]; dst+=4; } ctx->need_emms = 1; #if 1 imax = ctx->dst_size % 4; for(i = 0; i < imax; i++) { src = (src_start + ctx->table_h.pixels[index].index); *dst = (ctx->table_h.pixels[index].factor_i[0] * *src + ctx->table_h.pixels[index].factor_i[1] * *(src+1)) >> 14; dst++; index++; } #endif } static void scale_uint8_x_1_x_bicubic_mmx(gavl_video_scale_context_t * ctx, int scanline, uint8_t * dest_start) { int i; uint8_t * src, * dst, *src_start; int32_t * factors; mmx_t tmp_mm; int32_t tmp; // fprintf(stderr, "scale_uint8_x_1_x_bicubic_mmx\n"); src_start = ctx->src + scanline * ctx->src_stride; pxor_r2r(mm6, mm6); dst = dest_start; for(i = 0; i < ctx->dst_size; i++) { src = src_start + ctx->table_h.pixels[i].index; factors = ctx->table_h.pixels[i].factor_i; /* Load pixels */ movd_m2r(*(src), mm0); punpcklbw_r2r(mm6, mm0); // DUMP_MM("mm0", mm0); /* Load factors */ movq_m2r(*factors, mm2); movq_m2r(*(factors+2), mm3); packssdw_r2r(mm3, mm2); /* Multiply */ pmaddwd_r2r(mm2, mm0); MOVQ_R2M(mm0, tmp_mm); tmp = tmp_mm.d[0] + tmp_mm.d[1]; tmp >>= 14; RECLIP(tmp, ctx->plane); *(dst++) = tmp; } ctx->need_emms = 1; } static void scale_uint16_x_1_x_bicubic_mmx(gavl_video_scale_context_t * ctx, int scanline, uint8_t * dest_start) { int i; uint16_t * dst; uint8_t * src, *src_start; int32_t * factors; mmx_t tmp_mm; int32_t tmp; // fprintf(stderr, "scale_uint8_x_1_x_bicubic_mmx\n"); src_start = ctx->src + scanline * ctx->src_stride; pxor_r2r(mm6, mm6); dst = (uint16_t*)dest_start; for(i = 0; i < ctx->dst_size; i++) { src = src_start + 2*ctx->table_h.pixels[i].index; factors = ctx->table_h.pixels[i].factor_i; /* Load pixels */ movq_m2r(*(src), mm0); psrlw_i2r(1, mm0); // DUMP_MM("mm0", mm0); /* Load factors */ movq_m2r(*factors, mm2); movq_m2r(*(factors+2), mm3); packssdw_r2r(mm3, mm2); /* Multiply */ pmaddwd_r2r(mm2, mm0); MOVQ_R2M(mm0, tmp_mm); tmp = tmp_mm.d[0] + tmp_mm.d[1]; tmp >>= 13; RECLIP(tmp, ctx->plane); *(dst++) = tmp; } ctx->need_emms = 1; } static void scale_uint16_x_1_x_bicubic_noclip_mmx(gavl_video_scale_context_t * ctx, int scanline, uint8_t * dest_start) { int i; uint16_t * dst; uint8_t * src, *src_start; int32_t * factors; mmx_t tmp_mm; int32_t tmp; // fprintf(stderr, "scale_uint8_x_1_x_bicubic_mmx\n"); src_start = ctx->src + scanline * ctx->src_stride; pxor_r2r(mm6, mm6); dst = (uint16_t*)dest_start; for(i = 0; i < ctx->dst_size; i++) { src = src_start + 2*ctx->table_h.pixels[i].index; factors = ctx->table_h.pixels[i].factor_i; /* Load pixels */ movq_m2r(*(src), mm0); psrlw_i2r(1, mm0); // DUMP_MM("mm0", mm0); /* Load factors */ movq_m2r(*factors, mm2); movq_m2r(*(factors+2), mm3); packssdw_r2r(mm3, mm2); /* Multiply */ pmaddwd_r2r(mm2, mm0); MOVQ_R2M(mm0, tmp_mm); tmp = tmp_mm.d[0] + tmp_mm.d[1]; tmp >>= 13; *(dst++) = tmp; } ctx->need_emms = 1; } /* scale_uint8_x_1_x_bicubic_noclip_mmx */ static void scale_uint8_x_1_x_bicubic_noclip_mmx(gavl_video_scale_context_t * ctx, int scanline, uint8_t * dest_start) { int i; uint8_t * src, * dst, *src_start; int32_t * factors; mmx_t tmp_mm; // fprintf(stderr, "scale_uint8_x_1_x_bicubic_noclip_mmx\n"); src_start = ctx->src + scanline * ctx->src_stride; pxor_r2r(mm6, mm6); dst = dest_start; for(i = 0; i < ctx->dst_size; i++) { src = src_start + ctx->table_h.pixels[i].index; factors = ctx->table_h.pixels[i].factor_i; /* Load pixels */ movd_m2r(*(src), mm0); punpcklbw_r2r(mm6, mm0); /* Load factors */ movq_m2r(*factors, mm2); movq_m2r(*(factors+2), mm3); packssdw_r2r(mm3, mm2); /* Multiply */ pmaddwd_r2r(mm2, mm0); psrld_i2r(14, mm0); MOVQ_R2M(mm0, tmp_mm); *(dst++) = tmp_mm.d[0] + tmp_mm.d[1]; } ctx->need_emms = 1; } #endif // !MMXEXT /* scale_uint8_x_4_x_bicubic_mmx */ static void scale_uint8_x_4_x_bicubic_mmx(gavl_video_scale_context_t * ctx, int scanline, uint8_t * dest_start) { int i; uint8_t * src, * dst, *src_start; int32_t * factors; // mmx_t tmp_mm; /* * mm0: Input * mm1: factor_mask * mm2: Factor * mm3: Output * mm4: * mm5: * mm6: 0 * mm7: scratch * */ // fprintf(stderr, "scale_uint8_x_1_x_bicubic_noclip_mmx\n"); src_start = ctx->src + scanline * ctx->src_stride; pxor_r2r(mm6, mm6); movq_m2r(factor_mask, mm1); dst = dest_start; for(i = 0; i < ctx->dst_size; i++) { src = src_start + 4*ctx->table_h.pixels[i].index; factors = ctx->table_h.pixels[i].factor_i; /* Load pixels */ movd_m2r(*(src), mm0); punpcklbw_r2r(mm6, mm0); psllw_i2r(7, mm0); /* Load factors */ LOAD_FACTOR_1_4; /* Multiply */ pmulhw_r2r(mm7, mm0); movq_r2r(mm0, mm3); // DUMP_MM("mm3_1", mm3); src += 4; factors++; /* Load pixels */ movd_m2r(*(src), mm0); punpcklbw_r2r(mm6, mm0); psllw_i2r(7, mm0); /* Load factors */ LOAD_FACTOR_1_4; /* Multiply */ pmulhw_r2r(mm7, mm0); paddw_r2r(mm0, mm3); // DUMP_MM("mm3_2", mm3); src += 4; factors++; /* Load pixels */ movd_m2r(*(src), mm0); punpcklbw_r2r(mm6, mm0); psllw_i2r(7, mm0); /* Load factors */ LOAD_FACTOR_1_4; /* Multiply */ pmulhw_r2r(mm7, mm0); paddw_r2r(mm0, mm3); // DUMP_MM("mm3_3", mm3); src += 4; factors++; /* Load pixels */ movd_m2r(*(src), mm0); punpcklbw_r2r(mm6, mm0); psllw_i2r(7, mm0); /* Load factors */ LOAD_FACTOR_1_4; /* Multiply */ pmulhw_r2r(mm7, mm0); paddw_r2r(mm0, mm3); src += 4; factors++; psraw_i2r(5, mm3); packuswb_r2r(mm6, mm3); movd_r2m(mm3, *dst); dst+=4; } ctx->need_emms = 1; } #ifdef MMXEXT static void scale_uint16_x_4_x_bicubic_mmx(gavl_video_scale_context_t * ctx, int scanline, uint8_t * dest_start) { int i; uint8_t * src, * dst, *src_start; int32_t * factors; // mmx_t tmp_mm; /* * mm0: Input * mm1: factor_mask * mm2: Factor * mm3: Output * mm4: * mm5: * mm6: 0 * mm7: scratch * */ // fprintf(stderr, "scale_uint8_x_1_x_bicubic_noclip_mmx\n"); src_start = ctx->src + scanline * ctx->src_stride; pxor_r2r(mm6, mm6); movq_m2r(factor_mask, mm1); dst = dest_start; for(i = 0; i < ctx->dst_size; i++) { src = src_start + 8*ctx->table_h.pixels[i].index; factors = ctx->table_h.pixels[i].factor_i; /* Load pixels */ movq_m2r(*(src), mm0); // punpcklbw_r2r(mm6, mm0); psrlw_i2r(1, mm0); /* Load factors */ LOAD_FACTOR_1_4; /* Multiply */ pmulhw_r2r(mm7, mm0); movq_r2r(mm0, mm3); // DUMP_MM("mm3_1", mm3); src += 8; factors++; /* Load pixels */ movq_m2r(*(src), mm0); // punpcklbw_r2r(mm6, mm0); psrlw_i2r(1, mm0); /* Load factors */ LOAD_FACTOR_1_4; /* Multiply */ pmulhw_r2r(mm7, mm0); paddw_r2r(mm0, mm3); // DUMP_MM("mm3_2", mm3); src += 8; factors++; /* Load pixels */ movq_m2r(*(src), mm0); // punpcklbw_r2r(mm6, mm0); psrlw_i2r(1, mm0); /* Load factors */ LOAD_FACTOR_1_4; /* Multiply */ pmulhw_r2r(mm7, mm0); paddw_r2r(mm0, mm3); // DUMP_MM("mm3_3", mm3); src += 8; factors++; /* Load pixels */ movq_m2r(*(src), mm0); // punpcklbw_r2r(mm6, mm0); psrlw_i2r(1, mm0); /* Load factors */ LOAD_FACTOR_1_4; /* Multiply */ pmulhw_r2r(mm7, mm0); paddw_r2r(mm0, mm3); src += 8; factors++; pminsw_m2r(max_13, mm3); pmaxsw_m2r(min_13, mm3); psllw_i2r(3, mm3); // packuswb_r2r(mm6, mm3); MOVQ_R2M(mm3, *dst); dst+=8; } ctx->need_emms = 1; } #endif // MMXEXT static void scale_uint16_x_4_x_bicubic_noclip_mmx(gavl_video_scale_context_t * ctx, int scanline, uint8_t * dest_start) { int i; uint8_t * src, * dst, *src_start; int32_t * factors; // mmx_t tmp_mm; /* * mm0: Input * mm1: factor_mask * mm2: Factor * mm3: Output * mm4: * mm5: * mm6: 0 * mm7: scratch * */ // fprintf(stderr, "scale_uint8_x_1_x_bicubic_noclip_mmx\n"); src_start = ctx->src + scanline * ctx->src_stride; pxor_r2r(mm6, mm6); movq_m2r(factor_mask, mm1); dst = dest_start; for(i = 0; i < ctx->dst_size; i++) { src = src_start + 8*ctx->table_h.pixels[i].index; factors = ctx->table_h.pixels[i].factor_i; /* Load pixels */ movq_m2r(*(src), mm0); // punpcklbw_r2r(mm6, mm0); psrlw_i2r(1, mm0); /* Load factors */ LOAD_FACTOR_1_4_NOCLIP; /* Multiply */ pmulhw_r2r(mm7, mm0); movq_r2r(mm0, mm3); // DUMP_MM("mm3_1", mm3); src += 8; factors++; /* Load pixels */ movq_m2r(*(src), mm0); // punpcklbw_r2r(mm6, mm0); psrlw_i2r(1, mm0); /* Load factors */ LOAD_FACTOR_1_4_NOCLIP; /* Multiply */ pmulhw_r2r(mm7, mm0); paddw_r2r(mm0, mm3); // DUMP_MM("mm3_2", mm3); src += 8; factors++; /* Load pixels */ movq_m2r(*(src), mm0); // punpcklbw_r2r(mm6, mm0); psrlw_i2r(1, mm0); /* Load factors */ LOAD_FACTOR_1_4_NOCLIP; /* Multiply */ pmulhw_r2r(mm7, mm0); paddw_r2r(mm0, mm3); // DUMP_MM("mm3_3", mm3); src += 8; factors++; /* Load pixels */ movq_m2r(*(src), mm0); // punpcklbw_r2r(mm6, mm0); psrlw_i2r(1, mm0); /* Load factors */ LOAD_FACTOR_1_4_NOCLIP; /* Multiply */ pmulhw_r2r(mm7, mm0); paddw_r2r(mm0, mm3); src += 8; factors++; psllw_i2r(3, mm3); // packuswb_r2r(mm6, mm3); MOVQ_R2M(mm3, *dst); dst+=8; } ctx->need_emms = 1; } #ifdef MMXEXT static void scale_uint16_x_4_x_quadratic_mmx(gavl_video_scale_context_t * ctx, int scanline, uint8_t * dest_start) { int i; uint8_t * src, * dst, *src_start; int32_t * factors; // mmx_t tmp_mm; /* * mm0: Input * mm1: factor_mask * mm2: Factor * mm3: Output * mm4: * mm5: * mm6: 0 * mm7: scratch * */ // fprintf(stderr, "scale_uint8_x_1_x_bicubic_noclip_mmx\n"); src_start = ctx->src + scanline * ctx->src_stride; pxor_r2r(mm6, mm6); movq_m2r(factor_mask, mm1); dst = dest_start; for(i = 0; i < ctx->dst_size; i++) { src = src_start + 8*ctx->table_h.pixels[i].index; factors = ctx->table_h.pixels[i].factor_i; /* Load pixels */ movq_m2r(*(src), mm0); // punpcklbw_r2r(mm6, mm0); psrlw_i2r(1, mm0); /* Load factors */ LOAD_FACTOR_1_4_NOCLIP; /* Multiply */ pmulhw_r2r(mm7, mm0); movq_r2r(mm0, mm3); // DUMP_MM("mm3_1", mm3); src += 8; factors++; /* Load pixels */ movq_m2r(*(src), mm0); // punpcklbw_r2r(mm6, mm0); psrlw_i2r(1, mm0); /* Load factors */ LOAD_FACTOR_1_4_NOCLIP; /* Multiply */ pmulhw_r2r(mm7, mm0); paddw_r2r(mm0, mm3); // DUMP_MM("mm3_2", mm3); src += 8; factors++; /* Load pixels */ movq_m2r(*(src), mm0); // punpcklbw_r2r(mm6, mm0); psrlw_i2r(1, mm0); /* Load factors */ LOAD_FACTOR_1_4_NOCLIP; /* Multiply */ pmulhw_r2r(mm7, mm0); paddw_r2r(mm0, mm3); // DUMP_MM("mm3_3", mm3); src += 8; psllw_i2r(3, mm3); // packuswb_r2r(mm6, mm3); MOVQ_R2M(mm3, *dst); dst+=8; } ctx->need_emms = 1; } #endif // MMXEXT /* scale_uint8_x_4_x_bicubic_mmx */ static void scale_uint8_x_4_x_quadratic_mmx(gavl_video_scale_context_t * ctx, int scanline, uint8_t * dest_start) { int i; uint8_t * src, * dst, *src_start; int32_t * factors; // mmx_t tmp_mm; /* * mm0: Input * mm1: factor_mask * mm2: Factor * mm3: Output * mm4: * mm5: * mm6: 0 * mm7: scratch * */ // fprintf(stderr, "scale_uint8_x_1_x_bicubic_noclip_mmx\n"); src_start = ctx->src + scanline * ctx->src_stride; pxor_r2r(mm6, mm6); movq_m2r(factor_mask, mm1); dst = dest_start; for(i = 0; i < ctx->dst_size; i++) { src = src_start + 4*ctx->table_h.pixels[i].index; factors = ctx->table_h.pixels[i].factor_i; /* Load pixels */ movd_m2r(*(src), mm0); punpcklbw_r2r(mm6, mm0); psllw_i2r(7, mm0); /* Load factors */ LOAD_FACTOR_1_4_NOCLIP; /* Multiply */ pmulhw_r2r(mm7, mm0); movq_r2r(mm0, mm3); // DUMP_MM("mm3_1", mm3); src += 4; factors++; /* Load pixels */ movd_m2r(*(src), mm0); punpcklbw_r2r(mm6, mm0); psllw_i2r(7, mm0); /* Load factors */ LOAD_FACTOR_1_4_NOCLIP; /* Multiply */ pmulhw_r2r(mm7, mm0); paddw_r2r(mm0, mm3); // DUMP_MM("mm3_2", mm3); src += 4; factors++; /* Load pixels */ movd_m2r(*(src), mm0); punpcklbw_r2r(mm6, mm0); psllw_i2r(7, mm0); /* Load factors */ LOAD_FACTOR_1_4_NOCLIP; /* Multiply */ pmulhw_r2r(mm7, mm0); paddw_r2r(mm0, mm3); // DUMP_MM("mm3_3", mm3); src += 4; factors++; psraw_i2r(5, mm3); packuswb_r2r(mm6, mm3); movd_r2m(mm3, *dst); dst+=4; } ctx->need_emms = 1; } /* scale_uint8_x_1_x_generic_mmx */ #ifndef MMXEXT static void scale_uint8_x_1_x_generic_mmx(gavl_video_scale_context_t * ctx, int scanline, uint8_t * dest_start) { int i, j, jmax; uint8_t * src, * dst, *src_start; int32_t * factors; mmx_t tmp_mm; int tmp; src_start = ctx->src + scanline * ctx->src_stride; pxor_r2r(mm6, mm6); dst = dest_start; for(i = 0; i < ctx->dst_size; i++) { src = src_start + ctx->table_h.pixels[i].index; factors = ctx->table_h.pixels[i].factor_i; jmax = ctx->table_h.factors_per_pixel / 4; tmp = 0; #if 1 pxor_r2r(mm4, mm4); for(j = 0; j < jmax; j++) { /* Load pixels */ movd_m2r(*(src), mm0); punpcklbw_r2r(mm6, mm0); // DUMP_MM("mm0", mm0); /* Load factors */ movq_m2r(*factors, mm2); movq_m2r(*(factors+2), mm3); packssdw_r2r(mm3, mm2); /* Multiply */ pmaddwd_r2r(mm2, mm0); paddd_r2r(mm0, mm4); src += 4; factors += 4; } MOVQ_R2M(mm4, tmp_mm); tmp = tmp_mm.d[0] + tmp_mm.d[1]; jmax = ctx->table_h.factors_per_pixel % 4; #else jmax = ctx->table_h.factors_per_pixel; #endif for(j = 0; j < jmax; j++) { tmp += *factors * *src; factors++; src++; } // if(tmp > (255 << 14)) tmp = 255 << 14; // if(tmp < 0) tmp = 0; tmp >>= 14; RECLIP(tmp, ctx->plane); *(dst++) = tmp; } ctx->need_emms = 1; } static void scale_uint16_x_1_x_generic_mmx(gavl_video_scale_context_t * ctx, int scanline, uint8_t * dest_start) { int i, j, jmax; uint16_t * src, * dst; uint8_t * src_start; int32_t * factors; mmx_t tmp_mm; int tmp; src_start = ctx->src + scanline * ctx->src_stride; pxor_r2r(mm6, mm6); dst = (uint16_t*)dest_start; for(i = 0; i < ctx->dst_size; i++) { src = (uint16_t*)(src_start + 2*ctx->table_h.pixels[i].index); factors = ctx->table_h.pixels[i].factor_i; jmax = ctx->table_h.factors_per_pixel / 4; tmp = 0; #if 1 pxor_r2r(mm4, mm4); for(j = 0; j < jmax; j++) { /* Load pixels */ movq_m2r(*(src), mm0); psrlw_i2r(1, mm0); // DUMP_MM("mm0", mm0); /* Load factors */ movq_m2r(*factors, mm2); movq_m2r(*(factors+2), mm3); packssdw_r2r(mm3, mm2); /* Multiply */ pmaddwd_r2r(mm2, mm0); paddd_r2r(mm0, mm4); src += 4; factors += 4; } MOVQ_R2M(mm4, tmp_mm); tmp = tmp_mm.d[0] + tmp_mm.d[1]; jmax = ctx->table_h.factors_per_pixel % 4; #else jmax = ctx->table_h.factors_per_pixel; #endif for(j = 0; j < jmax; j++) { tmp += *factors * ((*src)>>1); factors++; src++; } // if(tmp > (255 << 14)) tmp = 255 << 14; // if(tmp < 0) tmp = 0; tmp >>= 13; RECLIP(tmp, ctx->plane); *(dst++) = tmp; } ctx->need_emms = 1; } #endif // !MMXEXT /* scale_uint8_x_4_x_generic_mmx */ static void scale_uint8_x_4_x_generic_mmx(gavl_video_scale_context_t * ctx, int scanline, uint8_t * dest_start) { int i, j; uint8_t * src, * dst, *src_start; int32_t * factors; // mmx_t tmp_mm; /* * mm0: Input * mm1: factor_mask * mm2: Factor * mm3: Output * mm4: * mm5: * mm6: 0 * mm7: scratch * */ src_start = ctx->src + scanline * ctx->src_stride; pxor_r2r(mm6, mm6); movq_m2r(factor_mask, mm1); dst = dest_start; for(i = 0; i < ctx->dst_size; i++) { src = src_start + 4*ctx->table_h.pixels[i].index; factors = ctx->table_h.pixels[i].factor_i; pxor_r2r(mm3, mm3); for(j = 0; j < ctx->table_h.factors_per_pixel; j++) { /* Load pixels */ movd_m2r(*(src), mm0); punpcklbw_r2r(mm6, mm0); psllw_i2r(7, mm0); /* Load factors */ LOAD_FACTOR_1_4; /* Multiply */ pmulhw_r2r(mm7, mm0); paddw_r2r(mm0, mm3); // DUMP_MM("mm3_2", mm3); src += 4; factors++; } psraw_i2r(5, mm3); packuswb_r2r(mm6, mm3); movd_r2m(mm3, *dst); dst+=4; } ctx->need_emms = 1; } #ifdef MMXEXT static void scale_uint16_x_4_x_generic_mmx(gavl_video_scale_context_t * ctx, int scanline, uint8_t * dest_start) { int i, j; uint8_t * src, * dst, *src_start; int32_t * factors; // mmx_t tmp_mm; /* * mm0: Input * mm1: factor_mask * mm2: Factor * mm3: Output * mm4: * mm5: * mm6: 0 * mm7: scratch * */ src_start = ctx->src + scanline * ctx->src_stride; pxor_r2r(mm6, mm6); movq_m2r(factor_mask, mm1); dst = dest_start; for(i = 0; i < ctx->dst_size; i++) { src = src_start + 8*ctx->table_h.pixels[i].index; factors = ctx->table_h.pixels[i].factor_i; pxor_r2r(mm3, mm3); for(j = 0; j < ctx->table_h.factors_per_pixel; j++) { /* Load pixels */ movq_m2r(*(src), mm0); psrlw_i2r(1, mm0); /* Load factors */ LOAD_FACTOR_1_4; /* Multiply */ pmulhw_r2r(mm7, mm0); paddw_r2r(mm0, mm3); // DUMP_MM("mm3_2", mm3); src += 8; factors++; } pminsw_m2r(max_13, mm3); pmaxsw_m2r(min_13, mm3); psllw_i2r(3, mm3); MOVQ_R2M(mm3, *dst); dst+=8; } ctx->need_emms = 1; } #endif /* scale_uint8_x_4_x_bilinear_mmx */ static void scale_uint8_x_4_x_bilinear_mmx(gavl_video_scale_context_t * ctx, int scanline, uint8_t * dest_start) { int i; uint8_t * src, * dst, *src_start; int32_t * factors; // mmx_t tmp_mm; /* * mm0: Input1 * mm1: Factor mask * mm2: * mm3: Output * mm4: * mm5: Input2 * mm6: 0 * mm7: Factor * */ // fprintf(stderr, "scale_uint8_x_4_x_bilinear_mmx\n"); src_start = ctx->src + scanline * ctx->src_stride; pxor_r2r(mm6, mm6); movq_m2r(factor_mask, mm1); dst = dest_start; for(i = 0; i < ctx->dst_size; i++) { src = src_start + 4*ctx->table_h.pixels[i].index; factors = ctx->table_h.pixels[i].factor_i; /* Load pixels */ movd_m2r(*(src), mm0); punpcklbw_r2r(mm6, mm0); psllw_i2r(6, mm0); /* 14 bit */ /* Load pixels */ movd_m2r(*(src+4), mm5); punpcklbw_r2r(mm6, mm5); psllw_i2r(6, mm5); /* 14 bit */ /* Load factors */ LOAD_FACTOR_1_4_NOCLIP; /* 14 bit */ /* Subtract */ psubsw_r2r(mm5, mm0); /* s1(mm0) - s2(mm5) -> mm0 (14 bit) */ pmulhw_r2r(mm7, mm0); /* factor * (s2 - s1) -> mm0 (12 bit) */ psllw_i2r(2, mm0); /* (14 bit) */ paddsw_r2r(mm5, mm0);/* (15 bit) */ psraw_i2r(6, mm0);/* (8 bit) */ packuswb_r2r(mm6, mm0); movd_r2m(mm0, *dst); dst+=4; } ctx->need_emms = 1; } #ifdef MMXEXT void gavl_init_scale_funcs_bicubic_x_mmxext(gavl_scale_funcs_t * tab, int src_advance, int dst_advance) #else void gavl_init_scale_funcs_bicubic_x_mmx(gavl_scale_funcs_t * tab, int src_advance, int dst_advance) #endif { if((src_advance == 1) && (dst_advance == 1)) { #ifndef MMXEXT tab->funcs_x.scale_uint8_x_1_noadvance = scale_uint8_x_1_x_bicubic_mmx; tab->funcs_x.bits_uint8_noadvance = 14; #endif } else if((src_advance == 2) && (dst_advance == 2)) { #ifndef MMXEXT tab->funcs_x.scale_uint16_x_1 = scale_uint16_x_1_x_bicubic_mmx; tab->funcs_x.bits_uint16 = 14; #endif } else if((src_advance == 4) && (dst_advance == 4)) { tab->funcs_x.scale_uint8_x_3 = scale_uint8_x_4_x_bicubic_mmx; tab->funcs_x.scale_uint8_x_4 = scale_uint8_x_4_x_bicubic_mmx; tab->funcs_x.bits_uint8_noadvance = 14; } else if((src_advance == 8) && (dst_advance == 8)) { #ifdef MMXEXT tab->funcs_x.scale_uint16_x_4 = scale_uint16_x_4_x_bicubic_mmx; tab->funcs_x.bits_uint16 = 14; #endif } } #ifdef MMXEXT void gavl_init_scale_funcs_bicubic_noclip_x_mmxext(gavl_scale_funcs_t * tab, int src_advance, int dst_advance) #else void gavl_init_scale_funcs_bicubic_noclip_x_mmx(gavl_scale_funcs_t * tab, int src_advance, int dst_advance) #endif { if((src_advance == 1) && (dst_advance == 1)) { #ifndef MMXEXT tab->funcs_x.scale_uint8_x_1_noadvance = scale_uint8_x_1_x_bicubic_noclip_mmx; tab->funcs_x.bits_uint8_noadvance = 14; #endif } else if((src_advance == 2) && (dst_advance == 2)) { #ifndef MMXEXT tab->funcs_x.scale_uint16_x_1 = scale_uint16_x_1_x_bicubic_noclip_mmx; tab->funcs_x.bits_uint16 = 14; #endif } #if 1 else if((src_advance == 4) && (dst_advance == 4)) { tab->funcs_x.scale_uint8_x_3 = scale_uint8_x_4_x_bicubic_mmx; tab->funcs_x.scale_uint8_x_4 = scale_uint8_x_4_x_bicubic_mmx; tab->funcs_x.bits_uint8_noadvance = 14; } #endif else if((src_advance == 8) && (dst_advance == 8)) { tab->funcs_x.scale_uint16_x_4 = scale_uint16_x_4_x_bicubic_noclip_mmx; tab->funcs_x.bits_uint16 = 14; } } #ifdef MMXEXT void gavl_init_scale_funcs_quadratic_x_mmxext(gavl_scale_funcs_t * tab, int src_advance, int dst_advance) #else void gavl_init_scale_funcs_quadratic_x_mmx(gavl_scale_funcs_t * tab, int src_advance, int dst_advance) #endif { if((src_advance == 4) && (dst_advance == 4)) { tab->funcs_x.scale_uint8_x_3 = scale_uint8_x_4_x_quadratic_mmx; tab->funcs_x.scale_uint8_x_4 = scale_uint8_x_4_x_quadratic_mmx; tab->funcs_x.bits_uint8_noadvance = 14; } else if((src_advance == 8) && (dst_advance == 8)) { #ifdef MMXEXT tab->funcs_x.scale_uint16_x_4 = scale_uint16_x_4_x_quadratic_mmx; tab->funcs_x.bits_uint16 = 14; #endif } } #ifdef MMXEXT void gavl_init_scale_funcs_generic_x_mmxext(gavl_scale_funcs_t * tab, int src_advance, int dst_advance) #else void gavl_init_scale_funcs_generic_x_mmx(gavl_scale_funcs_t * tab, int src_advance, int dst_advance) #endif { if((src_advance == 1) && (dst_advance == 1)) { #ifndef MMXEXT tab->funcs_x.scale_uint8_x_1_noadvance = scale_uint8_x_1_x_generic_mmx; tab->funcs_x.bits_uint8_noadvance = 14; #endif } if((src_advance == 2) && (dst_advance == 2)) { #ifndef MMXEXT tab->funcs_x.scale_uint16_x_1 = scale_uint16_x_1_x_generic_mmx; tab->funcs_x.bits_uint16 = 14; #endif } else if((src_advance == 4) && (dst_advance == 4)) { tab->funcs_x.scale_uint8_x_3 = scale_uint8_x_4_x_generic_mmx; tab->funcs_x.scale_uint8_x_4 = scale_uint8_x_4_x_generic_mmx; tab->funcs_x.bits_uint8_noadvance = 14; } else if((src_advance == 8) && (dst_advance == 8)) { #ifdef MMXEXT tab->funcs_x.scale_uint16_x_4 = scale_uint16_x_4_x_generic_mmx; tab->funcs_x.bits_uint16 = 14; #endif } } #ifdef MMXEXT void gavl_init_scale_funcs_bilinear_x_mmxext(gavl_scale_funcs_t * tab, int src_advance, int dst_advance) #else void gavl_init_scale_funcs_bilinear_x_mmx(gavl_scale_funcs_t * tab, int src_advance, int dst_advance) #endif { if((src_advance == 1) && (dst_advance == 1)) { #ifndef MMXEXT tab->funcs_x.scale_uint8_x_1_noadvance = scale_uint8_x_1_x_bilinear_mmx; tab->funcs_x.bits_uint8_noadvance = 14; #endif } else if((src_advance == 4) && (dst_advance == 4)) { tab->funcs_x.scale_uint8_x_3 = scale_uint8_x_4_x_bilinear_mmx; tab->funcs_x.scale_uint8_x_4 = scale_uint8_x_4_x_bilinear_mmx; tab->funcs_x.bits_uint8_noadvance = 14; } } bplaum-gavl-b9385e3/gavl/mmx/scale_y.h000066400000000000000000000065301513252040200176050ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ static void (FUNC_NAME)(gavl_video_scale_context_t * ctx, int scanline, uint8_t * dest_start) { int i, imax; int64_t tmp; #if NUM_TAPS <= 0 int j; #endif uint8_t * src, *src_start; uint8_t * dst; // if(!ctx->scanline) // fprintf(stderr, "scale_y_mmx %d %d\n", ctx->src_stride); imax = (ctx->dst_size * WIDTH_MUL) / 8; // imax = 0; src_start = ctx->src + ctx->table_v.pixels[scanline].index * ctx->src_stride; dst = dest_start; #if BITS == 8 INIT_8_GLOBAL; #else INIT_16_GLOBAL; #endif for(i = 0; i < imax; i++) { #if BITS == 8 INIT_8; #else INIT_16; #endif src = src_start; /* Accum */ #if NUM_TAPS <= 0 for(j = 0; j < ctx->table_v.factors_per_pixel; j++) { #if BITS == 8 ACCUM_8(j); #else ACCUM_16(j); #endif src += ctx->src_stride; } #else #if BITS == 8 ACCUM_8(0); #else ACCUM_16(0); #endif src += ctx->src_stride; #if NUM_TAPS > 1 #if BITS == 8 ACCUM_8(1); #else ACCUM_16(1); #endif src += ctx->src_stride; #endif #if NUM_TAPS > 2 #if BITS == 8 ACCUM_8(2); #else ACCUM_16(2); #endif src += ctx->src_stride; #endif #if NUM_TAPS > 3 #if BITS == 8 ACCUM_8(3); #else ACCUM_16(3); #endif src += ctx->src_stride; #endif #endif #if BITS == 8 OUTPUT_8; #else OUTPUT_16; #endif dst += 8; src_start += 8; } ctx->need_emms = 1; imax = (ctx->dst_size * WIDTH_MUL) % 8; // imax = (ctx->dst_size * WIDTH_MUL); if(!imax) return; for(i = 0; i < imax; i++) { src = src_start; tmp = 0; /* Accum */ #if NUM_TAPS <= 0 for(j = 0; j < ctx->table_v.factors_per_pixel; j++) { #if BITS == 8 ACCUM_C_8(j); #else ACCUM_C_16(j); #endif src += ctx->src_stride; } #else #if BITS == 8 ACCUM_C_8(0); #else ACCUM_C_16(0); #endif src += ctx->src_stride; #if NUM_TAPS > 1 #if BITS == 8 ACCUM_C_8(1); #else ACCUM_C_16(1); #endif src += ctx->src_stride; #endif #if NUM_TAPS > 2 #if BITS == 8 ACCUM_C_8(2); #else ACCUM_C_16(2); #endif src += ctx->src_stride; #endif #if NUM_TAPS > 3 #if BITS == 8 ACCUM_C_8(3); #else ACCUM_C_16(3); #endif src += ctx->src_stride; #endif #endif #if BITS == 8 OUTPUT_C_8; #else OUTPUT_C_16; #endif dst++; src_start++; } } #undef FUNC_NAME #undef NUM_TAPS #undef BITS #undef WIDTH_MUL bplaum-gavl-b9385e3/gavl/mmx/scale_y_linear.h000066400000000000000000000071771513252040200211470ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ static void (FUNC_NAME)(gavl_video_scale_context_t * ctx, int scanline, uint8_t * dest_start) { int i, imax; int32_t tmp; uint8_t * src_1; uint8_t * src_2; uint8_t * dst; #if 0 if(!ctx->scanline) fprintf(stderr, "scale_y_linear_mmx %d %d\n", ctx->table_v.pixels[ctx->scanline].factor_i[0], ctx->table_v.pixels[ctx->scanline].factor_i[1]); #endif imax = (ctx->dst_size * WIDTH_MUL) / 8; // imax = 0; src_1 = ctx->src + ctx->table_v.pixels[scanline].index * ctx->src_stride; src_2 = src_1 + ctx->src_stride; dst = dest_start; /* Load factors */ /* * mm0: Input1 * mm1: Input2 * mm2: Factor1 * mm3: Factor1 * mm4: Output1 * mm5: Output2 * mm6: Scratch * mm7: 0 */ pxor_r2r(mm7, mm7); /* Load factor1 */ movd_m2r(ctx->table_v.pixels[scanline].factor_i[0], mm2); // psllw_i2r(7, mm2); #ifdef MMXEXT pshufw_r2r(mm2,mm2,0x00); #else movq_r2r(mm2, mm6); psllq_i2r(16, mm6); por_r2r(mm6, mm2); movq_r2r(mm2, mm6); psllq_i2r(32, mm6); por_r2r(mm6, mm2); #endif /* Load factor2 */ movd_m2r(ctx->table_v.pixels[scanline].factor_i[1], mm3); // psllw_i2r(7, mm3); #ifdef MMXEXT pshufw_r2r(mm3,mm3,0x00); #else movq_r2r(mm3, mm6); psllq_i2r(16, mm6); por_r2r(mm6, mm3); movq_r2r(mm3, mm6); psllq_i2r(32, mm6); por_r2r(mm6, mm3); #endif for(i = 0; i < imax; i++) { /* Load input 1 */ movq_m2r(*src_1,mm0); movq_r2r(mm0,mm1); punpcklbw_r2r(mm7, mm0); punpckhbw_r2r(mm7, mm1); psllw_i2r(7, mm0); psllw_i2r(7, mm1); /* Accumulate mm0 */ pmulhw_r2r(mm2, mm0); /* Accumulate mm1 */ pmulhw_r2r(mm2, mm1); /* Load input 2 */ movq_m2r(*(src_2),mm4); movq_r2r(mm4,mm5); punpcklbw_r2r(mm7, mm4); punpckhbw_r2r(mm7, mm5); psllw_i2r(7, mm4); psllw_i2r(7, mm5); /* Accumulate mm0 */ pmulhw_r2r(mm3, mm4); paddsw_r2r(mm4, mm0); /* Accumulate mm1 */ pmulhw_r2r(mm3, mm5); paddsw_r2r(mm5, mm1); psraw_i2r(5, mm0); psraw_i2r(5, mm1); packuswb_r2r(mm1, mm0); MOVQ_R2M(mm0, *dst); dst += 8; src_1 += 8; src_2 += 8; } emms(); imax = (ctx->dst_size * WIDTH_MUL) % 8; // imax = (ctx->dst_size * WIDTH_MUL); if(!imax) return; for(i = 0; i < imax; i++) { tmp = (*src_1 * ctx->table_v.pixels[scanline].factor_i[0] + *src_2 * ctx->table_v.pixels[scanline].factor_i[1]) >> 14; // tmp = (ctx->table_v.pixels[scanline].factor_i[0] + // ctx->table_v.pixels[scanline].factor_i[1]) >> 14; *dst = (uint8_t)((tmp & ~0xFF)?((-tmp) >> 31) : tmp); /* Accum */ dst++; src_1++; src_2++; } } #undef FUNC_NAME #undef WIDTH_MUL bplaum-gavl-b9385e3/gavl/mmx/scale_y_mmx.c000066400000000000000000000231471513252040200204640ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include #include #include #include #include "mmx.h" static const mmx_t factor_mask = { 0x000000000000FFFFLL }; #if 0 static mmx_t mm_tmp; #define DUMP_MM(name, reg) MOVQ_R2M(reg, mm_tmp);\ fprintf(stderr, "%s: %016llx\n", name, mm_tmp.q); #endif #ifdef MMXEXT #define MOVQ_R2M(reg,mem) movntq_r2m(reg, mem) #else #define MOVQ_R2M(reg,mem) movq_r2m(reg, mem) #endif /* * mm0: Input1 * mm1: Input2 * mm2: Factor1 * mm3: Factor1 * mm4: Output1 * mm5: Output2 * mm6: Scratch * mm7: factor_mask */ #define INIT_8_GLOBAL \ pxor_r2r(mm6, mm6);\ movq_m2r(factor_mask, mm7); #define INIT_8 \ pxor_r2r(mm3, mm3);\ pxor_r2r(mm4, mm4); #ifdef MMXEXT #define LOAD_FACTOR_8(num) \ /* Load factor */ \ movd_m2r(ctx->table_v.pixels[scanline].factor_i[num], mm2);\ pand_r2r(mm7, mm2);\ pshufw_r2r(mm2,mm5,0x00) #else #define LOAD_FACTOR_8(num) \ /* Load factor */ \ movd_m2r(ctx->table_v.pixels[scanline].factor_i[num], mm2);\ pand_r2r(mm7, mm2);\ movq_r2r(mm2, mm5);\ psllq_i2r(16, mm5);\ por_r2r(mm5, mm2);\ movq_r2r(mm2, mm5);\ psllq_i2r(32, mm5);\ por_r2r(mm2, mm5) #endif #define ACCUM_8(num) \ /* Load input */ \ movq_m2r(*src,mm0);\ movq_r2r(mm0,mm1);\ punpcklbw_r2r(mm6, mm0); \ punpckhbw_r2r(mm6, mm1); \ psllw_i2r(7, mm0);\ psllw_i2r(7, mm1);\ LOAD_FACTOR_8(num); \ /* Accumulate mm0 */ \ pmulhw_r2r(mm5, mm0);\ paddsw_r2r(mm0, mm3);\ /* Accumulate mm1 */ \ pmulhw_r2r(mm5, mm1);\ paddsw_r2r(mm1, mm4) #define OUTPUT_8 \ psraw_i2r(5, mm3);\ psraw_i2r(5, mm4);\ packuswb_r2r(mm4, mm3);\ MOVQ_R2M(mm3, *dst) #define ACCUM_C_8(num) \ tmp += ctx->table_v.pixels[scanline].factor_i[num] * *src #define OUTPUT_C_8 \ tmp >>= 14; \ *dst = (uint8_t)((tmp & ~0xFF)?((-tmp) >> 63) : tmp); /* scale_uint8_x_1_y_bicubic_mmx */ #define FUNC_NAME scale_uint8_x_1_y_bicubic_mmx #define WIDTH_MUL 1 #define BITS 8 #define NUM_TAPS 4 #include "scale_y.h" /* scale_uint8_x_2_y_bicubic_mmx */ #define FUNC_NAME scale_uint8_x_2_y_bicubic_mmx #define WIDTH_MUL 2 #define BITS 8 #define NUM_TAPS 4 #include "scale_y.h" /* scale_uint8_x_3_y_bicubic_mmx */ #define FUNC_NAME scale_uint8_x_3_y_bicubic_mmx #define WIDTH_MUL 3 #define BITS 8 #define NUM_TAPS 4 #include "scale_y.h" /* scale_uint8_x_4_y_bicubic_mmx */ #define FUNC_NAME scale_uint8_x_4_y_bicubic_mmx #define WIDTH_MUL 4 #define BITS 8 #define NUM_TAPS 4 #include "scale_y.h" /* scale_uint8_x_1_y_quadratic_mmx */ #define FUNC_NAME scale_uint8_x_1_y_quadratic_mmx #define WIDTH_MUL 1 #define BITS 8 #define NUM_TAPS 3 #include "scale_y.h" /* scale_uint8_x_2_y_quadratic_mmx */ #define FUNC_NAME scale_uint8_x_2_y_quadratic_mmx #define WIDTH_MUL 2 #define BITS 8 #define NUM_TAPS 3 #include "scale_y.h" /* scale_uint8_x_3_y_quadratic_mmx */ #define FUNC_NAME scale_uint8_x_3_y_quadratic_mmx #define WIDTH_MUL 3 #define BITS 8 #define NUM_TAPS 3 #include "scale_y.h" /* scale_uint8_x_4_y_quadratic_mmx */ #define FUNC_NAME scale_uint8_x_4_y_quadratic_mmx #define WIDTH_MUL 4 #define BITS 8 #define NUM_TAPS 3 #include "scale_y.h" /* scale_uint8_x_1_y_generic_mmx */ #define FUNC_NAME scale_uint8_x_1_y_generic_mmx #define WIDTH_MUL 1 #define BITS 8 #define NUM_TAPS -1 #include "scale_y.h" /* scale_uint8_x_2_y_generic_mmx */ #define FUNC_NAME scale_uint8_x_2_y_generic_mmx #define WIDTH_MUL 2 #define BITS 8 #define NUM_TAPS -1 #include "scale_y.h" /* scale_uint8_x_4_y_generic_mmx */ #define FUNC_NAME scale_uint8_x_4_y_generic_mmx #define WIDTH_MUL 4 #define BITS 8 #define NUM_TAPS -1 #include "scale_y.h" /* scale_uint8_x_3_y_generic_mmx */ #define FUNC_NAME scale_uint8_x_3_y_generic_mmx #define WIDTH_MUL 3 #define BITS 8 #define NUM_TAPS -1 #include "scale_y.h" #ifdef MMXEXT void gavl_init_scale_funcs_quadratic_y_mmxext(gavl_scale_funcs_t * tab, int src_advance, int dst_advance) #else void gavl_init_scale_funcs_quadratic_y_mmx(gavl_scale_funcs_t * tab, int src_advance, int dst_advance) #endif { if((src_advance == 1) && (dst_advance == 1)) { tab->funcs_y.scale_uint8_x_1_noadvance = scale_uint8_x_1_y_quadratic_mmx; tab->funcs_y.bits_uint8_noadvance = 14; } else if((src_advance == 3) && (dst_advance == 3)) { tab->funcs_y.scale_uint8_x_3 = scale_uint8_x_3_y_quadratic_mmx; tab->funcs_y.bits_uint8_noadvance = 14; } else if((src_advance == 4) && (dst_advance == 4)) { tab->funcs_y.scale_uint8_x_3 = scale_uint8_x_4_y_quadratic_mmx; tab->funcs_y.scale_uint8_x_4 = scale_uint8_x_4_y_quadratic_mmx; tab->funcs_y.bits_uint8_noadvance = 14; } else if((src_advance == 2) && (dst_advance == 2)) { tab->funcs_y.scale_uint8_x_2 = scale_uint8_x_2_y_quadratic_mmx; tab->funcs_y.bits_uint8_noadvance = 14; } } #ifdef MMXEXT void gavl_init_scale_funcs_bicubic_y_mmxext(gavl_scale_funcs_t * tab, int src_advance, int dst_advance) #else void gavl_init_scale_funcs_bicubic_y_mmx(gavl_scale_funcs_t * tab, int src_advance, int dst_advance) #endif { if((src_advance == 1) && (dst_advance == 1)) { tab->funcs_y.scale_uint8_x_1_noadvance = scale_uint8_x_1_y_bicubic_mmx; tab->funcs_y.bits_uint8_noadvance = 14; } else if((src_advance == 3) && (dst_advance == 3)) { tab->funcs_y.scale_uint8_x_3 = scale_uint8_x_3_y_bicubic_mmx; tab->funcs_y.bits_uint8_noadvance = 14; } else if((src_advance == 4) && (dst_advance == 4)) { tab->funcs_y.scale_uint8_x_3 = scale_uint8_x_4_y_bicubic_mmx; tab->funcs_y.scale_uint8_x_4 = scale_uint8_x_4_y_bicubic_mmx; tab->funcs_y.bits_uint8_noadvance = 14; } else if((src_advance == 2) && (dst_advance == 2)) { tab->funcs_y.scale_uint8_x_2 = scale_uint8_x_2_y_bicubic_mmx; tab->funcs_y.bits_uint8_noadvance = 14; } } #ifdef MMXEXT void gavl_init_scale_funcs_generic_y_mmxext(gavl_scale_funcs_t * tab, int src_advance, int dst_advance) #else void gavl_init_scale_funcs_generic_y_mmx(gavl_scale_funcs_t * tab, int src_advance, int dst_advance) #endif { if((src_advance == 1) && (dst_advance == 1)) { tab->funcs_y.scale_uint8_x_1_noadvance = scale_uint8_x_1_y_generic_mmx; tab->funcs_y.bits_uint8_noadvance = 14; } else if((src_advance == 3) && (dst_advance == 3)) { tab->funcs_y.scale_uint8_x_3 = scale_uint8_x_3_y_generic_mmx; tab->funcs_y.bits_uint8_noadvance = 14; } else if((src_advance == 2) && (dst_advance == 2)) { tab->funcs_y.scale_uint8_x_2 = scale_uint8_x_2_y_generic_mmx; tab->funcs_y.bits_uint8_noadvance = 14; } else if((src_advance == 4) && (dst_advance == 4)) { tab->funcs_y.scale_uint8_x_3 = scale_uint8_x_4_y_generic_mmx; tab->funcs_y.scale_uint8_x_4 = scale_uint8_x_4_y_generic_mmx; tab->funcs_y.bits_uint8_noadvance = 14; } } /* scale_uint8_x_1_y_bilinear_mmx */ #define FUNC_NAME scale_uint8_x_1_y_bilinear_mmx #define WIDTH_MUL 1 #define BITS 8 #include "scale_y_linear.h" /* scale_uint8_x_2_y_bilinear_mmx */ #define FUNC_NAME scale_uint8_x_2_y_bilinear_mmx #define WIDTH_MUL 2 #define BITS 8 #include "scale_y_linear.h" /* scale_uint8_x_4_y_bilinear_mmx */ #define FUNC_NAME scale_uint8_x_4_y_bilinear_mmx #define WIDTH_MUL 4 #define BITS 8 #include "scale_y_linear.h" /* scale_uint8_x_3_y_bilinear_mmx */ #define FUNC_NAME scale_uint8_x_3_y_bilinear_mmx #define WIDTH_MUL 3 #define BITS 8 #include "scale_y_linear.h" #ifdef MMXEXT void gavl_init_scale_funcs_bilinear_y_mmxext(gavl_scale_funcs_t * tab, int src_advance, int dst_advance) #else void gavl_init_scale_funcs_bilinear_y_mmx(gavl_scale_funcs_t * tab, int src_advance, int dst_advance) #endif { if((src_advance == 1) && (dst_advance == 1)) { tab->funcs_y.scale_uint8_x_1_noadvance = scale_uint8_x_1_y_bilinear_mmx; tab->funcs_y.bits_uint8_noadvance = 14; } else if((src_advance == 3) && (dst_advance == 3)) { tab->funcs_y.scale_uint8_x_3 = scale_uint8_x_3_y_bilinear_mmx; tab->funcs_y.bits_uint8_noadvance = 14; } else if((src_advance == 2) && (dst_advance == 2)) { tab->funcs_y.scale_uint8_x_2 = scale_uint8_x_2_y_bilinear_mmx; tab->funcs_y.bits_uint8_noadvance = 14; } else if((src_advance == 4) && (dst_advance == 4)) { tab->funcs_y.scale_uint8_x_3 = scale_uint8_x_4_y_bilinear_mmx; tab->funcs_y.scale_uint8_x_4 = scale_uint8_x_4_y_bilinear_mmx; tab->funcs_y.bits_uint8_noadvance = 14; } } bplaum-gavl-b9385e3/gavl/mmx/transform_mmx.c000066400000000000000000000402031513252040200210500ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include #include #include #include // #include "mmx.h" #include "mmx_macros.h" #if 0 static mmx_t dump_tmp; #define DUMP_MM(reg, name) \ movq_r2m(reg, dump_tmp); \ fprintf(stderr, "%s: %04x%04x%04x%04x\n", \ name, \ dump_tmp.uw[3], \ dump_tmp.uw[2], \ dump_tmp.uw[1], \ dump_tmp.uw[0]) #endif #define LOAD_32(p, reg) \ movd_m2r(*(p), reg); \ punpcklbw_r2r(mm0,reg); \ psllq_i2r(7, reg); #define LOAD_64(p, reg) \ movq_m2r(*(p), reg); \ psrlw_i2r(1, reg); #ifdef MMXEXT #define LOAD_FACTOR_X_1(f, reg) \ movd_m2r(f, mm1); \ pshufw_r2r(mm1, reg, 0) #else #define LOAD_FACTOR_X_1(f, reg) \ movd_m2r(f, mm1); \ movq_r2r(mm1, reg); \ psllq_i2r(16, mm1); \ por_r2r(mm1, reg); \ movq_r2r(reg, mm1); \ psllq_i2r(32, mm1); \ por_r2r(mm1, reg); #endif #define NUM_TAPS 2 /* transform_uint8_x_4_linear_mmx */ #define FUNC_NAME transform_uint8_x_4_linear_mmx #define TYPE uint8_t #define INIT pxor_r2r(mm0, mm0); #define FINISH ctx->need_emms = 1; #define TRANSFORM \ LOAD_32(src_0, mm3); \ LOAD_FACTOR_X_1(pixel->factors_i[0][0], mm2); \ pmulhw_r2r(mm3,mm2); \ LOAD_32(src_0+4, mm3); \ LOAD_FACTOR_X_1(pixel->factors_i[0][1], mm4); \ pmulhw_r2r(mm3,mm4); \ paddusw_r2r(mm4,mm2); \ LOAD_32(src_1, mm3); \ LOAD_FACTOR_X_1(pixel->factors_i[1][0], mm4); \ pmulhw_r2r(mm3,mm4); \ paddusw_r2r(mm4,mm2); \ LOAD_32(src_1+4, mm3); \ LOAD_FACTOR_X_1(pixel->factors_i[1][1], mm4); \ pmulhw_r2r(mm3,mm4); \ paddusw_r2r(mm4,mm2); \ psrlw_i2r(6, mm2); \ packuswb_r2r(mm0, mm2); \ movd_r2m(mm2, *dst); #include "../c/transform_c.h" /* transform_uint16_x_4_linear_mmx */ #define FUNC_NAME transform_uint16_x_4_linear_mmx #define TYPE uint8_t #define INIT pxor_r2r(mm0, mm0); #define FINISH ctx->need_emms = 1; #define TRANSFORM \ LOAD_64(src_0, mm3); \ LOAD_FACTOR_X_1(pixel->factors_i[0][0], mm2); \ pmulhw_r2r(mm3,mm2); \ LOAD_64(src_0+8, mm3); \ LOAD_FACTOR_X_1(pixel->factors_i[0][1], mm4); \ pmulhw_r2r(mm3,mm4); \ paddusw_r2r(mm4,mm2); \ LOAD_64(src_1, mm3); \ LOAD_FACTOR_X_1(pixel->factors_i[1][0], mm4); \ pmulhw_r2r(mm3,mm4); \ paddusw_r2r(mm4,mm2); \ LOAD_64(src_1+8, mm3); \ LOAD_FACTOR_X_1(pixel->factors_i[1][1], mm4); \ pmulhw_r2r(mm3,mm4); \ paddusw_r2r(mm4,mm2); \ psllw_i2r(2, mm2); \ MOVQ_R2M(mm2, *dst); #include "../c/transform_c.h" #undef NUM_TAPS #define NUM_TAPS 3 /* transform_uint8_x_4_quadratic_mmx */ #define FUNC_NAME transform_uint8_x_4_quadratic_mmx #define TYPE uint8_t #define INIT pxor_r2r(mm0, mm0); #define FINISH ctx->need_emms = 1; #define TRANSFORM \ LOAD_32(src_0, mm3); \ LOAD_FACTOR_X_1(pixel->factors_i[0][0], mm2); \ pmulhw_r2r(mm3,mm2); \ LOAD_32(src_0+4, mm3); \ LOAD_FACTOR_X_1(pixel->factors_i[0][1], mm4); \ pmulhw_r2r(mm3,mm4); \ paddusw_r2r(mm4,mm2); \ LOAD_32(src_0+8, mm3); \ LOAD_FACTOR_X_1(pixel->factors_i[0][2], mm4); \ pmulhw_r2r(mm3,mm4); \ paddusw_r2r(mm4,mm2); \ LOAD_32(src_1, mm3); \ LOAD_FACTOR_X_1(pixel->factors_i[1][0], mm4); \ pmulhw_r2r(mm3,mm4); \ paddusw_r2r(mm4,mm2); \ LOAD_32(src_1+4, mm3); \ LOAD_FACTOR_X_1(pixel->factors_i[1][1], mm4); \ pmulhw_r2r(mm3,mm4); \ paddusw_r2r(mm4,mm2); \ LOAD_32(src_1+8, mm3); \ LOAD_FACTOR_X_1(pixel->factors_i[1][2], mm4); \ pmulhw_r2r(mm3,mm4); \ paddusw_r2r(mm4,mm2); \ LOAD_32(src_2, mm3); \ LOAD_FACTOR_X_1(pixel->factors_i[2][0], mm4); \ pmulhw_r2r(mm3,mm4); \ paddusw_r2r(mm4,mm2); \ LOAD_32(src_2+4, mm3); \ LOAD_FACTOR_X_1(pixel->factors_i[2][1], mm4); \ pmulhw_r2r(mm3,mm4); \ paddusw_r2r(mm4,mm2); \ LOAD_32(src_2+8, mm3); \ LOAD_FACTOR_X_1(pixel->factors_i[2][2], mm4); \ pmulhw_r2r(mm3,mm4); \ paddusw_r2r(mm4,mm2); \ psrlw_i2r(6, mm2); \ packuswb_r2r(mm0, mm2); \ movd_r2m(mm2, *dst); #include "../c/transform_c.h" /* transform_uint16_x_4_quadratic_mmx */ #define FUNC_NAME transform_uint16_x_4_quadratic_mmx #define TYPE uint8_t #define INIT pxor_r2r(mm0, mm0); #define FINISH ctx->need_emms = 1; #define TRANSFORM \ LOAD_64(src_0, mm3); \ LOAD_FACTOR_X_1(pixel->factors_i[0][0], mm2); \ pmulhw_r2r(mm3,mm2); \ LOAD_64(src_0+8, mm3); \ LOAD_FACTOR_X_1(pixel->factors_i[0][1], mm4); \ pmulhw_r2r(mm3,mm4); \ paddusw_r2r(mm4,mm2); \ LOAD_64(src_0+16, mm3); \ LOAD_FACTOR_X_1(pixel->factors_i[0][2], mm4); \ pmulhw_r2r(mm3,mm4); \ paddusw_r2r(mm4,mm2); \ LOAD_64(src_1, mm3); \ LOAD_FACTOR_X_1(pixel->factors_i[1][0], mm4); \ pmulhw_r2r(mm3,mm4); \ paddusw_r2r(mm4,mm2); \ LOAD_64(src_1+8, mm3); \ LOAD_FACTOR_X_1(pixel->factors_i[1][1], mm4); \ pmulhw_r2r(mm3,mm4); \ paddusw_r2r(mm4,mm2); \ LOAD_64(src_1+16, mm3); \ LOAD_FACTOR_X_1(pixel->factors_i[1][2], mm4); \ pmulhw_r2r(mm3,mm4); \ paddusw_r2r(mm4,mm2); \ LOAD_64(src_2, mm3); \ LOAD_FACTOR_X_1(pixel->factors_i[2][0], mm4); \ pmulhw_r2r(mm3,mm4); \ paddusw_r2r(mm4,mm2); \ LOAD_64(src_2+8, mm3); \ LOAD_FACTOR_X_1(pixel->factors_i[2][1], mm4); \ pmulhw_r2r(mm3,mm4); \ paddusw_r2r(mm4,mm2); \ LOAD_64(src_2+16, mm3); \ LOAD_FACTOR_X_1(pixel->factors_i[2][2], mm4); \ pmulhw_r2r(mm3,mm4); \ paddusw_r2r(mm4,mm2); \ psllw_i2r(2, mm2); \ MOVQ_R2M(mm2, *dst); #include "../c/transform_c.h" #undef NUM_TAPS #define NUM_TAPS 4 /* transform_uint8_x_4_bicubic_mmx */ #define FUNC_NAME transform_uint8_x_4_bicubic_mmx #define TYPE uint8_t #define INIT pxor_r2r(mm0, mm0); #define FINISH ctx->need_emms = 1; #define TRANSFORM \ LOAD_32(src_0, mm3); \ LOAD_FACTOR_X_1(pixel->factors_i[0][0], mm2); \ pmulhw_r2r(mm3,mm2); \ LOAD_32(src_0+4, mm3); \ LOAD_FACTOR_X_1(pixel->factors_i[0][1], mm4); \ pmulhw_r2r(mm3,mm4); \ paddusw_r2r(mm4,mm2); \ LOAD_32(src_0+8, mm3); \ LOAD_FACTOR_X_1(pixel->factors_i[0][2], mm4); \ pmulhw_r2r(mm3,mm4); \ paddusw_r2r(mm4,mm2); \ LOAD_32(src_0+12, mm3); \ LOAD_FACTOR_X_1(pixel->factors_i[0][3], mm4); \ pmulhw_r2r(mm3,mm4); \ paddusw_r2r(mm4,mm2); \ LOAD_32(src_1, mm3); \ LOAD_FACTOR_X_1(pixel->factors_i[1][0], mm4); \ pmulhw_r2r(mm3,mm4); \ paddusw_r2r(mm4,mm2); \ LOAD_32(src_1+4, mm3); \ LOAD_FACTOR_X_1(pixel->factors_i[1][1], mm4); \ pmulhw_r2r(mm3,mm4); \ paddusw_r2r(mm4,mm2); \ LOAD_32(src_1+8, mm3); \ LOAD_FACTOR_X_1(pixel->factors_i[1][2], mm4); \ pmulhw_r2r(mm3,mm4); \ paddusw_r2r(mm4,mm2); \ LOAD_32(src_1+16, mm3); \ LOAD_FACTOR_X_1(pixel->factors_i[1][3], mm4); \ pmulhw_r2r(mm3,mm4); \ paddusw_r2r(mm4,mm2); \ LOAD_32(src_2, mm3); \ LOAD_FACTOR_X_1(pixel->factors_i[2][0], mm4); \ pmulhw_r2r(mm3,mm4); \ paddusw_r2r(mm4,mm2); \ LOAD_32(src_2+4, mm3); \ LOAD_FACTOR_X_1(pixel->factors_i[2][1], mm4); \ pmulhw_r2r(mm3,mm4); \ paddusw_r2r(mm4,mm2); \ LOAD_32(src_2+8, mm3); \ LOAD_FACTOR_X_1(pixel->factors_i[2][2], mm4); \ pmulhw_r2r(mm3,mm4); \ paddusw_r2r(mm4,mm2); \ LOAD_32(src_2+12, mm3); \ LOAD_FACTOR_X_1(pixel->factors_i[2][3], mm4); \ pmulhw_r2r(mm3,mm4); \ paddusw_r2r(mm4,mm2); \ LOAD_32(src_3, mm3); \ LOAD_FACTOR_X_1(pixel->factors_i[3][0], mm4); \ pmulhw_r2r(mm3,mm4); \ paddusw_r2r(mm4,mm2); \ LOAD_32(src_3+4, mm3); \ LOAD_FACTOR_X_1(pixel->factors_i[3][1], mm4); \ pmulhw_r2r(mm3,mm4); \ paddusw_r2r(mm4,mm2); \ LOAD_32(src_3+8, mm3); \ LOAD_FACTOR_X_1(pixel->factors_i[3][2], mm4); \ pmulhw_r2r(mm3,mm4); \ paddusw_r2r(mm4,mm2); \ LOAD_32(src_3+12, mm3); \ LOAD_FACTOR_X_1(pixel->factors_i[3][3], mm4); \ pmulhw_r2r(mm3,mm4); \ paddusw_r2r(mm4,mm2); \ psrlw_i2r(6, mm2); \ packuswb_r2r(mm0, mm2); \ movd_r2m(mm2, *dst); #include "../c/transform_c.h" /* transform_uint16_x_4_bicubic_mmx */ #define FUNC_NAME transform_uint16_x_4_bicubic_mmx #define TYPE uint8_t #define INIT pxor_r2r(mm0, mm0); #define FINISH ctx->need_emms = 1; #define TRANSFORM \ LOAD_64(src_0, mm3); \ LOAD_FACTOR_X_1(pixel->factors_i[0][0], mm2); \ pmulhw_r2r(mm3,mm2); \ LOAD_64(src_0+8, mm3); \ LOAD_FACTOR_X_1(pixel->factors_i[0][1], mm4); \ pmulhw_r2r(mm3,mm4); \ paddusw_r2r(mm4,mm2); \ LOAD_64(src_0+16, mm3); \ LOAD_FACTOR_X_1(pixel->factors_i[0][2], mm4); \ pmulhw_r2r(mm3,mm4); \ paddusw_r2r(mm4,mm2); \ LOAD_64(src_0+24, mm3); \ LOAD_FACTOR_X_1(pixel->factors_i[0][3], mm4); \ pmulhw_r2r(mm3,mm4); \ paddusw_r2r(mm4,mm2); \ LOAD_64(src_1, mm3); \ LOAD_FACTOR_X_1(pixel->factors_i[1][0], mm4); \ pmulhw_r2r(mm3,mm4); \ paddusw_r2r(mm4,mm2); \ LOAD_64(src_1+8, mm3); \ LOAD_FACTOR_X_1(pixel->factors_i[1][1], mm4); \ pmulhw_r2r(mm3,mm4); \ paddusw_r2r(mm4,mm2); \ LOAD_64(src_1+16, mm3); \ LOAD_FACTOR_X_1(pixel->factors_i[1][2], mm4); \ pmulhw_r2r(mm3,mm4); \ paddusw_r2r(mm4,mm2); \ LOAD_64(src_1+24, mm3); \ LOAD_FACTOR_X_1(pixel->factors_i[1][3], mm4); \ pmulhw_r2r(mm3,mm4); \ paddusw_r2r(mm4,mm2); \ LOAD_64(src_2, mm3); \ LOAD_FACTOR_X_1(pixel->factors_i[2][0], mm4); \ pmulhw_r2r(mm3,mm4); \ paddusw_r2r(mm4,mm2); \ LOAD_64(src_2+8, mm3); \ LOAD_FACTOR_X_1(pixel->factors_i[2][1], mm4); \ pmulhw_r2r(mm3,mm4); \ paddusw_r2r(mm4,mm2); \ LOAD_64(src_2+16, mm3); \ LOAD_FACTOR_X_1(pixel->factors_i[2][2], mm4); \ pmulhw_r2r(mm3,mm4); \ paddusw_r2r(mm4,mm2); \ LOAD_64(src_2+24, mm3); \ LOAD_FACTOR_X_1(pixel->factors_i[2][3], mm4); \ pmulhw_r2r(mm3,mm4); \ paddusw_r2r(mm4,mm2); \ LOAD_64(src_3, mm3); \ LOAD_FACTOR_X_1(pixel->factors_i[3][0], mm4); \ pmulhw_r2r(mm3,mm4); \ paddusw_r2r(mm4,mm2); \ LOAD_64(src_3+8, mm3); \ LOAD_FACTOR_X_1(pixel->factors_i[3][1], mm4); \ pmulhw_r2r(mm3,mm4); \ paddusw_r2r(mm4,mm2); \ LOAD_64(src_3+16, mm3); \ LOAD_FACTOR_X_1(pixel->factors_i[3][2], mm4); \ pmulhw_r2r(mm3,mm4); \ paddusw_r2r(mm4,mm2); \ LOAD_64(src_3+24, mm3); \ LOAD_FACTOR_X_1(pixel->factors_i[3][3], mm4); \ pmulhw_r2r(mm3,mm4); \ paddusw_r2r(mm4,mm2); \ psllw_i2r(2, mm2); \ MOVQ_R2M(mm2, *dst); #include "../c/transform_c.h" #ifdef MMXEXT void gavl_init_transform_funcs_bilinear_mmxext(gavl_transform_funcs_t * tab, int advance) #else void gavl_init_transform_funcs_bilinear_mmx(gavl_transform_funcs_t * tab, int advance) #endif { if(advance == 4) { tab->transform_uint8_x_3 = transform_uint8_x_4_linear_mmx; tab->transform_uint8_x_4 = transform_uint8_x_4_linear_mmx; tab->bits_uint8_noadvance = 15; // fprintf(stderr, "Using MMX transform\n"); } if(advance == 8) { tab->transform_uint16_x_4 = transform_uint16_x_4_linear_mmx; tab->bits_uint16_x_4 = 15; } } #ifdef MMXEXT void gavl_init_transform_funcs_quadratic_mmxext(gavl_transform_funcs_t * tab, int advance) #else void gavl_init_transform_funcs_quadratic_mmx(gavl_transform_funcs_t * tab, int advance) #endif { if(advance == 4) { tab->transform_uint8_x_3 = transform_uint8_x_4_quadratic_mmx; tab->transform_uint8_x_4 = transform_uint8_x_4_quadratic_mmx; tab->bits_uint8_noadvance = 15; } if(advance == 8) { tab->transform_uint16_x_4 = transform_uint16_x_4_quadratic_mmx; tab->bits_uint16_x_4 = 15; // fprintf(stderr, "Using MMX transform\n"); } } #ifdef MMXEXT void gavl_init_transform_funcs_bicubic_mmxext(gavl_transform_funcs_t * tab, int advance) #else void gavl_init_transform_funcs_bicubic_mmx(gavl_transform_funcs_t * tab, int advance) #endif { if(advance == 4) { tab->transform_uint8_x_3 = transform_uint8_x_4_bicubic_mmx; tab->transform_uint8_x_4 = transform_uint8_x_4_bicubic_mmx; tab->bits_uint8_noadvance = 15; // fprintf(stderr, "Using MMX transform\n"); } if(advance == 8) { tab->transform_uint16_x_4 = transform_uint16_x_4_bicubic_mmx; tab->bits_uint16_x_4 = 15; // fprintf(stderr, "Using MMX transform\n"); } } bplaum-gavl-b9385e3/gavl/mmx/yuv_rgb_mmx.c000066400000000000000000002115561513252040200205250ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ /* * Support for mmxext * this macro produces another set of * functions in ../mmxext */ #include "mmx_macros.h" /* Constants for YUV -> RGB conversion */ static const mmx_t mmx_80w = { 0x0080008000800080LL }; static const mmx_t mmx_U_green = { 0xf37df37df37df37dLL }; // U Green: -3203 (= -0.34414*255.0/224.0 * 8192) static const mmx_t mmx_U_blue = { 0x4093409340934093LL }; // U Blue: 16531 (= 1.77200*255.0/224.0 * 8192) static const mmx_t mmx_V_red = { 0x3312331233123312LL }; // V red: 13074 (= 1.40200*255.0/224.0 * 8192) static const mmx_t mmx_V_green = { 0xe5fce5fce5fce5fcLL }; // V Green: -6660 (= -0.71414*255.0/224.0 * 8192) static const mmx_t mmx_Y_coeff = { 0x253f253f253f253fLL }; // Y Coeff: 9535 (= 255.0/219.0 * 8192) #if 1 static const mmx_t mmx_UJ_green = { 0xf4fdf4fdf4fdf4fdLL }; // U Green: -2819 (= -0.34414 * 8192) static const mmx_t mmx_UJ_blue = { 0x38b438b438b438b4LL }; // U Blue: 14516 (= 1.77200 * 8192) static const mmx_t mmx_VJ_red = { 0x2cdd2cdd2cdd2cddLL }; // V red: 11485 (= 1.40200 * 8192) static const mmx_t mmx_VJ_green = { 0xe926e926e926e926LL }; // V Green: -5850 (= -0.71414 * 8192) static const mmx_t mmx_YJ_coeff = { 0x2000200020002000LL }; // Y Coeff: 8192 (= 8192) #endif static const mmx_t mmx_10w = { 0x1010101010101010LL }; static const mmx_t mmx_00ffw = { 0x00ff00ff00ff00ffLL }; static const mmx_t mmx_ff00w = { 0xff00ff00ff00ff00LL }; /* Macros for loading the YUV images into the MMX registers */ #define LOAD_YUV_PLANAR_2 movq_m2r (*src_y, mm6);\ movd_m2r (*src_u, mm0);\ movd_m2r (*src_v, mm1);\ pxor_r2r (mm4, mm4); #define INIT_YUV_PLANAR_4 int32_t i_tmp; #define LOAD_YUV_PLANAR_4 movq_m2r (*src_y, mm6);\ i_tmp = (((int32_t)src_u[1])) << 8 | src_u[0];\ movd_m2r (i_tmp, mm0); \ i_tmp = (((int32_t)src_v[1])) << 8 | src_v[0];\ movd_m2r (i_tmp, mm1);\ pxor_r2r (mm4, mm4);\ punpcklbw_r2r(mm4, mm0);\ punpcklbw_r2r(mm4, mm1);\ movq_r2r (mm0, mm2);\ psllw_i2r(8,mm2);\ por_r2r(mm2, mm0);\ movq_r2r (mm1, mm2);\ psllw_i2r(8,mm2);\ por_r2r(mm2, mm1); #define LOAD_YUY2 movq_m2r(*src,mm0);/* mm0: V2 Y3 U2 Y2 V0 Y1 U0 Y0 */\ movq_m2r(*(src+8),mm1);/* mm1: V6 Y7 U6 Y6 V4 Y5 U4 Y4 */\ movq_r2r(mm0,mm2);/* mm2: V2 Y3 U2 Y2 V0 Y1 U0 Y0 */\ pand_m2r(mmx_00ffw,mm2);/* mm2: 00 Y3 00 Y2 00 Y1 00 Y0 */\ pxor_r2r(mm4, mm4);/* Zero mm4 */\ packuswb_r2r(mm4,mm2);/* mm2: 00 00 00 00 Y3 Y2 Y1 Y0 */\ movq_r2r(mm1,mm3);/* mm3: V6 Y7 U6 Y6 V4 Y5 U4 Y4 */\ pand_m2r(mmx_00ffw,mm3);/* mm3: 00 Y7 00 Y6 00 Y5 00 Y4 */\ pxor_r2r(mm6, mm6);/* Zero mm6 */\ packuswb_r2r(mm3,mm6);/* mm6: Y7 Y6 Y5 Y4 00 00 00 00 */\ por_r2r(mm2,mm6);/* mm6: Y7 Y6 Y5 Y4 Y3 Y2 Y1 Y0 */\ psrlw_i2r(8,mm0);/* mm0: 00 V2 00 U2 00 V0 00 U0 */\ psrlw_i2r(8,mm1);/* mm1: 00 V6 00 U6 00 V4 00 U4 */\ packuswb_r2r(mm1,mm0);/* mm0: V6 U6 V4 U4 V2 U2 V0 U0 */\ movq_r2r(mm0,mm1);/* mm1: V6 U6 V4 U4 V2 U2 V0 U0 */\ pand_m2r(mmx_00ffw,mm0);/* mm0: 00 U6 00 U4 00 U2 00 U0 */\ psrlw_i2r(8,mm1);/* mm1: 00 V6 00 V4 00 V2 00 V0 */\ packuswb_r2r(mm4,mm0);/* mm0: 00 00 00 00 U6 U4 U2 U0 */\ packuswb_r2r(mm4,mm1);/* mm1: 00 00 00 00 V6 V4 V2 V0 */ #define LOAD_UYVY movq_m2r(*src,mm0);/* mm0: Y3 V2 Y2 U2 Y1 V0 Y0 U0 */\ movq_m2r(*(src+8),mm1);/* mm1: Y7 V6 Y6 U6 Y5 V4 Y4 U4 */\ movq_r2r(mm0,mm2);/* mm2: Y3 V2 Y2 U2 Y1 V0 Y0 U0 */\ pand_m2r(mmx_ff00w,mm2);/* mm2: Y3 00 Y2 00 Y1 00 Y0 00 */\ psrlw_i2r(8,mm2);/* mm2: 00 Y3 00 Y2 00 Y1 00 Y0 */\ pxor_r2r(mm4, mm4);/* Zero mm4 */ \ packuswb_r2r(mm4,mm2);/* mm2: 00 00 00 00 Y3 Y2 Y1 Y0 */\ movq_r2r(mm1,mm3);/* mm3: Y7 V6 Y6 U6 Y5 V4 Y4 U4 */\ pand_m2r(mmx_ff00w,mm3);/* mm3: Y7 00 Y6 00 Y5 00 Y4 00 */\ psrlw_i2r(8,mm3);/* mm3: 00 Y7 00 Y6 00 Y5 00 Y4 */\ pxor_r2r(mm6, mm6);/* Zero mm6 */\ packuswb_r2r(mm3,mm6);/* mm6: Y7 Y6 Y5 Y4 00 00 00 00 */\ por_r2r(mm2,mm6);/* mm6: Y7 Y6 Y5 Y4 Y3 Y2 Y1 Y0 */\ pand_m2r(mmx_00ffw,mm0);/* mm0: 00 V2 00 U2 00 V0 00 U0 */\ pand_m2r(mmx_00ffw,mm1);/* mm1: 00 V6 00 U6 00 V4 00 U4 */\ packuswb_r2r(mm1,mm0);/* mm0: V6 U6 V4 U4 V2 U2 V0 U0 */\ movq_r2r(mm0,mm1);/* mm1: V6 U6 V4 U4 V2 U2 V0 U0 */\ pand_m2r(mmx_00ffw,mm0);/* mm0: 00 U6 00 U4 00 U2 00 U0 */\ psrlw_i2r(8,mm1);/* mm1: 00 V6 00 V4 00 V2 00 V0 */\ packuswb_r2r(mm4,mm0);/* mm0: 00 00 00 00 U6 U4 U2 U0 */\ packuswb_r2r(mm4,mm1);/* mm1: 00 00 00 00 V6 V4 V2 V0 */ /* This macro converts 8 Pixels at once (taken from mpeg2dec) */ /* * Before the conversion: * * mm0 = 00 00 00 00 u3 u2 u1 u0 * mm1 = 00 00 00 00 v3 v2 v1 v0 * mm6 = Y7 Y6 Y5 Y4 Y3 Y2 Y1 Y0 * mm4 = 00 00 00 00 00 00 00 00 (must be zerod before!) * After the conversion: * * mm0 = B7 B6 B5 B4 B3 B2 B1 B0 * mm1 = R7 R6 R5 R4 R3 R2 R1 R0 * mm2 = G7 G6 G5 G4 G3 G2 G1 G0 * */ #define YUV_2_RGB punpcklbw_r2r (mm4, mm0);/* mm0 = u3 u2 u1 u0 */\ punpcklbw_r2r (mm4, mm1);/* mm1 = v3 v2 v1 v0 */\ psubsw_m2r (mmx_80w, mm0);/* u -= 128 */\ psubsw_m2r (mmx_80w, mm1);/* v -= 128 */\ psllw_i2r (3, mm0);/* promote precision */\ psllw_i2r (3, mm1);/* promote precision */\ movq_r2r (mm0, mm2);/* mm2 = u3 u2 u1 u0 */\ movq_r2r (mm1, mm3);/* mm3 = v3 v2 v1 v0 */\ pmulhw_m2r (mmx_U_green, mm2);/* mm2 = u * u_green */\ pmulhw_m2r (mmx_V_green, mm3);/* mm3 = v * v_green */\ pmulhw_m2r (mmx_U_blue, mm0);/* mm0 = chroma_b */\ pmulhw_m2r (mmx_V_red, mm1);/* mm1 = chroma_r */\ paddsw_r2r (mm3, mm2);/* mm2 = chroma_g */\ psubusb_m2r (mmx_10w, mm6);/* Y -= 16 */\ movq_r2r (mm6, mm7);/* mm7 = Y7 Y6 Y5 Y4 Y3 Y2 Y1 Y0 */\ pand_m2r (mmx_00ffw, mm6);/* mm6 = Y6 Y4 Y2 Y0 */\ psrlw_i2r (8, mm7);/* mm7 = Y7 Y5 Y3 Y1 */\ psllw_i2r (3, mm6);/* promote precision */\ psllw_i2r (3, mm7);/* promote precision */\ pmulhw_m2r (mmx_Y_coeff, mm6);/* mm6 = luma_rgb even */\ pmulhw_m2r (mmx_Y_coeff, mm7);/* mm7 = luma_rgb odd */\ movq_r2r (mm0, mm3);/* mm3 = chroma_b */\ movq_r2r (mm1, mm4);/* mm4 = chroma_r */\ movq_r2r (mm2, mm5);/* mm5 = chroma_g */\ paddsw_r2r (mm6, mm0);/* mm0 = B6 B4 B2 B0 */\ paddsw_r2r (mm7, mm3);/* mm3 = B7 B5 B3 B1 */\ paddsw_r2r (mm6, mm1);/* mm1 = R6 R4 R2 R0 */\ paddsw_r2r (mm7, mm4);/* mm4 = R7 R5 R3 R1 */\ paddsw_r2r (mm6, mm2);/* mm2 = G6 G4 G2 G0 */\ paddsw_r2r (mm7, mm5);/* mm5 = G7 G5 G3 G1 */\ packuswb_r2r (mm0, mm0);/* saturate to 0-255 */\ packuswb_r2r (mm1, mm1);/* saturate to 0-255 */\ packuswb_r2r (mm2, mm2);/* saturate to 0-255 */\ packuswb_r2r (mm3, mm3);/* saturate to 0-255 */\ packuswb_r2r (mm4, mm4);/* saturate to 0-255 */\ packuswb_r2r (mm5, mm5);/* saturate to 0-255 */\ punpcklbw_r2r (mm3, mm0);/* mm0 = B7 B6 B5 B4 B3 B2 B1 B0 */\ punpcklbw_r2r (mm4, mm1);/* mm1 = R7 R6 R5 R4 R3 R2 R1 R0 */\ punpcklbw_r2r (mm5, mm2);/* mm2 = G7 G6 G5 G4 G3 G2 G1 G0 */ /* Same as above, but for JPEG quantization */ #define YUVJ_2_RGB punpcklbw_r2r (mm4, mm0);/* mm0 = u3 u2 u1 u0 */\ punpcklbw_r2r (mm4, mm1);/* mm1 = v3 v2 v1 v0 */\ psubsw_m2r (mmx_80w, mm0);/* u -= 128 */\ psubsw_m2r (mmx_80w, mm1);/* v -= 128 */\ psllw_i2r (3, mm0);/* promote precision */\ psllw_i2r (3, mm1);/* promote precision */\ movq_r2r (mm0, mm2);/* mm2 = u3 u2 u1 u0 */\ movq_r2r (mm1, mm3);/* mm3 = v3 v2 v1 v0 */\ pmulhw_m2r (mmx_UJ_green, mm2);/* mm2 = u * u_green */\ pmulhw_m2r (mmx_VJ_green, mm3);/* mm3 = v * v_green */\ pmulhw_m2r (mmx_UJ_blue, mm0);/* mm0 = chroma_b */\ pmulhw_m2r (mmx_VJ_red, mm1);/* mm1 = chroma_r */\ paddsw_r2r (mm3, mm2);/* mm2 = chroma_g */\ /* psubusb_m2r (mmx_10w, mm6); Y -= 16 */\ movq_r2r (mm6, mm7);/* mm7 = Y7 Y6 Y5 Y4 Y3 Y2 Y1 Y0 */\ pand_m2r (mmx_00ffw, mm6);/* mm6 = Y6 Y4 Y2 Y0 */\ psrlw_i2r (8, mm7);/* mm7 = Y7 Y5 Y3 Y1 */\ psllw_i2r (3, mm6);/* promote precision */\ psllw_i2r (3, mm7);/* promote precision */\ pmulhw_m2r (mmx_YJ_coeff, mm6);/* mm6 = luma_rgb even */\ pmulhw_m2r (mmx_YJ_coeff, mm7);/* mm7 = luma_rgb odd */\ movq_r2r (mm0, mm3);/* mm3 = chroma_b */\ movq_r2r (mm1, mm4);/* mm4 = chroma_r */\ movq_r2r (mm2, mm5);/* mm5 = chroma_g */\ paddsw_r2r (mm6, mm0);/* mm0 = B6 B4 B2 B0 */\ paddsw_r2r (mm7, mm3);/* mm3 = B7 B5 B3 B1 */\ paddsw_r2r (mm6, mm1);/* mm1 = R6 R4 R2 R0 */\ paddsw_r2r (mm7, mm4);/* mm4 = R7 R5 R3 R1 */\ paddsw_r2r (mm6, mm2);/* mm2 = G6 G4 G2 G0 */\ paddsw_r2r (mm7, mm5);/* mm5 = G7 G5 G3 G1 */\ packuswb_r2r (mm0, mm0);/* saturate to 0-255 */\ packuswb_r2r (mm1, mm1);/* saturate to 0-255 */\ packuswb_r2r (mm2, mm2);/* saturate to 0-255 */\ packuswb_r2r (mm3, mm3);/* saturate to 0-255 */\ packuswb_r2r (mm4, mm4);/* saturate to 0-255 */\ packuswb_r2r (mm5, mm5);/* saturate to 0-255 */\ punpcklbw_r2r (mm3, mm0);/* mm0 = B7 B6 B5 B4 B3 B2 B1 B0 */\ punpcklbw_r2r (mm4, mm1);/* mm1 = R7 R6 R5 R4 R3 R2 R1 R0 */\ punpcklbw_r2r (mm5, mm2);/* mm2 = G7 G6 G5 G4 G3 G2 G1 G0 */ /******************************************* * Output Macros *******************************************/ /* * mm0 = B7 B6 B5 B4 B3 B2 B1 B0 * mm1 = R7 R6 R5 R4 R3 R2 R1 R0 * mm2 = G7 G6 G5 G4 G3 G2 G1 G0 */ #define OUTPUT_BGR_32 pxor_r2r (mm3, mm3);\ movq_r2r (mm0, mm6);\ punpcklbw_r2r (mm2, mm6);\ movq_r2r (mm1, mm7);\ punpcklbw_r2r (mm3, mm7);\ movq_r2r (mm0, mm4);\ punpcklwd_r2r (mm7, mm6);\ movq_r2r (mm1, mm5);\ MOVQ_R2M (mm6, *dst);\ movq_r2r (mm0, mm6);\ punpcklbw_r2r (mm2, mm6);\ punpckhwd_r2r (mm7, mm6);\ MOVQ_R2M (mm6, *(dst+8));\ punpckhbw_r2r (mm2, mm4);\ punpckhbw_r2r (mm3, mm5);\ punpcklwd_r2r (mm5, mm4);\ MOVQ_R2M (mm4, *(dst+16));\ movq_r2r (mm0, mm4);\ punpckhbw_r2r (mm2, mm4);\ punpckhwd_r2r (mm5, mm4);\ MOVQ_R2M (mm4, *(dst+24)); #define OUTPUT_RGB_32 pxor_r2r (mm3, mm3);\ movq_r2r (mm1, mm6);\ punpcklbw_r2r (mm2, mm6);\ movq_r2r (mm0, mm7);\ punpcklbw_r2r (mm3, mm7);\ movq_r2r (mm1, mm4);\ punpcklwd_r2r (mm7, mm6);\ movq_r2r (mm0, mm5);\ MOVQ_R2M (mm6, *dst);\ movq_r2r (mm1, mm6);\ punpcklbw_r2r (mm2, mm6);\ punpckhwd_r2r (mm7, mm6);\ MOVQ_R2M (mm6, *(dst+8));\ punpckhbw_r2r (mm2, mm4);\ punpckhbw_r2r (mm3, mm5);\ punpcklwd_r2r (mm5, mm4);\ MOVQ_R2M (mm4, *(dst+16));\ movq_r2r (mm1, mm4);\ punpckhbw_r2r (mm2, mm4);\ punpckhwd_r2r (mm5, mm4);\ MOVQ_R2M (mm4, *(dst+24)); #ifdef MMXEXT /* * mm0 = B7 B6 B5 B4 B3 B2 B1 B0 * mm1 = R7 R6 R5 R4 R3 R2 R1 R0 * mm2 = G7 G6 G5 G4 G3 G2 G1 G0 */ static const mmx_t M24A= { 0x00FF0000FF0000FFLL }; static const mmx_t M24B= { 0xFF0000FF0000FF00LL }; static const mmx_t M24C= { 0x0000FF0000FF0000LL }; #define OUTPUT_RGB_24 \ movq_m2r(M24A, mm4); \ movq_m2r(M24C, mm7); \ pshufw_r2r(mm1, mm5, 0x50); /* B3 B2 B3 B2 B1 B0 B1 B0 */ \ pshufw_r2r(mm2, mm3, 0x50); /* G3 G2 G3 G2 G1 G0 G1 G0 */ \ pshufw_r2r(mm0, mm6, 0x00); /* R1 R0 R1 R0 R1 R0 R1 R0 */ \ pand_r2r(mm4, mm5); /* B2 B1 B0 */ \ pand_r2r(mm4, mm3); /* G2 G1 G0 */ \ pand_r2r(mm7, mm6); /* R1 R0 */ \ psllq_i2r(8, mm3); /* G2 G1 G0 */ \ por_r2r(mm5, mm6);\ por_r2r(mm3, mm6);\ MOVQ_R2M(mm6, *(dst));\ psrlq_i2r(8, mm2); /* 00 G7 G6 G5 G4 G3 G2 G1 */\ pshufw_r2r(mm1, mm5, 0xA5); /* B5 B4 B5 B4 B3 B2 B3 B2 */ \ pshufw_r2r(mm2, mm3, 0x55); /* G4 G3 G4 G3 G4 G3 G4 G3 */ \ pshufw_r2r(mm0, mm6, 0xA5); /* R5 R4 R5 R4 R3 R2 R3 R2 */ \ pand_m2r(M24B, mm5); /* B5 B4 B3 */ \ pand_r2r(mm7, mm3); /* G4 G3 */ \ pand_r2r(mm4, mm6); /* R4 R3 R2 */ \ por_r2r(mm5, mm3); /* B5 G4 B4 G3 B3 */\ por_r2r(mm3, mm6 );\ MOVQ_R2M(mm6, *(dst+8));\ pshufw_r2r(mm1, mm5, 0xFF); /* B7 B6 B7 B6 B7 B6 B6 B7 */\ pshufw_r2r(mm2, mm3, 0xFA); /* 00 G7 00 G7 G6 G5 G6 G5 */\ pshufw_r2r(mm0, mm6, 0xFA); /* R7 R6 R7 R6 R5 R4 R5 R4 */\ pand_r2r(mm7, mm5); /* B7 B6 */\ pand_r2r(mm4, mm3); /* G7 G6 G5 */\ pand_m2r(M24B, mm6); /* R7 R6 R5 */\ por_r2r(mm5, mm3);\ por_r2r(mm3, mm6);\ MOVQ_R2M(mm6, *(dst+16)); #define OUTPUT_BGR_24 \ movq_m2r(M24A, mm4); \ movq_m2r(M24C, mm7); \ pshufw_r2r(mm0, mm5, 0x50); /* B3 B2 B3 B2 B1 B0 B1 B0 */ \ pshufw_r2r(mm2, mm3, 0x50); /* G3 G2 G3 G2 G1 G0 G1 G0 */ \ pshufw_r2r(mm1, mm6, 0x00); /* R1 R0 R1 R0 R1 R0 R1 R0 */ \ pand_r2r(mm4, mm5); /* B2 B1 B0 */ \ pand_r2r(mm4, mm3); /* G2 G1 G0 */ \ pand_r2r(mm7, mm6); /* R1 R0 */ \ psllq_i2r(8, mm3); /* G2 G1 G0 */ \ por_r2r(mm5, mm6);\ por_r2r(mm3, mm6);\ MOVQ_R2M(mm6, *(dst));\ psrlq_i2r(8, mm2); /* 00 G7 G6 G5 G4 G3 G2 G1 */\ pshufw_r2r(mm0, mm5, 0xA5); /* B5 B4 B5 B4 B3 B2 B3 B2 */ \ pshufw_r2r(mm2, mm3, 0x55); /* G4 G3 G4 G3 G4 G3 G4 G3 */ \ pshufw_r2r(mm1, mm6, 0xA5); /* R5 R4 R5 R4 R3 R2 R3 R2 */ \ pand_m2r(M24B, mm5); /* B5 B4 B3 */ \ pand_r2r(mm7, mm3); /* G4 G3 */ \ pand_r2r(mm4, mm6); /* R4 R3 R2 */ \ por_r2r(mm5, mm3); /* B5 G4 B4 G3 B3 */\ por_r2r(mm3, mm6 );\ MOVQ_R2M(mm6, *(dst+8));\ pshufw_r2r(mm0, mm5, 0xFF); /* B7 B6 B7 B6 B7 B6 B6 B7 */\ pshufw_r2r(mm2, mm3, 0xFA); /* 00 G7 00 G7 G6 G5 G6 G5 */\ pshufw_r2r(mm1, mm6, 0xFA); /* R7 R6 R7 R6 R5 R4 R5 R4 */\ pand_r2r(mm7, mm5); /* B7 B6 */\ pand_r2r(mm4, mm3); /* G7 G6 G5 */\ pand_m2r(M24B, mm6); /* R7 R6 R5 */\ por_r2r(mm5, mm3);\ por_r2r(mm3, mm6);\ MOVQ_R2M(mm6, *(dst+16)); #else /* * mm0 = B7 B6 B5 B4 B3 B2 B1 B0 * mm1 = R7 R6 R5 R4 R3 R2 R1 R0 * mm2 = G7 G6 G5 G4 G3 G2 G1 G0 */ static const mmx_t yuv_rgb_lowest_word = { 0x000000000000FFFFLL }; static const mmx_t yuv_rgb_lowest_byte = { 0x00000000000000FFLL }; #define OUTPUT_RGB_24 pxor_r2r(mm3, mm3);/* Zero -> mm3 */\ movq_r2r(mm2, mm4);/* mm4: G7 G6 G5 G4 G3 G2 G1 G0 */\ movq_r2r(mm1, mm5);/* mm5: R7 R6 R5 R4 R3 R2 R1 R0 */\ movq_r2r(mm1, mm5);/* mm5: R7 R6 R5 R4 R3 R2 R1 R0 */\ punpcklbw_r2r(mm3, mm5);/* mm5: 00 R3 00 R2 00 R1 00 R0 */\ punpcklbw_r2r(mm4, mm3);/* mm3: G3 00 G2 00 G1 00 G0 00 */\ por_r2r(mm5, mm3);/* mm3: G3 R3 G2 R2 G1 R1 G0 R0 */\ movq_r2r(mm0, mm5);/* mm5: B7 B6 B5 B4 B3 B2 B1 B0 */\ pand_m2r(yuv_rgb_lowest_byte, mm5);/* mm5: 00 00 00 00 00 00 00 B0 */\ movq_r2r(mm3, mm7);/* mm7: G3 R3 G2 R2 G1 R1 G0 R0 */\ pand_m2r(yuv_rgb_lowest_word, mm7);/* mm7: 00 00 00 00 00 00 G0 R0 */\ psllq_i2r(16, mm5);/* mm5: 00 00 00 00 00 B0 00 00 */\ por_r2r(mm5, mm7);/* mm7: 00 00 00 00 00 B0 G0 R0 */\ psrlq_i2r(16, mm3);/* mm3: 00 00 G3 R3 G2 R2 G1 R1 */\ psrlq_i2r(8, mm0);/* mm0: 00 B7 B6 B5 B4 B3 B2 B1 */\ movq_r2r(mm0, mm5);/* mm5: 00 B7 B6 B5 B4 B3 B2 B1 */\ pand_m2r(yuv_rgb_lowest_byte, mm5);/* mm5: 00 00 00 00 00 00 00 B1 */\ psllq_i2r(40, mm5);/* mm5: 00 00 B1 00 00 00 00 00 */\ por_r2r(mm5, mm7);/* mm7: 00 00 B1 00 00 B0 G0 R0 */\ movq_r2r(mm3, mm6);/* mm7: 00 00 G3 R3 G2 R2 G1 R1 */\ pand_m2r(yuv_rgb_lowest_word, mm6);/* mm6: 00 00 00 00 00 00 G1 R1 */\ psllq_i2r(24, mm6);/* mm6: 00 00 00 G1 R1 00 00 00 */\ por_r2r(mm6, mm7);/* mm7: 00 00 B1 G1 R1 B0 G0 R0 */\ psrlq_i2r(16, mm3);/* mm3: 00 00 00 00 G3 R3 G2 R2 */\ psrlq_i2r(8, mm0);/* mm0: 00 00 B7 B6 B5 B4 B3 B2 */\ movq_r2r(mm3, mm6);/* mm6: 00 00 00 00 G3 R3 G2 R2 */\ pand_m2r(yuv_rgb_lowest_word, mm6);/* mm6: 00 00 00 00 00 00 G2 R2 */\ psllq_i2r(48, mm6);/* mm6: G2 R2 00 00 00 00 00 00 */\ por_r2r(mm6, mm7);/* mm7: G2 R2 B1 G1 R1 B0 G0 R0 */\ MOVQ_R2M(mm7, *dst);\ movq_r2r(mm0, mm7);/* mm7: 00 00 B7 B6 B5 B4 B3 B2 */\ pand_m2r(yuv_rgb_lowest_byte, mm7);/* mm7: 00 00 00 00 00 00 00 B2 */\ psrlq_i2r(16, mm3);/* mm3: 00 00 00 00 00 00 G3 R3 */\ psllq_i2r(8, mm3);/* mm3: 00 00 00 00 00 G3 R3 00 */\ por_r2r(mm3, mm7);/* mm7: 00 00 00 00 00 G3 R3 B2 */\ psrlq_i2r(8, mm0);/* mm0: 00 00 00 B7 B6 B5 B4 B3 */\ movq_r2r(mm0, mm5);/* mm5: 00 00 00 B7 B6 B5 B4 B3 */\ pand_m2r(yuv_rgb_lowest_byte, mm5);/* mm5: 00 00 00 00 00 00 00 B3 */\ psllq_i2r(24, mm5);/* mm5: 00 00 00 00 B3 00 00 00 */\ por_r2r(mm5, mm7);/* mm7: 00 00 00 00 B3 G3 R3 B2 */\ psrlq_i2r(32, mm1);/* mm1: 00 00 00 00 R7 R6 R5 R4 */\ psrlq_i2r(32, mm2);/* mm2: 00 00 00 00 G7 G6 G5 G4 */\ psrlq_i2r(8, mm0);/* mm0: 00 00 00 00 B7 B6 B5 B4 */\ punpcklbw_r2r(mm0, mm2);/* mm2: B7 G7 B6 G6 B5 G5 B4 G4 */\ movq_r2r(mm1, mm5);/* mm5: 00 00 00 00 R7 R6 R5 R4 */\ pand_m2r(yuv_rgb_lowest_byte, mm5);/* mm5: 00 00 00 00 00 00 00 R4 */\ psllq_i2r(32, mm5);/* mm5: 00 00 00 R4 00 00 00 00 */\ por_r2r(mm5, mm7);/* mm7: 00 00 00 R4 B3 G3 R3 B2 */\ movq_r2r(mm2, mm6);/* mm6: B7 G7 B6 G6 B5 G5 B4 G4 */\ pand_m2r(yuv_rgb_lowest_word, mm6);/* mm6: 00 00 00 00 00 00 B4 G4 */\ psllq_i2r(40, mm6);/* mm6: 00 B4 G4 00 00 00 00 00 */\ por_r2r(mm6, mm7);/* mm7: 00 B4 G4 R4 B3 G3 R3 B2 */\ psrlq_i2r(8, mm1);/* mm1: 00 00 00 00 00 R7 R6 R5 */\ psrlq_i2r(16, mm2);/* mm2: 00 00 B7 G7 B6 G6 B5 G5 */\ movq_r2r(mm1, mm5);/* mm5: 00 00 00 00 00 R7 R6 R5 */\ psllq_i2r(56, mm5);/* mm5: R5 00 00 00 00 00 00 00 */\ por_r2r(mm5, mm7);/* mm7: R5 B4 G4 R4 B3 G3 R3 B2 */\ MOVQ_R2M(mm7, *(dst+8));\ movq_r2r(mm2, mm7);/* mm7: 00 00 B7 G7 B6 G6 B5 G5 */\ pand_m2r(yuv_rgb_lowest_word, mm7);/* mm7: 00 00 00 00 00 00 B5 G5 */\ psrlq_i2r(8, mm1);/* mm1: 00 00 00 00 00 00 R7 R6 */\ psrlq_i2r(16, mm2);/* mm2: 00 00 00 00 B7 G7 B6 G6 */\ movq_r2r(mm1, mm5);/* mm5: 00 00 00 00 00 00 R7 R6 */\ pand_m2r(yuv_rgb_lowest_byte, mm5);/* mm5: 00 00 00 00 00 00 00 R6 */\ psllq_i2r(16, mm5);/* mm5: 00 00 00 00 00 R6 00 00 */\ por_r2r(mm5, mm7);/* mm7: 00 00 00 00 00 R6 B5 G5 */\ movq_r2r(mm2, mm6);/* mm6: 00 00 00 00 B7 G7 B6 G6 */\ pand_m2r(yuv_rgb_lowest_word, mm6);/* mm6: 00 00 00 00 00 00 B6 G6 */\ psllq_i2r(24, mm6);/* mm5: 00 00 00 B6 G6 00 00 00 */\ por_r2r(mm6, mm7);/* mm7: 00 00 00 B6 G6 R6 B5 G5 */\ psrlq_i2r(8, mm1);/* mm1: 00 00 00 00 00 00 00 R7 */\ psrlq_i2r(16, mm2);/* mm2: 00 00 00 00 00 00 B7 G7 */\ psllq_i2r(40, mm1);/* mm1: 00 00 R7 00 00 00 00 00 */\ psllq_i2r(48, mm2);/* mm2: B7 G7 00 00 00 00 00 00 */\ por_r2r(mm1, mm7);\ por_r2r(mm2, mm7);\ MOVQ_R2M(mm7, *(dst+16));\ #define OUTPUT_BGR_24 pxor_r2r(mm3, mm3);/* Zero -> mm3 */\ movq_r2r(mm2, mm4);/* mm4: G7 G6 G5 G4 G3 G2 G1 G0 */\ movq_r2r(mm0, mm5);/* mm5: R7 R6 R5 R4 R3 R2 R1 R0 */\ movq_r2r(mm0, mm5);/* mm5: R7 R6 R5 R4 R3 R2 R1 R0 */\ punpcklbw_r2r(mm3, mm5);/* mm5: 00 R3 00 R2 00 R1 00 R0 */\ punpcklbw_r2r(mm4, mm3);/* mm3: G3 00 G2 00 G1 00 G0 00 */\ por_r2r(mm5, mm3);/* mm3: G3 R3 G2 R2 G1 R1 G0 R0 */\ movq_r2r(mm1, mm5);/* mm5: B7 B6 B5 B4 B3 B2 B1 B0 */\ pand_m2r(yuv_rgb_lowest_byte, mm5);/* mm5: 00 00 00 00 00 00 00 B0 */\ movq_r2r(mm3, mm7);/* mm7: G3 R3 G2 R2 G1 R1 G0 R0 */\ pand_m2r(yuv_rgb_lowest_word, mm7);/* mm7: 00 00 00 00 00 00 G0 R0 */\ psllq_i2r(16, mm5);/* mm5: 00 00 00 00 00 B0 00 00 */\ por_r2r(mm5, mm7);/* mm7: 00 00 00 00 00 B0 G0 R0 */\ psrlq_i2r(16, mm3);/* mm3: 00 00 G3 R3 G2 R2 G1 R1 */\ psrlq_i2r(8, mm1);/* mm1: 00 B7 B6 B5 B4 B3 B2 B1 */\ movq_r2r(mm1, mm5);/* mm5: 00 B7 B6 B5 B4 B3 B2 B1 */\ pand_m2r(yuv_rgb_lowest_byte, mm5);/* mm5: 00 00 00 00 00 00 00 B1 */\ psllq_i2r(40, mm5);/* mm5: 00 00 B1 00 00 00 00 00 */\ por_r2r(mm5, mm7);/* mm7: 00 00 B1 00 00 B0 G0 R0 */\ movq_r2r(mm3, mm6);/* mm7: 00 00 G3 R3 G2 R2 G1 R1 */\ pand_m2r(yuv_rgb_lowest_word, mm6);/* mm6: 00 00 00 00 00 00 G1 R1 */\ psllq_i2r(24, mm6);/* mm6: 00 00 00 G1 R1 00 00 00 */\ por_r2r(mm6, mm7);/* mm7: 00 00 B1 G1 R1 B0 G0 R0 */\ psrlq_i2r(16, mm3);/* mm3: 00 00 00 00 G3 R3 G2 R2 */\ psrlq_i2r(8, mm1);/* mm1: 00 00 B7 B6 B5 B4 B3 B2 */\ movq_r2r(mm3, mm6);/* mm6: 00 00 00 00 G3 R3 G2 R2 */\ pand_m2r(yuv_rgb_lowest_word, mm6);/* mm6: 00 00 00 00 00 00 G2 R2 */\ psllq_i2r(48, mm6);/* mm6: G2 R2 00 00 00 00 00 00 */\ por_r2r(mm6, mm7);/* mm7: G2 R2 B1 G1 R1 B0 G0 R0 */\ MOVQ_R2M(mm7, *dst);\ movq_r2r(mm1, mm7);/* mm7: 00 00 B7 B6 B5 B4 B3 B2 */\ pand_m2r(yuv_rgb_lowest_byte, mm7);/* mm7: 00 00 00 00 00 00 00 B2 */\ psrlq_i2r(16, mm3);/* mm3: 00 00 00 00 00 00 G3 R3 */\ psllq_i2r(8, mm3);/* mm3: 00 00 00 00 00 G3 R3 00 */\ por_r2r(mm3, mm7);/* mm7: 00 00 00 00 00 G3 R3 B2 */\ psrlq_i2r(8, mm1);/* mm1: 00 00 00 B7 B6 B5 B4 B3 */\ movq_r2r(mm1, mm5);/* mm5: 00 00 00 B7 B6 B5 B4 B3 */\ pand_m2r(yuv_rgb_lowest_byte, mm5);/* mm5: 00 00 00 00 00 00 00 B3 */\ psllq_i2r(24, mm5);/* mm5: 00 00 00 00 B3 00 00 00 */\ por_r2r(mm5, mm7);/* mm7: 00 00 00 00 B3 G3 R3 B2 */\ psrlq_i2r(32, mm0);/* mm0: 00 00 00 00 R7 R6 R5 R4 */\ psrlq_i2r(32, mm2);/* mm2: 00 00 00 00 G7 G6 G5 G4 */\ psrlq_i2r(8, mm1);/* mm1: 00 00 00 00 B7 B6 B5 B4 */\ punpcklbw_r2r(mm1, mm2);/* mm2: B7 G7 B6 G6 B5 G5 B4 G4 */\ movq_r2r(mm0, mm5);/* mm5: 00 00 00 00 R7 R6 R5 R4 */\ pand_m2r(yuv_rgb_lowest_byte, mm5);/* mm5: 00 00 00 00 00 00 00 R4 */\ psllq_i2r(32, mm5);/* mm5: 00 00 00 R4 00 00 00 00 */\ por_r2r(mm5, mm7);/* mm7: 00 00 00 R4 B3 G3 R3 B2 */\ movq_r2r(mm2, mm6);/* mm6: B7 G7 B6 G6 B5 G5 B4 G4 */\ pand_m2r(yuv_rgb_lowest_word, mm6);/* mm6: 00 00 00 00 00 00 B4 G4 */\ psllq_i2r(40, mm6);/* mm6: 00 B4 G4 00 00 00 00 00 */\ por_r2r(mm6, mm7);/* mm7: 00 B4 G4 R4 B3 G3 R3 B2 */\ psrlq_i2r(8, mm0);/* mm0: 00 00 00 00 00 R7 R6 R5 */\ psrlq_i2r(16, mm2);/* mm2: 00 00 B7 G7 B6 G6 B5 G5 */\ movq_r2r(mm0, mm5);/* mm5: 00 00 00 00 00 R7 R6 R5 */\ psllq_i2r(56, mm5);/* mm5: R5 00 00 00 00 00 00 00 */\ por_r2r(mm5, mm7);/* mm7: R5 B4 G4 R4 B3 G3 R3 B2 */\ MOVQ_R2M(mm7, *(dst+8));\ movq_r2r(mm2, mm7);/* mm7: 00 00 B7 G7 B6 G6 B5 G5 */\ pand_m2r(yuv_rgb_lowest_word, mm7);/* mm7: 00 00 00 00 00 00 B5 G5 */\ psrlq_i2r(8, mm0);/* mm0: 00 00 00 00 00 00 R7 R6 */\ psrlq_i2r(16, mm2);/* mm2: 00 00 00 00 B7 G7 B6 G6 */\ movq_r2r(mm0, mm5);/* mm5: 00 00 00 00 00 00 R7 R6 */\ pand_m2r(yuv_rgb_lowest_byte, mm5);/* mm5: 00 00 00 00 00 00 00 R6 */\ psllq_i2r(16, mm5);/* mm5: 00 00 00 00 00 R6 00 00 */\ por_r2r(mm5, mm7);/* mm7: 00 00 00 00 00 R6 B5 G5 */\ movq_r2r(mm2, mm6);/* mm6: 00 00 00 00 B7 G7 B6 G6 */\ pand_m2r(yuv_rgb_lowest_word, mm6);/* mm6: 00 00 00 00 00 00 B6 G6 */\ psllq_i2r(24, mm6);/* mm5: 00 00 00 B6 G6 00 00 00 */\ por_r2r(mm6, mm7);/* mm7: 00 00 00 B6 G6 R6 B5 G5 */\ psrlq_i2r(8, mm0);/* mm0: 00 00 00 00 00 00 00 R7 */\ psrlq_i2r(16, mm2);/* mm2: 00 00 00 00 00 00 B7 G7 */\ psllq_i2r(40, mm0);/* mm0: 00 00 R7 00 00 00 00 00 */\ psllq_i2r(48, mm2);/* mm2: B7 G7 00 00 00 00 00 00 */\ por_r2r(mm0, mm7);\ por_r2r(mm2, mm7);\ MOVQ_R2M(mm7, *(dst+16));\ #endif static const mmx_t rgba32_alphamask = {0xff000000ff000000LL}; #define OUTPUT_RGBA_32 pxor_r2r (mm3, mm3);\ movq_r2r (mm1, mm6);\ punpcklbw_r2r (mm2, mm6);\ movq_r2r (mm0, mm7);\ punpcklbw_r2r (mm3, mm7);\ movq_r2r (mm1, mm4);\ punpcklwd_r2r (mm7, mm6);\ movq_r2r (mm0, mm5);\ por_m2r (rgba32_alphamask, mm6);\ MOVQ_R2M (mm6, *dst);\ movq_r2r (mm1, mm6);\ punpcklbw_r2r (mm2, mm6);\ punpckhwd_r2r (mm7, mm6);\ por_m2r (rgba32_alphamask, mm6);\ MOVQ_R2M (mm6, *(dst+8));\ punpckhbw_r2r (mm2, mm4);\ punpckhbw_r2r (mm3, mm5);\ punpcklwd_r2r (mm5, mm4);\ por_m2r (rgba32_alphamask, mm4);\ MOVQ_R2M (mm4, *(dst+16));\ movq_r2r (mm1, mm4);\ punpckhbw_r2r (mm2, mm4);\ punpckhwd_r2r (mm5, mm4);\ por_m2r (rgba32_alphamask, mm4);\ MOVQ_R2M (mm4, *(dst+24)); static const mmx_t rgb16_bluemask = {0xf8f8f8f8f8f8f8f8LL}; static const mmx_t rgb16_greenmask = {0xfcfcfcfcfcfcfcfcLL}; static const mmx_t rgb16_redmask = {0xf8f8f8f8f8f8f8f8LL}; #define OUTPUT_RGB_16 pand_m2r (rgb16_bluemask, mm0);/* mm0 = b7b6b5b4b3______ */\ pxor_r2r (mm4, mm4);/* mm4 = 0 */\ pand_m2r (rgb16_greenmask, mm2);/* mm2 = g7g6g5g4g3g2____ */\ psrlq_i2r (3, mm0);/* mm0 = ______b7b6b5b4b3 */\ movq_r2r (mm2, mm7);/* mm7 = g7g6g5g4g3g2____ */\ movq_r2r (mm0, mm5);/* mm5 = ______b7b6b5b4b3 */\ pand_m2r (rgb16_redmask, mm1);/* mm1 = r7r6r5r4r3______ */\ punpcklbw_r2r (mm4, mm2);\ punpcklbw_r2r (mm1, mm0);\ psllq_i2r (3, mm2);\ punpckhbw_r2r (mm4, mm7);\ por_r2r (mm2, mm0);\ psllq_i2r (3, mm7);\ MOVQ_R2M (mm0, *dst);\ punpckhbw_r2r (mm1, mm5);\ por_r2r (mm7, mm5);\ MOVQ_R2M (mm5, *(dst+8)); #define OUTPUT_BGR_16 pand_m2r (rgb16_bluemask, mm1);/* mm0 = b7b6b5b4b3______ */\ pxor_r2r (mm4, mm4);/* mm4 = 0 */\ pand_m2r (rgb16_greenmask, mm2);/* mm2 = g7g6g5g4g3g2____ */\ psrlq_i2r (3, mm1);/* mm0 = ______b7b6b5b4b3 */\ movq_r2r (mm2, mm7);/* mm7 = g7g6g5g4g3g2____ */\ movq_r2r (mm1, mm5);/* mm5 = ______b7b6b5b4b3 */\ pand_m2r (rgb16_redmask, mm0);/* mm1 = r7r6r5r4r3______ */\ punpcklbw_r2r (mm4, mm2);\ punpcklbw_r2r (mm0, mm1);\ psllq_i2r (3, mm2);\ punpckhbw_r2r (mm4, mm7);\ por_r2r (mm2, mm1);\ psllq_i2r (3, mm7);\ MOVQ_R2M (mm1, *dst);\ punpckhbw_r2r (mm0, mm5);\ por_r2r (mm7, mm5);\ MOVQ_R2M (mm5, *(dst+8));\ static const mmx_t rgb15_bluemask = {0xf8f8f8f8f8f8f8f8LL}; static const mmx_t rgb15_greenmask = {0xf8f8f8f8f8f8f8f8LL}; static const mmx_t rgb15_redmask = {0xf8f8f8f8f8f8f8f8LL}; #define OUTPUT_RGB_15 pand_m2r (rgb15_bluemask, mm0);/* mm0 = b7b6b5b4b3______ */\ pxor_r2r (mm4, mm4);/* mm4 = 0 */\ pand_m2r (rgb15_greenmask, mm2);/* mm2 = g7g6g5g4g3g2____ */\ psrlq_i2r (3, mm0);/* mm0 = ______b7b6b5b4b3 */\ movq_r2r (mm2, mm7);/* mm7 = g7g6g5g4g3g2____ */\ movq_r2r (mm0, mm5);/* mm5 = ______b7b6b5b4b3 */\ pand_m2r (rgb15_redmask, mm1);/* mm1 = r7r6r5r4r3______ */\ punpcklbw_r2r (mm4, mm2);\ psrlq_i2r (1, mm1);\ punpcklbw_r2r (mm1, mm0);\ psllq_i2r (2, mm2);\ punpckhbw_r2r (mm4, mm7);\ por_r2r (mm2, mm0);\ psllq_i2r (2, mm7);\ MOVQ_R2M(mm0, *dst);\ punpckhbw_r2r (mm1, mm5);\ por_r2r (mm7, mm5);\ MOVQ_R2M(mm5, *(dst+8)); #define OUTPUT_BGR_15 pand_m2r (rgb15_bluemask, mm1);/* mm0 = b7b6b5b4b3______ */\ pxor_r2r (mm4, mm4);/* mm4 = 0 */\ pand_m2r (rgb15_greenmask, mm2);/* mm2 = g7g6g5g4g3g2____ */\ psrlq_i2r (3, mm1);/* mm0 = ______b7b6b5b4b3 */\ movq_r2r (mm2, mm7);/* mm7 = g7g6g5g4g3g2____ */\ movq_r2r (mm1, mm5);/* mm5 = ______b7b6b5b4b3 */\ pand_m2r (rgb15_redmask, mm0);/* mm1 = r7r6r5r4r3______ */\ punpcklbw_r2r (mm4, mm2);\ psrlq_i2r (1, mm0);\ punpcklbw_r2r (mm0, mm1);\ psllq_i2r (2, mm2);\ punpckhbw_r2r (mm4, mm7);\ por_r2r (mm2, mm1);\ psllq_i2r (2, mm7);\ MOVQ_R2M(mm1, *dst);\ punpckhbw_r2r (mm0, mm5);\ por_r2r (mm7, mm5);\ MOVQ_R2M(mm5, *(dst+8)); /*********************************************************** * YUY2 -> ***********************************************************/ #ifndef MMXEXT #define FUNC_NAME yuy2_to_rgb_15_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE 16 #define NUM_PIXELS 8 #define CONVERT \ LOAD_YUY2 \ YUV_2_RGB \ OUTPUT_RGB_15 #define CLEANUP emms(); // #define INIT #include "../csp_packed_packed.h" #define FUNC_NAME yuy2_to_bgr_15_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE 16 #define NUM_PIXELS 8 #define CONVERT \ LOAD_YUY2 \ YUV_2_RGB \ OUTPUT_BGR_15 #define CLEANUP emms(); // #define INIT #include "../csp_packed_packed.h" #define FUNC_NAME yuy2_to_rgb_16_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE 16 #define NUM_PIXELS 8 #define CONVERT \ LOAD_YUY2 \ YUV_2_RGB \ OUTPUT_RGB_16 #define CLEANUP emms(); // #define INIT #include "../csp_packed_packed.h" #define FUNC_NAME yuy2_to_bgr_16_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE 16 #define NUM_PIXELS 8 #define CONVERT \ LOAD_YUY2 \ YUV_2_RGB \ OUTPUT_BGR_16 #define CLEANUP emms(); #include "../csp_packed_packed.h" #endif // !MMXEXT #define FUNC_NAME yuy2_to_rgb_24_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE 24 #define NUM_PIXELS 8 #define CONVERT \ LOAD_YUY2 \ YUV_2_RGB \ OUTPUT_RGB_24 #define CLEANUP emms(); // #define INIT #include "../csp_packed_packed.h" #define FUNC_NAME yuy2_to_bgr_24_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE 24 #define NUM_PIXELS 8 #define CONVERT \ LOAD_YUY2 \ YUV_2_RGB \ OUTPUT_BGR_24 #define CLEANUP emms(); // #define INIT #include "../csp_packed_packed.h" #ifndef MMXEXT #define FUNC_NAME yuy2_to_rgb_32_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE 32 #define NUM_PIXELS 8 #define CONVERT \ LOAD_YUY2 \ YUV_2_RGB \ OUTPUT_RGB_32 #define CLEANUP emms(); // #define INIT #include "../csp_packed_packed.h" #define FUNC_NAME yuy2_to_bgr_32_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE 32 #define NUM_PIXELS 8 #define CONVERT \ LOAD_YUY2 \ YUV_2_RGB \ OUTPUT_BGR_32 #define CLEANUP emms(); // #define INIT #include "../csp_packed_packed.h" #define FUNC_NAME yuy2_to_rgba_32_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE 32 #define NUM_PIXELS 8 #define CONVERT \ LOAD_YUY2 \ YUV_2_RGB \ OUTPUT_RGBA_32 #define CLEANUP emms(); // #define INIT #include "../csp_packed_packed.h" #endif // !MMXEXT /*********************************************************** * UYVY -> ***********************************************************/ #ifndef MMXEXT #define FUNC_NAME uyvy_to_rgb_15_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE 16 #define NUM_PIXELS 8 #define CONVERT \ LOAD_UYVY \ YUV_2_RGB \ OUTPUT_RGB_15 #define CLEANUP emms(); // #define INIT #include "../csp_packed_packed.h" #define FUNC_NAME uyvy_to_bgr_15_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE 16 #define NUM_PIXELS 8 #define CONVERT \ LOAD_UYVY \ YUV_2_RGB \ OUTPUT_BGR_15 #define CLEANUP emms(); // #define INIT #include "../csp_packed_packed.h" #define FUNC_NAME uyvy_to_rgb_16_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE 16 #define NUM_PIXELS 8 #define CONVERT \ LOAD_UYVY \ YUV_2_RGB \ OUTPUT_RGB_16 #define CLEANUP emms(); // #define INIT #include "../csp_packed_packed.h" #define FUNC_NAME uyvy_to_bgr_16_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE 16 #define NUM_PIXELS 8 #define CONVERT \ LOAD_UYVY \ YUV_2_RGB \ OUTPUT_BGR_16 #define CLEANUP emms(); // #define INIT #include "../csp_packed_packed.h" #endif // !MMXEXT #define FUNC_NAME uyvy_to_rgb_24_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE 24 #define NUM_PIXELS 8 #define CONVERT \ LOAD_UYVY \ YUV_2_RGB \ OUTPUT_RGB_24 #define CLEANUP emms(); // #define INIT #include "../csp_packed_packed.h" #define FUNC_NAME uyvy_to_bgr_24_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE 24 #define NUM_PIXELS 8 #define CONVERT \ LOAD_UYVY \ YUV_2_RGB \ OUTPUT_BGR_24 #define CLEANUP emms(); // #define INIT #include "../csp_packed_packed.h" #ifndef MMXEXT #define FUNC_NAME uyvy_to_rgb_32_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE 32 #define NUM_PIXELS 8 #define CONVERT \ LOAD_UYVY \ YUV_2_RGB \ OUTPUT_RGB_32 #define CLEANUP emms(); // #define INIT #include "../csp_packed_packed.h" #define FUNC_NAME uyvy_to_bgr_32_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE 32 #define NUM_PIXELS 8 #define CONVERT \ LOAD_UYVY \ YUV_2_RGB \ OUTPUT_BGR_32 #define CLEANUP emms(); // #define INIT #include "../csp_packed_packed.h" #define FUNC_NAME uyvy_to_rgba_32_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE 32 #define NUM_PIXELS 8 #define CONVERT \ LOAD_UYVY \ YUV_2_RGB \ OUTPUT_RGBA_32 #define CLEANUP emms(); // #define INIT #include "../csp_packed_packed.h" #endif // !MMXEXT /*************************************************** * YUV 420 P -> ***************************************************/ #ifndef MMXEXT #define FUNC_NAME yuv_420_p_to_rgb_15_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 8 #define IN_ADVANCE_UV 4 #define OUT_ADVANCE 16 #define NUM_PIXELS 8 #define CONVERT \ LOAD_YUV_PLANAR_2 \ YUV_2_RGB \ OUTPUT_RGB_15 #define CHROMA_SUB 2 // #define INIT #define CLEANUP emms(); #include "../csp_planar_packed.h" #define FUNC_NAME yuv_420_p_to_bgr_15_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 8 #define IN_ADVANCE_UV 4 #define OUT_ADVANCE 16 #define NUM_PIXELS 8 #define CONVERT \ LOAD_YUV_PLANAR_2 \ YUV_2_RGB \ OUTPUT_BGR_15 #define CHROMA_SUB 2 // #define INIT #define CLEANUP emms(); #include "../csp_planar_packed.h" #define FUNC_NAME yuv_420_p_to_rgb_16_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 8 #define IN_ADVANCE_UV 4 #define OUT_ADVANCE 16 #define NUM_PIXELS 8 #define CONVERT \ LOAD_YUV_PLANAR_2 \ YUV_2_RGB \ OUTPUT_RGB_16 #define CHROMA_SUB 2 // #define INIT #define CLEANUP emms(); #include "../csp_planar_packed.h" #define FUNC_NAME yuv_420_p_to_bgr_16_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 8 #define IN_ADVANCE_UV 4 #define OUT_ADVANCE 16 #define NUM_PIXELS 8 #define CONVERT \ LOAD_YUV_PLANAR_2 \ YUV_2_RGB \ OUTPUT_BGR_16 #define CHROMA_SUB 2 // #define INIT #define CLEANUP emms(); #include "../csp_planar_packed.h" #endif // !MMXEXT #define FUNC_NAME yuv_420_p_to_rgb_24_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 8 #define IN_ADVANCE_UV 4 #define OUT_ADVANCE 24 #define NUM_PIXELS 8 #define CONVERT \ LOAD_YUV_PLANAR_2 \ YUV_2_RGB \ OUTPUT_RGB_24 #define CHROMA_SUB 2 // #define INIT #define CLEANUP emms(); #include "../csp_planar_packed.h" #define FUNC_NAME yuv_420_p_to_bgr_24_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 8 #define IN_ADVANCE_UV 4 #define OUT_ADVANCE 24 #define NUM_PIXELS 8 #define CONVERT \ LOAD_YUV_PLANAR_2 \ YUV_2_RGB \ OUTPUT_BGR_24 #define CHROMA_SUB 2 // #define INIT #define CLEANUP emms(); #include "../csp_planar_packed.h" #ifndef MMXEXT #define FUNC_NAME yuv_420_p_to_rgb_32_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 8 #define IN_ADVANCE_UV 4 #define OUT_ADVANCE 32 #define NUM_PIXELS 8 #define CONVERT \ LOAD_YUV_PLANAR_2 \ YUV_2_RGB \ OUTPUT_RGB_32 #define CHROMA_SUB 2 // #define INIT #define CLEANUP emms(); #include "../csp_planar_packed.h" #define FUNC_NAME yuv_420_p_to_bgr_32_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 8 #define IN_ADVANCE_UV 4 #define OUT_ADVANCE 32 #define NUM_PIXELS 8 #define CONVERT \ LOAD_YUV_PLANAR_2 \ YUV_2_RGB \ OUTPUT_BGR_32 #define CHROMA_SUB 2 // #define INIT #define CLEANUP emms(); #include "../csp_planar_packed.h" #define FUNC_NAME yuv_420_p_to_rgba_32_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 8 #define IN_ADVANCE_UV 4 #define OUT_ADVANCE 32 #define NUM_PIXELS 8 #define CONVERT \ LOAD_YUV_PLANAR_2 \ YUV_2_RGB \ OUTPUT_RGBA_32 #define CHROMA_SUB 2 // #define INIT #define CLEANUP emms(); #include "../csp_planar_packed.h" #endif // !MMXEXT /*************************************************** * YUV 410 P -> ***************************************************/ #ifndef MMXEXT #define FUNC_NAME yuv_410_p_to_rgb_15_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 8 #define IN_ADVANCE_UV 2 #define OUT_ADVANCE 16 #define NUM_PIXELS 8 #define CONVERT \ LOAD_YUV_PLANAR_4 \ YUV_2_RGB \ OUTPUT_RGB_15 #define CHROMA_SUB 4 #define INIT INIT_YUV_PLANAR_4 #define CLEANUP emms(); #include "../csp_planar_packed.h" #define FUNC_NAME yuv_410_p_to_bgr_15_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 8 #define IN_ADVANCE_UV 2 #define OUT_ADVANCE 16 #define NUM_PIXELS 8 #define CONVERT \ LOAD_YUV_PLANAR_4 \ YUV_2_RGB \ OUTPUT_BGR_15 #define CHROMA_SUB 4 #define INIT INIT_YUV_PLANAR_4 #define CLEANUP emms(); #include "../csp_planar_packed.h" #define FUNC_NAME yuv_410_p_to_rgb_16_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 8 #define IN_ADVANCE_UV 2 #define OUT_ADVANCE 16 #define NUM_PIXELS 8 #define CONVERT \ LOAD_YUV_PLANAR_4 \ YUV_2_RGB \ OUTPUT_RGB_16 #define CHROMA_SUB 4 #define INIT INIT_YUV_PLANAR_4 #define CLEANUP emms(); #include "../csp_planar_packed.h" #define FUNC_NAME yuv_410_p_to_bgr_16_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 8 #define IN_ADVANCE_UV 2 #define OUT_ADVANCE 16 #define NUM_PIXELS 8 #define CONVERT \ LOAD_YUV_PLANAR_4 \ YUV_2_RGB \ OUTPUT_BGR_16 #define CHROMA_SUB 4 #define INIT INIT_YUV_PLANAR_4 #define CLEANUP emms(); #include "../csp_planar_packed.h" #endif // !MMXEXT #define FUNC_NAME yuv_410_p_to_rgb_24_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 8 #define IN_ADVANCE_UV 2 #define OUT_ADVANCE 24 #define NUM_PIXELS 8 #define CONVERT \ LOAD_YUV_PLANAR_4 \ YUV_2_RGB \ OUTPUT_RGB_24 #define CHROMA_SUB 4 #define INIT INIT_YUV_PLANAR_4 #define CLEANUP emms(); #include "../csp_planar_packed.h" #define FUNC_NAME yuv_410_p_to_bgr_24_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 8 #define IN_ADVANCE_UV 2 #define OUT_ADVANCE 24 #define NUM_PIXELS 8 #define CONVERT \ LOAD_YUV_PLANAR_4 \ YUV_2_RGB \ OUTPUT_BGR_24 #define CHROMA_SUB 4 #define INIT INIT_YUV_PLANAR_4 #define CLEANUP emms(); #include "../csp_planar_packed.h" #ifndef MMXEXT #define FUNC_NAME yuv_410_p_to_rgb_32_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 8 #define IN_ADVANCE_UV 2 #define OUT_ADVANCE 32 #define NUM_PIXELS 8 #define CONVERT \ LOAD_YUV_PLANAR_4 \ YUV_2_RGB \ OUTPUT_RGB_32 #define CHROMA_SUB 4 #define INIT INIT_YUV_PLANAR_4 #define CLEANUP emms(); #include "../csp_planar_packed.h" #define FUNC_NAME yuv_410_p_to_bgr_32_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 8 #define IN_ADVANCE_UV 2 #define OUT_ADVANCE 32 #define NUM_PIXELS 8 #define CONVERT \ LOAD_YUV_PLANAR_4 \ YUV_2_RGB \ OUTPUT_BGR_32 #define CHROMA_SUB 4 #define INIT INIT_YUV_PLANAR_4 #define CLEANUP emms(); #include "../csp_planar_packed.h" #define FUNC_NAME yuv_410_p_to_rgba_32_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 8 #define IN_ADVANCE_UV 2 #define OUT_ADVANCE 32 #define NUM_PIXELS 8 #define CONVERT \ LOAD_YUV_PLANAR_4 \ YUV_2_RGB \ OUTPUT_RGBA_32 #define CHROMA_SUB 4 #define INIT INIT_YUV_PLANAR_4 #define CLEANUP emms(); #include "../csp_planar_packed.h" #endif // !MMXEXT /******************************************************** * YUV 422 -> ********************************************************/ #ifndef MMXEXT #define FUNC_NAME yuv_422_p_to_rgb_15_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 8 #define IN_ADVANCE_UV 4 #define OUT_ADVANCE 16 #define NUM_PIXELS 8 #define CONVERT \ LOAD_YUV_PLANAR_2 \ YUV_2_RGB \ OUTPUT_RGB_15 #define CHROMA_SUB 1 #define CLEANUP emms(); #include "../csp_planar_packed.h" #define FUNC_NAME yuv_422_p_to_bgr_15_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 8 #define IN_ADVANCE_UV 4 #define OUT_ADVANCE 16 #define NUM_PIXELS 8 #define CONVERT \ LOAD_YUV_PLANAR_2 \ YUV_2_RGB \ OUTPUT_BGR_15 #define CHROMA_SUB 1 #define CLEANUP emms(); #include "../csp_planar_packed.h" #define FUNC_NAME yuv_422_p_to_rgb_16_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 8 #define IN_ADVANCE_UV 4 #define OUT_ADVANCE 16 #define NUM_PIXELS 8 #define CONVERT \ LOAD_YUV_PLANAR_2 \ YUV_2_RGB \ OUTPUT_RGB_16 #define CHROMA_SUB 1 #define CLEANUP emms(); #include "../csp_planar_packed.h" #define FUNC_NAME yuv_422_p_to_bgr_16_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 8 #define IN_ADVANCE_UV 4 #define OUT_ADVANCE 16 #define NUM_PIXELS 8 #define CONVERT \ LOAD_YUV_PLANAR_2 \ YUV_2_RGB \ OUTPUT_BGR_16 #define CHROMA_SUB 1 #define CLEANUP emms(); #include "../csp_planar_packed.h" #endif // MMXEXT #define FUNC_NAME yuv_422_p_to_rgb_24_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 8 #define IN_ADVANCE_UV 4 #define OUT_ADVANCE 24 #define NUM_PIXELS 8 #define CONVERT \ LOAD_YUV_PLANAR_2 \ YUV_2_RGB \ OUTPUT_RGB_24 #define CHROMA_SUB 1 #define CLEANUP emms(); #include "../csp_planar_packed.h" #define FUNC_NAME yuv_422_p_to_bgr_24_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 8 #define IN_ADVANCE_UV 4 #define OUT_ADVANCE 24 #define NUM_PIXELS 8 #define CONVERT \ LOAD_YUV_PLANAR_2 \ YUV_2_RGB \ OUTPUT_BGR_24 #define CHROMA_SUB 1 #define CLEANUP emms(); #include "../csp_planar_packed.h" #ifndef MMXEXT #define FUNC_NAME yuv_422_p_to_rgb_32_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 8 #define IN_ADVANCE_UV 4 #define OUT_ADVANCE 32 #define NUM_PIXELS 8 #define CONVERT \ LOAD_YUV_PLANAR_2 \ YUV_2_RGB \ OUTPUT_RGB_32 #define CHROMA_SUB 1 #define CLEANUP emms(); #include "../csp_planar_packed.h" #define FUNC_NAME yuv_422_p_to_bgr_32_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 8 #define IN_ADVANCE_UV 4 #define OUT_ADVANCE 32 #define NUM_PIXELS 8 #define CONVERT \ LOAD_YUV_PLANAR_2 \ YUV_2_RGB \ OUTPUT_BGR_32 #define CHROMA_SUB 1 #define CLEANUP emms(); #include "../csp_planar_packed.h" #define FUNC_NAME yuv_422_p_to_rgba_32_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 8 #define IN_ADVANCE_UV 4 #define OUT_ADVANCE 32 #define NUM_PIXELS 8 #define CONVERT \ LOAD_YUV_PLANAR_2 \ YUV_2_RGB \ OUTPUT_RGBA_32 #define CHROMA_SUB 1 #define CLEANUP emms(); #include "../csp_planar_packed.h" #endif // !MMXEXT /******************************************************** * YUV 411 -> ********************************************************/ #ifndef MMXEXT #define FUNC_NAME yuv_411_p_to_rgb_15_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 8 #define IN_ADVANCE_UV 2 #define OUT_ADVANCE 16 #define NUM_PIXELS 8 #define CONVERT \ LOAD_YUV_PLANAR_4 \ YUV_2_RGB \ OUTPUT_RGB_15 #define CHROMA_SUB 1 #define INIT INIT_YUV_PLANAR_4 #define CLEANUP emms(); #include "../csp_planar_packed.h" #define FUNC_NAME yuv_411_p_to_bgr_15_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 8 #define IN_ADVANCE_UV 2 #define OUT_ADVANCE 16 #define NUM_PIXELS 8 #define CONVERT \ LOAD_YUV_PLANAR_4 \ YUV_2_RGB \ OUTPUT_BGR_15 #define CHROMA_SUB 1 #define INIT INIT_YUV_PLANAR_4 #define CLEANUP emms(); #include "../csp_planar_packed.h" #define FUNC_NAME yuv_411_p_to_rgb_16_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 8 #define IN_ADVANCE_UV 2 #define OUT_ADVANCE 16 #define NUM_PIXELS 8 #define CONVERT \ LOAD_YUV_PLANAR_4 \ YUV_2_RGB \ OUTPUT_RGB_16 #define CHROMA_SUB 1 #define INIT INIT_YUV_PLANAR_4 #define CLEANUP emms(); #include "../csp_planar_packed.h" #define FUNC_NAME yuv_411_p_to_bgr_16_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 8 #define IN_ADVANCE_UV 2 #define OUT_ADVANCE 16 #define NUM_PIXELS 8 #define CONVERT \ LOAD_YUV_PLANAR_4 \ YUV_2_RGB \ OUTPUT_BGR_16 #define CHROMA_SUB 1 #define INIT INIT_YUV_PLANAR_4 #define CLEANUP emms(); #include "../csp_planar_packed.h" #endif // MMXEXT #define FUNC_NAME yuv_411_p_to_rgb_24_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 8 #define IN_ADVANCE_UV 2 #define OUT_ADVANCE 24 #define NUM_PIXELS 8 #define CONVERT \ LOAD_YUV_PLANAR_4 \ YUV_2_RGB \ OUTPUT_RGB_24 #define CHROMA_SUB 1 #define INIT INIT_YUV_PLANAR_4 #define CLEANUP emms(); #include "../csp_planar_packed.h" #define FUNC_NAME yuv_411_p_to_bgr_24_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 8 #define IN_ADVANCE_UV 2 #define OUT_ADVANCE 24 #define NUM_PIXELS 8 #define CONVERT \ LOAD_YUV_PLANAR_4 \ YUV_2_RGB \ OUTPUT_BGR_24 #define CHROMA_SUB 1 #define INIT INIT_YUV_PLANAR_4 #define CLEANUP emms(); #include "../csp_planar_packed.h" #ifndef MMXEXT #define FUNC_NAME yuv_411_p_to_rgb_32_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 8 #define IN_ADVANCE_UV 2 #define OUT_ADVANCE 32 #define NUM_PIXELS 8 #define CONVERT \ LOAD_YUV_PLANAR_4 \ YUV_2_RGB \ OUTPUT_RGB_32 #define CHROMA_SUB 1 #define INIT INIT_YUV_PLANAR_4 #define CLEANUP emms(); #include "../csp_planar_packed.h" #define FUNC_NAME yuv_411_p_to_bgr_32_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 8 #define IN_ADVANCE_UV 2 #define OUT_ADVANCE 32 #define NUM_PIXELS 8 #define CONVERT \ LOAD_YUV_PLANAR_4 \ YUV_2_RGB \ OUTPUT_BGR_32 #define CHROMA_SUB 1 #define INIT INIT_YUV_PLANAR_4 #define CLEANUP emms(); #include "../csp_planar_packed.h" #define FUNC_NAME yuv_411_p_to_rgba_32_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 8 #define IN_ADVANCE_UV 2 #define OUT_ADVANCE 32 #define NUM_PIXELS 8 #define CONVERT \ LOAD_YUV_PLANAR_4 \ YUV_2_RGB \ OUTPUT_RGBA_32 #define CHROMA_SUB 1 #define INIT INIT_YUV_PLANAR_4 #define CLEANUP emms(); #include "../csp_planar_packed.h" #endif // !MMXEXT /* JPEG */ /*************************************************** * YUVJ 420 P -> ***************************************************/ #ifndef MMXEXT #define FUNC_NAME yuvj_420_p_to_rgb_15_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 8 #define IN_ADVANCE_UV 4 #define OUT_ADVANCE 16 #define NUM_PIXELS 8 #define CONVERT \ LOAD_YUV_PLANAR_2 \ YUVJ_2_RGB \ OUTPUT_RGB_15 #define CHROMA_SUB 2 #define CLEANUP emms(); #include "../csp_planar_packed.h" #define FUNC_NAME yuvj_420_p_to_bgr_15_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 8 #define IN_ADVANCE_UV 4 #define OUT_ADVANCE 16 #define NUM_PIXELS 8 #define CONVERT \ LOAD_YUV_PLANAR_2 \ YUVJ_2_RGB \ OUTPUT_BGR_15 #define CHROMA_SUB 2 #define CLEANUP emms(); #include "../csp_planar_packed.h" #define FUNC_NAME yuvj_420_p_to_rgb_16_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 8 #define IN_ADVANCE_UV 4 #define OUT_ADVANCE 16 #define NUM_PIXELS 8 #define CONVERT \ LOAD_YUV_PLANAR_2 \ YUVJ_2_RGB \ OUTPUT_RGB_16 #define CHROMA_SUB 2 #define CLEANUP emms(); #include "../csp_planar_packed.h" #define FUNC_NAME yuvj_420_p_to_bgr_16_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 8 #define IN_ADVANCE_UV 4 #define OUT_ADVANCE 16 #define NUM_PIXELS 8 #define CONVERT \ LOAD_YUV_PLANAR_2 \ YUVJ_2_RGB \ OUTPUT_BGR_16 #define CHROMA_SUB 2 #define CLEANUP emms(); #include "../csp_planar_packed.h" #endif // !MMXEXT #define FUNC_NAME yuvj_420_p_to_rgb_24_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 8 #define IN_ADVANCE_UV 4 #define OUT_ADVANCE 24 #define NUM_PIXELS 8 #define CONVERT \ LOAD_YUV_PLANAR_2 \ YUVJ_2_RGB \ OUTPUT_RGB_24 #define CHROMA_SUB 2 #define CLEANUP emms(); #include "../csp_planar_packed.h" #define FUNC_NAME yuvj_420_p_to_bgr_24_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 8 #define IN_ADVANCE_UV 4 #define OUT_ADVANCE 24 #define NUM_PIXELS 8 #define CONVERT \ LOAD_YUV_PLANAR_2 \ YUVJ_2_RGB \ OUTPUT_BGR_24 #define CHROMA_SUB 2 #define CLEANUP emms(); #ifndef MMXEXT #include "../csp_planar_packed.h" #define FUNC_NAME yuvj_420_p_to_rgb_32_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 8 #define IN_ADVANCE_UV 4 #define OUT_ADVANCE 32 #define NUM_PIXELS 8 #define CONVERT \ LOAD_YUV_PLANAR_2 \ YUVJ_2_RGB \ OUTPUT_RGB_32 #define CHROMA_SUB 2 #define CLEANUP emms(); #include "../csp_planar_packed.h" #define FUNC_NAME yuvj_420_p_to_bgr_32_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 8 #define IN_ADVANCE_UV 4 #define OUT_ADVANCE 32 #define NUM_PIXELS 8 #define CONVERT \ LOAD_YUV_PLANAR_2 \ YUVJ_2_RGB \ OUTPUT_BGR_32 #define CHROMA_SUB 2 #define CLEANUP emms(); #include "../csp_planar_packed.h" #define FUNC_NAME yuvj_420_p_to_rgba_32_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 8 #define IN_ADVANCE_UV 4 #define OUT_ADVANCE 32 #define NUM_PIXELS 8 #define CONVERT \ LOAD_YUV_PLANAR_2 \ YUVJ_2_RGB \ OUTPUT_RGBA_32 #define CHROMA_SUB 2 #define CLEANUP emms(); #include "../csp_planar_packed.h" #endif // !MMXEXT /******************************************************** * YUVJ 422 -> ********************************************************/ #ifndef MMXEXT #define FUNC_NAME yuvj_422_p_to_rgb_15_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 8 #define IN_ADVANCE_UV 4 #define OUT_ADVANCE 16 #define NUM_PIXELS 8 #define CONVERT \ LOAD_YUV_PLANAR_2 \ YUVJ_2_RGB \ OUTPUT_RGB_15 #define CHROMA_SUB 1 #define CLEANUP emms(); #include "../csp_planar_packed.h" #define FUNC_NAME yuvj_422_p_to_bgr_15_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 8 #define IN_ADVANCE_UV 4 #define OUT_ADVANCE 16 #define NUM_PIXELS 8 #define CONVERT \ LOAD_YUV_PLANAR_2 \ YUVJ_2_RGB \ OUTPUT_BGR_15 #define CHROMA_SUB 1 #define CLEANUP emms(); #include "../csp_planar_packed.h" #define FUNC_NAME yuvj_422_p_to_rgb_16_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 8 #define IN_ADVANCE_UV 4 #define OUT_ADVANCE 16 #define NUM_PIXELS 8 #define CONVERT \ LOAD_YUV_PLANAR_2 \ YUVJ_2_RGB \ OUTPUT_RGB_16 #define CHROMA_SUB 1 #define CLEANUP emms(); #include "../csp_planar_packed.h" #define FUNC_NAME yuvj_422_p_to_bgr_16_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 8 #define IN_ADVANCE_UV 4 #define OUT_ADVANCE 16 #define NUM_PIXELS 8 #define CONVERT \ LOAD_YUV_PLANAR_2 \ YUVJ_2_RGB \ OUTPUT_BGR_16 #define CHROMA_SUB 1 #define CLEANUP emms(); #endif // !MMXEXT #include "../csp_planar_packed.h" #define FUNC_NAME yuvj_422_p_to_rgb_24_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 8 #define IN_ADVANCE_UV 4 #define OUT_ADVANCE 24 #define NUM_PIXELS 8 #define CONVERT \ LOAD_YUV_PLANAR_2 \ YUVJ_2_RGB \ OUTPUT_RGB_24 #define CHROMA_SUB 1 #define CLEANUP emms(); #include "../csp_planar_packed.h" #define FUNC_NAME yuvj_422_p_to_bgr_24_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 8 #define IN_ADVANCE_UV 4 #define OUT_ADVANCE 24 #define NUM_PIXELS 8 #define CONVERT \ LOAD_YUV_PLANAR_2 \ YUVJ_2_RGB \ OUTPUT_BGR_24 #define CHROMA_SUB 1 #define CLEANUP emms(); #include "../csp_planar_packed.h" #ifndef MMXEXT #define FUNC_NAME yuvj_422_p_to_rgb_32_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 8 #define IN_ADVANCE_UV 4 #define OUT_ADVANCE 32 #define NUM_PIXELS 8 #define CONVERT \ LOAD_YUV_PLANAR_2 \ YUVJ_2_RGB \ OUTPUT_RGB_32 #define CHROMA_SUB 1 #define CLEANUP emms(); #include "../csp_planar_packed.h" #define FUNC_NAME yuvj_422_p_to_bgr_32_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 8 #define IN_ADVANCE_UV 4 #define OUT_ADVANCE 32 #define NUM_PIXELS 8 #define CONVERT \ LOAD_YUV_PLANAR_2 \ YUVJ_2_RGB \ OUTPUT_BGR_32 #define CHROMA_SUB 1 #define CLEANUP emms(); #include "../csp_planar_packed.h" #define FUNC_NAME yuvj_422_p_to_rgba_32_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 8 #define IN_ADVANCE_UV 4 #define OUT_ADVANCE 32 #define NUM_PIXELS 8 #define CONVERT \ LOAD_YUV_PLANAR_2 \ YUVJ_2_RGB \ OUTPUT_RGBA_32 #define CHROMA_SUB 1 #define CLEANUP emms(); #include "../csp_planar_packed.h" #endif // !MMXEXT #ifdef MMXEXT void gavl_init_yuv_rgb_funcs_mmxext(gavl_pixelformat_function_table_t * tab, int width, const gavl_video_options_t * opt) #else /* !MMXEXT */ void gavl_init_yuv_rgb_funcs_mmx(gavl_pixelformat_function_table_t * tab, int width, const gavl_video_options_t * opt) #endif /* MMXEXT */ { if(width % 8) return; if(opt->quality && (opt->quality >= 3)) return; tab->yuy2_to_rgb_24 = yuy2_to_rgb_24_mmx; tab->yuy2_to_bgr_24 = yuy2_to_bgr_24_mmx; tab->uyvy_to_rgb_24 = uyvy_to_rgb_24_mmx; tab->uyvy_to_bgr_24 = uyvy_to_bgr_24_mmx; tab->yuv_420_p_to_rgb_24 = yuv_420_p_to_rgb_24_mmx; tab->yuv_420_p_to_bgr_24 = yuv_420_p_to_bgr_24_mmx; tab->yuv_410_p_to_rgb_24 = yuv_410_p_to_rgb_24_mmx; tab->yuv_410_p_to_bgr_24 = yuv_410_p_to_bgr_24_mmx; tab->yuv_422_p_to_rgb_24 = yuv_422_p_to_rgb_24_mmx; tab->yuv_422_p_to_bgr_24 = yuv_422_p_to_bgr_24_mmx; tab->yuv_411_p_to_rgb_24 = yuv_411_p_to_rgb_24_mmx; tab->yuv_411_p_to_bgr_24 = yuv_411_p_to_bgr_24_mmx; tab->yuvj_420_p_to_rgb_24 = yuvj_420_p_to_rgb_24_mmx; tab->yuvj_420_p_to_bgr_24 = yuvj_420_p_to_bgr_24_mmx; tab->yuvj_422_p_to_rgb_24 = yuvj_422_p_to_rgb_24_mmx; tab->yuvj_422_p_to_bgr_24 = yuvj_422_p_to_bgr_24_mmx; #ifndef MMXEXT tab->yuy2_to_rgb_15 = yuy2_to_rgb_15_mmx; tab->yuy2_to_bgr_15 = yuy2_to_bgr_15_mmx; tab->yuy2_to_rgb_16 = yuy2_to_rgb_16_mmx; tab->yuy2_to_bgr_16 = yuy2_to_bgr_16_mmx; tab->yuy2_to_rgb_32 = yuy2_to_rgb_32_mmx; tab->yuy2_to_bgr_32 = yuy2_to_bgr_32_mmx; tab->yuy2_to_rgba_32 = yuy2_to_rgba_32_mmx; tab->uyvy_to_rgb_15 = uyvy_to_rgb_15_mmx; tab->uyvy_to_bgr_15 = uyvy_to_bgr_15_mmx; tab->uyvy_to_rgb_16 = uyvy_to_rgb_16_mmx; tab->uyvy_to_bgr_16 = uyvy_to_bgr_16_mmx; tab->uyvy_to_rgb_32 = uyvy_to_rgb_32_mmx; tab->uyvy_to_bgr_32 = uyvy_to_bgr_32_mmx; tab->uyvy_to_rgba_32 = uyvy_to_rgba_32_mmx; tab->yuv_420_p_to_rgb_15 = yuv_420_p_to_rgb_15_mmx; tab->yuv_420_p_to_bgr_15 = yuv_420_p_to_bgr_15_mmx; tab->yuv_420_p_to_rgb_16 = yuv_420_p_to_rgb_16_mmx; tab->yuv_420_p_to_bgr_16 = yuv_420_p_to_bgr_16_mmx; tab->yuv_420_p_to_rgb_32 = yuv_420_p_to_rgb_32_mmx; tab->yuv_420_p_to_bgr_32 = yuv_420_p_to_bgr_32_mmx; tab->yuv_420_p_to_rgba_32 = yuv_420_p_to_rgba_32_mmx; tab->yuv_410_p_to_rgb_15 = yuv_410_p_to_rgb_15_mmx; tab->yuv_410_p_to_bgr_15 = yuv_410_p_to_bgr_15_mmx; tab->yuv_410_p_to_rgb_16 = yuv_410_p_to_rgb_16_mmx; tab->yuv_410_p_to_bgr_16 = yuv_410_p_to_bgr_16_mmx; tab->yuv_410_p_to_rgb_32 = yuv_410_p_to_rgb_32_mmx; tab->yuv_410_p_to_bgr_32 = yuv_410_p_to_bgr_32_mmx; tab->yuv_410_p_to_rgba_32 = yuv_410_p_to_rgba_32_mmx; tab->yuv_422_p_to_rgb_15 = yuv_422_p_to_rgb_15_mmx; tab->yuv_422_p_to_bgr_15 = yuv_422_p_to_bgr_15_mmx; tab->yuv_422_p_to_rgb_16 = yuv_422_p_to_rgb_16_mmx; tab->yuv_422_p_to_bgr_16 = yuv_422_p_to_bgr_16_mmx; tab->yuv_422_p_to_rgb_32 = yuv_422_p_to_rgb_32_mmx; tab->yuv_422_p_to_bgr_32 = yuv_422_p_to_bgr_32_mmx; tab->yuv_422_p_to_rgba_32 = yuv_422_p_to_rgba_32_mmx; tab->yuv_411_p_to_rgb_15 = yuv_411_p_to_rgb_15_mmx; tab->yuv_411_p_to_bgr_15 = yuv_411_p_to_bgr_15_mmx; tab->yuv_411_p_to_rgb_16 = yuv_411_p_to_rgb_16_mmx; tab->yuv_411_p_to_bgr_16 = yuv_411_p_to_bgr_16_mmx; tab->yuv_411_p_to_rgb_32 = yuv_411_p_to_rgb_32_mmx; tab->yuv_411_p_to_bgr_32 = yuv_411_p_to_bgr_32_mmx; tab->yuv_411_p_to_rgba_32 = yuv_411_p_to_rgba_32_mmx; tab->yuvj_420_p_to_rgb_15 = yuvj_420_p_to_rgb_15_mmx; tab->yuvj_420_p_to_bgr_15 = yuvj_420_p_to_bgr_15_mmx; tab->yuvj_420_p_to_rgb_16 = yuvj_420_p_to_rgb_16_mmx; tab->yuvj_420_p_to_bgr_16 = yuvj_420_p_to_bgr_16_mmx; tab->yuvj_420_p_to_rgb_32 = yuvj_420_p_to_rgb_32_mmx; tab->yuvj_420_p_to_bgr_32 = yuvj_420_p_to_bgr_32_mmx; tab->yuvj_420_p_to_rgba_32 = yuvj_420_p_to_rgba_32_mmx; tab->yuvj_422_p_to_rgb_15 = yuvj_422_p_to_rgb_15_mmx; tab->yuvj_422_p_to_bgr_15 = yuvj_422_p_to_bgr_15_mmx; tab->yuvj_422_p_to_rgb_16 = yuvj_422_p_to_rgb_16_mmx; tab->yuvj_422_p_to_bgr_16 = yuvj_422_p_to_bgr_16_mmx; tab->yuvj_422_p_to_rgb_32 = yuvj_422_p_to_rgb_32_mmx; tab->yuvj_422_p_to_bgr_32 = yuvj_422_p_to_bgr_32_mmx; tab->yuvj_422_p_to_rgba_32 = yuvj_422_p_to_rgba_32_mmx; #endif } bplaum-gavl-b9385e3/gavl/mmx/yuv_yuv_mmx.c000066400000000000000000000357561513252040200206040ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include "mmx_macros.h" static const mmx_t mmx_00ffw = { 0x00ff00ff00ff00ffLL }; static const mmx_t mmx_ff00w = { 0xff00ff00ff00ff00LL }; #ifndef MMXEXT /* Pixel conversion Macros */ /* * Convert a single scanline from YUY2 to separate planes * preserving the horizontal subsampling. * This macro does practically the same as the LOAD_YUY2 * macro in _yuv_rgb_mmx.c */ #define YUY2_TO_YUV_PLANAR movq_m2r(*src,mm0);\ movq_m2r(*(src+8),mm1);\ movq_r2r(mm0,mm2);/* mm2: V2 Y3 U2 Y2 V0 Y1 U0 Y0 */\ pand_m2r(mmx_00ffw,mm2);/* mm2: 00 Y3 00 Y2 00 Y1 00 Y0 */\ pxor_r2r(mm4, mm4);/* Zero mm4 */\ packuswb_r2r(mm4,mm2);/* mm2: 00 00 00 00 Y3 Y2 Y1 Y0 */\ movq_r2r(mm1,mm3);/* mm3: V6 Y7 U6 Y6 V4 Y5 U4 Y4 */\ pand_m2r(mmx_00ffw,mm3);/* mm3: 00 Y7 00 Y6 00 Y5 00 Y4 */\ pxor_r2r(mm6, mm6);/* Zero mm6 */\ packuswb_r2r(mm3,mm6);/* mm6: Y7 Y6 Y5 Y4 00 00 00 00 */\ por_r2r(mm2,mm6);/* mm6: Y7 Y6 Y5 Y4 Y3 Y2 Y1 Y0 */\ psrlw_i2r(8,mm0);/* mm0: 00 V2 00 U2 00 V0 00 U0 */\ psrlw_i2r(8,mm1);/* mm1: 00 V6 00 U6 00 V4 00 U4 */\ packuswb_r2r(mm1,mm0);/* mm0: V6 U6 V4 U4 V2 U2 V0 U0 */\ movq_r2r(mm0,mm1);/* mm1: V6 U6 V4 U4 V2 U2 V0 U0 */\ pand_m2r(mmx_00ffw,mm0);/* mm0: 00 U6 00 U4 00 U2 00 U0 */\ psrlw_i2r(8,mm1);/* mm1: 00 V6 00 V4 00 V2 00 V0 */\ packuswb_r2r(mm4,mm0);/* mm0: 00 00 00 00 U6 U4 U2 U0 */\ packuswb_r2r(mm4,mm1);/* mm1: 00 00 00 00 V6 V4 V2 V0 */\ MOVQ_R2M(mm6, *dst_y);\ movd_r2m(mm0, *dst_u);\ movd_r2m(mm1, *dst_v); #define UYVY_TO_YUV_PLANAR movq_m2r(*src,mm0);/* mm0: Y3 V2 Y2 U2 Y1 V0 Y0 U0 */\ movq_m2r(*(src+8),mm1);/* mm1: Y7 V6 Y6 U6 Y5 V4 Y4 U4 */\ movq_r2r(mm0,mm2);/* mm2: Y3 V2 Y2 U2 Y1 V0 Y0 U0 */\ pand_m2r(mmx_ff00w,mm2);/* mm2: Y3 00 Y2 00 Y1 00 Y0 00 */\ psrlw_i2r(8,mm2);/* mm0: 00 Y3 00 Y2 00 Y1 00 Y0 */\ pxor_r2r(mm4, mm4);/* Zero mm4 */ \ packuswb_r2r(mm4,mm2);/* mm2: 00 00 00 00 Y3 Y2 Y1 Y0 */\ movq_r2r(mm1,mm3);/* mm3: Y7 V6 Y6 U6 Y5 V4 Y4 U4 */\ pand_m2r(mmx_ff00w,mm3);/* mm3: Y7 00 Y6 00 Y5 00 Y4 00 */\ psrlw_i2r(8,mm3);/* mm3: 00 Y3 00 Y2 00 Y1 00 Y0 */\ pxor_r2r(mm6, mm6);/* Zero mm6 */\ packuswb_r2r(mm3,mm6);/* mm6: Y7 Y6 Y5 Y4 00 00 00 00 */\ por_r2r(mm2,mm6);/* mm6: Y7 Y6 Y5 Y4 Y3 Y2 Y1 Y0 */\ pand_m2r(mmx_00ffw,mm0);/* mm0: 00 V2 00 U2 00 V0 00 U0 */\ pand_m2r(mmx_00ffw,mm1);/* mm1: 00 V6 00 U6 00 V4 00 U4 */\ packuswb_r2r(mm1,mm0);/* mm0: V6 U6 V4 U4 V2 U2 V0 U0 */\ movq_r2r(mm0,mm1);/* mm1: V6 U6 V4 U4 V2 U2 V0 U0 */\ pand_m2r(mmx_00ffw,mm0);/* mm0: 00 U6 00 U4 00 U2 00 U0 */\ psrlw_i2r(8,mm1);/* mm1: 00 V6 00 V4 00 V2 00 V0 */\ packuswb_r2r(mm4,mm0);/* mm0: 00 00 00 00 U6 U4 U2 U0 */\ packuswb_r2r(mm4,mm1);/* mm1: 00 00 00 00 V6 V4 V2 V0 */\ MOVQ_R2M(mm6, *dst_y);\ movd_r2m(mm0, *dst_u);\ movd_r2m(mm1, *dst_v); /* * Convert a single scanline from YUY2 to a luminance plane * preserving the horizontal subsampling */ #define YUY2_TO_Y_PLANAR movq_m2r(*src,mm0);\ movq_m2r(*(src+8),mm1);\ movq_r2r(mm0,mm2);/* mm2: V2 Y3 U2 Y2 V0 Y1 U0 Y0 */\ pand_m2r(mmx_00ffw,mm2);/* mm2: 00 Y3 00 Y2 00 Y1 00 Y0 */\ pxor_r2r(mm4, mm4);/* Zero mm4 */\ packuswb_r2r(mm4,mm2);/* mm2: 00 00 00 00 Y3 Y2 Y1 Y0 */\ movq_r2r(mm1,mm3);/* mm3: V6 Y7 U6 Y6 V4 Y5 U4 Y4 */\ pand_m2r(mmx_00ffw,mm3);/* mm3: 00 Y7 00 Y6 00 Y5 00 Y4 */\ pxor_r2r(mm6, mm6);/* Zero mm6 */\ packuswb_r2r(mm3,mm6);/* mm6: Y7 Y6 Y5 Y4 00 00 00 00 */\ por_r2r(mm2,mm6);/* mm6: Y7 Y6 Y5 Y4 Y3 Y2 Y1 Y0 */\ MOVQ_R2M(mm6, *dst_y); #define UYVY_TO_Y_PLANAR movq_m2r(*src,mm0);/* mm0: Y3 V2 Y2 U2 Y1 V0 Y0 U0 */\ movq_m2r(*(src+8),mm1);/* mm1: Y7 V6 Y6 U6 Y5 V4 Y4 U4 */\ movq_r2r(mm0,mm2);/* mm2: Y3 V2 Y2 U2 Y1 V0 Y0 U0 */\ pand_m2r(mmx_ff00w,mm2);/* mm2: Y3 00 Y2 00 Y1 00 Y0 00 */\ psrlw_i2r(8,mm2);/* mm2: 00 Y3 00 Y2 00 Y1 00 Y0 */\ pxor_r2r(mm4, mm4);/* Zero mm4 */\ packuswb_r2r(mm4,mm2);/* mm2: 00 00 00 00 Y3 Y2 Y1 Y0 */\ movq_r2r(mm1,mm3);/* mm3: Y7 V6 Y6 U6 Y5 V4 Y4 U4 */\ pand_m2r(mmx_ff00w,mm3);/* mm3: Y7 00 Y6 00 Y5 00 Y4 00 */\ psrlw_i2r(8,mm3);/* mm3: 00 Y7 00 Y6 00 Y5 00 Y4 */\ pxor_r2r(mm6, mm6);/* Zero mm6 */\ packuswb_r2r(mm3,mm6);/* mm6: Y7 Y6 Y5 Y4 00 00 00 00 */\ por_r2r(mm2,mm6);/* mm6: Y7 Y6 Y5 Y4 Y3 Y2 Y1 Y0 */\ MOVQ_R2M(mm6, *dst_y); #define PLANAR_TO_YUY2 movq_m2r(*src_y, mm0);/* mm0: Y7 Y6 Y5 Y4 Y3 Y2 Y1 Y0 */\ movd_m2r(*src_u, mm1);/* mm1: 00 00 00 00 U6 U4 U2 U0 */\ movd_m2r(*src_v, mm2);/* mm2: 00 00 00 00 V6 V4 V2 V0 */\ pxor_r2r(mm3, mm3);/* Zero mm3 */\ movq_r2r(mm0, mm7);/* mm7: Y7 Y6 Y5 Y4 Y3 Y2 Y1 Y0 */\ punpcklbw_r2r(mm3, mm0);/* mm0: 00 Y3 00 Y2 00 Y1 00 Y0 */\ punpckhbw_r2r(mm3, mm7);/* mm7: 00 Y7 00 Y6 00 Y5 00 Y4 */\ pxor_r2r(mm4, mm4); /* Zero mm4 */\ punpcklbw_r2r(mm1, mm4);/* mm4: U6 00 U4 00 U2 00 U0 00 */\ pxor_r2r(mm5, mm5); /* Zero mm5 */\ punpcklbw_r2r(mm2, mm5);/* mm5: V6 00 V4 00 V2 00 V0 00 */\ movq_r2r(mm4, mm6);/* mm6: U6 00 U4 00 U2 00 U0 00 */\ punpcklwd_r2r(mm3, mm6);/* mm6: 00 00 U2 00 00 00 U0 00 */\ por_r2r(mm6, mm0); /* mm0: 00 Y3 U2 Y2 00 Y1 U0 Y0 */\ punpcklwd_r2r(mm3, mm4);/* mm4: 00 00 U6 00 00 00 U4 00 */\ por_r2r(mm4, mm7); /* mm7: 00 Y7 U6 Y6 00 Y5 U4 Y4 */\ pxor_r2r(mm6, mm6); /* Zero mm6 */\ punpcklwd_r2r(mm5, mm6);/* mm6: V2 00 00 00 V0 00 00 00 */\ por_r2r(mm6, mm0); /* mm0: V2 Y3 U2 Y2 V0 Y1 U0 Y0 */\ punpckhwd_r2r(mm5, mm3);/* mm3: V6 00 00 00 V4 00 00 00 */\ por_r2r(mm3, mm7); /* mm7: V6 Y7 U6 Y6 V4 Y5 U4 Y4 */\ MOVQ_R2M(mm0, *dst);\ MOVQ_R2M(mm7, *(dst+8)); #define PLANAR_TO_UYVY movq_m2r(*src_y, mm0);/* mm0: Y7 Y6 Y5 Y4 Y3 Y2 Y1 Y0 */\ movd_m2r(*src_u, mm1);/* mm1: 00 00 00 00 U6 U4 U2 U0 */\ movd_m2r(*src_v, mm2);/* mm2: 00 00 00 00 V6 V4 V2 V0 */\ pxor_r2r(mm3, mm3);/* Zero mm3 */\ movq_r2r(mm0, mm7);/* mm7: Y7 Y6 Y5 Y4 Y3 Y2 Y1 Y0 */\ punpcklbw_r2r(mm3, mm0);/* mm0: 00 Y3 00 Y2 00 Y1 00 Y0 */\ punpckhbw_r2r(mm3, mm7);/* mm7: 00 Y7 00 Y6 00 Y5 00 Y4 */\ psllw_i2r(8,mm0);/* mm0: Y3 00 Y2 00 Y1 00 Y0 00 */\ psllw_i2r(8,mm7);/* mm7: Y7 00 Y6 00 Y5 00 Y4 00 */\ pxor_r2r(mm4, mm4); /* Zero mm4 */\ punpcklbw_r2r(mm1, mm4);/* mm4: U6 00 U4 00 U2 00 U0 00 */\ pxor_r2r(mm5, mm5); /* Zero mm5 */\ punpcklbw_r2r(mm2, mm5);/* mm5: V6 00 V4 00 V2 00 V0 00 */\ movq_r2r(mm4, mm6);/* mm6: U6 00 U4 00 U2 00 U0 00 */\ punpcklwd_r2r(mm3, mm6);/* mm6: 00 00 U2 00 00 00 U0 00 */\ psrlw_i2r(8,mm6);/* mm6: 00 00 00 U2 00 00 00 U0 */\ por_r2r(mm6, mm0); /* mm0: Y3 00 Y2 U2 Y1 00 Y0 U0 */\ punpcklwd_r2r(mm3, mm4);/* mm4: 00 00 U6 00 00 00 U4 00 */\ psrlw_i2r(8,mm4);/* mm4: 00 00 00 U6 00 00 00 U4 */\ por_r2r(mm4, mm7); /* mm7: Y7 00 Y6 U6 Y5 00 Y4 U4 */\ pxor_r2r(mm6, mm6); /* Zero mm6 */\ punpcklwd_r2r(mm5, mm6);/* mm6: V2 00 00 00 V0 00 00 00 */\ psrlw_i2r(8,mm6);/* mm6: 00 V2 00 00 00 V0 00 00 */\ por_r2r(mm6, mm0); /* mm0: Y3 V2 Y2 U2 Y1 V0 Y0 U0 */\ punpckhwd_r2r(mm5, mm3);/* mm3: V6 00 00 00 V4 00 00 00 */\ psrlw_i2r(8,mm3);/* mm3: 00 V6 00 00 00 V4 00 00 */\ por_r2r(mm3, mm7); /* mm7: Y7 V6 Y6 U6 Y5 V4 Y4 U4 */\ MOVQ_R2M(mm0, *dst);\ MOVQ_R2M(mm7, *(dst+8)); /* YUY2 -> Planar */ #define FUNC_NAME yuy2_to_yuv_420_p_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE_Y 8 #define OUT_ADVANCE_UV 4 #define NUM_PIXELS 8 #define CONVERT_YUV \ YUY2_TO_YUV_PLANAR #define CONVERT_Y \ YUY2_TO_Y_PLANAR #define CHROMA_SUB 2 #define CLEANUP emms(); #include "../csp_packed_planar.h" #define FUNC_NAME yuy2_to_yuv_422_p_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE_Y 8 #define OUT_ADVANCE_UV 4 #define NUM_PIXELS 8 #define CONVERT_YUV \ YUY2_TO_YUV_PLANAR #define CHROMA_SUB 1 #define CLEANUP emms(); #include "../csp_packed_planar.h" /* UYVY -> Planar */ #define FUNC_NAME uyvy_to_yuv_420_p_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE_Y 8 #define OUT_ADVANCE_UV 4 #define NUM_PIXELS 8 #define CONVERT_YUV \ UYVY_TO_YUV_PLANAR #define CONVERT_Y \ UYVY_TO_Y_PLANAR #define CHROMA_SUB 2 #define CLEANUP emms(); #include "../csp_packed_planar.h" #define FUNC_NAME uyvy_to_yuv_422_p_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE 16 #define OUT_ADVANCE_Y 8 #define OUT_ADVANCE_UV 4 #define NUM_PIXELS 8 #define CONVERT_YUV \ UYVY_TO_YUV_PLANAR #define CHROMA_SUB 1 #define CLEANUP emms(); #include "../csp_packed_planar.h" /* Planar -> YUY2 */ #define FUNC_NAME yuv_422_p_to_yuy2_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 8 #define IN_ADVANCE_UV 4 #define OUT_ADVANCE 16 #define NUM_PIXELS 8 #define CONVERT \ PLANAR_TO_YUY2 #define CHROMA_SUB 1 // #define INIT #define CLEANUP emms(); #include "../csp_planar_packed.h" #define FUNC_NAME yuv_420_p_to_yuy2_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 8 #define IN_ADVANCE_UV 4 #define OUT_ADVANCE 16 #define NUM_PIXELS 8 #define CONVERT \ PLANAR_TO_YUY2 #define CHROMA_SUB 2 // #define INIT #define CLEANUP emms(); #include "../csp_planar_packed.h" /* Planar -> UYVY */ #define FUNC_NAME yuv_422_p_to_uyvy_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 8 #define IN_ADVANCE_UV 4 #define OUT_ADVANCE 16 #define NUM_PIXELS 8 #define CONVERT \ PLANAR_TO_UYVY #define CHROMA_SUB 1 // #define INIT #define CLEANUP emms(); #include "../csp_planar_packed.h" #define FUNC_NAME yuv_420_p_to_uyvy_mmx #define IN_TYPE uint8_t #define OUT_TYPE uint8_t #define IN_ADVANCE_Y 8 #define IN_ADVANCE_UV 4 #define OUT_ADVANCE 16 #define NUM_PIXELS 8 #define CONVERT \ PLANAR_TO_UYVY #define CHROMA_SUB 2 // #define INIT #define CLEANUP emms(); #include "../csp_planar_packed.h" void gavl_init_yuv_yuv_funcs_mmx(gavl_pixelformat_function_table_t * tab, int width, const gavl_video_options_t * opt) { if(width % 8) return; /* These are as good as the C-Functions. Higher quality will invoke a scaler, so this function won't get called anyway */ tab->yuy2_to_yuv_420_p = yuy2_to_yuv_420_p_mmx; tab->yuy2_to_yuv_422_p = yuy2_to_yuv_422_p_mmx; tab->uyvy_to_yuv_420_p = uyvy_to_yuv_420_p_mmx; tab->uyvy_to_yuv_422_p = uyvy_to_yuv_422_p_mmx; tab->yuv_420_p_to_yuy2 = yuv_420_p_to_yuy2_mmx; tab->yuv_420_p_to_uyvy = yuv_420_p_to_uyvy_mmx; tab->yuv_422_p_to_yuy2 = yuv_422_p_to_yuy2_mmx; tab->yuv_422_p_to_uyvy = yuv_422_p_to_uyvy_mmx; } #else // MMXEXT void gavl_init_yuv_yuv_funcs_mmxext(gavl_pixelformat_function_table_t * tab, int width, const gavl_video_options_t * opt) { } #endif bplaum-gavl-b9385e3/gavl/mmxext/000077500000000000000000000000001513252040200165325ustar00rootroot00000000000000bplaum-gavl-b9385e3/gavl/mmxext/Makefile.am000066400000000000000000000004421513252040200205660ustar00rootroot00000000000000AM_CFLAGS = @LIBGAVL_CFLAGS@ noinst_LTLIBRARIES = libgavl_mmxext.la libgavl_mmxext_la_SOURCES = \ dsp_mmxext.c \ transform_mmxext.c \ rgb_rgb_mmxext.c \ rgb_yuv_mmxext.c \ yuv_rgb_mmxext.c \ yuv_yuv_mmxext.c \ scale_y_mmxext.c \ scale_x_mmxext.c # Removed, because they aren't faster # bplaum-gavl-b9385e3/gavl/mmxext/colorspace_mmxext.c000066400000000000000000000017351513252040200224400ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #define MMXEXT #include "../mmx/colorspace_mmx.c" bplaum-gavl-b9385e3/gavl/mmxext/deinterlace_blend_mmxext.c000066400000000000000000000017501513252040200237260ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #define MMXEXT #include "../3dnow/deinterlace_blend_3dnow.c" bplaum-gavl-b9385e3/gavl/mmxext/dsp_mmxext.c000066400000000000000000000036061513252040200210730ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include #include #include #include #include "../mmx/mmx.h" static int sad_8_mmxext(const uint8_t * src_1, const uint8_t * src_2, int stride_1, int stride_2, int w, int h) { uint32_t ret = 0, i, j; const uint8_t * s1, *s2; pxor_r2r(mm0, mm0); for(i = 0; i < h; i++) { j = w; s1 = src_1; s2 = src_2; while(j > 7) { movq_m2r((*s1), mm1); movq_m2r((*s2), mm2); psadbw_r2r(mm1, mm2); paddd_r2r(mm2, mm0); s1 += 8; s2 += 8; j -= 8; } movd_r2m(mm0, ret); while(j--) { ret += abs((*s1)-(*s2)); s1++; s2++; } src_1 += stride_1; src_2 += stride_2; } return ret; } void gavl_dsp_init_mmxext(gavl_dsp_funcs_t * funcs, int quality) { funcs->sad_8 = sad_8_mmxext; } bplaum-gavl-b9385e3/gavl/mmxext/rgb_rgb_mmxext.c000066400000000000000000000017321513252040200217070ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #define MMXEXT #include "../mmx/rgb_rgb_mmx.c" bplaum-gavl-b9385e3/gavl/mmxext/rgb_yuv_mmxext.c000066400000000000000000000017321513252040200217600ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #define MMXEXT #include "../mmx/rgb_yuv_mmx.c" bplaum-gavl-b9385e3/gavl/mmxext/scale_x_mmxext.c000066400000000000000000000017321513252040200217210ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #define MMXEXT #include "../mmx/scale_x_mmx.c" bplaum-gavl-b9385e3/gavl/mmxext/scale_y_mmxext.c000066400000000000000000000017321513252040200217220ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #define MMXEXT #include "../mmx/scale_y_mmx.c" bplaum-gavl-b9385e3/gavl/mmxext/transform_mmxext.c000066400000000000000000000017341513252040200223200ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #define MMXEXT #include "../mmx/transform_mmx.c" bplaum-gavl-b9385e3/gavl/mmxext/yuv_rgb_mmxext.c000066400000000000000000000017321513252040200217600ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #define MMXEXT #include "../mmx/yuv_rgb_mmx.c" bplaum-gavl-b9385e3/gavl/mmxext/yuv_yuv_mmxext.c000066400000000000000000000017321513252040200220310ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #define MMXEXT #include "../mmx/yuv_yuv_mmx.c" bplaum-gavl-b9385e3/gavl/msg.c000066400000000000000000000511361513252040200161500ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include #include #include #include #include #include void gavl_msg_set_client_id(gavl_msg_t * msg, const char * id) { if(gavl_dictionary_get(&msg->header, GAVL_MSG_CLIENT_ID)) return; gavl_dictionary_set_string(&msg->header, GAVL_MSG_CLIENT_ID, id); } const char * gavl_msg_get_client_id(const gavl_msg_t * msg) { return gavl_dictionary_get_string(&msg->header, GAVL_MSG_CLIENT_ID); } void gavl_msg_set_id_ns(gavl_msg_t * msg, int id, int ns) { gavl_dictionary_init(&msg->header); gavl_dictionary_set_int(&msg->header, GAVL_MSG_ID, id); msg->ID = id; gavl_dictionary_set_int(&msg->header, GAVL_MSG_NS, ns); msg->NS = ns; msg->num_args = 0; /* Zero everything */ memset(&msg->args, 0, sizeof(msg->args)); } void gavl_msg_set_id(gavl_msg_t * msg, int id) { gavl_msg_set_id_ns(msg, id, 0); } int gavl_msg_get_id_ns(gavl_msg_t * msg, int * ns) { *ns = msg->NS; return msg->ID; } void gavl_msg_copy(gavl_msg_t * dst, const gavl_msg_t * src) { int i; /* Also clears all memory */ gavl_msg_set_id_ns(dst, src->ID, src->NS); dst->num_args = src->num_args; gavl_dictionary_copy(&dst->header, &src->header); for(i = 0; i < src->num_args; i++) gavl_value_copy(&dst->args[i], &src->args[i]); } static int check_arg(int arg) { if(arg < 0) return 0; assert(arg < GAVL_MSG_MAX_ARGS); return 1; } /* Set argument to a basic type */ void gavl_msg_set_arg_int(gavl_msg_t * msg, int arg, int value) { gavl_value_t * val; if(!check_arg(arg)) return; val = &msg->args[arg]; gavl_value_set_int(val, value); if(arg+1 > msg->num_args) msg->num_args = arg + 1; } void gavl_msg_set_arg_long(gavl_msg_t * msg, int arg, int64_t value) { if(!check_arg(arg)) return; gavl_value_set_long(&msg->args[arg], value); if(arg+1 > msg->num_args) msg->num_args = arg + 1; } void gavl_msg_set_arg_string(gavl_msg_t * msg, int arg, const char * value) { if(!check_arg(arg)) return; gavl_value_set_string(&msg->args[arg], value); if(arg+1 > msg->num_args) msg->num_args = arg + 1; } void gavl_msg_set_arg_float(gavl_msg_t * msg, int arg, double value) { if(!check_arg(arg)) return; gavl_value_set_float(&msg->args[arg], value); if(arg+1 > msg->num_args) msg->num_args = arg + 1; } void gavl_msg_set_arg_color_rgb(gavl_msg_t * msg, int arg, const float * value) { double * col; if(!check_arg(arg)) return; col = gavl_value_set_color_rgb(&msg->args[arg]); col[0] = value[0]; col[1] = value[1]; col[2] = value[2]; if(arg+1 > msg->num_args) msg->num_args = arg + 1; } void gavl_msg_set_arg_color_rgba(gavl_msg_t * msg, int arg, const float * value) { double * col; if(!check_arg(arg)) return; col = gavl_value_set_color_rgba(&msg->args[arg]); col[0] = value[0]; col[1] = value[1]; col[2] = value[2]; col[3] = value[3]; if(arg+1 > msg->num_args) msg->num_args = arg + 1; } void gavl_msg_set_arg_position(gavl_msg_t * msg, int arg, const double * value) { double * pos; if(!check_arg(arg)) return; pos = gavl_value_set_position(&msg->args[arg]); pos[0] = value[0]; pos[1] = value[1]; if(arg+1 > msg->num_args) msg->num_args = arg + 1; } /* Get/Set value */ int gavl_msg_set_arg(gavl_msg_t * msg, int arg, const gavl_value_t * val) { if(!check_arg(arg)) return 0; gavl_value_copy(&msg->args[arg], val); if(arg+1 > msg->num_args) msg->num_args = arg + 1; return 1; } int gavl_msg_set_arg_nocopy(gavl_msg_t * msg, int arg, gavl_value_t * val) { if(!check_arg(arg)) return 0; gavl_value_move(&msg->args[arg], val); if(arg+1 > msg->num_args) msg->num_args = arg + 1; return 1; } const gavl_value_t * gavl_msg_get_arg_c(const gavl_msg_t * msg, int arg) { if(!check_arg(arg)) return NULL; return &msg->args[arg]; } gavl_value_t * gavl_msg_get_arg_nc(gavl_msg_t * msg, int arg) { if(!check_arg(arg)) return NULL; return &msg->args[arg]; } void gavl_msg_get_arg(gavl_msg_t * msg, int arg, gavl_value_t * val) { if(!check_arg(arg)) return; gavl_value_move(val, &msg->args[arg]); } /* Get basic types */ int gavl_msg_get_id(gavl_msg_t * msg) { return msg->ID; } int gavl_msg_get_arg_int(const gavl_msg_t * msg, int arg) { if(!check_arg(arg)) return 0; return msg->args[arg].v.i; } int64_t gavl_msg_get_arg_long(const gavl_msg_t * msg, int arg) { if(!check_arg(arg)) return 0; return msg->args[arg].v.l; } double gavl_msg_get_arg_float(const gavl_msg_t * msg, int arg) { if(!check_arg(arg)) return 0.0; return msg->args[arg].v.d; } void gavl_msg_get_arg_color_rgb(gavl_msg_t * msg, int arg, float * val) { if(!check_arg(arg)) return; val[0] = msg->args[arg].v.color[0]; val[1] = msg->args[arg].v.color[1]; val[2] = msg->args[arg].v.color[2]; } void gavl_msg_get_arg_color_rgba(gavl_msg_t * msg, int arg, float * val) { if(!check_arg(arg)) return; val[0] = msg->args[arg].v.color[0]; val[1] = msg->args[arg].v.color[1]; val[2] = msg->args[arg].v.color[2]; val[3] = msg->args[arg].v.color[3]; } void gavl_msg_get_arg_position(gavl_msg_t * msg, int arg, double * val) { if(!check_arg(arg)) return; val[0] = msg->args[arg].v.position[0]; val[1] = msg->args[arg].v.position[1]; } #if 0 char * gavl_msg_get_arg_string(gavl_msg_t * msg, int arg) { char * ret; if(!check_arg(arg)) return NULL; ret = msg->args[arg].v.str; msg->args[arg].v.str = NULL; return ret; } #endif const char * gavl_msg_get_arg_string_c(const gavl_msg_t * msg, int arg) { if(!check_arg(arg)) return NULL; return (char *)msg->args[arg].v.str; } /* Get/Set routines for structures */ void gavl_msg_set_arg_audio_format(gavl_msg_t * msg, int arg, const gavl_audio_format_t * format) { gavl_audio_format_copy(gavl_value_set_audio_format(&msg->args[arg]), format); if(arg+1 > msg->num_args) msg->num_args = arg + 1; } void gavl_msg_get_arg_audio_format(gavl_msg_t * msg, int arg, gavl_audio_format_t * format) { gavl_audio_format_copy(format, msg->args[arg].v.audioformat); } /* Video format */ void gavl_msg_set_arg_video_format(gavl_msg_t * msg, int arg, const gavl_video_format_t * format) { gavl_video_format_copy(gavl_value_set_video_format(&msg->args[arg]), format); if(arg+1 > msg->num_args) msg->num_args = arg + 1; } void gavl_msg_get_arg_video_format(gavl_msg_t * msg, int arg, gavl_video_format_t * format) { gavl_video_format_copy(format, msg->args[arg].v.videoformat); } void gavl_msg_set_arg_dictionary(gavl_msg_t * msg, int arg, const gavl_dictionary_t * m) { gavl_dictionary_copy(gavl_value_set_dictionary(&msg->args[arg]), m); if(arg+1 > msg->num_args) msg->num_args = arg + 1; } void gavl_msg_set_arg_dictionary_nocopy(gavl_msg_t * msg, int arg, gavl_dictionary_t * m) { gavl_value_set_dictionary_nocopy(&msg->args[arg], m); if(arg+1 > msg->num_args) msg->num_args = arg + 1; } void gavl_msg_set_arg_array(gavl_msg_t * msg, int arg, const gavl_array_t * m) { gavl_array_copy(gavl_value_set_array(&msg->args[arg]), m); if(arg+1 > msg->num_args) msg->num_args = arg + 1; } void gavl_msg_set_arg_array_nocopy(gavl_msg_t * msg, int arg, gavl_array_t * m) { gavl_value_set_array_nocopy(&msg->args[arg], m); if(arg+1 > msg->num_args) msg->num_args = arg + 1; } int gavl_msg_get_arg_dictionary_c(const gavl_msg_t * msg, int arg, gavl_dictionary_t * m) { gavl_dictionary_reset(m); if(msg->args[arg].type != GAVL_TYPE_DICTIONARY) return 0; gavl_dictionary_copy(m, msg->args[arg].v.dictionary); return 1; } int gavl_msg_get_arg_dictionary(gavl_msg_t * msg, int arg, gavl_dictionary_t * m) { gavl_dictionary_reset(m); if(msg->args[arg].type != GAVL_TYPE_DICTIONARY) return 0; memcpy(m, msg->args[arg].v.dictionary, sizeof(*m)); gavl_dictionary_init(msg->args[arg].v.dictionary); return 1; } int gavl_msg_get_arg_array(gavl_msg_t * msg, int arg, gavl_array_t * arr) { gavl_array_reset(arr); if(msg->args[arg].type != GAVL_TYPE_ARRAY) return 0; gavl_array_move(arr, msg->args[arg].v.array); return 1; } int gavl_msg_get_arg_array_c(const gavl_msg_t * msg, int arg, gavl_array_t * arr) { gavl_array_reset(arr); if(msg->args[arg].type != GAVL_TYPE_ARRAY) return 0; gavl_array_copy(arr, msg->args[arg].v.array); return 1; } void gavl_msg_init(gavl_msg_t * m) { memset(m, 0, sizeof(*m)); m->ID = -1; } gavl_msg_t * gavl_msg_create() { gavl_msg_t * ret; ret = malloc(sizeof(*ret)); gavl_msg_init(ret); return ret; } void gavl_msg_free(gavl_msg_t * m) { int i; for(i = 0; i < m->num_args; i++) gavl_value_free(&m->args[i]); gavl_dictionary_reset(&m->header); memset(m, 0, sizeof(*m)); m->ID = -1; } void gavl_msg_destroy(gavl_msg_t * m) { gavl_msg_free(m); free(m); } void gavl_msg_dump(const gavl_msg_t * msg, int indent) { int i; gavl_diprintf(indent, "Message\n"); gavl_dictionary_dump(&msg->header, indent + 2); gavl_dprintf("\n"); for(i = 0; i < msg->num_args; i++) { gavl_diprintf(indent + 2, "arg[%d]: %s: ", i, gavl_type_to_string(msg->args[i].type)); gavl_value_dump(&msg->args[i], 0); gavl_dprintf("\n"); } } /* Set specific messages */ /** \brief Generic progress callback * * arg0: Activity (string) * arg1: Percentage (0.0..1.0) */ void gavl_msg_set_progress(gavl_msg_t * msg, const char * activity, float perc) { gavl_msg_set_id_ns(msg, GAVL_MSG_PROGRESS, GAVL_MSG_NS_GENERIC); gavl_msg_set_arg_string(msg, 0, activity); gavl_msg_set_arg_float(msg, 1, perc); } void gavl_msg_get_progress(gavl_msg_t * msg, const char ** activity, float * perc) { if(activity) *activity = gavl_msg_get_arg_string_c(msg, 0); if(perc) *perc = gavl_msg_get_arg_float(msg, 1); } #if 0 void gavl_msg_set_src_metadata(gavl_msg_t * msg, int64_t time, const gavl_dictionary_t * m) { gavl_msg_set_id_ns(msg, GAVL_MSG_SRC_METADATA_CHANGED, GAVL_MSG_NS_SRC); gavl_msg_set_arg_long(msg, 0, time); gavl_msg_set_arg_dictionary(msg, 1, m); } void gavl_msg_get_src_metadata(gavl_msg_t * msg, int64_t * time, gavl_dictionary_t * m) { if(time) *time = gavl_msg_get_arg_long(msg, 0); if(m) gavl_msg_get_arg_dictionary(msg, 1, m); } #endif void gavl_msg_set_src_aspect(gavl_msg_t * msg, int64_t time, int scale, int stream, int pixel_width, int pixel_height) { gavl_msg_set_id_ns(msg, GAVL_MSG_SRC_ASPECT_CHANGED, GAVL_MSG_NS_SRC); gavl_msg_set_arg_long(msg, 0, time); gavl_msg_set_arg_int(msg, 1, scale); gavl_msg_set_arg_int(msg, 2, stream); gavl_msg_set_arg_int(msg, 3, pixel_width); gavl_msg_set_arg_int(msg, 4, pixel_height); } void gavl_msg_get_src_aspect(gavl_msg_t * msg, int64_t * time, int * scale, int * stream, int * pixel_width, int * pixel_height) { if(time) *time = gavl_msg_get_arg_long(msg, 0); if(scale) *scale = gavl_msg_get_arg_int(msg, 1); if(stream) *stream = gavl_msg_get_arg_int(msg, 2); if(pixel_width) *pixel_width = gavl_msg_get_arg_int(msg, 3); if(pixel_height) *pixel_height = gavl_msg_get_arg_int(msg, 4); } void gavl_msg_set_src_buffering(gavl_msg_t * msg, float perc) { gavl_msg_set_id_ns(msg, GAVL_MSG_SRC_BUFFERING, GAVL_MSG_NS_SRC); gavl_msg_set_arg_float(msg, 0, perc); } void gavl_msg_get_src_buffering(gavl_msg_t * msg, float * perc) { if(perc) *perc = gavl_msg_get_arg_float(msg, 0); } static void set_button_args(gavl_msg_t * msg, int button, int mask, int x, int y, const double * pos) { gavl_msg_set_arg_int(msg, 0, button); gavl_msg_set_arg_int(msg, 1, mask); gavl_msg_set_arg_int(msg, 2, x); gavl_msg_set_arg_int(msg, 3, y); gavl_msg_set_arg_position(msg, 4, pos); } void gavl_msg_set_gui_button_press(gavl_msg_t * msg, int button, int mask, int x, int y, const double * pos) { gavl_msg_set_id_ns(msg, GAVL_MSG_GUI_BUTTON_PRESS, GAVL_MSG_NS_GUI); set_button_args(msg, button, mask, x, y, pos); } void gavl_msg_set_gui_button_release(gavl_msg_t * msg, int button, int mask, int x, int y, const double * pos) { gavl_msg_set_id_ns(msg, GAVL_MSG_GUI_BUTTON_RELEASE, GAVL_MSG_NS_GUI); set_button_args(msg, button, mask, x, y, pos); } void gavl_msg_get_gui_button(gavl_msg_t * msg, int * button, int * mask, int * x, int * y, double * pos) { if(button) *button = gavl_msg_get_arg_int(msg, 0); if(mask) *mask = gavl_msg_get_arg_int(msg, 1); if(x) *x = gavl_msg_get_arg_int(msg, 2); if(y) *y = gavl_msg_get_arg_int(msg, 3); if(pos) gavl_msg_get_arg_position(msg, 4, pos); } static void set_key_args(gavl_msg_t * msg, int key, int mask, int x, int y, const double * pos) { gavl_msg_set_arg_int(msg, 0, key); gavl_msg_set_arg_int(msg, 1, mask); gavl_msg_set_arg_int(msg, 2, x); gavl_msg_set_arg_int(msg, 3, y); gavl_msg_set_arg_position(msg, 4, pos); } void gavl_msg_set_gui_key_press(gavl_msg_t * msg, int key, int mask, int x, int y, const double * pos) { gavl_msg_set_id_ns(msg, GAVL_MSG_GUI_KEY_PRESS, GAVL_MSG_NS_GUI); set_key_args(msg, key, mask, x, y, pos); } void gavl_msg_set_gui_key_release(gavl_msg_t * msg, int key, int mask, int x, int y, const double * pos) { gavl_msg_set_id_ns(msg, GAVL_MSG_GUI_KEY_RELEASE, GAVL_MSG_NS_GUI); set_key_args(msg, key, mask, x, y, pos); } void gavl_msg_get_gui_key(gavl_msg_t * msg, int * key, int * mask, int * x, int * y, double * pos) { if(key) *key = gavl_msg_get_arg_int(msg, 0); if(mask) *mask = gavl_msg_get_arg_int(msg, 1); if(x) *x = gavl_msg_get_arg_int(msg, 2); if(y) *y = gavl_msg_get_arg_int(msg, 3); if(pos) gavl_msg_get_arg_position(msg, 4, pos); } void gavl_msg_set_gui_motion(gavl_msg_t * msg, int mask, int x, int y, const double * pos) { gavl_msg_set_arg_int(msg, 0, mask); gavl_msg_set_arg_int(msg, 1, x); gavl_msg_set_arg_int(msg, 2, y); gavl_msg_set_arg_position(msg, 3, pos); } void gavl_msg_get_gui_motion(gavl_msg_t * msg, int * mask, int * x, int * y, double * pos) { if(mask) *mask = gavl_msg_get_arg_int(msg, 0); if(x) *x = gavl_msg_get_arg_int(msg, 1); if(y) *y = gavl_msg_get_arg_int(msg, 2); if(pos) gavl_msg_get_arg_position(msg, 3, pos); } int gavl_msg_match(const gavl_msg_t * m, uint32_t id, uint32_t ns) { return ((m->ID == id) && (m->NS == ns)) ? 1 : 0; } void gavl_msg_apply_header(gavl_msg_t * msg) { const gavl_value_t * val; if((val = gavl_dictionary_get(&msg->header, GAVL_MSG_ID)) && (val->type == GAVL_TYPE_INT)) msg->ID = val->v.i; if((val = gavl_dictionary_get(&msg->header, GAVL_MSG_NS)) && (val->type == GAVL_TYPE_INT)) msg->NS = val->v.i; } void gavl_msg_set_splice_children(gavl_msg_t * msg, int msg_ns, int msg_id, const char * ctx, int last, int idx, int del, const gavl_value_t * add) { gavl_msg_set_id_ns(msg, msg_id, msg_ns); if(ctx) gavl_dictionary_set_string(&msg->header, GAVL_MSG_CONTEXT_ID, ctx); gavl_msg_set_last(msg, last); gavl_msg_set_arg_int(msg, 0, idx); gavl_msg_set_arg_int(msg, 1, del); if(add) gavl_msg_set_arg(msg, 2, add); else { gavl_value_t dummy; gavl_value_init(&dummy); gavl_msg_set_arg(msg, 2, &dummy); } } void gavl_msg_set_splice_children_nocopy(gavl_msg_t * msg, int msg_ns, int msg_id, const char * ctx, int last, int idx, int del, gavl_value_t * add) { gavl_msg_set_id_ns(msg, msg_id, msg_ns); if(ctx) gavl_dictionary_set_string(&msg->header, GAVL_MSG_CONTEXT_ID, ctx); gavl_msg_set_last(msg, last); gavl_msg_set_arg_int(msg, 0, idx); gavl_msg_set_arg_int(msg, 1, del); if(add) gavl_msg_set_arg_nocopy(msg, 2, add); else { gavl_value_t dummy; gavl_value_init(&dummy); gavl_msg_set_arg(msg, 2, &dummy); } } int gavl_msg_get_splice_children(gavl_msg_t * msg, int * last, int * idx, int * del, gavl_value_t * add) { *last = gavl_msg_get_last(msg); *idx = gavl_msg_get_arg_int(msg, 0); *del = gavl_msg_get_arg_int(msg, 1); gavl_msg_get_arg(msg, 2, add); return 1; } int gavl_msg_get_last(const gavl_msg_t * msg) { int notlast = 0; if(gavl_dictionary_get_int(&msg->header, GAVL_MSG_NOT_LAST, ¬last) && notlast) return 0; return 1; } void gavl_msg_set_last(gavl_msg_t * msg, int last) { if(!last) gavl_dictionary_set_int(&msg->header, GAVL_MSG_NOT_LAST, 1); } int gavl_msg_splice_children(gavl_msg_t * msg, gavl_dictionary_t * dict) { int ret = 0; int last; int idx; int del; gavl_value_t val; gavl_value_init(&val); if(gavl_msg_get_splice_children(msg, &last, &idx, &del, &val)) { gavl_track_splice_children(dict, idx, del, &val); ret = 1; } gavl_value_free(&val); return ret; } gavl_time_t gavl_msg_get_timestamp(const gavl_msg_t * msg) { gavl_time_t ret = GAVL_TIME_UNDEFINED; gavl_dictionary_get_long(&msg->header, GAVL_MSG_TIMESTAMP, &ret); return ret; } void gavl_msg_set_timestamp(gavl_msg_t * msg, gavl_time_t t) { gavl_dictionary_set_long(&msg->header, GAVL_MSG_TIMESTAMP, t); } void gavl_msg_copy_header_field(gavl_msg_t * dst, const gavl_msg_t * src, const char * key) { if(!strcmp(key, GAVL_MSG_CLIENT_ID)) gavl_msg_set_client_id(dst, gavl_msg_get_client_id(src)); else gavl_dictionary_copy_value(&dst->header, &src->header, key); } void gavl_msg_set_resp_for_req(gavl_msg_t * dst, const gavl_msg_t * src) { gavl_msg_copy_header_field(dst, src, GAVL_MSG_CLIENT_ID); gavl_msg_copy_header_field(dst, src, GAVL_MSG_CONTEXT_ID); gavl_msg_copy_header_field(dst, src, GAVL_MSG_FUNCTION_TAG); } int gavl_msg_send(gavl_msg_t * msg, gavl_handle_msg_func func, void * priv) { if(!func) return 1; return func(priv, msg); } void gavl_msg_set_msg_src_seek(gavl_msg_t * dst, int64_t time, int scale) { gavl_msg_set_id_ns(dst, GAVL_CMD_SRC_SEEK, GAVL_MSG_NS_SRC); gavl_msg_set_arg_long(dst, 0, time); gavl_msg_set_arg_int(dst, 1, scale); } void gavl_msg_get_msg_src_seek(const gavl_msg_t * dst, int64_t * time, int * scale) { if(time) *time = gavl_msg_get_arg_long(dst, 0); if(scale) *scale = gavl_msg_get_arg_int(dst, 1); } #if 0 void gavl_msg_set_src_resync(gavl_msg_t * dst, int64_t t, int scale, int discard, int discont) { gavl_msg_set_id_ns(dst, GAVL_MSG_SRC_RESYNC, GAVL_MSG_NS_SRC); gavl_msg_set_arg_long(dst, 0, t); gavl_msg_set_arg_int(dst, 1, scale); gavl_msg_set_arg_int(dst, 2, discard); gavl_msg_set_arg_int(dst, 3, discont); } void gavl_msg_get_src_resync(const gavl_msg_t * src, int64_t * t, int * scale, int * discard, int * discont) { if(t) *t = gavl_msg_get_arg_long(src, 0); if(scale) *scale = gavl_msg_get_arg_int(src, 1); if(discard) *discard = gavl_msg_get_arg_int(src, 2); if(discont) *discont = gavl_msg_get_arg_int(src, 3); } #endif bplaum-gavl-b9385e3/gavl/numptr.c000066400000000000000000000157021513252040200167060ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include #include float GAVL_PTR_2_FLOAT32BE(const void * p) { int exponent, mantissa, negative ; float fvalue ; const unsigned char *cptr = p; negative = cptr [0] & 0x80 ; exponent = ((cptr [0] & 0x7F) << 1) | ((cptr [1] & 0x80) ? 1 : 0) ; mantissa = ((cptr [1] & 0x7F) << 16) | (cptr [2] << 8) | (cptr [3]) ; if (! (exponent || mantissa)) return 0.0 ; mantissa |= 0x800000 ; exponent = exponent ? exponent - 127 : 0 ; fvalue = mantissa ? ((float) mantissa) / ((float) 0x800000) : 0.0 ; if (negative) fvalue *= -1 ; if (exponent > 0) fvalue *= (1 << exponent) ; else if (exponent < 0) fvalue /= (1 << abs (exponent)) ; return fvalue ; } /* float32_be_read */ float GAVL_PTR_2_FLOAT32LE(const void * p) { int exponent, mantissa, negative ; float fvalue ; const unsigned char *cptr = p; negative = cptr [3] & 0x80 ; exponent = ((cptr [3] & 0x7F) << 1) | ((cptr [2] & 0x80) ? 1 : 0) ; mantissa = ((cptr [2] & 0x7F) << 16) | (cptr [1] << 8) | (cptr [0]) ; if (! (exponent || mantissa)) return 0.0 ; mantissa |= 0x800000 ; exponent = exponent ? exponent - 127 : 0 ; fvalue = mantissa ? ((float) mantissa) / ((float) 0x800000) : 0.0 ; if (negative) fvalue *= -1 ; if (exponent > 0) fvalue *= (1 << exponent) ; else if (exponent < 0) fvalue /= (1 << abs (exponent)) ; return fvalue ; } /* float32_le_read */ double GAVL_PTR_2_DOUBLE64BE(const void * p) { int exponent, negative ; double dvalue ; const unsigned char *cptr = p; negative = (cptr [0] & 0x80) ? 1 : 0 ; exponent = ((cptr [0] & 0x7F) << 4) | ((cptr [1] >> 4) & 0xF) ; /* Might not have a 64 bit long, so load the mantissa into a double. */ dvalue = (((cptr [1] & 0xF) << 24) | (cptr [2] << 16) | (cptr [3] << 8) | cptr [4]) ; dvalue += ((cptr [5] << 16) | (cptr [6] << 8) | cptr [7]) / ((double) 0x1000000) ; if (exponent == 0 && dvalue == 0.0) return 0.0 ; dvalue += 0x10000000 ; exponent = exponent - 0x3FF ; dvalue = dvalue / ((double) 0x10000000) ; if (negative) dvalue *= -1 ; if (exponent > 0) dvalue *= (1 << exponent) ; else if (exponent < 0) dvalue /= (1 << abs (exponent)) ; return dvalue ; } /* double64_be_read */ double GAVL_PTR_2_DOUBLE64LE(const void * p) { int exponent, negative ; double dvalue ; const unsigned char *cptr = p; negative = (cptr [7] & 0x80) ? 1 : 0 ; exponent = ((cptr [7] & 0x7F) << 4) | ((cptr [6] >> 4) & 0xF) ; /* Might not have a 64 bit long, so load the mantissa into a double. */ dvalue = (((cptr [6] & 0xF) << 24) | (cptr [5] << 16) | (cptr [4] << 8) | cptr [3]) ; dvalue += ((cptr [2] << 16) | (cptr [1] << 8) | cptr [0]) / ((double) 0x1000000) ; if (exponent == 0 && dvalue == 0.0) return 0.0 ; dvalue += 0x10000000 ; exponent = exponent - 0x3FF ; dvalue = dvalue / ((double) 0x10000000) ; if (negative) dvalue *= -1 ; if (exponent > 0) dvalue *= (1 << exponent) ; else if (exponent < 0) dvalue /= (1 << abs (exponent)) ; return dvalue ; } /* double64_le_read */ void GAVL_FLOAT32LE_2_PTR(float in, void * p) { int exponent, mantissa, negative = 0 ; unsigned char *out = p; memset (out, 0, sizeof (int)) ; if (in == 0.0) return ; if (in < 0.0) { in *= -1.0 ; negative = 1 ; } ; in = frexp (in, &exponent) ; exponent += 126 ; in *= (float) 0x1000000 ; mantissa = (((int) in) & 0x7FFFFF) ; if (negative) out [3] |= 0x80 ; if (exponent & 0x01) out [2] |= 0x80 ; out [0] = mantissa & 0xFF ; out [1] = (mantissa >> 8) & 0xFF ; out [2] |= (mantissa >> 16) & 0x7F ; out [3] |= (exponent >> 1) & 0x7F ; return ; } /* float32_le_write */ void GAVL_FLOAT32BE_2_PTR(float in, void * p) { int exponent, mantissa, negative = 0 ; unsigned char *out = p; memset (out, 0, sizeof (int)) ; if (in == 0.0) return ; if (in < 0.0) { in *= -1.0 ; negative = 1 ; } ; in = frexp (in, &exponent) ; exponent += 126 ; in *= (float) 0x1000000 ; mantissa = (((int) in) & 0x7FFFFF) ; if (negative) out [0] |= 0x80 ; if (exponent & 0x01) out [1] |= 0x80 ; out [3] = mantissa & 0xFF ; out [2] = (mantissa >> 8) & 0xFF ; out [1] |= (mantissa >> 16) & 0x7F ; out [0] |= (exponent >> 1) & 0x7F ; return ; } /* float32_be_write */ void GAVL_DOUBLE64BE_2_PTR(double in, void * p) { int exponent, mantissa ; unsigned char *out = p; memset (out, 0, sizeof (double)) ; if (in == 0.0) return ; if (in < 0.0) { in *= -1.0 ; out [0] |= 0x80 ; } ; in = frexp (in, &exponent) ; exponent += 1022 ; out [0] |= (exponent >> 4) & 0x7F ; out [1] |= (exponent << 4) & 0xF0 ; in *= 0x20000000 ; mantissa = lrint (floor (in)) ; out [1] |= (mantissa >> 24) & 0xF ; out [2] = (mantissa >> 16) & 0xFF ; out [3] = (mantissa >> 8) & 0xFF ; out [4] = mantissa & 0xFF ; in = fmod (in, 1.0) ; in *= 0x1000000 ; mantissa = lrint (floor (in)) ; out [5] = (mantissa >> 16) & 0xFF ; out [6] = (mantissa >> 8) & 0xFF ; out [7] = mantissa & 0xFF ; return ; } /* double64_be_write */ void GAVL_DOUBLE64LE_2_PTR(double in, void * p) { int exponent, mantissa ; unsigned char *out = p; memset (out, 0, sizeof (double)) ; if (in == 0.0) return ; if (in < 0.0) { in *= -1.0 ; out [7] |= 0x80 ; } ; in = frexp (in, &exponent) ; exponent += 1022 ; out [7] |= (exponent >> 4) & 0x7F ; out [6] |= (exponent << 4) & 0xF0 ; in *= 0x20000000 ; mantissa = lrint (floor (in)) ; out [6] |= (mantissa >> 24) & 0xF ; out [5] = (mantissa >> 16) & 0xFF ; out [4] = (mantissa >> 8) & 0xFF ; out [3] = mantissa & 0xFF ; in = fmod (in, 1.0) ; in *= 0x1000000 ; mantissa = lrint (floor (in)) ; out [2] = (mantissa >> 16) & 0xFF ; out [1] = (mantissa >> 8) & 0xFF ; out [0] = mantissa & 0xFF ; return ; } /* double64_le_write */ bplaum-gavl-b9385e3/gavl/orientation.c000066400000000000000000000264211513252040200177140ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include #include #define LOG_DOMAIN "orientation" static struct { gavl_image_orientation_t orient; int transpose; int flip_h_src; int flip_v_src; const char * label; } orientations[8] = { { GAVL_IMAGE_ORIENT_NORMAL, 0, 0, 0, "Normal (exif: 1)" }, // EXIF: 1 { GAVL_IMAGE_ORIENT_ROT90_CW, 1, 1, 0, "Rotated 90 deg CW (exif: 8)" }, // EXIF: 8 { GAVL_IMAGE_ORIENT_ROT180_CW, 0, 1, 1, "Rotated 180 deg CW (exif: 3)" }, // EXIF: 3 { GAVL_IMAGE_ORIENT_ROT270_CW, 1, 0, 1, "Rotated 270 deg CW (exif: 6)" }, // EXIF: 6 { GAVL_IMAGE_ORIENT_FH, 0, 1, 0, "Mirrored (exif: 2)" }, // EXIF: 2 { GAVL_IMAGE_ORIENT_FH_ROT90_CW, 1, 1, 1, "Mirrored rotated 90 deg CW (exif: 7)" }, // EXIF: 7 { GAVL_IMAGE_ORIENT_FH_ROT180_CW, 0, 0, 1, "Mirrored rotated 180 deg CW (exif: 4)" }, // EXIF: 4 { GAVL_IMAGE_ORIENT_FH_ROT270_CW, 1, 0, 0, "Mirrored rotated 270 deg CW (exif: 5)" }, // EXIF: 5 }; typedef void (*scanline_func_t)(const uint8_t * in, uint8_t * out, int in_advance, int num); static int get_orient_idx(gavl_image_orientation_t orient) { int i; for(i = 0; i < 8; i++) { if(orientations[i].orient == orient) return i; } return -1; } const char * gavl_image_orientation_to_string(gavl_image_orientation_t orient) { int i; for(i = 0; i < 8; i++) { if(orientations[i].orient == orient) return orientations[i].label; } return NULL; } int gavl_image_orientation_is_transposed(gavl_image_orientation_t orient) { int i; for(i = 0; i < 8; i++) { if(orientations[i].orient == orient) return orientations[i].transpose; } return 0; } static void scanline_func_8(const uint8_t * in, uint8_t * out, int in_advance, int num) { int i; for(i = 0; i < num; i++) { *out = *in; in += in_advance; out++; } } static void scanline_func_16(const uint8_t * in, uint8_t * out, int in_advance, int num) { int i; for(i = 0; i < num; i++) { out[0] = in[0]; out[1] = in[1]; in += in_advance; out += 2; } } static void scanline_func_24(const uint8_t * in, uint8_t * out, int in_advance, int num) { int i; for(i = 0; i < num; i++) { out[0] = in[0]; out[1] = in[1]; out[2] = in[2]; in += in_advance; out += 3; } } static void scanline_func_32(const uint8_t * inp, uint8_t * outp, int in_advance, int num) { int i; const uint32_t * in = (uint32_t *)inp; uint32_t * out = (uint32_t *)outp; in_advance /= 4; for(i = 0; i < num; i++) { out[0] = in[0]; in += in_advance; out++; } } static void scanline_func_48(const uint8_t * in, uint8_t * out, int in_advance, int num) { int i; for(i = 0; i < num; i++) { memcpy(out, in, 6); in += in_advance; out+=6; } } static void scanline_func_64(const uint8_t * inp, uint8_t * outp, int in_advance, int num) { int i; const uint64_t * in = (uint64_t *)inp; uint64_t * out = (uint64_t *)outp; in_advance /= 8; for(i = 0; i < num; i++) { out[0] = in[0]; in += in_advance; out++; } } static void scanline_func_floatx3(const uint8_t * inp, uint8_t * outp, int in_advance, int num) { int i; const uint64_t * in = (uint64_t *)inp; uint64_t * out = (uint64_t *)outp; in_advance /= 8; for(i = 0; i < num; i++) { memcpy(out, in, 3*sizeof(float)); in += in_advance; out+=3*sizeof(float); } } static void scanline_func_floatx4(const uint8_t * inp, uint8_t * outp, int in_advance, int num) { int i; const uint64_t * in = (uint64_t *)inp; uint64_t * out = (uint64_t *)outp; in_advance /= 8; for(i = 0; i < num; i++) { memcpy(out, in, 4*sizeof(float)); in += in_advance; out+=4*sizeof(float); } } /* { GAVL_IMAGE_ORIENT_NORMAL, 0, 0, 0 }, // EXIF: 1 { GAVL_IMAGE_ORIENT_ROT90_CW, 1, 1, 0 }, // EXIF: 8 { GAVL_IMAGE_ORIENT_ROT180_CW, 0, 1, 1 }, // EXIF: 3 { GAVL_IMAGE_ORIENT_ROT270_CW, 1, 0, 1 }, // EXIF: 6 { GAVL_IMAGE_ORIENT_FH, 0, 1, 0 }, // EXIF: 2 { GAVL_IMAGE_ORIENT_FH_ROT90_CW, 1, 1, 1 }, // EXIF: 7 { GAVL_IMAGE_ORIENT_FH_ROT180_CW, 0, 0, 1 }, // EXIF: 4 { GAVL_IMAGE_ORIENT_FH_ROT270_CW, 1, 0, 0 }, // EXIF: 5 */ static void normalize_plane(int out_width, int out_height, const gavl_video_frame_t * in_frame, gavl_video_frame_t * out_frame, int plane, int bytes, int idx, scanline_func_t scanline_func) { const uint8_t * in; uint8_t * out; int i; int col_advance; // Byte advance in the SRC image to advance to the next col in the DST image int row_advance; // Byte advance in the SRC image to advance to the next row in the DST image in = in_frame->planes[plane]; out = out_frame->planes[plane]; if(orientations[idx].transpose) { col_advance = in_frame->strides[plane]; row_advance = bytes; if(orientations[idx].flip_h_src) // 7, 8 { in += row_advance * (out_height - 1); row_advance = -row_advance; } if(orientations[idx].flip_v_src) // 6, 7 { in += col_advance * (out_width - 1); col_advance = -col_advance; } } else { row_advance = in_frame->strides[plane]; col_advance = bytes; if(orientations[idx].flip_h_src) // 3, 2 { in += col_advance * (out_width - 1); col_advance = -col_advance; } if(orientations[idx].flip_v_src) { in += row_advance * (out_height - 1); row_advance = -row_advance; } } for(i = 0; i < out_height; i++) { scanline_func(in, out, col_advance, out_width); out += out_frame->strides[plane]; in += row_advance; } } static scanline_func_t get_scanline_func(int bytes) { switch(bytes) { case 1: return scanline_func_8; break; case 2: return scanline_func_16; break; case 3: return scanline_func_24; break; case 4: return scanline_func_32; break; case 6: return scanline_func_48; break; case 8: return scanline_func_64; break; case 3*sizeof(float): return scanline_func_floatx3; break; case 4*sizeof(float): return scanline_func_floatx4; break; } gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "No scanline function for %d bytes found", bytes); return NULL; } void gavl_video_frame_normalize_orientation(const gavl_video_format_t * in_format, const gavl_video_format_t * out_format, const gavl_video_frame_t * in_frame, gavl_video_frame_t * out_frame) { int bytes; scanline_func_t func; int idx = get_orient_idx(in_format->orientation); if(idx < 0) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Invalid image orientation %d", in_format->orientation); return; } if(!gavl_pixelformat_is_planar(in_format->pixelformat)) { bytes = gavl_pixelformat_bytes_per_pixel(in_format->pixelformat); func = get_scanline_func(bytes); normalize_plane(out_format->image_width, out_format->image_height, in_frame, out_frame, 0, bytes, idx, func); } else { int i; int sub_h, sub_v; int out_width, out_height; int num_planes = gavl_pixelformat_num_planes(in_format->pixelformat); out_width = out_format->image_width; out_height = out_format->image_height; bytes = gavl_pixelformat_bytes_per_component(in_format->pixelformat); gavl_pixelformat_chroma_sub(out_format->pixelformat, &sub_h, &sub_v); func = get_scanline_func(bytes); for(i = 0; i < num_planes; i++) { if(i == 1) { out_width /= sub_h; out_height /= sub_v; } normalize_plane(out_width, out_height, in_frame, out_frame, i, bytes, idx, func); } } gavl_video_frame_copy_metadata(out_frame, in_frame); } void gavl_video_format_normalize_orientation(gavl_video_format_t * in_format, gavl_video_format_t * out_format) { int idx = get_orient_idx(in_format->orientation); if(idx < 0) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Invalid image orientation %d", in_format->orientation); return; } switch(in_format->pixelformat) { case GAVL_GRAY_8: case GAVL_GRAY_16: case GAVL_GRAY_FLOAT: case GAVL_GRAYA_16: case GAVL_GRAYA_32: case GAVL_GRAYA_FLOAT: case GAVL_RGB_15: case GAVL_BGR_15: case GAVL_RGB_16: case GAVL_BGR_16: case GAVL_RGB_24: case GAVL_BGR_24: case GAVL_RGB_32: case GAVL_BGR_32: case GAVL_RGBA_32: case GAVL_YUVA_32: case GAVL_YUVA_64: case GAVL_RGB_48: case GAVL_RGBA_64: case GAVL_RGB_FLOAT: case GAVL_RGBA_FLOAT: case GAVL_YUV_FLOAT: case GAVL_YUVA_FLOAT: case GAVL_YUV_444_P: case GAVL_YUV_444_P_16: case GAVL_YUVJ_444_P: case GAVL_YUV_410_P: case GAVL_PIXELFORMAT_NONE: break; case GAVL_YUY2: case GAVL_UYVY: case GAVL_YUV_422_P: case GAVL_YUV_411_P: if(in_format->orientation != GAVL_IMAGE_ORIENT_FH_ROT180_CW) in_format->pixelformat = GAVL_YUV_444_P; break; case GAVL_YUV_422_P_16: if(in_format->orientation != GAVL_IMAGE_ORIENT_FH_ROT180_CW) in_format->pixelformat = GAVL_YUV_444_P_16; break; case GAVL_YUVJ_420_P: if(in_format->chroma_placement != GAVL_CHROMA_PLACEMENT_DEFAULT) in_format->pixelformat = GAVL_YUVJ_444_P; break; case GAVL_YUV_420_P: if(in_format->chroma_placement != GAVL_CHROMA_PLACEMENT_DEFAULT) in_format->pixelformat = GAVL_YUV_444_P; break; case GAVL_YUVJ_422_P: if(in_format->orientation != GAVL_IMAGE_ORIENT_FH_ROT180_CW) in_format->pixelformat = GAVL_YUV_444_P_16; break; } gavl_video_format_copy(out_format, in_format); if(orientations[idx].transpose) { out_format->image_width = in_format->image_height; out_format->image_height = in_format->image_width; out_format->pixel_width = in_format->pixel_height; out_format->pixel_height = in_format->pixel_width; gavl_video_format_set_frame_size(out_format, 0, 0); } out_format->orientation = GAVL_IMAGE_ORIENT_NORMAL; } bplaum-gavl-b9385e3/gavl/packet.c000066400000000000000000000162371513252040200166340ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include #include #include #include #include #include #define LOG_DOMAIN "packet" static void free_extradata(gavl_packet_t * p) { int i; for(i = 0; i < GAVL_PACKET_MAX_EXTRADATA; i++) { if(p->ext_data[i].data) { switch(p->ext_data[i].type) { case GAVL_PACKET_EXTRADATA_PALETTE: gavl_palette_destroy(p->ext_data[i].data); break; default: free(p->ext_data[i].data); break; } } } memset(p->ext_data, 0, sizeof(p->ext_data)); } void gavl_packet_alloc(gavl_packet_t * p, int len) { gavl_buffer_alloc(&p->buf, len + GAVL_PACKET_PADDING); memset(p->buf.buf + len, 0, GAVL_PACKET_PADDING); } void gavl_packet_free(gavl_packet_t * p) { free_extradata(p); gavl_buffer_free(&p->buf); } void gavl_packet_reset(gavl_packet_t * p) { free_extradata(p); gavl_buffer_reset(&p->buf); p->pts = GAVL_TIME_UNDEFINED; p->dts = GAVL_TIME_UNDEFINED; p->pes_pts = GAVL_TIME_UNDEFINED; p->timecode = GAVL_TIMECODE_UNDEFINED; p->duration = -1; p->position = -1; p->flags = 0; p->field2_offset = 0; //!< Offset of field 2 for field pictures p->header_size = 0; //!< Size of a repeated global header (or 0) p->sequence_end_pos = 0; //!< Position of sequence end code if any p->interlace_mode = GAVL_INTERLACE_NONE; //!< Interlace mode for mixed interlacing p->timecode = GAVL_TIMECODE_UNDEFINED; //!< Timecode gavl_rectangle_i_init(&p->src_rect); p->dst_x = 0; p->dst_y = 0; p->id = -1; } void gavl_packet_copy(gavl_packet_t * dst, const gavl_packet_t * src) { int data_alloc_save; uint8_t * data_save; data_alloc_save = dst->buf.alloc; data_save = dst->buf.buf; memcpy(dst, src, sizeof(*src)); dst->buf.alloc = data_alloc_save; dst->buf.buf = data_save; gavl_packet_alloc(dst, src->buf.len); memcpy(dst->buf.buf, src->buf.buf, src->buf.len); } void gavl_packet_copy_metadata(gavl_packet_t * dst, const gavl_packet_t * src) { gavl_buffer_t buf_save; gavl_packet_extradata_t ext_data_save[GAVL_PACKET_MAX_EXTRADATA]; memcpy(&buf_save, &dst->buf, sizeof(buf_save)); memcpy(ext_data_save, &dst->ext_data, sizeof(ext_data_save)); memcpy(dst, src, sizeof(*src)); memcpy(&dst->buf, &buf_save, sizeof(buf_save)); memcpy(&dst->ext_data, ext_data_save, sizeof(ext_data_save)); } static const char * coding_type_strings[4] = { "?", "I", "P", "B" }; void gavl_packet_dump(const gavl_packet_t * p) { gavl_dprintf("pos: %"PRId64" ", p->position); gavl_dprintf("K: %d, ", !!(p->flags & GAVL_PACKET_KEYFRAME)); gavl_dprintf("sz: %d ", p->buf.len); if(p->pts != GAVL_TIME_UNDEFINED) gavl_dprintf("pts: %"PRId64" ", p->pts); else gavl_dprintf("pts: None "); if(p->dts != GAVL_TIME_UNDEFINED) gavl_dprintf("dts: %"PRId64" ", p->dts); else gavl_dprintf("dts: None "); if(p->pes_pts != GAVL_TIME_UNDEFINED) gavl_dprintf("pes_pts: %"PRId64" ", p->pes_pts); else gavl_dprintf("pes_pts: None "); gavl_dprintf("dur: %"PRId64, p->duration); if(p->header_size) gavl_dprintf(", head: %d", p->header_size); if(p->sequence_end_pos) gavl_dprintf(", end: %d", p->sequence_end_pos); if(p->field2_offset) gavl_dprintf(" f2: %d", p->field2_offset); gavl_dprintf(" type: %s ", coding_type_strings[p->flags & GAVL_PACKET_TYPE_MASK]); if(p->flags & GAVL_PACKET_NOOUTPUT) gavl_dprintf(" nooutput"); if(p->flags & GAVL_PACKET_REF) gavl_dprintf(" ref"); if(p->flags & GAVL_PACKET_FIELD_PIC) gavl_dprintf(", field-pic"); if(p->interlace_mode == GAVL_INTERLACE_TOP_FIRST) gavl_dprintf(", il: t"); else if(p->interlace_mode == GAVL_INTERLACE_BOTTOM_FIRST) gavl_dprintf(", il: b"); if(p->src_rect.w && p->src_rect.h) { gavl_dprintf(" src_rect: "); gavl_rectangle_i_dump(&p->src_rect); } if(p->dst_x || p->dst_y) gavl_dprintf(" dst: %d %d", p->dst_x, p->dst_y); gavl_dprintf("\n"); gavl_hexdump(p->buf.buf, p->buf.len < 16 ? p->buf.len : 16, 16); } void gavl_packet_save(const gavl_packet_t * p, const char * filename) { FILE * out = fopen(filename, "wb"); fwrite(p->buf.buf, 1, p->buf.len, out); fclose(out); } void gavl_packet_init(gavl_packet_t * p) { memset(p, 0, sizeof(*p)); p->buf_idx = -1; gavl_packet_reset(p); } gavl_packet_t * gavl_packet_create() { gavl_packet_t * ret; ret = calloc(1, sizeof(*ret)); gavl_packet_init(ret); return ret; } void gavl_packet_destroy(gavl_packet_t * p) { gavl_packet_free(p); free(p); } void * gavl_packet_add_extradata(gavl_packet_t * p, gavl_packet_extradata_type_t type) { void * ret; int i; gavl_packet_extradata_t * d = NULL; if(type == GAVL_PACKET_EXTRADATA_NONE) { gavl_log(GAVL_LOG_WARNING, LOG_DOMAIN, "Cannot add extradata of type None"); return NULL; } if((ret = gavl_packet_get_extradata(p, type))) { gavl_log(GAVL_LOG_WARNING, LOG_DOMAIN, "Packet already has extradata of type %d", type); return ret; } for(i = 0; i < GAVL_PACKET_MAX_EXTRADATA; i++) { if(p->ext_data[i].type == GAVL_PACKET_EXTRADATA_NONE) d = &p->ext_data[i]; } if(!d) { gavl_log(GAVL_LOG_WARNING, LOG_DOMAIN, "Cannot add packet extradata: No free slot"); return NULL; } d->type = type; switch(type) { case GAVL_PACKET_EXTRADATA_PALETTE: d->data = gavl_palette_create(); break; case GAVL_PACKET_EXTRADATA_FDS: d->data = calloc(1, sizeof(gavl_packet_fds_t)); break; case GAVL_PACKET_EXTRADATA_NONE: break; } return d->data; } void * gavl_packet_get_extradata(gavl_packet_t * p, gavl_packet_extradata_type_t type) { int i; for(i = 0; i < GAVL_PACKET_MAX_EXTRADATA; i++) { if(p->ext_data[i].type == type) return p->ext_data[i].data; } return NULL; } void gavl_packet_merge_field2(gavl_packet_t * p, const gavl_packet_t * field2) { p->field2_offset = p->buf.len; gavl_buffer_append_pad(&p->buf, &field2->buf, GAVL_PACKET_PADDING); p->flags &= ~GAVL_PACKET_FIELD_PIC; } bplaum-gavl-b9385e3/gavl/packetbuffer.c000066400000000000000000000530071513252040200200220ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include // #include #include #include #include #include #include #define LOG_DOMAIN "packetbuffer" #define FLAG_FLUSH (1<<0) #define FLAG_GOT_CI (1<<1) #define FLAG_NON_CONTINUOUS (1<<2) #define FLAG_MARK_LAST (1<<3) #define FLAG_CALC_FRAME_DURATIONS (1<<4) // #define DUMP_IN_PACKETS // #define DUMP_OUT_PACKETS // #define DUMP_PACKET_MASK (GAVL_STREAM_AUDIO) // #define DUMP_PACKET_MASK (GAVL_STREAM_VIDEO) // #define DUMP_PACKET_MASK (GAVL_STREAM_TEXT) // #define DUMP_PACKET_MASK (GAVL_STREAM_VIDEO|GAVL_STREAM_AUDIO) // #define COUNT_PACKETS // #define MAX_PACKETS 200 typedef struct { gavl_packet_t ** packets; int num; int alloc; } buf_t; /* Get first packet (fifo) */ static gavl_packet_t * buf_shift(buf_t * buf) { gavl_packet_t * ret = NULL; if(!buf->num) return NULL; ret = buf->packets[0]; buf->num--; if(buf->num) { memmove(buf->packets, buf->packets+1, buf->num * sizeof(*buf->packets)); buf->packets[buf->num] = NULL; } else buf->packets[0] = NULL; return ret; } static void buf_push(buf_t * buf, gavl_packet_t ** p) { if(buf->num == buf->alloc) { buf->alloc += 32; buf->packets = realloc(buf->packets, buf->alloc * sizeof(*buf->packets)); memset(buf->packets + buf->num, 0, (buf->alloc - buf->num) * sizeof(*buf->packets) ); } buf->packets[buf->num] = *p; *p = NULL; buf->num++; } /* Get last packet (pool), return NULL if the pool is empty */ static gavl_packet_t * buf_pop(buf_t * buf) { gavl_packet_t * ret; if(!buf->num) return NULL; buf->num--; ret = buf->packets[buf->num]; buf->packets[buf->num] = NULL; return ret; } static void buf_free(buf_t * buf) { int i; for(i = 0; i < buf->num; i++) gavl_packet_destroy(buf->packets[i]); if(buf->packets) free(buf->packets); } struct gavl_packet_buffer_s { gavl_packet_sink_t * sink; gavl_packet_source_t * src; /* Valid packets */ buf_t buf; // Packet queue buf_t pool; // Unused packets /* Kept here to prevent overwriting */ gavl_packet_t * out_packet; gavl_packet_t * in_packet; int64_t last_duration; int64_t pts; int64_t max_pts; const gavl_dictionary_t * stream; gavl_compression_info_t ci; int packet_scale; int sample_scale; gavl_stream_type_t type; int continuous; int flags; int ip_frames_seen; int keyframes_seen; int duration_divisor; #ifdef COUNT_PACKETS int in_count; int out_count; #endif }; #if 1 static void dump_quit(gavl_packet_buffer_t * buf) { int i; for(i = 0; i < buf->buf.num; i++) { fprintf(stderr, "packet %d ", i); if(buf->buf.packets[i]) gavl_packet_dump(buf->buf.packets[i]); else fprintf(stderr, "NULL\n"); } abort(); } #endif /* Sink functions */ static gavl_packet_t * sink_get_func(void * priv) { gavl_packet_buffer_t * buf = priv; if(buf->in_packet) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Called gavl_packet_sink_get_packet twice for %s buffer", gavl_stream_type_name(buf->type)); dump_quit(buf); return NULL; } if(!(buf->in_packet = buf_pop(&buf->pool))) buf->in_packet = gavl_packet_create(); return buf->in_packet; } /* The following functions are, where pretty much of the A/V synchronization in the whole gmerlin architecture is done */ static void pts_from_duration(gavl_packet_buffer_t * buf, gavl_packet_t * p) { /* Initialize first timestamp */ if(buf->pts == GAVL_TIME_UNDEFINED) { if(p->pes_pts != GAVL_TIME_UNDEFINED) buf->pts = gavl_time_rescale(buf->packet_scale, buf->sample_scale, p->pes_pts); else buf->pts = 0; // fprintf(stderr, "Buffer resync: %"PRId64"\n", gavl_time_unscale(buf->sample_scale, buf->pts)); } p->pts = buf->pts; buf->pts += p->duration; } static void duration_from_pts(gavl_packet_buffer_t * buf, gavl_packet_t * p, gavl_packet_t * next) { if(next) { p->duration = next->pts - p->pts; buf->last_duration = p->duration; } else p->duration = buf->last_duration; } static void update_timestamps_low_delay(gavl_packet_buffer_t * buf) { int i; /* PTS from DTS */ for(i = buf->buf.num - 1; i >= 0; i--) { if((buf->buf.packets[i]->pts == GAVL_TIME_UNDEFINED) && (buf->buf.packets[i]->dts != GAVL_TIME_UNDEFINED)) buf->buf.packets[i]->pts = buf->buf.packets[i]->dts; else break; } /* Duration from PTS */ if(buf->flags & FLAG_CALC_FRAME_DURATIONS) { for(i = buf->buf.num - 2; i >= 0; i--) { if((buf->buf.packets[i]->duration < 0) && (buf->buf.packets[i]->pts != GAVL_TIME_UNDEFINED) & (buf->buf.packets[i+1]->pts != GAVL_TIME_UNDEFINED)) duration_from_pts(buf, buf->buf.packets[i], buf->buf.packets[i+1]); else break; } if(buf->flags & FLAG_FLUSH) duration_from_pts(buf, buf->buf.packets[buf->buf.num-1], NULL); } /* Duration from PES PTS */ if((buf->duration_divisor > 0) && (buf->buf.packets[buf->buf.num-1]->pts == GAVL_TIME_UNDEFINED) && (buf->buf.packets[buf->buf.num-1]->duration < 0) && (buf->buf.packets[buf->buf.num-1]->pes_pts != GAVL_TIME_UNDEFINED)) { for(i = 0; i < buf->buf.num-1; i++) { int frames_per_packet; int approx_samples; if(buf->buf.packets[i]->duration > 0) continue; approx_samples = gavl_time_rescale(buf->packet_scale, buf->sample_scale, buf->buf.packets[i+1]->pes_pts - buf->buf.packets[i]->pes_pts); frames_per_packet = (approx_samples + buf->duration_divisor/2) / buf->duration_divisor; buf->buf.packets[i]->duration = frames_per_packet * buf->duration_divisor; buf->last_duration = buf->buf.packets[i]->duration; if(buf->buf.packets[i]->pts == GAVL_TIME_UNDEFINED) pts_from_duration(buf, buf->buf.packets[i]); } if(buf->flags & FLAG_FLUSH) { buf->buf.packets[buf->buf.num-1]->duration = buf->last_duration; if(buf->buf.packets[buf->buf.num-1]->pts == GAVL_TIME_UNDEFINED) pts_from_duration(buf, buf->buf.packets[buf->buf.num-1]); } } /* PTS from duration */ if((buf->buf.packets[buf->buf.num-1]->pts == GAVL_TIME_UNDEFINED) && (buf->buf.packets[buf->buf.num-1]->duration >= 0)) { for(i = 0; i < buf->buf.num; i++) { if(buf->buf.packets[i]->pts != GAVL_TIME_UNDEFINED) continue; pts_from_duration(buf, buf->buf.packets[i]); } } } static int get_next_ip_idx(gavl_packet_buffer_t * buf, int idx) { int i; for(i = idx; i < buf->buf.num; i++) { if((buf->buf.packets[i]->flags & GAVL_PACKET_TYPE_MASK) != GAVL_PACKET_TYPE_B) return i; } return -1; } static void pts_from_duration_b_frames(gavl_packet_buffer_t * buf) { int i; int ip1 = -1; int ip2 = -1; if((ip1 = get_next_ip_idx(buf, 0)) < 0) return; while(1) { if((ip2 = get_next_ip_idx(buf, ip1 + 1)) < 0) { if(buf->flags & FLAG_FLUSH) ip2 = buf->buf.num; else break; } if(buf->buf.packets[ip1]->pts == GAVL_TIME_UNDEFINED) { /* * PBBP -> P * or * IPBB -> PBB */ for(i = ip1+1; i < ip2; i++) pts_from_duration(buf, buf->buf.packets[i]); pts_from_duration(buf, buf->buf.packets[ip1]); } if(ip2 == buf->buf.num) break; ip1 = ip2; } } /* TODO: Get duration from PTS for a stream with B-frames */ static int get_next_by_pts(gavl_packet_buffer_t * buf, int64_t pts, int start, int end) { int ret = -1; int i; if(end < 0) end = buf->buf.num; for(i = start; i < end; i++) { if(buf->buf.packets[i]->pts <= pts) continue; if((ret == -1) || (buf->buf.packets[i]->pts < buf->buf.packets[ret]->pts)) ret = i; } return ret; } static void duration_from_pts_b_frames(gavl_packet_buffer_t * buf) { int ip1 = -1; int ip2 = -1; int ip3 = -1; int next_idx; int i; /* Get remaining durations with a brute force method */ if(buf->flags & FLAG_FLUSH) { int last_idx = 0; int64_t duration = 0; for(i = 0; i < buf->buf.num; i++) { if(buf->buf.packets[i]->duration > 0) continue; next_idx = get_next_by_pts(buf, buf->buf.packets[i]->pts, 0, -1); if(next_idx < 0) last_idx = i; else duration = buf->buf.packets[next_idx]->pts - buf->buf.packets[i]->pts; } buf->buf.packets[last_idx]->duration = duration; return; } /* Get the first non B-frame with no duration */ ip1 = get_next_ip_idx(buf, 0); if(ip1 < 0) return; // Shouldn't happen actually while(buf->buf.packets[ip1]->duration > 0) { ip1 = get_next_ip_idx(buf, ip1+1); if(ip1 < 0) return; // Nothing to do } if((ip2 = get_next_ip_idx(buf, ip1 + 1)) < 0) return; // Nothing to do if((ip3 = get_next_ip_idx(buf, ip2 + 1)) < 0) return; // Nothing to do for(i = ip1; i < ip2; i++) { if(buf->buf.packets[i]->duration > 0) continue; next_idx = get_next_by_pts(buf, buf->buf.packets[i]->pts, ip1+1, ip3); if(next_idx < 0) fprintf(stderr, "Buuuug\n"); else buf->buf.packets[i]->duration = buf->buf.packets[next_idx]->pts - buf->buf.packets[i]->pts; } } static void update_timestamps_b_frames(gavl_packet_buffer_t * buf) { int i; /* Duration from dts */ if((buf->buf.packets[buf->buf.num-1]->pts == GAVL_TIME_UNDEFINED) && (buf->buf.packets[buf->buf.num-1]->dts != GAVL_TIME_UNDEFINED) && (buf->buf.packets[buf->buf.num-1]->duration <= 0)) { for(i = buf->buf.num - 2; i >= 0; i--) { if((buf->buf.packets[i]->duration <= 0) && (buf->buf.packets[i]->dts != GAVL_TIME_UNDEFINED) & (buf->buf.packets[i+1]->dts != GAVL_TIME_UNDEFINED)) buf->buf.packets[i]->duration = buf->buf.packets[i+1]->dts - buf->buf.packets[i]->dts; else break; } } /* PTS from frame type and duration */ if((buf->buf.num >= 2) && (buf->buf.packets[buf->buf.num-1]->pts == GAVL_TIME_UNDEFINED) && (buf->buf.packets[buf->buf.num-2]->duration > 0)) { pts_from_duration_b_frames(buf); } /* Duration from PTS */ if((buf->flags & FLAG_CALC_FRAME_DURATIONS) && (buf->buf.packets[buf->buf.num-1]->duration < 0)) { duration_from_pts_b_frames(buf); } } static void update_timestamps(gavl_packet_buffer_t * buf) { if(buf->buf.num < 1) return; /* Check if this is necessary at all */ if((buf->buf.packets[buf->buf.num-1]->pts != GAVL_TIME_UNDEFINED) && (!(buf->flags & FLAG_CALC_FRAME_DURATIONS) || (buf->buf.packets[buf->buf.num-1]->duration > 0))) return; /* Duration from DTS */ if((buf->buf.num > 1) && (buf->buf.packets[buf->buf.num-2]->duration <= 0) && (buf->buf.packets[buf->buf.num-2]->dts != GAVL_TIME_UNDEFINED) && (buf->buf.packets[buf->buf.num-1]->dts != GAVL_TIME_UNDEFINED)) { buf->buf.packets[buf->buf.num-2]->duration = buf->buf.packets[buf->buf.num-1]->dts - buf->buf.packets[buf->buf.num-2]->dts; if(buf->flags & FLAG_FLUSH) buf->buf.packets[buf->buf.num-1]->duration = buf->buf.packets[buf->buf.num-2]->duration; } if(buf->ci.flags & GAVL_COMPRESSION_HAS_B_FRAMES) update_timestamps_b_frames(buf); else update_timestamps_low_delay(buf); } static gavl_sink_status_t sink_put_func(void * priv, gavl_packet_t * p) { gavl_packet_buffer_t * buf = priv; if(!p) { buf_push(&buf->pool, &buf->in_packet); return GAVL_SINK_OK; } if(!p->buf.len) gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Packet has zero length"); if(buf->in_packet != p) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Something went wrong: in_packet != p"); return GAVL_SINK_OK; // Skip } /* Discard skip packet */ if(p->flags & GAVL_PACKET_SKIP) { buf_push(&buf->pool, &buf->in_packet); return GAVL_SINK_OK; // Skip } #ifdef MAX_PACKETS if(buf->buf.num >= MAX_PACKETS) { fprintf(stderr, "Exceeded max packets: %d\n", buf->buf.num); dump_quit(buf); } #endif /* Get compression info */ if(!(buf->flags & FLAG_GOT_CI)) { const gavl_dictionary_t * m = gavl_stream_get_metadata(buf->stream); // fprintf(stderr, "Getting compression info:"); // gavl_dictionary_dump(buf->stream, 2); gavl_dictionary_get_int(m, GAVL_META_STREAM_PACKET_TIMESCALE, &buf->packet_scale); gavl_dictionary_get_int(m, GAVL_META_STREAM_SAMPLE_TIMESCALE, &buf->sample_scale); if(gavl_dictionary_get_int(m, GAVL_META_STREAM_PACKET_DURATION_DIVISOR, &buf->duration_divisor)) gavl_log(GAVL_LOG_INFO, LOG_DOMAIN, "Got duration divisor %d", buf->duration_divisor); else buf->duration_divisor = 0; gavl_stream_get_compression_info(buf->stream, &buf->ci); if(!gavl_stream_is_continuous(buf->stream)) buf->flags |= FLAG_NON_CONTINUOUS; buf->flags |= FLAG_GOT_CI; } /* Skip packets before first keyframe */ if(buf->ci.flags & GAVL_COMPRESSION_HAS_P_FRAMES) { if(p->flags & GAVL_PACKET_KEYFRAME) buf->keyframes_seen++; else if(!buf->keyframes_seen) // Non keyframe { #if 1 /* Else: Skip, but allow synchronizing a low delay stream */ /* This can be the case for e.g. for Ogg theora files, when a keyframe is not at the start of a page */ if(!(buf->ci.flags & GAVL_COMPRESSION_HAS_B_FRAMES)) { if((buf->pts == GAVL_TIME_UNDEFINED) && (p->pes_pts != GAVL_TIME_UNDEFINED)) { buf->pts = gavl_time_rescale(buf->packet_scale, buf->sample_scale, p->pes_pts); } if((buf->pts != GAVL_TIME_UNDEFINED) && (p->duration > 0)) buf->pts += p->duration; } #endif buf_push(&buf->pool, &buf->in_packet); return GAVL_SINK_OK; } } /* Merge field pictures */ if((p->flags & GAVL_PACKET_FIELD_PIC) && (buf->buf.num >= 1) && (buf->buf.packets[buf->buf.num-1]->flags & GAVL_PACKET_FIELD_PIC)) { gavl_packet_merge_field2(buf->buf.packets[buf->buf.num-1], p); buf_push(&buf->pool, &buf->in_packet); // fprintf(stderr, "Merged field pic\n"); return GAVL_SINK_OK; } /* Detect frame type from PTS */ if((buf->ci.flags & GAVL_COMPRESSION_HAS_P_FRAMES) && !(p->flags & GAVL_PACKET_TYPE_MASK) && (p->pts != GAVL_TIME_UNDEFINED)) { if(p->flags & GAVL_PACKET_KEYFRAME) { p->flags |= GAVL_PACKET_TYPE_I; buf->max_pts = p->pts; } else { if((buf->max_pts == GAVL_TIME_UNDEFINED) || (buf->max_pts < p->pts)) { buf->max_pts = p->pts; p->flags |= GAVL_PACKET_TYPE_P; } else p->flags |= GAVL_PACKET_TYPE_B; } } /* Skip undecodeable B-Frames from open GOPs */ if(buf->ci.flags & GAVL_COMPRESSION_HAS_B_FRAMES) { if((p->flags & GAVL_PACKET_TYPE_MASK) == GAVL_PACKET_TYPE_B) { /* Else: Skip */ if(buf->ip_frames_seen < 2) { buf_push(&buf->pool, &buf->in_packet); return GAVL_SINK_OK; } } else /* I/P frame */ buf->ip_frames_seen++; } /* Append packet to buffer */ #ifdef DUMP_IN_PACKETS if(buf->type & DUMP_PACKET_MASK) { gavl_dprintf("Buf in %p ", p); gavl_packet_dump(p); } #endif #ifdef COUNT_PACKETS buf->in_count++; #endif if(!buf->in_packet->buf.len) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Added zero size packet"); gavl_packet_dump(p); } buf_push(&buf->buf, &buf->in_packet); // fprintf(stderr, "put_func: %p %d\n", buf, buf->buf.num); if((p->pts != GAVL_TIME_UNDEFINED) && (!(buf->flags & FLAG_CALC_FRAME_DURATIONS) || (p->duration >= 0))) return GAVL_SINK_OK; // else // No P-frames // buf->valid_packets++; update_timestamps(buf); return GAVL_SINK_OK; } static gavl_source_status_t source_func(void * priv, gavl_packet_t ** p) { gavl_packet_buffer_t * buf = priv; // fprintf(stderr, "source_func: %p %d\n", buf, buf->buf.num); if(buf->out_packet) { buf_push(&buf->pool, &buf->out_packet); } if(!buf->buf.num) { if(buf->flags & FLAG_FLUSH) return GAVL_SOURCE_EOF; else return GAVL_SOURCE_AGAIN; } /* * If we have to mark the last packet, we need at least 2 packets in the buffer * if we are not flushing */ if((buf->buf.num == 1) && ((buf->flags & (FLAG_MARK_LAST|FLAG_FLUSH)) == FLAG_MARK_LAST)) return GAVL_SOURCE_AGAIN; /* * Field pictures need to be merged */ if(buf->buf.packets[0]->flags & GAVL_PACKET_FIELD_PIC) return GAVL_SOURCE_AGAIN; // Wait for next field if(!(buf->flags & FLAG_NON_CONTINUOUS)) // If stream is continuous... { if((buf->buf.packets[0]->pts == GAVL_TIME_UNDEFINED) || ((buf->buf.packets[0]->duration < 0) && (buf->flags & FLAG_CALC_FRAME_DURATIONS))) return GAVL_SOURCE_AGAIN; } buf->out_packet = buf_shift(&buf->buf); #ifdef DUMP_OUT_PACKETS if(buf->type & DUMP_PACKET_MASK) { if(!buf->out_packet) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Outputting zero packet"); dump_quit(buf); } else { gavl_dprintf("Buf out %p ", buf->out_packet); gavl_packet_dump(buf->out_packet); } } #endif *p = buf->out_packet; #ifdef COUNT_PACKETS buf->out_count++; #endif return GAVL_SOURCE_OK; } void gavl_packet_buffer_flush(gavl_packet_buffer_t * buf) { // fprintf(stderr, "gavl_packet_buffer_flush\n"); buf->flags |= FLAG_FLUSH; if(buf->buf.num > 0) { if(buf->flags & FLAG_MARK_LAST) buf->buf.packets[buf->buf.num-1]->flags |= GAVL_PACKET_LAST; } update_timestamps(buf); } void gavl_packet_buffer_clear(gavl_packet_buffer_t * buf) { gavl_packet_t * p; while((p = buf_pop(&buf->buf))) buf_push(&buf->pool, &p); if(buf->in_packet) buf_push(&buf->pool, &buf->in_packet); if(buf->out_packet) buf_push(&buf->pool, &buf->out_packet); buf->flags &= ~FLAG_FLUSH; buf->last_duration = -1; buf->pts = GAVL_TIME_UNDEFINED; buf->max_pts = GAVL_TIME_UNDEFINED; buf->ip_frames_seen = 0; buf->keyframes_seen = 0; gavl_packet_source_reset(buf->src); gavl_packet_sink_reset(buf->sink); // fprintf(stderr, "gavl_packet_buffer_clear %d %d\n", buf->packet_scale, buf->sample_scale); } void gavl_packet_buffer_set_out_pts(gavl_packet_buffer_t * buf, int64_t pts) { buf->pts = pts; } gavl_packet_buffer_t * gavl_packet_buffer_create(const gavl_dictionary_t * stream_info) { int val_i = 0; gavl_packet_buffer_t * ret; ret = calloc(1, sizeof(*ret)); ret->stream = stream_info; ret->src = gavl_packet_source_create(source_func, ret, GAVL_SOURCE_SRC_ALLOC, ret->stream); ret->sink = gavl_packet_sink_create(sink_get_func, sink_put_func, ret); gavl_dictionary_get_int(ret->stream, GAVL_META_STREAM_TYPE, &val_i); ret->type = val_i; ret->last_duration = -1; ret->pts = GAVL_TIME_UNDEFINED; return ret; } void gavl_packet_buffer_destroy(gavl_packet_buffer_t * b) { #ifdef COUNT_PACKETS gavl_dprintf("packets in: %d\npackets out: %d\n", b->in_count, b->out_count); if(b->out_count < b->in_count) { int i; gavl_dprintf("Packets in buffer: %d\n", b->valid_packets); for(i = 0; i < b->valid_packets; i++) gavl_packet_dump(b->packets[i]); } #endif if(b->src) gavl_packet_source_destroy(b->src); if(b->sink) gavl_packet_sink_destroy(b->sink); if(b->in_packet) gavl_packet_destroy(b->in_packet); if(b->out_packet) gavl_packet_destroy(b->out_packet); buf_free(&b->buf); buf_free(&b->pool); gavl_compression_info_free(&b->ci); free(b); } gavl_packet_sink_t * gavl_packet_buffer_get_sink(gavl_packet_buffer_t * b) { return b->sink; } gavl_packet_source_t * gavl_packet_buffer_get_source(gavl_packet_buffer_t * b) { return b->src; } void gavl_packet_buffer_set_mark_last(gavl_packet_buffer_t * buf, int mark) { if(mark) buf->flags |= FLAG_MARK_LAST; else buf->flags &= ~FLAG_MARK_LAST; } void gavl_packet_buffer_set_calc_frame_durations(gavl_packet_buffer_t * buf, int calc) { if(calc) buf->flags |= FLAG_CALC_FRAME_DURATIONS; else buf->flags &= ~FLAG_CALC_FRAME_DURATIONS; } bplaum-gavl-b9385e3/gavl/packetconnector.c000066400000000000000000000072611513252040200205440ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include #include typedef struct { gavl_packet_t * p; gavl_packet_sink_t * sink; } sink_t; struct gavl_packet_connector_s { gavl_packet_source_t * src; int have_in_packet; gavl_packet_t * in_packet; sink_t * sinks; int num_sinks; int sinks_alloc; gavl_packet_connector_process_func process_func; void * process_priv; gavl_source_status_t src_st; }; gavl_packet_connector_t * gavl_packet_connector_create(gavl_packet_source_t * src) { gavl_packet_connector_t * ret = calloc(1, sizeof(*ret)); ret->src = src; return ret; } void gavl_packet_connector_destroy(gavl_packet_connector_t * c) { if(c->sinks) free(c->sinks); free(c); } void gavl_packet_connector_connect(gavl_packet_connector_t * c, gavl_packet_sink_t * sink) { sink_t * s; if(c->num_sinks + 1 > c->sinks_alloc) { c->sinks_alloc += 8; c->sinks = realloc(c->sinks, c->sinks_alloc * sizeof(*c->sinks)); memset(c->sinks + c->num_sinks, 0, (c->sinks_alloc - c->num_sinks) * sizeof(*c->sinks)); } s = c->sinks + c->num_sinks; s->sink = sink; c->num_sinks++; } void gavl_packet_connector_set_process_func(gavl_packet_connector_t * c, gavl_packet_connector_process_func func, void * priv) { c->process_func = func; c->process_priv = priv; } int gavl_packet_connector_process(gavl_packet_connector_t * c) { gavl_sink_status_t sink_st; int i; sink_t * s; if(!c->have_in_packet) { c->in_packet = NULL; /* Obtain buffer for input packet */ for(i = 0; i < c->num_sinks; i++) { s = c->sinks + i; /* Passthrough */ s->p = gavl_packet_sink_get_packet(s->sink); if(!c->in_packet) c->in_packet = s->p; } c->have_in_packet = 1; } /* Get input frame */ c->src_st = gavl_packet_source_read_packet(c->src, &c->in_packet); switch(c->src_st) { case GAVL_SOURCE_OK: break; case GAVL_SOURCE_AGAIN: return 1; break; case GAVL_SOURCE_EOF: return 0; } if(c->process_func) c->process_func(c->process_priv, c->in_packet); for(i = 0; i < c->num_sinks; i++) { s = c->sinks + i; if(!s->p) sink_st = gavl_packet_sink_put_packet(s->sink, c->in_packet); else { if(s->p != c->in_packet) gavl_packet_copy(s->p, c->in_packet); sink_st = gavl_packet_sink_put_packet(s->sink, s->p); } if(sink_st != GAVL_SINK_OK) return 0; } c->have_in_packet = 0; return 1; } gavl_source_status_t gavl_packet_connector_get_source_status(gavl_packet_connector_t * c) { return c->src_st; } bplaum-gavl-b9385e3/gavl/packetindex.c000066400000000000000000000265671513252040200176730ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include #include #include #include #include #define NUM_ALLOC 1024 #include #define LOG_DOMAIN "packetindex" gavl_packet_index_t * gavl_packet_index_create(int size) { gavl_packet_index_t * ret; ret = calloc(1, sizeof(*ret)); if(size) { ret->entries_alloc = size; ret->entries = calloc(ret->entries_alloc, sizeof(*(ret->entries))); } return ret; } void gavl_packet_index_set_size(gavl_packet_index_t * ret, int size) { if(size > ret->entries_alloc) { ret->entries_alloc = size; ret->entries = realloc(ret->entries, ret->entries_alloc * sizeof(*(ret->entries))); memset(ret->entries + ret->num_entries, 0, sizeof(*ret->entries) * (ret->entries_alloc - ret->num_entries)); } ret->num_entries = size; } void gavl_packet_index_destroy(gavl_packet_index_t * idx) { if(idx->entries) free(idx->entries); free(idx); } void gavl_packet_index_add(gavl_packet_index_t * idx, int64_t position, uint32_t size, int stream_id, int64_t timestamp, int flags, int duration) { /* Realloc */ if(idx->num_entries >= idx->entries_alloc) { idx->entries_alloc += NUM_ALLOC; idx->entries = realloc(idx->entries, idx->entries_alloc * sizeof(*idx->entries)); memset(idx->entries + idx->num_entries, 0, NUM_ALLOC * sizeof(*idx->entries)); } /* Set fields */ idx->entries[idx->num_entries].position = position; idx->entries[idx->num_entries].size = size; idx->entries[idx->num_entries].stream_id = stream_id; idx->entries[idx->num_entries].pts = timestamp; idx->entries[idx->num_entries].flags = flags; idx->entries[idx->num_entries].duration = duration; idx->num_entries++; } void gavl_packet_index_add_packet(gavl_packet_index_t * idx, const gavl_packet_t * p) { // fprintf(stderr, "gavl_packet_index_add_packet\n"); // gavl_packet_dump(p); gavl_packet_index_add(idx, p->position, p->buf.len, p->id, p->pts, p->flags, p->duration); } void gavl_packet_index_dump(gavl_packet_index_t * idx) { int i; gavl_dprintf( "packet index %d entries:\n", idx->num_entries); for(i = 0; i < idx->num_entries; i++) { gavl_dprintf( " No: %6d ID: %d K: %d O: %" PRId64 " T: %" PRId64 " D: %"PRId64" S: %6d PT: %s\n", i, idx->entries[i].stream_id, !!(idx->entries[i].flags & GAVL_PACKET_KEYFRAME), idx->entries[i].position, idx->entries[i].pts, idx->entries[i].duration, idx->entries[i].size, gavl_coding_type_to_string(idx->entries[i].flags)); } } void gavl_packet_index_clear(gavl_packet_index_t * si) { si->num_entries = 0; si->flags = 0; memset(si->entries, 0, sizeof(*si->entries) * si->entries_alloc); } int gavl_packet_index_get_first(gavl_packet_index_t * idx, int stream) { int i = 0; while(i < idx->num_entries) { if(idx->entries[i].stream_id == stream) return i; i++; } return -1; } int gavl_packet_index_get_last(gavl_packet_index_t * idx, int stream) { int i = idx->num_entries-1; while(i >= 0) { if(idx->entries[i].stream_id == stream) return i; i--; } return -1; } void gavl_packet_index_set_stream_stats(gavl_packet_index_t * idx, int stream_id, gavl_stream_stats_t * stats) { int i; gavl_stream_stats_init(stats); for(i = 0; i < idx->num_entries; i++) { if(idx->entries[i].stream_id != stream_id) continue; gavl_stream_stats_update_params(stats, idx->entries[i].pts, idx->entries[i].duration, idx->entries[i].size, idx->entries[i].flags & 0xFFFF); } } /* Sort index by file position */ void gavl_packet_index_sort_by_position(gavl_packet_index_t * idx) { int i, n; int swapped; uint8_t swp[sizeof(*idx->entries)]; #define SWAP(j) \ memcpy(swp, idx->entries + j, sizeof(*idx->entries)); \ memcpy(idx->entries + j, idx->entries + (j+1), sizeof(*idx->entries)); \ memcpy(idx->entries + (j+1), swp, sizeof(*idx->entries)); n = idx->num_entries; do{ swapped = 0; for(i = 0; i < n-1; i++) { if(idx->entries[i].position > idx->entries[i+1].position) { SWAP(i); swapped = 1; } } } while(swapped); } void gavl_packet_index_sort_by_pts(gavl_packet_index_t * idx) { int i, n; int swapped; uint8_t swp[sizeof(idx->entries[0])]; #define SWAP(j) \ memcpy(swp, idx->entries + j, sizeof(*idx->entries)); \ memcpy(idx->entries + j, idx->entries + (j+1), sizeof(*idx->entries)); \ memcpy(idx->entries + (j+1), swp, sizeof(*idx->entries)); n = idx->num_entries; do{ swapped = 0; for(i = 0; i < n-1; i++) { if(idx->entries[i].pts > idx->entries[i+1].pts) { SWAP(i); swapped = 1; } } n--; } while(swapped); } void gavl_packet_index_extract_stream(const gavl_packet_index_t * src, gavl_packet_index_t * dst, int stream_id) { int i, idx; /* 1. Count entries */ idx = 0; for(i = 0; i < src->num_entries; i++) { if(src->entries[i].stream_id == stream_id) idx++; } /* 2. Alloc destination */ gavl_packet_index_set_size(dst, idx); /* 3. Copy entries */ idx = 0; for(i = 0; i < src->num_entries; i++) { if(src->entries[i].stream_id == stream_id) { memcpy(&dst->entries[idx], &src->entries[i], sizeof(src->entries[i])); idx++; } } } int gavl_packet_index_seek(const gavl_packet_index_t * idx, int stream_id, int64_t pts) { int i = idx->num_entries - 1; while(i >= 0) { if((idx->entries[i].stream_id == stream_id) && (idx->entries[i].pts <= pts)) break; i--; } if(i < 0) return -1; while((i > 0) && (idx->entries[i-1].position == idx->entries[i].position)) i--; return i; } int gavl_packet_index_get_keyframe_before(const gavl_packet_index_t * idx, int stream_id, int pos) { while(pos >= 0) { if((idx->entries[pos].stream_id == stream_id) && (idx->entries[pos].flags & GAVL_PACKET_KEYFRAME)) return pos; pos--; } return -1; } int gavl_packet_index_get_next_keyframe(const gavl_packet_index_t * idx, int stream_id, int pos) { while(pos < idx->num_entries) { if((idx->entries[pos].stream_id == stream_id) && (idx->entries[pos].flags & GAVL_PACKET_KEYFRAME)) return pos; pos++; } return -1; } int gavl_packet_index_get_next_packet(const gavl_packet_index_t * idx, int stream_id, int pos) { while(pos < idx->num_entries) { if(idx->entries[pos].stream_id == stream_id) return pos; pos++; } return -1; } int gavl_packet_index_get_previous_packet(const gavl_packet_index_t * idx, int stream_id, int pos) { if(pos < 0) pos = idx->num_entries-1; while(pos > idx->num_entries) { if(idx->entries[pos].stream_id == stream_id) return pos; pos--; } return -1; } /* Serialisation */ int gavl_packet_index_read(gavl_packet_index_t * idx, gavl_io_t * io) { int i; uint32_t num; if(!gavl_io_read_uint32v(io, &idx->flags) || !gavl_io_read_uint32v(io, &num)) return 0; gavl_packet_index_set_size(idx, num); for(i = 0; i < idx->num_entries; i++) { if(!gavl_io_read_int32v(io, &idx->entries[i].stream_id) || !gavl_io_read_uint32v(io, &idx->entries[i].flags) || !gavl_io_read_uint32v(io, &idx->entries[i].size) || !gavl_io_read_uint64v(io, &idx->entries[i].position) || !gavl_io_read_int64v(io, &idx->entries[i].pts) || !gavl_io_read_int64v(io, &idx->entries[i].duration)) return 0; } return 1; } int gavl_packet_index_write(const gavl_packet_index_t * idx, gavl_io_t * io) { int i; if(!gavl_io_write_uint32v(io, idx->flags) || !gavl_io_write_uint32v(io, idx->num_entries)) return 0; for(i = 0; i < idx->num_entries; i++) { if(!gavl_io_write_int32v(io, idx->entries[i].stream_id) || !gavl_io_write_uint32v(io, idx->entries[i].flags) || !gavl_io_write_uint32v(io, idx->entries[i].size) || !gavl_io_write_uint64v(io, idx->entries[i].position) || !gavl_io_write_int64v(io, idx->entries[i].pts) || !gavl_io_write_int64v(io, idx->entries[i].duration)) return 0; } return 1; } gavl_packet_index_t * gavl_packet_index_load(const char * filename) { gavl_chunk_t head; gavl_packet_index_t * idx; gavl_io_t * io; if(!(io = gavl_io_from_filename(filename, 0))) return 0; if(!gavl_chunk_read_header(io, &head) || !gavl_chunk_is(&head, GAVF_TAG_PACKET_INDEX)) return 0; idx = gavl_packet_index_create(0); if(!gavl_packet_index_read(idx, io)) { gavl_packet_index_destroy(idx); idx = NULL; } gavl_io_destroy(io); return idx; } int gavl_packet_index_save(gavl_packet_index_t * idx, const char * filename) { gavl_chunk_t head; gavl_io_t * io; if(!(io = gavl_io_from_filename(filename, 1))) return 0; gavl_chunk_start(io, &head, GAVF_TAG_PACKET_INDEX); gavl_packet_index_write(idx, io); gavl_chunk_finish(io, &head, 1); gavl_io_destroy(io); return 1; } int64_t gavl_packet_index_packet_number_to_pts(const gavl_packet_index_t * idx, int stream_id, int64_t number) { int64_t i; int64_t idx_pos = 0; if(idx < 0) return GAVL_TIME_UNDEFINED; idx_pos = gavl_packet_index_get_next_packet(idx, stream_id, 0); if(idx_pos < 0) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "No packets for stream %d in index", stream_id); return GAVL_TIME_UNDEFINED; } for(i = 0; i < number; i++) { if((idx_pos = gavl_packet_index_get_next_packet(idx, stream_id, idx_pos+1)) < 0) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "No packet %"PRId64" in stream", number); return GAVL_TIME_UNDEFINED; } } return idx->entries[idx_pos].pts; } bplaum-gavl-b9385e3/gavl/packetsink.c000066400000000000000000000072071513252040200175160ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include #include #include #include #define LOG_DOMAIN "packetsink" // #define FLAG_GET_CALLED (1<<0) struct gavl_packet_sink_s { gavl_packet_t * pkt; gavl_packet_sink_get_func get_func; gavl_packet_sink_put_func put_func; void * priv; int flags; gavl_connector_lock_func_t lock_func; gavl_connector_lock_func_t unlock_func; void * lock_priv; gavl_connector_free_func_t free_func; }; gavl_packet_sink_t * gavl_packet_sink_create(gavl_packet_sink_get_func get_func, gavl_packet_sink_put_func put_func, void * priv) { gavl_packet_sink_t * ret; ret = calloc(1, sizeof(*ret)); ret->get_func = get_func; ret->put_func = put_func; ret->priv = priv; return ret; } void gavl_packet_sink_set_lock_funcs(gavl_packet_sink_t * sink, gavl_connector_lock_func_t lock_func, gavl_connector_lock_func_t unlock_func, void * priv) { sink->lock_func = lock_func; sink->unlock_func = unlock_func; sink->lock_priv = priv; } void gavl_packet_sink_reset(gavl_packet_sink_t * s) { s->pkt = NULL; } gavl_packet_t * gavl_packet_sink_get_packet(gavl_packet_sink_t * s) { // gavl_packet_t * ret; // s->flags |= FLAG_GET_CALLED; if(s->pkt) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "gavl_packet_sink_get_packet called twice %ld", pthread_self()); return NULL; } if(s->get_func) { if(s->lock_func) s->lock_func(s->lock_priv); s->pkt = s->get_func(s->priv); if(s->unlock_func) s->unlock_func(s->lock_priv); gavl_packet_reset(s->pkt); return s->pkt; } else return NULL; } gavl_sink_status_t gavl_packet_sink_put_packet(gavl_packet_sink_t * s, gavl_packet_t * p) { // gavl_packet_t * dp; gavl_sink_status_t st; if(s->lock_func) s->lock_func(s->lock_priv); if(!p) { if(s->pkt) s->put_func(s->priv, NULL); s->pkt = NULL; return GAVL_SINK_OK; } if(s->get_func) { if(!s->pkt) s->pkt = s->get_func(s->priv); if(s->pkt != p) gavl_packet_copy(s->pkt, p); st = s->put_func(s->priv, s->pkt); s->pkt = NULL; } else st = s->put_func(s->priv, p); if(s->unlock_func) s->unlock_func(s->lock_priv); return st; } void gavl_packet_sink_set_free_func(gavl_packet_sink_t * sink, gavl_connector_free_func_t free_func) { sink->free_func = free_func; } void gavl_packet_sink_destroy(gavl_packet_sink_t * s) { if(s->priv && s->free_func) s->free_func(s->priv); free(s); } bplaum-gavl-b9385e3/gavl/packetsource.c000066400000000000000000000206651513252040200200550ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include #include #include #include #include #include #define LOG_DOMAIN "packetsource" // #define FLAG_HAS_AFMT (1<<0) // #define FLAG_HAS_VFMT (1<<1) #define FLAG_HAS_CI (1<<2) struct gavl_packet_source_s { const gavl_dictionary_t * s; // Stream info (might be a pointer to previous source) gavl_dictionary_t s_priv; // Private (if different from previous source) // gavl_audio_format_t audio_format; // gavl_video_format_t video_format; // gavl_compression_info_t ci; // int timescale; gavl_packet_t p; gavl_packet_t * out_packet; // Saved here by gavl_packet_source_peek_packet_read int src_flags; gavl_packet_source_func_t func; void * priv; int flags; gavl_connector_lock_func_t lock_func; gavl_connector_lock_func_t unlock_func; void * lock_priv; gavl_connector_free_func_t free_func; int64_t pts_offset; }; gavl_packet_source_t * gavl_packet_source_create(gavl_packet_source_func_t func, void * priv, int src_flags, const gavl_dictionary_t * s) { gavl_packet_source_t * ret; ret = calloc(1, sizeof(*ret)); ret->func = func; ret->priv = priv; ret->src_flags = src_flags; if(s) ret->s = s; else ret->s = &ret->s_priv; return ret; } void gavl_packet_source_set_pts_offset(gavl_packet_source_t * src, int64_t offset) { src->pts_offset = offset; } #if 0 gavl_packet_source_t * gavl_packet_source_create_audio(gavl_packet_source_func_t func, void * priv, int src_flags, const gavl_compression_info_t * ci, const gavl_audio_format_t * afmt) { gavl_packet_source_t * ret = gavl_packet_source_create(func, priv, src_flags, NULL); gavl_compression_info_copy(&ret->ci, ci); ret->flags |= FLAG_HAS_CI; gavl_init_audio_stream(&ret->s); gavl_audio_format_copy(gavl_stream_get_audio_format_nc(&ret->s), afmt); return ret; } gavl_packet_source_t * gavl_packet_source_create_video(gavl_packet_source_func_t func, void * priv, int src_flags, const gavl_compression_info_t * ci, const gavl_video_format_t * vfmt, gavl_stream_type_t type) { gavl_packet_source_t * ret = gavl_packet_source_create(func, priv, src_flags, NULL); if(type == GAVL_STREAM_VIDEO) { gavl_init_video_stream(&ret->s); } else if(type == GAVL_STREAM_OVERLAY) { gavl_init_overlay_stream(&ret->s); } gavl_compression_info_copy(&ret->ci, ci); ret->flags |= FLAG_HAS_CI; gavl_video_format_copy(gavl_stream_get_video_format_nc(&ret->s), vfmt); return ret; } gavl_packet_source_t * gavl_packet_source_create_text(gavl_packet_source_func_t func, void * priv, int src_flags, int timescale) { gavl_packet_source_t * ret = gavl_packet_source_create(func, priv, src_flags, NULL); ret->timescale = timescale; return ret; } #endif gavl_packet_source_t * gavl_packet_source_create_source(gavl_packet_source_func_t func, void * priv, int src_flags, gavl_packet_source_t * src) { gavl_packet_source_t * ret = gavl_packet_source_create(func, priv, src_flags, src->s); ret->flags = src->flags; return ret; } void gavl_packet_source_set_lock_funcs(gavl_packet_source_t * src, gavl_connector_lock_func_t lock_func, gavl_connector_lock_func_t unlock_func, void * priv) { src->lock_func = lock_func; src->unlock_func = unlock_func; src->lock_priv = priv; } #if 0 const gavl_compression_info_t * gavl_packet_source_get_ci(gavl_packet_source_t * s) { if(!(s->flags & FLAG_HAS_CI) && !(gavl_stream_get_compression_info(&s->s, &s->ci))) return NULL; else return &s->ci; } #endif const gavl_dictionary_t * gavl_packet_source_get_stream(gavl_packet_source_t * s) { return s->s; } gavl_dictionary_t * gavl_packet_source_get_stream_nc(gavl_packet_source_t * s) { if(s->s != &s->s_priv) { /* Create local copy */ gavl_dictionary_copy(&s->s_priv, s->s); s->s = &s->s_priv; } return &s->s_priv; } const gavl_audio_format_t * gavl_packet_source_get_audio_format(gavl_packet_source_t * s) { return gavl_stream_get_audio_format(s->s); } const gavl_video_format_t * gavl_packet_source_get_video_format(gavl_packet_source_t * s) { return gavl_stream_get_video_format(s->s); } int gavl_packet_source_get_timescale(gavl_packet_source_t * s) { int ret = 0; const gavl_dictionary_t * m = gavl_stream_get_metadata(s->s); gavl_dictionary_get_int(m, GAVL_META_STREAM_PACKET_TIMESCALE, &ret); return ret; } gavl_source_status_t gavl_packet_source_read_packet(void*sp, gavl_packet_t ** p) { gavl_source_status_t st; gavl_packet_t *p_src; gavl_packet_source_t * s = sp; if(s->out_packet) { if(*p && (*p != s->out_packet)) gavl_packet_copy(*p, s->out_packet); else *p = s->out_packet; s->out_packet = NULL; return GAVL_SOURCE_OK; } gavl_packet_reset(&s->p); /* Decide source */ if(s->src_flags & GAVL_SOURCE_SRC_ALLOC) p_src = NULL; else p_src = &s->p; if(s->lock_func) s->lock_func(s->lock_priv); /* Get packet */ st = s->func(s->priv, &p_src); if(s->unlock_func) s->unlock_func(s->lock_priv); if(st != GAVL_SOURCE_OK) return st; /* Kick out error packets */ #if 0 // negative durations are o longer considered errors if(p_src->duration < 0) { // gavl_log(GAVL_LOG_WARNING, LOG_DOMAIN, "Negative packet duration encountered"); // gavl_packet_dump(p_src); // return GAVL_SOURCE_EOF; } #endif /* Decide destination */ if(!*p) *p = p_src; else gavl_packet_copy(*p, p_src); return GAVL_SOURCE_OK; } gavl_source_status_t gavl_packet_source_peek_packet(void*sp, gavl_packet_t ** p) { gavl_source_status_t st; gavl_packet_source_t * s = sp; if(!s->out_packet) { if((st = gavl_packet_source_read_packet(sp, &s->out_packet)) != GAVL_SOURCE_OK) return st; } if(p) { if(*p) gavl_packet_copy(*p, s->out_packet); else *p = s->out_packet; } return GAVL_SOURCE_OK; } void gavl_packet_source_drain(gavl_packet_source_t * s) { gavl_source_status_t st; gavl_packet_t * p = NULL; while((st = gavl_packet_source_read_packet(s, &p)) == GAVL_SOURCE_OK) p = NULL; } void gavl_packet_source_set_free_func(gavl_packet_source_t * src, gavl_connector_free_func_t free_func) { src->free_func = free_func; } void gavl_packet_source_destroy(gavl_packet_source_t * s) { gavl_packet_free(&s->p); if(s->priv && s->free_func) s->free_func(s->priv); gavl_dictionary_free(&s->s_priv); free(s); } void gavl_packet_source_reset(gavl_packet_source_t * s) { s->out_packet = NULL; } #if 0 void gavl_packet_source_set_eof(gavl_packet_source_t * src, int eof) { pthread_mutex_lock(&src->eof_mutex); src->eof = eof; pthread_mutex_unlock(&src->eof_mutex); } int gavl_packet_source_get_eof(gavl_packet_source_t * src) { int ret; pthread_mutex_lock(&src->eof_mutex); ret = src->eof; pthread_mutex_unlock(&src->eof_mutex); return ret; } #endif bplaum-gavl-b9385e3/gavl/palette.c000066400000000000000000000034501513252040200170140ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include // #include #include #include #include // #include // #define LOG_DOMAIN "palette" gavl_palette_t * gavl_palette_create(void) { gavl_palette_t * pal = calloc(1, sizeof(*pal)); return pal; } void gavl_palette_alloc(gavl_palette_t * pal, int num_colors) { pal->entries = malloc(num_colors * sizeof(*pal->entries)); pal->num_entries = num_colors; } void gavl_palette_free(gavl_palette_t * pal) { if(pal->entries) free(pal->entries); } void gavl_palette_destroy(gavl_palette_t * pal) { gavl_palette_free(pal); free(pal); } void gavl_palette_init(gavl_palette_t * pal) { memset(pal, 0, sizeof(*pal)); } void gavl_palette_move(gavl_palette_t * dst, gavl_palette_t * src) { memmove(dst, src, sizeof(*dst)); gavl_palette_init(src); } bplaum-gavl-b9385e3/gavl/parameter.c000066400000000000000000000253061513252040200173420ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include #include int gavl_parameter_num_sections(const gavl_dictionary_t* params) { const gavl_array_t * arr = gavl_dictionary_get_array(params, GAVL_PARAMETER_SECTIONS); return arr ? arr->num_entries : 0; } int gavl_parameter_num_params(const gavl_dictionary_t* params) { const gavl_array_t * arr = gavl_dictionary_get_array(params, GAVL_PARAMETER_PARAMS); return arr ? arr->num_entries : 0; } int gavl_parameter_num_options(const gavl_dictionary_t* params) { const gavl_array_t * arr = gavl_dictionary_get_array(params, GAVL_PARAMETER_OPTIONS); return arr ? arr->num_entries : 0; } const gavl_dictionary_t* gavl_parameter_get_section(const gavl_dictionary_t* params, int idx) { const gavl_value_t * val; const gavl_array_t * arr; if((arr= gavl_dictionary_get_array(params, GAVL_PARAMETER_SECTIONS)) && (val = gavl_array_get(arr, idx))) return gavl_value_get_dictionary(val); else return NULL; } const gavl_dictionary_t* gavl_parameter_get_option(const gavl_dictionary_t* params, int idx) { const gavl_value_t * val; const gavl_array_t * arr; if((arr= gavl_dictionary_get_array(params, GAVL_PARAMETER_OPTIONS)) && (val = gavl_array_get(arr, idx))) return gavl_value_get_dictionary(val); else return NULL; } const gavl_dictionary_t* gavl_parameter_get_param(const gavl_dictionary_t* params, int idx) { const gavl_value_t * val; const gavl_array_t * arr; if((arr= gavl_dictionary_get_array(params, GAVL_PARAMETER_PARAMS)) && (val = gavl_array_get(arr, idx))) return gavl_value_get_dictionary(val); else return NULL; } gavl_dictionary_t* gavl_parameter_append_section(gavl_dictionary_t* params, const char * name, const char * label) { gavl_array_t * arr; gavl_dictionary_t * dict; gavl_value_t val; gavl_value_init(&val); dict = gavl_value_set_dictionary(&val); gavl_dictionary_set_string(dict, GAVL_META_NAME, name); gavl_dictionary_set_string(dict, GAVL_META_LABEL, label); arr= gavl_dictionary_get_array_create(params, GAVL_PARAMETER_SECTIONS); gavl_array_splice_val_nocopy(arr, -1, 0, &val); return gavl_value_get_dictionary_nc(&arr->entries[arr->num_entries-1]); } gavl_dictionary_t * gavl_parameter_append_option(gavl_dictionary_t* params, const char * name, const char * label) { gavl_array_t * arr; gavl_dictionary_t * dict; gavl_value_t val; gavl_value_init(&val); dict = gavl_value_set_dictionary(&val); gavl_dictionary_set_string(dict, GAVL_META_NAME, name); gavl_dictionary_set_string(dict, GAVL_META_LABEL, label); arr= gavl_dictionary_get_array_create(params, GAVL_PARAMETER_OPTIONS); gavl_array_splice_val_nocopy(arr, -1, 0, &val); return gavl_value_get_dictionary_nc(&arr->entries[arr->num_entries-1]); } void gavl_parameter_init(gavl_dictionary_t* param, const char * name, const char * label, gavl_parameter_type_t type) { gavl_dictionary_set_string(param, GAVL_META_NAME, name); gavl_dictionary_set_string(param, GAVL_META_LABEL, label); gavl_dictionary_set_int(param, GAVL_PARAMETER_TYPE, type); } gavl_dictionary_t * gavl_parameter_append_param(gavl_dictionary_t* params, const char * name, const char * label, gavl_parameter_type_t type) { gavl_array_t * arr; gavl_dictionary_t * dict; gavl_value_t val; gavl_value_init(&val); dict = gavl_value_set_dictionary(&val); gavl_parameter_init(dict, name, label, type); arr= gavl_dictionary_get_array_create(params, GAVL_PARAMETER_PARAMS); gavl_array_splice_val_nocopy(arr, -1, 0, &val); return gavl_value_get_dictionary_nc(&arr->entries[arr->num_entries-1]); } gavl_parameter_type_t gavl_parameter_info_get_type(const gavl_dictionary_t* info) { int type = 0; gavl_dictionary_get_int(info, GAVL_PARAMETER_TYPE, &type); return type; } void gavl_parameter_from_static(gavl_dictionary_t* param, const gavl_parameter_info_t * p) { int i = 0; const char *const * label = NULL; const gavl_parameter_info_t *const* sub_p = NULL; gavl_dictionary_t * opt; if(p->val_default.type != GAVL_TYPE_UNDEFINED) gavl_dictionary_set(param, GAVL_PARAMETER_DEFAULT, &p->val_default); if(p->val_min.type != GAVL_TYPE_UNDEFINED) gavl_dictionary_set(param, GAVL_PARAMETER_MIN, &p->val_min); if(p->val_max.type != GAVL_TYPE_UNDEFINED) gavl_dictionary_set(param, GAVL_PARAMETER_MAX, &p->val_max); if(p->num_digits) gavl_dictionary_set_int(param, GAVL_PARAMETER_NUM_DIGITS, p->num_digits); gavl_dictionary_set_string(param, GAVL_PARAMETER_HELP, p->help_string); /* Options */ if(p->multi_names) { if(p->multi_labels) label = p->multi_labels; if(p->multi_parameters) sub_p = p->multi_parameters; while(p->multi_names[i]) { opt = gavl_parameter_append_option(param, p->multi_names[i], label ? *label : NULL); if(sub_p && *sub_p) { gavl_parameter_info_append_static(opt, *sub_p); } if(label) { label++; if(!(*label)) label = NULL; } if(sub_p) sub_p++; i++; } } } void gavl_parameter_info_append_static(gavl_dictionary_t * params, const gavl_parameter_info_t * p) { int idx = 0; gavl_dictionary_t * section = params; if(!p) return; while(p[idx].name) { if(p[idx].gettext_domain && p[idx].gettext_directory) { gavl_dictionary_set_string(params, GAVL_PARAMETER_GETTEXT_DOMAIN, p[idx].gettext_domain); gavl_dictionary_set_string(params, GAVL_PARAMETER_GETTEXT_DIRECTORY, p[idx].gettext_directory); } if(p[idx].type == GAVL_PARAMETER_SECTION) { section = gavl_parameter_append_section(params, p[idx].name, p[idx].long_name); gavl_dictionary_copy_value(section, params, GAVL_PARAMETER_GETTEXT_DOMAIN); gavl_dictionary_copy_value(section, params, GAVL_PARAMETER_GETTEXT_DIRECTORY); } else { gavl_dictionary_t * param = gavl_parameter_append_param(section, p[idx].name, p[idx].long_name, p[idx].type); gavl_parameter_from_static(param, &p[idx]); } idx++; } } static const gavl_dictionary_t* get_item_by_name(const gavl_dictionary_t* dict, const char * arr_name, const char * name) { int i; const gavl_array_t * arr; const gavl_dictionary_t * child; const char * var; if(!(arr = gavl_dictionary_get_array(dict, arr_name))) return NULL; for(i = 0; i < arr->num_entries; i++) { if((child = gavl_value_get_dictionary(&arr->entries[i])) && (var = gavl_dictionary_get_string(child, GAVL_META_NAME)) && !strcmp(var, name)) return child; } return NULL; } const gavl_dictionary_t* gavl_parameter_get_param_by_name(const gavl_dictionary_t* params, const char * name) { return get_item_by_name(params, GAVL_PARAMETER_PARAMS, name); } const gavl_dictionary_t* gavl_parameter_get_option_by_name(const gavl_dictionary_t* param, const char * name) { return get_item_by_name(param, GAVL_PARAMETER_OPTIONS, name); } gavl_type_t gavl_parameter_type_to_gavl(gavl_parameter_type_t type) { switch(type) { case GAVL_PARAMETER_SECTION: //!< Dummy type. It contains no data but acts as a separator in notebook style configuration windows return GAVL_TYPE_UNDEFINED; break; case GAVL_PARAMETER_CHECKBUTTON: //!< Bool case GAVL_PARAMETER_INT: //!< Integer spinbutton case GAVL_PARAMETER_SLIDER_INT: //!< Integer slider return GAVL_TYPE_INT; break; case GAVL_PARAMETER_FLOAT: //!< Float spinbutton case GAVL_PARAMETER_SLIDER_FLOAT: //!< Float slider return GAVL_TYPE_FLOAT; break; case GAVL_PARAMETER_STRING: //!< String (one line only) case GAVL_PARAMETER_STRING_HIDDEN: //!< Encrypted string (displays as ***) case GAVL_PARAMETER_STRINGLIST: //!< Popdown menu with string values case GAVL_PARAMETER_FONT: //!< Font (contains fontconfig compatible fontname) case GAVL_PARAMETER_FILE: //!< File case GAVL_PARAMETER_DIRECTORY: //!< Directory return GAVL_TYPE_STRING; break; case GAVL_PARAMETER_MULTI_MENU: //!< Menu with config- and infobutton return GAVL_TYPE_DICTIONARY; break; case GAVL_PARAMETER_DIRLIST: case GAVL_PARAMETER_MULTI_LIST: //!< List with config- and infobutton case GAVL_PARAMETER_MULTI_CHAIN: //!< Several subitems (including suboptions) can be arranged in a chain return GAVL_TYPE_ARRAY; break; case GAVL_PARAMETER_COLOR_RGB: //!< RGB Color return GAVL_TYPE_COLOR_RGB; break; case GAVL_PARAMETER_COLOR_RGBA: //!< RGBA Color return GAVL_TYPE_COLOR_RGBA; break; case GAVL_PARAMETER_TIME: //!< Time return GAVL_TYPE_LONG; break; case GAVL_PARAMETER_POSITION: //!< Position (x/y coordinates, scaled 0..1) return GAVL_TYPE_POSITION; break; case GAVL_PARAMETER_BUTTON: //!< Pressing the button causes set_parameter to be called with NULL value return GAVL_TYPE_STRING; break; } return GAVL_TYPE_UNDEFINED; } bplaum-gavl-b9385e3/gavl/peakdetector.c000066400000000000000000000266621513252040200200420ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include #include struct gavl_peak_detector_s { int64_t min_i[GAVL_MAX_CHANNELS]; int64_t max_i[GAVL_MAX_CHANNELS]; double min_d[GAVL_MAX_CHANNELS]; double max_d[GAVL_MAX_CHANNELS]; double abs_d[GAVL_MAX_CHANNELS]; gavl_audio_format_t format; void (*update_channel)(gavl_peak_detector_t*,void*,int num, int offset, int advance, int channel); void (*update)(gavl_peak_detector_t*, gavl_audio_frame_t*); gavl_audio_sink_t * sink; /* Callbacks */ gavl_update_peak_callback peak_callback; gavl_update_peaks_callback peaks_callback; void * callback_priv; }; static void update_none(gavl_peak_detector_t*pd, gavl_audio_frame_t*f) { int i; for(i = 0; i < pd->format.num_channels; i++) { pd->update_channel(pd, f->channels.s_8[i], f->valid_samples, 0, 1, i); } } static void update_all(gavl_peak_detector_t*pd, gavl_audio_frame_t*f) { int i; for(i = 0; i < pd->format.num_channels; i++) { pd->update_channel(pd, f->samples.s_8, f->valid_samples, i, pd->format.num_channels, i); } } static void update_2(gavl_peak_detector_t*pd, gavl_audio_frame_t*f) { int i; for(i = 0; i < pd->format.num_channels/2; i++) { pd->update_channel(pd, f->samples.s_8, f->valid_samples, 0, 2, 2*i); pd->update_channel(pd, f->samples.s_8, f->valid_samples, 1, 2, 2*i+1); } if(pd->format.num_channels % 2) pd->update_channel(pd, f->channels.s_8[pd->format.num_channels-1], f->valid_samples, 0, 1, pd->format.num_channels-1); } static void update_channel_u8(gavl_peak_detector_t * pd, void * _samples, int num, int offset, int advance, int channel) { int i; uint8_t * samples = (uint8_t *)_samples; samples += offset; for(i = 0; i < num; i++) { if(*samples > pd->max_i[channel]) pd->max_i[channel] = *samples; if(*samples < pd->min_i[channel]) pd->min_i[channel] = *samples; samples += advance; } pd->min_d[channel] = (double)((int)pd->min_i[channel]-0x80) / 128.0; pd->max_d[channel] = (double)((int)pd->max_i[channel]-0x80) / 127.0; } static void update_channel_s8(gavl_peak_detector_t * pd, void * _samples, int num, int offset, int advance, int channel) { int i; int8_t * samples = (int8_t *)_samples; samples += offset; for(i = 0; i < num; i++) { if(*samples > pd->max_i[channel]) pd->max_i[channel] = *samples; if(*samples < pd->min_i[channel]) pd->min_i[channel] = *samples; samples += advance; } pd->min_d[channel] = (double)((int)pd->min_i[channel]) / 128.0; pd->max_d[channel] = (double)((int)pd->max_i[channel]) / 127.0; } static void update_channel_u16(gavl_peak_detector_t * pd, void * _samples, int num, int offset, int advance, int channel) { int i; uint16_t * samples = (uint16_t *)_samples; samples += offset; for(i = 0; i < num; i++) { if(*samples > pd->max_i[channel]) pd->max_i[channel] = *samples; if(*samples < pd->min_i[channel]) pd->min_i[channel] = *samples; samples += advance; } pd->min_d[channel] = (double)((int)pd->min_i[channel]-0x8000) / 32768.0; pd->max_d[channel] = (double)((int)pd->max_i[channel]-0x8000) / 32767.0; } static void update_channel_s16(gavl_peak_detector_t * pd, void * _samples, int num, int offset, int advance, int channel) { int i; int16_t * samples = (int16_t *)_samples; samples += offset; for(i = 0; i < num; i++) { if(*samples > pd->max_i[channel]) pd->max_i[channel] = *samples; if(*samples < pd->min_i[channel]) pd->min_i[channel] = *samples; samples += advance; } pd->min_d[channel] = (double)((int)pd->min_i[channel]) / 32768.0; pd->max_d[channel] = (double)((int)pd->max_i[channel]) / 32767.0; } static void update_channel_s32(gavl_peak_detector_t * pd, void * _samples, int num, int offset, int advance, int channel) { int i; int32_t * samples = (int32_t *)_samples; samples += offset; for(i = 0; i < num; i++) { if(*samples > pd->max_i[channel]) pd->max_i[channel] = *samples; if(*samples < pd->min_i[channel]) pd->min_i[channel] = *samples; samples += advance; } pd->min_d[channel] = (double)((int)pd->min_i[channel]) / 2147483648.0; pd->max_d[channel] = (double)((int)pd->max_i[channel]) / 2147483647.0; } static void update_channel_float(gavl_peak_detector_t * pd, void * _samples, int num, int offset, int advance, int channel) { int i; float * samples = (float*)_samples; samples += offset; for(i = 0; i < num; i++) { if(*samples > pd->max_d[channel]) pd->max_d[channel] = *samples; if(*samples < pd->min_d[channel]) pd->min_d[channel] = *samples; samples += advance; } } static void update_channel_double(gavl_peak_detector_t * pd, void * _samples, int num, int offset, int advance, int channel) { int i; double * samples = (double*)_samples; samples += offset; for(i = 0; i < num; i++) { if(*samples > pd->max_d[channel]) pd->max_d[channel] = *samples; if(*samples < pd->min_d[channel]) pd->min_d[channel] = *samples; samples += advance; } } gavl_peak_detector_t * gavl_peak_detector_create() { gavl_peak_detector_t * ret; ret = calloc(1, sizeof(*ret)); return ret; } void gavl_peak_detector_destroy(gavl_peak_detector_t *pd) { if(pd->sink) gavl_audio_sink_destroy(pd->sink); free(pd); } static gavl_sink_status_t put_frame_func(void * priv, gavl_audio_frame_t * frame) { int i; gavl_peak_detector_t *pd = priv; pd->update(pd, frame); for(i = 0; i < pd->format.num_channels; i++) { pd->abs_d[i] = (pd->max_d[i] > fabs(pd->min_d[i])) ? pd->max_d[i] : fabs(pd->min_d[i]); } if(pd->peaks_callback) pd->peaks_callback(pd->callback_priv, frame->valid_samples, pd->min_d, pd->max_d, pd->abs_d); if(pd->peak_callback) { double min, max, abs; gavl_peak_detector_get_peak(pd, &min, &max, &abs); pd->peak_callback(pd->callback_priv, frame->valid_samples, min, max, abs); } return GAVL_SINK_OK; } const gavl_audio_format_t * gavl_peak_detector_get_format(gavl_peak_detector_t * pd) { return &pd->format; } void gavl_peak_detector_set_format(gavl_peak_detector_t *pd, const gavl_audio_format_t * format) { gavl_audio_format_copy(&pd->format, format); switch(pd->format.interleave_mode) { case GAVL_INTERLEAVE_NONE: pd->update = update_none; break; case GAVL_INTERLEAVE_ALL: pd->update = update_all; break; case GAVL_INTERLEAVE_2: pd->update = update_2; break; } switch(pd->format.sample_format) { case GAVL_SAMPLE_U8: pd->update_channel = update_channel_u8; break; case GAVL_SAMPLE_S8: pd->update_channel = update_channel_s8; break; case GAVL_SAMPLE_U16: pd->update_channel = update_channel_u16; break; case GAVL_SAMPLE_S16: pd->update_channel = update_channel_s16; break; case GAVL_SAMPLE_S32: pd->update_channel = update_channel_s32; break; case GAVL_SAMPLE_FLOAT: pd->update_channel = update_channel_float; break; case GAVL_SAMPLE_DOUBLE: pd->update_channel = update_channel_double; break; case GAVL_SAMPLE_NONE: break; } gavl_peak_detector_reset(pd); if(pd->sink) gavl_audio_sink_destroy(pd->sink); pd->sink = gavl_audio_sink_create(NULL, put_frame_func, pd, format); } void gavl_peak_detector_update(gavl_peak_detector_t *pd, gavl_audio_frame_t * frame) { gavl_audio_sink_put_frame(pd->sink, frame); } void gavl_peak_detector_get_peak(gavl_peak_detector_t * pd, double * min, double * max, double * abs) { int i; double min1 = 0.0, max1 = 0.0, abs1 = 0.0; for(i = 0; i < pd->format.num_channels; i++) { if(pd->min_d[i] < min1) min1 = pd->min_d[i]; if(pd->max_d[i] > max1) max1 = pd->max_d[i]; if(pd->abs_d[i] > abs1) abs1 = pd->abs_d[i]; } if(min) *min = min1; if(max) *max = max1; if(abs) *abs = abs1; } void gavl_peak_detector_get_peaks(gavl_peak_detector_t * pd, double * min, double * max, double * abs) { if(min) memcpy(min, pd->min_d, pd->format.num_channels * sizeof(*min)); if(max) memcpy(max, pd->max_d, pd->format.num_channels * sizeof(*max)); if(abs) memcpy(abs, pd->abs_d, pd->format.num_channels * sizeof(*max)); } void gavl_peak_detector_reset(gavl_peak_detector_t * pd) { int i; switch(pd->format.sample_format) { case GAVL_SAMPLE_U8: for(i = 0; i < pd->format.num_channels; i++) { pd->min_i[i] = 0x80; pd->max_i[i] = 0x80; } break; case GAVL_SAMPLE_U16: for(i = 0; i < pd->format.num_channels; i++) { pd->min_i[i] = 0x8000; pd->max_i[i] = 0x8000; } break; case GAVL_SAMPLE_S8: case GAVL_SAMPLE_S16: case GAVL_SAMPLE_S32: for(i = 0; i < pd->format.num_channels; i++) { pd->min_i[i] = 0x0; pd->max_i[i] = 0x0; } break; case GAVL_SAMPLE_FLOAT: case GAVL_SAMPLE_DOUBLE: case GAVL_SAMPLE_NONE: break; } for(i = 0; i < pd->format.num_channels; i++) { pd->min_d[i] = 0.0; pd->max_d[i] = 0.0; pd->abs_d[i] = 0.0; } } GAVL_PUBLIC gavl_audio_sink_t * gavl_peak_detector_get_sink(gavl_peak_detector_t *pd) { return pd->sink; } GAVL_PUBLIC void gavl_peak_detector_set_callbacks(gavl_peak_detector_t * pd, gavl_update_peak_callback peak_callback, gavl_update_peaks_callback peaks_callback, void * priv) { pd->peak_callback = peak_callback; pd->peaks_callback = peaks_callback; pd->callback_priv = priv; } bplaum-gavl-b9385e3/gavl/psnr.c000066400000000000000000000506451513252040200163500ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include #include "c/colorspace_tables.h" #include "c/colorspace_macros.h" static void psnr_rgb_16(double * dst, const uint8_t * src1, int src1_stride, const uint8_t * src2, int src2_stride, int w, int h) { int i, j; const uint16_t *s1; const uint16_t *s2; double r = 0.0, g = 0.0, b = 0.0; dst[0] = 0.0; dst[1] = 0.0; dst[2] = 0.0; for(i = 0; i < h; i++) { s1 = (const uint16_t *)(src1 + i * src1_stride); s2 = (const uint16_t *)(src2 + i * src2_stride); for(j = 0; j < w; j++) { r = RGB16_TO_R_FLOAT(*s1) - RGB16_TO_R_FLOAT(*s2); r *= r; dst[0] += r; g = RGB16_TO_G_FLOAT(*s1) - RGB16_TO_G_FLOAT(*s2); g *= g; dst[1] += g; b = RGB16_TO_B_FLOAT(*s1) - RGB16_TO_B_FLOAT(*s2); b *= b; dst[1] += b; s1++; s2++; } } } static void psnr_rgb_15(double * dst, const uint8_t * src1, int src1_stride, const uint8_t * src2, int src2_stride, int w, int h) { int i, j; const uint16_t *s1; const uint16_t *s2; double r = 0.0, g = 0.0, b = 0.0; dst[0] = 0.0; dst[1] = 0.0; dst[2] = 0.0; for(i = 0; i < h; i++) { s1 = (const uint16_t *)(src1 + i * src1_stride); s2 = (const uint16_t *)(src2 + i * src2_stride); for(j = 0; j < w; j++) { r = RGB15_TO_R_FLOAT(*s1) - RGB15_TO_R_FLOAT(*s2); r *= r; dst[0] += r; g = RGB15_TO_G_FLOAT(*s1) - RGB15_TO_G_FLOAT(*s2); g *= g; dst[1] += g; b = RGB15_TO_B_FLOAT(*s1) - RGB15_TO_B_FLOAT(*s2); b *= b; dst[2] += b; s1++; s2++; } } } static double psnr_8(const uint8_t * src1, int src1_stride, const uint8_t * src2, int src2_stride, int w, int h, int advance) { int i, j; const uint8_t *s1; const uint8_t *s2; double ret = 0; double diff; for(i = 0; i < h; i++) { s1 = (src1 + i * src1_stride); s2 = (src2 + i * src2_stride); for(j = 0; j < w; j++) { diff = RGB_8_TO_FLOAT(*s1) - RGB_8_TO_FLOAT(*s2); diff *= diff; ret += diff; s1+= advance; s2+= advance; } } ret /= (w * h); return ret; } static double psnr_y_8(const uint8_t * src1, int src1_stride, const uint8_t * src2, int src2_stride, int w, int h, int advance) { int i, j; const uint8_t *s1; const uint8_t *s2; double ret = 0; double diff; for(i = 0; i < h; i++) { s1 = (src1 + i * src1_stride); s2 = (src2 + i * src2_stride); for(j = 0; j < w; j++) { diff = Y_8_TO_FLOAT(*s1) - Y_8_TO_FLOAT(*s2); diff *= diff; ret += diff; s1+= advance; s2+= advance; } } ret /= (w * h); return ret; } static double psnr_uv_8(const uint8_t * src1, int src1_stride, const uint8_t * src2, int src2_stride, int w, int h, int advance) { int i, j; const uint8_t *s1; const uint8_t *s2; double ret = 0; double diff; for(i = 0; i < h; i++) { s1 = (src1 + i * src1_stride); s2 = (src2 + i * src2_stride); for(j = 0; j < w; j++) { diff = UV_8_TO_FLOAT(*s1) - UV_8_TO_FLOAT(*s2); diff *= diff; ret += diff; s1+= advance; s2+= advance; } } ret /= (w * h); return ret; } static double psnr_16(const uint8_t * src1, int src1_stride, const uint8_t * src2, int src2_stride, int w, int h, int advance) { int i, j; const uint16_t *s1; const uint16_t *s2; double ret = 0; double diff; for(i = 0; i < h; i++) { s1 = (const uint16_t *)(src1 + i * src1_stride); s2 = (const uint16_t *)(src2 + i * src2_stride); for(j = 0; j < w; j++) { diff = RGB_16_TO_FLOAT(*s1) - RGB_16_TO_FLOAT(*s2); diff *= diff; ret += diff; s1+= advance; s2+= advance; } } ret /= (w * h); return ret; } static double psnr_y_16(const uint8_t * src1, int src1_stride, const uint8_t * src2, int src2_stride, int w, int h, int advance) { int i, j; const uint16_t *s1; const uint16_t *s2; double ret = 0; double d; for(i = 0; i < h; i++) { s1 = (const uint16_t *)(src1 + i * src1_stride); s2 = (const uint16_t *)(src2 + i * src2_stride); for(j = 0; j < w; j++) { d = Y_16_TO_Y_FLOAT(*s1) - Y_16_TO_Y_FLOAT(*s2); d *= d; ret += d; s1+= advance; s2+= advance; } } ret /= (w * h); return ret; } static double psnr_uv_16(const uint8_t * src1, int src1_stride, const uint8_t * src2, int src2_stride, int w, int h, int advance) { int i, j; const uint16_t *s1; const uint16_t *s2; double ret = 0; double d; for(i = 0; i < h; i++) { s1 = (const uint16_t *)(src1 + i * src1_stride); s2 = (const uint16_t *)(src2 + i * src2_stride); for(j = 0; j < w; j++) { d = UV_16_TO_UV_FLOAT(*s1) - UV_16_TO_UV_FLOAT(*s2); d *= d; ret += d; s1+= advance; s2+= advance; } } ret /= (w * h); return ret; } static double psnr_float(const uint8_t * src1, int src1_stride, const uint8_t * src2, int src2_stride, int w, int h, int advance) { int i, j; const float *s1; const float *s2; double ret = 0; double diff; for(i = 0; i < h; i++) { s1 = (const float *)(src1 + i * src1_stride); s2 = (const float *)(src2 + i * src2_stride); for(j = 0; j < w; j++) { diff = (*s1) - (*s2); diff *= diff; ret += diff; s1+= advance; s2+= advance; } } ret /= (w * h); return ret; } void gavl_video_frame_psnr(double * psnr, const gavl_video_frame_t * src1, const gavl_video_frame_t * src2, const gavl_video_format_t * format) { int sub_h, sub_v; int swap_rgb = 0; int num_components; int i; switch(format->pixelformat) { case GAVL_BGR_15: swap_rgb = 1; // Fall through case GAVL_RGB_15: psnr_rgb_15(psnr, src1->planes[0], src1->strides[0], src2->planes[0], src2->strides[0], format->image_width, format->image_height); break; case GAVL_BGR_16: swap_rgb = 1; // Fall through case GAVL_RGB_16: psnr_rgb_16(psnr, src1->planes[0], src1->strides[0], src2->planes[0], src2->strides[0], format->image_width, format->image_height); break; case GAVL_GRAY_8: psnr[0] = psnr_8(src1->planes[0], src1->strides[0], src2->planes[0], src2->strides[0], format->image_width, format->image_height, 1); break; case GAVL_GRAY_16: psnr[0] = psnr_8(src1->planes[0], src1->strides[0], src2->planes[0], src2->strides[0], format->image_width, format->image_height, 2); psnr[1] = psnr_8(src1->planes[0]+1, src1->strides[0], src2->planes[0]+1, src2->strides[0], format->image_width, format->image_height, 2); break; case GAVL_GRAY_FLOAT: psnr[0] = psnr_float(src1->planes[0], src1->strides[0], src2->planes[0], src2->strides[0], format->image_width, format->image_height, 1); break; case GAVL_GRAYA_16: psnr[0] = psnr_8(src1->planes[0], src1->strides[0], src2->planes[0], src2->strides[0], format->image_width, format->image_height, 2); psnr[1] = psnr_8(src1->planes[0]+1, src1->strides[0], src2->planes[0]+1, src2->strides[0], format->image_width, format->image_height, 2); break; case GAVL_YUY2: /* Y */ psnr[0] = psnr_y_8(src1->planes[0], src1->strides[0], src2->planes[0], src2->strides[0], format->image_width, format->image_height, 2); /* U */ psnr[1] = psnr_uv_8(src1->planes[0]+1, src1->strides[0], src2->planes[0], src2->strides[0], format->image_width, format->image_height, 4); /* V */ psnr[2] = psnr_uv_8(src1->planes[0]+3, src1->strides[0], src2->planes[0], src2->strides[0], format->image_width, format->image_height, 4); break; case GAVL_UYVY: /* Y */ psnr[0] = psnr_y_8(src1->planes[0]+1, src1->strides[0], src2->planes[0], src2->strides[0], format->image_width, format->image_height, 2); /* U */ psnr[1] = psnr_uv_8(src1->planes[0], src1->strides[0], src2->planes[0], src2->strides[0], format->image_width, format->image_height, 4); /* V */ psnr[2] = psnr_uv_8(src1->planes[0]+2, src1->strides[0], src2->planes[0], src2->strides[0], format->image_width, format->image_height, 4); break; case GAVL_GRAYA_32: psnr[0] = psnr_16(src1->planes[0], src1->strides[0], src2->planes[0], src2->strides[0], format->image_width, format->image_height, 2); psnr[1] = psnr_16(src1->planes[0]+2, src1->strides[0], src2->planes[0]+2, src2->strides[0], format->image_width, format->image_height, 2); break; case GAVL_GRAYA_FLOAT: psnr[0] = psnr_float(src1->planes[0], src1->strides[0], src2->planes[0], src2->strides[0], format->image_width, format->image_height, 2); psnr[1] = psnr_float(src1->planes[0]+sizeof(float), src1->strides[0], src2->planes[0]+sizeof(float), src2->strides[0], format->image_width, format->image_height, 2); break; case GAVL_BGR_24: swap_rgb = 1; // Fall through case GAVL_RGB_24: psnr[0] = psnr_8(src1->planes[0], src1->strides[0], src2->planes[0], src2->strides[0], format->image_width, format->image_height, 3); psnr[1] = psnr_8(src1->planes[0]+1, src1->strides[0], src2->planes[0]+1, src2->strides[0], format->image_width, format->image_height, 3); psnr[2] = psnr_8(src1->planes[0]+2, src1->strides[0], src2->planes[0]+2, src2->strides[0], format->image_width, format->image_height, 3); break; case GAVL_BGR_32: swap_rgb = 1; // Fall through case GAVL_RGB_32: psnr[0] = psnr_8(src1->planes[0], src1->strides[0], src2->planes[0], src2->strides[0], format->image_width, format->image_height, 4); psnr[1] = psnr_8(src1->planes[0]+1, src1->strides[0], src2->planes[0]+1, src2->strides[0], format->image_width, format->image_height, 4); psnr[2] = psnr_8(src1->planes[0]+2, src1->strides[0], src2->planes[0]+2, src2->strides[0], format->image_width, format->image_height, 4); break; case GAVL_RGBA_32: psnr[0] = psnr_8(src1->planes[0], src1->strides[0], src2->planes[0], src2->strides[0], format->image_width, format->image_height, 4); psnr[1] = psnr_8(src1->planes[0]+1, src1->strides[0], src2->planes[0]+1, src2->strides[0], format->image_width, format->image_height, 4); psnr[2] = psnr_8(src1->planes[0]+2, src1->strides[0], src2->planes[0]+2, src2->strides[0], format->image_width, format->image_height, 4); psnr[3] = psnr_8(src1->planes[0]+3, src1->strides[0], src2->planes[0]+3, src2->strides[0], format->image_width, format->image_height, 4); break; case GAVL_YUVA_32: psnr[0] = psnr_y_8(src1->planes[0], src1->strides[0], src2->planes[0], src2->strides[0], format->image_width, format->image_height, 4); psnr[1] = psnr_uv_8(src1->planes[0]+1, src1->strides[0], src2->planes[0]+1, src2->strides[0], format->image_width, format->image_height, 4); psnr[2] = psnr_uv_8(src1->planes[0]+2, src1->strides[0], src2->planes[0]+2, src2->strides[0], format->image_width, format->image_height, 4); psnr[3] = psnr_8(src1->planes[0]+3, src1->strides[0], src2->planes[0]+3, src2->strides[0], format->image_width, format->image_height, 4); break; case GAVL_RGB_48: psnr[0] = psnr_16(src1->planes[0], src1->strides[0], src2->planes[0], src2->strides[0], format->image_width, format->image_height, 3); psnr[1] = psnr_16(src1->planes[0]+2, src1->strides[0], src2->planes[0]+2, src2->strides[0], format->image_width, format->image_height, 3); psnr[2] = psnr_16(src1->planes[0]+4, src1->strides[0], src2->planes[0]+4, src2->strides[0], format->image_width, format->image_height, 3); break; case GAVL_RGBA_64: psnr[0] = psnr_16(src1->planes[0], src1->strides[0], src2->planes[0], src2->strides[0], format->image_width, format->image_height, 4); psnr[1] = psnr_16(src1->planes[0]+2, src1->strides[0], src2->planes[0]+2, src2->strides[0], format->image_width, format->image_height, 4); psnr[2] = psnr_16(src1->planes[0]+4, src1->strides[0], src2->planes[0]+4, src2->strides[0], format->image_width, format->image_height, 4); psnr[3] = psnr_16(src1->planes[0]+6, src1->strides[0], src2->planes[0]+6, src2->strides[0], format->image_width, format->image_height, 4); break; case GAVL_YUVA_64: psnr[0] = psnr_y_16(src1->planes[0], src1->strides[0], src2->planes[0], src2->strides[0], format->image_width, format->image_height, 4); psnr[1] = psnr_uv_16(src1->planes[0]+2, src1->strides[0], src2->planes[0]+2, src2->strides[0], format->image_width, format->image_height, 4); psnr[2] = psnr_uv_16(src1->planes[0]+4, src1->strides[0], src2->planes[0]+4, src2->strides[0], format->image_width, format->image_height, 4); psnr[3] = psnr_16(src1->planes[0]+6, src1->strides[0], src2->planes[0]+6, src2->strides[0], format->image_width, format->image_height, 4); break; case GAVL_RGB_FLOAT: case GAVL_YUV_FLOAT: psnr[0] = psnr_float(src1->planes[0], src1->strides[0], src2->planes[0], src2->strides[0], format->image_width, format->image_height, 3); psnr[1] = psnr_float(src1->planes[0]+sizeof(float), src1->strides[0], src2->planes[0]+sizeof(float), src2->strides[0], format->image_width, format->image_height, 3); psnr[2] = psnr_float(src1->planes[0]+2*sizeof(float), src1->strides[0], src2->planes[0]+2*sizeof(float), src2->strides[0], format->image_width, format->image_height, 3); break; case GAVL_RGBA_FLOAT: case GAVL_YUVA_FLOAT: psnr[0] = psnr_float(src1->planes[0], src1->strides[0], src2->planes[0], src2->strides[0], format->image_width, format->image_height, 4); psnr[1] = psnr_float(src1->planes[0]+sizeof(float), src1->strides[0], src2->planes[0]+2, src2->strides[0], format->image_width, format->image_height, 4); psnr[2] = psnr_float(src1->planes[0]+2*sizeof(float), src1->strides[0], src2->planes[0]+4, src2->strides[0], format->image_width, format->image_height, 4); psnr[4] = psnr_float(src1->planes[0]+3*sizeof(float), src1->strides[0], src2->planes[0]+4, src2->strides[0], format->image_width, format->image_height, 4); break; case GAVL_YUV_420_P: case GAVL_YUV_410_P: case GAVL_YUV_411_P: case GAVL_YUV_422_P: case GAVL_YUV_444_P: gavl_pixelformat_chroma_sub(format->pixelformat, &sub_h, &sub_v); psnr[0] = psnr_y_8(src1->planes[0], src1->strides[0], src2->planes[0], src2->strides[0], format->image_width, format->image_height, 1); psnr[1] = psnr_uv_8(src1->planes[1], src1->strides[1], src2->planes[1], src2->strides[1], format->image_width/sub_h, format->image_height/sub_v, 1); psnr[2] = psnr_uv_8(src1->planes[2], src1->strides[2], src2->planes[2], src2->strides[2], format->image_width/sub_h, format->image_height/sub_v, 1); break; case GAVL_YUVJ_420_P: case GAVL_YUVJ_422_P: case GAVL_YUVJ_444_P: gavl_pixelformat_chroma_sub(format->pixelformat, &sub_h, &sub_v); psnr[0] = psnr_8(src1->planes[0], src1->strides[0], src2->planes[0], src2->strides[0], format->image_width, format->image_height, 1); psnr[1] = psnr_8(src1->planes[1], src1->strides[1], src2->planes[1], src2->strides[1], format->image_width/sub_h, format->image_height/sub_v, 1); psnr[2] = psnr_8(src1->planes[2], src1->strides[2], src2->planes[2], src2->strides[2], format->image_width/sub_h, format->image_height/sub_v, 1); break; case GAVL_YUV_444_P_16: case GAVL_YUV_422_P_16: gavl_pixelformat_chroma_sub(format->pixelformat, &sub_h, &sub_v); psnr[0] = psnr_y_16(src1->planes[0], src1->strides[0], src2->planes[0], src2->strides[0], format->image_width, format->image_height, 1); psnr[1] = psnr_uv_16(src1->planes[1], src1->strides[1], src2->planes[1], src2->strides[1], format->image_width/sub_h, format->image_height/sub_v, 1); psnr[2] = psnr_uv_16(src1->planes[2], src1->strides[2], src2->planes[2], src2->strides[2], format->image_width/sub_h, format->image_height/sub_v, 1); break; case GAVL_PIXELFORMAT_NONE: break; } if(swap_rgb) { double swp = psnr[0]; psnr[0] = psnr[2]; psnr[2] = swp; } if(gavl_pixelformat_is_gray(format->pixelformat)) num_components = 1; else num_components = 3; if(gavl_pixelformat_has_alpha(format->pixelformat)) num_components++; for(i = 0; i < num_components; i++) psnr[i] = 10 * log10(1/psnr[i]); } bplaum-gavl-b9385e3/gavl/ptscache.c000066400000000000000000000077531513252040200171620ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include #include #include #include #define LOG_DOMAIN "ptscache" #define ALLOC_SIZE 16 struct gavl_packet_pts_cache_s { gavl_packet_t *packets; int packets_alloc; int num_packets; int dynamic; }; gavl_packet_pts_cache_t * gavl_packet_pts_cache_create(int size) { gavl_packet_pts_cache_t * ret = calloc(1, sizeof(*ret)); if(size > 0) { ret->packets = calloc(size, sizeof(*ret->packets)); ret->packets_alloc = size; } else ret->dynamic = 1; return ret; } void gavl_packet_pts_cache_destroy(gavl_packet_pts_cache_t * c) { if(c->packets) free(c->packets); free(c); } void gavl_packet_pts_cache_push_packet(gavl_packet_pts_cache_t *c, const gavl_packet_t * pkt) { if(c->num_packets == c->packets_alloc) { if(c->dynamic) { c->packets_alloc += ALLOC_SIZE; c->packets = realloc(c->packets, c->packets_alloc * sizeof(*c->packets)); memset(c->packets + c->num_packets, 0, (c->packets_alloc - c->num_packets) * sizeof(*c->packets)); } else { gavl_log(GAVL_LOG_WARNING, LOG_DOMAIN, "PTS cache overflow"); gavl_packet_pts_cache_get_first(c, NULL); } } memcpy(&c->packets[c->num_packets], pkt, sizeof(*pkt)); memset(&c->packets[c->num_packets].buf, 0, sizeof(c->packets[c->num_packets].buf)); c->num_packets++; } static void remove_packet(gavl_packet_pts_cache_t *c, int idx) { if(idx < c->num_packets - 1) { memmove(c->packets + idx, c->packets + (idx+1), sizeof(*c->packets) * (c->num_packets - 1 - idx)); } c->num_packets--; } static void return_packet(gavl_packet_pts_cache_t *c, int idx, gavl_packet_t * pkt) { if(pkt) memcpy(pkt, &c->packets[idx], sizeof(*pkt)); remove_packet(c, idx); } #if 0 static void return_video_frame(gavl_packet_pts_cache_t *c, int idx, gavl_video_frame_t * frame) { if(frame) gavl_packet_to_videoframe(&c->packets[idx], frame); remove_packet(c, idx); } #endif int gavl_packet_pts_cache_get_first(gavl_packet_pts_cache_t *c, gavl_video_frame_t * f) { int i; int min_idx = 0; int64_t min_pts; gavl_packet_t pkt; if(c->num_packets == 0) return 0; min_pts = c->packets[0].pts; min_idx = 0; for(i = 1; i < c->num_packets; i++) { if(c->packets[i].pts < min_pts) { min_idx = i; min_pts = c->packets[i].pts; } } return_packet(c, min_idx, &pkt); gavl_packet_to_video_frame_metadata(&pkt, f); return 1; } int gavl_packet_pts_cache_get_by_pts(gavl_packet_pts_cache_t *c, gavl_packet_t * pkt, int64_t pts) { int i = 0; int ret = 0; while(i < c->num_packets) { if(c->packets[i].pts < pts) remove_packet(c, i); else if(c->packets[i].pts == pts) { ret = 1; return_packet(c, i, pkt); break; } else i++; } return ret; } void gavl_packet_pts_cache_clear(gavl_packet_pts_cache_t *c) { c->num_packets = 0; } bplaum-gavl-b9385e3/gavl/rectangle.c000066400000000000000000000257071513252040200173330ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include #include void gavl_rectangle_i_dump(const gavl_rectangle_i_t * r) { fprintf(stderr, "%dx%d+%d+%d", r->w, r->h, r->x, r->y); } void gavl_rectangle_f_dump(const gavl_rectangle_f_t * r) { fprintf(stderr, "%fx%f+%f+%f", r->w, r->h, r->x, r->y); } void gavl_rectangle_i_init(gavl_rectangle_i_t * r) { memset(r, 0, sizeof(*r)); } void gavl_rectangle_f_init(gavl_rectangle_f_t * r) { memset(r, 0, sizeof(*r)); } void gavl_rectangle_i_crop_to_format(gavl_rectangle_i_t * r, const gavl_video_format_t * format) { if(r->x < 0) { r->w += r->x; r->x = 0; } if(r->y < 0) { r->h += r->y; r->y = 0; } /* Check if rectangle is empty */ if((r->x > format->image_width) || (r->y > format->image_height) || (r->w < 0) || (r->h < 0)) { r->x = 0; r->y = 0; r->w = 0; r->h = 0; return; } if(r->w > format->image_width - r->x) r->w = format->image_width - r->x; if(r->h > format->image_height - r->y) r->h = format->image_height - r->y; } #define GAVL_MIN(x, y) (x < y ? x : y); void gavl_rectangle_crop_to_format_noscale(gavl_rectangle_i_t * src_rect, gavl_rectangle_i_t * dst_rect, const gavl_video_format_t * src_format, const gavl_video_format_t * dst_format) { src_rect->w = GAVL_MIN(src_format->image_width, dst_format->image_width); src_rect->h = GAVL_MIN(src_format->image_height, dst_format->image_height); dst_rect->w = src_rect->w; dst_rect->h = src_rect->h; src_rect->x = (src_format->image_width - src_rect->w) / 2; src_rect->y = (src_format->image_height - src_rect->h) / 2; dst_rect->x = (dst_format->image_width - dst_rect->w) / 2; dst_rect->y = (dst_format->image_height - dst_rect->h) / 2; } #undef GAVL_MIN static void crop_dimension_scale_f(double * src_off, double * src_len, uint32_t src_size, double * dst_off_f, double * dst_len_f, uint32_t dst_size) { double scale_factor; double crop; scale_factor = *dst_len_f / *src_len; /* Lower limit (source) */ if(*src_off < 0.0) { crop = - (*src_off); *dst_off_f += (crop*scale_factor); *dst_len_f -= (crop*scale_factor); *src_len -= (crop); *src_off = 0.0; } /* Upper limit (source) */ if(*src_off + *src_len > (double)src_size) { crop = *src_off + *src_len - (double)src_size; *dst_len_f -= (crop*scale_factor); *src_len -= crop; } /* Lower limit (destination) */ if(*dst_off_f < 0.0) { crop = - *dst_off_f; *src_off += (crop/scale_factor); *src_len -= (crop/scale_factor); *dst_len_f -= (crop); *dst_off_f = 0.0; } /* Upper limit (destination) */ if(*dst_off_f + *dst_len_f > (double)dst_size) { crop = *dst_off_f + *dst_len_f - (double)dst_size; *dst_len_f -= (crop); *src_len -= crop/scale_factor; } } static void crop_dimension_scale(double * src_off, double * src_len, uint32_t src_size, int32_t * dst_off, int32_t * dst_len, uint32_t dst_size) { double dst_off_f = *dst_off; double dst_len_f = *dst_len; crop_dimension_scale_f(src_off, src_len, src_size, &dst_off_f, &dst_len_f, dst_size); *dst_len = (int)(dst_len_f+0.5); *dst_off = (int)(dst_off_f+0.5); } void gavl_rectangle_crop_to_format_scale(gavl_rectangle_f_t * src_rect, gavl_rectangle_i_t * dst_rect, const gavl_video_format_t * src_format, const gavl_video_format_t * dst_format) { crop_dimension_scale(&src_rect->x, &src_rect->w, src_format->image_width, &dst_rect->x, &dst_rect->w, dst_format->image_width); crop_dimension_scale(&src_rect->y, &src_rect->h, src_format->image_height, &dst_rect->y, &dst_rect->h, dst_format->image_height); } void gavl_rectangle_crop_to_format_scale_f(gavl_rectangle_f_t * src_rect, gavl_rectangle_f_t * dst_rect, const gavl_video_format_t * src_format, const gavl_video_format_t * dst_format) { crop_dimension_scale_f(&src_rect->x, &src_rect->w, src_format->image_width, &dst_rect->x, &dst_rect->w, dst_format->image_width); crop_dimension_scale_f(&src_rect->y, &src_rect->h, src_format->image_height, &dst_rect->y, &dst_rect->h, dst_format->image_height); } /* Let a rectangle span the whole screen for format */ void gavl_rectangle_i_set_all(gavl_rectangle_i_t * r, const gavl_video_format_t * format) { r->x = 0; r->y = 0; r->w = format->image_width; r->h = format->image_height; } void gavl_rectangle_f_set_all(gavl_rectangle_f_t * r, const gavl_video_format_t * format) { r->x = 0; r->y = 0; r->w = format->image_width; r->h = format->image_height; } void gavl_rectangle_i_crop_left(gavl_rectangle_i_t * r, int num_pixels) { r->x += num_pixels; r->w -= num_pixels; } void gavl_rectangle_i_crop_right(gavl_rectangle_i_t * r, int num_pixels) { r->w -= num_pixels; } void gavl_rectangle_i_crop_top(gavl_rectangle_i_t * r, int num_pixels) { r->y += num_pixels; r->h -= num_pixels; } void gavl_rectangle_i_crop_bottom(gavl_rectangle_i_t * r, int num_pixels) { r->h -= num_pixels; } void gavl_rectangle_f_crop_left(gavl_rectangle_f_t * r, double num_pixels) { r->x += num_pixels; r->w -= num_pixels; } void gavl_rectangle_f_crop_right(gavl_rectangle_f_t * r, double num_pixels) { r->w -= num_pixels; } void gavl_rectangle_f_crop_top(gavl_rectangle_f_t * r, double num_pixels) { r->y += num_pixels; r->h -= num_pixels; } void gavl_rectangle_f_crop_bottom(gavl_rectangle_f_t * r, double num_pixels) { r->h -= num_pixels; } #define PAD(num, multiple) num -= num % multiple void gavl_rectangle_i_align(gavl_rectangle_i_t * r, int h_align, int v_align) { PAD(r->x, h_align); PAD(r->w, h_align); PAD(r->y, v_align); PAD(r->h, v_align); } void gavl_rectangle_i_align_to_format(gavl_rectangle_i_t * r, const gavl_video_format_t * format) { int sub_h = 1, sub_v = 1; if(format->pixelformat != GAVL_PIXELFORMAT_NONE) gavl_pixelformat_chroma_sub(format->pixelformat, &sub_h, &sub_v); gavl_rectangle_i_align(r, sub_h, sub_v); } void gavl_rectangle_f_copy(gavl_rectangle_f_t * dst, const gavl_rectangle_f_t * src) { memcpy(dst, src, sizeof(*dst)); } void gavl_rectangle_i_copy(gavl_rectangle_i_t * dst, const gavl_rectangle_i_t * src) { memcpy(dst, src, sizeof(*dst)); } int gavl_rectangle_i_is_empty(const gavl_rectangle_i_t * r) { return ((r->w <= 0) || (r->h <= 0)) ? 1 : 0; } int gavl_rectangle_f_is_empty(const gavl_rectangle_f_t * r) { return ((r->w <= 0.0) || (r->h <= 0.0)) ? 1 : 0; } /* Assuming we take src_rect from a frame in format src_format, calculate the optimal dst_rect in dst_format. */ void gavl_rectangle_fit_aspect_f(gavl_rectangle_f_t * r, const gavl_video_format_t * src_format, const gavl_rectangle_f_t * src_rect, const gavl_video_format_t * dst_format, float zoom, float squeeze, int do_orient) { float dst_display_aspect; float dst_pixel_aspect; float src_display_aspect; float squeeze_factor; int transposed = 0; if(do_orient && gavl_image_orientation_is_transposed(src_format->orientation)) transposed = 1; squeeze_factor = pow(2.0, squeeze); src_display_aspect = squeeze_factor * src_rect->w * (float)src_format->pixel_width / (src_rect->h * (float)src_format->pixel_height); if(transposed) src_display_aspect = 1.0 / src_display_aspect; dst_pixel_aspect = (float)dst_format->pixel_width / (float)dst_format->pixel_height; dst_display_aspect = dst_pixel_aspect * (float)dst_format->image_width / (float)dst_format->image_height; if(dst_display_aspect > src_display_aspect) /* Bars left and right */ { // fprintf(stderr, "Bars left and right\n"); r->w = (float)dst_format->image_height * src_display_aspect * zoom / dst_pixel_aspect; r->h = (float)dst_format->image_height * zoom; // fprintf(stderr, "Bars left and right %dx%d -> %dx%d (%f, %f)\n", src_rect->w, src_rect->h, r->w, r->h, // (float)(src_rect->w * src_format->pixel_width) / // (float)(src_rect->h * src_format->pixel_height), dst_pixel_aspect); } else /* Bars top and bottom */ { // fprintf(stderr, "Bars top and bottom\n"); r->w = (float)dst_format->image_width * zoom; r->h = (float)dst_format->image_width * zoom * dst_pixel_aspect / src_display_aspect; } r->x = (dst_format->image_width - r->w)/2; r->y = (dst_format->image_height - r->h)/2; } void gavl_rectangle_fit_aspect(gavl_rectangle_i_t * r, const gavl_video_format_t * src_format, const gavl_rectangle_f_t * src_rect, const gavl_video_format_t * dst_format, float zoom, float squeeze) { gavl_rectangle_f_t rf; gavl_rectangle_i_to_f(&rf, r); gavl_rectangle_fit_aspect_f(&rf, src_format, src_rect, dst_format, zoom, squeeze, 0); gavl_rectangle_f_to_i(r, &rf); gavl_rectangle_i_align_to_format(r, dst_format); } void gavl_rectangle_i_to_f(gavl_rectangle_f_t * dst, const gavl_rectangle_i_t * src) { dst->x = (double)src->x; dst->y = (double)src->y; dst->w = (double)src->w; dst->h = (double)src->h; } void gavl_rectangle_f_to_i(gavl_rectangle_i_t * dst, const gavl_rectangle_f_t * src) { dst->x = (int)(src->x+0.5); dst->y = (int)(src->y+0.5); dst->w = (int)(src->w+0.5); dst->h = (int)(src->h+0.5); } bplaum-gavl-b9385e3/gavl/sampleformat.c000066400000000000000000000426521513252040200200570ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include #include #include #include /* Dither context */ struct gavl_audio_dither_context_s { GDither dither; }; void gavl_audio_dither_context_destroy(gavl_audio_dither_context_t* ctx) { gdither_free(ctx->dither); free(ctx); } static void convert_gdither_ni_f(gavl_audio_convert_context_t * ctx) { int i; // fprintf(stderr, "Convert gdither\n"); for(i = 0; i < ctx->input_format.num_channels; i++) { gdither_runf(ctx->dither_context->dither, 0, ctx->input_frame->valid_samples, ctx->input_frame->channels.f[i], ctx->output_frame->channels.u_8[i]); } } static void convert_gdither_s8_ni_f(gavl_audio_convert_context_t * ctx) { int i, j; for(i = 0; i < ctx->input_format.num_channels; i++) { gdither_runf(ctx->dither_context->dither, 0, ctx->input_frame->valid_samples, ctx->input_frame->channels.f[i], ctx->output_frame->channels.s_8[i]); for(j = 0; j < ctx->input_frame->valid_samples; j++) ctx->output_frame->channels.s_8[i][j] ^= 0x80; } } static void convert_gdither_u16_ni_f(gavl_audio_convert_context_t * ctx) { int i, j; for(i = 0; i < ctx->input_format.num_channels; i++) { gdither_runf(ctx->dither_context->dither, 0, ctx->input_frame->valid_samples, ctx->input_frame->channels.f[i], ctx->output_frame->channels.u_16[i]); for(j = 0; j < ctx->input_frame->valid_samples; j++) ctx->output_frame->channels.u_16[i][j] ^= 0x8000; } } static void convert_gdither_i_f(gavl_audio_convert_context_t * ctx) { gdither_runf(ctx->dither_context->dither, 0, ctx->input_format.num_channels * ctx->input_frame->valid_samples, ctx->input_frame->samples.f, ctx->output_frame->samples.u_8); } static void convert_gdither_s8_i_f(gavl_audio_convert_context_t * ctx) { int j, jmax; jmax = ctx->input_format.num_channels * ctx->input_frame->valid_samples; gdither_runf(ctx->dither_context->dither, 0, jmax, ctx->input_frame->samples.f, ctx->output_frame->samples.s_8); for(j = 0; j < jmax; j++) ctx->output_frame->samples.s_8[j] ^= 0x80; } static void convert_gdither_u16_i_f(gavl_audio_convert_context_t * ctx) { int j, jmax; jmax = ctx->input_format.num_channels * ctx->input_frame->valid_samples; gdither_runf(ctx->dither_context->dither, 0, jmax, ctx->input_frame->samples.f, ctx->output_frame->samples.u_16); for(j = 0; j < jmax; j++) ctx->output_frame->samples.u_16[j] ^= 0x8000; } /* */ static void convert_gdither_ni_d(gavl_audio_convert_context_t * ctx) { int i; // fprintf(stderr, "Convert gdither\n"); for(i = 0; i < ctx->input_format.num_channels; i++) { gdither_run(ctx->dither_context->dither, 0, ctx->input_frame->valid_samples, ctx->input_frame->channels.d[i], ctx->output_frame->channels.u_8[i]); } } static void convert_gdither_s8_ni_d(gavl_audio_convert_context_t * ctx) { int i, j; for(i = 0; i < ctx->input_format.num_channels; i++) { gdither_run(ctx->dither_context->dither, 0, ctx->input_frame->valid_samples, ctx->input_frame->channels.d[i], ctx->output_frame->channels.s_8[i]); for(j = 0; j < ctx->input_frame->valid_samples; j++) ctx->output_frame->channels.s_8[i][j] ^= 0x80; } } static void convert_gdither_u16_ni_d(gavl_audio_convert_context_t * ctx) { int i, j; for(i = 0; i < ctx->input_format.num_channels; i++) { gdither_run(ctx->dither_context->dither, 0, ctx->input_frame->valid_samples, ctx->input_frame->channels.d[i], ctx->output_frame->channels.u_16[i]); for(j = 0; j < ctx->input_frame->valid_samples; j++) ctx->output_frame->channels.u_16[i][j] ^= 0x8000; } } static void convert_gdither_i_d(gavl_audio_convert_context_t * ctx) { gdither_run(ctx->dither_context->dither, 0, ctx->input_format.num_channels * ctx->input_frame->valid_samples, ctx->input_frame->samples.d, ctx->output_frame->samples.u_8); } static void convert_gdither_s8_i_d(gavl_audio_convert_context_t * ctx) { int j, jmax; jmax = ctx->input_format.num_channels * ctx->input_frame->valid_samples; gdither_run(ctx->dither_context->dither, 0, jmax, ctx->input_frame->samples.d, ctx->output_frame->samples.s_8); for(j = 0; j < jmax; j++) ctx->output_frame->samples.s_8[j] ^= 0x80; } static void convert_gdither_u16_i_d(gavl_audio_convert_context_t * ctx) { int j, jmax; jmax = ctx->input_format.num_channels * ctx->input_frame->valid_samples; gdither_run(ctx->dither_context->dither, 0, jmax, ctx->input_frame->samples.d, ctx->output_frame->samples.u_16); for(j = 0; j < jmax; j++) ctx->output_frame->samples.u_16[j] ^= 0x8000; } gavl_sampleformat_table_t * gavl_create_sampleformat_table(gavl_audio_options_t * opt, gavl_interleave_mode_t interleave_mode) { gavl_sampleformat_table_t * ret = calloc(1, sizeof(*ret)); if(opt->quality || (opt->accel_flags & GAVL_ACCEL_C)) gavl_init_sampleformat_funcs_c(ret, interleave_mode); return ret; } static GDitherType get_dither_type(gavl_audio_options_t * opt) { switch(opt->dither_mode) { case GAVL_AUDIO_DITHER_NONE: return GDitherNone; break; case GAVL_AUDIO_DITHER_RECT: return GDitherRect; break; case GAVL_AUDIO_DITHER_TRI: return GDitherTri; break; case GAVL_AUDIO_DITHER_SHAPED: return GDitherShaped; break; case GAVL_AUDIO_DITHER_AUTO: switch(opt->quality) { case 1: case 2: return GDitherNone; break; case 3: return GDitherRect; break; case 4: return GDitherTri; break; case 5: return GDitherShaped; break; } break; } return GDitherNone; } /* Create sampleformat converter. Samples are interleaved or non interleaved */ gavl_audio_convert_context_t * gavl_sampleformat_context_create(gavl_audio_options_t * opt, gavl_audio_format_t * in_format, gavl_audio_format_t * out_format) { gavl_audio_convert_context_t * ret; /* Native sampleformat conversion routines */ gavl_sampleformat_table_t * table; /* libgdither support */ GDitherType dither_type; GDitherSize dither_bit_depth; int dither_depth; #if 0 fprintf(stderr, "Gavl: initializing sampleformat converter %s -> %s\n", gavl_sample_format_to_string(in_format->sample_format), gavl_sample_format_to_string(out_format->sample_format)); #endif ret = gavl_audio_convert_context_create(in_format, out_format); ret->output_format.sample_format = out_format->sample_format; dither_type = get_dither_type(opt); if((dither_type == GDitherNone) || (gavl_bytes_per_sample(out_format->sample_format) > 2) || (in_format->sample_format < GAVL_SAMPLE_FLOAT)) { table = gavl_create_sampleformat_table(opt, in_format->interleave_mode); ret->func = gavl_find_sampleformat_converter(table, &ret->input_format, &ret->output_format); /* if(!ret->func) */ /* fprintf(stderr, "No function found\n"); */ gavl_destroy_sampleformat_table(table); } else { switch(out_format->sample_format) { case GAVL_SAMPLE_U8: dither_bit_depth = GDither8bit; dither_depth = 8; if(in_format->sample_format == GAVL_SAMPLE_DOUBLE) { if(in_format->interleave_mode == GAVL_INTERLEAVE_NONE) ret->func = convert_gdither_ni_d; else if(in_format->interleave_mode == GAVL_INTERLEAVE_ALL) ret->func = convert_gdither_i_d; } else { if(in_format->interleave_mode == GAVL_INTERLEAVE_NONE) ret->func = convert_gdither_ni_f; else if(in_format->interleave_mode == GAVL_INTERLEAVE_ALL) ret->func = convert_gdither_i_f; } break; case GAVL_SAMPLE_S8: dither_bit_depth = GDither8bit; dither_depth = 8; if(in_format->sample_format == GAVL_SAMPLE_DOUBLE) { if(in_format->interleave_mode == GAVL_INTERLEAVE_NONE) ret->func = convert_gdither_s8_ni_d; else if(in_format->interleave_mode == GAVL_INTERLEAVE_ALL) ret->func = convert_gdither_s8_i_d; } else { if(in_format->interleave_mode == GAVL_INTERLEAVE_NONE) ret->func = convert_gdither_s8_ni_f; else if(in_format->interleave_mode == GAVL_INTERLEAVE_ALL) ret->func = convert_gdither_s8_i_f; } break; case GAVL_SAMPLE_U16: dither_bit_depth = GDither16bit; dither_depth = 16; if(in_format->sample_format == GAVL_SAMPLE_DOUBLE) { if(in_format->interleave_mode == GAVL_INTERLEAVE_NONE) ret->func = convert_gdither_u16_ni_d; else if(in_format->interleave_mode == GAVL_INTERLEAVE_ALL) ret->func = convert_gdither_u16_i_d; } else { if(in_format->interleave_mode == GAVL_INTERLEAVE_NONE) ret->func = convert_gdither_u16_ni_f; else if(in_format->interleave_mode == GAVL_INTERLEAVE_ALL) ret->func = convert_gdither_u16_i_f; } break; case GAVL_SAMPLE_S16: dither_bit_depth = GDither16bit; dither_depth = 16; if(in_format->sample_format == GAVL_SAMPLE_DOUBLE) { if(in_format->interleave_mode == GAVL_INTERLEAVE_NONE) ret->func = convert_gdither_ni_d; else if(in_format->interleave_mode == GAVL_INTERLEAVE_ALL) ret->func = convert_gdither_i_d; } else { if(in_format->interleave_mode == GAVL_INTERLEAVE_NONE) ret->func = convert_gdither_ni_f; else if(in_format->interleave_mode == GAVL_INTERLEAVE_ALL) ret->func = convert_gdither_i_f; } break; default: fprintf(stderr, "BUG: Invalid dither initialization\n"); fprintf(stderr, "Input format\n"); gavl_audio_format_dump(&ret->input_format); fprintf(stderr, "Output format\n"); gavl_audio_format_dump(&ret->output_format); return NULL; } /* Dither (float -> 8/16 bit) */ ret->dither_context = calloc(1, sizeof(*(ret->dither_context))); // fprintf(stderr, "Gdither, %d %d %d\n", dither_type, // dither_bit_depth, dither_depth); ret->dither_context->dither = gdither_new(dither_type, 1, dither_bit_depth, dither_depth); } return ret; } gavl_audio_func_t gavl_find_sampleformat_converter(gavl_sampleformat_table_t * t, gavl_audio_format_t * in, gavl_audio_format_t * out) { switch(in->sample_format) { case GAVL_SAMPLE_U8: switch(out->sample_format) { case GAVL_SAMPLE_U8: // Nothing break; case GAVL_SAMPLE_S8: return t->swap_sign_8; break; case GAVL_SAMPLE_U16: return t->u_8_to_u_16; break; case GAVL_SAMPLE_S16: return t->u_8_to_s_16; break; case GAVL_SAMPLE_S32: return t->u_8_to_s_32; break; case GAVL_SAMPLE_FLOAT: return t->convert_u8_to_float; break; case GAVL_SAMPLE_DOUBLE: return t->convert_u8_to_double; break; case GAVL_SAMPLE_NONE: break; } break; case GAVL_SAMPLE_S8: switch(out->sample_format) { case GAVL_SAMPLE_U8: return t->swap_sign_8; break; case GAVL_SAMPLE_S8: // Nothing break; case GAVL_SAMPLE_U16: return t->s_8_to_u_16; break; case GAVL_SAMPLE_S16: return t->s_8_to_s_16; break; case GAVL_SAMPLE_S32: return t->s_8_to_s_32; break; case GAVL_SAMPLE_FLOAT: return t->convert_s8_to_float; break; case GAVL_SAMPLE_DOUBLE: return t->convert_s8_to_double; break; case GAVL_SAMPLE_NONE: break; } break; case GAVL_SAMPLE_U16: switch(out->sample_format) { case GAVL_SAMPLE_U8: return t->convert_16_to_8; break; case GAVL_SAMPLE_S8: return t->convert_16_to_8_swap; break; case GAVL_SAMPLE_U16: // Nothing break; case GAVL_SAMPLE_S16: return t->swap_sign_16; break; case GAVL_SAMPLE_S32: return t->u_16_to_s_32; break; case GAVL_SAMPLE_FLOAT: return t->convert_u16_to_float; break; case GAVL_SAMPLE_DOUBLE: return t->convert_u16_to_double; break; case GAVL_SAMPLE_NONE: break; } break; case GAVL_SAMPLE_S16: switch(out->sample_format) { case GAVL_SAMPLE_U8: return t->convert_16_to_8_swap; break; case GAVL_SAMPLE_S8: return t->convert_16_to_8; break; case GAVL_SAMPLE_U16: return t->swap_sign_16; break; case GAVL_SAMPLE_S16: // Nothing break; case GAVL_SAMPLE_S32: return t->s_16_to_s_32; break; case GAVL_SAMPLE_FLOAT: return t->convert_s16_to_float; break; case GAVL_SAMPLE_DOUBLE: return t->convert_s16_to_double; break; case GAVL_SAMPLE_NONE: break; } break; case GAVL_SAMPLE_S32: switch(out->sample_format) { case GAVL_SAMPLE_U8: return t->convert_32_to_8_swap; break; case GAVL_SAMPLE_S8: return t->convert_32_to_8; break; case GAVL_SAMPLE_U16: return t->convert_32_to_16_swap; break; case GAVL_SAMPLE_S16: return t->convert_32_to_16; break; case GAVL_SAMPLE_S32: // Nothing break; case GAVL_SAMPLE_FLOAT: return t->convert_s32_to_float; break; case GAVL_SAMPLE_DOUBLE: return t->convert_s32_to_double; break; case GAVL_SAMPLE_NONE: break; } break; case GAVL_SAMPLE_FLOAT: switch(out->sample_format) { case GAVL_SAMPLE_U8: return t->convert_float_to_u8; break; case GAVL_SAMPLE_S8: return t->convert_float_to_s8; break; case GAVL_SAMPLE_U16: return t->convert_float_to_u16; break; case GAVL_SAMPLE_S16: return t->convert_float_to_s16; break; case GAVL_SAMPLE_S32: return t->convert_float_to_s32; break; case GAVL_SAMPLE_FLOAT: // Nothing break; case GAVL_SAMPLE_DOUBLE: return t->convert_float_to_double; break; case GAVL_SAMPLE_NONE: break; } break; case GAVL_SAMPLE_DOUBLE: switch(out->sample_format) { case GAVL_SAMPLE_U8: return t->convert_double_to_u8; break; case GAVL_SAMPLE_S8: return t->convert_double_to_s8; break; case GAVL_SAMPLE_U16: return t->convert_double_to_u16; break; case GAVL_SAMPLE_S16: return t->convert_double_to_s16; break; case GAVL_SAMPLE_S32: return t->convert_double_to_s32; break; case GAVL_SAMPLE_FLOAT: return t->convert_double_to_float; break; case GAVL_SAMPLE_DOUBLE: // Nothing break; case GAVL_SAMPLE_NONE: break; } break; case GAVL_SAMPLE_NONE: break; } return NULL; } void gavl_destroy_sampleformat_table(gavl_sampleformat_table_t * t) { free(t); } bplaum-gavl-b9385e3/gavl/samplerate.c000066400000000000000000000301121513252040200175060ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ /* Interface file for the Sectret Rabbit samplerate converter */ // http://www.mega-nerd.com/SRC/ // http://freshmeat.net/projects/libsamplerate #include #include #include #include // #define DUMP_SAMPLE_COUNTS static int get_filter_type(gavl_audio_options_t * opt) { switch(opt->resample_mode) { case GAVL_RESAMPLE_AUTO: switch(opt->quality) { case 1: return SRC_ZERO_ORDER_HOLD; break; case 2: return SRC_LINEAR; break; case 3: return SRC_SINC_FASTEST; break; case 4: return SRC_SINC_MEDIUM_QUALITY; break; case 5: return SRC_SINC_BEST_QUALITY; break; } break; case GAVL_RESAMPLE_LINEAR: return SRC_LINEAR; break; case GAVL_RESAMPLE_ZOH: return SRC_ZERO_ORDER_HOLD; break; case GAVL_RESAMPLE_SINC_FAST: return SRC_SINC_FASTEST; break; case GAVL_RESAMPLE_SINC_MEDIUM: return SRC_SINC_MEDIUM_QUALITY; break; case GAVL_RESAMPLE_SINC_BEST: return SRC_SINC_BEST_QUALITY; break; } return SRC_LINEAR; } #define GET_OUTPUT_SAMPLES(ni, r) (int)((double)(ni)*(r)+10.5) static void resample_interleave_none_f(gavl_audio_convert_context_t * ctx) { int i, result; for(i = 0; i < ctx->samplerate_converter->num_resamplers; i++) { ctx->samplerate_converter->data.input_frames = ctx->input_frame->valid_samples; ctx->samplerate_converter->data.output_frames = GET_OUTPUT_SAMPLES(ctx->input_frame->valid_samples, ctx->samplerate_converter->ratio); ctx->samplerate_converter->data.data_in_f = ctx->input_frame->channels.f[i]; ctx->samplerate_converter->data.data_out_f = ctx->output_frame->channels.f[i]; result = gavl_src_process(ctx->samplerate_converter->resamplers[i], &ctx->samplerate_converter->data); if(result) { fprintf(stderr, "gavl_src_process returned %s (%p)\n", gavl_src_strerror(result), ctx->output_frame->samples.f); break; } } ctx->output_frame->valid_samples = ctx->samplerate_converter->data.output_frames_gen; #ifdef DUMP_SAMPLE_COUNTS gavl_dprintf("Resampled %d -> %ld\n", ctx->input_frame->valid_samples, ctx->samplerate_converter->data.output_frames_gen); #endif } static void resample_interleave_2_f(gavl_audio_convert_context_t * ctx) { int i; ctx->samplerate_converter->data.input_frames = ctx->input_frame->valid_samples; ctx->samplerate_converter->data.output_frames = GET_OUTPUT_SAMPLES(ctx->input_frame->valid_samples, ctx->samplerate_converter->ratio); for(i = 0; i < ctx->samplerate_converter->num_resamplers; i++) { ctx->samplerate_converter->data.data_in_f = ctx->input_frame->channels.f[2*i]; ctx->samplerate_converter->data.data_out_f = ctx->output_frame->channels.f[2*i]; gavl_src_process(ctx->samplerate_converter->resamplers[i], &ctx->samplerate_converter->data); } ctx->output_frame->valid_samples = ctx->samplerate_converter->data.output_frames_gen; #ifdef DUMP_SAMPLE_COUNTS gavl_dprintf("Resampled %d -> %ld\n", ctx->input_frame->valid_samples, ctx->samplerate_converter->data.output_frames_gen); #endif } static void resample_interleave_all_f(gavl_audio_convert_context_t * ctx) { ctx->samplerate_converter->data.input_frames = ctx->input_frame->valid_samples; ctx->samplerate_converter->data.output_frames = GET_OUTPUT_SAMPLES(ctx->input_frame->valid_samples, ctx->samplerate_converter->ratio); ctx->samplerate_converter->data.data_in_f = ctx->input_frame->samples.f; ctx->samplerate_converter->data.data_out_f = ctx->output_frame->samples.f; gavl_src_process(ctx->samplerate_converter->resamplers[0], &ctx->samplerate_converter->data); ctx->output_frame->valid_samples = ctx->samplerate_converter->data.output_frames_gen; #ifdef DUMP_SAMPLE_COUNTS gavl_dprintf("Resampled %d -> %ld\n", ctx->input_frame->valid_samples, ctx->samplerate_converter->data.output_frames_gen); #endif } static void resample_interleave_none_d(gavl_audio_convert_context_t * ctx) { int i, result; for(i = 0; i < ctx->samplerate_converter->num_resamplers; i++) { ctx->samplerate_converter->data.input_frames = ctx->input_frame->valid_samples; ctx->samplerate_converter->data.output_frames = GET_OUTPUT_SAMPLES(ctx->input_frame->valid_samples, ctx->samplerate_converter->ratio); ctx->samplerate_converter->data.data_in_d = ctx->input_frame->channels.d[i]; ctx->samplerate_converter->data.data_out_d = ctx->output_frame->channels.d[i]; result = gavl_src_process(ctx->samplerate_converter->resamplers[i], &ctx->samplerate_converter->data); if(result) { fprintf(stderr, "gavl_src_process returned %s (%p)\n", gavl_src_strerror(result), ctx->output_frame->samples.f); break; } } ctx->output_frame->valid_samples = ctx->samplerate_converter->data.output_frames_gen; } static void resample_interleave_2_d(gavl_audio_convert_context_t * ctx) { int i; ctx->samplerate_converter->data.input_frames = ctx->input_frame->valid_samples; ctx->samplerate_converter->data.output_frames = GET_OUTPUT_SAMPLES(ctx->input_frame->valid_samples, ctx->samplerate_converter->ratio); for(i = 0; i < ctx->samplerate_converter->num_resamplers; i++) { ctx->samplerate_converter->data.data_in_d = ctx->input_frame->channels.d[2*i]; ctx->samplerate_converter->data.data_out_d = ctx->output_frame->channels.d[2*i]; gavl_src_process(ctx->samplerate_converter->resamplers[i], &ctx->samplerate_converter->data); } ctx->output_frame->valid_samples = ctx->samplerate_converter->data.output_frames_gen; } static void resample_interleave_all_d(gavl_audio_convert_context_t * ctx) { ctx->samplerate_converter->data.input_frames = ctx->input_frame->valid_samples; ctx->samplerate_converter->data.output_frames = GET_OUTPUT_SAMPLES(ctx->input_frame->valid_samples, ctx->samplerate_converter->ratio); ctx->samplerate_converter->data.data_in_d = ctx->input_frame->samples.d; ctx->samplerate_converter->data.data_out_d = ctx->output_frame->samples.d; gavl_src_process(ctx->samplerate_converter->resamplers[0], &ctx->samplerate_converter->data); ctx->output_frame->valid_samples = ctx->samplerate_converter->data.output_frames_gen; } static void init_interleave_none(gavl_audio_convert_context_t * ctx, gavl_audio_options_t * opt, gavl_audio_format_t * input_format, gavl_audio_format_t * output_format, int d) { int i, error = 0, filter_type; filter_type = get_filter_type(opt); /* No interleaving: num_channels resamplers */ ctx->samplerate_converter->num_resamplers = input_format->num_channels; ctx->samplerate_converter->resamplers = calloc(ctx->samplerate_converter->num_resamplers, sizeof(*(ctx->samplerate_converter->resamplers))); for(i = 0; i < ctx->samplerate_converter->num_resamplers; i++) { ctx->samplerate_converter->resamplers[i] = gavl_src_new(filter_type, 1, &error, d); } if(d) ctx->func = resample_interleave_none_d; else ctx->func = resample_interleave_none_f; } static void init_interleave_2(gavl_audio_convert_context_t * ctx, gavl_audio_options_t * opt, gavl_audio_format_t * input_format, gavl_audio_format_t * output_format, int d) { int i, error = 0, filter_type; int num_channels; filter_type = get_filter_type(opt); ctx->samplerate_converter->num_resamplers = (input_format->num_channels+1)/2; ctx->samplerate_converter->resamplers = calloc(ctx->samplerate_converter->num_resamplers, sizeof(*(ctx->samplerate_converter->resamplers))); for(i = 0; i < ctx->samplerate_converter->num_resamplers; i++) { num_channels = ((input_format->num_channels % 2) && (i == ctx->samplerate_converter->num_resamplers - 1)) ? 1 : 2; ctx->samplerate_converter->resamplers[i] = gavl_src_new(filter_type, num_channels, &error, d); } if(d) ctx->func = resample_interleave_2_d; else ctx->func = resample_interleave_2_f; } static void init_interleave_all(gavl_audio_convert_context_t * ctx, gavl_audio_options_t * opt, gavl_audio_format_t * input_format, gavl_audio_format_t * output_format, int d) { int error = 0; ctx->samplerate_converter->num_resamplers = 1; ctx->samplerate_converter->resamplers = calloc(ctx->samplerate_converter->num_resamplers, sizeof(*(ctx->samplerate_converter->resamplers))); ctx->samplerate_converter->resamplers[0] = gavl_src_new(get_filter_type(opt), input_format->num_channels, &error, d); if(d) ctx->func = resample_interleave_all_d; else ctx->func = resample_interleave_all_f; } gavl_audio_convert_context_t * gavl_samplerate_context_create(gavl_audio_options_t * opt, gavl_audio_format_t * input_format, gavl_audio_format_t * output_format) { gavl_audio_convert_context_t * ret; int d; ret = gavl_audio_convert_context_create(input_format, output_format); ret->samplerate_converter = calloc(1, sizeof(*(ret->samplerate_converter))); d = (input_format->sample_format == GAVL_SAMPLE_DOUBLE) ? 1 : 0; if(input_format->num_channels > 1) { switch(input_format->interleave_mode) { case GAVL_INTERLEAVE_NONE: init_interleave_none(ret, opt, input_format, output_format, d); break; case GAVL_INTERLEAVE_2: init_interleave_2(ret, opt, input_format, output_format, d); break; case GAVL_INTERLEAVE_ALL: init_interleave_all(ret, opt, input_format, output_format, d); break; } } else init_interleave_none(ret, opt, input_format, output_format, d); ret->samplerate_converter->ratio = (double)(output_format->samplerate)/(double)(input_format->samplerate); #if 0 fprintf(stderr, "Doing samplerate conversion, %d -> %d (Ratio: %f)\n", input_format->samplerate, output_format->samplerate, ret->samplerate_converter->ratio); #endif #if 0 for(i = 0; i < ret->samplerate_converter->num_resamplers; i++) gavl_src_set_ratio(ret->samplerate_converter->resamplers[i], ret->samplerate_converter->ratio); #endif ret->samplerate_converter->data.src_ratio = ret->samplerate_converter->ratio; return ret; } void gavl_samplerate_converter_destroy(gavl_samplerate_converter_t * s) { int i; for(i = 0; i < s->num_resamplers; i++) { gavl_src_delete(s->resamplers[i]); } free(s->resamplers); free(s); } bplaum-gavl-b9385e3/gavl/scale.c000066400000000000000000000521021513252040200164430ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include #include #include #include #include #include // #define DUMP_TABLES #define SCALE_ACTION_NOOP 0 #define SCALE_ACTION_COPY 1 #define SCALE_ACTION_SCALE 2 /* Public functions */ void gavl_video_scaler_destroy(gavl_video_scaler_t * s) { int i, j; gavl_video_frame_null(s->src); gavl_video_frame_null(s->dst); gavl_video_frame_destroy(s->src); gavl_video_frame_destroy(s->dst); for(i = 0; i < 3; i++) { for(j = 0; j < GAVL_MAX_PLANES; j++) { gavl_video_scale_context_cleanup(&s->contexts[i][j]); } } free(s); } gavl_video_scaler_t * gavl_video_scaler_create() { gavl_video_scaler_t * ret; int i, j; ret = calloc(1, sizeof(*ret)); ret->src = gavl_video_frame_create(NULL); ret->dst = gavl_video_frame_create(NULL); gavl_video_options_set_defaults(&ret->opt); for(i = 0; i < 3; i++) { for(j = 0; j < GAVL_MAX_PLANES; j++) ret->contexts[i][j].opt = &ret->opt; } return ret; } void gavl_init_scale_funcs(gavl_scale_funcs_t * tab, gavl_video_options_t * opt, int src_advance, int dst_advance, gavl_video_scale_table_t * tab_h, gavl_video_scale_table_t * tab_v) { gavl_video_scale_table_t * scale_table; memset(tab, 0, sizeof(*tab)); /* Only nearest is faster for x && y */ if(tab_h && tab_v) { if((tab_h->factors_per_pixel == 1) && (tab_v->factors_per_pixel == 1) && ((opt->quality > 0) || (opt->accel_flags & GAVL_ACCEL_C))) gavl_init_scale_funcs_nearest_c(tab, src_advance, dst_advance); return; } scale_table = (tab_h ? tab_h : tab_v); if(scale_table->factors_per_pixel < 1) return; /* Get scale functions */ switch(scale_table->factors_per_pixel) { case 1: if((opt->quality > 0) || (opt->accel_flags & GAVL_ACCEL_C)) gavl_init_scale_funcs_nearest_c(tab, src_advance, dst_advance); break; case 2: if((opt->quality > 0) || (opt->accel_flags & GAVL_ACCEL_C)) { if(scale_table->do_clip) gavl_init_scale_funcs_bilinear_c(tab); else { gavl_init_scale_funcs_bilinear_noclip_c(tab); if(scale_table->normalized) gavl_init_scale_funcs_bilinear_fast_c(tab); } } #ifdef HAVE_MMX if((opt->quality < 3) && (opt->accel_flags & GAVL_ACCEL_MMX)) { gavl_init_scale_funcs_bilinear_y_mmx(tab, src_advance, dst_advance); gavl_init_scale_funcs_bilinear_x_mmx(tab, src_advance, dst_advance); } if((opt->quality < 3) && (opt->accel_flags & GAVL_ACCEL_MMXEXT)) { gavl_init_scale_funcs_bilinear_y_mmxext(tab, src_advance, dst_advance); gavl_init_scale_funcs_bilinear_x_mmxext(tab, src_advance, dst_advance); } #endif #ifdef HAVE_SSE if(opt->accel_flags & GAVL_ACCEL_SSE) { gavl_init_scale_funcs_bilinear_y_sse(tab, src_advance, dst_advance); gavl_init_scale_funcs_bilinear_x_sse(tab); } #endif #ifdef HAVE_SSE2 if((opt->quality < 3) && (opt->accel_flags & GAVL_ACCEL_SSE2)) { gavl_init_scale_funcs_bilinear_y_sse2(tab, src_advance, dst_advance); // gavl_init_scale_funcs_bilinear_x_sse2(tab, src_advance, dst_advance); } #endif break; case 3: if((opt->quality > 0) || (opt->accel_flags & GAVL_ACCEL_C)) { if(scale_table->do_clip) gavl_init_scale_funcs_quadratic_c(tab); else gavl_init_scale_funcs_quadratic_noclip_c(tab); } #ifdef HAVE_MMX if((opt->quality < 3) && (opt->accel_flags & GAVL_ACCEL_MMX)) { gavl_init_scale_funcs_quadratic_y_mmx(tab, src_advance, dst_advance); gavl_init_scale_funcs_quadratic_x_mmx(tab, src_advance, dst_advance); } if((opt->quality < 3) && (opt->accel_flags & GAVL_ACCEL_MMXEXT)) { gavl_init_scale_funcs_quadratic_y_mmxext(tab, src_advance, dst_advance); gavl_init_scale_funcs_quadratic_x_mmxext(tab, src_advance, dst_advance); } #endif #ifdef HAVE_SSE if(opt->accel_flags & GAVL_ACCEL_SSE) { gavl_init_scale_funcs_quadratic_y_sse(tab, src_advance, dst_advance); gavl_init_scale_funcs_quadratic_x_sse(tab); } #endif #ifdef HAVE_SSE2 if((opt->quality < 3) && (opt->accel_flags & GAVL_ACCEL_SSE2)) { gavl_init_scale_funcs_quadratic_y_sse2(tab, src_advance, dst_advance); // gavl_init_scale_funcs_quadratic_x_sse2(tab, src_advance, dst_advance); } #endif break; case 4: if(!scale_table->do_clip) { if((opt->quality > 0) || (opt->accel_flags & GAVL_ACCEL_C)) gavl_init_scale_funcs_bicubic_noclip_c(tab); #ifdef HAVE_MMX if((opt->quality < 3) && (opt->accel_flags & GAVL_ACCEL_MMX)) { gavl_init_scale_funcs_bicubic_y_mmx(tab, src_advance, dst_advance); gavl_init_scale_funcs_bicubic_noclip_x_mmx(tab, src_advance, dst_advance); } if((opt->quality < 3) && (opt->accel_flags & GAVL_ACCEL_MMXEXT)) { gavl_init_scale_funcs_bicubic_y_mmxext(tab, src_advance, dst_advance); gavl_init_scale_funcs_bicubic_noclip_x_mmxext(tab, src_advance, dst_advance); } #endif #ifdef HAVE_SSE if(opt->accel_flags & GAVL_ACCEL_SSE) { gavl_init_scale_funcs_bicubic_y_noclip_sse(tab, src_advance, dst_advance); gavl_init_scale_funcs_bicubic_x_noclip_sse(tab); } #endif #ifdef HAVE_SSE2 if((opt->quality < 3) && (opt->accel_flags & GAVL_ACCEL_SSE2)) { gavl_init_scale_funcs_bicubic_y_noclip_sse2(tab, src_advance, dst_advance); // gavl_init_scale_funcs_bicubic_x_sse2(tab, src_advance, dst_advance); } #endif #ifdef HAVE_SSE3 if(opt->accel_flags & GAVL_ACCEL_SSE3) { gavl_init_scale_funcs_bicubic_x_noclip_sse3(tab); } #endif } else { if((opt->quality > 0) || (opt->accel_flags & GAVL_ACCEL_C)) gavl_init_scale_funcs_bicubic_c(tab); #ifdef HAVE_MMX if((opt->quality < 3) && (opt->accel_flags & GAVL_ACCEL_MMX)) { gavl_init_scale_funcs_bicubic_y_mmx(tab, src_advance, dst_advance); gavl_init_scale_funcs_bicubic_x_mmx(tab, src_advance, dst_advance); } if((opt->quality < 3) && (opt->accel_flags & GAVL_ACCEL_MMXEXT)) { gavl_init_scale_funcs_bicubic_y_mmxext(tab, src_advance, dst_advance); gavl_init_scale_funcs_bicubic_x_mmxext(tab, src_advance, dst_advance); } #endif #ifdef HAVE_SSE if(opt->accel_flags & GAVL_ACCEL_SSE) { gavl_init_scale_funcs_bicubic_y_sse(tab, src_advance, dst_advance); gavl_init_scale_funcs_bicubic_x_sse(tab); } #endif #ifdef HAVE_SSE2 if((opt->quality < 3) && (opt->accel_flags & GAVL_ACCEL_SSE2)) { gavl_init_scale_funcs_bicubic_y_sse2(tab, src_advance, dst_advance); // gavl_init_scale_funcs_bicubic_x_sse2(tab, src_advance, dst_advance); } #endif #ifdef HAVE_SSE3 if(opt->accel_flags & GAVL_ACCEL_SSE3) { gavl_init_scale_funcs_bicubic_x_sse3(tab); } #endif } break; default: if((opt->quality > 0) || (opt->accel_flags & GAVL_ACCEL_C)) gavl_init_scale_funcs_generic_c(tab); #ifdef HAVE_MMX if((opt->quality < 3) && (opt->accel_flags & GAVL_ACCEL_MMX)) { gavl_init_scale_funcs_generic_y_mmx(tab, src_advance, dst_advance); gavl_init_scale_funcs_generic_x_mmx(tab, src_advance, dst_advance); } if((opt->quality < 3) && (opt->accel_flags & GAVL_ACCEL_MMXEXT)) { gavl_init_scale_funcs_generic_y_mmxext(tab, src_advance, dst_advance); gavl_init_scale_funcs_generic_x_mmxext(tab, src_advance, dst_advance); } #endif #ifdef HAVE_SSE if(opt->accel_flags & GAVL_ACCEL_SSE) { gavl_init_scale_funcs_generic_y_sse(tab, src_advance, dst_advance); gavl_init_scale_funcs_generic_x_sse(tab); } #endif #ifdef HAVE_SSE2 if((opt->quality < 3) && (opt->accel_flags & GAVL_ACCEL_SSE2)) { gavl_init_scale_funcs_generic_y_sse2(tab, src_advance, dst_advance); // gavl_init_scale_funcs_generic_x_sse2(tab, src_advance, dst_advance); } #endif #ifdef HAVE_SSE3 if(opt->accel_flags & GAVL_ACCEL_SSE3) { gavl_init_scale_funcs_generic_x_sse3(tab); } #endif break; } } int gavl_video_scaler_init(gavl_video_scaler_t * scaler, const gavl_video_format_t * src_format, const gavl_video_format_t * dst_format) { gavl_rectangle_f_t src_rect; gavl_rectangle_i_t dst_rect; gavl_video_options_t opt; int field, plane; int sub_h_out = 1, sub_v_out = 1; /* Copy options because we want to change them */ gavl_video_options_copy(&opt, &scaler->opt); /* TODO: If the image is smaller than the number of filter taps, reduce scaling algorithm */ /* Copy formats */ gavl_video_format_copy(&scaler->src_format, src_format); gavl_video_format_copy(&scaler->dst_format, dst_format); /* Check if we have rectangles */ if(!opt.have_rectangles) { gavl_rectangle_f_set_all(&src_rect, &scaler->src_format); gavl_rectangle_i_set_all(&dst_rect, &scaler->dst_format); gavl_video_options_set_rectangles(&opt, &src_rect, &dst_rect); } /* Check how many fields we must handle */ if((opt.deinterlace_mode == GAVL_DEINTERLACE_SCALE) && (opt.conversion_flags & GAVL_FORCE_DEINTERLACE)) { /* Deinterlacing mode */ scaler->src_fields = 2; scaler->dst_fields = 1; /* Fake formats for scale context */ if(scaler->src_format.interlace_mode == GAVL_INTERLACE_NONE) scaler->src_format.interlace_mode = GAVL_INTERLACE_TOP_FIRST; scaler->dst_format.interlace_mode = GAVL_INTERLACE_NONE; } else if((opt.deinterlace_mode == GAVL_DEINTERLACE_SCALE) && (scaler->dst_format.interlace_mode == GAVL_INTERLACE_NONE) && (scaler->src_format.interlace_mode != GAVL_INTERLACE_NONE)) { /* Deinterlacing mode */ scaler->src_fields = 2; scaler->dst_fields = 1; } else if(scaler->src_format.interlace_mode != GAVL_INTERLACE_NONE) { /* Interlaced scaling */ scaler->src_fields = 2; scaler->dst_fields = 2; } else { /* Progressive scaling */ scaler->src_fields = 1; scaler->dst_fields = 1; } /* Copy destination rectangle so we know, which subframe to take */ gavl_rectangle_i_copy(&scaler->dst_rect, &opt.dst_rect); #if 0 fprintf(stderr, "gavl_video_scaler_init:\n"); gavl_rectangle_f_dump(&scaler->opt.src_rect); fprintf(stderr, "\n"); gavl_rectangle_i_dump(&scaler->dst_rect); fprintf(stderr, "\n"); #endif /* Crop source and destination rectangles to the formats */ /* Align the destination rectangle to the output format */ gavl_pixelformat_chroma_sub(scaler->dst_format.pixelformat, &sub_h_out, &sub_v_out); gavl_rectangle_i_align(&opt.dst_rect, sub_h_out, sub_v_out); #if 0 fprintf(stderr, "Initializing scaler:\n"); fprintf(stderr, "Src format:\n"); gavl_video_format_dump(&scaler->src_format); fprintf(stderr, "Dst format:\n"); gavl_video_format_dump(&scaler->dst_format); fprintf(stderr, "Src rectangle:\n"); gavl_rectangle_f_dump(&opt.src_rect); fprintf(stderr, "\nDst rectangle:\n"); gavl_rectangle_i_dump(&scaler->dst_rect); fprintf(stderr, "\n"); #endif /* Check how many planes we have */ if((scaler->src_format.pixelformat == GAVL_YUY2) || (scaler->src_format.pixelformat == GAVL_UYVY)) scaler->num_planes = 3; else scaler->num_planes = gavl_pixelformat_num_planes(scaler->src_format.pixelformat); if((scaler->src_fields == 2) && (!scaler->src_field)) scaler->src_field = gavl_video_frame_create(NULL); if((scaler->dst_fields == 2) && (!scaler->dst_field)) scaler->dst_field = gavl_video_frame_create(NULL); #if 0 fprintf(stderr, "src_fields: %d, dst_fields: %d, planes: %d\n", scaler->src_fields, scaler->dst_fields, scaler->num_planes); #endif /* Handle automatic mode selection */ if(opt.scale_mode == GAVL_SCALE_AUTO) { if(opt.quality < 2) opt.scale_mode = GAVL_SCALE_NEAREST; else if(opt.quality <= 3) opt.scale_mode = GAVL_SCALE_BILINEAR; else opt.scale_mode = GAVL_SCALE_CUBIC_BSPLINE; } /* Now, initialize all fields and planes */ if(scaler->src_fields > scaler->dst_fields) { /* Deinterlace mode */ field = (scaler->opt.deinterlace_drop_mode == GAVL_DEINTERLACE_DROP_BOTTOM) ? 0 : 1; for(plane = 0; plane < scaler->num_planes; plane++) { if(!gavl_video_scale_context_init(&scaler->contexts[field][plane], &opt, plane, &scaler->src_format, &scaler->dst_format, field, 0, scaler->src_fields, scaler->dst_fields)) return 0; } if(scaler->src_format.interlace_mode == GAVL_INTERLACE_MIXED) { for(plane = 0; plane < scaler->num_planes; plane++) { if(!gavl_video_scale_context_init(&scaler->contexts[2][plane], &opt, plane, &scaler->src_format, &scaler->dst_format, 0, 0, 1, 1)) return 0; } } } else { /* src_fields == dst_fields */ for(field = 0; field < scaler->src_fields; field++) { for(plane = 0; plane < scaler->num_planes; plane++) { if(!gavl_video_scale_context_init(&scaler->contexts[field][plane], &opt, plane, &scaler->src_format, &scaler->dst_format, field, field, scaler->src_fields, scaler->dst_fields)) return 0; } } if(scaler->src_format.interlace_mode == GAVL_INTERLACE_MIXED) { for(plane = 0; plane < scaler->num_planes; plane++) { if(!gavl_video_scale_context_init(&scaler->contexts[2][plane], &opt, plane, &scaler->src_format, &scaler->dst_format, 0, 0, 1, 1)) return 0; } } } return 1; } int gavl_video_scaler_init_convolve(gavl_video_scaler_t * scaler, const gavl_video_format_t * format, int h_radius, const float * h_coeffs, int v_radius, const float * v_coeffs) { gavl_rectangle_f_t src_rect; gavl_rectangle_i_t dst_rect; gavl_video_options_t opt; int field, plane; /* Copy options because we want to change them */ gavl_video_options_copy(&opt, &scaler->opt); /* Copy formats */ gavl_video_format_copy(&scaler->src_format, format); gavl_video_format_copy(&scaler->dst_format, format); gavl_rectangle_f_set_all(&src_rect, &scaler->src_format); gavl_rectangle_i_set_all(&dst_rect, &scaler->dst_format); gavl_video_options_set_rectangles(&opt, &src_rect, &dst_rect); /* Check how many fields we must handle */ if(format->interlace_mode != GAVL_INTERLACE_NONE) { scaler->src_fields = 2; scaler->dst_fields = 2; } else { scaler->src_fields = 1; scaler->dst_fields = 1; } /* Copy destination rectangle so we know, which subframe to take */ gavl_rectangle_i_copy(&scaler->dst_rect, &opt.dst_rect); /* Check how many planes we have */ if((scaler->src_format.pixelformat == GAVL_YUY2) || (scaler->src_format.pixelformat == GAVL_UYVY)) scaler->num_planes = 3; else scaler->num_planes = gavl_pixelformat_num_planes(scaler->src_format.pixelformat); if((scaler->src_fields == 2) && (!scaler->src_field)) scaler->src_field = gavl_video_frame_create(NULL); if((scaler->dst_fields == 2) && (!scaler->dst_field)) scaler->dst_field = gavl_video_frame_create(NULL); /* Now, initialize all fields and planes */ for(field = 0; field < scaler->src_fields; field++) { for(plane = 0; plane < scaler->num_planes; plane++) { gavl_video_scale_context_init_convolve(&scaler->contexts[field][plane], &opt, plane, format, scaler->src_fields, h_radius, h_coeffs, v_radius, v_coeffs); } if(scaler->src_format.interlace_mode == GAVL_INTERLACE_MIXED) { for(plane = 0; plane < scaler->num_planes; plane++) { gavl_video_scale_context_init_convolve(&scaler->contexts[2][plane], &opt, plane, format, 1, h_radius, h_coeffs, v_radius, v_coeffs); } } } return 1; } gavl_video_options_t * gavl_video_scaler_get_options(gavl_video_scaler_t * s) { return &s->opt; } void gavl_video_scaler_scale(gavl_video_scaler_t * s, const gavl_video_frame_t * src, gavl_video_frame_t * dst) { int i, field; /* Set the destination subframe */ gavl_video_frame_get_subframe(s->dst_format.pixelformat, dst, s->dst, &s->dst_rect); #if 0 fprintf(stderr, "Get subframe\n"); gavl_rectangle_i_dump(&s->dst_rect); fprintf(stderr, "\n"); #endif if(s->src_fields > s->dst_fields) { /* Progressive scaling for mixed mode */ if((s->src_format.interlace_mode == GAVL_INTERLACE_MIXED) && (src->interlace_mode == GAVL_INTERLACE_NONE) && !(s->opt.conversion_flags & GAVL_FORCE_DEINTERLACE)) { for(i = 0; i < s->num_planes; i++) gavl_video_scale_context_scale(&s->contexts[2][i], src, s->dst); } else /* Deinterlace mode */ { field = (s->opt.deinterlace_drop_mode == GAVL_DEINTERLACE_DROP_BOTTOM) ? 0 : 1; gavl_video_frame_get_field(s->src_format.pixelformat, src, s->src_field, field); for(i = 0; i < s->num_planes; i++) gavl_video_scale_context_scale(&s->contexts[field][i], s->src_field, s->dst); } } else if(s->src_fields == 2) { /* Progressive scaling for mixed mode */ if((s->src_format.interlace_mode == GAVL_INTERLACE_MIXED) && (src->interlace_mode == GAVL_INTERLACE_NONE) && !(s->opt.conversion_flags & GAVL_FORCE_DEINTERLACE)) { for(i = 0; i < s->num_planes; i++) gavl_video_scale_context_scale(&s->contexts[2][i], src, s->dst); } else { /* First field */ gavl_video_frame_get_field(s->src_format.pixelformat, src, s->src_field, 0); gavl_video_frame_get_field(s->dst_format.pixelformat, s->dst, s->dst_field, 0); for(i = 0; i < s->num_planes; i++) { // fprintf(stderr, "Field: 0, plane: %d\n", i); gavl_video_scale_context_scale(&s->contexts[0][i], s->src_field, s->dst_field); } /* Second field */ gavl_video_frame_get_field(s->src_format.pixelformat, src, s->src_field, 1); gavl_video_frame_get_field(s->dst_format.pixelformat, s->dst, s->dst_field, 1); for(i = 0; i < s->num_planes; i++) { // fprintf(stderr, "Field: 1, plane: %d\n", i); gavl_video_scale_context_scale(&s->contexts[1][i], s->src_field, s->dst_field); } } } else { for(i = 0; i < s->num_planes; i++) { // fprintf(stderr, "Scale %d, %p\n", i, &s->contexts[0][i]); // fprintf(stderr, "Field: 0 (progressive), plane: %d\n", i); gavl_video_scale_context_scale(&s->contexts[0][i], src, s->dst); } } } bplaum-gavl-b9385e3/gavl/scale_context.c000066400000000000000000001310451513252040200202130ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include #include #include #include #include #include #include #define SCALE_X 0 #define SCALE_Y 1 #define SCALE_XY 2 #define SCALE_X_THEN_Y 3 #define SCALE_Y_THEN_X 4 #define ALIGNMENT_BYTES 16 #define ALIGN(a) a=((a+ALIGNMENT_BYTES-1)/ALIGNMENT_BYTES)*ALIGNMENT_BYTES #define EPS 1e-4 /* Needed to determine if a double and an int are equal. */ static void copy_scanline_noadvance(gavl_video_scale_context_t * ctx, int scanline, uint8_t * dest_start) { // fprintf(stderr, "copy_scanline_noadvance %d\n", scanline); gavl_memcpy(dest_start, ctx->src + ctx->src_stride * scanline, ctx->bytes_per_line); // ctx->src += ctx->src_stride; } static void copy_scanline_advance(gavl_video_scale_context_t * ctx, int scanline, uint8_t * dest_start) { int i; uint8_t * src = ctx->src + ctx->src_stride * scanline; // fprintf(stderr, "copy_scanline_advance\n"); for(i = 0; i < ctx->dst_rect.w; i++) { *dest_start = *src; dest_start += ctx->offset->dst_advance; src += ctx->offset->src_advance; } // ctx->src += ctx->src_stride; } /* Debugging utility */ #if 0 static void dump_offset(gavl_video_scale_offsets_t*off) { fprintf(stderr, "Scale offset:\n"); fprintf(stderr, " src_advance: %d\n", off->src_advance); fprintf(stderr, " src_offset: %d\n", off->src_offset); fprintf(stderr, " dst_advance: %d\n", off->dst_advance); fprintf(stderr, " dst_offset: %d\n", off->dst_offset); } #endif static gavl_video_scale_scanline_func get_func(gavl_scale_func_tab_t * tab, gavl_pixelformat_t pixelformat, int * bits) { switch(pixelformat) { case GAVL_PIXELFORMAT_NONE: break; case GAVL_RGB_15: case GAVL_BGR_15: *bits = tab->bits_rgb_15; return tab->scale_rgb_15; break; case GAVL_RGB_16: case GAVL_BGR_16: *bits = tab->bits_rgb_16; return tab->scale_rgb_16; break; case GAVL_RGB_24: case GAVL_BGR_24: *bits = tab->bits_uint8_noadvance; return tab->scale_uint8_x_3; break; case GAVL_RGB_32: case GAVL_BGR_32: *bits = tab->bits_uint8_noadvance; return tab->scale_uint8_x_3; break; case GAVL_GRAYA_16: *bits = tab->bits_uint8_noadvance; return tab->scale_uint8_x_2; break; case GAVL_GRAY_16: *bits = tab->bits_uint16; return tab->scale_uint16_x_1; break; case GAVL_GRAYA_32: *bits = tab->bits_uint16; return tab->scale_uint16_x_2; break; case GAVL_YUVA_32: case GAVL_RGBA_32: *bits = tab->bits_uint8_noadvance; return tab->scale_uint8_x_4; break; case GAVL_YUY2: *bits = tab->bits_uint8_advance; return tab->scale_uint8_x_1_noadvance; break; case GAVL_UYVY: *bits = tab->bits_uint8_advance; return tab->scale_uint8_x_1_advance; break; case GAVL_YUV_420_P: case GAVL_YUV_422_P: case GAVL_YUV_444_P: case GAVL_YUV_411_P: case GAVL_YUV_410_P: case GAVL_YUVJ_420_P: case GAVL_YUVJ_422_P: case GAVL_YUVJ_444_P: case GAVL_GRAY_8: *bits = tab->bits_uint8_noadvance; return tab->scale_uint8_x_1_noadvance; break; case GAVL_YUV_444_P_16: case GAVL_YUV_422_P_16: *bits = tab->bits_uint16; return tab->scale_uint16_x_1; break; case GAVL_RGB_48: *bits = tab->bits_uint16; return tab->scale_uint16_x_3; break; case GAVL_RGBA_64: case GAVL_YUVA_64: *bits = tab->bits_uint16; return tab->scale_uint16_x_4; break; case GAVL_GRAY_FLOAT: *bits = 0; return tab->scale_float_x_1; break; case GAVL_GRAYA_FLOAT: *bits = 0; return tab->scale_float_x_2; break; case GAVL_YUV_FLOAT: case GAVL_RGB_FLOAT: *bits = 0; return tab->scale_float_x_3; break; case GAVL_RGBA_FLOAT: case GAVL_YUVA_FLOAT: *bits = 0; return tab->scale_float_x_4; break; } return NULL; } static void get_minmax(gavl_pixelformat_t pixelformat, int * min, int * max, float * min_f, float * max_f) { int i; for(i = 0; i < GAVL_MAX_PLANES; i++) { min[i] = 0; max[i] = 0; min_f[i] = 0.0; max_f[i] = 0.0; } switch(pixelformat) { case GAVL_PIXELFORMAT_NONE: break; case GAVL_RGB_15: case GAVL_BGR_15: min[0] = 0; min[1] = 0; min[2] = 0; max[0] = (1<<5)-1; max[1] = (1<<5)-1; max[2] = (1<<5)-1; break; case GAVL_RGB_16: case GAVL_BGR_16: min[0] = 0; min[1] = 0; min[2] = 0; max[0] = (1<<5)-1; max[1] = (1<<6)-1; max[2] = (1<<5)-1; break; case GAVL_RGB_24: case GAVL_BGR_24: case GAVL_RGB_32: case GAVL_BGR_32: case GAVL_YUVJ_420_P: case GAVL_YUVJ_422_P: case GAVL_YUVJ_444_P: case GAVL_RGBA_32: case GAVL_GRAY_8: case GAVL_GRAYA_16: min[0] = 0; min[1] = 0; min[2] = 0; min[3] = 0; max[0] = (1<<8)-1; max[1] = (1<<8)-1; max[2] = (1<<8)-1; max[3] = (1<<8)-1; break; case GAVL_YUVA_32: min[0] = 16; min[1] = 16; min[2] = 16; min[3] = 0; max[0] = 235; max[1] = 240; max[2] = 240; max[3] = 255; break; case GAVL_YUY2: case GAVL_UYVY: case GAVL_YUV_420_P: case GAVL_YUV_422_P: case GAVL_YUV_444_P: case GAVL_YUV_411_P: case GAVL_YUV_410_P: min[0] = 16; min[1] = 16; min[2] = 16; max[0] = 235; max[1] = 240; max[2] = 240; break; case GAVL_YUV_444_P_16: case GAVL_YUV_422_P_16: case GAVL_YUVA_64: min[0] = 16<<8; min[1] = 16<<8; min[2] = 16<<8; max[0] = 235<<8; max[1] = 240<<8; max[2] = 240<<8; max[3] = (1<<16)-1; break; case GAVL_GRAY_16: case GAVL_GRAYA_32: case GAVL_RGB_48: case GAVL_RGBA_64: min[0] = 0; min[1] = 0; min[2] = 0; min[3] = 0; max[0] = (1<<16)-1; max[1] = (1<<16)-1; max[2] = (1<<16)-1; max[3] = (1<<16)-1; break; case GAVL_RGB_FLOAT: case GAVL_RGBA_FLOAT: case GAVL_GRAY_FLOAT: case GAVL_GRAYA_FLOAT: max_f[0] = 1.0; max_f[1] = 1.0; max_f[2] = 1.0; max_f[3] = 1.0; break; case GAVL_YUV_FLOAT: case GAVL_YUVA_FLOAT: max_f[0] = 1.0; min_f[1] = -0.5; max_f[1] = 0.5; min_f[2] = -0.5; max_f[2] = 0.5; max_f[3] = 1.0; break; } } static void alloc_temp(gavl_video_scale_context_t * ctx, gavl_pixelformat_t pixelformat) { int size; if((pixelformat == GAVL_YUY2) || (pixelformat == GAVL_UYVY)) ctx->buffer_stride = ctx->buffer_width; else if(gavl_pixelformat_is_planar(pixelformat)) ctx->buffer_stride = ctx->buffer_width * gavl_pixelformat_bytes_per_component(pixelformat); else ctx->buffer_stride = ctx->buffer_width * gavl_pixelformat_bytes_per_pixel(pixelformat); ALIGN(ctx->buffer_stride); size = ctx->buffer_stride * ctx->buffer_height; if(ctx->buffer_alloc < size) { if(ctx->buffer) free(ctx->buffer); ctx->buffer_alloc = size + 8192; ctx->buffer = gavl_memalign(ALIGNMENT_BYTES, ctx->buffer_alloc); } } /* * Scale offset is the position of the first dst pixel in source * coordinates. First, we calculate the distances from the image border * of the first source and dst pixels respectively. dst_dist is scaled to * source coordinates and the offset becomes dst_dist - src_dist. */ static float get_scale_offset(int src_field, int dst_field, int src_fields, int dst_fields, float scale_fac, int sub_in, int sub_out, float chroma_offset_src, float chroma_offset_dst) { float result; float src_dist; /* Distance of the first source sample from the picture border in destination coordinates */ float dst_dist; /* Distance of the first destination sample from the picture border in destination coordinates */ float chroma_scale_fac = (float)sub_in / (float)sub_out; #if 0 fprintf(stderr, "get_scale_offset:\n\ src_field: %d\n dst_field: %d\n\ src_fields: %d\n dst_fields: %d\n\ scale_fac: %f\n sub_in: %d\n\ sub_out: %d\n chroma_offset_src: %f\n\ chroma_offset_dst: %f\n\ chroma_scale_fac: %f\n", src_field, dst_field, src_fields, dst_fields, scale_fac, sub_in, sub_out, chroma_offset_src, chroma_offset_dst, chroma_scale_fac); #endif scale_fac *= chroma_scale_fac; /* Different calculation for different interlacing options */ if(src_fields == 1) /* Progressive input -> Progressive */ { // fprintf(stderr, "Progressive -> Progressive\n"); src_dist = (0.5 + chroma_offset_src) / sub_in; dst_dist = (0.5 + chroma_offset_dst) / (sub_out * scale_fac); } else if(dst_fields == 1) /* Interlaced -> Progressive */ { if(src_field == 0) /* Top field -> Progressive */ { // fprintf(stderr, "Top field -> Progressive\n"); src_dist = (0.25 + chroma_offset_src) / (sub_in); dst_dist = (0.5 + chroma_offset_dst) / (2.0*scale_fac * sub_out); } else /* Bottom field -> Progressive */ { // fprintf(stderr, "Bottom field -> Progressive\n"); src_dist = (0.75 + chroma_offset_src) / (sub_in); dst_dist = (0.5 + chroma_offset_dst) / (2.0*scale_fac * sub_out); } } else /* Interlaced -> Interlaced */ { if(dst_field == src_field) { if(!dst_field) /* Top field -> Top field */ { // fprintf(stderr, "Top field -> Top field\n"); src_dist = (0.25 + chroma_offset_src) / (sub_in); dst_dist = (0.25 + chroma_offset_dst) / (scale_fac * sub_out); } else /* Bottom field -> Bottom field */ { // fprintf(stderr, "Bottom field -> Bottom field\n"); src_dist = (0.75 + chroma_offset_src) / (sub_in); dst_dist = (0.75 + chroma_offset_dst) / (scale_fac * sub_out); } } else { fprintf(stderr, "BUG: scaler cannot swap fields\n"); return 0; } } result = dst_dist - src_dist; #if 0 fprintf(stderr, "Src dist: %f, dst_dist: %f\n", src_dist, dst_dist); fprintf(stderr, "result: %f\n", result); #endif return result; } int gavl_video_scale_context_init(gavl_video_scale_context_t*ctx, gavl_video_options_t * opt, int plane, const gavl_video_format_t * src_format, const gavl_video_format_t * dst_format, int src_field, int dst_field, int src_fields, int dst_fields) { int bits_h = 0, bits_v = 0; int sub_h_in = 1, sub_v_in = 1, sub_h_out = 1, sub_v_out = 1; int scale_x, scale_y; gavl_video_options_t tmp_opt, tmp_opt_y; double scale_factor_x, scale_factor_y; float src_chroma_offset_x, src_chroma_offset_y, dst_chroma_offset_x, dst_chroma_offset_y; gavl_rectangle_i_t src_rect_i; int src_width, src_height; /* Needed for generating the scale table */ float offset_x, offset_y; gavl_scale_funcs_t funcs; ctx->first_scanline = 0; #if 0 fprintf(stderr, "scale_context_init: src_field: %d, dst_field: %d plane: %d\n", src_field, dst_field, plane); #endif gavl_rectangle_f_copy(&ctx->src_rect, &opt->src_rect); gavl_rectangle_i_copy(&ctx->dst_rect, &opt->dst_rect); scale_factor_x = (float)ctx->dst_rect.w / ctx->src_rect.w; scale_factor_y = (float)ctx->dst_rect.h / ctx->src_rect.h; ctx->plane = plane; if(plane) { /* Get chroma subsampling factors for source and destination */ gavl_pixelformat_chroma_sub(src_format->pixelformat, &sub_h_in, &sub_v_in); gavl_pixelformat_chroma_sub(dst_format->pixelformat, &sub_h_out, &sub_v_out); ctx->src_rect.w /= sub_h_in; ctx->src_rect.x /= sub_h_in; ctx->src_rect.h /= sub_v_in; ctx->src_rect.y /= sub_v_in; ctx->dst_rect.w /= sub_h_out; ctx->dst_rect.x /= sub_h_out; ctx->dst_rect.h /= sub_v_out; ctx->dst_rect.y /= sub_v_out; src_width = src_format->image_width / sub_h_in; src_height = src_format->image_height / sub_v_in; } else { src_width = src_format->image_width; src_height = src_format->image_height; } if(src_fields == 2) { ctx->src_rect.h /= 2.0; ctx->src_rect.y /= 2.0; src_height /= 2; } if(dst_fields == 2) { ctx->dst_rect.h /= 2; ctx->dst_rect.y /= 2; } #if 0 fprintf(stderr, "gavl_video_scale_context_init\n"); gavl_rectangle_f_dump(&ctx->src_rect); fprintf(stderr, "\n"); gavl_rectangle_i_dump(&ctx->dst_rect); fprintf(stderr, "\n"); #endif /* Calculate chroma offsets */ gavl_video_format_get_chroma_offset(src_format, src_field, plane, &src_chroma_offset_x, &src_chroma_offset_y); gavl_video_format_get_chroma_offset(dst_format, dst_field, plane, &dst_chroma_offset_x, &dst_chroma_offset_y); offset_x = get_scale_offset(0, 0, 1, 1, scale_factor_x, sub_h_in, sub_h_out, src_chroma_offset_x, dst_chroma_offset_x); offset_y = get_scale_offset(src_field, dst_field, src_fields, dst_fields, scale_factor_y, sub_v_in, sub_v_out, src_chroma_offset_y, dst_chroma_offset_y); if((fabs(ctx->src_rect.w - ctx->dst_rect.w) > EPS) || (fabs(ctx->src_rect.x) > EPS) || (fabs(offset_x) > EPS)) scale_x = 1; else scale_x = 0; if((fabs(ctx->src_rect.h - ctx->dst_rect.h) > EPS) || (fabs(ctx->src_rect.y) > EPS) || (fabs(offset_y) > EPS)) scale_y = 1; else scale_y = 0; #if 0 fprintf(stderr, "Offsets: %f %f, scale_factors: %f %f\n", offset_x, offset_y, ctx->dst_rect.w / ctx->src_rect.w, ctx->dst_rect.h / ctx->src_rect.h); #endif offset_x += ctx->src_rect.x; offset_y += ctx->src_rect.y; ctx->func1 = NULL; ctx->func2 = NULL; ctx->num_directions = 0; if(scale_x) ctx->num_directions++; if(scale_y) ctx->num_directions++; /* Set source and destination frame planes */ if(gavl_pixelformat_is_planar(src_format->pixelformat)) ctx->src_frame_plane = plane; else ctx->src_frame_plane = 0; if(gavl_pixelformat_is_planar(dst_format->pixelformat)) ctx->dst_frame_plane = plane; else ctx->dst_frame_plane = 0; /* Set bytes per line. We need this for copying */ ctx->bytes_per_line = gavl_pixelformat_is_planar(src_format->pixelformat) ? ctx->dst_rect.w * gavl_pixelformat_bytes_per_component(src_format->pixelformat) : ctx->dst_rect.w * gavl_pixelformat_bytes_per_pixel(src_format->pixelformat); /* Set source and destination offsets */ if(ctx->num_directions == 1) { gavl_pixelformat_get_offset(src_format->pixelformat, plane, &ctx->offset1.src_advance, &ctx->offset1.src_offset); gavl_pixelformat_get_offset(dst_format->pixelformat, plane, &ctx->offset1.dst_advance, &ctx->offset1.dst_offset); /* We set this once here */ ctx->offset = &ctx->offset1; ctx->dst_size = ctx->dst_rect.w; } else if(ctx->num_directions == 2) { gavl_pixelformat_get_offset(src_format->pixelformat, plane, &ctx->offset1.src_advance, &ctx->offset1.src_offset); gavl_pixelformat_get_offset(dst_format->pixelformat, plane, &ctx->offset2.dst_advance, &ctx->offset2.dst_offset); ctx->offset1.dst_offset = 0; ctx->offset1.dst_advance = ctx->offset1.src_advance; if((src_format->pixelformat == GAVL_YUY2) || (src_format->pixelformat == GAVL_UYVY)) { ctx->offset1.dst_advance = 1; } ctx->offset2.src_advance = ctx->offset1.dst_advance; ctx->offset2.src_offset = ctx->offset1.dst_offset; } else if(!ctx->num_directions) { if((src_format->pixelformat == GAVL_YUY2) || (src_format->pixelformat == GAVL_UYVY) || (dst_format->pixelformat == GAVL_YUY2) || (dst_format->pixelformat == GAVL_UYVY)) ctx->func1 = copy_scanline_advance; else ctx->func1 = copy_scanline_noadvance; /* Set source and destination offsets */ gavl_pixelformat_get_offset(src_format->pixelformat, plane, &ctx->offset1.src_advance, &ctx->offset1.src_offset); gavl_pixelformat_get_offset(dst_format->pixelformat, plane, &ctx->offset1.dst_advance, &ctx->offset1.dst_offset); /* We set this once here */ ctx->offset = &ctx->offset1; ctx->dst_size = ctx->dst_rect.w; ctx->num_directions = 1; return 1; } if(scale_x && scale_y) { // fprintf(stderr, "Initializing x table %f\n", ctx->src_rect.x + offset_x); gavl_video_options_copy(&tmp_opt, opt); gavl_video_scale_table_init(&ctx->table_h, &tmp_opt, offset_x, ctx->src_rect.w, ctx->dst_rect.w, src_width); // fprintf(stderr, "Initializing x table done\n"); // fprintf(stderr, "Initializing y table %f\n", // ctx->src_rect.y + offset_y); gavl_video_options_copy(&tmp_opt_y, opt); gavl_video_scale_table_init(&ctx->table_v, &tmp_opt_y, offset_y, ctx->src_rect.h, ctx->dst_rect.h, src_height); // fprintf(stderr, "Initializing y table done\n"); /* Check if we can scale in x and y-directions at once */ if((tmp_opt.scale_mode == tmp_opt_y.scale_mode) && (tmp_opt.scale_order == tmp_opt_y.scale_order)) { gavl_init_scale_funcs(&funcs, &tmp_opt, ctx->offset1.src_advance, ctx->offset2.dst_advance, &ctx->table_h, &ctx->table_v); ctx->func1 = get_func(&funcs.funcs_xy, src_format->pixelformat, &bits_h); // fprintf(stderr, "X AND Y %d\n"); } if(ctx->func1) /* Scaling routines for x-y are there, good */ { ctx->num_directions = 1; if(bits_h) { gavl_video_scale_table_init_int(&ctx->table_h, bits_h); /* Must be bits_h since we have only one function (and thus one accuracy) */ gavl_video_scale_table_init_int(&ctx->table_v, bits_h); } ctx->offset = &ctx->offset1; ctx->dst_size = ctx->dst_rect.w; /* Switch offsets back */ ctx->offset1.dst_advance = ctx->offset2.dst_advance; ctx->offset1.dst_offset = ctx->offset2.dst_offset; } else { gavl_video_scale_table_get_src_indices(&ctx->table_h, &src_rect_i.x, &src_rect_i.w); gavl_video_scale_table_get_src_indices(&ctx->table_v, &src_rect_i.y, &src_rect_i.h); /* Decide the scale order depending on what's computationally less expensive */ /* We calculate the sizes (in pixels) of the temporary frame for both options and take the smaller one */ #if 0 fprintf(stderr, "Src rect: "); gavl_rectangle_i_dump(&src_rect_i); fprintf(stderr, "\nDst rect: "); gavl_rectangle_i_dump(&ctx->dst_rect); fprintf(stderr, "\n"); #endif if(src_rect_i.h * ctx->dst_rect.w < ctx->dst_rect.h * src_rect_i.w) { // fprintf(stderr, "X then Y\n"); /* X then Y */ ctx->buffer_width = ctx->dst_rect.w; ctx->buffer_height = src_rect_i.h; gavl_video_scale_table_shift_indices(&ctx->table_v, -src_rect_i.y); ctx->first_scanline = src_rect_i.y; gavl_init_scale_funcs(&funcs, &tmp_opt, ctx->offset1.src_advance, ctx->offset1.dst_advance, &ctx->table_h, NULL); ctx->func1 = get_func(&funcs.funcs_x, src_format->pixelformat, &bits_h); if(bits_h) gavl_video_scale_table_init_int(&ctx->table_h, bits_h); gavl_init_scale_funcs(&funcs, &tmp_opt_y, ctx->offset2.src_advance, ctx->offset2.dst_advance, NULL, &ctx->table_v); ctx->func2 = get_func(&funcs.funcs_y, src_format->pixelformat, &bits_v); if(bits_v) gavl_video_scale_table_init_int(&ctx->table_v, bits_v); } else { // fprintf(stderr, "Y then X\n"); /* Y then X */ ctx->buffer_width = src_rect_i.w; ctx->buffer_height = ctx->dst_rect.h; ctx->offset1.src_offset += src_rect_i.x * ctx->offset1.src_advance; gavl_video_scale_table_shift_indices(&ctx->table_h, -src_rect_i.x); gavl_init_scale_funcs(&funcs, &tmp_opt_y, ctx->offset1.src_advance, ctx->offset1.dst_advance, NULL, &ctx->table_v); ctx->func1 = get_func(&funcs.funcs_y, src_format->pixelformat, &bits_v); if(bits_v) gavl_video_scale_table_init_int(&ctx->table_v, bits_v); gavl_init_scale_funcs(&funcs, &tmp_opt, ctx->offset2.src_advance, ctx->offset2.dst_advance, &ctx->table_h, NULL); ctx->func2 = get_func(&funcs.funcs_x, src_format->pixelformat, &bits_h); if(bits_h) gavl_video_scale_table_init_int(&ctx->table_h, bits_h); } /* Allocate temporary buffer */ alloc_temp(ctx, src_format->pixelformat); } } else if(scale_x) { gavl_video_options_copy(&tmp_opt, opt); gavl_video_scale_table_init(&ctx->table_h, &tmp_opt, offset_x, ctx->src_rect.w, ctx->dst_rect.w, src_width); // fprintf(stderr, "Initializing x table done\n"); gavl_init_scale_funcs(&funcs, &tmp_opt, ctx->offset1.src_advance, ctx->offset1.dst_advance, &ctx->table_h, NULL); ctx->func1 = get_func(&funcs.funcs_x, src_format->pixelformat, &bits_h); if(bits_h) gavl_video_scale_table_init_int(&ctx->table_h, bits_h); } else if(scale_y) { // fprintf(stderr, "Initializing y table\n"); gavl_video_options_copy(&tmp_opt, opt); gavl_video_scale_table_init(&ctx->table_v, &tmp_opt, offset_y, ctx->src_rect.h, ctx->dst_rect.h, src_height); // fprintf(stderr, "Initializing y table done\n"); gavl_init_scale_funcs(&funcs, &tmp_opt, ctx->offset1.src_advance, ctx->offset1.dst_advance, NULL, &ctx->table_v); ctx->func1 = get_func(&funcs.funcs_y, src_format->pixelformat, &bits_v); if(bits_v) gavl_video_scale_table_init_int(&ctx->table_v, bits_v); } if(!ctx->func1 || ((ctx->num_directions == 2) && !ctx->func2)) { // fprintf(stderr, "Initializing scale context failed: %d %p %p\n", // ctx->num_directions, // ctx->func1, ctx->func2); return 0; } #if 0 /* Dump final scale tables */ fprintf(stderr, "Horizontal table:\n"); gavl_video_scale_table_dump(&ctx->table_h); fprintf(stderr, "Vertical table:\n"); gavl_video_scale_table_dump(&ctx->table_v); #endif get_minmax(src_format->pixelformat, ctx->min_values_h, ctx->max_values_h, ctx->min_values_f, ctx->max_values_f); get_minmax(src_format->pixelformat, ctx->min_values_v, ctx->max_values_v, ctx->min_values_f, ctx->max_values_f); #if 0 fprintf(stderr, "Min: %d %d %d, max: %d %d %d\n", ctx->min_values_h[0], ctx->min_values_h[1], ctx->min_values_h[2], ctx->max_values_h[0], ctx->max_values_h[1], ctx->max_values_h[2]); #endif return 1; } /* Factor must be a power of 2 */ static void downsample_coeffs(int factor, const float * coeffs, int num_coeffs, float ** coeffs_ret, int * num_coeffs_ret) { int i; int fac = 1; int src_index; float * coeffs_1; float * coeffs_2; float * swp; int coeffs_total; int last_coeffs_total; *num_coeffs_ret = num_coeffs; coeffs_total = *num_coeffs_ret * 2 + 1; coeffs_1 = malloc(coeffs_total * sizeof(*coeffs_1)); coeffs_2 = malloc(coeffs_total * sizeof(*coeffs_2)); memcpy(coeffs_1, coeffs, coeffs_total * sizeof(*coeffs)); // fprintf(stderr, "downsample_coeffs: num_coeffs: %d, factor: %d\n", // num_coeffs, factor); while(fac < factor) { *num_coeffs_ret = (*num_coeffs_ret + 1)/2; last_coeffs_total = coeffs_total; coeffs_total = *num_coeffs_ret * 2 + 1; if(!(*num_coeffs_ret & 1)) { coeffs_2[0] = 0.5 * coeffs_1[0] + coeffs_1[1]; src_index = 2; for(i = 1; i < coeffs_total - 1; i++) { coeffs_2[i] = 0.5 * (coeffs_1[src_index-1] + coeffs_1[src_index+1]) + coeffs_1[src_index]; src_index += 2; } coeffs_2[coeffs_total - 1] = 0.5 * coeffs_1[last_coeffs_total - 1] + coeffs_1[last_coeffs_total - 2]; } else { coeffs_2[0] = 0.5 * coeffs_1[0]; src_index = 1; for(i = 1; i < coeffs_total - 1; i++) { coeffs_2[i] = 0.5 * (coeffs_1[src_index-1] + coeffs_1[src_index+1]) + coeffs_1[src_index]; src_index += 2; } coeffs_2[coeffs_total-1] = 0.5 * coeffs_1[last_coeffs_total-1]; } swp = coeffs_1; coeffs_1 = coeffs_2; coeffs_2 = swp; fac *= 2; } *coeffs_ret = coeffs_1; free(coeffs_2); } int gavl_video_scale_context_init_convolve(gavl_video_scale_context_t* ctx, gavl_video_options_t * opt, int plane, const gavl_video_format_t * format, int num_fields, int h_radius, const float * h_coeffs, int v_radius, const float * v_coeffs) { int bits_h = 1, bits_v = 1; int sub_h = 1, sub_v = 1; int scale_x, scale_y; int fac_h = 1; int fac_v = 1; gavl_video_options_t tmp_opt, tmp_opt_y; gavl_rectangle_i_t src_rect_i; int h_radius_real; float *h_c = NULL; int v_radius_real; float *v_c = NULL; int src_width, src_height; /* Needed for generating the scale table */ gavl_scale_funcs_t funcs; #if 0 fprintf(stderr, "scale_context_init: src_field: %d, dst_field: %d plane: %d\n", src_field, dst_field, plane); #endif gavl_rectangle_f_set_all(&ctx->src_rect, format); gavl_rectangle_i_set_all(&ctx->dst_rect, format); ctx->first_scanline = 0; ctx->plane = plane; if(plane) { /* Get chroma subsampling factors for source and destination */ gavl_pixelformat_chroma_sub(format->pixelformat, &sub_h, &sub_v); ctx->src_rect.w /= sub_h; ctx->src_rect.h /= sub_v; ctx->dst_rect.w /= sub_h; ctx->dst_rect.h /= sub_v; fac_h *= sub_h; fac_v *= sub_v; src_width = format->image_width / sub_h; src_height = format->image_height / sub_v; } else { src_width = format->image_width; src_height = format->image_height; } if(num_fields == 2) { ctx->src_rect.h /= 2.0; ctx->dst_rect.h /= 2; src_height /= 2; fac_v *= 2; } #if 0 fprintf(stderr, "gavl_video_scale_context_init\n"); gavl_rectangle_f_dump(&ctx->src_rect); fprintf(stderr, "\n"); gavl_rectangle_i_dump(&ctx->dst_rect); fprintf(stderr, "\n"); #endif /* Calculate chroma offsets */ if(plane && !(opt->conversion_flags & GAVL_CONVOLVE_CHROMA)) { scale_x = 0; scale_y = 0; } else { if(h_radius > 0) scale_x = 1; else scale_x = 0; if(v_radius > 0) scale_y = 1; else scale_y = 0; } /* Downsample coefficients */ h_radius_real = h_radius; v_radius_real = v_radius; if(scale_x) { if(fac_h > 1) { downsample_coeffs(fac_h, h_coeffs, h_radius, &h_c, &h_radius_real); } } if(scale_y) { if(fac_v > 1) { downsample_coeffs(fac_v, v_coeffs, v_radius, &v_c, &v_radius_real); } } ctx->func1 = NULL; ctx->func2 = NULL; ctx->num_directions = 0; if(scale_x) ctx->num_directions++; if(scale_y) ctx->num_directions++; /* Set source and destination frame planes */ if(gavl_pixelformat_is_planar(format->pixelformat)) { ctx->src_frame_plane = plane; ctx->dst_frame_plane = plane; } else { ctx->src_frame_plane = 0; ctx->dst_frame_plane = 0; } ctx->bytes_per_line = gavl_pixelformat_is_planar(format->pixelformat) ? ctx->dst_rect.w * gavl_pixelformat_bytes_per_component(format->pixelformat) : ctx->dst_rect.w * gavl_pixelformat_bytes_per_pixel(format->pixelformat); /* Set source and destination offsets */ if(ctx->num_directions == 1) { gavl_pixelformat_get_offset(format->pixelformat, plane, &ctx->offset1.src_advance, &ctx->offset1.src_offset); gavl_pixelformat_get_offset(format->pixelformat, plane, &ctx->offset1.dst_advance, &ctx->offset1.dst_offset); /* We set this once here */ ctx->offset = &ctx->offset1; ctx->dst_size = ctx->dst_rect.w; } else if(ctx->num_directions == 2) { gavl_pixelformat_get_offset(format->pixelformat, plane, &ctx->offset1.src_advance, &ctx->offset1.src_offset); gavl_pixelformat_get_offset(format->pixelformat, plane, &ctx->offset2.dst_advance, &ctx->offset2.dst_offset); ctx->offset1.dst_offset = 0; ctx->offset1.dst_advance = ctx->offset1.src_advance; if((format->pixelformat == GAVL_YUY2) || (format->pixelformat == GAVL_UYVY)) { ctx->offset1.dst_advance = 1; } ctx->offset2.src_advance = ctx->offset1.dst_advance; ctx->offset2.src_offset = ctx->offset1.dst_offset; } /* Set functions */ if(!ctx->num_directions) { if((format->pixelformat == GAVL_YUY2) || (format->pixelformat == GAVL_UYVY)) ctx->func1 = copy_scanline_advance; else ctx->func1 = copy_scanline_noadvance; /* Set source and destination offsets */ gavl_pixelformat_get_offset(format->pixelformat, plane, &ctx->offset1.src_advance, &ctx->offset1.src_offset); gavl_pixelformat_get_offset(format->pixelformat, plane, &ctx->offset1.dst_advance, &ctx->offset1.dst_offset); /* We set this once here */ ctx->offset = &ctx->offset1; ctx->dst_size = ctx->dst_rect.w; ctx->num_directions = 1; return 0; } else if(scale_x && scale_y) { // fprintf(stderr, "Initializing x table\n"); gavl_video_options_copy(&tmp_opt, opt); tmp_opt.scale_mode = GAVL_SCALE_NONE; gavl_video_scale_table_init_convolve(&ctx->table_h, &tmp_opt, h_radius, h_coeffs, src_width); // fprintf(stderr, "Initializing x table done\n"); // fprintf(stderr, "Initializing y table\n"); gavl_video_options_copy(&tmp_opt_y, opt); tmp_opt_y.scale_mode = GAVL_SCALE_NONE; gavl_video_scale_table_init_convolve(&ctx->table_v, &tmp_opt_y, v_radius, v_coeffs, src_height); // fprintf(stderr, "Initializing y table done\n"); /* Check if we can scale in x and y-directions at once */ if((tmp_opt.scale_mode == tmp_opt_y.scale_mode) && (tmp_opt.scale_order == tmp_opt_y.scale_order)) { gavl_init_scale_funcs(&funcs, &tmp_opt, ctx->offset1.src_advance, ctx->offset2.dst_advance, &ctx->table_h, &ctx->table_v); ctx->func1 = get_func(&funcs.funcs_xy, format->pixelformat, &bits_h); // fprintf(stderr, "X AND Y\n"); } if(ctx->func1) /* Scaling routines for x-y are there, good */ { ctx->num_directions = 1; gavl_video_scale_table_init_int(&ctx->table_h, bits_h); gavl_video_scale_table_init_int(&ctx->table_v, bits_h); } else { gavl_video_scale_table_get_src_indices(&ctx->table_h, &src_rect_i.x, &src_rect_i.w); gavl_video_scale_table_get_src_indices(&ctx->table_v, &src_rect_i.y, &src_rect_i.h); // fprintf(stderr, "X then Y\n"); /* X then Y */ ctx->buffer_width = ctx->dst_rect.w; ctx->buffer_height = src_rect_i.h; gavl_video_scale_table_shift_indices(&ctx->table_v, -src_rect_i.y); gavl_init_scale_funcs(&funcs, &tmp_opt, ctx->offset1.src_advance, ctx->offset1.dst_advance, &ctx->table_h, NULL); ctx->func1 = get_func(&funcs.funcs_x, format->pixelformat, &bits_h); gavl_video_scale_table_init_int(&ctx->table_h, bits_h); gavl_init_scale_funcs(&funcs, &tmp_opt_y, ctx->offset2.src_advance, ctx->offset2.dst_advance, NULL, &ctx->table_v); ctx->func2 = get_func(&funcs.funcs_y, format->pixelformat, &bits_v); gavl_video_scale_table_init_int(&ctx->table_v, bits_v); /* Allocate temporary buffer */ alloc_temp(ctx, format->pixelformat); } } else if(scale_x) { // fprintf(stderr, "Initializing x table\n"); gavl_video_options_copy(&tmp_opt, opt); tmp_opt.scale_mode = GAVL_SCALE_NONE; gavl_video_scale_table_init_convolve(&ctx->table_h, &tmp_opt, h_radius, h_coeffs, src_width); // fprintf(stderr, "Initializing x table done\n"); gavl_init_scale_funcs(&funcs, &tmp_opt, ctx->offset1.src_advance, ctx->offset1.dst_advance, &ctx->table_h, NULL); ctx->func1 = get_func(&funcs.funcs_x, format->pixelformat, &bits_h); gavl_video_scale_table_init_int(&ctx->table_h, bits_h); } else if(scale_y) { // fprintf(stderr, "Initializing y table\n"); gavl_video_options_copy(&tmp_opt, opt); tmp_opt.scale_mode = GAVL_SCALE_NONE; gavl_video_scale_table_init_convolve(&ctx->table_v, &tmp_opt, v_radius, v_coeffs, src_height); // fprintf(stderr, "Initializing y table done\n"); gavl_init_scale_funcs(&funcs, &tmp_opt, ctx->offset1.src_advance, ctx->offset1.dst_advance, NULL, &ctx->table_v); ctx->func1 = get_func(&funcs.funcs_y, format->pixelformat, &bits_v); gavl_video_scale_table_init_int(&ctx->table_v, bits_v); } #if 0 /* Dump final scale tables */ fprintf(stderr, "Horizontal table:\n"); gavl_video_scale_table_dump(&ctx->table_h); fprintf(stderr, "Vertical table:\n"); gavl_video_scale_table_dump(&ctx->table_v); #endif get_minmax(format->pixelformat, ctx->min_values_h, ctx->max_values_h, ctx->min_values_f, ctx->max_values_f); get_minmax(format->pixelformat, ctx->min_values_v, ctx->max_values_v, ctx->min_values_f, ctx->max_values_f); if(h_c) free(h_c); if(v_c) free(v_c); return 1; } void gavl_video_scale_context_cleanup(gavl_video_scale_context_t * ctx) { gavl_video_scale_table_cleanup(&ctx->table_h); gavl_video_scale_table_cleanup(&ctx->table_v); if(ctx->buffer) free(ctx->buffer); } static void func_1(void* p, int start, int end) { int i; uint8_t * dst_save; gavl_video_scale_context_t * ctx = p; dst_save = ctx->dst_frame->planes[ctx->dst_frame_plane] + ctx->offset->dst_offset + start * ctx->dst_frame->strides[ctx->dst_frame_plane]; for(i = start; i < end; i++) { ctx->func1(ctx, i, dst_save); dst_save += ctx->dst_frame->strides[ctx->dst_frame_plane]; } #ifdef HAVE_MMX __asm__ __volatile__ ("emms"); #endif } static void func_1_of_2(void* p, int start, int end) { int i; uint8_t * dst_save; gavl_video_scale_context_t * ctx = p; dst_save = ctx->buffer + start * ctx->buffer_stride; for(i = start; i < end; i++) { ctx->func1(ctx, i, dst_save); dst_save += ctx->buffer_stride; } #ifdef HAVE_MMX __asm__ __volatile__ ("emms"); #endif } static void func_2_of_2(void* p, int start, int end) { int i; uint8_t * dst_save; gavl_video_scale_context_t * ctx = p; dst_save = ctx->dst_frame->planes[ctx->dst_frame_plane] + ctx->offset->dst_offset + start * ctx->dst_frame->strides[ctx->dst_frame_plane]; for(i = start; i < end; i++) { ctx->func2(ctx, i, dst_save); dst_save += ctx->dst_frame->strides[ctx->dst_frame_plane]; } #ifdef HAVE_MMX __asm__ __volatile__ ("emms"); #endif } static void scale_context_scale_mt(gavl_video_scale_context_t * ctx, const gavl_video_frame_t * src, gavl_video_frame_t * dst) { int delta; int scanline; int nt; int i; switch(ctx->num_directions) { case 1: /* Only step */ ctx->src = src->planes[ctx->src_frame_plane] + ctx->offset->src_offset; ctx->src_stride = src->strides[ctx->src_frame_plane]; ctx->dst_frame = dst; nt = gavl_thread_pool_get_num_threads(ctx->opt->tp); if(nt > ctx->dst_rect.h) nt = ctx->dst_rect.h; // fprintf(stderr, "Scaling 1 direction (%d threads)\n", nt); delta = ctx->dst_rect.h / nt; scanline = 0; for(i = 0; i < nt - 1; i++) { gavl_thread_pool_run(func_1, ctx, scanline, scanline+delta, ctx->opt->tp, i); // fprintf(stderr, "scanline: %d (%d)\n", ctx->scanline, ctx->dst_rect.h); scanline += delta; } gavl_thread_pool_run(func_1, ctx, scanline, ctx->dst_rect.h, ctx->opt->tp, nt - 1); for(i = 0; i < nt; i++) gavl_thread_pool_stop(ctx->opt->tp, i); break; case 2: /* First step */ ctx->offset = &ctx->offset1; ctx->src = src->planes[ctx->src_frame_plane] + ctx->offset->src_offset + src->strides[ctx->src_frame_plane] * ctx->first_scanline; ctx->src_stride = src->strides[ctx->src_frame_plane]; ctx->dst_size = ctx->buffer_width; #if 0 fprintf(stderr, "First direction\n"); dump_offset(ctx->offset); #endif nt = gavl_thread_pool_get_num_threads(ctx->opt->tp); if(nt > ctx->buffer_height) nt = ctx->buffer_height; // fprintf(stderr, "Scaling 2 directions (%d threads)\n", nt); delta = ctx->buffer_height / nt; scanline = 0; for(i = 0; i < nt - 1; i++) { gavl_thread_pool_run(func_1_of_2, ctx, scanline, scanline+delta, ctx->opt->tp, i); // fprintf(stderr, "scanline: %d (%d)\n", ctx->scanline, ctx->dst_rect.h); scanline += delta; } gavl_thread_pool_run(func_1_of_2, ctx, scanline, ctx->buffer_height, ctx->opt->tp, nt - 1); for(i = 0; i < nt; i++) gavl_thread_pool_stop(ctx->opt->tp, i); // fprintf(stderr, "done\n"); /* Second step */ ctx->offset = &ctx->offset2; #if 0 fprintf(stderr, "Second direction\n"); dump_offset(ctx->offset); #endif ctx->src = ctx->buffer; ctx->src_stride = ctx->buffer_stride; ctx->dst_size = ctx->dst_rect.w; ctx->dst_frame = dst; nt = gavl_thread_pool_get_num_threads(ctx->opt->tp); if(nt > ctx->dst_rect.h) nt = ctx->dst_rect.h; delta = ctx->dst_rect.h / nt; scanline = 0; for(i = 0; i < nt - 1; i++) { gavl_thread_pool_run(func_2_of_2, ctx, scanline, scanline+delta, ctx->opt->tp, i); // fprintf(stderr, "scanline: %d (%d)\n", ctx->scanline, ctx->dst_rect.h); scanline += delta; } gavl_thread_pool_run(func_2_of_2, ctx, scanline, ctx->dst_rect.h, ctx->opt->tp, nt - 1); for(i = 0; i < nt; i++) gavl_thread_pool_stop(ctx->opt->tp, i); // fprintf(stderr, "done\n"); break; } } #ifdef HAVE_MMX #define EMMS \ if(ctx->need_emms) \ { \ __asm__ __volatile__ ("emms"); \ ctx->need_emms = 0; \ } #else #define EMMS #endif void gavl_video_scale_context_scale(gavl_video_scale_context_t * ctx, const gavl_video_frame_t * src, gavl_video_frame_t * dst) { uint8_t * dst_save; int i; if(ctx->opt->tp) { scale_context_scale_mt(ctx, src, dst); return; } // fprintf(stderr, "gavl_video_scale_context_scale, plane %d\n", // ctx->dst_frame_plane); switch(ctx->num_directions) { case 1: /* Only step */ ctx->src = src->planes[ctx->src_frame_plane] + ctx->offset->src_offset; ctx->src_stride = src->strides[ctx->src_frame_plane]; dst_save = dst->planes[ctx->dst_frame_plane] + ctx->offset->dst_offset; for(i = 0; i < ctx->dst_rect.h; i++) { // fprintf(stderr, "scanline: %d (%d)\n", ctx->scanline, ctx->dst_rect.h); ctx->func1(ctx, i, dst_save); dst_save += dst->strides[ctx->dst_frame_plane]; } EMMS break; case 2: /* First step */ ctx->offset = &ctx->offset1; ctx->src = src->planes[ctx->src_frame_plane] + ctx->offset->src_offset + src->strides[ctx->src_frame_plane] * ctx->first_scanline; ctx->src_stride = src->strides[ctx->src_frame_plane]; ctx->dst_size = ctx->buffer_width; dst_save = ctx->buffer; #if 0 fprintf(stderr, "First direction\n"); dump_offset(ctx->offset); #endif for(i = 0; i < ctx->buffer_height; i++) { ctx->func1(ctx, i, dst_save); dst_save += ctx->buffer_stride; } EMMS // fprintf(stderr, "done\n"); /* Second step */ ctx->offset = &ctx->offset2; #if 0 fprintf(stderr, "Second direction\n"); dump_offset(ctx->offset); #endif ctx->src = ctx->buffer; ctx->src_stride = ctx->buffer_stride; ctx->dst_size = ctx->dst_rect.w; dst_save = dst->planes[ctx->dst_frame_plane] + ctx->offset->dst_offset; for(i = 0; i < ctx->dst_rect.h; i++) { // fprintf(stderr, "i: %d\n", ctx->scanline); ctx->func2(ctx, i, dst_save); dst_save += dst->strides[ctx->dst_frame_plane]; } EMMS // fprintf(stderr, "done\n"); break; } } bplaum-gavl-b9385e3/gavl/scale_kernels.c000066400000000000000000000075371513252040200202020ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include #include static float get_weight_nearest(gavl_video_options_t * opt, double t) { if (t < -0.5) return 0.0; if (t <= 0.5) return 1.0; return 0.0; } static float get_weight_bilinear(gavl_video_options_t * opt, double t) { if (t <= -1.0) return 0.0; if (t < 0.0) return (t + 1.0); if (t < 1.0) return (1.0 - t); return 0.0; } static float get_weight_quadratic(gavl_video_options_t * opt, double t) { if (t < 0.0) t = -t; if (t < 0.5) return 0.75 - (t * t); if (t < 1.5) { t -= 1.5; return 0.5 * t * t; } return 0.0; } static float get_weight_cubic_bspline(gavl_video_options_t * opt, double t) { if (t < 0.0) t = -t; if (t < 1.0) { return (4.0 + (t * t * (-6.0 + (t * 3.0)))) / 6.0; } if (t < 2.0) { t = 2.0 - t; return t * t * t / 6.0; } return 0.0; } static float get_weight_cubic_mitchell(gavl_video_options_t * opt, double t) { if (t < 0.0) t = -t; if (t < 1.0) { return (16.0/3.0 + (t * (0.0 + (t * (-12.0 + (t * (7.0))))))) / 6.0; /* (3)t^3 - (6)t^2 + 4 */ /* (1)t^3 - (2)t^2 + 1 */ /* 3 6 3 */ /* 2(a+2) = a+3 2a+4=a+3 a=-1 */ } if (t < 2.0) { return (32.0/3.0 + (t * (-20.0 + (t * (12.0 + (t * -7.0/3.0)))))) / 6.0; } return 0.0; } static float get_weight_cubic_catmull(gavl_video_options_t * opt, double t) { if (t < 0.0) t = -t; if (t < 1.0) return (2.0 + (t * t * (-5.0 + (t * 3.0)))) / 2.0; if (t < 2.0) return (4.0 + (t * (-8.0 + (t * (5.0 - t))))) / 2.0; return 0.0; } #define PI 3.1415926535897932384626433832795029L static float get_weight_sinc(gavl_video_options_t * opt, double t) { double w, order; order = (float)(opt->scale_order); if (t < 0.0) t = -t; if (t == 0.0) { return 1.0; } else if (t < order) { w = sin(PI*t / order) / (PI*t / order); return w * sin(t*PI) / (t*PI); } else { return 0.0; } } gavl_video_scale_get_weight gavl_video_scale_get_weight_func(gavl_video_options_t * opt, int * num_points) { switch(opt->scale_mode) { case GAVL_SCALE_NEAREST: *num_points = 1; return get_weight_nearest; case GAVL_SCALE_BILINEAR: *num_points = 2; return get_weight_bilinear; case GAVL_SCALE_QUADRATIC: *num_points = 3; return get_weight_quadratic; case GAVL_SCALE_CUBIC_BSPLINE: *num_points = 4; return get_weight_cubic_bspline; case GAVL_SCALE_CUBIC_MITCHELL: *num_points = 4; return get_weight_cubic_mitchell; case GAVL_SCALE_CUBIC_CATMULL: *num_points = 4; return get_weight_cubic_catmull; case GAVL_SCALE_SINC_LANCZOS: *num_points = opt->scale_order * 2; return get_weight_sinc; default: *num_points = 0; return NULL; } } bplaum-gavl-b9385e3/gavl/scale_table.c000066400000000000000000000450701513252040200176200ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include #include #include #include #define BLUR_THRESHOLD 5.0e-3 // #define DUMP_TABLE /* Conversion between src and dst coordinates */ #define DST_TO_SRC(c) ((double)c)/scale_factor+src_off #define ROUND(val) (val >= 0.0) ? (int)(val+0.5):(int)(val-0.5) static void shift_borders(gavl_video_scale_table_t * tab, int src_width); static void normalize_table(gavl_video_scale_table_t * tab); static void alloc_table(gavl_video_scale_table_t * tab, int num_pixels); static void check_clip(gavl_video_scale_table_t * tab); static void get_preblur_coeffs(double scale_factor, gavl_video_options_t * opt, int * num_ret, float ** coeffs_ret); static void convolve_preblur(float * src_1, int src_len_1, float * src_2, int src_len_2, float * dst); /* * Creation of the scale tables, the most ugly part. * The tables are for one dimension only, for 2D scaling, we'll have 2 tables. * * We have 3 values: src_size (double), src_off (double) * and dst_size (int). * * The scale factor is dst_size / src_size. src_off is the coordinate of the * first destination pixel in source coordinates. * * When src_offset is zero, we'll have a pattern like this * (for upscaling by a factor of 2): * * src: | x | x | * dst: | x | x | x | x | * * For a src_offset of -0.25, we'll have * * src: | x | x | * dst: | x | x | x | x | * * The table is created in the following steps: * * - Calculate the floating point filter coefficients for each destination pixel * * - Shift the indixes of the source pixels such that no source pixels are outside * the image. The nonexistent pixels beyond the borders (whose values are needed * for scaling) are assumed to have the same color as the nearest pixel at the * image border * * - Convert the floating point coefficients to integer with the specified bit * resolution requested by the scaling routine. * */ void gavl_video_scale_table_init(gavl_video_scale_table_t * tab, gavl_video_options_t * opt, double src_off, double src_size, int dst_size, int src_width) { int widen; double t; int i, j, src_index_min, src_index_nearest; double src_index_f; float widen_factor; float * preblur_factors = NULL; int num_preblur_factors = 0; int num_tmp_factors = 0; float * tmp_factors = NULL; gavl_video_scale_get_weight weight_func; double scale_factor; scale_factor = (double)(dst_size) / src_size; widen = 0; if(!dst_size) return; if(scale_factor < 1.0) { switch(opt->downscale_filter) { case GAVL_DOWNSCALE_FILTER_AUTO: //!< Auto selection based on quality if(opt->quality < 2) break; else { get_preblur_coeffs(scale_factor, opt, &num_preblur_factors, &preblur_factors); } break; case GAVL_DOWNSCALE_FILTER_NONE: //!< Fastest method, might produce heavy aliasing artifacts break; case GAVL_DOWNSCALE_FILTER_WIDE: //!< Widen the filter curve according to the scaling ratio. if(opt->downscale_blur > BLUR_THRESHOLD) widen = 1; break; case GAVL_DOWNSCALE_FILTER_GAUSS: //!< Do a Gaussian preblur get_preblur_coeffs(scale_factor, opt, &num_preblur_factors, &preblur_factors); break; } } // src_off = -0.25; /* Get the kernel generator */ weight_func = gavl_video_scale_get_weight_func(opt, &tab->factors_per_pixel); num_tmp_factors = tab->factors_per_pixel; if(num_preblur_factors) { tmp_factors = malloc(sizeof(*tmp_factors) * num_tmp_factors); tab->factors_per_pixel += num_preblur_factors - 1; } if(widen) { widen_factor = ceil(opt->downscale_blur / scale_factor); tab->factors_per_pixel *= (int)(widen_factor); } else widen_factor = 1.0; // fprintf(stderr, "tab->factors_per_pixel: %d, src_width: %d\n", // tab->factors_per_pixel, src_width); if(tab->factors_per_pixel > src_width) { switch(src_width) { case 1: opt->scale_mode = GAVL_SCALE_NEAREST; // fprintf(stderr, "gavl: Changing scale mode to nearest (image too small)\n"); break; case 2: case 3: opt->scale_mode = GAVL_SCALE_BILINEAR; // fprintf(stderr, "gavl: Changing scale mode to bilinear (image too small)\n"); break; default: opt->scale_mode = GAVL_SCALE_CUBIC_BSPLINE; // fprintf(stderr, "gavl: Changing scale mode to bspline (image too small)\n"); break; } weight_func = gavl_video_scale_get_weight_func(opt, &tab->factors_per_pixel); } // fprintf(stderr, "gavl_video_scale_table_init: %f %f %d %d\n", // src_off, src_size, dst_size, tab->factors_per_pixel); /* (Re)allocate memory */ alloc_table(tab, dst_size); for(i = 0; i < dst_size; i++) { /* src_index_f: Fractional source index */ /* src_index_nearest: Nearest integer source index */ src_index_f = DST_TO_SRC((double)i); // fprintf(stderr, "dst: %d -> src: %f (offset: s: %.2f)\n", i, src_index_f, // src_off); // if(src_index_f > src_size - 1.0) // src_index_f = src_size - 1.0; src_index_nearest = ROUND(src_index_f); tab->pixels[i].index = src_index_nearest - tab->factors_per_pixel/2; src_index_min = src_index_nearest - num_tmp_factors/2; #if 0 if(((double)src_index_nearest < src_index_f) && !(tab->factors_per_pixel % 2)) { src_index_min++; tab->pixels[i].index++; } #endif // fprintf(stderr, "src_index_f: %f, src_index_nearest: %d, src_index_min: %d, pixel.index: %d, dst_index: %d\n", // src_index_f, src_index_nearest, src_index_min, // tab->pixels[i].index, // i); /* For nearest neighbour, we don't need any factors */ if(tab->factors_per_pixel == 1) { if(tab->pixels[i].index < 0) tab->pixels[i].index = 0; if(tab->pixels[i].index > src_width - 1) tab->pixels[i].index = src_width - 1; continue; } /* Normalized distance of the destination pixel to the first source pixel in src coordinates */ if(num_preblur_factors) { t = (src_index_f - src_index_min)/widen_factor; for(j = 0; j < num_tmp_factors; j++) { tmp_factors[j] = weight_func(opt, t); // fprintf(stderr, "j: %d, t: %f, w: %f\n", j, t, weight_func(opt, t)); t -= 1.0; } convolve_preblur(tmp_factors, num_tmp_factors, preblur_factors, num_preblur_factors, tab->pixels[i].factor_f); } else { t = (src_index_f - tab->pixels[i].index)/widen_factor; for(j = 0; j < tab->factors_per_pixel; j++) { tab->pixels[i].factor_f[j] = weight_func(opt, t); // fprintf(stderr, "j: %d, t: %f, w: %f\n", j, t, weight_func(opt, t)); t -= 1.0 /widen_factor; } } #if 0 for(j = 0; j < tab->factors_per_pixel; j++) { fprintf(stderr, "%d %f\n", j, tab->pixels[i].factor_f[j]); } #endif } // fprintf(stderr, "Before shift\n"); // gavl_video_scale_table_dump(tab); shift_borders(tab, src_width); // if(opt->scale_mode == GAVL_SCALE_SINC_LANCZOS) normalize_table(tab); check_clip(tab); if(tmp_factors) free(tmp_factors); if(preblur_factors) free(preblur_factors); // fprintf(stderr, "After shift %d\n", src_width); //if(deinterlace || (total_fields == 2)) #ifdef DUMP_TABLE gavl_video_scale_table_dump(tab); #endif } void gavl_video_scale_table_init_convolve(gavl_video_scale_table_t * tab, gavl_video_options_t * opt, int num_coeffs, const float * coeffs, int size) { int i, j; tab->factors_per_pixel = num_coeffs * 2 + 1; alloc_table(tab, size); for(i = 0; i < size; i++) { tab->pixels[i].index = i - num_coeffs; for(j = 0; j < tab->factors_per_pixel; j++) tab->pixels[i].factor_f[j] = coeffs[j]; } shift_borders(tab, size); if(opt->conversion_flags & GAVL_CONVOLVE_NORMALIZE) normalize_table(tab); else tab->normalized = 0; check_clip(tab); // gavl_video_scale_table_dump(tab); } static void alloc_table(gavl_video_scale_table_t * tab, int dst_size) { int i; if(tab->pixels_alloc < dst_size) { tab->pixels_alloc = dst_size + 128; tab->pixels = realloc(tab->pixels, tab->pixels_alloc * sizeof(*(tab->pixels))); } tab->num_pixels = dst_size; if(tab->factors_alloc < dst_size * tab->factors_per_pixel) { tab->factors_alloc = dst_size * tab->factors_per_pixel + 128; tab->factors_f = realloc(tab->factors_f, tab->factors_alloc * sizeof(*(tab->factors_f))); tab->factors_i = realloc(tab->factors_i, tab->factors_alloc * sizeof(*(tab->factors_i))); } for(i = 0; i < dst_size; i++) { /* Set the factor pointers */ tab->pixels[i].factor_f = tab->factors_f + i * tab->factors_per_pixel; tab->pixels[i].factor_i = tab->factors_i + i * tab->factors_per_pixel; } } static void normalize_table(gavl_video_scale_table_t * tab) { int i, j; float sum; for(i = 0; i < tab->num_pixels; i++) { sum = 0.0; for(j = 0; j < tab->factors_per_pixel; j++) sum += tab->pixels[i].factor_f[j]; /* This is to prevent accidental setting of clipping functions due to rounding errors. For usual applications, it should not be noticeable */ sum += FLT_EPSILON; // fprintf(stderr, "sum: %f\n", sum); for(j = 0; j < tab->factors_per_pixel; j++) tab->pixels[i].factor_f[j] /= sum; } tab->normalized = 1; } /* Shift the borders of the table such that no indices are out of range. The values in the pixels beyond the border are assumed to be the same as the border pixel. */ /* shift_up() for shift = 2, num = 5 | f0 | f1 | f2 | f3 | f4 | -> | S | f3 | f4 | 0 | 0 | with S = f0 + f1 + f2 */ static void shift_up(float * fac, int num, int shift) { int j; /* Add all out-of-range coefficients up into the first coefficient of the new array */ for(j = 0; j < shift; j++) fac[shift] += fac[j]; /* Move Coefficients to new locations */ for(j = 0; j < num - shift; j++) fac[j] = fac[j + shift]; /* Zero unused entries */ for(j = num - shift; j < num; j++) fac[j] = 0.0; } /* shift_down() for shift = 2, num = 5 | f0 | f1 | f2 | f3 | f4 | -> | 0 | 0 | f0 | f1 | S | with S = f2 + f3 + f4 */ static void shift_down(float * fac, int num, int shift) { int j; // fprintf(stderr, "Shift down 1 %d\n", shift); /* Add all out-of-range coefficients up into the first coefficient of the new array */ for(j = num - shift; j < num; j++) fac[num - shift - 1] += fac[j]; /* Move Coefficients to new locations */ for(j = num - 1; j >= shift; j--) fac[j] = fac[j-shift]; /* Zero unused entries */ for(j = 0; j < shift; j++) fac[j] = 0.0; } static void shift_borders(gavl_video_scale_table_t * tab, int src_width) { int i, shift; for(i = 0; i < tab->num_pixels; i++) { // fprintf(stderr, "Shift borders1 %d %d %d\n", tab->pixels[i].index, // tab->factors_per_pixel, src_width); if(tab->pixels[i].index < 0) { shift = -tab->pixels[i].index; shift_up(tab->pixels[i].factor_f, tab->factors_per_pixel, shift); tab->pixels[i].index = 0; } if(tab->pixels[i].index + tab->factors_per_pixel > src_width) { shift = tab->pixels[i].index + tab->factors_per_pixel - src_width; shift_down(tab->pixels[i].factor_f, tab->factors_per_pixel, shift); tab->pixels[i].index = src_width - tab->factors_per_pixel; } // fprintf(stderr, "Shift borders2 %d %d %d\n", tab->pixels[i].index, // tab->factors_per_pixel, src_width); } } void gavl_video_scale_table_dump(gavl_video_scale_table_t * tab) { int i, j; float sum; fprintf(stderr, "Scale table:\n"); for(i = 0; i < tab->num_pixels; i++) { sum = 0.0; fprintf(stderr, " dst: %d", i); for(j = 0; j < tab->factors_per_pixel; j++) { // fprintf(stderr, ", fac[%d]: %f [%d]", tab->pixels[i].index + j, // tab->pixels[i].factor[j].fac_f, // tab->pixels[i].factor[j].fac_i); fprintf(stderr, ", fac[%d]: %f (%d) ", tab->pixels[i].index + j, tab->pixels[i].factor_f[j], tab->pixels[i].factor_i[j]); sum += tab->pixels[i].factor_f[j]; } fprintf(stderr, ", sum: %f\n", sum); } } #if 0 static void gavl_video_scale_table_dump_int(gavl_video_scale_table_t * tab) { int i, j; int sum; fprintf(stderr, "Scale table:\n"); for(i = 0; i < tab->num_pixels; i++) { sum = 0.0; fprintf(stderr, " dst: %d", i); for(j = 0; j < tab->factors_per_pixel; j++) { // fprintf(stderr, ", fac[%d]: %f [%d]", tab->pixels[i].index + j, // tab->pixels[i].factor[j].fac_f, // tab->pixels[i].factor[j].fac_i); fprintf(stderr, ", fac[%d]: %d ", tab->pixels[i].index + j, tab->pixels[i].factor_i[j]); sum += tab->pixels[i].factor_i[j]; } fprintf(stderr, ", sum: %d\n", sum); } } #endif void gavl_video_scale_table_init_int(gavl_video_scale_table_t * tab, int bits) { int fac_max_i, i, j; float fac_max_f, sum_f; int sum_i, index; int min_index, max_index, fac_i_norm = 0; // fac_max_i = (1<num_pixels; i++) { min_index = index; max_index = index; sum_i = 0; sum_f = 0.0; for(j = 0; j < tab->factors_per_pixel; j++) { tab->factors_i[index] = (int)(fac_max_f * tab->factors_f[index]+0.5); sum_i += tab->factors_i[index]; sum_f += tab->factors_f[index]; if(j) { if(tab->factors_i[index] > tab->factors_i[max_index]) max_index = index; if(tab->factors_i[index] < tab->factors_i[min_index]) min_index = index; } index++; } if(!i) fac_i_norm = (int)(sum_f * fac_max_i + 0.5); if(sum_i > fac_i_norm) tab->factors_i[max_index] -= (sum_i - fac_i_norm); else if(sum_i < fac_i_norm) tab->factors_i[min_index] += (fac_i_norm - sum_i); } // gavl_video_scale_table_dump_int(tab); } void gavl_video_scale_table_cleanup(gavl_video_scale_table_t * tab) { if(tab->pixels) free(tab->pixels); if(tab->factors_f) free(tab->factors_f); if(tab->factors_i) free(tab->factors_i); } void gavl_video_scale_table_get_src_indices(gavl_video_scale_table_t * tab, int * start, int * size) { if(!tab->pixels) { *start = 0; *size = 0; } else { *start = tab->pixels[0].index; *size = tab->pixels[tab->num_pixels-1].index + tab->factors_per_pixel - *start; } } void gavl_video_scale_table_shift_indices(gavl_video_scale_table_t * tab, int shift) { int i; if(!shift) return; for(i = 0; i < tab->num_pixels; i++) { tab->pixels[i].index += shift; } } static void check_clip(gavl_video_scale_table_t * tab) { int i, j; float sum; tab->do_clip = 0; for(i = 0; i < tab->num_pixels; i++) { sum = 0.0; for(j = 0; j < tab->factors_per_pixel; j++) { sum += tab->pixels[i].factor_f[j]; if(tab->pixels[i].factor_f[j] < 0.0 || tab->pixels[i].factor_f[j] > 1.0) { tab->do_clip = 1; return; } } if(sum > 1.0) { tab->do_clip = 1; return; } } } static void get_preblur_coeffs(double scale_factor, gavl_video_options_t * opt, int * num_ret, float ** coeffs_ret) { *num_ret = 0; /* Gaussian lowpass */ if(opt->downscale_filter == GAVL_DOWNSCALE_FILTER_GAUSS) { int i; float tmp; float f_co = 0.25 * scale_factor; int n = (int)(ceil(0.398 / f_co)); if(n && (opt->downscale_blur >= BLUR_THRESHOLD)) { *num_ret = 2 * n + 1; *coeffs_ret = malloc(*num_ret * sizeof(**coeffs_ret)); for(i = -n; i <= n; i++) { tmp = 3.011 * f_co * (float)i / opt->downscale_blur; (*coeffs_ret)[i+n] = exp(-M_PI * tmp * tmp); } } } if(!(*num_ret)) *coeffs_ret = NULL; } static void convolve_preblur(float * src_1, int src_len_1, float * src_2, int src_len_2, float * dst) { int m, n, nmax; nmax = src_len_1 + src_len_2 - 1; for(n = 0; n < nmax; n++) { dst[n] = 0.0; for(m = 0; m < src_len_1; m++) { if((n - m >= 0) && (n - m < src_len_2)) dst[n] += src_1[m] * src_2[n-m]; } } } bplaum-gavl-b9385e3/gavl/seekindex.c000066400000000000000000000103061513252040200173330ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include #include void gavl_seek_index_append_pos_pts(gavl_seek_index_t * idx, int64_t position, int64_t pts) { /* If it is not the first packet starting at this position, skip this also */ if(idx->num_entries && (idx->entries[idx->num_entries-1].position == position)) return; if(idx->num_entries == idx->entries_alloc) { idx->entries_alloc += 1024; idx->entries = realloc(idx->entries, idx->entries_alloc * sizeof(*idx->entries)); memset(idx->entries + idx->num_entries, 0, (idx->entries_alloc - idx->num_entries) * sizeof(*idx->entries)); } idx->entries[idx->num_entries].pts = pts; idx->entries[idx->num_entries].position = position; idx->num_entries++; } void gavl_seek_index_append_packet(gavl_seek_index_t * idx, const gavl_packet_t * pkt, int compression_flags) { /* No position */ if(pkt->position < 0) return; /* Skip non P-frames */ if((compression_flags & GAVL_COMPRESSION_HAS_P_FRAMES) && !(pkt->flags & GAVL_PACKET_KEYFRAME)) return; gavl_seek_index_append_pos_pts(idx,pkt->position, pkt->pts); } int gavl_seek_index_seek(const gavl_seek_index_t * idx, int64_t pts) { int i = idx->num_entries-1; while(i >= 0) { if(idx->entries[i].pts <= pts) return i; i--; } return 0; } void gavl_seek_index_free(gavl_seek_index_t * idx) { if(idx->entries) free(idx->entries); } /* Serialize */ void gavl_seek_index_write(const gavl_seek_index_t * idx, gavl_io_t * io) { int i; gavl_io_write_int32v(io, idx->num_entries); for(i = 0; i < idx->num_entries; i++) { gavl_io_write_int64v(io, idx->entries[i].position); gavl_io_write_int64v(io, idx->entries[i].pts); } } void gavl_seek_index_to_buffer(const gavl_seek_index_t * idx, gavl_buffer_t * buf) { gavl_io_t * io = gavl_io_create_buffer_write(buf); gavl_seek_index_write(idx, io); gavl_io_destroy(io); } int gavl_seek_index_read(gavl_seek_index_t * idx, gavl_io_t * io) { int i; if(!gavl_io_read_int32v(io, &idx->num_entries)) return 0; idx->entries_alloc = idx->num_entries; idx->entries = calloc(idx->entries_alloc, sizeof(*idx->entries)); for(i = 0; i < idx->num_entries; i++) { if(!gavl_io_read_int64v(io, &idx->entries[i].position) || !gavl_io_read_int64v(io, &idx->entries[i].pts)) return 0; } return 1; } int gavl_seek_index_from_buffer(gavl_seek_index_t * idx, const gavl_buffer_t * buf) { int ret = 0; gavl_io_t * io = gavl_io_create_buffer_read(buf); if(!gavl_seek_index_read(idx, io)) goto fail; ret = 1; fail: gavl_io_destroy(io); return ret; } void gavl_seek_index_dump(gavl_seek_index_t * idx) { int i; gavl_dprintf("Seek index %d entries\n", idx->num_entries); for(i = 0; i < idx->num_entries; i++) { gavl_dprintf(" %"PRId64" %"PRId64" %"PRId64" %"PRId64"\n", idx->entries[i].position, idx->entries[i].pts, (i < idx->num_entries - 1) ? idx->entries[i+1].pts - idx->entries[i].pts : 0, (i < idx->num_entries - 1) ? idx->entries[i+1].position - idx->entries[i].position : 0); } } bplaum-gavl-b9385e3/gavl/shm.c000066400000000000000000000114251513252040200161460ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include #include #include #include #include #include #include #include #include #include /* For mode constants */ #include /* For O_* constants */ #include // #include #include #define LOG_DOMAIN "shm" #define ALIGN_BYTES 16 #if 0 typedef struct { pthread_mutex_t mutex; int refcount; } refcounter_t; #endif static pthread_mutex_t id_mutex = PTHREAD_MUTEX_INITIALIZER; static int shm_ctx = 0; /* static int align_size(int size) { size = ((size + ALIGN_BYTES - 1) / ALIGN_BYTES) * ALIGN_BYTES; return size; } static int get_real_size(int size) { return align_size(size) + sizeof(refcounter_t); } */ uint8_t * gavl_shm_get_buffer(gavl_shm_t * s, int * size) { if(size) *size = s->size; return s->addr; } /* static void gen_name(int pid, int shmid, char * ret) { snprintf(ret, BG_SHM_NAME_MAX, "/gavl-%08x-%08x", pid, shmid); } */ gavl_shm_t * gavl_shm_create(int size, int * ctx, int * idx) { int shm_fd = -1; void * addr; gavl_shm_t * ret = NULL; char name[BG_SHM_NAME_MAX]; // pthread_mutexattr_t attr; // int pid = getpid(); if(!(*ctx)) { pthread_mutex_lock(&id_mutex); shm_ctx++; *ctx = shm_ctx; pthread_mutex_unlock(&id_mutex); } snprintf(name, BG_SHM_NAME_MAX, "/gavl-%08x-%08x-%08x", getpid(), *ctx, *idx); (*idx)++; if((shm_fd = shm_open(name, O_RDWR | O_CREAT | O_EXCL, S_IRUSR | S_IWUSR | S_IRGRP | S_IROTH)) < 0) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "shm_open of %s failed: %s", name, strerror(errno)); goto fail; } if(ftruncate(shm_fd, size)) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "ftruncate failed: %s", strerror(errno)); goto fail; } if((addr = mmap(0, size, PROT_READ | PROT_WRITE, MAP_SHARED, shm_fd, 0)) == MAP_FAILED) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "mmap failed: %s", strerror(errno)); goto fail; } ret = calloc(1, sizeof(*ret)); ret->addr = addr; ret->size = size; strncpy(ret->name, name, BG_SHM_NAME_MAX); ret->flags |= BG_SHM_FLAG_CREATOR; gavl_log(GAVL_LOG_DEBUG, LOG_DOMAIN, "created shm segment %s", name); fail: if(shm_fd >= 0) close(shm_fd); return ret; } gavl_shm_t * gavl_shm_map(const char * name, int size, int wr) { void * addr; gavl_shm_t * ret = NULL; int shm_fd; // int real_size = get_real_size(size); int arg; arg = O_RDONLY; if(wr) arg = O_RDWR; shm_fd = shm_open(name, arg, 0); if(shm_fd < 0) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "shm_open of %s failed: %s", name, strerror(errno)); goto fail; } arg = PROT_READ; if(wr) arg |= PROT_WRITE; if((addr = mmap(0, size, arg, MAP_SHARED, shm_fd, 0)) == MAP_FAILED) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "mmap failed: %s", strerror(errno)); goto fail; } ret = calloc(1, sizeof(*ret)); ret->addr = addr; ret->size = size; // ret->rc = (refcounter_t*)(ret->addr + align_size(size)); gavl_log(GAVL_LOG_DEBUG, LOG_DOMAIN, "created shm segment (read) %s", name); fail: if(shm_fd >= 0) close(shm_fd); return ret; } void gavl_shm_unmap(gavl_shm_t * shm) { if(!(shm->flags | BG_SHM_FLAG_CREATOR)) { munmap(shm->addr, shm->size); shm->addr = NULL; } } void gavl_shm_destroy(gavl_shm_t * shm) { if(shm->addr) munmap(shm->addr, shm->size); if(shm->flags | BG_SHM_FLAG_CREATOR) { shm_unlink(shm->name); gavl_log(GAVL_LOG_DEBUG, LOG_DOMAIN, "destroyed shm segment %s", shm->name); } free(shm); } bplaum-gavl-b9385e3/gavl/socket.c000066400000000000000000000544711513252040200166570ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #define _GNU_SOURCE #include #include #include #include #include #include #include #include // #include #ifdef HAVE_SYS_SELECT_H #include #else #include #endif #include #ifdef HAVE_SYS_SENDFILE_H #include #endif #include // IPPROTO_TCP, TCP_MAXSEG #include #include /* gethostbyname */ #include #include #include #include #include #include #include #define LOG_DOMAIN "socket" #if !HAVE_DECL_MSG_NOSIGNAL #define MSG_NOSIGNAL 0 #endif #include static int create_socket(int domain, int type, int protocol) { int ret; #if HAVE_DECL_SO_NOSIGPIPE // OSX int value = 1; #endif ret = socket(domain, type, protocol); #if HAVE_DECL_SO_NOSIGPIPE // OSX if(ret < 0) return ret; if(setsockopt(ret, SOL_SOCKET, SO_NOSIGPIPE, &value, sizeof(int)) == -1) return -1; #endif return ret; } int gavl_socket_get_errno(int fd) { int err = 0; socklen_t err_len; err_len = sizeof(err); if(getsockopt(fd, SOL_SOCKET, SO_ERROR, &err, &err_len)) { err = errno; gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "getsockopt failed: %s", strerror(err)); } return err; } /* Client connection (stream oriented) */ static int finalize_connection(int ret) { int err; err = gavl_socket_get_errno(ret); if(err) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Connecting failed: %s", strerror(err)); return -1; } /* Set back to blocking mode */ if(!gavl_fd_set_block(ret, 1)) return -1; return 1; } int gavl_socket_connect_inet(gavl_socket_address_t * a, int milliseconds) { int ret = -1; char str[GAVL_SOCKET_ADDR_STR_LEN]; gavl_socket_address_to_string(a, str); gavl_log(GAVL_LOG_DEBUG, LOG_DOMAIN, "Connecting to %s", str); /* Create the socket */ if((ret = create_socket(a->addr.ss_family, SOCK_STREAM, 0)) < 0) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Cannot create TCP socket: %s", strerror(errno)); return -1; } /* Set nonblocking mode */ if(!gavl_fd_set_block(ret, 0)) { gavl_socket_close(ret); return -1; } /* Connect the thing */ if(connect(ret, (struct sockaddr*)&a->addr, a->len) < 0) { if(errno == EINPROGRESS) { if(!milliseconds) return ret; if(!gavl_fd_can_write(ret, milliseconds)) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Connection timed out"); return -1; } } else { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Connecting failed: %s", strerror(errno)); return -1; } } /* Check for error */ if(finalize_connection(ret) < 0) { gavl_socket_close(ret); return -1; } return ret; } int gavl_socket_connect_inet_complete(int fd, int milliseconds) { if(!gavl_fd_can_write(fd, milliseconds)) { return 0; } gavl_log(GAVL_LOG_DEBUG, LOG_DOMAIN, "Connected"); return finalize_connection(fd); } int gavl_socket_connect_unix(const char * name) { struct sockaddr_un addr; int addr_len; int ret; ret = create_socket(PF_LOCAL, SOCK_STREAM, 0); if(ret < 0) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Cannot create unix socket: %s", strerror(errno)); return -1; } addr.sun_family = AF_LOCAL; strncpy(addr.sun_path, name, sizeof(addr.sun_path)); addr.sun_path[sizeof (addr.sun_path) - 1] = '\0'; addr_len = SUN_LEN(&addr); if(connect(ret,(struct sockaddr*)(&addr),addr_len)<0) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Connecting unix socket %s failed: %s", name, strerror(errno)); return -1; } return ret; } void gavl_socket_disconnect(int sock) { gavl_socket_close(sock); } /* Older systems assign an ipv4 address to localhost, newer systems (e.g. Ubuntu Karmic) assign an ipv6 address to localhost. To test this, we make a name lookup for "localhost" and test if it returns an IPV4 or an IPV6 address */ static int have_ipv6() { struct addrinfo hints; struct addrinfo * ret; int err, has_ipv6; memset(&hints, 0, sizeof(hints)); hints.ai_family = PF_UNSPEC; hints.ai_socktype = SOCK_STREAM; // SOCK_DGRAM hints.ai_protocol = 0; // 0 hints.ai_flags = 0; if((err = getaddrinfo("localhost", NULL /* service */, &hints, &ret))) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Cannot resolve address of localhost: %s", gai_strerror(err)); return 0; } if(ret[0].ai_addr->sa_family == AF_INET6) has_ipv6 = 1; else has_ipv6 = 0; freeaddrinfo(ret); return has_ipv6; } /* Server socket (stream oriented) */ int gavl_listen_socket_create_inet(gavl_socket_address_t * addr, int port, int queue_size, int flags) { int ret, err, use_ipv6 = 0; struct sockaddr_in name_ipv4; struct sockaddr_in6 name_ipv6; if(addr) { if(addr->addr.ss_family == AF_INET6) use_ipv6 = 1; } else if(flags & GAVL_SOCKET_LOOPBACK) use_ipv6 = have_ipv6(); memset(&name_ipv4, 0, sizeof(name_ipv4)); memset(&name_ipv6, 0, sizeof(name_ipv6)); /* Create the socket. */ if(use_ipv6) ret = create_socket(PF_INET6, SOCK_STREAM, 0); else ret = create_socket(PF_INET, SOCK_STREAM, 0); if(ret < 0) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Cannot create TCP server socket: %s", strerror(errno)); return -1; } if(flags & GAVL_SOCKET_REUSEADDR) { int optval = 1; setsockopt(ret, SOL_SOCKET, SO_REUSEADDR, &optval, sizeof(optval)); } /* Give the socket a name. */ if(addr) { err = bind(ret, (struct sockaddr*)&addr->addr, addr->len); } else if(use_ipv6) { name_ipv6.sin6_family = AF_INET6; name_ipv6.sin6_port = htons(port); if(flags & GAVL_SOCKET_LOOPBACK) name_ipv6.sin6_addr = in6addr_loopback; else name_ipv6.sin6_addr = in6addr_any; err = bind(ret, (struct sockaddr *)&name_ipv6, sizeof(name_ipv6)); } else { name_ipv4.sin_family = AF_INET; name_ipv4.sin_port = htons(port); if(flags & GAVL_SOCKET_LOOPBACK) name_ipv4.sin_addr.s_addr = htonl(INADDR_LOOPBACK); else name_ipv4.sin_addr.s_addr = htonl(INADDR_ANY); err = bind(ret, (struct sockaddr *)&name_ipv4, sizeof(name_ipv4)); } if(err < 0) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Cannot bind inet socket: %s", strerror(errno)); return -1; } if(listen(ret, queue_size)) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Cannot put socket into listening mode"); return -1; } return ret; } int gavl_listen_socket_create_unix(const char * name, int queue_size) { int ret; struct sockaddr_un addr; int addr_len; ret = create_socket(PF_LOCAL, SOCK_STREAM, 0); if(ret < 0) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Cannot create unix server socket: %s", strerror(errno)); return -1; } addr.sun_family = AF_LOCAL; strncpy (addr.sun_path, name, sizeof(addr.sun_path)); addr.sun_path[sizeof (addr.sun_path) - 1] = '\0'; addr_len = SUN_LEN(&addr); if(bind(ret,(struct sockaddr*)(&addr),addr_len)<0) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Cannot bind UNIX domain socket: %s", strerror(errno)); return -1; } if(listen(ret, queue_size)) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Cannot put socket into listening mode"); return -1; } return ret; } /* Accept a new client connection, return -1 if there is none */ int gavl_listen_socket_accept(int sock, int milliseconds, gavl_socket_address_t * from) { int ret; if((milliseconds >= 0) && !gavl_fd_can_read(sock, milliseconds)) return -1; if(from) { struct sockaddr * a; socklen_t len; a = (struct sockaddr *)&from->addr; len = sizeof(from->addr); ret = accept(sock, a, &len); from->len = len; } else ret = accept(sock, NULL, NULL); if(ret < 0) return -1; return ret; } void gavl_listen_socket_destroy(int sock) { union { struct sockaddr addr; struct sockaddr_un addr_un; struct sockaddr_storage addr_inet; } addr; socklen_t len = sizeof(addr); if(!getsockname(sock, &addr.addr, &len) && (addr.addr.sa_family == AF_LOCAL)) { if(unlink(addr.addr_un.sun_path)) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Unlinking socket %s failed: %s", addr.addr_un.sun_path, strerror(errno)); } else gavl_log(GAVL_LOG_INFO, LOG_DOMAIN, "Unlinked socket %s", addr.addr_un.sun_path); } gavl_socket_close(sock); } int gavl_socket_read_data_noblock(int fd, uint8_t * data, int len) { int result; // fprintf(stderr, "read_data_noblock 1\n"); if(!gavl_fd_can_read(fd, 0)) return 0; // fprintf(stderr, "read_data_noblock 2 %d\n", len); result = recv(fd, data, len, 0); // fprintf(stderr, "read_data_noblock 3 %d\n", result); if(result < 0) { gavl_log(GAVL_LOG_DEBUG, LOG_DOMAIN, "Nonblocking read failed: %s", strerror(errno)); return 0; } return result; } int gavl_socket_write_data_nonblock(int fd, const uint8_t * data, int len) { int result; if(!gavl_fd_can_write(fd, 0)) { return 0; } result = send(fd, data, len, MSG_DONTWAIT | MSG_NOSIGNAL); if(!result) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Nonblocking write returned zero: %s", strerror(errno)); } if(result < 0) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Nonblocking write failed: %s", strerror(errno)); // gavl_hexdump(data, len, 16); return result; } return result; } int gavl_socket_read_data(int fd, uint8_t * data, int len, int milliseconds) { int result; int bytes_read = 0; while(bytes_read < len) { if((milliseconds >= 0) && !gavl_fd_can_read(fd, milliseconds)) { gavl_log(GAVL_LOG_DEBUG, LOG_DOMAIN, "Got read timeout (t: %d, len: %d)", milliseconds, len); return bytes_read; } if(milliseconds < 0) result = recv(fd, data + bytes_read, len - bytes_read, MSG_WAITALL); else result = recv(fd, data + bytes_read, len - bytes_read, MSG_DONTWAIT); if(result < 0) { if((errno != EAGAIN) && (errno != EWOULDBLOCK)) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Reading %d bytes failed: %s (timeout was %d)", len - bytes_read, strerror(errno), milliseconds); return bytes_read; } } else if(result == 0) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Reading %d bytes failed: Connection closed (timeout was %d)", len - bytes_read, milliseconds); break; } else { bytes_read += result; } } return bytes_read; } int gavl_socket_write_data(int fd, const void * data, int len) { int result; result = send(fd, data, len, MSG_NOSIGNAL); if(result != len) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Sending data failed: %s", strerror(errno)); return 0; } return result; } int gavl_socket_is_unix(int fd) { socklen_t slen; struct sockaddr_storage us; slen = sizeof(us); if(getsockname(fd, (struct sockaddr*)&us, &slen) == -1) return 0; if(us.ss_family == AF_LOCAL) return 1; else return 0; } int gavl_socket_is_local(int fd) { struct sockaddr_storage us; struct sockaddr_storage them; socklen_t slen; slen = sizeof(us); if(getsockname(fd, (struct sockaddr*)&us, &slen) == -1) return 1; if(slen == 0 || us.ss_family == AF_LOCAL) return 1; #if 1 if(us.ss_family == AF_INET) { struct sockaddr_in * a1, *a2; a1 = (struct sockaddr_in *)&us; if(a1->sin_addr.s_addr == INADDR_LOOPBACK) return 1; slen = sizeof(them); if(getpeername(fd, (struct sockaddr*)&them, &slen) == -1) return 0; a2 = (struct sockaddr_in *)&them; if(!memcmp(&a1->sin_addr.s_addr, &a2->sin_addr.s_addr, sizeof(a2->sin_addr.s_addr))) return 1; } else if(us.ss_family == AF_INET6) { struct sockaddr_in6 * a1, *a2; a1 = (struct sockaddr_in6 *)&us; /* Detect loopback */ if(!memcmp(&a1->sin6_addr.s6_addr, &in6addr_loopback, sizeof(in6addr_loopback))) return 1; if(getpeername(fd, (struct sockaddr*)&them, &slen) == -1) return 0; a2 = (struct sockaddr_in6 *)&them; if(!memcmp(&a1->sin6_addr.s6_addr, &a2->sin6_addr.s6_addr, sizeof(a2->sin6_addr.s6_addr))) return 1; } #endif return 0; } /* Send an entire file */ int gavl_socket_send_file(int fd, const char * filename, int64_t offset, int64_t len) { int ret = 0; int buf_size; uint8_t * buf = NULL; int file_fd; socklen_t size_len; int64_t result; int64_t bytes_written; int bytes; file_fd = open(filename, O_RDONLY); if(file_fd < 0) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Cannot open local file: %s", strerror(errno)); return 0; } if(len <= 0) len = lseek(file_fd, 0, SEEK_END); lseek(file_fd, offset, SEEK_SET); /* Try sendfile */ #ifdef HAVE_SYS_SENDFILE_H // fprintf(stderr, "Sendfile: %d <- %d, off: %"PRId64" len: %"PRId64" \n", fd, file_fd, offset, len); result = sendfile(fd, file_fd, &offset, len); if(result < 0) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "sendfile to %d failed: %s", fd, strerror(errno)); if((errno != EINVAL) && (errno != ENOSYS)) goto end; } else { // fprintf(stderr, "Sendfile done: %"PRId64" bytes, off: %"PRId64"\n", len, offset); ret = 1; goto end; } #endif if(getsockopt(fd, IPPROTO_TCP, TCP_MAXSEG, &buf_size, &size_len)) buf_size = 576 - 40; bytes_written = 0; buf = malloc(buf_size); while(bytes_written < len) { bytes = len - bytes_written; if(bytes > buf_size) bytes = buf_size; bytes = read(file_fd, buf, bytes); if(bytes < 0) goto end; if(gavl_socket_write_data(fd, buf, bytes) < bytes) goto end; bytes_written += bytes; } ret = 1; end: close(file_fd); if(buf) free(buf); return ret; } /* These functions do not test if the socket is local */ int gavl_socket_send_fds(int socket, const int * fds, int n) { struct msghdr msg = {0}; struct cmsghdr *cmsg; char payload = '\0'; char buf[CMSG_SPACE(GAVL_MAX_PLANES * sizeof(int))]; struct iovec io = { .iov_base = &payload, .iov_len = sizeof(payload) }; memset(buf, '\0', sizeof(buf)); msg.msg_iov = &io; msg.msg_iovlen = 1; msg.msg_control = buf; msg.msg_controllen = sizeof(buf); cmsg = CMSG_FIRSTHDR(&msg); cmsg->cmsg_level = SOL_SOCKET; cmsg->cmsg_type = SCM_RIGHTS; cmsg->cmsg_len = CMSG_LEN(n * sizeof(int)); memcpy ((int *) CMSG_DATA(cmsg), fds, n * sizeof (int)); if(sendmsg (socket, &msg, 0) < 0) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Failed to send filedescriptors: %s", strerror(errno)); return 0; } else return 1; } int gavl_socket_recv_fds(int socket, int * fds, int n) { struct msghdr msg = {0}; struct cmsghdr *cmsg; char buf[CMSG_SPACE(GAVL_MAX_PLANES * sizeof(int))], dup[256]; struct iovec io = { .iov_base = &dup, .iov_len = sizeof(dup) }; memset(buf, '\0', sizeof(buf)); msg.msg_iov = &io; msg.msg_iovlen = 1; msg.msg_control = buf; msg.msg_controllen = sizeof(buf); if(recvmsg (socket, &msg, 0) < 0) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Failed to receive filedescriptors: %s", strerror(errno)); return 0; } cmsg = CMSG_FIRSTHDR(&msg); memcpy (fds, (int *) CMSG_DATA(cmsg), n * sizeof(int)); return 1; } int gavl_udp_socket_create(gavl_socket_address_t * addr) { int ret; int err; int get_port = (gavl_socket_address_get_port(addr) == 0) ? 1 : 0; if((ret = create_socket(addr->addr.ss_family, SOCK_DGRAM, 0)) < 0) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Cannot create UDP socket: %s", strerror(errno)); return -1; } err = bind(ret, (struct sockaddr*)&addr->addr, addr->len); if(err) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Cannot bind UDP socket: %s", strerror(errno)); return -1; } if(get_port) gavl_socket_get_address(ret, addr, NULL); return ret; } int gavl_udp_socket_connect(int fd, gavl_socket_address_t * dst) { if(connect(fd, (struct sockaddr*)&dst->addr, dst->len) < 0) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "connect() failed for UDP socket: %s", strerror(errno)); return 0; } return 1; } int gavl_udp_socket_set_multicast_interface(int fd, gavl_socket_address_t * interface_addr) { if(interface_addr->addr.ss_family == AF_INET) { struct sockaddr_in * a = (struct sockaddr_in *)&interface_addr->addr; if(setsockopt(fd, IPPROTO_IP, IP_MULTICAST_IF, &a->sin_addr, sizeof(a->sin_addr)) < 0) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Setting multicast interface failed: %s", strerror(errno)); return 0; } else return 1; } gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Cannot set multicast interface for this address family"); return 0; } int gavl_udp_socket_create_multicast(gavl_socket_address_t * multicast_addr, gavl_socket_address_t * interface_addr) { int reuse = 1; int ret; int err; uint8_t loop = 1; #ifndef __linux__ gavl_socket_address_t bind_addr; #endif if((ret = create_socket(multicast_addr->addr.ss_family, SOCK_DGRAM, 0)) < 0) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Cannot create UDP multicast socket: %s", strerror(errno)); return -1; } if(setsockopt(ret, SOL_SOCKET, SO_REUSEADDR, (char *)&reuse, sizeof(reuse)) < 0) { gavl_socket_close(ret); gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Cannot set SO_REUSEADDR: %s", strerror(errno)); return -1; } /* Bind to proper port */ /* On linux we bind to the multicast address (that's what minidlna does) */ #ifdef __linux__ err = bind(ret, (struct sockaddr*)&multicast_addr->addr, multicast_addr->len); #else memset(&bind_addr, 0, sizeof(bind_addr)); gavl_socket_address_set(&bind_addr, "0.0.0.0", gavl_socket_address_get_port(addr), SOCK_DGRAM); err = bind(ret, (struct sockaddr*)&bind_addr.addr, bind_addr.len); #endif // err = bind(ret, (struct sockaddr*)&addr->addr, addr->len); if(err) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Cannot bind UDP socket: %s", strerror(errno)); gavl_socket_close(ret); return -1; } if(multicast_addr->addr.ss_family == AF_INET) { struct ip_mreq req; struct sockaddr_in * a = (struct sockaddr_in *)&multicast_addr->addr; memset(&req, 0, sizeof(req)); memcpy(&req.imr_multiaddr, &a->sin_addr, sizeof(req.imr_multiaddr)); if(interface_addr) { a = (struct sockaddr_in *)&interface_addr->addr; memcpy(&req.imr_interface, &a->sin_addr, sizeof(req.imr_multiaddr)); } else req.imr_interface.s_addr = htonl(INADDR_ANY); if(setsockopt(ret, IPPROTO_IP, IP_ADD_MEMBERSHIP, &req, sizeof(req))) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Cannot join multicast group: %s", strerror(errno)); gavl_socket_close(ret); return -1; } } else { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "IPV6 multicast not supported yet"); gavl_socket_close(ret); return -1; } setsockopt(ret, IPPROTO_IP, IP_MULTICAST_LOOP, &loop, sizeof(loop)); return ret; } int gavl_udp_socket_receive(int fd, uint8_t * data, int data_size, gavl_socket_address_t * addr) { socklen_t len = sizeof(addr->addr); ssize_t result; if(addr) result = recvfrom(fd, data, data_size, 0 /* int flags */, (struct sockaddr *)&addr->addr, &len); else result = recv(fd, data, data_size, 0); if(result < 0) gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "UDP Receive failed"); addr->len = len; return result; } int gavl_udp_socket_send(int fd, const uint8_t * data, int data_size, gavl_socket_address_t * addr) { if(addr) return (sendto(fd, data, data_size, 0 /* int flags */, (struct sockaddr *)&addr->addr, addr->len) == data_size); else return (send(fd, data, data_size, 0) == data_size); } /* Unix domain server sockets including filename management and cleanup procedures */ pthread_mutex_t unix_socket_mutex = PTHREAD_MUTEX_INITIALIZER; static int unix_socket_index = 0; int gavl_unix_socket_create(char ** name, int queue_size) { pthread_mutex_lock(&unix_socket_mutex); *name = gavl_sprintf("%s/gmerlin-unix-%ld-%d", gavl_tempdir(), (long)getpid(), unix_socket_index++); pthread_mutex_unlock(&unix_socket_mutex); return gavl_listen_socket_create_unix(*name, queue_size); } void gavl_socket_close(int fd) { gavl_log(GAVL_LOG_DEBUG, LOG_DOMAIN, "Closing socket %d", fd); close(fd); } int gavl_socket_is_disconnected(int fd, int timeout) { /* Figure out if a socket is disconnected */ uint8_t buf; if(gavl_fd_can_read(fd, 0) && (recv(fd, &buf, 1, MSG_PEEK) <= 0)) return 1; else return 0; } int gavl_socket_address_get_address_family(gavl_socket_address_t * addr) { return addr->addr.ss_family; } bplaum-gavl-b9385e3/gavl/socketaddress.c000066400000000000000000000426451513252040200202250ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #define _GNU_SOURCE #include #ifdef HAVE_IFADDRS_H #include #include #endif #include #include #include #include #include /* gethostbyname */ #include #include #include #include // inet_ntop #include #include #include #include #include #include #include #include #define LOG_DOMAIN "socketaddress" // typedef struct lookup_async_s lookup_async_t; // #define FLAG_LOOKUP_ACTIVE (1<<0) /* Asynchronous host lookup */ struct lookup_async_s { char * hostname; struct addrinfo * addr; int port; int socktype; pthread_mutex_t mutex; pthread_cond_t cond; int waiting; // Someone is waiting for us int done; // Lookup done }; gavl_socket_address_t * gavl_socket_address_create() { gavl_socket_address_t * ret; ret = calloc(1, sizeof(*ret)); return ret; } void gavl_socket_address_copy(gavl_socket_address_t * dst, const gavl_socket_address_t * src) { memcpy(&dst->addr, &src->addr, src->len); dst->len = src->len; } void gavl_socket_address_destroy(gavl_socket_address_t * a) { // fprintf(stderr, "gavl_socket_address_destroy %p\n", a->async); gavl_socket_address_set_async_cancel(a); free(a); } /* */ void gavl_socket_address_set_port(gavl_socket_address_t * addr, int port) { switch(addr->addr.ss_family) { case AF_INET: { struct sockaddr_in * a; a = (struct sockaddr_in*)&addr->addr; a->sin_port = htons(port); } break; case AF_INET6: { struct sockaddr_in6 * a; a = (struct sockaddr_in6*)&addr->addr; a->sin6_port = htons(port); } break; default: break; } } int gavl_socket_address_get_port(gavl_socket_address_t * addr) { switch(addr->addr.ss_family) { case AF_INET: { struct sockaddr_in * a; a = (struct sockaddr_in*)&addr->addr; return ntohs(a->sin_port); } break; case AF_INET6: { struct sockaddr_in6 * a; a = (struct sockaddr_in6*)&addr->addr; return ntohs(a->sin6_port); } break; default: break; } return 0; } char * gavl_socket_address_to_string(const gavl_socket_address_t * addr, char * str) { switch(addr->addr.ss_family) { case AF_INET: { char buf[INET_ADDRSTRLEN]; struct sockaddr_in * a; a = (struct sockaddr_in*)&addr->addr; inet_ntop(AF_INET, &a->sin_addr, buf, INET_ADDRSTRLEN); snprintf(str, GAVL_SOCKET_ADDR_STR_LEN, "%s:%d", buf, ntohs(a->sin_port)); return str; } break; case AF_INET6: { char buf[INET6_ADDRSTRLEN]; struct sockaddr_in6 * a; a = (struct sockaddr_in6*)&addr->addr; inet_ntop(AF_INET6, &a->sin6_addr, buf, INET6_ADDRSTRLEN); snprintf(str, GAVL_SOCKET_ADDR_STR_LEN, "[%s]:%d", buf, ntohs(a->sin6_port)); return str; } break; default: break; } return NULL; } int gavl_socket_address_from_string(gavl_socket_address_t * addr, const char * str1) { char * str = gavl_strdup(str1); char * pos; char * host_pos; char * port_pos; if(str[0] == '[') { struct sockaddr_in6 * a; a = (struct sockaddr_in6*)&addr->addr; addr->addr.ss_family = AF_INET6; host_pos = str+1; if(!(pos = strchr(str, ']'))) goto fail; *pos = '\0'; if(!(pos = strchr(str, ':'))) goto fail; port_pos = pos+1; if(!inet_pton(AF_INET6, host_pos, &a->sin6_addr)) goto fail; a->sin6_port = htons(atoi(port_pos)); } else { struct sockaddr_in * a; a = (struct sockaddr_in*)&addr->addr; addr->addr.ss_family = AF_INET; host_pos = str; if(!(pos = strchr(host_pos, ':'))) goto fail; *pos = '\0'; port_pos = pos+1; if(!inet_pton(AF_INET, host_pos, &a->sin_addr)) goto fail; a->sin_port = htons(atoi(port_pos)); } free(str); return 1; fail: free(str); gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Cannot convert %s to socket address", str1); return 0; } static void set_addr_hints(struct addrinfo * hints, int socktype, const char * hostname) { struct in_addr ipv4_addr; struct in6_addr ipv6_addr; memset(hints, 0, sizeof(*hints)); hints->ai_family = PF_UNSPEC; hints->ai_socktype = socktype; // SOCK_STREAM, SOCK_DGRAM hints->ai_protocol = 0; // 0 hints->ai_flags = 0; /* prevent DNS lookup for numeric IP addresses */ if(inet_pton(AF_INET, hostname, &ipv4_addr)) { hints->ai_flags |= AI_NUMERICHOST; hints->ai_family = PF_INET; } else if(inet_pton(AF_INET6, hostname, &ipv6_addr)) { hints->ai_flags |= AI_NUMERICHOST; hints->ai_family = PF_INET6; } } static struct addrinfo * hostbyname(const char * hostname, int socktype) { int err; struct addrinfo hints; struct addrinfo * ret = NULL; set_addr_hints(&hints, socktype, hostname); if((err = getaddrinfo(hostname, NULL /* service */, &hints, &ret))) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Cannot resolve address of %s: %s", hostname, gai_strerror(err)); return NULL; } #if 0 if(ret[0].ai_addr->sa_family == AF_INET) fprintf(stderr, "Got IPV4 address\n"); else if(ret[0].ai_addr->sa_family == AF_INET6) fprintf(stderr, "Got IPV6 address\n"); #endif return ret; } /* Do reverse DNS lookup */ char * gavl_socket_address_get_hostname(gavl_socket_address_t * addr) { char name_buf[NI_MAXHOST]; if(getnameinfo((struct sockaddr *)&addr->addr, addr->len, name_buf, NI_MAXHOST, NULL, 0, 0)) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Reverse DNS lookup failed"); return NULL; } return gavl_strdup(name_buf); } /* Do full DNS lookup */ gavl_socket_address_t ** gavl_lookup_hostname_full(const char * hostname, int socktype) { gavl_socket_address_t ** ret; int count = 0; int i; struct addrinfo * ptr; struct addrinfo * addr = hostbyname(hostname, socktype); if(!addr) return NULL; /* Count entries */ ptr = addr; while(ptr) { count++; ptr = ptr->ai_next; } /* Copy addresses */ ptr = addr; ret = calloc(count + 1, sizeof(*ret)); for(i = 0; i < count; i++) { ret[i] = gavl_socket_address_create(); memcpy(&ret[i]->addr, ptr->ai_addr, ptr->ai_addrlen); ret[i]->len = ptr->ai_addrlen; ptr = ptr->ai_next; } freeaddrinfo(addr); return ret; } void gavl_socket_address_free_array(gavl_socket_address_t ** addr) { int i = 0; while(addr[i]) { gavl_socket_address_destroy(addr[i]); i++; } free(addr); } int gavl_socket_address_set(gavl_socket_address_t * a, const char * hostname, int port, int socktype) { struct addrinfo * addr; gavl_socket_address_set_async_cancel(a); addr = hostbyname(hostname, socktype); if(!addr) return 0; memcpy(&a->addr, addr->ai_addr, addr->ai_addrlen); a->len = addr->ai_addrlen; // if(!hostbyname(a, hostname)) // return 0; // a->port = port; freeaddrinfo(addr); gavl_socket_address_set_port(a, port); return 1; } int gavl_socket_address_set_local(gavl_socket_address_t * a, int port, const char * wildcard) { #ifdef HAVE_IFADDRS_H int ret = 0; int family_req = 0; struct ifaddrs * ifap = NULL; struct ifaddrs * addr; if(getifaddrs(&ifap)) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "getifaddrs failed: %s", strerror(errno)); return 0; } if(wildcard) { if(!strcmp(wildcard, "0.0.0.0")) family_req = AF_INET; else if(!strcmp(wildcard, "::")) family_req = AF_INET6; } addr = ifap; while(addr) { if(!(addr->ifa_flags & IFF_LOOPBACK)) { if(!addr->ifa_addr) // ifa_addr can be NULL for VPN interfaces { addr = addr->ifa_next; continue; } if((addr->ifa_addr->sa_family == AF_INET) && (!wildcard || (family_req == AF_INET))) a->len = sizeof(struct sockaddr_in); else if((addr->ifa_addr->sa_family == AF_INET6) && (!wildcard || (family_req == AF_INET6))) a->len = sizeof(struct sockaddr_in6); else { addr = addr->ifa_next; continue; } memcpy(&a->addr, addr->ifa_addr, a->len); gavl_socket_address_set_port(a, port); ret = 1; break; } addr = addr->ifa_next; } if(!ret) gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "getifaddrs returned only loopback addresses"); freeifaddrs(ifap); return ret; #else return 0; #endif // return gavl_socket_address_set(a, hostname, port, socktype); } void gavl_socket_address_destroy_array(gavl_socket_address_t ** addr) { int idx = 0; while(addr[idx]) gavl_socket_address_destroy(addr[idx++]); free(addr); } int gavl_socket_get_address(int sock, gavl_socket_address_t * local, gavl_socket_address_t * remote) { socklen_t len; if(local) { len = sizeof(local->addr); if(getsockname(sock, (struct sockaddr *)&local->addr, &len)) return 0; local->len = len; } if(remote) { len = sizeof(remote->addr); if(getpeername(sock, (struct sockaddr *)&remote->addr, &len)) return 0; remote->len = len; } return 1; } static int addr_match(struct ifaddrs * a, int flags) { if((a->ifa_flags & IFF_LOOPBACK) && !(flags & GAVL_NI_LOOPBACK)) return 0; if(!a->ifa_addr) return 0; if((a->ifa_addr->sa_family == AF_INET)) { if(flags & GAVL_NI_IPV4) return 1; else return 0; } else if(a->ifa_addr->sa_family == AF_INET6) { if(flags & GAVL_NI_IPV6) return 1; else return 0; } return 0; } gavl_socket_address_t ** gavl_get_network_interfaces(int flags) { #ifdef HAVE_IFADDRS_H gavl_socket_address_t ** ret; int num = 0; int idx; struct ifaddrs * ifap = NULL; struct ifaddrs * addr; if(getifaddrs(&ifap)) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "getifaddrs failed: %s", strerror(errno)); return 0; } /* Count entries */ addr = ifap; while(addr) { if(addr_match(addr, flags)) num++; addr = addr->ifa_next; } ret = calloc(num+1, sizeof(*ret)); idx = 0; addr = ifap; while(addr) { if(addr_match(addr, flags)) { ret[idx] = gavl_socket_address_create(); if(addr->ifa_addr->sa_family == AF_INET6) ret[idx]->len = sizeof(struct sockaddr_in6); else if(addr->ifa_addr->sa_family == AF_INET) ret[idx]->len = sizeof(struct sockaddr_in); memcpy(&ret[idx]->addr, addr->ifa_addr, ret[idx]->len); // gavl_socket_address_to_string(ret[idx], str); // fprintf(stderr, "Got network interface: %s\n", str); idx++; } addr = addr->ifa_next; } freeifaddrs(ifap); return ret; #else return NULL; #endif } #ifdef HAVE_IFADDRS_H static struct ifaddrs * iface_by_address(struct ifaddrs * addr, const gavl_socket_address_t * a1) { int len = 0; gavl_socket_address_t * a = gavl_socket_address_create(); gavl_socket_address_copy(a, a1); gavl_socket_address_set_port(a, 0); while(addr) { if(!addr->ifa_addr) { addr = addr->ifa_next; continue; } if(addr->ifa_addr->sa_family == AF_INET6) len = sizeof(struct sockaddr_in6); else if(addr->ifa_addr->sa_family == AF_INET) len = sizeof(struct sockaddr_in); if((len == a->len) && !memcmp(&a->addr, addr->ifa_addr, a->len)) { break; } addr = addr->ifa_next; } gavl_socket_address_destroy(a); return addr; } #endif char * gavl_interface_name_from_address(const gavl_socket_address_t * a) { char * ret = NULL; #ifdef HAVE_IFADDRS_H struct ifaddrs * ifap = NULL; struct ifaddrs * addr; if(getifaddrs(&ifap)) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "getifaddrs failed: %s", strerror(errno)); goto fail; } if((addr = iface_by_address(ifap, a))) ret = gavl_strdup(addr->ifa_name); fail: freeifaddrs(ifap); #endif return ret; } int gavl_interface_index_from_address(const gavl_socket_address_t * a) { int ret = 0; #ifdef HAVE_IFADDRS_H struct ifaddrs * ifap = NULL; struct ifaddrs * addr; if(getifaddrs(&ifap)) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "getifaddrs failed: %s", strerror(errno)); goto fail; } if((addr = iface_by_address(ifap, a))) ret = if_nametoindex(addr->ifa_name); fail: freeifaddrs(ifap); #endif return ret; } /* Asynchronous host lookup */ static lookup_async_t * async_create(const char * hostname, int port, int socktype) { lookup_async_t * ret = calloc(1, sizeof(*ret)); ret->hostname = gavl_strdup(hostname); ret->port = port; ret->socktype = socktype; ret->waiting = 1; pthread_mutex_init(&ret->mutex, NULL); pthread_cond_init(&ret->cond, NULL); return ret; } static void async_destroy(lookup_async_t * a) { pthread_mutex_destroy(&a->mutex); pthread_cond_destroy(&a->cond); if(a->addr) freeaddrinfo(a->addr); free(a); } static void * lookup_thread(void * data) { lookup_async_t * a = data; struct addrinfo * addr; addr = hostbyname(a->hostname, a->socktype); pthread_mutex_lock(&a->mutex); // fprintf(stderr, "gavl_socket_address_set_async done %p\n", addr); if(a->waiting) { a->addr = addr; a->done = 1; a->addr = addr; pthread_cond_broadcast(&a->cond); pthread_mutex_unlock(&a->mutex); } else { freeaddrinfo(addr); pthread_mutex_unlock(&a->mutex); async_destroy(a); } return NULL; } int gavl_socket_address_set_async(gavl_socket_address_t * a, const char * host, int port, int socktype) { pthread_attr_t attr; pthread_t th; // fprintf(stderr, "gavl_socket_address_set_async %s\n", host); gavl_socket_address_set_async_cancel(a); a->async = async_create(host, port, socktype); pthread_attr_init(&attr); pthread_attr_setdetachstate(&attr, PTHREAD_CREATE_DETACHED); pthread_create(&th, &attr, lookup_thread, a->async); pthread_attr_destroy(&attr); return 1; } static void cleanup_async(gavl_socket_address_t * a) { async_destroy(a->async); a->async = NULL; } static int finish_async(gavl_socket_address_t * a) { if(!a->async->addr) { cleanup_async(a); return -1; } memcpy(&a->addr, a->async->addr->ai_addr, a->async->addr->ai_addrlen); a->len = a->async->addr->ai_addrlen; gavl_socket_address_set_port(a, a->async->port); cleanup_async(a); return 1; } int gavl_socket_address_set_async_done(gavl_socket_address_t * a, int timeout) { struct timespec time_to_wait; struct timeval now; int64_t to; if(!a->async) return -1; // Cancelled by someone pthread_mutex_lock(&a->async->mutex); if(a->async->done) { pthread_mutex_unlock(&a->async->mutex); return finish_async(a); } if(timeout <= 0) { pthread_mutex_unlock(&a->async->mutex); return 0; } /* Wait on condition variable */ gettimeofday(&now,NULL); time_to_wait.tv_sec = now.tv_sec; time_to_wait.tv_nsec = now.tv_usec; time_to_wait.tv_nsec*= 1000; // us -> ns time_to_wait.tv_sec += timeout / 1000; to = timeout % 1000; to *= (1000*1000); // ms -> us -> ns to += time_to_wait.tv_nsec; time_to_wait.tv_sec += to / (1000*1000*1000); time_to_wait.tv_nsec = to % (1000*1000*1000); if(!pthread_cond_timedwait(&a->async->cond, &a->async->mutex, &time_to_wait)) { pthread_mutex_unlock(&a->async->mutex); return finish_async(a); } if((errno == ETIMEDOUT) || (errno == EINTR) || (errno == EAGAIN)) { pthread_mutex_unlock(&a->async->mutex); return 0; } else { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "pthread_cond_timedwait failed: %s", strerror(errno)); pthread_mutex_unlock(&a->async->mutex); gavl_socket_address_set_async_cancel(a); return -1; } } void gavl_socket_address_set_async_cancel(gavl_socket_address_t * a) { if(!a->async) return; gavl_log(GAVL_LOG_INFO, LOG_DOMAIN, "Cancelling asynchronous name lookup"); pthread_mutex_lock(&a->async->mutex); a->async->waiting = 0; pthread_mutex_unlock(&a->async->mutex); a->async = NULL; } bplaum-gavl-b9385e3/gavl/sse/000077500000000000000000000000001513252040200160025ustar00rootroot00000000000000bplaum-gavl-b9385e3/gavl/sse/Makefile.am000066400000000000000000000002731513252040200200400ustar00rootroot00000000000000AM_CFLAGS = @LIBGAVL_CFLAGS@ noinst_LTLIBRARIES = libgavl_sse.la libgavl_sse_la_SOURCES = \ dsp_sse.c \ scale_y_sse.c \ scale_x_sse.c noinst_HEADERS = sse.h scale_y.h scale_y_linear.h bplaum-gavl-b9385e3/gavl/sse/dsp_sse.c000066400000000000000000000021451513252040200176100ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include #include void gavl_dsp_init_sse(gavl_dsp_funcs_t * funcs, int quality) { } bplaum-gavl-b9385e3/gavl/sse/rgb_yuv_sse.c000066400000000000000000000063411513252040200205010ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include #include #include //#define SSE_DEBUG #include "sse.h" #include "../mmx/mmx.h" #include #include "../c/colorspace_macros.h" static const sse_t rgb_2_y = { .sf = { r_float_to_y, g_float_to_y, b_float_to_y, 0.0 } }; static const sse_t rgb_2_u = { .sf = { r_float_to_u, g_float_to_u, b_float_to_u, 0.0 } }; static const sse_t rgb_2_v = { .sf = { r_float_to_v, g_float_to_v, b_float_to_v, 0.0 } }; #define RGB_FLOAT_TO_YUV_FLOAT_SSE \ /* Y */ \ movaps_r2r(xmm3, xmm4);\ mulps_r2r(xmm0, xmm4); /* xmm4: Ya Yb Yc 0.0 */\ /* U */ \ movaps_r2r(xmm3, xmm5); \ mulps_r2r(xmm1, xmm5); /* xmm5: Ua Ub Uc 0.0 */\ /* V */ \ mulps_r2r(xmm2, xmm3); /* xmm3: Va Vb Vc 0.0 */ #ifdef SSE3 #define INIT_RGB_YUV \ movaps_m2r(rgb_2_y, xmm0); \ movaps_m2r(rgb_2_u, xmm1); \ movaps_m2r(rgb_2_v, xmm2);\ pxor_r2r(xmm6, xmm6) #define OUTPUT_YUVA \ haddps_r2r(xmm5, xmm4); /* xmm4: Ya+Yb Yb Ua+Ub Uc */\ haddps_r2r(xmm6, xmm3); /* xmm5: Va+Vb Vc 0.0 0.0 */\ haddps_r2r(xmm3, xmm4); /* xmm4: y u v 0.0 */\ movaps_r2m(xmm4, *dst); #else #define INIT_RGB_YUV \ sse_t tmp; \ movaps_m2r(rgb_2_y, xmm0); \ movaps_m2r(rgb_2_u, xmm1); \ movaps_m2r(rgb_2_v, xmm2) #define OUTPUT_YUVA \ movaps_r2m(xmm4, tmp);\ dst[0] = tmp.sf[0] + tmp.sf[1] + tmp.sf[2]; \ movaps_r2m(xmm5, tmp);\ dst[1] = tmp.sf[0] + tmp.sf[1] + tmp.sf[2]; \ movaps_r2m(xmm3, tmp);\ dst[2] = tmp.sf[0] + tmp.sf[1] + tmp.sf[2]; #endif /* rgba_float_to_yuva_float_c */ #define FUNC_NAME rgba_float_to_yuva_float_sse #define IN_TYPE float #define OUT_TYPE float #define IN_ADVANCE 4 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define INIT INIT_RGB_YUV; #define CONVERT \ /* We can assume, that src and dst are always aligned */\ movaps_m2r(*src, xmm3);\ RGB_FLOAT_TO_YUV_FLOAT_SSE; \ OUTPUT_YUVA\ dst[3] = src[3]; #include "../csp_packed_packed.h" #ifdef SSE3 void gavl_init_rgb_yuv_funcs_sse3(gavl_pixelformat_function_table_t * tab, const gavl_video_options_t * opt) { tab->rgba_float_to_yuva_float = rgba_float_to_yuva_float_sse; // tab->rgb_float_to_yuva_float = rgb_float_to_yuva_float_sse; } #endif bplaum-gavl-b9385e3/gavl/sse/scale_x_sse.c000066400000000000000000000202511513252040200204360ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ /* SSE Optimized scaling (x) */ #include #include #include #include #include #include #include "../sse/sse.h" static void scale_float_x_4_x_bilinear_sse(gavl_video_scale_context_t * ctx, int scanline, uint8_t * dest_start) { int i, imax; uint8_t * src, * dst, *src_start; imax = ctx->dst_size; src_start = ctx->src + scanline * ctx->src_stride; dst = dest_start; for(i = 0; i < imax; i++) { src = src_start + 16*ctx->table_h.pixels[i].index; /* Load factor */ movss_m2r(ctx->table_h.pixels[i].factor_f[0], xmm0); shufps_r2ri(xmm0, xmm0, 0x00); /* Load src1 */ movaps_m2r(*src, xmm5); /* Load src2 */ movaps_m2r(*(src+16), xmm4); /* xmm4 = src1 - src2 */ subps_r2r(xmm4, xmm5); /* xmm4 = (src1 - src2)*f */ mulps_r2r(xmm0, xmm5); /* xmm4 = (src1 - src2)*f + src2 */ addps_r2r(xmm4, xmm5); /* Store */ movaps_r2m(xmm5, *dst); dst += 16; } } static void scale_float_x_4_x_quadratic_sse(gavl_video_scale_context_t * ctx, int scanline, uint8_t * dest_start) { int i, imax; uint8_t * src, * dst, *src_start; imax = ctx->dst_size; src_start = ctx->src + scanline * ctx->src_stride; dst = dest_start; for(i = 0; i < imax; i++) { xorps_r2r(xmm5, xmm5); src = src_start + 16*ctx->table_h.pixels[i].index; /* Load factor */ movss_m2r(ctx->table_h.pixels[i].factor_f[0], xmm0); shufps_r2ri(xmm0, xmm0, 0x00); /* Load src1 */ movaps_m2r(*src, xmm4); /* Multiply */ mulps_r2r(xmm0, xmm4); /* Add */ addps_r2r(xmm4, xmm5); /* Load factor */ movss_m2r(ctx->table_h.pixels[i].factor_f[1], xmm0); shufps_r2ri(xmm0, xmm0, 0x00); /* Load src1 */ movaps_m2r(*(src+16), xmm4); /* Multiply */ mulps_r2r(xmm0, xmm4); /* Add */ addps_r2r(xmm4, xmm5); /* Load factor */ movss_m2r(ctx->table_h.pixels[i].factor_f[2], xmm0); shufps_r2ri(xmm0, xmm0, 0x00); /* Load src1 */ movaps_m2r(*(src+32), xmm4); /* Multiply */ mulps_r2r(xmm0, xmm4); /* Add */ addps_r2r(xmm4, xmm5); /* Store */ movaps_r2m(xmm5, *dst); dst += 16; } } static void scale_float_x_4_x_bicubic_sse(gavl_video_scale_context_t * ctx, int scanline, uint8_t * dest_start) { int i, imax; uint8_t * src, * dst, *src_start; imax = ctx->dst_size; src_start = ctx->src + scanline * ctx->src_stride; dst = dest_start; movups_m2r(ctx->min_values_f[0], xmm6); movups_m2r(ctx->max_values_f[0], xmm7); for(i = 0; i < imax; i++) { xorps_r2r(xmm5, xmm5); src = src_start + 16*ctx->table_h.pixels[i].index; /* Load factor */ movss_m2r(ctx->table_h.pixels[i].factor_f[0], xmm0); shufps_r2ri(xmm0, xmm0, 0x00); /* Load src1 */ movaps_m2r(*src, xmm4); /* Multiply */ mulps_r2r(xmm0, xmm4); /* Add */ addps_r2r(xmm4, xmm5); /* Load factor */ movss_m2r(ctx->table_h.pixels[i].factor_f[1], xmm0); shufps_r2ri(xmm0, xmm0, 0x00); /* Load src1 */ movaps_m2r(*(src+16), xmm4); /* Multiply */ mulps_r2r(xmm0, xmm4); /* Add */ addps_r2r(xmm4, xmm5); /* Load factor */ movss_m2r(ctx->table_h.pixels[i].factor_f[2], xmm0); shufps_r2ri(xmm0, xmm0, 0x00); /* Load src1 */ movaps_m2r(*(src+32), xmm4); /* Multiply */ mulps_r2r(xmm0, xmm4); /* Add */ addps_r2r(xmm4, xmm5); /* Load factor */ movss_m2r(ctx->table_h.pixels[i].factor_f[3], xmm0); shufps_r2ri(xmm0, xmm0, 0x00); /* Load src1 */ movaps_m2r(*(src+48), xmm4); /* Multiply */ mulps_r2r(xmm0, xmm4); /* Add */ addps_r2r(xmm4, xmm5); /* Clip */ minps_r2r(xmm7, xmm5); maxps_r2r(xmm6, xmm5); /* Store */ movaps_r2m(xmm5, *dst); dst += 16; } } static void scale_float_x_4_x_bicubic_noclip_sse(gavl_video_scale_context_t * ctx, int scanline, uint8_t * dest_start) { int i, imax; uint8_t * src, * dst, *src_start; imax = ctx->dst_size; src_start = ctx->src + scanline * ctx->src_stride; dst = dest_start; for(i = 0; i < imax; i++) { xorps_r2r(xmm5, xmm5); src = src_start + 16*ctx->table_h.pixels[i].index; /* Load factor */ movss_m2r(ctx->table_h.pixels[i].factor_f[0], xmm0); shufps_r2ri(xmm0, xmm0, 0x00); /* Load src1 */ movaps_m2r(*src, xmm4); /* Multiply */ mulps_r2r(xmm0, xmm4); /* Add */ addps_r2r(xmm4, xmm5); /* Load factor */ movss_m2r(ctx->table_h.pixels[i].factor_f[1], xmm0); shufps_r2ri(xmm0, xmm0, 0x00); /* Load src1 */ movaps_m2r(*(src+16), xmm4); /* Multiply */ mulps_r2r(xmm0, xmm4); /* Add */ addps_r2r(xmm4, xmm5); /* Load factor */ movss_m2r(ctx->table_h.pixels[i].factor_f[2], xmm0); shufps_r2ri(xmm0, xmm0, 0x00); /* Load src1 */ movaps_m2r(*(src+32), xmm4); /* Multiply */ mulps_r2r(xmm0, xmm4); /* Add */ addps_r2r(xmm4, xmm5); /* Load factor */ movss_m2r(ctx->table_h.pixels[i].factor_f[3], xmm0); shufps_r2ri(xmm0, xmm0, 0x00); /* Load src1 */ movaps_m2r(*(src+48), xmm4); /* Multiply */ mulps_r2r(xmm0, xmm4); /* Add */ addps_r2r(xmm4, xmm5); /* Store */ movaps_r2m(xmm5, *dst); dst += 16; } } static void scale_float_x_4_x_generic_sse(gavl_video_scale_context_t * ctx, int scanline, uint8_t * dest_start) { int i, imax, j; uint8_t * src, * dst, *src_start; imax = ctx->dst_size; src_start = ctx->src + scanline * ctx->src_stride; dst = dest_start; movups_m2r(ctx->min_values_f[0], xmm6); movups_m2r(ctx->max_values_f[0], xmm7); for(i = 0; i < imax; i++) { xorps_r2r(xmm5, xmm5); src = src_start + 16*ctx->table_h.pixels[i].index; for(j = 0; j < ctx->table_h.factors_per_pixel; j++) { /* Load factor */ movss_m2r(ctx->table_h.pixels[i].factor_f[j], xmm0); shufps_r2ri(xmm0, xmm0, 0x00); /* Load src1 */ movaps_m2r(*src, xmm4); /* Multiply */ mulps_r2r(xmm0, xmm4); /* Add */ addps_r2r(xmm4, xmm5); src += 16; } /* Clip */ minps_r2r(xmm7, xmm5); maxps_r2r(xmm6, xmm5); /* Store */ movaps_r2m(xmm5, *dst); dst += 16; } } #if 0 static void scale_float_x_1_x_bicubic_sse(gavl_video_scale_context_t * ctx, int scanline, uint8_t * dest_start) { } static void scale_float_x_1_x_bicubic_noclip_sse(gavl_video_scale_context_t * ctx, int scanline, uint8_t * dest_start) { } #endif void gavl_init_scale_funcs_bilinear_x_sse(gavl_scale_funcs_t * tab) { tab->funcs_x.scale_float_x_4 = scale_float_x_4_x_bilinear_sse; } void gavl_init_scale_funcs_quadratic_x_sse(gavl_scale_funcs_t * tab) { tab->funcs_x.scale_float_x_4 = scale_float_x_4_x_quadratic_sse; } void gavl_init_scale_funcs_bicubic_x_sse(gavl_scale_funcs_t * tab) { tab->funcs_x.scale_float_x_4 = scale_float_x_4_x_bicubic_sse; } void gavl_init_scale_funcs_bicubic_x_noclip_sse(gavl_scale_funcs_t * tab) { tab->funcs_x.scale_float_x_4 = scale_float_x_4_x_bicubic_noclip_sse; } void gavl_init_scale_funcs_generic_x_sse(gavl_scale_funcs_t * tab) { tab->funcs_x.scale_float_x_4 = scale_float_x_4_x_generic_sse; } bplaum-gavl-b9385e3/gavl/sse/scale_y.h000066400000000000000000000072531513252040200176010ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ /* SSE Optimized scaling */ static void (FUNC_NAME)(gavl_video_scale_context_t * ctx, int scanline, uint8_t * dest_start) { int i, imax; uint8_t * src; uint8_t * src_start; uint8_t * dst; #if NUM_TAPS <= 0 int j; #endif #ifdef INIT_GLOBAL INIT_GLOBAL; #endif dst = dest_start; src_start = ctx->src + ctx->table_v.pixels[scanline].index * ctx->src_stride; /* While source is not aligned... */ imax = (((long)(src_start)) % 16)/4; // imax = ctx->dst_size * BYTES * WIDTH_MUL; for(i = 0; i < imax; i++) { #ifdef INIT_C INIT_C; #endif src = src_start; /* Accum */ #if NUM_TAPS <= 0 for(j = 0; j < ctx->table_v.factors_per_pixel; j++) { ACCUM_C(j); src += ctx->src_stride; } #else// NUM_TAPS > 0 ACCUM_C(0); src += ctx->src_stride; #if NUM_TAPS > 1 ACCUM_C(1); src += ctx->src_stride; #endif #if NUM_TAPS > 2 ACCUM_C(2); src += ctx->src_stride; #endif #if NUM_TAPS > 3 ACCUM_C(3); src += ctx->src_stride; #endif #endif // NUM_TAPS > 0 OUTPUT_C; dst+=4; src_start+=4; } /* SSE routines scale 8 numbers (= 32 bytes) at once */ imax = (ctx->dst_size * 4 * WIDTH_MUL - (dst - dest_start)) / /* Bytes left */ (32); /* Bytes processed at once */ for(i = 0; i < imax; i++) { INIT; src = src_start; /* Accum */ #if NUM_TAPS <= 0 for(j = 0; j < ctx->table_v.factors_per_pixel; j++) { ACCUM(j); src += ctx->src_stride; } #else ACCUM(0); src += ctx->src_stride; #if NUM_TAPS > 1 ACCUM(1); src += ctx->src_stride; #endif #if NUM_TAPS > 2 ACCUM(2); src += ctx->src_stride; #endif #if NUM_TAPS > 3 ACCUM(3); src += ctx->src_stride; #endif #endif OUTPUT; dst += 32; src_start += 32; } imax = (ctx->dst_size * 4 * WIDTH_MUL - (dst - dest_start)) / 4; // imax = (ctx->dst_size * WIDTH_MUL); if(!imax) return; for(i = 0; i < imax; i++) { src = src_start; #ifdef INIT_C INIT_C; #endif /* Accum */ #if NUM_TAPS <= 0 for(j = 0; j < ctx->table_v.factors_per_pixel; j++) { ACCUM_C(j); src += ctx->src_stride; } #else ACCUM_C(0); src += ctx->src_stride; #if NUM_TAPS > 1 ACCUM_C(1); src += ctx->src_stride; #endif #if NUM_TAPS > 2 ACCUM_C(2); src += ctx->src_stride; #endif #if NUM_TAPS > 3 ACCUM_C(3); src += ctx->src_stride; #endif #endif OUTPUT_C; dst+=4; src_start+=4; } } #undef FUNC_NAME #undef NUM_TAPS #undef WIDTH_MUL #undef ACCUM #undef ACCUM_C #undef OUTPUT #undef OUTPUT_C #ifdef INIT_GLOBAL #undef INIT_GLOBAL #endif #ifdef INIT_C #undef INIT_C #endif #undef INIT bplaum-gavl-b9385e3/gavl/sse/scale_y_linear.h000066400000000000000000000057631513252040200211370ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ /* SSE Optimized scaling (linear, y) */ static void (FUNC_NAME)(gavl_video_scale_context_t * ctx, int scanline, uint8_t * dest_start) { int i, imax; uint8_t * src; uint8_t * src_start; uint8_t * dst; /* Load factor */ movss_m2r(ctx->table_v.pixels[scanline].factor_f[0], xmm0); shufps_r2ri(xmm0, xmm0, 0x00); dst = dest_start; src_start = ctx->src + ctx->table_v.pixels[scanline].index * ctx->src_stride; /* While source is not aligned... */ imax = (((long)(src_start)) % 16)/4; for(i = 0; i < imax; i++) { src = src_start; movss_m2r(*src, xmm1); movss_m2r(*(src+ctx->src_stride), xmm2); subss_r2r(xmm2, xmm1); mulss_r2r(xmm0, xmm1); addss_r2r(xmm2, xmm1); movss_r2m(xmm1, *dst); dst+=4; src_start+=4; } /* SSE routines scale 8 numbers (= 32 bytes) at once */ imax = (ctx->dst_size * 4 * WIDTH_MUL - (dst - dest_start)) / /* Bytes left */ (32); /* Bytes processed at once */ for(i = 0; i < imax; i++) { src = src_start; movaps_m2r(*src, xmm1); movaps_m2r(*(src+ctx->src_stride), xmm2); movaps_m2r(*(src+16), xmm3); movaps_m2r(*(src+ctx->src_stride+16), xmm4); subps_r2r(xmm2, xmm1); mulps_r2r(xmm0, xmm1); addps_r2r(xmm2, xmm1); movups_r2m(xmm1, *dst); subps_r2r(xmm4, xmm3); mulps_r2r(xmm0, xmm3); addps_r2r(xmm4, xmm3); movups_r2m(xmm3, *(dst+16)); dst += 32; src_start += 32; } imax = (ctx->dst_size * 4 * WIDTH_MUL - (dst - dest_start)) / 4; // imax = (ctx->dst_size * WIDTH_MUL); if(!imax) return; for(i = 0; i < imax; i++) { src = src_start; movss_m2r(*src, xmm1); movss_m2r(*(src+ctx->src_stride), xmm2); subss_r2r(xmm2, xmm1); mulss_r2r(xmm0, xmm1); addss_r2r(xmm2, xmm1); movss_r2m(xmm1, *dst); dst+=4; src_start+=4; } } #undef FUNC_NAME #undef NUM_TAPS #undef WIDTH_MUL #undef ACCUM #undef ACCUM_C #undef OUTPUT #undef OUTPUT_C #ifdef INIT_GLOBAL #undef INIT_GLOBAL #endif #ifdef INIT_C #undef INIT_C #endif #undef INIT bplaum-gavl-b9385e3/gavl/sse/scale_y_sse.c000066400000000000000000000237441513252040200204510ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include #include #include #include // #include "../mmx/mmx.h" #include "../sse/sse.h" #if 0 static mmx_t mm_tmp; #define DUMP_MM(name, reg) MOVQ_R2M(reg, mm_tmp);\ fprintf(stderr, "%s: %016llx\n", name, mm_tmp.q); #endif #define INIT_FLOAT_GLOBAL_4 \ movups_m2r(ctx->min_values_f[0], xmm5);\ movups_m2r(ctx->max_values_f[0], xmm6); #define INIT_FLOAT_GLOBAL_2 \ movups_m2r(ctx->min_values_f[0], xmm5);\ movups_m2r(ctx->max_values_f[0], xmm6);\ shufps_r2ri(xmm5, xmm5, 0x44);\ shufps_r2ri(xmm6, xmm6, 0x44); #define INIT_FLOAT_GLOBAL_1 \ movups_m2r(ctx->min_values_f[0], xmm5);\ movups_m2r(ctx->max_values_f[0], xmm6);\ shufps_r2ri(xmm5, xmm5, 0x00);\ shufps_r2ri(xmm6, xmm6, 0x00); #define INIT_FLOAT \ xorps_r2r(xmm3, xmm3); \ xorps_r2r(xmm4, xmm4); #define ACCUM_FLOAT(num) \ /* Load input */ \ movaps_m2r(*src,xmm1);\ movaps_m2r(*(src+16),xmm2);\ /* Load factor */ \ movss_m2r(ctx->table_v.pixels[scanline].factor_f[num], xmm0);\ shufps_r2ri(xmm0, xmm0, 0x00);\ /* Accumulate xmm0 */ \ mulps_r2r(xmm0, xmm1);\ addps_r2r(xmm1, xmm3);\ /* Accumulate xmm1 */ \ mulps_r2r(xmm0, xmm2);\ addps_r2r(xmm2, xmm4) #define OUTPUT_FLOAT_NOCLIP \ movups_r2m(xmm3, *dst);\ movups_r2m(xmm4, *(dst+16));\ #define OUTPUT_FLOAT \ minps_r2r(xmm6, xmm3);\ minps_r2r(xmm6, xmm4);\ maxps_r2r(xmm5, xmm3);\ maxps_r2r(xmm5, xmm4);\ movups_r2m(xmm3, *dst);\ movups_r2m(xmm4, *(dst+16)); #define INIT_C_FLOAT \ xorps_r2r(xmm2, xmm2); #define ACCUM_C_FLOAT(num) \ movss_m2r(*src, xmm1);\ mulss_m2r(ctx->table_v.pixels[scanline].factor_f[num], xmm1);\ addss_r2r(xmm1, xmm2);\ #define OUTPUT_C_FLOAT \ minss_r2r(xmm6, xmm2);\ maxss_r2r(xmm5, xmm2);\ movss_r2m(xmm2, *dst); #define OUTPUT_C_FLOAT_NOCLIP \ movss_r2m(xmm2, *dst); /* float */ /* scale_float_x_1_y_bicubic_sse */ #define FUNC_NAME scale_float_x_1_y_bicubic_sse #define WIDTH_MUL 1 #define NUM_TAPS 4 #define INIT_GLOBAL INIT_FLOAT_GLOBAL_1 #define INIT INIT_FLOAT #define ACCUM ACCUM_FLOAT #define OUTPUT OUTPUT_FLOAT #define INIT_C INIT_C_FLOAT #define ACCUM_C ACCUM_C_FLOAT #define OUTPUT_C OUTPUT_C_FLOAT #include "../sse/scale_y.h" /* scale_float_x_1_y_bicubic_noclip_sse */ #define FUNC_NAME scale_float_x_1_y_bicubic_noclip_sse #define WIDTH_MUL 1 #define NUM_TAPS 4 #define INIT_GLOBAL INIT_FLOAT_GLOBAL_1 #define INIT INIT_FLOAT #define ACCUM ACCUM_FLOAT #define OUTPUT OUTPUT_FLOAT_NOCLIP #define INIT_C INIT_C_FLOAT #define ACCUM_C ACCUM_C_FLOAT #define OUTPUT_C OUTPUT_C_FLOAT_NOCLIP #include "../sse/scale_y.h" /* scale_float_x_2_y_bicubic_sse */ #define FUNC_NAME scale_float_x_2_y_bicubic_sse #define WIDTH_MUL 2 #define NUM_TAPS 4 #define INIT_GLOBAL INIT_FLOAT_GLOBAL_2 #define INIT INIT_FLOAT #define ACCUM ACCUM_FLOAT #define OUTPUT OUTPUT_FLOAT #define INIT_C INIT_C_FLOAT #define ACCUM_C ACCUM_C_FLOAT #define OUTPUT_C OUTPUT_C_FLOAT #include "../sse/scale_y.h" /* scale_float_x_2_y_bicubic_noclip_sse */ #define FUNC_NAME scale_float_x_2_y_bicubic_noclip_sse #define WIDTH_MUL 2 #define NUM_TAPS 4 #define INIT_GLOBAL INIT_FLOAT_GLOBAL_2 #define INIT INIT_FLOAT #define ACCUM ACCUM_FLOAT #define OUTPUT OUTPUT_FLOAT_NOCLIP #define INIT_C INIT_C_FLOAT #define ACCUM_C ACCUM_C_FLOAT #define OUTPUT_C OUTPUT_C_FLOAT_NOCLIP #include "../sse/scale_y.h" /* scale_float_x_4_y_bicubic_sse */ #define FUNC_NAME scale_float_x_4_y_bicubic_sse #define WIDTH_MUL 4 #define NUM_TAPS 4 #define INIT_GLOBAL INIT_FLOAT_GLOBAL_4 #define INIT INIT_FLOAT #define ACCUM ACCUM_FLOAT #define OUTPUT OUTPUT_FLOAT #define INIT_C INIT_C_FLOAT #define ACCUM_C ACCUM_C_FLOAT #define OUTPUT_C OUTPUT_C_FLOAT #include "../sse/scale_y.h" /* scale_float_x_4_y_bicubic_noclip_sse */ #define FUNC_NAME scale_float_x_4_y_bicubic_noclip_sse #define WIDTH_MUL 4 #define NUM_TAPS 4 #define INIT_GLOBAL INIT_FLOAT_GLOBAL_4 #define INIT INIT_FLOAT #define ACCUM ACCUM_FLOAT #define OUTPUT OUTPUT_FLOAT_NOCLIP #define INIT_C INIT_C_FLOAT #define ACCUM_C ACCUM_C_FLOAT #define OUTPUT_C OUTPUT_C_FLOAT #include "../sse/scale_y.h" /* */ /* scale_float_x_1_y_quadratic_sse */ #define FUNC_NAME scale_float_x_1_y_quadratic_sse #define WIDTH_MUL 1 #define NUM_TAPS 3 #define INIT_GLOBAL INIT_FLOAT_GLOBAL_1 #define INIT INIT_FLOAT #define ACCUM ACCUM_FLOAT #define OUTPUT OUTPUT_FLOAT_NOCLIP #define INIT_C INIT_C_FLOAT #define ACCUM_C ACCUM_C_FLOAT #define OUTPUT_C OUTPUT_C_FLOAT_NOCLIP #include "../sse/scale_y.h" /* scale_float_x_2_y_quadratic_sse */ #define FUNC_NAME scale_float_x_2_y_quadratic_sse #define WIDTH_MUL 2 #define NUM_TAPS 3 #define INIT_GLOBAL INIT_FLOAT_GLOBAL_2 #define INIT INIT_FLOAT #define ACCUM ACCUM_FLOAT #define OUTPUT OUTPUT_FLOAT_NOCLIP #define INIT_C INIT_C_FLOAT #define ACCUM_C ACCUM_C_FLOAT #define OUTPUT_C OUTPUT_C_FLOAT_NOCLIP #include "../sse/scale_y.h" /* scale_float_x_4_y_quadratic_sse */ #define FUNC_NAME scale_float_x_4_y_quadratic_sse #define WIDTH_MUL 4 #define NUM_TAPS 3 #define INIT_GLOBAL INIT_FLOAT_GLOBAL_4 #define INIT INIT_FLOAT #define ACCUM ACCUM_FLOAT #define OUTPUT OUTPUT_FLOAT_NOCLIP #define INIT_C INIT_C_FLOAT #define ACCUM_C ACCUM_C_FLOAT #define OUTPUT_C OUTPUT_C_FLOAT_NOCLIP #include "../sse/scale_y.h" /* scale_float_x_1_y_generic_sse */ #define FUNC_NAME scale_float_x_1_y_generic_sse #define WIDTH_MUL 1 #define NUM_TAPS -1 #define INIT_GLOBAL INIT_FLOAT_GLOBAL_1 #define INIT INIT_FLOAT #define ACCUM ACCUM_FLOAT #define OUTPUT OUTPUT_FLOAT #define INIT_C INIT_C_FLOAT #define ACCUM_C ACCUM_C_FLOAT #define OUTPUT_C OUTPUT_C_FLOAT #include "../sse/scale_y.h" /* scale_float_x_2_y_generic_sse */ #define FUNC_NAME scale_float_x_2_y_generic_sse #define WIDTH_MUL 2 #define NUM_TAPS -1 #define INIT_GLOBAL INIT_FLOAT_GLOBAL_2 #define INIT INIT_FLOAT #define ACCUM ACCUM_FLOAT #define OUTPUT OUTPUT_FLOAT #define INIT_C INIT_C_FLOAT #define ACCUM_C ACCUM_C_FLOAT #define OUTPUT_C OUTPUT_C_FLOAT #include "../sse/scale_y.h" /* scale_float_x_4_y_generic_sse */ #define FUNC_NAME scale_float_x_4_y_generic_sse #define WIDTH_MUL 4 #define NUM_TAPS -1 #define INIT_GLOBAL INIT_FLOAT_GLOBAL_4 #define INIT INIT_FLOAT #define ACCUM ACCUM_FLOAT #define OUTPUT OUTPUT_FLOAT #define INIT_C INIT_C_FLOAT #define ACCUM_C ACCUM_C_FLOAT #define OUTPUT_C OUTPUT_C_FLOAT #include "../sse/scale_y.h" void gavl_init_scale_funcs_quadratic_y_sse(gavl_scale_funcs_t * tab, int src_advance, int dst_advance) { tab->funcs_y.scale_float_x_1 = scale_float_x_1_y_quadratic_sse; tab->funcs_y.scale_float_x_2 = scale_float_x_2_y_quadratic_sse; tab->funcs_y.scale_float_x_4 = scale_float_x_4_y_quadratic_sse; } void gavl_init_scale_funcs_bicubic_y_sse(gavl_scale_funcs_t * tab, int src_advance, int dst_advance) { tab->funcs_y.scale_float_x_1 = scale_float_x_1_y_bicubic_sse; tab->funcs_y.scale_float_x_2 = scale_float_x_2_y_bicubic_sse; tab->funcs_y.scale_float_x_4 = scale_float_x_4_y_bicubic_sse; } void gavl_init_scale_funcs_bicubic_y_noclip_sse(gavl_scale_funcs_t * tab, int src_advance, int dst_advance) { tab->funcs_y.scale_float_x_1 = scale_float_x_1_y_bicubic_noclip_sse; tab->funcs_y.scale_float_x_2 = scale_float_x_2_y_bicubic_noclip_sse; tab->funcs_y.scale_float_x_4 = scale_float_x_4_y_bicubic_noclip_sse; } void gavl_init_scale_funcs_generic_y_sse(gavl_scale_funcs_t * tab, int src_advance, int dst_advance) { tab->funcs_y.scale_float_x_1 = scale_float_x_1_y_generic_sse; tab->funcs_y.scale_float_x_2 = scale_float_x_2_y_generic_sse; tab->funcs_y.scale_float_x_4 = scale_float_x_4_y_generic_sse; } /* scale_uint8_x_1_y_bilinear_sse */ #define FUNC_NAME scale_float_x_1_y_bilinear_sse #define WIDTH_MUL 1 #include "scale_y_linear.h" /* scale_float_x_2_y_bilinear_sse */ #define FUNC_NAME scale_float_x_2_y_bilinear_sse #define WIDTH_MUL 2 #include "scale_y_linear.h" /* scale_float_x_4_y_bilinear_sse */ #define FUNC_NAME scale_float_x_4_y_bilinear_sse #define WIDTH_MUL 4 #include "scale_y_linear.h" /* scale_float_x_3_y_bilinear_sse */ #define FUNC_NAME scale_float_x_3_y_bilinear_sse #define WIDTH_MUL 3 #include "scale_y_linear.h" void gavl_init_scale_funcs_bilinear_y_sse(gavl_scale_funcs_t * tab, int src_advance, int dst_advance) { #if 1 // Too slow tab->funcs_y.scale_float_x_1 = scale_float_x_1_y_bilinear_sse; tab->funcs_y.scale_float_x_2 = scale_float_x_2_y_bilinear_sse; tab->funcs_y.scale_float_x_3 = scale_float_x_3_y_bilinear_sse; tab->funcs_y.scale_float_x_4 = scale_float_x_4_y_bilinear_sse; #endif } bplaum-gavl-b9385e3/gavl/sse/sse.h000066400000000000000000000770221513252040200167550ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ /* * SSE* macros * Modeled after libmmx * * SSE macros copied from xine * SSE2+ macros gathered from online docs * sse_t struct extended for SSE2+ integer routines */ #include #include typedef union { float sf[4]; /* Single-precision (32-bit) value */ double df[2]; /* Double-precision (64-bit) value */ int64_t q[2]; /* Quadword (64-bit) value */ uint64_t uq[2]; /* Unsigned Quadword */ int32_t d[4]; /* 2 Doubleword (32-bit) values */ uint32_t ud[4]; /* 2 Unsigned Doubleword */ int16_t w[8]; /* 4 Word (16-bit) values */ uint16_t uw[8]; /* 4 Unsigned Word */ int8_t b[16]; /* 8 Byte (8-bit) values */ uint8_t ub[16]; /* 8 Unsigned Byte */ } ATTR_ALIGN(16) sse_t; #define sse_i2r(op, imm, reg) \ __asm__ __volatile__ (#op " %0, %%" #reg \ : /* nothing */ \ : "X" (imm) ) #define sse_m2r(op, mem, reg) \ __asm__ __volatile__ (#op " %0, %%" #reg \ : /* nothing */ \ : "m" (mem)) #define sse_r2m(op, reg, mem) \ __asm__ __volatile__ (#op " %%" #reg ", %0" \ : "=m" (mem) \ : /* nothing */ ) #define sse_r2r(op, regs, regd) \ __asm__ __volatile__ (#op " %" #regs ", %" #regd) #define sse_r2ri(op, regs, regd, imm) \ __asm__ __volatile__ (#op " %0, %%" #regs ", %%" #regd \ : /* nothing */ \ : "X" (imm) ) #define sse_m2ri(op, mem, reg, subop) \ __asm__ __volatile__ (#op " %0, %%" #reg ", " #subop \ : /* nothing */ \ : "X" (mem)) /* move four aligned packed single-precision floating-point values between XMM registers or memory */ #define movaps_m2r(var, reg) sse_m2r(movaps, var, reg) #define movaps_r2m(reg, var) sse_r2m(movaps, reg, var) #define movaps_r2r(regs, regd) sse_r2r(movaps, regs, regd) /* non-temporal store of four packed single-precision floating-point values from an XMM register into memory */ #define movntps_r2m(xmmreg, var) sse_r2m(movntps, xmmreg, var) /* move four unaligned packed single-precision floating-point values between XMM registers or memory */ #define movups_m2r(var, reg) sse_m2r(movups, var, reg) #define movups_r2m(reg, var) sse_r2m(movups, reg, var) #define movups_r2r(regs, regd) sse_r2r(movups, regs, regd) /* move two packed single-precision floating-point values from the high quadword of an XMM register to the low quadword of another XMM register */ #define movhlps_r2r(regs, regd) sse_r2r(movhlps, regs, regd) /* move two packed single-precision floating-point values from the low quadword of an XMM register to the high quadword of another XMM register */ #define movlhps_r2r(regs, regd) sse_r2r(movlhps, regs, regd) /* move two packed single-precision floating-point values to or from the high quadword of an XMM register or memory */ #define movhps_m2r(var, reg) sse_m2r(movhps, var, reg) #define movhps_r2m(reg, var) sse_r2m(movhps, reg, var) /* move two packed single-precision floating-point values to or from the low quadword of an XMM register or memory */ #define movlps_m2r(var, reg) sse_m2r(movlps, var, reg) #define movlps_r2m(reg, var) sse_r2m(movlps, reg, var) /* move scalar single-precision floating-point value between XMM registers or memory */ #define movss_m2r(var, reg) sse_m2r(movss, var, reg) #define movss_r2m(reg, var) sse_r2m(movss, reg, var) #define movss_r2r(regs, regd) sse_r2r(movss, regs, regd) /* shuffles values in packed single-precision floating-point operands */ #define shufps_m2ri(var, reg, index) sse_m2ri(shufps, var, reg, index) #define shufps_r2ri(regs, regd, index) sse_r2ri(shufps, regs, regd, index) /* convert packed doubleword integers to packed single-precision floating-point values */ #define cvtpi2ps_m2r(var, xmmreg) sse_m2r(cvtpi2ps, var, xmmreg) #define cvtpi2ps_r2r(mmreg, xmmreg) sse_r2r(cvtpi2ps, mmreg, xmmreg) /* convert packed single-precision floating-point values to packed doubleword integers */ #define cvtps2pi_m2r(var, mmreg) sse_m2r(cvtps2pi, var, mmreg) #define cvtps2pi_r2r(xmmreg, mmreg) sse_r2r(cvtps2pi, mmreg, xmmreg) /* convert with truncation packed single-precision floating-point values to packed doubleword integers */ #define cvttps2pi_m2r(var, mmreg) sse_m2r(cvttps2pi, var, mmreg) #define cvttps2pi_r2r(xmmreg, mmreg) sse_r2r(cvttps2pi, mmreg, xmmreg) /* convert doubleword integer to scalar single-precision floating-point value */ #define cvtsi2ss_m2r(var, xmmreg) sse_m2r(cvtsi2ss, var, xmmreg) #define cvtsi2ss_r2r(reg, xmmreg) sse_r2r(cvtsi2ss, reg, xmmreg) /* convert scalar single-precision floating-point value to a doubleword integer */ #define cvtss2si_m2r(var, reg) sse_m2r(cvtss2si, var, reg) #define cvtss2si_r2r(xmmreg, reg) sse_r2r(cvtss2si, xmmreg, reg) /* convert with truncation scalar single-precision floating-point value to scalar doubleword integer */ #define cvttss2si_m2r(var, reg) sse_m2r(cvtss2si, var, reg) #define cvttss2si_r2r(xmmreg, reg) sse_r2r(cvtss2si, xmmreg, reg) #define movmskps(xmmreg, reg) \ __asm__ __volatile__ ("movmskps %" #xmmreg ", %" #reg) /* add packed single-precision floating-point values */ #define addps_m2r(var, reg) sse_m2r(addps, var, reg) #define addps_r2r(regs, regd) sse_r2r(addps, regs, regd) /* add scalar single-precision floating-point values */ #define addss_m2r(var, reg) sse_m2r(addss, var, reg) #define addss_r2r(regs, regd) sse_r2r(addss, regs, regd) /* subtract packed single-precision floating-point values */ #define subps_m2r(var, reg) sse_m2r(subps, var, reg) #define subps_r2r(regs, regd) sse_r2r(subps, regs, regd) /* subtract scalar single-precision floating-point values */ #define subss_m2r(var, reg) sse_m2r(subss, var, reg) #define subss_r2r(regs, regd) sse_r2r(subss, regs, regd) /* multiply packed single-precision floating-point values */ #define mulps_m2r(var, reg) sse_m2r(mulps, var, reg) #define mulps_r2r(regs, regd) sse_r2r(mulps, regs, regd) /* multiply scalar single-precision floating-point values */ #define mulss_m2r(var, reg) sse_m2r(mulss, var, reg) #define mulss_r2r(regs, regd) sse_r2r(mulss, regs, regd) /* divide packed single-precision floating-point values */ #define divps_m2r(var, reg) sse_m2r(divps, var, reg) #define divps_r2r(regs, regd) sse_r2r(divps, regs, regd) /* divide scalar single-precision floating-point values */ #define divss_m2r(var, reg) sse_m2r(divss, var, reg) #define divss_r2r(regs, regd) sse_r2r(divss, regs, regd) /* compute reciprocals of packed single-precision floating-point values */ #define rcpps_m2r(var, reg) sse_m2r(rcpps, var, reg) #define rcpps_r2r(regs, regd) sse_r2r(rcpps, regs, regd) /* compute reciprocal of scalar single-precision floating-point values */ #define rcpss_m2r(var, reg) sse_m2r(rcpss, var, reg) #define rcpss_r2r(regs, regd) sse_r2r(rcpss, regs, regd) /* compute reciprocals of square roots of packed single-precision floating-point values */ #define rsqrtps_m2r(var, reg) sse_m2r(rsqrtps, var, reg) #define rsqrtps_r2r(regs, regd) sse_r2r(rsqrtps, regs, regd) /* compute reciprocal of square root of scalar single-precision floating-point values */ #define rsqrtss_m2r(var, reg) sse_m2r(rsqrtss, var, reg) #define rsqrtss_r2r(regs, regd) sse_r2r(rsqrtss, regs, regd) /* compute square roots of packed single-precision floating-point values */ #define sqrtps_m2r(var, reg) sse_m2r(sqrtps, var, reg) #define sqrtps_r2r(regs, regd) sse_r2r(sqrtps, regs, regd) /* compute square root of scalar single-precision floating-point values */ #define sqrtss_m2r(var, reg) sse_m2r(sqrtss, var, reg) #define sqrtss_r2r(regs, regd) sse_r2r(sqrtss, regs, regd) /* perform bitwise logical AND of packed single-precision floating-point values */ #define andps_m2r(var, reg) sse_m2r(andps, var, reg) #define andps_r2r(regs, regd) sse_r2r(andps, regs, regd) /* perform bitwise logical AND NOT of packed single-precision floating-point values */ #define andnps_m2r(var, reg) sse_m2r(andnps, var, reg) #define andnps_r2r(regs, regd) sse_r2r(andnps, regs, regd) /* perform bitwise logical OR of packed single-precision floating-point values */ #define orps_m2r(var, reg) sse_m2r(orps, var, reg) #define orps_r2r(regs, regd) sse_r2r(orps, regs, regd) /* perform bitwise logical XOR of packed single-precision floating-point values */ #define xorps_m2r(var, reg) sse_m2r(xorps, var, reg) #define xorps_r2r(regs, regd) sse_r2r(xorps, regs, regd) /* return maximum packed single-precision floating-point values */ #define maxps_m2r(var, reg) sse_m2r(maxps, var, reg) #define maxps_r2r(regs, regd) sse_r2r(maxps, regs, regd) /* return maximum scalar single-precision floating-point values */ #define maxss_m2r(var, reg) sse_m2r(maxss, var, reg) #define maxss_r2r(regs, regd) sse_r2r(maxss, regs, regd) /* return minimum packed single-precision floating-point values */ #define minps_m2r(var, reg) sse_m2r(minps, var, reg) #define minps_r2r(regs, regd) sse_r2r(minps, regs, regd) /* return minimum scalar single-precision floating-point values. */ #define minss_m2r(var, reg) sse_m2r(minss, var, reg) #define minss_r2r(regs, regd) sse_r2r(minss, regs, regd) /* compare packed single-precision floating-point values */ #define cmpps_m2r(var, reg, op) sse_m2ri(cmpps, var, reg, op) #define cmpps_r2r(regs, regd, op) sse_r2ri(cmpps, regs, regd, op) #define cmpeqps_m2r(var, reg) sse_m2ri(cmpps, var, reg, 0) #define cmpeqps_r2r(regs, regd) sse_r2ri(cmpps, regs, regd, 0) #define cmpltps_m2r(var, reg) sse_m2ri(cmpps, var, reg, 1) #define cmpltps_r2r(regs, regd) sse_r2ri(cmpps, regs, regd, 1) #define cmpleps_m2r(var, reg) sse_m2ri(cmpps, var, reg, 2) #define cmpleps_r2r(regs, regd) sse_r2ri(cmpps, regs, regd, 2) #define cmpunordps_m2r(var, reg) sse_m2ri(cmpps, var, reg, 3) #define cmpunordps_r2r(regs, regd) sse_r2ri(cmpps, regs, regd, 3) #define cmpneqps_m2r(var, reg) sse_m2ri(cmpps, var, reg, 4) #define cmpneqps_r2r(regs, regd) sse_r2ri(cmpps, regs, regd, 4) #define cmpnltps_m2r(var, reg) sse_m2ri(cmpps, var, reg, 5) #define cmpnltps_r2r(regs, regd) sse_r2ri(cmpps, regs, regd, 5) #define cmpnleps_m2r(var, reg) sse_m2ri(cmpps, var, reg, 6) #define cmpnleps_r2r(regs, regd) sse_r2ri(cmpps, regs, regd, 6) #define cmpordps_m2r(var, reg) sse_m2ri(cmpps, var, reg, 7) #define cmpordps_r2r(regs, regd) sse_r2ri(cmpps, regs, regd, 7) /* Compare low single-precision floating-point value from xmm2/m32 with low single-precision floating-point value in xmm1 register using imm8 as comparison predicate. */ #define cmpss_m2r(var, reg, op) sse_m2ri(cmpss, var, reg, op) #define cmpss_r2r(regs, regd, op) sse_r2ri(cmpss, regs, regd, op) #define cmpeqss_m2r(var, reg) sse_m2ri(cmpss, var, reg, 0) #define cmpeqss_r2r(regs, regd) sse_r2ri(cmpss, regs, regd, 0) #define cmpltss_m2r(var, reg) sse_m2ri(cmpss, var, reg, 1) #define cmpltss_r2r(regs, regd) sse_r2ri(cmpss, regs, regd, 1) #define cmpless_m2r(var, reg) sse_m2ri(cmpss, var, reg, 2) #define cmpless_r2r(regs, regd) sse_r2ri(cmpss, regs, regd, 2) #define cmpunordss_m2r(var, reg) sse_m2ri(cmpss, var, reg, 3) #define cmpunordss_r2r(regs, regd) sse_r2ri(cmpss, regs, regd, 3) #define cmpneqss_m2r(var, reg) sse_m2ri(cmpss, var, reg, 4) #define cmpneqss_r2r(regs, regd) sse_r2ri(cmpss, regs, regd, 4) #define cmpnltss_m2r(var, reg) sse_m2ri(cmpss, var, reg, 5) #define cmpnltss_r2r(regs, regd) sse_r2ri(cmpss, regs, regd, 5) #define cmpnless_m2r(var, reg) sse_m2ri(cmpss, var, reg, 6) #define cmpnless_r2r(regs, regd) sse_r2ri(cmpss, regs, regd, 6) #define cmpordss_m2r(var, reg) sse_m2ri(cmpss, var, reg, 7) #define cmpordss_r2r(regs, regd) sse_r2ri(cmpss, regs, regd, 7) /* perform ordered comparison of scalar single-precision floating-point values and set flags in EFLAGS register */ #define comiss_m2r(var, reg) sse_m2r(comiss, var, reg) #define comiss_r2r(regs, regd) sse_r2r(comiss, regs, regd) /* perform unordered comparison of scalar single-precision floating-point values and set flags in EFLAGS register */ #define ucomiss_m2r(var, reg) sse_m2r(ucomiss, var, reg) #define ucomiss_r2r(regs, regd) sse_r2r(ucomiss, regs, regd) /* unpacks and interleaves the two low-order values from two single-precision floating-point operands */ #define unpcklps_m2r(var, reg) sse_m2r(unpcklps, var, reg) #define unpcklps_r2r(regs, regd) sse_r2r(unpcklps, regs, regd) /* unpacks and interleaves the two high-order values from two single-precision floating-point operands */ #define unpckhps_m2r(var, reg) sse_m2r(unpckhps, var, reg) #define unpckhps_r2r(regs, regd) sse_r2r(unpckhps, regs, regd) /* */ #define fxrstor(mem) \ __asm__ __volatile__ ("fxrstor %0" \ : /* nothing */ \ : "X" (mem)) /* */ #define fxsave(mem) \ __asm__ __volatile__ ("fxsave %0" \ : /* nothing */ \ : "X" (mem)) /* save %mxcsr register state */ #define stmxcsr(mem) \ __asm__ __volatile__ ("stmxcsr %0" \ : /* nothing */ \ : "X" (mem)) /* load %mxcsr register */ #define ldmxcsr(mem) \ __asm__ __volatile__ ("ldmxcsr %0" \ : /* nothing */ \ : "X" (mem)) /* * SSE2 */ /* * SSE2 Data Movement Instructions */ /* Move two aligned packed double-precision floating-point values between XMM registers and memory */ #define movapd_m2r(var, reg) sse_m2r(movapd, var, reg) #define movapd_r2m(reg, var) sse_r2m(movapd, reg, var) #define movapd_r2r(regs, regd) sse_r2r(movapd, regs, regd) /* move high packed double-precision floating-point value to or from the high quadword of an XMM register and memory */ #define movhpd_m2r(var, reg) sse_m2r(movhpd, var, reg) #define movhpd_r2m(reg, var) sse_r2m(movhpd, reg, var) #define movhpd_r2r(regs, regd) sse_r2r(movhpd, regs, regd) /* move low packed single-precision floating-point value to or from the low quadword of an XMM register and memory */ #define movlpd_m2r(var, reg) sse_m2r(movlpd, var, reg) #define movlpd_r2m(reg, var) sse_r2m(movlpd, reg, var) #define movlpd_r2r(regs, regd) sse_r2r(movlpd, regs, regd) /* extract sign mask from two packed double-precision floating-point values */ #define movmskpd_r2r(regs, regd) sse_m2r(movmskpd, regs, regd) /* move scalar double-precision floating-point value between XMM registers and memory. */ #define movsd_m2r(var, reg) sse_m2r(movsd, var, reg) #define movsd_r2m(reg, var) sse_r2m(movsd, reg, var) #define movsd_r2r(regs, regd) sse_r2r(movsd, regs, regd) /* move two unaligned packed double-precision floating-point values between XMM registers and memory */ #define movupd_m2r(var, reg) sse_m2r(movupd, var, reg) #define movupd_r2m(reg, var) sse_r2m(movupd, reg, var) #define movupd_r2r(regs, regd) sse_r2r(movupd, regs, regd) /* * SSE2 Packed Arithmetic Instructions */ /* add packed double-precision floating-point values */ #define addpd_m2r(var, reg) sse_m2r(addpd, var, reg) #define addpd_r2r(regs, regd) sse_r2r(addpd, regs, regd) /* add scalar double-precision floating-point values */ #define addsd_m2r(var, reg) sse_m2r(addsd, var, reg) #define addsd_r2r(regs, regd) sse_r2r(addsd, regs, regd) /* divide packed double-precision floating-point values */ #define divpd_m2r(var, reg) sse_m2r(divpd, var, reg) #define divpd_r2r(regs, regd) sse_r2r(divpd, regs, regd) /* divide scalar double-precision floating-point values */ #define divsd_m2r(var, reg) sse_m2r(divsd, var, reg) #define divsd_r2r(regs, regd) sse_r2r(divsd, regs, regd) /* multiply packed double-precision floating-point values */ #define mulpd_m2r(var, reg) sse_m2r(mulpd, var, reg) #define mulpd_r2r(regs, regd) sse_r2r(mulpd, regs, regd) /* multiply scalar double-precision floating-point values */ #define mulsd_m2r(var, reg) sse_m2r(mulsd, var, reg) #define mulsd_r2r(regs, regd) sse_r2r(mulsd, regs, regd) /* subtract packed double-precision floating-point values */ #define subpd_m2r(var, reg) sse_m2r(subpd, var, reg) #define subpd_r2r(regs, regd) sse_r2r(subpd, regs, regd) /* subtract scalar double-precision floating-point values */ #define subsd_m2r(var, reg) sse_m2r(subsd, var, reg) #define subsd_r2r(regs, regd) sse_r2r(subsd, regs, regd) /* return maximum packed double-precision floating-point values */ #define maxpd_m2r(var, reg) sse_m2r(maxpd, var, reg) #define maxpd_r2r(regs, regd) sse_r2r(maxpd, regs, regd) /* return maximum scalar double-precision floating-point value */ #define maxsd_m2r(var, reg) sse_m2r(maxsd, var, reg) #define maxsd_r2r(regs, regd) sse_r2r(maxsd, regs, regd) /* return minimum packed double-precision floating-point values */ #define minpd_m2r(var, reg) sse_m2r(minpd, var, reg) #define minpd_r2r(regs, regd) sse_r2r(minpd, regs, regd) /* return minimum scalar double-precision floating-point value */ #define minsd_m2r(var, reg) sse_m2r(minsd, var, reg) #define minsd_r2r(regs, regd) sse_r2r(minsd, regs, regd) /* compute packed square roots of packed double-precision floating-point values */ #define sqrtpd_m2r(var, reg) sse_m2r(sqrtpd, var, reg) #define sqrtpd_r2r(regs, regd) sse_r2r(sqrtpd, regs, regd) /* compute scalar square root of scalar double-precision floating-point value */ #define sqrtsd_m2r(var, reg) sse_m2r(sqrtsd, var, reg) #define sqrtsd_r2r(regs, regd) sse_r2r(sqrtsd, regs, regd) /* * SSE2 Logical Instructions */ /* perform bitwise logical AND NOT of packed double-precision floating-point values */ #define andnpd_m2r(var, reg) sse_m2r(andnpd, var, reg) #define andnpd_r2r(regs, regd) sse_r2r(andnpd, regs, regd) /* perform bitwise logical AND of packed double-precision floating-point values */ #define andpd_m2r(var, reg) sse_m2r(andpd, var, reg) #define andpd_r2r(regs, regd) sse_r2r(andpd, regs, regd) /* perform bitwise logical OR of packed double-precision floating-point values */ #define orpd_m2r(var, reg) sse_m2r(orpd, var, reg) #define orpd_r2r(regs, regd) sse_r2r(orpd, regs, regd) /* perform bitwise logical XOR of packed double-precision floating-point values */ #define xorpd_m2r(var, reg) sse_m2r(xorpd, var, reg) #define xorpd_r2r(regs, regd) sse_r2r(xorpd, regs, regd) /* * SSE2 Compare Instructions */ /* compare packed double-precision floating-point values */ #define cmppd_m2r(var, reg) sse_m2r(cmppd, var, reg) #define cmppd_r2r(regs, regd) sse_r2r(cmppd, regs, regd) /* perform ordered comparison of scalar double-precision floating-point values and set flags in EFLAGS register */ #define comisd_m2r(var, reg) sse_m2r(comisd, var, reg) #define comisd_r2r(regs, regd) sse_r2r(comisd, regs, regd) /* perform unordered comparison of scalar double-precision floating-point values and set flags in EFLAGS register */ #define ucomisd_m2r(var, reg) sse_m2r(ucomisd, var, reg) #define ucomisd_r2r(regs, regd) sse_r2r(ucomisd, regs, regd) /* * SSE2 Shuffle and Unpack Instructions */ /* shuffle values in packed double-precision floating-point operands */ #define shufpd_m2r(var, reg) sse_m2r(shufpd, var, reg) #define shufpd_r2r(regs, regd) sse_r2r(shufpd, regs, regd) /* unpack and interleave the high values from two packed double-precision floating-point operands */ #define unpckhpd_m2r(var, reg) sse_m2r(unpckhpd, var, reg) #define unpckhpd_r2r(regs, regd) sse_r2r(unpckhpd, regs, regd) /* unpack and interleave the low values from two packed double-precision floating-point operands */ #define unpcklpd_m2r(var, reg) sse_m2r(unpcklpd, var, reg) #define unpcklpd_r2r(regs, regd) sse_r2r(unpcklpd, regs, regd) /* * SSE2 Conversion Instructions */ /* convert packed doubleword integers to packed double-precision floating-point values */ #define cvtdq2pd_m2r(var, reg) sse_m2r(cvtdq2pd, var, reg) #define cvtdq2pd_r2r(regs, regd) sse_r2r(cvtdq2pd, regs, regd) /* convert packed double-precision floating-point values to packed doubleword integers */ #define cvtpd2dq_m2r(var, reg) sse_m2r(cvtpd2dq, var, reg) #define cvtpd2dq_r2r(regs, regd) sse_r2r(cvtpd2dq, regs, regd) /* convert packed double-precision floating-point values to packed doubleword integers */ #define cvtpd2pi_m2r(var, reg) sse_m2r(cvtpd2pi, var, reg) #define cvtpd2pi_r2r(regs, regd) sse_r2r(cvtpd2pi, regs, regd) /* convert packed double-precision floating-point values to packed single-precision floating-point values */ #define cvtpd2ps_m2r(var, reg) sse_m2r(cvtpd2ps, var, reg) #define cvtpd2ps_r2r(regs, regd) sse_r2r(cvtpd2ps, regs, regd) /* convert packed doubleword integers to packed double-precision floating-point values */ #define cvtpi2pd_m2r(var, reg) sse_m2r(cvtpi2pd, var, reg) #define cvtpi2pd_r2r(regs, regd) sse_r2r(cvtpi2pd, regs, regd) /* convert packed single-precision floating-point values to packed double-precision floating-point values */ #define cvtps2pd_m2r(var, reg) sse_m2r(cvtps2pd, var, reg) #define cvtps2pd_r2r(regs, regd) sse_r2r(cvtps2pd, regs, regd) /* convert scalar double-precision floating-point values to a doubleword integer */ #define cvtsd2si_m2r(var, reg) sse_m2r(cvtsd2si, var, reg) #define cvtsd2si_r2r(regs, regd) sse_r2r(cvtsd2si, regs, regd) /* convert scalar double-precision floating-point values to scalar single-precision floating-point values */ #define cvtsd2ss_m2r(var, reg) sse_m2r(cvtsd2ss, var, reg) #define cvtsd2ss_r2r(regs, regd) sse_r2r(cvtsd2ss, regs, regd) /* convert doubleword integer to scalar double-precision floating-point value */ #define cvtsi2sd_m2r(var, reg) sse_m2r(cvtsi2sd, var, reg) #define cvtsi2sd_r2r(regs, regd) sse_r2r(cvtsi2sd, regs, regd) /* convert scalar single-precision floating-point values to scalar double-precision floating-point values */ #define cvtss2sd_m2r(var, reg) sse_m2r(cvtss2sd, var, reg) #define cvtss2sd_r2r(regs, regd) sse_r2r(cvtss2sd, regs, regd) /* convert with truncation packed double-precision floating-point values to packed doubleword integers */ #define cvttpd2dq_m2r(var, reg) sse_m2r(cvttpd2dq, var, reg) #define cvttpd2dq_r2r(regs, regd) sse_r2r(cvttpd2dq, regs, regd) /* convert with truncation packed double-precision floating-point values to packed doubleword integers */ #define cvttpd2pi_m2r(var, reg) sse_m2r(cvttpd2pi, var, reg) #define cvttpd2pi_r2r(regs, regd) sse_r2r(cvttpd2pi, regs, regd) /* convert with truncation scalar double-precision floating-point values to scalar doubleword integers */ #define cvttsd2si_m2r(var, reg) sse_m2r(cvttsd2si, var, reg) #define cvttsd2si_r2r(regs, regd) sse_r2r(cvttsd2si, regs, regd) /* * SSE2 Packed Single-Precision Floating-Point Instructions */ /* convert packed doubleword integers to packed single-precision floating-point values */ #define cvtdq2ps_m2r(var, reg) sse_m2r(cvtdq2ps, var, reg) #define cvtdq2ps_r2r(regs, regd) sse_r2r(cvtdq2ps, regs, regd) /* convert packed single-precision floating-point values to packed doubleword integers */ #define cvtps2dq_m2r(var, reg) sse_m2r(cvtps2dq, var, reg) #define cvtps2dq_r2r(regs, regd) sse_r2r(cvtps2dq, regs, regd) /* convert with truncation packed single-precision floating-point values to packed doubleword integers */ #define cvttps2dq_m2r(var, reg) sse_m2r(cvttps2dq, var, reg) #define cvttps2dq_r2r(regs, regd) sse_r2r(cvttps2dq, regs, regd) /* * SSE2 128-Bit SIMD Integer Instructions */ /* move quadword integer from XMM to MMX registers */ #define movdq2q_r2r(regs, regd) sse_r2r(movdq2q, regs, regd) /* move quadword integer from MMX to XMM registers */ #define movq2dq_r2r(regs, regd) sse_r2r(movq2dq, regs, regd) /* move aligned double quadword */ #define movdqa_m2r(var, reg) sse_m2r(movdqa, var, reg) #define movdqa_r2m(reg, var) sse_r2m(movdqa, reg, var) #define movdqa_r2r(regs, regd) sse_r2r(movdqa, regs, regd) /* move unaligned double quadword */ #define movdqu_m2r(var, reg) sse_m2r(movdqu, var, reg) #define movdqu_r2m(reg, var) sse_r2m(movdqu, reg, var) /* add packed quadword integers */ #define paddq_m2r(var, reg) sse_m2r(paddq, var, reg) #define paddq_r2r(regs, regd) sse_r2r(paddq, regs, regd) /* multiply packed unsigned doubleword integers */ #define pmuludq_m2r(var, reg) sse_m2r(pmuldq, var, reg) #define pmuludq_r2r(regs, regd) sse_r2r(pmuldq, regs, regd) /* shuffle packed doublewords */ #define pshufd_m2ri(var, reg, imm) sse_m2ri(pshufd, var, reg, imm) #define pshufd_r2ri(reg, var, imm) sse_r2ri(pshufd, reg, var, imm) /* shuffle packed high words */ #define pshufhw_m2ri(var, reg, imm) sse_m2ri(pshufhw, var, reg, imm) #define pshufhw_r2ri(regs, regd, imm) sse_r2ri(pshufhw, regs, regd, imm) /* shuffle packed low words */ #define pshuflw_m2ri(var, reg, imm) sse_m2ri(pshuflw, var, reg, imm) #define pshuflw_r2ri(regs, regd, imm) sse_r2ri(pshuflw, regs, regd, imm) /* shift double quadword left logical */ #define pslldq_i2r(imm, reg) sse_i2r(pslldq, imm, reg) /* shift double quadword right logical */ #define psrldq_i2r(imm, reg) sse_i2r(psrldq, imm, reg) /* subtract packed quadword integers */ #define psubq_m2r(var, reg) sse_m2r(psubq, var, reg) #define psubq_r2r(regs, regd) sse_r2r(psubq, regs, regd) /* unpack high quadwords */ #define punpckhqdq_m2r(var, reg) sse_m2r(punpckhqdq, var, reg) #define punpckhqdq_r2r(regs, regd) sse_r2r(punpckhqdq, regs, regd) /* unpack low quadwords */ #define punpcklqdq_m2r(var, reg) sse_m2r(punpcklqdq, var, reg) #define punpcklqdq_r2r(regs, regd) sse_r2r(punpcklqdq, regs, regd) /* * SSE3 instructions */ /* * SSE3 SIMD Floating-Point Instructions */ /* Add/Subtract packed DP FP numbers */ #define addsubpd_m2r(var, reg) sse_m2r(addsubpd, var, reg) #define addsubpd_r2r(regs, regd) sse_r2r(addsubpd, regs, regd) /* Add/Subtract packed SP FP numbers */ #define addsubps_m2r(var, reg) sse_m2r(addsubps, var, reg) #define addsubps_r2r(regs, regd) sse_r2r(addsubps, regs, regd) /* Add horizontally packed DP FP numbers */ #define haddpd_m2r(var, reg) sse_m2r(haddpd, var, reg) #define haddpd_r2r(regs, regd) sse_r2r(haddpd, regs, regd) /* Add horizontally packed SP FP numbers */ #define haddps_m2r(var, reg) sse_m2r(haddps, var, reg) #define haddps_r2r(regs, regd) sse_r2r(haddps, regs, regd) /* Subtract horizontally packed DP FP numbers */ #define hsubpd_m2r(var, reg) sse_m2r(hsubpd, var, reg) #define hsubpd_r2r(regs, regd) sse_r2r(hsubpd, regs, regd) /* Subtract horizontally packed SP FP numbers */ #define hsubps_m2r(var, reg) sse_m2r(hsubps, var, reg) #define hsubps_r2r(regs, regd) sse_r2r(hsubps, regs, regd) /* * SSE3 SIMD Integer Instructions */ /* Move 64 bits representing the lower DP data element from XMM2/Mem to XMM1 register and duplicate. */ #define movddup_m2r(var, reg) sse_m2r(movddup, var, reg) #define movddup_r2r(regs, regd) sse_r2r(movddup, regs, regd) /* Move 128 bits representing packed SP data elements from XMM2/Mem to XMM1 register and duplicate high. */ #define movshdup_m2r(var, reg) sse_m2r(movshdup, var, reg) #define movshdup_r2r(regs, regd) sse_r2r(movshdup, regs, regd) /* Move 128 bits representing packed SP data elements from XMM2/Mem to XMM1 register and duplicate low. */ #define movsldup_m2r(var, reg) sse_m2r(movsldup, var, reg) #define movsldup_r2r(regs, regd) sse_r2r(movsldup, regs, regd) /* Load 128 bits from Mem to XMM register. */ #define lddqu_m2r(var, reg) sse_m2r(lddqu, var, reg) /* * SSSE3 */ /* Negate the elements of a register of bytes, words or dwords if the sign of the corresponding elements of another register is negative. */ #define psignw_m2r(var, reg) sse_m2r(psignw, var, reg) #define psignw_r2r(regs, regd) sse_r2r(psignw, regs, regd) #define psignd_m2r(var, reg) sse_m2r(psignd, var, reg) #define psignd_r2r(regs, regd) sse_r2r(psignd, regs, regd) #define psignb_m2r(var, reg) sse_m2r(psignb, var, reg) #define psignb_r2r(regs, regd) sse_r2r(psignb, regs, regd) /* Fill the elements of a register of bytes, words or dwords with the absolute values of the elements of another register */ #define pabsw_m2r(var, reg) sse_m2r(pabsw, var, reg) #define pabsw_r2r(regs, regd) sse_r2r(pabsw, regs, regd) #define pabsd_m2r(var, reg) sse_m2r(pabsd, var, reg) #define pabsd_r2r(regs, regd) sse_r2r(pabsd, regs, regd) #define pabsb_m2r(var, reg) sse_m2r(pabsb, var, reg) #define pabsb_r2r(regs, regd) sse_r2r(pabsb, regs, regd) /* takes registers of bytes A = [a0 a1 a2 ...] and B = [b0 b1 b2 ...] and replaces A with [ab0 ab1 ab2 ...]; except that it replaces the ith entry with 0 if the top bit of bi is set. */ #define pshufb_m2r(var, reg) sse_m2r(pshufb, var, reg) #define pshufb_r2r(regs, regd) sse_r2r(pshufb, regs, regd) /* takes registers A = [a0 a1 a2 ...] and B = [b0 b1 b2 ...] and outputs [a0-a1 a2-a3 ... b0-b1 b2-b3 ...] */ #define phsubw_m2r(var, reg) sse_m2r(phsubw, var, reg) #define phsubw_r2r(regs, regd) sse_r2r(phsubw, regs, regd) #define phsubd_m2r(var, reg) sse_m2r(phsubd, var, reg) #define phsubd_r2r(regs, regd) sse_r2r(phsubd, regs, regd) /* like PHSUBW, but outputs [satsw(a0-a1) satsw(a2-a3) ... satsw(b0-b1) satsw(b2-b3) ...] */ #define phsubsw_m2r(var, reg) sse_m2r(phsubsw, var, reg) #define phsubsw_r2r(regs, regd) sse_r2r(phsubsw, regs, regd) /* takes registers A = [a0 a1 a2 ...] and B = [b0 b1 b2 ...] and outputs [a0+a1 a2+a3 ... b0+b1 b2+b3 ...] */ #define phaddw_m2r(var, reg) sse_m2r(phaddw, var, reg) #define phaddw_r2r(regs, regd) sse_r2r(phaddw, regs, regd) #define phaddd_m2r(var, reg) sse_m2r(phaddd, var, reg) #define phaddd_r2r(regs, regd) sse_r2r(phaddd, regs, regd) /* like PHADDW, but outputs [satsw(a0+a1) satsw(a2+a3) ... satsw(b0+b1) satsw(b2+b3) ...] */ #define phaddsw_m2r(var, reg) sse_m2r(phaddsw, var, reg) #define phaddsw_r2r(regs, regd) sse_r2r(phaddsw, regs, regd) /* treat the sixteen-bit words in registers A and B as signed 15-bit fixed-point numbers between -1 and 1 (eg 0x4000 is treated as 0.5 and 0xa000 as -0.75), and multiply them together with correct rounding. */ #define pmulhrsw_m2r(var, reg) sse_m2r(pmulhrsw, var, reg) #define pmulhrsw_r2r(regs, regd) sse_r2r(pmulhrsw, regs, regd) /* Take the bytes in registers A and B, multiply them together, add pairs, signed-saturate and store. IE [a0 a1 a2 ...] pmaddubsw [b0 b1 b2 ...] = [satsw(a0b0+a1b1) satsw(a2b2+a3b3) ...] */ #define pmaddubsw_m2r(var, reg) sse_m2r(pmaddubsw, var, reg) #define pmaddubsw_r2r(regs, regd) sse_r2r(pmaddubsw, regs, regd) /* take two registers, concatenate their values, and pull out a register-length section from an offset given by an immediate value encoded in the instruction. */ #define palignr_r2ri(regs, regd, imm) sse_r2ri(palignr, regs, regd, imm) #ifdef SSE_DEBUG static sse_t debug_sse; #define sse_debug(r) movaps_r2m(r, debug_sse.ub); \ fprintf(stderr, "%s: %f %f %f %f\n", #r, \ debug_sse.sf[0], \ debug_sse.sf[1], \ debug_sse.sf[2], \ debug_sse.sf[3]); #endif bplaum-gavl-b9385e3/gavl/sse2/000077500000000000000000000000001513252040200160645ustar00rootroot00000000000000bplaum-gavl-b9385e3/gavl/sse2/Makefile.am000066400000000000000000000002131513252040200201140ustar00rootroot00000000000000AM_CFLAGS = @LIBGAVL_CFLAGS@ noinst_LTLIBRARIES = libgavl_sse2.la libgavl_sse2_la_SOURCES = \ scale_y_sse2.c noinst_HEADERS = scale_y.h bplaum-gavl-b9385e3/gavl/sse2/scale_y.h000066400000000000000000000072741513252040200176660ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ /* SSE2 Optimized scaling */ static void (FUNC_NAME)(gavl_video_scale_context_t * ctx, int scanline, uint8_t * dest_start) { int i, imax; uint8_t * src, *src_start; uint8_t * dst; int32_t tmp; #if NUM_TAPS <= 0 int j; #endif dst = dest_start; src_start = ctx->src + ctx->table_v.pixels[scanline].index * ctx->src_stride; /* While destination is not aligned... */ imax = (16 - (((long)(src_start)) % 16))/BYTES; // imax = ctx->dst_size * BYTES * WIDTH_MUL; for(i = 0; i < imax; i++) { #ifdef INIT_C INIT_C; #endif src = src_start; /* Accum */ #if NUM_TAPS <= 0 for(j = 0; j < ctx->table_v.factors_per_pixel; j++) { ACCUM_C(j); src += ctx->src_stride; } #else// NUM_TAPS > 0 ACCUM_C(0); src += ctx->src_stride; #if NUM_TAPS > 1 ACCUM_C(1); src += ctx->src_stride; #endif #if NUM_TAPS > 2 ACCUM_C(2); src += ctx->src_stride; #endif #if NUM_TAPS > 3 ACCUM_C(3); src += ctx->src_stride; #endif #endif // NUM_TAPS > 0 OUTPUT_C; dst+=BYTES; src_start+=BYTES; // fprintf(stderr, "Src start: %p\n", src_start); } imax = (ctx->dst_size * BYTES * WIDTH_MUL - (dst - dest_start)) / (16*BYTES); #ifdef INIT_GLOBAL INIT_GLOBAL; #endif for(i = 0; i < imax; i++) { INIT; src = src_start; /* Accum */ #if NUM_TAPS <= 0 for(j = 0; j < ctx->table_v.factors_per_pixel; j++) { ACCUM(j); src += ctx->src_stride; } #else ACCUM(0); src += ctx->src_stride; #if NUM_TAPS > 1 ACCUM(1); src += ctx->src_stride; #endif #if NUM_TAPS > 2 ACCUM(2); src += ctx->src_stride; #endif #if NUM_TAPS > 3 ACCUM(3); src += ctx->src_stride; #endif #endif OUTPUT; dst += (16 * BYTES); src_start += (16 * BYTES); } imax = (ctx->dst_size * BYTES * WIDTH_MUL - (dst - dest_start)) / BYTES; // imax = (ctx->dst_size * WIDTH_MUL); if(!imax) return; for(i = 0; i < imax; i++) { src = src_start; #ifdef INIT_C INIT_C; #endif /* Accum */ #if NUM_TAPS <= 0 for(j = 0; j < ctx->table_v.factors_per_pixel; j++) { ACCUM_C(j); src += ctx->src_stride; } #else ACCUM_C(0); src += ctx->src_stride; #if NUM_TAPS > 1 ACCUM_C(1); src += ctx->src_stride; #endif #if NUM_TAPS > 2 ACCUM_C(2); src += ctx->src_stride; #endif #if NUM_TAPS > 3 ACCUM_C(3); src += ctx->src_stride; #endif #endif OUTPUT_C; dst+=BYTES; src_start+=BYTES; } } #undef FUNC_NAME #undef NUM_TAPS #undef WIDTH_MUL #undef ACCUM #undef ACCUM_C #undef OUTPUT #undef OUTPUT_C #ifdef INIT_GLOBAL #undef INIT_GLOBAL #endif #ifdef INIT_C #undef INIT_C #endif #undef BYTES #undef INIT bplaum-gavl-b9385e3/gavl/sse2/scale_y_sse2.c000066400000000000000000000501171513252040200206070ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include #include #include #include #include "../mmx/mmx.h" #include "../sse/sse.h" static const sse_t factor_mask = { .uw = { 0xFFFF, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000 } }; static const sse_t min_13 = { .uw = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000 } }; static const sse_t max_13 = { .uw = { 0x1FFF, 0x1FFF, 0x1FFF, 0x1FFF, 0x1FFF, 0x1FFF, 0x1FFF, 0x1FFF } }; #if 0 static mmx_t mm_tmp; #define DUMP_MM(name, reg) MOVQ_R2M(reg, mm_tmp);\ fprintf(stderr, "%s: %016llx\n", name, mm_tmp.q); #endif #ifdef MMXEXT #define MOVQ_R2M(reg,mem) movntq_r2m(reg, mem) #else #define MOVQ_R2M(reg,mem) movq_r2m(reg, mem) #endif /* * xmm0: Input1 * xmm1: Input2 * xmm2: Factor1 * xmm3: Factor1 * xmm4: Output1 * xmm5: Output2 * xmm6: Scratch * xmm7: factor_mask */ #define INIT_8_GLOBAL \ pxor_r2r(xmm6, xmm6);\ movaps_m2r(factor_mask, xmm7); #define INIT_8 \ pxor_r2r(xmm3, xmm3);\ pxor_r2r(xmm4, xmm4); #define INIT_16_GLOBAL \ pxor_r2r(xmm6, xmm6);\ movaps_m2r(factor_mask, xmm7); #define INIT_16 \ pxor_r2r(xmm3, xmm3);\ pxor_r2r(xmm4, xmm4); #define LOAD_FACTOR_8(num) \ /* Load factor */ \ movd_m2r(ctx->table_v.pixels[scanline].factor_i[num], xmm2);\ pand_r2r(xmm7, xmm2);\ pshuflw_r2ri(xmm2,xmm5,0x00);\ pshufd_r2ri(xmm5,xmm5,0x00); #define LOAD_FACTOR_16(num) \ /* Load factor */ \ movd_m2r(ctx->table_v.pixels[scanline].factor_i[num], xmm2);\ pand_r2r(xmm7, xmm2);\ pshuflw_r2ri(xmm2,xmm5,0x00);\ pshufd_r2ri(xmm5,xmm5,0x00); #define ACCUM_8(num) \ /* Load input */ \ movaps_m2r(*src,xmm0);\ movaps_r2r(xmm0,xmm1);\ punpcklbw_r2r(xmm6, xmm0); \ punpckhbw_r2r(xmm6, xmm1); \ psllw_i2r(7, xmm0);\ psllw_i2r(7, xmm1);\ LOAD_FACTOR_8(num); \ /* Accumulate xmm0 */ \ pmulhw_r2r(xmm5, xmm0);\ paddsw_r2r(xmm0, xmm3);\ /* Accumulate xmm1 */ \ pmulhw_r2r(xmm5, xmm1);\ paddsw_r2r(xmm1, xmm4) #define ACCUM_16(num) \ /* Load input */ \ movaps_m2r(*src,xmm0);\ movaps_m2r(*(src+16),xmm1);\ psrlw_i2r(1, xmm0);\ psrlw_i2r(1, xmm1);\ LOAD_FACTOR_16(num); \ /* Accumulate xmm0 */ \ pmulhw_r2r(xmm5, xmm0);\ paddsw_r2r(xmm0, xmm3);\ /* Accumulate xmm1 */ \ pmulhw_r2r(xmm5, xmm1);\ paddsw_r2r(xmm1, xmm4) #define OUTPUT_8 \ psraw_i2r(5, xmm3);\ psraw_i2r(5, xmm4);\ packuswb_r2r(xmm4, xmm3);\ movups_r2m(xmm3, *dst) #define OUTPUT_16_NOCLIP \ psllw_i2r(3, xmm3);\ psllw_i2r(3, xmm4);\ movups_r2m(xmm3, *dst);\ movups_r2m(xmm4, *(dst+16));\ #define OUTPUT_16 \ pminsw_m2r(max_13, xmm3);\ pminsw_m2r(max_13, xmm4);\ pmaxsw_m2r(min_13, xmm3);\ pmaxsw_m2r(min_13, xmm4);\ psllw_i2r(3, xmm3);\ psllw_i2r(3, xmm4);\ movups_r2m(xmm3, *dst);\ movups_r2m(xmm4, *(dst+16));\ #define INIT_C_8 \ tmp = 0; #define INIT_C_16 \ tmp = 0; #define ACCUM_C_8(num) \ tmp += ctx->table_v.pixels[scanline].factor_i[num] * *src #define ACCUM_C_16(num) \ tmp += ctx->table_v.pixels[scanline].factor_i[num] * *(uint16_t*)src #define OUTPUT_C_8 \ tmp >>= 14; \ *dst = (uint8_t)((tmp & ~0xFF)?((-tmp) >> 31) : tmp); #define OUTPUT_C_16 \ tmp >>= 14; \ *(uint16_t*)dst = (uint16_t)((tmp & ~0xFFFF)?((-tmp) >> 31) : tmp); /* scale_uint8_x_1_y_bicubic_sse2 */ #define FUNC_NAME scale_uint8_x_1_y_bicubic_sse2 #define WIDTH_MUL 1 #define BYTES 1 #define NUM_TAPS 4 #define INIT_GLOBAL INIT_8_GLOBAL #define INIT INIT_8 #define ACCUM ACCUM_8 #define OUTPUT OUTPUT_8 #define INIT_C INIT_C_8 #define ACCUM_C ACCUM_C_8 #define OUTPUT_C OUTPUT_C_8 #include "scale_y.h" /* scale_uint8_x_2_y_bicubic_sse */ #define FUNC_NAME scale_uint8_x_2_y_bicubic_sse2 #define WIDTH_MUL 2 #define BYTES 1 #define NUM_TAPS 4 #define INIT_GLOBAL INIT_8_GLOBAL #define INIT INIT_8 #define ACCUM ACCUM_8 #define OUTPUT OUTPUT_8 #define INIT_C INIT_C_8 #define ACCUM_C ACCUM_C_8 #define OUTPUT_C OUTPUT_C_8 #include "scale_y.h" /* scale_uint8_x_3_y_bicubic_sse2 */ #define FUNC_NAME scale_uint8_x_3_y_bicubic_sse2 #define WIDTH_MUL 3 #define BYTES 1 #define NUM_TAPS 4 #define INIT_GLOBAL INIT_8_GLOBAL #define INIT INIT_8 #define ACCUM ACCUM_8 #define OUTPUT OUTPUT_8 #define INIT_C INIT_C_8 #define ACCUM_C ACCUM_C_8 #define OUTPUT_C OUTPUT_C_8 #include "scale_y.h" /* scale_uint8_x_4_y_bicubic_sse2 */ #define FUNC_NAME scale_uint8_x_4_y_bicubic_sse2 #define WIDTH_MUL 4 #define BYTES 1 #define NUM_TAPS 4 #define INIT_GLOBAL INIT_8_GLOBAL #define INIT INIT_8 #define ACCUM ACCUM_8 #define OUTPUT OUTPUT_8 #define INIT_C INIT_C_8 #define ACCUM_C ACCUM_C_8 #define OUTPUT_C OUTPUT_C_8 #include "scale_y.h" /* scale_uint8_x_1_y_quadratic_sse2 */ #define FUNC_NAME scale_uint8_x_1_y_quadratic_sse2 #define WIDTH_MUL 1 #define BYTES 1 #define NUM_TAPS 3 #define INIT_GLOBAL INIT_8_GLOBAL #define INIT INIT_8 #define ACCUM ACCUM_8 #define OUTPUT OUTPUT_8 #define INIT_C INIT_C_8 #define ACCUM_C ACCUM_C_8 #define OUTPUT_C OUTPUT_C_8 #include "scale_y.h" /* scale_uint8_x_2_y_quadratic_sse2 */ #define FUNC_NAME scale_uint8_x_2_y_quadratic_sse2 #define WIDTH_MUL 2 #define BYTES 1 #define NUM_TAPS 3 #define INIT_GLOBAL INIT_8_GLOBAL #define INIT INIT_8 #define ACCUM ACCUM_8 #define OUTPUT OUTPUT_8 #define INIT_C INIT_C_8 #define ACCUM_C ACCUM_C_8 #define OUTPUT_C OUTPUT_C_8 #include "scale_y.h" /* scale_uint8_x_3_y_quadratic_sse2 */ #define FUNC_NAME scale_uint8_x_3_y_quadratic_sse2 #define WIDTH_MUL 3 #define BYTES 1 #define NUM_TAPS 3 #define INIT_GLOBAL INIT_8_GLOBAL #define INIT INIT_8 #define ACCUM ACCUM_8 #define OUTPUT OUTPUT_8 #define INIT_C INIT_C_8 #define ACCUM_C ACCUM_C_8 #define OUTPUT_C OUTPUT_C_8 #include "scale_y.h" /* scale_uint8_x_4_y_quadratic_sse2 */ #define FUNC_NAME scale_uint8_x_4_y_quadratic_sse2 #define WIDTH_MUL 4 #define BYTES 1 #define NUM_TAPS 3 #define INIT_GLOBAL INIT_8_GLOBAL #define INIT INIT_8 #define ACCUM ACCUM_8 #define OUTPUT OUTPUT_8 #define INIT_C INIT_C_8 #define ACCUM_C ACCUM_C_8 #define OUTPUT_C OUTPUT_C_8 #include "scale_y.h" /* scale_uint8_x_1_y_generic_sse2 */ #define FUNC_NAME scale_uint8_x_1_y_generic_sse2 #define WIDTH_MUL 1 #define BYTES 1 #define NUM_TAPS -1 #define INIT_GLOBAL INIT_8_GLOBAL #define INIT INIT_8 #define ACCUM ACCUM_8 #define OUTPUT OUTPUT_8 #define INIT_C INIT_C_8 #define ACCUM_C ACCUM_C_8 #define OUTPUT_C OUTPUT_C_8 #include "scale_y.h" /* scale_uint8_x_2_y_generic_sse2 */ #define FUNC_NAME scale_uint8_x_2_y_generic_sse2 #define WIDTH_MUL 2 #define BYTES 1 #define NUM_TAPS -1 #define INIT_GLOBAL INIT_8_GLOBAL #define INIT INIT_8 #define ACCUM ACCUM_8 #define OUTPUT OUTPUT_8 #define INIT_C INIT_C_8 #define ACCUM_C ACCUM_C_8 #define OUTPUT_C OUTPUT_C_8 #include "scale_y.h" /* scale_uint8_x_4_y_generic_sse2 */ #define FUNC_NAME scale_uint8_x_4_y_generic_sse2 #define WIDTH_MUL 4 #define BYTES 1 #define NUM_TAPS -1 #define INIT_GLOBAL INIT_8_GLOBAL #define INIT INIT_8 #define ACCUM ACCUM_8 #define OUTPUT OUTPUT_8 #define INIT_C INIT_C_8 #define ACCUM_C ACCUM_C_8 #define OUTPUT_C OUTPUT_C_8 #include "scale_y.h" /* scale_uint8_x_3_y_generic_sse2 */ #define FUNC_NAME scale_uint8_x_3_y_generic_sse2 #define WIDTH_MUL 3 #define BYTES 1 #define NUM_TAPS -1 #define INIT_GLOBAL INIT_8_GLOBAL #define INIT INIT_8 #define ACCUM ACCUM_8 #define OUTPUT OUTPUT_8 #define INIT_C INIT_C_8 #define ACCUM_C ACCUM_C_8 #define OUTPUT_C OUTPUT_C_8 #include "scale_y.h" /* 16 bits */ /* scale_uint16_x_1_y_bicubic_sse2 */ #define FUNC_NAME scale_uint16_x_1_y_bicubic_sse2 #define WIDTH_MUL 1 #define BYTES 2 #define NUM_TAPS 4 #define INIT_GLOBAL INIT_16_GLOBAL #define INIT INIT_16 #define ACCUM ACCUM_16 #define OUTPUT OUTPUT_16 #define INIT_C INIT_C_16 #define ACCUM_C ACCUM_C_16 #define OUTPUT_C OUTPUT_C_16 #include "scale_y.h" /* scale_uint16_x_1_y_bicubic_noclip_sse2 */ #define FUNC_NAME scale_uint16_x_1_y_bicubic_noclip_sse2 #define WIDTH_MUL 1 #define BYTES 2 #define NUM_TAPS 4 #define INIT_GLOBAL INIT_16_GLOBAL #define INIT INIT_16 #define ACCUM ACCUM_16 #define OUTPUT OUTPUT_16_NOCLIP #define INIT_C INIT_C_16 #define ACCUM_C ACCUM_C_16 #define OUTPUT_C OUTPUT_C_16 #include "scale_y.h" /* scale_uint16_x_2_y_bicubic_sse2 */ #define FUNC_NAME scale_uint16_x_2_y_bicubic_sse2 #define WIDTH_MUL 2 #define BYTES 2 #define NUM_TAPS 4 #define INIT_GLOBAL INIT_16_GLOBAL #define INIT INIT_16 #define ACCUM ACCUM_16 #define OUTPUT OUTPUT_16 #define INIT_C INIT_C_16 #define ACCUM_C ACCUM_C_16 #define OUTPUT_C OUTPUT_C_16 #include "scale_y.h" /* scale_uint16_x_2_y_bicubic_noclip_sse2 */ #define FUNC_NAME scale_uint16_x_2_y_bicubic_noclip_sse2 #define WIDTH_MUL 2 #define BYTES 2 #define NUM_TAPS 4 #define INIT_GLOBAL INIT_16_GLOBAL #define INIT INIT_16 #define ACCUM ACCUM_16 #define OUTPUT OUTPUT_16_NOCLIP #define INIT_C INIT_C_16 #define ACCUM_C ACCUM_C_16 #define OUTPUT_C OUTPUT_C_16 #include "scale_y.h" /* scale_uint16_x_3_y_bicubic_sse2 */ #define FUNC_NAME scale_uint16_x_3_y_bicubic_sse2 #define WIDTH_MUL 3 #define BYTES 2 #define NUM_TAPS 4 #define INIT_GLOBAL INIT_16_GLOBAL #define INIT INIT_16 #define ACCUM ACCUM_16 #define OUTPUT OUTPUT_16 #define INIT_C INIT_C_16 #define ACCUM_C ACCUM_C_16 #define OUTPUT_C OUTPUT_C_16 #include "scale_y.h" /* scale_uint16_x_3_y_bicubic_noclip_sse2 */ #define FUNC_NAME scale_uint16_x_3_y_bicubic_noclip_sse2 #define WIDTH_MUL 3 #define BYTES 2 #define NUM_TAPS 4 #define INIT_GLOBAL INIT_16_GLOBAL #define INIT INIT_16 #define ACCUM ACCUM_16 #define OUTPUT OUTPUT_16_NOCLIP #define INIT_C INIT_C_16 #define ACCUM_C ACCUM_C_16 #define OUTPUT_C OUTPUT_C_16 #include "scale_y.h" /* scale_uint16_x_4_y_bicubic_sse2 */ #define FUNC_NAME scale_uint16_x_4_y_bicubic_sse2 #define WIDTH_MUL 4 #define BYTES 2 #define NUM_TAPS 4 #define INIT_GLOBAL INIT_16_GLOBAL #define INIT INIT_16 #define ACCUM ACCUM_16 #define OUTPUT OUTPUT_16 #define INIT_C INIT_C_16 #define ACCUM_C ACCUM_C_16 #define OUTPUT_C OUTPUT_C_16 #include "scale_y.h" /* scale_uint16_x_4_y_bicubic_noclip_sse2 */ #define FUNC_NAME scale_uint16_x_4_y_bicubic_noclip_sse2 #define WIDTH_MUL 4 #define BYTES 2 #define NUM_TAPS 4 #define INIT_GLOBAL INIT_16_GLOBAL #define INIT INIT_16 #define ACCUM ACCUM_16 #define OUTPUT OUTPUT_16_NOCLIP #define INIT_C INIT_C_16 #define ACCUM_C ACCUM_C_16 #define OUTPUT_C OUTPUT_C_16 #include "scale_y.h" /* */ /* scale_uint16_x_1_y_quadratic_sse2 */ #define FUNC_NAME scale_uint16_x_1_y_quadratic_sse2 #define WIDTH_MUL 1 #define BYTES 2 #define NUM_TAPS 3 #define INIT_GLOBAL INIT_16_GLOBAL #define INIT INIT_16 #define ACCUM ACCUM_16 #define OUTPUT OUTPUT_16_NOCLIP #define INIT_C INIT_C_16 #define ACCUM_C ACCUM_C_16 #define OUTPUT_C OUTPUT_C_16 #include "scale_y.h" /* scale_uint16_x_2_y_quadratic_sse2 */ #define FUNC_NAME scale_uint16_x_2_y_quadratic_sse2 #define WIDTH_MUL 2 #define BYTES 2 #define NUM_TAPS 3 #define INIT_GLOBAL INIT_16_GLOBAL #define INIT INIT_16 #define ACCUM ACCUM_16 #define OUTPUT OUTPUT_16_NOCLIP #define INIT_C INIT_C_16 #define ACCUM_C ACCUM_C_16 #define OUTPUT_C OUTPUT_C_16 #include "scale_y.h" /* scale_uint16_x_3_y_quadratic_sse2 */ #define FUNC_NAME scale_uint16_x_3_y_quadratic_sse2 #define WIDTH_MUL 3 #define BYTES 2 #define NUM_TAPS 3 #define INIT_GLOBAL INIT_16_GLOBAL #define INIT INIT_16 #define ACCUM ACCUM_16 #define OUTPUT OUTPUT_16_NOCLIP #define INIT_C INIT_C_16 #define ACCUM_C ACCUM_C_16 #define OUTPUT_C OUTPUT_C_16 #include "scale_y.h" /* scale_uint16_x_4_y_quadratic_sse2 */ #define FUNC_NAME scale_uint16_x_4_y_quadratic_sse2 #define WIDTH_MUL 4 #define BYTES 2 #define NUM_TAPS 3 #define INIT_GLOBAL INIT_16_GLOBAL #define INIT INIT_16 #define ACCUM ACCUM_16 #define OUTPUT OUTPUT_16_NOCLIP #define INIT_C INIT_C_16 #define ACCUM_C ACCUM_C_16 #define OUTPUT_C OUTPUT_C_16 #include "scale_y.h" /* scale_uint16_x_1_y_generic_sse2 */ #define FUNC_NAME scale_uint16_x_1_y_generic_sse2 #define WIDTH_MUL 1 #define BYTES 2 #define NUM_TAPS -1 #define INIT_GLOBAL INIT_16_GLOBAL #define INIT INIT_16 #define ACCUM ACCUM_16 #define OUTPUT OUTPUT_16 #define INIT_C INIT_C_16 #define ACCUM_C ACCUM_C_16 #define OUTPUT_C OUTPUT_C_16 #include "scale_y.h" /* scale_uint16_x_2_y_generic_sse2 */ #define FUNC_NAME scale_uint16_x_2_y_generic_sse2 #define WIDTH_MUL 2 #define BYTES 2 #define NUM_TAPS -1 #define INIT_GLOBAL INIT_16_GLOBAL #define INIT INIT_16 #define ACCUM ACCUM_16 #define OUTPUT OUTPUT_16 #define INIT_C INIT_C_16 #define ACCUM_C ACCUM_C_16 #define OUTPUT_C OUTPUT_C_16 #include "scale_y.h" /* scale_uint16_x_3_y_generic_sse2 */ #define FUNC_NAME scale_uint16_x_3_y_generic_sse2 #define WIDTH_MUL 3 #define BYTES 2 #define NUM_TAPS -1 #define INIT_GLOBAL INIT_16_GLOBAL #define INIT INIT_16 #define ACCUM ACCUM_16 #define OUTPUT OUTPUT_16 #define INIT_C INIT_C_16 #define ACCUM_C ACCUM_C_16 #define OUTPUT_C OUTPUT_C_16 #include "scale_y.h" /* scale_uint16_x_4_y_generic_sse2 */ #define FUNC_NAME scale_uint16_x_4_y_generic_sse2 #define WIDTH_MUL 4 #define BYTES 2 #define NUM_TAPS -1 #define INIT_GLOBAL INIT_16_GLOBAL #define INIT INIT_16 #define ACCUM ACCUM_16 #define OUTPUT OUTPUT_16 #define INIT_C INIT_C_16 #define ACCUM_C ACCUM_C_16 #define OUTPUT_C OUTPUT_C_16 #include "scale_y.h" void gavl_init_scale_funcs_quadratic_y_sse2(gavl_scale_funcs_t * tab, int src_advance, int dst_advance) { if((src_advance == 1) && (dst_advance == 1)) { tab->funcs_y.scale_uint8_x_1_noadvance = scale_uint8_x_1_y_quadratic_sse2; tab->funcs_y.bits_uint8_noadvance = 14; } else if((src_advance == 3) && (dst_advance == 3)) { tab->funcs_y.scale_uint8_x_3 = scale_uint8_x_3_y_quadratic_sse2; tab->funcs_y.bits_uint8_noadvance = 14; } else if((src_advance == 4) && (dst_advance == 4)) { tab->funcs_y.scale_uint8_x_3 = scale_uint8_x_4_y_quadratic_sse2; tab->funcs_y.scale_uint8_x_4 = scale_uint8_x_4_y_quadratic_sse2; tab->funcs_y.bits_uint8_noadvance = 14; } else if((src_advance == 2) && (dst_advance == 2)) { tab->funcs_y.scale_uint8_x_2 = scale_uint8_x_2_y_quadratic_sse2; tab->funcs_y.bits_uint8_noadvance = 14; } tab->funcs_y.scale_uint16_x_1 = scale_uint16_x_1_y_quadratic_sse2; tab->funcs_y.scale_uint16_x_2 = scale_uint16_x_2_y_quadratic_sse2; tab->funcs_y.scale_uint16_x_3 = scale_uint16_x_3_y_quadratic_sse2; tab->funcs_y.scale_uint16_x_4 = scale_uint16_x_4_y_quadratic_sse2; tab->funcs_y.bits_uint16 = 14; } void gavl_init_scale_funcs_bicubic_y_sse2(gavl_scale_funcs_t * tab, int src_advance, int dst_advance) { if((src_advance == 1) && (dst_advance == 1)) { tab->funcs_y.scale_uint8_x_1_noadvance = scale_uint8_x_1_y_bicubic_sse2; tab->funcs_y.bits_uint8_noadvance = 14; } else if((src_advance == 3) && (dst_advance == 3)) { tab->funcs_y.scale_uint8_x_3 = scale_uint8_x_3_y_bicubic_sse2; tab->funcs_y.bits_uint8_noadvance = 14; } else if((src_advance == 4) && (dst_advance == 4)) { tab->funcs_y.scale_uint8_x_3 = scale_uint8_x_4_y_bicubic_sse2; tab->funcs_y.scale_uint8_x_4 = scale_uint8_x_4_y_bicubic_sse2; tab->funcs_y.bits_uint8_noadvance = 14; } else if((src_advance == 2) && (dst_advance == 2)) { tab->funcs_y.scale_uint8_x_2 = scale_uint8_x_2_y_bicubic_sse2; tab->funcs_y.bits_uint8_noadvance = 14; } tab->funcs_y.scale_uint16_x_1 = scale_uint16_x_1_y_bicubic_sse2; tab->funcs_y.scale_uint16_x_2 = scale_uint16_x_2_y_bicubic_sse2; tab->funcs_y.scale_uint16_x_3 = scale_uint16_x_3_y_bicubic_sse2; tab->funcs_y.scale_uint16_x_4 = scale_uint16_x_4_y_bicubic_sse2; tab->funcs_y.bits_uint16 = 14; } void gavl_init_scale_funcs_bicubic_y_noclip_sse2(gavl_scale_funcs_t * tab, int src_advance, int dst_advance) { if((src_advance == 1) && (dst_advance == 1)) { tab->funcs_y.scale_uint8_x_1_noadvance = scale_uint8_x_1_y_bicubic_sse2; tab->funcs_y.bits_uint8_noadvance = 14; } else if((src_advance == 3) && (dst_advance == 3)) { tab->funcs_y.scale_uint8_x_3 = scale_uint8_x_3_y_bicubic_sse2; tab->funcs_y.bits_uint8_noadvance = 14; } else if((src_advance == 4) && (dst_advance == 4)) { tab->funcs_y.scale_uint8_x_3 = scale_uint8_x_4_y_bicubic_sse2; tab->funcs_y.scale_uint8_x_4 = scale_uint8_x_4_y_bicubic_sse2; tab->funcs_y.bits_uint8_noadvance = 14; } else if((src_advance == 2) && (dst_advance == 2)) { tab->funcs_y.scale_uint8_x_2 = scale_uint8_x_2_y_bicubic_sse2; tab->funcs_y.bits_uint8_noadvance = 14; } tab->funcs_y.scale_uint16_x_1 = scale_uint16_x_1_y_bicubic_noclip_sse2; tab->funcs_y.scale_uint16_x_2 = scale_uint16_x_2_y_bicubic_noclip_sse2; tab->funcs_y.scale_uint16_x_3 = scale_uint16_x_3_y_bicubic_noclip_sse2; tab->funcs_y.scale_uint16_x_4 = scale_uint16_x_4_y_bicubic_noclip_sse2; tab->funcs_y.bits_uint16 = 14; } #ifdef MMXEXT void gavl_init_scale_funcs_generic_y_mmxext(gavl_scale_funcs_t * tab, int src_advance, int dst_advance) #else void gavl_init_scale_funcs_generic_y_sse2(gavl_scale_funcs_t * tab, int src_advance, int dst_advance) #endif { if((src_advance == 1) && (dst_advance == 1)) { tab->funcs_y.scale_uint8_x_1_noadvance = scale_uint8_x_1_y_generic_sse2; tab->funcs_y.bits_uint8_noadvance = 14; } else if((src_advance == 3) && (dst_advance == 3)) { tab->funcs_y.scale_uint8_x_3 = scale_uint8_x_3_y_generic_sse2; tab->funcs_y.bits_uint8_noadvance = 14; } else if((src_advance == 2) && (dst_advance == 2)) { tab->funcs_y.scale_uint8_x_2 = scale_uint8_x_2_y_generic_sse2; tab->funcs_y.bits_uint8_noadvance = 14; } else if((src_advance == 4) && (dst_advance == 4)) { tab->funcs_y.scale_uint8_x_3 = scale_uint8_x_4_y_generic_sse2; tab->funcs_y.scale_uint8_x_4 = scale_uint8_x_4_y_generic_sse2; tab->funcs_y.bits_uint8_noadvance = 14; } tab->funcs_y.scale_uint16_x_1 = scale_uint16_x_1_y_generic_sse2; tab->funcs_y.scale_uint16_x_2 = scale_uint16_x_2_y_generic_sse2; tab->funcs_y.scale_uint16_x_3 = scale_uint16_x_3_y_generic_sse2; tab->funcs_y.scale_uint16_x_4 = scale_uint16_x_4_y_generic_sse2; tab->funcs_y.bits_uint16 = 14; } void gavl_init_scale_funcs_bilinear_y_sse2(gavl_scale_funcs_t * tab, int src_advance, int dst_advance) { } bplaum-gavl-b9385e3/gavl/sse3/000077500000000000000000000000001513252040200160655ustar00rootroot00000000000000bplaum-gavl-b9385e3/gavl/sse3/Makefile.am000066400000000000000000000001771513252040200201260ustar00rootroot00000000000000AM_CFLAGS = @LIBGAVL_CFLAGS@ noinst_LTLIBRARIES = libgavl_sse3.la libgavl_sse3_la_SOURCES = \ rgb_yuv_sse3.c \ scale_x_sse3.c bplaum-gavl-b9385e3/gavl/sse3/rgb_yuv_sse3.c000066400000000000000000000055511513252040200206510ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #define SSE3 #include #include #include #include #include //#define SSE_DEBUG #include "../sse/sse.h" #include "../mmx/mmx.h" #include #include "../c/colorspace_macros.h" static const sse_t rgb_2_y = { .sf = { r_float_to_y, g_float_to_y, b_float_to_y, 0.0 } }; static const sse_t rgb_2_u = { .sf = { r_float_to_u, g_float_to_u, b_float_to_u, 0.0 } }; static const sse_t rgb_2_v = { .sf = { r_float_to_v, g_float_to_v, b_float_to_v, 0.0 } }; #define RGB_FLOAT_TO_YUV_FLOAT_SSE \ /* Y */ \ movaps_r2r(xmm3, xmm4);\ mulps_r2r(xmm0, xmm4); /* xmm4: Ya Yb Yc 0.0 */\ /* U */ \ movaps_r2r(xmm3, xmm5); \ mulps_r2r(xmm1, xmm5); /* xmm5: Ua Ub Uc 0.0 */\ /* V */ \ mulps_r2r(xmm2, xmm3); /* xmm3: Va Vb Vc 0.0 */ #define INIT_RGB_YUV \ movaps_m2r(rgb_2_y, xmm0); \ movaps_m2r(rgb_2_u, xmm1); \ movaps_m2r(rgb_2_v, xmm2);\ pxor_r2r(xmm6, xmm6) #define OUTPUT_YUVA \ haddps_r2r(xmm5, xmm4); /* xmm4: Ya+Yb Yb Ua+Ub Uc */\ haddps_r2r(xmm6, xmm3); /* xmm5: Va+Vb Vc 0.0 0.0 */\ haddps_r2r(xmm3, xmm4); /* xmm4: y u v 0.0 */\ movaps_r2m(xmm4, *dst); /* rgba_float_to_yuva_float_c */ #define FUNC_NAME rgba_float_to_yuva_float_sse #define IN_TYPE float #define OUT_TYPE float #define IN_ADVANCE 4 #define OUT_ADVANCE 4 #define NUM_PIXELS 1 #define INIT INIT_RGB_YUV; #define CONVERT \ /* We can assume, that src and dst are always aligned */\ movaps_m2r(*src, xmm3);\ RGB_FLOAT_TO_YUV_FLOAT_SSE; \ OUTPUT_YUVA\ movss_m2r(*(src+3), xmm4);\ movss_r2m(xmm4, *(dst+3)); #include "../csp_packed_packed.h" void gavl_init_rgb_yuv_funcs_sse3(gavl_pixelformat_function_table_t * tab, const gavl_video_options_t * opt) { tab->rgba_float_to_yuva_float = rgba_float_to_yuva_float_sse; // tab->rgb_float_to_yuva_float = rgb_float_to_yuva_float_sse; } bplaum-gavl-b9385e3/gavl/sse3/scale_x_sse3.c000066400000000000000000000105631513252040200206110ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ /* SSE3 Optimized scaling (x) */ #include #include #include #include #include #include #include "../sse/sse.h" static void scale_float_x_1_x_bicubic_sse3(gavl_video_scale_context_t * ctx, int scanline, uint8_t * dest_start) { int i, imax; uint8_t * src, * dst, *src_start; movss_m2r(ctx->min_values_f[ctx->plane], xmm6); movss_m2r(ctx->max_values_f[ctx->plane], xmm7); imax = ctx->dst_size; src_start = ctx->src + scanline * ctx->src_stride; dst = dest_start; for(i = 0; i < imax; i++) { src = src_start + 4*ctx->table_h.pixels[i].index; /* Load factors */ movups_m2r(ctx->table_h.pixels[i].factor_f[0], xmm0); /* Load src1 */ movups_m2r(*src, xmm5); mulps_r2r(xmm0, xmm5); haddps_r2r(xmm5, xmm5); haddps_r2r(xmm5, xmm5); /* Clip */ minss_r2r(xmm7, xmm5); maxss_r2r(xmm6, xmm5); /* Store */ movss_r2m(xmm5, *dst); dst += 4; } } #if 0 static void scale_float_x_1_x_bicubic_noclip_sse3(gavl_video_scale_context_t * ctx, int scanline, uint8_t * dest_start) { int i, imax; uint8_t * src, * dst, *src_start; imax = ctx->dst_size; src_start = ctx->src + scanline * ctx->src_stride; dst = dest_start; for(i = 0; i < imax; i++) { src = src_start + 4*ctx->table_h.pixels[i].index; /* Load factors */ movups_m2r(ctx->table_h.pixels[i].factor_f[0], xmm0); /* Load src1 */ movups_m2r(*src, xmm5); mulps_r2r(xmm0, xmm5); haddps_r2r(xmm5, xmm5); haddps_r2r(xmm5, xmm5); /* Store */ movss_r2m(xmm5, *dst); dst += 4; } } #endif static void scale_float_x_1_x_generic_sse3(gavl_video_scale_context_t * ctx, int scanline, uint8_t * dest_start) { int i, imax, j, jmax; float * factors; uint8_t * src, * dst, *src_start; movss_m2r(ctx->min_values_f[ctx->plane], xmm6); movss_m2r(ctx->max_values_f[ctx->plane], xmm7); imax = ctx->dst_size; src_start = ctx->src + scanline * ctx->src_stride; dst = dest_start; for(i = 0; i < imax; i++) { src = src_start + 4*ctx->table_h.pixels[i].index; jmax = ctx->table_h.factors_per_pixel / 4; factors = ctx->table_h.pixels[i].factor_f; xorps_r2r(xmm5, xmm5); for(j = 0; j < jmax; j++) { /* Load factors */ movups_m2r(*factors, xmm0); /* Load src1 */ movups_m2r(*src, xmm4); mulps_r2r(xmm0, xmm4); factors += 4; src += 16; addps_r2r(xmm4, xmm5); } haddps_r2r(xmm5, xmm5); haddps_r2r(xmm5, xmm5); jmax = ctx->table_h.factors_per_pixel % 4; for(j = 0; j < jmax; j++) { /* Load factors */ movss_m2r(*factors, xmm0); /* Load src1 */ movss_m2r(*src, xmm4); mulss_r2r(xmm0, xmm4); addss_r2r(xmm4, xmm5); src += 4; factors++; } /* Clip */ minss_r2r(xmm7, xmm5); maxss_r2r(xmm6, xmm5); /* Store */ movss_r2m(xmm5, *dst); dst += 4; } } void gavl_init_scale_funcs_bicubic_x_sse3(gavl_scale_funcs_t * tab) { tab->funcs_x.scale_float_x_1 = scale_float_x_1_x_bicubic_sse3; } void gavl_init_scale_funcs_bicubic_x_noclip_sse3(gavl_scale_funcs_t * tab) { // tab->funcs_x.scale_float_x_1 = scale_float_x_1_x_bicubic_noclip_sse3; } void gavl_init_scale_funcs_generic_x_sse3(gavl_scale_funcs_t * tab) { tab->funcs_x.scale_float_x_1 = scale_float_x_1_x_generic_sse3; } bplaum-gavl-b9385e3/gavl/ssim.c000066400000000000000000000120121513252040200163230ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include #include "ssim_tab.h" /* Constants for suppressing instabilities for almost equal images */ static const double K1 = 0.01; static const double K2 = 0.03; /* * Note: SSIM calculation is optimized for *accuracy*, not for *speed* !! */ /* Range for iterating through a frame */ typedef struct { int start; int len; const double * w; int coeffs_index; } range_t; /* Wang, eq. 14 */ static double get_mu(range_t * ri, range_t * rj, const float * data, int stride) { int i, j; double ret = 0.0; for(i = 0; i < ri->len; i++) { for(j = 0; j < rj->len; j++) { ret += ri->w[i] * rj->w[j] * data[j]; } data += stride; } return ret; } /* Wang, eq. 15 */ static double get_sigma(range_t * ri, range_t * rj, const float * data, int stride, double mu) { int i, j; double ret = 0.0; double diff; for(i = 0; i < ri->len; i++) { for(j = 0; j < rj->len; j++) { diff = data[j] - mu; ret += ri->w[i] * rj->w[j] * diff * diff; } data += stride; } return sqrt(ret); } /* Wang, eq. 16 */ static double get_sigma_xy(range_t * ri, range_t * rj, const float * data_x, int stride_x, const float * data_y, int stride_y, double mu_x, double mu_y) { int i, j; double ret = 0.0; for(i = 0; i < ri->len; i++) { for(j = 0; j < rj->len; j++) { ret += ri->w[i]*rj->w[j]*(data_x[j]-mu_x)*(data_y[j]-mu_y); } data_x += stride_x; data_y += stride_y; } return ret; } static void setup_range(range_t * r, int center, int size) { int diff; r->start = center - SSIM_GAUSS_TAPS/2; r->len = SSIM_GAUSS_TAPS; r->coeffs_index = SSIM_GAUSS_TAPS/2; if(r->start < 0) { diff = -r->start; r->len -= diff; r->coeffs_index -= diff; r->start = 0; } else if(r->start + r->len > size) { diff = r->start + r->len - size; r->len -= diff; r->coeffs_index += diff; } r->w = ssim_gauss_coeffs[r->coeffs_index]; } int gavl_video_frame_ssim(const gavl_video_frame_t * x, const gavl_video_frame_t * y, gavl_video_frame_t * dst, const gavl_video_format_t * format) { int i, j; double sigma_x, sigma_y, mu_x, mu_y, sigma_xy; range_t ri, rj; float * dst_ptr; const float * data_x; const float * data_y; const float * data_start_x; const float * data_start_y; /* Dynamic range is 1.0 for our grayscale images */ const float C1 = K1 * K1; const float C2 = K2 * K2; int stride_x, stride_y; stride_x = x->strides[0] / sizeof(float); stride_y = y->strides[0] / sizeof(float); if(format->pixelformat != GAVL_GRAY_FLOAT) return 0; if((format->image_width < SSIM_GAUSS_TAPS) || (format->image_height < SSIM_GAUSS_TAPS)) return 0; for(i = 0; i < format->image_height; i++) { dst_ptr = (float*)(dst->planes[0] + i * dst->strides[0]); setup_range(&ri, i, format->image_height); data_start_x = (float*)(x->planes[0] + ri.start * x->strides[0]); data_start_y = (float*)(y->planes[0] + ri.start * y->strides[0]); for(j = 0; j < format->image_width; j++) { setup_range(&rj, j, format->image_width); data_x = data_start_x + rj.start; data_y = data_start_y + rj.start; mu_x = get_mu(&ri, &rj, data_x, stride_x); mu_y = get_mu(&ri, &rj, data_y, stride_y); sigma_x = get_sigma(&ri, &rj, data_x, stride_x, mu_x); sigma_y = get_sigma(&ri, &rj, data_y, stride_y, mu_y); sigma_xy = get_sigma_xy(&ri, &rj, data_x, stride_x, data_y, stride_y, mu_x, mu_y); /* Wang, eq. 13 */ *dst_ptr = (2.0*mu_x*mu_y+C1)*(2.0*sigma_xy+C2) / ((mu_x*mu_x+mu_y*mu_y+C1)*(sigma_x*sigma_x+sigma_y*sigma_y+C2)); dst_ptr++; } } return 1; } bplaum-gavl-b9385e3/gavl/ssim_tab.h000066400000000000000000000067261513252040200171750ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #define SSIM_GAUSS_TAPS 11 static const double ssim_gauss_coeffs[11][11] = { { 0.4202357997763944, 0.3364985229256178, 0.1727641021991933, 0.0568727309889028, 0.0120042460682087, 0.0016245980416830, 0.0000000000000000, 0.0000000000000000, 0.0000000000000000, 0.0000000000000000, 0.0000000000000000, }, { 0.2517762026320963, 0.3144304258986318, 0.2517762026320963, 0.1292662125963370, 0.0425535307472001, 0.0089818625776939, 0.0012155629159445, 0.0000000000000000, 0.0000000000000000, 0.0000000000000000, 0.0000000000000000, }, { 0.1144692112049792, 0.2229555793166152, 0.2784378230671698, 0.2229555793166152, 0.1144692112049792, 0.0376824616485813, 0.0079537158532737, 0.0010764183877863, 0.0000000000000000, 0.0000000000000000, 0.0000000000000000, }, { 0.0363140585306941, 0.1103123695693192, 0.2148591573595669, 0.2683266156631495, 0.2148591573595669, 0.1103123695693192, 0.0363140585306941, 0.0076648841502414, 0.0010373292674487, 0.0000000000000000, 0.0000000000000000, }, { 0.0076065805912302, 0.0360378327178857, 0.1094732696399806, 0.2132248138633475, 0.2662855676363358, 0.2132248138633475, 0.1094732696399806, 0.0360378327178857, 0.0076065805912302, 0.0010294387387763, 0.0000000000000000, }, { 0.0010283800844791, 0.0075987581352392, 0.0360007721284308, 0.1093606895097000, 0.2130055377112537, 0.2660117248617944, 0.2130055377112537, 0.1093606895097000, 0.0360007721284308, 0.0075987581352392, 0.0010283800844791, }, { 0.0010294387387763, 0.0076065805912302, 0.0360378327178857, 0.1094732696399806, 0.2132248138633475, 0.2662855676363358, 0.2132248138633475, 0.1094732696399806, 0.0360378327178857, 0.0076065805912302, 0.0000000000000000, }, { 0.0010373292674487, 0.0076648841502414, 0.0363140585306941, 0.1103123695693192, 0.2148591573595669, 0.2683266156631495, 0.2148591573595669, 0.1103123695693192, 0.0363140585306941, 0.0000000000000000, 0.0000000000000000, }, { 0.0010764183877863, 0.0079537158532737, 0.0376824616485813, 0.1144692112049792, 0.2229555793166152, 0.2784378230671698, 0.2229555793166152, 0.1144692112049792, 0.0000000000000000, 0.0000000000000000, 0.0000000000000000, }, { 0.0012155629159445, 0.0089818625776939, 0.0425535307472001, 0.1292662125963370, 0.2517762026320963, 0.3144304258986318, 0.2517762026320963, 0.0000000000000000, 0.0000000000000000, 0.0000000000000000, 0.0000000000000000, }, { 0.0016245980416830, 0.0120042460682087, 0.0568727309889028, 0.1727641021991933, 0.3364985229256178, 0.4202357997763944, 0.0000000000000000, 0.0000000000000000, 0.0000000000000000, 0.0000000000000000, 0.0000000000000000, }, }; bplaum-gavl-b9385e3/gavl/state.c000066400000000000000000000053171513252040200165020ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include void gavl_msg_set_state(gavl_msg_t * msg, int id, int last, const char * ctx, const char * var, const gavl_value_t * val) { gavl_msg_set_id_ns(msg, id, GAVL_MSG_NS_STATE); gavl_msg_set_arg_int(msg, 0, last); gavl_msg_set_arg_string(msg, 1, ctx); gavl_msg_set_arg_string(msg, 2, var); gavl_msg_set_arg(msg, 3, val); } void gavl_msg_set_state_nocopy(gavl_msg_t * msg, int id, int last, const char * ctx, const char * var, gavl_value_t * val) { gavl_msg_set_id_ns(msg, id, GAVL_MSG_NS_STATE); gavl_msg_set_arg_int(msg, 0, last); gavl_msg_set_arg_string(msg, 1, ctx); gavl_msg_set_arg_string(msg, 2, var); gavl_msg_set_arg_nocopy(msg, 3, val); } void gavl_msg_get_state(const gavl_msg_t * msg, int * last_p, const char ** ctx_p, const char ** var_p, gavl_value_t * val_p, gavl_dictionary_t * dict) { const char * ctx; const char * var; const gavl_value_t * val; int last; last = gavl_msg_get_arg_int(msg, 0); ctx = gavl_msg_get_arg_string_c(msg, 1); var = gavl_msg_get_arg_string_c(msg, 2); if(last_p) *last_p = last; if(ctx_p) *ctx_p = ctx; if(var_p) *var_p = var; val = gavl_msg_get_arg_c(msg, 3); if(val_p) gavl_value_copy(val_p, val); if(dict) { gavl_dictionary_t * child; child = gavl_dictionary_get_dictionary_create(dict, ctx); gavl_dictionary_set(child, var, val); } } bplaum-gavl-b9385e3/gavl/stats.c000066400000000000000000000213011513252040200165070ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include #include #include #include #include static void stats_to_dict(const gavl_stream_stats_t * s, gavl_dictionary_t * dict) { gavl_dictionary_set_int(dict, GAVL_META_STREAM_STATS_PACKET_SIZE_MIN, s->size_min); gavl_dictionary_set_int(dict, GAVL_META_STREAM_STATS_PACKET_SIZE_MAX, s->size_max); gavl_dictionary_set_long(dict, GAVL_META_STREAM_STATS_PACKET_DURATION_MIN, s->duration_min); gavl_dictionary_set_long(dict, GAVL_META_STREAM_STATS_PACKET_DURATION_MAX, s->duration_max); gavl_dictionary_set_long(dict, GAVL_META_STREAM_STATS_PTS_START, s->pts_start); gavl_dictionary_set_long(dict, GAVL_META_STREAM_STATS_PTS_END, s->pts_end); gavl_dictionary_set_long(dict, GAVL_META_STREAM_STATS_NUM_PACKETS, s->total_packets); gavl_dictionary_set_long(dict, GAVL_META_STREAM_STATS_NUM_BYTES, s->total_bytes); } static int stats_from_dict(gavl_stream_stats_t * s, const gavl_dictionary_t * dict) { memset(s, 0, sizeof(*s)); return gavl_dictionary_get_int(dict, GAVL_META_STREAM_STATS_PACKET_SIZE_MIN, &s->size_min) && gavl_dictionary_get_int(dict, GAVL_META_STREAM_STATS_PACKET_SIZE_MAX, &s->size_max) && gavl_dictionary_get_long(dict, GAVL_META_STREAM_STATS_PACKET_DURATION_MIN, &s->duration_min) && gavl_dictionary_get_long(dict, GAVL_META_STREAM_STATS_PACKET_DURATION_MAX, &s->duration_max) && gavl_dictionary_get_long(dict, GAVL_META_STREAM_STATS_PTS_START, &s->pts_start) && gavl_dictionary_get_long(dict, GAVL_META_STREAM_STATS_PTS_END, &s->pts_end) && gavl_dictionary_get_long(dict, GAVL_META_STREAM_STATS_NUM_PACKETS, &s->total_packets) && gavl_dictionary_get_long(dict, GAVL_META_STREAM_STATS_NUM_BYTES, &s->total_bytes); } void gavl_stream_stats_dump(const gavl_stream_stats_t * stats, int indent) { gavl_dictionary_t dict; gavl_dictionary_init(&dict); stats_to_dict(stats, &dict); gavl_diprintf(indent, "Stats\n"); gavl_dictionary_dump(&dict, indent + 2); gavl_dictionary_free(&dict); } int gavl_stream_get_stats(const gavl_dictionary_t * s, gavl_stream_stats_t * stats) { const gavl_dictionary_t * stats_dict; if((stats_dict = gavl_dictionary_get_dictionary(s, GAVL_META_STREAM_STATS)) && stats_from_dict(stats, stats_dict)) return 1; else return 0; } void gavl_stream_set_stats(gavl_dictionary_t * s, const gavl_stream_stats_t * stats) { gavl_value_t stats_val; gavl_dictionary_t * stats_dict; gavl_value_init(&stats_val); stats_dict = gavl_value_set_dictionary(&stats_val); stats_to_dict(stats, stats_dict); gavl_dictionary_set_nocopy(s, GAVL_META_STREAM_STATS, &stats_val); } void gavl_stream_stats_init(gavl_stream_stats_t * f) { memset(f, 0, sizeof(*f)); f->duration_min = GAVL_TIME_UNDEFINED; f->duration_max = GAVL_TIME_UNDEFINED; f->pts_start = GAVL_TIME_UNDEFINED; f->pts_end = GAVL_TIME_UNDEFINED; f->size_min = -1; f->size_max = -1; } void gavl_stream_stats_update_end(gavl_stream_stats_t * f, const gavl_packet_t * p) { if((p->pts != GAVL_TIME_UNDEFINED) && !(p->flags & GAVL_PACKET_NOOUTPUT)) { if(p->duration != GAVL_TIME_UNDEFINED) { if(f->pts_end < p->pts + p->duration) f->pts_end = p->pts + p->duration; } else { if(f->pts_end < p->pts) f->pts_end = p->pts; } } } void gavl_stream_stats_update(gavl_stream_stats_t * f, const gavl_packet_t * p) { gavl_stream_stats_update_params(f, p->pts, p->duration, p->buf.len, p->flags); } void gavl_stream_stats_update_params(gavl_stream_stats_t * f, int64_t pts, int64_t duration, int data_len, int flags) { if(f->pts_start == GAVL_TIME_UNDEFINED) f->pts_start = pts; if((duration > 0) && !(flags & GAVL_PACKET_NOOUTPUT)) { if(f->pts_end < pts + duration) f->pts_end = pts + duration; if((f->duration_min == GAVL_TIME_UNDEFINED) || (f->duration_min > duration)) f->duration_min = duration; if((f->duration_max == GAVL_TIME_UNDEFINED) || (f->duration_max < duration)) f->duration_max = duration; } if(data_len > 0) { if((f->size_min < 0) || (f->size_min > data_len)) f->size_min = data_len; if((f->size_max < 0) || (f->size_max < data_len)) f->size_max = data_len; } if(!(flags & GAVL_PACKET_NOOUTPUT)) f->total_packets++; if(data_len > 0) f->total_bytes += data_len; } void gavl_stream_stats_apply_generic(gavl_stream_stats_t * f, gavl_compression_info_t * ci, gavl_dictionary_t * m) { if(f->pts_end > 0) { int64_t duration = f->pts_end; if((f->pts_start != GAVL_TIME_UNDEFINED) && (f->pts_start != 0)) duration -= f->pts_start; gavl_dictionary_set_long(m, GAVL_META_STREAM_DURATION, duration); } } static void calc_bitrate(gavl_stream_stats_t * f, int timescale, gavl_compression_info_t * ci, gavl_dictionary_t * m) { if((!ci || (ci->bitrate <= 0)) && (f->total_bytes > 0) && (f->pts_end > f->pts_start)) { double avg_rate = (double)(f->total_bytes) / (gavl_time_to_seconds(gavl_time_unscale(timescale, f->pts_end-f->pts_start)) * 125.0); gavl_dictionary_set_float(m, GAVL_META_AVG_BITRATE, avg_rate); } } void gavl_stream_stats_apply_audio(gavl_stream_stats_t * f, const gavl_audio_format_t * fmt, gavl_compression_info_t * ci, gavl_dictionary_t * m) { if(fmt) calc_bitrate(f, fmt->samplerate, ci, m); gavl_stream_stats_apply_generic(f, ci, m); } void gavl_stream_stats_apply_video(gavl_stream_stats_t * f, gavl_video_format_t * fmt, gavl_compression_info_t * ci, gavl_dictionary_t * m) { if(fmt) calc_bitrate(f, fmt->timescale, ci, m); gavl_stream_stats_apply_generic(f, ci, m); if(fmt && (fmt->framerate_mode == GAVL_FRAMERATE_VARIABLE)) { if((f->duration_min > 0) && (f->duration_min == f->duration_max)) { /* Detect constant framerate */ fmt->framerate_mode = GAVL_FRAMERATE_CONSTANT; fmt->frame_duration = f->duration_min; } else if((f->total_packets > 0) && (f->pts_end > f->pts_start)) { double avg_rate = (double)f->total_packets / gavl_time_to_seconds(gavl_time_unscale(fmt->timescale, f->pts_end-f->pts_start)); gavl_dictionary_set_float(m, GAVL_META_AVG_FRAMERATE, avg_rate); } } } void gavl_stream_stats_apply_subtitle(gavl_stream_stats_t * f, gavl_dictionary_t * m) { gavl_stream_stats_apply_generic(f, NULL, m); } void gavl_track_apply_footer(gavl_dictionary_t * track, const gavl_dictionary_t * footer) { int i; int num_streams; gavl_dictionary_t * header_stream; const gavl_dictionary_t * footer_stream; num_streams = gavl_track_get_num_streams_all(track); if(gavl_track_get_num_streams_all(footer) != num_streams) { fprintf(stderr, "gavl_track_apply_footer: Stream counts don't match\n"); return; } for(i = 0; i < num_streams; i++) { header_stream = gavl_track_get_stream_all_nc(track, i); footer_stream = gavl_track_get_stream_all(footer, i); /* This just adds the stats member to the header */ gavl_dictionary_merge2(header_stream, footer_stream); } } bplaum-gavl-b9385e3/gavl/threadpool.c000066400000000000000000000072001513252040200175140ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include #include #include //#include //#include //#include #include typedef struct { pthread_t t; sem_t run_sem; sem_t done_sem; pthread_mutex_t stop_mutex; int do_stop; void (*func)(void*, int, int); void * data; int start; int len; } thread_t; struct gavl_thread_pool_s { int num_threads; thread_t * threads; }; static void * thread_func(void * data) { thread_t * t = data; int do_stop; while(1) { // fprintf(stderr, "thread_func %p\n", t->func); sem_wait(&t->run_sem); pthread_mutex_lock(&t->stop_mutex); do_stop = t->do_stop; pthread_mutex_unlock(&t->stop_mutex); if(do_stop) break; t->func(t->data, t->start, t->len); sem_post(&t->done_sem); } return NULL; } gavl_thread_pool_t * gavl_thread_pool_create(int num_threads) { int i; gavl_thread_pool_t * ret = calloc(1, sizeof(*ret)); if(num_threads < 1) num_threads = gavl_num_cpus(); ret->num_threads = num_threads; ret->threads = calloc(num_threads, sizeof(*ret->threads)); for(i = 0; i < ret->num_threads; i++) { pthread_mutex_init(&ret->threads[i].stop_mutex, NULL); sem_init(&ret->threads[i].run_sem, 0, 0); sem_init(&ret->threads[i].done_sem, 0, 0); pthread_create(&ret->threads[i].t, NULL, thread_func, &ret->threads[i]); } return ret; } int gavl_thread_pool_get_num_threads(gavl_thread_pool_t * p) { return p->num_threads; } void gavl_thread_pool_destroy(gavl_thread_pool_t * p) { int i; for(i = 0; i < p->num_threads; i++) { pthread_mutex_lock(&p->threads[i].stop_mutex); p->threads[i].do_stop = 1; pthread_mutex_unlock(&p->threads[i].stop_mutex); sem_post(&p->threads[i].run_sem); pthread_join(p->threads[i].t, NULL); pthread_mutex_destroy(&p->threads[i].stop_mutex); sem_destroy(&p->threads[i].run_sem); sem_destroy(&p->threads[i].done_sem); } free(p->threads); free(p); } void gavl_thread_pool_run(void (*func)(void*,int start, int len), void * gavl_data, int start, int len, void * client_data, int thread) { gavl_thread_pool_t * p = client_data; p->threads[thread].func = func; p->threads[thread].data = gavl_data; p->threads[thread].start = start; p->threads[thread].len = len; sem_post(&p->threads[thread].run_sem); } void gavl_thread_pool_stop(void * client_data, int thread) { gavl_thread_pool_t * p = client_data; sem_wait(&p->threads[thread].done_sem); } bplaum-gavl-b9385e3/gavl/time.c000066400000000000000000000232331513252040200163150ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include #include #include #include #include #include #include #include #ifdef _WIN32 #include #endif #ifdef HAVE_CLOCK_MONOTONIC #include #include #endif #include #include /* Sleep for a specified time */ #ifdef HAVE_CLOCK_MONOTONIC void gavl_time_delay(gavl_time_t * t) { struct timespec tm; struct timespec rem; tm.tv_sec = *t / 1000000; tm.tv_nsec = (*t % 1000000)*1000; while(clock_nanosleep(CLOCK_MONOTONIC, 0, &tm, &rem)) { if(errno == EINTR) { tm.tv_sec = rem.tv_sec; tm.tv_nsec = rem.tv_nsec; } else break; } } #else void gavl_time_delay(gavl_time_t * t) { struct timeval tv; tv.tv_sec = *t / 1000000; tv.tv_usec = *t % 1000000; select(0, NULL, NULL, NULL, &tv); } #endif /* * Pretty print a time in the format: * hhh:mm:ss */ GAVL_PUBLIC void gavl_time_prettyprint_ms(gavl_time_t t, char str[GAVL_TIME_STRING_LEN_MS]) { int hours, minutes, seconds, milliseconds; char * pos = str; if(t == GAVL_TIME_UNDEFINED) { strcpy(str, "-:--.---"); return; } if(t < 0) { t = -t; *(pos++) = '-'; } milliseconds = (t/1000) % 1000; t /= GAVL_TIME_SCALE; seconds = t % 60; t /= 60; minutes = t % 60; t /= 60; hours = t % 1000; if(hours) sprintf(pos, "%d:%02d:%02d.%03d", hours, minutes, seconds, milliseconds); else sprintf(pos, "%02d:%02d.%03d", minutes, seconds, milliseconds); } void gavl_time_prettyprint_ms_full(gavl_time_t t, char str[GAVL_TIME_STRING_LEN_MS]) { int hours, minutes, seconds, milliseconds; char * pos = str; if(t == GAVL_TIME_UNDEFINED) { strcpy(str, "-:--.---"); return; } if(t < 0) { t = -t; *(pos++) = '-'; } milliseconds = (t/1000) % 1000; t /= GAVL_TIME_SCALE; seconds = t % 60; t /= 60; minutes = t % 60; t /= 60; hours = t % 1000; sprintf(pos, "%d:%02d:%02d.%03d", hours, minutes, seconds, milliseconds); } void gavl_time_prettyprint(gavl_time_t t, char str[GAVL_TIME_STRING_LEN]) { int seconds; int minutes; int hours; char * pos = str; if(t == GAVL_TIME_UNDEFINED) { strcpy(str, "-:--"); return; } if(t < 0) { t = -t; *(pos++) = '-'; } t /= GAVL_TIME_SCALE; seconds = t % 60; t /= 60; minutes = t % 60; t /= 60; hours = t % 1000; /* Print hours */ if(hours) sprintf(pos, "%d:%02d:%02d", hours, minutes, seconds); else sprintf(pos, "%d:%02d", minutes, seconds); } /* Scan seconds: format is hhh:mm:ss with hh: hours, mm: minutes, ss: seconds. Seconds can be a fractional value (i.e. with decimal point) */ int gavl_time_parse(const char * str, gavl_time_t * ret) { double seconds_f; gavl_time_t seconds_t; int i_tmp; const char * start; const char * end_c; char * end; *ret = 0; start = str; if(!isdigit(*start)) return 0; while(1) { end_c = start; while(isdigit(*end_c)) end_c++; if(*end_c == '.') { *ret *= 60; /* Floating point seconds */ seconds_f = strtod(start, &end); seconds_t = gavl_seconds_to_time(seconds_f); *ret *= GAVL_TIME_SCALE; *ret += seconds_t; end_c = end; return end_c - str; } else if(*end_c != ':') { /* Integer seconds */ i_tmp = strtol(start, &end, 10); *ret *= 60; *ret += i_tmp; *ret *= GAVL_TIME_SCALE; end_c = end; return end_c - str; } else { i_tmp = strtol(start, &end, 10); *ret *= 60; *ret += i_tmp; end++; // ':' end_c = end; } if(*end_c == '\0') break; start = end_c; } return 0; } /* Time scaling functions */ /* From the Linux kernel (drivers/scsi/sg.c): */ /* * Suppose you want to calculate the formula muldiv(x,m,d)=int(x * m / d) * Then when using 32 bit integers x * m may overflow during the calculation. * Replacing muldiv(x) by muldiv(x)=((x % d) * m) / d + int(x / d) * m * calculates the same, but prevents the overflow when both m and d * are "small" numbers (like HZ and USER_HZ). * Of course an overflow is inavoidable if the result of muldiv doesn't fit * in 32 bits. */ /* In our case, X is 64 bit while MUL and DIV are 32 bit, so we can use this here */ #define MULDIV(X,MUL,DIV) ((((X % DIV) * (int64_t)MUL) / DIV) + ((X / DIV) * (int64_t)MUL)) // #define gavl_samples_to_time(rate, samples) (((samples)*GAVL_TIME_SCALE)/(rate)) gavl_time_t gavl_samples_to_time(int samplerate, int64_t samples) { return MULDIV(samples, GAVL_TIME_SCALE, samplerate); } int64_t gavl_time_to_samples(int samplerate, gavl_time_t time) { return MULDIV(time, samplerate, GAVL_TIME_SCALE); } gavl_time_t gavl_time_unscale(int scale, int64_t time) { return MULDIV(time, GAVL_TIME_SCALE, scale); } int64_t gavl_time_scale(int scale, gavl_time_t time) { return MULDIV(time, scale, GAVL_TIME_SCALE); } int64_t gavl_time_rescale(int scale1, int scale2, int64_t time) { if(scale1 == scale2) return time; return MULDIV(time, scale2, scale1); } int64_t gavl_time_to_frames(int rate_num, int rate_den, gavl_time_t time) { gavl_int128_t n, result; /* t * rate_num / (GAVL_TIME_SCALE * rate_den) */ /* We know, that GAVL_TIME_SCALE * rate_den fits into 64 bit :) */ gavl_int128_mult(time, rate_num, &n); gavl_int128_div(&n, (int64_t)rate_den * GAVL_TIME_SCALE, &result); /* Assuming the result is smaller than 2^64 bit!! */ return result.isneg ? -result.lo : result.lo; } gavl_time_t gavl_frames_to_time(int rate_num, int rate_den, int64_t frames) { gavl_int128_t n, result; gavl_int128_mult(frames, (int64_t)rate_den * GAVL_TIME_SCALE, &n); gavl_int128_div(&n, rate_num, &result); /* Assuming the result is smaller than 2^64 bit!! */ return result.isneg ? -result.lo : result.lo; } // ((gavl_time_t)((GAVL_TIME_SCALE*((int64_t)frames)*((int64_t)rate_den))/((int64_t)rate_num))) /* * Parse an iso-8601 formatted time string. * If you divide the resuly by GAVL_TIME_SCALE, it will be a time_t */ int gavl_time_parse_iso8601(const char * str, gavl_time_t * ret) { int year; int month; int day; int hour; int minute; double seconds_f; int sec; int microseconds; time_t t; int tz_hour = 0; int tz_minute = 0; struct tm tm; // "2014-11-12T19:12:14.505Z" if(sscanf(str, "%d-%d-%dT%d:%d:%lfZ", &year, &month, &day, &hour, &minute, &seconds_f) < 6) return 0; // "2014-11-12T12:12:14.505-5:00" if(sscanf(str, "%d-%d-%dT%d:%d:%lf%d:%d", &year, &month, &day, &hour, &minute, &seconds_f, &tz_hour, &tz_minute) < 6) return 0; if(tz_hour < 0) tz_minute = -tz_minute; microseconds = (int)(seconds_f * GAVL_TIME_SCALE) % GAVL_TIME_SCALE; sec = (int)seconds_f; tm.tm_year = year - 1900; tm.tm_mon = month - 1; tm.tm_mday = day; tm.tm_hour = hour; tm.tm_min = minute; tm.tm_sec = sec; tm.tm_isdst = 0; t = timegm(&tm); t -= (tz_hour * 60 + tz_minute) * 60; *ret = t; *ret *= GAVL_TIME_SCALE; *ret += microseconds; // fprintf(stderr, "gavl_time_parse_iso8601 %s %"PRId64"\n", str, *ret); return 1; } void gavl_time_prettyprint_absolute(gavl_time_t gavl_time, char * str, int local) { struct tm tm; time_t t = gavl_time / GAVL_TIME_SCALE; if(local) localtime_r(&t, &tm); else gmtime_r(&t, &tm); /* Use the division remainder to silence gcc warnings */ snprintf(str, GAVL_TIME_STRING_LEN_ABSOLUTE, "%04d-%02d-%02d %02d:%02d:%02d", (tm.tm_year + 1900) % 10000, (tm.tm_mon + 1)%100, tm.tm_mday%100, tm.tm_hour % 100, tm.tm_min % 100, tm.tm_sec % 100); } void gavl_time_prettyprint_local(gavl_time_t gavl_time, char str[GAVL_TIME_STRING_LEN]) { struct tm tm; time_t t = gavl_time / GAVL_TIME_SCALE; localtime_r(&t, &tm); snprintf(str, GAVL_TIME_STRING_LEN, "%d:%02d:%02d", tm.tm_hour % 100, tm.tm_min, tm.tm_sec); } void gavl_time_prettyprint_absolute_full(gavl_time_t gavl_time, char * str, int local) { struct tm tm; time_t t = gavl_time / GAVL_TIME_SCALE; if(local) localtime_r(&t, &tm); else gmtime_r(&t, &tm); snprintf(str, GAVL_TIME_STRING_LEN_ABSOLUTE, "%04u-%02u-%02u %02u:%02u:%02u.%06u", (tm.tm_year + 1900)%10000, (tm.tm_mon + 1)%100, tm.tm_mday%100, tm.tm_hour%100, tm.tm_min%100, tm.tm_sec%100, (int)(gavl_time % GAVL_TIME_SCALE)); } bplaum-gavl-b9385e3/gavl/timecode.c000066400000000000000000000234341513252040200171530ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include #include #include #define BITMASK(nbits,shift) (((1LL<> TC_HOUR_SHIFT; if(minutes) *minutes = (tc & TC_MINUTE_MASK) >> TC_MINUTE_SHIFT; if(seconds) *seconds = (tc & TC_SECOND_MASK) >> TC_SECOND_SHIFT; if(frames) *frames = (tc & TC_FRAME_MASK) >> TC_FRAME_SHIFT; } /** \brief Extract the date part of the timecode * \param tc A timecode * \param year If non NULL, returns the year * \param month If non NULL, returns the month * \param day If non NULL, returns the day */ void gavl_timecode_to_ymd(gavl_timecode_t tc, int * year, int * month, int * day) { if(year) *year = (tc & TC_YEAR_MASK) >> TC_YEAR_SHIFT; if(month) *month = (tc & TC_MONTH_MASK) >> TC_MONTH_SHIFT; if(day) *day = (tc & TC_DAY_MASK) >> TC_DAY_SHIFT; } /** \brief Set the time part of the timecode * \param tc A timecode * \param hours The hours * \param minutes The minutes * \param seconds The seconds * \param frames The frames */ void gavl_timecode_from_hmsf(gavl_timecode_t * tc, int hours, int minutes, int seconds, int frames) { *tc &= ~(TC_HOUR_MASK|TC_MINUTE_MASK|TC_SECOND_MASK|TC_FRAME_MASK|GAVL_TIMECODE_INVALID_MASK); *tc |= (((uint64_t)hours) << TC_HOUR_SHIFT) & TC_HOUR_MASK; *tc |= (((uint64_t)minutes) << TC_MINUTE_SHIFT) & TC_MINUTE_MASK; *tc |= (((uint64_t)seconds) << TC_SECOND_SHIFT) & TC_SECOND_MASK; *tc |= (((uint64_t)frames) << TC_FRAME_SHIFT) & TC_FRAME_MASK; } /** \brief Set the date part of the timecode * \param tc A timecode * \param year The year * \param month The month * \param day The day */ void gavl_timecode_from_ymd(gavl_timecode_t * tc, int year, int month, int day) { *tc &= ~(TC_YEAR_MASK|TC_MONTH_MASK|TC_DAY_MASK|GAVL_TIMECODE_INVALID_MASK); *tc |= (((uint64_t)year) << TC_YEAR_SHIFT) & TC_YEAR_MASK; *tc |= (((uint64_t)month) << TC_MONTH_SHIFT) & TC_MONTH_MASK; *tc |= (((uint64_t)day) << TC_DAY_SHIFT) & TC_DAY_MASK; } /** \brief Get the frame count from the timecode * \param tf The timecode format * \param vf The video format * \param tc A timecode * \returns The frame count */ int64_t gavl_timecode_to_framecount(const gavl_timecode_format_t * tf, gavl_timecode_t tc) { int hours, minutes, seconds, frames, sign; int year, month, day; int64_t total_hours; sign = (tc & GAVL_TIMECODE_SIGN_MASK) ? -1 : 1; gavl_timecode_to_hmsf(tc, &hours, &minutes, &seconds, &frames); gavl_timecode_to_ymd(tc, &year, &month, &day); total_hours = hours; if(month && day) { struct tm tm; tm.tm_sec = 0; tm.tm_min = 0; tm.tm_hour = 0; tm.tm_mday = day - 1; tm.tm_mon = month - 1; tm.tm_year = year - 1900; total_hours += mktime(&tm) / 3600; } if(tf->flags & GAVL_TIMECODE_DROP_FRAME) { uint64_t total_minutes; /* http://www.andrewduncan.ws/Timecodes/Timecodes.html totalMinutes = 60 * hours + minutes frameNumber = 108000 * hours + 1800 * minutes + 30 * seconds + frames - 2 * (totalMinutes - totalMinutes div 10) where div means integer division with no remainder. */ total_minutes = 60 * total_hours + minutes; return sign * (1800 * total_minutes + 30 * seconds + frames - 2 * (total_minutes - total_minutes / 10)); } else { return sign * ((int64_t)frames + tf->int_framerate * ((int64_t)(seconds) + 60 * ((int64_t)(minutes) + 60 * (total_hours)))); } } /** \brief Get a timecode from the frame count * \param tf The timecode format * \param vf The video format * \param tc A timecode * \param fc The frame count */ gavl_timecode_t gavl_timecode_from_framecount(const gavl_timecode_format_t * tf, int64_t fc) { int hours, minutes, seconds, frames; // int frames; struct tm tm; time_t ti; gavl_timecode_t ret; ret = 0; if(fc < 0) { fc = -fc; ret |= GAVL_TIMECODE_SIGN_MASK; } if(tf->flags & GAVL_TIMECODE_DROP_FRAME) { int64_t D, M; D = fc / 17982; M = fc % 17982; fc += 18*D + 2*((M - 2) / 1798); } frames = fc % tf->int_framerate; fc /= tf->int_framerate; if(fc < 24*3600) { seconds = fc % 60; fc /= 60; minutes = fc % 60; fc /= 60; hours = fc % 24; gavl_timecode_from_hmsf(&ret, hours, minutes, seconds, frames); } else { ti = fc; gavl_localtime_r(&ti, &tm); tm.tm_mon++; tm.tm_mday++; tm.tm_year += 1900; gavl_timecode_from_ymd(&ret, tm.tm_year, tm.tm_mon, tm.tm_mday); gavl_timecode_from_hmsf(&ret, tm.tm_hour, tm.tm_min, tm.tm_sec, frames); } return ret; } /** \brief Dump a timecode to stderr * \param tf The timecode format * \param tc A timecode * * This is used mainly for debugging */ void gavl_timecode_dump(const gavl_timecode_format_t * tf, gavl_timecode_t tc) { char str[GAVL_TIMECODE_STRING_LEN]; gavl_timecode_prettyprint(tf, tc, str); fprintf(stderr, "%s", str); } /* -YYYY-MM-DD-HH:MM:SS.FFFF */ void gavl_timecode_prettyprint(const gavl_timecode_format_t * tf, gavl_timecode_t tc, char str[GAVL_TIMECODE_STRING_LEN]) { char * ptr; int year, month, day, hours, minutes, seconds, frames; if(tc == GAVL_TIMECODE_UNDEFINED) { sprintf(str, "--:--:--:--"); return; } gavl_timecode_to_hmsf(tc, &hours, &minutes, &seconds, &frames); gavl_timecode_to_ymd(tc, &year, &month, &day); ptr = str; if(tc & GAVL_TIMECODE_SIGN_MASK) { sprintf(ptr, "-"); ptr++; } if(month && day) { sprintf(ptr, "%04d-%02d-%02d ", year, month, day); ptr += strlen(ptr); } if(!tf || (tf->int_framerate < 100)) sprintf(ptr, "%02d:%02d:%02d:%02d", hours, minutes, seconds, frames); else if(tf->int_framerate < 1000) sprintf(ptr, "%02d:%02d:%02d:%03d", hours, minutes, seconds, frames); else sprintf(ptr, "%02d:%02d:%02d:%04d", hours, minutes, seconds, frames); } void gavl_timecode_prettyprint_short(gavl_timecode_t tc, char str[GAVL_TIMECODE_STRING_LEN_SHORT]) { char * ptr; int hours, minutes, seconds, frames; ptr = str; if(tc == GAVL_TIMECODE_UNDEFINED) { sprintf(ptr, "--:--:--:--"); return; } gavl_timecode_to_hmsf(tc, &hours, &minutes, &seconds, &frames); if(tc & GAVL_TIMECODE_SIGN_MASK) { sprintf(ptr, "-"); ptr++; } sprintf(ptr, "%02d:%02d:%02d:%02d", hours % 100, minutes, seconds, frames); } GAVL_PUBLIC void gavl_timecode_format_copy(gavl_timecode_format_t * dst, const gavl_timecode_format_t * src) { memcpy(dst, src, sizeof(*dst)); } bplaum-gavl-b9385e3/gavl/timer.c000066400000000000000000000111751513252040200165010ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include #include #include #ifdef HAVE_SYS_TIMES_H #include #endif #include #include #ifdef HAVE_CLOCK_MONOTONIC /* High precision version */ static void get_time(gavl_time_t * ret) { struct timespec time; clock_gettime(CLOCK_MONOTONIC, &time); *ret = (int64_t)(time.tv_sec)*1000000LL + (time.tv_nsec)/1000; } #else static void get_time(gavl_time_t * ret) { struct timeval time; gettimeofday(&time, NULL); *ret = (int64_t)(time.tv_sec)*1000000LL + time.tv_usec; } #endif gavl_time_t gavl_time_get_monotonic(void) { gavl_time_t t; get_time(&t); return t; } gavl_time_t gavl_time_get_realtime(void) { struct timeval t; gettimeofday(&t, NULL); return (int64_t)(t.tv_sec)*1000000LL + t.tv_usec; } struct gavl_timer_s { int64_t start_time_real; int64_t start_time; int is_running; }; gavl_timer_t * gavl_timer_create() { gavl_timer_t * ret = calloc(1, sizeof(*ret)); return ret; } void gavl_timer_destroy(gavl_timer_t * t) { free(t); } void gavl_timer_start(gavl_timer_t * t) { get_time(&t->start_time_real); t->is_running = 1; } int gavl_timer_is_running(gavl_timer_t * t) { return t->is_running; } void gavl_timer_stop(gavl_timer_t * t) { t->start_time = gavl_timer_get(t); t->is_running = 0; } gavl_time_t gavl_timer_get(gavl_timer_t * t) { gavl_time_t ret; if(t->is_running) { get_time(&ret); /* Time since gavl_timer_start() was called */ ret -= t->start_time_real; /* Nominal time when gavl_timer_start() was called */ ret += t->start_time; // fprintf(stderr, "gavl_timer_get %"PRId64"\n", ret); return ret; } else return t->start_time; } void gavl_timer_set(gavl_timer_t * t, gavl_time_t v) { int was_running = t->is_running; // fprintf(stderr, "gavl_timer_set %"PRId64"\n", v); if(was_running) gavl_timer_stop(t); t->start_time = v; if(was_running) gavl_timer_start(t); } /* */ #ifdef HAVE_CLOCK_GETTIME uint64_t gavl_benchmark_get_time(int config_flags) { struct timespec ts; #if defined(CLOCK_PROCESS_CPUTIME_ID) clock_gettime(CLOCK_PROCESS_CPUTIME_ID, &ts); #elif defined(CLOCK_PROF) clock_gettime(CLOCK_PROF, &ts); #else clockgettime(CLOCK_REALTIME, &ts); #endif return (uint64_t)(ts.tv_sec) * 1000000000 + ts.tv_nsec; } const char * gavl_benchmark_get_desc(int flags) { return "nanoseconds returned by clock_gettime with CLOCK_PROCESS_CPUTIME_ID"; } #elif defined(ARCH_X86) || defined(HAVE_SYS_TIMES_H) uint64_t gavl_benchmark_get_time(int config_flags) { struct timeval tv; #ifdef ARCH_X86 uint64_t x; /* that should prevent us from trying cpuid with old cpus */ if( config_flags & GAVL_ACCEL_MMX ) { __asm__ volatile (".byte 0x0f, 0x31" : "=A" (x)); return x; } else { #endif gettimeofday(&tv, NULL); return (uint64_t)(tv.tv_sec) * 1000000 + tv.tv_usec; #ifdef ARCH_X86 } #endif } const char * gavl_benchmark_get_desc(int config_flags) { #ifdef ARCH_X86 /* that should prevent us from trying cpuid with old cpus */ if( config_flags & GAVL_ACCEL_MMX ) { return "Units returned by rdtsc"; } else { #endif return "microseconds returned by gettimeofday"; #ifdef ARCH_X86 } #endif } #else /* gettimeofday */ uint64_t gavl_benchmark_get_time(int config_flags) { struct timeval tv; gettimeofday(&tv, NULL); return (uint64_t)(tv.tv_sec) * 1000000 + tv.tv_usec; /* FIXME: implement an equivalent for using optimized memcpy on other architectures */ } const char * gavl_benchmark_get_desc(int flags) { return "microseconds returned by gettimeofday"; } #endif bplaum-gavl-b9385e3/gavl/trackinfo.c000066400000000000000000002444041513252040200173440ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include #include #include #include #include #include #include #include #include const struct { gavl_stream_type_t type; const char * name; } stream_types[] = { { GAVL_STREAM_AUDIO, "Audio" }, { GAVL_STREAM_VIDEO, "Video" }, { GAVL_STREAM_TEXT, "Text" }, { GAVL_STREAM_OVERLAY, "Overlay" }, { GAVL_STREAM_MSG, "Message" }, { GAVL_STREAM_NONE, "None" }, { /* End */ }, }; const char * gavl_stream_type_name(gavl_stream_type_t type) { int idx = 0; while(stream_types[idx].name) { if(type == stream_types[idx].type) return stream_types[idx].name; idx++; } return NULL; } int gavl_track_get_num_streams(const gavl_dictionary_t * d, gavl_stream_type_t type) { int type_from_dict = 0; int ret = 0, i; const gavl_array_t * arr; const gavl_dictionary_t * dict; if(!(arr = gavl_dictionary_get_array(d, GAVL_META_STREAMS))) return 0; for(i = 0; i < arr->num_entries; i++) { if((dict = gavl_value_get_dictionary_nc(&arr->entries[i])) && gavl_dictionary_get_int(dict, GAVL_META_STREAM_TYPE, &type_from_dict) && (type_from_dict == type)) ret++; } return ret; } void gavl_track_delete_implicit_fields(gavl_dictionary_t * track) { int i; gavl_dictionary_t * m; gavl_dictionary_t * s; gavl_array_t * arr; m = gavl_track_get_metadata_nc(track); gavl_metadata_delete_implicit_fields(m); if((arr = gavl_dictionary_get_array_nc(track, GAVL_META_STREAMS))) { for(i = 0; i < arr->num_entries; i++) { if((s = gavl_value_get_dictionary_nc(&arr->entries[i]))) { gavl_dictionary_set(s, GAVL_META_STREAM_STATS, NULL); m = gavl_stream_get_metadata_nc(s); gavl_metadata_delete_implicit_fields(m); } } } } int gavl_track_stream_idx_to_abs(const gavl_dictionary_t * d, gavl_stream_type_t type, int idx) { int ctr = 0; int i; int type_from_dict = 0; const gavl_array_t * arr; const gavl_dictionary_t * dict; if(!(arr = gavl_dictionary_get_array(d, GAVL_META_STREAMS))) return -1; for(i = 0; i < arr->num_entries; i++) { if((dict = gavl_value_get_dictionary_nc(&arr->entries[i])) && gavl_dictionary_get_int(dict, GAVL_META_STREAM_TYPE, &type_from_dict) && (type_from_dict == type)) { if(ctr == idx) return i; ctr++; } } return -1; } int gavl_track_stream_idx_to_rel(const gavl_dictionary_t * d, int idx) { int i; int type; int ret = 0; int type_from_dict = 0; const gavl_array_t * arr; const gavl_dictionary_t * dict; if(!(arr = gavl_dictionary_get_array(d, GAVL_META_STREAMS)) || (idx < 0) || (idx >= arr->num_entries) || (dict = gavl_value_get_dictionary_nc(&arr->entries[idx])) || !gavl_dictionary_get_int(dict, GAVL_META_STREAM_TYPE, &type)) return -1; for(i = 0; i < idx; i++) { if((dict = gavl_value_get_dictionary_nc(&arr->entries[idx])) && gavl_dictionary_get_int(dict, GAVL_META_STREAM_TYPE, &type_from_dict) && (type == type_from_dict)) ret++; } return ret; } /* */ gavl_dictionary_t * gavl_track_get_stream_nc(gavl_dictionary_t * d, gavl_stream_type_t type, int i) { gavl_array_t * arr; gavl_value_t * val; gavl_dictionary_t * dict; int idx = 0; int pos = 0; int type_from_dict = 0; if(!(arr = gavl_dictionary_get_array_nc(d, GAVL_META_STREAMS))) return NULL; for(pos = 0; pos < arr->num_entries; pos++) { if((val = gavl_array_get_nc(arr, pos)) && (dict = gavl_value_get_dictionary_nc(val)) && gavl_dictionary_get_int(dict, GAVL_META_STREAM_TYPE, &type_from_dict) && (type_from_dict == type)) { if(i == idx) return dict; else idx++; } } return NULL; } const gavl_dictionary_t * gavl_track_get_stream(const gavl_dictionary_t * d, gavl_stream_type_t type, int i) { const gavl_array_t * arr; const gavl_value_t * val; const gavl_dictionary_t * dict; int idx = 0; int pos = 0; int type_from_dict = 0; if(!(arr = gavl_dictionary_get_array(d, GAVL_META_STREAMS))) return NULL; for(pos = 0; pos < arr->num_entries; pos++) { if((val = gavl_array_get(arr, pos)) && (dict = gavl_value_get_dictionary(val)) && gavl_dictionary_get_int(dict, GAVL_META_STREAM_TYPE, &type_from_dict) && (type_from_dict == type)) { if(i == idx) return dict; else idx++; } } return NULL; } static const gavl_dictionary_t * get_stream_metadata(const gavl_dictionary_t * d, gavl_stream_type_t type, int i) { const gavl_dictionary_t * s; if(!(s = gavl_track_get_stream(d, type, i))) return NULL; return gavl_dictionary_get_dictionary(s, GAVL_META_METADATA); } static gavl_dictionary_t * get_stream_metadata_nc(gavl_dictionary_t * d, gavl_stream_type_t type, int i) { gavl_dictionary_t * s; if(!(s = gavl_track_get_stream_nc(d, type, i))) return NULL; return gavl_dictionary_get_dictionary_nc(s, GAVL_META_METADATA); } int gavl_track_get_num_streams_all(const gavl_dictionary_t * d) { const gavl_array_t * arr; if(!(arr = gavl_dictionary_get_array(d, GAVL_META_STREAMS))) return 0; return arr->num_entries; } const gavl_dictionary_t * gavl_track_get_stream_all(const gavl_dictionary_t * d, int idx) { const gavl_array_t * arr; if(!(arr = gavl_dictionary_get_array(d, GAVL_META_STREAMS)) || (idx < 0) || (idx >= arr->num_entries)) return NULL; return gavl_value_get_dictionary(&arr->entries[idx]); } gavl_stream_type_t gavl_stream_get_type(const gavl_dictionary_t * s) { int ret = GAVL_STREAM_NONE; gavl_dictionary_get_int(s, GAVL_META_STREAM_TYPE, &ret); return ret; } int gavl_stream_get_id(const gavl_dictionary_t * s, int * id) { return gavl_dictionary_get_int(s, GAVL_META_STREAM_ID, id); } void gavl_stream_set_id(gavl_dictionary_t * s, int id) { gavl_dictionary_set_int(s, GAVL_META_STREAM_ID, id); } gavl_dictionary_t * gavl_track_get_stream_all_nc(gavl_dictionary_t * d, int idx) { gavl_array_t * arr; if(!(arr = gavl_dictionary_get_array_nc(d, GAVL_META_STREAMS)) || (idx < 0) || (idx >= arr->num_entries)) return NULL; return gavl_value_get_dictionary_nc(&arr->entries[idx]); } gavl_dictionary_t * gavl_track_find_stream_by_id_nc(gavl_dictionary_t * d, int id) { int i; int id_s; gavl_array_t * arr; if(!(arr = gavl_dictionary_get_array_nc(d, GAVL_META_STREAMS))) return NULL; for(i = 0; i < arr->num_entries; i++) { gavl_dictionary_t * s; if((s = gavl_value_get_dictionary_nc(&arr->entries[i])) && gavl_stream_get_id(s, &id_s) && (id == id_s)) return s; } return NULL; } const gavl_dictionary_t * gavl_track_find_stream_by_id(const gavl_dictionary_t * d, int id) { int i; int id_s; const gavl_array_t * arr; if(!(arr = gavl_dictionary_get_array(d, GAVL_META_STREAMS))) return NULL; for(i = 0; i < arr->num_entries; i++) { const gavl_dictionary_t * s; if((s = gavl_value_get_dictionary(&arr->entries[i])) && gavl_stream_get_id(s, &id_s) && (id == id_s)) return s; } return NULL; } static gavl_dictionary_t * append_stream_common(gavl_dictionary_t * d, gavl_stream_type_t type, const char * arr_name) { gavl_value_t val; gavl_array_t * arr; gavl_dictionary_t * s; gavl_dictionary_t * m; arr = gavl_dictionary_get_array_create(d, arr_name); gavl_value_init(&val); s = gavl_value_set_dictionary(&val); gavl_dictionary_set_int(s, GAVL_META_STREAM_TYPE, type); m = gavl_dictionary_get_dictionary_create(s, GAVL_META_METADATA); gavl_dictionary_set_int(m, GAVL_META_IDX, arr->num_entries); gavl_array_splice_val_nocopy(arr, arr->num_entries, 0, &val); return s; } static gavl_dictionary_t * append_stream(gavl_dictionary_t * d, gavl_stream_type_t type, const char * arr_name) { gavl_dictionary_t * s = append_stream_common(d, type, arr_name); gavl_stream_set_id(s, gavl_track_get_num_streams_all(d) + GAVL_META_STREAM_ID_MEDIA_START); return s; } int gavl_track_delete_stream(gavl_dictionary_t * d, int idx) { gavl_array_t * arr; if(!(arr = gavl_dictionary_get_array_nc(d, GAVL_META_STREAMS)) || (idx < 0) || (idx >= arr->num_entries)) return 0; gavl_array_splice_val(arr, idx, 1, NULL); return 1; } static int delete_stream(gavl_dictionary_t * d, gavl_stream_type_t type, int idx) { idx = gavl_track_stream_idx_to_abs(d, type, idx); if(idx < 0) return 0; return gavl_track_delete_stream(d, idx); } static void init_stream(gavl_dictionary_t * dict) { gavl_dictionary_get_dictionary_create(dict, GAVL_META_METADATA); } /* Initialize streams */ static void init_audio_stream(gavl_dictionary_t * dict) { gavl_value_t fmt_val; gavl_value_init(&fmt_val); gavl_value_set_audio_format(&fmt_val); gavl_dictionary_set_nocopy(dict, GAVL_META_STREAM_FORMAT, &fmt_val); } static void init_video_stream(gavl_dictionary_t * dict) { gavl_value_t fmt_val; gavl_value_init(&fmt_val); gavl_value_set_video_format(&fmt_val); gavl_dictionary_set_nocopy(dict, GAVL_META_STREAM_FORMAT, &fmt_val); } static void init_text_stream(gavl_dictionary_t * dict) { #if 0 // Text streams should have no video format gavl_value_t fmt_val; gavl_value_init(&fmt_val); gavl_value_set_video_format(&fmt_val); gavl_dictionary_set_nocopy(dict, GAVL_META_STREAM_FORMAT, &fmt_val); #endif } static void init_overlay_stream(gavl_dictionary_t * dict) { gavl_value_t fmt_val; gavl_value_init(&fmt_val); gavl_value_set_video_format(&fmt_val); gavl_dictionary_set_nocopy(dict, GAVL_META_STREAM_FORMAT, &fmt_val); } void gavl_init_audio_stream(gavl_dictionary_t * dict) { gavl_dictionary_set_int(dict, GAVL_META_STREAM_TYPE, GAVL_STREAM_AUDIO); init_stream(dict); init_audio_stream(dict); } void gavl_init_video_stream(gavl_dictionary_t * dict) { gavl_dictionary_set_int(dict, GAVL_META_STREAM_TYPE, GAVL_STREAM_VIDEO); init_stream(dict); init_video_stream(dict); } void gavl_init_text_stream(gavl_dictionary_t * dict) { gavl_dictionary_set_int(dict, GAVL_META_STREAM_TYPE, GAVL_STREAM_TEXT); init_stream(dict); init_text_stream(dict); } void gavl_init_overlay_stream(gavl_dictionary_t * dict) { gavl_dictionary_set_int(dict, GAVL_META_STREAM_TYPE, GAVL_STREAM_OVERLAY); init_stream(dict); init_overlay_stream(dict); } static void init_msg_stream(gavl_dictionary_t * dict) { gavl_dictionary_t * m; init_stream(dict); m = gavl_dictionary_get_dictionary_nc(dict, GAVL_META_METADATA); gavl_dictionary_set_int(m, GAVL_META_STREAM_SAMPLE_TIMESCALE, GAVL_TIME_SCALE); gavl_dictionary_set_int(m, GAVL_META_STREAM_PACKET_TIMESCALE, GAVL_TIME_SCALE); } static gavl_dictionary_t * track_append_stream(gavl_dictionary_t * d, gavl_stream_type_t type, const char * arr_name) { gavl_dictionary_t * s = append_stream(d, type, arr_name); init_stream(s); switch(type) { case GAVL_STREAM_AUDIO: init_audio_stream(s); break; case GAVL_STREAM_VIDEO: init_video_stream(s); break; case GAVL_STREAM_TEXT: init_text_stream(s); break; case GAVL_STREAM_OVERLAY: init_overlay_stream(s); break; case GAVL_STREAM_MSG: case GAVL_STREAM_NONE: break; } return s; } gavl_dictionary_t * gavl_track_append_stream(gavl_dictionary_t * d, gavl_stream_type_t type) { return track_append_stream(d, type, GAVL_META_STREAMS); } /* Audio */ gavl_dictionary_t * gavl_track_get_audio_stream_nc(gavl_dictionary_t * d, int i) { return gavl_track_get_stream_nc(d, GAVL_STREAM_AUDIO, i); } const gavl_dictionary_t * gavl_track_get_audio_stream(const gavl_dictionary_t * d, int i) { return gavl_track_get_stream(d, GAVL_STREAM_AUDIO, i); } int gavl_track_get_num_audio_streams(const gavl_dictionary_t * d) { return gavl_track_get_num_streams(d, GAVL_STREAM_AUDIO); } gavl_dictionary_t * gavl_track_append_audio_stream(gavl_dictionary_t * d) { return gavl_track_append_stream(d, GAVL_STREAM_AUDIO); } const gavl_dictionary_t * gavl_track_get_audio_metadata(const gavl_dictionary_t * d, int stream) { return get_stream_metadata(d, GAVL_STREAM_AUDIO, stream); } gavl_dictionary_t * gavl_track_get_audio_metadata_nc(gavl_dictionary_t * d, int stream) { return get_stream_metadata_nc(d, GAVL_STREAM_AUDIO, stream); } const gavl_audio_format_t * gavl_track_get_audio_format(const gavl_dictionary_t * d, int stream) { const gavl_dictionary_t * s; const gavl_value_t * val; if(!(s = gavl_track_get_stream(d, GAVL_STREAM_AUDIO, stream)) || !(val = gavl_dictionary_get(s, GAVL_META_STREAM_FORMAT))) return NULL; return gavl_value_get_audio_format(val); } gavl_audio_format_t * gavl_track_get_audio_format_nc(gavl_dictionary_t * d, int stream) { gavl_dictionary_t * s; gavl_value_t * val; if(!(s = gavl_track_get_stream_nc(d, GAVL_STREAM_AUDIO, stream)) || !(val = gavl_dictionary_get_nc(s, GAVL_META_STREAM_FORMAT))) return NULL; return gavl_value_get_audio_format_nc(val); } int gavl_track_delete_audio_stream(gavl_dictionary_t * d, int stream) { return delete_stream(d, GAVL_STREAM_AUDIO, stream); } /* Video */ gavl_dictionary_t * gavl_track_get_video_stream_nc(gavl_dictionary_t * d, int i) { return gavl_track_get_stream_nc(d, GAVL_STREAM_VIDEO, i); } const gavl_dictionary_t * gavl_track_get_video_stream(const gavl_dictionary_t * d, int i) { return gavl_track_get_stream(d, GAVL_STREAM_VIDEO, i); } int gavl_track_get_num_video_streams(const gavl_dictionary_t * d) { return gavl_track_get_num_streams(d, GAVL_STREAM_VIDEO); } gavl_dictionary_t * gavl_track_append_video_stream(gavl_dictionary_t * d) { return gavl_track_append_stream(d, GAVL_STREAM_VIDEO); } const gavl_dictionary_t * gavl_track_get_video_metadata(const gavl_dictionary_t * d, int stream) { return get_stream_metadata(d, GAVL_STREAM_VIDEO, stream); } gavl_dictionary_t * gavl_track_get_video_metadata_nc(gavl_dictionary_t * d, int stream) { return get_stream_metadata_nc(d, GAVL_STREAM_VIDEO, stream); } const gavl_video_format_t * gavl_track_get_video_format(const gavl_dictionary_t * d, int stream) { const gavl_dictionary_t * s; const gavl_value_t * val; if(!(s = gavl_track_get_stream(d, GAVL_STREAM_VIDEO, stream)) || !(val = gavl_dictionary_get(s, GAVL_META_STREAM_FORMAT))) return NULL; return gavl_value_get_video_format(val); } gavl_video_format_t * gavl_track_get_video_format_nc(gavl_dictionary_t * d, int stream) { gavl_dictionary_t * s; gavl_value_t * val; if(!(s = gavl_track_get_stream_nc(d, GAVL_STREAM_VIDEO, stream)) || !(val = gavl_dictionary_get_nc(s, GAVL_META_STREAM_FORMAT))) return NULL; return gavl_value_get_video_format_nc(val); } int gavl_track_delete_video_stream(gavl_dictionary_t * d, int stream) { return delete_stream(d, GAVL_STREAM_VIDEO, stream); } /* Text */ gavl_dictionary_t * gavl_track_get_text_stream_nc(gavl_dictionary_t * d, int i) { return gavl_track_get_stream_nc(d, GAVL_STREAM_TEXT, i); } const gavl_dictionary_t * gavl_track_get_text_stream(const gavl_dictionary_t * d, int i) { return gavl_track_get_stream(d, GAVL_STREAM_TEXT, i); } int gavl_track_get_num_text_streams(const gavl_dictionary_t * d) { return gavl_track_get_num_streams(d, GAVL_STREAM_TEXT); } gavl_dictionary_t * gavl_track_append_text_stream(gavl_dictionary_t * d) { return gavl_track_append_stream(d, GAVL_STREAM_TEXT); } const gavl_dictionary_t * gavl_track_get_text_metadata(const gavl_dictionary_t * d, int stream) { return get_stream_metadata(d, GAVL_STREAM_TEXT, stream); } gavl_dictionary_t * gavl_track_get_text_metadata_nc(gavl_dictionary_t * d, int stream) { return get_stream_metadata_nc(d, GAVL_STREAM_TEXT, stream); } int gavl_track_delete_text_stream(gavl_dictionary_t * d, int stream) { return delete_stream(d, GAVL_STREAM_TEXT, stream); } /* Overlay */ gavl_dictionary_t * gavl_track_get_overlay_stream_nc(gavl_dictionary_t * d, int i) { return gavl_track_get_stream_nc(d, GAVL_STREAM_OVERLAY, i); } const gavl_dictionary_t * gavl_track_get_overlay_stream(const gavl_dictionary_t * d, int i) { return gavl_track_get_stream(d, GAVL_STREAM_OVERLAY, i); } int gavl_track_get_num_overlay_streams(const gavl_dictionary_t * d) { return gavl_track_get_num_streams(d, GAVL_STREAM_OVERLAY); } gavl_dictionary_t * gavl_track_append_overlay_stream(gavl_dictionary_t * d) { return gavl_track_append_stream(d, GAVL_STREAM_OVERLAY); } const gavl_dictionary_t * gavl_track_get_overlay_metadata(const gavl_dictionary_t * d, int stream) { return get_stream_metadata(d, GAVL_STREAM_OVERLAY, stream); } gavl_dictionary_t * gavl_track_get_overlay_metadata_nc(gavl_dictionary_t * d, int stream) { return get_stream_metadata_nc(d, GAVL_STREAM_OVERLAY, stream); } const gavl_video_format_t * gavl_track_get_overlay_format(const gavl_dictionary_t * d, int stream) { const gavl_dictionary_t * s; const gavl_value_t * val; if(!(s = gavl_track_get_stream(d, GAVL_STREAM_OVERLAY, stream)) || !(val = gavl_dictionary_get(s, GAVL_META_STREAM_FORMAT))) return NULL; return gavl_value_get_video_format(val); } gavl_video_format_t * gavl_track_get_overlay_format_nc(gavl_dictionary_t * d, int stream) { gavl_dictionary_t * s; gavl_value_t * val; if(!(s = gavl_track_get_stream_nc(d, GAVL_STREAM_OVERLAY, stream)) || !(val = gavl_dictionary_get_nc(s, GAVL_META_STREAM_FORMAT))) return NULL; return gavl_value_get_video_format_nc(val); } int gavl_track_delete_overlay_stream(gavl_dictionary_t * d, int stream) { return delete_stream(d, GAVL_STREAM_OVERLAY, stream); } /* Message */ gavl_dictionary_t * gavl_track_get_msg_stream_nc(gavl_dictionary_t * d, int i) { return gavl_track_get_stream_nc(d, GAVL_STREAM_MSG, i); } const gavl_dictionary_t * gavl_track_get_msg_stream(const gavl_dictionary_t * d, int i) { return gavl_track_get_stream(d, GAVL_STREAM_MSG, i); } int gavl_track_get_num_msg_streams(const gavl_dictionary_t * d) { return gavl_track_get_num_streams(d, GAVL_STREAM_MSG); } gavl_dictionary_t * gavl_track_append_msg_stream(gavl_dictionary_t * d, int id) { gavl_dictionary_t * s; if((s = gavl_track_find_stream_by_id_nc(d, id))) return s; s = append_stream_common(d, GAVL_STREAM_MSG, GAVL_META_STREAMS); init_msg_stream(s); gavl_stream_set_id(s, id); return s; } const gavl_dictionary_t * gavl_track_get_msg_metadata(const gavl_dictionary_t * d, int stream) { return get_stream_metadata(d, GAVL_STREAM_MSG, stream); } gavl_dictionary_t * gavl_track_get_msg_metadata_nc(gavl_dictionary_t * d, int stream) { return get_stream_metadata_nc(d, GAVL_STREAM_MSG, stream); } int gavl_track_delete_msg_stream(gavl_dictionary_t * d, int stream) { return delete_stream(d, GAVL_STREAM_MSG, stream); } /* Track */ static void track_init(gavl_dictionary_t * track) { gavl_dictionary_get_dictionary_create(track, GAVL_META_METADATA); } gavl_array_t * gavl_get_tracks_nc(gavl_dictionary_t * dict) { return gavl_dictionary_get_array_create(dict, GAVL_META_TRACKS); } const gavl_array_t * gavl_get_tracks(const gavl_dictionary_t * dict) { return gavl_dictionary_get_array(dict, GAVL_META_TRACKS); } static gavl_dictionary_t * append_track(gavl_dictionary_t * dict, const char * arr_name) { gavl_value_t val; gavl_dictionary_t * ret; gavl_array_t * arr = gavl_dictionary_get_array_create(dict, arr_name); gavl_value_init(&val); ret = gavl_value_set_dictionary(&val); track_init(ret); gavl_array_push_nocopy(arr, &val); return arr->entries[arr->num_entries-1].v.dictionary; } gavl_dictionary_t * gavl_append_track(gavl_dictionary_t * dict, const gavl_dictionary_t * t) { gavl_dictionary_t * new_track = append_track(dict, GAVL_META_TRACKS); if(t) gavl_dictionary_copy(new_track, t); gavl_track_update_children(dict); return new_track; } gavl_dictionary_t * gavl_prepend_track(gavl_dictionary_t * dict, const gavl_dictionary_t * t) { gavl_dictionary_t * new_track; gavl_value_t val; gavl_array_t * arr = gavl_get_tracks_nc(dict); gavl_value_init(&val); new_track = gavl_value_set_dictionary(&val); if(t) gavl_dictionary_copy(new_track, t); else track_init(new_track); gavl_array_unshift_nocopy(arr, &val); // gavl_array_push_nocopy(arr, &val); gavl_track_update_children(dict); return arr->entries[0].v.dictionary; } static const gavl_dictionary_t * get_track(const gavl_dictionary_t * dict, const char * array_name, int idx) { const gavl_value_t * val; const gavl_array_t * arr; if(!(arr = gavl_dictionary_get_array(dict, array_name)) || !(val = gavl_array_get(arr, idx))) return NULL; else return gavl_value_get_dictionary(val); } static gavl_dictionary_t * get_track_nc(gavl_dictionary_t * dict, const char * array_name, int idx) { gavl_value_t * val; gavl_array_t * arr; if(!(arr = gavl_dictionary_get_array_nc(dict, array_name)) || !(val = gavl_array_get_nc(arr, idx))) return NULL; else return gavl_value_get_dictionary_nc(val); } const gavl_dictionary_t * gavl_get_track(const gavl_dictionary_t * dict, int idx) { if((idx < 0) && !gavl_dictionary_get_int(dict, GAVL_META_CURIDX, &idx)) idx = 0; return get_track(dict, GAVL_META_TRACKS, idx); } gavl_dictionary_t * gavl_get_track_nc(gavl_dictionary_t * dict, int idx) { gavl_value_t * val; gavl_array_t * tracks; if((idx < 0) && !gavl_dictionary_get_int(dict, GAVL_META_CURIDX, &idx)) idx = 0; if(!(tracks = gavl_get_tracks_nc(dict)) || !(val = gavl_array_get_nc(tracks, idx))) return NULL; return gavl_value_get_dictionary_nc(val); } void gavl_set_current_track(gavl_dictionary_t * dict, int idx) { gavl_dictionary_set_int(dict, GAVL_META_CURIDX, idx); } int gavl_get_current_track(gavl_dictionary_t * dict) { int ret = 0; gavl_dictionary_get_int(dict, GAVL_META_CURIDX, &ret); return ret; } static int get_num_tracks(const gavl_dictionary_t * dict, const char * arr_name) { const gavl_array_t * tracks; if(!(tracks = gavl_dictionary_get_array(dict, arr_name))) return 0; return tracks->num_entries; } int gavl_get_num_tracks(const gavl_dictionary_t * dict) { return get_num_tracks(dict, GAVL_META_TRACKS); } int gavl_get_num_tracks_loaded(const gavl_dictionary_t * dict, int * total) { int ret; int num_children = 0; const gavl_array_t * tracks; const gavl_dictionary_t * m; if(!(tracks = gavl_get_tracks(dict))) ret = 0; else ret = tracks->num_entries; if(!(m = gavl_dictionary_get_dictionary(dict, GAVL_META_METADATA)) || !gavl_dictionary_get_int(m, GAVL_META_NUM_CHILDREN, &num_children)) *total = 0; else *total = num_children; return ret; } void gavl_delete_track(gavl_dictionary_t * dict, int idx) { gavl_track_splice_children(dict, idx, 1, NULL); } void gavl_track_splice_children(gavl_dictionary_t * dict, int idx, int del, const gavl_value_t * val) { gavl_array_t * tracks; if(!(tracks = gavl_get_tracks_nc(dict))) return; if(!val || (val->type == GAVL_TYPE_DICTIONARY) || (val->type == GAVL_TYPE_UNDEFINED)) { gavl_array_splice_val(tracks, idx, del, val); } else if(val->type == GAVL_TYPE_ARRAY) { gavl_array_splice_array(tracks, idx, del, val->v.array); } gavl_track_update_children(dict); } void gavl_track_splice_children_nocopy(gavl_dictionary_t * dict, int idx, int del, gavl_value_t * val) { gavl_array_t * tracks; if(!(tracks = gavl_get_tracks_nc(dict))) return; if(!val || (val->type == GAVL_TYPE_DICTIONARY) || (val->type == GAVL_TYPE_UNDEFINED)) { gavl_array_splice_val_nocopy(tracks, idx, del, val); } else if(val->type == GAVL_TYPE_ARRAY) { gavl_array_splice_array_nocopy(tracks, idx, del, val->v.array); } gavl_track_update_children(dict); gavl_value_reset(val); } gavl_audio_format_t * gavl_stream_get_audio_format_nc(gavl_dictionary_t * dict) { gavl_value_t * val; if((val = gavl_dictionary_get_nc(dict, GAVL_META_STREAM_FORMAT))) return gavl_value_get_audio_format_nc(val); else return NULL; } gavl_video_format_t * gavl_stream_get_video_format_nc(gavl_dictionary_t * dict) { gavl_value_t * val; if((val = gavl_dictionary_get_nc(dict, GAVL_META_STREAM_FORMAT))) return gavl_value_get_video_format_nc(val); else return NULL; } const gavl_audio_format_t * gavl_stream_get_audio_format(const gavl_dictionary_t * dict) { const gavl_value_t * val; if((val = gavl_dictionary_get(dict, GAVL_META_STREAM_FORMAT))) return gavl_value_get_audio_format(val); else return NULL; } const gavl_video_format_t * gavl_stream_get_video_format(const gavl_dictionary_t * dict) { const gavl_value_t * val; if((val = gavl_dictionary_get(dict, GAVL_META_STREAM_FORMAT))) return gavl_value_get_video_format(val); else return NULL; } gavl_dictionary_t * gavl_stream_get_metadata_nc(gavl_dictionary_t * dict) { gavl_value_t * val; if((val = gavl_dictionary_get_nc(dict, GAVL_META_METADATA))) return gavl_value_get_dictionary_nc(val); else return NULL; } const gavl_dictionary_t * gavl_stream_get_metadata(const gavl_dictionary_t * dict) { const gavl_value_t * val; if((val = gavl_dictionary_get(dict, GAVL_META_METADATA))) return gavl_value_get_dictionary(val); else return NULL; } gavl_dictionary_t * gavl_track_get_metadata_nc(gavl_dictionary_t * dict) { gavl_value_t * val; if((val = gavl_dictionary_get_nc(dict, GAVL_META_METADATA))) return gavl_value_get_dictionary_nc(val); else return NULL; } const gavl_dictionary_t * gavl_track_get_metadata(const gavl_dictionary_t * dict) { const gavl_value_t * val; if((val = gavl_dictionary_get(dict, GAVL_META_METADATA))) return gavl_value_get_dictionary(val); else return NULL; } static void get_stream_duration(void * priv, int idx, const gavl_value_t * v) { gavl_time_t * t; gavl_time_t test_duration; const gavl_dictionary_t * s; const gavl_dictionary_t * m; int timescale; int64_t stream_duration; t = priv; if(!(s = gavl_value_get_dictionary(v))) return; if(!(m = gavl_dictionary_get_dictionary(s, GAVL_META_METADATA))) return; if(!(gavl_dictionary_get_int(m, GAVL_META_STREAM_SAMPLE_TIMESCALE, ×cale))) { // fprintf(stderr, "Got no sample timescale\n"); // gavl_dictionary_dump(s, 2); return; } if((timescale <= 0)) return; if(!(gavl_dictionary_get_long(m, GAVL_META_STREAM_DURATION, &stream_duration))) return; test_duration = gavl_time_unscale(timescale, stream_duration); if(test_duration > *t) *t = test_duration; } void gavl_track_compute_duration(gavl_dictionary_t * dict) { gavl_array_t * arr; gavl_time_t dur = 0; gavl_dictionary_t * m = gavl_track_get_metadata_nc(dict); if(gavl_dictionary_get_long(m, GAVL_META_APPROX_DURATION, &dur) && (dur > 0)) return; if((arr = gavl_dictionary_get_array_nc(dict, GAVL_META_STREAMS))) gavl_array_foreach(arr, get_stream_duration, &dur); if(dur > 0) gavl_track_set_duration(dict, dur); } /* Detect various patterns in filenames */ static int is_skip_char(char c) { return isspace(c) || (c == '_') || (c == '-'); } static const char * detect_date(const char * filename, gavl_dictionary_t * metadata) { int year; int month; int day; const char * pos = strrchr(filename, '('); if(!pos) return NULL; year = 9999; month = 99; day = 99; if(sscanf(pos, "(%d-%d-%d)", &year, &month, &day) < 3) { month = 99; day = 99; if(sscanf(pos, "(%d)", &year) < 1) { year = 9999; return NULL; } } pos--; while(is_skip_char(*pos) && (pos > filename)) pos--; pos++; gavl_dictionary_set_date(metadata, GAVL_META_DATE, year, month, day); return pos; } const char * gavl_detect_episode_tag(const char * filename, const char * end, int * season_p, int * idx_p) { const char * pos; int season, idx; if(!end) end = filename + strlen(filename); pos = filename; while(pos < end) { if((sscanf(pos, "S%dE%d", &season, &idx) == 2) || (sscanf(pos, "s%de%d", &season, &idx) == 2)) { if(season_p) *season_p = season; if(idx_p) *idx_p = idx; return pos; } pos++; } return NULL; } /* "Show - S1E2 - Episode (1990)" */ static int detect_episode(const char * filename, gavl_dictionary_t * dict) { int season = 0; int idx = 0; const char * tag; const char * pos; const char * end = detect_date(filename, dict); if(!end) end = filename + strlen(filename); tag = gavl_detect_episode_tag(filename, end, &season, &idx); if(!tag) return 0; pos = tag; while(!is_skip_char(*pos) && (pos < end)) pos++; if(pos == end) return 0; while(is_skip_char(*pos) && (pos < end)) pos++; if(pos == end) return 0; gavl_dictionary_set_string_nocopy(dict, GAVL_META_TITLE, gavl_strndup(pos, end)); pos = tag; pos--; while(is_skip_char(*pos) && (pos > filename)) pos--; if(pos == filename) { gavl_dictionary_set(dict, GAVL_META_TITLE, NULL); return 0; } pos++; gavl_dictionary_set_string_nocopy(dict, GAVL_META_SHOW, gavl_strndup(filename, pos)); gavl_dictionary_set_int(dict, GAVL_META_SEASON, season); gavl_dictionary_set_int(dict, GAVL_META_EPISODENUMBER, idx); return 1; } /* "Movie title (1990)" */ static int detect_movie_singlefile(const char * filename, gavl_dictionary_t * dict) { const char * end; if(!(end = detect_date(filename, dict))) end = filename + strlen(filename); gavl_dictionary_set_string_nocopy(dict, GAVL_META_TITLE, gavl_strndup(filename, end)); return 1; } /* "Movie title (1990) CD1" */ static char * detect_multipart_tag(char * filename, int * part) { char * pos = filename + strlen(filename) - 3; while(pos > filename) { if(!strncasecmp(pos, "CD", 2) && isdigit(pos[2])) { if(part) *part = atoi(pos+2); return pos; } else if(!strncasecmp(pos, "part", 4) && isdigit(pos[4])) { if(part) *part = atoi(pos+4); return pos; } pos--; } return NULL; } static int detect_movie_multifile(char * basename, gavl_dictionary_t * dict) { int idx = 0; char * pos; const char * end = basename + strlen(basename); pos = detect_multipart_tag(basename, &idx); if(!pos) return 0; end = detect_date(basename, dict); if(!end) { end = pos; end--; while(is_skip_char(*end) && (end > basename)) end--; end++; } gavl_dictionary_set_string_nocopy(dict, GAVL_META_TITLE, gavl_strndup(basename, end)); gavl_dictionary_set_string(dict, GAVL_META_LABEL, basename); gavl_dictionary_set_int(dict, GAVL_META_IDX, idx); pos--; while(is_skip_char(*pos) && (pos > basename)) pos--; pos++; *pos = '\0'; return 1; } static void finalize_stream(void * data, int idx, const gavl_value_t * val) { gavl_stream_stats_t stats; gavl_compression_info_t ci; gavl_stream_type_t type; gavl_dictionary_t * m; int have_stats = 0; int have_ci = 0; gavl_dictionary_t * s = gavl_track_get_stream_all_nc(data, idx); if(!s) return; gavl_compression_info_init(&ci); if(gavl_stream_get_stats(s, &stats)) have_stats = 1; if(gavl_stream_get_compression_info(s, &ci)) have_ci = 1; gavl_stream_set_sample_timescale(s); m = gavl_stream_get_metadata_nc(s); type = gavl_stream_get_type(s); switch(type) { case GAVL_STREAM_AUDIO: { const gavl_audio_format_t * fmt = gavl_stream_get_audio_format(s); if(have_stats) gavl_stream_stats_apply_audio(&stats, fmt, (have_ci ? &ci : NULL), m); } break; case GAVL_STREAM_VIDEO: { gavl_video_format_t * fmt = gavl_stream_get_video_format_nc(s); if(have_stats) gavl_stream_stats_apply_video(&stats, fmt, (have_ci ? &ci : NULL), m); } break; case GAVL_STREAM_TEXT: if(have_stats) gavl_stream_stats_apply_subtitle(&stats, m); break; case GAVL_STREAM_OVERLAY: if(have_stats) gavl_stream_stats_apply_subtitle(&stats, m); break; case GAVL_STREAM_MSG: break; case GAVL_STREAM_NONE: break; } gavl_compression_info_free(&ci); } static void finalize_audio(gavl_dictionary_t * dict) { const char * var; gavl_dictionary_t * m; const gavl_dictionary_t * sm; const gavl_audio_format_t * fmt; int val_i; if(!(m = gavl_track_get_metadata_nc(dict)) || !(fmt = gavl_track_get_audio_format(dict, 0)) || !(sm = gavl_track_get_audio_metadata(dict, 0))) return; if(fmt->num_channels) gavl_dictionary_set_int(m, GAVL_META_AUDIO_CHANNELS, fmt->num_channels); if(fmt->samplerate) { gavl_dictionary_set_int(m, GAVL_META_AUDIO_SAMPLERATE, fmt->samplerate); } if(gavl_dictionary_get_int(sm, GAVL_META_BITRATE, &val_i)) gavl_dictionary_set_int(m, GAVL_META_AUDIO_BITRATE, val_i); if((var = gavl_dictionary_get_string(sm, GAVL_META_FORMAT))) gavl_dictionary_set_string(m, GAVL_META_AUDIO_CODEC, var); } static void finalize_video(gavl_dictionary_t * dict) { const char * var; gavl_dictionary_t * m; const gavl_dictionary_t * sm; const gavl_video_format_t * fmt; if(!(m = gavl_track_get_metadata_nc(dict)) || !(fmt = gavl_track_get_video_format(dict, 0)) || !(sm = gavl_track_get_video_metadata(dict, 0))) return; if(fmt->image_width && fmt->image_height) { gavl_dictionary_set_int(m, GAVL_META_WIDTH, fmt->image_width); gavl_dictionary_set_int(m, GAVL_META_HEIGHT, fmt->image_height); } if((var = gavl_dictionary_get_string(sm, GAVL_META_FORMAT))) gavl_dictionary_set_string(m, GAVL_META_VIDEO_CODEC, var); } static void add_country_flag(gavl_dictionary_t * m, const char * code, int width) { // gavl_dictionary_t * u; // char * uri = gavl_sprintf("https://www.countryflags.io/%s/flat/%d.png", code, size); char * uri = gavl_sprintf("https://flagcdn.com/w%d/%c%c.png", width, tolower(code[0]), tolower(code[1])); gavl_metadata_add_src(m, GAVL_META_ICON_URL, "image/png", uri); // gavl_dictionary_set_int(u, GAVL_META_WIDTH, size); // gavl_dictionary_set_int(u, GAVL_META_HEIGHT, size); free(uri); } void gavl_track_finalize(gavl_dictionary_t * track) { gavl_time_t duration = GAVL_TIME_UNDEFINED; const char * media_class = NULL; const char * countrycode = NULL; gavl_dictionary_t * m; // gavl_dictionary_t * ; const char * var; int num_audio_streams; int num_video_streams; int num_subtitle_streams; char * basename = NULL; const char * location = NULL; const char * pos1; const char * pos2; gavl_array_t * arr; if((arr = gavl_dictionary_get_array_nc(track, GAVL_META_VARIANTS))) gavl_sort_tracks_by_quality(arr); if((arr = gavl_dictionary_get_array_nc(track, GAVL_META_STREAMS))) { gavl_array_foreach(arr, finalize_stream, track); } if(!(m = gavl_track_get_metadata_nc(track))) return; // fprintf(stderr, "gavl_track_finalize %s\n", // gavl_dictionary_get_string(m, GAVL_META_CLASS)); num_audio_streams = gavl_track_get_num_audio_streams(track); num_video_streams = gavl_track_get_num_video_streams(track); num_subtitle_streams = gavl_track_get_num_text_streams(track) + gavl_track_get_num_overlay_streams(track); gavl_metadata_get_src(m, GAVL_META_SRC, 0, NULL, &location); if(location && (pos1 = strrchr(location, '/')) && (pos2 = strrchr(location, '.')) && (pos2 > pos1)) { basename = gavl_strndup(pos1+1, pos2); } if(location && !gavl_dictionary_get(m, GAVL_META_HASH)) { char hash[GAVL_MD5_LENGTH]; gavl_md5_buffer_str(location, strlen(location), hash); gavl_dictionary_set_string(m, GAVL_META_HASH, hash); } media_class = gavl_dictionary_get_string(m, GAVL_META_CLASS); if(!media_class) { /* Figure out the media type */ if((num_audio_streams == 1) && !num_video_streams) { /* Audio file */ media_class = GAVL_META_CLASS_AUDIO_FILE; } else if(!num_audio_streams && !num_video_streams && num_subtitle_streams) { /* Subtitle file */ media_class = GAVL_META_CLASS_SUBTITLE_FILE; } else if(num_video_streams >= 1) { const gavl_video_format_t * fmt; if(!num_audio_streams && (num_video_streams == 1) && (fmt = gavl_track_get_video_format(track, 0)) && (fmt->framerate_mode == GAVL_FRAMERATE_STILL)) { /* Photo */ media_class = GAVL_META_CLASS_IMAGE; } else { /* Video */ media_class = GAVL_META_CLASS_VIDEO_FILE; } } } gavl_track_compute_duration(track); duration = GAVL_TIME_UNDEFINED; gavl_dictionary_get_long(m, GAVL_META_APPROX_DURATION, &duration); if(media_class) { if(!strcmp(media_class, GAVL_META_CLASS_AUDIO_FILE)) { finalize_audio(track); /* Check for audio broadcast */ if(gavl_dictionary_get(m, GAVL_META_STATION) && (duration == GAVL_TIME_UNDEFINED)) media_class = GAVL_META_CLASS_AUDIO_BROADCAST; /* Check for song */ else if(gavl_dictionary_get(m, GAVL_META_ARTIST) && gavl_dictionary_get(m, GAVL_META_TITLE) && gavl_dictionary_get(m, GAVL_META_ALBUM)) { media_class = GAVL_META_CLASS_SONG; } } else if(!strcmp(media_class, GAVL_META_CLASS_IMAGE)) { } else if(!strcmp(media_class, GAVL_META_CLASS_VIDEO_FILE)) { finalize_video(track); if(num_audio_streams > 0) finalize_audio(track); if((num_video_streams == 1)) { if(duration > 0) { /* Check for episode */ if(basename && detect_episode(basename, m)) media_class = GAVL_META_CLASS_TV_EPISODE; /* Check for movie */ else if(basename && detect_movie_multifile(basename, m)) media_class = GAVL_META_CLASS_MOVIE_PART; else if(basename && detect_movie_singlefile(basename, m)) media_class = GAVL_META_CLASS_MOVIE; } else if(gavl_dictionary_get(m, GAVL_META_STATION)) media_class = GAVL_META_CLASS_VIDEO_BROADCAST; } } } if(media_class && (!(var = gavl_dictionary_get_string(m, GAVL_META_CLASS)) || strcmp(var, media_class))) gavl_dictionary_set_string(m, GAVL_META_CLASS, media_class); if(basename) free(basename); media_class = gavl_dictionary_get_string(m, GAVL_META_CLASS); /* Add country flag */ if(media_class && !strcmp(media_class, GAVL_META_CLASS_CONTAINER_COUNTRY) && !gavl_dictionary_get(m, GAVL_META_ICON_URL)) { if(!(countrycode = gavl_dictionary_get_string(m, GAVL_META_COUNTRY_CODE_2))) { const char * label = gavl_dictionary_get_string(m, GAVL_META_LABEL); if(label) countrycode = gavl_get_country_code_2_from_label(label); } if(countrycode) { add_country_flag(m, countrycode, 160); add_country_flag(m, countrycode, 20); add_country_flag(m, countrycode, 40); add_country_flag(m, countrycode, 320); add_country_flag(m, countrycode, 640); } } /* Simplify one-variant streams and one-part movies */ if(gavl_track_get_num_variants(track) == 1) { const gavl_dictionary_t * vm = gavl_track_get_metadata(gavl_track_get_variant(track, 0)); gavl_dictionary_set(m, GAVL_META_SRC, gavl_dictionary_get(vm, GAVL_META_SRC)); gavl_dictionary_set(track, GAVL_META_VARIANTS, NULL); } else if(gavl_track_get_num_parts(track) == 1) { const gavl_dictionary_t * pm = gavl_track_get_metadata(gavl_track_get_part(track, 0)); gavl_dictionary_set(m, GAVL_META_SRC, gavl_dictionary_get(pm, GAVL_META_SRC)); gavl_dictionary_set(track, GAVL_META_PARTS, NULL); } /* Set default label */ gavl_track_set_label(track); } void gavl_track_set_label(gavl_dictionary_t * dict) { const char * klass; const char * var; gavl_dictionary_t * m; if(!(m = gavl_track_get_metadata_nc(dict))) return; if(gavl_dictionary_get_string(m, GAVL_META_LABEL)) return; klass = gavl_dictionary_get_string(m, GAVL_META_CLASS); if(klass) { if(!strcmp(klass, GAVL_META_CLASS_SONG)) { const char * title; char * artists; if((title = gavl_dictionary_get_string(m, GAVL_META_TITLE)) && (artists = gavl_metadata_join_arr(m, GAVL_META_ARTIST, ", "))) { gavl_dictionary_set_string_nocopy(m, GAVL_META_LABEL, gavl_sprintf("%s - %s", artists, title)); free(artists); } } else if(!strcmp(klass, GAVL_META_CLASS_MOVIE)) { const char * title; int year; if((year = gavl_dictionary_get_year(m, GAVL_META_DATE)) && (title = gavl_dictionary_get_string(m, GAVL_META_TITLE))) gavl_dictionary_set_string_nocopy(m, GAVL_META_LABEL, gavl_sprintf("%s (%d)", title, year)); } } if(gavl_dictionary_get_string(m, GAVL_META_LABEL)) return; if((var = gavl_dictionary_get_string(m, GAVL_META_TITLE)) || (var = gavl_dictionary_get_string(m, GAVL_META_STATION))) { gavl_dictionary_set_string(m, GAVL_META_LABEL, var); return; } if((gavl_metadata_get_src(m, GAVL_META_SRC, 0, NULL, &var))) { const char * pos1; const char * pos2; if(strstr(var, "://")) { gavl_dictionary_set_string(m, GAVL_META_LABEL, var); return; } if(!strstr(var, "track=") && (pos1 = strrchr(var, '/')) && (pos2 = strrchr(var, '.')) && (pos2 > pos1)) { if(gavl_dictionary_set_string_nocopy(m, GAVL_META_LABEL, gavl_strndup(pos1 + 1, pos2))) return; } } if(gavl_dictionary_set_string(m, GAVL_META_LABEL, "Unnamed track")) return; } gavl_time_t gavl_track_get_duration(const gavl_dictionary_t * dict) { gavl_time_t dur; const gavl_dictionary_t * m; if(!(m = gavl_track_get_metadata(dict))) return GAVL_TIME_UNDEFINED; if(gavl_dictionary_get_long(m, GAVL_META_APPROX_DURATION, &dur) && (dur > 0)) return dur; else return GAVL_TIME_UNDEFINED; } void gavl_track_set_duration(gavl_dictionary_t * dict, gavl_time_t dur) { gavl_dictionary_t * m = gavl_track_get_metadata_nc(dict); gavl_dictionary_set_long(m, GAVL_META_APPROX_DURATION, dur); } void gavl_track_set_num_audio_streams(gavl_dictionary_t * dict, int num) { int i; /* Delete previous streams */ while(gavl_track_delete_audio_stream(dict, 0)) ; for(i = 0; i < num; i++) gavl_track_append_audio_stream(dict); } void gavl_track_set_num_video_streams(gavl_dictionary_t * dict, int num) { int i; /* Delete previous streams */ while(gavl_track_delete_video_stream(dict, 0)) ; for(i = 0; i < num; i++) gavl_track_append_video_stream(dict); } void gavl_track_set_num_text_streams(gavl_dictionary_t * dict, int num) { int i; /* Delete previous streams */ while(gavl_track_delete_text_stream(dict, 0)) ; for(i = 0; i < num; i++) gavl_track_append_text_stream(dict); } void gavl_track_set_num_overlay_streams(gavl_dictionary_t * dict, int num) { int i; /* Delete previous streams */ while(gavl_track_delete_overlay_stream(dict, 0)) ; for(i = 0; i < num; i++) gavl_track_append_overlay_stream(dict); } int gavl_track_can_seek(const gavl_dictionary_t * track) { int val = 0; const gavl_dictionary_t * m; if(!(m = gavl_track_get_metadata(track)) || !gavl_dictionary_get_int(m, GAVL_META_CAN_SEEK, &val) || !val) return 0; return 1; } int gavl_track_can_pause(const gavl_dictionary_t * track) { int val = 0; const gavl_dictionary_t * m; if(!(m = gavl_track_get_metadata(track)) || !gavl_dictionary_get_int(m, GAVL_META_CAN_PAUSE, &val) || !val) return 0; return 1; } int gavl_track_is_async(const gavl_dictionary_t * track) { int val = 0; const gavl_dictionary_t * m; if(!(m = gavl_track_get_metadata(track)) || !gavl_dictionary_get_int(m, GAVL_META_ASYNC, &val) || !val) return 0; return 1; } int gavl_track_set_async(gavl_dictionary_t * track, int async) { gavl_dictionary_t * m; if(!(m = gavl_track_get_metadata_nc(track))) return 0; if(async) gavl_dictionary_set_int(m, GAVL_META_ASYNC, async); else gavl_dictionary_set(m, GAVL_META_ASYNC, NULL); return 1; } #define META_GUI "gui" void gavl_track_set_gui_state(gavl_dictionary_t * track, const char * state, int val) { int old_val = 0; gavl_dictionary_t * gui = gavl_dictionary_get_dictionary_create(track, META_GUI); gavl_dictionary_get_int(track, state, &old_val); if((val < 0) || (val > 1)) val = !old_val; gavl_dictionary_set_int(gui, state, val); } void gavl_tracks_set_gui_state(gavl_array_t * tracks, const char * state, int val, int start, int end) { int i; gavl_dictionary_t * track; if(end < 0) end = tracks->num_entries; for(i = start; i < end; i++) { if((track = gavl_value_get_dictionary_nc(&tracks->entries[i]))) gavl_track_set_gui_state(track, state, val); } } int gavl_track_get_gui_state(const gavl_dictionary_t * track, const char * state) { int ret = 0; const gavl_dictionary_t * gui = gavl_dictionary_get_dictionary(track, META_GUI); if(!gui || !gavl_dictionary_get_int(gui, state, &ret)) return 0; return ret; } void gavl_track_clear_gui_state(gavl_dictionary_t * track) { gavl_dictionary_set(track, META_GUI, NULL); } void gavl_track_copy_gui_state(gavl_dictionary_t * dst, const gavl_dictionary_t * src) { gavl_dictionary_t * dst_gui; gavl_dictionary_t tmp; const gavl_dictionary_t * src_gui = gavl_dictionary_get_dictionary(src, META_GUI); if(!src_gui) return; dst_gui = gavl_dictionary_get_dictionary_create(dst, META_GUI); gavl_dictionary_init(&tmp); gavl_dictionary_merge(&tmp, src_gui, dst_gui); gavl_dictionary_reset(dst_gui); gavl_dictionary_move(dst_gui, &tmp); } void gavl_track_merge(gavl_dictionary_t * dst, const gavl_dictionary_t * src) { int num_streams; int i; const gavl_audio_format_t * afmt_src; gavl_audio_format_t * afmt_dst; const gavl_video_format_t * vfmt_src; gavl_video_format_t * vfmt_dst; const gavl_dictionary_t * src_m; gavl_dictionary_t * dst_m; const gavl_dictionary_t * src_s; gavl_dictionary_t * dst_s; gavl_compression_info_t ci; src_m = gavl_track_get_metadata(src); dst_m = gavl_track_get_metadata_nc(dst); gavl_dictionary_merge2(dst_m, src_m); num_streams = gavl_track_get_num_streams_all(src); for(i = 0; i < num_streams; i++) { if(!(src_s = gavl_track_get_stream_all(src, i)) || !(dst_s = gavl_track_get_stream_all_nc(dst, i))) break; src_m = gavl_stream_get_metadata(src_s); dst_m = gavl_stream_get_metadata_nc(dst_s); gavl_dictionary_merge2(dst_m, src_m); if((afmt_src = gavl_stream_get_audio_format(src_s)) && (afmt_dst = gavl_stream_get_audio_format_nc(dst_s))) gavl_audio_format_copy(afmt_dst, afmt_src); if((vfmt_src = gavl_stream_get_video_format(src_s)) && (vfmt_dst = gavl_stream_get_video_format_nc(dst_s))) gavl_video_format_copy(vfmt_dst, vfmt_src); gavl_compression_info_init(&ci); if(gavl_stream_get_compression_info(src, &ci)) { gavl_stream_set_compression_info(dst, &ci); gavl_compression_info_free(&ci); } } } void gavl_track_update_children(gavl_dictionary_t * dict) { int i; const char * klass; gavl_dictionary_t * m; gavl_dictionary_t * tm; gavl_dictionary_t * track; gavl_array_t * arr; int num_items = 0; int num_containers = 0; gavl_time_t duration = 0; gavl_time_t track_duration = GAVL_TIME_UNDEFINED; arr = gavl_get_tracks_nc(dict); m = gavl_dictionary_get_dictionary_create(dict, GAVL_META_METADATA); // fprintf(stderr, "gavl_track_update_children %p\n", dict); // gavl_dictionary_dump(dict, 2); for(i = 0; i < arr->num_entries; i++) { // if(!()) // fprintf(stderr, "Blupp %d %p %d %p\n", i, arr, arr->num_entries, arr->entries); if((track = gavl_get_track_nc(dict, i)) && (tm = gavl_dictionary_get_dictionary_create(track, GAVL_META_METADATA))) { gavl_dictionary_set_int(tm, GAVL_META_IDX, i); gavl_dictionary_set_int(tm, GAVL_META_TOTAL, arr->num_entries); if((klass = gavl_dictionary_get_string(tm, GAVL_META_CLASS))) { if(gavl_string_starts_with(klass, "item")) num_items++; else if(gavl_string_starts_with(klass, "container")) num_containers++; } if(duration != GAVL_TIME_UNDEFINED) { if(gavl_dictionary_get_long(tm, GAVL_META_APPROX_DURATION, &track_duration) && (track_duration > 0)) duration += track_duration; else duration = GAVL_TIME_UNDEFINED; } } } gavl_dictionary_set_long(m, GAVL_META_APPROX_DURATION, duration); if(num_items + num_containers == arr->num_entries) gavl_track_set_num_children(dict, num_containers, num_items); else // Fallback gavl_track_set_num_children(dict, arr->num_entries, arr->num_entries); } const char * gavl_track_get_id(const gavl_dictionary_t * dict) { const gavl_dictionary_t * m; if((m = gavl_track_get_metadata(dict))) return gavl_dictionary_get_string(m, GAVL_META_ID); else return NULL; } const char * gavl_track_get_media_class(const gavl_dictionary_t * dict) { const gavl_dictionary_t * m; if((m = gavl_track_get_metadata(dict))) return gavl_dictionary_get_string(m, GAVL_META_CLASS); else return NULL; } void gavl_track_set_lock(gavl_dictionary_t * track, int lock) { gavl_dictionary_t * m; m = gavl_track_get_metadata_nc(track); // if(lock) gavl_dictionary_set_int(m, GAVL_META_LOCKED, lock); // else // gavl_dictionary_set(m, GAVL_META_LOCKED, NULL); } int gavl_track_is_locked(const gavl_dictionary_t * track) { int locked = 0; const gavl_dictionary_t * m; if((m = gavl_track_get_metadata(track)) && (gavl_dictionary_get_int(m, GAVL_META_LOCKED, &locked))) return locked; else return 0; } void gavl_track_set_id_nocopy(gavl_dictionary_t * dict, char * id) { gavl_dictionary_t * m = gavl_dictionary_get_dictionary_create(dict, GAVL_META_METADATA); gavl_dictionary_set_string_nocopy(m, GAVL_META_ID, id); } void gavl_track_set_id(gavl_dictionary_t * dict, const char * id) { gavl_track_set_id_nocopy(dict, gavl_strdup(id)); } int gavl_get_track_idx_by_id(const gavl_dictionary_t * dict, const char * id) { int i; const gavl_dictionary_t * track; const gavl_dictionary_t * m; const char * track_id; int num = gavl_get_num_tracks(dict); for(i = 0; i < num; i++) { if((track = gavl_get_track(dict, i)) && (m = gavl_track_get_metadata(track)) && (track_id = gavl_dictionary_get_string(m, GAVL_META_ID)) && !strcmp(track_id, id)) return i; } return -1; } const gavl_dictionary_t * gavl_get_track_by_string(const gavl_dictionary_t * dict, const char * tag, const char * val) { int i; const gavl_dictionary_t * track; const gavl_dictionary_t * m; const char * track_val; int num = gavl_get_num_tracks(dict); for(i = 0; i < num; i++) { if((track = gavl_get_track(dict, i)) && (m = gavl_track_get_metadata(track)) && (track_val = gavl_dictionary_get_string(m, tag)) && !strcmp(track_val, val)) return track; } return NULL; } const gavl_dictionary_t * gavl_get_track_by_id(const gavl_dictionary_t * dict, const char * id) { return gavl_get_track_by_string(dict, GAVL_META_ID, id); } const gavl_dictionary_t * gavl_get_track_by_string_arr(const gavl_array_t * arr, const char * tag, const char * val) { int i; const gavl_dictionary_t * track; const gavl_dictionary_t * m; const char * track_val; for(i = 0; i < arr->num_entries; i++) { if((track = gavl_value_get_dictionary(&arr->entries[i])) && (m = gavl_track_get_metadata(track)) && (track_val = gavl_dictionary_get_string(m, tag)) && !strcmp(track_val, val)) return track; } return NULL; } const gavl_dictionary_t * gavl_get_track_by_id_arr(const gavl_array_t * arr, const char * id) { return gavl_get_track_by_string_arr(arr, GAVL_META_ID, id); } gavl_dictionary_t * gavl_get_track_by_id_arr_nc(gavl_array_t * arr, const char * id) { int i; gavl_dictionary_t * track; const gavl_dictionary_t * m; const char * track_id; for(i = 0; i < arr->num_entries; i++) { if((track = gavl_value_get_dictionary_nc(&arr->entries[i])) && (m = gavl_track_get_metadata(track)) && (track_id = gavl_dictionary_get_string(m, GAVL_META_ID)) && !strcmp(track_id, id)) return track; } return NULL; } int gavl_get_track_idx_by_id_arr(const gavl_array_t * arr, const char * id) { int i; const gavl_dictionary_t * track; const gavl_dictionary_t * m; const char * track_id; for(i = 0; i < arr->num_entries; i++) { if((track = gavl_value_get_dictionary_nc(&arr->entries[i])) && (m = gavl_track_get_metadata(track)) && (track_id = gavl_dictionary_get_string(m, GAVL_META_ID)) && !strcmp(track_id, id)) return i; } return -1; } gavl_dictionary_t * gavl_get_track_by_id_nc(gavl_dictionary_t * dict, const char * id) { int i; gavl_dictionary_t * track; const gavl_dictionary_t * m; const char * track_id; int num = gavl_get_num_tracks(dict); for(i = 0; i < num; i++) { if((track = gavl_get_track_nc(dict, i)) && (m = gavl_track_get_metadata(track)) && (track_id = gavl_dictionary_get_string(m, GAVL_META_ID)) && !strcmp(track_id, id)) return track; } return NULL; } static int compare_metadata_string(const void * p1, const void * p2, void * data) { const char * s1; const char * s2; const gavl_dictionary_t * dict1; const gavl_dictionary_t * dict2; if(!(dict1 = gavl_value_get_dictionary(p1)) || !(dict2 = gavl_value_get_dictionary(p2)) || !(dict1 = gavl_track_get_metadata(dict1)) || !(dict2 = gavl_track_get_metadata(dict2)) || !(s1 = gavl_dictionary_get_string(dict1, data)) || !(s2 = gavl_dictionary_get_string(dict2, data))) return 0; return strcoll(s1, s2); } void gavl_sort_tracks_by_label(gavl_array_t * arr) { gavl_array_sort(arr, compare_metadata_string, GAVL_META_LABEL); } static int compare_metadata_int_reverse(const void * p1, const void * p2, void * data) { int i1 = 0; int i2 = 0; const gavl_dictionary_t * dict1; const gavl_dictionary_t * dict2; if(!(dict1 = gavl_value_get_dictionary(p1)) || !(dict2 = gavl_value_get_dictionary(p2)) || !(dict1 = gavl_track_get_metadata(dict1)) || !(dict2 = gavl_track_get_metadata(dict2)) || !gavl_dictionary_get_int(dict1, data, &i1) || !gavl_dictionary_get_int(dict2, data, &i2)) return 0; return (i2 - i1); } void gavl_sort_tracks_by_bitrate(gavl_array_t * arr) { gavl_array_sort(arr, compare_metadata_int_reverse, GAVL_META_BITRATE); } static int compare_quality(const void * p1, const void * p2, void * data) { int i1 = 0; int i2 = 0; const gavl_dictionary_t * dict1; const gavl_dictionary_t * dict2; if(!(dict1 = gavl_value_get_dictionary(p1)) || !(dict2 = gavl_value_get_dictionary(p2)) || !(dict1 = gavl_track_get_metadata(dict1)) || !(dict2 = gavl_track_get_metadata(dict2))) return 0; if(gavl_dictionary_get_int(dict1, GAVL_META_BITRATE, &i1) && gavl_dictionary_get_int(dict2, GAVL_META_BITRATE, &i2) && (i1 != i2)) return (i2 - i1); if(gavl_dictionary_get_int(dict1, GAVL_META_WIDTH, &i1) && gavl_dictionary_get_int(dict2, GAVL_META_WIDTH, &i2) && (i1 != i2)) return (i2 - i1); if(gavl_dictionary_get_int(dict1, GAVL_META_AUDIO_SAMPLERATE, &i1) && gavl_dictionary_get_int(dict2, GAVL_META_AUDIO_SAMPLERATE, &i2) && (i1 != i2)) return (i2 - i1); if(gavl_dictionary_get_int(dict1, GAVL_META_AUDIO_CHANNELS, &i1) && gavl_dictionary_get_int(dict2, GAVL_META_AUDIO_CHANNELS, &i2) && (i1 != i2)) return (i2 - i1); return 0; } void gavl_sort_tracks_by_quality(gavl_array_t * arr) { gavl_array_sort(arr, compare_quality, NULL); } /* Compression info */ #if 0 uint32_t flags; //!< ORed combination of GAVL_COMPRESSION_* flags gavl_codec_id_t id; //!< Codec ID uint8_t * global_header; //!< Global header uint32_t global_header_len; //!< Length of global header int32_t bitrate; //!< Needed by some codecs, negative values mean VBR int palette_size; //!< Size of the embedded palette for image codecs int pre_skip; //!< Samples to skip at the start uint32_t video_buffer_size; //!< VBV buffer size for video (in BYTES) uint32_t max_packet_size; //!< Maximum packet size or 0 if unknown uint32_t max_ref_frames; //!< Maximum reference frames (if > 2) #endif #define COMPRESSION_INFO_KEY GAVL_META_STREAM_COMPRESSION_INFO #define COMPRESSION_INFO_KEY_FLAGS "flg" #define COMPRESSION_INFO_KEY_ID "id" #define COMPRESSION_INFO_KEY_BITRATE "br" #define COMPRESSION_INFO_KEY_PALETTE_SIZE "ps" #define COMPRESSION_INFO_KEY_TAG "tag" #define COMPRESSION_INFO_KEY_BLOCK_ALIGN "block_align" #define COMPRESSION_INFO_KEY_HEAD "head" #define GET_INT(key, member) gavl_dictionary_get_int(cmp, key, &ret->member) #define SET_INT(key, member) if(info->member) gavl_dictionary_set_int(cmp, key, info->member) int gavl_stream_get_compression_info(const gavl_dictionary_t * s, gavl_compression_info_t * ret) { int val_i = GAVL_CODEC_ID_NONE; const gavl_buffer_t * buf; const gavl_dictionary_t * cmp; if(!(cmp = gavl_dictionary_get_dictionary(s, COMPRESSION_INFO_KEY))) return 0; if(!ret) return 1; if(gavl_dictionary_get_int(cmp, COMPRESSION_INFO_KEY_ID, &val_i)) ret->id = val_i; if(gavl_dictionary_get_int(cmp, COMPRESSION_INFO_KEY_TAG, &val_i)) ret->codec_tag = val_i; GET_INT(COMPRESSION_INFO_KEY_FLAGS, flags); GET_INT(COMPRESSION_INFO_KEY_BITRATE, bitrate); GET_INT(COMPRESSION_INFO_KEY_PALETTE_SIZE, palette_size); GET_INT(COMPRESSION_INFO_KEY_BLOCK_ALIGN, block_align); if((buf = gavl_dictionary_get_binary(cmp, COMPRESSION_INFO_KEY_HEAD)) && (buf->len > 0)) { gavl_buffer_reset(&ret->codec_header); gavl_buffer_append_pad(&ret->codec_header, buf, GAVL_PACKET_PADDING); } return 1; } int gavl_track_get_audio_compression_info(const gavl_dictionary_t * t, int idx, gavl_compression_info_t * ret) { if(!(t = gavl_track_get_audio_stream(t, idx))) return 0; return gavl_stream_get_compression_info(t, ret); } int gavl_track_get_video_compression_info(const gavl_dictionary_t * t, int idx, gavl_compression_info_t * ret) { if(!(t = gavl_track_get_video_stream(t, idx))) return 0; return gavl_stream_get_compression_info(t, ret); } int gavl_track_get_overlay_compression_info(const gavl_dictionary_t * t, int idx, gavl_compression_info_t * ret) { if(!(t = gavl_track_get_overlay_stream(t, idx))) return 0; return gavl_stream_get_compression_info(t, ret); } void gavl_stream_set_compression_info(gavl_dictionary_t * s, const gavl_compression_info_t * info) { gavl_dictionary_t * cmp; #if 0 if(info->codec_header.len && !info->id) { fprintf(stderr, "gavl_stream_set_compression_info: %p\n", s); gavl_compression_info_dump(info); } #endif cmp = gavl_dictionary_get_dictionary_create(s, COMPRESSION_INFO_KEY); gavl_dictionary_reset(cmp); SET_INT(COMPRESSION_INFO_KEY_FLAGS, flags); SET_INT(COMPRESSION_INFO_KEY_ID, id); SET_INT(COMPRESSION_INFO_KEY_TAG, codec_tag); SET_INT(COMPRESSION_INFO_KEY_BITRATE, bitrate); SET_INT(COMPRESSION_INFO_KEY_PALETTE_SIZE, palette_size); SET_INT(COMPRESSION_INFO_KEY_BLOCK_ALIGN, block_align); if(info->codec_header.len > 0) { gavl_value_t val; gavl_buffer_t * buf; gavl_value_init(&val); buf = gavl_value_set_binary(&val); gavl_buffer_copy(buf, &info->codec_header); gavl_dictionary_set_nocopy(cmp, COMPRESSION_INFO_KEY_HEAD, &val); } } int gavl_stream_get_sample_timescale(const gavl_dictionary_t * s) { gavl_stream_type_t t; t = gavl_stream_get_type(s); switch(t) { case GAVL_STREAM_AUDIO: { const gavl_audio_format_t * afmt; if((afmt = gavl_dictionary_get_audio_format(s, GAVL_META_STREAM_FORMAT))) return afmt->samplerate; } break; case GAVL_STREAM_TEXT: case GAVL_STREAM_MSG: { int scale = 0; const gavl_dictionary_t * m = gavl_stream_get_metadata(s); if(gavl_dictionary_get_int(m, GAVL_META_STREAM_SAMPLE_TIMESCALE, &scale)) return scale; } break; case GAVL_STREAM_OVERLAY: case GAVL_STREAM_VIDEO: { const gavl_video_format_t * vfmt; if((vfmt = gavl_dictionary_get_video_format(s, GAVL_META_STREAM_FORMAT))) return vfmt->timescale; } break; case GAVL_STREAM_NONE: return 0; } return 0; } /* void gavl_sort_tracks_by_metadata_long(gavl_dictionary_t * dict, const char * str) { } */ int gavl_stream_get_pts_range(const gavl_dictionary_t * s, int64_t * start, int64_t * end) { gavl_stream_stats_t stats; if(!gavl_stream_get_stats(s, &stats)) return 0; if((stats.pts_start == GAVL_TIME_UNDEFINED) || (stats.pts_end == GAVL_TIME_UNDEFINED)) return 0; *start = stats.pts_start; *end = stats.pts_end; return 1; } int gavl_track_get_num_children(const gavl_dictionary_t * track) { int ret = 0; const gavl_dictionary_t * m; if(!(m = gavl_track_get_metadata(track)) || !gavl_dictionary_get_int(m, GAVL_META_NUM_CHILDREN, &ret)) return 0; return ret; } int gavl_track_get_num_item_children(const gavl_dictionary_t * track) { int ret = 0; const gavl_dictionary_t * m; if(!(m = gavl_track_get_metadata(track)) || !gavl_dictionary_get_int(m, GAVL_META_NUM_ITEM_CHILDREN, &ret)) return 0; return ret; } int gavl_track_get_num_container_children(const gavl_dictionary_t * track) { int ret = 0; const gavl_dictionary_t * m; if(!(m = gavl_track_get_metadata(track)) || !gavl_dictionary_get_int(m, GAVL_META_NUM_CONTAINER_CHILDREN, &ret)) return 0; return ret; } void gavl_track_set_num_children(gavl_dictionary_t * track, int num_container_children, int num_item_children) { gavl_dictionary_t * m; if(!(m = gavl_track_get_metadata_nc(track))) return; if(num_container_children) gavl_dictionary_set_int(m, GAVL_META_NUM_CONTAINER_CHILDREN, num_container_children); else gavl_dictionary_set(m, GAVL_META_NUM_CONTAINER_CHILDREN, NULL); if(num_item_children) gavl_dictionary_set_int(m, GAVL_META_NUM_ITEM_CHILDREN, num_item_children); else gavl_dictionary_set(m, GAVL_META_NUM_ITEM_CHILDREN, NULL); if(num_container_children + num_item_children) gavl_dictionary_set_int(m, GAVL_META_NUM_CHILDREN, num_container_children + num_item_children); else gavl_dictionary_set(m, GAVL_META_NUM_CHILDREN, NULL); } const char * gavl_get_country_label(const char * iso) { int i = 0; if(strlen(iso) == 2) { while(gavl_countries[i].label) { if(!strcmp(iso, gavl_countries[i].code_alpha_2)) return gavl_countries[i].label; i++; } } else if(strlen(iso) == 3) { while(gavl_countries[i].label) { if(!strcmp(iso, gavl_countries[i].code_alpha_3)) return gavl_countries[i].label; i++; } } return iso; } const char * gavl_get_country_code_2_from_label(const char * label) { int i = 0; while(gavl_countries[i].label) { if(!strcmp(label, gavl_countries[i].label)) { return gavl_countries[i].code_alpha_2; } i++; } return NULL; } const char * gavl_get_country_code_3_from_label(const char * label) { int i = 0; while(gavl_countries[i].label) { if(!strcmp(label, gavl_countries[i].label)) { return gavl_countries[i].code_alpha_3; } i++; } return NULL; } void gavl_track_set_countries(gavl_dictionary_t * track) { int i, num; gavl_dictionary_t * m; const gavl_value_t * src; const char * src_str = NULL; const char * dst_str; gavl_value_t dest; gavl_value_t dest_item; if(!(m = gavl_track_get_metadata_nc(track))) return; if((num = gavl_dictionary_get_num_items(m, GAVL_META_COUNTRY_CODE_2))) { if(!gavl_dictionary_get(m, GAVL_META_COUNTRY)) { gavl_value_init(&dest); for(i = 0; i < num; i++) { gavl_value_init(&dest_item); if((src = gavl_dictionary_get_item(m, GAVL_META_COUNTRY_CODE_2, i)) && (src_str = gavl_value_get_string(src)) && (dst_str = gavl_get_country_label(src_str))) { gavl_value_set_string(&dest_item, dst_str); } else gavl_value_set_string(&dest_item, src_str); gavl_value_append_nocopy(&dest, &dest_item); } gavl_dictionary_set_nocopy(m, GAVL_META_COUNTRY, &dest); } } #if 0 else if((num = gavl_dictionary_get_num_items(m, GAVL_META_COUNTRY_CODE_3))) { int do_code_2 = 0; int do_label = 0; gavl_value_t label; gavl_value_t label_item; if(!gavl_dictionary_get(m, GAVL_META_COUNTRY_CODE_2)) do_code_2 = 1; if(!gavl_dictionary_get(m, GAVL_META_COUNTRY)) do_label = 1; if(do_code_2 || do_label) { gavl_value_init(&dest); gavl_value_init(&label); for(i = 0; i < num; i++) { gavl_value_init(&dest_item); gavl_value_init(&label_item); if((src = gavl_dictionary_get_item(m, GAVL_META_COUNTRY_CODE_3, i)) && (src_str = gavl_value_get_string(src)) && (dst_str = gavl_get_country_label(src_str))) { gavl_value_set_string(&label_item, dst_str); } else if(src_str) gavl_value_set_string(&label_item, src_str); else gavl_value_set_string(&label_item, "Unknown"); if(do_code_2) { dst_str = gavl_get_country_code_2_from_label(gavl_value_get_string(&label_item)); if(!dst_str) dst_str = "--"; gavl_value_set_string(&dest_item, dst_str); } gavl_value_append_nocopy(&label, &label_item); } if(do_label) gavl_dictionary_set_nocopy(m, GAVL_META_COUNTRY, &label); else gavl_value_free(&label); if(do_code_2) gavl_dictionary_set_nocopy(m, GAVL_META_COUNTRY_CODE_2, &dest); else gavl_value_free(&dest); } } #endif else if((num = gavl_dictionary_get_num_items(m, GAVL_META_COUNTRY))) { /* Set alpha 2 code */ if(!gavl_dictionary_get(m, GAVL_META_COUNTRY_CODE_2)) { gavl_value_init(&dest); for(i = 0; i < num; i++) { gavl_value_init(&dest_item); if((src = gavl_dictionary_get_item(m, GAVL_META_COUNTRY, i)) && (src_str = gavl_value_get_string(src)) && (dst_str = gavl_get_country_code_2_from_label(src_str))) { gavl_value_set_string(&dest_item, dst_str); } else gavl_value_set_string(&dest_item, src_str); gavl_value_append_nocopy(&dest, &dest_item); } gavl_dictionary_set_nocopy(m, GAVL_META_COUNTRY_CODE_2, &dest); } } } int gavl_stream_is_enabled(const gavl_dictionary_t * s) { int val = 0; const gavl_dictionary_t * m; if((m = gavl_stream_get_metadata(s)) && gavl_dictionary_get_int(m, GAVL_META_STREAM_ENABLED, &val) && val) return 1; else return 0; } void gavl_stream_set_enabled(gavl_dictionary_t * s, int enabled) { gavl_dictionary_t * m; m = gavl_dictionary_get_dictionary_create(s, GAVL_META_METADATA); gavl_dictionary_set_int(m, GAVL_META_STREAM_ENABLED, enabled); } #if 0 void gavl_stream_set_start_pts(gavl_dictionary_t * s, int64_t pts, int scale) { gavl_dictionary_t * m = gavl_dictionary_get_dictionary_nc(s, GAVL_META_METADATA); gavl_dictionary_set_long(m, GAVL_META_STREAM_FIRST_PTS, pts); gavl_dictionary_set_int(m, GAVL_META_STREAM_FIRST_PTS_SCALE, scale); } void gavl_stream_get_start_pts(const gavl_dictionary_t * s, int64_t * pts, int * scale) { const gavl_dictionary_t * m = gavl_dictionary_get_dictionary(s, GAVL_META_METADATA); *pts = 0; gavl_dictionary_get_long(m, GAVL_META_STREAM_FIRST_PTS, pts); *scale = GAVL_TIME_SCALE; gavl_dictionary_get_int(m, GAVL_META_STREAM_FIRST_PTS_SCALE, scale); } #endif gavl_time_t gavl_stream_get_start_time(const gavl_dictionary_t * s) { int timescale = 0; gavl_stream_stats_t stats; const gavl_dictionary_t * m = NULL; // fprintf(stderr, "Get start time:\n"); // gavl_dictionary_dump(s->s, 2); gavl_stream_stats_init(&stats); if((gavl_stream_get_stats(s, &stats)) && (m = gavl_stream_get_metadata(s)) && gavl_dictionary_get_int(m, GAVL_META_STREAM_SAMPLE_TIMESCALE, ×cale)) return gavl_time_unscale(timescale, stats.pts_start); else return 0; } gavl_time_t gavl_track_get_start_time(const gavl_dictionary_t * dict) { const gavl_dictionary_t * d; if((d = gavl_track_get_audio_stream(dict, 0)) || (d = gavl_track_get_video_stream(dict, 0))) return gavl_stream_get_start_time(d); else return 0; } int gavl_stream_get_compression_tag(const gavl_dictionary_t * s) { int ret = 0; const gavl_dictionary_t * cmp; if(!(cmp = gavl_dictionary_get_dictionary(s, COMPRESSION_INFO_KEY)) || !gavl_dictionary_get_int(cmp, COMPRESSION_INFO_KEY_TAG, &ret)) return 0; else return ret; } void gavl_stream_set_compression_tag(gavl_dictionary_t * s, int tag) { gavl_dictionary_t * cmp; cmp = gavl_dictionary_get_dictionary_create(s, COMPRESSION_INFO_KEY); gavl_dictionary_set_int(cmp, COMPRESSION_INFO_KEY_TAG, tag); } void gavl_stream_set_sample_timescale(gavl_dictionary_t * s) { gavl_stream_type_t type; gavl_dictionary_t * m; int scale = 0; m = gavl_stream_get_metadata_nc(s); type = gavl_stream_get_type(s); // fprintf(stderr, "gavl_stream_set_sample_timescale %s\n", gavl_stream_type_name(type)); // gavl_dictionary_dump(s, 2); if(!(m = gavl_stream_get_metadata_nc(s)) || (gavl_dictionary_get_int(m, GAVL_META_STREAM_SAMPLE_TIMESCALE, &scale) && scale)) return; switch(type) { case GAVL_STREAM_AUDIO: { const gavl_audio_format_t * fmt; if((fmt = gavl_stream_get_audio_format(s)) && fmt->samplerate) gavl_dictionary_set_int(m, GAVL_META_STREAM_SAMPLE_TIMESCALE, fmt->samplerate); } break; case GAVL_STREAM_VIDEO: { const gavl_video_format_t * fmt; if((fmt = gavl_stream_get_video_format(s)) && fmt->timescale) gavl_dictionary_set_int(m, GAVL_META_STREAM_SAMPLE_TIMESCALE, fmt->timescale); } default: break; } } void gavl_stream_set_default_packet_timescale(gavl_dictionary_t * s) { gavl_stream_type_t type; gavl_dictionary_t * m; int scale = 0; m = gavl_stream_get_metadata_nc(s); type = gavl_stream_get_type(s); if(!(m = gavl_stream_get_metadata_nc(s)) || (gavl_dictionary_get_int(m, GAVL_META_STREAM_PACKET_TIMESCALE, &scale) && scale)) return; switch(type) { case GAVL_STREAM_AUDIO: { const gavl_audio_format_t * fmt; if((fmt = gavl_stream_get_audio_format(s)) && fmt->samplerate) gavl_dictionary_set_int(m, GAVL_META_STREAM_PACKET_TIMESCALE, fmt->samplerate); } break; case GAVL_STREAM_VIDEO: { const gavl_video_format_t * fmt; if((fmt = gavl_stream_get_video_format(s)) && fmt->timescale) gavl_dictionary_set_int(m, GAVL_META_STREAM_PACKET_TIMESCALE, fmt->timescale); } default: break; } } void gavl_stream_set_audio_bits(gavl_dictionary_t * s, int bits) { gavl_dictionary_set_int(s, GAVL_META_AUDIO_BITS, bits); } int gavl_stream_get_audio_bits(const gavl_dictionary_t * s) { int ret = 0; gavl_dictionary_get_int(s, GAVL_META_AUDIO_BITS, &ret); return ret; } int gavl_stream_is_continuous(const gavl_dictionary_t * s) { gavl_stream_type_t type; type = gavl_stream_get_type(s); switch(type) { case GAVL_STREAM_AUDIO: return 1; break; case GAVL_STREAM_VIDEO: { const gavl_video_format_t * fmt = gavl_stream_get_video_format(s); if(fmt && (fmt->framerate_mode == GAVL_FRAMERATE_STILL)) return 0; else return 1; } break; case GAVL_STREAM_TEXT: case GAVL_STREAM_OVERLAY: case GAVL_STREAM_MSG: case GAVL_STREAM_NONE: return 0; break; } return 0; } static int has_external_stream(gavl_dictionary_t * track, const char * location) { int i; const char * loc = NULL; const gavl_dictionary_t * dict; const gavl_array_t * arr = gavl_dictionary_get_array(track, GAVL_META_STREAMS_EXT); if(!arr) return 0; for(i = 0; i < arr->num_entries; i++) { if((dict = gavl_value_get_dictionary(&arr->entries[i])) && (gavl_track_get_src(dict, GAVL_META_SRC, 0, NULL, &loc)) && !strcmp(loc, location)) return 1; } return 0; } gavl_dictionary_t * gavl_track_append_external_stream(gavl_dictionary_t * track, gavl_stream_type_t type, const char * mimetype, const char * location) { gavl_dictionary_t * m; gavl_dictionary_t * ret; if(has_external_stream(track, location)) return NULL; ret = track_append_stream(track, type, GAVL_META_STREAMS_EXT); m = gavl_stream_get_metadata_nc(ret); gavl_metadata_add_src(m, GAVL_META_SRC, mimetype, location); return ret; } int gavl_track_get_num_external_streams(const gavl_dictionary_t * d) { const gavl_array_t * arr; if(!(arr = gavl_dictionary_get_array(d, GAVL_META_STREAMS_EXT))) return 0; return arr->num_entries; } const gavl_dictionary_t * gavl_track_get_external_stream(const gavl_dictionary_t * d, int i) { const gavl_array_t * arr; const gavl_value_t * val; const gavl_dictionary_t * dict; if(!(arr = gavl_dictionary_get_array(d, GAVL_META_STREAMS_EXT))) return NULL; if((val = gavl_array_get(arr, i)) && (dict = gavl_value_get_dictionary(val))) return dict; else return NULL; } gavl_dictionary_t * gavl_track_get_external_stream_nc(gavl_dictionary_t * d, int i) { gavl_array_t * arr; gavl_value_t * val; gavl_dictionary_t * dict; if(!(arr = gavl_dictionary_get_array_nc(d, GAVL_META_STREAMS_EXT))) return NULL; if((val = gavl_array_get_nc(arr, i)) && (dict = gavl_value_get_dictionary_nc(val))) return dict; else return NULL; } // Multivariant support int gavl_track_get_num_variants(const gavl_dictionary_t * dict) { return get_num_tracks(dict, GAVL_META_VARIANTS); } const gavl_dictionary_t * gavl_track_get_variant(const gavl_dictionary_t * dict, int idx) { return get_track(dict, GAVL_META_VARIANTS, idx); } gavl_dictionary_t * gavl_track_get_variant_nc(gavl_dictionary_t * dict, int idx) { return get_track_nc(dict, GAVL_META_VARIANTS, idx); } gavl_dictionary_t * gavl_track_append_variant(gavl_dictionary_t * dict, const char * mimetype, const char * location) { gavl_dictionary_t * new_track = append_track(dict, GAVL_META_VARIANTS); gavl_track_add_src(new_track, GAVL_META_SRC, mimetype, location); return new_track; } // Multipart support int gavl_track_get_num_parts(const gavl_dictionary_t * dict) { return get_num_tracks(dict, GAVL_META_PARTS); } gavl_dictionary_t * gavl_track_append_part(gavl_dictionary_t * dict, const char * mimetype, const char * location) { gavl_dictionary_t * new_track = append_track(dict, GAVL_META_PARTS); gavl_track_add_src(new_track, GAVL_META_SRC, mimetype, location); return new_track; } const gavl_dictionary_t * gavl_track_get_part(const gavl_dictionary_t * dict, int idx) { return get_track(dict, GAVL_META_PARTS, idx); } gavl_dictionary_t * gavl_track_get_part_nc(gavl_dictionary_t * dict, int idx) { return get_track_nc(dict, GAVL_META_PARTS, idx); } /* SRC */ GAVL_PUBLIC gavl_dictionary_t * gavl_track_add_src(gavl_dictionary_t * dict, const char * key, const char * mimetype, const char * location) { if((dict = gavl_track_get_metadata_nc(dict))) return gavl_metadata_add_src(dict, key, mimetype, location); else return NULL; } GAVL_PUBLIC const gavl_dictionary_t * gavl_track_get_src(const gavl_dictionary_t * dict, const char * key, int idx, const char ** mimetype, const char ** location) { if((dict = gavl_track_get_metadata(dict))) return gavl_metadata_get_src(dict, key, idx, mimetype, location); else return NULL; } gavl_dictionary_t * gavl_track_get_src_nc(gavl_dictionary_t * dict, const char * key, int idx) { if((dict = gavl_track_get_metadata_nc(dict))) return gavl_metadata_get_src_nc(dict, key, idx); else return NULL; } int gavl_track_has_src(const gavl_dictionary_t * dict, const char * key, const char * location) { if((dict = gavl_track_get_metadata(dict))) return gavl_metadata_has_src(dict, key, location); else return 0; } void gavl_track_from_location(gavl_dictionary_t * ret, const char * location) { gavl_dictionary_t * m; track_init(ret); m = gavl_track_get_metadata_nc(ret); gavl_dictionary_set_string(m, GAVL_META_CLASS, GAVL_META_CLASS_LOCATION); gavl_metadata_add_src(m, GAVL_META_SRC, NULL, location); } #if 0 void gavl_track_set_clock_time_map(gavl_dictionary_t * track, int64_t pts, int pts_scale, gavl_time_t clock_time) { gavl_dictionary_t * dict; dict = gavl_dictionary_get_dictionary_create(track, GAVL_META_METADATA); dict = gavl_dictionary_get_dictionary_create(dict, GAVL_META_CLOCK_TIME_MAP); gavl_dictionary_set_long(dict, GAVL_META_CLOCK_TIME_PTS, pts); gavl_dictionary_set_int(dict, GAVL_META_CLOCK_TIME_PTS_SCALE, pts_scale); gavl_dictionary_set_long(dict, GAVL_META_CLOCK_TIME, clock_time); } int gavl_track_get_clock_time_map(const gavl_dictionary_t * track, int64_t * pts, int * pts_scale, gavl_time_t * clock_time) { const gavl_dictionary_t * dict; if(!(dict = gavl_track_get_metadata(track)) || !(dict = gavl_dictionary_get_dictionary(dict, GAVL_META_CLOCK_TIME_MAP))) return 0; if(gavl_dictionary_get_long(dict, GAVL_META_CLOCK_TIME_PTS, pts) && gavl_dictionary_get_int(dict, GAVL_META_CLOCK_TIME_PTS_SCALE, pts_scale) && gavl_dictionary_get_long(dict, GAVL_META_CLOCK_TIME, clock_time)) return 1; else return 0; } #endif gavl_time_t gavl_track_get_pts_to_clock_time(const gavl_dictionary_t * dict) { gavl_time_t ret = GAVL_TIME_UNDEFINED; if(!(dict = gavl_dictionary_get_dictionary(dict, GAVL_META_METADATA)) || !gavl_dictionary_get_long(dict, GAVL_META_TIME_PTS_TO_CLOCK, &ret)) return GAVL_TIME_UNDEFINED; return ret; } gavl_time_t gavl_track_get_pts_to_start_time(const gavl_dictionary_t * dict) { gavl_time_t ret = GAVL_TIME_UNDEFINED; if(!(dict = gavl_dictionary_get_dictionary(dict, GAVL_META_METADATA)) || !gavl_dictionary_get_long(dict, GAVL_META_TIME_PTS_TO_START, &ret)) return GAVL_TIME_UNDEFINED; return ret; } void gavl_track_set_pts_to_clock_time(gavl_dictionary_t * dict, gavl_time_t offset) { dict = gavl_dictionary_get_dictionary_create(dict, GAVL_META_METADATA); gavl_dictionary_set_long(dict, GAVL_META_TIME_PTS_TO_CLOCK, offset); } void gavl_track_set_pts_to_start_time(gavl_dictionary_t * dict, gavl_time_t offset) { dict = gavl_dictionary_get_dictionary_create(dict, GAVL_META_METADATA); gavl_dictionary_set_long(dict, GAVL_META_TIME_PTS_TO_START, offset); } int gavl_stream_is_sbr(const gavl_dictionary_t * s) { gavl_compression_info_t ci; int ret = 0; gavl_compression_info_init(&ci); if(gavl_stream_get_compression_info(s, &ci)) ret = !!(ci.flags & GAVL_COMPRESSION_SBR); gavl_compression_info_free(&ci); return ret; } bplaum-gavl-b9385e3/gavl/transform.c000066400000000000000000000115271513252040200173750ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include #include gavl_image_transform_t * gavl_image_transform_create() { int i, j; gavl_image_transform_t * ret; ret = calloc(1, sizeof(*ret)); gavl_video_options_set_defaults(&ret->opt); for(i = 0; i < 3; i++) { for(j = 0; j < GAVL_MAX_PLANES; j++) ret->contexts[i][j].opt = &ret->opt; } return ret; } void gavl_image_transform_destroy(gavl_image_transform_t * t) { int i, j; for(i = 0; i < 3; i++) { for(j = 0; j < GAVL_MAX_PLANES; j++) { gavl_transform_context_free(&t->contexts[i][j]); } } if(t->tp_priv) gavl_thread_pool_destroy(t->tp_priv); free(t); } /** \brief Destroy a transformation engine * \param A transformation engine * \param Format (can be changed) * \param func Coordinate transform function * \param priv The priv argument for func */ int gavl_image_transform_init(gavl_image_transform_t * t, gavl_video_format_t * format, gavl_image_transform_func func, void * priv) { int i, j; gavl_video_options_t opt; if(!t->opt.tp) { t->tp_priv = gavl_thread_pool_create(-1); t->opt.tp = t->tp_priv; } gavl_video_options_copy(&opt, &t->opt); if(opt.scale_mode == GAVL_SCALE_AUTO) { if(opt.quality < 2) opt.scale_mode = GAVL_SCALE_NEAREST; else if(opt.quality < 3) opt.scale_mode = GAVL_SCALE_BILINEAR; else opt.scale_mode = GAVL_SCALE_CUBIC_BSPLINE; } /* Warning: Don't change this until you know what you are doing. The supported scale modes have a maximum of 4 filter taps and *no* clipping */ if(opt.scale_mode > GAVL_SCALE_CUBIC_BSPLINE) opt.scale_mode = GAVL_SCALE_CUBIC_BSPLINE; gavl_video_format_copy(&t->format, format); /* Count fields */ switch(format->interlace_mode) { case GAVL_INTERLACE_NONE: case GAVL_INTERLACE_UNKNOWN: t->num_fields = 1; break; case GAVL_INTERLACE_TOP_FIRST: case GAVL_INTERLACE_BOTTOM_FIRST: t->num_fields = 2; break; case GAVL_INTERLACE_MIXED: case GAVL_INTERLACE_MIXED_TOP: case GAVL_INTERLACE_MIXED_BOTTOM: t->num_fields = 3; break; } if((t->format.pixelformat == GAVL_YUY2) || (t->format.pixelformat == GAVL_UYVY)) t->num_planes = 3; else t->num_planes = gavl_pixelformat_num_planes(t->format.pixelformat); /* Setup contexts */ for(i = 0; i < t->num_fields; i++) for(j = 0; j < t->num_planes; j++) { if(!gavl_transform_context_init(t, &opt, i, j, func, priv)) return 0; } return 1; } /** \brief Transform an image * \param A transformation engine * \param Input frame * \param Output frame */ void gavl_image_transform_transform(gavl_image_transform_t * t, gavl_video_frame_t * in_frame, gavl_video_frame_t * out_frame) { int i, j; int num_fields, field; if(t->format.interlace_mode == GAVL_INTERLACE_NONE) { num_fields = 1; field = 0; } else if((t->format.interlace_mode == GAVL_INTERLACE_MIXED) && (in_frame->interlace_mode == GAVL_INTERLACE_NONE)) { num_fields = 1; field = 2; } else num_fields = 2; if(num_fields == 1) { for(j = 0; j < t->num_planes; j++) { // fprintf(stderr, "Transform: %d\n", field); gavl_transform_context_transform(&t->contexts[field][j], in_frame, out_frame); } } else { for(i = 0; i < 2; i++) { for(j = 0; j < t->num_planes; j++) { gavl_transform_context_transform(&t->contexts[i][j], in_frame, out_frame); } } } } gavl_video_options_t * gavl_image_transform_get_options(gavl_image_transform_t * t) { return &t->opt; } bplaum-gavl-b9385e3/gavl/transform_context.c000066400000000000000000000255401513252040200211410ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include #include #include static gavl_transform_scanline_func get_func(gavl_transform_funcs_t * tab, gavl_pixelformat_t pixelformat, int * bits) { switch(pixelformat) { case GAVL_PIXELFORMAT_NONE: break; case GAVL_RGB_15: case GAVL_BGR_15: *bits = tab->bits_rgb_15; return tab->transform_rgb_15; break; case GAVL_RGB_16: case GAVL_BGR_16: *bits = tab->bits_rgb_16; return tab->transform_rgb_16; break; case GAVL_RGB_24: case GAVL_BGR_24: *bits = tab->bits_uint8_noadvance; return tab->transform_uint8_x_3; break; case GAVL_RGB_32: case GAVL_BGR_32: *bits = tab->bits_uint8_noadvance; return tab->transform_uint8_x_3; break; case GAVL_GRAYA_16: *bits = tab->bits_uint8_noadvance; return tab->transform_uint8_x_2; break; case GAVL_GRAY_16: *bits = tab->bits_uint16_x_1; return tab->transform_uint16_x_1; break; case GAVL_GRAYA_32: *bits = tab->bits_uint16_x_2; return tab->transform_uint16_x_2; break; case GAVL_YUVA_32: case GAVL_RGBA_32: *bits = tab->bits_uint8_noadvance; return tab->transform_uint8_x_4; break; case GAVL_YUY2: *bits = tab->bits_uint8_advance; return tab->transform_uint8_x_1_advance; break; case GAVL_UYVY: *bits = tab->bits_uint8_advance; return tab->transform_uint8_x_1_advance; break; case GAVL_YUV_420_P: case GAVL_YUV_422_P: case GAVL_YUV_444_P: case GAVL_YUV_411_P: case GAVL_YUV_410_P: case GAVL_YUVJ_420_P: case GAVL_YUVJ_422_P: case GAVL_YUVJ_444_P: case GAVL_GRAY_8: *bits = tab->bits_uint8_noadvance; return tab->transform_uint8_x_1_noadvance; break; case GAVL_YUV_444_P_16: case GAVL_YUV_422_P_16: *bits = tab->bits_uint16_x_1; return tab->transform_uint16_x_1; break; case GAVL_RGB_48: *bits = tab->bits_uint16_x_3; return tab->transform_uint16_x_3; break; case GAVL_RGBA_64: case GAVL_YUVA_64: *bits = tab->bits_uint16_x_4; return tab->transform_uint16_x_4; break; case GAVL_GRAY_FLOAT: *bits = 0; return tab->transform_float_x_1; break; case GAVL_GRAYA_FLOAT: *bits = 0; return tab->transform_float_x_2; break; case GAVL_YUV_FLOAT: case GAVL_RGB_FLOAT: *bits = 0; return tab->transform_float_x_3; break; case GAVL_RGBA_FLOAT: case GAVL_YUVA_FLOAT: *bits = 0; return tab->transform_float_x_4; break; } return NULL; } static void init_func_tab(gavl_video_options_t * opt, gavl_transform_context_t * ctx, gavl_transform_funcs_t * func_tab) { if(!opt->quality) memset(func_tab, 0, sizeof(*func_tab)); switch(ctx->tab.factors_per_pixel) { case 1: if((opt->quality > 0) || (opt->accel_flags & GAVL_ACCEL_C)) gavl_init_transform_funcs_nearest_c(func_tab, ctx->advance); break; case 2: if((opt->quality > 0) || (opt->accel_flags & GAVL_ACCEL_C)) gavl_init_transform_funcs_bilinear_c(func_tab, ctx->advance); #ifdef HAVE_MMX if((opt->quality < 3) && (opt->accel_flags & GAVL_ACCEL_MMX)) gavl_init_transform_funcs_bilinear_mmx(func_tab, ctx->advance); if((opt->quality < 3) && (opt->accel_flags & GAVL_ACCEL_MMXEXT)) gavl_init_transform_funcs_bilinear_mmxext(func_tab, ctx->advance); #endif break; case 3: if((opt->quality > 0) || (opt->accel_flags & GAVL_ACCEL_C)) gavl_init_transform_funcs_quadratic_c(func_tab, ctx->advance); #ifdef HAVE_MMX if((opt->quality < 3) && (opt->accel_flags & GAVL_ACCEL_MMX)) gavl_init_transform_funcs_quadratic_mmx(func_tab, ctx->advance); if((opt->quality < 3) && (opt->accel_flags & GAVL_ACCEL_MMXEXT)) gavl_init_transform_funcs_quadratic_mmxext(func_tab, ctx->advance); #endif break; case 4: if((opt->quality > 0) || (opt->accel_flags & GAVL_ACCEL_C)) gavl_init_transform_funcs_bicubic_c(func_tab, ctx->advance); #ifdef HAVE_MMX if((opt->quality < 3) && (opt->accel_flags & GAVL_ACCEL_MMX)) gavl_init_transform_funcs_bicubic_mmx(func_tab, ctx->advance); if((opt->quality < 3) && (opt->accel_flags & GAVL_ACCEL_MMXEXT)) gavl_init_transform_funcs_bicubic_mmxext(func_tab, ctx->advance); #endif break; default: fprintf(stderr, "BUG: Filter taps > 4 in image transform\n"); break; } } int gavl_transform_context_init(gavl_image_transform_t * t, gavl_video_options_t * opt, int field_index, int plane_index, gavl_image_transform_func func, void * priv) { gavl_transform_funcs_t func_tab; int bits = 0; float off_x, off_y; float scale_x, scale_y; int sub_h, sub_v; gavl_transform_context_t * ctx; ctx = &t->contexts[field_index][plane_index]; if(field_index == 1) { ctx->field = 1; ctx->num_fields = 2; } else { ctx->field = 0; if((t->format.interlace_mode == GAVL_INTERLACE_TOP_FIRST) || (t->format.interlace_mode == GAVL_INTERLACE_BOTTOM_FIRST)) ctx->num_fields = 2; else ctx->num_fields = 1; } if((t->format.pixelformat == GAVL_YUY2) || (t->format.pixelformat == GAVL_UYVY)) ctx->plane = 0; else ctx->plane = plane_index; gavl_pixelformat_get_offset(t->format.pixelformat, plane_index, &ctx->advance, &ctx->offset); ctx->dst_width = t->format.image_width; ctx->dst_height = t->format.image_height; scale_x = 1.0; scale_y = 1.0; ctx->dst_height /= ctx->num_fields; scale_y *= ctx->num_fields; off_x = 0.5; off_y = 0.5 + (float)(ctx->field); // off_x = 0.0; // off_y = (float)(ctx->field); if(plane_index) { gavl_pixelformat_chroma_sub(t->format.pixelformat, &sub_h, &sub_v); ctx->dst_width /= sub_h; ctx->dst_height /= sub_v; scale_x *= sub_h; scale_y *= sub_v; if((sub_h == 2) && (sub_v == 2)) { switch(t->format.chroma_placement) { case GAVL_CHROMA_PLACEMENT_DEFAULT: off_x += 0.5; off_y += 0.5; break; case GAVL_CHROMA_PLACEMENT_MPEG2: if(ctx->num_fields == 1) off_y += 0.5; else if(ctx->field == 0) /* Top field */ off_y += 0.5; /* In FRAME coordinates */ else /* Bottom field */ off_y += 1.5; /* In FRAME coordinates */ break; case GAVL_CHROMA_PLACEMENT_DVPAL: if(ctx->plane == 1) /* Cb */ off_y += 2.0; /* In FRAME coordinates */ break; } } } gavl_transform_table_init(&ctx->tab, opt, func, priv, off_x, off_y, scale_x, scale_y, ctx->dst_width, ctx->dst_height); /* Get function */ init_func_tab(opt, ctx, &func_tab); ctx->func = get_func(&func_tab, t->format.pixelformat, &bits); if(!ctx->func) return 0; /* Now we know the bits, convert to int */ if(bits) gavl_transform_table_init_int(&ctx->tab, bits, ctx->dst_width, ctx->dst_height); return 1; } static void func_1(void* p, int start, int end) { int i; uint8_t * dst_save; int dst_stride; gavl_transform_context_t * ctx = p; dst_stride = ctx->dst_frame->strides[ctx->plane] * ctx->num_fields; dst_save = ctx->dst_frame->planes[ctx->plane] + ctx->offset + ctx->field * ctx->dst_frame->strides[ctx->plane] + start * dst_stride; for(i = start; i < end; i++) { ctx->func(ctx, ctx->tab.pixels[i], dst_save); dst_save += dst_stride; } #ifdef HAVE_MMX if(ctx->need_emms) { __asm__ __volatile__ ("emms"); } #endif } void gavl_transform_context_transform(gavl_transform_context_t * ctx, const gavl_video_frame_t * src, gavl_video_frame_t * dst) { int i; /* Things set while transforming */ // uint8_t * src; /* Beginning of plane */ // int src_stride; // uint8_t * dst; /* Current scanline */ // int dst_stride; ctx->src = src->planes[ctx->plane] + ctx->offset + ctx->field * src->strides[ctx->plane]; ctx->src_stride = src->strides[ctx->plane] * ctx->num_fields; if(ctx->opt->tp) { int delta; int scanline; int nt; ctx->dst_frame = dst; nt = gavl_thread_pool_get_num_threads(ctx->opt->tp); if(nt > ctx->dst_height) nt = ctx->dst_height; delta = ctx->dst_height / nt; scanline = 0; for(i = 0; i < nt - 1; i++) { gavl_thread_pool_run(func_1, ctx, scanline, scanline+delta, ctx->opt->tp, i); scanline += delta; } gavl_thread_pool_run(func_1, ctx, scanline, ctx->dst_height, ctx->opt->tp, nt - 1); for(i = 0; i < nt; i++) gavl_thread_pool_stop(ctx->opt->tp, i); } else { int dst_stride; uint8_t * dst_save; dst_save = dst->planes[ctx->plane] + ctx->offset + ctx->field * dst->strides[ctx->plane]; dst_stride = dst->strides[ctx->plane] * ctx->num_fields; for(i = 0; i < ctx->dst_height; i++) { ctx->func(ctx, ctx->tab.pixels[i], dst_save); dst_save += dst_stride; } #ifdef HAVE_MMX if(ctx->need_emms) { __asm__ __volatile__ ("emms"); // fprintf(stderr, "emms"); } #endif } } void gavl_transform_context_free(gavl_transform_context_t * ctx) { gavl_transform_table_free(&ctx->tab); } bplaum-gavl-b9385e3/gavl/transform_table.c000066400000000000000000000271541513252040200205470ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include #include #include #include #define ROUND(val) (val >= 0.0) ? (int)(val+0.5):(int)(val-0.5) /* 1234 */ /* S340 */ /* S400 */ static void shift_right(gavl_transform_pixel_t * p, int factors_per_pixel, int delta) { int i, j; for(i = 0; i < factors_per_pixel; i++) { /* Sum up */ for(j = 1; j < delta; j++) p->factors[i][0] += p->factors[i][j]; /* Shift */ for(j = 1; j < factors_per_pixel - delta; j++) p->factors[i][j] = p->factors[i][j + delta]; /* Clear */ for(j = factors_per_pixel - delta; j < factors_per_pixel; j++) p->factors[i][j] = 0.0; } p->index_x += delta; } /* 1234 */ /* 001S */ static void shift_left(gavl_transform_pixel_t * p, int factors_per_pixel, int delta) { int i, j; for(i = 0; i < factors_per_pixel; i++) { /* Sum up */ for(j = factors_per_pixel - delta; j < factors_per_pixel; j++) p->factors[i][factors_per_pixel - 1 - delta] += p->factors[i][j]; /* Shift */ for(j = factors_per_pixel - 1; j >= delta; j--) p->factors[i][j] = p->factors[i][j - delta]; /* Clear */ for(j = 0; j < delta; j++) p->factors[i][j] = 0.0; } p->index_x -= delta; } static void shift_down(gavl_transform_pixel_t * p, int factors_per_pixel, int delta) { int i, j; for(i = 0; i < factors_per_pixel; i++) { /* Sum up */ for(j = 1; j < delta; j++) p->factors[0][i] += p->factors[j][i]; /* Shift */ for(j = 1; j < factors_per_pixel - delta; j++) p->factors[j][i] = p->factors[j + delta][i]; /* Clear */ for(j = factors_per_pixel - delta; j < factors_per_pixel; j++) p->factors[j][i] = 0.0; } p->index_y += delta; } static void shift_up(gavl_transform_pixel_t * p, int factors_per_pixel, int delta) { int i, j; for(i = 0; i < factors_per_pixel; i++) { /* Sum up */ for(j = factors_per_pixel - delta; j < factors_per_pixel; j++) p->factors[factors_per_pixel - 1 - delta][i] += p->factors[j][i]; /* Shift */ for(j = factors_per_pixel - 1; j >= delta; j--) p->factors[j][i] = p->factors[j - delta][i]; /* Clear */ for(j = 0; j < delta; j++) p->factors[j][i] = 0.0; } p->index_y -= delta; } static void shift_borders(gavl_transform_table_t * tab, int width, int i, int height) { int j; for(j = 0; j < width; j++) { /* Check left overshot */ if(tab->pixels[i][j].index_x < 0) shift_right(&tab->pixels[i][j], tab->factors_per_pixel, -tab->pixels[i][j].index_x); /* Check right overshot */ if(tab->pixels[i][j].index_x + tab->factors_per_pixel > width) shift_left(&tab->pixels[i][j], tab->factors_per_pixel, tab->pixels[i][j].index_x + tab->factors_per_pixel - width); /* Check top overshot */ if(tab->pixels[i][j].index_y < 0) shift_down(&tab->pixels[i][j], tab->factors_per_pixel, -tab->pixels[i][j].index_y); /* Check bottom overshot */ if(tab->pixels[i][j].index_y + tab->factors_per_pixel > height) shift_up(&tab->pixels[i][j], tab->factors_per_pixel, tab->pixels[i][j].index_y + tab->factors_per_pixel - height); } } static void normalize(gavl_transform_table_t * tab, int width, int i) { int j, k, l; float sum; for(j = 0; j < width; j++) { sum = 0.0; for(k = 0; k < tab->factors_per_pixel; k++) { for(l = 0; l < tab->factors_per_pixel; l++) { sum += tab->pixels[i][j].factors[k][l]; } } for(k = 0; k < tab->factors_per_pixel; k++) { for(l = 0; l < tab->factors_per_pixel; l++) tab->pixels[i][j].factors[k][l] /= sum; } } } typedef struct { float off_x; float off_y; float scale_x, scale_y; int width; int height; gavl_image_transform_func func; gavl_video_scale_get_weight weight_func; gavl_transform_table_t * tab; void * func_priv; gavl_video_options_t * opt; } slice_data_t; static void init_slice(void* p, int start, int end) { int i, j, k, l; slice_data_t * sd = p; double x_src_f, y_src_f, x_dst_f, y_dst_f; int x_src_nearest, y_src_nearest; double t; double w_x[MAX_TRANSFORM_FILTER]; double w_y; for(i = start; i < end; i++) { y_dst_f = sd->scale_y * (double)i + sd->off_y; for(j = 0; j < sd->width; j++) { x_dst_f = sd->scale_x * (double)j + sd->off_x; sd->func(sd->func_priv, x_dst_f, y_dst_f, &x_src_f, &y_src_f); // fprintf(stderr, "Transform: src: %f %f -> dst: %f %f\n", // x_src_f, y_src_f, x_dst_f, y_dst_f); // x_src_f = (x_src_f - sd->off_x) / sd->scale_x; // y_src_f = (y_src_f - sd->off_y) / sd->scale_y; x_src_f = (x_src_f) / sd->scale_x; y_src_f = (y_src_f) / sd->scale_y; if((x_src_f < 0.0) || (x_src_f > (double)sd->width) || (y_src_f < 0.0) || (y_src_f > (double)sd->height)) { sd->tab->pixels[i][j].outside = 1; // fprintf(stderr, "Outside\n"); continue; } /* ... */ x_src_nearest = ROUND(x_src_f); y_src_nearest = ROUND(y_src_f); sd->tab->pixels[i][j].index_x = x_src_nearest - sd->tab->factors_per_pixel/2; sd->tab->pixels[i][j].index_y = y_src_nearest - sd->tab->factors_per_pixel/2; if(sd->tab->factors_per_pixel == 1) { if(sd->tab->pixels[i][j].index_x < 0) sd->tab->pixels[i][j].index_x = 0; if(sd->tab->pixels[i][j].index_x > sd->width - 1) sd->tab->pixels[i][j].index_x = sd->width - 1; if(sd->tab->pixels[i][j].index_y < 0) sd->tab->pixels[i][j].index_y = 0; if(sd->tab->pixels[i][j].index_y > sd->height - 1) sd->tab->pixels[i][j].index_y = sd->height - 1; continue; } /* x weights */ t = (x_src_f - 0.5 - sd->tab->pixels[i][j].index_x); // t = (x_src_f - sd->tab->pixels[i][j].index_x); for(k = 0; k < sd->tab->factors_per_pixel; k++) { // fprintf(stderr, "%d w_x(%f)\n", k, t); w_x[k] = sd->weight_func(sd->opt, t); t -= 1.0; } t = (y_src_f - 0.5 - sd->tab->pixels[i][j].index_y); // t = (y_src_f - sd->tab->pixels[i][j].index_y); for(k = 0; k < sd->tab->factors_per_pixel; k++) { /* Y-weight */ w_y = sd->weight_func(sd->opt, t); // fprintf(stderr, "%d w_y(%f)\n", k, t); for(l = 0; l < sd->tab->factors_per_pixel; l++) sd->tab->pixels[i][j].factors[k][l] = w_y * w_x[l]; t -= 1.0; } } shift_borders(sd->tab, sd->width, i, sd->height); normalize(sd->tab, sd->width, i); } } void gavl_transform_table_init(gavl_transform_table_t * tab, gavl_video_options_t * opt, gavl_image_transform_func func, void * priv, float off_x, float off_y, float scale_x, float scale_y, int width, int height) { int delta; int scanline; int nt; int i; slice_data_t sd; sd.off_x = off_x; sd.off_y = off_y; sd.scale_x = scale_x; sd.scale_y = scale_y; sd.width = width; sd.height = height; sd.tab = tab; sd.func = func; sd.func_priv = priv; sd.opt = opt; /* (re)alloc */ gavl_transform_table_free(tab); /* Get factors per pixel and filter_func */ sd.weight_func = gavl_video_scale_get_weight_func(opt, &tab->factors_per_pixel); if(tab->factors_per_pixel > MAX_TRANSFORM_FILTER) { fprintf(stderr, "BUG: tab->factors_per_pixel > MAX_TRANSFORM_FILTER\n"); return; } tab->pixels = malloc(height * sizeof(*tab->pixels)); tab->pixels[0] = calloc(width * height, sizeof(**tab->pixels)); for(i = 1; i < height; i++) tab->pixels[i] = tab->pixels[0] + i * width; nt = gavl_thread_pool_get_num_threads(opt->tp); if(nt > height) nt = height; if(nt < 1) nt = 1; delta = height / nt; scanline = 0; for(i = 0; i < nt - 1; i++) { gavl_thread_pool_run(init_slice, &sd, scanline, scanline+delta, opt->tp, i); scanline += delta; } gavl_thread_pool_run(init_slice, &sd, scanline, height, opt->tp, nt - 1); for(i = 0; i < nt; i++) gavl_thread_pool_stop(opt->tp, i); } void gavl_transform_table_init_int(gavl_transform_table_t * tab, int bits, int width, int height) { int fac_max_i, i, j, k, l; float fac_max_f, sum_f; int sum_i; int min_index_k, max_index_k; int min_index_l, max_index_l; // fac_max_i = (1<pixels[i][j].outside) // continue; if(tab->pixels[i][j].outside) continue; min_index_k = 0; max_index_k = 0; min_index_l = 0; max_index_l = 0; sum_i = 0; sum_f = 0.0; for(k = 0; k < tab->factors_per_pixel; k++) { for(l = 0; l < tab->factors_per_pixel; l++) { tab->pixels[i][j].factors_i[k][l] = (int)(fac_max_f * tab->pixels[i][j].factors[k][l]+0.5); sum_i += tab->pixels[i][j].factors_i[k][l]; sum_f += tab->pixels[i][j].factors[k][l]; if(k || l) { if(tab->pixels[i][j].factors_i[k][l] > tab->pixels[i][j].factors_i[max_index_k][max_index_l]) { max_index_k = k; max_index_l = l; } if(tab->pixels[i][j].factors_i[k][l] < tab->pixels[i][j].factors_i[min_index_k][min_index_l]) { min_index_k = k; min_index_l = l; } } } } if(sum_i > fac_max_i) tab->pixels[i][j].factors_i[max_index_k][max_index_l] -= (sum_i - fac_max_i); else if(sum_i < fac_max_i) tab->pixels[i][j].factors_i[min_index_k][min_index_l] += (fac_max_i - sum_i); // gavl_video_scale_table_dump_int(tab); } } } void gavl_transform_table_free(gavl_transform_table_t * tab) { if(tab->pixels) { if(tab->pixels[0]) free(tab->pixels[0]); free(tab->pixels); tab->pixels = NULL; } } bplaum-gavl-b9385e3/gavl/urlvars.c000066400000000000000000000154101513252040200170530ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include #include #include #include #include #define LOG_DOMAIN "urlvars" /* URI variables */ /* * Split off vars like path?var1=val1&var2=val2#fragment */ static void url_vars_to_metadata(const char * pos, gavl_dictionary_t * vars) { int i; char ** str; i = 0; str = gavl_strbreak(pos, '&'); if(!str) return; while(str[i]) { char * key; pos = strchr(str[i], '='); if(!pos) gavl_dictionary_set_int(vars, str[i], 1); else { key = gavl_strndup(str[i], pos); pos++; if(*key != '\0') gavl_dictionary_set_string(vars, key, pos); free(key); } i++; } gavl_strbreak_free(str); } void gavl_url_get_vars_c(const char * path, gavl_dictionary_t * vars) { const char * pos = strrchr(path, '?'); if(!pos) return; pos++; url_vars_to_metadata(pos, vars); } void gavl_url_get_vars(char * path, gavl_dictionary_t * vars) { char * pos; pos = strrchr(path, '?'); if(!pos) return; *pos = '\0'; if(!vars) return; pos++; if(vars) url_vars_to_metadata(pos, vars); } char * gavl_url_append_vars(char * path, const gavl_dictionary_t * vars) { char sep; char * tmp_string; char * val_string; int i; int idx = 0; for(i = 0; i < vars->num_entries; i++) { if(!strchr(path, '?')) sep = '?'; else sep = '&'; if(!(val_string = gavl_value_to_string(&vars->entries[i].v))) { if(vars->entries[i].v.type != GAVL_TYPE_STRING) { gavl_log(GAVL_LOG_WARNING, LOG_DOMAIN, "Value type %s of var %s not supported in URL variables", gavl_type_to_string(vars->entries[i].v.type), vars->entries[i].name); continue; } } if(!val_string) tmp_string = gavl_sprintf("%c%s=", sep, vars->entries[i].name); else tmp_string = gavl_sprintf("%c%s=%s", sep, vars->entries[i].name, val_string); idx++; path = gavl_strcat(path, tmp_string); free(tmp_string); if(val_string) free(val_string); } return path; } #define HTTP_VARS_KEY "gavlhttpvars" char * gavl_url_extract_http_vars(char * url, gavl_dictionary_t * vars) { const char * str; gavl_dictionary_t url_vars; gavl_dictionary_init(&url_vars); gavl_url_get_vars(url, &url_vars); if((str = gavl_dictionary_get_string(&url_vars, HTTP_VARS_KEY))) { gavl_buffer_t buf; gavl_buffer_init(&buf); gavl_base64_decode_data_urlsafe(str, &buf); if(!gavl_dictionary_from_buffer(buf.buf, buf.len, vars)) gavl_dictionary_reset(vars); gavl_buffer_free(&buf); gavl_dictionary_set(&url_vars, HTTP_VARS_KEY, NULL); } url = gavl_url_append_vars(url, &url_vars); gavl_dictionary_free(&url_vars); return url; } char * gavl_url_append_http_vars(char * url, const gavl_dictionary_t * vars) { gavl_dictionary_t url_vars; gavl_dictionary_t http_vars; gavl_buffer_t buf; const char * str; uint8_t * buf_new = NULL; int len_new; char * str_new; if(!vars->num_entries) return url; gavl_dictionary_init(&url_vars); gavl_dictionary_init(&http_vars); gavl_buffer_init(&buf); gavl_url_get_vars(url, &url_vars); if((str = gavl_dictionary_get_string(&url_vars, HTTP_VARS_KEY))) { gavl_base64_decode_data_urlsafe(str, &buf); if(!gavl_dictionary_from_buffer(buf.buf, buf.len, &http_vars)) gavl_dictionary_reset(&http_vars); gavl_buffer_reset(&buf); } gavl_dictionary_merge2(&http_vars, vars); buf_new = gavl_dictionary_to_buffer(&len_new, &http_vars); str_new = gavl_base64_encode_data_urlsafe(buf_new, len_new); gavl_dictionary_set_string_nocopy(&url_vars, HTTP_VARS_KEY, str_new); url = gavl_url_append_vars(url, &url_vars); /* Cleanup */ gavl_buffer_free(&buf); free(buf_new); gavl_dictionary_free(&url_vars); gavl_dictionary_free(&http_vars); return url; } /* Append url variables */ char * gavl_url_add_var_string(char * uri, const char * var, const char * val) { gavl_dictionary_t vars; gavl_dictionary_init(&vars); gavl_url_get_vars(uri, &vars); gavl_dictionary_set_string(&vars, var, val); uri = gavl_url_append_vars(uri, &vars); gavl_dictionary_free(&vars); return uri; } char * gavl_url_add_var_long(char * uri, const char * var, int64_t val) { char * ret; char * str = gavl_sprintf("%"PRId64, val); ret = gavl_url_add_var_string(uri, var, str); free(str); return ret; } char * gavl_url_add_var_double(char * uri, const char * var, double val) { char * ret; char * str = gavl_sprintf("%f", val); ret = gavl_url_add_var_string(uri, var, str); free(str); return ret; } /* Extract url variables */ /* *val = NULL if variable doesn't exist */ char * gavl_url_extract_var_string(char * uri, const char * var, char ** val) { gavl_dictionary_t vars; gavl_dictionary_init(&vars); gavl_url_get_vars(uri, &vars); *val = gavl_strdup(gavl_dictionary_get_string(&vars, var)); gavl_dictionary_set(&vars, var, NULL); uri = gavl_url_append_vars(uri, &vars); gavl_dictionary_free(&vars); return uri; } char * gavl_url_extract_var_long(char * uri, const char * var, int64_t * val) { char * str = NULL; char * ret = gavl_url_extract_var_string(uri, var, &str); if(str) { *val = strtoll(str, NULL, 10); free(str); } else *val = 0; return ret; } /* *val = -1 if variable doesn't exist */ char * gavl_url_extract_var_double(char * uri, const char * var, double * val) { char * str = NULL; char * ret = gavl_url_extract_var_string(uri, var, &str); if(str) { *val = strtod(str, NULL); free(str); } else *val = 0.0; return ret; } bplaum-gavl-b9385e3/gavl/utils.c000066400000000000000000000631541513252040200165250ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #define _GNU_SOURCE #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #define LOG_DOMAIN "utils" void gavl_dprintf(const char * format, ...) { va_list argp; /* arg ptr */ va_start( argp, format); vfprintf(stderr, format, argp); va_end(argp); } void gavl_diprintf(int indent, const char * format, ...) { int i; va_list argp; /* arg ptr */ for(i = 0; i < indent; i++) gavl_dprintf( " "); va_start(argp, format); vfprintf(stderr, format, argp); va_end(argp); } void gavl_hexdumpi(const uint8_t * data, int len, int linebreak, int indent) { int i; int bytes_written = 0; int imax; while(bytes_written < len) { for(i = 0; i < indent; i++) fprintf(stderr, " "); imax = (bytes_written + linebreak > len) ? len - bytes_written : linebreak; for(i = 0; i < imax; i++) fprintf(stderr, "%02x ", data[bytes_written + i]); for(i = imax; i < linebreak; i++) fprintf(stderr, " "); for(i = 0; i < imax; i++) { if((data[bytes_written + i] < 0x7f) && (data[bytes_written + i] >= 32)) fprintf(stderr, "%c", data[bytes_written + i]); else fprintf(stderr, "."); } bytes_written += imax; fprintf(stderr, "\n"); } } void gavl_hexdump(const uint8_t * data, int len, int linebreak) { gavl_hexdumpi(data, len, linebreak, 0); } char * gavl_strrep(char * old_string, const char * new_string) { char * ret; int len; if(!new_string || (*new_string == '\0')) { if(old_string) free(old_string); return NULL; } if(old_string) { if(!strcmp(old_string, new_string)) return old_string; else free(old_string); } len = ((strlen(new_string)+1 + 3) / 4) * 4 ; ret = malloc(len); strcpy(ret, new_string); return ret; } char * gavl_strnrep(char * old_string, const char * new_string_start, const char * new_string_end) { char * ret; if(!new_string_start || (*new_string_start == '\0')) { if(old_string) free(old_string); return NULL; } if(old_string) { if(!strncmp(old_string, new_string_start, new_string_end - new_string_start)) return old_string; else free(old_string); } ret = malloc(new_string_end - new_string_start + 1); strncpy(ret, new_string_start, new_string_end - new_string_start); ret[new_string_end - new_string_start] = '\0'; return ret; } char * gavl_strdup(const char * new_string) { return gavl_strrep(NULL, new_string); } char * gavl_strndup(const char * new_string, const char * new_string_end) { return gavl_strnrep(NULL, new_string, new_string_end); } char * gavl_strncat(char * old, const char * start, const char * end) { int len, old_len; old_len = old ? strlen(old) : 0; len = (end) ? (end - start) : strlen(start); old = realloc(old, len + old_len + 1); strncpy(old + old_len, start, len); old[old_len + len] = '\0'; return old; } char * gavl_strcat(char * old, const char * tail) { return gavl_strncat(old, tail, NULL); } char * gavl_escape_string(char * old_string, const char * escape_chars) { char * new_string = NULL; int i; char * dst_pos; int new_len; int old_len = strlen(old_string); new_len = old_len; /* 1st round: Count replacements */ for(i = 0; i < old_len; i++) { if(strchr(escape_chars, old_string[i])) new_len++; } if(new_len == old_len) return old_string; new_string = malloc(new_len+1); dst_pos = new_string; for(i = 0; i < old_len; i++) { if(strchr(escape_chars, old_string[i])) *(dst_pos++) = '\\'; *(dst_pos++) = old_string[i]; } *dst_pos = '\0'; free(old_string); return new_string; } char * gavl_unescape_string(char * old_string, const char * escape_chars) { char * pos = old_string; int len = strlen(old_string); while(*pos != '\0') { if((*pos == '\\') && (*(pos+1) != '\0') && strchr(escape_chars, *(pos+1))) { /* len - 1 + 1 (don't count backslash but count '\0') */ memmove(pos, pos+1, len); } else { pos++; } len--; } return old_string; } int gavl_string_starts_with(const char * str, const char * start) { return !strncmp(str, start, strlen(start)) ? 1 : 0; } int gavl_string_starts_with_i(const char * str, const char * start) { return !strncasecmp(str, start, strlen(start)) ? 1 : 0; } int gavl_string_ends_with(const char * str, const char * end) { int slen = strlen(str); int elen = strlen(end); if(slen < elen) return 0; return !strcmp(str + slen - elen, end) ? 1 : 0; } int gavl_string_ends_with_i(const char * str, const char * end) { int slen = strlen(str); int elen = strlen(end); if(slen < elen) return 0; return !strcasecmp(str + slen - elen, end) ? 1 : 0; } char * gavl_strtrim(char * str) { int len; char * pos = str; // fprintf(stderr, "gavl_strtrim 1 %s\n", str); while(isspace(*pos) && (*pos != '\0')) pos++; if(*pos == '\0') // String consists of whitespace { *str = '\0'; return str; } if(pos > str) memmove(str, pos, strlen(pos) + 1); /* Trailing */ len = strlen(str); if(!len) return str; pos = str + (len-1); // fprintf(stderr, "gavl_strtrim 2 %s %s\n", str, pos); while(pos >= str) { if(isspace(*pos)) *pos = '\0'; else break; pos--; } return str; } /* TODO */ char * gavl_sprintf(const char * format,...) { va_list argp; /* arg ptr */ #ifndef HAVE_VASPRINTF int len; #endif char * ret; va_start( argp, format); #ifndef HAVE_VASPRINTF len = vsnprintf(NULL, 0, format, argp); ret = malloc(len+1); vsnprintf(ret, len+1, format, argp); #else vasprintf(&ret, format, argp); #endif va_end(argp); return ret; } static char * strip_space(char * str, int do_free) { char * pos = str; while(isspace(*pos) && *pos != '\0') pos++; if((*pos == '\0')) { if(do_free) { free(str); return NULL; } else { *str = '\0'; return str; } } if(pos > str) memmove(str, pos, strlen(pos)+1); pos = str + (strlen(str)-1); while(isspace(*pos)) pos--; pos++; *pos = '\0'; return str; } char * gavl_strip_space(char * str) { return strip_space(str, 1); } void gavl_strip_space_inplace(char * str) { strip_space(str, 0); } /* Support escaped delimiters (with backslash) */ const char * gavl_find_char_c(const char * start, char delim) { const char * pos = start; while(*pos != '\0') { if(*pos == delim) { if(pos > start) { if(*(pos-1) != '\\') return pos; } else return pos; } pos++; } return NULL; } char * gavl_find_char(char * start, char delim) { char * pos = start; while(*pos != '\0') { if(*pos == delim) { if(pos > start) { if(*(pos-1) != '\\') return pos; } else return pos; } pos++; } return NULL; } char ** gavl_strbreak(const char * str, char delim) { int num_entries; char *pos, *end = NULL; const char *pos_c; char ** ret; int i; char escape_chars[2]; escape_chars[0] = delim; escape_chars[1] = '\0'; if(!str || (*str == '\0')) return NULL; pos_c = str; num_entries = 1; while((pos_c = gavl_find_char_c(pos_c, delim))) { num_entries++; pos_c++; } ret = calloc(num_entries+1, sizeof(char*)); ret[0] = gavl_strdup(str); pos = ret[0]; for(i = 0; i < num_entries; i++) { if(i) { ret[i] = pos; } if(i < num_entries-1) { end = gavl_find_char(pos, delim); *end = '\0'; } end++; pos = end; } for(i = 0; i < num_entries; i++) { strip_space(ret[i], 0); gavl_unescape_string(ret[i], escape_chars); } return ret; } void gavl_strbreak_free(char ** retval) { free(retval[0]); free(retval); } const char * gavl_tempdir() { char * ret = getenv("TMPDIR"); if(!ret) ret = getenv("TEMP"); if(!ret) ret = getenv("TMP"); if(ret) return ret; if(!access("/tmp", R_OK|W_OK)) return "/tmp"; return "."; } int gavl_url_split(const char * url, char ** protocol, char ** user, char ** password, char ** hostname, int * port, char ** path) { const char * pos1; const char * pos2; /* For detecting user:pass@blabla.com/file */ const char * colon_pos; const char * at_pos; const char * slash_pos; pos1 = url; /* Sanity check */ pos2 = strstr(url, "://"); if(!pos2) return 0; /* Protocol */ if(protocol) *protocol = gavl_strndup( pos1, pos2); pos2 += 3; pos1 = pos2; /* Check for user and password */ colon_pos = strchr(pos1, ':'); at_pos = strchr(pos1, '@'); slash_pos = strchr(pos1, '/'); if(!slash_pos) slash_pos = pos1 + strlen(pos1); if(colon_pos && at_pos && at_pos && (colon_pos < at_pos) && (at_pos < slash_pos)) { if(user) *user = gavl_strndup( pos1, colon_pos); pos1 = colon_pos + 1; if(password) *password = gavl_strndup( pos1, at_pos); pos1 = at_pos + 1; pos2 = pos1; } /* Hostname */ if(*pos1 == '[') // IPV6 { pos1++; pos2 = strchr(pos1, ']'); if(!pos2) return 0; if(hostname) *hostname = gavl_strndup( pos1, pos2); pos2++; } else { while((*pos2 != '\0') && (*pos2 != ':') && (*pos2 != '/')) pos2++; if(hostname) *hostname = gavl_strndup( pos1, pos2); } switch(*pos2) { case '\0': if(port) *port = -1; return 1; break; case ':': /* Port */ pos2++; if(port) *port = atoi(pos2); while(isdigit(*pos2)) pos2++; break; default: if(port) *port = -1; break; } if(path) { pos1 = pos2; pos2 = pos1 + strlen(pos1); if(pos1 != pos2) *path = gavl_strndup( pos1, pos2); else *path = NULL; } return 1; } char * gavl_get_absolute_uri(const char * rel_uri, const char * abs_uri) { const char * end; char * tmp_str; char * ret = NULL; const char * pos; if(strstr(rel_uri, "://")) return gavl_strdup(rel_uri); if((pos = strstr(abs_uri, "://"))) { pos += 3; if(rel_uri[0] == '/') { end = strchr(pos, '/'); if(!end) end = strchr(pos, '?'); if(!end) end = strchr(pos, '#'); if(!end) ret = gavl_sprintf("%s%s", abs_uri, rel_uri); else { tmp_str = gavl_strndup(abs_uri, end); ret = gavl_sprintf("%s%s", tmp_str, rel_uri); free(tmp_str); } } else { end = strrchr(pos, '/'); if(!end) ret = gavl_sprintf("%s/%s", abs_uri, rel_uri); else { tmp_str = gavl_strndup(abs_uri, end); ret = gavl_sprintf("%s/%s", tmp_str, rel_uri); free(tmp_str); } } } else if(abs_uri[0] == '/') { if(rel_uri[0] == '/') return gavl_strdup(rel_uri); if((end = strrchr(abs_uri, '/'))) { tmp_str = gavl_strndup(abs_uri, end); ret = gavl_sprintf("%s/%s", tmp_str, rel_uri); free(tmp_str); } else ret = gavl_sprintf("%s/%s", abs_uri, rel_uri); } else ret = gavl_strdup(rel_uri); return ret; } // https://stackoverflow.com/questions/44668774/reduce-fractions-in-c static int gcd(int x, int y) { int temp; while (y != 0) { temp = y; y = x % y; x = temp; } return x; } void gavl_simplify_rational(int * num, int * den) { int fac = gcd(*num, *den); *num /= fac; *den /= fac; } #undef LOG_DOMAIN #define LOG_DOMAIN "cpus" int gavl_num_cpus() { cpu_set_t mask; if(sched_getaffinity(0, sizeof(cpu_set_t), &mask) == -1) { gavl_log(GAVL_LOG_WARNING, LOG_DOMAIN, "Could not obtain the CPU affinity: %s (switching to single threaded mode)", strerror(errno)); return 1; } return CPU_COUNT(&mask); } #undef LOG_DOMAIN #define LOG_DOMAIN "utils" int gavl_fd_can_read(int fd, int milliseconds) { int result; fd_set set; struct timeval timeout; FD_ZERO (&set); FD_SET (fd, &set); timeout.tv_sec = milliseconds / 1000; timeout.tv_usec = (milliseconds % 1000) * 1000; if((result = select(fd+1, &set, NULL, NULL, &timeout) <= 0)) { if(result < 0 && (errno == EINVAL)) { fprintf(stderr, "EINVAL %d\n", fd); } if(result < 0) gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Select for reading failed: %s", strerror(errno)); return 0; } return 1; } int gavl_fd_can_write(int fd, int milliseconds) { int result; fd_set set; struct timeval timeout; FD_ZERO (&set); FD_SET (fd, &set); timeout.tv_sec = milliseconds / 1000; timeout.tv_usec = (milliseconds % 1000) * 1000; if((result = select(fd+1, NULL, &set, NULL, &timeout) <= 0)) { if(result < 0) gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Select for writing failed: %s", strerror(errno)); // gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Got read timeout"); return 0; } return 1; } int gavl_fd_set_block(int fd, int block) { int flags; if(!block) flags = O_NONBLOCK; else flags = 0; if(fcntl(fd, F_SETFL, flags) < 0) { if(block) gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Cannot set blocking mode: %s", strerror(errno)); else gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Cannot set non-blocking mode: %s", strerror(errno)); return 0; } return 1; } int gavl_fd_get_block(int fd) { return !(fcntl(fd, F_GETFL, 0) & O_NONBLOCK); } int gavl_host_is_us(const char * hostname) { char str[HOST_NAME_MAX+1]; gethostname(str, HOST_NAME_MAX+1); if(!strcmp(hostname, str)) return 1; else return 0; } int gavl_is_directory(const char * dir, int wr) { struct stat st; if(stat(dir, &st) || !S_ISDIR(st.st_mode)) return 0; if(wr) { if(!access(dir, R_OK|W_OK|X_OK)) return 1; } else if(!access(dir, R_OK|X_OK)) return 1; return 0; } int gavl_ensure_directory(const char * dir, int priv) { char ** directories; char * subpath = NULL; int i, ret; int absolute; /* Return early */ if(gavl_is_directory(dir, 1)) return 1; if(dir[0] == '/') absolute = 1; else absolute = 0; /* We omit the first slash */ if(absolute) directories = gavl_strbreak(dir+1, '/'); else directories = gavl_strbreak(dir, '/'); i = 0; ret = 1; while(directories[i]) { if(i || absolute) subpath = gavl_strcat(subpath, "/"); subpath = gavl_strcat(subpath, directories[i]); if(access(subpath, R_OK) && (errno == ENOENT)) { mode_t mode = S_IRUSR|S_IWUSR|S_IXUSR; if(!priv) mode |= S_IRGRP|S_IXGRP|S_IROTH|S_IXOTH; if(mkdir(subpath, mode) == -1) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Creating directory %s failed: %s", subpath, strerror(errno)); ret = 0; break; } else gavl_log(GAVL_LOG_INFO, LOG_DOMAIN, "Created directory %s", subpath); } i++; } if(subpath) free(subpath); gavl_strbreak_free(directories); return ret; } char * gavl_search_cache_dir(const char * package, const char * app, const char * directory) { const char * var; char * ret; if((var = getenv("XDG_CACHE_HOME"))) ret = gavl_sprintf("%s/%s", var, package); else if((var = getenv("HOME"))) ret = gavl_sprintf("%s/.cache/%s", var, package); else { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Cannot get cache directory: neither HOME nor XDG_CONFIG_HOME is defined"); return NULL; } if(app) { ret = gavl_strcat(ret, "/"); ret = gavl_strcat(ret, app); } if(directory) { ret = gavl_strcat(ret, "/"); ret = gavl_strcat(ret, directory); } if(!gavl_ensure_directory(ret, 1)) { free(ret); return NULL; } return ret; } char * gavl_search_config_dir(const char * package, const char * app, const char * directory) { const char * var; char * ret; if((var = getenv("XDG_CONFIG_HOME"))) ret = gavl_sprintf("%s/%s", var, package); else if((var = getenv("HOME"))) ret = gavl_sprintf("%s/.config/%s", var, package); else { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Cannot get configuration directory: neither HOME nor XDG_CONFIG_HOME is defined"); return NULL; } if(app) { ret = gavl_strcat(ret, "/"); ret = gavl_strcat(ret, app); } if(directory) { ret = gavl_strcat(ret, "/"); ret = gavl_strcat(ret, directory); } if(!gavl_ensure_directory(ret, 0)) { free(ret); return NULL; } return ret; } char * gavl_search_state_dir(const char * package, const char * app, const char * directory) { const char * var; char * ret; if((var = getenv("XDG_STATE_HOME"))) ret = gavl_sprintf("%s/%s", var, package); else if((var = getenv("HOME"))) ret = gavl_sprintf("%s/.local/state/%s", var, package); else { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Cannot get state directory: neither HOME nor XDG_CONFIG_HOME is defined"); return NULL; } if(app) { ret = gavl_strcat(ret, "/"); ret = gavl_strcat(ret, app); } if(directory) { ret = gavl_strcat(ret, "/"); ret = gavl_strcat(ret, directory); } if(!gavl_ensure_directory(ret, 0)) { free(ret); return NULL; } return ret; } char * gavl_search_data_dir_nocreate(const char * package, const char * app, const char * directory) { const char * var; char * ret; if((var = getenv("XDG_DATA_HOME"))) ret = gavl_sprintf("%s/%s", var, package); else if((var = getenv("HOME"))) ret = gavl_sprintf("%s/.local/share/%s", var, package); else { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Cannot get data directory: neither HOME nor XDG_CONFIG_HOME is defined"); return NULL; } if(app) { ret = gavl_strcat(ret, "/"); ret = gavl_strcat(ret, app); } if(directory) { ret = gavl_strcat(ret, "/"); ret = gavl_strcat(ret, directory); } return ret; } char * gavl_search_data_dir(const char * package, const char * app, const char * directory) { char * ret = gavl_search_data_dir_nocreate(package, app, directory); if(!gavl_ensure_directory(ret, 0)) { free(ret); return NULL; } return ret; } /* 2D coordinate transforms */ void gavl_set_orient_matrix_inv(gavl_image_orientation_t orient, double mat[2][3]) { mat[0][2] = 0.0; mat[1][2] = 0.0; switch(orient) { case GAVL_IMAGE_ORIENT_NORMAL: // EXIF: 1 mat[0][0] = 1.0; mat[0][1] = 0.0; mat[1][0] = 0.0; mat[1][1] = 1.0; break; case GAVL_IMAGE_ORIENT_ROT90_CW: // EXIF: 8 mat[0][0] = 0.0; mat[0][1] = -1.0; mat[1][0] = 1.0; mat[1][1] = 0.0; break; case GAVL_IMAGE_ORIENT_ROT180_CW: // EXIF: 3 mat[0][0] = -1.0; mat[0][1] = 0.0; mat[1][0] = 0.0; mat[1][1] = -1.0; break; case GAVL_IMAGE_ORIENT_ROT270_CW: // EXIF: 6 mat[0][0] = 0.0; mat[0][1] = 1.0; mat[1][0] = -1.0; mat[1][1] = 0.0; break; case GAVL_IMAGE_ORIENT_FH: // EXIF: 2 mat[0][0] = -1.0; mat[0][1] = 0.0; mat[1][0] = 0.0; mat[1][1] = 1.0; break; case GAVL_IMAGE_ORIENT_FH_ROT90_CW: // EXIF: 7 mat[0][0] = 0.0; mat[0][1] = 1.0; mat[1][0] = 1.0; mat[1][1] = 0.0; break; case GAVL_IMAGE_ORIENT_FH_ROT180_CW: // EXIF: 4 mat[0][0] = 1.0; mat[0][1] = 0.0; mat[1][0] = 0.0; mat[1][1] = -1.0; break; case GAVL_IMAGE_ORIENT_FH_ROT270_CW: // EXIF: 5 mat[0][0] = 0.0; mat[0][1] = -1.0; mat[1][0] = -1.0; mat[1][1] = 0.0; break; default: // Keeps gcc quiet mat[0][0] = 1.0; mat[0][1] = 0.0; mat[1][0] = 0.0; mat[1][1] = 1.0; break; } } void gavl_set_orient_matrix(gavl_image_orientation_t orient, double mat[2][3]) { double tmp[2][3]; gavl_set_orient_matrix_inv(orient, tmp); gavl_2d_transform_invert(tmp, mat); } void gavl_2d_transform_invert(const double matrix[2][3], double inverse[2][3]) { // Extrahiere die 2x2 Transformationsmatrix double a = matrix[0][0]; double b = matrix[0][1]; double c = matrix[1][0]; double d = matrix[1][1]; // Extrahiere die Translationskomponenten double tx = matrix[0][2]; double ty = matrix[1][2]; // Berechne die Determinante der 2x2 Matrix double det = a * d - b * c; double inv_det; double inv_a; double inv_b; double inv_c; double inv_d; double inv_tx; double inv_ty; // Test for singularity if(det == 0.0) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Matrix is singular"); return; } // Berechne die Inverse der 2x2 Matrix inv_det = 1.0 / det; inv_a = d * inv_det; inv_b = -b * inv_det; inv_c = -c * inv_det; inv_d = a * inv_det; // Berechne die inverse Translation inv_tx = -(inv_a * tx + inv_b * ty); inv_ty = -(inv_c * tx + inv_d * ty); // Setze die inverse Matrix zusammen inverse[0][0] = inv_a; inverse[0][1] = inv_b; inverse[0][2] = inv_tx; inverse[1][0] = inv_c; inverse[1][1] = inv_d; inverse[1][2] = inv_ty; } void gavl_2d_transform_mult(const double mat1[2][3], const double mat2[2][3], double ret[2][3]) { ret[0][0] = mat1[0][0] * mat2[0][0] + mat1[0][1] * mat2[1][0]; ret[0][1] = mat1[0][0] * mat2[0][1] + mat1[0][1] * mat2[1][1]; ret[1][0] = mat1[1][0] * mat2[0][0] + mat1[1][1] * mat2[1][0]; ret[1][1] = mat1[1][0] * mat2[0][1] + mat1[1][1] * mat2[1][1]; ret[0][2] = mat1[0][0] * mat2[0][2] + mat1[0][1] * mat2[1][2] + mat1[0][2]; ret[1][2] = mat1[1][0] * mat2[0][2] + mat1[1][1] * mat2[1][2] + mat1[1][2]; } static void transform_2d_copy(double dst[2][3], const double src[2][3]) { int i, j; for(i = 0; i < 2; i++) { for(j = 0; j < 3; j++) { dst[i][j] = src[i][j]; } } } void gavl_2d_transform_prepend(double dst[2][3], const double src[2][3]) { double tmp[2][3]; gavl_2d_transform_mult(src, dst, tmp); transform_2d_copy(dst, tmp); } void gavl_2d_transform_transform(const double mat[2][3], const float * src, float * dst) { dst[0] = src[0] * mat[0][0] + src[1] * mat[0][1] + mat[0][2]; dst[1] = src[0] * mat[1][0] + src[1] * mat[1][1] + mat[1][2]; } void gavl_2d_transform_transform_inplace(const double mat[2][3], float * vec) { float tmp[2]; gavl_2d_transform_transform(mat, vec, tmp); memcpy(vec, tmp, 2*sizeof(vec[0])); } char * gavl_filename_get_dir(const char * filename) { const char * pos = strrchr(filename, '/'); return gavl_strndup(filename, pos); } char * gavl_filename_get_base(const char * filename) { const char * start; const char * end; if((start = strrchr(filename, '/'))) start++; else start = filename; if(!(end = strrchr(start, '.'))) end = start + strlen(start); return gavl_strndup(start, end); } char * gavl_filename_ensure_extension(const char * filename, const char * ext) { const char * pos; if((pos = strrchr(filename, '.')) && (!strcasecmp(pos+1, ext))) return gavl_strdup(filename); else return gavl_sprintf("%s.%s", filename, ext); } int gavl_read_file_range(const char * filename, gavl_buffer_t * buf, int64_t start, int64_t len) { FILE * file; file = fopen(filename, "r"); if(!file) return 0; if(len < 1) len = gavl_file_size(file) - start; gavl_buffer_alloc(buf, len + 1); if(start > 0) fseek(file, start, SEEK_SET); if(fread(buf->buf, 1, len, file) < len) { fclose(file); gavl_buffer_free(buf); return 0; } buf->len = len; buf->buf[buf->len] = '\0'; fclose(file); return 1; } int gavl_read_file(const char * filename, gavl_buffer_t * buf) { return gavl_read_file_range(filename, buf, 0, 0); } size_t gavl_file_size(FILE * f) { size_t ret; size_t oldpos; oldpos = ftell(f); fseek(f, 0, SEEK_END); ret = ftell(f); fseek(f, oldpos, SEEK_SET); return ret; } int gavl_write_file(const char * filename, void * data, int len) { FILE * file; file = fopen(filename, "w"); if(!file) return 0; if(fwrite(data, 1, len, file) < len) { fclose(file); return 0; } fclose(file); return 1; } bplaum-gavl-b9385e3/gavl/value.c000066400000000000000000000541541513252040200165010ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include #include #include #include #include #include #include #define LOG_DOMAIN "value" static const struct { gavl_type_t type; const char * name; } types[] = { { GAVL_TYPE_INT, "i" }, { GAVL_TYPE_LONG, "l" }, { GAVL_TYPE_FLOAT, "f" }, { GAVL_TYPE_STRING, "s" }, { GAVL_TYPE_AUDIOFORMAT, "af" }, { GAVL_TYPE_VIDEOFORMAT, "vf" }, { GAVL_TYPE_COLOR_RGB, "rgb" }, { GAVL_TYPE_COLOR_RGBA, "rgba" }, { GAVL_TYPE_POSITION, "pos" }, { GAVL_TYPE_DICTIONARY, "d" }, { GAVL_TYPE_ARRAY, "a" }, { GAVL_TYPE_BINARY, "b" }, { /* End */ }, }; const char * gavl_type_to_string(gavl_type_t type) { int i = 0; while(types[i].name) { if(type == types[i].type) return types[i].name; i++; } return NULL; } gavl_type_t gavl_type_from_string(const char * str) { int i = 0; while(types[i].name) { if(!strcmp(str, types[i].name)) return types[i].type; i++; } return GAVL_TYPE_UNDEFINED; } /* Value functions */ #define CMP_NUM(a, b) (a == b) ? 0 : ((a < b) ? -1 : 1) #define CMP_NUM_ARR(a, b, num) \ for(i = 0; i < num; i++) \ { \ if((res = CMP_NUM(a[i], b[i]))) \ return res; \ } \ return res int gavl_value_compare(const gavl_value_t * v1, const gavl_value_t * v2) { int i, res; if(!v1 && v2) return 1; if(v1 && !v2) return 1; if(!v1 && !v2) return 0; if(v1->type != v2->type) return 1; switch(v1->type) { case GAVL_TYPE_UNDEFINED: return 0; break; case GAVL_TYPE_INT: return CMP_NUM(v1->v.i, v2->v.i); break; case GAVL_TYPE_LONG: return CMP_NUM(v1->v.l, v2->v.l); break; case GAVL_TYPE_FLOAT: return CMP_NUM(v1->v.d, v2->v.d); break; case GAVL_TYPE_STRING: if(!v1->v.str && !v2->v.str) return 0; else if(v1->v.str && v2->v.str) return strcmp(v1->v.str, v2->v.str); else return 1; break; case GAVL_TYPE_AUDIOFORMAT: return memcmp(&v1->v.audioformat, &v2->v.audioformat, sizeof(v1->v.audioformat)); break; case GAVL_TYPE_VIDEOFORMAT: return memcmp(&v1->v.videoformat, &v2->v.videoformat, sizeof(v1->v.videoformat)); break; case GAVL_TYPE_COLOR_RGB: CMP_NUM_ARR(v1->v.color, v2->v.color, 3); break; case GAVL_TYPE_COLOR_RGBA: CMP_NUM_ARR(v1->v.color, v2->v.color, 4); break; case GAVL_TYPE_POSITION: CMP_NUM_ARR(v1->v.position, v2->v.position, 2); break; case GAVL_TYPE_DICTIONARY: return gavl_dictionary_compare(v1->v.dictionary, v2->v.dictionary); break; case GAVL_TYPE_ARRAY: return gavl_array_compare(v1->v.array, v2->v.array); break; case GAVL_TYPE_BINARY: { int num; int result; if(!v1->v.buffer->len && !v2->v.buffer->len) return 0; if(!v1->v.buffer->len || !v2->v.buffer->len) { return CMP_NUM(v1->v.buffer->len, v2->v.buffer->len); } if(v1->v.buffer->len > v2->v.buffer->len) num = v2->v.buffer->len; else num = v1->v.buffer->len; result = memcmp(v1->v.buffer->buf, v2->v.buffer->buf, num); if(!result) return CMP_NUM(v1->v.buffer->len, v2->v.buffer->len); else return result; } break; } return 0; } int gavl_value_clamp(gavl_value_t * v, const gavl_value_t * min, const gavl_value_t * max) { if(min && (gavl_value_compare(v, min) < 0)) gavl_value_copy(v, min); if(max && (gavl_value_compare(v, max) > 0)) gavl_value_copy(v, max); return 1; } int gavl_value_addto(const gavl_value_t * src, gavl_value_t * dst) { if(src->type != dst->type) return 0; switch(src->type) { case GAVL_TYPE_INT: dst->v.i += src->v.i; break; case GAVL_TYPE_LONG: dst->v.l += src->v.l; break; case GAVL_TYPE_FLOAT: dst->v.d += src->v.d; break; default: return 0; } /* TODO: Maybe add support for strings and arrays? */ return 1; } void gavl_value_copy(gavl_value_t * dst, const gavl_value_t * src) { gavl_value_reset(dst); if(!src || !src->type) { gavl_value_init(dst); return; } gavl_value_set_type(dst, src->type); switch(src->type) { case GAVL_TYPE_UNDEFINED: break; case GAVL_TYPE_INT: dst->v.i = src->v.i; break; case GAVL_TYPE_LONG: dst->v.l = src->v.l; break; case GAVL_TYPE_FLOAT: dst->v.d = src->v.d; break; case GAVL_TYPE_STRING: dst->v.str = gavl_strdup(src->v.str); break; case GAVL_TYPE_AUDIOFORMAT: { const gavl_audio_format_t * fmt_src; gavl_audio_format_t * fmt_dst; fmt_src = gavl_value_get_audio_format(src); fmt_dst = gavl_value_get_audio_format_nc(dst); gavl_audio_format_copy(fmt_dst, fmt_src); } break; case GAVL_TYPE_VIDEOFORMAT: { const gavl_video_format_t * fmt_src; gavl_video_format_t * fmt_dst; fmt_src = gavl_value_get_video_format(src); fmt_dst = gavl_value_get_video_format_nc(dst); gavl_video_format_copy(fmt_dst, fmt_src); } break; case GAVL_TYPE_BINARY: { const gavl_buffer_t * buf_src; gavl_buffer_t * buf_dst; buf_src = gavl_value_get_binary(src); buf_dst = gavl_value_get_binary_nc(dst); gavl_buffer_copy(buf_dst, buf_src); } break; case GAVL_TYPE_COLOR_RGB: memcpy(dst->v.color, src->v.color, 3 * sizeof(dst->v.color[0])); break; case GAVL_TYPE_COLOR_RGBA: memcpy(dst->v.color, src->v.color, 4 * sizeof(dst->v.color[0])); break; case GAVL_TYPE_POSITION: memcpy(dst->v.position, src->v.position, 2 * sizeof(dst->v.position[0])); break; case GAVL_TYPE_DICTIONARY: if(src->v.dictionary) gavl_dictionary_copy(dst->v.dictionary, src->v.dictionary); break; case GAVL_TYPE_ARRAY: if(src->v.array) gavl_array_copy(dst->v.array, src->v.array); break; } } void gavl_value_free(gavl_value_t * v) { switch(v->type) { case GAVL_TYPE_UNDEFINED: case GAVL_TYPE_INT: case GAVL_TYPE_LONG: case GAVL_TYPE_FLOAT: case GAVL_TYPE_COLOR_RGB: case GAVL_TYPE_COLOR_RGBA: case GAVL_TYPE_POSITION: break; case GAVL_TYPE_STRING: if(v->v.str) free(v->v.str); break; case GAVL_TYPE_DICTIONARY: if(v->v.dictionary) gavl_dictionary_destroy(v->v.dictionary); break; case GAVL_TYPE_ARRAY: if(v->v.array) gavl_array_destroy(v->v.array); break; case GAVL_TYPE_AUDIOFORMAT: if(v->v.audioformat) free(v->v.audioformat); break; case GAVL_TYPE_VIDEOFORMAT: if(v->v.videoformat) free(v->v.videoformat); break; case GAVL_TYPE_BINARY: if(v->v.buffer) { gavl_buffer_free(v->v.buffer); free(v->v.buffer); } break; } } void gavl_value_init(gavl_value_t * v) { memset(v, 0, sizeof(*v)); } void gavl_value_reset(gavl_value_t * v) { gavl_value_free(v); gavl_value_init(v); } void gavl_value_set_int(gavl_value_t * v, int val) { gavl_value_reset(v); v->type = GAVL_TYPE_INT; v->v.i = val; } void gavl_value_set_float(gavl_value_t * v, double val) { gavl_value_reset(v); v->type = GAVL_TYPE_FLOAT; v->v.d = val; } void gavl_value_set_long(gavl_value_t * v, int64_t val) { gavl_value_reset(v); v->type = GAVL_TYPE_LONG; v->v.l = val; } void gavl_value_set_string(gavl_value_t * v, const char * str) { gavl_value_reset(v); gavl_value_set_string_nocopy(v, gavl_strdup(str)); } void gavl_value_set_string_nocopy(gavl_value_t * v, char * str) { gavl_value_reset(v); v->type = GAVL_TYPE_STRING; v->v.str = str; if(v->v.str) gavl_strtrim(v->v.str); } gavl_buffer_t * gavl_value_set_binary(gavl_value_t * v) { gavl_value_reset(v); v->type = GAVL_TYPE_BINARY; v->v.buffer = calloc(1, sizeof(*v->v.buffer)); return v->v.buffer; } const gavl_buffer_t * gavl_value_get_binary(const gavl_value_t * v) { if(v->type != GAVL_TYPE_BINARY) return NULL; return v->v.buffer; } gavl_buffer_t * gavl_value_get_binary_nc(gavl_value_t * v) { if(v->type != GAVL_TYPE_BINARY) return NULL; return v->v.buffer; } gavl_audio_format_t * gavl_value_set_audio_format(gavl_value_t * v) { gavl_value_reset(v); v->type = GAVL_TYPE_AUDIOFORMAT; v->v.audioformat = calloc(1, sizeof(*v->v.audioformat)); return v->v.audioformat; } gavl_video_format_t * gavl_value_set_video_format(gavl_value_t * v) { gavl_value_reset(v); v->type = GAVL_TYPE_VIDEOFORMAT; v->v.videoformat = calloc(1, sizeof(*v->v.videoformat)); return v->v.videoformat; } gavl_dictionary_t * gavl_value_set_dictionary(gavl_value_t * v) { gavl_value_reset(v); v->type = GAVL_TYPE_DICTIONARY; v->v.dictionary = calloc(1, sizeof(*v->v.dictionary)); return v->v.dictionary; } void gavl_value_set_dictionary_nocopy(gavl_value_t * v, gavl_dictionary_t * val) { gavl_value_reset(v); v->type = GAVL_TYPE_DICTIONARY; v->v.dictionary = val; } void gavl_value_set_array_nocopy(gavl_value_t * v, gavl_array_t * val) { gavl_array_t * dst; gavl_value_reset(v); dst = gavl_value_set_array(v); gavl_array_move(dst, val); } gavl_array_t * gavl_value_set_array(gavl_value_t * v) { gavl_value_reset(v); v->type = GAVL_TYPE_ARRAY; v->v.array = calloc(1, sizeof(*v->v.array)); return v->v.array; } double * gavl_value_set_position(gavl_value_t * v) { gavl_value_reset(v); v->type = GAVL_TYPE_POSITION; return v->v.position; } double * gavl_value_set_color_rgb(gavl_value_t * v) { gavl_value_reset(v); v->type = GAVL_TYPE_COLOR_RGB; return v->v.color; } double * gavl_value_set_color_rgba(gavl_value_t * v) { gavl_value_reset(v); v->type = GAVL_TYPE_COLOR_RGBA; return v->v.color; } void gavl_value_move(gavl_value_t * dst, gavl_value_t * src) { memcpy(dst, src, sizeof(*dst)); gavl_value_init(src); } void gavl_value_append(gavl_value_t * v, const gavl_value_t * child) { if(v->type == GAVL_TYPE_UNDEFINED) { /* First element: Set as value */ gavl_value_copy(v, child); } else if(v->type != GAVL_TYPE_ARRAY) { /* First element already there: Convert to array */ gavl_array_t * arr; gavl_value_t save; gavl_value_move(&save, v); arr = gavl_value_set_array(v); /* First element already there: Convert to array */ gavl_array_push_nocopy(arr, &save); gavl_array_push(arr, child); } else { /* Append to array */ gavl_array_push(v->v.array, child); } } void gavl_value_append_nocopy(gavl_value_t * v, gavl_value_t * child) { if(v->type == GAVL_TYPE_UNDEFINED) { /* First element: Set as value */ gavl_value_move(v, child); return; } else if(v->type != GAVL_TYPE_ARRAY) { /* First element already there: Convert to array */ gavl_array_t * arr; gavl_value_t save; gavl_value_move(&save, v); arr = gavl_value_set_array(v); gavl_array_push_nocopy(arr, &save); gavl_array_push_nocopy(arr, child); } else { /* Append to array */ gavl_array_push_nocopy(v->v.array, child); } } int gavl_value_get_num_items(const gavl_value_t * v) { if(v->type == GAVL_TYPE_UNDEFINED) return 0; if(v->type == GAVL_TYPE_ARRAY) return v->v.array->num_entries; return 1; } const gavl_value_t * gavl_value_get_item(const gavl_value_t * v, int item) { if(v->type == GAVL_TYPE_UNDEFINED) return NULL; if(v->type == GAVL_TYPE_ARRAY) return gavl_array_get(v->v.array, item); else if(!item) return v; else return NULL; } void gavl_value_delete_item(gavl_value_t * v, int item) { if(v->type == GAVL_TYPE_UNDEFINED) return; if(v->type == GAVL_TYPE_ARRAY) return gavl_array_splice_val(v->v.array, item, 1, NULL); else if(!item) { gavl_value_free(v); gavl_value_init(v); } } gavl_value_t * gavl_value_get_item_nc(gavl_value_t * v, int item) { if(v->type == GAVL_TYPE_UNDEFINED) return NULL; if(v->type == GAVL_TYPE_ARRAY) return gavl_array_get_nc(v->v.array, item); else if(!item) return v; else return NULL; } /* Get value */ int gavl_value_get_int(const gavl_value_t * v, int * val) { switch(v->type) { case GAVL_TYPE_INT: *val = v->v.i; break; case GAVL_TYPE_LONG: *val = (int)(v->v.l); break; case GAVL_TYPE_FLOAT: *val = (int)(v->v.d); break; case GAVL_TYPE_STRING: { char * rest; const char * end = v->v.str + strlen(v->v.str); *val = strtol(v->v.str, &rest, 10); if(rest != end) return 0; } break; default: return 0; break; } return 1; } int gavl_value_get_float(const gavl_value_t * v, double * val) { switch(v->type) { case GAVL_TYPE_INT: *val = v->v.i; break; case GAVL_TYPE_LONG: *val = v->v.l; break; case GAVL_TYPE_FLOAT: *val = v->v.d; break; case GAVL_TYPE_STRING: { char * rest; const char * end = v->v.str + strlen(v->v.str); *val = strtod(v->v.str, &rest); if(rest != end) return 0; } default: return 0; break; } return 1; } int gavl_value_get_long(const gavl_value_t * v, int64_t * val) { switch(v->type) { case GAVL_TYPE_INT: *val = v->v.i; break; case GAVL_TYPE_LONG: *val = v->v.l; break; case GAVL_TYPE_FLOAT: *val = v->v.d; break; case GAVL_TYPE_STRING: { char * rest; const char * end = v->v.str + strlen(v->v.str); *val = strtoll(v->v.str, &rest, 10); if(rest != end) { // fprintf(stderr, "Couldn't transform value: %s", v->v.str); return 0; } } break; default: return 0; break; } return 1; } const char * gavl_value_get_string(const gavl_value_t * v) { if(v->type == GAVL_TYPE_STRING) return v->v.str; return NULL; } char * gavl_value_get_string_nc(gavl_value_t * v) { if(v->type == GAVL_TYPE_STRING) return v->v.str; return NULL; } char * gavl_value_to_string(const gavl_value_t * v) { switch(v->type) { case GAVL_TYPE_INT: return gavl_sprintf("%d", v->v.i); break; case GAVL_TYPE_LONG: return gavl_sprintf("%"PRId64, v->v.l); break; case GAVL_TYPE_FLOAT: return gavl_sprintf("%.16e", v->v.d); break; case GAVL_TYPE_STRING: return gavl_strdup(v->v.str); break; default: return NULL; break; } } int gavl_value_from_string(gavl_value_t * v, const char * str) { switch(v->type) { case GAVL_TYPE_UNDEFINED: { char * rest; const char * end; end = str + strlen(str); v->v.l = strtoll(str, &rest, 10); if(rest == end) { v->type = GAVL_TYPE_LONG; break; } v->v.d = strtod(str, &rest); if(rest == end) { v->type = GAVL_TYPE_FLOAT; break; } // Default v->v.str = gavl_strdup(str); v->type = GAVL_TYPE_STRING; break; } break; case GAVL_TYPE_INT: v->v.i = strtol(str, NULL, 10); break; case GAVL_TYPE_LONG: v->v.l = strtoll(str, NULL, 10); break; case GAVL_TYPE_FLOAT: v->v.d = strtod(str, NULL); break; case GAVL_TYPE_STRING: v->v.str = gavl_strdup(str); break; case GAVL_TYPE_COLOR_RGB: { if(sscanf(str, "%lf,%lf,%lf", &v->v.color[0], &v->v.color[1], &v->v.color[2]) == 3) break; if(str[0] == '#') { int hexvalue = strtol(str + 1, NULL, 16); v->v.color[0] = ((hexvalue >> 16) & 0xFF) / 255.0; // Extract the RR byte v->v.color[1] = ((hexvalue >> 8) & 0xFF) / 255.0; // Extract the GG byte v->v.color[2] = ((hexvalue) & 0xFF) / 255.0; // Extract the BB byte break; } else { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Cannot parse rgb color %s", str); return 0; } } break; case GAVL_TYPE_COLOR_RGBA: { if(sscanf(str, "%lf,%lf,%lf,%lf", &v->v.color[0], &v->v.color[1], &v->v.color[2], &v->v.color[3]) == 4) return 1; } default: gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Cannot set value of type %s from string %s", gavl_type_to_string(v->type), str); return 0; break; } return 1; } const gavl_audio_format_t * gavl_value_get_audio_format(const gavl_value_t * v) { if(v->type != GAVL_TYPE_AUDIOFORMAT) return NULL; return v->v.audioformat; } gavl_audio_format_t * gavl_value_get_audio_format_nc(gavl_value_t * v) { if(v->type != GAVL_TYPE_AUDIOFORMAT) return NULL; return v->v.audioformat; } const gavl_video_format_t * gavl_value_get_video_format(const gavl_value_t * v) { if(v->type != GAVL_TYPE_VIDEOFORMAT) return NULL; return v->v.videoformat; } gavl_video_format_t * gavl_value_get_video_format_nc(gavl_value_t * v) { if(v->type != GAVL_TYPE_VIDEOFORMAT) return NULL; return v->v.videoformat; } const gavl_dictionary_t * gavl_value_get_dictionary(const gavl_value_t * v) { if(v->type != GAVL_TYPE_DICTIONARY) return NULL; return v->v.dictionary; } gavl_dictionary_t * gavl_value_get_dictionary_nc(gavl_value_t * v) { if(v->type != GAVL_TYPE_DICTIONARY) return NULL; return v->v.dictionary; } const gavl_array_t * gavl_value_get_array(const gavl_value_t * v) { if(v->type != GAVL_TYPE_ARRAY) return NULL; return v->v.array; } gavl_array_t * gavl_value_get_array_nc(gavl_value_t * v) { if(v->type != GAVL_TYPE_ARRAY) return NULL; return v->v.array; } const double * gavl_value_get_position(const gavl_value_t * v) { if(v->type != GAVL_TYPE_POSITION) return NULL; return v->v.position; } const double * gavl_value_get_color_rgb(const gavl_value_t * v) { if(v->type != GAVL_TYPE_COLOR_RGB) return NULL; return v->v.color; } const double * gavl_value_get_color_rgba(const gavl_value_t * v) { if(v->type != GAVL_TYPE_COLOR_RGBA) return NULL; return v->v.color; } void gavl_value_dump(const gavl_value_t * v, int indent) { if(!v) { gavl_diprintf(0, "NULL"); return; } switch(v->type) { case GAVL_TYPE_UNDEFINED: break; case GAVL_TYPE_INT: gavl_diprintf(indent, "%d", v->v.i); break; case GAVL_TYPE_LONG: gavl_diprintf(indent, "%"PRId64, v->v.l); break; case GAVL_TYPE_FLOAT: gavl_diprintf(indent, "%f", v->v.d); break; case GAVL_TYPE_AUDIOFORMAT: gavl_diprintf(0, "\n"); gavl_audio_format_dumpi(v->v.audioformat, indent); break; case GAVL_TYPE_VIDEOFORMAT: gavl_diprintf(0, "\n"); gavl_video_format_dumpi(v->v.videoformat, indent); break; case GAVL_TYPE_COLOR_RGB: gavl_diprintf(indent, "[ %f, %f, %f ]", v->v.color[0], v->v.color[1], v->v.color[2]); break; case GAVL_TYPE_COLOR_RGBA: gavl_diprintf(indent, "[ %f, %f, %f, %f ]", v->v.color[0], v->v.color[1], v->v.color[2], v->v.color[3]); break; case GAVL_TYPE_POSITION: gavl_diprintf(indent, "[ %f, %f ]", v->v.position[0], v->v.position[1]); break; case GAVL_TYPE_STRING: if(!v->v.str) gavl_diprintf(indent, "NULL"); else gavl_diprintf(indent, "\"%s\"", v->v.str); break; case GAVL_TYPE_DICTIONARY: gavl_dprintf("\n"); gavl_dictionary_dump(v->v.dictionary, indent); break; case GAVL_TYPE_ARRAY: gavl_dprintf("\n"); gavl_array_dump(v->v.array, indent); break; case GAVL_TYPE_BINARY: gavl_diprintf(indent, "%d bytes\n", v->v.buffer->len); if(v->v.buffer->len && (v->v.buffer->len <= 256)) gavl_hexdumpi(v->v.buffer->buf, v->v.buffer->len, 16, indent+2); break; } } GAVL_PUBLIC void gavl_value_set_type(gavl_value_t * v, gavl_type_t t) { switch(t) { case GAVL_TYPE_UNDEFINED: case GAVL_TYPE_INT: case GAVL_TYPE_LONG: case GAVL_TYPE_FLOAT: case GAVL_TYPE_COLOR_RGB: case GAVL_TYPE_COLOR_RGBA: case GAVL_TYPE_POSITION: case GAVL_TYPE_STRING: v->type = t; break; case GAVL_TYPE_AUDIOFORMAT: gavl_value_set_audio_format(v); break; case GAVL_TYPE_VIDEOFORMAT: gavl_value_set_video_format(v); break; case GAVL_TYPE_DICTIONARY: gavl_value_set_dictionary(v); break; case GAVL_TYPE_ARRAY: gavl_value_set_array(v); break; case GAVL_TYPE_BINARY: gavl_value_set_binary(v); break; } } char * gavl_value_join_arr(const gavl_value_t * val, const char * glue) { if(!val) return NULL; if(val->type == GAVL_TYPE_STRING) return gavl_strdup(val->v.str); else if(val->type == GAVL_TYPE_ARRAY) { const gavl_array_t * arr = val->v.array; return gavl_string_array_join(arr, glue); } else return NULL; } bplaum-gavl-b9385e3/gavl/videoconnector.c000066400000000000000000000166721513252040200204110ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include #include #include typedef struct { gavl_video_frame_t * sink_frame; gavl_video_frame_t * in_frame; gavl_video_sink_t * sink; gavl_video_source_t * src; const gavl_video_format_t * fmt; int * penalties; gavl_video_connector_t * c; } sink_t; struct gavl_video_connector_s { gavl_video_source_t * src; const gavl_video_format_t * fmt; gavl_video_frame_t * in_frame; sink_t * sinks; int num_sinks; int sinks_alloc; gavl_video_connector_process_func process_func; void * process_priv; gavl_video_options_t opt; int have_in_frame; gavl_source_status_t src_st; }; gavl_video_connector_t * gavl_video_connector_create(gavl_video_source_t * src) { gavl_video_connector_t * ret = calloc(1, sizeof(*ret)); ret->src = src; ret->fmt = gavl_video_source_get_src_format(ret->src); gavl_video_options_set_defaults(&ret->opt); return ret; } gavl_video_options_t * gavl_video_connector_get_options(gavl_video_connector_t * c) { return &c->opt; } void gavl_video_connector_destroy(gavl_video_connector_t * c) { int i; for(i = 0; i < c->num_sinks; i++) { if(c->sinks[i].src) gavl_video_source_destroy(c->sinks[i].src); } if(c->sinks) free(c->sinks); free(c); } void gavl_video_connector_connect(gavl_video_connector_t * c, gavl_video_sink_t * sink) { sink_t * s; if(c->num_sinks + 1 > c->sinks_alloc) { c->sinks_alloc += 8; c->sinks = realloc(c->sinks, c->sinks_alloc * sizeof(*c->sinks)); memset(c->sinks + c->num_sinks, 0, (c->sinks_alloc - c->num_sinks) * sizeof(*c->sinks)); } s = c->sinks + c->num_sinks; s->sink = sink; s->c = c; s->fmt = gavl_video_sink_get_format(s->sink); c->num_sinks++; } void gavl_video_connector_set_process_func(gavl_video_connector_t * c, gavl_video_connector_process_func func, void * priv) { c->process_func = func; c->process_priv = priv; } static gavl_source_status_t read_func(void * priv, gavl_video_frame_t ** frame) { sink_t * s = priv; if(s->c->src_st == GAVL_SOURCE_EOF) return GAVL_SOURCE_EOF; if(s->in_frame) { *frame = s->in_frame; s->in_frame = NULL; return GAVL_SOURCE_OK; } else return GAVL_SOURCE_AGAIN; } static int flush_src(sink_t * s) { gavl_source_status_t src_st; gavl_sink_status_t sink_st; while(1) { if(!s->sink_frame) s->sink_frame = gavl_video_sink_get_frame(s->sink); src_st = gavl_video_source_read_frame(s->src, &s->sink_frame); switch(src_st) { case GAVL_SOURCE_EOF: s->sink_frame = NULL; return 1; case GAVL_SOURCE_AGAIN: return 1; case GAVL_SOURCE_OK: break; } sink_st = gavl_video_sink_put_frame(s->sink, s->sink_frame); s->sink_frame = NULL; if(sink_st != GAVL_SINK_OK) return 0; } return 1; } void gavl_video_connector_reset(gavl_video_connector_t * c) { int i; c->in_frame = NULL; c->have_in_frame = 0; c->src_st = GAVL_SOURCE_OK; for(i = 0; i < c->num_sinks; i++) { if(c->sinks[i].src) gavl_video_source_reset(c->sinks[i].src); } } int gavl_video_connector_process(gavl_video_connector_t * c) { int i; sink_t * s; gavl_sink_status_t sink_st; if(!c->have_in_frame) { c->in_frame = NULL; /* Obtain buffer for input frame */ for(i = 0; i < c->num_sinks; i++) { s = c->sinks + i; if(!s->src) { /* Passthrough */ s->sink_frame = gavl_video_sink_get_frame(s->sink); if(!c->in_frame) c->in_frame = s->sink_frame; } } c->have_in_frame = 1; } /* Get input frame */ c->src_st = gavl_video_source_read_frame(c->src, &c->in_frame); switch(c->src_st) { case GAVL_SOURCE_OK: break; case GAVL_SOURCE_AGAIN: return 1; break; case GAVL_SOURCE_EOF: for(i = 0; i < c->num_sinks; i++) { s = c->sinks + i; if(s->src && !flush_src(s)) return 0; } return 0; } if(c->process_func) c->process_func(c->process_priv, c->in_frame); /* Flush sinks */ for(i = 0; i < c->num_sinks; i++) { s = c->sinks + i; /* No src, pass frame directly */ if(!s->src) { /* Passthrough */ if(!s->sink_frame) sink_st = gavl_video_sink_put_frame(s->sink, c->in_frame); else { if(s->sink_frame != c->in_frame) { gavl_video_frame_copy(s->fmt, s->sink_frame, c->in_frame); gavl_video_frame_copy_metadata(s->sink_frame, c->in_frame); } sink_st = gavl_video_sink_put_frame(s->sink, s->sink_frame); } if(sink_st != GAVL_SINK_OK) return 0; } else { /* Pass frame through the sink->src */ s->in_frame = c->in_frame; if(!flush_src(s)) return 0; } } c->have_in_frame = 0; return 1; } gavl_source_status_t gavl_video_connector_get_source_status(gavl_video_connector_t * c) { return c->src_st; } #if 0 static int get_penalty(gavl_video_converter_t * cnv, const gavl_video_format_t * src_fmt, const gavl_video_format_t * dst_fmt) { return 0; } #endif void gavl_video_connector_start(gavl_video_connector_t * c) { int i; gavl_video_converter_t * cnv; sink_t * s; /* Handle trivial case early */ if(!c->num_sinks) return; else if(c->num_sinks == 1) { gavl_video_source_set_dst(c->src, 0, c->sinks->fmt); return; } else gavl_video_source_set_dst(c->src, 0, NULL); cnv = gavl_video_converter_create(); gavl_video_options_copy(gavl_video_converter_get_options(cnv), &c->opt); for(i = 0; i < c->num_sinks; i++) { s = c->sinks + i; if((c->fmt->timescale != s->fmt->timescale) || (c->fmt->framerate_mode != s->fmt->framerate_mode) || gavl_video_converter_init(cnv, c->fmt, s->fmt)) { s->src = gavl_video_source_create(read_func, s, GAVL_SOURCE_SRC_ALLOC, c->fmt); gavl_video_options_copy(gavl_video_source_get_options(s->src), &c->opt); gavl_video_source_set_dst(s->src, 0, s->fmt); } } gavl_video_converter_destroy(cnv); } const gavl_video_format_t * gavl_video_connector_get_process_format(gavl_video_connector_t * c) { return gavl_video_source_get_dst_format(c->src); } bplaum-gavl-b9385e3/gavl/videoconverter.c000066400000000000000000000404451513252040200204210ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include /* calloc, free */ #include //#define DEBUG //#ifdef DEBUG #include //#endif #include #include #include #define LOG_DOMAIN "videoconverter" #include #include #ifdef HAVE_V4L2 // #include #include #endif /*************************************************** * Create and destroy video converters ***************************************************/ gavl_video_converter_t * gavl_video_converter_create() { gavl_video_converter_t * ret = calloc(1,sizeof(gavl_video_converter_t)); gavl_video_options_set_defaults(&ret->options); return ret; } static void video_converter_cleanup(gavl_video_converter_t* cnv) { gavl_video_convert_context_t * ctx; while(cnv->first_context) { ctx = cnv->first_context->next; if(cnv->first_context->scaler) gavl_video_scaler_destroy(cnv->first_context->scaler); if(cnv->first_context->output_frame && cnv->first_context->next) gavl_video_frame_destroy(cnv->first_context->output_frame); free(cnv->first_context); cnv->first_context = ctx; } cnv->last_context = NULL; cnv->num_contexts = 0; if(cnv->tp_priv) { gavl_thread_pool_destroy(cnv->tp_priv); cnv->tp_priv = NULL; cnv->options.tp = NULL; } } void gavl_video_converter_destroy(gavl_video_converter_t* cnv) { video_converter_cleanup(cnv); free(cnv); } /* Add a context to the converter */ static gavl_video_convert_context_t * add_context(gavl_video_converter_t * cnv, const gavl_video_format_t * input_format, const gavl_video_format_t * output_format) { gavl_video_convert_context_t * ctx; ctx = calloc(1, sizeof(*ctx)); ctx->options = &cnv->options; gavl_video_format_copy(&ctx->input_format, input_format); gavl_video_format_copy(&ctx->output_format, output_format); if(cnv->last_context) { cnv->last_context->next = ctx; cnv->last_context = cnv->last_context->next; } else { cnv->first_context = ctx; cnv->last_context = ctx; } cnv->num_contexts++; return ctx; } static int add_context_csp(gavl_video_converter_t * cnv, const gavl_video_format_t * input_format, const gavl_video_format_t * output_format) { gavl_video_convert_context_t * ctx; ctx = add_context(cnv, input_format, output_format); ctx->func = gavl_find_pixelformat_converter(&cnv->options, input_format->pixelformat, output_format->pixelformat, input_format->frame_width, input_format->frame_height); if(!ctx->func) { #if 0 fprintf(stderr, "Found no conversion from %s to %s\n", gavl_pixelformat_to_string(input_format->pixelformat), gavl_pixelformat_to_string(output_format->pixelformat)); #endif return 0; } #if 1 gavl_log(GAVL_LOG_DEBUG, LOG_DOMAIN, "Doing pixelformat conversion from %s to %s", gavl_pixelformat_to_string(input_format->pixelformat), gavl_pixelformat_to_string(output_format->pixelformat)); #endif return 1; } static void scale_func(gavl_video_convert_context_t * ctx) { gavl_video_scaler_scale(ctx->scaler, ctx->input_frame, ctx->output_frame); } static int add_context_scale(gavl_video_converter_t * cnv, const gavl_video_format_t * input_format, const gavl_video_format_t * output_format) { gavl_video_options_t * scaler_options; gavl_video_convert_context_t * ctx; ctx = add_context(cnv, input_format, output_format); ctx->scaler = gavl_video_scaler_create(); scaler_options = gavl_video_scaler_get_options(ctx->scaler); gavl_video_options_copy(scaler_options, &cnv->options); #if 0 fprintf(stderr, "gavl_video_scaler_init:\n"); fprintf(stderr, "src_format:\n"); gavl_video_format_dump(input_format); fprintf(stderr, "dst_format:\n"); gavl_video_format_dump(output_format); fprintf(stderr, "src_rectangle: "); gavl_rectangle_f_dump(&cnv->options.src_rect); fprintf(stderr, "\n"); fprintf(stderr, "dst_rectangle: "); gavl_rectangle_i_dump(&cnv->options.dst_rect); fprintf(stderr, "\n"); #endif if(!gavl_video_scaler_init(ctx->scaler, input_format, output_format)) { // fprintf(stderr, "Initializing scaler failed\n"); return 0; } ctx->func = scale_func; return 1; } static void deinterlace_func(gavl_video_convert_context_t * ctx) { gavl_video_deinterlacer_deinterlace(ctx->deinterlacer, ctx->input_frame, ctx->output_frame); } static int add_context_deinterlace(gavl_video_converter_t * cnv, const gavl_video_format_t * in_format, const gavl_video_format_t * out_format) { gavl_video_options_t * deinterlacer_options; gavl_video_convert_context_t * ctx; ctx = add_context(cnv, in_format, out_format); ctx->deinterlacer = gavl_video_deinterlacer_create(); deinterlacer_options = gavl_video_deinterlacer_get_options(ctx->deinterlacer); gavl_video_options_copy(deinterlacer_options, &cnv->options); if(!gavl_video_deinterlacer_init(ctx->deinterlacer, in_format)) return 0; ctx->func = deinterlace_func; return 1; } int gavl_video_converter_reinit(gavl_video_converter_t * cnv) { int csp_then_scale = 0; gavl_pixelformat_t tmp_csp = GAVL_PIXELFORMAT_NONE; int do_csp = 0; int do_scale = 0; int do_deinterlace = 0; int in_sub; int out_sub; int sub_h; int sub_v; gavl_video_format_t tmp_format; gavl_video_format_t tmp_format1; gavl_video_format_t * input_format; gavl_video_format_t * output_format; input_format = &cnv->input_format; output_format = &cnv->output_format; if(cnv->tp_priv) { gavl_thread_pool_destroy(cnv->tp_priv); cnv->tp_priv = NULL; cnv->options.tp = NULL; } // #ifdef DEBUG #if 0 fprintf(stderr, "Initializing video converter, quality: %d, Flags: 0x%08x\n", cnv->options.quality, cnv->options.accel_flags); gavl_video_format_dump(input_format); gavl_video_format_dump(output_format); #endif video_converter_cleanup(cnv); gavl_video_format_copy(&tmp_format, input_format); /* Adjust pixelformat */ if((cnv->options.alpha_mode == GAVL_ALPHA_IGNORE) && (tmp_format.pixelformat == GAVL_RGBA_32) && (output_format->pixelformat == GAVL_RGB_32)) tmp_format.pixelformat = GAVL_RGB_32; /* Check for pixelformat conversion */ if(tmp_format.pixelformat != output_format->pixelformat) { do_csp = 1; } if(cnv->options.src_rect.x || cnv->options.src_rect.y || cnv->options.dst_rect.x || cnv->options.dst_rect.y || (cnv->options.src_rect.w && (cnv->options.src_rect.w != tmp_format.image_width)) || (cnv->options.src_rect.h && (cnv->options.src_rect.h != tmp_format.image_height)) || (cnv->options.dst_rect.w && (cnv->options.dst_rect.w != output_format->image_width)) || (cnv->options.dst_rect.h && (cnv->options.dst_rect.h != output_format->image_height)) || (tmp_format.image_width != output_format->image_width) || (tmp_format.image_height != output_format->image_height) || (tmp_format.pixel_width != output_format->pixel_width) || (tmp_format.pixel_height != output_format->pixel_height)) { do_scale = 1; } /* For quality levels above 3, we switch on scaling, if it provides a more accurate conversion. This is especially true if the chroma subsampling ratios change or when the chroma placement becomes different */ if(((cnv->options.quality > 3) || (cnv->options.conversion_flags & GAVL_RESAMPLE_CHROMA) || do_scale)) { if(do_csp) { /* Check, if pixelformat conversion can be replaced by simple scaling (True if only the subsampling changes) */ if(gavl_pixelformat_can_scale(tmp_format.pixelformat, output_format->pixelformat)) { do_scale = 1; do_csp = 0; } else { tmp_csp = gavl_pixelformat_get_intermediate(tmp_format.pixelformat, output_format->pixelformat); if(tmp_csp != GAVL_PIXELFORMAT_NONE) do_scale = 1; } } /* Having different chroma placements also switches on scaling */ else if(tmp_format.chroma_placement != output_format->chroma_placement) { do_scale = 1; } } /* Check if we must deinterlace */ if(((input_format->interlace_mode != GAVL_INTERLACE_NONE) && (output_format->interlace_mode == GAVL_INTERLACE_NONE)) || (cnv->options.conversion_flags & GAVL_FORCE_DEINTERLACE)) { // fprintf(stderr, "Forcing deinterlacing\n"); if(cnv->options.deinterlace_mode == GAVL_DEINTERLACE_SCALE) do_scale = 1; else if(cnv->options.deinterlace_mode != GAVL_DEINTERLACE_NONE) do_deinterlace = 1; } /* Now we know which operations to perform. */ if(!cnv->options.tp && do_scale) { cnv->tp_priv = gavl_thread_pool_create(-1); cnv->options.tp = cnv->tp_priv; } /* Deinterlacing must always be the first step */ if(do_deinterlace) { gavl_video_format_copy(&tmp_format1, &tmp_format); tmp_format1.interlace_mode = GAVL_INTERLACE_NONE; if(!add_context_deinterlace(cnv, &tmp_format, &tmp_format1)) return -1; gavl_video_format_copy(&tmp_format, &tmp_format1); } if(do_csp && do_scale) { /* For qualities below 3, we scale in the pixelformat with the smaller subsampling */ if(tmp_csp == GAVL_PIXELFORMAT_NONE) { gavl_pixelformat_chroma_sub(tmp_format.pixelformat, &sub_h, &sub_v); in_sub = sub_h * sub_v; gavl_pixelformat_chroma_sub(output_format->pixelformat, &sub_h, &sub_v); out_sub = sub_h * sub_v; if(((in_sub < out_sub) && cnv->options.quality < 3) || ((in_sub >= out_sub) && cnv->options.quality >= 3)) csp_then_scale = 1; } else { if(!gavl_pixelformat_can_scale(input_format->pixelformat, tmp_csp)) csp_then_scale = 1; #if 0 fprintf(stderr, "converting %s -> %s -> %s (%d, %d)\n", gavl_pixelformat_to_string(input_format->pixelformat), gavl_pixelformat_to_string(tmp_csp), gavl_pixelformat_to_string(output_format->pixelformat), gavl_pixelformat_can_scale(input_format->pixelformat, tmp_csp), gavl_pixelformat_can_scale(tmp_csp, output_format->pixelformat)); #endif } if(csp_then_scale) /* csp then scale */ { #if 0 fprintf(stderr, "csp then scale\n"); #endif /* csp (tmp_format -> tmp_format1) */ gavl_video_format_copy(&tmp_format1, &tmp_format); if(tmp_csp != GAVL_PIXELFORMAT_NONE) tmp_format1.pixelformat = tmp_csp; else tmp_format1.pixelformat = output_format->pixelformat; if(!add_context_csp(cnv, &tmp_format, &tmp_format1)) return -1; gavl_video_format_copy(&tmp_format, &tmp_format1); /* scale (tmp_format -> tmp_format1) */ tmp_format1.pixelformat = output_format->pixelformat; tmp_format1.image_width = output_format->image_width; tmp_format1.image_height = output_format->image_height; tmp_format1.pixel_width = output_format->pixel_width; tmp_format1.pixel_height = output_format->pixel_height; tmp_format1.frame_width = output_format->image_width; tmp_format1.frame_height = output_format->image_height; tmp_format1.chroma_placement = output_format->chroma_placement; tmp_format1.interlace_mode = output_format->interlace_mode; if(!add_context_scale(cnv, &tmp_format, &tmp_format1)) return -1; gavl_video_format_copy(&tmp_format, &tmp_format1); } /* scale then csp */ else { #if 0 fprintf(stderr, "scale then csp\n"); #endif /* scale (tmp_format -> tmp_format1) */ gavl_video_format_copy(&tmp_format1, &tmp_format); tmp_format1.image_width = output_format->image_width; tmp_format1.image_height = output_format->image_height; tmp_format1.pixel_width = output_format->pixel_width; tmp_format1.pixel_height = output_format->pixel_height; tmp_format1.frame_width = output_format->image_width; tmp_format1.frame_height = output_format->image_height; tmp_format1.interlace_mode = output_format->interlace_mode; if(tmp_csp != GAVL_PIXELFORMAT_NONE) { tmp_format1.pixelformat = tmp_csp; } tmp_format1.chroma_placement = output_format->chroma_placement; if(!add_context_scale(cnv, &tmp_format, &tmp_format1)) return -1; gavl_video_format_copy(&tmp_format, &tmp_format1); /* csp (tmp_format -> tmp_format1) */ tmp_format1.pixelformat = output_format->pixelformat; if(!add_context_csp(cnv, &tmp_format, &tmp_format1)) return -1; gavl_video_format_copy(&tmp_format, &tmp_format1); } } else if(do_csp) { if(!add_context_csp(cnv, &tmp_format, output_format)) return -1; } else if(do_scale) { if(!add_context_scale(cnv, &tmp_format, output_format)) return -1; } /* Now, create temporary frames for the contexts */ cnv->have_frames = 0; return cnv->num_contexts; } static void alloc_frames(gavl_video_converter_t * cnv) { gavl_video_convert_context_t * tmp_ctx; if(cnv->have_frames) return; tmp_ctx = cnv->first_context; while(tmp_ctx && tmp_ctx->next) { tmp_ctx->output_frame = gavl_video_frame_create(&tmp_ctx->output_format); gavl_video_frame_clear(tmp_ctx->output_frame, &tmp_ctx->output_format); tmp_ctx->next->input_frame = tmp_ctx->output_frame; tmp_ctx = tmp_ctx->next; } cnv->have_frames = 1; } int gavl_video_converter_init(gavl_video_converter_t * cnv, const gavl_video_format_t * input_format, const gavl_video_format_t * output_format) { gavl_video_format_copy(&cnv->input_format, input_format); gavl_video_format_copy(&cnv->output_format, output_format); return gavl_video_converter_reinit(cnv); } gavl_video_options_t * gavl_video_converter_get_options(gavl_video_converter_t * cnv) { return &cnv->options; } /*************************************************** * Convert a frame ***************************************************/ void gavl_video_convert(gavl_video_converter_t * cnv, const gavl_video_frame_t * input_frame, gavl_video_frame_t * output_frame) { gavl_video_convert_context_t * tmp_ctx; alloc_frames(cnv); cnv->first_context->input_frame = input_frame; cnv->last_context->output_frame = output_frame; tmp_ctx = cnv->first_context; while(tmp_ctx) { gavl_video_frame_copy_metadata(tmp_ctx->output_frame, tmp_ctx->input_frame); tmp_ctx->func(tmp_ctx); tmp_ctx = tmp_ctx->next; } } bplaum-gavl-b9385e3/gavl/videoformat.c000066400000000000000000000403531513252040200177000ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include #include void gavl_video_format_copy(gavl_video_format_t * dst, const gavl_video_format_t * src) { memcpy(dst, src, sizeof(*dst)); } static void do_indent(int num) { int i; for(i = 0; i < num; i++) fprintf(stderr, " "); } void gavl_video_format_dump(const gavl_video_format_t * format) { gavl_video_format_dumpi(format, 0); } void gavl_video_format_dumpi(const gavl_video_format_t * format, int indent) { do_indent(indent); fprintf(stderr, " Frame size: %d x %d\n", format->frame_width, format->frame_height); do_indent(indent); fprintf(stderr, " Image size: %d x %d\n", format->image_width, format->image_height); do_indent(indent); fprintf(stderr, " Pixel size: %d x %d\n", format->pixel_width, format->pixel_height); do_indent(indent); fprintf(stderr, " Pixel format: %s\n", gavl_pixelformat_to_string(format->pixelformat)); if(format->framerate_mode != GAVL_FRAMERATE_STILL) { if((!format->frame_duration) && (format->framerate_mode == GAVL_FRAMERATE_VARIABLE)) { do_indent(indent); fprintf(stderr, " Framerate: Variable (timescale: %d)\n", format->timescale); } else { do_indent(indent); fprintf(stderr, " Framerate: %f", (float)(format->timescale)/((float)format->frame_duration)); fprintf(stderr, " [%d / %d]", format->timescale, format->frame_duration); fprintf(stderr, " fps"); if(format->framerate_mode == GAVL_FRAMERATE_CONSTANT) fprintf(stderr, " (Constant)\n"); else fprintf(stderr, " (Not constant)\n"); } } else { do_indent(indent); fprintf(stderr, " Still image\n"); } do_indent(indent); fprintf(stderr, " Interlace mode: %s\n", gavl_interlace_mode_to_string(format->interlace_mode)); if((format->pixelformat == GAVL_YUV_420_P) || (format->pixelformat == GAVL_YUVJ_420_P)) { do_indent(indent); fprintf(stderr, " Chroma placement: %s\n", gavl_chroma_placement_to_string(format->chroma_placement)); } if(format->timecode_format.int_framerate) { do_indent(indent); fprintf(stderr, " Timecode framerate: %d\n", format->timecode_format.int_framerate); do_indent(indent); fprintf(stderr, " Timecode flags: "); if(format->timecode_format.flags & GAVL_TIMECODE_DROP_FRAME) fprintf(stderr, "Drop"); fprintf(stderr, "\n"); } fprintf(stderr, " orientation: %s\n", gavl_image_orientation_to_string(format->orientation)); if(format->hwctx) fprintf(stderr, " Frame storage: %s\n", gavl_hw_type_to_string(gavl_hw_ctx_get_type(format->hwctx))); } /* We always enlarge the image */ void gavl_video_format_fit_to_source(gavl_video_format_t * dst, const gavl_video_format_t * src) { int f_1, f_2; f_1 = src->pixel_width * dst->pixel_height; f_2 = dst->pixel_width * src->pixel_height; if(f_1 > f_2) /* Make dst wider */ { dst->image_width = (src->image_width * f_1) / f_2; dst->image_height = src->image_height; } else if(f_1 < f_2) /* Make dst higher */ { dst->image_height = (src->image_height * f_2) / f_1; dst->image_width = src->image_width; } else { dst->image_width = src->image_width; dst->image_height = src->image_height; } } typedef const struct { gavl_interlace_mode_t mode; const char * name; const char * short_name; } interlace_mode_tab_t; interlace_mode_tab_t interlace_mode_tab[] = { { GAVL_INTERLACE_UNKNOWN, "Unknown", "unknown" }, { GAVL_INTERLACE_NONE, "None (Progressive)", "p" }, { GAVL_INTERLACE_TOP_FIRST, "Top field first", "t" }, { GAVL_INTERLACE_BOTTOM_FIRST, "Bottom field first", "b" }, { GAVL_INTERLACE_MIXED, "Mixed", "mixed" }, { GAVL_INTERLACE_MIXED_TOP, "Top first + progressive", "t+p" }, { GAVL_INTERLACE_MIXED_BOTTOM, "Bottom first + progressive", "b+p" } }; static const int num_interlace_modes = sizeof(interlace_mode_tab)/sizeof(interlace_mode_tab[0]); const char * gavl_interlace_mode_to_string(gavl_interlace_mode_t mode) { int i; for(i = 0; i < num_interlace_modes; i++) { if(interlace_mode_tab[i].mode == mode) return interlace_mode_tab[i].name; } return NULL; } const char * gavl_interlace_mode_to_short_string(gavl_interlace_mode_t mode) { int i; for(i = 0; i < num_interlace_modes; i++) { if(interlace_mode_tab[i].mode == mode) return interlace_mode_tab[i].name; } return interlace_mode_tab[0].short_name; } gavl_interlace_mode_t gavl_short_string_to_interlace_mode(const char * mode) { int i; for(i = 0; i < num_interlace_modes; i++) { if(!strcmp(interlace_mode_tab[i].short_name, mode)) return interlace_mode_tab[i].mode; } return interlace_mode_tab[0].mode; } int gavl_interlace_mode_is_mixed(gavl_interlace_mode_t mode) { return !!(mode & 0x10); } typedef const struct { gavl_framerate_mode_t mode; const char * name; const char * short_name; } framerate_mode_tab_t; framerate_mode_tab_t framerate_mode_tab[] = { { GAVL_FRAMERATE_UNKNOWN, "Unknown", "unknown" }, { GAVL_FRAMERATE_CONSTANT, "Constant" , "constant"}, { GAVL_FRAMERATE_VARIABLE, "Variable", "vfr" }, { GAVL_FRAMERATE_STILL, "Still", "still" }, }; static const int num_framerate_modes = sizeof(framerate_mode_tab)/sizeof(framerate_mode_tab[0]); const char * gavl_framerate_mode_to_string(gavl_framerate_mode_t mode) { int i; for(i = 0; i < num_framerate_modes; i++) { if(framerate_mode_tab[i].mode == mode) return framerate_mode_tab[i].name; } return NULL; } const char * gavl_framerate_mode_to_short_string(gavl_framerate_mode_t mode) { int i; for(i = 0; i < num_framerate_modes; i++) { if(framerate_mode_tab[i].mode == mode) return framerate_mode_tab[i].short_name; } return framerate_mode_tab[0].short_name; } gavl_framerate_mode_t gavl_short_string_to_framerate_mode(const char * mode) { int i; for(i = 0; i < num_framerate_modes; i++) { if(!strcmp(framerate_mode_tab[i].short_name, mode)) return framerate_mode_tab[i].mode; } return framerate_mode_tab[0].mode; } typedef struct { gavl_chroma_placement_t mode; char * name; char * short_name; } chroma_placement_tab_t; const chroma_placement_tab_t chroma_placement_tab[] = { { GAVL_CHROMA_PLACEMENT_DEFAULT, "MPEG-1/JPEG", "mpeg1" }, { GAVL_CHROMA_PLACEMENT_MPEG2, "MPEG-2", "mpeg2" }, { GAVL_CHROMA_PLACEMENT_DVPAL, "DV PAL", "dvpal" } }; static const int num_chroma_placements = sizeof(chroma_placement_tab)/sizeof(chroma_placement_tab_t); const char * gavl_chroma_placement_to_string(gavl_chroma_placement_t mode) { int i; for(i = 0; i < num_chroma_placements; i++) { if(chroma_placement_tab[i].mode == mode) return chroma_placement_tab[i].name; } return NULL; } const char * gavl_chroma_placement_to_short_string(gavl_chroma_placement_t mode) { int i; for(i = 0; i < num_chroma_placements; i++) { if(chroma_placement_tab[i].mode == mode) return chroma_placement_tab[i].short_name; } return chroma_placement_tab[0].short_name; } gavl_chroma_placement_t gavl_short_string_to_chroma_placement(const char * mode) { int i; for(i = 0; i < num_chroma_placements; i++) { if(!strcmp(chroma_placement_tab[i].short_name, mode)) return chroma_placement_tab[i].mode; } return chroma_placement_tab[0].mode; } void gavl_video_format_get_chroma_offset(const gavl_video_format_t * format, int field, int plane, float * off_x, float * off_y) { int sub_h, sub_v; if(!plane) { *off_x = 0.0; *off_y = 0.0; return; } gavl_pixelformat_chroma_sub(format->pixelformat, &sub_h, &sub_v); if((sub_h != 2) || (sub_v != 2)) { *off_x = 0.0; *off_y = 0.0; return; } switch(format->chroma_placement) { case GAVL_CHROMA_PLACEMENT_DEFAULT: *off_x = 0.5; *off_y = 0.5; break; case GAVL_CHROMA_PLACEMENT_MPEG2: if(format->interlace_mode == GAVL_INTERLACE_NONE) { *off_x = 0.0; *off_y = 0.5; } else if(field == 0) /* Top field */ { *off_x = 0.0; *off_y = 0.25; /* In FIELD coordinates */ // *off_y = 0.5; /* In FRAME coordinates */ } else /* Bottom field */ { *off_x = 0.0; *off_y = 0.75; /* In FIELD coordinates */ // *off_y = 1.5; /* In FRAME coordinates */ } break; case GAVL_CHROMA_PLACEMENT_DVPAL: if(plane == 1) /* Cb */ { *off_x = 0.0; *off_y = 1.0; /* In FIELD coordinates */ } else /* Cr */ { *off_x = 0.0; *off_y = 0.0; /* In FIELD coordinates */ } break; } } int gavl_video_formats_equal(const gavl_video_format_t * format_1, const gavl_video_format_t * format_2) { return !memcmp(format_1, format_2, sizeof(*format_1)); } void gavl_video_format_set_frame_size(gavl_video_format_t * format, int pad_h, int pad_v) { int sub_h = 1, sub_v = 1; if(format->pixelformat != GAVL_PIXELFORMAT_NONE) gavl_pixelformat_chroma_sub(format->pixelformat, &sub_h, &sub_v); if((pad_h < 1) || (pad_v < 1)) { if(pad_h < 1) pad_h = sub_h; if(pad_v < 1) pad_v = sub_v; } else { pad_h *= sub_h; pad_v *= sub_v; } format->frame_width = ((format->image_width + pad_h - 1) / pad_h) * pad_h; format->frame_height = ((format->image_height + pad_v - 1) / pad_v) * pad_v; } int gavl_video_format_get_image_size(const gavl_video_format_t * format) { int i; int bytes_per_line; int sub_h, sub_v; int ret = 0, height; int num_planes = gavl_pixelformat_num_planes(format->pixelformat); bytes_per_line = (num_planes > 1) ? format->frame_width * gavl_pixelformat_bytes_per_component(format->pixelformat) : format->frame_width * gavl_pixelformat_bytes_per_pixel(format->pixelformat); gavl_pixelformat_chroma_sub(format->pixelformat, &sub_h, &sub_v); height = format->frame_height; for(i = 0; i < num_planes; i++) { ret += bytes_per_line * height; if(!i) { bytes_per_line /= sub_h; height /= sub_v; } } return ret; } void gavl_video_format_get_frame_layout(const gavl_video_format_t * format, int * offsets, int * strides, int * buffersizes, int multiplane) { int i; int num_planes; int bytes_per_line; int height; int sub_h = 0, sub_v = 0; int size; int64_t off = 0; num_planes = gavl_pixelformat_num_planes(format->pixelformat); bytes_per_line = (num_planes > 1) ? format->frame_width * gavl_pixelformat_bytes_per_component(format->pixelformat) : format->frame_width * gavl_pixelformat_bytes_per_pixel(format->pixelformat); gavl_pixelformat_chroma_sub(format->pixelformat, &sub_h, &sub_v); height = format->frame_height; size = bytes_per_line * height; for(i = 0; i < num_planes; i++) { if(strides) strides[i] = bytes_per_line; if(offsets) { if(multiplane) offsets[i] = 0; else offsets[i] = off; } if(buffersizes && multiplane) buffersizes[i] = size; off += size; if(!i) { bytes_per_line /= sub_h; size /= (sub_h*sub_v); } } if(buffersizes && !multiplane) buffersizes[0] = off; } void gavl_get_field_format(const gavl_video_format_t * frame_format, gavl_video_format_t * field_format, int field) { gavl_video_format_copy(field_format, frame_format); field_format->image_height /= 2; field_format->frame_height /= 2; if(frame_format->image_height % 2) { /* Top field gets an extra scanline */ if(!field) { field_format->image_height++; if(field_format->frame_height < field_format->image_height) field_format->frame_height = field_format->image_height; } } } #define PUT_INT(member) \ gavl_value_set_int(&val, fmt->member); \ gavl_dictionary_set_nocopy(dict, #member, &val) #define PUT_STRING(member, str) \ gavl_value_set_string(&val, str); \ gavl_dictionary_set_nocopy(dict, #member, &val) void gavl_video_format_to_dictionary(const gavl_video_format_t * fmt, gavl_dictionary_t * dict) { gavl_value_t val; gavl_value_init(&val); PUT_INT(image_width); PUT_INT(image_height); PUT_INT(frame_width); PUT_INT(frame_height); PUT_INT(pixel_width); PUT_INT(pixel_height); PUT_INT(frame_duration); PUT_INT(timescale); PUT_STRING(pixelformat, gavl_pixelformat_to_short_string(fmt->pixelformat)); PUT_STRING(interlace_mode, gavl_interlace_mode_to_short_string(fmt->interlace_mode)); PUT_STRING(framerate_mode, gavl_framerate_mode_to_short_string(fmt->framerate_mode)); PUT_STRING(chroma_placement, gavl_chroma_placement_to_short_string(fmt->chroma_placement)); if(fmt->timecode_format.int_framerate) { gavl_value_t child; gavl_dictionary_t * timecode_format = gavl_value_set_dictionary(&val); gavl_value_init(&child); gavl_value_set_int(&child, fmt->timecode_format.int_framerate); gavl_dictionary_set_nocopy(timecode_format, "int_framerate", &child); if(fmt->timecode_format.flags) { gavl_value_set_int(&child, fmt->timecode_format.flags); gavl_dictionary_set_nocopy(timecode_format, "flags", &val); } } } #define GET_INT(member) \ if(!(val = gavl_dictionary_get(dict, #member)) || \ !gavl_value_get_int(val, &val_i)) \ goto fail; \ fmt->member = val_i; #define GET_ENUM(member) \ if(!(str = gavl_dictionary_get_string(dict, #member))) \ goto fail; \ fmt->member = gavl_short_string_to_##member (str); int gavl_video_format_from_dictionary(gavl_video_format_t * fmt, const gavl_dictionary_t * dict) { int ret = 0; int val_i; const gavl_value_t * val; const char * str; GET_INT(image_width); GET_INT(image_height); GET_INT(frame_width); GET_INT(frame_height); GET_INT(pixel_width); GET_INT(pixel_height); GET_INT(frame_duration); GET_INT(timescale); GET_ENUM(pixelformat); GET_ENUM(interlace_mode); GET_ENUM(framerate_mode); GET_ENUM(chroma_placement); if((val = gavl_dictionary_get(dict, "timecode_format"))) { const gavl_value_t * child; const gavl_dictionary_t * timecode_format = gavl_value_get_dictionary(val); if(!timecode_format) goto fail; if(!(child = gavl_dictionary_get(timecode_format, "int_framerate")) || !gavl_value_get_int(child, &val_i)) goto fail; fmt->timecode_format.int_framerate = val_i; if((child = gavl_dictionary_get(timecode_format, "flags"))) { if(!gavl_value_get_int(child, &val_i)) goto fail; fmt->timecode_format.flags = val_i; } } ret = 1; fail: return ret; } bplaum-gavl-b9385e3/gavl/videoframe.c000066400000000000000000001403441513252040200175030ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include #include #include #define DO_ROUND #include "c/colorspace_tables.h" #include "c/colorspace_macros.h" #include #include #include #include #define ALIGNMENT_BYTES 16 #define ALIGN(a) a=((a+ALIGNMENT_BYTES-1)/ALIGNMENT_BYTES)*ALIGNMENT_BYTES static void video_frame_alloc(gavl_video_frame_t * ret, const gavl_video_format_t * format, int align) { int planar; if(format->pixelformat == GAVL_PIXELFORMAT_NONE) { fprintf(stderr, "Pixelformat not specified for video frame\n"); return; } planar = gavl_pixelformat_is_planar(format->pixelformat); if(planar) { int sub_h; int sub_v; int bpc; gavl_pixelformat_chroma_sub(format->pixelformat, &sub_h, &sub_v); bpc = gavl_pixelformat_bytes_per_component(format->pixelformat); if(!ret->strides[0]) { ret->strides[0] = bpc * format->frame_width; ret->strides[1] = bpc * ((format->frame_width + sub_h - 1) / sub_h); ret->strides[2] = ret->strides[1]; if(align) { ALIGN(ret->strides[0]); ALIGN(ret->strides[1]); ALIGN(ret->strides[2]); } } ret->planes[0] = gavl_memalign(ALIGNMENT_BYTES, ret->strides[0]*format->frame_height+ ret->strides[1]*((format->frame_height+sub_v-1)/sub_v)+ ret->strides[2]*((format->frame_height+sub_v-1)/sub_v)); ret->planes[1] = ret->planes[0] + ret->strides[0]*format->frame_height; ret->planes[2] = ret->planes[1] + ret->strides[1]*((format->frame_height+sub_v-1)/sub_v); } else // Packed { if(!ret->strides[0]) { ret->strides[0] = format->frame_width * gavl_pixelformat_bytes_per_pixel(format->pixelformat); if(align) ALIGN(ret->strides[0]); } ret->planes[0] = gavl_memalign(ALIGNMENT_BYTES, ret->strides[0] * format->frame_height); } } static void video_frame_free(gavl_video_frame_t * frame) { if(frame->planes[0]) free(frame->planes[0]); frame->planes[0] = NULL; } gavl_video_frame_t * gavl_video_frame_create(const gavl_video_format_t * format) { gavl_video_frame_t * ret = calloc(1, sizeof(gavl_video_frame_t)); if(format) video_frame_alloc(ret, format, 1); ret->timecode = GAVL_TIMECODE_INVALID_MASK; ret->buf_idx = -1; return ret; } gavl_video_frame_t * gavl_video_frame_create_nopad(const gavl_video_format_t * format) { gavl_video_frame_t * ret = calloc(1, sizeof(gavl_video_frame_t)); if(format) video_frame_alloc(ret, format, 0); ret->timecode = GAVL_TIMECODE_INVALID_MASK; ret->buf_idx = -1; return ret; } void gavl_video_frame_destroy(gavl_video_frame_t * frame) { if(frame->hwctx) { gavl_hw_destroy_video_frame(frame->hwctx, frame, 1); return; } video_frame_free(frame); free(frame); } void gavl_video_frame_null(gavl_video_frame_t* frame) { frame->planes[0] = NULL; } void gavl_video_frame_clear_mask(gavl_video_frame_t * frame, const gavl_video_format_t * format, int mask) { int i, j; uint16_t * ptr_16; uint16_t * ptr_16_u; uint16_t * ptr_16_v; float * ptr_float; uint8_t * line_start; uint8_t * line_start_u; uint8_t * line_start_v; int bytes; switch(format->pixelformat) { case GAVL_RGB_15: case GAVL_BGR_15: case GAVL_RGB_16: case GAVL_BGR_16: case GAVL_RGB_24: case GAVL_BGR_24: case GAVL_RGB_32: case GAVL_BGR_32: case GAVL_RGB_48: case GAVL_RGB_FLOAT: case GAVL_GRAY_8: case GAVL_GRAY_16: case GAVL_GRAY_FLOAT: case GAVL_YUV_FLOAT: if(mask & CLEAR_MASK_PLANE_0) { bytes = format->frame_width * gavl_pixelformat_bytes_per_pixel(format->pixelformat); for(i = 0; i < format->frame_height; i++) memset(frame->planes[0] + i * frame->strides[0], 0x00, bytes); } break; case GAVL_RGBA_32: if(!(mask & CLEAR_MASK_PLANE_0)) break; for(i = 0; i < format->frame_height; i++) { for(j = 0; j < format->frame_width; j++) { frame->planes[0][4*j + i*frame->strides[0]] = 0x00; /* R */ frame->planes[0][4*j + i*frame->strides[0]+1] = 0x00; /* G */ frame->planes[0][4*j + i*frame->strides[0]+2] = 0x00; /* B */ frame->planes[0][4*j + i*frame->strides[0]+3] = 0xFF; /* A */ } } break; case GAVL_GRAYA_16: if(!(mask & CLEAR_MASK_PLANE_0)) break; for(i = 0; i < format->frame_height; i++) { for(j = 0; j < format->frame_width; j++) { frame->planes[0][2*j + i*frame->strides[0]] = 0x00; /* Gray */ frame->planes[0][2*j + i*frame->strides[0]+1] = 0xFF; /* A */ } } break; case GAVL_YUVA_32: if(!(mask & CLEAR_MASK_PLANE_0)) break; for(i = 0; i < format->frame_height; i++) { for(j = 0; j < format->frame_width; j++) { frame->planes[0][4*j + i*frame->strides[0]] = 0x00; /* Y */ frame->planes[0][4*j + i*frame->strides[0]+1] = 0x80; /* U */ frame->planes[0][4*j + i*frame->strides[0]+2] = 0x80; /* V */ frame->planes[0][4*j + i*frame->strides[0]+3] = 0xEB; /* A */ } } break; case GAVL_RGBA_64: if(!(mask & CLEAR_MASK_PLANE_0)) break; line_start = frame->planes[0]; for(i = 0; i < format->frame_height; i++) { ptr_16 = (uint16_t*)line_start; for(j = 0; j < format->frame_width; j++) { *(ptr_16++) = 0x0000; *(ptr_16++) = 0x0000; *(ptr_16++) = 0x0000; *(ptr_16++) = 0xFFFF; } line_start += frame->strides[0]; } break; case GAVL_GRAYA_32: if(!(mask & CLEAR_MASK_PLANE_0)) break; line_start = frame->planes[0]; for(i = 0; i < format->frame_height; i++) { ptr_16 = (uint16_t*)line_start; for(j = 0; j < format->frame_width; j++) { *(ptr_16++) = 0x0000; *(ptr_16++) = 0xFFFF; } line_start += frame->strides[0]; } break; case GAVL_YUVA_64: if(!(mask & CLEAR_MASK_PLANE_0)) break; line_start = frame->planes[0]; for(i = 0; i < format->frame_height; i++) { ptr_16 = (uint16_t*)line_start; for(j = 0; j < format->frame_width; j++) { *(ptr_16++) = 0x0000; *(ptr_16++) = 0x8000; *(ptr_16++) = 0x8000; *(ptr_16++) = 0xFFFF; } line_start += frame->strides[0]; } break; case GAVL_RGBA_FLOAT: case GAVL_YUVA_FLOAT: if(!(mask & CLEAR_MASK_PLANE_0)) break; line_start = frame->planes[0]; for(i = 0; i < format->frame_height; i++) { ptr_float = (float*)line_start; for(j = 0; j < format->frame_width; j++) { *(ptr_float++) = 0.0; *(ptr_float++) = 0.0; *(ptr_float++) = 0.0; *(ptr_float++) = 1.0; } line_start += frame->strides[0]; } break; case GAVL_GRAYA_FLOAT: if(!(mask & CLEAR_MASK_PLANE_0)) break; line_start = frame->planes[0]; for(i = 0; i < format->frame_height; i++) { ptr_float = (float*)line_start; for(j = 0; j < format->frame_width; j++) { *(ptr_float++) = 0.0; *(ptr_float++) = 1.0; } line_start += frame->strides[0]; } break; case GAVL_YUY2: if(!(mask & CLEAR_MASK_PLANE_0)) break; for(i = 0; i < format->frame_height; i++) { for(j = 0; j < format->frame_width; j++) { frame->planes[0][2*j + i*frame->strides[0]] = 0x00; /* Y */ frame->planes[0][2*j + i*frame->strides[0]+1] = 0x80; /* U/V */ } } break; case GAVL_UYVY: if(!(mask & CLEAR_MASK_PLANE_0)) break; for(i = 0; i < format->frame_height; i++) { for(j = 0; j < format->frame_width; j++) { frame->planes[0][2*j + i*frame->strides[0]+1] = 0x00; /* Y */ frame->planes[0][2*j + i*frame->strides[0]] = 0x80; /* U/V */ } } break; case GAVL_YUV_444_P_16: if(mask & CLEAR_MASK_PLANE_0) { bytes = format->frame_width * 2; for(i = 0; i < format->frame_height; i++) memset(frame->planes[0] + i * frame->strides[0], 0x00, bytes); } if(!(mask & (CLEAR_MASK_PLANE_1 | CLEAR_MASK_PLANE_2))) break; line_start_u = frame->planes[1]; line_start_v = frame->planes[2]; for(i = 0; i < format->frame_height; i++) { ptr_16_u = (uint16_t*)line_start_u; ptr_16_v = (uint16_t*)line_start_v; if(mask & CLEAR_MASK_PLANE_1) { for(j = 0; j < format->frame_width; j++) { *(ptr_16_u++) = 0x8000; } } if(mask & CLEAR_MASK_PLANE_2) { for(j = 0; j < format->frame_width; j++) { *(ptr_16_v++) = 0x8000; } } line_start_u += frame->strides[1]; line_start_v += frame->strides[2]; } break; case GAVL_YUV_422_P_16: if(mask & CLEAR_MASK_PLANE_0) { bytes = format->frame_width * 2; for(i = 0; i < format->frame_height; i++) memset(frame->planes[0] + i * frame->strides[0], 0x00, bytes); } if(!(mask & (CLEAR_MASK_PLANE_1 | CLEAR_MASK_PLANE_2))) break; line_start_u = frame->planes[1]; line_start_v = frame->planes[2]; for(i = 0; i < format->frame_height; i++) { ptr_16_u = (uint16_t*)line_start_u; ptr_16_v = (uint16_t*)line_start_v; if(mask & CLEAR_MASK_PLANE_1) { for(j = 0; j < format->frame_width/2; j++) { *(ptr_16_u++) = 0x8000; } } if(mask & CLEAR_MASK_PLANE_2) { for(j = 0; j < format->frame_width/2; j++) { *(ptr_16_v++) = 0x8000; } } line_start_u += frame->strides[1]; line_start_v += frame->strides[2]; } break; case GAVL_YUV_420_P: case GAVL_YUVJ_420_P: if(mask & CLEAR_MASK_PLANE_0) { bytes = format->frame_width; for(i = 0; i < format->frame_height; i++) memset(frame->planes[0] + i * frame->strides[0], 0x00, bytes); } if(mask & CLEAR_MASK_PLANE_1) { bytes = format->frame_width / 2; for(i = 0; i < format->frame_height / 2; i++) memset(frame->planes[1] + i * frame->strides[1], 0x80, bytes); } if(mask & CLEAR_MASK_PLANE_2) { bytes = format->frame_width / 2; for(i = 0; i < format->frame_height / 2; i++) memset(frame->planes[2] + i * frame->strides[2], 0x80, bytes); } break; case GAVL_YUV_410_P: if(mask & CLEAR_MASK_PLANE_0) { bytes = format->frame_width; for(i = 0; i < format->frame_height; i++) memset(frame->planes[0] + i * frame->strides[0], 0x00, bytes); } if(mask & CLEAR_MASK_PLANE_1) { bytes = format->frame_width / 4; for(i = 0; i < format->frame_height / 4; i++) memset(frame->planes[1] + i * frame->strides[1], 0x80, bytes); } if(mask & CLEAR_MASK_PLANE_2) { bytes = format->frame_width / 4; for(i = 0; i < format->frame_height / 4; i++) memset(frame->planes[2] + i * frame->strides[2], 0x80, bytes); } break; case GAVL_YUV_411_P: if(mask & CLEAR_MASK_PLANE_0) { bytes = format->frame_width; for(i = 0; i < format->frame_height; i++) memset(frame->planes[0] + i * frame->strides[0], 0x00, bytes); } if(mask & CLEAR_MASK_PLANE_1) { bytes = format->frame_width / 4; for(i = 0; i < format->frame_height; i++) memset(frame->planes[1] + i * frame->strides[1], 0x80, bytes); } if(mask & CLEAR_MASK_PLANE_2) { bytes = format->frame_width / 4; for(i = 0; i < format->frame_height; i++) memset(frame->planes[2] + i * frame->strides[2], 0x80, bytes); } break; case GAVL_YUV_422_P: case GAVL_YUVJ_422_P: if(mask & CLEAR_MASK_PLANE_0) { bytes = format->frame_width; for(i = 0; i < format->frame_height; i++) memset(frame->planes[0] + i * frame->strides[0], 0x00, bytes); } if(mask & CLEAR_MASK_PLANE_1) { bytes = format->frame_width / 2; for(i = 0; i < format->frame_height; i++) memset(frame->planes[1] + i * frame->strides[1], 0x80, bytes); } if(mask & CLEAR_MASK_PLANE_2) { bytes = format->frame_width / 2; for(i = 0; i < format->frame_height; i++) memset(frame->planes[2] + i * frame->strides[2], 0x80, bytes); } break; case GAVL_YUV_444_P: case GAVL_YUVJ_444_P: if(mask & CLEAR_MASK_PLANE_0) { bytes = format->frame_width; for(i = 0; i < format->frame_height; i++) memset(frame->planes[0] + i * frame->strides[0], 0x00, bytes); } if(mask & CLEAR_MASK_PLANE_1) { bytes = format->frame_width; for(i = 0; i < format->frame_height; i++) memset(frame->planes[1] + i * frame->strides[1], 0x80, bytes); } if(mask & CLEAR_MASK_PLANE_2) { bytes = format->frame_width; for(i = 0; i < format->frame_height; i++) memset(frame->planes[2] + i * frame->strides[2], 0x80, bytes); } break; case GAVL_PIXELFORMAT_NONE: break; } } void gavl_video_frame_clear(gavl_video_frame_t * frame, const gavl_video_format_t * format) { gavl_video_frame_clear_mask(frame, format, CLEAR_MASK_ALL); } static void copy_plane(gavl_video_frame_t * dst, const gavl_video_frame_t * src, int plane, int bytes_per_line, int height) { int j; uint8_t * sp, *dp; sp = src->planes[plane]; dp = dst->planes[plane]; if((src->strides[plane] == dst->strides[plane]) && (src->strides[plane] == bytes_per_line)) gavl_memcpy(dp, sp, bytes_per_line * height); else { for(j = 0; j < height; j++) { gavl_memcpy(dp, sp, bytes_per_line); sp += src->strides[plane]; dp += dst->strides[plane]; } } } void gavl_video_frame_copy_plane(const gavl_video_format_t * format, gavl_video_frame_t * dst, const gavl_video_frame_t * src, int plane) { int bytes_per_line; int sub_h, sub_v; int height; if(src->src_rect.w && src->src_rect.h) { gavl_video_format_t fmt; gavl_video_frame_t s; gavl_video_frame_t d; gavl_video_format_copy(&fmt, format); fmt.image_width = src->src_rect.w; fmt.image_height = src->src_rect.h; memset(&s, 0, sizeof(s)); memset(&d, 0, sizeof(d)); gavl_video_frame_get_subframe(format->pixelformat, dst, &d, &src->src_rect); gavl_video_frame_get_subframe(format->pixelformat, src, &s, &src->src_rect); gavl_video_frame_copy_plane(&fmt, &d, &s, plane); } gavl_init_memcpy(); height = format->image_height; sub_h = 1; sub_v = 1; bytes_per_line = gavl_pixelformat_is_planar(format->pixelformat) ? format->image_width * gavl_pixelformat_bytes_per_component(format->pixelformat) : format->image_width * gavl_pixelformat_bytes_per_pixel(format->pixelformat); if(plane > 0) { gavl_pixelformat_chroma_sub(format->pixelformat, &sub_h, &sub_v); bytes_per_line /= sub_h; height /= sub_v; } copy_plane(dst, src, plane, bytes_per_line, height); } void gavl_video_frame_copy(const gavl_video_format_t * format, gavl_video_frame_t * dst, const gavl_video_frame_t * src) { int i; int height; int bytes_per_line; int sub_h, sub_v; int planes; if(src->src_rect.w && src->src_rect.h) { gavl_video_format_t fmt; gavl_video_frame_t s; gavl_video_frame_t d; gavl_rectangle_i_t src_rect; gavl_rectangle_i_copy(&src_rect, &src->src_rect); gavl_rectangle_i_crop_to_format(&src_rect, format); // fprintf(stderr, "Copy subframe\n"); // gavl_rectangle_i_dump(&src_rect); // fprintf(stderr, "\n"); gavl_video_format_copy(&fmt, format); fmt.image_width = src_rect.w; fmt.image_height = src_rect.h; memset(&s, 0, sizeof(s)); memset(&d, 0, sizeof(d)); gavl_video_frame_get_subframe(format->pixelformat, dst, &d, &src_rect); gavl_video_frame_get_subframe(format->pixelformat, src, &s, &src_rect); gavl_video_frame_copy(&fmt, &d, &s); } gavl_init_memcpy(); #if 0 fprintf(stderr, "gavl_video_frame_copy, %d %d format:\n", src->strides[0], dst->strides[0]); gavl_video_format_dump(format); #endif planes = gavl_pixelformat_num_planes(format->pixelformat); height = format->image_height; bytes_per_line = gavl_pixelformat_is_planar(format->pixelformat) ? format->image_width * gavl_pixelformat_bytes_per_component(format->pixelformat) : format->image_width * gavl_pixelformat_bytes_per_pixel(format->pixelformat); for(i = 0; i < planes; i++) { if(i == 1) { gavl_pixelformat_chroma_sub(format->pixelformat, &sub_h, &sub_v); bytes_per_line /= sub_h; height /= sub_v; } copy_plane(dst, src, i, bytes_per_line, height); } } static void flip_scanline_1(uint8_t * dst, uint8_t * src, int len) { int i; dst += (len-1); for(i = 0; i < len; i++) { *dst = *src; dst--; src++; } } static void flip_scanline_2(uint8_t * dst, uint8_t * src, int len) { int i; dst += 2*(len-1); for(i = 0; i < len; i++) { dst[0] = src[0]; dst[1] = src[1]; dst-=2; src+=2; } } static void flip_scanline_yuy2(uint8_t * dst, uint8_t * src, int len) { int i; dst += 2*(len-1)-2; for(i = 0; i < len/2; i++) { dst[0] = src[2]; /* Y */ dst[1] = src[1]; /* U */ dst[2] = src[0]; /* Y */ dst[3] = src[3]; /* U */ dst-=4; src+=4; } } static void flip_scanline_uyvy(uint8_t * dst, uint8_t * src, int len) { int i; dst += 2*(len-1)-2; for(i = 0; i < len/2; i++) { dst[0] = src[0]; /* U */ dst[1] = src[3]; /* Y */ dst[2] = src[2]; /* V */ dst[3] = src[1]; /* Y */ dst-=4; src+=4; } } static void flip_scanline_3(uint8_t * dst, uint8_t * src, int len) { int i; dst += 3*(len-1); for(i = 0; i < len; i++) { dst[0] = src[0]; dst[1] = src[1]; dst[2] = src[2]; dst-=3; src+=3; } } static void flip_scanline_4(uint8_t * dst, uint8_t * src, int len) { int i; dst += 4*(len-1); for(i = 0; i < len; i++) { dst[0] = src[0]; dst[1] = src[1]; dst[2] = src[2]; dst[3] = src[3]; dst-=4; src+=4; } } static void flip_scanline_6(uint8_t * dst, uint8_t * src, int len) { int i; dst += 6*(len-1); for(i = 0; i < len; i++) { dst[0] = src[0]; dst[1] = src[1]; dst[2] = src[2]; dst[3] = src[3]; dst[4] = src[4]; dst[5] = src[5]; dst-=6; src+=6; } } static void flip_scanline_8(uint8_t * dst, uint8_t * src, int len) { int i; dst += 8*(len-1); for(i = 0; i < len; i++) { dst[0] = src[0]; dst[1] = src[1]; dst[2] = src[2]; dst[3] = src[3]; dst[4] = src[4]; dst[5] = src[5]; dst[6] = src[6]; dst[7] = src[7]; dst-=8; src+=8; } } static void flip_scanline_12(uint8_t * dst, uint8_t * src, int len) { int i; dst += 12*(len-1); for(i = 0; i < len; i++) { gavl_memcpy(dst, src, 12); dst-=12; src+=12; } } static void flip_scanline_16(uint8_t * dst, uint8_t * src, int len) { int i; dst += 16*(len-1); for(i = 0; i < len; i++) { gavl_memcpy(dst, src, 16); dst-=16; src+=16; } } typedef void (*flip_scanline_func)(uint8_t * dst, uint8_t * src, int len); static flip_scanline_func find_flip_scanline_func(gavl_pixelformat_t csp) { switch(csp) { case GAVL_RGB_15: case GAVL_BGR_15: case GAVL_RGB_16: case GAVL_BGR_16: case GAVL_YUV_444_P_16: case GAVL_YUV_422_P_16: case GAVL_GRAYA_16: case GAVL_GRAY_16: return flip_scanline_2; break; case GAVL_RGB_24: case GAVL_BGR_24: return flip_scanline_3; break; case GAVL_RGB_32: case GAVL_BGR_32: case GAVL_RGBA_32: case GAVL_YUVA_32: case GAVL_GRAYA_32: case GAVL_GRAY_FLOAT: return flip_scanline_4; break; case GAVL_RGB_48: return flip_scanline_6; break; case GAVL_RGBA_64: case GAVL_YUVA_64: case GAVL_GRAYA_FLOAT: return flip_scanline_8; break; case GAVL_RGB_FLOAT: case GAVL_YUV_FLOAT: return flip_scanline_12; break; case GAVL_RGBA_FLOAT: case GAVL_YUVA_FLOAT: return flip_scanline_16; break; case GAVL_YUV_420_P: case GAVL_YUV_410_P: case GAVL_YUV_422_P: case GAVL_YUV_411_P: case GAVL_YUV_444_P: case GAVL_YUVJ_420_P: case GAVL_YUVJ_422_P: case GAVL_YUVJ_444_P: case GAVL_GRAY_8: return flip_scanline_1; break; case GAVL_YUY2: return flip_scanline_yuy2; break; case GAVL_UYVY: return flip_scanline_uyvy; break; case GAVL_PIXELFORMAT_NONE: break; } return NULL; } void gavl_video_frame_copy_flip_x(const gavl_video_format_t * format, gavl_video_frame_t * dst, const gavl_video_frame_t * src) { uint8_t * src_ptr; uint8_t * dst_ptr; int i, j, jmax, width; int sub_h, sub_v; int planes; flip_scanline_func func; planes = gavl_pixelformat_num_planes(format->pixelformat); func = find_flip_scanline_func(format->pixelformat); sub_h = 1; sub_v = 1; jmax = format->image_height; width = format->image_width; gavl_pixelformat_chroma_sub(format->pixelformat, &sub_h, &sub_v); for(i = 0; i < planes; i++) { src_ptr = src->planes[i]; dst_ptr = dst->planes[i]; for(j = 0; j < jmax; j++) { func(dst_ptr, src_ptr, width); src_ptr += src->strides[i]; dst_ptr += dst->strides[i]; } if(!i) { jmax /= sub_v; width /= sub_h; } } } void gavl_video_frame_copy_flip_y(const gavl_video_format_t * format, gavl_video_frame_t * dst, const gavl_video_frame_t * src) { uint8_t * src_ptr; uint8_t * dst_ptr; int i, j; int sub_h, sub_v; int planes; int bytes_per_line; gavl_init_memcpy(); planes = gavl_pixelformat_num_planes(format->pixelformat); sub_h = 1; sub_v = 1; for(i = 0; i < planes; i++) { if(i) gavl_pixelformat_chroma_sub(format->pixelformat, &sub_h, &sub_v); src_ptr = src->planes[i] + ((format->image_height / sub_v) - 1) * src->strides[i]; dst_ptr = dst->planes[i]; bytes_per_line = dst->strides[i] < src->strides[i] ? dst->strides[i] : src->strides[i]; for(j = 0; j < format->image_height / sub_v; j++) { gavl_memcpy(dst_ptr, src_ptr, bytes_per_line); src_ptr -= src->strides[i]; dst_ptr += dst->strides[i]; } } } void gavl_video_frame_copy_flip_xy(const gavl_video_format_t * format, gavl_video_frame_t * dst, const gavl_video_frame_t * src) { uint8_t * src_ptr; uint8_t * dst_ptr; int i, j; int sub_h, sub_v; int planes; flip_scanline_func func; planes = gavl_pixelformat_num_planes(format->pixelformat); func = find_flip_scanline_func(format->pixelformat); sub_h = 1; sub_v = 1; for(i = 0; i < planes; i++) { if(i) gavl_pixelformat_chroma_sub(format->pixelformat, &sub_h, &sub_v); src_ptr = src->planes[i] + ((format->image_height / sub_v) - 1) * src->strides[i]; dst_ptr = dst->planes[i]; for(j = 0; j < format->image_height / sub_v; j++) { func(dst_ptr, src_ptr, format->image_width / sub_h); src_ptr -= src->strides[i]; dst_ptr += dst->strides[i]; } } } void gavl_video_frame_dump(gavl_video_frame_t * frame, const gavl_video_format_t * format, const char * namebase) { char * filename; int baselen; int sub_h, sub_v; int planes; int i, j; FILE * output; planes = gavl_pixelformat_num_planes(format->pixelformat); baselen = strlen(namebase); filename = malloc(baselen + 4); strcpy(filename, namebase); sub_h = 1; sub_v = 1; for(i = 0; i < planes; i++) { filename[baselen] = '.'; filename[baselen+1] = 'p'; filename[baselen+2] = i + 1 + '0'; filename[baselen+3] = '\0'; output = fopen(filename, "wb"); if(i == 1) gavl_pixelformat_chroma_sub(format->pixelformat, &sub_h, &sub_v); for(j = 0; j < format->image_height / sub_v; j++) { fwrite(frame->planes[i] + j*frame->strides[i], 1, format->image_width / sub_h, output); } fclose(output); } free(filename); } void gavl_video_frame_get_subframe(gavl_pixelformat_t pixelformat, const gavl_video_frame_t * src, gavl_video_frame_t * dst, const gavl_rectangle_i_t * src_rect) { int x; int uv_sub_h, uv_sub_v; int i; int bytes; int num_planes = gavl_pixelformat_num_planes(pixelformat); dst->strides[0] = src->strides[0]; if(num_planes > 1) { gavl_pixelformat_chroma_sub(pixelformat, &uv_sub_h, &uv_sub_v); bytes = gavl_pixelformat_bytes_per_component(pixelformat); dst->planes[0] = src->planes[0] + src_rect->y * src->strides[0] + src_rect->x * bytes; for(i = 1; i < num_planes; i++) { dst->planes[i] = src->planes[i] + (src_rect->y/uv_sub_v) * src->strides[i] + (src_rect->x/uv_sub_h) * bytes; dst->strides[i] = src->strides[i]; } } else { x = src_rect->x; if(((pixelformat == GAVL_YUY2) || (pixelformat == GAVL_UYVY)) && (x & 1)) x--; bytes = gavl_pixelformat_bytes_per_pixel(pixelformat); dst->planes[0] = src->planes[0] + src_rect->y * src->strides[0] + x * bytes; } } void gavl_video_frame_get_field(gavl_pixelformat_t pixelformat, const gavl_video_frame_t * src, gavl_video_frame_t * dst, int field) { int i, num_planes; num_planes = gavl_pixelformat_num_planes(pixelformat); for(i = 0; i < num_planes; i++) { dst->planes[i] = src->planes[i] + field * src->strides[i]; dst->strides[i] = src->strides[i] * 2; } } #define FILL_FUNC_HEAD_PACKED(TYPE) \ uint8_t * dst_start; \ TYPE * dst; \ int i, j; \ dst_start = frame->planes[0]; \ for(i = 0; i < format->image_height; i++) \ { \ dst = (TYPE*)dst_start; \ for(j = 0; j < format->image_width; j++) \ { #define FILL_FUNC_HEAD_PACKED_422(TYPE) \ uint8_t * dst_start; \ TYPE * dst; \ int i, j, jmax; \ jmax = format->image_width / 2; \ dst_start = frame->planes[0]; \ for(i = 0; i < format->image_height; i++) \ { \ dst = (TYPE*)dst_start; \ for(j = 0; j < jmax; j++) \ { #define FILL_FUNC_TAIL_PACKED(ADVANCE) \ dst+=ADVANCE; \ } \ dst_start += frame->strides[0]; \ } static void fill_8_packed(gavl_video_frame_t * frame, const gavl_video_format_t * format, uint8_t color) { FILL_FUNC_HEAD_PACKED(uint8_t); *dst = color; FILL_FUNC_TAIL_PACKED(1); } static void fill_16_packed(gavl_video_frame_t * frame, const gavl_video_format_t * format, uint16_t color) { FILL_FUNC_HEAD_PACKED(uint16_t); *dst = color; FILL_FUNC_TAIL_PACKED(1); } static void fill_24_packed(gavl_video_frame_t * frame, const gavl_video_format_t * format, const uint8_t * color) { FILL_FUNC_HEAD_PACKED(uint8_t); dst[0] = color[0]; dst[1] = color[1]; dst[2] = color[2]; FILL_FUNC_TAIL_PACKED(3); } static void fill_32_packed(gavl_video_frame_t * frame, const gavl_video_format_t * format, const uint8_t * _color) { uint32_t * color = (uint32_t*)_color; FILL_FUNC_HEAD_PACKED(uint32_t); *dst = *color; FILL_FUNC_TAIL_PACKED(1); } static void fill_32_packed_422(gavl_video_frame_t * frame, const gavl_video_format_t * format, const uint8_t * _color) { uint32_t * color = (uint32_t*)_color; FILL_FUNC_HEAD_PACKED_422(uint32_t); *dst = *color; FILL_FUNC_TAIL_PACKED(1); } static void fill_48_packed(gavl_video_frame_t * frame, const gavl_video_format_t * format, const uint16_t * color) { FILL_FUNC_HEAD_PACKED(uint16_t); gavl_memcpy(dst, color, 3*sizeof(*dst)); FILL_FUNC_TAIL_PACKED(3); } static void fill_64_packed(gavl_video_frame_t * frame, const gavl_video_format_t * format, const uint16_t * color) { FILL_FUNC_HEAD_PACKED(uint16_t); gavl_memcpy(dst, color, 4*sizeof(*dst)); FILL_FUNC_TAIL_PACKED(4); } static void fill_float_gray(gavl_video_frame_t * frame, const gavl_video_format_t * format, const float * color) { FILL_FUNC_HEAD_PACKED(float); gavl_memcpy(dst, color, sizeof(*dst)); FILL_FUNC_TAIL_PACKED(1); } static void fill_float_graya(gavl_video_frame_t * frame, const gavl_video_format_t * format, const float * color) { FILL_FUNC_HEAD_PACKED(float); gavl_memcpy(dst, color, 2*sizeof(*dst)); FILL_FUNC_TAIL_PACKED(2); } static void fill_float_rgb(gavl_video_frame_t * frame, const gavl_video_format_t * format, const float * color) { FILL_FUNC_HEAD_PACKED(float); gavl_memcpy(dst, color, 3*sizeof(*dst)); FILL_FUNC_TAIL_PACKED(3); } static void fill_float_rgba(gavl_video_frame_t * frame, const gavl_video_format_t * format, const float * color) { FILL_FUNC_HEAD_PACKED(float); gavl_memcpy(dst, color, 4*sizeof(*dst)); FILL_FUNC_TAIL_PACKED(4); } #define FILL_FUNC_HEAD_PLANAR(TYPE) \ uint8_t * dst_start; \ TYPE * dst; \ int i, j; \ dst_start = frame->planes[0]; \ for(i = 0; i < format->image_height; i++) \ { \ dst = (TYPE*)dst_start; \ for(j = 0; j < format->image_width; j++) \ { #define FILL_FUNC_TAIL_PLANAR(ADVANCE) \ dst+=ADVANCE; \ } \ dst_start += frame->strides[0]; \ } static void fill_planar_8(gavl_video_frame_t * frame, const gavl_video_format_t * format, uint8_t * color) { int i, imax; int sub_h, sub_v; uint8_t * dst, *dst_1; gavl_pixelformat_chroma_sub(format->pixelformat, &sub_h, &sub_v); /* Luminance */ dst = frame->planes[0]; for(i = 0; i < format->image_height; i++) { memset(dst, color[0], format->image_width); dst += frame->strides[0]; } /* Chrominance */ dst = frame->planes[1]; dst_1 = frame->planes[2]; imax = format->image_height / sub_v; for(i = 0; i < imax; i++) { memset(dst, color[1], format->image_width/sub_h); memset(dst_1, color[2], format->image_width/sub_h); dst += frame->strides[1]; dst_1 += frame->strides[2]; } } static void fill_planar_16(gavl_video_frame_t * frame, const gavl_video_format_t * format, uint16_t * color) { int i, j, imax, jmax; int sub_h, sub_v; uint16_t * dst, *dst_1; uint8_t * dst_start, *dst_start_1; gavl_pixelformat_chroma_sub(format->pixelformat, &sub_h, &sub_v); /* Luminance */ dst_start = frame->planes[0]; for(i = 0; i < format->image_height; i++) { dst = (uint16_t*)dst_start; for(j = 0; j < format->image_width; j++) { *dst = color[0]; dst++; } dst_start += frame->strides[0]; } /* Chrominance */ imax = format->image_height / sub_v; jmax = format->image_width / sub_h; dst_start = frame->planes[1]; dst_start_1 = frame->planes[2]; for(i = 0; i < imax; i++) { dst = (uint16_t*)dst_start; dst_1 = (uint16_t*)dst_start_1; for(j = 0; j < jmax; j++) { *dst = color[1]; *dst_1 = color[2]; dst++; dst_1++; } dst_start += frame->strides[1]; dst_start_1 += frame->strides[2]; } } void gavl_video_frame_fill(gavl_video_frame_t * frame, const gavl_video_format_t * format, const float * color) { INIT_RGB_FLOAT_TO_YUV uint16_t packed_16; uint8_t packed_32[4]; uint16_t packed_64[4]; float color_float[4]; gavl_init_memcpy(); switch(format->pixelformat) { case GAVL_GRAY_8: RGB_FLOAT_TO_YUVJ_8(color[0], color[1], color[2], packed_32[0], packed_32[1], packed_32[2]); fill_8_packed(frame, format, packed_32[0]); break; case GAVL_GRAYA_16: RGB_FLOAT_TO_YUVJ_8(color[0], color[1], color[2], packed_32[0], packed_32[1], packed_32[2]); /* This overwrites packed_32[1] from the lone before */ RGB_FLOAT_TO_8(color[3], packed_32[1]); #ifndef WORDS_BIGENDIAN packed_16 = (packed_32[1] << 8) | packed_32[0]; #else packed_16 = (packed_32[0] << 8) | packed_32[1]; #endif fill_16_packed(frame, format, packed_16); break; case GAVL_GRAY_16: RGB_FLOAT_TO_YJ_16(color[0], color[1], color[2], packed_16); fill_16_packed(frame, format, packed_16); break; case GAVL_GRAYA_32: RGB_FLOAT_TO_YJ_16(color[0], color[1], color[2], packed_64[0]); RGB_FLOAT_TO_16(color[3], packed_64[1]); #ifndef WORDS_BIGENDIAN packed_32[0] = packed_64[0] & 0xff; packed_32[1] = packed_64[0] >> 8; packed_32[2] = packed_64[1] & 0xff; packed_32[3] = packed_64[1] >> 8; #else packed_32[1] = packed_64[0] & 0xff; packed_32[0] = packed_64[0] >> 8; packed_32[3] = packed_64[1] & 0xff; packed_32[2] = packed_64[1] >> 8; #endif fill_32_packed(frame, format, packed_32); break; case GAVL_RGB_15: RGB_FLOAT_TO_8(color[0], packed_32[0]); RGB_FLOAT_TO_8(color[1], packed_32[1]); RGB_FLOAT_TO_8(color[2], packed_32[2]); PACK_8_TO_RGB15(packed_32[0],packed_32[1],packed_32[2],packed_16); fill_16_packed(frame, format, packed_16); break; case GAVL_BGR_15: RGB_FLOAT_TO_8(color[0], packed_32[0]); RGB_FLOAT_TO_8(color[1], packed_32[1]); RGB_FLOAT_TO_8(color[2], packed_32[2]); PACK_8_TO_BGR15(packed_32[0],packed_32[1],packed_32[2],packed_16); fill_16_packed(frame, format, packed_16); break; case GAVL_RGB_16: RGB_FLOAT_TO_8(color[0], packed_32[0]); RGB_FLOAT_TO_8(color[1], packed_32[1]); RGB_FLOAT_TO_8(color[2], packed_32[2]); PACK_8_TO_RGB16(packed_32[0],packed_32[1],packed_32[2],packed_16); fill_16_packed(frame, format, packed_16); break; case GAVL_BGR_16: RGB_FLOAT_TO_8(color[0], packed_32[0]); RGB_FLOAT_TO_8(color[1], packed_32[1]); RGB_FLOAT_TO_8(color[2], packed_32[2]); PACK_8_TO_BGR16(packed_32[0],packed_32[1],packed_32[2],packed_16); fill_16_packed(frame, format, packed_16); break; case GAVL_RGB_24: RGB_FLOAT_TO_8(color[0], packed_32[0]); RGB_FLOAT_TO_8(color[1], packed_32[1]); RGB_FLOAT_TO_8(color[2], packed_32[2]); fill_24_packed(frame, format, packed_32); break; case GAVL_BGR_24: RGB_FLOAT_TO_8(color[0], packed_32[2]); RGB_FLOAT_TO_8(color[1], packed_32[1]); RGB_FLOAT_TO_8(color[2], packed_32[0]); fill_24_packed(frame, format, packed_32); break; case GAVL_RGB_32: RGB_FLOAT_TO_8(color[0], packed_32[0]); RGB_FLOAT_TO_8(color[1], packed_32[1]); RGB_FLOAT_TO_8(color[2], packed_32[2]); fill_32_packed(frame, format, packed_32); break; case GAVL_BGR_32: RGB_FLOAT_TO_8(color[0], packed_32[2]); RGB_FLOAT_TO_8(color[1], packed_32[1]); RGB_FLOAT_TO_8(color[2], packed_32[0]); fill_32_packed(frame, format, packed_32); break; case GAVL_YUVA_32: RGB_FLOAT_TO_YUV_8(color[0], color[1], color[2], packed_32[0], packed_32[1], packed_32[2]); RGB_FLOAT_TO_8(color[3], packed_32[3]); fill_32_packed(frame, format, packed_32); break; case GAVL_RGBA_32: RGB_FLOAT_TO_8(color[0], packed_32[0]); RGB_FLOAT_TO_8(color[1], packed_32[1]); RGB_FLOAT_TO_8(color[2], packed_32[2]); RGB_FLOAT_TO_8(color[3], packed_32[3]); fill_32_packed(frame, format, packed_32); break; case GAVL_RGB_48: RGB_FLOAT_TO_16(color[0], packed_64[0]); RGB_FLOAT_TO_16(color[1], packed_64[1]); RGB_FLOAT_TO_16(color[2], packed_64[2]); fill_48_packed(frame, format, packed_64); break; case GAVL_RGBA_64: RGB_FLOAT_TO_16(color[0], packed_64[0]); RGB_FLOAT_TO_16(color[1], packed_64[1]); RGB_FLOAT_TO_16(color[2], packed_64[2]); RGB_FLOAT_TO_16(color[3], packed_64[3]); fill_64_packed(frame, format, packed_64); break; case GAVL_YUVA_64: RGB_FLOAT_TO_YUV_16(color[0], color[1], color[2], packed_64[0], packed_64[1], packed_64[2]); RGB_FLOAT_TO_16(color[3], packed_64[3]); fill_64_packed(frame, format, packed_64); break; case GAVL_GRAY_FLOAT: RGB_FLOAT_TO_Y_FLOAT(color[0], color[1], color[2], color_float[0]); fill_float_gray(frame, format, color_float); break; case GAVL_GRAYA_FLOAT: RGB_FLOAT_TO_Y_FLOAT(color[0], color[1], color[2], color_float[0]); color_float[1] = color[4]; fill_float_graya(frame, format, color_float); break; case GAVL_YUV_FLOAT: RGB_FLOAT_TO_YUV_FLOAT(color[0], color[1], color[2], color_float[0], color_float[1], color_float[2]); fill_float_rgb(frame, format, color_float); break; case GAVL_YUVA_FLOAT: RGB_FLOAT_TO_YUV_FLOAT(color[0], color[1], color[2], color_float[0], color_float[1], color_float[2]); color_float[3] = color[3]; fill_float_rgba(frame, format, color); break; case GAVL_RGB_FLOAT: fill_float_rgb(frame, format, color); break; case GAVL_RGBA_FLOAT: fill_float_rgba(frame, format, color); break; case GAVL_YUY2: RGB_FLOAT_TO_YUV_8(color[0], color[1], color[2], packed_32[0], /* Y */ packed_32[1], /* U */ packed_32[3]);/* V */ packed_32[2] = packed_32[0]; /* Y */ fill_32_packed_422(frame, format, packed_32); break; case GAVL_UYVY: RGB_FLOAT_TO_YUV_8(color[0], color[1], color[2], packed_32[1], /* Y */ packed_32[0], /* U */ packed_32[2]);/* V */ packed_32[3] = packed_32[1]; /* Y */ fill_32_packed_422(frame, format, packed_32); break; case GAVL_YUVJ_420_P: case GAVL_YUVJ_444_P: case GAVL_YUVJ_422_P: RGB_FLOAT_TO_YUVJ_8(color[0], color[1], color[2], packed_32[0], packed_32[1], packed_32[2]); fill_planar_8(frame, format, packed_32); break; case GAVL_YUV_444_P: case GAVL_YUV_422_P: case GAVL_YUV_420_P: case GAVL_YUV_410_P: case GAVL_YUV_411_P: RGB_FLOAT_TO_YUV_8(color[0], color[1], color[2], packed_32[0], packed_32[1], packed_32[2]); fill_planar_8(frame, format, packed_32); break; case GAVL_YUV_422_P_16: case GAVL_YUV_444_P_16: RGB_FLOAT_TO_YUV_16(color[0], color[1], color[2], packed_64[0], packed_64[1], packed_64[2]); fill_planar_16(frame, format, packed_64); break; case GAVL_PIXELFORMAT_NONE: fprintf(stderr, "Pixelformat not specified for video frame\n"); return; } } void gavl_video_frame_copy_metadata(gavl_video_frame_t * dst, const gavl_video_frame_t * src) { dst->timestamp = src->timestamp; dst->duration = src->duration; dst->timecode = src->timecode; dst->interlace_mode = src->interlace_mode; dst->dst_x = src->dst_x; dst->dst_y = src->dst_y; gavl_rectangle_i_copy(&dst->src_rect, &src->src_rect); } void gavl_video_frame_set_strides(gavl_video_frame_t * frame, const gavl_video_format_t * format) { gavl_video_format_get_frame_layout(format, NULL, frame->strides, NULL, 0); } void gavl_video_frame_set_planes(gavl_video_frame_t * frame, const gavl_video_format_t * format, uint8_t * buffer) { int offsets[GAVL_MAX_PLANES]; int i; int num_planes; gavl_video_format_get_frame_layout(format, offsets, frame->strides, NULL, 0); if(buffer) { num_planes = gavl_pixelformat_num_planes(format->pixelformat); for(i = 0; i < num_planes; i++) frame->planes[i] = buffer + offsets[i]; } else { video_frame_alloc(frame, format, 0); } } void gavl_video_frame_set_from_packet(gavl_video_frame_t * frame, const gavl_video_format_t * format, gavl_packet_t * p) { gavl_packet_to_video_frame_metadata(p, frame); gavl_packet_alloc(p, gavl_video_format_get_image_size(format)); gavl_video_frame_set_planes(frame, format, p->buf.buf); } int gavl_video_frames_equal(const gavl_video_format_t * format, const gavl_video_frame_t * f1, const gavl_video_frame_t * f2) { int i, j; int height; int bytes_per_line; int sub_h, sub_v; int planes; planes = gavl_pixelformat_num_planes(format->pixelformat); height = format->image_height; bytes_per_line = gavl_pixelformat_is_planar(format->pixelformat) ? format->image_width * gavl_pixelformat_bytes_per_component(format->pixelformat) : format->image_width * gavl_pixelformat_bytes_per_pixel(format->pixelformat); for(i = 0; i < planes; i++) { if(i == 1) { gavl_pixelformat_chroma_sub(format->pixelformat, &sub_h, &sub_v); bytes_per_line /= sub_h; height /= sub_v; } for(j = 0; j < height; j++) { if(memcmp(f1->planes[i] + j * f1->strides[i], f2->planes[i] + j * f2->strides[i], bytes_per_line)) return 0; } } return 1; } int gavl_video_frame_continuous(const gavl_video_format_t * format, const gavl_video_frame_t * frame) { int i; int offsets[GAVL_MAX_PLANES]; int strides[GAVL_MAX_PLANES]; int planes = gavl_pixelformat_num_planes(format->pixelformat); gavl_video_format_get_frame_layout(format, offsets, strides, NULL, 0); for(i = 0; i < planes; i++) { if(frame->strides[i] != strides[i]) return 0; if(i && (int)(frame->planes[i] - frame->planes[0]) != offsets[i]) return 0; } return 1; } void gavl_video_frame_dump_metadata(const gavl_video_format_t * format, const gavl_video_frame_t * frame) { int i; fprintf(stderr, "PTS: %"PRId64" (%f), D: %"PRId64" (%f) ", frame->timestamp, gavl_time_to_seconds(gavl_time_unscale(format->timescale, frame->timestamp)), frame->duration, gavl_time_to_seconds(gavl_time_unscale(format->timescale, frame->duration))); if(format->timecode_format.int_framerate && (frame->timecode != GAVL_TIMECODE_UNDEFINED)) { fprintf(stderr, " TC: "); gavl_timecode_dump(&format->timecode_format, frame->timecode); } fprintf(stderr, "\n"); fprintf(stderr, "Strides:"); for(i = 0; i < GAVL_MAX_PLANES; i++) { if(frame->strides[i]) fprintf(stderr, " %d", frame->strides[i]); else break; } fprintf(stderr, "\nsrc_rect: "); gavl_rectangle_i_dump(&frame->src_rect); fprintf(stderr, " dst: %d %d\n", frame->dst_x, frame->dst_y); } void gavl_video_frame_to_packet_metadata(const gavl_video_frame_t * frame, gavl_packet_t * pkt) { pkt->pts = frame->timestamp; pkt->duration = frame->duration; pkt->timecode = frame->timecode; pkt->interlace_mode = frame->interlace_mode; gavl_rectangle_i_copy(&pkt->src_rect, &frame->src_rect); pkt->dst_x = frame->dst_x; pkt->dst_y = frame->dst_y; } void gavl_packet_to_video_frame_metadata(const gavl_packet_t * p, gavl_video_frame_t * frame) { frame->timestamp = p->pts; frame->duration = p->duration; frame->interlace_mode = p->interlace_mode; frame->timecode = p->timecode; gavl_rectangle_i_copy(&frame->src_rect, &p->src_rect); frame->dst_x = p->dst_x; frame->dst_y = p->dst_y; } /* Rotate video frames in multiples of 90 degrees */ #if 0 static void rotate_8(uint8_t * src, int src_stride, uint8_t * dst, int dst_stride, int ninety_deg_steps, int src_width, int dst_width) { int i, j; uint8_t * src_ptr; uint8_t * dst_ptr; switch(ninety_deg_steps) { case 0: for(i = 0; i < src_height; i++) { src_ptr = src + for(j = 0; j < src_width; j++) { } } break; case 1: break; case 2: break; case 3: break; } } void gavl_video_frame_copy_rotate_clockwise(const gavl_video_format_t * src_format, gavl_video_frame_t * dst, const gavl_video_frame_t * src, int ninety_deg_steps) { ninety_deg_steps = ninety_deg_steps % 4; } #endif bplaum-gavl-b9385e3/gavl/videoframepool.c000066400000000000000000000075461513252040200204030ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include #include #include #define LOG_DOMAIN "videoframepool" typedef struct { gavl_video_frame_t * frame; int used; } pool_element_t; struct gavl_video_frame_pool_s { int num_frames; int frames_alloc; pool_element_t * frames; gavl_video_format_t format; gavl_hw_context_t * hwctx; }; gavl_video_frame_pool_t * gavl_video_frame_pool_create(gavl_hw_context_t * ctx) { gavl_video_frame_pool_t * ret; ret = calloc(1, sizeof(*ret)); ret->hwctx = ctx; return ret; } static gavl_video_frame_t * create_frame(gavl_video_frame_pool_t *p) { gavl_video_frame_t * ret; if(p->hwctx) ret = gavl_hw_video_frame_create(p->hwctx); else { ret = gavl_video_frame_create(&p->format); ret->buf_idx = p->num_frames; } ret->client_data = p; return ret; } gavl_video_frame_t * gavl_video_frame_pool_get(gavl_video_frame_pool_t *p) { int i; if(!p->format.image_width) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Format must be set before getting frames"); return NULL; } for(i = 0; i < p->num_frames; i++) { if(!p->frames[i].used) { p->frames[i].used = 1; return p->frames[i].frame; } } /* Allocate a new frame */ if(p->num_frames == p->frames_alloc) { p->frames_alloc += 16; p->frames = realloc(p->frames, p->frames_alloc * sizeof(*p->frames)); memset(p->frames + p->num_frames, 0, sizeof(*p->frames)*(p->frames_alloc - p->num_frames)); } p->frames[p->num_frames].frame = create_frame(p); p->num_frames++; p->frames[p->num_frames-1].used = 1; return p->frames[p->num_frames-1].frame; } void gavl_video_frame_pool_release(gavl_video_frame_t * frame) { int i = 0; gavl_video_frame_pool_t *p = frame->client_data; for(i = 0; i < p->num_frames; i++) { if(p->frames[i].frame == frame) { p->frames[i].used = 0; return; } } } void gavl_video_frame_pool_destroy(gavl_video_frame_pool_t *p) { int i; for(i = 0; i < p->num_frames; i++) gavl_video_frame_destroy(p->frames[i].frame); if(p->frames) free(p->frames); free(p); } void gavl_video_frame_pool_reset(gavl_video_frame_pool_t *p) { int i; for(i = 0; i < p->num_frames; i++) p->frames[i].used = 0; } int gavl_video_frame_pool_set_format(gavl_video_frame_pool_t *p, const gavl_video_format_t * fmt) { if(!p->format.image_width) { gavl_video_format_copy(&p->format, fmt); gavl_video_format_set_frame_size(&p->format, 16, 32); } else { /* Sanity checks */ if((p->format.image_width != fmt->image_width) && (p->format.image_height != fmt->image_height) && (p->format.pixelformat != fmt->pixelformat)) { return 0; } } return 1; } const gavl_video_format_t * gavl_video_frame_pool_get_format(const gavl_video_frame_pool_t * p) { return &p->format; } bplaum-gavl-b9385e3/gavl/videooptions.c000066400000000000000000000156621513252040200201100ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include /* calloc, free */ #include /* calloc, free */ #ifdef DEBUG #include #endif #include #include #include #include #include /*************************************************** * Default Options ***************************************************/ void gavl_video_options_set_defaults(gavl_video_options_t * opt) { memset(opt, 0, sizeof(*opt)); opt->accel_flags = gavl_accel_supported(); opt->scale_order = 4; opt->quality = GAVL_QUALITY_DEFAULT; opt->downscale_blur = 1.0; opt->downscale_filter = GAVL_DOWNSCALE_FILTER_WIDE; gavl_init_memcpy(); } void gavl_video_options_set_rectangles(gavl_video_options_t * opt, const gavl_rectangle_f_t * src_rect, const gavl_rectangle_i_t * dst_rect) { if(!src_rect || !dst_rect) { opt->have_rectangles = 0; return; } gavl_rectangle_f_copy(&opt->src_rect, src_rect); gavl_rectangle_i_copy(&opt->dst_rect, dst_rect); opt->have_rectangles = 1; } void gavl_video_options_get_rectangles(const gavl_video_options_t * opt, gavl_rectangle_f_t * src_rect, gavl_rectangle_i_t * dst_rect) { gavl_rectangle_f_copy(src_rect, &opt->src_rect); gavl_rectangle_i_copy(dst_rect, &opt->dst_rect); } #define SET_INT(p) opt->p = p void gavl_video_options_set_quality(gavl_video_options_t * opt, int quality) { SET_INT(quality); } int gavl_video_options_get_quality(const gavl_video_options_t * opt) { return opt->quality; } void gavl_video_options_set_accel_flags(gavl_video_options_t * opt, int accel_flags) { SET_INT(accel_flags); } int gavl_video_options_get_accel_flags(gavl_video_options_t * opt) { return opt->accel_flags; } void gavl_video_options_set_conversion_flags(gavl_video_options_t * opt, int conversion_flags) { SET_INT(conversion_flags); } int gavl_video_options_get_conversion_flags(const gavl_video_options_t * opt) { return opt->conversion_flags; } void gavl_video_options_set_alpha_mode(gavl_video_options_t * opt, gavl_alpha_mode_t alpha_mode) { SET_INT(alpha_mode); } gavl_alpha_mode_t gavl_video_options_get_alpha_mode(const gavl_video_options_t * opt) { return opt->alpha_mode; } void gavl_video_options_set_scale_mode(gavl_video_options_t * opt, gavl_scale_mode_t scale_mode) { SET_INT(scale_mode); } gavl_scale_mode_t gavl_video_options_get_scale_mode(const gavl_video_options_t * opt) { return opt->scale_mode; } void gavl_video_options_set_scale_order(gavl_video_options_t * opt, int scale_order) { SET_INT(scale_order); } int gavl_video_options_get_scale_order(const gavl_video_options_t * opt) { return opt->scale_order; } void gavl_video_options_set_deinterlace_mode(gavl_video_options_t * opt, gavl_deinterlace_mode_t deinterlace_mode) { SET_INT(deinterlace_mode); } gavl_deinterlace_mode_t gavl_video_options_get_deinterlace_mode(const gavl_video_options_t * opt) { return opt->deinterlace_mode; } void gavl_video_options_set_deinterlace_drop_mode(gavl_video_options_t * opt, gavl_deinterlace_drop_mode_t deinterlace_drop_mode) { SET_INT(deinterlace_drop_mode); } gavl_deinterlace_drop_mode_t gavl_video_options_get_deinterlace_drop_mode(const gavl_video_options_t * opt) { return opt->deinterlace_drop_mode; } #undef SET_INT #define CLIP_FLOAT(a) if(a < 0.0) a = 0.0; if(a>1.0) a = 1.0; void gavl_video_options_set_background_color(gavl_video_options_t * opt, const double * color) { opt->background_float[0] = color[0]; opt->background_float[1] = color[1]; opt->background_float[2] = color[2]; CLIP_FLOAT(opt->background_float[0]); CLIP_FLOAT(opt->background_float[1]); CLIP_FLOAT(opt->background_float[2]); opt->background_16[0] = (uint16_t)(opt->background_float[0] * 65535.0 + 0.5); opt->background_16[1] = (uint16_t)(opt->background_float[1] * 65535.0 + 0.5); opt->background_16[2] = (uint16_t)(opt->background_float[2] * 65535.0 + 0.5); } void gavl_video_options_get_background_color(const gavl_video_options_t * opt, double * color) { color[0] = opt->background_float[0]; color[1] = opt->background_float[1]; color[2] = opt->background_float[2]; } void gavl_video_options_set_downscale_filter(gavl_video_options_t * opt, gavl_downscale_filter_t f) { opt->downscale_filter = f; } gavl_downscale_filter_t gavl_video_options_get_downscale_filter(const gavl_video_options_t * opt) { return opt->downscale_filter; } void gavl_video_options_set_downscale_blur(gavl_video_options_t * opt, float f) { opt->downscale_blur = f; } /*! \ingroup video_options * \brief Get blur factor for downscaling * \param opt Video options * \returns Factor * * Since 1.1.0 */ float gavl_video_options_get_downscale_blur(const gavl_video_options_t * opt) { return opt->downscale_blur; } gavl_video_options_t * gavl_video_options_create() { gavl_video_options_t * ret = calloc(1, sizeof(*ret)); gavl_video_options_set_defaults(ret); return ret; } void gavl_video_options_copy(gavl_video_options_t * dst, const gavl_video_options_t * src) { memcpy(dst, src, sizeof(*dst)); } void gavl_video_options_destroy(gavl_video_options_t * opt) { free(opt); } void gavl_video_options_set_thread_pool(gavl_video_options_t * opt, gavl_thread_pool_t * tp) { opt->tp = tp; } gavl_thread_pool_t * gavl_video_options_get_thread_pool(const gavl_video_options_t * opt) { return opt->tp; } bplaum-gavl-b9385e3/gavl/videosink.c000066400000000000000000000101041513252040200173430ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include #define FLAG_GET_CALLED (1<<0) struct gavl_video_sink_s { gavl_video_sink_get_func get_func; gavl_video_sink_put_func put_func; void * priv; gavl_video_format_t format; int flags; gavl_connector_lock_func_t lock_func; gavl_connector_lock_func_t unlock_func; void * lock_priv; gavl_connector_free_func_t free_func; gavl_video_frame_t * get_frame; }; gavl_video_sink_t * gavl_video_sink_create(gavl_video_sink_get_func get_func, gavl_video_sink_put_func put_func, void * priv, const gavl_video_format_t * format) { gavl_video_sink_t * ret; ret = calloc(1, sizeof(*ret)); ret->get_func = get_func; ret->put_func = put_func; ret->priv = priv; gavl_video_format_copy(&ret->format, format); return ret; } void gavl_video_sink_set_lock_funcs(gavl_video_sink_t * sink, gavl_connector_lock_func_t lock_func, gavl_connector_lock_func_t unlock_func, void * priv) { sink->lock_func = lock_func; sink->unlock_func = unlock_func; sink->lock_priv = priv; } const gavl_video_format_t * gavl_video_sink_get_format(gavl_video_sink_t * s) { return &s->format; } gavl_video_frame_t * gavl_video_sink_get_frame(gavl_video_sink_t * s) { gavl_video_frame_t * ret; /* Repeated calls to get return the same frame */ if(s->flags & FLAG_GET_CALLED) return s->get_frame; s->flags |= FLAG_GET_CALLED; if(s->get_func) { if(s->lock_func) s->lock_func(s->lock_priv); ret = s->get_func(s->priv); if(s->unlock_func) s->unlock_func(s->lock_priv); } else ret = NULL; s->get_frame = ret; if(s->get_frame) gavl_hw_video_frame_map(s->get_frame, 1); return ret; } gavl_sink_status_t gavl_video_sink_put_frame(gavl_video_sink_t * s, gavl_video_frame_t * f) { gavl_sink_status_t st; gavl_video_frame_t * df; if(s->lock_func) s->lock_func(s->lock_priv); // fprintf(stderr, "gavl_video_sink_put_frame s: %p f: %p get_called %d get_func %p\n", // s, f, s->flags & FLAG_GET_CALLED, s->get_func); if(s->get_frame) gavl_hw_video_frame_unmap(s->get_frame); if(!(s->flags & FLAG_GET_CALLED) && s->get_func && (df = s->get_func(s->priv))) { if(f) { gavl_hw_video_frame_map(df, 1); gavl_video_frame_copy(&s->format, df, f); gavl_hw_video_frame_unmap(df); gavl_video_frame_copy_metadata(df, f); st = s->put_func(s->priv, df); } else st = s->put_func(s->priv, f); } else { st = s->put_func(s->priv, f); } if(s->unlock_func) s->unlock_func(s->lock_priv); s->get_frame = NULL; s->flags &= ~FLAG_GET_CALLED; return st; } void gavl_video_sink_set_free_func(gavl_video_sink_t * sink, gavl_connector_free_func_t free_func) { sink->free_func = free_func; } void gavl_video_sink_destroy(gavl_video_sink_t * s) { if(s->priv && s->free_func) s->free_func(s->priv); free(s); } bplaum-gavl-b9385e3/gavl/videosource.c000066400000000000000000000372131513252040200177110ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include #include #include #include #define LOG_DOMAIN "videosource" #define FLAG_DO_CONVERT (1<<0) #define FLAG_DST_SET (1<<1) #define FLAG_SCALE_TIMESTAMPS (1<<2) #define FLAG_SUPPORT_HW (1<<3) /* Support HW storage */ #define FLAG_HW_TO_RAM (1<<4) /* Transfer frames from hardware to RAM */ #define FLAG_EOS (1<<5) /* End of stream */ struct gavl_video_source_s { gavl_video_format_t src_format; gavl_video_format_t src_format_nohw; // RAM only format gavl_video_format_t dst_format; int src_flags; int dst_flags; /* Callback set by the client */ gavl_video_source_func_t func; gavl_video_converter_t * cnv; void * priv; /* FPS Conversion */ int64_t pts; int flags; gavl_video_frame_t * in_frame; gavl_video_frame_t * next_in_frame; gavl_video_frame_t * out_frame; // gavl_video_frame_t * fps_frame; // gavl_video_frame_t * next_still_frame; // gavl_video_frame_t * transfer_frame; // gavl_video_frame_pool_t * src_fp; // gavl_video_frame_pool_t * dst_fp; /* Callbacks set according to the configuration */ gavl_source_status_t (*read_frame)(gavl_video_source_t * s, gavl_video_frame_t ** frame); gavl_source_status_t (*read_video)(gavl_video_source_t * s, gavl_video_frame_t ** frame); gavl_connector_lock_func_t lock_func; gavl_connector_lock_func_t unlock_func; void * lock_priv; gavl_video_source_t * prev; gavl_connector_free_func_t free_func; int64_t pts_offset; }; static gavl_video_frame_t * create_in_frame(gavl_video_source_t * src) { gavl_video_frame_t * ret; if(src->flags & FLAG_HW_TO_RAM) ret = gavl_video_frame_create(&src->src_format); else if(src->src_format.hwctx) ret = gavl_hw_video_frame_create(src->src_format.hwctx, 1); else ret = gavl_video_frame_create(&src->src_format); ret->timestamp = GAVL_TIME_UNDEFINED; return ret; } void gavl_video_source_set_free_func(gavl_video_source_t * src, gavl_connector_free_func_t free_func) { src->free_func = free_func; } gavl_video_source_t * gavl_video_source_create(gavl_video_source_func_t func, void * priv, int src_flags, const gavl_video_format_t * src_format) { gavl_video_source_t * ret; if(src_format->hwctx && !(src_flags & GAVL_SOURCE_SRC_ALLOC)) { fprintf(stderr, "Hardware based formats need to have GAVL_SOURCE_SRC_ALLOC set\n"); return NULL; } ret = calloc(1, sizeof(*ret)); ret->func = func; ret->priv = priv; ret->src_flags = src_flags; gavl_video_format_copy(&ret->src_format, src_format); gavl_video_format_copy(&ret->src_format_nohw, src_format); ret->src_format_nohw.hwctx = NULL; ret->cnv = gavl_video_converter_create(); return ret; } void gavl_video_source_set_pts_offset(gavl_video_source_t * src, int64_t offset) { src->pts_offset = offset; } gavl_video_source_t * gavl_video_source_create_source(gavl_video_source_func_t func, void * priv, int src_flags, gavl_video_source_t * src) { gavl_video_source_t * ret = gavl_video_source_create(func, priv, src_flags, gavl_video_source_get_dst_format(src)); ret->prev = src; return ret; } void gavl_video_source_set_lock_funcs(gavl_video_source_t * src, gavl_connector_lock_func_t lock_func, gavl_connector_lock_func_t unlock_func, void * priv) { src->lock_func = lock_func; src->unlock_func = unlock_func; src->lock_priv = priv; } /* Called by the destination */ void gavl_video_source_support_hw(gavl_video_source_t * s) { s->flags |= FLAG_SUPPORT_HW; } const gavl_video_format_t * gavl_video_source_get_src_format(gavl_video_source_t * s) { return (s->flags & FLAG_SUPPORT_HW) ? &s->src_format : &s->src_format_nohw; } int gavl_video_source_get_src_flags(gavl_video_source_t * s) { return s->src_flags; } const gavl_video_format_t * gavl_video_source_get_dst_format(gavl_video_source_t * s) { return (s->flags & FLAG_DST_SET) ? &s->dst_format : gavl_video_source_get_src_format(s); } gavl_video_options_t * gavl_video_source_get_options(gavl_video_source_t * s) { return gavl_video_converter_get_options(s->cnv); } GAVL_PUBLIC void gavl_video_source_reset(gavl_video_source_t * s) { s->pts = GAVL_TIME_UNDEFINED; if(s->in_frame) s->in_frame->timestamp = GAVL_TIME_UNDEFINED; if(s->next_in_frame) s->next_in_frame->timestamp = GAVL_TIME_UNDEFINED; if(s->out_frame) s->out_frame->timestamp = GAVL_TIME_UNDEFINED; s->flags &= ~FLAG_EOS; #if 0 if(s->src_fp) gavl_video_frame_pool_reset(s->src_fp); if(s->dst_fp) gavl_video_frame_pool_reset(s->dst_fp); s->next_still_frame = NULL; s->fps_frame = NULL; #endif } GAVL_PUBLIC void gavl_video_source_destroy(gavl_video_source_t * s) { if(s->in_frame) gavl_video_frame_destroy(s->in_frame); if(s->next_in_frame) gavl_video_frame_destroy(s->next_in_frame); if(s->out_frame) gavl_video_frame_destroy(s->out_frame); gavl_video_converter_destroy(s->cnv); if(s->priv && s->free_func) s->free_func(s->priv); free(s); } static void scale_pts(gavl_video_source_t * s, gavl_video_frame_t * f) { if(!(s->flags & FLAG_SCALE_TIMESTAMPS)) { f->timestamp += s->pts_offset; return; } if(f->duration != GAVL_TIME_UNDEFINED) { int64_t timestamp_scaled; timestamp_scaled = gavl_time_rescale(s->src_format.timescale, s->dst_format.timescale, f->timestamp); f->duration = gavl_time_rescale(s->src_format.timescale, s->dst_format.timescale, f->timestamp + f->duration) - timestamp_scaled; f->timestamp = timestamp_scaled; } else f->timestamp = gavl_time_rescale(s->src_format.timescale, s->dst_format.timescale, f->timestamp); f->timestamp += s->pts_offset; } static gavl_source_status_t read_frame(gavl_video_source_t * s, gavl_video_frame_t ** frame) { gavl_source_status_t ret; if(s->lock_func) s->lock_func(s->lock_priv); ret = s->func(s->priv, frame); if(s->unlock_func) s->unlock_func(s->lock_priv); if(ret != GAVL_SOURCE_OK) return ret; if(frame && *frame) { if(((*frame)->timestamp != GAVL_TIME_UNDEFINED) && (s->pts == GAVL_TIME_UNDEFINED)) s->pts = gavl_time_rescale(s->src_format.timescale, s->dst_format.timescale, (*frame)->timestamp); } return ret; } static gavl_source_status_t read_frame_transfer(gavl_video_source_t * s, gavl_video_frame_t ** frame) { gavl_source_status_t ret; gavl_video_frame_t * tmp_frame = NULL; if(s->lock_func) s->lock_func(s->lock_priv); ret = s->func(s->priv, &tmp_frame); if(ret == GAVL_SOURCE_OK) { if(!gavl_video_frame_hw_to_ram(*frame, tmp_frame)) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Frame transfer failed"); ret = GAVL_SOURCE_EOF; } else { if((tmp_frame->timestamp != GAVL_TIME_UNDEFINED) && (s->pts == GAVL_TIME_UNDEFINED)) s->pts = gavl_time_rescale(s->src_format.timescale, s->dst_format.timescale, tmp_frame->timestamp); } } if(s->unlock_func) s->unlock_func(s->lock_priv); return ret; } static gavl_source_status_t read_video_simple(gavl_video_source_t * s, gavl_video_frame_t ** frame) { gavl_source_status_t st; gavl_video_frame_t * in_frame; int direct = 0; /* Pass from src to dst */ if(!(*frame) && (s->src_flags & GAVL_SOURCE_SRC_ALLOC)) direct = 1; /* Pass from dst to src (this is the legacy behavior) */ if(*frame && !(s->src_flags & GAVL_SOURCE_SRC_ALLOC)) direct = 1; if(direct) { if((st = s->read_frame(s, frame)) != GAVL_SOURCE_OK) return st; scale_pts(s, *frame); return GAVL_SOURCE_OK; } /* memcpy */ if(!(s->src_flags & GAVL_SOURCE_SRC_ALLOC)) { if(!s->in_frame) s->in_frame = create_in_frame(s); in_frame = s->in_frame; } else in_frame = NULL; if(!(*frame)) { if(!s->out_frame) s->out_frame = gavl_video_frame_create(&s->dst_format); *frame = s->out_frame; } if((st = s->read_frame(s, &in_frame)) != GAVL_SOURCE_OK) return st; gavl_video_frame_copy(&s->src_format, *frame, in_frame); gavl_video_frame_copy_metadata(*frame, in_frame); scale_pts(s, *frame); return GAVL_SOURCE_OK; } static gavl_source_status_t read_video_cnv(gavl_video_source_t * s, gavl_video_frame_t ** frame) { gavl_source_status_t st; gavl_video_frame_t * in_frame = NULL; if(!(s->src_flags & GAVL_SOURCE_SRC_ALLOC)) { if(!s->in_frame) s->in_frame = create_in_frame(s); in_frame = s->in_frame; } if((st = s->read_frame(s, &in_frame)) != GAVL_SOURCE_OK) return st; if(!(*frame)) { if(!s->out_frame) s->out_frame = gavl_video_frame_create(&s->dst_format); *frame = s->out_frame; } gavl_video_convert(s->cnv, in_frame, *frame); scale_pts(s, *frame); return GAVL_SOURCE_OK; } static void next_in_frame_fps(gavl_video_source_t * s) { gavl_video_frame_t * sav = s->in_frame; s->in_frame = s->next_in_frame; s->next_in_frame = sav; if(s->out_frame) s->out_frame->timestamp = GAVL_TIME_UNDEFINED; } static void put_frame_fps(gavl_video_source_t * s, gavl_video_frame_t ** frame, gavl_video_frame_t * in_frame) { if(*frame) { if(s->flags & FLAG_DO_CONVERT) { if(!s->out_frame) s->out_frame = gavl_video_frame_create(&s->dst_format); if(s->out_frame->timestamp == GAVL_TIME_UNDEFINED) gavl_video_convert(s->cnv, in_frame, s->out_frame); gavl_video_frame_copy(&s->dst_format, *frame, s->out_frame); } else { gavl_video_frame_copy(&s->dst_format, *frame, in_frame); } } else { if(s->flags & FLAG_DO_CONVERT) { if(!s->out_frame) { s->out_frame = gavl_video_frame_create(&s->dst_format); s->out_frame->timestamp = GAVL_TIME_UNDEFINED; } if(s->out_frame->timestamp == GAVL_TIME_UNDEFINED) gavl_video_convert(s->cnv, in_frame, s->out_frame); } else { *frame = in_frame; } } (*frame)->timestamp = s->pts; (*frame)->duration = s->dst_format.frame_duration; s->pts += s->dst_format.frame_duration; } static gavl_source_status_t read_video_fps(gavl_video_source_t * s, gavl_video_frame_t ** frame) { gavl_source_status_t st; if(s->flags & FLAG_EOS) return GAVL_SOURCE_EOF; if(!s->in_frame) { s->in_frame = create_in_frame(s); s->next_in_frame = create_in_frame(s); s->in_frame->timestamp = GAVL_TIME_UNDEFINED; s->next_in_frame->timestamp = GAVL_TIME_UNDEFINED; } if(s->in_frame->timestamp == GAVL_TIME_UNDEFINED) { if((st = s->read_frame(s, &s->in_frame)) != GAVL_SOURCE_OK) return st; } /* Check if we moved out of the window */ if((s->next_in_frame->timestamp != GAVL_TIME_UNDEFINED) && (s->pts >= s->next_in_frame->timestamp)) next_in_frame_fps(s); if(s->next_in_frame->timestamp == GAVL_TIME_UNDEFINED) { st = s->read_frame(s, &s->next_in_frame); if(st == GAVL_SOURCE_EOF) s->flags |= FLAG_EOS; } put_frame_fps(s, frame, s->in_frame); return GAVL_SOURCE_OK; } void gavl_video_source_set_dst(gavl_video_source_t * s, int dst_flags, const gavl_video_format_t * dst_format) { int convert_fps; gavl_video_format_t dst_fmt; s->dst_flags = dst_flags; if(dst_format) gavl_video_format_copy(&s->dst_format, dst_format); else gavl_video_format_copy(&s->dst_format, &s->src_format); gavl_video_format_copy(&dst_fmt, &s->dst_format); dst_fmt.framerate_mode = s->src_format.framerate_mode; dst_fmt.timescale = s->src_format.timescale; dst_fmt.frame_duration = s->src_format.frame_duration; if(gavl_video_converter_init(s->cnv, &s->src_format, &dst_fmt)) s->flags |= FLAG_DO_CONVERT; else s->flags &= ~FLAG_DO_CONVERT; s->flags &= ~FLAG_SCALE_TIMESTAMPS; convert_fps = 0; if(s->dst_format.framerate_mode == GAVL_FRAMERATE_CONSTANT) { if((s->src_format.framerate_mode == GAVL_FRAMERATE_VARIABLE) || ((s->src_format.framerate_mode == GAVL_FRAMERATE_CONSTANT) && (s->src_format.timescale * s->dst_format.frame_duration != s->dst_format.timescale * s->src_format.frame_duration))) { convert_fps = 1; } else if(s->src_format.framerate_mode == GAVL_FRAMERATE_STILL) { convert_fps = 1; } } if(!convert_fps) { if(s->src_format.timescale != s->dst_format.timescale) s->flags |= FLAG_SCALE_TIMESTAMPS; } /* Check if we need to transfer frames to RAM */ if(convert_fps || (s->flags & FLAG_DO_CONVERT)) s->dst_format.hwctx = NULL; if(s->src_format.hwctx && !s->dst_format.hwctx) s->flags |= FLAG_HW_TO_RAM; if(convert_fps) s->read_video = read_video_fps; else if(s->flags & FLAG_DO_CONVERT) s->read_video = read_video_cnv; else s->read_video = read_video_simple; if(s->flags & FLAG_HW_TO_RAM) { s->read_frame = read_frame_transfer; s->src_flags &= ~GAVL_SOURCE_SRC_ALLOC; } else s->read_frame = read_frame; gavl_video_source_reset(s); s->flags |= FLAG_DST_SET; } gavl_source_status_t gavl_video_source_read_frame(void * sp, gavl_video_frame_t ** frame) { gavl_video_source_t * s = sp; if(!(s->flags & FLAG_DST_SET)) gavl_video_source_set_dst(s, 0, NULL); if(!frame) { /* Forget our status */ gavl_video_source_reset(s); /* Skip one frame as cheaply as possible */ return s->read_frame(s, NULL); } else return s->read_video(s, frame); } void gavl_video_source_drain(gavl_video_source_t * s) { gavl_source_status_t st; gavl_video_frame_t * fr = NULL; while((st = gavl_video_source_read_frame(s, &fr)) == GAVL_SOURCE_OK) fr = NULL; } bplaum-gavl-b9385e3/gavl/volume.c000066400000000000000000000133531513252040200166700ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include #include #include #include static void set_factor_i(gavl_volume_control_t * v) { switch(v->format.sample_format) { case GAVL_SAMPLE_S8: case GAVL_SAMPLE_U8: v->factor_i = (int64_t)(v->factor_f * 0x100+0.5); break; case GAVL_SAMPLE_S16: case GAVL_SAMPLE_U16: v->factor_i = (int64_t)(v->factor_f * 0x10000+0.5); break; case GAVL_SAMPLE_S32: v->factor_i = (int64_t)(v->factor_f * 0x80000000LL+0.5); break; case GAVL_SAMPLE_NONE: case GAVL_SAMPLE_FLOAT: case GAVL_SAMPLE_DOUBLE: break; } } static void set_volume_interleave_none(gavl_volume_control_t * v, gavl_audio_frame_t * frame) { int i; /* All channels separate */ for(i = 0; i < v->format.num_channels; i++) { v->set_volume_channel(v, frame->channels.s_8[i], frame->valid_samples); } } static void set_volume_interleave_2(gavl_volume_control_t * v, gavl_audio_frame_t * frame) { int i; int imax; imax = v->format.num_channels/2; for(i = 0; i < imax; i++) { v->set_volume_channel(v, frame->channels.s_8[2*i], frame->valid_samples * 2); } if(v->format.num_channels % 2) { v->set_volume_channel(v, frame->channels.s_8[2*imax], frame->valid_samples); } } static void set_volume_interleave_all(gavl_volume_control_t * v, gavl_audio_frame_t * frame) { v->set_volume_channel(v, frame->samples.s_8, frame->valid_samples * v->format.num_channels); } /* Create / destroy */ gavl_volume_control_t * gavl_volume_control_create() { gavl_volume_control_t * v; v = calloc(1, sizeof(*v)); return v; } void gavl_volume_control_destroy(gavl_volume_control_t * v) { free(v); } /* Set format: can be called multiple times with one instance */ void gavl_volume_control_set_format(gavl_volume_control_t * v, const gavl_audio_format_t * format) { gavl_volume_funcs_t * funcs; gavl_audio_format_copy(&v->format, format); funcs = gavl_volume_funcs_create(); switch(format->sample_format) { case GAVL_SAMPLE_S8: v->set_volume_channel = funcs->set_volume_s8; break; case GAVL_SAMPLE_U8: v->set_volume_channel = funcs->set_volume_u8; break; case GAVL_SAMPLE_S16: v->set_volume_channel = funcs->set_volume_s16; break; case GAVL_SAMPLE_U16: v->set_volume_channel = funcs->set_volume_u16; break; case GAVL_SAMPLE_S32: v->set_volume_channel = funcs->set_volume_s32; break; case GAVL_SAMPLE_FLOAT: v->set_volume_channel = funcs->set_volume_float; break; case GAVL_SAMPLE_DOUBLE: v->set_volume_channel = funcs->set_volume_double; break; case GAVL_SAMPLE_NONE: break; } gavl_volume_funcs_destroy(funcs); switch(format->interleave_mode) { case GAVL_INTERLEAVE_NONE: v->set_volume = set_volume_interleave_none; break; case GAVL_INTERLEAVE_2: v->set_volume = set_volume_interleave_2; break; case GAVL_INTERLEAVE_ALL: v->set_volume = set_volume_interleave_all; break; } set_factor_i(v); } /* Apply the volume control to one audio frame */ void gavl_volume_control_apply(gavl_volume_control_t * v, gavl_audio_frame_t * frame) { v->set_volume(v, frame); } void gavl_volume_control_set_volume(gavl_volume_control_t * v, float volume) { v->factor_f = pow(10, volume/20.0); set_factor_i(v); } gavl_volume_funcs_t * gavl_volume_funcs_create() { gavl_volume_funcs_t * ret; ret = calloc(1, sizeof(*ret)); gavl_init_volume_funcs_c(ret); #ifdef ARCH_X86 // gavl_init_volume_funcs_mmx(ret); #endif return ret; } void gavl_volume_funcs_destroy(gavl_volume_funcs_t * funcs) { free(funcs); } /* * one e.g. is -40.0 * * < -40.0 -> 0 * -40.0 -> 1 * 0.0 -> steps - 1 * > one -> (int)((volume - one)/(0.0 - one) * (steps - 2)+0.5) + 1; */ int gavl_volume_to_int(float volume, float one, int max) { float volume_norm; float volume_int; if(volume < one) return 0; volume_norm = (volume - one)/(0.0 - one); // one -> 0, 0 -> 1 volume_int = (int)(volume_norm * (max - 1)+0.5) + 1; if(volume_int > max) volume_int = max; return volume_int; } float gavl_volume_to_float(int volume, float one, int max) { float volume_norm; if(volume < 1) return -10000.0; // Should be small enough even for double precision volume_norm = (float)(volume - 1) / ((float)(max - 1)); return one - volume_norm * one; } bplaum-gavl-b9385e3/include/000077500000000000000000000000001513252040200157025ustar00rootroot00000000000000bplaum-gavl-b9385e3/include/Makefile.am000066400000000000000000000006511513252040200177400ustar00rootroot00000000000000SUBDIRS = gavl private_headers = \ accel.h \ arith128.h \ attributes.h \ audio.h \ blend.h \ bswap.h \ colorspace.h \ countrycodes.h \ deinterlace.h \ dsp.h \ float_cast.h \ gavlshm.h \ hw_private.h \ interleave.h \ io_private.h \ language_table.h \ macros.h \ memalign.h \ mix.h \ sampleformat.h \ samplerate.h \ scale.h \ socket_private.h \ transform.h \ vaapi.h \ video.h \ volume.h noinst_HEADERS = $(private_headers) bplaum-gavl-b9385e3/include/accel.h000066400000000000000000000046201513252040200171240ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #ifndef ACCEL_H_INCLUDED #define ACCEL_H_INCLUDED /* Acceleration flags are NOT part of the public API because what the user wants in the end is to choose between speed and quality. The only place, where these functions are needed from outside the library, are the test programs, which must select individual routines. */ #include /* We want the memcpy prototype anyway */ /* Acceleration flags (CPU Specific flags are in the public API) */ #define GAVL_ACCEL_C (1<<16) #define GAVL_ACCEL_C_HQ (1<<17) #define GAVL_ACCEL_C_SHQ (1<<18) /* Super high quality, damn slow */ /* CPU Specific flags */ void gavl_audio_options_set_accel_flags(gavl_audio_options_t * opt, int accel_flags) __attribute__ ((visibility("default"))); int gavl_audio_options_get_accel_flags(gavl_audio_options_t * opt); void gavl_video_options_set_accel_flags(gavl_video_options_t * opt, int accel_flags) __attribute__ ((visibility("default"))); int gavl_video_options_get_accel_flags(gavl_video_options_t * opt); /* Optimized memcpy versions */ void gavl_init_memcpy(void); extern void * (*gavl_memcpy)(void *to, const void *from, size_t len); /* Branch prediction */ #if __GNUC__ >= 3 #define GAVL_UNLIKELY(exp) __builtin_expect((exp),0) #define GAVL_LIKELY(exp) __builtin_expect((exp),1) #else #define GAVL_UNLIKELY(exp) exp #define GAVL_LIKELY(exp) exp #endif #endif // ACCEL_H_INCLUDED bplaum-gavl-b9385e3/include/arith128.h000066400000000000000000000035411513252040200174200ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #ifndef ARITH128_H_INCLUDED #define ARITH128_H_INCLUDED /* 128 bit arithmetic routines needed for overflow save * 64 bit rescaling functions. * * Mostly copied and pasted from the qofmath128.[ch] files by * Copyright (C) 2004 Linas Vepstas , * which are part of gnucash (http://gnucash.org) */ typedef struct { uint64_t hi; uint64_t lo; short isneg; /**< sign-bit -- T if number is negative */ short isbig; /**< sizeflag -- T if number won't fit in signed 64-bit */ } gavl_int128_t; /** Multiply a pair of signed 64-bit numbers, * returning a signed 128-bit number. */ void gavl_int128_mult(int64_t a, int64_t b, gavl_int128_t * ret); /** Divide a signed 128-bit number by a signed 64-bit, * returning a signed 128-bit number. */ void gavl_int128_div(gavl_int128_t * n, int64_t d, gavl_int128_t * ret); void gavl_int128_copy(gavl_int128_t *dst, gavl_int128_t * src); #endif // ARITH128_H_INCLUDED bplaum-gavl-b9385e3/include/attributes.h000066400000000000000000000024011513252040200202360ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #ifndef ATTRIBUTES_H_INCLUDED #define ATTRIBUTES_H_INCLUDED /* use gcc attribs to align critical data structures */ #ifdef ATTRIBUTE_ALIGNED_MAX #define ATTR_ALIGN(align) __attribute__ ((__aligned__ ((ATTRIBUTE_ALIGNED_MAX < align) ? ATTRIBUTE_ALIGNED_MAX : align))) #else #define ATTR_ALIGN(align) #endif #endif // ATTRIBUTES_H_INCLUDED bplaum-gavl-b9385e3/include/audio.h000066400000000000000000000102171513252040200171550ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #ifndef AUDIO_H_INCLUDED #define AUDIO_H_INCLUDED /* Private structures for the audio converter */ #include #include #include "config.h" struct gavl_audio_options_s { /* * Quality setting from 1 to 5 (0 means undefined). * 3 means Standard C routines or accelerated version with * equal quality. Lower numbers mean accelerated versions with lower * quality. */ int quality; /* Explicit accel_flags are mainly for debugging purposes */ uint32_t accel_flags; /* CPU Acceleration flags */ /* #defines from above */ uint32_t conversion_flags; gavl_audio_dither_mode_t dither_mode; gavl_resample_mode_t resample_mode; const double ** mix_matrix; }; typedef struct gavl_audio_convert_context_s gavl_audio_convert_context_t; typedef struct gavl_mix_matrix_s gavl_mix_matrix_t; typedef void (*gavl_audio_func_t)(struct gavl_audio_convert_context_s * ctx); typedef struct gavl_samplerate_converter_s gavl_samplerate_converter_t; typedef struct gavl_audio_dither_context_s gavl_audio_dither_context_t; struct gavl_samplerate_converter_s { int num_resamplers; SRC_STATE ** resamplers; SRC_DATA data; double ratio; }; struct gavl_audio_convert_context_s { const gavl_audio_frame_t * input_frame; gavl_audio_frame_t * output_frame; gavl_audio_format_t input_format; gavl_audio_format_t output_format; /* Conversion function to be called */ gavl_audio_func_t func; /* Private data */ gavl_mix_matrix_t * mix_matrix; gavl_samplerate_converter_t * samplerate_converter; gavl_audio_dither_context_t * dither_context; /* For chaining */ struct gavl_audio_convert_context_s * next; }; gavl_audio_convert_context_t * gavl_audio_convert_context_create(gavl_audio_format_t * input_format, gavl_audio_format_t * output_format); gavl_audio_convert_context_t * gavl_mix_context_create(gavl_audio_options_t * opt, gavl_audio_format_t * input_format, gavl_audio_format_t * output_format); gavl_audio_convert_context_t * gavl_interleave_context_create(gavl_audio_options_t * opt, gavl_audio_format_t * input_format, gavl_audio_format_t * output_format); gavl_audio_convert_context_t * gavl_sampleformat_context_create(gavl_audio_options_t * opt, gavl_audio_format_t * input_format, gavl_audio_format_t * output_format); gavl_audio_convert_context_t * gavl_samplerate_context_create(gavl_audio_options_t * opt, gavl_audio_format_t * input_format, gavl_audio_format_t * output_format); /* Resampling support */ gavl_audio_convert_context_t * gavl_samplerate_context_create(gavl_audio_options_t * opt, gavl_audio_format_t * input_format, gavl_audio_format_t * output_format); /* Destroy samplerate converter */ void gavl_samplerate_converter_destroy(gavl_samplerate_converter_t * s); /* Destroy dither context */ void gavl_audio_dither_context_destroy(gavl_audio_dither_context_t * s); #endif // AUDIO_H_INCLUDED bplaum-gavl-b9385e3/include/blend.h000066400000000000000000000035271513252040200171460ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #ifndef BLEND_H_INCLUDED #define BLEND_H_INCLUDED #include typedef void (*gavl_blend_func_t)(gavl_overlay_blend_context_t * ctx, gavl_video_frame_t * frame, gavl_video_frame_t * overlay); struct gavl_overlay_blend_context_s { gavl_video_format_t dst_format; gavl_video_format_t ovl_format; gavl_blend_func_t func; gavl_overlay_t * ovl; gavl_video_frame_t * ovl_win; gavl_video_frame_t * dst_win; gavl_rectangle_i_t dst_rect; gavl_video_options_t opt; /* Chroma subsampling of the destination format */ int dst_sub_h, dst_sub_v; gavl_video_sink_t * sink; }; gavl_blend_func_t gavl_find_blend_func_c(gavl_overlay_blend_context_t * ctx, gavl_pixelformat_t frame_format, gavl_pixelformat_t * overlay_format); #endif // BLEND_H_INCLUDED bplaum-gavl-b9385e3/include/bswap.h000066400000000000000000000074601513252040200171760ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ /* bswap.h taken from ffmpeg and adjusted to gavl, * original copyright below */ /* * copyright (c) 2006 Michael Niedermayer * * This file is part of FFmpeg. * * FFmpeg 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; either * version 2.1 of the License, or (at your option) any later version. * * FFmpeg 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 FFmpeg; if not, write to the Free Software * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA */ /** * @file bswap.h * byte swap. */ #ifndef BSWAP_H_INCLUDED #define BSWAP_H_INCLUDED #ifdef HAVE_BYTESWAP_H #include #else #ifdef ARCH_X86_64 # define LEGACY_REGS "=Q" #else # define LEGACY_REGS "=q" #endif static inline uint16_t bswap_16(uint16_t x) { #if defined(ARCH_X86) __asm("rorw $8, %0" : LEGACY_REGS (x) : "0" (x)); #elif defined(ARCH_SH4) __asm__("swap.b %0,%0":"=r"(x):"0"(x)); #else x= (x>>8) | (x<<8); #endif return x; } static inline uint32_t bswap_32(uint32_t x) { #if defined(ARCH_X86) #if __CPU__ != 386 __asm("bswap %0": "=r" (x) : #else __asm("xchgb %b0,%h0\n" " rorl $16,%0\n" " xchgb %b0,%h0": LEGACY_REGS (x) : #endif "0" (x)); #elif defined(ARCH_SH4) __asm__( "swap.b %0,%0\n" "swap.w %0,%0\n" "swap.b %0,%0\n" :"=r"(x):"0"(x)); #elif defined(ARCH_ARM) uint32_t t; __asm__ ( "eor %1, %0, %0, ror #16 \n\t" "bic %1, %1, #0xFF0000 \n\t" "mov %0, %0, ror #8 \n\t" "eor %0, %0, %1, lsr #8 \n\t" : "+r"(x), "+r"(t)); #elif defined(ARCH_BFIN) unsigned tmp; asm("%1 = %0 >> 8 (V);\n\t" "%0 = %0 << 8 (V);\n\t" "%0 = %0 | %1;\n\t" "%0 = PACK(%0.L, %0.H);\n\t" : "+d"(x), "=&d"(tmp)); #else x= ((x<<8)&0xFF00FF00) | ((x>>8)&0x00FF00FF); x= (x>>16) | (x<<16); #endif return x; } static inline uint64_t bswap_64(uint64_t x) { #if 0 x= ((x<< 8)&0xFF00FF00FF00FF00ULL) | ((x>> 8)&0x00FF00FF00FF00FFULL); x= ((x<<16)&0xFFFF0000FFFF0000ULL) | ((x>>16)&0x0000FFFF0000FFFFULL); return (x>>32) | (x<<32); #elif defined(ARCH_X86_64) __asm("bswap %0": "=r" (x) : "0" (x)); return x; #else union { uint64_t ll; uint32_t l[2]; } w, r; w.ll = x; r.l[0] = bswap_32 (w.l[1]); r.l[1] = bswap_32 (w.l[0]); return r.ll; #endif } #endif /* !HAVE_BYTESWAP_H */ #endif /* BSWAP_H_INCLUDED */ bplaum-gavl-b9385e3/include/colorspace.h000066400000000000000000001363601513252040200202160ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ /************************************** * Function table for pixelformats **************************************/ #ifndef COLORSPACE_H_INCLUDED #define COLORSPACE_H_INCLUDED #include typedef struct { /* Conversions among RGB formats */ gavl_video_func_t swap_rgb_24; gavl_video_func_t swap_rgb_32; gavl_video_func_t swap_rgb_16; gavl_video_func_t swap_rgb_15; gavl_video_func_t rgb_15_to_16; gavl_video_func_t rgb_15_to_24; gavl_video_func_t rgb_15_to_32; gavl_video_func_t rgb_15_to_48; gavl_video_func_t rgb_15_to_float; gavl_video_func_t rgb_16_to_15; gavl_video_func_t rgb_16_to_24; gavl_video_func_t rgb_16_to_32; gavl_video_func_t rgb_16_to_48; gavl_video_func_t rgb_16_to_float; gavl_video_func_t rgb_24_to_15; gavl_video_func_t rgb_24_to_16; gavl_video_func_t rgb_24_to_32; gavl_video_func_t rgb_24_to_48; gavl_video_func_t rgb_24_to_float; gavl_video_func_t rgb_32_to_15; gavl_video_func_t rgb_32_to_16; gavl_video_func_t rgb_32_to_24; gavl_video_func_t rgb_32_to_48; gavl_video_func_t rgb_32_to_float; gavl_video_func_t rgb_48_to_15; gavl_video_func_t rgb_48_to_16; gavl_video_func_t rgb_48_to_24; gavl_video_func_t rgb_48_to_32; gavl_video_func_t rgb_48_to_48; gavl_video_func_t rgb_48_to_float; gavl_video_func_t rgb_float_to_15; gavl_video_func_t rgb_float_to_16; gavl_video_func_t rgb_float_to_24; gavl_video_func_t rgb_float_to_32; gavl_video_func_t rgb_float_to_48; gavl_video_func_t rgb_15_to_16_swap; gavl_video_func_t rgb_15_to_24_swap; gavl_video_func_t rgb_15_to_32_swap; gavl_video_func_t rgb_15_to_48_swap; gavl_video_func_t rgb_15_to_float_swap; gavl_video_func_t rgb_16_to_15_swap; gavl_video_func_t rgb_16_to_24_swap; gavl_video_func_t rgb_16_to_32_swap; gavl_video_func_t rgb_16_to_48_swap; gavl_video_func_t rgb_16_to_float_swap; gavl_video_func_t rgb_24_to_15_swap; gavl_video_func_t rgb_24_to_16_swap; gavl_video_func_t rgb_24_to_32_swap; gavl_video_func_t rgb_24_to_48_swap; gavl_video_func_t rgb_24_to_float_swap; gavl_video_func_t rgb_32_to_15_swap; gavl_video_func_t rgb_32_to_16_swap; gavl_video_func_t rgb_32_to_24_swap; gavl_video_func_t rgb_32_to_48_swap; gavl_video_func_t rgb_32_to_float_swap; gavl_video_func_t rgb_48_to_15_swap; gavl_video_func_t rgb_48_to_16_swap; gavl_video_func_t rgb_48_to_24_swap; gavl_video_func_t rgb_48_to_32_swap; gavl_video_func_t rgb_float_to_15_swap; gavl_video_func_t rgb_float_to_16_swap; gavl_video_func_t rgb_float_to_24_swap; gavl_video_func_t rgb_float_to_32_swap; /* Conversion from RGBA to RGB formats */ gavl_video_func_t rgba_32_to_rgb_15; gavl_video_func_t rgba_32_to_bgr_15; gavl_video_func_t rgba_32_to_rgb_16; gavl_video_func_t rgba_32_to_bgr_16; gavl_video_func_t rgba_32_to_rgb_24; gavl_video_func_t rgba_32_to_bgr_24; gavl_video_func_t rgba_32_to_rgb_32; gavl_video_func_t rgba_32_to_bgr_32; gavl_video_func_t rgba_32_to_rgb_48; gavl_video_func_t rgba_32_to_rgba_64; gavl_video_func_t rgba_32_to_rgb_float; gavl_video_func_t rgba_32_to_rgba_float; gavl_video_func_t rgba_64_to_rgb_15; gavl_video_func_t rgba_64_to_bgr_15; gavl_video_func_t rgba_64_to_rgb_16; gavl_video_func_t rgba_64_to_bgr_16; gavl_video_func_t rgba_64_to_rgb_24; gavl_video_func_t rgba_64_to_bgr_24; gavl_video_func_t rgba_64_to_rgb_32; gavl_video_func_t rgba_64_to_bgr_32; gavl_video_func_t rgba_64_to_rgb_48; gavl_video_func_t rgba_64_to_rgb_float; gavl_video_func_t rgba_float_to_rgb_15; gavl_video_func_t rgba_float_to_bgr_15; gavl_video_func_t rgba_float_to_rgb_16; gavl_video_func_t rgba_float_to_bgr_16; gavl_video_func_t rgba_float_to_rgb_24; gavl_video_func_t rgba_float_to_bgr_24; gavl_video_func_t rgba_float_to_rgb_32; gavl_video_func_t rgba_float_to_bgr_32; gavl_video_func_t rgba_float_to_rgb_48; gavl_video_func_t rgba_float_to_rgb_float; /* Conversion from RGB formats to RGBA */ gavl_video_func_t rgb_15_to_rgba_32; gavl_video_func_t bgr_15_to_rgba_32; gavl_video_func_t rgb_16_to_rgba_32; gavl_video_func_t bgr_16_to_rgba_32; gavl_video_func_t rgb_24_to_rgba_32; gavl_video_func_t bgr_24_to_rgba_32; gavl_video_func_t rgb_32_to_rgba_32; gavl_video_func_t bgr_32_to_rgba_32; gavl_video_func_t rgb_48_to_rgba_32; gavl_video_func_t rgba_64_to_rgba_32; gavl_video_func_t rgb_float_to_rgba_32; gavl_video_func_t rgba_float_to_rgba_32; gavl_video_func_t rgb_15_to_rgba_64; gavl_video_func_t bgr_15_to_rgba_64; gavl_video_func_t rgb_16_to_rgba_64; gavl_video_func_t bgr_16_to_rgba_64; gavl_video_func_t rgb_24_to_rgba_64; gavl_video_func_t bgr_24_to_rgba_64; gavl_video_func_t rgb_32_to_rgba_64; gavl_video_func_t bgr_32_to_rgba_64; gavl_video_func_t rgb_48_to_rgba_64; gavl_video_func_t rgb_float_to_rgba_64; gavl_video_func_t rgba_float_to_rgba_64; gavl_video_func_t rgb_15_to_rgba_float; gavl_video_func_t bgr_15_to_rgba_float; gavl_video_func_t rgb_16_to_rgba_float; gavl_video_func_t bgr_16_to_rgba_float; gavl_video_func_t rgb_24_to_rgba_float; gavl_video_func_t bgr_24_to_rgba_float; gavl_video_func_t rgb_32_to_rgba_float; gavl_video_func_t bgr_32_to_rgba_float; gavl_video_func_t rgb_48_to_rgba_float; gavl_video_func_t rgba_64_to_rgba_float; gavl_video_func_t rgb_float_to_rgba_float; /* RGB -> gray */ gavl_video_func_t rgb_15_to_gray_8; gavl_video_func_t bgr_15_to_gray_8; gavl_video_func_t rgb_16_to_gray_8; gavl_video_func_t bgr_16_to_gray_8; gavl_video_func_t rgb_24_to_gray_8; gavl_video_func_t bgr_24_to_gray_8; gavl_video_func_t rgb_32_to_gray_8; gavl_video_func_t bgr_32_to_gray_8; gavl_video_func_t rgba_32_to_gray_8; gavl_video_func_t rgb_48_to_gray_8; gavl_video_func_t rgba_64_to_gray_8; gavl_video_func_t rgb_float_to_gray_8; gavl_video_func_t rgba_float_to_gray_8; gavl_video_func_t rgb_15_to_gray_16; gavl_video_func_t bgr_15_to_gray_16; gavl_video_func_t rgb_16_to_gray_16; gavl_video_func_t bgr_16_to_gray_16; gavl_video_func_t rgb_24_to_gray_16; gavl_video_func_t bgr_24_to_gray_16; gavl_video_func_t rgb_32_to_gray_16; gavl_video_func_t bgr_32_to_gray_16; gavl_video_func_t rgba_32_to_gray_16; gavl_video_func_t rgb_48_to_gray_16; gavl_video_func_t rgba_64_to_gray_16; gavl_video_func_t rgb_float_to_gray_16; gavl_video_func_t rgba_float_to_gray_16; gavl_video_func_t rgb_15_to_gray_float; gavl_video_func_t bgr_15_to_gray_float; gavl_video_func_t rgb_16_to_gray_float; gavl_video_func_t bgr_16_to_gray_float; gavl_video_func_t rgb_24_to_gray_float; gavl_video_func_t bgr_24_to_gray_float; gavl_video_func_t rgb_32_to_gray_float; gavl_video_func_t bgr_32_to_gray_float; gavl_video_func_t rgba_32_to_gray_float; gavl_video_func_t rgb_48_to_gray_float; gavl_video_func_t rgba_64_to_gray_float; gavl_video_func_t rgb_float_to_gray_float; gavl_video_func_t rgba_float_to_gray_float; /* RGB -> Gray alpha */ gavl_video_func_t rgb_15_to_graya_16; gavl_video_func_t bgr_15_to_graya_16; gavl_video_func_t rgb_16_to_graya_16; gavl_video_func_t bgr_16_to_graya_16; gavl_video_func_t rgb_24_to_graya_16; gavl_video_func_t bgr_24_to_graya_16; gavl_video_func_t rgb_32_to_graya_16; gavl_video_func_t bgr_32_to_graya_16; gavl_video_func_t rgba_32_to_graya_16; gavl_video_func_t rgb_48_to_graya_16; gavl_video_func_t rgba_64_to_graya_16; gavl_video_func_t rgb_float_to_graya_16; gavl_video_func_t rgba_float_to_graya_16; gavl_video_func_t rgb_15_to_graya_32; gavl_video_func_t bgr_15_to_graya_32; gavl_video_func_t rgb_16_to_graya_32; gavl_video_func_t bgr_16_to_graya_32; gavl_video_func_t rgb_24_to_graya_32; gavl_video_func_t bgr_24_to_graya_32; gavl_video_func_t rgb_32_to_graya_32; gavl_video_func_t bgr_32_to_graya_32; gavl_video_func_t rgba_32_to_graya_32; gavl_video_func_t rgb_48_to_graya_32; gavl_video_func_t rgba_64_to_graya_32; gavl_video_func_t rgb_float_to_graya_32; gavl_video_func_t rgba_float_to_graya_32; gavl_video_func_t rgb_15_to_graya_float; gavl_video_func_t bgr_15_to_graya_float; gavl_video_func_t rgb_16_to_graya_float; gavl_video_func_t bgr_16_to_graya_float; gavl_video_func_t rgb_24_to_graya_float; gavl_video_func_t bgr_24_to_graya_float; gavl_video_func_t rgb_32_to_graya_float; gavl_video_func_t bgr_32_to_graya_float; gavl_video_func_t rgba_32_to_graya_float; gavl_video_func_t rgb_48_to_graya_float; gavl_video_func_t rgba_64_to_graya_float; gavl_video_func_t rgb_float_to_graya_float; gavl_video_func_t rgba_float_to_graya_float; /* gray -> RGB */ gavl_video_func_t gray_8_to_rgb_15; gavl_video_func_t gray_8_to_rgb_16; gavl_video_func_t gray_8_to_rgb_24; gavl_video_func_t gray_8_to_rgb_32; gavl_video_func_t gray_8_to_rgba_32; gavl_video_func_t gray_8_to_rgb_48; gavl_video_func_t gray_8_to_rgba_64; gavl_video_func_t gray_8_to_rgb_float; gavl_video_func_t gray_8_to_rgba_float; gavl_video_func_t gray_16_to_rgb_15; gavl_video_func_t gray_16_to_rgb_16; gavl_video_func_t gray_16_to_rgb_24; gavl_video_func_t gray_16_to_rgb_32; gavl_video_func_t gray_16_to_rgba_32; gavl_video_func_t gray_16_to_rgb_48; gavl_video_func_t gray_16_to_rgba_64; gavl_video_func_t gray_16_to_rgb_float; gavl_video_func_t gray_16_to_rgba_float; gavl_video_func_t gray_float_to_rgb_15; gavl_video_func_t gray_float_to_rgb_16; gavl_video_func_t gray_float_to_rgb_24; gavl_video_func_t gray_float_to_rgb_32; gavl_video_func_t gray_float_to_rgba_32; gavl_video_func_t gray_float_to_rgb_48; gavl_video_func_t gray_float_to_rgba_64; gavl_video_func_t gray_float_to_rgb_float; gavl_video_func_t gray_float_to_rgba_float; /* gray alpha -> RGB */ gavl_video_func_t graya_16_to_rgb_15; gavl_video_func_t graya_16_to_rgb_16; gavl_video_func_t graya_16_to_rgb_24; gavl_video_func_t graya_16_to_rgb_32; gavl_video_func_t graya_16_to_rgba_32; gavl_video_func_t graya_16_to_rgb_48; gavl_video_func_t graya_16_to_rgba_64; gavl_video_func_t graya_16_to_rgb_float; gavl_video_func_t graya_16_to_rgba_float; gavl_video_func_t graya_32_to_rgb_15; gavl_video_func_t graya_32_to_rgb_16; gavl_video_func_t graya_32_to_rgb_24; gavl_video_func_t graya_32_to_rgb_32; gavl_video_func_t graya_32_to_rgba_32; gavl_video_func_t graya_32_to_rgb_48; gavl_video_func_t graya_32_to_rgba_64; gavl_video_func_t graya_32_to_rgb_float; gavl_video_func_t graya_32_to_rgba_float; gavl_video_func_t graya_float_to_rgb_15; gavl_video_func_t graya_float_to_rgb_16; gavl_video_func_t graya_float_to_rgb_24; gavl_video_func_t graya_float_to_rgb_32; gavl_video_func_t graya_float_to_rgba_32; gavl_video_func_t graya_float_to_rgb_48; gavl_video_func_t graya_float_to_rgba_64; gavl_video_func_t graya_float_to_rgb_float; gavl_video_func_t graya_float_to_rgba_float; /* RGB -> YUV */ gavl_video_func_t rgb_15_to_yuy2; gavl_video_func_t rgb_15_to_yuva_32; gavl_video_func_t rgb_15_to_yuva_64; gavl_video_func_t rgb_15_to_yuva_float; gavl_video_func_t rgb_15_to_yuv_float; gavl_video_func_t rgb_15_to_uyvy; gavl_video_func_t rgb_15_to_yuv_420_p; gavl_video_func_t rgb_15_to_yuv_410_p; gavl_video_func_t rgb_15_to_yuv_422_p; gavl_video_func_t rgb_15_to_yuv_422_p_16; gavl_video_func_t rgb_15_to_yuv_411_p; gavl_video_func_t rgb_15_to_yuv_444_p; gavl_video_func_t rgb_15_to_yuv_444_p_16; gavl_video_func_t rgb_15_to_yuvj_420_p; gavl_video_func_t rgb_15_to_yuvj_422_p; gavl_video_func_t rgb_15_to_yuvj_444_p; gavl_video_func_t bgr_15_to_yuy2; gavl_video_func_t bgr_15_to_yuva_32; gavl_video_func_t bgr_15_to_yuva_64; gavl_video_func_t bgr_15_to_yuva_float; gavl_video_func_t bgr_15_to_yuv_float; gavl_video_func_t bgr_15_to_uyvy; gavl_video_func_t bgr_15_to_yuv_420_p; gavl_video_func_t bgr_15_to_yuv_410_p; gavl_video_func_t bgr_15_to_yuv_422_p; gavl_video_func_t bgr_15_to_yuv_422_p_16; gavl_video_func_t bgr_15_to_yuv_411_p; gavl_video_func_t bgr_15_to_yuv_444_p; gavl_video_func_t bgr_15_to_yuv_444_p_16; gavl_video_func_t bgr_15_to_yuvj_420_p; gavl_video_func_t bgr_15_to_yuvj_422_p; gavl_video_func_t bgr_15_to_yuvj_411_p; gavl_video_func_t bgr_15_to_yuvj_444_p; gavl_video_func_t rgb_16_to_yuy2; gavl_video_func_t rgb_16_to_yuva_32; gavl_video_func_t rgb_16_to_yuva_64; gavl_video_func_t rgb_16_to_yuva_float; gavl_video_func_t rgb_16_to_yuv_float; gavl_video_func_t rgb_16_to_uyvy; gavl_video_func_t rgb_16_to_yuv_420_p; gavl_video_func_t rgb_16_to_yuv_410_p; gavl_video_func_t rgb_16_to_yuv_422_p; gavl_video_func_t rgb_16_to_yuv_422_p_16; gavl_video_func_t rgb_16_to_yuv_411_p; gavl_video_func_t rgb_16_to_yuv_444_p; gavl_video_func_t rgb_16_to_yuv_444_p_16; gavl_video_func_t rgb_16_to_yuvj_420_p; gavl_video_func_t rgb_16_to_yuvj_422_p; gavl_video_func_t rgb_16_to_yuvj_444_p; gavl_video_func_t bgr_16_to_yuy2; gavl_video_func_t bgr_16_to_yuva_32; gavl_video_func_t bgr_16_to_yuva_64; gavl_video_func_t bgr_16_to_yuva_float; gavl_video_func_t bgr_16_to_yuv_float; gavl_video_func_t bgr_16_to_uyvy; gavl_video_func_t bgr_16_to_yuv_420_p; gavl_video_func_t bgr_16_to_yuv_410_p; gavl_video_func_t bgr_16_to_yuv_422_p; gavl_video_func_t bgr_16_to_yuv_422_p_16; gavl_video_func_t bgr_16_to_yuv_411_p; gavl_video_func_t bgr_16_to_yuv_444_p; gavl_video_func_t bgr_16_to_yuv_444_p_16; gavl_video_func_t bgr_16_to_yuvj_420_p; gavl_video_func_t bgr_16_to_yuvj_422_p; gavl_video_func_t bgr_16_to_yuvj_444_p; gavl_video_func_t rgb_24_to_yuy2; gavl_video_func_t rgb_24_to_yuva_32; gavl_video_func_t rgb_24_to_yuva_64; gavl_video_func_t rgb_24_to_yuva_float; gavl_video_func_t rgb_24_to_yuv_float; gavl_video_func_t rgb_24_to_uyvy; gavl_video_func_t rgb_24_to_yuv_420_p; gavl_video_func_t rgb_24_to_yuv_410_p; gavl_video_func_t rgb_24_to_yuv_422_p; gavl_video_func_t rgb_24_to_yuv_422_p_16; gavl_video_func_t rgb_24_to_yuv_411_p; gavl_video_func_t rgb_24_to_yuv_444_p; gavl_video_func_t rgb_24_to_yuv_444_p_16; gavl_video_func_t rgb_24_to_yuvj_420_p; gavl_video_func_t rgb_24_to_yuvj_422_p; gavl_video_func_t rgb_24_to_yuvj_444_p; gavl_video_func_t bgr_24_to_yuy2; gavl_video_func_t bgr_24_to_yuva_32; gavl_video_func_t bgr_24_to_yuva_64; gavl_video_func_t bgr_24_to_yuva_float; gavl_video_func_t bgr_24_to_yuv_float; gavl_video_func_t bgr_24_to_uyvy; gavl_video_func_t bgr_24_to_yuv_420_p; gavl_video_func_t bgr_24_to_yuv_410_p; gavl_video_func_t bgr_24_to_yuv_422_p; gavl_video_func_t bgr_24_to_yuv_422_p_16; gavl_video_func_t bgr_24_to_yuv_411_p; gavl_video_func_t bgr_24_to_yuv_444_p; gavl_video_func_t bgr_24_to_yuv_444_p_16; gavl_video_func_t bgr_24_to_yuvj_420_p; gavl_video_func_t bgr_24_to_yuvj_422_p; gavl_video_func_t bgr_24_to_yuvj_444_p; gavl_video_func_t rgb_32_to_yuy2; gavl_video_func_t rgb_32_to_yuva_32; gavl_video_func_t rgb_32_to_yuva_64; gavl_video_func_t rgb_32_to_yuva_float; gavl_video_func_t rgb_32_to_yuv_float; gavl_video_func_t rgb_32_to_uyvy; gavl_video_func_t rgb_32_to_yuv_420_p; gavl_video_func_t rgb_32_to_yuv_410_p; gavl_video_func_t rgb_32_to_yuv_422_p; gavl_video_func_t rgb_32_to_yuv_422_p_16; gavl_video_func_t rgb_32_to_yuv_411_p; gavl_video_func_t rgb_32_to_yuv_444_p; gavl_video_func_t rgb_32_to_yuv_444_p_16; gavl_video_func_t rgb_32_to_yuvj_420_p; gavl_video_func_t rgb_32_to_yuvj_422_p; gavl_video_func_t rgb_32_to_yuvj_444_p; gavl_video_func_t bgr_32_to_yuy2; gavl_video_func_t bgr_32_to_yuva_32; gavl_video_func_t bgr_32_to_yuva_64; gavl_video_func_t bgr_32_to_yuva_float; gavl_video_func_t bgr_32_to_yuv_float; gavl_video_func_t bgr_32_to_uyvy; gavl_video_func_t bgr_32_to_yuv_420_p; gavl_video_func_t bgr_32_to_yuv_410_p; gavl_video_func_t bgr_32_to_yuv_422_p; gavl_video_func_t bgr_32_to_yuv_422_p_16; gavl_video_func_t bgr_32_to_yuv_411_p; gavl_video_func_t bgr_32_to_yuv_444_p; gavl_video_func_t bgr_32_to_yuv_444_p_16; gavl_video_func_t bgr_32_to_yuvj_420_p; gavl_video_func_t bgr_32_to_yuvj_422_p; gavl_video_func_t bgr_32_to_yuvj_444_p; gavl_video_func_t rgba_32_to_yuy2; gavl_video_func_t rgba_32_to_yuva_32; gavl_video_func_t rgba_32_to_yuva_64; gavl_video_func_t rgba_32_to_yuva_float; gavl_video_func_t rgba_32_to_yuv_float; gavl_video_func_t rgba_32_to_uyvy; gavl_video_func_t rgba_32_to_yuv_420_p; gavl_video_func_t rgba_32_to_yuv_410_p; gavl_video_func_t rgba_32_to_yuv_422_p; gavl_video_func_t rgba_32_to_yuv_422_p_16; gavl_video_func_t rgba_32_to_yuv_411_p; gavl_video_func_t rgba_32_to_yuv_444_p; gavl_video_func_t rgba_32_to_yuv_444_p_16; gavl_video_func_t rgba_32_to_yuvj_420_p; gavl_video_func_t rgba_32_to_yuvj_422_p; gavl_video_func_t rgba_32_to_yuvj_444_p; gavl_video_func_t rgb_48_to_yuy2; gavl_video_func_t rgb_48_to_yuva_32; gavl_video_func_t rgb_48_to_yuva_64; gavl_video_func_t rgb_48_to_yuva_float; gavl_video_func_t rgb_48_to_yuv_float; gavl_video_func_t rgb_48_to_uyvy; gavl_video_func_t rgb_48_to_yuv_420_p; gavl_video_func_t rgb_48_to_yuv_410_p; gavl_video_func_t rgb_48_to_yuv_422_p; gavl_video_func_t rgb_48_to_yuv_422_p_16; gavl_video_func_t rgb_48_to_yuv_411_p; gavl_video_func_t rgb_48_to_yuv_444_p; gavl_video_func_t rgb_48_to_yuv_444_p_16; gavl_video_func_t rgb_48_to_yuvj_420_p; gavl_video_func_t rgb_48_to_yuvj_422_p; gavl_video_func_t rgb_48_to_yuvj_444_p; gavl_video_func_t rgba_64_to_yuy2; gavl_video_func_t rgba_64_to_yuva_32; gavl_video_func_t rgba_64_to_yuva_64; gavl_video_func_t rgba_64_to_yuva_float; gavl_video_func_t rgba_64_to_yuv_float; gavl_video_func_t rgba_64_to_uyvy; gavl_video_func_t rgba_64_to_yuv_420_p; gavl_video_func_t rgba_64_to_yuv_410_p; gavl_video_func_t rgba_64_to_yuv_422_p; gavl_video_func_t rgba_64_to_yuv_422_p_16; gavl_video_func_t rgba_64_to_yuv_411_p; gavl_video_func_t rgba_64_to_yuv_444_p; gavl_video_func_t rgba_64_to_yuv_444_p_16; gavl_video_func_t rgba_64_to_yuvj_420_p; gavl_video_func_t rgba_64_to_yuvj_422_p; gavl_video_func_t rgba_64_to_yuvj_444_p; gavl_video_func_t rgb_float_to_yuy2; gavl_video_func_t rgb_float_to_yuva_32; gavl_video_func_t rgb_float_to_yuva_64; gavl_video_func_t rgb_float_to_yuva_float; gavl_video_func_t rgb_float_to_yuv_float; gavl_video_func_t rgb_float_to_uyvy; gavl_video_func_t rgb_float_to_yuv_420_p; gavl_video_func_t rgb_float_to_yuv_410_p; gavl_video_func_t rgb_float_to_yuv_422_p; gavl_video_func_t rgb_float_to_yuv_422_p_16; gavl_video_func_t rgb_float_to_yuv_411_p; gavl_video_func_t rgb_float_to_yuv_444_p; gavl_video_func_t rgb_float_to_yuv_444_p_16; gavl_video_func_t rgb_float_to_yuvj_420_p; gavl_video_func_t rgb_float_to_yuvj_422_p; gavl_video_func_t rgb_float_to_yuvj_444_p; gavl_video_func_t rgba_float_to_yuy2; gavl_video_func_t rgba_float_to_yuva_32; gavl_video_func_t rgba_float_to_yuva_64; gavl_video_func_t rgba_float_to_yuva_float; gavl_video_func_t rgba_float_to_yuv_float; gavl_video_func_t rgba_float_to_uyvy; gavl_video_func_t rgba_float_to_yuv_420_p; gavl_video_func_t rgba_float_to_yuv_410_p; gavl_video_func_t rgba_float_to_yuv_422_p; gavl_video_func_t rgba_float_to_yuv_422_p_16; gavl_video_func_t rgba_float_to_yuv_411_p; gavl_video_func_t rgba_float_to_yuv_444_p; gavl_video_func_t rgba_float_to_yuv_444_p_16; gavl_video_func_t rgba_float_to_yuvj_420_p; gavl_video_func_t rgba_float_to_yuvj_422_p; gavl_video_func_t rgba_float_to_yuvj_444_p; /* Gray -> YUV */ gavl_video_func_t gray_8_to_yuy2; gavl_video_func_t gray_8_to_yuva_32; gavl_video_func_t gray_8_to_yuva_64; gavl_video_func_t gray_8_to_yuva_float; gavl_video_func_t gray_8_to_yuv_float; gavl_video_func_t gray_8_to_uyvy; gavl_video_func_t gray_8_to_y_8; gavl_video_func_t gray_8_to_yj_8; gavl_video_func_t gray_8_to_y_16; gavl_video_func_t gray_8_to_y_float; gavl_video_func_t gray_16_to_yuy2; gavl_video_func_t gray_16_to_yuva_32; gavl_video_func_t gray_16_to_yuva_64; gavl_video_func_t gray_16_to_yuva_float; gavl_video_func_t gray_16_to_yuv_float; gavl_video_func_t gray_16_to_uyvy; gavl_video_func_t gray_16_to_y_8; gavl_video_func_t gray_16_to_yj_8; gavl_video_func_t gray_16_to_y_16; gavl_video_func_t gray_16_to_y_float; gavl_video_func_t gray_float_to_yuy2; gavl_video_func_t gray_float_to_yuva_32; gavl_video_func_t gray_float_to_yuva_64; gavl_video_func_t gray_float_to_yuva_float; gavl_video_func_t gray_float_to_yuv_float; gavl_video_func_t gray_float_to_uyvy; gavl_video_func_t gray_float_to_y_8; gavl_video_func_t gray_float_to_yj_8; gavl_video_func_t gray_float_to_y_16; gavl_video_func_t gray_float_to_y_float; /* Gray alpha -> YUV */ gavl_video_func_t graya_16_to_yuy2; gavl_video_func_t graya_16_to_yuva_32; gavl_video_func_t graya_16_to_yuva_64; gavl_video_func_t graya_16_to_yuva_float; gavl_video_func_t graya_16_to_yuv_float; gavl_video_func_t graya_16_to_uyvy; gavl_video_func_t graya_16_to_y_8; gavl_video_func_t graya_16_to_yj_8; gavl_video_func_t graya_16_to_y_16; gavl_video_func_t graya_16_to_y_float; gavl_video_func_t graya_32_to_yuy2; gavl_video_func_t graya_32_to_yuva_32; gavl_video_func_t graya_32_to_yuva_64; gavl_video_func_t graya_32_to_yuva_float; gavl_video_func_t graya_32_to_yuv_float; gavl_video_func_t graya_32_to_uyvy; gavl_video_func_t graya_32_to_y_8; gavl_video_func_t graya_32_to_yj_8; gavl_video_func_t graya_32_to_y_16; gavl_video_func_t graya_32_to_y_float; gavl_video_func_t graya_float_to_yuy2; gavl_video_func_t graya_float_to_yuva_32; gavl_video_func_t graya_float_to_yuva_64; gavl_video_func_t graya_float_to_yuva_float; gavl_video_func_t graya_float_to_yuv_float; gavl_video_func_t graya_float_to_uyvy; gavl_video_func_t graya_float_to_y_8; gavl_video_func_t graya_float_to_yj_8; gavl_video_func_t graya_float_to_y_16; gavl_video_func_t graya_float_to_y_float; /* YUV -> Gray */ gavl_video_func_t yuy2_to_gray_8; gavl_video_func_t uyvy_to_gray_8; gavl_video_func_t yuva_32_to_gray_8; gavl_video_func_t yuva_64_to_gray_8; gavl_video_func_t yuva_float_to_gray_8; gavl_video_func_t yuv_float_to_gray_8; gavl_video_func_t y_8_to_gray_8; gavl_video_func_t yj_8_to_gray_8; gavl_video_func_t y_16_to_gray_8; gavl_video_func_t yuy2_to_gray_16; gavl_video_func_t yuva_32_to_gray_16; gavl_video_func_t yuva_64_to_gray_16; gavl_video_func_t yuva_float_to_gray_16; gavl_video_func_t yuv_float_to_gray_16; gavl_video_func_t uyvy_to_gray_16; gavl_video_func_t y_8_to_gray_16; gavl_video_func_t yj_8_to_gray_16; gavl_video_func_t y_16_to_gray_16; gavl_video_func_t yuy2_to_gray_float; gavl_video_func_t yuva_32_to_gray_float; gavl_video_func_t yuva_64_to_gray_float; gavl_video_func_t yuva_float_to_gray_float; gavl_video_func_t yuv_float_to_gray_float; gavl_video_func_t uyvy_to_gray_float; gavl_video_func_t y_8_to_gray_float; gavl_video_func_t yj_8_to_gray_float; gavl_video_func_t y_16_to_gray_float; /* YUV -> Gray alpha */ gavl_video_func_t yuy2_to_graya_16; gavl_video_func_t uyvy_to_graya_16; gavl_video_func_t yuva_32_to_graya_16; gavl_video_func_t yuva_64_to_graya_16; gavl_video_func_t yuva_float_to_graya_16; gavl_video_func_t yuv_float_to_graya_16; gavl_video_func_t y_8_to_graya_16; gavl_video_func_t yj_8_to_graya_16; gavl_video_func_t y_16_to_graya_16; gavl_video_func_t y_float_to_graya_16; gavl_video_func_t yuy2_to_graya_32; gavl_video_func_t yuva_32_to_graya_32; gavl_video_func_t yuva_64_to_graya_32; gavl_video_func_t yuva_float_to_graya_32; gavl_video_func_t yuv_float_to_graya_32; gavl_video_func_t uyvy_to_graya_32; gavl_video_func_t y_8_to_graya_32; gavl_video_func_t yj_8_to_graya_32; gavl_video_func_t y_16_to_graya_32; gavl_video_func_t y_float_to_graya_32; gavl_video_func_t yuy2_to_graya_float; gavl_video_func_t yuva_32_to_graya_float; gavl_video_func_t yuva_64_to_graya_float; gavl_video_func_t yuva_float_to_graya_float; gavl_video_func_t yuv_float_to_graya_float; gavl_video_func_t uyvy_to_graya_float; gavl_video_func_t y_8_to_graya_float; gavl_video_func_t yj_8_to_graya_float; gavl_video_func_t y_16_to_graya_float; gavl_video_func_t y_float_to_graya_float; /* YUV -> RGB */ gavl_video_func_t yuy2_to_rgb_15; gavl_video_func_t yuy2_to_bgr_15; gavl_video_func_t yuy2_to_rgb_16; gavl_video_func_t yuy2_to_bgr_16; gavl_video_func_t yuy2_to_rgb_24; gavl_video_func_t yuy2_to_bgr_24; gavl_video_func_t yuy2_to_rgb_32; gavl_video_func_t yuy2_to_bgr_32; gavl_video_func_t yuy2_to_rgba_32; gavl_video_func_t yuy2_to_rgb_48; gavl_video_func_t yuy2_to_rgba_64; gavl_video_func_t yuy2_to_rgb_float; gavl_video_func_t yuy2_to_rgba_float; gavl_video_func_t yuva_32_to_rgb_15; gavl_video_func_t yuva_32_to_bgr_15; gavl_video_func_t yuva_32_to_rgb_16; gavl_video_func_t yuva_32_to_bgr_16; gavl_video_func_t yuva_32_to_rgb_24; gavl_video_func_t yuva_32_to_bgr_24; gavl_video_func_t yuva_32_to_rgb_32; gavl_video_func_t yuva_32_to_bgr_32; gavl_video_func_t yuva_32_to_rgba_32; gavl_video_func_t yuva_32_to_rgb_48; gavl_video_func_t yuva_32_to_rgba_64; gavl_video_func_t yuva_32_to_rgb_float; gavl_video_func_t yuva_32_to_rgba_float; gavl_video_func_t yuva_64_to_rgb_15; gavl_video_func_t yuva_64_to_bgr_15; gavl_video_func_t yuva_64_to_rgb_16; gavl_video_func_t yuva_64_to_bgr_16; gavl_video_func_t yuva_64_to_rgb_24; gavl_video_func_t yuva_64_to_bgr_24; gavl_video_func_t yuva_64_to_rgb_32; gavl_video_func_t yuva_64_to_bgr_32; gavl_video_func_t yuva_64_to_rgba_32; gavl_video_func_t yuva_64_to_rgb_48; gavl_video_func_t yuva_64_to_rgba_64; gavl_video_func_t yuva_64_to_rgb_float; gavl_video_func_t yuva_64_to_rgba_float; gavl_video_func_t yuva_float_to_rgb_15; gavl_video_func_t yuva_float_to_bgr_15; gavl_video_func_t yuva_float_to_rgb_16; gavl_video_func_t yuva_float_to_bgr_16; gavl_video_func_t yuva_float_to_rgb_24; gavl_video_func_t yuva_float_to_bgr_24; gavl_video_func_t yuva_float_to_rgb_32; gavl_video_func_t yuva_float_to_bgr_32; gavl_video_func_t yuva_float_to_rgba_32; gavl_video_func_t yuva_float_to_rgb_48; gavl_video_func_t yuva_float_to_rgba_64; gavl_video_func_t yuva_float_to_rgb_float; gavl_video_func_t yuva_float_to_rgba_float; gavl_video_func_t yuv_float_to_rgb_15; gavl_video_func_t yuv_float_to_bgr_15; gavl_video_func_t yuv_float_to_rgb_16; gavl_video_func_t yuv_float_to_bgr_16; gavl_video_func_t yuv_float_to_rgb_24; gavl_video_func_t yuv_float_to_bgr_24; gavl_video_func_t yuv_float_to_rgb_32; gavl_video_func_t yuv_float_to_bgr_32; gavl_video_func_t yuv_float_to_rgba_32; gavl_video_func_t yuv_float_to_rgb_48; gavl_video_func_t yuv_float_to_rgba_64; gavl_video_func_t yuv_float_to_rgb_float; gavl_video_func_t yuv_float_to_rgba_float; gavl_video_func_t uyvy_to_rgb_15; gavl_video_func_t uyvy_to_bgr_15; gavl_video_func_t uyvy_to_rgb_16; gavl_video_func_t uyvy_to_bgr_16; gavl_video_func_t uyvy_to_rgb_24; gavl_video_func_t uyvy_to_bgr_24; gavl_video_func_t uyvy_to_rgb_32; gavl_video_func_t uyvy_to_bgr_32; gavl_video_func_t uyvy_to_rgba_32; gavl_video_func_t uyvy_to_rgb_48; gavl_video_func_t uyvy_to_rgba_64; gavl_video_func_t uyvy_to_rgb_float; gavl_video_func_t uyvy_to_rgba_float; gavl_video_func_t yuv_420_p_to_rgb_15; gavl_video_func_t yuv_420_p_to_bgr_15; gavl_video_func_t yuv_420_p_to_rgb_16; gavl_video_func_t yuv_420_p_to_bgr_16; gavl_video_func_t yuv_420_p_to_rgb_24; gavl_video_func_t yuv_420_p_to_bgr_24; gavl_video_func_t yuv_420_p_to_rgb_32; gavl_video_func_t yuv_420_p_to_bgr_32; gavl_video_func_t yuv_420_p_to_rgba_32; gavl_video_func_t yuv_420_p_to_rgb_48; gavl_video_func_t yuv_420_p_to_rgba_64; gavl_video_func_t yuv_420_p_to_rgb_float; gavl_video_func_t yuv_420_p_to_rgba_float; gavl_video_func_t yuv_410_p_to_rgb_15; gavl_video_func_t yuv_410_p_to_bgr_15; gavl_video_func_t yuv_410_p_to_rgb_16; gavl_video_func_t yuv_410_p_to_bgr_16; gavl_video_func_t yuv_410_p_to_rgb_24; gavl_video_func_t yuv_410_p_to_bgr_24; gavl_video_func_t yuv_410_p_to_rgb_32; gavl_video_func_t yuv_410_p_to_bgr_32; gavl_video_func_t yuv_410_p_to_rgba_32; gavl_video_func_t yuv_410_p_to_rgb_48; gavl_video_func_t yuv_410_p_to_rgba_64; gavl_video_func_t yuv_410_p_to_rgb_float; gavl_video_func_t yuv_410_p_to_rgba_float; gavl_video_func_t yuvj_420_p_to_rgb_15; gavl_video_func_t yuvj_420_p_to_bgr_15; gavl_video_func_t yuvj_420_p_to_rgb_16; gavl_video_func_t yuvj_420_p_to_bgr_16; gavl_video_func_t yuvj_420_p_to_rgb_24; gavl_video_func_t yuvj_420_p_to_bgr_24; gavl_video_func_t yuvj_420_p_to_rgb_32; gavl_video_func_t yuvj_420_p_to_bgr_32; gavl_video_func_t yuvj_420_p_to_rgba_32; gavl_video_func_t yuvj_420_p_to_rgb_48; gavl_video_func_t yuvj_420_p_to_rgba_64; gavl_video_func_t yuvj_420_p_to_rgb_float; gavl_video_func_t yuvj_420_p_to_rgba_float; gavl_video_func_t yuv_422_p_to_rgb_15; gavl_video_func_t yuv_422_p_to_bgr_15; gavl_video_func_t yuv_422_p_to_rgb_16; gavl_video_func_t yuv_422_p_to_bgr_16; gavl_video_func_t yuv_422_p_to_rgb_24; gavl_video_func_t yuv_422_p_to_bgr_24; gavl_video_func_t yuv_422_p_to_rgb_32; gavl_video_func_t yuv_422_p_to_bgr_32; gavl_video_func_t yuv_422_p_to_rgba_32; gavl_video_func_t yuv_422_p_to_rgb_48; gavl_video_func_t yuv_422_p_to_rgba_64; gavl_video_func_t yuv_422_p_to_rgb_float; gavl_video_func_t yuv_422_p_to_rgba_float; gavl_video_func_t yuv_422_p_16_to_rgb_15; gavl_video_func_t yuv_422_p_16_to_bgr_15; gavl_video_func_t yuv_422_p_16_to_rgb_16; gavl_video_func_t yuv_422_p_16_to_bgr_16; gavl_video_func_t yuv_422_p_16_to_rgb_24; gavl_video_func_t yuv_422_p_16_to_bgr_24; gavl_video_func_t yuv_422_p_16_to_rgb_32; gavl_video_func_t yuv_422_p_16_to_bgr_32; gavl_video_func_t yuv_422_p_16_to_rgba_32; gavl_video_func_t yuv_422_p_16_to_rgb_48; gavl_video_func_t yuv_422_p_16_to_rgba_64; gavl_video_func_t yuv_422_p_16_to_rgb_float; gavl_video_func_t yuv_422_p_16_to_rgba_float; gavl_video_func_t yuv_411_p_to_rgb_15; gavl_video_func_t yuv_411_p_to_bgr_15; gavl_video_func_t yuv_411_p_to_rgb_16; gavl_video_func_t yuv_411_p_to_bgr_16; gavl_video_func_t yuv_411_p_to_rgb_24; gavl_video_func_t yuv_411_p_to_bgr_24; gavl_video_func_t yuv_411_p_to_rgb_32; gavl_video_func_t yuv_411_p_to_bgr_32; gavl_video_func_t yuv_411_p_to_rgba_32; gavl_video_func_t yuv_411_p_to_rgb_48; gavl_video_func_t yuv_411_p_to_rgba_64; gavl_video_func_t yuv_411_p_to_rgb_float; gavl_video_func_t yuv_411_p_to_rgba_float; gavl_video_func_t yuvj_422_p_to_rgb_15; gavl_video_func_t yuvj_422_p_to_bgr_15; gavl_video_func_t yuvj_422_p_to_rgb_16; gavl_video_func_t yuvj_422_p_to_bgr_16; gavl_video_func_t yuvj_422_p_to_rgb_24; gavl_video_func_t yuvj_422_p_to_bgr_24; gavl_video_func_t yuvj_422_p_to_rgb_32; gavl_video_func_t yuvj_422_p_to_bgr_32; gavl_video_func_t yuvj_422_p_to_rgba_32; gavl_video_func_t yuvj_422_p_to_rgb_48; gavl_video_func_t yuvj_422_p_to_rgba_64; gavl_video_func_t yuvj_422_p_to_rgb_float; gavl_video_func_t yuvj_422_p_to_rgba_float; gavl_video_func_t yuv_444_p_to_rgb_15; gavl_video_func_t yuv_444_p_to_bgr_15; gavl_video_func_t yuv_444_p_to_rgb_16; gavl_video_func_t yuv_444_p_to_bgr_16; gavl_video_func_t yuv_444_p_to_rgb_24; gavl_video_func_t yuv_444_p_to_bgr_24; gavl_video_func_t yuv_444_p_to_rgb_32; gavl_video_func_t yuv_444_p_to_bgr_32; gavl_video_func_t yuv_444_p_to_rgba_32; gavl_video_func_t yuv_444_p_to_rgb_48; gavl_video_func_t yuv_444_p_to_rgba_64; gavl_video_func_t yuv_444_p_to_rgb_float; gavl_video_func_t yuv_444_p_to_rgba_float; gavl_video_func_t yuv_444_p_16_to_rgb_15; gavl_video_func_t yuv_444_p_16_to_bgr_15; gavl_video_func_t yuv_444_p_16_to_rgb_16; gavl_video_func_t yuv_444_p_16_to_bgr_16; gavl_video_func_t yuv_444_p_16_to_rgb_24; gavl_video_func_t yuv_444_p_16_to_bgr_24; gavl_video_func_t yuv_444_p_16_to_rgb_32; gavl_video_func_t yuv_444_p_16_to_bgr_32; gavl_video_func_t yuv_444_p_16_to_rgba_32; gavl_video_func_t yuv_444_p_16_to_rgb_48; gavl_video_func_t yuv_444_p_16_to_rgba_64; gavl_video_func_t yuv_444_p_16_to_rgb_float; gavl_video_func_t yuv_444_p_16_to_rgba_float; gavl_video_func_t yuvj_444_p_to_rgb_15; gavl_video_func_t yuvj_444_p_to_bgr_15; gavl_video_func_t yuvj_444_p_to_rgb_16; gavl_video_func_t yuvj_444_p_to_bgr_16; gavl_video_func_t yuvj_444_p_to_rgb_24; gavl_video_func_t yuvj_444_p_to_bgr_24; gavl_video_func_t yuvj_444_p_to_rgb_32; gavl_video_func_t yuvj_444_p_to_bgr_32; gavl_video_func_t yuvj_444_p_to_rgba_32; gavl_video_func_t yuvj_444_p_to_rgb_48; gavl_video_func_t yuvj_444_p_to_rgba_64; gavl_video_func_t yuvj_444_p_to_rgb_float; gavl_video_func_t yuvj_444_p_to_rgba_float; /* Conversions among YUV formats */ gavl_video_func_t yuy2_to_yuv_420_p; gavl_video_func_t yuy2_to_yuv_410_p; gavl_video_func_t yuy2_to_yuv_422_p; gavl_video_func_t yuy2_to_yuv_422_p_16; gavl_video_func_t yuy2_to_yuv_411_p; gavl_video_func_t yuy2_to_yuv_444_p; gavl_video_func_t yuy2_to_yuv_444_p_16; gavl_video_func_t yuy2_to_yuvj_420_p; gavl_video_func_t yuy2_to_yuvj_422_p; gavl_video_func_t yuy2_to_yuvj_444_p; gavl_video_func_t yuy2_to_yuva_32; gavl_video_func_t yuy2_to_yuva_64; gavl_video_func_t yuy2_to_yuva_float; gavl_video_func_t yuy2_to_yuv_float; gavl_video_func_t uyvy_to_yuy2; gavl_video_func_t uyvy_to_yuva_32; gavl_video_func_t uyvy_to_yuva_64; gavl_video_func_t uyvy_to_yuva_float; gavl_video_func_t uyvy_to_yuv_float; gavl_video_func_t uyvy_to_yuv_420_p; gavl_video_func_t uyvy_to_yuv_410_p; gavl_video_func_t uyvy_to_yuv_422_p; gavl_video_func_t uyvy_to_yuv_422_p_16; gavl_video_func_t uyvy_to_yuv_411_p; gavl_video_func_t uyvy_to_yuv_444_p; gavl_video_func_t uyvy_to_yuv_444_p_16; gavl_video_func_t uyvy_to_yuvj_420_p; gavl_video_func_t uyvy_to_yuvj_422_p; gavl_video_func_t uyvy_to_yuvj_444_p; gavl_video_func_t yuv_420_p_to_yuv_422_p; gavl_video_func_t yuv_420_p_to_yuv_422_p_16; gavl_video_func_t yuv_420_p_to_yuv_411_p; gavl_video_func_t yuv_420_p_to_yuv_444_p; gavl_video_func_t yuv_420_p_to_yuv_444_p_16; gavl_video_func_t yuv_420_p_to_yuv_410_p; gavl_video_func_t yuv_420_p_to_yuvj_420_p; gavl_video_func_t yuv_420_p_to_yuvj_422_p; gavl_video_func_t yuv_420_p_to_yuvj_444_p; gavl_video_func_t yuv_420_p_to_yuy2; gavl_video_func_t yuv_420_p_to_yuva_32; gavl_video_func_t yuv_420_p_to_yuva_64; gavl_video_func_t yuv_420_p_to_yuva_float; gavl_video_func_t yuv_420_p_to_yuv_float; gavl_video_func_t yuv_420_p_to_uyvy; gavl_video_func_t yuv_410_p_to_yuv_420_p; gavl_video_func_t yuv_410_p_to_yuv_422_p; gavl_video_func_t yuv_410_p_to_yuv_422_p_16; gavl_video_func_t yuv_410_p_to_yuv_411_p; gavl_video_func_t yuv_410_p_to_yuv_444_p; gavl_video_func_t yuv_410_p_to_yuv_444_p_16; gavl_video_func_t yuv_410_p_to_yuvj_420_p; gavl_video_func_t yuv_410_p_to_yuvj_422_p; gavl_video_func_t yuv_410_p_to_yuvj_444_p; gavl_video_func_t yuv_410_p_to_yuy2; gavl_video_func_t yuv_410_p_to_yuva_32; gavl_video_func_t yuv_410_p_to_yuva_64; gavl_video_func_t yuv_410_p_to_yuva_float; gavl_video_func_t yuv_410_p_to_yuv_float; gavl_video_func_t yuv_410_p_to_uyvy; gavl_video_func_t yuv_422_p_to_yuv_420_p; gavl_video_func_t yuv_422_p_to_yuv_410_p; gavl_video_func_t yuv_422_p_to_yuv_411_p; gavl_video_func_t yuv_422_p_to_yuv_444_p; gavl_video_func_t yuv_422_p_to_yuv_444_p_16; gavl_video_func_t yuv_422_p_to_yuv_422_p_16; gavl_video_func_t yuv_422_p_to_yuvj_420_p; gavl_video_func_t yuv_422_p_to_yuvj_422_p; gavl_video_func_t yuv_422_p_to_yuvj_444_p; gavl_video_func_t yuv_422_p_to_yuy2; gavl_video_func_t yuv_422_p_to_yuva_32; gavl_video_func_t yuv_422_p_to_yuva_64; gavl_video_func_t yuv_422_p_to_yuva_float; gavl_video_func_t yuv_422_p_to_yuv_float; gavl_video_func_t yuv_422_p_to_uyvy; gavl_video_func_t yuv_422_p_16_to_yuv_420_p; gavl_video_func_t yuv_422_p_16_to_yuv_410_p; gavl_video_func_t yuv_422_p_16_to_yuv_411_p; gavl_video_func_t yuv_422_p_16_to_yuv_444_p; gavl_video_func_t yuv_422_p_16_to_yuv_422_p; gavl_video_func_t yuv_422_p_16_to_yuv_444_p_16; gavl_video_func_t yuv_422_p_16_to_yuvj_420_p; gavl_video_func_t yuv_422_p_16_to_yuvj_422_p; gavl_video_func_t yuv_422_p_16_to_yuvj_444_p; gavl_video_func_t yuv_422_p_16_to_yuy2; gavl_video_func_t yuv_422_p_16_to_yuva_32; gavl_video_func_t yuv_422_p_16_to_yuva_64; gavl_video_func_t yuv_422_p_16_to_yuva_float; gavl_video_func_t yuv_422_p_16_to_yuv_float; gavl_video_func_t yuv_422_p_16_to_uyvy; gavl_video_func_t yuv_411_p_to_yuv_420_p; gavl_video_func_t yuv_411_p_to_yuv_410_p; gavl_video_func_t yuv_411_p_to_yuv_444_p; gavl_video_func_t yuv_411_p_to_yuv_444_p_16; gavl_video_func_t yuv_411_p_to_yuv_422_p; gavl_video_func_t yuv_411_p_to_yuv_422_p_16; gavl_video_func_t yuv_411_p_to_yuvj_420_p; gavl_video_func_t yuv_411_p_to_yuvj_422_p; gavl_video_func_t yuv_411_p_to_yuvj_444_p; gavl_video_func_t yuv_411_p_to_yuy2; gavl_video_func_t yuv_411_p_to_yuva_32; gavl_video_func_t yuv_411_p_to_yuva_64; gavl_video_func_t yuv_411_p_to_yuva_float; gavl_video_func_t yuv_411_p_to_yuv_float; gavl_video_func_t yuv_411_p_to_uyvy; gavl_video_func_t yuv_444_p_to_yuv_420_p; gavl_video_func_t yuv_444_p_to_yuv_410_p; gavl_video_func_t yuv_444_p_to_yuv_422_p; gavl_video_func_t yuv_444_p_to_yuv_422_p_16; gavl_video_func_t yuv_444_p_to_yuv_444_p_16; gavl_video_func_t yuv_444_p_to_yuv_411_p; gavl_video_func_t yuv_444_p_to_yuvj_420_p; gavl_video_func_t yuv_444_p_to_yuvj_422_p; gavl_video_func_t yuv_444_p_to_yuvj_444_p; gavl_video_func_t yuv_444_p_to_yuy2; gavl_video_func_t yuv_444_p_to_yuva_32; gavl_video_func_t yuv_444_p_to_yuva_64; gavl_video_func_t yuv_444_p_to_yuva_float; gavl_video_func_t yuv_444_p_to_yuv_float; gavl_video_func_t yuv_444_p_to_uyvy; gavl_video_func_t yuv_444_p_16_to_yuv_420_p; gavl_video_func_t yuv_444_p_16_to_yuv_410_p; gavl_video_func_t yuv_444_p_16_to_yuv_422_p; gavl_video_func_t yuv_444_p_16_to_yuv_422_p_16; gavl_video_func_t yuv_444_p_16_to_yuv_444_p; gavl_video_func_t yuv_444_p_16_to_yuv_411_p; gavl_video_func_t yuv_444_p_16_to_yuvj_420_p; gavl_video_func_t yuv_444_p_16_to_yuvj_422_p; gavl_video_func_t yuv_444_p_16_to_yuvj_444_p; gavl_video_func_t yuv_444_p_16_to_yuy2; gavl_video_func_t yuv_444_p_16_to_yuva_32; gavl_video_func_t yuv_444_p_16_to_yuva_64; gavl_video_func_t yuv_444_p_16_to_yuva_float; gavl_video_func_t yuv_444_p_16_to_yuv_float; gavl_video_func_t yuv_444_p_16_to_uyvy; gavl_video_func_t yuvj_420_p_to_yuv_420_p; gavl_video_func_t yuvj_420_p_to_yuv_410_p; gavl_video_func_t yuvj_420_p_to_yuv_422_p; gavl_video_func_t yuvj_420_p_to_yuv_422_p_16; gavl_video_func_t yuvj_420_p_to_yuv_411_p; gavl_video_func_t yuvj_420_p_to_yuv_444_p; gavl_video_func_t yuvj_420_p_to_yuv_444_p_16; gavl_video_func_t yuvj_420_p_to_yuy2; gavl_video_func_t yuvj_420_p_to_yuva_32; gavl_video_func_t yuvj_420_p_to_yuva_64; gavl_video_func_t yuvj_420_p_to_yuva_float; gavl_video_func_t yuvj_420_p_to_yuv_float; gavl_video_func_t yuvj_420_p_to_uyvy; gavl_video_func_t yuvj_422_p_to_yuv_420_p; gavl_video_func_t yuvj_422_p_to_yuv_410_p; gavl_video_func_t yuvj_422_p_to_yuv_422_p; gavl_video_func_t yuvj_422_p_to_yuv_422_p_16; gavl_video_func_t yuvj_422_p_to_yuv_411_p; gavl_video_func_t yuvj_422_p_to_yuv_444_p; gavl_video_func_t yuvj_422_p_to_yuv_444_p_16; gavl_video_func_t yuvj_422_p_to_yuy2; gavl_video_func_t yuvj_422_p_to_yuva_32; gavl_video_func_t yuvj_422_p_to_yuva_64; gavl_video_func_t yuvj_422_p_to_yuva_float; gavl_video_func_t yuvj_422_p_to_yuv_float; gavl_video_func_t yuvj_422_p_to_uyvy; gavl_video_func_t yuvj_444_p_to_yuv_420_p; gavl_video_func_t yuvj_444_p_to_yuv_410_p; gavl_video_func_t yuvj_444_p_to_yuv_422_p; gavl_video_func_t yuvj_444_p_to_yuv_422_p_16; gavl_video_func_t yuvj_444_p_to_yuv_411_p; gavl_video_func_t yuvj_444_p_to_yuv_444_p; gavl_video_func_t yuvj_444_p_to_yuv_444_p_16; gavl_video_func_t yuvj_444_p_to_yuy2; gavl_video_func_t yuvj_444_p_to_yuva_32; gavl_video_func_t yuvj_444_p_to_yuva_64; gavl_video_func_t yuvj_444_p_to_yuva_float; gavl_video_func_t yuvj_444_p_to_yuv_float; gavl_video_func_t yuvj_444_p_to_uyvy; gavl_video_func_t yuva_32_to_yuy2; gavl_video_func_t yuva_32_to_uyvy; gavl_video_func_t yuva_32_to_yuva_32; gavl_video_func_t yuva_32_to_yuv_420_p; gavl_video_func_t yuva_32_to_yuv_410_p; gavl_video_func_t yuva_32_to_yuv_422_p; gavl_video_func_t yuva_32_to_yuv_422_p_16; gavl_video_func_t yuva_32_to_yuv_411_p; gavl_video_func_t yuva_32_to_yuv_444_p; gavl_video_func_t yuva_32_to_yuv_444_p_16; gavl_video_func_t yuva_32_to_yuvj_420_p; gavl_video_func_t yuva_32_to_yuvj_422_p; gavl_video_func_t yuva_32_to_yuvj_444_p; gavl_video_func_t yuva_32_to_yuva_64; gavl_video_func_t yuva_32_to_yuva_float; gavl_video_func_t yuva_32_to_yuv_float; gavl_video_func_t yuva_64_to_yuy2; gavl_video_func_t yuva_64_to_uyvy; gavl_video_func_t yuva_64_to_yuva_32; gavl_video_func_t yuva_64_to_yuv_420_p; gavl_video_func_t yuva_64_to_yuv_410_p; gavl_video_func_t yuva_64_to_yuv_422_p; gavl_video_func_t yuva_64_to_yuv_422_p_16; gavl_video_func_t yuva_64_to_yuv_411_p; gavl_video_func_t yuva_64_to_yuv_444_p; gavl_video_func_t yuva_64_to_yuv_444_p_16; gavl_video_func_t yuva_64_to_yuvj_420_p; gavl_video_func_t yuva_64_to_yuvj_422_p; gavl_video_func_t yuva_64_to_yuvj_444_p; gavl_video_func_t yuva_64_to_yuva_float; gavl_video_func_t yuva_64_to_yuv_float; gavl_video_func_t yuva_float_to_yuy2; gavl_video_func_t yuva_float_to_uyvy; gavl_video_func_t yuva_float_to_yuva_32; gavl_video_func_t yuva_float_to_yuv_420_p; gavl_video_func_t yuva_float_to_yuv_410_p; gavl_video_func_t yuva_float_to_yuv_422_p; gavl_video_func_t yuva_float_to_yuv_422_p_16; gavl_video_func_t yuva_float_to_yuv_411_p; gavl_video_func_t yuva_float_to_yuv_444_p; gavl_video_func_t yuva_float_to_yuv_444_p_16; gavl_video_func_t yuva_float_to_yuvj_420_p; gavl_video_func_t yuva_float_to_yuvj_422_p; gavl_video_func_t yuva_float_to_yuvj_444_p; gavl_video_func_t yuva_float_to_yuva_64; gavl_video_func_t yuva_float_to_yuv_float; gavl_video_func_t yuv_float_to_yuy2; gavl_video_func_t yuv_float_to_uyvy; gavl_video_func_t yuv_float_to_yuva_32; gavl_video_func_t yuv_float_to_yuv_420_p; gavl_video_func_t yuv_float_to_yuv_410_p; gavl_video_func_t yuv_float_to_yuv_422_p; gavl_video_func_t yuv_float_to_yuv_422_p_16; gavl_video_func_t yuv_float_to_yuv_411_p; gavl_video_func_t yuv_float_to_yuv_444_p; gavl_video_func_t yuv_float_to_yuv_444_p_16; gavl_video_func_t yuv_float_to_yuvj_420_p; gavl_video_func_t yuv_float_to_yuvj_422_p; gavl_video_func_t yuv_float_to_yuvj_444_p; gavl_video_func_t yuv_float_to_yuva_64; gavl_video_func_t yuv_float_to_yuva_float; /* Gray -> Gray */ gavl_video_func_t gray_8_to_16; gavl_video_func_t gray_16_to_8; gavl_video_func_t gray_float_to_16; gavl_video_func_t gray_16_to_float; gavl_video_func_t gray_float_to_8; gavl_video_func_t gray_8_to_float; gavl_video_func_t graya_16_to_32; gavl_video_func_t graya_32_to_16; gavl_video_func_t graya_float_to_32; gavl_video_func_t graya_32_to_float; gavl_video_func_t graya_float_to_16; gavl_video_func_t graya_16_to_float; gavl_video_func_t graya_16_to_gray_8; gavl_video_func_t gray_8_to_graya_16; gavl_video_func_t graya_16_to_gray_16; gavl_video_func_t gray_8_to_graya_32; gavl_video_func_t graya_16_to_gray_float; gavl_video_func_t gray_8_to_graya_float; gavl_video_func_t graya_32_to_gray_8; gavl_video_func_t gray_16_to_graya_16; gavl_video_func_t graya_32_to_gray_16; gavl_video_func_t gray_16_to_graya_32; gavl_video_func_t graya_32_to_gray_float; gavl_video_func_t gray_16_to_graya_float; gavl_video_func_t graya_float_to_gray_8; gavl_video_func_t gray_float_to_graya_16; gavl_video_func_t graya_float_to_gray_16; gavl_video_func_t gray_float_to_graya_32; gavl_video_func_t graya_float_to_gray_float; gavl_video_func_t gray_float_to_graya_float; } gavl_pixelformat_function_table_t; void gavl_init_rgb_rgb_funcs_c(gavl_pixelformat_function_table_t *, const gavl_video_options_t * opt); void gavl_init_rgb_yuv_funcs_c(gavl_pixelformat_function_table_t *, const gavl_video_options_t * opt); void gavl_init_yuv_yuv_funcs_c(gavl_pixelformat_function_table_t *, const gavl_video_options_t * opt); void gavl_init_yuv_rgb_funcs_c(gavl_pixelformat_function_table_t *, const gavl_video_options_t * opt); void gavl_init_rgb_gray_funcs_c(gavl_pixelformat_function_table_t *, const gavl_video_options_t * opt); void gavl_init_gray_rgb_funcs_c(gavl_pixelformat_function_table_t *, const gavl_video_options_t * opt); void gavl_init_yuv_gray_funcs_c(gavl_pixelformat_function_table_t *, const gavl_video_options_t * opt); void gavl_init_gray_yuv_funcs_c(gavl_pixelformat_function_table_t *, const gavl_video_options_t * opt); void gavl_init_gray_gray_funcs_c(gavl_pixelformat_function_table_t *, const gavl_video_options_t * opt); void gavl_init_rgb_rgb_funcs_hq(gavl_pixelformat_function_table_t *, const gavl_video_options_t * opt); void gavl_init_rgb_yuv_funcs_hq(gavl_pixelformat_function_table_t *, const gavl_video_options_t * opt); void gavl_init_yuv_yuv_funcs_hq(gavl_pixelformat_function_table_t *, const gavl_video_options_t * opt); void gavl_init_yuv_rgb_funcs_hq(gavl_pixelformat_function_table_t *, const gavl_video_options_t * opt); #ifdef HAVE_MMX void gavl_init_rgb_rgb_funcs_mmx(gavl_pixelformat_function_table_t *, int width, const gavl_video_options_t * opt); void gavl_init_rgb_yuv_funcs_mmx(gavl_pixelformat_function_table_t *, int width, const gavl_video_options_t * opt); void gavl_init_yuv_yuv_funcs_mmx(gavl_pixelformat_function_table_t *, int width, const gavl_video_options_t * opt); void gavl_init_yuv_rgb_funcs_mmx(gavl_pixelformat_function_table_t *, int width, const gavl_video_options_t * opt); void gavl_init_rgb_rgb_funcs_mmxext(gavl_pixelformat_function_table_t *, int width, const gavl_video_options_t * opt); void gavl_init_rgb_yuv_funcs_mmxext(gavl_pixelformat_function_table_t *, int width, const gavl_video_options_t * opt); void gavl_init_yuv_yuv_funcs_mmxext(gavl_pixelformat_function_table_t *, int width, const gavl_video_options_t * opt); void gavl_init_yuv_rgb_funcs_mmxext(gavl_pixelformat_function_table_t *, int width, const gavl_video_options_t * opt); #endif #ifdef HAVE_SSE3 void gavl_init_rgb_yuv_funcs_sse3(gavl_pixelformat_function_table_t *, const gavl_video_options_t * opt); #endif #endif // COLORSPACE_H_INCLUDED bplaum-gavl-b9385e3/include/countrycodes.h000066400000000000000000000023661513252040200206030ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #ifndef COUNTRYCODES_H_INCLUDED #define COUNTRYCODES_H_INCLUDED typedef struct { const char * label; const char * code_alpha_2; // ISO 3166-1 alpha-2 const char * code_alpha_3; // ISO 3166-1 alpha-3 int code_numeric; } gavl_country_t; extern const gavl_country_t gavl_countries[]; #endif // COUNTRYCODES_H_INCLUDED bplaum-gavl-b9385e3/include/deinterlace.h000066400000000000000000000072651513252040200203440ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #ifndef DEINTERLACE_H_INCLUDED #define DEINTERLACE_H_INCLUDED /* Private structures for the deinterlacer */ #include "config.h" typedef void (*gavl_video_deinterlace_func)(gavl_video_deinterlacer_t*, const gavl_video_frame_t*in, gavl_video_frame_t*out); typedef void (*gavl_video_deinterlace_blend_func)(const uint8_t * t, const uint8_t * m, const uint8_t * b, uint8_t * dst, int num); typedef struct { gavl_video_deinterlace_blend_func func_packed_15; gavl_video_deinterlace_blend_func func_packed_16; gavl_video_deinterlace_blend_func func_8; gavl_video_deinterlace_blend_func func_16; gavl_video_deinterlace_blend_func func_float; } gavl_video_deinterlace_blend_func_table_t; struct gavl_video_deinterlacer_s { gavl_video_options_t opt; gavl_video_format_t format; gavl_video_format_t half_height_format; gavl_video_deinterlace_func func; gavl_video_frame_t * src_field; gavl_video_frame_t * dst_field; gavl_video_scaler_t * scaler; gavl_video_deinterlace_blend_func blend_func; int num_planes; /* For blending, it's the number of components per line, for copying it's the number of bytes passed to gavl_memcpy */ int line_width; int sub_h; int sub_v; int mixed; }; /* Find conversion function */ int gavl_deinterlacer_init_scale(gavl_video_deinterlacer_t * d); int gavl_deinterlacer_init_blend(gavl_video_deinterlacer_t * d); int gavl_deinterlacer_init_copy(gavl_video_deinterlacer_t * d); void gavl_find_deinterlacer_blend_funcs_c(gavl_video_deinterlace_blend_func_table_t * tab, const gavl_video_options_t * opt, const gavl_video_format_t * format); #ifdef HAVE_MMX void gavl_find_deinterlacer_blend_funcs_mmx(gavl_video_deinterlace_blend_func_table_t * tab, const gavl_video_options_t * opt, const gavl_video_format_t * format); void gavl_find_deinterlacer_blend_funcs_mmxext(gavl_video_deinterlace_blend_func_table_t * tab, const gavl_video_options_t * opt, const gavl_video_format_t * format); #endif #ifdef HAVE_3DNOW void gavl_find_deinterlacer_blend_funcs_3dnow(gavl_video_deinterlace_blend_func_table_t * tab, const gavl_video_options_t * opt, const gavl_video_format_t * format); #endif #endif // DEINTERLACE_H_INCLUDED bplaum-gavl-b9385e3/include/dsp.h000066400000000000000000000027431513252040200166470ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #ifndef DSP_H_INCLUDED #define DSP_H_INCLUDED struct gavl_dsp_context_s { int quality; int accel_flags; gavl_dsp_funcs_t funcs; }; void gavl_dsp_init_c(gavl_dsp_funcs_t * funcs, int quality); #ifdef HAVE_MMX void gavl_dsp_init_mmx(gavl_dsp_funcs_t * funcs, int quality); void gavl_dsp_init_mmxext(gavl_dsp_funcs_t * funcs, int quality); #endif #ifdef HAVE_SSE void gavl_dsp_init_sse(gavl_dsp_funcs_t * funcs, int quality); #endif #endif // DSP_H_INCLUDED bplaum-gavl-b9385e3/include/float_cast.h000066400000000000000000000131421513252040200201730ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ /* This file was taken from libsamplerate, original copyright below */ #ifndef FLOAT_CAST_H_INCLUDED #define FLOAT_CAST_H_INCLUDED /* ** Copyright (C) 2001-2002 Erik de Castro Lopo ** ** This program 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; either version 2.1 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 Lesser General Public License for more details. ** ** You should have received a copy of the GNU Lesser General Public License ** along with this program; if not, write to the Free Software ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ /* Version 1.3 */ /*============================================================================ ** On Intel Pentium processors (especially PIII and probably P4), converting ** from float to int is very slow. To meet the C specs, the code produced by ** most C compilers targeting Pentium needs to change the FPU rounding mode ** before the float to int conversion is performed. ** ** Changing the FPU rounding mode causes the FPU pipeline to be flushed. It ** is this flushing of the pipeline which is so slow. ** ** Fortunately the ISO C99 specifications define the functions lrint, lrintf, ** llrint and llrintf which fix this problem as a side effect. ** ** On Unix-like systems, the configure process should have detected the ** presence of these functions. If they weren't found we have to replace them ** here with a standard C cast. */ /* ** The C99 prototypes for lrint and lrintf are as follows: ** ** long int lrintf (float x) ; ** long int lrint (double x) ; */ #include "config.h" /* ** The presence of the required functions are detected during the configure ** process and the values HAVE_LRINT and HAVE_LRINTF are set accordingly in ** the config.h file. */ #define HAVE_LRINT_REPLACEMENT 0 #if (HAVE_LRINT && HAVE_LRINTF) /* ** These defines enable functionality introduced with the 1999 ISO C ** standard. They must be defined before the inclusion of math.h to ** engage them. If optimisation is enabled, these functions will be ** inlined. With optimisation switched off, you have to link in the ** maths library using -lm. */ #define _ISOC9X_SOURCE 1 #define _ISOC99_SOURCE 1 #define __USE_ISOC9X 1 #define __USE_ISOC99 1 #include #elif (defined (WIN32) || defined (_WIN32)) #undef HAVE_LRINT_REPLACEMENT #define HAVE_LRINT_REPLACEMENT 1 #include /* ** Win32 doesn't seem to have these functions. ** Therefore implement inline versions of these functions here. */ __inline long int lrint (double flt) { int intgr; _asm { fld flt fistp intgr } ; return intgr ; } __inline long int lrintf (float flt) { int intgr; _asm { fld flt fistp intgr } ; return intgr ; } #elif (defined (__MWERKS__) && defined (macintosh)) /* This MacOS 9 solution was provided by Stephane Letz */ #undef HAVE_LRINT_REPLACEMENT #define HAVE_LRINT_REPLACEMENT 1 #include #undef lrint #undef lrintf #define lrint double2int #define lrintf float2int inline int float2int (register float in) { long res [2] ; asm { fctiw in,in stfd in,res } return res [1] ; } /* float2int */ inline int double2int (register double in) { long res [2] ; asm { fctiw in,in stfd in,res } return res [1] ; } /* double2int */ #elif (defined (__MACH__) && defined (__APPLE__)) /* For Apple MacOSX. */ #undef HAVE_LRINT_REPLACEMENT #define HAVE_LRINT_REPLACEMENT 1 #include #undef lrint #undef lrintf #define lrint double2int #define lrintf float2int inline static long int float2int (register float in) { int res [2] ; __asm__ __volatile__ ( "fctiw %1, %1\n\t" "stfd %1, %0" : "=m" (res) /* Output */ : "f" (in) /* Input */ : "memory" ) ; return res [1] ; } /* lrintf */ inline static long int double2int (register double in) { int res [2] ; __asm__ __volatile__ ( "fctiw %1, %1\n\t" "stfd %1, %0" : "=m" (res) /* Output */ : "f" (in) /* Input */ : "memory" ) ; return res [1] ; } /* lrint */ #else #ifndef __sgi #warning "Don't have the functions lrint() and lrintf()." #warning "Replacing these functions with a standard C cast." #endif #include #define lrint(dbl) ((int) (dbl)) #define lrintf(flt) ((int) (flt)) #endif #endif // FLOAT_CAST_H_INCLUDED bplaum-gavl-b9385e3/include/gavl/000077500000000000000000000000001513252040200166335ustar00rootroot00000000000000bplaum-gavl-b9385e3/include/gavl/Makefile.am000066400000000000000000000007151513252040200206720ustar00rootroot00000000000000pkginclude_HEADERS = \ buffer.h \ chapterlist.h \ compression.h \ connectors.h \ edl.h \ gavldefs.h \ gavldsp.h \ gavl.h \ gavlsocket.h \ gavltime.h \ http.h \ hw_dmabuf.h \ hw_egl.h \ hw_gl.h \ hw.h \ hw_shm.h \ hw_v4l2.h \ hw_vaapi.h \ io.h \ keycodes.h \ log.h \ metadata.h \ metatags.h \ msg.h \ numptr.h \ parameter.h \ packetindex.h \ peakdetector.h \ state.h \ threadpool.h \ timecode.h \ trackinfo.h \ utils.h \ value.h EXTRA_DIST = gavl_version.h.in bplaum-gavl-b9385e3/include/gavl/buffer.h000066400000000000000000000042151513252040200202570ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #ifndef GAVL_BUFFER_H_INCLUDED #define GAVL_BUFFER_H_INCLUDED /* Buffer */ typedef struct { uint8_t * buf; int len; int alloc; int alloc_static; int pos; } gavl_buffer_t; GAVL_PUBLIC void gavl_buffer_init(gavl_buffer_t * buf); GAVL_PUBLIC void gavl_buffer_init_static(gavl_buffer_t * buf, uint8_t * data, int size); GAVL_PUBLIC int gavl_buffer_alloc(gavl_buffer_t * buf, int size); GAVL_PUBLIC void gavl_buffer_free(gavl_buffer_t * buf); GAVL_PUBLIC void gavl_buffer_reset(gavl_buffer_t * buf); GAVL_PUBLIC void gavl_buffer_copy(gavl_buffer_t * dst, const gavl_buffer_t * src); GAVL_PUBLIC void gavl_buffer_append(gavl_buffer_t * dst, const gavl_buffer_t * src); GAVL_PUBLIC void gavl_buffer_append_pad(gavl_buffer_t * dst, const gavl_buffer_t * src, int padding); GAVL_PUBLIC void gavl_buffer_append_data(gavl_buffer_t * dst, const uint8_t * data, int len); GAVL_PUBLIC void gavl_buffer_append_data_pad(gavl_buffer_t * dst, const uint8_t * data, int len, int padding); GAVL_PUBLIC void gavl_buffer_prepend_data(gavl_buffer_t * dst, const uint8_t * data, int len); GAVL_PUBLIC void gavl_buffer_flush(gavl_buffer_t * buf, int len); #endif // GAVL_BUFFER_H_INCLUDED bplaum-gavl-b9385e3/include/gavl/chapterlist.h000066400000000000000000000100121513252040200213200ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #ifndef GAVL_CHAPTERLIST_H_INCLUDED #define GAVL_CHAPTERLIST_H_INCLUDED #ifdef __cplusplus extern "C" { #endif #include #include /** \defgroup chapterlist Chapter list * \brief Chapter list * * Chapters in gavl are simply * seekpoints with (optionally) associated names. * * Since 1.5.0 * * @{ */ /** \brief Chapter list * */ #if 0 typedef struct { uint32_t num_chapters; //!< Number of chapters uint32_t timescale; //!< Scale of the timestamps struct { int64_t time; //!< Start time (seekpoint) of this chapter char * name; //!< Name for this chapter (or NULL if unavailable) } * chapters; //!< Chapters } gavl_chapter_list_t; #else #define GAVL_CHAPTERLIST_CHAPTERLIST "chapterlist" #define GAVL_CHAPTERLIST_CHAPTERS "chap" #define GAVL_CHAPTERLIST_TIME "time" #define GAVL_CHAPTERLIST_TIMESCALE "timescale" typedef gavl_dictionary_t gavl_chapter_list_t; #endif /** \brief Insert a chapter into a chapter list * \param list A chapter list * \param index Position (starting with 0) where the new chapter will be placed * \param time Start time of the chapter * \param name Chapter name (or NULL) */ GAVL_PUBLIC gavl_dictionary_t * gavl_chapter_list_insert(gavl_chapter_list_t * list, int index, int64_t time, const char * name); /** \brief Delete a chapter from a chapter list * \param list A chapter list * \param index Position (starting with 0) of the chapter to delete */ GAVL_PUBLIC void gavl_chapter_list_delete(gavl_chapter_list_t * list, int index); /** \brief Get current chapter * \param list A chapter list * \param time Playback time * \returns The current chapter index * * Use this function after seeking to signal a * chapter change */ GAVL_PUBLIC int gavl_chapter_list_get_current(const gavl_chapter_list_t * list, gavl_time_t time); /* Check if the list is valid at all */ GAVL_PUBLIC int gavl_chapter_list_is_valid(const gavl_chapter_list_t * list); GAVL_PUBLIC void gavl_chapter_list_set_timescale(gavl_chapter_list_t * list, int timescale); GAVL_PUBLIC int gavl_chapter_list_get_timescale(const gavl_chapter_list_t * list); GAVL_PUBLIC int gavl_chapter_list_get_num(const gavl_chapter_list_t * list); GAVL_PUBLIC gavl_dictionary_t * gavl_chapter_list_get_nc(gavl_chapter_list_t * list, int idx); GAVL_PUBLIC const gavl_dictionary_t * gavl_chapter_list_get(const gavl_chapter_list_t * list, int idx); GAVL_PUBLIC int64_t gavl_chapter_list_get_time(const gavl_chapter_list_t * list, int idx); GAVL_PUBLIC const char * gavl_chapter_list_get_label(const gavl_chapter_list_t * list, int idx); GAVL_PUBLIC gavl_dictionary_t * gavl_dictionary_add_chapter_list(gavl_dictionary_t * m, int timescale); GAVL_PUBLIC gavl_dictionary_t * gavl_dictionary_get_chapter_list_nc(gavl_dictionary_t * m); GAVL_PUBLIC const gavl_dictionary_t * gavl_dictionary_get_chapter_list(const gavl_dictionary_t * m); /** * @} */ #ifdef __cplusplus } #endif #endif // GAVL_CHAPTERLIST_H_INCLUDED bplaum-gavl-b9385e3/include/gavl/compression.h000066400000000000000000000471601513252040200213550ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #ifndef GAVL_COMPRESSION_H_INCLUDED #define GAVL_COMPRESSION_H_INCLUDED #include #include #ifdef __cplusplus extern "C" { #endif typedef struct gavl_io_s gavl_io_t; /** \defgroup compression Compressed stream support * \brief Compressed stream support * * gavl provides some structures and functions for handling * compressed data packets. It is a completely independent API * layer and has nothing to do with the uncompressed video and audio * API. In particular the conversion between compressed and uncompressed * data (i.e. codecs) are outside the scope of gavl. These are implemented * in gmerlin-avdecoder and gmerlin encoding plugins. * * @{ */ /** \brief Set if not all frames are keyframes */ #define GAVL_COMPRESSION_HAS_P_FRAMES (1<<0) /** \brief Set if frames don't appear in presentation order */ #define GAVL_COMPRESSION_HAS_B_FRAMES (1<<1) //!< /** \brief Packets can consist of 2 consecutive fields */ #define GAVL_COMPRESSION_HAS_FIELD_PICTURES (1<<2) /** \brief Samplerate got doubled by decoder, format and sample counts are for the upsampled rate */ #define GAVL_COMPRESSION_SBR (1<<3) /** \brief Only in uncompressed gavf streams: Specifies that multibyte numbers are big endian */ #define GAVL_COMPRESSION_BIG_ENDIAN (1<<4) #define GAVL_MK_FOURCC(a, b, c, d) ((a<<24)|(b<<16)|(c<<8)|d) typedef struct gavl_compression_info_s gavl_compression_info_t; /** \brief Codec ID * * These are used as identifiers for the type of compression */ typedef enum { /** \brief Unknown/unsupported compression format. In gavf files this signals that the stream * consists of uncompressed gavl frames */ GAVL_CODEC_ID_NONE = 0, /* Audio */ GAVL_CODEC_ID_ALAW = 1, //!< alaw 2:1 GAVL_CODEC_ID_ULAW, //!< mu-law 2:1 GAVL_CODEC_ID_MP2, //!< MPEG-1 audio layer II GAVL_CODEC_ID_MP3, //!< MPEG-1/2 audio layer 3 CBR/VBR GAVL_CODEC_ID_AC3, //!< AC3 GAVL_CODEC_ID_AAC, //!< AAC as stored in quicktime/mp4 GAVL_CODEC_ID_VORBIS, //!< Vorbis (segmented extradata and packets) GAVL_CODEC_ID_FLAC, //!< Flac (extradata contain a file header without comment and seektable) GAVL_CODEC_ID_OPUS, //!< Opus GAVL_CODEC_ID_SPEEX, //!< Speex GAVL_CODEC_ID_DTS, //!< DTS /* Video */ GAVL_CODEC_ID_JPEG = 0x10000, //!< JPEG image GAVL_CODEC_ID_PNG, //!< PNG image GAVL_CODEC_ID_TIFF, //!< TIFF image GAVL_CODEC_ID_TGA, //!< TGA image GAVL_CODEC_ID_MPEG1, //!< MPEG-1 video GAVL_CODEC_ID_MPEG2, //!< MPEG-2 video GAVL_CODEC_ID_MPEG4_ASP, //!< MPEG-4 ASP (a.k.a. Divx4) GAVL_CODEC_ID_H264, //!< H.264 (Annex B) GAVL_CODEC_ID_THEORA, //!< Theora (segmented extradata) GAVL_CODEC_ID_DIRAC, //!< Complete DIRAC frames, sequence end code appended to last packet GAVL_CODEC_ID_DV, //!< DV (several variants) GAVL_CODEC_ID_VP8, //!< VP8 (as used in webm) GAVL_CODEC_ID_DIV3, //!< Old style Divx (aka MSMPEG4V3) /* Subtitle (some video codecs can handle subtitles also */ GAVL_CODEC_ID_DVDSUB = 0x20000, //!< DVD subtitles, palette is in header GAVL_CODEC_ID_EXTENDED = 0xffffffff, //!< Separate compression id } gavl_codec_id_t; #define GAVL_BITRATE_VBR -1 //!< Use this to specify a VBR stream #define GAVL_BITRATE_LOSSLESS -2 //!< Use this to specify a losslessly compressed stream /** \brief Compression format * * This defines parameters of the compression. The most important * value is the \ref gavl_codec_id_t. Formats, which support a global * header, store it here as well. * * Usually there must be an associated audio or video format, because * some containers need this as well. */ struct gavl_compression_info_s { int flags; //!< ORed combination of GAVL_COMPRESSION_* flags gavl_codec_id_t id; //!< Codec ID gavl_buffer_t codec_header; //!< Global header int bitrate; //!< Needed by some codecs, negative values mean VBR int palette_size; //!< Size of the embedded palette for image codecs int pre_skip; //!< Samples to skip at the start int video_buffer_size; //!< VBV buffer size for video (in BYTES) uint32_t codec_tag; int block_align; // Needed by MS audio codecs }; /** \brief Initialize a compression info * \param info A compression info * * Use this for compression infos which are on the stack before * using them. */ GAVL_PUBLIC void gavl_compression_info_init(gavl_compression_info_t * info); /** \brief Free all dynamically allocated memory of a compression info * \param info A compression info */ GAVL_PUBLIC void gavl_compression_info_free(gavl_compression_info_t* info); /** \brief Dump a compression info to stderr * \param info A compression info * * Use this for debugging */ GAVL_PUBLIC void gavl_compression_info_dump(const gavl_compression_info_t * info); /** \brief Dump a compression info to stderr * \param info A compression info * \param indent Indentation * * Same as \ref gavl_compression_info_dump but it puts indent whitespaces * in front of each line. */ GAVL_PUBLIC void gavl_compression_info_dumpi(const gavl_compression_info_t * info, int num); /** \brief Copy a compression info * \param dst Destination * \param src Source * */ GAVL_PUBLIC void gavl_compression_info_copy(gavl_compression_info_t * dst, const gavl_compression_info_t * src); GAVL_PUBLIC void gavl_compression_info_set_global_header(gavl_compression_info_t * dst, const uint8_t * data, int len); GAVL_PUBLIC void gavl_compression_info_append_global_header(gavl_compression_info_t * dst, const uint8_t * data, int len); /** \brief Append a Xiph packet to a global header * \param global_header Global header (will be changed) * \param global_header_len Global header length (will be changed) * \param header header to append * \param header_len length of header to append */ GAVL_PUBLIC void gavl_append_xiph_header(gavl_buffer_t * codec_header, uint8_t * header, int header_len); /** \brief Extract a Xiph packet to a global header * \param global_header Global header * \param global_header_len Global header length * \param idx Index of the packet (starting with 0) * \param header_len Returns the length of the header * \returns The data of the header packet */ GAVL_PUBLIC uint8_t * gavl_extract_xiph_header(gavl_buffer_t * codec_header, int idx, int * header_len); /** \brief Get the file extension of the corresponding raw format * \param id A codec ID * \param separate If non-null returns 1 if each packet should be in a separate file * \returns The file extension of the raw file or NULL * * This function can be used for writing elementary streams to files. * It returns a suitable file extension. If separate is 1, each packet should be * written to a separate file. This basically means, that the codec corresponds to an * image format. * * Not all compression formats have a suitable elementary stream format, in this * case NULL is returned for the extension. Most prominent examples are Vorbis and * Theora, which can hardly exist outside an OGG container. */ GAVL_PUBLIC const char * gavl_compression_get_extension(gavl_codec_id_t id, int * separate); /** \brief Check if the compression supports multiple pixelformats * \param id A codec ID * \returns 1 if the compression ID must be associated with a pixelformat, 0 else * * This function can be used by decoding libraries to check if the compresison ID * is sufficient or if the pixelformat must be valid in the associated video format. * */ GAVL_PUBLIC int gavl_compression_need_pixelformat(gavl_codec_id_t id); /** \brief Get the mimetype for the corresponding elementary format * \param ci A compression info * \returns The mimetype (can be NULL) */ const char * gavl_compression_get_mimetype(const gavl_compression_info_t * ci); /** \brief Check if an audio compression constant frame samples * \param id A codec ID * \returns 1 if the compression has the same number of samples in each frame, 0 else * */ GAVL_PUBLIC int gavl_compression_constant_frame_samples(gavl_codec_id_t id); /** \brief Check if an audio compression size for each samples * \param id A codec ID * \returns The coded size of one sample or 0 */ GAVL_PUBLIC int gavl_compression_get_sample_size(gavl_codec_id_t id); /** \brief Return the long name of the compression * \param id A codec ID * \returns The long name or NULL */ GAVL_PUBLIC const char * gavl_compression_get_long_name(gavl_codec_id_t id); /** \brief Return the short name of the compression * \param id A codec ID * \returns The short name or NULL */ GAVL_PUBLIC const char * gavl_compression_get_short_name(gavl_codec_id_t id); /** \brief Get a compression from the short name * \param A short name * \returns The codec ID (or GAVL_CODEC_ID_NONE) */ GAVL_PUBLIC gavl_codec_id_t gavl_compression_from_short_name(const char * name); /** \brief Get the number of compression formats * \returns The number of supported compression formats * * Use this with \ref gavl_get_compression to enumerate all * compression formats */ GAVL_PUBLIC int gavl_num_compressions(void); /** \brief Get a compression format for a specified index * \param index Index (starting with 0) * \returns The compression format * * Use this with \ref gavl_num_compressions to enumerate all * compression formats */ GAVL_PUBLIC gavl_codec_id_t gavl_get_compression(int index); #define GAVL_PACKET_TYPE_I 0x01 //!< Packet is an I-frame #define GAVL_PACKET_TYPE_P 0x02 //!< Packet is a P-frame #define GAVL_PACKET_TYPE_B 0x03 //!< Packet is a B-frame #define GAVL_PACKET_TYPE_MASK 0x03 //!< Mask for frame type #define GAVL_PACKET_KEYFRAME (1<<2) //!< Packet is a keyframe #define GAVL_PACKET_LAST (1<<3) //!< Packet is the last in the stream (only Xiph codecs need this flag) #define GAVL_PACKET_EXT (1<<4) //!< Packet has extensions (used only in gavf files) #define GAVL_PACKET_REF (1<<5) //!< B-frame used as reference (can't safely be skipped) #define GAVL_PACKET_NOOUTPUT (1<<6) //!< Packet will produce no decoder output (e.g. VP8 alternate reference) #define GAVL_PACKET_HAS_FDS (1<<7) //!< Packet contains file descriptors (can only be sent via UNIX-Sockets) #define GAVL_PACKET_FIELD_PIC (1<<8) //!< Packet is a field picture #define GAVL_PACKET_SKIP (1<<9) //!< Undecodable packet (e.g. before first keyframe) #define GAVL_PACKET_FLAG_PRIV (1<<16) //!< Private flag (defined outside of gavl) #define GAVL_PACKET_FLAG_PUBLIC_MASK 0x0000ffff //!< Mask for public flags #define GAVL_PACKET_FLAG_PRIVATE_MASK 0xffff0000 //!< Mask for private flags (defined outside of gavl) #define GAVL_PACKET_PADDING 32 //!< Packets are padded in memory with this many zero bytes GAVL_PUBLIC const char * gavl_coding_type_to_string(int flags); /* Extra data which can carried within a packet */ typedef enum { GAVL_PACKET_EXTRADATA_NONE = 0, GAVL_PACKET_EXTRADATA_PALETTE, GAVL_PACKET_EXTRADATA_FDS, } gavl_packet_extradata_type_t; #define GAVL_PACKET_MAX_EXTRADATA 2 typedef struct { int fds[GAVL_MAX_PLANES]; int num_fds; } gavl_packet_fds_t; typedef struct { uint16_t r; uint16_t g; uint16_t b; uint16_t a; } gavl_palette_entry_t; typedef struct { gavl_palette_entry_t * entries; int num_entries; } gavl_palette_t; GAVL_PUBLIC gavl_palette_t * gavl_palette_create(void); GAVL_PUBLIC void gavl_palette_alloc(gavl_palette_t * pal, int num_colors); GAVL_PUBLIC void gavl_palette_init(gavl_palette_t * pal); GAVL_PUBLIC void gavl_palette_free(gavl_palette_t * pal); GAVL_PUBLIC void gavl_palette_destroy(gavl_palette_t * pal); GAVL_PUBLIC void gavl_palette_move(gavl_palette_t * dst, gavl_palette_t * src); typedef struct { gavl_packet_extradata_type_t type; void * data; } gavl_packet_extradata_t; /** \brief Packet structure * * This specifies one packet of compressed data. * For video streams, each packet must correspond to a video frame. * For audio streams, each packet must be the smallest unit, which * can be decoded independently and for which a duration is known. * * The typical usage of a packet is to memset() it to zero in the * beginning. Then for each packet call \ref gavl_packet_alloc * to ensure that enough data is allocated. At the very end call * \ref gavl_packet_free to free all memory. */ typedef struct gavl_packet_s { gavl_buffer_t buf; //!< Data uint32_t flags; //!< ORed combination of GAVL_PACKET_* flags int64_t position; //!< Position of the packet in the file. The exact meaning is format dependent int64_t pts; //!< Presentation time int64_t dts; //!< Decoding time int64_t pes_pts; //!< PTS from the PES stream (probably in another scale) int64_t duration; //!< Duration of the contained frame uint32_t field2_offset; //!< Offset of field 2 for field pictures uint32_t header_size; //!< Size of a repeated global header (or 0) uint32_t sequence_end_pos; //!< Position of sequence end code if any gavl_interlace_mode_t interlace_mode; //!< Interlace mode for mixed interlacing gavl_timecode_t timecode; //!< Timecode gavl_rectangle_i_t src_rect; //!< Rectangle to take from a video frame int32_t dst_x; //!< X-coordinate in the destination frame (for overlays) int32_t dst_y; //!< Y-coordinate in the destination frame (for overlays) int32_t id; //!< ID of the gavf stream where this packet belongs int buf_idx; gavl_packet_extradata_t ext_data[GAVL_PACKET_MAX_EXTRADATA]; // int fds[GAVL_MAX_PLANES]; // int num_fds; } gavl_packet_t; /** \brief Initialize a packet * \param p A packet * */ GAVL_PUBLIC void gavl_packet_init(gavl_packet_t * p); GAVL_PUBLIC gavl_packet_t * gavl_packet_create(void); GAVL_PUBLIC void gavl_packet_destroy(gavl_packet_t * p); /** \brief Allocate memory for a packet * \param p A packet * \param len Number of bytes you want to store in the packet * * This function uses realloc(), which means that it preserves * the data already contained in the packet. */ GAVL_PUBLIC void gavl_packet_alloc(gavl_packet_t * p, int len); /** \brief Free memory of a packet * \param p A packet */ GAVL_PUBLIC void gavl_packet_free(gavl_packet_t * p); GAVL_PUBLIC void * gavl_packet_add_extradata(gavl_packet_t * p, gavl_packet_extradata_type_t type); GAVL_PUBLIC void * gavl_packet_get_extradata(gavl_packet_t * p, gavl_packet_extradata_type_t type); /* Merge two consecutive fields into one */ GAVL_PUBLIC void gavl_packet_merge_field2(gavl_packet_t * p, const gavl_packet_t * field2); /** \brief Copy a packet * \param dst Destination * \param src Source */ GAVL_PUBLIC void gavl_packet_copy(gavl_packet_t * dst, const gavl_packet_t * src); /** \brief Copy metadata of a packet * \param dst Destination * \param src Source * * Like \ref gavl_packet_copy but leaves the * payload of dst untouched. * * Since 1.5.0 */ GAVL_PUBLIC void gavl_packet_copy_metadata(gavl_packet_t * dst, const gavl_packet_t * src); /** \brief Reset a packet * \param p Destination * * Set fields to their default values */ GAVL_PUBLIC void gavl_packet_reset(gavl_packet_t * p); /** \brief Dump a packet to stderr * \param p A packet * * Use this for debugging */ GAVL_PUBLIC void gavl_packet_dump(const gavl_packet_t * p); /** \brief Save a packet to a file * \param p A packet * \param file Filename * * Use this for debugging */ GAVL_PUBLIC void gavl_packet_save(const gavl_packet_t * p, const char * filename); typedef struct { int32_t size_min; int32_t size_max; int64_t duration_min; int64_t duration_max; int64_t pts_start; int64_t pts_end; int64_t total_bytes; // For average bitrate int64_t total_packets; // For average framerate } gavl_stream_stats_t; GAVL_PUBLIC void gavl_stream_stats_init(gavl_stream_stats_t*); GAVL_PUBLIC void gavl_stream_stats_dump(const gavl_stream_stats_t*, int indent); GAVL_PUBLIC void gavl_stream_stats_update(gavl_stream_stats_t*,const gavl_packet_t*p); GAVL_PUBLIC void gavl_stream_stats_update_end(gavl_stream_stats_t * f, const gavl_packet_t * p); GAVL_PUBLIC void gavl_stream_stats_update_params(gavl_stream_stats_t * f, int64_t pts, int64_t duration, int data_len, int flags); GAVL_PUBLIC void gavl_stream_stats_apply_audio(gavl_stream_stats_t * f, const gavl_audio_format_t * fmt, gavl_compression_info_t * ci, gavl_dictionary_t * m); GAVL_PUBLIC void gavl_stream_stats_apply_video(gavl_stream_stats_t * f, gavl_video_format_t * fmt, gavl_compression_info_t * ci, gavl_dictionary_t * m); GAVL_PUBLIC void gavl_stream_stats_apply_subtitle(gavl_stream_stats_t * f, gavl_dictionary_t * m); GAVL_PUBLIC void gavl_stream_stats_apply_generic(gavl_stream_stats_t * f, gavl_compression_info_t * ci, gavl_dictionary_t * m); GAVL_PUBLIC int gavl_stream_get_stats(const gavl_dictionary_t * s, gavl_stream_stats_t * stats); GAVL_PUBLIC void gavl_stream_set_stats(gavl_dictionary_t * s, const gavl_stream_stats_t * stats); /* PTS Cache */ typedef struct gavl_packet_pts_cache_s gavl_packet_pts_cache_t; GAVL_PUBLIC gavl_packet_pts_cache_t * gavl_packet_pts_cache_create(int size); GAVL_PUBLIC void gavl_packet_pts_cache_destroy(gavl_packet_pts_cache_t *); GAVL_PUBLIC void gavl_packet_pts_cache_push_packet(gavl_packet_pts_cache_t *m, const gavl_packet_t * pkt); GAVL_PUBLIC void gavl_packet_pts_cache_push_frame(gavl_packet_pts_cache_t *m, const gavl_video_frame_t * f); GAVL_PUBLIC int gavl_packet_pts_cache_get_first(gavl_packet_pts_cache_t *m, gavl_video_frame_t * f); GAVL_PUBLIC int gavl_packet_pts_cache_get_by_pts(gavl_packet_pts_cache_t *m, gavl_packet_t * pkt, int64_t pts); GAVL_PUBLIC void gavl_packet_pts_cache_clear(gavl_packet_pts_cache_t *m); /** * @} */ #ifdef __cplusplus } #endif #endif // GAVL_COMPRESSION_H_INCLUDED bplaum-gavl-b9385e3/include/gavl/connectors.h000066400000000000000000000724101513252040200211650ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ /** * @file connector.h * external api header. */ #ifndef GAVL_CONNECTORS_H_INCLUDED #define GAVL_CONNECTORS_H_INCLUDED #include #include #include #ifdef __cplusplus extern "C" { #endif /*! \defgroup pipelines A/V pipeline building elements * * Starting with version 1.5.0 gavl gets support for * building blocks for A/V pipelines. The basic elements * are a source, a sink and a connector. The source works in * pull-mode, the sink works in push mode. A connector connects * a source with one or more sinks. */ /** \brief Prototype for locking a source or sink * \param priv Client data * * This locks or unlocks something like a mutex before * one frame is read (for sources) or written (for sinks). */ typedef void (*gavl_connector_lock_func_t)(void * priv); /** \brief Prototype for freeing private data * \param priv Client data */ typedef void (*gavl_connector_free_func_t)(void * priv); /*! \defgroup sources A/V sources * \ingroup pipelines * * A/V sources are elements, which can be used to * conveniently pass audio or video frames from one * program module to another. They do implicit format * conversion and optimized buffer handling. * * A module, which provides A/V frames, creates a source * module and tells the native format in which it provides * the frames. If you want to obtain the frames from the source, * you tell the desired output format and if you intend to overwrite * the frames. * * To obtain the frames, you pass the address of the pointer of the * frame. If the pointer is NULL, it will be set to an internal buffer. * * The return value is of the type \ref gavl_source_status_t, which can * have 3 states depending on whether the stream ended (EOF) or a frame * is available or if no frame is available right now. The latter can be * used to implement parts of the pipeline in pull mode (the default) and * others in push mode. * * @{ */ /** \brief Return value of the source function */ typedef enum { GAVL_SOURCE_EOF = 0, //!< End of file, no more frames available GAVL_SOURCE_OK = 1, //!< Frame available GAVL_SOURCE_AGAIN = 2, //!< No frame available right now, might try later } gavl_source_status_t; /** \brief Prototype for obtaining one audio frame * \param priv Client data * \param frame Where to store the frame * * If *frame is non-null, the data will be copied there, * otherwise the address of an internally allocated frame is returned */ typedef gavl_source_status_t (*gavl_audio_source_func_t)(void * priv, gavl_audio_frame_t ** frame); /** \brief Prototype for obtaining one video frame * \param priv Client data * \param frame Where to store the frame * * If *frame is non-null, the data will be copied there, * otherwise the address of an internally allocated frame is returned. */ typedef gavl_source_status_t (*gavl_video_source_func_t)(void * priv, gavl_video_frame_t ** frame); /** \brief Prototype for obtaining one packet * \param priv Client data * \param frame Where to store the packet * * If *packet is non-null, the data will be copied there, * otherwise the address of an internally allocated packet is returned. */ typedef gavl_source_status_t (*gavl_packet_source_func_t)(void * priv, gavl_packet_t ** p); /** \brief Source provides a pointer to an internal structure */ #define GAVL_SOURCE_SRC_ALLOC (1<<0) /** \brief Samples per frame is just an upper bound. Frames can have smaller sizes also. The last frame is always allowed to have fewer samples, even if this flag is not set */ #define GAVL_SOURCE_SRC_FRAMESIZE_MAX (1<<2) /** \brief Stream is discontinuous. Set this for video * sources delivering graphical subtitles */ #define GAVL_SOURCE_SRC_DISCONTINUOUS (1<<3) /* Called by the source */ /** \brief Create a video source * \param func Function to get the frames from * \param priv Client data to pass to func * \param src_flags Flags describing the source * \param src_format Native source format * \returns A newly created video source */ GAVL_PUBLIC gavl_video_source_t * gavl_video_source_create(gavl_video_source_func_t func, void * priv, int src_flags, const gavl_video_format_t * src_format); GAVL_PUBLIC void gavl_video_source_set_pts_offset(gavl_video_source_t * src, int64_t offset); GAVL_PUBLIC void gavl_video_source_drain(gavl_video_source_t * s); /** \brief Create a video source from another source * \param func Function to get the frames from * \param priv Client data to pass to func * \param src_flags Flags describing the source * \param src preceding source in the pipeline * \returns A newly created video source * * This will take the destination format of the preceding source * as the input format */ GAVL_PUBLIC gavl_video_source_t * gavl_video_source_create_source(gavl_video_source_func_t func, void * priv, int src_flags, gavl_video_source_t * src); /** \brief Set lock functions * \param src A video source * \param lock_func Function called before a frame is read * \param unlock_func Function called after a frame is read * \param priv Client data (e.g. a mutex) to pass to the functions */ GAVL_PUBLIC void gavl_video_source_set_lock_funcs(gavl_video_source_t * src, gavl_connector_lock_func_t lock_func, gavl_connector_lock_func_t unlock_func, void * priv); /** \brief Set free function * \param src A video source * \param free_func Function called with the private data when the source is destroyed * * Use this if you don't want to keep a reference to the private data along with the source */ GAVL_PUBLIC void gavl_video_source_set_free_func(gavl_video_source_t * src, gavl_connector_free_func_t free_func); /** \brief Get conversion options of a video source * \param s A video source * \returns Conversion options */ GAVL_PUBLIC gavl_video_options_t * gavl_video_source_get_options(gavl_video_source_t * s); /** \brief Reset a video source * \param s A video source * * Call this after seeking to reset the internal state */ GAVL_PUBLIC void gavl_video_source_reset(gavl_video_source_t * s); /** \brief Destroy a video source * \param s A video source * * Destroy a video source including all video frames ever * created by it. */ GAVL_PUBLIC void gavl_video_source_destroy(gavl_video_source_t * s); /* Called by the destination */ /** \brief Enable hardware surfaces * \param s A video source * * Call this function if you can handle hardware surfaces * on the destination side. If this function is not called, * hardware surfaces are copied to RAM before they are * passed to the destination. */ GAVL_PUBLIC void gavl_video_source_support_hw(gavl_video_source_t * s); /** \brief Get the native format * \param s A video source * \returns The native video format */ GAVL_PUBLIC const gavl_video_format_t * gavl_video_source_get_src_format(gavl_video_source_t * s); /** \brief Get the source flags * \param s A video source * \returns The source flags */ GAVL_PUBLIC int gavl_video_source_get_src_flags(gavl_video_source_t * s); /** \brief Get the output format * \param s A video source * \returns The video format in which frames are read */ GAVL_PUBLIC const gavl_video_format_t * gavl_video_source_get_dst_format(gavl_video_source_t * s); /** \brief Set the destination mode * \param s A video source * \param dst_flags Flags * \param dst_format Format in which the frames will be read * * If you accept the source format (as returned by * \ref gavl_video_source_get_src_format) you can pass NULL for the * dst_format. * * If the destination format differs from the source format, * the frames will converted. For this, we have a * \ref gavl_video_converter_t and also do simple framerate conversion * which repeats/drops frames. */ GAVL_PUBLIC void gavl_video_source_set_dst(gavl_video_source_t * s, int dst_flags, const gavl_video_format_t * dst_format); /** \brief Read a video frame * \param s A video source * \param frame Address of a frame. * * This reads one frame from the source. If *frame is NULL * it will be set to an internal buffer, otherwise the data is * copied to the frame you pass. */ GAVL_PUBLIC gavl_source_status_t gavl_video_source_read_frame(void * s, gavl_video_frame_t ** frame); /* Called by source */ /** \brief Create an audio source * \param func Function to get the frames from * \param priv Client data to pass to func * \param src_flags Flags describing the source * \param src_format Native source format * \returns A newly created audio source */ GAVL_PUBLIC gavl_audio_source_t * gavl_audio_source_create(gavl_audio_source_func_t func, void * priv, int src_flags, const gavl_audio_format_t * src_format); GAVL_PUBLIC void gavl_audio_source_drain(gavl_audio_source_t * s); GAVL_PUBLIC void gavl_audio_source_set_pts_offset(gavl_audio_source_t * src, int64_t offset); /** \brief Create an audio source from another source * \param func Function to get the frames from * \param priv Client data to pass to func * \param src_flags Flags describing the source * \param src preceding source in the pipeline * \returns A newly created audio source * * This will take the destination format of the preceding source * as the input format */ GAVL_PUBLIC gavl_audio_source_t * gavl_audio_source_create_source(gavl_audio_source_func_t func, void * priv, int src_flags, gavl_audio_source_t * src); /** \brief Set lock functions * \param src An audio source * \param lock_func Function called before a frame is read * \param unlock_func Function called after a frame is read * \param priv Client data (e.g. a mutex) to pass to the functions */ GAVL_PUBLIC void gavl_audio_source_set_lock_funcs(gavl_audio_source_t * src, gavl_connector_lock_func_t lock_func, gavl_connector_lock_func_t unlock_func, void * priv); /** \brief Set free function * \param src A audio source * \param free_func Function called with the private data when the source is destroyed * * Use this if you don't want to keep a reference to the private data along with the source */ GAVL_PUBLIC void gavl_audio_source_set_free_func(gavl_audio_source_t * src, gavl_connector_free_func_t free_func); /** \brief Get the native format * \param s An audio source * \returns The native audio format */ GAVL_PUBLIC const gavl_audio_format_t * gavl_audio_source_get_src_format(gavl_audio_source_t * s); /** \brief Get the output format * \param s An audio source * \returns The format in which frames will be read */ GAVL_PUBLIC const gavl_audio_format_t * gavl_audio_source_get_dst_format(gavl_audio_source_t * s); /** \brief Get the output flags * \param s An audio source * \returns The flags, which were passed to \ref gavl_audio_source_set_dst */ GAVL_PUBLIC int gavl_audio_source_get_dst_flags(gavl_audio_source_t * s); /** \brief Set the destination mode * \param s An audio source * \param dst_flags Flags * \param dst_format Format in which the frames will be read * * If you accept the source format (as returned by * \ref gavl_video_source_get_src_format) you can pass NULL for the * dst_format. * * If the destination format differs from the source format, * the frames will converted. For this, we have a * \ref gavl_audio_converter_t. In addition, if the * samples_per_frame members are different, the frames will * be repackaged. */ GAVL_PUBLIC void gavl_audio_source_set_dst(gavl_audio_source_t * s, int dst_flags, const gavl_audio_format_t * dst_format); /** \brief Read an audio frame * \param s An audio source * \param frame Address of a frame. * \returns The status * * This reads one frame from the source. If *frame is NULL * it will be set to an internal buffer, otherwise the data is * copied to the frame you pass. * * If the return value is \ref GAVL_SOURCE_AGAIN, you might * have an incomplete frame. In this case you must call * this function again with exactly the same frame argument. */ GAVL_PUBLIC gavl_source_status_t gavl_audio_source_read_frame(void*s, gavl_audio_frame_t ** frame); /** \brief Skip audio samples at the input * \param s An audio source * \param num_samples Number of samples to skip * * This skips a number of input samples. It can be used after * seeking if the sample position after a seek is no multiple of * the frame size. */ GAVL_PUBLIC void gavl_audio_source_skip(gavl_audio_source_t * s, int num_samples); GAVL_PUBLIC void gavl_audio_source_skip_to(gavl_audio_source_t * s, int64_t t, int scale); /** \brief Read audio samples * \param s An audio source * \param frame An audio frame * \param num_samples Number of samples to read * * This is for APIs, which pass the number of samples to each * read() call and the number is not known in advance. */ GAVL_PUBLIC int gavl_audio_source_read_samples(void*s, gavl_audio_frame_t * frame, int num_samples); /** \brief Get conversion options of an audio source * \param s An audio source * \returns Conversion options */ GAVL_PUBLIC gavl_audio_options_t * gavl_audio_source_get_options(gavl_audio_source_t * s); /** \brief Reset an audio source * \param s An audio source * * This resets the internal state as if no frame was read yet. */ GAVL_PUBLIC void gavl_audio_source_reset(gavl_audio_source_t * s); /** \brief Destroy an audio source * \param s An audio source * * Destroy an audio source including all audio frames ever * created by it. */ GAVL_PUBLIC void gavl_audio_source_destroy(gavl_audio_source_t * s); /* Packet source */ /** \brief Create a packet source * \param func Callback for reading one frame * \param priv Client data to be passed to func * \param src_flags Flags * * Typically, you'll use the more specific functions * \ref gavl_packet_source_create_audio, \ref gavl_packet_source_create_video, * \ref gavl_packet_source_create_text and \ref gavl_packet_source_create_source */ GAVL_PUBLIC gavl_packet_source_t * gavl_packet_source_create(gavl_packet_source_func_t func, void * priv, int src_flags, const gavl_dictionary_t * s); GAVL_PUBLIC void gavl_packet_source_set_pts_offset(gavl_packet_source_t * src, int64_t offset); GAVL_PUBLIC void gavl_packet_source_drain(gavl_packet_source_t * src); /* Call after seeking */ GAVL_PUBLIC void gavl_packet_source_reset(gavl_packet_source_t * s); GAVL_PUBLIC const gavl_dictionary_t * gavl_packet_source_get_stream(gavl_packet_source_t * s); GAVL_PUBLIC gavl_dictionary_t * gavl_packet_source_get_stream_nc(gavl_packet_source_t * s); /** \brief Create a packet source from another packet source * \param func Callback for reading one frame * \param priv Client data to be passed to func * \param src_flags Flags * \param src Source to copy the stream specific data from */ GAVL_PUBLIC gavl_packet_source_t * gavl_packet_source_create_source(gavl_packet_source_func_t func, void * priv, int src_flags, gavl_packet_source_t * src); /** \brief Set lock functions * \param src A packet source * \param lock_func Function called before a packet is read * \param unlock_func Function called after a packet is read * \param priv Client data (e.g. a mutex) to pass to the functions */ GAVL_PUBLIC void gavl_packet_source_set_lock_funcs(gavl_packet_source_t * src, gavl_connector_lock_func_t lock_func, gavl_connector_lock_func_t unlock_func, void * priv); /** \brief Set free function * \param src A packet source * \param free_func Function called with the private data when the source is destroyed * * Use this if you don't want to keep a reference to the private data along with the source */ GAVL_PUBLIC void gavl_packet_source_set_free_func(gavl_packet_source_t * src, gavl_connector_free_func_t free_func); /** \brief Get the compression info * \param s A packet source * \returns The compression info or NULL */ // GAVL_PUBLIC const gavl_compression_info_t * // gavl_packet_source_get_ci(gavl_packet_source_t * s); /** \brief Get the audio format * \param s A packet source * \returns The audio format or NULL */ GAVL_PUBLIC const gavl_audio_format_t * gavl_packet_source_get_audio_format(gavl_packet_source_t * s); /** \brief Get the video format * \param s A packet source * \returns The video format or NULL */ GAVL_PUBLIC const gavl_video_format_t * gavl_packet_source_get_video_format(gavl_packet_source_t * s); /** \brief Get the time scale * \param s A packet source * \returns The time scale */ GAVL_PUBLIC int gavl_packet_source_get_timescale(gavl_packet_source_t * s); /** \brief Read one packet * \param s A packet source * \returns The status */ GAVL_PUBLIC gavl_source_status_t gavl_packet_source_read_packet(void*s, gavl_packet_t ** p); GAVL_PUBLIC gavl_source_status_t gavl_packet_source_peek_packet(void*sp, gavl_packet_t ** p); /** \brief Destroy a packet source * \param s A packet source */ GAVL_PUBLIC void gavl_packet_source_destroy(gavl_packet_source_t * s); /** * @} */ /*! \defgroup sinks A/V sinks * \ingroup pipelines * * This is a thin layer for a unified handling of * A/V sinks. A sink can either supply a frame where * the data could be copied or you pass a frame * allocated by yourself to the sink. Sinks don't do * format conversion. Instead you need to obtain the * format and pass this to the source where you read * data from. * * @{ */ /** \brief Return status of the sink functions */ typedef enum { GAVL_SINK_ERROR, //!< Something went wrong GAVL_SINK_OK, //!< Frame was successfully processed } gavl_sink_status_t; /** \brief Prototype for getting a frame buffer * \param priv Private data * \returns An audio frame where to copy the data * * Sinks can use this to pass specially allocated buffers * (e.g. shared or mmapped memory) to the client */ typedef gavl_audio_frame_t * (*gavl_audio_sink_get_func)(void * priv); /** \brief Prototype for putting a frame * \param priv Private data * \param f An audio frame * \returns \ref GAVL_SINK_ERROR if an error happened, \ref GAVL_SINK_OK else. */ typedef gavl_sink_status_t (*gavl_audio_sink_put_func)(void * priv, gavl_audio_frame_t * f); /** \brief Create an audio sink * \param get_func Function for getting a frame buffer or NULL * \param put_func Function for outputting a frame * \param priv Client data to pass to get_func and put_func * \param format Format in which we accept the data * \returns A newly created audio sink */ GAVL_PUBLIC gavl_audio_sink_t * gavl_audio_sink_create(gavl_audio_sink_get_func get_func, gavl_audio_sink_put_func put_func, void * priv, const gavl_audio_format_t * format); /** \brief Set lock functions * \param sink An audio sink * \param lock_func Function called before a packet is read * \param unlock_func Function called after a packet is read * \param priv Client data (e.g. a mutex) to pass to the functions */ GAVL_PUBLIC void gavl_audio_sink_set_lock_funcs(gavl_audio_sink_t * sink, gavl_connector_lock_func_t lock_func, gavl_connector_lock_func_t unlock_func, void * priv); /** \brief Set free function * \param src A audio sink * \param free_func Function called with the private data when the sink is destroyed * * Use this if you don't want to keep a reference to the private data along with the sink */ GAVL_PUBLIC void gavl_audio_sink_set_free_func(gavl_audio_sink_t * sink, gavl_connector_free_func_t free_func); /** \brief Get the format * \param s An audio sink * \returns format in which the sink accepts data */ GAVL_PUBLIC const gavl_audio_format_t * gavl_audio_sink_get_format(gavl_audio_sink_t * s); /** \brief Get a buffer for a frame * \param s An audio sink * \returns A frame buffer * * This function must be called before * \ref gavl_audio_sink_put_frame. If it returns non-NULL, the same * frame must be passed to the next call to \ref gavl_audio_sink_put_frame. */ GAVL_PUBLIC gavl_audio_frame_t * gavl_audio_sink_get_frame(gavl_audio_sink_t * s); /** \brief Output a frame * \param s An audio sink * \param f Frame * \returns \ref GAVL_SINK_ERROR if an error happened, \ref GAVL_SINK_OK else. * * The frame must be the same as returned by the preceding call to * \ref gavl_audio_sink_get_frame if it was not NULL. */ GAVL_PUBLIC gavl_sink_status_t gavl_audio_sink_put_frame(gavl_audio_sink_t * s, gavl_audio_frame_t * f); /** \brief Destroy an audio sink * \param s An audio sink */ GAVL_PUBLIC void gavl_audio_sink_destroy(gavl_audio_sink_t * s); /** \brief Prototype for getting a frame buffer * \param priv Private data * \returns A video frame where to copy the data * * Sinks can use this to pass specially allocated buffers * (e.g. shared or mmapped memory) to the client */ typedef gavl_video_frame_t * (*gavl_video_sink_get_func)(void * priv); /** \brief Prototype for putting a frame * \param priv Private data * \param f A video frame * \returns \ref GAVL_SINK_ERROR if an error happened, \ref GAVL_SINK_OK else. */ typedef gavl_sink_status_t (*gavl_video_sink_put_func)(void * priv, gavl_video_frame_t * f); /** \brief Create a video sink * \param get_func Function for getting a frame buffer or NULL * \param put_func Function for outputting a frame * \param priv Client data to pass to get_func and put_func * \param format Format in which we accept the data * \returns A newly created video sink */ GAVL_PUBLIC gavl_video_sink_t * gavl_video_sink_create(gavl_video_sink_get_func get_func, gavl_video_sink_put_func put_func, void * priv, const gavl_video_format_t * format); /** \brief Set lock functions * \param sink A video sink * \param lock_func Function called before a packet is read * \param unlock_func Function called after a packet is read * \param priv Client data (e.g. a mutex) to pass to the functions */ GAVL_PUBLIC void gavl_video_sink_set_lock_funcs(gavl_video_sink_t * sink, gavl_connector_lock_func_t lock_func, gavl_connector_lock_func_t unlock_func, void * priv); /** \brief Set free function * \param src A video sink * \param free_func Function called with the private data when the sink is destroyed * * Use this if you don't want to keep a reference to the private data along with the sink */ GAVL_PUBLIC void gavl_video_sink_set_free_func(gavl_video_sink_t * sink, gavl_connector_free_func_t free_func); /** \brief Get the format * \param s A video sink * \returns format in which the sink accepts data */ GAVL_PUBLIC const gavl_video_format_t * gavl_video_sink_get_format(gavl_video_sink_t * s); /** \brief Get a buffer for a frame * \param s A video sink * \returns A frame buffer * * This function must be called before * \ref gavl_video_sink_put_frame. If it returns non-NULL, the same * frame must be passed to the next call to \ref gavl_video_sink_put_frame. */ GAVL_PUBLIC gavl_video_frame_t * gavl_video_sink_get_frame(gavl_video_sink_t * s); /** \brief Output a frame * \param s A video sink * \param f Frame * \returns \ref GAVL_SINK_ERROR if an error happened, \ref GAVL_SINK_OK else. * * The frame must be the same as returned by the preceding call to * \ref gavl_video_sink_get_frame if it was not NULL. */ GAVL_PUBLIC gavl_sink_status_t gavl_video_sink_put_frame(gavl_video_sink_t * s, gavl_video_frame_t * f); /** \brief Destroy a video sink * \param s A video sink */ GAVL_PUBLIC void gavl_video_sink_destroy(gavl_video_sink_t * s); /** \brief Prototype for getting a packet buffer * \param priv Private data * \returns A packet where to copy the data * * Sinks can use this to pass specially allocated buffers * (e.g. shared or mmapped memory) to the client */ typedef gavl_packet_t * (*gavl_packet_sink_get_func)(void * priv); /** \brief Prototype for putting a frame * \param priv Private data * \param p A packet * \returns \ref GAVL_SINK_ERROR if an error happened, \ref GAVL_SINK_OK else. */ typedef gavl_sink_status_t (*gavl_packet_sink_put_func)(void * priv, gavl_packet_t * p); /** \brief Create a packet sink * \param get_func Function for getting a packet buffer or NULL * \param put_func Function for outputting a packet * \param priv Client data to pass to get_func and put_func * \returns A newly created packet sink */ GAVL_PUBLIC gavl_packet_sink_t * gavl_packet_sink_create(gavl_packet_sink_get_func get_func, gavl_packet_sink_put_func put_func, void * priv); /** \brief Set lock functions * \param sink A packet sink * \param lock_func Function called before a packet is read * \param unlock_func Function called after a packet is read * \param priv Client data (e.g. a mutex) to pass to the functions */ GAVL_PUBLIC void gavl_packet_sink_set_lock_funcs(gavl_packet_sink_t * sink, gavl_connector_lock_func_t lock_func, gavl_connector_lock_func_t unlock_func, void * priv); /** \brief Set free function * \param src A packet sink * \param free_func Function called with the private data when the sink is destroyed * * Use this if you don't want to keep a reference to the private data along with the sink */ GAVL_PUBLIC void gavl_packet_sink_set_free_func(gavl_packet_sink_t * sink, gavl_connector_free_func_t free_func); /** \brief Get a buffer for a packet * \param s A packet sink * \returns A packet buffer * * This function must be called before * \ref gavl_packet_sink_put_packet. If it returns non-NULL, the same * frame must be passed to the next call to \ref gavl_packet_sink_put_packet. */ GAVL_PUBLIC gavl_packet_t * gavl_packet_sink_get_packet(gavl_packet_sink_t * s); GAVL_PUBLIC void gavl_packet_sink_reset(gavl_packet_sink_t * s); /** \brief Output a frame * \param s A packet sink * \param p Packet * \returns \ref GAVL_SINK_ERROR if an error happened, \ref GAVL_SINK_OK else. * * The frame must be the same as returned by the preceding call to * \ref gavl_packet_sink_get_packet if it was not NULL. */ GAVL_PUBLIC gavl_sink_status_t gavl_packet_sink_put_packet(gavl_packet_sink_t * s, gavl_packet_t * p); /** \brief Destroy a packet sink * \param s A packet sink */ GAVL_PUBLIC void gavl_packet_sink_destroy(gavl_packet_sink_t * s); /** * @} */ /* Packet buffer */ typedef struct gavl_packet_buffer_s gavl_packet_buffer_t; GAVL_PUBLIC gavl_packet_buffer_t * gavl_packet_buffer_create(const gavl_dictionary_t * stream_info); GAVL_PUBLIC void gavl_packet_buffer_destroy(gavl_packet_buffer_t *); GAVL_PUBLIC void gavl_packet_buffer_flush(gavl_packet_buffer_t *); GAVL_PUBLIC void gavl_packet_buffer_clear(gavl_packet_buffer_t *); GAVL_PUBLIC gavl_packet_sink_t * gavl_packet_buffer_get_sink(gavl_packet_buffer_t *); GAVL_PUBLIC gavl_packet_source_t * gavl_packet_buffer_get_source(gavl_packet_buffer_t *); /* Set output PTS (called after seeking) */ GAVL_PUBLIC void gavl_packet_buffer_set_out_pts(gavl_packet_buffer_t * buf, int64_t pts); /* * Mark the last packet with GAVL_PACKET_LAST. * Introduces a delay of 1 for low-delay streams */ GAVL_PUBLIC void gavl_packet_buffer_set_mark_last(gavl_packet_buffer_t * buf, int mark); GAVL_PUBLIC void gavl_packet_buffer_set_calc_frame_durations(gavl_packet_buffer_t * buf, int calc); /** * @} */ #ifdef __cplusplus } #endif #endif // GAVL_CONNECTORS_H_INCLUDED bplaum-gavl-b9385e3/include/gavl/edl.h000066400000000000000000000110361513252040200175510ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #ifndef GAVL_EDL_H_INCLUDED #define GAVL_EDL_H_INCLUDED #ifdef __cplusplus extern "C" { #endif /** \ingroup edl * \brief Forward declaration */ #define GAVL_EDL_TRACK_IDX "tidx" #define GAVL_EDL_STREAM_IDX "sidx" #define GAVL_EDL_SRC_TIME "stime" #define GAVL_EDL_DST_TIME "dtime" #define GAVL_EDL_DST_DUR "ddur" #define GAVL_EDL_SPEED_NUM "spnum" #define GAVL_EDL_SPEED_DEN "spden" #define GAVL_EDL_SEGMENTS "segs" /** \brief One segment of a physical stream to appear in a logical stream */ typedef gavl_dictionary_t gavl_edl_segment_t; GAVL_PUBLIC void gavl_edl_segment_set_url(gavl_edl_segment_t * seg, const char * url); GAVL_PUBLIC void gavl_edl_segment_set_speed(gavl_edl_segment_t * seg, int num, int den); GAVL_PUBLIC void gavl_edl_segment_set(gavl_edl_segment_t * seg, int track, int stream, int timescale, int64_t src_time, int64_t dst_time, int64_t dst_duration); GAVL_PUBLIC const char * gavl_edl_segment_get_url(const gavl_edl_segment_t * seg); GAVL_PUBLIC void gavl_edl_segment_get_speed(const gavl_edl_segment_t * seg, int * num, int * den); GAVL_PUBLIC int gavl_edl_segment_get(const gavl_edl_segment_t * seg, int * track, int * stream, int * timescale, int64_t * src_time, int64_t * dst_time, int64_t * dst_duration); GAVL_PUBLIC int gavl_edl_finalize(gavl_dictionary_t * edl); /** \brief Create an empty EDL * \returns A newly allocated EDL */ GAVL_PUBLIC gavl_dictionary_t * gavl_edl_create(gavl_dictionary_t * parent); /** \brief Append a segment to an EDL stream \param s An EDL stream * \returns The new segment */ GAVL_PUBLIC gavl_edl_segment_t * gavl_edl_add_segment(gavl_dictionary_t * s); GAVL_PUBLIC void gavl_edl_append_track_to_timeline(gavl_dictionary_t * edl_track, const gavl_dictionary_t * track, int init); #if 0 /** \brief Dump an EDL to stderr \param e An EDL Mainly used for debugging */ GAVL_PUBLIC void gavl_edl_dump(const gavl_edl_t * e); /** \brief Convert a source time to a destination time \param st An EDL stream \param seg An EDL Segment \param src_time The time in source coordinates \returns The time in destination coordinates */ GAVL_PUBLIC int64_t gavl_edl_src_time_to_dst(const gavl_dictionary_t * st, const gavl_edl_segment_t * seg, int64_t src_time); /** \brief Convert a destination time to a source time \param t An EDL track \param st An EDL stream \param seg An EDL Segment \param src_time The time in source coordinates \returns The time in destination coordinates */ GAVL_PUBLIC const gavl_edl_segment_t * gavl_edl_dst_time_to_src(const gavl_dictionary_t * t, const gavl_dictionary_t * st, int64_t dst_time, int64_t * src_time, int64_t * mute_time); GAVL_PUBLIC gavl_time_t gavl_edl_track_get_duration(const gavl_edl_track_t * t); #endif /* Convert to / from dictionary for easy transporting */ // GAVL_PUBLIC void gavl_edl_to_dictionary(const gavl_edl_t * edl, gavl_dictionary_t * dict); // GAVL_PUBLIC int gavl_edl_from_dictionary(gavl_edl_t * edl, const gavl_dictionary_t * dict); #ifdef __cplusplus } #endif #endif // GAVL_EDL_H_INCLUDED bplaum-gavl-b9385e3/include/gavl/gavf.h000066400000000000000000000307311513252040200177330ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #ifndef GAVLGAVF_H_INCLUDED #define GAVLGAVF_H_INCLUDED #include #include #include #include #include #include #include #include #include #include #include #include #include #include /* Stream properties */ // #define GAVF_FLAG_MULTITRACK (1<<0) // #define GAVF_FLAG_MULTI_HEADER (1<<1) // #define GAVF_FLAG_HAVE_PKT_HEADER (1<<2) #define GAVF_FLAG_WRITE (1<<3) #define GAVF_FLAG_EOF (1<<4) /* No seek support */ // #define GAVF_FLAG_STREAMING (1<<5) #define GAVF_FLAG_INTERACTIVE (1<<6) #define GAVF_FLAG_UNIX (1<<7) #define GAVF_FLAG_SEPARATE_STREAMS (1<<8) /* on-disk */ #define GAVF_FLAG_ONDISK (1<<9) #define GAVF_FLAG_STARTED (1<<10) /* Flags which change at runtime */ #define GAVF_PROTOCOL_TCP "gavf-tcp" #define GAVF_PROTOCOL_TCPSERV "gavf-tcpserv" #define GAVF_PROTOCOL_UNIX "gavf-unix" #define GAVF_PROTOCOL_UNIXSERV "gavf-unixserv" /* Generic protocol for selecting the right plugin with gmerlin */ #define GAVF_PROTOCOL "gavf" #define GAVF_EXTENSION "gavf" /* gavf specific dictionary */ #define GAVF_DICT "gavf" #define GAVF_META_HWSTORAGE "hw" // Where the frames are stored /* Packet flags (per stream) */ #define GAVL_PACKET_HAS_STREAM_ID (1<<0) #define GAVL_PACKET_HAS_DURATION (1<<1) #define GAVL_PACKET_HAS_INTERLACE (1<<2) /* Packet flags (per packet) */ #define GAVL_PACKET_HAS_RECTANGLE (1<<0) #define GAVL_PACKET_HAS_TIMECODE (1<<1) #define GAVL_PACKET_HAS_HEADER (1<<2) #define GAVL_PACKET_HAS_SEQ_END (1<<3) #define GAVL_PACKET_HAS_FIELD2 (1<<4) /* * Also allowed in a GAVF_DICT: * GAVL_META_URI Address for passing stream packets */ /* gavf is a stream format, which is basically a serialized version of the internal stream structures, which are used throughout the whole gmerlin ecosystem. It was designed mainly for two reasons: 1. As an on-disk format, which supports *all* variants of uncopressed media supported by gavl. Mostly for experiments. 2. As a format, which allows to send multimedia between processes. This implies the support of packets in shared memory or dma-buffers. It is *not* meant to be a format for archiving movies or music. In particular, the fileformat will *not* be garantueed to be compatible between versions. You have been warned. */ /* General structures: CHUNK("name"): name: 8 characters, starts with "GAVF" len: 64 bit len (or offset in case of GAVFTAIL) as signed, 0 if unknown Chunks *always* start at 8 byte boundaries (counted from the start of the GAVFPHDR). Preceding bytes (up to 7) are filled with zeros. CHUNK("GAVFPHDR") len bytes program header (dictionary) For the on-disk format, the program header is followed by CHUNK("GAVFPKTS") len bytes packets After that, multiplexed gavf packets follow until the end of the GAVFPKTS chunk. After the packets, the GAVFFOOT chunk contains the stream stats for each stream CHUNK("GAVFFOOT") footer (dictionary) { stats [ { stats } { stats } { stats } { stats } ] } Optional: GAVFPIDX: 8 bytes len: 8 bytes, bytes to follow, 0 if unknown len bytes packet index GAVFTAIL: 8 bytes size: 8 bytes, byte position after the last byte of these 8 bytes Files on the on-disk format can be joined using "cat" and the result will be a multi-track file The stream format sends the program header through the main I/O channel. Each stream has an entry GAVL_META_URI, which contains the address of a UNIX-socket where the stream packets are sent. */ #define GAVF_TAG_PROGRAM_HEADER "GAVFPHDR" #define GAVF_TAG_PROGRAM_END "GAVFPEND" #define GAVF_TAG_PACKETS "GAVFPKTS" // #define GAVF_TAG_SYNC_HEADER "GAVFSYNC" // #define GAVF_TAG_SYNC_INDEX "GAVFSIDX" #define GAVF_TAG_PACKET_INDEX "GAVFPIDX" #define GAVF_TAG_FOOTER "GAVFFOOT" #define GAVF_TAG_TAIL "GAVFTAIL" typedef struct gavf_s gavf_t; typedef struct gavf_options_s gavf_options_t; /* Chunk structure */ /* Buffer as io */ GAVL_PUBLIC gavl_io_t * gavl_io_create_buf_read(void); GAVL_PUBLIC gavl_io_t * gavl_io_create_buf_write(void); GAVL_PUBLIC gavl_buffer_t * gavl_io_buf_get(gavl_io_t * io); GAVL_PUBLIC void gavl_io_buf_reset(gavl_io_t * io); GAVL_PUBLIC void gavl_buffer_flush(gavl_buffer_t * buf, int len); /* Return short name */ GAVL_PUBLIC const char * gavf_stream_type_name(gavl_stream_type_t t); typedef void (*gavf_packet_unref_func)(gavl_packet_t * p, void * priv); /* Options */ #define GAVF_OPT_FLAG_DUMP_HEADERS (1<<4) #define GAVF_OPT_FLAG_DUMP_INDICES (1<<5) #define GAVF_OPT_FLAG_DUMP_PACKETS (1<<6) #define GAVF_OPT_FLAG_DUMP_METADATA (1<<7) #define GAVF_OPT_FLAG_ORIG_PTS (1<<8) GAVL_PUBLIC void gavf_options_set_flags(gavf_options_t *, int flags); GAVL_PUBLIC int gavf_options_get_flags(gavf_options_t *); GAVL_PUBLIC gavf_options_t * gavf_options_create(void); GAVL_PUBLIC void gavf_options_destroy(gavf_options_t *); // GAVL_PUBLIC // void gavf_options_set_msg_callback(gavf_options_t *, // gavl_handle_msg_func cb, // void *cb_priv); /* General functions */ GAVL_PUBLIC gavf_t * gavf_create(void); GAVL_PUBLIC void gavf_close(gavf_t *, int discard); GAVL_PUBLIC gavf_options_t * gavf_get_options(gavf_t *); GAVL_PUBLIC void gavf_set_options(gavf_t *, const gavf_options_t *); GAVL_PUBLIC int gavf_get_flags(gavf_t *); GAVL_PUBLIC int gavf_handle_reader_command(gavf_t *, const gavl_msg_t * m); GAVL_PUBLIC int gavf_read_writer_command(gavf_t * g, int timeout); GAVL_PUBLIC int gavf_start_program(gavf_t * g, const gavl_dictionary_t * track); GAVL_PUBLIC gavl_io_t * gavf_get_io(gavf_t * g); /* Read support */ GAVL_PUBLIC int gavf_open_read(gavf_t * g, gavl_io_t * io); GAVL_PUBLIC int gavf_open_uri_read(gavf_t * g, const char * uri); /* Clear the EOF flag of the demuxer */ GAVL_PUBLIC void gavf_clear_eof(gavf_t * g); GAVL_PUBLIC gavl_dictionary_t * gavf_get_media_info_nc(gavf_t * g); GAVL_PUBLIC const gavl_dictionary_t * gavf_get_media_info(const gavf_t * g); GAVL_PUBLIC gavl_dictionary_t * gavf_get_current_track_nc(gavf_t * g); GAVL_PUBLIC const gavl_dictionary_t * gavf_get_current_track(const gavf_t * g); GAVL_PUBLIC gavl_source_status_t gavf_demux_iteration(gavf_t * g); GAVL_PUBLIC void gavf_clear_buffers(gavf_t * g); #if 0 GAVL_PUBLIC gavf_program_header_t * gavf_get_program_header(gavf_t *); GAVL_PUBLIC int gavf_get_num_streams(gavf_t *, int type); GAVL_PUBLIC const gavf_stream_header_t * gavf_get_stream(gavf_t *, int index, int type); #endif /* Mark this stream as skippable. */ GAVL_PUBLIC void gavf_stream_set_skip(gavf_t * g, uint32_t id); GAVL_PUBLIC void gavf_stream_set_unref(gavf_t * gavf, uint32_t id, gavf_packet_unref_func func, void * priv); GAVL_PUBLIC void gavf_packet_skip(gavf_t * gavf); GAVL_PUBLIC int gavf_reset(gavf_t * gavf); /* Seek to a specific time. Return the sync timestamps of all streams at the current position */ GAVL_PUBLIC const int64_t * gavf_seek(gavf_t * gavf, int64_t time, int scale); /* Read uncompressed frames */ GAVL_PUBLIC void gavf_packet_to_video_frame(gavl_packet_t * p, gavl_video_frame_t * frame, const gavl_video_format_t * format, const gavl_dictionary_t * m, gavl_dsp_context_t ** ctx); GAVL_PUBLIC void gavf_packet_to_audio_frame(gavl_packet_t * p, gavl_audio_frame_t * frame, const gavl_audio_format_t * format, const gavl_dictionary_t * m, gavl_dsp_context_t ** ctx); /* frame must be allocated with the maximum size already! */ GAVL_PUBLIC void gavf_packet_to_overlay(gavl_packet_t * p, gavl_video_frame_t * frame, const gavl_video_format_t * format); /* Packet must be allocated with the maximum size already! */ GAVL_PUBLIC void gavf_overlay_to_packet(gavl_video_frame_t * frame, gavl_packet_t * p, const gavl_video_format_t * format); /* These copy *only* the metadata */ GAVL_PUBLIC void gavf_audio_frame_to_packet_metadata(const gavl_audio_frame_t * frame, gavl_packet_t * p); GAVL_PUBLIC void gavf_shrink_audio_frame(gavl_audio_frame_t * f, gavl_packet_t * p, const gavl_audio_format_t * format); /* Write support */ GAVL_PUBLIC int gavf_open_uri_write(gavf_t * g, const char * uri); GAVL_PUBLIC int gavf_set_media_info(gavf_t * g, const gavl_dictionary_t * mi); /* Call this after adding all streams and before writing the first packet */ GAVL_PUBLIC int gavf_start(gavf_t * g); // GAVL_PUBLIC // int gavf_write_packet(gavf_t *, int stream, const gavl_packet_t * p); GAVL_PUBLIC int gavf_write_video_frame(gavf_t *, int stream, gavl_video_frame_t * frame); GAVL_PUBLIC int gavf_write_audio_frame(gavf_t *, int stream, gavl_audio_frame_t * frame); GAVL_PUBLIC int gavf_put_message(void*, gavl_msg_t * m); GAVL_PUBLIC gavl_packet_sink_t * gavf_get_packet_sink(gavf_t *, uint32_t id); GAVL_PUBLIC gavl_audio_sink_t * gavf_get_audio_sink(gavf_t *, uint32_t id); GAVL_PUBLIC gavl_video_sink_t * gavf_get_video_sink(gavf_t *, uint32_t id); GAVL_PUBLIC gavl_packet_source_t * gavf_get_packet_source(gavf_t *, uint32_t id); GAVL_PUBLIC gavl_audio_source_t * gavf_get_audio_source(gavf_t *, uint32_t id); GAVL_PUBLIC gavl_video_source_t * gavf_get_video_source(gavf_t *, uint32_t id); /* Ultra simple image format */ GAVL_PUBLIC int gavl_image_write_header(gavl_io_t * io, const gavl_dictionary_t * m, const gavl_video_format_t * v); GAVL_PUBLIC int gavl_image_write_image(gavl_io_t * io, const gavl_video_format_t * v, gavl_video_frame_t * frame); GAVL_PUBLIC int gavl_image_read_header(gavl_io_t * io, gavl_dictionary_t * m, gavl_video_format_t * v); GAVL_PUBLIC int gavl_image_read_image(gavl_io_t * io, gavl_video_format_t * v, gavl_video_frame_t * f); /* (de-)serialize gavl structs to/from buffers */ GAVL_PUBLIC int gavl_audio_format_from_buffer(const uint8_t * buf, int len, gavl_audio_format_t * fmt); GAVL_PUBLIC uint8_t * gavl_audio_format_to_buffer(int * len, const gavl_audio_format_t * fmt); GAVL_PUBLIC int gavl_video_format_from_buffer(const uint8_t * buf, int len, gavl_video_format_t * fmt); GAVL_PUBLIC uint8_t * gavl_video_format_to_buffer(int * len, const gavl_video_format_t * fmt); GAVL_PUBLIC int gavl_dictionary_from_buffer(const uint8_t * buf, int len, gavl_dictionary_t * fmt); GAVL_PUBLIC uint8_t * gavl_dictionary_to_buffer(int * len, const gavl_dictionary_t * fmt); /* Formats */ /* Metadata */ GAVL_PUBLIC int gavl_dictionary_read(gavl_io_t * io, gavl_dictionary_t * ci); GAVL_PUBLIC int gavl_dictionary_write(gavl_io_t * io, const gavl_dictionary_t * ci); /* Utilify functions for messages */ GAVL_PUBLIC void gavf_set_msg_cb(gavf_t * g, gavl_handle_msg_func msg_callback, void * msg_data); GAVL_PUBLIC void gavf_options_copy(gavf_options_t * dst, const gavf_options_t * src); #endif // GAVLGAVF_H_INCLUDED bplaum-gavl-b9385e3/include/gavl/gavl.h000066400000000000000000004155141513252040200177470ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ /** * @file gavl.h * external api header. */ #ifndef GAVL_H_INCLUDED #define GAVL_H_INCLUDED #include #include #include #include #include #ifdef __cplusplus extern "C" { #endif /* Forward declarations */ /** \ingroup sources * \brief Forward declaration of the video source * * You don't want to know what's inside */ typedef struct gavl_video_source_s gavl_video_source_t; /** \ingroup sources * \brief Forward declaration of the audio source * * You don't want to know what's inside */ typedef struct gavl_audio_source_s gavl_audio_source_t; /** \ingroup sources * \brief Forward declaration of the packet source * * You don't want to know what's inside */ typedef struct gavl_packet_source_s gavl_packet_source_t; /** \ingroup sinks * \brief Audio sink * * You don't want to know what's inside */ typedef struct gavl_audio_sink_s gavl_audio_sink_t; /** \ingroup sinks * \brief Video sink * * You don't want to know what's inside */ typedef struct gavl_video_sink_s gavl_video_sink_t; /** \ingroup sinks * \brief Packet sink * * You don't want to know what's inside */ typedef struct gavl_packet_sink_s gavl_packet_sink_t; typedef struct gavl_packet_s gavl_packet_t; /*! \ingroup video_format *\brief Video format */ typedef struct gavl_video_format_s gavl_video_format_t; typedef struct gavl_video_frame_s gavl_video_frame_t; /** * @} */ /* Quality levels */ /** \defgroup quality Quality settings \brief Generic quality settings Gavl allows multiple versions of each conversion routine. Optimized routines often have a worse precision, while highly accurate routines are too slow for live playback. Quality level 3 enables the standard ANSI-C versions, which are always available, or an optimized version of the same accuracy. Qualities 1 and 2 choose optimized versions which are less accurate. Qualities 4 and 5 enable high quality versions. Not all routines are available for quality levels other than 3. In these cases, the quality will be ignored. */ /*! \ingroup quality \brief Fastest processing Worst quality. */ #define GAVL_QUALITY_FASTEST 1 /*! \ingroup quality \brief Highest quality Slowest, may not work in realtime applications */ #define GAVL_QUALITY_BEST 5 /*! \ingroup quality \brief Default quality Default quality, most probably the choice for realtime playback applications. */ #define GAVL_QUALITY_DEFAULT 2 /** \defgroup accel_flags Acceleration flags * \brief CPU specific acceleration flags * * These flags are used internally by gavl to obtain the supported * acceleration mechanisms at runtime. Some applications however might * need them as well for other tasks, so they are exported into the * public API. * * @{ */ #define GAVL_ACCEL_MMX (1<<0) //!< MMX #define GAVL_ACCEL_MMXEXT (1<<1) //!< Extended MMX (a.k.a MMX2) #define GAVL_ACCEL_SSE (1<<2) //!< Intel SSE #define GAVL_ACCEL_SSE2 (1<<3) //!< Intel SSE2 #define GAVL_ACCEL_SSE3 (1<<4) //!< Intel SSE3 #define GAVL_ACCEL_3DNOW (1<<5) //!< AMD 3Dnow (unsupported) #define GAVL_ACCEL_3DNOWEXT (1<<6) //!< AMD 3Dnow ext (unsupported) #define GAVL_ACCEL_SSSE3 (1<<7) //!< Intel SSSE3 #define GAVL_ACCEL_AVX (1<<8) //!< Intel AVX #define GAVL_ACCEL_AVX2 (1<<9) //!< Intel AVX #define GAVL_ACCEL_NEON (1<<10) //!< ARM Neon /** \brief Get the supported acceleration flags * \returns A combination of GAVL_ACCEL_* flags. */ GAVL_PUBLIC int gavl_accel_supported(void); /** * @} */ /** \defgroup audio Audio * \brief Audio support */ /* Sample formats: all multibyte numbers are native endian */ /** \defgroup audio_format Audio format definitions * \ingroup audio * * \brief Definitions for several variations of audio data */ /*! \def GAVL_MAX_CHANNELS * \ingroup audio_format \brief Maximum number of audio channels */ #define GAVL_MAX_CHANNELS 128 /** \ingroup audio_format * \brief Format of one audio sample * * For multibyte numbers, the byte order is always machine native endian */ typedef enum { GAVL_SAMPLE_NONE = 0, /*!< Undefined */ GAVL_SAMPLE_U8 = 1, /*!< Unsigned 8 bit */ GAVL_SAMPLE_S8 = 2, /*!< Signed 8 bit */ GAVL_SAMPLE_U16 = 3, /*!< Unsigned 16 bit */ GAVL_SAMPLE_S16 = 4, /*!< Signed 16 bit */ GAVL_SAMPLE_S32 = 5, /*!< Signed 32 bit */ GAVL_SAMPLE_FLOAT = 6, /*!< Floating point (-1.0 .. 1.0) */ GAVL_SAMPLE_DOUBLE = 7 /*!< Double (-1.0 .. 1.0) */ } gavl_sample_format_t; /** \ingroup audio_format * * Interleave mode of the channels */ typedef enum { GAVL_INTERLEAVE_NONE = 0, /*!< No interleaving, all channels separate */ GAVL_INTERLEAVE_2 = 1, /*!< Interleaved pairs of channels */ GAVL_INTERLEAVE_ALL = 2 /*!< Everything interleaved */ } gavl_interleave_mode_t; /** \ingroup audio_format * \brief Audio channel setup * * These are the channel locations used to identify the channel order * for an audio format */ typedef enum { GAVL_CHID_NONE = 0, /*!< Undefined */ GAVL_CHID_FRONT_CENTER, /*!< For mono */ GAVL_CHID_FRONT_LEFT, /*!< Front left */ GAVL_CHID_FRONT_RIGHT, /*!< Front right */ GAVL_CHID_FRONT_CENTER_LEFT, /*!< Left of Center */ GAVL_CHID_FRONT_CENTER_RIGHT, /*!< Right of Center */ GAVL_CHID_REAR_LEFT, /*!< Rear left */ GAVL_CHID_REAR_RIGHT, /*!< Rear right */ GAVL_CHID_REAR_CENTER, /*!< Rear Center */ GAVL_CHID_SIDE_LEFT, /*!< Side left */ GAVL_CHID_SIDE_RIGHT, /*!< Side right */ GAVL_CHID_LFE, /*!< Subwoofer */ GAVL_CHID_AUX, /*!< Additional channel (can be more than one) */ } gavl_channel_id_t; /** \ingroup audio_format * \brief Audio Format * * Structure describing an audio format. The samples_per_frame member is used * exclusively by \ref gavl_audio_frame_create to determine how many bytes to * allocate. */ typedef struct { uint32_t samples_per_frame; /*!< Maximum number of samples per frame */ uint32_t samplerate; /*!< Samplerate */ uint32_t num_channels; /*!< Number of channels */ gavl_sample_format_t sample_format; /*!< Sample format */ gavl_interleave_mode_t interleave_mode; /*!< Interleave mode */ float center_level; /*!< linear factor for mixing center to front */ float rear_level; /*!< linear factor for mixing rear to front */ gavl_channel_id_t channel_locations[GAVL_MAX_CHANNELS]; /*!< Which channel is stored where */ } gavl_audio_format_t; /* Audio format -> string conversions */ /*! \ingroup audio_format \brief Convert a gavl_sample_format_t to a human readable string \param format A sample format \returns A human readable string describing the format */ GAVL_PUBLIC const char * gavl_sample_format_to_string(gavl_sample_format_t format); /*! \ingroup audio_format \brief Convert a gavl_sample_format_t to a human readable string \param format A sample format \returns A short string describing the format */ GAVL_PUBLIC const char * gavl_sample_format_to_short_string(gavl_sample_format_t format); /*! \ingroup audio_format \brief Convert a string to a sample format \param str String str must be one of the strings returned by \ref gavl_sample_format_to_string */ GAVL_PUBLIC gavl_sample_format_t gavl_string_to_sample_format(const char * str); /*! \ingroup audio_format \brief Convert a short string to a gavl_sample_format_t \param format A string returned by \ref gavl_sample_format_to_short_string \returns A short string describing the format */ GAVL_PUBLIC gavl_sample_format_t gavl_short_string_to_sample_format(const char * format); /*! \ingroup audio_format * \brief Get total number of supported sample formats * \returns total number of supported sample formats */ GAVL_PUBLIC int gavl_num_sample_formats(void); /*! \ingroup audio_format * \brief Get the sample format from index * \param index index (must be between 0 and the result of \ref gavl_num_sample_formats) * \returns The sample format corresponding to index or GAVL_SAMPLE_NONE. */ GAVL_PUBLIC gavl_sample_format_t gavl_get_sample_format(int index); /*! \ingroup audio_format \brief Convert a gavl_channel_id_t to a human readable string \param id A channel id \returns A human readable string */ GAVL_PUBLIC const char * gavl_channel_id_to_string(gavl_channel_id_t id); /*! \ingroup audio_format \brief Convert a gavl_channel_id_t to a short string \param id A channel id \returns A short string */ GAVL_PUBLIC const char * gavl_channel_id_to_short_string(gavl_channel_id_t id); /*! \ingroup audio_format \brief Convert short string to a gavl_channel_id_t \param id A short string \returns A channel id */ GAVL_PUBLIC gavl_channel_id_t gavl_short_string_to_channel_id(const char * id); /*! \ingroup audio_format \brief Convert a gavl_interleave_mode_t to a human readable string \param mode An interleave mode \returns A human readable string */ GAVL_PUBLIC const char * gavl_interleave_mode_to_string(gavl_interleave_mode_t mode); /*! \ingroup audio_format \brief Convert a gavl_interleave_mode_t to a short string \param mode An interleave mode \returns A short string */ GAVL_PUBLIC const char * gavl_interleave_mode_to_short_string(gavl_interleave_mode_t mode); /*! \ingroup audio_format \brief Convert a short string to a gavl_interleave_mode_t \param mode A short string \returns An interleave mode */ GAVL_PUBLIC gavl_interleave_mode_t gavl_short_string_to_interleave_mode(const char * mode); /*! \ingroup audio_format \brief Dump an audio format to stderr \param format An audio format */ GAVL_PUBLIC void gavl_audio_format_dump(const gavl_audio_format_t * format); GAVL_PUBLIC int gavl_audio_format_buffer_size(const gavl_audio_format_t * format); /*! \ingroup audio_format \brief Dump an audio format to stderr \param format An audio format \param indent Indentation Like \ref gavl_audio_format_dump but it places indent whitespaces in front of each line Since 1.5.0 */ GAVL_PUBLIC void gavl_audio_format_dumpi(const gavl_audio_format_t * format, int indent); /*! \ingroup audio_format \brief Get the index of a particular channel for a given format. \param format An audio format \param id A channel id \returns The index of the channel in the format or -1 if such a channel is not present */ GAVL_PUBLIC int gavl_channel_index(const gavl_audio_format_t * format, gavl_channel_id_t id); /*! \ingroup audio_format \brief Get number of front channels for a given format \param format An audio format */ GAVL_PUBLIC int gavl_front_channels(const gavl_audio_format_t * format); /*! \ingroup audio_format \brief Get number of rear channels for a given format \param format An audio format */ GAVL_PUBLIC int gavl_rear_channels(const gavl_audio_format_t * format); /*! \ingroup audio_format \brief Get number of side channels for a given format \param format An audio format */ GAVL_PUBLIC int gavl_side_channels(const gavl_audio_format_t * format); /*! \ingroup audio_format \brief Get number of aux channels for a given format \param format An audio format */ GAVL_PUBLIC int gavl_aux_channels(const gavl_audio_format_t * format); /*! \ingroup audio_format \brief Get number of LFE channels for a given format \param format An audio format */ GAVL_PUBLIC int gavl_lfe_channels(const gavl_audio_format_t * format); /*! \ingroup audio_format \brief Copy one audio format to another \param dst Destination format \param src Source format */ GAVL_PUBLIC void gavl_audio_format_copy(gavl_audio_format_t * dst, const gavl_audio_format_t * src); /*! \ingroup audio_format \brief Compare 2 audio formats \param format_1 First format \param format_2 Second format \returns 1 if the formats are equal, 0 else */ GAVL_PUBLIC int gavl_audio_formats_equal(const gavl_audio_format_t * format_1, const gavl_audio_format_t * format_2); /*! \ingroup audio_format \brief Set the default channel setup and indices \param format An audio format Set a default channel setup and channel indices if only the number of channels is known. The result might be wrong if you have something else than mono or stereo from a stream, which has no informtions about the speaker configurations. */ GAVL_PUBLIC void gavl_set_channel_setup(gavl_audio_format_t * format); /*! \ingroup audio_format \brief Get the number of bytes per sample for a given sample format \param format A sample format */ GAVL_PUBLIC int gavl_bytes_per_sample(gavl_sample_format_t format); /*! \ingroup audio_format \brief Get the nearest samplerate out of a list of supported rates \param in_rate Source samplerate \param supported Array of supported samplerates (0 terminated) \returns The nearest supported samplerate Since 1.5.0 */ GAVL_PUBLIC int gavl_nearest_samplerate(int in_rate, const int * supported); /** \defgroup audio_frame Audio frame * \ingroup audio * * \brief Container for audio data * * */ /*! \ingroup audio_frame \brief Container for interleaved audio samples */ typedef union { uint8_t * u_8; /*!< Unsigned 8 bit samples */ int8_t * s_8; /*!< Signed 8 bit samples */ uint16_t * u_16; /*!< Unsigned 16 bit samples */ int16_t * s_16; /*!< Signed 16 bit samples */ uint32_t * u_32; /*!< Unsigned 32 bit samples (used internally only) */ int32_t * s_32; /*!< Signed 32 bit samples */ float * f; /*!< Floating point samples */ double * d; /*!< Double samples */ } gavl_audio_samples_t; /*! \ingroup audio_frame \brief Container for noninterleaved audio samples */ typedef union { uint8_t * u_8[GAVL_MAX_CHANNELS];/*!< Unsigned 8 bit channels */ int8_t * s_8[GAVL_MAX_CHANNELS];/*!< Signed 8 bit channels */ uint16_t * u_16[GAVL_MAX_CHANNELS];/*!< Unsigned 16 bit channels */ int16_t * s_16[GAVL_MAX_CHANNELS];/*!< Signed 16 bit channels */ uint32_t * u_32[GAVL_MAX_CHANNELS];/*!< Unsigned 32 bit channels */ int32_t * s_32[GAVL_MAX_CHANNELS];/*!< Signed 32 bit channels (used internally only) */ float * f[GAVL_MAX_CHANNELS];/*!< Floating point channels */ double * d[GAVL_MAX_CHANNELS];/*!< Double channels */ } gavl_audio_channels_t; /*! \ingroup audio_frame \brief Generic container for audio samples. This is the main container structure for audio data. The data are stored in unions, so you can access the matching pointer type without the need for casts. If you have noninterleaved channels, the i'th channel will be in channels[i].f (if you use floating point samples). For noninterleaved formats, use the samples member. valid_samples must be set by the source to the number of actually valid samples in this frame. Audio frames are created with \ref gavl_audio_frame_create and destroyed with \ref gavl_audio_frame_destroy. The memory can either be allocated by gavl (memory aligned) or by the caller. */ typedef struct { gavl_audio_samples_t samples; /*!< Sample pointer for interleaved formats */ gavl_audio_channels_t channels;/*!< Channel pointer for non interleaved formats */ int valid_samples; /*!< Number of actually valid samples */ int64_t timestamp; /*!< Timestamp in samplerate tics */ int channel_stride; /*!< Byte offset between channels. Total allocated size is always num_channels * channel_stride */ int buf_idx; } gavl_audio_frame_t; /*! \ingroup audio_frame \brief Create audio frame \param format Format of the data to be stored in this frame or NULL Creates an audio frame for a given format and allocates buffers for the audio data. The buffer size is determined by the samples_per_frame member of the format. To create an audio frame from your custom memory, pass NULL for the format and you'll get an empty frame in which you can set the pointers manually. */ GAVL_PUBLIC gavl_audio_frame_t * gavl_audio_frame_create(const gavl_audio_format_t* format); /*! \ingroup audio_frame \brief Zero all pointers in the audio frame. \param frame An audio frame Zero all pointers, so \ref gavl_audio_frame_destroy won't free them. Call this for audio frames, which were created with a NULL format before destroying them. */ GAVL_PUBLIC void gavl_audio_frame_null(gavl_audio_frame_t * frame); /*! \ingroup audio_frame \brief Destroy an audio frame. \param frame An audio frame Destroys an audio frame and frees all associated memory. If you used your custom memory to allocate the frame, call \ref gavl_audio_frame_null before. */ GAVL_PUBLIC void gavl_audio_frame_destroy(gavl_audio_frame_t * frame); /*! \ingroup audio_frame \brief Mute an audio frame. \param frame An audio frame \param format The format of the frame Fills the frame with digital zero samples according to the audio format */ GAVL_PUBLIC void gavl_audio_frame_mute(gavl_audio_frame_t * frame, const gavl_audio_format_t * format); /*! \ingroup audio_frame \brief Mute a number of samples at the start of an audio frame. \param frame An audio frame \param format The format of the frame \param num_samples Number of samples to mute Fills the frame with digital zero samples according to the audio format */ GAVL_PUBLIC void gavl_audio_frame_mute_samples(gavl_audio_frame_t * frame, const gavl_audio_format_t * format, int num_samples); /*! \ingroup audio_frame \brief Mute a single channel of an audio frame. \param frame An audio frame \param format The format of the frame \param channel The channel to mute Fills the frame with digital zero samples according to the audio format */ GAVL_PUBLIC void gavl_audio_frame_mute_channel(gavl_audio_frame_t * frame, const gavl_audio_format_t * format, int channel); /*! \ingroup audio_frame \brief Copy audio data from one frame to another. \param format Format, must be equal for source and destination frames \param dst Destination frame \param src Source frame \param dst_pos Offset (in samples) in the destination frame \param src_pos Offset (in samples) in the source frame \param dst_size Available samples in the destination frame \param src_size Available samples in the source frame \returns The actual number of copied samples This function copies audio samples from src (starting at src_offset) to dst (starting at dst_offset). The number of copied samples will be the smaller one of src_size and dst_size. You can use this function for creating a simple but effective audio buffer. */ GAVL_PUBLIC int gavl_audio_frame_copy(const gavl_audio_format_t * format, gavl_audio_frame_t * dst, const gavl_audio_frame_t * src, int dst_pos, int src_pos, int dst_size, int src_size); /*! \ingroup audio_frame \brief Copy audio data from one frame to another. \param format Format, must be equal for source and destination frames \param dst Destination frame \param src Source frame This function copies the pointers of the frame, not the actual data Since 1.1.1 */ GAVL_PUBLIC void gavl_audio_frame_copy_ptrs(const gavl_audio_format_t * format, gavl_audio_frame_t * dst, const gavl_audio_frame_t * src); /*! \ingroup audio_frame \brief Set an audio frame to a subframe of another frame \param format Format \param src Source frame \param dst Destination frame \param start Start position in the source frame \param len Length in samples This sets all pointers and the valid_samples member in dst to a subframe of src. dst should be created with a NULL format and \ref gavl_audio_frame_null should be called before destroying it. Since 1.1.2 */ GAVL_PUBLIC void gavl_audio_frame_get_subframe(const gavl_audio_format_t * format, gavl_audio_frame_t * src, gavl_audio_frame_t * dst, int start, int len); /*! \ingroup audio_frame \brief Check if 2 audio frames are bit-identical \param format Format \param f1 First frame \param f2 Second frame \returns 1 if the frames are equal, 0 else Since 1.2.0 */ GAVL_PUBLIC int gavl_audio_frames_equal(const gavl_audio_format_t * format, const gavl_audio_frame_t * f1, const gavl_audio_frame_t * f2); /*! \ingroup audio_frame \brief Check if an audio frames is continuous in memory \param format Format \param f Frame \returns 1 if the frame is continuous 0 else Since 1.5.0 */ GAVL_PUBLIC int gavl_audio_frame_continuous(const gavl_audio_format_t * format, const gavl_audio_frame_t * f); /*! \ingroup audio_frame \brief Set the channel pointers of an audio frame \param f Frame \param format Format \param data Address of the first sample of the first channel Since 1.5.0 */ GAVL_PUBLIC void gavl_audio_frame_set_channels(gavl_audio_frame_t * f, const gavl_audio_format_t * format, uint8_t * data); /*! \ingroup audio_frame \brief Set the channel pointers of an audio frame \param f Frame \param format Format \param data Address of the first sample of the first channel \param len Total bytes */ GAVL_PUBLIC void gavl_audio_frame_from_data(gavl_audio_frame_t * f, const gavl_audio_format_t * format, uint8_t * data, int len); GAVL_PUBLIC void gavl_audio_frame_to_packet_metadata(const gavl_audio_frame_t * frame, gavl_packet_t * pkt); GAVL_PUBLIC void gavl_packet_to_audio_frame_metadata(const gavl_packet_t * p, gavl_audio_frame_t * frame); GAVL_PUBLIC void gavl_audio_frame_set_from_packet(gavl_audio_frame_t * frame, const gavl_audio_format_t * format, gavl_packet_t * p); /*! \ingroup audio_frame \brief Skip samples in am audio frame \param format Format \param f Audio frame \param num_samples Number of samples skipped \returns Number of samples actually skipped Skip samples in an audio frame. If there are samples remaining, they are moved to the start of the frame. If not enough samples are there to skip, valid_samples will be zero after the call and the number of skipped samples is returned. Since 1.5.0 */ GAVL_PUBLIC int gavl_audio_frame_skip(const gavl_audio_format_t * format, gavl_audio_frame_t * f, int num_samples); /*! \ingroup audio_frame \brief Plot an audio frame to an ASCII file \param format Format \param frame An audio frame \param name_base Filename base \returns 1 in success, 0 in failure Plots an audio frame into an ascii file with one line per sample in the format: sample_number channel1 channel2 ... In addition, a file for making a plot with gnuplot is generated. name_base is used for generating the filenames. For the data file, the extension ".dat" is appended. For the gnuplot file it's ".gnu" Since 1.2.0 */ GAVL_PUBLIC int gavl_audio_frame_plot(const gavl_audio_format_t * format, const gavl_audio_frame_t * frame, const char * name_base); /** \defgroup audio_options Audio conversion options \ingroup audio */ /** \defgroup audio_conversion_flags Audio conversion flags \ingroup audio_options Flags for passing to \ref gavl_audio_options_set_conversion_flags */ /*! \ingroup audio_conversion_flags */ #define GAVL_AUDIO_FRONT_TO_REAR_COPY (1<<0) /*!< When mixing front to rear, just copy the front channels */ /*! \ingroup audio_conversion_flags */ #define GAVL_AUDIO_FRONT_TO_REAR_MUTE (1<<1) /*!< When mixing front to rear, mute the rear channels */ /*! \ingroup audio_conversion_flags */ #define GAVL_AUDIO_FRONT_TO_REAR_DIFF (1<<2) /*!< When mixing front to rear, send the difference between front to rear */ /*! \ingroup audio_conversion_flags */ #define GAVL_AUDIO_FRONT_TO_REAR_MASK \ (GAVL_AUDIO_FRONT_TO_REAR_COPY | \ GAVL_AUDIO_FRONT_TO_REAR_MUTE | \ GAVL_AUDIO_FRONT_TO_REAR_DIFF) /*!< Mask for front to rear mode */ /* Options for mixing stereo to mono */ /*! \ingroup audio_conversion_flags */ #define GAVL_AUDIO_STEREO_TO_MONO_LEFT (1<<3) /*!< When converting from stereo to mono, choose left channel */ /*! \ingroup audio_conversion_flags */ #define GAVL_AUDIO_STEREO_TO_MONO_RIGHT (1<<4) /*!< When converting from stereo to mono, choose right channel */ /*! \ingroup audio_conversion_flags */ #define GAVL_AUDIO_STEREO_TO_MONO_MIX (1<<5) /*!< When converting from stereo to mono, mix left and right */ /*! \ingroup audio_conversion_flags */ #define GAVL_AUDIO_STEREO_TO_MONO_MASK \ (GAVL_AUDIO_STEREO_TO_MONO_LEFT | \ GAVL_AUDIO_STEREO_TO_MONO_RIGHT | \ GAVL_AUDIO_STEREO_TO_MONO_MIX) /*!< Mask for converting stereo to mono */ /*! \ingroup audio_conversion_flags */ #define GAVL_AUDIO_NORMALIZE_MIX_MATRIX (1<<6) /*!< Normalize the user defined mix matrix (since 1.1.2) */ /*! \ingroup audio_options * \brief Dither mode */ typedef enum { GAVL_AUDIO_DITHER_NONE = 0, GAVL_AUDIO_DITHER_AUTO = 1, GAVL_AUDIO_DITHER_RECT = 2, GAVL_AUDIO_DITHER_TRI = 3, GAVL_AUDIO_DITHER_SHAPED = 4, } gavl_audio_dither_mode_t; /*! \ingroup audio_options * \brief Resample mode */ typedef enum { GAVL_RESAMPLE_AUTO = 0, /*!< Set from quality */ GAVL_RESAMPLE_ZOH = 1, /*!< Zero order hold interpolator, very fast, poor quality. */ GAVL_RESAMPLE_LINEAR = 2, /*!< Linear interpolator, very fast, poor quality. */ GAVL_RESAMPLE_SINC_FAST = 3, /*!< Band limited sinc interpolation, fastest, 97dB SNR, 80% BW. */ GAVL_RESAMPLE_SINC_MEDIUM = 4, /*!< Band limited sinc interpolation, medium quality, 97dB SNR, 90% BW. */ GAVL_RESAMPLE_SINC_BEST = 5 /*!< Band limited sinc interpolation, best quality, 97dB SNR, 96% BW. */ } gavl_resample_mode_t; /*! \ingroup audio_options * \brief Opaque container for audio conversion options. * * You don't want to know what's inside. */ typedef struct gavl_audio_options_s gavl_audio_options_t; /*! \ingroup audio_options * \brief Set the quality level for the converter * \param opt Audio options * \param quality Quality level (see \ref quality) */ GAVL_PUBLIC void gavl_audio_options_set_quality(gavl_audio_options_t * opt, int quality); /*! \ingroup audio_options * \brief Get the quality level for a converter * \param opt Audio options * \returns Quality level (see \ref quality) */ GAVL_PUBLIC int gavl_audio_options_get_quality(const gavl_audio_options_t * opt); /*! \ingroup audio_options * \brief Set the dither mode for the converter * \param opt Audio options * \param mode A dither mode */ GAVL_PUBLIC void gavl_audio_options_set_dither_mode(gavl_audio_options_t * opt, gavl_audio_dither_mode_t mode); /*! \ingroup audio_options * \brief Get the dither mode for the converter * \param opt Audio options * \returns The dither mode */ GAVL_PUBLIC gavl_audio_dither_mode_t gavl_audio_options_get_dither_mode(const gavl_audio_options_t * opt); /*! \ingroup audio_options * \brief Set the resample mode for the converter * \param opt Audio options * \param mode A resample mode */ GAVL_PUBLIC void gavl_audio_options_set_resample_mode(gavl_audio_options_t * opt, gavl_resample_mode_t mode); /*! \ingroup audio_options * \brief Get the resample mode for the converter * \param opt Audio options * \returns The resample mode */ GAVL_PUBLIC gavl_resample_mode_t gavl_audio_options_get_resample_mode(const gavl_audio_options_t * opt); /*! \ingroup audio_options * \brief Set the conversion flags * \param opt Audio options * \param flags Flags (see \ref audio_conversion_flags) */ GAVL_PUBLIC void gavl_audio_options_set_conversion_flags(gavl_audio_options_t * opt, int flags); /*! \ingroup audio_options * \brief Get the conversion flags * \param opt Audio options * \returns Flags (see \ref audio_conversion_flags) */ GAVL_PUBLIC int gavl_audio_options_get_conversion_flags(const gavl_audio_options_t * opt); /*! \ingroup audio_options * \brief Set all options to their defaults * \param opt Audio options */ GAVL_PUBLIC void gavl_audio_options_set_defaults(gavl_audio_options_t * opt); /*! \ingroup audio_options * \brief Set a user defined mix matrix * \param opt Audio options * \param matrix Mix matrix to use * * The matrix consists of coefficients, where matrix[i][j] * is the factor for mixing input channel j to output channel i. * The matrix is not copied, so it should be valid at least until * the next call to \ref gavl_audio_converter_init. * * To clear a previously defined mix matrix (restoring gavls default * behaviour) pass NULL. * * Since 1.1.2 */ GAVL_PUBLIC void gavl_audio_options_set_mix_matrix(gavl_audio_options_t * opt, const double ** matrix); /*! \ingroup audio_options * \brief Get the mix matrix * \param opt Audio options * \returns The user defined mix matrix * * Since 1.1.2 */ GAVL_PUBLIC const double ** gavl_audio_options_get_mix_matrix(const gavl_audio_options_t * opt); /*! \ingroup audio_options * \brief Create an options container * \returns Newly allocated udio options with default values * * Use this to store options, which will apply for more than * one converter instance. Applying the options will be done by * gavl_*_get_options() followed by gavl_audio_options_copy(). */ GAVL_PUBLIC gavl_audio_options_t * gavl_audio_options_create(void); /*! \ingroup audio_options * \brief Copy audio options * \param dst Destination * \param src Source */ GAVL_PUBLIC void gavl_audio_options_copy(gavl_audio_options_t * dst, const gavl_audio_options_t * src); /*! \ingroup audio_options * \brief Destroy audio options * \param opt Audio options */ GAVL_PUBLIC void gavl_audio_options_destroy(gavl_audio_options_t * opt); /* Audio converter */ /** \defgroup audio_converter Audio converter \ingroup audio \brief Audio format converter. This is a generic converter, which converts audio frames from one arbitrary format to another. It does: - Up-/Downmixing of channel configurations - Resampling - Conversion of interleave modes - Conversion of sample formats Quality levels below 3 mainly result if poor but fast resampling methods. Quality levels above 3 will enable high quality resampling methods, dithering and floating point mixing. Create an audio converter with \ref gavl_audio_converter_create. If you want to configure it, get the options pointer with \ref gavl_audio_converter_get_options and change the options (See \ref audio_options). Call \ref gavl_audio_converter_init to initialize the converter for the input and output formats. Audio frames are then converted with \ref gavl_audio_convert. When you are done, you can either reinitialize the converter or destroy it with \ref gavl_audio_converter_destroy. */ /*! \ingroup audio_converter * \brief Opaque audio converter structure * * You don't want to know what's inside. */ typedef struct gavl_audio_converter_s gavl_audio_converter_t; /*! \ingroup audio_converter * \brief Creates an audio converter * \returns A newly allocated audio converter */ GAVL_PUBLIC gavl_audio_converter_t * gavl_audio_converter_create(void); /*! \ingroup audio_converter * \brief Destroys an audio converter and frees all associated memory * \param cnv An audio converter */ GAVL_PUBLIC void gavl_audio_converter_destroy(gavl_audio_converter_t* cnv); /*! \ingroup audio_converter * \brief gets options of an audio converter * \param cnv An audio converter * * After you called this, you can use the gavl_audio_options_set_*() functions to change * the options. Options will become valid with the next call to \ref gavl_audio_converter_init or \ref gavl_audio_converter_reinit */ GAVL_PUBLIC gavl_audio_options_t * gavl_audio_converter_get_options(gavl_audio_converter_t*cnv); /*! \ingroup audio_converter * \brief Initialize an audio converter * \param cnv An audio converter * \param input_format Input format * \param output_format Output format * \returns The number of single conversion steps necessary to perform the * conversion. It may be 0, in this case you must not use the * converter and have to pass the audio frames directly. * If something goes wrong (should never happen), * -1 is returned. * * This function can be called multiple times with one instance */ GAVL_PUBLIC int gavl_audio_converter_init(gavl_audio_converter_t* cnv, const gavl_audio_format_t * input_format, const gavl_audio_format_t * output_format); /*! \ingroup audio_converter * \brief Initialize an audio converter just for resampling. * \param cnv An audio converter * \param format Input and output format. (They are the same except for output samplerate ratio will vary) * \returns The number of single conversion steps necessary to perform the * conversion. Unlike, gavl_audio_converter_init, it should never * return 0. If the sample_format < GALV_SAMPLE_FLOAT extra conversions * will be added to the internal conversion chain. * * This function can be called multiple times with one instance * * Since 1.1.0. */ GAVL_PUBLIC int gavl_audio_converter_init_resample(gavl_audio_converter_t * cnv, const gavl_audio_format_t * format); /*! \ingroup audio_converter * \brief Reinitialize an audio converter * \param cnv An audio converter * \returns The number of single conversion steps necessary to perform the * conversion. It may be 0, in this case you must not use the * converter and have to pass the audio frames directly. * If something goes wrong (should never happen), * -1 is returned. * * This function can be called if the input and output formats didn't * change but the options did. */ GAVL_PUBLIC int gavl_audio_converter_reinit(gavl_audio_converter_t* cnv); /*! \ingroup audio_converter * \brief Convert audio * \param cnv An audio converter * \param input_frame Input frame * \param output_frame Output frame * * Be careful when resampling: gavl will * assume, that your output frame is big enough. * Minimum size is * input_frame_size * output_samplerate / input_samplerate + 10 * */ GAVL_PUBLIC void gavl_audio_convert(gavl_audio_converter_t * cnv, const gavl_audio_frame_t * input_frame, gavl_audio_frame_t * output_frame); /*! \ingroup audio_converter * \brief Set samplerate conversion ratio * \param cnv An resample only audio converter created with gavl_audio_converter_init_resample * \param ratio desired src_ratio * * Max ratio = 256, Min ratio = 1/256 as defined by libsamplerate * You should set this function before you call gavl_audio_converter_resample * for the very first time. If you call this function continually before subsequent * calls to gavl_audio_converter_resample, the internal libsamplrate will step sample * rate conversion up to the new ratio on your output audio frame in * gavl_audio_converter_resample. If you do NOT call this * function before gavl_audio_converter_resample libsamplerate will linearly ramp * the previous src_ratio to the new ratio for the given output audio frame in * gavl_audio_converter_resample. * * Since 1.1.0. */ GAVL_PUBLIC int gavl_audio_converter_set_resample_ratio(gavl_audio_converter_t * cnv, double ratio ) ; /*! \ingroup audio_converter * \brief Convert audio * \param cnv An audio converter * \param input_frame Input frame * \param output_frame Output frame * \param ratio src_ratio (output_frame.samplerate = ratio * input_frame.samplerate) * * Be careful when resampling: gavl will * assume, that your output frame is big enough. * Minimum size for output_frame_size = * input_frame_size * ratio (where ratio can be max 256.0 as defined by libsamplerate) * * Since 1.1.0. */ GAVL_PUBLIC void gavl_audio_converter_resample(gavl_audio_converter_t * cnv, gavl_audio_frame_t * input_frame, gavl_audio_frame_t * output_frame, double ratio); /** \defgroup volume_control Volume control \ingroup audio \brief Simple volume control This is a very simple software volume control. */ /*! \ingroup volume_control * \brief Opaque structure for a volume control * * You don't want to know what's inside. */ typedef struct gavl_volume_control_s gavl_volume_control_t; /* Create / destroy */ /*! \ingroup volume_control * \brief Create volume control * \returns A newly allocated volume control */ GAVL_PUBLIC gavl_volume_control_t * gavl_volume_control_create(void); /*! \ingroup volume_control * \brief Destroys a volume control and frees all associated memory * \param ctrl A volume control */ GAVL_PUBLIC void gavl_volume_control_destroy(gavl_volume_control_t *ctrl); /*! \ingroup volume_control * \brief Set format for a volume control * \param ctrl A volume control * \param format The format subsequent frames will be passed with * This function can be called multiple times with one instance */ GAVL_PUBLIC void gavl_volume_control_set_format(gavl_volume_control_t *ctrl, const gavl_audio_format_t * format); /*! \ingroup volume_control * \brief Set volume for a volume control * \param ctrl A volume control * \param volume Volume in dB (must be <= 0.0 to prevent overflows) */ GAVL_PUBLIC void gavl_volume_control_set_volume(gavl_volume_control_t * ctrl, float volume); /*! \ingroup volume_control * \brief Apply a volume control for an audio frame * \param ctrl A volume control * \param frame An audio frame */ GAVL_PUBLIC void gavl_volume_control_apply(gavl_volume_control_t *ctrl, gavl_audio_frame_t * frame); /*! \ingroup volume_control * \brief Convert an audio volume (in dB) to an integer * \param volume dB value * \param one The dB value corresponding to an integer value of 1 * \param steps The number of steps * \returns Volume as integer */ GAVL_PUBLIC int gavl_volume_to_int(float volume, float one, int steps); /*! \ingroup volume_control * \brief Convert an integer audio volume to a float (in dB) * \param volume Integer value * \param one The dB value corresponding to an integer value of 1 * \param steps The number of steps * \returns Volume in dB */ GAVL_PUBLIC float gavl_volume_to_float(int volume, float one, int steps); /** \defgroup video Video * * Video support */ /*! Maximum number of planes * \ingroup video */ #define GAVL_MAX_PLANES 4 /*!< Maximum number of planes */ /** \defgroup rectangle Rectangles * \ingroup video * * Define rectangular areas in a video frame */ /*! \brief Integer rectangle * \ingroup rectangle */ typedef struct { int32_t x; /*!< Horizontal offset from the left border of the frame */ int32_t y; /*!< Vertical offset from the top border of the frame */ int32_t w; /*!< Width */ int32_t h; /*!< Height */ } gavl_rectangle_i_t; /*! \brief Floating point rectangle * \ingroup rectangle */ typedef struct { double x; /*!< Horizontal offset from the left border of the frame */ double y; /*!< Vertical offset from the top border of the frame */ double w; /*!< Width */ double h; /*!< Height */ } gavl_rectangle_f_t; GAVL_PUBLIC void gavl_rectangle_i_init(gavl_rectangle_i_t * r); GAVL_PUBLIC void gavl_rectangle_f_init(gavl_rectangle_f_t * r); /*! \brief Crop an integer rectangle so it fits into the image size of a video format * \ingroup rectangle * \param r An integer rectangle * \param format The video format into which the rectangle must fit */ GAVL_PUBLIC void gavl_rectangle_i_crop_to_format(gavl_rectangle_i_t * r, const gavl_video_format_t * format); /*! \brief Crop a floating point rectangle so it fits into the image size of a video format * \ingroup rectangle * \param r A floating point rectangle * \param format The video format into which the rectangle must fit */ GAVL_PUBLIC void gavl_rectangle_f_crop_to_format(gavl_rectangle_f_t * r, const gavl_video_format_t * format); /*! \brief Set 2 rectangles as source and destination when no scaling is available * \ingroup rectangle * \param src_rect Source rectangle * \param dst_rect Destination rectangle * \param src_format Source format * \param dst_format Destination format * * This shrinks src_rect and dest_rect that neither is outside the image * boundaries of the format. Both rectangles will have the same dimensions. * * This function can be used for fitting a video image into a window * for the case, that no scaling is available. */ GAVL_PUBLIC void gavl_rectangle_crop_to_format_noscale(gavl_rectangle_i_t * src_rect, gavl_rectangle_i_t * dst_rect, const gavl_video_format_t * src_format, const gavl_video_format_t * dst_format); /*! \brief Crop 2 rectangles to their formats when scaling is available * \ingroup rectangle * \param src_rect Source rectangle * \param dst_rect Destination rectangle * \param src_format Source format * \param dst_format Destination format * * This shrinks src_rect and dest_rect that neither is outside the image * boundaries of the format. */ GAVL_PUBLIC void gavl_rectangle_crop_to_format_scale(gavl_rectangle_f_t * src_rect, gavl_rectangle_i_t * dst_rect, const gavl_video_format_t * src_format, const gavl_video_format_t * dst_format); GAVL_PUBLIC void gavl_rectangle_crop_to_format_scale_f(gavl_rectangle_f_t * src_rect, gavl_rectangle_f_t * dst_rect, const gavl_video_format_t * src_format, const gavl_video_format_t * dst_format); /*! \brief Let an integer rectangle span the whole image size of a video format * \ingroup rectangle * \param r An integer rectangle * \param format The video format into which the rectangle must fit */ GAVL_PUBLIC void gavl_rectangle_i_set_all(gavl_rectangle_i_t * r, const gavl_video_format_t * format); /*! \brief Let a float rectangle span the whole image size of a video format * \ingroup rectangle * \param r A float rectangle * \param format The video format into which the rectangle must fit */ GAVL_PUBLIC void gavl_rectangle_f_set_all(gavl_rectangle_f_t * r, const gavl_video_format_t * format); /*! \brief Crop an integer rectangle by some pixels from the left border * \ingroup rectangle * \param r An integer rectangle * \param num_pixels The number of pixels by which the rectangle gets smaller */ GAVL_PUBLIC void gavl_rectangle_i_crop_left(gavl_rectangle_i_t * r, int num_pixels); /*! \brief Crop an integer rectangle by some pixels from the right border * \ingroup rectangle * \param r An integer rectangle * \param num_pixels The number of pixels by which the rectangle gets smaller */ GAVL_PUBLIC void gavl_rectangle_i_crop_right(gavl_rectangle_i_t * r, int num_pixels); /*! \brief Crop an integer rectangle by some pixels from the top border * \ingroup rectangle * \param r An integer rectangle * \param num_pixels The number of pixels by which the rectangle gets smaller */ GAVL_PUBLIC void gavl_rectangle_i_crop_top(gavl_rectangle_i_t * r, int num_pixels); /*! \brief Crop an integer rectangle by some pixels from the bottom border * \ingroup rectangle * \param r An integer rectangle * \param num_pixels The number of pixels by which the rectangle gets smaller */ GAVL_PUBLIC void gavl_rectangle_i_crop_bottom(gavl_rectangle_i_t * r, int num_pixels); /*! \brief Crop a float rectangle by some pixels from the left border * \ingroup rectangle * \param r A float rectangle * \param num_pixels The number of pixels by which the rectangle gets smaller */ GAVL_PUBLIC void gavl_rectangle_f_crop_left(gavl_rectangle_f_t * r, double num_pixels); /*! \brief Crop a float rectangle by some pixels from the right border * \ingroup rectangle * \param r A float rectangle * \param num_pixels The number of pixels by which the rectangle gets smaller */ GAVL_PUBLIC void gavl_rectangle_f_crop_right(gavl_rectangle_f_t * r, double num_pixels); /*! \brief Crop a float rectangle by some pixels from the top border * \ingroup rectangle * \param r A float rectangle * \param num_pixels The number of pixels by which the rectangle gets smaller */ GAVL_PUBLIC void gavl_rectangle_f_crop_top(gavl_rectangle_f_t * r, double num_pixels); /*! \brief Crop a float rectangle by some pixels from the bottom border * \ingroup rectangle * \param r A float rectangle * \param num_pixels The number of pixels by which the rectangle gets smaller */ GAVL_PUBLIC void gavl_rectangle_f_crop_bottom(gavl_rectangle_f_t * r, double num_pixels); /*! \brief Align a rectangle * \ingroup rectangle * \param r An integer rectangle * \param h_align Horizontal alignment * \param v_align Vertical alignment * * This aligns a rectangle such that the horizontal and vertical coordinates * are multiples of h_align and v_align respectively. When dealing * with chroma subsampled formats, you must call this function with the * return values of \ref gavl_pixelformat_chroma_sub before taking subframes from * video frames. */ GAVL_PUBLIC void gavl_rectangle_i_align(gavl_rectangle_i_t * r, int h_align, int v_align); /*! \brief Align a rectangle to a format * \ingroup rectangle * \param r An integer rectangle * \param format A video format * * The convenience function does the same as \ref gavl_rectangle_i_align * but takes a format as argument. */ GAVL_PUBLIC void gavl_rectangle_i_align_to_format(gavl_rectangle_i_t * r, const gavl_video_format_t * format); /*! \brief Copy an integer rectangle * \ingroup rectangle * \param dst Destination rectangle * \param src Source rectangle */ GAVL_PUBLIC void gavl_rectangle_i_copy(gavl_rectangle_i_t * dst, const gavl_rectangle_i_t * src); /*! \brief Copy a float rectangle * \ingroup rectangle * \param dst Destination rectangle * \param src Source rectangle */ GAVL_PUBLIC void gavl_rectangle_f_copy(gavl_rectangle_f_t * dst, const gavl_rectangle_f_t * src); /*! \brief Convert an integer rectangle to a floating point rectangle * \ingroup rectangle * \param dst Destination rectangle * \param src Source rectangle */ GAVL_PUBLIC void gavl_rectangle_i_to_f(gavl_rectangle_f_t * dst, const gavl_rectangle_i_t * src); /*! \brief Convert a floating point rectangle to an integer rectangle * \ingroup rectangle * \param dst Destination rectangle * \param src Source rectangle */ GAVL_PUBLIC void gavl_rectangle_f_to_i(gavl_rectangle_i_t * dst, const gavl_rectangle_f_t * src); /*! \brief Check if an integer rectangle is empty * \ingroup rectangle * \param r Rectangle * \returns 1 if the rectangle is empty, 0 else. * * A rectangle is considered to be empty if the width or height are <= 0. */ GAVL_PUBLIC int gavl_rectangle_i_is_empty(const gavl_rectangle_i_t * r); /*! \brief Check if a float rectangle is empty * \ingroup rectangle * \param r Rectangle * \returns 1 if the rectangle is empty, 0 else. * * A rectangle is considered to be empty if the width or height are <= 0. */ GAVL_PUBLIC int gavl_rectangle_f_is_empty(const gavl_rectangle_f_t * r); /*!\brief Calculate a destination rectangle for scaling * \ingroup rectangle * \param dst_rect Destination rectangle * \param src_format Source format * \param src_rect Source rectangle * \param dst_format Destination format * \param zoom Zoom factor * \param squeeze Squeeze factor * * Assuming we take src_rect from a frame in src_format, * calculate the optimal dst_rect in dst_format. The source and destination * display aspect ratio will be preserved unless it is changed with the squeeze * parameter. * * Zoom is a zoom factor (1.0 = 100 %). Squeeze is a value between -1.0 and 1.0, * which changes the aspect ratio in both directions. 0.0 means unchanged. * * Note that dst_rect might be outside the image dimensions of dst_format. If you * don't like this, call \ref gavl_rectangle_crop_to_format_scale afterwards. * * Furthermore, the chroma subsampling is ignored by this function. If you you use * the rectangles to fire up a \ref gavl_video_scaler_t, this is no problem (the * scaler will align the rectangles internally). You can align the destination * rectangle manually using \ref gavl_rectangle_i_align or * \ref gavl_rectangle_i_align_to_format. */ GAVL_PUBLIC void gavl_rectangle_fit_aspect(gavl_rectangle_i_t * dst_rect, const gavl_video_format_t * src_format, const gavl_rectangle_f_t * src_rect, const gavl_video_format_t * dst_format, float zoom, float squeeze); GAVL_PUBLIC void gavl_rectangle_fit_aspect_f(gavl_rectangle_f_t * r, const gavl_video_format_t * src_format, const gavl_rectangle_f_t * src_rect, const gavl_video_format_t * dst_format, float zoom, float squeeze, int do_orient); /*! \brief Dump a rectangle to stderr * \ingroup rectangle * \param r Rectangle */ GAVL_PUBLIC void gavl_rectangle_i_dump(const gavl_rectangle_i_t * r); /*! \brief Dump a floating point rectangle to stderr * \ingroup rectangle * \param r Floating point rectangle */ GAVL_PUBLIC void gavl_rectangle_f_dump(const gavl_rectangle_f_t * r); /** \defgroup video_format Video format definitions * \ingroup video * * \brief Definitions for several variations of video data */ /** \ingroup video_format * Flag for planar pixelformats */ #define GAVL_PIXFMT_PLANAR (1<<8) /** \ingroup video_format * Flag for rgb pixelformats */ #define GAVL_PIXFMT_RGB (1<<9) /** \ingroup video_format * Flag for yuv pixelformats */ #define GAVL_PIXFMT_YUV (1<<10) /** \ingroup video_format * Flag for yuvj pixelformats */ #define GAVL_PIXFMT_YUVJ (1<<11) /** \ingroup video_format * Alpha flag */ #define GAVL_PIXFMT_ALPHA (1<<12) /** \ingroup video_format * Flag for grayscale pixelformats */ #define GAVL_PIXFMT_GRAY (1<<13) /*! \ingroup video_format * \brief Pixelformat definition */ enum gavl_pixelformat_e { /*! \brief Undefined */ GAVL_PIXELFORMAT_NONE = 0, /*! 8 bit gray, scaled 0x00..0xff */ GAVL_GRAY_8 = 1 | GAVL_PIXFMT_GRAY, /*! 16 bit gray, scaled 0x0000..0xffff */ GAVL_GRAY_16 = 2 | GAVL_PIXFMT_GRAY, /*! floating point gray, scaled 0.0..1.0 */ GAVL_GRAY_FLOAT = 3 | GAVL_PIXFMT_GRAY, /*! 8 bit gray + alpha, scaled 0x00..0xff */ GAVL_GRAYA_16 = 1 | GAVL_PIXFMT_GRAY | GAVL_PIXFMT_ALPHA, /*! 16 bit gray + alpha, scaled 0x0000..0xffff */ GAVL_GRAYA_32 = 2 | GAVL_PIXFMT_GRAY | GAVL_PIXFMT_ALPHA, /*! floating point gray + alpha, scaled 0.0..1.0 */ GAVL_GRAYA_FLOAT = 3 | GAVL_PIXFMT_GRAY | GAVL_PIXFMT_ALPHA, /*! 15 bit RGB. Each pixel is a uint16_t in native byte order. Color masks are: * for red: 0x7C00, for green: 0x03e0, for blue: 0x001f */ GAVL_RGB_15 = 1 | GAVL_PIXFMT_RGB, /*! 15 bit BGR. Each pixel is a uint16_t in native byte order. Color masks are: * for red: 0x001f, for green: 0x03e0, for blue: 0x7C00 */ GAVL_BGR_15 = 2 | GAVL_PIXFMT_RGB, /*! 16 bit RGB. Each pixel is a uint16_t in native byte order. Color masks are: * for red: 0xf800, for green: 0x07e0, for blue: 0x001f */ GAVL_RGB_16 = 3 | GAVL_PIXFMT_RGB, /*! 16 bit BGR. Each pixel is a uint16_t in native byte order. Color masks are: * for red: 0x001f, for green: 0x07e0, for blue: 0xf800 */ GAVL_BGR_16 = 4 | GAVL_PIXFMT_RGB, /*! 24 bit RGB. Each color is an uint8_t. Color order is RGBRGB */ GAVL_RGB_24 = 5 | GAVL_PIXFMT_RGB, /*! 24 bit BGR. Each color is an uint8_t. Color order is BGRBGR */ GAVL_BGR_24 = 6 | GAVL_PIXFMT_RGB, /*! 32 bit RGB. Each color is an uint8_t. Color order is RGBXRGBX, where X is unused */ GAVL_RGB_32 = 7 | GAVL_PIXFMT_RGB, /*! 32 bit BGR. Each color is an uint8_t. Color order is BGRXBGRX, where X is unused */ GAVL_BGR_32 = 8 | GAVL_PIXFMT_RGB, /*! 32 bit RGBA. Each color is an uint8_t. Color order is RGBARGBA */ GAVL_RGBA_32 = 9 | GAVL_PIXFMT_RGB | GAVL_PIXFMT_ALPHA, /*! 48 bit RGB. Each color is an uint16_t in native byte order. Color order is RGBRGB */ GAVL_RGB_48 = 10 | GAVL_PIXFMT_RGB, /*! 64 bit RGBA. Each color is an uint16_t in native byte order. Color order is RGBARGBA */ GAVL_RGBA_64 = 11 | GAVL_PIXFMT_RGB | GAVL_PIXFMT_ALPHA, /*! float RGB. Each color is a float (0.0 .. 1.0) in native byte order. Color order is RGBRGB */ GAVL_RGB_FLOAT = 12 | GAVL_PIXFMT_RGB, /*! float RGBA. Each color is a float (0.0 .. 1.0) in native byte order. Color order is RGBARGBA */ GAVL_RGBA_FLOAT = 13 | GAVL_PIXFMT_RGB | GAVL_PIXFMT_ALPHA, /*! Packed YCbCr 4:2:2. Each component is an uint8_t. Component order is Y1 U1 Y2 V1 */ GAVL_YUY2 = 1 | GAVL_PIXFMT_YUV, /*! Packed YCbCr 4:2:2. Each component is an uint8_t. Component order is U1 Y1 V1 Y2 */ GAVL_UYVY = 2 | GAVL_PIXFMT_YUV, /*! Packed YCbCrA 4:4:4:4. Each component is an uint8_t. Component order is YUVA. Luma and chroma are video scaled, alpha is 0..255. */ GAVL_YUVA_32 = 3 | GAVL_PIXFMT_YUV | GAVL_PIXFMT_ALPHA, /*! Packed YCbCrA 4:4:4:4. Each component is an uint16_t. Component order is YUVA. Luma and chroma are video scaled, alpha is 0..65535. */ GAVL_YUVA_64 = 4 | GAVL_PIXFMT_YUV | GAVL_PIXFMT_ALPHA, /*! * Packed YCbCr 4:4:4. Each component is a float. Luma is scaled 0.0..1.0, chroma is -0.5..0.5 */ GAVL_YUV_FLOAT = 5 | GAVL_PIXFMT_YUV, /*! Packed YCbCrA 4:4:4:4. Each component is a float. Luma is scaled 0.0..1.0, chroma is -0.5..0.5 */ GAVL_YUVA_FLOAT = 6 | GAVL_PIXFMT_YUV | GAVL_PIXFMT_ALPHA, /*! Packed YCbCrA 4:4:4:4. Each component is an uint16_t. Component order is YUVA. Luma and chroma are video scaled, alpha is 0..65535. */ GAVL_YUV_420_P = 1 | GAVL_PIXFMT_PLANAR | GAVL_PIXFMT_YUV, /*! Planar YCbCr 4:2:2. Each component is an uint8_t */ GAVL_YUV_422_P = 2 | GAVL_PIXFMT_PLANAR | GAVL_PIXFMT_YUV, /*! Planar YCbCr 4:4:4. Each component is an uint8_t */ GAVL_YUV_444_P = 3 | GAVL_PIXFMT_PLANAR | GAVL_PIXFMT_YUV, /*! Planar YCbCr 4:1:1. Each component is an uint8_t */ GAVL_YUV_411_P = 4 | GAVL_PIXFMT_PLANAR | GAVL_PIXFMT_YUV, /*! Planar YCbCr 4:1:0. Each component is an uint8_t */ GAVL_YUV_410_P = 5 | GAVL_PIXFMT_PLANAR | GAVL_PIXFMT_YUV, /*! Planar YCbCr 4:2:0. Each component is an uint8_t, luma and chroma values are full range (0x00 .. 0xff) */ GAVL_YUVJ_420_P = 6 | GAVL_PIXFMT_PLANAR | GAVL_PIXFMT_YUV | GAVL_PIXFMT_YUVJ, /*! Planar YCbCr 4:2:2. Each component is an uint8_t, luma and chroma values are full range (0x00 .. 0xff) */ GAVL_YUVJ_422_P = 7 | GAVL_PIXFMT_PLANAR | GAVL_PIXFMT_YUV | GAVL_PIXFMT_YUVJ, /*! Planar YCbCr 4:4:4. Each component is an uint8_t, luma and chroma values are full range (0x00 .. 0xff) */ GAVL_YUVJ_444_P = 8 | GAVL_PIXFMT_PLANAR | GAVL_PIXFMT_YUV | GAVL_PIXFMT_YUVJ, /*! 16 bit Planar YCbCr 4:4:4. Each component is an uint16_t in native byte order. */ GAVL_YUV_444_P_16 = 9 | GAVL_PIXFMT_PLANAR | GAVL_PIXFMT_YUV, /*! 16 bit Planar YCbCr 4:2:2. Each component is an uint16_t in native byte order. */ GAVL_YUV_422_P_16 = 10 | GAVL_PIXFMT_PLANAR | GAVL_PIXFMT_YUV, }; /*! \ingroup video_format *\brief Pixelformat */ typedef enum gavl_pixelformat_e gavl_pixelformat_t; /*! \ingroup video_format * \brief Pixelformat for storing 1-dimensional integer data with 8 bits each */ #define GAVL_PIXELFORMAT_1D_8 GAVL_GRAY_8 /*! \ingroup video_format * \brief Pixelformat for storing 2-dimensional integer data with 8 bits each */ #define GAVL_PIXELFORMAT_2D_8 GAVL_GRAYA_16 /*! \ingroup video_format * \brief Pixelformat for storing 3-dimensional integer data with 8 bits each */ #define GAVL_PIXELFORMAT_3D_8 GAVL_RGB_24 /*! \ingroup video_format * \brief Pixelformat for storing 4-dimensional integer data with 8 bits each */ #define GAVL_PIXELFORMAT_4D_8 GAVL_RGBA_32 /*! \ingroup video_format * \brief Pixelformat for storing 1-dimensional integer data with 16 bits each */ #define GAVL_PIXELFORMAT_1D_16 GAVL_GRAY_16 /*! \ingroup video_format * \brief Pixelformat for storing 2-dimensional integer data with 16 bits each */ #define GAVL_PIXELFORMAT_2D_16 GAVL_GRAYA_32 /*! \ingroup video_format * \brief Pixelformat for storing 3-dimensional integer data with 16 bits each */ #define GAVL_PIXELFORMAT_3D_16 GAVL_RGB_48 /*! \ingroup video_format * \brief Pixelformat for storing 4-dimensional integer data with 16 bits each */ #define GAVL_PIXELFORMAT_4D_16 GAVL_RGBA_64 /*! \ingroup video_format * \brief Pixelformat for storing 1-dimensional FLOAT data */ #define GAVL_PIXELFORMAT_1D_FLOAT GAVL_GRAY_FLOAT /*! \ingroup video_format * \brief Pixelformat for storing 2-dimensional FLOAT data */ #define GAVL_PIXELFORMAT_2D_FLOAT GAVL_GRAYA_FLOAT /*! \ingroup video_format * \brief Pixelformat for storing 3-dimensional FLOAT data */ #define GAVL_PIXELFORMAT_3D_FLOAT GAVL_RGB_FLOAT /*! \ingroup video_format * \brief Pixelformat for storing 4-dimensional FLOAT data */ #define GAVL_PIXELFORMAT_4D_FLOAT GAVL_RGBA_FLOAT /*! \ingroup video_format * \brief Color channel definitions * * Enum definitions for color channels */ typedef enum { GAVL_CCH_NONE = 0, //!< None/undefined GAVL_CCH_RED, //!< Red GAVL_CCH_GREEN, //!< Green GAVL_CCH_BLUE, //!< Blue GAVL_CCH_Y, //!< Luminance (also grayscale) GAVL_CCH_CB, //!< Chrominance blue (aka U) GAVL_CCH_CR, //!< Chrominance red (aka V) GAVL_CCH_ALPHA, //!< Transparency (or, to be more precise opacity) } gavl_color_channel_t; /* * Colormodel related functions */ /*! \ingroup video_format * \brief Check if a pixelformat is grayscale * \param fmt A pixelformat * \returns 1 if the pixelformat is grayscale, 0 else */ #define gavl_pixelformat_is_gray(fmt) ((fmt) & GAVL_PIXFMT_GRAY) /*! \ingroup video_format * \brief Check if a pixelformat is RGB based * \param fmt A pixelformat * \returns 1 if the pixelformat is RGB based, 0 else */ #define gavl_pixelformat_is_rgb(fmt) ((fmt) & GAVL_PIXFMT_RGB) /*! \ingroup video_format * \brief Check if a pixelformat is YUV based * \param fmt A pixelformat * \returns 1 if the pixelformat is YUV based, 0 else */ #define gavl_pixelformat_is_yuv(fmt) ((fmt) & GAVL_PIXFMT_YUV) /*! \ingroup video_format * \brief Check if a pixelformat is jpeg (full range) scaled * \param fmt A pixelformat * \returns 1 if the pixelformat is jpeg scaled, 0 else */ #define gavl_pixelformat_is_jpeg_scaled(fmt) ((fmt) & GAVL_PIXFMT_YUVJ) /*! \ingroup video_format * \brief Check if a pixelformat has a transparency channel * \param fmt A pixelformat * \returns 1 if the pixelformat has a transparency channel, 0 else */ #define gavl_pixelformat_has_alpha(fmt) ((fmt) & GAVL_PIXFMT_ALPHA) /*! \ingroup video_format * \brief Check if a pixelformat is planar * \param fmt A pixelformat * \returns 1 if the pixelformat is planar, 0 else */ #define gavl_pixelformat_is_planar(fmt) ((fmt) & GAVL_PIXFMT_PLANAR) /*! \ingroup video_format * \brief Get the number of channels * \param pixelformat A pixelformat * \returns The number of color channels */ GAVL_PUBLIC int gavl_pixelformat_num_channels(gavl_pixelformat_t pixelformat); /*! \ingroup video_format * \brief Get the color channel * \param pixelformat A pixelformat * \param index Index (starting with 0) * \returns The color channel for this index */ GAVL_PUBLIC gavl_color_channel_t gavl_pixelformat_get_channel(gavl_pixelformat_t pixelformat, int index); /*! \ingroup video_format * \brief Get the number of planes * \param pixelformat A pixelformat * \returns The number of planes (1 for packet formats) */ GAVL_PUBLIC int gavl_pixelformat_num_planes(gavl_pixelformat_t pixelformat); /*! \ingroup video_format * \brief Get the horizontal and vertical subsampling factors * \param pixelformat A pixelformat * \param sub_h returns the horizontal subsampling factor * \param sub_v returns the vertical subsampling factor * * E.g. for 4:2:0 subsampling: sub_h = 2, sub_v = 2 */ GAVL_PUBLIC void gavl_pixelformat_chroma_sub(gavl_pixelformat_t pixelformat, int * sub_h, int * sub_v); /*! \ingroup video_format * \brief Get bytes per component for planar formats * \param pixelformat A pixelformat * \returns The number of bytes per component for planar formats, 0 for packed formats */ GAVL_PUBLIC int gavl_pixelformat_bytes_per_component(gavl_pixelformat_t pixelformat); /*! \ingroup video_format * \brief Get bytes per pixel for packed formats * \param pixelformat A pixelformat * \returns The number of bytes per pixel for packed formats, 0 for planar formats */ GAVL_PUBLIC int gavl_pixelformat_bytes_per_pixel(gavl_pixelformat_t pixelformat); /*! \ingroup video_format * \brief Get the effective number of bits for one pixel * \param pixelformat A pixelformat * \returns Number of bits per pixel */ GAVL_PUBLIC int gavl_pixelformat_bits_per_pixel(gavl_pixelformat_t pixelformat); /*! \ingroup video_format * \brief Get the conversion penalty for pixelformat conversions * \param src Source pixelformat * \param dst Destination pixelformat * \returns A number denoting the "cost" of the conversion * * The number (the larger the worse) is calculated from several criteria * and considers both speed and quality issues. Don't ever rely on * specific absolute values, since they can change from version * to version (except 0, which is returned when and only when src and dst * are equal). Instead, only compare values returned for different * combinations among each other. */ GAVL_PUBLIC int gavl_pixelformat_conversion_penalty(gavl_pixelformat_t src, gavl_pixelformat_t dst); /*! \ingroup video_format * \brief Get the best destination format for a given source format * \param src Source pixelformat * \param dst_supported List of supported destination format * \param penalty If non-null, returns the conversion penalty * \returns The best supported destination pixelformat * * This function takes a source format and a list of supported * destination formats (terminated with \ref GAVL_PIXELFORMAT_NONE) * and returns the format, which will result in the cheapest conversion * (see \ref gavl_pixelformat_conversion_penalty). */ GAVL_PUBLIC gavl_pixelformat_t gavl_pixelformat_get_best(gavl_pixelformat_t src, const gavl_pixelformat_t * dst_supported, int * penalty); /*! \ingroup video_format * \brief Translate a pixelformat into a human readable string * \param pixelformat A pixelformat * \returns A string describing the pixelformat */ GAVL_PUBLIC const char * gavl_pixelformat_to_string(gavl_pixelformat_t pixelformat); /*! \ingroup video_format * \brief Translate a pixelformat into a short string * \param pixelformat A pixelformat * \returns A string describing the pixelformat * * Short strings are guaranteed to contain no spaces and are more suitable for * commandline arguments. */ GAVL_PUBLIC const char * gavl_pixelformat_to_short_string(gavl_pixelformat_t pixelformat); /*! \ingroup video_format * \brief Translate a pixelformat name into a pixelformat * \param name A string describing the pixelformat (returned by \ref gavl_pixelformat_to_string) * \returns The pixelformat or GAVL_PIXELFORMAT_NONE if no match. */ GAVL_PUBLIC gavl_pixelformat_t gavl_string_to_pixelformat(const char * name); /*! \ingroup video_format * \brief Translate a short pixelformat name into a pixelformat * \param name A string describing the pixelformat (returned by \ref gavl_pixelformat_to_short_string) * \returns The pixelformat or GAVL_PIXELFORMAT_NONE if no match. */ GAVL_PUBLIC gavl_pixelformat_t gavl_short_string_to_pixelformat(const char * name); /*! \ingroup video_format * \brief Get the masks for the components * \param pixelformat A pixelformat * \returns The masks for R, G, B and A (in this order) or NULL */ GAVL_PUBLIC const uint32_t * gavl_pixelformat_get_masks(gavl_pixelformat_t pixelformat); /*! \ingroup video_format * \brief Get total number of supported pixelformats * \returns total number of supported pixelformats */ GAVL_PUBLIC int gavl_num_pixelformats(void); /*! \ingroup video_format * \brief Get the pixelformat from index * \param index index (must be between 0 and the result of \ref gavl_num_pixelformats) * \returns The pixelformat corresponding to index or GAVL_PIXELFORMAT_NONE. */ GAVL_PUBLIC gavl_pixelformat_t gavl_get_pixelformat(int index); /* */ /*! \ingroup video_format * \brief Chroma placement * * Specification of the 3 variants of 4:2:0 YCbCr as described at * http://www.mir.com/DMG/chroma.html . For other pixelformats, it's meaningless * and should be set to GAVL_CHROMA_PLACEMENT_DEFAULT. */ typedef enum { GAVL_CHROMA_PLACEMENT_DEFAULT = 0, /*!< MPEG-1/JPEG */ GAVL_CHROMA_PLACEMENT_MPEG2, /*!< MPEG-2 */ GAVL_CHROMA_PLACEMENT_DVPAL /*!< DV PAL */ } gavl_chroma_placement_t; /*! \ingroup video_format * \brief Translate a chroma placement into a human readable string * \param mode A chroma placement * \returns A human readable string describing the chroma placement */ GAVL_PUBLIC const char * gavl_chroma_placement_to_string(gavl_chroma_placement_t mode); /*! \ingroup video_format * \brief Translate a chroma placement into a short string * \param mode A chroma placement * \returns A short string describing the chroma placement */ GAVL_PUBLIC const char * gavl_chroma_placement_to_short_string(gavl_chroma_placement_t mode); /*! \ingroup video_format * \brief Translate a short string into a chroma placement * \param mode A short string describing the chroma placement * \returns A chroma placement */ GAVL_PUBLIC gavl_chroma_placement_t gavl_short_string_to_chroma_placement(const char * mode); /*! \ingroup video_format * \brief Framerate mode */ /* Changing the values alters the gmerlin-avdecoder index format */ typedef enum { GAVL_FRAMERATE_UNKNOWN = -1, /*!< Unknown (never use in public APIs) */ GAVL_FRAMERATE_CONSTANT = 0, /*!< Constant framerate */ GAVL_FRAMERATE_VARIABLE = 1, /*!< Variable framerate */ GAVL_FRAMERATE_STILL = 2, /*!< Still image */ } gavl_framerate_mode_t; /*! \ingroup video_format * \brief Translate a framerate mode into a human readable string * \param mode A framerate mode * \returns A human readable string describing the framerate mode */ GAVL_PUBLIC const char * gavl_framerate_mode_to_string(gavl_framerate_mode_t mode); /*! \ingroup video_format * \brief Translate a framerate mode into a short string * \param mode A framerate mode * \returns A short string describing the framerate mode */ GAVL_PUBLIC const char * gavl_framerate_mode_to_short_string(gavl_framerate_mode_t mode); /*! \ingroup video_format * \brief Translate a short string into a framerate mode * \param mode A short string describing the framerate mode * \returns A framerate mode */ GAVL_PUBLIC gavl_framerate_mode_t gavl_short_string_to_framerate_mode(const char * mode); /*! \ingroup video_format * \brief Interlace mode */ /* Changing the values alters the gmerlin-avdecoder index format */ typedef enum { GAVL_INTERLACE_UNKNOWN = -1,/*!< Unknown interlacing (never use in public APIs) */ GAVL_INTERLACE_NONE = 0, /*!< Progressive */ GAVL_INTERLACE_TOP_FIRST = 1, /*!< Top field first */ GAVL_INTERLACE_BOTTOM_FIRST = 2, /*!< Bottom field first */ GAVL_INTERLACE_MIXED = (0x10 | 1), /*!< Use interlace_mode of the frames */ GAVL_INTERLACE_MIXED_TOP = (0x10 | 2), /*!< Progressive + top */ GAVL_INTERLACE_MIXED_BOTTOM = (0x10 | 3), /*!< Progressive + bottom */ } gavl_interlace_mode_t; /*! \ingroup video_format * \brief Translate an interlace mode into a human readable string * \param mode An interlace mode * \returns A human readable string describing the interlace mode */ GAVL_PUBLIC const char * gavl_interlace_mode_to_string(gavl_interlace_mode_t mode); /*! \ingroup video_format * \brief Translate an interlace mode into a short string * \param mode An interlace mode * \returns A short string describing the interlace mode */ GAVL_PUBLIC const char * gavl_interlace_mode_to_short_string(gavl_interlace_mode_t mode); /*! \ingroup video_format * \brief Translate a short string to an interlace mode * \param mode A short string describing the interlace mode * \returns An interlace mode */ GAVL_PUBLIC gavl_interlace_mode_t gavl_short_string_to_interlace_mode(const char * mode); /*! \ingroup video_format * \brief Check if an interlace mode is mixed * \param mode An interlace mode * \returns 1 if the interlace mode is set for each frame, 0 else * * Since 1.5.0 */ GAVL_PUBLIC int gavl_interlace_mode_is_mixed(gavl_interlace_mode_t mode); #include // Needs forward declarations /* Video format structure */ #define GAVL_IMAGE_ORIENT_FLIP_H (1<<2) typedef enum { GAVL_IMAGE_ORIENT_NORMAL = 0, // EXIF: 1 GAVL_IMAGE_ORIENT_ROT90_CW = 1, // EXIF: 8 GAVL_IMAGE_ORIENT_ROT180_CW = 2, // EXIF: 3 GAVL_IMAGE_ORIENT_ROT270_CW = 3, // EXIF: 6 GAVL_IMAGE_ORIENT_FH = (GAVL_IMAGE_ORIENT_FLIP_H | GAVL_IMAGE_ORIENT_NORMAL), // EXIF: 2 GAVL_IMAGE_ORIENT_FH_ROT90_CW = (GAVL_IMAGE_ORIENT_FLIP_H | GAVL_IMAGE_ORIENT_ROT90_CW), // EXIF: 7 GAVL_IMAGE_ORIENT_FH_ROT180_CW = (GAVL_IMAGE_ORIENT_FLIP_H | GAVL_IMAGE_ORIENT_ROT180_CW), // EXIF: 4 GAVL_IMAGE_ORIENT_FH_ROT270_CW = (GAVL_IMAGE_ORIENT_FLIP_H | GAVL_IMAGE_ORIENT_ROT270_CW), // EXIF: 5 } gavl_image_orientation_t; /*! \ingroup video_format * \brief Video format */ struct gavl_video_format_s { uint32_t frame_width;/*!< Width of the frame buffer in pixels, might be larger than image_width */ uint32_t frame_height;/*!< Height of the frame buffer in pixels, might be larger than image_height */ uint32_t image_width;/*!< Width of the image in pixels */ uint32_t image_height;/*!< Height of the image in pixels */ /* Support for nonsquare pixels */ uint32_t pixel_width;/*!< Relative width of a pixel (pixel aspect ratio is pixel_width/pixel_height) */ uint32_t pixel_height;/*!< Relative height of a pixel (pixel aspect ratio is pixel_width/pixel_height) */ gavl_pixelformat_t pixelformat;/*!< Pixelformat */ uint32_t frame_duration;/*!< Duration of a frame in timescale tics. Meaningful only if framerate_mode is GAVL_FRAMERATE_CONSTANT */ uint32_t timescale;/*!< Timescale in tics per second */ gavl_framerate_mode_t framerate_mode;/*!< Framerate mode */ gavl_chroma_placement_t chroma_placement;/*!< Chroma placement */ gavl_interlace_mode_t interlace_mode;/*!< Interlace mode */ gavl_timecode_format_t timecode_format;/*!< Optional timecode format */ gavl_hw_context_t * hwctx; //!< Handle for accessing the frames. If NULL, frames are in regular RAM gavl_image_orientation_t orientation; }; /*! \ingroup video_format \brief Copy one video format to another \param dst Destination format \param src Source format */ GAVL_PUBLIC void gavl_video_format_copy(gavl_video_format_t * dst, const gavl_video_format_t * src); /*! \ingroup video_format \brief Compare 2 video formats \param format_1 First format \param format_2 Second format \returns 1 if the formats are equal, 0 else */ GAVL_PUBLIC int gavl_video_formats_equal(const gavl_video_format_t * format_1, const gavl_video_format_t * format_2); /*! \ingroup video_format \brief Get the chroma offsets relative to the luma samples \param format A video format \param field Index of the field (0 = top, 1 = bottom). For progressive format, this is unused \param plane Index of the plane (1 = Cb, 2 = Cr) \param off_x Returns the offset in x-direction \param off_y Returns the offset in y-direction */ GAVL_PUBLIC void gavl_video_format_get_chroma_offset(const gavl_video_format_t * format, int field, int plane, float * off_x, float * off_y); /*! \ingroup video_format \brief Set the image size of a destination format from a source format \param dst Destination format \param src Source format Sets the image size of dst according src. Before you call this function, you must set the pixel_width and pixel_height of dst. This function will preserve the display aspect ratio, i.e. when the pixel aspect ratios are different in source and destination, the images will be scaled. */ GAVL_PUBLIC void gavl_video_format_fit_to_source(gavl_video_format_t * dst, const gavl_video_format_t * src); /*! \ingroup video_format \brief Get the unpadded image size \param format A video format \return The image size in bytes of a video frame (all planes combined) */ GAVL_PUBLIC int gavl_video_format_get_image_size(const gavl_video_format_t * format); GAVL_PUBLIC void gavl_video_format_get_frame_layout(const gavl_video_format_t * format, int * offsets, int * strides, int * buffersizes, int multiplane); /*! \ingroup video_format \brief Set the frame size from the image size \param format A video format \param align_h Horizontal alignment value \param align_v Vertical alignment value Set the frame_width and frame_height of the format from the image_width and image_height. Pad them to multiples of align_v and align_h pixels. If pad_h or pad_v is zero or less, use the chroma subsampling factors (e.g. a 4:1:1 format will have width as a multiple of 4 and the height as a multiple of 1). */ GAVL_PUBLIC void gavl_video_format_set_frame_size(gavl_video_format_t * format, int pad_h, int pad_v); /*! \ingroup video_format \brief Get the video format for extracting/merging one channel \param frame_format The video format of the full frame \param channel_format Format of the extracted channel (grayscale) \param ch Channel \returns 1 on success, 0 if the requested channel is not available in the format Use this function in conjunction with \ref gavl_video_frame_extract_channel and \ref gavl_video_frame_insert_channel Since 1.1.2 */ GAVL_PUBLIC int gavl_get_color_channel_format(const gavl_video_format_t * frame_format, gavl_video_format_t * channel_format, gavl_color_channel_t ch); /*! \ingroup video_format \brief Get the video format of one field \param frame_format The video format of the full frame \param field_format Format of the field \param field Field (0 or 1) Use this function if you need to split a frame into fields. It handles odd heights correctly Since 1.2.1 */ GAVL_PUBLIC void gavl_get_field_format(const gavl_video_format_t * frame_format, gavl_video_format_t * field_format, int field); /*! \ingroup video_format \brief Dump a video format to stderr \param format A video format */ GAVL_PUBLIC void gavl_video_format_dump(const gavl_video_format_t * format); /*! \ingroup video_format \brief Dump a video format to stderr \param format A video format \param indent Indentation Like \ref gavl_video_format_dump but it places indent whitespaces in front of each line Since 1.5.0 */ GAVL_PUBLIC void gavl_video_format_dumpi(const gavl_video_format_t * format, int indent); GAVL_PUBLIC void gavl_video_format_normalize_orientation(gavl_video_format_t * in_format, gavl_video_format_t * out_format); GAVL_PUBLIC const char * gavl_image_orientation_to_string(gavl_image_orientation_t orient); GAVL_PUBLIC int gavl_image_orientation_is_transposed(gavl_image_orientation_t orient); /** \defgroup video_frame Video frames * \ingroup video * \brief Container for video images * * This is the standardized method of storing one frame with video data. For planar * formats, the first scanline starts at planes[0], subsequent scanlines start in * intervals of strides[0] bytes. For planar formats, planes[0] will contain the * luminance channel, planes[1] contains Cb (aka U), planes[2] contains Cr (aka V). * * Video frames are created with \ref gavl_video_frame_create and destroyed with * \ref gavl_video_frame_destroy. The memory can either be allocated by gavl (with * memory aligned scanlines) or by the caller. * * Gavl video frames are always oriented top->bottom left->right. If you must flip frames, * use the functions \ref gavl_video_frame_copy_flip_x, \ref gavl_video_frame_copy_flip_y or * \ref gavl_video_frame_copy_flip_xy . */ /** \ingroup video_frame * Video frame */ struct gavl_video_frame_s { uint8_t * planes[GAVL_MAX_PLANES]; /*!< Pointers to the planes */ int strides[GAVL_MAX_PLANES]; /*!< For each plane, this stores the byte offset between the scanlines */ void * client_data; /*!< For storing user data */ int64_t timestamp; /*!< Timestamp in stream specific units (see \ref video_format) */ int64_t duration; /*!< Duration in stream specific units (see \ref video_format) */ gavl_interlace_mode_t interlace_mode;/*!< Interlace mode */ gavl_timecode_t timecode; /*!< Timecode associated with this frame */ int dummy; // !< Used to be reference count. Was renamed to keep ABI compatibility gavl_rectangle_i_t src_rect; //!< Valid rectangle in this frame (since 1.5.0) */ int32_t dst_x; //!< x offset in the destination frame. (since 1.5.0) */ int32_t dst_y; //!< y offset in the destination frame. (since 1.5.0) */ gavl_hw_context_t * hwctx; //!< Handle for accessing the frame void * storage; /*!< Storage handle defined by hardware context */ int buf_idx; }; /*! \ingroup video_frame \brief Create video frame \param format Format of the data to be stored in this frame or NULL Creates a video frame for a given format and allocates buffers for the scanlines. To create a video frame from your custom memory, pass NULL for the format and you'll get an empty frame in which you can set the pointers manually. If scanlines are allocated, they are padded to that scanlines start at certain byte boundaries (currently 8). */ GAVL_PUBLIC gavl_video_frame_t * gavl_video_frame_create(const gavl_video_format_t * format); /*! \ingroup video_frame \brief Create video frame without padding \param format Format of the data to be stored in this frame or NULL Same as \ref gavl_video_frame_create but omits padding, so scanlines will always be adjacent in memory. */ GAVL_PUBLIC gavl_video_frame_t * gavl_video_frame_create_nopad(const gavl_video_format_t*format); /*! \ingroup video_frame \brief Destroy a video frame. \param frame A video frame Destroys a video frame and frees all associated memory. If you used your custom memory to allocate the frame, call \ref gavl_video_frame_null before. */ GAVL_PUBLIC void gavl_video_frame_destroy(gavl_video_frame_t*frame); /*! \ingroup video_frame \brief Zero all pointers in the video frame. \param frame A video frame Zero all pointers, so \ref gavl_video_frame_destroy won't free them. Call this for video frames, which were created with a NULL format before destroying them. */ GAVL_PUBLIC void gavl_video_frame_null(gavl_video_frame_t*frame); /*! \ingroup video_frame \brief Fill the frame with black color \param frame A video frame \param format Format of the data in the frame */ GAVL_PUBLIC void gavl_video_frame_clear(gavl_video_frame_t * frame, const gavl_video_format_t * format); /*! \ingroup video_frame \brief Fill the frame with a user specified color \param frame A video frame \param format Format of the data in the frame \param color Color components in RGBA format scaled 0.0 .. 1.0 */ GAVL_PUBLIC void gavl_video_frame_fill(gavl_video_frame_t * frame, const gavl_video_format_t * format, const float * color); /*! \ingroup video_frame \brief Fill the frame with the absolute difference of 2 source frames \param format Format of the data in the frame \param dst A video frame \param src1 First source frame \param src2 Second source frame Since 1.1.1 */ GAVL_PUBLIC void gavl_video_frame_absdiff(gavl_video_frame_t * dst, const gavl_video_frame_t * src1, const gavl_video_frame_t * src2, const gavl_video_format_t * format); /*! \ingroup video_frame \brief Calculate the PSNR of 2 source frames \param psnr Returns PSNR for all components (maximum 4) \param src1 First source frame \param src2 Second source frame \param format Format of the data in the frame Since 1.1.1 */ GAVL_PUBLIC void gavl_video_frame_psnr(double * psnr, const gavl_video_frame_t * src1, const gavl_video_frame_t * src2, const gavl_video_format_t * format); /*! \ingroup video_frame \brief Calculate the SSIM of 2 source frames \param src1 First source frame \param src2 Second source frame \param dst Will contain the SSIM index for each pixel \param format Format of the data in the frame \returns 1 if the SSIM could be computed, 0 else This calculates the SSIM indices of each pixel for 2 source frames and stores them into dst. The source frames must have the pixelformat \ref GAVL_GRAY_FLOAT implying that only the luminance component is considered. The destination also has the pixelformat \ref GAVL_GRAY_FLOAT. If other pixelformats are passed to this function it will return 0 and nothing is done. The SSIM algorithm is taken from the paper "Image Quality Assessment: From Error Visibility to Structural Similarity" by Z. Want et. al. published in IEEE Transactions on image processing, VOL. 13, NO. 4, APRIL 2004. Homepage of the author: http://www.ece.uwaterloo.ca/~z70wang/research/ssim/ Since 1.1.2 */ GAVL_PUBLIC int gavl_video_frame_ssim(const gavl_video_frame_t * src1, const gavl_video_frame_t * src2, gavl_video_frame_t * dst, const gavl_video_format_t * format); /*! \ingroup video_frame \brief Copy one video frame to another \param format The format of the frames \param dst Destination \param src Source The source and destination formats must be identical, as this routine does no format conversion. The scanlines however can be padded differently in the source and destination. This function only copies the image data. For copying the metadata (timestamp etc.) use# \ref gavl_video_frame_copy_metadata. */ GAVL_PUBLIC void gavl_video_frame_copy(const gavl_video_format_t * format, gavl_video_frame_t * dst, const gavl_video_frame_t * src); /*! \ingroup video_frame \brief Copy a single plane from one video frame to another \param format The format of the frames \param dst Destination \param src Source \param plane The plane to copy Like \ref gavl_video_frame_copy but copies only a single plane */ GAVL_PUBLIC void gavl_video_frame_copy_plane(const gavl_video_format_t * format, gavl_video_frame_t * dst, const gavl_video_frame_t * src, int plane); /*! \ingroup video_frame \brief Copy one video frame to another with horizontal flipping \param format The format of the frames \param dst Destination \param src Source Like \ref gavl_video_frame_copy but flips the image horizontally */ GAVL_PUBLIC void gavl_video_frame_copy_flip_x(const gavl_video_format_t * format, gavl_video_frame_t * dst, const gavl_video_frame_t * src); /*! \ingroup video_frame \brief Copy one video frame to another with vertical flipping \param format The format of the frames \param dst Destination \param src Source Like \ref gavl_video_frame_copy but flips the image vertically */ GAVL_PUBLIC void gavl_video_frame_copy_flip_y(const gavl_video_format_t * format, gavl_video_frame_t * dst, const gavl_video_frame_t * src); /*! \ingroup video_frame \brief Copy one video frame to another with horizontal and vertical flipping \param format The format of the frames \param dst Destination \param src Source Like \ref gavl_video_frame_copy but flips the image both horizontally and vertically */ GAVL_PUBLIC void gavl_video_frame_copy_flip_xy(const gavl_video_format_t * format, gavl_video_frame_t * dst, const gavl_video_frame_t * src); /*! \ingroup video_frame \brief Copy metadata of one video frame to another \param dst Destination \param src Source This function only copies the metadata (timestamp, duration, timecode). For copying the image data use \ref gavl_video_frame_copy. Since 1.1.0. */ GAVL_PUBLIC void gavl_video_frame_copy_metadata(gavl_video_frame_t * dst, const gavl_video_frame_t * src); /*! \ingroup video_frame \brief Get a subframe of another frame \param pixelformat Pixelformat of the frames \param dst Destination \param src Source \param src_rect Rectangular area in the source, which will be in the destination frame This fills the pointers of dst from src such that the dst will represent the specified rectangular area. Note that no data are copied here. This means that dst must be created with NULL as the format argument and \ref gavl_video_frame_null must be called before destroying dst. When dealing with chroma subsampled pixelformats, you must call \ref gavl_rectangle_i_align on src_rect before. */ GAVL_PUBLIC void gavl_video_frame_get_subframe(gavl_pixelformat_t pixelformat, const gavl_video_frame_t * src, gavl_video_frame_t * dst, const gavl_rectangle_i_t * src_rect); /*! \ingroup video_frame \brief Get a field from a frame \param pixelformat Pixelformat of the frames \param dst Destination \param src Source \param field Field index (0 = top field, 1 = bottom field) This fills the pointers and strides of the destination frame such that it will represent the specified field of the source frame. Note that no data are copied here. This means that dst must be created with NULL as the format argument and \ref gavl_video_frame_null must be called before destroying dst. */ GAVL_PUBLIC void gavl_video_frame_get_field(gavl_pixelformat_t pixelformat, const gavl_video_frame_t * src, gavl_video_frame_t * dst, int field); /*! \ingroup video_frame \brief Dump a video frame to files \param frame Video frame to dump \param format Format of the video data in the frame \param namebase Base for the output filenames This is purely for debugging purposes: It dumps each plane of the frame into files \.p1, \.p2 etc */ GAVL_PUBLIC void gavl_video_frame_dump(gavl_video_frame_t * frame, const gavl_video_format_t * format, const char * namebase); /*! \ingroup video_frame \brief Dump a metadata of a video frame \param frame Video frame Metadata (= everything except the image data) are written to stderr for debugging purposes */ GAVL_PUBLIC void gavl_video_frame_dump_metadata(const gavl_video_format_t * format, const gavl_video_frame_t * frame); /*! \ingroup video_frame \brief Set the strides according to the format \param frame Video frame \param format Format of the video data in the frame This sets the strides array according to the format under the assumption, that no padding is done. */ GAVL_PUBLIC void gavl_video_frame_set_strides(gavl_video_frame_t * frame, const gavl_video_format_t * format); /*! \ingroup video_frame \brief Set the frames according to the format \param frame Video frame \param format Format of the video data in the frame \param buffer Start of the first scanline of the first plane This sets the planes array from a raw buffer. If frame->strides[0] is zero, \ref gavl_video_frame_set_strides is called before. */ GAVL_PUBLIC void gavl_video_frame_set_planes(gavl_video_frame_t * frame, const gavl_video_format_t * format, uint8_t * buffer); /*! \ingroup video_frame \brief Check if a video frame uses a continuous memory block \param format Format of the video data in the frame \param frame Video frame \returns 1 if the planes are consecutive in memory and no padding is used, 0 else Use this to check if a frame can be directly serialized or not. */ GAVL_PUBLIC int gavl_video_frame_continuous(const gavl_video_format_t * format, const gavl_video_frame_t * frame); /*! \ingroup video_frame \brief Extract one channel of a video frame into a grayscale image \param format Format of the source frame \param ch Channel to extract \param src Source frame \param dst Destination where the extracted channel will be copied This extracts one color channel into a grayscale image for separate processing. Use \ref gavl_get_color_channel_format to obtain the format for the destination frame. */ GAVL_PUBLIC int gavl_video_frame_extract_channel(const gavl_video_format_t * format, gavl_color_channel_t ch, const gavl_video_frame_t * src, gavl_video_frame_t * dst); /*! \ingroup video_frame \brief Insert one channel from a grayscale image into a video frame \param format Format of the source frame \param ch Channel to merge \param src Source frame (grayscale image containing one channel) \param dst Destination This inserts one color channel from a grayscale image into a video frame (overwriting the previous contents of that channel). Use \ref gavl_get_color_channel_format to obtain the format for the source grayscale frame. */ GAVL_PUBLIC int gavl_video_frame_insert_channel(const gavl_video_format_t * format, gavl_color_channel_t ch, const gavl_video_frame_t * src, gavl_video_frame_t * dst); /*! \ingroup video_frame \brief Check if 2 video frames are bit-identical \param format Format \param f1 First frame \param f2 Second frame \returns 1 if the frames are equal, 0 else Since 1.2.0 */ GAVL_PUBLIC int gavl_video_frames_equal(const gavl_video_format_t * format, const gavl_video_frame_t * f1, const gavl_video_frame_t * f2); GAVL_PUBLIC void gavl_video_frame_normalize_orientation(const gavl_video_format_t * in_format, const gavl_video_format_t * out_format, const gavl_video_frame_t * in_frame, gavl_video_frame_t * out_frame); GAVL_PUBLIC void gavl_video_frame_to_packet_metadata(const gavl_video_frame_t * frame, gavl_packet_t * pkt); GAVL_PUBLIC void gavl_packet_to_video_frame_metadata(const gavl_packet_t * p, gavl_video_frame_t * frame); GAVL_PUBLIC void gavl_video_frame_set_from_packet(gavl_video_frame_t * frame, const gavl_video_format_t * format, gavl_packet_t * p); /***************************** Conversion options ******************************/ /** \defgroup video_options Video conversion options * \ingroup video */ /** \defgroup video_conversion_flags Video conversion flags * \ingroup video_options */ /** \ingroup video_conversion_flags * \brief Force deinterlacing * * This option turns on deinterlacing by the converter in any case (i.e. also if the input format * pretends to be progressive or if the output format is interlaced). */ #define GAVL_FORCE_DEINTERLACE (1<<0) /** \ingroup video_conversion_flags * \brief Pass chroma planes to the convolver */ #define GAVL_CONVOLVE_CHROMA (1<<1) /** \ingroup video_conversion_flags * \brief Normalize convolution matrices passed to the scaler */ #define GAVL_CONVOLVE_NORMALIZE (1<<2) /** \ingroup video_conversion_flags * \brief Force chroma placement correction * * Force chroma placement correction and resampling using a scaler. * Usually this is done only for qualities above 3. */ #define GAVL_RESAMPLE_CHROMA (1<<3) /** \ingroup video_conversion_flags * \brief Force software processing. * * */ #define GAVL_FORCE_SW (1<<4) /** \ingroup video_options * Alpha handling mode * * Set the desired behaviour if the source format has a transparency channel but the * destination doesn't. */ typedef enum { GAVL_ALPHA_IGNORE = 0, /*!< Ignore alpha channel */ GAVL_ALPHA_BLEND_COLOR /*!< Blend over a specified background color */ } gavl_alpha_mode_t; /** \ingroup video_options * Deinterlace mode * * Specifies a deinterlacing mode */ typedef enum { GAVL_DEINTERLACE_NONE = 0, /*!< Don't care about interlacing */ GAVL_DEINTERLACE_COPY = 1, /*!< Take one field and copy it to the other */ GAVL_DEINTERLACE_SCALE = 2, /*!< Take one field and scale it vertically by 2 */ GAVL_DEINTERLACE_BLEND = 3 /*!< Linear blend fields together */ } gavl_deinterlace_mode_t; /** \ingroup video_options * \brief Specifies which field to drop when deinterlacing * * This is used for deinterlacing with GAVL_DEINTERLACE_COPY and GAVL_DEINTERLACE_SCALE. */ typedef enum { GAVL_DEINTERLACE_DROP_TOP, /*!< Drop top field, use bottom field */ GAVL_DEINTERLACE_DROP_BOTTOM, /*!< Drop bottom field, use top field */ } gavl_deinterlace_drop_mode_t; /** \ingroup video_options * Scaling algorithm */ typedef enum { GAVL_SCALE_AUTO, /*!< Take mode from conversion quality */ GAVL_SCALE_NEAREST, /*!< Nearest neighbor */ GAVL_SCALE_BILINEAR, /*!< Bilinear */ GAVL_SCALE_QUADRATIC, /*!< Quadratic */ GAVL_SCALE_CUBIC_BSPLINE, /*!< Cubic B-Spline */ GAVL_SCALE_CUBIC_MITCHELL,/*!< Cubic Mitchell-Netravali */ GAVL_SCALE_CUBIC_CATMULL, /*!< Cubic Catmull-Rom */ GAVL_SCALE_SINC_LANCZOS, /*!< Sinc with Lanczos window. Set order with \ref gavl_video_options_set_scale_order */ GAVL_SCALE_NONE, /*!< Used internally when the scaler is used as a convolver */ } gavl_scale_mode_t; /** \ingroup video_options * Antialiasing filters * * Specifies the antialiasing filter to be used * when downscaling images. * * Since 1.1.0 */ typedef enum { GAVL_DOWNSCALE_FILTER_AUTO = 0, //!< Auto selection based on quality GAVL_DOWNSCALE_FILTER_NONE, //!< Fastest method, might produce heavy aliasing artifacts GAVL_DOWNSCALE_FILTER_WIDE, //!< Widen the filter curve according to the scaling ratio. GAVL_DOWNSCALE_FILTER_GAUSS, //!< Do a Gaussian preblur } gavl_downscale_filter_t; /** \ingroup video_options * Opaque container for video conversion options * * You don't want to know what's inside. */ typedef struct gavl_video_options_s gavl_video_options_t; /* Default Options */ /*! \ingroup video_options * \brief Set all options to their defaults * \param opt Video options */ GAVL_PUBLIC void gavl_video_options_set_defaults(gavl_video_options_t * opt); /*! \ingroup video_options * \brief Create an options container * \returns Newly allocated udio options with default values * * Use this to store options, which will apply for more than * one converter instance. Applying the options will be done by * gavl_*_get_options() followed by gavl_video_options_copy(). */ GAVL_PUBLIC gavl_video_options_t * gavl_video_options_create(void); /*! \ingroup video_options * \brief Copy video options * \param dst Destination * \param src Source */ GAVL_PUBLIC void gavl_video_options_copy(gavl_video_options_t * dst, const gavl_video_options_t * src); /*! \ingroup video_options * \brief Destroy video options * \param opt Video options */ GAVL_PUBLIC void gavl_video_options_destroy(gavl_video_options_t * opt); /*! \ingroup video_options * \brief Set source and destination rectangles * \param opt Video options * \param src_rect Rectangular area in the source frame or NULL * \param dst_rect Rectangular area in the destination frame or NULL * * Set the source and destination rectangles the converter or scaler will operate on. * If you don't call this function, the rectangles will be set to the full image dimensions * of the source and destination formats respectively. If one rectangle is NULL, BOTH rectangles * will be cleared as if you never called this function. See \ref rectangle for convenience * functions, which calculate the proper rectangles in some typical playback or transcoding * situations. */ GAVL_PUBLIC void gavl_video_options_set_rectangles(gavl_video_options_t * opt, const gavl_rectangle_f_t * src_rect, const gavl_rectangle_i_t * dst_rect); /*! \ingroup video_options * \brief Get source and destination rectangles * \param opt Video options * \param src_rect Returns the rectangular area in the source frame * \param dst_rect Returns the rectangular area in the destination frame */ GAVL_PUBLIC void gavl_video_options_get_rectangles(const gavl_video_options_t * opt, gavl_rectangle_f_t * src_rect, gavl_rectangle_i_t * dst_rect); /*! \ingroup video_options * \brief Set the quality level for the converter * \param opt Video options * \param quality Quality level (see \ref quality) */ GAVL_PUBLIC void gavl_video_options_set_quality(gavl_video_options_t * opt, int quality); /*! \ingroup video_options * \brief Get the quality level for the converter * \param opt Video options * \returns Quality level (see \ref quality) */ GAVL_PUBLIC int gavl_video_options_get_quality(const gavl_video_options_t * opt); /*! \ingroup video_options * \brief Set the conversion flags * \param opt Video options * \param conversion_flags Conversion flags (see \ref video_conversion_flags) */ GAVL_PUBLIC void gavl_video_options_set_conversion_flags(gavl_video_options_t * opt, int conversion_flags); /*! \ingroup video_options * \brief Get the conversion flags * \param opt Video options * \returns Flags (see \ref video_conversion_flags) */ GAVL_PUBLIC int gavl_video_options_get_conversion_flags(const gavl_video_options_t * opt); /*! \ingroup video_options * \brief Set the alpha mode * \param opt Video options * \param alpha_mode Alpha mode */ GAVL_PUBLIC void gavl_video_options_set_alpha_mode(gavl_video_options_t * opt, gavl_alpha_mode_t alpha_mode); /*! \ingroup video_options * \brief Get the alpha mode * \param opt Video options * \returns Alpha mode */ GAVL_PUBLIC gavl_alpha_mode_t gavl_video_options_get_alpha_mode(const gavl_video_options_t * opt); /*! \ingroup video_options * \brief Set the scale mode * \param opt Video options * \param scale_mode Scale mode */ GAVL_PUBLIC void gavl_video_options_set_scale_mode(gavl_video_options_t * opt, gavl_scale_mode_t scale_mode); /*! \ingroup video_options * \brief Get the scale mode * \param opt Video options * \returns Scale mode */ GAVL_PUBLIC gavl_scale_mode_t gavl_video_options_get_scale_mode(const gavl_video_options_t * opt); /*! \ingroup video_options * \brief Set the scale order for GAVL_SCALE_SINC_LANCZOS * \param opt Video options * \param order Order (must be at least 4) */ GAVL_PUBLIC void gavl_video_options_set_scale_order(gavl_video_options_t * opt, int order); /*! \ingroup video_options * \brief Get the scale order for GAVL_SCALE_SINC_LANCZOS * \param opt Video options * \returns Order */ GAVL_PUBLIC int gavl_video_options_get_scale_order(const gavl_video_options_t * opt); /*! \ingroup video_options * \brief Set the background color for alpha blending * \param opt Video options * \param color Array of 3 float values (0.0 .. 1.0) in RGB order */ GAVL_PUBLIC void gavl_video_options_set_background_color(gavl_video_options_t * opt, const double * color); /*! \ingroup video_options * \brief Get the background color for alpha blending * \param opt Video options * \param color Returns 3 float values (0.0 .. 1.0) in RGB order */ GAVL_PUBLIC void gavl_video_options_get_background_color(const gavl_video_options_t * opt, double * color); /*! \ingroup video_ptions * \brief Set the deinterlace mode * \param opt Video options * \param deinterlace_mode Deinterlace mode */ GAVL_PUBLIC void gavl_video_options_set_deinterlace_mode(gavl_video_options_t * opt, gavl_deinterlace_mode_t deinterlace_mode); /*! \ingroup video_ptions * \brief Get the deinterlace mode * \param opt Video options * \returns Deinterlace mode */ GAVL_PUBLIC gavl_deinterlace_mode_t gavl_video_options_get_deinterlace_mode(const gavl_video_options_t * opt); /*! \ingroup video_options * \brief Set the deinterlace drop mode * \param opt Video options * \param deinterlace_drop_mode Deinterlace drop mode */ GAVL_PUBLIC void gavl_video_options_set_deinterlace_drop_mode(gavl_video_options_t * opt, gavl_deinterlace_drop_mode_t deinterlace_drop_mode); /*! \ingroup video_options * \brief Get the deinterlace drop mode * \param opt Video options * \returns Deinterlace drop mode */ GAVL_PUBLIC gavl_deinterlace_drop_mode_t gavl_video_options_get_deinterlace_drop_mode(const gavl_video_options_t * opt); /*! \ingroup video_options * \brief Set antialiasing filter for downscaling * \param opt Video options * \param f Filter type (see \ref gavl_downscale_filter_t) * * Since 1.1.0 */ GAVL_PUBLIC void gavl_video_options_set_downscale_filter(gavl_video_options_t * opt, gavl_downscale_filter_t f); /*! \ingroup video_options * \brief Get the antialiasing filter for downscaling * \param opt Video options * \returns antialiasing filter for downscaling * * Since 1.1.0 */ GAVL_PUBLIC gavl_downscale_filter_t gavl_video_options_get_downscale_filter(const gavl_video_options_t * opt); /*! \ingroup video_options * \brief Set blur factor for downscaling * \param opt Video options * \param f Factor * * Specifies an additional blur-factor for downscaling. The * default value of 1.0 calculates the preblur coefficients * according the the downsample factor. Larger values mean * more blurring (and slower scaling), smaller values mean * less blurring (and probably more aliasing artifacts), * 0 is equivalent to * calling \ref gavl_video_options_set_downscale_filter * with GAVL_DOWNSCALE_FILTER_NONE as argument. * * Since 1.1.0 */ GAVL_PUBLIC void gavl_video_options_set_downscale_blur(gavl_video_options_t * opt, float f); /*! \ingroup video_options * \brief Get blur factor for downscaling * \param opt Video options * \returns Factor * * Since 1.1.0 */ GAVL_PUBLIC float gavl_video_options_get_downscale_blur(const gavl_video_options_t * opt); /* Set an externally created thread pool. If this is not called, a private thread pool will be created if needed. This function has the advantage that one thread pool can be shared among different elements of a video pipeline, which will reduce the overhead */ GAVL_PUBLIC void gavl_video_options_set_thread_pool(gavl_video_options_t * opt, gavl_thread_pool_t * tp); GAVL_PUBLIC gavl_thread_pool_t * gavl_video_options_get_thread_pool(const gavl_video_options_t * opt); /*************************************************** * Create and destroy video converters ***************************************************/ /** \defgroup video_converter Video converter * \ingroup video * \brief Video format converter * * This is a generic converter, which converts video frames from one arbitrary format to * another. It can convert pixelformats, scale images and deinterlace. * * For quality levels of 3 and below, pixelformats are converted in one single step, * without the need for intermediate frames. * Quality levels of 4 and 5 will take care of chroma placement. For this, a * \ref gavl_video_scaler_t will be used. * * Deinterlacing is enabled if the input format is interlaced and the output format is * progressive and the deinterlace mode is something else than \ref GAVL_DEINTERLACE_NONE. * You can also force deinterlacing (\ref GAVL_FORCE_DEINTERLACE). * * Create a video converter with \ref gavl_video_converter_create. If you want to configure it, * get the options pointer with \ref gavl_video_converter_get_options and change the options * (See \ref video_options). * Call \ref gavl_video_converter_init to initialize the converter for the input and output * formats. Video frames are then converted with \ref gavl_video_convert. * * When you are done, you can either reinitialize the converter or destroy it with * \ref gavl_video_converter_destroy. */ /*! \ingroup video_converter * \brief Opaque video converter structure * * You don't want to know what's inside. */ typedef struct gavl_video_converter_s gavl_video_converter_t; /*! \ingroup video_converter * \brief Creates a video converter * \returns A newly allocated video converter */ GAVL_PUBLIC gavl_video_converter_t * gavl_video_converter_create(void); /*! \ingroup video_converter * \brief Destroys a video converter and frees all associated memory * \param cnv A video converter */ GAVL_PUBLIC void gavl_video_converter_destroy(gavl_video_converter_t*cnv); /************************************************** * Get options. Change the options with the gavl_video_options_set_* * functions above **************************************************/ /*! \ingroup video_converter * \brief gets options of a video converter * \param cnv A video converter * * After you called this, you can use the gavl_video_options_set_*() functions to change * the options. Options will become valid with the next call to \ref gavl_video_converter_init or \ref gavl_video_converter_reinit. */ GAVL_PUBLIC gavl_video_options_t * gavl_video_converter_get_options(gavl_video_converter_t*cnv); /*! \ingroup video_converter * \brief Initialize a video converter * \param cnv A video converter * \param input_format Input format * \param output_format Output format * \returns The number of single conversion steps necessary to perform the * conversion. It may be 0, in this case you must not use the converter and have to * pass the video frames directly. If something goes wrong (should never happen), * -1 is returned. * * This function can be called multiple times with one instance */ GAVL_PUBLIC int gavl_video_converter_init(gavl_video_converter_t* cnv, const gavl_video_format_t * input_format, const gavl_video_format_t * output_format); /*! \ingroup video_converter * \brief Reinitialize a video converter * \param cnv A video converter * \returns The number of single conversion steps necessary to perform the * conversion. It may be 0, in this case you must not use the converter and have to * pass the video frames directly. If something goes wrong (should never happen), * -1 is returned. * * This function can be called if the input and output formats didn't * change but the options did. */ GAVL_PUBLIC int gavl_video_converter_reinit(gavl_video_converter_t* cnv); /*************************************************** * Convert a frame ***************************************************/ /*! \ingroup video_converter * \brief Convert video * \param cnv A video converter * \param input_frame Input frame * \param output_frame Output frame */ GAVL_PUBLIC void gavl_video_convert(gavl_video_converter_t * cnv, const gavl_video_frame_t * input_frame, gavl_video_frame_t * output_frame); /*! \defgroup video_scaler Scaler * \ingroup video * \brief Video scaler * * The scaler does the elementary operation to take a rectangular area * of the source image and scale it into a specified rectangular area of the * destination image. The source rectangle has floating point coordinates, the destination * rectangle must have integer coordinates, which are aligned to chroma subsampling factors. * * The internal scale tables are created for each plane and field separately. This * means that: * * - We handle all flavors of chroma placement correctly * - We can convert chroma subsampling by scaling the chroma planes and copying * the luminance plane. * - Since the scaler knows about fields, it will scale interlaced frames field-wise * (not a good idea to scale interlaced frames vertically though). * - Simple deinterlacing (See \ref GAVL_DEINTERLACE_SCALE) * can be done by taking one source field and scale it vertically to the entire * destination frame. * * You can use the scaler directly (through \ref gavl_video_scaler_t). The generic video * converter (\ref gavl_video_converter_t) will create an internal scaler if necessary. */ /*! \ingroup video_scaler * \brief Opaque scaler structure. * * You don't want to know what's inside. */ typedef struct gavl_video_scaler_s gavl_video_scaler_t; /*! \ingroup video_scaler * \brief Create a video scaler * \returns A newly allocated video scaler */ GAVL_PUBLIC gavl_video_scaler_t * gavl_video_scaler_create(void); /*! \ingroup video_scaler * \brief Destroy a video scaler * \param scaler A video scaler */ GAVL_PUBLIC void gavl_video_scaler_destroy(gavl_video_scaler_t * scaler); /*! \ingroup video_scaler * \brief gets options of a scaler * \param scaler A video scaler * * After you called this, you can use the gavl_video_options_set_*() functions to change * the options. Options will become valid with the next call to \ref gavl_video_scaler_init */ GAVL_PUBLIC gavl_video_options_t * gavl_video_scaler_get_options(gavl_video_scaler_t * scaler); /*! \ingroup video_scaler * \brief Initialize a video scaler * \param scaler A video scaler * \param src_format Input format * \param dst_format Output format * \returns If something goes wrong (should never happen), -1 is returned. * * You should have equal pixelformats in the source and destination. * This function can be called multiple times with one instance. */ GAVL_PUBLIC int gavl_video_scaler_init(gavl_video_scaler_t * scaler, const gavl_video_format_t * src_format, const gavl_video_format_t * dst_format); /*! \ingroup video_scaler * \brief Initialize a video scaler as a generic convolver * \param scaler A video scaler * \param format Format (must be the same for input and output) * \param h_radius Horizontal radius * \param h_coeffs Horizontal coefficients * \param v_radius Vertical radius * \param v_coeffs Vertical coefficients * \returns If something goes wrong (should never happen), -1 is returned. * * This initialized a scaler for use as a generic convolver. * The h_radius and v_radius arguments denote the numbers of pixels, * which are taken in both left and right from the center pixel, i.e. * a value of 1 will result in a 3-tap filter. The coefficients * must be given for ALL taps (the convolver does not assume the * coefficients to be symmetric) * * This function can be called multiple times with one instance. */ GAVL_PUBLIC int gavl_video_scaler_init_convolve(gavl_video_scaler_t * scaler, const gavl_video_format_t * format, int h_radius, const float * h_coeffs, int v_radius, const float * v_coeffs); /*! \ingroup video_scaler * \brief Scale video * \param scaler A video scaler * \param input_frame Input frame * \param output_frame Output frame */ GAVL_PUBLIC void gavl_video_scaler_scale(gavl_video_scaler_t * scaler, const gavl_video_frame_t * input_frame, gavl_video_frame_t * output_frame); /*! \defgroup video_deinterlacer Deinterlacer * \ingroup video * \brief Deinterlacer * * Deinterlacing is supported either through the \ref gavl_video_converter_t * or using a low level deinterlacer */ /*! \ingroup video_deinterlacer * \brief Opaque deinterlacer structure. * * You don't want to know what's inside. */ typedef struct gavl_video_deinterlacer_s gavl_video_deinterlacer_t; /*! \ingroup video_deinterlacer * \brief Create a video deinterlacer * \returns A newly allocated video deinterlacer */ GAVL_PUBLIC gavl_video_deinterlacer_t * gavl_video_deinterlacer_create(void); /*! \ingroup video_deinterlacer * \brief Destroy a video deinterlacer * \param deinterlacer A video deinterlacer */ GAVL_PUBLIC void gavl_video_deinterlacer_destroy(gavl_video_deinterlacer_t * deinterlacer); /*! \ingroup video_deinterlacer * \brief gets options of a deinterlacer * \param deinterlacer A video deinterlacer * * After you called this, you can use the gavl_video_options_set_*() functions to change * the options. Options will become valid with the next call to \ref gavl_video_deinterlacer_init */ GAVL_PUBLIC gavl_video_options_t * gavl_video_deinterlacer_get_options(gavl_video_deinterlacer_t * deinterlacer); /*! \ingroup video_deinterlacer * \brief Initialize a video deinterlacer * \param deinterlacer A video deinterlacer * \param src_format Input format * \returns If something goes wrong (should never happen), -1 is returned. * * You should have equal pixelformats in the source and destination. * This function can be called multiple times with one instance. */ GAVL_PUBLIC int gavl_video_deinterlacer_init(gavl_video_deinterlacer_t * deinterlacer, const gavl_video_format_t * src_format); /*! \ingroup video_deinterlacer * \brief Deinterlace video * \param deinterlacer A video deinterlacer * \param input_frame Input frame * \param output_frame Output frame */ GAVL_PUBLIC void gavl_video_deinterlacer_deinterlace(gavl_video_deinterlacer_t * deinterlacer, const gavl_video_frame_t * input_frame, gavl_video_frame_t * output_frame); /************************************************** * Transparent overlays **************************************************/ /* Overlay struct */ /*! \defgroup video_blend Overlay blending * \ingroup video * * Overlay blending does one elemental operation: * Take a partly transparent overlay (in an alpha * capable pixelformat) and blend it onto a video frame. * Blending can be used for subtitles or OSD in playback applications, * and also for lots of weird effects. * In the current implementation, there is only one overlay * pixelformat, which can be blended onto a cetrtain destination format. * Therefore, the incoming overlay will be converted to the pixelformat * necessary for the conversion. For OSD and Subtitle applications, * this happens only once for each overlay, since the converted overlay is * remembered by the blend context. * * Note that gavl doesn't (and never will) support text subtitles. To * blend text strings onto a video frame, you must render it into a * gavl_overlay_t with some typesetting library (e.g. freetype) first. */ /*! \ingroup video_blend * \brief Overlay structure. * * Structure, which holds an overlay. If the sizes of source and destination * rectangles differ, the smaller one will be used. */ typedef gavl_video_frame_t gavl_overlay_t; /*! \ingroup video_blend * \brief Opaque blend context. * * You don't want to know what's inside. */ typedef struct gavl_overlay_blend_context_s gavl_overlay_blend_context_t; /*! \ingroup video_blend * \brief Create a blend context * \returns A newly allocated blend context. */ GAVL_PUBLIC gavl_overlay_blend_context_t * gavl_overlay_blend_context_create(void); /*! \ingroup video_blend * \brief Destroy a blend context and free all associated memory * \param ctx A blend context */ GAVL_PUBLIC void gavl_overlay_blend_context_destroy(gavl_overlay_blend_context_t * ctx); /*! \ingroup video_blend * \brief Get options from a blend context * \param ctx A blend context * \returns Options (See \ref video_options) */ GAVL_PUBLIC gavl_video_options_t * gavl_overlay_blend_context_get_options(gavl_overlay_blend_context_t * ctx); /*! \ingroup video_blend * \brief Initialize the blend context * \param ctx A blend context * \param frame_format The format of the destination frames * \param overlay_format The format of the overlays * * Initialize a blend context for a given frame- and overlayformat. * The image_width and image_height members for the overlay format represent * the maximum overlay size. The actual displayed size will be determined * by the ovl_rect of the overlay. * The overlay_format might be changed to something, which can directly be blended. * Make sure you have a \ref gavl_video_converter_t nearby. * */ GAVL_PUBLIC int gavl_overlay_blend_context_init(gavl_overlay_blend_context_t * ctx, const gavl_video_format_t * frame_format, gavl_video_format_t * overlay_format); /*! \ingroup video_blend * \brief Set a new overlay * \param ctx A blend context * \param ovl An overlay * * This function sets a new overlay, regardless of whether the last one has expired * or not. */ GAVL_PUBLIC void gavl_overlay_blend_context_set_overlay(gavl_overlay_blend_context_t * ctx, gavl_overlay_t * ovl); /*! \ingroup video_blend * \brief Blend overlay onto video frame * \param ctx A blend context * \param dst_frame Destination frame */ GAVL_PUBLIC void gavl_overlay_blend(gavl_overlay_blend_context_t * ctx, gavl_video_frame_t * dst_frame); /*! \ingroup video_blend * \brief Get the sink for overlays * \param ctx A blend context * \return A video sink */ GAVL_PUBLIC gavl_video_sink_t * gavl_overlay_blend_context_get_sink(gavl_overlay_blend_context_t * ctx); /*! \defgroup video_transform Image transformation * \ingroup video * * gavl includes a generic image transformation engine. * You pass a function pointer to the init function, which * transforms the destination coordinates into source * coordinates. * * The interpolation method is set with * \ref gavl_video_options_set_scale_mode, but not all modes * are supported. When initialized with an invalid scale mode, * the transformation engine will silently choose the closest one. * * @{ */ /** \brief Opaque image transformation engine. * * You don't want to know what's inside. */ typedef struct gavl_image_transform_s gavl_image_transform_t; /** \brief Function describing the method * \param priv User data * \param xdst X-coordinate of the destination * \param ydst Y-coordinate of the destination * \param xsrc Returns X-coordinate of the source * \param ysrc Returns Y-coordinate of the source * * All coordinates are in fractional pixels. 0,0 is the * upper left corner. Return negative values or values * larger than the dimension to signal that a pixel is outside * the source image. */ typedef void (*gavl_image_transform_func)(void * priv, double xdst, double ydst, double * xsrc, double * ysrc); /** \brief Create a transformation engine * \returns A newly allocated transformation engine * * Since 1.1.0. */ GAVL_PUBLIC gavl_image_transform_t * gavl_image_transform_create(void); /** \brief Destroy a transformation engine * \param t A transformation engine * Since 1.1.0. */ GAVL_PUBLIC void gavl_image_transform_destroy(gavl_image_transform_t * t); /** \brief Initialize a transformation engine * \param t A transformation engine * \param format Format (can be changed) * \param func Coordinate transform function * \param priv The priv argument for func * \returns 1 if the transform was successfully initialized, 0 else. * If you enabled multithreading support, func will be called * from multiple threads at the same time. Make sure, that it * doesn't access any global data. * * Return type was changed from void to in in version 1.1.2 * Under normal circumstances, this function always returns 1. * * Since 1.1.0. */ GAVL_PUBLIC int gavl_image_transform_init(gavl_image_transform_t * t, gavl_video_format_t * format, gavl_image_transform_func func, void * priv); /** \brief Transform an image * \param t A transformation engine * \param in_frame Input frame * \param out_frame Output frame * Since 1.1.0. */ GAVL_PUBLIC void gavl_image_transform_transform(gavl_image_transform_t * t, gavl_video_frame_t * in_frame, gavl_video_frame_t * out_frame); /** \brief Get transformation options * \param t A transformation engine * \returns Options * * After you called this, you can use the gavl_video_options_set_*() functions to change * the options. Options will become valid with the next call to \ref gavl_image_transform_init. * * Since 1.1.0. */ GAVL_PUBLIC gavl_video_options_t * gavl_image_transform_get_options(gavl_image_transform_t * t); /** * @} */ /*! \defgroup frame_table Frame table * \ingroup video * * This is a table, which tolds the complete timing information * of a video sequence. If is meant for e.g. for editing applications, * where the complete timing must be known in advance. * * A frame table is always associated with a \ref gavl_video_format_t, * which must be passed to most functions. * * @{ */ /** \brief frame table structure * * Since 1.1.2. */ typedef struct { int64_t offset; //!< Timestamp of the first frame /* Primary */ int64_t num_entries; //!< Number of entries int64_t entries_alloc; //!< Number of allocated entries (never touch this) struct { int64_t num_frames; //!< Number of frames int64_t duration; //!< Duration of each of these frames } * entries; //!< Frame table int num_timecodes; //!< Number of timecodes int timecodes_alloc; //!< Number of allocated timecodes (never touch this) struct { int64_t pts; //!< Timestamp of this frame gavl_timecode_t tc; //!< Timecode associated with this timestamp } * timecodes; //!< Timecode table /* Secondary */ } gavl_frame_table_t; /** \brief Create a frame table * \returns A newly allocated frame table * * Since 1.1.2. */ GAVL_PUBLIC gavl_frame_table_t * gavl_frame_table_create(void); /** \brief Create a frame table for an audio stream * \param samplerate Samplerate for this stream * \param offset PTS offset of this stream in samples * \param duration Sample count * \param fmt_ret If non-null, returns the timecode format * \returns A newly allocated frame table * * Since 1.1.2. */ GAVL_PUBLIC gavl_frame_table_t * gavl_frame_table_create_audio(int samplerate, int64_t offset, int64_t duration, gavl_timecode_format_t * fmt_ret); /** \brief Create a frame table for constant framerate video * \param offset Timestamp of the first frame * \param frame_duration Duration of each frame * \param num_frames Number of frames * \param start_timecode Timecode of the first frame (or GAVL_TIMECODE_UNDEFINED) * \returns A newly allocated frame table * * Since 1.1.2. */ GAVL_PUBLIC gavl_frame_table_t * gavl_frame_table_create_cfr(int64_t offset, int64_t frame_duration, int64_t num_frames, gavl_timecode_t start_timecode); /** \brief Copy a frame table to another * \param tab A frame table * \returns A newly allocated copy * * Since 1.1.2. */ GAVL_PUBLIC gavl_frame_table_t * gavl_frame_table_copy(const gavl_frame_table_t * tab); /** \brief Destroy a frame table and free all memory * \param t A frame table * * Since 1.1.2. */ GAVL_PUBLIC void gavl_frame_table_destroy(gavl_frame_table_t * t); /** \brief Append an entry * \param t A frame table * \param duration The duration of this frame * * Since 1.1.2. */ GAVL_PUBLIC void gavl_frame_table_append_entry(gavl_frame_table_t * t, int64_t duration); /** \brief Append a timecodes * \param t A frame table * \param pts Presentation time of that frame * \param tc Timecode of that frame * * Since 1.1.2. */ GAVL_PUBLIC void gavl_frame_table_append_timecode(gavl_frame_table_t * t, int64_t pts, gavl_timecode_t tc); /** \brief Convert a frame index to a timestamp * \param t A frame table * \param frame Frame index (starting with zero) * \param duration If non NULL, returns the duration of that frame * \returns The timestamp of that frame in video timescale or * GAVL_TIME_UNDEFINED if such frame doesn't exist. * * Since 1.1.2. */ GAVL_PUBLIC int64_t gavl_frame_table_frame_to_time(const gavl_frame_table_t * t, int64_t frame, int * duration); /** \brief Convert a timestamp to a frame index * \param t A frame table * \param time Time in stream timescale * \param start_time If non NULL, returns the start time of that frame * \returns The index that frame (starting with 0) * or -1 if such frame doesn't exist. * * Since 1.1.2. */ GAVL_PUBLIC int64_t gavl_frame_table_time_to_frame(const gavl_frame_table_t * t, int64_t time, int64_t * start_time); /** \brief Convert a timestamp to a timecode * \param t A frame table * \param time Time in stream timescale * \param start_time If non NULL, returns the start time of that frame * \param fmt Timecode format * \returns The interpolated timecode that frame or GAVL_TIMECODE_UNDEFINED if such frame doesn't exist. * * Since 1.1.2. */ GAVL_PUBLIC gavl_timecode_t gavl_frame_table_time_to_timecode(const gavl_frame_table_t * t, int64_t time, int64_t * start_time, const gavl_timecode_format_t * fmt); /** \brief Convert a timecode to a timestamp * \param t A frame table * \param tc Timecode * \param fmt Timecode format * \returns The pts corresponding to that timecode or GAVL_TIME_UNDEFINED if such frame doesn't exist. * * Since 1.1.2. */ GAVL_PUBLIC int64_t gavl_frame_table_timecode_to_time(const gavl_frame_table_t * t, gavl_timecode_t tc, const gavl_timecode_format_t * fmt); /** \brief Convert a frame index to a timecode * \param t A frame table * \param frame Frame index * \param start_time If non NULL, returns the start time of that frame * \param fmt Timecode format * \returns The interpolated timecode that frame or GAVL_TIMECODE_UNDEFINED if such frame doesn't exist. * * Since 1.1.2. */ GAVL_PUBLIC gavl_timecode_t gavl_frame_table_frame_to_timecode(const gavl_frame_table_t * t, int64_t frame, int64_t * start_time, const gavl_timecode_format_t * fmt); /** \brief get the total number of frames * \param t A frame table * \returns The total number of frames * * Since 1.1.2. */ GAVL_PUBLIC int64_t gavl_frame_table_num_frames(const gavl_frame_table_t * t); /** \brief get the total duration of all frames * \param t A frame table * \returns Total duration * * Since 1.1.2. */ GAVL_PUBLIC int64_t gavl_frame_table_duration(const gavl_frame_table_t * t); /** \brief get the end time of the last frame * \param t A frame table * \returns End time * * Since 1.1.2. */ GAVL_PUBLIC int64_t gavl_frame_table_end_time(const gavl_frame_table_t * t); /** \brief Save a frame table to a file * \param t Tab frame table * \param filename Filename * \returns 1 on success, 0 on error * * Since 1.1.2. */ GAVL_PUBLIC int gavl_frame_table_save(const gavl_frame_table_t * t, const char * filename); /** \brief Load a frame table from a file * \param filename Filename * \returns The loaded frame table or NULL if an error occurred * * Since 1.1.2. */ GAVL_PUBLIC gavl_frame_table_t * gavl_frame_table_load(const char * filename); /** \brief Dump a frame table to stderr for debugging * \param t A frame table * * Since 1.1.2. */ GAVL_PUBLIC void gavl_frame_table_dump(const gavl_frame_table_t * t); /** * @} */ /*! \defgroup video_frame_pool Video frame pool * \ingroup video * * This is used in scenarios where we want optimized * video pipelines. Allocated frames can be passed * forward or backwards in the pipeline while minimizing * the memcpy operations. * * The idea is to increment the refcount of a frame if * an application intends to use a frame beyond an actual * function call and decrement it when it's done with it. * * The frame pool takes care of the refcounts and allocates * frames on demand if necessary. * * @{ */ /** \brief Video frame pool * * Since 1.5.0. */ typedef struct gavl_video_frame_pool_s gavl_video_frame_pool_t; /** \brief Create a video frame pool * \param create_frame Function used to create one video frame * \param priv Private data to pass to create_frame * \returns A video frame pool */ GAVL_PUBLIC gavl_video_frame_pool_t * gavl_video_frame_pool_create(gavl_hw_context_t * hwctx); /** \brief Create a video frame pool * \param p A frame pool * \returns A video frame, either newly allocated or reused */ GAVL_PUBLIC gavl_video_frame_t * gavl_video_frame_pool_get(gavl_video_frame_pool_t *p); GAVL_PUBLIC void gavl_video_frame_pool_release(gavl_video_frame_t * frame); GAVL_PUBLIC int gavl_video_frame_pool_set_format(gavl_video_frame_pool_t *p, const gavl_video_format_t * fmt); GAVL_PUBLIC const gavl_video_format_t * gavl_video_frame_pool_get_format(const gavl_video_frame_pool_t *p); /** \brief Destroy a video frame pool * \param p A frame pool * * This also frees all frames, which were allocated by this * frame pool. */ GAVL_PUBLIC void gavl_video_frame_pool_destroy(gavl_video_frame_pool_t *p); /** \brief Reset a video frame pool * \param p A frame pool * * Set the reference counters of all frames to zero. * This is typically called before a seek operation in the stream. */ GAVL_PUBLIC void gavl_video_frame_pool_reset(gavl_video_frame_pool_t *p); /* Debayer routines */ #define GAVL_BAYER_GREEN_FIRST (1<<0) #define GAVL_BAYER_BLUE_LINE (1<<1) // GB // RG #define GAVL_BAYER_GBRG (GAVL_BAYER_GREEN_FIRST|GAVL_BAYER_BLUE_LINE) // GR // BG #define GAVL_BAYER_GRBG (GAVL_BAYER_GREEN_FIRST) // BG // GR #define GAVL_BAYER_BGGR (GAVL_BAYER_BLUE_LINE) // RG // GB #define GAVL_BAYER_RGGB 0 GAVL_PUBLIC void gavl_video_frame_debayer(gavl_video_options_t * opt, gavl_video_frame_t * src, gavl_video_frame_t * dst, int bayer_format, gavl_video_format_t * dst_format); /** * @} */ #ifdef __cplusplus } #endif #endif /* GAVL_H_INCLUDED */ bplaum-gavl-b9385e3/include/gavl/gavl_version.h.in000066400000000000000000000007121513252040200221070ustar00rootroot00000000000000#ifndef __GAVL_VERSION_H_ #define __GAVL_VERSION_H_ #define GAVL_VERSION "@GAVL_VERSION@" #define GAVL_VERSION_MAJOR @GAVL_VERSION_MAJOR@ #define GAVL_VERSION_MINOR @GAVL_VERSION_MINOR@ #define GAVL_VERSION_MICRO @GAVL_VERSION_MICRO@ #define GAVL_MAKE_BUILD(a,b,c) ((a << 16) + (b << 8) + c) #define GAVL_BUILD \ GAVL_MAKE_BUILD(GAVL_VERSION_MAJOR, \ GAVL_VERSION_MINOR, \ GAVL_VERSION_MICRO) #endif // __GAVL_VERSION_H_ bplaum-gavl-b9385e3/include/gavl/gavldefs.h000066400000000000000000000022151513252040200205770ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #ifndef GAVLDEFS_H_INCLUDED #define GAVLDEFS_H_INCLUDED #ifdef DLLEXPORT #define GAVL_PUBLIC __declspec(dllexport) #else #define GAVL_PUBLIC __attribute__ ((visibility("default"))) #endif #endif // GAVLDEFS_H_INCLUDED bplaum-gavl-b9385e3/include/gavl/gavldsp.h000066400000000000000000000500031513252040200204420ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #ifndef GAVLDSP_H_INCLUDED #define GAVLDSP_H_INCLUDED #include /** \defgroup dsp DSP Context * \brief DSP Context * * In addition to the higher level gavl converters, * gavl provides some low-level dsp routines. * They can be used for writing filters or codecs. * The DSP context is initialized with a quality parameter * (see \ref quality), which selects among various versions * of a function. * * @{ */ /** \brief Opaque DSP context * * You don't want to know, what's inside here. */ typedef struct gavl_dsp_context_s gavl_dsp_context_t; /** \brief Function table * * This structure contains pointers to the available DSP * functions. */ typedef struct { /** \brief Get the sum of absolute differences (RGB/BGR15) * \param src_1 Plane 1 * \param src_2 Plane 2 * \param stride_1 Byte distance between scanlines for src_1 * \param stride_2 Byte distance between scanlines for src_2 * \param w Width * \param h Height * \returns The sum of absolute differences * * The RGB values will be scaled to 8 bit before the * differences are calculated. */ int (*sad_rgb15)(const uint8_t * src_1, const uint8_t * src_2, int stride_1, int stride_2, int w, int h); /** \brief Get the sum of absolute differences (RGB/BGR16) * \param src_1 Plane 1 * \param src_2 Plane 2 * \param stride_1 Byte distance between scanlines for src_1 * \param stride_2 Byte distance between scanlines for src_2 * \param w Width * \param h Height * \returns The sum of absolute differences * * The RGB values will be scaled to 8 bit before the * differences are calculated. */ int (*sad_rgb16)(const uint8_t * src_1, const uint8_t * src_2, int stride_1, int stride_2, int w, int h); /** \brief Get the sum of absolute differences (8 bit) * \param src_1 Plane 1 * \param src_2 Plane 2 * \param stride_1 Byte distance between scanlines for src_1 * \param stride_2 Byte distance between scanlines for src_2 * \param w Width * \param h Height * \returns The sum of absolute differences */ int (*sad_8)(const uint8_t * src_1, const uint8_t * src_2, int stride_1, int stride_2, int w, int h); /** \brief Get the sum of absolute differences (16 bit) * \param src_1 Plane 1 * \param src_2 Plane 2 * \param stride_1 Byte distance between scanlines for src_1 * \param stride_2 Byte distance between scanlines for src_2 * \param w Width * \param h Height * \returns The sum of absolute differences */ int (*sad_16)(const uint8_t * src_1, const uint8_t * src_2, int stride_1, int stride_2, int w, int h); /** \brief Get the sum of absolute differences (float) * \param src_1 Plane 1 * \param src_2 Plane 2 * \param stride_1 Byte distance between scanlines for src_1 * \param stride_2 Byte distance between scanlines for src_2 * \param w Width * \param h Height * \returns The sum of absolute differences */ float (*sad_f)(const uint8_t * src_1, const uint8_t * src_2, int stride_1, int stride_2, int w, int h); /** \brief Average 2 scanlines (RGB/BGR15) * \param src_1 Scanline 1 * \param src_2 Scanline 2 * \param dst Destination * \param num Number of pixels */ void (*average_rgb15)(const uint8_t * src_1, const uint8_t * src_2, uint8_t * dst, int num); /** \brief Average 2 scanlines (RGB/BGR16) * \param src_1 Scanline 1 * \param src_2 Scanline 2 * \param dst Destination * \param num Number of pixels */ void (*average_rgb16)(const uint8_t * src_1, const uint8_t * src_2, uint8_t * dst, int num); /** \brief Average 2 scanlines (8 bit) * \param src_1 Scanline 1 * \param src_2 Scanline 2 * \param dst Destination * \param num Number of bytes */ void (*average_8)(const uint8_t * src_1, const uint8_t * src_2, uint8_t * dst, int num); /** \brief Average 2 scanlines (16 bit) * \param src_1 Scanline 1 * \param src_2 Scanline 2 * \param dst Destination * \param num Number of shorts */ void (*average_16)(const uint8_t * src_1, const uint8_t * src_2, uint8_t * dst, int num); /** \brief Average 2 scanlines (float) * \param src_1 Scanline 1 * \param src_2 Scanline 2 * \param dst Destination * \param num Number of floats */ void (*average_f)(const uint8_t * src_1, const uint8_t * src_2, uint8_t * dst, int num); /** \brief Interpolate 2 scanlines (RGB/BGR15) * \param src_1 Scanline 1 * \param src_2 Scanline 2 * \param dst Destination * \param num Number of pixels * \param fac Factor for src_1 (0.0 .. 1.0) * * Sets the destination to src_1 * fac + src_2 * (1.0-fac) */ void (*interpolate_rgb15)(const uint8_t * src_1, const uint8_t * src_2, uint8_t * dst, int num, float); /** \brief Interpolate 2 scanlines (RGB/BGR16) * \param src_1 Scanline 1 * \param src_2 Scanline 2 * \param dst Destination * \param num Number of pixels * \param fac Factor for src_1 (0.0 .. 1.0) * * Sets the destination to src_1 * fac + src_2 * (1.0-fac) */ void (*interpolate_rgb16)(const uint8_t * src_1, const uint8_t * src_2, uint8_t * dst, int num, float fac); /** \brief Interpolate 2 scanlines (8 bit) * \param src_1 Scanline 1 * \param src_2 Scanline 2 * \param dst Destination * \param num Number of bytes * \param fac Factor for src_1 (0.0 .. 1.0) * * Sets the destination to src_1 * fac + src_2 * (1.0-fac) */ void (*interpolate_8)(const uint8_t * src_1, const uint8_t * src_2, uint8_t * dst, int num, float fac); /** \brief Interpolate 2 scanlines (16 bit) * \param src_1 Scanline 1 * \param src_2 Scanline 2 * \param dst Destination * \param num Number of shorts * \param fac Factor for src_1 (0.0 .. 1.0) * * Sets the destination to src_1 * fac + src_2 * (1.0-fac) */ void (*interpolate_16)(const uint8_t * src_1, const uint8_t * src_2, uint8_t * dst, int num, float fac); /** \brief Interpolate 2 scanlines (float) * \param src_1 Scanline 1 * \param src_2 Scanline 2 * \param dst Destination * \param num Number of floats * \param fac Factor for src_1 (0.0 .. 1.0) * * Sets the destination to src_1 * fac + src_2 * (1.0-fac) */ void (*interpolate_f)(const uint8_t * src_1, const uint8_t * src_2, uint8_t * dst, int num, float fac); /** \brief Do 16 bit endian swapping * \param ptr Pointer to the data * \param len Len in 16 bit words */ void (*bswap_16)(void * ptr, int len); /** \brief Do 32 byte endian swapping * \param ptr Pointer to the data * \param len Len in 32 bit doublewords */ void (*bswap_32)(void * ptr, int len); /** \brief Do 64 byte endian swapping * \param ptr Pointer to the data * \param len Len in 64 bit quadwords */ void (*bswap_64)(void * ptr, int len); /** \brief Add 2 uint8_t vectors * \param src1 Source 1 * \param src2 Source 2 * \param dst Destination * \param num Number of entries * * src1 and/or src2 can be identical to dst */ void (*add_u8)(const void * src1, const void * src2, void * dst, int num); /** \brief Add 2 uint8_t vectors (for audio stored as unsigned) * \param src1 Source 1 * \param src2 Source 2 * \param dst Destination * \param num Number of entries * * src1 and/or src2 can be identical to dst */ void (*add_u8_s)(const void * src1, const void * src2, void * dst, int num); /** \brief Add 2 int8_t vectors * \param src1 Source 1 * \param src2 Source 2 * \param dst Destination * \param num Number of entries * * src1 and/or src2 can be identical to dst */ void (*add_s8)(const void * src1, const void * src2, void * dst, int num); /** \brief Add 2 uint16_t vectors * \param src1 Source 1 * \param src2 Source 2 * \param dst Destination * \param num Number of entries * * src1 and/or src2 can be identical to dst */ void (*add_u16)(const void * src1, const void * src2, void * dst, int num); /** \brief Add 2 uint16_t vectors (for audio stored as unsigned) * \param src1 Source 1 * \param src2 Source 2 * \param dst Destination * \param num Number of entries * * src1 and/or src2 can be identical to dst */ void (*add_u16_s)(const void * src1, const void * src2, void * dst, int num); /** \brief Add 2 int16_t vectors * \param src1 Source 1 * \param src2 Source 2 * \param dst Destination * \param num Number of entries * * src1 and/or src2 can be identical to dst */ void (*add_s16)(const void * src1, const void * src2, void * dst, int num); /** \brief Add 2 int32_t vectors * \param src1 Source 1 * \param src2 Source 2 * \param dst Destination * \param num Number of entries * * src1 and/or src2 can be identical to dst */ void (*add_s32)(const void * src1, const void * src2, void * dst, int num); /** \brief Add 2 float vectors * \param src1 Source 1 * \param src2 Source 2 * \param dst Destination * \param num Number of entries * * src1 and/or src2 can be identical to dst */ void (*add_float)(const void * src1, const void * src2, void * dst, int num); /** \brief Add 2 float vectors * \param src1 Source 1 * \param src2 Source 2 * \param dst Destination * \param num Number of entries * * src1 and/or src2 can be identical to dst */ void (*add_double)(const void * src1, const void * src2, void * dst, int num); /** \brief Subtract 2 uint8_t vectors * \param src1 Source 1 * \param src2 Source 2 * \param dst Destination * \param num Number of entries * * src1 and/or src2 can be identical to dst */ void (*sub_u8)(const void * src1, const void * src2, void * dst, int num); /** \brief Subtract 2 uint8_t vectors (for audio stored as unsigned) * \param src1 Source 1 * \param src2 Source 2 * \param dst Destination * \param num Number of entries * * src1 and/or src2 can be identical to dst */ void (*sub_u8_s)(const void * src1, const void * src2, void * dst, int num); /** \brief Subtract 2 int8_t vectors * \param src1 Source 1 * \param src2 Source 2 * \param dst Destination * \param num Number of entries * * src1 and/or src2 can be identical to dst */ void (*sub_s8)(const void * src1, const void * src2, void * dst, int num); /** \brief Subtract 2 uint16_t vectors * \param src1 Source 1 * \param src2 Source 2 * \param dst Destination * \param num Number of entries * * src1 and/or src2 can be identical to dst */ void (*sub_u16)(const void * src1, const void * src2, void * dst, int num); /** \brief Subtract 2 uint16_t vectors (for audio stored as unsigned) * \param src1 Source 1 * \param src2 Source 2 * \param dst Destination * \param num Number of entries * * src1 and/or src2 can be identical to dst */ void (*sub_u16_s)(const void * src1, const void * src2, void * dst, int num); /** \brief Subtract 2 int16_t vectors * \param src1 Source 1 * \param src2 Source 2 * \param dst Destination * \param num Number of entries * * src1 and/or src2 can be identical to dst */ void (*sub_s16)(const void * src1, const void * src2, void * dst, int num); /** \brief Subtract 2 int32_t vectors * \param src1 Source 1 * \param src2 Source 2 * \param dst Destination * \param num Number of entries * * src1 and/or src2 can be identical to dst */ void (*sub_s32)(const void * src1, const void * src2, void * dst, int num); /** \brief Subtract 2 float vectors * \param src1 Source 1 * \param src2 Source 2 * \param dst Destination * \param num Number of entries * * src1 and/or src2 can be identical to dst */ void (*sub_float)(const void * src1, const void * src2, void * dst, int num); /** \brief Subtract 2 float vectors * \param src1 Source 1 * \param src2 Source 2 * \param dst Destination * \param num Number of entries * * src1 and/or src2 can be identical to dst */ void (*sub_double)(const void * src1, const void * src2, void * dst, int num); /** \brief Shift up * \param ptr Pointer * \param len Number of 16 bit elements * \param bits Number of bits to shift */ void (*shift_up_16)(void * ptr, int num, int bits); /** \brief Shift down * \param ptr Pointer * \param len Number of 16 bit elements * \param bits Number of bits to shift */ void (*shift_down_16)(void * ptr, int num, int bits); /** \brief Shift up and copy * \param src Source * \param dst Destination * \param len Number of 16 bit elements * \param bits Number of bits to shift */ void (*shift_up_copy_16)(void * dst, const void * src, int num, int bits); /** \brief Shift down * \param src Source * \param dst Destination * \param len Number of 16 bit elements * \param bits Number of bits to shift */ void (*shift_down_copy_16)(void * dst, const void * src, int num, int bits); /** \brief Shuffle bytes in 4 byte words * \param ptr Pointer * \param len Number of 32 bit elements * \param mask 4 bytes with sources indices. 0x80 means clear. */ void (*shuffle_8_4)(void * dst, const void * src, int num, int * indices); /** \brief Shuffle 16 bit words in groups of 4 * \param ptr Pointer * \param len Number of 64 bit elements * \param mask 4 bytes with sources indices. 0x80 means clear. */ void (*shuffle_16_4)(void * dst, const void * src, int num, int * indices); } gavl_dsp_funcs_t; /** \brief Create a DSP context * \returns A newly allocated DSP context * * This initialized a DSP context with all functions * chosen according to the default quality value. */ GAVL_PUBLIC gavl_dsp_context_t * gavl_dsp_context_create(void); /** \brief Set the quality for a DSP context * \param ctx A DSP context * \param q A quality level * * See \ref quality. */ GAVL_PUBLIC void gavl_dsp_context_set_quality(gavl_dsp_context_t * ctx, int q); /** \brief Set the acceleration flags for a DSP context * \param ctx A DSP context * \param flags Flags * * By default the flags are detected automatically and * functions are chosen based on the quality */ GAVL_PUBLIC void gavl_dsp_context_set_accel_flags(gavl_dsp_context_t * ctx, int flags); /** \brief Get the functions * \param ctx A DSP context * \returns The function table * * The address of the table itself won't change by a call * to \ref gavl_dsp_context_set_quality, but the contained * functions will. */ GAVL_PUBLIC gavl_dsp_funcs_t * gavl_dsp_context_get_funcs(gavl_dsp_context_t * ctx); /** \brief Destroy a DSP context * \param ctx A DSP context */ GAVL_PUBLIC void gavl_dsp_context_destroy(gavl_dsp_context_t * ctx); /** @} */ /** \defgroup dsputils DSP Utilities * \ingroup dsp * \brief DSP Utilities * * These are some utility functions, which use a DSP context but * operate on higher level structures like video frames. * As usual, these are supported for any format. * * @{ */ /** \brief Do a linear interpolation of a video frame * \param ctx A DSP context * \param format Video format * \param src_1 Frame 1 * \param src_2 Frame 2 * \param dst Destination frame * \param factor Interpolation factor * \returns 1 on success, 0 if an error occurred * * If factor is 1.0, dst will be equal to src1, * if factor is 0.0, dst will be equal to src2. * * If the quality is at least GAVL_QUALITY_MIN, this function * never fails. */ GAVL_PUBLIC int gavl_dsp_interpolate_video_frame(gavl_dsp_context_t * ctx, gavl_video_format_t * format, gavl_video_frame_t * src_1, gavl_video_frame_t * src_2, gavl_video_frame_t * dst, float factor); /*! \brief Swap endianness an audio frame. \param ctx An initialized dsp context \param frame An audio frame \param format The format of the frame \returns 1 on success, 0 if an error occurred If the quality is at least GAVL_QUALITY_MIN, this function never fails. */ GAVL_PUBLIC int gavl_dsp_audio_frame_swap_endian(gavl_dsp_context_t * ctx, gavl_audio_frame_t * frame, const gavl_audio_format_t * format); /*! \brief Swap endianness a video frame. \param ctx An initialized dsp context \param frame A video frame \param format The format of the frame \returns 1 on success, 0 if an error occurred This function swaps endianness for pixelformats, which have multibyte numbers as components. For 32 bit long formats with 8 bit components, it swaps the pixels as if they were 32 bit integers. For all other formats, it does nothing. If the quality is at least GAVL_QUALITY_MIN, this function never fails. */ GAVL_PUBLIC int gavl_dsp_video_frame_swap_endian(gavl_dsp_context_t * ctx, gavl_video_frame_t * frame, const gavl_video_format_t * format); /*! \brief Shift bits in a video frame. \param ctx An initialized dsp context \param frame A video frame \param format The format of the frame \param bits Number of bits to shift each component This shifts the bits of all components. It works only for 16 bit formats right now. If bits is larger than zero, the components are shifted left (resulting in larger numbers). If bits is smaller than zero, the components are shifted right (resulting in smaller numbers). Since 1.5.0 */ GAVL_PUBLIC void gavl_dsp_video_frame_shift_bits(gavl_dsp_context_t * ctx, gavl_video_frame_t * frame, const gavl_video_format_t * format, int bits); GAVL_PUBLIC void gavl_dsp_video_frame_shift_bits_copy(gavl_dsp_context_t * ctx, gavl_video_frame_t * dst, const gavl_video_frame_t * src, const gavl_video_format_t * format, int bits); void gavl_dsp_video_frame_shuffle_4(gavl_dsp_context_t * ctx, gavl_video_frame_t * frame, const gavl_video_format_t * format, int * src_indices); void gavl_dsp_video_frame_shuffle_4_copy(gavl_dsp_context_t * ctx, gavl_video_frame_t * dst, const gavl_video_frame_t * src, const gavl_video_format_t * format, int * src_indices); /** * @} */ #endif // GAVLDSP_H_INCLUDED bplaum-gavl-b9385e3/include/gavl/gavlsocket.h000066400000000000000000000153271513252040200211560ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #ifndef GAVLSOCKET_H_INCLUDED #define GAVLSOCKET_H_INCLUDED #include #include #include #include /* Opaque address structure so we can support IPv6 in the future */ #define GAVL_SOCKET_ADDR_STR_LEN (46+3+5+1) // INET6_ADDRSTRLEN + []: + port + \0 typedef struct gavl_socket_address_s gavl_socket_address_t; GAVL_PUBLIC gavl_socket_address_t * gavl_socket_address_create(void); GAVL_PUBLIC void gavl_socket_address_destroy(gavl_socket_address_t *); GAVL_PUBLIC void gavl_socket_address_copy(gavl_socket_address_t * dst, const gavl_socket_address_t * src); /* Get address from hostname and port */ GAVL_PUBLIC int gavl_socket_address_set(gavl_socket_address_t *, const char * host, int port, int socktype); GAVL_PUBLIC int gavl_socket_address_set_async(gavl_socket_address_t *, const char * host, int port, int socktype); GAVL_PUBLIC int gavl_socket_address_set_async_done(gavl_socket_address_t *, int timeout); GAVL_PUBLIC void gavl_socket_address_set_async_cancel(gavl_socket_address_t *); GAVL_PUBLIC void gavl_socket_address_set_port(gavl_socket_address_t * addr, int port); GAVL_PUBLIC int gavl_socket_address_get_port(gavl_socket_address_t * addr); // str must be at least GAVL_SOCKET_ADDR_STR_LEN bytes long GAVL_PUBLIC char * gavl_socket_address_to_string(const gavl_socket_address_t * addr, char * str); GAVL_PUBLIC int gavl_socket_address_from_string(gavl_socket_address_t * addr, const char * str1); #define GAVL_NI_LOOPBACK (1<<0) // Return loopback interfaces #define GAVL_NI_IPV4 (1<<1) // Return IPV4 capable interfaces #define GAVL_NI_IPV6 (1<<2) // Return IPV6 capable interfaces #define GAVL_NI_ALL (~0) GAVL_PUBLIC gavl_socket_address_t ** gavl_get_network_interfaces(int flags); GAVL_PUBLIC void gavl_socket_address_destroy_array(gavl_socket_address_t ** addr); GAVL_PUBLIC char * gavl_interface_name_from_address(const gavl_socket_address_t * a1); GAVL_PUBLIC int gavl_interface_index_from_address(const gavl_socket_address_t * a1); /* Reverse DNS */ GAVL_PUBLIC char * gavl_socket_address_get_hostname(gavl_socket_address_t * addr); /* Returns AF_* macros */ GAVL_PUBLIC int gavl_socket_address_get_address_family(gavl_socket_address_t * addr); GAVL_PUBLIC gavl_socket_address_t ** gavl_lookup_hostname_full(const char * hostname, int socktype); GAVL_PUBLIC void gavl_socket_address_free_array(gavl_socket_address_t ** addr); /* Wildcard can be "0.0.0.0" for IPV4 or "::" for IPV6 */ GAVL_PUBLIC int gavl_socket_address_set_local(gavl_socket_address_t * a, int port, const char * wildcard); /* * Client connection (stream oriented) * timeout is in milliseconds */ GAVL_PUBLIC int gavl_socket_connect_inet(gavl_socket_address_t*, int timeout); /* Check if a previous call with zero timeout succeeded Return value: -1: Error, 0: In Progress, 1. Connected */ GAVL_PUBLIC int gavl_socket_connect_inet_complete(int fd, int milliseconds); GAVL_PUBLIC int gavl_socket_connect_unix(const char *); GAVL_PUBLIC void gavl_socket_disconnect(int); /* Get last error */ GAVL_PUBLIC int gavl_socket_get_errno(int fd); /* Wait for a specified time until the socket is readable. If yes, try to peek one byte from the socket (leaving it in the receive buffer). It zero bytes are read, the remote end disconnected */ GAVL_PUBLIC int gavl_socket_is_disconnected(int fd, int timeout); /* Server socket (stream oriented) */ // #define GAVL_SOCKET_IPV6 (1<<0) #define GAVL_SOCKET_LOOPBACK (1<<1) #define GAVL_SOCKET_REUSEADDR (1<<2) GAVL_PUBLIC int gavl_listen_socket_create_inet(gavl_socket_address_t * addr, int port, int queue_size, int flags); GAVL_PUBLIC int gavl_listen_socket_create_unix(const char * name, int queue_size); GAVL_PUBLIC int gavl_unix_socket_create(char ** name, int queue_size); /* Accept a new client connection, return -1 if there is none */ GAVL_PUBLIC int gavl_listen_socket_accept(int sock, int milliseconds, gavl_socket_address_t * from); GAVL_PUBLIC void gavl_listen_socket_destroy(int); GAVL_PUBLIC int gavl_socket_get_address(int sock, gavl_socket_address_t * local, gavl_socket_address_t * remote); /* UDP */ GAVL_PUBLIC int gavl_udp_socket_create(gavl_socket_address_t * addr); GAVL_PUBLIC int gavl_udp_socket_connect(int fd, gavl_socket_address_t * dst); GAVL_PUBLIC int gavl_udp_socket_create_multicast(gavl_socket_address_t * multicast_addr, gavl_socket_address_t * interface_addr); GAVL_PUBLIC int gavl_udp_socket_set_multicast_interface(int fd, gavl_socket_address_t * interface_addr); GAVL_PUBLIC int gavl_udp_socket_receive(int fd, uint8_t * data, int data_size, gavl_socket_address_t * addr); GAVL_PUBLIC int gavl_udp_socket_send(int fd, const uint8_t * data, int data_size, gavl_socket_address_t * addr); /* I/0 functions */ GAVL_PUBLIC int gavl_socket_read_data(int fd, uint8_t * data, int len, int milliseconds); GAVL_PUBLIC int gavl_socket_read_data_noblock(int fd, uint8_t * data, int len); GAVL_PUBLIC int gavl_socket_write_data(int fd, const void * data, int len); GAVL_PUBLIC int gavl_socket_write_data_nonblock(int fd, const uint8_t * data, int len); GAVL_PUBLIC int gavl_socket_is_local(int fd); GAVL_PUBLIC int gavl_socket_is_unix(int fd); GAVL_PUBLIC int gavl_socket_send_file(int fd, const char * filename, int64_t offset, int64_t len); GAVL_PUBLIC int gavl_socket_send_fds(int socket, const int * fds, int n); GAVL_PUBLIC int gavl_socket_recv_fds(int socket, int * fds, int n); GAVL_PUBLIC void gavl_socket_close(int fd); #endif // GAVLSOCKET_H_INCLUDED bplaum-gavl-b9385e3/include/gavl/gavltime.h000066400000000000000000000203741513252040200206220ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #ifndef GAVLTIME_H_INCLUDED #define GAVLTIME_H_INCLUDED #ifdef __cplusplus extern "C" { #endif #include #include /*! \defgroup time Time */ /*! \ingroup time */ #define GAVL_TIME_SCALE 1000000 /*!< Generic time scale: Microsecond tics */ /*! \ingroup time */ #define GAVL_TIME_UNDEFINED 0x8000000000000000LL /*!< Unknown or undefined time */ /*! \ingroup time */ #define GAVL_TIME_MAX 0x7fffffffffffffffLL /*!< Maximum possible value */ /*! \ingroup time * \brief Times in gavl are 64 bit signed integers * */ typedef int64_t gavl_time_t; /* Utility functions */ /*! \ingroup time * \brief Convert a number of samples to a time for a given samplerate */ GAVL_PUBLIC gavl_time_t gavl_samples_to_time(int samplerate, int64_t samples); /*! \ingroup time * \brief Convert a time to a number of audio samples for a given samplerate * \param samplerate Samplerate * \param time Time * \returns Number of audio samples */ GAVL_PUBLIC int64_t gavl_time_to_samples(int samplerate, gavl_time_t time); /*! \ingroup time * \brief Convert a number of video frames to a time for a given framerate */ GAVL_PUBLIC gavl_time_t gavl_frames_to_time(int rate_num, int rate_den, int64_t frames); /*! \ingroup time * \brief Convert a time to a number of video frames for a given framerate * \param rate_num Numerator of the framerate * \param rate_den Denominator of the framerate * \param time Time * \returns Number of frames */ GAVL_PUBLIC int64_t gavl_time_to_frames(int rate_num, int rate_den, gavl_time_t time); /*! \ingroup time * \brief Convert a gavl time to a time scaled by another base * \param scale Time scale * \param time Time scaled by \ref GAVL_TIME_SCALE * \returns Time scaled by scale */ GAVL_PUBLIC int64_t gavl_time_scale(int scale, gavl_time_t time); /*! \ingroup time * \brief Convert a time scaled by another base to a gavl time * \param scale Time scale * \param time Time scaled by scale * \returns Time scaled by \ref GAVL_TIME_SCALE */ GAVL_PUBLIC gavl_time_t gavl_time_unscale(int scale, int64_t time); /*! \ingroup time * \brief Convert a time scaled by one base to a time scaled by another base * \param scale1 Initial time base * \param scale2 New time base * \param time Time scaled by scale1 * \returns Time scaled by scale2 */ GAVL_PUBLIC int64_t gavl_time_rescale(int scale1, int scale2, int64_t time); /*! \ingroup time * \brief Convert seconds (as double) to a gavl time * \param s Seconds as double * \returns Integer time scaled by \ref GAVL_TIME_SCALE */ #define gavl_seconds_to_time(s) (gavl_time_t)((s)*(double)(GAVL_TIME_SCALE)) /*! \ingroup time * \brief Convert a gavl time to seconds (as double) * \param t Integer time scaled by \ref GAVL_TIME_SCALE * \returns Seconds as double */ #define gavl_time_to_seconds(t) ((double)(t)/(double)(GAVL_TIME_SCALE)) /*! \ingroup time * \brief Sleep for a specified time * \param time Time after which execution of the current thread is resumed */ GAVL_PUBLIC void gavl_time_delay(gavl_time_t * time); /*! \ingroup time * \brief Length of the string passed to \ref gavl_time_prettyprint */ #define GAVL_TIME_STRING_LEN 11 /*! \ingroup time * \brief Convert a time to a string * \param time Time to print * \param str String * * This prints a gavl_time into ASCII string if a format suitable for player displays. * The format is: -hhh:mm:ss */ GAVL_PUBLIC void gavl_time_prettyprint(gavl_time_t time, char str[GAVL_TIME_STRING_LEN]); /* * Same as gavl_time_prettyprint but prints just hh:mm:ss in 24h format, * which are converted to local time from UTC */ GAVL_PUBLIC void gavl_time_prettyprint_local(gavl_time_t gavl_time, char str[GAVL_TIME_STRING_LEN]); /*! \ingroup time * \brief Length of the string passed to \ref gavl_time_prettyprint_ms */ #define GAVL_TIME_STRING_LEN_MS 15 /* 2022-10-10 23:05:12.000001 */ #define GAVL_TIME_STRING_LEN_ABSOLUTE 27 /*! \ingroup time * \brief Convert a time to a string with millisecond precision * \param time Time to print * \param str String * * This prints a gavl_time into ASCII string if a format suitable for player displays. * The format is: -hhh:mm:ss.MMM * * Since 1.1.1 */ GAVL_PUBLIC void gavl_time_prettyprint_ms(gavl_time_t time, char str[GAVL_TIME_STRING_LEN_MS]); GAVL_PUBLIC void gavl_time_prettyprint_ms_full(gavl_time_t time, char str[GAVL_TIME_STRING_LEN_MS]); GAVL_PUBLIC void gavl_time_prettyprint_absolute(gavl_time_t time, char * str, int local); GAVL_PUBLIC void gavl_time_prettyprint_absolute_full(gavl_time_t time, char * str, int local); /* Scan time: format is hhh:mm:ss with hh: hours, mm: minutes, ss: seconds. Seconds can be a fractional value (i.e. with decimal point) */ GAVL_PUBLIC int gavl_time_parse(const char * str, gavl_time_t * ret); GAVL_PUBLIC int gavl_time_parse_iso8601(const char * str, gavl_time_t * ret); GAVL_PUBLIC gavl_time_t gavl_time_get_monotonic(void); /* Returns microseconds since the epoch */ GAVL_PUBLIC gavl_time_t gavl_time_get_realtime(void); /* Simple software timer */ /*! \defgroup timer Software timer * \ingroup time * * This is a simple software timer, which can be used for synchronization * purposes for cases wherer there is no synchronization with hardware devices * available. */ /*! \ingroup timer * \brief Opaque timer structure * * You don't want to know what's inside. */ typedef struct gavl_timer_s gavl_timer_t; /*! \ingroup timer * \brief Create a timer * \returns A newly allocated timer */ GAVL_PUBLIC gavl_timer_t * gavl_timer_create(void); /*! \ingroup timer * \brief Destroy a timer * \param timer A timer * * Destroys a timer and frees all associated memory */ GAVL_PUBLIC void gavl_timer_destroy(gavl_timer_t * timer); /*! \ingroup timer * \brief Start a timer * \param timer A timer */ GAVL_PUBLIC void gavl_timer_start(gavl_timer_t * timer); /*! \ingroup timer * \brief Stop a timer * \param timer A timer */ GAVL_PUBLIC void gavl_timer_stop(gavl_timer_t * timer); /*! \ingroup timer * \brief Get the current time of the timer * \param timer A timer * \returns Current time */ GAVL_PUBLIC gavl_time_t gavl_timer_get(gavl_timer_t * timer); /*! \ingroup timer * \brief Check if a timer is running * \param timer A timer * \returns 1 if the timer is running, 0 else */ GAVL_PUBLIC int gavl_timer_is_running(gavl_timer_t * timer); /*! \ingroup timer * \brief Set the current time of the timer * \param timer A timer * \param t New time */ GAVL_PUBLIC void gavl_timer_set(gavl_timer_t * timer, gavl_time_t t); /*! \ingroup timer * \brief Get the current time for benchmarking * \param flags Flags returned by \ref gavl_accel_supported * \returns The time in arbitrary units * * The returned value itself is meaningless since the * timescale depends on the system. Use this only for relative comparisons * for benchmarks. A textual description on how the values can be * interpreted can be obtained with \ref gavl_benchmark_get_desc */ GAVL_PUBLIC uint64_t gavl_benchmark_get_time(int flags); /*! \ingroup timer * \brief Get a description about the value returned by * \ref gavl_benchmark_get_time * \param flags Flags returned by \ref gavl_accel_supported * \returns A string describing what the time value means * */ GAVL_PUBLIC const char * gavl_benchmark_get_desc(int flags); #ifdef __cplusplus } #endif #endif /* GAVLTIME_H_INCLUDED */ bplaum-gavl-b9385e3/include/gavl/http.h000066400000000000000000000172561513252040200177760ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #ifndef GAVLHTTP_H_INCLUDED #define GAVLHTTP_H_INCLUDED /* Special variables for the first line of the HTTP requests and responses */ #define GAVL_HTTP_META_PROTOCOL "$PROTOCOL" #define GAVL_HTTP_META_PATH "$PATH" #define GAVL_HTTP_META_METHOD "$METHOD" #define GAVL_HTTP_META_STATUS_INT "$STATUS_INT" #define GAVL_HTTP_META_STATUS_STR "$STATUS_STR" #define GAVL_HTTP_META_EMPTY "$EMPTY" /* * http utility routines * * The main reason this code is here is because it's shared between gmerlin * and gmerlin_avdecoder */ /* Request */ GAVL_PUBLIC int gavl_http_read_body(gavl_io_t * io, const gavl_dictionary_t * res, gavl_buffer_t * buf); GAVL_PUBLIC void gavl_http_request_init(gavl_dictionary_t * req, const char * method, const char * path, const char * protocol); GAVL_PUBLIC int gavl_http_request_read(gavl_io_t * io, gavl_dictionary_t * req); GAVL_PUBLIC int gavl_http_request_write(gavl_io_t * io, const gavl_dictionary_t * req); GAVL_PUBLIC int gavl_http_request_write_async(gavl_io_t * io, const gavl_dictionary_t * req, gavl_buffer_t * buf); GAVL_PUBLIC int gavl_http_request_write_async_done(gavl_io_t * io, gavl_buffer_t * buf, int timeout); GAVL_PUBLIC char * gavl_http_request_to_string(const gavl_dictionary_t * req, int * lenp); GAVL_PUBLIC int gavl_http_request_to_buffer(const gavl_dictionary_t * req, gavl_buffer_t * ret); GAVL_PUBLIC void gavl_http_request_set_path(gavl_dictionary_t * req, const char * path); GAVL_PUBLIC const char * gavl_http_request_get_protocol(const gavl_dictionary_t * req); GAVL_PUBLIC const char * gavl_http_request_get_method(const gavl_dictionary_t * req); GAVL_PUBLIC const char * gavl_http_request_get_path(const gavl_dictionary_t * req); /* Response */ GAVL_PUBLIC void gavl_http_response_init(gavl_dictionary_t * res, const char * protocol, int status_int, const char * status_str); GAVL_PUBLIC int gavl_http_response_read(gavl_io_t * io, gavl_dictionary_t * res); GAVL_PUBLIC int gavl_http_response_read_async(gavl_io_t * io, gavl_buffer_t * buf, gavl_dictionary_t * res, int timeout); GAVL_PUBLIC int gavl_http_response_write(gavl_io_t * io, const gavl_dictionary_t * res); GAVL_PUBLIC char * gavl_http_response_to_string(const gavl_dictionary_t * res, int * lenp); GAVL_PUBLIC int gavl_http_response_from_string(gavl_dictionary_t * res, const char * buf); GAVL_PUBLIC int gavl_http_request_from_string(gavl_dictionary_t * req, const char * buf); GAVL_PUBLIC int gavl_http_parse_vars_line(gavl_dictionary_t * m, char * line); GAVL_PUBLIC const char * gavl_http_response_get_protocol(const gavl_dictionary_t * res); GAVL_PUBLIC const int gavl_http_response_get_status_int(const gavl_dictionary_t * res); GAVL_PUBLIC const char * gavl_http_response_get_status_str(const gavl_dictionary_t * res); GAVL_PUBLIC int gavl_http_response_has_body(const gavl_dictionary_t * res); GAVL_PUBLIC int gavl_http_response_is_chunked(const gavl_dictionary_t * res); GAVL_PUBLIC void gavl_http_header_set_empty_var(gavl_dictionary_t * h, const char * name); GAVL_PUBLIC void gavl_http_header_set_date(gavl_dictionary_t * h, const char * name); GAVL_PUBLIC void gavl_http_header_set_time(gavl_dictionary_t * h, const char * name, int64_t t); GAVL_PUBLIC int64_t gavl_http_header_get_time(const gavl_dictionary_t * h, const char * name); /* http client */ GAVL_PUBLIC gavl_io_t * gavl_http_client_create(void); GAVL_PUBLIC int gavl_http_client_read_body(gavl_io_t *, gavl_buffer_t * buf); /* Call before gavl_http_client_open() to specify a byte range */ GAVL_PUBLIC void gavl_http_client_set_range(gavl_io_t * io, int64_t start, int64_t end); GAVL_PUBLIC int gavl_http_client_get_state(gavl_io_t * io); /* * Basic caching method: * Call gavl_http_client_get_cache_info( ) before passing the uri and * copy the fields such as: * * GAVL_HTTP_MTIME, GAVL_HTTP_ETAG, GAVL_HTTP_CACHE_FILE, GAVL_HTTP_CACHE_EXPIRE_TIME * (taken from an SQL database or whatever). * * The http client will take care of (re-)validation and returns the cached file if * appropriate. After gavl_http_client_open() or successful gavl_http_client_async_done(), * you need to check for the return code 304 and update the expiry time in the cache database. */ GAVL_PUBLIC gavl_dictionary_t * gavl_http_client_get_cache_info(gavl_io_t * io); /* * Call before gavl_http_client_open() to specify extra header * variables */ GAVL_PUBLIC void gavl_http_client_set_req_vars(gavl_io_t * io, const gavl_dictionary_t * vars); /* Set request and response bodies */ GAVL_PUBLIC void gavl_http_client_set_request_body(gavl_io_t * io, gavl_buffer_t * buf); GAVL_PUBLIC void gavl_http_client_set_response_body(gavl_io_t * io, gavl_buffer_t * buf); GAVL_PUBLIC const gavl_dictionary_t * gavl_http_client_get_response(gavl_io_t * io); /* Open a connection, send a request and read the response. Handles redirections (300 codes), proxies, https */ GAVL_PUBLIC int gavl_http_client_open(gavl_io_t * io, const char * method, const char * uri1); GAVL_PUBLIC int gavl_http_client_can_pause(gavl_io_t * io); GAVL_PUBLIC void gavl_http_client_pause(gavl_io_t * io); GAVL_PUBLIC void gavl_http_client_resume(gavl_io_t * io); /* Asynchronous operation */ GAVL_PUBLIC int gavl_http_client_run_async(gavl_io_t * io, const char * method, const char * uri); GAVL_PUBLIC int gavl_http_client_run_async_done(gavl_io_t * io, int timeout); GAVL_PUBLIC char * gavl_make_basic_auth(const char * username, const char * password); /* Cache info */ #define GAVL_HTTP_ETAG "ETag" #define GAVL_HTTP_CACHE_STATUS "status" #define GAVL_HTTP_CACHE_STATUS_NEW 0 #define GAVL_HTTP_CACHE_STATUS_VALID 1 #define GAVL_HTTP_CACHE_STATUS_UPDATED 2 #define GAVL_HTTP_CACHE_STATUS_INVALID 3 /* When the cache item was last used */ // #define GAVL_HTTP_CACHE_TIME "cachetime" /* When item was put into the cache (can be updated by re-validations) */ #define GAVL_HTTP_CACHE_TIME "cachetime" /* When the cache item will expire */ #define GAVL_HTTP_CACHE_MAXAGE "maxage" /* File containing the http body */ #define GAVL_HTTP_CACHE_FILE "file" /* Set by the http client if DB should be updated */ #define GAVL_HTTP_CACHE_UPDATED "updated" #endif // GAVLHTTP_H_INCLUDED bplaum-gavl-b9385e3/include/gavl/hw.h000066400000000000000000000146771513252040200174410ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #ifndef GAVL_HW_H_INCLUDED #define GAVL_HW_H_INCLUDED #include #include /** * @file hw.h * external api header. */ /* Each context is either in map or in transfer modes */ typedef enum { /* Make a frame pool with mappable frames. Use this for sources, which write into user supplied memory */ GAVL_HW_FRAME_MODE_MAP = 1, /* Transfer frames from RAM to the hardware or back */ GAVL_HW_FRAME_MODE_TRANSFER = 2, /* Import frames from another context */ GAVL_HW_FRAME_MODE_IMPORT = 3, } gavl_hw_frame_mode_t; /* Support flags for hardware contexts */ #define GAVL_HW_SUPPORTS_AUDIO (1<<0) #define GAVL_HW_SUPPORTS_VIDEO (1<<1) #define GAVL_HW_SUPPORTS_VIDEO_MAP (1<<3) #define GAVL_HW_SUPPORTS_VIDEO_IO (1<<4) #define GAVL_HW_SUPPORTS_VIDEO_POOL (1<<5) typedef enum { GAVL_HW_NONE = 0, // Frames in RAM GAVL_HW_EGL_GL = (1<<0), // OpenGL Texture in an EGL context GAVL_HW_EGL_GLES = (1<<1), // OpenGL ES Texture in an EGL context GAVL_HW_VAAPI = (1<<2), GAVL_HW_V4L2_BUFFER = (1<<3), // V4L2 buffers (mmapped) GAVL_HW_DMABUFFER = (1<<4), // DMA handles, can be exported by V4L and im- and exported by OpenGL GAVL_HW_SHM = (1<<5), // Shared memory, which can be sent to other processes } gavl_hw_type_t; /* Global handle for accessing a piece of hardware */ typedef struct gavl_hw_context_s gavl_hw_context_t; GAVL_PUBLIC int gavl_hw_supported(gavl_hw_type_t type); GAVL_PUBLIC const char * gavl_hw_type_to_string(gavl_hw_type_t type); GAVL_PUBLIC const char * gavl_hw_type_to_id(gavl_hw_type_t type); GAVL_PUBLIC gavl_hw_type_t gavl_hw_type_from_id(const char * id); GAVL_PUBLIC int gavl_hw_ctx_can_export(gavl_hw_context_t * ctx, const gavl_hw_context_t * to); GAVL_PUBLIC int gavl_hw_ctx_can_import(gavl_hw_context_t * ctx, const gavl_hw_context_t * from); GAVL_PUBLIC void gavl_hw_ctx_destroy(gavl_hw_context_t * ctx); /* Reset to the initial state (after creating) */ GAVL_PUBLIC void gavl_hw_ctx_reset(gavl_hw_context_t * ctx); /* Do a post-seek resync. This will destroy all imported frames, because an underlying hardware decoder might got restarted */ GAVL_PUBLIC void gavl_hw_ctx_resync(gavl_hw_context_t * ctx); GAVL_PUBLIC int gavl_hw_ctx_get_support_flags(gavl_hw_context_t * ctx); /* * If *frame2 == NULL, a frame is allocated in the * imported pool and owned by the hw context. * * */ GAVL_PUBLIC int gavl_hw_ctx_transfer_video_frame(gavl_video_frame_t * frame1, gavl_hw_context_t * ctx2, gavl_video_frame_t ** frame2, const gavl_video_format_t * fmt); GAVL_PUBLIC gavl_video_frame_t * gavl_hw_ctx_get_imported_vframe(gavl_hw_context_t * ctx, int buf_idx); GAVL_PUBLIC gavl_video_frame_t * gavl_hw_ctx_create_import_vframe(gavl_hw_context_t * ctx, int buf_idx); GAVL_PUBLIC const gavl_pixelformat_t * gavl_hw_ctx_get_image_formats(gavl_hw_context_t * ctx, gavl_hw_frame_mode_t mode); GAVL_PUBLIC gavl_hw_type_t gavl_hw_ctx_get_type(const gavl_hw_context_t * ctx); GAVL_PUBLIC void gavl_hw_video_format_adjust(gavl_hw_context_t * ctx, gavl_video_format_t * fmt, gavl_hw_frame_mode_t mode); /* Format will be adjusted if it's not supported by the hardware */ //GAVL_PUBLIC void gavl_hw_ctx_set_audio(gavl_hw_context_t * ctx, gavl_audio_format_t * fmt, gavl_hw_frame_mode_t mode); GAVL_PUBLIC void gavl_hw_ctx_set_video(gavl_hw_context_t * ctx, gavl_video_format_t * fmt, gavl_hw_frame_mode_t mode); /* * Create a video frame. The frame will be a reference for a hardware surface. * If alloc_resource is 1, an actual hardware frame is created. Else, just * the storage pointer is allocated for importing hardware surfaces created elsewhere */ GAVL_PUBLIC gavl_video_frame_t * gavl_hw_video_frame_create(gavl_hw_context_t * ctx, int alloc_resource); GAVL_PUBLIC int gavl_hw_video_frame_map(gavl_video_frame_t * frame, int wr); GAVL_PUBLIC int gavl_hw_video_frame_unmap(gavl_video_frame_t * frame); /* Get a frame for writing (this enables the frame pool) */ GAVL_PUBLIC gavl_video_frame_t * gavl_hw_video_frame_get(gavl_hw_context_t * ctx); GAVL_PUBLIC void gavl_hw_video_frame_ref(gavl_video_frame_t*); GAVL_PUBLIC void gavl_hw_video_frame_unref(gavl_video_frame_t*); GAVL_PUBLIC int gavl_hw_video_frame_refcount(gavl_video_frame_t*); /* Load a video frame from RAM into the hardware */ GAVL_PUBLIC int gavl_video_frame_ram_to_hw(gavl_video_frame_t * dst, gavl_video_frame_t * src); /* Load a video frame from the hardware into RAM */ GAVL_PUBLIC int gavl_video_frame_hw_to_ram(gavl_video_frame_t * dst, gavl_video_frame_t * src); GAVL_PUBLIC int gavl_video_frame_hw_can_transfer(gavl_hw_context_t * from, gavl_hw_context_t * to); /* Store in a stream structure */ GAVL_PUBLIC void gavl_hw_ctx_store(gavl_hw_context_t * ctx, gavl_dictionary_t * dict); GAVL_PUBLIC gavl_hw_context_t * gavl_hw_ctx_load(const gavl_dictionary_t * dict); /* Create a HW context with just a type. This function succeeds only for types, which don't require other stuff (e.g. device nodes) for creation */ GAVL_PUBLIC gavl_hw_context_t * gavl_hw_ctx_create(gavl_hw_type_t type); #endif // GAVL_HW_H_INCLUDED bplaum-gavl-b9385e3/include/gavl/hw_dmabuf.h000066400000000000000000000042161513252040200207430ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #ifndef GAVL_HW_DMABUF_H_INCLUDED #define GAVL_HW_DMABUF_H_INCLUDED /* */ typedef struct { struct { int fd; // DMA-buf fd int drm_handle; // libdrm buffer handle uint8_t * map_ptr; size_t map_len; size_t map_offset; } buffers[GAVL_MAX_PLANES]; struct { int buf_idx; int64_t offset; int stride; uint64_t modifiers; } planes[GAVL_MAX_PLANES]; uint32_t fourcc; // drm fourcc int num_buffers; int num_planes; int wr; // If mapped writable (will mostly be the case) } gavl_dmabuf_video_frame_t; GAVL_PUBLIC gavl_hw_context_t * gavl_hw_ctx_create_dma(void); // GAVL_PUBLIC uint32_t gavl_drm_fourcc_from_gavl(gavl_hw_context_t *, gavl_pixelformat_t pfmt); GAVL_PUBLIC gavl_pixelformat_t gavl_drm_pixelformat_from_fourcc(uint32_t fourcc, int * flags, int * drm_indices); GAVL_PUBLIC void gavl_hw_ctx_dma_set_supported_formats(gavl_hw_context_t * ctx, uint32_t * formats); GAVL_PUBLIC gavl_hw_frame_mode_t gavl_hw_ctx_dma_get_frame_mode(uint32_t format); // GAVL_PUBLIC uint32_t gavl_drm_fourcc_from_gavl(gavl_pixelformat_t pfmt); #define GAVL_DMABUF_FLAG_SWAP_CHROMA (1<<0) #define GAVL_DMABUF_FLAG_SHUFFLE (1<<1) #endif // GAVL_HW_DMABUF_H_INCLUDED bplaum-gavl-b9385e3/include/gavl/hw_egl.h000066400000000000000000000041451513252040200202550ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #ifndef GAVL_HW_EGL_H_INCLUDED #define GAVL_HW_EGL_H_INCLUDED #include #include // gavl_hw_context_t * gavl_hw_ctx_create_egl(EGLint const * attrs); GAVL_PUBLIC gavl_hw_context_t * gavl_hw_ctx_create_egl(EGLenum platform, EGLint const * attrs, gavl_hw_type_t type, void * native_display); GAVL_PUBLIC void gavl_hw_egl_swap_buffers(gavl_hw_context_t * ctx); /* Returned value (zero terminated) must be free()d */ GAVL_PUBLIC uint32_t * gavl_hw_ctx_egl_get_dma_import_formats(gavl_hw_context_t * ctx); GAVL_PUBLIC EGLSurface gavl_hw_ctx_egl_create_window_surface(gavl_hw_context_t * ctx, void * native_window); GAVL_PUBLIC void gavl_hw_ctx_egl_destroy_surface(gavl_hw_context_t * ctx, EGLSurface surf); GAVL_PUBLIC EGLDisplay gavl_hw_ctx_egl_get_egl_display(gavl_hw_context_t * ctx); GAVL_PUBLIC void gavl_hw_egl_set_current(gavl_hw_context_t * ctx, EGLSurface surf); GAVL_PUBLIC void gavl_hw_egl_unset_current(gavl_hw_context_t * ctx); /* Wait until drawing operations are done */ GAVL_PUBLIC void gavl_hw_egl_wait(gavl_hw_context_t * ctx); GAVL_PUBLIC int gavl_hw_egl_get_max_texture_size(gavl_hw_context_t * ctx); #endif // GAVL_HW_EGL_H_INCLUDED bplaum-gavl-b9385e3/include/gavl/hw_gl.h000066400000000000000000000046661513252040200201200ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #ifndef GAVL_HW_GL_H_INCLUDED #define GAVL_HW_GL_H_INCLUDED // #include typedef struct { int num_textures; GLuint textures[GAVL_MAX_PLANES]; GLenum texture_target; } gavl_gl_frame_info_t; GAVL_PUBLIC int gavl_get_gl_format(gavl_pixelformat_t fmt, GLenum * format, GLenum * internalformat, GLenum * type); GAVL_PUBLIC gavl_pixelformat_t * gavl_gl_get_image_formats(gavl_hw_context_t * ctx, int * num); GAVL_PUBLIC void gavl_gl_adjust_video_format(gavl_hw_context_t * ctx, gavl_video_format_t * fmt); /* The following functions require a current GL context */ GAVL_PUBLIC gavl_video_frame_t * gavl_gl_create_frame(const gavl_video_format_t * fmt); GAVL_PUBLIC void gavl_gl_destroy_frame(gavl_video_frame_t * f, int destroy_resource); GAVL_PUBLIC void gavl_gl_frame_to_ram(const gavl_video_format_t * fmt, gavl_video_frame_t * dst, const gavl_video_frame_t * src); GAVL_PUBLIC void gavl_gl_frame_to_hw(const gavl_video_format_t * fmt, gavl_video_frame_t * dst, const gavl_video_frame_t * src); /* Generic utilities */ GAVL_PUBLIC const char * gavl_gl_get_error_string(GLenum err); GAVL_PUBLIC int gavl_gl_log_error(const char * funcname); GAVL_PUBLIC void gavl_gl_flush_errors(void); #endif // GAVL_HW_GL_H_INCLUDED bplaum-gavl-b9385e3/include/gavl/hw_shm.h000066400000000000000000000023051513252040200202710ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #ifndef GAVL_HW_SHM_H_INCLUDED #define GAVL_HW_SHM_H_INCLUDED typedef struct gavl_shm_s gavl_shm_t; typedef struct { char * name; gavl_shm_t * shm; } gavl_shm_video_frame_t; GAVL_PUBLIC gavl_hw_context_t * gavl_hw_ctx_create_shm(void); #endif // GAVL_HW_SHM_H_INCLUDED bplaum-gavl-b9385e3/include/gavl/hw_v4l2.h000066400000000000000000000120161513252040200202710ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #ifndef GAVL_HW_V4L2_H_INCLUDED #define GAVL_HW_V4L2_H_INCLUDED #include #include #include #include typedef enum { GAVL_V4L2_DEVICE_UNKNOWN = 0, GAVL_V4L2_DEVICE_SOURCE = (1<<0), GAVL_V4L2_DEVICE_SINK = (1<<1), GAVL_V4L2_DEVICE_ENCODER = (1<<2), GAVL_V4L2_DEVICE_DECODER = (1<<3), GAVL_V4L2_DEVICE_CONVERTER = (1<<4), GAVL_V4L2_DEVICE_LOOPBACK = (1<<5), } gavl_v4l2_device_type_t; /* Video frames have a gavl_v4l2_buffer_t as storage */ typedef struct { int total; /* Total number of buffers */ int flags; int bytesused; // For packets struct v4l2_buffer buf; struct v4l2_plane planes[GAVL_MAX_PLANES]; /* mmapped pointers */ void * ptrs[GAVL_MAX_PLANES]; } gavl_v4l2_buffer_t; typedef struct { struct v4l2_query_ext_ctrl ctrl; struct v4l2_querymenu * menu_items; int num_menu_items; } gavl_v4l2_control_t; /* * Metadata tags for devices. * Also supported are: * * GAVL_META_LABEL * GAVL_META_URI * */ #define GAVL_V4L2_TYPE "type" #define GAVL_V4L2_TYPE_STRING "typestr" #define GAVL_V4L2_CAPABILITIES "caps" #define GAVL_V4L2_DRIVER "driver" #define GAVL_V4L2_SRC_FORMATS "src_fmts" #define GAVL_V4L2_SINK_FORMATS "sink_fmts" #define GAVL_V4L2_FORMAT_V4L_PIX_FMT "pixfmt" #define GAVL_V4L2_FORMAT_V4L_FLAGS "flags" #define GAVL_V4L2_FORMAT_GAVL_PIXELFORMAT "pixelformat" #define GAVL_V4L2_FORMAT_GAVL_CODEC_ID "codecid" typedef struct gavl_v4l2_device_s gavl_v4l2_device_t; GAVL_PUBLIC void gavl_v4l2_devices_scan(gavl_array_t * ret); GAVL_PUBLIC void gavl_v4l2_devices_scan_by_type(int type_mask, gavl_array_t * ret); GAVL_PUBLIC int gavl_v4l2_has_decoder(gavl_array_t * arr, gavl_codec_id_t id); GAVL_PUBLIC gavl_codec_id_t gavl_v4l2_pix_fmt_to_codec_id(uint32_t fmt); GAVL_PUBLIC gavl_pixelformat_t gavl_v4l2_pix_fmt_to_pixelformat(uint32_t fmt, int quantization); GAVL_PUBLIC uint32_t gavl_v4l2_pix_fmt_to_drm_fourcc(uint32_t fmt); GAVL_PUBLIC uint32_t gavl_v4l2_pixelformat_to_pix_fmt(gavl_pixelformat_t fmt, int * quantization); GAVL_PUBLIC uint32_t gavl_v4l2_codec_id_to_pix_fmt(gavl_codec_id_t id); GAVL_PUBLIC int gavl_v4l2_get_device_info(const char * path, gavl_dictionary_t * dev); GAVL_PUBLIC void gavl_v4l2_device_close(gavl_v4l2_device_t * dev); GAVL_PUBLIC int gavl_v4l2_device_get_fd(gavl_v4l2_device_t * dev); GAVL_PUBLIC const gavl_v4l2_control_t * gavl_v4l2_device_get_controls(gavl_v4l2_device_t * dev, int * num_controls); GAVL_PUBLIC const gavl_dictionary_t * gavl_v4l2_get_decoder(const gavl_array_t * arr, gavl_codec_id_t id, const gavl_dictionary_t * stream); GAVL_PUBLIC gavl_packet_sink_t * gavl_v4l2_device_get_packet_sink(gavl_v4l2_device_t * dev); GAVL_PUBLIC gavl_packet_source_t * gavl_v4l2_device_get_packet_source(gavl_v4l2_device_t * dev); GAVL_PUBLIC gavl_video_sink_t * gavl_v4l2_device_get_video_sink(gavl_v4l2_device_t * dev); GAVL_PUBLIC gavl_video_source_t * gavl_v4l2_device_get_video_source(gavl_v4l2_device_t * dev); GAVL_PUBLIC int gavl_v4l_device_init_capture(gavl_v4l2_device_t * dev, gavl_dictionary_t * dict); GAVL_PUBLIC int gavl_v4l_device_start_capture(gavl_v4l2_device_t * dev); GAVL_PUBLIC int gavl_v4l2_device_init_output(gavl_v4l2_device_t * dev, gavl_video_format_t * fmt); GAVL_PUBLIC int gavl_v4l2_device_init_decoder(gavl_v4l2_device_t * dev, gavl_dictionary_t * stream, gavl_packet_source_t * psrc); GAVL_PUBLIC int gavl_v4l2_device_init_converter(gavl_v4l2_device_t * dev, gavl_video_format_t * in_format, gavl_video_format_t * out_format); GAVL_PUBLIC void gavl_v4l2_device_resync_decoder(gavl_v4l2_device_t * dev); GAVL_PUBLIC void gavl_v4l2_device_info(const char * dev); GAVL_PUBLIC void gavl_v4l2_device_infos(void); GAVL_PUBLIC gavl_hw_context_t * gavl_hw_ctx_create_v4l2(const gavl_dictionary_t * dev_info); GAVL_PUBLIC gavl_v4l2_device_t * gavl_hw_ctx_v4l2_get_device(gavl_hw_context_t * ctx); #endif // GAVL_HW_V4L2_H_INCLUDED bplaum-gavl-b9385e3/include/gavl/hw_vaapi.h000066400000000000000000000041241513252040200206030ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #ifndef GAVL_HW_VAAPI_H_INCLUDED #define GAVL_HW_VAAPI_H_INCLUDED #include typedef struct { VASurfaceID surface; VAImage image; /* Only valid while the frame is mapped */ int wr; } gavl_vaapi_video_frame_t; /* VA-API specific backend functions */ GAVL_PUBLIC VAImageID gavl_vaapi_get_image_id(const gavl_video_frame_t *); GAVL_PUBLIC VASurfaceID gavl_vaapi_get_surface_id(const gavl_video_frame_t *); /* Use only in specific create routines */ GAVL_PUBLIC void gavl_vaapi_set_surface_id(gavl_video_frame_t *, VASurfaceID id); /* Map into userspace for CPU access */ GAVL_PUBLIC int gavl_vaapi_map_frame(gavl_video_frame_t *, int wr); /* Unmap */ GAVL_PUBLIC int gavl_vaapi_unmap_frame(gavl_video_frame_t *); GAVL_PUBLIC VAProfile gavl_vaapi_get_profile(const gavl_dictionary_t * dict); GAVL_PUBLIC int gavl_vaapi_can_decode(VADisplay dpy, const gavl_dictionary_t * dict); // GAVL_PUBLIC gavl_video_frame_t * // gavl_vaapi_import_surface(gavl_hw_context_t * ctx, VASurfaceID surf); GAVL_PUBLIC gavl_hw_context_t * gavl_hw_ctx_create_vaapi(void); GAVL_PUBLIC VADisplay gavl_hw_ctx_vaapi_get_va_display(gavl_hw_context_t *); #endif // GAVL_HW_VAAPI_H_INCLUDED bplaum-gavl-b9385e3/include/gavl/hw_vaapi_x11.h000066400000000000000000000024501513252040200212740ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #ifndef GAVL_HW_VAAPI_X11_H_INCLUDED #define GAVL_HW_VAAPI_X11_H_INCLUDED #include #include /** * @file hw_vaapi_x11.h * external api header. */ GAVL_PUBLIC gavl_hw_context_t * gavl_hw_ctx_create_vaapi_x11(Display * dpy); GAVL_PUBLIC VADisplay gavl_hw_ctx_vaapi_x11_get_va_display(gavl_hw_context_t *); #endif // GAVL_HW_VAAPI_X11_H_INCLUDED bplaum-gavl-b9385e3/include/gavl/io.h000066400000000000000000000274101513252040200174170ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #ifndef GAVL_IO_H_INCLUDED #define GAVL_IO_H_INCLUDED #ifdef __cplusplus extern "C" { #endif #include #include #include /* IO flags */ #define GAVL_IO_CAN_READ (1<<0) #define GAVL_IO_CAN_WRITE (1<<1) #define GAVL_IO_CAN_SEEK (1<<2) #define GAVL_IO_IS_DUPLEX (1<<3) // Duplex means we have the backchannel for messages #define GAVL_IO_IS_REGULAR (1<<4) #define GAVL_IO_IS_SOCKET (1<<5) #define GAVL_IO_IS_UNIX_SOCKET (1<<6) #define GAVL_IO_IS_LOCAL (1<<7) #define GAVL_IO_IS_PIPE (1<<8) #define GAVL_IO_IS_TTY (1<<9) #define GAVL_IO_EOF (1<<16) #define GAVL_IO_ERROR (1<<17) /* Crypto I/O */ typedef enum { GAVL_CIPHER_NONE = 0, GAVL_CIPHER_AES128, } gavl_cipher_algo_t; typedef enum { GAVL_CIPHER_MODE_NONE = 0, GAVL_CIPHER_MODE_CBC, } gavl_cipher_mode_t; typedef enum { GAVL_CIPHER_PADDING_NONE = 0, GAVL_CIPHER_PADDING_PKCS7, } gavl_cipher_padding_t; /* I/O Structure */ typedef int (*gavl_read_func)(void * priv, uint8_t * data, int len); typedef int (*gavl_write_func)(void * priv, const uint8_t * data, int len); typedef int64_t (*gavl_seek_func)(void * priv, int64_t pos, int whence); typedef void (*gavl_close_func)(void * priv); typedef int (*gavl_flush_func)(void * priv); typedef int (*gavl_poll_func)(void * priv, int timeout, int wr); // typedef int (*gavl_io_cb_func)(void * priv, int type, const void * data); typedef struct gavl_io_s gavl_io_t; GAVL_PUBLIC void gavl_io_set_poll_func(gavl_io_t * io, gavl_poll_func f); GAVL_PUBLIC int gavl_io_can_read(gavl_io_t * io, int timeout); GAVL_PUBLIC int gavl_io_can_write(gavl_io_t * io, int timeout); GAVL_PUBLIC gavl_io_t * gavl_io_create(gavl_read_func r, gavl_write_func w, gavl_seek_func s, gavl_close_func c, gavl_flush_func f, int flags, void * data); GAVL_PUBLIC int gavl_io_align_write(gavl_io_t * io); GAVL_PUBLIC int gavl_io_align_read(gavl_io_t * io); GAVL_PUBLIC void * gavl_io_get_priv(gavl_io_t * io); GAVL_PUBLIC void gavl_io_destroy(gavl_io_t *); GAVL_PUBLIC int gavl_io_flush(gavl_io_t *); GAVL_PUBLIC void gavl_io_skip(gavl_io_t * io, int bytes); GAVL_PUBLIC gavl_io_t * gavl_io_create_file(FILE * f, int wr, int can_seek, int do_close); /* Simple read() / write() poll() based I/0 */ GAVL_PUBLIC gavl_io_t * gavl_io_create_fd(int fd, int wr, int do_close); GAVL_PUBLIC gavl_io_t * gavl_io_from_filename(const char * filename, int wr); #define GAVL_IO_SOCKET_DO_CLOSE (1<<0) #define GAVL_IO_SOCKET_BUFFER_READ (1<<1) // #define GAVL_IO_SOCKET_BUFFER_WRITE (1<<2) GAVL_PUBLIC gavl_io_t * gavl_io_create_socket(int fd, int read_timeout, int flags); GAVL_PUBLIC int gavl_io_get_socket(gavl_io_t * io); GAVL_PUBLIC gavl_io_t * gavl_io_create_cipher(gavl_cipher_algo_t algo, gavl_cipher_mode_t mode, gavl_cipher_padding_t padding, int wr); GAVL_PUBLIC void gavl_io_cipher_init(gavl_io_t * io, gavl_io_t * src, const uint8_t * key, const uint8_t * iv); GAVL_PUBLIC void gavl_io_cipher_set_src(gavl_io_t * io, gavl_io_t * src); GAVL_PUBLIC int gavl_io_get_flags(gavl_io_t * io); GAVL_PUBLIC gavl_io_t * gavl_io_create_sub_read(gavl_io_t * io, int64_t offset, int64_t len); /* Data is appended to the current position */ GAVL_PUBLIC gavl_io_t * gavl_io_create_sub_write(gavl_io_t * io); GAVL_PUBLIC uint8_t * gavl_io_mem_get_buf(gavl_io_t * io, int * len); GAVL_PUBLIC gavl_io_t * gavl_io_create_mem_read(const uint8_t * ptr, int len); GAVL_PUBLIC gavl_io_t * gavl_io_create_mem_write(void); /* Buffer I/O */ GAVL_PUBLIC gavl_io_t * gavl_io_create_buffer_write(gavl_buffer_t * buf); GAVL_PUBLIC gavl_io_t * gavl_io_create_buffer_read(const gavl_buffer_t * buf); GAVL_PUBLIC gavl_io_t * gavl_io_create_tls_client(int fd, const char * server_name, int flags); GAVL_PUBLIC gavl_io_t * gavl_io_create_tls_client_async(int fd, const char * server_name, int socket_flags); GAVL_PUBLIC int gavl_io_create_tls_client_async_done(gavl_io_t * io, int timeout); GAVL_PUBLIC void gavl_io_set_error(gavl_io_t * io); GAVL_PUBLIC void gavl_io_clear_error(gavl_io_t * io); GAVL_PUBLIC void gavl_io_set_eof(gavl_io_t * io); GAVL_PUBLIC void gavl_io_clear_eof(gavl_io_t * io); GAVL_PUBLIC int gavl_io_got_error(gavl_io_t * io); GAVL_PUBLIC int gavl_io_got_eof(gavl_io_t * io); GAVL_PUBLIC int gavl_io_can_seek(gavl_io_t * io); GAVL_PUBLIC int gavl_io_read_data(gavl_io_t * io, uint8_t * buf, int len); GAVL_PUBLIC void gavl_io_unread_data(gavl_io_t * io, const uint8_t * buf, int len); GAVL_PUBLIC int gavl_io_read_data_nonblock(gavl_io_t * io, uint8_t * buf, int len); GAVL_PUBLIC int gavl_io_write_data_nonblock(gavl_io_t * io, const uint8_t * buf, int len); /* Get data but don't remove from input */ GAVL_PUBLIC int gavl_io_get_data(gavl_io_t * io, uint8_t * buf, int len); GAVL_PUBLIC int gavl_io_write_data(gavl_io_t * io, const uint8_t * buf, int len); GAVL_PUBLIC int gavl_io_read_line(gavl_io_t * io, char ** ret, int * ret_alloc, int max_len); GAVL_PUBLIC int64_t gavl_io_seek(gavl_io_t * io, int64_t pos, int whence); GAVL_PUBLIC int64_t gavl_io_total_bytes(gavl_io_t * io); GAVL_PUBLIC const char * gavl_io_filename(gavl_io_t * io); GAVL_PUBLIC const char * gavl_io_mimetype(gavl_io_t * io); GAVL_PUBLIC void gavl_io_set_info(gavl_io_t * io, int64_t total_bytes, const char * filename, const char * mimetype, int flags); GAVL_PUBLIC gavl_dictionary_t * gavl_io_info(gavl_io_t * io); GAVL_PUBLIC int64_t gavl_io_position(gavl_io_t * io); /* Reset position to zero. This is necessary for socket based io to subtract the handshake headers from the file offsets */ GAVL_PUBLIC void gavl_io_reset_position(gavl_io_t * io); GAVL_PUBLIC int gavl_io_write_uint64f(gavl_io_t * io, uint64_t num); GAVL_PUBLIC int gavl_io_read_uint64f(gavl_io_t * io, uint64_t * num); GAVL_PUBLIC int gavl_io_write_int64f(gavl_io_t * io, int64_t num); GAVL_PUBLIC int gavl_io_read_int64f(gavl_io_t * io, int64_t * num); GAVL_PUBLIC int gavl_io_write_uint64v(gavl_io_t * io, uint64_t num); GAVL_PUBLIC int gavl_io_read_uint64v(gavl_io_t * io, uint64_t * num); GAVL_PUBLIC int gavl_io_write_uint32v(gavl_io_t * io, uint32_t num); GAVL_PUBLIC int gavl_io_read_uint32v(gavl_io_t * io, uint32_t * num); GAVL_PUBLIC int gavl_io_write_int64v(gavl_io_t * io, int64_t num); GAVL_PUBLIC int gavl_io_read_int64v(gavl_io_t * io, int64_t * num); GAVL_PUBLIC int gavl_io_write_int32v(gavl_io_t * io, int32_t num); GAVL_PUBLIC int gavl_io_read_int32v(gavl_io_t * io, int32_t * num); GAVL_PUBLIC int gavl_io_read_string(gavl_io_t * io, char **); GAVL_PUBLIC int gavl_io_write_string(gavl_io_t * io, const char * ); GAVL_PUBLIC int gavl_io_read_buffer(gavl_io_t * io, gavl_buffer_t * ret); GAVL_PUBLIC int gavl_io_write_buffer(gavl_io_t * io, const gavl_buffer_t * buf); GAVL_PUBLIC int gavl_io_read_float(gavl_io_t * io, float * num); GAVL_PUBLIC int gavl_io_write_float(gavl_io_t * io, float num); GAVL_PUBLIC int gavl_io_read_double(gavl_io_t * io, double * num); GAVL_PUBLIC int gavl_io_write_double(gavl_io_t * io, double num); GAVL_PUBLIC int gavl_value_read(gavl_io_t * io, gavl_value_t * v); GAVL_PUBLIC int gavl_value_write(gavl_io_t * io, const gavl_value_t * v); GAVL_PUBLIC int gavl_dictionary_write(gavl_io_t * io, const gavl_dictionary_t * dict); GAVL_PUBLIC int gavl_dictionary_read(gavl_io_t * io, gavl_dictionary_t * dict); /* Read/write fixed length integers */ GAVL_PUBLIC int gavl_io_read_8(gavl_io_t * ctx, uint8_t * ret); GAVL_PUBLIC int gavl_io_read_16_le(gavl_io_t * ctx,uint16_t * ret); GAVL_PUBLIC int gavl_io_read_32_le(gavl_io_t * ctx,uint32_t * ret); GAVL_PUBLIC int gavl_io_read_24_le(gavl_io_t * ctx,uint32_t * ret); GAVL_PUBLIC int gavl_io_read_64_le(gavl_io_t * ctx,uint64_t * ret); GAVL_PUBLIC int gavl_io_read_16_be(gavl_io_t * ctx,uint16_t * ret); GAVL_PUBLIC int gavl_io_read_24_be(gavl_io_t * ctx,uint32_t * ret); GAVL_PUBLIC int gavl_io_read_32_be(gavl_io_t * ctx,uint32_t * ret); GAVL_PUBLIC int gavl_io_read_64_be(gavl_io_t * ctx, uint64_t * ret); /* Write */ GAVL_PUBLIC int gavl_io_write_8(gavl_io_t * ctx, uint8_t val); GAVL_PUBLIC int gavl_io_write_16_le(gavl_io_t * ctx, uint16_t val); GAVL_PUBLIC int gavl_io_write_32_le(gavl_io_t * ctx,uint32_t val); GAVL_PUBLIC int gavl_io_write_24_le(gavl_io_t * ctx,uint32_t val); GAVL_PUBLIC int gavl_io_write_64_le(gavl_io_t * ctx,uint64_t val); GAVL_PUBLIC int gavl_io_write_16_be(gavl_io_t * ctx,uint16_t val); GAVL_PUBLIC int gavl_io_write_24_be(gavl_io_t * ctx,uint32_t val); GAVL_PUBLIC int gavl_io_write_32_be(gavl_io_t * ctx,uint32_t val); GAVL_PUBLIC int gavl_io_write_64_be(gavl_io_t * ctx, uint64_t val); /** \brief Read a message * \param ret Where the message will be copied * \param io I/O context * \returns 1 on success, 0 on error */ GAVL_PUBLIC int gavl_msg_read(gavl_msg_t * ret, gavl_io_t * io); /** \brief Write a message * \param msg A message * \param io I/O context * \returns 1 on success, 0 on error */ GAVL_PUBLIC int gavl_msg_write(const gavl_msg_t * msg, gavl_io_t * io); GAVL_PUBLIC uint8_t * gavl_msg_to_buffer(int * len, const gavl_msg_t * msg); GAVL_PUBLIC int gavl_msg_from_buffer(const uint8_t * buf, int len, gavl_msg_t * msg); GAVL_PUBLIC int gavl_msg_to_packet(const gavl_msg_t * msg, gavl_packet_t * dst); GAVL_PUBLIC int gavl_packet_to_msg(const gavl_packet_t * src, gavl_msg_t * msg); typedef struct { char eightcc[9]; int64_t start; // gavl_io_position(); int64_t len; // gavl_io_position() - start; } gavl_chunk_t; GAVL_PUBLIC int gavl_chunk_read_header(gavl_io_t * io, gavl_chunk_t * head); GAVL_PUBLIC int gavl_chunk_is(const gavl_chunk_t * head, const char * eightcc); GAVL_PUBLIC int gavl_chunk_start(gavl_io_t * io, gavl_chunk_t * head, const char * eightcc); GAVL_PUBLIC int gavl_chunk_finish(gavl_io_t * io, gavl_chunk_t * head, int write_size); GAVL_PUBLIC gavl_io_t * gavl_chunk_start_io(gavl_io_t * io, gavl_chunk_t * head, const char * eightcc); GAVL_PUBLIC int gavl_chunk_finish_io(gavl_io_t * io, gavl_chunk_t * head, gavl_io_t * sub_io); GAVL_PUBLIC int gavl_dictionary_from_buffer(const uint8_t * buf, int len, gavl_dictionary_t * fmt); GAVL_PUBLIC uint8_t * gavl_dictionary_to_buffer(int * len, const gavl_dictionary_t * fmt); GAVL_PUBLIC int gavl_io_read_video_frame_header(gavl_io_t * io, gavl_video_frame_t * ret); GAVL_PUBLIC int gavl_io_write_video_frame_header(gavl_io_t * io, const gavl_video_frame_t * ret); #ifdef __cplusplus } #endif #endif // GAVL_IO_H_INCLUDED bplaum-gavl-b9385e3/include/gavl/keycodes.h000066400000000000000000000126721513252040200206220ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #ifndef GAVL_KEYCODES_H_INCLUDED #define GAVL_KEYCODES_H_INCLUDED /* * System independent keycode definitions */ /** \defgroup keycodes System independent keycode definitions * \ingroup msg * * @{ */ #define GAVL_KEY_SHIFT_MASK (1<<0) //!< Shift #define GAVL_KEY_CONTROL_MASK (1<<1) //!< Control #define GAVL_KEY_ALT_MASK (1<<2) //!< Alt #define GAVL_KEY_SUPER_MASK (1<<3) //!< Windows key is called "Super" under X11 #define GAVL_KEY_BUTTON1_MASK (1<<4) //!< Mouse button 1 #define GAVL_KEY_BUTTON2_MASK (1<<5) //!< Mouse button 2 #define GAVL_KEY_BUTTON3_MASK (1<<6) //!< Mouse button 3 #define GAVL_KEY_BUTTON4_MASK (1<<7) //!< Mouse button 4 #define GAVL_KEY_BUTTON5_MASK (1<<8) //!< Mouse button 5 #define GAVL_KEY_NONE -1 //!< Undefined #define GAVL_KEY_0 0 //!< 0 #define GAVL_KEY_1 1 //!< 1 #define GAVL_KEY_2 2 //!< 2 #define GAVL_KEY_3 3 //!< 3 #define GAVL_KEY_4 4 //!< 4 #define GAVL_KEY_5 5 //!< 5 #define GAVL_KEY_6 6 //!< 6 #define GAVL_KEY_7 7 //!< 7 #define GAVL_KEY_8 8 //!< 8 #define GAVL_KEY_9 9 //!< 9 #define GAVL_KEY_SPACE 10 //!< Space #define GAVL_KEY_RETURN 11 //!< Return (Enter) #define GAVL_KEY_LEFT 12 //!< Left #define GAVL_KEY_RIGHT 13 //!< Right #define GAVL_KEY_UP 14 //!< Up #define GAVL_KEY_DOWN 15 //!< Down #define GAVL_KEY_PAGE_UP 16 //!< Page Up #define GAVL_KEY_PAGE_DOWN 17 //!< Page Down #define GAVL_KEY_HOME 18 //!< Home #define GAVL_KEY_END 19 //!< End #define GAVL_KEY_PLUS 20 //!< Plus #define GAVL_KEY_MINUS 21 //!< Minus #define GAVL_KEY_TAB 22 //!< Tab #define GAVL_KEY_ESCAPE 23 //!< Esc #define GAVL_KEY_MENU 24 //!< Menu key #define GAVL_KEY_QUESTION 24 //!< ? #define GAVL_KEY_EXCLAM 25 //!< ! #define GAVL_KEY_QUOTEDBL 26 //!< " #define GAVL_KEY_DOLLAR 27 //!< $ #define GAVL_KEY_PERCENT 28 //!< % #define GAVL_KEY_APMERSAND 29 //!< & #define GAVL_KEY_SLASH 30 //!< / #define GAVL_KEY_LEFTPAREN 31 //!< ( #define GAVL_KEY_RIGHTPAREN 32 //!< ) #define GAVL_KEY_EQUAL 33 //!< = #define GAVL_KEY_BACKSLASH 34 //!< :-) #define GAVL_KEY_BACKSPACE 35 //!< :-) #define GAVL_KEY_A 101 //!< A #define GAVL_KEY_B 102 //!< B #define GAVL_KEY_C 103 //!< C #define GAVL_KEY_D 104 //!< D #define GAVL_KEY_E 105 //!< E #define GAVL_KEY_F 106 //!< F #define GAVL_KEY_G 107 //!< G #define GAVL_KEY_H 108 //!< H #define GAVL_KEY_I 109 //!< I #define GAVL_KEY_J 110 //!< J #define GAVL_KEY_K 111 //!< K #define GAVL_KEY_L 112 //!< L #define GAVL_KEY_M 113 //!< M #define GAVL_KEY_N 114 //!< N #define GAVL_KEY_O 115 //!< O #define GAVL_KEY_P 116 //!< P #define GAVL_KEY_Q 117 //!< Q #define GAVL_KEY_R 118 //!< R #define GAVL_KEY_S 119 //!< S #define GAVL_KEY_T 120 //!< T #define GAVL_KEY_U 121 //!< U #define GAVL_KEY_V 122 //!< V #define GAVL_KEY_W 123 //!< W #define GAVL_KEY_X 124 //!< X #define GAVL_KEY_Y 125 //!< Y #define GAVL_KEY_Z 126 //!< Z #define GAVL_KEY_a 201 //!< a #define GAVL_KEY_b 202 //!< b #define GAVL_KEY_c 203 //!< c #define GAVL_KEY_d 204 //!< d #define GAVL_KEY_e 205 //!< e #define GAVL_KEY_f 206 //!< f #define GAVL_KEY_g 207 //!< g #define GAVL_KEY_h 208 //!< h #define GAVL_KEY_i 209 //!< i #define GAVL_KEY_j 210 //!< j #define GAVL_KEY_k 211 //!< k #define GAVL_KEY_l 212 //!< l #define GAVL_KEY_m 213 //!< m #define GAVL_KEY_n 214 //!< n #define GAVL_KEY_o 215 //!< o #define GAVL_KEY_p 216 //!< p #define GAVL_KEY_q 217 //!< q #define GAVL_KEY_r 218 //!< r #define GAVL_KEY_s 219 //!< s #define GAVL_KEY_t 220 //!< t #define GAVL_KEY_u 221 //!< u #define GAVL_KEY_v 222 //!< v #define GAVL_KEY_w 223 //!< w #define GAVL_KEY_x 224 //!< x #define GAVL_KEY_y 225 //!< y #define GAVL_KEY_z 226 //!< z #define GAVL_KEY_F1 301 //!< F1 #define GAVL_KEY_F2 302 //!< F2 #define GAVL_KEY_F3 303 //!< F3 #define GAVL_KEY_F4 304 //!< F4 #define GAVL_KEY_F5 305 //!< F5 #define GAVL_KEY_F6 306 //!< F6 #define GAVL_KEY_F7 307 //!< F7 #define GAVL_KEY_F8 308 //!< F8 #define GAVL_KEY_F9 309 //!< F9 #define GAVL_KEY_F10 310 //!< F10 #define GAVL_KEY_F11 311 //!< F11 #define GAVL_KEY_F12 312 //!< F12 /* Multimedia keys */ #define GAVL_KEY_MUTE 401 #define GAVL_KEY_VOLUME_PLUS 402 #define GAVL_KEY_VOLUME_MINUS 403 #define GAVL_KEY_PLAY 404 #define GAVL_KEY_PREV 405 #define GAVL_KEY_NEXT 406 #define GAVL_KEY_STOP 407 #define GAVL_KEY_PAUSE 408 #define GAVL_KEY_FORWARD 409 #define GAVL_KEY_REWIND 410 /** @} */ #endif // GAVL_KEYCODES_H_INCLUDED bplaum-gavl-b9385e3/include/gavl/log.h000066400000000000000000000055261513252040200175750ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #ifndef GAVL_LOG_H_INCLUDED #define GAVL_LOG_H_INCLUDED #include #include #include typedef enum { GAVL_LOG_ERROR = (1<<0), GAVL_LOG_WARNING = (1<<1), GAVL_LOG_INFO = (1<<2), GAVL_LOG_DEBUG = (1<<3), } gavl_log_level_t; /* Logging is done via a single callback function, which does nice stderr console logging by default and can be set to any other function once during initialization before any other threads are launched */ GAVL_PUBLIC void gavl_log_translate(const char * translation_domain, gavl_log_level_t level, const char * domain, const char * format, ...) __attribute__ ((format (printf, 4, 5))); GAVL_PUBLIC void gavl_logv_translate(const char * translation_domain, gavl_log_level_t level, const char * domain, const char * format, va_list argp); #define gavl_log(level, domain, ...) \ gavl_log_translate(PACKAGE, level, domain, __VA_ARGS__) #define gavl_logv(level, domain, fmt, valist) \ gavl_logv_translate(PACKAGE, level, domain, fmt, valist) GAVL_PUBLIC int gavl_log_stderr(void * data, gavl_msg_t * msg); GAVL_PUBLIC int gavl_log_msg_get(const gavl_msg_t * msg, gavl_log_level_t * level, const char ** domain, const char ** message); GAVL_PUBLIC void gavl_log_msg_set(gavl_msg_t * msg, gavl_log_level_t level, const char * domain, const char * message); GAVL_PUBLIC const char * gavl_log_level_to_string(gavl_log_level_t level); GAVL_PUBLIC void gavl_set_log_callback(gavl_handle_msg_func handler, void * priv); GAVL_PUBLIC void gavl_set_log_verbose(int level); GAVL_PUBLIC void gavl_set_log_mask(int mask); GAVL_PUBLIC void gavl_set_log_verbose(int level); #endif // GAVL_LOG_H_INCLUDED bplaum-gavl-b9385e3/include/gavl/metadata.h000066400000000000000000000304051513252040200205660ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #ifndef GAVL_METADATA_H_INCLUDED #define GAVL_METADATA_H_INCLUDED #ifdef __cplusplus extern "C" { #endif #include #include #include /** \defgroup metadata Metadata * \brief Metadata support * * This is a simple dictionary structure, which is * used my gmerlin applications and libraries to * associate metadata with a media file or a single * media stream. * * Metadata are defined as all data, which are not directly * related to the decoding process, but might be of interest * for the user. * * The tag types are completely generic so applications can * define their own tags. For compatibility it is, however * recommended to use the tags defined in \ref metatags.h * * Since 1.4.0 * * @{ */ /** Length of a date string of the format YYYY-MM-DD */ #define GAVL_METADATA_DATE_STRING_LEN 11 /** Length of a date/time string of the format YYYY-MM-DD HH:MM:SS */ #define GAVL_METADATA_DATE_TIME_STRING_LEN 20 /** \brief Free all metadata tags * \arg m A metadata structure */ // GAVL_PUBLIC void // gavl_dictionary_free(gavl_dictionary_t * m); /** \brief Initialize structure * \arg m A metadata structure * * Use this if you define a \ref gavl_dictionary_t * structure in uninitialized memory (e.g. on the stack) * before using it. */ // GAVL_PUBLIC void // gavl_dictionary_init(gavl_dictionary_t * m); /** \brief Set a tag * \arg m A metadata structure * \arg key Key * \arg val Value * * Set a metadata tag. The value is copied. */ // GAVL_PUBLIC void //gavl_dictionary_set_string(gavl_dictionary_t * m, // const char * key, // const char * val); /** \brief Set a tag * \arg m A metadata structure * \arg key Key * \arg val Value * * Like \ref gavl_dictionary_set_string except that the * value is not copied. */ //GAVL_PUBLIC void //gavl_dictionary_set_string_nocpy(gavl_dictionary_t * m, // const char * key, // char * val); /** \brief Append values of a tag * \arg m A metadata structure * \arg key Key * \arg val Value * * Appends a value to a tag, making it implicitly an array type. * The tag is created if not already existent. The value is copied. */ GAVL_PUBLIC void gavl_metadata_append(gavl_dictionary_t * m, const char * key, const char * val); /** \brief Append values of a tag without copying * \arg m A metadata structure * \arg key Key * \arg val Value * * Like \ref gavl_metadata_append except that the * value is not copied. */ GAVL_PUBLIC void gavl_metadata_append_nocpy(gavl_dictionary_t * m, const char * key, char * val); /** \brief Get the array value of a tag * \arg m A metadata structure * \arg key Key * \arg i Index (starting with zero). * \returns Array element if i > 0, else val */ GAVL_PUBLIC const char * gavl_dictionary_get_arr(const gavl_dictionary_t * m, const char * key, int i); /** \brief Get the array value of a tag * \arg m A metadata structure * \arg key Key * \arg i Index (starting with zero). * \returns Array element if i > 0, else val * * Like \ref gavl_dictionary_get_arr but ignoring the case of key */ GAVL_PUBLIC const char * gavl_dictionary_get_arr_i(const gavl_dictionary_t * m, const char * key, int i); /** \brief Get the array value of a tag * \arg m A metadata structure * \arg key Key * \arg glue Glue string (e.g. ", ") * \returns Array elements concatenated with the glue string between them */ GAVL_PUBLIC char * gavl_metadata_join_arr(const gavl_dictionary_t * m, const char * key, const char * glue); /** \brief Get the length of an array value of a tag * \arg m A metadata structure * \arg key Key * \returns The length */ GAVL_PUBLIC int gavl_dictionary_get_arr_len(const gavl_dictionary_t * m, const char * key); /** \brief Get the value of a tag ignrong case * \arg m A metadata structure * \arg key Key * \returns Value of the tag or NULL if the tag doesn't exist */ // GAVL_PUBLIC // const char * gavl_dictionary_get_string_i(const gavl_dictionary_t * m, // const char * key); /** \brief Set a date tag * \arg m A metadata structure * \arg key Key * \arg year Year * \arg month Month * \arg day Day */ GAVL_PUBLIC void gavl_dictionary_set_date(gavl_dictionary_t * m, const char * key, int year, int month, int day); /** \brief Get the year from a tag * \arg m A metadata structure * \arg key Key * \returns The year or 0 * */ GAVL_PUBLIC int gavl_dictionary_get_year(const gavl_dictionary_t * m, const char * key); /** \brief Get a date tag * \arg m A metadata structure * \arg key Key * \arg year Returns year * \arg month Returns month * \arg day Returns day * \returns 1 if a valid date was returned, 0 else */ GAVL_PUBLIC int gavl_dictionary_get_date(const gavl_dictionary_t * m, const char * key, int * year, int * month, int * day); /** \brief Set a date/time tag * \arg m A metadata structure * \arg key Key * \arg year Year * \arg month Month * \arg day Day * \arg hour Hour * \arg minute Minute * \arg second Second */ GAVL_PUBLIC void gavl_dictionary_set_date_time(gavl_dictionary_t * m, const char * key, int year, int month, int day, int hour, int minute, int second); /** \brief Get a date/time tag * \arg m A metadata structure * \arg key Key * \arg year Returns year * \arg month Returns month * \arg day Returns day * \arg hour Returns hour * \arg minute Returns minute * \arg second Returns second * \returns 1 if a valid date/time was returned, 0 else */ GAVL_PUBLIC int gavl_dictionary_get_date_time(const gavl_dictionary_t * m, const char * key, int * year, int * month, int * day, int * hour, int * minute, int * second); /** \brief Format a date string * \arg year Year * \arg month Month * \arg day Day * \arg ret String to be formatted * * The string needs to be at least \ref GAVL_METADATA_DATE_STRING_LEN * bytes long. */ GAVL_PUBLIC void gavl_metadata_date_to_string(int year, int month, int day, char * ret); /** \brief Format a date string * \arg year Year * \arg month Month * \arg day Day * \arg ret String to be formatted * \arg hour Hour * \arg minute Minute * \arg second Second * * The string needs to be at least * \ref GAVL_METADATA_DATE_TIME_STRING_LEN bytes long. */ GAVL_PUBLIC void gavl_metadata_date_time_to_string(int year, int month, int day, int hour, int minute, int second, char * ret); /** \brief Check if 2 metadata structures are equal * \arg m1 Metadata 1 * \arg m2 Metadata 2 * \returns 1 if the 2 metadata structures are identical, 0 else */ GAVL_PUBLIC int gavl_metadata_equal(const gavl_dictionary_t * m1, const gavl_dictionary_t * m2); /** \brief Clear fields, which are related to the compression * \arg m Metadata * * This deletes fields, which are related to the compression of the * stream (e.g. bitrate, codec etc.). Use this before transcoding * the stream in another format to suppress bogus values in the output * stream */ GAVL_PUBLIC void gavl_metadata_delete_compression_fields(gavl_dictionary_t * m); /** \brief Clear fields, which are obtained implicitly * \arg m Metadata * * This deletes fields, which can implicitly obtainecd from the file */ GAVL_PUBLIC void gavl_metadata_delete_implicit_fields(gavl_dictionary_t * m); /** \brief Set the enddian tag * \arg m Metadata * * This sets the "Endian" field to 1 on big endian architectures * 0 else */ GAVL_PUBLIC void gavl_dictionary_set_string_endian(gavl_dictionary_t * m); /** \brief Check if endianness needs to be swapped * \arg m Metadata * \returns 1 if the stream was generated on a machine with different endianness, 0 else. */ GAVL_PUBLIC int gavl_metadata_do_swap_endian(const gavl_dictionary_t * m); GAVL_PUBLIC gavl_dictionary_t * gavl_metadata_add_image_uri(gavl_dictionary_t * m, const char * key, int w, int h, const char * mimetype, const char * uri); GAVL_PUBLIC const char * gavl_dictionary_get_string_image_uri(const gavl_dictionary_t * m, const char * key, int i, int * wp, int * hp, const char ** mimetype); GAVL_PUBLIC const char * gavl_dictionary_get_string_image_max(const gavl_dictionary_t * m, const char * key, int w, int h, const char * mimetype); GAVL_PUBLIC void gavl_metadata_add_image_embedded(gavl_dictionary_t * m, const char * key, int w, int h, const char * mimetype, const uint8_t * image_data, int len); GAVL_PUBLIC const gavl_dictionary_t * gavl_dictionary_get_image_max(const gavl_dictionary_t * m, const char * key, int w, int h, const char * mimetype); GAVL_PUBLIC const gavl_dictionary_t * gavl_dictionary_get_image_max_proto(const gavl_dictionary_t * m, const char * key, int w, int h, const char * mimetype, const char * protocol); GAVL_PUBLIC gavl_dictionary_t * gavl_metadata_add_src(gavl_dictionary_t * m, const char * key, const char * mimetype, const char * location); GAVL_PUBLIC const gavl_dictionary_t * gavl_metadata_get_src(const gavl_dictionary_t * m, const char * key, int idx, const char ** mimetype, const char ** location); GAVL_PUBLIC gavl_dictionary_t * gavl_metadata_get_src_nc(gavl_dictionary_t * m, const char * key, int idx); GAVL_PUBLIC int gavl_metadata_has_src(const gavl_dictionary_t * m, const char * key, const char * location); /** * @} */ #ifdef __cplusplus } #endif #endif // GAVL_METADATA_H_INCLUDED bplaum-gavl-b9385e3/include/gavl/metatags.h000066400000000000000000000530371513252040200206210ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #ifndef GAVL_METATAGS_H_INCLUDED #define GAVL_METATAGS_H_INCLUDED /** \defgroup metatags Defined metadata keys * \ingroup metadata * * For interoperability reasons, try to use these macros * as metadata keys whenever possible. * * Since 1.4.0 * * @{ */ /** \brief Title of the song/movie... */ #define GAVL_META_TITLE "Title" /** \brief Title of the song/movie... */ #define GAVL_META_SEARCH_TITLE "SearchTitle" #define GAVL_META_ORIGINAL_TITLE "OriginalTitle" /** \brief Unique ID within this database */ #define GAVL_META_ID "ID" #define GAVL_META_UUID "UUID" #define GAVL_META_HASH "Hash" /* Generic name */ #define GAVL_META_NAME "Name" /* Object is locked for access */ #define GAVL_META_LOCKED "Locked" #define GAVL_META_NEXT_ID "NextID" #define GAVL_META_PREVIOUS_ID "PreviousID" /** \brief Performing artist */ #define GAVL_META_ARTIST "Artist" /** \brief Artist of the Album */ #define GAVL_META_ALBUMARTIST "Albumartist" /** \brief Author */ #define GAVL_META_AUTHOR "Author" /** \brief Copyright */ #define GAVL_META_COPYRIGHT "Copyright" /** \brief Album */ #define GAVL_META_ALBUM "Album" /** \brief Genre */ #define GAVL_META_GENRE "Genre" /** \brief Category */ #define GAVL_META_CATEGORY "Category" /** \brief Tracknumber within the album or (more generically) index within parent container * * Integer starting with 1 */ #define GAVL_META_TRACKNUMBER "Track" /** \brief Generic date * * YYYY-MM-DD [HH:MM:SS] */ #define GAVL_META_DATE "Date" /** \brief Creation date * * YYYY-MM-DD [HH:MM:SS] */ #define GAVL_META_DATE_CREATE "CreationDate" // YYYY-MM-DD [HH:MM:SS] /** \brief Modification date * * YYYY-MM-DD [HH:MM:SS] */ #define GAVL_META_DATE_MODIFY "ModificationDate" // YYYY-MM-DD [HH:MM:SS] #define GAVL_META_MTIME "mtime" // time_t (from stat()) as long /* Size of the object in bytes */ #define GAVL_META_TOTAL_BYTES "totalbytes" /** \brief Generic year */ #define GAVL_META_YEAR "Year" // YYYY /** \brief Language * * Use this for subtitles or audio streams */ #define GAVL_META_LANGUAGE "Language" // ISO 639-2/B 3 letter code /** \brief Comment */ #define GAVL_META_COMMENT "Comment" /** \brief Related URL */ #define GAVL_META_RELURL "RelURL" /** \brief Referenced URL (means: Redirector) */ // #define GAVL_META_REFURL "RefURL" /** \brief Software * * For media files, this is the multiplexer software. * For single stream this is the encoder software */ #define GAVL_META_SOFTWARE "Software" /** \brief Person, who created the file */ #define GAVL_META_CREATOR "Creator" /** \brief Format * * For media files, this is the container format. * For single stream this is the name of the codec */ #define GAVL_META_FORMAT "Format" /* Some defined formats */ #define GAVL_META_FORMAT_MP3 "MP3" #define GAVL_META_FORMAT_FLAC "Flac" /** \brief Label * * For streams it's the label (e.g. "Directors comments") * to display in the stream menu * * In global metadata it's the label which should be displayed when * this file is played */ #define GAVL_META_LABEL "Label" /** \brief Bitrate * * Bitrate as integer in bits/s. Can also be a * string (like VBR) */ #define GAVL_META_BITRATE "Bitrate" /* Framerate (float, exact value is in the video format) */ #define GAVL_META_FRAMERATE "Framerate" /** \brief Valid bits per audio sample */ #define GAVL_META_AUDIO_BITS "BitsPerSample" /** \brief Valid bits per pixel */ #define GAVL_META_VIDEO_BPP "BitsPerPixel" /** \brief H.264 profile_idc * * Raw value from the header */ #define GAVL_META_PROFILE "Profile" #define GAVL_META_LEVEL "Level" /* MPEG-2 Profiles */ #define GAVL_META_MPEG2_PROFILE_422 "422" #define GAVL_META_MPEG2_PROFILE_HIGH "High" #define GAVL_META_MPEG2_PROFILE_SPATIALLY_SCALABLE "SpatiallyScalable" #define GAVL_META_MPEG2_PROFILE_SNR_SCALABLE "SNRScalable" #define GAVL_META_MPEG2_PROFILE_MAIN "Main" #define GAVL_META_MPEG2_PROFILE_SIMPLE "Simple" /* MPEG-2 Levels */ #define GAVL_META_MPEG2_LEVEL_HIGH "High" #define GAVL_META_MPEG2_LEVEL_HIGH1440 "High1440" #define GAVL_META_MPEG2_LEVEL_MAIN "Main" #define GAVL_META_MPEG2_LEVEL_LOW "Low" /* MPEG-4 Profiles */ #define GAVL_META_MPEG4_PROFILE_SIMPLE "Simple" #define GAVL_META_MPEG4_PROFILE_SIMPLE_SCALABLE "SimpleScalable" #define GAVL_META_MPEG4_PROFILE_CORE "Core" #define GAVL_META_MPEG4_PROFILE_MAIN "Main" #define GAVL_META_MPEG4_PROFILE_N_BIT "N-Bit" #define GAVL_META_MPEG4_PROFILE_SCALABLE_TEXTURE "ScalableTexture" #define GAVL_META_MPEG4_PROFILE_SIMPLE_FACE_ANIMATION "SimpleFaceAnimation" #define GAVL_META_MPEG4_PROFILE_BASIC_ANIMATED_TEXTURE "BasicAnimatedTexture" #define GAVL_META_MPEG4_PROFILE_HYBRID "Hybrid" #define GAVL_META_MPEG4_PROFILE_ADVANCED_REAL_TIME "AdvancedRealTime" #define GAVL_META_MPEG4_PROFILE_CORE_SCALABLE "CoreScalable" #define GAVL_META_MPEG4_PROFILE_ADVANCED_CODING "AdvancedCoding" #define GAVL_META_MPEG4_PROFILE_ADVANCED_CORE "AdvancedCore" #define GAVL_META_MPEG4_PROFILE_ADVANCED_SCALABLE_TEXTURE "AdvancedScalableTexture" #define GAVL_META_MPEG4_PROFILE_SIMPLE_STUDIO "AdvancedSimpleStudio" #define GAVL_META_MPEG4_PROFILE_ADVANCED_SIMPLE "AdvancedSimple" /* H.264 Profiles */ #define GAVL_META_H264_PROFILE_BASELINE "Baseline" #define GAVL_META_H264_PROFILE_CONSTRAINED_BASELINE "ConstrainedBaseline" #define GAVL_META_H264_PROFILE_MAIN "Main" #define GAVL_META_H264_PROFILE_EXTENDED "Extended" #define GAVL_META_H264_PROFILE_HIGH "High" #define GAVL_META_H264_PROFILE_CONSTRAINED_HIGH "ConstrainedHigh" #define GAVL_META_H264_PROFILE_PROGRESSIVE_HIGH "ProgressiveHigh" #define GAVL_META_H264_PROFILE_HIGH_10 "High10" #define GAVL_META_H264_PROFILE_HIGH_10_INTRA "High10Intra" #define GAVL_META_H264_PROFILE_HIGH_422 "High422" #define GAVL_META_H264_PROFILE_HIGH_422_INTRA "High422Intra" #define GAVL_META_H264_PROFILE_HIGH_444_PREDICTIVE "High444Predictive" #define GAVL_META_H264_PROFILE_HIGH_444_INTRA "High444Intra" #define GAVL_META_H264_PROFILE_CAVLC_444_INTRA "CAVLC444Intra" #define GAVL_META_H264_PROFILE_SCALABLE_BASELINE "ScalableBaseline" #define GAVL_META_H264_PROFILE_SCALABLE_CONSTRAINED_BASELINE "ScalableConstrainedBaseline" #define GAVL_META_H264_PROFILE_SCALABLE_HIGH "ScalableHigh" #define GAVL_META_H264_PROFILE_SCALABLE_CONSTRAINED_HIGH "ScalableConstrainedHigh" #define GAVL_META_H264_PROFILE_SCALABLE_HIGH_INTRA "ScalableHighIntra" #define GAVL_META_H264_PROFILE_STEREO_HIGH "StereoHigh" #define GAVL_META_H264_PROFILE_MULTIVIEW_HIGH "MultiviewHigh" #define GAVL_META_H264_PROFILE_MULTIVIEW_DEPTH_HIGH "MultiviewDepthHigh" #define GAVL_META_LEVEL "Level" /** \brief Vendor of the device/software, which created the file */ #define GAVL_META_VENDOR "Vendor" #define GAVL_META_DISK_NAME GAVL_META_LABEL /** \brief Model name of the device, which created the file */ #define GAVL_META_DEVICE "Device" /** \brief Name of the station for Radio or TV streams */ #define GAVL_META_STATION "Station" #define GAVL_META_STATION_URL "StationURL" #define GAVL_META_LOGO_URL "LogoURL" /** \brief Approximate duration */ #define GAVL_META_APPROX_DURATION "ApproxDuration" /** \brief MimeType associated with an item */ #define GAVL_META_MIMETYPE "MimeType" /** \brief Location used for opening this resource */ #define GAVL_META_URI "URI" /** \brief Actual location (i.e. after http redirection) */ #define GAVL_META_REAL_URI "RealURI" /** \brief src attribute, can be either an array (for multiple sources) or a dictionary with at least GAVL_META_URI set */ #define GAVL_META_SRC "src" /* Total tracks of the logical parent */ #define GAVL_META_TOTAL_TRACKS "TotalTracks" /** \brief "1" is big endian, 0 else */ #define GAVL_META_BIG_ENDIAN "BigEndian" /** \brief Movie Actor. Can be array for multiple entries */ #define GAVL_META_ACTOR "Actor" /** \brief Movie Director. Can be array for multiple entries */ #define GAVL_META_DIRECTOR "Director" /** \brief Country. Can be array for multiple entries */ #define GAVL_META_COUNTRY "Country" /** \brief Country (). Can be array for multiple entries */ // ISO 3166-1 alpha-3 #define GAVL_META_COUNTRY_CODE_3 "CountryCode3" // ISO 3166-1 alpha-2 #define GAVL_META_COUNTRY_CODE_2 "CountryCode2" #define GAVL_META_GROUP "Group" #define GAVL_META_DESCRIPTION "Description" /** \brief Movie plot. */ #define GAVL_META_PLOT GAVL_META_DESCRIPTION /** \brief Audio languages * Array of language LABELS (not ISO codes) in the root * metadata dictionary */ #define GAVL_META_AUDIO_LANGUAGES "AudioLanguages" /** \brief Subtitle language * Array of language LABELS (not ISO codes) in the root * metadata dictionary */ #define GAVL_META_SUBTITLE_LANGUAGES "SubtitleLanguages" /* Images associated with media content */ /** \brief Cover art */ #define GAVL_META_COVER_URL "CoverURL" /* For embedded covers: Location is NULL and offset and size are given */ #define GAVL_META_COVER_EMBEDDED "CoverEmbedded" /* Buffer of an embedded image */ #define GAVL_META_IMAGE_BUFFER "ImageBuffer" #define GAVL_META_WALLPAPER_URL "WallpaperURL" #define GAVL_META_POSTER_URL "PosterURL" #define GAVL_META_ICON_URL "IconURL" #define GAVL_META_ICON_NAME "IconName" #define GAVL_META_CAN_SEEK "CanSeek" #define GAVL_META_CAN_PAUSE "CanPause" #define GAVL_META_SAMPLE_ACCURATE "SampleAccurate" #define GAVL_META_TIME_PTS "PTS" #define GAVL_META_TIME_CLOCK "Clock" #define GAVL_META_TIME_START "Start" #define GAVL_META_TIME_PTS_TO_CLOCK "PTSToClock" #define GAVL_META_TIME_PTS_TO_START "PTSToStart" /* * Several commands are expected in asynchronous mode. * Details are specified in libgmerlin */ #define GAVL_META_ASYNC "Async" #define GAVL_META_AVG_BITRATE "AVGBitrate" // Float, kbps #define GAVL_META_AVG_FRAMERATE "AVGFramerate" // Float /* Purely informational entries for the global metadata or per Location */ #define GAVL_META_AUDIO_CHANNELS "Channels" #define GAVL_META_AUDIO_SAMPLERATE "Samplerate" #define GAVL_META_AUDIO_BITRATE "AudioBitrate" #define GAVL_META_VIDEO_BITRATE "VideoBitrate" #define GAVL_META_AUDIO_CODEC "AudioCodec" #define GAVL_META_VIDEO_CODEC "VideoCodec" #define GAVL_META_VIDEO_ASPECT_RATIO "VideoAspectRatio" // Human readable e.g. (16:9) #define GAVL_META_WIDTH "w" #define GAVL_META_HEIGHT "h" #define GAVL_META_X "x" #define GAVL_META_Y "y" /* Specify that a file got transcoded, i.e. has not the original format */ #define GAVL_META_TRANSCODED "transcoded" #define GAVL_META_NUM_CHILDREN "NumChildren" // Number of children for container items #define GAVL_META_NUM_ITEM_CHILDREN "NumItemChildren" // Number of children for container items #define GAVL_META_NUM_CONTAINER_CHILDREN "NumContainerChildren" // Number of children for container items #define GAVL_META_CHILDREN "children" // Generic name for children of an element, which must be an array #define GAVL_META_IDX "idx" // Index in parent container #define GAVL_META_TOTAL "total" // Total number (maximum idx + 1) #define GAVL_META_SHOW "Show" // TV Show, this item belongs to #define GAVL_META_SEASON "Season" // Season, this episode belongs to (integer but can be non-continuous #define GAVL_META_PODCAST "Podcast" // Name of the pocast this item belongs to #define GAVL_META_EPISODENUMBER "EPNum" // Number of the Episode (starting with 1) #define GAVL_META_RATING "Rating" // Rating (float, 0.0..1.0) #define GAVL_META_PARENTAL_CONTROL "ParentalControl" // mpaa or FSK (or whatever) rating #define GAVL_META_TAG "Tag" // Arbitrary tag #define GAVL_META_NFO_FILE "NFOFILE" // #define GAVL_META_TOOLTIP "tooltip" // Tooltip to be shown in GUIs #define GAVL_META_STREAM_DURATION "duration" #define GAVL_META_STREAM_FORMAT "fmt" #define GAVL_META_STREAM_PACKET_TIMESCALE "pscale" #define GAVL_META_STREAM_SAMPLE_TIMESCALE "sscale" #define GAVL_META_STREAM_ENABLED "enabled" #define GAVL_META_STREAM_PACKET_DURATION_DIVISOR "packet_duration_divisor" /* Set to the absolute stream index offset by one by default but can be changed to anything */ #define GAVL_META_STREAM_ID "streamid" /* Handled inside of gavl */ #define GAVL_META_STREAM_ID_MSG_GAVF -2 #define GAVL_META_STREAM_ID_MSG_PROGRAM -1 #define GAVL_META_STREAM_ID_MEDIA_START 1 #define GAVL_META_STREAM_COMPRESSION_INFO "cmp" #define GAVL_META_STREAM_STATS "stats" #define GAVL_META_STREAM_STATS_NUM_BYTES GAVL_META_TOTAL_BYTES #define GAVL_META_STREAM_STATS_NUM_PACKETS "TotalPackets" #define GAVL_META_STREAM_STATS_PTS_START "PTSStart" #define GAVL_META_STREAM_STATS_PTS_END "PTSEnd" #define GAVL_META_STREAM_STATS_PACKET_SIZE_MIN "minsize" #define GAVL_META_STREAM_STATS_PACKET_SIZE_MAX "maxsize" #define GAVL_META_STREAM_STATS_PACKET_DURATION_MIN "mindur" #define GAVL_META_STREAM_STATS_PACKET_DURATION_MAX "maxdur" #define GAVL_META_STREAMS "streams" #define GAVL_META_STREAMS_EXT "streams-ext" // External streams with separate URIs (e.g. subtitles) #define GAVL_META_STREAM_TYPE "streamtype" #define GAVL_META_METADATA "metadata" #define GAVL_META_EDL "edl" #define GAVL_META_TRACKS GAVL_META_CHILDREN // Array containing single tracks // Additional url variables passed to the open() function #define GAVL_META_URLVARS "urlvars" #define GAVL_META_CURIDX "curidx" // Index of "current" child #define GAVL_META_PARTS "parts" // Parts of a multipart movie #define GAVL_META_VARIANTS "variants" // Multiple variants of the same content (typically with different bitrates) // #define GAVL_META_DATA_FORMAT_MSG "msg" // #define GAVL_META_DATA_ROLE_EVENTS "evt" #define GAVL_META_MSG_TIMESTAMP "timestamp" // Timestamp of messages embedded into A/V streams /** * * */ #define GAVL_META_CLASS "MediaClass" #define GAVL_META_CHILD_CLASS "ChildClass" /* Value for class */ #define GAVL_META_CLASS_ITEM "item" #define GAVL_META_CLASS_AUDIO_FILE "item.audio" #define GAVL_META_CLASS_VIDEO_FILE "item.video" #define GAVL_META_CLASS_AUDIO_DISK_TRACK "item.audio.disktrack" #define GAVL_META_CLASS_VIDEO_DISK_TRACK "item.video.disktrack" #define GAVL_META_CLASS_SONG "item.audio.song" #define GAVL_META_CLASS_MOVIE "item.video.movie" #define GAVL_META_CLASS_MOVIE_PART "item.video.movie.part" #define GAVL_META_CLASS_AUDIO_PODCAST_EPISODE "item.audio.podcastepisode" #define GAVL_META_CLASS_VIDEO_PODCAST_EPISODE "item.video.podcastepisode" #define GAVL_META_CLASS_TV_EPISODE "item.video.episode" /* Streams get this this type when it's not clear if they are audio or video broadcasts */ #define GAVL_META_CLASS_BROADCAST "item.broadcast" #define GAVL_META_CLASS_AUDIO_BROADCAST "item.audio.broadcast" #define GAVL_META_CLASS_VIDEO_BROADCAST "item.video.broadcast" #define GAVL_META_CLASS_IMAGE "item.image" // non-media file: This is given to filesystem objects, which contain no media #define GAVL_META_CLASS_FILE "item.file" // Location, which needs to be specified further: This is given to urls in redirector (e.g. m3u) files. // Loading can be delayed #define GAVL_META_CLASS_LOCATION "item.location" // External subtitle file #define GAVL_META_CLASS_SUBTITLE_FILE "item.subtitles" // Stream comes from recording device #define GAVL_META_CLASS_AUDIO_RECORDER "item.audio.recorder" #define GAVL_META_CLASS_VIDEO_RECORDER "item.video.recorder" /* Container values */ #define GAVL_META_CLASS_CONTAINER "container" // Generic #define GAVL_META_CLASS_MUSICALBUM "container.musicalbum" #define GAVL_META_CLASS_PHOTOALBUM "container.photoalbum" #define GAVL_META_CLASS_PLAYLIST "container.playlist" #define GAVL_META_CLASS_PODCAST "container.podcast" #define GAVL_META_CLASS_CONTAINER_CATEGORY "container.category" #define GAVL_META_CLASS_CONTAINER_ACTOR "container.category.actor" #define GAVL_META_CLASS_CONTAINER_DIRECTOR "container.category.director" #define GAVL_META_CLASS_CONTAINER_ARTIST "container.category.artist" #define GAVL_META_CLASS_CONTAINER_COUNTRY "container.category.country" #define GAVL_META_CLASS_CONTAINER_GENRE "container.category.genre" #define GAVL_META_CLASS_CONTAINER_LANGUAGE "container.category.language" #define GAVL_META_CLASS_CONTAINER_TAG "container.category.tag" #define GAVL_META_CLASS_CONTAINER_YEAR "container.category.year" #define GAVL_META_CLASS_CONTAINER_TV "container.tv" #define GAVL_META_CLASS_CONTAINER_RADIO "container.radio" #define GAVL_META_CLASS_TV_SEASON "container.season" #define GAVL_META_CLASS_TV_SHOW "container.tvshow" #define GAVL_META_CLASS_DIRECTORY "container.directory" // On filesystem #define GAVL_META_CLASS_MULTITRACK_FILE "container.multitrackfile" /* Root Containers */ #define GAVL_META_CLASS_ROOT "container.root" // Mapped locally, not part of database #define GAVL_META_CLASS_ROOT_PLAYQUEUE "container.root.playqueue" #define GAVL_META_CLASS_ROOT_MUSICALBUMS "container.root.musicalbums" #define GAVL_META_CLASS_ROOT_SONGS "container.root.songs" #define GAVL_META_CLASS_ROOT_MOVIES "container.root.movies" #define GAVL_META_CLASS_ROOT_TV_SHOWS "container.root.tvshows" #define GAVL_META_CLASS_ROOT_STREAMS "container.root.streams" #define GAVL_META_CLASS_ROOT_DIRECTORIES "container.root.directories" #define GAVL_META_CLASS_ROOT_PHOTOS "container.root.photos" #define GAVL_META_CLASS_ROOT_PODCASTS "container.root.podcasts" #define GAVL_META_CLASS_ROOT_RECORDERS "container.root.recorders" #define GAVL_META_CLASS_ROOT_FAVORITES "container.root.favorites" #define GAVL_META_CLASS_ROOT_BOOKMARKS "container.root.bookmarks" #define GAVL_META_CLASS_ROOT_LIBRARY "container.root.library" #define GAVL_META_CLASS_ROOT_REMOVABLE "container.root.removable" #define GAVL_META_CLASS_ROOT_REMOVABLE_AUDIOCD "container.root.removable.cd.audio" #define GAVL_META_CLASS_ROOT_REMOVABLE_VCD "container.root.removable.cd.vcd" #define GAVL_META_CLASS_ROOT_REMOVABLE_SVCD "container.root.removable.cd.svcd" #define GAVL_META_CLASS_ROOT_REMOVABLE_VIDEODVD "container.root.removable.dvd.video" #define GAVL_META_CLASS_ROOT_REMOVABLE_FILESYSTEM "container.root.removable.filesystem" #define GAVL_META_CLASS_ROOT_REMOVABLE_FILESYSTEM_HDD "container.root.removable.filesystem.hdd" #define GAVL_META_CLASS_ROOT_REMOVABLE_FILESYSTEM_PENDRIVE "container.root.removable.filesystem.pendrive" #define GAVL_META_CLASS_ROOT_REMOVABLE_FILESYSTEM_MEMORYCARD "container.root.removable.filesystem.memorycard" #define GAVL_META_CLASS_ROOT_REMOVABLE_FILESYSTEM_MOBILE "container.root.removable.filesystem.mobile" #define GAVL_META_CLASS_ROOT_REMOVABLE_FILESYSTEM_CD "container.root.removable.filesystem.cdrom" #define GAVL_META_CLASS_ROOT_REMOVABLE_FILESYSTEM_DVD "container.root.removable.filesystem.dvd" /* Remote media server */ #define GAVL_META_CLASS_ROOT_SERVER "container.root.server" /* Non-media source related media classes */ #define GAVL_META_CLASS_BACKEND_RENDERER "backend.renderer" #define GAVL_META_CLASS_BACKEND_MDB "backend.mdb" #define GAVL_META_CLASS_BACKEND_CONTROLPANEL "backend.controlpanel" #define GAVL_META_CLASS_SINK_AUDIO "sink.audio" #define GAVL_META_CLASS_SINK_VIDEO "sink.video" #define GAVL_META_CLASS_WEBPAGE "item.webpage" /* GUI States */ // Indicate, that an error occurred during loading of a track #define GAVL_META_GUI_ERROR "GUIError" // Track is selected in a GUI #define GAVL_META_GUI_SELECTED "GUISelected" // Track is current in a GUI #define GAVL_META_GUI_CURRENT "GUICurrent" /** * @} */ #endif // GAVL_METATAGS_H_INCLUDED bplaum-gavl-b9385e3/include/gavl/msg.h000066400000000000000000000510461513252040200176000ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #ifndef GAVL_MSG_H_INCLUDED #define GAVL_MSG_H_INCLUDED #include #include #define GAVL_MSG_HEADER_TIMESTAMP "timestamp" // Always GAVL_TIME_SCALE #define GAVL_MSG_NONE -1 //!< Reserved ID for non valid message #define GAVL_MSG_MAX_ARGS 16 //!< Maximum number of args #define GAVL_MSG_NS_LOG 1 #define GAVL_MSG_NS_GENERIC 2 #define GAVL_MSG_NS_SRC 3 #define GAVL_MSG_NS_GUI 4 #define GAVL_MSG_NS_GAVF 5 #define GAVL_MSG_NS_STATE 6 #define GAVL_MSG_NS_SINK 7 /* Message IDs */ /* * GAVL_MSG_NS_GENERIC */ /** \brief Quit */ #define GAVL_CMD_QUIT 1 /** \brief Ping * The other end responds with pong. This is used to keep the * connections alive */ #define GAVL_CMD_PING 2 /** \brief Quit (acknowledge) */ #define GAVL_MSG_QUIT 100 #define GAVL_MSG_PONG 101 /** \brief Generic progress callback * * arg1: Activity (string) * arg0: Percentage (0.0..1.0) */ #define GAVL_MSG_PROGRESS 101 /** * \brief Resource added * context_id: ID (string) * * arg0: Added resource (dictionary) * */ #define GAVL_MSG_RESOURCE_ADDED 102 /** * \brief Resource deleted * * context_id: ID (string) */ #define GAVL_MSG_RESOURCE_DELETED 103 /** * \brief Command for changing a resource (e.g. a sink) * * context_id: Object class of the resource * arg0: resource (dictionary) */ #define GAVL_CMD_SET_RESOURCE 104 /** * \brief Query resources */ #define GAVL_FUNC_QUERY_RESOUCRES 105 /** * \brief Response: Same format as GAVL_MSG_RESOURCE_ADDED */ #define GAVL_RESP_QUERY_RESOUCRES 106 /* * GAVL_MSG_NS_SRC */ /** \brief Tell the client to restart playback * arg0: reason (int) */ // Poor performance (network or hardware) restart with lower bitrate // #define GAVL_MSG_SRC_RESTART_PERFORMANCE 3 /* * Set the URL variables to append when the source is re-started. * This can be set by HLS streams to play across discontinuitites * * arg0: Variables to append to the URI when it's loaded (dictionary) */ #define GAVL_MSG_SRC_RESTART_VARS 1 /** \brief Pixel aspect ratio changed * * arg0: time (time) * arg1: scale (int) * arg2: Stream * arg3: new pixel width * arg4: new pixel width */ #define GAVL_MSG_SRC_ASPECT_CHANGED 2 /** \brief Buffering notification * * arg0: Percentage (float), negative means buffering finished */ #define GAVL_MSG_SRC_BUFFERING 3 /** \brief Authentication request * * arg0: String (e.g. domain name) (string) */ #define GAVL_MSG_SRC_AUTHENTICATE 4 // Some error, restart with same parameters #define GAVL_MSG_SRC_SKIP_NONE 0 // Decode all frames #define GAVL_MSG_SRC_SKIP_NONREF 1 // Skip non-reference frames #define GAVL_MSG_SRC_SKIP_NONKEY 2 // Skip non-keyframes /** \brief Skip mode changed * * arg0: Video stream index * arg1: Skip mode (see GAVL_SKIP_MODE) */ #define GAVL_MSG_SRC_SKIP_MODE_CHANGED 5 /** \brief Started * * arg0: Track info with actual format */ #define GAVL_MSG_SRC_STARTED 6 /** \brief Authentication request * * arg0: Username (string) * arg1: Password (string) */ #define GAVL_CMD_SRC_AUTHENTICATE 101 /** \brief Multitrack support * * arg0: Track (int) * * Argument 1 decides, if the operation is expected in * synchronous mode or not * * Calling this is only allowed right after GAVL_MSG_SRC_EOF was received */ #define GAVL_CMD_SRC_SELECT_TRACK 102 /** \brief Seek support * * arg0: Time (long) * arg1: Scale (int) * arg2: Unit (int) * */ #define GAVL_CMD_SRC_SEEK 103 /** \brief Start the source */ #define GAVL_CMD_SRC_START 105 /** \brief Pause the source * * This signals, that we will pause the read functions for a while. */ #define GAVL_CMD_SRC_PAUSE 106 /** \brief Resume the source * * Reverse the effect of an earlier pause command */ #define GAVL_CMD_SRC_RESUME 107 #define GAVL_CMD_SRC_SET_VIDEO_SKIP_MODE 108 // Not implemented for now /* * arg0: Type (gavl_stream_type_t) * arg1: Index (starting with 0) * arg2: Enable (1 or 0) */ #define GAVL_CMD_SRC_SET_STREAM_ACTION 109 /* * arg0: audio_storage * arg1: video_storage */ #define GAVL_CMD_SRC_SET_FRAME_STORAGE 110 /* GUI Events */ /* * GAVL_MSG_NS_GUI */ /** \brief Key was pressed * * arg0: Key (see keycodes.h) * arg1: Mask (see keycodes.h) */ #define GAVL_MSG_GUI_KEY_PRESS 1 // Key was pressed /** \brief Key was released * * arg0: Key (see keycodes.h) * arg1: Mask (see keycodes.h) */ #define GAVL_MSG_GUI_KEY_RELEASE 2 // Key was released /** \brief Button was pressed * * arg0: Button (1..5) * arg1: Mask (see keycodes.h) * arg2: x (int, in screen pixels) * arg3: y (int, in screen pixels) * arg4: pos (position, 0..1, relative to Video viewport) */ #define GAVL_MSG_GUI_BUTTON_PRESS 3 // Mouse button was pressed /** \brief Button was released * * arg0: Button (1..5) * arg1: Mask (see keycodes.h) * arg2: x (int, in screen pixels) * arg3: y (int, in screen pixels) * arg4: pos (position, 0..1, relative to Video viewport) */ #define GAVL_MSG_GUI_BUTTON_RELEASE 4 // Mouse button was released /** \brief Doubleclick * * arg0: Button (1..5) * arg1: Mask (see keycodes.h) * arg2: x (int, in screen pixels) * arg3: y (int, in screen pixels) * arg4: pos (position, 0..1, relative to Video viewport) */ #define GAVL_MSG_GUI_BUTTON_DOUBLECLICK 5 // Mouse button was released /** \brief Motion callback * * arg0: Mask (see keycodes.h) * arg1: x (int, in video pixels) * arg2: y (int, in video pixels) * arg3: pos (position, 0..1, relative to Video viewport) */ #define GAVL_MSG_GUI_MOUSE_MOTION 6 // Mouse was moved /** \brief Accelerator * * arg0: id (int) */ #define GAVL_MSG_GUI_ACCEL 7 // Accelerator was triggered /** \brief Window coordinates changed * * arg0: x (int) * arg1: y (int) * arg2: w (int) * arg3: h (int) */ #define GAVL_MSG_GUI_WINDOW_COORDS 8 // Window coordinates changed /** \brief Window coordinates changed * * arg0: direction (int) */ #define GAVL_MSG_GUI_SWIPE 9 // Swipe (touch screen) #define GAVL_MSG_GUI_SWIPE_UP 1 #define GAVL_MSG_GUI_SWIPE_DOWN 2 #define GAVL_MSG_GUI_SWIPE_LEFT 3 #define GAVL_MSG_GUI_SWIPE_RIGHT 4 /** \brief Set window title * * arg0: title (string) */ #define GAVL_CMD_GUI_SET_WINDOW_TITLE 100 // GAVL_MSG_NS_GAVF /* These messages control the low-level packet flow in order to allow format changes, resyncs etc. In the direction of the AV-Data, they are sent as packets of the stream-ID GAVL_META_STREAM_ID_MSG_GAVF. In the opposite direction they are sent raw. */ #define GAVL_MSG_GAVF_MEDIA_INFO 1 /** \brief Seeked * */ #define GAVL_MSG_GAVF_SEEK 5 /** \brief Track selected * arg0: New track (dictionary) */ #define GAVL_MSG_GAVF_SELECT_TRACK 6 /** \brief End of file * * Transmitted as the last packet of a track. After that, another * track (or the same again) can be selected and the stream can newly be set up */ #define GAVL_MSG_GAVF_EOF 7 #define GAVL_MSG_GAVF_READY 8 /** \brief Transport started * arg0: New track (dictionary) */ #define GAVL_MSG_GAVF_START 9 /** \brief Transport started * arg0: Stream ID (int) * arg1: 1 = on, 0 = off */ #define GAVL_CMD_GAVF_SELECT_STREAM (0x100+1) /* Sink GAVL_MSG_NS_SINK */ /* Timestamps might be discontinuous after this call */ #define GAVL_MSG_SINK_RESYNC 1 /* Header fields */ #define GAVL_MSG_ID "ID" #define GAVL_MSG_NS "NS" #define GAVL_MSG_CLIENT_ID "ClientID" #define GAVL_MSG_CONTEXT_ID "ContextID" #define GAVL_MSG_TIMESTAMP "TS" // gavl_time_t (GAVL_TYPE_LONG) #define GAVL_MSG_NOT_LAST "NotLast" // if nonzero means, that other messages follow #define GAVL_MSG_FUNCTION_TAG "FunctionTag" /** \brief Message type */ struct gavl_msg_s { gavl_dictionary_t header; int NS; // Namespace int ID; // Where to send the answer. Meaning defined at a higher level. int num_args; gavl_value_t args[GAVL_MSG_MAX_ARGS]; }; typedef struct gavl_msg_s gavl_msg_t; typedef int (*gavl_handle_msg_func)(void *, gavl_msg_t *); GAVL_PUBLIC int gavl_msg_send(gavl_msg_t * msg, gavl_handle_msg_func func, void * priv); /** \brief Create a message * \returns A newly allocated message */ GAVL_PUBLIC gavl_msg_t * gavl_msg_create(void); /** \brief Initialize a message struct * \param m A message */ GAVL_PUBLIC void gavl_msg_init(gavl_msg_t * m); /** \brief Destroy a message * \param msg A message */ GAVL_PUBLIC void gavl_msg_destroy(gavl_msg_t * msg); /** \brief Free internal memory of the message * \param msg A message * * Use this, if you want to reuse the message with * a different ID or args */ GAVL_PUBLIC void gavl_msg_free(gavl_msg_t * msg); /** \brief Copy message * \param dst Destination * \param src Source */ GAVL_PUBLIC void gavl_msg_copy(gavl_msg_t * dst, const gavl_msg_t * src); GAVL_PUBLIC int gavl_msg_match(const gavl_msg_t * m, uint32_t id, uint32_t ns); /* Functions for messages */ /** \brief Set the ID of a message * \param msg A message * \param id The ID */ GAVL_PUBLIC void gavl_msg_set_id(gavl_msg_t * msg, int id); /** \brief Set the ID of a message with namespace * \param msg A message * \param id The ID * \param ns The Namespace */ GAVL_PUBLIC void gavl_msg_set_id_ns(gavl_msg_t * msg, int id, int ns); /** \brief Get the ID of a message * \param msg A message * \returns The ID */ GAVL_PUBLIC int gavl_msg_get_id(gavl_msg_t * msg); /** \brief Get the ID and namespace of a message * \param msg A message * \param ns If non-NULL, returns the namespace * \returns The ID */ GAVL_PUBLIC int gavl_msg_get_id_ns(gavl_msg_t * msg, int * ns); GAVL_PUBLIC int gavl_msg_set_arg(gavl_msg_t * msg, int idx, const gavl_value_t * val); GAVL_PUBLIC int gavl_msg_set_arg_nocopy(gavl_msg_t * msg, int idx, gavl_value_t * val); GAVL_PUBLIC const gavl_value_t * gavl_msg_get_arg_c(const gavl_msg_t * msg, int idx); GAVL_PUBLIC gavl_value_t * gavl_msg_get_arg_nc(gavl_msg_t * msg, int arg); GAVL_PUBLIC void gavl_msg_get_arg(gavl_msg_t * msg, int idx, gavl_value_t * val); /** \brief Set an integer argument * \param msg A message * \param arg Argument index (starting with 0) * \param value Value */ GAVL_PUBLIC void gavl_msg_set_arg_int(gavl_msg_t * msg, int arg, int value); /** \brief Get an integer argument * \param msg A message * \param arg Argument index (starting with 0) * \returns Value */ GAVL_PUBLIC int gavl_msg_get_arg_int(const gavl_msg_t * msg, int arg); /** \brief Set a time argument * \param msg A message * \param arg Argument index (starting with 0) * \param value Value */ GAVL_PUBLIC void gavl_msg_set_arg_long(gavl_msg_t * msg, int arg, gavl_time_t value); /** \brief Get a time argument * \param msg A message * \param arg Argument index (starting with 0) * \returns Value */ GAVL_PUBLIC int64_t gavl_msg_get_arg_long(const gavl_msg_t * msg, int arg); /** \brief Set a string argument * \param msg A message * \param arg Argument index (starting with 0) * \param value Value */ GAVL_PUBLIC void gavl_msg_set_arg_string(gavl_msg_t * msg, int arg, const char * value); /** \brief Get a string argument * \param msg A message * \param arg Argument index (starting with 0) * \returns The string * * You can get the string value only once from each arg * and must free() it, when you are done with it */ // GAVL_PUBLIC // char * gavl_msg_get_arg_string(gavl_msg_t * msg, int arg); /** \brief Get a string argument * \param msg A message * \param arg Argument index (starting with 0) * \returns The string * * Like \ref gavl_msg_set_arg_string except that the returned string is * owned by the message and must not be freed. */ GAVL_PUBLIC const char * gavl_msg_get_arg_string_c(const gavl_msg_t * msg, int arg); /** \brief Set a float argument * \param msg A message * \param arg Argument index (starting with 0) * \param value Value */ GAVL_PUBLIC void gavl_msg_set_arg_float(gavl_msg_t * msg, int arg, double value); /** \brief Get a float argument * \param msg A message * \param arg Argument index (starting with 0) * \returns Value */ GAVL_PUBLIC double gavl_msg_get_arg_float(const gavl_msg_t * msg, int arg); /** \brief Set an RGB color argument * \param msg A message * \param arg Argument index (starting with 0) * \param value Value */ GAVL_PUBLIC void gavl_msg_set_arg_color_rgb(gavl_msg_t * msg, int arg, const float * value); /** \brief Get an RGB color argument * \param msg A message * \param arg Argument index (starting with 0) * \param value Value */ GAVL_PUBLIC void gavl_msg_get_arg_color_rgb(gavl_msg_t * msg, int arg, float * value); /** \brief Set an RGBA color argument * \param msg A message * \param arg Argument index (starting with 0) * \param value Value */ GAVL_PUBLIC void gavl_msg_set_arg_color_rgba(gavl_msg_t * msg, int arg, const float * value); /** \brief Get an RGBA color argument * \param msg A message * \param arg Argument index (starting with 0) * \param value Value */ GAVL_PUBLIC void gavl_msg_get_arg_color_rgba(gavl_msg_t * msg, int arg, float * value); /** \brief Set a position argument * \param msg A message * \param arg Argument index (starting with 0) * \param value Value */ GAVL_PUBLIC void gavl_msg_set_arg_position(gavl_msg_t * msg, int arg, const double * value); /** \brief Get a position argument * \param msg A message * \param arg Argument index (starting with 0) * \param value Value */ GAVL_PUBLIC void gavl_msg_get_arg_position(gavl_msg_t * msg, int arg, double * value); /** \brief Set an audio format argument * \param msg A message * \param arg Argument index (starting with 0) * \param format An audio format */ GAVL_PUBLIC void gavl_msg_set_arg_audio_format(gavl_msg_t * msg, int arg, const gavl_audio_format_t * format); /** \brief Get an audio format argument * \param msg A message * \param arg Argument index (starting with 0) * \param format Returns the audio format */ GAVL_PUBLIC void gavl_msg_get_arg_audio_format(gavl_msg_t * msg, int arg, gavl_audio_format_t * format); /** \brief Set a video format argument * \param msg A message * \param arg Argument index (starting with 0) * \param format A video format */ GAVL_PUBLIC void gavl_msg_set_arg_video_format(gavl_msg_t * msg, int arg, const gavl_video_format_t * format); /** \brief Get a video format argument * \param msg A message * \param arg Argument index (starting with 0) * \param format Returns the video format */ GAVL_PUBLIC void gavl_msg_get_arg_video_format(gavl_msg_t * msg, int arg, gavl_video_format_t * format); /** \brief Set a metadata argument * \param msg A message * \param arg Argument index (starting with 0) * \param m Metadata */ GAVL_PUBLIC void gavl_msg_set_arg_dictionary(gavl_msg_t * msg, int arg, const gavl_dictionary_t * m); GAVL_PUBLIC void gavl_msg_set_arg_dictionary_nocopy(gavl_msg_t * msg, int arg, gavl_dictionary_t * m); /** \brief Get a metadata argument * \param msg A message * \param arg Argument index (starting with 0) * \param m Returns dictionary * * Don't pass uninitialized memory as dictionary */ GAVL_PUBLIC int gavl_msg_get_arg_dictionary(gavl_msg_t * msg, int arg, gavl_dictionary_t * m); GAVL_PUBLIC int gavl_msg_get_arg_dictionary_c(const gavl_msg_t * msg, int arg, gavl_dictionary_t * m); GAVL_PUBLIC void gavl_msg_set_arg_array(gavl_msg_t * msg, int arg, const gavl_array_t * m); GAVL_PUBLIC void gavl_msg_set_arg_array_nocopy(gavl_msg_t * msg, int arg, gavl_array_t * m); GAVL_PUBLIC int gavl_msg_get_arg_array(gavl_msg_t * msg, int arg, gavl_array_t * arr); GAVL_PUBLIC int gavl_msg_get_arg_array_c(const gavl_msg_t * msg, int arg, gavl_array_t * arr); GAVL_PUBLIC void gavl_msg_dump(const gavl_msg_t * msg, int indent); GAVL_PUBLIC void gavl_msg_apply_header(gavl_msg_t * msg); GAVL_PUBLIC void gavl_msg_set_client_id(gavl_msg_t * msg, const char * id); GAVL_PUBLIC const char * gavl_msg_get_client_id(const gavl_msg_t * msg); GAVL_PUBLIC gavl_time_t gavl_msg_get_timestamp(const gavl_msg_t * msg); GAVL_PUBLIC void gavl_msg_set_timestamp(gavl_msg_t * msg, gavl_time_t); GAVL_PUBLIC void gavl_msg_copy_header_field(gavl_msg_t * dst, const gavl_msg_t * src, const char * key); /* * Utilities */ GAVL_PUBLIC void gavl_msg_set_progress(gavl_msg_t * msg, const char * activity, float perc); GAVL_PUBLIC void gavl_msg_get_progress(gavl_msg_t * msg, const char ** activity, float * perc); GAVL_PUBLIC void gavl_msg_set_src_aspect(gavl_msg_t * msg, int64_t time, int scale, int stream, int pixel_width, int pixel_height); GAVL_PUBLIC void gavl_msg_get_src_aspect(gavl_msg_t * msg, int64_t * time, int * scale, int * stream, int * pixel_width, int * pixel_height); GAVL_PUBLIC void gavl_msg_set_src_buffering(gavl_msg_t * msg, float perc); GAVL_PUBLIC void gavl_msg_get_src_buffering(gavl_msg_t * msg, float * perc); GAVL_PUBLIC void gavl_msg_set_gui_button_press(gavl_msg_t * msg, int button, int mask, int x, int y, const double * pos); GAVL_PUBLIC void gavl_msg_set_gui_button_release(gavl_msg_t * msg, int button, int mask, int x, int y, const double * pos); GAVL_PUBLIC void gavl_msg_get_gui_button(gavl_msg_t * msg, int * button, int * mask, int * x, int * y, double * pos); GAVL_PUBLIC void gavl_msg_set_gui_key_press(gavl_msg_t * msg, int key, int mask, int x, int y, const double * pos); GAVL_PUBLIC void gavl_msg_set_gui_key_release(gavl_msg_t * msg, int key, int mask, int x, int y, const double * pos); GAVL_PUBLIC void gavl_msg_get_gui_key(gavl_msg_t * msg, int * key, int * mask, int * x, int * y, double * pos); GAVL_PUBLIC void gavl_msg_set_gui_motion(gavl_msg_t * msg, int mask, int x, int y, const double * pos); GAVL_PUBLIC void gavl_msg_get_gui_motion(gavl_msg_t * msg, int * mask, int * x, int * y, double * pos); GAVL_PUBLIC void gavl_msg_set_splice_children(gavl_msg_t * msg, int msg_ns, int msg_id, const char * ctx, int last, int idx, int del, const gavl_value_t * add); GAVL_PUBLIC void gavl_msg_set_splice_children_nocopy(gavl_msg_t * msg, int msg_ns, int msg_id, const char * ctx, int last, int idx, int del, gavl_value_t * add); GAVL_PUBLIC int gavl_msg_get_splice_children(gavl_msg_t * msg, int * last, int * idx, int * del, gavl_value_t * add); GAVL_PUBLIC int gavl_msg_splice_children(gavl_msg_t * msg, gavl_dictionary_t * dict); GAVL_PUBLIC int gavl_msg_get_last(const gavl_msg_t * msg); GAVL_PUBLIC void gavl_msg_set_last(gavl_msg_t * msg, int last); GAVL_PUBLIC void gavl_msg_set_resp_for_req(gavl_msg_t * dst, const gavl_msg_t * src); /* SRC */ GAVL_PUBLIC void gavl_msg_set_msg_src_seek(gavl_msg_t * dst, int64_t time, int scale); GAVL_PUBLIC void gavl_msg_get_msg_src_seek(const gavl_msg_t * src, int64_t * time, int * scale); #endif // GAVL_MSG_H_INCLUDED bplaum-gavl-b9385e3/include/gavl/numptr.h000066400000000000000000000077001513252040200203350ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #ifndef GAVL_NUMPTR_H_INCLUDED #define GAVL_NUMPTR_H_INCLUDED #include /* ptr -> integer */ #define GAVL_PTR_2_16LE(p) \ (((p)[1] << 8) | \ (p)[0]) #define GAVL_PTR_2_24LE(p) \ (((p)[2] << 16) | \ ((p)[1] << 8) | \ (p)[0]) #define GAVL_PTR_2_32LE(p) \ (((p)[3] << 24) | \ ((p)[2] << 16) | \ ((p)[1] << 8) | \ (p)[0]) #define GAVL_PTR_2_64LE(p) \ (((uint64_t)((p)[7]) << 56) | \ ((uint64_t)((p)[6]) << 48) | \ ((uint64_t)((p)[5]) << 40) | \ ((uint64_t)((p)[4]) << 32) | \ ((uint64_t)((p)[3]) << 24) | \ ((uint64_t)((p)[2]) << 16) | \ ((uint64_t)((p)[1]) << 8) | \ (p)[0]) #define GAVL_PTR_2_16BE(p) \ (((p)[0] << 8) | \ (p)[1]) #define GAVL_PTR_2_32BE(p) \ (((p)[0] << 24) | \ ((p)[1] << 16) | \ ((p)[2] << 8) | \ (p)[3]) #define GAVL_PTR_2_24BE(p) \ (((p)[0] << 16) | \ ((p)[1] << 8) | \ ((p)[2])) #define GAVL_PTR_2_64BE(p) \ (((uint64_t)p[0] << 56) | \ ((uint64_t)p[1] << 48) | \ ((uint64_t)p[2] << 40) | \ ((uint64_t)p[3] << 32) | \ ((uint64_t)p[4] << 24) | \ ((uint64_t)p[5] << 16) | \ ((uint64_t)p[6] << 8) | \ (p)[7]) /* integer -> ptr */ #define GAVL_16LE_2_PTR(i, p) \ (p)[0] = (i) & 0xff; \ (p)[1] = ((i)>>8) & 0xff #define GAVL_24LE_2_PTR(i, p) \ (p)[0] = (i) & 0xff; \ (p)[1] = ((i)>>8) & 0xff; \ (p)[2] = ((i)>>16) & 0xff; #define GAVL_32LE_2_PTR(i, p) \ (p)[0] = (i) & 0xff; \ (p)[1] = ((i)>>8) & 0xff; \ (p)[2] = ((i)>>16) & 0xff; \ (p)[3] = ((i)>>24) & 0xff #define GAVL_64LE_2_PTR(i, p) \ (p)[0] = (i) & 0xff; \ (p)[1] = ((i)>>8) & 0xff; \ (p)[2] = ((i)>>16) & 0xff; \ (p)[3] = ((i)>>24) & 0xff; \ (p)[4] = ((i)>>32) & 0xff; \ (p)[5] = ((i)>>40) & 0xff; \ (p)[6] = ((i)>>48) & 0xff; \ (p)[7] = ((i)>>56) & 0xff #define GAVL_16BE_2_PTR(i, p) \ (p)[1] = (i) & 0xff; \ (p)[0] = ((i)>>8) & 0xff #define GAVL_24BE_2_PTR(i, p) \ (p)[2] = (i) & 0xff; \ (p)[1] = ((i)>>8) & 0xff; \ (p)[0] = ((i)>>16) & 0xff; #define GAVL_32BE_2_PTR(i, p) \ (p)[3] = (i) & 0xff; \ (p)[2] = ((i)>>8) & 0xff; \ (p)[1] = ((i)>>16) & 0xff; \ (p)[0] = ((i)>>24) & 0xff; #define GAVL_64BE_2_PTR(i, p) \ (p)[7] = (i) & 0xff; \ (p)[6] = ((i)>>8) & 0xff; \ (p)[5] = ((i)>>16) & 0xff; \ (p)[4] = ((i)>>24) & 0xff; \ (p)[3] = ((i)>>32) & 0xff; \ (p)[2] = ((i)>>40) & 0xff; \ (p)[1] = ((i)>>48) & 0xff; \ (p)[0] = ((i)>>56) & 0xff GAVL_PUBLIC void GAVL_FLOAT32BE_2_PTR(float f, void * p); GAVL_PUBLIC void GAVL_FLOAT32LE_2_PTR(float f, void * p); GAVL_PUBLIC void GAVL_DOUBLE64BE_2_PTR(double d, void * p); GAVL_PUBLIC void GAVL_DOUBLE64LE_2_PTR(double d, void * p); GAVL_PUBLIC float GAVL_PTR_2_FLOAT32BE(const void * p); GAVL_PUBLIC float GAVL_PTR_2_FLOAT32LE(const void * p); GAVL_PUBLIC double GAVL_PTR_2_DOUBLE64BE(const void * p); GAVL_PUBLIC double GAVL_PTR_2_DOUBLE64LE(const void * p); #endif // GAVL_NUMPTR_H_INCLUDED bplaum-gavl-b9385e3/include/gavl/packetindex.h000066400000000000000000000103541513252040200213060ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #ifndef GAVLPACKETINDEX_H_INCLUDED #define GAVLPACKETINDEX_H_INCLUDED typedef struct gavl_io_s gavl_io_t; #define GAVL_PACKET_INDEX_INTERLEAVED (1<<0) #define GAVL_PACKET_INDEX_SPARSE (1<<1) // Not all packets are here, use only for seeking #define GAVL_PACKET_INDEX_SPARSE (1<<1) // Not all packets are here, use only for seeking #define GAVF_TAG_PACKET_INDEX "gavfpidx" typedef struct { int num_entries; int entries_alloc; uint32_t flags; struct { uint64_t position; uint32_t size; int32_t stream_id; uint32_t flags; int64_t pts; /* Time is scaled with the timescale of the stream */ int64_t duration; /* In timescale tics, can be 0 if unknown */ } * entries; } gavl_packet_index_t; GAVL_PUBLIC gavl_packet_index_t * gavl_packet_index_create(int size); GAVL_PUBLIC void gavl_packet_index_destroy(gavl_packet_index_t *); /* Delete entries */ GAVL_PUBLIC void gavl_packet_index_clear(gavl_packet_index_t *); GAVL_PUBLIC void gavl_packet_index_add(gavl_packet_index_t * idx, int64_t offset, uint32_t size, int stream_id, int64_t timestamp, int flags, int duration); GAVL_PUBLIC void gavl_packet_index_add_packet(gavl_packet_index_t * idx, const gavl_packet_t * p); GAVL_PUBLIC int gavl_packet_index_get_first(gavl_packet_index_t * idx, int stream); GAVL_PUBLIC int gavl_packet_index_get_last(gavl_packet_index_t * idx, int stream); GAVL_PUBLIC void gavl_packet_index_set_size(gavl_packet_index_t * ret, int size); GAVL_PUBLIC void gavl_packet_index_dump(gavl_packet_index_t * idx); GAVL_PUBLIC void gavl_packet_index_set_stream_stats(gavl_packet_index_t * idx, int stream_id, gavl_stream_stats_t * stats); GAVL_PUBLIC int gavl_packet_index_read(gavl_packet_index_t * idx, gavl_io_t * io); GAVL_PUBLIC int gavl_packet_index_write(const gavl_packet_index_t * idx, gavl_io_t * io); GAVL_PUBLIC gavl_packet_index_t * gavl_packet_index_load(const char * filename); GAVL_PUBLIC int gavl_packet_index_save(gavl_packet_index_t * idx, const char * filename); GAVL_PUBLIC void gavl_packet_index_sort_by_position(gavl_packet_index_t * idx); GAVL_PUBLIC void gavl_packet_index_sort_by_pts(gavl_packet_index_t * idx); GAVL_PUBLIC void gavl_packet_index_extract_stream(const gavl_packet_index_t * src, gavl_packet_index_t * dst, int stream_id); GAVL_PUBLIC int gavl_packet_index_seek(const gavl_packet_index_t * idx, int stream_id, int64_t pts); GAVL_PUBLIC int gavl_packet_index_get_keyframe_before(const gavl_packet_index_t * idx, int stream_id, int pos); GAVL_PUBLIC int gavl_packet_index_get_next_keyframe(const gavl_packet_index_t * idx, int stream_id, int pos); GAVL_PUBLIC int gavl_packet_index_get_next_packet(const gavl_packet_index_t * idx, int stream_id, int pos); GAVL_PUBLIC int gavl_packet_index_get_previous_packet(const gavl_packet_index_t * idx, int stream_id, int pos); GAVL_PUBLIC int64_t gavl_packet_index_packet_number_to_pts(const gavl_packet_index_t * idx, int stream_id, int64_t number); #endif // GAVLPACKETINDEX_H_INCLUDED bplaum-gavl-b9385e3/include/gavl/parameter.h000066400000000000000000000205631513252040200207720ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #ifndef GAVL_PARAMETER_H_INCLUDED #define GAVL_PARAMETER_H_INCLUDED #include #include #include typedef enum { GAVL_PARAMETER_SECTION = 0, //!< Dummy type. It contains no data but acts as a separator in notebook style configuration windows GAVL_PARAMETER_CHECKBUTTON = 1, //!< Bool GAVL_PARAMETER_INT = 2, //!< Integer spinbutton GAVL_PARAMETER_FLOAT = 3, //!< Float spinbutton GAVL_PARAMETER_SLIDER_INT = 4, //!< Integer slider GAVL_PARAMETER_SLIDER_FLOAT = 5, //!< Float slider GAVL_PARAMETER_STRING = 6, //!< String (one line only) GAVL_PARAMETER_STRING_HIDDEN = 7, //!< Encrypted string (displays as ***) GAVL_PARAMETER_STRINGLIST = 8, //!< Popdown menu with string values GAVL_PARAMETER_COLOR_RGB = 9, //!< RGB Color GAVL_PARAMETER_COLOR_RGBA = 10, //!< RGBA Color GAVL_PARAMETER_FONT = 11, //!< Font (contains fontconfig compatible fontname) GAVL_PARAMETER_FILE = 12, //!< File GAVL_PARAMETER_DIRECTORY = 13, //!< Directory GAVL_PARAMETER_MULTI_MENU = 14, //!< Menu with config- and infobutton GAVL_PARAMETER_MULTI_LIST = 15, //!< List with config- and infobutton GAVL_PARAMETER_MULTI_CHAIN = 16, //!< Several subitems (including suboptions) can be arranged in a chain GAVL_PARAMETER_TIME = 17, //!< Time GAVL_PARAMETER_POSITION = 18, //!< Position (x/y coordinates, scaled 0..1) GAVL_PARAMETER_BUTTON = 19, //!< Pressing the button causes set_parameter to be called with NULL value GAVL_PARAMETER_DIRLIST = 20, //!< List of directories } gavl_parameter_type_t; GAVL_PUBLIC gavl_type_t gavl_parameter_type_to_gavl(gavl_parameter_type_t type); /* Parameter info (for static initialization) */ /** \brief Parameter description * * Usually, parameter infos are passed around as NULL-terminated arrays. */ struct gavl_parameter_info_s { char * name; //!< Unique name. Can contain alphanumeric characters plus underscore. char * long_name; //!< Long name (for labels) char * gettext_domain; //!< First argument for bindtextdomain(). In an array, it's valid for subsequent entries too. char * gettext_directory; //!< Second argument for bindtextdomain(). In an array, it's valid for subsequent entries too. gavl_parameter_type_t type; //!< Type int flags; //!< Mask of BG_PARAMETER_* defines gavl_value_t val_default; //!< Default value gavl_value_t val_min; //!< Minimum value (for arithmetic types) gavl_value_t val_max; //!< Maximum value (for arithmetic types) /* Names which can be passed to set_parameter (NULL terminated) */ char const * const * multi_names; //!< Names for multi option parameters (NULL terminated) /* Long names are optional, if they are NULL, the short names are used */ char const * const * multi_labels; //!< Optional labels for multi option parameters char const * const * multi_descriptions; //!< Optional descriptions (will be displayed by info buttons) /* * These are parameters for each codec. * The name members of these MUST be unique with respect to the rest * of the parameters passed to the same set_parameter func */ struct gavl_parameter_info_s const * const * multi_parameters; //!< Parameters for each option. The name members of these MUST be unique with respect to the rest of the parameters passed to the same set_parameter func int num_digits; //!< Number of digits for floating point parameters char * help_string; //!< Help strings for tooltips or --help option char ** multi_names_nc; //!< When allocating dynamically, use this instead of multi_names and call \ref bg_parameter_info_set_const_ptrs at the end char ** multi_labels_nc; //!< When allocating dynamically, use this instead of multi_labels and call \ref bg_parameter_info_set_const_ptrs at the end char ** multi_descriptions_nc; //!< When allocating dynamically, use this instead of multi_descriptions and call \ref bg_parameter_info_set_const_ptrs at the end struct gavl_parameter_info_s ** multi_parameters_nc; //!< When allocating dynamically, use this instead of multi_parameters and call \ref bg_parameter_info_set_const_ptrs at the end }; typedef struct gavl_parameter_info_s gavl_parameter_info_t; /* Dictionary keys */ #define GAVL_PARAMETER_TYPE "ptype" #define GAVL_PARAMETER_DEFAULT "default" #define GAVL_PARAMETER_MIN "min" #define GAVL_PARAMETER_MAX "max" #define GAVL_PARAMETER_OPTIONS "options" #define GAVL_PARAMETER_PARAMS "params" #define GAVL_PARAMETER_SECTIONS "sections" #define GAVL_PARAMETER_HELP "help" #define GAVL_PARAMETER_NUM_DIGITS "num_digits" #define GAVL_PARAMETER_GETTEXT_DOMAIN "gettext_domain" #define GAVL_PARAMETER_GETTEXT_DIRECTORY "gettext_directory" /* * Structure of a parameter info * * $params = [ * param_1 (dict) * param_2 (dict) * param_3 (dict) * ]; * * $sections = [ * section_1 (dict) * section_2 (dict) * section_3 (dict) * ]; * */ GAVL_PUBLIC int gavl_parameter_num_sections(const gavl_dictionary_t* params); GAVL_PUBLIC int gavl_parameter_num_params(const gavl_dictionary_t* params); GAVL_PUBLIC int gavl_parameter_num_options(const gavl_dictionary_t* params); GAVL_PUBLIC const gavl_dictionary_t* gavl_parameter_get_section(const gavl_dictionary_t* params, int idx); GAVL_PUBLIC const gavl_dictionary_t* gavl_parameter_get_param(const gavl_dictionary_t* params, int idx); GAVL_PUBLIC const gavl_dictionary_t* gavl_parameter_get_option(const gavl_dictionary_t* param, int idx); GAVL_PUBLIC const gavl_dictionary_t* gavl_parameter_get_param_by_name(const gavl_dictionary_t* params, const char * name); GAVL_PUBLIC const gavl_dictionary_t* gavl_parameter_get_option_by_name(const gavl_dictionary_t* param, const char * name); GAVL_PUBLIC gavl_dictionary_t* gavl_parameter_append_section(gavl_dictionary_t* params, const char * name, const char * label); GAVL_PUBLIC gavl_dictionary_t* gavl_parameter_append_option(gavl_dictionary_t* param, const char * name, const char * label); GAVL_PUBLIC gavl_dictionary_t* gavl_parameter_append_param(gavl_dictionary_t* params, const char * name, const char * label, gavl_parameter_type_t type); GAVL_PUBLIC gavl_parameter_type_t gavl_parameter_info_get_type(const gavl_dictionary_t* info); GAVL_PUBLIC void gavl_parameter_init(gavl_dictionary_t* param, const char * name, const char * label, gavl_parameter_type_t type); GAVL_PUBLIC void gavl_parameter_info_append_static(gavl_dictionary_t* params, const gavl_parameter_info_t * p); GAVL_PUBLIC void gavl_parameter_from_static(gavl_dictionary_t* param, const gavl_parameter_info_t * p); /* * Value type for GAVL_PARAMETER_MULTI_MENU, GAVL_PARAMETER_MULTI_LIST and * GAVL_PARAMETER_MULTI_CHAIN: * { * $name: name * $cfg: Configuration associated with name * } * */ GAVL_PUBLIC gavl_dictionary_t * gavl_parameter_multi_get_config_nc(gavl_dictionary_t*); GAVL_PUBLIC const gavl_dictionary_t * gavl_parameter_multi_get_config(const gavl_dictionary_t*); GAVL_PUBLIC int gavl_parameter_parameter_init_value(const gavl_dictionary_t * param, gavl_value_t * val); #endif // GAVL_PARAMETER_H_INCLUDED bplaum-gavl-b9385e3/include/gavl/peakdetector.h000066400000000000000000000141261513252040200214620ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ /** * @file peakdetector.h * external api header. */ #ifndef GAVL_PEAKDETECTORS_H_INCLUDED #define GAVL_PEAKDETECTORS_H_INCLUDED #include #ifdef __cplusplus extern "C" { #endif /** \defgroup peak_detection Peak detector * \ingroup audio * \brief Detect peaks in the volume for steering normalizers and * dynamic range compressors * While normalizers and dynamic range controls are out of the scope * of gavl, some low-level functionality can be provided * * @{ */ /*! \brief Opaque structure for peak detector * * You don't want to know what's inside. */ typedef struct gavl_peak_detector_s gavl_peak_detector_t; /* Create / destroy */ /*! \brief Callback for getting the peaks across all channels * \param priv Client data * \param samples Number of samples of last update call * \param min Minimum value (scaled between -1.0 and 1.0) * \param min Maximum value (scaled between -1.0 and 1.0) * \param abs Absolute value (scaled between 0.0 and 1.0) * * Since 1.5.0 */ typedef void (*gavl_update_peak_callback)(void * priv, int samples, double min, double max, double abs); /*! \brief Callback for getting the peaks for all channels separately * \param priv Client data * \param samples Number of samples of last update call * \param min Minimum value (scaled between -1.0 and 1.0) * \param min Maximum value (scaled between -1.0 and 1.0) * \param abs Absolute value (scaled between 0.0 and 1.0) * * Since 1.5.0 */ typedef void (*gavl_update_peaks_callback)(void * priv, int samples, const double * min, const double * max, const double * abs); /*! \brief Create peak detector * \returns A newly allocated peak detector */ GAVL_PUBLIC gavl_peak_detector_t * gavl_peak_detector_create(void); /*! \brief Set callbacks * \param pd A peak detector * \param peak_callback Callback for overall peaks or NULL * \param peaks_callback Callback for per channel peaks or NULL * \param priv Client data passed to the callbacks * * Since 1.5.0 */ GAVL_PUBLIC void gavl_peak_detector_set_callbacks(gavl_peak_detector_t * pd, gavl_update_peak_callback peak_callback, gavl_update_peaks_callback peaks_callback, void * priv); /*! \brief Destroys a peak detector and frees all associated memory * \param pd A peak detector */ GAVL_PUBLIC void gavl_peak_detector_destroy(gavl_peak_detector_t *pd); /*! \brief Set format for a peak detector * \param pd A peak detector * \param format The format subsequent frames will be passed with * * This function can be called multiple times with one instance. It also * calls \ref gavl_peak_detector_reset. */ GAVL_PUBLIC void gavl_peak_detector_set_format(gavl_peak_detector_t *pd, const gavl_audio_format_t * format); /*! \brief Get format * \param pd A peak detector * \returns The internal format * * Since 1.5.0 */ GAVL_PUBLIC const gavl_audio_format_t * gavl_peak_detector_get_format(gavl_peak_detector_t * pd); /*! \brief Feed the peak detector with a new frame * \param pd A peak detector * \param frame An audio frame */ GAVL_PUBLIC void gavl_peak_detector_update(gavl_peak_detector_t *pd, gavl_audio_frame_t * frame); /*! \brief Get the audio sink * \param pd A peak detector * \returns An audio sink * * Use the returned sink for passing audio frames as an alternative to * \ref gavl_peak_detector_update * * Since 1.5.0 */ GAVL_PUBLIC gavl_audio_sink_t * gavl_peak_detector_get_sink(gavl_peak_detector_t *pd); /*! \brief Get the peak volume across all channels * \param pd A peak detector * \param min Returns minimum amplitude * \param max Returns maximum amplitude * \param abs Returns maximum absolute amplitude * * The returned amplitudes are normalized such that the * minimum amplitude corresponds to -1.0, the maximum amplitude * corresponds to 1.0. */ GAVL_PUBLIC void gavl_peak_detector_get_peak(gavl_peak_detector_t * pd, double * min, double * max, double * abs); /*! \brief Get the peak volume for all channels separate * \param pd A peak detector * \param min Returns minimum amplitude * \param max Returns maximum amplitude * \param abs Returns maximum absolute amplitude * * The returned amplitudes are normalized such that the * minimum amplitude corresponds to -1.0, the maximum amplitude * corresponds to 1.0. */ GAVL_PUBLIC void gavl_peak_detector_get_peaks(gavl_peak_detector_t * pd, double * min, double * max, double * abs); /*! \brief Reset a peak detector * \param pd A peak detector */ GAVL_PUBLIC void gavl_peak_detector_reset(gavl_peak_detector_t * pd); /** * @} */ #ifdef __cplusplus } #endif #endif // GAVL_PEAKDETECTORS_H_INCLUDED bplaum-gavl-b9385e3/include/gavl/stamp-h000066400000000000000000000000121513252040200201200ustar00rootroot00000000000000timestamp bplaum-gavl-b9385e3/include/gavl/stamp-h.in000066400000000000000000000000001513252040200205220ustar00rootroot00000000000000bplaum-gavl-b9385e3/include/gavl/state.h000066400000000000000000000054411513252040200201300ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #ifndef GAVL_STATE_H_INCLUDED #define GAVL_STATE_H_INCLUDED #include /* State */ // GAVL_MSG_NS_STATE /* * arg0: last (int) * arg1: context (string) * arg2: var (string) * arg3: val (value) */ #define GAVL_MSG_STATE_CHANGED 1 /* * arg0: last (int) * arg1: context (string) * arg2: var (string) * arg3: val (value) * * context can be a path into nested subdirectories like /ctx/dict/subdict */ #define GAVL_CMD_SET_STATE 100 /* * arg0: last (int) * arg1: context (string) * arg2: var (string) * arg3: difference (value) * * context can be a path into nested subdirectories like /ctx/dict/subdict */ #define GAVL_CMD_SET_STATE_REL 101 /* Standardized state contexts and variables */ #define GAVL_STATE_CTX_SRC "src" #define GAVL_STATE_SRC_METADATA GAVL_META_METADATA #define GAVL_STATE_SRC_SEEK_WINDOW "seek_window" #define GAVL_STATE_SRC_SEEK_WINDOW_START "seek_window_start" #define GAVL_STATE_SRC_SEEK_WINDOW_END "seek_window_end" GAVL_PUBLIC void gavl_msg_set_state(gavl_msg_t * msg, int id, int last, const char * ctx, const char * var, const gavl_value_t * val); GAVL_PUBLIC void gavl_msg_set_state_nocopy(gavl_msg_t * msg, int id, int last, const char * ctx, const char * var, gavl_value_t * val); GAVL_PUBLIC void gavl_msg_get_state(const gavl_msg_t * msg, int * last, const char ** ctx_p, const char ** var_p, gavl_value_t * val, gavl_dictionary_t * dict); #endif // GAVL_STATE_H_INCLUDED bplaum-gavl-b9385e3/include/gavl/threadpool.h000066400000000000000000000032611513252040200211470ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ /* Thread pool */ #ifndef GAVL_THREADPOOL_H_INCLUDED #define GAVL_THREADPOOL_H_INCLUDED /* Forward declaration */ // typedef struct gavl_thread_pool_s gavl_thread_pool_t; typedef struct gavl_thread_pool_s gavl_thread_pool_t; GAVL_PUBLIC gavl_thread_pool_t * gavl_thread_pool_create(int num_threads); GAVL_PUBLIC void gavl_thread_pool_destroy(gavl_thread_pool_t *); GAVL_PUBLIC int gavl_thread_pool_get_num_threads(gavl_thread_pool_t *); GAVL_PUBLIC void gavl_thread_pool_run(void (*func)(void*,int start, int len), void * gavl_data, int start, int len, void * client_data, int thread); GAVL_PUBLIC void gavl_thread_pool_stop(void * client_data, int thread); #endif // GAVL_THREADPOOL_H_INCLUDED bplaum-gavl-b9385e3/include/gavl/timecode.h000066400000000000000000000143741513252040200206060ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #ifndef GAVL_TIMECODE_H_INCLUDED #define GAVL_TIMECODE_H_INCLUDED #ifdef __cplusplus extern "C" { #endif #include /** \defgroup timecode Timecodes * \brief Timecode definitions * * Timecodes are usually associated with video frames * and represent a unique time (e.g. Wall clock time) within * the whole footage. * * Since 1.1.0 * * @{ */ typedef uint64_t gavl_timecode_t; //!< Typedef for timecodes #define GAVL_TIMECODE_SIGN_MASK (0x1LL<<62) //!< If 1, timecode is negative #define GAVL_TIMECODE_INVALID_MASK (0x1LL<<63) //!< If 1, timecode is invalid #define GAVL_TIMECODE_DROP_FRAME (1<<0) //!< NTSC drop frame is used #define GAVL_TIMECODE_UNDEFINED GAVL_TIMECODE_INVALID_MASK //!< Convenience macro /** \brief Timecode format * * The timecode format should always be associated with * a video format. Some functions require the timecode *and* the * video format. */ typedef struct { uint32_t int_framerate; //!< Integer framerate. A value of zero signals, that no timecodes are available. uint32_t flags; //!< Zero or more of the flags defined above } gavl_timecode_format_t; /*! \brief Copy one timecode format to another \param dst Destination format \param src Source format */ GAVL_PUBLIC void gavl_timecode_format_copy(gavl_timecode_format_t * dst, const gavl_timecode_format_t * src); /** \brief Extract the time part of the timecode * \param tc A timecode * \param hours If non NULL, returns the hours * \param minutes If non NULL, returns the minutes * \param seconds If non NULL, returns the seconds * \param frames If non NULL, returns the frames */ GAVL_PUBLIC void gavl_timecode_to_hmsf(gavl_timecode_t tc, int * hours, int * minutes, int * seconds, int * frames); /** \brief Extract the date part of the timecode * \param tc A timecode * \param year If non NULL, returns the year * \param month If non NULL, returns the month * \param day If non NULL, returns the day */ GAVL_PUBLIC void gavl_timecode_to_ymd(gavl_timecode_t tc, int * year, int * month, int * day); /** \brief Set the time part of the timecode * \param tc A timecode * \param hours The hours * \param minutes The minutes * \param seconds The seconds * \param frames The frames */ GAVL_PUBLIC void gavl_timecode_from_hmsf(gavl_timecode_t * tc, int hours, int minutes, int seconds, int frames); /** \brief Set the date part of the timecode * \param tc A timecode * \param year The year * \param month The month * \param day The day */ GAVL_PUBLIC void gavl_timecode_from_ymd(gavl_timecode_t * tc, int year, int month, int day); /** \brief Get the frame count from the timecode * \param tf The timecode format * \param tc A timecode * \returns The frame count * * If the time is larger than 24 hours, the framecount is calculated from * 00:00:00, January 1, 1970 */ GAVL_PUBLIC int64_t gavl_timecode_to_framecount(const gavl_timecode_format_t * tf, gavl_timecode_t tc); /** \brief Get a timecode from the frame count * \param tf The timecode format * \param fc The frame count * \returns The timecode corresponding to the framecount * * If the date fields are non-zero, the framecount is calculated from * 00:00:00, January 1, 1970 */ GAVL_PUBLIC gavl_timecode_t gavl_timecode_from_framecount(const gavl_timecode_format_t * tf, int64_t fc); /** \brief Dump a timecode to stderr * \param tf The timecode format * \param tc A timecode * * This is used mainly for debugging */ GAVL_PUBLIC void gavl_timecode_dump(const gavl_timecode_format_t * tf, gavl_timecode_t tc); /* -YYYY-MM-DD-HH:MM:SS.FFFF */ #define GAVL_TIMECODE_STRING_LEN 26 /*!< Length for a string into which a timecode will be printed */ /** \brief Print a full timecode into a string * \param tf The timecode format * \param tc A timecode * \param str String where the timecode will be printed * * This prints the full timecode (including calendar date if available). * For real-life applications, you might want to try * \ref gavl_timecode_prettyprint_short instead. */ GAVL_PUBLIC void gavl_timecode_prettyprint(const gavl_timecode_format_t * tf, gavl_timecode_t tc, char str[GAVL_TIMECODE_STRING_LEN]); /* -HH:MM:SS:FF */ #define GAVL_TIMECODE_STRING_LEN_SHORT 13 /*!< Length for a string into which a short timecode will be printed */ /** \brief Print a short timecode into a string * \param tc A timecode * \param str String where the timecode will be printed * * Since 1.1.1 */ GAVL_PUBLIC void gavl_timecode_prettyprint_short(gavl_timecode_t tc, char str[GAVL_TIMECODE_STRING_LEN_SHORT]); /** * @} */ #ifdef __cplusplus } #endif #endif /* GAVL_TIMECODE_H_INCLUDED */ bplaum-gavl-b9385e3/include/gavl/trackinfo.h000066400000000000000000000473271513252040200210010ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #ifndef GAVL_TRACKINFO_H_INCLUDED #define GAVL_TRACKINFO_H_INCLUDED #include /* Stream information */ /* Stream types except GAVL_STREAM_NONE can be ORed */ typedef enum { GAVL_STREAM_NONE = 0, GAVL_STREAM_AUDIO = (1<<0), GAVL_STREAM_VIDEO = (1<<1), GAVL_STREAM_TEXT = (1<<2), GAVL_STREAM_OVERLAY = (1<<3), GAVL_STREAM_MSG = (1<<4), } gavl_stream_type_t; GAVL_PUBLIC const char * gavl_stream_type_name(gavl_stream_type_t type); /* * Standardized info structures for media content. * */ GAVL_PUBLIC int gavl_track_get_num_streams(const gavl_dictionary_t * d, gavl_stream_type_t type); GAVL_PUBLIC int gavl_track_get_num_streams_all(const gavl_dictionary_t * d); /* Support for external streams */ GAVL_PUBLIC gavl_dictionary_t * gavl_track_append_external_stream(gavl_dictionary_t * track, gavl_stream_type_t type, const char * mimetype, const char * location); GAVL_PUBLIC int gavl_track_get_num_external_streams(const gavl_dictionary_t * d); GAVL_PUBLIC const gavl_dictionary_t * gavl_track_get_external_stream(const gavl_dictionary_t * d, int i); GAVL_PUBLIC gavl_dictionary_t * gavl_track_get_external_stream_nc(gavl_dictionary_t * d, int i); GAVL_PUBLIC const gavl_dictionary_t * gavl_track_get_stream_all(const gavl_dictionary_t * d, int idx); GAVL_PUBLIC gavl_dictionary_t * gavl_track_add_src(gavl_dictionary_t * dict, const char * key, const char * mimetype, const char * location); GAVL_PUBLIC const gavl_dictionary_t * gavl_track_get_src(const gavl_dictionary_t * dict, const char * key, int idx, const char ** mimetype, const char ** location); GAVL_PUBLIC gavl_dictionary_t * gavl_track_get_src_nc(gavl_dictionary_t * m, const char * key, int idx); GAVL_PUBLIC int gavl_track_has_src(const gavl_dictionary_t * m, const char * key, const char * location); GAVL_PUBLIC void gavl_track_from_location(gavl_dictionary_t * ret, const char * location); GAVL_PUBLIC gavl_dictionary_t * gavl_track_get_stream_all_nc(gavl_dictionary_t * d, int idx); GAVL_PUBLIC gavl_stream_type_t gavl_stream_get_type(const gavl_dictionary_t * s); /* Get the start time of the stream */ GAVL_PUBLIC gavl_time_t gavl_stream_get_start_time(const gavl_dictionary_t * s); GAVL_PUBLIC int gavl_stream_get_sample_timescale(const gavl_dictionary_t * s); GAVL_PUBLIC int gavl_stream_is_enabled(const gavl_dictionary_t * s); GAVL_PUBLIC void gavl_stream_set_enabled(gavl_dictionary_t * s, int enabled); GAVL_PUBLIC int gavl_stream_get_id(const gavl_dictionary_t * s, int * id); GAVL_PUBLIC void gavl_stream_set_id(gavl_dictionary_t * s, int id); GAVL_PUBLIC int gavl_stream_is_sbr(const gavl_dictionary_t * s); GAVL_PUBLIC int gavl_stream_get_pts_range(const gavl_dictionary_t * s, int64_t * start, int64_t * end); GAVL_PUBLIC gavl_dictionary_t * gavl_track_find_stream_by_id_nc(gavl_dictionary_t * d, int id); GAVL_PUBLIC const gavl_dictionary_t * gavl_track_find_stream_by_id(const gavl_dictionary_t * d, int id); GAVL_PUBLIC const gavl_dictionary_t * gavl_track_get_stream(const gavl_dictionary_t * d, gavl_stream_type_t type, int idx); GAVL_PUBLIC gavl_dictionary_t * gavl_track_get_stream_nc(gavl_dictionary_t * d, gavl_stream_type_t type, int idx); GAVL_PUBLIC gavl_dictionary_t * gavl_track_append_stream(gavl_dictionary_t * d, gavl_stream_type_t type); /* Audio */ GAVL_PUBLIC gavl_dictionary_t * gavl_track_get_audio_stream_nc(gavl_dictionary_t * d, int i); GAVL_PUBLIC const gavl_dictionary_t * gavl_track_get_audio_stream(const gavl_dictionary_t * d, int i); GAVL_PUBLIC int gavl_track_get_num_audio_streams(const gavl_dictionary_t * d); GAVL_PUBLIC gavl_dictionary_t * gavl_track_append_audio_stream(gavl_dictionary_t * d); GAVL_PUBLIC const gavl_dictionary_t * gavl_track_get_audio_metadata(const gavl_dictionary_t * d, int stream); GAVL_PUBLIC gavl_dictionary_t * gavl_track_get_audio_metadata_nc(gavl_dictionary_t * d, int stream); GAVL_PUBLIC const gavl_audio_format_t * gavl_track_get_audio_format(const gavl_dictionary_t * d, int stream); GAVL_PUBLIC gavl_audio_format_t * gavl_track_get_audio_format_nc(gavl_dictionary_t * d, int stream); GAVL_PUBLIC int gavl_track_delete_audio_stream(gavl_dictionary_t * d, int stream); GAVL_PUBLIC void gavl_track_set_num_audio_streams(gavl_dictionary_t * d, int num); /* Video */ GAVL_PUBLIC gavl_dictionary_t * gavl_track_get_video_stream_nc(gavl_dictionary_t * d, int i); GAVL_PUBLIC const gavl_dictionary_t * gavl_track_get_video_stream(const gavl_dictionary_t * d, int i); GAVL_PUBLIC int gavl_track_get_num_video_streams(const gavl_dictionary_t * d); GAVL_PUBLIC gavl_dictionary_t * gavl_track_append_video_stream(gavl_dictionary_t * d); GAVL_PUBLIC const gavl_video_format_t * gavl_track_get_video_format(const gavl_dictionary_t * d, int stream); GAVL_PUBLIC gavl_video_format_t * gavl_track_get_video_format_nc(gavl_dictionary_t * d, int stream); GAVL_PUBLIC const gavl_dictionary_t * gavl_track_get_video_metadata(const gavl_dictionary_t * d, int stream); GAVL_PUBLIC gavl_dictionary_t * gavl_track_get_video_metadata_nc(gavl_dictionary_t * d, int stream); GAVL_PUBLIC const gavl_video_format_t * gavl_track_get_video_format(const gavl_dictionary_t * d, int stream); GAVL_PUBLIC gavl_video_format_t * gavl_track_get_video_format_nc(gavl_dictionary_t * d, int stream); GAVL_PUBLIC int gavl_track_delete_video_stream(gavl_dictionary_t * d, int stream); GAVL_PUBLIC void gavl_track_set_num_video_streams(gavl_dictionary_t * d, int num); /* Text */ GAVL_PUBLIC gavl_dictionary_t * gavl_track_get_text_stream_nc(gavl_dictionary_t * d, int i); GAVL_PUBLIC const gavl_dictionary_t * gavl_track_get_text_stream(const gavl_dictionary_t * d, int i); GAVL_PUBLIC int gavl_track_get_num_text_streams(const gavl_dictionary_t * d); GAVL_PUBLIC gavl_dictionary_t * gavl_track_append_text_stream(gavl_dictionary_t * d); GAVL_PUBLIC const gavl_dictionary_t * gavl_track_get_text_metadata(const gavl_dictionary_t * d, int stream); GAVL_PUBLIC gavl_dictionary_t * gavl_track_get_text_metadata_nc(gavl_dictionary_t * d, int stream); GAVL_PUBLIC int gavl_track_delete_text_stream(gavl_dictionary_t * d, int stream); GAVL_PUBLIC void gavl_track_set_num_text_streams(gavl_dictionary_t * d, int num); /* Overlay */ GAVL_PUBLIC gavl_dictionary_t * gavl_track_get_overlay_stream_nc(gavl_dictionary_t * d, int i); GAVL_PUBLIC const gavl_dictionary_t * gavl_track_get_overlay_stream(const gavl_dictionary_t * d, int i); GAVL_PUBLIC int gavl_track_get_num_overlay_streams(const gavl_dictionary_t * d); GAVL_PUBLIC gavl_dictionary_t * gavl_track_append_overlay_stream(gavl_dictionary_t * d); GAVL_PUBLIC const gavl_dictionary_t * gavl_track_get_overlay_metadata(const gavl_dictionary_t * d, int stream); GAVL_PUBLIC gavl_dictionary_t * gavl_track_get_overlay_metadata_nc(gavl_dictionary_t * d, int stream); GAVL_PUBLIC const gavl_video_format_t * gavl_track_get_overlay_format(const gavl_dictionary_t * d, int stream); GAVL_PUBLIC gavl_video_format_t * gavl_track_get_overlay_format_nc(gavl_dictionary_t * d, int stream); GAVL_PUBLIC int gavl_track_delete_overlay_stream(gavl_dictionary_t * d, int stream); GAVL_PUBLIC void gavl_track_set_num_overlay_streams(gavl_dictionary_t * d, int num); /* Data */ GAVL_PUBLIC gavl_dictionary_t * gavl_track_get_msg_stream_nc(gavl_dictionary_t * d, int i); GAVL_PUBLIC const gavl_dictionary_t * gavl_track_get_msg_stream(const gavl_dictionary_t * d, int i); GAVL_PUBLIC int gavl_track_get_num_msg_streams(const gavl_dictionary_t * d); GAVL_PUBLIC gavl_dictionary_t * gavl_track_append_msg_stream(gavl_dictionary_t * d, int id); GAVL_PUBLIC const gavl_dictionary_t * gavl_track_get_msg_metadata(const gavl_dictionary_t * d, int stream); GAVL_PUBLIC gavl_dictionary_t * gavl_track_get_msg_metadata_nc(gavl_dictionary_t * d, int stream); GAVL_PUBLIC int gavl_track_delete_msg_stream(gavl_dictionary_t * d, int stream); /* Delete stream by absolute index */ GAVL_PUBLIC int gavl_track_delete_stream(gavl_dictionary_t * d, int stream); // int gavl_track_get_stream_idx(const gavl_dictionary_t * d, gavl_stream_type_t type, int idx); GAVL_PUBLIC int gavl_track_stream_idx_to_abs(const gavl_dictionary_t * d, gavl_stream_type_t type, int idx); GAVL_PUBLIC int gavl_track_stream_idx_to_rel(const gavl_dictionary_t * d, int idx); /* Tracks */ GAVL_PUBLIC gavl_dictionary_t * gavl_append_track(gavl_dictionary_t*, const gavl_dictionary_t * t); GAVL_PUBLIC gavl_dictionary_t * gavl_prepend_track(gavl_dictionary_t*, const gavl_dictionary_t * t); GAVL_PUBLIC const gavl_dictionary_t * gavl_get_track(const gavl_dictionary_t*, int idx); GAVL_PUBLIC gavl_dictionary_t * gavl_get_track_nc(gavl_dictionary_t*, int idx); GAVL_PUBLIC int gavl_get_num_tracks(const gavl_dictionary_t*); GAVL_PUBLIC int gavl_get_num_tracks_loaded(const gavl_dictionary_t * dict, int * total); GAVL_PUBLIC void gavl_track_apply_footer(gavl_dictionary_t * track, const gavl_dictionary_t * footer); GAVL_PUBLIC void gavl_track_delete_implicit_fields(gavl_dictionary_t * track); GAVL_PUBLIC void gavl_delete_track(gavl_dictionary_t*, int idx); GAVL_PUBLIC int gavl_track_can_seek(const gavl_dictionary_t * track); GAVL_PUBLIC int gavl_track_can_pause(const gavl_dictionary_t * track); GAVL_PUBLIC int gavl_track_is_async(const gavl_dictionary_t * track); GAVL_PUBLIC int gavl_track_set_async(gavl_dictionary_t * track, int async); GAVL_PUBLIC gavl_time_t gavl_track_get_pts_to_clock_time(const gavl_dictionary_t * dict); GAVL_PUBLIC gavl_time_t gavl_track_get_pts_to_start_time(const gavl_dictionary_t * dict); GAVL_PUBLIC void gavl_track_set_pts_to_clock_time(gavl_dictionary_t * dict, gavl_time_t offset); GAVL_PUBLIC void gavl_track_set_pts_to_start_time(gavl_dictionary_t * dict, gavl_time_t offset); #if 0 GAVL_PUBLIC void gavl_track_set_clock_time_map(gavl_dictionary_t * track, int64_t pts, int pts_scale, gavl_time_t clock_time); GAVL_PUBLIC int gavl_track_get_clock_time_map(const gavl_dictionary_t * track, int64_t * pts, int * pts_scale, gavl_time_t * clock_time); #endif GAVL_PUBLIC void gavl_track_splice_children(gavl_dictionary_t * dict, int idx, int del, const gavl_value_t * val); GAVL_PUBLIC void gavl_track_splice_children_nocopy(gavl_dictionary_t * dict, int idx, int del, gavl_value_t * val); GAVL_PUBLIC void gavl_track_update_children(gavl_dictionary_t * dict); // GAVL_PUBLIC GAVL_PUBLIC gavl_audio_format_t * gavl_stream_get_audio_format_nc(gavl_dictionary_t*); GAVL_PUBLIC gavl_video_format_t * gavl_stream_get_video_format_nc(gavl_dictionary_t*); GAVL_PUBLIC gavl_dictionary_t * gavl_stream_get_metadata_nc(gavl_dictionary_t*); GAVL_PUBLIC const gavl_audio_format_t * gavl_stream_get_audio_format(const gavl_dictionary_t*); GAVL_PUBLIC const gavl_video_format_t * gavl_stream_get_video_format(const gavl_dictionary_t*); GAVL_PUBLIC const gavl_dictionary_t * gavl_stream_get_metadata(const gavl_dictionary_t*); /* Compression info */ GAVL_PUBLIC int gavl_stream_get_compression_info(const gavl_dictionary_t*, gavl_compression_info_t * ret); GAVL_PUBLIC int gavl_track_get_audio_compression_info(const gavl_dictionary_t*, int idx, gavl_compression_info_t * ret); GAVL_PUBLIC int gavl_track_get_video_compression_info(const gavl_dictionary_t*, int idx, gavl_compression_info_t * ret); GAVL_PUBLIC int gavl_track_get_overlay_compression_info(const gavl_dictionary_t*, int idx, gavl_compression_info_t * ret); GAVL_PUBLIC void gavl_stream_set_compression_info(gavl_dictionary_t*, const gavl_compression_info_t * ret); GAVL_PUBLIC gavl_dictionary_t * gavl_track_get_metadata_nc(gavl_dictionary_t*); GAVL_PUBLIC const gavl_dictionary_t * gavl_track_get_metadata(const gavl_dictionary_t*); GAVL_PUBLIC void gavl_track_compute_duration(gavl_dictionary_t * dict); GAVL_PUBLIC void gavl_track_finalize(gavl_dictionary_t * dict); GAVL_PUBLIC gavl_time_t gavl_track_get_duration(const gavl_dictionary_t * dict); GAVL_PUBLIC gavl_time_t gavl_track_get_display_offset(const gavl_dictionary_t * dict); GAVL_PUBLIC void gavl_track_set_duration(gavl_dictionary_t * dict, gavl_time_t dur); GAVL_PUBLIC void gavl_track_set_label(gavl_dictionary_t * dict); GAVL_PUBLIC void gavl_set_current_track(gavl_dictionary_t * dict, int idx); GAVL_PUBLIC int gavl_get_current_track(gavl_dictionary_t * dict); GAVL_PUBLIC void gavl_track_set_gui_state(gavl_dictionary_t * track, const char * state, int val); GAVL_PUBLIC void gavl_tracks_set_gui_state(gavl_array_t * tracks, const char * state, int val, int start, int end); GAVL_PUBLIC void gavl_track_copy_gui_state(gavl_dictionary_t * dst, const gavl_dictionary_t * src); GAVL_PUBLIC int gavl_track_get_gui_state(const gavl_dictionary_t * track, const char * state); GAVL_PUBLIC void gavl_track_clear_gui_state(gavl_dictionary_t * track); GAVL_PUBLIC gavl_array_t * gavl_get_tracks_nc(gavl_dictionary_t * dict); GAVL_PUBLIC const gavl_array_t * gavl_get_tracks(const gavl_dictionary_t * dict); GAVL_PUBLIC const gavl_dictionary_t * gavl_get_track_by_id(const gavl_dictionary_t * dict, const char * id); GAVL_PUBLIC const gavl_dictionary_t * gavl_get_track_by_string(const gavl_dictionary_t * dict, const char * tag, const char * val); GAVL_PUBLIC const gavl_dictionary_t * gavl_get_track_by_id_arr(const gavl_array_t * arr, const char * id); GAVL_PUBLIC const gavl_dictionary_t * gavl_get_track_by_string_arr(const gavl_array_t * arr, const char * tag, const char * val); GAVL_PUBLIC int gavl_get_track_idx_by_id_arr(const gavl_array_t * arr, const char * id); GAVL_PUBLIC gavl_dictionary_t * gavl_get_track_by_id_arr_nc(gavl_array_t * arr, const char * id); GAVL_PUBLIC gavl_dictionary_t * gavl_get_track_by_id_nc(gavl_dictionary_t * dict, const char * id); GAVL_PUBLIC int gavl_get_track_idx_by_id(const gavl_dictionary_t * dict, const char * id); GAVL_PUBLIC const char * gavl_track_get_id(const gavl_dictionary_t * dict); GAVL_PUBLIC const char * gavl_track_get_media_class(const gavl_dictionary_t * dict); GAVL_PUBLIC void gavl_track_set_id_nocopy(gavl_dictionary_t * dict, char * id); GAVL_PUBLIC void gavl_track_set_id(gavl_dictionary_t * dict, const char * id); GAVL_PUBLIC void gavl_sort_tracks_by_label(gavl_array_t * children); GAVL_PUBLIC void gavl_sort_tracks_by_bitrate(gavl_array_t * children); /* Highest first */ GAVL_PUBLIC void gavl_sort_tracks_by_quality(gavl_array_t * children); GAVL_PUBLIC int gavl_track_get_num_children(const gavl_dictionary_t * track); GAVL_PUBLIC int gavl_track_get_num_item_children(const gavl_dictionary_t * track); GAVL_PUBLIC int gavl_track_get_num_container_children(const gavl_dictionary_t * track); GAVL_PUBLIC void gavl_track_set_num_children(gavl_dictionary_t * track, int num_container_children, int num_item_children); GAVL_PUBLIC void gavl_track_set_lock(gavl_dictionary_t * track, int lock); GAVL_PUBLIC int gavl_track_is_locked(const gavl_dictionary_t * track); GAVL_PUBLIC const char * gavl_get_country_label(const char * iso); GAVL_PUBLIC void gavl_track_set_countries(gavl_dictionary_t * track); GAVL_PUBLIC const char * gavl_get_country_code_2_from_label(const char * label); GAVL_PUBLIC const char * gavl_get_country_code_3_from_label(const char * label); GAVL_PUBLIC void gavl_init_audio_stream(gavl_dictionary_t * dict); GAVL_PUBLIC void gavl_init_video_stream(gavl_dictionary_t * dict); GAVL_PUBLIC void gavl_init_text_stream(gavl_dictionary_t * dict); GAVL_PUBLIC void gavl_init_overlay_stream(gavl_dictionary_t * dict); /* Generate pages of results */ GAVL_PUBLIC void gavl_track_get_page_parent(const gavl_dictionary_t * parent_orig, int group_size, gavl_dictionary_t * parent_ret); GAVL_PUBLIC void gavl_track_get_page(const gavl_dictionary_t * parent_orig, int group_size, int idx, gavl_dictionary_t * ret); GAVL_PUBLIC void gavl_track_get_page_children_start(const gavl_dictionary_t * parent_orig, int group_size, int idx, int * start, int * len); GAVL_PUBLIC void gavl_track_get_page_children_end(const gavl_dictionary_t * parent_orig, int group_size, int idx, int start, int len, gavl_array_t * ret); /* If the track has more than 1 URIs, set GAVL_META_MULTIVARIANT and sort URIs for decreasing quality (best first) */ // GAVL_PUBLIC // void gavl_track_set_multivariant(gavl_dictionary_t * dict); // Multivariant support GAVL_PUBLIC int gavl_track_get_num_variants(const gavl_dictionary_t * dict); GAVL_PUBLIC const gavl_dictionary_t * gavl_track_get_variant(const gavl_dictionary_t * dict, int idx); GAVL_PUBLIC gavl_dictionary_t * gavl_track_get_variant_nc(gavl_dictionary_t * dict, int idx); GAVL_PUBLIC gavl_dictionary_t * gavl_track_append_variant(gavl_dictionary_t * dict, const char * mimetype, const char * location); // Multipart support GAVL_PUBLIC int gavl_track_get_num_parts(const gavl_dictionary_t * dict); GAVL_PUBLIC gavl_dictionary_t * gavl_track_append_part(gavl_dictionary_t * dict, const char * mimetype, const char * location); GAVL_PUBLIC const gavl_dictionary_t * gavl_track_get_part(const gavl_dictionary_t * dict, int i); GAVL_PUBLIC gavl_dictionary_t * gavl_track_get_part_nc(gavl_dictionary_t * dict, int i); // GAVL_PUBLIC gavl_time_t gavl_track_get_start_time(const gavl_dictionary_t * dict); GAVL_PUBLIC void gavl_track_merge(gavl_dictionary_t * dst, const gavl_dictionary_t * src); /* Compression tags (like AVI four character codes etc.) */ GAVL_PUBLIC int gavl_stream_get_compression_tag(const gavl_dictionary_t * s); GAVL_PUBLIC void gavl_stream_set_compression_tag(gavl_dictionary_t * s, int tag); GAVL_PUBLIC void gavl_stream_set_default_packet_timescale(gavl_dictionary_t * s); GAVL_PUBLIC void gavl_stream_set_sample_timescale(gavl_dictionary_t * s); GAVL_PUBLIC void gavl_stream_set_audio_bits(gavl_dictionary_t * s, int bits); GAVL_PUBLIC int gavl_stream_get_audio_bits(const gavl_dictionary_t * s); GAVL_PUBLIC int gavl_stream_is_continuous(const gavl_dictionary_t * s); #define GAVL_MK_FOURCC(a, b, c, d) ((a<<24)|(b<<16)|(c<<8)|d) #define GAVL_WAVID_2_FOURCC(id) GAVL_MK_FOURCC(0x00, 0x00, (id>>8), (id&0xff)) #define GAVL_FOURCC_2_WAVID(f) (f & 0xffff) /* */ #endif // GAVL_TRACKINFO_H_INCLUDED bplaum-gavl-b9385e3/include/gavl/utils.h000066400000000000000000000324241513252040200201510ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #ifndef GAVL_UTILS_H_INCLUDED #define GAVL_UTILS_H_INCLUDED #include #include /** \defgroup utils Utilities * \brief Utility functions * * These are some utility functions, which should be used, wherever * possible, instead of their libc counterparts (if any). That's because * they also handle portability issues, and it's easier to make one single * function portable (with \#ifdefs if necessary) and use it throughout * the code. * * @{ */ /** \brief Dump to stderr * \param format Format (printf compatible) */ GAVL_PUBLIC void gavl_dprintf(const char * format, ...) __attribute__ ((format (printf, 1, 2))); /** \brief Dump to stderr with indentation * \param indent How many spaces to prepend * \param format Format (printf compatible) */ GAVL_PUBLIC void gavl_diprintf(int indent, const char * format, ...) __attribute__ ((format (printf, 2, 3))); /** \brief Do a hexdump of binary data * \param data Data * \param len Length * \param linebreak How many bytes to print in each line before a linebreak * \param indent How many spaces to prepend * * This is mostly for debugging */ GAVL_PUBLIC void gavl_hexdumpi(const uint8_t * data, int len, int linebreak, int indent); /** \brief Do a hexdump of binary data * \param data Data * \param len Length * \param linebreak How many bytes to print in each line before a linebreak * * This is mostly for debugging */ GAVL_PUBLIC void gavl_hexdump(const uint8_t * data, int len, int linebreak); /** \brief Print into a string * \param format printf like format * * All other arguments must match the format like in printf. * This function allocates the returned string, thus it must be * freed by the caller. */ GAVL_PUBLIC char * gavl_sprintf(const char * format,...) __attribute__ ((format (printf, 1, 2))); /** \brief Replace a string * \param old_string Old string (will be freed) * \param new_string How the new string will look like * \returns A copy of new_string * * This function handles correctly the cases where either argument * is NULL. The empty string is treated like a NULL (non-existent) * string. */ GAVL_PUBLIC char * gavl_strrep(char * old_string, const char * new_string); /** \brief Replace a string * \param old_string Old string (will be freed) * \param new_string How the new string will look like * \param new_string_end End pointer of the new string * \returns A copy of new_string * * Like \ref gavl_strrep but the end of the string is also given */ GAVL_PUBLIC char * gavl_strnrep(char * old_string, const char * new_string_start, const char * new_string_end); /** \brief Duplicate a string * \param new_string How the new string will look like * \returns A copy of new_string * * This function handles correctly the cases where either argument * is NULL. The empty string is treated like a NULL (non-existent) * string. */ GAVL_PUBLIC char * gavl_strdup(const char * new_string); /** \brief Duplicate a string * \param new_string How the new string will look like * \param new_string_end End pointer of the new string * \returns A copy of new_string * * Like \ref gavl_strdup but the end of the string is also given */ GAVL_PUBLIC char * gavl_strndup(const char * new_string, const char * new_string_end); /** \brief Concatenate two strings * \param old Old string (will be freed) * \param tail Will be appended to old_string * \returns A newly allocated string. */ GAVL_PUBLIC char * gavl_strcat(char * old, const char * tail); /** \brief Append a part of a string to another string * \param old Old string (will be freed) * \param start Start of the string to be appended * \param end Points to the first character after the end of the string to be appended * \returns A newly allocated string. */ GAVL_PUBLIC char * gavl_strncat(char * old, const char * start, const char * end); /** \brief Cut leading and trailing spaces * \param str The string to trim inplace * \returns str * */ GAVL_PUBLIC char * gavl_strtrim(char * str); /** \brief Escape a string * \param old Old string (will be freed) * \param escape_chars Characters to escape * * This returns a newly allocated string with all characters * occurring in escape_chars preceded by a backslash */ GAVL_PUBLIC char * gavl_escape_string(char * old, const char * escape_chars); /** \brief Escape a string * \param old Old string * \param escape_chars Characters to escape * * This returns the same string with each backslash in * front of one of the escape_chars removed */ GAVL_PUBLIC char * gavl_unescape_string(char * old_string, const char * escape_chars); /** \brief Check if a string starts with a substring * \param str String * \param start Head to test against */ GAVL_PUBLIC int gavl_string_starts_with(const char * str, const char * start); /** \brief Check if a string starts with a substring (ignoring case) * \param str String * \param start Head to test against */ GAVL_PUBLIC int gavl_string_starts_with_i(const char * str, const char * start); /** \brief Check if a string ends with a substring * \param str String * \param end Tail to test against */ GAVL_PUBLIC int gavl_string_ends_with(const char * str, const char * end); /** \brief Check if a string ends with a substring (ignoring case) * \param str String * \param end Tail to test against */ GAVL_PUBLIC int gavl_string_ends_with_i(const char * str, const char * end); GAVL_PUBLIC const char * gavl_detect_episode_tag(const char * filename, const char * end, int * season_p, int * idx_p); GAVL_PUBLIC char * gavl_strip_space(char * str); GAVL_PUBLIC void gavl_strip_space_inplace(char * str); GAVL_PUBLIC char ** gavl_strbreak(const char * str, char delim); GAVL_PUBLIC void gavl_strbreak_free(char ** retval); GAVL_PUBLIC const char * gavl_find_char_c(const char * start, char delim); GAVL_PUBLIC char * gavl_find_char(char * start, char delim); GAVL_PUBLIC const char * gavl_tempdir(void); GAVL_PUBLIC int gavl_url_split(const char * url, char ** protocol, char ** user, char ** password, char ** hostname, int * port, char ** path); GAVL_PUBLIC char * gavl_filename_get_dir(const char * filename); GAVL_PUBLIC char * gavl_filename_get_base(const char * filename); GAVL_PUBLIC char * gavl_filename_ensure_extension(const char * filename, const char * ext); GAVL_PUBLIC int gavl_read_file_range(const char * filename, gavl_buffer_t * buf, int64_t start, int64_t len); GAVL_PUBLIC int gavl_read_file(const char * filename, gavl_buffer_t * buf); GAVL_PUBLIC size_t gavl_file_size(FILE * f); GAVL_PUBLIC int gavl_write_file(const char * filename, void * data, int len); GAVL_PUBLIC char * gavl_base64_encode_data(const void * data, int length); GAVL_PUBLIC int gavl_base64_decode_data(const char * str, gavl_buffer_t * ret); GAVL_PUBLIC char * gavl_base64_encode_data_urlsafe(const void * data, int length); GAVL_PUBLIC int gavl_base64_decode_data_urlsafe(const char * str, gavl_buffer_t * ret); GAVL_PUBLIC char * gavl_get_absolute_uri(const char * rel_uri, const char * abs_uri); GAVL_PUBLIC const char * gavl_language_get_iso639_2_b_from_code(const char * code); GAVL_PUBLIC const char * gavl_language_get_iso639_2_b_from_label(const char * label); GAVL_PUBLIC const char * gavl_language_get_label_from_code(const char * label); GAVL_PUBLIC void gavl_simplify_rational(int * num, int * den); GAVL_PUBLIC int gavl_num_cpus(void); /* URL variables */ #define GAVL_URL_VAR_TRACK "track" #define GAVL_URL_VAR_VARIANT "variant" #define GAVL_URL_VAR_CLOCK_TIME "clocktime" /* URL variables */ GAVL_PUBLIC void gavl_url_get_vars_c(const char * path, gavl_dictionary_t * vars); GAVL_PUBLIC void gavl_url_get_vars(char * path, gavl_dictionary_t * vars); GAVL_PUBLIC char * gavl_url_append_vars(char * path, const gavl_dictionary_t * vars); /* Append url variables */ GAVL_PUBLIC char * gavl_url_add_var_string(char * uri, const char * var, const char * val); GAVL_PUBLIC char * gavl_url_add_var_long(char * uri, const char * var, int64_t val); GAVL_PUBLIC char * gavl_url_add_var_double(char * uri, const char * var, double val); /* Extract url variables */ /* *val = NULL if variable doesn't exist */ GAVL_PUBLIC char * gavl_url_extract_var_string(char * uri, const char * var, char ** val); GAVL_PUBLIC char * gavl_url_extract_var_long(char * uri, const char * var, int64_t * val); /* *val = -1 if variable doesn't exist */ GAVL_PUBLIC char * gavl_url_extract_var_double(char * uri, const char * var, double * val); /* Append/Remove http variables from the URL */ GAVL_PUBLIC char * gavl_url_append_http_vars(char * url, const gavl_dictionary_t * vars); GAVL_PUBLIC char * gavl_url_extract_http_vars(char * url, gavl_dictionary_t * vars); /* MD5 routines */ #define GAVL_MD5_SIZE 16 #define GAVL_MD5_LENGTH 33 // 32 + \0 GAVL_PUBLIC void * gavl_md5_buffer(const void *buffer, int len, void *resblock); GAVL_PUBLIC char * gavl_md5_buffer_str(const void *buffer, int len, char * ret); GAVL_PUBLIC char * gavl_md5_2_string(const void * md5v, char * str); GAVL_PUBLIC int gavl_string_2_md5(const char * str, void * md5v); GAVL_PUBLIC int gavl_fd_can_read(int fd, int milliseconds); GAVL_PUBLIC int gavl_fd_can_write(int fd, int milliseconds); GAVL_PUBLIC int gavl_fd_set_block(int fd, int block); GAVL_PUBLIC int gavl_fd_get_block(int fd); GAVL_PUBLIC int gavl_host_is_us(const char * hostname); GAVL_PUBLIC int gavl_is_directory(const char * dir, int wr); /** \brief Ensure that a directory exists * \param dir Directory * \returns 1 if the directory exists after the function call, 0 else * * Non-existing directories will be created if possible */ GAVL_PUBLIC int gavl_ensure_directory(const char * dir, int priv); /* Get XDG-compatible paths */ GAVL_PUBLIC char * gavl_search_cache_dir(const char * package, const char * app, const char * directory); GAVL_PUBLIC char * gavl_search_config_dir(const char * package, const char * app, const char * directory); GAVL_PUBLIC char * gavl_search_state_dir(const char * package, const char * app, const char * directory); GAVL_PUBLIC char * gavl_search_data_dir(const char * package, const char * app, const char * directory); GAVL_PUBLIC char * gavl_search_data_dir_nocreate(const char * package, const char * app, const char * directory); /* Character set conversion usiong iconv */ #define GAVL_UTF8 "UTF-8" // iconf string for UTF-8 #define GAVL_UTF_BOM "GAVL-UTF" // Autodetect according to BOM typedef struct gavl_charset_converter_s gavl_charset_converter_t; GAVL_PUBLIC gavl_charset_converter_t * gavl_charset_converter_create(const char * from, const char * to); GAVL_PUBLIC char * gavl_convert_string(gavl_charset_converter_t * cnv, const char * str, int len, int * out_len); GAVL_PUBLIC char * gavl_convert_string_to_buffer(gavl_charset_converter_t * cnv, const char * in_string, int len, gavl_buffer_t * buf); GAVL_PUBLIC void gavl_charset_converter_destroy(gavl_charset_converter_t * cnv); /* Simple 2D coordinate transform */ /* We keep matrices as double because we make more operations on them. The actual transformations are then done on floats, which should be accurate enough for todays image resolutions */ GAVL_PUBLIC void gavl_set_orient_matrix_inv(gavl_image_orientation_t orient, double mat[2][3]); GAVL_PUBLIC void gavl_set_orient_matrix(gavl_image_orientation_t orient, double mat[2][3]); GAVL_PUBLIC void gavl_2d_transform_invert(const double matrix[2][3], double inverse[2][3]); GAVL_PUBLIC void gavl_2d_transform_mult(const double src1[2][3], const double src2[2][3], double dst[2][3]); GAVL_PUBLIC void gavl_2d_transform_transform(const double matrix[2][3], const float * src, float * dst); GAVL_PUBLIC void gavl_2d_transform_transform_inplace(const double matrix[2][3], float * dst); GAVL_PUBLIC void gavl_2d_transform_prepend(double dst[2][3], const double src[2][3]); #endif // GAVL_UTILS_H_INCLUDED /* @} */ bplaum-gavl-b9385e3/include/gavl/value.h000066400000000000000000000476641513252040200201410ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #ifndef GAVL_VALUE_H_INCLUDED #define GAVL_VALUE_H_INCLUDED #include typedef enum { GAVL_TYPE_UNDEFINED = 0, GAVL_TYPE_INT = 1, GAVL_TYPE_LONG = 2, GAVL_TYPE_FLOAT = 3, GAVL_TYPE_STRING = 4, GAVL_TYPE_AUDIOFORMAT = 5, GAVL_TYPE_VIDEOFORMAT = 6, GAVL_TYPE_COLOR_RGB = 7, GAVL_TYPE_COLOR_RGBA = 8, GAVL_TYPE_POSITION = 9, GAVL_TYPE_DICTIONARY = 10, GAVL_TYPE_ARRAY = 11, GAVL_TYPE_BINARY = 12, // Binary buffer } gavl_type_t; GAVL_PUBLIC const char * gavl_type_to_string(gavl_type_t type); GAVL_PUBLIC gavl_type_t gavl_type_from_string(const char * str); typedef struct gavl_value_s gavl_value_t; typedef struct gavl_dict_entry_s gavl_dict_entry_t; typedef struct gavl_array_s gavl_array_t; /* Dictionary */ typedef struct { int entries_alloc; int num_entries; gavl_dict_entry_t * entries; } gavl_dictionary_t; typedef void (*gavl_dictionary_foreach_func)(void * priv, const char * name, const gavl_value_t * val); /* Dictionary functions */ GAVL_PUBLIC void gavl_dictionary_init(gavl_dictionary_t * d); GAVL_PUBLIC void gavl_dictionary_reset(gavl_dictionary_t * d); GAVL_PUBLIC const char * gavl_dictionary_get_string(const gavl_dictionary_t * d, const char * name); GAVL_PUBLIC char * gavl_dictionary_get_string_nc(gavl_dictionary_t * d, const char * name); GAVL_PUBLIC const char * gavl_dictionary_get_string_i(const gavl_dictionary_t * d, const char * name); /* *_set* functions return 1 is the dictionary was really changed */ GAVL_PUBLIC int gavl_dictionary_set_string(gavl_dictionary_t * d, const char * name, const char * val); GAVL_PUBLIC int gavl_dictionary_set_string_nocopy(gavl_dictionary_t * d, const char * name, char * val); GAVL_PUBLIC int gavl_dictionary_set(gavl_dictionary_t * d, const char * name, const gavl_value_t * val); GAVL_PUBLIC int gavl_dictionary_set_i(gavl_dictionary_t * d, const char * name, const gavl_value_t * val); GAVL_PUBLIC int gavl_dictionary_set_nocopy(gavl_dictionary_t * d, const char * name, gavl_value_t * val); GAVL_PUBLIC int gavl_dictionary_set_nocopy_i(gavl_dictionary_t * d, const char * name, gavl_value_t * val); GAVL_PUBLIC void gavl_dictionary_append(gavl_dictionary_t * d, const char * name, const gavl_value_t * val); GAVL_PUBLIC void gavl_dictionary_append_i(gavl_dictionary_t * d, const char * name, const gavl_value_t * val); GAVL_PUBLIC void gavl_dictionary_append_nocopy(gavl_dictionary_t * d, const char * name, gavl_value_t * val); GAVL_PUBLIC void gavl_dictionary_append_nocopy_i(gavl_dictionary_t * d, const char * name, gavl_value_t * val); GAVL_PUBLIC int gavl_dictionary_set_int(gavl_dictionary_t * d, const char * name, int val); GAVL_PUBLIC int gavl_dictionary_set_long(gavl_dictionary_t * d, const char * name, int64_t val); GAVL_PUBLIC int gavl_dictionary_set_float(gavl_dictionary_t * d, const char * name, double val); GAVL_PUBLIC int gavl_dictionary_set_dictionary(gavl_dictionary_t * d, const char * name, const gavl_dictionary_t * dict); GAVL_PUBLIC int gavl_dictionary_set_array(gavl_dictionary_t * d, const char * name, const gavl_array_t * arr); GAVL_PUBLIC int gavl_dictionary_set_dictionary_nocopy(gavl_dictionary_t * d, const char * name, gavl_dictionary_t * dict); GAVL_PUBLIC const gavl_value_t * gavl_dictionary_get_item(const gavl_dictionary_t * d, const char * name, int item); GAVL_PUBLIC int gavl_dictionary_get_num_items(const gavl_dictionary_t * d, const char * name); GAVL_PUBLIC gavl_value_t * gavl_dictionary_get_item_nc(gavl_dictionary_t * d, const char * name, int item); GAVL_PUBLIC void gavl_dictionary_delete_item(gavl_dictionary_t * d, const char * name, int item); GAVL_PUBLIC const gavl_value_t * gavl_dictionary_get_item_i(const gavl_dictionary_t * d, const char * name, int item); GAVL_PUBLIC void gavl_dictionary_foreach(const gavl_dictionary_t * d, gavl_dictionary_foreach_func, void * priv); GAVL_PUBLIC int gavl_dictionary_find(const gavl_dictionary_t * m, const char * name, int ign); GAVL_PUBLIC const gavl_value_t * gavl_dictionary_get(const gavl_dictionary_t * d, const char * name); GAVL_PUBLIC gavl_value_t * gavl_dictionary_get_nc(gavl_dictionary_t * d, const char * name); GAVL_PUBLIC const gavl_value_t * gavl_dictionary_get_i(const gavl_dictionary_t * d, const char * name); GAVL_PUBLIC void gavl_dictionary_free(gavl_dictionary_t * d); GAVL_PUBLIC void gavl_dictionary_copy(gavl_dictionary_t * dst, const gavl_dictionary_t * src); GAVL_PUBLIC void gavl_dictionary_copy_value(gavl_dictionary_t * dst, const gavl_dictionary_t * src, const char * key); GAVL_PUBLIC void gavl_dictionary_move(gavl_dictionary_t * dst, gavl_dictionary_t * src); GAVL_PUBLIC void gavl_dictionary_dump(const gavl_dictionary_t * m, int indent); /* src1 has priority */ /* From src2 we take only the tags, which aren't available */ GAVL_PUBLIC void gavl_dictionary_merge(gavl_dictionary_t * dst, const gavl_dictionary_t * src1, const gavl_dictionary_t * src2); GAVL_PUBLIC void gavl_dictionary_merge2(gavl_dictionary_t * dst, const gavl_dictionary_t * src); GAVL_PUBLIC void gavl_dictionary_update_fields(gavl_dictionary_t * dst, const gavl_dictionary_t * src); /* Update fields in dst from src, but only the ones, which already exist */ GAVL_PUBLIC void gavl_dictionary_update_fields_nocreate(gavl_dictionary_t * dst, const gavl_dictionary_t * src); GAVL_PUBLIC int gavl_dictionary_compare(const gavl_dictionary_t * m1, const gavl_dictionary_t * m2); GAVL_PUBLIC gavl_dictionary_t * gavl_dictionary_get_dictionary_create(gavl_dictionary_t *, const char * name); GAVL_PUBLIC gavl_array_t * gavl_dictionary_get_array_create(gavl_dictionary_t * d, const char * name); GAVL_PUBLIC const gavl_dictionary_t * gavl_dictionary_get_recursive(const gavl_dictionary_t * dict, const char * path); GAVL_PUBLIC gavl_dictionary_t * gavl_dictionary_get_recursive_create(gavl_dictionary_t * dict, const char * path); GAVL_PUBLIC void gavl_dictionary_delete_fields(gavl_dictionary_t * m, const char * fields[]); GAVL_PUBLIC int gavl_dictionary_get_int(const gavl_dictionary_t * d, const char * name, int * ret); GAVL_PUBLIC int gavl_dictionary_get_int_i(const gavl_dictionary_t * d, const char * name, int * ret); GAVL_PUBLIC int gavl_dictionary_get_long(const gavl_dictionary_t * d, const char * name, int64_t * ret); GAVL_PUBLIC int gavl_dictionary_get_long_i(const gavl_dictionary_t * d, const char * name, int64_t * ret); GAVL_PUBLIC int gavl_dictionary_get_float(const gavl_dictionary_t * d, const char * name, double * ret); GAVL_PUBLIC const gavl_array_t * gavl_dictionary_get_array(const gavl_dictionary_t * d, const char * name); GAVL_PUBLIC gavl_array_t * gavl_dictionary_get_array_nc(gavl_dictionary_t * d, const char * name); GAVL_PUBLIC const gavl_dictionary_t * gavl_dictionary_get_dictionary(const gavl_dictionary_t * d, const char * name); GAVL_PUBLIC gavl_dictionary_t * gavl_dictionary_get_dictionary_nc(gavl_dictionary_t * d, const char * name); GAVL_PUBLIC gavl_buffer_t * gavl_dictionary_get_binary_nc(gavl_dictionary_t * d, const char * name); GAVL_PUBLIC const gavl_buffer_t * gavl_dictionary_get_binary(const gavl_dictionary_t * d, const char * name); GAVL_PUBLIC void gavl_dictionary_set_binary(const gavl_dictionary_t * d, const char * name, const uint8_t * buf, int len); GAVL_PUBLIC void gavl_dictionary_set_audio_format(gavl_dictionary_t * d, const char * name, const gavl_audio_format_t * fmt); GAVL_PUBLIC void gavl_dictionary_set_video_format(gavl_dictionary_t * d, const char * name, const gavl_video_format_t * fmt); GAVL_PUBLIC const gavl_audio_format_t * gavl_dictionary_get_audio_format(const gavl_dictionary_t * d, const char * name); GAVL_PUBLIC const gavl_video_format_t * gavl_dictionary_get_video_format(const gavl_dictionary_t * d, const char * name); GAVL_PUBLIC gavl_audio_format_t * gavl_dictionary_get_audio_format_nc(gavl_dictionary_t * d, const char * name); GAVL_PUBLIC gavl_video_format_t * gavl_dictionary_get_video_format_nc(gavl_dictionary_t * d, const char * name); /* For compatibility with old heap API */ GAVL_PUBLIC gavl_dictionary_t * gavl_dictionary_create(void); GAVL_PUBLIC gavl_dictionary_t * gavl_dictionary_clone(const gavl_dictionary_t * src); GAVL_PUBLIC void gavl_dictionary_destroy(gavl_dictionary_t *); /* * Can be used within a foreach_func to know, if this is the last entry */ GAVL_PUBLIC int gavl_dictionary_is_last(const gavl_dictionary_t * d, const char * name); /* Convert formats to and from dictionaries */ GAVL_PUBLIC void gavl_audio_format_to_dictionary(const gavl_audio_format_t * fmt, gavl_dictionary_t * dict); GAVL_PUBLIC int gavl_audio_format_from_dictionary(gavl_audio_format_t * fmt, const gavl_dictionary_t * dict); GAVL_PUBLIC void gavl_video_format_to_dictionary(const gavl_video_format_t * fmt, gavl_dictionary_t * dict); GAVL_PUBLIC int gavl_video_format_from_dictionary(gavl_video_format_t * fmt, const gavl_dictionary_t * dict); /* Array */ struct gavl_array_s { int entries_alloc; int num_entries; struct gavl_value_s * entries; }; typedef void (*gavl_array_foreach_func)(void * priv, int idx, const gavl_value_t * val); GAVL_PUBLIC void gavl_array_init(gavl_array_t * d); GAVL_PUBLIC void gavl_array_reset(gavl_array_t * d); GAVL_PUBLIC void gavl_array_push(gavl_array_t * d, const gavl_value_t * val); GAVL_PUBLIC void gavl_array_push_nocopy(gavl_array_t * d, gavl_value_t * val); GAVL_PUBLIC void gavl_array_unshift(gavl_array_t * d, const gavl_value_t * val); GAVL_PUBLIC void gavl_array_unshift_nocopy(gavl_array_t * d, gavl_value_t * val); GAVL_PUBLIC int gavl_array_pop(gavl_array_t * d, gavl_value_t * val); GAVL_PUBLIC int gavl_array_shift(gavl_array_t * d, gavl_value_t * val); GAVL_PUBLIC const gavl_value_t * gavl_array_get(const gavl_array_t * d, int idx); GAVL_PUBLIC gavl_value_t * gavl_array_get_nc(gavl_array_t * d, int idx); GAVL_PUBLIC void gavl_array_free(gavl_array_t * d); GAVL_PUBLIC void gavl_array_copy(gavl_array_t * dst, const gavl_array_t * src); GAVL_PUBLIC void gavl_array_copy_sub(gavl_array_t * dst, const gavl_array_t * src, int start, int num); GAVL_PUBLIC void gavl_array_move(gavl_array_t * dst, gavl_array_t * src); GAVL_PUBLIC void gavl_array_dump(const gavl_array_t * a, int indent); GAVL_PUBLIC void gavl_array_foreach(const gavl_array_t * a, gavl_array_foreach_func func, void * priv); GAVL_PUBLIC int gavl_array_compare(const gavl_array_t * m1, const gavl_array_t * m2); GAVL_PUBLIC void gavl_array_foreach(const gavl_array_t * a, gavl_array_foreach_func func, void * priv); GAVL_PUBLIC int gavl_array_move_entry(gavl_array_t * m1, int src_pos, int dst_pos); GAVL_PUBLIC void gavl_array_splice_val(gavl_array_t * arr, int idx, int del, const gavl_value_t * add); GAVL_PUBLIC void gavl_array_splice_array(gavl_array_t * arr, int idx, int del, const gavl_array_t * add); GAVL_PUBLIC void gavl_array_splice_val_nocopy(gavl_array_t * arr, int idx, int del, gavl_value_t * add); GAVL_PUBLIC void gavl_array_splice_array_nocopy(gavl_array_t * arr, int idx, int del, gavl_array_t * add); // uses qsort(3) GAVL_PUBLIC void gavl_array_sort(gavl_array_t * arr, int (*compare)(const void *, const void *, void * priv), void * priv); GAVL_PUBLIC void gavl_dictionary_append_string_array_nocopy(gavl_dictionary_t * d, const char * key, char * val); GAVL_PUBLIC void gavl_dictionary_append_string_array(gavl_dictionary_t * d, const char * key, const char * val); GAVL_PUBLIC const char * gavl_dictionary_get_string_array(const gavl_dictionary_t * d, const char * key, int idx); GAVL_PUBLIC int gavl_dictionary_has_string_array(const gavl_dictionary_t * d, const char * key, const char * val); /* For compatibility with old heap API */ GAVL_PUBLIC gavl_array_t * gavl_array_create(void); GAVL_PUBLIC void gavl_array_destroy(gavl_array_t *); /* Value */ struct gavl_value_s { gavl_type_t type; union { int i; int64_t l; double d; char * str; double color[4]; double position[2]; gavl_dictionary_t * dictionary; gavl_array_t * array; gavl_audio_format_t * audioformat; gavl_video_format_t * videoformat; gavl_buffer_t * buffer; } v; }; struct gavl_dict_entry_s { char * name; gavl_value_t v; }; /* Value functions */ GAVL_PUBLIC int gavl_value_clamp(gavl_value_t * v, const gavl_value_t * min, const gavl_value_t * max); GAVL_PUBLIC int gavl_value_compare(const gavl_value_t * v1, const gavl_value_t * v2); GAVL_PUBLIC int gavl_value_addto(const gavl_value_t * src, gavl_value_t * dst); GAVL_PUBLIC void gavl_value_copy(gavl_value_t * dst, const gavl_value_t * src); GAVL_PUBLIC void gavl_value_move(gavl_value_t * dst, gavl_value_t * src); GAVL_PUBLIC void gavl_value_dump(const gavl_value_t * v, int indent); GAVL_PUBLIC void gavl_value_free(gavl_value_t * v); GAVL_PUBLIC void gavl_value_init(gavl_value_t * v); GAVL_PUBLIC void gavl_value_reset(gavl_value_t * v); GAVL_PUBLIC void gavl_value_append_nocopy(gavl_value_t * v, gavl_value_t * child); GAVL_PUBLIC void gavl_value_append(gavl_value_t * v, const gavl_value_t * child); GAVL_PUBLIC int gavl_value_get_num_items(const gavl_value_t * v); GAVL_PUBLIC const gavl_value_t * gavl_value_get_item(const gavl_value_t * v, int item); GAVL_PUBLIC void gavl_value_delete_item(gavl_value_t * v, int item); GAVL_PUBLIC gavl_value_t * gavl_value_get_item_nc(gavl_value_t * v, int item); GAVL_PUBLIC char * gavl_value_join_arr(const gavl_value_t * val, const char * glue); GAVL_PUBLIC void gavl_value_set_type(gavl_value_t * v, gavl_type_t t); GAVL_PUBLIC void gavl_value_set_int(gavl_value_t * v, int val); GAVL_PUBLIC void gavl_value_set_float(gavl_value_t * v, double val); GAVL_PUBLIC void gavl_value_set_long(gavl_value_t * v, int64_t val); GAVL_PUBLIC void gavl_value_set_string(gavl_value_t * v, const char * str); GAVL_PUBLIC void gavl_value_set_string_nocopy(gavl_value_t * v, char * str); GAVL_PUBLIC gavl_audio_format_t * gavl_value_set_audio_format(gavl_value_t * v); GAVL_PUBLIC gavl_video_format_t * gavl_value_set_video_format(gavl_value_t * v); GAVL_PUBLIC gavl_dictionary_t * gavl_value_set_dictionary(gavl_value_t * v); GAVL_PUBLIC gavl_buffer_t * gavl_value_set_binary(gavl_value_t * v); GAVL_PUBLIC const gavl_buffer_t * gavl_value_get_binary(const gavl_value_t * v); GAVL_PUBLIC gavl_buffer_t * gavl_value_get_binary_nc(gavl_value_t * v); GAVL_PUBLIC void gavl_value_set_dictionary_nocopy(gavl_value_t * v, gavl_dictionary_t * val); GAVL_PUBLIC gavl_array_t * gavl_value_set_array(gavl_value_t * v); GAVL_PUBLIC void gavl_value_set_array_nocopy(gavl_value_t * v, gavl_array_t * val); GAVL_PUBLIC double * gavl_value_set_position(gavl_value_t * v); GAVL_PUBLIC double * gavl_value_set_color_rgb(gavl_value_t * v); GAVL_PUBLIC double * gavl_value_set_color_rgba(gavl_value_t * v); /* Get value */ GAVL_PUBLIC int gavl_value_get_int(const gavl_value_t * v, int * val); GAVL_PUBLIC int gavl_value_get_float(const gavl_value_t * v, double * val); GAVL_PUBLIC int gavl_value_get_long(const gavl_value_t * v, int64_t * val); GAVL_PUBLIC const char * gavl_value_get_string(const gavl_value_t * v); GAVL_PUBLIC char * gavl_value_get_string_nc(gavl_value_t * v); GAVL_PUBLIC char * gavl_value_to_string(const gavl_value_t * v); GAVL_PUBLIC int gavl_value_from_string(gavl_value_t * v, const char * str); GAVL_PUBLIC const gavl_audio_format_t * gavl_value_get_audio_format(const gavl_value_t * v); GAVL_PUBLIC gavl_audio_format_t * gavl_value_get_audio_format_nc(gavl_value_t * v); GAVL_PUBLIC const gavl_video_format_t * gavl_value_get_video_format(const gavl_value_t * v); GAVL_PUBLIC gavl_video_format_t * gavl_value_get_video_format_nc(gavl_value_t * v); GAVL_PUBLIC const gavl_dictionary_t * gavl_value_get_dictionary(const gavl_value_t * v); GAVL_PUBLIC gavl_dictionary_t * gavl_value_get_dictionary_nc(gavl_value_t * v); GAVL_PUBLIC const gavl_array_t * gavl_value_get_array(const gavl_value_t * v); GAVL_PUBLIC gavl_array_t * gavl_value_get_array_nc(gavl_value_t * v); GAVL_PUBLIC gavl_dictionary_t * gavl_array_append_dictionary(gavl_array_t * arr); GAVL_PUBLIC const double * gavl_value_get_position(const gavl_value_t * v); GAVL_PUBLIC const double * gavl_value_get_color_rgb(const gavl_value_t * v); GAVL_PUBLIC const double * gavl_value_get_color_rgba(const gavl_value_t * v); /* String array (convenience wrapper) */ GAVL_PUBLIC void gavl_string_array_add(gavl_array_t * arr, const char * str); GAVL_PUBLIC void gavl_string_array_insert_at(gavl_array_t * arr, int idx, const char * str); GAVL_PUBLIC void gavl_string_array_add_nocopy(gavl_array_t * arr, char * str); GAVL_PUBLIC void gavl_string_array_delete(gavl_array_t * arr, const char * str); GAVL_PUBLIC int gavl_string_array_indexof(const gavl_array_t * arr, const char * str); GAVL_PUBLIC int gavl_string_array_indexof_i(const gavl_array_t * arr, const char * str); GAVL_PUBLIC const char * gavl_string_array_get(const gavl_array_t * arr, int idx); GAVL_PUBLIC char * gavl_string_array_join(const gavl_array_t * arr, const char * glue); /* For initializing values statically */ #define GAVL_VALUE_INIT_INT(val) { .type = GAVL_TYPE_INT, .v.i = val } #define GAVL_VALUE_INIT_LONG(val) { .type = GAVL_TYPE_LONG, .v.l = val } #define GAVL_VALUE_INIT_FLOAT(val) { .type = GAVL_TYPE_FLOAT, .v.d = val } #define GAVL_VALUE_INIT_STRING(val) { .type = GAVL_TYPE_STRING, .v.str = val } #define GAVL_VALUE_INIT_COLOR_RGB(r, g, b) { .type = GAVL_TYPE_COLOR_RGB, .v.color = {r, g, b, 1.0 } } #define GAVL_VALUE_INIT_COLOR_RGBA(r, g, b, a) { .type = GAVL_TYPE_COLOR_RGBA, .v.color = {r, g, b, a } } #define GAVL_VALUE_INIT_POSITION(x, y) { .type = GAVL_TYPE_POSITION, .v.position = {x, y} } #endif // GAVL_VALUE_H_INCLUDED bplaum-gavl-b9385e3/include/gavlshm.h000066400000000000000000000030421513252040200175130ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #ifndef GAVL_SHM_H_INCLUDED #define GAVL_SHM_H_INCLUDED #include #include /* /gavl-12345678-12345670-12345670 */ #define BG_SHM_NAME_MAX 64 typedef struct gavl_shm_s gavl_shm_t; #define BG_SHM_FLAG_CREATOR (1<<0) struct gavl_shm_s { int flags; uint8_t * addr; int size; char name[BG_SHM_NAME_MAX]; }; gavl_shm_t * gavl_shm_create(int size, int * ctx, int * idx); gavl_shm_t * gavl_shm_map(const char * name, int size, int wr); void gavl_shm_unmap(gavl_shm_t *); uint8_t * gavl_shm_get_buffer(gavl_shm_t * s, int * size); void gavl_shm_destroy(gavl_shm_t*); #endif // GAVL_SHM_H_INCLUDED bplaum-gavl-b9385e3/include/hw_private.h000066400000000000000000000070461513252040200202320ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #ifndef HW_PRIVATE_H_INCLUDED #define HW_PRIVATE_H_INCLUDED #include #include // Includes hw.h #include #ifdef HAVE_DRM #include #endif /* Functions */ typedef struct { void (*destroy_native)(void * native); gavl_pixelformat_t * (*get_image_formats)(gavl_hw_context_t * ctx, gavl_hw_frame_mode_t mode); void (*video_format_adjust)(gavl_hw_context_t * ctx, gavl_video_format_t * fmt, gavl_hw_frame_mode_t mode); gavl_video_frame_t * (*video_frame_create)(gavl_hw_context_t * ctx, int alloc_resource); /* Map into / unmap from address space */ int (*video_frame_map)(gavl_video_frame_t *, int wr); int (*video_frame_unmap)(gavl_video_frame_t *); void (*video_frame_destroy)(gavl_video_frame_t * f, int destroy_resource); int (*video_frame_to_ram)(gavl_video_frame_t * dst, gavl_video_frame_t * src); int (*video_frame_to_hw)(gavl_video_frame_t * dst, gavl_video_frame_t * src); int (*write_video_frame)(gavl_hw_context_t * ctx, gavl_io_t * io, const gavl_video_frame_t * f); int (*read_video_frame)(gavl_hw_context_t * ctx, gavl_io_t * io, gavl_video_frame_t * f); int (*can_import)(gavl_hw_context_t * ctx, const gavl_hw_context_t * from); int (*can_export)(gavl_hw_context_t * ctx, const gavl_hw_context_t * to); int (*import_video_frame)(const gavl_video_format_t * fmt, gavl_video_frame_t * src, gavl_video_frame_t * dst); int (*export_video_frame)(const gavl_video_format_t * fmt, gavl_video_frame_t * src, gavl_video_frame_t * dst); } gavl_hw_funcs_t; typedef struct { void ** frames; int num_frames; int frames_alloc; } frame_pool_t; int gavl_hw_frame_pool_add(frame_pool_t *, void * frame, int idx); void gavl_hw_frame_pool_reset(gavl_hw_context_t * ctx, frame_pool_t *, int free_resources); struct gavl_hw_context_s { void * native; gavl_hw_type_t type; const gavl_hw_funcs_t * funcs; gavl_pixelformat_t * image_formats_map; gavl_pixelformat_t * image_formats_transfer; int support_flags; frame_pool_t created; frame_pool_t imported; gavl_video_format_t vfmt; gavl_hw_frame_mode_t mode; }; gavl_hw_context_t * gavl_hw_context_create_internal(void * native, const gavl_hw_funcs_t * funcs, gavl_hw_type_t type, int support_flags); void gavl_hw_destroy_video_frame(gavl_hw_context_t * ctx, gavl_video_frame_t * frame, int destroy_resource); gavl_video_frame_t * gavl_hw_ctx_create_import_vframe(gavl_hw_context_t * ctx, int buf_idx); #endif bplaum-gavl-b9385e3/include/interleave.h000066400000000000000000000061601513252040200202140ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #ifndef INTERLEAVE_H_INCLUDED #define INTERLEAVE_H_INCLUDED /* Interleaving functions */ typedef struct { /* 8 bit versions */ gavl_audio_func_t interleave_none_to_all_8; gavl_audio_func_t interleave_none_to_all_stereo_8; gavl_audio_func_t interleave_all_to_none_8; gavl_audio_func_t interleave_all_to_none_stereo_8; gavl_audio_func_t interleave_2_to_all_8; gavl_audio_func_t interleave_2_to_none_8; gavl_audio_func_t interleave_all_to_2_8; gavl_audio_func_t interleave_none_to_2_8; /* 16 bit versions */ gavl_audio_func_t interleave_none_to_all_16; gavl_audio_func_t interleave_none_to_all_stereo_16; gavl_audio_func_t interleave_all_to_none_16; gavl_audio_func_t interleave_all_to_none_stereo_16; gavl_audio_func_t interleave_2_to_all_16; gavl_audio_func_t interleave_2_to_none_16; gavl_audio_func_t interleave_all_to_2_16; gavl_audio_func_t interleave_none_to_2_16; /* 32 bit versions */ gavl_audio_func_t interleave_none_to_all_32; gavl_audio_func_t interleave_none_to_all_stereo_32; gavl_audio_func_t interleave_all_to_none_32; gavl_audio_func_t interleave_all_to_none_stereo_32; gavl_audio_func_t interleave_2_to_all_32; gavl_audio_func_t interleave_2_to_none_32; gavl_audio_func_t interleave_all_to_2_32; gavl_audio_func_t interleave_none_to_2_32; /* 64 bit versions */ gavl_audio_func_t interleave_none_to_all_64; gavl_audio_func_t interleave_none_to_all_stereo_64; gavl_audio_func_t interleave_all_to_none_64; gavl_audio_func_t interleave_all_to_none_stereo_64; gavl_audio_func_t interleave_2_to_all_64; gavl_audio_func_t interleave_2_to_none_64; gavl_audio_func_t interleave_all_to_2_64; gavl_audio_func_t interleave_none_to_2_64; } gavl_interleave_table_t; gavl_interleave_table_t * gavl_create_interleave_table(gavl_audio_options_t*); void gavl_destroy_interleave_table(gavl_interleave_table_t *); /* Find conversion functions */ gavl_audio_func_t gavl_find_interleave_converter(gavl_interleave_table_t *, gavl_audio_format_t * in, gavl_audio_format_t * out); void gavl_init_interleave_funcs_c(gavl_interleave_table_t * t); #endif // INTERLEAVE_H_INCLUDED bplaum-gavl-b9385e3/include/io_private.h000066400000000000000000000037341513252040200202230ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ /* I/O */ struct gavl_io_s { gavl_read_func read_func; gavl_read_func read_func_nonblock; gavl_write_func write_func; gavl_write_func write_func_nonblock; gavl_seek_func seek_func; gavl_close_func close_func; gavl_flush_func flush_func; gavl_poll_func poll_func; void * priv; int64_t position; /* Informational data */ int64_t total_bytes; gavl_dictionary_t info; gavl_buffer_t get_buf; int flags; }; void gavl_io_init(gavl_io_t * ret, gavl_read_func r, gavl_write_func w, gavl_seek_func s, gavl_close_func c, gavl_flush_func f, int flags, void * priv); void gavl_io_init_buf_read(gavl_io_t * io, gavl_buffer_t * buf); void gavl_io_init_buf_write(gavl_io_t * io, gavl_buffer_t * buf); void gavl_io_set_nonblock_read(gavl_io_t * io, gavl_read_func read_nonblock); void gavl_io_set_nonblock_write(gavl_io_t * io, gavl_write_func write_nonblock); void gavl_io_cleanup(gavl_io_t * io); bplaum-gavl-b9385e3/include/language_table.h000066400000000000000000000527411513252040200210160ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #ifndef GAVL_LANGUAGE_TABLE_H #define GAVL_LANGUAGE_TABLE_H // Generated by utils/make_language_table.sh static const struct { const char * ISO_639_2_B; const char * ISO_639_2_T; const char * ISO_639_1; const char * label; } languages[] = { { "abk", NULL, "ab", "Abkhazian" }, { "ace", NULL, NULL, "Achinese" }, { "ach", NULL, NULL, "Acoli" }, { "ada", NULL, NULL, "Adangme" }, { "ady", NULL, NULL, "Adyghe; Adygei" }, { "aar", NULL, "aa", "Afar" }, { "afh", NULL, NULL, "Afrihili" }, { "afr", NULL, "af", "Afrikaans" }, { "afa", NULL, NULL, "Afro-Asiatic languages" }, { "ain", NULL, NULL, "Ainu" }, { "aka", NULL, "ak", "Akan" }, { "akk", NULL, NULL, "Akkadian" }, { "alb", "sqi", "sq", "Albanian" }, { "ale", NULL, NULL, "Aleut" }, { "alg", NULL, NULL, "Algonquian languages" }, { "tut", NULL, NULL, "Altaic languages" }, { "amh", NULL, "am", "Amharic" }, { "anp", NULL, NULL, "Angika" }, { "apa", NULL, NULL, "Apache languages" }, { "ara", NULL, "ar", "Arabic" }, { "arg", NULL, "an", "Aragonese" }, { "arp", NULL, NULL, "Arapaho" }, { "arw", NULL, NULL, "Arawak" }, { "arm", "hye", "hy", "Armenian" }, { "rup", NULL, NULL, "Aromanian; Arumanian; Macedo-Romanian" }, { "art", NULL, NULL, "Artificial languages" }, { "asm", NULL, "as", "Assamese" }, { "ast", NULL, NULL, "Asturian; Bable; Leonese; Asturleonese" }, { "ath", NULL, NULL, "Athapascan languages" }, { "aus", NULL, NULL, "Australian languages" }, { "map", NULL, NULL, "Austronesian languages" }, { "ava", NULL, "av", "Avaric" }, { "ave", NULL, "ae", "Avestan" }, { "awa", NULL, NULL, "Awadhi" }, { "aym", NULL, "ay", "Aymara" }, { "aze", NULL, "az", "Azerbaijani" }, { "ban", NULL, NULL, "Balinese" }, { "bat", NULL, NULL, "Baltic languages" }, { "bal", NULL, NULL, "Baluchi" }, { "bam", NULL, "bm", "Bambara" }, { "bai", NULL, NULL, "Bamileke languages" }, { "bad", NULL, NULL, "Banda languages" }, { "bnt", NULL, NULL, "Bantu languages" }, { "bas", NULL, NULL, "Basa" }, { "bak", NULL, "ba", "Bashkir" }, { "baq", "eus", "eu", "Basque" }, { "btk", NULL, NULL, "Batak languages" }, { "bej", NULL, NULL, "Beja; Bedawiyet" }, { "bel", NULL, "be", "Belarusian" }, { "bem", NULL, NULL, "Bemba" }, { "ben", NULL, "bn", "Bengali" }, { "ber", NULL, NULL, "Berber languages" }, { "bho", NULL, NULL, "Bhojpuri" }, { "bih", NULL, "bh", "Bihari languages" }, { "bik", NULL, NULL, "Bikol" }, { "bin", NULL, NULL, "Bini; Edo" }, { "bis", NULL, "bi", "Bislama" }, { "byn", NULL, NULL, "Blin; Bilin" }, { "zbl", NULL, NULL, "Blissymbols; Blissymbolics; Bliss" }, { "nob", NULL, "nb", "Bokmål, Norwegian; Norwegian Bokmål" }, { "bos", NULL, "bs", "Bosnian" }, { "bra", NULL, NULL, "Braj" }, { "bre", NULL, "br", "Breton" }, { "bug", NULL, NULL, "Buginese" }, { "bul", NULL, "bg", "Bulgarian" }, { "bua", NULL, NULL, "Buriat" }, { "bur", "mya", "my", "Burmese" }, { "cad", NULL, NULL, "Caddo" }, { "cat", NULL, "ca", "Catalan; Valencian" }, { "cau", NULL, NULL, "Caucasian languages" }, { "ceb", NULL, NULL, "Cebuano" }, { "cel", NULL, NULL, "Celtic languages" }, { "cai", NULL, NULL, "Central American Indian languages" }, { "khm", NULL, "km", "Central Khmer" }, { "chg", NULL, NULL, "Chagatai" }, { "cmc", NULL, NULL, "Chamic languages" }, { "cha", NULL, "ch", "Chamorro" }, { "che", NULL, "ce", "Chechen" }, { "chr", NULL, NULL, "Cherokee" }, { "chy", NULL, NULL, "Cheyenne" }, { "chb", NULL, NULL, "Chibcha" }, { "nya", NULL, "ny", "Chichewa; Chewa; Nyanja" }, { "chi", "zho", "zh", "Chinese" }, { "chn", NULL, NULL, "Chinook jargon" }, { "chp", NULL, NULL, "Chipewyan; Dene Suline" }, { "cho", NULL, NULL, "Choctaw" }, { "chu", NULL, "cu", "Church Slavic; Old Slavonic; Church Slavonic; Old Bulgarian; Old Church Slavonic" }, { "chk", NULL, NULL, "Chuukese" }, { "chv", NULL, "cv", "Chuvash" }, { "nwc", NULL, NULL, "Classical Newari; Old Newari; Classical Nepal Bhasa" }, { "syc", NULL, NULL, "Classical Syriac" }, { "cop", NULL, NULL, "Coptic" }, { "cor", NULL, "kw", "Cornish" }, { "cos", NULL, "co", "Corsican" }, { "cre", NULL, "cr", "Cree" }, { "mus", NULL, NULL, "Creek" }, { "crp", NULL, NULL, "Creoles and pidgins" }, { "cpe", NULL, NULL, "Creoles and pidgins, English based" }, { "cpf", NULL, NULL, "Creoles and pidgins, French-based" }, { "cpp", NULL, NULL, "Creoles and pidgins, Portuguese-based" }, { "crh", NULL, NULL, "Crimean Tatar; Crimean Turkish" }, { "hrv", NULL, "hr", "Croatian" }, { "cus", NULL, NULL, "Cushitic languages" }, { "cze", "ces", "cs", "Czech" }, { "dak", NULL, NULL, "Dakota" }, { "dan", NULL, "da", "Danish" }, { "dar", NULL, NULL, "Dargwa" }, { "del", NULL, NULL, "Delaware" }, { "din", NULL, NULL, "Dinka" }, { "div", NULL, "dv", "Divehi; Dhivehi; Maldivian" }, { "dgr", NULL, NULL, "Dogrib" }, { "doi", NULL, NULL, "Dogri" }, { "dra", NULL, NULL, "Dravidian languages" }, { "dua", NULL, NULL, "Duala" }, { "dut", "nld", "nl", "Dutch; Flemish" }, { "dum", NULL, NULL, "Dutch, Middle (ca.1050-1350)" }, { "dyu", NULL, NULL, "Dyula" }, { "dzo", NULL, "dz", "Dzongkha" }, { "frs", NULL, NULL, "Eastern Frisian" }, { "efi", NULL, NULL, "Efik" }, { "egy", NULL, NULL, "Egyptian (Ancient)" }, { "eka", NULL, NULL, "Ekajuk" }, { "elx", NULL, NULL, "Elamite" }, { "eng", NULL, "en", "English" }, { "enm", NULL, NULL, "English, Middle (1100-1500)" }, { "ang", NULL, NULL, "English, Old (ca.450-1100)" }, { "myv", NULL, NULL, "Erzya" }, { "epo", NULL, "eo", "Esperanto" }, { "est", NULL, "et", "Estonian" }, { "ewe", NULL, "ee", "Ewe" }, { "ewo", NULL, NULL, "Ewondo" }, { "fan", NULL, NULL, "Fang" }, { "fat", NULL, NULL, "Fanti" }, { "fao", NULL, "fo", "Faroese" }, { "fij", NULL, "fj", "Fijian" }, { "fil", NULL, NULL, "Filipino; Pilipino" }, { "fin", NULL, "fi", "Finnish" }, { "fiu", NULL, NULL, "Finno-Ugrian languages" }, { "fon", NULL, NULL, "Fon" }, { "fre", "fra", "fr", "French" }, { "frm", NULL, NULL, "French, Middle (ca.1400-1600)" }, { "fro", NULL, NULL, "French, Old (842-ca.1400)" }, { "fur", NULL, NULL, "Friulian" }, { "ful", NULL, "ff", "Fulah" }, { "gla", NULL, "gd", "Gaelic; Scottish Gaelic" }, { "gaa", NULL, NULL, "Ga" }, { "car", NULL, NULL, "Galibi Carib" }, { "glg", NULL, "gl", "Galician" }, { "lug", NULL, "lg", "Ganda" }, { "gay", NULL, NULL, "Gayo" }, { "gba", NULL, NULL, "Gbaya" }, { "gez", NULL, NULL, "Geez" }, { "geo", "kat", "ka", "Georgian" }, { "ger", "deu", "de", "German" }, { "gem", NULL, NULL, "Germanic languages" }, { "gmh", NULL, NULL, "German, Middle High (ca.1050-1500)" }, { "goh", NULL, NULL, "German, Old High (ca.750-1050)" }, { "gil", NULL, NULL, "Gilbertese" }, { "gon", NULL, NULL, "Gondi" }, { "gor", NULL, NULL, "Gorontalo" }, { "got", NULL, NULL, "Gothic" }, { "grb", NULL, NULL, "Grebo" }, { "grc", NULL, NULL, "Greek, Ancient (to 1453)" }, { "gre", "ell", "el", "Greek, Modern (1453-)" }, { "grn", NULL, "gn", "Guarani" }, { "guj", NULL, "gu", "Gujarati" }, { "gwi", NULL, NULL, "Gwich'in" }, { "hai", NULL, NULL, "Haida" }, { "hat", NULL, "ht", "Haitian; Haitian Creole" }, { "hau", NULL, "ha", "Hausa" }, { "haw", NULL, NULL, "Hawaiian" }, { "heb", NULL, "he", "Hebrew" }, { "her", NULL, "hz", "Herero" }, { "hil", NULL, NULL, "Hiligaynon" }, { "him", NULL, NULL, "Himachali languages; Western Pahari languages" }, { "hin", NULL, "hi", "Hindi" }, { "hmo", NULL, "ho", "Hiri Motu" }, { "hit", NULL, NULL, "Hittite" }, { "hmn", NULL, NULL, "Hmong; Mong" }, { "hun", NULL, "hu", "Hungarian" }, { "hup", NULL, NULL, "Hupa" }, { "iba", NULL, NULL, "Iban" }, { "ice", "isl", "is", "Icelandic" }, { "ido", NULL, "io", "Ido" }, { "ibo", NULL, "ig", "Igbo" }, { "ijo", NULL, NULL, "Ijo languages" }, { "ilo", NULL, NULL, "Iloko" }, { "smn", NULL, NULL, "Inari Sami" }, { "inc", NULL, NULL, "Indic languages" }, { "ine", NULL, NULL, "Indo-European languages" }, { "ind", NULL, "id", "Indonesian" }, { "inh", NULL, NULL, "Ingush" }, { "ina", NULL, "ia", "Interlingua (International Auxiliary Language Association)" }, { "ile", NULL, "ie", "Interlingue; Occidental" }, { "iku", NULL, "iu", "Inuktitut" }, { "ipk", NULL, "ik", "Inupiaq" }, { "ira", NULL, NULL, "Iranian languages" }, { "gle", NULL, "ga", "Irish" }, { "mga", NULL, NULL, "Irish, Middle (900-1200)" }, { "sga", NULL, NULL, "Irish, Old (to 900)" }, { "iro", NULL, NULL, "Iroquoian languages" }, { "ita", NULL, "it", "Italian" }, { "jpn", NULL, "ja", "Japanese" }, { "jav", NULL, "jv", "Javanese" }, { "jrb", NULL, NULL, "Judeo-Arabic" }, { "jpr", NULL, NULL, "Judeo-Persian" }, { "kbd", NULL, NULL, "Kabardian" }, { "kab", NULL, NULL, "Kabyle" }, { "kac", NULL, NULL, "Kachin; Jingpho" }, { "kal", NULL, "kl", "Kalaallisut; Greenlandic" }, { "xal", NULL, NULL, "Kalmyk; Oirat" }, { "kam", NULL, NULL, "Kamba" }, { "kan", NULL, "kn", "Kannada" }, { "kau", NULL, "kr", "Kanuri" }, { "krc", NULL, NULL, "Karachay-Balkar" }, { "kaa", NULL, NULL, "Kara-Kalpak" }, { "krl", NULL, NULL, "Karelian" }, { "kar", NULL, NULL, "Karen languages" }, { "kas", NULL, "ks", "Kashmiri" }, { "csb", NULL, NULL, "Kashubian" }, { "kaw", NULL, NULL, "Kawi" }, { "kaz", NULL, "kk", "Kazakh" }, { "kha", NULL, NULL, "Khasi" }, { "khi", NULL, NULL, "Khoisan languages" }, { "kho", NULL, NULL, "Khotanese; Sakan" }, { "kik", NULL, "ki", "Kikuyu; Gikuyu" }, { "kmb", NULL, NULL, "Kimbundu" }, { "kin", NULL, "rw", "Kinyarwanda" }, { "kir", NULL, "ky", "Kirghiz; Kyrgyz" }, { "tlh", NULL, NULL, "Klingon; tlhIngan-Hol" }, { "kom", NULL, "kv", "Komi" }, { "kon", NULL, "kg", "Kongo" }, { "kok", NULL, NULL, "Konkani" }, { "kor", NULL, "ko", "Korean" }, { "kos", NULL, NULL, "Kosraean" }, { "kpe", NULL, NULL, "Kpelle" }, { "kro", NULL, NULL, "Kru languages" }, { "kua", NULL, "kj", "Kuanyama; Kwanyama" }, { "kum", NULL, NULL, "Kumyk" }, { "kur", NULL, "ku", "Kurdish" }, { "kru", NULL, NULL, "Kurukh" }, { "kut", NULL, NULL, "Kutenai" }, { "lad", NULL, NULL, "Ladino" }, { "lah", NULL, NULL, "Lahnda" }, { "lam", NULL, NULL, "Lamba" }, { "day", NULL, NULL, "Land Dayak languages" }, { "lao", NULL, "lo", "Lao" }, { "lat", NULL, "la", "Latin" }, { "lav", NULL, "lv", "Latvian" }, { "lez", NULL, NULL, "Lezghian" }, { "lim", NULL, "li", "Limburgan; Limburger; Limburgish" }, { "lin", NULL, "ln", "Lingala" }, { "lit", NULL, "lt", "Lithuanian" }, { "jbo", NULL, NULL, "Lojban" }, { "dsb", NULL, NULL, "Lower Sorbian" }, { "nds", NULL, NULL, "Low German; Low Saxon; German, Low; Saxon, Low" }, { "loz", NULL, NULL, "Lozi" }, { "lub", NULL, "lu", "Luba-Katanga" }, { "lua", NULL, NULL, "Luba-Lulua" }, { "lui", NULL, NULL, "Luiseno" }, { "smj", NULL, NULL, "Lule Sami" }, { "lun", NULL, NULL, "Lunda" }, { "luo", NULL, NULL, "Luo (Kenya and Tanzania)" }, { "lus", NULL, NULL, "Lushai" }, { "ltz", NULL, "lb", "Luxembourgish; Letzeburgesch" }, { "mac", "mkd", "mk", "Macedonian" }, { "mad", NULL, NULL, "Madurese" }, { "mag", NULL, NULL, "Magahi" }, { "mai", NULL, NULL, "Maithili" }, { "mak", NULL, NULL, "Makasar" }, { "mlg", NULL, "mg", "Malagasy" }, { "mal", NULL, "ml", "Malayalam" }, { "may", "msa", "ms", "Malay" }, { "mlt", NULL, "mt", "Maltese" }, { "mnc", NULL, NULL, "Manchu" }, { "mdr", NULL, NULL, "Mandar" }, { "man", NULL, NULL, "Mandingo" }, { "mni", NULL, NULL, "Manipuri" }, { "mno", NULL, NULL, "Manobo languages" }, { "glv", NULL, "gv", "Manx" }, { "mao", "mri", "mi", "Maori" }, { "arn", NULL, NULL, "Mapudungun; Mapuche" }, { "mar", NULL, "mr", "Marathi" }, { "chm", NULL, NULL, "Mari" }, { "mah", NULL, "mh", "Marshallese" }, { "mwr", NULL, NULL, "Marwari" }, { "mas", NULL, NULL, "Masai" }, { "myn", NULL, NULL, "Mayan languages" }, { "men", NULL, NULL, "Mende" }, { "mic", NULL, NULL, "Mi'kmaq; Micmac" }, { "min", NULL, NULL, "Minangkabau" }, { "mwl", NULL, NULL, "Mirandese" }, { "moh", NULL, NULL, "Mohawk" }, { "mdf", NULL, NULL, "Moksha" }, { "mon", NULL, "mn", "Mongolian" }, { "lol", NULL, NULL, "Mongo" }, { "mkh", NULL, NULL, "Mon-Khmer languages" }, { "cnr", NULL, NULL, "Montenegrin" }, { "mos", NULL, NULL, "Mossi" }, { "mul", NULL, NULL, "Multiple languages" }, { "mun", NULL, NULL, "Munda languages" }, { "nah", NULL, NULL, "Nahuatl languages" }, { "nau", NULL, "na", "Nauru" }, { "nav", NULL, "nv", "Navajo; Navaho" }, { "nde", NULL, "nd", "Ndebele, North; North Ndebele" }, { "nbl", NULL, "nr", "Ndebele, South; South Ndebele" }, { "ndo", NULL, "ng", "Ndonga" }, { "nap", NULL, NULL, "Neapolitan" }, { "new", NULL, NULL, "Nepal Bhasa; Newari" }, { "nep", NULL, "ne", "Nepali" }, { "nia", NULL, NULL, "Nias" }, { "nic", NULL, NULL, "Niger-Kordofanian languages" }, { "ssa", NULL, NULL, "Nilo-Saharan languages" }, { "niu", NULL, NULL, "Niuean" }, { "nqo", NULL, NULL, "N'Ko" }, { "nog", NULL, NULL, "Nogai" }, { "zxx", NULL, NULL, "No linguistic content; Not applicable" }, { "non", NULL, NULL, "Norse, Old" }, { "nai", NULL, NULL, "North American Indian languages" }, { "frr", NULL, NULL, "Northern Frisian" }, { "sme", NULL, "se", "Northern Sami" }, { "nor", NULL, "no", "Norwegian" }, { "nno", NULL, "nn", "Norwegian Nynorsk; Nynorsk, Norwegian" }, { "nub", NULL, NULL, "Nubian languages" }, { "nym", NULL, NULL, "Nyamwezi" }, { "nyn", NULL, NULL, "Nyankole" }, { "nyo", NULL, NULL, "Nyoro" }, { "nzi", NULL, NULL, "Nzima" }, { "oci", NULL, "oc", "Occitan (post 1500)" }, { "arc", NULL, NULL, "Official Aramaic (700-300 BCE); Imperial Aramaic (700-300 BCE)" }, { "oji", NULL, "oj", "Ojibwa" }, { "ori", NULL, "or", "Oriya" }, { "orm", NULL, "om", "Oromo" }, { "osa", NULL, NULL, "Osage" }, { "oss", NULL, "os", "Ossetian; Ossetic" }, { "oto", NULL, NULL, "Otomian languages" }, { "pal", NULL, NULL, "Pahlavi" }, { "pau", NULL, NULL, "Palauan" }, { "pli", NULL, "pi", "Pali" }, { "pam", NULL, NULL, "Pampanga; Kapampangan" }, { "pag", NULL, NULL, "Pangasinan" }, { "pan", NULL, "pa", "Panjabi; Punjabi" }, { "pap", NULL, NULL, "Papiamento" }, { "paa", NULL, NULL, "Papuan languages" }, { "nso", NULL, NULL, "Pedi; Sepedi; Northern Sotho" }, { "peo", NULL, NULL, "Persian, Old (ca.600-400 B.C.)" }, { "per", "fas", "fa", "Persian" }, { "phi", NULL, NULL, "Philippine languages" }, { "phn", NULL, NULL, "Phoenician" }, { "pon", NULL, NULL, "Pohnpeian" }, { "pol", NULL, "pl", "Polish" }, { "por", NULL, "pt", "Portuguese" }, { "pra", NULL, NULL, "Prakrit languages" }, { "pro", NULL, NULL, "Provençal, Old (to 1500); Occitan, Old (to 1500)" }, { "pus", NULL, "ps", "Pushto; Pashto" }, { "que", NULL, "qu", "Quechua" }, { "raj", NULL, NULL, "Rajasthani" }, { "rap", NULL, NULL, "Rapanui" }, { "rar", NULL, NULL, "Rarotongan; Cook Islands Maori" }, { "roa", NULL, NULL, "Romance languages" }, { "rum", "ron", "ro", "Romanian; Moldavian; Moldovan" }, { "roh", NULL, "rm", "Romansh" }, { "rom", NULL, NULL, "Romany" }, { "run", NULL, "rn", "Rundi" }, { "rus", NULL, "ru", "Russian" }, { "sal", NULL, NULL, "Salishan languages" }, { "sam", NULL, NULL, "Samaritan Aramaic" }, { "smi", NULL, NULL, "Sami languages" }, { "smo", NULL, "sm", "Samoan" }, { "sad", NULL, NULL, "Sandawe" }, { "sag", NULL, "sg", "Sango" }, { "san", NULL, "sa", "Sanskrit" }, { "sat", NULL, NULL, "Santali" }, { "srd", NULL, "sc", "Sardinian" }, { "sas", NULL, NULL, "Sasak" }, { "sco", NULL, NULL, "Scots" }, { "sel", NULL, NULL, "Selkup" }, { "sem", NULL, NULL, "Semitic languages" }, { "srp", NULL, "sr", "Serbian" }, { "srr", NULL, NULL, "Serer" }, { "shn", NULL, NULL, "Shan" }, { "sna", NULL, "sn", "Shona" }, { "iii", NULL, "ii", "Sichuan Yi; Nuosu" }, { "scn", NULL, NULL, "Sicilian" }, { "sid", NULL, NULL, "Sidamo" }, { "sgn", NULL, NULL, "Sign Languages" }, { "bla", NULL, NULL, "Siksika" }, { "snd", NULL, "sd", "Sindhi" }, { "sin", NULL, "si", "Sinhala; Sinhalese" }, { "sit", NULL, NULL, "Sino-Tibetan languages" }, { "sio", NULL, NULL, "Siouan languages" }, { "sms", NULL, NULL, "Skolt Sami" }, { "den", NULL, NULL, "Slave (Athapascan)" }, { "sla", NULL, NULL, "Slavic languages" }, { "slo", "slk", "sk", "Slovak" }, { "slv", NULL, "sl", "Slovenian" }, { "sog", NULL, NULL, "Sogdian" }, { "som", NULL, "so", "Somali" }, { "son", NULL, NULL, "Songhai languages" }, { "snk", NULL, NULL, "Soninke" }, { "wen", NULL, NULL, "Sorbian languages" }, { "sot", NULL, "st", "Sotho, Southern" }, { "sai", NULL, NULL, "South American Indian languages" }, { "alt", NULL, NULL, "Southern Altai" }, { "sma", NULL, NULL, "Southern Sami" }, { "spa", NULL, "es", "Spanish; Castilian" }, { "srn", NULL, NULL, "Sranan Tongo" }, { "zgh", NULL, NULL, "Standard Moroccan Tamazight" }, { "suk", NULL, NULL, "Sukuma" }, { "sux", NULL, NULL, "Sumerian" }, { "sun", NULL, "su", "Sundanese" }, { "sus", NULL, NULL, "Susu" }, { "swa", NULL, "sw", "Swahili" }, { "ssw", NULL, "ss", "Swati" }, { "swe", NULL, "sv", "Swedish" }, { "gsw", NULL, NULL, "Swiss German; Alemannic; Alsatian" }, { "syr", NULL, NULL, "Syriac" }, { "tgl", NULL, "tl", "Tagalog" }, { "tah", NULL, "ty", "Tahitian" }, { "tai", NULL, NULL, "Tai languages" }, { "tgk", NULL, "tg", "Tajik" }, { "tmh", NULL, NULL, "Tamashek" }, { "tam", NULL, "ta", "Tamil" }, { "tat", NULL, "tt", "Tatar" }, { "tel", NULL, "te", "Telugu" }, { "ter", NULL, NULL, "Tereno" }, { "tet", NULL, NULL, "Tetum" }, { "tha", NULL, "th", "Thai" }, { "tib", "bod", "bo", "Tibetan" }, { "tig", NULL, NULL, "Tigre" }, { "tir", NULL, "ti", "Tigrinya" }, { "tem", NULL, NULL, "Timne" }, { "tiv", NULL, NULL, "Tiv" }, { "tli", NULL, NULL, "Tlingit" }, { "tkl", NULL, NULL, "Tokelau" }, { "tpi", NULL, NULL, "Tok Pisin" }, { "tog", NULL, NULL, "Tonga (Nyasa)" }, { "ton", NULL, "to", "Tonga (Tonga Islands)" }, { "tsi", NULL, NULL, "Tsimshian" }, { "tso", NULL, "ts", "Tsonga" }, { "tsn", NULL, "tn", "Tswana" }, { "tum", NULL, NULL, "Tumbuka" }, { "tup", NULL, NULL, "Tupi languages" }, { "ota", NULL, NULL, "Turkish, Ottoman (1500-1928)" }, { "tur", NULL, "tr", "Turkish" }, { "tuk", NULL, "tk", "Turkmen" }, { "tvl", NULL, NULL, "Tuvalu" }, { "tyv", NULL, NULL, "Tuvinian" }, { "twi", NULL, "tw", "Twi" }, { "udm", NULL, NULL, "Udmurt" }, { "uga", NULL, NULL, "Ugaritic" }, { "uig", NULL, "ug", "Uighur; Uyghur" }, { "ukr", NULL, "uk", "Ukrainian" }, { "umb", NULL, NULL, "Umbundu" }, { "mis", NULL, NULL, "Uncoded languages" }, { "und", NULL, NULL, "Undetermined" }, { "hsb", NULL, NULL, "Upper Sorbian" }, { "urd", NULL, "ur", "Urdu" }, { "uzb", NULL, "uz", "Uzbek" }, { "vai", NULL, NULL, "Vai" }, { "ven", NULL, "ve", "Venda" }, { "vie", NULL, "vi", "Vietnamese" }, { "vol", NULL, "vo", "Volapük" }, { "vot", NULL, NULL, "Votic" }, { "wak", NULL, NULL, "Wakashan languages" }, { "wln", NULL, "wa", "Walloon" }, { "war", NULL, NULL, "Waray" }, { "was", NULL, NULL, "Washo" }, { "wel", "cym", "cy", "Welsh" }, { "fry", NULL, "fy", "Western Frisian" }, { "wal", NULL, NULL, "Wolaitta; Wolaytta" }, { "wol", NULL, "wo", "Wolof" }, { "xho", NULL, "xh", "Xhosa" }, { "sah", NULL, NULL, "Yakut" }, { "yao", NULL, NULL, "Yao" }, { "yap", NULL, NULL, "Yapese" }, { "yid", NULL, "yi", "Yiddish" }, { "yor", NULL, "yo", "Yoruba" }, { "ypk", NULL, NULL, "Yupik languages" }, { "znd", NULL, NULL, "Zande languages" }, { "zap", NULL, NULL, "Zapotec" }, { "zza", NULL, NULL, "Zaza; Dimili; Dimli; Kirdki; Kirmanjki; Zazaki" }, { "zen", NULL, NULL, "Zenaga" }, { "zha", NULL, "za", "Zhuang; Chuang" }, { "zul", NULL, "zu", "Zulu" }, { "zun", NULL, NULL, "Zuni" }, }; #endif // GAVL_LANGUAGE_TABLE_H bplaum-gavl-b9385e3/include/macros.h000066400000000000000000000021611513252040200173370ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #ifndef MACROS_H_INCLUDED #define MACROS_H_INCLUDED #define GAVL_LOOP_HEAD(loop_i, loop_n) \ loop_i = (loop_n) + 1; \ while(--loop_i) \ { #define GAVL_LOOP_TAIL } #endif // MACROS_H_INCLUDED bplaum-gavl-b9385e3/include/memalign.h000066400000000000000000000020701513252040200176430ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #ifndef MEMALIGN_H_INCLUDED #define MEMALIGN_H_INCLUDED void * gavl_memalign(size_t boundary, size_t size); #endif // MEMALIGN_H_INCLUDED bplaum-gavl-b9385e3/include/mix.h000066400000000000000000000046771513252040200166660ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #ifndef MIX_H_INCLUDED #define MIX_H_INCLUDED typedef struct gavl_mix_output_channel_s gavl_mix_output_channel_t; typedef void (*gavl_mix_func_t)(gavl_mix_output_channel_t * channel, const gavl_audio_frame_t * input_frame, gavl_audio_frame_t * output_frame); typedef struct { gavl_mix_func_t copy_func; gavl_mix_func_t mix_1_to_1; gavl_mix_func_t mix_2_to_1; gavl_mix_func_t mix_3_to_1; gavl_mix_func_t mix_4_to_1; gavl_mix_func_t mix_5_to_1; gavl_mix_func_t mix_6_to_1; gavl_mix_func_t mix_all_to_1; } gavl_mixer_table_t; typedef struct gavl_mix_input_channel_s { int index; /* Which input channel */ union /* Weighing factor */ { double f_float; int f_int; } factor; } gavl_mix_input_channel_t; struct gavl_mix_output_channel_s { int num_inputs; int index; gavl_mix_input_channel_t inputs[GAVL_MAX_CHANNELS]; gavl_mix_func_t func; }; struct gavl_mix_matrix_s { gavl_mix_output_channel_t output_channels[GAVL_MAX_CHANNELS]; gavl_mixer_table_t mixer_table; }; gavl_mix_matrix_t * gavl_create_mix_matrix(gavl_audio_options_t * opt, gavl_audio_format_t * in, gavl_audio_format_t * out); void gavl_destroy_mix_matrix(gavl_mix_matrix_t *); void gavl_mix_audio(gavl_audio_convert_context_t * ctx); void gavl_setup_mix_funcs_c(gavl_mixer_table_t * c, gavl_audio_format_t * f); #endif // MIX_H_INCLUDED bplaum-gavl-b9385e3/include/sampleformat.h000066400000000000000000000065161513252040200205550ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #ifndef SAMPLEFORMAT_H_INCLUDED #define SAMPLEFORMAT_H_INCLUDED typedef struct { gavl_audio_func_t swap_sign_8; gavl_audio_func_t swap_sign_16; /* 8 -> 16 bits */ gavl_audio_func_t s_8_to_s_16; gavl_audio_func_t u_8_to_s_16; gavl_audio_func_t s_8_to_u_16; gavl_audio_func_t u_8_to_u_16; /* 8 -> 32 bits */ gavl_audio_func_t s_8_to_s_32; gavl_audio_func_t u_8_to_s_32; /* 16 -> 8 bits */ gavl_audio_func_t convert_16_to_8_swap; gavl_audio_func_t convert_16_to_8; /* 16 -> 32 bits */ gavl_audio_func_t s_16_to_s_32; gavl_audio_func_t u_16_to_s_32; /* 32 -> 8 bits */ gavl_audio_func_t convert_32_to_8_swap; gavl_audio_func_t convert_32_to_8; /* 32 -> 16 bits */ gavl_audio_func_t convert_32_to_16_swap; gavl_audio_func_t convert_32_to_16; /* Int to Float */ gavl_audio_func_t convert_s8_to_float; gavl_audio_func_t convert_u8_to_float; gavl_audio_func_t convert_s16_to_float; gavl_audio_func_t convert_u16_to_float; gavl_audio_func_t convert_s32_to_float; /* Float to int */ gavl_audio_func_t convert_float_to_s8; gavl_audio_func_t convert_float_to_u8; gavl_audio_func_t convert_float_to_s16; gavl_audio_func_t convert_float_to_u16; gavl_audio_func_t convert_float_to_s32; /* Int to Double */ gavl_audio_func_t convert_s8_to_double; gavl_audio_func_t convert_u8_to_double; gavl_audio_func_t convert_s16_to_double; gavl_audio_func_t convert_u16_to_double; gavl_audio_func_t convert_s32_to_double; /* Double to int */ gavl_audio_func_t convert_double_to_s8; gavl_audio_func_t convert_double_to_u8; gavl_audio_func_t convert_double_to_s16; gavl_audio_func_t convert_double_to_u16; gavl_audio_func_t convert_double_to_s32; gavl_audio_func_t convert_double_to_float; gavl_audio_func_t convert_float_to_double; } gavl_sampleformat_table_t; gavl_sampleformat_table_t * gavl_create_sampleformat_table(gavl_audio_options_t * opt, gavl_interleave_mode_t interleave_mode); void gavl_init_sampleformat_funcs_c(gavl_sampleformat_table_t * t, gavl_interleave_mode_t interleave_mode); gavl_audio_func_t gavl_find_sampleformat_converter(gavl_sampleformat_table_t * t, gavl_audio_format_t * in, gavl_audio_format_t * out); void gavl_destroy_sampleformat_table(gavl_sampleformat_table_t * t); #endif // SAMPLEFORMAT_H_INCLUDED bplaum-gavl-b9385e3/include/samplerate.h000066400000000000000000000145571513252040200202240ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ /* * This file was taken from libsamplerate, original copyright below: */ /* ** Copyright (C) 2002-2004 Erik de Castro Lopo ** ** This program is free software; you can redistribute it and/or modify ** it under the terms of the GNU General Public License as published by ** the Free Software Foundation; either version 2 of the License, or ** (at your option) any later version. ** ** This program is distributed in the hope that it will be useful, ** but WITHOUT ANY WARRANTY; without even the implied warranty of ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ** GNU General Public License for more details. ** ** You should have received a copy of the GNU General Public License ** along with this program; if not, write to the Free Software ** Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA. */ /* ** API documentation is available here: ** http://www.mega-nerd.com/SRC/api.html */ #ifndef SAMPLERATE_H_INCLUDED #define SAMPLERATE_H_INCLUDED #ifdef __cplusplus extern "C" { #endif /* __cplusplus */ /* Opaque data type SRC_STATE. */ typedef struct SRC_STATE_tag SRC_STATE ; /* SRC_DATA is used to pass data to src_simple() and src_process(). */ typedef struct { float *data_in_f, *data_out_f ; double *data_in_d, *data_out_d ; long input_frames, output_frames ; long input_frames_used, output_frames_gen ; int end_of_input ; double src_ratio ; } SRC_DATA ; /* SRC_CB_DATA is used with callback based API. */ typedef struct { long frames ; float *data_in ; } SRC_CB_DATA ; /* ** User supplied callback function type for use with src_callback_new() ** and src_callback_read(). First parameter is the same pointer that was ** passed into src_callback_new(). Second parameter is pointer to a ** pointer. The user supplied callback function must modify *data to ** point to the start of the user supplied float array. The user supplied ** function must return the number of frames that **data points to. */ typedef long (*src_callback_t) (void *cb_data, float **data) ; /* ** Standard initialisation function : return an anonymous pointer to the ** internal state of the converter. Choose a converter from the enums below. ** Error returned in *error. */ SRC_STATE* gavl_src_new (int converter_type, int channels, int *error, int d) ; /* ** Initialisation for callback based API : return an anonymous pointer to the ** internal state of the converter. Choose a converter from the enums below. ** The cb_data pointer can point to any data or be set to NULL. Whatever the ** value, when processing, user supplied function "func" gets called with ** cb_data as first parameter. */ SRC_STATE* gavl_src_callback_new (src_callback_t func, int converter_type, int channels, int *error, void* cb_data, int d) ; /* ** Cleanup all internal allocations. ** Always returns NULL. */ SRC_STATE* gavl_src_delete (SRC_STATE *state) ; /* ** Standard processing function. ** Returns non zero on error. */ int gavl_src_process (SRC_STATE *state, SRC_DATA *data) ; /* ** Callback based processing function. Read up to frames worth of data from ** the converter int *data and return frames read or -1 on error. */ long gavl_src_callback_read (SRC_STATE *state, double src_ratio, long frames, float *data) ; /* ** Simple interface for performing a single conversion from input buffer to ** output buffer at a fixed conversion ratio. ** Simple interface does not require initialisation as it can only operate on ** a single buffer worth of audio. */ int gavl_src_simple (SRC_DATA *data, int converter_type, int channels) ; /* ** This library contains a number of different sample rate converters, ** numbered 0 through N. ** ** Return a string giving either a name or a more full description of each ** sample rate converter or NULL if no sample rate converter exists for ** the given value. The converters are sequentially numbered from 0 to N. */ const char *gavl_src_get_name (int converter_type) ; const char *gavl_src_get_description (int converter_type) ; const char *gavl_src_get_version (void) ; /* ** Set a new SRC ratio. This allows step responses ** in the conversion ratio. ** Returns non zero on error. */ int gavl_src_set_ratio (SRC_STATE *state, double new_ratio) ; /* ** Reset the internal SRC state. ** Does not modify the quality settings. ** Does not free any memory allocations. ** Returns non zero on error. */ int gavl_src_reset (SRC_STATE *state) ; /* ** Return TRUE if ratio is a valid conversion ratio, FALSE ** otherwise. */ int gavl_src_is_valid_ratio (double ratio) ; /* ** Return an error number. */ int gavl_src_error (SRC_STATE *state) ; /* ** Convert the error number into a string. */ const char* gavl_src_strerror (int error) ; /* ** The following enums can be used to set the interpolator type ** using the function src_set_converter(). */ enum { SRC_SINC_BEST_QUALITY = 0, SRC_SINC_MEDIUM_QUALITY = 1, SRC_SINC_FASTEST = 2, SRC_ZERO_ORDER_HOLD = 3, SRC_LINEAR = 4 } ; /* ** Extra helper functions for converting from short to float and ** back again. */ void gavl_src_short_to_float_array (const short *in, float *out, int len) ; void gavl_src_float_to_short_array (const float *in, short *out, int len) ; #ifdef __cplusplus } /* extern "C" */ #endif /* __cplusplus */ #endif /* SAMPLERATE_H_INCLUDED */ /* ** Do not edit or modify anything in this comment block. ** The arch-tag line is a file identity tag for the GNU Arch ** revision control system. ** ** arch-tag: 5421ef3e-c898-4ec3-8671-ea03d943ee00 */ bplaum-gavl-b9385e3/include/scale.h000066400000000000000000000346751513252040200171610ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #ifndef SCALE_H_INCLUDED #define SCALE_H_INCLUDED #include #include "video.h" #include "attributes.h" /* Typedefs */ typedef struct gavl_video_scale_context_s gavl_video_scale_context_t; typedef struct { int index; /* Index of the first row/column */ int32_t * factor_i; float * factor_f; } gavl_video_scale_pixel_t; typedef struct { int pixels_alloc; int factors_alloc; int num_pixels; /* Number of pixels (rows/columns) in the output area */ float * factors_f; int32_t * factors_i; gavl_video_scale_pixel_t * pixels; int factors_per_pixel; int do_clip; /* Use routines with clipping */ int normalized; } gavl_video_scale_table_t; typedef void (*gavl_video_scale_scanline_func)(gavl_video_scale_context_t*, int scanline, uint8_t * dst); typedef float (*gavl_video_scale_get_weight)(gavl_video_options_t * opt, double t); gavl_video_scale_get_weight gavl_video_scale_get_weight_func(gavl_video_options_t * opt, int * num_points) __attribute__ ((visibility("default"))); /* Scale functions */ typedef struct { gavl_video_scale_scanline_func scale_rgb_15; gavl_video_scale_scanline_func scale_rgb_16; gavl_video_scale_scanline_func scale_uint8_x_1_noadvance; gavl_video_scale_scanline_func scale_uint8_x_1_advance; gavl_video_scale_scanline_func scale_uint8_x_2; gavl_video_scale_scanline_func scale_uint8_x_3; gavl_video_scale_scanline_func scale_uint8_x_4; gavl_video_scale_scanline_func scale_uint16_x_1; gavl_video_scale_scanline_func scale_uint16_x_2; gavl_video_scale_scanline_func scale_uint16_x_3; gavl_video_scale_scanline_func scale_uint16_x_4; gavl_video_scale_scanline_func scale_float_x_1; gavl_video_scale_scanline_func scale_float_x_2; gavl_video_scale_scanline_func scale_float_x_3; gavl_video_scale_scanline_func scale_float_x_4; /* Bits needed for the integer scaling coefficient */ int bits_rgb_15; int bits_rgb_16; int bits_uint8_noadvance; int bits_uint8_advance; int bits_uint16; } gavl_scale_func_tab_t; typedef struct { gavl_scale_func_tab_t funcs_x; gavl_scale_func_tab_t funcs_y; gavl_scale_func_tab_t funcs_xy; } gavl_scale_funcs_t; void gavl_init_scale_funcs_nearest_c(gavl_scale_funcs_t * tab, int src_advance, int dst_advance); void gavl_init_scale_funcs_bilinear_c(gavl_scale_funcs_t * tab); void gavl_init_scale_funcs_bilinear_noclip_c(gavl_scale_funcs_t * tab); void gavl_init_scale_funcs_bilinear_fast_c(gavl_scale_funcs_t * tab); void gavl_init_scale_funcs_quadratic_c(gavl_scale_funcs_t * tab); void gavl_init_scale_funcs_quadratic_noclip_c(gavl_scale_funcs_t * tab); void gavl_init_scale_funcs_bicubic_c(gavl_scale_funcs_t * tab); void gavl_init_scale_funcs_bicubic_noclip_c(gavl_scale_funcs_t * tab); void gavl_init_scale_funcs_generic_c(gavl_scale_funcs_t * tab); void gavl_init_scale_funcs_generic_noclip_c(gavl_scale_funcs_t * tab); #ifdef HAVE_MMX void gavl_init_scale_funcs_bicubic_y_mmx(gavl_scale_funcs_t * tab, int src_advance, int dst_advance); void gavl_init_scale_funcs_quadratic_y_mmx(gavl_scale_funcs_t * tab, int src_advance, int dst_advance); void gavl_init_scale_funcs_generic_y_mmx(gavl_scale_funcs_t * tab, int src_advance, int dst_advance); void gavl_init_scale_funcs_bilinear_y_mmx(gavl_scale_funcs_t * tab, int src_advance, int dst_advance); void gavl_init_scale_funcs_bicubic_x_mmx(gavl_scale_funcs_t * tab, int src_advance, int dst_advance); void gavl_init_scale_funcs_quadratic_x_mmx(gavl_scale_funcs_t * tab, int src_advance, int dst_advance); void gavl_init_scale_funcs_bicubic_noclip_x_mmx(gavl_scale_funcs_t * tab, int src_advance, int dst_advance); void gavl_init_scale_funcs_generic_x_mmx(gavl_scale_funcs_t * tab, int src_advance, int dst_advance); void gavl_init_scale_funcs_bilinear_x_mmx(gavl_scale_funcs_t * tab, int src_advance, int dst_advance); /* */ void gavl_init_scale_funcs_bicubic_y_mmxext(gavl_scale_funcs_t * tab, int src_advance, int dst_advance); void gavl_init_scale_funcs_quadratic_y_mmxext(gavl_scale_funcs_t * tab, int src_advance, int dst_advance); void gavl_init_scale_funcs_generic_y_mmxext(gavl_scale_funcs_t * tab, int src_advance, int dst_advance); void gavl_init_scale_funcs_bilinear_y_mmxext(gavl_scale_funcs_t * tab, int src_advance, int dst_advance); void gavl_init_scale_funcs_bicubic_x_mmxext(gavl_scale_funcs_t * tab, int src_advance, int dst_advance); void gavl_init_scale_funcs_quadratic_x_mmxext(gavl_scale_funcs_t * tab, int src_advance, int dst_advance); void gavl_init_scale_funcs_bicubic_noclip_x_mmxext(gavl_scale_funcs_t * tab, int src_advance, int dst_advance); void gavl_init_scale_funcs_generic_x_mmxext(gavl_scale_funcs_t * tab, int src_advance, int dst_advance); void gavl_init_scale_funcs_bilinear_x_mmxext(gavl_scale_funcs_t * tab, int src_advance, int dst_advance); #endif #ifdef HAVE_SSE void gavl_init_scale_funcs_quadratic_y_sse(gavl_scale_funcs_t * tab, int src_advance, int dst_advance); void gavl_init_scale_funcs_bicubic_y_sse(gavl_scale_funcs_t * tab, int src_advance, int dst_advance); void gavl_init_scale_funcs_bicubic_y_noclip_sse(gavl_scale_funcs_t * tab, int src_advance, int dst_advance); void gavl_init_scale_funcs_generic_y_sse(gavl_scale_funcs_t * tab, int src_advance, int dst_advance); void gavl_init_scale_funcs_bilinear_y_sse(gavl_scale_funcs_t * tab, int src_advance, int dst_advance); void gavl_init_scale_funcs_quadratic_x_sse(gavl_scale_funcs_t * tab); void gavl_init_scale_funcs_bicubic_x_sse(gavl_scale_funcs_t * tab); void gavl_init_scale_funcs_bicubic_x_noclip_sse(gavl_scale_funcs_t * tab); void gavl_init_scale_funcs_generic_x_sse(gavl_scale_funcs_t * tab); void gavl_init_scale_funcs_bilinear_x_sse(gavl_scale_funcs_t * tab); #endif #ifdef HAVE_SSE2 void gavl_init_scale_funcs_bicubic_y_sse2(gavl_scale_funcs_t * tab, int src_advance, int dst_advance); void gavl_init_scale_funcs_bicubic_y_noclip_sse2(gavl_scale_funcs_t * tab, int src_advance, int dst_advance); void gavl_init_scale_funcs_quadratic_y_sse2(gavl_scale_funcs_t * tab, int src_advance, int dst_advance); void gavl_init_scale_funcs_generic_y_sse2(gavl_scale_funcs_t * tab, int src_advance, int dst_advance); void gavl_init_scale_funcs_bilinear_y_sse2(gavl_scale_funcs_t * tab, int src_advance, int dst_advance); #endif #ifdef HAVE_SSE3 void gavl_init_scale_funcs_bicubic_x_sse3(gavl_scale_funcs_t * tab); void gavl_init_scale_funcs_bicubic_x_noclip_sse3(gavl_scale_funcs_t * tab); void gavl_init_scale_funcs_generic_x_sse3(gavl_scale_funcs_t * tab); #endif void gavl_init_scale_funcs(gavl_scale_funcs_t * tab, gavl_video_options_t * opt, int src_advance, int dst_advance, gavl_video_scale_table_t * tab_h, gavl_video_scale_table_t * tab_v); void gavl_video_scale_table_init(gavl_video_scale_table_t * tab, gavl_video_options_t * opt, double src_off, double src_size, int dst_size, int src_width); void gavl_video_scale_table_init_convolve(gavl_video_scale_table_t * tab, gavl_video_options_t * opt, int num_coeffs, const float * coeffs, int size); void gavl_video_scale_table_init_int(gavl_video_scale_table_t * tab, int bits); void gavl_video_scale_table_get_src_indices(gavl_video_scale_table_t * tab, int * start, int * size); void gavl_video_scale_table_shift_indices(gavl_video_scale_table_t * tab, int shift); void gavl_video_scale_table_cleanup(gavl_video_scale_table_t * tab); /* For debugging */ void gavl_video_scale_table_dump(gavl_video_scale_table_t * tab); /* Data needed by the scaline function. */ typedef struct { /* Offsets and advances are ALWAYS in bytes */ int src_advance, dst_advance; int src_offset, dst_offset; } gavl_video_scale_offsets_t; /* * Scale context is for one plane of one field. * This means, that depending on the video format, we have 1 - 6 scale contexts. */ struct gavl_video_scale_context_s { /* Data initialized at start */ gavl_video_scale_table_t table_h; gavl_video_scale_table_t table_v; gavl_video_scale_scanline_func func1; gavl_video_scale_scanline_func func2; gavl_video_scale_offsets_t offset1; gavl_video_scale_offsets_t offset2; /* Rectangles */ gavl_rectangle_f_t src_rect; gavl_rectangle_i_t dst_rect; /* Indices of source and destination planes inside the frame. Can be 0 for chroma channels of packed YUV formats */ int src_frame_plane, dst_frame_plane; int plane; /* Plane */ /* Advances */ gavl_video_scale_offsets_t * offset; /* Temporary buffer */ uint8_t * buffer; int buffer_alloc; int buffer_stride; /* Size of temporary buffer in pixels */ int buffer_width; int buffer_height; int num_directions; /* Minimum and maximum values for clipping. Values can be different for different components */ int min_values_h[4]; int max_values_h[4]; int min_values_v[4]; int max_values_v[4]; float min_values_f[4]; float max_values_f[4]; /* For copying */ int bytes_per_line; uint8_t * src; int src_stride; gavl_video_frame_t * dst_frame; const gavl_video_options_t * opt; // uint8_t * dst; // int scanline; int dst_size; int first_scanline; #ifdef HAVE_MMX int need_emms; #endif }; int gavl_video_scale_context_init(gavl_video_scale_context_t*, gavl_video_options_t * opt, int plane, const gavl_video_format_t * input_format, const gavl_video_format_t * output_format, int src_field, int dst_field, int src_fields, int dst_fields); int gavl_video_scale_context_init_convolve(gavl_video_scale_context_t*, gavl_video_options_t * opt, int plane, const gavl_video_format_t * format, int num_fields, int h_radius, const float * h_coeffs, int v_radius, const float * v_coeffs); void gavl_video_scale_context_cleanup(gavl_video_scale_context_t * ctx); void gavl_video_scale_context_scale(gavl_video_scale_context_t * ctx, const gavl_video_frame_t * src, gavl_video_frame_t * dst); struct gavl_video_scaler_s { gavl_video_options_t opt; /* * a context is obtained with contexts[field][plane]. * field == 2 contains a progressive scaler, which might be * required for frame based interlacing */ gavl_video_scale_context_t contexts[3][GAVL_MAX_PLANES]; int num_planes; /* If src_fields > dst_fields, we deinterlace */ int src_fields; int dst_fields; gavl_video_frame_t * src; gavl_video_frame_t * dst; gavl_video_frame_t * src_field; gavl_video_frame_t * dst_field; gavl_video_format_t src_format; gavl_video_format_t dst_format; gavl_rectangle_i_t dst_rect; // gavl_rectangle_f_t src_rect; }; #endif // SCALE_H_INCLUDED bplaum-gavl-b9385e3/include/socket_private.h000066400000000000000000000023571513252040200211040ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #ifndef SOCKET_PRIVATE_H_INCLUDED #define SOCKET_PRIVATE_H_INCLUDED /* Opaque address structure so we can support IPv6 */ typedef struct lookup_async_s lookup_async_t; struct gavl_socket_address_s { struct sockaddr_storage addr; size_t len; lookup_async_t * async; }; #endif // SOCKET_PRIVATE_H_INCLUDED bplaum-gavl-b9385e3/include/stamp-h.in000066400000000000000000000000121513252040200175740ustar00rootroot00000000000000timestamp bplaum-gavl-b9385e3/include/stamp-hT000066400000000000000000000000121513252040200173130ustar00rootroot00000000000000timestamp bplaum-gavl-b9385e3/include/transform.h000066400000000000000000000136321513252040200200730ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #ifndef TRANSFORM_H_INCLUDED #define TRANSFORM_H_INCLUDED #define MAX_TRANSFORM_FILTER 4 typedef struct { int index_x; int index_y; int outside; float factors[MAX_TRANSFORM_FILTER][MAX_TRANSFORM_FILTER]; int factors_i[MAX_TRANSFORM_FILTER][MAX_TRANSFORM_FILTER]; } gavl_transform_pixel_t; typedef struct gavl_transform_context_s gavl_transform_context_t; typedef void (*gavl_transform_scanline_func)(gavl_transform_context_t * ctx, gavl_transform_pixel_t * pixels, uint8_t * dest_start); typedef struct { gavl_transform_scanline_func transform_rgb_15; gavl_transform_scanline_func transform_rgb_16; gavl_transform_scanline_func transform_uint8_x_1_noadvance; gavl_transform_scanline_func transform_uint8_x_1_advance; gavl_transform_scanline_func transform_uint8_x_2; gavl_transform_scanline_func transform_uint8_x_3; gavl_transform_scanline_func transform_uint8_x_4; gavl_transform_scanline_func transform_uint16_x_1; gavl_transform_scanline_func transform_uint16_x_2; gavl_transform_scanline_func transform_uint16_x_3; gavl_transform_scanline_func transform_uint16_x_4; gavl_transform_scanline_func transform_float_x_1; gavl_transform_scanline_func transform_float_x_2; gavl_transform_scanline_func transform_float_x_3; gavl_transform_scanline_func transform_float_x_4; /* Bits needed for the integer scaling coefficient */ int bits_rgb_15; int bits_rgb_16; int bits_uint8_noadvance; int bits_uint8_advance; int bits_uint16_x_1; int bits_uint16_x_2; int bits_uint16_x_3; int bits_uint16_x_4; } gavl_transform_funcs_t; void gavl_init_transform_funcs_nearest_c(gavl_transform_funcs_t * tab, int advance); void gavl_init_transform_funcs_bilinear_c(gavl_transform_funcs_t * tab, int advance); void gavl_init_transform_funcs_quadratic_c(gavl_transform_funcs_t * tab, int advance); void gavl_init_transform_funcs_bicubic_c(gavl_transform_funcs_t * tab, int advance); #ifdef HAVE_MMX void gavl_init_transform_funcs_bilinear_mmx(gavl_transform_funcs_t * tab, int advance); void gavl_init_transform_funcs_bilinear_mmxext(gavl_transform_funcs_t * tab, int advance); void gavl_init_transform_funcs_quadratic_mmx(gavl_transform_funcs_t * tab, int advance); void gavl_init_transform_funcs_quadratic_mmxext(gavl_transform_funcs_t * tab, int advance); void gavl_init_transform_funcs_bicubic_mmx(gavl_transform_funcs_t * tab, int advance); void gavl_init_transform_funcs_bicubic_mmxext(gavl_transform_funcs_t * tab, int advance); #endif typedef struct { gavl_transform_pixel_t ** pixels; int factors_per_pixel; /* Per dimension */ } gavl_transform_table_t; void gavl_transform_table_init(gavl_transform_table_t * t, gavl_video_options_t * opt, gavl_image_transform_func func, void * priv, float off_x, float off_y, float scale_x, float scale_y, int width, int height); void gavl_transform_table_init_int(gavl_transform_table_t * tab, int bits, int width, int height); void gavl_transform_table_free(gavl_transform_table_t * tab); /* Context is for one plane and field */ struct gavl_transform_context_s { gavl_transform_scanline_func func; gavl_transform_table_t tab; int offset; int advance; int plane; int field; int num_fields; int dst_width; int dst_height; /* Things set while transforming */ uint8_t * src; /* Beginning of plane */ int src_stride; gavl_video_options_t * opt; gavl_video_frame_t * dst_frame; #ifdef HAVE_MMX int need_emms; #endif }; int gavl_transform_context_init(gavl_image_transform_t * t, gavl_video_options_t * opt, int field_index, int plane_index, gavl_image_transform_func func, void * priv); void gavl_transform_context_transform(gavl_transform_context_t * ctx, const gavl_video_frame_t * src, gavl_video_frame_t * dst); void gavl_transform_context_free(gavl_transform_context_t * ctx); struct gavl_image_transform_s { gavl_video_options_t opt; gavl_video_format_t format; gavl_thread_pool_t * tp_priv; /* * a context is obtained with contexts[field][plane]. * field == 2 contains a progressive scaler, which might be * required for frame based interlacing */ gavl_transform_context_t contexts[3][GAVL_MAX_PLANES]; int num_planes; int num_fields; }; #endif // TRANSFORM_H_INCLUDED bplaum-gavl-b9385e3/include/vaapi.h000066400000000000000000000037171513252040200171630ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #ifndef VAAPI_H_INCLUDED #define VAAPI_H_INCLUDED #include #include #include typedef struct { VADisplay dpy; // Must be first int num_image_formats; VAImageFormat * image_formats; int no_derive; int num_imported_frames; } gavl_hw_vaapi_t; gavl_video_frame_t * gavl_vaapi_video_frame_create(gavl_hw_context_t * ctx, int alloc_resource); void gavl_vaapi_video_frame_destroy(gavl_video_frame_t * f, int destroy_resource); gavl_pixelformat_t * gavl_vaapi_get_image_formats(gavl_hw_context_t * ctx, gavl_hw_frame_mode_t mode); void gavl_vaapi_cleanup(void * priv); void gavl_vaapi_video_format_adjust(gavl_hw_context_t * ctx, gavl_video_format_t * fmt, gavl_hw_frame_mode_t mode); int gavl_vaapi_export_video_frame(const gavl_video_format_t * fmt, gavl_video_frame_t * src, gavl_video_frame_t * dst); int gavl_vaapi_exports_type(gavl_hw_context_t * ctx, const gavl_hw_context_t * other); #endif // VAAPI_H_INCLUDED bplaum-gavl-b9385e3/include/video.h000066400000000000000000000110111513252040200171530ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #ifndef VIDEO_H_INCLUDED #define VIDEO_H_INCLUDED #include /* Private structures for the video converter */ #include "config.h" struct gavl_video_options_s { /* * Quality setting from 1 to 5 (0 means undefined). * 3 means Standard C routines or accelerated version with * equal quality. Lower numbers mean accelerated versions with lower * quality. */ int quality; /* Explicit accel_flags are mainly for colorspace_test.c */ int accel_flags; /* CPU Acceleration flags */ int conversion_flags; gavl_alpha_mode_t alpha_mode; gavl_scale_mode_t scale_mode; int scale_order; gavl_deinterlace_mode_t deinterlace_mode; gavl_deinterlace_drop_mode_t deinterlace_drop_mode; /* Background color (Floating point and 16 bit int)background_float[3]; */ float background_float[3]; uint16_t background_16[3]; /* Source and destination rectangles */ gavl_rectangle_f_t src_rect; gavl_rectangle_i_t dst_rect; int have_rectangles; int keep_aspect; gavl_downscale_filter_t downscale_filter; float downscale_blur; gavl_thread_pool_t * tp; }; typedef struct gavl_video_convert_context_s gavl_video_convert_context_t; typedef void (*gavl_video_func_t)(gavl_video_convert_context_t * ctx); struct gavl_video_convert_context_s { const gavl_video_frame_t * input_frame; gavl_video_frame_t * output_frame; gavl_video_options_t * options; gavl_video_format_t input_format; gavl_video_format_t output_format; gavl_video_scaler_t * scaler; gavl_video_deinterlacer_t * deinterlacer; struct gavl_video_convert_context_s * next; gavl_video_func_t func; }; struct gavl_video_converter_s { gavl_video_format_t input_format; gavl_video_format_t output_format; gavl_video_options_t options; gavl_video_convert_context_t * first_context; gavl_video_convert_context_t * last_context; int num_contexts; int have_frames; gavl_thread_pool_t * tp_priv; /* Hardware accelerated converter (unused for now) */ // gavl_video_source_t * src; // gavl_video_sink_t * sink; // gavl_hw_context_t * hwctx; }; /* Find conversion functions */ gavl_video_func_t gavl_find_pixelformat_converter(const gavl_video_options_t * opt, gavl_pixelformat_t input_pixelformat, gavl_pixelformat_t output_pixelformat, int width, int height); /* Check if a pixelformat can be converted by simple scaling */ int gavl_pixelformat_can_scale(gavl_pixelformat_t in_csp, gavl_pixelformat_t out_csp); /* * Return a pixelformat (or GAVL_PIXELFORMAT_NONE) as an intermediate pixelformat * for which the conversion quality can be improved. E.g. instead of * RGB -> YUV420P, we can do RGB -> YUV444P -> YUV420P with proper chroma scaling */ gavl_pixelformat_t gavl_pixelformat_get_intermediate(gavl_pixelformat_t in_csp, gavl_pixelformat_t out_csp); #define CLEAR_MASK_PLANE_0 (1<<0) #define CLEAR_MASK_PLANE_1 (1<<1) #define CLEAR_MASK_PLANE_2 (1<<2) #define CLEAR_MASK_PLANE_3 (1<<3) #define CLEAR_MASK_ALL (CLEAR_MASK_PLANE_0|\ CLEAR_MASK_PLANE_1|\ CLEAR_MASK_PLANE_2|\ CLEAR_MASK_PLANE_3) void gavl_video_frame_clear_mask(gavl_video_frame_t * frame, const gavl_video_format_t * format, int mask); void gavl_pixelformat_get_offset(gavl_pixelformat_t pixelformat, int plane, int * advance, int * offset); #endif // VIDEO_H_INCLUDED bplaum-gavl-b9385e3/include/volume.h000066400000000000000000000047041513252040200173670ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #ifndef VOLUME_H_INCLUDED #define VOLUME_H_INCLUDED typedef struct { void (*set_volume_s8)(gavl_volume_control_t * v, void * samples, int num_samples); void (*set_volume_u8)(gavl_volume_control_t * v, void * samples, int num_samples); void (*set_volume_s16)(gavl_volume_control_t * v, void * samples, int num_samples); void (*set_volume_u16)(gavl_volume_control_t * v, void * samples, int num_samples); void (*set_volume_s32)(gavl_volume_control_t * v, void * samples, int num_samples); void (*set_volume_float)(gavl_volume_control_t * v, void * samples, int num_samples); void (*set_volume_double)(gavl_volume_control_t * v, void * samples, int num_samples); } gavl_volume_funcs_t; struct gavl_volume_control_s { gavl_audio_format_t format; double factor_f; int64_t factor_i; void (*set_volume)(gavl_volume_control_t * v, gavl_audio_frame_t * frame); void (*set_volume_channel)(gavl_volume_control_t * v, void * samples, int num_samples); }; gavl_volume_funcs_t * gavl_volume_funcs_create(void); void gavl_volume_funcs_destroy(gavl_volume_funcs_t *); /* Get specific functions */ void gavl_init_volume_funcs_c(gavl_volume_funcs_t*); /* TODO */ #ifdef ARCH_X86 // void gavl_init_volume_funcs_mmx(gavl_volume_funcs_t*); #endif #endif // VOLUME_H_INCLUDED bplaum-gavl-b9385e3/m4/000077500000000000000000000000001513252040200145775ustar00rootroot00000000000000bplaum-gavl-b9385e3/m4/Makefile.am000066400000000000000000000001241513252040200166300ustar00rootroot00000000000000EXTRA_DIST=lqt_opt_cflags.m4 gavl_simd.m4 clip_mode.m4 check_funcs.m4 gavl_float.m4 bplaum-gavl-b9385e3/m4/check_funcs.m4000066400000000000000000000123161513252040200173170ustar00rootroot00000000000000dnl dnl Standardized linker flags: dnl We use --as-needed for executables and dnl --no-undefined for libraries dnl AC_DEFUN([GMERLIN_CHECK_LDFLAGS],[ GMERLIN_LIB_LDFLAGS="" GMERLIN_EXE_LDFLAGS="" AC_MSG_CHECKING(if linker supports --no-undefined) OLD_LDFLAGS=$LDFLAGS LDFLAGS="$LDFLAGS -Wl,--no-undefined" AC_LINK_IFELSE([AC_LANG_SOURCE([[int main() { return 0; } ]])], [GMERLIN_LIB_LDFLAGS="-Wl,--no-undefined $GMERLIN_LIB_LDFLAGS"; AC_MSG_RESULT(Supported)], [AC_MSG_RESULT(Unsupported)]) LDFLAGS=$OLD_LDFLAGS AC_MSG_CHECKING(if linker supports --as-needed) OLD_LDFLAGS=$LDFLAGS LDFLAGS="$LDFLAGS -Wl,--as-needed" AC_LINK_IFELSE([AC_LANG_SOURCE([[int main() { return 0; }]])], [GMERLIN_EXE_LDFLAGS="-Wl,--as-needed $GMERLIN_EXE_LDFLAGS"; AC_MSG_RESULT(Supported)], [AC_MSG_RESULT(Unsupported)]) LDFLAGS=$OLD_LDFLAGS AC_SUBST(GMERLIN_LIB_LDFLAGS) AC_SUBST(GMERLIN_EXE_LDFLAGS) ]) dnl dnl PNG dnl AC_DEFUN([GMERLIN_CHECK_LIBPNG],[ AH_TEMPLATE([HAVE_LIBPNG], [Enable png codec]) have_libpng=false PNG_REQUIRED="1.2.2" AC_ARG_ENABLE(libpng, [AS_HELP_STRING([--disable-libpng],[Disable libpng (default: autodetect)])], [case "${enableval}" in yes) test_libpng=true ;; no) test_libpng=false ;; esac],[test_libpng=true]) if test x$test_libpng = xtrue; then PKG_CHECK_MODULES(PNG, libpng, have_libpng="true", have_libpng="false") fi AC_SUBST(PNG_CFLAGS) AC_SUBST(PNG_LIBS) AC_SUBST(PNG_REQUIRED) AM_CONDITIONAL(HAVE_LIBPNG, test x$have_libpng = xtrue) if test x$have_libpng = xtrue; then AC_DEFINE(HAVE_LIBPNG) fi ]) dnl dnl OpenGL dnl AC_DEFUN([GMERLIN_CHECK_OPENGL],[ AH_TEMPLATE([HAVE_GL],[OpenGL available]) AH_TEMPLATE([HAVE_GLX],[GLX available]) AH_TEMPLATE([HAVE_EGL],[EGL available]) dnl dnl Search for OpenGL libraries dnl OLD_LIBS=$LIBS have_GL="true" AC_SEARCH_LIBS([glBegin], [GL], [], AC_MSG_ERROR([OpenGL not found]), []) if test "x$have_GL" = "xtrue"; then AC_LINK_IFELSE([AC_LANG_SOURCE([[#include int main() { if(0) glBegin(GL_QUADS); return 0; } ]])], [],AC_MSG_ERROR([Linking OpenGL program failed])) fi GL_LIBS=$LIBS LIBS="$OLD_LIBS" dnl dnl Check for EGL dnl OLD_LIBS=$LIBS have_EGL="true" AC_SEARCH_LIBS([eglGetCurrentDisplay], [GL EGL], [], AC_MSG_ERROR([EGL not found]), []) if test "x$have_GL" = "xtrue"; then AC_LINK_IFELSE([AC_LANG_SOURCE([[#include int main() { if(0) eglGetCurrentDisplay(); return 0; } ]])], [],AC_MSG_ERROR([Linking EGL program failed])) fi EGL_LIBS=$LIBS LIBS="$OLD_LIBS" if test "x$have_GL" = "xtrue"; then AC_DEFINE(HAVE_GL) if test "x$have_EGL" = "xtrue"; then AC_DEFINE(HAVE_EGL) fi fi AM_CONDITIONAL(HAVE_GL, test x$have_GL = xtrue) AM_CONDITIONAL(HAVE_EGL, test x$have_EGL = xtrue) AC_SUBST(GL_CFLAGS) AC_SUBST(GL_LIBS) AC_SUBST(EGL_CFLAGS) AC_SUBST(EGL_LIBS) ]) dnl dnl GLU dnl AC_DEFUN([GMERLIN_CHECK_GLU],[ AH_TEMPLATE([HAVE_GLU],[GLU available]) OLD_CFLAGS=$CFLAGS OLD_LIBS=$LIBS have_GLU="true" AC_SEARCH_LIBS([gluLookAt], [GLU], [], [have_GLU="false"], []) if test "x$have_GLU" = "xtrue"; then AC_TRY_LINK([#include ],[ if(0) gluLookAt(0, 0, 0, 0, 0, 0, 0, 0, 0); return 0; ],[],[have_GLU="false"]) fi GLU_CFLAGS=$CFLAGS GLU_LIBS=$LIBS CFLAGS="$OLD_CFLAGS" LIBS="$OLD_LIBS" if test "x$have_GLU" = "xtrue"; then AC_DEFINE(HAVE_GLU) fi AM_CONDITIONAL(HAVE_GLU, test x$have_GLU = xtrue) AC_SUBST(GLU_CFLAGS) AC_SUBST(GLU_LIBS) ]) dnl dnl Video4linux2 dnl AC_DEFUN([GMERLIN_CHECK_V4L2],[ AH_TEMPLATE([HAVE_V4L2], [Enable v4l2]) have_v4l2=false AC_ARG_ENABLE(v4l2, AS_HELP_STRING(--disable-v4l2, [Disable Video4Linux (default: autodetect)]), [case "${enableval}" in yes) test_v4l2=true ;; no) test_v4l2=false ;; esac], test_v4l2=true) if test x$test_v4l2 = xtrue; then AC_CHECK_HEADERS(linux/videodev2.h, have_v4l2=true) fi AM_CONDITIONAL(HAVE_V4L2, test x$have_v4l2 = xtrue) if test x$have_v4l2 = xtrue; then AC_DEFINE(HAVE_V4L2) fi ]) dnl dnl libva dnl (need to test for libdrm before!) AC_DEFUN([GMERLIN_CHECK_LIBVA],[ AH_TEMPLATE([HAVE_LIBVA], [Do we have libva installed?]) AH_TEMPLATE([HAVE_LIBVA_DRM], [Do we have libva (drm) installed?]) have_libva="false" have_libva_drm="false" LIBVA_CFLAGS="" LIBVA_LIBS="" AC_ARG_ENABLE(libva, [AS_HELP_STRING([--disable-libva],[Disable libva (default: autodetect)])], [case "${enableval}" in yes) test_libva=true ;; no) test_libva=false ;; esac],[test_libva=true]) if test x"$have_drm" != "xtrue"; then test_libva="false" fi if test x$test_libva = xtrue; then PKG_CHECK_MODULES(LIBVA_BASE, libva, have_libva="true", have_libva="false") fi if test "x$have_libva" = "xtrue"; then LIBVA_CFLAGS=$LIBVA_BASE_CFLAGS LIBVA_LIBS=$LIBVA_BASE_LIBS PKG_CHECK_MODULES(LIBVA_DRM, libva-drm, have_libva_drm="true", have_libva_drm="false") if test "x$have_libva_drm" = "xtrue"; then LIBVA_CFLAGS="$LIBVA_CFLAGS $LIBVA_DRM_CFLAGS" LIBVA_LIBS="$LIBVA_LIBS $LIBVA_DRM_LIBS" else have_libva="false" fi fi AC_SUBST(LIBVA_LIBS) AC_SUBST(LIBVA_CFLAGS) AM_CONDITIONAL(HAVE_LIBVA, test x$have_libva = xtrue) if test "x$have_libva" = "xtrue"; then AC_DEFINE([HAVE_LIBVA]) fi ]) bplaum-gavl-b9385e3/m4/clip_mode.m4000066400000000000000000000063311513252040200167770ustar00rootroot00000000000000dnl @synopsis AC_C_CLIP_MODE dnl dnl Determine the clipping mode when converting float to int. dnl @version 1.0 May 17 2003 dnl @author Erik de Castro Lopo dnl dnl Permission to use, copy, modify, distribute, and sell this file for any dnl purpose is hereby granted without fee, provided that the above copyright dnl and this permission notice appear in all copies. No representations are dnl made about the suitability of this software for any purpose. It is dnl provided "as is" without express or implied warranty. dnl Find the clipping mode in the following way: dnl 1) If we are not cross compiling test it. dnl 2) IF we are cross compiling, assume that clipping isn't done correctly. AC_DEFUN([AC_C_CLIP_MODE], [AC_CACHE_CHECK(processor clipping capabilities, ac_cv_c_clip_type, # Initialize to unknown ac_cv_c_clip_positive=unknown ac_cv_c_clip_negative=unknown if test $ac_cv_c_clip_positive = unknown ; then AC_RUN_IFELSE( [AC_LANG_SOURCE([[ #define _ISOC9X_SOURCE 1 #define _ISOC99_SOURCE 1 #define __USE_ISOC99 1 #define __USE_ISOC9X 1 #include int main (void) { double fval ; int k, ival ; fval = 1.0 * 0x7FFFFFFF ; for (k = 0 ; k < 100 ; k++) { ival = (lrint (fval)) >> 24 ; if (ival != 127) return 1 ; fval *= 1.2499999 ; } ; return 0 ; } ]])], ac_cv_c_clip_positive=yes, ac_cv_c_clip_positive=no, ac_cv_c_clip_positive=unknown ) AC_RUN_IFELSE( [AC_LANG_SOURCE([[ #define _ISOC9X_SOURCE 1 #define _ISOC99_SOURCE 1 #define __USE_ISOC99 1 #define __USE_ISOC9X 1 #include int main (void) { double fval ; int k, ival ; fval = -8.0 * 0x10000000 ; for (k = 0 ; k < 100 ; k++) { ival = (lrint (fval)) >> 24 ; if (ival != -128) return 1 ; fval *= 1.2499999 ; } ; return 0 ; } ]])], ac_cv_c_clip_negative=yes, ac_cv_c_clip_negative=no, ac_cv_c_clip_negative=unknown ) fi if test $ac_cv_c_clip_positive = yes ; then ac_cv_c_clip_positive=1 else ac_cv_c_clip_positive=0 fi if test $ac_cv_c_clip_negative = yes ; then ac_cv_c_clip_negative=1 else ac_cv_c_clip_negative=0 fi [[ case "$ac_cv_c_clip_positive$ac_cv_c_clip_negative" in "00") ac_cv_c_clip_type="none" ;; "10") ac_cv_c_clip_type="positive" ;; "01") ac_cv_c_clip_type="negative" ;; "11") ac_cv_c_clip_type="both" ;; esac ]] ) ] )# AC_C_CLIP_MODE bplaum-gavl-b9385e3/m4/gavl_float.m4000066400000000000000000000020711513252040200171570ustar00rootroot00000000000000dnl dnl UD_CHECK_IEEE dnl If the 'double' is not an IEEE double dnl or the 'float' is not and IEEE single, dnl define NO_IEEE_FLOAT dnl AC_DEFUN([UD_CHECK_IEEE], [ AC_MSG_CHECKING(for IEEE floating point format) AC_TRY_RUN([#ifndef NO_FLOAT_H #include #endif #define EXIT_NOTIEEE 1 #define EXIT_MAYBEIEEE 0 int main() { #if defined(FLT_RADIX) && FLT_RADIX != 2 return EXIT_NOTIEEE; #elif defined(DBL_MAX_EXP) && DBL_MAX_EXP != 1024 return EXIT_NOTIEEE; #elif defined(DBL_MANT_DIG) && DBL_MANT_DIG != 53 return EXIT_NOTIEEE; #elif defined(FLT_MAX_EXP) && !(FLT_MAX_EXP == 1024 || FLT_MAX_EXP == 128) return EXIT_NOTIEEE; #elif defined(FLT_MANT_DIG) && !(FLT_MANT_DIG == 53 || FLT_MANT_DIG == 24) return EXIT_NOTIEEE; #else /* (assuming eight bit char) */ if(sizeof(double) != 8) return EXIT_NOTIEEE; if(!(sizeof(float) == 4 || sizeof(float) == 8)) return EXIT_NOTIEEE; return EXIT_MAYBEIEEE; #endif }],HAVE_IEEEFLOAT=yes, HAVE_IEEEFLOAT=no,[ AC_MSG_RESULT([cross compiling, assuming yes]) HAVE_IEEEFLOAT=yes ]) AC_MSG_RESULT($HAVE_IEEEFLOAT) ]) bplaum-gavl-b9385e3/m4/gavl_simd.m4000066400000000000000000000137331513252040200170150ustar00rootroot00000000000000# # Automatic simd compiler feature check by Burkhard Plaum (2006-05-16) # dnl GAVL_CHECK_SIMD_INTERNAL (cpumodel) dnl Check for specific compiler simd features. These include inline dnl assembly as well as intrinsics. If a feature is detected, have dnl variable HAVE_feature is set to "true". The following features are dnl Supported: dnl MMX: Compiler can compile inline MMX assembly dnl SSE: Compiler can compile inline SSE assembly AC_DEFUN([GAVL_CHECK_SIMD_INTERNAL],[ AC_MSG_CHECKING([Architecture]) case $1 in i[[3-7]]86) AC_MSG_RESULT(IA32) ARCH_X86=true ;; x86_64*) AC_MSG_RESULT(x86_64) ARCH_X86=true ARCH_X86_64=true ;; powerpc | powerpc64) AC_MSG_RESULT(PowerPC) ARCH_PPC=true ;; aarch64) AC_MSG_RESULT(ARM 64 bit) ARCH_ARM=true ;; *) AC_MSG_RESULT(unknown) ;; esac OLD_CFLAGS=$CFLAGS CFLAGS=$2 if test x$ARCH_X86 = xtrue; then dnl dnl Check for MMX assembly dnl AC_MSG_CHECKING([if C compiler accepts MMX assembly]) AC_COMPILE_IFELSE([AC_LANG_SOURCE([[int main() { __asm__ __volatile__ ("movq" " %" "mm0" ", %" "mm1"); return 0; }]])], [HAVE_MMX=true]) if test $HAVE_MMX = true; then AC_MSG_RESULT(yes) else AC_MSG_RESULT(no) fi dnl dnl Check for SSE assembly dnl AC_MSG_CHECKING([if C compiler accepts SSE assembly]) AC_COMPILE_IFELSE([AC_LANG_SOURCE([[int main() { __asm__ __volatile__ ("movaps" " %" "xmm0" ", %" "xmm1");return 0; }]])], HAVE_SSE=true) if test $HAVE_SSE = true; then AC_MSG_RESULT(yes) else AC_MSG_RESULT(no) fi dnl dnl Check for SSE2 assembly dnl AC_MSG_CHECKING([if C compiler accepts SSE2 assembly]) AC_COMPILE_IFELSE([AC_LANG_SOURCE([[int main() { __asm__ __volatile__ ("movdqa" " %" "xmm0" ", %" "xmm1");return 0; }]])], HAVE_SSE2=true) if test $HAVE_SSE2 = true; then AC_MSG_RESULT(yes) else AC_MSG_RESULT(no) fi dnl dnl Check for SSE3 assembly dnl AC_MSG_CHECKING([if C compiler accepts SSE3 assembly]) AC_COMPILE_IFELSE([AC_LANG_SOURCE([[int main() { __asm__ __volatile__ ("addsubpd" " %" "xmm0" ", %" "xmm1");return 0; }]])], HAVE_SSE3=true) if test $HAVE_SSE3 = true; then AC_MSG_RESULT(yes) else AC_MSG_RESULT(no) fi dnl dnl Check for SSSE3 assembly dnl AC_MSG_CHECKING([if C compiler accepts SSSE3 assembly]) AC_COMPILE_IFELSE([AC_LANG_SOURCE([[int main() { __asm__ __volatile__ ("psignw" " %" "xmm0" ", %" "xmm1"); }]])], HAVE_SSSE3=true) if test $HAVE_SSSE3 = true; then AC_MSG_RESULT(yes) else AC_MSG_RESULT(no) fi dnl dnl Check for MMX intrinsics dnl AC_MSG_CHECKING([if C compiler accepts MMX intrinsics]) AC_LINK_IFELSE([AC_LANG_SOURCE([[#include int main() { __m64 m1, m2; _m_paddb(m1, m2); return 0; } ]])], HAVE_MMX_INT=true) if test "$HAVE_MMX_INT" = true; then AC_MSG_RESULT(yes) else AC_MSG_RESULT(no) fi dnl dnl Check for SSE intrinsics dnl AC_MSG_CHECKING([if C compiler accepts SSE intrinsics]) AC_LINK_IFELSE([AC_LANG_SOURCE([[#include int main() { __m128 m1, m2; _mm_add_ss(m1, m2); return 0; } ]])], HAVE_SSE_INT=true) if test "$HAVE_SSE_INT" = true; then AC_MSG_RESULT(yes) else AC_MSG_RESULT(no) fi dnl dnl Check for SSE2 intrinsics dnl AC_MSG_CHECKING([if C compiler accepts SSE2 intrinsics]) AC_LINK_IFELSE([AC_LANG_SOURCE([[#include int main() { __m128d m1; m1 = _mm_set1_pd(1.0); return 0; } ]])], HAVE_SSE2_INT=true) if test "$HAVE_SSE2_INT" = true; then AC_MSG_RESULT(yes) else AC_MSG_RESULT(no) fi fi if test x$ARCH_ARM = xtrue; then dnl dnl Check for Neon intrinsics dnl AC_MSG_CHECKING([if C compiler accepts Neon intrinsics]) AC_LINK_IFELSE([AC_LANG_SOURCE([[#include #include int main() { uint8_t * src = NULL; uint8x16x4_t rgba = vld4q_u8(src); return 0; } ]])], HAVE_NEON_INT=true) if test "$HAVE_NEON_INT" = true; then AC_MSG_RESULT(yes) else AC_MSG_RESULT(no) fi fi CFLAGS=$OLD_CFLAGS ]) dnl GAVL_CHECK_SIMD (cpumodel) dnl Check for specific compiler simd features. These include inline dnl assembly as well as intrinsics. If a feature is detected, have dnl variable HAVE_feature is set to "true". The following features are dnl Supported: dnl MMX: Compiler can compile inline MMX assembly dnl SSE: Compiler can compile inline SSE assembly AC_DEFUN([GAVL_CHECK_SIMD],[ dnl dnl Check for SIMD dnl AH_TEMPLATE([ARCH_X86], [Intel Architecture (32/64)]) AH_TEMPLATE([ARCH_X86_64], [Intel Architecture (64)]) AH_TEMPLATE([ARCH_PPC], [PowerPC Architecture]) AH_TEMPLATE([ARCH_ARM], [ARM Architecture]) AH_TEMPLATE([HAVE_MMX], [MMX Supported]) AH_TEMPLATE([HAVE_SSE], [SSE Supported]) AH_TEMPLATE([HAVE_SSE2], [SSE2 Supported]) AH_TEMPLATE([HAVE_SSE3], [SSE3 Supported]) AH_TEMPLATE([HAVE_SSSE3], [SSSE3 Supported]) AH_TEMPLATE([HAVE_NEON], [Neon Supported]) AH_TEMPLATE([HAVE_AVX], [AVX Supported]) GAVL_CHECK_SIMD_INTERNAL($1, $2) if test x"$HAVE_MMX" = "xtrue"; then AC_DEFINE(HAVE_MMX) fi AM_CONDITIONAL(HAVE_MMX, test "x$HAVE_MMX" = "xtrue") if test x"$HAVE_SSE" = "xtrue"; then AC_DEFINE(HAVE_SSE) fi AM_CONDITIONAL(HAVE_SSE, test "x$HAVE_SSE" = "xtrue") if test x"$HAVE_SSE2" = "xtrue"; then AC_DEFINE(HAVE_SSE2) fi AM_CONDITIONAL(HAVE_SSE2, test "x$HAVE_SSE2" = "xtrue") if test x"$HAVE_SSE3" = "xtrue"; then AC_DEFINE(HAVE_SSE3) fi AM_CONDITIONAL(HAVE_SSE3, test "x$HAVE_SSE3" = "xtrue") if test x"$HAVE_SSSE3" = "xtrue"; then AC_DEFINE(HAVE_SSSE3) fi AM_CONDITIONAL(HAVE_SSSE3, test "x$HAVE_SSSE3" = "xtrue") if test x"$ARCH_X86" = "xtrue"; then AC_DEFINE(ARCH_X86) fi if test x"$ARCH_X86_64" = "xtrue"; then AC_DEFINE(ARCH_X86_64) fi if test x"$ARCH_PPC" = "xtrue"; then AC_DEFINE(ARCH_PPC) fi if test x"$ARCH_ARM" = "xtrue"; then AC_DEFINE(ARCH_ARM) fi ]) bplaum-gavl-b9385e3/m4/lqt_opt_cflags.m4000066400000000000000000000041571513252040200200510ustar00rootroot00000000000000# # Automatic OPT_CFLAGS generation by Burkhard Plaum (2005-05-24) # dnl LQT_TRY_CFLAGS (CFLAGS, [ACTION-IF-WORKS], [ACTION-IF-FAILS]) dnl check if $CC supports a given set of cflags AC_DEFUN([LQT_TRY_CFLAGS], [AC_MSG_CHECKING([if $CC supports $1 flags]) SAVE_CFLAGS="$CFLAGS" CFLAGS="$1" AC_COMPILE_IFELSE([AC_LANG_SOURCE([[int main() { return 0; } ]])], [lqt_try_cflags_ok=yes],[lqt_try_cflags_ok=no]) CFLAGS="$SAVE_CFLAGS" AC_MSG_RESULT([$lqt_try_cflags_ok]) if test x"$lqt_try_cflags_ok" = x"yes"; then ifelse([$2],[],[:],[$2]) else ifelse([$3],[],[:],[$3]) fi]) dnl LQT_OPT_CFLAGS([ADDITIONAL_OPT_FLAGS]) dnl Get proper optimization flags. dnl dnl ADDITIONAL_OPT_FLAGS: Additional optimization flags (e.g. -O3 --fast-math) dnl On output, the Variable LQT_OPT_CFLAGS will be set to the compiler flags dnl Furthermore, is debuggind was requested, the variable LQT_DEBUG will be dnl set to "true" AC_DEFUN([LQT_OPT_CFLAGS],[ dnl dnl Debugging Support dnl LQT_DEBUG=false AC_ARG_ENABLE(debug, [AS_HELP_STRING([--enable-debug],[Enable debugging, disable optimization])], [case "${enableval}" in yes) LQT_DEBUG=true ;; no) LQT_DEBUG=false ;; esac],[LQT_DEBUG=false]) dnl dnl Extra cflags from the commandline. Can have the special values "none" or "auto" dnl AC_ARG_WITH(cpuflags, AS_HELP_STRING([--with-cpuflags],[Set CPU specific compiler flags. Default is auto, which does autodetection. Specify none for compiling the most portable binaries]), lqt_cpuflags="$withval", lqt_cpuflags="auto") if test x$lqt_cpuflags = xnone; then lqt_cpuflags="" fi dnl Let gcc detect the architecture if test "x$lqt_cpuflags" = "xauto"; then lqt_cpuflags="-march=native -mtune=native" fi dnl dnl Build the final flags dnl lqt_additional_opt_flags=ifelse([$1],[],[],[$1]) lqt_test_flags=$lqt_cpuflags if test x$LQT_DEBUG = xtrue; then lqt_test_cflags="$lqt_test_flags -g -DDEBUG" else lqt_test_cflags="$lqt_test_flags $lqt_additional_opt_flags" fi OPT_CFLAGS="" for i in $lqt_test_cflags; do LQT_TRY_CFLAGS($i, OPT_CFLAGS="$OPT_CFLAGS $i") ; done ]) bplaum-gavl-b9385e3/src/000077500000000000000000000000001513252040200150465ustar00rootroot00000000000000bplaum-gavl-b9385e3/src/Makefile.am000066400000000000000000000047101513252040200171040ustar00rootroot00000000000000AM_LDFLAGS = @GMERLIN_EXE_LDFLAGS@ if HAVE_V4L2 v4l2_programs = v4linfo v4l_m2m_converter else v4l2_programs = endif if HAVE_LIBPNG png_programs = \ colorspace_test \ fill_test \ blend_test \ scaletest \ convolvetest \ deinterlacetest else png_programs = endif noinst_PROGRAMS = \ $(png_programs) \ $(libva_x11_programs) \ $(v4l2_programs) \ benchmark \ charset \ colorspace_time \ deinterlace_time \ dump_frame_table \ httptest \ orientationtest \ pixelformat_penalty \ plot_scale_kernels \ scale_time \ timescale_test \ value_test \ volume_test pixelformat_penalty_SOURCES = pixelformat_penalty.c pixelformat_penalty_LDADD = ../gavl/libgavl.la benchmark_SOURCES = benchmark.c benchmark_LDADD = ../gavl/libgavl.la @RT_LIBS@ charset_SOURCES = charset.c charset_LDADD = ../gavl/libgavl.la volume_test_SOURCES = volume_test.c volume_test_LDADD = -lm ../gavl/libgavl.la value_test_SOURCES = value_test.c value_test_LDADD = -lm ../gavl/libgavl.la dump_frame_table_SOURCES = dump_frame_table.c dump_frame_table_LDADD = ../gavl/libgavl.la v4linfo_SOURCES = v4linfo.c v4linfo_LDADD = -lm ../gavl/libgavl.la v4l_m2m_converter_SOURCES = v4l_m2m_converter.c v4l_m2m_converter_LDADD = -lm ../gavl/libgavl.la colorspace_test_SOURCES = colorspace_test.c colorspace_test_LDADD = ../gavl/libgavl.la -lpng -lz fill_test_SOURCES = fill_test.c fill_test_LDADD = ../gavl/libgavl.la -lpng -lz blend_test_SOURCES = blend_test.c blend_test_LDADD = ../gavl/libgavl.la -lpng -lz scaletest_SOURCES = scaletest.c scaletest_LDADD = ../gavl/libgavl.la -lpng -lz convolvetest_SOURCES = convolvetest.c pngutil.c convolvetest_LDADD = ../gavl/libgavl.la -lpng -lz deinterlacetest_SOURCES = deinterlacetest.c pngutil.c deinterlacetest_LDADD = ../gavl/libgavl.la -lpng -lz orientationtest_SOURCES = orientationtest.c pngutil.c orientationtest_LDADD = ../gavl/libgavl.la -lpng -lz httptest_SOURCES = httptest.c httptest_LDADD = ../gavl/libgavl.la -lpng -lz plot_scale_kernels_SOURCES = plot_scale_kernels.c plot_scale_kernels_LDADD = ../gavl/libgavl.la scale_time_SOURCES = scale_time.c timeutils.c scale_time_LDADD = ../gavl/libgavl.la deinterlace_time_SOURCES = deinterlace_time.c timeutils.c deinterlace_time_LDADD = ../gavl/libgavl.la colorspace_time_SOURCES = colorspace_time.c colorspace_time_LDADD = ../gavl/libgavl.la timescale_test_SOURCES = timescale_test.c timescale_test_LDADD = ../gavl/libgavl.la noinst_HEADERS = pngutil.h timeutils.h EXTRA_DIST = \ gen_colorspace_tables.c \ gen_ssim_table.c bplaum-gavl-b9385e3/src/benchmark.c000066400000000000000000001504341513252040200171530ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include #include /* Private header */ #include #include #include #include #include #include #include #ifdef HAVE_SYS_TIMES_H #include #endif #ifdef HAVE_SCHED_SETAFFINITY #define __USE_GNU #include #endif // #undef ARCH_X86 #define OUT_PFMT GAVL_RGB_24 #define IN_PFMT GAVL_PIXELFORMAT_NONE #define SCALE_X (1<<0) #define SCALE_Y (1<<1) static int opt_scaledir = 0; // #define INIT_RUNS 5 // #define NUM_RUNS 10 #define INIT_RUNS 10 #define NUM_RUNS 200 int do_html = 0; gavl_pixelformat_t opt_pfmt1 = GAVL_PIXELFORMAT_NONE; gavl_pixelformat_t opt_pfmt2 = GAVL_PIXELFORMAT_NONE; typedef struct { uint64_t times[NUM_RUNS]; uint64_t min; uint64_t max; uint64_t avg; void (*func)(void*); void (*init)(void*); void *data; int accel_supported; int num_discard; } gavl_benchmark_t; /* Fill frames with random numbers */ static void init_video_frame(gavl_video_format_t * format, gavl_video_frame_t * f) { int i, j, num; int num_planes; int32_t * pixels_i; float * pixels_f; int sub_h, sub_v; switch(format->pixelformat) { case GAVL_RGB_FLOAT: for(i = 0; i < format->image_height; i++) { pixels_f = (float*)(f->planes[0] + i * f->strides[0]); for(j = 0; j < format->image_width; j++) { pixels_f[0] = (float)rand() / RAND_MAX; pixels_f[1] = (float)rand() / RAND_MAX; pixels_f[2] = (float)rand() / RAND_MAX; pixels_f+=3; } } break; case GAVL_RGBA_FLOAT: for(i = 0; i < format->image_height; i++) { pixels_f = (float*)(f->planes[0] + i * f->strides[0]); for(j = 0; j < format->image_width; j++) { pixels_f[0] = (float)rand() / RAND_MAX; pixels_f[1] = (float)rand() / RAND_MAX; pixels_f[2] = (float)rand() / RAND_MAX; pixels_f[4] = (float)rand() / RAND_MAX; pixels_f+=4; } } break; default: num_planes = gavl_pixelformat_num_planes(format->pixelformat); gavl_pixelformat_chroma_sub(format->pixelformat, &sub_h, &sub_v); num = 0; for(i = 0; i < num_planes; i++) { num += (f->strides[i] * format->image_height) / (1 + (!!i) * (sub_v-1)); } pixels_i = (int*)(f->planes[0]); for(i = 0; i < format->image_height/sub_v; i++) { pixels_i[i] = rand(); } break; } } static void gavl_benchmark_run(gavl_benchmark_t * b) { int i; uint64_t time_before; uint64_t time_after; b->accel_supported = gavl_accel_supported(); b->avg = 0; for(i = 0; i < INIT_RUNS + NUM_RUNS; i++) { if(b->init) b->init(b->data); time_before = gavl_benchmark_get_time(b->accel_supported); b->func(b->data); time_after = gavl_benchmark_get_time(b->accel_supported); if(i >= INIT_RUNS) { b->times[i-INIT_RUNS] = time_after - time_before; b->avg += b->times[i-INIT_RUNS]; } } b->avg /= NUM_RUNS; b->num_discard = 0; for(i = 0; i < NUM_RUNS; i++) { if(b->times[i] > (3 * b->avg)/2) { b->times[i] = 0; b->num_discard++; } } i = 0; while(!b->times[i]) i++; b->min = b->times[i]; b->max = b->times[i]; b->avg = b->times[i]; i++; while(i < NUM_RUNS) { if(!b->times[i]) { i++; continue; } if(b->times[i] > b->max) b->max = b->times[i]; if(b->times[i] < b->min) b->min = b->times[i]; b->avg += b->times[i]; i++; } b->avg /= (NUM_RUNS-b->num_discard); } static void gavl_benchmark_print_header(gavl_benchmark_t * b) { if(do_html) { printf("AverageMinimumMaximumDiscarded"); } else { printf(" Average Minimum Maximum Discarded"); } } static void gavl_benchmark_print_results(gavl_benchmark_t * b) { if(do_html) { printf("%"PRId64"%"PRId64"%"PRId64"%d", b->avg, b->min, b->max, b->num_discard); } else printf("%8"PRId64" %8"PRId64" %8"PRId64" %4d", b->avg, b->min, b->max, b->num_discard); } /* Audio conversions */ typedef struct { gavl_audio_format_t in_format; gavl_audio_format_t out_format; gavl_audio_converter_t * cnv; gavl_audio_options_t * opt; gavl_audio_frame_t * in_frame; gavl_audio_frame_t * out_frame; } audio_convert_context_t; static void audio_convert_context_create(audio_convert_context_t * ctx) { ctx->cnv = gavl_audio_converter_create(); ctx->opt = gavl_audio_converter_get_options(ctx->cnv); } static void audio_convert_context_init(audio_convert_context_t * ctx) { ctx->in_frame = gavl_audio_frame_create(&ctx->in_format); ctx->out_frame = gavl_audio_frame_create(&ctx->out_format); gavl_audio_converter_init(ctx->cnv, &ctx->in_format, &ctx->out_format); } static void audio_convert_context_cleanup(audio_convert_context_t * ctx) { gavl_audio_frame_destroy(ctx->in_frame); gavl_audio_frame_destroy(ctx->out_frame); } static void audio_convert_context_destroy(audio_convert_context_t * ctx) { gavl_audio_converter_destroy(ctx->cnv); } static void audio_convert_init(void * data) { audio_convert_context_t * ctx = data; ctx->in_frame->valid_samples = ctx->in_format.samples_per_frame; } static void audio_convert_func(void * data) { audio_convert_context_t * ctx = data; gavl_audio_convert(ctx->cnv, ctx->in_frame, ctx->out_frame); } static const gavl_sample_format_t sampleformats[] = { GAVL_SAMPLE_U8, /*!< Unsigned 8 bit */ GAVL_SAMPLE_S8, /*!< Signed 8 bit */ GAVL_SAMPLE_U16, /*!< Unsigned 16 bit */ GAVL_SAMPLE_S16, /*!< Signed 16 bit */ GAVL_SAMPLE_S32, /*!< Signed 32 bit */ GAVL_SAMPLE_FLOAT, /*!< Floating point (-1.0 .. 1.0) */ GAVL_SAMPLE_DOUBLE /*!< Double (-1.0 .. 1.0) */ }; static const struct { gavl_audio_dither_mode_t mode; const char * name; } dither_modes[] = { { GAVL_AUDIO_DITHER_NONE, "None" }, { GAVL_AUDIO_DITHER_RECT, "Rect"}, { GAVL_AUDIO_DITHER_TRI, "Triangular" }, { GAVL_AUDIO_DITHER_SHAPED, "Shaped" } }; static void benchmark_sampleformat() { int num_sampleformats; int num_dither_modes; gavl_sample_format_t in_format; gavl_sample_format_t out_format; int i, j, k; audio_convert_context_t ctx; gavl_benchmark_t b; memset(&ctx, 0, sizeof(ctx)); memset(&b, 0, sizeof(b)); b.init = audio_convert_init; b.func = audio_convert_func; b.data = &ctx; ctx.in_format.num_channels = 2; ctx.in_format.samplerate = 48000; ctx.in_format.interleave_mode = GAVL_INTERLEAVE_NONE; ctx.in_format.channel_locations[0] = GAVL_CHID_NONE; ctx.in_format.samples_per_frame = 10240; gavl_set_channel_setup(&ctx.in_format); gavl_audio_format_copy(&ctx.out_format, &ctx.in_format); num_sampleformats = sizeof(sampleformats)/sizeof(sampleformats[0]); num_dither_modes = sizeof(dither_modes)/sizeof(dither_modes[0]); audio_convert_context_create(&ctx); printf("Conversion of %d samples, %d channels\n", ctx.in_format.samples_per_frame, ctx.in_format.num_channels); if(do_html) { printf("

"); gavl_benchmark_print_header(&b); printf("\n"); } else { printf("\nConversion Dithering "); gavl_benchmark_print_header(&b); printf("\n"); } for(i = 0; i < num_sampleformats; i++) { in_format = sampleformats[i]; ctx.in_format.sample_format = in_format; for(j = 0; j < num_sampleformats; j++) { out_format = sampleformats[j]; if(in_format == out_format) continue; ctx.out_format.sample_format = out_format; if((gavl_bytes_per_sample(out_format) > 2) || (in_format < GAVL_SAMPLE_FLOAT)) { if(do_html) { printf("", gavl_sample_format_to_string(in_format), gavl_sample_format_to_string(out_format)); } else printf("%-16s -> %-16s - ", gavl_sample_format_to_string(in_format), gavl_sample_format_to_string(out_format)); gavl_audio_options_set_dither_mode(ctx.opt, GAVL_AUDIO_DITHER_NONE); audio_convert_context_init(&ctx); gavl_benchmark_run(&b); audio_convert_context_cleanup(&ctx); gavl_benchmark_print_results(&b); if(do_html) { printf(""); } printf("\n"); fflush(stdout); } else { for(k = 0; k < num_dither_modes; k++) { if(do_html) { printf("", gavl_sample_format_to_string(in_format), gavl_sample_format_to_string(out_format), dither_modes[k].name); } else printf("%-16s -> %-16s %-10s ", gavl_sample_format_to_string(in_format), gavl_sample_format_to_string(out_format), dither_modes[k].name); gavl_audio_options_set_dither_mode(ctx.opt, dither_modes[k].mode); audio_convert_context_init(&ctx); gavl_benchmark_run(&b); audio_convert_context_cleanup(&ctx); gavl_benchmark_print_results(&b); if(do_html) { printf(""); } printf("\n"); fflush(stdout); } } } } audio_convert_context_destroy(&ctx); if(do_html) printf("
ConversionDithering
%s -> %sNot available
%s -> %s%s
\n"); } static void benchmark_mix() { int num_sampleformats; gavl_sample_format_t in_format; int i; audio_convert_context_t ctx; gavl_benchmark_t b; memset(&ctx, 0, sizeof(ctx)); memset(&b, 0, sizeof(b)); b.init = audio_convert_init; b.func = audio_convert_func; b.data = &ctx; ctx.in_format.num_channels = 6; ctx.in_format.samplerate = 48000; ctx.in_format.interleave_mode = GAVL_INTERLEAVE_NONE; ctx.in_format.channel_locations[0] = GAVL_CHID_NONE; ctx.in_format.samples_per_frame = 102400; gavl_set_channel_setup(&ctx.in_format); gavl_audio_format_copy(&ctx.out_format, &ctx.in_format); ctx.out_format.num_channels = 2; ctx.out_format.channel_locations[0] = GAVL_CHID_NONE; gavl_set_channel_setup(&ctx.out_format); num_sampleformats = sizeof(sampleformats)/sizeof(sampleformats[0]); audio_convert_context_create(&ctx); printf("Mixing of %d samples, from %d to %d channels\n", ctx.in_format.samples_per_frame, ctx.in_format.num_channels, ctx.out_format.num_channels); if(do_html) { printf("

\n"); gavl_benchmark_print_header(&b); printf("\n"); } else { printf("\nSampleformat "); gavl_benchmark_print_header(&b); printf("\n"); } for(i = 0; i < num_sampleformats; i++) { in_format = sampleformats[i]; ctx.in_format.sample_format = in_format; ctx.out_format.sample_format = in_format; if(do_html) { printf("", gavl_sample_format_to_string(in_format)); } else printf("%-16s ", gavl_sample_format_to_string(in_format)); audio_convert_context_init(&ctx); gavl_benchmark_run(&b); audio_convert_context_cleanup(&ctx); gavl_benchmark_print_results(&b); if(do_html) { printf(""); } printf("\n"); fflush(stdout); } audio_convert_context_destroy(&ctx); if(do_html) printf("
Sampleformat
%s
\n"); } static const struct { gavl_resample_mode_t mode; char * name; } resample_modes[] = { { GAVL_RESAMPLE_ZOH, "Zero order hold" }, { GAVL_RESAMPLE_LINEAR, "Linear" }, { GAVL_RESAMPLE_SINC_FAST, "Sinc fast" }, { GAVL_RESAMPLE_SINC_MEDIUM, "Sinc medium" }, { GAVL_RESAMPLE_SINC_BEST, "Sinc best" } }; static const gavl_sample_format_t resample_sampleformats[] = { // GAVL_SAMPLE_U8, /*!< Unsigned 8 bit */ // GAVL_SAMPLE_S8, /*!< Signed 8 bit */ // GAVL_SAMPLE_U16, /*!< Unsigned 16 bit */ // GAVL_SAMPLE_S16, /*!< Signed 16 bit */ // GAVL_SAMPLE_S32, /*!< Signed 32 bit */ GAVL_SAMPLE_FLOAT, /*!< Floating point (-1.0 .. 1.0) */ GAVL_SAMPLE_DOUBLE /*!< Double (-1.0 .. 1.0) */ }; static void benchmark_resample() { int num_sampleformats; int num_resample_modes; gavl_sample_format_t in_format; int i, j; audio_convert_context_t ctx; gavl_benchmark_t b; memset(&ctx, 0, sizeof(ctx)); memset(&b, 0, sizeof(b)); b.init = audio_convert_init; b.func = audio_convert_func; b.data = &ctx; ctx.in_format.num_channels = 2; ctx.in_format.samplerate = 48000; ctx.in_format.interleave_mode = GAVL_INTERLEAVE_NONE; ctx.in_format.channel_locations[0] = GAVL_CHID_NONE; ctx.in_format.samples_per_frame = 48000; gavl_set_channel_setup(&ctx.in_format); gavl_audio_format_copy(&ctx.out_format, &ctx.in_format); ctx.out_format.samplerate = 44100; num_sampleformats = sizeof(resample_sampleformats)/sizeof(resample_sampleformats[0]); num_resample_modes = sizeof(resample_modes)/sizeof(resample_modes[0]); audio_convert_context_create(&ctx); printf("Resampling of %d samples (%d channels), from %d to %d\n", ctx.in_format.samples_per_frame, ctx.in_format.num_channels, ctx.in_format.samplerate, ctx.out_format.samplerate); if(do_html) { printf("

\n"); gavl_benchmark_print_header(&b); printf("\n"); } else { printf("\nSampleformat Method "); gavl_benchmark_print_header(&b); printf("\n"); } for(i = 0; i < num_sampleformats; i++) { in_format = resample_sampleformats[i]; ctx.in_format.sample_format = in_format; ctx.out_format.sample_format = in_format; for(j = 0; j < num_resample_modes; j++) { gavl_audio_options_set_resample_mode(ctx.opt, resample_modes[j].mode); if(do_html) { printf("", gavl_sample_format_to_string(in_format), resample_modes[j].name); } else { printf("%-16s %-15s ", gavl_sample_format_to_string(in_format), resample_modes[j].name); } audio_convert_context_init(&ctx); gavl_benchmark_run(&b); audio_convert_context_cleanup(&ctx); gavl_benchmark_print_results(&b); if(do_html) printf(""); printf("\n"); fflush(stdout); } } audio_convert_context_destroy(&ctx); if(do_html) printf("
SampleformatMethod
%s%s
\n"); } /* Video converter */ typedef struct { gavl_video_format_t in_format; gavl_video_format_t out_format; gavl_video_converter_t * cnv; gavl_video_options_t * opt; gavl_video_frame_t * in_frame; gavl_video_frame_t * out_frame; } video_convert_context_t; static void video_convert_context_create(video_convert_context_t * ctx) { ctx->cnv = gavl_video_converter_create(); ctx->opt = gavl_video_converter_get_options(ctx->cnv); } static int video_convert_context_init(video_convert_context_t * ctx) { int result; ctx->in_frame = gavl_video_frame_create(&ctx->in_format); ctx->out_frame = gavl_video_frame_create(&ctx->out_format); result = gavl_video_converter_init(ctx->cnv, &ctx->in_format, &ctx->out_format); // fprintf(stderr, "Result: %d\n", result); return result <= 0 ? 0 : 1; } static void video_convert_context_cleanup(video_convert_context_t * ctx) { gavl_video_frame_destroy(ctx->in_frame); gavl_video_frame_destroy(ctx->out_frame); } static void video_convert_context_destroy(video_convert_context_t * ctx) { gavl_video_converter_destroy(ctx->cnv); } static void video_convert_init(void * data) { video_convert_context_t * ctx = data; /* Fill frame with random numbers */ init_video_frame(&ctx->in_format, ctx->in_frame); } static void video_convert_func(void * data) { video_convert_context_t * ctx = data; gavl_video_convert(ctx->cnv, ctx->in_frame, ctx->out_frame); } static const struct { gavl_scale_mode_t mode; const char * name; } scale_modes[] = { { GAVL_SCALE_NEAREST, "Nearest" }, { GAVL_SCALE_BILINEAR, "Linear"}, { GAVL_SCALE_QUADRATIC, "Quadratic" }, { GAVL_SCALE_CUBIC_BSPLINE, "Cubic B-Spline" }, { GAVL_SCALE_CUBIC_CATMULL, "Cubic Catmull-Rom" }, { GAVL_SCALE_CUBIC_MITCHELL, "Cubic Mitchell-Netravali" }, { GAVL_SCALE_SINC_LANCZOS, "Sinc" }, }; static void do_pixelformat(video_convert_context_t * ctx, gavl_benchmark_t * b, gavl_pixelformat_t in_format, gavl_pixelformat_t out_format, char * name) { int flags; int in_sub_h; int in_sub_v; int out_sub_h; int out_sub_v; int i; gavl_pixelformat_chroma_sub(in_format, &in_sub_h, &in_sub_v); gavl_pixelformat_chroma_sub(out_format, &out_sub_h, &out_sub_v); ctx->in_format.pixelformat = in_format; ctx->out_format.pixelformat = out_format; if((in_sub_h == out_sub_h) && (in_sub_v == out_sub_v)) { flags = gavl_video_options_get_conversion_flags(ctx->opt); flags &= ~GAVL_RESAMPLE_CHROMA; gavl_video_options_set_conversion_flags(ctx->opt, flags); if(video_convert_context_init(ctx)) { if(do_html) { printf("%sNot needed", name); } else printf("%-6s - ", name); gavl_benchmark_run(b); gavl_benchmark_print_results(b); if(do_html) printf("\n"); else printf("\n"); } video_convert_context_cleanup(ctx); } else { flags = gavl_video_options_get_conversion_flags(ctx->opt); flags &= ~GAVL_RESAMPLE_CHROMA; gavl_video_options_set_conversion_flags(ctx->opt, flags); if(video_convert_context_init(ctx)) { if(do_html) { printf("%sOff", name); } else printf( "%-6s Off ", name); gavl_benchmark_run(b); gavl_benchmark_print_results(b); if(do_html) printf("\n"); else printf("\n"); } video_convert_context_cleanup(ctx); flags = gavl_video_options_get_conversion_flags(ctx->opt); flags |= GAVL_RESAMPLE_CHROMA; gavl_video_options_set_conversion_flags(ctx->opt, flags); for(i = 1; i < sizeof(scale_modes)/sizeof(scale_modes[0]); i++) { gavl_video_options_set_scale_mode(ctx->opt, scale_modes[i].mode); if(video_convert_context_init(ctx)) { if(do_html) { printf("%s%s", name, scale_modes[i].name); } else printf("%-6s %-24s ", name, scale_modes[i].name); gavl_benchmark_run(b); gavl_benchmark_print_results(b); if(do_html) printf("\n"); else printf("\n"); } video_convert_context_cleanup(ctx); } } } static void benchmark_pixelformat() { int num_pixelformats; gavl_pixelformat_t in_format; gavl_pixelformat_t out_format; int i, j; video_convert_context_t ctx; gavl_benchmark_t b; memset(&ctx, 0, sizeof(ctx)); memset(&b, 0, sizeof(b)); b.init = video_convert_init; b.func = video_convert_func; b.data = &ctx; ctx.in_format.image_width = 720; ctx.in_format.image_height = 576; ctx.in_format.frame_width = 720; ctx.in_format.frame_height = 576; ctx.in_format.pixel_width = 1; ctx.in_format.pixel_height = 1; gavl_video_format_copy(&ctx.out_format, &ctx.in_format); printf("Image size: %d x %d\n", ctx.in_format.image_width, ctx.in_format.image_height); if(do_html) { printf("

\n"); gavl_benchmark_print_header(&b); printf("\n"); } else { printf("\nFlavour Chroma resampling "); gavl_benchmark_print_header(&b); printf("\n"); } num_pixelformats = gavl_num_pixelformats(); video_convert_context_create(&ctx); /* Disable autoselection */ gavl_video_options_set_quality(ctx.opt, 0); /* Must set this to prevent a crash (not in gavl but due to * the benchmarking logic) */ gavl_video_options_set_alpha_mode(ctx.opt, GAVL_ALPHA_BLEND_COLOR); for(i = 0; i < num_pixelformats; i++) { in_format = gavl_get_pixelformat(i); if((opt_pfmt1 != GAVL_PIXELFORMAT_NONE) && (opt_pfmt1 != in_format)) continue; for(j = 0; j < num_pixelformats; j++) { out_format = gavl_get_pixelformat(j); if((opt_pfmt2 != GAVL_PIXELFORMAT_NONE) && (opt_pfmt2 != out_format)) continue; if(in_format == out_format) continue; if(do_html) printf(""); printf("\n"); /* C-Version */ gavl_video_options_set_accel_flags(ctx.opt, GAVL_ACCEL_C); do_pixelformat(&ctx, &b, in_format, out_format, "C"); fflush(stdout); gavl_video_options_set_accel_flags(ctx.opt, GAVL_ACCEL_MMX); do_pixelformat(&ctx, &b, in_format, out_format, "MMX"); fflush(stdout); gavl_video_options_set_accel_flags(ctx.opt, GAVL_ACCEL_MMXEXT); do_pixelformat(&ctx, &b, in_format, out_format, "MMXEXT"); fflush(stdout); gavl_video_options_set_accel_flags(ctx.opt, GAVL_ACCEL_C_HQ); do_pixelformat(&ctx, &b, in_format, out_format, "HQ"); fflush(stdout); fflush(stdout); gavl_video_options_set_accel_flags(ctx.opt, GAVL_ACCEL_SSE); do_pixelformat(&ctx, &b, in_format, out_format, "SSE"); fflush(stdout); fflush(stdout); gavl_video_options_set_accel_flags(ctx.opt, GAVL_ACCEL_SSE3); do_pixelformat(&ctx, &b, in_format, out_format, "SSE3"); fflush(stdout); } } if(do_html) printf("
FlavourChroma resampling
"); printf("%s -> %s", gavl_pixelformat_to_string(in_format), gavl_pixelformat_to_string(out_format)); if(do_html) printf("
\n"); video_convert_context_destroy(&ctx); } static void do_scale(video_convert_context_t * ctx, gavl_benchmark_t * b, gavl_pixelformat_t in_format, const char * name, const char * dirs) { int num_scale_modes, i; num_scale_modes = sizeof(scale_modes)/sizeof(scale_modes[0]); ctx->in_format.pixelformat = in_format; ctx->out_format.pixelformat = in_format; for(i = 0; i < num_scale_modes; i++) { gavl_video_options_set_scale_mode(ctx->opt, scale_modes[i].mode); if(video_convert_context_init(ctx)) { if(do_html) printf("%s%s%s", dirs, name, scale_modes[i].name); else printf("%-2s %-6s %-24s ", dirs, name, scale_modes[i].name); gavl_benchmark_run(b); gavl_benchmark_print_results(b); if(do_html) printf(""); printf("\n"); } fflush(stdout); video_convert_context_cleanup(ctx); } } static void do_scale_direction(video_convert_context_t * ctx, gavl_benchmark_t * b) { int num_pixelformats; gavl_pixelformat_t in_format; int i; const char * dir; printf("\nDestination size: 1024 x 1024, source size 512 for each scaled direction\n"); if(do_html) { printf("

\n"); gavl_benchmark_print_header(b); printf("\n"); } else { printf("Direction Flavour Scale method "); gavl_benchmark_print_header(b); printf("\n"); } num_pixelformats = gavl_num_pixelformats(); for(i = 0; i < num_pixelformats; i++) // for(i = 0; i < 3; i++) { in_format = gavl_get_pixelformat(i); if((opt_pfmt1 != GAVL_PIXELFORMAT_NONE) && (opt_pfmt1 != in_format)) continue; if(do_html) printf("\n", gavl_pixelformat_to_string(in_format)); else printf("%s\n", gavl_pixelformat_to_string(in_format)); ctx->out_format.image_width = 1024; ctx->out_format.image_height = 1024; ctx->out_format.frame_width = 1024; ctx->out_format.frame_height = 1024; ctx->out_format.pixel_width = 1; ctx->out_format.pixel_height = 1; /* X */ if(!opt_scaledir || (opt_scaledir == SCALE_X)) { dir = "x"; gavl_video_format_copy(&ctx->in_format, &ctx->out_format); ctx->in_format.image_width = 512; ctx->in_format.frame_width = 512; gavl_video_options_set_accel_flags(ctx->opt, GAVL_ACCEL_C); do_scale(ctx, b, in_format, "C", dir); gavl_video_options_set_accel_flags(ctx->opt, GAVL_ACCEL_MMX); do_scale(ctx, b, in_format, "MMX", dir); gavl_video_options_set_accel_flags(ctx->opt, GAVL_ACCEL_MMXEXT); do_scale(ctx, b, in_format, "MMXEXT", dir); gavl_video_options_set_accel_flags(ctx->opt, GAVL_ACCEL_SSE); do_scale(ctx, b, in_format, "SSE", dir); gavl_video_options_set_accel_flags(ctx->opt, GAVL_ACCEL_SSE2); do_scale(ctx, b, in_format, "SSE2", dir); gavl_video_options_set_accel_flags(ctx->opt, GAVL_ACCEL_SSE3); do_scale(ctx, b, in_format, "SSE3", dir); gavl_video_options_set_accel_flags(ctx->opt, GAVL_ACCEL_C_HQ); do_scale(ctx, b, in_format, "HQ", dir); } /* Y */ if(!opt_scaledir || (opt_scaledir == SCALE_Y)) { dir = "y"; gavl_video_format_copy(&ctx->in_format, &ctx->out_format); ctx->in_format.image_height = 512; ctx->in_format.frame_height = 512; gavl_video_options_set_accel_flags(ctx->opt, GAVL_ACCEL_C); do_scale(ctx, b, in_format, "C", dir); gavl_video_options_set_accel_flags(ctx->opt, GAVL_ACCEL_MMX); do_scale(ctx, b, in_format, "MMX", dir); gavl_video_options_set_accel_flags(ctx->opt, GAVL_ACCEL_MMXEXT); do_scale(ctx, b, in_format, "MMXEXT", dir); gavl_video_options_set_accel_flags(ctx->opt, GAVL_ACCEL_SSE); do_scale(ctx, b, in_format, "SSE", dir); gavl_video_options_set_accel_flags(ctx->opt, GAVL_ACCEL_SSE2); do_scale(ctx, b, in_format, "SSE2", dir); gavl_video_options_set_accel_flags(ctx->opt, GAVL_ACCEL_SSE3); do_scale(ctx, b, in_format, "SSE3", dir); gavl_video_options_set_accel_flags(ctx->opt, GAVL_ACCEL_C_HQ); do_scale(ctx, b, in_format, "HQ", dir); } /* X+Y */ if(!opt_scaledir || (opt_scaledir == (SCALE_X|SCALE_Y))) { // fprintf(stderr, "%d\n", opt_scaledir); dir = "x+y"; gavl_video_format_copy(&ctx->in_format, &ctx->out_format); ctx->in_format.image_width = 512; ctx->in_format.frame_width = 512; ctx->in_format.image_height = 512; ctx->in_format.frame_height = 512; gavl_video_options_set_accel_flags(ctx->opt, GAVL_ACCEL_C); do_scale(ctx, b, in_format, "C", dir); gavl_video_options_set_accel_flags(ctx->opt, GAVL_ACCEL_MMX); do_scale(ctx, b, in_format, "MMX", dir); gavl_video_options_set_accel_flags(ctx->opt, GAVL_ACCEL_MMXEXT); do_scale(ctx, b, in_format, "MMXEXT", dir); gavl_video_options_set_accel_flags(ctx->opt, GAVL_ACCEL_SSE); do_scale(ctx, b, in_format, "SSE", dir); gavl_video_options_set_accel_flags(ctx->opt, GAVL_ACCEL_SSE2); do_scale(ctx, b, in_format, "SSE2", dir); gavl_video_options_set_accel_flags(ctx->opt, GAVL_ACCEL_SSE3); do_scale(ctx, b, in_format, "SSE3", dir); gavl_video_options_set_accel_flags(ctx->opt, GAVL_ACCEL_C_HQ); do_scale(ctx, b, in_format, "HQ", dir); } } if(do_html) printf("
DirectionFlavourScale method
%s
\n"); } static void benchmark_scale() { video_convert_context_t ctx; gavl_benchmark_t b; memset(&ctx, 0, sizeof(ctx)); memset(&b, 0, sizeof(b)); b.init = video_convert_init; b.func = video_convert_func; b.data = &ctx; video_convert_context_create(&ctx); /* Disable autoselection */ gavl_video_options_set_quality(ctx.opt, 0); do_scale_direction(&ctx, &b); video_convert_context_destroy(&ctx); } static const struct { const char * name; gavl_deinterlace_mode_t mode; } deinterlace_modes[] = { { "Scanline doubler", GAVL_DEINTERLACE_COPY }, { "Upscale", GAVL_DEINTERLACE_SCALE }, { "Blend", GAVL_DEINTERLACE_BLEND }, { /* End */ } }; static void benchmark_deinterlace() { video_convert_context_t ctx; gavl_benchmark_t b; int num_pixelformats; int num_modes; int num_scale_modes; int i, j; memset(&ctx, 0, sizeof(ctx)); memset(&b, 0, sizeof(b)); b.init = video_convert_init; b.func = video_convert_func; b.data = &ctx; ctx.in_format.image_width = 720; ctx.in_format.image_height = 576; ctx.in_format.frame_width = 720; ctx.in_format.frame_height = 576; ctx.in_format.pixel_width = 1; ctx.in_format.pixel_height = 1; ctx.in_format.interlace_mode = GAVL_INTERLACE_TOP_FIRST; printf("Size: %d x %d\n", ctx.in_format.image_width, ctx.in_format.image_height); if(do_html) { printf("

"); gavl_benchmark_print_header(&b); printf("\n"); } else { printf("Method Flavour Scale method "); gavl_benchmark_print_header(&b); printf("\n"); } gavl_video_format_copy(&ctx.out_format, &ctx.in_format); ctx.out_format.interlace_mode = GAVL_INTERLACE_NONE; video_convert_context_create(&ctx); /* Disable autoselection */ gavl_video_options_set_quality(ctx.opt, 0); num_pixelformats = gavl_num_pixelformats(); num_modes = sizeof(deinterlace_modes)/sizeof(deinterlace_modes[0]); num_scale_modes = sizeof(scale_modes)/sizeof(scale_modes[0]); for(i = 0; i < num_pixelformats; i++) { ctx.in_format.pixelformat = gavl_get_pixelformat(i); ctx.out_format.pixelformat = ctx.in_format.pixelformat; if(do_html) printf("\n", gavl_pixelformat_to_string(ctx.in_format.pixelformat)); else printf("%s\n", gavl_pixelformat_to_string(ctx.in_format.pixelformat)); for(j = 0; j < num_modes; j++) { if(deinterlace_modes[j].mode == GAVL_DEINTERLACE_SCALE) continue; gavl_video_options_set_deinterlace_mode(ctx.opt, deinterlace_modes[j].mode); gavl_video_options_set_accel_flags(ctx.opt, GAVL_ACCEL_C); if(video_convert_context_init(&ctx)) { if(do_html) printf("", deinterlace_modes[j].name); else printf("%-16s C - ", deinterlace_modes[j].name); gavl_benchmark_run(&b); gavl_benchmark_print_results(&b); if(do_html) printf(""); printf("\n"); } fflush(stdout); video_convert_context_cleanup(&ctx); if(deinterlace_modes[j].mode == GAVL_DEINTERLACE_COPY) continue; gavl_video_options_set_accel_flags(ctx.opt, GAVL_ACCEL_MMX); if(video_convert_context_init(&ctx)) { if(do_html) printf("", deinterlace_modes[j].name); else printf("%-16s MMX - ", deinterlace_modes[j].name); gavl_benchmark_run(&b); gavl_benchmark_print_results(&b); if(do_html) printf(""); printf("\n"); } fflush(stdout); video_convert_context_cleanup(&ctx); gavl_video_options_set_accel_flags(ctx.opt, GAVL_ACCEL_MMXEXT); if(video_convert_context_init(&ctx)) { if(do_html) printf("", deinterlace_modes[j].name); else printf("%-16s MMXEXT - ", deinterlace_modes[j].name); gavl_benchmark_run(&b); gavl_benchmark_print_results(&b); if(do_html) printf(""); printf("\n"); } fflush(stdout); video_convert_context_cleanup(&ctx); } gavl_video_options_set_deinterlace_mode(ctx.opt, GAVL_DEINTERLACE_SCALE); for(j = 1; j < num_scale_modes; j++) { gavl_video_options_set_scale_mode(ctx.opt, scale_modes[j].mode); gavl_video_options_set_accel_flags(ctx.opt, GAVL_ACCEL_C); if(video_convert_context_init(&ctx)) { if(do_html) printf("", scale_modes[j].name); else printf("Upscale C %-24s ", scale_modes[j].name); gavl_benchmark_run(&b); gavl_benchmark_print_results(&b); if(do_html) printf(""); printf("\n"); } fflush(stdout); video_convert_context_cleanup(&ctx); gavl_video_options_set_accel_flags(ctx.opt, GAVL_ACCEL_MMX); if(video_convert_context_init(&ctx)) { if(do_html) printf("", scale_modes[j].name); else printf("Upscale MMX %-24s ", scale_modes[j].name); gavl_benchmark_run(&b); gavl_benchmark_print_results(&b); if(do_html) printf(""); printf("\n"); } fflush(stdout); video_convert_context_cleanup(&ctx); } } if(do_html) printf("
MethodFlavourScale method
%s
%sC
%sMMX
%sMMXEXT
UpscaleC%s
UpscaleMMX%s
\n"); video_convert_context_destroy(&ctx); } /* Video DSP */ typedef struct { gavl_video_format_t format; gavl_dsp_context_t * ctx; gavl_video_frame_t * frames[3]; int num_frames; } video_dsp_context_t; static void video_dsp_context_create(video_dsp_context_t * ctx, int num_frames) { ctx->ctx = gavl_dsp_context_create(); ctx->num_frames = num_frames; } static void video_dsp_context_init(video_dsp_context_t * ctx) { int i; for(i = 0; i < ctx->num_frames; i++) ctx->frames[i] = gavl_video_frame_create(&ctx->format); return; } static void video_dsp_context_cleanup(video_dsp_context_t * ctx) { int i; for(i = 0; i < ctx->num_frames; i++) gavl_video_frame_destroy(ctx->frames[i]); } static void video_dsp_context_destroy(video_dsp_context_t * ctx) { gavl_dsp_context_destroy(ctx->ctx); } static void video_dsp_init(void * data) { int i; video_dsp_context_t * ctx = data; /* Fill frame with random numbers */ for(i = 0; i < ctx->num_frames; i++) { init_video_frame(&ctx->format, ctx->frames[0]); } } static void interpolate_func(void * data) { video_dsp_context_t * ctx = data; gavl_dsp_interpolate_video_frame(ctx->ctx, &ctx->format, ctx->frames[0], ctx->frames[1], ctx->frames[2], 0.5); } /* Video interpolation */ static void benchmark_dsp_interpolate() { video_dsp_context_t ctx; gavl_benchmark_t b; int num_pixelformats; int i; memset(&ctx, 0, sizeof(ctx)); memset(&b, 0, sizeof(b)); b.init = video_dsp_init; b.func = interpolate_func; b.data = &ctx; ctx.format.image_width = 720; ctx.format.image_height = 576; ctx.format.frame_width = 720; ctx.format.frame_height = 576; ctx.format.pixel_width = 1; ctx.format.pixel_height = 1; printf("Size: %d x %d\n", ctx.format.image_width, ctx.format.image_height); if(do_html) { printf("

"); gavl_benchmark_print_header(&b); printf("\n"); } else { printf("Format Flavour "); gavl_benchmark_print_header(&b); printf("\n"); } video_dsp_context_create(&ctx, 3); /* Disable autoselection */ gavl_dsp_context_set_quality(ctx.ctx, 0); num_pixelformats = gavl_num_pixelformats(); for(i = 0; i < num_pixelformats; i++) { ctx.format.pixelformat = gavl_get_pixelformat(i); /* C */ gavl_dsp_context_set_accel_flags(ctx.ctx, GAVL_ACCEL_C); video_dsp_context_init(&ctx); if(gavl_dsp_interpolate_video_frame(ctx.ctx, &ctx.format, ctx.frames[0], ctx.frames[1], ctx.frames[2], 0.5)) { if(do_html) printf("", gavl_pixelformat_to_string(ctx.format.pixelformat)); else printf("%-23s C ", gavl_pixelformat_to_string(ctx.format.pixelformat)); gavl_benchmark_run(&b); gavl_benchmark_print_results(&b); if(do_html) printf(""); printf("\n"); fflush(stdout); } video_dsp_context_cleanup(&ctx); /* MMX */ gavl_dsp_context_set_accel_flags(ctx.ctx, GAVL_ACCEL_MMX); video_dsp_context_init(&ctx); if(gavl_dsp_interpolate_video_frame(ctx.ctx, &ctx.format, ctx.frames[0], ctx.frames[1], ctx.frames[2], 0.5)) { if(do_html) printf("", gavl_pixelformat_to_string(ctx.format.pixelformat)); else printf("%-23s MMX ", gavl_pixelformat_to_string(ctx.format.pixelformat)); gavl_benchmark_run(&b); gavl_benchmark_print_results(&b); if(do_html) printf(""); printf("\n"); fflush(stdout); } video_dsp_context_cleanup(&ctx); } video_dsp_context_destroy(&ctx); if(do_html) printf("
FormatFlavour
%sC
%sMMX
\n"); } /* Image transformation */ static const struct { gavl_scale_mode_t mode; const char * name; } transform_modes[] = { { GAVL_SCALE_NEAREST, "Nearest" }, { GAVL_SCALE_BILINEAR, "Linear"}, { GAVL_SCALE_QUADRATIC, "Quadratic" }, { GAVL_SCALE_CUBIC_BSPLINE, "Cubic B-Spline" }, }; static const gavl_pixelformat_t transform_pixelformats[] = { GAVL_GRAY_8, GAVL_GRAY_16, GAVL_GRAY_FLOAT, GAVL_GRAYA_16, GAVL_GRAYA_32, GAVL_GRAYA_FLOAT, GAVL_RGB_15, GAVL_RGB_16, GAVL_RGB_24, GAVL_RGB_32, GAVL_RGBA_32, GAVL_RGB_48, GAVL_RGBA_64, GAVL_RGB_FLOAT, GAVL_RGBA_FLOAT, GAVL_YUY2, GAVL_UYVY, GAVL_YUV_420_P, GAVL_YUV_422_P, GAVL_YUV_444_P, GAVL_YUV_411_P, GAVL_YUV_410_P, GAVL_YUV_444_P_16, GAVL_YUV_422_P_16, GAVL_PIXELFORMAT_NONE, }; typedef struct { gavl_video_format_t format; gavl_image_transform_t * transform; gavl_video_options_t * opt; gavl_video_frame_t * in_frame; gavl_video_frame_t * out_frame; } image_transform_context_t; static void image_transform_context_create(image_transform_context_t * ctx) { ctx->transform = gavl_image_transform_create(); ctx->opt = gavl_image_transform_get_options(ctx->transform); } static void transform_func(void *priv, double xdst, double ydst, double *xsrc, double *ysrc) { *xsrc = xdst + 0.5; *ysrc = ydst + 0.5; } static int image_transform_context_init(image_transform_context_t * ctx) { ctx->in_frame = gavl_video_frame_create(&ctx->format); ctx->out_frame = gavl_video_frame_create(&ctx->format); return gavl_image_transform_init(ctx->transform, &ctx->format, transform_func, NULL); } static void image_transform_context_cleanup(image_transform_context_t * ctx) { gavl_video_frame_destroy(ctx->in_frame); gavl_video_frame_destroy(ctx->out_frame); } static void image_transform_context_destroy(image_transform_context_t * ctx) { gavl_image_transform_destroy(ctx->transform); } static void image_transform_init(void * data) { image_transform_context_t * ctx = data; /* Fill frame with random numbers */ init_video_frame(&ctx->format, ctx->in_frame); } static void image_transform_func(void * data) { image_transform_context_t * ctx = data; gavl_image_transform_transform(ctx->transform, ctx->in_frame, ctx->out_frame); } static void benchmark_image_transform() { image_transform_context_t ctx; gavl_benchmark_t b; int i, j; memset(&ctx, 0, sizeof(ctx)); memset(&b, 0, sizeof(b)); b.init = image_transform_init; b.func = image_transform_func; b.data = &ctx; ctx.format.image_width = 720; ctx.format.image_height = 576; ctx.format.frame_width = 720; ctx.format.frame_height = 576; ctx.format.pixel_width = 1; ctx.format.pixel_height = 1; printf("Size: %d x %d\n", ctx.format.image_width, ctx.format.image_height); if(do_html) { printf("

"); gavl_benchmark_print_header(&b); printf("\n"); } else { printf("Format Mode Flavour "); gavl_benchmark_print_header(&b); printf("\n"); } image_transform_context_create(&ctx); /* Disable autoselection */ gavl_video_options_set_quality(ctx.opt, 0); for(j = 0; j < sizeof(transform_modes)/sizeof(transform_modes[0]); j++) { gavl_video_options_set_scale_mode(ctx.opt, transform_modes[j].mode); i = 0; while(transform_pixelformats[i] != GAVL_PIXELFORMAT_NONE) { ctx.format.pixelformat = transform_pixelformats[i]; /* C */ gavl_video_options_set_accel_flags(ctx.opt, GAVL_ACCEL_C); image_transform_context_init(&ctx); if(do_html) printf("", gavl_pixelformat_to_string(ctx.format.pixelformat), transform_modes[j].name); else printf("%-23s %-14s C ", gavl_pixelformat_to_string(ctx.format.pixelformat), transform_modes[j].name); gavl_benchmark_run(&b); gavl_benchmark_print_results(&b); if(do_html) printf(""); printf("\n"); fflush(stdout); image_transform_context_cleanup(&ctx); /* MMX */ gavl_video_options_set_accel_flags(ctx.opt, GAVL_ACCEL_MMX); if(image_transform_context_init(&ctx)) { if(do_html) printf("", gavl_pixelformat_to_string(ctx.format.pixelformat), transform_modes[j].name); else printf("%-23s %-14s MMX ", gavl_pixelformat_to_string(ctx.format.pixelformat), transform_modes[j].name); gavl_benchmark_run(&b); gavl_benchmark_print_results(&b); if(do_html) printf(""); printf("\n"); fflush(stdout); image_transform_context_cleanup(&ctx); } /* MMXEXT */ gavl_video_options_set_accel_flags(ctx.opt, GAVL_ACCEL_MMXEXT); if(image_transform_context_init(&ctx)) { if(do_html) printf("", gavl_pixelformat_to_string(ctx.format.pixelformat), transform_modes[j].name); else printf("%-23s %-14s MMXEXT ", gavl_pixelformat_to_string(ctx.format.pixelformat), transform_modes[j].name); gavl_benchmark_run(&b); gavl_benchmark_print_results(&b); if(do_html) printf(""); printf("\n"); fflush(stdout); image_transform_context_cleanup(&ctx); } // else // fprintf(stderr, "No MMX version\n"); i++; } } image_transform_context_destroy(&ctx); if(do_html) printf("
FormatFlavour
%s%sC
%s%sMMX
%s%sMMXEXT
\n"); } #define BENCHMARK_SAMPLEFORMAT (1<<0) #define BENCHMARK_MIX (1<<1) #define BENCHMARK_VOLUME (1<<2) #define BENCHMARK_PEAK_DETECT (1<<3) #define BENCHMARK_INTERLEAVE (1<<4) #define BENCHMARK_RESAMPLE (1<<5) #define BENCHMARK_PIXELFORMAT (1<<6) #define BENCHMARK_SCALE (1<<7) #define BENCHMARK_DEINTERLACE (1<<8) #define BENCHMARK_INTERPOLATE (1<<9) #define BENCHMARK_SAD (1<<10) #define BENCHMARK_TRANSFORM (1<<11) static const struct { const char * option; const char * help; int flag; } benchmark_flags[] = { { "-sfmt", "Sampleformat conversions", BENCHMARK_SAMPLEFORMAT }, { "-mix", "Audio mixing", BENCHMARK_MIX }, { "-rs", "Resample routines", BENCHMARK_RESAMPLE}, // { "-vol", "Volume control", BENCHMARK_VOLUME}, // { "-pd", "Peak detection", BENCHMARK_PEAK_DETECT}, // { "-il", "Interleaving conversion", BENCHMARK_INTERLEAVE}, { "-pfmt", "Pixelformat conversions", BENCHMARK_PIXELFORMAT }, { "-scale", "Scale", BENCHMARK_SCALE}, { "-deint", "Deinterlacing", BENCHMARK_DEINTERLACE}, { "-ip", "Video frame interpolation", BENCHMARK_INTERPOLATE}, { "-it", "Image transformation", BENCHMARK_TRANSFORM}, // { "-sad", "SAD routines", BENCHMARK_SAD}, }; static int get_flag(char * opt, int * flag_ret) { int i; for(i = 0; i < sizeof(benchmark_flags)/sizeof(benchmark_flags[0]); i++) { if(!strcmp(benchmark_flags[i].option, opt)) { *flag_ret = benchmark_flags[i].flag; return 1; } } return 0; } static void print_header(const char * title) { if(do_html) printf("

%s

\n", title); else printf("\n%s\n\n", title); } static void print_help() { int i; printf("Usage: benchmark [-scaledir ] [-pfmt1 ] [-pfmt2 ] [function ...] [-html]\n"); printf(" benchmark -help\n\n"); printf(" benchmark -listpfmt\n\n"); printf("-html\n Produce html output\n"); printf("-help\n Print this help and exit\n\n"); printf("-listpfmt\n List pixelformats and exit\n\n"); printf("Function can be any combination of the following\n\n"); for(i = 0; i < sizeof(benchmark_flags)/sizeof(benchmark_flags[0]); i++) { printf("%s\n %s\n", benchmark_flags[i].option, benchmark_flags[i].help); } printf("-a\n Do all of the above\n"); } static void list_pfmts() { int i, num; num = gavl_num_pixelformats(); for(i = 0; i < num; i++) { printf("%s\n", gavl_pixelformat_to_string(gavl_get_pixelformat(i))); } } int main(int argc, char ** argv) { int i; int flags = 0; int flag; #ifdef HAVE_SCHED_SETAFFINITY /* Force ourselves into processor 0 */ cpu_set_t cpuset; CPU_ZERO(&cpuset); CPU_SET(0, &cpuset); if(!sched_setaffinity(0, sizeof(cpuset), &cpuset)) fprintf(stderr, "Running on processor 0 exclusively\n"); else fprintf(stderr, "sched_setaffinity failed: %s\n", strerror(errno)); #endif i = 1; while(i < argc) { if(get_flag(argv[i], &flag)) flags |= flag; else if(!strcmp(argv[i], "-a")) flags = ~0x0; else if(!strcmp(argv[i], "-html")) do_html = 1; else if(!strcmp(argv[i], "-pfmt1")) { opt_pfmt1 = gavl_string_to_pixelformat(argv[i+1]); i++; } else if(!strcmp(argv[i], "-scaledir")) { if(!strcmp(argv[i+1], "x")) opt_scaledir = SCALE_X; else if(!strcmp(argv[i+1], "y")) opt_scaledir = SCALE_Y; else if(!strcmp(argv[i+1], "xy")) opt_scaledir = SCALE_X | SCALE_Y; i++; } else if(!strcmp(argv[i], "-pfmt2")) { opt_pfmt2 = gavl_string_to_pixelformat(argv[i+1]); i++; } else if(!strcmp(argv[i], "-help")) { print_help(); return 0; } else if(!strcmp(argv[i], "-listpfmt")) { list_pfmts(); return 0; } i++; } if(do_html) { printf("\n"); printf("\n"); printf("\n"); printf("gavl benchmarks\n"); printf("\n"); printf("\n"); printf("\n"); printf("

gavl Benchmarks

"); printf("These benchmarks are generated with the benchmark tool in the src/ directory of gavl.
"); printf("Number of init runs: %d, number of counted runs: %d
\n", INIT_RUNS, NUM_RUNS); printf("Times are %s
\n", gavl_benchmark_get_desc(gavl_accel_supported())); printf("

/proc/cpuinfo

\n"); printf("
\n");
    fflush(stdout);
    system("cat /proc/cpuinfo");
    printf("
\n"); if(flags & BENCHMARK_SAMPLEFORMAT) printf("Sampleformat conversions
\n"); if(flags & BENCHMARK_MIX) printf("Mixing routines
\n"); if(flags & BENCHMARK_RESAMPLE) printf("Resampling routines
\n"); if(flags & BENCHMARK_PIXELFORMAT) printf("Pixelformat conversions
\n"); if(flags & BENCHMARK_SCALE) printf("Scaling routines
\n"); if(flags & BENCHMARK_DEINTERLACE) printf("Deinterlacing routines
\n"); if(flags & BENCHMARK_INTERPOLATE) printf("Video frame interpolation
\n"); if(flags & BENCHMARK_TRANSFORM) printf("Video image transformation
\n"); } else printf("Times are %s\n", gavl_benchmark_get_desc(gavl_accel_supported())); if(flags & BENCHMARK_SAMPLEFORMAT) { if(do_html) { printf(""); } print_header("Sampleformat conversions"); benchmark_sampleformat(); } if(flags & BENCHMARK_MIX) { if(do_html) { printf(""); } print_header("Mixing routines"); benchmark_mix(); } if(flags & BENCHMARK_RESAMPLE) { if(do_html) { printf(""); } print_header("Resampling routines"); benchmark_resample(); } if(flags & BENCHMARK_PIXELFORMAT) { if(do_html) { printf(""); } print_header("Pixelformat conversions"); benchmark_pixelformat(); } if(flags & BENCHMARK_SCALE) { if(do_html) { printf(""); } print_header("Scaling routines"); benchmark_scale(); } if(flags & BENCHMARK_DEINTERLACE) { if(do_html) { printf(""); } print_header("Deinterlacing routines"); benchmark_deinterlace(); } if(flags & BENCHMARK_INTERPOLATE) { if(do_html) { printf(""); } print_header("Video frame interpolation"); benchmark_dsp_interpolate(); } if(flags & BENCHMARK_TRANSFORM) { if(do_html) { printf(""); } print_header("Video image transformation"); benchmark_image_transform(); } if(do_html) { printf("\n\n"); } return 0; } bplaum-gavl-b9385e3/src/blend_test.c000066400000000000000000000235321513252040200173420ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include //#include "colorspace.h" // Common routines #include #include #include #define IN_X 0 #define IN_Y 0 #define OUT_X 10 #define OUT_Y 10 static void write_png(char * filename, gavl_video_format_t * format, gavl_video_frame_t * frame) { int i; unsigned char ** rows; int color_type; FILE * output; png_structp png_ptr; png_infop info_ptr; gavl_video_converter_t * cnv; gavl_video_format_t format_1; gavl_video_frame_t * frame_1 = NULL; if((format->pixelformat != GAVL_RGB_24) && (format->pixelformat != GAVL_RGBA_32)) { cnv = gavl_video_converter_create(); gavl_video_format_copy(&format_1, format); if(gavl_pixelformat_has_alpha(format->pixelformat)) { format_1.pixelformat = GAVL_RGBA_32; color_type = PNG_COLOR_TYPE_RGBA; } else { format_1.pixelformat = GAVL_RGB_24; color_type = PNG_COLOR_TYPE_RGB; } frame_1 = gavl_video_frame_create(&format_1); gavl_video_converter_init(cnv, format, &format_1); gavl_video_convert(cnv, frame, frame_1); gavl_video_converter_destroy(cnv); } else if(format->pixelformat == GAVL_RGB_24) { color_type = PNG_COLOR_TYPE_RGB; } else { color_type = PNG_COLOR_TYPE_RGBA; } output = fopen(filename, "wb"); if(!output) return; png_ptr = png_create_write_struct(PNG_LIBPNG_VER_STRING, NULL, NULL, NULL); info_ptr = png_create_info_struct(png_ptr); setjmp(png_jmpbuf(png_ptr)); png_init_io(png_ptr, output); png_set_IHDR(png_ptr, info_ptr, format->image_width, format->image_height, 8, color_type, PNG_INTERLACE_NONE, PNG_COMPRESSION_TYPE_DEFAULT, PNG_FILTER_TYPE_DEFAULT); rows = malloc(format->image_height * sizeof(*rows)); if(frame_1) { for(i = 0; i < format->image_height; i++) rows[i] = frame_1->planes[0] + i * frame_1->strides[0]; } else { for(i = 0; i < format->image_height; i++) rows[i] = frame->planes[0] + i * frame->strides[0]; } png_set_rows(png_ptr, info_ptr, rows); png_write_png(png_ptr, info_ptr, PNG_TRANSFORM_IDENTITY, NULL); png_destroy_write_struct(&png_ptr, &info_ptr); fclose(output); free(rows); if(frame_1) gavl_video_frame_destroy(frame_1); } static gavl_video_frame_t * read_png(const char * filename, gavl_video_format_t * format, gavl_pixelformat_t pixelformat) { int i; unsigned char ** rows; gavl_video_converter_t * cnv; gavl_video_format_t format_1; gavl_video_frame_t * frame, * frame_1; int bit_depth; int color_type; int has_alpha = 0; png_structp png_ptr; png_infop info_ptr; png_infop end_info; FILE * file; file = fopen(filename, "rb"); if(!file) { fprintf(stderr, "Cannot open file %s\n", filename); return NULL; } png_ptr = png_create_read_struct (PNG_LIBPNG_VER_STRING, NULL, NULL, NULL); setjmp(png_jmpbuf(png_ptr)); info_ptr = png_create_info_struct(png_ptr); end_info = png_create_info_struct(png_ptr); png_init_io(png_ptr, file); png_read_info(png_ptr, info_ptr); format->frame_width = png_get_image_width(png_ptr, info_ptr); format->frame_height = png_get_image_height(png_ptr, info_ptr); format->image_width = format->frame_width; format->image_height = format->frame_height; format->pixel_width = 1; format->pixel_height = 1; bit_depth = png_get_bit_depth(png_ptr, info_ptr); color_type = png_get_color_type(png_ptr, info_ptr); switch(color_type) { case PNG_COLOR_TYPE_GRAY: /* (bit depths 1, 2, 4, 8, 16) */ if(bit_depth < 8) #if GAVL_MAKE_BUILD(PNG_LIBPNG_VER_MAJOR, PNG_LIBPNG_VER_MINOR, PNG_LIBPNG_VER_RELEASE) < GAVL_MAKE_BUILD(1,2,9) png_set_gray_1_2_4_to_8(png_ptr); #else png_set_expand_gray_1_2_4_to_8(png_ptr); #endif if (png_get_valid(png_ptr, info_ptr, PNG_INFO_tRNS)) { png_set_tRNS_to_alpha(png_ptr); has_alpha = 1; } png_set_gray_to_rgb(png_ptr); break; case PNG_COLOR_TYPE_GRAY_ALPHA: /* (bit depths 8, 16) */ if(bit_depth == 16) png_set_strip_16(png_ptr); png_set_gray_to_rgb(png_ptr); break; case PNG_COLOR_TYPE_PALETTE: /* (bit depths 1, 2, 4, 8) */ png_set_palette_to_rgb(png_ptr); if (png_get_valid(png_ptr, info_ptr, PNG_INFO_tRNS)) { png_set_tRNS_to_alpha(png_ptr); has_alpha = 1; } break; case PNG_COLOR_TYPE_RGB: /* (bit_depths 8, 16) */ if(png_get_valid(png_ptr, info_ptr, PNG_INFO_tRNS)) { png_set_tRNS_to_alpha(png_ptr); has_alpha = 1; } if(bit_depth == 16) png_set_strip_16(png_ptr); break; case PNG_COLOR_TYPE_RGB_ALPHA: /* (bit_depths 8, 16) */ if(bit_depth == 16) png_set_strip_16(png_ptr); has_alpha = 1; break; } if(has_alpha) format->pixelformat = GAVL_RGBA_32; else format->pixelformat = GAVL_RGB_24; frame = gavl_video_frame_create(format); rows = malloc(format->frame_height * sizeof(*rows)); for(i = 0; i < format->frame_height; i++) rows[i] = frame->planes[0] + i * frame->strides[0]; png_read_image(png_ptr, rows); png_read_end(png_ptr, end_info); png_destroy_read_struct(&png_ptr, &info_ptr, &end_info); fclose(file); free(rows); /* Check whether to set up the converter */ if(format->pixelformat != pixelformat) { cnv = gavl_video_converter_create(); gavl_video_format_copy(&format_1, format); format_1.pixelformat = pixelformat; frame_1 = gavl_video_frame_create(&format_1); if(gavl_video_converter_init(cnv, format, &format_1)) { gavl_video_convert(cnv, frame, frame_1); } else { gavl_video_frame_copy(&format_1, frame_1, frame); } gavl_video_converter_destroy(cnv); format->pixelformat = pixelformat; } else frame_1 = NULL; if(frame_1) { gavl_video_frame_destroy(frame); return frame_1; } else return frame; } int main(int argc, char ** argv) { char filename_buffer[1024]; int i, j, imax; gavl_overlay_blend_context_t *blend; gavl_video_format_t frame_format, overlay_format; gavl_video_frame_t * frame, * overlay; gavl_pixelformat_t frame_csp; gavl_pixelformat_t overlay_csp; if(argc != 3) { fprintf(stderr, "Usage: blend_test \n"); return -1; } memset(&frame_format, 0, sizeof(frame_format)); memset(&overlay_format, 0, sizeof(overlay_format)); imax = gavl_num_pixelformats(); blend = gavl_overlay_blend_context_create(); // imax = 1; for(i = 0; i < imax; i++) { frame_csp = gavl_get_pixelformat(i); // if(frame_csp != GAVL_YUVA_32) // continue; for(j = 0; j < imax; j++) { overlay_csp = gavl_get_pixelformat(j); if(!gavl_pixelformat_has_alpha(overlay_csp)) continue; // csp = GAVL_RGB_24; fprintf(stderr, "Frame: %s, Overlay: %s\n", gavl_pixelformat_to_string(frame_csp), gavl_pixelformat_to_string(overlay_csp)); frame = read_png(argv[1], &frame_format, frame_csp); overlay = read_png(argv[2], &overlay_format, overlay_csp); overlay->dst_x = 3; overlay->dst_y = 3; overlay->src_rect.w = overlay_format.image_width; overlay->src_rect.h = overlay_format.image_height; overlay->src_rect.x = 0; overlay->src_rect.y = 0; // gavl_video_options_set_defaults(opt); if(!gavl_overlay_blend_context_init(blend, &frame_format, &overlay_format)) { fprintf(stderr, "Blending not supported or not possible\n"); gavl_video_frame_destroy(frame); gavl_video_frame_destroy(overlay); continue; } if(overlay_format.pixelformat != overlay_csp) { fprintf(stderr, "Blending from %s to not %s possible\n", gavl_pixelformat_to_string(overlay_csp), gavl_pixelformat_to_string(frame_csp)); gavl_video_frame_destroy(frame); gavl_video_frame_destroy(overlay); continue; } gavl_overlay_blend_context_set_overlay(blend, overlay); gavl_overlay_blend(blend, frame); sprintf(filename_buffer, "blend_%s_over_%s.png", gavl_pixelformat_to_string(overlay_csp), gavl_pixelformat_to_string(frame_csp)); write_png(filename_buffer, &frame_format, frame); fprintf(stderr, "Wrote %s\n", filename_buffer); gavl_video_frame_destroy(frame); gavl_video_frame_destroy(overlay); } } gavl_overlay_blend_context_destroy(blend); return 0; } bplaum-gavl-b9385e3/src/charset.c000066400000000000000000000042631513252040200166500ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include #include #include #include #include #define LOG_DOMAIN "charset-test" int main(int argc, char ** argv) { gavl_buffer_t buf; gavl_io_t * io; gavl_charset_converter_t * cnv; int in_len; char * out; int out_len; if(argc < 4) { fprintf(stderr, "Usage: %s \n", argv[0]); return EXIT_SUCCESS; } if(!(cnv = gavl_charset_converter_create(argv[1], argv[2]))) return EXIT_FAILURE; if(!(io = gavl_io_from_filename(argv[3], 0))) return EXIT_FAILURE; gavl_buffer_init(&buf); in_len = gavl_io_total_bytes(io); gavl_buffer_alloc(&buf, in_len); if((buf.len = gavl_io_read_data(io, buf.buf, in_len)) < in_len) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Loading file %s failed", argv[3]); return EXIT_FAILURE; } gavl_log(GAVL_LOG_INFO, LOG_DOMAIN, "Loaded %s %d bytes", argv[3], in_len); out = gavl_convert_string(cnv, (char*)buf.buf, buf.len, &out_len); gavl_log(GAVL_LOG_INFO, LOG_DOMAIN, "Converted to %s (%d bytes)", argv[2], out_len); fwrite(out, out_len, 1, stdout); free(out); gavl_charset_converter_destroy(cnv); gavl_io_destroy(io); gavl_buffer_free(&buf); } bplaum-gavl-b9385e3/src/colorspace_test.c000066400000000000000000002347431513252040200204200ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include //#include "colorspace.h" // Common routines #include #include #include #include #include // #define ALL_PIXELFORMATS #define IN_PIXELFORMAT GAVL_RGBA_FLOAT #define OUT_PIXELFORMAT GAVL_YUVA_FLOAT // Masks for BGR16 and RGB16 formats #define RGB16_LOWER_MASK 0x001f #define RGB16_MIDDLE_MASK 0x07e0 #define RGB16_UPPER_MASK 0xf800 // Extract unsigned char RGB values from 15 bit pixels #define RGB16_TO_R(pixel) ((pixel & RGB16_UPPER_MASK)>>8) #define RGB16_TO_G(pixel) ((pixel & RGB16_MIDDLE_MASK)>>3) #define RGB16_TO_B(pixel) ((pixel & RGB16_LOWER_MASK)<<3) #define RGB15_LOWER_MASK 0x001f #define RGB15_MIDDLE_MASK 0x3e0 #define RGB15_UPPER_MASK 0x7C00 #define RGB15_TO_R(pixel) ((pixel & RGB15_UPPER_MASK)>>7) #define RGB15_TO_G(pixel) ((pixel & RGB15_MIDDLE_MASK)>>2) #define RGB15_TO_B(pixel) ((pixel & RGB15_LOWER_MASK)<<3) // ((((((src[2]<<5)&0xff00)|src[1])<<6)&0xfff00)|src[0])>>3; #define TEST_PICTURE_WIDTH 320 #define TEST_PICTURE_HEIGHT 256 /* * Some braindead YUV conversion (but works at least :-) */ static int * r_to_y = NULL; static int * g_to_y = NULL; static int * b_to_y = NULL; static int * r_to_u = NULL; static int * g_to_u = NULL; static int * b_to_u = NULL; static int * r_to_v = NULL; static int * g_to_v = NULL; static int * b_to_v = NULL; static int * y_to_rgb = NULL; static int * v_to_r = NULL; static int * u_to_g = NULL; static int * v_to_g = NULL; static int * u_to_b = NULL; /* JPEG Quantization */ static int * r_to_yj = NULL; static int * g_to_yj = NULL; static int * b_to_yj = NULL; static int * r_to_uj = NULL; static int * g_to_uj = NULL; static int * b_to_uj = NULL; static int * r_to_vj = NULL; static int * g_to_vj = NULL; static int * b_to_vj = NULL; static int * yj_to_rgb = NULL; static int * vj_to_r = NULL; static int * uj_to_g = NULL; static int * vj_to_g = NULL; static int * uj_to_b = NULL; static void init_yuv() { int i; r_to_y = malloc(0x100 * sizeof(int)); g_to_y = malloc(0x100 * sizeof(int)); b_to_y = malloc(0x100 * sizeof(int)); r_to_u = malloc(0x100 * sizeof(int)); g_to_u = malloc(0x100 * sizeof(int)); b_to_u = malloc(0x100 * sizeof(int)); r_to_v = malloc(0x100 * sizeof(int)); g_to_v = malloc(0x100 * sizeof(int)); b_to_v = malloc(0x100 * sizeof(int)); y_to_rgb = malloc(0x100 * sizeof(int)); v_to_r = malloc(0x100 * sizeof(int)); u_to_g = malloc(0x100 * sizeof(int)); v_to_g = malloc(0x100 * sizeof(int)); u_to_b = malloc(0x100 * sizeof(int)); /* JPEG Quantization */ r_to_yj = malloc(0x100 * sizeof(int)); g_to_yj = malloc(0x100 * sizeof(int)); b_to_yj = malloc(0x100 * sizeof(int)); r_to_uj = malloc(0x100 * sizeof(int)); g_to_uj = malloc(0x100 * sizeof(int)); b_to_uj = malloc(0x100 * sizeof(int)); r_to_vj = malloc(0x100 * sizeof(int)); g_to_vj = malloc(0x100 * sizeof(int)); b_to_vj = malloc(0x100 * sizeof(int)); yj_to_rgb = malloc(0x100 * sizeof(int)); vj_to_r = malloc(0x100 * sizeof(int)); uj_to_g = malloc(0x100 * sizeof(int)); vj_to_g = malloc(0x100 * sizeof(int)); uj_to_b = malloc(0x100 * sizeof(int)); for(i = 0; i < 0x100; i++) { // RGB to YUV conversion r_to_y[i] = (int)(0.257*0x10000 * i + 16 * 0x10000); g_to_y[i] = (int)(0.504*0x10000 * i); b_to_y[i] = (int)(0.098*0x10000 * i); r_to_u[i] = (int)(-0.148*0x10000 * i); g_to_u[i] = (int)(-0.291*0x10000 * i); b_to_u[i] = (int)( 0.439*0x10000 * i + 0x800000); r_to_v[i] = (int)( 0.439*0x10000 * i); g_to_v[i] = (int)(-0.368*0x10000 * i); b_to_v[i] = (int)(-0.071*0x10000 * i + 0x800000); r_to_yj[i] = (int)((0.29900)*0x10000 * i); g_to_yj[i] = (int)((0.58700)*0x10000 * i); b_to_yj[i] = (int)((0.11400)*0x10000 * i); r_to_uj[i] = (int)(-(0.16874)*0x10000 * i); g_to_uj[i] = (int)(-(0.33126)*0x10000 * i); b_to_uj[i] = (int)( (0.50000)*0x10000 * i + 0x800000); r_to_vj[i] = (int)( (0.50000)*0x10000 * i); g_to_vj[i] = (int)(-(0.41869)*0x10000 * i); b_to_vj[i] = (int)(-(0.08131)*0x10000 * i + 0x800000); // YUV to RGB conversion y_to_rgb[i] = (int)(1.164*(i-16)) * 0x10000; v_to_r[i] = (int)( 1.596 * (i - 0x80) * 0x10000); u_to_g[i] = (int)(-0.392 * (i - 0x80) * 0x10000); v_to_g[i] = (int)(-0.813 * (i - 0x80) * 0x10000); u_to_b[i] = (int)( 2.017 * (i - 0x80) * 0x10000); /* JPEG Quantization */ yj_to_rgb[i] = (int)(i * 0x10000); vj_to_r[i] = (int)( 1.40200 * (i - 0x80) * 0x10000); uj_to_g[i] = (int)(-0.34414 * (i - 0x80) * 0x10000); vj_to_g[i] = (int)(-0.71414 * (i - 0x80) * 0x10000); uj_to_b[i] = (int)( 1.77200 * (i - 0x80) * 0x10000); } } #define RECLIP(color) (uint8_t)((color>0xFF)?0xff:((color<0)?0:color)) #define RECLIP_16(color) (uint16_t)((color>0xFFFF)?0xFFFF:((color<0)?0:color)) #define RECLIP_FLOAT(color) (float)((color>1.0)?1.0:((color<0.0)?0.0:color)) #define YUV_2_RGB(y,u,v,r,g,b) i_tmp=(y_to_rgb[y]+v_to_r[v])>>16;\ r=RECLIP(i_tmp);\ i_tmp=(y_to_rgb[y]+u_to_g[u]+v_to_g[v])>>16;\ g=RECLIP(i_tmp);\ i_tmp=(y_to_rgb[y]+u_to_b[u])>>16;\ b=RECLIP(i_tmp); #define YUVJ_2_RGB(y,u,v,r,g,b) i_tmp=(yj_to_rgb[y]+vj_to_r[v])>>16;\ r=RECLIP(i_tmp);\ i_tmp=(yj_to_rgb[y]+uj_to_g[u]+vj_to_g[v])>>16;\ g=RECLIP(i_tmp);\ i_tmp=(yj_to_rgb[y]+uj_to_b[u])>>16;\ b=RECLIP(i_tmp); #define YUV_16_2_RGB(y,u,v,r,g,b) i_tmp=(y_to_rgb[y>>8]+v_to_r[v>>8])>>16;\ r=RECLIP(i_tmp);\ i_tmp=(y_to_rgb[y>>8]+u_to_g[u>>8]+v_to_g[v>>8])>>16;\ g=RECLIP(i_tmp);\ i_tmp=(y_to_rgb[y>>8]+u_to_b[u>>8])>>16;\ b=RECLIP(i_tmp); #define Y_F_TO_8(x) ((int)(x * 255.0 +0.5)) #define UV_F_TO_8(x) ((int)((x+0.5) * 255.0 +0.5)) #define YUV_FLOAT_2_RGB(y,u,v,r,g,b) i_tmp=(yj_to_rgb[Y_F_TO_8(y)]+vj_to_r[UV_F_TO_8(v)])>>16;\ r=RECLIP(i_tmp);\ i_tmp=(yj_to_rgb[Y_F_TO_8(y)]+uj_to_g[UV_F_TO_8(u)]+vj_to_g[UV_F_TO_8(v)])>>16;\ g=RECLIP(i_tmp);\ i_tmp=(yj_to_rgb[Y_F_TO_8(y)]+uj_to_b[UV_F_TO_8(u)])>>16;\ b=RECLIP(i_tmp); static void convert_15_to_24(gavl_video_frame_t * in_frame, gavl_video_frame_t * out_frame, int width, int height) { int i, j; uint16_t * in_pixel; uint8_t * out_pixel; uint8_t * out_pixel_save = out_frame->planes[0]; uint8_t * in_pixel_save = in_frame->planes[0]; for(i = 0; i < height; i++) { in_pixel = (uint16_t*)in_pixel_save; out_pixel = out_pixel_save; for(j = 0; j < width; j++) { out_pixel[0] = RGB15_TO_R(*in_pixel); out_pixel[1] = RGB15_TO_G(*in_pixel); out_pixel[2] = RGB15_TO_B(*in_pixel); in_pixel++; out_pixel += 3; } in_pixel_save += in_frame->strides[0]; out_pixel_save += out_frame->strides[0]; } } static void convert_16_to_24(gavl_video_frame_t * in_frame, gavl_video_frame_t * out_frame, int width, int height) { int i, j; uint16_t * in_pixel; uint8_t * out_pixel; uint8_t * out_pixel_save = out_frame->planes[0]; uint8_t * in_pixel_save = in_frame->planes[0]; for(i = 0; i < height; i++) { in_pixel = (uint16_t*)in_pixel_save; out_pixel = out_pixel_save; for(j = 0; j < width; j++) { out_pixel[0] = RGB16_TO_R(*in_pixel); out_pixel[1] = RGB16_TO_G(*in_pixel); out_pixel[2] = RGB16_TO_B(*in_pixel); in_pixel++; out_pixel += 3; } in_pixel_save += in_frame->strides[0]; out_pixel_save += out_frame->strides[0]; } } static void convert_32_to_24(gavl_video_frame_t * in_frame, gavl_video_frame_t * out_frame, int width, int height) { int i, j; uint8_t * in_pixel; uint8_t * out_pixel; uint8_t * out_pixel_save = out_frame->planes[0]; uint8_t * in_pixel_save = in_frame->planes[0]; for(i = 0; i < height; i++) { in_pixel = (uint8_t*)in_pixel_save; out_pixel = out_pixel_save; for(j = 0; j < width; j++) { out_pixel[0] = in_pixel[0]; out_pixel[1] = in_pixel[1]; out_pixel[2] = in_pixel[2]; in_pixel+=4; out_pixel+=3; } in_pixel_save += in_frame->strides[0]; out_pixel_save += out_frame->strides[0]; } } static void convert_48_to_24(gavl_video_frame_t * in_frame, gavl_video_frame_t * out_frame, int width, int height) { int i, j; uint16_t * in_pixel; uint8_t * out_pixel; uint8_t * out_pixel_save = out_frame->planes[0]; uint8_t * in_pixel_save = in_frame->planes[0]; for(i = 0; i < height; i++) { in_pixel = (uint16_t*)in_pixel_save; out_pixel = out_pixel_save; for(j = 0; j < width; j++) { out_pixel[0] = in_pixel[0] >> 8; out_pixel[1] = in_pixel[1] >> 8; out_pixel[2] = in_pixel[2] >> 8; in_pixel+=3; out_pixel+=3; } in_pixel_save += in_frame->strides[0]; out_pixel_save += out_frame->strides[0]; } } static void convert_graya_32_to_graya_16(gavl_video_frame_t * in_frame, gavl_video_frame_t * out_frame, int width, int height) { int i, j; uint16_t * in_pixel; uint8_t * out_pixel; uint8_t * out_pixel_save = out_frame->planes[0]; uint8_t * in_pixel_save = in_frame->planes[0]; for(i = 0; i < height; i++) { in_pixel = (uint16_t*)in_pixel_save; out_pixel = out_pixel_save; for(j = 0; j < width; j++) { out_pixel[0] = in_pixel[0] >> 8; out_pixel[1] = in_pixel[1] >> 8; in_pixel+=2; out_pixel+=2; } in_pixel_save += in_frame->strides[0]; out_pixel_save += out_frame->strides[0]; } } static void convert_gray_16_to_gray_8(gavl_video_frame_t * in_frame, gavl_video_frame_t * out_frame, int width, int height) { int i, j; uint16_t * in_pixel; uint8_t * out_pixel; uint8_t * out_pixel_save = out_frame->planes[0]; uint8_t * in_pixel_save = in_frame->planes[0]; for(i = 0; i < height; i++) { in_pixel = (uint16_t*)in_pixel_save; out_pixel = out_pixel_save; for(j = 0; j < width; j++) { out_pixel[0] = in_pixel[0] >> 8; in_pixel++; out_pixel++; } in_pixel_save += in_frame->strides[0]; out_pixel_save += out_frame->strides[0]; } } static void convert_gray_float_to_gray_8(gavl_video_frame_t * in_frame, gavl_video_frame_t * out_frame, int width, int height) { int i, j; float * in_pixel; uint8_t * out_pixel; int i_tmp; uint8_t * out_pixel_save = out_frame->planes[0]; uint8_t * in_pixel_save = in_frame->planes[0]; for(i = 0; i < height; i++) { in_pixel = (float*)in_pixel_save; out_pixel = out_pixel_save; for(j = 0; j < width; j++) { i_tmp = (int)(in_pixel[0] * 255.0 + 0.5); out_pixel[0] = RECLIP(i_tmp); in_pixel++; out_pixel++; } in_pixel_save += in_frame->strides[0]; out_pixel_save += out_frame->strides[0]; } } static void convert_graya_float_to_graya_16(gavl_video_frame_t * in_frame, gavl_video_frame_t * out_frame, int width, int height) { int i, j; float * in_pixel; uint8_t * out_pixel; int i_tmp; uint8_t * out_pixel_save = out_frame->planes[0]; uint8_t * in_pixel_save = in_frame->planes[0]; for(i = 0; i < height; i++) { in_pixel = (float*)in_pixel_save; out_pixel = out_pixel_save; for(j = 0; j < width; j++) { i_tmp = (int)(in_pixel[0] * 255.0 + 0.5); out_pixel[0] = RECLIP(i_tmp); i_tmp = (int)(in_pixel[1] * 255.0 + 0.5); out_pixel[1] = RECLIP(i_tmp); in_pixel+=2; out_pixel+=2; } in_pixel_save += in_frame->strides[0]; out_pixel_save += out_frame->strides[0]; } } static void convert_64_to_32(gavl_video_frame_t * in_frame, gavl_video_frame_t * out_frame, int width, int height) { int i, j; uint16_t * in_pixel; uint8_t * out_pixel; uint8_t * out_pixel_save = out_frame->planes[0]; uint8_t * in_pixel_save = in_frame->planes[0]; for(i = 0; i < height; i++) { in_pixel = (uint16_t*)in_pixel_save; out_pixel = out_pixel_save; for(j = 0; j < width; j++) { out_pixel[0] = in_pixel[0] >> 8; out_pixel[1] = in_pixel[1] >> 8; out_pixel[2] = in_pixel[2] >> 8; out_pixel[3] = in_pixel[3] >> 8; in_pixel+=4; out_pixel+=4; } in_pixel_save += in_frame->strides[0]; out_pixel_save += out_frame->strides[0]; } } static void convert_YUVA_32_to_RGBA_32(gavl_video_frame_t * in_frame, gavl_video_frame_t * out_frame, int width, int height) { int i, j, i_tmp; uint8_t * in_pixel; uint8_t * out_pixel; uint8_t * out_pixel_save = out_frame->planes[0]; uint8_t * in_pixel_save = in_frame->planes[0]; for(i = 0; i < height; i++) { in_pixel = in_pixel_save; out_pixel = out_pixel_save; for(j = 0; j < width; j++) { YUV_2_RGB(in_pixel[0], in_pixel[1], in_pixel[2], out_pixel[0], out_pixel[1], out_pixel[2]); out_pixel[3] = in_pixel[3]; in_pixel+=4; out_pixel+=4; } in_pixel_save += in_frame->strides[0]; out_pixel_save += out_frame->strides[0]; } } static void convert_YUVA_64_to_RGBA_32(gavl_video_frame_t * in_frame, gavl_video_frame_t * out_frame, int width, int height) { int i, j, i_tmp; uint16_t * in_pixel; uint8_t * out_pixel; uint8_t * out_pixel_save = out_frame->planes[0]; uint8_t * in_pixel_save = in_frame->planes[0]; for(i = 0; i < height; i++) { in_pixel = (uint16_t *)in_pixel_save; out_pixel = out_pixel_save; for(j = 0; j < width; j++) { YUV_16_2_RGB(in_pixel[0], in_pixel[1], in_pixel[2], out_pixel[0], out_pixel[1], out_pixel[2]); out_pixel[3] = in_pixel[3] >> 8; in_pixel+=4; out_pixel+=4; } in_pixel_save += in_frame->strides[0]; out_pixel_save += out_frame->strides[0]; } } static void convert_YUVA_FLOAT_to_RGBA_32(gavl_video_frame_t * in_frame, gavl_video_frame_t * out_frame, int width, int height) { int i, j, i_tmp; float * in_pixel; uint8_t * out_pixel; uint8_t * out_pixel_save = out_frame->planes[0]; uint8_t * in_pixel_save = in_frame->planes[0]; for(i = 0; i < height; i++) { in_pixel = (float*)in_pixel_save; out_pixel = out_pixel_save; for(j = 0; j < width; j++) { YUV_FLOAT_2_RGB(in_pixel[0], in_pixel[1], in_pixel[2], out_pixel[0], out_pixel[1], out_pixel[2]); i_tmp = (int)(in_pixel[3]*255.0); out_pixel[3] = RECLIP(i_tmp); in_pixel+=4; out_pixel+=4; } in_pixel_save += in_frame->strides[0]; out_pixel_save += out_frame->strides[0]; } } static void convert_YUV_FLOAT_to_RGB_24(gavl_video_frame_t * in_frame, gavl_video_frame_t * out_frame, int width, int height) { int i, j, i_tmp; float * in_pixel; uint8_t * out_pixel; uint8_t * out_pixel_save = out_frame->planes[0]; uint8_t * in_pixel_save = in_frame->planes[0]; for(i = 0; i < height; i++) { in_pixel = (float*)in_pixel_save; out_pixel = out_pixel_save; for(j = 0; j < width; j++) { YUV_FLOAT_2_RGB(in_pixel[0], in_pixel[1], in_pixel[2], out_pixel[0], out_pixel[1], out_pixel[2]); in_pixel+=3; out_pixel+=3; } in_pixel_save += in_frame->strides[0]; out_pixel_save += out_frame->strides[0]; } } static void convert_float_to_24(gavl_video_frame_t * in_frame, gavl_video_frame_t * out_frame, int width, int height) { int i, j, i_tmp; float * in_pixel; uint8_t * out_pixel; uint8_t * out_pixel_save = out_frame->planes[0]; uint8_t * in_pixel_save = in_frame->planes[0]; for(i = 0; i < height; i++) { in_pixel = (float*)in_pixel_save; out_pixel = out_pixel_save; for(j = 0; j < width; j++) { i_tmp = (int)(in_pixel[0] * 255.0 + 0.5); out_pixel[0] = RECLIP(i_tmp); i_tmp = (int)(in_pixel[1] * 255.0 + 0.5); out_pixel[1] = RECLIP(i_tmp); i_tmp = (int)(in_pixel[2] * 255.0 + 0.5); out_pixel[2] = RECLIP(i_tmp); in_pixel+=3; out_pixel+=3; } in_pixel_save += in_frame->strides[0]; out_pixel_save += out_frame->strides[0]; } } static void convert_float_to_32(gavl_video_frame_t * in_frame, gavl_video_frame_t * out_frame, int width, int height) { int i, j, i_tmp; float * in_pixel; uint8_t * out_pixel; uint8_t * out_pixel_save = out_frame->planes[0]; uint8_t * in_pixel_save = in_frame->planes[0]; // fprintf(stderr, "convert_float_to_32: %d %d\n", // in_frame->strides[0], out_frame->strides[0]); for(i = 0; i < height; i++) { in_pixel = (float*)in_pixel_save; out_pixel = out_pixel_save; for(j = 0; j < width; j++) { i_tmp = (int)(in_pixel[0] * 255.0 + 0.5); out_pixel[0] = RECLIP(i_tmp); i_tmp = (int)(in_pixel[1] * 255.0 + 0.5); out_pixel[1] = RECLIP(i_tmp); i_tmp = (int)(in_pixel[2] * 255.0 + 0.5); out_pixel[2] = RECLIP(i_tmp); i_tmp = (int)(in_pixel[3] * 255.0 + 0.5); out_pixel[3] = RECLIP(i_tmp); in_pixel+=4; out_pixel+=4; } in_pixel_save += in_frame->strides[0]; out_pixel_save += out_frame->strides[0]; } } static void convert_YUV_420_P_to_RGB24(gavl_video_frame_t * in_frame, gavl_video_frame_t * out_frame, int width, int height) { int i, j, i_tmp; uint8_t * in_y; uint8_t * in_u; uint8_t * in_v; uint8_t * out_pixel; uint8_t * out_pixel_save = out_frame->planes[0]; uint8_t * in_y_save = in_frame->planes[0]; uint8_t * in_u_save = in_frame->planes[1]; uint8_t * in_v_save = in_frame->planes[2]; for(i = 0; i < height/2; i++) { /* Even Rows */ out_pixel = out_pixel_save; in_y = in_y_save; in_u = in_u_save; in_v = in_v_save; for(j = 0; j < width/2; j++) { YUV_2_RGB(*in_y, *in_u, *in_v, out_pixel[0], out_pixel[1], out_pixel[2]); in_y++; out_pixel += 3; YUV_2_RGB(*in_y, *in_u, *in_v, out_pixel[0], out_pixel[1], out_pixel[2]); in_y++; in_u++; in_v++; out_pixel += 3; } out_pixel_save += out_frame->strides[0]; in_y_save += in_frame->strides[0]; /* Odd Rows */ out_pixel = out_pixel_save; in_y = in_y_save; in_u = in_u_save; in_v = in_v_save; for(j = 0; j < width/2; j++) { YUV_2_RGB(*in_y, *in_u, *in_v, out_pixel[0], out_pixel[1], out_pixel[2]); in_y++; out_pixel += 3; YUV_2_RGB(*in_y, *in_u, *in_v, out_pixel[0], out_pixel[1], out_pixel[2]); in_y++; in_u++; in_v++; out_pixel += 3; } out_pixel_save += out_frame->strides[0]; in_y_save += in_frame->strides[0]; in_u_save += in_frame->strides[1]; in_v_save += in_frame->strides[2]; } } static void convert_YUV_410_P_to_RGB24(gavl_video_frame_t * in_frame, gavl_video_frame_t * out_frame, int width, int height) { int i, j, i_tmp; uint8_t * in_y; uint8_t * in_u; uint8_t * in_v; uint8_t * out_pixel; uint8_t * out_pixel_save = out_frame->planes[0]; uint8_t * in_y_save = in_frame->planes[0]; uint8_t * in_u_save = in_frame->planes[1]; uint8_t * in_v_save = in_frame->planes[2]; for(i = 0; i < height/4; i++) { /* Even Rows */ out_pixel = out_pixel_save; in_y = in_y_save; in_u = in_u_save; in_v = in_v_save; for(j = 0; j < width/4; j++) { YUV_2_RGB(*in_y, *in_u, *in_v, out_pixel[0], out_pixel[1], out_pixel[2]); in_y++; out_pixel += 3; YUV_2_RGB(*in_y, *in_u, *in_v, out_pixel[0], out_pixel[1], out_pixel[2]); in_y++; out_pixel += 3; YUV_2_RGB(*in_y, *in_u, *in_v, out_pixel[0], out_pixel[1], out_pixel[2]); in_y++; out_pixel += 3; YUV_2_RGB(*in_y, *in_u, *in_v, out_pixel[0], out_pixel[1], out_pixel[2]); in_y++; in_u++; in_v++; out_pixel += 3; } out_pixel_save += out_frame->strides[0]; in_y_save += in_frame->strides[0]; /* Odd Rows */ out_pixel = out_pixel_save; in_y = in_y_save; in_u = in_u_save; in_v = in_v_save; for(j = 0; j < width/4; j++) { YUV_2_RGB(*in_y, *in_u, *in_v, out_pixel[0], out_pixel[1], out_pixel[2]); in_y++; out_pixel += 3; YUV_2_RGB(*in_y, *in_u, *in_v, out_pixel[0], out_pixel[1], out_pixel[2]); in_y++; out_pixel += 3; YUV_2_RGB(*in_y, *in_u, *in_v, out_pixel[0], out_pixel[1], out_pixel[2]); in_y++; out_pixel += 3; YUV_2_RGB(*in_y, *in_u, *in_v, out_pixel[0], out_pixel[1], out_pixel[2]); in_y++; in_u++; in_v++; out_pixel += 3; } out_pixel_save += out_frame->strides[0]; in_y_save += in_frame->strides[0]; out_pixel = out_pixel_save; in_y = in_y_save; in_u = in_u_save; in_v = in_v_save; for(j = 0; j < width/4; j++) { YUV_2_RGB(*in_y, *in_u, *in_v, out_pixel[0], out_pixel[1], out_pixel[2]); in_y++; out_pixel += 3; YUV_2_RGB(*in_y, *in_u, *in_v, out_pixel[0], out_pixel[1], out_pixel[2]); in_y++; out_pixel += 3; YUV_2_RGB(*in_y, *in_u, *in_v, out_pixel[0], out_pixel[1], out_pixel[2]); in_y++; out_pixel += 3; YUV_2_RGB(*in_y, *in_u, *in_v, out_pixel[0], out_pixel[1], out_pixel[2]); in_y++; in_u++; in_v++; out_pixel += 3; } out_pixel_save += out_frame->strides[0]; in_y_save += in_frame->strides[0]; out_pixel = out_pixel_save; in_y = in_y_save; in_u = in_u_save; in_v = in_v_save; for(j = 0; j < width/4; j++) { YUV_2_RGB(*in_y, *in_u, *in_v, out_pixel[0], out_pixel[1], out_pixel[2]); in_y++; out_pixel += 3; YUV_2_RGB(*in_y, *in_u, *in_v, out_pixel[0], out_pixel[1], out_pixel[2]); in_y++; out_pixel += 3; YUV_2_RGB(*in_y, *in_u, *in_v, out_pixel[0], out_pixel[1], out_pixel[2]); in_y++; out_pixel += 3; YUV_2_RGB(*in_y, *in_u, *in_v, out_pixel[0], out_pixel[1], out_pixel[2]); in_y++; in_u++; in_v++; out_pixel += 3; } out_pixel_save += out_frame->strides[0]; in_y_save += in_frame->strides[0]; in_u_save += in_frame->strides[1]; in_v_save += in_frame->strides[2]; } } static void convert_YUVJ_420_P_to_RGB24(gavl_video_frame_t * in_frame, gavl_video_frame_t * out_frame, int width, int height) { int i, j, i_tmp; uint8_t * in_y; uint8_t * in_u; uint8_t * in_v; uint8_t * out_pixel; uint8_t * out_pixel_save = out_frame->planes[0]; uint8_t * in_y_save = in_frame->planes[0]; uint8_t * in_u_save = in_frame->planes[1]; uint8_t * in_v_save = in_frame->planes[2]; for(i = 0; i < height/2; i++) { /* Even Rows */ out_pixel = out_pixel_save; in_y = in_y_save; in_u = in_u_save; in_v = in_v_save; for(j = 0; j < width/2; j++) { YUVJ_2_RGB(*in_y, *in_u, *in_v, out_pixel[0], out_pixel[1], out_pixel[2]); in_y++; out_pixel += 3; YUVJ_2_RGB(*in_y, *in_u, *in_v, out_pixel[0], out_pixel[1], out_pixel[2]); in_y++; in_u++; in_v++; out_pixel += 3; } out_pixel_save += out_frame->strides[0]; in_y_save += in_frame->strides[0]; /* Odd Rows */ out_pixel = out_pixel_save; in_y = in_y_save; in_u = in_u_save; in_v = in_v_save; for(j = 0; j < width/2; j++) { YUVJ_2_RGB(*in_y, *in_u, *in_v, out_pixel[0], out_pixel[1], out_pixel[2]); in_y++; out_pixel += 3; YUVJ_2_RGB(*in_y, *in_u, *in_v, out_pixel[0], out_pixel[1], out_pixel[2]); in_y++; in_u++; in_v++; out_pixel += 3; } out_pixel_save += out_frame->strides[0]; in_y_save += in_frame->strides[0]; in_u_save += in_frame->strides[1]; in_v_save += in_frame->strides[2]; } } static void convert_YUV_422_P_to_RGB24(gavl_video_frame_t * in_frame, gavl_video_frame_t * out_frame, int width, int height) { int i, j, i_tmp; uint8_t * in_y; uint8_t * in_u; uint8_t * in_v; uint8_t * out_pixel; uint8_t * out_pixel_save = out_frame->planes[0]; uint8_t * in_y_save = in_frame->planes[0]; uint8_t * in_u_save = in_frame->planes[1]; uint8_t * in_v_save = in_frame->planes[2]; for(i = 0; i < height; i++) { in_y = in_y_save; in_u = in_u_save; in_v = in_v_save; out_pixel = out_pixel_save; for(j = 0; j < width/2; j++) { YUV_2_RGB(*in_y, *in_u, *in_v, out_pixel[0], out_pixel[1], out_pixel[2]); in_y++; out_pixel += 3; YUV_2_RGB(*in_y, *in_u, *in_v, out_pixel[0], out_pixel[1], out_pixel[2]); in_y++; in_u++; in_v++; out_pixel += 3; } out_pixel_save += out_frame->strides[0]; in_y_save += in_frame->strides[0]; in_u_save += in_frame->strides[1]; in_v_save += in_frame->strides[2]; } } static void convert_YUV_422_P_16_to_RGB24(gavl_video_frame_t * in_frame, gavl_video_frame_t * out_frame, int width, int height) { int i, j, i_tmp; uint16_t * in_y; uint16_t * in_u; uint16_t * in_v; uint8_t * out_pixel; uint8_t * out_pixel_save = out_frame->planes[0]; uint8_t * in_y_save = in_frame->planes[0]; uint8_t * in_u_save = in_frame->planes[1]; uint8_t * in_v_save = in_frame->planes[2]; for(i = 0; i < height; i++) { in_y = (uint16_t*)in_y_save; in_u = (uint16_t*)in_u_save; in_v = (uint16_t*)in_v_save; out_pixel = out_pixel_save; for(j = 0; j < width/2; j++) { YUV_2_RGB(((*in_y)>>8), ((*in_u)>>8), ((*in_v)>>8), out_pixel[0], out_pixel[1], out_pixel[2]); in_y++; out_pixel += 3; YUV_2_RGB(((*in_y)>>8), ((*in_u)>>8), ((*in_v)>>8), out_pixel[0], out_pixel[1], out_pixel[2]); in_y++; in_u++; in_v++; out_pixel += 3; } out_pixel_save += out_frame->strides[0]; in_y_save += in_frame->strides[0]; in_u_save += in_frame->strides[1]; in_v_save += in_frame->strides[2]; } } static void convert_YUV_411_P_to_RGB24(gavl_video_frame_t * in_frame, gavl_video_frame_t * out_frame, int width, int height) { int i, j, i_tmp; uint8_t * in_y; uint8_t * in_u; uint8_t * in_v; uint8_t * out_pixel; uint8_t * out_pixel_save = out_frame->planes[0]; uint8_t * in_y_save = in_frame->planes[0]; uint8_t * in_u_save = in_frame->planes[1]; uint8_t * in_v_save = in_frame->planes[2]; for(i = 0; i < height; i++) { in_y = in_y_save; in_u = in_u_save; in_v = in_v_save; out_pixel = out_pixel_save; for(j = 0; j < width/4; j++) { YUV_2_RGB(*in_y, *in_u, *in_v, out_pixel[0], out_pixel[1], out_pixel[2]); in_y++; out_pixel += 3; YUV_2_RGB(*in_y, *in_u, *in_v, out_pixel[0], out_pixel[1], out_pixel[2]); in_y++; out_pixel += 3; YUV_2_RGB(*in_y, *in_u, *in_v, out_pixel[0], out_pixel[1], out_pixel[2]); in_y++; out_pixel += 3; YUV_2_RGB(*in_y, *in_u, *in_v, out_pixel[0], out_pixel[1], out_pixel[2]); in_y++; in_u++; in_v++; out_pixel += 3; } out_pixel_save += out_frame->strides[0]; in_y_save += in_frame->strides[0]; in_u_save += in_frame->strides[1]; in_v_save += in_frame->strides[2]; } } static void convert_YUVJ_422_P_to_RGB24(gavl_video_frame_t * in_frame, gavl_video_frame_t * out_frame, int width, int height) { int i, j, i_tmp; uint8_t * in_y; uint8_t * in_u; uint8_t * in_v; uint8_t * out_pixel; uint8_t * out_pixel_save = out_frame->planes[0]; uint8_t * in_y_save = in_frame->planes[0]; uint8_t * in_u_save = in_frame->planes[1]; uint8_t * in_v_save = in_frame->planes[2]; for(i = 0; i < height; i++) { in_y = in_y_save; in_u = in_u_save; in_v = in_v_save; out_pixel = out_pixel_save; for(j = 0; j < width/2; j++) { YUVJ_2_RGB(*in_y, *in_u, *in_v, out_pixel[0], out_pixel[1], out_pixel[2]); in_y++; out_pixel += 3; YUVJ_2_RGB(*in_y, *in_u, *in_v, out_pixel[0], out_pixel[1], out_pixel[2]); in_y++; in_u++; in_v++; out_pixel += 3; } out_pixel_save += out_frame->strides[0]; in_y_save += in_frame->strides[0]; in_u_save += in_frame->strides[1]; in_v_save += in_frame->strides[2]; } } static void convert_YUV_444_P_to_RGB24(gavl_video_frame_t * in_frame, gavl_video_frame_t * out_frame, int width, int height) { int i, j, i_tmp; uint8_t * in_y; uint8_t * in_u; uint8_t * in_v; uint8_t * out_pixel; uint8_t * out_pixel_save = out_frame->planes[0]; uint8_t * in_y_save = in_frame->planes[0]; uint8_t * in_u_save = in_frame->planes[1]; uint8_t * in_v_save = in_frame->planes[2]; for(i = 0; i < height; i++) { in_y = in_y_save; in_u = in_u_save; in_v = in_v_save; out_pixel = out_pixel_save; for(j = 0; j < width; j++) { YUV_2_RGB(*in_y, *in_u, *in_v, out_pixel[0], out_pixel[1], out_pixel[2]); in_y++; in_u++; in_v++; out_pixel += 3; } out_pixel_save += out_frame->strides[0]; in_y_save += in_frame->strides[0]; in_u_save += in_frame->strides[1]; in_v_save += in_frame->strides[2]; } } static void convert_YUV_444_P_16_to_RGB24(gavl_video_frame_t * in_frame, gavl_video_frame_t * out_frame, int width, int height) { int i, j, i_tmp; uint16_t * in_y; uint16_t * in_u; uint16_t * in_v; uint8_t * out_pixel; uint8_t * out_pixel_save = out_frame->planes[0]; uint8_t * in_y_save = in_frame->planes[0]; uint8_t * in_u_save = in_frame->planes[1]; uint8_t * in_v_save = in_frame->planes[2]; for(i = 0; i < height; i++) { in_y = (uint16_t*)in_y_save; in_u = (uint16_t*)in_u_save; in_v = (uint16_t*)in_v_save; out_pixel = out_pixel_save; for(j = 0; j < width; j++) { YUV_2_RGB(((*in_y)>>8), ((*in_u)>>8), ((*in_v)>>8), out_pixel[0], out_pixel[1], out_pixel[2]); in_y++; in_u++; in_v++; out_pixel += 3; } out_pixel_save += out_frame->strides[0]; in_y_save += in_frame->strides[0]; in_u_save += in_frame->strides[1]; in_v_save += in_frame->strides[2]; } } static void convert_YUVJ_444_P_to_RGB24(gavl_video_frame_t * in_frame, gavl_video_frame_t * out_frame, int width, int height) { int i, j, i_tmp; uint8_t * in_y; uint8_t * in_u; uint8_t * in_v; uint8_t * out_pixel; uint8_t * out_pixel_save = out_frame->planes[0]; uint8_t * in_y_save = in_frame->planes[0]; uint8_t * in_u_save = in_frame->planes[1]; uint8_t * in_v_save = in_frame->planes[2]; for(i = 0; i < height; i++) { in_y = in_y_save; in_u = in_u_save; in_v = in_v_save; out_pixel = out_pixel_save; for(j = 0; j < width; j++) { YUVJ_2_RGB(*in_y, *in_u, *in_v, out_pixel[0], out_pixel[1], out_pixel[2]); in_y++; in_u++; in_v++; out_pixel += 3; } out_pixel_save += out_frame->strides[0]; in_y_save += in_frame->strides[0]; in_u_save += in_frame->strides[1]; in_v_save += in_frame->strides[2]; } } static void convert_YUY2_to_RGB24(gavl_video_frame_t * in_frame, gavl_video_frame_t * out_frame, int width, int height) { int i, j, i_tmp; uint8_t * in_pixel; uint8_t * out_pixel; uint8_t * out_pixel_save = out_frame->planes[0]; uint8_t * in_pixel_save = in_frame->planes[0]; for(i = 0; i < height; i++) { in_pixel = in_pixel_save; out_pixel = out_pixel_save; for(j = 0; j < width/2; j++) { YUV_2_RGB(in_pixel[0], in_pixel[1], in_pixel[3], out_pixel[0], out_pixel[1], out_pixel[2]); out_pixel+=3; YUV_2_RGB(in_pixel[2], in_pixel[1], in_pixel[3], out_pixel[0], out_pixel[1], out_pixel[2]); out_pixel+=3; in_pixel += 4; } in_pixel_save += in_frame->strides[0]; out_pixel_save += out_frame->strides[0]; } } static void convert_UYVY_to_RGB24(gavl_video_frame_t * in_frame, gavl_video_frame_t * out_frame, int width, int height) { int i, j, i_tmp; uint8_t * in_pixel; uint8_t * out_pixel; uint8_t * out_pixel_save = out_frame->planes[0]; uint8_t * in_pixel_save = in_frame->planes[0]; for(i = 0; i < height; i++) { in_pixel = in_pixel_save; out_pixel = out_pixel_save; for(j = 0; j < width/2; j++) { YUV_2_RGB(in_pixel[1], in_pixel[0], in_pixel[2], out_pixel[0], out_pixel[1], out_pixel[2]); out_pixel+=3; YUV_2_RGB(in_pixel[3], in_pixel[0], in_pixel[2], out_pixel[0], out_pixel[1], out_pixel[2]); out_pixel+=3; in_pixel += 4; } in_pixel_save += in_frame->strides[0]; out_pixel_save += out_frame->strides[0]; } } /* * This function writes a png file of the video frame in the given format * The format can have all supported colorspaces, so we'll convert them * without the use of gavl (i.e. in less optimized but bugfree code) */ /* On error, FALSE is returned */ static int write_file(const char * name, gavl_video_frame_t * frame, gavl_video_format_t * format) { int color_type; int png_transforms; gavl_video_frame_t * tmp_frame; gavl_video_frame_t * out_frame = NULL; gavl_video_format_t tmp_format; int i; char ** row_pointers; png_structp png_ptr; png_infop info_ptr; FILE *fp = fopen(name, "wb"); if (!fp) { fprintf(stderr, "Cannot open file %s, exiting \n", name); _exit(-1); return 0; } png_ptr = png_create_write_struct (PNG_LIBPNG_VER_STRING, NULL, NULL, NULL); if (!png_ptr) return 0; info_ptr = png_create_info_struct(png_ptr); if (!info_ptr) { png_destroy_write_struct(&png_ptr, (png_infopp)NULL); return 0; } setjmp(png_jmpbuf(png_ptr)); png_init_io(png_ptr, fp); if(gavl_pixelformat_is_gray(format->pixelformat)) { if(gavl_pixelformat_has_alpha(format->pixelformat)) color_type = PNG_COLOR_TYPE_GRAY_ALPHA; else color_type = PNG_COLOR_TYPE_GRAY; } else { if(gavl_pixelformat_has_alpha(format->pixelformat)) color_type = PNG_COLOR_TYPE_RGB_ALPHA; else color_type = PNG_COLOR_TYPE_RGB; } png_set_IHDR(png_ptr, info_ptr, format->image_width, format->image_height, 8, color_type, PNG_INTERLACE_NONE, PNG_COMPRESSION_TYPE_DEFAULT, PNG_FILTER_TYPE_DEFAULT); /* Set up the temporary video frame */ tmp_format.image_width = format->image_width; tmp_format.image_height = format->image_height; tmp_format.frame_width = format->frame_width; tmp_format.frame_height = format->frame_height; /* We convert everything to either RGB24, BGR24 or RGBA */ switch(format->pixelformat) { case GAVL_BGR_15: case GAVL_BGR_16: case GAVL_BGR_24: case GAVL_BGR_32: png_transforms = PNG_TRANSFORM_BGR; tmp_format.pixelformat = GAVL_BGR_24; break; case GAVL_RGBA_64: case GAVL_RGBA_FLOAT: case GAVL_YUVA_32: case GAVL_YUVA_64: case GAVL_YUVA_FLOAT: png_transforms = PNG_TRANSFORM_IDENTITY; tmp_format.pixelformat = GAVL_RGBA_32; break; default: png_transforms = PNG_TRANSFORM_IDENTITY; tmp_format.pixelformat = GAVL_RGB_24; } /* Allocate the video frame structure */ tmp_frame = NULL; switch(format->pixelformat) { case GAVL_RGB_15: case GAVL_BGR_15: tmp_frame = gavl_video_frame_create(&tmp_format); convert_15_to_24(frame, tmp_frame, format->image_width, format->image_height); out_frame = tmp_frame; break; case GAVL_RGB_16: case GAVL_BGR_16: tmp_frame = gavl_video_frame_create(&tmp_format); convert_16_to_24(frame, tmp_frame, format->image_width, format->image_height); out_frame = tmp_frame; break; case GAVL_GRAY_16: tmp_frame = gavl_video_frame_create(&tmp_format); convert_gray_16_to_gray_8(frame, tmp_frame, format->image_width, format->image_height); out_frame = tmp_frame; break; case GAVL_GRAY_FLOAT: tmp_frame = gavl_video_frame_create(&tmp_format); convert_gray_float_to_gray_8(frame, tmp_frame, format->image_width, format->image_height); out_frame = tmp_frame; break; case GAVL_GRAYA_FLOAT: tmp_frame = gavl_video_frame_create(&tmp_format); convert_graya_float_to_graya_16(frame, tmp_frame, format->image_width, format->image_height); out_frame = tmp_frame; break; case GAVL_GRAYA_32: tmp_frame = gavl_video_frame_create(&tmp_format); convert_graya_32_to_graya_16(frame, tmp_frame, format->image_width, format->image_height); out_frame = tmp_frame; break; case GAVL_GRAY_8: case GAVL_GRAYA_16: case GAVL_RGB_24: case GAVL_BGR_24: case GAVL_RGBA_32: out_frame = frame; break; case GAVL_RGB_48: tmp_frame = gavl_video_frame_create(&tmp_format); convert_48_to_24(frame, tmp_frame, format->image_width, format->image_height); out_frame = tmp_frame; break; case GAVL_RGBA_64: tmp_frame = gavl_video_frame_create(&tmp_format); convert_64_to_32(frame, tmp_frame, format->image_width, format->image_height); out_frame = tmp_frame; break; case GAVL_RGB_FLOAT: tmp_frame = gavl_video_frame_create(&tmp_format); convert_float_to_24(frame, tmp_frame, format->image_width, format->image_height); out_frame = tmp_frame; break; case GAVL_RGBA_FLOAT: tmp_frame = gavl_video_frame_create(&tmp_format); convert_float_to_32(frame, tmp_frame, format->image_width, format->image_height); out_frame = tmp_frame; break; case GAVL_RGB_32: case GAVL_BGR_32: tmp_frame = gavl_video_frame_create(&tmp_format); convert_32_to_24(frame, tmp_frame, format->image_width, format->image_height); out_frame = tmp_frame; break; case GAVL_YUY2: tmp_frame = gavl_video_frame_create(&tmp_format); convert_YUY2_to_RGB24(frame, tmp_frame, format->image_width, format->image_height); out_frame = tmp_frame; break; case GAVL_YUVA_32: tmp_frame = gavl_video_frame_create(&tmp_format); convert_YUVA_32_to_RGBA_32(frame, tmp_frame, format->image_width, format->image_height); out_frame = tmp_frame; break; case GAVL_YUVA_64: tmp_frame = gavl_video_frame_create(&tmp_format); convert_YUVA_64_to_RGBA_32(frame, tmp_frame, format->image_width, format->image_height); out_frame = tmp_frame; break; case GAVL_YUVA_FLOAT: tmp_frame = gavl_video_frame_create(&tmp_format); convert_YUVA_FLOAT_to_RGBA_32(frame, tmp_frame, format->image_width, format->image_height); out_frame = tmp_frame; break; case GAVL_YUV_FLOAT: tmp_frame = gavl_video_frame_create(&tmp_format); convert_YUV_FLOAT_to_RGB_24(frame, tmp_frame, format->image_width, format->image_height); out_frame = tmp_frame; break; case GAVL_UYVY: tmp_frame = gavl_video_frame_create(&tmp_format); convert_UYVY_to_RGB24(frame, tmp_frame, format->image_width, format->image_height); out_frame = tmp_frame; break; case GAVL_YUV_420_P: tmp_frame = gavl_video_frame_create(&tmp_format); convert_YUV_420_P_to_RGB24(frame, tmp_frame, format->image_width, format->image_height); out_frame = tmp_frame; break; case GAVL_YUV_410_P: tmp_frame = gavl_video_frame_create(&tmp_format); convert_YUV_410_P_to_RGB24(frame, tmp_frame, format->image_width, format->image_height); out_frame = tmp_frame; break; case GAVL_YUV_422_P: tmp_frame = gavl_video_frame_create(&tmp_format); convert_YUV_422_P_to_RGB24(frame, tmp_frame, format->image_width, format->image_height); out_frame = tmp_frame; break; case GAVL_YUV_422_P_16: tmp_frame = gavl_video_frame_create(&tmp_format); convert_YUV_422_P_16_to_RGB24(frame, tmp_frame, format->image_width, format->image_height); out_frame = tmp_frame; break; case GAVL_YUV_411_P: tmp_frame = gavl_video_frame_create(&tmp_format); convert_YUV_411_P_to_RGB24(frame, tmp_frame, format->image_width, format->image_height); out_frame = tmp_frame; break; case GAVL_YUV_444_P: tmp_frame = gavl_video_frame_create(&tmp_format); convert_YUV_444_P_to_RGB24(frame, tmp_frame, format->image_width, format->image_height); out_frame = tmp_frame; break; case GAVL_YUV_444_P_16: tmp_frame = gavl_video_frame_create(&tmp_format); convert_YUV_444_P_16_to_RGB24(frame, tmp_frame, format->image_width, format->image_height); out_frame = tmp_frame; break; case GAVL_YUVJ_420_P: tmp_frame = gavl_video_frame_create(&tmp_format); convert_YUVJ_420_P_to_RGB24(frame, tmp_frame, format->image_width, format->image_height); out_frame = tmp_frame; break; case GAVL_YUVJ_422_P: tmp_frame = gavl_video_frame_create(&tmp_format); convert_YUVJ_422_P_to_RGB24(frame, tmp_frame, format->image_width, format->image_height); out_frame = tmp_frame; break; case GAVL_YUVJ_444_P: tmp_frame = gavl_video_frame_create(&tmp_format); convert_YUVJ_444_P_to_RGB24(frame, tmp_frame, format->image_width, format->image_height); out_frame = tmp_frame; break; case GAVL_PIXELFORMAT_NONE: break; } /* Set up the row pointers */ row_pointers = malloc(format->image_height * sizeof(char*)); for(i = 0; i < format->image_height; i++) row_pointers[i] = (char*)(out_frame->planes[0] + i * out_frame->strides[0]); png_set_rows(png_ptr, info_ptr, (png_bytep*)row_pointers); png_write_png(png_ptr, info_ptr, png_transforms, NULL); free(row_pointers); if(tmp_frame) gavl_video_frame_destroy(tmp_frame); png_destroy_write_struct(&png_ptr, &info_ptr); fclose(fp); return 1; } /********************************************************** * Test picture generator **********************************************************/ static uint8_t colorbar_colors[16][2][3] = { { { 0.0, 0.0, 0.0 }, { 1.0, 1.0, 1.0, } /* White */ }, { { 1.0, 1.0, 1.0 }, { 1.0, 1.0, 1.0, } }, { { 0.0, 0.0, 0.0 }, { 1.0, 1.0, 0.0, } /* Yellow */ }, { { 1.0, 1.0, 1.0 }, { 1.0, 1.0, 0.0, } }, { { 0.0, 0.0, 0.0 }, { 0.0, 1.0, 1.0, } /* Cyan */ }, { { 1.0, 1.0, 1.0 }, { 0.0, 1.0, 1.0, } }, { { 0.0, 0.0, 0.0 }, { 0.0, 1.0, 0.0, } /* Green */ }, { { 1.0, 1.0, 1.0 }, { 0.0, 1.0, 0.0, } }, { { 0.0, 0.0, 0.0 }, { 1.0, 0.0, 1.0, } /* Magenta */ }, { { 1.0, 1.0, 1.0 }, { 1.0, 0.0, 1.0, } }, { { 0.0, 0.0, 0.0 }, { 1.0, 0.0, 0.0, } /* Red */ }, { { 1.0, 1.0, 1.0 }, { 1.0, 0.0, 0.0, } }, { { 0.0, 0.0, 0.0 }, { 0.0, 0.0, 1.0, } /* Blue */ }, { { 1.0, 1.0, 1.0 }, { 0.0, 0.0, 1.0, } }, { { 0.0, 0.0, 0.0 }, { 0.0, 0.0, 0.0, }, /* Black */ }, { { 1.0, 1.0, 1.0 }, { 0.0, 0.0, 0.0, } } }; // #define COLORBAR_HORIZONTAL static void get_pixel_colorbar(int x, int y, float * ret) { int color_index; float r_tmp, g_tmp, b_tmp, alpha; #ifdef COLORBAR_HORIZONTAL alpha = (float)(TEST_PICTURE_WIDTH - x) / (float)(TEST_PICTURE_WIDTH); color_index = (y * 16) / (TEST_PICTURE_HEIGHT - 1); #else alpha = (float)(TEST_PICTURE_HEIGHT - y) / (float)(TEST_PICTURE_HEIGHT); color_index = (x * 16) / (TEST_PICTURE_WIDTH - 1); #endif if(color_index >= 16) color_index = 15; alpha = RECLIP_FLOAT(alpha); /* fprintf(stderr, "y: %d alpha: %d\n", y ,(int)alpha); */ // colorbar_colors[16][2][3] r_tmp = (colorbar_colors[color_index][0][0] * (1.0 - alpha) + colorbar_colors[color_index][1][0] * alpha); g_tmp = (colorbar_colors[color_index][0][1] * (1.0 - alpha) + colorbar_colors[color_index][1][1] * alpha); b_tmp = (colorbar_colors[color_index][0][2] * (1.0 - alpha) + colorbar_colors[color_index][1][2] * alpha); /* r_tmp = colorbar_colors[color_index][1][0]; */ /* g_tmp = colorbar_colors[color_index][1][1]; */ /* b_tmp = colorbar_colors[color_index][1][2]; */ // a_tmp = 0xFF; /* Not used for now */ ret[0] = RECLIP_FLOAT(r_tmp); ret[1] = RECLIP_FLOAT(g_tmp); ret[2] = RECLIP_FLOAT(b_tmp); ret[3] = RECLIP_FLOAT(alpha); } #define PACK_RGB16(_r,_g,_b,_pixel) \ _pixel=((((((_r<<5)&0xff00)|_g)<<6)&0xfff00)|_b)>>3 #define PACK_RGB15(_r,_g,_b,_pixel) \ _pixel=((((((_r<<5)&0xff00)|_g)<<5)&0xfff00)|_b)>>3 #define FLOAT_TO_8(f) (int)(f * 255.0 + 0.5) #define FLOAT_TO_16(f) (int)(f * 65535.0 + 0.5) #define RGB_TO_Y() yuv_f[0] = (0.299*tmp_f[0]+0.587*tmp_f[1]+0.114*tmp_f[2]) #define RGB_TO_YUV() RGB_TO_Y(); \ yuv_f[1] = (-0.168736 * tmp_f[0] -0.331264 * tmp_f[1] + 0.500 * tmp_f[2]); \ yuv_f[2] = (0.500 * tmp_f[0] -0.418688 * tmp_f[1] - 0.081312 * tmp_f[2]) #define Y_TO_8(d) d=(int)(yuv_f[0]*219.0+0.5)+16 #define U_TO_8(d) d=(int)(yuv_f[1]*224.0+0.5)+128 #define V_TO_8(d) d=(int)(yuv_f[2]*224.0+0.5)+128 #define Y_TO_16(d) d=((int)(yuv_f[0]*219.0+0.5)+16) << 8; #define U_TO_16(d) d=((int)(yuv_f[1]*224.0+0.5)+128) << 8; #define V_TO_16(d) d=((int)(yuv_f[2]*224.0+0.5)+128) << 8; #define YJ_TO_8(d) d=RECLIP((int)(yuv_f[0]*255.0+0.5)) #define UJ_TO_8(d) d=RECLIP((int)(yuv_f[1]*255.0+0.5)+128) #define VJ_TO_8(d) d=RECLIP((int)(yuv_f[2]*255.0+0.5)+128) static gavl_video_frame_t * create_picture(gavl_pixelformat_t pixelformat, void (*get_pixel)(int x, int y, float * ret)) { int r_tmp; int g_tmp; int b_tmp; int a_tmp; float tmp_f[4]; float yuv_f[4]; uint8_t * pixel; uint16_t * pixel_16; float * pixel_float; uint8_t * y; uint8_t * u; uint8_t * v; uint16_t * y_16; uint16_t * u_16; uint16_t * v_16; int row, col; gavl_video_frame_t * ret; gavl_video_format_t format; format.pixelformat = pixelformat; format.image_width = TEST_PICTURE_WIDTH; format.image_height = TEST_PICTURE_HEIGHT; format.frame_width = TEST_PICTURE_WIDTH; format.frame_height = TEST_PICTURE_HEIGHT; format.pixel_width = 1; format.pixel_height = 1; ret = gavl_video_frame_create(&format); switch(pixelformat) { case GAVL_RGB_15: for(row = 0; row < TEST_PICTURE_HEIGHT; row++) { pixel_16 = (uint16_t*)(ret->planes[0] + row * ret->strides[0]); for(col = 0; col < TEST_PICTURE_WIDTH; col++) { get_pixel(col, row, tmp_f); r_tmp = FLOAT_TO_8(tmp_f[0]); r_tmp = RECLIP(r_tmp); g_tmp = FLOAT_TO_8(tmp_f[1]); g_tmp = RECLIP(g_tmp); b_tmp = FLOAT_TO_8(tmp_f[2]); b_tmp = RECLIP(b_tmp); PACK_RGB15(r_tmp, g_tmp, b_tmp, *pixel_16); pixel_16++; } } break; case GAVL_BGR_15: for(row = 0; row < TEST_PICTURE_HEIGHT; row++) { pixel_16 = (uint16_t*)(ret->planes[0] + row * ret->strides[0]); for(col = 0; col < TEST_PICTURE_WIDTH; col++) { get_pixel(col, row, tmp_f); r_tmp = FLOAT_TO_8(tmp_f[0]); r_tmp = RECLIP(r_tmp); g_tmp = FLOAT_TO_8(tmp_f[1]); g_tmp = RECLIP(g_tmp); b_tmp = FLOAT_TO_8(tmp_f[2]); b_tmp = RECLIP(b_tmp); PACK_RGB15(b_tmp, g_tmp, r_tmp, *pixel_16); pixel_16++; } } break; case GAVL_RGB_16: for(row = 0; row < TEST_PICTURE_HEIGHT; row++) { pixel_16 = (uint16_t*)(ret->planes[0] + row * ret->strides[0]); for(col = 0; col < TEST_PICTURE_WIDTH; col++) { get_pixel(col, row, tmp_f); r_tmp = FLOAT_TO_8(tmp_f[0]); r_tmp = RECLIP(r_tmp); g_tmp = FLOAT_TO_8(tmp_f[1]); g_tmp = RECLIP(g_tmp); b_tmp = FLOAT_TO_8(tmp_f[2]); b_tmp = RECLIP(b_tmp); PACK_RGB16(r_tmp, g_tmp, b_tmp, *pixel_16); pixel_16++; } } break; case GAVL_BGR_16: for(row = 0; row < TEST_PICTURE_HEIGHT; row++) { pixel_16 = (uint16_t*)(ret->planes[0] + row * ret->strides[0]); for(col = 0; col < TEST_PICTURE_WIDTH; col++) { get_pixel(col, row, tmp_f); r_tmp = FLOAT_TO_8(tmp_f[0]); r_tmp = RECLIP(r_tmp); g_tmp = FLOAT_TO_8(tmp_f[1]); g_tmp = RECLIP(g_tmp); b_tmp = FLOAT_TO_8(tmp_f[2]); b_tmp = RECLIP(b_tmp); PACK_RGB16(b_tmp, g_tmp, r_tmp, *pixel_16); pixel_16++; } } break; case GAVL_RGB_24: for(row = 0; row < TEST_PICTURE_HEIGHT; row++) { pixel = ret->planes[0] + row * ret->strides[0]; for(col = 0; col < TEST_PICTURE_WIDTH; col++) { get_pixel(col, row, tmp_f); r_tmp = FLOAT_TO_8(tmp_f[0]); r_tmp = RECLIP(r_tmp); g_tmp = FLOAT_TO_8(tmp_f[1]); g_tmp = RECLIP(g_tmp); b_tmp = FLOAT_TO_8(tmp_f[2]); b_tmp = RECLIP(b_tmp); pixel[0] = r_tmp; pixel[1] = g_tmp; pixel[2] = b_tmp; pixel += 3; } } break; case GAVL_BGR_24: for(row = 0; row < TEST_PICTURE_HEIGHT; row++) { pixel = ret->planes[0] + row * ret->strides[0]; for(col = 0; col < TEST_PICTURE_WIDTH; col++) { get_pixel(col, row, tmp_f); r_tmp = FLOAT_TO_8(tmp_f[0]); r_tmp = RECLIP(r_tmp); g_tmp = FLOAT_TO_8(tmp_f[1]); g_tmp = RECLIP(g_tmp); b_tmp = FLOAT_TO_8(tmp_f[2]); b_tmp = RECLIP(b_tmp); pixel[2] = r_tmp; pixel[1] = g_tmp; pixel[0] = b_tmp; pixel += 3; } } break; case GAVL_RGB_32: for(row = 0; row < TEST_PICTURE_HEIGHT; row++) { pixel = ret->planes[0] + row * ret->strides[0]; for(col = 0; col < TEST_PICTURE_WIDTH; col++) { get_pixel(col, row, tmp_f); r_tmp = FLOAT_TO_8(tmp_f[0]); r_tmp = RECLIP(r_tmp); g_tmp = FLOAT_TO_8(tmp_f[1]); g_tmp = RECLIP(g_tmp); b_tmp = FLOAT_TO_8(tmp_f[2]); b_tmp = RECLIP(b_tmp); pixel[0] = r_tmp; pixel[1] = g_tmp; pixel[2] = b_tmp; pixel += 4; } } break; case GAVL_BGR_32: for(row = 0; row < TEST_PICTURE_HEIGHT; row++) { pixel = ret->planes[0] + row * ret->strides[0]; for(col = 0; col < TEST_PICTURE_WIDTH; col++) { get_pixel(col, row, tmp_f); r_tmp = FLOAT_TO_8(tmp_f[0]); r_tmp = RECLIP(r_tmp); g_tmp = FLOAT_TO_8(tmp_f[1]); g_tmp = RECLIP(g_tmp); b_tmp = FLOAT_TO_8(tmp_f[2]); b_tmp = RECLIP(b_tmp); pixel[2] = r_tmp; pixel[1] = g_tmp; pixel[0] = b_tmp; pixel += 4; } } break; case GAVL_RGBA_32: for(row = 0; row < TEST_PICTURE_HEIGHT; row++) { pixel = ret->planes[0] + row * ret->strides[0]; for(col = 0; col < TEST_PICTURE_WIDTH; col++) { get_pixel(col, row, tmp_f); r_tmp = FLOAT_TO_8(tmp_f[0]); r_tmp = RECLIP(r_tmp); g_tmp = FLOAT_TO_8(tmp_f[1]); g_tmp = RECLIP(g_tmp); b_tmp = FLOAT_TO_8(tmp_f[2]); b_tmp = RECLIP(b_tmp); a_tmp = FLOAT_TO_8(tmp_f[3]); a_tmp = RECLIP(a_tmp); pixel[0] = r_tmp; pixel[1] = g_tmp; pixel[2] = b_tmp; pixel[3] = a_tmp; pixel += 4; } } break; case GAVL_RGB_48: for(row = 0; row < TEST_PICTURE_HEIGHT; row++) { pixel_16 = (uint16_t*)(ret->planes[0] + row * ret->strides[0]); for(col = 0; col < TEST_PICTURE_WIDTH; col++) { get_pixel(col, row, tmp_f); r_tmp = FLOAT_TO_16(tmp_f[0]); r_tmp = RECLIP_16(r_tmp); g_tmp = FLOAT_TO_16(tmp_f[1]); g_tmp = RECLIP_16(g_tmp); b_tmp = FLOAT_TO_16(tmp_f[2]); b_tmp = RECLIP_16(b_tmp); pixel_16[0] = r_tmp; pixel_16[1] = g_tmp; pixel_16[2] = b_tmp; pixel_16 += 3; } } break; case GAVL_RGBA_64: // fprintf(stderr, "STRIDES: %d\n", ret->strides[0]); for(row = 0; row < TEST_PICTURE_HEIGHT; row++) { pixel_16 = (uint16_t*)(ret->planes[0] + row * ret->strides[0]); for(col = 0; col < TEST_PICTURE_WIDTH; col++) { get_pixel(col, row, tmp_f); r_tmp = FLOAT_TO_16(tmp_f[0]); r_tmp = RECLIP_16(r_tmp); g_tmp = FLOAT_TO_16(tmp_f[1]); g_tmp = RECLIP_16(g_tmp); b_tmp = FLOAT_TO_16(tmp_f[2]); b_tmp = RECLIP_16(b_tmp); a_tmp = FLOAT_TO_16(tmp_f[3]); a_tmp = RECLIP_16(a_tmp); pixel_16[0] = r_tmp; pixel_16[1] = g_tmp; pixel_16[2] = b_tmp; pixel_16[3] = a_tmp; pixel_16 += 4; } } // gavl_video_frame_dump(ret, &format, "TEST"); break; case GAVL_RGB_FLOAT: for(row = 0; row < TEST_PICTURE_HEIGHT; row++) { pixel_float = (float*)(ret->planes[0] + row * ret->strides[0]); for(col = 0; col < TEST_PICTURE_WIDTH; col++) { get_pixel(col, row, tmp_f); pixel_float[0] = tmp_f[0]; pixel_float[1] = tmp_f[1]; pixel_float[2] = tmp_f[2]; pixel_float += 3; } } break; case GAVL_RGBA_FLOAT: for(row = 0; row < TEST_PICTURE_HEIGHT; row++) { pixel_float = (float*)(ret->planes[0] + row * ret->strides[0]); for(col = 0; col < TEST_PICTURE_WIDTH; col++) { get_pixel(col, row, tmp_f); pixel_float[0] = tmp_f[0]; pixel_float[1] = tmp_f[1]; pixel_float[2] = tmp_f[2]; pixel_float[3] = tmp_f[3]; pixel_float += 4; } } break; case GAVL_YUY2: for(row = 0; row < TEST_PICTURE_HEIGHT; row++) { pixel = ret->planes[0] + row * ret->strides[0]; for(col = 0; col < TEST_PICTURE_WIDTH/2; col++) { get_pixel(2*col, row, tmp_f); RGB_TO_YUV(); Y_TO_8(pixel[0]); U_TO_8(pixel[1]); V_TO_8(pixel[3]); get_pixel(2*col+1, row, tmp_f); RGB_TO_Y(); Y_TO_8(pixel[2]); pixel+= 4; } } break; case GAVL_YUVA_32: for(row = 0; row < TEST_PICTURE_HEIGHT; row++) { pixel = ret->planes[0] + row * ret->strides[0]; for(col = 0; col < TEST_PICTURE_WIDTH; col++) { get_pixel(col, row, tmp_f); RGB_TO_YUV(); Y_TO_8(pixel[0]); U_TO_8(pixel[1]); V_TO_8(pixel[2]); a_tmp = FLOAT_TO_8(tmp_f[3]); a_tmp = RECLIP(a_tmp); pixel[3] = a_tmp; pixel+= 4; } } break; case GAVL_YUVA_64: for(row = 0; row < TEST_PICTURE_HEIGHT; row++) { pixel_16 = (uint16_t*)(ret->planes[0] + row * ret->strides[0]); for(col = 0; col < TEST_PICTURE_WIDTH; col++) { get_pixel(col, row, tmp_f); RGB_TO_YUV(); Y_TO_16(pixel_16[0]); U_TO_16(pixel_16[1]); V_TO_16(pixel_16[2]); a_tmp = FLOAT_TO_16(tmp_f[3]); a_tmp = RECLIP_16(a_tmp); pixel_16[3] = a_tmp; pixel_16+= 4; } } break; case GAVL_YUVA_FLOAT: for(row = 0; row < TEST_PICTURE_HEIGHT; row++) { pixel_float = (float*)(ret->planes[0] + row * ret->strides[0]); for(col = 0; col < TEST_PICTURE_WIDTH; col++) { get_pixel(col, row, tmp_f); RGB_TO_YUV(); pixel_float[0] = yuv_f[0]; pixel_float[1] = yuv_f[1]; pixel_float[2] = yuv_f[2]; pixel_float[3] = tmp_f[3]; pixel_float+= 4; } } break; case GAVL_GRAYA_FLOAT: for(row = 0; row < TEST_PICTURE_HEIGHT; row++) { pixel_float = (float*)(ret->planes[0] + row * ret->strides[0]); for(col = 0; col < TEST_PICTURE_WIDTH; col++) { get_pixel(col, row, tmp_f); RGB_TO_YUV(); pixel_float[0] = yuv_f[0]; pixel_float[1] = tmp_f[3]; pixel_float+= 2; } } break; case GAVL_GRAY_FLOAT: for(row = 0; row < TEST_PICTURE_HEIGHT; row++) { pixel_float = (float*)(ret->planes[0] + row * ret->strides[0]); for(col = 0; col < TEST_PICTURE_WIDTH; col++) { get_pixel(col, row, tmp_f); RGB_TO_YUV(); pixel_float[0] = yuv_f[0]; pixel_float++; } } break; case GAVL_GRAYA_32: for(row = 0; row < TEST_PICTURE_HEIGHT; row++) { pixel_16 = (uint16_t*)(ret->planes[0] + row * ret->strides[0]); for(col = 0; col < TEST_PICTURE_WIDTH; col++) { get_pixel(col, row, tmp_f); RGB_TO_YUV(); pixel_16[0] = FLOAT_TO_16(yuv_f[0]); pixel_16[1] = FLOAT_TO_16(tmp_f[3]); pixel_16+= 2; } } break; case GAVL_GRAY_16: for(row = 0; row < TEST_PICTURE_HEIGHT; row++) { pixel_16 = (uint16_t*)(ret->planes[0] + row * ret->strides[0]); for(col = 0; col < TEST_PICTURE_WIDTH; col++) { get_pixel(col, row, tmp_f); RGB_TO_YUV(); pixel_16[0] = FLOAT_TO_16(yuv_f[0]); pixel_16++; } } break; case GAVL_GRAYA_16: for(row = 0; row < TEST_PICTURE_HEIGHT; row++) { pixel = (ret->planes[0] + row * ret->strides[0]); for(col = 0; col < TEST_PICTURE_WIDTH; col++) { get_pixel(col, row, tmp_f); RGB_TO_YUV(); pixel[0] = FLOAT_TO_8(yuv_f[0]); pixel[1] = FLOAT_TO_8(tmp_f[3]); pixel+= 2; } } break; case GAVL_GRAY_8: for(row = 0; row < TEST_PICTURE_HEIGHT; row++) { pixel = (ret->planes[0] + row * ret->strides[0]); for(col = 0; col < TEST_PICTURE_WIDTH; col++) { get_pixel(col, row, tmp_f); RGB_TO_YUV(); pixel[0] = FLOAT_TO_8(yuv_f[0]); pixel++; } } break; case GAVL_YUV_FLOAT: for(row = 0; row < TEST_PICTURE_HEIGHT; row++) { pixel_float = (float*)(ret->planes[0] + row * ret->strides[0]); for(col = 0; col < TEST_PICTURE_WIDTH; col++) { get_pixel(col, row, tmp_f); RGB_TO_YUV(); pixel_float[0] = yuv_f[0]; pixel_float[1] = yuv_f[1]; pixel_float[2] = yuv_f[2]; pixel_float+=3; } } break; case GAVL_UYVY: for(row = 0; row < TEST_PICTURE_HEIGHT; row++) { pixel = ret->planes[0] + row * ret->strides[0]; for(col = 0; col < TEST_PICTURE_WIDTH/2; col++) { get_pixel(2*col, row, tmp_f); RGB_TO_YUV(); Y_TO_8(pixel[1]); U_TO_8(pixel[0]); V_TO_8(pixel[2]); get_pixel(2*col+1, row, tmp_f); RGB_TO_Y(); Y_TO_8(pixel[3]); pixel+= 4; } } break; case GAVL_YUV_420_P: for(row = 0; row < TEST_PICTURE_HEIGHT/2; row++) { y = ret->planes[0] + 2 * row * ret->strides[0]; u = ret->planes[1] + row * ret->strides[1]; v = ret->planes[2] + row * ret->strides[2]; for(col = 0; col < TEST_PICTURE_WIDTH/2; col++) { get_pixel(2*col, 2*row, tmp_f); RGB_TO_YUV(); Y_TO_8(*y); U_TO_8(*u); V_TO_8(*v); y++; get_pixel(2*col+1, 2*row, tmp_f); RGB_TO_YUV(); Y_TO_8(*y); U_TO_8(*u); V_TO_8(*v); y++; u++; v++; } y = ret->planes[0] + (2 * row + 1) * ret->strides[0]; for(col = 0; col < TEST_PICTURE_WIDTH/2; col++) { get_pixel(2*col, 2*row+1, tmp_f); RGB_TO_Y(); Y_TO_8(*y); y++; get_pixel(2*col+1, 2*row+1, tmp_f); RGB_TO_Y(); Y_TO_8(*y); y++; } } break; case GAVL_YUV_410_P: for(row = 0; row < TEST_PICTURE_HEIGHT/4; row++) { y = ret->planes[0] + 4 * row * ret->strides[0]; u = ret->planes[1] + row * ret->strides[1]; v = ret->planes[2] + row * ret->strides[2]; for(col = 0; col < TEST_PICTURE_WIDTH/4; col++) { get_pixel(4*col, 4*row, tmp_f); RGB_TO_YUV(); Y_TO_8(*y); U_TO_8(*u); V_TO_8(*v); y++; get_pixel(4*col+1, 4*row, tmp_f); RGB_TO_Y(); Y_TO_8(*y); y++; get_pixel(4*col+2, 4*row, tmp_f); RGB_TO_Y(); Y_TO_8(*y); y++; get_pixel(4*col+3, 4*row, tmp_f); RGB_TO_Y(); Y_TO_8(*y); y++; u++; v++; } y = ret->planes[0] + (4 * row + 1) * ret->strides[0]; for(col = 0; col < TEST_PICTURE_WIDTH/4; col++) { get_pixel(4*col, 4*row+1, tmp_f); RGB_TO_Y(); Y_TO_8(*y); y++; get_pixel(4*col+1, 4*row+1, tmp_f); RGB_TO_Y(); Y_TO_8(*y); y++; get_pixel(4*col+2, 4*row+1, tmp_f); RGB_TO_Y(); Y_TO_8(*y); y++; get_pixel(4*col+3, 4*row+1, tmp_f); RGB_TO_Y(); Y_TO_8(*y); y++; } y = ret->planes[0] + (4 * row + 2) * ret->strides[0]; for(col = 0; col < TEST_PICTURE_WIDTH/4; col++) { get_pixel(4*col, 4*row+2, tmp_f); RGB_TO_Y(); Y_TO_8(*y); y++; get_pixel(4*col+1, 4*row+2, tmp_f); RGB_TO_Y(); Y_TO_8(*y); y++; get_pixel(4*col+2, 4*row+2, tmp_f); RGB_TO_Y(); Y_TO_8(*y); y++; get_pixel(4*col+3, 4*row+2, tmp_f); RGB_TO_Y(); Y_TO_8(*y); y++; } y = ret->planes[0] + (4 * row + 3) * ret->strides[0]; for(col = 0; col < TEST_PICTURE_WIDTH/4; col++) { get_pixel(4*col, 4*row+3, tmp_f); RGB_TO_Y(); Y_TO_8(*y); y++; get_pixel(4*col+1, 4*row+3, tmp_f); RGB_TO_Y(); Y_TO_8(*y); y++; get_pixel(4*col+2, 4*row+3, tmp_f); RGB_TO_Y(); Y_TO_8(*y); y++; get_pixel(4*col+3, 4*row+3, tmp_f); RGB_TO_Y(); Y_TO_8(*y); y++; } } break; case GAVL_YUV_422_P: for(row = 0; row < TEST_PICTURE_HEIGHT; row++) { y = ret->planes[0] + row * ret->strides[0]; u = ret->planes[1] + row * ret->strides[1]; v = ret->planes[2] + row * ret->strides[2]; for(col = 0; col < TEST_PICTURE_WIDTH/2; col++) { get_pixel(2* col, row, tmp_f); RGB_TO_YUV(); Y_TO_8(*y); U_TO_8(*u); V_TO_8(*v); y++; get_pixel(2* col + 1, row, tmp_f); RGB_TO_Y(); Y_TO_8(*y); y++; u++; v++; } } break; case GAVL_YUV_422_P_16: for(row = 0; row < TEST_PICTURE_HEIGHT; row++) { y_16 = (uint16_t*)(ret->planes[0] + row * ret->strides[0]); u_16 = (uint16_t*)(ret->planes[1] + row * ret->strides[1]); v_16 = (uint16_t*)(ret->planes[2] + row * ret->strides[2]); for(col = 0; col < TEST_PICTURE_WIDTH/2; col++) { get_pixel(2* col, row, tmp_f); RGB_TO_YUV(); Y_TO_16(*y_16); U_TO_16(*u_16); V_TO_16(*v_16); y_16++; get_pixel(2* col + 1, row, tmp_f); RGB_TO_Y(); Y_TO_16(*y_16); y_16++; u_16++; v_16++; } } break; case GAVL_YUV_411_P: for(row = 0; row < TEST_PICTURE_HEIGHT; row++) { y = ret->planes[0] + row * ret->strides[0]; u = ret->planes[1] + row * ret->strides[1]; v = ret->planes[2] + row * ret->strides[2]; for(col = 0; col < TEST_PICTURE_WIDTH/4; col++) { get_pixel(4* col, row, tmp_f); RGB_TO_YUV(); Y_TO_8(*y); U_TO_8(*u); V_TO_8(*v); y++; get_pixel(4* col + 1, row, tmp_f); RGB_TO_Y(); Y_TO_8(*y); y++; get_pixel(4* col + 2, row, tmp_f); RGB_TO_Y(); Y_TO_8(*y); y++; get_pixel(4* col + 3, row, tmp_f); RGB_TO_Y(); Y_TO_8(*y); y++; u++; v++; } } break; case GAVL_YUV_444_P: for(row = 0; row < TEST_PICTURE_HEIGHT; row++) { y = ret->planes[0] + row * ret->strides[0]; u = ret->planes[1] + row * ret->strides[1]; v = ret->planes[2] + row * ret->strides[2]; for(col = 0; col < TEST_PICTURE_WIDTH; col++) { get_pixel(col, row, tmp_f); RGB_TO_YUV(); Y_TO_8(*y); U_TO_8(*u); V_TO_8(*v); y++; u++; v++; } } break; case GAVL_YUV_444_P_16: for(row = 0; row < TEST_PICTURE_HEIGHT; row++) { y_16 = (uint16_t*)(ret->planes[0] + row * ret->strides[0]); u_16 = (uint16_t*)(ret->planes[1] + row * ret->strides[1]); v_16 = (uint16_t*)(ret->planes[2] + row * ret->strides[2]); for(col = 0; col < TEST_PICTURE_WIDTH; col++) { get_pixel(col, row, tmp_f); RGB_TO_YUV(); Y_TO_16(*y_16); U_TO_16(*u_16); V_TO_16(*v_16); y_16++; u_16++; v_16++; } } break; case GAVL_YUVJ_420_P: for(row = 0; row < TEST_PICTURE_HEIGHT/2; row++) { y = ret->planes[0] + 2 * row * ret->strides[0]; u = ret->planes[1] + row * ret->strides[1]; v = ret->planes[2] + row * ret->strides[2]; for(col = 0; col < TEST_PICTURE_WIDTH/2; col++) { get_pixel(2*col, 2*row, tmp_f); RGB_TO_YUV(); YJ_TO_8(*y); UJ_TO_8(*u); VJ_TO_8(*v); y++; get_pixel(2*col+1, 2*row, tmp_f); RGB_TO_Y(); YJ_TO_8(*y); y++; u++; v++; } y = ret->planes[0] + (2 * row + 1) * ret->strides[0]; for(col = 0; col < TEST_PICTURE_WIDTH/2; col++) { get_pixel(2*col, 2*row+1, tmp_f); RGB_TO_Y(); YJ_TO_8(*y); y++; get_pixel(2*col+1, 2*row+1, tmp_f); RGB_TO_Y(); YJ_TO_8(*y); y++; } } break; case GAVL_YUVJ_422_P: for(row = 0; row < TEST_PICTURE_HEIGHT; row++) { y = ret->planes[0] + row * ret->strides[0]; u = ret->planes[1] + row * ret->strides[1]; v = ret->planes[2] + row * ret->strides[2]; for(col = 0; col < TEST_PICTURE_WIDTH/2; col++) { get_pixel(2* col, row, tmp_f); RGB_TO_YUV(); YJ_TO_8(*y); UJ_TO_8(*u); VJ_TO_8(*v); y++; get_pixel(2* col + 1, row, tmp_f); RGB_TO_Y(); YJ_TO_8(*y); y++; u++; v++; } } break; case GAVL_YUVJ_444_P: for(row = 0; row < TEST_PICTURE_HEIGHT; row++) { y = ret->planes[0] + row * ret->strides[0]; u = ret->planes[1] + row * ret->strides[1]; v = ret->planes[2] + row * ret->strides[2]; for(col = 0; col < TEST_PICTURE_WIDTH; col++) { get_pixel(col, row, tmp_f); RGB_TO_YUV(); YJ_TO_8(*y); UJ_TO_8(*u); VJ_TO_8(*v); y++; u++; v++; } } break; case GAVL_PIXELFORMAT_NONE: break; } return ret; } int main(int argc, char ** argv) { #ifdef ALL_PIXELFORMATS int i, j; #endif const char * tmp1, * tmp2; char filename_buffer[128]; // float background[3] = { 1.0, 0.0, 0.0 }; gavl_video_format_t input_format; gavl_video_format_t output_format; gavl_video_frame_t * input_frame; gavl_video_frame_t * output_frame; gavl_video_options_t * opt; gavl_video_converter_t * cnv = gavl_video_converter_create(); opt = gavl_video_converter_get_options(cnv); memset(&input_format, 0, sizeof(input_format)); memset(&output_format, 0, sizeof(output_format)); input_format.image_width = TEST_PICTURE_WIDTH; input_format.image_height = TEST_PICTURE_HEIGHT; input_format.frame_width = TEST_PICTURE_WIDTH; input_format.frame_height = TEST_PICTURE_HEIGHT; input_format.pixel_width = 1; input_format.pixel_height = 1; output_format.frame_width = TEST_PICTURE_WIDTH; output_format.frame_height = TEST_PICTURE_HEIGHT; output_format.image_width = TEST_PICTURE_WIDTH; output_format.image_height = TEST_PICTURE_HEIGHT; output_format.pixel_width = 1; output_format.pixel_height = 1; init_yuv(); #ifdef ALL_PIXELFORMATS for(i = 0; i < gavl_num_pixelformats(); i++) { input_format.pixelformat = gavl_get_pixelformat(i); #else input_format.pixelformat = IN_PIXELFORMAT; #endif input_frame = create_picture(input_format.pixelformat, get_pixel_colorbar); tmp1 = gavl_pixelformat_to_string(input_format.pixelformat); sprintf(filename_buffer, "0test_%s.png", tmp1); write_file(filename_buffer, input_frame, &input_format); #ifdef ALL_PIXELFORMATS for(j = 0; j < gavl_num_pixelformats(); j++) { output_format.pixelformat = gavl_get_pixelformat(j); #else output_format.pixelformat = OUT_PIXELFORMAT; #endif gavl_video_options_set_defaults(opt); gavl_video_options_set_quality(opt, 0); // gavl_video_options_set_alpha_mode(opt, GAVL_ALPHA_BLEND_COLOR); // gavl_video_options_set_background_color(opt, background); gavl_video_options_set_alpha_mode(opt, GAVL_ALPHA_IGNORE); #ifdef ALL_PIXELFORMATS if(input_format.pixelformat == output_format.pixelformat) continue; #endif output_frame = gavl_video_frame_create(&output_format); fprintf(stderr, "************* Pixelformat conversion "); fprintf(stderr, "%s -> ", tmp1); tmp2 = gavl_pixelformat_to_string(output_format.pixelformat); fprintf(stderr, "%s *************\n", tmp2); gavl_video_options_set_accel_flags(opt, GAVL_ACCEL_C); // gavl_video_options_set_quality(opt, 5); gavl_video_frame_clear(output_frame, &output_format); if(gavl_video_converter_init(cnv, &input_format, &output_format) <= 0) { fprintf(stderr, "No Conversion defined yet or not necessary\n"); } else { fprintf(stderr, "ANSI C Version: "); gavl_video_convert(cnv, input_frame, output_frame); } /* Now, do some conversions */ sprintf(filename_buffer, "%s_to_%s_c.png", tmp1, tmp2); write_file(filename_buffer, output_frame, &output_format); fprintf(stderr, "Wrote %s\n", filename_buffer); #if 1 /* HQ */ gavl_video_options_set_accel_flags(opt, GAVL_ACCEL_C_HQ); gavl_video_frame_clear(output_frame, &output_format); sprintf(filename_buffer, "%s_to_%s_hq.png", tmp1, tmp2); if(gavl_video_converter_init(cnv, &input_format, &output_format) <= 0) fprintf(stderr, "No High Quality Conversion defined yet\n"); else { fprintf(stderr, "High Quality Version: "); gavl_video_convert(cnv, input_frame, output_frame); write_file(filename_buffer, output_frame, &output_format); fprintf(stderr, "Wrote %s\n", filename_buffer); } /* Now, initialize with MMX */ #endif #if 1 gavl_video_options_set_accel_flags(opt, GAVL_ACCEL_MMX); gavl_video_frame_clear(output_frame, &output_format); sprintf(filename_buffer, "%s_to_%s_mmx.png", tmp1, tmp2); if(gavl_video_converter_init(cnv, &input_format, &output_format) <= 0) fprintf(stderr, "No MMX Conversion defined yet\n"); else { fprintf(stderr, "MMX Version: "); gavl_video_convert(cnv, input_frame, output_frame); write_file(filename_buffer, output_frame, &output_format); fprintf(stderr, "Wrote %s\n", filename_buffer); } gavl_video_options_set_accel_flags(opt, GAVL_ACCEL_MMXEXT); gavl_video_frame_clear(output_frame, &output_format); sprintf(filename_buffer, "%s_to_%s_mmxext.png", tmp1, tmp2); if(gavl_video_converter_init(cnv, &input_format, &output_format) <= 0) fprintf(stderr, "No MMXEXT Conversion defined yet\n"); else { fprintf(stderr, "MMXEXT Version: "); gavl_video_convert(cnv, input_frame, output_frame); write_file(filename_buffer, output_frame, &output_format); fprintf(stderr, "Wrote %s\n", filename_buffer); } gavl_video_options_set_accel_flags(opt, GAVL_ACCEL_SSE); gavl_video_frame_clear(output_frame, &output_format); sprintf(filename_buffer, "%s_to_%s_sse.png", tmp1, tmp2); if(gavl_video_converter_init(cnv, &input_format, &output_format) <= 0) fprintf(stderr, "No SSE Conversion defined yet\n"); else { fprintf(stderr, "SSE Version: "); gavl_video_convert(cnv, input_frame, output_frame); write_file(filename_buffer, output_frame, &output_format); fprintf(stderr, "Wrote %s\n", filename_buffer); } gavl_video_options_set_accel_flags(opt, GAVL_ACCEL_SSE3); gavl_video_frame_clear(output_frame, &output_format); sprintf(filename_buffer, "%s_to_%s_sse3.png", tmp1, tmp2); if(gavl_video_converter_init(cnv, &input_format, &output_format) <= 0) fprintf(stderr, "No SSE3 Conversion defined yet\n"); else { fprintf(stderr, "SSE3 Version: "); gavl_video_convert(cnv, input_frame, output_frame); write_file(filename_buffer, output_frame, &output_format); fprintf(stderr, "Wrote %s\n", filename_buffer); } #endif gavl_video_frame_destroy(output_frame); #ifdef ALL_PIXELFORMATS } } #endif return 0; } bplaum-gavl-b9385e3/src/colorspace_time.c000066400000000000000000000125201513252040200203620ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include #include #include //#include "colorspace.h" static struct timeval time_before; static struct timeval time_after; #define NUM_CONVERSIONS 20 #define FIXED_INPUT_PIXELFORMAT #define INPUT_PIXELFORMAT GAVL_RGBA_32 static void timer_init() { gettimeofday(&time_before, NULL); } static void timer_stop() { double before, after, diff; gettimeofday(&time_after, NULL); before = time_before.tv_sec + time_before.tv_usec / 1.0e6; after = time_after.tv_sec + time_after.tv_usec / 1.0e6; /* fprintf(stderr, "Before: %f After: %f\n", before, after); */ diff = after - before; fprintf(stderr, "Made %d conversions, Time: %f (%f per conversion)\n", NUM_CONVERSIONS, diff, diff/NUM_CONVERSIONS); } int main() { int width = 720; int height = 576; const char * tmp; int j, k; int num_pixelformats = gavl_num_pixelformats(); gavl_video_format_t input_format; gavl_video_format_t output_format; gavl_video_frame_t * input_frame; gavl_video_frame_t * output_frame; gavl_video_options_t * opt; gavl_video_converter_t * cnv = gavl_video_converter_create(); opt = gavl_video_converter_get_options(cnv); input_format.pixelformat = GAVL_RGB_15; output_format.pixelformat = GAVL_RGB_15; input_format.image_width = width; input_format.image_height = height; input_format.frame_width = width; input_format.frame_height = height; input_format.pixel_width = 1; input_format.pixel_height = 1; output_format.image_width = width; output_format.image_height = height; output_format.frame_width = width; output_format.frame_height = height; output_format.pixel_width = 1; output_format.pixel_height = 1; // char pixelformat_buffer[20]; #ifndef FIXED_INPUT_PIXELFORMAT for(i = 0; i < num_pixelformats; i++) /* Input format loop */ { input_format.pixelformat = gavl_get_pixelformat(i); #else input_format.pixelformat = INPUT_PIXELFORMAT; #endif input_frame = gavl_video_frame_create(&input_format); gavl_video_frame_clear(input_frame, &input_format); for(j = 0; j < num_pixelformats; j++) /* Output format loop */ { output_format.pixelformat = gavl_get_pixelformat(j); if(input_format.pixelformat != output_format.pixelformat) { output_frame = gavl_video_frame_create(&output_format); fprintf(stderr, "************* Pixelformat conversion "); tmp = gavl_pixelformat_to_string(input_format.pixelformat); fprintf(stderr, "%s -> ", tmp); tmp = gavl_pixelformat_to_string(output_format.pixelformat); fprintf(stderr, "%s *************\n", tmp); gavl_video_options_set_defaults(opt); gavl_video_options_set_alpha_mode(opt, GAVL_ALPHA_BLEND_COLOR); gavl_video_options_set_accel_flags(opt, GAVL_ACCEL_C); if(gavl_video_converter_init(cnv, &input_format, &output_format) < 1) fprintf(stderr, "No Conversion defined yet\n"); else { /* Now, do some conversions */ fprintf(stderr, "ANSI C Version: "); timer_init(); for(k = 0; k < NUM_CONVERSIONS; k++) gavl_video_convert(cnv, input_frame, output_frame); timer_stop(); } /* Now, initialize with MMX */ fprintf(stderr, "MMX Version: "); gavl_video_options_set_accel_flags(opt, GAVL_ACCEL_MMX); if(gavl_video_converter_init(cnv, &input_format, &output_format) < 1) fprintf(stderr, "No Conversion defined yet\n"); else { timer_init(); for(k = 0; k < NUM_CONVERSIONS; k++) gavl_video_convert(cnv, input_frame, output_frame); timer_stop(); } /* Now, initialize with MMXEXT */ gavl_video_options_set_accel_flags(opt, GAVL_ACCEL_MMXEXT); fprintf(stderr, "MMXEXT Version: "); if(gavl_video_converter_init(cnv, &input_format, &output_format) < 1) fprintf(stderr, "No Conversion defined yet\n"); else { timer_init(); for(k = 0; k < NUM_CONVERSIONS; k++) gavl_video_convert(cnv, input_frame, output_frame); timer_stop(); } gavl_video_frame_destroy(output_frame); } } gavl_video_frame_destroy(input_frame); #ifndef FIXED_INPUT_PIXELFORMAT } #endif return 0; } bplaum-gavl-b9385e3/src/convolvetest.c000066400000000000000000000105671513252040200177560ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include //#include "colorspace.h" // Common routines #include #include #include #define IN_X 0 #define IN_Y 0 #define OUT_X 10 #define OUT_Y 10 //static float coeffs_h[] = //{ 0.2, 0.4, 0.6, 0.8, 1.0, 0.8, 0.6, 0.4, 0.2 }; // static float coeffs_h[] = { 0.5, 1.0, 0.5 }; static float coeffs_h[] = { 0.25, 0.5, 1.0, 0.5, 0.25 }; static float * coeffs_v = coeffs_h; static int num_coeffs_v = sizeof(coeffs_h)/sizeof(coeffs_h[0]); int main(int argc, char ** argv) { char filename_buffer[1024]; int i, imax; gavl_video_scaler_t *scaler; gavl_video_format_t format, format_1; gavl_video_frame_t * frame, * frame_1; gavl_video_options_t * opt; gavl_pixelformat_t csp; memset(&format, 0, sizeof(format)); memset(&format_1, 0, sizeof(format_1)); imax = gavl_num_pixelformats(); scaler = gavl_video_scaler_create(); opt = gavl_video_scaler_get_options(scaler); // imax = 1; for(i = 0; i < imax; i++) { csp = gavl_get_pixelformat(i); // csp = GAVL_RGB_24; fprintf(stderr, "Pixelformat: %s\n", gavl_pixelformat_to_string(csp)); frame = read_png(argv[1], &format, csp); #if 0 if(csp == GAVL_RGBA_64) { write_png("test.png", &format, frame); } #endif #if 0 /* Write test frame */ sprintf(filename_buffer, "%s-test.png", gavl_pixelformat_to_string(csp)); write_png(filename_buffer, &format, frame); #endif gavl_video_format_copy(&format_1, &format); gavl_video_options_set_defaults(opt); gavl_video_options_set_conversion_flags(opt, GAVL_CONVOLVE_NORMALIZE | GAVL_CONVOLVE_CHROMA); // gavl_video_options_set_accel_flags(opt, GAVL_ACCEL_C); /* X and Y */ #if 1 if(gavl_video_scaler_init_convolve(scaler, &format, num_coeffs_v / 2, coeffs_h, num_coeffs_v / 2, coeffs_v) < 0) { fprintf(stderr, "No scaling routine defined\n"); continue; } #endif /* X */ #if 0 if(gavl_video_scaler_init_convolve(scaler, &format, num_coeffs_v / 2, coeffs_h, 0, /* num_coeffs_v / 2, */ coeffs_v) < 0) { fprintf(stderr, "No scaling routine defined\n"); continue; } #endif /* Y */ #if 0 if(gavl_video_scaler_init_convolve(scaler, &format, 0, /* num_coeffs_h / 2, */ coeffs_h, num_coeffs_v / 2, coeffs_v) < 0) { fprintf(stderr, "No scaling routine defined\n"); continue; } #endif frame_1 = gavl_video_frame_create(&format_1); gavl_video_frame_clear(frame_1, &format_1); gavl_video_scaler_scale(scaler, frame, frame_1); sprintf(filename_buffer, "%s-convolved.png", gavl_pixelformat_to_string(csp)); write_png(filename_buffer, &format_1, frame_1); fprintf(stderr, "Wrote %s\n", filename_buffer); gavl_video_frame_destroy(frame); gavl_video_frame_destroy(frame_1); } gavl_video_scaler_destroy(scaler); return 0; } bplaum-gavl-b9385e3/src/deinterlace_time.c000066400000000000000000000107131513252040200205110ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include //#include "colorspace.h" // Common routines #include #include #include #include "timeutils.h" #define NUM_CONVERSIONS 20 //#define SCALE_MODE GAVL_SCALE_SINC_LANCZOS #define DEINTERLACE_MODE GAVL_DEINTERLACE_BLEND #define WIDTH 720 #define HEIGHT 568 int main(int argc, char ** argv) { uint64_t t; int i, j, imax; gavl_video_deinterlacer_t *deinterlacer; gavl_video_format_t format; gavl_video_frame_t * frame, * frame_1; gavl_video_options_t * opt; gavl_pixelformat_t csp; imax = gavl_num_pixelformats(); deinterlacer = gavl_video_deinterlacer_create(); opt = gavl_video_deinterlacer_get_options(deinterlacer); memset(&format, 0, sizeof(format)); for(i = 0; i < imax; i++) { csp = gavl_get_pixelformat(i); fprintf(stderr, "Pixelformat: %s imax: %d\n", gavl_pixelformat_to_string(csp), imax); format.image_width = WIDTH; format.image_height = HEIGHT; format.frame_width = WIDTH; format.frame_height = HEIGHT; format.pixel_width = 1; format.pixel_height = 1; format.pixelformat = csp; frame = gavl_video_frame_create(&format); frame_1 = gavl_video_frame_create(&format); gavl_video_frame_clear(frame_1, &format); /* Now, do the conversions */ fprintf(stderr, "C-Version:\n"); gavl_video_options_set_defaults(opt); gavl_video_options_set_deinterlace_mode(opt, DEINTERLACE_MODE); gavl_video_options_set_quality(opt, 3); gavl_video_options_set_accel_flags(opt, GAVL_ACCEL_C); if(gavl_video_deinterlacer_init(deinterlacer, &format) < 0) // int output_height { fprintf(stderr, "No scaling routine defined\n"); } else { timer_init(); for(j = 0; j < NUM_CONVERSIONS; j++) { gavl_video_deinterlacer_deinterlace(deinterlacer, frame, frame_1); } t = timer_stop(); fprintf(stderr, "Made %d conversions, Time: %e (%e per conversion)\n", NUM_CONVERSIONS, (double)t, (double)t/NUM_CONVERSIONS); } #if 1 fprintf(stderr, "MMX-Version:\n"); gavl_video_options_set_defaults(opt); gavl_video_options_set_deinterlace_mode(opt, DEINTERLACE_MODE); gavl_video_options_set_quality(opt, 2); gavl_video_options_set_accel_flags(opt, GAVL_ACCEL_MMX); gavl_video_deinterlacer_init(deinterlacer, &format); timer_init(); for(j = 0; j < NUM_CONVERSIONS; j++) { gavl_video_deinterlacer_deinterlace(deinterlacer, frame, frame_1); } t = timer_stop(); fprintf(stderr, "Made %d conversions, Time: %e (%e per conversion)\n", NUM_CONVERSIONS, (double)t, (double)t/NUM_CONVERSIONS); #endif #if 1 fprintf(stderr, "MMXEXT-Version:\n"); gavl_video_options_set_defaults(opt); gavl_video_options_set_deinterlace_mode(opt, DEINTERLACE_MODE); gavl_video_options_set_quality(opt, 2); gavl_video_options_set_accel_flags(opt, GAVL_ACCEL_MMXEXT); gavl_video_deinterlacer_init(deinterlacer, &format); timer_init(); for(j = 0; j < NUM_CONVERSIONS; j++) { gavl_video_deinterlacer_deinterlace(deinterlacer, frame, frame_1); } t = timer_stop(); fprintf(stderr, "Made %d conversions, Time: %e (%e per conversion)\n", NUM_CONVERSIONS, (double)t, (double)t/NUM_CONVERSIONS); #endif gavl_video_frame_destroy(frame); gavl_video_frame_destroy(frame_1); } gavl_video_deinterlacer_destroy(deinterlacer); return 0; } bplaum-gavl-b9385e3/src/deinterlacetest.c000066400000000000000000000055161513252040200204000ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include #include #include #define IN_X 0 #define IN_Y 0 #define OUT_X 10 #define OUT_Y 10 int main(int argc, char ** argv) { char filename_buffer[1024]; int i, imax; gavl_video_deinterlacer_t *deinterlacer; gavl_video_format_t format; gavl_video_frame_t * frame, * frame_1; gavl_video_options_t * opt; gavl_pixelformat_t csp; memset(&format, 0, sizeof(format)); imax = gavl_num_pixelformats(); deinterlacer = gavl_video_deinterlacer_create(); opt = gavl_video_deinterlacer_get_options(deinterlacer); // imax = 1; for(i = 0; i < imax; i++) { csp = gavl_get_pixelformat(i); // csp = GAVL_RGB_24; fprintf(stderr, "Pixelformat: %s\n", gavl_pixelformat_to_string(csp)); frame = read_png(argv[1], &format, csp); if(csp == GAVL_RGBA_64) { write_png("test.png", &format, frame); } #if 0 /* Write test frame */ sprintf(filename_buffer, "%s-test.png", gavl_pixelformat_to_string(csp)); write_png(filename_buffer, &format, frame); #endif gavl_video_options_set_defaults(opt); gavl_video_options_set_deinterlace_mode(opt, GAVL_DEINTERLACE_BLEND); gavl_video_options_set_accel_flags(opt, GAVL_ACCEL_MMXEXT); gavl_video_deinterlacer_init(deinterlacer, &format); frame_1 = gavl_video_frame_create(&format); gavl_video_frame_clear(frame_1, &format); gavl_video_deinterlacer_deinterlace(deinterlacer, frame, frame_1); sprintf(filename_buffer, "%s-deinterlaced.png", gavl_pixelformat_to_string(csp)); write_png(filename_buffer, &format, frame_1); fprintf(stderr, "Wrote %s\n", filename_buffer); gavl_video_frame_destroy(frame); gavl_video_frame_destroy(frame_1); } gavl_video_deinterlacer_destroy(deinterlacer); return 0; } bplaum-gavl-b9385e3/src/dump_frame_table.c000066400000000000000000000021731513252040200205030ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include int main(int argc, char ** argv) { gavl_frame_table_t * tab; tab = gavl_frame_table_load(argv[1]); gavl_frame_table_dump(tab); gavl_frame_table_destroy(tab); return 0; } bplaum-gavl-b9385e3/src/fill_test.c000066400000000000000000000104521513252040200172010ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include //#include "colorspace.h" // Common routines #include #include static void write_png(char * filename, gavl_video_format_t * format, gavl_video_frame_t * frame) { int i; unsigned char ** rows; int color_type; FILE * output; png_structp png_ptr; png_infop info_ptr; gavl_video_converter_t * cnv; gavl_video_format_t format_1; gavl_video_frame_t * frame_1 = NULL; if((format->pixelformat != GAVL_RGB_24) && (format->pixelformat != GAVL_RGBA_32)) { cnv = gavl_video_converter_create(); gavl_video_format_copy(&format_1, format); if(gavl_pixelformat_has_alpha(format->pixelformat)) { format_1.pixelformat = GAVL_RGBA_32; color_type = PNG_COLOR_TYPE_RGBA; } else { format_1.pixelformat = GAVL_RGB_24; color_type = PNG_COLOR_TYPE_RGB; } frame_1 = gavl_video_frame_create(&format_1); gavl_video_converter_init(cnv, format, &format_1); gavl_video_convert(cnv, frame, frame_1); gavl_video_converter_destroy(cnv); } else if(format->pixelformat == GAVL_RGB_24) { color_type = PNG_COLOR_TYPE_RGB; } else { color_type = PNG_COLOR_TYPE_RGBA; } output = fopen(filename, "wb"); if(!output) return; png_ptr = png_create_write_struct(PNG_LIBPNG_VER_STRING, NULL, NULL, NULL); info_ptr = png_create_info_struct(png_ptr); setjmp(png_jmpbuf(png_ptr)); png_init_io(png_ptr, output); png_set_IHDR(png_ptr, info_ptr, format->image_width, format->image_height, 8, color_type, PNG_INTERLACE_NONE, PNG_COMPRESSION_TYPE_DEFAULT, PNG_FILTER_TYPE_DEFAULT); rows = malloc(format->image_height * sizeof(*rows)); if(frame_1) { for(i = 0; i < format->image_height; i++) rows[i] = frame_1->planes[0] + i * frame_1->strides[0]; } else { for(i = 0; i < format->image_height; i++) rows[i] = frame->planes[0] + i * frame->strides[0]; } png_set_rows(png_ptr, info_ptr, rows); png_write_png(png_ptr, info_ptr, PNG_TRANSFORM_IDENTITY, NULL); png_destroy_write_struct(&png_ptr, &info_ptr); fclose(output); free(rows); if(frame_1) gavl_video_frame_destroy(frame_1); } int main(int argc, char ** argv) { char filename_buffer[1024]; int i, imax; gavl_video_format_t frame_format; gavl_video_frame_t * frame; float color[4] = { 0.0, 1.0, 0.0, 0.5 }; memset(&frame_format, 0, sizeof(frame_format)); frame_format.image_width = 128; frame_format.image_height = 128; frame_format.frame_width = 128; frame_format.frame_height = 128; frame_format.pixel_width = 1; frame_format.pixel_height = 1; imax = gavl_num_pixelformats(); for(i = 0; i < imax; i++) { frame_format.pixelformat = gavl_get_pixelformat(i); // if(frame_csp != GAVL_YUVA_32) // continue; // csp = GAVL_RGB_24; frame = gavl_video_frame_create(&frame_format); sprintf(filename_buffer, "fill_%s.png", gavl_pixelformat_to_string(frame_format.pixelformat)); gavl_video_frame_fill(frame, &frame_format, color); write_png(filename_buffer, &frame_format, frame); gavl_video_frame_destroy(frame); fprintf(stderr, "Wrote %s\n", filename_buffer); } return 0; } bplaum-gavl-b9385e3/src/gavfdump.c000066400000000000000000000035241513252040200170270ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include int main(int argc, char ** argv) { gavl_io_t * io; gavf_t * dec; gavf_options_t * opt; FILE * f; gavl_packet_t p; // const gavf_packet_header_t * h; dec = gavf_create(); opt = gavf_get_options(dec); gavf_options_set_flags(opt, GAVF_OPT_FLAG_DUMP_HEADERS | GAVF_OPT_FLAG_DUMP_INDICES | GAVF_OPT_FLAG_DUMP_PACKETS); f = fopen(argv[1], "rb"); if(!f) { fprintf(stderr, "Opening file failed\n"); return 0; } io = gavl_io_create_file(f, 0, 1, 1); if(!gavf_open_read(dec, io)) { fprintf(stderr, "Opening decoder failed\n"); return 0; } #if 0 gavl_packet_init(&p); while(1) { if(!(h = gavf_packet_read_header(dec)) || !gavf_packet_read_packet(dec, &p)) break; } #endif /* Cleanup */ gavf_close(dec, 0); gavl_packet_free(&p); return 0; } bplaum-gavl-b9385e3/src/gen_colorspace_tables.c000066400000000000000000000633001513252040200215310ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #define RECLIP(v, min, max) \ if(vmax) v=max; #define HEADER_NAME "colorspace_tables.h" #define SOURCE_NAME "colorspace_tables.c" int main(int argc, char ** argv) { FILE * header; FILE * source; int i; int tmp_int; float tmp_float; header = fopen(HEADER_NAME, "w"); if(!header) { fprintf(stderr, "Cannot open header %s\n", HEADER_NAME); return 1; } source = fopen(SOURCE_NAME, "w"); if(!source) { fprintf(stderr, "Cannot open header %s\n", SOURCE_NAME); fclose(header); return 1; } /* Some #include's for the .c file */ fprintf(source, "#include \n"); fprintf(source, "#include \"colorspace_tables.h\"\n"); /* JPEG Quantisation <-> MPEG Quantisation */ /* yj_8 -> y_8 */ fprintf(header, "extern const uint8_t gavl_yj_8_to_y_8[256];\n"); fprintf(source, "const uint8_t gavl_yj_8_to_y_8[256] = \n{\n"); for(i = 0; i < 256; i++) { if(!((i)%8)) fprintf(source, " "); tmp_float = ((float)(i) / 255.0)*219.0 + 16.0; tmp_int = (int)(tmp_float+0.5); fprintf(source, "0x%02x, ", tmp_int); if(!((i+1)%8)) fprintf(source, "\n"); } fprintf(source, "};\n\n"); /* uvj_8 -> uv_8 */ fprintf(header, "extern const uint8_t gavl_uvj_8_to_uv_8[256];\n"); fprintf(source, "const uint8_t gavl_uvj_8_to_uv_8[256] = \n{\n"); for(i = 0; i < 256; i++) { if(!((i)%8)) fprintf(source, " "); tmp_float = ((float)(i-128) / 255.0)*224.0 + 128.0; tmp_int = (int)(tmp_float+0.5); fprintf(source, "0x%02x, ", tmp_int); if(!((i+1)%8)) fprintf(source, "\n"); } fprintf(source, "};\n\n"); /* yj_8 -> y_16 */ fprintf(header, "extern const uint16_t gavl_yj_8_to_y_16[256];\n"); fprintf(source, "const uint16_t gavl_yj_8_to_y_16[256] = \n{\n"); for(i = 0; i < 256; i++) { if(!((i)%8)) fprintf(source, " "); tmp_float = ((float)(i) / 255.0)*219.0 + 16.0; tmp_int = (int)(tmp_float*256.0+0.5); fprintf(source, "0x%04x, ", tmp_int); if(!((i+1)%8)) fprintf(source, "\n"); } fprintf(source, "};\n\n"); /* uvj_8 -> uv_16 */ fprintf(header, "extern const uint16_t gavl_uvj_8_to_uv_16[256];\n"); fprintf(source, "const uint16_t gavl_uvj_8_to_uv_16[256] = \n{\n"); for(i = 0; i < 256; i++) { if(!((i)%8)) fprintf(source, " "); tmp_float = ((float)(i-128) / 255.0)*224.0 + 128.0; tmp_int = (int)(tmp_float*256.0+0.5); fprintf(source, "0x%04x, ", tmp_int); if(!((i+1)%8)) fprintf(source, "\n"); } fprintf(source, "};\n\n"); /* y_8 -> yj_8 */ fprintf(header, "extern const uint8_t gavl_y_8_to_yj_8[256];\n"); fprintf(source, "const uint8_t gavl_y_8_to_yj_8[256] = \n{\n"); for(i = 0; i < 256; i++) { if(!((i)%8)) fprintf(source, " "); tmp_float = ((float)(i - 16) / 219.0)*255.0; tmp_int = (int)(tmp_float+0.5); RECLIP(tmp_int, 0, 255); fprintf(source, "0x%02x, ", tmp_int); if(!((i+1)%8)) fprintf(source, "\n"); } fprintf(source, "};\n\n"); /* uvj_8 -> uv_8 */ fprintf(header, "extern const uint8_t gavl_uv_8_to_uvj_8[256];\n"); fprintf(source, "const uint8_t gavl_uv_8_to_uvj_8[256] = \n{\n"); for(i = 0; i < 256; i++) { if(!((i)%8)) fprintf(source, " "); tmp_float = ((float)(i-128) / 224.0)*255.0 + 128.0; tmp_int = (int)(tmp_float+0.5); RECLIP(tmp_int, 0, 255); fprintf(source, "0x%02x, ", tmp_int); if(!((i+1)%8)) fprintf(source, "\n"); } fprintf(source, "};\n\n"); /* y_8 -> yj_16 */ fprintf(header, "extern const uint16_t gavl_y_8_to_yj_16[256];\n"); fprintf(source, "const uint16_t gavl_y_8_to_yj_16[256] = \n{\n"); for(i = 0; i < 256; i++) { if(!((i)%8)) fprintf(source, " "); tmp_float = ((float)(i - 16) / 219.0)*65535.0; tmp_int = (int)(tmp_float+0.5); RECLIP(tmp_int, 0, 65535); fprintf(source, "0x%04x, ", tmp_int); if(!((i+1)%8)) fprintf(source, "\n"); } fprintf(source, "};\n\n"); /* y_8 -> y_float */ fprintf(header, "extern const float gavl_y_8_to_y_float[256];\n"); fprintf(source, "const float gavl_y_8_to_y_float[256] = \n{\n"); for(i = 0; i < 256; i++) { if(!((i)%8)) fprintf(source, " "); tmp_float = ((float)(i - 16) / 219.0); RECLIP(tmp_float, 0.0, 1.0); fprintf(source, "%.10f, ", tmp_float); if(!((i+1)%8)) fprintf(source, "\n"); } fprintf(source, "};\n\n"); /* uv_8 -> uv_float */ fprintf(header, "extern const float gavl_uv_8_to_uv_float[256];\n"); fprintf(source, "const float gavl_uv_8_to_uv_float[256] = \n{\n"); for(i = 0; i < 256; i++) { if(!((i)%8)) fprintf(source, " "); tmp_float = ((float)(i - 0x80) / 224.0); RECLIP(tmp_float, -0.5, 0.5); fprintf(source, "%.10f, ", tmp_float); if(!((i+1)%8)) fprintf(source, "\n"); } fprintf(source, "};\n\n"); /* yj_8 -> y_float */ fprintf(header, "extern const float gavl_yj_8_to_y_float[256];\n"); fprintf(source, "const float gavl_yj_8_to_y_float[256] = \n{\n"); for(i = 0; i < 256; i++) { if(!((i)%8)) fprintf(source, " "); tmp_float = ((float)(i) / 255.0); RECLIP(tmp_float, 0.0, 1.0); fprintf(source, "%.10f, ", tmp_float); if(!((i+1)%8)) fprintf(source, "\n"); } fprintf(source, "};\n\n"); /* RGB 5/6 bit -> 8 bit */ fprintf(header, "extern const uint8_t gavl_rgb_5_to_8[32];\n"); fprintf(source, "const uint8_t gavl_rgb_5_to_8[32] = \n{\n"); for(i = 0; i < 32; i++) { if(!((i)%8)) fprintf(source, " "); tmp_float = ((float)(i) / 31.0 * 255.0); tmp_int = (int)(tmp_float+0.5); fprintf(source, "0x%02x, ", tmp_int); if(!((i+1)%8)) fprintf(source, "\n"); } fprintf(source, "};\n\n"); fprintf(header, "extern const uint8_t gavl_rgb_6_to_8[64];\n"); fprintf(source, "const uint8_t gavl_rgb_6_to_8[64] = \n{\n"); for(i = 0; i < 64; i++) { if(!((i)%8)) fprintf(source, " "); tmp_float = ((float)(i) / 63.0 * 255.0); tmp_int = (int)(tmp_float+0.5); fprintf(source, "0x%02x, ", tmp_int); if(!((i+1)%8)) fprintf(source, "\n"); } fprintf(source, "};\n\n"); /* RGB 5/6 bit -> 16 bit */ fprintf(header, "extern const uint16_t gavl_rgb_5_to_16[32];\n"); fprintf(source, "const uint16_t gavl_rgb_5_to_16[32] = \n{\n"); for(i = 0; i < 32; i++) { if(!((i)%8)) fprintf(source, " "); tmp_float = ((float)(i) / 31.0 * 65535.0); tmp_int = (int)(tmp_float+0.5); fprintf(source, "0x%04x, ", tmp_int); if(!((i+1)%8)) fprintf(source, "\n"); } fprintf(source, "};\n\n"); fprintf(header, "extern const uint16_t gavl_rgb_6_to_16[64];\n"); fprintf(source, "const uint16_t gavl_rgb_6_to_16[64] = \n{\n"); for(i = 0; i < 64; i++) { if(!((i)%8)) fprintf(source, " "); tmp_float = ((float)(i) / 63.0 * 65535.0); tmp_int = (int)(tmp_float+0.5); fprintf(source, "0x%04x, ", tmp_int); if(!((i+1)%8)) fprintf(source, "\n"); } fprintf(source, "};\n\n"); /* RGB 5/6 bit -> float */ fprintf(header, "extern const float gavl_rgb_5_to_float[32];\n"); fprintf(source, "const float gavl_rgb_5_to_float[32] = \n{\n"); for(i = 0; i < 32; i++) { if(!((i)%8)) fprintf(source, " "); tmp_float = ((float)(i) / 31.0); fprintf(source, "%8.6f, ", tmp_float); if(!((i+1)%8)) fprintf(source, "\n"); } fprintf(source, "};\n\n"); fprintf(header, "extern const float gavl_rgb_6_to_float[64];\n"); fprintf(source, "const float gavl_rgb_6_to_float[64] = \n{\n"); for(i = 0; i < 64; i++) { if(!((i)%8)) fprintf(source, " "); tmp_float = ((float)(i) / 63.0); fprintf(source, "%8.6f, ", tmp_float); if(!((i+1)%8)) fprintf(source, "\n"); } fprintf(source, "};\n\n"); fprintf(source, "/* RGB -> YUV conversions */\n"); fprintf(header, "extern const int gavl_r_to_y[256];\n"); fprintf(source, "const int gavl_r_to_y[256] = \n{\n"); for(i = 0; i < 0x100; i++) { if(!((i)%8)) fprintf(source, " "); fprintf(source, "%d, ", (int)((0.29900*219.0/255.0)*0x10000 * i + 16 * 0x10000 + 0.5)); if(!((i+1)%8)) fprintf(source, "\n"); } fprintf(source, "};\n\n"); fprintf(header, "extern const int gavl_g_to_y[256];\n"); fprintf(source, "const int gavl_g_to_y[256] = \n{\n"); for(i = 0; i < 0x100; i++) { if(!((i)%8)) fprintf(source, " "); fprintf(source, "%d, ", (int)((0.58700*219.0/255.0)*0x10000 * i + 0.5)); if(!((i+1)%8)) fprintf(source, "\n"); } fprintf(source, "};\n\n"); fprintf(header, "extern const int gavl_b_to_y[256];\n"); fprintf(source, "const int gavl_b_to_y[256] = \n{\n"); for(i = 0; i < 0x100; i++) { if(!((i)%8)) fprintf(source, " "); fprintf(source, "%d, ", (int)((0.11400*219.0/255.0)*0x10000 * i + 0.5)); if(!((i+1)%8)) fprintf(source, "\n"); } fprintf(source, "};\n\n"); fprintf(header, "extern const int gavl_r_to_u[256];\n"); fprintf(source, "const int gavl_r_to_u[256] = \n{\n"); for(i = 0; i < 0x100; i++) { if(!((i)%8)) fprintf(source, " "); fprintf(source, "%d, ", (int)(-(0.16874*224.0/255.0)*0x10000 * i + 0.5)); if(!((i+1)%8)) fprintf(source, "\n"); } fprintf(source, "};\n\n"); fprintf(header, "extern const int gavl_g_to_u[256];\n"); fprintf(source, "const int gavl_g_to_u[256] = \n{\n"); for(i = 0; i < 0x100; i++) { if(!((i)%8)) fprintf(source, " "); fprintf(source, "%d, ", (int)(-(0.33126*224.0/255.0)*0x10000 * i + 0.5)); if(!((i+1)%8)) fprintf(source, "\n"); } fprintf(source, "};\n\n"); fprintf(header, "extern const int gavl_b_to_u[256];\n"); fprintf(source, "const int gavl_b_to_u[256] = \n{\n"); for(i = 0; i < 0x100; i++) { if(!((i)%8)) fprintf(source, " "); fprintf(source, "%d, ", (int)( (0.50000*224.0/255.0)*0x10000 * i + 0x800000 + 0.5)); if(!((i+1)%8)) fprintf(source, "\n"); } fprintf(source, "};\n\n"); fprintf(header, "extern const int gavl_r_to_v[256];\n"); fprintf(source, "const int gavl_r_to_v[256] = \n{\n"); for(i = 0; i < 0x100; i++) { if(!((i)%8)) fprintf(source, " "); fprintf(source, "%d, ", (int)( (0.50000*224.0/255.0)*0x10000 * i + 0.5)); if(!((i+1)%8)) fprintf(source, "\n"); } fprintf(source, "};\n\n"); fprintf(header, "extern const int gavl_g_to_v[256];\n"); fprintf(source, "const int gavl_g_to_v[256] = \n{\n"); for(i = 0; i < 0x100; i++) { if(!((i)%8)) fprintf(source, " "); fprintf(source, "%d, ", (int)(-(0.41869*224.0/255.0)*0x10000 * i + 0.5)); if(!((i+1)%8)) fprintf(source, "\n"); } fprintf(source, "};\n\n"); fprintf(header, "extern const int gavl_b_to_v[256];\n"); fprintf(source, "const int gavl_b_to_v[256] = \n{\n"); for(i = 0; i < 0x100; i++) { if(!((i)%8)) fprintf(source, " "); fprintf(source, "%d, ", (int)(-(0.08131*224.0/255.0)*0x10000 * i + 0x800000 + 0.5)); if(!((i+1)%8)) fprintf(source, "\n"); } fprintf(source, "};\n\n"); fprintf(source, "/* RGB -> YUVJ conversions */\n"); fprintf(header, "extern const int gavl_r_to_yj[256];\n"); fprintf(source, "const int gavl_r_to_yj[256] = \n{\n"); for(i = 0; i < 0x100; i++) { if(!((i)%8)) fprintf(source, " "); fprintf(source, "%d, ", (int)((0.29900)*0x10000 * i + 0.5)); if(!((i+1)%8)) fprintf(source, "\n"); } fprintf(source, "};\n\n"); fprintf(header, "extern const int gavl_g_to_yj[256];\n"); fprintf(source, "const int gavl_g_to_yj[256] = \n{\n"); for(i = 0; i < 0x100; i++) { if(!((i)%8)) fprintf(source, " "); fprintf(source, "%d, ", (int)((0.58700)*0x10000 * i + 0.5)); if(!((i+1)%8)) fprintf(source, "\n"); } fprintf(source, "};\n\n"); fprintf(header, "extern const int gavl_b_to_yj[256];\n"); fprintf(source, "const int gavl_b_to_yj[256] = \n{\n"); for(i = 0; i < 0x100; i++) { if(!((i)%8)) fprintf(source, " "); fprintf(source, "%d, ", (int)((0.11400)*0x10000 * i + 0.5)); if(!((i+1)%8)) fprintf(source, "\n"); } fprintf(source, "};\n\n"); fprintf(header, "extern const int gavl_r_to_uj[256];\n"); fprintf(source, "const int gavl_r_to_uj[256] = \n{\n"); for(i = 0; i < 0x100; i++) { if(!((i)%8)) fprintf(source, " "); fprintf(source, "%d, ", (int)(-(0.16874)*0x10000 * i + 0.5)); if(!((i+1)%8)) fprintf(source, "\n"); } fprintf(source, "};\n\n"); fprintf(header, "extern const int gavl_g_to_uj[256];\n"); fprintf(source, "const int gavl_g_to_uj[256] = \n{\n"); for(i = 0; i < 0x100; i++) { if(!((i)%8)) fprintf(source, " "); fprintf(source, "%d, ", (int)(-(0.33126)*0x10000 * i + 0.5)); if(!((i+1)%8)) fprintf(source, "\n"); } fprintf(source, "};\n\n"); fprintf(header, "extern const int gavl_b_to_uj[256];\n"); fprintf(source, "const int gavl_b_to_uj[256] = \n{\n"); for(i = 0; i < 0x100; i++) { if(!((i)%8)) fprintf(source, " "); fprintf(source, "%d, ", (int)( (0.50000)*0x10000 * i + 0x800000 + 0.5)); if(!((i+1)%8)) fprintf(source, "\n"); } fprintf(source, "};\n\n"); fprintf(header, "extern const int gavl_r_to_vj[256];\n"); fprintf(source, "const int gavl_r_to_vj[256] = \n{\n"); for(i = 0; i < 0x100; i++) { if(!((i)%8)) fprintf(source, " "); fprintf(source, "%d, ", (int)( (0.50000)*0x10000 * i + 0.5)); if(!((i+1)%8)) fprintf(source, "\n"); } fprintf(source, "};\n\n"); fprintf(header, "extern const int gavl_g_to_vj[256];\n"); fprintf(source, "const int gavl_g_to_vj[256] = \n{\n"); for(i = 0; i < 0x100; i++) { if(!((i)%8)) fprintf(source, " "); fprintf(source, "%d, ", (int)(-(0.41869)*0x10000 * i + 0.5)); if(!((i+1)%8)) fprintf(source, "\n"); } fprintf(source, "};\n\n"); fprintf(header, "extern const int gavl_b_to_vj[256];\n"); fprintf(source, "const int gavl_b_to_vj[256] = \n{\n"); for(i = 0; i < 0x100; i++) { if(!((i)%8)) fprintf(source, " "); fprintf(source, "%d, ", (int)(-(0.08131)*0x10000 * i + 0x800000 + 0.5)); if(!((i+1)%8)) fprintf(source, "\n"); } fprintf(source, "};\n\n"); /* */ fprintf(source, "/* RGB -> YUV float conversions */\n"); fprintf(header, "extern const float gavl_r_to_y_float[256];\n"); fprintf(source, "const float gavl_r_to_y_float[256] = \n{\n"); for(i = 0; i < 0x100; i++) { if(!((i)%8)) fprintf(source, " "); fprintf(source, "%.8f, ", (float)i/255.0*0.29900); if(!((i+1)%8)) fprintf(source, "\n"); } fprintf(source, "};\n\n"); fprintf(header, "extern const float gavl_g_to_y_float[256];\n"); fprintf(source, "const float gavl_g_to_y_float[256] = \n{\n"); for(i = 0; i < 0x100; i++) { if(!((i)%8)) fprintf(source, " "); fprintf(source, "%.8f, ", (float)i/255.0*0.58700); if(!((i+1)%8)) fprintf(source, "\n"); } fprintf(source, "};\n\n"); fprintf(header, "extern const float gavl_b_to_y_float[256];\n"); fprintf(source, "const float gavl_b_to_y_float[256] = \n{\n"); for(i = 0; i < 0x100; i++) { if(!((i)%8)) fprintf(source, " "); fprintf(source, "%.8f, ", (float)i/255.0*0.11400); if(!((i+1)%8)) fprintf(source, "\n"); } fprintf(source, "};\n\n"); fprintf(header, "extern const float gavl_r_to_u_float[256];\n"); fprintf(source, "const float gavl_r_to_u_float[256] = \n{\n"); for(i = 0; i < 0x100; i++) { if(!((i)%8)) fprintf(source, " "); fprintf(source, "%.8f, ", (float)i/255.0*(-0.16874)); if(!((i+1)%8)) fprintf(source, "\n"); } fprintf(source, "};\n\n"); fprintf(header, "extern const float gavl_g_to_u_float[256];\n"); fprintf(source, "const float gavl_g_to_u_float[256] = \n{\n"); for(i = 0; i < 0x100; i++) { if(!((i)%8)) fprintf(source, " "); fprintf(source, "%.8f, ", (float)i/255.0*(-0.33126)); if(!((i+1)%8)) fprintf(source, "\n"); } fprintf(source, "};\n\n"); fprintf(header, "extern const float gavl_b_to_u_float[256];\n"); fprintf(source, "const float gavl_b_to_u_float[256] = \n{\n"); for(i = 0; i < 0x100; i++) { if(!((i)%8)) fprintf(source, " "); fprintf(source, "%.8f, ", (float)i/255.0*(0.50000)); if(!((i+1)%8)) fprintf(source, "\n"); } fprintf(source, "};\n\n"); fprintf(header, "extern const float gavl_r_to_v_float[256];\n"); fprintf(source, "const float gavl_r_to_v_float[256] = \n{\n"); for(i = 0; i < 0x100; i++) { if(!((i)%8)) fprintf(source, " "); fprintf(source, "%.8f, ", (float)i/255.0*(0.50000)); if(!((i+1)%8)) fprintf(source, "\n"); } fprintf(source, "};\n\n"); fprintf(header, "extern const float gavl_g_to_v_float[256];\n"); fprintf(source, "const float gavl_g_to_v_float[256] = \n{\n"); for(i = 0; i < 0x100; i++) { if(!((i)%8)) fprintf(source, " "); fprintf(source, "%.8f, ", (float)i/255.0*(-0.41869)); if(!((i+1)%8)) fprintf(source, "\n"); } fprintf(source, "};\n\n"); fprintf(header, "extern const float gavl_b_to_v_float[256];\n"); fprintf(source, "const float gavl_b_to_v_float[256] = \n{\n"); for(i = 0; i < 0x100; i++) { if(!((i)%8)) fprintf(source, " "); fprintf(source, "%.8f, ", (float)i/255.0*(-0.08131)); if(!((i+1)%8)) fprintf(source, "\n"); } fprintf(source, "};\n\n"); fprintf(source, "/* YUV -> RGB conversions */\n"); // YCbCr (8bit) -> R'G'B' (integer) according to CCIR 601 fprintf(header, "extern const int gavl_y_to_rgb[256];\n"); fprintf(source, "const int gavl_y_to_rgb[256] = \n{\n"); for(i = 0; i < 0x100; i++) { if(!((i)%8)) fprintf(source, " "); fprintf(source, "%d, ", (int)(255.0/219.0*(i-16) * 0x10000 + 0.5)); if(!((i+1)%8)) fprintf(source, "\n"); } fprintf(source, "};\n\n"); fprintf(header, "extern const int gavl_v_to_r[256];\n"); fprintf(source, "const int gavl_v_to_r[256] = \n{\n"); for(i = 0; i < 0x100; i++) { if(!((i)%8)) fprintf(source, " "); fprintf(source, "%d, ", (int)( 1.40200*255.0/224.0 * (i - 0x80) * 0x10000 + 0.5)); if(!((i+1)%8)) fprintf(source, "\n"); } fprintf(source, "};\n\n"); fprintf(header, "extern const int gavl_u_to_g[256];\n"); fprintf(source, "const int gavl_u_to_g[256] = \n{\n"); for(i = 0; i < 0x100; i++) { if(!((i)%8)) fprintf(source, " "); fprintf(source, "%d, ", (int)(-0.34414*255.0/224.0 * (i - 0x80) * 0x10000 + 0.5)); if(!((i+1)%8)) fprintf(source, "\n"); } fprintf(source, "};\n\n"); fprintf(header, "extern const int gavl_v_to_g[256];\n"); fprintf(source, "const int gavl_v_to_g[256] = \n{\n"); for(i = 0; i < 0x100; i++) { if(!((i)%8)) fprintf(source, " "); fprintf(source, "%d, ", (int)(-0.71414*255.0/224.0 * (i - 0x80) * 0x10000 + 0.5)); if(!((i+1)%8)) fprintf(source, "\n"); } fprintf(source, "};\n\n"); fprintf(header, "extern const int gavl_u_to_b[256];\n"); fprintf(source, "const int gavl_u_to_b[256] = \n{\n"); for(i = 0; i < 0x100; i++) { if(!((i)%8)) fprintf(source, " "); fprintf(source, "%d, ", (int)( 1.77200*255.0/224.0 * (i - 0x80) * 0x10000 + 0.5)); if(!((i+1)%8)) fprintf(source, "\n"); } fprintf(source, "};\n\n"); /* JPEG Quantization */ fprintf(header, "extern const int gavl_yj_to_rgb[256];\n"); fprintf(source, "const int gavl_yj_to_rgb[256] = \n{\n"); for(i = 0; i < 0x100; i++) { if(!((i)%8)) fprintf(source, " "); fprintf(source, "%d, ", (int)(i * 0x10000 + 0.5)); if(!((i+1)%8)) fprintf(source, "\n"); } fprintf(source, "};\n\n"); fprintf(header, "extern const int gavl_vj_to_r[256];\n"); fprintf(source, "const int gavl_vj_to_r[256] = \n{\n"); for(i = 0; i < 0x100; i++) { if(!((i)%8)) fprintf(source, " "); fprintf(source, "%d, ", (int)( 1.40200 * (i - 0x80) * 0x10000 + 0.5)); if(!((i+1)%8)) fprintf(source, "\n"); } fprintf(source, "};\n\n"); fprintf(header, "extern const int gavl_uj_to_g[256];\n"); fprintf(source, "const int gavl_uj_to_g[256] = \n{\n"); for(i = 0; i < 0x100; i++) { if(!((i)%8)) fprintf(source, " "); fprintf(source, "%d, ", (int)(-0.34414 * (i - 0x80) * 0x10000 + 0.5)); if(!((i+1)%8)) fprintf(source, "\n"); } fprintf(source, "};\n\n"); fprintf(header, "extern const int gavl_vj_to_g[256];\n"); fprintf(source, "const int gavl_vj_to_g[256] = \n{\n"); for(i = 0; i < 0x100; i++) { if(!((i)%8)) fprintf(source, " "); fprintf(source, "%d, ", (int)(-0.71414 * (i - 0x80) * 0x10000 + 0.5)); if(!((i+1)%8)) fprintf(source, "\n"); } fprintf(source, "};\n\n"); fprintf(header, "extern const int gavl_uj_to_b[256];\n"); fprintf(source, "const int gavl_uj_to_b[256] = \n{\n"); for(i = 0; i < 0x100; i++) { if(!((i)%8)) fprintf(source, " "); fprintf(source, "%d, ", (int)( 1.77200 * (i - 0x80) * 0x10000 + 0.5)); if(!((i+1)%8)) fprintf(source, "\n"); } fprintf(source, "};\n\n"); // YCbCr (8bit) -> R'G'B' (float) according to CCIR 601 fprintf(header, "extern const float gavl_y_to_rgb_float[256];\n"); fprintf(source, "const float gavl_y_to_rgb_float[256] = \n{\n"); for(i = 0; i < 0x100; i++) { if(!((i)%8)) fprintf(source, " "); fprintf(source, "%f, ", 1.0/219.0*(i-16)); if(!((i+1)%8)) fprintf(source, "\n"); } fprintf(source, "};\n\n"); fprintf(header, "extern const float gavl_v_to_r_float[256];\n"); fprintf(source, "const float gavl_v_to_r_float[256] = \n{\n"); for(i = 0; i < 0x100; i++) { if(!((i)%8)) fprintf(source, " "); fprintf(source, "%f, ", 1.40200/224.0 * (i - 0x80)); if(!((i+1)%8)) fprintf(source, "\n"); } fprintf(source, "};\n\n"); fprintf(header, "extern const float gavl_u_to_g_float[256];\n"); fprintf(source, "const float gavl_u_to_g_float[256] = \n{\n"); for(i = 0; i < 0x100; i++) { if(!((i)%8)) fprintf(source, " "); fprintf(source, "%f, ", -0.34414/224.0 * (i - 0x80)); if(!((i+1)%8)) fprintf(source, "\n"); } fprintf(source, "};\n\n"); fprintf(header, "extern const float gavl_v_to_g_float[256];\n"); fprintf(source, "const float gavl_v_to_g_float[256] = \n{\n"); for(i = 0; i < 0x100; i++) { if(!((i)%8)) fprintf(source, " "); fprintf(source, "%f, ", -0.71414/224.0 * (i - 0x80)); if(!((i+1)%8)) fprintf(source, "\n"); } fprintf(source, "};\n\n"); fprintf(header, "extern const float gavl_u_to_b_float[256];\n"); fprintf(source, "const float gavl_u_to_b_float[256] = \n{\n"); for(i = 0; i < 0x100; i++) { if(!((i)%8)) fprintf(source, " "); fprintf(source, "%f, ", 1.77200/224.0 * (i - 0x80)); if(!((i+1)%8)) fprintf(source, "\n"); } fprintf(source, "};\n\n"); /* JPEG Quantization */ fprintf(header, "extern const float gavl_yj_to_rgb_float[256];\n"); fprintf(source, "const float gavl_yj_to_rgb_float[256] = \n{\n"); for(i = 0; i < 0x100; i++) { if(!((i)%8)) fprintf(source, " "); fprintf(source, "%f, ", (float)i/255.0); if(!((i+1)%8)) fprintf(source, "\n"); } fprintf(source, "};\n\n"); fprintf(header, "extern const float gavl_vj_to_r_float[256];\n"); fprintf(source, "const float gavl_vj_to_r_float[256] = \n{\n"); for(i = 0; i < 0x100; i++) { if(!((i)%8)) fprintf(source, " "); fprintf(source, "%f, ", 1.40200/255.0 * (i - 0x80)); if(!((i+1)%8)) fprintf(source, "\n"); } fprintf(source, "};\n\n"); fprintf(header, "extern const float gavl_uj_to_g_float[256];\n"); fprintf(source, "const float gavl_uj_to_g_float[256] = \n{\n"); for(i = 0; i < 0x100; i++) { if(!((i)%8)) fprintf(source, " "); fprintf(source, "%f, ", -0.34414/255.0 * (i - 0x80)); if(!((i+1)%8)) fprintf(source, "\n"); } fprintf(source, "};\n\n"); fprintf(header, "extern const float gavl_vj_to_g_float[256];\n"); fprintf(source, "const float gavl_vj_to_g_float[256] = \n{\n"); for(i = 0; i < 0x100; i++) { if(!((i)%8)) fprintf(source, " "); fprintf(source, "%f, ", -0.71414/255.0 * (i - 0x80)); if(!((i+1)%8)) fprintf(source, "\n"); } fprintf(source, "};\n\n"); fprintf(header, "extern const float gavl_uj_to_b_float[256];\n"); fprintf(source, "const float gavl_uj_to_b_float[256] = \n{\n"); for(i = 0; i < 0x100; i++) { if(!((i)%8)) fprintf(source, " "); fprintf(source, "%f, ", 1.77200/255.0 * (i - 0x80)); if(!((i+1)%8)) fprintf(source, "\n"); } fprintf(source, "};\n\n"); fclose(header); fclose(source); fprintf(stderr, "Created %s and %s\n", HEADER_NAME, SOURCE_NAME); } bplaum-gavl-b9385e3/src/gen_ssim_table.c000066400000000000000000000045201513252040200201660ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include /* Compile with -lm */ #define SSIM_GAUSS_TAPS 11 #define SSIM_GAUSS_DEV 1.5 static void dump_array(double * arr, int start, int end) { int i; double tmp; double arr_norm[SSIM_GAUSS_TAPS]; /* Normalize array */ tmp = 0.0; for(i = start; i <= end; i++) tmp += arr[i]; for(i = start; i <= end; i++) arr_norm[i] = arr[i] / tmp; /* Dump array */ printf(" { "); /* Nonzero numbers come first */ for(i = start; i <= end; i++) printf("%.16f, ", arr_norm[i]); for(i = 0; i < start; i++) printf("%.16f, ", 0.0); for(i = end+1; i < SSIM_GAUSS_TAPS; i++) printf("%.16f, ", 0.0); printf("},\n"); } int main(int argc, char ** argv) { int i, j; double tmp; double arr[SSIM_GAUSS_TAPS]; /* Make unnormalized array */ for(i = 0; i < SSIM_GAUSS_TAPS; i++) { tmp = (double)(i - SSIM_GAUSS_TAPS/2) / SSIM_GAUSS_DEV; tmp *= -0.5 * tmp; arr[i] = exp(tmp); } printf("#define SSIM_GAUSS_TAPS %d\n", SSIM_GAUSS_TAPS); printf("static const double ssim_gauss_coeffs[%d][%d] = \n\ {\n", SSIM_GAUSS_TAPS, SSIM_GAUSS_TAPS); for(i = 0; i < SSIM_GAUSS_TAPS / 2; i++) { dump_array(arr, SSIM_GAUSS_TAPS/2 - i, SSIM_GAUSS_TAPS-1); } dump_array(arr, 0, SSIM_GAUSS_TAPS-1); for(i = 0; i < SSIM_GAUSS_TAPS / 2; i++) { dump_array(arr, 0, SSIM_GAUSS_TAPS - 2 - i); } printf(" };\n"); return 0; } bplaum-gavl-b9385e3/src/httptest.c000066400000000000000000000031701513252040200170720ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include #include #include #include #define LOG_DOMAIN "httptest" int main(int argc, char ** argv) { gavl_io_t * c; gavl_buffer_t buf; if(argc == 1) { fprintf(stderr, "Usage: %s uri\n", argv[0]); return EXIT_FAILURE; } gavl_buffer_init(&buf); c = gavl_http_client_create(); gavl_http_client_set_response_body(c, &buf); if(!gavl_http_client_open(c, "GET", argv[1])) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "http GET failed"); return EXIT_FAILURE; } gavl_log(GAVL_LOG_INFO, LOG_DOMAIN, "Downloaded http body %d bytes", buf.len); gavl_buffer_free(&buf); } bplaum-gavl-b9385e3/src/orientation_1.png000066400000000000000000000011671513252040200203340ustar00rootroot00000000000000PNG  IHDR(<oiCCPICC profile(}=H@ߦJE*VqP,8jP! :\MGbYWWAquqRtK -b㸇;@funD\dW+ӜdfsGw1_Qs",3Lxxz68GXQVωGM #8\xfL#b6fES#$NBcg\e{s2i !E,AUP:)Rt~\ J`X@d{k'ƽp|qa 4j}8 \-|^ki#wnip <)RgMY^<^%oC`@>jۿ5d]r>\ pHYs.#.#x?vtIME9WtEXtCommentCreated with GIMPWaIDATX1 0Xz+۩!KS_D!QTe<#vwgE n5N5 `+ `0 ?_ y/IENDB`bplaum-gavl-b9385e3/src/orientation_2.png000066400000000000000000000167571513252040200203500ustar00rootroot00000000000000PNG  IHDR(<o zTXtRaw profile type exifxڭYD^8;xRTWlI&1$ ?졜)\v>cןʶhy_8/ %,ۆυʹ5n!;q_h::ޝ9b ..vwuj f[iڲmga 3E)6?[']3 N3q/ :^/h{qc^^W\G;*6xj.z*=և6:3LhL#r.liKOm&`Ѐ嬙So^5عkn5Ŵ꧗z^sJ-ieј!wn##zA+gb-)+ Q;J>q}^r1F[RpmD d"AEXg*ޛY E֊D5$6Hn-$9~K`x>ϾBAD]1S̱$\)Rʩd-l3Sι,\*_8SMU_C5\K>5B-J7v긇{깗Pnx5ˆ#<kN7 34,l__5}fͬL}5ƸjE$gd8Mƣd@ّsF2'9;7%7]EuC?-wQTpͼ9%eVy$k]*bRiaj3ʡfjaMqy*᷽%vq=F4G0ڰehM#d: )y8ͨZҨY[ۏʴMIe0 [3I*n4 cTjK&Wh@*5RƦe %9x/ eiL,d>:,5KN-Y62* rTׇ7~$YͅY|*XiP1QKMYAFm;վ.m++wO8U;g7g'h~@fGgHeeMqz$׃umf4|ȣk3|#ͅ8E[csk |鎅F , oZ g~tɹ[Z^3Y'/(PU>-wDݏQ%̔>bZLۣg_O8|pJjܮ16Zî=Е1 CݛYU#au G2U#sYAtvpԧy1k'6KO1{Zu=)ջuR CE|Q U3ܽ7FvHCމy6D]7=}@c"Ʃ#6F@٘6"SKB<tZMa>vLb*H^ra)A8׭Wec&$aN]d;/"_ ع S6r5$G[tEeG֝ 7nͦ-@Wcޗ1[!]A?h"8+.-Z{-RZ&ZDm )(aU)ZAlgq|)OS!})#;SfXܫؔ ߔ@>I{8MYvӔ[؅aCujѡd1PnVk7k10n=mp8DmJT=|o4 ^DYBXVwWzUo,۳ ۞&j^#VK/tm0C MBD PhQ6qb{>&֏-Qek֜gX3*xuS6eK L56.b,TD1)C~< #It4/2o .+ٞ[Tb˭VzUZMd\fDz6Grwfw{ pUoQ^ʪ]4`?]#NK?:-)lA+]vf6V LQۑ_HDV.: w2-NHվ+jɗ/js$/cAa\eB@ɕIS(6F "^ܐ&B̂ 1 ]Y4`F5~nW֠-F"Bg׼a!]5oϚϾ&Bmѐyo7J}3uZ4`Xu"wOGzgO}EL=5bz^$z&k<ź<+K+ )Dݾ~Kg|>x xM)\*bOPە/#}\1S+qՂ-}\Q+fCWo[~KhħƆNa|%:kʝD#bn#'d.$DZ7<2wI`jۿ5d]reDiTXtXML:com.adobe.xmp !ur pHYs.#.#x?vtIME\]?6tEXtCommentCreated with GIMPWeIDATX1 Piz+өqujy=֩ [-`071M) `0 % !IENDB`bplaum-gavl-b9385e3/src/orientation_3.png000066400000000000000000000172751513252040200203450ustar00rootroot00000000000000PNG  IHDR(<o rzTXtRaw profile type exifxڥi++3Bphz3xïOv6N,#I[lqS)c 9.IO}^~l;?.YvM\\7os.\q~?p`O{Ț39]8ωןg >t1dΓ\$n] 5y("7?!}Ӝc{W\pyqc$Xޑ?y\;Q.W*靈6@<]=醍 9@Z%ȦNzhol#U,W͜آ׼ytb殹h+s~ywnzSjIkud4frm _kЯ0',WCT?r.-yuy1m zZ@E_Xg*hMH `C0♨׽ƛ} o`m,<]"vG|%B B%袏!Ƙb%O!ŔRN%lac)ǜrΥ0gaT•jjZ\-R˭tm{豧{zJ FqGڴM?Ì3<5}P55Ƹj f f(F0vrٕ2H/t}S mw>'Tp/q3"oPm!PbzY{IEp>𱹊fj.ʮ<W4#輩ɸ4Fy6gr^𜁕FL[&G'H"yjs^5fgG,%> .:欘{2{kqحX3 BmTQde$11&_9}{>g[}+VwQ+_UH`?c$ %1䒩TYgr:)\8YUC{ 1~,YMWy0JDPgs R@őn"q*{/'L]Vy3%v\D29\_sC=)1N^ds%vyNW1YoOnc)!ԁO=k wxwx wx;q<߉7߉9+߉97[jfkY-m [d)cdu*w4]:^T;*.;2Bs=Fv#֜ju фM2Q^yWD@jiJАT!,b"cOBgR%Kj gHpntЗX+6ůBj!'H]䱲#(bGgE; C/6C:P=}"iibaG|WA-_IۘAO00zErTo ~x$oDLE e_Q6-U{vƂ4cfSXSY-"{[눐q1ha!( @a6Q&Yk gu/ 2d] 3呱jڕ?q [ɰ%k$ά#ҏ_,+߇wm/x燫zS˪rxw,ZGVmSn,Jܫ-b7Mہ)]ZbDQ# vcF>`ad:zcµ@,8P ZƊl[nHC=쵕TڤfZPDeULz20M 10MmZ,cU.KòqE3Elo i|܍)HTE@CD_l6_v!VgYA^&rɿ-xWݕ yTghftlGՐF]6د2mlC_s|߮OhFo9*RV&QbKg ZsZ[VO9,9MQ(CÄ l-> ygPgVwBoިc?>U(m+HbF]c1HyNֲ3jVt=P\ҖӣB\#BǑb-z! ٠&GMpnAp^#a1^ld#b98_qVg1XfzTXtRaw profile type iptcx=L10yO ^ϔ @öD3(t1%!v Zšyb6o.iCCPICC profilex}=H@ߦJE*VqP,8jP! :\MGbYWWAquqRtK -b㸇;@funD\dW+ӜdfsGw1_Qs",3Lxxz68GXQVωGM #8\xfL#b6fES#$NBcg\e{s2i !E,AUP:)Rt~\ J`X@d{k'ƽp|qa 4j}8 \-|^ki#wnip <)RgMY^<^%oC`@>jۿ5d]reDiTXtXML:com.adobe.xmp LT pHYs.#.#x?vtIME:;T#tEXtCommentCreated with GIMPWgIDATX1 @jA#)49:bM_m1_?+^`0 jj0?}ʫa`0 ~r; j ^jKeK IENDB`bplaum-gavl-b9385e3/src/orientation_4.png000066400000000000000000000167341513252040200203450ustar00rootroot00000000000000PNG  IHDR(<o zTXtRaw profile type exifxڥYi0 S Zs)$'޾΋x*Jv? >.Hʱx/PXqkKGXǷk|v^`3y|?'yyB}n?O{9ssXrzt|ܧs6')l)łGH[7CbneÓ?eJo_u_32qܣ͟['V}{hy޿u޽^ yyߧGROO~'wΞ; .ө'7V#z,)dKюOB '4uШ H۹ , 7@M>؇&'_|4hYӝКe 2a02^}q?ϜKD3S0z6 B >τ~'7CP#1'"2 #\pIIe}* $GM B' x "%I"} c&| IRL)TfCs9KA:\JQŜ5:3J5\KФŖZni;Ǟz*0č8ȣ 3LqgzGδ}5:QㅔݗlJ{_0a8Oّ͆)6 @ H1l:Jaˤ;v 7×Os?"psCp@6B}G9kxfWbbʄ9(LUe*a!Fi>\yʵA:GjSĬu ~bI:Y&/ṣڐ#z" -a}?F pxY&]rO#;Fqj/PQq{108$ֲz" ,if!n1_A5 3e ga^HЎC76fi^J<#D9&߈}H<'6b+ax!2=gmJ^)ï@!.BުW^z8Ɋ*h,}V_;J j-Ih3QML& Q|_ͭ .kGB dѵXGd*j0.h :6U1QgaZ7 j.^&B8Y0rEf_TN7݇VO5ׄ;''@0PX66[̛Jr (6*ʰlr%F@ \W8 ]̌/08 \FJ[ܻzC;1]-*RP[%N=v-R Hkץ}֛ίFx\ cXٲKhԢ8Ʉ .JБs/'hp:kq_ A7cѱ2bt2zT*g9ڡ'Ᏹ$:"dMZ =u2(Q4<3 mst}xiN~@꫽PZ{gBt/DoT`2(n-=';m<-^a Szↁnz;΄^FZE7 T(ˏ=DM~ p?]c/]b27]\ pmt+~6_g~?+O]m@M*1ꌈݐY 8Z]zP )N#&+IXOXbVXM MtK\DDWcShD:@d$mlUE)DQ]$~NjV$&ߥpGꉗξ# V8!fg`u}B޽@Nݼ,&5Km֊N,Ֆ(RrNF0X&i8K2xnkS];j+htG`6>"p< #@ |v g J*@xC`Mذ|ale1'{Rcid 2oUsD,W^"sT !7 s#C.PLu ͽs.k?h;>q lq+PYS[hjS{1/ưZQY!e.c(h-cW y8sfo%Ԉ(ᚤTi&8mB9*,t_4E ?vV4zʺК-Z@RFG'( 4+yQ6;VҊq?UV(mN#vK4JgEPSVSWCߺ 4(j}W `WY΂ fRHA)LdbwO DZzHThɊսL[q)hc?u!jĴ𳠶jtnu8)uP8XeW@2n~=5q݂=#@=B^e;V@S/OէBLRy(aFV Lj̃V,&(8AφE h1ژbfzTXtRaw profile type iptcx=;0CwN#%uUUX~u?͖Tl#gtPb%ϫ MtLJ7{J R +iCCPICC profilex}=H@ߦJE*VqP,8jP! :\MGbYWWAquqRtK -b㸇;@funD\dW+ӜdfsGw1_Qs",3Lxxz68GXQVωGM #8\xfL#b6fES#$NBcg\e{s2i !E,AUP:)Rt~\ J`X@d{k'ƽp|qa 4j}8 \-|^ki#wnip <)RgMY^<^%oC`@>jۿ5d]reDiTXtXML:com.adobe.xmp DuF` pHYs.#.#x?vtIME6 ? tEXtCommentCreated with GIMPWgIDATX1 @S/cAz`"Ve#̩y`0   ^s0 o:evon?_X {,IENDB`bplaum-gavl-b9385e3/src/orientation_5.png000066400000000000000000000154521513252040200203420ustar00rootroot00000000000000PNG  IHDR<(-zTXtRaw profile type exifxYYv*z $q9szo]'Mb_YǖLS BaI?xB%Ք^ ? sd8M!Y3%q|>OAa<~T_h ,t, c7OA$|\9Ւ?nomߟ$s.Tq]؅ ͥ(S6xqdCKYo o#~]dPi[uk^lvElt ܏ R 3zq? F9W|?YvztybZHr:7EO[;`ߖpd#>* tuWπ|7ou_ ?c`3kc፳TRFٌN]^/XyzLea~y˳^aHk`ЋeFYDFo!O`m 6=wߒ `^  X;B/%/'2s,yWXw c %9$``i=GQd`S"'jQb1c5$)RN+ܶ,9Sι[J,RJ-rDXAZja-Q]z豧{鵷ađFe&OL32lA#iҬE6XhɲqjD7Rk^~ќ3mx^yar 3WW %fz|@s4R7~9ZiF`Ჩ[6yB5>7,!r@N`UeU8=`C5t* ׸>3LM v~ Y&X0_Ͳ6A f힬 0POddș"ii&c)qTaLmB8*ʐIkhn-۴nM &"֝_B° iO_ޔw_NsWס;7(G헠??+OK{ͭ?Jg;wO}:}-g5>}3_5>KƧgj|۸G"DHNڥ<ث:*Ў4#bLeQW-&Y%NJ=`g>j+ 'r>O؊bn~ s=X=ns[%`(w[АL2 lmqmDђ$ 9toN$Γ{2sSLו wh)62ԬilR𗂂bJmaz1@G -m]wD|C, - gHwV'pLC* IPvpmaA=,U,m&->[w{ظ!xT]P0YWwp+a}D_, EYT4*#PQ-8Ya!/.$eJd r,c=uv:Y芲ͭ:pޙ4jEGmkŠdp $o P/fiAWhBR>vPs"F \SrS IHz;wD;]$jDZv;Rѷ*  M,4JizRO+tWP>M}^tW}^YJize)ݧ镥tW@>M}ޮ>Cze)ݧ镥tWH>M}^A4Uf6orEcQgc e>2ƌ?=F?+EsZGf us~i C߉lKge#Y1hmiaOjiXzi%GI17us:z!Ρ@zlg O&uY S6iPM`VD iWI_=ԡ_>6?? Qjۿ5d]reDiTXtXML:com.adobe.xmp EZ pHYs.#.#x?vtIMEXtEXtCommentCreated with GIMPWeIDATX1 Pjdoilղ)ޯ1bud~\ܭ  x&^zԹǬL OJIENDB`bplaum-gavl-b9385e3/src/orientation_6.png000066400000000000000000000163131513252040200203400ustar00rootroot00000000000000PNG  IHDR<(- ~zTXtRaw profile type exifxڥZ[v#!*f 9Y\Qewq'N2EnZ#'K)9o)k]/'{ɣ+gIgBxqC\&|?>hDtC3>yNΉ?%w?%ZՄ=3vȾb>I9Ubߦ)9o ɯhBmÇmܾPwi.2[bߝa@w0HKv]jyD#9`tQEuֵ`r:dw-k WGpUqe Ʀ\bȓ+7t~bP@zU:u-ny $OPϘwp+TK̛"mA/o 5 90 z:Uoǀ< P lSt6Anx&-P ppbpd@]!XO(c ؀Mx'Ȓ@BB ؀+FAXCMDIHBۖCYr9\s+"%\JU_TбZkk0sK0zSϽ@8dGugL32lBi%ʫ"4hTѤYVmwNT?]@OF;jhi &1̀ ij!+7 3W-ebLvb/w!+(oq"Gݛmh'MKc#v|؇1͗6B5>|o!(>"y'a/ TP-5 |eqpMוJTH*lbɊ<4 j^- ՙ 0p`pȘg0*MðiV.V̜G.l0diJE:cAiuZ9XZ^kb$-Ap mi-\V]]`e\ ~@xlQT6MS%W"ՙ$- .Qsg{ CJSpmqhz[VZcI"$BAAȇy |=M X,퇭S-ZJ8r2#B~b3QJ2F+P;qeyôՑzM}*\YAdO HX |Tb#yY)vd-h;܏XtçuU Vx(hNoK?] 48lo0jDXjU=V |vCKF/$싴P|/d'`斱Uh\@ -+`mz@(#$v5-d0-(+zT^.s_{D#7nH ZiotX0.lhH}5wWvWm!}9>AS 珻o$ES9{ ˪U+#H)bӽoe*Tusl.5arj PDGD(C+O^yJ )C+O^awz!XzWX^yJ *C+QuTĊ9Od6^18NؤO?Ғz pvF](x2ꪈ-D5xAr(ʰq:NλcBlXgqqϊ4@lEQ@LkCVeƮ( ŧcNn#q&唁'J[ "PEf$Zͻ+kK{{2]HA ١Eا3U'T@|T ,Vf9QƴPrMV2*(g% lb5!.*;@a:I!PQwH?ٿ`PQpRԷSPء9͵[gL*y~p>0c9gD0xUEr}\l`W.NN*A JAջ:=D&=ԧ / ҞH?X~&ibtp~#B6FُDs99j-u NlTԥf-r8I9:Ji"V&;IIJ')6YykKm?NÉ 88K!uPdi: SP^j=kA^Ru54#5Gg4r@{ D\R0QljcWPnl>bHB>oob#Ŗp6jA~ ?Lg)]kT{V`Jq ?ϛ@M'͓];#xҔGK4% 7+>pnemi?wocN]눎SwwR @X @ @ *~^OЫ z?@R'tɱ`w+Ʊ?blPPۿU Z(XcMꐰNBjpu8P~gx>}ܧÁ?>jqq*ezTXtRaw profile type iptcx=J9@ x9;v$!]3l)f<1=@k]mU:՘jb g㏐iCCPICC profilex}=H@ߦJE*VqP,8jP! :\MGbYWWAquqRtK -b㸇;@funD\dW+ӜdfsGw1_Qs",3Lxxz68GXQVωGM #8\xfL#b6fES#$NBcg\e{s2i !E,AUP:)Rt~\ J`X@d{k'ƽp|qa 4j}8 \-|^ki#wnip <)RgMY^<^%oC`@>jۿ5d]reDiTXtXML:com.adobe.xmp Ƞ pHYs.#.#x?vtIME;~3tEXtCommentCreated with GIMPWjIDATX1 0 F.6T(7|:ZV0%yOY뙂4444444444444l+O8o#t#x+O UoIENDB`bplaum-gavl-b9385e3/src/orientation_7.png000066400000000000000000000171531513252040200203440ustar00rootroot00000000000000PNG  IHDR<(- %zTXtRaw profile type exifxڭ[v:D9&Z=~o}؉OK)D ;qBeM$w}~l;ӏוn2\2rL>noDp1QrNB{}[p[G?'*D֜++[89MAGǻ3G!s"~biϟ5`VۃwcͶʟe ܯU@ LOߎ\7?m uC0 p; n͟Ew}6ONH9{sr87umQ+9c` X^?y\+AFWY 鮋JutFgi -XdӀZ['/=Mv*fNuڢ׺ytbj4i^A߽.i(Rrvha T|_nNluOQǖ]@[y:}LXc@pmDqdd3cq,'5x ml-'~KP;}'} 68BAD]1S̱$\)Rʩd-j3t)\ kf.ATSmuPcM5oŖZnn;<ǞzeA( 7ađFekN7 34,7NT5}fR2.PjV0`bim#i 'YMG8eO}_ᦂ7)rJ-.b>juO&#~3]YmKkEZ=d\ΡÜ6_r:zbytәOLK3l28,h?S-݂ZNZ %g {ѡ0AٙwȌc.i6T٧&'Gu׭'r%䍄בKd.cu1 l=)úhZ J}U吹4R# WbsvNGgۓw2%eQp݀ ,"7a&Q K9 &O-UڎbHR2d$9ܽ2Y{:Fiux; rYy <]3ɝ8\R7g`/5W~#N} ӄQ#-cyJC'QGW 9$eSϠ&ԖCLoTiJAisFϬg)FopmdbJJ/WrR\6xcQ^Ze˳ݬ&g6ݣcI%,kµxr9+ \GVW2ԣg@a\qK4sAqw7+43ߔ&),}uUkL;182a $]pGkrPsy/أ={&DBf:G$dnKlr)"yREg Gc (=*v G7uy pK("52#kBqUSE`<{^oL~"/!X2_mVWһ)24LS̾+TwOz.3 +/"$w!b2M>2o*%s0o"!BHeJqbҊW1`%-=rϔuR<(#hknï0S2K}F7Z-O *)˽X{Ww~}3PsIcHξژkzF SRkn;4 ?DuXѢ4%08*l(0pڐ)]qY(ɑۢčAz )4fִ"^UEwDy5b6@WШf<aئM6k&sj b̛adX{E,3FsWi="lm 2aۦ71&lDxIZOc:փЃIZ]܄zoP @B7Wu|HPR'ԧ )~@}JPR'5Hڙ{P/r & AUJEt;t*9oi41Vm/%V43KDY&+էh ~v`">L"ezTXtRaw profile type iptcx=0C{X"q|vt)EPDӓ;l)f<qpp y`+:D$tZ~RlWiCCPICC profilex}=H@ߦJE*VqP,8jP! :\MGbYWWAquqRtK -b㸇;@funD\dW+ӜdfsGw1_Qs",3Lxxz68GXQVωGM #8\xfL#b6fES#$NBcg\e{s2i !E,AUP:)Rt~\ J`X@d{k'ƽp|qa 4j}8 \-|^ki#wnip <)RgMY^<^%oC`@>jۿ5d]reDiTXtXML:com.adobe.xmp W pHYs.#.#x?vtIME8tEXtCommentCreated with GIMPWcIDATX1 @/_T IȒƁ[{DuU-&Gv=Ý􀆆}Bxo̦-tΏz t WIIENDB`bplaum-gavl-b9385e3/src/orientation_8.png000066400000000000000000000165541513252040200203510ustar00rootroot00000000000000PNG  IHDR<(- "zTXtRaw profile type exifxڽY[+grxF'gOkʘB))j34<XR1ZB .ݯΆu\/o~&יkg|`0 FPzC9^]ܚGP9<^1'¹Oy}Yqݺ*Jx>~7hx-ik}Y炏y}Z#ao2vث5ls9yOuqsEv8 ^׸y >j$\ n3gOs"Ϧ.[tF0"ނZ;. >m#@<]p7뢹 ֱ,25|з$>7(i.nz%0<燷dw95[!R2"hӀǨ |y;B^fN`u|/=1;} XFEgH!*&U CI G` [si#K ɾ#! #2sdęK1DX5%H,%$Sɔ=1gcN9RfMJP*5\Kи&-J;.=p4`3␑FeצaSfy+jէjyrE "l@b(8 .3\)f6kdtgOw ?-n)rFKnf n/P뚂BlGzDJh&cj5\pBTU*{avaT汣чiPPme8!!mrXNvz`ca&mB<⑃iTgfia&ӽv2}S1[OlC9fٸ*5щ~H)2,zc-~T9YN6\tQ޾R@?X^}V~jb|Tިͥ?Jv5ܫn^+G1?5?5@o~rOo~rOo43AcJr.&rTv$ ~S-kMX%N5`g2 lܰ2,u0W\A ̮/lӠ:#Dl)I`{Pf7-}6M#ř" OaJ@]')&;9|PP,q<:RQ`nRu#)[ݠ6z_%Pj'XWLiDr=sV`X+;کK(ZXk :ǢHΦÛ*cJTWf ^Mho_WGZzIKy;YDODEoFyk- Iv(O+vdB!#gX42f' Hچ%T4T- )i TI;)K装0hQSEUd8kY $BD/pK7K~HSALoo[S/c^ G&S@^m-HW`\MNEA{1BhA=~J"aCd -xīXwJ/su miN .ߊ c6z07F}3Q 98iVj}"ۜbh d["xĠڲ 0Iuc5UV&u +Z q=z4~fu0Ů]ZDjUVDO77efIq)+6(cԠ5Iu<Q)BJ#3CkxgE$ߟv+W @ ŎOUˈ&=hd-XK7_6)+bBQ-R )_U@MA) *nW (⺰?.' .3}[C@q(jz4$4 g5)<:Og0;]([m Я\l |P1VuO" ]Xsd r˗ܢ<'ݶN_!JY"{9;|%7sIj-b+ܯ1wm| ]A h-C_ԄpKpqc3w{KO͇Ծׯܦ7^h]{qbxb?^m;Cj;whO- o>ϫ\x`Kf0 |G*T0 ӛ%w4.WR۳y;y/i W*iCCPICC profilex}=H@ߦJE*VqP,8jP! :\MGbYWWAquqRtK -b㸇;@funD\dW+ӜdfsGw1_Qs",3Lxxz68GXQVωGM #8\xfL#b6fES#$NBcg\e{s2i !E,AUP:)Rt~\ J`X@d{k'ƽp|qa 4j}8 \-|^ki#wnip <)RgMY^<^%oC`@>jۿ5d]reDiTXtXML:com.adobe.xmp # pHYs.#.#x?vtIME:3tEXtCommentCreated with GIMPWfIDATX1 Pjd4 4?6V-[+:F=qi4444444444444O3wA=jcrT QIENDB`bplaum-gavl-b9385e3/src/orientationtest.c000066400000000000000000000055671513252040200204620ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include #include #include #include "pngutil.h" #include #define LOG_DOMAIN "orientationtest" static const struct { gavl_image_orientation_t orient; const char * filename; } images[] = { { GAVL_IMAGE_ORIENT_NORMAL, "orientation_1.png" }, // EXIF: 1 { GAVL_IMAGE_ORIENT_ROT90_CW, "orientation_8.png" }, // EXIF: 8 { GAVL_IMAGE_ORIENT_ROT180_CW, "orientation_3.png" }, // EXIF: 3 { GAVL_IMAGE_ORIENT_ROT270_CW, "orientation_6.png" }, // EXIF: 6 { GAVL_IMAGE_ORIENT_FH, "orientation_2.png" }, // EXIF: 2 { GAVL_IMAGE_ORIENT_FH_ROT90_CW, "orientation_7.png" }, // EXIF: 7 { GAVL_IMAGE_ORIENT_FH_ROT180_CW, "orientation_4.png" }, // EXIF: 4 { GAVL_IMAGE_ORIENT_FH_ROT270_CW, "orientation_5.png" }, // EXIF: 5 }; int main(int argc, char ** argv) { int i; const char * end; char * tmp_string; char * filename; gavl_video_format_t in_format; gavl_video_format_t out_format; gavl_video_frame_t * in_frame; gavl_video_frame_t * out_frame; memset(&in_format, 0, sizeof(in_format)); memset(&out_format, 0, sizeof(out_format)); for(i = 0; i < 8; i++) { in_frame = read_png(images[i].filename, &in_format, GAVL_PIXELFORMAT_NONE); in_format.orientation = images[i].orient; gavl_video_format_normalize_orientation(&in_format, &out_format); out_frame = gavl_video_frame_create(&out_format); gavl_video_frame_normalize_orientation(&in_format, &out_format, in_frame, out_frame); end = strrchr(images[i].filename, '.'); tmp_string = gavl_strndup(images[i].filename, end); filename = gavl_sprintf("%s_normalized.png", tmp_string); write_png(filename, &out_format, out_frame); gavl_log(GAVL_LOG_INFO, LOG_DOMAIN, "Wrote %s", filename); free(filename); free(tmp_string); gavl_video_frame_destroy(in_frame); gavl_video_frame_destroy(out_frame); } } bplaum-gavl-b9385e3/src/pixelformat_penalty.c000066400000000000000000000027201513252040200213010ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include int main(int argc, char ** argv) { int i, j, num; gavl_pixelformat_t src, dst; num = gavl_num_pixelformats(); for(i = 0; i < num; i++) { src = gavl_get_pixelformat(i); for(j = 0; j < num; j++) { dst = gavl_get_pixelformat(j); fprintf(stderr, "src: %-23s, dst: %-23s, penalty: %6d\n", gavl_pixelformat_to_string(src), gavl_pixelformat_to_string(dst), gavl_pixelformat_conversion_penalty(src, dst)); } } return 0; } bplaum-gavl-b9385e3/src/plot_scale_kernels.c000066400000000000000000000065751513252040200210770ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include #include "../include/scale.h" static struct { char * name; gavl_scale_mode_t mode; int order; gavl_video_scale_get_weight func; } scale_modes[] = { { "Nearest", GAVL_SCALE_NEAREST }, { "Bilinear", GAVL_SCALE_BILINEAR }, { "Quadratic", GAVL_SCALE_QUADRATIC }, { "Cubic B-Spline", GAVL_SCALE_CUBIC_BSPLINE }, { "Cubic Mitchel", GAVL_SCALE_CUBIC_MITCHELL }, { "Cubic Catmull", GAVL_SCALE_CUBIC_CATMULL }, { "Sinc Lanczos (4th order)", GAVL_SCALE_SINC_LANCZOS, 4 }, { "Sinc Lanczos (5th order)", GAVL_SCALE_SINC_LANCZOS, 5 }, }; static int num_scale_modes = sizeof(scale_modes)/sizeof(scale_modes[0]); #define DATA_NAME "kernels.dat" #define COMMAND_NAME "kernels.gnu" #define TOTAL_POINTS 1000 int main(int argc, char ** argv) { FILE * data_file; FILE * command_file; float t, tmax; int i, j, num_points, num_points_test; gavl_video_options_t opt; memset(&opt, 0, sizeof(opt)); /* Open output files */ data_file = fopen(DATA_NAME, "w"); command_file = fopen(COMMAND_NAME, "w"); /* Get the scale functions */ num_points = 0; for(i = 0; i < num_scale_modes; i++) { opt.scale_mode = scale_modes[i].mode; opt.scale_order = scale_modes[i].order; scale_modes[i].func = gavl_video_scale_get_weight_func(&opt, &num_points_test); if(num_points < num_points_test) num_points = num_points_test; } tmax = num_points/2 + 0.5; fprintf(command_file, "plot "); for(j = 0; j < TOTAL_POINTS; j++) { t = (float)(j)/(float)(TOTAL_POINTS-1) * tmax; fprintf(data_file, "%f ", t); for(i = 0; i < num_scale_modes; i++) { opt.scale_mode = scale_modes[i].mode; opt.scale_order = scale_modes[i].order; fprintf(data_file, "%f", scale_modes[i].func(&opt, t)); fprintf(command_file, "\"%s\" using 1:%d title \"%s\" with lines", DATA_NAME, i+2, scale_modes[i].name); if(i == num_scale_modes -1) { fprintf(data_file, "\n"); fprintf(command_file, "\n"); } else { fprintf(data_file, " "); fprintf(command_file, ", "); } } } fclose(data_file); fclose(command_file); printf("Created scale kernels plot. To watch it,\n"); printf("type\n\nload \"%s\"\n\nfrom within gnuplot\n", COMMAND_NAME); return 0; } bplaum-gavl-b9385e3/src/pngutil.c000066400000000000000000000163441513252040200167040ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include #include #include #include void write_png(char * filename, gavl_video_format_t * format, gavl_video_frame_t * frame) { int i; unsigned char ** rows; gavl_video_options_t * opt; int color_type; FILE * output; png_structp png_ptr; png_infop info_ptr; gavl_video_converter_t * cnv; gavl_video_format_t format_1; gavl_video_frame_t * frame_1 = NULL; if((format->pixelformat != GAVL_RGB_24) && (format->pixelformat != GAVL_RGBA_32)) { cnv = gavl_video_converter_create(); gavl_video_format_copy(&format_1, format); if(gavl_pixelformat_has_alpha(format->pixelformat)) { format_1.pixelformat = GAVL_RGBA_32; color_type = PNG_COLOR_TYPE_RGBA; } else { format_1.pixelformat = GAVL_RGB_24; color_type = PNG_COLOR_TYPE_RGB; } frame_1 = gavl_video_frame_create(&format_1); opt = gavl_video_converter_get_options(cnv); gavl_video_options_set_alpha_mode(opt, GAVL_ALPHA_BLEND_COLOR); gavl_video_converter_init(cnv, format, &format_1); gavl_video_convert(cnv, frame, frame_1); gavl_video_converter_destroy(cnv); } else if(format->pixelformat == GAVL_RGB_24) { color_type = PNG_COLOR_TYPE_RGB; } else { color_type = PNG_COLOR_TYPE_RGBA; } output = fopen(filename, "wb"); if(!output) return; png_ptr = png_create_write_struct(PNG_LIBPNG_VER_STRING, NULL, NULL, NULL); info_ptr = png_create_info_struct(png_ptr); setjmp(png_jmpbuf(png_ptr)); png_init_io(png_ptr, output); png_set_IHDR(png_ptr, info_ptr, format->image_width, format->image_height, 8, color_type, PNG_INTERLACE_NONE, PNG_COMPRESSION_TYPE_DEFAULT, PNG_FILTER_TYPE_DEFAULT); rows = malloc(format->image_height * sizeof(*rows)); if(frame_1) { for(i = 0; i < format->image_height; i++) rows[i] = frame_1->planes[0] + i * frame_1->strides[0]; } else { for(i = 0; i < format->image_height; i++) rows[i] = frame->planes[0] + i * frame->strides[0]; } png_set_rows(png_ptr, info_ptr, rows); png_write_png(png_ptr, info_ptr, PNG_TRANSFORM_IDENTITY, NULL); png_destroy_write_struct(&png_ptr, &info_ptr); fclose(output); free(rows); if(frame_1) gavl_video_frame_destroy(frame_1); } gavl_video_frame_t * read_png(const char * filename, gavl_video_format_t * format, gavl_pixelformat_t pixelformat) { int i; unsigned char ** rows; gavl_video_converter_t * cnv; gavl_video_options_t * opt; gavl_video_format_t format_1; gavl_video_frame_t * frame, * frame_1; int bit_depth; int color_type; int has_alpha = 0; png_structp png_ptr; png_infop info_ptr; png_infop end_info; FILE * file; file = fopen(filename, "rb"); if(!file) { fprintf(stderr, "Cannot open file %s\n", filename); return NULL; } png_ptr = png_create_read_struct (PNG_LIBPNG_VER_STRING, NULL, NULL, NULL); setjmp(png_jmpbuf(png_ptr)); info_ptr = png_create_info_struct(png_ptr); end_info = png_create_info_struct(png_ptr); png_init_io(png_ptr, file); png_read_info(png_ptr, info_ptr); format->frame_width = png_get_image_width(png_ptr, info_ptr); format->frame_height = png_get_image_height(png_ptr, info_ptr); format->image_width = format->frame_width; format->image_height = format->frame_height; format->pixel_width = 1; format->pixel_height = 1; bit_depth = png_get_bit_depth(png_ptr, info_ptr); color_type = png_get_color_type(png_ptr, info_ptr); switch(color_type) { case PNG_COLOR_TYPE_GRAY: /* (bit depths 1, 2, 4, 8, 16) */ if(bit_depth < 8) #if GAVL_MAKE_BUILD(PNG_LIBPNG_VER_MAJOR, PNG_LIBPNG_VER_MINOR, PNG_LIBPNG_VER_RELEASE) < GAVL_MAKE_BUILD(1,2,9) png_set_gray_1_2_4_to_8(png_ptr); #else png_set_expand_gray_1_2_4_to_8(png_ptr); #endif if (png_get_valid(png_ptr, info_ptr, PNG_INFO_tRNS)) { png_set_tRNS_to_alpha(png_ptr); has_alpha = 1; } png_set_gray_to_rgb(png_ptr); break; case PNG_COLOR_TYPE_GRAY_ALPHA: /* (bit depths 8, 16) */ if(bit_depth == 16) png_set_strip_16(png_ptr); png_set_gray_to_rgb(png_ptr); break; case PNG_COLOR_TYPE_PALETTE: /* (bit depths 1, 2, 4, 8) */ png_set_palette_to_rgb(png_ptr); if (png_get_valid(png_ptr, info_ptr, PNG_INFO_tRNS)) { png_set_tRNS_to_alpha(png_ptr); has_alpha = 1; } break; case PNG_COLOR_TYPE_RGB: /* (bit_depths 8, 16) */ if(png_get_valid(png_ptr, info_ptr, PNG_INFO_tRNS)) { png_set_tRNS_to_alpha(png_ptr); has_alpha = 1; } if(bit_depth == 16) png_set_strip_16(png_ptr); break; case PNG_COLOR_TYPE_RGB_ALPHA: /* (bit_depths 8, 16) */ if(bit_depth == 16) png_set_strip_16(png_ptr); has_alpha = 1; break; } if(has_alpha) format->pixelformat = GAVL_RGBA_32; else format->pixelformat = GAVL_RGB_24; frame = gavl_video_frame_create(format); rows = malloc(format->frame_height * sizeof(*rows)); for(i = 0; i < format->frame_height; i++) rows[i] = frame->planes[0] + i * frame->strides[0]; png_read_image(png_ptr, rows); png_read_end(png_ptr, end_info); png_destroy_read_struct(&png_ptr, &info_ptr, &end_info); fclose(file); free(rows); /* Check whether to set up the converter */ if((pixelformat != GAVL_PIXELFORMAT_NONE) && (format->pixelformat != pixelformat)) { cnv = gavl_video_converter_create(); opt = gavl_video_converter_get_options(cnv); gavl_video_options_set_alpha_mode(opt, GAVL_ALPHA_BLEND_COLOR); gavl_video_format_copy(&format_1, format); format_1.pixelformat = pixelformat; frame_1 = gavl_video_frame_create(&format_1); gavl_video_converter_init(cnv, format, &format_1); gavl_video_convert(cnv, frame, frame_1); gavl_video_converter_destroy(cnv); format->pixelformat = pixelformat; } else frame_1 = NULL; if(frame_1) { gavl_video_frame_destroy(frame); return frame_1; } else return frame; } bplaum-gavl-b9385e3/src/pngutil.h000066400000000000000000000023061513252040200167020ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ void write_png(char * filename, gavl_video_format_t * format, gavl_video_frame_t * frame); gavl_video_frame_t * read_png(const char * filename, gavl_video_format_t * format, gavl_pixelformat_t pixelformat); bplaum-gavl-b9385e3/src/scale_time.c000066400000000000000000000113101513252040200173130ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include //#include "colorspace.h" // Common routines #include #include #include #include "timeutils.h" #define NUM_CONVERSIONS 20 //#define SCALE_MODE GAVL_SCALE_SINC_LANCZOS #define SCALE_MODE GAVL_SCALE_BILINEAR int main(int argc, char ** argv) { gavl_rectangle_f_t src_rect; gavl_rectangle_i_t dst_rect; uint64_t t; int i, j, imax; gavl_video_scaler_t *scaler; gavl_video_format_t format, format_1; gavl_video_frame_t * frame, * frame_1; gavl_video_options_t * opt; gavl_pixelformat_t csp; imax = gavl_num_pixelformats(); scaler = gavl_video_scaler_create(); opt = gavl_video_scaler_get_options(scaler); memset(&format, 0, sizeof(format)); memset(&format_1, 0, sizeof(format_1)); for(i = 0; i < imax; i++) { csp = gavl_get_pixelformat(i); fprintf(stderr, "Pixelformat: %s imax: %d\n", gavl_pixelformat_to_string(csp), imax); src_rect.w = atoi(argv[1]); src_rect.h = atoi(argv[2]); src_rect.x = 0; src_rect.y = 0; dst_rect.w = atoi(argv[3]); dst_rect.h = atoi(argv[4]); dst_rect.x = 0; dst_rect.y = 0; format.image_width = src_rect.w + src_rect.x; format.image_height = src_rect.h + src_rect.y; format.frame_width = src_rect.w + src_rect.x; format.frame_height = src_rect.h + src_rect.y; format.pixel_width = 1; format.pixel_height = 1; format_1.image_width = dst_rect.w + dst_rect.x; format_1.image_height = dst_rect.h + dst_rect.y; format_1.frame_width = dst_rect.w + dst_rect.x; format_1.frame_height = dst_rect.h + dst_rect.y; format_1.pixel_width = 1; format_1.pixel_height = 1; format.pixelformat = csp; format_1.pixelformat = csp; frame = gavl_video_frame_create(&format); frame_1 = gavl_video_frame_create(&format_1); gavl_video_frame_clear(frame_1, &format_1); /* Now, do the conversions */ fprintf(stderr, "C-Version:\n"); gavl_video_options_set_defaults(opt); gavl_video_options_set_scale_mode(opt, SCALE_MODE); gavl_video_options_set_scale_order(opt, 5); gavl_video_options_set_quality(opt, 3); // gavl_video_options_set_accel_flags(opt, GAVL_ACCEL_C); gavl_video_options_set_rectangles(opt, &src_rect, &dst_rect); if(gavl_video_scaler_init(scaler, &format, &format_1) < 0) // int output_height { fprintf(stderr, "No scaling routine defined\n"); } else { timer_init(); for(j = 0; j < NUM_CONVERSIONS; j++) { gavl_video_scaler_scale(scaler, frame, frame_1); } t = timer_stop(); fprintf(stderr, "Made %d conversions, Time: %e (%e per conversion)\n", NUM_CONVERSIONS, (double)t, (double)t/NUM_CONVERSIONS); } #if 1 fprintf(stderr, "MMX-Version:\n"); gavl_video_options_set_defaults(opt); gavl_video_options_set_scale_mode(opt, SCALE_MODE); gavl_video_options_set_quality(opt, 2); gavl_video_options_set_scale_order(opt, 5); gavl_video_options_set_rectangles(opt, &src_rect, &dst_rect); if(gavl_video_scaler_init(scaler, &format, &format_1) < 0) // int output_height { fprintf(stderr, "No scaling routine defined\n"); } else { timer_init(); for(j = 0; j < NUM_CONVERSIONS; j++) { gavl_video_scaler_scale(scaler, frame, frame_1); } t = timer_stop(); fprintf(stderr, "Made %d conversions, Time: %e (%e per conversion)\n", NUM_CONVERSIONS, (double)t, (double)t/NUM_CONVERSIONS); } #endif gavl_video_frame_destroy(frame); gavl_video_frame_destroy(frame_1); } gavl_video_scaler_destroy(scaler); return 0; } bplaum-gavl-b9385e3/src/scaletest.c000066400000000000000000000307531513252040200172110ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include //#include "colorspace.h" // Common routines #include #include #include gavl_pixelformat_t opt_pfmt = GAVL_PIXELFORMAT_NONE; gavl_rectangle_f_t src_rect; gavl_rectangle_i_t dst_rect; gavl_video_format_t format, format_1; gavl_video_frame_t * frame, * frame_1; static int scale_factor_x = 2; static int scale_factor_y = 2; static const struct { gavl_scale_mode_t mode; const char * name; } scale_modes[] = { { GAVL_SCALE_NEAREST, "nearest" }, { GAVL_SCALE_BILINEAR, "bilinear" }, { GAVL_SCALE_QUADRATIC, "quadratic" }, { GAVL_SCALE_CUBIC_BSPLINE, "bspline" }, { GAVL_SCALE_CUBIC_MITCHELL, "mitchell" }, { GAVL_SCALE_CUBIC_CATMULL, "catmull" }, { GAVL_SCALE_SINC_LANCZOS, "sinc" }, }; #define IN_X 0 #define IN_Y 0 #define OUT_X 10 #define OUT_Y 10 static void write_png(char * filename, gavl_video_format_t * format, gavl_video_frame_t * frame) { int i; unsigned char ** rows; gavl_video_options_t * opt; int color_type; FILE * output; png_structp png_ptr; png_infop info_ptr; gavl_video_converter_t * cnv; gavl_video_format_t format_1; gavl_video_frame_t * frame_1 = NULL; if((format->pixelformat != GAVL_RGB_24) && (format->pixelformat != GAVL_RGBA_32)) { cnv = gavl_video_converter_create(); gavl_video_format_copy(&format_1, format); if(gavl_pixelformat_has_alpha(format->pixelformat)) { format_1.pixelformat = GAVL_RGBA_32; color_type = PNG_COLOR_TYPE_RGBA; } else { format_1.pixelformat = GAVL_RGB_24; color_type = PNG_COLOR_TYPE_RGB; } frame_1 = gavl_video_frame_create(&format_1); opt = gavl_video_converter_get_options(cnv); gavl_video_options_set_alpha_mode(opt, GAVL_ALPHA_BLEND_COLOR); gavl_video_options_set_quality(opt, 2); gavl_video_converter_init(cnv, format, &format_1); gavl_video_convert(cnv, frame, frame_1); gavl_video_converter_destroy(cnv); } else if(format->pixelformat == GAVL_RGB_24) { color_type = PNG_COLOR_TYPE_RGB; } else { color_type = PNG_COLOR_TYPE_RGBA; } output = fopen(filename, "wb"); if(!output) return; png_ptr = png_create_write_struct(PNG_LIBPNG_VER_STRING, NULL, NULL, NULL); info_ptr = png_create_info_struct(png_ptr); setjmp(png_jmpbuf(png_ptr)); png_init_io(png_ptr, output); png_set_IHDR(png_ptr, info_ptr, format->image_width, format->image_height, 8, color_type, PNG_INTERLACE_NONE, PNG_COMPRESSION_TYPE_DEFAULT, PNG_FILTER_TYPE_DEFAULT); rows = malloc(format->image_height * sizeof(*rows)); if(frame_1) { for(i = 0; i < format->image_height; i++) rows[i] = frame_1->planes[0] + i * frame_1->strides[0]; } else { for(i = 0; i < format->image_height; i++) rows[i] = frame->planes[0] + i * frame->strides[0]; } png_set_rows(png_ptr, info_ptr, rows); png_write_png(png_ptr, info_ptr, PNG_TRANSFORM_IDENTITY, NULL); png_destroy_write_struct(&png_ptr, &info_ptr); fclose(output); free(rows); if(frame_1) gavl_video_frame_destroy(frame_1); } static gavl_video_frame_t * read_png(const char * filename, gavl_video_format_t * format, gavl_pixelformat_t pixelformat) { int i; unsigned char ** rows; gavl_video_converter_t * cnv; gavl_video_options_t * opt; gavl_video_format_t format_1; gavl_video_frame_t * frame, * frame_1; int bit_depth; int color_type; int has_alpha = 0; png_structp png_ptr; png_infop info_ptr; png_infop end_info; FILE * file; file = fopen(filename, "rb"); if(!file) { fprintf(stderr, "Cannot open file %s\n", filename); return NULL; } png_ptr = png_create_read_struct (PNG_LIBPNG_VER_STRING, NULL, NULL, NULL); setjmp(png_jmpbuf(png_ptr)); info_ptr = png_create_info_struct(png_ptr); end_info = png_create_info_struct(png_ptr); png_init_io(png_ptr, file); png_read_info(png_ptr, info_ptr); format->frame_width = png_get_image_width(png_ptr, info_ptr); format->frame_height = png_get_image_height(png_ptr, info_ptr); format->image_width = format->frame_width; format->image_height = format->frame_height; format->pixel_width = 1; format->pixel_height = 1; bit_depth = png_get_bit_depth(png_ptr, info_ptr); color_type = png_get_color_type(png_ptr, info_ptr); switch(color_type) { case PNG_COLOR_TYPE_GRAY: /* (bit depths 1, 2, 4, 8, 16) */ if(bit_depth < 8) #if GAVL_MAKE_BUILD(PNG_LIBPNG_VER_MAJOR, PNG_LIBPNG_VER_MINOR, PNG_LIBPNG_VER_RELEASE) < GAVL_MAKE_BUILD(1,2,9) png_set_gray_1_2_4_to_8(png_ptr); #else png_set_expand_gray_1_2_4_to_8(png_ptr); #endif if (png_get_valid(png_ptr, info_ptr, PNG_INFO_tRNS)) { png_set_tRNS_to_alpha(png_ptr); has_alpha = 1; } png_set_gray_to_rgb(png_ptr); break; case PNG_COLOR_TYPE_GRAY_ALPHA: /* (bit depths 8, 16) */ if(bit_depth == 16) png_set_strip_16(png_ptr); png_set_gray_to_rgb(png_ptr); break; case PNG_COLOR_TYPE_PALETTE: /* (bit depths 1, 2, 4, 8) */ png_set_palette_to_rgb(png_ptr); if (png_get_valid(png_ptr, info_ptr, PNG_INFO_tRNS)) { png_set_tRNS_to_alpha(png_ptr); has_alpha = 1; } break; case PNG_COLOR_TYPE_RGB: /* (bit_depths 8, 16) */ if(png_get_valid(png_ptr, info_ptr, PNG_INFO_tRNS)) { png_set_tRNS_to_alpha(png_ptr); has_alpha = 1; } if(bit_depth == 16) png_set_strip_16(png_ptr); break; case PNG_COLOR_TYPE_RGB_ALPHA: /* (bit_depths 8, 16) */ if(bit_depth == 16) png_set_strip_16(png_ptr); has_alpha = 1; break; } if(has_alpha) format->pixelformat = GAVL_RGBA_32; else format->pixelformat = GAVL_RGB_24; frame = gavl_video_frame_create(format); rows = malloc(format->frame_height * sizeof(*rows)); for(i = 0; i < format->frame_height; i++) rows[i] = frame->planes[0] + i * frame->strides[0]; png_read_image(png_ptr, rows); png_read_end(png_ptr, end_info); png_destroy_read_struct(&png_ptr, &info_ptr, &end_info); fclose(file); free(rows); /* Check whether to set up the converter */ if(format->pixelformat != pixelformat) { cnv = gavl_video_converter_create(); opt = gavl_video_converter_get_options(cnv); gavl_video_options_set_alpha_mode(opt, GAVL_ALPHA_BLEND_COLOR); gavl_video_format_copy(&format_1, format); format_1.pixelformat = pixelformat; frame_1 = gavl_video_frame_create(&format_1); gavl_video_converter_init(cnv, format, &format_1); gavl_video_convert(cnv, frame, frame_1); gavl_video_converter_destroy(cnv); format->pixelformat = pixelformat; } else frame_1 = NULL; if(frame_1) { gavl_video_frame_destroy(frame); return frame_1; } else return frame; } static void list_pfmts() { int i, num; num = gavl_num_pixelformats(); for(i = 0; i < num; i++) { printf("%s\n", gavl_pixelformat_to_string(gavl_get_pixelformat(i))); } } static void do_scale(gavl_video_scaler_t * scaler, const char * accel, const char * mode) { char filename_buffer[1024]; gavl_video_options_set_rectangles(gavl_video_scaler_get_options(scaler), &src_rect, &dst_rect); if(!gavl_video_scaler_init(scaler, &format, &format_1)) // int output_height { fprintf(stderr, "No scaling routine for %s defined\n", accel); return; } gavl_video_frame_clear(frame_1, &format_1); gavl_video_scaler_scale(scaler, frame, frame_1); sprintf(filename_buffer, "%s-%s-%s-scaled.png", gavl_pixelformat_to_string(format_1.pixelformat), mode, accel); write_png(filename_buffer, &format_1, frame_1); fprintf(stderr, "Wrote %s\n", filename_buffer); } static void print_help() { printf("Usage: scaletest [-pfmt ] [-x ] [-y ] file.png\n"); printf(" scaletest -help\n\n"); printf(" scaletest -listpfmt\n\n"); printf("-help\n Print this help and exit\n"); printf("-listpfmt\n List pixelformats and exit\n"); } int main(int argc, char ** argv) { int i, imax; int j, jmax; gavl_video_scaler_t *scaler; gavl_video_options_t * opt; gavl_pixelformat_t csp; memset(&format, 0, sizeof(format)); memset(&format_1, 0, sizeof(format_1)); imax = gavl_num_pixelformats(); jmax = sizeof(scale_modes)/sizeof(scale_modes[0]); scaler = gavl_video_scaler_create(); opt = gavl_video_scaler_get_options(scaler); if(argc < 2) { print_help(); return 0; } i = 1; while(i < argc) { if(!strcmp(argv[i], "-help")) { print_help(); return 0; } else if(!strcmp(argv[i], "-listpfmts")) { list_pfmts(); return 0; } else if(!strcmp(argv[i], "-pfmt")) { i++; opt_pfmt = gavl_string_to_pixelformat(argv[i]); i++; } else if(!strcmp(argv[i], "-x")) { i++; scale_factor_x = atoi(argv[i]); i++; } else if(!strcmp(argv[i], "-y")) { i++; scale_factor_y = atoi(argv[i]); i++; } else i++; } for(i = 0; i < imax; i++) { csp = gavl_get_pixelformat(i); if((opt_pfmt != GAVL_PIXELFORMAT_NONE) && (opt_pfmt != csp)) continue; fprintf(stderr, "Pixelformat: %s\n", gavl_pixelformat_to_string(csp)); frame = read_png(argv[argc-1], &format, csp); src_rect.w = format.image_width; src_rect.h = format.image_height; src_rect.x = 0; src_rect.y = 0; dst_rect.w = src_rect.w*scale_factor_x; dst_rect.h = src_rect.h*scale_factor_y; dst_rect.x = 0; dst_rect.y = 0; #if 0 /* Write test frame */ sprintf(filename_buffer, "%s-test.png", gavl_pixelformat_to_string(csp)); write_png(filename_buffer, &format, frame); #endif gavl_video_format_copy(&format_1, &format); format_1.image_width = dst_rect.w + dst_rect.x; format_1.image_height = dst_rect.h + dst_rect.y; format_1.frame_width = dst_rect.w + dst_rect.x; format_1.frame_height = dst_rect.h + dst_rect.y; frame_1 = gavl_video_frame_create(&format_1); gavl_video_options_set_quality(opt, 0); gavl_video_options_set_scale_order(opt, 5); for(j = 0; j < jmax; j++) { gavl_video_options_set_scale_mode(opt, scale_modes[j].mode); gavl_video_options_set_accel_flags(opt, GAVL_ACCEL_C); do_scale(scaler, "C", scale_modes[j].name); gavl_video_options_set_accel_flags(opt, GAVL_ACCEL_MMX); do_scale(scaler, "MMX", scale_modes[j].name); gavl_video_options_set_accel_flags(opt, GAVL_ACCEL_MMXEXT); do_scale(scaler, "MMXEXT", scale_modes[j].name); gavl_video_options_set_accel_flags(opt, GAVL_ACCEL_SSE); do_scale(scaler, "SSE", scale_modes[j].name); gavl_video_options_set_accel_flags(opt, GAVL_ACCEL_SSE2); do_scale(scaler, "SSE2", scale_modes[j].name); gavl_video_options_set_accel_flags(opt, GAVL_ACCEL_SSE3); do_scale(scaler, "SSE3", scale_modes[j].name); } /* */ gavl_video_frame_destroy(frame_1); gavl_video_frame_destroy(frame); } gavl_video_scaler_destroy(scaler); return 0; } bplaum-gavl-b9385e3/src/timescale_test.c000066400000000000000000000114631513252040200202240ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include /* We choose really large numbers */ /* NTSC */ #define FRAMERATE_NUM 300000000 #define FRAMERATE_DEN 10010000 /* PAL */ // #define FRAMERATE_NUM 250000000 // #define FRAMERATE_DEN 10000000 #define SAMPLERATE 48000 #define SCALE_1 1000000000 #define SCALE_2 2000000000 /* * int64_t gavl_time_scale(int scale, gavl_time_t time); * gavl_time_t gavl_time_unscale(int scale, int64_t time); * int64_t gavl_time_rescale(int scale1, int scale2, int64_t time); * int64_t gavl_time_to_samples(int samplerate, gavl_time_t time); * gavl_time_t gavl_samples_to_time(int samplerate, int64_t samples); * int64_t gavl_time_to_frames(int rate_num, int rate_den, gavl_time_t time); * gavl_time_t gavl_frames_to_time(int rate_num, int rate_den, int64_t frames); */ int main(int argc, char ** argv) { gavl_time_t time; int64_t samples; int64_t time_scaled; int64_t frames; int time_scale_1, time_scale_2; /* int64_t gavl_time_scale(int scale, gavl_time_t time); */ time = (gavl_time_t)GAVL_TIME_SCALE * 10000; // time_scale_1 = GAVL_TIME_SCALE * 2; time_scale_1 = 3333333; time_scaled = gavl_time_scale(time_scale_1, time); fprintf(stderr, "gavl_time_scale:\n"); fprintf(stderr, " time: %" PRId64 "\n", time); fprintf(stderr, " time_scale: %d\n", time_scale_1); fprintf(stderr, " time_scaled: %" PRId64 "\n", time_scaled); /* gavl_time_t gavl_time_unscale(int scale, int64_t time); */ fprintf(stderr, "gavl_time_unscale:\n"); fprintf(stderr, " time_scaled: %" PRId64 "\n", time_scaled); fprintf(stderr, " time_scale: %d\n", time_scale_1); fprintf(stderr, " time_unscaled: %" PRId64 "\n", gavl_time_unscale(time_scale_1, time_scaled)); /* int64_t gavl_time_rescale(int scale1, int scale2, int64_t time); */ time_scale_2 = 6666666; fprintf(stderr, "gavl_time_rescale:\n"); fprintf(stderr, " time_1: %" PRId64 "\n", time_scaled); fprintf(stderr, " time_scale_1: %d\n", time_scale_1); fprintf(stderr, " time_scale_2: %d\n", time_scale_2); fprintf(stderr, " time_rescaled: %" PRId64 "\n", gavl_time_rescale(time_scale_1, time_scale_2, time_scaled)); /* int64_t gavl_time_to_samples(int samplerate, gavl_time_t time); */ time = (gavl_time_t)GAVL_TIME_SCALE * 100000; samples = gavl_time_to_samples(SAMPLERATE, time); fprintf(stderr, "gavl_time_to_samples:\n"); fprintf(stderr, " time: %" PRId64 "\n", time); fprintf(stderr, " samplerate: %d\n", SAMPLERATE); fprintf(stderr, " samples: %" PRId64 "\n", samples); /* gavl_time_t gavl_samples_to_time(int samplerate, int64_t samples); */ fprintf(stderr, "gavl_samples_to_time:\n"); fprintf(stderr, " samples: %" PRId64 "\n", samples); fprintf(stderr, " samplerate: %d\n", SAMPLERATE); fprintf(stderr, " time: %" PRId64 "\n", gavl_samples_to_time(SAMPLERATE, samples)); /* int64_t gavl_time_to_frames(int rate_num, int rate_den, gavl_time_t time); */ time = (gavl_time_t)GAVL_TIME_SCALE * 100000; frames = gavl_time_to_frames(FRAMERATE_NUM, FRAMERATE_DEN, time); fprintf(stderr, "gavl_time_to_frames:\n"); fprintf(stderr, " time: %" PRId64 "\n", time); fprintf(stderr, " framerate: %f (%d:%d)\n", (float)FRAMERATE_NUM / (float)FRAMERATE_DEN, FRAMERATE_NUM, FRAMERATE_DEN); fprintf(stderr, " frames: %" PRId64 "\n",frames); /* gavl_time_t gavl_frames_to_time(int rate_num, int rate_den, int64_t frames); */ fprintf(stderr, "gavl_frames_to_time:\n"); fprintf(stderr, " frames: %" PRId64 "\n", frames); fprintf(stderr, " framerate: %f (%d:%d)\n", (float)FRAMERATE_NUM / (float)FRAMERATE_DEN, FRAMERATE_NUM, FRAMERATE_DEN); fprintf(stderr, " frames: %" PRId64 "\n", gavl_frames_to_time(FRAMERATE_NUM, FRAMERATE_DEN, frames)); return 0; } bplaum-gavl-b9385e3/src/timeutils.c000066400000000000000000000030131513252040200172260ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include #include #include static struct timeval time_before; static struct timeval time_after; void timer_init() { gettimeofday(&time_before, NULL); } uint64_t timer_stop() { uint64_t before, after, diff; gettimeofday(&time_after, NULL); before = ((uint64_t)time_before.tv_sec)*1000000 + time_before.tv_usec; after = ((uint64_t)time_after.tv_sec)*1000000 + time_after.tv_usec; /* fprintf(stderr, "Before: %f After: %f\n", before, after); */ diff = after - before; return diff; } bplaum-gavl-b9385e3/src/timeutils.h000066400000000000000000000020111513252040200172300ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ /* * Ultra simple timer utilities. */ void timer_init(void); uint64_t timer_stop(void); bplaum-gavl-b9385e3/src/v4l_m2m_converter.c000066400000000000000000000044071513252040200205660ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include #include #include #include #include #define LOG_DOMAIN "v4l_m2m_converter" int main(int argc, char ** argv) { gavl_hw_context_t * hwctx; gavl_array_t devices; const gavl_dictionary_t * device_info; gavl_v4l2_device_t * dev; gavl_video_format_t in_fmt; gavl_video_format_t out_fmt; gavl_array_init(&devices); gavl_v4l2_devices_scan_by_type(GAVL_V4L2_DEVICE_CONVERTER, &devices); if(!devices.num_entries) return EXIT_FAILURE; if(!(device_info = gavl_value_get_dictionary(&devices.entries[0]))) return EXIT_FAILURE; fprintf(stderr, "Got device:\n"); gavl_dictionary_dump(device_info, 2); hwctx = gavl_hw_ctx_create_v4l2(device_info); dev = gavl_hw_ctx_v4l2_get_device(hwctx); memset(&in_fmt, 0, sizeof(in_fmt)); memset(&out_fmt, 0, sizeof(out_fmt)); in_fmt.image_width = 1920; in_fmt.image_height = 1080; in_fmt.pixel_width = 1; in_fmt.pixel_height = 1; in_fmt.pixelformat = GAVL_YUV_420_P; in_fmt.framerate_mode = GAVL_FRAMERATE_STILL; gavl_video_format_copy(&out_fmt, &in_fmt); out_fmt.image_width = 1280; out_fmt.image_height = 720; if(!gavl_v4l2_device_init_converter(dev, &in_fmt, &out_fmt)) { gavl_log(GAVL_LOG_ERROR, LOG_DOMAIN, "Initializing converter failed"); } } bplaum-gavl-b9385e3/src/v4linfo.c000066400000000000000000000022631513252040200165760ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include #include int main() { gavl_array_t arr; gavl_array_init(&arr); gavl_v4l2_devices_scan(&arr); gavl_array_dump(&arr, 0); gavl_array_free(&arr); } bplaum-gavl-b9385e3/src/vaapi_x11.c000066400000000000000000000031341513252040200170040ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include #include #include int main(int argc, char ** argv) { gavl_video_frame_t * f; gavl_video_format_t fmt; gavl_hw_context_t * ctx; ctx = gavl_hw_ctx_create_vaapi_x11(NULL); memset(&fmt, 0, sizeof(fmt)); fmt.image_width = 320; fmt.image_height = 240; fmt.frame_width = 320; fmt.frame_height = 240; fmt.pixel_width = 1; fmt.pixel_height = 1; fmt.pixelformat = GAVL_YUV_420_P; gavl_hw_ctx_set_video(ctx, &fmt, GAVL_HW_FRAME_MODE_TRANSFER); f = gavl_hw_video_frame_create(ctx, 1); gavl_video_frame_destroy(f); gavl_hw_ctx_destroy(ctx); return 0; } bplaum-gavl-b9385e3/src/value_test.c000066400000000000000000000035101513252040200173640ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include #include static void set_dict(gavl_dictionary_t * dict) { gavl_audio_format_t afmt; gavl_video_format_t vfmt; gavl_dictionary_set_string(dict, "String", "value"); gavl_dictionary_set_int(dict, "Integer", 123); gavl_dictionary_set_float(dict, "Float", 123.0); memset(&afmt, 0, sizeof(afmt)); memset(&vfmt, 0, sizeof(vfmt)); gavl_dictionary_set_audio_format(dict, "afmt", &afmt); gavl_dictionary_set_video_format(dict, "vfmt", &vfmt); } #if 0 static void set_msg(gavl_msg_t * msg) { gavl_msg_init(msg); // gavl_msg_set_ } #endif int main(int argc, char ** argv) { gavl_dictionary_t dict; gavl_dictionary_t * sub_dict; gavl_dictionary_init(&dict); set_dict(&dict); sub_dict = gavl_dictionary_get_dictionary_create(&dict, "sub"); set_dict(sub_dict); gavl_dictionary_free(&dict); } bplaum-gavl-b9385e3/src/volume_test.c000066400000000000000000000115741513252040200175700ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ #include #include #include #include static struct { char * suffix; gavl_sample_format_t sampleformat; } sampleformats[] = { { "_u8", GAVL_SAMPLE_U8 }, { "_s8", GAVL_SAMPLE_S8 }, { "_u16", GAVL_SAMPLE_U16 }, { "_s16", GAVL_SAMPLE_S16 }, { "_s32", GAVL_SAMPLE_S32 }, { "_f", GAVL_SAMPLE_FLOAT }, }; #define NUM_SAMPLES 1024 static gavl_audio_frame_t * create_ref_frame(gavl_audio_format_t * format) { int i; float t; gavl_audio_frame_t * ret; memset(format, 0, sizeof(*format)); format->num_channels = 1; format->interleave_mode = GAVL_INTERLEAVE_ALL; format->sample_format = GAVL_SAMPLE_FLOAT; format->samples_per_frame = NUM_SAMPLES; format->samplerate = 48000; gavl_set_channel_setup(format); ret = gavl_audio_frame_create(format); ret->valid_samples = NUM_SAMPLES; for(i = 0; i < NUM_SAMPLES; i++) { t = (float)i * 2.0 * M_PI / (float)(NUM_SAMPLES-1); ret->samples.f[i] = sin(t); } return ret; } static void write_frames(gavl_audio_frame_t * ref_frame, gavl_audio_frame_t * out_frame, const char * suffix) { FILE * out; char filename[1024]; int i; sprintf(filename, "volume%s.dat", suffix); out = fopen(filename, "w"); for(i = 0; i < NUM_SAMPLES; i++) { fprintf(out, "%d %f %f\n", i, ref_frame->samples.f[i], out_frame->samples.f[i]); } fclose(out); fprintf(stderr, "Wrote %s\n", filename); sprintf(filename, "volume%s.gnu", suffix); out = fopen(filename, "w"); fprintf(out, "plot \"volume%s.dat\" using 1:2 title \"Before\"\n", suffix); fprintf(out, "replot \"volume%s.dat\" using 1:3 title \"After\"\n", suffix); fclose(out); fprintf(stderr, "Wrote %s\n", filename); } int main(int argc, char ** argv) { int do_convert, i; gavl_audio_frame_t * ref_frame; gavl_audio_converter_t * cnv_in; gavl_audio_converter_t * cnv_out; gavl_audio_frame_t * frame_1; gavl_audio_frame_t * frame_2; gavl_audio_frame_t * out_frame; gavl_audio_format_t ref_format; gavl_audio_format_t format; gavl_volume_control_t * vc; cnv_in = gavl_audio_converter_create(); cnv_out = gavl_audio_converter_create(); vc = gavl_volume_control_create(); ref_frame = create_ref_frame(&ref_format); out_frame = gavl_audio_frame_create(&ref_format); /* -6.0 dB (factor 0.5) */ gavl_volume_control_set_volume(vc, -6.0); for(i = 0; i < sizeof(sampleformats) / sizeof(sampleformats[0]); i++) { gavl_audio_format_copy(&format, &ref_format); format.sample_format = sampleformats[i].sampleformat; gavl_volume_control_set_format(vc, &format); frame_1 = gavl_audio_frame_create(&format); frame_2 = gavl_audio_frame_create(&format); do_convert = gavl_audio_converter_init(cnv_in, &ref_format, &format); if(do_convert) gavl_audio_converter_init(cnv_out, &format, &ref_format); if(do_convert) gavl_audio_convert(cnv_in, ref_frame, frame_1); else { gavl_audio_frame_copy(&format, frame_1, ref_frame, 0, 0, NUM_SAMPLES, NUM_SAMPLES); frame_1->valid_samples = NUM_SAMPLES; } gavl_audio_frame_copy(&format, frame_2, frame_1, 0, 0, NUM_SAMPLES, NUM_SAMPLES); frame_2->valid_samples = NUM_SAMPLES; gavl_volume_control_apply(vc, frame_2); if(do_convert) gavl_audio_convert(cnv_out, frame_2, out_frame); else { gavl_audio_frame_copy(&format, out_frame, frame_2, 0, 0, NUM_SAMPLES, NUM_SAMPLES); out_frame->valid_samples = NUM_SAMPLES; } write_frames(ref_frame, out_frame, sampleformats[i].suffix); gavl_audio_frame_destroy(frame_1); gavl_audio_frame_destroy(frame_2); } gavl_audio_frame_destroy(ref_frame); gavl_audio_frame_destroy(out_frame); gavl_volume_control_destroy(vc); gavl_audio_converter_destroy(cnv_in); gavl_audio_converter_destroy(cnv_out); return 0; } bplaum-gavl-b9385e3/update_copyright.sh000077500000000000000000000003661513252040200201750ustar00rootroot00000000000000#!/bin/sh NEW_YEAR=`date +%Y` OLD_YEAR=`echo "$NEW_YEAR - 1" | bc` OLD_YEARS="2001 - $OLD_YEAR" NEW_YEARS="2001 - $NEW_YEAR" echo "Replacing \"$OLD_YEARS\" with \"$NEW_YEARS\"" find . -name '*.[ch]' -exec sed -i "s/$OLD_YEARS/$NEW_YEARS/g" {} \; bplaum-gavl-b9385e3/utils/000077500000000000000000000000001513252040200154175ustar00rootroot00000000000000bplaum-gavl-b9385e3/utils/Makefile.am000066400000000000000000000001071513252040200174510ustar00rootroot00000000000000EXTRA_DIST = cpuinfo.c make_language_table.sh language-codes-full.csv bplaum-gavl-b9385e3/utils/cpuinfo.c000066400000000000000000000150671513252040200172370ustar00rootroot00000000000000/***************************************************************** * gavl - a general purpose audio/video processing library * * Copyright (c) 2001 - 2024 Members of the Gmerlin project * http://github.com/bplaum * * 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, see . * *****************************************************************/ /* * cpuinfo.c from the MPlayer project's TOOLS/ directory * * This program is used by the top level cpuinfo.sh script during ./configure * for systems which do not have /proc/cpuinfo. The output of this program is * formatted the same as 'cat /proc/cpuinfo'. * * NOTE: Only for the X86 cpu family. */ #include #include #include #include #include #ifdef __MINGW32__ #include void gettimeofday(struct timeval* t,void* timezone) { struct timeb timebuffer; ftime( &timebuffer ); t->tv_sec=timebuffer.time; t->tv_usec=1000*timebuffer.millitm; } #define MISSING_USLEEP #define sleep(t) _sleep(1000*t); #endif #ifdef M_UNIX typedef long long int64_t; #define MISSING_USLEEP #else #include #endif typedef struct cpuid_regs { unsigned int eax; unsigned int ebx; unsigned int ecx; unsigned int edx; } cpuid_regs_t; static cpuid_regs_t cpuid(int func) { cpuid_regs_t regs; #define CPUID ".byte 0x0f, 0xa2; " asm("push %%ebx; " "movl %4,%%eax; " CPUID "movl %%eax,%0; movl %%ebx,%1; movl %%ecx,%2; movl %%edx,%3;" "pop %%ebx" : "=m" (regs.eax), "=m" (regs.ebx), "=m" (regs.ecx), "=m" (regs.edx) : "g" (func) : "%eax", "%ecx", "%edx"); return regs; } static int64_t rdtsc(void) { unsigned int i, j; #define RDTSC ".byte 0x0f, 0x31; " asm(RDTSC : "=a"(i), "=d"(j) : ); return ((int64_t)j<<32) + (int64_t)i; } static void store32(char *d, unsigned int v) { d[0] = v & 0xff; d[1] = (v >> 8) & 0xff; d[2] = (v >> 16) & 0xff; d[3] = (v >> 24) & 0xff; } int main(int argc, char **argv) { cpuid_regs_t regs, regs_ext; char idstr[13]; unsigned max_cpuid; unsigned max_ext_cpuid; unsigned int amd_flags; unsigned int cpuType, cpuModel; char *model_name = "Unknown CPU"; int i; char processor_name[49]; regs = cpuid(0); max_cpuid = regs.eax; /* printf("%d CPUID function codes\n", max_cpuid+1); */ store32(idstr+0, regs.ebx); store32(idstr+4, regs.edx); store32(idstr+8, regs.ecx); idstr[12] = 0; printf("vendor_id\t: %s\n", idstr); if (strcmp(idstr, "GenuineIntel") == 0) model_name = "Unknown Intel CPU"; else if (strcmp(idstr, "AuthenticAMD") == 0) model_name = "Unknown AMD CPU"; regs_ext = cpuid((1<<31) + 0); max_ext_cpuid = regs_ext.eax; if (max_ext_cpuid >= (1<<31) + 1) { regs_ext = cpuid((1<<31) + 1); amd_flags = regs_ext.edx; if (max_ext_cpuid >= (1<<31) + 4) { for (i = 2; i <= 4; i++) { regs_ext = cpuid((1<<31) + i); store32(processor_name + (i-2)*16, regs_ext.eax); store32(processor_name + (i-2)*16 + 4, regs_ext.ebx); store32(processor_name + (i-2)*16 + 8, regs_ext.ecx); store32(processor_name + (i-2)*16 + 12, regs_ext.edx); } processor_name[48] = 0; model_name = processor_name; } } else { amd_flags = 0; } if (max_cpuid >= 1) { static struct { int bit; char *desc;; char *description; } cap[] = { { 0, "fpu", "Floating-point unit on-chip" }, { 1, "vme", "Virtual Mode Enhancements" }, { 2, "de", "Debugging Extension" }, { 3, "pse", "Page Size Extension" }, { 4, "tsc", "Time Stamp Counter" }, { 5, "msr", "Pentium Processor MSR" }, { 6, "pae", "Physical Address Extension" }, { 7, "mce", "Machine Check Exception" }, { 8, "cx8", "CMPXCHG8B Instruction Supported" }, { 9, "apic", "On-chip CPIC Hardware Enabled" }, { 11, "sep", "SYSENTER and SYSEXIT" }, { 12, "mtrr", "Memory Type Range Registers" }, { 13, "pge", "PTE Global Bit" }, { 14, "mca", "Machine Check Architecture" }, { 15, "cmov", "Conditional Move/Compare Instruction" }, { 16, "pat", "Page Attribute Table" }, { 17, "pse36", "Page Size Extension 36-bit" }, { 18, "psn", "Processor Serial Number" }, { 19, "cflsh", "CFLUSH instruction" }, { 21, "ds", "Debug Store" }, { 22, "acpi", "Thermal Monitor and Clock Ctrl" }, { 23, "mmx", "MMX Technology" }, { 24, "fxsr", "FXSAVE/FXRSTOR" }, { 25, "sse", "SSE Extensions" }, { 26, "sse2", "SSE2 Extensions" }, { 27, "ss", "Self Snoop" }, { 29, "tm", "Therm. Monitor" }, { -1 } }; static struct { int bit; char *desc;; char *description; } cap_amd[] = { { 22, "mmxext","MMX Technology (AMD Extensions)" }, { 30, "3dnowext","3Dnow! Extensions" }, { 31, "3dnow", "3Dnow!" }, { 32, "k6_mtrr", "Memory Type Range Registers" }, { -1 } }; int i; regs = cpuid(1); cpuType = (regs.eax >> 8) & 0xf; cpuModel = (regs.eax >> 4) & 0xf; if (cpuType == 0xf) cpuType = 0xf + ((regs.eax >> 20) & 0xf); // extended family if (cpuType == 0xf || cpuType == 6) cpuModel |= ((regs.eax >> 16) & 0xf) << 4; printf("cpu family\t: %d\n" "model\t\t: %d\n" "stepping\t: %d\n" , cpuType, cpuModel, regs.eax & 0xf); printf("flags\t\t:"); for (i = 0; cap[i].bit >= 0; i++) { if (regs.edx & (1 << cap[i].bit)) { printf(" %s", cap[i].desc); } } for (i = 0; cap_amd[i].bit >= 0; i++) { if (amd_flags & (1 << cap_amd[i].bit)) { printf(" %s", cap_amd[i].desc); } } printf("\n"); if (regs.edx & (1 << 4)) { int64_t tsc_start, tsc_end; struct timeval tv_start, tv_end; int usec_delay; tsc_start = rdtsc(); gettimeofday(&tv_start, NULL); #ifdef MISSING_USLEEP sleep(1); #else usleep(100000); #endif tsc_end = rdtsc(); gettimeofday(&tv_end, NULL); usec_delay = 1000000 * (tv_end.tv_sec - tv_start.tv_sec) + (tv_end.tv_usec - tv_start.tv_usec); printf("cpu MHz\t\t: %.3f\n", (double)(tsc_end-tsc_start) / usec_delay); } } printf("model name\t: %s\n", model_name); exit(0); } bplaum-gavl-b9385e3/utils/language-codes-full.csv000066400000000000000000000376551513252040200217720ustar00rootroot00000000000000alpha3-b,alpha3-t,alpha2,English,French aar,,aa,Afar,afar abk,,ab,Abkhazian,abkhaze ace,,,Achinese,aceh ach,,,Acoli,acoli ada,,,Adangme,adangme ady,,,Adyghe; Adygei,adyghé afa,,,Afro-Asiatic languages,"afro-asiatiques, langues" afh,,,Afrihili,afrihili afr,,af,Afrikaans,afrikaans ain,,,Ainu,aïnou aka,,ak,Akan,akan akk,,,Akkadian,akkadien alb,sqi,sq,Albanian,albanais ale,,,Aleut,aléoute alg,,,Algonquian languages,"algonquines, langues" alt,,,Southern Altai,altai du Sud amh,,am,Amharic,amharique ang,,,"English, Old (ca.450-1100)",anglo-saxon (ca.450-1100) anp,,,Angika,angika apa,,,Apache languages,"apaches, langues" ara,,ar,Arabic,arabe arc,,,Official Aramaic (700-300 BCE); Imperial Aramaic (700-300 BCE),araméen d'empire (700-300 BCE) arg,,an,Aragonese,aragonais arm,hye,hy,Armenian,arménien arn,,,Mapudungun; Mapuche,mapudungun; mapuche; mapuce arp,,,Arapaho,arapaho art,,,Artificial languages,"artificielles, langues" arw,,,Arawak,arawak asm,,as,Assamese,assamais ast,,,Asturian; Bable; Leonese; Asturleonese,asturien; bable; léonais; asturoléonais ath,,,Athapascan languages,"athapascanes, langues" aus,,,Australian languages,"australiennes, langues" ava,,av,Avaric,avar ave,,ae,Avestan,avestique awa,,,Awadhi,awadhi aym,,ay,Aymara,aymara aze,,az,Azerbaijani,azéri bad,,,Banda languages,"banda, langues" bai,,,Bamileke languages,"bamiléké, langues" bak,,ba,Bashkir,bachkir bal,,,Baluchi,baloutchi bam,,bm,Bambara,bambara ban,,,Balinese,balinais baq,eus,eu,Basque,basque bas,,,Basa,basa bat,,,Baltic languages,"baltes, langues" bej,,,Beja; Bedawiyet,bedja bel,,be,Belarusian,biélorusse bem,,,Bemba,bemba ben,,bn,Bengali,bengali ber,,,Berber languages,"berbères, langues" bho,,,Bhojpuri,bhojpuri bih,,bh,Bihari languages,langues biharis bik,,,Bikol,bikol bin,,,Bini; Edo,bini; edo bis,,bi,Bislama,bichlamar bla,,,Siksika,blackfoot bnt,,,Bantu languages,"bantou, langues" bos,,bs,Bosnian,bosniaque bra,,,Braj,braj bre,,br,Breton,breton btk,,,Batak languages,"batak, langues" bua,,,Buriat,bouriate bug,,,Buginese,bugi bul,,bg,Bulgarian,bulgare bur,mya,my,Burmese,birman byn,,,Blin; Bilin,blin; bilen cad,,,Caddo,caddo cai,,,Central American Indian languages,"amérindiennes de L'Amérique centrale, langues" car,,,Galibi Carib,karib; galibi; carib cat,,ca,Catalan; Valencian,catalan; valencien cau,,,Caucasian languages,"caucasiennes, langues" ceb,,,Cebuano,cebuano cel,,,Celtic languages,"celtiques, langues; celtes, langues" cha,,ch,Chamorro,chamorro chb,,,Chibcha,chibcha che,,ce,Chechen,tchétchène chg,,,Chagatai,djaghataï chi,zho,zh,Chinese,chinois chk,,,Chuukese,chuuk chm,,,Mari,mari chn,,,Chinook jargon,"chinook, jargon" cho,,,Choctaw,choctaw chp,,,Chipewyan; Dene Suline,chipewyan chr,,,Cherokee,cherokee chu,,cu,Church Slavic; Old Slavonic; Church Slavonic; Old Bulgarian; Old Church Slavonic,slavon d'église; vieux slave; slavon liturgique; vieux bulgare chv,,cv,Chuvash,tchouvache chy,,,Cheyenne,cheyenne cmc,,,Chamic languages,"chames, langues" cnr,,,Montenegrin,monténégrin cop,,,Coptic,copte cor,,kw,Cornish,cornique cos,,co,Corsican,corse cpe,,,"Creoles and pidgins, English based",créoles et pidgins basés sur l'anglais cpf,,,"Creoles and pidgins, French-based",créoles et pidgins basés sur le français cpp,,,"Creoles and pidgins, Portuguese-based",créoles et pidgins basés sur le portugais cre,,cr,Cree,cree crh,,,Crimean Tatar; Crimean Turkish,tatar de Crimé crp,,,Creoles and pidgins,créoles et pidgins csb,,,Kashubian,kachoube cus,,,Cushitic languages,"couchitiques, langues" cze,ces,cs,Czech,tchèque dak,,,Dakota,dakota dan,,da,Danish,danois dar,,,Dargwa,dargwa day,,,Land Dayak languages,"dayak, langues" del,,,Delaware,delaware den,,,Slave (Athapascan),esclave (athapascan) dgr,,,Dogrib,dogrib din,,,Dinka,dinka div,,dv,Divehi; Dhivehi; Maldivian,maldivien doi,,,Dogri,dogri dra,,,Dravidian languages,"dravidiennes, langues" dsb,,,Lower Sorbian,bas-sorabe dua,,,Duala,douala dum,,,"Dutch, Middle (ca.1050-1350)",néerlandais moyen (ca. 1050-1350) dut,nld,nl,Dutch; Flemish,néerlandais; flamand dyu,,,Dyula,dioula dzo,,dz,Dzongkha,dzongkha efi,,,Efik,efik egy,,,Egyptian (Ancient),égyptien eka,,,Ekajuk,ekajuk elx,,,Elamite,élamite eng,,en,English,anglais enm,,,"English, Middle (1100-1500)",anglais moyen (1100-1500) epo,,eo,Esperanto,espéranto est,,et,Estonian,estonien ewe,,ee,Ewe,éwé ewo,,,Ewondo,éwondo fan,,,Fang,fang fao,,fo,Faroese,féroïen fat,,,Fanti,fanti fij,,fj,Fijian,fidjien fil,,,Filipino; Pilipino,filipino; pilipino fin,,fi,Finnish,finnois fiu,,,Finno-Ugrian languages,"finno-ougriennes, langues" fon,,,Fon,fon fre,fra,fr,French,français frm,,,"French, Middle (ca.1400-1600)",français moyen (1400-1600) fro,,,"French, Old (842-ca.1400)",français ancien (842-ca.1400) frr,,,Northern Frisian,frison septentrional frs,,,Eastern Frisian,frison oriental fry,,fy,Western Frisian,frison occidental ful,,ff,Fulah,peul fur,,,Friulian,frioulan gaa,,,Ga,ga gay,,,Gayo,gayo gba,,,Gbaya,gbaya gem,,,Germanic languages,"germaniques, langues" geo,kat,ka,Georgian,géorgien ger,deu,de,German,allemand gez,,,Geez,guèze gil,,,Gilbertese,kiribati gla,,gd,Gaelic; Scottish Gaelic,gaélique; gaélique écossais gle,,ga,Irish,irlandais glg,,gl,Galician,galicien glv,,gv,Manx,manx; mannois gmh,,,"German, Middle High (ca.1050-1500)","allemand, moyen haut (ca. 1050-1500)" goh,,,"German, Old High (ca.750-1050)","allemand, vieux haut (ca. 750-1050)" gon,,,Gondi,gond gor,,,Gorontalo,gorontalo got,,,Gothic,gothique grb,,,Grebo,grebo grc,,,"Greek, Ancient (to 1453)",grec ancien (jusqu'à 1453) gre,ell,el,"Greek, Modern (1453-)",grec moderne (après 1453) grn,,gn,Guarani,guarani gsw,,,Swiss German; Alemannic; Alsatian,suisse alémanique; alémanique; alsacien guj,,gu,Gujarati,goudjrati gwi,,,Gwich'in,gwich'in hai,,,Haida,haida hat,,ht,Haitian; Haitian Creole,haïtien; créole haïtien hau,,ha,Hausa,haoussa haw,,,Hawaiian,hawaïen heb,,he,Hebrew,hébreu her,,hz,Herero,herero hil,,,Hiligaynon,hiligaynon him,,,Himachali languages; Western Pahari languages,langues himachalis; langues paharis occidentales hin,,hi,Hindi,hindi hit,,,Hittite,hittite hmn,,,Hmong; Mong,hmong hmo,,ho,Hiri Motu,hiri motu hrv,,hr,Croatian,croate hsb,,,Upper Sorbian,haut-sorabe hun,,hu,Hungarian,hongrois hup,,,Hupa,hupa iba,,,Iban,iban ibo,,ig,Igbo,igbo ice,isl,is,Icelandic,islandais ido,,io,Ido,ido iii,,ii,Sichuan Yi; Nuosu,yi de Sichuan ijo,,,Ijo languages,"ijo, langues" iku,,iu,Inuktitut,inuktitut ile,,ie,Interlingue; Occidental,interlingue ilo,,,Iloko,ilocano ina,,ia,Interlingua (International Auxiliary Language Association),interlingua (langue auxiliaire internationale) inc,,,Indic languages,"indo-aryennes, langues" ind,,id,Indonesian,indonésien ine,,,Indo-European languages,"indo-européennes, langues" inh,,,Ingush,ingouche ipk,,ik,Inupiaq,inupiaq ira,,,Iranian languages,"iraniennes, langues" iro,,,Iroquoian languages,"iroquoises, langues" ita,,it,Italian,italien jav,,jv,Javanese,javanais jbo,,,Lojban,lojban jpn,,ja,Japanese,japonais jpr,,,Judeo-Persian,judéo-persan jrb,,,Judeo-Arabic,judéo-arabe kaa,,,Kara-Kalpak,karakalpak kab,,,Kabyle,kabyle kac,,,Kachin; Jingpho,kachin; jingpho kal,,kl,Kalaallisut; Greenlandic,groenlandais kam,,,Kamba,kamba kan,,kn,Kannada,kannada kar,,,Karen languages,"karen, langues" kas,,ks,Kashmiri,kashmiri kau,,kr,Kanuri,kanouri kaw,,,Kawi,kawi kaz,,kk,Kazakh,kazakh kbd,,,Kabardian,kabardien kha,,,Khasi,khasi khi,,,Khoisan languages,"khoïsan, langues" khm,,km,Central Khmer,khmer central kho,,,Khotanese; Sakan,khotanais; sakan kik,,ki,Kikuyu; Gikuyu,kikuyu kin,,rw,Kinyarwanda,rwanda kir,,ky,Kirghiz; Kyrgyz,kirghiz kmb,,,Kimbundu,kimbundu kok,,,Konkani,konkani kom,,kv,Komi,kom kon,,kg,Kongo,kongo kor,,ko,Korean,coréen kos,,,Kosraean,kosrae kpe,,,Kpelle,kpellé krc,,,Karachay-Balkar,karatchai balkar krl,,,Karelian,carélien kro,,,Kru languages,"krou, langues" kru,,,Kurukh,kurukh kua,,kj,Kuanyama; Kwanyama,kuanyama; kwanyama kum,,,Kumyk,koumyk kur,,ku,Kurdish,kurde kut,,,Kutenai,kutenai lad,,,Ladino,judéo-espagnol lah,,,Lahnda,lahnda lam,,,Lamba,lamba lao,,lo,Lao,lao lat,,la,Latin,latin lav,,lv,Latvian,letton lez,,,Lezghian,lezghien lim,,li,Limburgan; Limburger; Limburgish,limbourgeois lin,,ln,Lingala,lingala lit,,lt,Lithuanian,lituanien lol,,,Mongo,mongo loz,,,Lozi,lozi ltz,,lb,Luxembourgish; Letzeburgesch,luxembourgeois lua,,,Luba-Lulua,luba-lulua lub,,lu,Luba-Katanga,luba-katanga lug,,lg,Ganda,ganda lui,,,Luiseno,luiseno lun,,,Lunda,lunda luo,,,Luo (Kenya and Tanzania),luo (Kenya et Tanzanie) lus,,,Lushai,lushai mac,mkd,mk,Macedonian,macédonien mad,,,Madurese,madourais mag,,,Magahi,magahi mah,,mh,Marshallese,marshall mai,,,Maithili,maithili mak,,,Makasar,makassar mal,,ml,Malayalam,malayalam man,,,Mandingo,mandingue mao,mri,mi,Maori,maori map,,,Austronesian languages,"austronésiennes, langues" mar,,mr,Marathi,marathe mas,,,Masai,massaï may,msa,ms,Malay,malais mdf,,,Moksha,moksa mdr,,,Mandar,mandar men,,,Mende,mendé mga,,,"Irish, Middle (900-1200)",irlandais moyen (900-1200) mic,,,Mi'kmaq; Micmac,mi'kmaq; micmac min,,,Minangkabau,minangkabau mis,,,Uncoded languages,langues non codées mkh,,,Mon-Khmer languages,"môn-khmer, langues" mlg,,mg,Malagasy,malgache mlt,,mt,Maltese,maltais mnc,,,Manchu,mandchou mni,,,Manipuri,manipuri mno,,,Manobo languages,"manobo, langues" moh,,,Mohawk,mohawk mon,,mn,Mongolian,mongol mos,,,Mossi,moré mul,,,Multiple languages,multilingue mun,,,Munda languages,"mounda, langues" mus,,,Creek,muskogee mwl,,,Mirandese,mirandais mwr,,,Marwari,marvari myn,,,Mayan languages,"maya, langues" myv,,,Erzya,erza nah,,,Nahuatl languages,"nahuatl, langues" nai,,,North American Indian languages,"nord-amérindiennes, langues" nap,,,Neapolitan,napolitain nau,,na,Nauru,nauruan nav,,nv,Navajo; Navaho,navaho nbl,,nr,"Ndebele, South; South Ndebele",ndébélé du Sud nde,,nd,"Ndebele, North; North Ndebele",ndébélé du Nord ndo,,ng,Ndonga,ndonga nds,,,"Low German; Low Saxon; German, Low; Saxon, Low","bas allemand; bas saxon; allemand, bas; saxon, bas" nep,,ne,Nepali,népalais new,,,Nepal Bhasa; Newari,nepal bhasa; newari nia,,,Nias,nias nic,,,Niger-Kordofanian languages,"nigéro-kordofaniennes, langues" niu,,,Niuean,niué nno,,nn,"Norwegian Nynorsk; Nynorsk, Norwegian","norvégien nynorsk; nynorsk, norvégien" nob,,nb,"Bokmål, Norwegian; Norwegian Bokmål",norvégien bokmål nog,,,Nogai,nogaï; nogay non,,,"Norse, Old","norrois, vieux" nor,,no,Norwegian,norvégien nqo,,,N'Ko,n'ko nso,,,Pedi; Sepedi; Northern Sotho,pedi; sepedi; sotho du Nord nub,,,Nubian languages,"nubiennes, langues" nwc,,,Classical Newari; Old Newari; Classical Nepal Bhasa,newari classique nya,,ny,Chichewa; Chewa; Nyanja,chichewa; chewa; nyanja nym,,,Nyamwezi,nyamwezi nyn,,,Nyankole,nyankolé nyo,,,Nyoro,nyoro nzi,,,Nzima,nzema oci,,oc,Occitan (post 1500),occitan (après 1500) oji,,oj,Ojibwa,ojibwa ori,,or,Oriya,oriya orm,,om,Oromo,galla osa,,,Osage,osage oss,,os,Ossetian; Ossetic,ossète ota,,,"Turkish, Ottoman (1500-1928)",turc ottoman (1500-1928) oto,,,Otomian languages,"otomi, langues" paa,,,Papuan languages,"papoues, langues" pag,,,Pangasinan,pangasinan pal,,,Pahlavi,pahlavi pam,,,Pampanga; Kapampangan,pampangan pan,,pa,Panjabi; Punjabi,pendjabi pap,,,Papiamento,papiamento pau,,,Palauan,palau peo,,,"Persian, Old (ca.600-400 B.C.)","perse, vieux (ca. 600-400 av. J.-C.)" per,fas,fa,Persian,persan phi,,,Philippine languages,"philippines, langues" phn,,,Phoenician,phénicien pli,,pi,Pali,pali pol,,pl,Polish,polonais pon,,,Pohnpeian,pohnpei por,,pt,Portuguese,portugais pra,,,Prakrit languages,"prâkrit, langues" pro,,,"Provençal, Old (to 1500); Occitan, Old (to 1500)",provençal ancien (jusqu'à 1500); occitan ancien (jusqu'à 1500) pus,,ps,Pushto; Pashto,pachto qaa-qtz,,,Reserved for local use,réservée à l'usage local que,,qu,Quechua,quechua raj,,,Rajasthani,rajasthani rap,,,Rapanui,rapanui rar,,,Rarotongan; Cook Islands Maori,rarotonga; maori des îles Cook roa,,,Romance languages,"romanes, langues" roh,,rm,Romansh,romanche rom,,,Romany,tsigane rum,ron,ro,Romanian; Moldavian; Moldovan,roumain; moldave run,,rn,Rundi,rundi rup,,,Aromanian; Arumanian; Macedo-Romanian,aroumain; macédo-roumain rus,,ru,Russian,russe sad,,,Sandawe,sandawe sag,,sg,Sango,sango sah,,,Yakut,iakoute sai,,,South American Indian languages,"sud-amérindiennes, langues" sal,,,Salishan languages,"salishennes, langues" sam,,,Samaritan Aramaic,samaritain san,,sa,Sanskrit,sanskrit sas,,,Sasak,sasak sat,,,Santali,santal scn,,,Sicilian,sicilien sco,,,Scots,écossais sel,,,Selkup,selkoupe sem,,,Semitic languages,"sémitiques, langues" sga,,,"Irish, Old (to 900)",irlandais ancien (jusqu'à 900) sgn,,,Sign Languages,langues des signes shn,,,Shan,chan sid,,,Sidamo,sidamo sin,,si,Sinhala; Sinhalese,singhalais sio,,,Siouan languages,"sioux, langues" sit,,,Sino-Tibetan languages,"sino-tibétaines, langues" sla,,,Slavic languages,"slaves, langues" slo,slk,sk,Slovak,slovaque slv,,sl,Slovenian,slovène sma,,,Southern Sami,sami du Sud sme,,se,Northern Sami,sami du Nord smi,,,Sami languages,"sames, langues" smj,,,Lule Sami,sami de Lule smn,,,Inari Sami,sami d'Inari smo,,sm,Samoan,samoan sms,,,Skolt Sami,sami skolt sna,,sn,Shona,shona snd,,sd,Sindhi,sindhi snk,,,Soninke,soninké sog,,,Sogdian,sogdien som,,so,Somali,somali son,,,Songhai languages,"songhai, langues" sot,,st,"Sotho, Southern",sotho du Sud spa,,es,Spanish; Castilian,espagnol; castillan srd,,sc,Sardinian,sarde srn,,,Sranan Tongo,sranan tongo srp,,sr,Serbian,serbe srr,,,Serer,sérère ssa,,,Nilo-Saharan languages,"nilo-sahariennes, langues" ssw,,ss,Swati,swati suk,,,Sukuma,sukuma sun,,su,Sundanese,soundanais sus,,,Susu,soussou sux,,,Sumerian,sumérien swa,,sw,Swahili,swahili swe,,sv,Swedish,suédois syc,,,Classical Syriac,syriaque classique syr,,,Syriac,syriaque tah,,ty,Tahitian,tahitien tai,,,Tai languages,"tai, langues" tam,,ta,Tamil,tamoul tat,,tt,Tatar,tatar tel,,te,Telugu,télougou tem,,,Timne,temne ter,,,Tereno,tereno tet,,,Tetum,tetum tgk,,tg,Tajik,tadjik tgl,,tl,Tagalog,tagalog tha,,th,Thai,thaï tib,bod,bo,Tibetan,tibétain tig,,,Tigre,tigré tir,,ti,Tigrinya,tigrigna tiv,,,Tiv,tiv tkl,,,Tokelau,tokelau tlh,,,Klingon; tlhIngan-Hol,klingon tli,,,Tlingit,tlingit tmh,,,Tamashek,tamacheq tog,,,Tonga (Nyasa),tonga (Nyasa) ton,,to,Tonga (Tonga Islands),tongan (Îles Tonga) tpi,,,Tok Pisin,tok pisin tsi,,,Tsimshian,tsimshian tsn,,tn,Tswana,tswana tso,,ts,Tsonga,tsonga tuk,,tk,Turkmen,turkmène tum,,,Tumbuka,tumbuka tup,,,Tupi languages,"tupi, langues" tur,,tr,Turkish,turc tut,,,Altaic languages,"altaïques, langues" tvl,,,Tuvalu,tuvalu twi,,tw,Twi,twi tyv,,,Tuvinian,touva udm,,,Udmurt,oudmourte uga,,,Ugaritic,ougaritique uig,,ug,Uighur; Uyghur,ouïgour ukr,,uk,Ukrainian,ukrainien umb,,,Umbundu,umbundu und,,,Undetermined,indéterminée urd,,ur,Urdu,ourdou uzb,,uz,Uzbek,ouszbek vai,,,Vai,vaï ven,,ve,Venda,venda vie,,vi,Vietnamese,vietnamien vol,,vo,Volapük,volapük vot,,,Votic,vote wak,,,Wakashan languages,"wakashanes, langues" wal,,,Wolaitta; Wolaytta,wolaitta; wolaytta war,,,Waray,waray was,,,Washo,washo wel,cym,cy,Welsh,gallois wen,,,Sorbian languages,"sorabes, langues" wln,,wa,Walloon,wallon wol,,wo,Wolof,wolof xal,,,Kalmyk; Oirat,kalmouk; oïrat xho,,xh,Xhosa,xhosa yao,,,Yao,yao yap,,,Yapese,yapois yid,,yi,Yiddish,yiddish yor,,yo,Yoruba,yoruba ypk,,,Yupik languages,"yupik, langues" zap,,,Zapotec,zapotèque zbl,,,Blissymbols; Blissymbolics; Bliss,symboles Bliss; Bliss zen,,,Zenaga,zenaga zgh,,,Standard Moroccan Tamazight,amazighe standard marocain zha,,za,Zhuang; Chuang,zhuang; chuang znd,,,Zande languages,"zandé, langues" zul,,zu,Zulu,zoulou zun,,,Zuni,zuni zxx,,,No linguistic content; Not applicable,pas de contenu linguistique; non applicable zza,,,Zaza; Dimili; Dimli; Kirdki; Kirmanjki; Zazaki,zaza; dimili; dimli; kirdki; kirmanjki; zazaki bplaum-gavl-b9385e3/utils/make_language_table.sh000077500000000000000000000020461513252040200217070ustar00rootroot00000000000000#!/bin/sh # Download CSV from https://datahub.io/core/language-codes FILE="language-codes-full.csv" tail -n +2 $FILE | \ gawk -F , -v OFS=',' -vFPAT='[^,]*|"[^"]*"' '{ printf "%s,%s,%s,%s\n", $4, $1, $2, $3 }' | sort | gawk -F , -v OFS=',' -vFPAT='[^,]*|"[^"]*"' '{ printf "%s,%s,%s,%s\n", $2, $3, $4, $1 }' > language-codes-sorted.csv FILE="language-codes-sorted.csv" echo "#ifndef GAVL_LANGUAGE_TABLE_H" echo "#define GAVL_LANGUAGE_TABLE_H" echo "// Generated by utils/make_language_table.sh" echo "static const struct\n" echo " {" echo " const char * ISO_639_2_B;" echo " const char * ISO_639_2_T;" echo " const char * ISO_639_1;" echo " const char * label;" echo " }" echo "languages[] =" echo " {" gawk -F , -v OFS=',' -vFPAT='[^,]*|"[^"]*"' 'length($1) == 3 { printf " { \"%s\", ", $1; if($2 == "") printf "NULL, "; else printf "\"%s\", ", $2; if($3 == "") printf "NULL, "; else printf "\"%s\", ", $3; if(!match($4, "\"")) printf "\"%s\" },\n", $4; else printf "%s },\n", $4; }' $FILE echo " };" echo "#endif // GAVL_LANGUAGE_TABLE_H"